removed old libs
[TestXSLT.git] / libiconv / lib / translit.h
1 /*
2  * Copyright (C) 1999-2001 Free Software Foundation, Inc.
3  * This file is part of the GNU LIBICONV Library.
4  *
5  * The GNU LIBICONV Library is free software; you can redistribute it
6  * and/or modify it under the terms of the GNU Library General Public
7  * License as published by the Free Software Foundation; either version 2
8  * of the License, or (at your option) any later version.
9  *
10  * The GNU LIBICONV Library is distributed in the hope that it will be
11  * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13  * Library General Public License for more details.
14  *
15  * You should have received a copy of the GNU Library General Public
16  * License along with the GNU LIBICONV Library; see the file COPYING.LIB.
17  * If not, write to the Free Software Foundation, Inc., 59 Temple Place -
18  * Suite 330, Boston, MA 02111-1307, USA.
19  */
20
21 /*
22  * Transliteration table
23  */
24
25 static const unsigned short translit_data[5296] = {
26    1, ' ',
27    1, '!',
28    1, 'c',
29    2, 'l', 'b',
30    3, 'y', 'e', 'n',
31    1, '|',
32    2, 'S', 'S',
33    1, '"',
34    3, '(', 'c', ')',
35    1, 'a',
36    2, '<', '<',
37    3, 'n', 'o', 't',
38    1, '-',
39    3, '(', 'R', ')',
40    2, '^', '0',
41    3, '+', '/', '-',
42    2, '^', '2',
43    2, '^', '3',
44    1,'\'',
45    1, 'u',
46    1, 'P',
47    1, '.',
48    1, ',',
49    2, '^', '1',
50    1, 'o',
51    2, '>', '>',
52    5, ' ', '1', '/', '4', ' ',
53    5, ' ', '1', '/', '2', ' ',
54    5, ' ', '3', '/', '4', ' ',
55    1, '?',
56    2, '`', 'A',
57    2,0xB4, 'A',
58    2, '^', 'A',
59    2, '~', 'A',
60    2, '"', 'A',
61    1, 'A',
62    2, 'A', 'E',
63    1, 'C',
64    2, '`', 'E',
65    2,0xB4, 'E',
66    2, '^', 'E',
67    2, '"', 'E',
68    2, '`', 'I',
69    2,0xB4, 'I',
70    2, '^', 'I',
71    2, '"', 'I',
72    1, 'D',
73    2, '~', 'N',
74    2, '`', 'O',
75    2,0xB4, 'O',
76    2, '^', 'O',
77    2, '~', 'O',
78    2, '"', 'O',
79    1, 'x',
80    1, 'O',
81    2, '`', 'U',
82    2,0xB4, 'U',
83    2, '^', 'U',
84    2, '"', 'U',
85    2,0xB4, 'Y',
86    2, 'T', 'h',
87    2, 's', 's',
88    2, '`', 'a',
89    2,0xB4, 'a',
90    2, '^', 'a',
91    2, '~', 'a',
92    2, '"', 'a',
93    1, 'a',
94    2, 'a', 'e',
95    1, 'c',
96    2, '`', 'e',
97    2,0xB4, 'e',
98    2, '^', 'e',
99    2, '"', 'e',
100    2, '`', 'i',
101    2,0xB4, 'i',
102    2, '^', 'i',
103    2, '"', 'i',
104    1, 'd',
105    2, '~', 'n',
106    2, '`', 'o',
107    2,0xB4, 'o',
108    2, '^', 'o',
109    2, '~', 'o',
110    2, '"', 'o',
111    1, ':',
112    1, 'o',
113    2, '`', 'u',
114    2,0xB4, 'u',
115    2, '^', 'u',
116    2, '"', 'u',
117    2,0xB4, 'y',
118    2, 't', 'h',
119    2, '"', 'y',
120    1, 'A',
121    1, 'a',
122    1, 'A',
123    1, 'a',
124    1, 'A',
125    1, 'a',
126    2,0xB4, 'C',
127    2,0xB4, 'c',
128    2, '^', 'C',
129    2, '^', 'c',
130    1, 'C',
131    1, 'c',
132    1, 'C',
133    1, 'c',
134    1, 'D',
135    1, 'd',
136    1, 'D',
137    1, 'd',
138    1, 'E',
139    1, 'e',
140    1, 'E',
141    1, 'e',
142    1, 'E',
143    1, 'e',
144    1, 'E',
145    1, 'e',
146    1, 'E',
147    1, 'e',
148    2, '^', 'G',
149    2, '^', 'g',
150    1, 'G',
151    1, 'g',
152    1, 'G',
153    1, 'g',
154    1, 'G',
155    1, 'g',
156    2, '^', 'H',
157    2, '^', 'h',
158    1, 'H',
159    1, 'h',
160    2, '~', 'I',
161    2, '~', 'i',
162    1, 'I',
163    1, 'i',
164    1, 'I',
165    1, 'i',
166    1, 'I',
167    1, 'i',
168    1, 'I',
169    1, 'i',
170    2, 'I', 'J',
171    2, 'i', 'j',
172    2, '^', 'J',
173    2, '^', 'j',
174    1, 'K',
175    1, 'k',
176    1, 'L',
177    1, 'l',
178    1, 'L',
179    1, 'l',
180    1, 'L',
181    1, 'l',
182    1, 'L',
183    1, 'l',
184    1, 'L',
185    1, 'l',
186    2,0xB4, 'N',
187    2,0xB4, 'n',
188    1, 'N',
189    1, 'n',
190    1, 'N',
191    1, 'n',
192    2,'\'', 'n',
193    1, 'O',
194    1, 'o',
195    1, 'O',
196    1, 'o',
197    2, '"', 'O',
198    2, '"', 'o',
199    2, 'O', 'E',
200    2, 'o', 'e',
201    2,0xB4, 'R',
202    2,0xB4, 'r',
203    1, 'R',
204    1, 'r',
205    1, 'R',
206    1, 'r',
207    2,0xB4, 'S',
208    2,0xB4, 's',
209    2, '^', 'S',
210    2, '^', 's',
211    1, 'S',
212    1, 's',
213    1, 'S',
214    1, 's',
215    1, 'T',
216    1, 't',
217    1, 'T',
218    1, 't',
219    1, 'T',
220    1, 't',
221    2, '~', 'U',
222    2, '~', 'u',
223    1, 'U',
224    1, 'u',
225    1, 'U',
226    1, 'u',
227    1, 'U',
228    1, 'u',
229    2, '"', 'U',
230    2, '"', 'u',
231    1, 'U',
232    1, 'u',
233    2, '^', 'W',
234    2, '^', 'w',
235    2, '^', 'Y',
236    2, '^', 'y',
237    2, '"', 'Y',
238    2,0xB4, 'Z',
239    2,0xB4, 'z',
240    1, 'Z',
241    1, 'z',
242    1, 'Z',
243    1, 'z',
244    1, 's',
245    1, 'f',
246    2, 'D',0x017D,
247    2, 'D',0x017E,
248    2, 'd',0x017E,
249    2, 'L', 'J',
250    2, 'L', 'j',
251    2, 'l', 'j',
252    2, 'N', 'J',
253    2, 'N', 'j',
254    2, 'n', 'j',
255    2, 'D', 'Z',
256    2, 'D', 'z',
257    2, 'd', 'z',
258    1, 'S',
259    1, 's',
260    1, 'T',
261    1, 't',
262    1, '^',
263    1, '~',
264    1, '"',
265    1,0x03B2,
266    1,0x03B8,
267    1,0x03A5,
268    1,0x03C6,
269    1,0x03C0,
270    1,0x03BA,
271    1,0x03C1,
272    1,0x03C2,
273    2,0x0565,0x0582,
274    2,0x05D5,0x05D5,
275    2,0x05D5,0x05D9,
276    2,0x05D9,0x05D9,
277    2,0x0627,0x0674,
278    2,0x0648,0x0674,
279    2,0x06C7,0x0674,
280    2,0x064A,0x0674,
281    2,0x0E4D,0x0E32,
282    2,0x0ECD,0x0EB2,
283    2,0x0EAB,0x0E99,
284    2,0x0EAB,0x0EA1,
285    2,0x0FB2,0x0F81,
286    2,0x0FB3,0x0F81,
287    1, 'B',
288    1, 'b',
289    1, 'D',
290    1, 'd',
291    1, 'F',
292    1, 'f',
293    1, 'M',
294    1, 'm',
295    1, 'P',
296    1, 'p',
297    1, 'S',
298    1, 's',
299    1, 'T',
300    1, 't',
301    2, '`', 'W',
302    2, '`', 'w',
303    2,0xB4, 'W',
304    2,0xB4, 'w',
305    2, '"', 'W',
306    2, '"', 'w',
307    2, 'a',0x02BE,
308    2, '`', 'Y',
309    2, '`', 'y',
310    1, ' ',
311    1, ' ',
312    1, ' ',
313    1, ' ',
314    1, ' ',
315    1, ' ',
316    1, ' ',
317    1, ' ',
318    1, '-',
319    1, '-',
320    1, '-',
321    1, '-',
322    1, '-',
323    1, '-',
324    1, '"',
325    1, '"',
326    1, '"',
327    1, '+',
328    1, 'o',
329    1, '.',
330    2, '.', '.',
331    3, '.', '.', '.',
332    4, 'o', '/', 'o', 'o',
333    1,0xB4,
334    2,0xB4,0xB4,
335    3,0xB4,0xB4,0xB4,
336    2,0x2035,0x2035,
337    3,0x2035,0x2035,0x2035,
338    1, '<',
339    1, '>',
340    2, '!', '!',
341    2, '?', '!',
342    2, '!', '?',
343    2, 'R', 's',
344    3, 'E', 'U', 'R',
345    3, 'a', '/', 'c',
346    3, 'a', '/', 's',
347    1, 'C',
348    2,0xB0, 'C',
349    3, 'c', '/', 'o',
350    3, 'c', '/', 'u',
351    1,0x0190,
352    2,0xB0, 'F',
353    1, 'g',
354    1, 'H',
355    1, 'H',
356    1, 'H',
357    1, 'h',
358    1,0x0127,
359    1, 'I',
360    1, 'I',
361    1, 'L',
362    1, 'l',
363    1, 'N',
364    2, 'N', 'o',
365    1, 'P',
366    1, 'Q',
367    1, 'R',
368    1, 'R',
369    1, 'R',
370    3, 'T', 'E', 'L',
371    2, 'T', 'M',
372    1, 'Z',
373    3, 'O', 'h', 'm',
374    1, 'Z',
375    1, 'B',
376    1, 'C',
377    1, 'e',
378    1, 'E',
379    1, 'F',
380    1, 'M',
381    1, 'o',
382    1,0x05D0,
383    1,0x05D1,
384    1,0x05D2,
385    1,0x05D3,
386    1, 'i',
387    5, ' ', '1', '/', '3', ' ',
388    5, ' ', '2', '/', '3', ' ',
389    5, ' ', '1', '/', '5', ' ',
390    5, ' ', '2', '/', '5', ' ',
391    5, ' ', '3', '/', '5', ' ',
392    5, ' ', '4', '/', '5', ' ',
393    5, ' ', '1', '/', '6', ' ',
394    5, ' ', '5', '/', '6', ' ',
395    5, ' ', '1', '/', '8', ' ',
396    5, ' ', '3', '/', '8', ' ',
397    5, ' ', '5', '/', '8', ' ',
398    5, ' ', '7', '/', '8', ' ',
399    3, ' ', '1', '/',
400    1, 'I',
401    2, 'I', 'I',
402    3, 'I', 'I', 'I',
403    2, 'I', 'V',
404    1, 'V',
405    2, 'V', 'I',
406    3, 'V', 'I', 'I',
407    4, 'V', 'I', 'I', 'I',
408    2, 'I', 'X',
409    1, 'X',
410    2, 'X', 'I',
411    3, 'X', 'I', 'I',
412    1, 'L',
413    1, 'C',
414    1, 'D',
415    1, 'M',
416    1, 'i',
417    2, 'i', 'i',
418    3, 'i', 'i', 'i',
419    2, 'i', 'v',
420    1, 'v',
421    2, 'v', 'i',
422    3, 'v', 'i', 'i',
423    4, 'v', 'i', 'i', 'i',
424    2, 'i', 'x',
425    1, 'x',
426    2, 'x', 'i',
427    3, 'x', 'i', 'i',
428    1, 'l',
429    1, 'c',
430    1, 'd',
431    1, 'm',
432    2, '<', '-',
433    1, '^',
434    2, '-', '>',
435    1, 'V',
436    2, '<', '=',
437    2, '=', '>',
438    1, '-',
439    1, '/',
440    2,0x222B,0x222B,
441    3,0x222B,0x222B,0x222B,
442    2,0x222E,0x222E,
443    3,0x222E,0x222E,0x222E,
444    2, '/', '=',
445    2, '<', '=',
446    2, '>', '=',
447    2, '<', '<',
448    2, '>', '>',
449    3, '(', '1', ')',
450    3, '(', '2', ')',
451    3, '(', '3', ')',
452    3, '(', '4', ')',
453    3, '(', '5', ')',
454    3, '(', '6', ')',
455    3, '(', '7', ')',
456    3, '(', '8', ')',
457    3, '(', '9', ')',
458    4, '(', '1', '0', ')',
459    4, '(', '1', '1', ')',
460    4, '(', '1', '2', ')',
461    4, '(', '1', '3', ')',
462    4, '(', '1', '4', ')',
463    4, '(', '1', '5', ')',
464    4, '(', '1', '6', ')',
465    4, '(', '1', '7', ')',
466    4, '(', '1', '8', ')',
467    4, '(', '1', '9', ')',
468    4, '(', '2', '0', ')',
469    3, '(', '1', ')',
470    3, '(', '2', ')',
471    3, '(', '3', ')',
472    3, '(', '4', ')',
473    3, '(', '5', ')',
474    3, '(', '6', ')',
475    3, '(', '7', ')',
476    3, '(', '8', ')',
477    3, '(', '9', ')',
478    4, '(', '1', '0', ')',
479    4, '(', '1', '1', ')',
480    4, '(', '1', '2', ')',
481    4, '(', '1', '3', ')',
482    4, '(', '1', '4', ')',
483    4, '(', '1', '5', ')',
484    4, '(', '1', '6', ')',
485    4, '(', '1', '7', ')',
486    4, '(', '1', '8', ')',
487    4, '(', '1', '9', ')',
488    4, '(', '2', '0', ')',
489    2, '1', '.',
490    2, '2', '.',
491    2, '3', '.',
492    2, '4', '.',
493    2, '5', '.',
494    2, '6', '.',
495    2, '7', '.',
496    2, '8', '.',
497    2, '9', '.',
498    3, '1', '0', '.',
499    3, '1', '1', '.',
500    3, '1', '2', '.',
501    3, '1', '3', '.',
502    3, '1', '4', '.',
503    3, '1', '5', '.',
504    3, '1', '6', '.',
505    3, '1', '7', '.',
506    3, '1', '8', '.',
507    3, '1', '9', '.',
508    3, '2', '0', '.',
509    3, '(', 'a', ')',
510    3, '(', 'b', ')',
511    3, '(', 'c', ')',
512    3, '(', 'd', ')',
513    3, '(', 'e', ')',
514    3, '(', 'f', ')',
515    3, '(', 'g', ')',
516    3, '(', 'h', ')',
517    3, '(', 'i', ')',
518    3, '(', 'j', ')',
519    3, '(', 'k', ')',
520    3, '(', 'l', ')',
521    3, '(', 'm', ')',
522    3, '(', 'n', ')',
523    3, '(', 'o', ')',
524    3, '(', 'p', ')',
525    3, '(', 'q', ')',
526    3, '(', 'r', ')',
527    3, '(', 's', ')',
528    3, '(', 't', ')',
529    3, '(', 'u', ')',
530    3, '(', 'v', ')',
531    3, '(', 'w', ')',
532    3, '(', 'x', ')',
533    3, '(', 'y', ')',
534    3, '(', 'z', ')',
535    3, '(', 'A', ')',
536    3, '(', 'B', ')',
537    3, '(', 'C', ')',
538    3, '(', 'D', ')',
539    3, '(', 'E', ')',
540    3, '(', 'F', ')',
541    3, '(', 'G', ')',
542    3, '(', 'H', ')',
543    3, '(', 'I', ')',
544    3, '(', 'J', ')',
545    3, '(', 'K', ')',
546    3, '(', 'L', ')',
547    3, '(', 'M', ')',
548    3, '(', 'N', ')',
549    3, '(', 'O', ')',
550    3, '(', 'P', ')',
551    3, '(', 'Q', ')',
552    3, '(', 'R', ')',
553    3, '(', 'S', ')',
554    3, '(', 'T', ')',
555    3, '(', 'U', ')',
556    3, '(', 'V', ')',
557    3, '(', 'W', ')',
558    3, '(', 'X', ')',
559    3, '(', 'Y', ')',
560    3, '(', 'Z', ')',
561    3, '(', 'a', ')',
562    3, '(', 'b', ')',
563    3, '(', 'c', ')',
564    3, '(', 'd', ')',
565    3, '(', 'e', ')',
566    3, '(', 'f', ')',
567    3, '(', 'g', ')',
568    3, '(', 'h', ')',
569    3, '(', 'i', ')',
570    3, '(', 'j', ')',
571    3, '(', 'k', ')',
572    3, '(', 'l', ')',
573    3, '(', 'm', ')',
574    3, '(', 'n', ')',
575    3, '(', 'o', ')',
576    3, '(', 'p', ')',
577    3, '(', 'q', ')',
578    3, '(', 'r', ')',
579    3, '(', 's', ')',
580    3, '(', 't', ')',
581    3, '(', 'u', ')',
582    3, '(', 'v', ')',
583    3, '(', 'w', ')',
584    3, '(', 'x', ')',
585    3, '(', 'y', ')',
586    3, '(', 'z', ')',
587    3, '(', '0', ')',
588    1, '-',
589    1, '|',
590    1, '+',
591    1, '+',
592    1, '+',
593    1, '+',
594    1, '+',
595    1, '+',
596    1, '+',
597    1, '+',
598    1, '+',
599    1,0x6BCD,
600    1,0x9F9F,
601    1,0x4E00,
602    1,0x4E28,
603    1,0x4E36,
604    1,0x4E3F,
605    1,0x4E59,
606    1,0x4E85,
607    1,0x4E8C,
608    1,0x4EA0,
609    1,0x4EBA,
610    1,0x513F,
611    1,0x5165,
612    1,0x516B,
613    1,0x5182,
614    1,0x5196,
615    1,0x51AB,
616    1,0x51E0,
617    1,0x51F5,
618    1,0x5200,
619    1,0x529B,
620    1,0x52F9,
621    1,0x5315,
622    1,0x531A,
623    1,0x5338,
624    1,0x5341,
625    1,0x535C,
626    1,0x5369,
627    1,0x5382,
628    1,0x53B6,
629    1,0x53C8,
630    1,0x53E3,
631    1,0x56D7,
632    1,0x571F,
633    1,0x58EB,
634    1,0x5902,
635    1,0x590A,
636    1,0x5915,
637    1,0x5927,
638    1,0x5973,
639    1,0x5B50,
640    1,0x5B80,
641    1,0x5BF8,
642    1,0x5C0F,
643    1,0x5C22,
644    1,0x5C38,
645    1,0x5C6E,
646    1,0x5C71,
647    1,0x5DDB,
648    1,0x5DE5,
649    1,0x5DF1,
650    1,0x5DFE,
651    1,0x5E72,
652    1,0x5E7A,
653    1,0x5E7F,
654    1,0x5EF4,
655    1,0x5EFE,
656    1,0x5F0B,
657    1,0x5F13,
658    1,0x5F50,
659    1,0x5F61,
660    1,0x5F73,
661    1,0x5FC3,
662    1,0x6208,
663    1,0x6236,
664    1,0x624B,
665    1,0x652F,
666    1,0x6534,
667    1,0x6587,
668    1,0x6597,
669    1,0x65A4,
670    1,0x65B9,
671    1,0x65E0,
672    1,0x65E5,
673    1,0x66F0,
674    1,0x6708,
675    1,0x6728,
676    1,0x6B20,
677    1,0x6B62,
678    1,0x6B79,
679    1,0x6BB3,
680    1,0x6BCB,
681    1,0x6BD4,
682    1,0x6BDB,
683    1,0x6C0F,
684    1,0x6C14,
685    1,0x6C34,
686    1,0x706B,
687    1,0x722A,
688    1,0x7236,
689    1,0x723B,
690    1,0x723F,
691    1,0x7247,
692    1,0x7259,
693    1,0x725B,
694    1,0x72AC,
695    1,0x7384,
696    1,0x7389,
697    1,0x74DC,
698    1,0x74E6,
699    1,0x7518,
700    1,0x751F,
701    1,0x7528,
702    1,0x7530,
703    1,0x758B,
704    1,0x7592,
705    1,0x7676,
706    1,0x767D,
707    1,0x76AE,
708    1,0x76BF,
709    1,0x76EE,
710    1,0x77DB,
711    1,0x77E2,
712    1,0x77F3,
713    1,0x793A,
714    1,0x79B8,
715    1,0x79BE,
716    1,0x7A74,
717    1,0x7ACB,
718    1,0x7AF9,
719    1,0x7C73,
720    1,0x7CF8,
721    1,0x7F36,
722    1,0x7F51,
723    1,0x7F8A,
724    1,0x7FBD,
725    1,0x8001,
726    1,0x800C,
727    1,0x8012,
728    1,0x8033,
729    1,0x807F,
730    1,0x8089,
731    1,0x81E3,
732    1,0x81EA,
733    1,0x81F3,
734    1,0x81FC,
735    1,0x820C,
736    1,0x821B,
737    1,0x821F,
738    1,0x826E,
739    1,0x8272,
740    1,0x8278,
741    1,0x864D,
742    1,0x866B,
743    1,0x8840,
744    1,0x884C,
745    1,0x8863,
746    1,0x897E,
747    1,0x898B,
748    1,0x89D2,
749    1,0x8A00,
750    1,0x8C37,
751    1,0x8C46,
752    1,0x8C55,
753    1,0x8C78,
754    1,0x8C9D,
755    1,0x8D64,
756    1,0x8D70,
757    1,0x8DB3,
758    1,0x8EAB,
759    1,0x8ECA,
760    1,0x8F9B,
761    1,0x8FB0,
762    1,0x8FB5,
763    1,0x9091,
764    1,0x9149,
765    1,0x91C6,
766    1,0x91CC,
767    1,0x91D1,
768    1,0x9577,
769    1,0x9580,
770    1,0x961C,
771    1,0x96B6,
772    1,0x96B9,
773    1,0x96E8,
774    1,0x9751,
775    1,0x975E,
776    1,0x9762,
777    1,0x9769,
778    1,0x97CB,
779    1,0x97ED,
780    1,0x97F3,
781    1,0x9801,
782    1,0x98A8,
783    1,0x98DB,
784    1,0x98DF,
785    1,0x9996,
786    1,0x9999,
787    1,0x99AC,
788    1,0x9AA8,
789    1,0x9AD8,
790    1,0x9ADF,
791    1,0x9B25,
792    1,0x9B2F,
793    1,0x9B32,
794    1,0x9B3C,
795    1,0x9B5A,
796    1,0x9CE5,
797    1,0x9E75,
798    1,0x9E7F,
799    1,0x9EA5,
800    1,0x9EBB,
801    1,0x9EC3,
802    1,0x9ECD,
803    1,0x9ED1,
804    1,0x9EF9,
805    1,0x9EFD,
806    1,0x9F0E,
807    1,0x9F13,
808    1,0x9F20,
809    1,0x9F3B,
810    1,0x9F4A,
811    1,0x9F52,
812    1,0x9F8D,
813    1,0x9F9C,
814    1,0x9FA0,
815    1, ' ',
816    1,0x3012,
817    1,0x5341,
818    1,0x5344,
819    1,0x5345,
820    2, ' ',0x3099,
821    2, ' ',0x309A,
822    1,0x1100,
823    1,0x1101,
824    1,0x11AA,
825    1,0x1102,
826    1,0x11AC,
827    1,0x11AD,
828    1,0x1103,
829    1,0x1104,
830    1,0x1105,
831    1,0x11B0,
832    1,0x11B1,
833    1,0x11B2,
834    1,0x11B3,
835    1,0x11B4,
836    1,0x11B5,
837    1,0x111A,
838    1,0x1106,
839    1,0x1107,
840    1,0x1108,
841    1,0x1121,
842    1,0x1109,
843    1,0x110A,
844    1,0x110B,
845    1,0x110C,
846    1,0x110D,
847    1,0x110E,
848    1,0x110F,
849    1,0x1110,
850    1,0x1111,
851    1,0x1112,
852    1,0x1161,
853    1,0x1162,
854    1,0x1163,
855    1,0x1164,
856    1,0x1165,
857    1,0x1166,
858    1,0x1167,
859    1,0x1168,
860    1,0x1169,
861    1,0x116A,
862    1,0x116B,
863    1,0x116C,
864    1,0x116D,
865    1,0x116E,
866    1,0x116F,
867    1,0x1170,
868    1,0x1171,
869    1,0x1172,
870    1,0x1173,
871    1,0x1174,
872    1,0x1175,
873    1,0x1160,
874    1,0x1114,
875    1,0x1115,
876    1,0x11C7,
877    1,0x11C8,
878    1,0x11CC,
879    1,0x11CE,
880    1,0x11D3,
881    1,0x11D7,
882    1,0x11D9,
883    1,0x111C,
884    1,0x11DD,
885    1,0x11DF,
886    1,0x111D,
887    1,0x111E,
888    1,0x1120,
889    1,0x1122,
890    1,0x1123,
891    1,0x1127,
892    1,0x1129,
893    1,0x112B,
894    1,0x112C,
895    1,0x112D,
896    1,0x112E,
897    1,0x112F,
898    1,0x1132,
899    1,0x1136,
900    1,0x1140,
901    1,0x1147,
902    1,0x114C,
903    1,0x11F1,
904    1,0x11F2,
905    1,0x1157,
906    1,0x1158,
907    1,0x1159,
908    1,0x1184,
909    1,0x1185,
910    1,0x1188,
911    1,0x1191,
912    1,0x1192,
913    1,0x1194,
914    1,0x119E,
915    1,0x11A1,
916    3, '(',0x1100, ')',
917    3, '(',0x1102, ')',
918    3, '(',0x1103, ')',
919    3, '(',0x1105, ')',
920    3, '(',0x1106, ')',
921    3, '(',0x1107, ')',
922    3, '(',0x1109, ')',
923    3, '(',0x110B, ')',
924    3, '(',0x110C, ')',
925    3, '(',0x110E, ')',
926    3, '(',0x110F, ')',
927    3, '(',0x1110, ')',
928    3, '(',0x1111, ')',
929    3, '(',0x1112, ')',
930    4, '(',0x1100,0x1161, ')',
931    4, '(',0x1102,0x1161, ')',
932    4, '(',0x1103,0x1161, ')',
933    4, '(',0x1105,0x1161, ')',
934    4, '(',0x1106,0x1161, ')',
935    4, '(',0x1107,0x1161, ')',
936    4, '(',0x1109,0x1161, ')',
937    4, '(',0x110B,0x1161, ')',
938    4, '(',0x110C,0x1161, ')',
939    4, '(',0x110E,0x1161, ')',
940    4, '(',0x110F,0x1161, ')',
941    4, '(',0x1110,0x1161, ')',
942    4, '(',0x1111,0x1161, ')',
943    4, '(',0x1112,0x1161, ')',
944    4, '(',0x110C,0x116E, ')',
945    3, '(',0x4E00, ')',
946    3, '(',0x4E8C, ')',
947    3, '(',0x4E09, ')',
948    3, '(',0x56DB, ')',
949    3, '(',0x4E94, ')',
950    3, '(',0x516D, ')',
951    3, '(',0x4E03, ')',
952    3, '(',0x516B, ')',
953    3, '(',0x4E5D, ')',
954    3, '(',0x5341, ')',
955    3, '(',0x6708, ')',
956    3, '(',0x706B, ')',
957    3, '(',0x6C34, ')',
958    3, '(',0x6728, ')',
959    3, '(',0x91D1, ')',
960    3, '(',0x571F, ')',
961    3, '(',0x65E5, ')',
962    3, '(',0x682A, ')',
963    3, '(',0x6709, ')',
964    3, '(',0x793E, ')',
965    3, '(',0x540D, ')',
966    3, '(',0x7279, ')',
967    3, '(',0x8CA1, ')',
968    3, '(',0x795D, ')',
969    3, '(',0x52B4, ')',
970    3, '(',0x4EE3, ')',
971    3, '(',0x547C, ')',
972    3, '(',0x5B66, ')',
973    3, '(',0x76E3, ')',
974    3, '(',0x4F01, ')',
975    3, '(',0x8CC7, ')',
976    3, '(',0x5354, ')',
977    3, '(',0x796D, ')',
978    3, '(',0x4F11, ')',
979    3, '(',0x81EA, ')',
980    3, '(',0x81F3, ')',
981    3, '(',0x1100, ')',
982    3, '(',0x1102, ')',
983    3, '(',0x1103, ')',
984    3, '(',0x1105, ')',
985    3, '(',0x1106, ')',
986    3, '(',0x1107, ')',
987    3, '(',0x1109, ')',
988    3, '(',0x110B, ')',
989    3, '(',0x110C, ')',
990    3, '(',0x110E, ')',
991    3, '(',0x110F, ')',
992    3, '(',0x1110, ')',
993    3, '(',0x1111, ')',
994    3, '(',0x1112, ')',
995    4, '(',0x1100,0x1161, ')',
996    4, '(',0x1102,0x1161, ')',
997    4, '(',0x1103,0x1161, ')',
998    4, '(',0x1105,0x1161, ')',
999    4, '(',0x1106,0x1161, ')',
1000    4, '(',0x1107,0x1161, ')',
1001    4, '(',0x1109,0x1161, ')',
1002    4, '(',0x110B,0x1161, ')',
1003    4, '(',0x110C,0x1161, ')',
1004    4, '(',0x110E,0x1161, ')',
1005    4, '(',0x110F,0x1161, ')',
1006    4, '(',0x1110,0x1161, ')',
1007    4, '(',0x1111,0x1161, ')',
1008    4, '(',0x1112,0x1161, ')',
1009    3, '(',0x4E00, ')',
1010    3, '(',0x4E8C, ')',
1011    3, '(',0x4E09, ')',
1012    3, '(',0x56DB, ')',
1013    3, '(',0x4E94, ')',
1014    3, '(',0x516D, ')',
1015    3, '(',0x4E03, ')',
1016    3, '(',0x516B, ')',
1017    3, '(',0x4E5D, ')',
1018    3, '(',0x5341, ')',
1019    3, '(',0x6708, ')',
1020    3, '(',0x706B, ')',
1021    3, '(',0x6C34, ')',
1022    3, '(',0x6728, ')',
1023    3, '(',0x91D1, ')',
1024    3, '(',0x571F, ')',
1025    3, '(',0x65E5, ')',
1026    3, '(',0x682A, ')',
1027    3, '(',0x6709, ')',
1028    3, '(',0x793E, ')',
1029    3, '(',0x540D, ')',
1030    3, '(',0x7279, ')',
1031    3, '(',0x8CA1, ')',
1032    3, '(',0x795D, ')',
1033    3, '(',0x52B4, ')',
1034    3, '(',0x79D8, ')',
1035    3, '(',0x7537, ')',
1036    3, '(',0x5973, ')',
1037    3, '(',0x9069, ')',
1038    3, '(',0x512A, ')',
1039    3, '(',0x5370, ')',
1040    3, '(',0x6CE8, ')',
1041    3, '(',0x9805, ')',
1042    3, '(',0x4F11, ')',
1043    3, '(',0x5199, ')',
1044    3, '(',0x6B63, ')',
1045    3, '(',0x4E0A, ')',
1046    3, '(',0x4E2D, ')',
1047    3, '(',0x4E0B, ')',
1048    3, '(',0x5DE6, ')',
1049    3, '(',0x53F3, ')',
1050    3, '(',0x533B, ')',
1051    3, '(',0x5B97, ')',
1052    3, '(',0x5B66, ')',
1053    3, '(',0x76E3, ')',
1054    3, '(',0x4F01, ')',
1055    3, '(',0x8CC7, ')',
1056    3, '(',0x5354, ')',
1057    3, '(',0x591C, ')',
1058    2, '1',0x6708,
1059    2, '2',0x6708,
1060    2, '3',0x6708,
1061    2, '4',0x6708,
1062    2, '5',0x6708,
1063    2, '6',0x6708,
1064    2, '7',0x6708,
1065    2, '8',0x6708,
1066    2, '9',0x6708,
1067    3, '1', '0',0x6708,
1068    3, '1', '1',0x6708,
1069    3, '1', '2',0x6708,
1070    3, '(',0x30A2, ')',
1071    3, '(',0x30A4, ')',
1072    3, '(',0x30A6, ')',
1073    3, '(',0x30A8, ')',
1074    3, '(',0x30AA, ')',
1075    3, '(',0x30AB, ')',
1076    3, '(',0x30AD, ')',
1077    3, '(',0x30AF, ')',
1078    3, '(',0x30B1, ')',
1079    3, '(',0x30B3, ')',
1080    3, '(',0x30B5, ')',
1081    3, '(',0x30B7, ')',
1082    3, '(',0x30B9, ')',
1083    3, '(',0x30BB, ')',
1084    3, '(',0x30BD, ')',
1085    3, '(',0x30BF, ')',
1086    3, '(',0x30C1, ')',
1087    3, '(',0x30C4, ')',
1088    3, '(',0x30C6, ')',
1089    3, '(',0x30C8, ')',
1090    3, '(',0x30CA, ')',
1091    3, '(',0x30CB, ')',
1092    3, '(',0x30CC, ')',
1093    3, '(',0x30CD, ')',
1094    3, '(',0x30CE, ')',
1095    3, '(',0x30CF, ')',
1096    3, '(',0x30D2, ')',
1097    3, '(',0x30D5, ')',
1098    3, '(',0x30D8, ')',
1099    3, '(',0x30DB, ')',
1100    3, '(',0x30DE, ')',
1101    3, '(',0x30DF, ')',
1102    3, '(',0x30E0, ')',
1103    3, '(',0x30E1, ')',
1104    3, '(',0x30E2, ')',
1105    3, '(',0x30E4, ')',
1106    3, '(',0x30E6, ')',
1107    3, '(',0x30E8, ')',
1108    3, '(',0x30E9, ')',
1109    3, '(',0x30EA, ')',
1110    3, '(',0x30EB, ')',
1111    3, '(',0x30EC, ')',
1112    3, '(',0x30ED, ')',
1113    3, '(',0x30EF, ')',
1114    3, '(',0x30F0, ')',
1115    3, '(',0x30F1, ')',
1116    3, '(',0x30F2, ')',
1117    4,0x30A2,0x30D1,0x30FC,0x30C8,
1118    4,0x30A2,0x30EB,0x30D5,0x30A1,
1119    4,0x30A2,0x30F3,0x30DA,0x30A2,
1120    3,0x30A2,0x30FC,0x30EB,
1121    4,0x30A4,0x30CB,0x30F3,0x30B0,
1122    3,0x30A4,0x30F3,0x30C1,
1123    3,0x30A6,0x30A9,0x30F3,
1124    5,0x30A8,0x30B9,0x30AF,0x30FC,0x30C9,
1125    4,0x30A8,0x30FC,0x30AB,0x30FC,
1126    3,0x30AA,0x30F3,0x30B9,
1127    3,0x30AA,0x30FC,0x30E0,
1128    3,0x30AB,0x30A4,0x30EA,
1129    4,0x30AB,0x30E9,0x30C3,0x30C8,
1130    4,0x30AB,0x30ED,0x30EA,0x30FC,
1131    3,0x30AC,0x30ED,0x30F3,
1132    3,0x30AC,0x30F3,0x30DE,
1133    2,0x30AE,0x30AC,
1134    3,0x30AE,0x30CB,0x30FC,
1135    4,0x30AD,0x30E5,0x30EA,0x30FC,
1136    4,0x30AE,0x30EB,0x30C0,0x30FC,
1137    2,0x30AD,0x30ED,
1138    5,0x30AD,0x30ED,0x30B0,0x30E9,0x30E0,
1139    6,0x30AD,0x30ED,0x30E1,0x30FC,0x30C8,0x30EB,
1140    5,0x30AD,0x30ED,0x30EF,0x30C3,0x30C8,
1141    3,0x30B0,0x30E9,0x30E0,
1142    5,0x30B0,0x30E9,0x30E0,0x30C8,0x30F3,
1143    5,0x30AF,0x30EB,0x30BC,0x30A4,0x30ED,
1144    4,0x30AF,0x30ED,0x30FC,0x30CD,
1145    3,0x30B1,0x30FC,0x30B9,
1146    3,0x30B3,0x30EB,0x30CA,
1147    3,0x30B3,0x30FC,0x30DD,
1148    4,0x30B5,0x30A4,0x30AF,0x30EB,
1149    5,0x30B5,0x30F3,0x30C1,0x30FC,0x30E0,
1150    4,0x30B7,0x30EA,0x30F3,0x30B0,
1151    3,0x30BB,0x30F3,0x30C1,
1152    3,0x30BB,0x30F3,0x30C8,
1153    3,0x30C0,0x30FC,0x30B9,
1154    2,0x30C7,0x30B7,
1155    2,0x30C9,0x30EB,
1156    2,0x30C8,0x30F3,
1157    2,0x30CA,0x30CE,
1158    3,0x30CE,0x30C3,0x30C8,
1159    3,0x30CF,0x30A4,0x30C4,
1160    5,0x30D1,0x30FC,0x30BB,0x30F3,0x30C8,
1161    3,0x30D1,0x30FC,0x30C4,
1162    4,0x30D0,0x30FC,0x30EC,0x30EB,
1163    5,0x30D4,0x30A2,0x30B9,0x30C8,0x30EB,
1164    3,0x30D4,0x30AF,0x30EB,
1165    2,0x30D4,0x30B3,
1166    2,0x30D3,0x30EB,
1167    5,0x30D5,0x30A1,0x30E9,0x30C3,0x30C9,
1168    4,0x30D5,0x30A3,0x30FC,0x30C8,
1169    5,0x30D6,0x30C3,0x30B7,0x30A7,0x30EB,
1170    3,0x30D5,0x30E9,0x30F3,
1171    5,0x30D8,0x30AF,0x30BF,0x30FC,0x30EB,
1172    2,0x30DA,0x30BD,
1173    3,0x30DA,0x30CB,0x30D2,
1174    3,0x30D8,0x30EB,0x30C4,
1175    3,0x30DA,0x30F3,0x30B9,
1176    3,0x30DA,0x30FC,0x30B8,
1177    3,0x30D9,0x30FC,0x30BF,
1178    4,0x30DD,0x30A4,0x30F3,0x30C8,
1179    3,0x30DC,0x30EB,0x30C8,
1180    2,0x30DB,0x30F3,
1181    3,0x30DD,0x30F3,0x30C9,
1182    3,0x30DB,0x30FC,0x30EB,
1183    3,0x30DB,0x30FC,0x30F3,
1184    4,0x30DE,0x30A4,0x30AF,0x30ED,
1185    3,0x30DE,0x30A4,0x30EB,
1186    3,0x30DE,0x30C3,0x30CF,
1187    3,0x30DE,0x30EB,0x30AF,
1188    5,0x30DE,0x30F3,0x30B7,0x30E7,0x30F3,
1189    4,0x30DF,0x30AF,0x30ED,0x30F3,
1190    2,0x30DF,0x30EA,
1191    5,0x30DF,0x30EA,0x30D0,0x30FC,0x30EB,
1192    2,0x30E1,0x30AC,
1193    4,0x30E1,0x30AC,0x30C8,0x30F3,
1194    4,0x30E1,0x30FC,0x30C8,0x30EB,
1195    3,0x30E4,0x30FC,0x30C9,
1196    3,0x30E4,0x30FC,0x30EB,
1197    3,0x30E6,0x30A2,0x30F3,
1198    4,0x30EA,0x30C3,0x30C8,0x30EB,
1199    2,0x30EA,0x30E9,
1200    3,0x30EB,0x30D4,0x30FC,
1201    4,0x30EB,0x30FC,0x30D6,0x30EB,
1202    2,0x30EC,0x30E0,
1203    5,0x30EC,0x30F3,0x30C8,0x30B2,0x30F3,
1204    3,0x30EF,0x30C3,0x30C8,
1205    2, '0',0x70B9,
1206    2, '1',0x70B9,
1207    2, '2',0x70B9,
1208    2, '3',0x70B9,
1209    2, '4',0x70B9,
1210    2, '5',0x70B9,
1211    2, '6',0x70B9,
1212    2, '7',0x70B9,
1213    2, '8',0x70B9,
1214    2, '9',0x70B9,
1215    3, '1', '0',0x70B9,
1216    3, '1', '1',0x70B9,
1217    3, '1', '2',0x70B9,
1218    3, '1', '3',0x70B9,
1219    3, '1', '4',0x70B9,
1220    3, '1', '5',0x70B9,
1221    3, '1', '6',0x70B9,
1222    3, '1', '7',0x70B9,
1223    3, '1', '8',0x70B9,
1224    3, '1', '9',0x70B9,
1225    3, '2', '0',0x70B9,
1226    3, '2', '1',0x70B9,
1227    3, '2', '2',0x70B9,
1228    3, '2', '3',0x70B9,
1229    3, '2', '4',0x70B9,
1230    3, 'h', 'P', 'a',
1231    2, 'd', 'a',
1232    2, 'A', 'U',
1233    3, 'b', 'a', 'r',
1234    2, 'o', 'V',
1235    2, 'p', 'c',
1236    2,0x5E73,0x6210,
1237    2,0x662D,0x548C,
1238    2,0x5927,0x6B63,
1239    2,0x660E,0x6CBB,
1240    4,0x682A,0x5F0F,0x4F1A,0x793E,
1241    2, 'p', 'A',
1242    2, 'n', 'A',
1243    2,0x03BC, 'A',
1244    2, 'm', 'A',
1245    2, 'k', 'A',
1246    2, 'K', 'B',
1247    2, 'M', 'B',
1248    2, 'G', 'B',
1249    3, 'c', 'a', 'l',
1250    4, 'k', 'c', 'a', 'l',
1251    2, 'p', 'F',
1252    2, 'n', 'F',
1253    2,0x03BC, 'F',
1254    2,0x03BC, 'g',
1255    2, 'm', 'g',
1256    2, 'k', 'g',
1257    2, 'H', 'z',
1258    3, 'k', 'H', 'z',
1259    3, 'M', 'H', 'z',
1260    3, 'G', 'H', 'z',
1261    3, 'T', 'H', 'z',
1262    2,0x03BC, 'l',
1263    2, 'm', 'l',
1264    2, 'd', 'l',
1265    2, 'k', 'l',
1266    2, 'f', 'm',
1267    2, 'n', 'm',
1268    2,0x03BC, 'm',
1269    2, 'm', 'm',
1270    2, 'c', 'm',
1271    2, 'k', 'm',
1272    4, 'm', 'm', '^', '2',
1273    4, 'c', 'm', '^', '2',
1274    3, 'm', '^', '2',
1275    4, 'k', 'm', '^', '2',
1276    4, 'm', 'm', '^', '3',
1277    4, 'c', 'm', '^', '3',
1278    3, 'm', '^', '3',
1279    4, 'k', 'm', '^', '3',
1280    3, 'm', '/', 's',
1281    5, 'm', '/', 's', '^', '2',
1282    2, 'P', 'a',
1283    3, 'k', 'P', 'a',
1284    3, 'M', 'P', 'a',
1285    3, 'G', 'P', 'a',
1286    3, 'r', 'a', 'd',
1287    5, 'r', 'a', 'd', '/', 's',
1288    7, 'r', 'a', 'd', '/', 's', '^', '2',
1289    2, 'p', 's',
1290    2, 'n', 's',
1291    2,0x03BC, 's',
1292    2, 'm', 's',
1293    2, 'p', 'V',
1294    2, 'n', 'V',
1295    2,0x03BC, 'V',
1296    2, 'm', 'V',
1297    2, 'k', 'V',
1298    2, 'M', 'V',
1299    2, 'p', 'W',
1300    2, 'n', 'W',
1301    2,0x03BC, 'W',
1302    2, 'm', 'W',
1303    2, 'k', 'W',
1304    2, 'M', 'W',
1305    2, 'k',0x03A9,
1306    2, 'M',0x03A9,
1307    4, 'a', '.', 'm', '.',
1308    2, 'B', 'q',
1309    2, 'c', 'c',
1310    2, 'c', 'd',
1311    4, 'C', '/', 'k', 'g',
1312    3, 'C', 'o', '.',
1313    2, 'd', 'B',
1314    2, 'G', 'y',
1315    2, 'h', 'a',
1316    2, 'H', 'P',
1317    2, 'i', 'n',
1318    2, 'K', 'K',
1319    2, 'K', 'M',
1320    2, 'k', 't',
1321    2, 'l', 'm',
1322    2, 'l', 'n',
1323    3, 'l', 'o', 'g',
1324    2, 'l', 'x',
1325    2, 'm', 'b',
1326    3, 'm', 'i', 'l',
1327    3, 'm', 'o', 'l',
1328    2, 'P', 'H',
1329    4, 'p', '.', 'm', '.',
1330    3, 'P', 'P', 'M',
1331    2, 'P', 'R',
1332    2, 's', 'r',
1333    2, 'S', 'v',
1334    2, 'W', 'b',
1335    2, '1',0x65E5,
1336    2, '2',0x65E5,
1337    2, '3',0x65E5,
1338    2, '4',0x65E5,
1339    2, '5',0x65E5,
1340    2, '6',0x65E5,
1341    2, '7',0x65E5,
1342    2, '8',0x65E5,
1343    2, '9',0x65E5,
1344    3, '1', '0',0x65E5,
1345    3, '1', '1',0x65E5,
1346    3, '1', '2',0x65E5,
1347    3, '1', '3',0x65E5,
1348    3, '1', '4',0x65E5,
1349    3, '1', '5',0x65E5,
1350    3, '1', '6',0x65E5,
1351    3, '1', '7',0x65E5,
1352    3, '1', '8',0x65E5,
1353    3, '1', '9',0x65E5,
1354    3, '2', '0',0x65E5,
1355    3, '2', '1',0x65E5,
1356    3, '2', '2',0x65E5,
1357    3, '2', '3',0x65E5,
1358    3, '2', '4',0x65E5,
1359    3, '2', '5',0x65E5,
1360    3, '2', '6',0x65E5,
1361    3, '2', '7',0x65E5,
1362    3, '2', '8',0x65E5,
1363    3, '2', '9',0x65E5,
1364    3, '3', '0',0x65E5,
1365    3, '3', '1',0x65E5,
1366    1,0x8C48,
1367    1,0x66F4,
1368    1,0x8ECA,
1369    1,0x8CC8,
1370    1,0x6ED1,
1371    1,0x4E32,
1372    1,0x53E5,
1373    1,0x9F9C,
1374    1,0x9F9C,
1375    1,0x5951,
1376    1,0x91D1,
1377    1,0x5587,
1378    1,0x5948,
1379    1,0x61F6,
1380    1,0x7669,
1381    1,0x7F85,
1382    1,0x863F,
1383    1,0x87BA,
1384    1,0x88F8,
1385    1,0x908F,
1386    1,0x6A02,
1387    1,0x6D1B,
1388    1,0x70D9,
1389    1,0x73DE,
1390    1,0x843D,
1391    1,0x916A,
1392    1,0x99F1,
1393    1,0x4E82,
1394    1,0x5375,
1395    1,0x6B04,
1396    1,0x721B,
1397    1,0x862D,
1398    1,0x9E1E,
1399    1,0x5D50,
1400    1,0x6FEB,
1401    1,0x85CD,
1402    1,0x8964,
1403    1,0x62C9,
1404    1,0x81D8,
1405    1,0x881F,
1406    1,0x5ECA,
1407    1,0x6717,
1408    1,0x6D6A,
1409    1,0x72FC,
1410    1,0x90CE,
1411    1,0x4F86,
1412    1,0x51B7,
1413    1,0x52DE,
1414    1,0x64C4,
1415    1,0x6AD3,
1416    1,0x7210,
1417    1,0x76E7,
1418    1,0x8001,
1419    1,0x8606,
1420    1,0x865C,
1421    1,0x8DEF,
1422    1,0x9732,
1423    1,0x9B6F,
1424    1,0x9DFA,
1425    1,0x788C,
1426    1,0x797F,
1427    1,0x7DA0,
1428    1,0x83C9,
1429    1,0x9304,
1430    1,0x9E7F,
1431    1,0x8AD6,
1432    1,0x58DF,
1433    1,0x5F04,
1434    1,0x7C60,
1435    1,0x807E,
1436    1,0x7262,
1437    1,0x78CA,
1438    1,0x8CC2,
1439    1,0x96F7,
1440    1,0x58D8,
1441    1,0x5C62,
1442    1,0x6A13,
1443    1,0x6DDA,
1444    1,0x6F0F,
1445    1,0x7D2F,
1446    1,0x7E37,
1447    1,0x96FB,
1448    1,0x52D2,
1449    1,0x808B,
1450    1,0x51DC,
1451    1,0x51CC,
1452    1,0x7A1C,
1453    1,0x7DBE,
1454    1,0x83F1,
1455    1,0x9675,
1456    1,0x8B80,
1457    1,0x62CF,
1458    1,0x6A02,
1459    1,0x8AFE,
1460    1,0x4E39,
1461    1,0x5BE7,
1462    1,0x6012,
1463    1,0x7387,
1464    1,0x7570,
1465    1,0x5317,
1466    1,0x78FB,
1467    1,0x4FBF,
1468    1,0x5FA9,
1469    1,0x4E0D,
1470    1,0x6CCC,
1471    1,0x6578,
1472    1,0x7D22,
1473    1,0x53C3,
1474    1,0x585E,
1475    1,0x7701,
1476    1,0x8449,
1477    1,0x8AAA,
1478    1,0x6BBA,
1479    1,0x8FB0,
1480    1,0x6C88,
1481    1,0x62FE,
1482    1,0x82E5,
1483    1,0x63A0,
1484    1,0x7565,
1485    1,0x4EAE,
1486    1,0x5169,
1487    1,0x51C9,
1488    1,0x6881,
1489    1,0x7CE7,
1490    1,0x826F,
1491    1,0x8AD2,
1492    1,0x91CF,
1493    1,0x52F5,
1494    1,0x5442,
1495    1,0x5973,
1496    1,0x5EEC,
1497    1,0x65C5,
1498    1,0x6FFE,
1499    1,0x792A,
1500    1,0x95AD,
1501    1,0x9A6A,
1502    1,0x9E97,
1503    1,0x9ECE,
1504    1,0x529B,
1505    1,0x66C6,
1506    1,0x6B77,
1507    1,0x8F62,
1508    1,0x5E74,
1509    1,0x6190,
1510    1,0x6200,
1511    1,0x649A,
1512    1,0x6F23,
1513    1,0x7149,
1514    1,0x7489,
1515    1,0x79CA,
1516    1,0x7DF4,
1517    1,0x806F,
1518    1,0x8F26,
1519    1,0x84EE,
1520    1,0x9023,
1521    1,0x934A,
1522    1,0x5217,
1523    1,0x52A3,
1524    1,0x54BD,
1525    1,0x70C8,
1526    1,0x88C2,
1527    1,0x8AAA,
1528    1,0x5EC9,
1529    1,0x5FF5,
1530    1,0x637B,
1531    1,0x6BAE,
1532    1,0x7C3E,
1533    1,0x7375,
1534    1,0x4EE4,
1535    1,0x56F9,
1536    1,0x5BE7,
1537    1,0x5DBA,
1538    1,0x601C,
1539    1,0x73B2,
1540    1,0x7469,
1541    1,0x7F9A,
1542    1,0x8046,
1543    1,0x9234,
1544    1,0x96F6,
1545    1,0x9748,
1546    1,0x9818,
1547    1,0x4F8B,
1548    1,0x79AE,
1549    1,0x91B4,
1550    1,0x96B8,
1551    1,0x60E1,
1552    1,0x4E86,
1553    1,0x50DA,
1554    1,0x5BEE,
1555    1,0x5C3F,
1556    1,0x6599,
1557    1,0x6A02,
1558    1,0x71CE,
1559    1,0x7642,
1560    1,0x84FC,
1561    1,0x907C,
1562    1,0x9F8D,
1563    1,0x6688,
1564    1,0x962E,
1565    1,0x5289,
1566    1,0x677B,
1567    1,0x67F3,
1568    1,0x6D41,
1569    1,0x6E9C,
1570    1,0x7409,
1571    1,0x7559,
1572    1,0x786B,
1573    1,0x7D10,
1574    1,0x985E,
1575    1,0x516D,
1576    1,0x622E,
1577    1,0x9678,
1578    1,0x502B,
1579    1,0x5D19,
1580    1,0x6DEA,
1581    1,0x8F2A,
1582    1,0x5F8B,
1583    1,0x6144,
1584    1,0x6817,
1585    1,0x7387,
1586    1,0x9686,
1587    1,0x5229,
1588    1,0x540F,
1589    1,0x5C65,
1590    1,0x6613,
1591    1,0x674E,
1592    1,0x68A8,
1593    1,0x6CE5,
1594    1,0x7406,
1595    1,0x75E2,
1596    1,0x7F79,
1597    1,0x88CF,
1598    1,0x88E1,
1599    1,0x91CC,
1600    1,0x96E2,
1601    1,0x533F,
1602    1,0x6EBA,
1603    1,0x541D,
1604    1,0x71D0,
1605    1,0x7498,
1606    1,0x85FA,
1607    1,0x96A3,
1608    1,0x9C57,
1609    1,0x9E9F,
1610    1,0x6797,
1611    1,0x6DCB,
1612    1,0x81E8,
1613    1,0x7ACB,
1614    1,0x7B20,
1615    1,0x7C92,
1616    1,0x72C0,
1617    1,0x7099,
1618    1,0x8B58,
1619    1,0x4EC0,
1620    1,0x8336,
1621    1,0x523A,
1622    1,0x5207,
1623    1,0x5EA6,
1624    1,0x62D3,
1625    1,0x7CD6,
1626    1,0x5B85,
1627    1,0x6D1E,
1628    1,0x66B4,
1629    1,0x8F3B,
1630    1,0x884C,
1631    1,0x964D,
1632    1,0x898B,
1633    1,0x5ED3,
1634    1,0x5140,
1635    1,0x55C0,
1636    1,0x585A,
1637    1,0x6674,
1638    1,0x51DE,
1639    1,0x732A,
1640    1,0x76CA,
1641    1,0x793C,
1642    1,0x795E,
1643    1,0x7965,
1644    1,0x798F,
1645    1,0x9756,
1646    1,0x7CBE,
1647    1,0x7FBD,
1648    1,0x8612,
1649    1,0x8AF8,
1650    1,0x9038,
1651    1,0x90FD,
1652    1,0x98EF,
1653    1,0x98FC,
1654    1,0x9928,
1655    1,0x9DB4,
1656    2, 'f', 'f',
1657    2, 'f', 'i',
1658    2, 'f', 'l',
1659    3, 'f', 'f', 'i',
1660    3, 'f', 'f', 'l',
1661    2,0x017F, 't',
1662    2, 's', 't',
1663    2,0x0574,0x0576,
1664    2,0x0574,0x0565,
1665    2,0x0574,0x056B,
1666    2,0x057E,0x0576,
1667    2,0x0574,0x056D,
1668    1,0x05E2,
1669    1,0x05D0,
1670    1,0x05D3,
1671    1,0x05D4,
1672    1,0x05DB,
1673    1,0x05DC,
1674    1,0x05DD,
1675    1,0x05E8,
1676    1,0x05EA,
1677    1, '+',
1678    2,0x05D0,0x05DC,
1679    1,0x203E,
1680    1,0x203E,
1681    1,0x203E,
1682    1,0x203E,
1683    1, '_',
1684    1, '_',
1685    1, '_',
1686    1, ',',
1687    1,0x3001,
1688    1, '.',
1689    1, ';',
1690    1, ':',
1691    1, '?',
1692    1, '!',
1693    1,0x2014,
1694    1, '(',
1695    1, ')',
1696    1, '{',
1697    1, '}',
1698    1,0x3014,
1699    1,0x3015,
1700    1, '#',
1701    1, '&',
1702    1, '*',
1703    1, '+',
1704    1, '-',
1705    1, '<',
1706    1, '>',
1707    1, '=',
1708    1,'\\',
1709    1, '$',
1710    1, '%',
1711    1, '@',
1712    1, '!',
1713    1, '"',
1714    1, '#',
1715    1, '$',
1716    1, '%',
1717    1, '&',
1718    1,'\'',
1719    1, '(',
1720    1, ')',
1721    1, '*',
1722    1, '+',
1723    1, ',',
1724    1, '-',
1725    1, '.',
1726    1, '/',
1727    1, '0',
1728    1, '1',
1729    1, '2',
1730    1, '3',
1731    1, '4',
1732    1, '5',
1733    1, '6',
1734    1, '7',
1735    1, '8',
1736    1, '9',
1737    1, ':',
1738    1, ';',
1739    1, '<',
1740    1, '=',
1741    1, '>',
1742    1, '?',
1743    1, '@',
1744    1, 'A',
1745    1, 'B',
1746    1, 'C',
1747    1, 'D',
1748    1, 'E',
1749    1, 'F',
1750    1, 'G',
1751    1, 'H',
1752    1, 'I',
1753    1, 'J',
1754    1, 'K',
1755    1, 'L',
1756    1, 'M',
1757    1, 'N',
1758    1, 'O',
1759    1, 'P',
1760    1, 'Q',
1761    1, 'R',
1762    1, 'S',
1763    1, 'T',
1764    1, 'U',
1765    1, 'V',
1766    1, 'W',
1767    1, 'X',
1768    1, 'Y',
1769    1, 'Z',
1770    1, '[',
1771    1,'\\',
1772    1, ']',
1773    1, '^',
1774    1, '_',
1775    1, '`',
1776    1, 'a',
1777    1, 'b',
1778    1, 'c',
1779    1, 'd',
1780    1, 'e',
1781    1, 'f',
1782    1, 'g',
1783    1, 'h',
1784    1, 'i',
1785    1, 'j',
1786    1, 'k',
1787    1, 'l',
1788    1, 'm',
1789    1, 'n',
1790    1, 'o',
1791    1, 'p',
1792    1, 'q',
1793    1, 'r',
1794    1, 's',
1795    1, 't',
1796    1, 'u',
1797    1, 'v',
1798    1, 'w',
1799    1, 'x',
1800    1, 'y',
1801    1, 'z',
1802    1, '{',
1803    1, '|',
1804    1, '}',
1805    1, '~',
1806    1,0x3002,
1807    1,0x300C,
1808    1,0x300D,
1809    1,0x3001,
1810    1,0x30FB,
1811    1,0x30F2,
1812    1,0x30A1,
1813    1,0x30A3,
1814    1,0x30A5,
1815    1,0x30A7,
1816    1,0x30A9,
1817    1,0x30E3,
1818    1,0x30E5,
1819    1,0x30E7,
1820    1,0x30C3,
1821    1,0x30FC,
1822    1,0x30A2,
1823    1,0x30A4,
1824    1,0x30A6,
1825    1,0x30A8,
1826    1,0x30AA,
1827    1,0x30AB,
1828    1,0x30AD,
1829    1,0x30AF,
1830    1,0x30B1,
1831    1,0x30B3,
1832    1,0x30B5,
1833    1,0x30B7,
1834    1,0x30B9,
1835    1,0x30BB,
1836    1,0x30BD,
1837    1,0x30BF,
1838    1,0x30C1,
1839    1,0x30C4,
1840    1,0x30C6,
1841    1,0x30C8,
1842    1,0x30CA,
1843    1,0x30CB,
1844    1,0x30CC,
1845    1,0x30CD,
1846    1,0x30CE,
1847    1,0x30CF,
1848    1,0x30D2,
1849    1,0x30D5,
1850    1,0x30D8,
1851    1,0x30DB,
1852    1,0x30DE,
1853    1,0x30DF,
1854    1,0x30E0,
1855    1,0x30E1,
1856    1,0x30E2,
1857    1,0x30E4,
1858    1,0x30E6,
1859    1,0x30E8,
1860    1,0x30E9,
1861    1,0x30EA,
1862    1,0x30EB,
1863    1,0x30EC,
1864    1,0x30ED,
1865    1,0x30EF,
1866    1,0x30F3,
1867    1,0x3099,
1868    1,0x309A,
1869    1,0x3164,
1870    1,0x3131,
1871    1,0x3132,
1872    1,0x3133,
1873    1,0x3134,
1874    1,0x3135,
1875    1,0x3136,
1876    1,0x3137,
1877    1,0x3138,
1878    1,0x3139,
1879    1,0x313A,
1880    1,0x313B,
1881    1,0x313C,
1882    1,0x313D,
1883    1,0x313E,
1884    1,0x313F,
1885    1,0x3140,
1886    1,0x3141,
1887    1,0x3142,
1888    1,0x3143,
1889    1,0x3144,
1890    1,0x3145,
1891    1,0x3146,
1892    1,0x3147,
1893    1,0x3148,
1894    1,0x3149,
1895    1,0x314A,
1896    1,0x314B,
1897    1,0x314C,
1898    1,0x314D,
1899    1,0x314E,
1900    1,0x314F,
1901    1,0x3150,
1902    1,0x3151,
1903    1,0x3152,
1904    1,0x3153,
1905    1,0x3154,
1906    1,0x3155,
1907    1,0x3156,
1908    1,0x3157,
1909    1,0x3158,
1910    1,0x3159,
1911    1,0x315A,
1912    1,0x315B,
1913    1,0x315C,
1914    1,0x315D,
1915    1,0x315E,
1916    1,0x315F,
1917    1,0x3160,
1918    1,0x3161,
1919    1,0x3162,
1920    1,0x3163,
1921    1,0xA2,
1922    1,0xA3,
1923    1,0xAC,
1924    1,0xAF,
1925    1,0xA6,
1926    1,0xA5,
1927    1,0x20A9,
1928    1,0x2502,
1929    1,0x2190,
1930    1,0x2191,
1931    1,0x2192,
1932    1,0x2193,
1933    1,0x25A0,
1934    1,0x25CB,
1935 };
1936
1937 static const short translit_page00[344] = {
1938      0,    2,    4,    6,   -1,    9,   13,   15, /* 0xa0-0xa7 */
1939     18,   20,   24,   26,   29,   33,   35,   -1, /* 0xa8-0xaf */
1940     39,   42,   46,   49,   52,   54,   56,   58, /* 0xb0-0xb7 */
1941     60,   62,   65,   67,   70,   76,   82,   88, /* 0xb8-0xbf */
1942     90,   93,   96,   99,  102,  105,  107,  110, /* 0xc0-0xc7 */
1943    112,  115,  118,  121,  124,  127,  130,  133, /* 0xc8-0xcf */
1944    136,  138,  141,  144,  147,  150,  153,  156, /* 0xd0-0xd7 */
1945    158,  160,  163,  166,  169,  172,  175,  178, /* 0xd8-0xdf */
1946    181,  184,  187,  190,  193,  196,  198,  201, /* 0xe0-0xe7 */
1947    203,  206,  209,  212,  215,  218,  221,  224, /* 0xe8-0xef */
1948    227,  229,  232,  235,  238,  241,  244,  247, /* 0xf0-0xf7 */
1949    249,  251,  254,  257,  260,  263,  266,  269, /* 0xf8-0xff */
1950   /* 0x0100 */
1951    272,  274,  276,  278,  280,  282,  284,  287, /* 0x00-0x07 */
1952    290,  293,  296,  298,  300,  302,  304,  306, /* 0x08-0x0f */
1953    308,  310,  312,  314,  316,  318,  320,  322, /* 0x10-0x17 */
1954    324,  326,  328,  330,  332,  335,  338,  340, /* 0x18-0x1f */
1955    342,  344,  346,  348,  350,  353,  356,  358, /* 0x20-0x27 */
1956    360,  363,  366,  368,  370,  372,  374,  376, /* 0x28-0x2f */
1957    378,  380,  382,  385,  388,  391,  394,  396, /* 0x30-0x37 */
1958     -1,  398,  400,  402,  404,  406,  408,  410, /* 0x38-0x3f */
1959    412,  414,  416,  418,  421,  424,  426,  428, /* 0x40-0x47 */
1960    430,  432,   -1,   -1,  435,  437,  439,  441, /* 0x48-0x4f */
1961    443,  446,  449,  452,  455,  458,  461,  463, /* 0x50-0x57 */
1962    465,  467,  469,  472,  475,  478,  481,  483, /* 0x58-0x5f */
1963    485,  487,  489,  491,  493,  495,  497,  499, /* 0x60-0x67 */
1964    501,  504,  507,  509,  511,  513,  515,  517, /* 0x68-0x6f */
1965    519,  522,  525,  527,  529,  532,  535,  538, /* 0x70-0x77 */
1966    541,  544,  547,  550,  552,  554,  556,  558, /* 0x78-0x7f */
1967     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x80-0x87 */
1968     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x88-0x8f */
1969     -1,   -1,  560,   -1,   -1,   -1,   -1,   -1, /* 0x90-0x97 */
1970     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x98-0x9f */
1971     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xa0-0xa7 */
1972     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xa8-0xaf */
1973     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xb0-0xb7 */
1974     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xb8-0xbf */
1975     -1,   -1,   -1,   -1,  562,  565,  568,  571, /* 0xc0-0xc7 */
1976    574,  577,  580,  583,  586,   -1,   -1,   -1, /* 0xc8-0xcf */
1977     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xd0-0xd7 */
1978     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xd8-0xdf */
1979     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xe0-0xe7 */
1980     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xe8-0xef */
1981     -1,  589,  592,  595,   -1,   -1,   -1,   -1, /* 0xf0-0xf7 */
1982 };
1983 static const short translit_page02[8] = {
1984    598,  600,  602,  604,   -1,   -1,   -1,   -1, /* 0x18-0x1f */
1985 };
1986 static const short translit_page02_1[32] = {
1987     -1,   -1,   -1,   -1,   -1,   -1,  606,   -1, /* 0xc0-0xc7 */
1988     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xc8-0xcf */
1989     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xd0-0xd7 */
1990     -1,   -1,   -1,   -1,  608,  610,   -1,   -1, /* 0xd8-0xdf */
1991 };
1992 static const short translit_page03[40] = {
1993    612,  614,  616,   -1,   -1,  618,  620,   -1, /* 0xd0-0xd7 */
1994     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xd8-0xdf */
1995     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xe0-0xe7 */
1996     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xe8-0xef */
1997    622,  624,  626,   -1,   -1,   -1,   -1,   -1, /* 0xf0-0xf7 */
1998 };
1999 static const short translit_page05[8] = {
2000    631,  634,  637,   -1,   -1,   -1,   -1,   -1, /* 0xf0-0xf7 */
2001 };
2002 static const short translit_page06[16] = {
2003     -1,   -1,   -1,   -1,   -1,  640,  643,  646, /* 0x70-0x77 */
2004    649,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x78-0x7f */
2005 };
2006 static const short translit_page0e[48] = {
2007     -1,   -1,   -1,  655,   -1,   -1,   -1,   -1, /* 0xb0-0xb7 */
2008     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xb8-0xbf */
2009     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xc0-0xc7 */
2010     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xc8-0xcf */
2011     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xd0-0xd7 */
2012     -1,   -1,   -1,   -1,  658,  661,   -1,   -1, /* 0xd8-0xdf */
2013 };
2014 static const short translit_page0f[16] = {
2015     -1,   -1,   -1,   -1,   -1,   -1,   -1,  664, /* 0x70-0x77 */
2016     -1,  667,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x78-0x7f */
2017 };
2018 static const short translit_page1e[160] = {
2019     -1,   -1,  670,  672,   -1,   -1,   -1,   -1, /* 0x00-0x07 */
2020     -1,   -1,  674,  676,   -1,   -1,   -1,   -1, /* 0x08-0x0f */
2021     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x10-0x17 */
2022     -1,   -1,   -1,   -1,   -1,   -1,  678,  680, /* 0x18-0x1f */
2023     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x20-0x27 */
2024     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x28-0x2f */
2025     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x30-0x37 */
2026     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x38-0x3f */
2027    682,  684,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x40-0x47 */
2028     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x48-0x4f */
2029     -1,   -1,   -1,   -1,   -1,   -1,  686,  688, /* 0x50-0x57 */
2030     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x58-0x5f */
2031    690,  692,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x60-0x67 */
2032     -1,   -1,  694,  696,   -1,   -1,   -1,   -1, /* 0x68-0x6f */
2033     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x70-0x77 */
2034     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x78-0x7f */
2035    698,  701,  704,  707,  710,  713,   -1,   -1, /* 0x80-0x87 */
2036     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x88-0x8f */
2037     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x90-0x97 */
2038     -1,   -1,  716,   -1,   -1,   -1,   -1,   -1, /* 0x98-0x9f */
2039 };
2040 static const short translit_page1e_2[8] = {
2041     -1,   -1,  719,  722,   -1,   -1,   -1,   -1, /* 0xf0-0xf7 */
2042 };
2043 static const short translit_page20[80] = {
2044     -1,   -1,  725,  727,  729,  731,  733,   -1, /* 0x00-0x07 */
2045    735,  737,  739,   -1,   -1,   -1,   -1,   -1, /* 0x08-0x0f */
2046    741,  743,  745,  747,  749,  751,   -1,   -1, /* 0x10-0x17 */
2047     -1,   -1,   -1,   -1,  753,  755,  757,   -1, /* 0x18-0x1f */
2048    759,   -1,  761,   -1,  763,  765,  768,   -1, /* 0x20-0x27 */
2049     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x28-0x2f */
2050    772,   -1,  777,  779,  782,   -1,  786,  789, /* 0x30-0x37 */
2051     -1,  793,  795,   -1,  797,   -1,   -1,   -1, /* 0x38-0x3f */
2052     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x40-0x47 */
2053    800,  803,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x48-0x4f */
2054 };
2055 static const short translit_page20_3[8] = {
2056    806,   -1,   -1,   -1,  809,   -1,   -1,   -1, /* 0xa8-0xaf */
2057 };
2058 static const short translit_page21[216] = {
2059    813,  817,  821,  823,   -1,  826,  830,  834, /* 0x00-0x07 */
2060     -1,  836,  839,  841,  843,  845,  847,  849, /* 0x08-0x0f */
2061    851,  853,  855,  857,   -1,  859,  861,   -1, /* 0x10-0x17 */
2062     -1,  864,  866,  868,  870,  872,   -1,   -1, /* 0x18-0x1f */
2063     -1,  874,  878,   -1,  881,   -1,  883,   -1, /* 0x20-0x27 */
2064    887,   -1,   -1,   -1,  889,  891,   -1,  893, /* 0x28-0x2f */
2065    895,  897,   -1,  899,  901,  903,  905,  907, /* 0x30-0x37 */
2066    909,  911,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x38-0x3f */
2067     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x40-0x47 */
2068     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x48-0x4f */
2069     -1,   -1,   -1,  913,  919,  925,  931,  937, /* 0x50-0x57 */
2070    943,  949,  955,  961,  967,  973,  979,  985, /* 0x58-0x5f */
2071    989,  991,  994,  998, 1001, 1003, 1006, 1010, /* 0x60-0x67 */
2072   1015, 1018, 1020, 1023, 1027, 1029, 1031, 1033, /* 0x68-0x6f */
2073   1035, 1037, 1040, 1044, 1047, 1049, 1052, 1056, /* 0x70-0x77 */
2074   1061, 1064, 1066, 1069, 1073, 1075, 1077, 1079, /* 0x78-0x7f */
2075     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x80-0x87 */
2076     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x88-0x8f */
2077   1081, 1084, 1086, 1089,   -1,   -1,   -1,   -1, /* 0x90-0x97 */
2078     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x98-0x9f */
2079     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xa0-0xa7 */
2080     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xa8-0xaf */
2081     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xb0-0xb7 */
2082     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xb8-0xbf */
2083     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xc0-0xc7 */
2084     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xc8-0xcf */
2085   1091,   -1, 1094,   -1,   -1,   -1,   -1,   -1, /* 0xd0-0xd7 */
2086 };
2087 static const short translit_page22[96] = {
2088     -1,   -1, 1097,   -1,   -1, 1099,   -1,   -1, /* 0x10-0x17 */
2089     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x18-0x1f */
2090     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x20-0x27 */
2091     -1,   -1,   -1,   -1, 1101, 1104,   -1, 1108, /* 0x28-0x2f */
2092   1111,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x30-0x37 */
2093     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x38-0x3f */
2094     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x40-0x47 */
2095     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x48-0x4f */
2096     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x50-0x57 */
2097     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x58-0x5f */
2098   1115,   -1,   -1,   -1, 1118, 1121,   -1,   -1, /* 0x60-0x67 */
2099     -1,   -1, 1124, 1127,   -1,   -1,   -1,   -1, /* 0x68-0x6f */
2100 };
2101 static const short translit_page24[144] = {
2102   1130, 1134, 1138, 1142, 1146, 1150, 1154, 1158, /* 0x60-0x67 */
2103   1162, 1166, 1171, 1176, 1181, 1186, 1191, 1196, /* 0x68-0x6f */
2104   1201, 1206, 1211, 1216, 1221, 1225, 1229, 1233, /* 0x70-0x77 */
2105   1237, 1241, 1245, 1249, 1253, 1257, 1262, 1267, /* 0x78-0x7f */
2106   1272, 1277, 1282, 1287, 1292, 1297, 1302, 1307, /* 0x80-0x87 */
2107   1312, 1315, 1318, 1321, 1324, 1327, 1330, 1333, /* 0x88-0x8f */
2108   1336, 1339, 1343, 1347, 1351, 1355, 1359, 1363, /* 0x90-0x97 */
2109   1367, 1371, 1375, 1379, 1383, 1387, 1391, 1395, /* 0x98-0x9f */
2110   1399, 1403, 1407, 1411, 1415, 1419, 1423, 1427, /* 0xa0-0xa7 */
2111   1431, 1435, 1439, 1443, 1447, 1451, 1455, 1459, /* 0xa8-0xaf */
2112   1463, 1467, 1471, 1475, 1479, 1483, 1487, 1491, /* 0xb0-0xb7 */
2113   1495, 1499, 1503, 1507, 1511, 1515, 1519, 1523, /* 0xb8-0xbf */
2114   1527, 1531, 1535, 1539, 1543, 1547, 1551, 1555, /* 0xc0-0xc7 */
2115   1559, 1563, 1567, 1571, 1575, 1579, 1583, 1587, /* 0xc8-0xcf */
2116   1591, 1595, 1599, 1603, 1607, 1611, 1615, 1619, /* 0xd0-0xd7 */
2117   1623, 1627, 1631, 1635, 1639, 1643, 1647, 1651, /* 0xd8-0xdf */
2118   1655, 1659, 1663, 1667, 1671, 1675, 1679, 1683, /* 0xe0-0xe7 */
2119   1687, 1691, 1695,   -1,   -1,   -1,   -1,   -1, /* 0xe8-0xef */
2120 };
2121 static const short translit_page25[64] = {
2122   1699,   -1, 1701,   -1,   -1,   -1,   -1,   -1, /* 0x00-0x07 */
2123     -1,   -1,   -1,   -1, 1703,   -1,   -1,   -1, /* 0x08-0x0f */
2124   1705,   -1,   -1,   -1, 1707,   -1,   -1,   -1, /* 0x10-0x17 */
2125   1709,   -1,   -1,   -1, 1711,   -1,   -1,   -1, /* 0x18-0x1f */
2126     -1,   -1,   -1,   -1, 1713,   -1,   -1,   -1, /* 0x20-0x27 */
2127     -1,   -1,   -1,   -1, 1715,   -1,   -1,   -1, /* 0x28-0x2f */
2128     -1,   -1,   -1,   -1, 1717,   -1,   -1,   -1, /* 0x30-0x37 */
2129     -1,   -1,   -1,   -1, 1719,   -1,   -1,   -1, /* 0x38-0x3f */
2130 };
2131 static const short translit_page2f[216] = {
2132   1725, 1727, 1729, 1731, 1733, 1735, 1737, 1739, /* 0x00-0x07 */
2133   1741, 1743, 1745, 1747, 1749, 1751, 1753, 1755, /* 0x08-0x0f */
2134   1757, 1759, 1761, 1763, 1765, 1767, 1769, 1771, /* 0x10-0x17 */
2135   1773, 1775, 1777, 1779, 1781, 1783, 1785, 1787, /* 0x18-0x1f */
2136   1789, 1791, 1793, 1795, 1797, 1799, 1801, 1803, /* 0x20-0x27 */
2137   1805, 1807, 1809, 1811, 1813, 1815, 1817, 1819, /* 0x28-0x2f */
2138   1821, 1823, 1825, 1827, 1829, 1831, 1833, 1835, /* 0x30-0x37 */
2139   1837, 1839, 1841, 1843, 1845, 1847, 1849, 1851, /* 0x38-0x3f */
2140   1853, 1855, 1857, 1859, 1861, 1863, 1865, 1867, /* 0x40-0x47 */
2141   1869, 1871, 1873, 1875, 1877, 1879, 1881, 1883, /* 0x48-0x4f */
2142   1885, 1887, 1889, 1891, 1893, 1895, 1897, 1899, /* 0x50-0x57 */
2143   1901, 1903, 1905, 1907, 1909, 1911, 1913, 1915, /* 0x58-0x5f */
2144   1917, 1919, 1921, 1923, 1925, 1927, 1929, 1931, /* 0x60-0x67 */
2145   1933, 1935, 1937, 1939, 1941, 1943, 1945, 1947, /* 0x68-0x6f */
2146   1949, 1951, 1953, 1955, 1957, 1959, 1961, 1963, /* 0x70-0x77 */
2147   1965, 1967, 1969, 1971, 1973, 1975, 1977, 1979, /* 0x78-0x7f */
2148   1981, 1983, 1985, 1987, 1989, 1991, 1993, 1995, /* 0x80-0x87 */
2149   1997, 1999, 2001, 2003, 2005, 2007, 2009, 2011, /* 0x88-0x8f */
2150   2013, 2015, 2017, 2019, 2021, 2023, 2025, 2027, /* 0x90-0x97 */
2151   2029, 2031, 2033, 2035, 2037, 2039, 2041, 2043, /* 0x98-0x9f */
2152   2045, 2047, 2049, 2051, 2053, 2055, 2057, 2059, /* 0xa0-0xa7 */
2153   2061, 2063, 2065, 2067, 2069, 2071, 2073, 2075, /* 0xa8-0xaf */
2154   2077, 2079, 2081, 2083, 2085, 2087, 2089, 2091, /* 0xb0-0xb7 */
2155   2093, 2095, 2097, 2099, 2101, 2103, 2105, 2107, /* 0xb8-0xbf */
2156   2109, 2111, 2113, 2115, 2117, 2119, 2121, 2123, /* 0xc0-0xc7 */
2157   2125, 2127, 2129, 2131, 2133, 2135, 2137, 2139, /* 0xc8-0xcf */
2158   2141, 2143, 2145, 2147, 2149, 2151,   -1,   -1, /* 0xd0-0xd7 */
2159 };
2160 static const short translit_page30[64] = {
2161   2153,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x00-0x07 */
2162     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x08-0x0f */
2163     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x10-0x17 */
2164     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x18-0x1f */
2165     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x20-0x27 */
2166     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x28-0x2f */
2167     -1,   -1,   -1,   -1,   -1,   -1, 2155,   -1, /* 0x30-0x37 */
2168   2157, 2159, 2161,   -1,   -1,   -1,   -1,   -1, /* 0x38-0x3f */
2169 };
2170 static const short translit_page30_4[8] = {
2171     -1,   -1,   -1, 2163, 2166,   -1,   -1,   -1, /* 0x98-0x9f */
2172 };
2173 static const short translit_page31[96] = {
2174     -1, 2169, 2171, 2173, 2175, 2177, 2179, 2181, /* 0x30-0x37 */
2175   2183, 2185, 2187, 2189, 2191, 2193, 2195, 2197, /* 0x38-0x3f */
2176   2199, 2201, 2203, 2205, 2207, 2209, 2211, 2213, /* 0x40-0x47 */
2177   2215, 2217, 2219, 2221, 2223, 2225, 2227, 2229, /* 0x48-0x4f */
2178   2231, 2233, 2235, 2237, 2239, 2241, 2243, 2245, /* 0x50-0x57 */
2179   2247, 2249, 2251, 2253, 2255, 2257, 2259, 2261, /* 0x58-0x5f */
2180   2263, 2265, 2267, 2269, 2271, 2273, 2275, 2277, /* 0x60-0x67 */
2181   2279, 2281, 2283, 2285, 2287, 2289, 2291, 2293, /* 0x68-0x6f */
2182   2295, 2297, 2299, 2301, 2303, 2305, 2307, 2309, /* 0x70-0x77 */
2183   2311, 2313, 2315, 2317, 2319, 2321, 2323, 2325, /* 0x78-0x7f */
2184   2327, 2329, 2331, 2333, 2335, 2337, 2339, 2341, /* 0x80-0x87 */
2185   2343, 2345, 2347, 2349, 2351, 2353, 2355,   -1, /* 0x88-0x8f */
2186 };
2187 static const short translit_page32[512] = {
2188   2357, 2361, 2365, 2369, 2373, 2377, 2381, 2385, /* 0x00-0x07 */
2189   2389, 2393, 2397, 2401, 2405, 2409, 2413, 2418, /* 0x08-0x0f */
2190   2423, 2428, 2433, 2438, 2443, 2448, 2453, 2458, /* 0x10-0x17 */
2191   2463, 2468, 2473, 2478, 2483,   -1,   -1,   -1, /* 0x18-0x1f */
2192   2488, 2492, 2496, 2500, 2504, 2508, 2512, 2516, /* 0x20-0x27 */
2193   2520, 2524, 2528, 2532, 2536, 2540, 2544, 2548, /* 0x28-0x2f */
2194   2552, 2556, 2560, 2564, 2568, 2572, 2576, 2580, /* 0x30-0x37 */
2195   2584, 2588, 2592, 2596, 2600, 2604, 2608, 2612, /* 0x38-0x3f */
2196   2616, 2620, 2624, 2628,   -1,   -1,   -1,   -1, /* 0x40-0x47 */
2197     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x48-0x4f */
2198     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x50-0x57 */
2199     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x58-0x5f */
2200   2632, 2636, 2640, 2644, 2648, 2652, 2656, 2660, /* 0x60-0x67 */
2201   2664, 2668, 2672, 2676, 2680, 2684, 2688, 2693, /* 0x68-0x6f */
2202   2698, 2703, 2708, 2713, 2718, 2723, 2728, 2733, /* 0x70-0x77 */
2203   2738, 2743, 2748, 2753,   -1,   -1,   -1,   -1, /* 0x78-0x7f */
2204   2758, 2762, 2766, 2770, 2774, 2778, 2782, 2786, /* 0x80-0x87 */
2205   2790, 2794, 2798, 2802, 2806, 2810, 2814, 2818, /* 0x88-0x8f */
2206   2822, 2826, 2830, 2834, 2838, 2842, 2846, 2850, /* 0x90-0x97 */
2207   2854, 2858, 2862, 2866, 2870, 2874, 2878, 2882, /* 0x98-0x9f */
2208   2886, 2890, 2894, 2898, 2902, 2906, 2910, 2914, /* 0xa0-0xa7 */
2209   2918, 2922, 2926, 2930, 2934, 2938, 2942, 2946, /* 0xa8-0xaf */
2210   2950,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xb0-0xb7 */
2211     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0xb8-0xbf */
2212   2954, 2957, 2960, 2963, 2966, 2969, 2972, 2975, /* 0xc0-0xc7 */
2213   2978, 2981, 2985, 2989,   -1,   -1,   -1,   -1, /* 0xc8-0xcf */
2214   2993, 2997, 3001, 3005, 3009, 3013, 3017, 3021, /* 0xd0-0xd7 */
2215   3025, 3029, 3033, 3037, 3041, 3045, 3049, 3053, /* 0xd8-0xdf */
2216   3057, 3061, 3065, 3069, 3073, 3077, 3081, 3085, /* 0xe0-0xe7 */
2217   3089, 3093, 3097, 3101, 3105, 3109, 3113, 3117, /* 0xe8-0xef */
2218   3121, 3125, 3129, 3133, 3137, 3141, 3145, 3149, /* 0xf0-0xf7 */
2219   3153, 3157, 3161, 3165, 3169, 3173, 3177,   -1, /* 0xf8-0xff */
2220   /* 0x3300 */
2221   3181, 3186, 3191, 3196, 3200, 3205, 3209, 3213, /* 0x00-0x07 */
2222   3219, 3224, 3228, 3232, 3236, 3241, 3246, 3250, /* 0x08-0x0f */
2223   3254, 3257, 3261, 3266, 3271, 3274, 3280, 3287, /* 0x10-0x17 */
2224   3293, 3297, 3303, 3309, 3314, 3318, 3322, 3326, /* 0x18-0x1f */
2225   3331, 3337, 3342, 3346, 3350, 3354, 3357, 3360, /* 0x20-0x27 */
2226   3363, 3366, 3370, 3374, 3380, 3384, 3389, 3395, /* 0x28-0x2f */
2227   3399, 3402, 3405, 3411, 3416, 3422, 3426, 3432, /* 0x30-0x37 */
2228   3435, 3439, 3443, 3447, 3451, 3455, 3460, 3464, /* 0x38-0x3f */
2229   3467, 3471, 3475, 3479, 3484, 3488, 3492, 3496, /* 0x40-0x47 */
2230   3502, 3507, 3510, 3516, 3519, 3524, 3529, 3533, /* 0x48-0x4f */
2231   3537, 3541, 3546, 3549, 3553, 3558, 3561, 3567, /* 0x50-0x57 */
2232   3571, 3574, 3577, 3580, 3583, 3586, 3589, 3592, /* 0x58-0x5f */
2233   3595, 3598, 3601, 3605, 3609, 3613, 3617, 3621, /* 0x60-0x67 */
2234   3625, 3629, 3633, 3637, 3641, 3645, 3649, 3653, /* 0x68-0x6f */
2235   3657, 3661, 3665, 3668, 3671, 3675, 3678,   -1, /* 0x70-0x77 */
2236     -1,   -1,   -1, 3681, 3684, 3687, 3690, 3693, /* 0x78-0x7f */
2237   3698, 3701, 3704, 3707, 3710, 3713, 3716, 3719, /* 0x80-0x87 */
2238   3722, 3726, 3731, 3734, 3737, 3740, 3743, 3746, /* 0x88-0x8f */
2239   3749, 3752, 3756, 3760, 3764, 3768, 3771, 3774, /* 0x90-0x97 */
2240   3777, 3780, 3783, 3786, 3789, 3792, 3795, 3798, /* 0x98-0x9f */
2241   3803, 3808, 3812, 3817, 3822, 3827, 3831, 3836, /* 0xa0-0xa7 */
2242   3840, 3846, 3849, 3853, 3857, 3861, 3865, 3871, /* 0xa8-0xaf */
2243   3879, 3882, 3885, 3888, 3891, 3894, 3897, 3900, /* 0xb0-0xb7 */
2244   3903, 3906, 3909, 3912, 3915, 3918, 3921, 3924, /* 0xb8-0xbf */
2245   3927, 3930, 3933, 3938, 3941, 3944, 3947, 3952, /* 0xc0-0xc7 */
2246   3956, 3959, 3962, 3965, 3968, 3971, 3974, 3977, /* 0xc8-0xcf */
2247   3980, 3983, 3986, 3990, 3993, 3996, 4000, 4004, /* 0xd0-0xd7 */
2248   4007, 4012, 4016, 4019, 4022, 4025,   -1,   -1, /* 0xd8-0xdf */
2249   4028, 4031, 4034, 4037, 4040, 4043, 4046, 4049, /* 0xe0-0xe7 */
2250   4052, 4055, 4059, 4063, 4067, 4071, 4075, 4079, /* 0xe8-0xef */
2251   4083, 4087, 4091, 4095, 4099, 4103, 4107, 4111, /* 0xf0-0xf7 */
2252   4115, 4119, 4123, 4127, 4131, 4135, 4139,   -1, /* 0xf8-0xff */
2253 };
2254 static const short translit_pagef9[304] = {
2255   4143, 4145, 4147, 4149, 4151, 4153, 4155, 4157, /* 0x00-0x07 */
2256   4159, 4161, 4163, 4165, 4167, 4169, 4171, 4173, /* 0x08-0x0f */
2257   4175, 4177, 4179, 4181, 4183, 4185, 4187, 4189, /* 0x10-0x17 */
2258   4191, 4193, 4195, 4197, 4199, 4201, 4203, 4205, /* 0x18-0x1f */
2259   4207, 4209, 4211, 4213, 4215, 4217, 4219, 4221, /* 0x20-0x27 */
2260   4223, 4225, 4227, 4229, 4231, 4233, 4235, 4237, /* 0x28-0x2f */
2261   4239, 4241, 4243, 4245, 4247, 4249, 4251, 4253, /* 0x30-0x37 */
2262   4255, 4257, 4259, 4261, 4263, 4265, 4267, 4269, /* 0x38-0x3f */
2263   4271, 4273, 4275, 4277, 4279, 4281, 4283, 4285, /* 0x40-0x47 */
2264   4287, 4289, 4291, 4293, 4295, 4297, 4299, 4301, /* 0x48-0x4f */
2265   4303, 4305, 4307, 4309, 4311, 4313, 4315, 4317, /* 0x50-0x57 */
2266   4319, 4321, 4323, 4325, 4327, 4329, 4331, 4333, /* 0x58-0x5f */
2267   4335, 4337, 4339, 4341, 4343, 4345, 4347, 4349, /* 0x60-0x67 */
2268   4351, 4353, 4355, 4357, 4359, 4361, 4363, 4365, /* 0x68-0x6f */
2269   4367, 4369, 4371, 4373, 4375, 4377, 4379, 4381, /* 0x70-0x77 */
2270   4383, 4385, 4387, 4389, 4391, 4393, 4395, 4397, /* 0x78-0x7f */
2271   4399, 4401, 4403, 4405, 4407, 4409, 4411, 4413, /* 0x80-0x87 */
2272   4415, 4417, 4419, 4421, 4423, 4425, 4427, 4429, /* 0x88-0x8f */
2273   4431, 4433, 4435, 4437, 4439, 4441, 4443, 4445, /* 0x90-0x97 */
2274   4447, 4449, 4451, 4453, 4455, 4457, 4459, 4461, /* 0x98-0x9f */
2275   4463, 4465, 4467, 4469, 4471, 4473, 4475, 4477, /* 0xa0-0xa7 */
2276   4479, 4481, 4483, 4485, 4487, 4489, 4491, 4493, /* 0xa8-0xaf */
2277   4495, 4497, 4499, 4501, 4503, 4505, 4507, 4509, /* 0xb0-0xb7 */
2278   4511, 4513, 4515, 4517, 4519, 4521, 4523, 4525, /* 0xb8-0xbf */
2279   4527, 4529, 4531, 4533, 4535, 4537, 4539, 4541, /* 0xc0-0xc7 */
2280   4543, 4545, 4547, 4549, 4551, 4553, 4555, 4557, /* 0xc8-0xcf */
2281   4559, 4561, 4563, 4565, 4567, 4569, 4571, 4573, /* 0xd0-0xd7 */
2282   4575, 4577, 4579, 4581, 4583, 4585, 4587, 4589, /* 0xd8-0xdf */
2283   4591, 4593, 4595, 4597, 4599, 4601, 4603, 4605, /* 0xe0-0xe7 */
2284   4607, 4609, 4611, 4613, 4615, 4617, 4619, 4621, /* 0xe8-0xef */
2285   4623, 4625, 4627, 4629, 4631, 4633, 4635, 4637, /* 0xf0-0xf7 */
2286   4639, 4641, 4643, 4645, 4647, 4649, 4651, 4653, /* 0xf8-0xff */
2287   /* 0xfa00 */
2288   4655, 4657, 4659, 4661, 4663, 4665, 4667, 4669, /* 0x00-0x07 */
2289   4671, 4673, 4675, 4677, 4679, 4681,   -1,   -1, /* 0x08-0x0f */
2290   4683,   -1, 4685,   -1,   -1, 4687, 4689, 4691, /* 0x10-0x17 */
2291   4693, 4695, 4697, 4699, 4701, 4703, 4705,   -1, /* 0x18-0x1f */
2292   4707,   -1, 4709,   -1,   -1, 4711, 4713,   -1, /* 0x20-0x27 */
2293     -1,   -1, 4715, 4717, 4719, 4721,   -1,   -1, /* 0x28-0x2f */
2294 };
2295 static const short translit_pagefb[80] = {
2296   4723, 4726, 4729, 4732, 4736, 4740, 4743,   -1, /* 0x00-0x07 */
2297     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x08-0x0f */
2298     -1,   -1,   -1, 4746, 4749, 4752, 4755, 4758, /* 0x10-0x17 */
2299     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x18-0x1f */
2300   4761, 4763, 4765, 4767, 4769, 4771, 4773, 4775, /* 0x20-0x27 */
2301   4777, 4779,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x28-0x2f */
2302     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x30-0x37 */
2303     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x38-0x3f */
2304     -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1, /* 0x40-0x47 */
2305     -1,   -1,   -1,   -1,   -1,   -1,   -1, 4781, /* 0x48-0x4f */
2306 };
2307 static const short translit_pagefe[40] = {
2308     -1, 4784, 4786, 4788, 4790, 4792, 4794, 4796, /* 0x48-0x4f */
2309   4798, 4800, 4802,   -1, 4804, 4806, 4808, 4810, /* 0x50-0x57 */
2310   4812, 4814, 4816, 4818, 4820, 4822, 4824, 4826, /* 0x58-0x5f */
2311   4828, 4830, 4832, 4834, 4836, 4838, 4840,   -1, /* 0x60-0x67 */
2312   4842, 4844, 4846, 4848,   -1,   -1,   -1,   -1, /* 0x68-0x6f */
2313 };
2314 static const short translit_pageff[240] = {
2315     -1, 4850, 4852, 4854, 4856, 4858, 4860, 4862, /* 0x00-0x07 */
2316   4864, 4866, 4868, 4870, 4872, 4874, 4876, 4878, /* 0x08-0x0f */
2317   4880, 4882, 4884, 4886, 4888, 4890, 4892, 4894, /* 0x10-0x17 */
2318   4896, 4898, 4900, 4902, 4904, 4906, 4908, 4910, /* 0x18-0x1f */
2319   4912, 4914, 4916, 4918, 4920, 4922, 4924, 4926, /* 0x20-0x27 */
2320   4928, 4930, 4932, 4934, 4936, 4938, 4940, 4942, /* 0x28-0x2f */
2321   4944, 4946, 4948, 4950, 4952, 4954, 4956, 4958, /* 0x30-0x37 */
2322   4960, 4962, 4964, 4966, 4968, 4970, 4972, 4974, /* 0x38-0x3f */
2323   4976, 4978, 4980, 4982, 4984, 4986, 4988, 4990, /* 0x40-0x47 */
2324   4992, 4994, 4996, 4998, 5000, 5002, 5004, 5006, /* 0x48-0x4f */
2325   5008, 5010, 5012, 5014, 5016, 5018, 5020, 5022, /* 0x50-0x57 */
2326   5024, 5026, 5028, 5030, 5032, 5034, 5036,   -1, /* 0x58-0x5f */
2327     -1, 5038, 5040, 5042, 5044, 5046, 5048, 5050, /* 0x60-0x67 */
2328   5052, 5054, 5056, 5058, 5060, 5062, 5064, 5066, /* 0x68-0x6f */
2329   5068, 5070, 5072, 5074, 5076, 5078, 5080, 5082, /* 0x70-0x77 */
2330   5084, 5086, 5088, 5090, 5092, 5094, 5096, 5098, /* 0x78-0x7f */
2331   5100, 5102, 5104, 5106, 5108, 5110, 5112, 5114, /* 0x80-0x87 */
2332   5116, 5118, 5120, 5122, 5124, 5126, 5128, 5130, /* 0x88-0x8f */
2333   5132, 5134, 5136, 5138, 5140, 5142, 5144, 5146, /* 0x90-0x97 */
2334   5148, 5150, 5152, 5154, 5156, 5158, 5160, 5162, /* 0x98-0x9f */
2335   5164, 5166, 5168, 5170, 5172, 5174, 5176, 5178, /* 0xa0-0xa7 */
2336   5180, 5182, 5184, 5186, 5188, 5190, 5192, 5194, /* 0xa8-0xaf */
2337   5196, 5198, 5200, 5202, 5204, 5206, 5208, 5210, /* 0xb0-0xb7 */
2338   5212, 5214, 5216, 5218, 5220, 5222, 5224,   -1, /* 0xb8-0xbf */
2339     -1,   -1, 5226, 5228, 5230, 5232, 5234, 5236, /* 0xc0-0xc7 */
2340     -1,   -1, 5238, 5240, 5242, 5244, 5246, 5248, /* 0xc8-0xcf */
2341     -1,   -1, 5250, 5252, 5254, 5256, 5258, 5260, /* 0xd0-0xd7 */
2342     -1,   -1, 5262, 5264, 5266,   -1,   -1,   -1, /* 0xd8-0xdf */
2343   5268, 5270, 5272, 5274, 5276, 5278, 5280,   -1, /* 0xe0-0xe7 */
2344   5282, 5284, 5286, 5288, 5290, 5292, 5294,   -1, /* 0xe8-0xef */
2345 };
2346
2347 #define translit_index(wc) \
2348   (wc >= 0x00a0 && wc < 0x01f8 ? translit_page00[wc-0x00a0] : \
2349    wc >= 0x0218 && wc < 0x0220 ? translit_page02[wc-0x0218] : \
2350    wc >= 0x02c0 && wc < 0x02e0 ? translit_page02_1[wc-0x02c0] : \
2351    wc >= 0x03d0 && wc < 0x03f8 ? translit_page03[wc-0x03d0] : \
2352    wc == 0x0587 ? 628 : \
2353    wc >= 0x05f0 && wc < 0x05f8 ? translit_page05[wc-0x05f0] : \
2354    wc >= 0x0670 && wc < 0x0680 ? translit_page06[wc-0x0670] : \
2355    wc == 0x0e33 ? 652 : \
2356    wc >= 0x0eb0 && wc < 0x0ee0 ? translit_page0e[wc-0x0eb0] : \
2357    wc >= 0x0f70 && wc < 0x0f80 ? translit_page0f[wc-0x0f70] : \
2358    wc >= 0x1e00 && wc < 0x1ea0 ? translit_page1e[wc-0x1e00] : \
2359    wc >= 0x1ef0 && wc < 0x1ef8 ? translit_page1e_2[wc-0x1ef0] : \
2360    wc >= 0x2000 && wc < 0x2050 ? translit_page20[wc-0x2000] : \
2361    wc >= 0x20a8 && wc < 0x20b0 ? translit_page20_3[wc-0x20a8] : \
2362    wc >= 0x2100 && wc < 0x21d8 ? translit_page21[wc-0x2100] : \
2363    wc >= 0x2210 && wc < 0x2270 ? translit_page22[wc-0x2210] : \
2364    wc >= 0x2460 && wc < 0x24f0 ? translit_page24[wc-0x2460] : \
2365    wc >= 0x2500 && wc < 0x2540 ? translit_page25[wc-0x2500] : \
2366    wc == 0x2e9f ? 1721 : \
2367    wc == 0x2ef3 ? 1723 : \
2368    wc >= 0x2f00 && wc < 0x2fd8 ? translit_page2f[wc-0x2f00] : \
2369    wc >= 0x3000 && wc < 0x3040 ? translit_page30[wc-0x3000] : \
2370    wc >= 0x3098 && wc < 0x30a0 ? translit_page30_4[wc-0x3098] : \
2371    wc >= 0x3130 && wc < 0x3190 ? translit_page31[wc-0x3130] : \
2372    wc >= 0x3200 && wc < 0x3400 ? translit_page32[wc-0x3200] : \
2373    wc >= 0xf900 && wc < 0xfa30 ? translit_pagef9[wc-0xf900] : \
2374    wc >= 0xfb00 && wc < 0xfb50 ? translit_pagefb[wc-0xfb00] : \
2375    wc >= 0xfe48 && wc < 0xfe70 ? translit_pagefe[wc-0xfe48] : \
2376    wc >= 0xff00 && wc < 0xfff0 ? translit_pageff[wc-0xff00] : \
2377    -1)