2
* Copyright (C) 1999-2003 Free Software Foundation, Inc.
3
* This file is part of the GNU LIBICONV Library.
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.
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.
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., 51 Franklin Street,
18
* Fifth Floor, Boston, MA 02110-1301, USA.
22
* Transliteration table
25
static const unsigned int translit_data[9116] = {
52
5, ' ', '1',0x2044, '4', ' ',
53
5, ' ', '1',0x2044, '2', ' ',
54
5, ' ', '3',0x2044, '4', ' ',
350
4, 'o', '/', 'o', 'o',
355
3,0x2035,0x2035,0x2035,
363
4,0xB4,0xB4,0xB4,0xB4,
365
4,0x0110,0x1ED3, 'n', 'g',
420
5, ' ', '1',0x2044, '3', ' ',
421
5, ' ', '2',0x2044, '3', ' ',
422
5, ' ', '1',0x2044, '5', ' ',
423
5, ' ', '2',0x2044, '5', ' ',
424
5, ' ', '3',0x2044, '5', ' ',
425
5, ' ', '4',0x2044, '5', ' ',
426
5, ' ', '1',0x2044, '6', ' ',
427
5, ' ', '5',0x2044, '6', ' ',
428
5, ' ', '1',0x2044, '8', ' ',
429
5, ' ', '3',0x2044, '8', ' ',
430
5, ' ', '5',0x2044, '8', ' ',
431
5, ' ', '7',0x2044, '8', ' ',
440
4, 'V', 'I', 'I', 'I',
456
4, 'v', 'i', 'i', 'i',
480
3,0x222B,0x222B,0x222B,
482
3,0x222E,0x222E,0x222E,
494
5, '[', 'N', 'U', 'L', ']',
495
5, '[', 'S', 'O', 'H', ']',
496
5, '[', 'S', 'T', 'X', ']',
497
5, '[', 'E', 'T', 'X', ']',
498
5, '[', 'E', 'O', 'T', ']',
499
5, '[', 'E', 'N', 'Q', ']',
500
5, '[', 'A', 'C', 'K', ']',
501
5, '[', 'B', 'E', 'L', ']',
502
4, '[', 'B', 'S', ']',
503
4, '[', 'H', 'T', ']',
504
4, '[', 'L', 'F', ']',
505
4, '[', 'V', 'T', ']',
506
4, '[', 'F', 'F', ']',
507
4, '[', 'C', 'R', ']',
508
4, '[', 'S', 'O', ']',
509
4, '[', 'S', 'I', ']',
510
5, '[', 'D', 'L', 'E', ']',
511
5, '[', 'D', 'C', '1', ']',
512
5, '[', 'D', 'C', '2', ']',
513
5, '[', 'D', 'C', '3', ']',
514
5, '[', 'D', 'C', '4', ']',
515
5, '[', 'N', 'A', 'K', ']',
516
5, '[', 'S', 'Y', 'N', ']',
517
5, '[', 'E', 'T', 'B', ']',
518
5, '[', 'C', 'A', 'N', ']',
519
4, '[', 'E', 'M', ']',
520
5, '[', 'S', 'U', 'B', ']',
521
5, '[', 'E', 'S', 'C', ']',
522
4, '[', 'F', 'S', ']',
523
4, '[', 'G', 'S', ']',
524
4, '[', 'R', 'S', ']',
525
4, '[', 'U', 'S', ']',
526
4, '[', 'S', 'P', ']',
527
5, '[', 'D', 'E', 'L', ']',
528
4, '[', 'N', 'L', ']',
538
4, '(', '1', '0', ')',
539
4, '(', '1', '1', ')',
540
4, '(', '1', '2', ')',
541
4, '(', '1', '3', ')',
542
4, '(', '1', '4', ')',
543
4, '(', '1', '5', ')',
544
4, '(', '1', '6', ')',
545
4, '(', '1', '7', ')',
546
4, '(', '1', '8', ')',
547
4, '(', '1', '9', ')',
548
4, '(', '2', '0', ')',
558
4, '(', '1', '0', ')',
559
4, '(', '1', '1', ')',
560
4, '(', '1', '2', ')',
561
4, '(', '1', '3', ')',
562
4, '(', '1', '4', ')',
563
4, '(', '1', '5', ')',
564
4, '(', '1', '6', ')',
565
4, '(', '1', '7', ')',
566
4, '(', '1', '8', ')',
567
4, '(', '1', '9', ')',
568
4, '(', '2', '0', ')',
680
4,0x222B,0x222B,0x222B,0x222B,
1056
4, '(',0x1100,0x1161, ')',
1057
4, '(',0x1102,0x1161, ')',
1058
4, '(',0x1103,0x1161, ')',
1059
4, '(',0x1105,0x1161, ')',
1060
4, '(',0x1106,0x1161, ')',
1061
4, '(',0x1107,0x1161, ')',
1062
4, '(',0x1109,0x1161, ')',
1063
4, '(',0x110B,0x1161, ')',
1064
4, '(',0x110C,0x1161, ')',
1065
4, '(',0x110E,0x1161, ')',
1066
4, '(',0x110F,0x1161, ')',
1067
4, '(',0x1110,0x1161, ')',
1068
4, '(',0x1111,0x1161, ')',
1069
4, '(',0x1112,0x1161, ')',
1070
4, '(',0x110C,0x116E, ')',
1071
7, '(',0x110B,0x1169,0x110C,0x1165,0x11AB, ')',
1072
6, '(',0x110B,0x1169,0x1112,0x116E, ')',
1110
4, '(', '2', '1', ')',
1111
4, '(', '2', '2', ')',
1112
4, '(', '2', '3', ')',
1113
4, '(', '2', '4', ')',
1114
4, '(', '2', '5', ')',
1115
4, '(', '2', '6', ')',
1116
4, '(', '2', '7', ')',
1117
4, '(', '2', '8', ')',
1118
4, '(', '2', '9', ')',
1119
4, '(', '3', '0', ')',
1120
4, '(', '3', '1', ')',
1121
4, '(', '3', '2', ')',
1122
4, '(', '3', '3', ')',
1123
4, '(', '3', '4', ')',
1124
4, '(', '3', '5', ')',
1139
4, '(',0x1100,0x1161, ')',
1140
4, '(',0x1102,0x1161, ')',
1141
4, '(',0x1103,0x1161, ')',
1142
4, '(',0x1105,0x1161, ')',
1143
4, '(',0x1106,0x1161, ')',
1144
4, '(',0x1107,0x1161, ')',
1145
4, '(',0x1109,0x1161, ')',
1146
4, '(',0x110B,0x1161, ')',
1147
4, '(',0x110C,0x1161, ')',
1148
4, '(',0x110E,0x1161, ')',
1149
4, '(',0x110F,0x1161, ')',
1150
4, '(',0x1110,0x1161, ')',
1151
4, '(',0x1111,0x1161, ')',
1152
4, '(',0x1112,0x1161, ')',
1153
7, '(',0x110E,0x1161,0x11B7,0x1100,0x1169, ')',
1154
6, '(',0x110C,0x116E,0x110B,0x1174, ')',
1204
4, '(', '3', '6', ')',
1205
4, '(', '3', '7', ')',
1206
4, '(', '3', '8', ')',
1207
4, '(', '3', '9', ')',
1208
4, '(', '4', '0', ')',
1209
4, '(', '4', '1', ')',
1210
4, '(', '4', '2', ')',
1211
4, '(', '4', '3', ')',
1212
4, '(', '4', '4', ')',
1213
4, '(', '4', '5', ')',
1214
4, '(', '4', '6', ')',
1215
4, '(', '4', '7', ')',
1216
4, '(', '4', '8', ')',
1217
4, '(', '4', '9', ')',
1218
4, '(', '5', '0', ')',
1282
4,0x30A2,0x30D1,0x30FC,0x30C8,
1283
4,0x30A2,0x30EB,0x30D5,0x30A1,
1284
4,0x30A2,0x30F3,0x30DA,0x30A2,
1285
3,0x30A2,0x30FC,0x30EB,
1286
4,0x30A4,0x30CB,0x30F3,0x30B0,
1287
3,0x30A4,0x30F3,0x30C1,
1288
3,0x30A6,0x30A9,0x30F3,
1289
5,0x30A8,0x30B9,0x30AF,0x30FC,0x30C9,
1290
4,0x30A8,0x30FC,0x30AB,0x30FC,
1291
3,0x30AA,0x30F3,0x30B9,
1292
3,0x30AA,0x30FC,0x30E0,
1293
3,0x30AB,0x30A4,0x30EA,
1294
4,0x30AB,0x30E9,0x30C3,0x30C8,
1295
4,0x30AB,0x30ED,0x30EA,0x30FC,
1296
3,0x30AC,0x30ED,0x30F3,
1297
3,0x30AC,0x30F3,0x30DE,
1299
3,0x30AE,0x30CB,0x30FC,
1300
4,0x30AD,0x30E5,0x30EA,0x30FC,
1301
4,0x30AE,0x30EB,0x30C0,0x30FC,
1303
5,0x30AD,0x30ED,0x30B0,0x30E9,0x30E0,
1304
6,0x30AD,0x30ED,0x30E1,0x30FC,0x30C8,0x30EB,
1305
5,0x30AD,0x30ED,0x30EF,0x30C3,0x30C8,
1306
3,0x30B0,0x30E9,0x30E0,
1307
5,0x30B0,0x30E9,0x30E0,0x30C8,0x30F3,
1308
5,0x30AF,0x30EB,0x30BC,0x30A4,0x30ED,
1309
4,0x30AF,0x30ED,0x30FC,0x30CD,
1310
3,0x30B1,0x30FC,0x30B9,
1311
3,0x30B3,0x30EB,0x30CA,
1312
3,0x30B3,0x30FC,0x30DD,
1313
4,0x30B5,0x30A4,0x30AF,0x30EB,
1314
5,0x30B5,0x30F3,0x30C1,0x30FC,0x30E0,
1315
4,0x30B7,0x30EA,0x30F3,0x30B0,
1316
3,0x30BB,0x30F3,0x30C1,
1317
3,0x30BB,0x30F3,0x30C8,
1318
3,0x30C0,0x30FC,0x30B9,
1323
3,0x30CE,0x30C3,0x30C8,
1324
3,0x30CF,0x30A4,0x30C4,
1325
5,0x30D1,0x30FC,0x30BB,0x30F3,0x30C8,
1326
3,0x30D1,0x30FC,0x30C4,
1327
4,0x30D0,0x30FC,0x30EC,0x30EB,
1328
5,0x30D4,0x30A2,0x30B9,0x30C8,0x30EB,
1329
3,0x30D4,0x30AF,0x30EB,
1332
5,0x30D5,0x30A1,0x30E9,0x30C3,0x30C9,
1333
4,0x30D5,0x30A3,0x30FC,0x30C8,
1334
5,0x30D6,0x30C3,0x30B7,0x30A7,0x30EB,
1335
3,0x30D5,0x30E9,0x30F3,
1336
5,0x30D8,0x30AF,0x30BF,0x30FC,0x30EB,
1338
3,0x30DA,0x30CB,0x30D2,
1339
3,0x30D8,0x30EB,0x30C4,
1340
3,0x30DA,0x30F3,0x30B9,
1341
3,0x30DA,0x30FC,0x30B8,
1342
3,0x30D9,0x30FC,0x30BF,
1343
4,0x30DD,0x30A4,0x30F3,0x30C8,
1344
3,0x30DC,0x30EB,0x30C8,
1346
3,0x30DD,0x30F3,0x30C9,
1347
3,0x30DB,0x30FC,0x30EB,
1348
3,0x30DB,0x30FC,0x30F3,
1349
4,0x30DE,0x30A4,0x30AF,0x30ED,
1350
3,0x30DE,0x30A4,0x30EB,
1351
3,0x30DE,0x30C3,0x30CF,
1352
3,0x30DE,0x30EB,0x30AF,
1353
5,0x30DE,0x30F3,0x30B7,0x30E7,0x30F3,
1354
4,0x30DF,0x30AF,0x30ED,0x30F3,
1356
5,0x30DF,0x30EA,0x30D0,0x30FC,0x30EB,
1358
4,0x30E1,0x30AC,0x30C8,0x30F3,
1359
4,0x30E1,0x30FC,0x30C8,0x30EB,
1360
3,0x30E4,0x30FC,0x30C9,
1361
3,0x30E4,0x30FC,0x30EB,
1362
3,0x30E6,0x30A2,0x30F3,
1363
4,0x30EA,0x30C3,0x30C8,0x30EB,
1365
3,0x30EB,0x30D4,0x30FC,
1366
4,0x30EB,0x30FC,0x30D6,0x30EB,
1368
5,0x30EC,0x30F3,0x30C8,0x30B2,0x30F3,
1369
3,0x30EF,0x30C3,0x30C8,
1402
4, 'd', 'm', '^', '2',
1403
4, 'd', 'm', '^', '3',
1409
4,0x682A,0x5F0F,0x4F1A,0x793E,
1419
4, 'k', 'c', 'a', 'l',
1441
4, 'm', 'm', '^', '2',
1442
4, 'c', 'm', '^', '2',
1444
4, 'k', 'm', '^', '2',
1445
4, 'm', 'm', '^', '3',
1446
4, 'c', 'm', '^', '3',
1448
4, 'k', 'm', '^', '3',
1450
5, 'm', '/', 's', '^', '2',
1456
5, 'r', 'a', 'd', '/', 's',
1457
7, 'r', 'a', 'd', '/', 's', '^', '2',
1476
4, 'a', '.', 'm', '.',
1480
4, 'C', '/', 'k', 'g',
1498
4, 'p', '.', 'm', '.',
3704
static const short translit_page00[344] = {
3705
0, 2, 4, 6, -1, 9, 13, 15, /* 0xa0-0xa7 */
3706
18, 20, 24, 26, 29, 33, 35, -1, /* 0xa8-0xaf */
3707
39, 42, 46, 49, 52, 54, 56, 58, /* 0xb0-0xb7 */
3708
60, 62, 65, 67, 70, 76, 82, 88, /* 0xb8-0xbf */
3709
90, 93, 96, 99, 102, 105, 107, 110, /* 0xc0-0xc7 */
3710
112, 115, 118, 121, 124, 127, 130, 133, /* 0xc8-0xcf */
3711
136, 138, 141, 144, 147, 150, 153, 156, /* 0xd0-0xd7 */
3712
158, 160, 163, 166, 169, 172, 175, 178, /* 0xd8-0xdf */
3713
181, 184, 187, 190, 193, 196, 198, 201, /* 0xe0-0xe7 */
3714
203, 206, 209, 212, 215, 218, 221, 224, /* 0xe8-0xef */
3715
227, 229, 232, 235, 238, 241, 244, 247, /* 0xf0-0xf7 */
3716
249, 251, 254, 257, 260, 263, 266, 269, /* 0xf8-0xff */
3718
272, 274, 276, 278, 280, 282, 284, 287, /* 0x00-0x07 */
3719
290, 293, 296, 298, 300, 302, 304, 306, /* 0x08-0x0f */
3720
308, 310, 312, 314, 316, 318, 320, 322, /* 0x10-0x17 */
3721
324, 326, 328, 330, 332, 335, 338, 340, /* 0x18-0x1f */
3722
342, 344, 346, 348, 350, 353, 356, 358, /* 0x20-0x27 */
3723
360, 363, 366, 368, 370, 372, 374, 376, /* 0x28-0x2f */
3724
378, 380, 382, 385, 388, 391, 394, 396, /* 0x30-0x37 */
3725
-1, 398, 400, 402, 404, 406, 408, 410, /* 0x38-0x3f */
3726
412, 414, 416, 418, 421, 424, 426, 428, /* 0x40-0x47 */
3727
430, 432, -1, -1, 435, 437, 439, 441, /* 0x48-0x4f */
3728
443, 446, 449, 452, 455, 458, 461, 463, /* 0x50-0x57 */
3729
465, 467, 469, 472, 475, 478, 481, 483, /* 0x58-0x5f */
3730
485, 487, 489, 491, 493, 495, 497, 499, /* 0x60-0x67 */
3731
501, 504, 507, 509, 511, 513, 515, 517, /* 0x68-0x6f */
3732
519, 522, 525, 527, 529, 532, 535, 538, /* 0x70-0x77 */
3733
541, 544, 547, 550, 552, 554, 556, 558, /* 0x78-0x7f */
3734
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x80-0x87 */
3735
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x88-0x8f */
3736
-1, -1, 560, -1, -1, -1, -1, -1, /* 0x90-0x97 */
3737
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x98-0x9f */
3738
-1, -1, -1, -1, -1, -1, -1, -1, /* 0xa0-0xa7 */
3739
-1, -1, -1, -1, -1, -1, -1, -1, /* 0xa8-0xaf */
3740
-1, -1, -1, -1, -1, -1, -1, -1, /* 0xb0-0xb7 */
3741
-1, -1, -1, -1, -1, -1, -1, -1, /* 0xb8-0xbf */
3742
-1, -1, -1, -1, 562, 565, 568, 571, /* 0xc0-0xc7 */
3743
574, 577, 580, 583, 586, -1, -1, -1, /* 0xc8-0xcf */
3744
-1, -1, -1, -1, -1, -1, -1, -1, /* 0xd0-0xd7 */
3745
-1, -1, -1, -1, -1, -1, -1, -1, /* 0xd8-0xdf */
3746
-1, -1, -1, -1, -1, -1, -1, -1, /* 0xe0-0xe7 */
3747
-1, -1, -1, -1, -1, -1, -1, -1, /* 0xe8-0xef */
3748
-1, 589, 592, 595, -1, -1, -1, -1, /* 0xf0-0xf7 */
3750
static const short translit_page02[8] = {
3751
598, 600, 602, 604, -1, -1, -1, -1, /* 0x18-0x1f */
3753
static const short translit_page02_1[40] = {
3754
-1, 606, 608, 610, 612, 614, -1, -1, /* 0xb8-0xbf */
3755
-1, -1, -1, -1, -1, -1, 616, -1, /* 0xc0-0xc7 */
3756
618, 620, 622, 624, -1, 626, -1, -1, /* 0xc8-0xcf */
3757
-1, -1, -1, -1, -1, -1, -1, -1, /* 0xd0-0xd7 */
3758
-1, -1, -1, -1, 628, 630, -1, -1, /* 0xd8-0xdf */
3760
static const short translit_page03[48] = {
3761
632, 634, 636, -1, -1, 638, 640, -1, /* 0xd0-0xd7 */
3762
-1, -1, -1, -1, -1, -1, -1, -1, /* 0xd8-0xdf */
3763
-1, -1, -1, -1, -1, -1, -1, -1, /* 0xe0-0xe7 */
3764
-1, -1, -1, -1, -1, -1, -1, -1, /* 0xe8-0xef */
3765
642, 644, 646, -1, 648, 650, -1, -1, /* 0xf0-0xf7 */
3766
-1, 652, -1, -1, -1, -1, -1, -1, /* 0xf8-0xff */
3768
static const short translit_page05[8] = {
3769
657, 660, 663, -1, -1, -1, -1, -1, /* 0xf0-0xf7 */
3771
static const short translit_page06[16] = {
3772
-1, -1, -1, -1, -1, 666, 669, 672, /* 0x70-0x77 */
3773
675, -1, -1, -1, -1, -1, -1, -1, /* 0x78-0x7f */
3775
static const short translit_page0e[48] = {
3776
-1, -1, -1, 681, -1, -1, -1, -1, /* 0xb0-0xb7 */
3777
-1, -1, -1, -1, -1, -1, -1, -1, /* 0xb8-0xbf */
3778
-1, -1, -1, -1, -1, -1, -1, -1, /* 0xc0-0xc7 */
3779
-1, -1, -1, -1, -1, -1, -1, -1, /* 0xc8-0xcf */
3780
-1, -1, -1, -1, -1, -1, -1, -1, /* 0xd0-0xd7 */
3781
-1, -1, -1, -1, 684, 687, -1, -1, /* 0xd8-0xdf */
3783
static const short translit_page0f[16] = {
3784
-1, -1, -1, -1, -1, -1, -1, 690, /* 0x70-0x77 */
3785
-1, 693, -1, -1, -1, -1, -1, -1, /* 0x78-0x7f */
3787
static const short translit_page1e[160] = {
3788
-1, -1, 696, 698, -1, -1, -1, -1, /* 0x00-0x07 */
3789
-1, -1, 700, 702, -1, -1, -1, -1, /* 0x08-0x0f */
3790
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x10-0x17 */
3791
-1, -1, -1, -1, -1, -1, 704, 706, /* 0x18-0x1f */
3792
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x20-0x27 */
3793
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x28-0x2f */
3794
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x30-0x37 */
3795
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x38-0x3f */
3796
708, 710, -1, -1, -1, -1, -1, -1, /* 0x40-0x47 */
3797
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x48-0x4f */
3798
-1, -1, -1, -1, -1, -1, 712, 714, /* 0x50-0x57 */
3799
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x58-0x5f */
3800
716, 718, -1, -1, -1, -1, -1, -1, /* 0x60-0x67 */
3801
-1, -1, 720, 722, -1, -1, -1, -1, /* 0x68-0x6f */
3802
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x70-0x77 */
3803
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x78-0x7f */
3804
724, 727, 730, 733, 736, 739, -1, -1, /* 0x80-0x87 */
3805
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x88-0x8f */
3806
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x90-0x97 */
3807
-1, -1, 742, -1, -1, -1, -1, -1, /* 0x98-0x9f */
3809
static const short translit_page1e_2[8] = {
3810
-1, -1, 745, 748, -1, -1, -1, -1, /* 0xf0-0xf7 */
3812
static const short translit_page20[88] = {
3813
-1, -1, 751, 753, 755, 757, 759, -1, /* 0x00-0x07 */
3814
761, 763, 765, -1, -1, -1, -1, -1, /* 0x08-0x0f */
3815
767, 769, 771, 773, 775, 777, -1, -1, /* 0x10-0x17 */
3816
779, 781, 783, 785, 787, 789, 791, 793, /* 0x18-0x1f */
3817
795, -1, 797, -1, 799, 801, 804, -1, /* 0x20-0x27 */
3818
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x28-0x2f */
3819
808, -1, 813, 815, 818, -1, 822, 825, /* 0x30-0x37 */
3820
-1, 829, 831, -1, 833, -1, -1, -1, /* 0x38-0x3f */
3821
-1, -1, -1, -1, 836, -1, -1, 838, /* 0x40-0x47 */
3822
841, 844, -1, -1, -1, -1, -1, -1, /* 0x48-0x4f */
3823
-1, -1, -1, -1, -1, -1, -1, 847, /* 0x50-0x57 */
3825
static const short translit_page20_3[8] = {
3826
852, -1, -1, 855, 860, -1, -1, -1, /* 0xa8-0xaf */
3828
static const short translit_page21[216] = {
3829
864, 868, 872, 874, -1, 877, 881, 885, /* 0x00-0x07 */
3830
-1, 887, 890, 892, 894, 896, 898, 900, /* 0x08-0x0f */
3831
902, 904, 906, 908, -1, 910, 912, -1, /* 0x10-0x17 */
3832
-1, 915, 917, 919, 921, 923, -1, -1, /* 0x18-0x1f */
3833
-1, 925, 929, -1, 932, -1, 934, -1, /* 0x20-0x27 */
3834
938, -1, -1, -1, 940, 942, 944, 946, /* 0x28-0x2f */
3835
948, 950, -1, 952, 954, 956, 958, 960, /* 0x30-0x37 */
3836
962, 964, -1, 966, -1, 970, 972, 974, /* 0x38-0x3f */
3837
976, -1, -1, -1, -1, 978, 980, 982, /* 0x40-0x47 */
3838
984, 986, -1, -1, -1, -1, -1, -1, /* 0x48-0x4f */
3839
-1, -1, -1, 988, 994, 1000, 1006, 1012, /* 0x50-0x57 */
3840
1018, 1024, 1030, 1036, 1042, 1048, 1054, 1060, /* 0x58-0x5f */
3841
1064, 1066, 1069, 1073, 1076, 1078, 1081, 1085, /* 0x60-0x67 */
3842
1090, 1093, 1095, 1098, 1102, 1104, 1106, 1108, /* 0x68-0x6f */
3843
1110, 1112, 1115, 1119, 1122, 1124, 1127, 1131, /* 0x70-0x77 */
3844
1136, 1139, 1141, 1144, 1148, 1150, 1152, 1154, /* 0x78-0x7f */
3845
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x80-0x87 */
3846
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x88-0x8f */
3847
1156, 1159, 1161, 1164, 1166, -1, -1, -1, /* 0x90-0x97 */
3848
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x98-0x9f */
3849
-1, -1, -1, -1, -1, -1, -1, -1, /* 0xa0-0xa7 */
3850
-1, -1, -1, -1, -1, -1, -1, -1, /* 0xa8-0xaf */
3851
-1, -1, -1, -1, -1, -1, -1, -1, /* 0xb0-0xb7 */
3852
-1, -1, -1, -1, -1, -1, -1, -1, /* 0xb8-0xbf */
3853
-1, -1, -1, -1, -1, -1, -1, -1, /* 0xc0-0xc7 */
3854
-1, -1, -1, -1, -1, -1, -1, -1, /* 0xc8-0xcf */
3855
1170, -1, 1173, -1, 1176, -1, -1, -1, /* 0xd0-0xd7 */
3857
static const short translit_page22[96] = {
3858
-1, -1, 1180, -1, -1, 1182, 1184, 1186, /* 0x10-0x17 */
3859
-1, 1188, -1, -1, -1, -1, -1, -1, /* 0x18-0x1f */
3860
-1, -1, -1, 1190, -1, -1, -1, -1, /* 0x20-0x27 */
3861
-1, -1, -1, -1, 1192, 1195, -1, 1199, /* 0x28-0x2f */
3862
1202, -1, -1, -1, -1, -1, 1206, -1, /* 0x30-0x37 */
3863
-1, -1, -1, -1, 1208, -1, -1, -1, /* 0x38-0x3f */
3864
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x40-0x47 */
3865
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x48-0x4f */
3866
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x50-0x57 */
3867
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x58-0x5f */
3868
1210, -1, -1, -1, 1213, 1216, -1, -1, /* 0x60-0x67 */
3869
-1, -1, 1219, 1222, -1, -1, -1, -1, /* 0x68-0x6f */
3871
static const short translit_page22_4[48] = {
3872
-1, -1, -1, -1, -1, 1225, -1, -1, /* 0xc0-0xc7 */
3873
-1, -1, -1, -1, -1, -1, -1, -1, /* 0xc8-0xcf */
3874
-1, -1, -1, -1, -1, -1, -1, -1, /* 0xd0-0xd7 */
3875
1227, 1231, -1, -1, -1, -1, -1, -1, /* 0xd8-0xdf */
3876
-1, -1, -1, -1, -1, -1, -1, -1, /* 0xe0-0xe7 */
3877
-1, -1, -1, -1, -1, -1, -1, 1235, /* 0xe8-0xef */
3879
static const short translit_page24[240] = {
3880
1239, 1245, 1251, 1257, 1263, 1269, 1275, 1281, /* 0x00-0x07 */
3881
1287, 1292, 1297, 1302, 1307, 1312, 1317, 1322, /* 0x08-0x0f */
3882
1327, 1333, 1339, 1345, 1351, 1357, 1363, 1369, /* 0x10-0x17 */
3883
1375, 1381, 1386, 1392, 1398, 1403, 1408, 1413, /* 0x18-0x1f */
3884
1418, 1423, -1, -1, 1429, -1, -1, -1, /* 0x20-0x27 */
3885
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x28-0x2f */
3886
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x30-0x37 */
3887
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x38-0x3f */
3888
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x40-0x47 */
3889
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x48-0x4f */
3890
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x50-0x57 */
3891
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x58-0x5f */
3892
1434, 1438, 1442, 1446, 1450, 1454, 1458, 1462, /* 0x60-0x67 */
3893
1466, 1470, 1475, 1480, 1485, 1490, 1495, 1500, /* 0x68-0x6f */
3894
1505, 1510, 1515, 1520, 1525, 1529, 1533, 1537, /* 0x70-0x77 */
3895
1541, 1545, 1549, 1553, 1557, 1561, 1566, 1571, /* 0x78-0x7f */
3896
1576, 1581, 1586, 1591, 1596, 1601, 1606, 1611, /* 0x80-0x87 */
3897
1616, 1619, 1622, 1625, 1628, 1631, 1634, 1637, /* 0x88-0x8f */
3898
1640, 1643, 1647, 1651, 1655, 1659, 1663, 1667, /* 0x90-0x97 */
3899
1671, 1675, 1679, 1683, 1687, 1691, 1695, 1699, /* 0x98-0x9f */
3900
1703, 1707, 1711, 1715, 1719, 1723, 1727, 1731, /* 0xa0-0xa7 */
3901
1735, 1739, 1743, 1747, 1751, 1755, 1759, 1763, /* 0xa8-0xaf */
3902
1767, 1771, 1775, 1779, 1783, 1787, 1791, 1795, /* 0xb0-0xb7 */
3903
1799, 1803, 1807, 1811, 1815, 1819, 1823, 1827, /* 0xb8-0xbf */
3904
1831, 1835, 1839, 1843, 1847, 1851, 1855, 1859, /* 0xc0-0xc7 */
3905
1863, 1867, 1871, 1875, 1879, 1883, 1887, 1891, /* 0xc8-0xcf */
3906
1895, 1899, 1903, 1907, 1911, 1915, 1919, 1923, /* 0xd0-0xd7 */
3907
1927, 1931, 1935, 1939, 1943, 1947, 1951, 1955, /* 0xd8-0xdf */
3908
1959, 1963, 1967, 1971, 1975, 1979, 1983, 1987, /* 0xe0-0xe7 */
3909
1991, 1995, 1999, -1, -1, -1, -1, -1, /* 0xe8-0xef */
3911
static const short translit_page25[64] = {
3912
2003, -1, 2005, -1, -1, -1, -1, -1, /* 0x00-0x07 */
3913
-1, -1, -1, -1, 2007, -1, -1, -1, /* 0x08-0x0f */
3914
2009, -1, -1, -1, 2011, -1, -1, -1, /* 0x10-0x17 */
3915
2013, -1, -1, -1, 2015, -1, -1, -1, /* 0x18-0x1f */
3916
-1, -1, -1, -1, 2017, -1, -1, -1, /* 0x20-0x27 */
3917
-1, -1, -1, -1, 2019, -1, -1, -1, /* 0x28-0x2f */
3918
-1, -1, -1, -1, 2021, -1, -1, -1, /* 0x30-0x37 */
3919
-1, -1, -1, -1, 2023, -1, -1, -1, /* 0x38-0x3f */
3921
static const short translit_page2a[8] = {
3922
-1, -1, -1, -1, 2032, 2036, 2039, -1, /* 0x70-0x77 */
3924
static const short translit_page2f[216] = {
3925
2047, 2049, 2051, 2053, 2055, 2057, 2059, 2061, /* 0x00-0x07 */
3926
2063, 2065, 2067, 2069, 2071, 2073, 2075, 2077, /* 0x08-0x0f */
3927
2079, 2081, 2083, 2085, 2087, 2089, 2091, 2093, /* 0x10-0x17 */
3928
2095, 2097, 2099, 2101, 2103, 2105, 2107, 2109, /* 0x18-0x1f */
3929
2111, 2113, 2115, 2117, 2119, 2121, 2123, 2125, /* 0x20-0x27 */
3930
2127, 2129, 2131, 2133, 2135, 2137, 2139, 2141, /* 0x28-0x2f */
3931
2143, 2145, 2147, 2149, 2151, 2153, 2155, 2157, /* 0x30-0x37 */
3932
2159, 2161, 2163, 2165, 2167, 2169, 2171, 2173, /* 0x38-0x3f */
3933
2175, 2177, 2179, 2181, 2183, 2185, 2187, 2189, /* 0x40-0x47 */
3934
2191, 2193, 2195, 2197, 2199, 2201, 2203, 2205, /* 0x48-0x4f */
3935
2207, 2209, 2211, 2213, 2215, 2217, 2219, 2221, /* 0x50-0x57 */
3936
2223, 2225, 2227, 2229, 2231, 2233, 2235, 2237, /* 0x58-0x5f */
3937
2239, 2241, 2243, 2245, 2247, 2249, 2251, 2253, /* 0x60-0x67 */
3938
2255, 2257, 2259, 2261, 2263, 2265, 2267, 2269, /* 0x68-0x6f */
3939
2271, 2273, 2275, 2277, 2279, 2281, 2283, 2285, /* 0x70-0x77 */
3940
2287, 2289, 2291, 2293, 2295, 2297, 2299, 2301, /* 0x78-0x7f */
3941
2303, 2305, 2307, 2309, 2311, 2313, 2315, 2317, /* 0x80-0x87 */
3942
2319, 2321, 2323, 2325, 2327, 2329, 2331, 2333, /* 0x88-0x8f */
3943
2335, 2337, 2339, 2341, 2343, 2345, 2347, 2349, /* 0x90-0x97 */
3944
2351, 2353, 2355, 2357, 2359, 2361, 2363, 2365, /* 0x98-0x9f */
3945
2367, 2369, 2371, 2373, 2375, 2377, 2379, 2381, /* 0xa0-0xa7 */
3946
2383, 2385, 2387, 2389, 2391, 2393, 2395, 2397, /* 0xa8-0xaf */
3947
2399, 2401, 2403, 2405, 2407, 2409, 2411, 2413, /* 0xb0-0xb7 */
3948
2415, 2417, 2419, 2421, 2423, 2425, 2427, 2429, /* 0xb8-0xbf */
3949
2431, 2433, 2435, 2437, 2439, 2441, 2443, 2445, /* 0xc0-0xc7 */
3950
2447, 2449, 2451, 2453, 2455, 2457, 2459, 2461, /* 0xc8-0xcf */
3951
2463, 2465, 2467, 2469, 2471, 2473, -1, -1, /* 0xd0-0xd7 */
3953
static const short translit_page30[248] = {
3954
2475, -1, -1, -1, -1, -1, -1, -1, /* 0x00-0x07 */
3955
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x08-0x0f */
3956
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x10-0x17 */
3957
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x18-0x1f */
3958
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x20-0x27 */
3959
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x28-0x2f */
3960
-1, -1, -1, -1, -1, -1, 2477, -1, /* 0x30-0x37 */
3961
2479, 2481, 2483, -1, -1, -1, -1, -1, /* 0x38-0x3f */
3962
-1, 2485, -1, 2487, -1, 2489, -1, 2491, /* 0x40-0x47 */
3963
-1, 2493, -1, -1, -1, -1, -1, -1, /* 0x48-0x4f */
3964
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x50-0x57 */
3965
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x58-0x5f */
3966
-1, -1, -1, 2495, -1, -1, -1, -1, /* 0x60-0x67 */
3967
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x68-0x6f */
3968
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x70-0x77 */
3969
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x78-0x7f */
3970
-1, -1, -1, 2497, -1, 2499, -1, 2501, /* 0x80-0x87 */
3971
-1, -1, -1, -1, -1, -1, 2503, -1, /* 0x88-0x8f */
3972
-1, -1, -1, -1, -1, 2505, 2507, -1, /* 0x90-0x97 */
3973
-1, -1, -1, 2509, 2512, -1, -1, -1, /* 0x98-0x9f */
3974
2515, 2517, -1, 2519, -1, 2521, -1, 2523, /* 0xa0-0xa7 */
3975
-1, 2525, -1, -1, -1, -1, -1, -1, /* 0xa8-0xaf */
3976
-1, -1, -1, -1, -1, -1, -1, -1, /* 0xb0-0xb7 */
3977
-1, -1, -1, -1, -1, -1, -1, -1, /* 0xb8-0xbf */
3978
-1, -1, -1, 2527, -1, -1, -1, -1, /* 0xc0-0xc7 */
3979
-1, -1, -1, -1, -1, -1, -1, -1, /* 0xc8-0xcf */
3980
-1, -1, -1, -1, -1, -1, -1, -1, /* 0xd0-0xd7 */
3981
-1, -1, -1, -1, -1, -1, -1, -1, /* 0xd8-0xdf */
3982
-1, -1, -1, 2529, -1, 2531, -1, 2533, /* 0xe0-0xe7 */
3983
-1, -1, -1, -1, -1, -1, 2535, -1, /* 0xe8-0xef */
3984
-1, -1, -1, -1, -1, 2537, 2539, -1, /* 0xf0-0xf7 */
3986
static const short translit_page31[96] = {
3987
-1, 2541, 2543, 2545, 2547, 2549, 2551, 2553, /* 0x30-0x37 */
3988
2555, 2557, 2559, 2561, 2563, 2565, 2567, 2569, /* 0x38-0x3f */
3989
2571, 2573, 2575, 2577, 2579, 2581, 2583, 2585, /* 0x40-0x47 */
3990
2587, 2589, 2591, 2593, 2595, 2597, 2599, 2601, /* 0x48-0x4f */
3991
2603, 2605, 2607, 2609, 2611, 2613, 2615, 2617, /* 0x50-0x57 */
3992
2619, 2621, 2623, 2625, 2627, 2629, 2631, 2633, /* 0x58-0x5f */
3993
2635, 2637, 2639, 2641, 2643, 2645, 2647, 2649, /* 0x60-0x67 */
3994
2651, 2653, 2655, 2657, 2659, 2661, 2663, 2665, /* 0x68-0x6f */
3995
2667, 2669, 2671, 2673, 2675, 2677, 2679, 2681, /* 0x70-0x77 */
3996
2683, 2685, 2687, 2689, 2691, 2693, 2695, 2697, /* 0x78-0x7f */
3997
2699, 2701, 2703, 2705, 2707, 2709, 2711, 2713, /* 0x80-0x87 */
3998
2715, 2717, 2719, 2721, 2723, 2725, 2727, -1, /* 0x88-0x8f */
4000
static const short translit_page31_5[528] = {
4001
2729, 2731, 2733, 2735, 2737, 2739, 2741, 2743, /* 0xf0-0xf7 */
4002
2745, 2747, 2749, 2751, 2753, 2755, 2757, 2759, /* 0xf8-0xff */
4004
2761, 2765, 2769, 2773, 2777, 2781, 2785, 2789, /* 0x00-0x07 */
4005
2793, 2797, 2801, 2805, 2809, 2813, 2817, 2822, /* 0x08-0x0f */
4006
2827, 2832, 2837, 2842, 2847, 2852, 2857, 2862, /* 0x10-0x17 */
4007
2867, 2872, 2877, 2882, 2887, 2892, 2900, -1, /* 0x18-0x1f */
4008
2907, 2911, 2915, 2919, 2923, 2927, 2931, 2935, /* 0x20-0x27 */
4009
2939, 2943, 2947, 2951, 2955, 2959, 2963, 2967, /* 0x28-0x2f */
4010
2971, 2975, 2979, 2983, 2987, 2991, 2995, 2999, /* 0x30-0x37 */
4011
3003, 3007, 3011, 3015, 3019, 3023, 3027, 3031, /* 0x38-0x3f */
4012
3035, 3039, 3043, 3047, -1, -1, -1, -1, /* 0x40-0x47 */
4013
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x48-0x4f */
4014
3051, 3055, 3060, 3065, 3070, 3075, 3080, 3085, /* 0x50-0x57 */
4015
3090, 3095, 3100, 3105, 3110, 3115, 3120, 3125, /* 0x58-0x5f */
4016
3130, 3134, 3138, 3142, 3146, 3150, 3154, 3158, /* 0x60-0x67 */
4017
3162, 3166, 3170, 3174, 3178, 3182, 3186, 3191, /* 0x68-0x6f */
4018
3196, 3201, 3206, 3211, 3216, 3221, 3226, 3231, /* 0x70-0x77 */
4019
3236, 3241, 3246, 3251, 3256, 3264, -1, -1, /* 0x78-0x7f */
4020
3271, 3275, 3279, 3283, 3287, 3291, 3295, 3299, /* 0x80-0x87 */
4021
3303, 3307, 3311, 3315, 3319, 3323, 3327, 3331, /* 0x88-0x8f */
4022
3335, 3339, 3343, 3347, 3351, 3355, 3359, 3363, /* 0x90-0x97 */
4023
3367, 3371, 3375, 3379, 3383, 3387, 3391, 3395, /* 0x98-0x9f */
4024
3399, 3403, 3407, 3411, 3415, 3419, 3423, 3427, /* 0xa0-0xa7 */
4025
3431, 3435, 3439, 3443, 3447, 3451, 3455, 3459, /* 0xa8-0xaf */
4026
3463, 3467, 3472, 3477, 3482, 3487, 3492, 3497, /* 0xb0-0xb7 */
4027
3502, 3507, 3512, 3517, 3522, 3527, 3532, 3537, /* 0xb8-0xbf */
4028
3542, 3545, 3548, 3551, 3554, 3557, 3560, 3563, /* 0xc0-0xc7 */
4029
3566, 3569, 3573, 3577, 3581, 3584, 3588, 3591, /* 0xc8-0xcf */
4030
3595, 3599, 3603, 3607, 3611, 3615, 3619, 3623, /* 0xd0-0xd7 */
4031
3627, 3631, 3635, 3639, 3643, 3647, 3651, 3655, /* 0xd8-0xdf */
4032
3659, 3663, 3667, 3671, 3675, 3679, 3683, 3687, /* 0xe0-0xe7 */
4033
3691, 3695, 3699, 3703, 3707, 3711, 3715, 3719, /* 0xe8-0xef */
4034
3723, 3727, 3731, 3735, 3739, 3743, 3747, 3751, /* 0xf0-0xf7 */
4035
3755, 3759, 3763, 3767, 3771, 3775, 3779, -1, /* 0xf8-0xff */
4037
3783, 3788, 3793, 3798, 3802, 3807, 3811, 3815, /* 0x00-0x07 */
4038
3821, 3826, 3830, 3834, 3838, 3843, 3848, 3852, /* 0x08-0x0f */
4039
3856, 3859, 3863, 3868, 3873, 3876, 3882, 3889, /* 0x10-0x17 */
4040
3895, 3899, 3905, 3911, 3916, 3920, 3924, 3928, /* 0x18-0x1f */
4041
3933, 3939, 3944, 3948, 3952, 3956, 3959, 3962, /* 0x20-0x27 */
4042
3965, 3968, 3972, 3976, 3982, 3986, 3991, 3997, /* 0x28-0x2f */
4043
4001, 4004, 4007, 4013, 4018, 4024, 4028, 4034, /* 0x30-0x37 */
4044
4037, 4041, 4045, 4049, 4053, 4057, 4062, 4066, /* 0x38-0x3f */
4045
4069, 4073, 4077, 4081, 4086, 4090, 4094, 4098, /* 0x40-0x47 */
4046
4104, 4109, 4112, 4118, 4121, 4126, 4131, 4135, /* 0x48-0x4f */
4047
4139, 4143, 4148, 4151, 4155, 4160, 4163, 4169, /* 0x50-0x57 */
4048
4173, 4176, 4179, 4182, 4185, 4188, 4191, 4194, /* 0x58-0x5f */
4049
4197, 4200, 4203, 4207, 4211, 4215, 4219, 4223, /* 0x60-0x67 */
4050
4227, 4231, 4235, 4239, 4243, 4247, 4251, 4255, /* 0x68-0x6f */
4051
4259, 4263, 4267, 4270, 4273, 4277, 4280, 4283, /* 0x70-0x77 */
4052
4286, 4291, 4296, 4299, 4302, 4305, 4308, 4311, /* 0x78-0x7f */
4053
4316, 4319, 4322, 4325, 4328, 4331, 4334, 4337, /* 0x80-0x87 */
4054
4340, 4344, 4349, 4352, 4355, 4358, 4361, 4364, /* 0x88-0x8f */
4055
4367, 4370, 4374, 4378, 4382, 4386, 4389, 4392, /* 0x90-0x97 */
4056
4395, 4398, 4401, 4404, 4407, 4410, 4413, 4416, /* 0x98-0x9f */
4057
4421, 4426, 4430, 4435, 4440, 4445, 4449, 4454, /* 0xa0-0xa7 */
4058
4458, 4464, 4467, 4471, 4475, 4479, 4483, 4489, /* 0xa8-0xaf */
4059
4497, 4500, 4503, 4506, 4509, 4512, 4515, 4518, /* 0xb0-0xb7 */
4060
4521, 4524, 4527, 4530, 4533, 4536, 4539, 4542, /* 0xb8-0xbf */
4061
4545, 4548, 4551, 4556, 4559, 4562, 4565, 4570, /* 0xc0-0xc7 */
4062
4574, 4577, 4580, 4583, 4586, 4589, 4592, 4595, /* 0xc8-0xcf */
4063
4598, 4601, 4604, 4608, 4611, 4614, 4618, 4622, /* 0xd0-0xd7 */
4064
4625, 4630, 4634, 4637, 4640, 4643, 4646, 4650, /* 0xd8-0xdf */
4065
4658, 4661, 4664, 4667, 4670, 4673, 4676, 4679, /* 0xe0-0xe7 */
4066
4682, 4685, 4689, 4693, 4697, 4701, 4705, 4709, /* 0xe8-0xef */
4067
4713, 4717, 4721, 4725, 4729, 4733, 4737, 4741, /* 0xf0-0xf7 */
4068
4745, 4749, 4753, 4757, 4761, 4765, 4769, 4654, /* 0xf8-0xff */
4070
static const short translit_pagef9[368] = {
4071
4773, 4775, 4777, 4779, 4781, 4783, 4785, 4787, /* 0x00-0x07 */
4072
4789, 4791, 4793, 4795, 4797, 4799, 4801, 4803, /* 0x08-0x0f */
4073
4805, 4807, 4809, 4811, 4813, 4815, 4817, 4819, /* 0x10-0x17 */
4074
4821, 4823, 4825, 4827, 4829, 4831, 4833, 4835, /* 0x18-0x1f */
4075
4837, 4839, 4841, 4843, 4845, 4847, 4849, 4851, /* 0x20-0x27 */
4076
4853, 4855, 4857, 4859, 4861, 4863, 4865, 4867, /* 0x28-0x2f */
4077
4869, 4871, 4873, 4875, 4877, 4879, 4881, 4883, /* 0x30-0x37 */
4078
4885, 4887, 4889, 4891, 4893, 4895, 4897, 4899, /* 0x38-0x3f */
4079
4901, 4903, 4905, 4907, 4909, 4911, 4913, 4915, /* 0x40-0x47 */
4080
4917, 4919, 4921, 4923, 4925, 4927, 4929, 4931, /* 0x48-0x4f */
4081
4933, 4935, 4937, 4939, 4941, 4943, 4945, 4947, /* 0x50-0x57 */
4082
4949, 4951, 4953, 4955, 4957, 4959, 4961, 4963, /* 0x58-0x5f */
4083
4965, 4967, 4969, 4971, 4973, 4975, 4977, 4979, /* 0x60-0x67 */
4084
4981, 4983, 4985, 4987, 4989, 4991, 4993, 4995, /* 0x68-0x6f */
4085
4997, 4999, 5001, 5003, 5005, 5007, 5009, 5011, /* 0x70-0x77 */
4086
5013, 5015, 5017, 5019, 5021, 5023, 5025, 5027, /* 0x78-0x7f */
4087
5029, 5031, 5033, 5035, 5037, 5039, 5041, 5043, /* 0x80-0x87 */
4088
5045, 5047, 5049, 5051, 5053, 5055, 5057, 5059, /* 0x88-0x8f */
4089
5061, 5063, 5065, 5067, 5069, 5071, 5073, 5075, /* 0x90-0x97 */
4090
5077, 5079, 5081, 5083, 5085, 5087, 5089, 5091, /* 0x98-0x9f */
4091
5093, 5095, 5097, 5099, 5101, 5103, 5105, 5107, /* 0xa0-0xa7 */
4092
5109, 5111, 5113, 5115, 5117, 5119, 5121, 5123, /* 0xa8-0xaf */
4093
5125, 5127, 5129, 5131, 5133, 5135, 5137, 5139, /* 0xb0-0xb7 */
4094
5141, 5143, 5145, 5147, 5149, 5151, 5153, 5155, /* 0xb8-0xbf */
4095
5157, 5159, 5161, 5163, 5165, 5167, 5169, 5171, /* 0xc0-0xc7 */
4096
5173, 5175, 5177, 5179, 5181, 5183, 5185, 5187, /* 0xc8-0xcf */
4097
5189, 5191, 5193, 5195, 5197, 5199, 5201, 5203, /* 0xd0-0xd7 */
4098
5205, 5207, 5209, 5211, 5213, 5215, 5217, 5219, /* 0xd8-0xdf */
4099
5221, 5223, 5225, 5227, 5229, 5231, 5233, 5235, /* 0xe0-0xe7 */
4100
5237, 5239, 5241, 5243, 5245, 5247, 5249, 5251, /* 0xe8-0xef */
4101
5253, 5255, 5257, 5259, 5261, 5263, 5265, 5267, /* 0xf0-0xf7 */
4102
5269, 5271, 5273, 5275, 5277, 5279, 5281, 5283, /* 0xf8-0xff */
4104
5285, 5287, 5289, 5291, 5293, 5295, 5297, 5299, /* 0x00-0x07 */
4105
5301, 5303, 5305, 5307, 5309, 5311, -1, -1, /* 0x08-0x0f */
4106
5313, -1, 5315, -1, -1, 5317, 5319, 5321, /* 0x10-0x17 */
4107
5323, 5325, 5327, 5329, 5331, 5333, 5335, -1, /* 0x18-0x1f */
4108
5337, -1, 5339, -1, -1, 5341, 5343, -1, /* 0x20-0x27 */
4109
-1, -1, 5345, 5347, 5349, 5351, -1, -1, /* 0x28-0x2f */
4110
5353, 5355, 5357, 5359, 5361, 5363, 5365, 5367, /* 0x30-0x37 */
4111
5369, 5371, 5373, 5375, 5377, 5379, 5381, 5383, /* 0x38-0x3f */
4112
5385, 5387, 5389, 5391, 5393, 5395, 5397, 5399, /* 0x40-0x47 */
4113
5401, 5403, 5405, 5407, 5409, 5411, 5413, 5415, /* 0x48-0x4f */
4114
5417, 5419, 5421, 5423, 5425, 5427, 5429, 5431, /* 0x50-0x57 */
4115
5433, 5435, 5437, 5439, 5441, 5443, 5445, 5447, /* 0x58-0x5f */
4116
5449, 5451, 5453, 5455, 5457, 5459, 5461, 5463, /* 0x60-0x67 */
4117
5465, 5467, 5469, -1, -1, -1, -1, -1, /* 0x68-0x6f */
4119
static const short translit_pagefb[80] = {
4120
5471, 5474, 5477, 5480, 5484, 5488, 5491, -1, /* 0x00-0x07 */
4121
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x08-0x0f */
4122
-1, -1, -1, 5494, 5497, 5500, 5503, 5506, /* 0x10-0x17 */
4123
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x18-0x1f */
4124
5509, 5511, 5513, 5515, 5517, 5519, 5521, 5523, /* 0x20-0x27 */
4125
5525, 5527, -1, -1, -1, -1, -1, -1, /* 0x28-0x2f */
4126
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x30-0x37 */
4127
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x38-0x3f */
4128
-1, -1, -1, -1, -1, -1, -1, -1, /* 0x40-0x47 */
4129
-1, -1, -1, -1, -1, -1, -1, 5529, /* 0x48-0x4f */
4131
static const short translit_pagefe[40] = {
4132
-1, 5532, 5534, 5536, 5538, 5540, 5542, 5544, /* 0x48-0x4f */
4133
5546, 5548, 5550, -1, 5552, 5554, 5556, 5558, /* 0x50-0x57 */
4134
5560, 5562, 5564, 5566, 5568, 5570, 5572, 5574, /* 0x58-0x5f */
4135
5576, 5578, 5580, 5582, 5584, 5586, 5588, -1, /* 0x60-0x67 */
4136
5590, 5592, 5594, 5596, -1, -1, -1, -1, /* 0x68-0x6f */
4138
static const short translit_pageff[240] = {
4139
-1, 5598, 5600, 5602, 5604, 5606, 5608, 5610, /* 0x00-0x07 */
4140
5612, 5614, 5616, 5618, 5620, 5622, 5624, 5626, /* 0x08-0x0f */
4141
5628, 5630, 5632, 5634, 5636, 5638, 5640, 5642, /* 0x10-0x17 */
4142
5644, 5646, 5648, 5650, 5652, 5654, 5656, 5658, /* 0x18-0x1f */
4143
5660, 5662, 5664, 5666, 5668, 5670, 5672, 5674, /* 0x20-0x27 */
4144
5676, 5678, 5680, 5682, 5684, 5686, 5688, 5690, /* 0x28-0x2f */
4145
5692, 5694, 5696, 5698, 5700, 5702, 5704, 5706, /* 0x30-0x37 */
4146
5708, 5710, 5712, 5714, 5716, 5718, 5720, 5722, /* 0x38-0x3f */
4147
5724, 5726, 5728, 5730, 5732, 5734, 5736, 5738, /* 0x40-0x47 */
4148
5740, 5742, 5744, 5746, 5748, 5750, 5752, 5754, /* 0x48-0x4f */
4149
5756, 5758, 5760, 5762, 5764, 5766, 5768, 5770, /* 0x50-0x57 */
4150
5772, 5774, 5776, 5778, 5780, 5782, 5784, 5786, /* 0x58-0x5f */
4151
5788, 5790, 5792, 5794, 5796, 5798, 5800, 5802, /* 0x60-0x67 */
4152
5804, 5806, 5808, 5810, 5812, 5814, 5816, 5818, /* 0x68-0x6f */
4153
5820, 5822, 5824, 5826, 5828, 5830, 5832, 5834, /* 0x70-0x77 */
4154
5836, 5838, 5840, 5842, 5844, 5846, 5848, 5850, /* 0x78-0x7f */
4155
5852, 5854, 5856, 5858, 5860, 5862, 5864, 5866, /* 0x80-0x87 */
4156
5868, 5870, 5872, 5874, 5876, 5878, 5880, 5882, /* 0x88-0x8f */
4157
5884, 5886, 5888, 5890, 5892, 5894, 5896, 5898, /* 0x90-0x97 */
4158
5900, 5902, 5904, 5906, 5908, 5910, 5912, 5914, /* 0x98-0x9f */
4159
5916, 5918, 5920, 5922, 5924, 5926, 5928, 5930, /* 0xa0-0xa7 */
4160
5932, 5934, 5936, 5938, 5940, 5942, 5944, 5946, /* 0xa8-0xaf */
4161
5948, 5950, 5952, 5954, 5956, 5958, 5960, 5962, /* 0xb0-0xb7 */
4162
5964, 5966, 5968, 5970, 5972, 5974, 5976, -1, /* 0xb8-0xbf */
4163
-1, -1, 5978, 5980, 5982, 5984, 5986, 5988, /* 0xc0-0xc7 */
4164
-1, -1, 5990, 5992, 5994, 5996, 5998, 6000, /* 0xc8-0xcf */
4165
-1, -1, 6002, 6004, 6006, 6008, 6010, 6012, /* 0xd0-0xd7 */
4166
-1, -1, 6014, 6016, 6018, -1, -1, -1, /* 0xd8-0xdf */
4167
6020, 6022, 6024, 6026, 6028, 6030, 6032, -1, /* 0xe0-0xe7 */
4168
6034, 6036, 6038, 6040, 6042, 6044, 6046, -1, /* 0xe8-0xef */
4170
static const short translit_page1d4[1024] = {
4171
6048, 6050, 6052, 6054, 6056, 6058, 6060, 6062, /* 0x00-0x07 */
4172
6064, 6066, 6068, 6070, 6072, 6074, 6076, 6078, /* 0x08-0x0f */
4173
6080, 6082, 6084, 6086, 6088, 6090, 6092, 6094, /* 0x10-0x17 */
4174
6096, 6098, 6100, 6102, 6104, 6106, 6108, 6110, /* 0x18-0x1f */
4175
6112, 6114, 6116, 6118, 6120, 6122, 6124, 6126, /* 0x20-0x27 */
4176
6128, 6130, 6132, 6134, 6136, 6138, 6140, 6142, /* 0x28-0x2f */
4177
6144, 6146, 6148, 6150, 6152, 6154, 6156, 6158, /* 0x30-0x37 */
4178
6160, 6162, 6164, 6166, 6168, 6170, 6172, 6174, /* 0x38-0x3f */
4179
6176, 6178, 6180, 6182, 6184, 6186, 6188, 6190, /* 0x40-0x47 */
4180
6192, 6194, 6196, 6198, 6200, 6202, 6204, 6206, /* 0x48-0x4f */
4181
6208, 6210, 6212, 6214, 6216, -1, 6218, 6220, /* 0x50-0x57 */
4182
6222, 6224, 6226, 6228, 6230, 6232, 6234, 6236, /* 0x58-0x5f */
4183
6238, 6240, 6242, 6244, 6246, 6248, 6250, 6252, /* 0x60-0x67 */
4184
6254, 6256, 6258, 6260, 6262, 6264, 6266, 6268, /* 0x68-0x6f */
4185
6270, 6272, 6274, 6276, 6278, 6280, 6282, 6284, /* 0x70-0x77 */
4186
6286, 6288, 6290, 6292, 6294, 6296, 6298, 6300, /* 0x78-0x7f */
4187
6302, 6304, 6306, 6308, 6310, 6312, 6314, 6316, /* 0x80-0x87 */
4188
6318, 6320, 6322, 6324, 6326, 6328, 6330, 6332, /* 0x88-0x8f */
4189
6334, 6336, 6338, 6340, 6342, 6344, 6346, 6348, /* 0x90-0x97 */
4190
6350, 6352, 6354, 6356, 6358, -1, 6360, 6362, /* 0x98-0x9f */
4191
-1, -1, 6364, -1, -1, 6366, 6368, -1, /* 0xa0-0xa7 */
4192
-1, 6370, 6372, 6374, 6376, -1, 6378, 6380, /* 0xa8-0xaf */
4193
6382, 6384, 6386, 6388, 6390, 6392, 6394, 6396, /* 0xb0-0xb7 */
4194
6398, 6400, -1, 6402, -1, 6404, 6406, 6408, /* 0xb8-0xbf */
4195
6410, 6412, 6414, 6416, -1, 6418, 6420, 6422, /* 0xc0-0xc7 */
4196
6424, 6426, 6428, 6430, 6432, 6434, 6436, 6438, /* 0xc8-0xcf */
4197
6440, 6442, 6444, 6446, 6448, 6450, 6452, 6454, /* 0xd0-0xd7 */
4198
6456, 6458, 6460, 6462, 6464, 6466, 6468, 6470, /* 0xd8-0xdf */
4199
6472, 6474, 6476, 6478, 6480, 6482, 6484, 6486, /* 0xe0-0xe7 */
4200
6488, 6490, 6492, 6494, 6496, 6498, 6500, 6502, /* 0xe8-0xef */
4201
6504, 6506, 6508, 6510, 6512, 6514, 6516, 6518, /* 0xf0-0xf7 */
4202
6520, 6522, 6524, 6526, 6528, 6530, 6532, 6534, /* 0xf8-0xff */
4204
6536, 6538, 6540, 6542, 6544, 6546, -1, 6548, /* 0x00-0x07 */
4205
6550, 6552, 6554, -1, -1, 6556, 6558, 6560, /* 0x08-0x0f */
4206
6562, 6564, 6566, 6568, 6570, -1, 6572, 6574, /* 0x10-0x17 */
4207
6576, 6578, 6580, 6582, 6584, -1, 6586, 6588, /* 0x18-0x1f */
4208
6590, 6592, 6594, 6596, 6598, 6600, 6602, 6604, /* 0x20-0x27 */
4209
6606, 6608, 6610, 6612, 6614, 6616, 6618, 6620, /* 0x28-0x2f */
4210
6622, 6624, 6626, 6628, 6630, 6632, 6634, 6636, /* 0x30-0x37 */
4211
6638, 6640, -1, 6642, 6644, 6646, 6648, -1, /* 0x38-0x3f */
4212
6650, 6652, 6654, 6656, 6658, -1, 6660, -1, /* 0x40-0x47 */
4213
-1, -1, 6662, 6664, 6666, 6668, 6670, 6672, /* 0x48-0x4f */
4214
6674, -1, 6676, 6678, 6680, 6682, 6684, 6686, /* 0x50-0x57 */
4215
6688, 6690, 6692, 6694, 6696, 6698, 6700, 6702, /* 0x58-0x5f */
4216
6704, 6706, 6708, 6710, 6712, 6714, 6716, 6718, /* 0x60-0x67 */
4217
6720, 6722, 6724, 6726, 6728, 6730, 6732, 6734, /* 0x68-0x6f */
4218
6736, 6738, 6740, 6742, 6744, 6746, 6748, 6750, /* 0x70-0x77 */
4219
6752, 6754, 6756, 6758, 6760, 6762, 6764, 6766, /* 0x78-0x7f */
4220
6768, 6770, 6772, 6774, 6776, 6778, 6780, 6782, /* 0x80-0x87 */
4221
6784, 6786, 6788, 6790, 6792, 6794, 6796, 6798, /* 0x88-0x8f */
4222
6800, 6802, 6804, 6806, 6808, 6810, 6812, 6814, /* 0x90-0x97 */
4223
6816, 6818, 6820, 6822, 6824, 6826, 6828, 6830, /* 0x98-0x9f */
4224
6832, 6834, 6836, 6838, 6840, 6842, 6844, 6846, /* 0xa0-0xa7 */
4225
6848, 6850, 6852, 6854, 6856, 6858, 6860, 6862, /* 0xa8-0xaf */
4226
6864, 6866, 6868, 6870, 6872, 6874, 6876, 6878, /* 0xb0-0xb7 */
4227
6880, 6882, 6884, 6886, 6888, 6890, 6892, 6894, /* 0xb8-0xbf */
4228
6896, 6898, 6900, 6902, 6904, 6906, 6908, 6910, /* 0xc0-0xc7 */
4229
6912, 6914, 6916, 6918, 6920, 6922, 6924, 6926, /* 0xc8-0xcf */
4230
6928, 6930, 6932, 6934, 6936, 6938, 6940, 6942, /* 0xd0-0xd7 */
4231
6944, 6946, 6948, 6950, 6952, 6954, 6956, 6958, /* 0xd8-0xdf */
4232
6960, 6962, 6964, 6966, 6968, 6970, 6972, 6974, /* 0xe0-0xe7 */
4233
6976, 6978, 6980, 6982, 6984, 6986, 6988, 6990, /* 0xe8-0xef */
4234
6992, 6994, 6996, 6998, 7000, 7002, 7004, 7006, /* 0xf0-0xf7 */
4235
7008, 7010, 7012, 7014, 7016, 7018, 7020, 7022, /* 0xf8-0xff */
4237
7024, 7026, 7028, 7030, 7032, 7034, 7036, 7038, /* 0x00-0x07 */
4238
7040, 7042, 7044, 7046, 7048, 7050, 7052, 7054, /* 0x08-0x0f */
4239
7056, 7058, 7060, 7062, 7064, 7066, 7068, 7070, /* 0x10-0x17 */
4240
7072, 7074, 7076, 7078, 7080, 7082, 7084, 7086, /* 0x18-0x1f */
4241
7088, 7090, 7092, 7094, 7096, 7098, 7100, 7102, /* 0x20-0x27 */
4242
7104, 7106, 7108, 7110, 7112, 7114, 7116, 7118, /* 0x28-0x2f */
4243
7120, 7122, 7124, 7126, 7128, 7130, 7132, 7134, /* 0x30-0x37 */
4244
7136, 7138, 7140, 7142, 7144, 7146, 7148, 7150, /* 0x38-0x3f */
4245
7152, 7154, 7156, 7158, 7160, 7162, 7164, 7166, /* 0x40-0x47 */
4246
7168, 7170, 7172, 7174, 7176, 7178, 7180, 7182, /* 0x48-0x4f */
4247
7184, 7186, 7188, 7190, 7192, 7194, 7196, 7198, /* 0x50-0x57 */
4248
7200, 7202, 7204, 7206, 7208, 7210, 7212, 7214, /* 0x58-0x5f */
4249
7216, 7218, 7220, 7222, 7224, 7226, 7228, 7230, /* 0x60-0x67 */
4250
7232, 7234, 7236, 7238, 7240, 7242, 7244, 7246, /* 0x68-0x6f */
4251
7248, 7250, 7252, 7254, 7256, 7258, 7260, 7262, /* 0x70-0x77 */
4252
7264, 7266, 7268, 7270, 7272, 7274, 7276, 7278, /* 0x78-0x7f */
4253
7280, 7282, 7284, 7286, 7288, 7290, 7292, 7294, /* 0x80-0x87 */
4254
7296, 7298, 7300, 7302, 7304, 7306, 7308, 7310, /* 0x88-0x8f */
4255
7312, 7314, 7316, 7318, 7320, 7322, 7324, 7326, /* 0x90-0x97 */
4256
7328, 7330, 7332, 7334, 7336, 7338, 7340, 7342, /* 0x98-0x9f */
4257
7344, 7346, 7348, 7350, -1, -1, -1, -1, /* 0xa0-0xa7 */
4258
7352, 7354, 7356, 7358, 7360, 7362, 7364, 7366, /* 0xa8-0xaf */
4259
7368, 7370, 7372, 7374, 7376, 7378, 7380, 7382, /* 0xb0-0xb7 */
4260
7384, 7386, 7388, 7390, 7392, 7394, 7396, 7398, /* 0xb8-0xbf */
4261
7400, 7402, 7404, 7406, 7408, 7410, 7412, 7414, /* 0xc0-0xc7 */
4262
7416, 7418, 7420, 7422, 7424, 7426, 7428, 7430, /* 0xc8-0xcf */
4263
7432, 7434, 7436, 7438, 7440, 7442, 7444, 7446, /* 0xd0-0xd7 */
4264
7448, 7450, 7452, 7454, 7456, 7458, 7460, 7462, /* 0xd8-0xdf */
4265
7464, 7466, 7468, 7470, 7472, 7474, 7476, 7478, /* 0xe0-0xe7 */
4266
7480, 7482, 7484, 7486, 7488, 7490, 7492, 7494, /* 0xe8-0xef */
4267
7496, 7498, 7500, 7502, 7504, 7506, 7508, 7510, /* 0xf0-0xf7 */
4268
7512, 7514, 7516, 7518, 7520, 7522, 7524, 7526, /* 0xf8-0xff */
4270
7528, 7530, 7532, 7534, 7536, 7538, 7540, 7542, /* 0x00-0x07 */
4271
7544, 7546, 7548, 7550, 7552, 7554, 7556, 7558, /* 0x08-0x0f */
4272
7560, 7562, 7564, 7566, 7568, 7570, 7572, 7574, /* 0x10-0x17 */
4273
7576, 7578, 7580, 7582, 7584, 7586, 7588, 7590, /* 0x18-0x1f */
4274
7592, 7594, 7596, 7598, 7600, 7602, 7604, 7606, /* 0x20-0x27 */
4275
7608, 7610, 7612, 7614, 7616, 7618, 7620, 7622, /* 0x28-0x2f */
4276
7624, 7626, 7628, 7630, 7632, 7634, 7636, 7638, /* 0x30-0x37 */
4277
7640, 7642, 7644, 7646, 7648, 7650, 7652, 7654, /* 0x38-0x3f */
4278
7656, 7658, 7660, 7662, 7664, 7666, 7668, 7670, /* 0x40-0x47 */
4279
7672, 7674, 7676, 7678, 7680, 7682, 7684, 7686, /* 0x48-0x4f */
4280
7688, 7690, 7692, 7694, 7696, 7698, 7700, 7702, /* 0x50-0x57 */
4281
7704, 7706, 7708, 7710, 7712, 7714, 7716, 7718, /* 0x58-0x5f */
4282
7720, 7722, 7724, 7726, 7728, 7730, 7732, 7734, /* 0x60-0x67 */
4283
7736, 7738, 7740, 7742, 7744, 7746, 7748, 7750, /* 0x68-0x6f */
4284
7752, 7754, 7756, 7758, 7760, 7762, 7764, 7766, /* 0x70-0x77 */
4285
7768, 7770, 7772, 7774, 7776, 7778, 7780, 7782, /* 0x78-0x7f */
4286
7784, 7786, 7788, 7790, 7792, 7794, 7796, 7798, /* 0x80-0x87 */
4287
7800, 7802, 7804, 7806, 7808, 7810, 7812, 7814, /* 0x88-0x8f */
4288
7816, 7818, 7820, 7822, 7824, 7826, 7828, 7830, /* 0x90-0x97 */
4289
7832, 7834, 7836, 7838, 7840, 7842, 7844, 7846, /* 0x98-0x9f */
4290
7848, 7850, 7852, 7854, 7856, 7858, 7860, 7862, /* 0xa0-0xa7 */
4291
7864, 7866, 7868, 7870, 7872, 7874, 7876, 7878, /* 0xa8-0xaf */
4292
7880, 7882, 7884, 7886, 7888, 7890, 7892, 7894, /* 0xb0-0xb7 */
4293
7896, 7898, 7900, 7902, 7904, 7906, 7908, 7910, /* 0xb8-0xbf */
4294
7912, 7914, 7916, 7918, 7920, 7922, 7924, 7926, /* 0xc0-0xc7 */
4295
7928, 7930, -1, -1, -1, -1, 7932, 7934, /* 0xc8-0xcf */
4296
7936, 7938, 7940, 7942, 7944, 7946, 7948, 7950, /* 0xd0-0xd7 */
4297
7952, 7954, 7956, 7958, 7960, 7962, 7964, 7966, /* 0xd8-0xdf */
4298
7968, 7970, 7972, 7974, 7976, 7978, 7980, 7982, /* 0xe0-0xe7 */
4299
7984, 7986, 7988, 7990, 7992, 7994, 7996, 7998, /* 0xe8-0xef */
4300
8000, 8002, 8004, 8006, 8008, 8010, 8012, 8014, /* 0xf0-0xf7 */
4301
8016, 8018, 8020, 8022, 8024, 8026, 8028, 8030, /* 0xf8-0xff */
4303
static const short translit_page2f8[544] = {
4304
8032, 8034, 8036, 8038, 8040, 8042, 8044, 8046, /* 0x00-0x07 */
4305
8048, 8050, 8052, 8054, 8056, 8058, 8060, 8062, /* 0x08-0x0f */
4306
8064, 8066, 8068, 8070, 8072, 8074, 8076, 8078, /* 0x10-0x17 */
4307
8080, 8082, 8084, 8086, 8088, 8090, 8092, 8094, /* 0x18-0x1f */
4308
8096, 8098, 8100, 8102, 8104, 8106, 8108, 8110, /* 0x20-0x27 */
4309
8112, 8114, 8116, 8118, 8120, 8122, 8124, 8126, /* 0x28-0x2f */
4310
8128, 8130, 8132, 8134, 8136, 8138, 8140, 8142, /* 0x30-0x37 */
4311
8144, 8146, 8148, 8150, 8152, 8154, 8156, 8158, /* 0x38-0x3f */
4312
8160, 8162, 8164, 8166, 8168, 8170, 8172, 8174, /* 0x40-0x47 */
4313
8176, 8178, 8180, 8182, 8184, 8186, 8188, 8190, /* 0x48-0x4f */
4314
8192, 8194, 8196, 8198, 8200, 8202, 8204, 8206, /* 0x50-0x57 */
4315
8208, 8210, 8212, 8214, 8216, 8218, 8220, 8222, /* 0x58-0x5f */
4316
8224, 8226, 8228, 8230, 8232, 8234, 8236, 8238, /* 0x60-0x67 */
4317
8240, 8242, 8244, 8246, 8248, 8250, 8252, 8254, /* 0x68-0x6f */
4318
8256, 8258, 8260, 8262, 8264, 8266, 8268, 8270, /* 0x70-0x77 */
4319
8272, 8274, 8276, 8278, 8280, 8282, 8284, 8286, /* 0x78-0x7f */
4320
8288, 8290, 8292, 8294, 8296, 8298, 8300, 8302, /* 0x80-0x87 */
4321
8304, 8306, 8308, 8310, 8312, 8314, 8316, 8318, /* 0x88-0x8f */
4322
8320, 8322, 8324, 8326, 8328, 8330, 8332, 8334, /* 0x90-0x97 */
4323
8336, 8338, 8340, 8342, 8344, 8346, 8348, 8350, /* 0x98-0x9f */
4324
8352, 8354, 8356, 8358, 8360, 8362, 8364, 8366, /* 0xa0-0xa7 */
4325
8368, 8370, 8372, 8374, 8376, 8378, 8380, 8382, /* 0xa8-0xaf */
4326
8384, 8386, 8388, 8390, 8392, 8394, 8396, 8398, /* 0xb0-0xb7 */
4327
8400, 8402, 8404, 8406, 8408, 8410, 8412, 8414, /* 0xb8-0xbf */
4328
8416, 8418, 8420, 8422, 8424, 8426, 8428, 8430, /* 0xc0-0xc7 */
4329
8432, 8434, 8436, 8438, 8440, 8442, 8444, 8446, /* 0xc8-0xcf */
4330
8448, 8450, 8452, 8454, 8456, 8458, 8460, 8462, /* 0xd0-0xd7 */
4331
8464, 8466, 8468, 8470, 8472, 8474, 8476, 8478, /* 0xd8-0xdf */
4332
8480, 8482, 8484, 8486, 8488, 8490, 8492, 8494, /* 0xe0-0xe7 */
4333
8496, 8498, 8500, 8502, 8504, 8506, 8508, 8510, /* 0xe8-0xef */
4334
8512, 8514, 8516, 8518, 8520, 8522, 8524, 8526, /* 0xf0-0xf7 */
4335
8528, 8530, 8532, 8534, 8536, 8538, 8540, 8542, /* 0xf8-0xff */
4337
8544, 8546, 8548, 8550, 8552, 8554, 8556, 8558, /* 0x00-0x07 */
4338
8560, 8562, 8564, 8566, 8568, 8570, 8572, 8574, /* 0x08-0x0f */
4339
8576, 8578, 8580, 8582, 8584, 8586, 8588, 8590, /* 0x10-0x17 */
4340
8592, 8594, 8596, 8598, 8600, 8602, 8604, 8606, /* 0x18-0x1f */
4341
8608, 8610, 8612, 8614, 8616, 8618, 8620, 8622, /* 0x20-0x27 */
4342
8624, 8626, 8628, 8630, 8632, 8634, 8636, 8638, /* 0x28-0x2f */
4343
8640, 8642, 8644, 8646, 8648, 8650, 8652, 8654, /* 0x30-0x37 */
4344
8656, 8658, 8660, 8662, 8664, 8666, 8668, 8670, /* 0x38-0x3f */
4345
8672, 8674, 8676, 8678, 8680, 8682, 8684, 8686, /* 0x40-0x47 */
4346
8688, 8690, 8692, 8694, 8696, 8698, 8700, 8702, /* 0x48-0x4f */
4347
8704, 8706, 8708, 8710, 8712, 8714, 8716, 8718, /* 0x50-0x57 */
4348
8720, 8722, 8724, 8726, 8728, 8730, 8732, 8734, /* 0x58-0x5f */
4349
8736, 8738, 8740, 8742, 8744, 8746, 8748, 8750, /* 0x60-0x67 */
4350
8752, 8754, 8756, 8758, 8760, 8762, 8764, 8766, /* 0x68-0x6f */
4351
8768, 8770, 8772, 8774, 8776, 8778, 8780, 8782, /* 0x70-0x77 */
4352
8784, 8786, 8788, 8790, 8792, 8794, 8796, 8798, /* 0x78-0x7f */
4353
8800, 8802, 8804, 8806, 8808, 8810, 8812, 8814, /* 0x80-0x87 */
4354
8816, 8818, 8820, 8822, 8824, 8826, 8828, 8830, /* 0x88-0x8f */
4355
8832, 8834, 8836, 8838, 8840, 8842, 8844, 8846, /* 0x90-0x97 */
4356
8848, 8850, 8852, 8854, 8856, 8858, 8860, 8862, /* 0x98-0x9f */
4357
8864, 8866, 8868, 8870, 8872, 8874, 8876, 8878, /* 0xa0-0xa7 */
4358
8880, 8882, 8884, 8886, 8888, 8890, 8892, 8894, /* 0xa8-0xaf */
4359
8896, 8898, 8900, 8902, 8904, 8906, 8908, 8910, /* 0xb0-0xb7 */
4360
8912, 8914, 8916, 8918, 8920, 8922, 8924, 8926, /* 0xb8-0xbf */
4361
8928, 8930, 8932, 8934, 8936, 8938, 8940, 8942, /* 0xc0-0xc7 */
4362
8944, 8946, 8948, 8950, 8952, 8954, 8956, 8958, /* 0xc8-0xcf */
4363
8960, 8962, 8964, 8966, 8968, 8970, 8972, 8974, /* 0xd0-0xd7 */
4364
8976, 8978, 8980, 8982, 8984, 8986, 8988, 8990, /* 0xd8-0xdf */
4365
8992, 8994, 8996, 8998, 9000, 9002, 9004, 9006, /* 0xe0-0xe7 */
4366
9008, 9010, 9012, 9014, 9016, 9018, 9020, 9022, /* 0xe8-0xef */
4367
9024, 9026, 9028, 9030, 9032, 9034, 9036, 9038, /* 0xf0-0xf7 */
4368
9040, 9042, 9044, 9046, 9048, 9050, 9052, 9054, /* 0xf8-0xff */
4370
9056, 9058, 9060, 9062, 9064, 9066, 9068, 9070, /* 0x00-0x07 */
4371
9072, 9074, 9076, 9078, 9080, 9082, 9084, 9086, /* 0x08-0x0f */
4372
9088, 9090, 9092, 9094, 9096, 9098, 9100, 9102, /* 0x10-0x17 */
4373
9104, 9106, 9108, 9110, 9112, 9114, -1, -1, /* 0x18-0x1f */
4376
#define translit_index(wc) \
4377
(wc >= 0x00a0 && wc < 0x01f8 ? translit_page00[wc-0x00a0] : \
4378
wc >= 0x0218 && wc < 0x0220 ? translit_page02[wc-0x0218] : \
4379
wc >= 0x02b8 && wc < 0x02e0 ? translit_page02_1[wc-0x02b8] : \
4380
wc >= 0x03d0 && wc < 0x0400 ? translit_page03[wc-0x03d0] : \
4381
wc == 0x0587 ? 654 : \
4382
wc >= 0x05f0 && wc < 0x05f8 ? translit_page05[wc-0x05f0] : \
4383
wc >= 0x0670 && wc < 0x0680 ? translit_page06[wc-0x0670] : \
4384
wc == 0x0e33 ? 678 : \
4385
wc >= 0x0eb0 && wc < 0x0ee0 ? translit_page0e[wc-0x0eb0] : \
4386
wc >= 0x0f70 && wc < 0x0f80 ? translit_page0f[wc-0x0f70] : \
4387
wc >= 0x1e00 && wc < 0x1ea0 ? translit_page1e[wc-0x1e00] : \
4388
wc >= 0x1ef0 && wc < 0x1ef8 ? translit_page1e_2[wc-0x1ef0] : \
4389
wc >= 0x2000 && wc < 0x2058 ? translit_page20[wc-0x2000] : \
4390
wc >= 0x20a8 && wc < 0x20b0 ? translit_page20_3[wc-0x20a8] : \
4391
wc >= 0x2100 && wc < 0x21d8 ? translit_page21[wc-0x2100] : \
4392
wc >= 0x2210 && wc < 0x2270 ? translit_page22[wc-0x2210] : \
4393
wc >= 0x22c0 && wc < 0x22f0 ? translit_page22_4[wc-0x22c0] : \
4394
wc >= 0x2400 && wc < 0x24f0 ? translit_page24[wc-0x2400] : \
4395
wc >= 0x2500 && wc < 0x2540 ? translit_page25[wc-0x2500] : \
4396
wc == 0x25e6 ? 2025 : \
4397
wc == 0x2a0c ? 2027 : \
4398
wc >= 0x2a70 && wc < 0x2a78 ? translit_page2a[wc-0x2a70] : \
4399
wc == 0x2e9f ? 2043 : \
4400
wc == 0x2ef3 ? 2045 : \
4401
wc >= 0x2f00 && wc < 0x2fd8 ? translit_page2f[wc-0x2f00] : \
4402
wc >= 0x3000 && wc < 0x30f8 ? translit_page30[wc-0x3000] : \
4403
wc >= 0x3130 && wc < 0x3190 ? translit_page31[wc-0x3130] : \
4404
wc >= 0x31f0 && wc < 0x3400 ? translit_page31_5[wc-0x31f0] : \
4405
wc >= 0xf900 && wc < 0xfa70 ? translit_pagef9[wc-0xf900] : \
4406
wc >= 0xfb00 && wc < 0xfb50 ? translit_pagefb[wc-0xfb00] : \
4407
wc >= 0xfe48 && wc < 0xfe70 ? translit_pagefe[wc-0xfe48] : \
4408
wc >= 0xff00 && wc < 0xfff0 ? translit_pageff[wc-0xff00] : \
4409
wc >= 0x1d400 && wc < 0x1d800 ? translit_page1d4[wc-0x1d400] : \
4410
wc >= 0x2f800 && wc < 0x2fa20 ? translit_page2f8[wc-0x2f800] : \