bloaty/third_party/re2/re2/unicode_groups.cc
Go to the documentation of this file.
1 
2 // GENERATED BY make_unicode_groups.py; DO NOT EDIT.
3 // make_unicode_groups.py >unicode_groups.cc
4 
5 #include "re2/unicode_groups.h"
6 
7 namespace re2 {
8 
9 
10 static const URange16 C_range16[] = {
11  { 0, 31 },
12  { 127, 159 },
13  { 173, 173 },
14  { 1536, 1541 },
15  { 1564, 1564 },
16  { 1757, 1757 },
17  { 1807, 1807 },
18  { 2274, 2274 },
19  { 6158, 6158 },
20  { 8203, 8207 },
21  { 8234, 8238 },
22  { 8288, 8292 },
23  { 8294, 8303 },
24  { 55296, 63743 },
25  { 65279, 65279 },
26  { 65529, 65531 },
27 };
28 static const URange32 C_range32[] = {
29  { 69821, 69821 },
30  { 69837, 69837 },
31  { 78896, 78904 },
32  { 113824, 113827 },
33  { 119155, 119162 },
34  { 917505, 917505 },
35  { 917536, 917631 },
36  { 983040, 1048573 },
37  { 1048576, 1114109 },
38 };
39 static const URange16 Cc_range16[] = {
40  { 0, 31 },
41  { 127, 159 },
42 };
43 static const URange16 Cf_range16[] = {
44  { 173, 173 },
45  { 1536, 1541 },
46  { 1564, 1564 },
47  { 1757, 1757 },
48  { 1807, 1807 },
49  { 2274, 2274 },
50  { 6158, 6158 },
51  { 8203, 8207 },
52  { 8234, 8238 },
53  { 8288, 8292 },
54  { 8294, 8303 },
55  { 65279, 65279 },
56  { 65529, 65531 },
57 };
58 static const URange32 Cf_range32[] = {
59  { 69821, 69821 },
60  { 69837, 69837 },
61  { 78896, 78904 },
62  { 113824, 113827 },
63  { 119155, 119162 },
64  { 917505, 917505 },
65  { 917536, 917631 },
66 };
67 static const URange16 Co_range16[] = {
68  { 57344, 63743 },
69 };
70 static const URange32 Co_range32[] = {
71  { 983040, 1048573 },
72  { 1048576, 1114109 },
73 };
74 static const URange16 Cs_range16[] = {
75  { 55296, 57343 },
76 };
77 static const URange16 L_range16[] = {
78  { 65, 90 },
79  { 97, 122 },
80  { 170, 170 },
81  { 181, 181 },
82  { 186, 186 },
83  { 192, 214 },
84  { 216, 246 },
85  { 248, 705 },
86  { 710, 721 },
87  { 736, 740 },
88  { 748, 748 },
89  { 750, 750 },
90  { 880, 884 },
91  { 886, 887 },
92  { 890, 893 },
93  { 895, 895 },
94  { 902, 902 },
95  { 904, 906 },
96  { 908, 908 },
97  { 910, 929 },
98  { 931, 1013 },
99  { 1015, 1153 },
100  { 1162, 1327 },
101  { 1329, 1366 },
102  { 1369, 1369 },
103  { 1376, 1416 },
104  { 1488, 1514 },
105  { 1519, 1522 },
106  { 1568, 1610 },
107  { 1646, 1647 },
108  { 1649, 1747 },
109  { 1749, 1749 },
110  { 1765, 1766 },
111  { 1774, 1775 },
112  { 1786, 1788 },
113  { 1791, 1791 },
114  { 1808, 1808 },
115  { 1810, 1839 },
116  { 1869, 1957 },
117  { 1969, 1969 },
118  { 1994, 2026 },
119  { 2036, 2037 },
120  { 2042, 2042 },
121  { 2048, 2069 },
122  { 2074, 2074 },
123  { 2084, 2084 },
124  { 2088, 2088 },
125  { 2112, 2136 },
126  { 2144, 2154 },
127  { 2208, 2228 },
128  { 2230, 2237 },
129  { 2308, 2361 },
130  { 2365, 2365 },
131  { 2384, 2384 },
132  { 2392, 2401 },
133  { 2417, 2432 },
134  { 2437, 2444 },
135  { 2447, 2448 },
136  { 2451, 2472 },
137  { 2474, 2480 },
138  { 2482, 2482 },
139  { 2486, 2489 },
140  { 2493, 2493 },
141  { 2510, 2510 },
142  { 2524, 2525 },
143  { 2527, 2529 },
144  { 2544, 2545 },
145  { 2556, 2556 },
146  { 2565, 2570 },
147  { 2575, 2576 },
148  { 2579, 2600 },
149  { 2602, 2608 },
150  { 2610, 2611 },
151  { 2613, 2614 },
152  { 2616, 2617 },
153  { 2649, 2652 },
154  { 2654, 2654 },
155  { 2674, 2676 },
156  { 2693, 2701 },
157  { 2703, 2705 },
158  { 2707, 2728 },
159  { 2730, 2736 },
160  { 2738, 2739 },
161  { 2741, 2745 },
162  { 2749, 2749 },
163  { 2768, 2768 },
164  { 2784, 2785 },
165  { 2809, 2809 },
166  { 2821, 2828 },
167  { 2831, 2832 },
168  { 2835, 2856 },
169  { 2858, 2864 },
170  { 2866, 2867 },
171  { 2869, 2873 },
172  { 2877, 2877 },
173  { 2908, 2909 },
174  { 2911, 2913 },
175  { 2929, 2929 },
176  { 2947, 2947 },
177  { 2949, 2954 },
178  { 2958, 2960 },
179  { 2962, 2965 },
180  { 2969, 2970 },
181  { 2972, 2972 },
182  { 2974, 2975 },
183  { 2979, 2980 },
184  { 2984, 2986 },
185  { 2990, 3001 },
186  { 3024, 3024 },
187  { 3077, 3084 },
188  { 3086, 3088 },
189  { 3090, 3112 },
190  { 3114, 3129 },
191  { 3133, 3133 },
192  { 3160, 3162 },
193  { 3168, 3169 },
194  { 3200, 3200 },
195  { 3205, 3212 },
196  { 3214, 3216 },
197  { 3218, 3240 },
198  { 3242, 3251 },
199  { 3253, 3257 },
200  { 3261, 3261 },
201  { 3294, 3294 },
202  { 3296, 3297 },
203  { 3313, 3314 },
204  { 3333, 3340 },
205  { 3342, 3344 },
206  { 3346, 3386 },
207  { 3389, 3389 },
208  { 3406, 3406 },
209  { 3412, 3414 },
210  { 3423, 3425 },
211  { 3450, 3455 },
212  { 3461, 3478 },
213  { 3482, 3505 },
214  { 3507, 3515 },
215  { 3517, 3517 },
216  { 3520, 3526 },
217  { 3585, 3632 },
218  { 3634, 3635 },
219  { 3648, 3654 },
220  { 3713, 3714 },
221  { 3716, 3716 },
222  { 3718, 3722 },
223  { 3724, 3747 },
224  { 3749, 3749 },
225  { 3751, 3760 },
226  { 3762, 3763 },
227  { 3773, 3773 },
228  { 3776, 3780 },
229  { 3782, 3782 },
230  { 3804, 3807 },
231  { 3840, 3840 },
232  { 3904, 3911 },
233  { 3913, 3948 },
234  { 3976, 3980 },
235  { 4096, 4138 },
236  { 4159, 4159 },
237  { 4176, 4181 },
238  { 4186, 4189 },
239  { 4193, 4193 },
240  { 4197, 4198 },
241  { 4206, 4208 },
242  { 4213, 4225 },
243  { 4238, 4238 },
244  { 4256, 4293 },
245  { 4295, 4295 },
246  { 4301, 4301 },
247  { 4304, 4346 },
248  { 4348, 4680 },
249  { 4682, 4685 },
250  { 4688, 4694 },
251  { 4696, 4696 },
252  { 4698, 4701 },
253  { 4704, 4744 },
254  { 4746, 4749 },
255  { 4752, 4784 },
256  { 4786, 4789 },
257  { 4792, 4798 },
258  { 4800, 4800 },
259  { 4802, 4805 },
260  { 4808, 4822 },
261  { 4824, 4880 },
262  { 4882, 4885 },
263  { 4888, 4954 },
264  { 4992, 5007 },
265  { 5024, 5109 },
266  { 5112, 5117 },
267  { 5121, 5740 },
268  { 5743, 5759 },
269  { 5761, 5786 },
270  { 5792, 5866 },
271  { 5873, 5880 },
272  { 5888, 5900 },
273  { 5902, 5905 },
274  { 5920, 5937 },
275  { 5952, 5969 },
276  { 5984, 5996 },
277  { 5998, 6000 },
278  { 6016, 6067 },
279  { 6103, 6103 },
280  { 6108, 6108 },
281  { 6176, 6264 },
282  { 6272, 6276 },
283  { 6279, 6312 },
284  { 6314, 6314 },
285  { 6320, 6389 },
286  { 6400, 6430 },
287  { 6480, 6509 },
288  { 6512, 6516 },
289  { 6528, 6571 },
290  { 6576, 6601 },
291  { 6656, 6678 },
292  { 6688, 6740 },
293  { 6823, 6823 },
294  { 6917, 6963 },
295  { 6981, 6987 },
296  { 7043, 7072 },
297  { 7086, 7087 },
298  { 7098, 7141 },
299  { 7168, 7203 },
300  { 7245, 7247 },
301  { 7258, 7293 },
302  { 7296, 7304 },
303  { 7312, 7354 },
304  { 7357, 7359 },
305  { 7401, 7404 },
306  { 7406, 7411 },
307  { 7413, 7414 },
308  { 7418, 7418 },
309  { 7424, 7615 },
310  { 7680, 7957 },
311  { 7960, 7965 },
312  { 7968, 8005 },
313  { 8008, 8013 },
314  { 8016, 8023 },
315  { 8025, 8025 },
316  { 8027, 8027 },
317  { 8029, 8029 },
318  { 8031, 8061 },
319  { 8064, 8116 },
320  { 8118, 8124 },
321  { 8126, 8126 },
322  { 8130, 8132 },
323  { 8134, 8140 },
324  { 8144, 8147 },
325  { 8150, 8155 },
326  { 8160, 8172 },
327  { 8178, 8180 },
328  { 8182, 8188 },
329  { 8305, 8305 },
330  { 8319, 8319 },
331  { 8336, 8348 },
332  { 8450, 8450 },
333  { 8455, 8455 },
334  { 8458, 8467 },
335  { 8469, 8469 },
336  { 8473, 8477 },
337  { 8484, 8484 },
338  { 8486, 8486 },
339  { 8488, 8488 },
340  { 8490, 8493 },
341  { 8495, 8505 },
342  { 8508, 8511 },
343  { 8517, 8521 },
344  { 8526, 8526 },
345  { 8579, 8580 },
346  { 11264, 11310 },
347  { 11312, 11358 },
348  { 11360, 11492 },
349  { 11499, 11502 },
350  { 11506, 11507 },
351  { 11520, 11557 },
352  { 11559, 11559 },
353  { 11565, 11565 },
354  { 11568, 11623 },
355  { 11631, 11631 },
356  { 11648, 11670 },
357  { 11680, 11686 },
358  { 11688, 11694 },
359  { 11696, 11702 },
360  { 11704, 11710 },
361  { 11712, 11718 },
362  { 11720, 11726 },
363  { 11728, 11734 },
364  { 11736, 11742 },
365  { 11823, 11823 },
366  { 12293, 12294 },
367  { 12337, 12341 },
368  { 12347, 12348 },
369  { 12353, 12438 },
370  { 12445, 12447 },
371  { 12449, 12538 },
372  { 12540, 12543 },
373  { 12549, 12591 },
374  { 12593, 12686 },
375  { 12704, 12730 },
376  { 12784, 12799 },
377  { 13312, 19893 },
378  { 19968, 40943 },
379  { 40960, 42124 },
380  { 42192, 42237 },
381  { 42240, 42508 },
382  { 42512, 42527 },
383  { 42538, 42539 },
384  { 42560, 42606 },
385  { 42623, 42653 },
386  { 42656, 42725 },
387  { 42775, 42783 },
388  { 42786, 42888 },
389  { 42891, 42943 },
390  { 42946, 42950 },
391  { 42999, 43009 },
392  { 43011, 43013 },
393  { 43015, 43018 },
394  { 43020, 43042 },
395  { 43072, 43123 },
396  { 43138, 43187 },
397  { 43250, 43255 },
398  { 43259, 43259 },
399  { 43261, 43262 },
400  { 43274, 43301 },
401  { 43312, 43334 },
402  { 43360, 43388 },
403  { 43396, 43442 },
404  { 43471, 43471 },
405  { 43488, 43492 },
406  { 43494, 43503 },
407  { 43514, 43518 },
408  { 43520, 43560 },
409  { 43584, 43586 },
410  { 43588, 43595 },
411  { 43616, 43638 },
412  { 43642, 43642 },
413  { 43646, 43695 },
414  { 43697, 43697 },
415  { 43701, 43702 },
416  { 43705, 43709 },
417  { 43712, 43712 },
418  { 43714, 43714 },
419  { 43739, 43741 },
420  { 43744, 43754 },
421  { 43762, 43764 },
422  { 43777, 43782 },
423  { 43785, 43790 },
424  { 43793, 43798 },
425  { 43808, 43814 },
426  { 43816, 43822 },
427  { 43824, 43866 },
428  { 43868, 43879 },
429  { 43888, 44002 },
430  { 44032, 55203 },
431  { 55216, 55238 },
432  { 55243, 55291 },
433  { 63744, 64109 },
434  { 64112, 64217 },
435  { 64256, 64262 },
436  { 64275, 64279 },
437  { 64285, 64285 },
438  { 64287, 64296 },
439  { 64298, 64310 },
440  { 64312, 64316 },
441  { 64318, 64318 },
442  { 64320, 64321 },
443  { 64323, 64324 },
444  { 64326, 64433 },
445  { 64467, 64829 },
446  { 64848, 64911 },
447  { 64914, 64967 },
448  { 65008, 65019 },
449  { 65136, 65140 },
450  { 65142, 65276 },
451  { 65313, 65338 },
452  { 65345, 65370 },
453  { 65382, 65470 },
454  { 65474, 65479 },
455  { 65482, 65487 },
456  { 65490, 65495 },
457  { 65498, 65500 },
458 };
459 static const URange32 L_range32[] = {
460  { 65536, 65547 },
461  { 65549, 65574 },
462  { 65576, 65594 },
463  { 65596, 65597 },
464  { 65599, 65613 },
465  { 65616, 65629 },
466  { 65664, 65786 },
467  { 66176, 66204 },
468  { 66208, 66256 },
469  { 66304, 66335 },
470  { 66349, 66368 },
471  { 66370, 66377 },
472  { 66384, 66421 },
473  { 66432, 66461 },
474  { 66464, 66499 },
475  { 66504, 66511 },
476  { 66560, 66717 },
477  { 66736, 66771 },
478  { 66776, 66811 },
479  { 66816, 66855 },
480  { 66864, 66915 },
481  { 67072, 67382 },
482  { 67392, 67413 },
483  { 67424, 67431 },
484  { 67584, 67589 },
485  { 67592, 67592 },
486  { 67594, 67637 },
487  { 67639, 67640 },
488  { 67644, 67644 },
489  { 67647, 67669 },
490  { 67680, 67702 },
491  { 67712, 67742 },
492  { 67808, 67826 },
493  { 67828, 67829 },
494  { 67840, 67861 },
495  { 67872, 67897 },
496  { 67968, 68023 },
497  { 68030, 68031 },
498  { 68096, 68096 },
499  { 68112, 68115 },
500  { 68117, 68119 },
501  { 68121, 68149 },
502  { 68192, 68220 },
503  { 68224, 68252 },
504  { 68288, 68295 },
505  { 68297, 68324 },
506  { 68352, 68405 },
507  { 68416, 68437 },
508  { 68448, 68466 },
509  { 68480, 68497 },
510  { 68608, 68680 },
511  { 68736, 68786 },
512  { 68800, 68850 },
513  { 68864, 68899 },
514  { 69376, 69404 },
515  { 69415, 69415 },
516  { 69424, 69445 },
517  { 69600, 69622 },
518  { 69635, 69687 },
519  { 69763, 69807 },
520  { 69840, 69864 },
521  { 69891, 69926 },
522  { 69956, 69956 },
523  { 69968, 70002 },
524  { 70006, 70006 },
525  { 70019, 70066 },
526  { 70081, 70084 },
527  { 70106, 70106 },
528  { 70108, 70108 },
529  { 70144, 70161 },
530  { 70163, 70187 },
531  { 70272, 70278 },
532  { 70280, 70280 },
533  { 70282, 70285 },
534  { 70287, 70301 },
535  { 70303, 70312 },
536  { 70320, 70366 },
537  { 70405, 70412 },
538  { 70415, 70416 },
539  { 70419, 70440 },
540  { 70442, 70448 },
541  { 70450, 70451 },
542  { 70453, 70457 },
543  { 70461, 70461 },
544  { 70480, 70480 },
545  { 70493, 70497 },
546  { 70656, 70708 },
547  { 70727, 70730 },
548  { 70751, 70751 },
549  { 70784, 70831 },
550  { 70852, 70853 },
551  { 70855, 70855 },
552  { 71040, 71086 },
553  { 71128, 71131 },
554  { 71168, 71215 },
555  { 71236, 71236 },
556  { 71296, 71338 },
557  { 71352, 71352 },
558  { 71424, 71450 },
559  { 71680, 71723 },
560  { 71840, 71903 },
561  { 71935, 71935 },
562  { 72096, 72103 },
563  { 72106, 72144 },
564  { 72161, 72161 },
565  { 72163, 72163 },
566  { 72192, 72192 },
567  { 72203, 72242 },
568  { 72250, 72250 },
569  { 72272, 72272 },
570  { 72284, 72329 },
571  { 72349, 72349 },
572  { 72384, 72440 },
573  { 72704, 72712 },
574  { 72714, 72750 },
575  { 72768, 72768 },
576  { 72818, 72847 },
577  { 72960, 72966 },
578  { 72968, 72969 },
579  { 72971, 73008 },
580  { 73030, 73030 },
581  { 73056, 73061 },
582  { 73063, 73064 },
583  { 73066, 73097 },
584  { 73112, 73112 },
585  { 73440, 73458 },
586  { 73728, 74649 },
587  { 74880, 75075 },
588  { 77824, 78894 },
589  { 82944, 83526 },
590  { 92160, 92728 },
591  { 92736, 92766 },
592  { 92880, 92909 },
593  { 92928, 92975 },
594  { 92992, 92995 },
595  { 93027, 93047 },
596  { 93053, 93071 },
597  { 93760, 93823 },
598  { 93952, 94026 },
599  { 94032, 94032 },
600  { 94099, 94111 },
601  { 94176, 94177 },
602  { 94179, 94179 },
603  { 94208, 100343 },
604  { 100352, 101106 },
605  { 110592, 110878 },
606  { 110928, 110930 },
607  { 110948, 110951 },
608  { 110960, 111355 },
609  { 113664, 113770 },
610  { 113776, 113788 },
611  { 113792, 113800 },
612  { 113808, 113817 },
613  { 119808, 119892 },
614  { 119894, 119964 },
615  { 119966, 119967 },
616  { 119970, 119970 },
617  { 119973, 119974 },
618  { 119977, 119980 },
619  { 119982, 119993 },
620  { 119995, 119995 },
621  { 119997, 120003 },
622  { 120005, 120069 },
623  { 120071, 120074 },
624  { 120077, 120084 },
625  { 120086, 120092 },
626  { 120094, 120121 },
627  { 120123, 120126 },
628  { 120128, 120132 },
629  { 120134, 120134 },
630  { 120138, 120144 },
631  { 120146, 120485 },
632  { 120488, 120512 },
633  { 120514, 120538 },
634  { 120540, 120570 },
635  { 120572, 120596 },
636  { 120598, 120628 },
637  { 120630, 120654 },
638  { 120656, 120686 },
639  { 120688, 120712 },
640  { 120714, 120744 },
641  { 120746, 120770 },
642  { 120772, 120779 },
643  { 123136, 123180 },
644  { 123191, 123197 },
645  { 123214, 123214 },
646  { 123584, 123627 },
647  { 124928, 125124 },
648  { 125184, 125251 },
649  { 125259, 125259 },
650  { 126464, 126467 },
651  { 126469, 126495 },
652  { 126497, 126498 },
653  { 126500, 126500 },
654  { 126503, 126503 },
655  { 126505, 126514 },
656  { 126516, 126519 },
657  { 126521, 126521 },
658  { 126523, 126523 },
659  { 126530, 126530 },
660  { 126535, 126535 },
661  { 126537, 126537 },
662  { 126539, 126539 },
663  { 126541, 126543 },
664  { 126545, 126546 },
665  { 126548, 126548 },
666  { 126551, 126551 },
667  { 126553, 126553 },
668  { 126555, 126555 },
669  { 126557, 126557 },
670  { 126559, 126559 },
671  { 126561, 126562 },
672  { 126564, 126564 },
673  { 126567, 126570 },
674  { 126572, 126578 },
675  { 126580, 126583 },
676  { 126585, 126588 },
677  { 126590, 126590 },
678  { 126592, 126601 },
679  { 126603, 126619 },
680  { 126625, 126627 },
681  { 126629, 126633 },
682  { 126635, 126651 },
683  { 131072, 173782 },
684  { 173824, 177972 },
685  { 177984, 178205 },
686  { 178208, 183969 },
687  { 183984, 191456 },
688  { 194560, 195101 },
689 };
690 static const URange16 Ll_range16[] = {
691  { 97, 122 },
692  { 181, 181 },
693  { 223, 246 },
694  { 248, 255 },
695  { 257, 257 },
696  { 259, 259 },
697  { 261, 261 },
698  { 263, 263 },
699  { 265, 265 },
700  { 267, 267 },
701  { 269, 269 },
702  { 271, 271 },
703  { 273, 273 },
704  { 275, 275 },
705  { 277, 277 },
706  { 279, 279 },
707  { 281, 281 },
708  { 283, 283 },
709  { 285, 285 },
710  { 287, 287 },
711  { 289, 289 },
712  { 291, 291 },
713  { 293, 293 },
714  { 295, 295 },
715  { 297, 297 },
716  { 299, 299 },
717  { 301, 301 },
718  { 303, 303 },
719  { 305, 305 },
720  { 307, 307 },
721  { 309, 309 },
722  { 311, 312 },
723  { 314, 314 },
724  { 316, 316 },
725  { 318, 318 },
726  { 320, 320 },
727  { 322, 322 },
728  { 324, 324 },
729  { 326, 326 },
730  { 328, 329 },
731  { 331, 331 },
732  { 333, 333 },
733  { 335, 335 },
734  { 337, 337 },
735  { 339, 339 },
736  { 341, 341 },
737  { 343, 343 },
738  { 345, 345 },
739  { 347, 347 },
740  { 349, 349 },
741  { 351, 351 },
742  { 353, 353 },
743  { 355, 355 },
744  { 357, 357 },
745  { 359, 359 },
746  { 361, 361 },
747  { 363, 363 },
748  { 365, 365 },
749  { 367, 367 },
750  { 369, 369 },
751  { 371, 371 },
752  { 373, 373 },
753  { 375, 375 },
754  { 378, 378 },
755  { 380, 380 },
756  { 382, 384 },
757  { 387, 387 },
758  { 389, 389 },
759  { 392, 392 },
760  { 396, 397 },
761  { 402, 402 },
762  { 405, 405 },
763  { 409, 411 },
764  { 414, 414 },
765  { 417, 417 },
766  { 419, 419 },
767  { 421, 421 },
768  { 424, 424 },
769  { 426, 427 },
770  { 429, 429 },
771  { 432, 432 },
772  { 436, 436 },
773  { 438, 438 },
774  { 441, 442 },
775  { 445, 447 },
776  { 454, 454 },
777  { 457, 457 },
778  { 460, 460 },
779  { 462, 462 },
780  { 464, 464 },
781  { 466, 466 },
782  { 468, 468 },
783  { 470, 470 },
784  { 472, 472 },
785  { 474, 474 },
786  { 476, 477 },
787  { 479, 479 },
788  { 481, 481 },
789  { 483, 483 },
790  { 485, 485 },
791  { 487, 487 },
792  { 489, 489 },
793  { 491, 491 },
794  { 493, 493 },
795  { 495, 496 },
796  { 499, 499 },
797  { 501, 501 },
798  { 505, 505 },
799  { 507, 507 },
800  { 509, 509 },
801  { 511, 511 },
802  { 513, 513 },
803  { 515, 515 },
804  { 517, 517 },
805  { 519, 519 },
806  { 521, 521 },
807  { 523, 523 },
808  { 525, 525 },
809  { 527, 527 },
810  { 529, 529 },
811  { 531, 531 },
812  { 533, 533 },
813  { 535, 535 },
814  { 537, 537 },
815  { 539, 539 },
816  { 541, 541 },
817  { 543, 543 },
818  { 545, 545 },
819  { 547, 547 },
820  { 549, 549 },
821  { 551, 551 },
822  { 553, 553 },
823  { 555, 555 },
824  { 557, 557 },
825  { 559, 559 },
826  { 561, 561 },
827  { 563, 569 },
828  { 572, 572 },
829  { 575, 576 },
830  { 578, 578 },
831  { 583, 583 },
832  { 585, 585 },
833  { 587, 587 },
834  { 589, 589 },
835  { 591, 659 },
836  { 661, 687 },
837  { 881, 881 },
838  { 883, 883 },
839  { 887, 887 },
840  { 891, 893 },
841  { 912, 912 },
842  { 940, 974 },
843  { 976, 977 },
844  { 981, 983 },
845  { 985, 985 },
846  { 987, 987 },
847  { 989, 989 },
848  { 991, 991 },
849  { 993, 993 },
850  { 995, 995 },
851  { 997, 997 },
852  { 999, 999 },
853  { 1001, 1001 },
854  { 1003, 1003 },
855  { 1005, 1005 },
856  { 1007, 1011 },
857  { 1013, 1013 },
858  { 1016, 1016 },
859  { 1019, 1020 },
860  { 1072, 1119 },
861  { 1121, 1121 },
862  { 1123, 1123 },
863  { 1125, 1125 },
864  { 1127, 1127 },
865  { 1129, 1129 },
866  { 1131, 1131 },
867  { 1133, 1133 },
868  { 1135, 1135 },
869  { 1137, 1137 },
870  { 1139, 1139 },
871  { 1141, 1141 },
872  { 1143, 1143 },
873  { 1145, 1145 },
874  { 1147, 1147 },
875  { 1149, 1149 },
876  { 1151, 1151 },
877  { 1153, 1153 },
878  { 1163, 1163 },
879  { 1165, 1165 },
880  { 1167, 1167 },
881  { 1169, 1169 },
882  { 1171, 1171 },
883  { 1173, 1173 },
884  { 1175, 1175 },
885  { 1177, 1177 },
886  { 1179, 1179 },
887  { 1181, 1181 },
888  { 1183, 1183 },
889  { 1185, 1185 },
890  { 1187, 1187 },
891  { 1189, 1189 },
892  { 1191, 1191 },
893  { 1193, 1193 },
894  { 1195, 1195 },
895  { 1197, 1197 },
896  { 1199, 1199 },
897  { 1201, 1201 },
898  { 1203, 1203 },
899  { 1205, 1205 },
900  { 1207, 1207 },
901  { 1209, 1209 },
902  { 1211, 1211 },
903  { 1213, 1213 },
904  { 1215, 1215 },
905  { 1218, 1218 },
906  { 1220, 1220 },
907  { 1222, 1222 },
908  { 1224, 1224 },
909  { 1226, 1226 },
910  { 1228, 1228 },
911  { 1230, 1231 },
912  { 1233, 1233 },
913  { 1235, 1235 },
914  { 1237, 1237 },
915  { 1239, 1239 },
916  { 1241, 1241 },
917  { 1243, 1243 },
918  { 1245, 1245 },
919  { 1247, 1247 },
920  { 1249, 1249 },
921  { 1251, 1251 },
922  { 1253, 1253 },
923  { 1255, 1255 },
924  { 1257, 1257 },
925  { 1259, 1259 },
926  { 1261, 1261 },
927  { 1263, 1263 },
928  { 1265, 1265 },
929  { 1267, 1267 },
930  { 1269, 1269 },
931  { 1271, 1271 },
932  { 1273, 1273 },
933  { 1275, 1275 },
934  { 1277, 1277 },
935  { 1279, 1279 },
936  { 1281, 1281 },
937  { 1283, 1283 },
938  { 1285, 1285 },
939  { 1287, 1287 },
940  { 1289, 1289 },
941  { 1291, 1291 },
942  { 1293, 1293 },
943  { 1295, 1295 },
944  { 1297, 1297 },
945  { 1299, 1299 },
946  { 1301, 1301 },
947  { 1303, 1303 },
948  { 1305, 1305 },
949  { 1307, 1307 },
950  { 1309, 1309 },
951  { 1311, 1311 },
952  { 1313, 1313 },
953  { 1315, 1315 },
954  { 1317, 1317 },
955  { 1319, 1319 },
956  { 1321, 1321 },
957  { 1323, 1323 },
958  { 1325, 1325 },
959  { 1327, 1327 },
960  { 1376, 1416 },
961  { 4304, 4346 },
962  { 4349, 4351 },
963  { 5112, 5117 },
964  { 7296, 7304 },
965  { 7424, 7467 },
966  { 7531, 7543 },
967  { 7545, 7578 },
968  { 7681, 7681 },
969  { 7683, 7683 },
970  { 7685, 7685 },
971  { 7687, 7687 },
972  { 7689, 7689 },
973  { 7691, 7691 },
974  { 7693, 7693 },
975  { 7695, 7695 },
976  { 7697, 7697 },
977  { 7699, 7699 },
978  { 7701, 7701 },
979  { 7703, 7703 },
980  { 7705, 7705 },
981  { 7707, 7707 },
982  { 7709, 7709 },
983  { 7711, 7711 },
984  { 7713, 7713 },
985  { 7715, 7715 },
986  { 7717, 7717 },
987  { 7719, 7719 },
988  { 7721, 7721 },
989  { 7723, 7723 },
990  { 7725, 7725 },
991  { 7727, 7727 },
992  { 7729, 7729 },
993  { 7731, 7731 },
994  { 7733, 7733 },
995  { 7735, 7735 },
996  { 7737, 7737 },
997  { 7739, 7739 },
998  { 7741, 7741 },
999  { 7743, 7743 },
1000  { 7745, 7745 },
1001  { 7747, 7747 },
1002  { 7749, 7749 },
1003  { 7751, 7751 },
1004  { 7753, 7753 },
1005  { 7755, 7755 },
1006  { 7757, 7757 },
1007  { 7759, 7759 },
1008  { 7761, 7761 },
1009  { 7763, 7763 },
1010  { 7765, 7765 },
1011  { 7767, 7767 },
1012  { 7769, 7769 },
1013  { 7771, 7771 },
1014  { 7773, 7773 },
1015  { 7775, 7775 },
1016  { 7777, 7777 },
1017  { 7779, 7779 },
1018  { 7781, 7781 },
1019  { 7783, 7783 },
1020  { 7785, 7785 },
1021  { 7787, 7787 },
1022  { 7789, 7789 },
1023  { 7791, 7791 },
1024  { 7793, 7793 },
1025  { 7795, 7795 },
1026  { 7797, 7797 },
1027  { 7799, 7799 },
1028  { 7801, 7801 },
1029  { 7803, 7803 },
1030  { 7805, 7805 },
1031  { 7807, 7807 },
1032  { 7809, 7809 },
1033  { 7811, 7811 },
1034  { 7813, 7813 },
1035  { 7815, 7815 },
1036  { 7817, 7817 },
1037  { 7819, 7819 },
1038  { 7821, 7821 },
1039  { 7823, 7823 },
1040  { 7825, 7825 },
1041  { 7827, 7827 },
1042  { 7829, 7837 },
1043  { 7839, 7839 },
1044  { 7841, 7841 },
1045  { 7843, 7843 },
1046  { 7845, 7845 },
1047  { 7847, 7847 },
1048  { 7849, 7849 },
1049  { 7851, 7851 },
1050  { 7853, 7853 },
1051  { 7855, 7855 },
1052  { 7857, 7857 },
1053  { 7859, 7859 },
1054  { 7861, 7861 },
1055  { 7863, 7863 },
1056  { 7865, 7865 },
1057  { 7867, 7867 },
1058  { 7869, 7869 },
1059  { 7871, 7871 },
1060  { 7873, 7873 },
1061  { 7875, 7875 },
1062  { 7877, 7877 },
1063  { 7879, 7879 },
1064  { 7881, 7881 },
1065  { 7883, 7883 },
1066  { 7885, 7885 },
1067  { 7887, 7887 },
1068  { 7889, 7889 },
1069  { 7891, 7891 },
1070  { 7893, 7893 },
1071  { 7895, 7895 },
1072  { 7897, 7897 },
1073  { 7899, 7899 },
1074  { 7901, 7901 },
1075  { 7903, 7903 },
1076  { 7905, 7905 },
1077  { 7907, 7907 },
1078  { 7909, 7909 },
1079  { 7911, 7911 },
1080  { 7913, 7913 },
1081  { 7915, 7915 },
1082  { 7917, 7917 },
1083  { 7919, 7919 },
1084  { 7921, 7921 },
1085  { 7923, 7923 },
1086  { 7925, 7925 },
1087  { 7927, 7927 },
1088  { 7929, 7929 },
1089  { 7931, 7931 },
1090  { 7933, 7933 },
1091  { 7935, 7943 },
1092  { 7952, 7957 },
1093  { 7968, 7975 },
1094  { 7984, 7991 },
1095  { 8000, 8005 },
1096  { 8016, 8023 },
1097  { 8032, 8039 },
1098  { 8048, 8061 },
1099  { 8064, 8071 },
1100  { 8080, 8087 },
1101  { 8096, 8103 },
1102  { 8112, 8116 },
1103  { 8118, 8119 },
1104  { 8126, 8126 },
1105  { 8130, 8132 },
1106  { 8134, 8135 },
1107  { 8144, 8147 },
1108  { 8150, 8151 },
1109  { 8160, 8167 },
1110  { 8178, 8180 },
1111  { 8182, 8183 },
1112  { 8458, 8458 },
1113  { 8462, 8463 },
1114  { 8467, 8467 },
1115  { 8495, 8495 },
1116  { 8500, 8500 },
1117  { 8505, 8505 },
1118  { 8508, 8509 },
1119  { 8518, 8521 },
1120  { 8526, 8526 },
1121  { 8580, 8580 },
1122  { 11312, 11358 },
1123  { 11361, 11361 },
1124  { 11365, 11366 },
1125  { 11368, 11368 },
1126  { 11370, 11370 },
1127  { 11372, 11372 },
1128  { 11377, 11377 },
1129  { 11379, 11380 },
1130  { 11382, 11387 },
1131  { 11393, 11393 },
1132  { 11395, 11395 },
1133  { 11397, 11397 },
1134  { 11399, 11399 },
1135  { 11401, 11401 },
1136  { 11403, 11403 },
1137  { 11405, 11405 },
1138  { 11407, 11407 },
1139  { 11409, 11409 },
1140  { 11411, 11411 },
1141  { 11413, 11413 },
1142  { 11415, 11415 },
1143  { 11417, 11417 },
1144  { 11419, 11419 },
1145  { 11421, 11421 },
1146  { 11423, 11423 },
1147  { 11425, 11425 },
1148  { 11427, 11427 },
1149  { 11429, 11429 },
1150  { 11431, 11431 },
1151  { 11433, 11433 },
1152  { 11435, 11435 },
1153  { 11437, 11437 },
1154  { 11439, 11439 },
1155  { 11441, 11441 },
1156  { 11443, 11443 },
1157  { 11445, 11445 },
1158  { 11447, 11447 },
1159  { 11449, 11449 },
1160  { 11451, 11451 },
1161  { 11453, 11453 },
1162  { 11455, 11455 },
1163  { 11457, 11457 },
1164  { 11459, 11459 },
1165  { 11461, 11461 },
1166  { 11463, 11463 },
1167  { 11465, 11465 },
1168  { 11467, 11467 },
1169  { 11469, 11469 },
1170  { 11471, 11471 },
1171  { 11473, 11473 },
1172  { 11475, 11475 },
1173  { 11477, 11477 },
1174  { 11479, 11479 },
1175  { 11481, 11481 },
1176  { 11483, 11483 },
1177  { 11485, 11485 },
1178  { 11487, 11487 },
1179  { 11489, 11489 },
1180  { 11491, 11492 },
1181  { 11500, 11500 },
1182  { 11502, 11502 },
1183  { 11507, 11507 },
1184  { 11520, 11557 },
1185  { 11559, 11559 },
1186  { 11565, 11565 },
1187  { 42561, 42561 },
1188  { 42563, 42563 },
1189  { 42565, 42565 },
1190  { 42567, 42567 },
1191  { 42569, 42569 },
1192  { 42571, 42571 },
1193  { 42573, 42573 },
1194  { 42575, 42575 },
1195  { 42577, 42577 },
1196  { 42579, 42579 },
1197  { 42581, 42581 },
1198  { 42583, 42583 },
1199  { 42585, 42585 },
1200  { 42587, 42587 },
1201  { 42589, 42589 },
1202  { 42591, 42591 },
1203  { 42593, 42593 },
1204  { 42595, 42595 },
1205  { 42597, 42597 },
1206  { 42599, 42599 },
1207  { 42601, 42601 },
1208  { 42603, 42603 },
1209  { 42605, 42605 },
1210  { 42625, 42625 },
1211  { 42627, 42627 },
1212  { 42629, 42629 },
1213  { 42631, 42631 },
1214  { 42633, 42633 },
1215  { 42635, 42635 },
1216  { 42637, 42637 },
1217  { 42639, 42639 },
1218  { 42641, 42641 },
1219  { 42643, 42643 },
1220  { 42645, 42645 },
1221  { 42647, 42647 },
1222  { 42649, 42649 },
1223  { 42651, 42651 },
1224  { 42787, 42787 },
1225  { 42789, 42789 },
1226  { 42791, 42791 },
1227  { 42793, 42793 },
1228  { 42795, 42795 },
1229  { 42797, 42797 },
1230  { 42799, 42801 },
1231  { 42803, 42803 },
1232  { 42805, 42805 },
1233  { 42807, 42807 },
1234  { 42809, 42809 },
1235  { 42811, 42811 },
1236  { 42813, 42813 },
1237  { 42815, 42815 },
1238  { 42817, 42817 },
1239  { 42819, 42819 },
1240  { 42821, 42821 },
1241  { 42823, 42823 },
1242  { 42825, 42825 },
1243  { 42827, 42827 },
1244  { 42829, 42829 },
1245  { 42831, 42831 },
1246  { 42833, 42833 },
1247  { 42835, 42835 },
1248  { 42837, 42837 },
1249  { 42839, 42839 },
1250  { 42841, 42841 },
1251  { 42843, 42843 },
1252  { 42845, 42845 },
1253  { 42847, 42847 },
1254  { 42849, 42849 },
1255  { 42851, 42851 },
1256  { 42853, 42853 },
1257  { 42855, 42855 },
1258  { 42857, 42857 },
1259  { 42859, 42859 },
1260  { 42861, 42861 },
1261  { 42863, 42863 },
1262  { 42865, 42872 },
1263  { 42874, 42874 },
1264  { 42876, 42876 },
1265  { 42879, 42879 },
1266  { 42881, 42881 },
1267  { 42883, 42883 },
1268  { 42885, 42885 },
1269  { 42887, 42887 },
1270  { 42892, 42892 },
1271  { 42894, 42894 },
1272  { 42897, 42897 },
1273  { 42899, 42901 },
1274  { 42903, 42903 },
1275  { 42905, 42905 },
1276  { 42907, 42907 },
1277  { 42909, 42909 },
1278  { 42911, 42911 },
1279  { 42913, 42913 },
1280  { 42915, 42915 },
1281  { 42917, 42917 },
1282  { 42919, 42919 },
1283  { 42921, 42921 },
1284  { 42927, 42927 },
1285  { 42933, 42933 },
1286  { 42935, 42935 },
1287  { 42937, 42937 },
1288  { 42939, 42939 },
1289  { 42941, 42941 },
1290  { 42943, 42943 },
1291  { 42947, 42947 },
1292  { 43002, 43002 },
1293  { 43824, 43866 },
1294  { 43872, 43879 },
1295  { 43888, 43967 },
1296  { 64256, 64262 },
1297  { 64275, 64279 },
1298  { 65345, 65370 },
1299 };
1300 static const URange32 Ll_range32[] = {
1301  { 66600, 66639 },
1302  { 66776, 66811 },
1303  { 68800, 68850 },
1304  { 71872, 71903 },
1305  { 93792, 93823 },
1306  { 119834, 119859 },
1307  { 119886, 119892 },
1308  { 119894, 119911 },
1309  { 119938, 119963 },
1310  { 119990, 119993 },
1311  { 119995, 119995 },
1312  { 119997, 120003 },
1313  { 120005, 120015 },
1314  { 120042, 120067 },
1315  { 120094, 120119 },
1316  { 120146, 120171 },
1317  { 120198, 120223 },
1318  { 120250, 120275 },
1319  { 120302, 120327 },
1320  { 120354, 120379 },
1321  { 120406, 120431 },
1322  { 120458, 120485 },
1323  { 120514, 120538 },
1324  { 120540, 120545 },
1325  { 120572, 120596 },
1326  { 120598, 120603 },
1327  { 120630, 120654 },
1328  { 120656, 120661 },
1329  { 120688, 120712 },
1330  { 120714, 120719 },
1331  { 120746, 120770 },
1332  { 120772, 120777 },
1333  { 120779, 120779 },
1334  { 125218, 125251 },
1335 };
1336 static const URange16 Lm_range16[] = {
1337  { 688, 705 },
1338  { 710, 721 },
1339  { 736, 740 },
1340  { 748, 748 },
1341  { 750, 750 },
1342  { 884, 884 },
1343  { 890, 890 },
1344  { 1369, 1369 },
1345  { 1600, 1600 },
1346  { 1765, 1766 },
1347  { 2036, 2037 },
1348  { 2042, 2042 },
1349  { 2074, 2074 },
1350  { 2084, 2084 },
1351  { 2088, 2088 },
1352  { 2417, 2417 },
1353  { 3654, 3654 },
1354  { 3782, 3782 },
1355  { 4348, 4348 },
1356  { 6103, 6103 },
1357  { 6211, 6211 },
1358  { 6823, 6823 },
1359  { 7288, 7293 },
1360  { 7468, 7530 },
1361  { 7544, 7544 },
1362  { 7579, 7615 },
1363  { 8305, 8305 },
1364  { 8319, 8319 },
1365  { 8336, 8348 },
1366  { 11388, 11389 },
1367  { 11631, 11631 },
1368  { 11823, 11823 },
1369  { 12293, 12293 },
1370  { 12337, 12341 },
1371  { 12347, 12347 },
1372  { 12445, 12446 },
1373  { 12540, 12542 },
1374  { 40981, 40981 },
1375  { 42232, 42237 },
1376  { 42508, 42508 },
1377  { 42623, 42623 },
1378  { 42652, 42653 },
1379  { 42775, 42783 },
1380  { 42864, 42864 },
1381  { 42888, 42888 },
1382  { 43000, 43001 },
1383  { 43471, 43471 },
1384  { 43494, 43494 },
1385  { 43632, 43632 },
1386  { 43741, 43741 },
1387  { 43763, 43764 },
1388  { 43868, 43871 },
1389  { 65392, 65392 },
1390  { 65438, 65439 },
1391 };
1392 static const URange32 Lm_range32[] = {
1393  { 92992, 92995 },
1394  { 94099, 94111 },
1395  { 94176, 94177 },
1396  { 94179, 94179 },
1397  { 123191, 123197 },
1398  { 125259, 125259 },
1399 };
1400 static const URange16 Lo_range16[] = {
1401  { 170, 170 },
1402  { 186, 186 },
1403  { 443, 443 },
1404  { 448, 451 },
1405  { 660, 660 },
1406  { 1488, 1514 },
1407  { 1519, 1522 },
1408  { 1568, 1599 },
1409  { 1601, 1610 },
1410  { 1646, 1647 },
1411  { 1649, 1747 },
1412  { 1749, 1749 },
1413  { 1774, 1775 },
1414  { 1786, 1788 },
1415  { 1791, 1791 },
1416  { 1808, 1808 },
1417  { 1810, 1839 },
1418  { 1869, 1957 },
1419  { 1969, 1969 },
1420  { 1994, 2026 },
1421  { 2048, 2069 },
1422  { 2112, 2136 },
1423  { 2144, 2154 },
1424  { 2208, 2228 },
1425  { 2230, 2237 },
1426  { 2308, 2361 },
1427  { 2365, 2365 },
1428  { 2384, 2384 },
1429  { 2392, 2401 },
1430  { 2418, 2432 },
1431  { 2437, 2444 },
1432  { 2447, 2448 },
1433  { 2451, 2472 },
1434  { 2474, 2480 },
1435  { 2482, 2482 },
1436  { 2486, 2489 },
1437  { 2493, 2493 },
1438  { 2510, 2510 },
1439  { 2524, 2525 },
1440  { 2527, 2529 },
1441  { 2544, 2545 },
1442  { 2556, 2556 },
1443  { 2565, 2570 },
1444  { 2575, 2576 },
1445  { 2579, 2600 },
1446  { 2602, 2608 },
1447  { 2610, 2611 },
1448  { 2613, 2614 },
1449  { 2616, 2617 },
1450  { 2649, 2652 },
1451  { 2654, 2654 },
1452  { 2674, 2676 },
1453  { 2693, 2701 },
1454  { 2703, 2705 },
1455  { 2707, 2728 },
1456  { 2730, 2736 },
1457  { 2738, 2739 },
1458  { 2741, 2745 },
1459  { 2749, 2749 },
1460  { 2768, 2768 },
1461  { 2784, 2785 },
1462  { 2809, 2809 },
1463  { 2821, 2828 },
1464  { 2831, 2832 },
1465  { 2835, 2856 },
1466  { 2858, 2864 },
1467  { 2866, 2867 },
1468  { 2869, 2873 },
1469  { 2877, 2877 },
1470  { 2908, 2909 },
1471  { 2911, 2913 },
1472  { 2929, 2929 },
1473  { 2947, 2947 },
1474  { 2949, 2954 },
1475  { 2958, 2960 },
1476  { 2962, 2965 },
1477  { 2969, 2970 },
1478  { 2972, 2972 },
1479  { 2974, 2975 },
1480  { 2979, 2980 },
1481  { 2984, 2986 },
1482  { 2990, 3001 },
1483  { 3024, 3024 },
1484  { 3077, 3084 },
1485  { 3086, 3088 },
1486  { 3090, 3112 },
1487  { 3114, 3129 },
1488  { 3133, 3133 },
1489  { 3160, 3162 },
1490  { 3168, 3169 },
1491  { 3200, 3200 },
1492  { 3205, 3212 },
1493  { 3214, 3216 },
1494  { 3218, 3240 },
1495  { 3242, 3251 },
1496  { 3253, 3257 },
1497  { 3261, 3261 },
1498  { 3294, 3294 },
1499  { 3296, 3297 },
1500  { 3313, 3314 },
1501  { 3333, 3340 },
1502  { 3342, 3344 },
1503  { 3346, 3386 },
1504  { 3389, 3389 },
1505  { 3406, 3406 },
1506  { 3412, 3414 },
1507  { 3423, 3425 },
1508  { 3450, 3455 },
1509  { 3461, 3478 },
1510  { 3482, 3505 },
1511  { 3507, 3515 },
1512  { 3517, 3517 },
1513  { 3520, 3526 },
1514  { 3585, 3632 },
1515  { 3634, 3635 },
1516  { 3648, 3653 },
1517  { 3713, 3714 },
1518  { 3716, 3716 },
1519  { 3718, 3722 },
1520  { 3724, 3747 },
1521  { 3749, 3749 },
1522  { 3751, 3760 },
1523  { 3762, 3763 },
1524  { 3773, 3773 },
1525  { 3776, 3780 },
1526  { 3804, 3807 },
1527  { 3840, 3840 },
1528  { 3904, 3911 },
1529  { 3913, 3948 },
1530  { 3976, 3980 },
1531  { 4096, 4138 },
1532  { 4159, 4159 },
1533  { 4176, 4181 },
1534  { 4186, 4189 },
1535  { 4193, 4193 },
1536  { 4197, 4198 },
1537  { 4206, 4208 },
1538  { 4213, 4225 },
1539  { 4238, 4238 },
1540  { 4352, 4680 },
1541  { 4682, 4685 },
1542  { 4688, 4694 },
1543  { 4696, 4696 },
1544  { 4698, 4701 },
1545  { 4704, 4744 },
1546  { 4746, 4749 },
1547  { 4752, 4784 },
1548  { 4786, 4789 },
1549  { 4792, 4798 },
1550  { 4800, 4800 },
1551  { 4802, 4805 },
1552  { 4808, 4822 },
1553  { 4824, 4880 },
1554  { 4882, 4885 },
1555  { 4888, 4954 },
1556  { 4992, 5007 },
1557  { 5121, 5740 },
1558  { 5743, 5759 },
1559  { 5761, 5786 },
1560  { 5792, 5866 },
1561  { 5873, 5880 },
1562  { 5888, 5900 },
1563  { 5902, 5905 },
1564  { 5920, 5937 },
1565  { 5952, 5969 },
1566  { 5984, 5996 },
1567  { 5998, 6000 },
1568  { 6016, 6067 },
1569  { 6108, 6108 },
1570  { 6176, 6210 },
1571  { 6212, 6264 },
1572  { 6272, 6276 },
1573  { 6279, 6312 },
1574  { 6314, 6314 },
1575  { 6320, 6389 },
1576  { 6400, 6430 },
1577  { 6480, 6509 },
1578  { 6512, 6516 },
1579  { 6528, 6571 },
1580  { 6576, 6601 },
1581  { 6656, 6678 },
1582  { 6688, 6740 },
1583  { 6917, 6963 },
1584  { 6981, 6987 },
1585  { 7043, 7072 },
1586  { 7086, 7087 },
1587  { 7098, 7141 },
1588  { 7168, 7203 },
1589  { 7245, 7247 },
1590  { 7258, 7287 },
1591  { 7401, 7404 },
1592  { 7406, 7411 },
1593  { 7413, 7414 },
1594  { 7418, 7418 },
1595  { 8501, 8504 },
1596  { 11568, 11623 },
1597  { 11648, 11670 },
1598  { 11680, 11686 },
1599  { 11688, 11694 },
1600  { 11696, 11702 },
1601  { 11704, 11710 },
1602  { 11712, 11718 },
1603  { 11720, 11726 },
1604  { 11728, 11734 },
1605  { 11736, 11742 },
1606  { 12294, 12294 },
1607  { 12348, 12348 },
1608  { 12353, 12438 },
1609  { 12447, 12447 },
1610  { 12449, 12538 },
1611  { 12543, 12543 },
1612  { 12549, 12591 },
1613  { 12593, 12686 },
1614  { 12704, 12730 },
1615  { 12784, 12799 },
1616  { 13312, 19893 },
1617  { 19968, 40943 },
1618  { 40960, 40980 },
1619  { 40982, 42124 },
1620  { 42192, 42231 },
1621  { 42240, 42507 },
1622  { 42512, 42527 },
1623  { 42538, 42539 },
1624  { 42606, 42606 },
1625  { 42656, 42725 },
1626  { 42895, 42895 },
1627  { 42999, 42999 },
1628  { 43003, 43009 },
1629  { 43011, 43013 },
1630  { 43015, 43018 },
1631  { 43020, 43042 },
1632  { 43072, 43123 },
1633  { 43138, 43187 },
1634  { 43250, 43255 },
1635  { 43259, 43259 },
1636  { 43261, 43262 },
1637  { 43274, 43301 },
1638  { 43312, 43334 },
1639  { 43360, 43388 },
1640  { 43396, 43442 },
1641  { 43488, 43492 },
1642  { 43495, 43503 },
1643  { 43514, 43518 },
1644  { 43520, 43560 },
1645  { 43584, 43586 },
1646  { 43588, 43595 },
1647  { 43616, 43631 },
1648  { 43633, 43638 },
1649  { 43642, 43642 },
1650  { 43646, 43695 },
1651  { 43697, 43697 },
1652  { 43701, 43702 },
1653  { 43705, 43709 },
1654  { 43712, 43712 },
1655  { 43714, 43714 },
1656  { 43739, 43740 },
1657  { 43744, 43754 },
1658  { 43762, 43762 },
1659  { 43777, 43782 },
1660  { 43785, 43790 },
1661  { 43793, 43798 },
1662  { 43808, 43814 },
1663  { 43816, 43822 },
1664  { 43968, 44002 },
1665  { 44032, 55203 },
1666  { 55216, 55238 },
1667  { 55243, 55291 },
1668  { 63744, 64109 },
1669  { 64112, 64217 },
1670  { 64285, 64285 },
1671  { 64287, 64296 },
1672  { 64298, 64310 },
1673  { 64312, 64316 },
1674  { 64318, 64318 },
1675  { 64320, 64321 },
1676  { 64323, 64324 },
1677  { 64326, 64433 },
1678  { 64467, 64829 },
1679  { 64848, 64911 },
1680  { 64914, 64967 },
1681  { 65008, 65019 },
1682  { 65136, 65140 },
1683  { 65142, 65276 },
1684  { 65382, 65391 },
1685  { 65393, 65437 },
1686  { 65440, 65470 },
1687  { 65474, 65479 },
1688  { 65482, 65487 },
1689  { 65490, 65495 },
1690  { 65498, 65500 },
1691 };
1692 static const URange32 Lo_range32[] = {
1693  { 65536, 65547 },
1694  { 65549, 65574 },
1695  { 65576, 65594 },
1696  { 65596, 65597 },
1697  { 65599, 65613 },
1698  { 65616, 65629 },
1699  { 65664, 65786 },
1700  { 66176, 66204 },
1701  { 66208, 66256 },
1702  { 66304, 66335 },
1703  { 66349, 66368 },
1704  { 66370, 66377 },
1705  { 66384, 66421 },
1706  { 66432, 66461 },
1707  { 66464, 66499 },
1708  { 66504, 66511 },
1709  { 66640, 66717 },
1710  { 66816, 66855 },
1711  { 66864, 66915 },
1712  { 67072, 67382 },
1713  { 67392, 67413 },
1714  { 67424, 67431 },
1715  { 67584, 67589 },
1716  { 67592, 67592 },
1717  { 67594, 67637 },
1718  { 67639, 67640 },
1719  { 67644, 67644 },
1720  { 67647, 67669 },
1721  { 67680, 67702 },
1722  { 67712, 67742 },
1723  { 67808, 67826 },
1724  { 67828, 67829 },
1725  { 67840, 67861 },
1726  { 67872, 67897 },
1727  { 67968, 68023 },
1728  { 68030, 68031 },
1729  { 68096, 68096 },
1730  { 68112, 68115 },
1731  { 68117, 68119 },
1732  { 68121, 68149 },
1733  { 68192, 68220 },
1734  { 68224, 68252 },
1735  { 68288, 68295 },
1736  { 68297, 68324 },
1737  { 68352, 68405 },
1738  { 68416, 68437 },
1739  { 68448, 68466 },
1740  { 68480, 68497 },
1741  { 68608, 68680 },
1742  { 68864, 68899 },
1743  { 69376, 69404 },
1744  { 69415, 69415 },
1745  { 69424, 69445 },
1746  { 69600, 69622 },
1747  { 69635, 69687 },
1748  { 69763, 69807 },
1749  { 69840, 69864 },
1750  { 69891, 69926 },
1751  { 69956, 69956 },
1752  { 69968, 70002 },
1753  { 70006, 70006 },
1754  { 70019, 70066 },
1755  { 70081, 70084 },
1756  { 70106, 70106 },
1757  { 70108, 70108 },
1758  { 70144, 70161 },
1759  { 70163, 70187 },
1760  { 70272, 70278 },
1761  { 70280, 70280 },
1762  { 70282, 70285 },
1763  { 70287, 70301 },
1764  { 70303, 70312 },
1765  { 70320, 70366 },
1766  { 70405, 70412 },
1767  { 70415, 70416 },
1768  { 70419, 70440 },
1769  { 70442, 70448 },
1770  { 70450, 70451 },
1771  { 70453, 70457 },
1772  { 70461, 70461 },
1773  { 70480, 70480 },
1774  { 70493, 70497 },
1775  { 70656, 70708 },
1776  { 70727, 70730 },
1777  { 70751, 70751 },
1778  { 70784, 70831 },
1779  { 70852, 70853 },
1780  { 70855, 70855 },
1781  { 71040, 71086 },
1782  { 71128, 71131 },
1783  { 71168, 71215 },
1784  { 71236, 71236 },
1785  { 71296, 71338 },
1786  { 71352, 71352 },
1787  { 71424, 71450 },
1788  { 71680, 71723 },
1789  { 71935, 71935 },
1790  { 72096, 72103 },
1791  { 72106, 72144 },
1792  { 72161, 72161 },
1793  { 72163, 72163 },
1794  { 72192, 72192 },
1795  { 72203, 72242 },
1796  { 72250, 72250 },
1797  { 72272, 72272 },
1798  { 72284, 72329 },
1799  { 72349, 72349 },
1800  { 72384, 72440 },
1801  { 72704, 72712 },
1802  { 72714, 72750 },
1803  { 72768, 72768 },
1804  { 72818, 72847 },
1805  { 72960, 72966 },
1806  { 72968, 72969 },
1807  { 72971, 73008 },
1808  { 73030, 73030 },
1809  { 73056, 73061 },
1810  { 73063, 73064 },
1811  { 73066, 73097 },
1812  { 73112, 73112 },
1813  { 73440, 73458 },
1814  { 73728, 74649 },
1815  { 74880, 75075 },
1816  { 77824, 78894 },
1817  { 82944, 83526 },
1818  { 92160, 92728 },
1819  { 92736, 92766 },
1820  { 92880, 92909 },
1821  { 92928, 92975 },
1822  { 93027, 93047 },
1823  { 93053, 93071 },
1824  { 93952, 94026 },
1825  { 94032, 94032 },
1826  { 94208, 100343 },
1827  { 100352, 101106 },
1828  { 110592, 110878 },
1829  { 110928, 110930 },
1830  { 110948, 110951 },
1831  { 110960, 111355 },
1832  { 113664, 113770 },
1833  { 113776, 113788 },
1834  { 113792, 113800 },
1835  { 113808, 113817 },
1836  { 123136, 123180 },
1837  { 123214, 123214 },
1838  { 123584, 123627 },
1839  { 124928, 125124 },
1840  { 126464, 126467 },
1841  { 126469, 126495 },
1842  { 126497, 126498 },
1843  { 126500, 126500 },
1844  { 126503, 126503 },
1845  { 126505, 126514 },
1846  { 126516, 126519 },
1847  { 126521, 126521 },
1848  { 126523, 126523 },
1849  { 126530, 126530 },
1850  { 126535, 126535 },
1851  { 126537, 126537 },
1852  { 126539, 126539 },
1853  { 126541, 126543 },
1854  { 126545, 126546 },
1855  { 126548, 126548 },
1856  { 126551, 126551 },
1857  { 126553, 126553 },
1858  { 126555, 126555 },
1859  { 126557, 126557 },
1860  { 126559, 126559 },
1861  { 126561, 126562 },
1862  { 126564, 126564 },
1863  { 126567, 126570 },
1864  { 126572, 126578 },
1865  { 126580, 126583 },
1866  { 126585, 126588 },
1867  { 126590, 126590 },
1868  { 126592, 126601 },
1869  { 126603, 126619 },
1870  { 126625, 126627 },
1871  { 126629, 126633 },
1872  { 126635, 126651 },
1873  { 131072, 173782 },
1874  { 173824, 177972 },
1875  { 177984, 178205 },
1876  { 178208, 183969 },
1877  { 183984, 191456 },
1878  { 194560, 195101 },
1879 };
1880 static const URange16 Lt_range16[] = {
1881  { 453, 453 },
1882  { 456, 456 },
1883  { 459, 459 },
1884  { 498, 498 },
1885  { 8072, 8079 },
1886  { 8088, 8095 },
1887  { 8104, 8111 },
1888  { 8124, 8124 },
1889  { 8140, 8140 },
1890  { 8188, 8188 },
1891 };
1892 static const URange16 Lu_range16[] = {
1893  { 65, 90 },
1894  { 192, 214 },
1895  { 216, 222 },
1896  { 256, 256 },
1897  { 258, 258 },
1898  { 260, 260 },
1899  { 262, 262 },
1900  { 264, 264 },
1901  { 266, 266 },
1902  { 268, 268 },
1903  { 270, 270 },
1904  { 272, 272 },
1905  { 274, 274 },
1906  { 276, 276 },
1907  { 278, 278 },
1908  { 280, 280 },
1909  { 282, 282 },
1910  { 284, 284 },
1911  { 286, 286 },
1912  { 288, 288 },
1913  { 290, 290 },
1914  { 292, 292 },
1915  { 294, 294 },
1916  { 296, 296 },
1917  { 298, 298 },
1918  { 300, 300 },
1919  { 302, 302 },
1920  { 304, 304 },
1921  { 306, 306 },
1922  { 308, 308 },
1923  { 310, 310 },
1924  { 313, 313 },
1925  { 315, 315 },
1926  { 317, 317 },
1927  { 319, 319 },
1928  { 321, 321 },
1929  { 323, 323 },
1930  { 325, 325 },
1931  { 327, 327 },
1932  { 330, 330 },
1933  { 332, 332 },
1934  { 334, 334 },
1935  { 336, 336 },
1936  { 338, 338 },
1937  { 340, 340 },
1938  { 342, 342 },
1939  { 344, 344 },
1940  { 346, 346 },
1941  { 348, 348 },
1942  { 350, 350 },
1943  { 352, 352 },
1944  { 354, 354 },
1945  { 356, 356 },
1946  { 358, 358 },
1947  { 360, 360 },
1948  { 362, 362 },
1949  { 364, 364 },
1950  { 366, 366 },
1951  { 368, 368 },
1952  { 370, 370 },
1953  { 372, 372 },
1954  { 374, 374 },
1955  { 376, 377 },
1956  { 379, 379 },
1957  { 381, 381 },
1958  { 385, 386 },
1959  { 388, 388 },
1960  { 390, 391 },
1961  { 393, 395 },
1962  { 398, 401 },
1963  { 403, 404 },
1964  { 406, 408 },
1965  { 412, 413 },
1966  { 415, 416 },
1967  { 418, 418 },
1968  { 420, 420 },
1969  { 422, 423 },
1970  { 425, 425 },
1971  { 428, 428 },
1972  { 430, 431 },
1973  { 433, 435 },
1974  { 437, 437 },
1975  { 439, 440 },
1976  { 444, 444 },
1977  { 452, 452 },
1978  { 455, 455 },
1979  { 458, 458 },
1980  { 461, 461 },
1981  { 463, 463 },
1982  { 465, 465 },
1983  { 467, 467 },
1984  { 469, 469 },
1985  { 471, 471 },
1986  { 473, 473 },
1987  { 475, 475 },
1988  { 478, 478 },
1989  { 480, 480 },
1990  { 482, 482 },
1991  { 484, 484 },
1992  { 486, 486 },
1993  { 488, 488 },
1994  { 490, 490 },
1995  { 492, 492 },
1996  { 494, 494 },
1997  { 497, 497 },
1998  { 500, 500 },
1999  { 502, 504 },
2000  { 506, 506 },
2001  { 508, 508 },
2002  { 510, 510 },
2003  { 512, 512 },
2004  { 514, 514 },
2005  { 516, 516 },
2006  { 518, 518 },
2007  { 520, 520 },
2008  { 522, 522 },
2009  { 524, 524 },
2010  { 526, 526 },
2011  { 528, 528 },
2012  { 530, 530 },
2013  { 532, 532 },
2014  { 534, 534 },
2015  { 536, 536 },
2016  { 538, 538 },
2017  { 540, 540 },
2018  { 542, 542 },
2019  { 544, 544 },
2020  { 546, 546 },
2021  { 548, 548 },
2022  { 550, 550 },
2023  { 552, 552 },
2024  { 554, 554 },
2025  { 556, 556 },
2026  { 558, 558 },
2027  { 560, 560 },
2028  { 562, 562 },
2029  { 570, 571 },
2030  { 573, 574 },
2031  { 577, 577 },
2032  { 579, 582 },
2033  { 584, 584 },
2034  { 586, 586 },
2035  { 588, 588 },
2036  { 590, 590 },
2037  { 880, 880 },
2038  { 882, 882 },
2039  { 886, 886 },
2040  { 895, 895 },
2041  { 902, 902 },
2042  { 904, 906 },
2043  { 908, 908 },
2044  { 910, 911 },
2045  { 913, 929 },
2046  { 931, 939 },
2047  { 975, 975 },
2048  { 978, 980 },
2049  { 984, 984 },
2050  { 986, 986 },
2051  { 988, 988 },
2052  { 990, 990 },
2053  { 992, 992 },
2054  { 994, 994 },
2055  { 996, 996 },
2056  { 998, 998 },
2057  { 1000, 1000 },
2058  { 1002, 1002 },
2059  { 1004, 1004 },
2060  { 1006, 1006 },
2061  { 1012, 1012 },
2062  { 1015, 1015 },
2063  { 1017, 1018 },
2064  { 1021, 1071 },
2065  { 1120, 1120 },
2066  { 1122, 1122 },
2067  { 1124, 1124 },
2068  { 1126, 1126 },
2069  { 1128, 1128 },
2070  { 1130, 1130 },
2071  { 1132, 1132 },
2072  { 1134, 1134 },
2073  { 1136, 1136 },
2074  { 1138, 1138 },
2075  { 1140, 1140 },
2076  { 1142, 1142 },
2077  { 1144, 1144 },
2078  { 1146, 1146 },
2079  { 1148, 1148 },
2080  { 1150, 1150 },
2081  { 1152, 1152 },
2082  { 1162, 1162 },
2083  { 1164, 1164 },
2084  { 1166, 1166 },
2085  { 1168, 1168 },
2086  { 1170, 1170 },
2087  { 1172, 1172 },
2088  { 1174, 1174 },
2089  { 1176, 1176 },
2090  { 1178, 1178 },
2091  { 1180, 1180 },
2092  { 1182, 1182 },
2093  { 1184, 1184 },
2094  { 1186, 1186 },
2095  { 1188, 1188 },
2096  { 1190, 1190 },
2097  { 1192, 1192 },
2098  { 1194, 1194 },
2099  { 1196, 1196 },
2100  { 1198, 1198 },
2101  { 1200, 1200 },
2102  { 1202, 1202 },
2103  { 1204, 1204 },
2104  { 1206, 1206 },
2105  { 1208, 1208 },
2106  { 1210, 1210 },
2107  { 1212, 1212 },
2108  { 1214, 1214 },
2109  { 1216, 1217 },
2110  { 1219, 1219 },
2111  { 1221, 1221 },
2112  { 1223, 1223 },
2113  { 1225, 1225 },
2114  { 1227, 1227 },
2115  { 1229, 1229 },
2116  { 1232, 1232 },
2117  { 1234, 1234 },
2118  { 1236, 1236 },
2119  { 1238, 1238 },
2120  { 1240, 1240 },
2121  { 1242, 1242 },
2122  { 1244, 1244 },
2123  { 1246, 1246 },
2124  { 1248, 1248 },
2125  { 1250, 1250 },
2126  { 1252, 1252 },
2127  { 1254, 1254 },
2128  { 1256, 1256 },
2129  { 1258, 1258 },
2130  { 1260, 1260 },
2131  { 1262, 1262 },
2132  { 1264, 1264 },
2133  { 1266, 1266 },
2134  { 1268, 1268 },
2135  { 1270, 1270 },
2136  { 1272, 1272 },
2137  { 1274, 1274 },
2138  { 1276, 1276 },
2139  { 1278, 1278 },
2140  { 1280, 1280 },
2141  { 1282, 1282 },
2142  { 1284, 1284 },
2143  { 1286, 1286 },
2144  { 1288, 1288 },
2145  { 1290, 1290 },
2146  { 1292, 1292 },
2147  { 1294, 1294 },
2148  { 1296, 1296 },
2149  { 1298, 1298 },
2150  { 1300, 1300 },
2151  { 1302, 1302 },
2152  { 1304, 1304 },
2153  { 1306, 1306 },
2154  { 1308, 1308 },
2155  { 1310, 1310 },
2156  { 1312, 1312 },
2157  { 1314, 1314 },
2158  { 1316, 1316 },
2159  { 1318, 1318 },
2160  { 1320, 1320 },
2161  { 1322, 1322 },
2162  { 1324, 1324 },
2163  { 1326, 1326 },
2164  { 1329, 1366 },
2165  { 4256, 4293 },
2166  { 4295, 4295 },
2167  { 4301, 4301 },
2168  { 5024, 5109 },
2169  { 7312, 7354 },
2170  { 7357, 7359 },
2171  { 7680, 7680 },
2172  { 7682, 7682 },
2173  { 7684, 7684 },
2174  { 7686, 7686 },
2175  { 7688, 7688 },
2176  { 7690, 7690 },
2177  { 7692, 7692 },
2178  { 7694, 7694 },
2179  { 7696, 7696 },
2180  { 7698, 7698 },
2181  { 7700, 7700 },
2182  { 7702, 7702 },
2183  { 7704, 7704 },
2184  { 7706, 7706 },
2185  { 7708, 7708 },
2186  { 7710, 7710 },
2187  { 7712, 7712 },
2188  { 7714, 7714 },
2189  { 7716, 7716 },
2190  { 7718, 7718 },
2191  { 7720, 7720 },
2192  { 7722, 7722 },
2193  { 7724, 7724 },
2194  { 7726, 7726 },
2195  { 7728, 7728 },
2196  { 7730, 7730 },
2197  { 7732, 7732 },
2198  { 7734, 7734 },
2199  { 7736, 7736 },
2200  { 7738, 7738 },
2201  { 7740, 7740 },
2202  { 7742, 7742 },
2203  { 7744, 7744 },
2204  { 7746, 7746 },
2205  { 7748, 7748 },
2206  { 7750, 7750 },
2207  { 7752, 7752 },
2208  { 7754, 7754 },
2209  { 7756, 7756 },
2210  { 7758, 7758 },
2211  { 7760, 7760 },
2212  { 7762, 7762 },
2213  { 7764, 7764 },
2214  { 7766, 7766 },
2215  { 7768, 7768 },
2216  { 7770, 7770 },
2217  { 7772, 7772 },
2218  { 7774, 7774 },
2219  { 7776, 7776 },
2220  { 7778, 7778 },
2221  { 7780, 7780 },
2222  { 7782, 7782 },
2223  { 7784, 7784 },
2224  { 7786, 7786 },
2225  { 7788, 7788 },
2226  { 7790, 7790 },
2227  { 7792, 7792 },
2228  { 7794, 7794 },
2229  { 7796, 7796 },
2230  { 7798, 7798 },
2231  { 7800, 7800 },
2232  { 7802, 7802 },
2233  { 7804, 7804 },
2234  { 7806, 7806 },
2235  { 7808, 7808 },
2236  { 7810, 7810 },
2237  { 7812, 7812 },
2238  { 7814, 7814 },
2239  { 7816, 7816 },
2240  { 7818, 7818 },
2241  { 7820, 7820 },
2242  { 7822, 7822 },
2243  { 7824, 7824 },
2244  { 7826, 7826 },
2245  { 7828, 7828 },
2246  { 7838, 7838 },
2247  { 7840, 7840 },
2248  { 7842, 7842 },
2249  { 7844, 7844 },
2250  { 7846, 7846 },
2251  { 7848, 7848 },
2252  { 7850, 7850 },
2253  { 7852, 7852 },
2254  { 7854, 7854 },
2255  { 7856, 7856 },
2256  { 7858, 7858 },
2257  { 7860, 7860 },
2258  { 7862, 7862 },
2259  { 7864, 7864 },
2260  { 7866, 7866 },
2261  { 7868, 7868 },
2262  { 7870, 7870 },
2263  { 7872, 7872 },
2264  { 7874, 7874 },
2265  { 7876, 7876 },
2266  { 7878, 7878 },
2267  { 7880, 7880 },
2268  { 7882, 7882 },
2269  { 7884, 7884 },
2270  { 7886, 7886 },
2271  { 7888, 7888 },
2272  { 7890, 7890 },
2273  { 7892, 7892 },
2274  { 7894, 7894 },
2275  { 7896, 7896 },
2276  { 7898, 7898 },
2277  { 7900, 7900 },
2278  { 7902, 7902 },
2279  { 7904, 7904 },
2280  { 7906, 7906 },
2281  { 7908, 7908 },
2282  { 7910, 7910 },
2283  { 7912, 7912 },
2284  { 7914, 7914 },
2285  { 7916, 7916 },
2286  { 7918, 7918 },
2287  { 7920, 7920 },
2288  { 7922, 7922 },
2289  { 7924, 7924 },
2290  { 7926, 7926 },
2291  { 7928, 7928 },
2292  { 7930, 7930 },
2293  { 7932, 7932 },
2294  { 7934, 7934 },
2295  { 7944, 7951 },
2296  { 7960, 7965 },
2297  { 7976, 7983 },
2298  { 7992, 7999 },
2299  { 8008, 8013 },
2300  { 8025, 8025 },
2301  { 8027, 8027 },
2302  { 8029, 8029 },
2303  { 8031, 8031 },
2304  { 8040, 8047 },
2305  { 8120, 8123 },
2306  { 8136, 8139 },
2307  { 8152, 8155 },
2308  { 8168, 8172 },
2309  { 8184, 8187 },
2310  { 8450, 8450 },
2311  { 8455, 8455 },
2312  { 8459, 8461 },
2313  { 8464, 8466 },
2314  { 8469, 8469 },
2315  { 8473, 8477 },
2316  { 8484, 8484 },
2317  { 8486, 8486 },
2318  { 8488, 8488 },
2319  { 8490, 8493 },
2320  { 8496, 8499 },
2321  { 8510, 8511 },
2322  { 8517, 8517 },
2323  { 8579, 8579 },
2324  { 11264, 11310 },
2325  { 11360, 11360 },
2326  { 11362, 11364 },
2327  { 11367, 11367 },
2328  { 11369, 11369 },
2329  { 11371, 11371 },
2330  { 11373, 11376 },
2331  { 11378, 11378 },
2332  { 11381, 11381 },
2333  { 11390, 11392 },
2334  { 11394, 11394 },
2335  { 11396, 11396 },
2336  { 11398, 11398 },
2337  { 11400, 11400 },
2338  { 11402, 11402 },
2339  { 11404, 11404 },
2340  { 11406, 11406 },
2341  { 11408, 11408 },
2342  { 11410, 11410 },
2343  { 11412, 11412 },
2344  { 11414, 11414 },
2345  { 11416, 11416 },
2346  { 11418, 11418 },
2347  { 11420, 11420 },
2348  { 11422, 11422 },
2349  { 11424, 11424 },
2350  { 11426, 11426 },
2351  { 11428, 11428 },
2352  { 11430, 11430 },
2353  { 11432, 11432 },
2354  { 11434, 11434 },
2355  { 11436, 11436 },
2356  { 11438, 11438 },
2357  { 11440, 11440 },
2358  { 11442, 11442 },
2359  { 11444, 11444 },
2360  { 11446, 11446 },
2361  { 11448, 11448 },
2362  { 11450, 11450 },
2363  { 11452, 11452 },
2364  { 11454, 11454 },
2365  { 11456, 11456 },
2366  { 11458, 11458 },
2367  { 11460, 11460 },
2368  { 11462, 11462 },
2369  { 11464, 11464 },
2370  { 11466, 11466 },
2371  { 11468, 11468 },
2372  { 11470, 11470 },
2373  { 11472, 11472 },
2374  { 11474, 11474 },
2375  { 11476, 11476 },
2376  { 11478, 11478 },
2377  { 11480, 11480 },
2378  { 11482, 11482 },
2379  { 11484, 11484 },
2380  { 11486, 11486 },
2381  { 11488, 11488 },
2382  { 11490, 11490 },
2383  { 11499, 11499 },
2384  { 11501, 11501 },
2385  { 11506, 11506 },
2386  { 42560, 42560 },
2387  { 42562, 42562 },
2388  { 42564, 42564 },
2389  { 42566, 42566 },
2390  { 42568, 42568 },
2391  { 42570, 42570 },
2392  { 42572, 42572 },
2393  { 42574, 42574 },
2394  { 42576, 42576 },
2395  { 42578, 42578 },
2396  { 42580, 42580 },
2397  { 42582, 42582 },
2398  { 42584, 42584 },
2399  { 42586, 42586 },
2400  { 42588, 42588 },
2401  { 42590, 42590 },
2402  { 42592, 42592 },
2403  { 42594, 42594 },
2404  { 42596, 42596 },
2405  { 42598, 42598 },
2406  { 42600, 42600 },
2407  { 42602, 42602 },
2408  { 42604, 42604 },
2409  { 42624, 42624 },
2410  { 42626, 42626 },
2411  { 42628, 42628 },
2412  { 42630, 42630 },
2413  { 42632, 42632 },
2414  { 42634, 42634 },
2415  { 42636, 42636 },
2416  { 42638, 42638 },
2417  { 42640, 42640 },
2418  { 42642, 42642 },
2419  { 42644, 42644 },
2420  { 42646, 42646 },
2421  { 42648, 42648 },
2422  { 42650, 42650 },
2423  { 42786, 42786 },
2424  { 42788, 42788 },
2425  { 42790, 42790 },
2426  { 42792, 42792 },
2427  { 42794, 42794 },
2428  { 42796, 42796 },
2429  { 42798, 42798 },
2430  { 42802, 42802 },
2431  { 42804, 42804 },
2432  { 42806, 42806 },
2433  { 42808, 42808 },
2434  { 42810, 42810 },
2435  { 42812, 42812 },
2436  { 42814, 42814 },
2437  { 42816, 42816 },
2438  { 42818, 42818 },
2439  { 42820, 42820 },
2440  { 42822, 42822 },
2441  { 42824, 42824 },
2442  { 42826, 42826 },
2443  { 42828, 42828 },
2444  { 42830, 42830 },
2445  { 42832, 42832 },
2446  { 42834, 42834 },
2447  { 42836, 42836 },
2448  { 42838, 42838 },
2449  { 42840, 42840 },
2450  { 42842, 42842 },
2451  { 42844, 42844 },
2452  { 42846, 42846 },
2453  { 42848, 42848 },
2454  { 42850, 42850 },
2455  { 42852, 42852 },
2456  { 42854, 42854 },
2457  { 42856, 42856 },
2458  { 42858, 42858 },
2459  { 42860, 42860 },
2460  { 42862, 42862 },
2461  { 42873, 42873 },
2462  { 42875, 42875 },
2463  { 42877, 42878 },
2464  { 42880, 42880 },
2465  { 42882, 42882 },
2466  { 42884, 42884 },
2467  { 42886, 42886 },
2468  { 42891, 42891 },
2469  { 42893, 42893 },
2470  { 42896, 42896 },
2471  { 42898, 42898 },
2472  { 42902, 42902 },
2473  { 42904, 42904 },
2474  { 42906, 42906 },
2475  { 42908, 42908 },
2476  { 42910, 42910 },
2477  { 42912, 42912 },
2478  { 42914, 42914 },
2479  { 42916, 42916 },
2480  { 42918, 42918 },
2481  { 42920, 42920 },
2482  { 42922, 42926 },
2483  { 42928, 42932 },
2484  { 42934, 42934 },
2485  { 42936, 42936 },
2486  { 42938, 42938 },
2487  { 42940, 42940 },
2488  { 42942, 42942 },
2489  { 42946, 42946 },
2490  { 42948, 42950 },
2491  { 65313, 65338 },
2492 };
2493 static const URange32 Lu_range32[] = {
2494  { 66560, 66599 },
2495  { 66736, 66771 },
2496  { 68736, 68786 },
2497  { 71840, 71871 },
2498  { 93760, 93791 },
2499  { 119808, 119833 },
2500  { 119860, 119885 },
2501  { 119912, 119937 },
2502  { 119964, 119964 },
2503  { 119966, 119967 },
2504  { 119970, 119970 },
2505  { 119973, 119974 },
2506  { 119977, 119980 },
2507  { 119982, 119989 },
2508  { 120016, 120041 },
2509  { 120068, 120069 },
2510  { 120071, 120074 },
2511  { 120077, 120084 },
2512  { 120086, 120092 },
2513  { 120120, 120121 },
2514  { 120123, 120126 },
2515  { 120128, 120132 },
2516  { 120134, 120134 },
2517  { 120138, 120144 },
2518  { 120172, 120197 },
2519  { 120224, 120249 },
2520  { 120276, 120301 },
2521  { 120328, 120353 },
2522  { 120380, 120405 },
2523  { 120432, 120457 },
2524  { 120488, 120512 },
2525  { 120546, 120570 },
2526  { 120604, 120628 },
2527  { 120662, 120686 },
2528  { 120720, 120744 },
2529  { 120778, 120778 },
2530  { 125184, 125217 },
2531 };
2532 static const URange16 M_range16[] = {
2533  { 768, 879 },
2534  { 1155, 1161 },
2535  { 1425, 1469 },
2536  { 1471, 1471 },
2537  { 1473, 1474 },
2538  { 1476, 1477 },
2539  { 1479, 1479 },
2540  { 1552, 1562 },
2541  { 1611, 1631 },
2542  { 1648, 1648 },
2543  { 1750, 1756 },
2544  { 1759, 1764 },
2545  { 1767, 1768 },
2546  { 1770, 1773 },
2547  { 1809, 1809 },
2548  { 1840, 1866 },
2549  { 1958, 1968 },
2550  { 2027, 2035 },
2551  { 2045, 2045 },
2552  { 2070, 2073 },
2553  { 2075, 2083 },
2554  { 2085, 2087 },
2555  { 2089, 2093 },
2556  { 2137, 2139 },
2557  { 2259, 2273 },
2558  { 2275, 2307 },
2559  { 2362, 2364 },
2560  { 2366, 2383 },
2561  { 2385, 2391 },
2562  { 2402, 2403 },
2563  { 2433, 2435 },
2564  { 2492, 2492 },
2565  { 2494, 2500 },
2566  { 2503, 2504 },
2567  { 2507, 2509 },
2568  { 2519, 2519 },
2569  { 2530, 2531 },
2570  { 2558, 2558 },
2571  { 2561, 2563 },
2572  { 2620, 2620 },
2573  { 2622, 2626 },
2574  { 2631, 2632 },
2575  { 2635, 2637 },
2576  { 2641, 2641 },
2577  { 2672, 2673 },
2578  { 2677, 2677 },
2579  { 2689, 2691 },
2580  { 2748, 2748 },
2581  { 2750, 2757 },
2582  { 2759, 2761 },
2583  { 2763, 2765 },
2584  { 2786, 2787 },
2585  { 2810, 2815 },
2586  { 2817, 2819 },
2587  { 2876, 2876 },
2588  { 2878, 2884 },
2589  { 2887, 2888 },
2590  { 2891, 2893 },
2591  { 2902, 2903 },
2592  { 2914, 2915 },
2593  { 2946, 2946 },
2594  { 3006, 3010 },
2595  { 3014, 3016 },
2596  { 3018, 3021 },
2597  { 3031, 3031 },
2598  { 3072, 3076 },
2599  { 3134, 3140 },
2600  { 3142, 3144 },
2601  { 3146, 3149 },
2602  { 3157, 3158 },
2603  { 3170, 3171 },
2604  { 3201, 3203 },
2605  { 3260, 3260 },
2606  { 3262, 3268 },
2607  { 3270, 3272 },
2608  { 3274, 3277 },
2609  { 3285, 3286 },
2610  { 3298, 3299 },
2611  { 3328, 3331 },
2612  { 3387, 3388 },
2613  { 3390, 3396 },
2614  { 3398, 3400 },
2615  { 3402, 3405 },
2616  { 3415, 3415 },
2617  { 3426, 3427 },
2618  { 3458, 3459 },
2619  { 3530, 3530 },
2620  { 3535, 3540 },
2621  { 3542, 3542 },
2622  { 3544, 3551 },
2623  { 3570, 3571 },
2624  { 3633, 3633 },
2625  { 3636, 3642 },
2626  { 3655, 3662 },
2627  { 3761, 3761 },
2628  { 3764, 3772 },
2629  { 3784, 3789 },
2630  { 3864, 3865 },
2631  { 3893, 3893 },
2632  { 3895, 3895 },
2633  { 3897, 3897 },
2634  { 3902, 3903 },
2635  { 3953, 3972 },
2636  { 3974, 3975 },
2637  { 3981, 3991 },
2638  { 3993, 4028 },
2639  { 4038, 4038 },
2640  { 4139, 4158 },
2641  { 4182, 4185 },
2642  { 4190, 4192 },
2643  { 4194, 4196 },
2644  { 4199, 4205 },
2645  { 4209, 4212 },
2646  { 4226, 4237 },
2647  { 4239, 4239 },
2648  { 4250, 4253 },
2649  { 4957, 4959 },
2650  { 5906, 5908 },
2651  { 5938, 5940 },
2652  { 5970, 5971 },
2653  { 6002, 6003 },
2654  { 6068, 6099 },
2655  { 6109, 6109 },
2656  { 6155, 6157 },
2657  { 6277, 6278 },
2658  { 6313, 6313 },
2659  { 6432, 6443 },
2660  { 6448, 6459 },
2661  { 6679, 6683 },
2662  { 6741, 6750 },
2663  { 6752, 6780 },
2664  { 6783, 6783 },
2665  { 6832, 6846 },
2666  { 6912, 6916 },
2667  { 6964, 6980 },
2668  { 7019, 7027 },
2669  { 7040, 7042 },
2670  { 7073, 7085 },
2671  { 7142, 7155 },
2672  { 7204, 7223 },
2673  { 7376, 7378 },
2674  { 7380, 7400 },
2675  { 7405, 7405 },
2676  { 7412, 7412 },
2677  { 7415, 7417 },
2678  { 7616, 7673 },
2679  { 7675, 7679 },
2680  { 8400, 8432 },
2681  { 11503, 11505 },
2682  { 11647, 11647 },
2683  { 11744, 11775 },
2684  { 12330, 12335 },
2685  { 12441, 12442 },
2686  { 42607, 42610 },
2687  { 42612, 42621 },
2688  { 42654, 42655 },
2689  { 42736, 42737 },
2690  { 43010, 43010 },
2691  { 43014, 43014 },
2692  { 43019, 43019 },
2693  { 43043, 43047 },
2694  { 43136, 43137 },
2695  { 43188, 43205 },
2696  { 43232, 43249 },
2697  { 43263, 43263 },
2698  { 43302, 43309 },
2699  { 43335, 43347 },
2700  { 43392, 43395 },
2701  { 43443, 43456 },
2702  { 43493, 43493 },
2703  { 43561, 43574 },
2704  { 43587, 43587 },
2705  { 43596, 43597 },
2706  { 43643, 43645 },
2707  { 43696, 43696 },
2708  { 43698, 43700 },
2709  { 43703, 43704 },
2710  { 43710, 43711 },
2711  { 43713, 43713 },
2712  { 43755, 43759 },
2713  { 43765, 43766 },
2714  { 44003, 44010 },
2715  { 44012, 44013 },
2716  { 64286, 64286 },
2717  { 65024, 65039 },
2718  { 65056, 65071 },
2719 };
2720 static const URange32 M_range32[] = {
2721  { 66045, 66045 },
2722  { 66272, 66272 },
2723  { 66422, 66426 },
2724  { 68097, 68099 },
2725  { 68101, 68102 },
2726  { 68108, 68111 },
2727  { 68152, 68154 },
2728  { 68159, 68159 },
2729  { 68325, 68326 },
2730  { 68900, 68903 },
2731  { 69446, 69456 },
2732  { 69632, 69634 },
2733  { 69688, 69702 },
2734  { 69759, 69762 },
2735  { 69808, 69818 },
2736  { 69888, 69890 },
2737  { 69927, 69940 },
2738  { 69957, 69958 },
2739  { 70003, 70003 },
2740  { 70016, 70018 },
2741  { 70067, 70080 },
2742  { 70089, 70092 },
2743  { 70188, 70199 },
2744  { 70206, 70206 },
2745  { 70367, 70378 },
2746  { 70400, 70403 },
2747  { 70459, 70460 },
2748  { 70462, 70468 },
2749  { 70471, 70472 },
2750  { 70475, 70477 },
2751  { 70487, 70487 },
2752  { 70498, 70499 },
2753  { 70502, 70508 },
2754  { 70512, 70516 },
2755  { 70709, 70726 },
2756  { 70750, 70750 },
2757  { 70832, 70851 },
2758  { 71087, 71093 },
2759  { 71096, 71104 },
2760  { 71132, 71133 },
2761  { 71216, 71232 },
2762  { 71339, 71351 },
2763  { 71453, 71467 },
2764  { 71724, 71738 },
2765  { 72145, 72151 },
2766  { 72154, 72160 },
2767  { 72164, 72164 },
2768  { 72193, 72202 },
2769  { 72243, 72249 },
2770  { 72251, 72254 },
2771  { 72263, 72263 },
2772  { 72273, 72283 },
2773  { 72330, 72345 },
2774  { 72751, 72758 },
2775  { 72760, 72767 },
2776  { 72850, 72871 },
2777  { 72873, 72886 },
2778  { 73009, 73014 },
2779  { 73018, 73018 },
2780  { 73020, 73021 },
2781  { 73023, 73029 },
2782  { 73031, 73031 },
2783  { 73098, 73102 },
2784  { 73104, 73105 },
2785  { 73107, 73111 },
2786  { 73459, 73462 },
2787  { 92912, 92916 },
2788  { 92976, 92982 },
2789  { 94031, 94031 },
2790  { 94033, 94087 },
2791  { 94095, 94098 },
2792  { 113821, 113822 },
2793  { 119141, 119145 },
2794  { 119149, 119154 },
2795  { 119163, 119170 },
2796  { 119173, 119179 },
2797  { 119210, 119213 },
2798  { 119362, 119364 },
2799  { 121344, 121398 },
2800  { 121403, 121452 },
2801  { 121461, 121461 },
2802  { 121476, 121476 },
2803  { 121499, 121503 },
2804  { 121505, 121519 },
2805  { 122880, 122886 },
2806  { 122888, 122904 },
2807  { 122907, 122913 },
2808  { 122915, 122916 },
2809  { 122918, 122922 },
2810  { 123184, 123190 },
2811  { 123628, 123631 },
2812  { 125136, 125142 },
2813  { 125252, 125258 },
2814  { 917760, 917999 },
2815 };
2816 static const URange16 Mc_range16[] = {
2817  { 2307, 2307 },
2818  { 2363, 2363 },
2819  { 2366, 2368 },
2820  { 2377, 2380 },
2821  { 2382, 2383 },
2822  { 2434, 2435 },
2823  { 2494, 2496 },
2824  { 2503, 2504 },
2825  { 2507, 2508 },
2826  { 2519, 2519 },
2827  { 2563, 2563 },
2828  { 2622, 2624 },
2829  { 2691, 2691 },
2830  { 2750, 2752 },
2831  { 2761, 2761 },
2832  { 2763, 2764 },
2833  { 2818, 2819 },
2834  { 2878, 2878 },
2835  { 2880, 2880 },
2836  { 2887, 2888 },
2837  { 2891, 2892 },
2838  { 2903, 2903 },
2839  { 3006, 3007 },
2840  { 3009, 3010 },
2841  { 3014, 3016 },
2842  { 3018, 3020 },
2843  { 3031, 3031 },
2844  { 3073, 3075 },
2845  { 3137, 3140 },
2846  { 3202, 3203 },
2847  { 3262, 3262 },
2848  { 3264, 3268 },
2849  { 3271, 3272 },
2850  { 3274, 3275 },
2851  { 3285, 3286 },
2852  { 3330, 3331 },
2853  { 3390, 3392 },
2854  { 3398, 3400 },
2855  { 3402, 3404 },
2856  { 3415, 3415 },
2857  { 3458, 3459 },
2858  { 3535, 3537 },
2859  { 3544, 3551 },
2860  { 3570, 3571 },
2861  { 3902, 3903 },
2862  { 3967, 3967 },
2863  { 4139, 4140 },
2864  { 4145, 4145 },
2865  { 4152, 4152 },
2866  { 4155, 4156 },
2867  { 4182, 4183 },
2868  { 4194, 4196 },
2869  { 4199, 4205 },
2870  { 4227, 4228 },
2871  { 4231, 4236 },
2872  { 4239, 4239 },
2873  { 4250, 4252 },
2874  { 6070, 6070 },
2875  { 6078, 6085 },
2876  { 6087, 6088 },
2877  { 6435, 6438 },
2878  { 6441, 6443 },
2879  { 6448, 6449 },
2880  { 6451, 6456 },
2881  { 6681, 6682 },
2882  { 6741, 6741 },
2883  { 6743, 6743 },
2884  { 6753, 6753 },
2885  { 6755, 6756 },
2886  { 6765, 6770 },
2887  { 6916, 6916 },
2888  { 6965, 6965 },
2889  { 6971, 6971 },
2890  { 6973, 6977 },
2891  { 6979, 6980 },
2892  { 7042, 7042 },
2893  { 7073, 7073 },
2894  { 7078, 7079 },
2895  { 7082, 7082 },
2896  { 7143, 7143 },
2897  { 7146, 7148 },
2898  { 7150, 7150 },
2899  { 7154, 7155 },
2900  { 7204, 7211 },
2901  { 7220, 7221 },
2902  { 7393, 7393 },
2903  { 7415, 7415 },
2904  { 12334, 12335 },
2905  { 43043, 43044 },
2906  { 43047, 43047 },
2907  { 43136, 43137 },
2908  { 43188, 43203 },
2909  { 43346, 43347 },
2910  { 43395, 43395 },
2911  { 43444, 43445 },
2912  { 43450, 43451 },
2913  { 43454, 43456 },
2914  { 43567, 43568 },
2915  { 43571, 43572 },
2916  { 43597, 43597 },
2917  { 43643, 43643 },
2918  { 43645, 43645 },
2919  { 43755, 43755 },
2920  { 43758, 43759 },
2921  { 43765, 43765 },
2922  { 44003, 44004 },
2923  { 44006, 44007 },
2924  { 44009, 44010 },
2925  { 44012, 44012 },
2926 };
2927 static const URange32 Mc_range32[] = {
2928  { 69632, 69632 },
2929  { 69634, 69634 },
2930  { 69762, 69762 },
2931  { 69808, 69810 },
2932  { 69815, 69816 },
2933  { 69932, 69932 },
2934  { 69957, 69958 },
2935  { 70018, 70018 },
2936  { 70067, 70069 },
2937  { 70079, 70080 },
2938  { 70188, 70190 },
2939  { 70194, 70195 },
2940  { 70197, 70197 },
2941  { 70368, 70370 },
2942  { 70402, 70403 },
2943  { 70462, 70463 },
2944  { 70465, 70468 },
2945  { 70471, 70472 },
2946  { 70475, 70477 },
2947  { 70487, 70487 },
2948  { 70498, 70499 },
2949  { 70709, 70711 },
2950  { 70720, 70721 },
2951  { 70725, 70725 },
2952  { 70832, 70834 },
2953  { 70841, 70841 },
2954  { 70843, 70846 },
2955  { 70849, 70849 },
2956  { 71087, 71089 },
2957  { 71096, 71099 },
2958  { 71102, 71102 },
2959  { 71216, 71218 },
2960  { 71227, 71228 },
2961  { 71230, 71230 },
2962  { 71340, 71340 },
2963  { 71342, 71343 },
2964  { 71350, 71350 },
2965  { 71456, 71457 },
2966  { 71462, 71462 },
2967  { 71724, 71726 },
2968  { 71736, 71736 },
2969  { 72145, 72147 },
2970  { 72156, 72159 },
2971  { 72164, 72164 },
2972  { 72249, 72249 },
2973  { 72279, 72280 },
2974  { 72343, 72343 },
2975  { 72751, 72751 },
2976  { 72766, 72766 },
2977  { 72873, 72873 },
2978  { 72881, 72881 },
2979  { 72884, 72884 },
2980  { 73098, 73102 },
2981  { 73107, 73108 },
2982  { 73110, 73110 },
2983  { 73461, 73462 },
2984  { 94033, 94087 },
2985  { 119141, 119142 },
2986  { 119149, 119154 },
2987 };
2988 static const URange16 Me_range16[] = {
2989  { 1160, 1161 },
2990  { 6846, 6846 },
2991  { 8413, 8416 },
2992  { 8418, 8420 },
2993  { 42608, 42610 },
2994 };
2995 static const URange16 Mn_range16[] = {
2996  { 768, 879 },
2997  { 1155, 1159 },
2998  { 1425, 1469 },
2999  { 1471, 1471 },
3000  { 1473, 1474 },
3001  { 1476, 1477 },
3002  { 1479, 1479 },
3003  { 1552, 1562 },
3004  { 1611, 1631 },
3005  { 1648, 1648 },
3006  { 1750, 1756 },
3007  { 1759, 1764 },
3008  { 1767, 1768 },
3009  { 1770, 1773 },
3010  { 1809, 1809 },
3011  { 1840, 1866 },
3012  { 1958, 1968 },
3013  { 2027, 2035 },
3014  { 2045, 2045 },
3015  { 2070, 2073 },
3016  { 2075, 2083 },
3017  { 2085, 2087 },
3018  { 2089, 2093 },
3019  { 2137, 2139 },
3020  { 2259, 2273 },
3021  { 2275, 2306 },
3022  { 2362, 2362 },
3023  { 2364, 2364 },
3024  { 2369, 2376 },
3025  { 2381, 2381 },
3026  { 2385, 2391 },
3027  { 2402, 2403 },
3028  { 2433, 2433 },
3029  { 2492, 2492 },
3030  { 2497, 2500 },
3031  { 2509, 2509 },
3032  { 2530, 2531 },
3033  { 2558, 2558 },
3034  { 2561, 2562 },
3035  { 2620, 2620 },
3036  { 2625, 2626 },
3037  { 2631, 2632 },
3038  { 2635, 2637 },
3039  { 2641, 2641 },
3040  { 2672, 2673 },
3041  { 2677, 2677 },
3042  { 2689, 2690 },
3043  { 2748, 2748 },
3044  { 2753, 2757 },
3045  { 2759, 2760 },
3046  { 2765, 2765 },
3047  { 2786, 2787 },
3048  { 2810, 2815 },
3049  { 2817, 2817 },
3050  { 2876, 2876 },
3051  { 2879, 2879 },
3052  { 2881, 2884 },
3053  { 2893, 2893 },
3054  { 2902, 2902 },
3055  { 2914, 2915 },
3056  { 2946, 2946 },
3057  { 3008, 3008 },
3058  { 3021, 3021 },
3059  { 3072, 3072 },
3060  { 3076, 3076 },
3061  { 3134, 3136 },
3062  { 3142, 3144 },
3063  { 3146, 3149 },
3064  { 3157, 3158 },
3065  { 3170, 3171 },
3066  { 3201, 3201 },
3067  { 3260, 3260 },
3068  { 3263, 3263 },
3069  { 3270, 3270 },
3070  { 3276, 3277 },
3071  { 3298, 3299 },
3072  { 3328, 3329 },
3073  { 3387, 3388 },
3074  { 3393, 3396 },
3075  { 3405, 3405 },
3076  { 3426, 3427 },
3077  { 3530, 3530 },
3078  { 3538, 3540 },
3079  { 3542, 3542 },
3080  { 3633, 3633 },
3081  { 3636, 3642 },
3082  { 3655, 3662 },
3083  { 3761, 3761 },
3084  { 3764, 3772 },
3085  { 3784, 3789 },
3086  { 3864, 3865 },
3087  { 3893, 3893 },
3088  { 3895, 3895 },
3089  { 3897, 3897 },
3090  { 3953, 3966 },
3091  { 3968, 3972 },
3092  { 3974, 3975 },
3093  { 3981, 3991 },
3094  { 3993, 4028 },
3095  { 4038, 4038 },
3096  { 4141, 4144 },
3097  { 4146, 4151 },
3098  { 4153, 4154 },
3099  { 4157, 4158 },
3100  { 4184, 4185 },
3101  { 4190, 4192 },
3102  { 4209, 4212 },
3103  { 4226, 4226 },
3104  { 4229, 4230 },
3105  { 4237, 4237 },
3106  { 4253, 4253 },
3107  { 4957, 4959 },
3108  { 5906, 5908 },
3109  { 5938, 5940 },
3110  { 5970, 5971 },
3111  { 6002, 6003 },
3112  { 6068, 6069 },
3113  { 6071, 6077 },
3114  { 6086, 6086 },
3115  { 6089, 6099 },
3116  { 6109, 6109 },
3117  { 6155, 6157 },
3118  { 6277, 6278 },
3119  { 6313, 6313 },
3120  { 6432, 6434 },
3121  { 6439, 6440 },
3122  { 6450, 6450 },
3123  { 6457, 6459 },
3124  { 6679, 6680 },
3125  { 6683, 6683 },
3126  { 6742, 6742 },
3127  { 6744, 6750 },
3128  { 6752, 6752 },
3129  { 6754, 6754 },
3130  { 6757, 6764 },
3131  { 6771, 6780 },
3132  { 6783, 6783 },
3133  { 6832, 6845 },
3134  { 6912, 6915 },
3135  { 6964, 6964 },
3136  { 6966, 6970 },
3137  { 6972, 6972 },
3138  { 6978, 6978 },
3139  { 7019, 7027 },
3140  { 7040, 7041 },
3141  { 7074, 7077 },
3142  { 7080, 7081 },
3143  { 7083, 7085 },
3144  { 7142, 7142 },
3145  { 7144, 7145 },
3146  { 7149, 7149 },
3147  { 7151, 7153 },
3148  { 7212, 7219 },
3149  { 7222, 7223 },
3150  { 7376, 7378 },
3151  { 7380, 7392 },
3152  { 7394, 7400 },
3153  { 7405, 7405 },
3154  { 7412, 7412 },
3155  { 7416, 7417 },
3156  { 7616, 7673 },
3157  { 7675, 7679 },
3158  { 8400, 8412 },
3159  { 8417, 8417 },
3160  { 8421, 8432 },
3161  { 11503, 11505 },
3162  { 11647, 11647 },
3163  { 11744, 11775 },
3164  { 12330, 12333 },
3165  { 12441, 12442 },
3166  { 42607, 42607 },
3167  { 42612, 42621 },
3168  { 42654, 42655 },
3169  { 42736, 42737 },
3170  { 43010, 43010 },
3171  { 43014, 43014 },
3172  { 43019, 43019 },
3173  { 43045, 43046 },
3174  { 43204, 43205 },
3175  { 43232, 43249 },
3176  { 43263, 43263 },
3177  { 43302, 43309 },
3178  { 43335, 43345 },
3179  { 43392, 43394 },
3180  { 43443, 43443 },
3181  { 43446, 43449 },
3182  { 43452, 43453 },
3183  { 43493, 43493 },
3184  { 43561, 43566 },
3185  { 43569, 43570 },
3186  { 43573, 43574 },
3187  { 43587, 43587 },
3188  { 43596, 43596 },
3189  { 43644, 43644 },
3190  { 43696, 43696 },
3191  { 43698, 43700 },
3192  { 43703, 43704 },
3193  { 43710, 43711 },
3194  { 43713, 43713 },
3195  { 43756, 43757 },
3196  { 43766, 43766 },
3197  { 44005, 44005 },
3198  { 44008, 44008 },
3199  { 44013, 44013 },
3200  { 64286, 64286 },
3201  { 65024, 65039 },
3202  { 65056, 65071 },
3203 };
3204 static const URange32 Mn_range32[] = {
3205  { 66045, 66045 },
3206  { 66272, 66272 },
3207  { 66422, 66426 },
3208  { 68097, 68099 },
3209  { 68101, 68102 },
3210  { 68108, 68111 },
3211  { 68152, 68154 },
3212  { 68159, 68159 },
3213  { 68325, 68326 },
3214  { 68900, 68903 },
3215  { 69446, 69456 },
3216  { 69633, 69633 },
3217  { 69688, 69702 },
3218  { 69759, 69761 },
3219  { 69811, 69814 },
3220  { 69817, 69818 },
3221  { 69888, 69890 },
3222  { 69927, 69931 },
3223  { 69933, 69940 },
3224  { 70003, 70003 },
3225  { 70016, 70017 },
3226  { 70070, 70078 },
3227  { 70089, 70092 },
3228  { 70191, 70193 },
3229  { 70196, 70196 },
3230  { 70198, 70199 },
3231  { 70206, 70206 },
3232  { 70367, 70367 },
3233  { 70371, 70378 },
3234  { 70400, 70401 },
3235  { 70459, 70460 },
3236  { 70464, 70464 },
3237  { 70502, 70508 },
3238  { 70512, 70516 },
3239  { 70712, 70719 },
3240  { 70722, 70724 },
3241  { 70726, 70726 },
3242  { 70750, 70750 },
3243  { 70835, 70840 },
3244  { 70842, 70842 },
3245  { 70847, 70848 },
3246  { 70850, 70851 },
3247  { 71090, 71093 },
3248  { 71100, 71101 },
3249  { 71103, 71104 },
3250  { 71132, 71133 },
3251  { 71219, 71226 },
3252  { 71229, 71229 },
3253  { 71231, 71232 },
3254  { 71339, 71339 },
3255  { 71341, 71341 },
3256  { 71344, 71349 },
3257  { 71351, 71351 },
3258  { 71453, 71455 },
3259  { 71458, 71461 },
3260  { 71463, 71467 },
3261  { 71727, 71735 },
3262  { 71737, 71738 },
3263  { 72148, 72151 },
3264  { 72154, 72155 },
3265  { 72160, 72160 },
3266  { 72193, 72202 },
3267  { 72243, 72248 },
3268  { 72251, 72254 },
3269  { 72263, 72263 },
3270  { 72273, 72278 },
3271  { 72281, 72283 },
3272  { 72330, 72342 },
3273  { 72344, 72345 },
3274  { 72752, 72758 },
3275  { 72760, 72765 },
3276  { 72767, 72767 },
3277  { 72850, 72871 },
3278  { 72874, 72880 },
3279  { 72882, 72883 },
3280  { 72885, 72886 },
3281  { 73009, 73014 },
3282  { 73018, 73018 },
3283  { 73020, 73021 },
3284  { 73023, 73029 },
3285  { 73031, 73031 },
3286  { 73104, 73105 },
3287  { 73109, 73109 },
3288  { 73111, 73111 },
3289  { 73459, 73460 },
3290  { 92912, 92916 },
3291  { 92976, 92982 },
3292  { 94031, 94031 },
3293  { 94095, 94098 },
3294  { 113821, 113822 },
3295  { 119143, 119145 },
3296  { 119163, 119170 },
3297  { 119173, 119179 },
3298  { 119210, 119213 },
3299  { 119362, 119364 },
3300  { 121344, 121398 },
3301  { 121403, 121452 },
3302  { 121461, 121461 },
3303  { 121476, 121476 },
3304  { 121499, 121503 },
3305  { 121505, 121519 },
3306  { 122880, 122886 },
3307  { 122888, 122904 },
3308  { 122907, 122913 },
3309  { 122915, 122916 },
3310  { 122918, 122922 },
3311  { 123184, 123190 },
3312  { 123628, 123631 },
3313  { 125136, 125142 },
3314  { 125252, 125258 },
3315  { 917760, 917999 },
3316 };
3317 static const URange16 N_range16[] = {
3318  { 48, 57 },
3319  { 178, 179 },
3320  { 185, 185 },
3321  { 188, 190 },
3322  { 1632, 1641 },
3323  { 1776, 1785 },
3324  { 1984, 1993 },
3325  { 2406, 2415 },
3326  { 2534, 2543 },
3327  { 2548, 2553 },
3328  { 2662, 2671 },
3329  { 2790, 2799 },
3330  { 2918, 2927 },
3331  { 2930, 2935 },
3332  { 3046, 3058 },
3333  { 3174, 3183 },
3334  { 3192, 3198 },
3335  { 3302, 3311 },
3336  { 3416, 3422 },
3337  { 3430, 3448 },
3338  { 3558, 3567 },
3339  { 3664, 3673 },
3340  { 3792, 3801 },
3341  { 3872, 3891 },
3342  { 4160, 4169 },
3343  { 4240, 4249 },
3344  { 4969, 4988 },
3345  { 5870, 5872 },
3346  { 6112, 6121 },
3347  { 6128, 6137 },
3348  { 6160, 6169 },
3349  { 6470, 6479 },
3350  { 6608, 6618 },
3351  { 6784, 6793 },
3352  { 6800, 6809 },
3353  { 6992, 7001 },
3354  { 7088, 7097 },
3355  { 7232, 7241 },
3356  { 7248, 7257 },
3357  { 8304, 8304 },
3358  { 8308, 8313 },
3359  { 8320, 8329 },
3360  { 8528, 8578 },
3361  { 8581, 8585 },
3362  { 9312, 9371 },
3363  { 9450, 9471 },
3364  { 10102, 10131 },
3365  { 11517, 11517 },
3366  { 12295, 12295 },
3367  { 12321, 12329 },
3368  { 12344, 12346 },
3369  { 12690, 12693 },
3370  { 12832, 12841 },
3371  { 12872, 12879 },
3372  { 12881, 12895 },
3373  { 12928, 12937 },
3374  { 12977, 12991 },
3375  { 42528, 42537 },
3376  { 42726, 42735 },
3377  { 43056, 43061 },
3378  { 43216, 43225 },
3379  { 43264, 43273 },
3380  { 43472, 43481 },
3381  { 43504, 43513 },
3382  { 43600, 43609 },
3383  { 44016, 44025 },
3384  { 65296, 65305 },
3385 };
3386 static const URange32 N_range32[] = {
3387  { 65799, 65843 },
3388  { 65856, 65912 },
3389  { 65930, 65931 },
3390  { 66273, 66299 },
3391  { 66336, 66339 },
3392  { 66369, 66369 },
3393  { 66378, 66378 },
3394  { 66513, 66517 },
3395  { 66720, 66729 },
3396  { 67672, 67679 },
3397  { 67705, 67711 },
3398  { 67751, 67759 },
3399  { 67835, 67839 },
3400  { 67862, 67867 },
3401  { 68028, 68029 },
3402  { 68032, 68047 },
3403  { 68050, 68095 },
3404  { 68160, 68168 },
3405  { 68221, 68222 },
3406  { 68253, 68255 },
3407  { 68331, 68335 },
3408  { 68440, 68447 },
3409  { 68472, 68479 },
3410  { 68521, 68527 },
3411  { 68858, 68863 },
3412  { 68912, 68921 },
3413  { 69216, 69246 },
3414  { 69405, 69414 },
3415  { 69457, 69460 },
3416  { 69714, 69743 },
3417  { 69872, 69881 },
3418  { 69942, 69951 },
3419  { 70096, 70105 },
3420  { 70113, 70132 },
3421  { 70384, 70393 },
3422  { 70736, 70745 },
3423  { 70864, 70873 },
3424  { 71248, 71257 },
3425  { 71360, 71369 },
3426  { 71472, 71483 },
3427  { 71904, 71922 },
3428  { 72784, 72812 },
3429  { 73040, 73049 },
3430  { 73120, 73129 },
3431  { 73664, 73684 },
3432  { 74752, 74862 },
3433  { 92768, 92777 },
3434  { 93008, 93017 },
3435  { 93019, 93025 },
3436  { 93824, 93846 },
3437  { 119520, 119539 },
3438  { 119648, 119672 },
3439  { 120782, 120831 },
3440  { 123200, 123209 },
3441  { 123632, 123641 },
3442  { 125127, 125135 },
3443  { 125264, 125273 },
3444  { 126065, 126123 },
3445  { 126125, 126127 },
3446  { 126129, 126132 },
3447  { 126209, 126253 },
3448  { 126255, 126269 },
3449  { 127232, 127244 },
3450 };
3451 static const URange16 Nd_range16[] = {
3452  { 48, 57 },
3453  { 1632, 1641 },
3454  { 1776, 1785 },
3455  { 1984, 1993 },
3456  { 2406, 2415 },
3457  { 2534, 2543 },
3458  { 2662, 2671 },
3459  { 2790, 2799 },
3460  { 2918, 2927 },
3461  { 3046, 3055 },
3462  { 3174, 3183 },
3463  { 3302, 3311 },
3464  { 3430, 3439 },
3465  { 3558, 3567 },
3466  { 3664, 3673 },
3467  { 3792, 3801 },
3468  { 3872, 3881 },
3469  { 4160, 4169 },
3470  { 4240, 4249 },
3471  { 6112, 6121 },
3472  { 6160, 6169 },
3473  { 6470, 6479 },
3474  { 6608, 6617 },
3475  { 6784, 6793 },
3476  { 6800, 6809 },
3477  { 6992, 7001 },
3478  { 7088, 7097 },
3479  { 7232, 7241 },
3480  { 7248, 7257 },
3481  { 42528, 42537 },
3482  { 43216, 43225 },
3483  { 43264, 43273 },
3484  { 43472, 43481 },
3485  { 43504, 43513 },
3486  { 43600, 43609 },
3487  { 44016, 44025 },
3488  { 65296, 65305 },
3489 };
3490 static const URange32 Nd_range32[] = {
3491  { 66720, 66729 },
3492  { 68912, 68921 },
3493  { 69734, 69743 },
3494  { 69872, 69881 },
3495  { 69942, 69951 },
3496  { 70096, 70105 },
3497  { 70384, 70393 },
3498  { 70736, 70745 },
3499  { 70864, 70873 },
3500  { 71248, 71257 },
3501  { 71360, 71369 },
3502  { 71472, 71481 },
3503  { 71904, 71913 },
3504  { 72784, 72793 },
3505  { 73040, 73049 },
3506  { 73120, 73129 },
3507  { 92768, 92777 },
3508  { 93008, 93017 },
3509  { 120782, 120831 },
3510  { 123200, 123209 },
3511  { 123632, 123641 },
3512  { 125264, 125273 },
3513 };
3514 static const URange16 Nl_range16[] = {
3515  { 5870, 5872 },
3516  { 8544, 8578 },
3517  { 8581, 8584 },
3518  { 12295, 12295 },
3519  { 12321, 12329 },
3520  { 12344, 12346 },
3521  { 42726, 42735 },
3522 };
3523 static const URange32 Nl_range32[] = {
3524  { 65856, 65908 },
3525  { 66369, 66369 },
3526  { 66378, 66378 },
3527  { 66513, 66517 },
3528  { 74752, 74862 },
3529 };
3530 static const URange16 No_range16[] = {
3531  { 178, 179 },
3532  { 185, 185 },
3533  { 188, 190 },
3534  { 2548, 2553 },
3535  { 2930, 2935 },
3536  { 3056, 3058 },
3537  { 3192, 3198 },
3538  { 3416, 3422 },
3539  { 3440, 3448 },
3540  { 3882, 3891 },
3541  { 4969, 4988 },
3542  { 6128, 6137 },
3543  { 6618, 6618 },
3544  { 8304, 8304 },
3545  { 8308, 8313 },
3546  { 8320, 8329 },
3547  { 8528, 8543 },
3548  { 8585, 8585 },
3549  { 9312, 9371 },
3550  { 9450, 9471 },
3551  { 10102, 10131 },
3552  { 11517, 11517 },
3553  { 12690, 12693 },
3554  { 12832, 12841 },
3555  { 12872, 12879 },
3556  { 12881, 12895 },
3557  { 12928, 12937 },
3558  { 12977, 12991 },
3559  { 43056, 43061 },
3560 };
3561 static const URange32 No_range32[] = {
3562  { 65799, 65843 },
3563  { 65909, 65912 },
3564  { 65930, 65931 },
3565  { 66273, 66299 },
3566  { 66336, 66339 },
3567  { 67672, 67679 },
3568  { 67705, 67711 },
3569  { 67751, 67759 },
3570  { 67835, 67839 },
3571  { 67862, 67867 },
3572  { 68028, 68029 },
3573  { 68032, 68047 },
3574  { 68050, 68095 },
3575  { 68160, 68168 },
3576  { 68221, 68222 },
3577  { 68253, 68255 },
3578  { 68331, 68335 },
3579  { 68440, 68447 },
3580  { 68472, 68479 },
3581  { 68521, 68527 },
3582  { 68858, 68863 },
3583  { 69216, 69246 },
3584  { 69405, 69414 },
3585  { 69457, 69460 },
3586  { 69714, 69733 },
3587  { 70113, 70132 },
3588  { 71482, 71483 },
3589  { 71914, 71922 },
3590  { 72794, 72812 },
3591  { 73664, 73684 },
3592  { 93019, 93025 },
3593  { 93824, 93846 },
3594  { 119520, 119539 },
3595  { 119648, 119672 },
3596  { 125127, 125135 },
3597  { 126065, 126123 },
3598  { 126125, 126127 },
3599  { 126129, 126132 },
3600  { 126209, 126253 },
3601  { 126255, 126269 },
3602  { 127232, 127244 },
3603 };
3604 static const URange16 P_range16[] = {
3605  { 33, 35 },
3606  { 37, 42 },
3607  { 44, 47 },
3608  { 58, 59 },
3609  { 63, 64 },
3610  { 91, 93 },
3611  { 95, 95 },
3612  { 123, 123 },
3613  { 125, 125 },
3614  { 161, 161 },
3615  { 167, 167 },
3616  { 171, 171 },
3617  { 182, 183 },
3618  { 187, 187 },
3619  { 191, 191 },
3620  { 894, 894 },
3621  { 903, 903 },
3622  { 1370, 1375 },
3623  { 1417, 1418 },
3624  { 1470, 1470 },
3625  { 1472, 1472 },
3626  { 1475, 1475 },
3627  { 1478, 1478 },
3628  { 1523, 1524 },
3629  { 1545, 1546 },
3630  { 1548, 1549 },
3631  { 1563, 1563 },
3632  { 1566, 1567 },
3633  { 1642, 1645 },
3634  { 1748, 1748 },
3635  { 1792, 1805 },
3636  { 2039, 2041 },
3637  { 2096, 2110 },
3638  { 2142, 2142 },
3639  { 2404, 2405 },
3640  { 2416, 2416 },
3641  { 2557, 2557 },
3642  { 2678, 2678 },
3643  { 2800, 2800 },
3644  { 3191, 3191 },
3645  { 3204, 3204 },
3646  { 3572, 3572 },
3647  { 3663, 3663 },
3648  { 3674, 3675 },
3649  { 3844, 3858 },
3650  { 3860, 3860 },
3651  { 3898, 3901 },
3652  { 3973, 3973 },
3653  { 4048, 4052 },
3654  { 4057, 4058 },
3655  { 4170, 4175 },
3656  { 4347, 4347 },
3657  { 4960, 4968 },
3658  { 5120, 5120 },
3659  { 5742, 5742 },
3660  { 5787, 5788 },
3661  { 5867, 5869 },
3662  { 5941, 5942 },
3663  { 6100, 6102 },
3664  { 6104, 6106 },
3665  { 6144, 6154 },
3666  { 6468, 6469 },
3667  { 6686, 6687 },
3668  { 6816, 6822 },
3669  { 6824, 6829 },
3670  { 7002, 7008 },
3671  { 7164, 7167 },
3672  { 7227, 7231 },
3673  { 7294, 7295 },
3674  { 7360, 7367 },
3675  { 7379, 7379 },
3676  { 8208, 8231 },
3677  { 8240, 8259 },
3678  { 8261, 8273 },
3679  { 8275, 8286 },
3680  { 8317, 8318 },
3681  { 8333, 8334 },
3682  { 8968, 8971 },
3683  { 9001, 9002 },
3684  { 10088, 10101 },
3685  { 10181, 10182 },
3686  { 10214, 10223 },
3687  { 10627, 10648 },
3688  { 10712, 10715 },
3689  { 10748, 10749 },
3690  { 11513, 11516 },
3691  { 11518, 11519 },
3692  { 11632, 11632 },
3693  { 11776, 11822 },
3694  { 11824, 11855 },
3695  { 12289, 12291 },
3696  { 12296, 12305 },
3697  { 12308, 12319 },
3698  { 12336, 12336 },
3699  { 12349, 12349 },
3700  { 12448, 12448 },
3701  { 12539, 12539 },
3702  { 42238, 42239 },
3703  { 42509, 42511 },
3704  { 42611, 42611 },
3705  { 42622, 42622 },
3706  { 42738, 42743 },
3707  { 43124, 43127 },
3708  { 43214, 43215 },
3709  { 43256, 43258 },
3710  { 43260, 43260 },
3711  { 43310, 43311 },
3712  { 43359, 43359 },
3713  { 43457, 43469 },
3714  { 43486, 43487 },
3715  { 43612, 43615 },
3716  { 43742, 43743 },
3717  { 43760, 43761 },
3718  { 44011, 44011 },
3719  { 64830, 64831 },
3720  { 65040, 65049 },
3721  { 65072, 65106 },
3722  { 65108, 65121 },
3723  { 65123, 65123 },
3724  { 65128, 65128 },
3725  { 65130, 65131 },
3726  { 65281, 65283 },
3727  { 65285, 65290 },
3728  { 65292, 65295 },
3729  { 65306, 65307 },
3730  { 65311, 65312 },
3731  { 65339, 65341 },
3732  { 65343, 65343 },
3733  { 65371, 65371 },
3734  { 65373, 65373 },
3735  { 65375, 65381 },
3736 };
3737 static const URange32 P_range32[] = {
3738  { 65792, 65794 },
3739  { 66463, 66463 },
3740  { 66512, 66512 },
3741  { 66927, 66927 },
3742  { 67671, 67671 },
3743  { 67871, 67871 },
3744  { 67903, 67903 },
3745  { 68176, 68184 },
3746  { 68223, 68223 },
3747  { 68336, 68342 },
3748  { 68409, 68415 },
3749  { 68505, 68508 },
3750  { 69461, 69465 },
3751  { 69703, 69709 },
3752  { 69819, 69820 },
3753  { 69822, 69825 },
3754  { 69952, 69955 },
3755  { 70004, 70005 },
3756  { 70085, 70088 },
3757  { 70093, 70093 },
3758  { 70107, 70107 },
3759  { 70109, 70111 },
3760  { 70200, 70205 },
3761  { 70313, 70313 },
3762  { 70731, 70735 },
3763  { 70747, 70747 },
3764  { 70749, 70749 },
3765  { 70854, 70854 },
3766  { 71105, 71127 },
3767  { 71233, 71235 },
3768  { 71264, 71276 },
3769  { 71484, 71486 },
3770  { 71739, 71739 },
3771  { 72162, 72162 },
3772  { 72255, 72262 },
3773  { 72346, 72348 },
3774  { 72350, 72354 },
3775  { 72769, 72773 },
3776  { 72816, 72817 },
3777  { 73463, 73464 },
3778  { 73727, 73727 },
3779  { 74864, 74868 },
3780  { 92782, 92783 },
3781  { 92917, 92917 },
3782  { 92983, 92987 },
3783  { 92996, 92996 },
3784  { 93847, 93850 },
3785  { 94178, 94178 },
3786  { 113823, 113823 },
3787  { 121479, 121483 },
3788  { 125278, 125279 },
3789 };
3790 static const URange16 Pc_range16[] = {
3791  { 95, 95 },
3792  { 8255, 8256 },
3793  { 8276, 8276 },
3794  { 65075, 65076 },
3795  { 65101, 65103 },
3796  { 65343, 65343 },
3797 };
3798 static const URange16 Pd_range16[] = {
3799  { 45, 45 },
3800  { 1418, 1418 },
3801  { 1470, 1470 },
3802  { 5120, 5120 },
3803  { 6150, 6150 },
3804  { 8208, 8213 },
3805  { 11799, 11799 },
3806  { 11802, 11802 },
3807  { 11834, 11835 },
3808  { 11840, 11840 },
3809  { 12316, 12316 },
3810  { 12336, 12336 },
3811  { 12448, 12448 },
3812  { 65073, 65074 },
3813  { 65112, 65112 },
3814  { 65123, 65123 },
3815  { 65293, 65293 },
3816 };
3817 static const URange16 Pe_range16[] = {
3818  { 41, 41 },
3819  { 93, 93 },
3820  { 125, 125 },
3821  { 3899, 3899 },
3822  { 3901, 3901 },
3823  { 5788, 5788 },
3824  { 8262, 8262 },
3825  { 8318, 8318 },
3826  { 8334, 8334 },
3827  { 8969, 8969 },
3828  { 8971, 8971 },
3829  { 9002, 9002 },
3830  { 10089, 10089 },
3831  { 10091, 10091 },
3832  { 10093, 10093 },
3833  { 10095, 10095 },
3834  { 10097, 10097 },
3835  { 10099, 10099 },
3836  { 10101, 10101 },
3837  { 10182, 10182 },
3838  { 10215, 10215 },
3839  { 10217, 10217 },
3840  { 10219, 10219 },
3841  { 10221, 10221 },
3842  { 10223, 10223 },
3843  { 10628, 10628 },
3844  { 10630, 10630 },
3845  { 10632, 10632 },
3846  { 10634, 10634 },
3847  { 10636, 10636 },
3848  { 10638, 10638 },
3849  { 10640, 10640 },
3850  { 10642, 10642 },
3851  { 10644, 10644 },
3852  { 10646, 10646 },
3853  { 10648, 10648 },
3854  { 10713, 10713 },
3855  { 10715, 10715 },
3856  { 10749, 10749 },
3857  { 11811, 11811 },
3858  { 11813, 11813 },
3859  { 11815, 11815 },
3860  { 11817, 11817 },
3861  { 12297, 12297 },
3862  { 12299, 12299 },
3863  { 12301, 12301 },
3864  { 12303, 12303 },
3865  { 12305, 12305 },
3866  { 12309, 12309 },
3867  { 12311, 12311 },
3868  { 12313, 12313 },
3869  { 12315, 12315 },
3870  { 12318, 12319 },
3871  { 64830, 64830 },
3872  { 65048, 65048 },
3873  { 65078, 65078 },
3874  { 65080, 65080 },
3875  { 65082, 65082 },
3876  { 65084, 65084 },
3877  { 65086, 65086 },
3878  { 65088, 65088 },
3879  { 65090, 65090 },
3880  { 65092, 65092 },
3881  { 65096, 65096 },
3882  { 65114, 65114 },
3883  { 65116, 65116 },
3884  { 65118, 65118 },
3885  { 65289, 65289 },
3886  { 65341, 65341 },
3887  { 65373, 65373 },
3888  { 65376, 65376 },
3889  { 65379, 65379 },
3890 };
3891 static const URange16 Pf_range16[] = {
3892  { 187, 187 },
3893  { 8217, 8217 },
3894  { 8221, 8221 },
3895  { 8250, 8250 },
3896  { 11779, 11779 },
3897  { 11781, 11781 },
3898  { 11786, 11786 },
3899  { 11789, 11789 },
3900  { 11805, 11805 },
3901  { 11809, 11809 },
3902 };
3903 static const URange16 Pi_range16[] = {
3904  { 171, 171 },
3905  { 8216, 8216 },
3906  { 8219, 8220 },
3907  { 8223, 8223 },
3908  { 8249, 8249 },
3909  { 11778, 11778 },
3910  { 11780, 11780 },
3911  { 11785, 11785 },
3912  { 11788, 11788 },
3913  { 11804, 11804 },
3914  { 11808, 11808 },
3915 };
3916 static const URange16 Po_range16[] = {
3917  { 33, 35 },
3918  { 37, 39 },
3919  { 42, 42 },
3920  { 44, 44 },
3921  { 46, 47 },
3922  { 58, 59 },
3923  { 63, 64 },
3924  { 92, 92 },
3925  { 161, 161 },
3926  { 167, 167 },
3927  { 182, 183 },
3928  { 191, 191 },
3929  { 894, 894 },
3930  { 903, 903 },
3931  { 1370, 1375 },
3932  { 1417, 1417 },
3933  { 1472, 1472 },
3934  { 1475, 1475 },
3935  { 1478, 1478 },
3936  { 1523, 1524 },
3937  { 1545, 1546 },
3938  { 1548, 1549 },
3939  { 1563, 1563 },
3940  { 1566, 1567 },
3941  { 1642, 1645 },
3942  { 1748, 1748 },
3943  { 1792, 1805 },
3944  { 2039, 2041 },
3945  { 2096, 2110 },
3946  { 2142, 2142 },
3947  { 2404, 2405 },
3948  { 2416, 2416 },
3949  { 2557, 2557 },
3950  { 2678, 2678 },
3951  { 2800, 2800 },
3952  { 3191, 3191 },
3953  { 3204, 3204 },
3954  { 3572, 3572 },
3955  { 3663, 3663 },
3956  { 3674, 3675 },
3957  { 3844, 3858 },
3958  { 3860, 3860 },
3959  { 3973, 3973 },
3960  { 4048, 4052 },
3961  { 4057, 4058 },
3962  { 4170, 4175 },
3963  { 4347, 4347 },
3964  { 4960, 4968 },
3965  { 5742, 5742 },
3966  { 5867, 5869 },
3967  { 5941, 5942 },
3968  { 6100, 6102 },
3969  { 6104, 6106 },
3970  { 6144, 6149 },
3971  { 6151, 6154 },
3972  { 6468, 6469 },
3973  { 6686, 6687 },
3974  { 6816, 6822 },
3975  { 6824, 6829 },
3976  { 7002, 7008 },
3977  { 7164, 7167 },
3978  { 7227, 7231 },
3979  { 7294, 7295 },
3980  { 7360, 7367 },
3981  { 7379, 7379 },
3982  { 8214, 8215 },
3983  { 8224, 8231 },
3984  { 8240, 8248 },
3985  { 8251, 8254 },
3986  { 8257, 8259 },
3987  { 8263, 8273 },
3988  { 8275, 8275 },
3989  { 8277, 8286 },
3990  { 11513, 11516 },
3991  { 11518, 11519 },
3992  { 11632, 11632 },
3993  { 11776, 11777 },
3994  { 11782, 11784 },
3995  { 11787, 11787 },
3996  { 11790, 11798 },
3997  { 11800, 11801 },
3998  { 11803, 11803 },
3999  { 11806, 11807 },
4000  { 11818, 11822 },
4001  { 11824, 11833 },
4002  { 11836, 11839 },
4003  { 11841, 11841 },
4004  { 11843, 11855 },
4005  { 12289, 12291 },
4006  { 12349, 12349 },
4007  { 12539, 12539 },
4008  { 42238, 42239 },
4009  { 42509, 42511 },
4010  { 42611, 42611 },
4011  { 42622, 42622 },
4012  { 42738, 42743 },
4013  { 43124, 43127 },
4014  { 43214, 43215 },
4015  { 43256, 43258 },
4016  { 43260, 43260 },
4017  { 43310, 43311 },
4018  { 43359, 43359 },
4019  { 43457, 43469 },
4020  { 43486, 43487 },
4021  { 43612, 43615 },
4022  { 43742, 43743 },
4023  { 43760, 43761 },
4024  { 44011, 44011 },
4025  { 65040, 65046 },
4026  { 65049, 65049 },
4027  { 65072, 65072 },
4028  { 65093, 65094 },
4029  { 65097, 65100 },
4030  { 65104, 65106 },
4031  { 65108, 65111 },
4032  { 65119, 65121 },
4033  { 65128, 65128 },
4034  { 65130, 65131 },
4035  { 65281, 65283 },
4036  { 65285, 65287 },
4037  { 65290, 65290 },
4038  { 65292, 65292 },
4039  { 65294, 65295 },
4040  { 65306, 65307 },
4041  { 65311, 65312 },
4042  { 65340, 65340 },
4043  { 65377, 65377 },
4044  { 65380, 65381 },
4045 };
4046 static const URange32 Po_range32[] = {
4047  { 65792, 65794 },
4048  { 66463, 66463 },
4049  { 66512, 66512 },
4050  { 66927, 66927 },
4051  { 67671, 67671 },
4052  { 67871, 67871 },
4053  { 67903, 67903 },
4054  { 68176, 68184 },
4055  { 68223, 68223 },
4056  { 68336, 68342 },
4057  { 68409, 68415 },
4058  { 68505, 68508 },
4059  { 69461, 69465 },
4060  { 69703, 69709 },
4061  { 69819, 69820 },
4062  { 69822, 69825 },
4063  { 69952, 69955 },
4064  { 70004, 70005 },
4065  { 70085, 70088 },
4066  { 70093, 70093 },
4067  { 70107, 70107 },
4068  { 70109, 70111 },
4069  { 70200, 70205 },
4070  { 70313, 70313 },
4071  { 70731, 70735 },
4072  { 70747, 70747 },
4073  { 70749, 70749 },
4074  { 70854, 70854 },
4075  { 71105, 71127 },
4076  { 71233, 71235 },
4077  { 71264, 71276 },
4078  { 71484, 71486 },
4079  { 71739, 71739 },
4080  { 72162, 72162 },
4081  { 72255, 72262 },
4082  { 72346, 72348 },
4083  { 72350, 72354 },
4084  { 72769, 72773 },
4085  { 72816, 72817 },
4086  { 73463, 73464 },
4087  { 73727, 73727 },
4088  { 74864, 74868 },
4089  { 92782, 92783 },
4090  { 92917, 92917 },
4091  { 92983, 92987 },
4092  { 92996, 92996 },
4093  { 93847, 93850 },
4094  { 94178, 94178 },
4095  { 113823, 113823 },
4096  { 121479, 121483 },
4097  { 125278, 125279 },
4098 };
4099 static const URange16 Ps_range16[] = {
4100  { 40, 40 },
4101  { 91, 91 },
4102  { 123, 123 },
4103  { 3898, 3898 },
4104  { 3900, 3900 },
4105  { 5787, 5787 },
4106  { 8218, 8218 },
4107  { 8222, 8222 },
4108  { 8261, 8261 },
4109  { 8317, 8317 },
4110  { 8333, 8333 },
4111  { 8968, 8968 },
4112  { 8970, 8970 },
4113  { 9001, 9001 },
4114  { 10088, 10088 },
4115  { 10090, 10090 },
4116  { 10092, 10092 },
4117  { 10094, 10094 },
4118  { 10096, 10096 },
4119  { 10098, 10098 },
4120  { 10100, 10100 },
4121  { 10181, 10181 },
4122  { 10214, 10214 },
4123  { 10216, 10216 },
4124  { 10218, 10218 },
4125  { 10220, 10220 },
4126  { 10222, 10222 },
4127  { 10627, 10627 },
4128  { 10629, 10629 },
4129  { 10631, 10631 },
4130  { 10633, 10633 },
4131  { 10635, 10635 },
4132  { 10637, 10637 },
4133  { 10639, 10639 },
4134  { 10641, 10641 },
4135  { 10643, 10643 },
4136  { 10645, 10645 },
4137  { 10647, 10647 },
4138  { 10712, 10712 },
4139  { 10714, 10714 },
4140  { 10748, 10748 },
4141  { 11810, 11810 },
4142  { 11812, 11812 },
4143  { 11814, 11814 },
4144  { 11816, 11816 },
4145  { 11842, 11842 },
4146  { 12296, 12296 },
4147  { 12298, 12298 },
4148  { 12300, 12300 },
4149  { 12302, 12302 },
4150  { 12304, 12304 },
4151  { 12308, 12308 },
4152  { 12310, 12310 },
4153  { 12312, 12312 },
4154  { 12314, 12314 },
4155  { 12317, 12317 },
4156  { 64831, 64831 },
4157  { 65047, 65047 },
4158  { 65077, 65077 },
4159  { 65079, 65079 },
4160  { 65081, 65081 },
4161  { 65083, 65083 },
4162  { 65085, 65085 },
4163  { 65087, 65087 },
4164  { 65089, 65089 },
4165  { 65091, 65091 },
4166  { 65095, 65095 },
4167  { 65113, 65113 },
4168  { 65115, 65115 },
4169  { 65117, 65117 },
4170  { 65288, 65288 },
4171  { 65339, 65339 },
4172  { 65371, 65371 },
4173  { 65375, 65375 },
4174  { 65378, 65378 },
4175 };
4176 static const URange16 S_range16[] = {
4177  { 36, 36 },
4178  { 43, 43 },
4179  { 60, 62 },
4180  { 94, 94 },
4181  { 96, 96 },
4182  { 124, 124 },
4183  { 126, 126 },
4184  { 162, 166 },
4185  { 168, 169 },
4186  { 172, 172 },
4187  { 174, 177 },
4188  { 180, 180 },
4189  { 184, 184 },
4190  { 215, 215 },
4191  { 247, 247 },
4192  { 706, 709 },
4193  { 722, 735 },
4194  { 741, 747 },
4195  { 749, 749 },
4196  { 751, 767 },
4197  { 885, 885 },
4198  { 900, 901 },
4199  { 1014, 1014 },
4200  { 1154, 1154 },
4201  { 1421, 1423 },
4202  { 1542, 1544 },
4203  { 1547, 1547 },
4204  { 1550, 1551 },
4205  { 1758, 1758 },
4206  { 1769, 1769 },
4207  { 1789, 1790 },
4208  { 2038, 2038 },
4209  { 2046, 2047 },
4210  { 2546, 2547 },
4211  { 2554, 2555 },
4212  { 2801, 2801 },
4213  { 2928, 2928 },
4214  { 3059, 3066 },
4215  { 3199, 3199 },
4216  { 3407, 3407 },
4217  { 3449, 3449 },
4218  { 3647, 3647 },
4219  { 3841, 3843 },
4220  { 3859, 3859 },
4221  { 3861, 3863 },
4222  { 3866, 3871 },
4223  { 3892, 3892 },
4224  { 3894, 3894 },
4225  { 3896, 3896 },
4226  { 4030, 4037 },
4227  { 4039, 4044 },
4228  { 4046, 4047 },
4229  { 4053, 4056 },
4230  { 4254, 4255 },
4231  { 5008, 5017 },
4232  { 5741, 5741 },
4233  { 6107, 6107 },
4234  { 6464, 6464 },
4235  { 6622, 6655 },
4236  { 7009, 7018 },
4237  { 7028, 7036 },
4238  { 8125, 8125 },
4239  { 8127, 8129 },
4240  { 8141, 8143 },
4241  { 8157, 8159 },
4242  { 8173, 8175 },
4243  { 8189, 8190 },
4244  { 8260, 8260 },
4245  { 8274, 8274 },
4246  { 8314, 8316 },
4247  { 8330, 8332 },
4248  { 8352, 8383 },
4249  { 8448, 8449 },
4250  { 8451, 8454 },
4251  { 8456, 8457 },
4252  { 8468, 8468 },
4253  { 8470, 8472 },
4254  { 8478, 8483 },
4255  { 8485, 8485 },
4256  { 8487, 8487 },
4257  { 8489, 8489 },
4258  { 8494, 8494 },
4259  { 8506, 8507 },
4260  { 8512, 8516 },
4261  { 8522, 8525 },
4262  { 8527, 8527 },
4263  { 8586, 8587 },
4264  { 8592, 8967 },
4265  { 8972, 9000 },
4266  { 9003, 9254 },
4267  { 9280, 9290 },
4268  { 9372, 9449 },
4269  { 9472, 10087 },
4270  { 10132, 10180 },
4271  { 10183, 10213 },
4272  { 10224, 10626 },
4273  { 10649, 10711 },
4274  { 10716, 10747 },
4275  { 10750, 11123 },
4276  { 11126, 11157 },
4277  { 11160, 11263 },
4278  { 11493, 11498 },
4279  { 11904, 11929 },
4280  { 11931, 12019 },
4281  { 12032, 12245 },
4282  { 12272, 12283 },
4283  { 12292, 12292 },
4284  { 12306, 12307 },
4285  { 12320, 12320 },
4286  { 12342, 12343 },
4287  { 12350, 12351 },
4288  { 12443, 12444 },
4289  { 12688, 12689 },
4290  { 12694, 12703 },
4291  { 12736, 12771 },
4292  { 12800, 12830 },
4293  { 12842, 12871 },
4294  { 12880, 12880 },
4295  { 12896, 12927 },
4296  { 12938, 12976 },
4297  { 12992, 13311 },
4298  { 19904, 19967 },
4299  { 42128, 42182 },
4300  { 42752, 42774 },
4301  { 42784, 42785 },
4302  { 42889, 42890 },
4303  { 43048, 43051 },
4304  { 43062, 43065 },
4305  { 43639, 43641 },
4306  { 43867, 43867 },
4307  { 64297, 64297 },
4308  { 64434, 64449 },
4309  { 65020, 65021 },
4310  { 65122, 65122 },
4311  { 65124, 65126 },
4312  { 65129, 65129 },
4313  { 65284, 65284 },
4314  { 65291, 65291 },
4315  { 65308, 65310 },
4316  { 65342, 65342 },
4317  { 65344, 65344 },
4318  { 65372, 65372 },
4319  { 65374, 65374 },
4320  { 65504, 65510 },
4321  { 65512, 65518 },
4322  { 65532, 65533 },
4323 };
4324 static const URange32 S_range32[] = {
4325  { 65847, 65855 },
4326  { 65913, 65929 },
4327  { 65932, 65934 },
4328  { 65936, 65947 },
4329  { 65952, 65952 },
4330  { 66000, 66044 },
4331  { 67703, 67704 },
4332  { 68296, 68296 },
4333  { 71487, 71487 },
4334  { 73685, 73713 },
4335  { 92988, 92991 },
4336  { 92997, 92997 },
4337  { 113820, 113820 },
4338  { 118784, 119029 },
4339  { 119040, 119078 },
4340  { 119081, 119140 },
4341  { 119146, 119148 },
4342  { 119171, 119172 },
4343  { 119180, 119209 },
4344  { 119214, 119272 },
4345  { 119296, 119361 },
4346  { 119365, 119365 },
4347  { 119552, 119638 },
4348  { 120513, 120513 },
4349  { 120539, 120539 },
4350  { 120571, 120571 },
4351  { 120597, 120597 },
4352  { 120629, 120629 },
4353  { 120655, 120655 },
4354  { 120687, 120687 },
4355  { 120713, 120713 },
4356  { 120745, 120745 },
4357  { 120771, 120771 },
4358  { 120832, 121343 },
4359  { 121399, 121402 },
4360  { 121453, 121460 },
4361  { 121462, 121475 },
4362  { 121477, 121478 },
4363  { 123215, 123215 },
4364  { 123647, 123647 },
4365  { 126124, 126124 },
4366  { 126128, 126128 },
4367  { 126254, 126254 },
4368  { 126704, 126705 },
4369  { 126976, 127019 },
4370  { 127024, 127123 },
4371  { 127136, 127150 },
4372  { 127153, 127167 },
4373  { 127169, 127183 },
4374  { 127185, 127221 },
4375  { 127248, 127340 },
4376  { 127344, 127404 },
4377  { 127462, 127490 },
4378  { 127504, 127547 },
4379  { 127552, 127560 },
4380  { 127568, 127569 },
4381  { 127584, 127589 },
4382  { 127744, 128725 },
4383  { 128736, 128748 },
4384  { 128752, 128762 },
4385  { 128768, 128883 },
4386  { 128896, 128984 },
4387  { 128992, 129003 },
4388  { 129024, 129035 },
4389  { 129040, 129095 },
4390  { 129104, 129113 },
4391  { 129120, 129159 },
4392  { 129168, 129197 },
4393  { 129280, 129291 },
4394  { 129293, 129393 },
4395  { 129395, 129398 },
4396  { 129402, 129442 },
4397  { 129445, 129450 },
4398  { 129454, 129482 },
4399  { 129485, 129619 },
4400  { 129632, 129645 },
4401  { 129648, 129651 },
4402  { 129656, 129658 },
4403  { 129664, 129666 },
4404  { 129680, 129685 },
4405 };
4406 static const URange16 Sc_range16[] = {
4407  { 36, 36 },
4408  { 162, 165 },
4409  { 1423, 1423 },
4410  { 1547, 1547 },
4411  { 2046, 2047 },
4412  { 2546, 2547 },
4413  { 2555, 2555 },
4414  { 2801, 2801 },
4415  { 3065, 3065 },
4416  { 3647, 3647 },
4417  { 6107, 6107 },
4418  { 8352, 8383 },
4419  { 43064, 43064 },
4420  { 65020, 65020 },
4421  { 65129, 65129 },
4422  { 65284, 65284 },
4423  { 65504, 65505 },
4424  { 65509, 65510 },
4425 };
4426 static const URange32 Sc_range32[] = {
4427  { 73693, 73696 },
4428  { 123647, 123647 },
4429  { 126128, 126128 },
4430 };
4431 static const URange16 Sk_range16[] = {
4432  { 94, 94 },
4433  { 96, 96 },
4434  { 168, 168 },
4435  { 175, 175 },
4436  { 180, 180 },
4437  { 184, 184 },
4438  { 706, 709 },
4439  { 722, 735 },
4440  { 741, 747 },
4441  { 749, 749 },
4442  { 751, 767 },
4443  { 885, 885 },
4444  { 900, 901 },
4445  { 8125, 8125 },
4446  { 8127, 8129 },
4447  { 8141, 8143 },
4448  { 8157, 8159 },
4449  { 8173, 8175 },
4450  { 8189, 8190 },
4451  { 12443, 12444 },
4452  { 42752, 42774 },
4453  { 42784, 42785 },
4454  { 42889, 42890 },
4455  { 43867, 43867 },
4456  { 64434, 64449 },
4457  { 65342, 65342 },
4458  { 65344, 65344 },
4459  { 65507, 65507 },
4460 };
4461 static const URange32 Sk_range32[] = {
4462  { 127995, 127999 },
4463 };
4464 static const URange16 Sm_range16[] = {
4465  { 43, 43 },
4466  { 60, 62 },
4467  { 124, 124 },
4468  { 126, 126 },
4469  { 172, 172 },
4470  { 177, 177 },
4471  { 215, 215 },
4472  { 247, 247 },
4473  { 1014, 1014 },
4474  { 1542, 1544 },
4475  { 8260, 8260 },
4476  { 8274, 8274 },
4477  { 8314, 8316 },
4478  { 8330, 8332 },
4479  { 8472, 8472 },
4480  { 8512, 8516 },
4481  { 8523, 8523 },
4482  { 8592, 8596 },
4483  { 8602, 8603 },
4484  { 8608, 8608 },
4485  { 8611, 8611 },
4486  { 8614, 8614 },
4487  { 8622, 8622 },
4488  { 8654, 8655 },
4489  { 8658, 8658 },
4490  { 8660, 8660 },
4491  { 8692, 8959 },
4492  { 8992, 8993 },
4493  { 9084, 9084 },
4494  { 9115, 9139 },
4495  { 9180, 9185 },
4496  { 9655, 9655 },
4497  { 9665, 9665 },
4498  { 9720, 9727 },
4499  { 9839, 9839 },
4500  { 10176, 10180 },
4501  { 10183, 10213 },
4502  { 10224, 10239 },
4503  { 10496, 10626 },
4504  { 10649, 10711 },
4505  { 10716, 10747 },
4506  { 10750, 11007 },
4507  { 11056, 11076 },
4508  { 11079, 11084 },
4509  { 64297, 64297 },
4510  { 65122, 65122 },
4511  { 65124, 65126 },
4512  { 65291, 65291 },
4513  { 65308, 65310 },
4514  { 65372, 65372 },
4515  { 65374, 65374 },
4516  { 65506, 65506 },
4517  { 65513, 65516 },
4518 };
4519 static const URange32 Sm_range32[] = {
4520  { 120513, 120513 },
4521  { 120539, 120539 },
4522  { 120571, 120571 },
4523  { 120597, 120597 },
4524  { 120629, 120629 },
4525  { 120655, 120655 },
4526  { 120687, 120687 },
4527  { 120713, 120713 },
4528  { 120745, 120745 },
4529  { 120771, 120771 },
4530  { 126704, 126705 },
4531 };
4532 static const URange16 So_range16[] = {
4533  { 166, 166 },
4534  { 169, 169 },
4535  { 174, 174 },
4536  { 176, 176 },
4537  { 1154, 1154 },
4538  { 1421, 1422 },
4539  { 1550, 1551 },
4540  { 1758, 1758 },
4541  { 1769, 1769 },
4542  { 1789, 1790 },
4543  { 2038, 2038 },
4544  { 2554, 2554 },
4545  { 2928, 2928 },
4546  { 3059, 3064 },
4547  { 3066, 3066 },
4548  { 3199, 3199 },
4549  { 3407, 3407 },
4550  { 3449, 3449 },
4551  { 3841, 3843 },
4552  { 3859, 3859 },
4553  { 3861, 3863 },
4554  { 3866, 3871 },
4555  { 3892, 3892 },
4556  { 3894, 3894 },
4557  { 3896, 3896 },
4558  { 4030, 4037 },
4559  { 4039, 4044 },
4560  { 4046, 4047 },
4561  { 4053, 4056 },
4562  { 4254, 4255 },
4563  { 5008, 5017 },
4564  { 5741, 5741 },
4565  { 6464, 6464 },
4566  { 6622, 6655 },
4567  { 7009, 7018 },
4568  { 7028, 7036 },
4569  { 8448, 8449 },
4570  { 8451, 8454 },
4571  { 8456, 8457 },
4572  { 8468, 8468 },
4573  { 8470, 8471 },
4574  { 8478, 8483 },
4575  { 8485, 8485 },
4576  { 8487, 8487 },
4577  { 8489, 8489 },
4578  { 8494, 8494 },
4579  { 8506, 8507 },
4580  { 8522, 8522 },
4581  { 8524, 8525 },
4582  { 8527, 8527 },
4583  { 8586, 8587 },
4584  { 8597, 8601 },
4585  { 8604, 8607 },
4586  { 8609, 8610 },
4587  { 8612, 8613 },
4588  { 8615, 8621 },
4589  { 8623, 8653 },
4590  { 8656, 8657 },
4591  { 8659, 8659 },
4592  { 8661, 8691 },
4593  { 8960, 8967 },
4594  { 8972, 8991 },
4595  { 8994, 9000 },
4596  { 9003, 9083 },
4597  { 9085, 9114 },
4598  { 9140, 9179 },
4599  { 9186, 9254 },
4600  { 9280, 9290 },
4601  { 9372, 9449 },
4602  { 9472, 9654 },
4603  { 9656, 9664 },
4604  { 9666, 9719 },
4605  { 9728, 9838 },
4606  { 9840, 10087 },
4607  { 10132, 10175 },
4608  { 10240, 10495 },
4609  { 11008, 11055 },
4610  { 11077, 11078 },
4611  { 11085, 11123 },
4612  { 11126, 11157 },
4613  { 11160, 11263 },
4614  { 11493, 11498 },
4615  { 11904, 11929 },
4616  { 11931, 12019 },
4617  { 12032, 12245 },
4618  { 12272, 12283 },
4619  { 12292, 12292 },
4620  { 12306, 12307 },
4621  { 12320, 12320 },
4622  { 12342, 12343 },
4623  { 12350, 12351 },
4624  { 12688, 12689 },
4625  { 12694, 12703 },
4626  { 12736, 12771 },
4627  { 12800, 12830 },
4628  { 12842, 12871 },
4629  { 12880, 12880 },
4630  { 12896, 12927 },
4631  { 12938, 12976 },
4632  { 12992, 13311 },
4633  { 19904, 19967 },
4634  { 42128, 42182 },
4635  { 43048, 43051 },
4636  { 43062, 43063 },
4637  { 43065, 43065 },
4638  { 43639, 43641 },
4639  { 65021, 65021 },
4640  { 65508, 65508 },
4641  { 65512, 65512 },
4642  { 65517, 65518 },
4643  { 65532, 65533 },
4644 };
4645 static const URange32 So_range32[] = {
4646  { 65847, 65855 },
4647  { 65913, 65929 },
4648  { 65932, 65934 },
4649  { 65936, 65947 },
4650  { 65952, 65952 },
4651  { 66000, 66044 },
4652  { 67703, 67704 },
4653  { 68296, 68296 },
4654  { 71487, 71487 },
4655  { 73685, 73692 },
4656  { 73697, 73713 },
4657  { 92988, 92991 },
4658  { 92997, 92997 },
4659  { 113820, 113820 },
4660  { 118784, 119029 },
4661  { 119040, 119078 },
4662  { 119081, 119140 },
4663  { 119146, 119148 },
4664  { 119171, 119172 },
4665  { 119180, 119209 },
4666  { 119214, 119272 },
4667  { 119296, 119361 },
4668  { 119365, 119365 },
4669  { 119552, 119638 },
4670  { 120832, 121343 },
4671  { 121399, 121402 },
4672  { 121453, 121460 },
4673  { 121462, 121475 },
4674  { 121477, 121478 },
4675  { 123215, 123215 },
4676  { 126124, 126124 },
4677  { 126254, 126254 },
4678  { 126976, 127019 },
4679  { 127024, 127123 },
4680  { 127136, 127150 },
4681  { 127153, 127167 },
4682  { 127169, 127183 },
4683  { 127185, 127221 },
4684  { 127248, 127340 },
4685  { 127344, 127404 },
4686  { 127462, 127490 },
4687  { 127504, 127547 },
4688  { 127552, 127560 },
4689  { 127568, 127569 },
4690  { 127584, 127589 },
4691  { 127744, 127994 },
4692  { 128000, 128725 },
4693  { 128736, 128748 },
4694  { 128752, 128762 },
4695  { 128768, 128883 },
4696  { 128896, 128984 },
4697  { 128992, 129003 },
4698  { 129024, 129035 },
4699  { 129040, 129095 },
4700  { 129104, 129113 },
4701  { 129120, 129159 },
4702  { 129168, 129197 },
4703  { 129280, 129291 },
4704  { 129293, 129393 },
4705  { 129395, 129398 },
4706  { 129402, 129442 },
4707  { 129445, 129450 },
4708  { 129454, 129482 },
4709  { 129485, 129619 },
4710  { 129632, 129645 },
4711  { 129648, 129651 },
4712  { 129656, 129658 },
4713  { 129664, 129666 },
4714  { 129680, 129685 },
4715 };
4716 static const URange16 Z_range16[] = {
4717  { 32, 32 },
4718  { 160, 160 },
4719  { 5760, 5760 },
4720  { 8192, 8202 },
4721  { 8232, 8233 },
4722  { 8239, 8239 },
4723  { 8287, 8287 },
4724  { 12288, 12288 },
4725 };
4726 static const URange16 Zl_range16[] = {
4727  { 8232, 8232 },
4728 };
4729 static const URange16 Zp_range16[] = {
4730  { 8233, 8233 },
4731 };
4732 static const URange16 Zs_range16[] = {
4733  { 32, 32 },
4734  { 160, 160 },
4735  { 5760, 5760 },
4736  { 8192, 8202 },
4737  { 8239, 8239 },
4738  { 8287, 8287 },
4739  { 12288, 12288 },
4740 };
4741 static const URange32 Adlam_range32[] = {
4742  { 125184, 125259 },
4743  { 125264, 125273 },
4744  { 125278, 125279 },
4745 };
4746 static const URange32 Ahom_range32[] = {
4747  { 71424, 71450 },
4748  { 71453, 71467 },
4749  { 71472, 71487 },
4750 };
4752  { 82944, 83526 },
4753 };
4754 static const URange16 Arabic_range16[] = {
4755  { 1536, 1540 },
4756  { 1542, 1547 },
4757  { 1549, 1562 },
4758  { 1564, 1564 },
4759  { 1566, 1566 },
4760  { 1568, 1599 },
4761  { 1601, 1610 },
4762  { 1622, 1647 },
4763  { 1649, 1756 },
4764  { 1758, 1791 },
4765  { 1872, 1919 },
4766  { 2208, 2228 },
4767  { 2230, 2237 },
4768  { 2259, 2273 },
4769  { 2275, 2303 },
4770  { 64336, 64449 },
4771  { 64467, 64829 },
4772  { 64848, 64911 },
4773  { 64914, 64967 },
4774  { 65008, 65021 },
4775  { 65136, 65140 },
4776  { 65142, 65276 },
4777 };
4778 static const URange32 Arabic_range32[] = {
4779  { 69216, 69246 },
4780  { 126464, 126467 },
4781  { 126469, 126495 },
4782  { 126497, 126498 },
4783  { 126500, 126500 },
4784  { 126503, 126503 },
4785  { 126505, 126514 },
4786  { 126516, 126519 },
4787  { 126521, 126521 },
4788  { 126523, 126523 },
4789  { 126530, 126530 },
4790  { 126535, 126535 },
4791  { 126537, 126537 },
4792  { 126539, 126539 },
4793  { 126541, 126543 },
4794  { 126545, 126546 },
4795  { 126548, 126548 },
4796  { 126551, 126551 },
4797  { 126553, 126553 },
4798  { 126555, 126555 },
4799  { 126557, 126557 },
4800  { 126559, 126559 },
4801  { 126561, 126562 },
4802  { 126564, 126564 },
4803  { 126567, 126570 },
4804  { 126572, 126578 },
4805  { 126580, 126583 },
4806  { 126585, 126588 },
4807  { 126590, 126590 },
4808  { 126592, 126601 },
4809  { 126603, 126619 },
4810  { 126625, 126627 },
4811  { 126629, 126633 },
4812  { 126635, 126651 },
4813  { 126704, 126705 },
4814 };
4815 static const URange16 Armenian_range16[] = {
4816  { 1329, 1366 },
4817  { 1369, 1416 },
4818  { 1418, 1418 },
4819  { 1421, 1423 },
4820  { 64275, 64279 },
4821 };
4822 static const URange32 Avestan_range32[] = {
4823  { 68352, 68405 },
4824  { 68409, 68415 },
4825 };
4826 static const URange16 Balinese_range16[] = {
4827  { 6912, 6987 },
4828  { 6992, 7036 },
4829 };
4830 static const URange16 Bamum_range16[] = {
4831  { 42656, 42743 },
4832 };
4833 static const URange32 Bamum_range32[] = {
4834  { 92160, 92728 },
4835 };
4836 static const URange32 Bassa_Vah_range32[] = {
4837  { 92880, 92909 },
4838  { 92912, 92917 },
4839 };
4840 static const URange16 Batak_range16[] = {
4841  { 7104, 7155 },
4842  { 7164, 7167 },
4843 };
4844 static const URange16 Bengali_range16[] = {
4845  { 2432, 2435 },
4846  { 2437, 2444 },
4847  { 2447, 2448 },
4848  { 2451, 2472 },
4849  { 2474, 2480 },
4850  { 2482, 2482 },
4851  { 2486, 2489 },
4852  { 2492, 2500 },
4853  { 2503, 2504 },
4854  { 2507, 2510 },
4855  { 2519, 2519 },
4856  { 2524, 2525 },
4857  { 2527, 2531 },
4858  { 2534, 2558 },
4859 };
4860 static const URange32 Bhaiksuki_range32[] = {
4861  { 72704, 72712 },
4862  { 72714, 72758 },
4863  { 72760, 72773 },
4864  { 72784, 72812 },
4865 };
4866 static const URange16 Bopomofo_range16[] = {
4867  { 746, 747 },
4868  { 12549, 12591 },
4869  { 12704, 12730 },
4870 };
4871 static const URange32 Brahmi_range32[] = {
4872  { 69632, 69709 },
4873  { 69714, 69743 },
4874  { 69759, 69759 },
4875 };
4876 static const URange16 Braille_range16[] = {
4877  { 10240, 10495 },
4878 };
4879 static const URange16 Buginese_range16[] = {
4880  { 6656, 6683 },
4881  { 6686, 6687 },
4882 };
4883 static const URange16 Buhid_range16[] = {
4884  { 5952, 5971 },
4885 };
4887  { 5120, 5759 },
4888  { 6320, 6389 },
4889 };
4890 static const URange32 Carian_range32[] = {
4891  { 66208, 66256 },
4892 };
4894  { 66864, 66915 },
4895  { 66927, 66927 },
4896 };
4897 static const URange32 Chakma_range32[] = {
4898  { 69888, 69940 },
4899  { 69942, 69958 },
4900 };
4901 static const URange16 Cham_range16[] = {
4902  { 43520, 43574 },
4903  { 43584, 43597 },
4904  { 43600, 43609 },
4905  { 43612, 43615 },
4906 };
4907 static const URange16 Cherokee_range16[] = {
4908  { 5024, 5109 },
4909  { 5112, 5117 },
4910  { 43888, 43967 },
4911 };
4912 static const URange16 Common_range16[] = {
4913  { 0, 64 },
4914  { 91, 96 },
4915  { 123, 169 },
4916  { 171, 185 },
4917  { 187, 191 },
4918  { 215, 215 },
4919  { 247, 247 },
4920  { 697, 735 },
4921  { 741, 745 },
4922  { 748, 767 },
4923  { 884, 884 },
4924  { 894, 894 },
4925  { 901, 901 },
4926  { 903, 903 },
4927  { 1417, 1417 },
4928  { 1541, 1541 },
4929  { 1548, 1548 },
4930  { 1563, 1563 },
4931  { 1567, 1567 },
4932  { 1600, 1600 },
4933  { 1757, 1757 },
4934  { 2274, 2274 },
4935  { 2404, 2405 },
4936  { 3647, 3647 },
4937  { 4053, 4056 },
4938  { 4347, 4347 },
4939  { 5867, 5869 },
4940  { 5941, 5942 },
4941  { 6146, 6147 },
4942  { 6149, 6149 },
4943  { 7379, 7379 },
4944  { 7393, 7393 },
4945  { 7401, 7404 },
4946  { 7406, 7411 },
4947  { 7413, 7415 },
4948  { 7418, 7418 },
4949  { 8192, 8203 },
4950  { 8206, 8292 },
4951  { 8294, 8304 },
4952  { 8308, 8318 },
4953  { 8320, 8334 },
4954  { 8352, 8383 },
4955  { 8448, 8485 },
4956  { 8487, 8489 },
4957  { 8492, 8497 },
4958  { 8499, 8525 },
4959  { 8527, 8543 },
4960  { 8585, 8587 },
4961  { 8592, 9254 },
4962  { 9280, 9290 },
4963  { 9312, 10239 },
4964  { 10496, 11123 },
4965  { 11126, 11157 },
4966  { 11160, 11263 },
4967  { 11776, 11855 },
4968  { 12272, 12283 },
4969  { 12288, 12292 },
4970  { 12294, 12294 },
4971  { 12296, 12320 },
4972  { 12336, 12343 },
4973  { 12348, 12351 },
4974  { 12443, 12444 },
4975  { 12448, 12448 },
4976  { 12539, 12540 },
4977  { 12688, 12703 },
4978  { 12736, 12771 },
4979  { 12832, 12895 },
4980  { 12927, 13007 },
4981  { 13055, 13055 },
4982  { 13144, 13311 },
4983  { 19904, 19967 },
4984  { 42752, 42785 },
4985  { 42888, 42890 },
4986  { 43056, 43065 },
4987  { 43310, 43310 },
4988  { 43471, 43471 },
4989  { 43867, 43867 },
4990  { 64830, 64831 },
4991  { 65040, 65049 },
4992  { 65072, 65106 },
4993  { 65108, 65126 },
4994  { 65128, 65131 },
4995  { 65279, 65279 },
4996  { 65281, 65312 },
4997  { 65339, 65344 },
4998  { 65371, 65381 },
4999  { 65392, 65392 },
5000  { 65438, 65439 },
5001  { 65504, 65510 },
5002  { 65512, 65518 },
5003  { 65529, 65533 },
5004 };
5005 static const URange32 Common_range32[] = {
5006  { 65792, 65794 },
5007  { 65799, 65843 },
5008  { 65847, 65855 },
5009  { 65936, 65947 },
5010  { 66000, 66044 },
5011  { 66273, 66299 },
5012  { 94178, 94179 },
5013  { 113824, 113827 },
5014  { 118784, 119029 },
5015  { 119040, 119078 },
5016  { 119081, 119142 },
5017  { 119146, 119162 },
5018  { 119171, 119172 },
5019  { 119180, 119209 },
5020  { 119214, 119272 },
5021  { 119520, 119539 },
5022  { 119552, 119638 },
5023  { 119648, 119672 },
5024  { 119808, 119892 },
5025  { 119894, 119964 },
5026  { 119966, 119967 },
5027  { 119970, 119970 },
5028  { 119973, 119974 },
5029  { 119977, 119980 },
5030  { 119982, 119993 },
5031  { 119995, 119995 },
5032  { 119997, 120003 },
5033  { 120005, 120069 },
5034  { 120071, 120074 },
5035  { 120077, 120084 },
5036  { 120086, 120092 },
5037  { 120094, 120121 },
5038  { 120123, 120126 },
5039  { 120128, 120132 },
5040  { 120134, 120134 },
5041  { 120138, 120144 },
5042  { 120146, 120485 },
5043  { 120488, 120779 },
5044  { 120782, 120831 },
5045  { 126065, 126132 },
5046  { 126209, 126269 },
5047  { 126976, 127019 },
5048  { 127024, 127123 },
5049  { 127136, 127150 },
5050  { 127153, 127167 },
5051  { 127169, 127183 },
5052  { 127185, 127221 },
5053  { 127232, 127244 },
5054  { 127248, 127340 },
5055  { 127344, 127404 },
5056  { 127462, 127487 },
5057  { 127489, 127490 },
5058  { 127504, 127547 },
5059  { 127552, 127560 },
5060  { 127568, 127569 },
5061  { 127584, 127589 },
5062  { 127744, 128725 },
5063  { 128736, 128748 },
5064  { 128752, 128762 },
5065  { 128768, 128883 },
5066  { 128896, 128984 },
5067  { 128992, 129003 },
5068  { 129024, 129035 },
5069  { 129040, 129095 },
5070  { 129104, 129113 },
5071  { 129120, 129159 },
5072  { 129168, 129197 },
5073  { 129280, 129291 },
5074  { 129293, 129393 },
5075  { 129395, 129398 },
5076  { 129402, 129442 },
5077  { 129445, 129450 },
5078  { 129454, 129482 },
5079  { 129485, 129619 },
5080  { 129632, 129645 },
5081  { 129648, 129651 },
5082  { 129656, 129658 },
5083  { 129664, 129666 },
5084  { 129680, 129685 },
5085  { 917505, 917505 },
5086  { 917536, 917631 },
5087 };
5088 static const URange16 Coptic_range16[] = {
5089  { 994, 1007 },
5090  { 11392, 11507 },
5091  { 11513, 11519 },
5092 };
5093 static const URange32 Cuneiform_range32[] = {
5094  { 73728, 74649 },
5095  { 74752, 74862 },
5096  { 74864, 74868 },
5097  { 74880, 75075 },
5098 };
5099 static const URange32 Cypriot_range32[] = {
5100  { 67584, 67589 },
5101  { 67592, 67592 },
5102  { 67594, 67637 },
5103  { 67639, 67640 },
5104  { 67644, 67644 },
5105  { 67647, 67647 },
5106 };
5107 static const URange16 Cyrillic_range16[] = {
5108  { 1024, 1156 },
5109  { 1159, 1327 },
5110  { 7296, 7304 },
5111  { 7467, 7467 },
5112  { 7544, 7544 },
5113  { 11744, 11775 },
5114  { 42560, 42655 },
5115  { 65070, 65071 },
5116 };
5117 static const URange32 Deseret_range32[] = {
5118  { 66560, 66639 },
5119 };
5120 static const URange16 Devanagari_range16[] = {
5121  { 2304, 2384 },
5122  { 2389, 2403 },
5123  { 2406, 2431 },
5124  { 43232, 43263 },
5125 };
5126 static const URange32 Dogra_range32[] = {
5127  { 71680, 71739 },
5128 };
5129 static const URange32 Duployan_range32[] = {
5130  { 113664, 113770 },
5131  { 113776, 113788 },
5132  { 113792, 113800 },
5133  { 113808, 113817 },
5134  { 113820, 113823 },
5135 };
5137  { 77824, 78894 },
5138  { 78896, 78904 },
5139 };
5140 static const URange32 Elbasan_range32[] = {
5141  { 66816, 66855 },
5142 };
5143 static const URange32 Elymaic_range32[] = {
5144  { 69600, 69622 },
5145 };
5146 static const URange16 Ethiopic_range16[] = {
5147  { 4608, 4680 },
5148  { 4682, 4685 },
5149  { 4688, 4694 },
5150  { 4696, 4696 },
5151  { 4698, 4701 },
5152  { 4704, 4744 },
5153  { 4746, 4749 },
5154  { 4752, 4784 },
5155  { 4786, 4789 },
5156  { 4792, 4798 },
5157  { 4800, 4800 },
5158  { 4802, 4805 },
5159  { 4808, 4822 },
5160  { 4824, 4880 },
5161  { 4882, 4885 },
5162  { 4888, 4954 },
5163  { 4957, 4988 },
5164  { 4992, 5017 },
5165  { 11648, 11670 },
5166  { 11680, 11686 },
5167  { 11688, 11694 },
5168  { 11696, 11702 },
5169  { 11704, 11710 },
5170  { 11712, 11718 },
5171  { 11720, 11726 },
5172  { 11728, 11734 },
5173  { 11736, 11742 },
5174  { 43777, 43782 },
5175  { 43785, 43790 },
5176  { 43793, 43798 },
5177  { 43808, 43814 },
5178  { 43816, 43822 },
5179 };
5180 static const URange16 Georgian_range16[] = {
5181  { 4256, 4293 },
5182  { 4295, 4295 },
5183  { 4301, 4301 },
5184  { 4304, 4346 },
5185  { 4348, 4351 },
5186  { 7312, 7354 },
5187  { 7357, 7359 },
5188  { 11520, 11557 },
5189  { 11559, 11559 },
5190  { 11565, 11565 },
5191 };
5192 static const URange16 Glagolitic_range16[] = {
5193  { 11264, 11310 },
5194  { 11312, 11358 },
5195 };
5196 static const URange32 Glagolitic_range32[] = {
5197  { 122880, 122886 },
5198  { 122888, 122904 },
5199  { 122907, 122913 },
5200  { 122915, 122916 },
5201  { 122918, 122922 },
5202 };
5203 static const URange32 Gothic_range32[] = {
5204  { 66352, 66378 },
5205 };
5206 static const URange32 Grantha_range32[] = {
5207  { 70400, 70403 },
5208  { 70405, 70412 },
5209  { 70415, 70416 },
5210  { 70419, 70440 },
5211  { 70442, 70448 },
5212  { 70450, 70451 },
5213  { 70453, 70457 },
5214  { 70460, 70468 },
5215  { 70471, 70472 },
5216  { 70475, 70477 },
5217  { 70480, 70480 },
5218  { 70487, 70487 },
5219  { 70493, 70499 },
5220  { 70502, 70508 },
5221  { 70512, 70516 },
5222 };
5223 static const URange16 Greek_range16[] = {
5224  { 880, 883 },
5225  { 885, 887 },
5226  { 890, 893 },
5227  { 895, 895 },
5228  { 900, 900 },
5229  { 902, 902 },
5230  { 904, 906 },
5231  { 908, 908 },
5232  { 910, 929 },
5233  { 931, 993 },
5234  { 1008, 1023 },
5235  { 7462, 7466 },
5236  { 7517, 7521 },
5237  { 7526, 7530 },
5238  { 7615, 7615 },
5239  { 7936, 7957 },
5240  { 7960, 7965 },
5241  { 7968, 8005 },
5242  { 8008, 8013 },
5243  { 8016, 8023 },
5244  { 8025, 8025 },
5245  { 8027, 8027 },
5246  { 8029, 8029 },
5247  { 8031, 8061 },
5248  { 8064, 8116 },
5249  { 8118, 8132 },
5250  { 8134, 8147 },
5251  { 8150, 8155 },
5252  { 8157, 8175 },
5253  { 8178, 8180 },
5254  { 8182, 8190 },
5255  { 8486, 8486 },
5256  { 43877, 43877 },
5257 };
5258 static const URange32 Greek_range32[] = {
5259  { 65856, 65934 },
5260  { 65952, 65952 },
5261  { 119296, 119365 },
5262 };
5263 static const URange16 Gujarati_range16[] = {
5264  { 2689, 2691 },
5265  { 2693, 2701 },
5266  { 2703, 2705 },
5267  { 2707, 2728 },
5268  { 2730, 2736 },
5269  { 2738, 2739 },
5270  { 2741, 2745 },
5271  { 2748, 2757 },
5272  { 2759, 2761 },
5273  { 2763, 2765 },
5274  { 2768, 2768 },
5275  { 2784, 2787 },
5276  { 2790, 2801 },
5277  { 2809, 2815 },
5278 };
5280  { 73056, 73061 },
5281  { 73063, 73064 },
5282  { 73066, 73102 },
5283  { 73104, 73105 },
5284  { 73107, 73112 },
5285  { 73120, 73129 },
5286 };
5287 static const URange16 Gurmukhi_range16[] = {
5288  { 2561, 2563 },
5289  { 2565, 2570 },
5290  { 2575, 2576 },
5291  { 2579, 2600 },
5292  { 2602, 2608 },
5293  { 2610, 2611 },
5294  { 2613, 2614 },
5295  { 2616, 2617 },
5296  { 2620, 2620 },
5297  { 2622, 2626 },
5298  { 2631, 2632 },
5299  { 2635, 2637 },
5300  { 2641, 2641 },
5301  { 2649, 2652 },
5302  { 2654, 2654 },
5303  { 2662, 2678 },
5304 };
5305 static const URange16 Han_range16[] = {
5306  { 11904, 11929 },
5307  { 11931, 12019 },
5308  { 12032, 12245 },
5309  { 12293, 12293 },
5310  { 12295, 12295 },
5311  { 12321, 12329 },
5312  { 12344, 12347 },
5313  { 13312, 19893 },
5314  { 19968, 40943 },
5315  { 63744, 64109 },
5316  { 64112, 64217 },
5317 };
5318 static const URange32 Han_range32[] = {
5319  { 131072, 173782 },
5320  { 173824, 177972 },
5321  { 177984, 178205 },
5322  { 178208, 183969 },
5323  { 183984, 191456 },
5324  { 194560, 195101 },
5325 };
5326 static const URange16 Hangul_range16[] = {
5327  { 4352, 4607 },
5328  { 12334, 12335 },
5329  { 12593, 12686 },
5330  { 12800, 12830 },
5331  { 12896, 12926 },
5332  { 43360, 43388 },
5333  { 44032, 55203 },
5334  { 55216, 55238 },
5335  { 55243, 55291 },
5336  { 65440, 65470 },
5337  { 65474, 65479 },
5338  { 65482, 65487 },
5339  { 65490, 65495 },
5340  { 65498, 65500 },
5341 };
5343  { 68864, 68903 },
5344  { 68912, 68921 },
5345 };
5346 static const URange16 Hanunoo_range16[] = {
5347  { 5920, 5940 },
5348 };
5349 static const URange32 Hatran_range32[] = {
5350  { 67808, 67826 },
5351  { 67828, 67829 },
5352  { 67835, 67839 },
5353 };
5354 static const URange16 Hebrew_range16[] = {
5355  { 1425, 1479 },
5356  { 1488, 1514 },
5357  { 1519, 1524 },
5358  { 64285, 64310 },
5359  { 64312, 64316 },
5360  { 64318, 64318 },
5361  { 64320, 64321 },
5362  { 64323, 64324 },
5363  { 64326, 64335 },
5364 };
5365 static const URange16 Hiragana_range16[] = {
5366  { 12353, 12438 },
5367  { 12445, 12447 },
5368 };
5369 static const URange32 Hiragana_range32[] = {
5370  { 110593, 110878 },
5371  { 110928, 110930 },
5372  { 127488, 127488 },
5373 };
5375  { 67648, 67669 },
5376  { 67671, 67679 },
5377 };
5378 static const URange16 Inherited_range16[] = {
5379  { 768, 879 },
5380  { 1157, 1158 },
5381  { 1611, 1621 },
5382  { 1648, 1648 },
5383  { 2385, 2388 },
5384  { 6832, 6846 },
5385  { 7376, 7378 },
5386  { 7380, 7392 },
5387  { 7394, 7400 },
5388  { 7405, 7405 },
5389  { 7412, 7412 },
5390  { 7416, 7417 },
5391  { 7616, 7673 },
5392  { 7675, 7679 },
5393  { 8204, 8205 },
5394  { 8400, 8432 },
5395  { 12330, 12333 },
5396  { 12441, 12442 },
5397  { 65024, 65039 },
5398  { 65056, 65069 },
5399 };
5400 static const URange32 Inherited_range32[] = {
5401  { 66045, 66045 },
5402  { 66272, 66272 },
5403  { 70459, 70459 },
5404  { 119143, 119145 },
5405  { 119163, 119170 },
5406  { 119173, 119179 },
5407  { 119210, 119213 },
5408  { 917760, 917999 },
5409 };
5411  { 68448, 68466 },
5412  { 68472, 68479 },
5413 };
5415  { 68416, 68437 },
5416  { 68440, 68447 },
5417 };
5418 static const URange16 Javanese_range16[] = {
5419  { 43392, 43469 },
5420  { 43472, 43481 },
5421  { 43486, 43487 },
5422 };
5423 static const URange32 Kaithi_range32[] = {
5424  { 69760, 69825 },
5425  { 69837, 69837 },
5426 };
5427 static const URange16 Kannada_range16[] = {
5428  { 3200, 3212 },
5429  { 3214, 3216 },
5430  { 3218, 3240 },
5431  { 3242, 3251 },
5432  { 3253, 3257 },
5433  { 3260, 3268 },
5434  { 3270, 3272 },
5435  { 3274, 3277 },
5436  { 3285, 3286 },
5437  { 3294, 3294 },
5438  { 3296, 3299 },
5439  { 3302, 3311 },
5440  { 3313, 3314 },
5441 };
5442 static const URange16 Katakana_range16[] = {
5443  { 12449, 12538 },
5444  { 12541, 12543 },
5445  { 12784, 12799 },
5446  { 13008, 13054 },
5447  { 13056, 13143 },
5448  { 65382, 65391 },
5449  { 65393, 65437 },
5450 };
5451 static const URange32 Katakana_range32[] = {
5452  { 110592, 110592 },
5453  { 110948, 110951 },
5454 };
5455 static const URange16 Kayah_Li_range16[] = {
5456  { 43264, 43309 },
5457  { 43311, 43311 },
5458 };
5459 static const URange32 Kharoshthi_range32[] = {
5460  { 68096, 68099 },
5461  { 68101, 68102 },
5462  { 68108, 68115 },
5463  { 68117, 68119 },
5464  { 68121, 68149 },
5465  { 68152, 68154 },
5466  { 68159, 68168 },
5467  { 68176, 68184 },
5468 };
5469 static const URange16 Khmer_range16[] = {
5470  { 6016, 6109 },
5471  { 6112, 6121 },
5472  { 6128, 6137 },
5473  { 6624, 6655 },
5474 };
5475 static const URange32 Khojki_range32[] = {
5476  { 70144, 70161 },
5477  { 70163, 70206 },
5478 };
5479 static const URange32 Khudawadi_range32[] = {
5480  { 70320, 70378 },
5481  { 70384, 70393 },
5482 };
5483 static const URange16 Lao_range16[] = {
5484  { 3713, 3714 },
5485  { 3716, 3716 },
5486  { 3718, 3722 },
5487  { 3724, 3747 },
5488  { 3749, 3749 },
5489  { 3751, 3773 },
5490  { 3776, 3780 },
5491  { 3782, 3782 },
5492  { 3784, 3789 },
5493  { 3792, 3801 },
5494  { 3804, 3807 },
5495 };
5496 static const URange16 Latin_range16[] = {
5497  { 65, 90 },
5498  { 97, 122 },
5499  { 170, 170 },
5500  { 186, 186 },
5501  { 192, 214 },
5502  { 216, 246 },
5503  { 248, 696 },
5504  { 736, 740 },
5505  { 7424, 7461 },
5506  { 7468, 7516 },
5507  { 7522, 7525 },
5508  { 7531, 7543 },
5509  { 7545, 7614 },
5510  { 7680, 7935 },
5511  { 8305, 8305 },
5512  { 8319, 8319 },
5513  { 8336, 8348 },
5514  { 8490, 8491 },
5515  { 8498, 8498 },
5516  { 8526, 8526 },
5517  { 8544, 8584 },
5518  { 11360, 11391 },
5519  { 42786, 42887 },
5520  { 42891, 42943 },
5521  { 42946, 42950 },
5522  { 42999, 43007 },
5523  { 43824, 43866 },
5524  { 43868, 43876 },
5525  { 43878, 43879 },
5526  { 64256, 64262 },
5527  { 65313, 65338 },
5528  { 65345, 65370 },
5529 };
5530 static const URange16 Lepcha_range16[] = {
5531  { 7168, 7223 },
5532  { 7227, 7241 },
5533  { 7245, 7247 },
5534 };
5535 static const URange16 Limbu_range16[] = {
5536  { 6400, 6430 },
5537  { 6432, 6443 },
5538  { 6448, 6459 },
5539  { 6464, 6464 },
5540  { 6468, 6479 },
5541 };
5542 static const URange32 Linear_A_range32[] = {
5543  { 67072, 67382 },
5544  { 67392, 67413 },
5545  { 67424, 67431 },
5546 };
5547 static const URange32 Linear_B_range32[] = {
5548  { 65536, 65547 },
5549  { 65549, 65574 },
5550  { 65576, 65594 },
5551  { 65596, 65597 },
5552  { 65599, 65613 },
5553  { 65616, 65629 },
5554  { 65664, 65786 },
5555 };
5556 static const URange16 Lisu_range16[] = {
5557  { 42192, 42239 },
5558 };
5559 static const URange32 Lycian_range32[] = {
5560  { 66176, 66204 },
5561 };
5562 static const URange32 Lydian_range32[] = {
5563  { 67872, 67897 },
5564  { 67903, 67903 },
5565 };
5566 static const URange32 Mahajani_range32[] = {
5567  { 69968, 70006 },
5568 };
5569 static const URange32 Makasar_range32[] = {
5570  { 73440, 73464 },
5571 };
5572 static const URange16 Malayalam_range16[] = {
5573  { 3328, 3331 },
5574  { 3333, 3340 },
5575  { 3342, 3344 },
5576  { 3346, 3396 },
5577  { 3398, 3400 },
5578  { 3402, 3407 },
5579  { 3412, 3427 },
5580  { 3430, 3455 },
5581 };
5582 static const URange16 Mandaic_range16[] = {
5583  { 2112, 2139 },
5584  { 2142, 2142 },
5585 };
5586 static const URange32 Manichaean_range32[] = {
5587  { 68288, 68326 },
5588  { 68331, 68342 },
5589 };
5590 static const URange32 Marchen_range32[] = {
5591  { 72816, 72847 },
5592  { 72850, 72871 },
5593  { 72873, 72886 },
5594 };
5596  { 72960, 72966 },
5597  { 72968, 72969 },
5598  { 72971, 73014 },
5599  { 73018, 73018 },
5600  { 73020, 73021 },
5601  { 73023, 73031 },
5602  { 73040, 73049 },
5603 };
5604 static const URange32 Medefaidrin_range32[] = {
5605  { 93760, 93850 },
5606 };
5607 static const URange16 Meetei_Mayek_range16[] = {
5608  { 43744, 43766 },
5609  { 43968, 44013 },
5610  { 44016, 44025 },
5611 };
5613  { 124928, 125124 },
5614  { 125127, 125142 },
5615 };
5617  { 68000, 68023 },
5618  { 68028, 68047 },
5619  { 68050, 68095 },
5620 };
5622  { 67968, 67999 },
5623 };
5624 static const URange32 Miao_range32[] = {
5625  { 93952, 94026 },
5626  { 94031, 94087 },
5627  { 94095, 94111 },
5628 };
5629 static const URange32 Modi_range32[] = {
5630  { 71168, 71236 },
5631  { 71248, 71257 },
5632 };
5633 static const URange16 Mongolian_range16[] = {
5634  { 6144, 6145 },
5635  { 6148, 6148 },
5636  { 6150, 6158 },
5637  { 6160, 6169 },
5638  { 6176, 6264 },
5639  { 6272, 6314 },
5640 };
5641 static const URange32 Mongolian_range32[] = {
5642  { 71264, 71276 },
5643 };
5644 static const URange32 Mro_range32[] = {
5645  { 92736, 92766 },
5646  { 92768, 92777 },
5647  { 92782, 92783 },
5648 };
5649 static const URange32 Multani_range32[] = {
5650  { 70272, 70278 },
5651  { 70280, 70280 },
5652  { 70282, 70285 },
5653  { 70287, 70301 },
5654  { 70303, 70313 },
5655 };
5656 static const URange16 Myanmar_range16[] = {
5657  { 4096, 4255 },
5658  { 43488, 43518 },
5659  { 43616, 43647 },
5660 };
5661 static const URange32 Nabataean_range32[] = {
5662  { 67712, 67742 },
5663  { 67751, 67759 },
5664 };
5665 static const URange32 Nandinagari_range32[] = {
5666  { 72096, 72103 },
5667  { 72106, 72151 },
5668  { 72154, 72164 },
5669 };
5670 static const URange16 New_Tai_Lue_range16[] = {
5671  { 6528, 6571 },
5672  { 6576, 6601 },
5673  { 6608, 6618 },
5674  { 6622, 6623 },
5675 };
5676 static const URange32 Newa_range32[] = {
5677  { 70656, 70745 },
5678  { 70747, 70747 },
5679  { 70749, 70751 },
5680 };
5681 static const URange16 Nko_range16[] = {
5682  { 1984, 2042 },
5683  { 2045, 2047 },
5684 };
5685 static const URange32 Nushu_range32[] = {
5686  { 94177, 94177 },
5687  { 110960, 111355 },
5688 };
5690  { 123136, 123180 },
5691  { 123184, 123197 },
5692  { 123200, 123209 },
5693  { 123214, 123215 },
5694 };
5695 static const URange16 Ogham_range16[] = {
5696  { 5760, 5788 },
5697 };
5698 static const URange16 Ol_Chiki_range16[] = {
5699  { 7248, 7295 },
5700 };
5702  { 68736, 68786 },
5703  { 68800, 68850 },
5704  { 68858, 68863 },
5705 };
5706 static const URange32 Old_Italic_range32[] = {
5707  { 66304, 66339 },
5708  { 66349, 66351 },
5709 };
5711  { 68224, 68255 },
5712 };
5713 static const URange32 Old_Permic_range32[] = {
5714  { 66384, 66426 },
5715 };
5716 static const URange32 Old_Persian_range32[] = {
5717  { 66464, 66499 },
5718  { 66504, 66517 },
5719 };
5720 static const URange32 Old_Sogdian_range32[] = {
5721  { 69376, 69415 },
5722 };
5724  { 68192, 68223 },
5725 };
5726 static const URange32 Old_Turkic_range32[] = {
5727  { 68608, 68680 },
5728 };
5729 static const URange16 Oriya_range16[] = {
5730  { 2817, 2819 },
5731  { 2821, 2828 },
5732  { 2831, 2832 },
5733  { 2835, 2856 },
5734  { 2858, 2864 },
5735  { 2866, 2867 },
5736  { 2869, 2873 },
5737  { 2876, 2884 },
5738  { 2887, 2888 },
5739  { 2891, 2893 },
5740  { 2902, 2903 },
5741  { 2908, 2909 },
5742  { 2911, 2915 },
5743  { 2918, 2935 },
5744 };
5745 static const URange32 Osage_range32[] = {
5746  { 66736, 66771 },
5747  { 66776, 66811 },
5748 };
5749 static const URange32 Osmanya_range32[] = {
5750  { 66688, 66717 },
5751  { 66720, 66729 },
5752 };
5753 static const URange32 Pahawh_Hmong_range32[] = {
5754  { 92928, 92997 },
5755  { 93008, 93017 },
5756  { 93019, 93025 },
5757  { 93027, 93047 },
5758  { 93053, 93071 },
5759 };
5760 static const URange32 Palmyrene_range32[] = {
5761  { 67680, 67711 },
5762 };
5763 static const URange32 Pau_Cin_Hau_range32[] = {
5764  { 72384, 72440 },
5765 };
5766 static const URange16 Phags_Pa_range16[] = {
5767  { 43072, 43127 },
5768 };
5769 static const URange32 Phoenician_range32[] = {
5770  { 67840, 67867 },
5771  { 67871, 67871 },
5772 };
5774  { 68480, 68497 },
5775  { 68505, 68508 },
5776  { 68521, 68527 },
5777 };
5778 static const URange16 Rejang_range16[] = {
5779  { 43312, 43347 },
5780  { 43359, 43359 },
5781 };
5782 static const URange16 Runic_range16[] = {
5783  { 5792, 5866 },
5784  { 5870, 5880 },
5785 };
5786 static const URange16 Samaritan_range16[] = {
5787  { 2048, 2093 },
5788  { 2096, 2110 },
5789 };
5790 static const URange16 Saurashtra_range16[] = {
5791  { 43136, 43205 },
5792  { 43214, 43225 },
5793 };
5794 static const URange32 Sharada_range32[] = {
5795  { 70016, 70093 },
5796  { 70096, 70111 },
5797 };
5798 static const URange32 Shavian_range32[] = {
5799  { 66640, 66687 },
5800 };
5801 static const URange32 Siddham_range32[] = {
5802  { 71040, 71093 },
5803  { 71096, 71133 },
5804 };
5805 static const URange32 SignWriting_range32[] = {
5806  { 120832, 121483 },
5807  { 121499, 121503 },
5808  { 121505, 121519 },
5809 };
5810 static const URange16 Sinhala_range16[] = {
5811  { 3458, 3459 },
5812  { 3461, 3478 },
5813  { 3482, 3505 },
5814  { 3507, 3515 },
5815  { 3517, 3517 },
5816  { 3520, 3526 },
5817  { 3530, 3530 },
5818  { 3535, 3540 },
5819  { 3542, 3542 },
5820  { 3544, 3551 },
5821  { 3558, 3567 },
5822  { 3570, 3572 },
5823 };
5824 static const URange32 Sinhala_range32[] = {
5825  { 70113, 70132 },
5826 };
5827 static const URange32 Sogdian_range32[] = {
5828  { 69424, 69465 },
5829 };
5830 static const URange32 Sora_Sompeng_range32[] = {
5831  { 69840, 69864 },
5832  { 69872, 69881 },
5833 };
5834 static const URange32 Soyombo_range32[] = {
5835  { 72272, 72354 },
5836 };
5837 static const URange16 Sundanese_range16[] = {
5838  { 7040, 7103 },
5839  { 7360, 7367 },
5840 };
5841 static const URange16 Syloti_Nagri_range16[] = {
5842  { 43008, 43051 },
5843 };
5844 static const URange16 Syriac_range16[] = {
5845  { 1792, 1805 },
5846  { 1807, 1866 },
5847  { 1869, 1871 },
5848  { 2144, 2154 },
5849 };
5850 static const URange16 Tagalog_range16[] = {
5851  { 5888, 5900 },
5852  { 5902, 5908 },
5853 };
5854 static const URange16 Tagbanwa_range16[] = {
5855  { 5984, 5996 },
5856  { 5998, 6000 },
5857  { 6002, 6003 },
5858 };
5859 static const URange16 Tai_Le_range16[] = {
5860  { 6480, 6509 },
5861  { 6512, 6516 },
5862 };
5863 static const URange16 Tai_Tham_range16[] = {
5864  { 6688, 6750 },
5865  { 6752, 6780 },
5866  { 6783, 6793 },
5867  { 6800, 6809 },
5868  { 6816, 6829 },
5869 };
5870 static const URange16 Tai_Viet_range16[] = {
5871  { 43648, 43714 },
5872  { 43739, 43743 },
5873 };
5874 static const URange32 Takri_range32[] = {
5875  { 71296, 71352 },
5876  { 71360, 71369 },
5877 };
5878 static const URange16 Tamil_range16[] = {
5879  { 2946, 2947 },
5880  { 2949, 2954 },
5881  { 2958, 2960 },
5882  { 2962, 2965 },
5883  { 2969, 2970 },
5884  { 2972, 2972 },
5885  { 2974, 2975 },
5886  { 2979, 2980 },
5887  { 2984, 2986 },
5888  { 2990, 3001 },
5889  { 3006, 3010 },
5890  { 3014, 3016 },
5891  { 3018, 3021 },
5892  { 3024, 3024 },
5893  { 3031, 3031 },
5894  { 3046, 3066 },
5895 };
5896 static const URange32 Tamil_range32[] = {
5897  { 73664, 73713 },
5898  { 73727, 73727 },
5899 };
5900 static const URange32 Tangut_range32[] = {
5901  { 94176, 94176 },
5902  { 94208, 100343 },
5903  { 100352, 101106 },
5904 };
5905 static const URange16 Telugu_range16[] = {
5906  { 3072, 3084 },
5907  { 3086, 3088 },
5908  { 3090, 3112 },
5909  { 3114, 3129 },
5910  { 3133, 3140 },
5911  { 3142, 3144 },
5912  { 3146, 3149 },
5913  { 3157, 3158 },
5914  { 3160, 3162 },
5915  { 3168, 3171 },
5916  { 3174, 3183 },
5917  { 3191, 3199 },
5918 };
5919 static const URange16 Thaana_range16[] = {
5920  { 1920, 1969 },
5921 };
5922 static const URange16 Thai_range16[] = {
5923  { 3585, 3642 },
5924  { 3648, 3675 },
5925 };
5926 static const URange16 Tibetan_range16[] = {
5927  { 3840, 3911 },
5928  { 3913, 3948 },
5929  { 3953, 3991 },
5930  { 3993, 4028 },
5931  { 4030, 4044 },
5932  { 4046, 4052 },
5933  { 4057, 4058 },
5934 };
5935 static const URange16 Tifinagh_range16[] = {
5936  { 11568, 11623 },
5937  { 11631, 11632 },
5938  { 11647, 11647 },
5939 };
5940 static const URange32 Tirhuta_range32[] = {
5941  { 70784, 70855 },
5942  { 70864, 70873 },
5943 };
5944 static const URange32 Ugaritic_range32[] = {
5945  { 66432, 66461 },
5946  { 66463, 66463 },
5947 };
5948 static const URange16 Vai_range16[] = {
5949  { 42240, 42539 },
5950 };
5951 static const URange32 Wancho_range32[] = {
5952  { 123584, 123641 },
5953  { 123647, 123647 },
5954 };
5955 static const URange32 Warang_Citi_range32[] = {
5956  { 71840, 71922 },
5957  { 71935, 71935 },
5958 };
5959 static const URange16 Yi_range16[] = {
5960  { 40960, 42124 },
5961  { 42128, 42182 },
5962 };
5964  { 72192, 72263 },
5965 };
5966 // 3987 16-bit ranges, 1525 32-bit ranges
5968  { "Adlam", +1, 0, 0, Adlam_range32, 3 },
5969  { "Ahom", +1, 0, 0, Ahom_range32, 3 },
5970  { "Anatolian_Hieroglyphs", +1, 0, 0, Anatolian_Hieroglyphs_range32, 1 },
5971  { "Arabic", +1, Arabic_range16, 22, Arabic_range32, 35 },
5972  { "Armenian", +1, Armenian_range16, 5, 0, 0 },
5973  { "Avestan", +1, 0, 0, Avestan_range32, 2 },
5974  { "Balinese", +1, Balinese_range16, 2, 0, 0 },
5975  { "Bamum", +1, Bamum_range16, 1, Bamum_range32, 1 },
5976  { "Bassa_Vah", +1, 0, 0, Bassa_Vah_range32, 2 },
5977  { "Batak", +1, Batak_range16, 2, 0, 0 },
5978  { "Bengali", +1, Bengali_range16, 14, 0, 0 },
5979  { "Bhaiksuki", +1, 0, 0, Bhaiksuki_range32, 4 },
5980  { "Bopomofo", +1, Bopomofo_range16, 3, 0, 0 },
5981  { "Brahmi", +1, 0, 0, Brahmi_range32, 3 },
5982  { "Braille", +1, Braille_range16, 1, 0, 0 },
5983  { "Buginese", +1, Buginese_range16, 2, 0, 0 },
5984  { "Buhid", +1, Buhid_range16, 1, 0, 0 },
5985  { "C", +1, C_range16, 16, C_range32, 9 },
5986  { "Canadian_Aboriginal", +1, Canadian_Aboriginal_range16, 2, 0, 0 },
5987  { "Carian", +1, 0, 0, Carian_range32, 1 },
5988  { "Caucasian_Albanian", +1, 0, 0, Caucasian_Albanian_range32, 2 },
5989  { "Cc", +1, Cc_range16, 2, 0, 0 },
5990  { "Cf", +1, Cf_range16, 13, Cf_range32, 7 },
5991  { "Chakma", +1, 0, 0, Chakma_range32, 2 },
5992  { "Cham", +1, Cham_range16, 4, 0, 0 },
5993  { "Cherokee", +1, Cherokee_range16, 3, 0, 0 },
5994  { "Co", +1, Co_range16, 1, Co_range32, 2 },
5995  { "Common", +1, Common_range16, 91, Common_range32, 81 },
5996  { "Coptic", +1, Coptic_range16, 3, 0, 0 },
5997  { "Cs", +1, Cs_range16, 1, 0, 0 },
5998  { "Cuneiform", +1, 0, 0, Cuneiform_range32, 4 },
5999  { "Cypriot", +1, 0, 0, Cypriot_range32, 6 },
6000  { "Cyrillic", +1, Cyrillic_range16, 8, 0, 0 },
6001  { "Deseret", +1, 0, 0, Deseret_range32, 1 },
6002  { "Devanagari", +1, Devanagari_range16, 4, 0, 0 },
6003  { "Dogra", +1, 0, 0, Dogra_range32, 1 },
6004  { "Duployan", +1, 0, 0, Duployan_range32, 5 },
6005  { "Egyptian_Hieroglyphs", +1, 0, 0, Egyptian_Hieroglyphs_range32, 2 },
6006  { "Elbasan", +1, 0, 0, Elbasan_range32, 1 },
6007  { "Elymaic", +1, 0, 0, Elymaic_range32, 1 },
6008  { "Ethiopic", +1, Ethiopic_range16, 32, 0, 0 },
6009  { "Georgian", +1, Georgian_range16, 10, 0, 0 },
6010  { "Glagolitic", +1, Glagolitic_range16, 2, Glagolitic_range32, 5 },
6011  { "Gothic", +1, 0, 0, Gothic_range32, 1 },
6012  { "Grantha", +1, 0, 0, Grantha_range32, 15 },
6013  { "Greek", +1, Greek_range16, 33, Greek_range32, 3 },
6014  { "Gujarati", +1, Gujarati_range16, 14, 0, 0 },
6015  { "Gunjala_Gondi", +1, 0, 0, Gunjala_Gondi_range32, 6 },
6016  { "Gurmukhi", +1, Gurmukhi_range16, 16, 0, 0 },
6017  { "Han", +1, Han_range16, 11, Han_range32, 6 },
6018  { "Hangul", +1, Hangul_range16, 14, 0, 0 },
6019  { "Hanifi_Rohingya", +1, 0, 0, Hanifi_Rohingya_range32, 2 },
6020  { "Hanunoo", +1, Hanunoo_range16, 1, 0, 0 },
6021  { "Hatran", +1, 0, 0, Hatran_range32, 3 },
6022  { "Hebrew", +1, Hebrew_range16, 9, 0, 0 },
6023  { "Hiragana", +1, Hiragana_range16, 2, Hiragana_range32, 3 },
6024  { "Imperial_Aramaic", +1, 0, 0, Imperial_Aramaic_range32, 2 },
6025  { "Inherited", +1, Inherited_range16, 20, Inherited_range32, 8 },
6026  { "Inscriptional_Pahlavi", +1, 0, 0, Inscriptional_Pahlavi_range32, 2 },
6027  { "Inscriptional_Parthian", +1, 0, 0, Inscriptional_Parthian_range32, 2 },
6028  { "Javanese", +1, Javanese_range16, 3, 0, 0 },
6029  { "Kaithi", +1, 0, 0, Kaithi_range32, 2 },
6030  { "Kannada", +1, Kannada_range16, 13, 0, 0 },
6031  { "Katakana", +1, Katakana_range16, 7, Katakana_range32, 2 },
6032  { "Kayah_Li", +1, Kayah_Li_range16, 2, 0, 0 },
6033  { "Kharoshthi", +1, 0, 0, Kharoshthi_range32, 8 },
6034  { "Khmer", +1, Khmer_range16, 4, 0, 0 },
6035  { "Khojki", +1, 0, 0, Khojki_range32, 2 },
6036  { "Khudawadi", +1, 0, 0, Khudawadi_range32, 2 },
6037  { "L", +1, L_range16, 380, L_range32, 229 },
6038  { "Lao", +1, Lao_range16, 11, 0, 0 },
6039  { "Latin", +1, Latin_range16, 32, 0, 0 },
6040  { "Lepcha", +1, Lepcha_range16, 3, 0, 0 },
6041  { "Limbu", +1, Limbu_range16, 5, 0, 0 },
6042  { "Linear_A", +1, 0, 0, Linear_A_range32, 3 },
6043  { "Linear_B", +1, 0, 0, Linear_B_range32, 7 },
6044  { "Lisu", +1, Lisu_range16, 1, 0, 0 },
6045  { "Ll", +1, Ll_range16, 608, Ll_range32, 34 },
6046  { "Lm", +1, Lm_range16, 54, Lm_range32, 6 },
6047  { "Lo", +1, Lo_range16, 290, Lo_range32, 186 },
6048  { "Lt", +1, Lt_range16, 10, 0, 0 },
6049  { "Lu", +1, Lu_range16, 599, Lu_range32, 37 },
6050  { "Lycian", +1, 0, 0, Lycian_range32, 1 },
6051  { "Lydian", +1, 0, 0, Lydian_range32, 2 },
6052  { "M", +1, M_range16, 186, M_range32, 94 },
6053  { "Mahajani", +1, 0, 0, Mahajani_range32, 1 },
6054  { "Makasar", +1, 0, 0, Makasar_range32, 1 },
6055  { "Malayalam", +1, Malayalam_range16, 8, 0, 0 },
6056  { "Mandaic", +1, Mandaic_range16, 2, 0, 0 },
6057  { "Manichaean", +1, 0, 0, Manichaean_range32, 2 },
6058  { "Marchen", +1, 0, 0, Marchen_range32, 3 },
6059  { "Masaram_Gondi", +1, 0, 0, Masaram_Gondi_range32, 7 },
6060  { "Mc", +1, Mc_range16, 109, Mc_range32, 59 },
6061  { "Me", +1, Me_range16, 5, 0, 0 },
6062  { "Medefaidrin", +1, 0, 0, Medefaidrin_range32, 1 },
6063  { "Meetei_Mayek", +1, Meetei_Mayek_range16, 3, 0, 0 },
6064  { "Mende_Kikakui", +1, 0, 0, Mende_Kikakui_range32, 2 },
6065  { "Meroitic_Cursive", +1, 0, 0, Meroitic_Cursive_range32, 3 },
6066  { "Meroitic_Hieroglyphs", +1, 0, 0, Meroitic_Hieroglyphs_range32, 1 },
6067  { "Miao", +1, 0, 0, Miao_range32, 3 },
6068  { "Mn", +1, Mn_range16, 207, Mn_range32, 111 },
6069  { "Modi", +1, 0, 0, Modi_range32, 2 },
6070  { "Mongolian", +1, Mongolian_range16, 6, Mongolian_range32, 1 },
6071  { "Mro", +1, 0, 0, Mro_range32, 3 },
6072  { "Multani", +1, 0, 0, Multani_range32, 5 },
6073  { "Myanmar", +1, Myanmar_range16, 3, 0, 0 },
6074  { "N", +1, N_range16, 67, N_range32, 63 },
6075  { "Nabataean", +1, 0, 0, Nabataean_range32, 2 },
6076  { "Nandinagari", +1, 0, 0, Nandinagari_range32, 3 },
6077  { "Nd", +1, Nd_range16, 37, Nd_range32, 22 },
6078  { "New_Tai_Lue", +1, New_Tai_Lue_range16, 4, 0, 0 },
6079  { "Newa", +1, 0, 0, Newa_range32, 3 },
6080  { "Nko", +1, Nko_range16, 2, 0, 0 },
6081  { "Nl", +1, Nl_range16, 7, Nl_range32, 5 },
6082  { "No", +1, No_range16, 29, No_range32, 41 },
6083  { "Nushu", +1, 0, 0, Nushu_range32, 2 },
6084  { "Nyiakeng_Puachue_Hmong", +1, 0, 0, Nyiakeng_Puachue_Hmong_range32, 4 },
6085  { "Ogham", +1, Ogham_range16, 1, 0, 0 },
6086  { "Ol_Chiki", +1, Ol_Chiki_range16, 1, 0, 0 },
6087  { "Old_Hungarian", +1, 0, 0, Old_Hungarian_range32, 3 },
6088  { "Old_Italic", +1, 0, 0, Old_Italic_range32, 2 },
6089  { "Old_North_Arabian", +1, 0, 0, Old_North_Arabian_range32, 1 },
6090  { "Old_Permic", +1, 0, 0, Old_Permic_range32, 1 },
6091  { "Old_Persian", +1, 0, 0, Old_Persian_range32, 2 },
6092  { "Old_Sogdian", +1, 0, 0, Old_Sogdian_range32, 1 },
6093  { "Old_South_Arabian", +1, 0, 0, Old_South_Arabian_range32, 1 },
6094  { "Old_Turkic", +1, 0, 0, Old_Turkic_range32, 1 },
6095  { "Oriya", +1, Oriya_range16, 14, 0, 0 },
6096  { "Osage", +1, 0, 0, Osage_range32, 2 },
6097  { "Osmanya", +1, 0, 0, Osmanya_range32, 2 },
6098  { "P", +1, P_range16, 131, P_range32, 51 },
6099  { "Pahawh_Hmong", +1, 0, 0, Pahawh_Hmong_range32, 5 },
6100  { "Palmyrene", +1, 0, 0, Palmyrene_range32, 1 },
6101  { "Pau_Cin_Hau", +1, 0, 0, Pau_Cin_Hau_range32, 1 },
6102  { "Pc", +1, Pc_range16, 6, 0, 0 },
6103  { "Pd", +1, Pd_range16, 17, 0, 0 },
6104  { "Pe", +1, Pe_range16, 72, 0, 0 },
6105  { "Pf", +1, Pf_range16, 10, 0, 0 },
6106  { "Phags_Pa", +1, Phags_Pa_range16, 1, 0, 0 },
6107  { "Phoenician", +1, 0, 0, Phoenician_range32, 2 },
6108  { "Pi", +1, Pi_range16, 11, 0, 0 },
6109  { "Po", +1, Po_range16, 128, Po_range32, 51 },
6110  { "Ps", +1, Ps_range16, 75, 0, 0 },
6111  { "Psalter_Pahlavi", +1, 0, 0, Psalter_Pahlavi_range32, 3 },
6112  { "Rejang", +1, Rejang_range16, 2, 0, 0 },
6113  { "Runic", +1, Runic_range16, 2, 0, 0 },
6114  { "S", +1, S_range16, 146, S_range32, 80 },
6115  { "Samaritan", +1, Samaritan_range16, 2, 0, 0 },
6116  { "Saurashtra", +1, Saurashtra_range16, 2, 0, 0 },
6117  { "Sc", +1, Sc_range16, 18, Sc_range32, 3 },
6118  { "Sharada", +1, 0, 0, Sharada_range32, 2 },
6119  { "Shavian", +1, 0, 0, Shavian_range32, 1 },
6120  { "Siddham", +1, 0, 0, Siddham_range32, 2 },
6121  { "SignWriting", +1, 0, 0, SignWriting_range32, 3 },
6122  { "Sinhala", +1, Sinhala_range16, 12, Sinhala_range32, 1 },
6123  { "Sk", +1, Sk_range16, 28, Sk_range32, 1 },
6124  { "Sm", +1, Sm_range16, 53, Sm_range32, 11 },
6125  { "So", +1, So_range16, 111, So_range32, 69 },
6126  { "Sogdian", +1, 0, 0, Sogdian_range32, 1 },
6127  { "Sora_Sompeng", +1, 0, 0, Sora_Sompeng_range32, 2 },
6128  { "Soyombo", +1, 0, 0, Soyombo_range32, 1 },
6129  { "Sundanese", +1, Sundanese_range16, 2, 0, 0 },
6130  { "Syloti_Nagri", +1, Syloti_Nagri_range16, 1, 0, 0 },
6131  { "Syriac", +1, Syriac_range16, 4, 0, 0 },
6132  { "Tagalog", +1, Tagalog_range16, 2, 0, 0 },
6133  { "Tagbanwa", +1, Tagbanwa_range16, 3, 0, 0 },
6134  { "Tai_Le", +1, Tai_Le_range16, 2, 0, 0 },
6135  { "Tai_Tham", +1, Tai_Tham_range16, 5, 0, 0 },
6136  { "Tai_Viet", +1, Tai_Viet_range16, 2, 0, 0 },
6137  { "Takri", +1, 0, 0, Takri_range32, 2 },
6138  { "Tamil", +1, Tamil_range16, 16, Tamil_range32, 2 },
6139  { "Tangut", +1, 0, 0, Tangut_range32, 3 },
6140  { "Telugu", +1, Telugu_range16, 12, 0, 0 },
6141  { "Thaana", +1, Thaana_range16, 1, 0, 0 },
6142  { "Thai", +1, Thai_range16, 2, 0, 0 },
6143  { "Tibetan", +1, Tibetan_range16, 7, 0, 0 },
6144  { "Tifinagh", +1, Tifinagh_range16, 3, 0, 0 },
6145  { "Tirhuta", +1, 0, 0, Tirhuta_range32, 2 },
6146  { "Ugaritic", +1, 0, 0, Ugaritic_range32, 2 },
6147  { "Vai", +1, Vai_range16, 1, 0, 0 },
6148  { "Wancho", +1, 0, 0, Wancho_range32, 2 },
6149  { "Warang_Citi", +1, 0, 0, Warang_Citi_range32, 2 },
6150  { "Yi", +1, Yi_range16, 2, 0, 0 },
6151  { "Z", +1, Z_range16, 8, 0, 0 },
6152  { "Zanabazar_Square", +1, 0, 0, Zanabazar_Square_range32, 1 },
6153  { "Zl", +1, Zl_range16, 1, 0, 0 },
6154  { "Zp", +1, Zp_range16, 1, 0, 0 },
6155  { "Zs", +1, Zs_range16, 7, 0, 0 },
6156 };
6157 const int num_unicode_groups = 188;
6158 
6159 
6160 } // namespace re2
6161 
6162 
re2::Saurashtra_range16
static const URange16 Saurashtra_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5790
re2::Sc_range16
static const URange16 Sc_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4406
re2::M_range16
static const URange16 M_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:2532
re2::No_range16
static const URange16 No_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:3530
re2::Cypriot_range32
static const URange32 Cypriot_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5099
re2::URange16
Definition: bloaty/third_party/re2/re2/unicode_groups.h:28
re2::Sundanese_range16
static const URange16 Sundanese_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5837
re2::Tirhuta_range32
static const URange32 Tirhuta_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5940
re2::Cyrillic_range16
static const URange16 Cyrillic_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5107
re2::Gurmukhi_range16
static const URange16 Gurmukhi_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5287
re2::Thaana_range16
static const URange16 Thaana_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5919
re2::Makasar_range32
static const URange32 Makasar_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5569
re2::C_range16
static const URange16 C_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:10
re2::Ps_range16
static const URange16 Ps_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4099
re2::Cf_range16
static const URange16 Cf_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:43
re2::Me_range16
static const URange16 Me_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:2988
re2::New_Tai_Lue_range16
static const URange16 New_Tai_Lue_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5670
re2::Batak_range16
static const URange16 Batak_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4840
re2::Old_Hungarian_range32
static const URange32 Old_Hungarian_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5701
re2::Bopomofo_range16
static const URange16 Bopomofo_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4866
re2::Cherokee_range16
static const URange16 Cherokee_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4907
re2::Braille_range16
static const URange16 Braille_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4876
re2::Ethiopic_range16
static const URange16 Ethiopic_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5146
re2::Inherited_range16
static const URange16 Inherited_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5378
re2::Tagalog_range16
static const URange16 Tagalog_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5850
re2::Lo_range16
static const URange16 Lo_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:1400
re2::Lepcha_range16
static const URange16 Lepcha_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5530
re2::Bhaiksuki_range32
static const URange32 Bhaiksuki_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4860
re2::Osage_range32
static const URange32 Osage_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5745
re2::Han_range16
static const URange16 Han_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5305
re2::Zp_range16
static const URange16 Zp_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4729
re2::Tangut_range32
static const URange32 Tangut_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5900
re2::Greek_range16
static const URange16 Greek_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5223
re2::Sm_range32
static const URange32 Sm_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4519
re2::Greek_range32
static const URange32 Greek_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5258
re2::C_range32
static const URange32 C_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:28
re2::Georgian_range16
static const URange16 Georgian_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5180
re2::Co_range16
static const URange16 Co_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:67
re2::Nushu_range32
static const URange32 Nushu_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5685
re2::Sc_range32
static const URange32 Sc_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4426
re2::Khudawadi_range32
static const URange32 Khudawadi_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5479
re2::Mahajani_range32
static const URange32 Mahajani_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5566
re2::N_range16
static const URange16 N_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:3317
re2::Mc_range32
static const URange32 Mc_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:2927
re2::Bassa_Vah_range32
static const URange32 Bassa_Vah_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4836
re2::Anatolian_Hieroglyphs_range32
static const URange32 Anatolian_Hieroglyphs_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4751
re2::Common_range16
static const URange16 Common_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4912
re2::Po_range16
static const URange16 Po_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:3916
re2::Kharoshthi_range32
static const URange32 Kharoshthi_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5459
re2::Samaritan_range16
static const URange16 Samaritan_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5786
re2::Linear_A_range32
static const URange32 Linear_A_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5542
re2::Palmyrene_range32
static const URange32 Palmyrene_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5760
re2::Carian_range32
static const URange32 Carian_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4890
re2::Common_range32
static const URange32 Common_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5005
re2
Definition: bloaty/third_party/re2/re2/bitmap256.h:17
re2::Khojki_range32
static const URange32 Khojki_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5475
re2::Malayalam_range16
static const URange16 Malayalam_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5572
re2::Nabataean_range32
static const URange32 Nabataean_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5661
re2::Sm_range16
static const URange16 Sm_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4464
re2::Lisu_range16
static const URange16 Lisu_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5556
re2::Nd_range16
static const URange16 Nd_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:3451
re2::Tibetan_range16
static const URange16 Tibetan_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5926
re2::Limbu_range16
static const URange16 Limbu_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5535
re2::Ll_range32
static const URange32 Ll_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:1300
re2::SignWriting_range32
static const URange32 SignWriting_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5805
re2::Cf_range32
static const URange32 Cf_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:58
re2::Sinhala_range32
static const URange32 Sinhala_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5824
re2::Bamum_range16
static const URange16 Bamum_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4830
re2::Tifinagh_range16
static const URange16 Tifinagh_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5935
re2::Cc_range16
static const URange16 Cc_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:39
re2::Masaram_Gondi_range32
static const URange32 Masaram_Gondi_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5595
re2::Duployan_range32
static const URange32 Duployan_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5129
re2::Ahom_range32
static const URange32 Ahom_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4746
re2::Sogdian_range32
static const URange32 Sogdian_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5827
re2::Glagolitic_range16
static const URange16 Glagolitic_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5192
re2::M_range32
static const URange32 M_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:2720
re2::Gujarati_range16
static const URange16 Gujarati_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5263
re2::Meetei_Mayek_range16
static const URange16 Meetei_Mayek_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5607
re2::Old_Permic_range32
static const URange32 Old_Permic_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5713
re2::Lo_range32
static const URange32 Lo_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:1692
re2::Lao_range16
static const URange16 Lao_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5483
re2::Imperial_Aramaic_range32
static const URange32 Imperial_Aramaic_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5374
re2::Cuneiform_range32
static const URange32 Cuneiform_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5093
re2::Mro_range32
static const URange32 Mro_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5644
re2::Soyombo_range32
static const URange32 Soyombo_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5834
re2::Rejang_range16
static const URange16 Rejang_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5778
re2::Ugaritic_range32
static const URange32 Ugaritic_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5944
re2::Lydian_range32
static const URange32 Lydian_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5562
re2::Old_South_Arabian_range32
static const URange32 Old_South_Arabian_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5723
re2::Telugu_range16
static const URange16 Telugu_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5905
re2::Mn_range16
static const URange16 Mn_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:2995
re2::Shavian_range32
static const URange32 Shavian_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5798
re2::Tagbanwa_range16
static const URange16 Tagbanwa_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5854
re2::Runic_range16
static const URange16 Runic_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5782
re2::Hatran_range32
static const URange32 Hatran_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5349
re2::Tamil_range32
static const URange32 Tamil_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5896
re2::Hiragana_range16
static const URange16 Hiragana_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5365
re2::Tai_Tham_range16
static const URange16 Tai_Tham_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5863
re2::Grantha_range32
static const URange32 Grantha_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5206
re2::Inscriptional_Parthian_range32
static const URange32 Inscriptional_Parthian_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5414
re2::Brahmi_range32
static const URange32 Brahmi_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4871
re2::Syriac_range16
static const URange16 Syriac_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5844
re2::Glagolitic_range32
static const URange32 Glagolitic_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5196
re2::Phags_Pa_range16
static const URange16 Phags_Pa_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5766
re2::Pau_Cin_Hau_range32
static const URange32 Pau_Cin_Hau_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5763
re2::Lm_range16
static const URange16 Lm_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:1336
re2::Nl_range32
static const URange32 Nl_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:3523
re2::Hanifi_Rohingya_range32
static const URange32 Hanifi_Rohingya_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5342
re2::Modi_range32
static const URange32 Modi_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5629
re2::So_range32
static const URange32 So_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4645
re2::Sinhala_range16
static const URange16 Sinhala_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5810
re2::Mn_range32
static const URange32 Mn_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:3204
re2::Ol_Chiki_range16
static const URange16 Ol_Chiki_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5698
re2::Arabic_range32
static const URange32 Arabic_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4778
re2::num_unicode_groups
const int num_unicode_groups
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:6157
re2::Vai_range16
static const URange16 Vai_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5948
re2::Cham_range16
static const URange16 Cham_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4901
re2::Takri_range32
static const URange32 Takri_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5874
re2::Khmer_range16
static const URange16 Khmer_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5469
re2::Egyptian_Hieroglyphs_range32
static const URange32 Egyptian_Hieroglyphs_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5136
re2::Kannada_range16
static const URange16 Kannada_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5427
re2::Z_range16
static const URange16 Z_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4716
re2::Nd_range32
static const URange32 Nd_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:3490
re2::Devanagari_range16
static const URange16 Devanagari_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5120
re2::Caucasian_Albanian_range32
static const URange32 Caucasian_Albanian_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4893
re2::Elymaic_range32
static const URange32 Elymaic_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5143
re2::Sk_range16
static const URange16 Sk_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4431
re2::Pd_range16
static const URange16 Pd_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:3798
re2::Inscriptional_Pahlavi_range32
static const URange32 Inscriptional_Pahlavi_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5410
re2::Coptic_range16
static const URange16 Coptic_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5088
re2::Marchen_range32
static const URange32 Marchen_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5590
re2::Pahawh_Hmong_range32
static const URange32 Pahawh_Hmong_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5753
re2::Dogra_range32
static const URange32 Dogra_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5126
re2::Kayah_Li_range16
static const URange16 Kayah_Li_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5455
re2::S_range32
static const URange32 S_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4324
re2::Zl_range16
static const URange16 Zl_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4726
re2::Gunjala_Gondi_range32
static const URange32 Gunjala_Gondi_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5279
re2::Zs_range16
static const URange16 Zs_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4732
re2::Old_Persian_range32
static const URange32 Old_Persian_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5716
re2::Old_North_Arabian_range32
static const URange32 Old_North_Arabian_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5710
re2::Meroitic_Cursive_range32
static const URange32 Meroitic_Cursive_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5616
re2::Warang_Citi_range32
static const URange32 Warang_Citi_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5955
re2::Nandinagari_range32
static const URange32 Nandinagari_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5665
re2::Han_range32
static const URange32 Han_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5318
re2::Zanabazar_Square_range32
static const URange32 Zanabazar_Square_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5963
re2::unicode_groups
const UGroup unicode_groups[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5967
re2::Tai_Viet_range16
static const URange16 Tai_Viet_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5870
re2::Nko_range16
static const URange16 Nko_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5681
re2::Hanunoo_range16
static const URange16 Hanunoo_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5346
re2::Osmanya_range32
static const URange32 Osmanya_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5749
re2::Co_range32
static const URange32 Co_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:70
re2::Multani_range32
static const URange32 Multani_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5649
re2::Old_Sogdian_range32
static const URange32 Old_Sogdian_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5720
re2::So_range16
static const URange16 So_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4532
re2::Avestan_range32
static const URange32 Avestan_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4822
re2::Nl_range16
static const URange16 Nl_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:3514
re2::L_range32
static const URange32 L_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:459
re2::Pe_range16
static const URange16 Pe_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:3817
re2::Mandaic_range16
static const URange16 Mandaic_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5582
re2::Katakana_range16
static const URange16 Katakana_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5442
re2::Hiragana_range32
static const URange32 Hiragana_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5369
re2::Kaithi_range32
static const URange32 Kaithi_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5423
re2::Hangul_range16
static const URange16 Hangul_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5326
re2::Mc_range16
static const URange16 Mc_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:2816
re2::URange32
Definition: bloaty/third_party/re2/re2/unicode_groups.h:34
re2::S_range16
static const URange16 S_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4176
re2::Ll_range16
static const URange16 Ll_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:690
re2::Hebrew_range16
static const URange16 Hebrew_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5354
re2::Tai_Le_range16
static const URange16 Tai_Le_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5859
re2::P_range16
static const URange16 P_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:3604
re2::Psalter_Pahlavi_range32
static const URange32 Psalter_Pahlavi_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5773
re2::Miao_range32
static const URange32 Miao_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5624
re2::Sharada_range32
static const URange32 Sharada_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5794
re2::Sk_range32
static const URange32 Sk_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4461
re2::Inherited_range32
static const URange32 Inherited_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5400
re2::Adlam_range32
static const URange32 Adlam_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4741
re2::Armenian_range16
static const URange16 Armenian_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4815
re2::Bengali_range16
static const URange16 Bengali_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4844
re2::Lt_range16
static const URange16 Lt_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:1880
re2::Sora_Sompeng_range32
static const URange32 Sora_Sompeng_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5830
re2::L_range16
static const URange16 L_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:77
re2::Oriya_range16
static const URange16 Oriya_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5729
re2::Javanese_range16
static const URange16 Javanese_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5418
re2::Manichaean_range32
static const URange32 Manichaean_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5586
re2::Tamil_range16
static const URange16 Tamil_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5878
re2::Lm_range32
static const URange32 Lm_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:1392
re2::Katakana_range32
static const URange32 Katakana_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5451
re2::Buginese_range16
static const URange16 Buginese_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4879
re2::Mongolian_range32
static const URange32 Mongolian_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5641
re2::Canadian_Aboriginal_range16
static const URange16 Canadian_Aboriginal_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4886
re2::Balinese_range16
static const URange16 Balinese_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4826
re2::Pf_range16
static const URange16 Pf_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:3891
re2::Mongolian_range16
static const URange16 Mongolian_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5633
re2::Buhid_range16
static const URange16 Buhid_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4883
re2::Elbasan_range32
static const URange32 Elbasan_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5140
re2::Cs_range16
static const URange16 Cs_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:74
re2::Syloti_Nagri_range16
static const URange16 Syloti_Nagri_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5841
re2::Nyiakeng_Puachue_Hmong_range32
static const URange32 Nyiakeng_Puachue_Hmong_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5689
re2::Old_Italic_range32
static const URange32 Old_Italic_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5706
re2::Myanmar_range16
static const URange16 Myanmar_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5656
re2::Meroitic_Hieroglyphs_range32
static const URange32 Meroitic_Hieroglyphs_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5621
re2::Lu_range16
static const URange16 Lu_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:1892
re2::Gothic_range32
static const URange32 Gothic_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5203
re2::Po_range32
static const URange32 Po_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4046
re2::UGroup
Definition: bloaty/third_party/re2/re2/unicode_groups.h:40
re2::Yi_range16
static const URange16 Yi_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5959
re2::Lu_range32
static const URange32 Lu_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:2493
re2::Latin_range16
static const URange16 Latin_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5496
re2::Ogham_range16
static const URange16 Ogham_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5695
re2::Newa_range32
static const URange32 Newa_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5676
re2::Medefaidrin_range32
static const URange32 Medefaidrin_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5604
re2::Pi_range16
static const URange16 Pi_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:3903
re2::Linear_B_range32
static const URange32 Linear_B_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5547
re2::Lycian_range32
static const URange32 Lycian_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5559
re2::Mende_Kikakui_range32
static const URange32 Mende_Kikakui_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5612
re2::Thai_range16
static const URange16 Thai_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5922
re2::Pc_range16
static const URange16 Pc_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:3790
re2::Siddham_range32
static const URange32 Siddham_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5801
re2::Old_Turkic_range32
static const URange32 Old_Turkic_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5726
re2::N_range32
static const URange32 N_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:3386
re2::Wancho_range32
static const URange32 Wancho_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5951
re2::Phoenician_range32
static const URange32 Phoenician_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5769
re2::P_range32
static const URange32 P_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:3737
re2::Arabic_range16
static const URange16 Arabic_range16[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4754
re2::No_range32
static const URange32 No_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:3561
re2::Chakma_range32
static const URange32 Chakma_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4897
re2::Deseret_range32
static const URange32 Deseret_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:5117
re2::Bamum_range32
static const URange32 Bamum_range32[]
Definition: bloaty/third_party/re2/re2/unicode_groups.cc:4833


grpc
Author(s):
autogenerated on Fri May 16 2025 03:00:43