UNPKG

java-parser

Version:

Java Parser in JavaScript

2,264 lines (2,263 loc) 27 kB
/*File generated with ../scripts/unicode.js using ../resources/Unicode/UnicodeData.txt. * As Java Identifiers may contains unicodes letters, this file defines two sets of unicode * characters, firstIdentChar used to help to determine if a character can be the first letter * of a JavaIdentifier and the other one (restIdentChar) to determine if it can be part of a * JavaIdentifier other than the first character. * Java uses the same file UnicodeData.txt as the unicode.js script to define the unicodes. * For more: * https://github.com/jhipster/prettier-java/issues/116 * https://github.com/jhipster/prettier-java/pull/155 */ "use strict"; const addRanges = (set, rangesArr) => { for (let i = 0; i < rangesArr.length; i++) { const range = rangesArr[i]; const start = range[0]; const end = range[1]; for (let codePoint = start; codePoint <= end; codePoint++) { set.add(codePoint); } } }; const fic = new Set([ 181, 257, 259, 261, 263, 265, 267, 269, 271, 273, 275, 277, 279, 281, 283, 285, 287, 289, 291, 293, 295, 297, 299, 301, 303, 305, 307, 309, 314, 316, 318, 320, 322, 324, 326, 331, 333, 335, 337, 339, 341, 343, 345, 347, 349, 351, 353, 355, 357, 359, 361, 363, 365, 367, 369, 371, 373, 375, 378, 380, 387, 389, 392, 402, 405, 414, 417, 419, 421, 424, 429, 432, 436, 438, 454, 457, 460, 462, 464, 466, 468, 470, 472, 474, 479, 481, 483, 485, 487, 489, 491, 493, 499, 501, 505, 507, 509, 511, 513, 515, 517, 519, 521, 523, 525, 527, 529, 531, 533, 535, 537, 539, 541, 543, 545, 547, 549, 551, 553, 555, 557, 559, 561, 572, 578, 583, 585, 587, 589, 881, 883, 887, 912, 985, 987, 989, 991, 993, 995, 997, 999, 1001, 1003, 1005, 1013, 1016, 1121, 1123, 1125, 1127, 1129, 1131, 1133, 1135, 1137, 1139, 1141, 1143, 1145, 1147, 1149, 1151, 1153, 1163, 1165, 1167, 1169, 1171, 1173, 1175, 1177, 1179, 1181, 1183, 1185, 1187, 1189, 1191, 1193, 1195, 1197, 1199, 1201, 1203, 1205, 1207, 1209, 1211, 1213, 1215, 1218, 1220, 1222, 1224, 1226, 1228, 1233, 1235, 1237, 1239, 1241, 1243, 1245, 1247, 1249, 1251, 1253, 1255, 1257, 1259, 1261, 1263, 1265, 1267, 1269, 1271, 1273, 1275, 1277, 1279, 1281, 1283, 1285, 1287, 1289, 1291, 1293, 1295, 1297, 1299, 1301, 1303, 1305, 1307, 1309, 1311, 1313, 1315, 1317, 1319, 1321, 1323, 1325, 1327, 7681, 7683, 7685, 7687, 7689, 7691, 7693, 7695, 7697, 7699, 7701, 7703, 7705, 7707, 7709, 7711, 7713, 7715, 7717, 7719, 7721, 7723, 7725, 7727, 7729, 7731, 7733, 7735, 7737, 7739, 7741, 7743, 7745, 7747, 7749, 7751, 7753, 7755, 7757, 7759, 7761, 7763, 7765, 7767, 7769, 7771, 7773, 7775, 7777, 7779, 7781, 7783, 7785, 7787, 7789, 7791, 7793, 7795, 7797, 7799, 7801, 7803, 7805, 7807, 7809, 7811, 7813, 7815, 7817, 7819, 7821, 7823, 7825, 7827, 7839, 7841, 7843, 7845, 7847, 7849, 7851, 7853, 7855, 7857, 7859, 7861, 7863, 7865, 7867, 7869, 7871, 7873, 7875, 7877, 7879, 7881, 7883, 7885, 7887, 7889, 7891, 7893, 7895, 7897, 7899, 7901, 7903, 7905, 7907, 7909, 7911, 7913, 7915, 7917, 7919, 7921, 7923, 7925, 7927, 7929, 7931, 7933, 8126, 8458, 8467, 8495, 8500, 8505, 8526, 8580, 11361, 11368, 11370, 11372, 11377, 11393, 11395, 11397, 11399, 11401, 11403, 11405, 11407, 11409, 11411, 11413, 11415, 11417, 11419, 11421, 11423, 11425, 11427, 11429, 11431, 11433, 11435, 11437, 11439, 11441, 11443, 11445, 11447, 11449, 11451, 11453, 11455, 11457, 11459, 11461, 11463, 11465, 11467, 11469, 11471, 11473, 11475, 11477, 11479, 11481, 11483, 11485, 11487, 11489, 11500, 11502, 11507, 11559, 11565, 42561, 42563, 42565, 42567, 42569, 42571, 42573, 42575, 42577, 42579, 42581, 42583, 42585, 42587, 42589, 42591, 42593, 42595, 42597, 42599, 42601, 42603, 42605, 42625, 42627, 42629, 42631, 42633, 42635, 42637, 42639, 42641, 42643, 42645, 42647, 42649, 42651, 42787, 42789, 42791, 42793, 42795, 42797, 42803, 42805, 42807, 42809, 42811, 42813, 42815, 42817, 42819, 42821, 42823, 42825, 42827, 42829, 42831, 42833, 42835, 42837, 42839, 42841, 42843, 42845, 42847, 42849, 42851, 42853, 42855, 42857, 42859, 42861, 42863, 42874, 42876, 42879, 42881, 42883, 42885, 42887, 42892, 42894, 42897, 42903, 42905, 42907, 42909, 42911, 42913, 42915, 42917, 42919, 42921, 42927, 42933, 42935, 42937, 42939, 42941, 42943, 42947, 43002, 119995, 120779, 748, 750, 884, 890, 1369, 1600, 2042, 2074, 2084, 2088, 2417, 3654, 3782, 4348, 6103, 6211, 6823, 7544, 8305, 8319, 11631, 11823, 12293, 12347, 40981, 42508, 42623, 42864, 42888, 43471, 43494, 43632, 43741, 65392, 94179, 125259, 170, 186, 443, 660, 1749, 1791, 1808, 1969, 2365, 2384, 2482, 2493, 2510, 2556, 2654, 2749, 2768, 2809, 2877, 2929, 2947, 2972, 3024, 3133, 3200, 3261, 3294, 3389, 3406, 3517, 3716, 3749, 3773, 3840, 4159, 4193, 4238, 4696, 4800, 6108, 6314, 7418, 12294, 12348, 12447, 12543, 13312, 19968, 42606, 42895, 42999, 43259, 43642, 43697, 43712, 43714, 43762, 44032, 64285, 64318, 67592, 67644, 68096, 69415, 69956, 70006, 70106, 70108, 70280, 70461, 70480, 70751, 70855, 71236, 71352, 71935, 72161, 72163, 72192, 72250, 72272, 72349, 72768, 73030, 73112, 94032, 94208, 123214, 126500, 126503, 126521, 126523, 126530, 126535, 126537, 126539, 126548, 126551, 126553, 126555, 126557, 126559, 126564, 126590, 131072, 173824, 177984, 178208, 183984, 453, 456, 459, 498, 8124, 8140, 8188, 256, 258, 260, 262, 264, 266, 268, 270, 272, 274, 276, 278, 280, 282, 284, 286, 288, 290, 292, 294, 296, 298, 300, 302, 304, 306, 308, 310, 313, 315, 317, 319, 321, 323, 325, 327, 330, 332, 334, 336, 338, 340, 342, 344, 346, 348, 350, 352, 354, 356, 358, 360, 362, 364, 366, 368, 370, 372, 374, 379, 381, 388, 418, 420, 425, 428, 437, 444, 452, 455, 458, 461, 463, 465, 467, 469, 471, 473, 475, 478, 480, 482, 484, 486, 488, 490, 492, 494, 497, 500, 506, 508, 510, 512, 514, 516, 518, 520, 522, 524, 526, 528, 530, 532, 534, 536, 538, 540, 542, 544, 546, 548, 550, 552, 554, 556, 558, 560, 562, 577, 584, 586, 588, 590, 880, 882, 886, 895, 902, 908, 975, 984, 986, 988, 990, 992, 994, 996, 998, 1000, 1002, 1004, 1006, 1012, 1015, 1120, 1122, 1124, 1126, 1128, 1130, 1132, 1134, 1136, 1138, 1140, 1142, 1144, 1146, 1148, 1150, 1152, 1162, 1164, 1166, 1168, 1170, 1172, 1174, 1176, 1178, 1180, 1182, 1184, 1186, 1188, 1190, 1192, 1194, 1196, 1198, 1200, 1202, 1204, 1206, 1208, 1210, 1212, 1214, 1219, 1221, 1223, 1225, 1227, 1229, 1232, 1234, 1236, 1238, 1240, 1242, 1244, 1246, 1248, 1250, 1252, 1254, 1256, 1258, 1260, 1262, 1264, 1266, 1268, 1270, 1272, 1274, 1276, 1278, 1280, 1282, 1284, 1286, 1288, 1290, 1292, 1294, 1296, 1298, 1300, 1302, 1304, 1306, 1308, 1310, 1312, 1314, 1316, 1318, 1320, 1322, 1324, 1326, 4295, 4301, 7680, 7682, 7684, 7686, 7688, 7690, 7692, 7694, 7696, 7698, 7700, 7702, 7704, 7706, 7708, 7710, 7712, 7714, 7716, 7718, 7720, 7722, 7724, 7726, 7728, 7730, 7732, 7734, 7736, 7738, 7740, 7742, 7744, 7746, 7748, 7750, 7752, 7754, 7756, 7758, 7760, 7762, 7764, 7766, 7768, 7770, 7772, 7774, 7776, 7778, 7780, 7782, 7784, 7786, 7788, 7790, 7792, 7794, 7796, 7798, 7800, 7802, 7804, 7806, 7808, 7810, 7812, 7814, 7816, 7818, 7820, 7822, 7824, 7826, 7828, 7838, 7840, 7842, 7844, 7846, 7848, 7850, 7852, 7854, 7856, 7858, 7860, 7862, 7864, 7866, 7868, 7870, 7872, 7874, 7876, 7878, 7880, 7882, 7884, 7886, 7888, 7890, 7892, 7894, 7896, 7898, 7900, 7902, 7904, 7906, 7908, 7910, 7912, 7914, 7916, 7918, 7920, 7922, 7924, 7926, 7928, 7930, 7932, 7934, 8025, 8027, 8029, 8031, 8450, 8455, 8469, 8484, 8486, 8488, 8517, 8579, 11360, 11367, 11369, 11371, 11378, 11381, 11394, 11396, 11398, 11400, 11402, 11404, 11406, 11408, 11410, 11412, 11414, 11416, 11418, 11420, 11422, 11424, 11426, 11428, 11430, 11432, 11434, 11436, 11438, 11440, 11442, 11444, 11446, 11448, 11450, 11452, 11454, 11456, 11458, 11460, 11462, 11464, 11466, 11468, 11470, 11472, 11474, 11476, 11478, 11480, 11482, 11484, 11486, 11488, 11490, 11499, 11501, 11506, 42560, 42562, 42564, 42566, 42568, 42570, 42572, 42574, 42576, 42578, 42580, 42582, 42584, 42586, 42588, 42590, 42592, 42594, 42596, 42598, 42600, 42602, 42604, 42624, 42626, 42628, 42630, 42632, 42634, 42636, 42638, 42640, 42642, 42644, 42646, 42648, 42650, 42786, 42788, 42790, 42792, 42794, 42796, 42798, 42802, 42804, 42806, 42808, 42810, 42812, 42814, 42816, 42818, 42820, 42822, 42824, 42826, 42828, 42830, 42832, 42834, 42836, 42838, 42840, 42842, 42844, 42846, 42848, 42850, 42852, 42854, 42856, 42858, 42860, 42862, 42873, 42875, 42880, 42882, 42884, 42886, 42891, 42893, 42896, 42898, 42902, 42904, 42906, 42908, 42910, 42912, 42914, 42916, 42918, 42920, 42934, 42936, 42938, 42940, 42942, 42946, 119964, 119970, 120134, 120778, 12295, 66369, 66378, 36, 1423, 1547, 2555, 2801, 3065, 3647, 6107, 43064, 65020, 65129, 65284, 123647, 126128, 95, 8276, 65343 ]); const fic_a = [ [97, 122], [223, 246], [248, 255], [311, 312], [328, 329], [382, 384], [396, 397], [409, 411], [426, 427], [441, 442], [445, 447], [476, 477], [495, 496], [563, 569], [575, 576], [591, 659], [661, 687], [891, 893], [940, 974], [976, 977], [981, 983], [1007, 1011], [1019, 1020], [1072, 1119], [1230, 1231], [1376, 1416], [4304, 4346], [4349, 4351], [5112, 5117], [7296, 7304], [7424, 7467], [7531, 7543], [7545, 7578], [7829, 7837], [7935, 7943], [7952, 7957], [7968, 7975], [7984, 7991], [8000, 8005], [8016, 8023], [8032, 8039], [8048, 8061], [8064, 8071], [8080, 8087], [8096, 8103], [8112, 8116], [8118, 8119], [8130, 8132], [8134, 8135], [8144, 8147], [8150, 8151], [8160, 8167], [8178, 8180], [8182, 8183], [8462, 8463], [8508, 8509], [8518, 8521], [11312, 11358], [11365, 11366], [11379, 11380], [11382, 11387], [11491, 11492], [11520, 11557], [42799, 42801], [42865, 42872], [42899, 42901], [43824, 43866], [43872, 43879], [43888, 43967], [64256, 64262], [64275, 64279], [65345, 65370], [66600, 66639], [66776, 66811], [68800, 68850], [71872, 71903], [93792, 93823], [119834, 119859], [119886, 119892], [119894, 119911], [119938, 119963], [119990, 119993], [119997, 120003], [120005, 120015], [120042, 120067], [120094, 120119], [120146, 120171], [120198, 120223], [120250, 120275], [120302, 120327], [120354, 120379], [120406, 120431], [120458, 120485], [120514, 120538], [120540, 120545], [120572, 120596], [120598, 120603], [120630, 120654], [120656, 120661], [120688, 120712], [120714, 120719], [120746, 120770], [120772, 120777], [125218, 125251], [688, 705], [710, 721], [736, 740], [1765, 1766], [2036, 2037], [7288, 7293], [7468, 7530], [7579, 7615], [8336, 8348], [11388, 11389], [12337, 12341], [12445, 12446], [12540, 12542], [42232, 42237], [42652, 42653], [42775, 42783], [43000, 43001], [43763, 43764], [43868, 43871], [65438, 65439], [92992, 92995], [94099, 94111], [94176, 94177], [123191, 123197], [13313, 19893], [19969, 40943], [44033, 55203], [94209, 100343], [131073, 173782], [173825, 177972], [177985, 178205], [178209, 183969], [183985, 191456], [448, 451], [1488, 1514], [1519, 1522], [1568, 1599], [1601, 1610], [1646, 1647], [1649, 1747], [1774, 1775], [1786, 1788], [1810, 1839], [1869, 1957], [1994, 2026], [2048, 2069], [2112, 2136], [2144, 2154], [2208, 2228], [2230, 2237], [2308, 2361], [2392, 2401], [2418, 2432], [2437, 2444], [2447, 2448], [2451, 2472], [2474, 2480], [2486, 2489], [2524, 2525], [2527, 2529], [2544, 2545], [2565, 2570], [2575, 2576], [2579, 2600], [2602, 2608], [2610, 2611], [2613, 2614], [2616, 2617], [2649, 2652], [2674, 2676], [2693, 2701], [2703, 2705], [2707, 2728], [2730, 2736], [2738, 2739], [2741, 2745], [2784, 2785], [2821, 2828], [2831, 2832], [2835, 2856], [2858, 2864], [2866, 2867], [2869, 2873], [2908, 2909], [2911, 2913], [2949, 2954], [2958, 2960], [2962, 2965], [2969, 2970], [2974, 2975], [2979, 2980], [2984, 2986], [2990, 3001], [3077, 3084], [3086, 3088], [3090, 3112], [3114, 3129], [3160, 3162], [3168, 3169], [3205, 3212], [3214, 3216], [3218, 3240], [3242, 3251], [3253, 3257], [3296, 3297], [3313, 3314], [3333, 3340], [3342, 3344], [3346, 3386], [3412, 3414], [3423, 3425], [3450, 3455], [3461, 3478], [3482, 3505], [3507, 3515], [3520, 3526], [3585, 3632], [3634, 3635], [3648, 3653], [3713, 3714], [3718, 3722], [3724, 3747], [3751, 3760], [3762, 3763], [3776, 3780], [3804, 3807], [3904, 3911], [3913, 3948], [3976, 3980], [4096, 4138], [4176, 4181], [4186, 4189], [4197, 4198], [4206, 4208], [4213, 4225], [4352, 4680], [4682, 4685], [4688, 4694], [4698, 4701], [4704, 4744], [4746, 4749], [4752, 4784], [4786, 4789], [4792, 4798], [4802, 4805], [4808, 4822], [4824, 4880], [4882, 4885], [4888, 4954], [4992, 5007], [5121, 5740], [5743, 5759], [5761, 5786], [5792, 5866], [5873, 5880], [5888, 5900], [5902, 5905], [5920, 5937], [5952, 5969], [5984, 5996], [5998, 6000], [6016, 6067], [6176, 6210], [6212, 6264], [6272, 6276], [6279, 6312], [6320, 6389], [6400, 6430], [6480, 6509], [6512, 6516], [6528, 6571], [6576, 6601], [6656, 6678], [6688, 6740], [6917, 6963], [6981, 6987], [7043, 7072], [7086, 7087], [7098, 7141], [7168, 7203], [7245, 7247], [7258, 7287], [7401, 7404], [7406, 7411], [7413, 7414], [8501, 8504], [11568, 11623], [11648, 11670], [11680, 11686], [11688, 11694], [11696, 11702], [11704, 11710], [11712, 11718], [11720, 11726], [11728, 11734], [11736, 11742], [12353, 12438], [12449, 12538], [12549, 12591], [12593, 12686], [12704, 12730], [12784, 12799], [40960, 40980], [40982, 42124], [42192, 42231], [42240, 42507], [42512, 42527], [42538, 42539], [42656, 42725], [43003, 43009], [43011, 43013], [43015, 43018], [43020, 43042], [43072, 43123], [43138, 43187], [43250, 43255], [43261, 43262], [43274, 43301], [43312, 43334], [43360, 43388], [43396, 43442], [43488, 43492], [43495, 43503], [43514, 43518], [43520, 43560], [43584, 43586], [43588, 43595], [43616, 43631], [43633, 43638], [43646, 43695], [43701, 43702], [43705, 43709], [43739, 43740], [43744, 43754], [43777, 43782], [43785, 43790], [43793, 43798], [43808, 43814], [43816, 43822], [43968, 44002], [55216, 55238], [55243, 55291], [63744, 64109], [64112, 64217], [64287, 64296], [64298, 64310], [64312, 64316], [64320, 64321], [64323, 64324], [64326, 64433], [64467, 64829], [64848, 64911], [64914, 64967], [65008, 65019], [65136, 65140], [65142, 65276], [65382, 65391], [65393, 65437], [65440, 65470], [65474, 65479], [65482, 65487], [65490, 65495], [65498, 65500], [65536, 65547], [65549, 65574], [65576, 65594], [65596, 65597], [65599, 65613], [65616, 65629], [65664, 65786], [66176, 66204], [66208, 66256], [66304, 66335], [66349, 66368], [66370, 66377], [66384, 66421], [66432, 66461], [66464, 66499], [66504, 66511], [66640, 66717], [66816, 66855], [66864, 66915], [67072, 67382], [67392, 67413], [67424, 67431], [67584, 67589], [67594, 67637], [67639, 67640], [67647, 67669], [67680, 67702], [67712, 67742], [67808, 67826], [67828, 67829], [67840, 67861], [67872, 67897], [67968, 68023], [68030, 68031], [68112, 68115], [68117, 68119], [68121, 68149], [68192, 68220], [68224, 68252], [68288, 68295], [68297, 68324], [68352, 68405], [68416, 68437], [68448, 68466], [68480, 68497], [68608, 68680], [68864, 68899], [69376, 69404], [69424, 69445], [69600, 69622], [69635, 69687], [69763, 69807], [69840, 69864], [69891, 69926], [69968, 70002], [70019, 70066], [70081, 70084], [70144, 70161], [70163, 70187], [70272, 70278], [70282, 70285], [70287, 70301], [70303, 70312], [70320, 70366], [70405, 70412], [70415, 70416], [70419, 70440], [70442, 70448], [70450, 70451], [70453, 70457], [70493, 70497], [70656, 70708], [70727, 70730], [70784, 70831], [70852, 70853], [71040, 71086], [71128, 71131], [71168, 71215], [71296, 71338], [71424, 71450], [71680, 71723], [72096, 72103], [72106, 72144], [72203, 72242], [72284, 72329], [72384, 72440], [72704, 72712], [72714, 72750], [72818, 72847], [72960, 72966], [72968, 72969], [72971, 73008], [73056, 73061], [73063, 73064], [73066, 73097], [73440, 73458], [73728, 74649], [74880, 75075], [77824, 78894], [82944, 83526], [92160, 92728], [92736, 92766], [92880, 92909], [92928, 92975], [93027, 93047], [93053, 93071], [93952, 94026], [100352, 101106], [110592, 110878], [110928, 110930], [110948, 110951], [110960, 111355], [113664, 113770], [113776, 113788], [113792, 113800], [113808, 113817], [123136, 123180], [123584, 123627], [124928, 125124], [126464, 126467], [126469, 126495], [126497, 126498], [126505, 126514], [126516, 126519], [126541, 126543], [126545, 126546], [126561, 126562], [126567, 126570], [126572, 126578], [126580, 126583], [126585, 126588], [126592, 126601], [126603, 126619], [126625, 126627], [126629, 126633], [126635, 126651], [194560, 195101], [8072, 8079], [8088, 8095], [8104, 8111], [65, 90], [192, 214], [216, 222], [376, 377], [385, 386], [390, 391], [393, 395], [398, 401], [403, 404], [406, 408], [412, 413], [415, 416], [422, 423], [430, 431], [433, 435], [439, 440], [502, 504], [570, 571], [573, 574], [579, 582], [904, 906], [910, 911], [913, 929], [931, 939], [978, 980], [1017, 1018], [1021, 1071], [1216, 1217], [1329, 1366], [4256, 4293], [5024, 5109], [7312, 7354], [7357, 7359], [7944, 7951], [7960, 7965], [7976, 7983], [7992, 7999], [8008, 8013], [8040, 8047], [8120, 8123], [8136, 8139], [8152, 8155], [8168, 8172], [8184, 8187], [8459, 8461], [8464, 8466], [8473, 8477], [8490, 8493], [8496, 8499], [8510, 8511], [11264, 11310], [11362, 11364], [11373, 11376], [11390, 11392], [42877, 42878], [42922, 42926], [42928, 42932], [42948, 42950], [65313, 65338], [66560, 66599], [66736, 66771], [68736, 68786], [71840, 71871], [93760, 93791], [119808, 119833], [119860, 119885], [119912, 119937], [119966, 119967], [119973, 119974], [119977, 119980], [119982, 119989], [120016, 120041], [120068, 120069], [120071, 120074], [120077, 120084], [120086, 120092], [120120, 120121], [120123, 120126], [120128, 120132], [120138, 120144], [120172, 120197], [120224, 120249], [120276, 120301], [120328, 120353], [120380, 120405], [120432, 120457], [120488, 120512], [120546, 120570], [120604, 120628], [120662, 120686], [120720, 120744], [125184, 125217], [5870, 5872], [8544, 8578], [8581, 8584], [12321, 12329], [12344, 12346], [42726, 42735], [65856, 65908], [66513, 66517], [74752, 74862], [162, 165], [2046, 2047], [2546, 2547], [8352, 8383], [65504, 65505], [65509, 65510], [73693, 73696], [8255, 8256], [65075, 65076], [65101, 65103] ]; addRanges(fic, fic_a); const ricd = new Set([ 1471, 1479, 1648, 1809, 2045, 2362, 2364, 2381, 2433, 2492, 2509, 2558, 2620, 2641, 2677, 2748, 2765, 2817, 2876, 2879, 2893, 2902, 2946, 3008, 3021, 3072, 3076, 3201, 3260, 3263, 3270, 3405, 3530, 3542, 3633, 3761, 3893, 3895, 3897, 4038, 4226, 4237, 4253, 6086, 6109, 6313, 6450, 6683, 6742, 6752, 6754, 6783, 6964, 6972, 6978, 7142, 7149, 7405, 7412, 8417, 11647, 42607, 43010, 43014, 43019, 43263, 43443, 43493, 43587, 43596, 43644, 43696, 43713, 43766, 44005, 44008, 44013, 64286, 66045, 66272, 68159, 69633, 70003, 70196, 70206, 70367, 70464, 70726, 70750, 70842, 71229, 71339, 71341, 71351, 72160, 72263, 72767, 73018, 73031, 73109, 73111, 94031, 121461, 121476, 173, 1564, 1757, 1807, 2274, 6158, 65279, 69821, 69837, 917505 ]); const ricd_a = [ [768, 879], [1155, 1159], [1425, 1469], [1473, 1474], [1476, 1477], [1552, 1562], [1611, 1631], [1750, 1756], [1759, 1764], [1767, 1768], [1770, 1773], [1840, 1866], [1958, 1968], [2027, 2035], [2070, 2073], [2075, 2083], [2085, 2087], [2089, 2093], [2137, 2139], [2259, 2273], [2275, 2306], [2369, 2376], [2385, 2391], [2402, 2403], [2497, 2500], [2530, 2531], [2561, 2562], [2625, 2626], [2631, 2632], [2635, 2637], [2672, 2673], [2689, 2690], [2753, 2757], [2759, 2760], [2786, 2787], [2810, 2815], [2881, 2884], [2914, 2915], [3134, 3136], [3142, 3144], [3146, 3149], [3157, 3158], [3170, 3171], [3276, 3277], [3298, 3299], [3328, 3329], [3387, 3388], [3393, 3396], [3426, 3427], [3538, 3540], [3636, 3642], [3655, 3662], [3764, 3772], [3784, 3789], [3864, 3865], [3953, 3966], [3968, 3972], [3974, 3975], [3981, 3991], [3993, 4028], [4141, 4144], [4146, 4151], [4153, 4154], [4157, 4158], [4184, 4185], [4190, 4192], [4209, 4212], [4229, 4230], [4957, 4959], [5906, 5908], [5938, 5940], [5970, 5971], [6002, 6003], [6068, 6069], [6071, 6077], [6089, 6099], [6155, 6157], [6277, 6278], [6432, 6434], [6439, 6440], [6457, 6459], [6679, 6680], [6744, 6750], [6757, 6764], [6771, 6780], [6832, 6845], [6912, 6915], [6966, 6970], [7019, 7027], [7040, 7041], [7074, 7077], [7080, 7081], [7083, 7085], [7144, 7145], [7151, 7153], [7212, 7219], [7222, 7223], [7376, 7378], [7380, 7392], [7394, 7400], [7416, 7417], [7616, 7673], [7675, 7679], [8400, 8412], [8421, 8432], [11503, 11505], [11744, 11775], [12330, 12333], [12441, 12442], [42612, 42621], [42654, 42655], [42736, 42737], [43045, 43046], [43204, 43205], [43232, 43249], [43302, 43309], [43335, 43345], [43392, 43394], [43446, 43449], [43452, 43453], [43561, 43566], [43569, 43570], [43573, 43574], [43698, 43700], [43703, 43704], [43710, 43711], [43756, 43757], [65024, 65039], [65056, 65071], [66422, 66426], [68097, 68099], [68101, 68102], [68108, 68111], [68152, 68154], [68325, 68326], [68900, 68903], [69446, 69456], [69688, 69702], [69759, 69761], [69811, 69814], [69817, 69818], [69888, 69890], [69927, 69931], [69933, 69940], [70016, 70017], [70070, 70078], [70089, 70092], [70191, 70193], [70198, 70199], [70371, 70378], [70400, 70401], [70459, 70460], [70502, 70508], [70512, 70516], [70712, 70719], [70722, 70724], [70835, 70840], [70847, 70848], [70850, 70851], [71090, 71093], [71100, 71101], [71103, 71104], [71132, 71133], [71219, 71226], [71231, 71232], [71344, 71349], [71453, 71455], [71458, 71461], [71463, 71467], [71727, 71735], [71737, 71738], [72148, 72151], [72154, 72155], [72193, 72202], [72243, 72248], [72251, 72254], [72273, 72278], [72281, 72283], [72330, 72342], [72344, 72345], [72752, 72758], [72760, 72765], [72850, 72871], [72874, 72880], [72882, 72883], [72885, 72886], [73009, 73014], [73020, 73021], [73023, 73029], [73104, 73105], [73459, 73460], [92912, 92916], [92976, 92982], [94095, 94098], [113821, 113822], [119143, 119145], [119163, 119170], [119173, 119179], [119210, 119213], [119362, 119364], [121344, 121398], [121403, 121452], [121499, 121503], [121505, 121519], [122880, 122886], [122888, 122904], [122907, 122913], [122915, 122916], [122918, 122922], [123184, 123190], [123628, 123631], [125136, 125142], [125252, 125258], [917760, 917999], [1536, 1541], [8203, 8207], [8234, 8238], [8288, 8292], [8294, 8303], [65529, 65531], [78896, 78904], [113824, 113827], [119155, 119162], [917536, 917631] ]; addRanges(ricd, ricd_a); const mac_a = [ [0, 8], [14, 27], [127, 159], [768, 879], [6832, 6911], [7616, 7679], [8400, 8447], [65056, 65071], [48, 57] ]; addRanges(ricd, mac_a); const ric = new Set( (function* () { yield* fic; yield* ricd; })() ); module.exports = { firstIdentChar: fic, restIdentChar: ric };