2001-06-04  Bruno Haible  <haible@clisp.cons.org>

	* iconv/loop.c (UNICODE_TAG_HANDLER): New macro.
	* iconv/gconv_simple.c (__gconv_transform_internal_ascii): Invoke
	UNICODE_TAG_HANDLER.
	(__gconv_transform_internal_ucs2): Likewise.
	(__gconv_transform_internal_ucs2reverse): Likewise.
	* iconvdata/8bit-gap.c (BODY for TO_LOOP): Invoke UNICODE_TAG_HANDLER.
	* iconvdata/8bit-generic.c (BODY for TO_LOOP): Likewise.
	* iconvdata/ansi_x3.110.c (BODY for TO_LOOP): Likewise.
	* iconvdata/big5.c (BODY for TO_LOOP): Likewise.
	* iconvdata/big5hkscs.c (BODY for TO_LOOP): Likewise.
	* iconvdata/cp1255.c (BODY for TO_LOOP): Likewise.
	* iconvdata/cp1258.c (BODY for TO_LOOP): Likewise.
	* iconvdata/euc-cn.c (BODY for TO_LOOP): Likewise.
	* iconvdata/euc-jp.c (BODY for TO_LOOP): Likewise.
	* iconvdata/euc-kr.c (BODY for TO_LOOP): Likewise.
	* iconvdata/euc-tw.c (BODY for TO_LOOP): Likewise.
	* iconvdata/gbk.c (BODY for TO_LOOP): Likewise.
	* iconvdata/ibm930.c (BODY for TO_LOOP): Likewise.
	* iconvdata/ibm932.c (BODY for TO_LOOP): Likewise.
	* iconvdata/ibm933.c (BODY for TO_LOOP): Likewise.
	* iconvdata/ibm935.c (BODY for TO_LOOP): Likewise.
	* iconvdata/ibm937.c (BODY for TO_LOOP): Likewise.
	* iconvdata/ibm939.c (BODY for TO_LOOP): Likewise.
	* iconvdata/ibm943.c (BODY for TO_LOOP): Likewise.
	* iconvdata/iso646.c (BODY for TO_LOOP): Likewise.
	* iconvdata/iso8859-1.c (BODY for TO_LOOP): Likewise.
	* iconvdata/iso_6937.c (BODY for TO_LOOP): Likewise.
	* iconvdata/iso_6937-2.c (BODY for TO_LOOP): Likewise.
	* iconvdata/iso-2022-cn.c (BODY for TO_LOOP): Likewise.
	* iconvdata/iso-2022-cn-ext.c (BODY for TO_LOOP): Likewise.
	* iconvdata/iso-2022-kr.c (BODY for TO_LOOP): Likewise.
	* iconvdata/johab.c (BODY for TO_LOOP): Likewise.
	* iconvdata/sjis.c (BODY for TO_LOOP): Likewise.
	* iconvdata/t.61.c (BODY for TO_LOOP): Likewise.
	* iconvdata/uhc.c (BODY for TO_LOOP): Likewise.
	* iconvdata/unicode.c (BODY for TO_LOOP): Likewise.
	* iconvdata/iso-2022-jp.c (TAG_none, TAG_language, TAG_language_j,
	TAG_language_ja, TAG_language_k, TAG_language_ko, TAG_language_z,
	TAG_language_zh, CURRENT_TAG_MASK): New enum values.
	(EMIT_SHIFT_TO_INIT): Don't emit an escape sequence if ASCII_set
	is already selected but set2 or tag are set.
	(conversion): New enum type.
	(cvlist_t): New type.
	(CVLIST, CVLIST_FIRST, CVLIST_REST): New macros.
	(conversion_lists): New array.
	(BODY for TO_LOOP): Keep track of Unicode 3.1 language tag. If "ja",
	prefer conversion to Japanese character sets. If "zh", prefer
	conversion to GB2312. If "ko", prefer conversion to KSC5601. Small
	optimizations.
	(INIT_PARAMS): Add tag.
	(UPDATE_PARAMS): Add tag.

2001-06-04  Bruno Haible  <haible@clisp.cons.org>

	* locale/programs/locfile.c (write_locale_data): Before creat(),
	unlink the file, to avoid crashing the processes that mmap it.  Change
	a double slash to a single slash.  Free fname in case of error return.

2001-06-02  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/i386/fpu/s_frexpl.S (__frexpl): Mostly revert 2000-12-03
	changes, do the special handling for denormal numbers, not for
	normalized numbers (patch by <trevin@xmission.com>).

	* math/test-misc.c (main): Test frexpl with denormal arguments.

2001-06-04  Jakub Jelinek  <jakub@redhat.com>

	* math/libm-test.inc (llround_test): Add two new llround tests.
	* sysdeps/ieee754/ldbl-96/s_llroundl.c (__llroundl): Don't allow
	overflow when rounding away from zero.

2001-06-04  Jakub Jelinek  <jakub@redhat.com>

	* math/Makefile (libm-calls): Add e_log2, w_log2, remove s_log2.
	* math/math_private.h (__ieee754_log2, __ieee754_log2f,
	__ieee754_log2l): New prototypes.
	* sysdeps/generic/w_log2.c: New file.
	* sysdeps/generic/w_log2f.c: New file.
	* sysdeps/generic/w_log2l.c: New file.
	* sysdeps/generic/s_log2l.c: Move...
	* sysdeps/generic/e_log2l.c: ...to here. Rename to __ieee754_log2l.
	* sysdeps/ieee754/k_standard.c (__kernel_standard): Handle log2(0)
	and log2(x < 0).
	* sysdeps/i386/fpu/s_log2.S: Move...
	* sysdeps/i386/fpu/e_log2.S: ...to here. Rename to __ieee754_log2.
	* sysdeps/i386/fpu/s_log2f.S: Move...
	* sysdeps/i386/fpu/e_log2f.S: ...to here. Rename to __ieee754_log2f.
	* sysdeps/i386/fpu/s_log2l.S: Move...
	* sysdeps/i386/fpu/e_log2l.S: ...to here. Rename to __ieee754_log2l.
	* sysdeps/m68k/fpu/s_log2.S: Move...
	* sysdeps/m68k/fpu/e_log2.S: ...to here. Rename to __ieee754_log2.
	* sysdeps/m68k/fpu/s_log2f.S: Move...
	* sysdeps/m68k/fpu/e_log2f.S: ...to here. Rename to __ieee754_log2f.
	* sysdeps/m68k/fpu/s_log2l.S: Move...
	* sysdeps/m68k/fpu/e_log2l.S: ...to here. Rename to __ieee754_log2l.
	* sysdeps/ieee754/dbl-64/s_log2.c: Move...
	* sysdeps/ieee754/dbl-64/e_log2.c: ...to here. Rename to
	__ieee754_log2.
	* sysdeps/ieee754/flt-32/s_log2f.c: Move...
	* sysdeps/ieee754/flt-32/e_log2f.c: ...to here. Rename to
	__ieee754_log2f.

2001-06-04  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/generic/w_exp2.c (u_threshold): Lower threshold so that
	even arguments which result in denormalized exp2 are accepted.
	(__exp2): Arguments equal to u_threshold already result into
	underflow.
	* sysdeps/generic/w_exp2f.c (u_threshold, __exp2f): Likewise.
	* sysdeps/generic/w_exp2l.c (u_threshold, __exp2l): Likewise.
	* sysdeps/ieee754/dbl-64/e_exp2.c (__ieee754_exp2): Lomark was too
	low, with corrected lowmark use greaterequal, not greater.
	* sysdeps/ieee754/flt-32/e_exp2f.c (__ieee754_exp2f): Likewise.

2001-06-04  Jakub Jelinek  <jakub@redhat.com>

	* math/libm-test.inc (ilogb_test): Test that ilogb(+-Inf) == INT_MAX.
	* sysdeps/i386/fpu/s_ilogb.S (__ilogb): Return INT_MAX for +-Inf.
	* sysdeps/i386/fpu/s_ilogbf.S (__ilogbf): Likewise.
	* sysdeps/i386/fpu/s_ilogbl.S (__ilogbl): Likewise.
	* sysdeps/ieee754/dbl-64/s_ilogb.c (__ilogb): Likewise.
	* sysdeps/ieee754/flt-32/s_ilogbf.c (__ilogbf): Likewise.
	* sysdeps/ieee754/ldbl-128/s_ilogbl.c (__ilogbl): Likewise.
	* sysdeps/ieee754/ldbl-96/s_ilogbl.c (__ilogbl): Likewise.

2001-06-04  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/generic/w_coshl.c (__coshl): Test if finite argument
	gave non-finite result instead of using constant in generic
	version.
	* sysdeps/generic/w_coshf.c (__coshf): Likewise.
	* sysdeps/generic/w_cosh.c (__cosh): Likewise.
	* sysdeps/generic/w_exp10.c (o_threshold, u_threshold): Remove.
	(__exp10): Test if finite argument gave non-finite result.
	* sysdeps/generic/w_exp10f.c (o_threshold, u_threshold, __exp10f):
	Likewise.
	* sysdeps/generic/w_exp10l.c (o_threshold, u_threshold, __exp10l):
	Likewise.
2001-06-04  Jakub Jelinek  <jakub@redhat.com>

	* sysdeps/ieee754/ldbl-96/e_coshl.c (__ieee754_coshl): Fix
	overflow threshold constant (log(LDBL_MAX)+M_LN2l).

2001-05-29  Bruno Haible  <haible@clisp.cons.org>

	* locale/programs/ld-ctype.c (idx_table): New struct type.
	(idx_table_init, idx_table_get, idx_table_add): New functions.
	(MAX_CHARNAMES_IDX): Remove macro.
	(locale_ctype_t): Change type of charnames_idx field.
	(ctype_startup): Change initialization of charnames_idx field.
	(find_idx): Use idx_table_get and idx_table_add for speed.

	* locale/programs/charmap.c (charmap_new_char): Fix ucs4 value
	computation of characters in a range.

2001-05-29  Bruno Haible  <haible@clisp.cons.org>

	* iconvdata/gb18030.c (__fourbyte_to_ucs1): Add mappings for <U03F4>,
	<U03F5>.
	(__ucs_to_gb18030_tab1): Likewise.
	(BODY for FROM_LOOP): Add mapping for <U00010000>..<U0010FFFF>.
	(BODY for TO_LOOP): Likewise.
	* iconvdata/tst-table-charmap.sh: Update for charmaps containing
	<U00xxxxxx> syntax.
	* iconvdata/tst-table-from.c (bmp_only): New variable.
	(utf8_decode): If bmp_only, don't return characters outside Unicode
	plane 0.
	(main): When testing UTF-8 or GB18030, set bmp_only to 1. Don't print
	a conversion line if utf8_decode returns NULL.
	* iconvdata/tst-table-to.c (main): When testing encodings other than
	UTF-8 and GB18030, loop upto U+30000 instead of U+10000. Use UTF-8
	instead of UCS-2 as input.
	* iconvdata/tst-table.sh: For GB18030, use only the part < 0x10000
	of the charmap.

2001-05-29  Bruno Haible  <haible@clisp.cons.org>

	* iconvdata/cns11643l1.c: Update to Unicode 3.1.
	(__cns11643l1_to_ucs4_tab): Regenerated.
	(__cns11643l1_from_ucs4_tab12): Regenerated.
	* iconvdata/cns11643.c: Update to Unicode 3.1.
	(__cns11643l14_to_ucs4_tab): Remove array.
	(__cns11643l3_to_ucs4_tab, __cns11643l4_to_ucs4_tab,
	__cns11643l5_to_ucs4_tab, __cns11643l6_to_ucs4_tab,
	__cns11643l7_to_ucs4_tab, __cns11643l15_to_ucs4_tab): New arrays.
	(__cns11643_from_ucs4p0_tab): Renamed from __cns11643_from_ucs4_tab.
	(__cns11643_from_ucs4p2_tab): New array.
	* iconvdata/cns11643.h (__cns11643l14_to_ucs4_tab): Remove declaration.
	(__cns11643l3_to_ucs4_tab, __cns11643l4_to_ucs4_tab,
	__cns11643l5_to_ucs4_tab, __cns11643l6_to_ucs4_tab,
	__cns11643l7_to_ucs4_tab, __cns11643l15_to_ucs4_tab): New declarations.
	(cns11643_to_ucs4): Treat planes 3, 4, 5, 6, 7, 15 instead of 14.
	(__cns11643_from_ucs4_tab): Remove declaration.
	(__cns11643_from_ucs4p0_tab, __cns11643_from_ucs4p2_tab): New
	declarations.
	(ucs4_to_cns11643): Update for new arrays. Treat U+3400..U+4DFF and
	U+20000..U+2A6D6.
	* iconvdata/cns11643l2.h (__cns11643_from_ucs4_tab): Remove
	declaration.
	(__cns11643_from_ucs4p0_tab): New declaration.
	(ucs4_to_cns11643l2): Update for new arrays.
	* iconvdata/iso-2022-cn-ext.c (BODY for FROM_LOOP): Handle planes
	3 to 7.
	(BODY for TO_LOOP): Handle planes 3 to 7, instead of plane 14.
	* iconvdata/EUC-TW.irreversible: New file.
	* iconvdata/tst-table.sh: Use it.
	* iconvdata/Makefile (distribute): Add CP1255.irreversible,
	CP1258.irreversible, EUC-TW.irreversible.

2001-05-29  Bruno Haible  <haible@clisp.cons.org>

	* locale/C-translit.h.in: Add transliterations for new Unicode 3.1
	mathematical symbols.
This commit is contained in:
Ulrich Drepper 2001-06-06 12:55:46 +00:00
parent 9a1f675436
commit 601d294296
93 changed files with 11053 additions and 35297 deletions

219
ChangeLog
View File

@ -1,7 +1,220 @@
2001-06-05 Philipp Thomas <pthomas@suse.de>
2001-06-04 Bruno Haible <haible@clisp.cons.org>
* nis/nis_call.c (__nisbind_connect): Don't mark for translation
what can't be translated.
* iconv/loop.c (UNICODE_TAG_HANDLER): New macro.
* iconv/gconv_simple.c (__gconv_transform_internal_ascii): Invoke
UNICODE_TAG_HANDLER.
(__gconv_transform_internal_ucs2): Likewise.
(__gconv_transform_internal_ucs2reverse): Likewise.
* iconvdata/8bit-gap.c (BODY for TO_LOOP): Invoke UNICODE_TAG_HANDLER.
* iconvdata/8bit-generic.c (BODY for TO_LOOP): Likewise.
* iconvdata/ansi_x3.110.c (BODY for TO_LOOP): Likewise.
* iconvdata/big5.c (BODY for TO_LOOP): Likewise.
* iconvdata/big5hkscs.c (BODY for TO_LOOP): Likewise.
* iconvdata/cp1255.c (BODY for TO_LOOP): Likewise.
* iconvdata/cp1258.c (BODY for TO_LOOP): Likewise.
* iconvdata/euc-cn.c (BODY for TO_LOOP): Likewise.
* iconvdata/euc-jp.c (BODY for TO_LOOP): Likewise.
* iconvdata/euc-kr.c (BODY for TO_LOOP): Likewise.
* iconvdata/euc-tw.c (BODY for TO_LOOP): Likewise.
* iconvdata/gbk.c (BODY for TO_LOOP): Likewise.
* iconvdata/ibm930.c (BODY for TO_LOOP): Likewise.
* iconvdata/ibm932.c (BODY for TO_LOOP): Likewise.
* iconvdata/ibm933.c (BODY for TO_LOOP): Likewise.
* iconvdata/ibm935.c (BODY for TO_LOOP): Likewise.
* iconvdata/ibm937.c (BODY for TO_LOOP): Likewise.
* iconvdata/ibm939.c (BODY for TO_LOOP): Likewise.
* iconvdata/ibm943.c (BODY for TO_LOOP): Likewise.
* iconvdata/iso646.c (BODY for TO_LOOP): Likewise.
* iconvdata/iso8859-1.c (BODY for TO_LOOP): Likewise.
* iconvdata/iso_6937.c (BODY for TO_LOOP): Likewise.
* iconvdata/iso_6937-2.c (BODY for TO_LOOP): Likewise.
* iconvdata/iso-2022-cn.c (BODY for TO_LOOP): Likewise.
* iconvdata/iso-2022-cn-ext.c (BODY for TO_LOOP): Likewise.
* iconvdata/iso-2022-kr.c (BODY for TO_LOOP): Likewise.
* iconvdata/johab.c (BODY for TO_LOOP): Likewise.
* iconvdata/sjis.c (BODY for TO_LOOP): Likewise.
* iconvdata/t.61.c (BODY for TO_LOOP): Likewise.
* iconvdata/uhc.c (BODY for TO_LOOP): Likewise.
* iconvdata/unicode.c (BODY for TO_LOOP): Likewise.
* iconvdata/iso-2022-jp.c (TAG_none, TAG_language, TAG_language_j,
TAG_language_ja, TAG_language_k, TAG_language_ko, TAG_language_z,
TAG_language_zh, CURRENT_TAG_MASK): New enum values.
(EMIT_SHIFT_TO_INIT): Don't emit an escape sequence if ASCII_set
is already selected but set2 or tag are set.
(conversion): New enum type.
(cvlist_t): New type.
(CVLIST, CVLIST_FIRST, CVLIST_REST): New macros.
(conversion_lists): New array.
(BODY for TO_LOOP): Keep track of Unicode 3.1 language tag. If "ja",
prefer conversion to Japanese character sets. If "zh", prefer
conversion to GB2312. If "ko", prefer conversion to KSC5601. Small
optimizations.
(INIT_PARAMS): Add tag.
(UPDATE_PARAMS): Add tag.
2001-06-04 Bruno Haible <haible@clisp.cons.org>
* locale/programs/locfile.c (write_locale_data): Before creat(),
unlink the file, to avoid crashing the processes that mmap it. Change
a double slash to a single slash. Free fname in case of error return.
2001-06-02 Jakub Jelinek <jakub@redhat.com>
* sysdeps/i386/fpu/s_frexpl.S (__frexpl): Mostly revert 2000-12-03
changes, do the special handling for denormal numbers, not for
normalized numbers (patch by <trevin@xmission.com>).
* math/test-misc.c (main): Test frexpl with denormal arguments.
2001-06-04 Jakub Jelinek <jakub@redhat.com>
* math/libm-test.inc (llround_test): Add two new llround tests.
* sysdeps/ieee754/ldbl-96/s_llroundl.c (__llroundl): Don't allow
overflow when rounding away from zero.
2001-06-04 Jakub Jelinek <jakub@redhat.com>
* math/Makefile (libm-calls): Add e_log2, w_log2, remove s_log2.
* math/math_private.h (__ieee754_log2, __ieee754_log2f,
__ieee754_log2l): New prototypes.
* sysdeps/generic/w_log2.c: New file.
* sysdeps/generic/w_log2f.c: New file.
* sysdeps/generic/w_log2l.c: New file.
* sysdeps/generic/s_log2l.c: Move...
* sysdeps/generic/e_log2l.c: ...to here. Rename to __ieee754_log2l.
* sysdeps/ieee754/k_standard.c (__kernel_standard): Handle log2(0)
and log2(x < 0).
* sysdeps/i386/fpu/s_log2.S: Move...
* sysdeps/i386/fpu/e_log2.S: ...to here. Rename to __ieee754_log2.
* sysdeps/i386/fpu/s_log2f.S: Move...
* sysdeps/i386/fpu/e_log2f.S: ...to here. Rename to __ieee754_log2f.
* sysdeps/i386/fpu/s_log2l.S: Move...
* sysdeps/i386/fpu/e_log2l.S: ...to here. Rename to __ieee754_log2l.
* sysdeps/m68k/fpu/s_log2.S: Move...
* sysdeps/m68k/fpu/e_log2.S: ...to here. Rename to __ieee754_log2.
* sysdeps/m68k/fpu/s_log2f.S: Move...
* sysdeps/m68k/fpu/e_log2f.S: ...to here. Rename to __ieee754_log2f.
* sysdeps/m68k/fpu/s_log2l.S: Move...
* sysdeps/m68k/fpu/e_log2l.S: ...to here. Rename to __ieee754_log2l.
* sysdeps/ieee754/dbl-64/s_log2.c: Move...
* sysdeps/ieee754/dbl-64/e_log2.c: ...to here. Rename to
__ieee754_log2.
* sysdeps/ieee754/flt-32/s_log2f.c: Move...
* sysdeps/ieee754/flt-32/e_log2f.c: ...to here. Rename to
__ieee754_log2f.
2001-06-04 Jakub Jelinek <jakub@redhat.com>
* sysdeps/generic/w_exp2.c (u_threshold): Lower threshold so that
even arguments which result in denormalized exp2 are accepted.
(__exp2): Arguments equal to u_threshold already result into
underflow.
* sysdeps/generic/w_exp2f.c (u_threshold, __exp2f): Likewise.
* sysdeps/generic/w_exp2l.c (u_threshold, __exp2l): Likewise.
* sysdeps/ieee754/dbl-64/e_exp2.c (__ieee754_exp2): Lomark was too
low, with corrected lowmark use greaterequal, not greater.
* sysdeps/ieee754/flt-32/e_exp2f.c (__ieee754_exp2f): Likewise.
2001-06-04 Jakub Jelinek <jakub@redhat.com>
* math/libm-test.inc (ilogb_test): Test that ilogb(+-Inf) == INT_MAX.
* sysdeps/i386/fpu/s_ilogb.S (__ilogb): Return INT_MAX for +-Inf.
* sysdeps/i386/fpu/s_ilogbf.S (__ilogbf): Likewise.
* sysdeps/i386/fpu/s_ilogbl.S (__ilogbl): Likewise.
* sysdeps/ieee754/dbl-64/s_ilogb.c (__ilogb): Likewise.
* sysdeps/ieee754/flt-32/s_ilogbf.c (__ilogbf): Likewise.
* sysdeps/ieee754/ldbl-128/s_ilogbl.c (__ilogbl): Likewise.
* sysdeps/ieee754/ldbl-96/s_ilogbl.c (__ilogbl): Likewise.
2001-06-04 Jakub Jelinek <jakub@redhat.com>
* sysdeps/generic/w_coshl.c (__coshl): Test if finite argument
gave non-finite result instead of using constant in generic
version.
* sysdeps/generic/w_coshf.c (__coshf): Likewise.
* sysdeps/generic/w_cosh.c (__cosh): Likewise.
* sysdeps/generic/w_exp10.c (o_threshold, u_threshold): Remove.
(__exp10): Test if finite argument gave non-finite result.
* sysdeps/generic/w_exp10f.c (o_threshold, u_threshold, __exp10f):
Likewise.
* sysdeps/generic/w_exp10l.c (o_threshold, u_threshold, __exp10l):
Likewise.
2001-06-04 Jakub Jelinek <jakub@redhat.com>
* sysdeps/ieee754/ldbl-96/e_coshl.c (__ieee754_coshl): Fix
overflow threshold constant (log(LDBL_MAX)+M_LN2l).
2001-05-29 Bruno Haible <haible@clisp.cons.org>
* locale/programs/ld-ctype.c (idx_table): New struct type.
(idx_table_init, idx_table_get, idx_table_add): New functions.
(MAX_CHARNAMES_IDX): Remove macro.
(locale_ctype_t): Change type of charnames_idx field.
(ctype_startup): Change initialization of charnames_idx field.
(find_idx): Use idx_table_get and idx_table_add for speed.
* locale/programs/charmap.c (charmap_new_char): Fix ucs4 value
computation of characters in a range.
2001-05-29 Bruno Haible <haible@clisp.cons.org>
* iconvdata/gb18030.c (__fourbyte_to_ucs1): Add mappings for <U03F4>,
<U03F5>.
(__ucs_to_gb18030_tab1): Likewise.
(BODY for FROM_LOOP): Add mapping for <U00010000>..<U0010FFFF>.
(BODY for TO_LOOP): Likewise.
* iconvdata/tst-table-charmap.sh: Update for charmaps containing
<U00xxxxxx> syntax.
* iconvdata/tst-table-from.c (bmp_only): New variable.
(utf8_decode): If bmp_only, don't return characters outside Unicode
plane 0.
(main): When testing UTF-8 or GB18030, set bmp_only to 1. Don't print
a conversion line if utf8_decode returns NULL.
* iconvdata/tst-table-to.c (main): When testing encodings other than
UTF-8 and GB18030, loop upto U+30000 instead of U+10000. Use UTF-8
instead of UCS-2 as input.
* iconvdata/tst-table.sh: For GB18030, use only the part < 0x10000
of the charmap.
2001-05-29 Bruno Haible <haible@clisp.cons.org>
* iconvdata/cns11643l1.c: Update to Unicode 3.1.
(__cns11643l1_to_ucs4_tab): Regenerated.
(__cns11643l1_from_ucs4_tab12): Regenerated.
* iconvdata/cns11643.c: Update to Unicode 3.1.
(__cns11643l14_to_ucs4_tab): Remove array.
(__cns11643l3_to_ucs4_tab, __cns11643l4_to_ucs4_tab,
__cns11643l5_to_ucs4_tab, __cns11643l6_to_ucs4_tab,
__cns11643l7_to_ucs4_tab, __cns11643l15_to_ucs4_tab): New arrays.
(__cns11643_from_ucs4p0_tab): Renamed from __cns11643_from_ucs4_tab.
(__cns11643_from_ucs4p2_tab): New array.
* iconvdata/cns11643.h (__cns11643l14_to_ucs4_tab): Remove declaration.
(__cns11643l3_to_ucs4_tab, __cns11643l4_to_ucs4_tab,
__cns11643l5_to_ucs4_tab, __cns11643l6_to_ucs4_tab,
__cns11643l7_to_ucs4_tab, __cns11643l15_to_ucs4_tab): New declarations.
(cns11643_to_ucs4): Treat planes 3, 4, 5, 6, 7, 15 instead of 14.
(__cns11643_from_ucs4_tab): Remove declaration.
(__cns11643_from_ucs4p0_tab, __cns11643_from_ucs4p2_tab): New
declarations.
(ucs4_to_cns11643): Update for new arrays. Treat U+3400..U+4DFF and
U+20000..U+2A6D6.
* iconvdata/cns11643l2.h (__cns11643_from_ucs4_tab): Remove
declaration.
(__cns11643_from_ucs4p0_tab): New declaration.
(ucs4_to_cns11643l2): Update for new arrays.
* iconvdata/iso-2022-cn-ext.c (BODY for FROM_LOOP): Handle planes
3 to 7.
(BODY for TO_LOOP): Handle planes 3 to 7, instead of plane 14.
* iconvdata/EUC-TW.irreversible: New file.
* iconvdata/tst-table.sh: Use it.
* iconvdata/Makefile (distribute): Add CP1255.irreversible,
CP1258.irreversible, EUC-TW.irreversible.
2001-05-29 Bruno Haible <haible@clisp.cons.org>
* locale/C-translit.h.in: Add transliterations for new Unicode 3.1
mathematical symbols.
2001-06-05 Andreas Jaeger <aj@suse.de>

View File

@ -807,6 +807,7 @@ ucs4le_internal_loop_single (struct __gconv_step *step,
{ \
if (__builtin_expect (*((const uint32_t *) inptr), 0) > 0x7f) \
{ \
UNICODE_TAG_HANDLER (*((const uint32_t *) inptr), 4); \
STANDARD_ERR_HANDLER (4); \
} \
else \
@ -1199,6 +1200,7 @@ ucs4le_internal_loop_single (struct __gconv_step *step,
\
if (__builtin_expect (val, 0) >= 0x10000) \
{ \
UNICODE_TAG_HANDLER (val, 4); \
STANDARD_ERR_HANDLER (4); \
} \
else if (__builtin_expect (val >= 0xd800 && val < 0xe000, 0)) \
@ -1288,6 +1290,7 @@ ucs4le_internal_loop_single (struct __gconv_step *step,
uint32_t val = *((const uint32_t *) inptr); \
if (__builtin_expect (val, 0) >= 0x10000) \
{ \
UNICODE_TAG_HANDLER (val, 4); \
STANDARD_ERR_HANDLER (4); \
} \
else if (__builtin_expect (val >= 0xd800 && val < 0xe000, 0)) \

View File

@ -1,6 +1,6 @@
/* Generic conversion to and from 8bit charsets,
converting from UCS using gaps.
Copyright (C) 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
Copyright (C) 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
@ -83,7 +83,10 @@ struct gap
unsigned char res; \
\
if (__builtin_expect (ch, 0) >= 0xffff) \
rp = NULL; \
{ \
UNICODE_TAG_HANDLER (ch, 4); \
rp = NULL; \
} \
else \
while (ch > rp->end) \
++rp; \

View File

@ -1,5 +1,5 @@
/* Generic conversion to and from 8bit charsets.
Copyright (C) 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
Copyright (C) 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
@ -67,6 +67,8 @@
if (__builtin_expect (ch >= sizeof (from_ucs4) / sizeof (from_ucs4[0]), 0)\
|| (__builtin_expect (from_ucs4[ch], '\1') == '\0' && ch != 0)) \
{ \
UNICODE_TAG_HANDLER (ch, 4); \
\
/* This is an illegal character. */ \
STANDARD_ERR_HANDLER (4); \
} \

View File

@ -1,5 +1,5 @@
/* Generic conversion to and from ANSI_X3.110-1983.
Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
Copyright (C) 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
@ -549,6 +549,8 @@ static const char from_ucs4[][2] =
cp = "\xd5"; \
else \
{ \
UNICODE_TAG_HANDLER (ch, 4); \
\
/* Illegal characters. */ \
STANDARD_ERR_HANDLER (4); \
} \

View File

@ -1,5 +1,5 @@
/* Mapping tables for Big5 handling.
Copyright (C) 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
Copyright (C) 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
@ -8564,6 +8564,7 @@ static const char from_ucs4_tab15[][2] =
cp = from_ucs4_tab15[ch - 0xff01]; \
break; \
default: \
UNICODE_TAG_HANDLER (ch, 4); \
/* Illegal character. */ \
cp = ""; \
break; \

View File

@ -1,5 +1,5 @@
/* Mapping tables for Big5-HKSCS handling.
Copyright (C) 1997, 1998, 2000 Free Software Foundation, Inc.
Copyright (C) 1997, 1998, 2000, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
Modified for Big5-HKSCS by Roger So <spacehunt@e-fever.org>, 2000.
@ -11772,6 +11772,8 @@ static struct
\
if (cp[0] == '\0' && ch != 0) \
{ \
UNICODE_TAG_HANDLER (ch, 4); \
\
/* Illegal character. */ \
STANDARD_ERR_HANDLER (4); \
} \

View File

@ -451,7 +451,10 @@ static const struct {
else if (ch == 0x2122) \
res = 0x99; \
else \
res = 0; \
{ \
UNICODE_TAG_HANDLER (ch, 4); \
res = 0; \
} \
\
if (__builtin_expect (res != 0, 1)) \
{ \

View File

@ -777,7 +777,10 @@ static const struct {
else if (ch == 0x2122) \
res = 0x99; \
else \
res = 0; \
{ \
UNICODE_TAG_HANDLER (ch, 4); \
res = 0; \
} \
\
if (__builtin_expect (res != 0, 1)) \
{ \

View File

@ -1,5 +1,5 @@
/* Mapping tables for EUC-CN handling.
Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
Copyright (C) 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
@ -140,6 +140,8 @@
{ \
if (__builtin_expect (found, 0) == __UNKNOWN_10646_CHAR) \
{ \
UNICODE_TAG_HANDLER (ch, 4); \
\
/* Illegal character. */ \
STANDARD_ERR_HANDLER (4); \
} \

View File

@ -1,5 +1,5 @@
/* Mapping tables for EUC-JP handling.
Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
Copyright (C) 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
@ -227,6 +227,8 @@
} \
else \
{ \
UNICODE_TAG_HANDLER (ch, 4); \
\
/* Illegal character. */ \
STANDARD_ERR_HANDLER (4); \
} \

View File

@ -1,5 +1,5 @@
/* Mapping tables for EUC-KR handling.
Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
Copyright (C) 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Jungshik Shin <jshin@pantheon.yale.edu>
and Ulrich Drepper <drepper@cygnus.com>, 1998.
@ -142,10 +142,12 @@ euckr_from_ucs4 (uint32_t ch, unsigned char *cp)
\
/* Decomposing Hangul syllables not available in KS C 5601 into \
Jamos should be considered either here or in euckr_from_ucs4() */ \
euckr_from_ucs4 (ch, cp) ; \
euckr_from_ucs4 (ch, cp); \
\
if (__builtin_expect (cp[0], '\1') == '\0' && ch != 0) \
{ \
UNICODE_TAG_HANDLER (ch, 4); \
\
/* Illegal character. */ \
STANDARD_ERR_HANDLER (4); \
} \

View File

@ -1,5 +1,5 @@
/* Mapping tables for EUC-TW handling.
Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
Copyright (C) 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
@ -61,14 +61,14 @@
} \
else \
{ \
/* Two or more byte character. First test whether the next \
character is also available. */ \
/* Two or more byte character. First test whether the next byte \
is also available. */ \
uint32_t ch2; \
\
if (inptr + 1 >= inend) \
{ \
/* The second character is not available. Store the \
intermediate result. */ \
/* The second byte is not available. Store the intermediate \
result. */ \
result = __GCONV_INCOMPLETE_INPUT; \
break; \
} \
@ -99,7 +99,7 @@
\
if (ch == 0) \
{ \
/* The third or fourth character is not available. Store \
/* The third or fourth byte is not available. Store \
the intermediate result. */ \
result = __GCONV_INCOMPLETE_INPUT; \
break; \
@ -170,7 +170,7 @@
*outptr++ = ch; \
else \
{ \
/* Try the JIS character sets. */ \
/* Try the CNS 11643 planes. */ \
size_t found; \
\
found = ucs4_to_cns11643l1 (ch, outptr, outend - outptr); \
@ -199,6 +199,8 @@
} \
if (__builtin_expect (found, 0) == __UNKNOWN_10646_CHAR) \
{ \
UNICODE_TAG_HANDLER (ch, 4); \
\
/* Illegal character. */ \
STANDARD_ERR_HANDLER (4); \
} \

View File

@ -5683,7 +5683,8 @@ static const uint16_t __fourbyte_to_ucs1[] =
[0x0309] = 0x03e5, [0x030a] = 0x03e6, [0x030b] = 0x03e7, [0x030c] = 0x03e8,
[0x030d] = 0x03e9, [0x030e] = 0x03ea, [0x030f] = 0x03eb, [0x0310] = 0x03ec,
[0x0311] = 0x03ed, [0x0312] = 0x03ee, [0x0313] = 0x03ef, [0x0314] = 0x03f0,
[0x0315] = 0x03f1, [0x0316] = 0x03f2, [0x0317] = 0x03f3, [0x0324] = 0x0400,
[0x0315] = 0x03f1, [0x0316] = 0x03f2, [0x0317] = 0x03f3, [0x0318] = 0x03f4,
[0x0319] = 0x03f5, [0x0324] = 0x0400,
[0x0325] = 0x0402, [0x0326] = 0x0403, [0x0327] = 0x0404, [0x0328] = 0x0405,
[0x0329] = 0x0406, [0x032a] = 0x0407, [0x032b] = 0x0408, [0x032c] = 0x0409,
[0x032d] = 0x040a, [0x032e] = 0x040b, [0x032f] = 0x040c, [0x0330] = 0x040d,
@ -9517,6 +9518,7 @@ static const unsigned char __ucs_to_gb18030_tab1[][2] =
[0x036b] = "\x23\x0f", [0x036c] = "\x23\x10", [0x036d] = "\x23\x11",
[0x036e] = "\x23\x12", [0x036f] = "\x23\x13", [0x0370] = "\x23\x14",
[0x0371] = "\x23\x15", [0x0372] = "\x23\x16", [0x0373] = "\x23\x17",
[0x0374] = "\x23\x18", [0x0375] = "\x23\x19",
[0x0380] = "\x23\x24", [0x0381] = "\xa7\xa7", [0x0382] = "\x23\x25",
[0x0383] = "\x23\x26", [0x0384] = "\x23\x27", [0x0385] = "\x23\x28",
[0x0386] = "\x23\x29", [0x0387] = "\x23\x2a", [0x0388] = "\x23\x2b",
@ -21954,15 +21956,15 @@ static const unsigned char __ucs_to_gb18030_tab2[][2] =
} \
else \
{ \
/* Two or four byte character. First test whether the \
next character is also available. */ \
/* Two or four byte character. First test whether the next \
byte is also available. */ \
uint32_t ch2; \
unsigned long int idx; \
\
if (inptr + 1 >= inend) \
{ \
/* The second character is not available. Store \
the intermediate result. */ \
/* The second byte is not available. Store the \
intermediate result. */ \
result = __GCONV_INCOMPLETE_INPUT; \
break; \
} \
@ -21992,7 +21994,7 @@ static const unsigned char __ucs_to_gb18030_tab2[][2] =
\
if (inptr + 3 >= inend) \
{ \
/* Not all characters are available. Store \
/* Not all bytes are available. Store \
the intermediate result. */ \
result = __GCONV_INCOMPLETE_INPUT; \
break; \
@ -22035,17 +22037,19 @@ static const unsigned char __ucs_to_gb18030_tab2[][2] =
+ ch3 - 0x81) * 10 + ch4 - 0x30; \
\
if (idx <= 0x4A18) \
ch = __fourbyte_to_ucs1[idx]; \
ch = __fourbyte_to_ucs1[idx]; \
else if (idx >= 0x4ABD && idx <= 0x4F49) \
ch = idx + 0x5543; \
ch = idx + 0x5543; \
else if (idx >= 0x4F4D && idx <= 0x4F83) \
ch = __fourbyte_to_ucs2[idx-0x4F4D]; \
ch = __fourbyte_to_ucs2[idx-0x4F4D]; \
else if (idx >= 0x56BD && idx <= 0x8260) \
ch = idx + 0x5543; \
ch = idx + 0x5543; \
else if (idx >= 0x93A9 && idx <= 0x99F9) \
ch = __fourbyte_to_ucs3[idx-0x93A9]; \
ch = __fourbyte_to_ucs3[idx-0x93A9]; \
else if (idx >= 0x2E248 && idx <= 0x12E247) \
ch = idx - 0x1E248; \
else \
ch = 0; \
ch = 0; \
\
if (ch == 0 && *inptr != '\0') \
{ \
@ -22148,6 +22152,11 @@ static const unsigned char __ucs_to_gb18030_tab2[][2] =
len = 4; \
} \
} \
else if (ch >= 0x10000 && ch <= 0x10FFFF) \
{ \
idx = ch + 0x1E248; \
len = 4; \
} \
else \
len = 0; \
\
@ -22175,7 +22184,7 @@ static const unsigned char __ucs_to_gb18030_tab2[][2] =
} \
else /* len == 4 */ \
{ \
/* See whether there is enough room for the second byte we \
/* See whether there is enough room for all four bytes we \
write. */ \
if (__builtin_expect (outptr + 3 >= outend, 0)) \
{ \

View File

@ -1,5 +1,5 @@
/* Mapping tables for GBK handling.
Copyright (C) 1999, 2000 Free Software Foundation, Inc.
Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Sean Chen <sean.chen@turbolinux.com>, 1999.
@ -13471,6 +13471,7 @@ static const char __gbk_from_ucs4_tab12[][2] =
cp = "\xa1\xe9\0\0\xa1\xea\0\0\xa9\x56\0\0\xa3\xfe\0\0\xa9\x57\0\0\xa3\xa4" + ((ch - 0xffe0) * 4); \
break; \
default: \
UNICODE_TAG_HANDLER (ch, 4); \
cp = ""; \
break; \
} \

View File

@ -203,6 +203,8 @@ enum
\
if (__builtin_expect (ch, 0) >= 0xffff) \
{ \
UNICODE_TAG_HANDLER (ch, 4); \
\
if (! ignore_errors_p ()) \
{ \
result = __GCONV_ILLEGAL_INPUT; \

View File

@ -1,5 +1,5 @@
/* Conversion from and to IBM932.
Copyright (C) 2000 Free Software Foundation, Inc.
Copyright (C) 2000, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Masahide Washizawa <washi@jp.ibm.com>, 2000.
@ -148,7 +148,7 @@
{ \
const struct gap *rp = __ucs4_to_ibm932sb_idx; \
unsigned char sc; \
uint32_t ch = get32(inptr); \
uint32_t ch = get32 (inptr); \
uint16_t found = TRUE; \
uint32_t i; \
uint32_t low; \
@ -156,7 +156,10 @@
uint16_t pccode; \
\
if (__builtin_expect (ch, 0) >= 0xffff) \
{ \
UNICODE_TAG_HANDLER (ch, 4); \
rp = NULL; \
} \
else \
while (ch > rp->end) \
++rp; \
@ -188,26 +191,26 @@
break; \
} \
} \
if (found) \
{ \
if (__builtin_expect (outptr + 2 > outend, 0)) \
{ \
result = __GCONV_FULL_OUTPUT; \
break; \
} \
*outptr++ = pccode >> 8 & 0xff; \
*outptr++ = pccode & 0xff; \
} \
else \
{ \
/* This is an illegal character. */ \
if (! ignore_errors_p ()) \
{ \
result = __GCONV_ILLEGAL_INPUT; \
break; \
} \
++*irreversible; \
} \
if (found) \
{ \
if (__builtin_expect (outptr + 2 > outend, 0)) \
{ \
result = __GCONV_FULL_OUTPUT; \
break; \
} \
*outptr++ = pccode >> 8 & 0xff; \
*outptr++ = pccode & 0xff; \
} \
else \
{ \
/* This is an illegal character. */ \
if (! ignore_errors_p ()) \
{ \
result = __GCONV_ILLEGAL_INPUT; \
break; \
} \
++*irreversible; \
} \
} \
else \
{ \
@ -224,8 +227,8 @@
*outptr++ = sc; \
} \
\
/* Now that we wrote the output increment the input pointer. */ \
inptr += 4; \
/* Now that we wrote the output increment the input pointer. */ \
inptr += 4; \
}
#define LOOP_NEED_FLAGS
#include <iconv/loop.c>

View File

@ -205,6 +205,8 @@ enum
\
if (__builtin_expect (ch, 0) >= 0xffff) \
{ \
UNICODE_TAG_HANDLER (ch, 4); \
\
if (! ignore_errors_p ()) \
{ \
result = __GCONV_ILLEGAL_INPUT; \

View File

@ -203,6 +203,8 @@ enum
\
if (__builtin_expect (ch, 0) >= 0xffff) \
{ \
UNICODE_TAG_HANDLER (ch, 4); \
\
if (! ignore_errors_p ()) \
{ \
result = __GCONV_ILLEGAL_INPUT; \

View File

@ -195,6 +195,8 @@ enum
/ sizeof (__ucs4_to_ibm937db[0])), 0) \
|| __builtin_expect (cp[0], '\1') == '\0') \
{ \
UNICODE_TAG_HANDLER (ch, 4); \
\
/* This is an illegal character. */ \
if (! ignore_errors_p ()) \
{ \

View File

@ -203,6 +203,7 @@ enum
\
if (__builtin_expect (ch, 0) >= 0xffff) \
{ \
UNICODE_TAG_HANDLER (ch, 4); \
rp1 = NULL; \
rp2 = NULL; \
} \

View File

@ -1,5 +1,5 @@
/* Conversion from and to IBM943.
Copyright (C) 2000 Free Software Foundation, Inc.
Copyright (C) 2000, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Masahide Washizawa <washi@jp.ibm.com>, 2000.
@ -156,7 +156,10 @@
uint16_t pccode; \
\
if (__builtin_expect (ch, 0) >= 0xffff) \
{ \
UNICODE_TAG_HANDLER (ch, 4); \
rp = NULL; \
} \
else \
while (ch > rp->end) \
++rp; \
@ -188,26 +191,26 @@
break; \
} \
} \
if (found) \
{ \
if (__builtin_expect (outptr + 2 > outend, 0)) \
{ \
result = __GCONV_FULL_OUTPUT; \
break; \
} \
*outptr++ = pccode >> 8 & 0xff; \
*outptr++ = pccode & 0xff; \
} \
else \
{ \
/* This is an illegal character. */ \
if (! ignore_errors_p ()) \
{ \
result = __GCONV_ILLEGAL_INPUT; \
break; \
} \
++*irreversible; \
} \
if (found) \
{ \
if (__builtin_expect (outptr + 2 > outend, 0)) \
{ \
result = __GCONV_FULL_OUTPUT; \
break; \
} \
*outptr++ = pccode >> 8 & 0xff; \
*outptr++ = pccode & 0xff; \
} \
else \
{ \
/* This is an illegal character. */ \
if (! ignore_errors_p ()) \
{ \
result = __GCONV_ILLEGAL_INPUT; \
break; \
} \
++*irreversible; \
} \
} \
else \
{ \
@ -224,8 +227,8 @@
*outptr++ = sc; \
} \
\
/* Now that we wrote the output increment the input pointer. */ \
inptr += 4; \
/* Now that we wrote the output increment the input pointer. */ \
inptr += 4; \
}
#define LOOP_NEED_FLAGS
#include <iconv/loop.c>

View File

@ -538,6 +538,7 @@ enum
} \
if (used == ASCII_set) \
{ \
UNICODE_TAG_HANDLER (ch, 4); \
STANDARD_ERR_HANDLER (4); \
} \
} \

View File

@ -1,5 +1,5 @@
/* Conversion module for ISO-2022-CN.
Copyright (C) 1999, 2000 Free Software Foundation, Inc.
Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1999.
@ -320,6 +320,8 @@ enum
used = GB2312_set + CNS11643_1_set - used; \
else \
{ \
UNICODE_TAG_HANDLER (ch, 4); \
\
/* Even this does not work. Error. */ \
STANDARD_ERR_HANDLER (4); \
} \

View File

@ -1,5 +1,5 @@
/* Conversion module for ISO-2022-JP.
Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
/* Conversion module for ISO-2022-JP and ISO-2022-JP-2.
Copyright (C) 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
@ -90,14 +90,14 @@ struct iso2022jp_data
enum
{
ASCII_set = 0,
JISX0208_1978_set = 8,
JISX0208_1983_set = 16,
JISX0201_Roman_set = 24,
JISX0201_Kana_set = 32,
GB2312_set = 40,
KSC5601_set = 48,
JISX0212_set = 56,
CURRENT_SEL_MASK = 56
JISX0208_1978_set = 1 << 3,
JISX0208_1983_set = 2 << 3,
JISX0201_Roman_set = 3 << 3,
JISX0201_Kana_set = 4 << 3,
GB2312_set = 5 << 3,
KSC5601_set = 6 << 3,
JISX0212_set = 7 << 3,
CURRENT_SEL_MASK = 7 << 3
};
/* The second value stored is the designation of the G2 set. The following
@ -105,9 +105,25 @@ enum
enum
{
UNSPECIFIED_set = 0,
ISO88591_set = 64,
ISO88597_set = 128,
CURRENT_ASSIGN_MASK = 192
ISO88591_set = 1 << 6,
ISO88597_set = 2 << 6,
CURRENT_ASSIGN_MASK = 3 << 6
};
/* The third value, only used during conversion from Unicode to ISO-2022-JP-2,
describes the language tag parsing status. The possible values are as
follows. Values >= TAG_language are temporary tag parsing states. */
enum
{
TAG_none = 0,
TAG_language = 4 << 8,
TAG_language_j = 5 << 8,
TAG_language_ja = 1 << 8,
TAG_language_k = 6 << 8,
TAG_language_ko = 2 << 8,
TAG_language_z = 7 << 8,
TAG_language_zh = 3 << 8,
CURRENT_TAG_MASK = 7 << 8
};
@ -198,7 +214,8 @@ gconv_end (struct __gconv_step *data)
\
if ((data->__statep->__count & ~7) != ASCII_set) \
{ \
if (dir == from_iso2022jp) \
if (dir == from_iso2022jp \
|| (data->__statep->__count & CURRENT_SEL_MASK) == ASCII_set) \
{ \
/* It's easy, we don't have to emit anything, we just reset the \
state for the input. Note that this also clears the G2 \
@ -503,6 +520,23 @@ gconv_end (struct __gconv_step *data)
/* Next, define the other direction. */
enum conversion { none = 0, european, japanese, chinese, korean, other };
/* A datatype for conversion lists. */
typedef unsigned int cvlist_t;
#define CVLIST(cv1, cv2, cv3, cv4, cv5) \
((cv1) + ((cv2) << 3) + ((cv3) << 6) + ((cv4) << 9) + ((cv5) << 12))
#define CVLIST_FIRST(cvl) ((cvl) & ((1 << 3) - 1))
#define CVLIST_REST(cvl) ((cvl) >> 3)
static const cvlist_t conversion_lists[4] =
{
/* TAG_none */ CVLIST (japanese, european, chinese, korean, other),
/* TAG_language_ja */ CVLIST (japanese, european, chinese, korean, other),
/* TAG_language_ko */ CVLIST (korean, european, japanese, chinese, other),
/* TAG_language_zh */ CVLIST (chinese, european, japanese, korean, other)
};
#define MIN_NEEDED_INPUT MIN_NEEDED_TO
#define MIN_NEEDED_OUTPUT MIN_NEEDED_FROM
#define MAX_NEEDED_OUTPUT (MAX_NEEDED_FROM + 2)
@ -510,12 +544,56 @@ gconv_end (struct __gconv_step *data)
#define BODY \
{ \
uint32_t ch; \
size_t written = 0; \
size_t written; \
\
ch = get32 (inptr); \
\
if (var == iso2022jp2) \
{ \
/* Handle Unicode tag characters (range U+E0000..U+E007F). */ \
if (__builtin_expect ((ch >> 7) == (0xe0000 >> 7), 0)) \
{ \
ch &= 0x7f; \
if (ch >= 'A' && ch <= 'Z') \
ch += 'a' - 'A'; \
if (ch == 0x01) \
tag = TAG_language; \
else if (ch == 'j' && tag == TAG_language) \
tag = TAG_language_j; \
else if (ch == 'a' && tag == TAG_language_j) \
tag = TAG_language_ja; \
else if (ch == 'k' && tag == TAG_language) \
tag = TAG_language_k; \
else if (ch == 'o' && tag == TAG_language_k) \
tag = TAG_language_ko; \
else if (ch == 'z' && tag == TAG_language) \
tag = TAG_language_z; \
else if (ch == 'h' && tag == TAG_language_z) \
tag = TAG_language_zh; \
else if (ch == 0x7f) \
tag = TAG_none; \
else \
{ \
/* Other tag characters reset the tag parsing state (if the \
current state is a temporary state) or are ignored (if \
the current state is a stable one). */ \
if (tag >= TAG_language) \
tag = TAG_none; \
} \
\
inptr += 4; \
continue; \
} \
\
/* Non-tag characters reset the tag parsing state, if the current \
state is a temporary state. */ \
if (__builtin_expect (tag >= TAG_language, 0)) \
tag = TAG_none; \
} \
\
/* First see whether we can write the character using the currently \
selected character set. */ \
selected character set. But ignore the selected character set if \
the current language tag shows different preferences. */ \
if (set == ASCII_set) \
{ \
/* Please note that the NUL byte is *not* matched if we are not \
@ -525,58 +603,75 @@ gconv_end (struct __gconv_step *data)
{ \
*outptr++ = ch; \
written = 1; \
\
/* At the beginning of a line, G2 designation is cleared. */ \
if (var == iso2022jp2 && ch == 0x0a) \
set2 = UNSPECIFIED_set; \
} \
/* At the beginning of a line, G2 designation is cleared. */ \
if (var == iso2022jp2 && ch == 0x0a) \
set2 = UNSPECIFIED_set; \
else \
written = __UNKNOWN_10646_CHAR; \
} \
/* ISO-2022-JP recommends to encode the newline character always in \
ASCII since this allows a context-free interpretation of the \
characters at the beginning of the next line. Otherwise it would \
have to be known whether the last line ended using ASCII or \
JIS X 0201. */ \
else if (set == JISX0201_Roman_set) \
else if (set == JISX0201_Roman_set \
&& (__builtin_expect (tag == TAG_none, 1) \
|| tag == TAG_language_ja)) \
{ \
unsigned char buf[2]; \
unsigned char buf[1]; \
written = ucs4_to_jisx0201 (ch, buf); \
if (written != __UNKNOWN_10646_CHAR && buf[0] > 0x20 \
&& buf[0] < 0x80) \
if (written != __UNKNOWN_10646_CHAR) \
{ \
*outptr++ = buf[0]; \
written = 1; \
if (buf[0] > 0x20 && buf[0] < 0x80) \
{ \
*outptr++ = buf[0]; \
written = 1; \
} \
else \
written = __UNKNOWN_10646_CHAR; \
} \
else \
written = __UNKNOWN_10646_CHAR; \
} \
else if (set == JISX0201_Kana_set) \
else if (set == JISX0201_Kana_set \
&& (__builtin_expect (tag == TAG_none, 1) \
|| tag == TAG_language_ja)) \
{ \
unsigned char buf[2]; \
unsigned char buf[1]; \
written = ucs4_to_jisx0201 (ch, buf); \
if (written != __UNKNOWN_10646_CHAR && buf[0] > 0xa0 \
&& buf[0] < 0xe0) \
if (written != __UNKNOWN_10646_CHAR) \
{ \
*outptr++ = buf[0] - 0x80; \
written = 1; \
if (buf[0] > 0xa0 && buf[0] < 0xe0) \
{ \
*outptr++ = buf[0] - 0x80; \
written = 1; \
} \
else \
written = __UNKNOWN_10646_CHAR; \
} \
else \
written = __UNKNOWN_10646_CHAR; \
} \
else \
{ \
if (set == JISX0208_1978_set || set == JISX0208_1983_set) \
if ((set == JISX0208_1978_set || set == JISX0208_1983_set) \
&& (__builtin_expect (tag == TAG_none, 1) \
|| tag == TAG_language_ja)) \
written = ucs4_to_jisx0208 (ch, outptr, outend - outptr); \
else if (set == JISX0212_set) \
else if (set == JISX0212_set \
&& (__builtin_expect (tag == TAG_none, 1) \
|| tag == TAG_language_ja)) \
written = ucs4_to_jisx0212 (ch, outptr, outend - outptr); \
else if (set == GB2312_set) \
else if (set == GB2312_set \
&& (__builtin_expect (tag == TAG_none, 1) \
|| tag == TAG_language_zh)) \
written = ucs4_to_gb2312 (ch, outptr, outend - outptr); \
else if (set == KSC5601_set \
&& (__builtin_expect (tag == TAG_none, 1) \
|| tag == TAG_language_ko)) \
written = ucs4_to_ksc5601 (ch, outptr, outend - outptr); \
else \
{ \
assert (set == KSC5601_set); \
written = __UNKNOWN_10646_CHAR; \
\
written = ucs4_to_ksc5601 (ch, outptr, outend - outptr); \
} \
\
if (__builtin_expect (written, 1) == 0) \
if (__builtin_expect (written == 0, 0)) \
{ \
result = __GCONV_FULL_OUTPUT; \
break; \
@ -585,18 +680,19 @@ gconv_end (struct __gconv_step *data)
outptr += written; \
} \
\
if (written == __UNKNOWN_10646_CHAR || written == 0) \
if (written == __UNKNOWN_10646_CHAR \
&& __builtin_expect (tag == TAG_none, 1)) \
{ \
if (set2 == ISO88591_set) \
{ \
if (__builtin_expect (outptr + 3 > outend, 0)) \
if (ch >= 0x80 && ch <= 0xff) \
{ \
result = __GCONV_FULL_OUTPUT; \
break; \
} \
if (__builtin_expect (outptr + 3 > outend, 0)) \
{ \
result = __GCONV_FULL_OUTPUT; \
break; \
} \
\
if (ch >= 0x80 && ch <= 0xff) \
{ \
*outptr++ = ESC; \
*outptr++ = 'N'; \
*outptr++ = ch & 0x7f; \
@ -629,18 +725,15 @@ gconv_end (struct __gconv_step *data)
} \
} \
\
if (written == __UNKNOWN_10646_CHAR || written == 0) \
if (written == __UNKNOWN_10646_CHAR) \
{ \
/* Either this is an unknown character or we have to switch \
the currently selected character set. The character sets \
do not code entirely separate parts of ISO 10646 and \
therefore there is no single correct result. If we choose \
the character set to use wrong we might be end up with \
using yet another character set for the next character \
though the current and the next could be encoded with one \
character set. We leave this kind of optimization for \
later and now simply use a fixed order in which we test for \
availability */ \
/* The attempts to use the currently selected character set \
failed, either because the language tag changed, or because \
the character requires a different character set, or because \
the character is unknown. \
The CJK character sets partially overlap when seen as subsets \
of ISO 10646; therefore there is no single correct result. \
We use a preferrence order which depends on the language tag. */ \
\
if (ch <= 0x7f) \
{ \
@ -671,128 +764,76 @@ gconv_end (struct __gconv_step *data)
else \
{ \
/* Now it becomes difficult. We must search the other \
character sets one by one and we cannot use simple \
arithmetic to determine whether the character can be \
encoded using this set. */ \
size_t written; \
character sets one by one. Use an ordered conversion \
list that depends on the current language tag. */ \
cvlist_t conversion_list; \
unsigned char buf[2]; \
\
written = ucs4_to_jisx0201 (ch, buf); \
if (written != __UNKNOWN_10646_CHAR && buf[0] < 0x80) \
{ \
/* We use JIS X 0201. */ \
if (__builtin_expect (outptr + 3 > outend, 0)) \
{ \
result = __GCONV_FULL_OUTPUT; \
break; \
} \
result = __GCONV_ILLEGAL_INPUT; \
\
*outptr++ = ESC; \
*outptr++ = '('; \
*outptr++ = 'J'; \
set = JISX0201_Roman_set; \
\
if (__builtin_expect (outptr + 1 > outend, 0)) \
{ \
result = __GCONV_FULL_OUTPUT; \
break; \
} \
*outptr++ = buf[0]; \
} \
if (var == iso2022jp2) \
conversion_list = conversion_lists[tag >> 8]; \
else \
{ \
written = ucs4_to_jisx0208 (ch, buf, 2); \
if (written != __UNKNOWN_10646_CHAR) \
conversion_list = CVLIST (japanese, 0, 0, 0, 0); \
\
do \
switch (CVLIST_FIRST (conversion_list)) \
{ \
case european: \
\
/* Try ISO 8859-1 upper half. */ \
if (ch >= 0x80 && ch <= 0xff) \
{ \
if (set2 != ISO88591_set) \
{ \
if (__builtin_expect (outptr + 3 > outend, 0)) \
{ \
result = __GCONV_FULL_OUTPUT; \
break; \
} \
*outptr++ = ESC; \
*outptr++ = '.'; \
*outptr++ = 'A'; \
set2 = ISO88591_set; \
} \
\
if (__builtin_expect (outptr + 3 > outend, 0)) \
{ \
result = __GCONV_FULL_OUTPUT; \
break; \
} \
*outptr++ = ESC; \
*outptr++ = 'N'; \
*outptr++ = ch - 0x80; \
result = __GCONV_OK; \
break; \
} \
\
/* Try ISO 8859-7 upper half. */ \
{ \
/* We use JIS X 0208. */ \
if (__builtin_expect (outptr + 3 > outend, 0)) \
{ \
result = __GCONV_FULL_OUTPUT; \
break; \
} \
const struct gap *rp = from_idx; \
\
*outptr++ = ESC; \
*outptr++ = '$'; \
*outptr++ = 'B'; \
set = JISX0208_1983_set; \
\
if (__builtin_expect (outptr + 2 > outend, 0)) \
while (ch > rp->end) \
++rp; \
if (ch >= rp->start) \
{ \
result = __GCONV_FULL_OUTPUT; \
break; \
} \
*outptr++ = buf[0]; \
*outptr++ = buf[1]; \
} \
else if (__builtin_expect (var, iso2022jp2) == iso2022jp) \
{ \
/* We have no other choice. */ \
STANDARD_ERR_HANDLER (4); \
} \
else \
{ \
written = ucs4_to_jisx0212 (ch, buf, 2); \
if (written != __UNKNOWN_10646_CHAR) \
{ \
/* We use JIS X 0212. */ \
if (__builtin_expect (outptr + 4 > outend, 0)) \
unsigned char res = \
iso88597_from_ucs4[ch - 0xa0 + rp->idx]; \
if (res != '\0') \
{ \
result = __GCONV_FULL_OUTPUT; \
break; \
} \
*outptr++ = ESC; \
*outptr++ = '$'; \
*outptr++ = '('; \
*outptr++ = 'D'; \
set = JISX0212_set; \
\
if (__builtin_expect (outptr + 2 > outend, 0)) \
{ \
result = __GCONV_FULL_OUTPUT; \
break; \
} \
*outptr++ = buf[0]; \
*outptr++ = buf[1]; \
} \
else \
{ \
written = ucs4_to_jisx0201 (ch, buf); \
if (written != __UNKNOWN_10646_CHAR \
&& buf[0] >= 0x80) \
{ \
/* We use JIS X 0201. */ \
if (__builtin_expect (outptr + 3 > outend, 0)) \
if (set2 != ISO88597_set) \
{ \
result = __GCONV_FULL_OUTPUT; \
break; \
if (__builtin_expect (outptr + 3 > outend, 0))\
{ \
result = __GCONV_FULL_OUTPUT; \
break; \
} \
*outptr++ = ESC; \
*outptr++ = '.'; \
*outptr++ = 'F'; \
set2 = ISO88597_set; \
} \
\
*outptr++ = ESC; \
*outptr++ = '('; \
*outptr++ = 'I'; \
set = JISX0201_Kana_set; \
\
if (__builtin_expect (outptr + 1 > outend, 0)) \
{ \
result = __GCONV_FULL_OUTPUT; \
break; \
} \
*outptr++ = buf[0] - 0x80; \
} \
else if (ch != 0xa5 && ch >= 0x80 && ch <= 0xff) \
{ \
/* ISO 8859-1 upper half. */ \
if (__builtin_expect (outptr + 3 > outend, 0)) \
{ \
result = __GCONV_FULL_OUTPUT; \
break; \
} \
\
*outptr++ = ESC; \
*outptr++ = '.'; \
*outptr++ = 'A'; \
set2 = ISO88591_set; \
\
if (__builtin_expect (outptr + 3 > outend, 0)) \
{ \
result = __GCONV_FULL_OUTPUT; \
@ -800,106 +841,221 @@ gconv_end (struct __gconv_step *data)
} \
*outptr++ = ESC; \
*outptr++ = 'N'; \
*outptr++ = ch - 0x80; \
} \
else \
{ \
written = ucs4_to_gb2312 (ch, buf, 2); \
if (written != __UNKNOWN_10646_CHAR) \
{ \
/* We use GB 2312. */ \
if (__builtin_expect (outptr + 3 > outend, 0))\
{ \
result = __GCONV_FULL_OUTPUT; \
break; \
} \
\
*outptr++ = ESC; \
*outptr++ = '$'; \
*outptr++ = 'A'; \
set = GB2312_set; \
\
if (__builtin_expect (outptr + 2 > outend, 0))\
{ \
result = __GCONV_FULL_OUTPUT; \
break; \
} \
*outptr++ = buf[0]; \
*outptr++ = buf[1]; \
} \
else \
{ \
written = ucs4_to_ksc5601 (ch, buf, 2); \
if (written != __UNKNOWN_10646_CHAR) \
{ \
/* We use KSC 5601. */ \
if (__builtin_expect (outptr + 4 > outend,\
0)) \
{ \
result = __GCONV_FULL_OUTPUT; \
break; \
} \
*outptr++ = ESC; \
*outptr++ = '$'; \
*outptr++ = '('; \
*outptr++ = 'C'; \
set = KSC5601_set; \
\
if (__builtin_expect (outptr + 2 > outend,\
0)) \
{ \
result = __GCONV_FULL_OUTPUT; \
break; \
} \
*outptr++ = buf[0]; \
*outptr++ = buf[1]; \
} \
else \
{ \
const struct gap *rp = from_idx; \
unsigned char gch = 0; \
\
while (ch > rp->end) \
++rp; \
if (ch >= rp->start) \
{ \
ch = ch - 0xa0 + rp->idx; \
gch = iso88597_from_ucs4[ch]; \
} \
\
if (__builtin_expect (gch, 1) != 0) \
{ \
/* We use ISO 8859-7 greek. */ \
if (__builtin_expect (outptr + 3 \
> outend, 0)) \
{ \
result = __GCONV_FULL_OUTPUT; \
break; \
} \
*outptr++ = ESC; \
*outptr++ = '.'; \
*outptr++ = 'F'; \
set2 = ISO88597_set; \
\
if (__builtin_expect (outptr + 3 \
> outend, 0)) \
{ \
result = __GCONV_FULL_OUTPUT; \
break; \
} \
*outptr++ = ESC; \
*outptr++ = 'N'; \
*outptr++ = gch; \
} \
else \
{ \
STANDARD_ERR_HANDLER (4); \
} \
} \
} \
*outptr++ = res; \
result = __GCONV_OK; \
break; \
} \
} \
} \
\
break; \
\
case japanese: \
\
/* Try JIS X 0201 Roman. */ \
written = ucs4_to_jisx0201 (ch, buf); \
if (written != __UNKNOWN_10646_CHAR \
&& buf[0] > 0x20 && buf[0] < 0x80) \
{ \
if (set != JISX0201_Roman_set) \
{ \
if (__builtin_expect (outptr + 3 > outend, 0)) \
{ \
result = __GCONV_FULL_OUTPUT; \
break; \
} \
*outptr++ = ESC; \
*outptr++ = '('; \
*outptr++ = 'J'; \
set = JISX0201_Roman_set; \
} \
\
if (__builtin_expect (outptr + 1 > outend, 0)) \
{ \
result = __GCONV_FULL_OUTPUT; \
break; \
} \
*outptr++ = buf[0]; \
result = __GCONV_OK; \
break; \
} \
\
/* Try JIS X 0208. */ \
written = ucs4_to_jisx0208 (ch, buf, 2); \
if (written != __UNKNOWN_10646_CHAR) \
{ \
if (set != JISX0208_1983_set) \
{ \
if (__builtin_expect (outptr + 3 > outend, 0)) \
{ \
result = __GCONV_FULL_OUTPUT; \
break; \
} \
*outptr++ = ESC; \
*outptr++ = '$'; \
*outptr++ = 'B'; \
set = JISX0208_1983_set; \
} \
\
if (__builtin_expect (outptr + 2 > outend, 0)) \
{ \
result = __GCONV_FULL_OUTPUT; \
break; \
} \
*outptr++ = buf[0]; \
*outptr++ = buf[1]; \
result = __GCONV_OK; \
break; \
} \
\
if (__builtin_expect (var == iso2022jp, 0)) \
/* Don't use the other Japanese character sets. */ \
break; \
\
/* Try JIS X 0212. */ \
written = ucs4_to_jisx0212 (ch, buf, 2); \
if (written != __UNKNOWN_10646_CHAR) \
{ \
if (set != JISX0212_set) \
{ \
if (__builtin_expect (outptr + 4 > outend, 0)) \
{ \
result = __GCONV_FULL_OUTPUT; \
break; \
} \
*outptr++ = ESC; \
*outptr++ = '$'; \
*outptr++ = '('; \
*outptr++ = 'D'; \
set = JISX0212_set; \
} \
\
if (__builtin_expect (outptr + 2 > outend, 0)) \
{ \
result = __GCONV_FULL_OUTPUT; \
break; \
} \
*outptr++ = buf[0]; \
*outptr++ = buf[1]; \
result = __GCONV_OK; \
break; \
} \
\
break; \
\
case chinese: \
assert (var == iso2022jp2); \
\
/* Try GB 2312. */ \
written = ucs4_to_gb2312 (ch, buf, 2); \
if (written != __UNKNOWN_10646_CHAR) \
{ \
if (set != GB2312_set) \
{ \
if (__builtin_expect (outptr + 3 > outend, 0)) \
{ \
result = __GCONV_FULL_OUTPUT; \
break; \
} \
*outptr++ = ESC; \
*outptr++ = '$'; \
*outptr++ = 'A'; \
set = GB2312_set; \
} \
\
if (__builtin_expect (outptr + 2 > outend, 0)) \
{ \
result = __GCONV_FULL_OUTPUT; \
break; \
} \
*outptr++ = buf[0]; \
*outptr++ = buf[1]; \
result = __GCONV_OK; \
break; \
} \
\
break; \
\
case korean: \
assert (var == iso2022jp2); \
\
/* Try KSC 5601. */ \
written = ucs4_to_ksc5601 (ch, buf, 2); \
if (written != __UNKNOWN_10646_CHAR) \
{ \
if (set != KSC5601_set) \
{ \
if (__builtin_expect (outptr + 4 > outend, 0)) \
{ \
result = __GCONV_FULL_OUTPUT; \
break; \
} \
*outptr++ = ESC; \
*outptr++ = '$'; \
*outptr++ = '('; \
*outptr++ = 'C'; \
set = KSC5601_set; \
} \
\
if (__builtin_expect (outptr + 2 > outend, 0)) \
{ \
result = __GCONV_FULL_OUTPUT; \
break; \
} \
*outptr++ = buf[0]; \
*outptr++ = buf[1]; \
result = __GCONV_OK; \
break; \
} \
\
break; \
\
case other: \
assert (var == iso2022jp2); \
\
/* Try JIS X 0201 Kana. This is not officially part \
of ISO-2022-JP-2, according to RFC 1554. Therefore \
we try this only after all other attempts. */ \
written = ucs4_to_jisx0201 (ch, buf); \
if (written != __UNKNOWN_10646_CHAR && buf[0] >= 0x80) \
{ \
if (set != JISX0201_Kana_set) \
{ \
if (__builtin_expect (outptr + 3 > outend, 0)) \
{ \
result = __GCONV_FULL_OUTPUT; \
break; \
} \
*outptr++ = ESC; \
*outptr++ = '('; \
*outptr++ = 'I'; \
set = JISX0201_Kana_set; \
} \
\
if (__builtin_expect (outptr + 1 > outend, 0)) \
{ \
result = __GCONV_FULL_OUTPUT; \
break; \
} \
*outptr++ = buf[0] - 0x80; \
result = __GCONV_OK; \
break; \
} \
\
break; \
\
default: \
abort (); \
} \
while (result == __GCONV_ILLEGAL_INPUT \
&& (conversion_list = CVLIST_REST (conversion_list)) != 0);\
\
if (result == __GCONV_FULL_OUTPUT) \
break; \
\
if (result == __GCONV_ILLEGAL_INPUT) \
{ \
STANDARD_ERR_HANDLER (4); \
} \
} \
} \
@ -910,8 +1066,9 @@ gconv_end (struct __gconv_step *data)
#define LOOP_NEED_FLAGS
#define EXTRA_LOOP_DECLS , enum variant var, int *setp
#define INIT_PARAMS int set = *setp & CURRENT_SEL_MASK; \
int set2 = *setp & CURRENT_ASSIGN_MASK
#define UPDATE_PARAMS *setp = set | set2
int set2 = *setp & CURRENT_ASSIGN_MASK; \
int tag = *setp & CURRENT_TAG_MASK;
#define UPDATE_PARAMS *setp = set | set2 | tag
#include <iconv/loop.c>

View File

@ -1,5 +1,5 @@
/* Conversion module for ISO-2022-KR.
Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
Copyright (C) 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
@ -221,7 +221,6 @@ enum
#define BODY \
{ \
uint32_t ch; \
size_t written = 0; \
\
ch = get32 (inptr); \
\
@ -241,16 +240,18 @@ enum
} \
\
*outptr++ = ch; \
written = 1; \
} \
else \
{ \
char buf[2]; \
size_t written; \
\
written = ucs4_to_ksc5601 (ch, buf, 2); \
\
if (__builtin_expect (written, 0) == __UNKNOWN_10646_CHAR) \
{ \
UNICODE_TAG_HANDLER (ch, 4); \
\
/* Illegal character. */ \
STANDARD_ERR_HANDLER (4); \
} \

View File

@ -1,5 +1,5 @@
/* Conversion to and from the various ISO 646 CCS.
Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
Copyright (C) 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
@ -879,7 +879,10 @@ gconv_end (struct __gconv_step *data)
break; \
default: \
if (__builtin_expect (ch, 0) > 0x7f) \
failure = __GCONV_ILLEGAL_INPUT; \
{ \
UNICODE_TAG_HANDLER (ch, 4); \
failure = __GCONV_ILLEGAL_INPUT; \
} \
break; \
} \
\

View File

@ -1,5 +1,5 @@
/* Conversion to and from ISO 8859-1.
Copyright (C) 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
Copyright (C) 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
@ -48,6 +48,8 @@
uint32_t ch = *((const uint32_t *) inptr); \
if (__builtin_expect (ch, 0) > 0xff) \
{ \
UNICODE_TAG_HANDLER (ch, 4); \
\
/* We have an illegal character. */ \
STANDARD_ERR_HANDLER (4); \
} \

View File

@ -1,5 +1,5 @@
/* Generic conversion to and from ISO 6937-2.
Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
Copyright (C) 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
@ -563,6 +563,7 @@ static const char from_ucs4[][2] =
cp = "\xd5"; \
break; \
default: \
UNICODE_TAG_HANDLER (ch, 4); \
/* Illegal characters. */ \
cp = NULL; \
break; \

View File

@ -1,5 +1,5 @@
/* Generic conversion to and from ISO 6937.
Copyright (C) 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
Copyright (C) 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
@ -536,6 +536,7 @@ static const char from_ucs4[][2] =
cp = "\xd5"; \
break; \
default: \
UNICODE_TAG_HANDLER (ch, 4); \
cp = NULL; \
fail = 1; \
} \

View File

@ -1,5 +1,5 @@
/* Mapping tables for JOHAB handling.
Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
Copyright (C) 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Jungshik Shin <jshin@pantheon.yale.edu>
and Ulrich Drepper <drepper@cygnus.com>, 1998.
@ -426,6 +426,7 @@ johab_sym_hanja_to_ucs (uint_fast32_t idx, uint_fast32_t c1, uint_fast32_t c2)
if (__builtin_expect (written, 1) == __UNKNOWN_10646_CHAR \
|| (outptr[0] == 0x22 && outptr[1] > 0x65)) \
{ \
UNICODE_TAG_HANDLER (ch, 4); \
STANDARD_ERR_HANDLER (4); \
} \
\

View File

@ -1,5 +1,5 @@
/* Mapping tables for SJIS handling.
Copyright (C) 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
Copyright (C) 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
@ -4471,8 +4471,11 @@ static const char from_ucs4_extra[0x100][2] =
&& __builtin_expect (ch, 0xff01) <= 0xffef) \
cp = from_ucs4_extra[ch - 0xff00]; \
else \
/* Illegal character. */ \
cp = ""; \
{ \
UNICODE_TAG_HANDLER (ch, 4); \
/* Illegal character. */ \
cp = ""; \
} \
} \
else \
cp = from_ucs4_lat1[ch]; \

View File

@ -1,5 +1,5 @@
/* Generic conversion to and from T.61.
Copyright (C) 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
Copyright (C) 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
@ -468,6 +468,8 @@ static const char from_ucs4[][2] =
|| __builtin_expect (ch, 0x2d8) > 0x2dd \
|| __builtin_expect (ch, 0x2d8) == 0x02dc) \
{ \
UNICODE_TAG_HANDLER (ch, 4); \
\
/* Illegal characters. */ \
STANDARD_ERR_HANDLER (4); \
} \

View File

@ -1,5 +1,5 @@
#!/bin/sh
# Copyright (C) 2000 Free Software Foundation, Inc.
# Copyright (C) 2000, 2001 Free Software Foundation, Inc.
# This file is part of the GNU C Library.
# Contributed by Bruno Haible <haible@clisp.cons.org>, 2000.
#
@ -30,6 +30,6 @@ case "$1" in
;;
*)
# New Unicode based format
sed -e 's,^%IRREVERSIBLE%,,' | grep '^<U....>[ ]*/x' | grep -v 'not a real character' | sed -e 's,<U\(....\)>[ ]*\([/x0-9A-Fa-f]*\).*$,\2 0x\1,' | tr abcdef ABCDEF | sed -e 's,/x\([0-9A-F][0-9A-F]\),\1,g' | sed -e 's,^,0x,' | sort | uniq | grep -v '^0x00 0x\([1-9A-F]...\|.[1-9A-F]..\|..[1-9A-F].\|...[1-9A-F]\)'
sed -e 's,^%IRREVERSIBLE%,,' | grep '^<U[0-9A-F][0-9A-F][0-9A-F][0-9A-F][0-9A-F]*>[ ]*/x' | grep -v 'not a real character' | sed -e 's,<U\(....\)>[ ]*\([/x0-9A-Fa-f]*\).*$,\2 0x\1,' -e 's,<U0*\([1-9A-F][0-9A-F][0-9A-F][0-9A-F][0-9A-F][0-9A-F]*\)>[ ]*\([/x0-9A-Fa-f]*\).*$,\2 0x\1,' | tr abcdef ABCDEF | sed -e 's,/x\([0-9A-F][0-9A-F]\),\1,g' | sed -e 's,^,0x,' | sort | uniq | grep -v '^0x00 0x\([1-9A-F]...\|.[1-9A-F]..\|..[1-9A-F].\|...[1-9A-F]\)'
;;
esac

View File

@ -28,6 +28,9 @@
#include <iconv.h>
#include <errno.h>
/* If nonzero, ignore conversions outside Unicode plane 0. */
static int bmp_only;
/* Converts a byte buffer to a hexadecimal string. */
static const char*
hexbuf (unsigned char buf[], unsigned int buflen)
@ -162,6 +165,10 @@ utf8_decode (const unsigned char *out, unsigned int outlen)
out += 1; outlen -= 1;
}
if (bmp_only && strlen (p) > 6)
/* Ignore conversions outside Unicode plane 0. */
return NULL;
p += strlen (p);
}
@ -173,6 +180,7 @@ main (int argc, char *argv[])
{
const char *charset;
iconv_t cd;
int search_depth;
if (argc != 2)
{
@ -188,6 +196,12 @@ main (int argc, char *argv[])
exit (1);
}
/* When testing UTF-8 or GB18030, stop at 0x10000, otherwise the output
file gets too big. */
bmp_only = (strcmp (charset, "UTF-8") == 0
|| strcmp (charset, "GB18030") == 0);
search_depth = (strcmp (charset, "UTF-8") == 0 ? 3 : 4);
{
unsigned char out[6];
unsigned char buf[4];
@ -203,8 +217,9 @@ main (int argc, char *argv[])
}
else if (result > 0)
{
printf ("0x%02X\t%s\n",
i0, utf8_decode (out, result));
const char *unicode = utf8_decode (out, result);
if (unicode != NULL)
printf ("0x%02X\t%s\n", i0, unicode);
}
else
{
@ -217,8 +232,9 @@ main (int argc, char *argv[])
}
else if (result > 0)
{
printf ("0x%02X%02X\t%s\n",
i0, i1, utf8_decode (out, result));
const char *unicode = utf8_decode (out, result);
if (unicode != NULL)
printf ("0x%02X%02X\t%s\n", i0, i1, unicode);
}
else
{
@ -231,10 +247,12 @@ main (int argc, char *argv[])
}
else if (result > 0)
{
printf ("0x%02X%02X%02X\t%s\n",
i0, i1, i2, utf8_decode (out, result));
const char *unicode = utf8_decode (out, result);
if (unicode != NULL)
printf ("0x%02X%02X%02X\t%s\n",
i0, i1, i2, unicode);
}
else if (strcmp (charset, "UTF-8"))
else if (search_depth > 3)
{
for (i3 = 0; i3 < 0x100; i3++)
{
@ -245,9 +263,11 @@ main (int argc, char *argv[])
}
else if (result > 0)
{
printf ("0x%02X%02X%02X%02X\t%s\n",
i0, i1, i2, i3,
utf8_decode (out, result));
const char *unicode =
utf8_decode (out, result);
if (unicode != NULL)
printf ("0x%02X%02X%02X%02X\t%s\n",
i0, i1, i2, i3, unicode);
}
else
{

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2000 Free Software Foundation, Inc.
/* Copyright (C) 2000-2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Bruno Haible <haible@clisp.cons.org>, 2000.
@ -32,6 +32,7 @@ main (int argc, char *argv[])
{
const char *charset;
iconv_t cd;
int bmp_only;
if (argc != 2)
{
@ -40,22 +41,38 @@ main (int argc, char *argv[])
}
charset = argv[1];
cd = iconv_open (charset, "UCS-2");
cd = iconv_open (charset, "UTF-8");
if (cd == (iconv_t)(-1))
{
perror ("iconv_open");
return 1;
}
/* When testing UTF-8 or GB18030, stop at 0x10000, otherwise the output
file gets too big. */
bmp_only = (strcmp (charset, "UTF-8") == 0
|| strcmp (charset, "GB18030") == 0);
{
unsigned int i;
unsigned char buf[10];
for (i = 0; i < 0x10000; i++)
for (i = 0; i < (bmp_only ? 0x10000 : 0x30000); i++)
{
unsigned short in = i;
const char *inbuf = (const char *) &in;
size_t inbytesleft = sizeof (unsigned short);
unsigned char in[6];
unsigned int incount =
(i < 0x80 ? (in[0] = i, 1)
: i < 0x800 ? (in[0] = 0xc0 | (i >> 6),
in[1] = 0x80 | (i & 0x3f), 2)
: i < 0x10000 ? (in[0] = 0xe0 | (i >> 12),
in[1] = 0x80 | ((i >> 6) & 0x3f),
in[2] = 0x80 | (i & 0x3f), 3)
: /* i < 0x200000 */ (in[0] = 0xf0 | (i >> 18),
in[1] = 0x80 | ((i >> 12) & 0x3f),
in[2] = 0x80 | ((i >> 6) & 0x3f),
in[3] = 0x80 | (i & 0x3f), 4));
const char *inbuf = (const char *) in;
size_t inbytesleft = incount;
char *outbuf = (char *) buf;
size_t outbytesleft = sizeof (buf);
size_t result = iconv (cd,
@ -78,7 +95,7 @@ main (int argc, char *argv[])
if (inbytesleft != 0 || outbytesleft == sizeof (buf))
{
fprintf (stderr, "0x%02X: inbytes = %ld, outbytes = %ld\n", i,
(long) (sizeof (unsigned short) - inbytesleft),
(long) (incount - inbytesleft),
(long) (sizeof (buf) - outbytesleft));
return 1;
}

View File

@ -1,5 +1,5 @@
#!/bin/sh
# Copyright (C) 2000 Free Software Foundation, Inc.
# Copyright (C) 2000, 2001 Free Software Foundation, Inc.
# This file is part of the GNU C Library.
# Contributed by Bruno Haible <haible@clisp.cons.org>, 2000.
#
@ -61,8 +61,15 @@ diff ${objpfx}tst-${charset}.table ${objpfx}tst-${charset}.inverse.table | \
grep '^[<>]' | sed -e 's,^. ,,' > ${objpfx}tst-${charset}.irreversible.table
# Check 1: charmap and iconv forward should be identical.
cmp -s ${objpfx}tst-${charset}.charmap.table ${objpfx}tst-${charset}.table ||
exit 1
if test ${charset} = GB18030; then
grep '0x....$' < ${objpfx}tst-${charset}.charmap.table \
> ${objpfx}tst-${charset}.truncated.table
cmp -s ${objpfx}tst-${charset}.truncated.table ${objpfx}tst-${charset}.table ||
exit 1
else
cmp -s ${objpfx}tst-${charset}.charmap.table ${objpfx}tst-${charset}.table ||
exit 1
fi
# Check 2: the difference between the two iconv directions.
if test -f ${irreversible}; then

View File

@ -1,5 +1,5 @@
/* Mapping tables for UHC handling.
Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
Copyright (C) 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Jungshik Shin <jshin@pantheon.yale.edu>, 1998.
@ -3243,6 +3243,7 @@ static const char uhc_hangul_from_ucs[11172][2] =
} \
if (__builtin_expect (written, 0) == __UNKNOWN_10646_CHAR) \
{ \
UNICODE_TAG_HANDLER (ch, 4); \
STANDARD_ERR_HANDLER (4); \
} \
\

View File

@ -1,5 +1,5 @@
/* Conversion module for Unicode
Copyright (C) 1999, 2000 Free Software Foundation, Inc.
Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1999.
@ -154,6 +154,7 @@ gconv_end (struct __gconv_step *data)
\
if (__builtin_expect (c, 0) >= 0x10000) \
{ \
UNICODE_TAG_HANDLER (c, 4); \
STANDARD_ERR_HANDLER (4); \
} \
else if (__builtin_expect (c >= 0xd800 && c < 0xe000, 0)) \

View File

@ -1,4 +1,4 @@
#define NTRANSLIT 590
#define NTRANSLIT 1291
static const uint32_t translit_from_idx[] =
{
0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22,
@ -50,7 +50,65 @@ static const uint32_t translit_from_idx[] =
1104, 1106, 1108, 1110, 1112, 1114, 1116, 1118, 1120, 1122, 1124, 1126,
1128, 1130, 1132, 1134, 1136, 1138, 1140, 1142, 1144, 1146, 1148, 1150,
1152, 1154, 1156, 1158, 1160, 1162, 1164, 1166, 1168, 1170, 1172, 1174,
1176, 1178
1176, 1178, 1180, 1182, 1184, 1186, 1188, 1190, 1192, 1194, 1196, 1198,
1200, 1202, 1204, 1206, 1208, 1210, 1212, 1214, 1216, 1218, 1220, 1222,
1224, 1226, 1228, 1230, 1232, 1234, 1236, 1238, 1240, 1242, 1244, 1246,
1248, 1250, 1252, 1254, 1256, 1258, 1260, 1262, 1264, 1266, 1268, 1270,
1272, 1274, 1276, 1278, 1280, 1282, 1284, 1286, 1288, 1290, 1292, 1294,
1296, 1298, 1300, 1302, 1304, 1306, 1308, 1310, 1312, 1314, 1316, 1318,
1320, 1322, 1324, 1326, 1328, 1330, 1332, 1334, 1336, 1338, 1340, 1342,
1344, 1346, 1348, 1350, 1352, 1354, 1356, 1358, 1360, 1362, 1364, 1366,
1368, 1370, 1372, 1374, 1376, 1378, 1380, 1382, 1384, 1386, 1388, 1390,
1392, 1394, 1396, 1398, 1400, 1402, 1404, 1406, 1408, 1410, 1412, 1414,
1416, 1418, 1420, 1422, 1424, 1426, 1428, 1430, 1432, 1434, 1436, 1438,
1440, 1442, 1444, 1446, 1448, 1450, 1452, 1454, 1456, 1458, 1460, 1462,
1464, 1466, 1468, 1470, 1472, 1474, 1476, 1478, 1480, 1482, 1484, 1486,
1488, 1490, 1492, 1494, 1496, 1498, 1500, 1502, 1504, 1506, 1508, 1510,
1512, 1514, 1516, 1518, 1520, 1522, 1524, 1526, 1528, 1530, 1532, 1534,
1536, 1538, 1540, 1542, 1544, 1546, 1548, 1550, 1552, 1554, 1556, 1558,
1560, 1562, 1564, 1566, 1568, 1570, 1572, 1574, 1576, 1578, 1580, 1582,
1584, 1586, 1588, 1590, 1592, 1594, 1596, 1598, 1600, 1602, 1604, 1606,
1608, 1610, 1612, 1614, 1616, 1618, 1620, 1622, 1624, 1626, 1628, 1630,
1632, 1634, 1636, 1638, 1640, 1642, 1644, 1646, 1648, 1650, 1652, 1654,
1656, 1658, 1660, 1662, 1664, 1666, 1668, 1670, 1672, 1674, 1676, 1678,
1680, 1682, 1684, 1686, 1688, 1690, 1692, 1694, 1696, 1698, 1700, 1702,
1704, 1706, 1708, 1710, 1712, 1714, 1716, 1718, 1720, 1722, 1724, 1726,
1728, 1730, 1732, 1734, 1736, 1738, 1740, 1742, 1744, 1746, 1748, 1750,
1752, 1754, 1756, 1758, 1760, 1762, 1764, 1766, 1768, 1770, 1772, 1774,
1776, 1778, 1780, 1782, 1784, 1786, 1788, 1790, 1792, 1794, 1796, 1798,
1800, 1802, 1804, 1806, 1808, 1810, 1812, 1814, 1816, 1818, 1820, 1822,
1824, 1826, 1828, 1830, 1832, 1834, 1836, 1838, 1840, 1842, 1844, 1846,
1848, 1850, 1852, 1854, 1856, 1858, 1860, 1862, 1864, 1866, 1868, 1870,
1872, 1874, 1876, 1878, 1880, 1882, 1884, 1886, 1888, 1890, 1892, 1894,
1896, 1898, 1900, 1902, 1904, 1906, 1908, 1910, 1912, 1914, 1916, 1918,
1920, 1922, 1924, 1926, 1928, 1930, 1932, 1934, 1936, 1938, 1940, 1942,
1944, 1946, 1948, 1950, 1952, 1954, 1956, 1958, 1960, 1962, 1964, 1966,
1968, 1970, 1972, 1974, 1976, 1978, 1980, 1982, 1984, 1986, 1988, 1990,
1992, 1994, 1996, 1998, 2000, 2002, 2004, 2006, 2008, 2010, 2012, 2014,
2016, 2018, 2020, 2022, 2024, 2026, 2028, 2030, 2032, 2034, 2036, 2038,
2040, 2042, 2044, 2046, 2048, 2050, 2052, 2054, 2056, 2058, 2060, 2062,
2064, 2066, 2068, 2070, 2072, 2074, 2076, 2078, 2080, 2082, 2084, 2086,
2088, 2090, 2092, 2094, 2096, 2098, 2100, 2102, 2104, 2106, 2108, 2110,
2112, 2114, 2116, 2118, 2120, 2122, 2124, 2126, 2128, 2130, 2132, 2134,
2136, 2138, 2140, 2142, 2144, 2146, 2148, 2150, 2152, 2154, 2156, 2158,
2160, 2162, 2164, 2166, 2168, 2170, 2172, 2174, 2176, 2178, 2180, 2182,
2184, 2186, 2188, 2190, 2192, 2194, 2196, 2198, 2200, 2202, 2204, 2206,
2208, 2210, 2212, 2214, 2216, 2218, 2220, 2222, 2224, 2226, 2228, 2230,
2232, 2234, 2236, 2238, 2240, 2242, 2244, 2246, 2248, 2250, 2252, 2254,
2256, 2258, 2260, 2262, 2264, 2266, 2268, 2270, 2272, 2274, 2276, 2278,
2280, 2282, 2284, 2286, 2288, 2290, 2292, 2294, 2296, 2298, 2300, 2302,
2304, 2306, 2308, 2310, 2312, 2314, 2316, 2318, 2320, 2322, 2324, 2326,
2328, 2330, 2332, 2334, 2336, 2338, 2340, 2342, 2344, 2346, 2348, 2350,
2352, 2354, 2356, 2358, 2360, 2362, 2364, 2366, 2368, 2370, 2372, 2374,
2376, 2378, 2380, 2382, 2384, 2386, 2388, 2390, 2392, 2394, 2396, 2398,
2400, 2402, 2404, 2406, 2408, 2410, 2412, 2414, 2416, 2418, 2420, 2422,
2424, 2426, 2428, 2430, 2432, 2434, 2436, 2438, 2440, 2442, 2444, 2446,
2448, 2450, 2452, 2454, 2456, 2458, 2460, 2462, 2464, 2466, 2468, 2470,
2472, 2474, 2476, 2478, 2480, 2482, 2484, 2486, 2488, 2490, 2492, 2494,
2496, 2498, 2500, 2502, 2504, 2506, 2508, 2510, 2512, 2514, 2516, 2518,
2520, 2522, 2524, 2526, 2528, 2530, 2532, 2534, 2536, 2538, 2540, 2542,
2544, 2546, 2548, 2550, 2552, 2554, 2556, 2558, 2560, 2562, 2564, 2566,
2568, 2570, 2572, 2574, 2576, 2578, 2580
};
static const wchar_t translit_from_tbl[] =
L"\x00a0" L"\0" L"\x00a9" L"\0" L"\x00ab" L"\0" L"\x00ad" L"\0" L"\x00ae"
@ -183,7 +241,208 @@ static const wchar_t translit_from_tbl[] =
L"\0" L"\xff4d" L"\0" L"\xff4e" L"\0" L"\xff4f" L"\0" L"\xff50" L"\0"
L"\xff51" L"\0" L"\xff52" L"\0" L"\xff53" L"\0" L"\xff54" L"\0" L"\xff55"
L"\0" L"\xff56" L"\0" L"\xff57" L"\0" L"\xff58" L"\0" L"\xff59" L"\0"
L"\xff5a" L"\0" L"\xff5b" L"\0" L"\xff5c" L"\0" L"\xff5d" L"\0" L"\xff5e";
L"\xff5a" L"\0" L"\xff5b" L"\0" L"\xff5c" L"\0" L"\xff5d" L"\0" L"\xff5e"
L"\0" L"\x0001d400" L"\0" L"\x0001d401" L"\0" L"\x0001d402" L"\0"
L"\x0001d403" L"\0" L"\x0001d404" L"\0" L"\x0001d405" L"\0" L"\x0001d406"
L"\0" L"\x0001d407" L"\0" L"\x0001d408" L"\0" L"\x0001d409" L"\0"
L"\x0001d40a" L"\0" L"\x0001d40b" L"\0" L"\x0001d40c" L"\0" L"\x0001d40d"
L"\0" L"\x0001d40e" L"\0" L"\x0001d40f" L"\0" L"\x0001d410" L"\0"
L"\x0001d411" L"\0" L"\x0001d412" L"\0" L"\x0001d413" L"\0" L"\x0001d414"
L"\0" L"\x0001d415" L"\0" L"\x0001d416" L"\0" L"\x0001d417" L"\0"
L"\x0001d418" L"\0" L"\x0001d419" L"\0" L"\x0001d41a" L"\0" L"\x0001d41b"
L"\0" L"\x0001d41c" L"\0" L"\x0001d41d" L"\0" L"\x0001d41e" L"\0"
L"\x0001d41f" L"\0" L"\x0001d420" L"\0" L"\x0001d421" L"\0" L"\x0001d422"
L"\0" L"\x0001d423" L"\0" L"\x0001d424" L"\0" L"\x0001d425" L"\0"
L"\x0001d426" L"\0" L"\x0001d427" L"\0" L"\x0001d428" L"\0" L"\x0001d429"
L"\0" L"\x0001d42a" L"\0" L"\x0001d42b" L"\0" L"\x0001d42c" L"\0"
L"\x0001d42d" L"\0" L"\x0001d42e" L"\0" L"\x0001d42f" L"\0" L"\x0001d430"
L"\0" L"\x0001d431" L"\0" L"\x0001d432" L"\0" L"\x0001d433" L"\0"
L"\x0001d434" L"\0" L"\x0001d435" L"\0" L"\x0001d436" L"\0" L"\x0001d437"
L"\0" L"\x0001d438" L"\0" L"\x0001d439" L"\0" L"\x0001d43a" L"\0"
L"\x0001d43b" L"\0" L"\x0001d43c" L"\0" L"\x0001d43d" L"\0" L"\x0001d43e"
L"\0" L"\x0001d43f" L"\0" L"\x0001d440" L"\0" L"\x0001d441" L"\0"
L"\x0001d442" L"\0" L"\x0001d443" L"\0" L"\x0001d444" L"\0" L"\x0001d445"
L"\0" L"\x0001d446" L"\0" L"\x0001d447" L"\0" L"\x0001d448" L"\0"
L"\x0001d449" L"\0" L"\x0001d44a" L"\0" L"\x0001d44b" L"\0" L"\x0001d44c"
L"\0" L"\x0001d44d" L"\0" L"\x0001d44e" L"\0" L"\x0001d44f" L"\0"
L"\x0001d450" L"\0" L"\x0001d451" L"\0" L"\x0001d452" L"\0" L"\x0001d453"
L"\0" L"\x0001d454" L"\0" L"\x0001d456" L"\0" L"\x0001d457" L"\0"
L"\x0001d458" L"\0" L"\x0001d459" L"\0" L"\x0001d45a" L"\0" L"\x0001d45b"
L"\0" L"\x0001d45c" L"\0" L"\x0001d45d" L"\0" L"\x0001d45e" L"\0"
L"\x0001d45f" L"\0" L"\x0001d460" L"\0" L"\x0001d461" L"\0" L"\x0001d462"
L"\0" L"\x0001d463" L"\0" L"\x0001d464" L"\0" L"\x0001d465" L"\0"
L"\x0001d466" L"\0" L"\x0001d467" L"\0" L"\x0001d468" L"\0" L"\x0001d469"
L"\0" L"\x0001d46a" L"\0" L"\x0001d46b" L"\0" L"\x0001d46c" L"\0"
L"\x0001d46d" L"\0" L"\x0001d46e" L"\0" L"\x0001d46f" L"\0" L"\x0001d470"
L"\0" L"\x0001d471" L"\0" L"\x0001d472" L"\0" L"\x0001d473" L"\0"
L"\x0001d474" L"\0" L"\x0001d475" L"\0" L"\x0001d476" L"\0" L"\x0001d477"
L"\0" L"\x0001d478" L"\0" L"\x0001d479" L"\0" L"\x0001d47a" L"\0"
L"\x0001d47b" L"\0" L"\x0001d47c" L"\0" L"\x0001d47d" L"\0" L"\x0001d47e"
L"\0" L"\x0001d47f" L"\0" L"\x0001d480" L"\0" L"\x0001d481" L"\0"
L"\x0001d482" L"\0" L"\x0001d483" L"\0" L"\x0001d484" L"\0" L"\x0001d485"
L"\0" L"\x0001d486" L"\0" L"\x0001d487" L"\0" L"\x0001d488" L"\0"
L"\x0001d489" L"\0" L"\x0001d48a" L"\0" L"\x0001d48b" L"\0" L"\x0001d48c"
L"\0" L"\x0001d48d" L"\0" L"\x0001d48e" L"\0" L"\x0001d48f" L"\0"
L"\x0001d490" L"\0" L"\x0001d491" L"\0" L"\x0001d492" L"\0" L"\x0001d493"
L"\0" L"\x0001d494" L"\0" L"\x0001d495" L"\0" L"\x0001d496" L"\0"
L"\x0001d497" L"\0" L"\x0001d498" L"\0" L"\x0001d499" L"\0" L"\x0001d49a"
L"\0" L"\x0001d49b" L"\0" L"\x0001d49c" L"\0" L"\x0001d49e" L"\0"
L"\x0001d49f" L"\0" L"\x0001d4a2" L"\0" L"\x0001d4a5" L"\0" L"\x0001d4a6"
L"\0" L"\x0001d4a9" L"\0" L"\x0001d4aa" L"\0" L"\x0001d4ab" L"\0"
L"\x0001d4ac" L"\0" L"\x0001d4ae" L"\0" L"\x0001d4af" L"\0" L"\x0001d4b0"
L"\0" L"\x0001d4b1" L"\0" L"\x0001d4b2" L"\0" L"\x0001d4b3" L"\0"
L"\x0001d4b4" L"\0" L"\x0001d4b5" L"\0" L"\x0001d4b6" L"\0" L"\x0001d4b7"
L"\0" L"\x0001d4b8" L"\0" L"\x0001d4b9" L"\0" L"\x0001d4bb" L"\0"
L"\x0001d4bd" L"\0" L"\x0001d4be" L"\0" L"\x0001d4bf" L"\0" L"\x0001d4c0"
L"\0" L"\x0001d4c2" L"\0" L"\x0001d4c3" L"\0" L"\x0001d4c5" L"\0"
L"\x0001d4c6" L"\0" L"\x0001d4c7" L"\0" L"\x0001d4c8" L"\0" L"\x0001d4c9"
L"\0" L"\x0001d4ca" L"\0" L"\x0001d4cb" L"\0" L"\x0001d4cc" L"\0"
L"\x0001d4cd" L"\0" L"\x0001d4ce" L"\0" L"\x0001d4cf" L"\0" L"\x0001d4d0"
L"\0" L"\x0001d4d1" L"\0" L"\x0001d4d2" L"\0" L"\x0001d4d3" L"\0"
L"\x0001d4d4" L"\0" L"\x0001d4d5" L"\0" L"\x0001d4d6" L"\0" L"\x0001d4d7"
L"\0" L"\x0001d4d8" L"\0" L"\x0001d4d9" L"\0" L"\x0001d4da" L"\0"
L"\x0001d4db" L"\0" L"\x0001d4dc" L"\0" L"\x0001d4dd" L"\0" L"\x0001d4de"
L"\0" L"\x0001d4df" L"\0" L"\x0001d4e0" L"\0" L"\x0001d4e1" L"\0"
L"\x0001d4e2" L"\0" L"\x0001d4e3" L"\0" L"\x0001d4e4" L"\0" L"\x0001d4e5"
L"\0" L"\x0001d4e6" L"\0" L"\x0001d4e7" L"\0" L"\x0001d4e8" L"\0"
L"\x0001d4e9" L"\0" L"\x0001d4ea" L"\0" L"\x0001d4eb" L"\0" L"\x0001d4ec"
L"\0" L"\x0001d4ed" L"\0" L"\x0001d4ee" L"\0" L"\x0001d4ef" L"\0"
L"\x0001d4f0" L"\0" L"\x0001d4f1" L"\0" L"\x0001d4f2" L"\0" L"\x0001d4f3"
L"\0" L"\x0001d4f4" L"\0" L"\x0001d4f5" L"\0" L"\x0001d4f6" L"\0"
L"\x0001d4f7" L"\0" L"\x0001d4f8" L"\0" L"\x0001d4f9" L"\0" L"\x0001d4fa"
L"\0" L"\x0001d4fb" L"\0" L"\x0001d4fc" L"\0" L"\x0001d4fd" L"\0"
L"\x0001d4fe" L"\0" L"\x0001d4ff" L"\0" L"\x0001d500" L"\0" L"\x0001d501"
L"\0" L"\x0001d502" L"\0" L"\x0001d503" L"\0" L"\x0001d504" L"\0"
L"\x0001d505" L"\0" L"\x0001d507" L"\0" L"\x0001d508" L"\0" L"\x0001d509"
L"\0" L"\x0001d50a" L"\0" L"\x0001d50d" L"\0" L"\x0001d50e" L"\0"
L"\x0001d50f" L"\0" L"\x0001d510" L"\0" L"\x0001d511" L"\0" L"\x0001d512"
L"\0" L"\x0001d513" L"\0" L"\x0001d514" L"\0" L"\x0001d516" L"\0"
L"\x0001d517" L"\0" L"\x0001d518" L"\0" L"\x0001d519" L"\0" L"\x0001d51a"
L"\0" L"\x0001d51b" L"\0" L"\x0001d51c" L"\0" L"\x0001d51e" L"\0"
L"\x0001d51f" L"\0" L"\x0001d520" L"\0" L"\x0001d521" L"\0" L"\x0001d522"
L"\0" L"\x0001d523" L"\0" L"\x0001d524" L"\0" L"\x0001d525" L"\0"
L"\x0001d526" L"\0" L"\x0001d527" L"\0" L"\x0001d528" L"\0" L"\x0001d529"
L"\0" L"\x0001d52a" L"\0" L"\x0001d52b" L"\0" L"\x0001d52c" L"\0"
L"\x0001d52d" L"\0" L"\x0001d52e" L"\0" L"\x0001d52f" L"\0" L"\x0001d530"
L"\0" L"\x0001d531" L"\0" L"\x0001d532" L"\0" L"\x0001d533" L"\0"
L"\x0001d534" L"\0" L"\x0001d535" L"\0" L"\x0001d536" L"\0" L"\x0001d537"
L"\0" L"\x0001d538" L"\0" L"\x0001d539" L"\0" L"\x0001d53b" L"\0"
L"\x0001d53c" L"\0" L"\x0001d53d" L"\0" L"\x0001d53e" L"\0" L"\x0001d540"
L"\0" L"\x0001d541" L"\0" L"\x0001d542" L"\0" L"\x0001d543" L"\0"
L"\x0001d544" L"\0" L"\x0001d546" L"\0" L"\x0001d54a" L"\0" L"\x0001d54b"
L"\0" L"\x0001d54c" L"\0" L"\x0001d54d" L"\0" L"\x0001d54e" L"\0"
L"\x0001d54f" L"\0" L"\x0001d550" L"\0" L"\x0001d552" L"\0" L"\x0001d553"
L"\0" L"\x0001d554" L"\0" L"\x0001d555" L"\0" L"\x0001d556" L"\0"
L"\x0001d557" L"\0" L"\x0001d558" L"\0" L"\x0001d559" L"\0" L"\x0001d55a"
L"\0" L"\x0001d55b" L"\0" L"\x0001d55c" L"\0" L"\x0001d55d" L"\0"
L"\x0001d55e" L"\0" L"\x0001d55f" L"\0" L"\x0001d560" L"\0" L"\x0001d561"
L"\0" L"\x0001d562" L"\0" L"\x0001d563" L"\0" L"\x0001d564" L"\0"
L"\x0001d565" L"\0" L"\x0001d566" L"\0" L"\x0001d567" L"\0" L"\x0001d568"
L"\0" L"\x0001d569" L"\0" L"\x0001d56a" L"\0" L"\x0001d56b" L"\0"
L"\x0001d56c" L"\0" L"\x0001d56d" L"\0" L"\x0001d56e" L"\0" L"\x0001d56f"
L"\0" L"\x0001d570" L"\0" L"\x0001d571" L"\0" L"\x0001d572" L"\0"
L"\x0001d573" L"\0" L"\x0001d574" L"\0" L"\x0001d575" L"\0" L"\x0001d576"
L"\0" L"\x0001d577" L"\0" L"\x0001d578" L"\0" L"\x0001d579" L"\0"
L"\x0001d57a" L"\0" L"\x0001d57b" L"\0" L"\x0001d57c" L"\0" L"\x0001d57d"
L"\0" L"\x0001d57e" L"\0" L"\x0001d57f" L"\0" L"\x0001d580" L"\0"
L"\x0001d581" L"\0" L"\x0001d582" L"\0" L"\x0001d583" L"\0" L"\x0001d584"
L"\0" L"\x0001d585" L"\0" L"\x0001d586" L"\0" L"\x0001d587" L"\0"
L"\x0001d588" L"\0" L"\x0001d589" L"\0" L"\x0001d58a" L"\0" L"\x0001d58b"
L"\0" L"\x0001d58c" L"\0" L"\x0001d58d" L"\0" L"\x0001d58e" L"\0"
L"\x0001d58f" L"\0" L"\x0001d590" L"\0" L"\x0001d591" L"\0" L"\x0001d592"
L"\0" L"\x0001d593" L"\0" L"\x0001d594" L"\0" L"\x0001d595" L"\0"
L"\x0001d596" L"\0" L"\x0001d597" L"\0" L"\x0001d598" L"\0" L"\x0001d599"
L"\0" L"\x0001d59a" L"\0" L"\x0001d59b" L"\0" L"\x0001d59c" L"\0"
L"\x0001d59d" L"\0" L"\x0001d59e" L"\0" L"\x0001d59f" L"\0" L"\x0001d5a0"
L"\0" L"\x0001d5a1" L"\0" L"\x0001d5a2" L"\0" L"\x0001d5a3" L"\0"
L"\x0001d5a4" L"\0" L"\x0001d5a5" L"\0" L"\x0001d5a6" L"\0" L"\x0001d5a7"
L"\0" L"\x0001d5a8" L"\0" L"\x0001d5a9" L"\0" L"\x0001d5aa" L"\0"
L"\x0001d5ab" L"\0" L"\x0001d5ac" L"\0" L"\x0001d5ad" L"\0" L"\x0001d5ae"
L"\0" L"\x0001d5af" L"\0" L"\x0001d5b0" L"\0" L"\x0001d5b1" L"\0"
L"\x0001d5b2" L"\0" L"\x0001d5b3" L"\0" L"\x0001d5b4" L"\0" L"\x0001d5b5"
L"\0" L"\x0001d5b6" L"\0" L"\x0001d5b7" L"\0" L"\x0001d5b8" L"\0"
L"\x0001d5b9" L"\0" L"\x0001d5ba" L"\0" L"\x0001d5bb" L"\0" L"\x0001d5bc"
L"\0" L"\x0001d5bd" L"\0" L"\x0001d5be" L"\0" L"\x0001d5bf" L"\0"
L"\x0001d5c0" L"\0" L"\x0001d5c1" L"\0" L"\x0001d5c2" L"\0" L"\x0001d5c3"
L"\0" L"\x0001d5c4" L"\0" L"\x0001d5c5" L"\0" L"\x0001d5c6" L"\0"
L"\x0001d5c7" L"\0" L"\x0001d5c8" L"\0" L"\x0001d5c9" L"\0" L"\x0001d5ca"
L"\0" L"\x0001d5cb" L"\0" L"\x0001d5cc" L"\0" L"\x0001d5cd" L"\0"
L"\x0001d5ce" L"\0" L"\x0001d5cf" L"\0" L"\x0001d5d0" L"\0" L"\x0001d5d1"
L"\0" L"\x0001d5d2" L"\0" L"\x0001d5d3" L"\0" L"\x0001d5d4" L"\0"
L"\x0001d5d5" L"\0" L"\x0001d5d6" L"\0" L"\x0001d5d7" L"\0" L"\x0001d5d8"
L"\0" L"\x0001d5d9" L"\0" L"\x0001d5da" L"\0" L"\x0001d5db" L"\0"
L"\x0001d5dc" L"\0" L"\x0001d5dd" L"\0" L"\x0001d5de" L"\0" L"\x0001d5df"
L"\0" L"\x0001d5e0" L"\0" L"\x0001d5e1" L"\0" L"\x0001d5e2" L"\0"
L"\x0001d5e3" L"\0" L"\x0001d5e4" L"\0" L"\x0001d5e5" L"\0" L"\x0001d5e6"
L"\0" L"\x0001d5e7" L"\0" L"\x0001d5e8" L"\0" L"\x0001d5e9" L"\0"
L"\x0001d5ea" L"\0" L"\x0001d5eb" L"\0" L"\x0001d5ec" L"\0" L"\x0001d5ed"
L"\0" L"\x0001d5ee" L"\0" L"\x0001d5ef" L"\0" L"\x0001d5f0" L"\0"
L"\x0001d5f1" L"\0" L"\x0001d5f2" L"\0" L"\x0001d5f3" L"\0" L"\x0001d5f4"
L"\0" L"\x0001d5f5" L"\0" L"\x0001d5f6" L"\0" L"\x0001d5f7" L"\0"
L"\x0001d5f8" L"\0" L"\x0001d5f9" L"\0" L"\x0001d5fa" L"\0" L"\x0001d5fb"
L"\0" L"\x0001d5fc" L"\0" L"\x0001d5fd" L"\0" L"\x0001d5fe" L"\0"
L"\x0001d5ff" L"\0" L"\x0001d600" L"\0" L"\x0001d601" L"\0" L"\x0001d602"
L"\0" L"\x0001d603" L"\0" L"\x0001d604" L"\0" L"\x0001d605" L"\0"
L"\x0001d606" L"\0" L"\x0001d607" L"\0" L"\x0001d608" L"\0" L"\x0001d609"
L"\0" L"\x0001d60a" L"\0" L"\x0001d60b" L"\0" L"\x0001d60c" L"\0"
L"\x0001d60d" L"\0" L"\x0001d60e" L"\0" L"\x0001d60f" L"\0" L"\x0001d610"
L"\0" L"\x0001d611" L"\0" L"\x0001d612" L"\0" L"\x0001d613" L"\0"
L"\x0001d614" L"\0" L"\x0001d615" L"\0" L"\x0001d616" L"\0" L"\x0001d617"
L"\0" L"\x0001d618" L"\0" L"\x0001d619" L"\0" L"\x0001d61a" L"\0"
L"\x0001d61b" L"\0" L"\x0001d61c" L"\0" L"\x0001d61d" L"\0" L"\x0001d61e"
L"\0" L"\x0001d61f" L"\0" L"\x0001d620" L"\0" L"\x0001d621" L"\0"
L"\x0001d622" L"\0" L"\x0001d623" L"\0" L"\x0001d624" L"\0" L"\x0001d625"
L"\0" L"\x0001d626" L"\0" L"\x0001d627" L"\0" L"\x0001d628" L"\0"
L"\x0001d629" L"\0" L"\x0001d62a" L"\0" L"\x0001d62b" L"\0" L"\x0001d62c"
L"\0" L"\x0001d62d" L"\0" L"\x0001d62e" L"\0" L"\x0001d62f" L"\0"
L"\x0001d630" L"\0" L"\x0001d631" L"\0" L"\x0001d632" L"\0" L"\x0001d633"
L"\0" L"\x0001d634" L"\0" L"\x0001d635" L"\0" L"\x0001d636" L"\0"
L"\x0001d637" L"\0" L"\x0001d638" L"\0" L"\x0001d639" L"\0" L"\x0001d63a"
L"\0" L"\x0001d63b" L"\0" L"\x0001d63c" L"\0" L"\x0001d63d" L"\0"
L"\x0001d63e" L"\0" L"\x0001d63f" L"\0" L"\x0001d640" L"\0" L"\x0001d641"
L"\0" L"\x0001d642" L"\0" L"\x0001d643" L"\0" L"\x0001d644" L"\0"
L"\x0001d645" L"\0" L"\x0001d646" L"\0" L"\x0001d647" L"\0" L"\x0001d648"
L"\0" L"\x0001d649" L"\0" L"\x0001d64a" L"\0" L"\x0001d64b" L"\0"
L"\x0001d64c" L"\0" L"\x0001d64d" L"\0" L"\x0001d64e" L"\0" L"\x0001d64f"
L"\0" L"\x0001d650" L"\0" L"\x0001d651" L"\0" L"\x0001d652" L"\0"
L"\x0001d653" L"\0" L"\x0001d654" L"\0" L"\x0001d655" L"\0" L"\x0001d656"
L"\0" L"\x0001d657" L"\0" L"\x0001d658" L"\0" L"\x0001d659" L"\0"
L"\x0001d65a" L"\0" L"\x0001d65b" L"\0" L"\x0001d65c" L"\0" L"\x0001d65d"
L"\0" L"\x0001d65e" L"\0" L"\x0001d65f" L"\0" L"\x0001d660" L"\0"
L"\x0001d661" L"\0" L"\x0001d662" L"\0" L"\x0001d663" L"\0" L"\x0001d664"
L"\0" L"\x0001d665" L"\0" L"\x0001d666" L"\0" L"\x0001d667" L"\0"
L"\x0001d668" L"\0" L"\x0001d669" L"\0" L"\x0001d66a" L"\0" L"\x0001d66b"
L"\0" L"\x0001d66c" L"\0" L"\x0001d66d" L"\0" L"\x0001d66e" L"\0"
L"\x0001d66f" L"\0" L"\x0001d670" L"\0" L"\x0001d671" L"\0" L"\x0001d672"
L"\0" L"\x0001d673" L"\0" L"\x0001d674" L"\0" L"\x0001d675" L"\0"
L"\x0001d676" L"\0" L"\x0001d677" L"\0" L"\x0001d678" L"\0" L"\x0001d679"
L"\0" L"\x0001d67a" L"\0" L"\x0001d67b" L"\0" L"\x0001d67c" L"\0"
L"\x0001d67d" L"\0" L"\x0001d67e" L"\0" L"\x0001d67f" L"\0" L"\x0001d680"
L"\0" L"\x0001d681" L"\0" L"\x0001d682" L"\0" L"\x0001d683" L"\0"
L"\x0001d684" L"\0" L"\x0001d685" L"\0" L"\x0001d686" L"\0" L"\x0001d687"
L"\0" L"\x0001d688" L"\0" L"\x0001d689" L"\0" L"\x0001d68a" L"\0"
L"\x0001d68b" L"\0" L"\x0001d68c" L"\0" L"\x0001d68d" L"\0" L"\x0001d68e"
L"\0" L"\x0001d68f" L"\0" L"\x0001d690" L"\0" L"\x0001d691" L"\0"
L"\x0001d692" L"\0" L"\x0001d693" L"\0" L"\x0001d694" L"\0" L"\x0001d695"
L"\0" L"\x0001d696" L"\0" L"\x0001d697" L"\0" L"\x0001d698" L"\0"
L"\x0001d699" L"\0" L"\x0001d69a" L"\0" L"\x0001d69b" L"\0" L"\x0001d69c"
L"\0" L"\x0001d69d" L"\0" L"\x0001d69e" L"\0" L"\x0001d69f" L"\0"
L"\x0001d6a0" L"\0" L"\x0001d6a1" L"\0" L"\x0001d6a2" L"\0" L"\x0001d6a3"
L"\0" L"\x0001d7ce" L"\0" L"\x0001d7cf" L"\0" L"\x0001d7d0" L"\0"
L"\x0001d7d1" L"\0" L"\x0001d7d2" L"\0" L"\x0001d7d3" L"\0" L"\x0001d7d4"
L"\0" L"\x0001d7d5" L"\0" L"\x0001d7d6" L"\0" L"\x0001d7d7" L"\0"
L"\x0001d7d8" L"\0" L"\x0001d7d9" L"\0" L"\x0001d7da" L"\0" L"\x0001d7db"
L"\0" L"\x0001d7dc" L"\0" L"\x0001d7dd" L"\0" L"\x0001d7de" L"\0"
L"\x0001d7df" L"\0" L"\x0001d7e0" L"\0" L"\x0001d7e1" L"\0" L"\x0001d7e2"
L"\0" L"\x0001d7e3" L"\0" L"\x0001d7e4" L"\0" L"\x0001d7e5" L"\0"
L"\x0001d7e6" L"\0" L"\x0001d7e7" L"\0" L"\x0001d7e8" L"\0" L"\x0001d7e9"
L"\0" L"\x0001d7ea" L"\0" L"\x0001d7eb" L"\0" L"\x0001d7ec" L"\0"
L"\x0001d7ed" L"\0" L"\x0001d7ee" L"\0" L"\x0001d7ef" L"\0" L"\x0001d7f0"
L"\0" L"\x0001d7f1" L"\0" L"\x0001d7f2" L"\0" L"\x0001d7f3" L"\0"
L"\x0001d7f4" L"\0" L"\x0001d7f5" L"\0" L"\x0001d7f6" L"\0" L"\x0001d7f7"
L"\0" L"\x0001d7f8" L"\0" L"\x0001d7f9" L"\0" L"\x0001d7fa" L"\0"
L"\x0001d7fb" L"\0" L"\x0001d7fc" L"\0" L"\x0001d7fd" L"\0" L"\x0001d7fe"
L"\0" L"\x0001d7ff";
static const uint32_t translit_to_idx[] =
{
0, 3, 8, 12, 15, 20, 23, 26, 30, 37, 44, 51,
@ -235,7 +494,65 @@ static const uint32_t translit_to_idx[] =
2317, 2320, 2323, 2326, 2329, 2332, 2335, 2338, 2341, 2344, 2347, 2350,
2353, 2356, 2359, 2362, 2365, 2368, 2371, 2374, 2377, 2380, 2383, 2386,
2389, 2392, 2395, 2398, 2401, 2404, 2407, 2410, 2413, 2416, 2419, 2422,
2425, 2428
2425, 2428, 2431, 2434, 2437, 2440, 2443, 2446, 2449, 2452, 2455, 2458,
2461, 2464, 2467, 2470, 2473, 2476, 2479, 2482, 2485, 2488, 2491, 2494,
2497, 2500, 2503, 2506, 2509, 2512, 2515, 2518, 2521, 2524, 2527, 2530,
2533, 2536, 2539, 2542, 2545, 2548, 2551, 2554, 2557, 2560, 2563, 2566,
2569, 2572, 2575, 2578, 2581, 2584, 2587, 2590, 2593, 2596, 2599, 2602,
2605, 2608, 2611, 2614, 2617, 2620, 2623, 2626, 2629, 2632, 2635, 2638,
2641, 2644, 2647, 2650, 2653, 2656, 2659, 2662, 2665, 2668, 2671, 2674,
2677, 2680, 2683, 2686, 2689, 2692, 2695, 2698, 2701, 2704, 2707, 2710,
2713, 2716, 2719, 2722, 2725, 2728, 2731, 2734, 2737, 2740, 2743, 2746,
2749, 2752, 2755, 2758, 2761, 2764, 2767, 2770, 2773, 2776, 2779, 2782,
2785, 2788, 2791, 2794, 2797, 2800, 2803, 2806, 2809, 2812, 2815, 2818,
2821, 2824, 2827, 2830, 2833, 2836, 2839, 2842, 2845, 2848, 2851, 2854,
2857, 2860, 2863, 2866, 2869, 2872, 2875, 2878, 2881, 2884, 2887, 2890,
2893, 2896, 2899, 2902, 2905, 2908, 2911, 2914, 2917, 2920, 2923, 2926,
2929, 2932, 2935, 2938, 2941, 2944, 2947, 2950, 2953, 2956, 2959, 2962,
2965, 2968, 2971, 2974, 2977, 2980, 2983, 2986, 2989, 2992, 2995, 2998,
3001, 3004, 3007, 3010, 3013, 3016, 3019, 3022, 3025, 3028, 3031, 3034,
3037, 3040, 3043, 3046, 3049, 3052, 3055, 3058, 3061, 3064, 3067, 3070,
3073, 3076, 3079, 3082, 3085, 3088, 3091, 3094, 3097, 3100, 3103, 3106,
3109, 3112, 3115, 3118, 3121, 3124, 3127, 3130, 3133, 3136, 3139, 3142,
3145, 3148, 3151, 3154, 3157, 3160, 3163, 3166, 3169, 3172, 3175, 3178,
3181, 3184, 3187, 3190, 3193, 3196, 3199, 3202, 3205, 3208, 3211, 3214,
3217, 3220, 3223, 3226, 3229, 3232, 3235, 3238, 3241, 3244, 3247, 3250,
3253, 3256, 3259, 3262, 3265, 3268, 3271, 3274, 3277, 3280, 3283, 3286,
3289, 3292, 3295, 3298, 3301, 3304, 3307, 3310, 3313, 3316, 3319, 3322,
3325, 3328, 3331, 3334, 3337, 3340, 3343, 3346, 3349, 3352, 3355, 3358,
3361, 3364, 3367, 3370, 3373, 3376, 3379, 3382, 3385, 3388, 3391, 3394,
3397, 3400, 3403, 3406, 3409, 3412, 3415, 3418, 3421, 3424, 3427, 3430,
3433, 3436, 3439, 3442, 3445, 3448, 3451, 3454, 3457, 3460, 3463, 3466,
3469, 3472, 3475, 3478, 3481, 3484, 3487, 3490, 3493, 3496, 3499, 3502,
3505, 3508, 3511, 3514, 3517, 3520, 3523, 3526, 3529, 3532, 3535, 3538,
3541, 3544, 3547, 3550, 3553, 3556, 3559, 3562, 3565, 3568, 3571, 3574,
3577, 3580, 3583, 3586, 3589, 3592, 3595, 3598, 3601, 3604, 3607, 3610,
3613, 3616, 3619, 3622, 3625, 3628, 3631, 3634, 3637, 3640, 3643, 3646,
3649, 3652, 3655, 3658, 3661, 3664, 3667, 3670, 3673, 3676, 3679, 3682,
3685, 3688, 3691, 3694, 3697, 3700, 3703, 3706, 3709, 3712, 3715, 3718,
3721, 3724, 3727, 3730, 3733, 3736, 3739, 3742, 3745, 3748, 3751, 3754,
3757, 3760, 3763, 3766, 3769, 3772, 3775, 3778, 3781, 3784, 3787, 3790,
3793, 3796, 3799, 3802, 3805, 3808, 3811, 3814, 3817, 3820, 3823, 3826,
3829, 3832, 3835, 3838, 3841, 3844, 3847, 3850, 3853, 3856, 3859, 3862,
3865, 3868, 3871, 3874, 3877, 3880, 3883, 3886, 3889, 3892, 3895, 3898,
3901, 3904, 3907, 3910, 3913, 3916, 3919, 3922, 3925, 3928, 3931, 3934,
3937, 3940, 3943, 3946, 3949, 3952, 3955, 3958, 3961, 3964, 3967, 3970,
3973, 3976, 3979, 3982, 3985, 3988, 3991, 3994, 3997, 4000, 4003, 4006,
4009, 4012, 4015, 4018, 4021, 4024, 4027, 4030, 4033, 4036, 4039, 4042,
4045, 4048, 4051, 4054, 4057, 4060, 4063, 4066, 4069, 4072, 4075, 4078,
4081, 4084, 4087, 4090, 4093, 4096, 4099, 4102, 4105, 4108, 4111, 4114,
4117, 4120, 4123, 4126, 4129, 4132, 4135, 4138, 4141, 4144, 4147, 4150,
4153, 4156, 4159, 4162, 4165, 4168, 4171, 4174, 4177, 4180, 4183, 4186,
4189, 4192, 4195, 4198, 4201, 4204, 4207, 4210, 4213, 4216, 4219, 4222,
4225, 4228, 4231, 4234, 4237, 4240, 4243, 4246, 4249, 4252, 4255, 4258,
4261, 4264, 4267, 4270, 4273, 4276, 4279, 4282, 4285, 4288, 4291, 4294,
4297, 4300, 4303, 4306, 4309, 4312, 4315, 4318, 4321, 4324, 4327, 4330,
4333, 4336, 4339, 4342, 4345, 4348, 4351, 4354, 4357, 4360, 4363, 4366,
4369, 4372, 4375, 4378, 4381, 4384, 4387, 4390, 4393, 4396, 4399, 4402,
4405, 4408, 4411, 4414, 4417, 4420, 4423, 4426, 4429, 4432, 4435, 4438,
4441, 4444, 4447, 4450, 4453, 4456, 4459, 4462, 4465, 4468, 4471, 4474,
4477, 4480, 4483, 4486, 4489, 4492, 4495, 4498, 4501, 4504, 4507, 4510,
4513, 4516, 4519, 4522, 4525, 4528, 4531
};
static const wchar_t translit_to_tbl[] =
L" \0" L"\0" L"(C)\0" L"\0" L"<<\0" L"\0" L"-\0" L"\0" L"(R)\0" L"\0" L"u\0"
@ -352,4 +669,131 @@ static const wchar_t translit_to_tbl[] =
L"\0" L"n\0" L"\0" L"o\0" L"\0" L"p\0" L"\0" L"q\0" L"\0" L"r\0" L"\0"
L"s\0" L"\0" L"t\0" L"\0" L"u\0" L"\0" L"v\0" L"\0" L"w\0" L"\0" L"x\0"
L"\0" L"y\0" L"\0" L"z\0" L"\0" L"{\0" L"\0" L"|\0" L"\0" L"}\0" L"\0"
L"~\0";
L"~\0" L"\0" L"A\0" L"\0" L"B\0" L"\0" L"C\0" L"\0" L"D\0" L"\0" L"E\0"
L"\0" L"F\0" L"\0" L"G\0" L"\0" L"H\0" L"\0" L"I\0" L"\0" L"J\0" L"\0"
L"K\0" L"\0" L"L\0" L"\0" L"M\0" L"\0" L"N\0" L"\0" L"O\0" L"\0" L"P\0"
L"\0" L"Q\0" L"\0" L"R\0" L"\0" L"S\0" L"\0" L"T\0" L"\0" L"U\0" L"\0"
L"V\0" L"\0" L"W\0" L"\0" L"X\0" L"\0" L"Y\0" L"\0" L"Z\0" L"\0" L"a\0"
L"\0" L"b\0" L"\0" L"c\0" L"\0" L"d\0" L"\0" L"e\0" L"\0" L"f\0" L"\0"
L"g\0" L"\0" L"h\0" L"\0" L"i\0" L"\0" L"j\0" L"\0" L"k\0" L"\0" L"l\0"
L"\0" L"m\0" L"\0" L"n\0" L"\0" L"o\0" L"\0" L"p\0" L"\0" L"q\0" L"\0"
L"r\0" L"\0" L"s\0" L"\0" L"t\0" L"\0" L"u\0" L"\0" L"v\0" L"\0" L"w\0"
L"\0" L"x\0" L"\0" L"y\0" L"\0" L"z\0" L"\0" L"A\0" L"\0" L"B\0" L"\0"
L"C\0" L"\0" L"D\0" L"\0" L"E\0" L"\0" L"F\0" L"\0" L"G\0" L"\0" L"H\0"
L"\0" L"I\0" L"\0" L"J\0" L"\0" L"K\0" L"\0" L"L\0" L"\0" L"M\0" L"\0"
L"N\0" L"\0" L"O\0" L"\0" L"P\0" L"\0" L"Q\0" L"\0" L"R\0" L"\0" L"S\0"
L"\0" L"T\0" L"\0" L"U\0" L"\0" L"V\0" L"\0" L"W\0" L"\0" L"X\0" L"\0"
L"Y\0" L"\0" L"Z\0" L"\0" L"a\0" L"\0" L"b\0" L"\0" L"c\0" L"\0" L"d\0"
L"\0" L"e\0" L"\0" L"f\0" L"\0" L"g\0" L"\0" L"i\0" L"\0" L"j\0" L"\0"
L"k\0" L"\0" L"l\0" L"\0" L"m\0" L"\0" L"n\0" L"\0" L"o\0" L"\0" L"p\0"
L"\0" L"q\0" L"\0" L"r\0" L"\0" L"s\0" L"\0" L"t\0" L"\0" L"u\0" L"\0"
L"v\0" L"\0" L"w\0" L"\0" L"x\0" L"\0" L"y\0" L"\0" L"z\0" L"\0" L"A\0"
L"\0" L"B\0" L"\0" L"C\0" L"\0" L"D\0" L"\0" L"E\0" L"\0" L"F\0" L"\0"
L"G\0" L"\0" L"H\0" L"\0" L"I\0" L"\0" L"J\0" L"\0" L"K\0" L"\0" L"L\0"
L"\0" L"M\0" L"\0" L"N\0" L"\0" L"O\0" L"\0" L"P\0" L"\0" L"Q\0" L"\0"
L"R\0" L"\0" L"S\0" L"\0" L"T\0" L"\0" L"U\0" L"\0" L"V\0" L"\0" L"W\0"
L"\0" L"X\0" L"\0" L"Y\0" L"\0" L"Z\0" L"\0" L"a\0" L"\0" L"b\0" L"\0"
L"c\0" L"\0" L"d\0" L"\0" L"e\0" L"\0" L"f\0" L"\0" L"g\0" L"\0" L"h\0"
L"\0" L"i\0" L"\0" L"j\0" L"\0" L"k\0" L"\0" L"l\0" L"\0" L"m\0" L"\0"
L"n\0" L"\0" L"o\0" L"\0" L"p\0" L"\0" L"q\0" L"\0" L"r\0" L"\0" L"s\0"
L"\0" L"t\0" L"\0" L"u\0" L"\0" L"v\0" L"\0" L"w\0" L"\0" L"x\0" L"\0"
L"y\0" L"\0" L"z\0" L"\0" L"A\0" L"\0" L"C\0" L"\0" L"D\0" L"\0" L"G\0"
L"\0" L"J\0" L"\0" L"K\0" L"\0" L"N\0" L"\0" L"O\0" L"\0" L"P\0" L"\0"
L"Q\0" L"\0" L"S\0" L"\0" L"T\0" L"\0" L"U\0" L"\0" L"V\0" L"\0" L"W\0"
L"\0" L"X\0" L"\0" L"Y\0" L"\0" L"Z\0" L"\0" L"a\0" L"\0" L"b\0" L"\0"
L"c\0" L"\0" L"d\0" L"\0" L"f\0" L"\0" L"h\0" L"\0" L"i\0" L"\0" L"j\0"
L"\0" L"k\0" L"\0" L"m\0" L"\0" L"n\0" L"\0" L"p\0" L"\0" L"q\0" L"\0"
L"r\0" L"\0" L"s\0" L"\0" L"t\0" L"\0" L"u\0" L"\0" L"v\0" L"\0" L"w\0"
L"\0" L"x\0" L"\0" L"y\0" L"\0" L"z\0" L"\0" L"A\0" L"\0" L"B\0" L"\0"
L"C\0" L"\0" L"D\0" L"\0" L"E\0" L"\0" L"F\0" L"\0" L"G\0" L"\0" L"H\0"
L"\0" L"I\0" L"\0" L"J\0" L"\0" L"K\0" L"\0" L"L\0" L"\0" L"M\0" L"\0"
L"N\0" L"\0" L"O\0" L"\0" L"P\0" L"\0" L"Q\0" L"\0" L"R\0" L"\0" L"S\0"
L"\0" L"T\0" L"\0" L"U\0" L"\0" L"V\0" L"\0" L"W\0" L"\0" L"X\0" L"\0"
L"Y\0" L"\0" L"Z\0" L"\0" L"a\0" L"\0" L"b\0" L"\0" L"c\0" L"\0" L"d\0"
L"\0" L"e\0" L"\0" L"f\0" L"\0" L"g\0" L"\0" L"h\0" L"\0" L"i\0" L"\0"
L"j\0" L"\0" L"k\0" L"\0" L"l\0" L"\0" L"m\0" L"\0" L"n\0" L"\0" L"o\0"
L"\0" L"p\0" L"\0" L"q\0" L"\0" L"r\0" L"\0" L"s\0" L"\0" L"t\0" L"\0"
L"u\0" L"\0" L"v\0" L"\0" L"w\0" L"\0" L"x\0" L"\0" L"y\0" L"\0" L"z\0"
L"\0" L"A\0" L"\0" L"B\0" L"\0" L"D\0" L"\0" L"E\0" L"\0" L"F\0" L"\0"
L"G\0" L"\0" L"J\0" L"\0" L"K\0" L"\0" L"L\0" L"\0" L"M\0" L"\0" L"N\0"
L"\0" L"O\0" L"\0" L"P\0" L"\0" L"Q\0" L"\0" L"S\0" L"\0" L"T\0" L"\0"
L"U\0" L"\0" L"V\0" L"\0" L"W\0" L"\0" L"X\0" L"\0" L"Y\0" L"\0" L"a\0"
L"\0" L"b\0" L"\0" L"c\0" L"\0" L"d\0" L"\0" L"e\0" L"\0" L"f\0" L"\0"
L"g\0" L"\0" L"h\0" L"\0" L"i\0" L"\0" L"j\0" L"\0" L"k\0" L"\0" L"l\0"
L"\0" L"m\0" L"\0" L"n\0" L"\0" L"o\0" L"\0" L"p\0" L"\0" L"q\0" L"\0"
L"r\0" L"\0" L"s\0" L"\0" L"t\0" L"\0" L"u\0" L"\0" L"v\0" L"\0" L"w\0"
L"\0" L"x\0" L"\0" L"y\0" L"\0" L"z\0" L"\0" L"A\0" L"\0" L"B\0" L"\0"
L"D\0" L"\0" L"E\0" L"\0" L"F\0" L"\0" L"G\0" L"\0" L"I\0" L"\0" L"J\0"
L"\0" L"K\0" L"\0" L"L\0" L"\0" L"M\0" L"\0" L"O\0" L"\0" L"S\0" L"\0"
L"T\0" L"\0" L"U\0" L"\0" L"V\0" L"\0" L"W\0" L"\0" L"X\0" L"\0" L"Y\0"
L"\0" L"a\0" L"\0" L"b\0" L"\0" L"c\0" L"\0" L"d\0" L"\0" L"e\0" L"\0"
L"f\0" L"\0" L"g\0" L"\0" L"h\0" L"\0" L"i\0" L"\0" L"j\0" L"\0" L"k\0"
L"\0" L"l\0" L"\0" L"m\0" L"\0" L"n\0" L"\0" L"o\0" L"\0" L"p\0" L"\0"
L"q\0" L"\0" L"r\0" L"\0" L"s\0" L"\0" L"t\0" L"\0" L"u\0" L"\0" L"v\0"
L"\0" L"w\0" L"\0" L"x\0" L"\0" L"y\0" L"\0" L"z\0" L"\0" L"A\0" L"\0"
L"B\0" L"\0" L"C\0" L"\0" L"D\0" L"\0" L"E\0" L"\0" L"F\0" L"\0" L"G\0"
L"\0" L"H\0" L"\0" L"I\0" L"\0" L"J\0" L"\0" L"K\0" L"\0" L"L\0" L"\0"
L"M\0" L"\0" L"N\0" L"\0" L"O\0" L"\0" L"P\0" L"\0" L"Q\0" L"\0" L"R\0"
L"\0" L"S\0" L"\0" L"T\0" L"\0" L"U\0" L"\0" L"V\0" L"\0" L"W\0" L"\0"
L"X\0" L"\0" L"Y\0" L"\0" L"Z\0" L"\0" L"a\0" L"\0" L"b\0" L"\0" L"c\0"
L"\0" L"d\0" L"\0" L"e\0" L"\0" L"f\0" L"\0" L"g\0" L"\0" L"h\0" L"\0"
L"i\0" L"\0" L"j\0" L"\0" L"k\0" L"\0" L"l\0" L"\0" L"m\0" L"\0" L"n\0"
L"\0" L"o\0" L"\0" L"p\0" L"\0" L"q\0" L"\0" L"r\0" L"\0" L"s\0" L"\0"
L"t\0" L"\0" L"u\0" L"\0" L"v\0" L"\0" L"w\0" L"\0" L"x\0" L"\0" L"y\0"
L"\0" L"z\0" L"\0" L"A\0" L"\0" L"B\0" L"\0" L"C\0" L"\0" L"D\0" L"\0"
L"E\0" L"\0" L"F\0" L"\0" L"G\0" L"\0" L"H\0" L"\0" L"I\0" L"\0" L"J\0"
L"\0" L"K\0" L"\0" L"L\0" L"\0" L"M\0" L"\0" L"N\0" L"\0" L"O\0" L"\0"
L"P\0" L"\0" L"Q\0" L"\0" L"R\0" L"\0" L"S\0" L"\0" L"T\0" L"\0" L"U\0"
L"\0" L"V\0" L"\0" L"W\0" L"\0" L"X\0" L"\0" L"Y\0" L"\0" L"Z\0" L"\0"
L"a\0" L"\0" L"b\0" L"\0" L"c\0" L"\0" L"d\0" L"\0" L"e\0" L"\0" L"f\0"
L"\0" L"g\0" L"\0" L"h\0" L"\0" L"i\0" L"\0" L"j\0" L"\0" L"k\0" L"\0"
L"l\0" L"\0" L"m\0" L"\0" L"n\0" L"\0" L"o\0" L"\0" L"p\0" L"\0" L"q\0"
L"\0" L"r\0" L"\0" L"s\0" L"\0" L"t\0" L"\0" L"u\0" L"\0" L"v\0" L"\0"
L"w\0" L"\0" L"x\0" L"\0" L"y\0" L"\0" L"z\0" L"\0" L"A\0" L"\0" L"B\0"
L"\0" L"C\0" L"\0" L"D\0" L"\0" L"E\0" L"\0" L"F\0" L"\0" L"G\0" L"\0"
L"H\0" L"\0" L"I\0" L"\0" L"J\0" L"\0" L"K\0" L"\0" L"L\0" L"\0" L"M\0"
L"\0" L"N\0" L"\0" L"O\0" L"\0" L"P\0" L"\0" L"Q\0" L"\0" L"R\0" L"\0"
L"S\0" L"\0" L"T\0" L"\0" L"U\0" L"\0" L"V\0" L"\0" L"W\0" L"\0" L"X\0"
L"\0" L"Y\0" L"\0" L"Z\0" L"\0" L"a\0" L"\0" L"b\0" L"\0" L"c\0" L"\0"
L"d\0" L"\0" L"e\0" L"\0" L"f\0" L"\0" L"g\0" L"\0" L"h\0" L"\0" L"i\0"
L"\0" L"j\0" L"\0" L"k\0" L"\0" L"l\0" L"\0" L"m\0" L"\0" L"n\0" L"\0"
L"o\0" L"\0" L"p\0" L"\0" L"q\0" L"\0" L"r\0" L"\0" L"s\0" L"\0" L"t\0"
L"\0" L"u\0" L"\0" L"v\0" L"\0" L"w\0" L"\0" L"x\0" L"\0" L"y\0" L"\0"
L"z\0" L"\0" L"A\0" L"\0" L"B\0" L"\0" L"C\0" L"\0" L"D\0" L"\0" L"E\0"
L"\0" L"F\0" L"\0" L"G\0" L"\0" L"H\0" L"\0" L"I\0" L"\0" L"J\0" L"\0"
L"K\0" L"\0" L"L\0" L"\0" L"M\0" L"\0" L"N\0" L"\0" L"O\0" L"\0" L"P\0"
L"\0" L"Q\0" L"\0" L"R\0" L"\0" L"S\0" L"\0" L"T\0" L"\0" L"U\0" L"\0"
L"V\0" L"\0" L"W\0" L"\0" L"X\0" L"\0" L"Y\0" L"\0" L"Z\0" L"\0" L"a\0"
L"\0" L"b\0" L"\0" L"c\0" L"\0" L"d\0" L"\0" L"e\0" L"\0" L"f\0" L"\0"
L"g\0" L"\0" L"h\0" L"\0" L"i\0" L"\0" L"j\0" L"\0" L"k\0" L"\0" L"l\0"
L"\0" L"m\0" L"\0" L"n\0" L"\0" L"o\0" L"\0" L"p\0" L"\0" L"q\0" L"\0"
L"r\0" L"\0" L"s\0" L"\0" L"t\0" L"\0" L"u\0" L"\0" L"v\0" L"\0" L"w\0"
L"\0" L"x\0" L"\0" L"y\0" L"\0" L"z\0" L"\0" L"A\0" L"\0" L"B\0" L"\0"
L"C\0" L"\0" L"D\0" L"\0" L"E\0" L"\0" L"F\0" L"\0" L"G\0" L"\0" L"H\0"
L"\0" L"I\0" L"\0" L"J\0" L"\0" L"K\0" L"\0" L"L\0" L"\0" L"M\0" L"\0"
L"N\0" L"\0" L"O\0" L"\0" L"P\0" L"\0" L"Q\0" L"\0" L"R\0" L"\0" L"S\0"
L"\0" L"T\0" L"\0" L"U\0" L"\0" L"V\0" L"\0" L"W\0" L"\0" L"X\0" L"\0"
L"Y\0" L"\0" L"Z\0" L"\0" L"a\0" L"\0" L"b\0" L"\0" L"c\0" L"\0" L"d\0"
L"\0" L"e\0" L"\0" L"f\0" L"\0" L"g\0" L"\0" L"h\0" L"\0" L"i\0" L"\0"
L"j\0" L"\0" L"k\0" L"\0" L"l\0" L"\0" L"m\0" L"\0" L"n\0" L"\0" L"o\0"
L"\0" L"p\0" L"\0" L"q\0" L"\0" L"r\0" L"\0" L"s\0" L"\0" L"t\0" L"\0"
L"u\0" L"\0" L"v\0" L"\0" L"w\0" L"\0" L"x\0" L"\0" L"y\0" L"\0" L"z\0"
L"\0" L"A\0" L"\0" L"B\0" L"\0" L"C\0" L"\0" L"D\0" L"\0" L"E\0" L"\0"
L"F\0" L"\0" L"G\0" L"\0" L"H\0" L"\0" L"I\0" L"\0" L"J\0" L"\0" L"K\0"
L"\0" L"L\0" L"\0" L"M\0" L"\0" L"N\0" L"\0" L"O\0" L"\0" L"P\0" L"\0"
L"Q\0" L"\0" L"R\0" L"\0" L"S\0" L"\0" L"T\0" L"\0" L"U\0" L"\0" L"V\0"
L"\0" L"W\0" L"\0" L"X\0" L"\0" L"Y\0" L"\0" L"Z\0" L"\0" L"a\0" L"\0"
L"b\0" L"\0" L"c\0" L"\0" L"d\0" L"\0" L"e\0" L"\0" L"f\0" L"\0" L"g\0"
L"\0" L"h\0" L"\0" L"i\0" L"\0" L"j\0" L"\0" L"k\0" L"\0" L"l\0" L"\0"
L"m\0" L"\0" L"n\0" L"\0" L"o\0" L"\0" L"p\0" L"\0" L"q\0" L"\0" L"r\0"
L"\0" L"s\0" L"\0" L"t\0" L"\0" L"u\0" L"\0" L"v\0" L"\0" L"w\0" L"\0"
L"x\0" L"\0" L"y\0" L"\0" L"z\0" L"\0" L"0\0" L"\0" L"1\0" L"\0" L"2\0"
L"\0" L"3\0" L"\0" L"4\0" L"\0" L"5\0" L"\0" L"6\0" L"\0" L"7\0" L"\0"
L"8\0" L"\0" L"9\0" L"\0" L"0\0" L"\0" L"1\0" L"\0" L"2\0" L"\0" L"3\0"
L"\0" L"4\0" L"\0" L"5\0" L"\0" L"6\0" L"\0" L"7\0" L"\0" L"8\0" L"\0"
L"9\0" L"\0" L"0\0" L"\0" L"1\0" L"\0" L"2\0" L"\0" L"3\0" L"\0" L"4\0"
L"\0" L"5\0" L"\0" L"6\0" L"\0" L"7\0" L"\0" L"8\0" L"\0" L"9\0" L"\0"
L"0\0" L"\0" L"1\0" L"\0" L"2\0" L"\0" L"3\0" L"\0" L"4\0" L"\0" L"5\0"
L"\0" L"6\0" L"\0" L"7\0" L"\0" L"8\0" L"\0" L"9\0" L"\0" L"0\0" L"\0"
L"1\0" L"\0" L"2\0" L"\0" L"3\0" L"\0" L"4\0" L"\0" L"5\0" L"\0" L"6\0"
L"\0" L"7\0" L"\0" L"8\0" L"\0" L"9\0";

View File

@ -610,3 +610,704 @@
"\xff5c" "|" /* <UFF5C> FULLWIDTH VERTICAL LINE */
"\xff5d" "}" /* <UFF5D> FULLWIDTH RIGHT CURLY BRACKET */
"\xff5e" "~" /* <UFF5E> FULLWIDTH TILDE */
"\x0001d400" "A" /* <U0001D400> MATHEMATICAL BOLD CAPITAL A */
"\x0001d401" "B" /* <U0001D401> MATHEMATICAL BOLD CAPITAL B */
"\x0001d402" "C" /* <U0001D402> MATHEMATICAL BOLD CAPITAL C */
"\x0001d403" "D" /* <U0001D403> MATHEMATICAL BOLD CAPITAL D */
"\x0001d404" "E" /* <U0001D404> MATHEMATICAL BOLD CAPITAL E */
"\x0001d405" "F" /* <U0001D405> MATHEMATICAL BOLD CAPITAL F */
"\x0001d406" "G" /* <U0001D406> MATHEMATICAL BOLD CAPITAL G */
"\x0001d407" "H" /* <U0001D407> MATHEMATICAL BOLD CAPITAL H */
"\x0001d408" "I" /* <U0001D408> MATHEMATICAL BOLD CAPITAL I */
"\x0001d409" "J" /* <U0001D409> MATHEMATICAL BOLD CAPITAL J */
"\x0001d40a" "K" /* <U0001D40A> MATHEMATICAL BOLD CAPITAL K */
"\x0001d40b" "L" /* <U0001D40B> MATHEMATICAL BOLD CAPITAL L */
"\x0001d40c" "M" /* <U0001D40C> MATHEMATICAL BOLD CAPITAL M */
"\x0001d40d" "N" /* <U0001D40D> MATHEMATICAL BOLD CAPITAL N */
"\x0001d40e" "O" /* <U0001D40E> MATHEMATICAL BOLD CAPITAL O */
"\x0001d40f" "P" /* <U0001D40F> MATHEMATICAL BOLD CAPITAL P */
"\x0001d410" "Q" /* <U0001D410> MATHEMATICAL BOLD CAPITAL Q */
"\x0001d411" "R" /* <U0001D411> MATHEMATICAL BOLD CAPITAL R */
"\x0001d412" "S" /* <U0001D412> MATHEMATICAL BOLD CAPITAL S */
"\x0001d413" "T" /* <U0001D413> MATHEMATICAL BOLD CAPITAL T */
"\x0001d414" "U" /* <U0001D414> MATHEMATICAL BOLD CAPITAL U */
"\x0001d415" "V" /* <U0001D415> MATHEMATICAL BOLD CAPITAL V */
"\x0001d416" "W" /* <U0001D416> MATHEMATICAL BOLD CAPITAL W */
"\x0001d417" "X" /* <U0001D417> MATHEMATICAL BOLD CAPITAL X */
"\x0001d418" "Y" /* <U0001D418> MATHEMATICAL BOLD CAPITAL Y */
"\x0001d419" "Z" /* <U0001D419> MATHEMATICAL BOLD CAPITAL Z */
"\x0001d41a" "a" /* <U0001D41A> MATHEMATICAL BOLD SMALL A */
"\x0001d41b" "b" /* <U0001D41B> MATHEMATICAL BOLD SMALL B */
"\x0001d41c" "c" /* <U0001D41C> MATHEMATICAL BOLD SMALL C */
"\x0001d41d" "d" /* <U0001D41D> MATHEMATICAL BOLD SMALL D */
"\x0001d41e" "e" /* <U0001D41E> MATHEMATICAL BOLD SMALL E */
"\x0001d41f" "f" /* <U0001D41F> MATHEMATICAL BOLD SMALL F */
"\x0001d420" "g" /* <U0001D420> MATHEMATICAL BOLD SMALL G */
"\x0001d421" "h" /* <U0001D421> MATHEMATICAL BOLD SMALL H */
"\x0001d422" "i" /* <U0001D422> MATHEMATICAL BOLD SMALL I */
"\x0001d423" "j" /* <U0001D423> MATHEMATICAL BOLD SMALL J */
"\x0001d424" "k" /* <U0001D424> MATHEMATICAL BOLD SMALL K */
"\x0001d425" "l" /* <U0001D425> MATHEMATICAL BOLD SMALL L */
"\x0001d426" "m" /* <U0001D426> MATHEMATICAL BOLD SMALL M */
"\x0001d427" "n" /* <U0001D427> MATHEMATICAL BOLD SMALL N */
"\x0001d428" "o" /* <U0001D428> MATHEMATICAL BOLD SMALL O */
"\x0001d429" "p" /* <U0001D429> MATHEMATICAL BOLD SMALL P */
"\x0001d42a" "q" /* <U0001D42A> MATHEMATICAL BOLD SMALL Q */
"\x0001d42b" "r" /* <U0001D42B> MATHEMATICAL BOLD SMALL R */
"\x0001d42c" "s" /* <U0001D42C> MATHEMATICAL BOLD SMALL S */
"\x0001d42d" "t" /* <U0001D42D> MATHEMATICAL BOLD SMALL T */
"\x0001d42e" "u" /* <U0001D42E> MATHEMATICAL BOLD SMALL U */
"\x0001d42f" "v" /* <U0001D42F> MATHEMATICAL BOLD SMALL V */
"\x0001d430" "w" /* <U0001D430> MATHEMATICAL BOLD SMALL W */
"\x0001d431" "x" /* <U0001D431> MATHEMATICAL BOLD SMALL X */
"\x0001d432" "y" /* <U0001D432> MATHEMATICAL BOLD SMALL Y */
"\x0001d433" "z" /* <U0001D433> MATHEMATICAL BOLD SMALL Z */
"\x0001d434" "A" /* <U0001D434> MATHEMATICAL ITALIC CAPITAL A */
"\x0001d435" "B" /* <U0001D435> MATHEMATICAL ITALIC CAPITAL B */
"\x0001d436" "C" /* <U0001D436> MATHEMATICAL ITALIC CAPITAL C */
"\x0001d437" "D" /* <U0001D437> MATHEMATICAL ITALIC CAPITAL D */
"\x0001d438" "E" /* <U0001D438> MATHEMATICAL ITALIC CAPITAL E */
"\x0001d439" "F" /* <U0001D439> MATHEMATICAL ITALIC CAPITAL F */
"\x0001d43a" "G" /* <U0001D43A> MATHEMATICAL ITALIC CAPITAL G */
"\x0001d43b" "H" /* <U0001D43B> MATHEMATICAL ITALIC CAPITAL H */
"\x0001d43c" "I" /* <U0001D43C> MATHEMATICAL ITALIC CAPITAL I */
"\x0001d43d" "J" /* <U0001D43D> MATHEMATICAL ITALIC CAPITAL J */
"\x0001d43e" "K" /* <U0001D43E> MATHEMATICAL ITALIC CAPITAL K */
"\x0001d43f" "L" /* <U0001D43F> MATHEMATICAL ITALIC CAPITAL L */
"\x0001d440" "M" /* <U0001D440> MATHEMATICAL ITALIC CAPITAL M */
"\x0001d441" "N" /* <U0001D441> MATHEMATICAL ITALIC CAPITAL N */
"\x0001d442" "O" /* <U0001D442> MATHEMATICAL ITALIC CAPITAL O */
"\x0001d443" "P" /* <U0001D443> MATHEMATICAL ITALIC CAPITAL P */
"\x0001d444" "Q" /* <U0001D444> MATHEMATICAL ITALIC CAPITAL Q */
"\x0001d445" "R" /* <U0001D445> MATHEMATICAL ITALIC CAPITAL R */
"\x0001d446" "S" /* <U0001D446> MATHEMATICAL ITALIC CAPITAL S */
"\x0001d447" "T" /* <U0001D447> MATHEMATICAL ITALIC CAPITAL T */
"\x0001d448" "U" /* <U0001D448> MATHEMATICAL ITALIC CAPITAL U */
"\x0001d449" "V" /* <U0001D449> MATHEMATICAL ITALIC CAPITAL V */
"\x0001d44a" "W" /* <U0001D44A> MATHEMATICAL ITALIC CAPITAL W */
"\x0001d44b" "X" /* <U0001D44B> MATHEMATICAL ITALIC CAPITAL X */
"\x0001d44c" "Y" /* <U0001D44C> MATHEMATICAL ITALIC CAPITAL Y */
"\x0001d44d" "Z" /* <U0001D44D> MATHEMATICAL ITALIC CAPITAL Z */
"\x0001d44e" "a" /* <U0001D44E> MATHEMATICAL ITALIC SMALL A */
"\x0001d44f" "b" /* <U0001D44F> MATHEMATICAL ITALIC SMALL B */
"\x0001d450" "c" /* <U0001D450> MATHEMATICAL ITALIC SMALL C */
"\x0001d451" "d" /* <U0001D451> MATHEMATICAL ITALIC SMALL D */
"\x0001d452" "e" /* <U0001D452> MATHEMATICAL ITALIC SMALL E */
"\x0001d453" "f" /* <U0001D453> MATHEMATICAL ITALIC SMALL F */
"\x0001d454" "g" /* <U0001D454> MATHEMATICAL ITALIC SMALL G */
"\x0001d456" "i" /* <U0001D456> MATHEMATICAL ITALIC SMALL I */
"\x0001d457" "j" /* <U0001D457> MATHEMATICAL ITALIC SMALL J */
"\x0001d458" "k" /* <U0001D458> MATHEMATICAL ITALIC SMALL K */
"\x0001d459" "l" /* <U0001D459> MATHEMATICAL ITALIC SMALL L */
"\x0001d45a" "m" /* <U0001D45A> MATHEMATICAL ITALIC SMALL M */
"\x0001d45b" "n" /* <U0001D45B> MATHEMATICAL ITALIC SMALL N */
"\x0001d45c" "o" /* <U0001D45C> MATHEMATICAL ITALIC SMALL O */
"\x0001d45d" "p" /* <U0001D45D> MATHEMATICAL ITALIC SMALL P */
"\x0001d45e" "q" /* <U0001D45E> MATHEMATICAL ITALIC SMALL Q */
"\x0001d45f" "r" /* <U0001D45F> MATHEMATICAL ITALIC SMALL R */
"\x0001d460" "s" /* <U0001D460> MATHEMATICAL ITALIC SMALL S */
"\x0001d461" "t" /* <U0001D461> MATHEMATICAL ITALIC SMALL T */
"\x0001d462" "u" /* <U0001D462> MATHEMATICAL ITALIC SMALL U */
"\x0001d463" "v" /* <U0001D463> MATHEMATICAL ITALIC SMALL V */
"\x0001d464" "w" /* <U0001D464> MATHEMATICAL ITALIC SMALL W */
"\x0001d465" "x" /* <U0001D465> MATHEMATICAL ITALIC SMALL X */
"\x0001d466" "y" /* <U0001D466> MATHEMATICAL ITALIC SMALL Y */
"\x0001d467" "z" /* <U0001D467> MATHEMATICAL ITALIC SMALL Z */
"\x0001d468" "A" /* <U0001D468> MATHEMATICAL BOLD ITALIC CAPITAL A */
"\x0001d469" "B" /* <U0001D469> MATHEMATICAL BOLD ITALIC CAPITAL B */
"\x0001d46a" "C" /* <U0001D46A> MATHEMATICAL BOLD ITALIC CAPITAL C */
"\x0001d46b" "D" /* <U0001D46B> MATHEMATICAL BOLD ITALIC CAPITAL D */
"\x0001d46c" "E" /* <U0001D46C> MATHEMATICAL BOLD ITALIC CAPITAL E */
"\x0001d46d" "F" /* <U0001D46D> MATHEMATICAL BOLD ITALIC CAPITAL F */
"\x0001d46e" "G" /* <U0001D46E> MATHEMATICAL BOLD ITALIC CAPITAL G */
"\x0001d46f" "H" /* <U0001D46F> MATHEMATICAL BOLD ITALIC CAPITAL H */
"\x0001d470" "I" /* <U0001D470> MATHEMATICAL BOLD ITALIC CAPITAL I */
"\x0001d471" "J" /* <U0001D471> MATHEMATICAL BOLD ITALIC CAPITAL J */
"\x0001d472" "K" /* <U0001D472> MATHEMATICAL BOLD ITALIC CAPITAL K */
"\x0001d473" "L" /* <U0001D473> MATHEMATICAL BOLD ITALIC CAPITAL L */
"\x0001d474" "M" /* <U0001D474> MATHEMATICAL BOLD ITALIC CAPITAL M */
"\x0001d475" "N" /* <U0001D475> MATHEMATICAL BOLD ITALIC CAPITAL N */
"\x0001d476" "O" /* <U0001D476> MATHEMATICAL BOLD ITALIC CAPITAL O */
"\x0001d477" "P" /* <U0001D477> MATHEMATICAL BOLD ITALIC CAPITAL P */
"\x0001d478" "Q" /* <U0001D478> MATHEMATICAL BOLD ITALIC CAPITAL Q */
"\x0001d479" "R" /* <U0001D479> MATHEMATICAL BOLD ITALIC CAPITAL R */
"\x0001d47a" "S" /* <U0001D47A> MATHEMATICAL BOLD ITALIC CAPITAL S */
"\x0001d47b" "T" /* <U0001D47B> MATHEMATICAL BOLD ITALIC CAPITAL T */
"\x0001d47c" "U" /* <U0001D47C> MATHEMATICAL BOLD ITALIC CAPITAL U */
"\x0001d47d" "V" /* <U0001D47D> MATHEMATICAL BOLD ITALIC CAPITAL V */
"\x0001d47e" "W" /* <U0001D47E> MATHEMATICAL BOLD ITALIC CAPITAL W */
"\x0001d47f" "X" /* <U0001D47F> MATHEMATICAL BOLD ITALIC CAPITAL X */
"\x0001d480" "Y" /* <U0001D480> MATHEMATICAL BOLD ITALIC CAPITAL Y */
"\x0001d481" "Z" /* <U0001D481> MATHEMATICAL BOLD ITALIC CAPITAL Z */
"\x0001d482" "a" /* <U0001D482> MATHEMATICAL BOLD ITALIC SMALL A */
"\x0001d483" "b" /* <U0001D483> MATHEMATICAL BOLD ITALIC SMALL B */
"\x0001d484" "c" /* <U0001D484> MATHEMATICAL BOLD ITALIC SMALL C */
"\x0001d485" "d" /* <U0001D485> MATHEMATICAL BOLD ITALIC SMALL D */
"\x0001d486" "e" /* <U0001D486> MATHEMATICAL BOLD ITALIC SMALL E */
"\x0001d487" "f" /* <U0001D487> MATHEMATICAL BOLD ITALIC SMALL F */
"\x0001d488" "g" /* <U0001D488> MATHEMATICAL BOLD ITALIC SMALL G */
"\x0001d489" "h" /* <U0001D489> MATHEMATICAL BOLD ITALIC SMALL H */
"\x0001d48a" "i" /* <U0001D48A> MATHEMATICAL BOLD ITALIC SMALL I */
"\x0001d48b" "j" /* <U0001D48B> MATHEMATICAL BOLD ITALIC SMALL J */
"\x0001d48c" "k" /* <U0001D48C> MATHEMATICAL BOLD ITALIC SMALL K */
"\x0001d48d" "l" /* <U0001D48D> MATHEMATICAL BOLD ITALIC SMALL L */
"\x0001d48e" "m" /* <U0001D48E> MATHEMATICAL BOLD ITALIC SMALL M */
"\x0001d48f" "n" /* <U0001D48F> MATHEMATICAL BOLD ITALIC SMALL N */
"\x0001d490" "o" /* <U0001D490> MATHEMATICAL BOLD ITALIC SMALL O */
"\x0001d491" "p" /* <U0001D491> MATHEMATICAL BOLD ITALIC SMALL P */
"\x0001d492" "q" /* <U0001D492> MATHEMATICAL BOLD ITALIC SMALL Q */
"\x0001d493" "r" /* <U0001D493> MATHEMATICAL BOLD ITALIC SMALL R */
"\x0001d494" "s" /* <U0001D494> MATHEMATICAL BOLD ITALIC SMALL S */
"\x0001d495" "t" /* <U0001D495> MATHEMATICAL BOLD ITALIC SMALL T */
"\x0001d496" "u" /* <U0001D496> MATHEMATICAL BOLD ITALIC SMALL U */
"\x0001d497" "v" /* <U0001D497> MATHEMATICAL BOLD ITALIC SMALL V */
"\x0001d498" "w" /* <U0001D498> MATHEMATICAL BOLD ITALIC SMALL W */
"\x0001d499" "x" /* <U0001D499> MATHEMATICAL BOLD ITALIC SMALL X */
"\x0001d49a" "y" /* <U0001D49A> MATHEMATICAL BOLD ITALIC SMALL Y */
"\x0001d49b" "z" /* <U0001D49B> MATHEMATICAL BOLD ITALIC SMALL Z */
"\x0001d49c" "A" /* <U0001D49C> MATHEMATICAL SCRIPT CAPITAL A */
"\x0001d49e" "C" /* <U0001D49E> MATHEMATICAL SCRIPT CAPITAL C */
"\x0001d49f" "D" /* <U0001D49F> MATHEMATICAL SCRIPT CAPITAL D */
"\x0001d4a2" "G" /* <U0001D4A2> MATHEMATICAL SCRIPT CAPITAL G */
"\x0001d4a5" "J" /* <U0001D4A5> MATHEMATICAL SCRIPT CAPITAL J */
"\x0001d4a6" "K" /* <U0001D4A6> MATHEMATICAL SCRIPT CAPITAL K */
"\x0001d4a9" "N" /* <U0001D4A9> MATHEMATICAL SCRIPT CAPITAL N */
"\x0001d4aa" "O" /* <U0001D4AA> MATHEMATICAL SCRIPT CAPITAL O */
"\x0001d4ab" "P" /* <U0001D4AB> MATHEMATICAL SCRIPT CAPITAL P */
"\x0001d4ac" "Q" /* <U0001D4AC> MATHEMATICAL SCRIPT CAPITAL Q */
"\x0001d4ae" "S" /* <U0001D4AE> MATHEMATICAL SCRIPT CAPITAL S */
"\x0001d4af" "T" /* <U0001D4AF> MATHEMATICAL SCRIPT CAPITAL T */
"\x0001d4b0" "U" /* <U0001D4B0> MATHEMATICAL SCRIPT CAPITAL U */
"\x0001d4b1" "V" /* <U0001D4B1> MATHEMATICAL SCRIPT CAPITAL V */
"\x0001d4b2" "W" /* <U0001D4B2> MATHEMATICAL SCRIPT CAPITAL W */
"\x0001d4b3" "X" /* <U0001D4B3> MATHEMATICAL SCRIPT CAPITAL X */
"\x0001d4b4" "Y" /* <U0001D4B4> MATHEMATICAL SCRIPT CAPITAL Y */
"\x0001d4b5" "Z" /* <U0001D4B5> MATHEMATICAL SCRIPT CAPITAL Z */
"\x0001d4b6" "a" /* <U0001D4B6> MATHEMATICAL SCRIPT SMALL A */
"\x0001d4b7" "b" /* <U0001D4B7> MATHEMATICAL SCRIPT SMALL B */
"\x0001d4b8" "c" /* <U0001D4B8> MATHEMATICAL SCRIPT SMALL C */
"\x0001d4b9" "d" /* <U0001D4B9> MATHEMATICAL SCRIPT SMALL D */
"\x0001d4bb" "f" /* <U0001D4BB> MATHEMATICAL SCRIPT SMALL F */
"\x0001d4bd" "h" /* <U0001D4BD> MATHEMATICAL SCRIPT SMALL H */
"\x0001d4be" "i" /* <U0001D4BE> MATHEMATICAL SCRIPT SMALL I */
"\x0001d4bf" "j" /* <U0001D4BF> MATHEMATICAL SCRIPT SMALL J */
"\x0001d4c0" "k" /* <U0001D4C0> MATHEMATICAL SCRIPT SMALL K */
"\x0001d4c2" "m" /* <U0001D4C2> MATHEMATICAL SCRIPT SMALL M */
"\x0001d4c3" "n" /* <U0001D4C3> MATHEMATICAL SCRIPT SMALL N */
"\x0001d4c5" "p" /* <U0001D4C5> MATHEMATICAL SCRIPT SMALL P */
"\x0001d4c6" "q" /* <U0001D4C6> MATHEMATICAL SCRIPT SMALL Q */
"\x0001d4c7" "r" /* <U0001D4C7> MATHEMATICAL SCRIPT SMALL R */
"\x0001d4c8" "s" /* <U0001D4C8> MATHEMATICAL SCRIPT SMALL S */
"\x0001d4c9" "t" /* <U0001D4C9> MATHEMATICAL SCRIPT SMALL T */
"\x0001d4ca" "u" /* <U0001D4CA> MATHEMATICAL SCRIPT SMALL U */
"\x0001d4cb" "v" /* <U0001D4CB> MATHEMATICAL SCRIPT SMALL V */
"\x0001d4cc" "w" /* <U0001D4CC> MATHEMATICAL SCRIPT SMALL W */
"\x0001d4cd" "x" /* <U0001D4CD> MATHEMATICAL SCRIPT SMALL X */
"\x0001d4ce" "y" /* <U0001D4CE> MATHEMATICAL SCRIPT SMALL Y */
"\x0001d4cf" "z" /* <U0001D4CF> MATHEMATICAL SCRIPT SMALL Z */
"\x0001d4d0" "A" /* <U0001D4D0> MATHEMATICAL BOLD SCRIPT CAPITAL A */
"\x0001d4d1" "B" /* <U0001D4D1> MATHEMATICAL BOLD SCRIPT CAPITAL B */
"\x0001d4d2" "C" /* <U0001D4D2> MATHEMATICAL BOLD SCRIPT CAPITAL C */
"\x0001d4d3" "D" /* <U0001D4D3> MATHEMATICAL BOLD SCRIPT CAPITAL D */
"\x0001d4d4" "E" /* <U0001D4D4> MATHEMATICAL BOLD SCRIPT CAPITAL E */
"\x0001d4d5" "F" /* <U0001D4D5> MATHEMATICAL BOLD SCRIPT CAPITAL F */
"\x0001d4d6" "G" /* <U0001D4D6> MATHEMATICAL BOLD SCRIPT CAPITAL G */
"\x0001d4d7" "H" /* <U0001D4D7> MATHEMATICAL BOLD SCRIPT CAPITAL H */
"\x0001d4d8" "I" /* <U0001D4D8> MATHEMATICAL BOLD SCRIPT CAPITAL I */
"\x0001d4d9" "J" /* <U0001D4D9> MATHEMATICAL BOLD SCRIPT CAPITAL J */
"\x0001d4da" "K" /* <U0001D4DA> MATHEMATICAL BOLD SCRIPT CAPITAL K */
"\x0001d4db" "L" /* <U0001D4DB> MATHEMATICAL BOLD SCRIPT CAPITAL L */
"\x0001d4dc" "M" /* <U0001D4DC> MATHEMATICAL BOLD SCRIPT CAPITAL M */
"\x0001d4dd" "N" /* <U0001D4DD> MATHEMATICAL BOLD SCRIPT CAPITAL N */
"\x0001d4de" "O" /* <U0001D4DE> MATHEMATICAL BOLD SCRIPT CAPITAL O */
"\x0001d4df" "P" /* <U0001D4DF> MATHEMATICAL BOLD SCRIPT CAPITAL P */
"\x0001d4e0" "Q" /* <U0001D4E0> MATHEMATICAL BOLD SCRIPT CAPITAL Q */
"\x0001d4e1" "R" /* <U0001D4E1> MATHEMATICAL BOLD SCRIPT CAPITAL R */
"\x0001d4e2" "S" /* <U0001D4E2> MATHEMATICAL BOLD SCRIPT CAPITAL S */
"\x0001d4e3" "T" /* <U0001D4E3> MATHEMATICAL BOLD SCRIPT CAPITAL T */
"\x0001d4e4" "U" /* <U0001D4E4> MATHEMATICAL BOLD SCRIPT CAPITAL U */
"\x0001d4e5" "V" /* <U0001D4E5> MATHEMATICAL BOLD SCRIPT CAPITAL V */
"\x0001d4e6" "W" /* <U0001D4E6> MATHEMATICAL BOLD SCRIPT CAPITAL W */
"\x0001d4e7" "X" /* <U0001D4E7> MATHEMATICAL BOLD SCRIPT CAPITAL X */
"\x0001d4e8" "Y" /* <U0001D4E8> MATHEMATICAL BOLD SCRIPT CAPITAL Y */
"\x0001d4e9" "Z" /* <U0001D4E9> MATHEMATICAL BOLD SCRIPT CAPITAL Z */
"\x0001d4ea" "a" /* <U0001D4EA> MATHEMATICAL BOLD SCRIPT SMALL A */
"\x0001d4eb" "b" /* <U0001D4EB> MATHEMATICAL BOLD SCRIPT SMALL B */
"\x0001d4ec" "c" /* <U0001D4EC> MATHEMATICAL BOLD SCRIPT SMALL C */
"\x0001d4ed" "d" /* <U0001D4ED> MATHEMATICAL BOLD SCRIPT SMALL D */
"\x0001d4ee" "e" /* <U0001D4EE> MATHEMATICAL BOLD SCRIPT SMALL E */
"\x0001d4ef" "f" /* <U0001D4EF> MATHEMATICAL BOLD SCRIPT SMALL F */
"\x0001d4f0" "g" /* <U0001D4F0> MATHEMATICAL BOLD SCRIPT SMALL G */
"\x0001d4f1" "h" /* <U0001D4F1> MATHEMATICAL BOLD SCRIPT SMALL H */
"\x0001d4f2" "i" /* <U0001D4F2> MATHEMATICAL BOLD SCRIPT SMALL I */
"\x0001d4f3" "j" /* <U0001D4F3> MATHEMATICAL BOLD SCRIPT SMALL J */
"\x0001d4f4" "k" /* <U0001D4F4> MATHEMATICAL BOLD SCRIPT SMALL K */
"\x0001d4f5" "l" /* <U0001D4F5> MATHEMATICAL BOLD SCRIPT SMALL L */
"\x0001d4f6" "m" /* <U0001D4F6> MATHEMATICAL BOLD SCRIPT SMALL M */
"\x0001d4f7" "n" /* <U0001D4F7> MATHEMATICAL BOLD SCRIPT SMALL N */
"\x0001d4f8" "o" /* <U0001D4F8> MATHEMATICAL BOLD SCRIPT SMALL O */
"\x0001d4f9" "p" /* <U0001D4F9> MATHEMATICAL BOLD SCRIPT SMALL P */
"\x0001d4fa" "q" /* <U0001D4FA> MATHEMATICAL BOLD SCRIPT SMALL Q */
"\x0001d4fb" "r" /* <U0001D4FB> MATHEMATICAL BOLD SCRIPT SMALL R */
"\x0001d4fc" "s" /* <U0001D4FC> MATHEMATICAL BOLD SCRIPT SMALL S */
"\x0001d4fd" "t" /* <U0001D4FD> MATHEMATICAL BOLD SCRIPT SMALL T */
"\x0001d4fe" "u" /* <U0001D4FE> MATHEMATICAL BOLD SCRIPT SMALL U */
"\x0001d4ff" "v" /* <U0001D4FF> MATHEMATICAL BOLD SCRIPT SMALL V */
"\x0001d500" "w" /* <U0001D500> MATHEMATICAL BOLD SCRIPT SMALL W */
"\x0001d501" "x" /* <U0001D501> MATHEMATICAL BOLD SCRIPT SMALL X */
"\x0001d502" "y" /* <U0001D502> MATHEMATICAL BOLD SCRIPT SMALL Y */
"\x0001d503" "z" /* <U0001D503> MATHEMATICAL BOLD SCRIPT SMALL Z */
"\x0001d504" "A" /* <U0001D504> MATHEMATICAL FRAKTUR CAPITAL A */
"\x0001d505" "B" /* <U0001D505> MATHEMATICAL FRAKTUR CAPITAL B */
"\x0001d507" "D" /* <U0001D507> MATHEMATICAL FRAKTUR CAPITAL D */
"\x0001d508" "E" /* <U0001D508> MATHEMATICAL FRAKTUR CAPITAL E */
"\x0001d509" "F" /* <U0001D509> MATHEMATICAL FRAKTUR CAPITAL F */
"\x0001d50a" "G" /* <U0001D50A> MATHEMATICAL FRAKTUR CAPITAL G */
"\x0001d50d" "J" /* <U0001D50D> MATHEMATICAL FRAKTUR CAPITAL J */
"\x0001d50e" "K" /* <U0001D50E> MATHEMATICAL FRAKTUR CAPITAL K */
"\x0001d50f" "L" /* <U0001D50F> MATHEMATICAL FRAKTUR CAPITAL L */
"\x0001d510" "M" /* <U0001D510> MATHEMATICAL FRAKTUR CAPITAL M */
"\x0001d511" "N" /* <U0001D511> MATHEMATICAL FRAKTUR CAPITAL N */
"\x0001d512" "O" /* <U0001D512> MATHEMATICAL FRAKTUR CAPITAL O */
"\x0001d513" "P" /* <U0001D513> MATHEMATICAL FRAKTUR CAPITAL P */
"\x0001d514" "Q" /* <U0001D514> MATHEMATICAL FRAKTUR CAPITAL Q */
"\x0001d516" "S" /* <U0001D516> MATHEMATICAL FRAKTUR CAPITAL S */
"\x0001d517" "T" /* <U0001D517> MATHEMATICAL FRAKTUR CAPITAL T */
"\x0001d518" "U" /* <U0001D518> MATHEMATICAL FRAKTUR CAPITAL U */
"\x0001d519" "V" /* <U0001D519> MATHEMATICAL FRAKTUR CAPITAL V */
"\x0001d51a" "W" /* <U0001D51A> MATHEMATICAL FRAKTUR CAPITAL W */
"\x0001d51b" "X" /* <U0001D51B> MATHEMATICAL FRAKTUR CAPITAL X */
"\x0001d51c" "Y" /* <U0001D51C> MATHEMATICAL FRAKTUR CAPITAL Y */
"\x0001d51e" "a" /* <U0001D51E> MATHEMATICAL FRAKTUR SMALL A */
"\x0001d51f" "b" /* <U0001D51F> MATHEMATICAL FRAKTUR SMALL B */
"\x0001d520" "c" /* <U0001D520> MATHEMATICAL FRAKTUR SMALL C */
"\x0001d521" "d" /* <U0001D521> MATHEMATICAL FRAKTUR SMALL D */
"\x0001d522" "e" /* <U0001D522> MATHEMATICAL FRAKTUR SMALL E */
"\x0001d523" "f" /* <U0001D523> MATHEMATICAL FRAKTUR SMALL F */
"\x0001d524" "g" /* <U0001D524> MATHEMATICAL FRAKTUR SMALL G */
"\x0001d525" "h" /* <U0001D525> MATHEMATICAL FRAKTUR SMALL H */
"\x0001d526" "i" /* <U0001D526> MATHEMATICAL FRAKTUR SMALL I */
"\x0001d527" "j" /* <U0001D527> MATHEMATICAL FRAKTUR SMALL J */
"\x0001d528" "k" /* <U0001D528> MATHEMATICAL FRAKTUR SMALL K */
"\x0001d529" "l" /* <U0001D529> MATHEMATICAL FRAKTUR SMALL L */
"\x0001d52a" "m" /* <U0001D52A> MATHEMATICAL FRAKTUR SMALL M */
"\x0001d52b" "n" /* <U0001D52B> MATHEMATICAL FRAKTUR SMALL N */
"\x0001d52c" "o" /* <U0001D52C> MATHEMATICAL FRAKTUR SMALL O */
"\x0001d52d" "p" /* <U0001D52D> MATHEMATICAL FRAKTUR SMALL P */
"\x0001d52e" "q" /* <U0001D52E> MATHEMATICAL FRAKTUR SMALL Q */
"\x0001d52f" "r" /* <U0001D52F> MATHEMATICAL FRAKTUR SMALL R */
"\x0001d530" "s" /* <U0001D530> MATHEMATICAL FRAKTUR SMALL S */
"\x0001d531" "t" /* <U0001D531> MATHEMATICAL FRAKTUR SMALL T */
"\x0001d532" "u" /* <U0001D532> MATHEMATICAL FRAKTUR SMALL U */
"\x0001d533" "v" /* <U0001D533> MATHEMATICAL FRAKTUR SMALL V */
"\x0001d534" "w" /* <U0001D534> MATHEMATICAL FRAKTUR SMALL W */
"\x0001d535" "x" /* <U0001D535> MATHEMATICAL FRAKTUR SMALL X */
"\x0001d536" "y" /* <U0001D536> MATHEMATICAL FRAKTUR SMALL Y */
"\x0001d537" "z" /* <U0001D537> MATHEMATICAL FRAKTUR SMALL Z */
"\x0001d538" "A" /* <U0001D538> MATHEMATICAL DOUBLE-STRUCK CAPITAL A */
"\x0001d539" "B" /* <U0001D539> MATHEMATICAL DOUBLE-STRUCK CAPITAL B */
"\x0001d53b" "D" /* <U0001D53B> MATHEMATICAL DOUBLE-STRUCK CAPITAL D */
"\x0001d53c" "E" /* <U0001D53C> MATHEMATICAL DOUBLE-STRUCK CAPITAL E */
"\x0001d53d" "F" /* <U0001D53D> MATHEMATICAL DOUBLE-STRUCK CAPITAL F */
"\x0001d53e" "G" /* <U0001D53E> MATHEMATICAL DOUBLE-STRUCK CAPITAL G */
"\x0001d540" "I" /* <U0001D540> MATHEMATICAL DOUBLE-STRUCK CAPITAL I */
"\x0001d541" "J" /* <U0001D541> MATHEMATICAL DOUBLE-STRUCK CAPITAL J */
"\x0001d542" "K" /* <U0001D542> MATHEMATICAL DOUBLE-STRUCK CAPITAL K */
"\x0001d543" "L" /* <U0001D543> MATHEMATICAL DOUBLE-STRUCK CAPITAL L */
"\x0001d544" "M" /* <U0001D544> MATHEMATICAL DOUBLE-STRUCK CAPITAL M */
"\x0001d546" "O" /* <U0001D546> MATHEMATICAL DOUBLE-STRUCK CAPITAL O */
"\x0001d54a" "S" /* <U0001D54A> MATHEMATICAL DOUBLE-STRUCK CAPITAL S */
"\x0001d54b" "T" /* <U0001D54B> MATHEMATICAL DOUBLE-STRUCK CAPITAL T */
"\x0001d54c" "U" /* <U0001D54C> MATHEMATICAL DOUBLE-STRUCK CAPITAL U */
"\x0001d54d" "V" /* <U0001D54D> MATHEMATICAL DOUBLE-STRUCK CAPITAL V */
"\x0001d54e" "W" /* <U0001D54E> MATHEMATICAL DOUBLE-STRUCK CAPITAL W */
"\x0001d54f" "X" /* <U0001D54F> MATHEMATICAL DOUBLE-STRUCK CAPITAL X */
"\x0001d550" "Y" /* <U0001D550> MATHEMATICAL DOUBLE-STRUCK CAPITAL Y */
"\x0001d552" "a" /* <U0001D552> MATHEMATICAL DOUBLE-STRUCK SMALL A */
"\x0001d553" "b" /* <U0001D553> MATHEMATICAL DOUBLE-STRUCK SMALL B */
"\x0001d554" "c" /* <U0001D554> MATHEMATICAL DOUBLE-STRUCK SMALL C */
"\x0001d555" "d" /* <U0001D555> MATHEMATICAL DOUBLE-STRUCK SMALL D */
"\x0001d556" "e" /* <U0001D556> MATHEMATICAL DOUBLE-STRUCK SMALL E */
"\x0001d557" "f" /* <U0001D557> MATHEMATICAL DOUBLE-STRUCK SMALL F */
"\x0001d558" "g" /* <U0001D558> MATHEMATICAL DOUBLE-STRUCK SMALL G */
"\x0001d559" "h" /* <U0001D559> MATHEMATICAL DOUBLE-STRUCK SMALL H */
"\x0001d55a" "i" /* <U0001D55A> MATHEMATICAL DOUBLE-STRUCK SMALL I */
"\x0001d55b" "j" /* <U0001D55B> MATHEMATICAL DOUBLE-STRUCK SMALL J */
"\x0001d55c" "k" /* <U0001D55C> MATHEMATICAL DOUBLE-STRUCK SMALL K */
"\x0001d55d" "l" /* <U0001D55D> MATHEMATICAL DOUBLE-STRUCK SMALL L */
"\x0001d55e" "m" /* <U0001D55E> MATHEMATICAL DOUBLE-STRUCK SMALL M */
"\x0001d55f" "n" /* <U0001D55F> MATHEMATICAL DOUBLE-STRUCK SMALL N */
"\x0001d560" "o" /* <U0001D560> MATHEMATICAL DOUBLE-STRUCK SMALL O */
"\x0001d561" "p" /* <U0001D561> MATHEMATICAL DOUBLE-STRUCK SMALL P */
"\x0001d562" "q" /* <U0001D562> MATHEMATICAL DOUBLE-STRUCK SMALL Q */
"\x0001d563" "r" /* <U0001D563> MATHEMATICAL DOUBLE-STRUCK SMALL R */
"\x0001d564" "s" /* <U0001D564> MATHEMATICAL DOUBLE-STRUCK SMALL S */
"\x0001d565" "t" /* <U0001D565> MATHEMATICAL DOUBLE-STRUCK SMALL T */
"\x0001d566" "u" /* <U0001D566> MATHEMATICAL DOUBLE-STRUCK SMALL U */
"\x0001d567" "v" /* <U0001D567> MATHEMATICAL DOUBLE-STRUCK SMALL V */
"\x0001d568" "w" /* <U0001D568> MATHEMATICAL DOUBLE-STRUCK SMALL W */
"\x0001d569" "x" /* <U0001D569> MATHEMATICAL DOUBLE-STRUCK SMALL X */
"\x0001d56a" "y" /* <U0001D56A> MATHEMATICAL DOUBLE-STRUCK SMALL Y */
"\x0001d56b" "z" /* <U0001D56B> MATHEMATICAL DOUBLE-STRUCK SMALL Z */
"\x0001d56c" "A" /* <U0001D56C> MATHEMATICAL BOLD FRAKTUR CAPITAL A */
"\x0001d56d" "B" /* <U0001D56D> MATHEMATICAL BOLD FRAKTUR CAPITAL B */
"\x0001d56e" "C" /* <U0001D56E> MATHEMATICAL BOLD FRAKTUR CAPITAL C */
"\x0001d56f" "D" /* <U0001D56F> MATHEMATICAL BOLD FRAKTUR CAPITAL D */
"\x0001d570" "E" /* <U0001D570> MATHEMATICAL BOLD FRAKTUR CAPITAL E */
"\x0001d571" "F" /* <U0001D571> MATHEMATICAL BOLD FRAKTUR CAPITAL F */
"\x0001d572" "G" /* <U0001D572> MATHEMATICAL BOLD FRAKTUR CAPITAL G */
"\x0001d573" "H" /* <U0001D573> MATHEMATICAL BOLD FRAKTUR CAPITAL H */
"\x0001d574" "I" /* <U0001D574> MATHEMATICAL BOLD FRAKTUR CAPITAL I */
"\x0001d575" "J" /* <U0001D575> MATHEMATICAL BOLD FRAKTUR CAPITAL J */
"\x0001d576" "K" /* <U0001D576> MATHEMATICAL BOLD FRAKTUR CAPITAL K */
"\x0001d577" "L" /* <U0001D577> MATHEMATICAL BOLD FRAKTUR CAPITAL L */
"\x0001d578" "M" /* <U0001D578> MATHEMATICAL BOLD FRAKTUR CAPITAL M */
"\x0001d579" "N" /* <U0001D579> MATHEMATICAL BOLD FRAKTUR CAPITAL N */
"\x0001d57a" "O" /* <U0001D57A> MATHEMATICAL BOLD FRAKTUR CAPITAL O */
"\x0001d57b" "P" /* <U0001D57B> MATHEMATICAL BOLD FRAKTUR CAPITAL P */
"\x0001d57c" "Q" /* <U0001D57C> MATHEMATICAL BOLD FRAKTUR CAPITAL Q */
"\x0001d57d" "R" /* <U0001D57D> MATHEMATICAL BOLD FRAKTUR CAPITAL R */
"\x0001d57e" "S" /* <U0001D57E> MATHEMATICAL BOLD FRAKTUR CAPITAL S */
"\x0001d57f" "T" /* <U0001D57F> MATHEMATICAL BOLD FRAKTUR CAPITAL T */
"\x0001d580" "U" /* <U0001D580> MATHEMATICAL BOLD FRAKTUR CAPITAL U */
"\x0001d581" "V" /* <U0001D581> MATHEMATICAL BOLD FRAKTUR CAPITAL V */
"\x0001d582" "W" /* <U0001D582> MATHEMATICAL BOLD FRAKTUR CAPITAL W */
"\x0001d583" "X" /* <U0001D583> MATHEMATICAL BOLD FRAKTUR CAPITAL X */
"\x0001d584" "Y" /* <U0001D584> MATHEMATICAL BOLD FRAKTUR CAPITAL Y */
"\x0001d585" "Z" /* <U0001D585> MATHEMATICAL BOLD FRAKTUR CAPITAL Z */
"\x0001d586" "a" /* <U0001D586> MATHEMATICAL BOLD FRAKTUR SMALL A */
"\x0001d587" "b" /* <U0001D587> MATHEMATICAL BOLD FRAKTUR SMALL B */
"\x0001d588" "c" /* <U0001D588> MATHEMATICAL BOLD FRAKTUR SMALL C */
"\x0001d589" "d" /* <U0001D589> MATHEMATICAL BOLD FRAKTUR SMALL D */
"\x0001d58a" "e" /* <U0001D58A> MATHEMATICAL BOLD FRAKTUR SMALL E */
"\x0001d58b" "f" /* <U0001D58B> MATHEMATICAL BOLD FRAKTUR SMALL F */
"\x0001d58c" "g" /* <U0001D58C> MATHEMATICAL BOLD FRAKTUR SMALL G */
"\x0001d58d" "h" /* <U0001D58D> MATHEMATICAL BOLD FRAKTUR SMALL H */
"\x0001d58e" "i" /* <U0001D58E> MATHEMATICAL BOLD FRAKTUR SMALL I */
"\x0001d58f" "j" /* <U0001D58F> MATHEMATICAL BOLD FRAKTUR SMALL J */
"\x0001d590" "k" /* <U0001D590> MATHEMATICAL BOLD FRAKTUR SMALL K */
"\x0001d591" "l" /* <U0001D591> MATHEMATICAL BOLD FRAKTUR SMALL L */
"\x0001d592" "m" /* <U0001D592> MATHEMATICAL BOLD FRAKTUR SMALL M */
"\x0001d593" "n" /* <U0001D593> MATHEMATICAL BOLD FRAKTUR SMALL N */
"\x0001d594" "o" /* <U0001D594> MATHEMATICAL BOLD FRAKTUR SMALL O */
"\x0001d595" "p" /* <U0001D595> MATHEMATICAL BOLD FRAKTUR SMALL P */
"\x0001d596" "q" /* <U0001D596> MATHEMATICAL BOLD FRAKTUR SMALL Q */
"\x0001d597" "r" /* <U0001D597> MATHEMATICAL BOLD FRAKTUR SMALL R */
"\x0001d598" "s" /* <U0001D598> MATHEMATICAL BOLD FRAKTUR SMALL S */
"\x0001d599" "t" /* <U0001D599> MATHEMATICAL BOLD FRAKTUR SMALL T */
"\x0001d59a" "u" /* <U0001D59A> MATHEMATICAL BOLD FRAKTUR SMALL U */
"\x0001d59b" "v" /* <U0001D59B> MATHEMATICAL BOLD FRAKTUR SMALL V */
"\x0001d59c" "w" /* <U0001D59C> MATHEMATICAL BOLD FRAKTUR SMALL W */
"\x0001d59d" "x" /* <U0001D59D> MATHEMATICAL BOLD FRAKTUR SMALL X */
"\x0001d59e" "y" /* <U0001D59E> MATHEMATICAL BOLD FRAKTUR SMALL Y */
"\x0001d59f" "z" /* <U0001D59F> MATHEMATICAL BOLD FRAKTUR SMALL Z */
"\x0001d5a0" "A" /* <U0001D5A0> MATHEMATICAL SANS-SERIF CAPITAL A */
"\x0001d5a1" "B" /* <U0001D5A1> MATHEMATICAL SANS-SERIF CAPITAL B */
"\x0001d5a2" "C" /* <U0001D5A2> MATHEMATICAL SANS-SERIF CAPITAL C */
"\x0001d5a3" "D" /* <U0001D5A3> MATHEMATICAL SANS-SERIF CAPITAL D */
"\x0001d5a4" "E" /* <U0001D5A4> MATHEMATICAL SANS-SERIF CAPITAL E */
"\x0001d5a5" "F" /* <U0001D5A5> MATHEMATICAL SANS-SERIF CAPITAL F */
"\x0001d5a6" "G" /* <U0001D5A6> MATHEMATICAL SANS-SERIF CAPITAL G */
"\x0001d5a7" "H" /* <U0001D5A7> MATHEMATICAL SANS-SERIF CAPITAL H */
"\x0001d5a8" "I" /* <U0001D5A8> MATHEMATICAL SANS-SERIF CAPITAL I */
"\x0001d5a9" "J" /* <U0001D5A9> MATHEMATICAL SANS-SERIF CAPITAL J */
"\x0001d5aa" "K" /* <U0001D5AA> MATHEMATICAL SANS-SERIF CAPITAL K */
"\x0001d5ab" "L" /* <U0001D5AB> MATHEMATICAL SANS-SERIF CAPITAL L */
"\x0001d5ac" "M" /* <U0001D5AC> MATHEMATICAL SANS-SERIF CAPITAL M */
"\x0001d5ad" "N" /* <U0001D5AD> MATHEMATICAL SANS-SERIF CAPITAL N */
"\x0001d5ae" "O" /* <U0001D5AE> MATHEMATICAL SANS-SERIF CAPITAL O */
"\x0001d5af" "P" /* <U0001D5AF> MATHEMATICAL SANS-SERIF CAPITAL P */
"\x0001d5b0" "Q" /* <U0001D5B0> MATHEMATICAL SANS-SERIF CAPITAL Q */
"\x0001d5b1" "R" /* <U0001D5B1> MATHEMATICAL SANS-SERIF CAPITAL R */
"\x0001d5b2" "S" /* <U0001D5B2> MATHEMATICAL SANS-SERIF CAPITAL S */
"\x0001d5b3" "T" /* <U0001D5B3> MATHEMATICAL SANS-SERIF CAPITAL T */
"\x0001d5b4" "U" /* <U0001D5B4> MATHEMATICAL SANS-SERIF CAPITAL U */
"\x0001d5b5" "V" /* <U0001D5B5> MATHEMATICAL SANS-SERIF CAPITAL V */
"\x0001d5b6" "W" /* <U0001D5B6> MATHEMATICAL SANS-SERIF CAPITAL W */
"\x0001d5b7" "X" /* <U0001D5B7> MATHEMATICAL SANS-SERIF CAPITAL X */
"\x0001d5b8" "Y" /* <U0001D5B8> MATHEMATICAL SANS-SERIF CAPITAL Y */
"\x0001d5b9" "Z" /* <U0001D5B9> MATHEMATICAL SANS-SERIF CAPITAL Z */
"\x0001d5ba" "a" /* <U0001D5BA> MATHEMATICAL SANS-SERIF SMALL A */
"\x0001d5bb" "b" /* <U0001D5BB> MATHEMATICAL SANS-SERIF SMALL B */
"\x0001d5bc" "c" /* <U0001D5BC> MATHEMATICAL SANS-SERIF SMALL C */
"\x0001d5bd" "d" /* <U0001D5BD> MATHEMATICAL SANS-SERIF SMALL D */
"\x0001d5be" "e" /* <U0001D5BE> MATHEMATICAL SANS-SERIF SMALL E */
"\x0001d5bf" "f" /* <U0001D5BF> MATHEMATICAL SANS-SERIF SMALL F */
"\x0001d5c0" "g" /* <U0001D5C0> MATHEMATICAL SANS-SERIF SMALL G */
"\x0001d5c1" "h" /* <U0001D5C1> MATHEMATICAL SANS-SERIF SMALL H */
"\x0001d5c2" "i" /* <U0001D5C2> MATHEMATICAL SANS-SERIF SMALL I */
"\x0001d5c3" "j" /* <U0001D5C3> MATHEMATICAL SANS-SERIF SMALL J */
"\x0001d5c4" "k" /* <U0001D5C4> MATHEMATICAL SANS-SERIF SMALL K */
"\x0001d5c5" "l" /* <U0001D5C5> MATHEMATICAL SANS-SERIF SMALL L */
"\x0001d5c6" "m" /* <U0001D5C6> MATHEMATICAL SANS-SERIF SMALL M */
"\x0001d5c7" "n" /* <U0001D5C7> MATHEMATICAL SANS-SERIF SMALL N */
"\x0001d5c8" "o" /* <U0001D5C8> MATHEMATICAL SANS-SERIF SMALL O */
"\x0001d5c9" "p" /* <U0001D5C9> MATHEMATICAL SANS-SERIF SMALL P */
"\x0001d5ca" "q" /* <U0001D5CA> MATHEMATICAL SANS-SERIF SMALL Q */
"\x0001d5cb" "r" /* <U0001D5CB> MATHEMATICAL SANS-SERIF SMALL R */
"\x0001d5cc" "s" /* <U0001D5CC> MATHEMATICAL SANS-SERIF SMALL S */
"\x0001d5cd" "t" /* <U0001D5CD> MATHEMATICAL SANS-SERIF SMALL T */
"\x0001d5ce" "u" /* <U0001D5CE> MATHEMATICAL SANS-SERIF SMALL U */
"\x0001d5cf" "v" /* <U0001D5CF> MATHEMATICAL SANS-SERIF SMALL V */
"\x0001d5d0" "w" /* <U0001D5D0> MATHEMATICAL SANS-SERIF SMALL W */
"\x0001d5d1" "x" /* <U0001D5D1> MATHEMATICAL SANS-SERIF SMALL X */
"\x0001d5d2" "y" /* <U0001D5D2> MATHEMATICAL SANS-SERIF SMALL Y */
"\x0001d5d3" "z" /* <U0001D5D3> MATHEMATICAL SANS-SERIF SMALL Z */
"\x0001d5d4" "A" /* <U0001D5D4> MATHEMATICAL SANS-SERIF BOLD CAPITAL A */
"\x0001d5d5" "B" /* <U0001D5D5> MATHEMATICAL SANS-SERIF BOLD CAPITAL B */
"\x0001d5d6" "C" /* <U0001D5D6> MATHEMATICAL SANS-SERIF BOLD CAPITAL C */
"\x0001d5d7" "D" /* <U0001D5D7> MATHEMATICAL SANS-SERIF BOLD CAPITAL D */
"\x0001d5d8" "E" /* <U0001D5D8> MATHEMATICAL SANS-SERIF BOLD CAPITAL E */
"\x0001d5d9" "F" /* <U0001D5D9> MATHEMATICAL SANS-SERIF BOLD CAPITAL F */
"\x0001d5da" "G" /* <U0001D5DA> MATHEMATICAL SANS-SERIF BOLD CAPITAL G */
"\x0001d5db" "H" /* <U0001D5DB> MATHEMATICAL SANS-SERIF BOLD CAPITAL H */
"\x0001d5dc" "I" /* <U0001D5DC> MATHEMATICAL SANS-SERIF BOLD CAPITAL I */
"\x0001d5dd" "J" /* <U0001D5DD> MATHEMATICAL SANS-SERIF BOLD CAPITAL J */
"\x0001d5de" "K" /* <U0001D5DE> MATHEMATICAL SANS-SERIF BOLD CAPITAL K */
"\x0001d5df" "L" /* <U0001D5DF> MATHEMATICAL SANS-SERIF BOLD CAPITAL L */
"\x0001d5e0" "M" /* <U0001D5E0> MATHEMATICAL SANS-SERIF BOLD CAPITAL M */
"\x0001d5e1" "N" /* <U0001D5E1> MATHEMATICAL SANS-SERIF BOLD CAPITAL N */
"\x0001d5e2" "O" /* <U0001D5E2> MATHEMATICAL SANS-SERIF BOLD CAPITAL O */
"\x0001d5e3" "P" /* <U0001D5E3> MATHEMATICAL SANS-SERIF BOLD CAPITAL P */
"\x0001d5e4" "Q" /* <U0001D5E4> MATHEMATICAL SANS-SERIF BOLD CAPITAL Q */
"\x0001d5e5" "R" /* <U0001D5E5> MATHEMATICAL SANS-SERIF BOLD CAPITAL R */
"\x0001d5e6" "S" /* <U0001D5E6> MATHEMATICAL SANS-SERIF BOLD CAPITAL S */
"\x0001d5e7" "T" /* <U0001D5E7> MATHEMATICAL SANS-SERIF BOLD CAPITAL T */
"\x0001d5e8" "U" /* <U0001D5E8> MATHEMATICAL SANS-SERIF BOLD CAPITAL U */
"\x0001d5e9" "V" /* <U0001D5E9> MATHEMATICAL SANS-SERIF BOLD CAPITAL V */
"\x0001d5ea" "W" /* <U0001D5EA> MATHEMATICAL SANS-SERIF BOLD CAPITAL W */
"\x0001d5eb" "X" /* <U0001D5EB> MATHEMATICAL SANS-SERIF BOLD CAPITAL X */
"\x0001d5ec" "Y" /* <U0001D5EC> MATHEMATICAL SANS-SERIF BOLD CAPITAL Y */
"\x0001d5ed" "Z" /* <U0001D5ED> MATHEMATICAL SANS-SERIF BOLD CAPITAL Z */
"\x0001d5ee" "a" /* <U0001D5EE> MATHEMATICAL SANS-SERIF BOLD SMALL A */
"\x0001d5ef" "b" /* <U0001D5EF> MATHEMATICAL SANS-SERIF BOLD SMALL B */
"\x0001d5f0" "c" /* <U0001D5F0> MATHEMATICAL SANS-SERIF BOLD SMALL C */
"\x0001d5f1" "d" /* <U0001D5F1> MATHEMATICAL SANS-SERIF BOLD SMALL D */
"\x0001d5f2" "e" /* <U0001D5F2> MATHEMATICAL SANS-SERIF BOLD SMALL E */
"\x0001d5f3" "f" /* <U0001D5F3> MATHEMATICAL SANS-SERIF BOLD SMALL F */
"\x0001d5f4" "g" /* <U0001D5F4> MATHEMATICAL SANS-SERIF BOLD SMALL G */
"\x0001d5f5" "h" /* <U0001D5F5> MATHEMATICAL SANS-SERIF BOLD SMALL H */
"\x0001d5f6" "i" /* <U0001D5F6> MATHEMATICAL SANS-SERIF BOLD SMALL I */
"\x0001d5f7" "j" /* <U0001D5F7> MATHEMATICAL SANS-SERIF BOLD SMALL J */
"\x0001d5f8" "k" /* <U0001D5F8> MATHEMATICAL SANS-SERIF BOLD SMALL K */
"\x0001d5f9" "l" /* <U0001D5F9> MATHEMATICAL SANS-SERIF BOLD SMALL L */
"\x0001d5fa" "m" /* <U0001D5FA> MATHEMATICAL SANS-SERIF BOLD SMALL M */
"\x0001d5fb" "n" /* <U0001D5FB> MATHEMATICAL SANS-SERIF BOLD SMALL N */
"\x0001d5fc" "o" /* <U0001D5FC> MATHEMATICAL SANS-SERIF BOLD SMALL O */
"\x0001d5fd" "p" /* <U0001D5FD> MATHEMATICAL SANS-SERIF BOLD SMALL P */
"\x0001d5fe" "q" /* <U0001D5FE> MATHEMATICAL SANS-SERIF BOLD SMALL Q */
"\x0001d5ff" "r" /* <U0001D5FF> MATHEMATICAL SANS-SERIF BOLD SMALL R */
"\x0001d600" "s" /* <U0001D600> MATHEMATICAL SANS-SERIF BOLD SMALL S */
"\x0001d601" "t" /* <U0001D601> MATHEMATICAL SANS-SERIF BOLD SMALL T */
"\x0001d602" "u" /* <U0001D602> MATHEMATICAL SANS-SERIF BOLD SMALL U */
"\x0001d603" "v" /* <U0001D603> MATHEMATICAL SANS-SERIF BOLD SMALL V */
"\x0001d604" "w" /* <U0001D604> MATHEMATICAL SANS-SERIF BOLD SMALL W */
"\x0001d605" "x" /* <U0001D605> MATHEMATICAL SANS-SERIF BOLD SMALL X */
"\x0001d606" "y" /* <U0001D606> MATHEMATICAL SANS-SERIF BOLD SMALL Y */
"\x0001d607" "z" /* <U0001D607> MATHEMATICAL SANS-SERIF BOLD SMALL Z */
"\x0001d608" "A" /* <U0001D608> MATHEMATICAL SANS-SERIF ITALIC CAPITAL A */
"\x0001d609" "B" /* <U0001D609> MATHEMATICAL SANS-SERIF ITALIC CAPITAL B */
"\x0001d60a" "C" /* <U0001D60A> MATHEMATICAL SANS-SERIF ITALIC CAPITAL C */
"\x0001d60b" "D" /* <U0001D60B> MATHEMATICAL SANS-SERIF ITALIC CAPITAL D */
"\x0001d60c" "E" /* <U0001D60C> MATHEMATICAL SANS-SERIF ITALIC CAPITAL E */
"\x0001d60d" "F" /* <U0001D60D> MATHEMATICAL SANS-SERIF ITALIC CAPITAL F */
"\x0001d60e" "G" /* <U0001D60E> MATHEMATICAL SANS-SERIF ITALIC CAPITAL G */
"\x0001d60f" "H" /* <U0001D60F> MATHEMATICAL SANS-SERIF ITALIC CAPITAL H */
"\x0001d610" "I" /* <U0001D610> MATHEMATICAL SANS-SERIF ITALIC CAPITAL I */
"\x0001d611" "J" /* <U0001D611> MATHEMATICAL SANS-SERIF ITALIC CAPITAL J */
"\x0001d612" "K" /* <U0001D612> MATHEMATICAL SANS-SERIF ITALIC CAPITAL K */
"\x0001d613" "L" /* <U0001D613> MATHEMATICAL SANS-SERIF ITALIC CAPITAL L */
"\x0001d614" "M" /* <U0001D614> MATHEMATICAL SANS-SERIF ITALIC CAPITAL M */
"\x0001d615" "N" /* <U0001D615> MATHEMATICAL SANS-SERIF ITALIC CAPITAL N */
"\x0001d616" "O" /* <U0001D616> MATHEMATICAL SANS-SERIF ITALIC CAPITAL O */
"\x0001d617" "P" /* <U0001D617> MATHEMATICAL SANS-SERIF ITALIC CAPITAL P */
"\x0001d618" "Q" /* <U0001D618> MATHEMATICAL SANS-SERIF ITALIC CAPITAL Q */
"\x0001d619" "R" /* <U0001D619> MATHEMATICAL SANS-SERIF ITALIC CAPITAL R */
"\x0001d61a" "S" /* <U0001D61A> MATHEMATICAL SANS-SERIF ITALIC CAPITAL S */
"\x0001d61b" "T" /* <U0001D61B> MATHEMATICAL SANS-SERIF ITALIC CAPITAL T */
"\x0001d61c" "U" /* <U0001D61C> MATHEMATICAL SANS-SERIF ITALIC CAPITAL U */
"\x0001d61d" "V" /* <U0001D61D> MATHEMATICAL SANS-SERIF ITALIC CAPITAL V */
"\x0001d61e" "W" /* <U0001D61E> MATHEMATICAL SANS-SERIF ITALIC CAPITAL W */
"\x0001d61f" "X" /* <U0001D61F> MATHEMATICAL SANS-SERIF ITALIC CAPITAL X */
"\x0001d620" "Y" /* <U0001D620> MATHEMATICAL SANS-SERIF ITALIC CAPITAL Y */
"\x0001d621" "Z" /* <U0001D621> MATHEMATICAL SANS-SERIF ITALIC CAPITAL Z */
"\x0001d622" "a" /* <U0001D622> MATHEMATICAL SANS-SERIF ITALIC SMALL A */
"\x0001d623" "b" /* <U0001D623> MATHEMATICAL SANS-SERIF ITALIC SMALL B */
"\x0001d624" "c" /* <U0001D624> MATHEMATICAL SANS-SERIF ITALIC SMALL C */
"\x0001d625" "d" /* <U0001D625> MATHEMATICAL SANS-SERIF ITALIC SMALL D */
"\x0001d626" "e" /* <U0001D626> MATHEMATICAL SANS-SERIF ITALIC SMALL E */
"\x0001d627" "f" /* <U0001D627> MATHEMATICAL SANS-SERIF ITALIC SMALL F */
"\x0001d628" "g" /* <U0001D628> MATHEMATICAL SANS-SERIF ITALIC SMALL G */
"\x0001d629" "h" /* <U0001D629> MATHEMATICAL SANS-SERIF ITALIC SMALL H */
"\x0001d62a" "i" /* <U0001D62A> MATHEMATICAL SANS-SERIF ITALIC SMALL I */
"\x0001d62b" "j" /* <U0001D62B> MATHEMATICAL SANS-SERIF ITALIC SMALL J */
"\x0001d62c" "k" /* <U0001D62C> MATHEMATICAL SANS-SERIF ITALIC SMALL K */
"\x0001d62d" "l" /* <U0001D62D> MATHEMATICAL SANS-SERIF ITALIC SMALL L */
"\x0001d62e" "m" /* <U0001D62E> MATHEMATICAL SANS-SERIF ITALIC SMALL M */
"\x0001d62f" "n" /* <U0001D62F> MATHEMATICAL SANS-SERIF ITALIC SMALL N */
"\x0001d630" "o" /* <U0001D630> MATHEMATICAL SANS-SERIF ITALIC SMALL O */
"\x0001d631" "p" /* <U0001D631> MATHEMATICAL SANS-SERIF ITALIC SMALL P */
"\x0001d632" "q" /* <U0001D632> MATHEMATICAL SANS-SERIF ITALIC SMALL Q */
"\x0001d633" "r" /* <U0001D633> MATHEMATICAL SANS-SERIF ITALIC SMALL R */
"\x0001d634" "s" /* <U0001D634> MATHEMATICAL SANS-SERIF ITALIC SMALL S */
"\x0001d635" "t" /* <U0001D635> MATHEMATICAL SANS-SERIF ITALIC SMALL T */
"\x0001d636" "u" /* <U0001D636> MATHEMATICAL SANS-SERIF ITALIC SMALL U */
"\x0001d637" "v" /* <U0001D637> MATHEMATICAL SANS-SERIF ITALIC SMALL V */
"\x0001d638" "w" /* <U0001D638> MATHEMATICAL SANS-SERIF ITALIC SMALL W */
"\x0001d639" "x" /* <U0001D639> MATHEMATICAL SANS-SERIF ITALIC SMALL X */
"\x0001d63a" "y" /* <U0001D63A> MATHEMATICAL SANS-SERIF ITALIC SMALL Y */
"\x0001d63b" "z" /* <U0001D63B> MATHEMATICAL SANS-SERIF ITALIC SMALL Z */
"\x0001d63c" "A" /* <U0001D63C> MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL A */
"\x0001d63d" "B" /* <U0001D63D> MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL B */
"\x0001d63e" "C" /* <U0001D63E> MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL C */
"\x0001d63f" "D" /* <U0001D63F> MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL D */
"\x0001d640" "E" /* <U0001D640> MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL E */
"\x0001d641" "F" /* <U0001D641> MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL F */
"\x0001d642" "G" /* <U0001D642> MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL G */
"\x0001d643" "H" /* <U0001D643> MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL H */
"\x0001d644" "I" /* <U0001D644> MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL I */
"\x0001d645" "J" /* <U0001D645> MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL J */
"\x0001d646" "K" /* <U0001D646> MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL K */
"\x0001d647" "L" /* <U0001D647> MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL L */
"\x0001d648" "M" /* <U0001D648> MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL M */
"\x0001d649" "N" /* <U0001D649> MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL N */
"\x0001d64a" "O" /* <U0001D64A> MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL O */
"\x0001d64b" "P" /* <U0001D64B> MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL P */
"\x0001d64c" "Q" /* <U0001D64C> MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL Q */
"\x0001d64d" "R" /* <U0001D64D> MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL R */
"\x0001d64e" "S" /* <U0001D64E> MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL S */
"\x0001d64f" "T" /* <U0001D64F> MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL T */
"\x0001d650" "U" /* <U0001D650> MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL U */
"\x0001d651" "V" /* <U0001D651> MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL V */
"\x0001d652" "W" /* <U0001D652> MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL W */
"\x0001d653" "X" /* <U0001D653> MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL X */
"\x0001d654" "Y" /* <U0001D654> MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL Y */
"\x0001d655" "Z" /* <U0001D655> MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL Z */
"\x0001d656" "a" /* <U0001D656> MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL A */
"\x0001d657" "b" /* <U0001D657> MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL B */
"\x0001d658" "c" /* <U0001D658> MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL C */
"\x0001d659" "d" /* <U0001D659> MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL D */
"\x0001d65a" "e" /* <U0001D65A> MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL E */
"\x0001d65b" "f" /* <U0001D65B> MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL F */
"\x0001d65c" "g" /* <U0001D65C> MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL G */
"\x0001d65d" "h" /* <U0001D65D> MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL H */
"\x0001d65e" "i" /* <U0001D65E> MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL I */
"\x0001d65f" "j" /* <U0001D65F> MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL J */
"\x0001d660" "k" /* <U0001D660> MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL K */
"\x0001d661" "l" /* <U0001D661> MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL L */
"\x0001d662" "m" /* <U0001D662> MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL M */
"\x0001d663" "n" /* <U0001D663> MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL N */
"\x0001d664" "o" /* <U0001D664> MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL O */
"\x0001d665" "p" /* <U0001D665> MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL P */
"\x0001d666" "q" /* <U0001D666> MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL Q */
"\x0001d667" "r" /* <U0001D667> MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL R */
"\x0001d668" "s" /* <U0001D668> MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL S */
"\x0001d669" "t" /* <U0001D669> MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL T */
"\x0001d66a" "u" /* <U0001D66A> MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL U */
"\x0001d66b" "v" /* <U0001D66B> MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL V */
"\x0001d66c" "w" /* <U0001D66C> MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL W */
"\x0001d66d" "x" /* <U0001D66D> MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL X */
"\x0001d66e" "y" /* <U0001D66E> MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL Y */
"\x0001d66f" "z" /* <U0001D66F> MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL Z */
"\x0001d670" "A" /* <U0001D670> MATHEMATICAL MONOSPACE CAPITAL A */
"\x0001d671" "B" /* <U0001D671> MATHEMATICAL MONOSPACE CAPITAL B */
"\x0001d672" "C" /* <U0001D672> MATHEMATICAL MONOSPACE CAPITAL C */
"\x0001d673" "D" /* <U0001D673> MATHEMATICAL MONOSPACE CAPITAL D */
"\x0001d674" "E" /* <U0001D674> MATHEMATICAL MONOSPACE CAPITAL E */
"\x0001d675" "F" /* <U0001D675> MATHEMATICAL MONOSPACE CAPITAL F */
"\x0001d676" "G" /* <U0001D676> MATHEMATICAL MONOSPACE CAPITAL G */
"\x0001d677" "H" /* <U0001D677> MATHEMATICAL MONOSPACE CAPITAL H */
"\x0001d678" "I" /* <U0001D678> MATHEMATICAL MONOSPACE CAPITAL I */
"\x0001d679" "J" /* <U0001D679> MATHEMATICAL MONOSPACE CAPITAL J */
"\x0001d67a" "K" /* <U0001D67A> MATHEMATICAL MONOSPACE CAPITAL K */
"\x0001d67b" "L" /* <U0001D67B> MATHEMATICAL MONOSPACE CAPITAL L */
"\x0001d67c" "M" /* <U0001D67C> MATHEMATICAL MONOSPACE CAPITAL M */
"\x0001d67d" "N" /* <U0001D67D> MATHEMATICAL MONOSPACE CAPITAL N */
"\x0001d67e" "O" /* <U0001D67E> MATHEMATICAL MONOSPACE CAPITAL O */
"\x0001d67f" "P" /* <U0001D67F> MATHEMATICAL MONOSPACE CAPITAL P */
"\x0001d680" "Q" /* <U0001D680> MATHEMATICAL MONOSPACE CAPITAL Q */
"\x0001d681" "R" /* <U0001D681> MATHEMATICAL MONOSPACE CAPITAL R */
"\x0001d682" "S" /* <U0001D682> MATHEMATICAL MONOSPACE CAPITAL S */
"\x0001d683" "T" /* <U0001D683> MATHEMATICAL MONOSPACE CAPITAL T */
"\x0001d684" "U" /* <U0001D684> MATHEMATICAL MONOSPACE CAPITAL U */
"\x0001d685" "V" /* <U0001D685> MATHEMATICAL MONOSPACE CAPITAL V */
"\x0001d686" "W" /* <U0001D686> MATHEMATICAL MONOSPACE CAPITAL W */
"\x0001d687" "X" /* <U0001D687> MATHEMATICAL MONOSPACE CAPITAL X */
"\x0001d688" "Y" /* <U0001D688> MATHEMATICAL MONOSPACE CAPITAL Y */
"\x0001d689" "Z" /* <U0001D689> MATHEMATICAL MONOSPACE CAPITAL Z */
"\x0001d68a" "a" /* <U0001D68A> MATHEMATICAL MONOSPACE SMALL A */
"\x0001d68b" "b" /* <U0001D68B> MATHEMATICAL MONOSPACE SMALL B */
"\x0001d68c" "c" /* <U0001D68C> MATHEMATICAL MONOSPACE SMALL C */
"\x0001d68d" "d" /* <U0001D68D> MATHEMATICAL MONOSPACE SMALL D */
"\x0001d68e" "e" /* <U0001D68E> MATHEMATICAL MONOSPACE SMALL E */
"\x0001d68f" "f" /* <U0001D68F> MATHEMATICAL MONOSPACE SMALL F */
"\x0001d690" "g" /* <U0001D690> MATHEMATICAL MONOSPACE SMALL G */
"\x0001d691" "h" /* <U0001D691> MATHEMATICAL MONOSPACE SMALL H */
"\x0001d692" "i" /* <U0001D692> MATHEMATICAL MONOSPACE SMALL I */
"\x0001d693" "j" /* <U0001D693> MATHEMATICAL MONOSPACE SMALL J */
"\x0001d694" "k" /* <U0001D694> MATHEMATICAL MONOSPACE SMALL K */
"\x0001d695" "l" /* <U0001D695> MATHEMATICAL MONOSPACE SMALL L */
"\x0001d696" "m" /* <U0001D696> MATHEMATICAL MONOSPACE SMALL M */
"\x0001d697" "n" /* <U0001D697> MATHEMATICAL MONOSPACE SMALL N */
"\x0001d698" "o" /* <U0001D698> MATHEMATICAL MONOSPACE SMALL O */
"\x0001d699" "p" /* <U0001D699> MATHEMATICAL MONOSPACE SMALL P */
"\x0001d69a" "q" /* <U0001D69A> MATHEMATICAL MONOSPACE SMALL Q */
"\x0001d69b" "r" /* <U0001D69B> MATHEMATICAL MONOSPACE SMALL R */
"\x0001d69c" "s" /* <U0001D69C> MATHEMATICAL MONOSPACE SMALL S */
"\x0001d69d" "t" /* <U0001D69D> MATHEMATICAL MONOSPACE SMALL T */
"\x0001d69e" "u" /* <U0001D69E> MATHEMATICAL MONOSPACE SMALL U */
"\x0001d69f" "v" /* <U0001D69F> MATHEMATICAL MONOSPACE SMALL V */
"\x0001d6a0" "w" /* <U0001D6A0> MATHEMATICAL MONOSPACE SMALL W */
"\x0001d6a1" "x" /* <U0001D6A1> MATHEMATICAL MONOSPACE SMALL X */
"\x0001d6a2" "y" /* <U0001D6A2> MATHEMATICAL MONOSPACE SMALL Y */
"\x0001d6a3" "z" /* <U0001D6A3> MATHEMATICAL MONOSPACE SMALL Z */
"\x0001d7ce" "0" /* <U0001D7CE> MATHEMATICAL BOLD DIGIT ZERO */
"\x0001d7cf" "1" /* <U0001D7CF> MATHEMATICAL BOLD DIGIT ONE */
"\x0001d7d0" "2" /* <U0001D7D0> MATHEMATICAL BOLD DIGIT TWO */
"\x0001d7d1" "3" /* <U0001D7D1> MATHEMATICAL BOLD DIGIT THREE */
"\x0001d7d2" "4" /* <U0001D7D2> MATHEMATICAL BOLD DIGIT FOUR */
"\x0001d7d3" "5" /* <U0001D7D3> MATHEMATICAL BOLD DIGIT FIVE */
"\x0001d7d4" "6" /* <U0001D7D4> MATHEMATICAL BOLD DIGIT SIX */
"\x0001d7d5" "7" /* <U0001D7D5> MATHEMATICAL BOLD DIGIT SEVEN */
"\x0001d7d6" "8" /* <U0001D7D6> MATHEMATICAL BOLD DIGIT EIGHT */
"\x0001d7d7" "9" /* <U0001D7D7> MATHEMATICAL BOLD DIGIT NINE */
"\x0001d7d8" "0" /* <U0001D7D8> MATHEMATICAL DOUBLE-STRUCK DIGIT ZERO */
"\x0001d7d9" "1" /* <U0001D7D9> MATHEMATICAL DOUBLE-STRUCK DIGIT ONE */
"\x0001d7da" "2" /* <U0001D7DA> MATHEMATICAL DOUBLE-STRUCK DIGIT TWO */
"\x0001d7db" "3" /* <U0001D7DB> MATHEMATICAL DOUBLE-STRUCK DIGIT THREE */
"\x0001d7dc" "4" /* <U0001D7DC> MATHEMATICAL DOUBLE-STRUCK DIGIT FOUR */
"\x0001d7dd" "5" /* <U0001D7DD> MATHEMATICAL DOUBLE-STRUCK DIGIT FIVE */
"\x0001d7de" "6" /* <U0001D7DE> MATHEMATICAL DOUBLE-STRUCK DIGIT SIX */
"\x0001d7df" "7" /* <U0001D7DF> MATHEMATICAL DOUBLE-STRUCK DIGIT SEVEN */
"\x0001d7e0" "8" /* <U0001D7E0> MATHEMATICAL DOUBLE-STRUCK DIGIT EIGHT */
"\x0001d7e1" "9" /* <U0001D7E1> MATHEMATICAL DOUBLE-STRUCK DIGIT NINE */
"\x0001d7e2" "0" /* <U0001D7E2> MATHEMATICAL SANS-SERIF DIGIT ZERO */
"\x0001d7e3" "1" /* <U0001D7E3> MATHEMATICAL SANS-SERIF DIGIT ONE */
"\x0001d7e4" "2" /* <U0001D7E4> MATHEMATICAL SANS-SERIF DIGIT TWO */
"\x0001d7e5" "3" /* <U0001D7E5> MATHEMATICAL SANS-SERIF DIGIT THREE */
"\x0001d7e6" "4" /* <U0001D7E6> MATHEMATICAL SANS-SERIF DIGIT FOUR */
"\x0001d7e7" "5" /* <U0001D7E7> MATHEMATICAL SANS-SERIF DIGIT FIVE */
"\x0001d7e8" "6" /* <U0001D7E8> MATHEMATICAL SANS-SERIF DIGIT SIX */
"\x0001d7e9" "7" /* <U0001D7E9> MATHEMATICAL SANS-SERIF DIGIT SEVEN */
"\x0001d7ea" "8" /* <U0001D7EA> MATHEMATICAL SANS-SERIF DIGIT EIGHT */
"\x0001d7eb" "9" /* <U0001D7EB> MATHEMATICAL SANS-SERIF DIGIT NINE */
"\x0001d7ec" "0" /* <U0001D7EC> MATHEMATICAL SANS-SERIF BOLD DIGIT ZERO */
"\x0001d7ed" "1" /* <U0001D7ED> MATHEMATICAL SANS-SERIF BOLD DIGIT ONE */
"\x0001d7ee" "2" /* <U0001D7EE> MATHEMATICAL SANS-SERIF BOLD DIGIT TWO */
"\x0001d7ef" "3" /* <U0001D7EF> MATHEMATICAL SANS-SERIF BOLD DIGIT THREE */
"\x0001d7f0" "4" /* <U0001D7F0> MATHEMATICAL SANS-SERIF BOLD DIGIT FOUR */
"\x0001d7f1" "5" /* <U0001D7F1> MATHEMATICAL SANS-SERIF BOLD DIGIT FIVE */
"\x0001d7f2" "6" /* <U0001D7F2> MATHEMATICAL SANS-SERIF BOLD DIGIT SIX */
"\x0001d7f3" "7" /* <U0001D7F3> MATHEMATICAL SANS-SERIF BOLD DIGIT SEVEN */
"\x0001d7f4" "8" /* <U0001D7F4> MATHEMATICAL SANS-SERIF BOLD DIGIT EIGHT */
"\x0001d7f5" "9" /* <U0001D7F5> MATHEMATICAL SANS-SERIF BOLD DIGIT NINE */
"\x0001d7f6" "0" /* <U0001D7F6> MATHEMATICAL MONOSPACE DIGIT ZERO */
"\x0001d7f7" "1" /* <U0001D7F7> MATHEMATICAL MONOSPACE DIGIT ONE */
"\x0001d7f8" "2" /* <U0001D7F8> MATHEMATICAL MONOSPACE DIGIT TWO */
"\x0001d7f9" "3" /* <U0001D7F9> MATHEMATICAL MONOSPACE DIGIT THREE */
"\x0001d7fa" "4" /* <U0001D7FA> MATHEMATICAL MONOSPACE DIGIT FOUR */
"\x0001d7fb" "5" /* <U0001D7FB> MATHEMATICAL MONOSPACE DIGIT FIVE */
"\x0001d7fc" "6" /* <U0001D7FC> MATHEMATICAL MONOSPACE DIGIT SIX */
"\x0001d7fd" "7" /* <U0001D7FD> MATHEMATICAL MONOSPACE DIGIT SEVEN */
"\x0001d7fe" "8" /* <U0001D7FE> MATHEMATICAL MONOSPACE DIGIT EIGHT */
"\x0001d7ff" "9" /* <U0001D7FF> MATHEMATICAL MONOSPACE DIGIT NINE */

View File

@ -1042,7 +1042,7 @@ hexadecimal range format should use only capital characters"));
char *endp;
errno = 0;
newp->ucs4 = strtoul (name_end, &endp, 16);
newp->ucs4 = strtoul (name_end + 1, &endp, 16);
if (endp - name_end != len1
|| (newp->ucs4 == ULONG_MAX && errno == ERANGE)
|| newp->ucs4 >= 0x80000000)

View File

@ -116,6 +116,14 @@ struct translit_include_t
};
/* Sparse table of uint32_t. */
#define TABLE idx_table
#define ELEMENT uint32_t
#define DEFAULT ~((uint32_t) 0)
#define NO_FINALIZE
#include "3level.h"
/* The real definition of the struct for the LC_CTYPE locale. */
struct locale_ctype_t
{
@ -123,8 +131,7 @@ struct locale_ctype_t
size_t charnames_max;
size_t charnames_act;
/* An index lookup table, to speedup find_idx. */
#define MAX_CHARNAMES_IDX 0x10000
uint32_t *charnames_idx;
struct idx_table charnames_idx;
struct repertoire_t *repertoire;
@ -261,10 +268,7 @@ ctype_startup (struct linereader *lr, struct localedef_t *locale,
for (cnt = 0; cnt < 256; ++cnt)
ctype->charnames[cnt] = cnt;
ctype->charnames_act = 256;
ctype->charnames_idx =
(uint32_t *) xmalloc (MAX_CHARNAMES_IDX * sizeof (uint32_t));
for (cnt = 0; cnt < MAX_CHARNAMES_IDX; ++cnt)
ctype->charnames_idx[cnt] = ~((uint32_t) 0);
idx_table_init (&ctype->charnames_idx);
/* Fill character class information. */
ctype->last_class_char = ILLEGAL_CHAR_VALUE;
@ -1280,23 +1284,17 @@ find_idx (struct locale_ctype_t *ctype, uint32_t **table, size_t *max,
if (idx < 256)
return table == NULL ? NULL : &(*table)[idx];
/* If idx is in the usual range, use the charnames_idx lookup table
instead of the slow search loop. */
if (idx < MAX_CHARNAMES_IDX)
{
if (ctype->charnames_idx[idx] != ~((uint32_t) 0))
/* Found. */
cnt = ctype->charnames_idx[idx];
else
/* Not found. */
cnt = ctype->charnames_act;
}
else
{
for (cnt = 256; cnt < ctype->charnames_act; ++cnt)
if (ctype->charnames[cnt] == idx)
break;
}
/* Use the charnames_idx lookup table instead of the slow search loop. */
#if 1
cnt = idx_table_get (&ctype->charnames_idx, idx);
if (cnt == ~((uint32_t) 0))
/* Not found. */
cnt = ctype->charnames_act;
#else
for (cnt = 256; cnt < ctype->charnames_act; ++cnt)
if (ctype->charnames[cnt] == idx)
break;
#endif
/* We have to distinguish two cases: the name is found or not. */
if (cnt == ctype->charnames_act)
@ -1310,8 +1308,7 @@ find_idx (struct locale_ctype_t *ctype, uint32_t **table, size_t *max,
sizeof (uint32_t) * ctype->charnames_max);
}
ctype->charnames[ctype->charnames_act++] = idx;
if (idx < MAX_CHARNAMES_IDX)
ctype->charnames_idx[idx] = cnt;
idx_table_add (&ctype->charnames_idx, idx, cnt);
}
if (table == NULL)

View File

@ -338,30 +338,33 @@ write_locale_data (const char *output_path, const char *category,
data. This means we need to have a directory LC_MESSAGES in
which we place the file under the name SYS_LC_MESSAGES. */
sprintf (fname, "%s%s", output_path, category);
fd = -2;
if (strcmp (category, "LC_MESSAGES") == 0)
{
struct stat st;
if (stat (fname, &st) < 0)
{
if (mkdir (fname, 0777) < 0)
fd = creat (fname, 0666);
else
if (mkdir (fname, 0777) >= 0)
{
fd = -1;
errno = EISDIR;
}
}
else if (S_ISREG (st.st_mode))
fd = creat (fname, 0666);
else
else if (!S_ISREG (st.st_mode))
{
fd = -1;
errno = EISDIR;
}
}
else
fd = creat (fname, 0666);
/* Create the locale file with nlinks == 1; this avoids crashing processes
which currently use the locale. */
if (fd == -2)
{
unlink (fname);
fd = creat (fname, 0666);
}
if (fd == -1)
{
@ -369,7 +372,8 @@ write_locale_data (const char *output_path, const char *category,
if (errno == EISDIR)
{
sprintf (fname, "%1$s/%2$s/SYS_%2$s", output_path, category);
sprintf (fname, "%1$s%2$s/SYS_%2$s", output_path, category);
unlink (fname);
fd = creat (fname, 0666);
if (fd == -1)
save_err = errno;
@ -381,6 +385,7 @@ write_locale_data (const char *output_path, const char *category,
error (0, save_err, _("\
cannot open output file `%s' for category `%s'"),
fname, category);
free (fname);
return;
}
}

View File

@ -1,3 +1,56 @@
2001-05-29 Bruno Haible <haible@clisp.cons.org>
* charmaps/UTF-8: Update for Unicode 3.1: Add <U03F4>..<U03F5>. Use
range syntax for <U3400>..<U4DB5>, <U4E00>..<U9FA5>, <UE000>..<UF8FF>.
Add Unicode planes 1 (scripts, symbols), 2 (CJK), 14 (tags), 15 and 16
(private use). Update width table. Assign width 1 to <U3008>, <U3009>,
<U3014>, <U3015>, <U3018>, <U3019>.
2001-05-29 Bruno Haible <haible@clisp.cons.org>
* gen-unicode-ctype.c: Update to Unicode 3.1.
(unicode_attributes): Change size to 0x110000.
(fill_attribute): Change limit for i to 0x110000. Ignore surrogates;
Unicode now officially allows a 32-bit representation and deprecates
the use of surrogates in this representation.
(fill_attributes): Loop up to 0x110000.
(unicode_combining): Remove array.
(fill_combining): Remove function. Unicode 3.1 PropList.txt doesn't
contain this property any more.
(is_alpha): Incorporate changes by Theppitak Karoonboonyanan
2001-02-15.
(is_combining): Use new but equivalent definition.
(ucs_symbol, ucs_symbol_range): New functions.
(output_charclass): Loop up to 0x110000.
(output_charmap): Likewise.
(output_tables): Fix header. Loop up to 0x110000. Use ucs_symbol where
appropriate.
(main): Expect only two arguments. Remove fill_combining() call.
* locales/i18n (LC_CTYPE): To "upper", add <U03F4> and Deseret letters.
To "lower", add <U03F5> and Deseret letters.
To "alpha", add <U03F4>, <U03F5>, <U16EE>..<U16F0>, Old Italic letters,
Gothic letters, Deseret letters, mathematical symbols.
From "punct", remove <U16EE>..<U16F0> and surrogates. Add many new
Unicode 3.1 characters.
To "graph" and "print", add <U03F4>, <U03F5>. Remove surrogates. Add
many new Unicode 3.1 characters.
"toupper", "tolower", "totitle": Update.
To "combining", add some new musical symbols.
To "combining_level3", add some new musical symbols.
* locales/tr_TR (LC_CTYPE): Update from i18n.
* locales/translit_font: Add transliterations for new Unicode 3.1
mathematical symbols.
* locales/translit_compat: Add transliterations for <U03F4>, <U03F5>.
* locales/translit_cjk_compat: Add transliterations for CJK
compatibility characters in Unicode plane 2.
2001-05-29 Bruno Haible <haible@clisp.cons.org>
* charmaps/EUC-TW: Update to Unicode 3.1. Add mappings for
<U4EA0>, <U51AB>, <U52F9>. Remove 0x8EAExxxx mappings. Add
0x8EA3xxxx, 0x8EA4xxxx, 0x8EA5xxxx, 0x8EA6xxxx, 0x8EA7xxxx,
0x8EAFxxxx mappings instead.
2001-05-26 Ulrich Drepper <drepper@redhat.com>
* locales/ro_RO: Correct abday, day, abmon, and mon info.

File diff suppressed because it is too large Load Diff

View File

@ -1,5 +1,5 @@
/* Generate a Unicode conforming LC_CTYPE category from a UnicodeData file.
Copyright (C) 2000 Free Software Foundation, Inc.
Copyright (C) 2000-2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Bruno Haible <haible@clisp.cons.org>, 2000.
@ -19,9 +19,7 @@
Boston, MA 02111-1307, USA. */
/* Usage example:
$ gen-unicode /usr/local/share/Unidata/UnicodeData.txt \
/usr/local/share/Unidata/PropList.txt \
3.0
$ gen-unicode /usr/local/share/Unidata/UnicodeData.txt 3.1
*/
#include <stdio.h>
@ -54,7 +52,7 @@ struct unicode_attribute
#define NONE (~(unsigned int)0)
/* The entire contents of the UnicodeData.txt file. */
struct unicode_attribute unicode_attributes [0x10000];
struct unicode_attribute unicode_attributes [0x110000];
/* Stores in unicode_attributes[i] the values from the given fields. */
static void
@ -69,11 +67,14 @@ fill_attribute (unsigned int i,
{
struct unicode_attribute * uni;
if (i >= 0x10000)
if (i >= 0x110000)
{
fprintf (stderr, "index too large\n");
exit (1);
}
if (strcmp (field2, "Cs") == 0)
/* Surrogates are UTF-16 artefacts, not real characters. Ignore them. */
return;
uni = &unicode_attributes[i];
/* Copy the strings. */
uni->name = strdup (field1);
@ -151,7 +152,7 @@ fill_attributes (const char *unicodedata_filename)
char field14[FIELDLEN];
int lineno = 0;
for (i = 0; i < 0x10000; i++)
for (i = 0; i < 0x110000; i++)
unicode_attributes[i].name = NULL;
stream = fopen (unicodedata_filename, "r");
@ -247,87 +248,6 @@ fill_attributes (const char *unicodedata_filename)
}
}
/* The combining property from the PropList.txt file. */
char unicode_combining[0x10000];
/* Stores in unicode_combining[] the Combining property from the
PropList.txt file. */
static void
fill_combining (const char *proplist_filename)
{
unsigned int i;
FILE *stream;
char buf[100+1];
for (i = 0; i < 0x10000; i++)
unicode_combining[i] = 0;
stream = fopen (proplist_filename, "r");
if (stream == NULL)
{
fprintf (stderr, "error during fopen of '%s'\n", proplist_filename);
exit (1);
}
/* Search for the "Property dump for: 0x20000004 (Combining)" line. */
do
{
if (fscanf (stream, "%100[^\n]\n", buf) < 1)
{
fprintf (stderr, "no combining property found in '%s'\n",
proplist_filename);
exit (1);
}
}
while (strstr (buf, "(Combining)") == NULL);
for (;;)
{
unsigned int i1, i2;
if (fscanf (stream, "%100[^\n]\n", buf) < 1)
{
fprintf (stderr, "premature end of combining property in '%s'\n",
proplist_filename);
exit (1);
}
if (buf[0] == '*')
break;
if (strlen (buf) >= 10 && buf[4] == '.' && buf[5] == '.')
{
if (sscanf (buf, "%4X..%4X", &i1, &i2) < 2)
{
fprintf (stderr, "parse error in combining property in '%s'\n",
proplist_filename);
exit (1);
}
}
else if (strlen (buf) >= 4)
{
if (sscanf (buf, "%4X", &i1) < 1)
{
fprintf (stderr, "parse error in combining property in '%s'\n",
proplist_filename);
exit (1);
}
i2 = i1;
}
else
{
fprintf (stderr, "parse error in combining property in '%s'\n",
proplist_filename);
exit (1);
}
for (i = i1; i <= i2; i++)
unicode_combining[i] = 1;
}
if (ferror (stream) || fclose (stream))
{
fprintf (stderr, "error reading from '%s'\n", proplist_filename);
exit (1);
}
}
/* Character mappings. */
static unsigned int
@ -380,7 +300,15 @@ static bool
is_alpha (unsigned int ch)
{
return (unicode_attributes[ch].name != NULL
&& (unicode_attributes[ch].category[0] == 'L'
&& ((unicode_attributes[ch].category[0] == 'L'
/* Theppitak Karoonboonyanan <thep@links.nectec.or.th> says
<U0E2F>, <U0E46> should belong to is_punct. */
&& (ch != 0x0E2F) && (ch != 0x0E46))
/* Theppitak Karoonboonyanan <thep@links.nectec.or.th> says
<U0E31>, <U0E34>..<U0E3A>, <U0E47>..<U0E4E> are is_alpha. */
|| (ch == 0x0E31)
|| (ch >= 0x0E34 && ch <= 0x0E3A)
|| (ch >= 0x0E47 && ch <= 0x0E4E)
/* Avoid warning for <U0345>. */
|| (ch == 0x0345)
/* Avoid warnings for <U2160>..<U217F>. */
@ -528,8 +456,15 @@ is_punct (unsigned int ch)
static bool
is_combining (unsigned int ch)
{
/* Up to Unicode 3.0.1 we took the Combining property from the PropList.txt
file. In 3.0.1 it was identical to the union of the general categories
"Mn", "Mc", "Me". In Unicode 3.1 this property has been dropped from the
PropList.txt file, so we take the latter definition. */
return (unicode_attributes[ch].name != NULL
&& unicode_combining[ch] != 0);
&& unicode_attributes[ch].category[0] == 'M'
&& (unicode_attributes[ch].category[1] == 'n'
|| unicode_attributes[ch].category[1] == 'c'
|| unicode_attributes[ch].category[1] == 'e'));
}
static bool
@ -541,43 +476,65 @@ is_combining_level3 (unsigned int ch)
&& strtoul (unicode_attributes[ch].combining, NULL, 10) >= 200);
}
/* Return the UCS symbol string for a Unicode character. */
static const char *
ucs_symbol (unsigned int i)
{
static char buf[11+1];
sprintf (buf, (i < 0x10000 ? "<U%04X>" : "<U%08X>"), i);
return buf;
}
/* Return the UCS symbol range string for a Unicode characters interval. */
static const char *
ucs_symbol_range (unsigned int low, unsigned int high)
{
static char buf[24+1];
strcpy (buf, ucs_symbol (low));
strcat (buf, "..");
strcat (buf, ucs_symbol (high));
return buf;
}
/* Output a character class (= property) table. */
static void
output_charclass (FILE *stream, const char *classname,
bool (*func) (unsigned int))
{
char table[0x10000];
char table[0x110000];
unsigned int i;
bool need_semicolon;
const int max_column = 75;
int column;
for (i = 0; i < 0x10000; i++)
for (i = 0; i < 0x110000; i++)
table[i] = (int) func (i);
fprintf (stream, "%s ", classname);
need_semicolon = false;
column = 1000;
for (i = 0; i < 0x10000; )
for (i = 0; i < 0x110000; )
{
if (!table[i])
i++;
else
{
unsigned int low, high;
char buf[17];
char buf[25];
low = i;
do
i++;
while (i < 0x10000 && table[i]);
while (i < 0x110000 && table[i]);
high = i - 1;
if (low == high)
sprintf (buf, "<U%04X>", low);
strcpy (buf, ucs_symbol (low));
else
sprintf (buf, "<U%04X>..<U%04X>", low, high);
strcpy (buf, ucs_symbol_range (low, high));
if (need_semicolon)
{
@ -605,24 +562,28 @@ static void
output_charmap (FILE *stream, const char *mapname,
unsigned int (*func) (unsigned int))
{
char table[0x10000];
char table[0x110000];
unsigned int i;
bool need_semicolon;
const int max_column = 75;
int column;
for (i = 0; i < 0x10000; i++)
for (i = 0; i < 0x110000; i++)
table[i] = (func (i) != i);
fprintf (stream, "%s ", mapname);
need_semicolon = false;
column = 1000;
for (i = 0; i < 0x10000; i++)
for (i = 0; i < 0x110000; i++)
if (table[i])
{
char buf[18];
char buf[25+1];
sprintf (buf, "(<U%04X>,<U%04X>)", i, func (i));
strcpy (buf, "(");
strcat (buf, ucs_symbol (i));
strcat (buf, ",");
strcat (buf, ucs_symbol (func (i)));
strcat (buf, ")");
if (need_semicolon)
{
@ -668,7 +629,7 @@ output_tables (const char *filename, const char *version)
fprintf (stream, "escape_char /\n");
fprintf (stream, "comment_char %%\n");
fprintf (stream, "\n");
fprintf (stream, "%% Generated automatically by gen-unicode for Unicode %s.\n",
fprintf (stream, "%% Generated automatically by gen-unicode-ctype for Unicode %s.\n",
version);
fprintf (stream, "\n");
@ -690,76 +651,76 @@ output_tables (const char *filename, const char *version)
strftime (date, sizeof (date), "%Y-%m-%d", gmtime (&now));
fprintf (stream, "date \"%s\"\n", date);
}
fprintf (stream, "category \"unicode:2000\";LC_CTYPE\n");
fprintf (stream, "category \"unicode:2001\";LC_CTYPE\n");
fprintf (stream, "END LC_IDENTIFICATION\n");
fprintf (stream, "\n");
/* Verifications. */
for (ch = 0; ch < 0x10000; ch++)
for (ch = 0; ch < 0x110000; ch++)
{
/* toupper restriction: "Only characters specified for the keywords
lower and upper shall be specified. */
if (to_upper (ch) != ch && !(is_lower (ch) || is_upper (ch)))
fprintf (stderr,
"<U%04X> is not upper|lower but toupper(0x%04X) = 0x%04X\n",
ch, ch, to_upper (ch));
"%s is not upper|lower but toupper(0x%04X) = 0x%04X\n",
ucs_symbol (ch), ch, to_upper (ch));
/* tolower restriction: "Only characters specified for the keywords
lower and upper shall be specified. */
if (to_lower (ch) != ch && !(is_lower (ch) || is_upper (ch)))
fprintf (stderr,
"<U%04X> is not upper|lower but tolower(0x%04X) = 0x%04X\n",
ch, ch, to_lower (ch));
"%s is not upper|lower but tolower(0x%04X) = 0x%04X\n",
ucs_symbol (ch), ch, to_lower (ch));
/* alpha restriction: "Characters classified as either upper or lower
shall automatically belong to this class. */
if ((is_lower (ch) || is_upper (ch)) && !is_alpha (ch))
fprintf (stderr, "<U%04X> is upper|lower but not alpha\n", ch);
fprintf (stderr, "%s is upper|lower but not alpha\n", ucs_symbol (ch));
/* alpha restriction: "No character specified for the keywords cntrl,
digit, punct or space shall be specified." */
if (is_alpha (ch) && is_cntrl (ch))
fprintf (stderr, "<U%04X> is alpha and cntrl\n", ch);
fprintf (stderr, "%s is alpha and cntrl\n", ucs_symbol (ch));
if (is_alpha (ch) && is_digit (ch))
fprintf (stderr, "<U%04X> is alpha and digit\n", ch);
fprintf (stderr, "%s is alpha and digit\n", ucs_symbol (ch));
if (is_alpha (ch) && is_punct (ch))
fprintf (stderr, "<U%04X> is alpha and punct\n", ch);
fprintf (stderr, "%s is alpha and punct\n", ucs_symbol (ch));
if (is_alpha (ch) && is_space (ch))
fprintf (stderr, "<U%04X> is alpha and space\n", ch);
fprintf (stderr, "%s is alpha and space\n", ucs_symbol (ch));
/* space restriction: "No character specified for the keywords upper,
lower, alpha, digit, graph or xdigit shall be specified."
upper, lower, alpha already checked above. */
if (is_space (ch) && is_digit (ch))
fprintf (stderr, "<U%04X> is space and digit\n", ch);
fprintf (stderr, "%s is space and digit\n", ucs_symbol (ch));
if (is_space (ch) && is_graph (ch))
fprintf (stderr, "<U%04X> is space and graph\n", ch);
fprintf (stderr, "%s is space and graph\n", ucs_symbol (ch));
if (is_space (ch) && is_xdigit (ch))
fprintf (stderr, "<U%04X> is space and xdigit\n", ch);
fprintf (stderr, "%s is space and xdigit\n", ucs_symbol (ch));
/* cntrl restriction: "No character specified for the keywords upper,
lower, alpha, digit, punct, graph, print or xdigit shall be
specified." upper, lower, alpha already checked above. */
if (is_cntrl (ch) && is_digit (ch))
fprintf (stderr, "<U%04X> is cntrl and digit\n", ch);
fprintf (stderr, "%s is cntrl and digit\n", ucs_symbol (ch));
if (is_cntrl (ch) && is_punct (ch))
fprintf (stderr, "<U%04X> is cntrl and punct\n", ch);
fprintf (stderr, "%s is cntrl and punct\n", ucs_symbol (ch));
if (is_cntrl (ch) && is_graph (ch))
fprintf (stderr, "<U%04X> is cntrl and graph\n", ch);
fprintf (stderr, "%s is cntrl and graph\n", ucs_symbol (ch));
if (is_cntrl (ch) && is_print (ch))
fprintf (stderr, "<U%04X> is cntrl and print\n", ch);
fprintf (stderr, "%s is cntrl and print\n", ucs_symbol (ch));
if (is_cntrl (ch) && is_xdigit (ch))
fprintf (stderr, "<U%04X> is cntrl and xdigit\n", ch);
fprintf (stderr, "%s is cntrl and xdigit\n", ucs_symbol (ch));
/* punct restriction: "No character specified for the keywords upper,
lower, alpha, digit, cntrl, xdigit or as the <space> character shall
be specified." upper, lower, alpha, cntrl already checked above. */
if (is_punct (ch) && is_digit (ch))
fprintf (stderr, "<U%04X> is punct and digit\n", ch);
fprintf (stderr, "%s is punct and digit\n", ucs_symbol (ch));
if (is_punct (ch) && is_xdigit (ch))
fprintf (stderr, "<U%04X> is punct and xdigit\n", ch);
fprintf (stderr, "%s is punct and xdigit\n", ucs_symbol (ch));
if (is_punct (ch) && (ch == 0x0020))
fprintf (stderr, "<U%04X> is punct\n", ch);
fprintf (stderr, "%s is punct\n", ucs_symbol (ch));
/* graph restriction: "No character specified for the keyword cntrl
shall be specified." Already checked above. */
@ -772,9 +733,11 @@ output_tables (const char *filename, const char *version)
I think susv2/xbd/locale.html should speak of "space characters",
not "space character". */
if (is_print (ch) && !(is_graph (ch) || /* ch == 0x0020 */ is_space (ch)))
fprintf (stderr, "<U%04X> is print but not graph|<space>\n", ch);
fprintf (stderr,
"%s is print but not graph|<space>\n", ucs_symbol (ch));
if (!is_print (ch) && (is_graph (ch) || ch == 0x0020))
fprintf (stderr, "<U%04X> is graph|<space> but not print\n", ch);
fprintf (stderr,
"%s is graph|<space> but not print\n", ucs_symbol (ch));
}
fprintf (stream, "LC_CTYPE\n");
@ -808,17 +771,15 @@ output_tables (const char *filename, const char *version)
int
main (int argc, char * argv[])
{
if (argc != 4)
if (argc != 3)
{
fprintf (stderr, "Usage: %s UnicodeData.txt PropList.txt version\n",
argv[0]);
fprintf (stderr, "Usage: %s UnicodeData.txt version\n", argv[0]);
exit (1);
}
fill_attributes (argv[1]);
fill_combining (argv[2]);
output_tables ("unicode", argv[3]);
output_tables ("unicode", argv[2]);
return 0;
}

View File

@ -66,7 +66,7 @@ upper /
<U0386>;<U0388>..<U038A>;<U038C>;<U038E>;<U038F>;<U0391>..<U03A1>;/
<U03A3>..<U03AB>;<U03DA>;<U03DC>;<U03DE>;/
% TABLE 10 GREEK SYMBOLS AND COPTIC/
<U03E0>..(2)..<U03EE>;/
<U03E0>..(2)..<U03EE>;<U03F4>;/
% TABLE 11 CYRILLIC/
<U0400>..<U042F>;<U0460>..(2)..<U047E>;/
% TABLE 12 CYRILLIC/
@ -94,7 +94,9 @@ upper /
% ENCLOSED ALPHANUMERICS/
<U24B6>..<U24CF>;/
% HALFWIDTH AND FULLWIDTH FORMS/
<UFF21>..<UFF3A>
<UFF21>..<UFF3A>;/
% DESERET/
<U00010400>..<U00010425>
% The "lower" class reflects the lowercase characters of class "alpha"
lower /
@ -123,6 +125,7 @@ lower /
<U03AC>..<U03AF>;<U03B1>..<U03CE>;/
% TABLE 10 GREEK SYMBOLS AND COPTIC/
<U03D0>;<U03D1>;<U03D5>;<U03D6>;<U03DB>..(2)..<U03EF>;<U03F0>..<U03F2>;/
<U03F5>;/
% TABLE 11 CYRILLIC/
<U0430>..<U045F>;<U0461>..(2)..<U047F>;/
% TABLE 12 CYRILLIC/
@ -147,7 +150,9 @@ lower /
% ENCLOSED ALPHANUMERICS/
<U24D0>..<U24E9>;/
% HALFWIDTH AND FULLWIDTH FORMS/
<UFF41>..<UFF5A>
<UFF41>..<UFF5A>;/
% DESERET/
<U00010428>..<U0001044D>
% The "alpha" class of the "i18n" FDCC-set is reflecting
% the recommendations in TR 10176 annex A
@ -172,7 +177,7 @@ alpha /
<U037A>;<U0386>;<U0388>..<U038A>;<U038C>;<U038E>..<U03A1>;/
<U03A3>..<U03CE>;/
% TABLE 10 GREEK SYMBOLS AND COPTIC/
<U03D0>..<U03D7>;<U03DA>..<U03F3>;/
<U03D0>..<U03D7>;<U03DA>..<U03F5>;/
% TABLE 11 and 12 CYRILLIC/
<U0400>..<U0481>;<U048C>..<U04C4>;<U04C7>..<U04C8>;<U04CB>..<U04CC>;/
<U04D0>..<U04F5>;<U04F8>..<U04F9>;/
@ -250,7 +255,7 @@ alpha /
% OGHAM/
<U1681>..<U169A>;/
% RUNIC/
<U16A0>..<U16EA>;/
<U16A0>..<U16EA>;<U16EE>..<U16F0>;/
% KHMER/
<U1780>..<U17B3>;/
% MONGOLIAN/
@ -306,19 +311,45 @@ alpha /
% HALFWIDTH AND FULLWIDTH FORMS/
<UFF21>..<UFF3A>;<UFF41>..<UFF5A>;<UFF66>..<UFFBE>;<UFFC2>..<UFFC7>;/
<UFFCA>..<UFFCF>;<UFFD2>..<UFFD7>;<UFFDA>..<UFFDC>;/
% OLD ITALIC/
<U00010300>..<U0001031E>;/
% GOTHIC/
<U00010330>..<U0001034A>;/
% DESERET/
<U00010400>..<U00010425>;<U00010428>..<U0001044D>;/
% MATHEMATICAL ALPHANUMERIC SYMBOLS/
<U0001D400>..<U0001D454>;<U0001D456>..<U0001D49C>;/
<U0001D49E>..<U0001D49F>;<U0001D4A2>;<U0001D4A5>..<U0001D4A6>;/
<U0001D4A9>..<U0001D4AC>;<U0001D4AE>..<U0001D4B9>;<U0001D4BB>;/
<U0001D4BD>..<U0001D4C0>;<U0001D4C2>..<U0001D4C3>;/
<U0001D4C5>..<U0001D505>;<U0001D507>..<U0001D50A>;/
<U0001D50D>..<U0001D514>;<U0001D516>..<U0001D51C>;/
<U0001D51E>..<U0001D539>;<U0001D53B>..<U0001D53E>;/
<U0001D540>..<U0001D544>;<U0001D546>;<U0001D54A>..<U0001D550>;/
<U0001D552>..<U0001D6A3>;<U0001D6A8>..<U0001D6C0>;/
<U0001D6C2>..<U0001D6DA>;<U0001D6DC>..<U0001D6FA>;/
<U0001D6FC>..<U0001D714>;<U0001D716>..<U0001D734>;/
<U0001D736>..<U0001D74E>;<U0001D750>..<U0001D76E>;/
<U0001D770>..<U0001D788>;<U0001D78A>..<U0001D7A8>;/
<U0001D7AA>..<U0001D7C2>;<U0001D7C4>..<U0001D7C9>;/
<U0001D7CE>..<U0001D7FF>;/
% CJK UNIFIED IDEOGRAPHS EXTENSION/
<U00020000>..<U0002A6D6>;/
% CJK COMPATIBILITY IDEOGRAPHS SUPPLEMENT/
<U0002F800>..<U0002FA1D>;/
% The non-ASCII number characters are included here because ISO C 99 /
% forbids us to classify them as digits; however, they behave more like /
% alphanumeric than like punctuation. /
% TABLE 15 and 16 ARABIC/
<U0660>..<U0669>;<U06F0>..<U06F9>;/
<U0660>..<U0669>;<U06F0>..<U06F9>;/
% TABLE 17 DEVANAGARI/
<U0966>..<U096F>;/
<U0966>..<U096F>;/
% TABLE 18 BENGALI/
<U09E6>..<U09EF>;/
<U09E6>..<U09EF>;/
% TABLE 19 GURMUKHI/
<U0A66>..<U0A6F>;/
<U0A66>..<U0A6F>;/
% TABLE 20 GUJARATI/
<U0AE6>..<U0AEF>;/
<U0AE6>..<U0AEF>;/
% TABLE 21 ORIYA/
<U0B66>..<U0B6F>;/
% TABLE 22 TAMIL/
@ -403,7 +434,7 @@ punct /
<U0F71>..<U0F87>;<U0F90>..<U0F97>;<U0F99>..<U0FBC>;<U0FBE>..<U0FCC>;/
<U0FCF>;<U102C>..<U1032>;<U1036>..<U1039>;<U104A>..<U104F>;/
<U1056>..<U1059>;<U10FB>;<U1361>..<U1368>;<U1372>..<U137C>;/
<U166D>..<U166E>;<U169B>..<U169C>;<U16EB>..<U16F0>;<U17B4>..<U17DC>;/
<U166D>..<U166E>;<U169B>..<U169C>;<U16EB>..<U16ED>;<U17B4>..<U17DC>;/
<U1800>..<U180E>;<U18A9>;<U1FBD>;<U1FBF>..<U1FC1>;<U1FCD>..<U1FCF>;/
<U1FDD>..<U1FDF>;<U1FED>..<U1FEF>;<U1FFD>..<U1FFE>;<U2007>;/
<U200C>..<U2027>;<U202A>..<U2046>;<U2048>..<U204D>;<U206A>..<U2070>;/
@ -423,17 +454,22 @@ punct /
<U3260>..<U327B>;<U327F>..<U32B0>;<U32C0>..<U32CB>;<U32D0>..<U32FE>;/
<U3300>..<U3376>;<U337B>..<U33DD>;<U33E0>..<U33FE>;<UA490>..<UA4A1>;/
<UA4A4>..<UA4B3>;<UA4B5>..<UA4C0>;<UA4C2>..<UA4C4>;<UA4C6>;/
<UD800>..<UF8FF>;<UFB1E>;<UFB29>;<UFD3E>..<UFD3F>;<UFE20>..<UFE23>;/
<UE000>..<UF8FF>;<UFB1E>;<UFB29>;<UFD3E>..<UFD3F>;<UFE20>..<UFE23>;/
<UFE30>..<UFE44>;<UFE49>..<UFE52>;<UFE54>..<UFE66>;<UFE68>..<UFE6B>;/
<UFEFF>;<UFF01>..<UFF0F>;<UFF1A>..<UFF20>;<UFF3B>..<UFF40>;/
<UFF5B>..<UFF5E>;<UFF61>..<UFF65>;<UFFE0>..<UFFE6>;<UFFE8>..<UFFEE>;/
<UFFF9>..<UFFFD>
<UFFF9>..<UFFFD>;<U00010320>..<U00010323>;<U0001D000>..<U0001D0F5>;/
<U0001D100>..<U0001D126>;<U0001D12A>..<U0001D1DD>;<U0001D6C1>;/
<U0001D6DB>;<U0001D6FB>;<U0001D715>;<U0001D735>;<U0001D74F>;/
<U0001D76F>;<U0001D789>;<U0001D7A9>;<U0001D7C3>;<U000E0001>;/
<U000E0020>..<U000E007F>;<U000F0000>..<U000FFFFD>;/
<U00100000>..<U0010FFFD>
graph /
<U0021>..<U007E>;<U00A0>..<U021F>;<U0222>..<U0233>;<U0250>..<U02AD>;/
<U02B0>..<U02EE>;<U0300>..<U034E>;<U0360>..<U0362>;<U0374>..<U0375>;/
<U037A>;<U037E>;<U0384>..<U038A>;<U038C>;<U038E>..<U03A1>;/
<U03A3>..<U03CE>;<U03D0>..<U03D7>;<U03DA>..<U03F3>;<U0400>..<U0486>;/
<U03A3>..<U03CE>;<U03D0>..<U03D7>;<U03DA>..<U03F5>;<U0400>..<U0486>;/
<U0488>..<U0489>;<U048C>..<U04C4>;<U04C7>..<U04C8>;<U04CB>..<U04CC>;/
<U04D0>..<U04F5>;<U04F8>..<U04F9>;<U0531>..<U0556>;<U0559>..<U055F>;/
<U0561>..<U0587>;<U0589>..<U058A>;<U0591>..<U05A1>;<U05A3>..<U05B9>;/
@ -509,20 +545,36 @@ graph /
<U3300>..<U3376>;<U337B>..<U33DD>;<U33E0>..<U33FE>;<U3400>..<U4DB5>;/
<U4E00>..<U9FA5>;<UA000>..<UA48C>;<UA490>..<UA4A1>;<UA4A4>..<UA4B3>;/
<UA4B5>..<UA4C0>;<UA4C2>..<UA4C4>;<UA4C6>;<UAC00>..<UD7A3>;/
<UD800>..<UFA2D>;<UFB00>..<UFB06>;<UFB13>..<UFB17>;<UFB1D>..<UFB36>;/
<UE000>..<UFA2D>;<UFB00>..<UFB06>;<UFB13>..<UFB17>;<UFB1D>..<UFB36>;/
<UFB38>..<UFB3C>;<UFB3E>;<UFB40>..<UFB41>;<UFB43>..<UFB44>;/
<UFB46>..<UFBB1>;<UFBD3>..<UFD3F>;<UFD50>..<UFD8F>;<UFD92>..<UFDC7>;/
<UFDF0>..<UFDFB>;<UFE20>..<UFE23>;<UFE30>..<UFE44>;<UFE49>..<UFE52>;/
<UFE54>..<UFE66>;<UFE68>..<UFE6B>;<UFE70>..<UFE72>;<UFE74>;/
<UFE76>..<UFEFC>;<UFEFF>;<UFF01>..<UFF5E>;<UFF61>..<UFFBE>;/
<UFFC2>..<UFFC7>;<UFFCA>..<UFFCF>;<UFFD2>..<UFFD7>;<UFFDA>..<UFFDC>;/
<UFFE0>..<UFFE6>;<UFFE8>..<UFFEE>;<UFFF9>..<UFFFD>
<UFFE0>..<UFFE6>;<UFFE8>..<UFFEE>;<UFFF9>..<UFFFD>;/
<U00010300>..<U0001031E>;<U00010320>..<U00010323>;/
<U00010330>..<U0001034A>;<U00010400>..<U00010425>;/
<U00010428>..<U0001044D>;<U0001D000>..<U0001D0F5>;/
<U0001D100>..<U0001D126>;<U0001D12A>..<U0001D1DD>;/
<U0001D400>..<U0001D454>;<U0001D456>..<U0001D49C>;/
<U0001D49E>..<U0001D49F>;<U0001D4A2>;<U0001D4A5>..<U0001D4A6>;/
<U0001D4A9>..<U0001D4AC>;<U0001D4AE>..<U0001D4B9>;<U0001D4BB>;/
<U0001D4BD>..<U0001D4C0>;<U0001D4C2>..<U0001D4C3>;/
<U0001D4C5>..<U0001D505>;<U0001D507>..<U0001D50A>;/
<U0001D50D>..<U0001D514>;<U0001D516>..<U0001D51C>;/
<U0001D51E>..<U0001D539>;<U0001D53B>..<U0001D53E>;/
<U0001D540>..<U0001D544>;<U0001D546>;<U0001D54A>..<U0001D550>;/
<U0001D552>..<U0001D6A3>;<U0001D6A8>..<U0001D7C9>;/
<U0001D7CE>..<U0001D7FF>;<U00020000>..<U0002A6D6>;/
<U0002F800>..<U0002FA1D>;<U000E0001>;<U000E0020>..<U000E007F>;/
<U000F0000>..<U000FFFFD>;<U00100000>..<U0010FFFD>
print /
<U0020>..<U007E>;<U00A0>..<U021F>;<U0222>..<U0233>;<U0250>..<U02AD>;/
<U02B0>..<U02EE>;<U0300>..<U034E>;<U0360>..<U0362>;<U0374>..<U0375>;/
<U037A>;<U037E>;<U0384>..<U038A>;<U038C>;<U038E>..<U03A1>;/
<U03A3>..<U03CE>;<U03D0>..<U03D7>;<U03DA>..<U03F3>;<U0400>..<U0486>;/
<U03A3>..<U03CE>;<U03D0>..<U03D7>;<U03DA>..<U03F5>;<U0400>..<U0486>;/
<U0488>..<U0489>;<U048C>..<U04C4>;<U04C7>..<U04C8>;<U04CB>..<U04CC>;/
<U04D0>..<U04F5>;<U04F8>..<U04F9>;<U0531>..<U0556>;<U0559>..<U055F>;/
<U0561>..<U0587>;<U0589>..<U058A>;<U0591>..<U05A1>;<U05A3>..<U05B9>;/
@ -597,7 +649,7 @@ print /
<U327F>..<U32B0>;<U32C0>..<U32CB>;<U32D0>..<U32FE>;<U3300>..<U3376>;/
<U337B>..<U33DD>;<U33E0>..<U33FE>;<U3400>..<U4DB5>;<U4E00>..<U9FA5>;/
<UA000>..<UA48C>;<UA490>..<UA4A1>;<UA4A4>..<UA4B3>;<UA4B5>..<UA4C0>;/
<UA4C2>..<UA4C4>;<UA4C6>;<UAC00>..<UD7A3>;<UD800>..<UFA2D>;/
<UA4C2>..<UA4C4>;<UA4C6>;<UAC00>..<UD7A3>;<UE000>..<UFA2D>;/
<UFB00>..<UFB06>;<UFB13>..<UFB17>;<UFB1D>..<UFB36>;<UFB38>..<UFB3C>;/
<UFB3E>;<UFB40>..<UFB41>;<UFB43>..<UFB44>;<UFB46>..<UFBB1>;/
<UFBD3>..<UFD3F>;<UFD50>..<UFD8F>;<UFD92>..<UFDC7>;<UFDF0>..<UFDFB>;/
@ -605,7 +657,22 @@ print /
<UFE68>..<UFE6B>;<UFE70>..<UFE72>;<UFE74>;<UFE76>..<UFEFC>;<UFEFF>;/
<UFF01>..<UFF5E>;<UFF61>..<UFFBE>;<UFFC2>..<UFFC7>;<UFFCA>..<UFFCF>;/
<UFFD2>..<UFFD7>;<UFFDA>..<UFFDC>;<UFFE0>..<UFFE6>;<UFFE8>..<UFFEE>;/
<UFFF9>..<UFFFD>
<UFFF9>..<UFFFD>;<U00010300>..<U0001031E>;<U00010320>..<U00010323>;/
<U00010330>..<U0001034A>;<U00010400>..<U00010425>;/
<U00010428>..<U0001044D>;<U0001D000>..<U0001D0F5>;/
<U0001D100>..<U0001D126>;<U0001D12A>..<U0001D1DD>;/
<U0001D400>..<U0001D454>;<U0001D456>..<U0001D49C>;/
<U0001D49E>..<U0001D49F>;<U0001D4A2>;<U0001D4A5>..<U0001D4A6>;/
<U0001D4A9>..<U0001D4AC>;<U0001D4AE>..<U0001D4B9>;<U0001D4BB>;/
<U0001D4BD>..<U0001D4C0>;<U0001D4C2>..<U0001D4C3>;/
<U0001D4C5>..<U0001D505>;<U0001D507>..<U0001D50A>;/
<U0001D50D>..<U0001D514>;<U0001D516>..<U0001D51C>;/
<U0001D51E>..<U0001D539>;<U0001D53B>..<U0001D53E>;/
<U0001D540>..<U0001D544>;<U0001D546>;<U0001D54A>..<U0001D550>;/
<U0001D552>..<U0001D6A3>;<U0001D6A8>..<U0001D7C9>;/
<U0001D7CE>..<U0001D7FF>;<U00020000>..<U0002A6D6>;/
<U0002F800>..<U0002FA1D>;<U000E0001>;<U000E0020>..<U000E007F>;/
<U000F0000>..<U000FFFFD>;<U00100000>..<U0010FFFD>
% The "xdigit" class must only contain the BASIC LATIN digits and A-F, a-f,
% says ISO C 99 (sections 7.25.2.1.12 and 6.4.4.1).
@ -681,117 +748,136 @@ toupper /
(<U03D6>,<U03A0>);(<U03DB>,<U03DA>);(<U03DD>,<U03DC>);(<U03DF>,<U03DE>);/
(<U03E1>,<U03E0>);(<U03E3>,<U03E2>);(<U03E5>,<U03E4>);(<U03E7>,<U03E6>);/
(<U03E9>,<U03E8>);(<U03EB>,<U03EA>);(<U03ED>,<U03EC>);(<U03EF>,<U03EE>);/
(<U03F0>,<U039A>);(<U03F1>,<U03A1>);(<U03F2>,<U03A3>);(<U0430>,<U0410>);/
(<U0431>,<U0411>);(<U0432>,<U0412>);(<U0433>,<U0413>);(<U0434>,<U0414>);/
(<U0435>,<U0415>);(<U0436>,<U0416>);(<U0437>,<U0417>);(<U0438>,<U0418>);/
(<U0439>,<U0419>);(<U043A>,<U041A>);(<U043B>,<U041B>);(<U043C>,<U041C>);/
(<U043D>,<U041D>);(<U043E>,<U041E>);(<U043F>,<U041F>);(<U0440>,<U0420>);/
(<U0441>,<U0421>);(<U0442>,<U0422>);(<U0443>,<U0423>);(<U0444>,<U0424>);/
(<U0445>,<U0425>);(<U0446>,<U0426>);(<U0447>,<U0427>);(<U0448>,<U0428>);/
(<U0449>,<U0429>);(<U044A>,<U042A>);(<U044B>,<U042B>);(<U044C>,<U042C>);/
(<U044D>,<U042D>);(<U044E>,<U042E>);(<U044F>,<U042F>);(<U0450>,<U0400>);/
(<U0451>,<U0401>);(<U0452>,<U0402>);(<U0453>,<U0403>);(<U0454>,<U0404>);/
(<U0455>,<U0405>);(<U0456>,<U0406>);(<U0457>,<U0407>);(<U0458>,<U0408>);/
(<U0459>,<U0409>);(<U045A>,<U040A>);(<U045B>,<U040B>);(<U045C>,<U040C>);/
(<U045D>,<U040D>);(<U045E>,<U040E>);(<U045F>,<U040F>);(<U0461>,<U0460>);/
(<U0463>,<U0462>);(<U0465>,<U0464>);(<U0467>,<U0466>);(<U0469>,<U0468>);/
(<U046B>,<U046A>);(<U046D>,<U046C>);(<U046F>,<U046E>);(<U0471>,<U0470>);/
(<U0473>,<U0472>);(<U0475>,<U0474>);(<U0477>,<U0476>);(<U0479>,<U0478>);/
(<U047B>,<U047A>);(<U047D>,<U047C>);(<U047F>,<U047E>);(<U0481>,<U0480>);/
(<U048D>,<U048C>);(<U048F>,<U048E>);(<U0491>,<U0490>);(<U0493>,<U0492>);/
(<U0495>,<U0494>);(<U0497>,<U0496>);(<U0499>,<U0498>);(<U049B>,<U049A>);/
(<U049D>,<U049C>);(<U049F>,<U049E>);(<U04A1>,<U04A0>);(<U04A3>,<U04A2>);/
(<U04A5>,<U04A4>);(<U04A7>,<U04A6>);(<U04A9>,<U04A8>);(<U04AB>,<U04AA>);/
(<U04AD>,<U04AC>);(<U04AF>,<U04AE>);(<U04B1>,<U04B0>);(<U04B3>,<U04B2>);/
(<U04B5>,<U04B4>);(<U04B7>,<U04B6>);(<U04B9>,<U04B8>);(<U04BB>,<U04BA>);/
(<U04BD>,<U04BC>);(<U04BF>,<U04BE>);(<U04C2>,<U04C1>);(<U04C4>,<U04C3>);/
(<U04C8>,<U04C7>);(<U04CC>,<U04CB>);(<U04D1>,<U04D0>);(<U04D3>,<U04D2>);/
(<U04D5>,<U04D4>);(<U04D7>,<U04D6>);(<U04D9>,<U04D8>);(<U04DB>,<U04DA>);/
(<U04DD>,<U04DC>);(<U04DF>,<U04DE>);(<U04E1>,<U04E0>);(<U04E3>,<U04E2>);/
(<U04E5>,<U04E4>);(<U04E7>,<U04E6>);(<U04E9>,<U04E8>);(<U04EB>,<U04EA>);/
(<U04ED>,<U04EC>);(<U04EF>,<U04EE>);(<U04F1>,<U04F0>);(<U04F3>,<U04F2>);/
(<U04F5>,<U04F4>);(<U04F9>,<U04F8>);(<U0561>,<U0531>);(<U0562>,<U0532>);/
(<U0563>,<U0533>);(<U0564>,<U0534>);(<U0565>,<U0535>);(<U0566>,<U0536>);/
(<U0567>,<U0537>);(<U0568>,<U0538>);(<U0569>,<U0539>);(<U056A>,<U053A>);/
(<U056B>,<U053B>);(<U056C>,<U053C>);(<U056D>,<U053D>);(<U056E>,<U053E>);/
(<U056F>,<U053F>);(<U0570>,<U0540>);(<U0571>,<U0541>);(<U0572>,<U0542>);/
(<U0573>,<U0543>);(<U0574>,<U0544>);(<U0575>,<U0545>);(<U0576>,<U0546>);/
(<U0577>,<U0547>);(<U0578>,<U0548>);(<U0579>,<U0549>);(<U057A>,<U054A>);/
(<U057B>,<U054B>);(<U057C>,<U054C>);(<U057D>,<U054D>);(<U057E>,<U054E>);/
(<U057F>,<U054F>);(<U0580>,<U0550>);(<U0581>,<U0551>);(<U0582>,<U0552>);/
(<U0583>,<U0553>);(<U0584>,<U0554>);(<U0585>,<U0555>);(<U0586>,<U0556>);/
(<U1E01>,<U1E00>);(<U1E03>,<U1E02>);(<U1E05>,<U1E04>);(<U1E07>,<U1E06>);/
(<U1E09>,<U1E08>);(<U1E0B>,<U1E0A>);(<U1E0D>,<U1E0C>);(<U1E0F>,<U1E0E>);/
(<U1E11>,<U1E10>);(<U1E13>,<U1E12>);(<U1E15>,<U1E14>);(<U1E17>,<U1E16>);/
(<U1E19>,<U1E18>);(<U1E1B>,<U1E1A>);(<U1E1D>,<U1E1C>);(<U1E1F>,<U1E1E>);/
(<U1E21>,<U1E20>);(<U1E23>,<U1E22>);(<U1E25>,<U1E24>);(<U1E27>,<U1E26>);/
(<U1E29>,<U1E28>);(<U1E2B>,<U1E2A>);(<U1E2D>,<U1E2C>);(<U1E2F>,<U1E2E>);/
(<U1E31>,<U1E30>);(<U1E33>,<U1E32>);(<U1E35>,<U1E34>);(<U1E37>,<U1E36>);/
(<U1E39>,<U1E38>);(<U1E3B>,<U1E3A>);(<U1E3D>,<U1E3C>);(<U1E3F>,<U1E3E>);/
(<U1E41>,<U1E40>);(<U1E43>,<U1E42>);(<U1E45>,<U1E44>);(<U1E47>,<U1E46>);/
(<U1E49>,<U1E48>);(<U1E4B>,<U1E4A>);(<U1E4D>,<U1E4C>);(<U1E4F>,<U1E4E>);/
(<U1E51>,<U1E50>);(<U1E53>,<U1E52>);(<U1E55>,<U1E54>);(<U1E57>,<U1E56>);/
(<U1E59>,<U1E58>);(<U1E5B>,<U1E5A>);(<U1E5D>,<U1E5C>);(<U1E5F>,<U1E5E>);/
(<U1E61>,<U1E60>);(<U1E63>,<U1E62>);(<U1E65>,<U1E64>);(<U1E67>,<U1E66>);/
(<U1E69>,<U1E68>);(<U1E6B>,<U1E6A>);(<U1E6D>,<U1E6C>);(<U1E6F>,<U1E6E>);/
(<U1E71>,<U1E70>);(<U1E73>,<U1E72>);(<U1E75>,<U1E74>);(<U1E77>,<U1E76>);/
(<U1E79>,<U1E78>);(<U1E7B>,<U1E7A>);(<U1E7D>,<U1E7C>);(<U1E7F>,<U1E7E>);/
(<U1E81>,<U1E80>);(<U1E83>,<U1E82>);(<U1E85>,<U1E84>);(<U1E87>,<U1E86>);/
(<U1E89>,<U1E88>);(<U1E8B>,<U1E8A>);(<U1E8D>,<U1E8C>);(<U1E8F>,<U1E8E>);/
(<U1E91>,<U1E90>);(<U1E93>,<U1E92>);(<U1E95>,<U1E94>);(<U1E9B>,<U1E60>);/
(<U1EA1>,<U1EA0>);(<U1EA3>,<U1EA2>);(<U1EA5>,<U1EA4>);(<U1EA7>,<U1EA6>);/
(<U1EA9>,<U1EA8>);(<U1EAB>,<U1EAA>);(<U1EAD>,<U1EAC>);(<U1EAF>,<U1EAE>);/
(<U1EB1>,<U1EB0>);(<U1EB3>,<U1EB2>);(<U1EB5>,<U1EB4>);(<U1EB7>,<U1EB6>);/
(<U1EB9>,<U1EB8>);(<U1EBB>,<U1EBA>);(<U1EBD>,<U1EBC>);(<U1EBF>,<U1EBE>);/
(<U1EC1>,<U1EC0>);(<U1EC3>,<U1EC2>);(<U1EC5>,<U1EC4>);(<U1EC7>,<U1EC6>);/
(<U1EC9>,<U1EC8>);(<U1ECB>,<U1ECA>);(<U1ECD>,<U1ECC>);(<U1ECF>,<U1ECE>);/
(<U1ED1>,<U1ED0>);(<U1ED3>,<U1ED2>);(<U1ED5>,<U1ED4>);(<U1ED7>,<U1ED6>);/
(<U1ED9>,<U1ED8>);(<U1EDB>,<U1EDA>);(<U1EDD>,<U1EDC>);(<U1EDF>,<U1EDE>);/
(<U1EE1>,<U1EE0>);(<U1EE3>,<U1EE2>);(<U1EE5>,<U1EE4>);(<U1EE7>,<U1EE6>);/
(<U1EE9>,<U1EE8>);(<U1EEB>,<U1EEA>);(<U1EED>,<U1EEC>);(<U1EEF>,<U1EEE>);/
(<U1EF1>,<U1EF0>);(<U1EF3>,<U1EF2>);(<U1EF5>,<U1EF4>);(<U1EF7>,<U1EF6>);/
(<U1EF9>,<U1EF8>);(<U1F00>,<U1F08>);(<U1F01>,<U1F09>);(<U1F02>,<U1F0A>);/
(<U1F03>,<U1F0B>);(<U1F04>,<U1F0C>);(<U1F05>,<U1F0D>);(<U1F06>,<U1F0E>);/
(<U1F07>,<U1F0F>);(<U1F10>,<U1F18>);(<U1F11>,<U1F19>);(<U1F12>,<U1F1A>);/
(<U1F13>,<U1F1B>);(<U1F14>,<U1F1C>);(<U1F15>,<U1F1D>);(<U1F20>,<U1F28>);/
(<U1F21>,<U1F29>);(<U1F22>,<U1F2A>);(<U1F23>,<U1F2B>);(<U1F24>,<U1F2C>);/
(<U1F25>,<U1F2D>);(<U1F26>,<U1F2E>);(<U1F27>,<U1F2F>);(<U1F30>,<U1F38>);/
(<U1F31>,<U1F39>);(<U1F32>,<U1F3A>);(<U1F33>,<U1F3B>);(<U1F34>,<U1F3C>);/
(<U1F35>,<U1F3D>);(<U1F36>,<U1F3E>);(<U1F37>,<U1F3F>);(<U1F40>,<U1F48>);/
(<U1F41>,<U1F49>);(<U1F42>,<U1F4A>);(<U1F43>,<U1F4B>);(<U1F44>,<U1F4C>);/
(<U1F45>,<U1F4D>);(<U1F51>,<U1F59>);(<U1F53>,<U1F5B>);(<U1F55>,<U1F5D>);/
(<U1F57>,<U1F5F>);(<U1F60>,<U1F68>);(<U1F61>,<U1F69>);(<U1F62>,<U1F6A>);/
(<U1F63>,<U1F6B>);(<U1F64>,<U1F6C>);(<U1F65>,<U1F6D>);(<U1F66>,<U1F6E>);/
(<U1F67>,<U1F6F>);(<U1F70>,<U1FBA>);(<U1F71>,<U1FBB>);(<U1F72>,<U1FC8>);/
(<U1F73>,<U1FC9>);(<U1F74>,<U1FCA>);(<U1F75>,<U1FCB>);(<U1F76>,<U1FDA>);/
(<U1F77>,<U1FDB>);(<U1F78>,<U1FF8>);(<U1F79>,<U1FF9>);(<U1F7A>,<U1FEA>);/
(<U1F7B>,<U1FEB>);(<U1F7C>,<U1FFA>);(<U1F7D>,<U1FFB>);(<U1F80>,<U1F88>);/
(<U1F81>,<U1F89>);(<U1F82>,<U1F8A>);(<U1F83>,<U1F8B>);(<U1F84>,<U1F8C>);/
(<U1F85>,<U1F8D>);(<U1F86>,<U1F8E>);(<U1F87>,<U1F8F>);(<U1F90>,<U1F98>);/
(<U1F91>,<U1F99>);(<U1F92>,<U1F9A>);(<U1F93>,<U1F9B>);(<U1F94>,<U1F9C>);/
(<U1F95>,<U1F9D>);(<U1F96>,<U1F9E>);(<U1F97>,<U1F9F>);(<U1FA0>,<U1FA8>);/
(<U1FA1>,<U1FA9>);(<U1FA2>,<U1FAA>);(<U1FA3>,<U1FAB>);(<U1FA4>,<U1FAC>);/
(<U1FA5>,<U1FAD>);(<U1FA6>,<U1FAE>);(<U1FA7>,<U1FAF>);(<U1FB0>,<U1FB8>);/
(<U1FB1>,<U1FB9>);(<U1FB3>,<U1FBC>);(<U1FBE>,<U0399>);(<U1FC3>,<U1FCC>);/
(<U1FD0>,<U1FD8>);(<U1FD1>,<U1FD9>);(<U1FE0>,<U1FE8>);(<U1FE1>,<U1FE9>);/
(<U1FE5>,<U1FEC>);(<U1FF3>,<U1FFC>);(<U2170>,<U2160>);(<U2171>,<U2161>);/
(<U2172>,<U2162>);(<U2173>,<U2163>);(<U2174>,<U2164>);(<U2175>,<U2165>);/
(<U2176>,<U2166>);(<U2177>,<U2167>);(<U2178>,<U2168>);(<U2179>,<U2169>);/
(<U217A>,<U216A>);(<U217B>,<U216B>);(<U217C>,<U216C>);(<U217D>,<U216D>);/
(<U217E>,<U216E>);(<U217F>,<U216F>);(<U24D0>,<U24B6>);(<U24D1>,<U24B7>);/
(<U24D2>,<U24B8>);(<U24D3>,<U24B9>);(<U24D4>,<U24BA>);(<U24D5>,<U24BB>);/
(<U24D6>,<U24BC>);(<U24D7>,<U24BD>);(<U24D8>,<U24BE>);(<U24D9>,<U24BF>);/
(<U24DA>,<U24C0>);(<U24DB>,<U24C1>);(<U24DC>,<U24C2>);(<U24DD>,<U24C3>);/
(<U24DE>,<U24C4>);(<U24DF>,<U24C5>);(<U24E0>,<U24C6>);(<U24E1>,<U24C7>);/
(<U24E2>,<U24C8>);(<U24E3>,<U24C9>);(<U24E4>,<U24CA>);(<U24E5>,<U24CB>);/
(<U24E6>,<U24CC>);(<U24E7>,<U24CD>);(<U24E8>,<U24CE>);(<U24E9>,<U24CF>);/
(<UFF41>,<UFF21>);(<UFF42>,<UFF22>);(<UFF43>,<UFF23>);(<UFF44>,<UFF24>);/
(<UFF45>,<UFF25>);(<UFF46>,<UFF26>);(<UFF47>,<UFF27>);(<UFF48>,<UFF28>);/
(<UFF49>,<UFF29>);(<UFF4A>,<UFF2A>);(<UFF4B>,<UFF2B>);(<UFF4C>,<UFF2C>);/
(<UFF4D>,<UFF2D>);(<UFF4E>,<UFF2E>);(<UFF4F>,<UFF2F>);(<UFF50>,<UFF30>);/
(<UFF51>,<UFF31>);(<UFF52>,<UFF32>);(<UFF53>,<UFF33>);(<UFF54>,<UFF34>);/
(<UFF55>,<UFF35>);(<UFF56>,<UFF36>);(<UFF57>,<UFF37>);(<UFF58>,<UFF38>);/
(<UFF59>,<UFF39>);(<UFF5A>,<UFF3A>)
(<U03F0>,<U039A>);(<U03F1>,<U03A1>);(<U03F2>,<U03A3>);(<U03F5>,<U0395>);/
(<U0430>,<U0410>);(<U0431>,<U0411>);(<U0432>,<U0412>);(<U0433>,<U0413>);/
(<U0434>,<U0414>);(<U0435>,<U0415>);(<U0436>,<U0416>);(<U0437>,<U0417>);/
(<U0438>,<U0418>);(<U0439>,<U0419>);(<U043A>,<U041A>);(<U043B>,<U041B>);/
(<U043C>,<U041C>);(<U043D>,<U041D>);(<U043E>,<U041E>);(<U043F>,<U041F>);/
(<U0440>,<U0420>);(<U0441>,<U0421>);(<U0442>,<U0422>);(<U0443>,<U0423>);/
(<U0444>,<U0424>);(<U0445>,<U0425>);(<U0446>,<U0426>);(<U0447>,<U0427>);/
(<U0448>,<U0428>);(<U0449>,<U0429>);(<U044A>,<U042A>);(<U044B>,<U042B>);/
(<U044C>,<U042C>);(<U044D>,<U042D>);(<U044E>,<U042E>);(<U044F>,<U042F>);/
(<U0450>,<U0400>);(<U0451>,<U0401>);(<U0452>,<U0402>);(<U0453>,<U0403>);/
(<U0454>,<U0404>);(<U0455>,<U0405>);(<U0456>,<U0406>);(<U0457>,<U0407>);/
(<U0458>,<U0408>);(<U0459>,<U0409>);(<U045A>,<U040A>);(<U045B>,<U040B>);/
(<U045C>,<U040C>);(<U045D>,<U040D>);(<U045E>,<U040E>);(<U045F>,<U040F>);/
(<U0461>,<U0460>);(<U0463>,<U0462>);(<U0465>,<U0464>);(<U0467>,<U0466>);/
(<U0469>,<U0468>);(<U046B>,<U046A>);(<U046D>,<U046C>);(<U046F>,<U046E>);/
(<U0471>,<U0470>);(<U0473>,<U0472>);(<U0475>,<U0474>);(<U0477>,<U0476>);/
(<U0479>,<U0478>);(<U047B>,<U047A>);(<U047D>,<U047C>);(<U047F>,<U047E>);/
(<U0481>,<U0480>);(<U048D>,<U048C>);(<U048F>,<U048E>);(<U0491>,<U0490>);/
(<U0493>,<U0492>);(<U0495>,<U0494>);(<U0497>,<U0496>);(<U0499>,<U0498>);/
(<U049B>,<U049A>);(<U049D>,<U049C>);(<U049F>,<U049E>);(<U04A1>,<U04A0>);/
(<U04A3>,<U04A2>);(<U04A5>,<U04A4>);(<U04A7>,<U04A6>);(<U04A9>,<U04A8>);/
(<U04AB>,<U04AA>);(<U04AD>,<U04AC>);(<U04AF>,<U04AE>);(<U04B1>,<U04B0>);/
(<U04B3>,<U04B2>);(<U04B5>,<U04B4>);(<U04B7>,<U04B6>);(<U04B9>,<U04B8>);/
(<U04BB>,<U04BA>);(<U04BD>,<U04BC>);(<U04BF>,<U04BE>);(<U04C2>,<U04C1>);/
(<U04C4>,<U04C3>);(<U04C8>,<U04C7>);(<U04CC>,<U04CB>);(<U04D1>,<U04D0>);/
(<U04D3>,<U04D2>);(<U04D5>,<U04D4>);(<U04D7>,<U04D6>);(<U04D9>,<U04D8>);/
(<U04DB>,<U04DA>);(<U04DD>,<U04DC>);(<U04DF>,<U04DE>);(<U04E1>,<U04E0>);/
(<U04E3>,<U04E2>);(<U04E5>,<U04E4>);(<U04E7>,<U04E6>);(<U04E9>,<U04E8>);/
(<U04EB>,<U04EA>);(<U04ED>,<U04EC>);(<U04EF>,<U04EE>);(<U04F1>,<U04F0>);/
(<U04F3>,<U04F2>);(<U04F5>,<U04F4>);(<U04F9>,<U04F8>);(<U0561>,<U0531>);/
(<U0562>,<U0532>);(<U0563>,<U0533>);(<U0564>,<U0534>);(<U0565>,<U0535>);/
(<U0566>,<U0536>);(<U0567>,<U0537>);(<U0568>,<U0538>);(<U0569>,<U0539>);/
(<U056A>,<U053A>);(<U056B>,<U053B>);(<U056C>,<U053C>);(<U056D>,<U053D>);/
(<U056E>,<U053E>);(<U056F>,<U053F>);(<U0570>,<U0540>);(<U0571>,<U0541>);/
(<U0572>,<U0542>);(<U0573>,<U0543>);(<U0574>,<U0544>);(<U0575>,<U0545>);/
(<U0576>,<U0546>);(<U0577>,<U0547>);(<U0578>,<U0548>);(<U0579>,<U0549>);/
(<U057A>,<U054A>);(<U057B>,<U054B>);(<U057C>,<U054C>);(<U057D>,<U054D>);/
(<U057E>,<U054E>);(<U057F>,<U054F>);(<U0580>,<U0550>);(<U0581>,<U0551>);/
(<U0582>,<U0552>);(<U0583>,<U0553>);(<U0584>,<U0554>);(<U0585>,<U0555>);/
(<U0586>,<U0556>);(<U1E01>,<U1E00>);(<U1E03>,<U1E02>);(<U1E05>,<U1E04>);/
(<U1E07>,<U1E06>);(<U1E09>,<U1E08>);(<U1E0B>,<U1E0A>);(<U1E0D>,<U1E0C>);/
(<U1E0F>,<U1E0E>);(<U1E11>,<U1E10>);(<U1E13>,<U1E12>);(<U1E15>,<U1E14>);/
(<U1E17>,<U1E16>);(<U1E19>,<U1E18>);(<U1E1B>,<U1E1A>);(<U1E1D>,<U1E1C>);/
(<U1E1F>,<U1E1E>);(<U1E21>,<U1E20>);(<U1E23>,<U1E22>);(<U1E25>,<U1E24>);/
(<U1E27>,<U1E26>);(<U1E29>,<U1E28>);(<U1E2B>,<U1E2A>);(<U1E2D>,<U1E2C>);/
(<U1E2F>,<U1E2E>);(<U1E31>,<U1E30>);(<U1E33>,<U1E32>);(<U1E35>,<U1E34>);/
(<U1E37>,<U1E36>);(<U1E39>,<U1E38>);(<U1E3B>,<U1E3A>);(<U1E3D>,<U1E3C>);/
(<U1E3F>,<U1E3E>);(<U1E41>,<U1E40>);(<U1E43>,<U1E42>);(<U1E45>,<U1E44>);/
(<U1E47>,<U1E46>);(<U1E49>,<U1E48>);(<U1E4B>,<U1E4A>);(<U1E4D>,<U1E4C>);/
(<U1E4F>,<U1E4E>);(<U1E51>,<U1E50>);(<U1E53>,<U1E52>);(<U1E55>,<U1E54>);/
(<U1E57>,<U1E56>);(<U1E59>,<U1E58>);(<U1E5B>,<U1E5A>);(<U1E5D>,<U1E5C>);/
(<U1E5F>,<U1E5E>);(<U1E61>,<U1E60>);(<U1E63>,<U1E62>);(<U1E65>,<U1E64>);/
(<U1E67>,<U1E66>);(<U1E69>,<U1E68>);(<U1E6B>,<U1E6A>);(<U1E6D>,<U1E6C>);/
(<U1E6F>,<U1E6E>);(<U1E71>,<U1E70>);(<U1E73>,<U1E72>);(<U1E75>,<U1E74>);/
(<U1E77>,<U1E76>);(<U1E79>,<U1E78>);(<U1E7B>,<U1E7A>);(<U1E7D>,<U1E7C>);/
(<U1E7F>,<U1E7E>);(<U1E81>,<U1E80>);(<U1E83>,<U1E82>);(<U1E85>,<U1E84>);/
(<U1E87>,<U1E86>);(<U1E89>,<U1E88>);(<U1E8B>,<U1E8A>);(<U1E8D>,<U1E8C>);/
(<U1E8F>,<U1E8E>);(<U1E91>,<U1E90>);(<U1E93>,<U1E92>);(<U1E95>,<U1E94>);/
(<U1E9B>,<U1E60>);(<U1EA1>,<U1EA0>);(<U1EA3>,<U1EA2>);(<U1EA5>,<U1EA4>);/
(<U1EA7>,<U1EA6>);(<U1EA9>,<U1EA8>);(<U1EAB>,<U1EAA>);(<U1EAD>,<U1EAC>);/
(<U1EAF>,<U1EAE>);(<U1EB1>,<U1EB0>);(<U1EB3>,<U1EB2>);(<U1EB5>,<U1EB4>);/
(<U1EB7>,<U1EB6>);(<U1EB9>,<U1EB8>);(<U1EBB>,<U1EBA>);(<U1EBD>,<U1EBC>);/
(<U1EBF>,<U1EBE>);(<U1EC1>,<U1EC0>);(<U1EC3>,<U1EC2>);(<U1EC5>,<U1EC4>);/
(<U1EC7>,<U1EC6>);(<U1EC9>,<U1EC8>);(<U1ECB>,<U1ECA>);(<U1ECD>,<U1ECC>);/
(<U1ECF>,<U1ECE>);(<U1ED1>,<U1ED0>);(<U1ED3>,<U1ED2>);(<U1ED5>,<U1ED4>);/
(<U1ED7>,<U1ED6>);(<U1ED9>,<U1ED8>);(<U1EDB>,<U1EDA>);(<U1EDD>,<U1EDC>);/
(<U1EDF>,<U1EDE>);(<U1EE1>,<U1EE0>);(<U1EE3>,<U1EE2>);(<U1EE5>,<U1EE4>);/
(<U1EE7>,<U1EE6>);(<U1EE9>,<U1EE8>);(<U1EEB>,<U1EEA>);(<U1EED>,<U1EEC>);/
(<U1EEF>,<U1EEE>);(<U1EF1>,<U1EF0>);(<U1EF3>,<U1EF2>);(<U1EF5>,<U1EF4>);/
(<U1EF7>,<U1EF6>);(<U1EF9>,<U1EF8>);(<U1F00>,<U1F08>);(<U1F01>,<U1F09>);/
(<U1F02>,<U1F0A>);(<U1F03>,<U1F0B>);(<U1F04>,<U1F0C>);(<U1F05>,<U1F0D>);/
(<U1F06>,<U1F0E>);(<U1F07>,<U1F0F>);(<U1F10>,<U1F18>);(<U1F11>,<U1F19>);/
(<U1F12>,<U1F1A>);(<U1F13>,<U1F1B>);(<U1F14>,<U1F1C>);(<U1F15>,<U1F1D>);/
(<U1F20>,<U1F28>);(<U1F21>,<U1F29>);(<U1F22>,<U1F2A>);(<U1F23>,<U1F2B>);/
(<U1F24>,<U1F2C>);(<U1F25>,<U1F2D>);(<U1F26>,<U1F2E>);(<U1F27>,<U1F2F>);/
(<U1F30>,<U1F38>);(<U1F31>,<U1F39>);(<U1F32>,<U1F3A>);(<U1F33>,<U1F3B>);/
(<U1F34>,<U1F3C>);(<U1F35>,<U1F3D>);(<U1F36>,<U1F3E>);(<U1F37>,<U1F3F>);/
(<U1F40>,<U1F48>);(<U1F41>,<U1F49>);(<U1F42>,<U1F4A>);(<U1F43>,<U1F4B>);/
(<U1F44>,<U1F4C>);(<U1F45>,<U1F4D>);(<U1F51>,<U1F59>);(<U1F53>,<U1F5B>);/
(<U1F55>,<U1F5D>);(<U1F57>,<U1F5F>);(<U1F60>,<U1F68>);(<U1F61>,<U1F69>);/
(<U1F62>,<U1F6A>);(<U1F63>,<U1F6B>);(<U1F64>,<U1F6C>);(<U1F65>,<U1F6D>);/
(<U1F66>,<U1F6E>);(<U1F67>,<U1F6F>);(<U1F70>,<U1FBA>);(<U1F71>,<U1FBB>);/
(<U1F72>,<U1FC8>);(<U1F73>,<U1FC9>);(<U1F74>,<U1FCA>);(<U1F75>,<U1FCB>);/
(<U1F76>,<U1FDA>);(<U1F77>,<U1FDB>);(<U1F78>,<U1FF8>);(<U1F79>,<U1FF9>);/
(<U1F7A>,<U1FEA>);(<U1F7B>,<U1FEB>);(<U1F7C>,<U1FFA>);(<U1F7D>,<U1FFB>);/
(<U1F80>,<U1F88>);(<U1F81>,<U1F89>);(<U1F82>,<U1F8A>);(<U1F83>,<U1F8B>);/
(<U1F84>,<U1F8C>);(<U1F85>,<U1F8D>);(<U1F86>,<U1F8E>);(<U1F87>,<U1F8F>);/
(<U1F90>,<U1F98>);(<U1F91>,<U1F99>);(<U1F92>,<U1F9A>);(<U1F93>,<U1F9B>);/
(<U1F94>,<U1F9C>);(<U1F95>,<U1F9D>);(<U1F96>,<U1F9E>);(<U1F97>,<U1F9F>);/
(<U1FA0>,<U1FA8>);(<U1FA1>,<U1FA9>);(<U1FA2>,<U1FAA>);(<U1FA3>,<U1FAB>);/
(<U1FA4>,<U1FAC>);(<U1FA5>,<U1FAD>);(<U1FA6>,<U1FAE>);(<U1FA7>,<U1FAF>);/
(<U1FB0>,<U1FB8>);(<U1FB1>,<U1FB9>);(<U1FB3>,<U1FBC>);(<U1FBE>,<U0399>);/
(<U1FC3>,<U1FCC>);(<U1FD0>,<U1FD8>);(<U1FD1>,<U1FD9>);(<U1FE0>,<U1FE8>);/
(<U1FE1>,<U1FE9>);(<U1FE5>,<U1FEC>);(<U1FF3>,<U1FFC>);(<U2170>,<U2160>);/
(<U2171>,<U2161>);(<U2172>,<U2162>);(<U2173>,<U2163>);(<U2174>,<U2164>);/
(<U2175>,<U2165>);(<U2176>,<U2166>);(<U2177>,<U2167>);(<U2178>,<U2168>);/
(<U2179>,<U2169>);(<U217A>,<U216A>);(<U217B>,<U216B>);(<U217C>,<U216C>);/
(<U217D>,<U216D>);(<U217E>,<U216E>);(<U217F>,<U216F>);(<U24D0>,<U24B6>);/
(<U24D1>,<U24B7>);(<U24D2>,<U24B8>);(<U24D3>,<U24B9>);(<U24D4>,<U24BA>);/
(<U24D5>,<U24BB>);(<U24D6>,<U24BC>);(<U24D7>,<U24BD>);(<U24D8>,<U24BE>);/
(<U24D9>,<U24BF>);(<U24DA>,<U24C0>);(<U24DB>,<U24C1>);(<U24DC>,<U24C2>);/
(<U24DD>,<U24C3>);(<U24DE>,<U24C4>);(<U24DF>,<U24C5>);(<U24E0>,<U24C6>);/
(<U24E1>,<U24C7>);(<U24E2>,<U24C8>);(<U24E3>,<U24C9>);(<U24E4>,<U24CA>);/
(<U24E5>,<U24CB>);(<U24E6>,<U24CC>);(<U24E7>,<U24CD>);(<U24E8>,<U24CE>);/
(<U24E9>,<U24CF>);(<UFF41>,<UFF21>);(<UFF42>,<UFF22>);(<UFF43>,<UFF23>);/
(<UFF44>,<UFF24>);(<UFF45>,<UFF25>);(<UFF46>,<UFF26>);(<UFF47>,<UFF27>);/
(<UFF48>,<UFF28>);(<UFF49>,<UFF29>);(<UFF4A>,<UFF2A>);(<UFF4B>,<UFF2B>);/
(<UFF4C>,<UFF2C>);(<UFF4D>,<UFF2D>);(<UFF4E>,<UFF2E>);(<UFF4F>,<UFF2F>);/
(<UFF50>,<UFF30>);(<UFF51>,<UFF31>);(<UFF52>,<UFF32>);(<UFF53>,<UFF33>);/
(<UFF54>,<UFF34>);(<UFF55>,<UFF35>);(<UFF56>,<UFF36>);(<UFF57>,<UFF37>);/
(<UFF58>,<UFF38>);(<UFF59>,<UFF39>);(<UFF5A>,<UFF3A>);/
(<U00010428>,<U00010400>);(<U00010429>,<U00010401>);/
(<U0001042A>,<U00010402>);(<U0001042B>,<U00010403>);/
(<U0001042C>,<U00010404>);(<U0001042D>,<U00010405>);/
(<U0001042E>,<U00010406>);(<U0001042F>,<U00010407>);/
(<U00010430>,<U00010408>);(<U00010431>,<U00010409>);/
(<U00010432>,<U0001040A>);(<U00010433>,<U0001040B>);/
(<U00010434>,<U0001040C>);(<U00010435>,<U0001040D>);/
(<U00010436>,<U0001040E>);(<U00010437>,<U0001040F>);/
(<U00010438>,<U00010410>);(<U00010439>,<U00010411>);/
(<U0001043A>,<U00010412>);(<U0001043B>,<U00010413>);/
(<U0001043C>,<U00010414>);(<U0001043D>,<U00010415>);/
(<U0001043E>,<U00010416>);(<U0001043F>,<U00010417>);/
(<U00010440>,<U00010418>);(<U00010441>,<U00010419>);/
(<U00010442>,<U0001041A>);(<U00010443>,<U0001041B>);/
(<U00010444>,<U0001041C>);(<U00010445>,<U0001041D>);/
(<U00010446>,<U0001041E>);(<U00010447>,<U0001041F>);/
(<U00010448>,<U00010420>);(<U00010449>,<U00010421>);/
(<U0001044A>,<U00010422>);(<U0001044B>,<U00010423>);/
(<U0001044C>,<U00010424>);(<U0001044D>,<U00010425>)
tolower /
(<U0041>,<U0061>);(<U0042>,<U0062>);(<U0043>,<U0063>);(<U0044>,<U0064>);/
@ -858,116 +944,135 @@ tolower /
(<U03AB>,<U03CB>);(<U03DA>,<U03DB>);(<U03DC>,<U03DD>);(<U03DE>,<U03DF>);/
(<U03E0>,<U03E1>);(<U03E2>,<U03E3>);(<U03E4>,<U03E5>);(<U03E6>,<U03E7>);/
(<U03E8>,<U03E9>);(<U03EA>,<U03EB>);(<U03EC>,<U03ED>);(<U03EE>,<U03EF>);/
(<U0400>,<U0450>);(<U0401>,<U0451>);(<U0402>,<U0452>);(<U0403>,<U0453>);/
(<U0404>,<U0454>);(<U0405>,<U0455>);(<U0406>,<U0456>);(<U0407>,<U0457>);/
(<U0408>,<U0458>);(<U0409>,<U0459>);(<U040A>,<U045A>);(<U040B>,<U045B>);/
(<U040C>,<U045C>);(<U040D>,<U045D>);(<U040E>,<U045E>);(<U040F>,<U045F>);/
(<U0410>,<U0430>);(<U0411>,<U0431>);(<U0412>,<U0432>);(<U0413>,<U0433>);/
(<U0414>,<U0434>);(<U0415>,<U0435>);(<U0416>,<U0436>);(<U0417>,<U0437>);/
(<U0418>,<U0438>);(<U0419>,<U0439>);(<U041A>,<U043A>);(<U041B>,<U043B>);/
(<U041C>,<U043C>);(<U041D>,<U043D>);(<U041E>,<U043E>);(<U041F>,<U043F>);/
(<U0420>,<U0440>);(<U0421>,<U0441>);(<U0422>,<U0442>);(<U0423>,<U0443>);/
(<U0424>,<U0444>);(<U0425>,<U0445>);(<U0426>,<U0446>);(<U0427>,<U0447>);/
(<U0428>,<U0448>);(<U0429>,<U0449>);(<U042A>,<U044A>);(<U042B>,<U044B>);/
(<U042C>,<U044C>);(<U042D>,<U044D>);(<U042E>,<U044E>);(<U042F>,<U044F>);/
(<U0460>,<U0461>);(<U0462>,<U0463>);(<U0464>,<U0465>);(<U0466>,<U0467>);/
(<U0468>,<U0469>);(<U046A>,<U046B>);(<U046C>,<U046D>);(<U046E>,<U046F>);/
(<U0470>,<U0471>);(<U0472>,<U0473>);(<U0474>,<U0475>);(<U0476>,<U0477>);/
(<U0478>,<U0479>);(<U047A>,<U047B>);(<U047C>,<U047D>);(<U047E>,<U047F>);/
(<U0480>,<U0481>);(<U048C>,<U048D>);(<U048E>,<U048F>);(<U0490>,<U0491>);/
(<U0492>,<U0493>);(<U0494>,<U0495>);(<U0496>,<U0497>);(<U0498>,<U0499>);/
(<U049A>,<U049B>);(<U049C>,<U049D>);(<U049E>,<U049F>);(<U04A0>,<U04A1>);/
(<U04A2>,<U04A3>);(<U04A4>,<U04A5>);(<U04A6>,<U04A7>);(<U04A8>,<U04A9>);/
(<U04AA>,<U04AB>);(<U04AC>,<U04AD>);(<U04AE>,<U04AF>);(<U04B0>,<U04B1>);/
(<U04B2>,<U04B3>);(<U04B4>,<U04B5>);(<U04B6>,<U04B7>);(<U04B8>,<U04B9>);/
(<U04BA>,<U04BB>);(<U04BC>,<U04BD>);(<U04BE>,<U04BF>);(<U04C1>,<U04C2>);/
(<U04C3>,<U04C4>);(<U04C7>,<U04C8>);(<U04CB>,<U04CC>);(<U04D0>,<U04D1>);/
(<U04D2>,<U04D3>);(<U04D4>,<U04D5>);(<U04D6>,<U04D7>);(<U04D8>,<U04D9>);/
(<U04DA>,<U04DB>);(<U04DC>,<U04DD>);(<U04DE>,<U04DF>);(<U04E0>,<U04E1>);/
(<U04E2>,<U04E3>);(<U04E4>,<U04E5>);(<U04E6>,<U04E7>);(<U04E8>,<U04E9>);/
(<U04EA>,<U04EB>);(<U04EC>,<U04ED>);(<U04EE>,<U04EF>);(<U04F0>,<U04F1>);/
(<U04F2>,<U04F3>);(<U04F4>,<U04F5>);(<U04F8>,<U04F9>);(<U0531>,<U0561>);/
(<U0532>,<U0562>);(<U0533>,<U0563>);(<U0534>,<U0564>);(<U0535>,<U0565>);/
(<U0536>,<U0566>);(<U0537>,<U0567>);(<U0538>,<U0568>);(<U0539>,<U0569>);/
(<U053A>,<U056A>);(<U053B>,<U056B>);(<U053C>,<U056C>);(<U053D>,<U056D>);/
(<U053E>,<U056E>);(<U053F>,<U056F>);(<U0540>,<U0570>);(<U0541>,<U0571>);/
(<U0542>,<U0572>);(<U0543>,<U0573>);(<U0544>,<U0574>);(<U0545>,<U0575>);/
(<U0546>,<U0576>);(<U0547>,<U0577>);(<U0548>,<U0578>);(<U0549>,<U0579>);/
(<U054A>,<U057A>);(<U054B>,<U057B>);(<U054C>,<U057C>);(<U054D>,<U057D>);/
(<U054E>,<U057E>);(<U054F>,<U057F>);(<U0550>,<U0580>);(<U0551>,<U0581>);/
(<U0552>,<U0582>);(<U0553>,<U0583>);(<U0554>,<U0584>);(<U0555>,<U0585>);/
(<U0556>,<U0586>);(<U1E00>,<U1E01>);(<U1E02>,<U1E03>);(<U1E04>,<U1E05>);/
(<U1E06>,<U1E07>);(<U1E08>,<U1E09>);(<U1E0A>,<U1E0B>);(<U1E0C>,<U1E0D>);/
(<U1E0E>,<U1E0F>);(<U1E10>,<U1E11>);(<U1E12>,<U1E13>);(<U1E14>,<U1E15>);/
(<U1E16>,<U1E17>);(<U1E18>,<U1E19>);(<U1E1A>,<U1E1B>);(<U1E1C>,<U1E1D>);/
(<U1E1E>,<U1E1F>);(<U1E20>,<U1E21>);(<U1E22>,<U1E23>);(<U1E24>,<U1E25>);/
(<U1E26>,<U1E27>);(<U1E28>,<U1E29>);(<U1E2A>,<U1E2B>);(<U1E2C>,<U1E2D>);/
(<U1E2E>,<U1E2F>);(<U1E30>,<U1E31>);(<U1E32>,<U1E33>);(<U1E34>,<U1E35>);/
(<U1E36>,<U1E37>);(<U1E38>,<U1E39>);(<U1E3A>,<U1E3B>);(<U1E3C>,<U1E3D>);/
(<U1E3E>,<U1E3F>);(<U1E40>,<U1E41>);(<U1E42>,<U1E43>);(<U1E44>,<U1E45>);/
(<U1E46>,<U1E47>);(<U1E48>,<U1E49>);(<U1E4A>,<U1E4B>);(<U1E4C>,<U1E4D>);/
(<U1E4E>,<U1E4F>);(<U1E50>,<U1E51>);(<U1E52>,<U1E53>);(<U1E54>,<U1E55>);/
(<U1E56>,<U1E57>);(<U1E58>,<U1E59>);(<U1E5A>,<U1E5B>);(<U1E5C>,<U1E5D>);/
(<U1E5E>,<U1E5F>);(<U1E60>,<U1E61>);(<U1E62>,<U1E63>);(<U1E64>,<U1E65>);/
(<U1E66>,<U1E67>);(<U1E68>,<U1E69>);(<U1E6A>,<U1E6B>);(<U1E6C>,<U1E6D>);/
(<U1E6E>,<U1E6F>);(<U1E70>,<U1E71>);(<U1E72>,<U1E73>);(<U1E74>,<U1E75>);/
(<U1E76>,<U1E77>);(<U1E78>,<U1E79>);(<U1E7A>,<U1E7B>);(<U1E7C>,<U1E7D>);/
(<U1E7E>,<U1E7F>);(<U1E80>,<U1E81>);(<U1E82>,<U1E83>);(<U1E84>,<U1E85>);/
(<U1E86>,<U1E87>);(<U1E88>,<U1E89>);(<U1E8A>,<U1E8B>);(<U1E8C>,<U1E8D>);/
(<U1E8E>,<U1E8F>);(<U1E90>,<U1E91>);(<U1E92>,<U1E93>);(<U1E94>,<U1E95>);/
(<U1EA0>,<U1EA1>);(<U1EA2>,<U1EA3>);(<U1EA4>,<U1EA5>);(<U1EA6>,<U1EA7>);/
(<U1EA8>,<U1EA9>);(<U1EAA>,<U1EAB>);(<U1EAC>,<U1EAD>);(<U1EAE>,<U1EAF>);/
(<U1EB0>,<U1EB1>);(<U1EB2>,<U1EB3>);(<U1EB4>,<U1EB5>);(<U1EB6>,<U1EB7>);/
(<U1EB8>,<U1EB9>);(<U1EBA>,<U1EBB>);(<U1EBC>,<U1EBD>);(<U1EBE>,<U1EBF>);/
(<U1EC0>,<U1EC1>);(<U1EC2>,<U1EC3>);(<U1EC4>,<U1EC5>);(<U1EC6>,<U1EC7>);/
(<U1EC8>,<U1EC9>);(<U1ECA>,<U1ECB>);(<U1ECC>,<U1ECD>);(<U1ECE>,<U1ECF>);/
(<U1ED0>,<U1ED1>);(<U1ED2>,<U1ED3>);(<U1ED4>,<U1ED5>);(<U1ED6>,<U1ED7>);/
(<U1ED8>,<U1ED9>);(<U1EDA>,<U1EDB>);(<U1EDC>,<U1EDD>);(<U1EDE>,<U1EDF>);/
(<U1EE0>,<U1EE1>);(<U1EE2>,<U1EE3>);(<U1EE4>,<U1EE5>);(<U1EE6>,<U1EE7>);/
(<U1EE8>,<U1EE9>);(<U1EEA>,<U1EEB>);(<U1EEC>,<U1EED>);(<U1EEE>,<U1EEF>);/
(<U1EF0>,<U1EF1>);(<U1EF2>,<U1EF3>);(<U1EF4>,<U1EF5>);(<U1EF6>,<U1EF7>);/
(<U1EF8>,<U1EF9>);(<U1F08>,<U1F00>);(<U1F09>,<U1F01>);(<U1F0A>,<U1F02>);/
(<U1F0B>,<U1F03>);(<U1F0C>,<U1F04>);(<U1F0D>,<U1F05>);(<U1F0E>,<U1F06>);/
(<U1F0F>,<U1F07>);(<U1F18>,<U1F10>);(<U1F19>,<U1F11>);(<U1F1A>,<U1F12>);/
(<U1F1B>,<U1F13>);(<U1F1C>,<U1F14>);(<U1F1D>,<U1F15>);(<U1F28>,<U1F20>);/
(<U1F29>,<U1F21>);(<U1F2A>,<U1F22>);(<U1F2B>,<U1F23>);(<U1F2C>,<U1F24>);/
(<U1F2D>,<U1F25>);(<U1F2E>,<U1F26>);(<U1F2F>,<U1F27>);(<U1F38>,<U1F30>);/
(<U1F39>,<U1F31>);(<U1F3A>,<U1F32>);(<U1F3B>,<U1F33>);(<U1F3C>,<U1F34>);/
(<U1F3D>,<U1F35>);(<U1F3E>,<U1F36>);(<U1F3F>,<U1F37>);(<U1F48>,<U1F40>);/
(<U1F49>,<U1F41>);(<U1F4A>,<U1F42>);(<U1F4B>,<U1F43>);(<U1F4C>,<U1F44>);/
(<U1F4D>,<U1F45>);(<U1F59>,<U1F51>);(<U1F5B>,<U1F53>);(<U1F5D>,<U1F55>);/
(<U1F5F>,<U1F57>);(<U1F68>,<U1F60>);(<U1F69>,<U1F61>);(<U1F6A>,<U1F62>);/
(<U1F6B>,<U1F63>);(<U1F6C>,<U1F64>);(<U1F6D>,<U1F65>);(<U1F6E>,<U1F66>);/
(<U1F6F>,<U1F67>);(<U1F88>,<U1F80>);(<U1F89>,<U1F81>);(<U1F8A>,<U1F82>);/
(<U1F8B>,<U1F83>);(<U1F8C>,<U1F84>);(<U1F8D>,<U1F85>);(<U1F8E>,<U1F86>);/
(<U1F8F>,<U1F87>);(<U1F98>,<U1F90>);(<U1F99>,<U1F91>);(<U1F9A>,<U1F92>);/
(<U1F9B>,<U1F93>);(<U1F9C>,<U1F94>);(<U1F9D>,<U1F95>);(<U1F9E>,<U1F96>);/
(<U1F9F>,<U1F97>);(<U1FA8>,<U1FA0>);(<U1FA9>,<U1FA1>);(<U1FAA>,<U1FA2>);/
(<U1FAB>,<U1FA3>);(<U1FAC>,<U1FA4>);(<U1FAD>,<U1FA5>);(<U1FAE>,<U1FA6>);/
(<U1FAF>,<U1FA7>);(<U1FB8>,<U1FB0>);(<U1FB9>,<U1FB1>);(<U1FBA>,<U1F70>);/
(<U1FBB>,<U1F71>);(<U1FBC>,<U1FB3>);(<U1FC8>,<U1F72>);(<U1FC9>,<U1F73>);/
(<U1FCA>,<U1F74>);(<U1FCB>,<U1F75>);(<U1FCC>,<U1FC3>);(<U1FD8>,<U1FD0>);/
(<U1FD9>,<U1FD1>);(<U1FDA>,<U1F76>);(<U1FDB>,<U1F77>);(<U1FE8>,<U1FE0>);/
(<U1FE9>,<U1FE1>);(<U1FEA>,<U1F7A>);(<U1FEB>,<U1F7B>);(<U1FEC>,<U1FE5>);/
(<U1FF8>,<U1F78>);(<U1FF9>,<U1F79>);(<U1FFA>,<U1F7C>);(<U1FFB>,<U1F7D>);/
(<U1FFC>,<U1FF3>);(<U2126>,<U03C9>);(<U212A>,<U006B>);(<U212B>,<U00E5>);/
(<U2160>,<U2170>);(<U2161>,<U2171>);(<U2162>,<U2172>);(<U2163>,<U2173>);/
(<U2164>,<U2174>);(<U2165>,<U2175>);(<U2166>,<U2176>);(<U2167>,<U2177>);/
(<U2168>,<U2178>);(<U2169>,<U2179>);(<U216A>,<U217A>);(<U216B>,<U217B>);/
(<U216C>,<U217C>);(<U216D>,<U217D>);(<U216E>,<U217E>);(<U216F>,<U217F>);/
(<U24B6>,<U24D0>);(<U24B7>,<U24D1>);(<U24B8>,<U24D2>);(<U24B9>,<U24D3>);/
(<U24BA>,<U24D4>);(<U24BB>,<U24D5>);(<U24BC>,<U24D6>);(<U24BD>,<U24D7>);/
(<U24BE>,<U24D8>);(<U24BF>,<U24D9>);(<U24C0>,<U24DA>);(<U24C1>,<U24DB>);/
(<U24C2>,<U24DC>);(<U24C3>,<U24DD>);(<U24C4>,<U24DE>);(<U24C5>,<U24DF>);/
(<U24C6>,<U24E0>);(<U24C7>,<U24E1>);(<U24C8>,<U24E2>);(<U24C9>,<U24E3>);/
(<U24CA>,<U24E4>);(<U24CB>,<U24E5>);(<U24CC>,<U24E6>);(<U24CD>,<U24E7>);/
(<U24CE>,<U24E8>);(<U24CF>,<U24E9>);(<UFF21>,<UFF41>);(<UFF22>,<UFF42>);/
(<UFF23>,<UFF43>);(<UFF24>,<UFF44>);(<UFF25>,<UFF45>);(<UFF26>,<UFF46>);/
(<UFF27>,<UFF47>);(<UFF28>,<UFF48>);(<UFF29>,<UFF49>);(<UFF2A>,<UFF4A>);/
(<UFF2B>,<UFF4B>);(<UFF2C>,<UFF4C>);(<UFF2D>,<UFF4D>);(<UFF2E>,<UFF4E>);/
(<UFF2F>,<UFF4F>);(<UFF30>,<UFF50>);(<UFF31>,<UFF51>);(<UFF32>,<UFF52>);/
(<UFF33>,<UFF53>);(<UFF34>,<UFF54>);(<UFF35>,<UFF55>);(<UFF36>,<UFF56>);/
(<UFF37>,<UFF57>);(<UFF38>,<UFF58>);(<UFF39>,<UFF59>);(<UFF3A>,<UFF5A>)
(<U03F4>,<U03B8>);(<U0400>,<U0450>);(<U0401>,<U0451>);(<U0402>,<U0452>);/
(<U0403>,<U0453>);(<U0404>,<U0454>);(<U0405>,<U0455>);(<U0406>,<U0456>);/
(<U0407>,<U0457>);(<U0408>,<U0458>);(<U0409>,<U0459>);(<U040A>,<U045A>);/
(<U040B>,<U045B>);(<U040C>,<U045C>);(<U040D>,<U045D>);(<U040E>,<U045E>);/
(<U040F>,<U045F>);(<U0410>,<U0430>);(<U0411>,<U0431>);(<U0412>,<U0432>);/
(<U0413>,<U0433>);(<U0414>,<U0434>);(<U0415>,<U0435>);(<U0416>,<U0436>);/
(<U0417>,<U0437>);(<U0418>,<U0438>);(<U0419>,<U0439>);(<U041A>,<U043A>);/
(<U041B>,<U043B>);(<U041C>,<U043C>);(<U041D>,<U043D>);(<U041E>,<U043E>);/
(<U041F>,<U043F>);(<U0420>,<U0440>);(<U0421>,<U0441>);(<U0422>,<U0442>);/
(<U0423>,<U0443>);(<U0424>,<U0444>);(<U0425>,<U0445>);(<U0426>,<U0446>);/
(<U0427>,<U0447>);(<U0428>,<U0448>);(<U0429>,<U0449>);(<U042A>,<U044A>);/
(<U042B>,<U044B>);(<U042C>,<U044C>);(<U042D>,<U044D>);(<U042E>,<U044E>);/
(<U042F>,<U044F>);(<U0460>,<U0461>);(<U0462>,<U0463>);(<U0464>,<U0465>);/
(<U0466>,<U0467>);(<U0468>,<U0469>);(<U046A>,<U046B>);(<U046C>,<U046D>);/
(<U046E>,<U046F>);(<U0470>,<U0471>);(<U0472>,<U0473>);(<U0474>,<U0475>);/
(<U0476>,<U0477>);(<U0478>,<U0479>);(<U047A>,<U047B>);(<U047C>,<U047D>);/
(<U047E>,<U047F>);(<U0480>,<U0481>);(<U048C>,<U048D>);(<U048E>,<U048F>);/
(<U0490>,<U0491>);(<U0492>,<U0493>);(<U0494>,<U0495>);(<U0496>,<U0497>);/
(<U0498>,<U0499>);(<U049A>,<U049B>);(<U049C>,<U049D>);(<U049E>,<U049F>);/
(<U04A0>,<U04A1>);(<U04A2>,<U04A3>);(<U04A4>,<U04A5>);(<U04A6>,<U04A7>);/
(<U04A8>,<U04A9>);(<U04AA>,<U04AB>);(<U04AC>,<U04AD>);(<U04AE>,<U04AF>);/
(<U04B0>,<U04B1>);(<U04B2>,<U04B3>);(<U04B4>,<U04B5>);(<U04B6>,<U04B7>);/
(<U04B8>,<U04B9>);(<U04BA>,<U04BB>);(<U04BC>,<U04BD>);(<U04BE>,<U04BF>);/
(<U04C1>,<U04C2>);(<U04C3>,<U04C4>);(<U04C7>,<U04C8>);(<U04CB>,<U04CC>);/
(<U04D0>,<U04D1>);(<U04D2>,<U04D3>);(<U04D4>,<U04D5>);(<U04D6>,<U04D7>);/
(<U04D8>,<U04D9>);(<U04DA>,<U04DB>);(<U04DC>,<U04DD>);(<U04DE>,<U04DF>);/
(<U04E0>,<U04E1>);(<U04E2>,<U04E3>);(<U04E4>,<U04E5>);(<U04E6>,<U04E7>);/
(<U04E8>,<U04E9>);(<U04EA>,<U04EB>);(<U04EC>,<U04ED>);(<U04EE>,<U04EF>);/
(<U04F0>,<U04F1>);(<U04F2>,<U04F3>);(<U04F4>,<U04F5>);(<U04F8>,<U04F9>);/
(<U0531>,<U0561>);(<U0532>,<U0562>);(<U0533>,<U0563>);(<U0534>,<U0564>);/
(<U0535>,<U0565>);(<U0536>,<U0566>);(<U0537>,<U0567>);(<U0538>,<U0568>);/
(<U0539>,<U0569>);(<U053A>,<U056A>);(<U053B>,<U056B>);(<U053C>,<U056C>);/
(<U053D>,<U056D>);(<U053E>,<U056E>);(<U053F>,<U056F>);(<U0540>,<U0570>);/
(<U0541>,<U0571>);(<U0542>,<U0572>);(<U0543>,<U0573>);(<U0544>,<U0574>);/
(<U0545>,<U0575>);(<U0546>,<U0576>);(<U0547>,<U0577>);(<U0548>,<U0578>);/
(<U0549>,<U0579>);(<U054A>,<U057A>);(<U054B>,<U057B>);(<U054C>,<U057C>);/
(<U054D>,<U057D>);(<U054E>,<U057E>);(<U054F>,<U057F>);(<U0550>,<U0580>);/
(<U0551>,<U0581>);(<U0552>,<U0582>);(<U0553>,<U0583>);(<U0554>,<U0584>);/
(<U0555>,<U0585>);(<U0556>,<U0586>);(<U1E00>,<U1E01>);(<U1E02>,<U1E03>);/
(<U1E04>,<U1E05>);(<U1E06>,<U1E07>);(<U1E08>,<U1E09>);(<U1E0A>,<U1E0B>);/
(<U1E0C>,<U1E0D>);(<U1E0E>,<U1E0F>);(<U1E10>,<U1E11>);(<U1E12>,<U1E13>);/
(<U1E14>,<U1E15>);(<U1E16>,<U1E17>);(<U1E18>,<U1E19>);(<U1E1A>,<U1E1B>);/
(<U1E1C>,<U1E1D>);(<U1E1E>,<U1E1F>);(<U1E20>,<U1E21>);(<U1E22>,<U1E23>);/
(<U1E24>,<U1E25>);(<U1E26>,<U1E27>);(<U1E28>,<U1E29>);(<U1E2A>,<U1E2B>);/
(<U1E2C>,<U1E2D>);(<U1E2E>,<U1E2F>);(<U1E30>,<U1E31>);(<U1E32>,<U1E33>);/
(<U1E34>,<U1E35>);(<U1E36>,<U1E37>);(<U1E38>,<U1E39>);(<U1E3A>,<U1E3B>);/
(<U1E3C>,<U1E3D>);(<U1E3E>,<U1E3F>);(<U1E40>,<U1E41>);(<U1E42>,<U1E43>);/
(<U1E44>,<U1E45>);(<U1E46>,<U1E47>);(<U1E48>,<U1E49>);(<U1E4A>,<U1E4B>);/
(<U1E4C>,<U1E4D>);(<U1E4E>,<U1E4F>);(<U1E50>,<U1E51>);(<U1E52>,<U1E53>);/
(<U1E54>,<U1E55>);(<U1E56>,<U1E57>);(<U1E58>,<U1E59>);(<U1E5A>,<U1E5B>);/
(<U1E5C>,<U1E5D>);(<U1E5E>,<U1E5F>);(<U1E60>,<U1E61>);(<U1E62>,<U1E63>);/
(<U1E64>,<U1E65>);(<U1E66>,<U1E67>);(<U1E68>,<U1E69>);(<U1E6A>,<U1E6B>);/
(<U1E6C>,<U1E6D>);(<U1E6E>,<U1E6F>);(<U1E70>,<U1E71>);(<U1E72>,<U1E73>);/
(<U1E74>,<U1E75>);(<U1E76>,<U1E77>);(<U1E78>,<U1E79>);(<U1E7A>,<U1E7B>);/
(<U1E7C>,<U1E7D>);(<U1E7E>,<U1E7F>);(<U1E80>,<U1E81>);(<U1E82>,<U1E83>);/
(<U1E84>,<U1E85>);(<U1E86>,<U1E87>);(<U1E88>,<U1E89>);(<U1E8A>,<U1E8B>);/
(<U1E8C>,<U1E8D>);(<U1E8E>,<U1E8F>);(<U1E90>,<U1E91>);(<U1E92>,<U1E93>);/
(<U1E94>,<U1E95>);(<U1EA0>,<U1EA1>);(<U1EA2>,<U1EA3>);(<U1EA4>,<U1EA5>);/
(<U1EA6>,<U1EA7>);(<U1EA8>,<U1EA9>);(<U1EAA>,<U1EAB>);(<U1EAC>,<U1EAD>);/
(<U1EAE>,<U1EAF>);(<U1EB0>,<U1EB1>);(<U1EB2>,<U1EB3>);(<U1EB4>,<U1EB5>);/
(<U1EB6>,<U1EB7>);(<U1EB8>,<U1EB9>);(<U1EBA>,<U1EBB>);(<U1EBC>,<U1EBD>);/
(<U1EBE>,<U1EBF>);(<U1EC0>,<U1EC1>);(<U1EC2>,<U1EC3>);(<U1EC4>,<U1EC5>);/
(<U1EC6>,<U1EC7>);(<U1EC8>,<U1EC9>);(<U1ECA>,<U1ECB>);(<U1ECC>,<U1ECD>);/
(<U1ECE>,<U1ECF>);(<U1ED0>,<U1ED1>);(<U1ED2>,<U1ED3>);(<U1ED4>,<U1ED5>);/
(<U1ED6>,<U1ED7>);(<U1ED8>,<U1ED9>);(<U1EDA>,<U1EDB>);(<U1EDC>,<U1EDD>);/
(<U1EDE>,<U1EDF>);(<U1EE0>,<U1EE1>);(<U1EE2>,<U1EE3>);(<U1EE4>,<U1EE5>);/
(<U1EE6>,<U1EE7>);(<U1EE8>,<U1EE9>);(<U1EEA>,<U1EEB>);(<U1EEC>,<U1EED>);/
(<U1EEE>,<U1EEF>);(<U1EF0>,<U1EF1>);(<U1EF2>,<U1EF3>);(<U1EF4>,<U1EF5>);/
(<U1EF6>,<U1EF7>);(<U1EF8>,<U1EF9>);(<U1F08>,<U1F00>);(<U1F09>,<U1F01>);/
(<U1F0A>,<U1F02>);(<U1F0B>,<U1F03>);(<U1F0C>,<U1F04>);(<U1F0D>,<U1F05>);/
(<U1F0E>,<U1F06>);(<U1F0F>,<U1F07>);(<U1F18>,<U1F10>);(<U1F19>,<U1F11>);/
(<U1F1A>,<U1F12>);(<U1F1B>,<U1F13>);(<U1F1C>,<U1F14>);(<U1F1D>,<U1F15>);/
(<U1F28>,<U1F20>);(<U1F29>,<U1F21>);(<U1F2A>,<U1F22>);(<U1F2B>,<U1F23>);/
(<U1F2C>,<U1F24>);(<U1F2D>,<U1F25>);(<U1F2E>,<U1F26>);(<U1F2F>,<U1F27>);/
(<U1F38>,<U1F30>);(<U1F39>,<U1F31>);(<U1F3A>,<U1F32>);(<U1F3B>,<U1F33>);/
(<U1F3C>,<U1F34>);(<U1F3D>,<U1F35>);(<U1F3E>,<U1F36>);(<U1F3F>,<U1F37>);/
(<U1F48>,<U1F40>);(<U1F49>,<U1F41>);(<U1F4A>,<U1F42>);(<U1F4B>,<U1F43>);/
(<U1F4C>,<U1F44>);(<U1F4D>,<U1F45>);(<U1F59>,<U1F51>);(<U1F5B>,<U1F53>);/
(<U1F5D>,<U1F55>);(<U1F5F>,<U1F57>);(<U1F68>,<U1F60>);(<U1F69>,<U1F61>);/
(<U1F6A>,<U1F62>);(<U1F6B>,<U1F63>);(<U1F6C>,<U1F64>);(<U1F6D>,<U1F65>);/
(<U1F6E>,<U1F66>);(<U1F6F>,<U1F67>);(<U1F88>,<U1F80>);(<U1F89>,<U1F81>);/
(<U1F8A>,<U1F82>);(<U1F8B>,<U1F83>);(<U1F8C>,<U1F84>);(<U1F8D>,<U1F85>);/
(<U1F8E>,<U1F86>);(<U1F8F>,<U1F87>);(<U1F98>,<U1F90>);(<U1F99>,<U1F91>);/
(<U1F9A>,<U1F92>);(<U1F9B>,<U1F93>);(<U1F9C>,<U1F94>);(<U1F9D>,<U1F95>);/
(<U1F9E>,<U1F96>);(<U1F9F>,<U1F97>);(<U1FA8>,<U1FA0>);(<U1FA9>,<U1FA1>);/
(<U1FAA>,<U1FA2>);(<U1FAB>,<U1FA3>);(<U1FAC>,<U1FA4>);(<U1FAD>,<U1FA5>);/
(<U1FAE>,<U1FA6>);(<U1FAF>,<U1FA7>);(<U1FB8>,<U1FB0>);(<U1FB9>,<U1FB1>);/
(<U1FBA>,<U1F70>);(<U1FBB>,<U1F71>);(<U1FBC>,<U1FB3>);(<U1FC8>,<U1F72>);/
(<U1FC9>,<U1F73>);(<U1FCA>,<U1F74>);(<U1FCB>,<U1F75>);(<U1FCC>,<U1FC3>);/
(<U1FD8>,<U1FD0>);(<U1FD9>,<U1FD1>);(<U1FDA>,<U1F76>);(<U1FDB>,<U1F77>);/
(<U1FE8>,<U1FE0>);(<U1FE9>,<U1FE1>);(<U1FEA>,<U1F7A>);(<U1FEB>,<U1F7B>);/
(<U1FEC>,<U1FE5>);(<U1FF8>,<U1F78>);(<U1FF9>,<U1F79>);(<U1FFA>,<U1F7C>);/
(<U1FFB>,<U1F7D>);(<U1FFC>,<U1FF3>);(<U2126>,<U03C9>);(<U212A>,<U006B>);/
(<U212B>,<U00E5>);(<U2160>,<U2170>);(<U2161>,<U2171>);(<U2162>,<U2172>);/
(<U2163>,<U2173>);(<U2164>,<U2174>);(<U2165>,<U2175>);(<U2166>,<U2176>);/
(<U2167>,<U2177>);(<U2168>,<U2178>);(<U2169>,<U2179>);(<U216A>,<U217A>);/
(<U216B>,<U217B>);(<U216C>,<U217C>);(<U216D>,<U217D>);(<U216E>,<U217E>);/
(<U216F>,<U217F>);(<U24B6>,<U24D0>);(<U24B7>,<U24D1>);(<U24B8>,<U24D2>);/
(<U24B9>,<U24D3>);(<U24BA>,<U24D4>);(<U24BB>,<U24D5>);(<U24BC>,<U24D6>);/
(<U24BD>,<U24D7>);(<U24BE>,<U24D8>);(<U24BF>,<U24D9>);(<U24C0>,<U24DA>);/
(<U24C1>,<U24DB>);(<U24C2>,<U24DC>);(<U24C3>,<U24DD>);(<U24C4>,<U24DE>);/
(<U24C5>,<U24DF>);(<U24C6>,<U24E0>);(<U24C7>,<U24E1>);(<U24C8>,<U24E2>);/
(<U24C9>,<U24E3>);(<U24CA>,<U24E4>);(<U24CB>,<U24E5>);(<U24CC>,<U24E6>);/
(<U24CD>,<U24E7>);(<U24CE>,<U24E8>);(<U24CF>,<U24E9>);(<UFF21>,<UFF41>);/
(<UFF22>,<UFF42>);(<UFF23>,<UFF43>);(<UFF24>,<UFF44>);(<UFF25>,<UFF45>);/
(<UFF26>,<UFF46>);(<UFF27>,<UFF47>);(<UFF28>,<UFF48>);(<UFF29>,<UFF49>);/
(<UFF2A>,<UFF4A>);(<UFF2B>,<UFF4B>);(<UFF2C>,<UFF4C>);(<UFF2D>,<UFF4D>);/
(<UFF2E>,<UFF4E>);(<UFF2F>,<UFF4F>);(<UFF30>,<UFF50>);(<UFF31>,<UFF51>);/
(<UFF32>,<UFF52>);(<UFF33>,<UFF53>);(<UFF34>,<UFF54>);(<UFF35>,<UFF55>);/
(<UFF36>,<UFF56>);(<UFF37>,<UFF57>);(<UFF38>,<UFF58>);(<UFF39>,<UFF59>);/
(<UFF3A>,<UFF5A>);(<U00010400>,<U00010428>);(<U00010401>,<U00010429>);/
(<U00010402>,<U0001042A>);(<U00010403>,<U0001042B>);/
(<U00010404>,<U0001042C>);(<U00010405>,<U0001042D>);/
(<U00010406>,<U0001042E>);(<U00010407>,<U0001042F>);/
(<U00010408>,<U00010430>);(<U00010409>,<U00010431>);/
(<U0001040A>,<U00010432>);(<U0001040B>,<U00010433>);/
(<U0001040C>,<U00010434>);(<U0001040D>,<U00010435>);/
(<U0001040E>,<U00010436>);(<U0001040F>,<U00010437>);/
(<U00010410>,<U00010438>);(<U00010411>,<U00010439>);/
(<U00010412>,<U0001043A>);(<U00010413>,<U0001043B>);/
(<U00010414>,<U0001043C>);(<U00010415>,<U0001043D>);/
(<U00010416>,<U0001043E>);(<U00010417>,<U0001043F>);/
(<U00010418>,<U00010440>);(<U00010419>,<U00010441>);/
(<U0001041A>,<U00010442>);(<U0001041B>,<U00010443>);/
(<U0001041C>,<U00010444>);(<U0001041D>,<U00010445>);/
(<U0001041E>,<U00010446>);(<U0001041F>,<U00010447>);/
(<U00010420>,<U00010448>);(<U00010421>,<U00010449>);/
(<U00010422>,<U0001044A>);(<U00010423>,<U0001044B>);/
(<U00010424>,<U0001044C>);(<U00010425>,<U0001044D>)
map "totitle"; /
(<U0061>,<U0041>);(<U0062>,<U0042>);(<U0063>,<U0043>);(<U0064>,<U0044>);/
@ -1036,117 +1141,136 @@ map "totitle"; /
(<U03D6>,<U03A0>);(<U03DB>,<U03DA>);(<U03DD>,<U03DC>);(<U03DF>,<U03DE>);/
(<U03E1>,<U03E0>);(<U03E3>,<U03E2>);(<U03E5>,<U03E4>);(<U03E7>,<U03E6>);/
(<U03E9>,<U03E8>);(<U03EB>,<U03EA>);(<U03ED>,<U03EC>);(<U03EF>,<U03EE>);/
(<U03F0>,<U039A>);(<U03F1>,<U03A1>);(<U03F2>,<U03A3>);(<U0430>,<U0410>);/
(<U0431>,<U0411>);(<U0432>,<U0412>);(<U0433>,<U0413>);(<U0434>,<U0414>);/
(<U0435>,<U0415>);(<U0436>,<U0416>);(<U0437>,<U0417>);(<U0438>,<U0418>);/
(<U0439>,<U0419>);(<U043A>,<U041A>);(<U043B>,<U041B>);(<U043C>,<U041C>);/
(<U043D>,<U041D>);(<U043E>,<U041E>);(<U043F>,<U041F>);(<U0440>,<U0420>);/
(<U0441>,<U0421>);(<U0442>,<U0422>);(<U0443>,<U0423>);(<U0444>,<U0424>);/
(<U0445>,<U0425>);(<U0446>,<U0426>);(<U0447>,<U0427>);(<U0448>,<U0428>);/
(<U0449>,<U0429>);(<U044A>,<U042A>);(<U044B>,<U042B>);(<U044C>,<U042C>);/
(<U044D>,<U042D>);(<U044E>,<U042E>);(<U044F>,<U042F>);(<U0450>,<U0400>);/
(<U0451>,<U0401>);(<U0452>,<U0402>);(<U0453>,<U0403>);(<U0454>,<U0404>);/
(<U0455>,<U0405>);(<U0456>,<U0406>);(<U0457>,<U0407>);(<U0458>,<U0408>);/
(<U0459>,<U0409>);(<U045A>,<U040A>);(<U045B>,<U040B>);(<U045C>,<U040C>);/
(<U045D>,<U040D>);(<U045E>,<U040E>);(<U045F>,<U040F>);(<U0461>,<U0460>);/
(<U0463>,<U0462>);(<U0465>,<U0464>);(<U0467>,<U0466>);(<U0469>,<U0468>);/
(<U046B>,<U046A>);(<U046D>,<U046C>);(<U046F>,<U046E>);(<U0471>,<U0470>);/
(<U0473>,<U0472>);(<U0475>,<U0474>);(<U0477>,<U0476>);(<U0479>,<U0478>);/
(<U047B>,<U047A>);(<U047D>,<U047C>);(<U047F>,<U047E>);(<U0481>,<U0480>);/
(<U048D>,<U048C>);(<U048F>,<U048E>);(<U0491>,<U0490>);(<U0493>,<U0492>);/
(<U0495>,<U0494>);(<U0497>,<U0496>);(<U0499>,<U0498>);(<U049B>,<U049A>);/
(<U049D>,<U049C>);(<U049F>,<U049E>);(<U04A1>,<U04A0>);(<U04A3>,<U04A2>);/
(<U04A5>,<U04A4>);(<U04A7>,<U04A6>);(<U04A9>,<U04A8>);(<U04AB>,<U04AA>);/
(<U04AD>,<U04AC>);(<U04AF>,<U04AE>);(<U04B1>,<U04B0>);(<U04B3>,<U04B2>);/
(<U04B5>,<U04B4>);(<U04B7>,<U04B6>);(<U04B9>,<U04B8>);(<U04BB>,<U04BA>);/
(<U04BD>,<U04BC>);(<U04BF>,<U04BE>);(<U04C2>,<U04C1>);(<U04C4>,<U04C3>);/
(<U04C8>,<U04C7>);(<U04CC>,<U04CB>);(<U04D1>,<U04D0>);(<U04D3>,<U04D2>);/
(<U04D5>,<U04D4>);(<U04D7>,<U04D6>);(<U04D9>,<U04D8>);(<U04DB>,<U04DA>);/
(<U04DD>,<U04DC>);(<U04DF>,<U04DE>);(<U04E1>,<U04E0>);(<U04E3>,<U04E2>);/
(<U04E5>,<U04E4>);(<U04E7>,<U04E6>);(<U04E9>,<U04E8>);(<U04EB>,<U04EA>);/
(<U04ED>,<U04EC>);(<U04EF>,<U04EE>);(<U04F1>,<U04F0>);(<U04F3>,<U04F2>);/
(<U04F5>,<U04F4>);(<U04F9>,<U04F8>);(<U0561>,<U0531>);(<U0562>,<U0532>);/
(<U0563>,<U0533>);(<U0564>,<U0534>);(<U0565>,<U0535>);(<U0566>,<U0536>);/
(<U0567>,<U0537>);(<U0568>,<U0538>);(<U0569>,<U0539>);(<U056A>,<U053A>);/
(<U056B>,<U053B>);(<U056C>,<U053C>);(<U056D>,<U053D>);(<U056E>,<U053E>);/
(<U056F>,<U053F>);(<U0570>,<U0540>);(<U0571>,<U0541>);(<U0572>,<U0542>);/
(<U0573>,<U0543>);(<U0574>,<U0544>);(<U0575>,<U0545>);(<U0576>,<U0546>);/
(<U0577>,<U0547>);(<U0578>,<U0548>);(<U0579>,<U0549>);(<U057A>,<U054A>);/
(<U057B>,<U054B>);(<U057C>,<U054C>);(<U057D>,<U054D>);(<U057E>,<U054E>);/
(<U057F>,<U054F>);(<U0580>,<U0550>);(<U0581>,<U0551>);(<U0582>,<U0552>);/
(<U0583>,<U0553>);(<U0584>,<U0554>);(<U0585>,<U0555>);(<U0586>,<U0556>);/
(<U1E01>,<U1E00>);(<U1E03>,<U1E02>);(<U1E05>,<U1E04>);(<U1E07>,<U1E06>);/
(<U1E09>,<U1E08>);(<U1E0B>,<U1E0A>);(<U1E0D>,<U1E0C>);(<U1E0F>,<U1E0E>);/
(<U1E11>,<U1E10>);(<U1E13>,<U1E12>);(<U1E15>,<U1E14>);(<U1E17>,<U1E16>);/
(<U1E19>,<U1E18>);(<U1E1B>,<U1E1A>);(<U1E1D>,<U1E1C>);(<U1E1F>,<U1E1E>);/
(<U1E21>,<U1E20>);(<U1E23>,<U1E22>);(<U1E25>,<U1E24>);(<U1E27>,<U1E26>);/
(<U1E29>,<U1E28>);(<U1E2B>,<U1E2A>);(<U1E2D>,<U1E2C>);(<U1E2F>,<U1E2E>);/
(<U1E31>,<U1E30>);(<U1E33>,<U1E32>);(<U1E35>,<U1E34>);(<U1E37>,<U1E36>);/
(<U1E39>,<U1E38>);(<U1E3B>,<U1E3A>);(<U1E3D>,<U1E3C>);(<U1E3F>,<U1E3E>);/
(<U1E41>,<U1E40>);(<U1E43>,<U1E42>);(<U1E45>,<U1E44>);(<U1E47>,<U1E46>);/
(<U1E49>,<U1E48>);(<U1E4B>,<U1E4A>);(<U1E4D>,<U1E4C>);(<U1E4F>,<U1E4E>);/
(<U1E51>,<U1E50>);(<U1E53>,<U1E52>);(<U1E55>,<U1E54>);(<U1E57>,<U1E56>);/
(<U1E59>,<U1E58>);(<U1E5B>,<U1E5A>);(<U1E5D>,<U1E5C>);(<U1E5F>,<U1E5E>);/
(<U1E61>,<U1E60>);(<U1E63>,<U1E62>);(<U1E65>,<U1E64>);(<U1E67>,<U1E66>);/
(<U1E69>,<U1E68>);(<U1E6B>,<U1E6A>);(<U1E6D>,<U1E6C>);(<U1E6F>,<U1E6E>);/
(<U1E71>,<U1E70>);(<U1E73>,<U1E72>);(<U1E75>,<U1E74>);(<U1E77>,<U1E76>);/
(<U1E79>,<U1E78>);(<U1E7B>,<U1E7A>);(<U1E7D>,<U1E7C>);(<U1E7F>,<U1E7E>);/
(<U1E81>,<U1E80>);(<U1E83>,<U1E82>);(<U1E85>,<U1E84>);(<U1E87>,<U1E86>);/
(<U1E89>,<U1E88>);(<U1E8B>,<U1E8A>);(<U1E8D>,<U1E8C>);(<U1E8F>,<U1E8E>);/
(<U1E91>,<U1E90>);(<U1E93>,<U1E92>);(<U1E95>,<U1E94>);(<U1E9B>,<U1E60>);/
(<U1EA1>,<U1EA0>);(<U1EA3>,<U1EA2>);(<U1EA5>,<U1EA4>);(<U1EA7>,<U1EA6>);/
(<U1EA9>,<U1EA8>);(<U1EAB>,<U1EAA>);(<U1EAD>,<U1EAC>);(<U1EAF>,<U1EAE>);/
(<U1EB1>,<U1EB0>);(<U1EB3>,<U1EB2>);(<U1EB5>,<U1EB4>);(<U1EB7>,<U1EB6>);/
(<U1EB9>,<U1EB8>);(<U1EBB>,<U1EBA>);(<U1EBD>,<U1EBC>);(<U1EBF>,<U1EBE>);/
(<U1EC1>,<U1EC0>);(<U1EC3>,<U1EC2>);(<U1EC5>,<U1EC4>);(<U1EC7>,<U1EC6>);/
(<U1EC9>,<U1EC8>);(<U1ECB>,<U1ECA>);(<U1ECD>,<U1ECC>);(<U1ECF>,<U1ECE>);/
(<U1ED1>,<U1ED0>);(<U1ED3>,<U1ED2>);(<U1ED5>,<U1ED4>);(<U1ED7>,<U1ED6>);/
(<U1ED9>,<U1ED8>);(<U1EDB>,<U1EDA>);(<U1EDD>,<U1EDC>);(<U1EDF>,<U1EDE>);/
(<U1EE1>,<U1EE0>);(<U1EE3>,<U1EE2>);(<U1EE5>,<U1EE4>);(<U1EE7>,<U1EE6>);/
(<U1EE9>,<U1EE8>);(<U1EEB>,<U1EEA>);(<U1EED>,<U1EEC>);(<U1EEF>,<U1EEE>);/
(<U1EF1>,<U1EF0>);(<U1EF3>,<U1EF2>);(<U1EF5>,<U1EF4>);(<U1EF7>,<U1EF6>);/
(<U1EF9>,<U1EF8>);(<U1F00>,<U1F08>);(<U1F01>,<U1F09>);(<U1F02>,<U1F0A>);/
(<U1F03>,<U1F0B>);(<U1F04>,<U1F0C>);(<U1F05>,<U1F0D>);(<U1F06>,<U1F0E>);/
(<U1F07>,<U1F0F>);(<U1F10>,<U1F18>);(<U1F11>,<U1F19>);(<U1F12>,<U1F1A>);/
(<U1F13>,<U1F1B>);(<U1F14>,<U1F1C>);(<U1F15>,<U1F1D>);(<U1F20>,<U1F28>);/
(<U1F21>,<U1F29>);(<U1F22>,<U1F2A>);(<U1F23>,<U1F2B>);(<U1F24>,<U1F2C>);/
(<U1F25>,<U1F2D>);(<U1F26>,<U1F2E>);(<U1F27>,<U1F2F>);(<U1F30>,<U1F38>);/
(<U1F31>,<U1F39>);(<U1F32>,<U1F3A>);(<U1F33>,<U1F3B>);(<U1F34>,<U1F3C>);/
(<U1F35>,<U1F3D>);(<U1F36>,<U1F3E>);(<U1F37>,<U1F3F>);(<U1F40>,<U1F48>);/
(<U1F41>,<U1F49>);(<U1F42>,<U1F4A>);(<U1F43>,<U1F4B>);(<U1F44>,<U1F4C>);/
(<U1F45>,<U1F4D>);(<U1F51>,<U1F59>);(<U1F53>,<U1F5B>);(<U1F55>,<U1F5D>);/
(<U1F57>,<U1F5F>);(<U1F60>,<U1F68>);(<U1F61>,<U1F69>);(<U1F62>,<U1F6A>);/
(<U1F63>,<U1F6B>);(<U1F64>,<U1F6C>);(<U1F65>,<U1F6D>);(<U1F66>,<U1F6E>);/
(<U1F67>,<U1F6F>);(<U1F70>,<U1FBA>);(<U1F71>,<U1FBB>);(<U1F72>,<U1FC8>);/
(<U1F73>,<U1FC9>);(<U1F74>,<U1FCA>);(<U1F75>,<U1FCB>);(<U1F76>,<U1FDA>);/
(<U1F77>,<U1FDB>);(<U1F78>,<U1FF8>);(<U1F79>,<U1FF9>);(<U1F7A>,<U1FEA>);/
(<U1F7B>,<U1FEB>);(<U1F7C>,<U1FFA>);(<U1F7D>,<U1FFB>);(<U1F80>,<U1F88>);/
(<U1F81>,<U1F89>);(<U1F82>,<U1F8A>);(<U1F83>,<U1F8B>);(<U1F84>,<U1F8C>);/
(<U1F85>,<U1F8D>);(<U1F86>,<U1F8E>);(<U1F87>,<U1F8F>);(<U1F90>,<U1F98>);/
(<U1F91>,<U1F99>);(<U1F92>,<U1F9A>);(<U1F93>,<U1F9B>);(<U1F94>,<U1F9C>);/
(<U1F95>,<U1F9D>);(<U1F96>,<U1F9E>);(<U1F97>,<U1F9F>);(<U1FA0>,<U1FA8>);/
(<U1FA1>,<U1FA9>);(<U1FA2>,<U1FAA>);(<U1FA3>,<U1FAB>);(<U1FA4>,<U1FAC>);/
(<U1FA5>,<U1FAD>);(<U1FA6>,<U1FAE>);(<U1FA7>,<U1FAF>);(<U1FB0>,<U1FB8>);/
(<U1FB1>,<U1FB9>);(<U1FB3>,<U1FBC>);(<U1FBE>,<U0399>);(<U1FC3>,<U1FCC>);/
(<U1FD0>,<U1FD8>);(<U1FD1>,<U1FD9>);(<U1FE0>,<U1FE8>);(<U1FE1>,<U1FE9>);/
(<U1FE5>,<U1FEC>);(<U1FF3>,<U1FFC>);(<U2170>,<U2160>);(<U2171>,<U2161>);/
(<U2172>,<U2162>);(<U2173>,<U2163>);(<U2174>,<U2164>);(<U2175>,<U2165>);/
(<U2176>,<U2166>);(<U2177>,<U2167>);(<U2178>,<U2168>);(<U2179>,<U2169>);/
(<U217A>,<U216A>);(<U217B>,<U216B>);(<U217C>,<U216C>);(<U217D>,<U216D>);/
(<U217E>,<U216E>);(<U217F>,<U216F>);(<U24D0>,<U24B6>);(<U24D1>,<U24B7>);/
(<U24D2>,<U24B8>);(<U24D3>,<U24B9>);(<U24D4>,<U24BA>);(<U24D5>,<U24BB>);/
(<U24D6>,<U24BC>);(<U24D7>,<U24BD>);(<U24D8>,<U24BE>);(<U24D9>,<U24BF>);/
(<U24DA>,<U24C0>);(<U24DB>,<U24C1>);(<U24DC>,<U24C2>);(<U24DD>,<U24C3>);/
(<U24DE>,<U24C4>);(<U24DF>,<U24C5>);(<U24E0>,<U24C6>);(<U24E1>,<U24C7>);/
(<U24E2>,<U24C8>);(<U24E3>,<U24C9>);(<U24E4>,<U24CA>);(<U24E5>,<U24CB>);/
(<U24E6>,<U24CC>);(<U24E7>,<U24CD>);(<U24E8>,<U24CE>);(<U24E9>,<U24CF>);/
(<UFF41>,<UFF21>);(<UFF42>,<UFF22>);(<UFF43>,<UFF23>);(<UFF44>,<UFF24>);/
(<UFF45>,<UFF25>);(<UFF46>,<UFF26>);(<UFF47>,<UFF27>);(<UFF48>,<UFF28>);/
(<UFF49>,<UFF29>);(<UFF4A>,<UFF2A>);(<UFF4B>,<UFF2B>);(<UFF4C>,<UFF2C>);/
(<UFF4D>,<UFF2D>);(<UFF4E>,<UFF2E>);(<UFF4F>,<UFF2F>);(<UFF50>,<UFF30>);/
(<UFF51>,<UFF31>);(<UFF52>,<UFF32>);(<UFF53>,<UFF33>);(<UFF54>,<UFF34>);/
(<UFF55>,<UFF35>);(<UFF56>,<UFF36>);(<UFF57>,<UFF37>);(<UFF58>,<UFF38>);/
(<UFF59>,<UFF39>);(<UFF5A>,<UFF3A>)
(<U03F0>,<U039A>);(<U03F1>,<U03A1>);(<U03F2>,<U03A3>);(<U03F5>,<U0395>);/
(<U0430>,<U0410>);(<U0431>,<U0411>);(<U0432>,<U0412>);(<U0433>,<U0413>);/
(<U0434>,<U0414>);(<U0435>,<U0415>);(<U0436>,<U0416>);(<U0437>,<U0417>);/
(<U0438>,<U0418>);(<U0439>,<U0419>);(<U043A>,<U041A>);(<U043B>,<U041B>);/
(<U043C>,<U041C>);(<U043D>,<U041D>);(<U043E>,<U041E>);(<U043F>,<U041F>);/
(<U0440>,<U0420>);(<U0441>,<U0421>);(<U0442>,<U0422>);(<U0443>,<U0423>);/
(<U0444>,<U0424>);(<U0445>,<U0425>);(<U0446>,<U0426>);(<U0447>,<U0427>);/
(<U0448>,<U0428>);(<U0449>,<U0429>);(<U044A>,<U042A>);(<U044B>,<U042B>);/
(<U044C>,<U042C>);(<U044D>,<U042D>);(<U044E>,<U042E>);(<U044F>,<U042F>);/
(<U0450>,<U0400>);(<U0451>,<U0401>);(<U0452>,<U0402>);(<U0453>,<U0403>);/
(<U0454>,<U0404>);(<U0455>,<U0405>);(<U0456>,<U0406>);(<U0457>,<U0407>);/
(<U0458>,<U0408>);(<U0459>,<U0409>);(<U045A>,<U040A>);(<U045B>,<U040B>);/
(<U045C>,<U040C>);(<U045D>,<U040D>);(<U045E>,<U040E>);(<U045F>,<U040F>);/
(<U0461>,<U0460>);(<U0463>,<U0462>);(<U0465>,<U0464>);(<U0467>,<U0466>);/
(<U0469>,<U0468>);(<U046B>,<U046A>);(<U046D>,<U046C>);(<U046F>,<U046E>);/
(<U0471>,<U0470>);(<U0473>,<U0472>);(<U0475>,<U0474>);(<U0477>,<U0476>);/
(<U0479>,<U0478>);(<U047B>,<U047A>);(<U047D>,<U047C>);(<U047F>,<U047E>);/
(<U0481>,<U0480>);(<U048D>,<U048C>);(<U048F>,<U048E>);(<U0491>,<U0490>);/
(<U0493>,<U0492>);(<U0495>,<U0494>);(<U0497>,<U0496>);(<U0499>,<U0498>);/
(<U049B>,<U049A>);(<U049D>,<U049C>);(<U049F>,<U049E>);(<U04A1>,<U04A0>);/
(<U04A3>,<U04A2>);(<U04A5>,<U04A4>);(<U04A7>,<U04A6>);(<U04A9>,<U04A8>);/
(<U04AB>,<U04AA>);(<U04AD>,<U04AC>);(<U04AF>,<U04AE>);(<U04B1>,<U04B0>);/
(<U04B3>,<U04B2>);(<U04B5>,<U04B4>);(<U04B7>,<U04B6>);(<U04B9>,<U04B8>);/
(<U04BB>,<U04BA>);(<U04BD>,<U04BC>);(<U04BF>,<U04BE>);(<U04C2>,<U04C1>);/
(<U04C4>,<U04C3>);(<U04C8>,<U04C7>);(<U04CC>,<U04CB>);(<U04D1>,<U04D0>);/
(<U04D3>,<U04D2>);(<U04D5>,<U04D4>);(<U04D7>,<U04D6>);(<U04D9>,<U04D8>);/
(<U04DB>,<U04DA>);(<U04DD>,<U04DC>);(<U04DF>,<U04DE>);(<U04E1>,<U04E0>);/
(<U04E3>,<U04E2>);(<U04E5>,<U04E4>);(<U04E7>,<U04E6>);(<U04E9>,<U04E8>);/
(<U04EB>,<U04EA>);(<U04ED>,<U04EC>);(<U04EF>,<U04EE>);(<U04F1>,<U04F0>);/
(<U04F3>,<U04F2>);(<U04F5>,<U04F4>);(<U04F9>,<U04F8>);(<U0561>,<U0531>);/
(<U0562>,<U0532>);(<U0563>,<U0533>);(<U0564>,<U0534>);(<U0565>,<U0535>);/
(<U0566>,<U0536>);(<U0567>,<U0537>);(<U0568>,<U0538>);(<U0569>,<U0539>);/
(<U056A>,<U053A>);(<U056B>,<U053B>);(<U056C>,<U053C>);(<U056D>,<U053D>);/
(<U056E>,<U053E>);(<U056F>,<U053F>);(<U0570>,<U0540>);(<U0571>,<U0541>);/
(<U0572>,<U0542>);(<U0573>,<U0543>);(<U0574>,<U0544>);(<U0575>,<U0545>);/
(<U0576>,<U0546>);(<U0577>,<U0547>);(<U0578>,<U0548>);(<U0579>,<U0549>);/
(<U057A>,<U054A>);(<U057B>,<U054B>);(<U057C>,<U054C>);(<U057D>,<U054D>);/
(<U057E>,<U054E>);(<U057F>,<U054F>);(<U0580>,<U0550>);(<U0581>,<U0551>);/
(<U0582>,<U0552>);(<U0583>,<U0553>);(<U0584>,<U0554>);(<U0585>,<U0555>);/
(<U0586>,<U0556>);(<U1E01>,<U1E00>);(<U1E03>,<U1E02>);(<U1E05>,<U1E04>);/
(<U1E07>,<U1E06>);(<U1E09>,<U1E08>);(<U1E0B>,<U1E0A>);(<U1E0D>,<U1E0C>);/
(<U1E0F>,<U1E0E>);(<U1E11>,<U1E10>);(<U1E13>,<U1E12>);(<U1E15>,<U1E14>);/
(<U1E17>,<U1E16>);(<U1E19>,<U1E18>);(<U1E1B>,<U1E1A>);(<U1E1D>,<U1E1C>);/
(<U1E1F>,<U1E1E>);(<U1E21>,<U1E20>);(<U1E23>,<U1E22>);(<U1E25>,<U1E24>);/
(<U1E27>,<U1E26>);(<U1E29>,<U1E28>);(<U1E2B>,<U1E2A>);(<U1E2D>,<U1E2C>);/
(<U1E2F>,<U1E2E>);(<U1E31>,<U1E30>);(<U1E33>,<U1E32>);(<U1E35>,<U1E34>);/
(<U1E37>,<U1E36>);(<U1E39>,<U1E38>);(<U1E3B>,<U1E3A>);(<U1E3D>,<U1E3C>);/
(<U1E3F>,<U1E3E>);(<U1E41>,<U1E40>);(<U1E43>,<U1E42>);(<U1E45>,<U1E44>);/
(<U1E47>,<U1E46>);(<U1E49>,<U1E48>);(<U1E4B>,<U1E4A>);(<U1E4D>,<U1E4C>);/
(<U1E4F>,<U1E4E>);(<U1E51>,<U1E50>);(<U1E53>,<U1E52>);(<U1E55>,<U1E54>);/
(<U1E57>,<U1E56>);(<U1E59>,<U1E58>);(<U1E5B>,<U1E5A>);(<U1E5D>,<U1E5C>);/
(<U1E5F>,<U1E5E>);(<U1E61>,<U1E60>);(<U1E63>,<U1E62>);(<U1E65>,<U1E64>);/
(<U1E67>,<U1E66>);(<U1E69>,<U1E68>);(<U1E6B>,<U1E6A>);(<U1E6D>,<U1E6C>);/
(<U1E6F>,<U1E6E>);(<U1E71>,<U1E70>);(<U1E73>,<U1E72>);(<U1E75>,<U1E74>);/
(<U1E77>,<U1E76>);(<U1E79>,<U1E78>);(<U1E7B>,<U1E7A>);(<U1E7D>,<U1E7C>);/
(<U1E7F>,<U1E7E>);(<U1E81>,<U1E80>);(<U1E83>,<U1E82>);(<U1E85>,<U1E84>);/
(<U1E87>,<U1E86>);(<U1E89>,<U1E88>);(<U1E8B>,<U1E8A>);(<U1E8D>,<U1E8C>);/
(<U1E8F>,<U1E8E>);(<U1E91>,<U1E90>);(<U1E93>,<U1E92>);(<U1E95>,<U1E94>);/
(<U1E9B>,<U1E60>);(<U1EA1>,<U1EA0>);(<U1EA3>,<U1EA2>);(<U1EA5>,<U1EA4>);/
(<U1EA7>,<U1EA6>);(<U1EA9>,<U1EA8>);(<U1EAB>,<U1EAA>);(<U1EAD>,<U1EAC>);/
(<U1EAF>,<U1EAE>);(<U1EB1>,<U1EB0>);(<U1EB3>,<U1EB2>);(<U1EB5>,<U1EB4>);/
(<U1EB7>,<U1EB6>);(<U1EB9>,<U1EB8>);(<U1EBB>,<U1EBA>);(<U1EBD>,<U1EBC>);/
(<U1EBF>,<U1EBE>);(<U1EC1>,<U1EC0>);(<U1EC3>,<U1EC2>);(<U1EC5>,<U1EC4>);/
(<U1EC7>,<U1EC6>);(<U1EC9>,<U1EC8>);(<U1ECB>,<U1ECA>);(<U1ECD>,<U1ECC>);/
(<U1ECF>,<U1ECE>);(<U1ED1>,<U1ED0>);(<U1ED3>,<U1ED2>);(<U1ED5>,<U1ED4>);/
(<U1ED7>,<U1ED6>);(<U1ED9>,<U1ED8>);(<U1EDB>,<U1EDA>);(<U1EDD>,<U1EDC>);/
(<U1EDF>,<U1EDE>);(<U1EE1>,<U1EE0>);(<U1EE3>,<U1EE2>);(<U1EE5>,<U1EE4>);/
(<U1EE7>,<U1EE6>);(<U1EE9>,<U1EE8>);(<U1EEB>,<U1EEA>);(<U1EED>,<U1EEC>);/
(<U1EEF>,<U1EEE>);(<U1EF1>,<U1EF0>);(<U1EF3>,<U1EF2>);(<U1EF5>,<U1EF4>);/
(<U1EF7>,<U1EF6>);(<U1EF9>,<U1EF8>);(<U1F00>,<U1F08>);(<U1F01>,<U1F09>);/
(<U1F02>,<U1F0A>);(<U1F03>,<U1F0B>);(<U1F04>,<U1F0C>);(<U1F05>,<U1F0D>);/
(<U1F06>,<U1F0E>);(<U1F07>,<U1F0F>);(<U1F10>,<U1F18>);(<U1F11>,<U1F19>);/
(<U1F12>,<U1F1A>);(<U1F13>,<U1F1B>);(<U1F14>,<U1F1C>);(<U1F15>,<U1F1D>);/
(<U1F20>,<U1F28>);(<U1F21>,<U1F29>);(<U1F22>,<U1F2A>);(<U1F23>,<U1F2B>);/
(<U1F24>,<U1F2C>);(<U1F25>,<U1F2D>);(<U1F26>,<U1F2E>);(<U1F27>,<U1F2F>);/
(<U1F30>,<U1F38>);(<U1F31>,<U1F39>);(<U1F32>,<U1F3A>);(<U1F33>,<U1F3B>);/
(<U1F34>,<U1F3C>);(<U1F35>,<U1F3D>);(<U1F36>,<U1F3E>);(<U1F37>,<U1F3F>);/
(<U1F40>,<U1F48>);(<U1F41>,<U1F49>);(<U1F42>,<U1F4A>);(<U1F43>,<U1F4B>);/
(<U1F44>,<U1F4C>);(<U1F45>,<U1F4D>);(<U1F51>,<U1F59>);(<U1F53>,<U1F5B>);/
(<U1F55>,<U1F5D>);(<U1F57>,<U1F5F>);(<U1F60>,<U1F68>);(<U1F61>,<U1F69>);/
(<U1F62>,<U1F6A>);(<U1F63>,<U1F6B>);(<U1F64>,<U1F6C>);(<U1F65>,<U1F6D>);/
(<U1F66>,<U1F6E>);(<U1F67>,<U1F6F>);(<U1F70>,<U1FBA>);(<U1F71>,<U1FBB>);/
(<U1F72>,<U1FC8>);(<U1F73>,<U1FC9>);(<U1F74>,<U1FCA>);(<U1F75>,<U1FCB>);/
(<U1F76>,<U1FDA>);(<U1F77>,<U1FDB>);(<U1F78>,<U1FF8>);(<U1F79>,<U1FF9>);/
(<U1F7A>,<U1FEA>);(<U1F7B>,<U1FEB>);(<U1F7C>,<U1FFA>);(<U1F7D>,<U1FFB>);/
(<U1F80>,<U1F88>);(<U1F81>,<U1F89>);(<U1F82>,<U1F8A>);(<U1F83>,<U1F8B>);/
(<U1F84>,<U1F8C>);(<U1F85>,<U1F8D>);(<U1F86>,<U1F8E>);(<U1F87>,<U1F8F>);/
(<U1F90>,<U1F98>);(<U1F91>,<U1F99>);(<U1F92>,<U1F9A>);(<U1F93>,<U1F9B>);/
(<U1F94>,<U1F9C>);(<U1F95>,<U1F9D>);(<U1F96>,<U1F9E>);(<U1F97>,<U1F9F>);/
(<U1FA0>,<U1FA8>);(<U1FA1>,<U1FA9>);(<U1FA2>,<U1FAA>);(<U1FA3>,<U1FAB>);/
(<U1FA4>,<U1FAC>);(<U1FA5>,<U1FAD>);(<U1FA6>,<U1FAE>);(<U1FA7>,<U1FAF>);/
(<U1FB0>,<U1FB8>);(<U1FB1>,<U1FB9>);(<U1FB3>,<U1FBC>);(<U1FBE>,<U0399>);/
(<U1FC3>,<U1FCC>);(<U1FD0>,<U1FD8>);(<U1FD1>,<U1FD9>);(<U1FE0>,<U1FE8>);/
(<U1FE1>,<U1FE9>);(<U1FE5>,<U1FEC>);(<U1FF3>,<U1FFC>);(<U2170>,<U2160>);/
(<U2171>,<U2161>);(<U2172>,<U2162>);(<U2173>,<U2163>);(<U2174>,<U2164>);/
(<U2175>,<U2165>);(<U2176>,<U2166>);(<U2177>,<U2167>);(<U2178>,<U2168>);/
(<U2179>,<U2169>);(<U217A>,<U216A>);(<U217B>,<U216B>);(<U217C>,<U216C>);/
(<U217D>,<U216D>);(<U217E>,<U216E>);(<U217F>,<U216F>);(<U24D0>,<U24B6>);/
(<U24D1>,<U24B7>);(<U24D2>,<U24B8>);(<U24D3>,<U24B9>);(<U24D4>,<U24BA>);/
(<U24D5>,<U24BB>);(<U24D6>,<U24BC>);(<U24D7>,<U24BD>);(<U24D8>,<U24BE>);/
(<U24D9>,<U24BF>);(<U24DA>,<U24C0>);(<U24DB>,<U24C1>);(<U24DC>,<U24C2>);/
(<U24DD>,<U24C3>);(<U24DE>,<U24C4>);(<U24DF>,<U24C5>);(<U24E0>,<U24C6>);/
(<U24E1>,<U24C7>);(<U24E2>,<U24C8>);(<U24E3>,<U24C9>);(<U24E4>,<U24CA>);/
(<U24E5>,<U24CB>);(<U24E6>,<U24CC>);(<U24E7>,<U24CD>);(<U24E8>,<U24CE>);/
(<U24E9>,<U24CF>);(<UFF41>,<UFF21>);(<UFF42>,<UFF22>);(<UFF43>,<UFF23>);/
(<UFF44>,<UFF24>);(<UFF45>,<UFF25>);(<UFF46>,<UFF26>);(<UFF47>,<UFF27>);/
(<UFF48>,<UFF28>);(<UFF49>,<UFF29>);(<UFF4A>,<UFF2A>);(<UFF4B>,<UFF2B>);/
(<UFF4C>,<UFF2C>);(<UFF4D>,<UFF2D>);(<UFF4E>,<UFF2E>);(<UFF4F>,<UFF2F>);/
(<UFF50>,<UFF30>);(<UFF51>,<UFF31>);(<UFF52>,<UFF32>);(<UFF53>,<UFF33>);/
(<UFF54>,<UFF34>);(<UFF55>,<UFF35>);(<UFF56>,<UFF36>);(<UFF57>,<UFF37>);/
(<UFF58>,<UFF38>);(<UFF59>,<UFF39>);(<UFF5A>,<UFF3A>);/
(<U00010428>,<U00010400>);(<U00010429>,<U00010401>);/
(<U0001042A>,<U00010402>);(<U0001042B>,<U00010403>);/
(<U0001042C>,<U00010404>);(<U0001042D>,<U00010405>);/
(<U0001042E>,<U00010406>);(<U0001042F>,<U00010407>);/
(<U00010430>,<U00010408>);(<U00010431>,<U00010409>);/
(<U00010432>,<U0001040A>);(<U00010433>,<U0001040B>);/
(<U00010434>,<U0001040C>);(<U00010435>,<U0001040D>);/
(<U00010436>,<U0001040E>);(<U00010437>,<U0001040F>);/
(<U00010438>,<U00010410>);(<U00010439>,<U00010411>);/
(<U0001043A>,<U00010412>);(<U0001043B>,<U00010413>);/
(<U0001043C>,<U00010414>);(<U0001043D>,<U00010415>);/
(<U0001043E>,<U00010416>);(<U0001043F>,<U00010417>);/
(<U00010440>,<U00010418>);(<U00010441>,<U00010419>);/
(<U00010442>,<U0001041A>);(<U00010443>,<U0001041B>);/
(<U00010444>,<U0001041C>);(<U00010445>,<U0001041D>);/
(<U00010446>,<U0001041E>);(<U00010447>,<U0001041F>);/
(<U00010448>,<U00010420>);(<U00010449>,<U00010421>);/
(<U0001044A>,<U00010422>);(<U0001044B>,<U00010423>);/
(<U0001044C>,<U00010424>);(<U0001044D>,<U00010425>)
% The "combining" class reflects ISO/IEC 10646-1 annex B.1
% That is, all combining characters (level 2+3).
@ -1175,7 +1299,9 @@ class "combining"; /
<U0F99>..<U0FBC>;<U0FC6>;<U102C>..<U1032>;<U1036>..<U1039>;/
<U1056>..<U1059>;<U17B4>..<U17D3>;<U18A9>;<U20D0>..<U20E3>;/
<U302A>..<U302F>;<U3099>..<U309A>;<UF8F0>..<UF8FF>;<UFB1E>;/
<UFE20>..<UFE23>
<UFE20>..<UFE23>;<U0001D165>..<U0001D169>;<U0001D16D>..<U0001D172>;/
<U0001D17B>..<U0001D182>;<U0001D185>..<U0001D18B>;/
<U0001D1AA>..<U0001D1AD>
% The "combining_level3" class reflects ISO/IEC 10646-1 annex B.2
% That is, combining characters of level 3.
@ -1200,7 +1326,7 @@ class "combining_level3"; /
<U0F71>..<U0F81>;<U0F84>;<U0F90>..<U0F97>;<U0F99>..<U0FBC>;/
<U102C>..<U1032>;<U1036>..<U1039>;<U1056>..<U1059>;<U17B4>..<U17D3>;/
<U20D2>..<U20D3>;<U20D8>..<U20DA>;<U20DD>..<U20E0>;<U20E2>..<U20E3>;/
<U3099>..<U309A>;<UF8F0>..<UF8FF>;<UFB1E>
<U3099>..<U309A>;<UF8F0>..<UF8FF>;<UFB1E>;<U0001D167>..<U0001D169>
translit_start

View File

@ -2153,7 +2153,7 @@ upper /
<U0386>;<U0388>..<U038A>;<U038C>;<U038E>;<U038F>;<U0391>..<U03A1>;/
<U03A3>..<U03AB>;<U03DA>;<U03DC>;<U03DE>;/
% TABLE 10 GREEK SYMBOLS AND COPTIC/
<U03E0>..(2)..<U03EE>;/
<U03E0>..(2)..<U03EE>;<U03F4>;/
% TABLE 11 CYRILLIC/
<U0400>..<U042F>;<U0460>..(2)..<U047E>;/
% TABLE 12 CYRILLIC/
@ -2181,7 +2181,9 @@ upper /
% ENCLOSED ALPHANUMERICS/
<U24B6>..<U24CF>;/
% HALFWIDTH AND FULLWIDTH FORMS/
<UFF21>..<UFF3A>
<UFF21>..<UFF3A>;/
% DESERET/
<U00010400>..<U00010425>
% The "lower" class reflects the lowercase characters of class "alpha"
lower /
@ -2210,6 +2212,7 @@ lower /
<U03AC>..<U03AF>;<U03B1>..<U03CE>;/
% TABLE 10 GREEK SYMBOLS AND COPTIC/
<U03D0>;<U03D1>;<U03D5>;<U03D6>;<U03DB>..(2)..<U03EF>;<U03F0>..<U03F2>;/
<U03F5>;/
% TABLE 11 CYRILLIC/
<U0430>..<U045F>;<U0461>..(2)..<U047F>;/
% TABLE 12 CYRILLIC/
@ -2234,7 +2237,9 @@ lower /
% ENCLOSED ALPHANUMERICS/
<U24D0>..<U24E9>;/
% HALFWIDTH AND FULLWIDTH FORMS/
<UFF41>..<UFF5A>
<UFF41>..<UFF5A>;/
% DESERET/
<U00010428>..<U0001044D>
% The "alpha" class of the "i18n" FDCC-set is reflecting
% the recommendations in TR 10176 annex A
@ -2259,7 +2264,7 @@ alpha /
<U037A>;<U0386>;<U0388>..<U038A>;<U038C>;<U038E>..<U03A1>;/
<U03A3>..<U03CE>;/
% TABLE 10 GREEK SYMBOLS AND COPTIC/
<U03D0>..<U03D7>;<U03DA>..<U03F3>;/
<U03D0>..<U03D7>;<U03DA>..<U03F5>;/
% TABLE 11 and 12 CYRILLIC/
<U0400>..<U0481>;<U048C>..<U04C4>;<U04C7>..<U04C8>;<U04CB>..<U04CC>;/
<U04D0>..<U04F5>;<U04F8>..<U04F9>;/
@ -2309,7 +2314,7 @@ alpha /
<U0D85>..<U0D96>;<U0D9A>..<U0DB1>;<U0DB3>..<U0DBB>;<U0DBD>;/
<U0DC0>..<U0DC6>;/
% TABLE 26 THAI/
<U0E01>..<U0E30>;<U0E32>;<U0E33>;<U0E40>..<U0E46>;/
<U0E01>..<U0E2E>;<U0E30>..<U0E3A>;<U0E40>..<U0E45>;<U0E47>..<U0E4E>;/
% TABLE 27 LAO/
<U0E81>..<U0E82>;<U0E84>;<U0E87>..<U0E88>;<U0E8A>;<U0E8D>;/
<U0E94>..<U0E97>;<U0E99>..<U0E9F>;<U0EA1>..<U0EA3>;<U0EA5>;<U0EA7>;/
@ -2337,7 +2342,7 @@ alpha /
% OGHAM/
<U1681>..<U169A>;/
% RUNIC/
<U16A0>..<U16EA>;/
<U16A0>..<U16EA>;<U16EE>..<U16F0>;/
% KHMER/
<U1780>..<U17B3>;/
% MONGOLIAN/
@ -2393,19 +2398,45 @@ alpha /
% HALFWIDTH AND FULLWIDTH FORMS/
<UFF21>..<UFF3A>;<UFF41>..<UFF5A>;<UFF66>..<UFFBE>;<UFFC2>..<UFFC7>;/
<UFFCA>..<UFFCF>;<UFFD2>..<UFFD7>;<UFFDA>..<UFFDC>;/
% OLD ITALIC/
<U00010300>..<U0001031E>;/
% GOTHIC/
<U00010330>..<U0001034A>;/
% DESERET/
<U00010400>..<U00010425>;<U00010428>..<U0001044D>;/
% MATHEMATICAL ALPHANUMERIC SYMBOLS/
<U0001D400>..<U0001D454>;<U0001D456>..<U0001D49C>;/
<U0001D49E>..<U0001D49F>;<U0001D4A2>;<U0001D4A5>..<U0001D4A6>;/
<U0001D4A9>..<U0001D4AC>;<U0001D4AE>..<U0001D4B9>;<U0001D4BB>;/
<U0001D4BD>..<U0001D4C0>;<U0001D4C2>..<U0001D4C3>;/
<U0001D4C5>..<U0001D505>;<U0001D507>..<U0001D50A>;/
<U0001D50D>..<U0001D514>;<U0001D516>..<U0001D51C>;/
<U0001D51E>..<U0001D539>;<U0001D53B>..<U0001D53E>;/
<U0001D540>..<U0001D544>;<U0001D546>;<U0001D54A>..<U0001D550>;/
<U0001D552>..<U0001D6A3>;<U0001D6A8>..<U0001D6C0>;/
<U0001D6C2>..<U0001D6DA>;<U0001D6DC>..<U0001D6FA>;/
<U0001D6FC>..<U0001D714>;<U0001D716>..<U0001D734>;/
<U0001D736>..<U0001D74E>;<U0001D750>..<U0001D76E>;/
<U0001D770>..<U0001D788>;<U0001D78A>..<U0001D7A8>;/
<U0001D7AA>..<U0001D7C2>;<U0001D7C4>..<U0001D7C9>;/
<U0001D7CE>..<U0001D7FF>;/
% CJK UNIFIED IDEOGRAPHS EXTENSION/
<U00020000>..<U0002A6D6>;/
% CJK COMPATIBILITY IDEOGRAPHS SUPPLEMENT/
<U0002F800>..<U0002FA1D>;/
% The non-ASCII number characters are included here because ISO C 99 /
% forbids us to classify them as digits; however, they behave more like /
% alphanumeric than like punctuation. /
% TABLE 15 and 16 ARABIC/
<U0660>..<U0669>;<U06F0>..<U06F9>;/
<U0660>..<U0669>;<U06F0>..<U06F9>;/
% TABLE 17 DEVANAGARI/
<U0966>..<U096F>;/
<U0966>..<U096F>;/
% TABLE 18 BENGALI/
<U09E6>..<U09EF>;/
<U09E6>..<U09EF>;/
% TABLE 19 GURMUKHI/
<U0A66>..<U0A6F>;/
<U0A66>..<U0A6F>;/
% TABLE 20 GUJARATI/
<U0AE6>..<U0AEF>;/
<U0AE6>..<U0AEF>;/
% TABLE 21 ORIYA/
<U0B66>..<U0B6F>;/
% TABLE 22 TAMIL/
@ -2438,7 +2469,10 @@ alpha /
digit /
<U0030>..<U0039>
outdigit <U0030>..<U0039>
% The "outdigit" information is by default "0" to "9". We don't have to
% provide it here since localedef will fill in the bits and it would
% prevent locales copy-ing this file define their own values.
% outdigit <U0030>..<U0039>
space /
% ISO/IEC 6429/
@ -2481,13 +2515,13 @@ punct /
<U0C82>..<U0C83>;<U0CBE>..<U0CC4>;<U0CC6>..<U0CC8>;<U0CCA>..<U0CCD>;/
<U0CD5>..<U0CD6>;<U0D02>..<U0D03>;<U0D3E>..<U0D43>;<U0D46>..<U0D48>;/
<U0D4A>..<U0D4D>;<U0D57>;<U0D82>..<U0D83>;<U0DCA>;<U0DCF>..<U0DD4>;/
<U0DD6>;<U0DD8>..<U0DDF>;<U0DF2>..<U0DF4>;<U0E31>;<U0E34>..<U0E3A>;/
<U0E3F>;<U0E47>..<U0E4F>;<U0E5A>..<U0E5B>;<U0EB1>;<U0EB4>..<U0EB9>;/
<U0DD6>;<U0DD8>..<U0DDF>;<U0DF2>..<U0DF4>;<U0E2F>;<U0E3F>;<U0E46>;/
<U0E4F>;<U0E5A>..<U0E5B>;<U0EB1>;<U0EB4>..<U0EB9>;/
<U0EBB>..<U0EBC>;<U0EC8>..<U0ECD>;<U0F01>..<U0F1F>;<U0F2A>..<U0F3F>;/
<U0F71>..<U0F87>;<U0F90>..<U0F97>;<U0F99>..<U0FBC>;<U0FBE>..<U0FCC>;/
<U0FCF>;<U102C>..<U1032>;<U1036>..<U1039>;<U104A>..<U104F>;/
<U1056>..<U1059>;<U10FB>;<U1361>..<U1368>;<U1372>..<U137C>;/
<U166D>..<U166E>;<U169B>..<U169C>;<U16EB>..<U16F0>;<U17B4>..<U17DC>;/
<U166D>..<U166E>;<U169B>..<U169C>;<U16EB>..<U16ED>;<U17B4>..<U17DC>;/
<U1800>..<U180E>;<U18A9>;<U1FBD>;<U1FBF>..<U1FC1>;<U1FCD>..<U1FCF>;/
<U1FDD>..<U1FDF>;<U1FED>..<U1FEF>;<U1FFD>..<U1FFE>;<U2007>;/
<U200C>..<U2027>;<U202A>..<U2046>;<U2048>..<U204D>;<U206A>..<U2070>;/
@ -2507,17 +2541,22 @@ punct /
<U3260>..<U327B>;<U327F>..<U32B0>;<U32C0>..<U32CB>;<U32D0>..<U32FE>;/
<U3300>..<U3376>;<U337B>..<U33DD>;<U33E0>..<U33FE>;<UA490>..<UA4A1>;/
<UA4A4>..<UA4B3>;<UA4B5>..<UA4C0>;<UA4C2>..<UA4C4>;<UA4C6>;/
<UD800>..<UF8FF>;<UFB1E>;<UFB29>;<UFD3E>..<UFD3F>;<UFE20>..<UFE23>;/
<UE000>..<UF8FF>;<UFB1E>;<UFB29>;<UFD3E>..<UFD3F>;<UFE20>..<UFE23>;/
<UFE30>..<UFE44>;<UFE49>..<UFE52>;<UFE54>..<UFE66>;<UFE68>..<UFE6B>;/
<UFEFF>;<UFF01>..<UFF0F>;<UFF1A>..<UFF20>;<UFF3B>..<UFF40>;/
<UFF5B>..<UFF5E>;<UFF61>..<UFF65>;<UFFE0>..<UFFE6>;<UFFE8>..<UFFEE>;/
<UFFF9>..<UFFFD>
<UFFF9>..<UFFFD>;<U00010320>..<U00010323>;<U0001D000>..<U0001D0F5>;/
<U0001D100>..<U0001D126>;<U0001D12A>..<U0001D1DD>;<U0001D6C1>;/
<U0001D6DB>;<U0001D6FB>;<U0001D715>;<U0001D735>;<U0001D74F>;/
<U0001D76F>;<U0001D789>;<U0001D7A9>;<U0001D7C3>;<U000E0001>;/
<U000E0020>..<U000E007F>;<U000F0000>..<U000FFFFD>;/
<U00100000>..<U0010FFFD>
graph /
<U0021>..<U007E>;<U00A0>..<U021F>;<U0222>..<U0233>;<U0250>..<U02AD>;/
<U02B0>..<U02EE>;<U0300>..<U034E>;<U0360>..<U0362>;<U0374>..<U0375>;/
<U037A>;<U037E>;<U0384>..<U038A>;<U038C>;<U038E>..<U03A1>;/
<U03A3>..<U03CE>;<U03D0>..<U03D7>;<U03DA>..<U03F3>;<U0400>..<U0486>;/
<U03A3>..<U03CE>;<U03D0>..<U03D7>;<U03DA>..<U03F5>;<U0400>..<U0486>;/
<U0488>..<U0489>;<U048C>..<U04C4>;<U04C7>..<U04C8>;<U04CB>..<U04CC>;/
<U04D0>..<U04F5>;<U04F8>..<U04F9>;<U0531>..<U0556>;<U0559>..<U055F>;/
<U0561>..<U0587>;<U0589>..<U058A>;<U0591>..<U05A1>;<U05A3>..<U05B9>;/
@ -2593,20 +2632,36 @@ graph /
<U3300>..<U3376>;<U337B>..<U33DD>;<U33E0>..<U33FE>;<U3400>..<U4DB5>;/
<U4E00>..<U9FA5>;<UA000>..<UA48C>;<UA490>..<UA4A1>;<UA4A4>..<UA4B3>;/
<UA4B5>..<UA4C0>;<UA4C2>..<UA4C4>;<UA4C6>;<UAC00>..<UD7A3>;/
<UD800>..<UFA2D>;<UFB00>..<UFB06>;<UFB13>..<UFB17>;<UFB1D>..<UFB36>;/
<UE000>..<UFA2D>;<UFB00>..<UFB06>;<UFB13>..<UFB17>;<UFB1D>..<UFB36>;/
<UFB38>..<UFB3C>;<UFB3E>;<UFB40>..<UFB41>;<UFB43>..<UFB44>;/
<UFB46>..<UFBB1>;<UFBD3>..<UFD3F>;<UFD50>..<UFD8F>;<UFD92>..<UFDC7>;/
<UFDF0>..<UFDFB>;<UFE20>..<UFE23>;<UFE30>..<UFE44>;<UFE49>..<UFE52>;/
<UFE54>..<UFE66>;<UFE68>..<UFE6B>;<UFE70>..<UFE72>;<UFE74>;/
<UFE76>..<UFEFC>;<UFEFF>;<UFF01>..<UFF5E>;<UFF61>..<UFFBE>;/
<UFFC2>..<UFFC7>;<UFFCA>..<UFFCF>;<UFFD2>..<UFFD7>;<UFFDA>..<UFFDC>;/
<UFFE0>..<UFFE6>;<UFFE8>..<UFFEE>;<UFFF9>..<UFFFD>
<UFFE0>..<UFFE6>;<UFFE8>..<UFFEE>;<UFFF9>..<UFFFD>;/
<U00010300>..<U0001031E>;<U00010320>..<U00010323>;/
<U00010330>..<U0001034A>;<U00010400>..<U00010425>;/
<U00010428>..<U0001044D>;<U0001D000>..<U0001D0F5>;/
<U0001D100>..<U0001D126>;<U0001D12A>..<U0001D1DD>;/
<U0001D400>..<U0001D454>;<U0001D456>..<U0001D49C>;/
<U0001D49E>..<U0001D49F>;<U0001D4A2>;<U0001D4A5>..<U0001D4A6>;/
<U0001D4A9>..<U0001D4AC>;<U0001D4AE>..<U0001D4B9>;<U0001D4BB>;/
<U0001D4BD>..<U0001D4C0>;<U0001D4C2>..<U0001D4C3>;/
<U0001D4C5>..<U0001D505>;<U0001D507>..<U0001D50A>;/
<U0001D50D>..<U0001D514>;<U0001D516>..<U0001D51C>;/
<U0001D51E>..<U0001D539>;<U0001D53B>..<U0001D53E>;/
<U0001D540>..<U0001D544>;<U0001D546>;<U0001D54A>..<U0001D550>;/
<U0001D552>..<U0001D6A3>;<U0001D6A8>..<U0001D7C9>;/
<U0001D7CE>..<U0001D7FF>;<U00020000>..<U0002A6D6>;/
<U0002F800>..<U0002FA1D>;<U000E0001>;<U000E0020>..<U000E007F>;/
<U000F0000>..<U000FFFFD>;<U00100000>..<U0010FFFD>
print /
<U0020>..<U007E>;<U00A0>..<U021F>;<U0222>..<U0233>;<U0250>..<U02AD>;/
<U02B0>..<U02EE>;<U0300>..<U034E>;<U0360>..<U0362>;<U0374>..<U0375>;/
<U037A>;<U037E>;<U0384>..<U038A>;<U038C>;<U038E>..<U03A1>;/
<U03A3>..<U03CE>;<U03D0>..<U03D7>;<U03DA>..<U03F3>;<U0400>..<U0486>;/
<U03A3>..<U03CE>;<U03D0>..<U03D7>;<U03DA>..<U03F5>;<U0400>..<U0486>;/
<U0488>..<U0489>;<U048C>..<U04C4>;<U04C7>..<U04C8>;<U04CB>..<U04CC>;/
<U04D0>..<U04F5>;<U04F8>..<U04F9>;<U0531>..<U0556>;<U0559>..<U055F>;/
<U0561>..<U0587>;<U0589>..<U058A>;<U0591>..<U05A1>;<U05A3>..<U05B9>;/
@ -2681,7 +2736,7 @@ print /
<U327F>..<U32B0>;<U32C0>..<U32CB>;<U32D0>..<U32FE>;<U3300>..<U3376>;/
<U337B>..<U33DD>;<U33E0>..<U33FE>;<U3400>..<U4DB5>;<U4E00>..<U9FA5>;/
<UA000>..<UA48C>;<UA490>..<UA4A1>;<UA4A4>..<UA4B3>;<UA4B5>..<UA4C0>;/
<UA4C2>..<UA4C4>;<UA4C6>;<UAC00>..<UD7A3>;<UD800>..<UFA2D>;/
<UA4C2>..<UA4C4>;<UA4C6>;<UAC00>..<UD7A3>;<UE000>..<UFA2D>;/
<UFB00>..<UFB06>;<UFB13>..<UFB17>;<UFB1D>..<UFB36>;<UFB38>..<UFB3C>;/
<UFB3E>;<UFB40>..<UFB41>;<UFB43>..<UFB44>;<UFB46>..<UFBB1>;/
<UFBD3>..<UFD3F>;<UFD50>..<UFD8F>;<UFD92>..<UFDC7>;<UFDF0>..<UFDFB>;/
@ -2689,7 +2744,22 @@ print /
<UFE68>..<UFE6B>;<UFE70>..<UFE72>;<UFE74>;<UFE76>..<UFEFC>;<UFEFF>;/
<UFF01>..<UFF5E>;<UFF61>..<UFFBE>;<UFFC2>..<UFFC7>;<UFFCA>..<UFFCF>;/
<UFFD2>..<UFFD7>;<UFFDA>..<UFFDC>;<UFFE0>..<UFFE6>;<UFFE8>..<UFFEE>;/
<UFFF9>..<UFFFD>
<UFFF9>..<UFFFD>;<U00010300>..<U0001031E>;<U00010320>..<U00010323>;/
<U00010330>..<U0001034A>;<U00010400>..<U00010425>;/
<U00010428>..<U0001044D>;<U0001D000>..<U0001D0F5>;/
<U0001D100>..<U0001D126>;<U0001D12A>..<U0001D1DD>;/
<U0001D400>..<U0001D454>;<U0001D456>..<U0001D49C>;/
<U0001D49E>..<U0001D49F>;<U0001D4A2>;<U0001D4A5>..<U0001D4A6>;/
<U0001D4A9>..<U0001D4AC>;<U0001D4AE>..<U0001D4B9>;<U0001D4BB>;/
<U0001D4BD>..<U0001D4C0>;<U0001D4C2>..<U0001D4C3>;/
<U0001D4C5>..<U0001D505>;<U0001D507>..<U0001D50A>;/
<U0001D50D>..<U0001D514>;<U0001D516>..<U0001D51C>;/
<U0001D51E>..<U0001D539>;<U0001D53B>..<U0001D53E>;/
<U0001D540>..<U0001D544>;<U0001D546>;<U0001D54A>..<U0001D550>;/
<U0001D552>..<U0001D6A3>;<U0001D6A8>..<U0001D7C9>;/
<U0001D7CE>..<U0001D7FF>;<U00020000>..<U0002A6D6>;/
<U0002F800>..<U0002FA1D>;<U000E0001>;<U000E0020>..<U000E007F>;/
<U000F0000>..<U000FFFFD>;<U00100000>..<U0010FFFD>
% The "xdigit" class must only contain the BASIC LATIN digits and A-F, a-f,
% says ISO C 99 (sections 7.25.2.1.12 and 6.4.4.1).
@ -2765,117 +2835,136 @@ toupper /
(<U03D6>,<U03A0>);(<U03DB>,<U03DA>);(<U03DD>,<U03DC>);(<U03DF>,<U03DE>);/
(<U03E1>,<U03E0>);(<U03E3>,<U03E2>);(<U03E5>,<U03E4>);(<U03E7>,<U03E6>);/
(<U03E9>,<U03E8>);(<U03EB>,<U03EA>);(<U03ED>,<U03EC>);(<U03EF>,<U03EE>);/
(<U03F0>,<U039A>);(<U03F1>,<U03A1>);(<U03F2>,<U03A3>);(<U0430>,<U0410>);/
(<U0431>,<U0411>);(<U0432>,<U0412>);(<U0433>,<U0413>);(<U0434>,<U0414>);/
(<U0435>,<U0415>);(<U0436>,<U0416>);(<U0437>,<U0417>);(<U0438>,<U0418>);/
(<U0439>,<U0419>);(<U043A>,<U041A>);(<U043B>,<U041B>);(<U043C>,<U041C>);/
(<U043D>,<U041D>);(<U043E>,<U041E>);(<U043F>,<U041F>);(<U0440>,<U0420>);/
(<U0441>,<U0421>);(<U0442>,<U0422>);(<U0443>,<U0423>);(<U0444>,<U0424>);/
(<U0445>,<U0425>);(<U0446>,<U0426>);(<U0447>,<U0427>);(<U0448>,<U0428>);/
(<U0449>,<U0429>);(<U044A>,<U042A>);(<U044B>,<U042B>);(<U044C>,<U042C>);/
(<U044D>,<U042D>);(<U044E>,<U042E>);(<U044F>,<U042F>);(<U0450>,<U0400>);/
(<U0451>,<U0401>);(<U0452>,<U0402>);(<U0453>,<U0403>);(<U0454>,<U0404>);/
(<U0455>,<U0405>);(<U0456>,<U0406>);(<U0457>,<U0407>);(<U0458>,<U0408>);/
(<U0459>,<U0409>);(<U045A>,<U040A>);(<U045B>,<U040B>);(<U045C>,<U040C>);/
(<U045D>,<U040D>);(<U045E>,<U040E>);(<U045F>,<U040F>);(<U0461>,<U0460>);/
(<U0463>,<U0462>);(<U0465>,<U0464>);(<U0467>,<U0466>);(<U0469>,<U0468>);/
(<U046B>,<U046A>);(<U046D>,<U046C>);(<U046F>,<U046E>);(<U0471>,<U0470>);/
(<U0473>,<U0472>);(<U0475>,<U0474>);(<U0477>,<U0476>);(<U0479>,<U0478>);/
(<U047B>,<U047A>);(<U047D>,<U047C>);(<U047F>,<U047E>);(<U0481>,<U0480>);/
(<U048D>,<U048C>);(<U048F>,<U048E>);(<U0491>,<U0490>);(<U0493>,<U0492>);/
(<U0495>,<U0494>);(<U0497>,<U0496>);(<U0499>,<U0498>);(<U049B>,<U049A>);/
(<U049D>,<U049C>);(<U049F>,<U049E>);(<U04A1>,<U04A0>);(<U04A3>,<U04A2>);/
(<U04A5>,<U04A4>);(<U04A7>,<U04A6>);(<U04A9>,<U04A8>);(<U04AB>,<U04AA>);/
(<U04AD>,<U04AC>);(<U04AF>,<U04AE>);(<U04B1>,<U04B0>);(<U04B3>,<U04B2>);/
(<U04B5>,<U04B4>);(<U04B7>,<U04B6>);(<U04B9>,<U04B8>);(<U04BB>,<U04BA>);/
(<U04BD>,<U04BC>);(<U04BF>,<U04BE>);(<U04C2>,<U04C1>);(<U04C4>,<U04C3>);/
(<U04C8>,<U04C7>);(<U04CC>,<U04CB>);(<U04D1>,<U04D0>);(<U04D3>,<U04D2>);/
(<U04D5>,<U04D4>);(<U04D7>,<U04D6>);(<U04D9>,<U04D8>);(<U04DB>,<U04DA>);/
(<U04DD>,<U04DC>);(<U04DF>,<U04DE>);(<U04E1>,<U04E0>);(<U04E3>,<U04E2>);/
(<U04E5>,<U04E4>);(<U04E7>,<U04E6>);(<U04E9>,<U04E8>);(<U04EB>,<U04EA>);/
(<U04ED>,<U04EC>);(<U04EF>,<U04EE>);(<U04F1>,<U04F0>);(<U04F3>,<U04F2>);/
(<U04F5>,<U04F4>);(<U04F9>,<U04F8>);(<U0561>,<U0531>);(<U0562>,<U0532>);/
(<U0563>,<U0533>);(<U0564>,<U0534>);(<U0565>,<U0535>);(<U0566>,<U0536>);/
(<U0567>,<U0537>);(<U0568>,<U0538>);(<U0569>,<U0539>);(<U056A>,<U053A>);/
(<U056B>,<U053B>);(<U056C>,<U053C>);(<U056D>,<U053D>);(<U056E>,<U053E>);/
(<U056F>,<U053F>);(<U0570>,<U0540>);(<U0571>,<U0541>);(<U0572>,<U0542>);/
(<U0573>,<U0543>);(<U0574>,<U0544>);(<U0575>,<U0545>);(<U0576>,<U0546>);/
(<U0577>,<U0547>);(<U0578>,<U0548>);(<U0579>,<U0549>);(<U057A>,<U054A>);/
(<U057B>,<U054B>);(<U057C>,<U054C>);(<U057D>,<U054D>);(<U057E>,<U054E>);/
(<U057F>,<U054F>);(<U0580>,<U0550>);(<U0581>,<U0551>);(<U0582>,<U0552>);/
(<U0583>,<U0553>);(<U0584>,<U0554>);(<U0585>,<U0555>);(<U0586>,<U0556>);/
(<U1E01>,<U1E00>);(<U1E03>,<U1E02>);(<U1E05>,<U1E04>);(<U1E07>,<U1E06>);/
(<U1E09>,<U1E08>);(<U1E0B>,<U1E0A>);(<U1E0D>,<U1E0C>);(<U1E0F>,<U1E0E>);/
(<U1E11>,<U1E10>);(<U1E13>,<U1E12>);(<U1E15>,<U1E14>);(<U1E17>,<U1E16>);/
(<U1E19>,<U1E18>);(<U1E1B>,<U1E1A>);(<U1E1D>,<U1E1C>);(<U1E1F>,<U1E1E>);/
(<U1E21>,<U1E20>);(<U1E23>,<U1E22>);(<U1E25>,<U1E24>);(<U1E27>,<U1E26>);/
(<U1E29>,<U1E28>);(<U1E2B>,<U1E2A>);(<U1E2D>,<U1E2C>);(<U1E2F>,<U1E2E>);/
(<U1E31>,<U1E30>);(<U1E33>,<U1E32>);(<U1E35>,<U1E34>);(<U1E37>,<U1E36>);/
(<U1E39>,<U1E38>);(<U1E3B>,<U1E3A>);(<U1E3D>,<U1E3C>);(<U1E3F>,<U1E3E>);/
(<U1E41>,<U1E40>);(<U1E43>,<U1E42>);(<U1E45>,<U1E44>);(<U1E47>,<U1E46>);/
(<U1E49>,<U1E48>);(<U1E4B>,<U1E4A>);(<U1E4D>,<U1E4C>);(<U1E4F>,<U1E4E>);/
(<U1E51>,<U1E50>);(<U1E53>,<U1E52>);(<U1E55>,<U1E54>);(<U1E57>,<U1E56>);/
(<U1E59>,<U1E58>);(<U1E5B>,<U1E5A>);(<U1E5D>,<U1E5C>);(<U1E5F>,<U1E5E>);/
(<U1E61>,<U1E60>);(<U1E63>,<U1E62>);(<U1E65>,<U1E64>);(<U1E67>,<U1E66>);/
(<U1E69>,<U1E68>);(<U1E6B>,<U1E6A>);(<U1E6D>,<U1E6C>);(<U1E6F>,<U1E6E>);/
(<U1E71>,<U1E70>);(<U1E73>,<U1E72>);(<U1E75>,<U1E74>);(<U1E77>,<U1E76>);/
(<U1E79>,<U1E78>);(<U1E7B>,<U1E7A>);(<U1E7D>,<U1E7C>);(<U1E7F>,<U1E7E>);/
(<U1E81>,<U1E80>);(<U1E83>,<U1E82>);(<U1E85>,<U1E84>);(<U1E87>,<U1E86>);/
(<U1E89>,<U1E88>);(<U1E8B>,<U1E8A>);(<U1E8D>,<U1E8C>);(<U1E8F>,<U1E8E>);/
(<U1E91>,<U1E90>);(<U1E93>,<U1E92>);(<U1E95>,<U1E94>);(<U1E9B>,<U1E60>);/
(<U1EA1>,<U1EA0>);(<U1EA3>,<U1EA2>);(<U1EA5>,<U1EA4>);(<U1EA7>,<U1EA6>);/
(<U1EA9>,<U1EA8>);(<U1EAB>,<U1EAA>);(<U1EAD>,<U1EAC>);(<U1EAF>,<U1EAE>);/
(<U1EB1>,<U1EB0>);(<U1EB3>,<U1EB2>);(<U1EB5>,<U1EB4>);(<U1EB7>,<U1EB6>);/
(<U1EB9>,<U1EB8>);(<U1EBB>,<U1EBA>);(<U1EBD>,<U1EBC>);(<U1EBF>,<U1EBE>);/
(<U1EC1>,<U1EC0>);(<U1EC3>,<U1EC2>);(<U1EC5>,<U1EC4>);(<U1EC7>,<U1EC6>);/
(<U1EC9>,<U1EC8>);(<U1ECB>,<U1ECA>);(<U1ECD>,<U1ECC>);(<U1ECF>,<U1ECE>);/
(<U1ED1>,<U1ED0>);(<U1ED3>,<U1ED2>);(<U1ED5>,<U1ED4>);(<U1ED7>,<U1ED6>);/
(<U1ED9>,<U1ED8>);(<U1EDB>,<U1EDA>);(<U1EDD>,<U1EDC>);(<U1EDF>,<U1EDE>);/
(<U1EE1>,<U1EE0>);(<U1EE3>,<U1EE2>);(<U1EE5>,<U1EE4>);(<U1EE7>,<U1EE6>);/
(<U1EE9>,<U1EE8>);(<U1EEB>,<U1EEA>);(<U1EED>,<U1EEC>);(<U1EEF>,<U1EEE>);/
(<U1EF1>,<U1EF0>);(<U1EF3>,<U1EF2>);(<U1EF5>,<U1EF4>);(<U1EF7>,<U1EF6>);/
(<U1EF9>,<U1EF8>);(<U1F00>,<U1F08>);(<U1F01>,<U1F09>);(<U1F02>,<U1F0A>);/
(<U1F03>,<U1F0B>);(<U1F04>,<U1F0C>);(<U1F05>,<U1F0D>);(<U1F06>,<U1F0E>);/
(<U1F07>,<U1F0F>);(<U1F10>,<U1F18>);(<U1F11>,<U1F19>);(<U1F12>,<U1F1A>);/
(<U1F13>,<U1F1B>);(<U1F14>,<U1F1C>);(<U1F15>,<U1F1D>);(<U1F20>,<U1F28>);/
(<U1F21>,<U1F29>);(<U1F22>,<U1F2A>);(<U1F23>,<U1F2B>);(<U1F24>,<U1F2C>);/
(<U1F25>,<U1F2D>);(<U1F26>,<U1F2E>);(<U1F27>,<U1F2F>);(<U1F30>,<U1F38>);/
(<U1F31>,<U1F39>);(<U1F32>,<U1F3A>);(<U1F33>,<U1F3B>);(<U1F34>,<U1F3C>);/
(<U1F35>,<U1F3D>);(<U1F36>,<U1F3E>);(<U1F37>,<U1F3F>);(<U1F40>,<U1F48>);/
(<U1F41>,<U1F49>);(<U1F42>,<U1F4A>);(<U1F43>,<U1F4B>);(<U1F44>,<U1F4C>);/
(<U1F45>,<U1F4D>);(<U1F51>,<U1F59>);(<U1F53>,<U1F5B>);(<U1F55>,<U1F5D>);/
(<U1F57>,<U1F5F>);(<U1F60>,<U1F68>);(<U1F61>,<U1F69>);(<U1F62>,<U1F6A>);/
(<U1F63>,<U1F6B>);(<U1F64>,<U1F6C>);(<U1F65>,<U1F6D>);(<U1F66>,<U1F6E>);/
(<U1F67>,<U1F6F>);(<U1F70>,<U1FBA>);(<U1F71>,<U1FBB>);(<U1F72>,<U1FC8>);/
(<U1F73>,<U1FC9>);(<U1F74>,<U1FCA>);(<U1F75>,<U1FCB>);(<U1F76>,<U1FDA>);/
(<U1F77>,<U1FDB>);(<U1F78>,<U1FF8>);(<U1F79>,<U1FF9>);(<U1F7A>,<U1FEA>);/
(<U1F7B>,<U1FEB>);(<U1F7C>,<U1FFA>);(<U1F7D>,<U1FFB>);(<U1F80>,<U1F88>);/
(<U1F81>,<U1F89>);(<U1F82>,<U1F8A>);(<U1F83>,<U1F8B>);(<U1F84>,<U1F8C>);/
(<U1F85>,<U1F8D>);(<U1F86>,<U1F8E>);(<U1F87>,<U1F8F>);(<U1F90>,<U1F98>);/
(<U1F91>,<U1F99>);(<U1F92>,<U1F9A>);(<U1F93>,<U1F9B>);(<U1F94>,<U1F9C>);/
(<U1F95>,<U1F9D>);(<U1F96>,<U1F9E>);(<U1F97>,<U1F9F>);(<U1FA0>,<U1FA8>);/
(<U1FA1>,<U1FA9>);(<U1FA2>,<U1FAA>);(<U1FA3>,<U1FAB>);(<U1FA4>,<U1FAC>);/
(<U1FA5>,<U1FAD>);(<U1FA6>,<U1FAE>);(<U1FA7>,<U1FAF>);(<U1FB0>,<U1FB8>);/
(<U1FB1>,<U1FB9>);(<U1FB3>,<U1FBC>);(<U1FBE>,<U0399>);(<U1FC3>,<U1FCC>);/
(<U1FD0>,<U1FD8>);(<U1FD1>,<U1FD9>);(<U1FE0>,<U1FE8>);(<U1FE1>,<U1FE9>);/
(<U1FE5>,<U1FEC>);(<U1FF3>,<U1FFC>);(<U2170>,<U2160>);(<U2171>,<U2161>);/
(<U2172>,<U2162>);(<U2173>,<U2163>);(<U2174>,<U2164>);(<U2175>,<U2165>);/
(<U2176>,<U2166>);(<U2177>,<U2167>);(<U2178>,<U2168>);(<U2179>,<U2169>);/
(<U217A>,<U216A>);(<U217B>,<U216B>);(<U217C>,<U216C>);(<U217D>,<U216D>);/
(<U217E>,<U216E>);(<U217F>,<U216F>);(<U24D0>,<U24B6>);(<U24D1>,<U24B7>);/
(<U24D2>,<U24B8>);(<U24D3>,<U24B9>);(<U24D4>,<U24BA>);(<U24D5>,<U24BB>);/
(<U24D6>,<U24BC>);(<U24D7>,<U24BD>);(<U24D8>,<U24BE>);(<U24D9>,<U24BF>);/
(<U24DA>,<U24C0>);(<U24DB>,<U24C1>);(<U24DC>,<U24C2>);(<U24DD>,<U24C3>);/
(<U24DE>,<U24C4>);(<U24DF>,<U24C5>);(<U24E0>,<U24C6>);(<U24E1>,<U24C7>);/
(<U24E2>,<U24C8>);(<U24E3>,<U24C9>);(<U24E4>,<U24CA>);(<U24E5>,<U24CB>);/
(<U24E6>,<U24CC>);(<U24E7>,<U24CD>);(<U24E8>,<U24CE>);(<U24E9>,<U24CF>);/
(<UFF41>,<UFF21>);(<UFF42>,<UFF22>);(<UFF43>,<UFF23>);(<UFF44>,<UFF24>);/
(<UFF45>,<UFF25>);(<UFF46>,<UFF26>);(<UFF47>,<UFF27>);(<UFF48>,<UFF28>);/
(<UFF49>,<UFF29>);(<UFF4A>,<UFF2A>);(<UFF4B>,<UFF2B>);(<UFF4C>,<UFF2C>);/
(<UFF4D>,<UFF2D>);(<UFF4E>,<UFF2E>);(<UFF4F>,<UFF2F>);(<UFF50>,<UFF30>);/
(<UFF51>,<UFF31>);(<UFF52>,<UFF32>);(<UFF53>,<UFF33>);(<UFF54>,<UFF34>);/
(<UFF55>,<UFF35>);(<UFF56>,<UFF36>);(<UFF57>,<UFF37>);(<UFF58>,<UFF38>);/
(<UFF59>,<UFF39>);(<UFF5A>,<UFF3A>)
(<U03F0>,<U039A>);(<U03F1>,<U03A1>);(<U03F2>,<U03A3>);(<U03F5>,<U0395>);/
(<U0430>,<U0410>);(<U0431>,<U0411>);(<U0432>,<U0412>);(<U0433>,<U0413>);/
(<U0434>,<U0414>);(<U0435>,<U0415>);(<U0436>,<U0416>);(<U0437>,<U0417>);/
(<U0438>,<U0418>);(<U0439>,<U0419>);(<U043A>,<U041A>);(<U043B>,<U041B>);/
(<U043C>,<U041C>);(<U043D>,<U041D>);(<U043E>,<U041E>);(<U043F>,<U041F>);/
(<U0440>,<U0420>);(<U0441>,<U0421>);(<U0442>,<U0422>);(<U0443>,<U0423>);/
(<U0444>,<U0424>);(<U0445>,<U0425>);(<U0446>,<U0426>);(<U0447>,<U0427>);/
(<U0448>,<U0428>);(<U0449>,<U0429>);(<U044A>,<U042A>);(<U044B>,<U042B>);/
(<U044C>,<U042C>);(<U044D>,<U042D>);(<U044E>,<U042E>);(<U044F>,<U042F>);/
(<U0450>,<U0400>);(<U0451>,<U0401>);(<U0452>,<U0402>);(<U0453>,<U0403>);/
(<U0454>,<U0404>);(<U0455>,<U0405>);(<U0456>,<U0406>);(<U0457>,<U0407>);/
(<U0458>,<U0408>);(<U0459>,<U0409>);(<U045A>,<U040A>);(<U045B>,<U040B>);/
(<U045C>,<U040C>);(<U045D>,<U040D>);(<U045E>,<U040E>);(<U045F>,<U040F>);/
(<U0461>,<U0460>);(<U0463>,<U0462>);(<U0465>,<U0464>);(<U0467>,<U0466>);/
(<U0469>,<U0468>);(<U046B>,<U046A>);(<U046D>,<U046C>);(<U046F>,<U046E>);/
(<U0471>,<U0470>);(<U0473>,<U0472>);(<U0475>,<U0474>);(<U0477>,<U0476>);/
(<U0479>,<U0478>);(<U047B>,<U047A>);(<U047D>,<U047C>);(<U047F>,<U047E>);/
(<U0481>,<U0480>);(<U048D>,<U048C>);(<U048F>,<U048E>);(<U0491>,<U0490>);/
(<U0493>,<U0492>);(<U0495>,<U0494>);(<U0497>,<U0496>);(<U0499>,<U0498>);/
(<U049B>,<U049A>);(<U049D>,<U049C>);(<U049F>,<U049E>);(<U04A1>,<U04A0>);/
(<U04A3>,<U04A2>);(<U04A5>,<U04A4>);(<U04A7>,<U04A6>);(<U04A9>,<U04A8>);/
(<U04AB>,<U04AA>);(<U04AD>,<U04AC>);(<U04AF>,<U04AE>);(<U04B1>,<U04B0>);/
(<U04B3>,<U04B2>);(<U04B5>,<U04B4>);(<U04B7>,<U04B6>);(<U04B9>,<U04B8>);/
(<U04BB>,<U04BA>);(<U04BD>,<U04BC>);(<U04BF>,<U04BE>);(<U04C2>,<U04C1>);/
(<U04C4>,<U04C3>);(<U04C8>,<U04C7>);(<U04CC>,<U04CB>);(<U04D1>,<U04D0>);/
(<U04D3>,<U04D2>);(<U04D5>,<U04D4>);(<U04D7>,<U04D6>);(<U04D9>,<U04D8>);/
(<U04DB>,<U04DA>);(<U04DD>,<U04DC>);(<U04DF>,<U04DE>);(<U04E1>,<U04E0>);/
(<U04E3>,<U04E2>);(<U04E5>,<U04E4>);(<U04E7>,<U04E6>);(<U04E9>,<U04E8>);/
(<U04EB>,<U04EA>);(<U04ED>,<U04EC>);(<U04EF>,<U04EE>);(<U04F1>,<U04F0>);/
(<U04F3>,<U04F2>);(<U04F5>,<U04F4>);(<U04F9>,<U04F8>);(<U0561>,<U0531>);/
(<U0562>,<U0532>);(<U0563>,<U0533>);(<U0564>,<U0534>);(<U0565>,<U0535>);/
(<U0566>,<U0536>);(<U0567>,<U0537>);(<U0568>,<U0538>);(<U0569>,<U0539>);/
(<U056A>,<U053A>);(<U056B>,<U053B>);(<U056C>,<U053C>);(<U056D>,<U053D>);/
(<U056E>,<U053E>);(<U056F>,<U053F>);(<U0570>,<U0540>);(<U0571>,<U0541>);/
(<U0572>,<U0542>);(<U0573>,<U0543>);(<U0574>,<U0544>);(<U0575>,<U0545>);/
(<U0576>,<U0546>);(<U0577>,<U0547>);(<U0578>,<U0548>);(<U0579>,<U0549>);/
(<U057A>,<U054A>);(<U057B>,<U054B>);(<U057C>,<U054C>);(<U057D>,<U054D>);/
(<U057E>,<U054E>);(<U057F>,<U054F>);(<U0580>,<U0550>);(<U0581>,<U0551>);/
(<U0582>,<U0552>);(<U0583>,<U0553>);(<U0584>,<U0554>);(<U0585>,<U0555>);/
(<U0586>,<U0556>);(<U1E01>,<U1E00>);(<U1E03>,<U1E02>);(<U1E05>,<U1E04>);/
(<U1E07>,<U1E06>);(<U1E09>,<U1E08>);(<U1E0B>,<U1E0A>);(<U1E0D>,<U1E0C>);/
(<U1E0F>,<U1E0E>);(<U1E11>,<U1E10>);(<U1E13>,<U1E12>);(<U1E15>,<U1E14>);/
(<U1E17>,<U1E16>);(<U1E19>,<U1E18>);(<U1E1B>,<U1E1A>);(<U1E1D>,<U1E1C>);/
(<U1E1F>,<U1E1E>);(<U1E21>,<U1E20>);(<U1E23>,<U1E22>);(<U1E25>,<U1E24>);/
(<U1E27>,<U1E26>);(<U1E29>,<U1E28>);(<U1E2B>,<U1E2A>);(<U1E2D>,<U1E2C>);/
(<U1E2F>,<U1E2E>);(<U1E31>,<U1E30>);(<U1E33>,<U1E32>);(<U1E35>,<U1E34>);/
(<U1E37>,<U1E36>);(<U1E39>,<U1E38>);(<U1E3B>,<U1E3A>);(<U1E3D>,<U1E3C>);/
(<U1E3F>,<U1E3E>);(<U1E41>,<U1E40>);(<U1E43>,<U1E42>);(<U1E45>,<U1E44>);/
(<U1E47>,<U1E46>);(<U1E49>,<U1E48>);(<U1E4B>,<U1E4A>);(<U1E4D>,<U1E4C>);/
(<U1E4F>,<U1E4E>);(<U1E51>,<U1E50>);(<U1E53>,<U1E52>);(<U1E55>,<U1E54>);/
(<U1E57>,<U1E56>);(<U1E59>,<U1E58>);(<U1E5B>,<U1E5A>);(<U1E5D>,<U1E5C>);/
(<U1E5F>,<U1E5E>);(<U1E61>,<U1E60>);(<U1E63>,<U1E62>);(<U1E65>,<U1E64>);/
(<U1E67>,<U1E66>);(<U1E69>,<U1E68>);(<U1E6B>,<U1E6A>);(<U1E6D>,<U1E6C>);/
(<U1E6F>,<U1E6E>);(<U1E71>,<U1E70>);(<U1E73>,<U1E72>);(<U1E75>,<U1E74>);/
(<U1E77>,<U1E76>);(<U1E79>,<U1E78>);(<U1E7B>,<U1E7A>);(<U1E7D>,<U1E7C>);/
(<U1E7F>,<U1E7E>);(<U1E81>,<U1E80>);(<U1E83>,<U1E82>);(<U1E85>,<U1E84>);/
(<U1E87>,<U1E86>);(<U1E89>,<U1E88>);(<U1E8B>,<U1E8A>);(<U1E8D>,<U1E8C>);/
(<U1E8F>,<U1E8E>);(<U1E91>,<U1E90>);(<U1E93>,<U1E92>);(<U1E95>,<U1E94>);/
(<U1E9B>,<U1E60>);(<U1EA1>,<U1EA0>);(<U1EA3>,<U1EA2>);(<U1EA5>,<U1EA4>);/
(<U1EA7>,<U1EA6>);(<U1EA9>,<U1EA8>);(<U1EAB>,<U1EAA>);(<U1EAD>,<U1EAC>);/
(<U1EAF>,<U1EAE>);(<U1EB1>,<U1EB0>);(<U1EB3>,<U1EB2>);(<U1EB5>,<U1EB4>);/
(<U1EB7>,<U1EB6>);(<U1EB9>,<U1EB8>);(<U1EBB>,<U1EBA>);(<U1EBD>,<U1EBC>);/
(<U1EBF>,<U1EBE>);(<U1EC1>,<U1EC0>);(<U1EC3>,<U1EC2>);(<U1EC5>,<U1EC4>);/
(<U1EC7>,<U1EC6>);(<U1EC9>,<U1EC8>);(<U1ECB>,<U1ECA>);(<U1ECD>,<U1ECC>);/
(<U1ECF>,<U1ECE>);(<U1ED1>,<U1ED0>);(<U1ED3>,<U1ED2>);(<U1ED5>,<U1ED4>);/
(<U1ED7>,<U1ED6>);(<U1ED9>,<U1ED8>);(<U1EDB>,<U1EDA>);(<U1EDD>,<U1EDC>);/
(<U1EDF>,<U1EDE>);(<U1EE1>,<U1EE0>);(<U1EE3>,<U1EE2>);(<U1EE5>,<U1EE4>);/
(<U1EE7>,<U1EE6>);(<U1EE9>,<U1EE8>);(<U1EEB>,<U1EEA>);(<U1EED>,<U1EEC>);/
(<U1EEF>,<U1EEE>);(<U1EF1>,<U1EF0>);(<U1EF3>,<U1EF2>);(<U1EF5>,<U1EF4>);/
(<U1EF7>,<U1EF6>);(<U1EF9>,<U1EF8>);(<U1F00>,<U1F08>);(<U1F01>,<U1F09>);/
(<U1F02>,<U1F0A>);(<U1F03>,<U1F0B>);(<U1F04>,<U1F0C>);(<U1F05>,<U1F0D>);/
(<U1F06>,<U1F0E>);(<U1F07>,<U1F0F>);(<U1F10>,<U1F18>);(<U1F11>,<U1F19>);/
(<U1F12>,<U1F1A>);(<U1F13>,<U1F1B>);(<U1F14>,<U1F1C>);(<U1F15>,<U1F1D>);/
(<U1F20>,<U1F28>);(<U1F21>,<U1F29>);(<U1F22>,<U1F2A>);(<U1F23>,<U1F2B>);/
(<U1F24>,<U1F2C>);(<U1F25>,<U1F2D>);(<U1F26>,<U1F2E>);(<U1F27>,<U1F2F>);/
(<U1F30>,<U1F38>);(<U1F31>,<U1F39>);(<U1F32>,<U1F3A>);(<U1F33>,<U1F3B>);/
(<U1F34>,<U1F3C>);(<U1F35>,<U1F3D>);(<U1F36>,<U1F3E>);(<U1F37>,<U1F3F>);/
(<U1F40>,<U1F48>);(<U1F41>,<U1F49>);(<U1F42>,<U1F4A>);(<U1F43>,<U1F4B>);/
(<U1F44>,<U1F4C>);(<U1F45>,<U1F4D>);(<U1F51>,<U1F59>);(<U1F53>,<U1F5B>);/
(<U1F55>,<U1F5D>);(<U1F57>,<U1F5F>);(<U1F60>,<U1F68>);(<U1F61>,<U1F69>);/
(<U1F62>,<U1F6A>);(<U1F63>,<U1F6B>);(<U1F64>,<U1F6C>);(<U1F65>,<U1F6D>);/
(<U1F66>,<U1F6E>);(<U1F67>,<U1F6F>);(<U1F70>,<U1FBA>);(<U1F71>,<U1FBB>);/
(<U1F72>,<U1FC8>);(<U1F73>,<U1FC9>);(<U1F74>,<U1FCA>);(<U1F75>,<U1FCB>);/
(<U1F76>,<U1FDA>);(<U1F77>,<U1FDB>);(<U1F78>,<U1FF8>);(<U1F79>,<U1FF9>);/
(<U1F7A>,<U1FEA>);(<U1F7B>,<U1FEB>);(<U1F7C>,<U1FFA>);(<U1F7D>,<U1FFB>);/
(<U1F80>,<U1F88>);(<U1F81>,<U1F89>);(<U1F82>,<U1F8A>);(<U1F83>,<U1F8B>);/
(<U1F84>,<U1F8C>);(<U1F85>,<U1F8D>);(<U1F86>,<U1F8E>);(<U1F87>,<U1F8F>);/
(<U1F90>,<U1F98>);(<U1F91>,<U1F99>);(<U1F92>,<U1F9A>);(<U1F93>,<U1F9B>);/
(<U1F94>,<U1F9C>);(<U1F95>,<U1F9D>);(<U1F96>,<U1F9E>);(<U1F97>,<U1F9F>);/
(<U1FA0>,<U1FA8>);(<U1FA1>,<U1FA9>);(<U1FA2>,<U1FAA>);(<U1FA3>,<U1FAB>);/
(<U1FA4>,<U1FAC>);(<U1FA5>,<U1FAD>);(<U1FA6>,<U1FAE>);(<U1FA7>,<U1FAF>);/
(<U1FB0>,<U1FB8>);(<U1FB1>,<U1FB9>);(<U1FB3>,<U1FBC>);(<U1FBE>,<U0399>);/
(<U1FC3>,<U1FCC>);(<U1FD0>,<U1FD8>);(<U1FD1>,<U1FD9>);(<U1FE0>,<U1FE8>);/
(<U1FE1>,<U1FE9>);(<U1FE5>,<U1FEC>);(<U1FF3>,<U1FFC>);(<U2170>,<U2160>);/
(<U2171>,<U2161>);(<U2172>,<U2162>);(<U2173>,<U2163>);(<U2174>,<U2164>);/
(<U2175>,<U2165>);(<U2176>,<U2166>);(<U2177>,<U2167>);(<U2178>,<U2168>);/
(<U2179>,<U2169>);(<U217A>,<U216A>);(<U217B>,<U216B>);(<U217C>,<U216C>);/
(<U217D>,<U216D>);(<U217E>,<U216E>);(<U217F>,<U216F>);(<U24D0>,<U24B6>);/
(<U24D1>,<U24B7>);(<U24D2>,<U24B8>);(<U24D3>,<U24B9>);(<U24D4>,<U24BA>);/
(<U24D5>,<U24BB>);(<U24D6>,<U24BC>);(<U24D7>,<U24BD>);(<U24D8>,<U24BE>);/
(<U24D9>,<U24BF>);(<U24DA>,<U24C0>);(<U24DB>,<U24C1>);(<U24DC>,<U24C2>);/
(<U24DD>,<U24C3>);(<U24DE>,<U24C4>);(<U24DF>,<U24C5>);(<U24E0>,<U24C6>);/
(<U24E1>,<U24C7>);(<U24E2>,<U24C8>);(<U24E3>,<U24C9>);(<U24E4>,<U24CA>);/
(<U24E5>,<U24CB>);(<U24E6>,<U24CC>);(<U24E7>,<U24CD>);(<U24E8>,<U24CE>);/
(<U24E9>,<U24CF>);(<UFF41>,<UFF21>);(<UFF42>,<UFF22>);(<UFF43>,<UFF23>);/
(<UFF44>,<UFF24>);(<UFF45>,<UFF25>);(<UFF46>,<UFF26>);(<UFF47>,<UFF27>);/
(<UFF48>,<UFF28>);(<UFF49>,<UFF29>);(<UFF4A>,<UFF2A>);(<UFF4B>,<UFF2B>);/
(<UFF4C>,<UFF2C>);(<UFF4D>,<UFF2D>);(<UFF4E>,<UFF2E>);(<UFF4F>,<UFF2F>);/
(<UFF50>,<UFF30>);(<UFF51>,<UFF31>);(<UFF52>,<UFF32>);(<UFF53>,<UFF33>);/
(<UFF54>,<UFF34>);(<UFF55>,<UFF35>);(<UFF56>,<UFF36>);(<UFF57>,<UFF37>);/
(<UFF58>,<UFF38>);(<UFF59>,<UFF39>);(<UFF5A>,<UFF3A>);/
(<U00010428>,<U00010400>);(<U00010429>,<U00010401>);/
(<U0001042A>,<U00010402>);(<U0001042B>,<U00010403>);/
(<U0001042C>,<U00010404>);(<U0001042D>,<U00010405>);/
(<U0001042E>,<U00010406>);(<U0001042F>,<U00010407>);/
(<U00010430>,<U00010408>);(<U00010431>,<U00010409>);/
(<U00010432>,<U0001040A>);(<U00010433>,<U0001040B>);/
(<U00010434>,<U0001040C>);(<U00010435>,<U0001040D>);/
(<U00010436>,<U0001040E>);(<U00010437>,<U0001040F>);/
(<U00010438>,<U00010410>);(<U00010439>,<U00010411>);/
(<U0001043A>,<U00010412>);(<U0001043B>,<U00010413>);/
(<U0001043C>,<U00010414>);(<U0001043D>,<U00010415>);/
(<U0001043E>,<U00010416>);(<U0001043F>,<U00010417>);/
(<U00010440>,<U00010418>);(<U00010441>,<U00010419>);/
(<U00010442>,<U0001041A>);(<U00010443>,<U0001041B>);/
(<U00010444>,<U0001041C>);(<U00010445>,<U0001041D>);/
(<U00010446>,<U0001041E>);(<U00010447>,<U0001041F>);/
(<U00010448>,<U00010420>);(<U00010449>,<U00010421>);/
(<U0001044A>,<U00010422>);(<U0001044B>,<U00010423>);/
(<U0001044C>,<U00010424>);(<U0001044D>,<U00010425>)
tolower /
(<U0041>,<U0061>);(<U0042>,<U0062>);(<U0043>,<U0063>);(<U0044>,<U0064>);/
@ -2942,116 +3031,135 @@ tolower /
(<U03AB>,<U03CB>);(<U03DA>,<U03DB>);(<U03DC>,<U03DD>);(<U03DE>,<U03DF>);/
(<U03E0>,<U03E1>);(<U03E2>,<U03E3>);(<U03E4>,<U03E5>);(<U03E6>,<U03E7>);/
(<U03E8>,<U03E9>);(<U03EA>,<U03EB>);(<U03EC>,<U03ED>);(<U03EE>,<U03EF>);/
(<U0400>,<U0450>);(<U0401>,<U0451>);(<U0402>,<U0452>);(<U0403>,<U0453>);/
(<U0404>,<U0454>);(<U0405>,<U0455>);(<U0406>,<U0456>);(<U0407>,<U0457>);/
(<U0408>,<U0458>);(<U0409>,<U0459>);(<U040A>,<U045A>);(<U040B>,<U045B>);/
(<U040C>,<U045C>);(<U040D>,<U045D>);(<U040E>,<U045E>);(<U040F>,<U045F>);/
(<U0410>,<U0430>);(<U0411>,<U0431>);(<U0412>,<U0432>);(<U0413>,<U0433>);/
(<U0414>,<U0434>);(<U0415>,<U0435>);(<U0416>,<U0436>);(<U0417>,<U0437>);/
(<U0418>,<U0438>);(<U0419>,<U0439>);(<U041A>,<U043A>);(<U041B>,<U043B>);/
(<U041C>,<U043C>);(<U041D>,<U043D>);(<U041E>,<U043E>);(<U041F>,<U043F>);/
(<U0420>,<U0440>);(<U0421>,<U0441>);(<U0422>,<U0442>);(<U0423>,<U0443>);/
(<U0424>,<U0444>);(<U0425>,<U0445>);(<U0426>,<U0446>);(<U0427>,<U0447>);/
(<U0428>,<U0448>);(<U0429>,<U0449>);(<U042A>,<U044A>);(<U042B>,<U044B>);/
(<U042C>,<U044C>);(<U042D>,<U044D>);(<U042E>,<U044E>);(<U042F>,<U044F>);/
(<U0460>,<U0461>);(<U0462>,<U0463>);(<U0464>,<U0465>);(<U0466>,<U0467>);/
(<U0468>,<U0469>);(<U046A>,<U046B>);(<U046C>,<U046D>);(<U046E>,<U046F>);/
(<U0470>,<U0471>);(<U0472>,<U0473>);(<U0474>,<U0475>);(<U0476>,<U0477>);/
(<U0478>,<U0479>);(<U047A>,<U047B>);(<U047C>,<U047D>);(<U047E>,<U047F>);/
(<U0480>,<U0481>);(<U048C>,<U048D>);(<U048E>,<U048F>);(<U0490>,<U0491>);/
(<U0492>,<U0493>);(<U0494>,<U0495>);(<U0496>,<U0497>);(<U0498>,<U0499>);/
(<U049A>,<U049B>);(<U049C>,<U049D>);(<U049E>,<U049F>);(<U04A0>,<U04A1>);/
(<U04A2>,<U04A3>);(<U04A4>,<U04A5>);(<U04A6>,<U04A7>);(<U04A8>,<U04A9>);/
(<U04AA>,<U04AB>);(<U04AC>,<U04AD>);(<U04AE>,<U04AF>);(<U04B0>,<U04B1>);/
(<U04B2>,<U04B3>);(<U04B4>,<U04B5>);(<U04B6>,<U04B7>);(<U04B8>,<U04B9>);/
(<U04BA>,<U04BB>);(<U04BC>,<U04BD>);(<U04BE>,<U04BF>);(<U04C1>,<U04C2>);/
(<U04C3>,<U04C4>);(<U04C7>,<U04C8>);(<U04CB>,<U04CC>);(<U04D0>,<U04D1>);/
(<U04D2>,<U04D3>);(<U04D4>,<U04D5>);(<U04D6>,<U04D7>);(<U04D8>,<U04D9>);/
(<U04DA>,<U04DB>);(<U04DC>,<U04DD>);(<U04DE>,<U04DF>);(<U04E0>,<U04E1>);/
(<U04E2>,<U04E3>);(<U04E4>,<U04E5>);(<U04E6>,<U04E7>);(<U04E8>,<U04E9>);/
(<U04EA>,<U04EB>);(<U04EC>,<U04ED>);(<U04EE>,<U04EF>);(<U04F0>,<U04F1>);/
(<U04F2>,<U04F3>);(<U04F4>,<U04F5>);(<U04F8>,<U04F9>);(<U0531>,<U0561>);/
(<U0532>,<U0562>);(<U0533>,<U0563>);(<U0534>,<U0564>);(<U0535>,<U0565>);/
(<U0536>,<U0566>);(<U0537>,<U0567>);(<U0538>,<U0568>);(<U0539>,<U0569>);/
(<U053A>,<U056A>);(<U053B>,<U056B>);(<U053C>,<U056C>);(<U053D>,<U056D>);/
(<U053E>,<U056E>);(<U053F>,<U056F>);(<U0540>,<U0570>);(<U0541>,<U0571>);/
(<U0542>,<U0572>);(<U0543>,<U0573>);(<U0544>,<U0574>);(<U0545>,<U0575>);/
(<U0546>,<U0576>);(<U0547>,<U0577>);(<U0548>,<U0578>);(<U0549>,<U0579>);/
(<U054A>,<U057A>);(<U054B>,<U057B>);(<U054C>,<U057C>);(<U054D>,<U057D>);/
(<U054E>,<U057E>);(<U054F>,<U057F>);(<U0550>,<U0580>);(<U0551>,<U0581>);/
(<U0552>,<U0582>);(<U0553>,<U0583>);(<U0554>,<U0584>);(<U0555>,<U0585>);/
(<U0556>,<U0586>);(<U1E00>,<U1E01>);(<U1E02>,<U1E03>);(<U1E04>,<U1E05>);/
(<U1E06>,<U1E07>);(<U1E08>,<U1E09>);(<U1E0A>,<U1E0B>);(<U1E0C>,<U1E0D>);/
(<U1E0E>,<U1E0F>);(<U1E10>,<U1E11>);(<U1E12>,<U1E13>);(<U1E14>,<U1E15>);/
(<U1E16>,<U1E17>);(<U1E18>,<U1E19>);(<U1E1A>,<U1E1B>);(<U1E1C>,<U1E1D>);/
(<U1E1E>,<U1E1F>);(<U1E20>,<U1E21>);(<U1E22>,<U1E23>);(<U1E24>,<U1E25>);/
(<U1E26>,<U1E27>);(<U1E28>,<U1E29>);(<U1E2A>,<U1E2B>);(<U1E2C>,<U1E2D>);/
(<U1E2E>,<U1E2F>);(<U1E30>,<U1E31>);(<U1E32>,<U1E33>);(<U1E34>,<U1E35>);/
(<U1E36>,<U1E37>);(<U1E38>,<U1E39>);(<U1E3A>,<U1E3B>);(<U1E3C>,<U1E3D>);/
(<U1E3E>,<U1E3F>);(<U1E40>,<U1E41>);(<U1E42>,<U1E43>);(<U1E44>,<U1E45>);/
(<U1E46>,<U1E47>);(<U1E48>,<U1E49>);(<U1E4A>,<U1E4B>);(<U1E4C>,<U1E4D>);/
(<U1E4E>,<U1E4F>);(<U1E50>,<U1E51>);(<U1E52>,<U1E53>);(<U1E54>,<U1E55>);/
(<U1E56>,<U1E57>);(<U1E58>,<U1E59>);(<U1E5A>,<U1E5B>);(<U1E5C>,<U1E5D>);/
(<U1E5E>,<U1E5F>);(<U1E60>,<U1E61>);(<U1E62>,<U1E63>);(<U1E64>,<U1E65>);/
(<U1E66>,<U1E67>);(<U1E68>,<U1E69>);(<U1E6A>,<U1E6B>);(<U1E6C>,<U1E6D>);/
(<U1E6E>,<U1E6F>);(<U1E70>,<U1E71>);(<U1E72>,<U1E73>);(<U1E74>,<U1E75>);/
(<U1E76>,<U1E77>);(<U1E78>,<U1E79>);(<U1E7A>,<U1E7B>);(<U1E7C>,<U1E7D>);/
(<U1E7E>,<U1E7F>);(<U1E80>,<U1E81>);(<U1E82>,<U1E83>);(<U1E84>,<U1E85>);/
(<U1E86>,<U1E87>);(<U1E88>,<U1E89>);(<U1E8A>,<U1E8B>);(<U1E8C>,<U1E8D>);/
(<U1E8E>,<U1E8F>);(<U1E90>,<U1E91>);(<U1E92>,<U1E93>);(<U1E94>,<U1E95>);/
(<U1EA0>,<U1EA1>);(<U1EA2>,<U1EA3>);(<U1EA4>,<U1EA5>);(<U1EA6>,<U1EA7>);/
(<U1EA8>,<U1EA9>);(<U1EAA>,<U1EAB>);(<U1EAC>,<U1EAD>);(<U1EAE>,<U1EAF>);/
(<U1EB0>,<U1EB1>);(<U1EB2>,<U1EB3>);(<U1EB4>,<U1EB5>);(<U1EB6>,<U1EB7>);/
(<U1EB8>,<U1EB9>);(<U1EBA>,<U1EBB>);(<U1EBC>,<U1EBD>);(<U1EBE>,<U1EBF>);/
(<U1EC0>,<U1EC1>);(<U1EC2>,<U1EC3>);(<U1EC4>,<U1EC5>);(<U1EC6>,<U1EC7>);/
(<U1EC8>,<U1EC9>);(<U1ECA>,<U1ECB>);(<U1ECC>,<U1ECD>);(<U1ECE>,<U1ECF>);/
(<U1ED0>,<U1ED1>);(<U1ED2>,<U1ED3>);(<U1ED4>,<U1ED5>);(<U1ED6>,<U1ED7>);/
(<U1ED8>,<U1ED9>);(<U1EDA>,<U1EDB>);(<U1EDC>,<U1EDD>);(<U1EDE>,<U1EDF>);/
(<U1EE0>,<U1EE1>);(<U1EE2>,<U1EE3>);(<U1EE4>,<U1EE5>);(<U1EE6>,<U1EE7>);/
(<U1EE8>,<U1EE9>);(<U1EEA>,<U1EEB>);(<U1EEC>,<U1EED>);(<U1EEE>,<U1EEF>);/
(<U1EF0>,<U1EF1>);(<U1EF2>,<U1EF3>);(<U1EF4>,<U1EF5>);(<U1EF6>,<U1EF7>);/
(<U1EF8>,<U1EF9>);(<U1F08>,<U1F00>);(<U1F09>,<U1F01>);(<U1F0A>,<U1F02>);/
(<U1F0B>,<U1F03>);(<U1F0C>,<U1F04>);(<U1F0D>,<U1F05>);(<U1F0E>,<U1F06>);/
(<U1F0F>,<U1F07>);(<U1F18>,<U1F10>);(<U1F19>,<U1F11>);(<U1F1A>,<U1F12>);/
(<U1F1B>,<U1F13>);(<U1F1C>,<U1F14>);(<U1F1D>,<U1F15>);(<U1F28>,<U1F20>);/
(<U1F29>,<U1F21>);(<U1F2A>,<U1F22>);(<U1F2B>,<U1F23>);(<U1F2C>,<U1F24>);/
(<U1F2D>,<U1F25>);(<U1F2E>,<U1F26>);(<U1F2F>,<U1F27>);(<U1F38>,<U1F30>);/
(<U1F39>,<U1F31>);(<U1F3A>,<U1F32>);(<U1F3B>,<U1F33>);(<U1F3C>,<U1F34>);/
(<U1F3D>,<U1F35>);(<U1F3E>,<U1F36>);(<U1F3F>,<U1F37>);(<U1F48>,<U1F40>);/
(<U1F49>,<U1F41>);(<U1F4A>,<U1F42>);(<U1F4B>,<U1F43>);(<U1F4C>,<U1F44>);/
(<U1F4D>,<U1F45>);(<U1F59>,<U1F51>);(<U1F5B>,<U1F53>);(<U1F5D>,<U1F55>);/
(<U1F5F>,<U1F57>);(<U1F68>,<U1F60>);(<U1F69>,<U1F61>);(<U1F6A>,<U1F62>);/
(<U1F6B>,<U1F63>);(<U1F6C>,<U1F64>);(<U1F6D>,<U1F65>);(<U1F6E>,<U1F66>);/
(<U1F6F>,<U1F67>);(<U1F88>,<U1F80>);(<U1F89>,<U1F81>);(<U1F8A>,<U1F82>);/
(<U1F8B>,<U1F83>);(<U1F8C>,<U1F84>);(<U1F8D>,<U1F85>);(<U1F8E>,<U1F86>);/
(<U1F8F>,<U1F87>);(<U1F98>,<U1F90>);(<U1F99>,<U1F91>);(<U1F9A>,<U1F92>);/
(<U1F9B>,<U1F93>);(<U1F9C>,<U1F94>);(<U1F9D>,<U1F95>);(<U1F9E>,<U1F96>);/
(<U1F9F>,<U1F97>);(<U1FA8>,<U1FA0>);(<U1FA9>,<U1FA1>);(<U1FAA>,<U1FA2>);/
(<U1FAB>,<U1FA3>);(<U1FAC>,<U1FA4>);(<U1FAD>,<U1FA5>);(<U1FAE>,<U1FA6>);/
(<U1FAF>,<U1FA7>);(<U1FB8>,<U1FB0>);(<U1FB9>,<U1FB1>);(<U1FBA>,<U1F70>);/
(<U1FBB>,<U1F71>);(<U1FBC>,<U1FB3>);(<U1FC8>,<U1F72>);(<U1FC9>,<U1F73>);/
(<U1FCA>,<U1F74>);(<U1FCB>,<U1F75>);(<U1FCC>,<U1FC3>);(<U1FD8>,<U1FD0>);/
(<U1FD9>,<U1FD1>);(<U1FDA>,<U1F76>);(<U1FDB>,<U1F77>);(<U1FE8>,<U1FE0>);/
(<U1FE9>,<U1FE1>);(<U1FEA>,<U1F7A>);(<U1FEB>,<U1F7B>);(<U1FEC>,<U1FE5>);/
(<U1FF8>,<U1F78>);(<U1FF9>,<U1F79>);(<U1FFA>,<U1F7C>);(<U1FFB>,<U1F7D>);/
(<U1FFC>,<U1FF3>);(<U2126>,<U03C9>);(<U212A>,<U006B>);(<U212B>,<U00E5>);/
(<U2160>,<U2170>);(<U2161>,<U2171>);(<U2162>,<U2172>);(<U2163>,<U2173>);/
(<U2164>,<U2174>);(<U2165>,<U2175>);(<U2166>,<U2176>);(<U2167>,<U2177>);/
(<U2168>,<U2178>);(<U2169>,<U2179>);(<U216A>,<U217A>);(<U216B>,<U217B>);/
(<U216C>,<U217C>);(<U216D>,<U217D>);(<U216E>,<U217E>);(<U216F>,<U217F>);/
(<U24B6>,<U24D0>);(<U24B7>,<U24D1>);(<U24B8>,<U24D2>);(<U24B9>,<U24D3>);/
(<U24BA>,<U24D4>);(<U24BB>,<U24D5>);(<U24BC>,<U24D6>);(<U24BD>,<U24D7>);/
(<U24BE>,<U24D8>);(<U24BF>,<U24D9>);(<U24C0>,<U24DA>);(<U24C1>,<U24DB>);/
(<U24C2>,<U24DC>);(<U24C3>,<U24DD>);(<U24C4>,<U24DE>);(<U24C5>,<U24DF>);/
(<U24C6>,<U24E0>);(<U24C7>,<U24E1>);(<U24C8>,<U24E2>);(<U24C9>,<U24E3>);/
(<U24CA>,<U24E4>);(<U24CB>,<U24E5>);(<U24CC>,<U24E6>);(<U24CD>,<U24E7>);/
(<U24CE>,<U24E8>);(<U24CF>,<U24E9>);(<UFF21>,<UFF41>);(<UFF22>,<UFF42>);/
(<UFF23>,<UFF43>);(<UFF24>,<UFF44>);(<UFF25>,<UFF45>);(<UFF26>,<UFF46>);/
(<UFF27>,<UFF47>);(<UFF28>,<UFF48>);(<UFF29>,<UFF49>);(<UFF2A>,<UFF4A>);/
(<UFF2B>,<UFF4B>);(<UFF2C>,<UFF4C>);(<UFF2D>,<UFF4D>);(<UFF2E>,<UFF4E>);/
(<UFF2F>,<UFF4F>);(<UFF30>,<UFF50>);(<UFF31>,<UFF51>);(<UFF32>,<UFF52>);/
(<UFF33>,<UFF53>);(<UFF34>,<UFF54>);(<UFF35>,<UFF55>);(<UFF36>,<UFF56>);/
(<UFF37>,<UFF57>);(<UFF38>,<UFF58>);(<UFF39>,<UFF59>);(<UFF3A>,<UFF5A>)
(<U03F4>,<U03B8>);(<U0400>,<U0450>);(<U0401>,<U0451>);(<U0402>,<U0452>);/
(<U0403>,<U0453>);(<U0404>,<U0454>);(<U0405>,<U0455>);(<U0406>,<U0456>);/
(<U0407>,<U0457>);(<U0408>,<U0458>);(<U0409>,<U0459>);(<U040A>,<U045A>);/
(<U040B>,<U045B>);(<U040C>,<U045C>);(<U040D>,<U045D>);(<U040E>,<U045E>);/
(<U040F>,<U045F>);(<U0410>,<U0430>);(<U0411>,<U0431>);(<U0412>,<U0432>);/
(<U0413>,<U0433>);(<U0414>,<U0434>);(<U0415>,<U0435>);(<U0416>,<U0436>);/
(<U0417>,<U0437>);(<U0418>,<U0438>);(<U0419>,<U0439>);(<U041A>,<U043A>);/
(<U041B>,<U043B>);(<U041C>,<U043C>);(<U041D>,<U043D>);(<U041E>,<U043E>);/
(<U041F>,<U043F>);(<U0420>,<U0440>);(<U0421>,<U0441>);(<U0422>,<U0442>);/
(<U0423>,<U0443>);(<U0424>,<U0444>);(<U0425>,<U0445>);(<U0426>,<U0446>);/
(<U0427>,<U0447>);(<U0428>,<U0448>);(<U0429>,<U0449>);(<U042A>,<U044A>);/
(<U042B>,<U044B>);(<U042C>,<U044C>);(<U042D>,<U044D>);(<U042E>,<U044E>);/
(<U042F>,<U044F>);(<U0460>,<U0461>);(<U0462>,<U0463>);(<U0464>,<U0465>);/
(<U0466>,<U0467>);(<U0468>,<U0469>);(<U046A>,<U046B>);(<U046C>,<U046D>);/
(<U046E>,<U046F>);(<U0470>,<U0471>);(<U0472>,<U0473>);(<U0474>,<U0475>);/
(<U0476>,<U0477>);(<U0478>,<U0479>);(<U047A>,<U047B>);(<U047C>,<U047D>);/
(<U047E>,<U047F>);(<U0480>,<U0481>);(<U048C>,<U048D>);(<U048E>,<U048F>);/
(<U0490>,<U0491>);(<U0492>,<U0493>);(<U0494>,<U0495>);(<U0496>,<U0497>);/
(<U0498>,<U0499>);(<U049A>,<U049B>);(<U049C>,<U049D>);(<U049E>,<U049F>);/
(<U04A0>,<U04A1>);(<U04A2>,<U04A3>);(<U04A4>,<U04A5>);(<U04A6>,<U04A7>);/
(<U04A8>,<U04A9>);(<U04AA>,<U04AB>);(<U04AC>,<U04AD>);(<U04AE>,<U04AF>);/
(<U04B0>,<U04B1>);(<U04B2>,<U04B3>);(<U04B4>,<U04B5>);(<U04B6>,<U04B7>);/
(<U04B8>,<U04B9>);(<U04BA>,<U04BB>);(<U04BC>,<U04BD>);(<U04BE>,<U04BF>);/
(<U04C1>,<U04C2>);(<U04C3>,<U04C4>);(<U04C7>,<U04C8>);(<U04CB>,<U04CC>);/
(<U04D0>,<U04D1>);(<U04D2>,<U04D3>);(<U04D4>,<U04D5>);(<U04D6>,<U04D7>);/
(<U04D8>,<U04D9>);(<U04DA>,<U04DB>);(<U04DC>,<U04DD>);(<U04DE>,<U04DF>);/
(<U04E0>,<U04E1>);(<U04E2>,<U04E3>);(<U04E4>,<U04E5>);(<U04E6>,<U04E7>);/
(<U04E8>,<U04E9>);(<U04EA>,<U04EB>);(<U04EC>,<U04ED>);(<U04EE>,<U04EF>);/
(<U04F0>,<U04F1>);(<U04F2>,<U04F3>);(<U04F4>,<U04F5>);(<U04F8>,<U04F9>);/
(<U0531>,<U0561>);(<U0532>,<U0562>);(<U0533>,<U0563>);(<U0534>,<U0564>);/
(<U0535>,<U0565>);(<U0536>,<U0566>);(<U0537>,<U0567>);(<U0538>,<U0568>);/
(<U0539>,<U0569>);(<U053A>,<U056A>);(<U053B>,<U056B>);(<U053C>,<U056C>);/
(<U053D>,<U056D>);(<U053E>,<U056E>);(<U053F>,<U056F>);(<U0540>,<U0570>);/
(<U0541>,<U0571>);(<U0542>,<U0572>);(<U0543>,<U0573>);(<U0544>,<U0574>);/
(<U0545>,<U0575>);(<U0546>,<U0576>);(<U0547>,<U0577>);(<U0548>,<U0578>);/
(<U0549>,<U0579>);(<U054A>,<U057A>);(<U054B>,<U057B>);(<U054C>,<U057C>);/
(<U054D>,<U057D>);(<U054E>,<U057E>);(<U054F>,<U057F>);(<U0550>,<U0580>);/
(<U0551>,<U0581>);(<U0552>,<U0582>);(<U0553>,<U0583>);(<U0554>,<U0584>);/
(<U0555>,<U0585>);(<U0556>,<U0586>);(<U1E00>,<U1E01>);(<U1E02>,<U1E03>);/
(<U1E04>,<U1E05>);(<U1E06>,<U1E07>);(<U1E08>,<U1E09>);(<U1E0A>,<U1E0B>);/
(<U1E0C>,<U1E0D>);(<U1E0E>,<U1E0F>);(<U1E10>,<U1E11>);(<U1E12>,<U1E13>);/
(<U1E14>,<U1E15>);(<U1E16>,<U1E17>);(<U1E18>,<U1E19>);(<U1E1A>,<U1E1B>);/
(<U1E1C>,<U1E1D>);(<U1E1E>,<U1E1F>);(<U1E20>,<U1E21>);(<U1E22>,<U1E23>);/
(<U1E24>,<U1E25>);(<U1E26>,<U1E27>);(<U1E28>,<U1E29>);(<U1E2A>,<U1E2B>);/
(<U1E2C>,<U1E2D>);(<U1E2E>,<U1E2F>);(<U1E30>,<U1E31>);(<U1E32>,<U1E33>);/
(<U1E34>,<U1E35>);(<U1E36>,<U1E37>);(<U1E38>,<U1E39>);(<U1E3A>,<U1E3B>);/
(<U1E3C>,<U1E3D>);(<U1E3E>,<U1E3F>);(<U1E40>,<U1E41>);(<U1E42>,<U1E43>);/
(<U1E44>,<U1E45>);(<U1E46>,<U1E47>);(<U1E48>,<U1E49>);(<U1E4A>,<U1E4B>);/
(<U1E4C>,<U1E4D>);(<U1E4E>,<U1E4F>);(<U1E50>,<U1E51>);(<U1E52>,<U1E53>);/
(<U1E54>,<U1E55>);(<U1E56>,<U1E57>);(<U1E58>,<U1E59>);(<U1E5A>,<U1E5B>);/
(<U1E5C>,<U1E5D>);(<U1E5E>,<U1E5F>);(<U1E60>,<U1E61>);(<U1E62>,<U1E63>);/
(<U1E64>,<U1E65>);(<U1E66>,<U1E67>);(<U1E68>,<U1E69>);(<U1E6A>,<U1E6B>);/
(<U1E6C>,<U1E6D>);(<U1E6E>,<U1E6F>);(<U1E70>,<U1E71>);(<U1E72>,<U1E73>);/
(<U1E74>,<U1E75>);(<U1E76>,<U1E77>);(<U1E78>,<U1E79>);(<U1E7A>,<U1E7B>);/
(<U1E7C>,<U1E7D>);(<U1E7E>,<U1E7F>);(<U1E80>,<U1E81>);(<U1E82>,<U1E83>);/
(<U1E84>,<U1E85>);(<U1E86>,<U1E87>);(<U1E88>,<U1E89>);(<U1E8A>,<U1E8B>);/
(<U1E8C>,<U1E8D>);(<U1E8E>,<U1E8F>);(<U1E90>,<U1E91>);(<U1E92>,<U1E93>);/
(<U1E94>,<U1E95>);(<U1EA0>,<U1EA1>);(<U1EA2>,<U1EA3>);(<U1EA4>,<U1EA5>);/
(<U1EA6>,<U1EA7>);(<U1EA8>,<U1EA9>);(<U1EAA>,<U1EAB>);(<U1EAC>,<U1EAD>);/
(<U1EAE>,<U1EAF>);(<U1EB0>,<U1EB1>);(<U1EB2>,<U1EB3>);(<U1EB4>,<U1EB5>);/
(<U1EB6>,<U1EB7>);(<U1EB8>,<U1EB9>);(<U1EBA>,<U1EBB>);(<U1EBC>,<U1EBD>);/
(<U1EBE>,<U1EBF>);(<U1EC0>,<U1EC1>);(<U1EC2>,<U1EC3>);(<U1EC4>,<U1EC5>);/
(<U1EC6>,<U1EC7>);(<U1EC8>,<U1EC9>);(<U1ECA>,<U1ECB>);(<U1ECC>,<U1ECD>);/
(<U1ECE>,<U1ECF>);(<U1ED0>,<U1ED1>);(<U1ED2>,<U1ED3>);(<U1ED4>,<U1ED5>);/
(<U1ED6>,<U1ED7>);(<U1ED8>,<U1ED9>);(<U1EDA>,<U1EDB>);(<U1EDC>,<U1EDD>);/
(<U1EDE>,<U1EDF>);(<U1EE0>,<U1EE1>);(<U1EE2>,<U1EE3>);(<U1EE4>,<U1EE5>);/
(<U1EE6>,<U1EE7>);(<U1EE8>,<U1EE9>);(<U1EEA>,<U1EEB>);(<U1EEC>,<U1EED>);/
(<U1EEE>,<U1EEF>);(<U1EF0>,<U1EF1>);(<U1EF2>,<U1EF3>);(<U1EF4>,<U1EF5>);/
(<U1EF6>,<U1EF7>);(<U1EF8>,<U1EF9>);(<U1F08>,<U1F00>);(<U1F09>,<U1F01>);/
(<U1F0A>,<U1F02>);(<U1F0B>,<U1F03>);(<U1F0C>,<U1F04>);(<U1F0D>,<U1F05>);/
(<U1F0E>,<U1F06>);(<U1F0F>,<U1F07>);(<U1F18>,<U1F10>);(<U1F19>,<U1F11>);/
(<U1F1A>,<U1F12>);(<U1F1B>,<U1F13>);(<U1F1C>,<U1F14>);(<U1F1D>,<U1F15>);/
(<U1F28>,<U1F20>);(<U1F29>,<U1F21>);(<U1F2A>,<U1F22>);(<U1F2B>,<U1F23>);/
(<U1F2C>,<U1F24>);(<U1F2D>,<U1F25>);(<U1F2E>,<U1F26>);(<U1F2F>,<U1F27>);/
(<U1F38>,<U1F30>);(<U1F39>,<U1F31>);(<U1F3A>,<U1F32>);(<U1F3B>,<U1F33>);/
(<U1F3C>,<U1F34>);(<U1F3D>,<U1F35>);(<U1F3E>,<U1F36>);(<U1F3F>,<U1F37>);/
(<U1F48>,<U1F40>);(<U1F49>,<U1F41>);(<U1F4A>,<U1F42>);(<U1F4B>,<U1F43>);/
(<U1F4C>,<U1F44>);(<U1F4D>,<U1F45>);(<U1F59>,<U1F51>);(<U1F5B>,<U1F53>);/
(<U1F5D>,<U1F55>);(<U1F5F>,<U1F57>);(<U1F68>,<U1F60>);(<U1F69>,<U1F61>);/
(<U1F6A>,<U1F62>);(<U1F6B>,<U1F63>);(<U1F6C>,<U1F64>);(<U1F6D>,<U1F65>);/
(<U1F6E>,<U1F66>);(<U1F6F>,<U1F67>);(<U1F88>,<U1F80>);(<U1F89>,<U1F81>);/
(<U1F8A>,<U1F82>);(<U1F8B>,<U1F83>);(<U1F8C>,<U1F84>);(<U1F8D>,<U1F85>);/
(<U1F8E>,<U1F86>);(<U1F8F>,<U1F87>);(<U1F98>,<U1F90>);(<U1F99>,<U1F91>);/
(<U1F9A>,<U1F92>);(<U1F9B>,<U1F93>);(<U1F9C>,<U1F94>);(<U1F9D>,<U1F95>);/
(<U1F9E>,<U1F96>);(<U1F9F>,<U1F97>);(<U1FA8>,<U1FA0>);(<U1FA9>,<U1FA1>);/
(<U1FAA>,<U1FA2>);(<U1FAB>,<U1FA3>);(<U1FAC>,<U1FA4>);(<U1FAD>,<U1FA5>);/
(<U1FAE>,<U1FA6>);(<U1FAF>,<U1FA7>);(<U1FB8>,<U1FB0>);(<U1FB9>,<U1FB1>);/
(<U1FBA>,<U1F70>);(<U1FBB>,<U1F71>);(<U1FBC>,<U1FB3>);(<U1FC8>,<U1F72>);/
(<U1FC9>,<U1F73>);(<U1FCA>,<U1F74>);(<U1FCB>,<U1F75>);(<U1FCC>,<U1FC3>);/
(<U1FD8>,<U1FD0>);(<U1FD9>,<U1FD1>);(<U1FDA>,<U1F76>);(<U1FDB>,<U1F77>);/
(<U1FE8>,<U1FE0>);(<U1FE9>,<U1FE1>);(<U1FEA>,<U1F7A>);(<U1FEB>,<U1F7B>);/
(<U1FEC>,<U1FE5>);(<U1FF8>,<U1F78>);(<U1FF9>,<U1F79>);(<U1FFA>,<U1F7C>);/
(<U1FFB>,<U1F7D>);(<U1FFC>,<U1FF3>);(<U2126>,<U03C9>);(<U212A>,<U006B>);/
(<U212B>,<U00E5>);(<U2160>,<U2170>);(<U2161>,<U2171>);(<U2162>,<U2172>);/
(<U2163>,<U2173>);(<U2164>,<U2174>);(<U2165>,<U2175>);(<U2166>,<U2176>);/
(<U2167>,<U2177>);(<U2168>,<U2178>);(<U2169>,<U2179>);(<U216A>,<U217A>);/
(<U216B>,<U217B>);(<U216C>,<U217C>);(<U216D>,<U217D>);(<U216E>,<U217E>);/
(<U216F>,<U217F>);(<U24B6>,<U24D0>);(<U24B7>,<U24D1>);(<U24B8>,<U24D2>);/
(<U24B9>,<U24D3>);(<U24BA>,<U24D4>);(<U24BB>,<U24D5>);(<U24BC>,<U24D6>);/
(<U24BD>,<U24D7>);(<U24BE>,<U24D8>);(<U24BF>,<U24D9>);(<U24C0>,<U24DA>);/
(<U24C1>,<U24DB>);(<U24C2>,<U24DC>);(<U24C3>,<U24DD>);(<U24C4>,<U24DE>);/
(<U24C5>,<U24DF>);(<U24C6>,<U24E0>);(<U24C7>,<U24E1>);(<U24C8>,<U24E2>);/
(<U24C9>,<U24E3>);(<U24CA>,<U24E4>);(<U24CB>,<U24E5>);(<U24CC>,<U24E6>);/
(<U24CD>,<U24E7>);(<U24CE>,<U24E8>);(<U24CF>,<U24E9>);(<UFF21>,<UFF41>);/
(<UFF22>,<UFF42>);(<UFF23>,<UFF43>);(<UFF24>,<UFF44>);(<UFF25>,<UFF45>);/
(<UFF26>,<UFF46>);(<UFF27>,<UFF47>);(<UFF28>,<UFF48>);(<UFF29>,<UFF49>);/
(<UFF2A>,<UFF4A>);(<UFF2B>,<UFF4B>);(<UFF2C>,<UFF4C>);(<UFF2D>,<UFF4D>);/
(<UFF2E>,<UFF4E>);(<UFF2F>,<UFF4F>);(<UFF30>,<UFF50>);(<UFF31>,<UFF51>);/
(<UFF32>,<UFF52>);(<UFF33>,<UFF53>);(<UFF34>,<UFF54>);(<UFF35>,<UFF55>);/
(<UFF36>,<UFF56>);(<UFF37>,<UFF57>);(<UFF38>,<UFF58>);(<UFF39>,<UFF59>);/
(<UFF3A>,<UFF5A>);(<U00010400>,<U00010428>);(<U00010401>,<U00010429>);/
(<U00010402>,<U0001042A>);(<U00010403>,<U0001042B>);/
(<U00010404>,<U0001042C>);(<U00010405>,<U0001042D>);/
(<U00010406>,<U0001042E>);(<U00010407>,<U0001042F>);/
(<U00010408>,<U00010430>);(<U00010409>,<U00010431>);/
(<U0001040A>,<U00010432>);(<U0001040B>,<U00010433>);/
(<U0001040C>,<U00010434>);(<U0001040D>,<U00010435>);/
(<U0001040E>,<U00010436>);(<U0001040F>,<U00010437>);/
(<U00010410>,<U00010438>);(<U00010411>,<U00010439>);/
(<U00010412>,<U0001043A>);(<U00010413>,<U0001043B>);/
(<U00010414>,<U0001043C>);(<U00010415>,<U0001043D>);/
(<U00010416>,<U0001043E>);(<U00010417>,<U0001043F>);/
(<U00010418>,<U00010440>);(<U00010419>,<U00010441>);/
(<U0001041A>,<U00010442>);(<U0001041B>,<U00010443>);/
(<U0001041C>,<U00010444>);(<U0001041D>,<U00010445>);/
(<U0001041E>,<U00010446>);(<U0001041F>,<U00010447>);/
(<U00010420>,<U00010448>);(<U00010421>,<U00010449>);/
(<U00010422>,<U0001044A>);(<U00010423>,<U0001044B>);/
(<U00010424>,<U0001044C>);(<U00010425>,<U0001044D>)
map "totitle"; /
(<U0061>,<U0041>);(<U0062>,<U0042>);(<U0063>,<U0043>);(<U0064>,<U0044>);/
@ -3120,117 +3228,136 @@ map "totitle"; /
(<U03D6>,<U03A0>);(<U03DB>,<U03DA>);(<U03DD>,<U03DC>);(<U03DF>,<U03DE>);/
(<U03E1>,<U03E0>);(<U03E3>,<U03E2>);(<U03E5>,<U03E4>);(<U03E7>,<U03E6>);/
(<U03E9>,<U03E8>);(<U03EB>,<U03EA>);(<U03ED>,<U03EC>);(<U03EF>,<U03EE>);/
(<U03F0>,<U039A>);(<U03F1>,<U03A1>);(<U03F2>,<U03A3>);(<U0430>,<U0410>);/
(<U0431>,<U0411>);(<U0432>,<U0412>);(<U0433>,<U0413>);(<U0434>,<U0414>);/
(<U0435>,<U0415>);(<U0436>,<U0416>);(<U0437>,<U0417>);(<U0438>,<U0418>);/
(<U0439>,<U0419>);(<U043A>,<U041A>);(<U043B>,<U041B>);(<U043C>,<U041C>);/
(<U043D>,<U041D>);(<U043E>,<U041E>);(<U043F>,<U041F>);(<U0440>,<U0420>);/
(<U0441>,<U0421>);(<U0442>,<U0422>);(<U0443>,<U0423>);(<U0444>,<U0424>);/
(<U0445>,<U0425>);(<U0446>,<U0426>);(<U0447>,<U0427>);(<U0448>,<U0428>);/
(<U0449>,<U0429>);(<U044A>,<U042A>);(<U044B>,<U042B>);(<U044C>,<U042C>);/
(<U044D>,<U042D>);(<U044E>,<U042E>);(<U044F>,<U042F>);(<U0450>,<U0400>);/
(<U0451>,<U0401>);(<U0452>,<U0402>);(<U0453>,<U0403>);(<U0454>,<U0404>);/
(<U0455>,<U0405>);(<U0456>,<U0406>);(<U0457>,<U0407>);(<U0458>,<U0408>);/
(<U0459>,<U0409>);(<U045A>,<U040A>);(<U045B>,<U040B>);(<U045C>,<U040C>);/
(<U045D>,<U040D>);(<U045E>,<U040E>);(<U045F>,<U040F>);(<U0461>,<U0460>);/
(<U0463>,<U0462>);(<U0465>,<U0464>);(<U0467>,<U0466>);(<U0469>,<U0468>);/
(<U046B>,<U046A>);(<U046D>,<U046C>);(<U046F>,<U046E>);(<U0471>,<U0470>);/
(<U0473>,<U0472>);(<U0475>,<U0474>);(<U0477>,<U0476>);(<U0479>,<U0478>);/
(<U047B>,<U047A>);(<U047D>,<U047C>);(<U047F>,<U047E>);(<U0481>,<U0480>);/
(<U048D>,<U048C>);(<U048F>,<U048E>);(<U0491>,<U0490>);(<U0493>,<U0492>);/
(<U0495>,<U0494>);(<U0497>,<U0496>);(<U0499>,<U0498>);(<U049B>,<U049A>);/
(<U049D>,<U049C>);(<U049F>,<U049E>);(<U04A1>,<U04A0>);(<U04A3>,<U04A2>);/
(<U04A5>,<U04A4>);(<U04A7>,<U04A6>);(<U04A9>,<U04A8>);(<U04AB>,<U04AA>);/
(<U04AD>,<U04AC>);(<U04AF>,<U04AE>);(<U04B1>,<U04B0>);(<U04B3>,<U04B2>);/
(<U04B5>,<U04B4>);(<U04B7>,<U04B6>);(<U04B9>,<U04B8>);(<U04BB>,<U04BA>);/
(<U04BD>,<U04BC>);(<U04BF>,<U04BE>);(<U04C2>,<U04C1>);(<U04C4>,<U04C3>);/
(<U04C8>,<U04C7>);(<U04CC>,<U04CB>);(<U04D1>,<U04D0>);(<U04D3>,<U04D2>);/
(<U04D5>,<U04D4>);(<U04D7>,<U04D6>);(<U04D9>,<U04D8>);(<U04DB>,<U04DA>);/
(<U04DD>,<U04DC>);(<U04DF>,<U04DE>);(<U04E1>,<U04E0>);(<U04E3>,<U04E2>);/
(<U04E5>,<U04E4>);(<U04E7>,<U04E6>);(<U04E9>,<U04E8>);(<U04EB>,<U04EA>);/
(<U04ED>,<U04EC>);(<U04EF>,<U04EE>);(<U04F1>,<U04F0>);(<U04F3>,<U04F2>);/
(<U04F5>,<U04F4>);(<U04F9>,<U04F8>);(<U0561>,<U0531>);(<U0562>,<U0532>);/
(<U0563>,<U0533>);(<U0564>,<U0534>);(<U0565>,<U0535>);(<U0566>,<U0536>);/
(<U0567>,<U0537>);(<U0568>,<U0538>);(<U0569>,<U0539>);(<U056A>,<U053A>);/
(<U056B>,<U053B>);(<U056C>,<U053C>);(<U056D>,<U053D>);(<U056E>,<U053E>);/
(<U056F>,<U053F>);(<U0570>,<U0540>);(<U0571>,<U0541>);(<U0572>,<U0542>);/
(<U0573>,<U0543>);(<U0574>,<U0544>);(<U0575>,<U0545>);(<U0576>,<U0546>);/
(<U0577>,<U0547>);(<U0578>,<U0548>);(<U0579>,<U0549>);(<U057A>,<U054A>);/
(<U057B>,<U054B>);(<U057C>,<U054C>);(<U057D>,<U054D>);(<U057E>,<U054E>);/
(<U057F>,<U054F>);(<U0580>,<U0550>);(<U0581>,<U0551>);(<U0582>,<U0552>);/
(<U0583>,<U0553>);(<U0584>,<U0554>);(<U0585>,<U0555>);(<U0586>,<U0556>);/
(<U1E01>,<U1E00>);(<U1E03>,<U1E02>);(<U1E05>,<U1E04>);(<U1E07>,<U1E06>);/
(<U1E09>,<U1E08>);(<U1E0B>,<U1E0A>);(<U1E0D>,<U1E0C>);(<U1E0F>,<U1E0E>);/
(<U1E11>,<U1E10>);(<U1E13>,<U1E12>);(<U1E15>,<U1E14>);(<U1E17>,<U1E16>);/
(<U1E19>,<U1E18>);(<U1E1B>,<U1E1A>);(<U1E1D>,<U1E1C>);(<U1E1F>,<U1E1E>);/
(<U1E21>,<U1E20>);(<U1E23>,<U1E22>);(<U1E25>,<U1E24>);(<U1E27>,<U1E26>);/
(<U1E29>,<U1E28>);(<U1E2B>,<U1E2A>);(<U1E2D>,<U1E2C>);(<U1E2F>,<U1E2E>);/
(<U1E31>,<U1E30>);(<U1E33>,<U1E32>);(<U1E35>,<U1E34>);(<U1E37>,<U1E36>);/
(<U1E39>,<U1E38>);(<U1E3B>,<U1E3A>);(<U1E3D>,<U1E3C>);(<U1E3F>,<U1E3E>);/
(<U1E41>,<U1E40>);(<U1E43>,<U1E42>);(<U1E45>,<U1E44>);(<U1E47>,<U1E46>);/
(<U1E49>,<U1E48>);(<U1E4B>,<U1E4A>);(<U1E4D>,<U1E4C>);(<U1E4F>,<U1E4E>);/
(<U1E51>,<U1E50>);(<U1E53>,<U1E52>);(<U1E55>,<U1E54>);(<U1E57>,<U1E56>);/
(<U1E59>,<U1E58>);(<U1E5B>,<U1E5A>);(<U1E5D>,<U1E5C>);(<U1E5F>,<U1E5E>);/
(<U1E61>,<U1E60>);(<U1E63>,<U1E62>);(<U1E65>,<U1E64>);(<U1E67>,<U1E66>);/
(<U1E69>,<U1E68>);(<U1E6B>,<U1E6A>);(<U1E6D>,<U1E6C>);(<U1E6F>,<U1E6E>);/
(<U1E71>,<U1E70>);(<U1E73>,<U1E72>);(<U1E75>,<U1E74>);(<U1E77>,<U1E76>);/
(<U1E79>,<U1E78>);(<U1E7B>,<U1E7A>);(<U1E7D>,<U1E7C>);(<U1E7F>,<U1E7E>);/
(<U1E81>,<U1E80>);(<U1E83>,<U1E82>);(<U1E85>,<U1E84>);(<U1E87>,<U1E86>);/
(<U1E89>,<U1E88>);(<U1E8B>,<U1E8A>);(<U1E8D>,<U1E8C>);(<U1E8F>,<U1E8E>);/
(<U1E91>,<U1E90>);(<U1E93>,<U1E92>);(<U1E95>,<U1E94>);(<U1E9B>,<U1E60>);/
(<U1EA1>,<U1EA0>);(<U1EA3>,<U1EA2>);(<U1EA5>,<U1EA4>);(<U1EA7>,<U1EA6>);/
(<U1EA9>,<U1EA8>);(<U1EAB>,<U1EAA>);(<U1EAD>,<U1EAC>);(<U1EAF>,<U1EAE>);/
(<U1EB1>,<U1EB0>);(<U1EB3>,<U1EB2>);(<U1EB5>,<U1EB4>);(<U1EB7>,<U1EB6>);/
(<U1EB9>,<U1EB8>);(<U1EBB>,<U1EBA>);(<U1EBD>,<U1EBC>);(<U1EBF>,<U1EBE>);/
(<U1EC1>,<U1EC0>);(<U1EC3>,<U1EC2>);(<U1EC5>,<U1EC4>);(<U1EC7>,<U1EC6>);/
(<U1EC9>,<U1EC8>);(<U1ECB>,<U1ECA>);(<U1ECD>,<U1ECC>);(<U1ECF>,<U1ECE>);/
(<U1ED1>,<U1ED0>);(<U1ED3>,<U1ED2>);(<U1ED5>,<U1ED4>);(<U1ED7>,<U1ED6>);/
(<U1ED9>,<U1ED8>);(<U1EDB>,<U1EDA>);(<U1EDD>,<U1EDC>);(<U1EDF>,<U1EDE>);/
(<U1EE1>,<U1EE0>);(<U1EE3>,<U1EE2>);(<U1EE5>,<U1EE4>);(<U1EE7>,<U1EE6>);/
(<U1EE9>,<U1EE8>);(<U1EEB>,<U1EEA>);(<U1EED>,<U1EEC>);(<U1EEF>,<U1EEE>);/
(<U1EF1>,<U1EF0>);(<U1EF3>,<U1EF2>);(<U1EF5>,<U1EF4>);(<U1EF7>,<U1EF6>);/
(<U1EF9>,<U1EF8>);(<U1F00>,<U1F08>);(<U1F01>,<U1F09>);(<U1F02>,<U1F0A>);/
(<U1F03>,<U1F0B>);(<U1F04>,<U1F0C>);(<U1F05>,<U1F0D>);(<U1F06>,<U1F0E>);/
(<U1F07>,<U1F0F>);(<U1F10>,<U1F18>);(<U1F11>,<U1F19>);(<U1F12>,<U1F1A>);/
(<U1F13>,<U1F1B>);(<U1F14>,<U1F1C>);(<U1F15>,<U1F1D>);(<U1F20>,<U1F28>);/
(<U1F21>,<U1F29>);(<U1F22>,<U1F2A>);(<U1F23>,<U1F2B>);(<U1F24>,<U1F2C>);/
(<U1F25>,<U1F2D>);(<U1F26>,<U1F2E>);(<U1F27>,<U1F2F>);(<U1F30>,<U1F38>);/
(<U1F31>,<U1F39>);(<U1F32>,<U1F3A>);(<U1F33>,<U1F3B>);(<U1F34>,<U1F3C>);/
(<U1F35>,<U1F3D>);(<U1F36>,<U1F3E>);(<U1F37>,<U1F3F>);(<U1F40>,<U1F48>);/
(<U1F41>,<U1F49>);(<U1F42>,<U1F4A>);(<U1F43>,<U1F4B>);(<U1F44>,<U1F4C>);/
(<U1F45>,<U1F4D>);(<U1F51>,<U1F59>);(<U1F53>,<U1F5B>);(<U1F55>,<U1F5D>);/
(<U1F57>,<U1F5F>);(<U1F60>,<U1F68>);(<U1F61>,<U1F69>);(<U1F62>,<U1F6A>);/
(<U1F63>,<U1F6B>);(<U1F64>,<U1F6C>);(<U1F65>,<U1F6D>);(<U1F66>,<U1F6E>);/
(<U1F67>,<U1F6F>);(<U1F70>,<U1FBA>);(<U1F71>,<U1FBB>);(<U1F72>,<U1FC8>);/
(<U1F73>,<U1FC9>);(<U1F74>,<U1FCA>);(<U1F75>,<U1FCB>);(<U1F76>,<U1FDA>);/
(<U1F77>,<U1FDB>);(<U1F78>,<U1FF8>);(<U1F79>,<U1FF9>);(<U1F7A>,<U1FEA>);/
(<U1F7B>,<U1FEB>);(<U1F7C>,<U1FFA>);(<U1F7D>,<U1FFB>);(<U1F80>,<U1F88>);/
(<U1F81>,<U1F89>);(<U1F82>,<U1F8A>);(<U1F83>,<U1F8B>);(<U1F84>,<U1F8C>);/
(<U1F85>,<U1F8D>);(<U1F86>,<U1F8E>);(<U1F87>,<U1F8F>);(<U1F90>,<U1F98>);/
(<U1F91>,<U1F99>);(<U1F92>,<U1F9A>);(<U1F93>,<U1F9B>);(<U1F94>,<U1F9C>);/
(<U1F95>,<U1F9D>);(<U1F96>,<U1F9E>);(<U1F97>,<U1F9F>);(<U1FA0>,<U1FA8>);/
(<U1FA1>,<U1FA9>);(<U1FA2>,<U1FAA>);(<U1FA3>,<U1FAB>);(<U1FA4>,<U1FAC>);/
(<U1FA5>,<U1FAD>);(<U1FA6>,<U1FAE>);(<U1FA7>,<U1FAF>);(<U1FB0>,<U1FB8>);/
(<U1FB1>,<U1FB9>);(<U1FB3>,<U1FBC>);(<U1FBE>,<U0399>);(<U1FC3>,<U1FCC>);/
(<U1FD0>,<U1FD8>);(<U1FD1>,<U1FD9>);(<U1FE0>,<U1FE8>);(<U1FE1>,<U1FE9>);/
(<U1FE5>,<U1FEC>);(<U1FF3>,<U1FFC>);(<U2170>,<U2160>);(<U2171>,<U2161>);/
(<U2172>,<U2162>);(<U2173>,<U2163>);(<U2174>,<U2164>);(<U2175>,<U2165>);/
(<U2176>,<U2166>);(<U2177>,<U2167>);(<U2178>,<U2168>);(<U2179>,<U2169>);/
(<U217A>,<U216A>);(<U217B>,<U216B>);(<U217C>,<U216C>);(<U217D>,<U216D>);/
(<U217E>,<U216E>);(<U217F>,<U216F>);(<U24D0>,<U24B6>);(<U24D1>,<U24B7>);/
(<U24D2>,<U24B8>);(<U24D3>,<U24B9>);(<U24D4>,<U24BA>);(<U24D5>,<U24BB>);/
(<U24D6>,<U24BC>);(<U24D7>,<U24BD>);(<U24D8>,<U24BE>);(<U24D9>,<U24BF>);/
(<U24DA>,<U24C0>);(<U24DB>,<U24C1>);(<U24DC>,<U24C2>);(<U24DD>,<U24C3>);/
(<U24DE>,<U24C4>);(<U24DF>,<U24C5>);(<U24E0>,<U24C6>);(<U24E1>,<U24C7>);/
(<U24E2>,<U24C8>);(<U24E3>,<U24C9>);(<U24E4>,<U24CA>);(<U24E5>,<U24CB>);/
(<U24E6>,<U24CC>);(<U24E7>,<U24CD>);(<U24E8>,<U24CE>);(<U24E9>,<U24CF>);/
(<UFF41>,<UFF21>);(<UFF42>,<UFF22>);(<UFF43>,<UFF23>);(<UFF44>,<UFF24>);/
(<UFF45>,<UFF25>);(<UFF46>,<UFF26>);(<UFF47>,<UFF27>);(<UFF48>,<UFF28>);/
(<UFF49>,<UFF29>);(<UFF4A>,<UFF2A>);(<UFF4B>,<UFF2B>);(<UFF4C>,<UFF2C>);/
(<UFF4D>,<UFF2D>);(<UFF4E>,<UFF2E>);(<UFF4F>,<UFF2F>);(<UFF50>,<UFF30>);/
(<UFF51>,<UFF31>);(<UFF52>,<UFF32>);(<UFF53>,<UFF33>);(<UFF54>,<UFF34>);/
(<UFF55>,<UFF35>);(<UFF56>,<UFF36>);(<UFF57>,<UFF37>);(<UFF58>,<UFF38>);/
(<UFF59>,<UFF39>);(<UFF5A>,<UFF3A>)
(<U03F0>,<U039A>);(<U03F1>,<U03A1>);(<U03F2>,<U03A3>);(<U03F5>,<U0395>);/
(<U0430>,<U0410>);(<U0431>,<U0411>);(<U0432>,<U0412>);(<U0433>,<U0413>);/
(<U0434>,<U0414>);(<U0435>,<U0415>);(<U0436>,<U0416>);(<U0437>,<U0417>);/
(<U0438>,<U0418>);(<U0439>,<U0419>);(<U043A>,<U041A>);(<U043B>,<U041B>);/
(<U043C>,<U041C>);(<U043D>,<U041D>);(<U043E>,<U041E>);(<U043F>,<U041F>);/
(<U0440>,<U0420>);(<U0441>,<U0421>);(<U0442>,<U0422>);(<U0443>,<U0423>);/
(<U0444>,<U0424>);(<U0445>,<U0425>);(<U0446>,<U0426>);(<U0447>,<U0427>);/
(<U0448>,<U0428>);(<U0449>,<U0429>);(<U044A>,<U042A>);(<U044B>,<U042B>);/
(<U044C>,<U042C>);(<U044D>,<U042D>);(<U044E>,<U042E>);(<U044F>,<U042F>);/
(<U0450>,<U0400>);(<U0451>,<U0401>);(<U0452>,<U0402>);(<U0453>,<U0403>);/
(<U0454>,<U0404>);(<U0455>,<U0405>);(<U0456>,<U0406>);(<U0457>,<U0407>);/
(<U0458>,<U0408>);(<U0459>,<U0409>);(<U045A>,<U040A>);(<U045B>,<U040B>);/
(<U045C>,<U040C>);(<U045D>,<U040D>);(<U045E>,<U040E>);(<U045F>,<U040F>);/
(<U0461>,<U0460>);(<U0463>,<U0462>);(<U0465>,<U0464>);(<U0467>,<U0466>);/
(<U0469>,<U0468>);(<U046B>,<U046A>);(<U046D>,<U046C>);(<U046F>,<U046E>);/
(<U0471>,<U0470>);(<U0473>,<U0472>);(<U0475>,<U0474>);(<U0477>,<U0476>);/
(<U0479>,<U0478>);(<U047B>,<U047A>);(<U047D>,<U047C>);(<U047F>,<U047E>);/
(<U0481>,<U0480>);(<U048D>,<U048C>);(<U048F>,<U048E>);(<U0491>,<U0490>);/
(<U0493>,<U0492>);(<U0495>,<U0494>);(<U0497>,<U0496>);(<U0499>,<U0498>);/
(<U049B>,<U049A>);(<U049D>,<U049C>);(<U049F>,<U049E>);(<U04A1>,<U04A0>);/
(<U04A3>,<U04A2>);(<U04A5>,<U04A4>);(<U04A7>,<U04A6>);(<U04A9>,<U04A8>);/
(<U04AB>,<U04AA>);(<U04AD>,<U04AC>);(<U04AF>,<U04AE>);(<U04B1>,<U04B0>);/
(<U04B3>,<U04B2>);(<U04B5>,<U04B4>);(<U04B7>,<U04B6>);(<U04B9>,<U04B8>);/
(<U04BB>,<U04BA>);(<U04BD>,<U04BC>);(<U04BF>,<U04BE>);(<U04C2>,<U04C1>);/
(<U04C4>,<U04C3>);(<U04C8>,<U04C7>);(<U04CC>,<U04CB>);(<U04D1>,<U04D0>);/
(<U04D3>,<U04D2>);(<U04D5>,<U04D4>);(<U04D7>,<U04D6>);(<U04D9>,<U04D8>);/
(<U04DB>,<U04DA>);(<U04DD>,<U04DC>);(<U04DF>,<U04DE>);(<U04E1>,<U04E0>);/
(<U04E3>,<U04E2>);(<U04E5>,<U04E4>);(<U04E7>,<U04E6>);(<U04E9>,<U04E8>);/
(<U04EB>,<U04EA>);(<U04ED>,<U04EC>);(<U04EF>,<U04EE>);(<U04F1>,<U04F0>);/
(<U04F3>,<U04F2>);(<U04F5>,<U04F4>);(<U04F9>,<U04F8>);(<U0561>,<U0531>);/
(<U0562>,<U0532>);(<U0563>,<U0533>);(<U0564>,<U0534>);(<U0565>,<U0535>);/
(<U0566>,<U0536>);(<U0567>,<U0537>);(<U0568>,<U0538>);(<U0569>,<U0539>);/
(<U056A>,<U053A>);(<U056B>,<U053B>);(<U056C>,<U053C>);(<U056D>,<U053D>);/
(<U056E>,<U053E>);(<U056F>,<U053F>);(<U0570>,<U0540>);(<U0571>,<U0541>);/
(<U0572>,<U0542>);(<U0573>,<U0543>);(<U0574>,<U0544>);(<U0575>,<U0545>);/
(<U0576>,<U0546>);(<U0577>,<U0547>);(<U0578>,<U0548>);(<U0579>,<U0549>);/
(<U057A>,<U054A>);(<U057B>,<U054B>);(<U057C>,<U054C>);(<U057D>,<U054D>);/
(<U057E>,<U054E>);(<U057F>,<U054F>);(<U0580>,<U0550>);(<U0581>,<U0551>);/
(<U0582>,<U0552>);(<U0583>,<U0553>);(<U0584>,<U0554>);(<U0585>,<U0555>);/
(<U0586>,<U0556>);(<U1E01>,<U1E00>);(<U1E03>,<U1E02>);(<U1E05>,<U1E04>);/
(<U1E07>,<U1E06>);(<U1E09>,<U1E08>);(<U1E0B>,<U1E0A>);(<U1E0D>,<U1E0C>);/
(<U1E0F>,<U1E0E>);(<U1E11>,<U1E10>);(<U1E13>,<U1E12>);(<U1E15>,<U1E14>);/
(<U1E17>,<U1E16>);(<U1E19>,<U1E18>);(<U1E1B>,<U1E1A>);(<U1E1D>,<U1E1C>);/
(<U1E1F>,<U1E1E>);(<U1E21>,<U1E20>);(<U1E23>,<U1E22>);(<U1E25>,<U1E24>);/
(<U1E27>,<U1E26>);(<U1E29>,<U1E28>);(<U1E2B>,<U1E2A>);(<U1E2D>,<U1E2C>);/
(<U1E2F>,<U1E2E>);(<U1E31>,<U1E30>);(<U1E33>,<U1E32>);(<U1E35>,<U1E34>);/
(<U1E37>,<U1E36>);(<U1E39>,<U1E38>);(<U1E3B>,<U1E3A>);(<U1E3D>,<U1E3C>);/
(<U1E3F>,<U1E3E>);(<U1E41>,<U1E40>);(<U1E43>,<U1E42>);(<U1E45>,<U1E44>);/
(<U1E47>,<U1E46>);(<U1E49>,<U1E48>);(<U1E4B>,<U1E4A>);(<U1E4D>,<U1E4C>);/
(<U1E4F>,<U1E4E>);(<U1E51>,<U1E50>);(<U1E53>,<U1E52>);(<U1E55>,<U1E54>);/
(<U1E57>,<U1E56>);(<U1E59>,<U1E58>);(<U1E5B>,<U1E5A>);(<U1E5D>,<U1E5C>);/
(<U1E5F>,<U1E5E>);(<U1E61>,<U1E60>);(<U1E63>,<U1E62>);(<U1E65>,<U1E64>);/
(<U1E67>,<U1E66>);(<U1E69>,<U1E68>);(<U1E6B>,<U1E6A>);(<U1E6D>,<U1E6C>);/
(<U1E6F>,<U1E6E>);(<U1E71>,<U1E70>);(<U1E73>,<U1E72>);(<U1E75>,<U1E74>);/
(<U1E77>,<U1E76>);(<U1E79>,<U1E78>);(<U1E7B>,<U1E7A>);(<U1E7D>,<U1E7C>);/
(<U1E7F>,<U1E7E>);(<U1E81>,<U1E80>);(<U1E83>,<U1E82>);(<U1E85>,<U1E84>);/
(<U1E87>,<U1E86>);(<U1E89>,<U1E88>);(<U1E8B>,<U1E8A>);(<U1E8D>,<U1E8C>);/
(<U1E8F>,<U1E8E>);(<U1E91>,<U1E90>);(<U1E93>,<U1E92>);(<U1E95>,<U1E94>);/
(<U1E9B>,<U1E60>);(<U1EA1>,<U1EA0>);(<U1EA3>,<U1EA2>);(<U1EA5>,<U1EA4>);/
(<U1EA7>,<U1EA6>);(<U1EA9>,<U1EA8>);(<U1EAB>,<U1EAA>);(<U1EAD>,<U1EAC>);/
(<U1EAF>,<U1EAE>);(<U1EB1>,<U1EB0>);(<U1EB3>,<U1EB2>);(<U1EB5>,<U1EB4>);/
(<U1EB7>,<U1EB6>);(<U1EB9>,<U1EB8>);(<U1EBB>,<U1EBA>);(<U1EBD>,<U1EBC>);/
(<U1EBF>,<U1EBE>);(<U1EC1>,<U1EC0>);(<U1EC3>,<U1EC2>);(<U1EC5>,<U1EC4>);/
(<U1EC7>,<U1EC6>);(<U1EC9>,<U1EC8>);(<U1ECB>,<U1ECA>);(<U1ECD>,<U1ECC>);/
(<U1ECF>,<U1ECE>);(<U1ED1>,<U1ED0>);(<U1ED3>,<U1ED2>);(<U1ED5>,<U1ED4>);/
(<U1ED7>,<U1ED6>);(<U1ED9>,<U1ED8>);(<U1EDB>,<U1EDA>);(<U1EDD>,<U1EDC>);/
(<U1EDF>,<U1EDE>);(<U1EE1>,<U1EE0>);(<U1EE3>,<U1EE2>);(<U1EE5>,<U1EE4>);/
(<U1EE7>,<U1EE6>);(<U1EE9>,<U1EE8>);(<U1EEB>,<U1EEA>);(<U1EED>,<U1EEC>);/
(<U1EEF>,<U1EEE>);(<U1EF1>,<U1EF0>);(<U1EF3>,<U1EF2>);(<U1EF5>,<U1EF4>);/
(<U1EF7>,<U1EF6>);(<U1EF9>,<U1EF8>);(<U1F00>,<U1F08>);(<U1F01>,<U1F09>);/
(<U1F02>,<U1F0A>);(<U1F03>,<U1F0B>);(<U1F04>,<U1F0C>);(<U1F05>,<U1F0D>);/
(<U1F06>,<U1F0E>);(<U1F07>,<U1F0F>);(<U1F10>,<U1F18>);(<U1F11>,<U1F19>);/
(<U1F12>,<U1F1A>);(<U1F13>,<U1F1B>);(<U1F14>,<U1F1C>);(<U1F15>,<U1F1D>);/
(<U1F20>,<U1F28>);(<U1F21>,<U1F29>);(<U1F22>,<U1F2A>);(<U1F23>,<U1F2B>);/
(<U1F24>,<U1F2C>);(<U1F25>,<U1F2D>);(<U1F26>,<U1F2E>);(<U1F27>,<U1F2F>);/
(<U1F30>,<U1F38>);(<U1F31>,<U1F39>);(<U1F32>,<U1F3A>);(<U1F33>,<U1F3B>);/
(<U1F34>,<U1F3C>);(<U1F35>,<U1F3D>);(<U1F36>,<U1F3E>);(<U1F37>,<U1F3F>);/
(<U1F40>,<U1F48>);(<U1F41>,<U1F49>);(<U1F42>,<U1F4A>);(<U1F43>,<U1F4B>);/
(<U1F44>,<U1F4C>);(<U1F45>,<U1F4D>);(<U1F51>,<U1F59>);(<U1F53>,<U1F5B>);/
(<U1F55>,<U1F5D>);(<U1F57>,<U1F5F>);(<U1F60>,<U1F68>);(<U1F61>,<U1F69>);/
(<U1F62>,<U1F6A>);(<U1F63>,<U1F6B>);(<U1F64>,<U1F6C>);(<U1F65>,<U1F6D>);/
(<U1F66>,<U1F6E>);(<U1F67>,<U1F6F>);(<U1F70>,<U1FBA>);(<U1F71>,<U1FBB>);/
(<U1F72>,<U1FC8>);(<U1F73>,<U1FC9>);(<U1F74>,<U1FCA>);(<U1F75>,<U1FCB>);/
(<U1F76>,<U1FDA>);(<U1F77>,<U1FDB>);(<U1F78>,<U1FF8>);(<U1F79>,<U1FF9>);/
(<U1F7A>,<U1FEA>);(<U1F7B>,<U1FEB>);(<U1F7C>,<U1FFA>);(<U1F7D>,<U1FFB>);/
(<U1F80>,<U1F88>);(<U1F81>,<U1F89>);(<U1F82>,<U1F8A>);(<U1F83>,<U1F8B>);/
(<U1F84>,<U1F8C>);(<U1F85>,<U1F8D>);(<U1F86>,<U1F8E>);(<U1F87>,<U1F8F>);/
(<U1F90>,<U1F98>);(<U1F91>,<U1F99>);(<U1F92>,<U1F9A>);(<U1F93>,<U1F9B>);/
(<U1F94>,<U1F9C>);(<U1F95>,<U1F9D>);(<U1F96>,<U1F9E>);(<U1F97>,<U1F9F>);/
(<U1FA0>,<U1FA8>);(<U1FA1>,<U1FA9>);(<U1FA2>,<U1FAA>);(<U1FA3>,<U1FAB>);/
(<U1FA4>,<U1FAC>);(<U1FA5>,<U1FAD>);(<U1FA6>,<U1FAE>);(<U1FA7>,<U1FAF>);/
(<U1FB0>,<U1FB8>);(<U1FB1>,<U1FB9>);(<U1FB3>,<U1FBC>);(<U1FBE>,<U0399>);/
(<U1FC3>,<U1FCC>);(<U1FD0>,<U1FD8>);(<U1FD1>,<U1FD9>);(<U1FE0>,<U1FE8>);/
(<U1FE1>,<U1FE9>);(<U1FE5>,<U1FEC>);(<U1FF3>,<U1FFC>);(<U2170>,<U2160>);/
(<U2171>,<U2161>);(<U2172>,<U2162>);(<U2173>,<U2163>);(<U2174>,<U2164>);/
(<U2175>,<U2165>);(<U2176>,<U2166>);(<U2177>,<U2167>);(<U2178>,<U2168>);/
(<U2179>,<U2169>);(<U217A>,<U216A>);(<U217B>,<U216B>);(<U217C>,<U216C>);/
(<U217D>,<U216D>);(<U217E>,<U216E>);(<U217F>,<U216F>);(<U24D0>,<U24B6>);/
(<U24D1>,<U24B7>);(<U24D2>,<U24B8>);(<U24D3>,<U24B9>);(<U24D4>,<U24BA>);/
(<U24D5>,<U24BB>);(<U24D6>,<U24BC>);(<U24D7>,<U24BD>);(<U24D8>,<U24BE>);/
(<U24D9>,<U24BF>);(<U24DA>,<U24C0>);(<U24DB>,<U24C1>);(<U24DC>,<U24C2>);/
(<U24DD>,<U24C3>);(<U24DE>,<U24C4>);(<U24DF>,<U24C5>);(<U24E0>,<U24C6>);/
(<U24E1>,<U24C7>);(<U24E2>,<U24C8>);(<U24E3>,<U24C9>);(<U24E4>,<U24CA>);/
(<U24E5>,<U24CB>);(<U24E6>,<U24CC>);(<U24E7>,<U24CD>);(<U24E8>,<U24CE>);/
(<U24E9>,<U24CF>);(<UFF41>,<UFF21>);(<UFF42>,<UFF22>);(<UFF43>,<UFF23>);/
(<UFF44>,<UFF24>);(<UFF45>,<UFF25>);(<UFF46>,<UFF26>);(<UFF47>,<UFF27>);/
(<UFF48>,<UFF28>);(<UFF49>,<UFF29>);(<UFF4A>,<UFF2A>);(<UFF4B>,<UFF2B>);/
(<UFF4C>,<UFF2C>);(<UFF4D>,<UFF2D>);(<UFF4E>,<UFF2E>);(<UFF4F>,<UFF2F>);/
(<UFF50>,<UFF30>);(<UFF51>,<UFF31>);(<UFF52>,<UFF32>);(<UFF53>,<UFF33>);/
(<UFF54>,<UFF34>);(<UFF55>,<UFF35>);(<UFF56>,<UFF36>);(<UFF57>,<UFF37>);/
(<UFF58>,<UFF38>);(<UFF59>,<UFF39>);(<UFF5A>,<UFF3A>);/
(<U00010428>,<U00010400>);(<U00010429>,<U00010401>);/
(<U0001042A>,<U00010402>);(<U0001042B>,<U00010403>);/
(<U0001042C>,<U00010404>);(<U0001042D>,<U00010405>);/
(<U0001042E>,<U00010406>);(<U0001042F>,<U00010407>);/
(<U00010430>,<U00010408>);(<U00010431>,<U00010409>);/
(<U00010432>,<U0001040A>);(<U00010433>,<U0001040B>);/
(<U00010434>,<U0001040C>);(<U00010435>,<U0001040D>);/
(<U00010436>,<U0001040E>);(<U00010437>,<U0001040F>);/
(<U00010438>,<U00010410>);(<U00010439>,<U00010411>);/
(<U0001043A>,<U00010412>);(<U0001043B>,<U00010413>);/
(<U0001043C>,<U00010414>);(<U0001043D>,<U00010415>);/
(<U0001043E>,<U00010416>);(<U0001043F>,<U00010417>);/
(<U00010440>,<U00010418>);(<U00010441>,<U00010419>);/
(<U00010442>,<U0001041A>);(<U00010443>,<U0001041B>);/
(<U00010444>,<U0001041C>);(<U00010445>,<U0001041D>);/
(<U00010446>,<U0001041E>);(<U00010447>,<U0001041F>);/
(<U00010448>,<U00010420>);(<U00010449>,<U00010421>);/
(<U0001044A>,<U00010422>);(<U0001044B>,<U00010423>);/
(<U0001044C>,<U00010424>);(<U0001044D>,<U00010425>)
% The "combining" class reflects ISO/IEC 10646-1 annex B.1
% That is, all combining characters (level 2+3).
@ -3259,7 +3386,9 @@ class "combining"; /
<U0F99>..<U0FBC>;<U0FC6>;<U102C>..<U1032>;<U1036>..<U1039>;/
<U1056>..<U1059>;<U17B4>..<U17D3>;<U18A9>;<U20D0>..<U20E3>;/
<U302A>..<U302F>;<U3099>..<U309A>;<UF8F0>..<UF8FF>;<UFB1E>;/
<UFE20>..<UFE23>
<UFE20>..<UFE23>;<U0001D165>..<U0001D169>;<U0001D16D>..<U0001D172>;/
<U0001D17B>..<U0001D182>;<U0001D185>..<U0001D18B>;/
<U0001D1AA>..<U0001D1AD>
% The "combining_level3" class reflects ISO/IEC 10646-1 annex B.2
% That is, combining characters of level 3.
@ -3284,7 +3413,7 @@ class "combining_level3"; /
<U0F71>..<U0F81>;<U0F84>;<U0F90>..<U0F97>;<U0F99>..<U0FBC>;/
<U102C>..<U1032>;<U1036>..<U1039>;<U1056>..<U1059>;<U17B4>..<U17D3>;/
<U20D2>..<U20D3>;<U20D8>..<U20DA>;<U20DD>..<U20E0>;<U20E2>..<U20E3>;/
<U3099>..<U309A>;<UF8F0>..<UF8FF>;<UFB1E>
<U3099>..<U309A>;<UF8F0>..<UF8FF>;<UFB1E>;<U0001D167>..<U0001D169>
% END modified i18n LC_CTYPE

File diff suppressed because it is too large Load Diff

View File

@ -70,6 +70,10 @@ translit_start
<U03F1> "<U03C1>"
% GREEK LUNATE SIGMA SYMBOL
<U03F2> "<U03C2>"
% GREEK CAPITAL THETA SYMBOL
<U03F4> "<U0398>"
% GREEK LUNATE EPSILON SYMBOL
<U03F5> "<U03B5>"
% ARMENIAN SMALL LIGATURE ECH YIWN
<U0587> "<U0565><U0582>"
% HEBREW LIGATURE YIDDISH DOUBLE VAV

View File

@ -47,6 +47,997 @@ translit_start
<UFB27> <U05E8> % HEBREW LETTER WIDE RESH
<UFB28> <U05EA> % HEBREW LETTER WIDE TAV
<UFB29> <U002B> % HEBREW LETTER ALTERNATIVE PLUS SIGN
<U0001D400> <U0041> % MATHEMATICAL BOLD CAPITAL A
<U0001D401> <U0042> % MATHEMATICAL BOLD CAPITAL B
<U0001D402> <U0043> % MATHEMATICAL BOLD CAPITAL C
<U0001D403> <U0044> % MATHEMATICAL BOLD CAPITAL D
<U0001D404> <U0045> % MATHEMATICAL BOLD CAPITAL E
<U0001D405> <U0046> % MATHEMATICAL BOLD CAPITAL F
<U0001D406> <U0047> % MATHEMATICAL BOLD CAPITAL G
<U0001D407> <U0048> % MATHEMATICAL BOLD CAPITAL H
<U0001D408> <U0049> % MATHEMATICAL BOLD CAPITAL I
<U0001D409> <U004A> % MATHEMATICAL BOLD CAPITAL J
<U0001D40A> <U004B> % MATHEMATICAL BOLD CAPITAL K
<U0001D40B> <U004C> % MATHEMATICAL BOLD CAPITAL L
<U0001D40C> <U004D> % MATHEMATICAL BOLD CAPITAL M
<U0001D40D> <U004E> % MATHEMATICAL BOLD CAPITAL N
<U0001D40E> <U004F> % MATHEMATICAL BOLD CAPITAL O
<U0001D40F> <U0050> % MATHEMATICAL BOLD CAPITAL P
<U0001D410> <U0051> % MATHEMATICAL BOLD CAPITAL Q
<U0001D411> <U0052> % MATHEMATICAL BOLD CAPITAL R
<U0001D412> <U0053> % MATHEMATICAL BOLD CAPITAL S
<U0001D413> <U0054> % MATHEMATICAL BOLD CAPITAL T
<U0001D414> <U0055> % MATHEMATICAL BOLD CAPITAL U
<U0001D415> <U0056> % MATHEMATICAL BOLD CAPITAL V
<U0001D416> <U0057> % MATHEMATICAL BOLD CAPITAL W
<U0001D417> <U0058> % MATHEMATICAL BOLD CAPITAL X
<U0001D418> <U0059> % MATHEMATICAL BOLD CAPITAL Y
<U0001D419> <U005A> % MATHEMATICAL BOLD CAPITAL Z
<U0001D41A> <U0061> % MATHEMATICAL BOLD SMALL A
<U0001D41B> <U0062> % MATHEMATICAL BOLD SMALL B
<U0001D41C> <U0063> % MATHEMATICAL BOLD SMALL C
<U0001D41D> <U0064> % MATHEMATICAL BOLD SMALL D
<U0001D41E> <U0065> % MATHEMATICAL BOLD SMALL E
<U0001D41F> <U0066> % MATHEMATICAL BOLD SMALL F
<U0001D420> <U0067> % MATHEMATICAL BOLD SMALL G
<U0001D421> <U0068> % MATHEMATICAL BOLD SMALL H
<U0001D422> <U0069> % MATHEMATICAL BOLD SMALL I
<U0001D423> <U006A> % MATHEMATICAL BOLD SMALL J
<U0001D424> <U006B> % MATHEMATICAL BOLD SMALL K
<U0001D425> <U006C> % MATHEMATICAL BOLD SMALL L
<U0001D426> <U006D> % MATHEMATICAL BOLD SMALL M
<U0001D427> <U006E> % MATHEMATICAL BOLD SMALL N
<U0001D428> <U006F> % MATHEMATICAL BOLD SMALL O
<U0001D429> <U0070> % MATHEMATICAL BOLD SMALL P
<U0001D42A> <U0071> % MATHEMATICAL BOLD SMALL Q
<U0001D42B> <U0072> % MATHEMATICAL BOLD SMALL R
<U0001D42C> <U0073> % MATHEMATICAL BOLD SMALL S
<U0001D42D> <U0074> % MATHEMATICAL BOLD SMALL T
<U0001D42E> <U0075> % MATHEMATICAL BOLD SMALL U
<U0001D42F> <U0076> % MATHEMATICAL BOLD SMALL V
<U0001D430> <U0077> % MATHEMATICAL BOLD SMALL W
<U0001D431> <U0078> % MATHEMATICAL BOLD SMALL X
<U0001D432> <U0079> % MATHEMATICAL BOLD SMALL Y
<U0001D433> <U007A> % MATHEMATICAL BOLD SMALL Z
<U0001D434> <U0041> % MATHEMATICAL ITALIC CAPITAL A
<U0001D435> <U0042> % MATHEMATICAL ITALIC CAPITAL B
<U0001D436> <U0043> % MATHEMATICAL ITALIC CAPITAL C
<U0001D437> <U0044> % MATHEMATICAL ITALIC CAPITAL D
<U0001D438> <U0045> % MATHEMATICAL ITALIC CAPITAL E
<U0001D439> <U0046> % MATHEMATICAL ITALIC CAPITAL F
<U0001D43A> <U0047> % MATHEMATICAL ITALIC CAPITAL G
<U0001D43B> <U0048> % MATHEMATICAL ITALIC CAPITAL H
<U0001D43C> <U0049> % MATHEMATICAL ITALIC CAPITAL I
<U0001D43D> <U004A> % MATHEMATICAL ITALIC CAPITAL J
<U0001D43E> <U004B> % MATHEMATICAL ITALIC CAPITAL K
<U0001D43F> <U004C> % MATHEMATICAL ITALIC CAPITAL L
<U0001D440> <U004D> % MATHEMATICAL ITALIC CAPITAL M
<U0001D441> <U004E> % MATHEMATICAL ITALIC CAPITAL N
<U0001D442> <U004F> % MATHEMATICAL ITALIC CAPITAL O
<U0001D443> <U0050> % MATHEMATICAL ITALIC CAPITAL P
<U0001D444> <U0051> % MATHEMATICAL ITALIC CAPITAL Q
<U0001D445> <U0052> % MATHEMATICAL ITALIC CAPITAL R
<U0001D446> <U0053> % MATHEMATICAL ITALIC CAPITAL S
<U0001D447> <U0054> % MATHEMATICAL ITALIC CAPITAL T
<U0001D448> <U0055> % MATHEMATICAL ITALIC CAPITAL U
<U0001D449> <U0056> % MATHEMATICAL ITALIC CAPITAL V
<U0001D44A> <U0057> % MATHEMATICAL ITALIC CAPITAL W
<U0001D44B> <U0058> % MATHEMATICAL ITALIC CAPITAL X
<U0001D44C> <U0059> % MATHEMATICAL ITALIC CAPITAL Y
<U0001D44D> <U005A> % MATHEMATICAL ITALIC CAPITAL Z
<U0001D44E> <U0061> % MATHEMATICAL ITALIC SMALL A
<U0001D44F> <U0062> % MATHEMATICAL ITALIC SMALL B
<U0001D450> <U0063> % MATHEMATICAL ITALIC SMALL C
<U0001D451> <U0064> % MATHEMATICAL ITALIC SMALL D
<U0001D452> <U0065> % MATHEMATICAL ITALIC SMALL E
<U0001D453> <U0066> % MATHEMATICAL ITALIC SMALL F
<U0001D454> <U0067> % MATHEMATICAL ITALIC SMALL G
<U0001D456> <U0069> % MATHEMATICAL ITALIC SMALL I
<U0001D457> <U006A> % MATHEMATICAL ITALIC SMALL J
<U0001D458> <U006B> % MATHEMATICAL ITALIC SMALL K
<U0001D459> <U006C> % MATHEMATICAL ITALIC SMALL L
<U0001D45A> <U006D> % MATHEMATICAL ITALIC SMALL M
<U0001D45B> <U006E> % MATHEMATICAL ITALIC SMALL N
<U0001D45C> <U006F> % MATHEMATICAL ITALIC SMALL O
<U0001D45D> <U0070> % MATHEMATICAL ITALIC SMALL P
<U0001D45E> <U0071> % MATHEMATICAL ITALIC SMALL Q
<U0001D45F> <U0072> % MATHEMATICAL ITALIC SMALL R
<U0001D460> <U0073> % MATHEMATICAL ITALIC SMALL S
<U0001D461> <U0074> % MATHEMATICAL ITALIC SMALL T
<U0001D462> <U0075> % MATHEMATICAL ITALIC SMALL U
<U0001D463> <U0076> % MATHEMATICAL ITALIC SMALL V
<U0001D464> <U0077> % MATHEMATICAL ITALIC SMALL W
<U0001D465> <U0078> % MATHEMATICAL ITALIC SMALL X
<U0001D466> <U0079> % MATHEMATICAL ITALIC SMALL Y
<U0001D467> <U007A> % MATHEMATICAL ITALIC SMALL Z
<U0001D468> <U0041> % MATHEMATICAL BOLD ITALIC CAPITAL A
<U0001D469> <U0042> % MATHEMATICAL BOLD ITALIC CAPITAL B
<U0001D46A> <U0043> % MATHEMATICAL BOLD ITALIC CAPITAL C
<U0001D46B> <U0044> % MATHEMATICAL BOLD ITALIC CAPITAL D
<U0001D46C> <U0045> % MATHEMATICAL BOLD ITALIC CAPITAL E
<U0001D46D> <U0046> % MATHEMATICAL BOLD ITALIC CAPITAL F
<U0001D46E> <U0047> % MATHEMATICAL BOLD ITALIC CAPITAL G
<U0001D46F> <U0048> % MATHEMATICAL BOLD ITALIC CAPITAL H
<U0001D470> <U0049> % MATHEMATICAL BOLD ITALIC CAPITAL I
<U0001D471> <U004A> % MATHEMATICAL BOLD ITALIC CAPITAL J
<U0001D472> <U004B> % MATHEMATICAL BOLD ITALIC CAPITAL K
<U0001D473> <U004C> % MATHEMATICAL BOLD ITALIC CAPITAL L
<U0001D474> <U004D> % MATHEMATICAL BOLD ITALIC CAPITAL M
<U0001D475> <U004E> % MATHEMATICAL BOLD ITALIC CAPITAL N
<U0001D476> <U004F> % MATHEMATICAL BOLD ITALIC CAPITAL O
<U0001D477> <U0050> % MATHEMATICAL BOLD ITALIC CAPITAL P
<U0001D478> <U0051> % MATHEMATICAL BOLD ITALIC CAPITAL Q
<U0001D479> <U0052> % MATHEMATICAL BOLD ITALIC CAPITAL R
<U0001D47A> <U0053> % MATHEMATICAL BOLD ITALIC CAPITAL S
<U0001D47B> <U0054> % MATHEMATICAL BOLD ITALIC CAPITAL T
<U0001D47C> <U0055> % MATHEMATICAL BOLD ITALIC CAPITAL U
<U0001D47D> <U0056> % MATHEMATICAL BOLD ITALIC CAPITAL V
<U0001D47E> <U0057> % MATHEMATICAL BOLD ITALIC CAPITAL W
<U0001D47F> <U0058> % MATHEMATICAL BOLD ITALIC CAPITAL X
<U0001D480> <U0059> % MATHEMATICAL BOLD ITALIC CAPITAL Y
<U0001D481> <U005A> % MATHEMATICAL BOLD ITALIC CAPITAL Z
<U0001D482> <U0061> % MATHEMATICAL BOLD ITALIC SMALL A
<U0001D483> <U0062> % MATHEMATICAL BOLD ITALIC SMALL B
<U0001D484> <U0063> % MATHEMATICAL BOLD ITALIC SMALL C
<U0001D485> <U0064> % MATHEMATICAL BOLD ITALIC SMALL D
<U0001D486> <U0065> % MATHEMATICAL BOLD ITALIC SMALL E
<U0001D487> <U0066> % MATHEMATICAL BOLD ITALIC SMALL F
<U0001D488> <U0067> % MATHEMATICAL BOLD ITALIC SMALL G
<U0001D489> <U0068> % MATHEMATICAL BOLD ITALIC SMALL H
<U0001D48A> <U0069> % MATHEMATICAL BOLD ITALIC SMALL I
<U0001D48B> <U006A> % MATHEMATICAL BOLD ITALIC SMALL J
<U0001D48C> <U006B> % MATHEMATICAL BOLD ITALIC SMALL K
<U0001D48D> <U006C> % MATHEMATICAL BOLD ITALIC SMALL L
<U0001D48E> <U006D> % MATHEMATICAL BOLD ITALIC SMALL M
<U0001D48F> <U006E> % MATHEMATICAL BOLD ITALIC SMALL N
<U0001D490> <U006F> % MATHEMATICAL BOLD ITALIC SMALL O
<U0001D491> <U0070> % MATHEMATICAL BOLD ITALIC SMALL P
<U0001D492> <U0071> % MATHEMATICAL BOLD ITALIC SMALL Q
<U0001D493> <U0072> % MATHEMATICAL BOLD ITALIC SMALL R
<U0001D494> <U0073> % MATHEMATICAL BOLD ITALIC SMALL S
<U0001D495> <U0074> % MATHEMATICAL BOLD ITALIC SMALL T
<U0001D496> <U0075> % MATHEMATICAL BOLD ITALIC SMALL U
<U0001D497> <U0076> % MATHEMATICAL BOLD ITALIC SMALL V
<U0001D498> <U0077> % MATHEMATICAL BOLD ITALIC SMALL W
<U0001D499> <U0078> % MATHEMATICAL BOLD ITALIC SMALL X
<U0001D49A> <U0079> % MATHEMATICAL BOLD ITALIC SMALL Y
<U0001D49B> <U007A> % MATHEMATICAL BOLD ITALIC SMALL Z
<U0001D49C> <U0041> % MATHEMATICAL SCRIPT CAPITAL A
<U0001D49E> <U0043> % MATHEMATICAL SCRIPT CAPITAL C
<U0001D49F> <U0044> % MATHEMATICAL SCRIPT CAPITAL D
<U0001D4A2> <U0047> % MATHEMATICAL SCRIPT CAPITAL G
<U0001D4A5> <U004A> % MATHEMATICAL SCRIPT CAPITAL J
<U0001D4A6> <U004B> % MATHEMATICAL SCRIPT CAPITAL K
<U0001D4A9> <U004E> % MATHEMATICAL SCRIPT CAPITAL N
<U0001D4AA> <U004F> % MATHEMATICAL SCRIPT CAPITAL O
<U0001D4AB> <U0050> % MATHEMATICAL SCRIPT CAPITAL P
<U0001D4AC> <U0051> % MATHEMATICAL SCRIPT CAPITAL Q
<U0001D4AE> <U0053> % MATHEMATICAL SCRIPT CAPITAL S
<U0001D4AF> <U0054> % MATHEMATICAL SCRIPT CAPITAL T
<U0001D4B0> <U0055> % MATHEMATICAL SCRIPT CAPITAL U
<U0001D4B1> <U0056> % MATHEMATICAL SCRIPT CAPITAL V
<U0001D4B2> <U0057> % MATHEMATICAL SCRIPT CAPITAL W
<U0001D4B3> <U0058> % MATHEMATICAL SCRIPT CAPITAL X
<U0001D4B4> <U0059> % MATHEMATICAL SCRIPT CAPITAL Y
<U0001D4B5> <U005A> % MATHEMATICAL SCRIPT CAPITAL Z
<U0001D4B6> <U0061> % MATHEMATICAL SCRIPT SMALL A
<U0001D4B7> <U0062> % MATHEMATICAL SCRIPT SMALL B
<U0001D4B8> <U0063> % MATHEMATICAL SCRIPT SMALL C
<U0001D4B9> <U0064> % MATHEMATICAL SCRIPT SMALL D
<U0001D4BB> <U0066> % MATHEMATICAL SCRIPT SMALL F
<U0001D4BD> <U0068> % MATHEMATICAL SCRIPT SMALL H
<U0001D4BE> <U0069> % MATHEMATICAL SCRIPT SMALL I
<U0001D4BF> <U006A> % MATHEMATICAL SCRIPT SMALL J
<U0001D4C0> <U006B> % MATHEMATICAL SCRIPT SMALL K
<U0001D4C2> <U006D> % MATHEMATICAL SCRIPT SMALL M
<U0001D4C3> <U006E> % MATHEMATICAL SCRIPT SMALL N
<U0001D4C5> <U0070> % MATHEMATICAL SCRIPT SMALL P
<U0001D4C6> <U0071> % MATHEMATICAL SCRIPT SMALL Q
<U0001D4C7> <U0072> % MATHEMATICAL SCRIPT SMALL R
<U0001D4C8> <U0073> % MATHEMATICAL SCRIPT SMALL S
<U0001D4C9> <U0074> % MATHEMATICAL SCRIPT SMALL T
<U0001D4CA> <U0075> % MATHEMATICAL SCRIPT SMALL U
<U0001D4CB> <U0076> % MATHEMATICAL SCRIPT SMALL V
<U0001D4CC> <U0077> % MATHEMATICAL SCRIPT SMALL W
<U0001D4CD> <U0078> % MATHEMATICAL SCRIPT SMALL X
<U0001D4CE> <U0079> % MATHEMATICAL SCRIPT SMALL Y
<U0001D4CF> <U007A> % MATHEMATICAL SCRIPT SMALL Z
<U0001D4D0> <U0041> % MATHEMATICAL BOLD SCRIPT CAPITAL A
<U0001D4D1> <U0042> % MATHEMATICAL BOLD SCRIPT CAPITAL B
<U0001D4D2> <U0043> % MATHEMATICAL BOLD SCRIPT CAPITAL C
<U0001D4D3> <U0044> % MATHEMATICAL BOLD SCRIPT CAPITAL D
<U0001D4D4> <U0045> % MATHEMATICAL BOLD SCRIPT CAPITAL E
<U0001D4D5> <U0046> % MATHEMATICAL BOLD SCRIPT CAPITAL F
<U0001D4D6> <U0047> % MATHEMATICAL BOLD SCRIPT CAPITAL G
<U0001D4D7> <U0048> % MATHEMATICAL BOLD SCRIPT CAPITAL H
<U0001D4D8> <U0049> % MATHEMATICAL BOLD SCRIPT CAPITAL I
<U0001D4D9> <U004A> % MATHEMATICAL BOLD SCRIPT CAPITAL J
<U0001D4DA> <U004B> % MATHEMATICAL BOLD SCRIPT CAPITAL K
<U0001D4DB> <U004C> % MATHEMATICAL BOLD SCRIPT CAPITAL L
<U0001D4DC> <U004D> % MATHEMATICAL BOLD SCRIPT CAPITAL M
<U0001D4DD> <U004E> % MATHEMATICAL BOLD SCRIPT CAPITAL N
<U0001D4DE> <U004F> % MATHEMATICAL BOLD SCRIPT CAPITAL O
<U0001D4DF> <U0050> % MATHEMATICAL BOLD SCRIPT CAPITAL P
<U0001D4E0> <U0051> % MATHEMATICAL BOLD SCRIPT CAPITAL Q
<U0001D4E1> <U0052> % MATHEMATICAL BOLD SCRIPT CAPITAL R
<U0001D4E2> <U0053> % MATHEMATICAL BOLD SCRIPT CAPITAL S
<U0001D4E3> <U0054> % MATHEMATICAL BOLD SCRIPT CAPITAL T
<U0001D4E4> <U0055> % MATHEMATICAL BOLD SCRIPT CAPITAL U
<U0001D4E5> <U0056> % MATHEMATICAL BOLD SCRIPT CAPITAL V
<U0001D4E6> <U0057> % MATHEMATICAL BOLD SCRIPT CAPITAL W
<U0001D4E7> <U0058> % MATHEMATICAL BOLD SCRIPT CAPITAL X
<U0001D4E8> <U0059> % MATHEMATICAL BOLD SCRIPT CAPITAL Y
<U0001D4E9> <U005A> % MATHEMATICAL BOLD SCRIPT CAPITAL Z
<U0001D4EA> <U0061> % MATHEMATICAL BOLD SCRIPT SMALL A
<U0001D4EB> <U0062> % MATHEMATICAL BOLD SCRIPT SMALL B
<U0001D4EC> <U0063> % MATHEMATICAL BOLD SCRIPT SMALL C
<U0001D4ED> <U0064> % MATHEMATICAL BOLD SCRIPT SMALL D
<U0001D4EE> <U0065> % MATHEMATICAL BOLD SCRIPT SMALL E
<U0001D4EF> <U0066> % MATHEMATICAL BOLD SCRIPT SMALL F
<U0001D4F0> <U0067> % MATHEMATICAL BOLD SCRIPT SMALL G
<U0001D4F1> <U0068> % MATHEMATICAL BOLD SCRIPT SMALL H
<U0001D4F2> <U0069> % MATHEMATICAL BOLD SCRIPT SMALL I
<U0001D4F3> <U006A> % MATHEMATICAL BOLD SCRIPT SMALL J
<U0001D4F4> <U006B> % MATHEMATICAL BOLD SCRIPT SMALL K
<U0001D4F5> <U006C> % MATHEMATICAL BOLD SCRIPT SMALL L
<U0001D4F6> <U006D> % MATHEMATICAL BOLD SCRIPT SMALL M
<U0001D4F7> <U006E> % MATHEMATICAL BOLD SCRIPT SMALL N
<U0001D4F8> <U006F> % MATHEMATICAL BOLD SCRIPT SMALL O
<U0001D4F9> <U0070> % MATHEMATICAL BOLD SCRIPT SMALL P
<U0001D4FA> <U0071> % MATHEMATICAL BOLD SCRIPT SMALL Q
<U0001D4FB> <U0072> % MATHEMATICAL BOLD SCRIPT SMALL R
<U0001D4FC> <U0073> % MATHEMATICAL BOLD SCRIPT SMALL S
<U0001D4FD> <U0074> % MATHEMATICAL BOLD SCRIPT SMALL T
<U0001D4FE> <U0075> % MATHEMATICAL BOLD SCRIPT SMALL U
<U0001D4FF> <U0076> % MATHEMATICAL BOLD SCRIPT SMALL V
<U0001D500> <U0077> % MATHEMATICAL BOLD SCRIPT SMALL W
<U0001D501> <U0078> % MATHEMATICAL BOLD SCRIPT SMALL X
<U0001D502> <U0079> % MATHEMATICAL BOLD SCRIPT SMALL Y
<U0001D503> <U007A> % MATHEMATICAL BOLD SCRIPT SMALL Z
<U0001D504> <U0041> % MATHEMATICAL FRAKTUR CAPITAL A
<U0001D505> <U0042> % MATHEMATICAL FRAKTUR CAPITAL B
<U0001D507> <U0044> % MATHEMATICAL FRAKTUR CAPITAL D
<U0001D508> <U0045> % MATHEMATICAL FRAKTUR CAPITAL E
<U0001D509> <U0046> % MATHEMATICAL FRAKTUR CAPITAL F
<U0001D50A> <U0047> % MATHEMATICAL FRAKTUR CAPITAL G
<U0001D50D> <U004A> % MATHEMATICAL FRAKTUR CAPITAL J
<U0001D50E> <U004B> % MATHEMATICAL FRAKTUR CAPITAL K
<U0001D50F> <U004C> % MATHEMATICAL FRAKTUR CAPITAL L
<U0001D510> <U004D> % MATHEMATICAL FRAKTUR CAPITAL M
<U0001D511> <U004E> % MATHEMATICAL FRAKTUR CAPITAL N
<U0001D512> <U004F> % MATHEMATICAL FRAKTUR CAPITAL O
<U0001D513> <U0050> % MATHEMATICAL FRAKTUR CAPITAL P
<U0001D514> <U0051> % MATHEMATICAL FRAKTUR CAPITAL Q
<U0001D516> <U0053> % MATHEMATICAL FRAKTUR CAPITAL S
<U0001D517> <U0054> % MATHEMATICAL FRAKTUR CAPITAL T
<U0001D518> <U0055> % MATHEMATICAL FRAKTUR CAPITAL U
<U0001D519> <U0056> % MATHEMATICAL FRAKTUR CAPITAL V
<U0001D51A> <U0057> % MATHEMATICAL FRAKTUR CAPITAL W
<U0001D51B> <U0058> % MATHEMATICAL FRAKTUR CAPITAL X
<U0001D51C> <U0059> % MATHEMATICAL FRAKTUR CAPITAL Y
<U0001D51E> <U0061> % MATHEMATICAL FRAKTUR SMALL A
<U0001D51F> <U0062> % MATHEMATICAL FRAKTUR SMALL B
<U0001D520> <U0063> % MATHEMATICAL FRAKTUR SMALL C
<U0001D521> <U0064> % MATHEMATICAL FRAKTUR SMALL D
<U0001D522> <U0065> % MATHEMATICAL FRAKTUR SMALL E
<U0001D523> <U0066> % MATHEMATICAL FRAKTUR SMALL F
<U0001D524> <U0067> % MATHEMATICAL FRAKTUR SMALL G
<U0001D525> <U0068> % MATHEMATICAL FRAKTUR SMALL H
<U0001D526> <U0069> % MATHEMATICAL FRAKTUR SMALL I
<U0001D527> <U006A> % MATHEMATICAL FRAKTUR SMALL J
<U0001D528> <U006B> % MATHEMATICAL FRAKTUR SMALL K
<U0001D529> <U006C> % MATHEMATICAL FRAKTUR SMALL L
<U0001D52A> <U006D> % MATHEMATICAL FRAKTUR SMALL M
<U0001D52B> <U006E> % MATHEMATICAL FRAKTUR SMALL N
<U0001D52C> <U006F> % MATHEMATICAL FRAKTUR SMALL O
<U0001D52D> <U0070> % MATHEMATICAL FRAKTUR SMALL P
<U0001D52E> <U0071> % MATHEMATICAL FRAKTUR SMALL Q
<U0001D52F> <U0072> % MATHEMATICAL FRAKTUR SMALL R
<U0001D530> <U0073> % MATHEMATICAL FRAKTUR SMALL S
<U0001D531> <U0074> % MATHEMATICAL FRAKTUR SMALL T
<U0001D532> <U0075> % MATHEMATICAL FRAKTUR SMALL U
<U0001D533> <U0076> % MATHEMATICAL FRAKTUR SMALL V
<U0001D534> <U0077> % MATHEMATICAL FRAKTUR SMALL W
<U0001D535> <U0078> % MATHEMATICAL FRAKTUR SMALL X
<U0001D536> <U0079> % MATHEMATICAL FRAKTUR SMALL Y
<U0001D537> <U007A> % MATHEMATICAL FRAKTUR SMALL Z
<U0001D538> <U0041> % MATHEMATICAL DOUBLE-STRUCK CAPITAL A
<U0001D539> <U0042> % MATHEMATICAL DOUBLE-STRUCK CAPITAL B
<U0001D53B> <U0044> % MATHEMATICAL DOUBLE-STRUCK CAPITAL D
<U0001D53C> <U0045> % MATHEMATICAL DOUBLE-STRUCK CAPITAL E
<U0001D53D> <U0046> % MATHEMATICAL DOUBLE-STRUCK CAPITAL F
<U0001D53E> <U0047> % MATHEMATICAL DOUBLE-STRUCK CAPITAL G
<U0001D540> <U0049> % MATHEMATICAL DOUBLE-STRUCK CAPITAL I
<U0001D541> <U004A> % MATHEMATICAL DOUBLE-STRUCK CAPITAL J
<U0001D542> <U004B> % MATHEMATICAL DOUBLE-STRUCK CAPITAL K
<U0001D543> <U004C> % MATHEMATICAL DOUBLE-STRUCK CAPITAL L
<U0001D544> <U004D> % MATHEMATICAL DOUBLE-STRUCK CAPITAL M
<U0001D546> <U004F> % MATHEMATICAL DOUBLE-STRUCK CAPITAL O
<U0001D54A> <U0053> % MATHEMATICAL DOUBLE-STRUCK CAPITAL S
<U0001D54B> <U0054> % MATHEMATICAL DOUBLE-STRUCK CAPITAL T
<U0001D54C> <U0055> % MATHEMATICAL DOUBLE-STRUCK CAPITAL U
<U0001D54D> <U0056> % MATHEMATICAL DOUBLE-STRUCK CAPITAL V
<U0001D54E> <U0057> % MATHEMATICAL DOUBLE-STRUCK CAPITAL W
<U0001D54F> <U0058> % MATHEMATICAL DOUBLE-STRUCK CAPITAL X
<U0001D550> <U0059> % MATHEMATICAL DOUBLE-STRUCK CAPITAL Y
<U0001D552> <U0061> % MATHEMATICAL DOUBLE-STRUCK SMALL A
<U0001D553> <U0062> % MATHEMATICAL DOUBLE-STRUCK SMALL B
<U0001D554> <U0063> % MATHEMATICAL DOUBLE-STRUCK SMALL C
<U0001D555> <U0064> % MATHEMATICAL DOUBLE-STRUCK SMALL D
<U0001D556> <U0065> % MATHEMATICAL DOUBLE-STRUCK SMALL E
<U0001D557> <U0066> % MATHEMATICAL DOUBLE-STRUCK SMALL F
<U0001D558> <U0067> % MATHEMATICAL DOUBLE-STRUCK SMALL G
<U0001D559> <U0068> % MATHEMATICAL DOUBLE-STRUCK SMALL H
<U0001D55A> <U0069> % MATHEMATICAL DOUBLE-STRUCK SMALL I
<U0001D55B> <U006A> % MATHEMATICAL DOUBLE-STRUCK SMALL J
<U0001D55C> <U006B> % MATHEMATICAL DOUBLE-STRUCK SMALL K
<U0001D55D> <U006C> % MATHEMATICAL DOUBLE-STRUCK SMALL L
<U0001D55E> <U006D> % MATHEMATICAL DOUBLE-STRUCK SMALL M
<U0001D55F> <U006E> % MATHEMATICAL DOUBLE-STRUCK SMALL N
<U0001D560> <U006F> % MATHEMATICAL DOUBLE-STRUCK SMALL O
<U0001D561> <U0070> % MATHEMATICAL DOUBLE-STRUCK SMALL P
<U0001D562> <U0071> % MATHEMATICAL DOUBLE-STRUCK SMALL Q
<U0001D563> <U0072> % MATHEMATICAL DOUBLE-STRUCK SMALL R
<U0001D564> <U0073> % MATHEMATICAL DOUBLE-STRUCK SMALL S
<U0001D565> <U0074> % MATHEMATICAL DOUBLE-STRUCK SMALL T
<U0001D566> <U0075> % MATHEMATICAL DOUBLE-STRUCK SMALL U
<U0001D567> <U0076> % MATHEMATICAL DOUBLE-STRUCK SMALL V
<U0001D568> <U0077> % MATHEMATICAL DOUBLE-STRUCK SMALL W
<U0001D569> <U0078> % MATHEMATICAL DOUBLE-STRUCK SMALL X
<U0001D56A> <U0079> % MATHEMATICAL DOUBLE-STRUCK SMALL Y
<U0001D56B> <U007A> % MATHEMATICAL DOUBLE-STRUCK SMALL Z
<U0001D56C> <U0041> % MATHEMATICAL BOLD FRAKTUR CAPITAL A
<U0001D56D> <U0042> % MATHEMATICAL BOLD FRAKTUR CAPITAL B
<U0001D56E> <U0043> % MATHEMATICAL BOLD FRAKTUR CAPITAL C
<U0001D56F> <U0044> % MATHEMATICAL BOLD FRAKTUR CAPITAL D
<U0001D570> <U0045> % MATHEMATICAL BOLD FRAKTUR CAPITAL E
<U0001D571> <U0046> % MATHEMATICAL BOLD FRAKTUR CAPITAL F
<U0001D572> <U0047> % MATHEMATICAL BOLD FRAKTUR CAPITAL G
<U0001D573> <U0048> % MATHEMATICAL BOLD FRAKTUR CAPITAL H
<U0001D574> <U0049> % MATHEMATICAL BOLD FRAKTUR CAPITAL I
<U0001D575> <U004A> % MATHEMATICAL BOLD FRAKTUR CAPITAL J
<U0001D576> <U004B> % MATHEMATICAL BOLD FRAKTUR CAPITAL K
<U0001D577> <U004C> % MATHEMATICAL BOLD FRAKTUR CAPITAL L
<U0001D578> <U004D> % MATHEMATICAL BOLD FRAKTUR CAPITAL M
<U0001D579> <U004E> % MATHEMATICAL BOLD FRAKTUR CAPITAL N
<U0001D57A> <U004F> % MATHEMATICAL BOLD FRAKTUR CAPITAL O
<U0001D57B> <U0050> % MATHEMATICAL BOLD FRAKTUR CAPITAL P
<U0001D57C> <U0051> % MATHEMATICAL BOLD FRAKTUR CAPITAL Q
<U0001D57D> <U0052> % MATHEMATICAL BOLD FRAKTUR CAPITAL R
<U0001D57E> <U0053> % MATHEMATICAL BOLD FRAKTUR CAPITAL S
<U0001D57F> <U0054> % MATHEMATICAL BOLD FRAKTUR CAPITAL T
<U0001D580> <U0055> % MATHEMATICAL BOLD FRAKTUR CAPITAL U
<U0001D581> <U0056> % MATHEMATICAL BOLD FRAKTUR CAPITAL V
<U0001D582> <U0057> % MATHEMATICAL BOLD FRAKTUR CAPITAL W
<U0001D583> <U0058> % MATHEMATICAL BOLD FRAKTUR CAPITAL X
<U0001D584> <U0059> % MATHEMATICAL BOLD FRAKTUR CAPITAL Y
<U0001D585> <U005A> % MATHEMATICAL BOLD FRAKTUR CAPITAL Z
<U0001D586> <U0061> % MATHEMATICAL BOLD FRAKTUR SMALL A
<U0001D587> <U0062> % MATHEMATICAL BOLD FRAKTUR SMALL B
<U0001D588> <U0063> % MATHEMATICAL BOLD FRAKTUR SMALL C
<U0001D589> <U0064> % MATHEMATICAL BOLD FRAKTUR SMALL D
<U0001D58A> <U0065> % MATHEMATICAL BOLD FRAKTUR SMALL E
<U0001D58B> <U0066> % MATHEMATICAL BOLD FRAKTUR SMALL F
<U0001D58C> <U0067> % MATHEMATICAL BOLD FRAKTUR SMALL G
<U0001D58D> <U0068> % MATHEMATICAL BOLD FRAKTUR SMALL H
<U0001D58E> <U0069> % MATHEMATICAL BOLD FRAKTUR SMALL I
<U0001D58F> <U006A> % MATHEMATICAL BOLD FRAKTUR SMALL J
<U0001D590> <U006B> % MATHEMATICAL BOLD FRAKTUR SMALL K
<U0001D591> <U006C> % MATHEMATICAL BOLD FRAKTUR SMALL L
<U0001D592> <U006D> % MATHEMATICAL BOLD FRAKTUR SMALL M
<U0001D593> <U006E> % MATHEMATICAL BOLD FRAKTUR SMALL N
<U0001D594> <U006F> % MATHEMATICAL BOLD FRAKTUR SMALL O
<U0001D595> <U0070> % MATHEMATICAL BOLD FRAKTUR SMALL P
<U0001D596> <U0071> % MATHEMATICAL BOLD FRAKTUR SMALL Q
<U0001D597> <U0072> % MATHEMATICAL BOLD FRAKTUR SMALL R
<U0001D598> <U0073> % MATHEMATICAL BOLD FRAKTUR SMALL S
<U0001D599> <U0074> % MATHEMATICAL BOLD FRAKTUR SMALL T
<U0001D59A> <U0075> % MATHEMATICAL BOLD FRAKTUR SMALL U
<U0001D59B> <U0076> % MATHEMATICAL BOLD FRAKTUR SMALL V
<U0001D59C> <U0077> % MATHEMATICAL BOLD FRAKTUR SMALL W
<U0001D59D> <U0078> % MATHEMATICAL BOLD FRAKTUR SMALL X
<U0001D59E> <U0079> % MATHEMATICAL BOLD FRAKTUR SMALL Y
<U0001D59F> <U007A> % MATHEMATICAL BOLD FRAKTUR SMALL Z
<U0001D5A0> <U0041> % MATHEMATICAL SANS-SERIF CAPITAL A
<U0001D5A1> <U0042> % MATHEMATICAL SANS-SERIF CAPITAL B
<U0001D5A2> <U0043> % MATHEMATICAL SANS-SERIF CAPITAL C
<U0001D5A3> <U0044> % MATHEMATICAL SANS-SERIF CAPITAL D
<U0001D5A4> <U0045> % MATHEMATICAL SANS-SERIF CAPITAL E
<U0001D5A5> <U0046> % MATHEMATICAL SANS-SERIF CAPITAL F
<U0001D5A6> <U0047> % MATHEMATICAL SANS-SERIF CAPITAL G
<U0001D5A7> <U0048> % MATHEMATICAL SANS-SERIF CAPITAL H
<U0001D5A8> <U0049> % MATHEMATICAL SANS-SERIF CAPITAL I
<U0001D5A9> <U004A> % MATHEMATICAL SANS-SERIF CAPITAL J
<U0001D5AA> <U004B> % MATHEMATICAL SANS-SERIF CAPITAL K
<U0001D5AB> <U004C> % MATHEMATICAL SANS-SERIF CAPITAL L
<U0001D5AC> <U004D> % MATHEMATICAL SANS-SERIF CAPITAL M
<U0001D5AD> <U004E> % MATHEMATICAL SANS-SERIF CAPITAL N
<U0001D5AE> <U004F> % MATHEMATICAL SANS-SERIF CAPITAL O
<U0001D5AF> <U0050> % MATHEMATICAL SANS-SERIF CAPITAL P
<U0001D5B0> <U0051> % MATHEMATICAL SANS-SERIF CAPITAL Q
<U0001D5B1> <U0052> % MATHEMATICAL SANS-SERIF CAPITAL R
<U0001D5B2> <U0053> % MATHEMATICAL SANS-SERIF CAPITAL S
<U0001D5B3> <U0054> % MATHEMATICAL SANS-SERIF CAPITAL T
<U0001D5B4> <U0055> % MATHEMATICAL SANS-SERIF CAPITAL U
<U0001D5B5> <U0056> % MATHEMATICAL SANS-SERIF CAPITAL V
<U0001D5B6> <U0057> % MATHEMATICAL SANS-SERIF CAPITAL W
<U0001D5B7> <U0058> % MATHEMATICAL SANS-SERIF CAPITAL X
<U0001D5B8> <U0059> % MATHEMATICAL SANS-SERIF CAPITAL Y
<U0001D5B9> <U005A> % MATHEMATICAL SANS-SERIF CAPITAL Z
<U0001D5BA> <U0061> % MATHEMATICAL SANS-SERIF SMALL A
<U0001D5BB> <U0062> % MATHEMATICAL SANS-SERIF SMALL B
<U0001D5BC> <U0063> % MATHEMATICAL SANS-SERIF SMALL C
<U0001D5BD> <U0064> % MATHEMATICAL SANS-SERIF SMALL D
<U0001D5BE> <U0065> % MATHEMATICAL SANS-SERIF SMALL E
<U0001D5BF> <U0066> % MATHEMATICAL SANS-SERIF SMALL F
<U0001D5C0> <U0067> % MATHEMATICAL SANS-SERIF SMALL G
<U0001D5C1> <U0068> % MATHEMATICAL SANS-SERIF SMALL H
<U0001D5C2> <U0069> % MATHEMATICAL SANS-SERIF SMALL I
<U0001D5C3> <U006A> % MATHEMATICAL SANS-SERIF SMALL J
<U0001D5C4> <U006B> % MATHEMATICAL SANS-SERIF SMALL K
<U0001D5C5> <U006C> % MATHEMATICAL SANS-SERIF SMALL L
<U0001D5C6> <U006D> % MATHEMATICAL SANS-SERIF SMALL M
<U0001D5C7> <U006E> % MATHEMATICAL SANS-SERIF SMALL N
<U0001D5C8> <U006F> % MATHEMATICAL SANS-SERIF SMALL O
<U0001D5C9> <U0070> % MATHEMATICAL SANS-SERIF SMALL P
<U0001D5CA> <U0071> % MATHEMATICAL SANS-SERIF SMALL Q
<U0001D5CB> <U0072> % MATHEMATICAL SANS-SERIF SMALL R
<U0001D5CC> <U0073> % MATHEMATICAL SANS-SERIF SMALL S
<U0001D5CD> <U0074> % MATHEMATICAL SANS-SERIF SMALL T
<U0001D5CE> <U0075> % MATHEMATICAL SANS-SERIF SMALL U
<U0001D5CF> <U0076> % MATHEMATICAL SANS-SERIF SMALL V
<U0001D5D0> <U0077> % MATHEMATICAL SANS-SERIF SMALL W
<U0001D5D1> <U0078> % MATHEMATICAL SANS-SERIF SMALL X
<U0001D5D2> <U0079> % MATHEMATICAL SANS-SERIF SMALL Y
<U0001D5D3> <U007A> % MATHEMATICAL SANS-SERIF SMALL Z
<U0001D5D4> <U0041> % MATHEMATICAL SANS-SERIF BOLD CAPITAL A
<U0001D5D5> <U0042> % MATHEMATICAL SANS-SERIF BOLD CAPITAL B
<U0001D5D6> <U0043> % MATHEMATICAL SANS-SERIF BOLD CAPITAL C
<U0001D5D7> <U0044> % MATHEMATICAL SANS-SERIF BOLD CAPITAL D
<U0001D5D8> <U0045> % MATHEMATICAL SANS-SERIF BOLD CAPITAL E
<U0001D5D9> <U0046> % MATHEMATICAL SANS-SERIF BOLD CAPITAL F
<U0001D5DA> <U0047> % MATHEMATICAL SANS-SERIF BOLD CAPITAL G
<U0001D5DB> <U0048> % MATHEMATICAL SANS-SERIF BOLD CAPITAL H
<U0001D5DC> <U0049> % MATHEMATICAL SANS-SERIF BOLD CAPITAL I
<U0001D5DD> <U004A> % MATHEMATICAL SANS-SERIF BOLD CAPITAL J
<U0001D5DE> <U004B> % MATHEMATICAL SANS-SERIF BOLD CAPITAL K
<U0001D5DF> <U004C> % MATHEMATICAL SANS-SERIF BOLD CAPITAL L
<U0001D5E0> <U004D> % MATHEMATICAL SANS-SERIF BOLD CAPITAL M
<U0001D5E1> <U004E> % MATHEMATICAL SANS-SERIF BOLD CAPITAL N
<U0001D5E2> <U004F> % MATHEMATICAL SANS-SERIF BOLD CAPITAL O
<U0001D5E3> <U0050> % MATHEMATICAL SANS-SERIF BOLD CAPITAL P
<U0001D5E4> <U0051> % MATHEMATICAL SANS-SERIF BOLD CAPITAL Q
<U0001D5E5> <U0052> % MATHEMATICAL SANS-SERIF BOLD CAPITAL R
<U0001D5E6> <U0053> % MATHEMATICAL SANS-SERIF BOLD CAPITAL S
<U0001D5E7> <U0054> % MATHEMATICAL SANS-SERIF BOLD CAPITAL T
<U0001D5E8> <U0055> % MATHEMATICAL SANS-SERIF BOLD CAPITAL U
<U0001D5E9> <U0056> % MATHEMATICAL SANS-SERIF BOLD CAPITAL V
<U0001D5EA> <U0057> % MATHEMATICAL SANS-SERIF BOLD CAPITAL W
<U0001D5EB> <U0058> % MATHEMATICAL SANS-SERIF BOLD CAPITAL X
<U0001D5EC> <U0059> % MATHEMATICAL SANS-SERIF BOLD CAPITAL Y
<U0001D5ED> <U005A> % MATHEMATICAL SANS-SERIF BOLD CAPITAL Z
<U0001D5EE> <U0061> % MATHEMATICAL SANS-SERIF BOLD SMALL A
<U0001D5EF> <U0062> % MATHEMATICAL SANS-SERIF BOLD SMALL B
<U0001D5F0> <U0063> % MATHEMATICAL SANS-SERIF BOLD SMALL C
<U0001D5F1> <U0064> % MATHEMATICAL SANS-SERIF BOLD SMALL D
<U0001D5F2> <U0065> % MATHEMATICAL SANS-SERIF BOLD SMALL E
<U0001D5F3> <U0066> % MATHEMATICAL SANS-SERIF BOLD SMALL F
<U0001D5F4> <U0067> % MATHEMATICAL SANS-SERIF BOLD SMALL G
<U0001D5F5> <U0068> % MATHEMATICAL SANS-SERIF BOLD SMALL H
<U0001D5F6> <U0069> % MATHEMATICAL SANS-SERIF BOLD SMALL I
<U0001D5F7> <U006A> % MATHEMATICAL SANS-SERIF BOLD SMALL J
<U0001D5F8> <U006B> % MATHEMATICAL SANS-SERIF BOLD SMALL K
<U0001D5F9> <U006C> % MATHEMATICAL SANS-SERIF BOLD SMALL L
<U0001D5FA> <U006D> % MATHEMATICAL SANS-SERIF BOLD SMALL M
<U0001D5FB> <U006E> % MATHEMATICAL SANS-SERIF BOLD SMALL N
<U0001D5FC> <U006F> % MATHEMATICAL SANS-SERIF BOLD SMALL O
<U0001D5FD> <U0070> % MATHEMATICAL SANS-SERIF BOLD SMALL P
<U0001D5FE> <U0071> % MATHEMATICAL SANS-SERIF BOLD SMALL Q
<U0001D5FF> <U0072> % MATHEMATICAL SANS-SERIF BOLD SMALL R
<U0001D600> <U0073> % MATHEMATICAL SANS-SERIF BOLD SMALL S
<U0001D601> <U0074> % MATHEMATICAL SANS-SERIF BOLD SMALL T
<U0001D602> <U0075> % MATHEMATICAL SANS-SERIF BOLD SMALL U
<U0001D603> <U0076> % MATHEMATICAL SANS-SERIF BOLD SMALL V
<U0001D604> <U0077> % MATHEMATICAL SANS-SERIF BOLD SMALL W
<U0001D605> <U0078> % MATHEMATICAL SANS-SERIF BOLD SMALL X
<U0001D606> <U0079> % MATHEMATICAL SANS-SERIF BOLD SMALL Y
<U0001D607> <U007A> % MATHEMATICAL SANS-SERIF BOLD SMALL Z
<U0001D608> <U0041> % MATHEMATICAL SANS-SERIF ITALIC CAPITAL A
<U0001D609> <U0042> % MATHEMATICAL SANS-SERIF ITALIC CAPITAL B
<U0001D60A> <U0043> % MATHEMATICAL SANS-SERIF ITALIC CAPITAL C
<U0001D60B> <U0044> % MATHEMATICAL SANS-SERIF ITALIC CAPITAL D
<U0001D60C> <U0045> % MATHEMATICAL SANS-SERIF ITALIC CAPITAL E
<U0001D60D> <U0046> % MATHEMATICAL SANS-SERIF ITALIC CAPITAL F
<U0001D60E> <U0047> % MATHEMATICAL SANS-SERIF ITALIC CAPITAL G
<U0001D60F> <U0048> % MATHEMATICAL SANS-SERIF ITALIC CAPITAL H
<U0001D610> <U0049> % MATHEMATICAL SANS-SERIF ITALIC CAPITAL I
<U0001D611> <U004A> % MATHEMATICAL SANS-SERIF ITALIC CAPITAL J
<U0001D612> <U004B> % MATHEMATICAL SANS-SERIF ITALIC CAPITAL K
<U0001D613> <U004C> % MATHEMATICAL SANS-SERIF ITALIC CAPITAL L
<U0001D614> <U004D> % MATHEMATICAL SANS-SERIF ITALIC CAPITAL M
<U0001D615> <U004E> % MATHEMATICAL SANS-SERIF ITALIC CAPITAL N
<U0001D616> <U004F> % MATHEMATICAL SANS-SERIF ITALIC CAPITAL O
<U0001D617> <U0050> % MATHEMATICAL SANS-SERIF ITALIC CAPITAL P
<U0001D618> <U0051> % MATHEMATICAL SANS-SERIF ITALIC CAPITAL Q
<U0001D619> <U0052> % MATHEMATICAL SANS-SERIF ITALIC CAPITAL R
<U0001D61A> <U0053> % MATHEMATICAL SANS-SERIF ITALIC CAPITAL S
<U0001D61B> <U0054> % MATHEMATICAL SANS-SERIF ITALIC CAPITAL T
<U0001D61C> <U0055> % MATHEMATICAL SANS-SERIF ITALIC CAPITAL U
<U0001D61D> <U0056> % MATHEMATICAL SANS-SERIF ITALIC CAPITAL V
<U0001D61E> <U0057> % MATHEMATICAL SANS-SERIF ITALIC CAPITAL W
<U0001D61F> <U0058> % MATHEMATICAL SANS-SERIF ITALIC CAPITAL X
<U0001D620> <U0059> % MATHEMATICAL SANS-SERIF ITALIC CAPITAL Y
<U0001D621> <U005A> % MATHEMATICAL SANS-SERIF ITALIC CAPITAL Z
<U0001D622> <U0061> % MATHEMATICAL SANS-SERIF ITALIC SMALL A
<U0001D623> <U0062> % MATHEMATICAL SANS-SERIF ITALIC SMALL B
<U0001D624> <U0063> % MATHEMATICAL SANS-SERIF ITALIC SMALL C
<U0001D625> <U0064> % MATHEMATICAL SANS-SERIF ITALIC SMALL D
<U0001D626> <U0065> % MATHEMATICAL SANS-SERIF ITALIC SMALL E
<U0001D627> <U0066> % MATHEMATICAL SANS-SERIF ITALIC SMALL F
<U0001D628> <U0067> % MATHEMATICAL SANS-SERIF ITALIC SMALL G
<U0001D629> <U0068> % MATHEMATICAL SANS-SERIF ITALIC SMALL H
<U0001D62A> <U0069> % MATHEMATICAL SANS-SERIF ITALIC SMALL I
<U0001D62B> <U006A> % MATHEMATICAL SANS-SERIF ITALIC SMALL J
<U0001D62C> <U006B> % MATHEMATICAL SANS-SERIF ITALIC SMALL K
<U0001D62D> <U006C> % MATHEMATICAL SANS-SERIF ITALIC SMALL L
<U0001D62E> <U006D> % MATHEMATICAL SANS-SERIF ITALIC SMALL M
<U0001D62F> <U006E> % MATHEMATICAL SANS-SERIF ITALIC SMALL N
<U0001D630> <U006F> % MATHEMATICAL SANS-SERIF ITALIC SMALL O
<U0001D631> <U0070> % MATHEMATICAL SANS-SERIF ITALIC SMALL P
<U0001D632> <U0071> % MATHEMATICAL SANS-SERIF ITALIC SMALL Q
<U0001D633> <U0072> % MATHEMATICAL SANS-SERIF ITALIC SMALL R
<U0001D634> <U0073> % MATHEMATICAL SANS-SERIF ITALIC SMALL S
<U0001D635> <U0074> % MATHEMATICAL SANS-SERIF ITALIC SMALL T
<U0001D636> <U0075> % MATHEMATICAL SANS-SERIF ITALIC SMALL U
<U0001D637> <U0076> % MATHEMATICAL SANS-SERIF ITALIC SMALL V
<U0001D638> <U0077> % MATHEMATICAL SANS-SERIF ITALIC SMALL W
<U0001D639> <U0078> % MATHEMATICAL SANS-SERIF ITALIC SMALL X
<U0001D63A> <U0079> % MATHEMATICAL SANS-SERIF ITALIC SMALL Y
<U0001D63B> <U007A> % MATHEMATICAL SANS-SERIF ITALIC SMALL Z
<U0001D63C> <U0041> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL A
<U0001D63D> <U0042> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL B
<U0001D63E> <U0043> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL C
<U0001D63F> <U0044> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL D
<U0001D640> <U0045> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL E
<U0001D641> <U0046> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL F
<U0001D642> <U0047> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL G
<U0001D643> <U0048> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL H
<U0001D644> <U0049> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL I
<U0001D645> <U004A> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL J
<U0001D646> <U004B> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL K
<U0001D647> <U004C> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL L
<U0001D648> <U004D> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL M
<U0001D649> <U004E> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL N
<U0001D64A> <U004F> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL O
<U0001D64B> <U0050> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL P
<U0001D64C> <U0051> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL Q
<U0001D64D> <U0052> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL R
<U0001D64E> <U0053> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL S
<U0001D64F> <U0054> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL T
<U0001D650> <U0055> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL U
<U0001D651> <U0056> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL V
<U0001D652> <U0057> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL W
<U0001D653> <U0058> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL X
<U0001D654> <U0059> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL Y
<U0001D655> <U005A> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL Z
<U0001D656> <U0061> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL A
<U0001D657> <U0062> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL B
<U0001D658> <U0063> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL C
<U0001D659> <U0064> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL D
<U0001D65A> <U0065> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL E
<U0001D65B> <U0066> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL F
<U0001D65C> <U0067> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL G
<U0001D65D> <U0068> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL H
<U0001D65E> <U0069> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL I
<U0001D65F> <U006A> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL J
<U0001D660> <U006B> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL K
<U0001D661> <U006C> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL L
<U0001D662> <U006D> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL M
<U0001D663> <U006E> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL N
<U0001D664> <U006F> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL O
<U0001D665> <U0070> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL P
<U0001D666> <U0071> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL Q
<U0001D667> <U0072> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL R
<U0001D668> <U0073> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL S
<U0001D669> <U0074> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL T
<U0001D66A> <U0075> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL U
<U0001D66B> <U0076> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL V
<U0001D66C> <U0077> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL W
<U0001D66D> <U0078> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL X
<U0001D66E> <U0079> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL Y
<U0001D66F> <U007A> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL Z
<U0001D670> <U0041> % MATHEMATICAL MONOSPACE CAPITAL A
<U0001D671> <U0042> % MATHEMATICAL MONOSPACE CAPITAL B
<U0001D672> <U0043> % MATHEMATICAL MONOSPACE CAPITAL C
<U0001D673> <U0044> % MATHEMATICAL MONOSPACE CAPITAL D
<U0001D674> <U0045> % MATHEMATICAL MONOSPACE CAPITAL E
<U0001D675> <U0046> % MATHEMATICAL MONOSPACE CAPITAL F
<U0001D676> <U0047> % MATHEMATICAL MONOSPACE CAPITAL G
<U0001D677> <U0048> % MATHEMATICAL MONOSPACE CAPITAL H
<U0001D678> <U0049> % MATHEMATICAL MONOSPACE CAPITAL I
<U0001D679> <U004A> % MATHEMATICAL MONOSPACE CAPITAL J
<U0001D67A> <U004B> % MATHEMATICAL MONOSPACE CAPITAL K
<U0001D67B> <U004C> % MATHEMATICAL MONOSPACE CAPITAL L
<U0001D67C> <U004D> % MATHEMATICAL MONOSPACE CAPITAL M
<U0001D67D> <U004E> % MATHEMATICAL MONOSPACE CAPITAL N
<U0001D67E> <U004F> % MATHEMATICAL MONOSPACE CAPITAL O
<U0001D67F> <U0050> % MATHEMATICAL MONOSPACE CAPITAL P
<U0001D680> <U0051> % MATHEMATICAL MONOSPACE CAPITAL Q
<U0001D681> <U0052> % MATHEMATICAL MONOSPACE CAPITAL R
<U0001D682> <U0053> % MATHEMATICAL MONOSPACE CAPITAL S
<U0001D683> <U0054> % MATHEMATICAL MONOSPACE CAPITAL T
<U0001D684> <U0055> % MATHEMATICAL MONOSPACE CAPITAL U
<U0001D685> <U0056> % MATHEMATICAL MONOSPACE CAPITAL V
<U0001D686> <U0057> % MATHEMATICAL MONOSPACE CAPITAL W
<U0001D687> <U0058> % MATHEMATICAL MONOSPACE CAPITAL X
<U0001D688> <U0059> % MATHEMATICAL MONOSPACE CAPITAL Y
<U0001D689> <U005A> % MATHEMATICAL MONOSPACE CAPITAL Z
<U0001D68A> <U0061> % MATHEMATICAL MONOSPACE SMALL A
<U0001D68B> <U0062> % MATHEMATICAL MONOSPACE SMALL B
<U0001D68C> <U0063> % MATHEMATICAL MONOSPACE SMALL C
<U0001D68D> <U0064> % MATHEMATICAL MONOSPACE SMALL D
<U0001D68E> <U0065> % MATHEMATICAL MONOSPACE SMALL E
<U0001D68F> <U0066> % MATHEMATICAL MONOSPACE SMALL F
<U0001D690> <U0067> % MATHEMATICAL MONOSPACE SMALL G
<U0001D691> <U0068> % MATHEMATICAL MONOSPACE SMALL H
<U0001D692> <U0069> % MATHEMATICAL MONOSPACE SMALL I
<U0001D693> <U006A> % MATHEMATICAL MONOSPACE SMALL J
<U0001D694> <U006B> % MATHEMATICAL MONOSPACE SMALL K
<U0001D695> <U006C> % MATHEMATICAL MONOSPACE SMALL L
<U0001D696> <U006D> % MATHEMATICAL MONOSPACE SMALL M
<U0001D697> <U006E> % MATHEMATICAL MONOSPACE SMALL N
<U0001D698> <U006F> % MATHEMATICAL MONOSPACE SMALL O
<U0001D699> <U0070> % MATHEMATICAL MONOSPACE SMALL P
<U0001D69A> <U0071> % MATHEMATICAL MONOSPACE SMALL Q
<U0001D69B> <U0072> % MATHEMATICAL MONOSPACE SMALL R
<U0001D69C> <U0073> % MATHEMATICAL MONOSPACE SMALL S
<U0001D69D> <U0074> % MATHEMATICAL MONOSPACE SMALL T
<U0001D69E> <U0075> % MATHEMATICAL MONOSPACE SMALL U
<U0001D69F> <U0076> % MATHEMATICAL MONOSPACE SMALL V
<U0001D6A0> <U0077> % MATHEMATICAL MONOSPACE SMALL W
<U0001D6A1> <U0078> % MATHEMATICAL MONOSPACE SMALL X
<U0001D6A2> <U0079> % MATHEMATICAL MONOSPACE SMALL Y
<U0001D6A3> <U007A> % MATHEMATICAL MONOSPACE SMALL Z
<U0001D6A8> <U0391> % MATHEMATICAL BOLD CAPITAL ALPHA
<U0001D6A9> <U0392> % MATHEMATICAL BOLD CAPITAL BETA
<U0001D6AA> <U0393> % MATHEMATICAL BOLD CAPITAL GAMMA
<U0001D6AB> <U0394> % MATHEMATICAL BOLD CAPITAL DELTA
<U0001D6AC> <U0395> % MATHEMATICAL BOLD CAPITAL EPSILON
<U0001D6AD> <U0396> % MATHEMATICAL BOLD CAPITAL ZETA
<U0001D6AE> <U0397> % MATHEMATICAL BOLD CAPITAL ETA
<U0001D6AF> <U0398> % MATHEMATICAL BOLD CAPITAL THETA
<U0001D6B0> <U0399> % MATHEMATICAL BOLD CAPITAL IOTA
<U0001D6B1> <U039A> % MATHEMATICAL BOLD CAPITAL KAPPA
<U0001D6B2> <U039B> % MATHEMATICAL BOLD CAPITAL LAMDA
<U0001D6B3> <U039C> % MATHEMATICAL BOLD CAPITAL MU
<U0001D6B4> <U039D> % MATHEMATICAL BOLD CAPITAL NU
<U0001D6B5> <U039E> % MATHEMATICAL BOLD CAPITAL XI
<U0001D6B6> <U039F> % MATHEMATICAL BOLD CAPITAL OMICRON
<U0001D6B7> <U03A0> % MATHEMATICAL BOLD CAPITAL PI
<U0001D6B8> <U03A1> % MATHEMATICAL BOLD CAPITAL RHO
<U0001D6B9> <U03F4> % MATHEMATICAL BOLD CAPITAL THETA SYMBOL
<U0001D6BA> <U03A3> % MATHEMATICAL BOLD CAPITAL SIGMA
<U0001D6BB> <U03A4> % MATHEMATICAL BOLD CAPITAL TAU
<U0001D6BC> <U03A5> % MATHEMATICAL BOLD CAPITAL UPSILON
<U0001D6BD> <U03A6> % MATHEMATICAL BOLD CAPITAL PHI
<U0001D6BE> <U03A7> % MATHEMATICAL BOLD CAPITAL CHI
<U0001D6BF> <U03A8> % MATHEMATICAL BOLD CAPITAL PSI
<U0001D6C0> <U03A9> % MATHEMATICAL BOLD CAPITAL OMEGA
<U0001D6C1> <U2207> % MATHEMATICAL BOLD NABLA
<U0001D6C2> <U03B1> % MATHEMATICAL BOLD SMALL ALPHA
<U0001D6C3> <U03B2> % MATHEMATICAL BOLD SMALL BETA
<U0001D6C4> <U03B3> % MATHEMATICAL BOLD SMALL GAMMA
<U0001D6C5> <U03B4> % MATHEMATICAL BOLD SMALL DELTA
<U0001D6C6> <U03B5> % MATHEMATICAL BOLD SMALL EPSILON
<U0001D6C7> <U03B6> % MATHEMATICAL BOLD SMALL ZETA
<U0001D6C8> <U03B7> % MATHEMATICAL BOLD SMALL ETA
<U0001D6C9> <U03B8> % MATHEMATICAL BOLD SMALL THETA
<U0001D6CA> <U03B9> % MATHEMATICAL BOLD SMALL IOTA
<U0001D6CB> <U03BA> % MATHEMATICAL BOLD SMALL KAPPA
<U0001D6CC> <U03BB> % MATHEMATICAL BOLD SMALL LAMDA
<U0001D6CD> <U03BC> % MATHEMATICAL BOLD SMALL MU
<U0001D6CE> <U03BD> % MATHEMATICAL BOLD SMALL NU
<U0001D6CF> <U03BE> % MATHEMATICAL BOLD SMALL XI
<U0001D6D0> <U03BF> % MATHEMATICAL BOLD SMALL OMICRON
<U0001D6D1> <U03C0> % MATHEMATICAL BOLD SMALL PI
<U0001D6D2> <U03C1> % MATHEMATICAL BOLD SMALL RHO
<U0001D6D3> <U03C2> % MATHEMATICAL BOLD SMALL FINAL SIGMA
<U0001D6D4> <U03C3> % MATHEMATICAL BOLD SMALL SIGMA
<U0001D6D5> <U03C4> % MATHEMATICAL BOLD SMALL TAU
<U0001D6D6> <U03C5> % MATHEMATICAL BOLD SMALL UPSILON
<U0001D6D7> <U03C6> % MATHEMATICAL BOLD SMALL PHI
<U0001D6D8> <U03C7> % MATHEMATICAL BOLD SMALL CHI
<U0001D6D9> <U03C8> % MATHEMATICAL BOLD SMALL PSI
<U0001D6DA> <U03C9> % MATHEMATICAL BOLD SMALL OMEGA
<U0001D6DB> <U2202> % MATHEMATICAL BOLD PARTIAL DIFFERENTIAL
<U0001D6DC> <U03F5> % MATHEMATICAL BOLD EPSILON SYMBOL
<U0001D6DD> <U03D1> % MATHEMATICAL BOLD THETA SYMBOL
<U0001D6DE> <U03F0> % MATHEMATICAL BOLD KAPPA SYMBOL
<U0001D6DF> <U03D5> % MATHEMATICAL BOLD PHI SYMBOL
<U0001D6E0> <U03F1> % MATHEMATICAL BOLD RHO SYMBOL
<U0001D6E1> <U03D6> % MATHEMATICAL BOLD PI SYMBOL
<U0001D6E2> <U0391> % MATHEMATICAL ITALIC CAPITAL ALPHA
<U0001D6E3> <U0392> % MATHEMATICAL ITALIC CAPITAL BETA
<U0001D6E4> <U0393> % MATHEMATICAL ITALIC CAPITAL GAMMA
<U0001D6E5> <U0394> % MATHEMATICAL ITALIC CAPITAL DELTA
<U0001D6E6> <U0395> % MATHEMATICAL ITALIC CAPITAL EPSILON
<U0001D6E7> <U0396> % MATHEMATICAL ITALIC CAPITAL ZETA
<U0001D6E8> <U0397> % MATHEMATICAL ITALIC CAPITAL ETA
<U0001D6E9> <U0398> % MATHEMATICAL ITALIC CAPITAL THETA
<U0001D6EA> <U0399> % MATHEMATICAL ITALIC CAPITAL IOTA
<U0001D6EB> <U039A> % MATHEMATICAL ITALIC CAPITAL KAPPA
<U0001D6EC> <U039B> % MATHEMATICAL ITALIC CAPITAL LAMDA
<U0001D6ED> <U039C> % MATHEMATICAL ITALIC CAPITAL MU
<U0001D6EE> <U039D> % MATHEMATICAL ITALIC CAPITAL NU
<U0001D6EF> <U039E> % MATHEMATICAL ITALIC CAPITAL XI
<U0001D6F0> <U039F> % MATHEMATICAL ITALIC CAPITAL OMICRON
<U0001D6F1> <U03A0> % MATHEMATICAL ITALIC CAPITAL PI
<U0001D6F2> <U03A1> % MATHEMATICAL ITALIC CAPITAL RHO
<U0001D6F3> <U03F4> % MATHEMATICAL ITALIC CAPITAL THETA SYMBOL
<U0001D6F4> <U03A3> % MATHEMATICAL ITALIC CAPITAL SIGMA
<U0001D6F5> <U03A4> % MATHEMATICAL ITALIC CAPITAL TAU
<U0001D6F6> <U03A5> % MATHEMATICAL ITALIC CAPITAL UPSILON
<U0001D6F7> <U03A6> % MATHEMATICAL ITALIC CAPITAL PHI
<U0001D6F8> <U03A7> % MATHEMATICAL ITALIC CAPITAL CHI
<U0001D6F9> <U03A8> % MATHEMATICAL ITALIC CAPITAL PSI
<U0001D6FA> <U03A9> % MATHEMATICAL ITALIC CAPITAL OMEGA
<U0001D6FB> <U2207> % MATHEMATICAL ITALIC NABLA
<U0001D6FC> <U03B1> % MATHEMATICAL ITALIC SMALL ALPHA
<U0001D6FD> <U03B2> % MATHEMATICAL ITALIC SMALL BETA
<U0001D6FE> <U03B3> % MATHEMATICAL ITALIC SMALL GAMMA
<U0001D6FF> <U03B4> % MATHEMATICAL ITALIC SMALL DELTA
<U0001D700> <U03B5> % MATHEMATICAL ITALIC SMALL EPSILON
<U0001D701> <U03B6> % MATHEMATICAL ITALIC SMALL ZETA
<U0001D702> <U03B7> % MATHEMATICAL ITALIC SMALL ETA
<U0001D703> <U03B8> % MATHEMATICAL ITALIC SMALL THETA
<U0001D704> <U03B9> % MATHEMATICAL ITALIC SMALL IOTA
<U0001D705> <U03BA> % MATHEMATICAL ITALIC SMALL KAPPA
<U0001D706> <U03BB> % MATHEMATICAL ITALIC SMALL LAMDA
<U0001D707> <U03BC> % MATHEMATICAL ITALIC SMALL MU
<U0001D708> <U03BD> % MATHEMATICAL ITALIC SMALL NU
<U0001D709> <U03BE> % MATHEMATICAL ITALIC SMALL XI
<U0001D70A> <U03BF> % MATHEMATICAL ITALIC SMALL OMICRON
<U0001D70B> <U03C0> % MATHEMATICAL ITALIC SMALL PI
<U0001D70C> <U03C1> % MATHEMATICAL ITALIC SMALL RHO
<U0001D70D> <U03C2> % MATHEMATICAL ITALIC SMALL FINAL SIGMA
<U0001D70E> <U03C3> % MATHEMATICAL ITALIC SMALL SIGMA
<U0001D70F> <U03C4> % MATHEMATICAL ITALIC SMALL TAU
<U0001D710> <U03C5> % MATHEMATICAL ITALIC SMALL UPSILON
<U0001D711> <U03C6> % MATHEMATICAL ITALIC SMALL PHI
<U0001D712> <U03C7> % MATHEMATICAL ITALIC SMALL CHI
<U0001D713> <U03C8> % MATHEMATICAL ITALIC SMALL PSI
<U0001D714> <U03C9> % MATHEMATICAL ITALIC SMALL OMEGA
<U0001D715> <U2202> % MATHEMATICAL ITALIC PARTIAL DIFFERENTIAL
<U0001D716> <U03F5> % MATHEMATICAL ITALIC EPSILON SYMBOL
<U0001D717> <U03D1> % MATHEMATICAL ITALIC THETA SYMBOL
<U0001D718> <U03F0> % MATHEMATICAL ITALIC KAPPA SYMBOL
<U0001D719> <U03D5> % MATHEMATICAL ITALIC PHI SYMBOL
<U0001D71A> <U03F1> % MATHEMATICAL ITALIC RHO SYMBOL
<U0001D71B> <U03D6> % MATHEMATICAL ITALIC PI SYMBOL
<U0001D71C> <U0391> % MATHEMATICAL BOLD ITALIC CAPITAL ALPHA
<U0001D71D> <U0392> % MATHEMATICAL BOLD ITALIC CAPITAL BETA
<U0001D71E> <U0393> % MATHEMATICAL BOLD ITALIC CAPITAL GAMMA
<U0001D71F> <U0394> % MATHEMATICAL BOLD ITALIC CAPITAL DELTA
<U0001D720> <U0395> % MATHEMATICAL BOLD ITALIC CAPITAL EPSILON
<U0001D721> <U0396> % MATHEMATICAL BOLD ITALIC CAPITAL ZETA
<U0001D722> <U0397> % MATHEMATICAL BOLD ITALIC CAPITAL ETA
<U0001D723> <U0398> % MATHEMATICAL BOLD ITALIC CAPITAL THETA
<U0001D724> <U0399> % MATHEMATICAL BOLD ITALIC CAPITAL IOTA
<U0001D725> <U039A> % MATHEMATICAL BOLD ITALIC CAPITAL KAPPA
<U0001D726> <U039B> % MATHEMATICAL BOLD ITALIC CAPITAL LAMDA
<U0001D727> <U039C> % MATHEMATICAL BOLD ITALIC CAPITAL MU
<U0001D728> <U039D> % MATHEMATICAL BOLD ITALIC CAPITAL NU
<U0001D729> <U039E> % MATHEMATICAL BOLD ITALIC CAPITAL XI
<U0001D72A> <U039F> % MATHEMATICAL BOLD ITALIC CAPITAL OMICRON
<U0001D72B> <U03A0> % MATHEMATICAL BOLD ITALIC CAPITAL PI
<U0001D72C> <U03A1> % MATHEMATICAL BOLD ITALIC CAPITAL RHO
<U0001D72D> <U03F4> % MATHEMATICAL BOLD ITALIC CAPITAL THETA SYMBOL
<U0001D72E> <U03A3> % MATHEMATICAL BOLD ITALIC CAPITAL SIGMA
<U0001D72F> <U03A4> % MATHEMATICAL BOLD ITALIC CAPITAL TAU
<U0001D730> <U03A5> % MATHEMATICAL BOLD ITALIC CAPITAL UPSILON
<U0001D731> <U03A6> % MATHEMATICAL BOLD ITALIC CAPITAL PHI
<U0001D732> <U03A7> % MATHEMATICAL BOLD ITALIC CAPITAL CHI
<U0001D733> <U03A8> % MATHEMATICAL BOLD ITALIC CAPITAL PSI
<U0001D734> <U03A9> % MATHEMATICAL BOLD ITALIC CAPITAL OMEGA
<U0001D735> <U2207> % MATHEMATICAL BOLD ITALIC NABLA
<U0001D736> <U03B1> % MATHEMATICAL BOLD ITALIC SMALL ALPHA
<U0001D737> <U03B2> % MATHEMATICAL BOLD ITALIC SMALL BETA
<U0001D738> <U03B3> % MATHEMATICAL BOLD ITALIC SMALL GAMMA
<U0001D739> <U03B4> % MATHEMATICAL BOLD ITALIC SMALL DELTA
<U0001D73A> <U03B5> % MATHEMATICAL BOLD ITALIC SMALL EPSILON
<U0001D73B> <U03B6> % MATHEMATICAL BOLD ITALIC SMALL ZETA
<U0001D73C> <U03B7> % MATHEMATICAL BOLD ITALIC SMALL ETA
<U0001D73D> <U03B8> % MATHEMATICAL BOLD ITALIC SMALL THETA
<U0001D73E> <U03B9> % MATHEMATICAL BOLD ITALIC SMALL IOTA
<U0001D73F> <U03BA> % MATHEMATICAL BOLD ITALIC SMALL KAPPA
<U0001D740> <U03BB> % MATHEMATICAL BOLD ITALIC SMALL LAMDA
<U0001D741> <U03BC> % MATHEMATICAL BOLD ITALIC SMALL MU
<U0001D742> <U03BD> % MATHEMATICAL BOLD ITALIC SMALL NU
<U0001D743> <U03BE> % MATHEMATICAL BOLD ITALIC SMALL XI
<U0001D744> <U03BF> % MATHEMATICAL BOLD ITALIC SMALL OMICRON
<U0001D745> <U03C0> % MATHEMATICAL BOLD ITALIC SMALL PI
<U0001D746> <U03C1> % MATHEMATICAL BOLD ITALIC SMALL RHO
<U0001D747> <U03C2> % MATHEMATICAL BOLD ITALIC SMALL FINAL SIGMA
<U0001D748> <U03C3> % MATHEMATICAL BOLD ITALIC SMALL SIGMA
<U0001D749> <U03C4> % MATHEMATICAL BOLD ITALIC SMALL TAU
<U0001D74A> <U03C5> % MATHEMATICAL BOLD ITALIC SMALL UPSILON
<U0001D74B> <U03C6> % MATHEMATICAL BOLD ITALIC SMALL PHI
<U0001D74C> <U03C7> % MATHEMATICAL BOLD ITALIC SMALL CHI
<U0001D74D> <U03C8> % MATHEMATICAL BOLD ITALIC SMALL PSI
<U0001D74E> <U03C9> % MATHEMATICAL BOLD ITALIC SMALL OMEGA
<U0001D74F> <U2202> % MATHEMATICAL BOLD ITALIC PARTIAL DIFFERENTIAL
<U0001D750> <U03F5> % MATHEMATICAL BOLD ITALIC EPSILON SYMBOL
<U0001D751> <U03D1> % MATHEMATICAL BOLD ITALIC THETA SYMBOL
<U0001D752> <U03F0> % MATHEMATICAL BOLD ITALIC KAPPA SYMBOL
<U0001D753> <U03D5> % MATHEMATICAL BOLD ITALIC PHI SYMBOL
<U0001D754> <U03F1> % MATHEMATICAL BOLD ITALIC RHO SYMBOL
<U0001D755> <U03D6> % MATHEMATICAL BOLD ITALIC PI SYMBOL
<U0001D756> <U0391> % MATHEMATICAL SANS-SERIF BOLD CAPITAL ALPHA
<U0001D757> <U0392> % MATHEMATICAL SANS-SERIF BOLD CAPITAL BETA
<U0001D758> <U0393> % MATHEMATICAL SANS-SERIF BOLD CAPITAL GAMMA
<U0001D759> <U0394> % MATHEMATICAL SANS-SERIF BOLD CAPITAL DELTA
<U0001D75A> <U0395> % MATHEMATICAL SANS-SERIF BOLD CAPITAL EPSILON
<U0001D75B> <U0396> % MATHEMATICAL SANS-SERIF BOLD CAPITAL ZETA
<U0001D75C> <U0397> % MATHEMATICAL SANS-SERIF BOLD CAPITAL ETA
<U0001D75D> <U0398> % MATHEMATICAL SANS-SERIF BOLD CAPITAL THETA
<U0001D75E> <U0399> % MATHEMATICAL SANS-SERIF BOLD CAPITAL IOTA
<U0001D75F> <U039A> % MATHEMATICAL SANS-SERIF BOLD CAPITAL KAPPA
<U0001D760> <U039B> % MATHEMATICAL SANS-SERIF BOLD CAPITAL LAMDA
<U0001D761> <U039C> % MATHEMATICAL SANS-SERIF BOLD CAPITAL MU
<U0001D762> <U039D> % MATHEMATICAL SANS-SERIF BOLD CAPITAL NU
<U0001D763> <U039E> % MATHEMATICAL SANS-SERIF BOLD CAPITAL XI
<U0001D764> <U039F> % MATHEMATICAL SANS-SERIF BOLD CAPITAL OMICRON
<U0001D765> <U03A0> % MATHEMATICAL SANS-SERIF BOLD CAPITAL PI
<U0001D766> <U03A1> % MATHEMATICAL SANS-SERIF BOLD CAPITAL RHO
<U0001D767> <U03F4> % MATHEMATICAL SANS-SERIF BOLD CAPITAL THETA SYMBOL
<U0001D768> <U03A3> % MATHEMATICAL SANS-SERIF BOLD CAPITAL SIGMA
<U0001D769> <U03A4> % MATHEMATICAL SANS-SERIF BOLD CAPITAL TAU
<U0001D76A> <U03A5> % MATHEMATICAL SANS-SERIF BOLD CAPITAL UPSILON
<U0001D76B> <U03A6> % MATHEMATICAL SANS-SERIF BOLD CAPITAL PHI
<U0001D76C> <U03A7> % MATHEMATICAL SANS-SERIF BOLD CAPITAL CHI
<U0001D76D> <U03A8> % MATHEMATICAL SANS-SERIF BOLD CAPITAL PSI
<U0001D76E> <U03A9> % MATHEMATICAL SANS-SERIF BOLD CAPITAL OMEGA
<U0001D76F> <U2207> % MATHEMATICAL SANS-SERIF BOLD NABLA
<U0001D770> <U03B1> % MATHEMATICAL SANS-SERIF BOLD SMALL ALPHA
<U0001D771> <U03B2> % MATHEMATICAL SANS-SERIF BOLD SMALL BETA
<U0001D772> <U03B3> % MATHEMATICAL SANS-SERIF BOLD SMALL GAMMA
<U0001D773> <U03B4> % MATHEMATICAL SANS-SERIF BOLD SMALL DELTA
<U0001D774> <U03B5> % MATHEMATICAL SANS-SERIF BOLD SMALL EPSILON
<U0001D775> <U03B6> % MATHEMATICAL SANS-SERIF BOLD SMALL ZETA
<U0001D776> <U03B7> % MATHEMATICAL SANS-SERIF BOLD SMALL ETA
<U0001D777> <U03B8> % MATHEMATICAL SANS-SERIF BOLD SMALL THETA
<U0001D778> <U03B9> % MATHEMATICAL SANS-SERIF BOLD SMALL IOTA
<U0001D779> <U03BA> % MATHEMATICAL SANS-SERIF BOLD SMALL KAPPA
<U0001D77A> <U03BB> % MATHEMATICAL SANS-SERIF BOLD SMALL LAMDA
<U0001D77B> <U03BC> % MATHEMATICAL SANS-SERIF BOLD SMALL MU
<U0001D77C> <U03BD> % MATHEMATICAL SANS-SERIF BOLD SMALL NU
<U0001D77D> <U03BE> % MATHEMATICAL SANS-SERIF BOLD SMALL XI
<U0001D77E> <U03BF> % MATHEMATICAL SANS-SERIF BOLD SMALL OMICRON
<U0001D77F> <U03C0> % MATHEMATICAL SANS-SERIF BOLD SMALL PI
<U0001D780> <U03C1> % MATHEMATICAL SANS-SERIF BOLD SMALL RHO
<U0001D781> <U03C2> % MATHEMATICAL SANS-SERIF BOLD SMALL FINAL SIGMA
<U0001D782> <U03C3> % MATHEMATICAL SANS-SERIF BOLD SMALL SIGMA
<U0001D783> <U03C4> % MATHEMATICAL SANS-SERIF BOLD SMALL TAU
<U0001D784> <U03C5> % MATHEMATICAL SANS-SERIF BOLD SMALL UPSILON
<U0001D785> <U03C6> % MATHEMATICAL SANS-SERIF BOLD SMALL PHI
<U0001D786> <U03C7> % MATHEMATICAL SANS-SERIF BOLD SMALL CHI
<U0001D787> <U03C8> % MATHEMATICAL SANS-SERIF BOLD SMALL PSI
<U0001D788> <U03C9> % MATHEMATICAL SANS-SERIF BOLD SMALL OMEGA
<U0001D789> <U2202> % MATHEMATICAL SANS-SERIF BOLD PARTIAL DIFFERENTIAL
<U0001D78A> <U03F5> % MATHEMATICAL SANS-SERIF BOLD EPSILON SYMBOL
<U0001D78B> <U03D1> % MATHEMATICAL SANS-SERIF BOLD THETA SYMBOL
<U0001D78C> <U03F0> % MATHEMATICAL SANS-SERIF BOLD KAPPA SYMBOL
<U0001D78D> <U03D5> % MATHEMATICAL SANS-SERIF BOLD PHI SYMBOL
<U0001D78E> <U03F1> % MATHEMATICAL SANS-SERIF BOLD RHO SYMBOL
<U0001D78F> <U03D6> % MATHEMATICAL SANS-SERIF BOLD PI SYMBOL
<U0001D790> <U0391> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL ALPHA
<U0001D791> <U0392> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL BETA
<U0001D792> <U0393> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL GAMMA
<U0001D793> <U0394> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL DELTA
<U0001D794> <U0395> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL EPSILON
<U0001D795> <U0396> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL ZETA
<U0001D796> <U0397> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL ETA
<U0001D797> <U0398> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL THETA
<U0001D798> <U0399> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL IOTA
<U0001D799> <U039A> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL KAPPA
<U0001D79A> <U039B> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL LAMDA
<U0001D79B> <U039C> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL MU
<U0001D79C> <U039D> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL NU
<U0001D79D> <U039E> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL XI
<U0001D79E> <U039F> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL OMICRON
<U0001D79F> <U03A0> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL PI
<U0001D7A0> <U03A1> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL RHO
<U0001D7A1> <U03F4> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL THETA SYMBOL
<U0001D7A2> <U03A3> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL SIGMA
<U0001D7A3> <U03A4> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL TAU
<U0001D7A4> <U03A5> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL UPSILON
<U0001D7A5> <U03A6> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL PHI
<U0001D7A6> <U03A7> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL CHI
<U0001D7A7> <U03A8> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL PSI
<U0001D7A8> <U03A9> % MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL OMEGA
<U0001D7A9> <U2207> % MATHEMATICAL SANS-SERIF BOLD ITALIC NABLA
<U0001D7AA> <U03B1> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL ALPHA
<U0001D7AB> <U03B2> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL BETA
<U0001D7AC> <U03B3> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL GAMMA
<U0001D7AD> <U03B4> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL DELTA
<U0001D7AE> <U03B5> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL EPSILON
<U0001D7AF> <U03B6> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL ZETA
<U0001D7B0> <U03B7> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL ETA
<U0001D7B1> <U03B8> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL THETA
<U0001D7B2> <U03B9> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL IOTA
<U0001D7B3> <U03BA> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL KAPPA
<U0001D7B4> <U03BB> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL LAMDA
<U0001D7B5> <U03BC> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL MU
<U0001D7B6> <U03BD> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL NU
<U0001D7B7> <U03BE> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL XI
<U0001D7B8> <U03BF> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL OMICRON
<U0001D7B9> <U03C0> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL PI
<U0001D7BA> <U03C1> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL RHO
<U0001D7BB> <U03C2> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL FINAL SIGMA
<U0001D7BC> <U03C3> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL SIGMA
<U0001D7BD> <U03C4> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL TAU
<U0001D7BE> <U03C5> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL UPSILON
<U0001D7BF> <U03C6> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL PHI
<U0001D7C0> <U03C7> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL CHI
<U0001D7C1> <U03C8> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL PSI
<U0001D7C2> <U03C9> % MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL OMEGA
<U0001D7C3> <U2202> % MATHEMATICAL SANS-SERIF BOLD ITALIC PARTIAL DIFFERENTIAL
<U0001D7C4> <U03F5> % MATHEMATICAL SANS-SERIF BOLD ITALIC EPSILON SYMBOL
<U0001D7C5> <U03D1> % MATHEMATICAL SANS-SERIF BOLD ITALIC THETA SYMBOL
<U0001D7C6> <U03F0> % MATHEMATICAL SANS-SERIF BOLD ITALIC KAPPA SYMBOL
<U0001D7C7> <U03D5> % MATHEMATICAL SANS-SERIF BOLD ITALIC PHI SYMBOL
<U0001D7C8> <U03F1> % MATHEMATICAL SANS-SERIF BOLD ITALIC RHO SYMBOL
<U0001D7C9> <U03D6> % MATHEMATICAL SANS-SERIF BOLD ITALIC PI SYMBOL
<U0001D7CE> <U0030> % MATHEMATICAL BOLD DIGIT ZERO
<U0001D7CF> <U0031> % MATHEMATICAL BOLD DIGIT ONE
<U0001D7D0> <U0032> % MATHEMATICAL BOLD DIGIT TWO
<U0001D7D1> <U0033> % MATHEMATICAL BOLD DIGIT THREE
<U0001D7D2> <U0034> % MATHEMATICAL BOLD DIGIT FOUR
<U0001D7D3> <U0035> % MATHEMATICAL BOLD DIGIT FIVE
<U0001D7D4> <U0036> % MATHEMATICAL BOLD DIGIT SIX
<U0001D7D5> <U0037> % MATHEMATICAL BOLD DIGIT SEVEN
<U0001D7D6> <U0038> % MATHEMATICAL BOLD DIGIT EIGHT
<U0001D7D7> <U0039> % MATHEMATICAL BOLD DIGIT NINE
<U0001D7D8> <U0030> % MATHEMATICAL DOUBLE-STRUCK DIGIT ZERO
<U0001D7D9> <U0031> % MATHEMATICAL DOUBLE-STRUCK DIGIT ONE
<U0001D7DA> <U0032> % MATHEMATICAL DOUBLE-STRUCK DIGIT TWO
<U0001D7DB> <U0033> % MATHEMATICAL DOUBLE-STRUCK DIGIT THREE
<U0001D7DC> <U0034> % MATHEMATICAL DOUBLE-STRUCK DIGIT FOUR
<U0001D7DD> <U0035> % MATHEMATICAL DOUBLE-STRUCK DIGIT FIVE
<U0001D7DE> <U0036> % MATHEMATICAL DOUBLE-STRUCK DIGIT SIX
<U0001D7DF> <U0037> % MATHEMATICAL DOUBLE-STRUCK DIGIT SEVEN
<U0001D7E0> <U0038> % MATHEMATICAL DOUBLE-STRUCK DIGIT EIGHT
<U0001D7E1> <U0039> % MATHEMATICAL DOUBLE-STRUCK DIGIT NINE
<U0001D7E2> <U0030> % MATHEMATICAL SANS-SERIF DIGIT ZERO
<U0001D7E3> <U0031> % MATHEMATICAL SANS-SERIF DIGIT ONE
<U0001D7E4> <U0032> % MATHEMATICAL SANS-SERIF DIGIT TWO
<U0001D7E5> <U0033> % MATHEMATICAL SANS-SERIF DIGIT THREE
<U0001D7E6> <U0034> % MATHEMATICAL SANS-SERIF DIGIT FOUR
<U0001D7E7> <U0035> % MATHEMATICAL SANS-SERIF DIGIT FIVE
<U0001D7E8> <U0036> % MATHEMATICAL SANS-SERIF DIGIT SIX
<U0001D7E9> <U0037> % MATHEMATICAL SANS-SERIF DIGIT SEVEN
<U0001D7EA> <U0038> % MATHEMATICAL SANS-SERIF DIGIT EIGHT
<U0001D7EB> <U0039> % MATHEMATICAL SANS-SERIF DIGIT NINE
<U0001D7EC> <U0030> % MATHEMATICAL SANS-SERIF BOLD DIGIT ZERO
<U0001D7ED> <U0031> % MATHEMATICAL SANS-SERIF BOLD DIGIT ONE
<U0001D7EE> <U0032> % MATHEMATICAL SANS-SERIF BOLD DIGIT TWO
<U0001D7EF> <U0033> % MATHEMATICAL SANS-SERIF BOLD DIGIT THREE
<U0001D7F0> <U0034> % MATHEMATICAL SANS-SERIF BOLD DIGIT FOUR
<U0001D7F1> <U0035> % MATHEMATICAL SANS-SERIF BOLD DIGIT FIVE
<U0001D7F2> <U0036> % MATHEMATICAL SANS-SERIF BOLD DIGIT SIX
<U0001D7F3> <U0037> % MATHEMATICAL SANS-SERIF BOLD DIGIT SEVEN
<U0001D7F4> <U0038> % MATHEMATICAL SANS-SERIF BOLD DIGIT EIGHT
<U0001D7F5> <U0039> % MATHEMATICAL SANS-SERIF BOLD DIGIT NINE
<U0001D7F6> <U0030> % MATHEMATICAL MONOSPACE DIGIT ZERO
<U0001D7F7> <U0031> % MATHEMATICAL MONOSPACE DIGIT ONE
<U0001D7F8> <U0032> % MATHEMATICAL MONOSPACE DIGIT TWO
<U0001D7F9> <U0033> % MATHEMATICAL MONOSPACE DIGIT THREE
<U0001D7FA> <U0034> % MATHEMATICAL MONOSPACE DIGIT FOUR
<U0001D7FB> <U0035> % MATHEMATICAL MONOSPACE DIGIT FIVE
<U0001D7FC> <U0036> % MATHEMATICAL MONOSPACE DIGIT SIX
<U0001D7FD> <U0037> % MATHEMATICAL MONOSPACE DIGIT SEVEN
<U0001D7FE> <U0038> % MATHEMATICAL MONOSPACE DIGIT EIGHT
<U0001D7FF> <U0039> % MATHEMATICAL MONOSPACE DIGIT NINE
translit_end

View File

@ -53,11 +53,11 @@ libm-calls = e_acos e_acosh e_asin e_atan2 e_atanh e_cosh e_exp e_fmod \
w_tgamma w_hypot w_j0 w_j1 w_jn w_lgamma w_lgamma_r \
w_log w_log10 w_pow w_remainder w_scalb w_sinh w_sqrt \
s_signbit s_fpclassify s_fmax s_fmin s_fdim s_nan s_trunc \
s_remquo s_log2 e_exp2 s_round s_nearbyint s_sincos \
s_remquo e_log2 e_exp2 s_round s_nearbyint s_sincos \
conj cimag creal cabs carg s_cexp s_csinh s_ccosh s_clog \
s_catan s_casin s_ccos s_csin s_ctan s_ctanh s_cacos \
s_casinh s_cacosh s_catanh s_csqrt s_cpow s_cproj s_clog10 \
s_fma s_lrint s_llrint s_lround s_llround e_exp10
s_fma s_lrint s_llrint s_lround s_llround e_exp10 w_log2
dbl-only-routines := branred doasin dosincos halfulp mpa mpatan2 \
mpatan mpexp mplog mpsqrt mptan sincos32 slowexp \
slowpow

View File

@ -120,6 +120,7 @@
#include <math.h>
#include <float.h>
#include <fenv.h>
#include <limits.h>
#include <errno.h>
#include <stdlib.h>
@ -2800,6 +2801,8 @@ ilogb_test (void)
TEST_f_i (ilogb, 0.0, FP_ILOGB0, EXCEPTIONS_OK);
TEST_f_i (ilogb, nan_value, FP_ILOGBNAN, EXCEPTIONS_OK);
TEST_f_i (ilogb, plus_infty, INT_MAX, EXCEPTIONS_OK);
TEST_f_i (ilogb, minus_infty, INT_MAX, EXCEPTIONS_OK);
END (ilogb);
}
@ -3302,6 +3305,13 @@ llround_test (void)
/* 0x100000000000000 */
TEST_f_L (llround, 72057594037927936.0, 72057594037927936LL);
#ifndef TEST_FLOAT
/* 0x100000000 */
TEST_f_L (llround, 4294967295.5, 4294967296LL);
/* 0x200000000 */
TEST_f_L (llround, 8589934591.5, 8589934592LL);
#endif
END (llround);
}

View File

@ -169,6 +169,7 @@ extern double __ieee754_gamma_r (double,int *);
extern double __ieee754_lgamma (double);
extern double __ieee754_gamma (double);
extern double __ieee754_log10 (double);
extern double __ieee754_log2 (double);
extern double __ieee754_sinh (double);
extern double __ieee754_hypot (double,double);
extern double __ieee754_j0 (double);
@ -211,6 +212,7 @@ extern float __ieee754_gammaf_r (float,int *);
extern float __ieee754_lgammaf (float);
extern float __ieee754_gammaf (float);
extern float __ieee754_log10f (float);
extern float __ieee754_log2f (float);
extern float __ieee754_sinhf (float);
extern float __ieee754_hypotf (float,float);
extern float __ieee754_j0f (float);
@ -250,6 +252,7 @@ extern long double __ieee754_gammal_r (long double,int *);
extern long double __ieee754_lgammal (long double);
extern long double __ieee754_gammal (long double);
extern long double __ieee754_log10l (long double);
extern long double __ieee754_log2l (long double);
extern long double __ieee754_sinhl (long double);
extern long double __ieee754_hypotl (long double,long double);
extern long double __ieee754_j0l (long double);

View File

@ -79,6 +79,28 @@ main (void)
}
puts ("ok");
}
for (i = LDBL_MIN_EXP, x = LDBL_MIN; i >= LDBL_MIN_EXP - LDBL_MANT_DIG + 1;
--i, x /= 2.0L)
{
printf ("2^%d: ", i);
r = frexpl (x, &e);
if (r != 0.5L)
{
printf ("mantissa incorrect: %.20La\n", r);
result = 1;
continue;
}
if (e != i)
{
printf ("exponent wrong %d (%.20Lg)\n", e, x);
result = 1;
continue;
}
puts ("ok");
}
}
# endif

View File

@ -3,13 +3,12 @@
#include <errno.h>
long double
__log2l (long double x)
__ieee754_log2l (long double x)
{
fputs ("__log2l not implemented\n", stderr);
fputs ("__ieee754_log2l not implemented\n", stderr);
__set_errno (ENOSYS);
return 0.0;
}
weak_alias (__log2l, log2l)
stub_warning (log2l)
#include <stub-tag.h>

View File

@ -34,7 +34,7 @@ static char rcsid[] = "$NetBSD: w_cosh.c,v 1.6 1995/05/10 20:48:47 jtc Exp $";
double z;
z = __ieee754_cosh(x);
if(_LIB_VERSION == _IEEE_ || __isnan(x)) return z;
if(fabs(x)>7.10475860073943863426e+02) {
if(!__finite(z) && __finite(x)) {
return __kernel_standard(x,x,5); /* cosh overflow */
} else
return z;

View File

@ -37,7 +37,7 @@ static char rcsid[] = "$NetBSD: w_coshf.c,v 1.3 1995/05/10 20:48:49 jtc Exp $";
float z;
z = __ieee754_coshf(x);
if(_LIB_VERSION == _IEEE_ || __isnanf(x)) return z;
if(fabsf(x)>(float)8.9415985107e+01) {
if(!__finite(z) && __finite(x)) {
/* cosh overflow */
return (float)__kernel_standard((double)x,(double)x,105);
} else

View File

@ -38,7 +38,7 @@ static char rcsid[] = "$NetBSD: $";
long double z;
z = __ieee754_coshl(x);
if(_LIB_VERSION == _IEEE_ || __isnanl(x)) return z;
if(fabsl(x)>7.10475860073943863426e+02) {
if(!__finite(z) && __finite(x)) {
return __kernel_standard(x,x,205); /* cosh overflow */
} else
return z;

View File

@ -20,14 +20,6 @@
#include "math.h"
#include "math_private.h"
#ifdef __STDC__
static const double
#else
static double
#endif
o_threshold= 3.0825471555991674389672e+02,
u_threshold= -3.2360724533877978485251e+02;
#ifdef __STDC__
double __exp10(double x) /* wrapper exp10 */
#else
@ -41,11 +33,9 @@ u_threshold= -3.2360724533877978485251e+02;
double z;
z = __ieee754_exp10(x);
if(_LIB_VERSION == _IEEE_) return z;
if(__finite(x)) {
if(x>o_threshold)
return __kernel_standard(x,x,46); /* exp10 overflow */
else if(x<u_threshold)
return __kernel_standard(x,x,47); /* exp10 underflow */
if(!__finite(z) && __finite(x)) {
/* exp10 overflow (46) if x > 0, underflow (47) if x < 0. */
return __kernel_standard(x,x,46+!!__signbit(x));
}
return z;
#endif

View File

@ -20,14 +20,6 @@
#include "math.h"
#include "math_private.h"
#ifdef __STDC__
static const float
#else
static float
#endif
o_threshold= 3.853183944498959298709e+01,
u_threshold= -4.515449934959717928174e+01;
#ifdef __STDC__
float __exp10f(float x) /* wrapper exp10f */
#else
@ -41,13 +33,10 @@ u_threshold= -4.515449934959717928174e+01;
float z;
z = __ieee754_exp10f(x);
if(_LIB_VERSION == _IEEE_) return z;
if(__finitef(x)) {
if(x>o_threshold)
/* exp overflow */
return (float)__kernel_standard((double)x,(double)x,146);
else if(x<u_threshold)
/* exp underflow */
return (float)__kernel_standard((double)x,(double)x,147);
if(!__finitef(z) && __finitef(x)) {
/* exp10f overflow (146) if x > 0, underflow (147) if x < 0. */
return (float)__kernel_standard((double) x, (double) x,
146+!!__signbitf(x));
}
return z;
#endif

View File

@ -21,14 +21,6 @@
#include "math.h"
#include "math_private.h"
#ifdef __STDC__
static const long double
#else
static long double
#endif
o_threshold= 4.93207544895866790234755e+03,
u_threshold= -4.95104033868549871764588e+03;
#ifdef __STDC__
long double __exp10l(long double x) /* wrapper exp10 */
#else
@ -42,11 +34,9 @@ u_threshold= -4.95104033868549871764588e+03;
long double z;
z = __ieee754_exp10l(x);
if(_LIB_VERSION == _IEEE_) return z;
if(__finitel(x)) {
if(x>o_threshold)
return __kernel_standard(x,x,246); /* exp10 overflow */
else if(x<u_threshold)
return __kernel_standard(x,x,247); /* exp10 underflow */
if(!__finitel(z) && __finitel(x)) {
/* exp10 overflow (246) if x > 0, underflow (247) if x < 0. */
return __kernel_standard(x,x,246+__signbitl(x));
}
return z;
#endif

View File

@ -7,7 +7,7 @@
#include "math_private.h"
static const double o_threshold= (double) DBL_MAX_EXP;
static const double u_threshold= (double) DBL_MIN_EXP;
static const double u_threshold= (double) (DBL_MIN_EXP - DBL_MANT_DIG - 1);
double
__exp2 (double x) /* wrapper exp2 */
@ -22,7 +22,7 @@ __exp2 (double x) /* wrapper exp2 */
if (x > o_threshold)
/* exp2 overflow */
return __kernel_standard (x, x, 44);
else if (x < u_threshold)
else if (x <= u_threshold)
/* exp2 underflow */
return __kernel_standard (x, x, 45);
}

View File

@ -7,7 +7,7 @@
#include "math_private.h"
static const float o_threshold= (float) FLT_MAX_EXP;
static const float u_threshold= (float) FLT_MIN_EXP;
static const float u_threshold= (float) (FLT_MIN_EXP - FLT_MANT_DIG - 1);
float
__exp2f (float x) /* wrapper exp2f */
@ -22,7 +22,7 @@ __exp2f (float x) /* wrapper exp2f */
if (x > o_threshold)
/* exp2 overflow */
return (float) __kernel_standard ((double) x, (double) x, 144);
else if (x < u_threshold)
else if (x <= u_threshold)
/* exp2 underflow */
return (float) __kernel_standard ((double) x, (double) x, 145);
}

View File

@ -7,7 +7,8 @@
#include "math_private.h"
static const long double o_threshold = (long double) LDBL_MAX_EXP;
static const long double u_threshold = (long double) LDBL_MIN_EXP;
static const long double u_threshold
= (long double) (LDBL_MIN_EXP - LDBL_MANT_DIG - 1);
long double
__exp2l (long double x) /* wrapper exp2l */
@ -21,7 +22,7 @@ __exp2l (long double x) /* wrapper exp2l */
{
if (x > o_threshold)
return __kernel_standard (x, x, 244); /* exp2l overflow */
else if (x < u_threshold)
else if (x <= u_threshold)
return __kernel_standard (x, x, 245); /* exp2l underflow */
}
return z;

32
sysdeps/generic/w_log2.c Normal file
View File

@ -0,0 +1,32 @@
/*
* wrapper log2(X)
*/
#include "math.h"
#include "math_private.h"
double
__log2 (double x) /* wrapper log2 */
{
#ifdef _IEEE_LIBM
return __ieee754_log2 (x);
#else
double z;
z = __ieee754_log2 (x);
if (_LIB_VERSION == _IEEE_ || __isnan (x)) return z;
if (x <= 0.0)
{
if (x == 0.0)
return __kernel_standard (x, x, 48); /* log2 (0) */
else
return __kernel_standard (x, x, 49); /* log2 (x < 0) */
}
else
return z;
#endif
}
weak_alias (__log2, log2)
#ifdef NO_LONG_DOUBLE
strong_alias (__log2, __log2l)
weak_alias (__log2, log2l)
#endif

30
sysdeps/generic/w_log2f.c Normal file
View File

@ -0,0 +1,30 @@
/*
* wrapper log2(X)
*/
#include "math.h"
#include "math_private.h"
float
__log2f (float x) /* wrapper log2f */
{
#ifdef _IEEE_LIBM
return __ieee754_log2f (x);
#else
float z;
z = __ieee754_log2f (x);
if (_LIB_VERSION == _IEEE_ || __isnanf (x)) return z;
if (x <= 0.0f)
{
if (x == 0.0f)
/* log2f (0) */
return __kernel_standard ((double) x, (double) x, 148);
else
/* log2f (x < 0) */
return __kernel_standard ((double) x, (double) x, 149);
}
else
return z;
#endif
}
weak_alias (__log2f, log2f)

28
sysdeps/generic/w_log2l.c Normal file
View File

@ -0,0 +1,28 @@
/*
* wrapper log2l(X)
*/
#include "math.h"
#include "math_private.h"
long double
__log2l (long double x) /* wrapper log2l */
{
#ifdef _IEEE_LIBM
return __ieee754_log2l (x);
#else
long double z;
z = __ieee754_log2l (x);
if (_LIB_VERSION == _IEEE_ || __isnanl (x)) return z;
if (x <= 0.0)
{
if (x == 0.0)
return __kernel_standard (x, x, 248); /* log2l (0) */
else
return __kernel_standard (x, x, 249); /* log2l (x < 0) */
}
else
return z;
#endif
}
weak_alias (__log2l, log2l)

View File

@ -32,7 +32,7 @@ limit: .double 0.29
#endif
.text
ENTRY(__log2)
ENTRY(__ieee754_log2)
#ifdef PIC
call 1f
1: popl %edx
@ -64,5 +64,4 @@ ENTRY(__log2)
fstp %st(1)
fstp %st(1)
ret
END (__log2)
weak_alias (__log2, log2)
END (__ieee754_log2)

View File

@ -32,7 +32,7 @@ limit: .double 0.29
#endif
.text
ENTRY(__log2f)
ENTRY(__ieee754_log2f)
#ifdef PIC
call 1f
1: popl %edx
@ -64,5 +64,4 @@ ENTRY(__log2f)
fstp %st(1)
fstp %st(1)
ret
END (__log2f)
weak_alias (__log2f, log2f)
END (__ieee754_log2f)

View File

@ -32,7 +32,7 @@ limit: .double 0.29
#endif
.text
ENTRY(__log2l)
ENTRY(__ieee754_log2l)
#ifdef PIC
call 1f
1: popl %edx
@ -64,5 +64,4 @@ ENTRY(__log2l)
fstp %st(1)
fstp %st(1)
ret
END (__log2l)
weak_alias (__log2l, log2l)
END (__ieee754_log2l)

View File

@ -1,5 +1,5 @@
/* ix87 specific frexp implementation for long double.
Copyright (C) 1997, 2000 Free Software Foundation, Inc.
Copyright (C) 1997, 2000, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
@ -32,12 +32,6 @@
ASM_TYPE_DIRECTIVE(two64,@object)
two64: .byte 0, 0, 0, 0, 0, 0, 0xf0, 0x43
ASM_SIZE_DIRECTIVE(two64)
/* The following is LDBL_MAX / ldexp (1.0, 64), the largest
number we can handle the normal way. */
ASM_TYPE_DIRECTIVE(largest,@object)
largest:
.byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbe, 0x7f, 0, 0
ASM_SIZE_DIRECTIVE(largest)
#ifdef PIC
#define MO(op) op##@GOTOFF(%edx)
@ -67,10 +61,7 @@ ENTRY (BP_SYM (__frexpl))
je 1f
cmpl $0, %eax
je 2f
cmpl $0x7fbe, %eax
ja 4f
jne 2f
fldt VAL0(%esp)
#ifdef PIC
@ -102,15 +93,5 @@ ENTRY (BP_SYM (__frexpl))
LEAVE
ret
4: movl VAL2(%esp), %ecx
movl %ecx, %edx
andl $0x7fff, %ecx
andl $0x8000, %edx
subl $16382, %ecx
orl $0x3ffe, %edx
movl %edx, VAL2(%esp)
jmp 1b
END (BP_SYM (__frexpl))
weak_alias (BP_SYM (__frexpl), BP_SYM (frexpl))

View File

@ -9,6 +9,16 @@ RCSID("$NetBSD: s_ilogb.S,v 1.5 1995/10/12 15:53:09 jtc Exp $")
ENTRY(__ilogb)
fldl 4(%esp)
/* I added the following ugly construct because ilogb(+-Inf) is
required to return INT_MAX in ISO C99.
-- jakub@redhat.com. */
fxam /* Is NaN or +-Inf? */
fstsw %ax
movb $0x45, %dh
andb %ah, %dh
cmpb $0x05, %dh
je 1f /* Is +-Inf, jump. */
fxtract
pushl %eax
fstp %st
@ -18,5 +28,9 @@ ENTRY(__ilogb)
popl %eax
ret
1: fstp %st
movl $0x7fffffff, %eax
ret
END (__ilogb)
weak_alias (__ilogb, ilogb)

View File

@ -9,6 +9,16 @@ RCSID("$NetBSD: s_ilogbf.S,v 1.4 1995/10/22 20:32:43 pk Exp $")
ENTRY(__ilogbf)
flds 4(%esp)
/* I added the following ugly construct because ilogb(+-Inf) is
required to return INT_MAX in ISO C99.
-- jakub@redhat.com. */
fxam /* Is NaN or +-Inf? */
fstsw %ax
movb $0x45, %dh
andb %ah, %dh
cmpb $0x05, %dh
je 1f /* Is +-Inf, jump. */
fxtract
pushl %eax
fstp %st
@ -18,5 +28,9 @@ ENTRY(__ilogbf)
popl %eax
ret
1: fstp %st
movl $0x7fffffff, %eax
ret
END (__ilogbf)
weak_alias (__ilogbf, ilogbf)

View File

@ -10,6 +10,16 @@ RCSID("$NetBSD: $")
ENTRY(__ilogbl)
fldt 4(%esp)
/* I added the following ugly construct because ilogb(+-Inf) is
required to return INT_MAX in ISO C99.
-- jakub@redhat.com. */
fxam /* Is NaN or +-Inf? */
fstsw %ax
movb $0x45, %dh
andb %ah, %dh
cmpb $0x05, %dh
je 1f /* Is +-Inf, jump. */
fxtract
pushl %eax
fstp %st
@ -19,5 +29,9 @@ ENTRY(__ilogbl)
popl %eax
ret
1: fstp %st
movl $0x7fffffff, %eax
ret
END (__ilogbl)
weak_alias (__ilogbl, ilogbl)

View File

@ -1,5 +1,5 @@
/* Double-precision floating point 2^x.
Copyright (C) 1997, 1998, 2000 Free Software Foundation, Inc.
Copyright (C) 1997, 1998, 2000, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Geoffrey Keating <geoffk@ozemail.com.au>
@ -44,10 +44,10 @@ double
__ieee754_exp2 (double x)
{
static const double himark = (double) DBL_MAX_EXP;
static const double lomark = (double) (DBL_MIN_EXP - DBL_MANT_DIG - 1) - 1.0;
static const double lomark = (double) (DBL_MIN_EXP - DBL_MANT_DIG - 1);
/* Check for usual case. */
if (isless (x, himark) && isgreater (x, lomark))
if (isless (x, himark) && isgreaterequal (x, lomark))
{
static const double THREEp42 = 13194139533312.0;
int tval, unsafe;

View File

@ -10,7 +10,7 @@
* ====================================================
*/
/* __log2(x)
/* __ieee754_log2(x)
* Return the logarithm to base 2 of x
*
* Method :
@ -79,9 +79,9 @@ static double zero = 0.0;
#endif
#ifdef __STDC__
double __log2(double x)
double __ieee754_log2(double x)
#else
double __log2(x)
double __ieee754_log2(x)
double x;
#endif
{
@ -128,9 +128,3 @@ static double zero = 0.0;
return dk-((s*(f-R))-f)/ln2;
}
}
weak_alias (__log2, log2)
#ifdef NO_LONG_DOUBLE
strong_alias (__log2, __log2l)
weak_alias (__log2, log2l)
#endif

View File

@ -16,10 +16,12 @@ static char rcsid[] = "$NetBSD: s_ilogb.c,v 1.9 1995/05/10 20:47:28 jtc Exp $";
/* ilogb(double x)
* return the binary exponent of non-zero x
* ilogb(0) = 0x80000001
* ilogb(inf/NaN) = 0x7fffffff (no signal is raised)
* ilogb(0) = FP_ILOGB0
* ilogb(NaN) = FP_ILOGBNAN (no signal is raised)
* ilogb(+-Inf) = INT_MAX (no signal is raised)
*/
#include <limits.h>
#include "math.h"
#include "math_private.h"
@ -47,7 +49,13 @@ static char rcsid[] = "$NetBSD: s_ilogb.c,v 1.9 1995/05/10 20:47:28 jtc Exp $";
return ix;
}
else if (hx<0x7ff00000) return (hx>>20)-1023;
else return FP_ILOGBNAN;
else if (FP_ILOGBNAN != INT_MAX) {
/* ISO C99 requires ilogb(+-Inf) == INT_MAX. */
GET_LOW_WORD(lx,x);
if(((hx^0x7ff00000)|lx) == 0)
return INT_MAX;
}
return FP_ILOGBNAN;
}
weak_alias (__ilogb, ilogb)
#ifdef NO_LONG_DOUBLE

View File

@ -1,5 +1,5 @@
/* Single-precision floating point 2^x.
Copyright (C) 1997, 1998, 2000 Free Software Foundation, Inc.
Copyright (C) 1997, 1998, 2000, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Geoffrey Keating <geoffk@ozemail.com.au>
@ -45,10 +45,10 @@ float
__ieee754_exp2f (float x)
{
static const float himark = (float) FLT_MAX_EXP;
static const float lomark = (float) (FLT_MIN_EXP - FLT_MANT_DIG - 1) - 1.0;
static const float lomark = (float) (FLT_MIN_EXP - FLT_MANT_DIG - 1);
/* Check for usual case. */
if (isless (x, himark) && isgreater (x, lomark))
if (isless (x, himark) && isgreaterequal (x, lomark))
{
static const float THREEp14 = 49152.0;
int tval, unsafe;

View File

@ -40,9 +40,9 @@ static float zero = 0.0;
#endif
#ifdef __STDC__
float __log2f(float x)
float __ieee754_log2f(float x)
#else
float __log2f(x)
float __ieee754_log2f(x)
float x;
#endif
{
@ -88,4 +88,3 @@ static float zero = 0.0;
return dk-((s*(f-R))-f)/ln2;
}
}
weak_alias (__log2f, log2f)

View File

@ -17,6 +17,7 @@
static char rcsid[] = "$NetBSD: s_ilogbf.c,v 1.4 1995/05/10 20:47:31 jtc Exp $";
#endif
#include <limits.h>
#include "math.h"
#include "math_private.h"
@ -39,6 +40,11 @@ static char rcsid[] = "$NetBSD: s_ilogbf.c,v 1.4 1995/05/10 20:47:31 jtc Exp $";
return ix;
}
else if (hx<0x7f800000) return (hx>>23)-127;
else return FP_ILOGBNAN;
else if (FP_ILOGBNAN != INT_MAX) {
/* ISO C99 requires ilogbf(+-Inf) == INT_MAX. */
if (hx==0x7f800000)
return INT_MAX;
}
return FP_ILOGBNAN;
}
weak_alias (__ilogbf, ilogbf)

View File

@ -88,6 +88,8 @@ static double zero = 0.0; /* used as const */
* 45-- exp2 underflow
* 46-- exp10 overflow
* 47-- exp10 underflow
* 48-- log2(0)
* 49-- log2(x<0)
*/
@ -937,7 +939,42 @@ static double zero = 0.0; /* used as const */
__set_errno (ERANGE);
}
break;
/* #### Last used is 47/147/247 ### */
case 48:
case 148:
case 248:
/* log2(0) */
exc.type = SING;
exc.name = type < 100 ? "log2" : (type < 200
? "log2f" : "log2l");
if (_LIB_VERSION == _SVID_)
exc.retval = -HUGE;
else
exc.retval = -HUGE_VAL;
if (_LIB_VERSION == _POSIX_)
__set_errno (ERANGE);
else if (!matherr(&exc)) {
__set_errno (EDOM);
}
break;
case 49:
case 149:
case 249:
/* log2(x<0) */
exc.type = DOMAIN;
exc.name = type < 100 ? "log2" : (type < 200
? "log2f" : "log2l");
if (_LIB_VERSION == _SVID_)
exc.retval = -HUGE;
else
exc.retval = NAN;
if (_LIB_VERSION == _POSIX_)
__set_errno (EDOM);
else if (!matherr(&exc)) {
__set_errno (EDOM);
}
break;
/* #### Last used is 49/149/249 ### */
}
return exc.retval;
}

View File

@ -19,8 +19,9 @@ static char rcsid[] = "$NetBSD: $";
/* ilogbl(long double x)
* return the binary exponent of non-zero x
* ilogbl(0) = 0x80000001
* ilogbl(inf/NaN) = 0x7fffffff (no signal is raised)
* ilogbl(0) = FP_ILOGB0
* ilogbl(NaN) = FP_ILOGBNAN (no signal is raised)
* ilogbl(+-Inf) = INT_MAX (no signal is raised)
*/
#include "math.h"
@ -50,6 +51,11 @@ static char rcsid[] = "$NetBSD: $";
return ix;
}
else if (hx<0x7fff000000000000LL) return (hx>>48)-0x3fff;
else return FP_ILOGBNAN;
else if (FP_ILOGBNAN != INT_MAX) {
/* ISO C99 requires ilogbl(+-Inf) == INT_MAX. */
if (((hx^0x7fff000000000000LL)|lx) == 0)
return INT_MAX;
}
return FP_ILOGBNAN;
}
weak_alias (__ilogbl, ilogbl)

View File

@ -79,16 +79,15 @@ static long double one = 1.0, half=0.5, huge = 1.0e4900L;
if (ex < 0x400c || (ex == 0x400c && mx < 0xb1700000u))
return half*__ieee754_expl(fabsl(x));
/* |x| in [log(maxdouble), overflowthresold] */
if (ex < 0x400d
|| (ex == 0x400d && (mx < 0xb170b513u
|| (mx == 0xb170b513u && lx < 0xa1dfd60cu))))
/* |x| in [log(maxdouble), log(2*maxdouble)) */
if (ex == 0x400c && (mx < 0xb174ddc0u
|| (mx == 0xb174ddc0u && lx < 0x31aec0ebu)))
{
w = __ieee754_expl(half*fabsl(x));
t = half*w;
return t*w;
}
/* |x| > overflowthresold, cosh(x) overflow */
/* |x| >= log(2*maxdouble), cosh(x) overflow */
return huge*huge;
}

View File

@ -20,10 +20,12 @@ static char rcsid[] = "$NetBSD: $";
/* ilogbl(long double x)
* return the binary exponent of non-zero x
* ilogbl(0) = 0x80000001
* ilogbl(inf/NaN) = 0x7fffffff (no signal is raised)
* ilogbl(0) = FP_ILOGB0
* ilogbl(NaN) = FP_ILOGBNAN (no signal is raised)
* ilogbl(+-Inf) = INT_MAX (no signal is raised)
*/
#include <limits.h>
#include "math.h"
#include "math_private.h"
@ -51,6 +53,9 @@ static char rcsid[] = "$NetBSD: $";
return ix;
}
else if (es<0x7fff) return es-0x3fff;
else return FP_ILOGBNAN;
else if (FP_ILOGBNAN != INT_MAX && (hx|lx) == 0)
/* ISO C99 requires ilogbl(+-Inf) == INT_MAX. */
return INT_MAX;
return FP_ILOGBNAN;
}
weak_alias (__ilogbl, ilogbl)

View File

@ -1,5 +1,5 @@
/* Round long double value to long long int.
Copyright (C) 1997 Free Software Foundation, Inc.
Copyright (C) 1997, 2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
@ -59,13 +59,13 @@ __llroundl (long double x)
else
{
u_int32_t j = i1 + (0x80000000 >> (j0 - 31));
if (j < i1)
++i0;
if (j0 == 31)
result = (long long int) i0;
else
result = ((long long int) i0 << (j0 - 31)) | (j >> (63 - j0));
result = (long long int) i0;
if (j < i1)
++result;
if (j0 > 31)
result = (result << (j0 - 31)) | (j >> (63 - j0));
}
}
else

View File

@ -0,0 +1,2 @@
#define FUNC __ieee754_log2
#include <e_acos.c>

View File

@ -0,0 +1,2 @@
#define FUNC __ieee754_log10f
#include <e_acosf.c>

View File

@ -0,0 +1,2 @@
#define FUNC __ieee754_log10l
#include <e_acosl.c>

View File

@ -1,2 +0,0 @@
#define FUNC log2
#include <s_atan.c>

View File

@ -1,2 +0,0 @@
#define FUNC log2f
#include <s_atanf.c>

View File

@ -1,2 +0,0 @@
#define FUNC log2l
#include <s_atanl.c>