summaryrefslogtreecommitdiffstats
path: root/share/mklocale
diff options
context:
space:
mode:
authortjr <tjr@FreeBSD.org>2004-03-27 08:14:15 +0000
committertjr <tjr@FreeBSD.org>2004-03-27 08:14:15 +0000
commit642f4c91afbe006726dd200c3930b0858e481b9d (patch)
tree19ac68324e90f69bde7f7400f432c3e49e8f2e2d /share/mklocale
parentb04fb1227537fc0212af7d7dc9f4ed352bf0efb2 (diff)
downloadFreeBSD-src-642f4c91afbe006726dd200c3930b0858e481b9d.zip
FreeBSD-src-642f4c91afbe006726dd200c3930b0858e481b9d.tar.gz
Add UTF-8 versions of all the currently supported system locales. Most of
the hard work was done by Hye-Shik Chang in the misc/utf8locale port; I made a few minor adjustments and merged the makefiles. PR: 44307
Diffstat (limited to 'share/mklocale')
-rw-r--r--share/mklocale/Makefile12
-rw-r--r--share/mklocale/UTF-8.src2378
2 files changed, 2389 insertions, 1 deletions
diff --git a/share/mklocale/Makefile b/share/mklocale/Makefile
index 446572b..83f3dba 100644
--- a/share/mklocale/Makefile
+++ b/share/mklocale/Makefile
@@ -3,7 +3,8 @@
NOMAN=YES
CLEANFILES+= ${LOCALES:S/$/.out/g}
-LOCALES= am_ET.UTF-8 \
+LOCALES= UTF-8 \
+ am_ET.UTF-8 \
be_BY.CP1131 \
bg_BG.CP1251 \
el_GR.ISO8859-7 \
@@ -43,6 +44,11 @@ LATIN2LINKS= cs_CZ hr_HR hu_HU pl_PL sl_SI sr_YU ro_RO sk_SK
LATIN4LINKS= lt_LT
LATIN5LINKS= sr_YU uk_UA be_BY
CP1251LINKS= ru_RU be_BY
+UTF8LINKS= af_ZA be_BY bg_BG ca_ES cs_CZ da_DK de_AT de_CH de_DE el_GR \
+ en_AU en_CA en_GB en_IE en_NZ en_US es_ES et_EE fi_FI fr_BE \
+ fr_CA fr_CH fr_FR hr_HR hu_HU hy_AM is_IS it_CH it_IT ja_JP \
+ kk_KZ ko_KR lt_LT nl_BE nl_NL no_NO pl_PL pt_BR pt_PT ro_RO \
+ ru_RU sk_SK sl_SI sr_YU sv_SE tr_TR uk_UA zh_CN zh_HK zh_TW
.SUFFIXES: .src .out
@@ -86,5 +92,9 @@ afterinstall:
.endfor
ln -fs ../la_LN.US-ASCII/LC_CTYPE \
${LOCALEDIR}/tr_TR.ISO8859-9/LC_CTYPE
+.for link in ${UTF8LINKS}
+ ln -fs ../UTF-8/LC_CTYPE \
+ ${LOCALEDIR}/${link}.UTF-8/LC_CTYPE
+.endfor
.include <bsd.prog.mk>
diff --git a/share/mklocale/UTF-8.src b/share/mklocale/UTF-8.src
new file mode 100644
index 0000000..edc1617
--- /dev/null
+++ b/share/mklocale/UTF-8.src
@@ -0,0 +1,2378 @@
+/*
+ * Unicode 3.2 ctypes table
+ *
+ * Generated by Hye-Shik Chang <perky@FreeBSD.org>
+ *
+ * $FreeBSD$
+ */
+
+/*
+ * UCD(Unicode Character Database) Terms of Use
+ *
+ * Disclaimer
+ *
+ * The Unicode Character Database is provided as is by Unicode, Inc. No claims
+ * are made as to fitness for any particular purpose. No warranties of any kind
+ * are expressed or implied. The recipient agrees to determine applicability of
+ * information provided. If this file has been purchased on magnetic or optical
+ * media from Unicode, Inc., the sole remedy for any claim will be exchange of
+ * defective media within 90 days of receipt.
+ *
+ * This disclaimer is applicable for all other data files accompanying the
+ * Unicode Character Database, some of which have been compiled by the Unicode
+ * Consortium, and some of which have been supplied by other sources.
+ *
+ * Limitations on Rights to Redistribute This Data
+ *
+ * Recipient is granted the right to make copies in any form for internal
+ * distribution and to freely use the information supplied in the creation of
+ * products supporting the UnicodeTM Standard. The files in the Unicode
+ * Character Database can be redistributed to third parties or other
+ * organizations (whether for profit or not) as long as this notice and the
+ * disclaimer notice are retained. Information can be extracted from these
+ * files and used in documentation or programs, as long as there is an
+ * accompanying notice indicating the source.
+ */
+
+ENCODING "UTF-8"
+VARIABLE Unicode 3.2 Character Types
+
+
+/*
+ * U+0000 - U+007F : Basic Latin
+ */
+
+ALPHA 'A' - 'Z' 'a' - 'z'
+CONTROL 0x0000 - 0x001f 0x007f
+DIGIT '0' - '9'
+GRAPH 0x0021 - 0x007e
+LOWER 'a' - 'z'
+PUNCT 0x0021 - 0x002f 0x003a - 0x0040 0x005b - 0x0060 0x007b - 0x007e
+SPACE 0x0009 - 0x000d 0x0020
+UPPER 'A' - 'Z'
+XDIGIT '0' - '9' 'A' - 'F' 'a' - 'f'
+BLANK 0x0009 0x000b 0x0020
+PRINT 0x0020 - 0x007e
+SWIDTH1 0x0020 - 0x007e
+
+MAPUPPER < 'a' - 'z' : 'A' >
+MAPLOWER < 'A' - 'Z' : 'a' >
+TODIGIT < '0' - '9' : 0x0000 >
+TODIGIT < 'A' - 'F' : 10 > < 'a' - 'f' : 10 >
+
+
+/*
+ * U+0080 - U+00FF : Latin-1 Supplement
+ */
+
+ALPHA 0x00aa 0x00b5 0x00ba 0x00c0 - 0x00d6 0x00d8 - 0x00f6
+ALPHA 0x00f8 - 0x00ff
+CONTROL 0x0080 - 0x009f
+GRAPH 0x00a1 - 0x00ff
+LOWER 0x00aa 0x00b5 0x00ba 0x00df - 0x00f6 0x00f8 - 0x00ff
+PUNCT 0x00a1 - 0x00a9 0x00ab - 0x00b1 0x00b4 0x00b6 - 0x00b8
+PUNCT 0x00bb 0x00bf 0x00d7 0x00f7
+SPACE 0x0085 0x00a0
+UPPER 0x00c0 - 0x00d6 0x00d8 - 0x00de
+BLANK 0x00a0
+PRINT 0x00a0 - 0x00ff
+SPECIAL 0x00b2 0x00b3 0x00b9 0x00bc - 0x00be
+SWIDTH1 0x00a0 - 0x00ff
+
+MAPUPPER < 0x00b5 0x039c >
+MAPUPPER < 0x00e0 - 0x00f6 : 0x00c0 >
+MAPUPPER < 0x00f8 - 0x00fe : 0x00d8 >
+MAPUPPER < 0x00ff 0x0178 >
+MAPLOWER < 0x00c0 - 0x00d6 : 0x00e0 >
+MAPLOWER < 0x00d8 - 0x00de : 0x00f8 >
+
+
+/*
+ * U+0100 - U+017F : Latin Extended-A
+ */
+
+ALPHA 0x0100 - 0x017f
+GRAPH 0x0100 - 0x017f
+LOWER 0x0101 0x0103 0x0105 0x0107 0x0109 0x010b 0x010d
+LOWER 0x010f 0x0111 0x0113 0x0115 0x0117 0x0119 0x011b
+LOWER 0x011d 0x011f 0x0121 0x0123 0x0125 0x0127 0x0129
+LOWER 0x012b 0x012d 0x012f 0x0131 0x0133 0x0135 0x0137 0x0138
+LOWER 0x013a 0x013c 0x013e 0x0140 0x0142 0x0144 0x0146
+LOWER 0x0148 0x0149 0x014b 0x014d 0x014f 0x0151 0x0153
+LOWER 0x0155 0x0157 0x0159 0x015b 0x015d 0x015f 0x0161
+LOWER 0x0163 0x0165 0x0167 0x0169 0x016b 0x016d 0x016f
+LOWER 0x0171 0x0173 0x0175 0x0177 0x017a 0x017c 0x017e 0x017f
+UPPER 0x0100 0x0102 0x0104 0x0106 0x0108 0x010a 0x010c
+UPPER 0x010e 0x0110 0x0112 0x0114 0x0116 0x0118 0x011a
+UPPER 0x011c 0x011e 0x0120 0x0122 0x0124 0x0126 0x0128
+UPPER 0x012a 0x012c 0x012e 0x0130 0x0132 0x0134 0x0136
+UPPER 0x0139 0x013b 0x013d 0x013f 0x0141 0x0143 0x0145
+UPPER 0x0147 0x014a 0x014c 0x014e 0x0150 0x0152 0x0154
+UPPER 0x0156 0x0158 0x015a 0x015c 0x015e 0x0160 0x0162
+UPPER 0x0164 0x0166 0x0168 0x016a 0x016c 0x016e 0x0170
+UPPER 0x0172 0x0174 0x0176 0x0178 0x0179 0x017b 0x017d
+PRINT 0x0100 - 0x017f
+SWIDTH1 0x0100 - 0x017f
+
+MAPUPPER < 0x0101 0x0100 >
+MAPUPPER < 0x0103 0x0102 >
+MAPUPPER < 0x0105 0x0104 >
+MAPUPPER < 0x0107 0x0106 >
+MAPUPPER < 0x0109 0x0108 >
+MAPUPPER < 0x010b 0x010a >
+MAPUPPER < 0x010d 0x010c >
+MAPUPPER < 0x010f 0x010e >
+MAPUPPER < 0x0111 0x0110 >
+MAPUPPER < 0x0113 0x0112 >
+MAPUPPER < 0x0115 0x0114 >
+MAPUPPER < 0x0117 0x0116 >
+MAPUPPER < 0x0119 0x0118 >
+MAPUPPER < 0x011b 0x011a >
+MAPUPPER < 0x011d 0x011c >
+MAPUPPER < 0x011f 0x011e >
+MAPUPPER < 0x0121 0x0120 >
+MAPUPPER < 0x0123 0x0122 >
+MAPUPPER < 0x0125 0x0124 >
+MAPUPPER < 0x0127 0x0126 >
+MAPUPPER < 0x0129 0x0128 >
+MAPUPPER < 0x012b 0x012a >
+MAPUPPER < 0x012d 0x012c >
+MAPUPPER < 0x012f 0x012e >
+MAPUPPER < 0x0131 'I' >
+MAPUPPER < 0x0133 0x0132 >
+MAPUPPER < 0x0135 0x0134 >
+MAPUPPER < 0x0137 0x0136 >
+MAPUPPER < 0x013a 0x0139 >
+MAPUPPER < 0x013c 0x013b >
+MAPUPPER < 0x013e 0x013d >
+MAPUPPER < 0x0140 0x013f >
+MAPUPPER < 0x0142 0x0141 >
+MAPUPPER < 0x0144 0x0143 >
+MAPUPPER < 0x0146 0x0145 >
+MAPUPPER < 0x0148 0x0147 >
+MAPUPPER < 0x014b 0x014a >
+MAPUPPER < 0x014d 0x014c >
+MAPUPPER < 0x014f 0x014e >
+MAPUPPER < 0x0151 0x0150 >
+MAPUPPER < 0x0153 0x0152 >
+MAPUPPER < 0x0155 0x0154 >
+MAPUPPER < 0x0157 0x0156 >
+MAPUPPER < 0x0159 0x0158 >
+MAPUPPER < 0x015b 0x015a >
+MAPUPPER < 0x015d 0x015c >
+MAPUPPER < 0x015f 0x015e >
+MAPUPPER < 0x0161 0x0160 >
+MAPUPPER < 0x0163 0x0162 >
+MAPUPPER < 0x0165 0x0164 >
+MAPUPPER < 0x0167 0x0166 >
+MAPUPPER < 0x0169 0x0168 >
+MAPUPPER < 0x016b 0x016a >
+MAPUPPER < 0x016d 0x016c >
+MAPUPPER < 0x016f 0x016e >
+MAPUPPER < 0x0171 0x0170 >
+MAPUPPER < 0x0173 0x0172 >
+MAPUPPER < 0x0175 0x0174 >
+MAPUPPER < 0x0177 0x0176 >
+MAPUPPER < 0x017a 0x0179 >
+MAPUPPER < 0x017c 0x017b >
+MAPUPPER < 0x017e 0x017d >
+MAPUPPER < 0x017f 'S' >
+MAPLOWER < 0x0100 0x0101 >
+MAPLOWER < 0x0102 0x0103 >
+MAPLOWER < 0x0104 0x0105 >
+MAPLOWER < 0x0106 0x0107 >
+MAPLOWER < 0x0108 0x0109 >
+MAPLOWER < 0x010a 0x010b >
+MAPLOWER < 0x010c 0x010d >
+MAPLOWER < 0x010e 0x010f >
+MAPLOWER < 0x0110 0x0111 >
+MAPLOWER < 0x0112 0x0113 >
+MAPLOWER < 0x0114 0x0115 >
+MAPLOWER < 0x0116 0x0117 >
+MAPLOWER < 0x0118 0x0119 >
+MAPLOWER < 0x011a 0x011b >
+MAPLOWER < 0x011c 0x011d >
+MAPLOWER < 0x011e 0x011f >
+MAPLOWER < 0x0120 0x0121 >
+MAPLOWER < 0x0122 0x0123 >
+MAPLOWER < 0x0124 0x0125 >
+MAPLOWER < 0x0126 0x0127 >
+MAPLOWER < 0x0128 0x0129 >
+MAPLOWER < 0x012a 0x012b >
+MAPLOWER < 0x012c 0x012d >
+MAPLOWER < 0x012e 0x012f >
+MAPLOWER < 0x0130 'i' >
+MAPLOWER < 0x0132 0x0133 >
+MAPLOWER < 0x0134 0x0135 >
+MAPLOWER < 0x0136 0x0137 >
+MAPLOWER < 0x0139 0x013a >
+MAPLOWER < 0x013b 0x013c >
+MAPLOWER < 0x013d 0x013e >
+MAPLOWER < 0x013f 0x0140 >
+MAPLOWER < 0x0141 0x0142 >
+MAPLOWER < 0x0143 0x0144 >
+MAPLOWER < 0x0145 0x0146 >
+MAPLOWER < 0x0147 0x0148 >
+MAPLOWER < 0x014a 0x014b >
+MAPLOWER < 0x014c 0x014d >
+MAPLOWER < 0x014e 0x014f >
+MAPLOWER < 0x0150 0x0151 >
+MAPLOWER < 0x0152 0x0153 >
+MAPLOWER < 0x0154 0x0155 >
+MAPLOWER < 0x0156 0x0157 >
+MAPLOWER < 0x0158 0x0159 >
+MAPLOWER < 0x015a 0x015b >
+MAPLOWER < 0x015c 0x015d >
+MAPLOWER < 0x015e 0x015f >
+MAPLOWER < 0x0160 0x0161 >
+MAPLOWER < 0x0162 0x0163 >
+MAPLOWER < 0x0164 0x0165 >
+MAPLOWER < 0x0166 0x0167 >
+MAPLOWER < 0x0168 0x0169 >
+MAPLOWER < 0x016a 0x016b >
+MAPLOWER < 0x016c 0x016d >
+MAPLOWER < 0x016e 0x016f >
+MAPLOWER < 0x0170 0x0171 >
+MAPLOWER < 0x0172 0x0173 >
+MAPLOWER < 0x0174 0x0175 >
+MAPLOWER < 0x0176 0x0177 >
+MAPLOWER < 0x0178 0x00ff >
+MAPLOWER < 0x0179 0x017a >
+MAPLOWER < 0x017b 0x017c >
+MAPLOWER < 0x017d 0x017e >
+
+
+/*
+ * U+0180 - U+024F : Latin Extended-B
+ */
+
+ALPHA 0x0180 - 0x01ba 0x01bc - 0x01bf 0x01c4 - 0x0220 0x0222 - 0x0233
+GRAPH 0x0180 - 0x0220 0x0222 - 0x0233
+LOWER 0x0180 0x0183 0x0185 0x0188 0x018c 0x018d 0x0192
+LOWER 0x0195 0x0199 - 0x019b 0x019e 0x01a1 0x01a3 0x01a5
+LOWER 0x01a8 0x01aa 0x01ab 0x01ad 0x01b0 0x01b4 0x01b6
+LOWER 0x01b9 0x01ba 0x01bd - 0x01bf 0x01c6 0x01c9 0x01cc
+LOWER 0x01ce 0x01d0 0x01d2 0x01d4 0x01d6 0x01d8 0x01da
+LOWER 0x01dc 0x01dd 0x01df 0x01e1 0x01e3 0x01e5 0x01e7
+LOWER 0x01e9 0x01eb 0x01ed 0x01ef 0x01f0 0x01f3 0x01f5
+LOWER 0x01f9 0x01fb 0x01fd 0x01ff 0x0201 0x0203 0x0205
+LOWER 0x0207 0x0209 0x020b 0x020d 0x020f 0x0211 0x0213
+LOWER 0x0215 0x0217 0x0219 0x021b 0x021d 0x021f 0x0223
+LOWER 0x0225 0x0227 0x0229 0x022b 0x022d 0x022f 0x0231
+LOWER 0x0233
+UPPER 0x0181 0x0182 0x0184 0x0186 0x0187 0x0189 - 0x018b
+UPPER 0x018e - 0x0191 0x0193 0x0194 0x0196 - 0x0198 0x019c 0x019d
+UPPER 0x019f 0x01a0 0x01a2 0x01a4 0x01a6 0x01a7 0x01a9
+UPPER 0x01ac 0x01ae 0x01af 0x01b1 - 0x01b3 0x01b5 0x01b7 0x01b8
+UPPER 0x01bc 0x01c4 0x01c7 0x01ca 0x01cd 0x01cf 0x01d1
+UPPER 0x01d3 0x01d5 0x01d7 0x01d9 0x01db 0x01de 0x01e0
+UPPER 0x01e2 0x01e4 0x01e6 0x01e8 0x01ea 0x01ec 0x01ee
+UPPER 0x01f1 0x01f4 0x01f6 - 0x01f8 0x01fa 0x01fc 0x01fe
+UPPER 0x0200 0x0202 0x0204 0x0206 0x0208 0x020a 0x020c
+UPPER 0x020e 0x0210 0x0212 0x0214 0x0216 0x0218 0x021a
+UPPER 0x021c 0x021e 0x0220 0x0222 0x0224 0x0226 0x0228
+UPPER 0x022a 0x022c 0x022e 0x0230 0x0232
+PRINT 0x0180 - 0x0220 0x0222 - 0x0233
+SWIDTH1 0x0180 - 0x0220 0x0222 - 0x0233
+
+MAPUPPER < 0x0183 0x0182 >
+MAPUPPER < 0x0185 0x0184 >
+MAPUPPER < 0x0188 0x0187 >
+MAPUPPER < 0x018c 0x018b >
+MAPUPPER < 0x0192 0x0191 >
+MAPUPPER < 0x0195 0x01f6 >
+MAPUPPER < 0x0199 0x0198 >
+MAPUPPER < 0x019e 0x0220 >
+MAPUPPER < 0x01a1 0x01a0 >
+MAPUPPER < 0x01a3 0x01a2 >
+MAPUPPER < 0x01a5 0x01a4 >
+MAPUPPER < 0x01a8 0x01a7 >
+MAPUPPER < 0x01ad 0x01ac >
+MAPUPPER < 0x01b0 0x01af >
+MAPUPPER < 0x01b4 0x01b3 >
+MAPUPPER < 0x01b6 0x01b5 >
+MAPUPPER < 0x01b9 0x01b8 >
+MAPUPPER < 0x01bd 0x01bc >
+MAPUPPER < 0x01bf 0x01f7 >
+MAPUPPER < 0x01c5 0x01c4 >
+MAPUPPER < 0x01c6 0x01c4 >
+MAPUPPER < 0x01c8 0x01c7 >
+MAPUPPER < 0x01c9 0x01c7 >
+MAPUPPER < 0x01cb 0x01ca >
+MAPUPPER < 0x01cc 0x01ca >
+MAPUPPER < 0x01ce 0x01cd >
+MAPUPPER < 0x01d0 0x01cf >
+MAPUPPER < 0x01d2 0x01d1 >
+MAPUPPER < 0x01d4 0x01d3 >
+MAPUPPER < 0x01d6 0x01d5 >
+MAPUPPER < 0x01d8 0x01d7 >
+MAPUPPER < 0x01da 0x01d9 >
+MAPUPPER < 0x01dc 0x01db >
+MAPUPPER < 0x01dd 0x018e >
+MAPUPPER < 0x01df 0x01de >
+MAPUPPER < 0x01e1 0x01e0 >
+MAPUPPER < 0x01e3 0x01e2 >
+MAPUPPER < 0x01e5 0x01e4 >
+MAPUPPER < 0x01e7 0x01e6 >
+MAPUPPER < 0x01e9 0x01e8 >
+MAPUPPER < 0x01eb 0x01ea >
+MAPUPPER < 0x01ed 0x01ec >
+MAPUPPER < 0x01ef 0x01ee >
+MAPUPPER < 0x01f2 0x01f1 >
+MAPUPPER < 0x01f3 0x01f1 >
+MAPUPPER < 0x01f5 0x01f4 >
+MAPUPPER < 0x01f9 0x01f8 >
+MAPUPPER < 0x01fb 0x01fa >
+MAPUPPER < 0x01fd 0x01fc >
+MAPUPPER < 0x01ff 0x01fe >
+MAPUPPER < 0x0201 0x0200 >
+MAPUPPER < 0x0203 0x0202 >
+MAPUPPER < 0x0205 0x0204 >
+MAPUPPER < 0x0207 0x0206 >
+MAPUPPER < 0x0209 0x0208 >
+MAPUPPER < 0x020b 0x020a >
+MAPUPPER < 0x020d 0x020c >
+MAPUPPER < 0x020f 0x020e >
+MAPUPPER < 0x0211 0x0210 >
+MAPUPPER < 0x0213 0x0212 >
+MAPUPPER < 0x0215 0x0214 >
+MAPUPPER < 0x0217 0x0216 >
+MAPUPPER < 0x0219 0x0218 >
+MAPUPPER < 0x021b 0x021a >
+MAPUPPER < 0x021d 0x021c >
+MAPUPPER < 0x021f 0x021e >
+MAPUPPER < 0x0223 0x0222 >
+MAPUPPER < 0x0225 0x0224 >
+MAPUPPER < 0x0227 0x0226 >
+MAPUPPER < 0x0229 0x0228 >
+MAPUPPER < 0x022b 0x022a >
+MAPUPPER < 0x022d 0x022c >
+MAPUPPER < 0x022f 0x022e >
+MAPUPPER < 0x0231 0x0230 >
+MAPUPPER < 0x0233 0x0232 >
+MAPLOWER < 0x0181 0x0253 >
+MAPLOWER < 0x0182 0x0183 >
+MAPLOWER < 0x0184 0x0185 >
+MAPLOWER < 0x0186 0x0254 >
+MAPLOWER < 0x0187 0x0188 >
+MAPLOWER < 0x0189 - 0x018a : 0x0256 >
+MAPLOWER < 0x018b 0x018c >
+MAPLOWER < 0x018e 0x01dd >
+MAPLOWER < 0x018f 0x0259 >
+MAPLOWER < 0x0190 0x025b >
+MAPLOWER < 0x0191 0x0192 >
+MAPLOWER < 0x0193 0x0260 >
+MAPLOWER < 0x0194 0x0263 >
+MAPLOWER < 0x0196 0x0269 >
+MAPLOWER < 0x0197 0x0268 >
+MAPLOWER < 0x0198 0x0199 >
+MAPLOWER < 0x019c 0x026f >
+MAPLOWER < 0x019d 0x0272 >
+MAPLOWER < 0x019f 0x0275 >
+MAPLOWER < 0x01a0 0x01a1 >
+MAPLOWER < 0x01a2 0x01a3 >
+MAPLOWER < 0x01a4 0x01a5 >
+MAPLOWER < 0x01a6 0x0280 >
+MAPLOWER < 0x01a7 0x01a8 >
+MAPLOWER < 0x01a9 0x0283 >
+MAPLOWER < 0x01ac 0x01ad >
+MAPLOWER < 0x01ae 0x0288 >
+MAPLOWER < 0x01af 0x01b0 >
+MAPLOWER < 0x01b1 - 0x01b2 : 0x028a >
+MAPLOWER < 0x01b3 0x01b4 >
+MAPLOWER < 0x01b5 0x01b6 >
+MAPLOWER < 0x01b7 0x0292 >
+MAPLOWER < 0x01b8 0x01b9 >
+MAPLOWER < 0x01bc 0x01bd >
+MAPLOWER < 0x01c4 0x01c6 >
+MAPLOWER < 0x01c5 0x01c6 >
+MAPLOWER < 0x01c7 0x01c9 >
+MAPLOWER < 0x01c8 0x01c9 >
+MAPLOWER < 0x01ca 0x01cc >
+MAPLOWER < 0x01cb 0x01cc >
+MAPLOWER < 0x01cd 0x01ce >
+MAPLOWER < 0x01cf 0x01d0 >
+MAPLOWER < 0x01d1 0x01d2 >
+MAPLOWER < 0x01d3 0x01d4 >
+MAPLOWER < 0x01d5 0x01d6 >
+MAPLOWER < 0x01d7 0x01d8 >
+MAPLOWER < 0x01d9 0x01da >
+MAPLOWER < 0x01db 0x01dc >
+MAPLOWER < 0x01de 0x01df >
+MAPLOWER < 0x01e0 0x01e1 >
+MAPLOWER < 0x01e2 0x01e3 >
+MAPLOWER < 0x01e4 0x01e5 >
+MAPLOWER < 0x01e6 0x01e7 >
+MAPLOWER < 0x01e8 0x01e9 >
+MAPLOWER < 0x01ea 0x01eb >
+MAPLOWER < 0x01ec 0x01ed >
+MAPLOWER < 0x01ee 0x01ef >
+MAPLOWER < 0x01f1 0x01f3 >
+MAPLOWER < 0x01f2 0x01f3 >
+MAPLOWER < 0x01f4 0x01f5 >
+MAPLOWER < 0x01f6 0x0195 >
+MAPLOWER < 0x01f7 0x01bf >
+MAPLOWER < 0x01f8 0x01f9 >
+MAPLOWER < 0x01fa 0x01fb >
+MAPLOWER < 0x01fc 0x01fd >
+MAPLOWER < 0x01fe 0x01ff >
+MAPLOWER < 0x0200 0x0201 >
+MAPLOWER < 0x0202 0x0203 >
+MAPLOWER < 0x0204 0x0205 >
+MAPLOWER < 0x0206 0x0207 >
+MAPLOWER < 0x0208 0x0209 >
+MAPLOWER < 0x020a 0x020b >
+MAPLOWER < 0x020c 0x020d >
+MAPLOWER < 0x020e 0x020f >
+MAPLOWER < 0x0210 0x0211 >
+MAPLOWER < 0x0212 0x0213 >
+MAPLOWER < 0x0214 0x0215 >
+MAPLOWER < 0x0216 0x0217 >
+MAPLOWER < 0x0218 0x0219 >
+MAPLOWER < 0x021a 0x021b >
+MAPLOWER < 0x021c 0x021d >
+MAPLOWER < 0x021e 0x021f >
+MAPLOWER < 0x0220 0x019e >
+MAPLOWER < 0x0222 0x0223 >
+MAPLOWER < 0x0224 0x0225 >
+MAPLOWER < 0x0226 0x0227 >
+MAPLOWER < 0x0228 0x0229 >
+MAPLOWER < 0x022a 0x022b >
+MAPLOWER < 0x022c 0x022d >
+MAPLOWER < 0x022e 0x022f >
+MAPLOWER < 0x0230 0x0231 >
+MAPLOWER < 0x0232 0x0233 >
+
+
+/*
+ * U+0250 - U+02AF : IPA Extensions
+ */
+
+ALPHA 0x0250 - 0x02ad
+GRAPH 0x0250 - 0x02ad
+LOWER 0x0250 - 0x02ad
+PRINT 0x0250 - 0x02ad
+SWIDTH1 0x0250 - 0x02ad
+
+MAPUPPER < 0x0253 0x0181 >
+MAPUPPER < 0x0254 0x0186 >
+MAPUPPER < 0x0256 - 0x0257 : 0x0189 >
+MAPUPPER < 0x0259 0x018f >
+MAPUPPER < 0x025b 0x0190 >
+MAPUPPER < 0x0260 0x0193 >
+MAPUPPER < 0x0263 0x0194 >
+MAPUPPER < 0x0268 0x0197 >
+MAPUPPER < 0x0269 0x0196 >
+MAPUPPER < 0x026f 0x019c >
+MAPUPPER < 0x0272 0x019d >
+MAPUPPER < 0x0275 0x019f >
+MAPUPPER < 0x0280 0x01a6 >
+MAPUPPER < 0x0283 0x01a9 >
+MAPUPPER < 0x0288 0x01ae >
+MAPUPPER < 0x028a - 0x028b : 0x01b1 >
+MAPUPPER < 0x0292 0x01b7 >
+
+
+/*
+ * U+02B0 - U+02FF : Spacing Modifier Letters
+ */
+
+GRAPH 0x02b0 - 0x02ee
+PUNCT 0x02b9 0x02ba 0x02c2 - 0x02cf 0x02d2 - 0x02df 0x02e5 - 0x02ed
+PRINT 0x02b0 - 0x02ee
+SWIDTH1 0x02b0 - 0x02ee
+
+
+/*
+ * U+0300 - U+036F : Combining Diacritical Marks
+ */
+
+GRAPH 0x0300 - 0x034f 0x0360 - 0x036f
+PRINT 0x0300 - 0x034f 0x0360 - 0x036f
+SWIDTH1 0x0300 - 0x034f 0x0360 - 0x036f
+
+MAPUPPER < 0x0345 0x0399 >
+
+
+/*
+ * U+0370 - U+03FF : Greek and Coptic
+ */
+
+ALPHA 0x0386 0x0388 - 0x038a 0x038c 0x038e - 0x03a1 0x03a3 - 0x03ce
+ALPHA 0x03d0 - 0x03f5
+GRAPH 0x0374 0x0375 0x037a 0x037e 0x0384 - 0x038a 0x038c
+GRAPH 0x038e - 0x03a1 0x03a3 - 0x03ce 0x03d0 - 0x03f6
+LOWER 0x0390 0x03ac - 0x03ce 0x03d0 0x03d1 0x03d5 - 0x03d7
+LOWER 0x03d9 0x03db 0x03dd 0x03df 0x03e1 0x03e3 0x03e5
+LOWER 0x03e7 0x03e9 0x03eb 0x03ed 0x03ef - 0x03f3 0x03f5
+PUNCT 0x0374 0x0375 0x037e 0x0384 0x0385 0x0387 0x03f6
+UPPER 0x0386 0x0388 - 0x038a 0x038c 0x038e 0x038f 0x0391 - 0x03a1
+UPPER 0x03a3 - 0x03ab 0x03d2 - 0x03d4 0x03d8 0x03da 0x03dc
+UPPER 0x03de 0x03e0 0x03e2 0x03e4 0x03e6 0x03e8 0x03ea
+UPPER 0x03ec 0x03ee 0x03f4
+PRINT 0x0374 0x0375 0x037a 0x037e 0x0384 - 0x038a 0x038c
+PRINT 0x038e - 0x03a1 0x03a3 - 0x03ce 0x03d0 - 0x03f6
+SWIDTH1 0x0374 0x0375 0x037a 0x037e 0x0384 - 0x038a 0x038c
+SWIDTH1 0x038e - 0x03a1 0x03a3 - 0x03ce 0x03d0 - 0x03f6
+
+MAPUPPER < 0x03ac 0x0386 >
+MAPUPPER < 0x03ad - 0x03af : 0x0388 >
+MAPUPPER < 0x03b1 - 0x03c1 : 0x0391 >
+MAPUPPER < 0x03c2 0x03a3 >
+MAPUPPER < 0x03c3 - 0x03cb : 0x03a3 >
+MAPUPPER < 0x03cc 0x038c >
+MAPUPPER < 0x03cd - 0x03ce : 0x038e >
+MAPUPPER < 0x03d0 0x0392 >
+MAPUPPER < 0x03d1 0x0398 >
+MAPUPPER < 0x03d5 0x03a6 >
+MAPUPPER < 0x03d6 0x03a0 >
+MAPUPPER < 0x03d9 0x03d8 >
+MAPUPPER < 0x03db 0x03da >
+MAPUPPER < 0x03dd 0x03dc >
+MAPUPPER < 0x03df 0x03de >
+MAPUPPER < 0x03e1 0x03e0 >
+MAPUPPER < 0x03e3 0x03e2 >
+MAPUPPER < 0x03e5 0x03e4 >
+MAPUPPER < 0x03e7 0x03e6 >
+MAPUPPER < 0x03e9 0x03e8 >
+MAPUPPER < 0x03eb 0x03ea >
+MAPUPPER < 0x03ed 0x03ec >
+MAPUPPER < 0x03ef 0x03ee >
+MAPUPPER < 0x03f0 0x039a >
+MAPUPPER < 0x03f1 0x03a1 >
+MAPUPPER < 0x03f2 0x03a3 >
+MAPUPPER < 0x03f5 0x0395 >
+MAPLOWER < 0x0386 0x03ac >
+MAPLOWER < 0x0388 - 0x038a : 0x03ad >
+MAPLOWER < 0x038c 0x03cc >
+MAPLOWER < 0x038e - 0x038f : 0x03cd >
+MAPLOWER < 0x0391 - 0x03a1 : 0x03b1 >
+MAPLOWER < 0x03a3 - 0x03ab : 0x03c3 >
+MAPLOWER < 0x03d8 0x03d9 >
+MAPLOWER < 0x03da 0x03db >
+MAPLOWER < 0x03dc 0x03dd >
+MAPLOWER < 0x03de 0x03df >
+MAPLOWER < 0x03e0 0x03e1 >
+MAPLOWER < 0x03e2 0x03e3 >
+MAPLOWER < 0x03e4 0x03e5 >
+MAPLOWER < 0x03e6 0x03e7 >
+MAPLOWER < 0x03e8 0x03e9 >
+MAPLOWER < 0x03ea 0x03eb >
+MAPLOWER < 0x03ec 0x03ed >
+MAPLOWER < 0x03ee 0x03ef >
+MAPLOWER < 0x03f4 0x03b8 >
+
+
+/*
+ * U+0400 - U+04FF : Cyrillic
+ */
+
+ALPHA 0x0400 - 0x0481 0x048a - 0x04ce 0x04d0 - 0x04f5 0x04f8 0x04f9
+GRAPH 0x0400 - 0x0486 0x0488 - 0x04ce 0x04d0 - 0x04f5 0x04f8 0x04f9
+LOWER 0x0430 - 0x045f 0x0461 0x0463 0x0465 0x0467 0x0469
+LOWER 0x046b 0x046d 0x046f 0x0471 0x0473 0x0475 0x0477
+LOWER 0x0479 0x047b 0x047d 0x047f 0x0481 0x048b 0x048d
+LOWER 0x048f 0x0491 0x0493 0x0495 0x0497 0x0499 0x049b
+LOWER 0x049d 0x049f 0x04a1 0x04a3 0x04a5 0x04a7 0x04a9
+LOWER 0x04ab 0x04ad 0x04af 0x04b1 0x04b3 0x04b5 0x04b7
+LOWER 0x04b9 0x04bb 0x04bd 0x04bf 0x04c2 0x04c4 0x04c6
+LOWER 0x04c8 0x04ca 0x04cc 0x04ce 0x04d1 0x04d3 0x04d5
+LOWER 0x04d7 0x04d9 0x04db 0x04dd 0x04df 0x04e1 0x04e3
+LOWER 0x04e5 0x04e7 0x04e9 0x04eb 0x04ed 0x04ef 0x04f1
+LOWER 0x04f3 0x04f5 0x04f9
+PUNCT 0x0482
+UPPER 0x0400 - 0x042f 0x0460 0x0462 0x0464 0x0466 0x0468
+UPPER 0x046a 0x046c 0x046e 0x0470 0x0472 0x0474 0x0476
+UPPER 0x0478 0x047a 0x047c 0x047e 0x0480 0x048a 0x048c
+UPPER 0x048e 0x0490 0x0492 0x0494 0x0496 0x0498 0x049a
+UPPER 0x049c 0x049e 0x04a0 0x04a2 0x04a4 0x04a6 0x04a8
+UPPER 0x04aa 0x04ac 0x04ae 0x04b0 0x04b2 0x04b4 0x04b6
+UPPER 0x04b8 0x04ba 0x04bc 0x04be 0x04c0 0x04c1 0x04c3
+UPPER 0x04c5 0x04c7 0x04c9 0x04cb 0x04cd 0x04d0 0x04d2
+UPPER 0x04d4 0x04d6 0x04d8 0x04da 0x04dc 0x04de 0x04e0
+UPPER 0x04e2 0x04e4 0x04e6 0x04e8 0x04ea 0x04ec 0x04ee
+UPPER 0x04f0 0x04f2 0x04f4 0x04f8
+PRINT 0x0400 - 0x0486 0x0488 - 0x04ce 0x04d0 - 0x04f5 0x04f8 0x04f9
+SWIDTH1 0x0400 - 0x0486 0x0488 - 0x04ce 0x04d0 - 0x04f5 0x04f8 0x04f9
+
+MAPUPPER < 0x0430 - 0x044f : 0x0410 >
+MAPUPPER < 0x0450 - 0x045f : 0x0400 >
+MAPUPPER < 0x0461 0x0460 >
+MAPUPPER < 0x0463 0x0462 >
+MAPUPPER < 0x0465 0x0464 >
+MAPUPPER < 0x0467 0x0466 >
+MAPUPPER < 0x0469 0x0468 >
+MAPUPPER < 0x046b 0x046a >
+MAPUPPER < 0x046d 0x046c >
+MAPUPPER < 0x046f 0x046e >
+MAPUPPER < 0x0471 0x0470 >
+MAPUPPER < 0x0473 0x0472 >
+MAPUPPER < 0x0475 0x0474 >
+MAPUPPER < 0x0477 0x0476 >
+MAPUPPER < 0x0479 0x0478 >
+MAPUPPER < 0x047b 0x047a >
+MAPUPPER < 0x047d 0x047c >
+MAPUPPER < 0x047f 0x047e >
+MAPUPPER < 0x0481 0x0480 >
+MAPUPPER < 0x048b 0x048a >
+MAPUPPER < 0x048d 0x048c >
+MAPUPPER < 0x048f 0x048e >
+MAPUPPER < 0x0491 0x0490 >
+MAPUPPER < 0x0493 0x0492 >
+MAPUPPER < 0x0495 0x0494 >
+MAPUPPER < 0x0497 0x0496 >
+MAPUPPER < 0x0499 0x0498 >
+MAPUPPER < 0x049b 0x049a >
+MAPUPPER < 0x049d 0x049c >
+MAPUPPER < 0x049f 0x049e >
+MAPUPPER < 0x04a1 0x04a0 >
+MAPUPPER < 0x04a3 0x04a2 >
+MAPUPPER < 0x04a5 0x04a4 >
+MAPUPPER < 0x04a7 0x04a6 >
+MAPUPPER < 0x04a9 0x04a8 >
+MAPUPPER < 0x04ab 0x04aa >
+MAPUPPER < 0x04ad 0x04ac >
+MAPUPPER < 0x04af 0x04ae >
+MAPUPPER < 0x04b1 0x04b0 >
+MAPUPPER < 0x04b3 0x04b2 >
+MAPUPPER < 0x04b5 0x04b4 >
+MAPUPPER < 0x04b7 0x04b6 >
+MAPUPPER < 0x04b9 0x04b8 >
+MAPUPPER < 0x04bb 0x04ba >
+MAPUPPER < 0x04bd 0x04bc >
+MAPUPPER < 0x04bf 0x04be >
+MAPUPPER < 0x04c2 0x04c1 >
+MAPUPPER < 0x04c4 0x04c3 >
+MAPUPPER < 0x04c6 0x04c5 >
+MAPUPPER < 0x04c8 0x04c7 >
+MAPUPPER < 0x04ca 0x04c9 >
+MAPUPPER < 0x04cc 0x04cb >
+MAPUPPER < 0x04ce 0x04cd >
+MAPUPPER < 0x04d1 0x04d0 >
+MAPUPPER < 0x04d3 0x04d2 >
+MAPUPPER < 0x04d5 0x04d4 >
+MAPUPPER < 0x04d7 0x04d6 >
+MAPUPPER < 0x04d9 0x04d8 >
+MAPUPPER < 0x04db 0x04da >
+MAPUPPER < 0x04dd 0x04dc >
+MAPUPPER < 0x04df 0x04de >
+MAPUPPER < 0x04e1 0x04e0 >
+MAPUPPER < 0x04e3 0x04e2 >
+MAPUPPER < 0x04e5 0x04e4 >
+MAPUPPER < 0x04e7 0x04e6 >
+MAPUPPER < 0x04e9 0x04e8 >
+MAPUPPER < 0x04eb 0x04ea >
+MAPUPPER < 0x04ed 0x04ec >
+MAPUPPER < 0x04ef 0x04ee >
+MAPUPPER < 0x04f1 0x04f0 >
+MAPUPPER < 0x04f3 0x04f2 >
+MAPUPPER < 0x04f5 0x04f4 >
+MAPUPPER < 0x04f9 0x04f8 >
+MAPLOWER < 0x0400 - 0x040f : 0x0450 >
+MAPLOWER < 0x0410 - 0x042f : 0x0430 >
+MAPLOWER < 0x0460 0x0461 >
+MAPLOWER < 0x0462 0x0463 >
+MAPLOWER < 0x0464 0x0465 >
+MAPLOWER < 0x0466 0x0467 >
+MAPLOWER < 0x0468 0x0469 >
+MAPLOWER < 0x046a 0x046b >
+MAPLOWER < 0x046c 0x046d >
+MAPLOWER < 0x046e 0x046f >
+MAPLOWER < 0x0470 0x0471 >
+MAPLOWER < 0x0472 0x0473 >
+MAPLOWER < 0x0474 0x0475 >
+MAPLOWER < 0x0476 0x0477 >
+MAPLOWER < 0x0478 0x0479 >
+MAPLOWER < 0x047a 0x047b >
+MAPLOWER < 0x047c 0x047d >
+MAPLOWER < 0x047e 0x047f >
+MAPLOWER < 0x0480 0x0481 >
+MAPLOWER < 0x048a 0x048b >
+MAPLOWER < 0x048c 0x048d >
+MAPLOWER < 0x048e 0x048f >
+MAPLOWER < 0x0490 0x0491 >
+MAPLOWER < 0x0492 0x0493 >
+MAPLOWER < 0x0494 0x0495 >
+MAPLOWER < 0x0496 0x0497 >
+MAPLOWER < 0x0498 0x0499 >
+MAPLOWER < 0x049a 0x049b >
+MAPLOWER < 0x049c 0x049d >
+MAPLOWER < 0x049e 0x049f >
+MAPLOWER < 0x04a0 0x04a1 >
+MAPLOWER < 0x04a2 0x04a3 >
+MAPLOWER < 0x04a4 0x04a5 >
+MAPLOWER < 0x04a6 0x04a7 >
+MAPLOWER < 0x04a8 0x04a9 >
+MAPLOWER < 0x04aa 0x04ab >
+MAPLOWER < 0x04ac 0x04ad >
+MAPLOWER < 0x04ae 0x04af >
+MAPLOWER < 0x04b0 0x04b1 >
+MAPLOWER < 0x04b2 0x04b3 >
+MAPLOWER < 0x04b4 0x04b5 >
+MAPLOWER < 0x04b6 0x04b7 >
+MAPLOWER < 0x04b8 0x04b9 >
+MAPLOWER < 0x04ba 0x04bb >
+MAPLOWER < 0x04bc 0x04bd >
+MAPLOWER < 0x04be 0x04bf >
+MAPLOWER < 0x04c1 0x04c2 >
+MAPLOWER < 0x04c3 0x04c4 >
+MAPLOWER < 0x04c5 0x04c6 >
+MAPLOWER < 0x04c7 0x04c8 >
+MAPLOWER < 0x04c9 0x04ca >
+MAPLOWER < 0x04cb 0x04cc >
+MAPLOWER < 0x04cd 0x04ce >
+MAPLOWER < 0x04d0 0x04d1 >
+MAPLOWER < 0x04d2 0x04d3 >
+MAPLOWER < 0x04d4 0x04d5 >
+MAPLOWER < 0x04d6 0x04d7 >
+MAPLOWER < 0x04d8 0x04d9 >
+MAPLOWER < 0x04da 0x04db >
+MAPLOWER < 0x04dc 0x04dd >
+MAPLOWER < 0x04de 0x04df >
+MAPLOWER < 0x04e0 0x04e1 >
+MAPLOWER < 0x04e2 0x04e3 >
+MAPLOWER < 0x04e4 0x04e5 >
+MAPLOWER < 0x04e6 0x04e7 >
+MAPLOWER < 0x04e8 0x04e9 >
+MAPLOWER < 0x04ea 0x04eb >
+MAPLOWER < 0x04ec 0x04ed >
+MAPLOWER < 0x04ee 0x04ef >
+MAPLOWER < 0x04f0 0x04f1 >
+MAPLOWER < 0x04f2 0x04f3 >
+MAPLOWER < 0x04f4 0x04f5 >
+MAPLOWER < 0x04f8 0x04f9 >
+
+
+/*
+ * U+0500 - U+052F : Cyrillic Supplementary
+ */
+
+ALPHA 0x0500 - 0x050f
+GRAPH 0x0500 - 0x050f
+LOWER 0x0501 0x0503 0x0505 0x0507 0x0509 0x050b 0x050d
+LOWER 0x050f
+UPPER 0x0500 0x0502 0x0504 0x0506 0x0508 0x050a 0x050c
+UPPER 0x050e
+PRINT 0x0500 - 0x050f
+SWIDTH1 0x0500 - 0x050f
+
+MAPUPPER < 0x0501 0x0500 >
+MAPUPPER < 0x0503 0x0502 >
+MAPUPPER < 0x0505 0x0504 >
+MAPUPPER < 0x0507 0x0506 >
+MAPUPPER < 0x0509 0x0508 >
+MAPUPPER < 0x050b 0x050a >
+MAPUPPER < 0x050d 0x050c >
+MAPUPPER < 0x050f 0x050e >
+MAPLOWER < 0x0500 0x0501 >
+MAPLOWER < 0x0502 0x0503 >
+MAPLOWER < 0x0504 0x0505 >
+MAPLOWER < 0x0506 0x0507 >
+MAPLOWER < 0x0508 0x0509 >
+MAPLOWER < 0x050a 0x050b >
+MAPLOWER < 0x050c 0x050d >
+MAPLOWER < 0x050e 0x050f >
+
+
+/*
+ * U+0530 - U+058F : Armenian
+ */
+
+ALPHA 0x0531 - 0x0556 0x0561 - 0x0587
+GRAPH 0x0531 - 0x0556 0x0559 - 0x055f 0x0561 - 0x0587 0x0589 0x058a
+LOWER 0x0561 - 0x0587
+PUNCT 0x055a - 0x055f 0x0589 0x058a
+UPPER 0x0531 - 0x0556
+PRINT 0x0531 - 0x0556 0x0559 - 0x055f 0x0561 - 0x0587 0x0589 0x058a
+SWIDTH1 0x0531 - 0x0556 0x0559 - 0x055f 0x0561 - 0x0587 0x0589 0x058a
+
+MAPUPPER < 0x0561 - 0x0586 : 0x0531 >
+MAPLOWER < 0x0531 - 0x0556 : 0x0561 >
+
+
+/*
+ * U+0590 - U+05FF : Hebrew
+ */
+
+GRAPH 0x0591 - 0x05a1 0x05a3 - 0x05b9 0x05bb - 0x05c4 0x05d0 - 0x05ea
+GRAPH 0x05f0 - 0x05f4
+PUNCT 0x05be 0x05c0 0x05c3 0x05f3 0x05f4
+PRINT 0x0591 - 0x05a1 0x05a3 - 0x05b9 0x05bb - 0x05c4 0x05d0 - 0x05ea
+PRINT 0x05f0 - 0x05f4
+SWIDTH1 0x0591 - 0x05a1 0x05a3 - 0x05b9 0x05bb - 0x05c4 0x05d0 - 0x05ea
+SWIDTH1 0x05f0 - 0x05f4
+
+
+/*
+ * U+0600 - U+06FF : Arabic
+ */
+
+CONTROL 0x06dd
+GRAPH 0x060c 0x061b 0x061f 0x0621 - 0x063a 0x0640 - 0x0655
+GRAPH 0x0660 - 0x06dc 0x06de - 0x06ed 0x06f0 - 0x06fe
+PUNCT 0x060c 0x061b 0x061f 0x066a - 0x066d 0x06d4 0x06e9
+PUNCT 0x06fd 0x06fe
+PRINT 0x060c 0x061b 0x061f 0x0621 - 0x063a 0x0640 - 0x0655
+PRINT 0x0660 - 0x06dc 0x06de - 0x06ed 0x06f0 - 0x06fe
+SWIDTH1 0x060c 0x061b 0x061f 0x0621 - 0x063a 0x0640 - 0x0655
+SWIDTH1 0x0660 - 0x06dc 0x06de - 0x06ed 0x06f0 - 0x06fe
+
+
+/*
+ * U+0700 - U+074F : Syriac
+ */
+
+CONTROL 0x070f
+GRAPH 0x0700 - 0x070d 0x0710 - 0x072c 0x0730 - 0x074a
+PUNCT 0x0700 - 0x070d
+PRINT 0x0700 - 0x070d 0x0710 - 0x072c 0x0730 - 0x074a
+SWIDTH1 0x0700 - 0x070d 0x0710 - 0x072c 0x0730 - 0x074a
+
+
+/*
+ * U+0780 - U+07BF : Thaana
+ */
+
+GRAPH 0x0780 - 0x07b1
+PRINT 0x0780 - 0x07b1
+SWIDTH1 0x0780 - 0x07b1
+
+
+/*
+ * U+0900 - U+097F : Devanagari
+ */
+
+GRAPH 0x0901 - 0x0903 0x0905 - 0x0939 0x093c - 0x094d 0x0950 - 0x0954
+GRAPH 0x0958 - 0x0970
+PUNCT 0x0964 0x0965 0x0970
+PRINT 0x0901 - 0x0903 0x0905 - 0x0939 0x093c - 0x094d 0x0950 - 0x0954
+PRINT 0x0958 - 0x0970
+SWIDTH1 0x0901 - 0x0903 0x0905 - 0x0939 0x093c - 0x094d 0x0950 - 0x0954
+SWIDTH1 0x0958 - 0x0970
+
+
+/*
+ * U+0980 - U+09FF : Bengali
+ */
+
+GRAPH 0x0981 - 0x0983 0x0985 - 0x098c 0x098f 0x0990 0x0993 - 0x09a8
+GRAPH 0x09aa - 0x09b0 0x09b2 0x09b6 - 0x09b9 0x09bc 0x09be - 0x09c4
+GRAPH 0x09c7 0x09c8 0x09cb - 0x09cd 0x09d7 0x09dc 0x09dd
+GRAPH 0x09df - 0x09e3 0x09e6 - 0x09fa
+PUNCT 0x09f2 0x09f3 0x09fa
+PRINT 0x0981 - 0x0983 0x0985 - 0x098c 0x098f 0x0990 0x0993 - 0x09a8
+PRINT 0x09aa - 0x09b0 0x09b2 0x09b6 - 0x09b9 0x09bc 0x09be - 0x09c4
+PRINT 0x09c7 0x09c8 0x09cb - 0x09cd 0x09d7 0x09dc 0x09dd
+PRINT 0x09df - 0x09e3 0x09e6 - 0x09fa
+SPECIAL 0x09f4 - 0x09f9
+SWIDTH1 0x0981 - 0x0983 0x0985 - 0x098c 0x098f 0x0990 0x0993 - 0x09a8
+SWIDTH1 0x09aa - 0x09b0 0x09b2 0x09b6 - 0x09b9 0x09bc 0x09be - 0x09c4
+SWIDTH1 0x09c7 0x09c8 0x09cb - 0x09cd 0x09d7 0x09dc 0x09dd
+SWIDTH1 0x09df - 0x09e3 0x09e6 - 0x09fa
+
+
+/*
+ * U+0A00 - U+0A7F : Gurmukhi
+ */
+
+GRAPH 0x0a02 0x0a05 - 0x0a0a 0x0a0f 0x0a10 0x0a13 - 0x0a28
+GRAPH 0x0a2a - 0x0a30 0x0a32 0x0a33 0x0a35 0x0a36 0x0a38 0x0a39
+GRAPH 0x0a3c 0x0a3e - 0x0a42 0x0a47 0x0a48 0x0a4b - 0x0a4d
+GRAPH 0x0a59 - 0x0a5c 0x0a5e 0x0a66 - 0x0a74
+PRINT 0x0a02 0x0a05 - 0x0a0a 0x0a0f 0x0a10 0x0a13 - 0x0a28
+PRINT 0x0a2a - 0x0a30 0x0a32 0x0a33 0x0a35 0x0a36 0x0a38 0x0a39
+PRINT 0x0a3c 0x0a3e - 0x0a42 0x0a47 0x0a48 0x0a4b - 0x0a4d
+PRINT 0x0a59 - 0x0a5c 0x0a5e 0x0a66 - 0x0a74
+SWIDTH1 0x0a02 0x0a05 - 0x0a0a 0x0a0f 0x0a10 0x0a13 - 0x0a28
+SWIDTH1 0x0a2a - 0x0a30 0x0a32 0x0a33 0x0a35 0x0a36 0x0a38 0x0a39
+SWIDTH1 0x0a3c 0x0a3e - 0x0a42 0x0a47 0x0a48 0x0a4b - 0x0a4d
+SWIDTH1 0x0a59 - 0x0a5c 0x0a5e 0x0a66 - 0x0a74
+
+
+/*
+ * U+0A80 - U+0AFF : Gujarati
+ */
+
+GRAPH 0x0a81 - 0x0a83 0x0a85 - 0x0a8b 0x0a8d 0x0a8f - 0x0a91
+GRAPH 0x0a93 - 0x0aa8 0x0aaa - 0x0ab0 0x0ab2 0x0ab3 0x0ab5 - 0x0ab9
+GRAPH 0x0abc - 0x0ac5 0x0ac7 - 0x0ac9 0x0acb - 0x0acd 0x0ad0
+GRAPH 0x0ae0 0x0ae6 - 0x0aef
+PRINT 0x0a81 - 0x0a83 0x0a85 - 0x0a8b 0x0a8d 0x0a8f - 0x0a91
+PRINT 0x0a93 - 0x0aa8 0x0aaa - 0x0ab0 0x0ab2 0x0ab3 0x0ab5 - 0x0ab9
+PRINT 0x0abc - 0x0ac5 0x0ac7 - 0x0ac9 0x0acb - 0x0acd 0x0ad0
+PRINT 0x0ae0 0x0ae6 - 0x0aef
+SWIDTH1 0x0a81 - 0x0a83 0x0a85 - 0x0a8b 0x0a8d 0x0a8f - 0x0a91
+SWIDTH1 0x0a93 - 0x0aa8 0x0aaa - 0x0ab0 0x0ab2 0x0ab3 0x0ab5 - 0x0ab9
+SWIDTH1 0x0abc - 0x0ac5 0x0ac7 - 0x0ac9 0x0acb - 0x0acd 0x0ad0
+SWIDTH1 0x0ae0 0x0ae6 - 0x0aef
+
+
+/*
+ * U+0B00 - U+0B7F : Oriya
+ */
+
+GRAPH 0x0b01 - 0x0b03 0x0b05 - 0x0b0c 0x0b0f 0x0b10 0x0b13 - 0x0b28
+GRAPH 0x0b2a - 0x0b30 0x0b32 0x0b33 0x0b36 - 0x0b39 0x0b3c - 0x0b43
+GRAPH 0x0b47 0x0b48 0x0b4b - 0x0b4d 0x0b56 0x0b57 0x0b5c 0x0b5d
+GRAPH 0x0b5f - 0x0b61 0x0b66 - 0x0b70
+PUNCT 0x0b70
+PRINT 0x0b01 - 0x0b03 0x0b05 - 0x0b0c 0x0b0f 0x0b10 0x0b13 - 0x0b28
+PRINT 0x0b2a - 0x0b30 0x0b32 0x0b33 0x0b36 - 0x0b39 0x0b3c - 0x0b43
+PRINT 0x0b47 0x0b48 0x0b4b - 0x0b4d 0x0b56 0x0b57 0x0b5c 0x0b5d
+PRINT 0x0b5f - 0x0b61 0x0b66 - 0x0b70
+SWIDTH1 0x0b01 - 0x0b03 0x0b05 - 0x0b0c 0x0b0f 0x0b10 0x0b13 - 0x0b28
+SWIDTH1 0x0b2a - 0x0b30 0x0b32 0x0b33 0x0b36 - 0x0b39 0x0b3c - 0x0b43
+SWIDTH1 0x0b47 0x0b48 0x0b4b - 0x0b4d 0x0b56 0x0b57 0x0b5c 0x0b5d
+SWIDTH1 0x0b5f - 0x0b61 0x0b66 - 0x0b70
+
+
+/*
+ * U+0B80 - U+0BFF : Tamil
+ */
+
+GRAPH 0x0b82 0x0b83 0x0b85 - 0x0b8a 0x0b8e - 0x0b90 0x0b92 - 0x0b95
+GRAPH 0x0b99 0x0b9a 0x0b9c 0x0b9e 0x0b9f 0x0ba3 0x0ba4
+GRAPH 0x0ba8 - 0x0baa 0x0bae - 0x0bb5 0x0bb7 - 0x0bb9 0x0bbe - 0x0bc2
+GRAPH 0x0bc6 - 0x0bc8 0x0bca - 0x0bcd 0x0bd7 0x0be7 - 0x0bf2
+PRINT 0x0b82 0x0b83 0x0b85 - 0x0b8a 0x0b8e - 0x0b90 0x0b92 - 0x0b95
+PRINT 0x0b99 0x0b9a 0x0b9c 0x0b9e 0x0b9f 0x0ba3 0x0ba4
+PRINT 0x0ba8 - 0x0baa 0x0bae - 0x0bb5 0x0bb7 - 0x0bb9 0x0bbe - 0x0bc2
+PRINT 0x0bc6 - 0x0bc8 0x0bca - 0x0bcd 0x0bd7 0x0be7 - 0x0bf2
+SPECIAL 0x0bf0 - 0x0bf2
+SWIDTH1 0x0b82 0x0b83 0x0b85 - 0x0b8a 0x0b8e - 0x0b90 0x0b92 - 0x0b95
+SWIDTH1 0x0b99 0x0b9a 0x0b9c 0x0b9e 0x0b9f 0x0ba3 0x0ba4
+SWIDTH1 0x0ba8 - 0x0baa 0x0bae - 0x0bb5 0x0bb7 - 0x0bb9 0x0bbe - 0x0bc2
+SWIDTH1 0x0bc6 - 0x0bc8 0x0bca - 0x0bcd 0x0bd7 0x0be7 - 0x0bf2
+
+
+/*
+ * U+0C00 - U+0C7F : Telugu
+ */
+
+GRAPH 0x0c01 - 0x0c03 0x0c05 - 0x0c0c 0x0c0e - 0x0c10 0x0c12 - 0x0c28
+GRAPH 0x0c2a - 0x0c33 0x0c35 - 0x0c39 0x0c3e - 0x0c44 0x0c46 - 0x0c48
+GRAPH 0x0c4a - 0x0c4d 0x0c55 0x0c56 0x0c60 0x0c61 0x0c66 - 0x0c6f
+PRINT 0x0c01 - 0x0c03 0x0c05 - 0x0c0c 0x0c0e - 0x0c10 0x0c12 - 0x0c28
+PRINT 0x0c2a - 0x0c33 0x0c35 - 0x0c39 0x0c3e - 0x0c44 0x0c46 - 0x0c48
+PRINT 0x0c4a - 0x0c4d 0x0c55 0x0c56 0x0c60 0x0c61 0x0c66 - 0x0c6f
+SWIDTH1 0x0c01 - 0x0c03 0x0c05 - 0x0c0c 0x0c0e - 0x0c10 0x0c12 - 0x0c28
+SWIDTH1 0x0c2a - 0x0c33 0x0c35 - 0x0c39 0x0c3e - 0x0c44 0x0c46 - 0x0c48
+SWIDTH1 0x0c4a - 0x0c4d 0x0c55 0x0c56 0x0c60 0x0c61 0x0c66 - 0x0c6f
+
+
+/*
+ * U+0C80 - U+0CFF : Kannada
+ */
+
+GRAPH 0x0c82 0x0c83 0x0c85 - 0x0c8c 0x0c8e - 0x0c90 0x0c92 - 0x0ca8
+GRAPH 0x0caa - 0x0cb3 0x0cb5 - 0x0cb9 0x0cbe - 0x0cc4 0x0cc6 - 0x0cc8
+GRAPH 0x0cca - 0x0ccd 0x0cd5 0x0cd6 0x0cde 0x0ce0 0x0ce1
+GRAPH 0x0ce6 - 0x0cef
+PRINT 0x0c82 0x0c83 0x0c85 - 0x0c8c 0x0c8e - 0x0c90 0x0c92 - 0x0ca8
+PRINT 0x0caa - 0x0cb3 0x0cb5 - 0x0cb9 0x0cbe - 0x0cc4 0x0cc6 - 0x0cc8
+PRINT 0x0cca - 0x0ccd 0x0cd5 0x0cd6 0x0cde 0x0ce0 0x0ce1
+PRINT 0x0ce6 - 0x0cef
+SWIDTH1 0x0c82 0x0c83 0x0c85 - 0x0c8c 0x0c8e - 0x0c90 0x0c92 - 0x0ca8
+SWIDTH1 0x0caa - 0x0cb3 0x0cb5 - 0x0cb9 0x0cbe - 0x0cc4 0x0cc6 - 0x0cc8
+SWIDTH1 0x0cca - 0x0ccd 0x0cd5 0x0cd6 0x0cde 0x0ce0 0x0ce1
+SWIDTH1 0x0ce6 - 0x0cef
+
+
+/*
+ * U+0D00 - U+0D7F : Malayalam
+ */
+
+GRAPH 0x0d02 0x0d03 0x0d05 - 0x0d0c 0x0d0e - 0x0d10 0x0d12 - 0x0d28
+GRAPH 0x0d2a - 0x0d39 0x0d3e - 0x0d43 0x0d46 - 0x0d48 0x0d4a - 0x0d4d
+GRAPH 0x0d57 0x0d60 0x0d61 0x0d66 - 0x0d6f
+PRINT 0x0d02 0x0d03 0x0d05 - 0x0d0c 0x0d0e - 0x0d10 0x0d12 - 0x0d28
+PRINT 0x0d2a - 0x0d39 0x0d3e - 0x0d43 0x0d46 - 0x0d48 0x0d4a - 0x0d4d
+PRINT 0x0d57 0x0d60 0x0d61 0x0d66 - 0x0d6f
+SWIDTH1 0x0d02 0x0d03 0x0d05 - 0x0d0c 0x0d0e - 0x0d10 0x0d12 - 0x0d28
+SWIDTH1 0x0d2a - 0x0d39 0x0d3e - 0x0d43 0x0d46 - 0x0d48 0x0d4a - 0x0d4d
+SWIDTH1 0x0d57 0x0d60 0x0d61 0x0d66 - 0x0d6f
+
+
+/*
+ * U+0D80 - U+0DFF : Sinhala
+ */
+
+GRAPH 0x0d82 0x0d83 0x0d85 - 0x0d96 0x0d9a - 0x0db1 0x0db3 - 0x0dbb
+GRAPH 0x0dbd 0x0dc0 - 0x0dc6 0x0dca 0x0dcf - 0x0dd4 0x0dd6
+GRAPH 0x0dd8 - 0x0ddf 0x0df2 - 0x0df4
+PUNCT 0x0df4
+PRINT 0x0d82 0x0d83 0x0d85 - 0x0d96 0x0d9a - 0x0db1 0x0db3 - 0x0dbb
+PRINT 0x0dbd 0x0dc0 - 0x0dc6 0x0dca 0x0dcf - 0x0dd4 0x0dd6
+PRINT 0x0dd8 - 0x0ddf 0x0df2 - 0x0df4
+SWIDTH1 0x0d82 0x0d83 0x0d85 - 0x0d96 0x0d9a - 0x0db1 0x0db3 - 0x0dbb
+SWIDTH1 0x0dbd 0x0dc0 - 0x0dc6 0x0dca 0x0dcf - 0x0dd4 0x0dd6
+SWIDTH1 0x0dd8 - 0x0ddf 0x0df2 - 0x0df4
+
+
+/*
+ * U+0E00 - U+0E7F : Thai
+ */
+
+GRAPH 0x0e01 - 0x0e3a 0x0e3f - 0x0e5b
+PUNCT 0x0e3f 0x0e4f 0x0e5a 0x0e5b
+PRINT 0x0e01 - 0x0e3a 0x0e3f - 0x0e5b
+SWIDTH1 0x0e01 - 0x0e3a 0x0e3f - 0x0e5b
+
+
+/*
+ * U+0E80 - U+0EFF : Lao
+ */
+
+GRAPH 0x0e81 0x0e82 0x0e84 0x0e87 0x0e88 0x0e8a 0x0e8d
+GRAPH 0x0e94 - 0x0e97 0x0e99 - 0x0e9f 0x0ea1 - 0x0ea3 0x0ea5
+GRAPH 0x0ea7 0x0eaa 0x0eab 0x0ead - 0x0eb9 0x0ebb - 0x0ebd
+GRAPH 0x0ec0 - 0x0ec4 0x0ec6 0x0ec8 - 0x0ecd 0x0ed0 - 0x0ed9
+GRAPH 0x0edc 0x0edd
+PRINT 0x0e81 0x0e82 0x0e84 0x0e87 0x0e88 0x0e8a 0x0e8d
+PRINT 0x0e94 - 0x0e97 0x0e99 - 0x0e9f 0x0ea1 - 0x0ea3 0x0ea5
+PRINT 0x0ea7 0x0eaa 0x0eab 0x0ead - 0x0eb9 0x0ebb - 0x0ebd
+PRINT 0x0ec0 - 0x0ec4 0x0ec6 0x0ec8 - 0x0ecd 0x0ed0 - 0x0ed9
+PRINT 0x0edc 0x0edd
+SWIDTH1 0x0e81 0x0e82 0x0e84 0x0e87 0x0e88 0x0e8a 0x0e8d
+SWIDTH1 0x0e94 - 0x0e97 0x0e99 - 0x0e9f 0x0ea1 - 0x0ea3 0x0ea5
+SWIDTH1 0x0ea7 0x0eaa 0x0eab 0x0ead - 0x0eb9 0x0ebb - 0x0ebd
+SWIDTH1 0x0ec0 - 0x0ec4 0x0ec6 0x0ec8 - 0x0ecd 0x0ed0 - 0x0ed9
+SWIDTH1 0x0edc 0x0edd
+
+
+/*
+ * U+0F00 - U+0FFF : Tibetan
+ */
+
+GRAPH 0x0f00 - 0x0f47 0x0f49 - 0x0f6a 0x0f71 - 0x0f8b 0x0f90 - 0x0f97
+GRAPH 0x0f99 - 0x0fbc 0x0fbe - 0x0fcc 0x0fcf
+PUNCT 0x0f01 - 0x0f17 0x0f1a - 0x0f1f 0x0f34 0x0f36 0x0f38
+PUNCT 0x0f3a - 0x0f3d 0x0f85 0x0fbe - 0x0fc5 0x0fc7 - 0x0fcc
+PUNCT 0x0fcf
+PRINT 0x0f00 - 0x0f47 0x0f49 - 0x0f6a 0x0f71 - 0x0f8b 0x0f90 - 0x0f97
+PRINT 0x0f99 - 0x0fbc 0x0fbe - 0x0fcc 0x0fcf
+SPECIAL 0x0f2a - 0x0f33
+PHONOGRAM 0x0f00
+SWIDTH1 0x0f00 - 0x0f47 0x0f49 - 0x0f6a 0x0f71 - 0x0f8b 0x0f90 - 0x0f97
+SWIDTH1 0x0f99 - 0x0fbc 0x0fbe - 0x0fcc 0x0fcf
+
+
+/*
+ * U+1000 - U+109F : Myanmar
+ */
+
+GRAPH 0x1000 - 0x1021 0x1023 - 0x1027 0x1029 0x102a 0x102c - 0x1032
+GRAPH 0x1036 - 0x1039 0x1040 - 0x1059
+PUNCT 0x104a - 0x104f
+PRINT 0x1000 - 0x1021 0x1023 - 0x1027 0x1029 0x102a 0x102c - 0x1032
+PRINT 0x1036 - 0x1039 0x1040 - 0x1059
+SWIDTH1 0x1000 - 0x1021 0x1023 - 0x1027 0x1029 0x102a 0x102c - 0x1032
+SWIDTH1 0x1036 - 0x1039 0x1040 - 0x1059
+
+
+/*
+ * U+10A0 - U+10FF : Georgian
+ */
+
+ALPHA 0x10a0 - 0x10c5
+GRAPH 0x10a0 - 0x10c5 0x10d0 - 0x10f8 0x10fb
+PUNCT 0x10fb
+UPPER 0x10a0 - 0x10c5
+PRINT 0x10a0 - 0x10c5 0x10d0 - 0x10f8 0x10fb
+SWIDTH1 0x10a0 - 0x10c5 0x10d0 - 0x10f8 0x10fb
+
+
+/*
+ * U+1100 - U+11FF : Hangul Jamo
+ */
+
+GRAPH 0x1100 - 0x1159 0x115f - 0x11a2 0x11a8 - 0x11f9
+PRINT 0x1100 - 0x1159 0x115f - 0x11a2 0x11a8 - 0x11f9
+SWIDTH1 0x1160 - 0x11a2 0x11a8 - 0x11f9
+SWIDTH2 0x1100 - 0x1159 0x115f
+
+
+/*
+ * U+1200 - U+137F : Ethiopic
+ */
+
+GRAPH 0x1200 - 0x1206 0x1208 - 0x1246 0x1248 0x124a - 0x124d
+GRAPH 0x1250 - 0x1256 0x1258 0x125a - 0x125d 0x1260 - 0x1286
+GRAPH 0x1288 0x128a - 0x128d 0x1290 - 0x12ae 0x12b0 0x12b2 - 0x12b5
+GRAPH 0x12b8 - 0x12be 0x12c0 0x12c2 - 0x12c5 0x12c8 - 0x12ce
+GRAPH 0x12d0 - 0x12d6 0x12d8 - 0x12ee 0x12f0 - 0x130e 0x1310
+GRAPH 0x1312 - 0x1315 0x1318 - 0x131e 0x1320 - 0x1346 0x1348 - 0x135a
+GRAPH 0x1361 - 0x137c
+PUNCT 0x1361 - 0x1368
+PRINT 0x1200 - 0x1206 0x1208 - 0x1246 0x1248 0x124a - 0x124d
+PRINT 0x1250 - 0x1256 0x1258 0x125a - 0x125d 0x1260 - 0x1286
+PRINT 0x1288 0x128a - 0x128d 0x1290 - 0x12ae 0x12b0 0x12b2 - 0x12b5
+PRINT 0x12b8 - 0x12be 0x12c0 0x12c2 - 0x12c5 0x12c8 - 0x12ce
+PRINT 0x12d0 - 0x12d6 0x12d8 - 0x12ee 0x12f0 - 0x130e 0x1310
+PRINT 0x1312 - 0x1315 0x1318 - 0x131e 0x1320 - 0x1346 0x1348 - 0x135a
+PRINT 0x1361 - 0x137c
+SPECIAL 0x1372 - 0x137c
+PHONOGRAM 0x1200 - 0x1206 0x1208 - 0x1246 0x1248 0x124a - 0x124d
+PHONOGRAM 0x1250 - 0x1256 0x1258 0x125a - 0x125d 0x1260 - 0x1286
+PHONOGRAM 0x1288 0x128a - 0x128d 0x1290 - 0x12ae 0x12b0 0x12b2 - 0x12b5
+PHONOGRAM 0x12b8 - 0x12be 0x12c0 0x12c2 - 0x12c5 0x12c8 - 0x12ce
+PHONOGRAM 0x12d0 - 0x12d6 0x12d8 - 0x12ee 0x12f0 - 0x130e 0x1310
+PHONOGRAM 0x1312 - 0x1315 0x1318 - 0x131e 0x1320 - 0x1346 0x1348 - 0x135a
+SWIDTH1 0x1200 - 0x1206 0x1208 - 0x1246 0x1248 0x124a - 0x124d
+SWIDTH1 0x1250 - 0x1256 0x1258 0x125a - 0x125d 0x1260 - 0x1286
+SWIDTH1 0x1288 0x128a - 0x128d 0x1290 - 0x12ae 0x12b0 0x12b2 - 0x12b5
+SWIDTH1 0x12b8 - 0x12be 0x12c0 0x12c2 - 0x12c5 0x12c8 - 0x12ce
+SWIDTH1 0x12d0 - 0x12d6 0x12d8 - 0x12ee 0x12f0 - 0x130e 0x1310
+SWIDTH1 0x1312 - 0x1315 0x1318 - 0x131e 0x1320 - 0x1346 0x1348 - 0x135a
+SWIDTH1 0x1361 - 0x137c
+
+
+/*
+ * U+13A0 - U+13FF : Cherokee
+ */
+
+GRAPH 0x13a0 - 0x13f4
+PRINT 0x13a0 - 0x13f4
+SWIDTH1 0x13a0 - 0x13f4
+
+
+/*
+ * U+1400 - U+167F : Unified Canadian Aboriginal Syllabics
+ */
+
+GRAPH 0x1401 - 0x1676
+PUNCT 0x166d 0x166e
+PRINT 0x1401 - 0x1676
+PHONOGRAM 0x1401 - 0x166c 0x166f - 0x1676
+SWIDTH1 0x1401 - 0x1676
+
+
+/*
+ * U+1680 - U+169F : Ogham
+ */
+
+GRAPH 0x1681 - 0x169c
+PUNCT 0x169b 0x169c
+SPACE 0x1680
+BLANK 0x1680
+PRINT 0x1680 - 0x169c
+SWIDTH1 0x1680 - 0x169c
+
+
+/*
+ * U+16A0 - U+16FF : Runic
+ */
+
+GRAPH 0x16a0 - 0x16f0
+PUNCT 0x16eb - 0x16ed
+PRINT 0x16a0 - 0x16f0
+SPECIAL 0x16ee - 0x16f0
+SWIDTH1 0x16a0 - 0x16f0
+
+
+/*
+ * U+1700 - U+171F : Tagalog
+ */
+
+GRAPH 0x1700 - 0x170c 0x170e - 0x1714
+PRINT 0x1700 - 0x170c 0x170e - 0x1714
+SWIDTH1 0x1700 - 0x170c 0x170e - 0x1714
+
+
+/*
+ * U+1720 - U+173F : Hanunoo
+ */
+
+GRAPH 0x1720 - 0x1736
+PUNCT 0x1735 0x1736
+PRINT 0x1720 - 0x1736
+SWIDTH1 0x1720 - 0x1736
+
+
+/*
+ * U+1740 - U+175F : Buhid
+ */
+
+GRAPH 0x1740 - 0x1753
+PRINT 0x1740 - 0x1753
+SWIDTH1 0x1740 - 0x1753
+
+
+/*
+ * U+1760 - U+177F : Tagbanwa
+ */
+
+GRAPH 0x1760 - 0x176c 0x176e - 0x1770 0x1772 0x1773
+PRINT 0x1760 - 0x176c 0x176e - 0x1770 0x1772 0x1773
+SWIDTH1 0x1760 - 0x176c 0x176e - 0x1770 0x1772 0x1773
+
+
+/*
+ * U+1780 - U+17FF : Khmer
+ */
+
+GRAPH 0x1780 - 0x17dc 0x17e0 - 0x17e9
+PUNCT 0x17d4 - 0x17d6 0x17d8 - 0x17db
+PRINT 0x1780 - 0x17dc 0x17e0 - 0x17e9
+SWIDTH1 0x1780 - 0x17dc 0x17e0 - 0x17e9
+
+
+/*
+ * U+1800 - U+18AF : Mongolian
+ */
+
+CONTROL 0x180e
+GRAPH 0x1800 - 0x180d 0x1810 - 0x1819 0x1820 - 0x1877 0x1880 - 0x18a9
+PUNCT 0x1800 - 0x180a
+PRINT 0x1800 - 0x180d 0x1810 - 0x1819 0x1820 - 0x1877 0x1880 - 0x18a9
+SWIDTH1 0x1800 - 0x180d 0x1810 - 0x1819 0x1820 - 0x1877 0x1880 - 0x18a9
+
+
+/*
+ * U+1E00 - U+1EFF : Latin Extended Additional
+ */
+
+ALPHA 0x1e00 - 0x1e9b 0x1ea0 - 0x1ef9
+GRAPH 0x1e00 - 0x1e9b 0x1ea0 - 0x1ef9
+LOWER 0x1e01 0x1e03 0x1e05 0x1e07 0x1e09 0x1e0b 0x1e0d
+LOWER 0x1e0f 0x1e11 0x1e13 0x1e15 0x1e17 0x1e19 0x1e1b
+LOWER 0x1e1d 0x1e1f 0x1e21 0x1e23 0x1e25 0x1e27 0x1e29
+LOWER 0x1e2b 0x1e2d 0x1e2f 0x1e31 0x1e33 0x1e35 0x1e37
+LOWER 0x1e39 0x1e3b 0x1e3d 0x1e3f 0x1e41 0x1e43 0x1e45
+LOWER 0x1e47 0x1e49 0x1e4b 0x1e4d 0x1e4f 0x1e51 0x1e53
+LOWER 0x1e55 0x1e57 0x1e59 0x1e5b 0x1e5d 0x1e5f 0x1e61
+LOWER 0x1e63 0x1e65 0x1e67 0x1e69 0x1e6b 0x1e6d 0x1e6f
+LOWER 0x1e71 0x1e73 0x1e75 0x1e77 0x1e79 0x1e7b 0x1e7d
+LOWER 0x1e7f 0x1e81 0x1e83 0x1e85 0x1e87 0x1e89 0x1e8b
+LOWER 0x1e8d 0x1e8f 0x1e91 0x1e93 0x1e95 - 0x1e9b 0x1ea1
+LOWER 0x1ea3 0x1ea5 0x1ea7 0x1ea9 0x1eab 0x1ead 0x1eaf
+LOWER 0x1eb1 0x1eb3 0x1eb5 0x1eb7 0x1eb9 0x1ebb 0x1ebd
+LOWER 0x1ebf 0x1ec1 0x1ec3 0x1ec5 0x1ec7 0x1ec9 0x1ecb
+LOWER 0x1ecd 0x1ecf 0x1ed1 0x1ed3 0x1ed5 0x1ed7 0x1ed9
+LOWER 0x1edb 0x1edd 0x1edf 0x1ee1 0x1ee3 0x1ee5 0x1ee7
+LOWER 0x1ee9 0x1eeb 0x1eed 0x1eef 0x1ef1 0x1ef3 0x1ef5
+LOWER 0x1ef7 0x1ef9
+UPPER 0x1e00 0x1e02 0x1e04 0x1e06 0x1e08 0x1e0a 0x1e0c
+UPPER 0x1e0e 0x1e10 0x1e12 0x1e14 0x1e16 0x1e18 0x1e1a
+UPPER 0x1e1c 0x1e1e 0x1e20 0x1e22 0x1e24 0x1e26 0x1e28
+UPPER 0x1e2a 0x1e2c 0x1e2e 0x1e30 0x1e32 0x1e34 0x1e36
+UPPER 0x1e38 0x1e3a 0x1e3c 0x1e3e 0x1e40 0x1e42 0x1e44
+UPPER 0x1e46 0x1e48 0x1e4a 0x1e4c 0x1e4e 0x1e50 0x1e52
+UPPER 0x1e54 0x1e56 0x1e58 0x1e5a 0x1e5c 0x1e5e 0x1e60
+UPPER 0x1e62 0x1e64 0x1e66 0x1e68 0x1e6a 0x1e6c 0x1e6e
+UPPER 0x1e70 0x1e72 0x1e74 0x1e76 0x1e78 0x1e7a 0x1e7c
+UPPER 0x1e7e 0x1e80 0x1e82 0x1e84 0x1e86 0x1e88 0x1e8a
+UPPER 0x1e8c 0x1e8e 0x1e90 0x1e92 0x1e94 0x1ea0 0x1ea2
+UPPER 0x1ea4 0x1ea6 0x1ea8 0x1eaa 0x1eac 0x1eae 0x1eb0
+UPPER 0x1eb2 0x1eb4 0x1eb6 0x1eb8 0x1eba 0x1ebc 0x1ebe
+UPPER 0x1ec0 0x1ec2 0x1ec4 0x1ec6 0x1ec8 0x1eca 0x1ecc
+UPPER 0x1ece 0x1ed0 0x1ed2 0x1ed4 0x1ed6 0x1ed8 0x1eda
+UPPER 0x1edc 0x1ede 0x1ee0 0x1ee2 0x1ee4 0x1ee6 0x1ee8
+UPPER 0x1eea 0x1eec 0x1eee 0x1ef0 0x1ef2 0x1ef4 0x1ef6
+UPPER 0x1ef8
+PRINT 0x1e00 - 0x1e9b 0x1ea0 - 0x1ef9
+SWIDTH1 0x1e00 - 0x1e9b 0x1ea0 - 0x1ef9
+
+MAPUPPER < 0x1e01 0x1e00 >
+MAPUPPER < 0x1e03 0x1e02 >
+MAPUPPER < 0x1e05 0x1e04 >
+MAPUPPER < 0x1e07 0x1e06 >
+MAPUPPER < 0x1e09 0x1e08 >
+MAPUPPER < 0x1e0b 0x1e0a >
+MAPUPPER < 0x1e0d 0x1e0c >
+MAPUPPER < 0x1e0f 0x1e0e >
+MAPUPPER < 0x1e11 0x1e10 >
+MAPUPPER < 0x1e13 0x1e12 >
+MAPUPPER < 0x1e15 0x1e14 >
+MAPUPPER < 0x1e17 0x1e16 >
+MAPUPPER < 0x1e19 0x1e18 >
+MAPUPPER < 0x1e1b 0x1e1a >
+MAPUPPER < 0x1e1d 0x1e1c >
+MAPUPPER < 0x1e1f 0x1e1e >
+MAPUPPER < 0x1e21 0x1e20 >
+MAPUPPER < 0x1e23 0x1e22 >
+MAPUPPER < 0x1e25 0x1e24 >
+MAPUPPER < 0x1e27 0x1e26 >
+MAPUPPER < 0x1e29 0x1e28 >
+MAPUPPER < 0x1e2b 0x1e2a >
+MAPUPPER < 0x1e2d 0x1e2c >
+MAPUPPER < 0x1e2f 0x1e2e >
+MAPUPPER < 0x1e31 0x1e30 >
+MAPUPPER < 0x1e33 0x1e32 >
+MAPUPPER < 0x1e35 0x1e34 >
+MAPUPPER < 0x1e37 0x1e36 >
+MAPUPPER < 0x1e39 0x1e38 >
+MAPUPPER < 0x1e3b 0x1e3a >
+MAPUPPER < 0x1e3d 0x1e3c >
+MAPUPPER < 0x1e3f 0x1e3e >
+MAPUPPER < 0x1e41 0x1e40 >
+MAPUPPER < 0x1e43 0x1e42 >
+MAPUPPER < 0x1e45 0x1e44 >
+MAPUPPER < 0x1e47 0x1e46 >
+MAPUPPER < 0x1e49 0x1e48 >
+MAPUPPER < 0x1e4b 0x1e4a >
+MAPUPPER < 0x1e4d 0x1e4c >
+MAPUPPER < 0x1e4f 0x1e4e >
+MAPUPPER < 0x1e51 0x1e50 >
+MAPUPPER < 0x1e53 0x1e52 >
+MAPUPPER < 0x1e55 0x1e54 >
+MAPUPPER < 0x1e57 0x1e56 >
+MAPUPPER < 0x1e59 0x1e58 >
+MAPUPPER < 0x1e5b 0x1e5a >
+MAPUPPER < 0x1e5d 0x1e5c >
+MAPUPPER < 0x1e5f 0x1e5e >
+MAPUPPER < 0x1e61 0x1e60 >
+MAPUPPER < 0x1e63 0x1e62 >
+MAPUPPER < 0x1e65 0x1e64 >
+MAPUPPER < 0x1e67 0x1e66 >
+MAPUPPER < 0x1e69 0x1e68 >
+MAPUPPER < 0x1e6b 0x1e6a >
+MAPUPPER < 0x1e6d 0x1e6c >
+MAPUPPER < 0x1e6f 0x1e6e >
+MAPUPPER < 0x1e71 0x1e70 >
+MAPUPPER < 0x1e73 0x1e72 >
+MAPUPPER < 0x1e75 0x1e74 >
+MAPUPPER < 0x1e77 0x1e76 >
+MAPUPPER < 0x1e79 0x1e78 >
+MAPUPPER < 0x1e7b 0x1e7a >
+MAPUPPER < 0x1e7d 0x1e7c >
+MAPUPPER < 0x1e7f 0x1e7e >
+MAPUPPER < 0x1e81 0x1e80 >
+MAPUPPER < 0x1e83 0x1e82 >
+MAPUPPER < 0x1e85 0x1e84 >
+MAPUPPER < 0x1e87 0x1e86 >
+MAPUPPER < 0x1e89 0x1e88 >
+MAPUPPER < 0x1e8b 0x1e8a >
+MAPUPPER < 0x1e8d 0x1e8c >
+MAPUPPER < 0x1e8f 0x1e8e >
+MAPUPPER < 0x1e91 0x1e90 >
+MAPUPPER < 0x1e93 0x1e92 >
+MAPUPPER < 0x1e95 0x1e94 >
+MAPUPPER < 0x1e9b 0x1e60 >
+MAPUPPER < 0x1ea1 0x1ea0 >
+MAPUPPER < 0x1ea3 0x1ea2 >
+MAPUPPER < 0x1ea5 0x1ea4 >
+MAPUPPER < 0x1ea7 0x1ea6 >
+MAPUPPER < 0x1ea9 0x1ea8 >
+MAPUPPER < 0x1eab 0x1eaa >
+MAPUPPER < 0x1ead 0x1eac >
+MAPUPPER < 0x1eaf 0x1eae >
+MAPUPPER < 0x1eb1 0x1eb0 >
+MAPUPPER < 0x1eb3 0x1eb2 >
+MAPUPPER < 0x1eb5 0x1eb4 >
+MAPUPPER < 0x1eb7 0x1eb6 >
+MAPUPPER < 0x1eb9 0x1eb8 >
+MAPUPPER < 0x1ebb 0x1eba >
+MAPUPPER < 0x1ebd 0x1ebc >
+MAPUPPER < 0x1ebf 0x1ebe >
+MAPUPPER < 0x1ec1 0x1ec0 >
+MAPUPPER < 0x1ec3 0x1ec2 >
+MAPUPPER < 0x1ec5 0x1ec4 >
+MAPUPPER < 0x1ec7 0x1ec6 >
+MAPUPPER < 0x1ec9 0x1ec8 >
+MAPUPPER < 0x1ecb 0x1eca >
+MAPUPPER < 0x1ecd 0x1ecc >
+MAPUPPER < 0x1ecf 0x1ece >
+MAPUPPER < 0x1ed1 0x1ed0 >
+MAPUPPER < 0x1ed3 0x1ed2 >
+MAPUPPER < 0x1ed5 0x1ed4 >
+MAPUPPER < 0x1ed7 0x1ed6 >
+MAPUPPER < 0x1ed9 0x1ed8 >
+MAPUPPER < 0x1edb 0x1eda >
+MAPUPPER < 0x1edd 0x1edc >
+MAPUPPER < 0x1edf 0x1ede >
+MAPUPPER < 0x1ee1 0x1ee0 >
+MAPUPPER < 0x1ee3 0x1ee2 >
+MAPUPPER < 0x1ee5 0x1ee4 >
+MAPUPPER < 0x1ee7 0x1ee6 >
+MAPUPPER < 0x1ee9 0x1ee8 >
+MAPUPPER < 0x1eeb 0x1eea >
+MAPUPPER < 0x1eed 0x1eec >
+MAPUPPER < 0x1eef 0x1eee >
+MAPUPPER < 0x1ef1 0x1ef0 >
+MAPUPPER < 0x1ef3 0x1ef2 >
+MAPUPPER < 0x1ef5 0x1ef4 >
+MAPUPPER < 0x1ef7 0x1ef6 >
+MAPUPPER < 0x1ef9 0x1ef8 >
+MAPLOWER < 0x1e00 0x1e01 >
+MAPLOWER < 0x1e02 0x1e03 >
+MAPLOWER < 0x1e04 0x1e05 >
+MAPLOWER < 0x1e06 0x1e07 >
+MAPLOWER < 0x1e08 0x1e09 >
+MAPLOWER < 0x1e0a 0x1e0b >
+MAPLOWER < 0x1e0c 0x1e0d >
+MAPLOWER < 0x1e0e 0x1e0f >
+MAPLOWER < 0x1e10 0x1e11 >
+MAPLOWER < 0x1e12 0x1e13 >
+MAPLOWER < 0x1e14 0x1e15 >
+MAPLOWER < 0x1e16 0x1e17 >
+MAPLOWER < 0x1e18 0x1e19 >
+MAPLOWER < 0x1e1a 0x1e1b >
+MAPLOWER < 0x1e1c 0x1e1d >
+MAPLOWER < 0x1e1e 0x1e1f >
+MAPLOWER < 0x1e20 0x1e21 >
+MAPLOWER < 0x1e22 0x1e23 >
+MAPLOWER < 0x1e24 0x1e25 >
+MAPLOWER < 0x1e26 0x1e27 >
+MAPLOWER < 0x1e28 0x1e29 >
+MAPLOWER < 0x1e2a 0x1e2b >
+MAPLOWER < 0x1e2c 0x1e2d >
+MAPLOWER < 0x1e2e 0x1e2f >
+MAPLOWER < 0x1e30 0x1e31 >
+MAPLOWER < 0x1e32 0x1e33 >
+MAPLOWER < 0x1e34 0x1e35 >
+MAPLOWER < 0x1e36 0x1e37 >
+MAPLOWER < 0x1e38 0x1e39 >
+MAPLOWER < 0x1e3a 0x1e3b >
+MAPLOWER < 0x1e3c 0x1e3d >
+MAPLOWER < 0x1e3e 0x1e3f >
+MAPLOWER < 0x1e40 0x1e41 >
+MAPLOWER < 0x1e42 0x1e43 >
+MAPLOWER < 0x1e44 0x1e45 >
+MAPLOWER < 0x1e46 0x1e47 >
+MAPLOWER < 0x1e48 0x1e49 >
+MAPLOWER < 0x1e4a 0x1e4b >
+MAPLOWER < 0x1e4c 0x1e4d >
+MAPLOWER < 0x1e4e 0x1e4f >
+MAPLOWER < 0x1e50 0x1e51 >
+MAPLOWER < 0x1e52 0x1e53 >
+MAPLOWER < 0x1e54 0x1e55 >
+MAPLOWER < 0x1e56 0x1e57 >
+MAPLOWER < 0x1e58 0x1e59 >
+MAPLOWER < 0x1e5a 0x1e5b >
+MAPLOWER < 0x1e5c 0x1e5d >
+MAPLOWER < 0x1e5e 0x1e5f >
+MAPLOWER < 0x1e60 0x1e61 >
+MAPLOWER < 0x1e62 0x1e63 >
+MAPLOWER < 0x1e64 0x1e65 >
+MAPLOWER < 0x1e66 0x1e67 >
+MAPLOWER < 0x1e68 0x1e69 >
+MAPLOWER < 0x1e6a 0x1e6b >
+MAPLOWER < 0x1e6c 0x1e6d >
+MAPLOWER < 0x1e6e 0x1e6f >
+MAPLOWER < 0x1e70 0x1e71 >
+MAPLOWER < 0x1e72 0x1e73 >
+MAPLOWER < 0x1e74 0x1e75 >
+MAPLOWER < 0x1e76 0x1e77 >
+MAPLOWER < 0x1e78 0x1e79 >
+MAPLOWER < 0x1e7a 0x1e7b >
+MAPLOWER < 0x1e7c 0x1e7d >
+MAPLOWER < 0x1e7e 0x1e7f >
+MAPLOWER < 0x1e80 0x1e81 >
+MAPLOWER < 0x1e82 0x1e83 >
+MAPLOWER < 0x1e84 0x1e85 >
+MAPLOWER < 0x1e86 0x1e87 >
+MAPLOWER < 0x1e88 0x1e89 >
+MAPLOWER < 0x1e8a 0x1e8b >
+MAPLOWER < 0x1e8c 0x1e8d >
+MAPLOWER < 0x1e8e 0x1e8f >
+MAPLOWER < 0x1e90 0x1e91 >
+MAPLOWER < 0x1e92 0x1e93 >
+MAPLOWER < 0x1e94 0x1e95 >
+MAPLOWER < 0x1ea0 0x1ea1 >
+MAPLOWER < 0x1ea2 0x1ea3 >
+MAPLOWER < 0x1ea4 0x1ea5 >
+MAPLOWER < 0x1ea6 0x1ea7 >
+MAPLOWER < 0x1ea8 0x1ea9 >
+MAPLOWER < 0x1eaa 0x1eab >
+MAPLOWER < 0x1eac 0x1ead >
+MAPLOWER < 0x1eae 0x1eaf >
+MAPLOWER < 0x1eb0 0x1eb1 >
+MAPLOWER < 0x1eb2 0x1eb3 >
+MAPLOWER < 0x1eb4 0x1eb5 >
+MAPLOWER < 0x1eb6 0x1eb7 >
+MAPLOWER < 0x1eb8 0x1eb9 >
+MAPLOWER < 0x1eba 0x1ebb >
+MAPLOWER < 0x1ebc 0x1ebd >
+MAPLOWER < 0x1ebe 0x1ebf >
+MAPLOWER < 0x1ec0 0x1ec1 >
+MAPLOWER < 0x1ec2 0x1ec3 >
+MAPLOWER < 0x1ec4 0x1ec5 >
+MAPLOWER < 0x1ec6 0x1ec7 >
+MAPLOWER < 0x1ec8 0x1ec9 >
+MAPLOWER < 0x1eca 0x1ecb >
+MAPLOWER < 0x1ecc 0x1ecd >
+MAPLOWER < 0x1ece 0x1ecf >
+MAPLOWER < 0x1ed0 0x1ed1 >
+MAPLOWER < 0x1ed2 0x1ed3 >
+MAPLOWER < 0x1ed4 0x1ed5 >
+MAPLOWER < 0x1ed6 0x1ed7 >
+MAPLOWER < 0x1ed8 0x1ed9 >
+MAPLOWER < 0x1eda 0x1edb >
+MAPLOWER < 0x1edc 0x1edd >
+MAPLOWER < 0x1ede 0x1edf >
+MAPLOWER < 0x1ee0 0x1ee1 >
+MAPLOWER < 0x1ee2 0x1ee3 >
+MAPLOWER < 0x1ee4 0x1ee5 >
+MAPLOWER < 0x1ee6 0x1ee7 >
+MAPLOWER < 0x1ee8 0x1ee9 >
+MAPLOWER < 0x1eea 0x1eeb >
+MAPLOWER < 0x1eec 0x1eed >
+MAPLOWER < 0x1eee 0x1eef >
+MAPLOWER < 0x1ef0 0x1ef1 >
+MAPLOWER < 0x1ef2 0x1ef3 >
+MAPLOWER < 0x1ef4 0x1ef5 >
+MAPLOWER < 0x1ef6 0x1ef7 >
+MAPLOWER < 0x1ef8 0x1ef9 >
+
+
+/*
+ * U+1F00 - U+1FFF : Greek Extended
+ */
+
+ALPHA 0x1f00 - 0x1f15 0x1f18 - 0x1f1d 0x1f20 - 0x1f45 0x1f48 - 0x1f4d
+ALPHA 0x1f50 - 0x1f57 0x1f59 0x1f5b 0x1f5d 0x1f5f - 0x1f7d
+ALPHA 0x1f80 - 0x1fb4 0x1fb6 - 0x1fbc 0x1fbe 0x1fc2 - 0x1fc4
+ALPHA 0x1fc6 - 0x1fcc 0x1fd0 - 0x1fd3 0x1fd6 - 0x1fdb 0x1fe0 - 0x1fec
+ALPHA 0x1ff2 - 0x1ff4 0x1ff6 - 0x1ffc
+GRAPH 0x1f00 - 0x1f15 0x1f18 - 0x1f1d 0x1f20 - 0x1f45 0x1f48 - 0x1f4d
+GRAPH 0x1f50 - 0x1f57 0x1f59 0x1f5b 0x1f5d 0x1f5f - 0x1f7d
+GRAPH 0x1f80 - 0x1fb4 0x1fb6 - 0x1fc4 0x1fc6 - 0x1fd3 0x1fd6 - 0x1fdb
+GRAPH 0x1fdd - 0x1fef 0x1ff2 - 0x1ff4 0x1ff6 - 0x1ffe
+LOWER 0x1f00 - 0x1f07 0x1f10 - 0x1f15 0x1f20 - 0x1f27 0x1f30 - 0x1f37
+LOWER 0x1f40 - 0x1f45 0x1f50 - 0x1f57 0x1f60 - 0x1f67 0x1f70 - 0x1f7d
+LOWER 0x1f80 - 0x1f87 0x1f90 - 0x1f97 0x1fa0 - 0x1fa7 0x1fb0 - 0x1fb4
+LOWER 0x1fb6 0x1fb7 0x1fbe 0x1fc2 - 0x1fc4 0x1fc6 0x1fc7
+LOWER 0x1fd0 - 0x1fd3 0x1fd6 0x1fd7 0x1fe0 - 0x1fe7 0x1ff2 - 0x1ff4
+LOWER 0x1ff6 0x1ff7
+PUNCT 0x1fbd 0x1fbf - 0x1fc1 0x1fcd - 0x1fcf 0x1fdd - 0x1fdf
+PUNCT 0x1fed - 0x1fef 0x1ffd 0x1ffe
+UPPER 0x1f08 - 0x1f0f 0x1f18 - 0x1f1d 0x1f28 - 0x1f2f 0x1f38 - 0x1f3f
+UPPER 0x1f48 - 0x1f4d 0x1f59 0x1f5b 0x1f5d 0x1f5f 0x1f68 - 0x1f6f
+UPPER 0x1fb8 - 0x1fbb 0x1fc8 - 0x1fcb 0x1fd8 - 0x1fdb 0x1fe8 - 0x1fec
+UPPER 0x1ff8 - 0x1ffb
+PRINT 0x1f00 - 0x1f15 0x1f18 - 0x1f1d 0x1f20 - 0x1f45 0x1f48 - 0x1f4d
+PRINT 0x1f50 - 0x1f57 0x1f59 0x1f5b 0x1f5d 0x1f5f - 0x1f7d
+PRINT 0x1f80 - 0x1fb4 0x1fb6 - 0x1fc4 0x1fc6 - 0x1fd3 0x1fd6 - 0x1fdb
+PRINT 0x1fdd - 0x1fef 0x1ff2 - 0x1ff4 0x1ff6 - 0x1ffe
+SWIDTH1 0x1f00 - 0x1f15 0x1f18 - 0x1f1d 0x1f20 - 0x1f45 0x1f48 - 0x1f4d
+SWIDTH1 0x1f50 - 0x1f57 0x1f59 0x1f5b 0x1f5d 0x1f5f - 0x1f7d
+SWIDTH1 0x1f80 - 0x1fb4 0x1fb6 - 0x1fc4 0x1fc6 - 0x1fd3 0x1fd6 - 0x1fdb
+SWIDTH1 0x1fdd - 0x1fef 0x1ff2 - 0x1ff4 0x1ff6 - 0x1ffe
+
+MAPUPPER < 0x1f00 - 0x1f07 : 0x1f08 >
+MAPUPPER < 0x1f10 - 0x1f15 : 0x1f18 >
+MAPUPPER < 0x1f20 - 0x1f27 : 0x1f28 >
+MAPUPPER < 0x1f30 - 0x1f37 : 0x1f38 >
+MAPUPPER < 0x1f40 - 0x1f45 : 0x1f48 >
+MAPUPPER < 0x1f51 0x1f59 >
+MAPUPPER < 0x1f53 0x1f5b >
+MAPUPPER < 0x1f55 0x1f5d >
+MAPUPPER < 0x1f57 0x1f5f >
+MAPUPPER < 0x1f60 - 0x1f67 : 0x1f68 >
+MAPUPPER < 0x1f70 - 0x1f71 : 0x1fba >
+MAPUPPER < 0x1f72 - 0x1f75 : 0x1fc8 >
+MAPUPPER < 0x1f76 - 0x1f77 : 0x1fda >
+MAPUPPER < 0x1f78 - 0x1f79 : 0x1ff8 >
+MAPUPPER < 0x1f7a - 0x1f7b : 0x1fea >
+MAPUPPER < 0x1f7c - 0x1f7d : 0x1ffa >
+MAPUPPER < 0x1f80 - 0x1f87 : 0x1f88 >
+MAPUPPER < 0x1f90 - 0x1f97 : 0x1f98 >
+MAPUPPER < 0x1fa0 - 0x1fa7 : 0x1fa8 >
+MAPUPPER < 0x1fb0 - 0x1fb1 : 0x1fb8 >
+MAPUPPER < 0x1fb3 0x1fbc >
+MAPUPPER < 0x1fbe 0x0399 >
+MAPUPPER < 0x1fc3 0x1fcc >
+MAPUPPER < 0x1fd0 - 0x1fd1 : 0x1fd8 >
+MAPUPPER < 0x1fe0 - 0x1fe1 : 0x1fe8 >
+MAPUPPER < 0x1fe5 0x1fec >
+MAPUPPER < 0x1ff3 0x1ffc >
+MAPLOWER < 0x1f08 - 0x1f0f : 0x1f00 >
+MAPLOWER < 0x1f18 - 0x1f1d : 0x1f10 >
+MAPLOWER < 0x1f28 - 0x1f2f : 0x1f20 >
+MAPLOWER < 0x1f38 - 0x1f3f : 0x1f30 >
+MAPLOWER < 0x1f48 - 0x1f4d : 0x1f40 >
+MAPLOWER < 0x1f59 0x1f51 >
+MAPLOWER < 0x1f5b 0x1f53 >
+MAPLOWER < 0x1f5d 0x1f55 >
+MAPLOWER < 0x1f5f 0x1f57 >
+MAPLOWER < 0x1f68 - 0x1f6f : 0x1f60 >
+MAPLOWER < 0x1f88 - 0x1f8f : 0x1f80 >
+MAPLOWER < 0x1f98 - 0x1f9f : 0x1f90 >
+MAPLOWER < 0x1fa8 - 0x1faf : 0x1fa0 >
+MAPLOWER < 0x1fb8 - 0x1fb9 : 0x1fb0 >
+MAPLOWER < 0x1fba - 0x1fbb : 0x1f70 >
+MAPLOWER < 0x1fbc 0x1fb3 >
+MAPLOWER < 0x1fc8 - 0x1fcb : 0x1f72 >
+MAPLOWER < 0x1fcc 0x1fc3 >
+MAPLOWER < 0x1fd8 - 0x1fd9 : 0x1fd0 >
+MAPLOWER < 0x1fda - 0x1fdb : 0x1f76 >
+MAPLOWER < 0x1fe8 - 0x1fe9 : 0x1fe0 >
+MAPLOWER < 0x1fea - 0x1feb : 0x1f7a >
+MAPLOWER < 0x1fec 0x1fe5 >
+MAPLOWER < 0x1ff8 - 0x1ff9 : 0x1f78 >
+MAPLOWER < 0x1ffa - 0x1ffb : 0x1f7c >
+MAPLOWER < 0x1ffc 0x1ff3 >
+
+
+/*
+ * U+2000 - U+206F : General Punctuation
+ */
+
+CONTROL 0x200c - 0x200f 0x202a - 0x202e 0x2060 - 0x2063 0x206a - 0x206f
+GRAPH 0x2010 - 0x2027 0x2030 - 0x2052 0x2057
+PUNCT 0x2010 - 0x2027 0x2030 - 0x2052 0x2057
+SPACE 0x2000 - 0x200b 0x2028 0x2029 0x202f 0x205f
+BLANK 0x2000 - 0x200b 0x202f 0x205f
+PRINT 0x2000 - 0x200b 0x2010 - 0x2029 0x202f - 0x2052 0x2057
+PRINT 0x205f
+SWIDTH1 0x2000 - 0x200b 0x2010 - 0x2029 0x202f - 0x2052 0x2057
+SWIDTH1 0x205f
+
+
+/*
+ * U+2070 - U+209F : Superscripts and Subscripts
+ */
+
+ALPHA 0x2071 0x207f
+GRAPH 0x2070 0x2071 0x2074 - 0x208e
+LOWER 0x2071 0x207f
+PUNCT 0x207a - 0x207e 0x208a - 0x208e
+PRINT 0x2070 0x2071 0x2074 - 0x208e
+SPECIAL 0x2070 0x2074 - 0x2079 0x2080 - 0x2089
+SWIDTH1 0x2070 0x2071 0x2074 - 0x208e
+
+
+/*
+ * U+20A0 - U+20CF : Currency Symbols
+ */
+
+GRAPH 0x20a0 - 0x20b1
+PUNCT 0x20a0 - 0x20b1
+PRINT 0x20a0 - 0x20b1
+SWIDTH1 0x20a0 - 0x20b1
+
+
+/*
+ * U+20D0 - U+20FF : Combining Diacritical Marks for Symbols
+ */
+
+GRAPH 0x20d0 - 0x20ea
+PRINT 0x20d0 - 0x20ea
+SWIDTH1 0x20d0 - 0x20ea
+
+
+/*
+ * U+2100 - U+214F : Letterlike Symbols
+ */
+
+ALPHA 0x2102 0x2107 0x210a - 0x2113 0x2115 0x2119 - 0x211d
+ALPHA 0x2124 0x2126 0x2128 0x212a - 0x212d 0x212f - 0x2131
+ALPHA 0x2133 0x2134 0x2139 0x213d - 0x213f 0x2145 - 0x2149
+GRAPH 0x2100 - 0x213a 0x213d - 0x214b
+LOWER 0x210a 0x210e 0x210f 0x2113 0x212f 0x2134 0x2139
+LOWER 0x213d 0x2146 - 0x2149
+PUNCT 0x2100 0x2101 0x2103 - 0x2106 0x2108 0x2109 0x2114
+PUNCT 0x2116 - 0x2118 0x211e - 0x2123 0x2125 0x2127 0x2129
+PUNCT 0x212e 0x2132 0x213a 0x2140 - 0x2144 0x214a 0x214b
+UPPER 0x2102 0x2107 0x210b - 0x210d 0x2110 - 0x2112 0x2115
+UPPER 0x2119 - 0x211d 0x2124 0x2126 0x2128 0x212a - 0x212d
+UPPER 0x2130 0x2131 0x2133 0x213e 0x213f 0x2145
+PRINT 0x2100 - 0x213a 0x213d - 0x214b
+SWIDTH1 0x2100 - 0x213a 0x213d - 0x214b
+
+MAPLOWER < 0x2126 0x03c9 >
+MAPLOWER < 0x212a 'k' >
+MAPLOWER < 0x212b 0x00e5 >
+
+
+/*
+ * U+2150 - U+218F : Number Forms
+ */
+
+GRAPH 0x2153 - 0x2183
+PRINT 0x2153 - 0x2183
+SPECIAL 0x2153 - 0x2183
+SWIDTH1 0x2153 - 0x2183
+
+MAPUPPER < 0x2170 - 0x217f : 0x2160 >
+MAPLOWER < 0x2160 - 0x216f : 0x2170 >
+
+
+/*
+ * U+2190 - U+21FF : Arrows
+ */
+
+GRAPH 0x2190 - 0x21ff
+PUNCT 0x2190 - 0x21ff
+PRINT 0x2190 - 0x21ff
+SWIDTH1 0x2190 - 0x21ff
+
+
+/*
+ * U+2200 - U+22FF : Mathematical Operators
+ */
+
+GRAPH 0x2200 - 0x22ff
+PUNCT 0x2200 - 0x22ff
+PRINT 0x2200 - 0x22ff
+SWIDTH1 0x2200 - 0x22ff
+
+
+/*
+ * U+2300 - U+23FF : Miscellaneous Technical
+ */
+
+GRAPH 0x2300 - 0x23ce
+PUNCT 0x2300 - 0x23ce
+PRINT 0x2300 - 0x23ce
+SWIDTH1 0x2300 - 0x2328 0x232b - 0x23ce
+SWIDTH2 0x2329 0x232a
+
+
+/*
+ * U+2400 - U+243F : Control Pictures
+ */
+
+GRAPH 0x2400 - 0x2426
+PUNCT 0x2400 - 0x2426
+PRINT 0x2400 - 0x2426
+SWIDTH1 0x2400 - 0x2426
+
+
+/*
+ * U+2440 - U+245F : Optical Character Recognition
+ */
+
+GRAPH 0x2440 - 0x244a
+PUNCT 0x2440 - 0x244a
+PRINT 0x2440 - 0x244a
+SWIDTH1 0x2440 - 0x244a
+
+
+/*
+ * U+2460 - U+24FF : Enclosed Alphanumerics
+ */
+
+GRAPH 0x2460 - 0x24fe
+PUNCT 0x249c - 0x24e9
+PRINT 0x2460 - 0x24fe
+SPECIAL 0x2460 - 0x249b 0x24ea - 0x24fe
+SWIDTH1 0x2460 - 0x24fe
+
+MAPUPPER < 0x24d0 - 0x24e9 : 0x24b6 >
+MAPLOWER < 0x24b6 - 0x24cf : 0x24d0 >
+
+
+/*
+ * U+2500 - U+257F : Box Drawing
+ */
+
+GRAPH 0x2500 - 0x257f
+PUNCT 0x2500 - 0x257f
+PRINT 0x2500 - 0x257f
+SWIDTH1 0x2500 - 0x257f
+
+
+/*
+ * U+2580 - U+259F : Block Elements
+ */
+
+GRAPH 0x2580 - 0x259f
+PUNCT 0x2580 - 0x259f
+PRINT 0x2580 - 0x259f
+SWIDTH1 0x2580 - 0x259f
+
+
+/*
+ * U+25A0 - U+25FF : Geometric Shapes
+ */
+
+GRAPH 0x25a0 - 0x25ff
+PUNCT 0x25a0 - 0x25ff
+PRINT 0x25a0 - 0x25ff
+SWIDTH1 0x25a0 - 0x25ff
+
+
+/*
+ * U+2600 - U+26FF : Miscellaneous Symbols
+ */
+
+GRAPH 0x2600 - 0x2613 0x2616 0x2617 0x2619 - 0x267d 0x2680 - 0x2689
+PUNCT 0x2600 - 0x2613 0x2616 0x2617 0x2619 - 0x267d 0x2680 - 0x2689
+PRINT 0x2600 - 0x2613 0x2616 0x2617 0x2619 - 0x267d 0x2680 - 0x2689
+SWIDTH1 0x2600 - 0x2613 0x2616 0x2617 0x2619 - 0x267d 0x2680 - 0x2689
+
+
+/*
+ * U+2700 - U+27BF : Dingbats
+ */
+
+GRAPH 0x2701 - 0x2704 0x2706 - 0x2709 0x270c - 0x2727 0x2729 - 0x274b
+GRAPH 0x274d 0x274f - 0x2752 0x2756 0x2758 - 0x275e 0x2761 - 0x2794
+GRAPH 0x2798 - 0x27af 0x27b1 - 0x27be
+PUNCT 0x2701 - 0x2704 0x2706 - 0x2709 0x270c - 0x2727 0x2729 - 0x274b
+PUNCT 0x274d 0x274f - 0x2752 0x2756 0x2758 - 0x275e 0x2761 - 0x2775
+PUNCT 0x2794 0x2798 - 0x27af 0x27b1 - 0x27be
+PRINT 0x2701 - 0x2704 0x2706 - 0x2709 0x270c - 0x2727 0x2729 - 0x274b
+PRINT 0x274d 0x274f - 0x2752 0x2756 0x2758 - 0x275e 0x2761 - 0x2794
+PRINT 0x2798 - 0x27af 0x27b1 - 0x27be
+SPECIAL 0x2776 - 0x2793
+SWIDTH1 0x2701 - 0x2704 0x2706 - 0x2709 0x270c - 0x2727 0x2729 - 0x274b
+SWIDTH1 0x274d 0x274f - 0x2752 0x2756 0x2758 - 0x275e 0x2761 - 0x2794
+SWIDTH1 0x2798 - 0x27af 0x27b1 - 0x27be
+
+
+/*
+ * U+27C0 - U+27EF : Miscellaneous Mathematical Symbols-A
+ */
+
+GRAPH 0x27d0 - 0x27eb
+PUNCT 0x27d0 - 0x27eb
+PRINT 0x27d0 - 0x27eb
+SWIDTH1 0x27d0 - 0x27eb
+
+
+/*
+ * U+27F0 - U+27FF : Supplemental Arrows-A
+ */
+
+GRAPH 0x27f0 - 0x27ff
+PUNCT 0x27f0 - 0x27ff
+PRINT 0x27f0 - 0x27ff
+SWIDTH1 0x27f0 - 0x27ff
+
+
+/*
+ * U+2800 - U+28FF : Braille Patterns
+ */
+
+GRAPH 0x2800 - 0x28ff
+PUNCT 0x2800 - 0x28ff
+PRINT 0x2800 - 0x28ff
+SWIDTH1 0x2800 - 0x28ff
+
+
+/*
+ * U+2900 - U+297F : Supplemental Arrows-B
+ */
+
+GRAPH 0x2900 - 0x297f
+PUNCT 0x2900 - 0x297f
+PRINT 0x2900 - 0x297f
+SWIDTH1 0x2900 - 0x297f
+
+
+/*
+ * U+2980 - U+29FF : Miscellaneous Mathematical Symbols-B
+ */
+
+GRAPH 0x2980 - 0x29ff
+PUNCT 0x2980 - 0x29ff
+PRINT 0x2980 - 0x29ff
+SWIDTH1 0x2980 - 0x29ff
+
+
+/*
+ * U+2A00 - U+2AFF : Supplemental Mathematical Operators
+ */
+
+GRAPH 0x2a00 - 0x2aff
+PUNCT 0x2a00 - 0x2aff
+PRINT 0x2a00 - 0x2aff
+SWIDTH1 0x2a00 - 0x2aff
+
+
+/*
+ * U+2E80 - U+2EFF : CJK Radicals Supplement
+ */
+
+GRAPH 0x2e80 - 0x2e99 0x2e9b - 0x2ef3
+PUNCT 0x2e80 - 0x2e99 0x2e9b - 0x2ef3
+PRINT 0x2e80 - 0x2e99 0x2e9b - 0x2ef3
+SWIDTH2 0x2e80 - 0x2e99 0x2e9b - 0x2ef3
+
+
+/*
+ * U+2F00 - U+2FDF : Kangxi Radicals
+ */
+
+GRAPH 0x2f00 - 0x2fd5
+PUNCT 0x2f00 - 0x2fd5
+PRINT 0x2f00 - 0x2fd5
+SWIDTH2 0x2f00 - 0x2fd5
+
+
+/*
+ * U+2FF0 - U+2FFF : Ideographic Description Characters
+ */
+
+GRAPH 0x2ff0 - 0x2ffb
+PUNCT 0x2ff0 - 0x2ffb
+PRINT 0x2ff0 - 0x2ffb
+SWIDTH2 0x2ff0 - 0x2ffb
+
+
+/*
+ * U+3000 - U+303F : CJK Symbols and Punctuation
+ */
+
+GRAPH 0x3001 - 0x303f
+PUNCT 0x3001 - 0x3004 0x3008 - 0x3020 0x3030 0x3036 0x3037
+PUNCT 0x303d - 0x303f
+SPACE 0x3000
+BLANK 0x3000
+PRINT 0x3000 - 0x303f
+IDEOGRAM 0x3006
+SPECIAL 0x3007 0x3021 - 0x3029 0x3038 - 0x303a
+SWIDTH1 0x303f
+SWIDTH2 0x3000 - 0x303e
+
+
+/*
+ * U+3040 - U+309F : Hiragana
+ */
+
+GRAPH 0x3041 - 0x3096 0x3099 - 0x309f
+PUNCT 0x309b 0x309c
+PRINT 0x3041 - 0x3096 0x3099 - 0x309f
+PHONOGRAM 0x3041 - 0x3096 0x309f
+SWIDTH2 0x3041 - 0x3096 0x3099 - 0x309f
+
+
+/*
+ * U+30A0 - U+30FF : Katakana
+ */
+
+GRAPH 0x30a0 - 0x30ff
+PUNCT 0x30a0 0x30fb
+PRINT 0x30a0 - 0x30ff
+PHONOGRAM 0x30a1 - 0x30fa 0x30ff
+SWIDTH2 0x30a0 - 0x30ff
+
+
+/*
+ * U+3100 - U+312F : Bopomofo
+ */
+
+GRAPH 0x3105 - 0x312c
+PRINT 0x3105 - 0x312c
+SWIDTH2 0x3105 - 0x312c
+
+
+/*
+ * U+3130 - U+318F : Hangul Compatibility Jamo
+ */
+
+GRAPH 0x3131 - 0x318e
+PRINT 0x3131 - 0x318e
+PHONOGRAM 0x3131 - 0x3163 0x3165 - 0x318e
+SWIDTH2 0x3131 - 0x318e
+
+
+/*
+ * U+3190 - U+319F : Kanbun
+ */
+
+GRAPH 0x3190 - 0x319f
+PUNCT 0x3190 0x3191 0x3196 - 0x319f
+PRINT 0x3190 - 0x319f
+SPECIAL 0x3192 - 0x3195
+SWIDTH2 0x3190 - 0x319f
+
+
+/*
+ * U+31A0 - U+31BF : Bopomofo Extended
+ */
+
+GRAPH 0x31a0 - 0x31b7
+PRINT 0x31a0 - 0x31b7
+SWIDTH2 0x31a0 - 0x31b7
+
+
+/*
+ * U+31F0 - U+31FF : Katakana Phonetic Extensions
+ */
+
+GRAPH 0x31f0 - 0x31ff
+PRINT 0x31f0 - 0x31ff
+PHONOGRAM 0x31f0 - 0x31ff
+SWIDTH2 0x31f0 - 0x31ff
+
+
+/*
+ * U+3200 - U+32FF : Enclosed CJK Letters and Months
+ */
+
+GRAPH 0x3200 - 0x321c 0x3220 - 0x3243 0x3251 - 0x327b 0x327f - 0x32cb
+GRAPH 0x32d0 - 0x32fe
+PUNCT 0x3200 - 0x321c 0x322a - 0x3243 0x3260 - 0x327b 0x327f
+PUNCT 0x328a - 0x32b0 0x32c0 - 0x32cb 0x32d0 - 0x32fe
+PRINT 0x3200 - 0x321c 0x3220 - 0x3243 0x3251 - 0x327b 0x327f - 0x32cb
+PRINT 0x32d0 - 0x32fe
+SPECIAL 0x3220 - 0x3229 0x3251 - 0x325f 0x3280 - 0x3289 0x32b1 - 0x32bf
+SWIDTH2 0x3200 - 0x321c 0x3220 - 0x3243 0x3251 - 0x327b 0x327f - 0x32cb
+SWIDTH2 0x32d0 - 0x32fe
+
+
+/*
+ * U+3300 - U+33FF : CJK Compatibility
+ */
+
+GRAPH 0x3300 - 0x3376 0x337b - 0x33dd 0x33e0 - 0x33fe
+PUNCT 0x3300 - 0x3376 0x337b - 0x33dd 0x33e0 - 0x33fe
+PRINT 0x3300 - 0x3376 0x337b - 0x33dd 0x33e0 - 0x33fe
+SWIDTH2 0x3300 - 0x3376 0x337b - 0x33dd 0x33e0 - 0x33fe
+
+
+/*
+ * U+3400 - U+4DBF : CJK Unified Ideographs Extension A
+ */
+
+GRAPH 0x3400 - 0x4db5
+PRINT 0x3400 - 0x4db5
+IDEOGRAM 0x3400 - 0x4db5
+SWIDTH2 0x3400 - 0x4db5
+
+
+/*
+ * U+4E00 - U+9FFF : CJK Unified Ideographs
+ */
+
+GRAPH 0x4e00 - 0x9fa5
+PRINT 0x4e00 - 0x9fa5
+IDEOGRAM 0x4e00 - 0x9fa5
+SWIDTH2 0x4e00 - 0x9fa5
+
+
+/*
+ * U+A000 - U+A48F : Yi Syllables
+ */
+
+GRAPH 0xa000 - 0xa48c
+PRINT 0xa000 - 0xa48c
+PHONOGRAM 0xa000 - 0xa48c
+SWIDTH2 0xa000 - 0xa48c
+
+
+/*
+ * U+A490 - U+A4CF : Yi Radicals
+ */
+
+GRAPH 0xa490 - 0xa4c6
+PUNCT 0xa490 - 0xa4c6
+PRINT 0xa490 - 0xa4c6
+SWIDTH2 0xa490 - 0xa4c6
+
+
+/*
+ * U+AC00 - U+D7AF : Hangul Syllables
+ */
+
+GRAPH 0xac00 - 0xd7a3
+PRINT 0xac00 - 0xd7a3
+PHONOGRAM 0xac00 - 0xd7a3
+SWIDTH2 0xac00 - 0xd7a3
+
+
+/*
+ * U+D800 - U+DB7F : High Surrogates
+ */
+
+PRINT 0xd800 - 0xdb7f
+SWIDTH1 0xd800 - 0xdb7f
+
+
+/*
+ * U+DB80 - U+DBFF : High Private Use Surrogates
+ */
+
+PRINT 0xdb80 - 0xdbff
+SWIDTH1 0xdb80 - 0xdbff
+
+
+/*
+ * U+DC00 - U+DFFF : Low Surrogates
+ */
+
+PRINT 0xdc00 - 0xdfff
+SWIDTH1 0xdc00 - 0xdfff
+
+
+/*
+ * U+E000 - U+F8FF : Private Use Area
+ */
+
+GRAPH 0xe000 - 0xf8ff
+PRINT 0xe000 - 0xf8ff
+SWIDTH1 0xe000 - 0xf8ff
+
+
+/*
+ * U+F900 - U+FAFF : CJK Compatibility Ideographs
+ */
+
+GRAPH 0xf900 - 0xfa2d 0xfa30 - 0xfa6a
+PRINT 0xf900 - 0xfa2d 0xfa30 - 0xfa6a
+IDEOGRAM 0xf900 - 0xfa2d 0xfa30 - 0xfa6a
+SWIDTH2 0xf900 - 0xfa2d 0xfa30 - 0xfa6a
+
+
+/*
+ * U+FB00 - U+FB4F : Alphabetic Presentation Forms
+ */
+
+ALPHA 0xfb00 - 0xfb06 0xfb13 - 0xfb17
+GRAPH 0xfb00 - 0xfb06 0xfb13 - 0xfb17 0xfb1d - 0xfb36 0xfb38 - 0xfb3c
+GRAPH 0xfb3e 0xfb40 0xfb41 0xfb43 0xfb44 0xfb46 - 0xfb4f
+LOWER 0xfb00 - 0xfb06 0xfb13 - 0xfb17
+PUNCT 0xfb29
+PRINT 0xfb00 - 0xfb06 0xfb13 - 0xfb17 0xfb1d - 0xfb36 0xfb38 - 0xfb3c
+PRINT 0xfb3e 0xfb40 0xfb41 0xfb43 0xfb44 0xfb46 - 0xfb4f
+SWIDTH1 0xfb00 - 0xfb06 0xfb13 - 0xfb17 0xfb1d - 0xfb36 0xfb38 - 0xfb3c
+SWIDTH1 0xfb3e 0xfb40 0xfb41 0xfb43 0xfb44 0xfb46 - 0xfb4f
+
+
+/*
+ * U+FB50 - U+FDFF : Arabic Presentation Forms-A
+ */
+
+GRAPH 0xfb50 - 0xfbb1 0xfbd3 - 0xfd3f 0xfd50 - 0xfd8f 0xfd92 - 0xfdc7
+GRAPH 0xfdf0 - 0xfdfc
+PUNCT 0xfd3e 0xfd3f 0xfdfc
+PRINT 0xfb50 - 0xfbb1 0xfbd3 - 0xfd3f 0xfd50 - 0xfd8f 0xfd92 - 0xfdc7
+PRINT 0xfdf0 - 0xfdfc
+SWIDTH1 0xfb50 - 0xfbb1 0xfbd3 - 0xfd3f 0xfd50 - 0xfd8f 0xfd92 - 0xfdc7
+SWIDTH1 0xfdf0 - 0xfdfc
+
+
+/*
+ * U+FE00 - U+FE0F : Variation Selectors
+ */
+
+GRAPH 0xfe00 - 0xfe0f
+PRINT 0xfe00 - 0xfe0f
+SWIDTH1 0xfe00 - 0xfe0f
+
+
+/*
+ * U+FE20 - U+FE2F : Combining Half Marks
+ */
+
+GRAPH 0xfe20 - 0xfe23
+PRINT 0xfe20 - 0xfe23
+SWIDTH1 0xfe20 - 0xfe23
+
+
+/*
+ * U+FE30 - U+FE4F : CJK Compatibility Forms
+ */
+
+GRAPH 0xfe30 - 0xfe46 0xfe49 - 0xfe4f
+PUNCT 0xfe30 - 0xfe46 0xfe49 - 0xfe4f
+PRINT 0xfe30 - 0xfe46 0xfe49 - 0xfe4f
+SWIDTH2 0xfe30 - 0xfe46 0xfe49 - 0xfe4f
+
+
+/*
+ * U+FE50 - U+FE6F : Small Form Variants
+ */
+
+GRAPH 0xfe50 - 0xfe52 0xfe54 - 0xfe66 0xfe68 - 0xfe6b
+PUNCT 0xfe50 - 0xfe52 0xfe54 - 0xfe66 0xfe68 - 0xfe6b
+PRINT 0xfe50 - 0xfe52 0xfe54 - 0xfe66 0xfe68 - 0xfe6b
+SWIDTH2 0xfe50 - 0xfe52 0xfe54 - 0xfe66 0xfe68 - 0xfe6b
+
+
+/*
+ * U+FE70 - U+FEFF : Arabic Presentation Forms-B
+ */
+
+CONTROL 0xfeff
+GRAPH 0xfe70 - 0xfe74 0xfe76 - 0xfefc
+PRINT 0xfe70 - 0xfe74 0xfe76 - 0xfefc
+SWIDTH1 0xfe70 - 0xfe74 0xfe76 - 0xfefc
+
+
+/*
+ * U+FF00 - U+FFEF : Halfwidth and Fullwidth Forms
+ */
+
+ALPHA 0xff21 - 0xff3a 0xff41 - 0xff5a
+GRAPH 0xff01 - 0xffbe 0xffc2 - 0xffc7 0xffca - 0xffcf 0xffd2 - 0xffd7
+GRAPH 0xffda - 0xffdc 0xffe0 - 0xffe6 0xffe8 - 0xffee
+LOWER 0xff41 - 0xff5a
+PUNCT 0xff01 - 0xff0f 0xff1a - 0xff20 0xff3b - 0xff40 0xff5b - 0xff65
+PUNCT 0xffe0 - 0xffe6 0xffe8 - 0xffee
+UPPER 0xff21 - 0xff3a
+PRINT 0xff01 - 0xffbe 0xffc2 - 0xffc7 0xffca - 0xffcf 0xffd2 - 0xffd7
+PRINT 0xffda - 0xffdc 0xffe0 - 0xffe6 0xffe8 - 0xffee
+PHONOGRAM 0xff66 - 0xff6f 0xff71 - 0xff9d 0xffa1 - 0xffbe 0xffc2 - 0xffc7
+PHONOGRAM 0xffca - 0xffcf 0xffd2 - 0xffd7 0xffda - 0xffdc
+SWIDTH1 0xff61 - 0xffbe 0xffc2 - 0xffc7 0xffca - 0xffcf 0xffd2 - 0xffd7
+SWIDTH1 0xffda - 0xffdc 0xffe8 - 0xffee
+SWIDTH2 0xff01 - 0xff60 0xffe0 - 0xffe6
+
+MAPUPPER < 0xff41 - 0xff5a : 0xff21 >
+MAPLOWER < 0xff21 - 0xff3a : 0xff41 >
+
+
+/*
+ * U+FFF0 - U+FFFF : Specials
+ */
+
+CONTROL 0xfff9 - 0xfffb
+GRAPH 0xfffc 0xfffd
+PUNCT 0xfffc 0xfffd
+PRINT 0xfffc 0xfffd
+SWIDTH1 0xfffc 0xfffd
+
+
+/*
+ * U+10300 - U+1032F : Old Italic
+ */
+
+GRAPH 0x10300 - 0x1031e 0x10320 - 0x10323
+PRINT 0x10300 - 0x1031e 0x10320 - 0x10323
+SPECIAL 0x10320 - 0x10323
+SWIDTH1 0x10300 - 0x1031e 0x10320 - 0x10323
+
+
+/*
+ * U+10330 - U+1034F : Gothic
+ */
+
+GRAPH 0x10330 - 0x1034a
+PRINT 0x10330 - 0x1034a
+SPECIAL 0x1034a
+SWIDTH1 0x10330 - 0x1034a
+
+
+/*
+ * U+10400 - U+1044F : Deseret
+ */
+
+ALPHA 0x10400 - 0x10425 0x10428 - 0x1044d
+GRAPH 0x10400 - 0x10425 0x10428 - 0x1044d
+LOWER 0x10428 - 0x1044d
+UPPER 0x10400 - 0x10425
+PRINT 0x10400 - 0x10425 0x10428 - 0x1044d
+SWIDTH1 0x10400 - 0x10425 0x10428 - 0x1044d
+
+MAPUPPER < 0x10428 - 0x1044d : 0x10400 >
+MAPLOWER < 0x10400 - 0x10425 : 0x10428 >
+
+
+/*
+ * U+1D000 - U+1D0FF : Byzantine Musical Symbols
+ */
+
+GRAPH 0x1d000 - 0x1d0f5
+PUNCT 0x1d000 - 0x1d0f5
+PRINT 0x1d000 - 0x1d0f5
+SWIDTH1 0x1d000 - 0x1d0f5
+
+
+/*
+ * U+1D100 - U+1D1FF : Musical Symbols
+ */
+
+CONTROL 0x1d173 - 0x1d17a
+GRAPH 0x1d100 - 0x1d126 0x1d12a - 0x1d172 0x1d17b - 0x1d1dd
+PUNCT 0x1d100 - 0x1d126 0x1d12a - 0x1d164 0x1d16a - 0x1d16c
+PUNCT 0x1d183 0x1d184 0x1d18c - 0x1d1a9 0x1d1ae - 0x1d1dd
+PRINT 0x1d100 - 0x1d126 0x1d12a - 0x1d172 0x1d17b - 0x1d1dd
+SWIDTH1 0x1d100 - 0x1d126 0x1d12a - 0x1d172 0x1d17b - 0x1d1dd
+
+
+/*
+ * U+1D400 - U+1D7FF : Mathematical Alphanumeric Symbols
+ */
+
+ALPHA 0x1d400 - 0x1d454 0x1d456 - 0x1d49c 0x1d49e 0x1d49f
+ALPHA 0x1d4a2 0x1d4a5 0x1d4a6 0x1d4a9 - 0x1d4ac 0x1d4ae - 0x1d4b9
+ALPHA 0x1d4bb 0x1d4bd - 0x1d4c0 0x1d4c2 0x1d4c3 0x1d4c5 - 0x1d505
+ALPHA 0x1d507 - 0x1d50a 0x1d50d - 0x1d514 0x1d516 - 0x1d51c
+ALPHA 0x1d51e - 0x1d539 0x1d53b - 0x1d53e 0x1d540 - 0x1d544
+ALPHA 0x1d546 0x1d54a - 0x1d550 0x1d552 - 0x1d6a3 0x1d6a8 - 0x1d6c0
+ALPHA 0x1d6c2 - 0x1d6da 0x1d6dc - 0x1d6fa 0x1d6fc - 0x1d714
+ALPHA 0x1d716 - 0x1d734 0x1d736 - 0x1d74e 0x1d750 - 0x1d76e
+ALPHA 0x1d770 - 0x1d788 0x1d78a - 0x1d7a8 0x1d7aa - 0x1d7c2
+ALPHA 0x1d7c4 - 0x1d7c9
+GRAPH 0x1d400 - 0x1d454 0x1d456 - 0x1d49c 0x1d49e 0x1d49f
+GRAPH 0x1d4a2 0x1d4a5 0x1d4a6 0x1d4a9 - 0x1d4ac 0x1d4ae - 0x1d4b9
+GRAPH 0x1d4bb 0x1d4bd - 0x1d4c0 0x1d4c2 0x1d4c3 0x1d4c5 - 0x1d505
+GRAPH 0x1d507 - 0x1d50a 0x1d50d - 0x1d514 0x1d516 - 0x1d51c
+GRAPH 0x1d51e - 0x1d539 0x1d53b - 0x1d53e 0x1d540 - 0x1d544
+GRAPH 0x1d546 0x1d54a - 0x1d550 0x1d552 - 0x1d6a3 0x1d6a8 - 0x1d7c9
+GRAPH 0x1d7ce - 0x1d7ff
+LOWER 0x1d41a - 0x1d433 0x1d44e - 0x1d454 0x1d456 - 0x1d467
+LOWER 0x1d482 - 0x1d49b 0x1d4b6 - 0x1d4b9 0x1d4bb 0x1d4bd - 0x1d4c0
+LOWER 0x1d4c2 0x1d4c3 0x1d4c5 - 0x1d4cf 0x1d4ea - 0x1d503
+LOWER 0x1d51e - 0x1d537 0x1d552 - 0x1d56b 0x1d586 - 0x1d59f
+LOWER 0x1d5ba - 0x1d5d3 0x1d5ee - 0x1d607 0x1d622 - 0x1d63b
+LOWER 0x1d656 - 0x1d66f 0x1d68a - 0x1d6a3 0x1d6c2 - 0x1d6da
+LOWER 0x1d6dc - 0x1d6e1 0x1d6fc - 0x1d714 0x1d716 - 0x1d71b
+LOWER 0x1d736 - 0x1d74e 0x1d750 - 0x1d755 0x1d770 - 0x1d788
+LOWER 0x1d78a - 0x1d78f 0x1d7aa - 0x1d7c2 0x1d7c4 - 0x1d7c9
+PUNCT 0x1d6c1 0x1d6db 0x1d6fb 0x1d715 0x1d735 0x1d74f
+PUNCT 0x1d76f 0x1d789 0x1d7a9 0x1d7c3
+UPPER 0x1d400 - 0x1d419 0x1d434 - 0x1d44d 0x1d468 - 0x1d481
+UPPER 0x1d49c 0x1d49e 0x1d49f 0x1d4a2 0x1d4a5 0x1d4a6
+UPPER 0x1d4a9 - 0x1d4ac 0x1d4ae - 0x1d4b5 0x1d4d0 - 0x1d4e9
+UPPER 0x1d504 0x1d505 0x1d507 - 0x1d50a 0x1d50d - 0x1d514
+UPPER 0x1d516 - 0x1d51c 0x1d538 0x1d539 0x1d53b - 0x1d53e
+UPPER 0x1d540 - 0x1d544 0x1d546 0x1d54a - 0x1d550 0x1d56c - 0x1d585
+UPPER 0x1d5a0 - 0x1d5b9 0x1d5d4 - 0x1d5ed 0x1d608 - 0x1d621
+UPPER 0x1d63c - 0x1d655 0x1d670 - 0x1d689 0x1d6a8 - 0x1d6c0
+UPPER 0x1d6e2 - 0x1d6fa 0x1d71c - 0x1d734 0x1d756 - 0x1d76e
+UPPER 0x1d790 - 0x1d7a8
+PRINT 0x1d400 - 0x1d454 0x1d456 - 0x1d49c 0x1d49e 0x1d49f
+PRINT 0x1d4a2 0x1d4a5 0x1d4a6 0x1d4a9 - 0x1d4ac 0x1d4ae - 0x1d4b9
+PRINT 0x1d4bb 0x1d4bd - 0x1d4c0 0x1d4c2 0x1d4c3 0x1d4c5 - 0x1d505
+PRINT 0x1d507 - 0x1d50a 0x1d50d - 0x1d514 0x1d516 - 0x1d51c
+PRINT 0x1d51e - 0x1d539 0x1d53b - 0x1d53e 0x1d540 - 0x1d544
+PRINT 0x1d546 0x1d54a - 0x1d550 0x1d552 - 0x1d6a3 0x1d6a8 - 0x1d7c9
+PRINT 0x1d7ce - 0x1d7ff
+SWIDTH1 0x1d400 - 0x1d454 0x1d456 - 0x1d49c 0x1d49e 0x1d49f
+SWIDTH1 0x1d4a2 0x1d4a5 0x1d4a6 0x1d4a9 - 0x1d4ac 0x1d4ae - 0x1d4b9
+SWIDTH1 0x1d4bb 0x1d4bd - 0x1d4c0 0x1d4c2 0x1d4c3 0x1d4c5 - 0x1d505
+SWIDTH1 0x1d507 - 0x1d50a 0x1d50d - 0x1d514 0x1d516 - 0x1d51c
+SWIDTH1 0x1d51e - 0x1d539 0x1d53b - 0x1d53e 0x1d540 - 0x1d544
+SWIDTH1 0x1d546 0x1d54a - 0x1d550 0x1d552 - 0x1d6a3 0x1d6a8 - 0x1d7c9
+SWIDTH1 0x1d7ce - 0x1d7ff
+
+
+/*
+ * U+20000 - U+2A6DF : CJK Unified Ideographs Extension B
+ */
+
+GRAPH 0x20000 - 0x2a6d6
+PRINT 0x20000 - 0x2a6d6
+IDEOGRAM 0x20000 - 0x2a6d6
+SWIDTH2 0x20000 - 0x2a6d6
+
+
+/*
+ * U+2F800 - U+2FA1F : CJK Compatibility Ideographs Supplement
+ */
+
+GRAPH 0x2f800 - 0x2fa1d
+PRINT 0x2f800 - 0x2fa1d
+IDEOGRAM 0x2f800 - 0x2fa1d
+SWIDTH2 0x2f800 - 0x2fa1d
+
+
+/*
+ * U+E0000 - U+E007F : Tags
+ */
+
+CONTROL 0xe0001 0xe0020 - 0xe007f
+
+
+/*
+ * U+F0000 - U+FFFFF : Supplementary Private Use Area-A
+ */
+
+GRAPH 0xf0000 - 0xffffd
+PRINT 0xf0000 - 0xffffd
+SWIDTH1 0xf0000 - 0xffffd
+
+
+/*
+ * U+100000 - U+10FFFF : Supplementary Private Use Area-B
+ */
+
+GRAPH 0x100000 - 0x10fffd
+PRINT 0x100000 - 0x10fffd
+SWIDTH1 0x100000 - 0x10fffd
OpenPOWER on IntegriCloud