1 /* This file was converted by gperf_fold_key_conv.py
2 from gperf output file. */
3 /* ANSI-C code produced by gperf version 3.0.4 */
4 /* Command-line: gperf -n -C -T -c -t -j1 -L ANSI-C -F,-1 -N unicode_fold1_key unicode_fold1_key.gperf */
5 /* Computed positions: -k'1-3' */
6
7
8
9 /* This gperf source file was generated by make_unicode_fold_data.py */
10 #include <string.h>
11 #include "regenc.h"
12
13 #define TOTAL_KEYWORDS 1196
14 #define MIN_WORD_LENGTH 3
15 #define MAX_WORD_LENGTH 3
16 #define MIN_HASH_VALUE 6
17 #define MAX_HASH_VALUE 1304
18 /* maximum key range = 1299, duplicates = 0 */
19
20 #ifdef __GNUC__
21 __inline
22 #else
23 #ifdef __cplusplus
24 inline
25 #endif
26 #endif
27 /*ARGSUSED*/
28 static unsigned int
hash(OnigCodePoint codes[])29 hash(OnigCodePoint codes[])
30 {
31 static const unsigned short asso_values[] =
32 {
33 7, 5, 93, 4, 1, 16, 893, 1162, 891, 1085,
34 889, 380, 8, 376, 1101, 332, 1100, 329, 1099, 3,
35 874, 943, 870, 914, 87, 322, 1095, 317, 1093, 579,
36 2, 11, 1054, 13, 956, 902, 31, 775, 632, 343,
37 619, 330, 611, 323, 0, 27, 850, 311, 599, 309,
38 849, 1240, 862, 1226, 445, 1220, 591, 888, 583, 1253,
39 1091, 1217, 1087, 1079, 1074, 419, 858, 845, 441, 304,
40 400, 842, 394, 1067, 389, 1053, 383, 1211, 218, 1206,
41 202, 436, 194, 1202, 181, 1183, 153, 1177, 376, 1166,
42 166, 56, 323, 0, 571, 112, 834, 877, 1035, 609,
43 123, 901, 145, 684, 115, 933, 364, 1163, 345, 603,
44 311, 144, 573, 162, 563, 1188, 260, 964, 240, 1174,
45 476, 1034, 453, 814, 669, 454, 815, 799, 656, 1242,
46 963, 113, 806, 270, 561, 304, 795, 268, 1031, 581,
47 1157, 182, 44, 467, 1154, 1305, 1042, 1305, 1028, 387,
48 869, 1305, 362, 1305, 1142, 1305, 639, 234, 1060, 1305,
49 1131, 381, 190, 194, 780, 185, 140, 34, 209, 173,
50 1021, 369, 1017, 145, 1150, 834, 788, 820, 1011, 116,
51 773, 658, 1004, 1241, 767, 64, 762, 648, 756, 510,
52 999, 487, 750, 254, 740, 625, 733, 662, 728, 992,
53 720, 713, 533, 986, 515, 169, 427, 702, 266, 693,
54 687, 644, 337, 963, 556, 954, 524, 947, 329, 942,
55 288, 931, 229, 925, 104, 1143, 80, 908, 48, 1138,
56 71, 1133, 59, 1131, 295, 605, 276, 525, 547, 1107,
57 540, 406, 504, 156, 920, 93, 493, 84, 676, 34,
58 247, 4, 1128, 14, 18, 32, 220, 2, 131
59 };
60 return asso_values[(unsigned char)onig_codes_byte_at(codes, 2)+3] + asso_values[(unsigned char)onig_codes_byte_at(codes, 1)] + asso_values[(unsigned char)onig_codes_byte_at(codes, 0)];
61 }
62
63 #ifdef __GNUC__
64 __inline
65 #if defined __GNUC_STDC_INLINE__ || defined __GNUC_GNU_INLINE__
66 __attribute__ ((__gnu_inline__))
67 #endif
68 #endif
69 int
unicode_fold1_key(OnigCodePoint codes[])70 unicode_fold1_key(OnigCodePoint codes[])
71 {
72 static const int wordlist[] =
73 {
74 -1, -1, -1, -1, -1, -1,
75
76 3240,
77
78 2547,
79
80 1016,
81
82 1772,
83
84 1712,
85
86 1751,
87
88 231,
89
90 171,
91
92 210,
93
94 884,
95
96 165,
97
98 1724,
99
100 147,
101
102 2085,
103
104 183,
105
106 2106,
107
108 2082,
109
110 1322,
111
112 1262,
113
114 1301,
115
116 1253,
117
118 2073,
119
120 153,
121
122 887,
123
124 493,
125
126 1274,
127
128 156,
129
130 3243,
131
132 2088,
133
134 2748,
135
136 2826,
137
138 2793,
139
140 2745,
141
142 3234,
143
144 1760,
145
146 2985,
147
148 2772,
149
150 219,
151
152 1460,
153
154 2829,
155
156 159,
157
158 2835,
159
160 144,
161
162 2127,
163
164 2751,
165
166 2601,
167
168 1085,
169
170 1920,
171
172 1310,
173
174 2730,
175
176 1214,
177
178 2034,
179
180 1643,
181
182 854,
183
184 459,
185
186 3456,
187
188 80,
189
190 2541,
191
192 1010,
193
194 2844,
195
196 2283,
197
198 1220,
199
200 2040,
201
202 1655,
203
204 860,
205
206 465,
207
208 3468,
209
210 92,
211
212 1514,
213
214 756,
215
216 405,
217
218 2286,
219
220 2733,
221
222 1217,
223
224 2037,
225
226 1649,
227
228 857,
229
230 462,
231
232 3462,
233
234 86,
235
236 2394,
237
238 2727,
239
240 1211,
241
242 2031,
243
244 1637,
245
246 851,
247
248 456,
249
250 3450,
251
252 1700,
253
254 3228,
255
256 1742,
257
258 2406,
259
260 138,
261
262 201,
263
264 559,
265
266 502,
267
268 541,
269
270 1694,
271
272 878,
273
274 2121,
275
276 3507,
277
278 132,
279
280 514,
281
282 2400,
283
284 1292,
285
286 2724,
287
288 1208,
289
290 2028,
291
292 1631,
293
294 848,
295
296 453,
297
298 3444,
299
300 2388,
301
302 2553,
303
304 1022,
305
306 2808,
307
308 2565,
309
310 1040,
311
312 1863,
313
314 354,
315
316 1496,
317
318 315,
319
320 399,
321
322 12,
323
324 2562,
325
326 1034,
327
328 1856,
329
330 2217,
331
332 2268,
333
334 309,
335
336 1427,
337
338 0,
339
340 1346,
341
342 1259,
343
344 2079,
345
346 2205,
347
348 2382,
349
350 499,
351
352 694,
353
354 168,
355
356 1334,
357
358 2637,
359
360 1121,
361
362 1941,
363
364 1457,
365
366 2577,
367
368 387,
369
370 1037,
371
372 1860,
373
374 1478,
375
376 3072,
377
378 312,
379
380 31,
381
382 6,
383
384 2526,
385
386 995,
387
388 1835,
389
390 2211,
391
392 3066,
393
394 288,
395
396 1688,
397
398 1367,
399
400 1340,
401
402 3501,
403
404 126,
405
406 2193,
407
408 3603,
409
410 2538,
411
412 1007,
413
414 1841,
415
416 37,
417
418 1178,
419
420 294,
421
422 1574,
423
424 824,
425
426 3138,
427
428 3387,
429
430 1466,
431
432 2199,
433
434 1373,
435
436 3069,
437
438 532,
439
440 2520,
441
442 989,
443
444 1832,
445
446 2949,
447
448 3213,
449
450 285,
451
452 3045,
453
454 1454,
455
456 3597,
457
458 2631,
459
460 1115,
461
462 2190,
463
464 3354,
465
466 2514,
467
468 983,
469
470 1829,
471
472 1448,
473
474 3225,
475
476 282,
477
478 3051,
479
480 3348,
481
482 2508,
483
484 977,
485
486 1826,
487
488 631,
489
490 676,
491
492 279,
493
494 643,
495
496 2640,
497
498 1124,
499
500 1944,
501
502 1463,
503
504 3207,
505
506 390,
507
508 3042,
509
510 637,
511
512 3342,
513
514 2502,
515
516 971,
517
518 1823,
519
520 1256,
521
522 2076,
523
524 276,
525
526 3132,
527
528 496,
529
530 3201,
531
532 162,
533
534 3039,
535
536 2721,
537
538 1205,
539
540 2025,
541
542 1625,
543
544 845,
545
546 3195,
547
548 3438,
549
550 3036,
551
552 658,
553
554 640,
555
556 378,
557
558 2580,
559
560 1061,
561
562 1884,
563
564 3141,
565
566 712,
567
568 336,
569
570 613,
571
572 52,
573
574 1247,
575
576 2067,
577
578 3189,
579
580 2235,
581
582 3033,
583
584 2301,
585
586 3540,
587
588 2919,
589
590 1388,
591
592 1538,
593
594 786,
595
596 622,
597
598 2376,
599
600 1058,
601
602 1881,
603
604 2913,
605
606 709,
607
608 333,
609
610 2700,
611
612 46,
613
614 2004,
615
616 1583,
617
618 833,
619
620 2229,
621
622 3396,
623
624 2295,
625
626 607,
627
628 691,
629
630 1382,
631
632 1226,
633
634 2046,
635
636 1667,
637
638 866,
639
640 471,
641
642 3480,
643
644 105,
645
646 1445,
647
648 2916,
649
650 1433,
651
652 601,
653
654 2718,
655
656 1202,
657
658 2022,
659
660 1619,
661
662 842,
663
664 2892,
665
666 3432,
667
668 598,
669
670 1223,
671
672 2043,
673
674 1661,
675
676 863,
677
678 468,
679
680 3474,
681
682 99,
683
684 3315,
685
686 2475,
687
688 944,
689
690 2898,
691
692 2418,
693
694 3255,
695
696 264,
697
698 3249,
699
700 595,
701
702 1049,
703
704 1872,
705
706 3591,
707
708 2178,
709
710 324,
711
712 2340,
713
714 27,
715
716 2370,
717
718 1439,
719
720 2889,
721
722 3237,
723
724 2544,
725
726 1013,
727
728 1844,
729
730 2412,
731
732 1364,
733
734 297,
735
736 2715,
737
738 1199,
739
740 2019,
741
742 1613,
743
744 839,
745
746 2886,
747
748 3426,
749
750 3162,
751
752 2706,
753
754 1190,
755
756 2010,
757
758 1595,
759
760 2142,
761
762 2883,
763
764 3408,
765
766 2817,
767
768 3081,
769
770 1046,
771
772 1869,
773
774 2277,
775
776 2811,
777
778 321,
779
780 3549,
781
782 3606,
783
784 664,
785
786 2136,
787
788 3231,
789
790 2787,
791
792 3054,
793
794 2880,
795
796 2781,
797
798 2364,
799
800 1358,
801
802 2616,
803
804 1100,
805
806 1935,
807
808 1043,
809
810 1866,
811
812 372,
813
814 2346,
815
816 318,
817
818 2853,
819
820 18,
821
822 1472,
823
824 3585,
825
826 393,
827
828 2223,
829
830 2532,
831
832 1001,
833
834 1838,
835
836 3078,
837
838 1352,
839
840 291,
841
842 3336,
843
844 2496,
845
846 965,
847
848 1820,
849
850 381,
851
852 2196,
853
854 3330,
855
856 2490,
857
858 959,
859
860 1817,
861
862 369,
863
864 3324,
865
866 2484,
867
868 953,
869
870 1814,
871
872 586,
873
874 3075,
875
876 3318,
877
878 2478,
879
880 947,
881
882 1811,
883
884 2775,
885
886 655,
887
888 2187,
889
890 2739,
891
892 2769,
893
894 3219,
895
896 1682,
897
898 3048,
899
900 2181,
901
902 3495,
903
904 120,
905
906 3579,
907
908 3183,
909
910 625,
911
912 3030,
913
914 3303,
915
916 2463,
917
918 932,
919
920 3177,
921
922 3561,
923
924 3027,
925
926 258,
927 -1,
928
929 3171,
930
931 2697,
932
933 3024,
934
935 2001,
936
937 1577,
938
939 827,
940
941 3165,
942
943 3390,
944
945 3021,
946
947 3351,
948
949 2511,
950
951 980,
952
953 652,
954 -1,
955
956 3312,
957
958 2472,
959
960 941,
961
962 1808,
963
964 3270,
965
966 2430,
967
968 899,
969
970 1787,
971 -1,
972
973 2289,
974
975 243,
976
977 2928,
978
979 2175,
980 -1,
981
982 1067,
983
984 1890,
985
986 2157,
987
988 715,
989
990 342,
991
992 345,
993
994 65,
995
996 74,
997 -1,
998
999 2901,
1000
1001 2247,
1002
1003 2256,
1004
1005 2313,
1006
1007 2322,
1008
1009 3198,
1010
1011 1400,
1012
1013 1409,
1014 -1,
1015
1016 366,
1017
1018 3159,
1019
1020 706,
1021
1022 3018,
1023
1024 592,
1025
1026 1064,
1027
1028 1887,
1029
1030 2997,
1031
1032 700,
1033
1034 339,
1035
1036 589,
1037
1038 59,
1039 -1,
1040
1041 2925,
1042 -1,
1043
1044 2241,
1045
1046 3090,
1047
1048 2307,
1049
1050 1532,
1051
1052 779,
1053
1054 1394,
1055
1056 2742,
1057
1058 1241,
1059
1060 2061,
1061
1062 1697,
1063
1064 881,
1065
1066 483,
1067 -1,
1068
1069 135,
1070
1071 3111,
1072
1073 2964,
1074 -1,
1075
1076 2922,
1077
1078 1235,
1079
1080 2055,
1081
1082 1685,
1083
1084 875,
1085
1086 480,
1087
1088 3498,
1089
1090 123,
1091
1092 3543,
1093
1094 1526,
1095
1096 772,
1097
1098 2694,
1099
1100 2895,
1101
1102 1998,
1103
1104 1571,
1105
1106 820,
1107
1108 421,
1109
1110 3384,
1111
1112 3156,
1113
1114 2877,
1115
1116 2712,
1117
1118 1196,
1119
1120 2016,
1121
1122 1607,
1123
1124 1670,
1125
1126 2874,
1127
1128 3420,
1129
1130 3483,
1131
1132 108,
1133
1134 2691,
1135
1136 2871,
1137
1138 1995,
1139
1140 1565,
1141
1142 814,
1143
1144 574,
1145
1146 3378,
1147
1148 2868,
1149
1150 1232,
1151
1152 2052,
1153
1154 1679,
1155
1156 872,
1157
1158 477,
1159
1160 3492,
1161
1162 117,
1163
1164 1229,
1165
1166 2049,
1167
1168 1673,
1169
1170 869,
1171
1172 474,
1173
1174 3486,
1175
1176 111,
1177
1178 2358,
1179
1180 2709,
1181
1182 1193,
1183
1184 2013,
1185
1186 1601,
1187
1188 697,
1189
1190 2589,
1191
1192 3414,
1193
1194 1908,
1195
1196 1055,
1197
1198 1878,
1199
1200 357,
1201 -1,
1202
1203 330,
1204
1205 670,
1206
1207 40,
1208
1209 2550,
1210
1211 1019,
1212
1213 1847,
1214
1215 1052,
1216
1217 1875,
1218
1219 300,
1220
1221 1436,
1222
1223 327,
1224
1225 1376,
1226
1227 34,
1228
1229 2865,
1230
1231 3282,
1232
1233 2442,
1234
1235 911,
1236
1237 1793,
1238
1239 363,
1240
1241 2352,
1242
1243 249,
1244
1245 1370,
1246
1247 3276,
1248
1249 2436,
1250
1251 905,
1252
1253 1790,
1254
1255 2169,
1256
1257 3102,
1258
1259 246,
1260
1261 3087,
1262
1263 3252,
1264 -1,
1265
1266 3537,
1267
1268 1778,
1269
1270 2163,
1271
1272 2574,
1273
1274 237,
1275
1276 3057,
1277
1278 2823,
1279
1280 3084,
1281
1282 1664,
1283
1284 3573,
1285
1286 24,
1287
1288 3477,
1289
1290 102,
1291
1292 1769,
1293 -1,
1294
1295 1328,
1296
1297 228,
1298
1299 3003,
1300
1301 3531,
1302
1303 1361,
1304
1305 2202,
1306
1307 1766,
1308
1309 2145,
1310 -1,
1311
1312 225,
1313
1314 3000,
1315
1316 2862,
1317
1318 1319,
1319
1320 1544,
1321
1322 792,
1323
1324 2139,
1325
1326 3357,
1327 -1,
1328
1329 2991,
1330
1331 1763,
1332
1333 1316,
1334
1335 2415,
1336
1337 222,
1338
1339 2859,
1340
1341 2622,
1342
1343 1106,
1344
1345 3567,
1346 -1,
1347
1348 2133,
1349
1350 375,
1351
1352 2982,
1353
1354 2856,
1355
1356 1592,
1357
1358 1313,
1359
1360 432,
1361
1362 3405,
1363
1364 1520,
1365
1366 762,
1367
1368 2979,
1369
1370 679,
1371
1372 2274,
1373
1374 661,
1375
1376 1076,
1377
1378 1899,
1379
1380 2850,
1381
1382 724,
1383
1384 1502,
1385
1386 742,
1387
1388 1166,
1389
1390 628,
1391
1392 1550,
1393
1394 2976,
1395
1396 2265,
1397
1398 3363,
1399
1400 2331,
1401
1402 1070,
1403
1404 1893,
1405
1406 1418,
1407
1408 3123,
1409
1410 685,
1411
1412 2343,
1413
1414 71,
1415
1416 1244,
1417
1418 2064,
1419
1420 1703,
1421
1422 2253,
1423
1424 487,
1425
1426 2319,
1427
1428 141,
1429 -1,
1430
1431 1406,
1432 -1,
1433
1434 2703,
1435
1436 1187,
1437
1438 2007,
1439
1440 1589,
1441
1442 9,
1443
1444 565,
1445
1446 3402,
1447
1448 1184,
1449
1450 2214,
1451
1452 1586,
1453
1454 836,
1455
1456 429,
1457
1458 3399,
1459
1460 1343,
1461
1462 2937,
1463
1464 634,
1465
1466 1181,
1467
1468 556,
1469
1470 1580,
1471
1472 830,
1473
1474 425,
1475
1476 3393,
1477 -1,
1478
1479 3510,
1480
1481 2904,
1482
1483 553,
1484
1485 2931,
1486
1487 1172,
1488 -1,
1489
1490 1562,
1491
1492 810,
1493
1494 417,
1495
1496 3375,
1497
1498 2688,
1499 -1,
1500
1501 1992,
1502
1503 1559,
1504
1505 807,
1506
1507 550,
1508
1509 3372,
1510 -1,
1511
1512 2685,
1513
1514 3558,
1515
1516 1989,
1517
1518 1553,
1519
1520 800,
1521
1522 2682,
1523
1524 3366,
1525
1526 1986,
1527
1528 1547,
1529
1530 796,
1531 -1,
1532
1533 3360,
1534
1535 2679,
1536
1537 1163,
1538
1539 1983,
1540
1541 1541,
1542
1543 789,
1544
1545 414,
1546 -1,
1547
1548 3516,
1549 -1,
1550
1551 673,
1552
1553 2676,
1554
1555 1160,
1556
1557 1980,
1558
1559 1535,
1560
1561 783,
1562
1563 411,
1564
1565 2670,
1566
1567 1154,
1568
1569 1974,
1570
1571 1523,
1572
1573 767,
1574
1575 408,
1576
1577 2667,
1578
1579 1151,
1580
1581 1971,
1582
1583 1517,
1584
1585 759,
1586
1587 2664,
1588
1589 1148,
1590
1591 1968,
1592
1593 1511,
1594
1595 752,
1596
1597 3555,
1598
1599 2658,
1600
1601 1142,
1602
1603 1962,
1604
1605 1499,
1606
1607 739,
1608
1609 3552,
1610
1611 2970,
1612
1613 2634,
1614
1615 1118,
1616
1617 1938,
1618
1619 1451,
1620
1621 2271,
1622
1623 384,
1624
1625 2130,
1626
1627 3546,
1628
1629 2652,
1630
1631 1136,
1632
1633 1956,
1634
1635 1487,
1636
1637 730,
1638
1639 396,
1640 -1,
1641
1642 2592,
1643
1644 3153,
1645
1646 1911,
1647
1648 3528,
1649 -1,
1650
1651 360,
1652
1653 3150,
1654
1655 2847,
1656
1657 721,
1658
1659 348,
1660
1661 3525,
1662
1663 2586,
1664
1665 1082,
1666
1667 1905,
1668 -1,
1669
1670 2262,
1671
1672 1442,
1673
1674 2328,
1675
1676 3519,
1677
1678 3135,
1679
1680 1415,
1681
1682 1073,
1683
1684 1896,
1685
1686 3513,
1687
1688 718,
1689 -1,
1690
1691 68,
1692
1693 1430,
1694
1695 1490,
1696
1697 733,
1698
1699 2250,
1700
1701 2259,
1702
1703 2316,
1704
1705 2325,
1706
1707 3105,
1708
1709 1403,
1710
1711 1412,
1712 -1,
1713
1714 3093,
1715
1716 2556,
1717
1718 1025,
1719
1720 1850,
1721
1722 1484,
1723
1724 727,
1725
1726 303,
1727
1728 3099,
1729
1730 3321,
1731
1732 2481,
1733
1734 950,
1735
1736 3309,
1737
1738 2469,
1739
1740 938,
1741
1742 267,
1743
1744 3258,
1745
1746 3246,
1747
1748 261,
1749
1750 1781,
1751
1752 1775,
1753
1754 2184,
1755
1756 240,
1757
1758 234,
1759
1760 2172,
1761
1762 3306,
1763
1764 2466,
1765
1766 935,
1767
1768 1805,
1769
1770 3264,
1771
1772 2424,
1773
1774 893,
1775
1776 1784,
1777
1778 1331,
1779
1780 1325,
1781 -1,
1782
1783 3060,
1784
1785 2613,
1786
1787 1097,
1788
1789 1932,
1790
1791 1739,
1792
1793 2151,
1794
1795 3168,
1796
1797 198,
1798
1799 1736,
1800
1801 2559,
1802
1803 1028,
1804
1805 195,
1806 -1,
1807
1808 2115,
1809 -1,
1810
1811 2994,
1812
1813 2988,
1814
1815 2109,
1816
1817 1289,
1818
1819 3279,
1820
1821 2439,
1822
1823 908,
1824
1825 1286,
1826
1827 1721,
1828
1829 3015,
1830
1831 1718,
1832
1833 180,
1834
1835 1715,
1836
1837 177,
1838
1839 2802,
1840
1841 174,
1842
1843 2166,
1844
1845 2103,
1846
1847 2796,
1848
1849 2097,
1850
1851 3117,
1852
1853 2091,
1854
1855 1271,
1856 -1,
1857
1858 1268,
1859
1860 3,
1861
1862 1265,
1863 -1,
1864
1865 1640,
1866
1867 2208,
1868
1869 2124,
1870
1871 3453,
1872
1873 77,
1874
1875 2766,
1876
1877 1337,
1878
1879 2760,
1880
1881 2280,
1882
1883 2754,
1884
1885 1238,
1886
1887 2058,
1888
1889 1691,
1890 -1,
1891
1892 2118,
1893
1894 3504,
1895
1896 129,
1897
1898 1628,
1899
1900 2841,
1901
1902 450,
1903
1904 3441,
1905 -1,
1906
1907 2568,
1908
1909 1622,
1910
1911 2940,
1912
1913 447,
1914
1915 3435,
1916
1917 583,
1918
1919 2391,
1920
1921 15,
1922
1923 2805,
1924
1925 568,
1926
1927 562,
1928
1929 2220,
1930
1931 1616,
1932
1933 2934,
1934
1935 444,
1936
1937 3429,
1938
1939 1349,
1940
1941 1610,
1942
1943 580,
1944
1945 441,
1946
1947 3423,
1948
1949 2112,
1950
1951 571,
1952
1953 2379,
1954
1955 1604,
1956
1957 1757,
1958
1959 438,
1960
1961 3417,
1962
1963 216,
1964
1965 2373,
1966
1967 529,
1968
1969 1079,
1970
1971 1902,
1972
1973 1598,
1974
1975 526,
1976
1977 435,
1978
1979 3411,
1980
1981 2799,
1982
1983 49,
1984
1985 1307,
1986
1987 2367,
1988
1989 2907,
1990
1991 2232,
1992
1993 2337,
1994
1995 2298,
1996
1997 2361,
1998
1999 1424,
2000
2001 1385,
2002 -1,
2003
2004 511,
2005
2006 2838,
2007
2008 508,
2009
2010 2355,
2011
2012 505,
2013
2014 1175,
2015 -1,
2016
2017 1568,
2018
2019 817,
2020 -1,
2021
2022 3381,
2023
2024 1169,
2025
2026 2349,
2027
2028 1556,
2029
2030 804,
2031
2032 3096,
2033
2034 3369,
2035
2036 2673,
2037
2038 1157,
2039
2040 1977,
2041
2042 1529,
2043
2044 776,
2045
2046 2661,
2047
2048 1145,
2049
2050 1965,
2051
2052 1505,
2053
2054 746,
2055
2056 2961,
2057
2058 3594,
2059
2060 2655,
2061
2062 1139,
2063
2064 1959,
2065
2066 1493,
2067
2068 736,
2069
2070 3588,
2071
2072 2646,
2073
2074 1130,
2075
2076 1950,
2077
2078 1475,
2079
2080 2643,
2081
2082 1127,
2083
2084 1947,
2085
2086 1469,
2087 -1,
2088
2089 646,
2090
2091 3582,
2092
2093 2610,
2094
2095 1094,
2096
2097 1929,
2098
2099 2595,
2100
2101 3576,
2102
2103 1914,
2104
2105 2583,
2106 -1,
2107
2108 1031,
2109
2110 1853,
2111 -1,
2112
2113 3570,
2114
2115 306,
2116
2117 62,
2118
2119 2607,
2120
2121 1091,
2122
2123 1926,
2124
2125 2244,
2126 -1,
2127
2128 2310,
2129
2130 3564,
2131
2132 547,
2133
2134 1397,
2135
2136 3147,
2137
2138 3333,
2139
2140 2493,
2141
2142 962,
2143
2144 3144,
2145
2146 1754,
2147
2148 667,
2149
2150 273,
2151
2152 213,
2153
2154 2625,
2155
2156 1109,
2157
2158 3114,
2159 -1, -1,
2160
2161 3108,
2162
2163 3327,
2164
2165 2487,
2166
2167 956,
2168
2169 3063,
2170
2171 1304,
2172
2173 3534,
2174
2175 270,
2176
2177 3300,
2178
2179 2460,
2180
2181 929,
2182
2183 1802,
2184
2185 3522,
2186
2187 3297,
2188
2189 2457,
2190
2191 926,
2192
2193 2832,
2194 -1, -1,
2195
2196 255,
2197
2198 3180,
2199
2200 3294,
2201
2202 2454,
2203
2204 923,
2205
2206 1799,
2207
2208 3288,
2209
2210 2448,
2211
2212 917,
2213
2214 1796,
2215
2216 3126,
2217
2218 1748,
2219
2220 2100,
2221
2222 1745,
2223
2224 207,
2225
2226 3174,
2227
2228 204,
2229
2230 1733,
2231
2232 1730,
2233
2234 1727,
2235
2236 192,
2237
2238 189,
2239
2240 186,
2241
2242 2736,
2243
2244 3012,
2245
2246 1298,
2247
2248 1676,
2249
2250 1295,
2251
2252 2763,
2253
2254 3489,
2255
2256 114,
2257
2258 1283,
2259
2260 1280,
2261
2262 1277,
2263 -1, -1,
2264
2265 2820,
2266
2267 3009,
2268
2269 2814,
2270 -1,
2271
2272 682,
2273
2274 3006,
2275
2276 2790,
2277
2278 2784,
2279
2280 2778,
2281
2282 1250,
2283
2284 2070,
2285
2286 2628,
2287
2288 1112,
2289
2290 490,
2291
2292 1658,
2293
2294 150,
2295
2296 1652,
2297
2298 3471,
2299
2300 96,
2301
2302 3465,
2303
2304 89,
2305
2306 1646,
2307
2308 2619,
2309
2310 1103,
2311
2312 3459,
2313
2314 83,
2315
2316 1634,
2317
2318 544,
2319 -1,
2320
2321 3447,
2322
2323 2649,
2324
2325 1133,
2326
2327 1953,
2328
2329 1481,
2330
2331 2604,
2332
2333 1088,
2334
2335 1923,
2336
2337 2598,
2338 -1,
2339
2340 1917,
2341 -1, -1,
2342
2343 2409,
2344
2345 2571,
2346
2347 2403,
2348
2349 3129,
2350
2351 2535,
2352
2353 1004,
2354
2355 2958,
2356
2357 2397,
2358
2359 21,
2360
2361 2943,
2362
2363 577,
2364
2365 2094,
2366
2367 2385,
2368
2369 2910,
2370
2371 3120,
2372
2373 2529,
2374
2375 998,
2376
2377 1355,
2378 -1,
2379
2380 56,
2381
2382 2955,
2383
2384 2523,
2385
2386 992,
2387
2388 2238,
2389
2390 538,
2391
2392 2304,
2393
2394 535,
2395
2396 2757,
2397
2398 1391,
2399 -1,
2400
2401 523,
2402
2403 520,
2404
2405 517,
2406
2407 43,
2408 -1, -1,
2409
2410 3222,
2411
2412 2226,
2413
2414 2973,
2415
2416 2292,
2417
2418 2517,
2419
2420 986,
2421
2422 1379,
2423
2424 3345,
2425
2426 2505,
2427
2428 974,
2429 -1,
2430
2431 3216,
2432
2433 3339,
2434
2435 2499,
2436
2437 968,
2438 -1, -1,
2439
2440 3210,
2441
2442 3291,
2443
2444 2451,
2445
2446 920,
2447
2448 3273,
2449
2450 2433,
2451
2452 902,
2453
2454 252,
2455 -1,
2456
2457 703,
2458
2459 3267,
2460
2461 2427,
2462
2463 896,
2464
2465 3600,
2466 -1, -1,
2467
2468 2160,
2469 -1, -1,
2470
2471 3204,
2472
2473 1709,
2474 -1,
2475
2476 2154,
2477
2478 3192,
2479
2480 3261,
2481
2482 2421,
2483
2484 890,
2485 -1,
2486
2487 3186,
2488
2489 1508,
2490
2491 749,
2492
2493 402,
2494
2495 351,
2496
2497 1706,
2498 -1,
2499
2500 688,
2501
2502 2148,
2503
2504 3285,
2505
2506 2445,
2507
2508 914,
2509
2510 2334,
2511
2512 649,
2513 -1,
2514
2515 1421,
2516
2517 619,
2518 -1, -1, -1, -1, -1, -1,
2519 -1, -1, -1, -1,
2520
2521 616,
2522 -1, -1, -1, -1, -1,
2523
2524 610,
2525 -1, -1, -1, -1, -1,
2526
2527 2967,
2528 -1, -1, -1, -1, -1, -1,
2529 -1, -1, -1, -1, -1,
2530
2531 2952,
2532
2533 604,
2534 -1,
2535
2536 2946
2537 };
2538
2539 if (0 == 0)
2540 {
2541 int key = hash(codes);
2542
2543 if (key <= MAX_HASH_VALUE && key >= 0)
2544 {
2545 int index = wordlist[key];
2546
2547 if (index >= 0 && onig_codes_cmp(codes, OnigUnicodeFolds1 + index, 1) == 0)
2548 return index;
2549 }
2550 }
2551 return -1;
2552 }
2553
2554
2555