1 diff -Naur libiconv.old/lib/aliases.gperf libiconv/lib/aliases.gperf
2 --- libiconv.old/lib/aliases.gperf 2003-05-22 22:17:15.000000000 +0200
3 +++ libiconv/lib/aliases.gperf 2005-08-04 18:54:43.000000000 +0200
10 ISO-10646-UCS-2, ei_ucs2
12 diff -Naur libiconv.old/lib/aliases.h libiconv/lib/aliases.h
13 --- libiconv.old/lib/aliases.h 2003-05-22 22:17:17.000000000 +0200
14 +++ libiconv/lib/aliases.h 2005-08-04 18:54:43.000000000 +0200
16 -/* ANSI-C code produced by gperf version 3.0 */
17 +/* ANSI-C code produced by gperf version 3.0.1 */
18 /* Command-line: gperf -m 10 lib/aliases.gperf */
19 /* Computed positions: -k'1,3-11,$' */
22 #line 1 "lib/aliases.gperf"
23 struct alias { int name; unsigned int encoding_index; };
25 -#define TOTAL_KEYWORDS 324
26 +#define TOTAL_KEYWORDS 325
27 #define MIN_WORD_LENGTH 2
28 #define MAX_WORD_LENGTH 45
29 #define MIN_HASH_VALUE 15
31 880, 880, 880, 880, 880, 880, 880, 880, 880, 880,
32 880, 880, 880, 880, 880, 880, 880, 880, 880, 880,
33 880, 880, 880, 880, 880, 880, 880, 880, 880, 880,
34 - 880, 880, 880, 880, 880, 6, 69, 880, 44, 5,
35 - 6, 18, 60, 9, 8, 50, 14, 13, 271, 880,
36 + 880, 880, 880, 880, 880, 6, 142, 880, 44, 5,
37 + 6, 18, 60, 9, 8, 50, 14, 13, 291, 880,
38 880, 880, 880, 880, 880, 107, 152, 5, 29, 7,
39 - 43, 112, 42, 5, 341, 106, 10, 158, 8, 5,
40 - 6, 880, 61, 38, 98, 152, 194, 112, 30, 10,
41 + 205, 112, 42, 5, 341, 106, 10, 158, 8, 5,
42 + 6, 880, 61, 38, 98, 152, 110, 112, 30, 10,
43 6, 880, 880, 880, 880, 60, 880, 880, 880, 880,
44 880, 880, 880, 880, 880, 880, 880, 880, 880, 880,
45 880, 880, 880, 880, 880, 880, 880, 880, 880, 880,
47 char stringpool_str171[sizeof("MAC")];
48 char stringpool_str172[sizeof("ISO_8859-3")];
49 char stringpool_str173[sizeof("ISO-IR-109")];
50 + char stringpool_str174[sizeof("VISCII")];
51 char stringpool_str175[sizeof("ISO8859-7")];
52 char stringpool_str176[sizeof("ISO-8859-10")];
53 char stringpool_str177[sizeof("CSASCII")];
55 char stringpool_str179[sizeof("ISO-IR-179")];
56 char stringpool_str182[sizeof("ISO-8859-7")];
57 char stringpool_str184[sizeof("ISO-IR-203")];
58 + char stringpool_str186[sizeof("CSVISCII")];
59 char stringpool_str189[sizeof("ISO-IR-149")];
60 char stringpool_str190[sizeof("MS-EE")];
61 char stringpool_str191[sizeof("ISO-IR-148")];
63 char stringpool_str222[sizeof("ISO-IR-14")];
64 char stringpool_str225[sizeof("ELOT_928")];
65 char stringpool_str227[sizeof("LATIN7")];
66 - char stringpool_str228[sizeof("UTF-16")];
67 + char stringpool_str228[sizeof("TCVN")];
68 char stringpool_str230[sizeof("ISO_8859-10")];
69 char stringpool_str232[sizeof("CSUNICODE")];
70 char stringpool_str233[sizeof("UCS-2LE")];
71 - char stringpool_str234[sizeof("UTF-8")];
72 char stringpool_str235[sizeof("ISO-IR-100")];
73 char stringpool_str236[sizeof("ISO_8859-7")];
74 - char stringpool_str237[sizeof("UTF-32")];
75 char stringpool_str238[sizeof("CHAR")];
76 char stringpool_str241[sizeof("UNICODE-1-1")];
77 char stringpool_str242[sizeof("CSUNICODE11")];
78 char stringpool_str244[sizeof("TIS620")];
79 char stringpool_str245[sizeof("EUCKR")];
80 - char stringpool_str246[sizeof("UTF-16LE")];
81 char stringpool_str247[sizeof("LATIN4")];
82 char stringpool_str250[sizeof("KSC_5601")];
83 char stringpool_str251[sizeof("TIS-620")];
84 char stringpool_str252[sizeof("EUC-KR")];
85 char stringpool_str254[sizeof("IBM-CP1133")];
86 char stringpool_str256[sizeof("ISO_8859-4")];
87 - char stringpool_str257[sizeof("UTF-32LE")];
88 - char stringpool_str258[sizeof("VISCII")];
89 char stringpool_str259[sizeof("KOI8-R")];
90 char stringpool_str262[sizeof("ISO_8859-14")];
91 char stringpool_str264[sizeof("CSKOI8R")];
92 char stringpool_str266[sizeof("GREEK8")];
93 char stringpool_str267[sizeof("MS-CYRL")];
94 - char stringpool_str270[sizeof("CSVISCII")];
95 char stringpool_str280[sizeof("IBM850")];
96 char stringpool_str283[sizeof("ISO-IR-144")];
97 char stringpool_str286[sizeof("BIG5")];
99 char stringpool_str303[sizeof("KOREAN")];
100 char stringpool_str304[sizeof("CSISOLATIN2")];
101 char stringpool_str305[sizeof("CN-BIG5")];
102 - char stringpool_str306[sizeof("UTF-7")];
103 + char stringpool_str307[sizeof("TCVN-5712")];
104 char stringpool_str308[sizeof("CSISOLATIN6")];
105 char stringpool_str309[sizeof("CSISOLATINCYRILLIC")];
106 char stringpool_str310[sizeof("CSISOLATIN5")];
107 - char stringpool_str312[sizeof("TCVN")];
108 - char stringpool_str315[sizeof("TIS620.2529-1")];
109 + char stringpool_str312[sizeof("TCVN5712-1")];
110 char stringpool_str318[sizeof("CSGB2312")];
111 char stringpool_str320[sizeof("ISO-10646-UCS-2")];
112 char stringpool_str321[sizeof("UCS-4")];
113 @@ -301,12 +296,12 @@
114 char stringpool_str328[sizeof("CSISOLATIN3")];
115 char stringpool_str329[sizeof("ISO646-US")];
116 char stringpool_str331[sizeof("US-ASCII")];
117 - char stringpool_str332[sizeof("TIS620.2533-1")];
118 char stringpool_str333[sizeof("KOI8-T")];
119 char stringpool_str334[sizeof("MS-ANSI")];
120 char stringpool_str335[sizeof("KS_C_5601-1989")];
121 char stringpool_str336[sizeof("GB_1988-80")];
122 char stringpool_str339[sizeof("EUCTW")];
123 + char stringpool_str342[sizeof("VISCII1.1-1")];
124 char stringpool_str343[sizeof("GREEK")];
125 char stringpool_str346[sizeof("EUC-TW")];
126 char stringpool_str347[sizeof("WINDOWS-1251")];
128 char stringpool_str349[sizeof("JP")];
129 char stringpool_str350[sizeof("WINDOWS-1256")];
130 char stringpool_str351[sizeof("WINDOWS-1255")];
131 - char stringpool_str353[sizeof("VISCII1.1-1")];
132 char stringpool_str354[sizeof("CSISO2022KR")];
133 char stringpool_str356[sizeof("WINDOWS-1258")];
134 char stringpool_str360[sizeof("WINDOWS-1253")];
136 char stringpool_str368[sizeof("ROMAN8")];
137 char stringpool_str369[sizeof("HZ-GB-2312")];
138 char stringpool_str370[sizeof("EUCJP")];
139 - char stringpool_str371[sizeof("TIS620.2533-0")];
140 char stringpool_str372[sizeof("KS_C_5601-1987")];
141 char stringpool_str373[sizeof("MACICELAND")];
142 char stringpool_str374[sizeof("ISO-10646-UCS-4")];
143 @@ -331,76 +324,81 @@
144 char stringpool_str377[sizeof("EUC-JP")];
145 char stringpool_str386[sizeof("WINDOWS-1250")];
146 char stringpool_str387[sizeof("ARABIC")];
147 - char stringpool_str388[sizeof("UTF-16BE")];
148 - char stringpool_str391[sizeof("TCVN-5712")];
149 + char stringpool_str388[sizeof("TIS620.2529-1")];
150 + char stringpool_str390[sizeof("UTF-16")];
151 char stringpool_str392[sizeof("WINDOWS-1257")];
152 char stringpool_str394[sizeof("CSPC862LATINHEBREW")];
153 - char stringpool_str396[sizeof("TCVN5712-1")];
154 - char stringpool_str399[sizeof("UTF-32BE")];
155 + char stringpool_str396[sizeof("UTF-8")];
156 + char stringpool_str399[sizeof("UTF-32")];
157 char stringpool_str402[sizeof("WINDOWS-1254")];
158 char stringpool_str404[sizeof("CSEUCKR")];
159 + char stringpool_str405[sizeof("TIS620.2533-1")];
160 char stringpool_str406[sizeof("ASMO-708")];
161 + char stringpool_str408[sizeof("UTF-16LE")];
162 char stringpool_str409[sizeof("CSISOLATINARABIC")];
163 char stringpool_str410[sizeof("MACINTOSH")];
164 char stringpool_str411[sizeof("UCS-2-INTERNAL")];
165 char stringpool_str412[sizeof("CSISOLATIN4")];
166 char stringpool_str416[sizeof("ECMA-114")];
167 char stringpool_str418[sizeof("CN-GB-ISOIR165")];
168 - char stringpool_str420[sizeof("ANSI_X3.4-1986")];
169 + char stringpool_str419[sizeof("UTF-32LE")];
170 char stringpool_str421[sizeof("CSISO57GB1988")];
171 char stringpool_str423[sizeof("CSISO58GB231280")];
172 char stringpool_str424[sizeof("HP-ROMAN8")];
173 - char stringpool_str426[sizeof("ANSI_X3.4-1968")];
174 char stringpool_str427[sizeof("MACTHAI")];
175 char stringpool_str429[sizeof("UCS-4BE")];
176 char stringpool_str430[sizeof("CSHPROMAN8")];
177 char stringpool_str432[sizeof("CN-GB")];
178 char stringpool_str434[sizeof("UNICODELITTLE")];
179 - char stringpool_str435[sizeof("ISO_8859-5:1988")];
180 - char stringpool_str438[sizeof("ISO_8859-9:1989")];
181 - char stringpool_str440[sizeof("ISO_8859-8:1988")];
182 char stringpool_str441[sizeof("KOI8-U")];
183 - char stringpool_str444[sizeof("ISO_8859-3:1988")];
184 + char stringpool_str444[sizeof("TIS620.2533-0")];
185 char stringpool_str448[sizeof("ISO-2022-JP")];
186 char stringpool_str449[sizeof("ISO-2022-JP-1")];
187 char stringpool_str450[sizeof("ISO-2022-JP-2")];
188 char stringpool_str451[sizeof("CSISOLATINHEBREW")];
189 char stringpool_str454[sizeof("ISO646-JP")];
190 + char stringpool_str455[sizeof("ISO_8859-5:1988")];
191 char stringpool_str457[sizeof("EXTENDED_UNIX_CODE_PACKED_FORMAT_FOR_JAPANESE")];
192 + char stringpool_str458[sizeof("ISO_8859-9:1989")];
193 + char stringpool_str460[sizeof("ISO_8859-8:1988")];
194 + char stringpool_str464[sizeof("ISO_8859-3:1988")];
195 char stringpool_str465[sizeof("UCS-4-INTERNAL")];
196 - char stringpool_str467[sizeof("ISO_8859-1:1987")];
197 - char stringpool_str468[sizeof("ISO_8859-2:1987")];
198 - char stringpool_str470[sizeof("ISO_8859-6:1987")];
199 + char stringpool_str468[sizeof("UTF-7")];
200 char stringpool_str479[sizeof("CSISO2022JP")];
201 char stringpool_str480[sizeof("CSISO2022JP2")];
202 - char stringpool_str486[sizeof("ISO_8859-4:1988")];
203 + char stringpool_str485[sizeof("ISO_646.IRV:1991")];
204 + char stringpool_str487[sizeof("ISO_8859-1:1987")];
205 + char stringpool_str488[sizeof("ISO_8859-2:1987")];
206 char stringpool_str489[sizeof("MACCENTRALEUROPE")];
207 + char stringpool_str490[sizeof("ISO_8859-6:1987")];
208 char stringpool_str492[sizeof("HEBREW")];
209 + char stringpool_str493[sizeof("ANSI_X3.4-1986")];
210 char stringpool_str494[sizeof("MS-HEBR")];
211 - char stringpool_str496[sizeof("ISO_646.IRV:1991")];
212 char stringpool_str498[sizeof("CSEUCTW")];
213 + char stringpool_str499[sizeof("ANSI_X3.4-1968")];
214 char stringpool_str503[sizeof("KOI8-RU")];
215 char stringpool_str505[sizeof("WINDOWS-874")];
216 + char stringpool_str506[sizeof("ISO_8859-4:1988")];
217 char stringpool_str508[sizeof("JIS0208")];
218 char stringpool_str509[sizeof("GEORGIAN-PS")];
219 - char stringpool_str512[sizeof("ISO_8859-7:1987")];
220 char stringpool_str514[sizeof("CSISOLATINGREEK")];
221 char stringpool_str515[sizeof("JIS_C6226-1983")];
222 char stringpool_str518[sizeof("MACROMAN")];
223 char stringpool_str519[sizeof("UCS-2-SWAPPED")];
224 char stringpool_str524[sizeof("CSMACINTOSH")];
225 - char stringpool_str527[sizeof("BIGFIVE")];
226 char stringpool_str528[sizeof("CSISO159JISX02121990")];
227 char stringpool_str529[sizeof("CSISO14JISC6220RO")];
228 char stringpool_str530[sizeof("CSPC850MULTILINGUAL")];
229 - char stringpool_str534[sizeof("BIG-FIVE")];
230 + char stringpool_str532[sizeof("ISO_8859-7:1987")];
231 char stringpool_str541[sizeof("JIS_C6220-1969-RO")];
232 char stringpool_str545[sizeof("JIS_X0212")];
233 char stringpool_str549[sizeof("BIG5HKSCS")];
234 + char stringpool_str550[sizeof("UTF-16BE")];
235 char stringpool_str553[sizeof("JISX0201-1976")];
236 char stringpool_str554[sizeof("GEORGIAN-ACADEMY")];
237 char stringpool_str556[sizeof("BIG5-HKSCS")];
238 char stringpool_str560[sizeof("CSISO87JISX0208")];
239 + char stringpool_str561[sizeof("UTF-32BE")];
240 char stringpool_str570[sizeof("MACGREEK")];
241 char stringpool_str571[sizeof("MS-GREEK")];
242 char stringpool_str573[sizeof("UCS-4-SWAPPED")];
243 @@ -410,25 +408,28 @@
244 char stringpool_str594[sizeof("UNICODEBIG")];
245 char stringpool_str599[sizeof("JIS_X0212-1990")];
246 char stringpool_str600[sizeof("JIS_X0208")];
247 + char stringpool_str605[sizeof("BIGFIVE")];
248 + char stringpool_str612[sizeof("BIG-FIVE")];
249 char stringpool_str614[sizeof("MACARABIC")];
250 - char stringpool_str619[sizeof("CSHALFWIDTHKATAKANA")];
251 char stringpool_str620[sizeof("JIS_X0208-1983")];
252 - char stringpool_str621[sizeof("SHIFT-JIS")];
253 + char stringpool_str621[sizeof("TCVN5712-1:1993")];
254 char stringpool_str626[sizeof("MACUKRAINE")];
255 - char stringpool_str635[sizeof("CSEUCPKDFMTJAPANESE")];
256 char stringpool_str646[sizeof("JIS_X0208-1990")];
257 - char stringpool_str663[sizeof("CSSHIFTJIS")];
258 - char stringpool_str664[sizeof("JIS_X0212.1990-0")];
259 char stringpool_str665[sizeof("MACHEBREW")];
260 - char stringpool_str675[sizeof("SHIFT_JIS")];
261 - char stringpool_str685[sizeof("TCVN5712-1:1993")];
262 + char stringpool_str667[sizeof("UTF-8-MAC")];
263 + char stringpool_str669[sizeof("JAVA")];
264 char stringpool_str694[sizeof("MS-TURK")];
265 char stringpool_str717[sizeof("MACTURKISH")];
266 char stringpool_str731[sizeof("MACROMANIA")];
267 + char stringpool_str737[sizeof("JIS_X0212.1990-0")];
268 char stringpool_str750[sizeof("MS-ARAB")];
269 - char stringpool_str753[sizeof("JAVA")];
270 + char stringpool_str781[sizeof("CSHALFWIDTHKATAKANA")];
271 + char stringpool_str783[sizeof("SHIFT-JIS")];
272 + char stringpool_str797[sizeof("CSEUCPKDFMTJAPANESE")];
273 char stringpool_str798[sizeof("MS_KANJI")];
274 char stringpool_str799[sizeof("JOHAB")];
275 + char stringpool_str825[sizeof("CSSHIFTJIS")];
276 + char stringpool_str837[sizeof("SHIFT_JIS")];
277 char stringpool_str879[sizeof("WINBALTRIM")];
279 static const struct stringpool_t stringpool_contents =
296 @@ -564,34 +567,28 @@
332 @@ -610,12 +607,11 @@
339 "CSISOLATINCYRILLIC",
347 @@ -628,12 +624,12 @@
377 @@ -658,76 +652,81 @@
386 "CSPC862LATINHEBREW",
425 "EXTENDED_UNIX_CODE_PACKED_FORMAT_FOR_JAPANESE",
437 + "ISO_646.IRV:1991",
445 - "ISO_646.IRV:1991",
460 "CSISO159JISX02121990",
462 "CSPC850MULTILINGUAL",
477 @@ -737,25 +736,28 @@
484 - "CSHALFWIDTHKATAKANA",
489 - "CSEUCPKDFMTJAPANESE",
492 - "JIS_X0212.1990-0",
501 + "JIS_X0212.1990-0",
504 + "CSHALFWIDTHKATAKANA",
506 + "CSEUCPKDFMTJAPANESE",
513 #define stringpool ((const char *) &stringpool_contents)
514 @@ -764,820 +766,830 @@
516 {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
517 {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
518 -#line 271 "lib/aliases.gperf"
519 +#line 272 "lib/aliases.gperf"
520 {(int)(long)&((struct stringpool_t *)0)->stringpool_str15, ei_iso646_cn},
522 -#line 60 "lib/aliases.gperf"
523 +#line 61 "lib/aliases.gperf"
524 {(int)(long)&((struct stringpool_t *)0)->stringpool_str17, ei_iso8859_1},
525 -#line 68 "lib/aliases.gperf"
526 +#line 69 "lib/aliases.gperf"
527 {(int)(long)&((struct stringpool_t *)0)->stringpool_str18, ei_iso8859_2},
529 -#line 133 "lib/aliases.gperf"
530 +#line 134 "lib/aliases.gperf"
531 {(int)(long)&((struct stringpool_t *)0)->stringpool_str20, ei_iso8859_10},
532 -#line 125 "lib/aliases.gperf"
533 +#line 126 "lib/aliases.gperf"
534 {(int)(long)&((struct stringpool_t *)0)->stringpool_str21, ei_iso8859_9},
535 {-1}, {-1}, {-1}, {-1},
536 -#line 147 "lib/aliases.gperf"
537 +#line 148 "lib/aliases.gperf"
538 {(int)(long)&((struct stringpool_t *)0)->stringpool_str26, ei_iso8859_14},
540 -#line 196 "lib/aliases.gperf"
541 +#line 197 "lib/aliases.gperf"
542 {(int)(long)&((struct stringpool_t *)0)->stringpool_str29, ei_cp862},
543 -#line 76 "lib/aliases.gperf"
544 +#line 77 "lib/aliases.gperf"
545 {(int)(long)&((struct stringpool_t *)0)->stringpool_str30, ei_iso8859_3},
547 -#line 200 "lib/aliases.gperf"
548 +#line 201 "lib/aliases.gperf"
549 {(int)(long)&((struct stringpool_t *)0)->stringpool_str33, ei_cp866},
550 -#line 51 "lib/aliases.gperf"
551 +#line 52 "lib/aliases.gperf"
552 {(int)(long)&((struct stringpool_t *)0)->stringpool_str34, ei_c99},
554 -#line 301 "lib/aliases.gperf"
555 +#line 302 "lib/aliases.gperf"
556 {(int)(long)&((struct stringpool_t *)0)->stringpool_str38, ei_euc_cn},
558 -#line 167 "lib/aliases.gperf"
559 +#line 168 "lib/aliases.gperf"
560 {(int)(long)&((struct stringpool_t *)0)->stringpool_str41, ei_cp1251},
562 -#line 170 "lib/aliases.gperf"
563 +#line 171 "lib/aliases.gperf"
564 {(int)(long)&((struct stringpool_t *)0)->stringpool_str43, ei_cp1252},
565 -#line 194 "lib/aliases.gperf"
566 +#line 195 "lib/aliases.gperf"
567 {(int)(long)&((struct stringpool_t *)0)->stringpool_str44, ei_cp862},
568 -#line 300 "lib/aliases.gperf"
569 +#line 301 "lib/aliases.gperf"
570 {(int)(long)&((struct stringpool_t *)0)->stringpool_str45, ei_euc_cn},
572 -#line 182 "lib/aliases.gperf"
573 +#line 183 "lib/aliases.gperf"
574 {(int)(long)&((struct stringpool_t *)0)->stringpool_str47, ei_cp1256},
575 -#line 198 "lib/aliases.gperf"
576 +#line 199 "lib/aliases.gperf"
577 {(int)(long)&((struct stringpool_t *)0)->stringpool_str48, ei_cp866},
578 -#line 179 "lib/aliases.gperf"
579 +#line 180 "lib/aliases.gperf"
580 {(int)(long)&((struct stringpool_t *)0)->stringpool_str49, ei_cp1255},
581 -#line 311 "lib/aliases.gperf"
582 +#line 312 "lib/aliases.gperf"
583 {(int)(long)&((struct stringpool_t *)0)->stringpool_str50, ei_hz},
585 -#line 331 "lib/aliases.gperf"
586 +#line 332 "lib/aliases.gperf"
587 {(int)(long)&((struct stringpool_t *)0)->stringpool_str52, ei_johab},
588 -#line 294 "lib/aliases.gperf"
589 +#line 295 "lib/aliases.gperf"
590 {(int)(long)&((struct stringpool_t *)0)->stringpool_str53, ei_cp932},
592 -#line 57 "lib/aliases.gperf"
593 +#line 58 "lib/aliases.gperf"
594 {(int)(long)&((struct stringpool_t *)0)->stringpool_str55, ei_iso8859_1},
596 -#line 306 "lib/aliases.gperf"
597 +#line 307 "lib/aliases.gperf"
598 {(int)(long)&((struct stringpool_t *)0)->stringpool_str57, ei_ces_gbk},
599 -#line 265 "lib/aliases.gperf"
600 +#line 266 "lib/aliases.gperf"
601 {(int)(long)&((struct stringpool_t *)0)->stringpool_str58, ei_jisx0212},
602 -#line 188 "lib/aliases.gperf"
603 +#line 189 "lib/aliases.gperf"
604 {(int)(long)&((struct stringpool_t *)0)->stringpool_str59, ei_cp1258},
606 -#line 140 "lib/aliases.gperf"
607 +#line 141 "lib/aliases.gperf"
608 {(int)(long)&((struct stringpool_t *)0)->stringpool_str62, ei_iso8859_13},
609 {-1}, {-1}, {-1}, {-1},
610 -#line 173 "lib/aliases.gperf"
611 +#line 174 "lib/aliases.gperf"
612 {(int)(long)&((struct stringpool_t *)0)->stringpool_str67, ei_cp1253},
613 {-1}, {-1}, {-1}, {-1},
614 -#line 84 "lib/aliases.gperf"
615 +#line 85 "lib/aliases.gperf"
616 {(int)(long)&((struct stringpool_t *)0)->stringpool_str72, ei_iso8859_4},
618 -#line 227 "lib/aliases.gperf"
619 +#line 228 "lib/aliases.gperf"
620 {(int)(long)&((struct stringpool_t *)0)->stringpool_str75, ei_cp1133},
622 -#line 219 "lib/aliases.gperf"
623 +#line 220 "lib/aliases.gperf"
624 {(int)(long)&((struct stringpool_t *)0)->stringpool_str77, ei_hp_roman8},
625 {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
626 -#line 276 "lib/aliases.gperf"
627 +#line 277 "lib/aliases.gperf"
628 {(int)(long)&((struct stringpool_t *)0)->stringpool_str84, ei_gb2312},
629 -#line 62 "lib/aliases.gperf"
630 +#line 63 "lib/aliases.gperf"
631 {(int)(long)&((struct stringpool_t *)0)->stringpool_str85, ei_iso8859_1},
633 -#line 70 "lib/aliases.gperf"
634 +#line 71 "lib/aliases.gperf"
635 {(int)(long)&((struct stringpool_t *)0)->stringpool_str87, ei_iso8859_2},
637 -#line 102 "lib/aliases.gperf"
638 +#line 103 "lib/aliases.gperf"
639 {(int)(long)&((struct stringpool_t *)0)->stringpool_str91, ei_iso8859_6},
640 -#line 53 "lib/aliases.gperf"
641 +#line 54 "lib/aliases.gperf"
642 {(int)(long)&((struct stringpool_t *)0)->stringpool_str92, ei_iso8859_1},
643 -#line 93 "lib/aliases.gperf"
644 +#line 94 "lib/aliases.gperf"
645 {(int)(long)&((struct stringpool_t *)0)->stringpool_str93, ei_iso8859_5},
646 -#line 63 "lib/aliases.gperf"
647 +#line 64 "lib/aliases.gperf"
648 {(int)(long)&((struct stringpool_t *)0)->stringpool_str94, ei_iso8859_2},
649 -#line 252 "lib/aliases.gperf"
650 +#line 253 "lib/aliases.gperf"
651 {(int)(long)&((struct stringpool_t *)0)->stringpool_str95, ei_jisx0201},
653 -#line 159 "lib/aliases.gperf"
654 +#line 160 "lib/aliases.gperf"
655 {(int)(long)&((struct stringpool_t *)0)->stringpool_str97, ei_iso8859_16},
656 -#line 94 "lib/aliases.gperf"
657 +#line 95 "lib/aliases.gperf"
658 {(int)(long)&((struct stringpool_t *)0)->stringpool_str98, ei_iso8859_6},
659 -#line 154 "lib/aliases.gperf"
660 +#line 155 "lib/aliases.gperf"
661 {(int)(long)&((struct stringpool_t *)0)->stringpool_str99, ei_iso8859_15},
662 -#line 87 "lib/aliases.gperf"
663 +#line 88 "lib/aliases.gperf"
664 {(int)(long)&((struct stringpool_t *)0)->stringpool_str100, ei_iso8859_5},
665 -#line 127 "lib/aliases.gperf"
666 +#line 128 "lib/aliases.gperf"
667 {(int)(long)&((struct stringpool_t *)0)->stringpool_str101, ei_iso8859_9},
669 -#line 119 "lib/aliases.gperf"
670 +#line 120 "lib/aliases.gperf"
671 {(int)(long)&((struct stringpool_t *)0)->stringpool_str103, ei_iso8859_8},
672 -#line 155 "lib/aliases.gperf"
673 +#line 156 "lib/aliases.gperf"
674 {(int)(long)&((struct stringpool_t *)0)->stringpool_str104, ei_iso8859_16},
675 -#line 192 "lib/aliases.gperf"
676 +#line 193 "lib/aliases.gperf"
677 {(int)(long)&((struct stringpool_t *)0)->stringpool_str105, ei_cp850},
678 -#line 150 "lib/aliases.gperf"
679 +#line 151 "lib/aliases.gperf"
680 {(int)(long)&((struct stringpool_t *)0)->stringpool_str106, ei_iso8859_15},
682 -#line 120 "lib/aliases.gperf"
683 +#line 121 "lib/aliases.gperf"
684 {(int)(long)&((struct stringpool_t *)0)->stringpool_str108, ei_iso8859_9},
685 -#line 328 "lib/aliases.gperf"
686 +#line 329 "lib/aliases.gperf"
687 {(int)(long)&((struct stringpool_t *)0)->stringpool_str109, ei_cp949},
688 -#line 113 "lib/aliases.gperf"
689 +#line 114 "lib/aliases.gperf"
690 {(int)(long)&((struct stringpool_t *)0)->stringpool_str110, ei_iso8859_8},
691 -#line 78 "lib/aliases.gperf"
692 +#line 79 "lib/aliases.gperf"
693 {(int)(long)&((struct stringpool_t *)0)->stringpool_str111, ei_iso8859_3},
694 #line 16 "lib/aliases.gperf"
695 {(int)(long)&((struct stringpool_t *)0)->stringpool_str112, ei_ascii},
696 -#line 258 "lib/aliases.gperf"
697 +#line 259 "lib/aliases.gperf"
698 {(int)(long)&((struct stringpool_t *)0)->stringpool_str113, ei_jisx0208},
699 -#line 91 "lib/aliases.gperf"
700 +#line 92 "lib/aliases.gperf"
701 {(int)(long)&((struct stringpool_t *)0)->stringpool_str114, ei_iso8859_5},
703 -#line 308 "lib/aliases.gperf"
704 +#line 309 "lib/aliases.gperf"
705 {(int)(long)&((struct stringpool_t *)0)->stringpool_str116, ei_iso2022_cn},
706 -#line 141 "lib/aliases.gperf"
707 +#line 142 "lib/aliases.gperf"
708 {(int)(long)&((struct stringpool_t *)0)->stringpool_str117, ei_iso8859_13},
709 -#line 71 "lib/aliases.gperf"
710 +#line 72 "lib/aliases.gperf"
711 {(int)(long)&((struct stringpool_t *)0)->stringpool_str118, ei_iso8859_3},
712 -#line 164 "lib/aliases.gperf"
713 +#line 165 "lib/aliases.gperf"
714 {(int)(long)&((struct stringpool_t *)0)->stringpool_str119, ei_cp1250},
715 -#line 322 "lib/aliases.gperf"
716 +#line 323 "lib/aliases.gperf"
717 {(int)(long)&((struct stringpool_t *)0)->stringpool_str120, ei_cp950},
718 -#line 190 "lib/aliases.gperf"
719 +#line 191 "lib/aliases.gperf"
720 {(int)(long)&((struct stringpool_t *)0)->stringpool_str121, ei_cp850},
721 -#line 269 "lib/aliases.gperf"
722 +#line 270 "lib/aliases.gperf"
723 {(int)(long)&((struct stringpool_t *)0)->stringpool_str122, ei_iso646_cn},
724 -#line 291 "lib/aliases.gperf"
725 +#line 292 "lib/aliases.gperf"
726 {(int)(long)&((struct stringpool_t *)0)->stringpool_str123, ei_sjis},
727 -#line 136 "lib/aliases.gperf"
728 +#line 137 "lib/aliases.gperf"
729 {(int)(long)&((struct stringpool_t *)0)->stringpool_str124, ei_iso8859_13},
730 -#line 106 "lib/aliases.gperf"
731 +#line 107 "lib/aliases.gperf"
732 {(int)(long)&((struct stringpool_t *)0)->stringpool_str125, ei_iso8859_7},
733 -#line 158 "lib/aliases.gperf"
734 +#line 159 "lib/aliases.gperf"
735 {(int)(long)&((struct stringpool_t *)0)->stringpool_str126, ei_iso8859_16},
736 -#line 235 "lib/aliases.gperf"
737 +#line 236 "lib/aliases.gperf"
738 {(int)(long)&((struct stringpool_t *)0)->stringpool_str127, ei_tis620},
740 -#line 277 "lib/aliases.gperf"
741 +#line 278 "lib/aliases.gperf"
742 {(int)(long)&((struct stringpool_t *)0)->stringpool_str129, ei_isoir165},
744 -#line 185 "lib/aliases.gperf"
745 +#line 186 "lib/aliases.gperf"
746 {(int)(long)&((struct stringpool_t *)0)->stringpool_str131, ei_cp1257},
747 #line 13 "lib/aliases.gperf"
748 {(int)(long)&((struct stringpool_t *)0)->stringpool_str132, ei_ascii},
750 -#line 274 "lib/aliases.gperf"
751 +#line 275 "lib/aliases.gperf"
752 {(int)(long)&((struct stringpool_t *)0)->stringpool_str134, ei_gb2312},
754 #line 19 "lib/aliases.gperf"
755 {(int)(long)&((struct stringpool_t *)0)->stringpool_str136, ei_ascii},
756 -#line 59 "lib/aliases.gperf"
757 +#line 60 "lib/aliases.gperf"
758 {(int)(long)&((struct stringpool_t *)0)->stringpool_str137, ei_iso8859_1},
759 -#line 266 "lib/aliases.gperf"
760 +#line 267 "lib/aliases.gperf"
761 {(int)(long)&((struct stringpool_t *)0)->stringpool_str138, ei_jisx0212},
762 -#line 67 "lib/aliases.gperf"
763 +#line 68 "lib/aliases.gperf"
764 {(int)(long)&((struct stringpool_t *)0)->stringpool_str139, ei_iso8859_2},
766 -#line 145 "lib/aliases.gperf"
767 +#line 146 "lib/aliases.gperf"
768 {(int)(long)&((struct stringpool_t *)0)->stringpool_str142, ei_iso8859_14},
769 -#line 132 "lib/aliases.gperf"
770 +#line 133 "lib/aliases.gperf"
771 {(int)(long)&((struct stringpool_t *)0)->stringpool_str143, ei_iso8859_10},
773 -#line 124 "lib/aliases.gperf"
774 +#line 125 "lib/aliases.gperf"
775 {(int)(long)&((struct stringpool_t *)0)->stringpool_str145, ei_iso8859_9},
776 -#line 54 "lib/aliases.gperf"
777 +#line 55 "lib/aliases.gperf"
778 {(int)(long)&((struct stringpool_t *)0)->stringpool_str146, ei_iso8859_1},
779 -#line 309 "lib/aliases.gperf"
780 +#line 310 "lib/aliases.gperf"
781 {(int)(long)&((struct stringpool_t *)0)->stringpool_str147, ei_iso2022_cn},
782 -#line 64 "lib/aliases.gperf"
783 +#line 65 "lib/aliases.gperf"
784 {(int)(long)&((struct stringpool_t *)0)->stringpool_str148, ei_iso8859_2},
785 -#line 116 "lib/aliases.gperf"
786 +#line 117 "lib/aliases.gperf"
787 {(int)(long)&((struct stringpool_t *)0)->stringpool_str149, ei_iso8859_8},
789 -#line 176 "lib/aliases.gperf"
790 +#line 177 "lib/aliases.gperf"
791 {(int)(long)&((struct stringpool_t *)0)->stringpool_str151, ei_cp1254},
792 -#line 95 "lib/aliases.gperf"
793 +#line 96 "lib/aliases.gperf"
794 {(int)(long)&((struct stringpool_t *)0)->stringpool_str152, ei_iso8859_6},
796 -#line 88 "lib/aliases.gperf"
797 +#line 89 "lib/aliases.gperf"
798 {(int)(long)&((struct stringpool_t *)0)->stringpool_str154, ei_iso8859_5},
799 -#line 146 "lib/aliases.gperf"
800 +#line 147 "lib/aliases.gperf"
801 {(int)(long)&((struct stringpool_t *)0)->stringpool_str155, ei_iso8859_14},
803 -#line 66 "lib/aliases.gperf"
804 +#line 67 "lib/aliases.gperf"
805 {(int)(long)&((struct stringpool_t *)0)->stringpool_str157, ei_iso8859_2},
806 -#line 156 "lib/aliases.gperf"
807 +#line 157 "lib/aliases.gperf"
808 {(int)(long)&((struct stringpool_t *)0)->stringpool_str158, ei_iso8859_16},
809 -#line 302 "lib/aliases.gperf"
810 +#line 303 "lib/aliases.gperf"
811 {(int)(long)&((struct stringpool_t *)0)->stringpool_str159, ei_euc_cn},
812 -#line 151 "lib/aliases.gperf"
813 +#line 152 "lib/aliases.gperf"
814 {(int)(long)&((struct stringpool_t *)0)->stringpool_str160, ei_iso8859_15},
815 -#line 148 "lib/aliases.gperf"
816 +#line 149 "lib/aliases.gperf"
817 {(int)(long)&((struct stringpool_t *)0)->stringpool_str161, ei_iso8859_14},
818 -#line 121 "lib/aliases.gperf"
819 +#line 122 "lib/aliases.gperf"
820 {(int)(long)&((struct stringpool_t *)0)->stringpool_str162, ei_iso8859_9},
821 -#line 75 "lib/aliases.gperf"
822 +#line 76 "lib/aliases.gperf"
823 {(int)(long)&((struct stringpool_t *)0)->stringpool_str163, ei_iso8859_3},
824 -#line 114 "lib/aliases.gperf"
825 +#line 115 "lib/aliases.gperf"
826 {(int)(long)&((struct stringpool_t *)0)->stringpool_str164, ei_iso8859_8},
827 -#line 329 "lib/aliases.gperf"
828 +#line 330 "lib/aliases.gperf"
829 {(int)(long)&((struct stringpool_t *)0)->stringpool_str165, ei_cp949},
831 -#line 135 "lib/aliases.gperf"
832 +#line 136 "lib/aliases.gperf"
833 {(int)(long)&((struct stringpool_t *)0)->stringpool_str169, ei_iso8859_10},
834 -#line 152 "lib/aliases.gperf"
835 +#line 153 "lib/aliases.gperf"
836 {(int)(long)&((struct stringpool_t *)0)->stringpool_str170, ei_iso8859_15},
837 -#line 204 "lib/aliases.gperf"
838 +#line 205 "lib/aliases.gperf"
839 {(int)(long)&((struct stringpool_t *)0)->stringpool_str171, ei_mac_roman},
840 -#line 72 "lib/aliases.gperf"
841 +#line 73 "lib/aliases.gperf"
842 {(int)(long)&((struct stringpool_t *)0)->stringpool_str172, ei_iso8859_3},
843 -#line 74 "lib/aliases.gperf"
844 +#line 75 "lib/aliases.gperf"
845 {(int)(long)&((struct stringpool_t *)0)->stringpool_str173, ei_iso8859_3},
847 -#line 112 "lib/aliases.gperf"
848 +#line 239 "lib/aliases.gperf"
849 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str174, ei_viscii},
850 +#line 113 "lib/aliases.gperf"
851 {(int)(long)&((struct stringpool_t *)0)->stringpool_str175, ei_iso8859_7},
852 -#line 128 "lib/aliases.gperf"
853 +#line 129 "lib/aliases.gperf"
854 {(int)(long)&((struct stringpool_t *)0)->stringpool_str176, ei_iso8859_10},
855 #line 22 "lib/aliases.gperf"
856 {(int)(long)&((struct stringpool_t *)0)->stringpool_str177, ei_ascii},
857 -#line 137 "lib/aliases.gperf"
858 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str178, ei_iso8859_13},
859 #line 138 "lib/aliases.gperf"
860 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str178, ei_iso8859_13},
861 +#line 139 "lib/aliases.gperf"
862 {(int)(long)&((struct stringpool_t *)0)->stringpool_str179, ei_iso8859_13},
864 -#line 103 "lib/aliases.gperf"
865 +#line 104 "lib/aliases.gperf"
866 {(int)(long)&((struct stringpool_t *)0)->stringpool_str182, ei_iso8859_7},
868 -#line 153 "lib/aliases.gperf"
869 +#line 154 "lib/aliases.gperf"
870 {(int)(long)&((struct stringpool_t *)0)->stringpool_str184, ei_iso8859_15},
871 - {-1}, {-1}, {-1}, {-1},
872 -#line 282 "lib/aliases.gperf"
874 +#line 241 "lib/aliases.gperf"
875 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str186, ei_viscii},
877 +#line 283 "lib/aliases.gperf"
878 {(int)(long)&((struct stringpool_t *)0)->stringpool_str189, ei_ksc5601},
879 -#line 166 "lib/aliases.gperf"
880 +#line 167 "lib/aliases.gperf"
881 {(int)(long)&((struct stringpool_t *)0)->stringpool_str190, ei_cp1250},
882 -#line 123 "lib/aliases.gperf"
883 +#line 124 "lib/aliases.gperf"
884 {(int)(long)&((struct stringpool_t *)0)->stringpool_str191, ei_iso8859_9},
885 #line 21 "lib/aliases.gperf"
886 {(int)(long)&((struct stringpool_t *)0)->stringpool_str192, ei_ascii},
888 -#line 236 "lib/aliases.gperf"
889 +#line 237 "lib/aliases.gperf"
890 {(int)(long)&((struct stringpool_t *)0)->stringpool_str194, ei_cp874},
891 -#line 86 "lib/aliases.gperf"
892 +#line 87 "lib/aliases.gperf"
893 {(int)(long)&((struct stringpool_t *)0)->stringpool_str195, ei_iso8859_4},
894 -#line 82 "lib/aliases.gperf"
895 +#line 83 "lib/aliases.gperf"
896 {(int)(long)&((struct stringpool_t *)0)->stringpool_str196, ei_iso8859_4},
897 -#line 130 "lib/aliases.gperf"
898 +#line 131 "lib/aliases.gperf"
899 {(int)(long)&((struct stringpool_t *)0)->stringpool_str197, ei_iso8859_10},
901 -#line 157 "lib/aliases.gperf"
902 +#line 158 "lib/aliases.gperf"
903 {(int)(long)&((struct stringpool_t *)0)->stringpool_str199, ei_iso8859_16},
905 -#line 149 "lib/aliases.gperf"
906 +#line 150 "lib/aliases.gperf"
907 {(int)(long)&((struct stringpool_t *)0)->stringpool_str201, ei_iso8859_14},
908 -#line 79 "lib/aliases.gperf"
909 +#line 80 "lib/aliases.gperf"
910 {(int)(long)&((struct stringpool_t *)0)->stringpool_str202, ei_iso8859_4},
911 -#line 195 "lib/aliases.gperf"
912 +#line 196 "lib/aliases.gperf"
913 {(int)(long)&((struct stringpool_t *)0)->stringpool_str203, ei_cp862},
915 -#line 270 "lib/aliases.gperf"
916 +#line 271 "lib/aliases.gperf"
917 {(int)(long)&((struct stringpool_t *)0)->stringpool_str206, ei_iso646_cn},
918 -#line 199 "lib/aliases.gperf"
919 +#line 200 "lib/aliases.gperf"
920 {(int)(long)&((struct stringpool_t *)0)->stringpool_str207, ei_cp866},
921 -#line 142 "lib/aliases.gperf"
922 +#line 143 "lib/aliases.gperf"
923 {(int)(long)&((struct stringpool_t *)0)->stringpool_str208, ei_iso8859_14},
924 -#line 97 "lib/aliases.gperf"
925 +#line 98 "lib/aliases.gperf"
926 {(int)(long)&((struct stringpool_t *)0)->stringpool_str209, ei_iso8859_6},
927 -#line 310 "lib/aliases.gperf"
928 +#line 311 "lib/aliases.gperf"
929 {(int)(long)&((struct stringpool_t *)0)->stringpool_str210, ei_iso2022_cn_ext},
930 -#line 259 "lib/aliases.gperf"
931 +#line 260 "lib/aliases.gperf"
932 {(int)(long)&((struct stringpool_t *)0)->stringpool_str211, ei_jisx0208},
933 -#line 131 "lib/aliases.gperf"
934 +#line 132 "lib/aliases.gperf"
935 {(int)(long)&((struct stringpool_t *)0)->stringpool_str212, ei_iso8859_10},
936 -#line 24 "lib/aliases.gperf"
937 +#line 25 "lib/aliases.gperf"
938 {(int)(long)&((struct stringpool_t *)0)->stringpool_str213, ei_ucs2},
939 -#line 58 "lib/aliases.gperf"
940 +#line 59 "lib/aliases.gperf"
941 {(int)(long)&((struct stringpool_t *)0)->stringpool_str214, ei_iso8859_1},
942 {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
943 -#line 144 "lib/aliases.gperf"
944 +#line 145 "lib/aliases.gperf"
945 {(int)(long)&((struct stringpool_t *)0)->stringpool_str221, ei_iso8859_14},
946 -#line 247 "lib/aliases.gperf"
947 +#line 248 "lib/aliases.gperf"
948 {(int)(long)&((struct stringpool_t *)0)->stringpool_str222, ei_iso646_jp},
950 -#line 108 "lib/aliases.gperf"
951 +#line 109 "lib/aliases.gperf"
952 {(int)(long)&((struct stringpool_t *)0)->stringpool_str225, ei_iso8859_7},
954 -#line 139 "lib/aliases.gperf"
955 +#line 140 "lib/aliases.gperf"
956 {(int)(long)&((struct stringpool_t *)0)->stringpool_str227, ei_iso8859_13},
957 -#line 38 "lib/aliases.gperf"
958 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str228, ei_utf16},
959 +#line 242 "lib/aliases.gperf"
960 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str228, ei_tcvn},
962 -#line 129 "lib/aliases.gperf"
963 +#line 130 "lib/aliases.gperf"
964 {(int)(long)&((struct stringpool_t *)0)->stringpool_str230, ei_iso8859_10},
966 -#line 26 "lib/aliases.gperf"
967 +#line 27 "lib/aliases.gperf"
968 {(int)(long)&((struct stringpool_t *)0)->stringpool_str232, ei_ucs2},
969 -#line 31 "lib/aliases.gperf"
970 +#line 32 "lib/aliases.gperf"
971 {(int)(long)&((struct stringpool_t *)0)->stringpool_str233, ei_ucs2le},
972 -#line 23 "lib/aliases.gperf"
973 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str234, ei_utf8},
974 -#line 56 "lib/aliases.gperf"
976 +#line 57 "lib/aliases.gperf"
977 {(int)(long)&((struct stringpool_t *)0)->stringpool_str235, ei_iso8859_1},
978 -#line 104 "lib/aliases.gperf"
979 +#line 105 "lib/aliases.gperf"
980 {(int)(long)&((struct stringpool_t *)0)->stringpool_str236, ei_iso8859_7},
981 -#line 41 "lib/aliases.gperf"
982 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str237, ei_utf32},
983 -#line 334 "lib/aliases.gperf"
985 +#line 335 "lib/aliases.gperf"
986 {(int)(long)&((struct stringpool_t *)0)->stringpool_str238, ei_local_char},
988 -#line 29 "lib/aliases.gperf"
989 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str241, ei_ucs2be},
990 #line 30 "lib/aliases.gperf"
991 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str241, ei_ucs2be},
992 +#line 31 "lib/aliases.gperf"
993 {(int)(long)&((struct stringpool_t *)0)->stringpool_str242, ei_ucs2be},
995 -#line 230 "lib/aliases.gperf"
996 +#line 231 "lib/aliases.gperf"
997 {(int)(long)&((struct stringpool_t *)0)->stringpool_str244, ei_tis620},
998 -#line 326 "lib/aliases.gperf"
999 +#line 327 "lib/aliases.gperf"
1000 {(int)(long)&((struct stringpool_t *)0)->stringpool_str245, ei_euc_kr},
1001 -#line 40 "lib/aliases.gperf"
1002 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str246, ei_utf16le},
1003 -#line 83 "lib/aliases.gperf"
1005 +#line 84 "lib/aliases.gperf"
1006 {(int)(long)&((struct stringpool_t *)0)->stringpool_str247, ei_iso8859_4},
1008 -#line 279 "lib/aliases.gperf"
1009 +#line 280 "lib/aliases.gperf"
1010 {(int)(long)&((struct stringpool_t *)0)->stringpool_str250, ei_ksc5601},
1011 -#line 229 "lib/aliases.gperf"
1012 +#line 230 "lib/aliases.gperf"
1013 {(int)(long)&((struct stringpool_t *)0)->stringpool_str251, ei_tis620},
1014 -#line 325 "lib/aliases.gperf"
1015 +#line 326 "lib/aliases.gperf"
1016 {(int)(long)&((struct stringpool_t *)0)->stringpool_str252, ei_euc_kr},
1018 -#line 228 "lib/aliases.gperf"
1019 +#line 229 "lib/aliases.gperf"
1020 {(int)(long)&((struct stringpool_t *)0)->stringpool_str254, ei_cp1133},
1022 -#line 80 "lib/aliases.gperf"
1023 +#line 81 "lib/aliases.gperf"
1024 {(int)(long)&((struct stringpool_t *)0)->stringpool_str256, ei_iso8859_4},
1025 -#line 43 "lib/aliases.gperf"
1026 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str257, ei_utf32le},
1027 -#line 238 "lib/aliases.gperf"
1028 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str258, ei_viscii},
1029 -#line 160 "lib/aliases.gperf"
1031 +#line 161 "lib/aliases.gperf"
1032 {(int)(long)&((struct stringpool_t *)0)->stringpool_str259, ei_koi8_r},
1034 -#line 143 "lib/aliases.gperf"
1035 +#line 144 "lib/aliases.gperf"
1036 {(int)(long)&((struct stringpool_t *)0)->stringpool_str262, ei_iso8859_14},
1038 -#line 161 "lib/aliases.gperf"
1039 +#line 162 "lib/aliases.gperf"
1040 {(int)(long)&((struct stringpool_t *)0)->stringpool_str264, ei_koi8_r},
1042 -#line 109 "lib/aliases.gperf"
1043 +#line 110 "lib/aliases.gperf"
1044 {(int)(long)&((struct stringpool_t *)0)->stringpool_str266, ei_iso8859_7},
1045 -#line 169 "lib/aliases.gperf"
1046 +#line 170 "lib/aliases.gperf"
1047 {(int)(long)&((struct stringpool_t *)0)->stringpool_str267, ei_cp1251},
1049 -#line 240 "lib/aliases.gperf"
1050 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str270, ei_viscii},
1051 {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1052 -#line 191 "lib/aliases.gperf"
1054 +#line 192 "lib/aliases.gperf"
1055 {(int)(long)&((struct stringpool_t *)0)->stringpool_str280, ei_cp850},
1057 -#line 90 "lib/aliases.gperf"
1058 +#line 91 "lib/aliases.gperf"
1059 {(int)(long)&((struct stringpool_t *)0)->stringpool_str283, ei_iso8859_5},
1061 -#line 316 "lib/aliases.gperf"
1062 +#line 317 "lib/aliases.gperf"
1063 {(int)(long)&((struct stringpool_t *)0)->stringpool_str286, ei_ces_big5},
1064 -#line 37 "lib/aliases.gperf"
1065 +#line 38 "lib/aliases.gperf"
1066 {(int)(long)&((struct stringpool_t *)0)->stringpool_str287, ei_ucs4le},
1067 -#line 307 "lib/aliases.gperf"
1068 +#line 308 "lib/aliases.gperf"
1069 {(int)(long)&((struct stringpool_t *)0)->stringpool_str288, ei_gb18030},
1071 -#line 210 "lib/aliases.gperf"
1072 +#line 211 "lib/aliases.gperf"
1073 {(int)(long)&((struct stringpool_t *)0)->stringpool_str290, ei_mac_cyrillic},
1074 -#line 46 "lib/aliases.gperf"
1075 +#line 47 "lib/aliases.gperf"
1076 {(int)(long)&((struct stringpool_t *)0)->stringpool_str291, ei_utf7},
1077 -#line 45 "lib/aliases.gperf"
1078 +#line 46 "lib/aliases.gperf"
1079 {(int)(long)&((struct stringpool_t *)0)->stringpool_str292, ei_utf7},
1080 -#line 317 "lib/aliases.gperf"
1081 +#line 318 "lib/aliases.gperf"
1082 {(int)(long)&((struct stringpool_t *)0)->stringpool_str293, ei_ces_big5},
1084 #line 20 "lib/aliases.gperf"
1085 {(int)(long)&((struct stringpool_t *)0)->stringpool_str295, ei_ascii},
1086 -#line 231 "lib/aliases.gperf"
1087 +#line 232 "lib/aliases.gperf"
1088 {(int)(long)&((struct stringpool_t *)0)->stringpool_str296, ei_tis620},
1090 -#line 321 "lib/aliases.gperf"
1091 +#line 322 "lib/aliases.gperf"
1092 {(int)(long)&((struct stringpool_t *)0)->stringpool_str298, ei_ces_big5},
1093 -#line 221 "lib/aliases.gperf"
1094 +#line 222 "lib/aliases.gperf"
1095 {(int)(long)&((struct stringpool_t *)0)->stringpool_str299, ei_nextstep},
1097 -#line 283 "lib/aliases.gperf"
1098 +#line 284 "lib/aliases.gperf"
1099 {(int)(long)&((struct stringpool_t *)0)->stringpool_str301, ei_ksc5601},
1100 -#line 61 "lib/aliases.gperf"
1101 +#line 62 "lib/aliases.gperf"
1102 {(int)(long)&((struct stringpool_t *)0)->stringpool_str302, ei_iso8859_1},
1103 -#line 284 "lib/aliases.gperf"
1104 +#line 285 "lib/aliases.gperf"
1105 {(int)(long)&((struct stringpool_t *)0)->stringpool_str303, ei_ksc5601},
1106 -#line 69 "lib/aliases.gperf"
1107 +#line 70 "lib/aliases.gperf"
1108 {(int)(long)&((struct stringpool_t *)0)->stringpool_str304, ei_iso8859_2},
1109 -#line 320 "lib/aliases.gperf"
1110 +#line 321 "lib/aliases.gperf"
1111 {(int)(long)&((struct stringpool_t *)0)->stringpool_str305, ei_ces_big5},
1112 -#line 44 "lib/aliases.gperf"
1113 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str306, ei_utf7},
1115 -#line 134 "lib/aliases.gperf"
1116 +#line 243 "lib/aliases.gperf"
1117 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str307, ei_tcvn},
1118 +#line 135 "lib/aliases.gperf"
1119 {(int)(long)&((struct stringpool_t *)0)->stringpool_str308, ei_iso8859_10},
1120 -#line 92 "lib/aliases.gperf"
1121 +#line 93 "lib/aliases.gperf"
1122 {(int)(long)&((struct stringpool_t *)0)->stringpool_str309, ei_iso8859_5},
1123 -#line 126 "lib/aliases.gperf"
1124 +#line 127 "lib/aliases.gperf"
1125 {(int)(long)&((struct stringpool_t *)0)->stringpool_str310, ei_iso8859_9},
1127 -#line 241 "lib/aliases.gperf"
1128 +#line 244 "lib/aliases.gperf"
1129 {(int)(long)&((struct stringpool_t *)0)->stringpool_str312, ei_tcvn},
1131 -#line 232 "lib/aliases.gperf"
1132 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str315, ei_tis620},
1134 -#line 304 "lib/aliases.gperf"
1135 + {-1}, {-1}, {-1}, {-1}, {-1},
1136 +#line 305 "lib/aliases.gperf"
1137 {(int)(long)&((struct stringpool_t *)0)->stringpool_str318, ei_euc_cn},
1139 -#line 25 "lib/aliases.gperf"
1140 +#line 26 "lib/aliases.gperf"
1141 {(int)(long)&((struct stringpool_t *)0)->stringpool_str320, ei_ucs2},
1142 -#line 33 "lib/aliases.gperf"
1143 +#line 34 "lib/aliases.gperf"
1144 {(int)(long)&((struct stringpool_t *)0)->stringpool_str321, ei_ucs4},
1145 -#line 226 "lib/aliases.gperf"
1146 +#line 227 "lib/aliases.gperf"
1147 {(int)(long)&((struct stringpool_t *)0)->stringpool_str322, ei_mulelao},
1148 -#line 332 "lib/aliases.gperf"
1149 +#line 333 "lib/aliases.gperf"
1150 {(int)(long)&((struct stringpool_t *)0)->stringpool_str323, ei_iso2022_kr},
1151 -#line 107 "lib/aliases.gperf"
1152 +#line 108 "lib/aliases.gperf"
1153 {(int)(long)&((struct stringpool_t *)0)->stringpool_str324, ei_iso8859_7},
1154 -#line 273 "lib/aliases.gperf"
1155 +#line 274 "lib/aliases.gperf"
1156 {(int)(long)&((struct stringpool_t *)0)->stringpool_str325, ei_gb2312},
1157 -#line 35 "lib/aliases.gperf"
1158 +#line 36 "lib/aliases.gperf"
1159 {(int)(long)&((struct stringpool_t *)0)->stringpool_str326, ei_ucs4},
1160 -#line 305 "lib/aliases.gperf"
1161 +#line 306 "lib/aliases.gperf"
1162 {(int)(long)&((struct stringpool_t *)0)->stringpool_str327, ei_ces_gbk},
1163 -#line 77 "lib/aliases.gperf"
1164 +#line 78 "lib/aliases.gperf"
1165 {(int)(long)&((struct stringpool_t *)0)->stringpool_str328, ei_iso8859_3},
1166 #line 14 "lib/aliases.gperf"
1167 {(int)(long)&((struct stringpool_t *)0)->stringpool_str329, ei_ascii},
1169 #line 12 "lib/aliases.gperf"
1170 {(int)(long)&((struct stringpool_t *)0)->stringpool_str331, ei_ascii},
1171 -#line 234 "lib/aliases.gperf"
1172 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str332, ei_tis620},
1173 -#line 225 "lib/aliases.gperf"
1175 +#line 226 "lib/aliases.gperf"
1176 {(int)(long)&((struct stringpool_t *)0)->stringpool_str333, ei_koi8_t},
1177 -#line 172 "lib/aliases.gperf"
1178 +#line 173 "lib/aliases.gperf"
1179 {(int)(long)&((struct stringpool_t *)0)->stringpool_str334, ei_cp1252},
1180 -#line 281 "lib/aliases.gperf"
1181 +#line 282 "lib/aliases.gperf"
1182 {(int)(long)&((struct stringpool_t *)0)->stringpool_str335, ei_ksc5601},
1183 -#line 268 "lib/aliases.gperf"
1184 +#line 269 "lib/aliases.gperf"
1185 {(int)(long)&((struct stringpool_t *)0)->stringpool_str336, ei_iso646_cn},
1187 -#line 314 "lib/aliases.gperf"
1188 +#line 315 "lib/aliases.gperf"
1189 {(int)(long)&((struct stringpool_t *)0)->stringpool_str339, ei_euc_tw},
1191 -#line 110 "lib/aliases.gperf"
1193 +#line 240 "lib/aliases.gperf"
1194 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str342, ei_viscii},
1195 +#line 111 "lib/aliases.gperf"
1196 {(int)(long)&((struct stringpool_t *)0)->stringpool_str343, ei_iso8859_7},
1198 -#line 313 "lib/aliases.gperf"
1199 +#line 314 "lib/aliases.gperf"
1200 {(int)(long)&((struct stringpool_t *)0)->stringpool_str346, ei_euc_tw},
1201 -#line 168 "lib/aliases.gperf"
1202 +#line 169 "lib/aliases.gperf"
1203 {(int)(long)&((struct stringpool_t *)0)->stringpool_str347, ei_cp1251},
1204 -#line 171 "lib/aliases.gperf"
1205 +#line 172 "lib/aliases.gperf"
1206 {(int)(long)&((struct stringpool_t *)0)->stringpool_str348, ei_cp1252},
1207 -#line 248 "lib/aliases.gperf"
1208 +#line 249 "lib/aliases.gperf"
1209 {(int)(long)&((struct stringpool_t *)0)->stringpool_str349, ei_iso646_jp},
1210 -#line 183 "lib/aliases.gperf"
1211 +#line 184 "lib/aliases.gperf"
1212 {(int)(long)&((struct stringpool_t *)0)->stringpool_str350, ei_cp1256},
1213 -#line 180 "lib/aliases.gperf"
1214 +#line 181 "lib/aliases.gperf"
1215 {(int)(long)&((struct stringpool_t *)0)->stringpool_str351, ei_cp1255},
1217 -#line 239 "lib/aliases.gperf"
1218 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str353, ei_viscii},
1219 -#line 333 "lib/aliases.gperf"
1221 +#line 334 "lib/aliases.gperf"
1222 {(int)(long)&((struct stringpool_t *)0)->stringpool_str354, ei_iso2022_kr},
1224 -#line 189 "lib/aliases.gperf"
1225 +#line 190 "lib/aliases.gperf"
1226 {(int)(long)&((struct stringpool_t *)0)->stringpool_str356, ei_cp1258},
1228 -#line 174 "lib/aliases.gperf"
1229 +#line 175 "lib/aliases.gperf"
1230 {(int)(long)&((struct stringpool_t *)0)->stringpool_str360, ei_cp1253},
1231 -#line 222 "lib/aliases.gperf"
1232 +#line 223 "lib/aliases.gperf"
1233 {(int)(long)&((struct stringpool_t *)0)->stringpool_str361, ei_armscii_8},
1234 {-1}, {-1}, {-1}, {-1},
1235 -#line 201 "lib/aliases.gperf"
1236 +#line 202 "lib/aliases.gperf"
1237 {(int)(long)&((struct stringpool_t *)0)->stringpool_str366, ei_cp866},
1239 -#line 218 "lib/aliases.gperf"
1240 +#line 219 "lib/aliases.gperf"
1241 {(int)(long)&((struct stringpool_t *)0)->stringpool_str368, ei_hp_roman8},
1242 -#line 312 "lib/aliases.gperf"
1243 +#line 313 "lib/aliases.gperf"
1244 {(int)(long)&((struct stringpool_t *)0)->stringpool_str369, ei_hz},
1245 -#line 286 "lib/aliases.gperf"
1246 +#line 287 "lib/aliases.gperf"
1247 {(int)(long)&((struct stringpool_t *)0)->stringpool_str370, ei_euc_jp},
1248 -#line 233 "lib/aliases.gperf"
1249 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str371, ei_tis620},
1250 -#line 280 "lib/aliases.gperf"
1252 +#line 281 "lib/aliases.gperf"
1253 {(int)(long)&((struct stringpool_t *)0)->stringpool_str372, ei_ksc5601},
1254 -#line 207 "lib/aliases.gperf"
1255 +#line 208 "lib/aliases.gperf"
1256 {(int)(long)&((struct stringpool_t *)0)->stringpool_str373, ei_mac_iceland},
1257 -#line 34 "lib/aliases.gperf"
1258 +#line 35 "lib/aliases.gperf"
1259 {(int)(long)&((struct stringpool_t *)0)->stringpool_str374, ei_ucs4},
1260 -#line 27 "lib/aliases.gperf"
1261 +#line 28 "lib/aliases.gperf"
1262 {(int)(long)&((struct stringpool_t *)0)->stringpool_str375, ei_ucs2be},
1264 -#line 285 "lib/aliases.gperf"
1265 +#line 286 "lib/aliases.gperf"
1266 {(int)(long)&((struct stringpool_t *)0)->stringpool_str377, ei_euc_jp},
1267 {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1268 -#line 165 "lib/aliases.gperf"
1269 +#line 166 "lib/aliases.gperf"
1270 {(int)(long)&((struct stringpool_t *)0)->stringpool_str386, ei_cp1250},
1271 -#line 100 "lib/aliases.gperf"
1272 +#line 101 "lib/aliases.gperf"
1273 {(int)(long)&((struct stringpool_t *)0)->stringpool_str387, ei_iso8859_6},
1274 +#line 233 "lib/aliases.gperf"
1275 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str388, ei_tis620},
1277 #line 39 "lib/aliases.gperf"
1278 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str388, ei_utf16be},
1280 -#line 242 "lib/aliases.gperf"
1281 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str391, ei_tcvn},
1282 -#line 186 "lib/aliases.gperf"
1283 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str390, ei_utf16},
1285 +#line 187 "lib/aliases.gperf"
1286 {(int)(long)&((struct stringpool_t *)0)->stringpool_str392, ei_cp1257},
1288 -#line 197 "lib/aliases.gperf"
1289 +#line 198 "lib/aliases.gperf"
1290 {(int)(long)&((struct stringpool_t *)0)->stringpool_str394, ei_cp862},
1292 -#line 243 "lib/aliases.gperf"
1293 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str396, ei_tcvn},
1294 +#line 23 "lib/aliases.gperf"
1295 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str396, ei_utf8},
1297 #line 42 "lib/aliases.gperf"
1298 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str399, ei_utf32be},
1299 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str399, ei_utf32},
1301 -#line 177 "lib/aliases.gperf"
1302 +#line 178 "lib/aliases.gperf"
1303 {(int)(long)&((struct stringpool_t *)0)->stringpool_str402, ei_cp1254},
1305 -#line 327 "lib/aliases.gperf"
1306 +#line 328 "lib/aliases.gperf"
1307 {(int)(long)&((struct stringpool_t *)0)->stringpool_str404, ei_euc_kr},
1309 -#line 99 "lib/aliases.gperf"
1310 +#line 235 "lib/aliases.gperf"
1311 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str405, ei_tis620},
1312 +#line 100 "lib/aliases.gperf"
1313 {(int)(long)&((struct stringpool_t *)0)->stringpool_str406, ei_iso8859_6},
1315 -#line 101 "lib/aliases.gperf"
1317 +#line 41 "lib/aliases.gperf"
1318 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str408, ei_utf16le},
1319 +#line 102 "lib/aliases.gperf"
1320 {(int)(long)&((struct stringpool_t *)0)->stringpool_str409, ei_iso8859_6},
1321 -#line 203 "lib/aliases.gperf"
1322 +#line 204 "lib/aliases.gperf"
1323 {(int)(long)&((struct stringpool_t *)0)->stringpool_str410, ei_mac_roman},
1324 -#line 47 "lib/aliases.gperf"
1325 +#line 48 "lib/aliases.gperf"
1326 {(int)(long)&((struct stringpool_t *)0)->stringpool_str411, ei_ucs2internal},
1327 -#line 85 "lib/aliases.gperf"
1328 +#line 86 "lib/aliases.gperf"
1329 {(int)(long)&((struct stringpool_t *)0)->stringpool_str412, ei_iso8859_4},
1331 -#line 98 "lib/aliases.gperf"
1332 +#line 99 "lib/aliases.gperf"
1333 {(int)(long)&((struct stringpool_t *)0)->stringpool_str416, ei_iso8859_6},
1335 -#line 278 "lib/aliases.gperf"
1336 +#line 279 "lib/aliases.gperf"
1337 {(int)(long)&((struct stringpool_t *)0)->stringpool_str418, ei_isoir165},
1338 +#line 44 "lib/aliases.gperf"
1339 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str419, ei_utf32le},
1341 -#line 18 "lib/aliases.gperf"
1342 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str420, ei_ascii},
1343 -#line 272 "lib/aliases.gperf"
1344 +#line 273 "lib/aliases.gperf"
1345 {(int)(long)&((struct stringpool_t *)0)->stringpool_str421, ei_iso646_cn},
1347 -#line 275 "lib/aliases.gperf"
1348 +#line 276 "lib/aliases.gperf"
1349 {(int)(long)&((struct stringpool_t *)0)->stringpool_str423, ei_gb2312},
1350 -#line 217 "lib/aliases.gperf"
1351 +#line 218 "lib/aliases.gperf"
1352 {(int)(long)&((struct stringpool_t *)0)->stringpool_str424, ei_hp_roman8},
1354 -#line 17 "lib/aliases.gperf"
1355 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str426, ei_ascii},
1356 -#line 216 "lib/aliases.gperf"
1358 +#line 217 "lib/aliases.gperf"
1359 {(int)(long)&((struct stringpool_t *)0)->stringpool_str427, ei_mac_thai},
1361 -#line 36 "lib/aliases.gperf"
1362 +#line 37 "lib/aliases.gperf"
1363 {(int)(long)&((struct stringpool_t *)0)->stringpool_str429, ei_ucs4be},
1364 -#line 220 "lib/aliases.gperf"
1365 +#line 221 "lib/aliases.gperf"
1366 {(int)(long)&((struct stringpool_t *)0)->stringpool_str430, ei_hp_roman8},
1368 -#line 303 "lib/aliases.gperf"
1369 +#line 304 "lib/aliases.gperf"
1370 {(int)(long)&((struct stringpool_t *)0)->stringpool_str432, ei_euc_cn},
1372 -#line 32 "lib/aliases.gperf"
1373 +#line 33 "lib/aliases.gperf"
1374 {(int)(long)&((struct stringpool_t *)0)->stringpool_str434, ei_ucs2le},
1375 -#line 89 "lib/aliases.gperf"
1376 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str435, ei_iso8859_5},
1378 -#line 122 "lib/aliases.gperf"
1379 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str438, ei_iso8859_9},
1381 -#line 115 "lib/aliases.gperf"
1382 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str440, ei_iso8859_8},
1383 -#line 162 "lib/aliases.gperf"
1384 + {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1385 +#line 163 "lib/aliases.gperf"
1386 {(int)(long)&((struct stringpool_t *)0)->stringpool_str441, ei_koi8_u},
1388 -#line 73 "lib/aliases.gperf"
1389 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str444, ei_iso8859_3},
1390 +#line 234 "lib/aliases.gperf"
1391 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str444, ei_tis620},
1393 -#line 295 "lib/aliases.gperf"
1394 +#line 296 "lib/aliases.gperf"
1395 {(int)(long)&((struct stringpool_t *)0)->stringpool_str448, ei_iso2022_jp},
1396 -#line 297 "lib/aliases.gperf"
1397 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str449, ei_iso2022_jp1},
1398 #line 298 "lib/aliases.gperf"
1399 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str449, ei_iso2022_jp1},
1400 +#line 299 "lib/aliases.gperf"
1401 {(int)(long)&((struct stringpool_t *)0)->stringpool_str450, ei_iso2022_jp2},
1402 -#line 118 "lib/aliases.gperf"
1403 +#line 119 "lib/aliases.gperf"
1404 {(int)(long)&((struct stringpool_t *)0)->stringpool_str451, ei_iso8859_8},
1406 -#line 246 "lib/aliases.gperf"
1407 +#line 247 "lib/aliases.gperf"
1408 {(int)(long)&((struct stringpool_t *)0)->stringpool_str454, ei_iso646_jp},
1410 -#line 287 "lib/aliases.gperf"
1411 +#line 90 "lib/aliases.gperf"
1412 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str455, ei_iso8859_5},
1414 +#line 288 "lib/aliases.gperf"
1415 {(int)(long)&((struct stringpool_t *)0)->stringpool_str457, ei_euc_jp},
1416 - {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1417 -#line 49 "lib/aliases.gperf"
1418 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str465, ei_ucs4internal},
1419 +#line 123 "lib/aliases.gperf"
1420 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str458, ei_iso8859_9},
1422 -#line 55 "lib/aliases.gperf"
1423 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str467, ei_iso8859_1},
1424 -#line 65 "lib/aliases.gperf"
1425 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str468, ei_iso8859_2},
1426 +#line 116 "lib/aliases.gperf"
1427 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str460, ei_iso8859_8},
1429 +#line 74 "lib/aliases.gperf"
1430 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str464, ei_iso8859_3},
1431 +#line 50 "lib/aliases.gperf"
1432 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str465, ei_ucs4internal},
1434 +#line 45 "lib/aliases.gperf"
1435 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str468, ei_utf7},
1436 + {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1438 -#line 96 "lib/aliases.gperf"
1439 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str470, ei_iso8859_6},
1440 - {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1441 -#line 296 "lib/aliases.gperf"
1442 +#line 297 "lib/aliases.gperf"
1443 {(int)(long)&((struct stringpool_t *)0)->stringpool_str479, ei_iso2022_jp},
1444 -#line 299 "lib/aliases.gperf"
1445 +#line 300 "lib/aliases.gperf"
1446 {(int)(long)&((struct stringpool_t *)0)->stringpool_str480, ei_iso2022_jp2},
1447 - {-1}, {-1}, {-1}, {-1}, {-1},
1448 -#line 81 "lib/aliases.gperf"
1449 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str486, ei_iso8859_4},
1451 -#line 206 "lib/aliases.gperf"
1452 + {-1}, {-1}, {-1}, {-1},
1453 +#line 15 "lib/aliases.gperf"
1454 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str485, ei_ascii},
1456 +#line 56 "lib/aliases.gperf"
1457 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str487, ei_iso8859_1},
1458 +#line 66 "lib/aliases.gperf"
1459 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str488, ei_iso8859_2},
1460 +#line 207 "lib/aliases.gperf"
1461 {(int)(long)&((struct stringpool_t *)0)->stringpool_str489, ei_mac_centraleurope},
1463 -#line 117 "lib/aliases.gperf"
1464 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str492, ei_iso8859_8},
1465 +#line 97 "lib/aliases.gperf"
1466 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str490, ei_iso8859_6},
1468 -#line 181 "lib/aliases.gperf"
1469 +#line 118 "lib/aliases.gperf"
1470 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str492, ei_iso8859_8},
1471 +#line 18 "lib/aliases.gperf"
1472 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str493, ei_ascii},
1473 +#line 182 "lib/aliases.gperf"
1474 {(int)(long)&((struct stringpool_t *)0)->stringpool_str494, ei_cp1255},
1476 -#line 15 "lib/aliases.gperf"
1477 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str496, ei_ascii},
1479 -#line 315 "lib/aliases.gperf"
1481 +#line 316 "lib/aliases.gperf"
1482 {(int)(long)&((struct stringpool_t *)0)->stringpool_str498, ei_euc_tw},
1483 - {-1}, {-1}, {-1}, {-1},
1484 -#line 163 "lib/aliases.gperf"
1485 +#line 17 "lib/aliases.gperf"
1486 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str499, ei_ascii},
1488 +#line 164 "lib/aliases.gperf"
1489 {(int)(long)&((struct stringpool_t *)0)->stringpool_str503, ei_koi8_ru},
1491 -#line 237 "lib/aliases.gperf"
1492 +#line 238 "lib/aliases.gperf"
1493 {(int)(long)&((struct stringpool_t *)0)->stringpool_str505, ei_cp874},
1495 -#line 257 "lib/aliases.gperf"
1496 +#line 82 "lib/aliases.gperf"
1497 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str506, ei_iso8859_4},
1499 +#line 258 "lib/aliases.gperf"
1500 {(int)(long)&((struct stringpool_t *)0)->stringpool_str508, ei_jisx0208},
1501 -#line 224 "lib/aliases.gperf"
1502 +#line 225 "lib/aliases.gperf"
1503 {(int)(long)&((struct stringpool_t *)0)->stringpool_str509, ei_georgian_ps},
1505 -#line 105 "lib/aliases.gperf"
1506 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str512, ei_iso8859_7},
1508 -#line 111 "lib/aliases.gperf"
1509 + {-1}, {-1}, {-1}, {-1},
1510 +#line 112 "lib/aliases.gperf"
1511 {(int)(long)&((struct stringpool_t *)0)->stringpool_str514, ei_iso8859_7},
1512 -#line 260 "lib/aliases.gperf"
1513 +#line 261 "lib/aliases.gperf"
1514 {(int)(long)&((struct stringpool_t *)0)->stringpool_str515, ei_jisx0208},
1516 -#line 202 "lib/aliases.gperf"
1517 +#line 203 "lib/aliases.gperf"
1518 {(int)(long)&((struct stringpool_t *)0)->stringpool_str518, ei_mac_roman},
1519 -#line 48 "lib/aliases.gperf"
1520 +#line 49 "lib/aliases.gperf"
1521 {(int)(long)&((struct stringpool_t *)0)->stringpool_str519, ei_ucs2swapped},
1522 {-1}, {-1}, {-1}, {-1},
1523 -#line 205 "lib/aliases.gperf"
1524 +#line 206 "lib/aliases.gperf"
1525 {(int)(long)&((struct stringpool_t *)0)->stringpool_str524, ei_mac_roman},
1527 -#line 319 "lib/aliases.gperf"
1528 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str527, ei_ces_big5},
1529 -#line 267 "lib/aliases.gperf"
1531 +#line 268 "lib/aliases.gperf"
1532 {(int)(long)&((struct stringpool_t *)0)->stringpool_str528, ei_jisx0212},
1533 -#line 249 "lib/aliases.gperf"
1534 +#line 250 "lib/aliases.gperf"
1535 {(int)(long)&((struct stringpool_t *)0)->stringpool_str529, ei_iso646_jp},
1536 -#line 193 "lib/aliases.gperf"
1537 +#line 194 "lib/aliases.gperf"
1538 {(int)(long)&((struct stringpool_t *)0)->stringpool_str530, ei_cp850},
1540 -#line 318 "lib/aliases.gperf"
1541 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str534, ei_ces_big5},
1542 - {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1543 -#line 245 "lib/aliases.gperf"
1545 +#line 106 "lib/aliases.gperf"
1546 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str532, ei_iso8859_7},
1547 + {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1548 +#line 246 "lib/aliases.gperf"
1549 {(int)(long)&((struct stringpool_t *)0)->stringpool_str541, ei_iso646_jp},
1551 -#line 262 "lib/aliases.gperf"
1552 +#line 263 "lib/aliases.gperf"
1553 {(int)(long)&((struct stringpool_t *)0)->stringpool_str545, ei_jisx0212},
1555 -#line 324 "lib/aliases.gperf"
1556 +#line 325 "lib/aliases.gperf"
1557 {(int)(long)&((struct stringpool_t *)0)->stringpool_str549, ei_big5hkscs},
1559 -#line 251 "lib/aliases.gperf"
1560 +#line 40 "lib/aliases.gperf"
1561 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str550, ei_utf16be},
1563 +#line 252 "lib/aliases.gperf"
1564 {(int)(long)&((struct stringpool_t *)0)->stringpool_str553, ei_jisx0201},
1565 -#line 223 "lib/aliases.gperf"
1566 +#line 224 "lib/aliases.gperf"
1567 {(int)(long)&((struct stringpool_t *)0)->stringpool_str554, ei_georgian_academy},
1569 -#line 323 "lib/aliases.gperf"
1570 +#line 324 "lib/aliases.gperf"
1571 {(int)(long)&((struct stringpool_t *)0)->stringpool_str556, ei_big5hkscs},
1573 -#line 261 "lib/aliases.gperf"
1574 +#line 262 "lib/aliases.gperf"
1575 {(int)(long)&((struct stringpool_t *)0)->stringpool_str560, ei_jisx0208},
1576 - {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1577 -#line 212 "lib/aliases.gperf"
1578 +#line 43 "lib/aliases.gperf"
1579 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str561, ei_utf32be},
1580 + {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1581 +#line 213 "lib/aliases.gperf"
1582 {(int)(long)&((struct stringpool_t *)0)->stringpool_str570, ei_mac_greek},
1583 -#line 175 "lib/aliases.gperf"
1584 +#line 176 "lib/aliases.gperf"
1585 {(int)(long)&((struct stringpool_t *)0)->stringpool_str571, ei_cp1253},
1587 -#line 50 "lib/aliases.gperf"
1588 +#line 51 "lib/aliases.gperf"
1589 {(int)(long)&((struct stringpool_t *)0)->stringpool_str573, ei_ucs4swapped},
1590 {-1}, {-1}, {-1}, {-1},
1591 -#line 208 "lib/aliases.gperf"
1592 +#line 209 "lib/aliases.gperf"
1593 {(int)(long)&((struct stringpool_t *)0)->stringpool_str578, ei_mac_croatian},
1595 -#line 250 "lib/aliases.gperf"
1596 +#line 251 "lib/aliases.gperf"
1597 {(int)(long)&((struct stringpool_t *)0)->stringpool_str582, ei_jisx0201},
1599 -#line 335 "lib/aliases.gperf"
1600 +#line 336 "lib/aliases.gperf"
1601 {(int)(long)&((struct stringpool_t *)0)->stringpool_str585, ei_local_wchar_t},
1602 {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1603 -#line 28 "lib/aliases.gperf"
1604 +#line 29 "lib/aliases.gperf"
1605 {(int)(long)&((struct stringpool_t *)0)->stringpool_str594, ei_ucs2be},
1606 {-1}, {-1}, {-1}, {-1},
1607 -#line 264 "lib/aliases.gperf"
1608 +#line 265 "lib/aliases.gperf"
1609 {(int)(long)&((struct stringpool_t *)0)->stringpool_str599, ei_jisx0212},
1610 -#line 254 "lib/aliases.gperf"
1611 +#line 255 "lib/aliases.gperf"
1612 {(int)(long)&((struct stringpool_t *)0)->stringpool_str600, ei_jisx0208},
1613 - {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1614 {-1}, {-1}, {-1}, {-1},
1615 -#line 215 "lib/aliases.gperf"
1616 +#line 320 "lib/aliases.gperf"
1617 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str605, ei_ces_big5},
1618 + {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1619 +#line 319 "lib/aliases.gperf"
1620 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str612, ei_ces_big5},
1622 +#line 216 "lib/aliases.gperf"
1623 {(int)(long)&((struct stringpool_t *)0)->stringpool_str614, ei_mac_arabic},
1624 - {-1}, {-1}, {-1}, {-1},
1625 -#line 253 "lib/aliases.gperf"
1626 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str619, ei_jisx0201},
1627 -#line 255 "lib/aliases.gperf"
1628 + {-1}, {-1}, {-1}, {-1}, {-1},
1629 +#line 256 "lib/aliases.gperf"
1630 {(int)(long)&((struct stringpool_t *)0)->stringpool_str620, ei_jisx0208},
1631 -#line 290 "lib/aliases.gperf"
1632 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str621, ei_sjis},
1633 +#line 245 "lib/aliases.gperf"
1634 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str621, ei_tcvn},
1635 {-1}, {-1}, {-1}, {-1},
1636 -#line 211 "lib/aliases.gperf"
1637 +#line 212 "lib/aliases.gperf"
1638 {(int)(long)&((struct stringpool_t *)0)->stringpool_str626, ei_mac_ukraine},
1639 - {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1640 -#line 288 "lib/aliases.gperf"
1641 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str635, ei_euc_jp},
1642 + {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1643 {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1645 -#line 256 "lib/aliases.gperf"
1646 +#line 257 "lib/aliases.gperf"
1647 {(int)(long)&((struct stringpool_t *)0)->stringpool_str646, ei_jisx0208},
1648 {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1649 - {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1650 -#line 293 "lib/aliases.gperf"
1651 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str663, ei_sjis},
1652 -#line 263 "lib/aliases.gperf"
1653 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str664, ei_jisx0212},
1654 -#line 214 "lib/aliases.gperf"
1655 + {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1656 +#line 215 "lib/aliases.gperf"
1657 {(int)(long)&((struct stringpool_t *)0)->stringpool_str665, ei_mac_hebrew},
1659 +#line 24 "lib/aliases.gperf"
1660 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str667, ei_utf8mac},
1662 +#line 53 "lib/aliases.gperf"
1663 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str669, ei_java},
1664 {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1665 -#line 289 "lib/aliases.gperf"
1666 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str675, ei_sjis},
1667 {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1668 -#line 244 "lib/aliases.gperf"
1669 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str685, ei_tcvn},
1670 - {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1671 -#line 178 "lib/aliases.gperf"
1672 + {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1673 +#line 179 "lib/aliases.gperf"
1674 {(int)(long)&((struct stringpool_t *)0)->stringpool_str694, ei_cp1254},
1675 {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1676 {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1677 {-1}, {-1}, {-1}, {-1},
1678 -#line 213 "lib/aliases.gperf"
1679 +#line 214 "lib/aliases.gperf"
1680 {(int)(long)&((struct stringpool_t *)0)->stringpool_str717, ei_mac_turkish},
1681 {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1682 {-1}, {-1}, {-1}, {-1},
1683 -#line 209 "lib/aliases.gperf"
1684 +#line 210 "lib/aliases.gperf"
1685 {(int)(long)&((struct stringpool_t *)0)->stringpool_str731, ei_mac_romania},
1686 + {-1}, {-1}, {-1}, {-1}, {-1},
1687 +#line 264 "lib/aliases.gperf"
1688 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str737, ei_jisx0212},
1689 {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1690 - {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1691 -#line 184 "lib/aliases.gperf"
1693 +#line 185 "lib/aliases.gperf"
1694 {(int)(long)&((struct stringpool_t *)0)->stringpool_str750, ei_cp1256},
1696 -#line 52 "lib/aliases.gperf"
1697 - {(int)(long)&((struct stringpool_t *)0)->stringpool_str753, ei_java},
1698 {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1699 {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1700 {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1702 +#line 254 "lib/aliases.gperf"
1703 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str781, ei_jisx0201},
1705 +#line 291 "lib/aliases.gperf"
1706 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str783, ei_sjis},
1707 {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1708 - {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1709 -#line 292 "lib/aliases.gperf"
1710 + {-1}, {-1}, {-1}, {-1},
1711 +#line 289 "lib/aliases.gperf"
1712 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str797, ei_euc_jp},
1713 +#line 293 "lib/aliases.gperf"
1714 {(int)(long)&((struct stringpool_t *)0)->stringpool_str798, ei_sjis},
1715 -#line 330 "lib/aliases.gperf"
1716 +#line 331 "lib/aliases.gperf"
1717 {(int)(long)&((struct stringpool_t *)0)->stringpool_str799, ei_johab},
1718 {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1719 {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1720 + {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1721 +#line 294 "lib/aliases.gperf"
1722 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str825, ei_sjis},
1723 {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1725 +#line 290 "lib/aliases.gperf"
1726 + {(int)(long)&((struct stringpool_t *)0)->stringpool_str837, ei_sjis},
1727 {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1728 {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1729 {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1730 {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1731 - {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1732 - {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1},
1733 -#line 187 "lib/aliases.gperf"
1734 + {-1}, {-1}, {-1}, {-1}, {-1},
1735 +#line 188 "lib/aliases.gperf"
1736 {(int)(long)&((struct stringpool_t *)0)->stringpool_str879, ei_cp1257}
1739 diff -Naur libiconv.old/lib/converters.h libiconv/lib/converters.h
1740 --- libiconv.old/lib/converters.h 2002-05-29 16:06:52.000000000 +0200
1741 +++ libiconv/lib/converters.h 2005-08-04 18:54:52.000000000 +0200
1743 /* General multi-byte encodings */
1746 +#include "utf8mac.h"
1750 diff -Naur libiconv.old/lib/encodings.def libiconv/lib/encodings.def
1751 --- libiconv.old/lib/encodings.def 2003-04-24 12:48:06.000000000 +0200
1752 +++ libiconv/lib/encodings.def 2005-08-04 18:54:43.000000000 +0200
1755 { utf8_mbtowc, NULL }, { utf8_wctomb, NULL })
1757 +DEFENCODING(( "UTF-8-MAC", /* utf8-nfd */
1758 + "UTF8-MAC", /* label from samba 2.2jp */
1761 + { utf8mac_mbtowc, NULL }, { utf8mac_wctomb, NULL })
1764 DEFENCODING(( "UCS-2", /* glibc */
1765 "ISO-10646-UCS-2", /* IANA */
1766 "csUnicode", /* IANA */
1767 diff -Naur libiconv.old/lib/flags.h libiconv/lib/flags.h
1768 --- libiconv.old/lib/flags.h 2003-05-06 11:18:02.000000000 +0200
1769 +++ libiconv/lib/flags.h 2005-08-04 18:54:43.000000000 +0200
1772 #define ei_ascii_oflags (0)
1773 #define ei_utf8_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
1774 +#define ei_utf8mac_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
1775 #define ei_ucs2_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
1776 #define ei_ucs2be_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
1777 #define ei_ucs2le_oflags (HAVE_ACCENTS | HAVE_QUOTATION_MARKS | HAVE_HANGUL_JAMO)
1778 diff -Naur libiconv.old/lib/utf8mac.h libiconv/lib/utf8mac.h
1779 --- libiconv.old/lib/utf8mac.h 1970-01-01 01:00:00.000000000 +0100
1780 +++ libiconv/lib/utf8mac.h 2005-08-04 18:54:43.000000000 +0200
1783 + * Copyright (C) 2003 Apple Computer, Inc. All rights reserved.
1785 + * This file is part of the GNU LIBICONV Library.
1787 + * The GNU LIBICONV Library is free software; you can redistribute it
1788 + * and/or modify it under the terms of the GNU Library General Public
1789 + * License as published by the Free Software Foundation; either version 2
1790 + * of the License, or (at your option) any later version.
1792 + * The GNU LIBICONV Library is distributed in the hope that it will be
1793 + * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
1794 + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
1795 + * Library General Public License for more details.
1797 + * You should have received a copy of the GNU Library General Public
1798 + * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
1799 + * If not, write to the Free Software Foundation, Inc., 59 Temple Place -
1800 + * Suite 330, Boston, MA 02111-1307, USA.
1808 + Includes Unicode 3.2 decomposition code derived from Core Foundation
1811 +#include <inttypes.h>
1813 +#define UTF_REVERSE_ENDIAN 0x01 /* reverse UCS-2 byte order */
1814 +#define UTF_NO_NULL_TERM 0x02 /* do not add null termination */
1815 +#define UTF_DECOMPOSED 0x04 /* generate fully decomposed UCS-2 */
1816 +#define UTF_PRECOMPOSED 0x08 /* generate precomposed UCS-2 */
1818 +int utf8_encodestr (const u_int16_t *, size_t, u_int8_t *, size_t *,
1819 + size_t, u_int16_t, int);
1821 +int utf8_decodestr (const u_int8_t *, size_t, u_int16_t *,size_t *,
1822 + size_t, u_int16_t, int, size_t *);
1825 + Derived from Core Foundation headers:
1827 + CFUniCharDecompData.h
1828 + CFUniCharPrecompData.h
1829 + CFUniCharNonBaseData.h
1832 +static const u_int16_t
1833 +__CFUniCharDecompositionTable[] = {
1834 + 0x00C0, 0x2000, 0x00C1, 0x2002, 0x00C2, 0x2004, 0x00C3, 0x2006,
1835 + 0x00C4, 0x2008, 0x00C5, 0x200A, 0x00C7, 0x200C, 0x00C8, 0x200E,
1836 + 0x00C9, 0x2010, 0x00CA, 0x2012, 0x00CB, 0x2014, 0x00CC, 0x2016,
1837 + 0x00CD, 0x2018, 0x00CE, 0x201A, 0x00CF, 0x201C, 0x00D1, 0x201E,
1838 + 0x00D2, 0x2020, 0x00D3, 0x2022, 0x00D4, 0x2024, 0x00D5, 0x2026,
1839 + 0x00D6, 0x2028, 0x00D9, 0x202A, 0x00DA, 0x202C, 0x00DB, 0x202E,
1840 + 0x00DC, 0x2030, 0x00DD, 0x2032, 0x00E0, 0x2034, 0x00E1, 0x2036,
1841 + 0x00E2, 0x2038, 0x00E3, 0x203A, 0x00E4, 0x203C, 0x00E5, 0x203E,
1842 + 0x00E7, 0x2040, 0x00E8, 0x2042, 0x00E9, 0x2044, 0x00EA, 0x2046,
1843 + 0x00EB, 0x2048, 0x00EC, 0x204A, 0x00ED, 0x204C, 0x00EE, 0x204E,
1844 + 0x00EF, 0x2050, 0x00F1, 0x2052, 0x00F2, 0x2054, 0x00F3, 0x2056,
1845 + 0x00F4, 0x2058, 0x00F5, 0x205A, 0x00F6, 0x205C, 0x00F9, 0x205E,
1846 + 0x00FA, 0x2060, 0x00FB, 0x2062, 0x00FC, 0x2064, 0x00FD, 0x2066,
1847 + 0x00FF, 0x2068, 0x0100, 0x206A, 0x0101, 0x206C, 0x0102, 0x206E,
1848 + 0x0103, 0x2070, 0x0104, 0x2072, 0x0105, 0x2074, 0x0106, 0x2076,
1849 + 0x0107, 0x2078, 0x0108, 0x207A, 0x0109, 0x207C, 0x010A, 0x207E,
1850 + 0x010B, 0x2080, 0x010C, 0x2082, 0x010D, 0x2084, 0x010E, 0x2086,
1851 + 0x010F, 0x2088, 0x0112, 0x208A, 0x0113, 0x208C, 0x0114, 0x208E,
1852 + 0x0115, 0x2090, 0x0116, 0x2092, 0x0117, 0x2094, 0x0118, 0x2096,
1853 + 0x0119, 0x2098, 0x011A, 0x209A, 0x011B, 0x209C, 0x011C, 0x209E,
1854 + 0x011D, 0x20A0, 0x011E, 0x20A2, 0x011F, 0x20A4, 0x0120, 0x20A6,
1855 + 0x0121, 0x20A8, 0x0122, 0x20AA, 0x0123, 0x20AC, 0x0124, 0x20AE,
1856 + 0x0125, 0x20B0, 0x0128, 0x20B2, 0x0129, 0x20B4, 0x012A, 0x20B6,
1857 + 0x012B, 0x20B8, 0x012C, 0x20BA, 0x012D, 0x20BC, 0x012E, 0x20BE,
1858 + 0x012F, 0x20C0, 0x0130, 0x20C2, 0x0134, 0x20C4, 0x0135, 0x20C6,
1859 + 0x0136, 0x20C8, 0x0137, 0x20CA, 0x0139, 0x20CC, 0x013A, 0x20CE,
1860 + 0x013B, 0x20D0, 0x013C, 0x20D2, 0x013D, 0x20D4, 0x013E, 0x20D6,
1861 + 0x0143, 0x20D8, 0x0144, 0x20DA, 0x0145, 0x20DC, 0x0146, 0x20DE,
1862 + 0x0147, 0x20E0, 0x0148, 0x20E2, 0x014C, 0x20E4, 0x014D, 0x20E6,
1863 + 0x014E, 0x20E8, 0x014F, 0x20EA, 0x0150, 0x20EC, 0x0151, 0x20EE,
1864 + 0x0154, 0x20F0, 0x0155, 0x20F2, 0x0156, 0x20F4, 0x0157, 0x20F6,
1865 + 0x0158, 0x20F8, 0x0159, 0x20FA, 0x015A, 0x20FC, 0x015B, 0x20FE,
1866 + 0x015C, 0x2100, 0x015D, 0x2102, 0x015E, 0x2104, 0x015F, 0x2106,
1867 + 0x0160, 0x2108, 0x0161, 0x210A, 0x0162, 0x210C, 0x0163, 0x210E,
1868 + 0x0164, 0x2110, 0x0165, 0x2112, 0x0168, 0x2114, 0x0169, 0x2116,
1869 + 0x016A, 0x2118, 0x016B, 0x211A, 0x016C, 0x211C, 0x016D, 0x211E,
1870 + 0x016E, 0x2120, 0x016F, 0x2122, 0x0170, 0x2124, 0x0171, 0x2126,
1871 + 0x0172, 0x2128, 0x0173, 0x212A, 0x0174, 0x212C, 0x0175, 0x212E,
1872 + 0x0176, 0x2130, 0x0177, 0x2132, 0x0178, 0x2134, 0x0179, 0x2136,
1873 + 0x017A, 0x2138, 0x017B, 0x213A, 0x017C, 0x213C, 0x017D, 0x213E,
1874 + 0x017E, 0x2140, 0x01A0, 0x2142, 0x01A1, 0x2144, 0x01AF, 0x2146,
1875 + 0x01B0, 0x2148, 0x01CD, 0x214A, 0x01CE, 0x214C, 0x01CF, 0x214E,
1876 + 0x01D0, 0x2150, 0x01D1, 0x2152, 0x01D2, 0x2154, 0x01D3, 0x2156,
1877 + 0x01D4, 0x2158, 0x01D5, 0xA15A, 0x01D6, 0xA15C, 0x01D7, 0xA15E,
1878 + 0x01D8, 0xA160, 0x01D9, 0xA162, 0x01DA, 0xA164, 0x01DB, 0xA166,
1879 + 0x01DC, 0xA168, 0x01DE, 0xA16A, 0x01DF, 0xA16C, 0x01E0, 0xA16E,
1880 + 0x01E1, 0xA170, 0x01E2, 0x2172, 0x01E3, 0x2174, 0x01E6, 0x2176,
1881 + 0x01E7, 0x2178, 0x01E8, 0x217A, 0x01E9, 0x217C, 0x01EA, 0x217E,
1882 + 0x01EB, 0x2180, 0x01EC, 0xA182, 0x01ED, 0xA184, 0x01EE, 0x2186,
1883 + 0x01EF, 0x2188, 0x01F0, 0x218A, 0x01F4, 0x218C, 0x01F5, 0x218E,
1884 + 0x01F8, 0x2190, 0x01F9, 0x2192, 0x01FA, 0xA194, 0x01FB, 0xA196,
1885 + 0x01FC, 0x2198, 0x01FD, 0x219A, 0x01FE, 0x219C, 0x01FF, 0x219E,
1886 + 0x0200, 0x21A0, 0x0201, 0x21A2, 0x0202, 0x21A4, 0x0203, 0x21A6,
1887 + 0x0204, 0x21A8, 0x0205, 0x21AA, 0x0206, 0x21AC, 0x0207, 0x21AE,
1888 + 0x0208, 0x21B0, 0x0209, 0x21B2, 0x020A, 0x21B4, 0x020B, 0x21B6,
1889 + 0x020C, 0x21B8, 0x020D, 0x21BA, 0x020E, 0x21BC, 0x020F, 0x21BE,
1890 + 0x0210, 0x21C0, 0x0211, 0x21C2, 0x0212, 0x21C4, 0x0213, 0x21C6,
1891 + 0x0214, 0x21C8, 0x0215, 0x21CA, 0x0216, 0x21CC, 0x0217, 0x21CE,
1892 + 0x0218, 0x21D0, 0x0219, 0x21D2, 0x021A, 0x21D4, 0x021B, 0x21D6,
1893 + 0x021E, 0x21D8, 0x021F, 0x21DA, 0x0226, 0x21DC, 0x0227, 0x21DE,
1894 + 0x0228, 0x21E0, 0x0229, 0x21E2, 0x022A, 0xA1E4, 0x022B, 0xA1E6,
1895 + 0x022C, 0xA1E8, 0x022D, 0xA1EA, 0x022E, 0x21EC, 0x022F, 0x21EE,
1896 + 0x0230, 0xA1F0, 0x0231, 0xA1F2, 0x0232, 0x21F4, 0x0233, 0x21F6,
1897 + 0x0340, 0x1300, 0x0341, 0x1301, 0x0343, 0x1313, 0x0344, 0x21F8,
1898 + 0x0374, 0x12B9, 0x037E, 0x103B, 0x0385, 0x21FA, 0x0386, 0x21FC,
1899 + 0x0387, 0x10B7, 0x0388, 0x21FE, 0x0389, 0x2200, 0x038A, 0x2202,
1900 + 0x038C, 0x2204, 0x038E, 0x2206, 0x038F, 0x2208, 0x0390, 0xA20A,
1901 + 0x03AA, 0x220C, 0x03AB, 0x220E, 0x03AC, 0x2210, 0x03AD, 0x2212,
1902 + 0x03AE, 0x2214, 0x03AF, 0x2216, 0x03B0, 0xA218, 0x03CA, 0x221A,
1903 + 0x03CB, 0x221C, 0x03CC, 0x221E, 0x03CD, 0x2220, 0x03CE, 0x2222,
1904 + 0x03D3, 0x2224, 0x03D4, 0x2226, 0x0400, 0x2228, 0x0401, 0x222A,
1905 + 0x0403, 0x222C, 0x0407, 0x222E, 0x040C, 0x2230, 0x040D, 0x2232,
1906 + 0x040E, 0x2234, 0x0419, 0x2236, 0x0439, 0x2238, 0x0450, 0x223A,
1907 + 0x0451, 0x223C, 0x0453, 0x223E, 0x0457, 0x2240, 0x045C, 0x2242,
1908 + 0x045D, 0x2244, 0x045E, 0x2246, 0x0476, 0x2248, 0x0477, 0x224A,
1909 + 0x04C1, 0x224C, 0x04C2, 0x224E, 0x04D0, 0x2250, 0x04D1, 0x2252,
1910 + 0x04D2, 0x2254, 0x04D3, 0x2256, 0x04D6, 0x2258, 0x04D7, 0x225A,
1911 + 0x04DA, 0x225C, 0x04DB, 0x225E, 0x04DC, 0x2260, 0x04DD, 0x2262,
1912 + 0x04DE, 0x2264, 0x04DF, 0x2266, 0x04E2, 0x2268, 0x04E3, 0x226A,
1913 + 0x04E4, 0x226C, 0x04E5, 0x226E, 0x04E6, 0x2270, 0x04E7, 0x2272,
1914 + 0x04EA, 0x2274, 0x04EB, 0x2276, 0x04EC, 0x2278, 0x04ED, 0x227A,
1915 + 0x04EE, 0x227C, 0x04EF, 0x227E, 0x04F0, 0x2280, 0x04F1, 0x2282,
1916 + 0x04F2, 0x2284, 0x04F3, 0x2286, 0x04F4, 0x2288, 0x04F5, 0x228A,
1917 + 0x04F8, 0x228C, 0x04F9, 0x228E, 0x0622, 0x2290, 0x0623, 0x2292,
1918 + 0x0624, 0x2294, 0x0625, 0x2296, 0x0626, 0x2298, 0x06C0, 0x229A,
1919 + 0x06C2, 0x229C, 0x06D3, 0x229E, 0x0929, 0x22A0, 0x0931, 0x22A2,
1920 + 0x0934, 0x22A4, 0x0958, 0x22A6, 0x0959, 0x22A8, 0x095A, 0x22AA,
1921 + 0x095B, 0x22AC, 0x095C, 0x22AE, 0x095D, 0x22B0, 0x095E, 0x22B2,
1922 + 0x095F, 0x22B4, 0x09CB, 0x22B6, 0x09CC, 0x22B8, 0x09DC, 0x22BA,
1923 + 0x09DD, 0x22BC, 0x09DF, 0x22BE, 0x0A33, 0x22C0, 0x0A36, 0x22C2,
1924 + 0x0A59, 0x22C4, 0x0A5A, 0x22C6, 0x0A5B, 0x22C8, 0x0A5E, 0x22CA,
1925 + 0x0B48, 0x22CC, 0x0B4B, 0x22CE, 0x0B4C, 0x22D0, 0x0B5C, 0x22D2,
1926 + 0x0B5D, 0x22D4, 0x0B94, 0x22D6, 0x0BCA, 0x22D8, 0x0BCB, 0x22DA,
1927 + 0x0BCC, 0x22DC, 0x0C48, 0x22DE, 0x0CC0, 0x22E0, 0x0CC7, 0x22E2,
1928 + 0x0CC8, 0x22E4, 0x0CCA, 0x22E6, 0x0CCB, 0xA2E8, 0x0D4A, 0x22EA,
1929 + 0x0D4B, 0x22EC, 0x0D4C, 0x22EE, 0x0DDA, 0x22F0, 0x0DDC, 0x22F2,
1930 + 0x0DDD, 0xA2F4, 0x0DDE, 0x22F6, 0x0F43, 0x22F8, 0x0F4D, 0x22FA,
1931 + 0x0F52, 0x22FC, 0x0F57, 0x22FE, 0x0F5C, 0x2300, 0x0F69, 0x2302,
1932 + 0x0F73, 0x2304, 0x0F75, 0x2306, 0x0F76, 0x2308, 0x0F78, 0x230A,
1933 + 0x0F81, 0x230C, 0x0F93, 0x230E, 0x0F9D, 0x2310, 0x0FA2, 0x2312,
1934 + 0x0FA7, 0x2314, 0x0FAC, 0x2316, 0x0FB9, 0x2318, 0x1026, 0x231A,
1935 + 0x1E00, 0x231C, 0x1E01, 0x231E, 0x1E02, 0x2320, 0x1E03, 0x2322,
1936 + 0x1E04, 0x2324, 0x1E05, 0x2326, 0x1E06, 0x2328, 0x1E07, 0x232A,
1937 + 0x1E08, 0xA32C, 0x1E09, 0xA32E, 0x1E0A, 0x2330, 0x1E0B, 0x2332,
1938 + 0x1E0C, 0x2334, 0x1E0D, 0x2336, 0x1E0E, 0x2338, 0x1E0F, 0x233A,
1939 + 0x1E10, 0x233C, 0x1E11, 0x233E, 0x1E12, 0x2340, 0x1E13, 0x2342,
1940 + 0x1E14, 0xA344, 0x1E15, 0xA346, 0x1E16, 0xA348, 0x1E17, 0xA34A,
1941 + 0x1E18, 0x234C, 0x1E19, 0x234E, 0x1E1A, 0x2350, 0x1E1B, 0x2352,
1942 + 0x1E1C, 0xA354, 0x1E1D, 0xA356, 0x1E1E, 0x2358, 0x1E1F, 0x235A,
1943 + 0x1E20, 0x235C, 0x1E21, 0x235E, 0x1E22, 0x2360, 0x1E23, 0x2362,
1944 + 0x1E24, 0x2364, 0x1E25, 0x2366, 0x1E26, 0x2368, 0x1E27, 0x236A,
1945 + 0x1E28, 0x236C, 0x1E29, 0x236E, 0x1E2A, 0x2370, 0x1E2B, 0x2372,
1946 + 0x1E2C, 0x2374, 0x1E2D, 0x2376, 0x1E2E, 0xA378, 0x1E2F, 0xA37A,
1947 + 0x1E30, 0x237C, 0x1E31, 0x237E, 0x1E32, 0x2380, 0x1E33, 0x2382,
1948 + 0x1E34, 0x2384, 0x1E35, 0x2386, 0x1E36, 0x2388, 0x1E37, 0x238A,
1949 + 0x1E38, 0xA38C, 0x1E39, 0xA38E, 0x1E3A, 0x2390, 0x1E3B, 0x2392,
1950 + 0x1E3C, 0x2394, 0x1E3D, 0x2396, 0x1E3E, 0x2398, 0x1E3F, 0x239A,
1951 + 0x1E40, 0x239C, 0x1E41, 0x239E, 0x1E42, 0x23A0, 0x1E43, 0x23A2,
1952 + 0x1E44, 0x23A4, 0x1E45, 0x23A6, 0x1E46, 0x23A8, 0x1E47, 0x23AA,
1953 + 0x1E48, 0x23AC, 0x1E49, 0x23AE, 0x1E4A, 0x23B0, 0x1E4B, 0x23B2,
1954 + 0x1E4C, 0xA3B4, 0x1E4D, 0xA3B6, 0x1E4E, 0xA3B8, 0x1E4F, 0xA3BA,
1955 + 0x1E50, 0xA3BC, 0x1E51, 0xA3BE, 0x1E52, 0xA3C0, 0x1E53, 0xA3C2,
1956 + 0x1E54, 0x23C4, 0x1E55, 0x23C6, 0x1E56, 0x23C8, 0x1E57, 0x23CA,
1957 + 0x1E58, 0x23CC, 0x1E59, 0x23CE, 0x1E5A, 0x23D0, 0x1E5B, 0x23D2,
1958 + 0x1E5C, 0xA3D4, 0x1E5D, 0xA3D6, 0x1E5E, 0x23D8, 0x1E5F, 0x23DA,
1959 + 0x1E60, 0x23DC, 0x1E61, 0x23DE, 0x1E62, 0x23E0, 0x1E63, 0x23E2,
1960 + 0x1E64, 0xA3E4, 0x1E65, 0xA3E6, 0x1E66, 0xA3E8, 0x1E67, 0xA3EA,
1961 + 0x1E68, 0xA3EC, 0x1E69, 0xA3EE, 0x1E6A, 0x23F0, 0x1E6B, 0x23F2,
1962 + 0x1E6C, 0x23F4, 0x1E6D, 0x23F6, 0x1E6E, 0x23F8, 0x1E6F, 0x23FA,
1963 + 0x1E70, 0x23FC, 0x1E71, 0x23FE, 0x1E72, 0x2400, 0x1E73, 0x2402,
1964 + 0x1E74, 0x2404, 0x1E75, 0x2406, 0x1E76, 0x2408, 0x1E77, 0x240A,
1965 + 0x1E78, 0xA40C, 0x1E79, 0xA40E, 0x1E7A, 0xA410, 0x1E7B, 0xA412,
1966 + 0x1E7C, 0x2414, 0x1E7D, 0x2416, 0x1E7E, 0x2418, 0x1E7F, 0x241A,
1967 + 0x1E80, 0x241C, 0x1E81, 0x241E, 0x1E82, 0x2420, 0x1E83, 0x2422,
1968 + 0x1E84, 0x2424, 0x1E85, 0x2426, 0x1E86, 0x2428, 0x1E87, 0x242A,
1969 + 0x1E88, 0x242C, 0x1E89, 0x242E, 0x1E8A, 0x2430, 0x1E8B, 0x2432,
1970 + 0x1E8C, 0x2434, 0x1E8D, 0x2436, 0x1E8E, 0x2438, 0x1E8F, 0x243A,
1971 + 0x1E90, 0x243C, 0x1E91, 0x243E, 0x1E92, 0x2440, 0x1E93, 0x2442,
1972 + 0x1E94, 0x2444, 0x1E95, 0x2446, 0x1E96, 0x2448, 0x1E97, 0x244A,
1973 + 0x1E98, 0x244C, 0x1E99, 0x244E, 0x1E9B, 0x2450, 0x1EA0, 0x2452,
1974 + 0x1EA1, 0x2454, 0x1EA2, 0x2456, 0x1EA3, 0x2458, 0x1EA4, 0xA45A,
1975 + 0x1EA5, 0xA45C, 0x1EA6, 0xA45E, 0x1EA7, 0xA460, 0x1EA8, 0xA462,
1976 + 0x1EA9, 0xA464, 0x1EAA, 0xA466, 0x1EAB, 0xA468, 0x1EAC, 0xA46A,
1977 + 0x1EAD, 0xA46C, 0x1EAE, 0xA46E, 0x1EAF, 0xA470, 0x1EB0, 0xA472,
1978 + 0x1EB1, 0xA474, 0x1EB2, 0xA476, 0x1EB3, 0xA478, 0x1EB4, 0xA47A,
1979 + 0x1EB5, 0xA47C, 0x1EB6, 0xA47E, 0x1EB7, 0xA480, 0x1EB8, 0x2482,
1980 + 0x1EB9, 0x2484, 0x1EBA, 0x2486, 0x1EBB, 0x2488, 0x1EBC, 0x248A,
1981 + 0x1EBD, 0x248C, 0x1EBE, 0xA48E, 0x1EBF, 0xA490, 0x1EC0, 0xA492,
1982 + 0x1EC1, 0xA494, 0x1EC2, 0xA496, 0x1EC3, 0xA498, 0x1EC4, 0xA49A,
1983 + 0x1EC5, 0xA49C, 0x1EC6, 0xA49E, 0x1EC7, 0xA4A0, 0x1EC8, 0x24A2,
1984 + 0x1EC9, 0x24A4, 0x1ECA, 0x24A6, 0x1ECB, 0x24A8, 0x1ECC, 0x24AA,
1985 + 0x1ECD, 0x24AC, 0x1ECE, 0x24AE, 0x1ECF, 0x24B0, 0x1ED0, 0xA4B2,
1986 + 0x1ED1, 0xA4B4, 0x1ED2, 0xA4B6, 0x1ED3, 0xA4B8, 0x1ED4, 0xA4BA,
1987 + 0x1ED5, 0xA4BC, 0x1ED6, 0xA4BE, 0x1ED7, 0xA4C0, 0x1ED8, 0xA4C2,
1988 + 0x1ED9, 0xA4C4, 0x1EDA, 0xA4C6, 0x1EDB, 0xA4C8, 0x1EDC, 0xA4CA,
1989 + 0x1EDD, 0xA4CC, 0x1EDE, 0xA4CE, 0x1EDF, 0xA4D0, 0x1EE0, 0xA4D2,
1990 + 0x1EE1, 0xA4D4, 0x1EE2, 0xA4D6, 0x1EE3, 0xA4D8, 0x1EE4, 0x24DA,
1991 + 0x1EE5, 0x24DC, 0x1EE6, 0x24DE, 0x1EE7, 0x24E0, 0x1EE8, 0xA4E2,
1992 + 0x1EE9, 0xA4E4, 0x1EEA, 0xA4E6, 0x1EEB, 0xA4E8, 0x1EEC, 0xA4EA,
1993 + 0x1EED, 0xA4EC, 0x1EEE, 0xA4EE, 0x1EEF, 0xA4F0, 0x1EF0, 0xA4F2,
1994 + 0x1EF1, 0xA4F4, 0x1EF2, 0x24F6, 0x1EF3, 0x24F8, 0x1EF4, 0x24FA,
1995 + 0x1EF5, 0x24FC, 0x1EF6, 0x24FE, 0x1EF7, 0x2500, 0x1EF8, 0x2502,
1996 + 0x1EF9, 0x2504, 0x1F00, 0x2506, 0x1F01, 0x2508, 0x1F02, 0xA50A,
1997 + 0x1F03, 0xA50C, 0x1F04, 0xA50E, 0x1F05, 0xA510, 0x1F06, 0xA512,
1998 + 0x1F07, 0xA514, 0x1F08, 0x2516, 0x1F09, 0x2518, 0x1F0A, 0xA51A,
1999 + 0x1F0B, 0xA51C, 0x1F0C, 0xA51E, 0x1F0D, 0xA520, 0x1F0E, 0xA522,
2000 + 0x1F0F, 0xA524, 0x1F10, 0x2526, 0x1F11, 0x2528, 0x1F12, 0xA52A,
2001 + 0x1F13, 0xA52C, 0x1F14, 0xA52E, 0x1F15, 0xA530, 0x1F18, 0x2532,
2002 + 0x1F19, 0x2534, 0x1F1A, 0xA536, 0x1F1B, 0xA538, 0x1F1C, 0xA53A,
2003 + 0x1F1D, 0xA53C, 0x1F20, 0x253E, 0x1F21, 0x2540, 0x1F22, 0xA542,
2004 + 0x1F23, 0xA544, 0x1F24, 0xA546, 0x1F25, 0xA548, 0x1F26, 0xA54A,
2005 + 0x1F27, 0xA54C, 0x1F28, 0x254E, 0x1F29, 0x2550, 0x1F2A, 0xA552,
2006 + 0x1F2B, 0xA554, 0x1F2C, 0xA556, 0x1F2D, 0xA558, 0x1F2E, 0xA55A,
2007 + 0x1F2F, 0xA55C, 0x1F30, 0x255E, 0x1F31, 0x2560, 0x1F32, 0xA562,
2008 + 0x1F33, 0xA564, 0x1F34, 0xA566, 0x1F35, 0xA568, 0x1F36, 0xA56A,
2009 + 0x1F37, 0xA56C, 0x1F38, 0x256E, 0x1F39, 0x2570, 0x1F3A, 0xA572,
2010 + 0x1F3B, 0xA574, 0x1F3C, 0xA576, 0x1F3D, 0xA578, 0x1F3E, 0xA57A,
2011 + 0x1F3F, 0xA57C, 0x1F40, 0x257E, 0x1F41, 0x2580, 0x1F42, 0xA582,
2012 + 0x1F43, 0xA584, 0x1F44, 0xA586, 0x1F45, 0xA588, 0x1F48, 0x258A,
2013 + 0x1F49, 0x258C, 0x1F4A, 0xA58E, 0x1F4B, 0xA590, 0x1F4C, 0xA592,
2014 + 0x1F4D, 0xA594, 0x1F50, 0x2596, 0x1F51, 0x2598, 0x1F52, 0xA59A,
2015 + 0x1F53, 0xA59C, 0x1F54, 0xA59E, 0x1F55, 0xA5A0, 0x1F56, 0xA5A2,
2016 + 0x1F57, 0xA5A4, 0x1F59, 0x25A6, 0x1F5B, 0xA5A8, 0x1F5D, 0xA5AA,
2017 + 0x1F5F, 0xA5AC, 0x1F60, 0x25AE, 0x1F61, 0x25B0, 0x1F62, 0xA5B2,
2018 + 0x1F63, 0xA5B4, 0x1F64, 0xA5B6, 0x1F65, 0xA5B8, 0x1F66, 0xA5BA,
2019 + 0x1F67, 0xA5BC, 0x1F68, 0x25BE, 0x1F69, 0x25C0, 0x1F6A, 0xA5C2,
2020 + 0x1F6B, 0xA5C4, 0x1F6C, 0xA5C6, 0x1F6D, 0xA5C8, 0x1F6E, 0xA5CA,
2021 + 0x1F6F, 0xA5CC, 0x1F70, 0x25CE, 0x1F71, 0x93AC, 0x1F72, 0x25D0,
2022 + 0x1F73, 0x93AD, 0x1F74, 0x25D2, 0x1F75, 0x93AE, 0x1F76, 0x25D4,
2023 + 0x1F77, 0x93AF, 0x1F78, 0x25D6, 0x1F79, 0x93CC, 0x1F7A, 0x25D8,
2024 + 0x1F7B, 0x93CD, 0x1F7C, 0x25DA, 0x1F7D, 0x93CE, 0x1F80, 0xA5DC,
2025 + 0x1F81, 0xA5DE, 0x1F82, 0xA5E0, 0x1F83, 0xA5E2, 0x1F84, 0xA5E4,
2026 + 0x1F85, 0xA5E6, 0x1F86, 0xA5E8, 0x1F87, 0xA5EA, 0x1F88, 0xA5EC,
2027 + 0x1F89, 0xA5EE, 0x1F8A, 0xA5F0, 0x1F8B, 0xA5F2, 0x1F8C, 0xA5F4,
2028 + 0x1F8D, 0xA5F6, 0x1F8E, 0xA5F8, 0x1F8F, 0xA5FA, 0x1F90, 0xA5FC,
2029 + 0x1F91, 0xA5FE, 0x1F92, 0xA600, 0x1F93, 0xA602, 0x1F94, 0xA604,
2030 + 0x1F95, 0xA606, 0x1F96, 0xA608, 0x1F97, 0xA60A, 0x1F98, 0xA60C,
2031 + 0x1F99, 0xA60E, 0x1F9A, 0xA610, 0x1F9B, 0xA612, 0x1F9C, 0xA614,
2032 + 0x1F9D, 0xA616, 0x1F9E, 0xA618, 0x1F9F, 0xA61A, 0x1FA0, 0xA61C,
2033 + 0x1FA1, 0xA61E, 0x1FA2, 0xA620, 0x1FA3, 0xA622, 0x1FA4, 0xA624,
2034 + 0x1FA5, 0xA626, 0x1FA6, 0xA628, 0x1FA7, 0xA62A, 0x1FA8, 0xA62C,
2035 + 0x1FA9, 0xA62E, 0x1FAA, 0xA630, 0x1FAB, 0xA632, 0x1FAC, 0xA634,
2036 + 0x1FAD, 0xA636, 0x1FAE, 0xA638, 0x1FAF, 0xA63A, 0x1FB0, 0x263C,
2037 + 0x1FB1, 0x263E, 0x1FB2, 0xA640, 0x1FB3, 0x2642, 0x1FB4, 0xA644,
2038 + 0x1FB6, 0x2646, 0x1FB7, 0xA648, 0x1FB8, 0x264A, 0x1FB9, 0x264C,
2039 + 0x1FBA, 0x264E, 0x1FBB, 0x9386, 0x1FBC, 0x2650, 0x1FBE, 0x13B9,
2040 + 0x1FC1, 0x2652, 0x1FC2, 0xA654, 0x1FC3, 0x2656, 0x1FC4, 0xA658,
2041 + 0x1FC6, 0x265A, 0x1FC7, 0xA65C, 0x1FC8, 0x265E, 0x1FC9, 0x9388,
2042 + 0x1FCA, 0x2660, 0x1FCB, 0x9389, 0x1FCC, 0x2662, 0x1FCD, 0x2664,
2043 + 0x1FCE, 0x2666, 0x1FCF, 0x2668, 0x1FD0, 0x266A, 0x1FD1, 0x266C,
2044 + 0x1FD2, 0xA66E, 0x1FD3, 0x9390, 0x1FD6, 0x2670, 0x1FD7, 0xA672,
2045 + 0x1FD8, 0x2674, 0x1FD9, 0x2676, 0x1FDA, 0x2678, 0x1FDB, 0x938A,
2046 + 0x1FDD, 0x267A, 0x1FDE, 0x267C, 0x1FDF, 0x267E, 0x1FE0, 0x2680,
2047 + 0x1FE1, 0x2682, 0x1FE2, 0xA684, 0x1FE3, 0x93B0, 0x1FE4, 0x2686,
2048 + 0x1FE5, 0x2688, 0x1FE6, 0x268A, 0x1FE7, 0xA68C, 0x1FE8, 0x268E,
2049 + 0x1FE9, 0x2690, 0x1FEA, 0x2692, 0x1FEB, 0x938E, 0x1FEC, 0x2694,
2050 + 0x1FED, 0x2696, 0x1FEE, 0x9385, 0x1FEF, 0x1060, 0x1FF2, 0xA698,
2051 + 0x1FF3, 0x269A, 0x1FF4, 0xA69C, 0x1FF6, 0x269E, 0x1FF7, 0xA6A0,
2052 + 0x1FF8, 0x26A2, 0x1FF9, 0x938C, 0x1FFA, 0x26A4, 0x1FFB, 0x938F,
2053 + 0x1FFC, 0x26A6, 0x1FFD, 0x10B4, 0x304C, 0x26A8, 0x304E, 0x26AA,
2054 + 0x3050, 0x26AC, 0x3052, 0x26AE, 0x3054, 0x26B0, 0x3056, 0x26B2,
2055 + 0x3058, 0x26B4, 0x305A, 0x26B6, 0x305C, 0x26B8, 0x305E, 0x26BA,
2056 + 0x3060, 0x26BC, 0x3062, 0x26BE, 0x3065, 0x26C0, 0x3067, 0x26C2,
2057 + 0x3069, 0x26C4, 0x3070, 0x26C6, 0x3071, 0x26C8, 0x3073, 0x26CA,
2058 + 0x3074, 0x26CC, 0x3076, 0x26CE, 0x3077, 0x26D0, 0x3079, 0x26D2,
2059 + 0x307A, 0x26D4, 0x307C, 0x26D6, 0x307D, 0x26D8, 0x3094, 0x26DA,
2060 + 0x309E, 0x26DC, 0x30AC, 0x26DE, 0x30AE, 0x26E0, 0x30B0, 0x26E2,
2061 + 0x30B2, 0x26E4, 0x30B4, 0x26E6, 0x30B6, 0x26E8, 0x30B8, 0x26EA,
2062 + 0x30BA, 0x26EC, 0x30BC, 0x26EE, 0x30BE, 0x26F0, 0x30C0, 0x26F2,
2063 + 0x30C2, 0x26F4, 0x30C5, 0x26F6, 0x30C7, 0x26F8, 0x30C9, 0x26FA,
2064 + 0x30D0, 0x26FC, 0x30D1, 0x26FE, 0x30D3, 0x2700, 0x30D4, 0x2702,
2065 + 0x30D6, 0x2704, 0x30D7, 0x2706, 0x30D9, 0x2708, 0x30DA, 0x270A,
2066 + 0x30DC, 0x270C, 0x30DD, 0x270E, 0x30F4, 0x2710, 0x30F7, 0x2712,
2067 + 0x30F8, 0x2714, 0x30F9, 0x2716, 0x30FA, 0x2718, 0x30FE, 0x271A,
2068 + 0xFB1D, 0x271C, 0xFB1F, 0x271E, 0xFB2A, 0x2720, 0xFB2B, 0x2722,
2069 + 0xFB2C, 0xA724, 0xFB2D, 0xA726, 0xFB2E, 0x2728, 0xFB2F, 0x272A,
2070 + 0xFB30, 0x272C, 0xFB31, 0x272E, 0xFB32, 0x2730, 0xFB33, 0x2732,
2071 + 0xFB34, 0x2734, 0xFB35, 0x2736, 0xFB36, 0x2738, 0xFB38, 0x273A,
2072 + 0xFB39, 0x273C, 0xFB3A, 0x273E, 0xFB3B, 0x2740, 0xFB3C, 0x2742,
2073 + 0xFB3E, 0x2744, 0xFB40, 0x2746, 0xFB41, 0x2748, 0xFB43, 0x274A,
2074 + 0xFB44, 0x274C, 0xFB46, 0x274E, 0xFB47, 0x2750, 0xFB48, 0x2752,
2075 + 0xFB49, 0x2754, 0xFB4A, 0x2756, 0xFB4B, 0x2758, 0xFB4C, 0x275A,
2076 + 0xFB4D, 0x275C, 0xFB4E, 0x275E
2079 +static const u_int32_t __UniCharDecompositionTableLength =
2080 + (sizeof(__CFUniCharDecompositionTable) / (sizeof(u_int16_t) * 2));
2083 +static const u_int16_t
2084 +__CFUniCharMultipleDecompositionTable[] = {
2085 + 0x0041, 0x0300, 0x0041, 0x0301, 0x0041, 0x0302, 0x0041, 0x0303,
2086 + 0x0041, 0x0308, 0x0041, 0x030A, 0x0043, 0x0327, 0x0045, 0x0300,
2087 + 0x0045, 0x0301, 0x0045, 0x0302, 0x0045, 0x0308, 0x0049, 0x0300,
2088 + 0x0049, 0x0301, 0x0049, 0x0302, 0x0049, 0x0308, 0x004E, 0x0303,
2089 + 0x004F, 0x0300, 0x004F, 0x0301, 0x004F, 0x0302, 0x004F, 0x0303,
2090 + 0x004F, 0x0308, 0x0055, 0x0300, 0x0055, 0x0301, 0x0055, 0x0302,
2091 + 0x0055, 0x0308, 0x0059, 0x0301, 0x0061, 0x0300, 0x0061, 0x0301,
2092 + 0x0061, 0x0302, 0x0061, 0x0303, 0x0061, 0x0308, 0x0061, 0x030A,
2093 + 0x0063, 0x0327, 0x0065, 0x0300, 0x0065, 0x0301, 0x0065, 0x0302,
2094 + 0x0065, 0x0308, 0x0069, 0x0300, 0x0069, 0x0301, 0x0069, 0x0302,
2095 + 0x0069, 0x0308, 0x006E, 0x0303, 0x006F, 0x0300, 0x006F, 0x0301,
2096 + 0x006F, 0x0302, 0x006F, 0x0303, 0x006F, 0x0308, 0x0075, 0x0300,
2097 + 0x0075, 0x0301, 0x0075, 0x0302, 0x0075, 0x0308, 0x0079, 0x0301,
2098 + 0x0079, 0x0308, 0x0041, 0x0304, 0x0061, 0x0304, 0x0041, 0x0306,
2099 + 0x0061, 0x0306, 0x0041, 0x0328, 0x0061, 0x0328, 0x0043, 0x0301,
2100 + 0x0063, 0x0301, 0x0043, 0x0302, 0x0063, 0x0302, 0x0043, 0x0307,
2101 + 0x0063, 0x0307, 0x0043, 0x030C, 0x0063, 0x030C, 0x0044, 0x030C,
2102 + 0x0064, 0x030C, 0x0045, 0x0304, 0x0065, 0x0304, 0x0045, 0x0306,
2103 + 0x0065, 0x0306, 0x0045, 0x0307, 0x0065, 0x0307, 0x0045, 0x0328,
2104 + 0x0065, 0x0328, 0x0045, 0x030C, 0x0065, 0x030C, 0x0047, 0x0302,
2105 + 0x0067, 0x0302, 0x0047, 0x0306, 0x0067, 0x0306, 0x0047, 0x0307,
2106 + 0x0067, 0x0307, 0x0047, 0x0327, 0x0067, 0x0327, 0x0048, 0x0302,
2107 + 0x0068, 0x0302, 0x0049, 0x0303, 0x0069, 0x0303, 0x0049, 0x0304,
2108 + 0x0069, 0x0304, 0x0049, 0x0306, 0x0069, 0x0306, 0x0049, 0x0328,
2109 + 0x0069, 0x0328, 0x0049, 0x0307, 0x004A, 0x0302, 0x006A, 0x0302,
2110 + 0x004B, 0x0327, 0x006B, 0x0327, 0x004C, 0x0301, 0x006C, 0x0301,
2111 + 0x004C, 0x0327, 0x006C, 0x0327, 0x004C, 0x030C, 0x006C, 0x030C,
2112 + 0x004E, 0x0301, 0x006E, 0x0301, 0x004E, 0x0327, 0x006E, 0x0327,
2113 + 0x004E, 0x030C, 0x006E, 0x030C, 0x004F, 0x0304, 0x006F, 0x0304,
2114 + 0x004F, 0x0306, 0x006F, 0x0306, 0x004F, 0x030B, 0x006F, 0x030B,
2115 + 0x0052, 0x0301, 0x0072, 0x0301, 0x0052, 0x0327, 0x0072, 0x0327,
2116 + 0x0052, 0x030C, 0x0072, 0x030C, 0x0053, 0x0301, 0x0073, 0x0301,
2117 + 0x0053, 0x0302, 0x0073, 0x0302, 0x0053, 0x0327, 0x0073, 0x0327,
2118 + 0x0053, 0x030C, 0x0073, 0x030C, 0x0054, 0x0327, 0x0074, 0x0327,
2119 + 0x0054, 0x030C, 0x0074, 0x030C, 0x0055, 0x0303, 0x0075, 0x0303,
2120 + 0x0055, 0x0304, 0x0075, 0x0304, 0x0055, 0x0306, 0x0075, 0x0306,
2121 + 0x0055, 0x030A, 0x0075, 0x030A, 0x0055, 0x030B, 0x0075, 0x030B,
2122 + 0x0055, 0x0328, 0x0075, 0x0328, 0x0057, 0x0302, 0x0077, 0x0302,
2123 + 0x0059, 0x0302, 0x0079, 0x0302, 0x0059, 0x0308, 0x005A, 0x0301,
2124 + 0x007A, 0x0301, 0x005A, 0x0307, 0x007A, 0x0307, 0x005A, 0x030C,
2125 + 0x007A, 0x030C, 0x004F, 0x031B, 0x006F, 0x031B, 0x0055, 0x031B,
2126 + 0x0075, 0x031B, 0x0041, 0x030C, 0x0061, 0x030C, 0x0049, 0x030C,
2127 + 0x0069, 0x030C, 0x004F, 0x030C, 0x006F, 0x030C, 0x0055, 0x030C,
2128 + 0x0075, 0x030C, 0x00DC, 0x0304, 0x00FC, 0x0304, 0x00DC, 0x0301,
2129 + 0x00FC, 0x0301, 0x00DC, 0x030C, 0x00FC, 0x030C, 0x00DC, 0x0300,
2130 + 0x00FC, 0x0300, 0x00C4, 0x0304, 0x00E4, 0x0304, 0x0226, 0x0304,
2131 + 0x0227, 0x0304, 0x00C6, 0x0304, 0x00E6, 0x0304, 0x0047, 0x030C,
2132 + 0x0067, 0x030C, 0x004B, 0x030C, 0x006B, 0x030C, 0x004F, 0x0328,
2133 + 0x006F, 0x0328, 0x01EA, 0x0304, 0x01EB, 0x0304, 0x01B7, 0x030C,
2134 + 0x0292, 0x030C, 0x006A, 0x030C, 0x0047, 0x0301, 0x0067, 0x0301,
2135 + 0x004E, 0x0300, 0x006E, 0x0300, 0x00C5, 0x0301, 0x00E5, 0x0301,
2136 + 0x00C6, 0x0301, 0x00E6, 0x0301, 0x00D8, 0x0301, 0x00F8, 0x0301,
2137 + 0x0041, 0x030F, 0x0061, 0x030F, 0x0041, 0x0311, 0x0061, 0x0311,
2138 + 0x0045, 0x030F, 0x0065, 0x030F, 0x0045, 0x0311, 0x0065, 0x0311,
2139 + 0x0049, 0x030F, 0x0069, 0x030F, 0x0049, 0x0311, 0x0069, 0x0311,
2140 + 0x004F, 0x030F, 0x006F, 0x030F, 0x004F, 0x0311, 0x006F, 0x0311,
2141 + 0x0052, 0x030F, 0x0072, 0x030F, 0x0052, 0x0311, 0x0072, 0x0311,
2142 + 0x0055, 0x030F, 0x0075, 0x030F, 0x0055, 0x0311, 0x0075, 0x0311,
2143 + 0x0053, 0x0326, 0x0073, 0x0326, 0x0054, 0x0326, 0x0074, 0x0326,
2144 + 0x0048, 0x030C, 0x0068, 0x030C, 0x0041, 0x0307, 0x0061, 0x0307,
2145 + 0x0045, 0x0327, 0x0065, 0x0327, 0x00D6, 0x0304, 0x00F6, 0x0304,
2146 + 0x00D5, 0x0304, 0x00F5, 0x0304, 0x004F, 0x0307, 0x006F, 0x0307,
2147 + 0x022E, 0x0304, 0x022F, 0x0304, 0x0059, 0x0304, 0x0079, 0x0304,
2148 + 0x0308, 0x0301, 0x00A8, 0x0301, 0x0391, 0x0301, 0x0395, 0x0301,
2149 + 0x0397, 0x0301, 0x0399, 0x0301, 0x039F, 0x0301, 0x03A5, 0x0301,
2150 + 0x03A9, 0x0301, 0x03CA, 0x0301, 0x0399, 0x0308, 0x03A5, 0x0308,
2151 + 0x03B1, 0x0301, 0x03B5, 0x0301, 0x03B7, 0x0301, 0x03B9, 0x0301,
2152 + 0x03CB, 0x0301, 0x03B9, 0x0308, 0x03C5, 0x0308, 0x03BF, 0x0301,
2153 + 0x03C5, 0x0301, 0x03C9, 0x0301, 0x03D2, 0x0301, 0x03D2, 0x0308,
2154 + 0x0415, 0x0300, 0x0415, 0x0308, 0x0413, 0x0301, 0x0406, 0x0308,
2155 + 0x041A, 0x0301, 0x0418, 0x0300, 0x0423, 0x0306, 0x0418, 0x0306,
2156 + 0x0438, 0x0306, 0x0435, 0x0300, 0x0435, 0x0308, 0x0433, 0x0301,
2157 + 0x0456, 0x0308, 0x043A, 0x0301, 0x0438, 0x0300, 0x0443, 0x0306,
2158 + 0x0474, 0x030F, 0x0475, 0x030F, 0x0416, 0x0306, 0x0436, 0x0306,
2159 + 0x0410, 0x0306, 0x0430, 0x0306, 0x0410, 0x0308, 0x0430, 0x0308,
2160 + 0x0415, 0x0306, 0x0435, 0x0306, 0x04D8, 0x0308, 0x04D9, 0x0308,
2161 + 0x0416, 0x0308, 0x0436, 0x0308, 0x0417, 0x0308, 0x0437, 0x0308,
2162 + 0x0418, 0x0304, 0x0438, 0x0304, 0x0418, 0x0308, 0x0438, 0x0308,
2163 + 0x041E, 0x0308, 0x043E, 0x0308, 0x04E8, 0x0308, 0x04E9, 0x0308,
2164 + 0x042D, 0x0308, 0x044D, 0x0308, 0x0423, 0x0304, 0x0443, 0x0304,
2165 + 0x0423, 0x0308, 0x0443, 0x0308, 0x0423, 0x030B, 0x0443, 0x030B,
2166 + 0x0427, 0x0308, 0x0447, 0x0308, 0x042B, 0x0308, 0x044B, 0x0308,
2167 + 0x0627, 0x0653, 0x0627, 0x0654, 0x0648, 0x0654, 0x0627, 0x0655,
2168 + 0x064A, 0x0654, 0x06D5, 0x0654, 0x06C1, 0x0654, 0x06D2, 0x0654,
2169 + 0x0928, 0x093C, 0x0930, 0x093C, 0x0933, 0x093C, 0x0915, 0x093C,
2170 + 0x0916, 0x093C, 0x0917, 0x093C, 0x091C, 0x093C, 0x0921, 0x093C,
2171 + 0x0922, 0x093C, 0x092B, 0x093C, 0x092F, 0x093C, 0x09C7, 0x09BE,
2172 + 0x09C7, 0x09D7, 0x09A1, 0x09BC, 0x09A2, 0x09BC, 0x09AF, 0x09BC,
2173 + 0x0A32, 0x0A3C, 0x0A38, 0x0A3C, 0x0A16, 0x0A3C, 0x0A17, 0x0A3C,
2174 + 0x0A1C, 0x0A3C, 0x0A2B, 0x0A3C, 0x0B47, 0x0B56, 0x0B47, 0x0B3E,
2175 + 0x0B47, 0x0B57, 0x0B21, 0x0B3C, 0x0B22, 0x0B3C, 0x0B92, 0x0BD7,
2176 + 0x0BC6, 0x0BBE, 0x0BC7, 0x0BBE, 0x0BC6, 0x0BD7, 0x0C46, 0x0C56,
2177 + 0x0CBF, 0x0CD5, 0x0CC6, 0x0CD5, 0x0CC6, 0x0CD6, 0x0CC6, 0x0CC2,
2178 + 0x0CCA, 0x0CD5, 0x0D46, 0x0D3E, 0x0D47, 0x0D3E, 0x0D46, 0x0D57,
2179 + 0x0DD9, 0x0DCA, 0x0DD9, 0x0DCF, 0x0DDC, 0x0DCA, 0x0DD9, 0x0DDF,
2180 + 0x0F42, 0x0FB7, 0x0F4C, 0x0FB7, 0x0F51, 0x0FB7, 0x0F56, 0x0FB7,
2181 + 0x0F5B, 0x0FB7, 0x0F40, 0x0FB5, 0x0F71, 0x0F72, 0x0F71, 0x0F74,
2182 + 0x0FB2, 0x0F80, 0x0FB3, 0x0F80, 0x0F71, 0x0F80, 0x0F92, 0x0FB7,
2183 + 0x0F9C, 0x0FB7, 0x0FA1, 0x0FB7, 0x0FA6, 0x0FB7, 0x0FAB, 0x0FB7,
2184 + 0x0F90, 0x0FB5, 0x1025, 0x102E, 0x0041, 0x0325, 0x0061, 0x0325,
2185 + 0x0042, 0x0307, 0x0062, 0x0307, 0x0042, 0x0323, 0x0062, 0x0323,
2186 + 0x0042, 0x0331, 0x0062, 0x0331, 0x00C7, 0x0301, 0x00E7, 0x0301,
2187 + 0x0044, 0x0307, 0x0064, 0x0307, 0x0044, 0x0323, 0x0064, 0x0323,
2188 + 0x0044, 0x0331, 0x0064, 0x0331, 0x0044, 0x0327, 0x0064, 0x0327,
2189 + 0x0044, 0x032D, 0x0064, 0x032D, 0x0112, 0x0300, 0x0113, 0x0300,
2190 + 0x0112, 0x0301, 0x0113, 0x0301, 0x0045, 0x032D, 0x0065, 0x032D,
2191 + 0x0045, 0x0330, 0x0065, 0x0330, 0x0228, 0x0306, 0x0229, 0x0306,
2192 + 0x0046, 0x0307, 0x0066, 0x0307, 0x0047, 0x0304, 0x0067, 0x0304,
2193 + 0x0048, 0x0307, 0x0068, 0x0307, 0x0048, 0x0323, 0x0068, 0x0323,
2194 + 0x0048, 0x0308, 0x0068, 0x0308, 0x0048, 0x0327, 0x0068, 0x0327,
2195 + 0x0048, 0x032E, 0x0068, 0x032E, 0x0049, 0x0330, 0x0069, 0x0330,
2196 + 0x00CF, 0x0301, 0x00EF, 0x0301, 0x004B, 0x0301, 0x006B, 0x0301,
2197 + 0x004B, 0x0323, 0x006B, 0x0323, 0x004B, 0x0331, 0x006B, 0x0331,
2198 + 0x004C, 0x0323, 0x006C, 0x0323, 0x1E36, 0x0304, 0x1E37, 0x0304,
2199 + 0x004C, 0x0331, 0x006C, 0x0331, 0x004C, 0x032D, 0x006C, 0x032D,
2200 + 0x004D, 0x0301, 0x006D, 0x0301, 0x004D, 0x0307, 0x006D, 0x0307,
2201 + 0x004D, 0x0323, 0x006D, 0x0323, 0x004E, 0x0307, 0x006E, 0x0307,
2202 + 0x004E, 0x0323, 0x006E, 0x0323, 0x004E, 0x0331, 0x006E, 0x0331,
2203 + 0x004E, 0x032D, 0x006E, 0x032D, 0x00D5, 0x0301, 0x00F5, 0x0301,
2204 + 0x00D5, 0x0308, 0x00F5, 0x0308, 0x014C, 0x0300, 0x014D, 0x0300,
2205 + 0x014C, 0x0301, 0x014D, 0x0301, 0x0050, 0x0301, 0x0070, 0x0301,
2206 + 0x0050, 0x0307, 0x0070, 0x0307, 0x0052, 0x0307, 0x0072, 0x0307,
2207 + 0x0052, 0x0323, 0x0072, 0x0323, 0x1E5A, 0x0304, 0x1E5B, 0x0304,
2208 + 0x0052, 0x0331, 0x0072, 0x0331, 0x0053, 0x0307, 0x0073, 0x0307,
2209 + 0x0053, 0x0323, 0x0073, 0x0323, 0x015A, 0x0307, 0x015B, 0x0307,
2210 + 0x0160, 0x0307, 0x0161, 0x0307, 0x1E62, 0x0307, 0x1E63, 0x0307,
2211 + 0x0054, 0x0307, 0x0074, 0x0307, 0x0054, 0x0323, 0x0074, 0x0323,
2212 + 0x0054, 0x0331, 0x0074, 0x0331, 0x0054, 0x032D, 0x0074, 0x032D,
2213 + 0x0055, 0x0324, 0x0075, 0x0324, 0x0055, 0x0330, 0x0075, 0x0330,
2214 + 0x0055, 0x032D, 0x0075, 0x032D, 0x0168, 0x0301, 0x0169, 0x0301,
2215 + 0x016A, 0x0308, 0x016B, 0x0308, 0x0056, 0x0303, 0x0076, 0x0303,
2216 + 0x0056, 0x0323, 0x0076, 0x0323, 0x0057, 0x0300, 0x0077, 0x0300,
2217 + 0x0057, 0x0301, 0x0077, 0x0301, 0x0057, 0x0308, 0x0077, 0x0308,
2218 + 0x0057, 0x0307, 0x0077, 0x0307, 0x0057, 0x0323, 0x0077, 0x0323,
2219 + 0x0058, 0x0307, 0x0078, 0x0307, 0x0058, 0x0308, 0x0078, 0x0308,
2220 + 0x0059, 0x0307, 0x0079, 0x0307, 0x005A, 0x0302, 0x007A, 0x0302,
2221 + 0x005A, 0x0323, 0x007A, 0x0323, 0x005A, 0x0331, 0x007A, 0x0331,
2222 + 0x0068, 0x0331, 0x0074, 0x0308, 0x0077, 0x030A, 0x0079, 0x030A,
2223 + 0x017F, 0x0307, 0x0041, 0x0323, 0x0061, 0x0323, 0x0041, 0x0309,
2224 + 0x0061, 0x0309, 0x00C2, 0x0301, 0x00E2, 0x0301, 0x00C2, 0x0300,
2225 + 0x00E2, 0x0300, 0x00C2, 0x0309, 0x00E2, 0x0309, 0x00C2, 0x0303,
2226 + 0x00E2, 0x0303, 0x1EA0, 0x0302, 0x1EA1, 0x0302, 0x0102, 0x0301,
2227 + 0x0103, 0x0301, 0x0102, 0x0300, 0x0103, 0x0300, 0x0102, 0x0309,
2228 + 0x0103, 0x0309, 0x0102, 0x0303, 0x0103, 0x0303, 0x1EA0, 0x0306,
2229 + 0x1EA1, 0x0306, 0x0045, 0x0323, 0x0065, 0x0323, 0x0045, 0x0309,
2230 + 0x0065, 0x0309, 0x0045, 0x0303, 0x0065, 0x0303, 0x00CA, 0x0301,
2231 + 0x00EA, 0x0301, 0x00CA, 0x0300, 0x00EA, 0x0300, 0x00CA, 0x0309,
2232 + 0x00EA, 0x0309, 0x00CA, 0x0303, 0x00EA, 0x0303, 0x1EB8, 0x0302,
2233 + 0x1EB9, 0x0302, 0x0049, 0x0309, 0x0069, 0x0309, 0x0049, 0x0323,
2234 + 0x0069, 0x0323, 0x004F, 0x0323, 0x006F, 0x0323, 0x004F, 0x0309,
2235 + 0x006F, 0x0309, 0x00D4, 0x0301, 0x00F4, 0x0301, 0x00D4, 0x0300,
2236 + 0x00F4, 0x0300, 0x00D4, 0x0309, 0x00F4, 0x0309, 0x00D4, 0x0303,
2237 + 0x00F4, 0x0303, 0x1ECC, 0x0302, 0x1ECD, 0x0302, 0x01A0, 0x0301,
2238 + 0x01A1, 0x0301, 0x01A0, 0x0300, 0x01A1, 0x0300, 0x01A0, 0x0309,
2239 + 0x01A1, 0x0309, 0x01A0, 0x0303, 0x01A1, 0x0303, 0x01A0, 0x0323,
2240 + 0x01A1, 0x0323, 0x0055, 0x0323, 0x0075, 0x0323, 0x0055, 0x0309,
2241 + 0x0075, 0x0309, 0x01AF, 0x0301, 0x01B0, 0x0301, 0x01AF, 0x0300,
2242 + 0x01B0, 0x0300, 0x01AF, 0x0309, 0x01B0, 0x0309, 0x01AF, 0x0303,
2243 + 0x01B0, 0x0303, 0x01AF, 0x0323, 0x01B0, 0x0323, 0x0059, 0x0300,
2244 + 0x0079, 0x0300, 0x0059, 0x0323, 0x0079, 0x0323, 0x0059, 0x0309,
2245 + 0x0079, 0x0309, 0x0059, 0x0303, 0x0079, 0x0303, 0x03B1, 0x0313,
2246 + 0x03B1, 0x0314, 0x1F00, 0x0300, 0x1F01, 0x0300, 0x1F00, 0x0301,
2247 + 0x1F01, 0x0301, 0x1F00, 0x0342, 0x1F01, 0x0342, 0x0391, 0x0313,
2248 + 0x0391, 0x0314, 0x1F08, 0x0300, 0x1F09, 0x0300, 0x1F08, 0x0301,
2249 + 0x1F09, 0x0301, 0x1F08, 0x0342, 0x1F09, 0x0342, 0x03B5, 0x0313,
2250 + 0x03B5, 0x0314, 0x1F10, 0x0300, 0x1F11, 0x0300, 0x1F10, 0x0301,
2251 + 0x1F11, 0x0301, 0x0395, 0x0313, 0x0395, 0x0314, 0x1F18, 0x0300,
2252 + 0x1F19, 0x0300, 0x1F18, 0x0301, 0x1F19, 0x0301, 0x03B7, 0x0313,
2253 + 0x03B7, 0x0314, 0x1F20, 0x0300, 0x1F21, 0x0300, 0x1F20, 0x0301,
2254 + 0x1F21, 0x0301, 0x1F20, 0x0342, 0x1F21, 0x0342, 0x0397, 0x0313,
2255 + 0x0397, 0x0314, 0x1F28, 0x0300, 0x1F29, 0x0300, 0x1F28, 0x0301,
2256 + 0x1F29, 0x0301, 0x1F28, 0x0342, 0x1F29, 0x0342, 0x03B9, 0x0313,
2257 + 0x03B9, 0x0314, 0x1F30, 0x0300, 0x1F31, 0x0300, 0x1F30, 0x0301,
2258 + 0x1F31, 0x0301, 0x1F30, 0x0342, 0x1F31, 0x0342, 0x0399, 0x0313,
2259 + 0x0399, 0x0314, 0x1F38, 0x0300, 0x1F39, 0x0300, 0x1F38, 0x0301,
2260 + 0x1F39, 0x0301, 0x1F38, 0x0342, 0x1F39, 0x0342, 0x03BF, 0x0313,
2261 + 0x03BF, 0x0314, 0x1F40, 0x0300, 0x1F41, 0x0300, 0x1F40, 0x0301,
2262 + 0x1F41, 0x0301, 0x039F, 0x0313, 0x039F, 0x0314, 0x1F48, 0x0300,
2263 + 0x1F49, 0x0300, 0x1F48, 0x0301, 0x1F49, 0x0301, 0x03C5, 0x0313,
2264 + 0x03C5, 0x0314, 0x1F50, 0x0300, 0x1F51, 0x0300, 0x1F50, 0x0301,
2265 + 0x1F51, 0x0301, 0x1F50, 0x0342, 0x1F51, 0x0342, 0x03A5, 0x0314,
2266 + 0x1F59, 0x0300, 0x1F59, 0x0301, 0x1F59, 0x0342, 0x03C9, 0x0313,
2267 + 0x03C9, 0x0314, 0x1F60, 0x0300, 0x1F61, 0x0300, 0x1F60, 0x0301,
2268 + 0x1F61, 0x0301, 0x1F60, 0x0342, 0x1F61, 0x0342, 0x03A9, 0x0313,
2269 + 0x03A9, 0x0314, 0x1F68, 0x0300, 0x1F69, 0x0300, 0x1F68, 0x0301,
2270 + 0x1F69, 0x0301, 0x1F68, 0x0342, 0x1F69, 0x0342, 0x03B1, 0x0300,
2271 + 0x03B5, 0x0300, 0x03B7, 0x0300, 0x03B9, 0x0300, 0x03BF, 0x0300,
2272 + 0x03C5, 0x0300, 0x03C9, 0x0300, 0x1F00, 0x0345, 0x1F01, 0x0345,
2273 + 0x1F02, 0x0345, 0x1F03, 0x0345, 0x1F04, 0x0345, 0x1F05, 0x0345,
2274 + 0x1F06, 0x0345, 0x1F07, 0x0345, 0x1F08, 0x0345, 0x1F09, 0x0345,
2275 + 0x1F0A, 0x0345, 0x1F0B, 0x0345, 0x1F0C, 0x0345, 0x1F0D, 0x0345,
2276 + 0x1F0E, 0x0345, 0x1F0F, 0x0345, 0x1F20, 0x0345, 0x1F21, 0x0345,
2277 + 0x1F22, 0x0345, 0x1F23, 0x0345, 0x1F24, 0x0345, 0x1F25, 0x0345,
2278 + 0x1F26, 0x0345, 0x1F27, 0x0345, 0x1F28, 0x0345, 0x1F29, 0x0345,
2279 + 0x1F2A, 0x0345, 0x1F2B, 0x0345, 0x1F2C, 0x0345, 0x1F2D, 0x0345,
2280 + 0x1F2E, 0x0345, 0x1F2F, 0x0345, 0x1F60, 0x0345, 0x1F61, 0x0345,
2281 + 0x1F62, 0x0345, 0x1F63, 0x0345, 0x1F64, 0x0345, 0x1F65, 0x0345,
2282 + 0x1F66, 0x0345, 0x1F67, 0x0345, 0x1F68, 0x0345, 0x1F69, 0x0345,
2283 + 0x1F6A, 0x0345, 0x1F6B, 0x0345, 0x1F6C, 0x0345, 0x1F6D, 0x0345,
2284 + 0x1F6E, 0x0345, 0x1F6F, 0x0345, 0x03B1, 0x0306, 0x03B1, 0x0304,
2285 + 0x1F70, 0x0345, 0x03B1, 0x0345, 0x03AC, 0x0345, 0x03B1, 0x0342,
2286 + 0x1FB6, 0x0345, 0x0391, 0x0306, 0x0391, 0x0304, 0x0391, 0x0300,
2287 + 0x0391, 0x0345, 0x00A8, 0x0342, 0x1F74, 0x0345, 0x03B7, 0x0345,
2288 + 0x03AE, 0x0345, 0x03B7, 0x0342, 0x1FC6, 0x0345, 0x0395, 0x0300,
2289 + 0x0397, 0x0300, 0x0397, 0x0345, 0x1FBF, 0x0300, 0x1FBF, 0x0301,
2290 + 0x1FBF, 0x0342, 0x03B9, 0x0306, 0x03B9, 0x0304, 0x03CA, 0x0300,
2291 + 0x03B9, 0x0342, 0x03CA, 0x0342, 0x0399, 0x0306, 0x0399, 0x0304,
2292 + 0x0399, 0x0300, 0x1FFE, 0x0300, 0x1FFE, 0x0301, 0x1FFE, 0x0342,
2293 + 0x03C5, 0x0306, 0x03C5, 0x0304, 0x03CB, 0x0300, 0x03C1, 0x0313,
2294 + 0x03C1, 0x0314, 0x03C5, 0x0342, 0x03CB, 0x0342, 0x03A5, 0x0306,
2295 + 0x03A5, 0x0304, 0x03A5, 0x0300, 0x03A1, 0x0314, 0x00A8, 0x0300,
2296 + 0x1F7C, 0x0345, 0x03C9, 0x0345, 0x03CE, 0x0345, 0x03C9, 0x0342,
2297 + 0x1FF6, 0x0345, 0x039F, 0x0300, 0x03A9, 0x0300, 0x03A9, 0x0345,
2298 + 0x304B, 0x3099, 0x304D, 0x3099, 0x304F, 0x3099, 0x3051, 0x3099,
2299 + 0x3053, 0x3099, 0x3055, 0x3099, 0x3057, 0x3099, 0x3059, 0x3099,
2300 + 0x305B, 0x3099, 0x305D, 0x3099, 0x305F, 0x3099, 0x3061, 0x3099,
2301 + 0x3064, 0x3099, 0x3066, 0x3099, 0x3068, 0x3099, 0x306F, 0x3099,
2302 + 0x306F, 0x309A, 0x3072, 0x3099, 0x3072, 0x309A, 0x3075, 0x3099,
2303 + 0x3075, 0x309A, 0x3078, 0x3099, 0x3078, 0x309A, 0x307B, 0x3099,
2304 + 0x307B, 0x309A, 0x3046, 0x3099, 0x309D, 0x3099, 0x30AB, 0x3099,
2305 + 0x30AD, 0x3099, 0x30AF, 0x3099, 0x30B1, 0x3099, 0x30B3, 0x3099,
2306 + 0x30B5, 0x3099, 0x30B7, 0x3099, 0x30B9, 0x3099, 0x30BB, 0x3099,
2307 + 0x30BD, 0x3099, 0x30BF, 0x3099, 0x30C1, 0x3099, 0x30C4, 0x3099,
2308 + 0x30C6, 0x3099, 0x30C8, 0x3099, 0x30CF, 0x3099, 0x30CF, 0x309A,
2309 + 0x30D2, 0x3099, 0x30D2, 0x309A, 0x30D5, 0x3099, 0x30D5, 0x309A,
2310 + 0x30D8, 0x3099, 0x30D8, 0x309A, 0x30DB, 0x3099, 0x30DB, 0x309A,
2311 + 0x30A6, 0x3099, 0x30EF, 0x3099, 0x30F0, 0x3099, 0x30F1, 0x3099,
2312 + 0x30F2, 0x3099, 0x30FD, 0x3099, 0x05D9, 0x05B4, 0x05F2, 0x05B7,
2313 + 0x05E9, 0x05C1, 0x05E9, 0x05C2, 0xFB49, 0x05C1, 0xFB49, 0x05C2,
2314 + 0x05D0, 0x05B7, 0x05D0, 0x05B8, 0x05D0, 0x05BC, 0x05D1, 0x05BC,
2315 + 0x05D2, 0x05BC, 0x05D3, 0x05BC, 0x05D4, 0x05BC, 0x05D5, 0x05BC,
2316 + 0x05D6, 0x05BC, 0x05D8, 0x05BC, 0x05D9, 0x05BC, 0x05DA, 0x05BC,
2317 + 0x05DB, 0x05BC, 0x05DC, 0x05BC, 0x05DE, 0x05BC, 0x05E0, 0x05BC,
2318 + 0x05E1, 0x05BC, 0x05E3, 0x05BC, 0x05E4, 0x05BC, 0x05E6, 0x05BC,
2319 + 0x05E7, 0x05BC, 0x05E8, 0x05BC, 0x05E9, 0x05BC, 0x05EA, 0x05BC,
2320 + 0x05D5, 0x05B9, 0x05D1, 0x05BF, 0x05DB, 0x05BF, 0x05E4, 0x05BF
2323 +static const u_int8_t
2324 +__CFUniCharDecomposableBitmap[] = {
2325 + 0x01, 0x02, 0x03, 0x04, 0x05, 0x00, 0x06, 0x00,
2326 + 0x00, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x00, 0x0C,
2327 + 0x0D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2328 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0E, 0x0F,
2329 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2330 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2331 + 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2332 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2333 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2334 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2335 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2336 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2337 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2338 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2339 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2340 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2341 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2342 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2343 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2344 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2345 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2346 + 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF,
2347 + 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
2348 + 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
2349 + 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
2350 + 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
2351 + 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x11,
2352 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2353 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2354 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2355 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2356 + 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00, 0x00,
2358 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2359 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2360 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2361 + 0xBF, 0xFF, 0x7E, 0x3E, 0xBF, 0xFF, 0x7E, 0xBE,
2362 + 0xFF, 0xFF, 0xFC, 0xFF, 0x3F, 0xFF, 0xF1, 0x7E,
2363 + 0xF8, 0xF1, 0xF3, 0xFF, 0x3F, 0xFF, 0xFF, 0x7F,
2364 + 0x00, 0x00, 0x00, 0x00, 0x03, 0x80, 0x01, 0x00,
2365 + 0x00, 0xE0, 0xFF, 0xDF, 0xCF, 0xFF, 0x31, 0xFF,
2366 + 0xFF, 0xFF, 0xFF, 0xCF, 0xC0, 0xFF, 0x0F, 0x00,
2367 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2368 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2369 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2370 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2371 + 0x1B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x40,
2372 + 0xE0, 0xD7, 0x01, 0x00, 0x00, 0xFC, 0x01, 0x00,
2373 + 0x00, 0x7C, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00,
2374 + 0x8B, 0x70, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02,
2375 + 0x00, 0x00, 0x8B, 0x70, 0x00, 0x00, 0xC0, 0x00,
2376 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2377 + 0x06, 0x00, 0xCF, 0xFC, 0xFC, 0xFC, 0x3F, 0x03,
2378 + 0x00, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x00,
2379 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2380 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2381 + 0x05, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00,
2382 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x12, 0x00,
2383 + 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00,
2384 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2385 + 0x00, 0x18, 0x00, 0xB0, 0x00, 0x00, 0x00, 0x00,
2386 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x48, 0x00,
2387 + 0x00, 0x00, 0x00, 0x4E, 0x00, 0x00, 0x00, 0x00,
2388 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2389 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2390 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2391 + 0x00, 0x19, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00,
2392 + 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00,
2393 + 0x00, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2394 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2395 + 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2396 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2397 + 0x81, 0x0D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2398 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2399 + 0x00, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2400 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2401 + 0x00, 0x00, 0x00, 0x74, 0x00, 0x00, 0x00, 0x00,
2402 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2403 + 0x08, 0x20, 0x84, 0x10, 0x00, 0x02, 0x68, 0x01,
2404 + 0x02, 0x00, 0x08, 0x20, 0x84, 0x10, 0x00, 0x02,
2405 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2406 + 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00,
2407 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2408 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2409 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2410 + 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
2411 + 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
2412 + 0xFF, 0xFF, 0xFF, 0x0B, 0xFF, 0xFF, 0xFF, 0xFF,
2413 + 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x03,
2414 + 0xFF, 0xFF, 0x3F, 0x3F, 0xFF, 0xFF, 0xFF, 0xFF,
2415 + 0x3F, 0x3F, 0xFF, 0xAA, 0xFF, 0xFF, 0xFF, 0x3F,
2416 + 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xDF, 0x5F,
2417 + 0xDE, 0xFF, 0xCF, 0xEF, 0xFF, 0xFF, 0xDC, 0x3F,
2418 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2419 + 0x00, 0x50, 0x55, 0x55, 0xA5, 0x02, 0xDB, 0x36,
2420 + 0x00, 0x00, 0x10, 0x40, 0x00, 0x50, 0x55, 0x55,
2421 + 0xA5, 0x02, 0xDB, 0x36, 0x00, 0x00, 0x90, 0x47,
2422 + 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
2423 + 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
2424 + 0xFF, 0xFF, 0xFF, 0xFF, 0x0F, 0x00, 0x00, 0x00,
2425 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2426 + 0x00, 0x00, 0x00, 0xA0, 0x00, 0xFC, 0x7F, 0x5F,
2427 + 0xDB, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2428 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2429 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
2432 +static const u_int32_t
2433 +__CFUniCharPrecompSourceTable[] = {
2434 + 0x00000300, 0x00540000, 0x00000301, 0x00750054,
2435 + 0x00000302, 0x002000C9, 0x00000303, 0x001C00E9,
2436 + 0x00000304, 0x002C0105, 0x00000306, 0x00200131,
2437 + 0x00000307, 0x002E0151, 0x00000308, 0x0036017F,
2438 + 0x00000309, 0x001801B5, 0x0000030A, 0x000601CD,
2439 + 0x0000030B, 0x000601D3, 0x0000030C, 0x002501D9,
2440 + 0x0000030F, 0x000E01FE, 0x00000311, 0x000C020C,
2441 + 0x00000313, 0x000E0218, 0x00000314, 0x00100226,
2442 + 0x0000031B, 0x00040236, 0x00000323, 0x002A023A,
2443 + 0x00000324, 0x00020264, 0x00000325, 0x00020266,
2444 + 0x00000326, 0x00040268, 0x00000327, 0x0016026C,
2445 + 0x00000328, 0x000A0282, 0x0000032D, 0x000C028C,
2446 + 0x0000032E, 0x00020298, 0x00000330, 0x0006029A,
2447 + 0x00000331, 0x001102A0, 0x00000338, 0x002C02B1,
2448 + 0x00000342, 0x001D02DD, 0x00000345, 0x003F02FA,
2449 + 0x00000653, 0x00010339, 0x00000654, 0x0006033A,
2450 + 0x00000655, 0x00010340, 0x0000093C, 0x00030341,
2451 + 0x000009BE, 0x00010344, 0x000009D7, 0x00010345,
2452 + 0x00000B3E, 0x00010346, 0x00000B56, 0x00010347,
2453 + 0x00000B57, 0x00010348, 0x00000BBE, 0x00020349,
2454 + 0x00000BD7, 0x0002034B, 0x00000C56, 0x0001034D,
2455 + 0x00000CC2, 0x0001034E, 0x00000CD5, 0x0003034F,
2456 + 0x00000CD6, 0x00010352, 0x00000D3E, 0x00020353,
2457 + 0x00000D57, 0x00010355, 0x00000DCA, 0x00020356,
2458 + 0x00000DCF, 0x00010358, 0x00000DDF, 0x00010359,
2459 + 0x0000102E, 0x0001035A, 0x00003099, 0x0030035B,
2460 + 0x0000309A, 0x000A038B
2463 +static const u_int32_t __CFUniCharPrecompositionTableLength =
2464 + (sizeof(__CFUniCharPrecompSourceTable) / (sizeof(u_int32_t) * 2));
2467 +static const u_int16_t
2468 +__CFUniCharBMPPrecompDestinationTable[] = {
2469 + 0x0041, 0x00C0, 0x0045, 0x00C8, 0x0049, 0x00CC, 0x004E, 0x01F8,
2470 + 0x004F, 0x00D2, 0x0055, 0x00D9, 0x0057, 0x1E80, 0x0059, 0x1EF2,
2471 + 0x0061, 0x00E0, 0x0065, 0x00E8, 0x0069, 0x00EC, 0x006E, 0x01F9,
2472 + 0x006F, 0x00F2, 0x0075, 0x00F9, 0x0077, 0x1E81, 0x0079, 0x1EF3,
2473 + 0x00A8, 0x1FED, 0x00C2, 0x1EA6, 0x00CA, 0x1EC0, 0x00D4, 0x1ED2,
2474 + 0x00DC, 0x01DB, 0x00E2, 0x1EA7, 0x00EA, 0x1EC1, 0x00F4, 0x1ED3,
2475 + 0x00FC, 0x01DC, 0x0102, 0x1EB0, 0x0103, 0x1EB1, 0x0112, 0x1E14,
2476 + 0x0113, 0x1E15, 0x014C, 0x1E50, 0x014D, 0x1E51, 0x01A0, 0x1EDC,
2477 + 0x01A1, 0x1EDD, 0x01AF, 0x1EEA, 0x01B0, 0x1EEB, 0x0391, 0x1FBA,
2478 + 0x0395, 0x1FC8, 0x0397, 0x1FCA, 0x0399, 0x1FDA, 0x039F, 0x1FF8,
2479 + 0x03A5, 0x1FEA, 0x03A9, 0x1FFA, 0x03B1, 0x1F70, 0x03B5, 0x1F72,
2480 + 0x03B7, 0x1F74, 0x03B9, 0x1F76, 0x03BF, 0x1F78, 0x03C5, 0x1F7A,
2481 + 0x03C9, 0x1F7C, 0x03CA, 0x1FD2, 0x03CB, 0x1FE2, 0x0415, 0x0400,
2482 + 0x0418, 0x040D, 0x0435, 0x0450, 0x0438, 0x045D, 0x1F00, 0x1F02,
2483 + 0x1F01, 0x1F03, 0x1F08, 0x1F0A, 0x1F09, 0x1F0B, 0x1F10, 0x1F12,
2484 + 0x1F11, 0x1F13, 0x1F18, 0x1F1A, 0x1F19, 0x1F1B, 0x1F20, 0x1F22,
2485 + 0x1F21, 0x1F23, 0x1F28, 0x1F2A, 0x1F29, 0x1F2B, 0x1F30, 0x1F32,
2486 + 0x1F31, 0x1F33, 0x1F38, 0x1F3A, 0x1F39, 0x1F3B, 0x1F40, 0x1F42,
2487 + 0x1F41, 0x1F43, 0x1F48, 0x1F4A, 0x1F49, 0x1F4B, 0x1F50, 0x1F52,
2488 + 0x1F51, 0x1F53, 0x1F59, 0x1F5B, 0x1F60, 0x1F62, 0x1F61, 0x1F63,
2489 + 0x1F68, 0x1F6A, 0x1F69, 0x1F6B, 0x1FBF, 0x1FCD, 0x1FFE, 0x1FDD,
2490 + 0x0041, 0x00C1, 0x0043, 0x0106, 0x0045, 0x00C9, 0x0047, 0x01F4,
2491 + 0x0049, 0x00CD, 0x004B, 0x1E30, 0x004C, 0x0139, 0x004D, 0x1E3E,
2492 + 0x004E, 0x0143, 0x004F, 0x00D3, 0x0050, 0x1E54, 0x0052, 0x0154,
2493 + 0x0053, 0x015A, 0x0055, 0x00DA, 0x0057, 0x1E82, 0x0059, 0x00DD,
2494 + 0x005A, 0x0179, 0x0061, 0x00E1, 0x0063, 0x0107, 0x0065, 0x00E9,
2495 + 0x0067, 0x01F5, 0x0069, 0x00ED, 0x006B, 0x1E31, 0x006C, 0x013A,
2496 + 0x006D, 0x1E3F, 0x006E, 0x0144, 0x006F, 0x00F3, 0x0070, 0x1E55,
2497 + 0x0072, 0x0155, 0x0073, 0x015B, 0x0075, 0x00FA, 0x0077, 0x1E83,
2498 + 0x0079, 0x00FD, 0x007A, 0x017A, 0x00A8, 0x0385, 0x00C2, 0x1EA4,
2499 + 0x00C5, 0x01FA, 0x00C6, 0x01FC, 0x00C7, 0x1E08, 0x00CA, 0x1EBE,
2500 + 0x00CF, 0x1E2E, 0x00D4, 0x1ED0, 0x00D5, 0x1E4C, 0x00D8, 0x01FE,
2501 + 0x00DC, 0x01D7, 0x00E2, 0x1EA5, 0x00E5, 0x01FB, 0x00E6, 0x01FD,
2502 + 0x00E7, 0x1E09, 0x00EA, 0x1EBF, 0x00EF, 0x1E2F, 0x00F4, 0x1ED1,
2503 + 0x00F5, 0x1E4D, 0x00F8, 0x01FF, 0x00FC, 0x01D8, 0x0102, 0x1EAE,
2504 + 0x0103, 0x1EAF, 0x0112, 0x1E16, 0x0113, 0x1E17, 0x014C, 0x1E52,
2505 + 0x014D, 0x1E53, 0x0168, 0x1E78, 0x0169, 0x1E79, 0x01A0, 0x1EDA,
2506 + 0x01A1, 0x1EDB, 0x01AF, 0x1EE8, 0x01B0, 0x1EE9, 0x0391, 0x0386,
2507 + 0x0395, 0x0388, 0x0397, 0x0389, 0x0399, 0x038A, 0x039F, 0x038C,
2508 + 0x03A5, 0x038E, 0x03A9, 0x038F, 0x03B1, 0x03AC, 0x03B5, 0x03AD,
2509 + 0x03B7, 0x03AE, 0x03B9, 0x03AF, 0x03BF, 0x03CC, 0x03C5, 0x03CD,
2510 + 0x03C9, 0x03CE, 0x03CA, 0x0390, 0x03CB, 0x03B0, 0x03D2, 0x03D3,
2511 + 0x0413, 0x0403, 0x041A, 0x040C, 0x0433, 0x0453, 0x043A, 0x045C,
2512 + 0x1F00, 0x1F04, 0x1F01, 0x1F05, 0x1F08, 0x1F0C, 0x1F09, 0x1F0D,
2513 + 0x1F10, 0x1F14, 0x1F11, 0x1F15, 0x1F18, 0x1F1C, 0x1F19, 0x1F1D,
2514 + 0x1F20, 0x1F24, 0x1F21, 0x1F25, 0x1F28, 0x1F2C, 0x1F29, 0x1F2D,
2515 + 0x1F30, 0x1F34, 0x1F31, 0x1F35, 0x1F38, 0x1F3C, 0x1F39, 0x1F3D,
2516 + 0x1F40, 0x1F44, 0x1F41, 0x1F45, 0x1F48, 0x1F4C, 0x1F49, 0x1F4D,
2517 + 0x1F50, 0x1F54, 0x1F51, 0x1F55, 0x1F59, 0x1F5D, 0x1F60, 0x1F64,
2518 + 0x1F61, 0x1F65, 0x1F68, 0x1F6C, 0x1F69, 0x1F6D, 0x1FBF, 0x1FCE,
2519 + 0x1FFE, 0x1FDE, 0x0041, 0x00C2, 0x0043, 0x0108, 0x0045, 0x00CA,
2520 + 0x0047, 0x011C, 0x0048, 0x0124, 0x0049, 0x00CE, 0x004A, 0x0134,
2521 + 0x004F, 0x00D4, 0x0053, 0x015C, 0x0055, 0x00DB, 0x0057, 0x0174,
2522 + 0x0059, 0x0176, 0x005A, 0x1E90, 0x0061, 0x00E2, 0x0063, 0x0109,
2523 + 0x0065, 0x00EA, 0x0067, 0x011D, 0x0068, 0x0125, 0x0069, 0x00EE,
2524 + 0x006A, 0x0135, 0x006F, 0x00F4, 0x0073, 0x015D, 0x0075, 0x00FB,
2525 + 0x0077, 0x0175, 0x0079, 0x0177, 0x007A, 0x1E91, 0x1EA0, 0x1EAC,
2526 + 0x1EA1, 0x1EAD, 0x1EB8, 0x1EC6, 0x1EB9, 0x1EC7, 0x1ECC, 0x1ED8,
2527 + 0x1ECD, 0x1ED9, 0x0041, 0x00C3, 0x0045, 0x1EBC, 0x0049, 0x0128,
2528 + 0x004E, 0x00D1, 0x004F, 0x00D5, 0x0055, 0x0168, 0x0056, 0x1E7C,
2529 + 0x0059, 0x1EF8, 0x0061, 0x00E3, 0x0065, 0x1EBD, 0x0069, 0x0129,
2530 + 0x006E, 0x00F1, 0x006F, 0x00F5, 0x0075, 0x0169, 0x0076, 0x1E7D,
2531 + 0x0079, 0x1EF9, 0x00C2, 0x1EAA, 0x00CA, 0x1EC4, 0x00D4, 0x1ED6,
2532 + 0x00E2, 0x1EAB, 0x00EA, 0x1EC5, 0x00F4, 0x1ED7, 0x0102, 0x1EB4,
2533 + 0x0103, 0x1EB5, 0x01A0, 0x1EE0, 0x01A1, 0x1EE1, 0x01AF, 0x1EEE,
2534 + 0x01B0, 0x1EEF, 0x0041, 0x0100, 0x0045, 0x0112, 0x0047, 0x1E20,
2535 + 0x0049, 0x012A, 0x004F, 0x014C, 0x0055, 0x016A, 0x0059, 0x0232,
2536 + 0x0061, 0x0101, 0x0065, 0x0113, 0x0067, 0x1E21, 0x0069, 0x012B,
2537 + 0x006F, 0x014D, 0x0075, 0x016B, 0x0079, 0x0233, 0x00C4, 0x01DE,
2538 + 0x00C6, 0x01E2, 0x00D5, 0x022C, 0x00D6, 0x022A, 0x00DC, 0x01D5,
2539 + 0x00E4, 0x01DF, 0x00E6, 0x01E3, 0x00F5, 0x022D, 0x00F6, 0x022B,
2540 + 0x00FC, 0x01D6, 0x01EA, 0x01EC, 0x01EB, 0x01ED, 0x0226, 0x01E0,
2541 + 0x0227, 0x01E1, 0x022E, 0x0230, 0x022F, 0x0231, 0x0391, 0x1FB9,
2542 + 0x0399, 0x1FD9, 0x03A5, 0x1FE9, 0x03B1, 0x1FB1, 0x03B9, 0x1FD1,
2543 + 0x03C5, 0x1FE1, 0x0418, 0x04E2, 0x0423, 0x04EE, 0x0438, 0x04E3,
2544 + 0x0443, 0x04EF, 0x1E36, 0x1E38, 0x1E37, 0x1E39, 0x1E5A, 0x1E5C,
2545 + 0x1E5B, 0x1E5D, 0x0041, 0x0102, 0x0045, 0x0114, 0x0047, 0x011E,
2546 + 0x0049, 0x012C, 0x004F, 0x014E, 0x0055, 0x016C, 0x0061, 0x0103,
2547 + 0x0065, 0x0115, 0x0067, 0x011F, 0x0069, 0x012D, 0x006F, 0x014F,
2548 + 0x0075, 0x016D, 0x0228, 0x1E1C, 0x0229, 0x1E1D, 0x0391, 0x1FB8,
2549 + 0x0399, 0x1FD8, 0x03A5, 0x1FE8, 0x03B1, 0x1FB0, 0x03B9, 0x1FD0,
2550 + 0x03C5, 0x1FE0, 0x0410, 0x04D0, 0x0415, 0x04D6, 0x0416, 0x04C1,
2551 + 0x0418, 0x0419, 0x0423, 0x040E, 0x0430, 0x04D1, 0x0435, 0x04D7,
2552 + 0x0436, 0x04C2, 0x0438, 0x0439, 0x0443, 0x045E, 0x1EA0, 0x1EB6,
2553 + 0x1EA1, 0x1EB7, 0x0041, 0x0226, 0x0042, 0x1E02, 0x0043, 0x010A,
2554 + 0x0044, 0x1E0A, 0x0045, 0x0116, 0x0046, 0x1E1E, 0x0047, 0x0120,
2555 + 0x0048, 0x1E22, 0x0049, 0x0130, 0x004D, 0x1E40, 0x004E, 0x1E44,
2556 + 0x004F, 0x022E, 0x0050, 0x1E56, 0x0052, 0x1E58, 0x0053, 0x1E60,
2557 + 0x0054, 0x1E6A, 0x0057, 0x1E86, 0x0058, 0x1E8A, 0x0059, 0x1E8E,
2558 + 0x005A, 0x017B, 0x0061, 0x0227, 0x0062, 0x1E03, 0x0063, 0x010B,
2559 + 0x0064, 0x1E0B, 0x0065, 0x0117, 0x0066, 0x1E1F, 0x0067, 0x0121,
2560 + 0x0068, 0x1E23, 0x006D, 0x1E41, 0x006E, 0x1E45, 0x006F, 0x022F,
2561 + 0x0070, 0x1E57, 0x0072, 0x1E59, 0x0073, 0x1E61, 0x0074, 0x1E6B,
2562 + 0x0077, 0x1E87, 0x0078, 0x1E8B, 0x0079, 0x1E8F, 0x007A, 0x017C,
2563 + 0x015A, 0x1E64, 0x015B, 0x1E65, 0x0160, 0x1E66, 0x0161, 0x1E67,
2564 + 0x017F, 0x1E9B, 0x1E62, 0x1E68, 0x1E63, 0x1E69, 0x0041, 0x00C4,
2565 + 0x0045, 0x00CB, 0x0048, 0x1E26, 0x0049, 0x00CF, 0x004F, 0x00D6,
2566 + 0x0055, 0x00DC, 0x0057, 0x1E84, 0x0058, 0x1E8C, 0x0059, 0x0178,
2567 + 0x0061, 0x00E4, 0x0065, 0x00EB, 0x0068, 0x1E27, 0x0069, 0x00EF,
2568 + 0x006F, 0x00F6, 0x0074, 0x1E97, 0x0075, 0x00FC, 0x0077, 0x1E85,
2569 + 0x0078, 0x1E8D, 0x0079, 0x00FF, 0x00D5, 0x1E4E, 0x00F5, 0x1E4F,
2570 + 0x016A, 0x1E7A, 0x016B, 0x1E7B, 0x0399, 0x03AA, 0x03A5, 0x03AB,
2571 + 0x03B9, 0x03CA, 0x03C5, 0x03CB, 0x03D2, 0x03D4, 0x0406, 0x0407,
2572 + 0x0410, 0x04D2, 0x0415, 0x0401, 0x0416, 0x04DC, 0x0417, 0x04DE,
2573 + 0x0418, 0x04E4, 0x041E, 0x04E6, 0x0423, 0x04F0, 0x0427, 0x04F4,
2574 + 0x042B, 0x04F8, 0x042D, 0x04EC, 0x0430, 0x04D3, 0x0435, 0x0451,
2575 + 0x0436, 0x04DD, 0x0437, 0x04DF, 0x0438, 0x04E5, 0x043E, 0x04E7,
2576 + 0x0443, 0x04F1, 0x0447, 0x04F5, 0x044B, 0x04F9, 0x044D, 0x04ED,
2577 + 0x0456, 0x0457, 0x04D8, 0x04DA, 0x04D9, 0x04DB, 0x04E8, 0x04EA,
2578 + 0x04E9, 0x04EB, 0x0041, 0x1EA2, 0x0045, 0x1EBA, 0x0049, 0x1EC8,
2579 + 0x004F, 0x1ECE, 0x0055, 0x1EE6, 0x0059, 0x1EF6, 0x0061, 0x1EA3,
2580 + 0x0065, 0x1EBB, 0x0069, 0x1EC9, 0x006F, 0x1ECF, 0x0075, 0x1EE7,
2581 + 0x0079, 0x1EF7, 0x00C2, 0x1EA8, 0x00CA, 0x1EC2, 0x00D4, 0x1ED4,
2582 + 0x00E2, 0x1EA9, 0x00EA, 0x1EC3, 0x00F4, 0x1ED5, 0x0102, 0x1EB2,
2583 + 0x0103, 0x1EB3, 0x01A0, 0x1EDE, 0x01A1, 0x1EDF, 0x01AF, 0x1EEC,
2584 + 0x01B0, 0x1EED, 0x0041, 0x00C5, 0x0055, 0x016E, 0x0061, 0x00E5,
2585 + 0x0075, 0x016F, 0x0077, 0x1E98, 0x0079, 0x1E99, 0x004F, 0x0150,
2586 + 0x0055, 0x0170, 0x006F, 0x0151, 0x0075, 0x0171, 0x0423, 0x04F2,
2587 + 0x0443, 0x04F3, 0x0041, 0x01CD, 0x0043, 0x010C, 0x0044, 0x010E,
2588 + 0x0045, 0x011A, 0x0047, 0x01E6, 0x0048, 0x021E, 0x0049, 0x01CF,
2589 + 0x004B, 0x01E8, 0x004C, 0x013D, 0x004E, 0x0147, 0x004F, 0x01D1,
2590 + 0x0052, 0x0158, 0x0053, 0x0160, 0x0054, 0x0164, 0x0055, 0x01D3,
2591 + 0x005A, 0x017D, 0x0061, 0x01CE, 0x0063, 0x010D, 0x0064, 0x010F,
2592 + 0x0065, 0x011B, 0x0067, 0x01E7, 0x0068, 0x021F, 0x0069, 0x01D0,
2593 + 0x006A, 0x01F0, 0x006B, 0x01E9, 0x006C, 0x013E, 0x006E, 0x0148,
2594 + 0x006F, 0x01D2, 0x0072, 0x0159, 0x0073, 0x0161, 0x0074, 0x0165,
2595 + 0x0075, 0x01D4, 0x007A, 0x017E, 0x00DC, 0x01D9, 0x00FC, 0x01DA,
2596 + 0x01B7, 0x01EE, 0x0292, 0x01EF, 0x0041, 0x0200, 0x0045, 0x0204,
2597 + 0x0049, 0x0208, 0x004F, 0x020C, 0x0052, 0x0210, 0x0055, 0x0214,
2598 + 0x0061, 0x0201, 0x0065, 0x0205, 0x0069, 0x0209, 0x006F, 0x020D,
2599 + 0x0072, 0x0211, 0x0075, 0x0215, 0x0474, 0x0476, 0x0475, 0x0477,
2600 + 0x0041, 0x0202, 0x0045, 0x0206, 0x0049, 0x020A, 0x004F, 0x020E,
2601 + 0x0052, 0x0212, 0x0055, 0x0216, 0x0061, 0x0203, 0x0065, 0x0207,
2602 + 0x0069, 0x020B, 0x006F, 0x020F, 0x0072, 0x0213, 0x0075, 0x0217,
2603 + 0x0391, 0x1F08, 0x0395, 0x1F18, 0x0397, 0x1F28, 0x0399, 0x1F38,
2604 + 0x039F, 0x1F48, 0x03A9, 0x1F68, 0x03B1, 0x1F00, 0x03B5, 0x1F10,
2605 + 0x03B7, 0x1F20, 0x03B9, 0x1F30, 0x03BF, 0x1F40, 0x03C1, 0x1FE4,
2606 + 0x03C5, 0x1F50, 0x03C9, 0x1F60, 0x0391, 0x1F09, 0x0395, 0x1F19,
2607 + 0x0397, 0x1F29, 0x0399, 0x1F39, 0x039F, 0x1F49, 0x03A1, 0x1FEC,
2608 + 0x03A5, 0x1F59, 0x03A9, 0x1F69, 0x03B1, 0x1F01, 0x03B5, 0x1F11,
2609 + 0x03B7, 0x1F21, 0x03B9, 0x1F31, 0x03BF, 0x1F41, 0x03C1, 0x1FE5,
2610 + 0x03C5, 0x1F51, 0x03C9, 0x1F61, 0x004F, 0x01A0, 0x0055, 0x01AF,
2611 + 0x006F, 0x01A1, 0x0075, 0x01B0, 0x0041, 0x1EA0, 0x0042, 0x1E04,
2612 + 0x0044, 0x1E0C, 0x0045, 0x1EB8, 0x0048, 0x1E24, 0x0049, 0x1ECA,
2613 + 0x004B, 0x1E32, 0x004C, 0x1E36, 0x004D, 0x1E42, 0x004E, 0x1E46,
2614 + 0x004F, 0x1ECC, 0x0052, 0x1E5A, 0x0053, 0x1E62, 0x0054, 0x1E6C,
2615 + 0x0055, 0x1EE4, 0x0056, 0x1E7E, 0x0057, 0x1E88, 0x0059, 0x1EF4,
2616 + 0x005A, 0x1E92, 0x0061, 0x1EA1, 0x0062, 0x1E05, 0x0064, 0x1E0D,
2617 + 0x0065, 0x1EB9, 0x0068, 0x1E25, 0x0069, 0x1ECB, 0x006B, 0x1E33,
2618 + 0x006C, 0x1E37, 0x006D, 0x1E43, 0x006E, 0x1E47, 0x006F, 0x1ECD,
2619 + 0x0072, 0x1E5B, 0x0073, 0x1E63, 0x0074, 0x1E6D, 0x0075, 0x1EE5,
2620 + 0x0076, 0x1E7F, 0x0077, 0x1E89, 0x0079, 0x1EF5, 0x007A, 0x1E93,
2621 + 0x01A0, 0x1EE2, 0x01A1, 0x1EE3, 0x01AF, 0x1EF0, 0x01B0, 0x1EF1,
2622 + 0x0055, 0x1E72, 0x0075, 0x1E73, 0x0041, 0x1E00, 0x0061, 0x1E01,
2623 + 0x0053, 0x0218, 0x0054, 0x021A, 0x0073, 0x0219, 0x0074, 0x021B,
2624 + 0x0043, 0x00C7, 0x0044, 0x1E10, 0x0045, 0x0228, 0x0047, 0x0122,
2625 + 0x0048, 0x1E28, 0x004B, 0x0136, 0x004C, 0x013B, 0x004E, 0x0145,
2626 + 0x0052, 0x0156, 0x0053, 0x015E, 0x0054, 0x0162, 0x0063, 0x00E7,
2627 + 0x0064, 0x1E11, 0x0065, 0x0229, 0x0067, 0x0123, 0x0068, 0x1E29,
2628 + 0x006B, 0x0137, 0x006C, 0x013C, 0x006E, 0x0146, 0x0072, 0x0157,
2629 + 0x0073, 0x015F, 0x0074, 0x0163, 0x0041, 0x0104, 0x0045, 0x0118,
2630 + 0x0049, 0x012E, 0x004F, 0x01EA, 0x0055, 0x0172, 0x0061, 0x0105,
2631 + 0x0065, 0x0119, 0x0069, 0x012F, 0x006F, 0x01EB, 0x0075, 0x0173,
2632 + 0x0044, 0x1E12, 0x0045, 0x1E18, 0x004C, 0x1E3C, 0x004E, 0x1E4A,
2633 + 0x0054, 0x1E70, 0x0055, 0x1E76, 0x0064, 0x1E13, 0x0065, 0x1E19,
2634 + 0x006C, 0x1E3D, 0x006E, 0x1E4B, 0x0074, 0x1E71, 0x0075, 0x1E77,
2635 + 0x0048, 0x1E2A, 0x0068, 0x1E2B, 0x0045, 0x1E1A, 0x0049, 0x1E2C,
2636 + 0x0055, 0x1E74, 0x0065, 0x1E1B, 0x0069, 0x1E2D, 0x0075, 0x1E75,
2637 + 0x0042, 0x1E06, 0x0044, 0x1E0E, 0x004B, 0x1E34, 0x004C, 0x1E3A,
2638 + 0x004E, 0x1E48, 0x0052, 0x1E5E, 0x0054, 0x1E6E, 0x005A, 0x1E94,
2639 + 0x0062, 0x1E07, 0x0064, 0x1E0F, 0x0068, 0x1E96, 0x006B, 0x1E35,
2640 + 0x006C, 0x1E3B, 0x006E, 0x1E49, 0x0072, 0x1E5F, 0x0074, 0x1E6F,
2641 + 0x007A, 0x1E95, 0x003C, 0x226E, 0x003D, 0x2260, 0x003E, 0x226F,
2642 + 0x2190, 0x219A, 0x2192, 0x219B, 0x2194, 0x21AE, 0x21D0, 0x21CD,
2643 + 0x21D2, 0x21CF, 0x21D4, 0x21CE, 0x2203, 0x2204, 0x2208, 0x2209,
2644 + 0x220B, 0x220C, 0x2223, 0x2224, 0x2225, 0x2226, 0x223C, 0x2241,
2645 + 0x2243, 0x2244, 0x2245, 0x2247, 0x2248, 0x2249, 0x224D, 0x226D,
2646 + 0x2261, 0x2262, 0x2264, 0x2270, 0x2265, 0x2271, 0x2272, 0x2274,
2647 + 0x2273, 0x2275, 0x2276, 0x2278, 0x2277, 0x2279, 0x227A, 0x2280,
2648 + 0x227B, 0x2281, 0x227C, 0x22E0, 0x227D, 0x22E1, 0x2282, 0x2284,
2649 + 0x2283, 0x2285, 0x2286, 0x2288, 0x2287, 0x2289, 0x2291, 0x22E2,
2650 + 0x2292, 0x22E3, 0x22A2, 0x22AC, 0x22A8, 0x22AD, 0x22A9, 0x22AE,
2651 + 0x22AB, 0x22AF, 0x22B2, 0x22EA, 0x22B3, 0x22EB, 0x22B4, 0x22EC,
2652 + 0x22B5, 0x22ED, 0x00A8, 0x1FC1, 0x03B1, 0x1FB6, 0x03B7, 0x1FC6,
2653 + 0x03B9, 0x1FD6, 0x03C5, 0x1FE6, 0x03C9, 0x1FF6, 0x03CA, 0x1FD7,
2654 + 0x03CB, 0x1FE7, 0x1F00, 0x1F06, 0x1F01, 0x1F07, 0x1F08, 0x1F0E,
2655 + 0x1F09, 0x1F0F, 0x1F20, 0x1F26, 0x1F21, 0x1F27, 0x1F28, 0x1F2E,
2656 + 0x1F29, 0x1F2F, 0x1F30, 0x1F36, 0x1F31, 0x1F37, 0x1F38, 0x1F3E,
2657 + 0x1F39, 0x1F3F, 0x1F50, 0x1F56, 0x1F51, 0x1F57, 0x1F59, 0x1F5F,
2658 + 0x1F60, 0x1F66, 0x1F61, 0x1F67, 0x1F68, 0x1F6E, 0x1F69, 0x1F6F,
2659 + 0x1FBF, 0x1FCF, 0x1FFE, 0x1FDF, 0x0391, 0x1FBC, 0x0397, 0x1FCC,
2660 + 0x03A9, 0x1FFC, 0x03AC, 0x1FB4, 0x03AE, 0x1FC4, 0x03B1, 0x1FB3,
2661 + 0x03B7, 0x1FC3, 0x03C9, 0x1FF3, 0x03CE, 0x1FF4, 0x1F00, 0x1F80,
2662 + 0x1F01, 0x1F81, 0x1F02, 0x1F82, 0x1F03, 0x1F83, 0x1F04, 0x1F84,
2663 + 0x1F05, 0x1F85, 0x1F06, 0x1F86, 0x1F07, 0x1F87, 0x1F08, 0x1F88,
2664 + 0x1F09, 0x1F89, 0x1F0A, 0x1F8A, 0x1F0B, 0x1F8B, 0x1F0C, 0x1F8C,
2665 + 0x1F0D, 0x1F8D, 0x1F0E, 0x1F8E, 0x1F0F, 0x1F8F, 0x1F20, 0x1F90,
2666 + 0x1F21, 0x1F91, 0x1F22, 0x1F92, 0x1F23, 0x1F93, 0x1F24, 0x1F94,
2667 + 0x1F25, 0x1F95, 0x1F26, 0x1F96, 0x1F27, 0x1F97, 0x1F28, 0x1F98,
2668 + 0x1F29, 0x1F99, 0x1F2A, 0x1F9A, 0x1F2B, 0x1F9B, 0x1F2C, 0x1F9C,
2669 + 0x1F2D, 0x1F9D, 0x1F2E, 0x1F9E, 0x1F2F, 0x1F9F, 0x1F60, 0x1FA0,
2670 + 0x1F61, 0x1FA1, 0x1F62, 0x1FA2, 0x1F63, 0x1FA3, 0x1F64, 0x1FA4,
2671 + 0x1F65, 0x1FA5, 0x1F66, 0x1FA6, 0x1F67, 0x1FA7, 0x1F68, 0x1FA8,
2672 + 0x1F69, 0x1FA9, 0x1F6A, 0x1FAA, 0x1F6B, 0x1FAB, 0x1F6C, 0x1FAC,
2673 + 0x1F6D, 0x1FAD, 0x1F6E, 0x1FAE, 0x1F6F, 0x1FAF, 0x1F70, 0x1FB2,
2674 + 0x1F74, 0x1FC2, 0x1F7C, 0x1FF2, 0x1FB6, 0x1FB7, 0x1FC6, 0x1FC7,
2675 + 0x1FF6, 0x1FF7, 0x0627, 0x0622, 0x0627, 0x0623, 0x0648, 0x0624,
2676 + 0x064A, 0x0626, 0x06C1, 0x06C2, 0x06D2, 0x06D3, 0x06D5, 0x06C0,
2677 + 0x0627, 0x0625, 0x0928, 0x0929, 0x0930, 0x0931, 0x0933, 0x0934,
2678 + 0x09C7, 0x09CB, 0x09C7, 0x09CC, 0x0B47, 0x0B4B, 0x0B47, 0x0B48,
2679 + 0x0B47, 0x0B4C, 0x0BC6, 0x0BCA, 0x0BC7, 0x0BCB, 0x0B92, 0x0B94,
2680 + 0x0BC6, 0x0BCC, 0x0C46, 0x0C48, 0x0CC6, 0x0CCA, 0x0CBF, 0x0CC0,
2681 + 0x0CC6, 0x0CC7, 0x0CCA, 0x0CCB, 0x0CC6, 0x0CC8, 0x0D46, 0x0D4A,
2682 + 0x0D47, 0x0D4B, 0x0D46, 0x0D4C, 0x0DD9, 0x0DDA, 0x0DDC, 0x0DDD,
2683 + 0x0DD9, 0x0DDC, 0x0DD9, 0x0DDE, 0x1025, 0x1026, 0x3046, 0x3094,
2684 + 0x304B, 0x304C, 0x304D, 0x304E, 0x304F, 0x3050, 0x3051, 0x3052,
2685 + 0x3053, 0x3054, 0x3055, 0x3056, 0x3057, 0x3058, 0x3059, 0x305A,
2686 + 0x305B, 0x305C, 0x305D, 0x305E, 0x305F, 0x3060, 0x3061, 0x3062,
2687 + 0x3064, 0x3065, 0x3066, 0x3067, 0x3068, 0x3069, 0x306F, 0x3070,
2688 + 0x3072, 0x3073, 0x3075, 0x3076, 0x3078, 0x3079, 0x307B, 0x307C,
2689 + 0x309D, 0x309E, 0x30A6, 0x30F4, 0x30AB, 0x30AC, 0x30AD, 0x30AE,
2690 + 0x30AF, 0x30B0, 0x30B1, 0x30B2, 0x30B3, 0x30B4, 0x30B5, 0x30B6,
2691 + 0x30B7, 0x30B8, 0x30B9, 0x30BA, 0x30BB, 0x30BC, 0x30BD, 0x30BE,
2692 + 0x30BF, 0x30C0, 0x30C1, 0x30C2, 0x30C4, 0x30C5, 0x30C6, 0x30C7,
2693 + 0x30C8, 0x30C9, 0x30CF, 0x30D0, 0x30D2, 0x30D3, 0x30D5, 0x30D6,
2694 + 0x30D8, 0x30D9, 0x30DB, 0x30DC, 0x30EF, 0x30F7, 0x30F0, 0x30F8,
2695 + 0x30F1, 0x30F9, 0x30F2, 0x30FA, 0x30FD, 0x30FE, 0x306F, 0x3071,
2696 + 0x3072, 0x3074, 0x3075, 0x3077, 0x3078, 0x307A, 0x307B, 0x307D,
2697 + 0x30CF, 0x30D1, 0x30D2, 0x30D4, 0x30D5, 0x30D7, 0x30D8, 0x30DA,
2701 +static const u_int8_t
2702 +__CFUniCharCombiningBitmap[] = {
2703 + 0x00, 0x00, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
2704 + 0x00, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C,
2705 + 0x0D, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0E,
2706 + 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2707 + 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2708 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2709 + 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2710 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2711 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2712 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2713 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2714 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2715 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2716 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2717 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2718 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2719 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2720 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2721 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2722 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2723 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2724 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2725 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2726 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2727 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2728 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2729 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2730 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2731 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2732 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2733 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2734 + 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x13, 0x00,
2736 + 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
2737 + 0xFF, 0xFF, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00,
2738 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2739 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2740 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2741 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2742 + 0x78, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2743 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2744 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2745 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2746 + 0x00, 0x00, 0xFE, 0xFF, 0xFB, 0xFF, 0xFF, 0xBB,
2747 + 0x16, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2748 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2749 + 0x00, 0xF8, 0x3F, 0x00, 0x00, 0x00, 0x01, 0x00,
2750 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2751 + 0x00, 0x00, 0xC0, 0xFF, 0x9F, 0x3D, 0x00, 0x00,
2752 + 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0xFF, 0xFF,
2753 + 0xFF, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2754 + 0x00, 0x00, 0x00, 0x00, 0xC0, 0xFF, 0x01, 0x00,
2755 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2756 + 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xD0,
2757 + 0xFF, 0x3F, 0x1E, 0x00, 0x0C, 0x00, 0x00, 0x00,
2758 + 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xD0,
2759 + 0x9F, 0x39, 0x80, 0x00, 0x0C, 0x00, 0x00, 0x00,
2760 + 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xD0,
2761 + 0x87, 0x39, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00,
2762 + 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xD0,
2763 + 0xBF, 0x3B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2764 + 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xD0,
2765 + 0x8F, 0x39, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00,
2766 + 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0,
2767 + 0xC7, 0x3D, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
2768 + 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0,
2769 + 0xDF, 0x3D, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00,
2770 + 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0,
2771 + 0xDF, 0x3D, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00,
2772 + 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0,
2773 + 0xCF, 0x3D, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00,
2774 + 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2775 + 0x00, 0x84, 0x5F, 0xFF, 0x00, 0x00, 0x0C, 0x00,
2776 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF2, 0x07,
2777 + 0x80, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2778 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF2, 0x1B,
2779 + 0x00, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2780 + 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0xA0, 0xC2,
2781 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFE, 0xFF,
2782 + 0xDF, 0x00, 0xFF, 0xFE, 0xFF, 0xFF, 0xFF, 0x1F,
2783 + 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2784 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xF0, 0xC7, 0x03,
2785 + 0x00, 0x00, 0xC0, 0x03, 0x00, 0x00, 0x00, 0x00,
2786 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2787 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2788 + 0x00, 0x00, 0x1C, 0x00, 0x00, 0x00, 0x1C, 0x00,
2789 + 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x0C, 0x00,
2790 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF0, 0xFF,
2791 + 0xFF, 0xFF, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00,
2792 + 0x00, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2793 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2794 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00,
2795 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2796 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2797 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2798 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2799 + 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x07, 0x00, 0x00,
2800 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xFC, 0x00, 0x00,
2801 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2802 + 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00,
2803 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2804 + 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00,
2805 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2806 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2807 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2808 + 0xFF, 0xFF, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00,
2809 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2810 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2811 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2812 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2813 + 0x00, 0x00, 0x00, 0x00, 0xFE, 0xFF, 0x3F, 0x00,
2814 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF,
2815 + 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
2818 +/* Surrogate Pair Constants */
2819 +#define SP_HALF_SHIFT 10
2820 +#define SP_HALF_BASE 0x0010000UL
2821 +#define SP_HALF_MASK 0x3FFUL
2823 +#define SP_HIGH_FIRST 0xD800UL
2824 +#define SP_HIGH_LAST 0xDBFFUL
2825 +#define SP_LOW_FIRST 0xDC00UL
2826 +#define SP_LOW_LAST 0xDFFFUL
2829 + * Test for a combining character.
2831 + * Similar to __CFUniCharIsNonBaseCharacter except that
2832 + * unicode_combinable also includes Hangul Jamo characters.
2835 +unicode_combinable(u_int16_t character)
2837 + const u_int8_t *bitmap = __CFUniCharCombiningBitmap;
2840 + if (character < 0x0300)
2843 + value = bitmap[(character >> 8) & 0xFF];
2845 + if (value == 0xFF) {
2847 + } else if (value) {
2848 + bitmap = bitmap + ((value - 1) * 32) + 256;
2849 + return (bitmap[(character & 0xFF) / 8] & (1 << (character % 8)) ? 1 : 0);
2855 + * Test for a precomposed character.
2857 + * Similar to __CFUniCharIsDecomposableCharacter.
2860 +unicode_decomposeable(u_int16_t character) {
2861 + const u_int8_t *bitmap = __CFUniCharDecomposableBitmap;
2864 + if (character < 0x00C0)
2867 + value = bitmap[(character >> 8) & 0xFF];
2869 + if (value == 0xFF) {
2871 + } else if (value) {
2872 + bitmap = bitmap + ((value - 1) * 32) + 256;
2873 + return (bitmap[(character & 0xFF) / 8] & (1 << (character % 8)) ? 1 : 0);
2878 +static int unicode_decompose(u_int16_t character, u_int16_t *convertedChars);
2879 +static u_int16_t unicode_combine(u_int16_t base, u_int16_t combining);
2881 +char utf_extrabytes[32] = {
2882 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2883 + -1, -1, -1, -1, -1, -1, -1, -1, 1, 1, 1, 1, 2, 2, 3, -1
2887 + * utf8_encodestr - Encodes a Unicode string to UTF-8
2890 + * The resulting UTF-8 string is NULL terminated.
2892 + * If '/' chars are allowed on disk then an alternate
2893 + * (replacement) char must be provided in altslash.
2896 + * UTF_REVERSE_ENDIAN: Unicode byteorder is opposite current runtime
2897 + * UTF_NO_NULL_TERM: don't add NULL termination to UTF-8 output
2900 + * ENAMETOOLONG: Name didn't fit; only buflen bytes were encoded
2901 + * EINVAL: Illegal char found; char was replaced by an '_'.
2904 +utf8_encodestr(const u_int16_t * ucsp, size_t ucslen, u_int8_t * utf8p,
2905 + size_t * utf8len, size_t buflen, u_int16_t altslash, int flags)
2907 + u_int8_t * bufstart;
2908 + u_int8_t * bufend;
2910 + u_int16_t * chp = NULL;
2911 + u_int16_t sequence[8];
2914 + int swapbytes = (flags & UTF_REVERSE_ENDIAN);
2915 + int nullterm = ((flags & UTF_NO_NULL_TERM) == 0);
2916 + int decompose = (flags & UTF_DECOMPOSED);
2920 + bufend = bufstart + buflen;
2923 + charcnt = ucslen / 2;
2925 + while (charcnt-- > 0) {
2930 + ucs_ch = swapbytes ? (*ucsp++) : *ucsp++;
2932 + if (decompose && unicode_decomposeable(ucs_ch)) {
2933 + extra = unicode_decompose(ucs_ch, sequence) - 1;
2935 + ucs_ch = sequence[0];
2936 + chp = &sequence[1];
2940 + if (ucs_ch < 0x0080) {
2941 + if (utf8p >= bufend) {
2942 + result = ENAMETOOLONG;
2945 + *utf8p++ = ucs_ch;
2947 + } else if (ucs_ch < 0x800) {
2948 + if ((utf8p + 1) >= bufend) {
2949 + result = ENAMETOOLONG;
2952 + *utf8p++ = 0xc0 | (ucs_ch >> 6);
2953 + *utf8p++ = 0x80 | (0x3f & ucs_ch);
2956 + /* Combine valid surrogate pairs */
2957 + if (ucs_ch >= SP_HIGH_FIRST && ucs_ch <= SP_HIGH_LAST
2962 + ch2 = swapbytes ? (*ucsp) : *ucsp;
2963 + if (ch2 >= SP_LOW_FIRST && ch2 <= SP_LOW_LAST) {
2964 + pair = ((ucs_ch - SP_HIGH_FIRST) << SP_HALF_SHIFT)
2965 + + (ch2 - SP_LOW_FIRST) + SP_HALF_BASE;
2966 + if ((utf8p + 3) >= bufend) {
2967 + result = ENAMETOOLONG;
2972 + *utf8p++ = 0xf0 | (pair >> 18);
2973 + *utf8p++ = 0x80 | (0x3f & (pair >> 12));
2974 + *utf8p++ = 0x80 | (0x3f & (pair >> 6));
2975 + *utf8p++ = 0x80 | (0x3f & pair);
2979 + if ((utf8p + 2) >= bufend) {
2980 + result = ENAMETOOLONG;
2983 + *utf8p++ = 0xe0 | (ucs_ch >> 12);
2984 + *utf8p++ = 0x80 | (0x3f & (ucs_ch >> 6));
2985 + *utf8p++ = 0x80 | (0x3f & ucs_ch);
2989 + *utf8len = utf8p - bufstart;
2998 + * utf8_decodestr - Decodes a UTF-8 string back to Unicode
3001 + * The input UTF-8 string does not need to be null terminated
3002 + * if utf8len is set.
3004 + * If '/' chars are allowed on disk then an alternate
3005 + * (replacement) char must be provided in altslash.
3008 + * UTF_REV_ENDIAN: Unicode byteorder is oposite current runtime
3009 + * UTF_DECOMPOSED: Unicode output string must be fully decompsed
3012 + * ENAMETOOLONG: Name didn't fit; only ucslen chars were decoded.
3013 + * EINVAL: Illegal UTF-8 sequence found.
3016 +utf8_decodestr(const u_int8_t* utf8p, size_t utf8len, u_int16_t* ucsp,
3017 + size_t *ucslen, size_t buflen, u_int16_t altslash, int flags, size_t *consumed)
3019 + u_int16_t* bufstart;
3020 + u_int16_t* bufend;
3021 + unsigned int ucs_ch;
3022 + unsigned int byte;
3024 + int decompose, precompose, swapbytes;
3025 + const u_int8_t *utf8start, *utf8lastpass;
3027 + decompose = (flags & UTF_DECOMPOSED);
3028 + precompose = (flags & UTF_PRECOMPOSED);
3029 + swapbytes = (flags & UTF_REVERSE_ENDIAN);
3032 + bufend = (u_int16_t *)((u_int8_t *)ucsp + buflen);
3033 + utf8start = utf8p;
3035 + while (utf8len-- > 0) {
3038 + if (ucsp >= bufend)
3041 + /* check for ascii */
3042 + if (byte < 0x80) {
3043 + ucs_ch = byte; /* 1st byte */
3046 + int extrabytes = utf_extrabytes[byte >> 3];
3048 + if (utf8len < extrabytes)
3050 + utf8len -= extrabytes;
3052 + switch (extrabytes) {
3054 + ch = byte; ch <<= 6; /* 1st byte */
3055 + byte = *utf8p++; /* 2nd byte */
3056 + if ((byte >> 6) != 2)
3059 + ch -= 0x00003080UL;
3065 + ch = byte; ch <<= 6; /* 1st byte */
3066 + byte = *utf8p++; /* 2nd byte */
3067 + if ((byte >> 6) != 2)
3069 + ch += byte; ch <<= 6;
3070 + byte = *utf8p++; /* 3rd byte */
3071 + if ((byte >> 6) != 2)
3074 + ch -= 0x000E2080UL;
3077 + if (ch >= 0xD800) {
3080 + if (ch == 0xFFFE || ch == 0xFFFF)
3086 + ch = byte; ch <<= 6; /* 1st byte */
3087 + byte = *utf8p++; /* 2nd byte */
3088 + if ((byte >> 6) != 2)
3090 + ch += byte; ch <<= 6;
3091 + byte = *utf8p++; /* 3rd byte */
3092 + if ((byte >> 6) != 2)
3094 + ch += byte; ch <<= 6;
3095 + byte = *utf8p++; /* 4th byte */
3096 + if ((byte >> 6) != 2)
3099 + ch -= 0x03C82080UL + SP_HALF_BASE;
3100 + ucs_ch = (ch >> SP_HALF_SHIFT) + SP_HIGH_FIRST;
3101 + if (ucs_ch < SP_HIGH_FIRST || ucs_ch > SP_HIGH_LAST)
3103 + *ucsp++ = swapbytes ? (ucs_ch) : ucs_ch;
3104 + if (ucsp >= bufend)
3106 + ucs_ch = (ch & SP_HALF_MASK) + SP_LOW_FIRST;
3107 + if (ucs_ch < SP_LOW_FIRST || ucs_ch > SP_LOW_LAST)
3109 + *ucsp++ = swapbytes ? (ucs_ch) : ucs_ch;
3115 + if (precompose && (ucsp != bufstart)) {
3116 + u_int16_t composite, base;
3118 + if (unicode_combinable(ucs_ch)) {
3119 + base = swapbytes ? (*(ucsp - 1)) : *(ucsp - 1);
3120 + composite = unicode_combine(base, ucs_ch);
3123 + ucs_ch = composite;
3131 + *ucsp++ = swapbytes ? (ucs_ch) : ucs_ch;
3132 + utf8lastpass = utf8p;
3136 + *ucslen = (u_int8_t*)ucsp - (u_int8_t*)bufstart;
3137 + *consumed = utf8lastpass - utf8start;
3145 + result = ENAMETOOLONG;
3150 + * Unicode 3.2 decomposition code (derived from Core Foundation)
3156 +} unicode_mappings32;
3158 +static inline u_int32_t
3159 +getmappedvalue32(const unicode_mappings32 *theTable, u_int32_t numElem,
3160 + u_int16_t character)
3162 + const unicode_mappings32 *p, *q, *divider;
3164 + if ((character < theTable[0]._key) || (character > theTable[numElem-1]._key))
3168 + q = p + (numElem-1);
3170 + divider = p + ((q - p) >> 1); /* divide by 2 */
3171 + if (character < divider->_key) { q = divider - 1; }
3172 + else if (character > divider->_key) { p = divider + 1; }
3173 + else { return (divider->_value); }
3178 +#define RECURSIVE_DECOMPOSITION (1 << 15)
3179 +#define EXTRACT_COUNT(value) (((value) >> 12) & 0x0007)
3184 +} unicode_mappings16;
3186 +static inline u_int16_t
3187 +getmappedvalue16(const unicode_mappings16 *theTable, u_int32_t numElem,
3188 + u_int16_t character)
3190 + const unicode_mappings16 *p, *q, *divider;
3192 + if ((character < theTable[0]._key) || (character > theTable[numElem-1]._key))
3196 + q = p + (numElem-1);
3198 + divider = p + ((q - p) >> 1); /* divide by 2 */
3199 + if (character < divider->_key)
3201 + else if (character > divider->_key)
3204 + return (divider->_value);
3211 +unicode_recursive_decompose(u_int16_t character, u_int16_t *convertedChars)
3215 + u_int16_t firstChar;
3216 + u_int16_t theChar;
3217 + const u_int16_t *bmpMappings;
3218 + u_int32_t usedLength;
3220 + value = getmappedvalue16(
3221 + (const unicode_mappings16 *)__CFUniCharDecompositionTable,
3222 + __UniCharDecompositionTableLength, character);
3223 + length = EXTRACT_COUNT(value);
3224 + firstChar = value & 0x0FFF;
3225 + theChar = firstChar;
3226 + bmpMappings = (length == 1 ? &theChar : __CFUniCharMultipleDecompositionTable + firstChar);
3229 + if (value & RECURSIVE_DECOMPOSITION) {
3230 + usedLength = unicode_recursive_decompose((u_int16_t)*bmpMappings, convertedChars);
3232 + --length; /* Decrement for the first char */
3236 + convertedChars += usedLength;
3239 + usedLength += length;
3242 + *(convertedChars++) = *(bmpMappings++);
3244 + return (usedLength);
3247 +#define HANGUL_SBASE 0xAC00
3248 +#define HANGUL_LBASE 0x1100
3249 +#define HANGUL_VBASE 0x1161
3250 +#define HANGUL_TBASE 0x11A7
3252 +#define HANGUL_SCOUNT 11172
3253 +#define HANGUL_LCOUNT 19
3254 +#define HANGUL_VCOUNT 21
3255 +#define HANGUL_TCOUNT 28
3256 +#define HANGUL_NCOUNT (HANGUL_VCOUNT * HANGUL_TCOUNT)
3259 + * unicode_decompose - decompose a composed Unicode char
3261 + * Composed Unicode characters are forbidden on
3262 + * HFS Plus volumes. ucs_decompose will convert a
3263 + * composed character into its correct decomposed
3266 + * Similar to CFUniCharDecomposeCharacter
3269 +unicode_decompose(u_int16_t character, u_int16_t *convertedChars)
3271 + if ((character >= HANGUL_SBASE) &&
3272 + (character <= (HANGUL_SBASE + HANGUL_SCOUNT))) {
3275 + character -= HANGUL_SBASE;
3276 + length = (character % HANGUL_TCOUNT ? 3 : 2);
3278 + *(convertedChars++) =
3279 + character / HANGUL_NCOUNT + HANGUL_LBASE;
3280 + *(convertedChars++) =
3281 + (character % HANGUL_NCOUNT) / HANGUL_TCOUNT + HANGUL_VBASE;
3283 + *convertedChars = (character % HANGUL_TCOUNT) + HANGUL_TBASE;
3286 + return (unicode_recursive_decompose(character, convertedChars));
3291 + * unicode_combine - generate a precomposed Unicode char
3293 + * Precomposed Unicode characters are required for some volume
3294 + * formats and network protocols. unicode_combine will combine
3295 + * a decomposed character sequence into a single precomposed
3296 + * (composite) character.
3298 + * Similar toCFUniCharPrecomposeCharacter but unicode_combine
3299 + * also handles Hangul Jamo characters.
3302 +unicode_combine(u_int16_t base, u_int16_t combining)
3306 + /* Check HANGUL */
3307 + if ((combining >= HANGUL_VBASE) && (combining < (HANGUL_TBASE + HANGUL_TCOUNT))) {
3308 + /* 2 char Hangul sequences */
3309 + if ((combining < (HANGUL_VBASE + HANGUL_VCOUNT)) &&
3310 + (base >= HANGUL_LBASE && base < (HANGUL_LBASE + HANGUL_LCOUNT))) {
3311 + return (HANGUL_SBASE +
3312 + ((base - HANGUL_LBASE)*(HANGUL_VCOUNT*HANGUL_TCOUNT)) +
3313 + ((combining - HANGUL_VBASE)*HANGUL_TCOUNT));
3316 + /* 3 char Hangul sequences */
3317 + if ((combining > HANGUL_TBASE) &&
3318 + (base >= HANGUL_SBASE && base < (HANGUL_SBASE + HANGUL_SCOUNT))) {
3319 + if ((base - HANGUL_SBASE) % HANGUL_TCOUNT)
3322 + return (base + (combining - HANGUL_TBASE));
3326 + value = getmappedvalue32(
3327 + (const unicode_mappings32 *)__CFUniCharPrecompSourceTable,
3328 + __CFUniCharPrecompositionTableLength, combining);
3331 + value = getmappedvalue16(
3332 + (const unicode_mappings16 *)
3333 + ((u_int32_t *)__CFUniCharBMPPrecompDestinationTable + (value & 0xFFFF)),
3334 + (value >> 16), base);
3340 +utf8mac_mbtowc (conv_t conv, ucs4_t *pwc, const unsigned char *s, int n)
3342 + u_int16_t ucsp[13];
3343 + size_t ucslen = 0, consumed = 0;
3346 + bzero(&ucsp, sizeof(ucsp));
3349 + ret = utf8_decodestr(s, n, ucsp, &ucslen, sizeof(ucsp), NULL, UTF_PRECOMPOSED, &consumed);
3351 + if (ret == ENAMETOOLONG) /* Name didn't fit; only ucslen chars were decoded */
3352 + return RET_TOOFEW(0);
3354 + if ( ret == EINVAL) /* Illegal UTF-8 sequence found */
3357 + if((ret = ucs2_mbtowc(conv, pwc, (const unsigned char *) ucsp, ucslen)) < 0)
3364 +utf8mac_wctomb (conv_t conv, unsigned char *r, ucs4_t wc, int n) /* n == 0 is acceptable */
3368 + u_int16_t ucs_string[13];
3370 + if((ret = ucs2_wctomb(conv, (unsigned char *) ucs_string, wc, sizeof(ucs_string))) < 0)
3373 + utf8_encodestr(ucs_string, ret, r, &len, n, 0, UTF_NO_NULL_TERM | UTF_DECOMPOSED);