Ignore:
Timestamp:
Sep 12, 2016, 2:47:27 PM (3 years ago)
Author:
cameron
Message:

Fix for -gs mode from Xiangyu

File:
1 edited

Legend:

Unmodified
Added
Removed
  • icGREP/icgrep-devel/icgrep/UCD/WordBreakProperty.h

    r5145 r5154  
    1515namespace UCD {
    1616    namespace WB_ns {
    17     /** Code Point Ranges for CR
    18     [13, 13]**/
    19     const UnicodeSet cr_Set
    20         {{{Mixed, 1}, {Empty, 34815}},
    21          {0x00002000}};
    22     /** Code Point Ranges for DQ
    23     [34, 34]**/
    24     const UnicodeSet dq_Set
    25         {{{Empty, 1}, {Mixed, 1}, {Empty, 34814}},
    26          {0x00000004}};
    27     /** Code Point Ranges for EB
    28     [9757, 9757], [9977, 9977], [9994, 9997], [127877, 127877],
    29     [127939, 127940], [127946, 127947], [128066, 128067], [128070, 128080],
    30     [128110, 128110], [128112, 128120], [128124, 128124], [128129, 128131],
    31     [128133, 128135], [128170, 128170], [128373, 128373], [128378, 128378],
    32     [128400, 128400], [128405, 128406], [128581, 128583], [128587, 128591],
    33     [128675, 128675], [128692, 128694], [128704, 128704], [129304, 129310],
    34     [129318, 129318], [129328, 129328], [129331, 129337], [129340, 129342]**/
    35     const UnicodeSet eb_Set
    36         {{{Empty, 304}, {Mixed, 1}, {Empty, 6}, {Mixed, 2}, {Empty, 3683},
    37           {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 3}, {Mixed, 4},
    38           {Empty, 5}, {Mixed, 2}, {Empty, 5}, {Mixed, 1}, {Empty, 2},
    39           {Mixed, 2}, {Empty, 17}, {Mixed, 2}, {Empty, 30774}},
    40          {0x20000000, 0x02000000, 0x00003c00, 0x00000020, 0x00000c18,
    41           0x0001ffcc, 0x11ff4000, 0x000000ee, 0x00000400, 0x04200000,
    42           0x00610000, 0x0000f8e0, 0x00700008, 0x00000001, 0x7f000000,
    43           0x73f90040}};
    44     /** Code Point Ranges for EBG
    45     [128102, 128105]**/
    46     const UnicodeSet ebg_Set
    47         {{{Empty, 4003}, {Mixed, 1}, {Empty, 30812}},
    48          {0x000003c0}};
    49     /** Code Point Ranges for EM
    50     [127995, 127999]**/
    51     const UnicodeSet em_Set
    52         {{{Empty, 3999}, {Mixed, 1}, {Empty, 30816}},
    53          {0xf8000000}};
    54     /** Code Point Ranges for EX
    55     [95, 95], [8239, 8239], [8255, 8256], [8276, 8276], [65075, 65076],
    56     [65101, 65103], [65343, 65343]**/
    57     const UnicodeSet ex_Set
    58         {{{Empty, 2}, {Mixed, 1}, {Empty, 254}, {Mixed, 2}, {Empty, 1774},
    59           {Mixed, 2}, {Empty, 6}, {Mixed, 1}, {Empty, 32774}},
    60          {0x80000000, 0x80008000, 0x00100001, 0x00180000, 0x0000e000,
    61           0x80000000}};
    62     /** Code Point Ranges for Extend
    63     [768, 879], [1155, 1161], [1425, 1469], [1471, 1471], [1473, 1474],
    64     [1476, 1477], [1479, 1479], [1552, 1562], [1611, 1631], [1648, 1648],
    65     [1750, 1756], [1759, 1764], [1767, 1768], [1770, 1773], [1809, 1809],
    66     [1840, 1866], [1958, 1968], [2027, 2035], [2070, 2073], [2075, 2083],
    67     [2085, 2087], [2089, 2093], [2137, 2139], [2260, 2273], [2275, 2307],
    68     [2362, 2364], [2366, 2383], [2385, 2391], [2402, 2403], [2433, 2435],
    69     [2492, 2492], [2494, 2500], [2503, 2504], [2507, 2509], [2519, 2519],
    70     [2530, 2531], [2561, 2563], [2620, 2620], [2622, 2626], [2631, 2632],
    71     [2635, 2637], [2641, 2641], [2672, 2673], [2677, 2677], [2689, 2691],
    72     [2748, 2748], [2750, 2757], [2759, 2761], [2763, 2765], [2786, 2787],
    73     [2817, 2819], [2876, 2876], [2878, 2884], [2887, 2888], [2891, 2893],
    74     [2902, 2903], [2914, 2915], [2946, 2946], [3006, 3010], [3014, 3016],
    75     [3018, 3021], [3031, 3031], [3072, 3075], [3134, 3140], [3142, 3144],
    76     [3146, 3149], [3157, 3158], [3170, 3171], [3201, 3203], [3260, 3260],
    77     [3262, 3268], [3270, 3272], [3274, 3277], [3285, 3286], [3298, 3299],
    78     [3329, 3331], [3390, 3396], [3398, 3400], [3402, 3405], [3415, 3415],
    79     [3426, 3427], [3458, 3459], [3530, 3530], [3535, 3540], [3542, 3542],
    80     [3544, 3551], [3570, 3571], [3633, 3633], [3636, 3642], [3655, 3662],
    81     [3761, 3761], [3764, 3769], [3771, 3772], [3784, 3789], [3864, 3865],
    82     [3893, 3893], [3895, 3895], [3897, 3897], [3902, 3903], [3953, 3972],
    83     [3974, 3975], [3981, 3991], [3993, 4028], [4038, 4038], [4139, 4158],
    84     [4182, 4185], [4190, 4192], [4194, 4196], [4199, 4205], [4209, 4212],
    85     [4226, 4237], [4239, 4239], [4250, 4253], [4957, 4959], [5906, 5908],
    86     [5938, 5940], [5970, 5971], [6002, 6003], [6068, 6099], [6109, 6109],
    87     [6155, 6157], [6277, 6278], [6313, 6313], [6432, 6443], [6448, 6459],
    88     [6679, 6683], [6741, 6750], [6752, 6780], [6783, 6783], [6832, 6846],
    89     [6912, 6916], [6964, 6980], [7019, 7027], [7040, 7042], [7073, 7085],
    90     [7142, 7155], [7204, 7223], [7376, 7378], [7380, 7400], [7405, 7405],
    91     [7410, 7412], [7416, 7417], [7616, 7669], [7675, 7679], [8204, 8204],
    92     [8400, 8432], [11503, 11505], [11647, 11647], [11744, 11775],
    93     [12330, 12335], [12441, 12442], [42607, 42610], [42612, 42621],
    94     [42654, 42655], [42736, 42737], [43010, 43010], [43014, 43014],
    95     [43019, 43019], [43043, 43047], [43136, 43137], [43188, 43205],
    96     [43232, 43249], [43302, 43309], [43335, 43347], [43392, 43395],
    97     [43443, 43456], [43493, 43493], [43561, 43574], [43587, 43587],
    98     [43596, 43597], [43643, 43645], [43696, 43696], [43698, 43700],
    99     [43703, 43704], [43710, 43711], [43713, 43713], [43755, 43759],
    100     [43765, 43766], [44003, 44010], [44012, 44013], [64286, 64286],
    101     [65024, 65039], [65056, 65071], [65438, 65439], [66045, 66045],
    102     [66272, 66272], [66422, 66426], [68097, 68099], [68101, 68102],
    103     [68108, 68111], [68152, 68154], [68159, 68159], [68325, 68326],
    104     [69632, 69634], [69688, 69702], [69759, 69762], [69808, 69818],
    105     [69888, 69890], [69927, 69940], [70003, 70003], [70016, 70018],
    106     [70067, 70080], [70090, 70092], [70188, 70199], [70206, 70206],
    107     [70367, 70378], [70400, 70403], [70460, 70460], [70462, 70468],
    108     [70471, 70472], [70475, 70477], [70487, 70487], [70498, 70499],
    109     [70502, 70508], [70512, 70516], [70709, 70726], [70832, 70851],
    110     [71087, 71093], [71096, 71104], [71132, 71133], [71216, 71232],
    111     [71339, 71351], [71453, 71467], [72751, 72758], [72760, 72767],
    112     [72850, 72871], [72873, 72886], [92912, 92916], [92976, 92982],
    113     [94033, 94078], [94095, 94098], [113821, 113822], [119141, 119145],
    114     [119149, 119154], [119163, 119170], [119173, 119179], [119210, 119213],
    115     [119362, 119364], [121344, 121398], [121403, 121452], [121461, 121461],
    116     [121476, 121476], [121499, 121503], [121505, 121519], [122880, 122886],
    117     [122888, 122904], [122907, 122913], [122915, 122916], [122918, 122922],
    118     [125136, 125142], [125252, 125258], [917536, 917631], [917760, 917999]**/
    119     const UnicodeSet extend_Set
    120         {{{Empty, 24}, {Full, 3}, {Mixed, 1}, {Empty, 8}, {Mixed, 1},
    121           {Empty, 7}, {Mixed, 3}, {Empty, 1}, {Mixed, 1}, {Empty, 1},
    122           {Mixed, 2}, {Empty, 2}, {Mixed, 5}, {Empty, 2}, {Mixed, 1},
    123           {Empty, 1}, {Mixed, 4}, {Empty, 3}, {Mixed, 25}, {Empty, 1},
    124           {Mixed, 13}, {Empty, 1}, {Mixed, 2}, {Empty, 1}, {Mixed, 2},
    125           {Empty, 2}, {Mixed, 2}, {Empty, 1}, {Mixed, 2}, {Empty, 1},
    126           {Mixed, 4}, {Empty, 2}, {Mixed, 4}, {Empty, 21}, {Mixed, 1},
    127           {Empty, 29}, {Mixed, 4}, {Empty, 1}, {Mixed, 2}, {Empty, 1},
    128           {Mixed, 1}, {Empty, 3}, {Mixed, 2}, {Empty, 3}, {Mixed, 1},
    129           {Empty, 6}, {Mixed, 1}, {Empty, 1}, {Mixed, 2}, {Empty, 1},
    130           {Mixed, 1}, {Empty, 2}, {Mixed, 6}, {Empty, 1}, {Mixed, 1},
    131           {Empty, 1}, {Mixed, 1}, {Empty, 4}, {Mixed, 2}, {Empty, 6},
    132           {Full, 1}, {Mixed, 1}, {Empty, 16}, {Mixed, 1}, {Empty, 5},
    133           {Mixed, 2}, {Empty, 95}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
    134           {Empty, 3}, {Full, 1}, {Empty, 17}, {Mixed, 1}, {Empty, 2},
    135           {Mixed, 1}, {Empty, 942}, {Mixed, 2}, {Empty, 2}, {Mixed, 1},
    136           {Empty, 8}, {Mixed, 2}, {Empty, 2}, {Mixed, 4}, {Empty, 1},
    137           {Mixed, 2}, {Empty, 1}, {Mixed, 4}, {Empty, 1}, {Mixed, 3},
    138           {Empty, 1}, {Mixed, 3}, {Empty, 7}, {Mixed, 1}, {Empty, 632},
    139           {Mixed, 1}, {Empty, 23}, {Mixed, 2}, {Empty, 10}, {Mixed, 1},
    140           {Empty, 18}, {Mixed, 1}, {Empty, 7}, {Mixed, 1}, {Empty, 3},
    141           {Mixed, 1}, {Empty, 52}, {Mixed, 2}, {Empty, 5}, {Mixed, 1},
    142           {Empty, 40}, {Mixed, 6}, {Empty, 2}, {Mixed, 2}, {Empty, 1},
    143           {Mixed, 4}, {Empty, 2}, {Mixed, 1}, {Empty, 4}, {Mixed, 6},
    144           {Empty, 5}, {Mixed, 2}, {Empty, 2}, {Mixed, 2}, {Empty, 6},
    145           {Mixed, 2}, {Empty, 2}, {Mixed, 2}, {Empty, 2}, {Mixed, 1},
    146           {Empty, 2}, {Mixed, 2}, {Empty, 39}, {Mixed, 1}, {Empty, 2},
    147           {Mixed, 2}, {Empty, 625}, {Mixed, 1}, {Empty, 1}, {Mixed, 1},
    148           {Empty, 32}, {Mixed, 3}, {Empty, 615}, {Mixed, 1}, {Empty, 166},
    149           {Mixed, 3}, {Empty, 4}, {Mixed, 1}, {Empty, 61}, {Full, 1},
    150           {Mixed, 1}, {Full, 1}, {Mixed, 3}, {Empty, 42}, {Mixed, 2},
    151           {Empty, 68}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 24758},
    152           {Full, 3}, {Empty, 4}, {Full, 7}, {Mixed, 1}, {Empty, 6128}},
    153          {0x0000ffff, 0x000003f8, 0xfffe0000, 0xbfffffff, 0x000000b6,
    154           0x07ff0000, 0xfffff800, 0x00010000, 0x9fc00000, 0x00003d9f,
    155           0x00020000, 0xffff0000, 0x000007ff, 0x0001ffc0, 0x000ff800,
    156           0xfbc00000, 0x00003eef, 0x0e000000, 0xfff00000, 0xfffffffb,
    157           0x0000000f, 0xdc000000, 0x00feffff, 0x0000000c, 0x0000000e,
    158           0xd0000000, 0x0080399f, 0x0000000c, 0x0000000e, 0xd0000000,
    159           0x00023987, 0x00230000, 0x0000000e, 0xd0000000, 0x00003bbf,
    160           0x0000000c, 0x0000000e, 0xd0000000, 0x00c0399f, 0x0000000c,
    161           0x00000004, 0xc0000000, 0x00803dc7, 0x0000000f, 0xc0000000,
    162           0x00603ddf, 0x0000000c, 0x0000000e, 0xd0000000, 0x00603ddf,
    163           0x0000000c, 0x0000000e, 0xc0000000, 0x00803ddf, 0x0000000c,
    164           0x0000000c, 0xff5f8400, 0x000c0000, 0x07f20000, 0x00007f80,
    165           0x1bf20000, 0x00003f00, 0x03000000, 0xc2a00000, 0xfffe0000,
    166           0xfeffe0df, 0x1fffffff, 0x00000040, 0x7ffff800, 0xc3c00000,
    167           0x001e3f9d, 0x3c00bffc, 0xe0000000, 0x001c0000, 0x001c0000,
    168           0x000c0000, 0x000c0000, 0xfff00000, 0x200fffff, 0x00003800,
    169           0x00000060, 0x00000200, 0x0fff0fff, 0x0f800000, 0x7fe00000,
    170           0x9fffffff, 0x7fff0000, 0x0000001f, 0xfff00000, 0x0000001f,
    171           0x000ff800, 0x00000007, 0x00003ffe, 0x000fffc0, 0x00fffff0,
    172           0xfff70000, 0x031c21ff, 0xf83fffff, 0x00001000, 0xffff0000,
    173           0x0001ffff, 0x00038000, 0x80000000, 0x0000fc00, 0x06000000,
    174           0x3ff78000, 0xc0000000, 0x00030000, 0x00000844, 0x000000f8,
    175           0x00000003, 0xfff00000, 0x0000003f, 0x0003ffff, 0x00003fc0,
    176           0x000fff80, 0x0000000f, 0xfff80000, 0x00000001, 0x00000020,
    177           0x007ffe00, 0x00003008, 0x38000000, 0xc19d0000, 0x00000002,
    178           0x0060f800, 0x000037f8, 0x40000000, 0x0000ffff, 0x0000ffff,
    179           0xc0000000, 0x20000000, 0x00000001, 0x07c00000, 0x0000f06e,
    180           0x87000000, 0x00000060, 0x00000007, 0xff000000, 0x0000007f,
    181           0x80000000, 0x00000007, 0x07ff0000, 0x00000007, 0x001fff80,
    182           0x00080000, 0x00000007, 0xfff80000, 0x00001c01, 0x40fff000,
    183           0x80000000, 0x000007ff, 0x0000000f, 0xd0000000, 0x0080399f,
    184           0x001f1fcc, 0xffe00000, 0x0000007f, 0xffff0000, 0x0000000f,
    185           0xff3f8000, 0x30000001, 0xffff0000, 0x00000001, 0x00fff800,
    186           0xe0000000, 0x00000fff, 0xff7f8000, 0xfffc0000, 0x007ffeff,
    187           0x001f0000, 0x007f0000, 0xfffe0000, 0x7fffffff, 0x00078000,
    188           0x60000000, 0xf807e3e0, 0x00000fe7, 0x00003c00, 0x0000001c,
    189           0xf87fffff, 0x00201fff, 0xf8000010, 0x0000fffe, 0xf9ffff7f,
    190           0x000007db, 0x007f0000, 0x000007f0, 0x0000ffff}};
    191     /** Code Point Ranges for FO
    192     [173, 173], [1536, 1541], [1564, 1564], [1757, 1757], [1807, 1807],
    193     [2274, 2274], [6158, 6158], [8206, 8207], [8234, 8238], [8288, 8292],
    194     [8294, 8303], [65279, 65279], [65529, 65531], [69821, 69821],
    195     [113824, 113827], [119155, 119162], [917505, 917505]**/
    196     const UnicodeSet fo_Set
    197         {{{Empty, 5}, {Mixed, 1}, {Empty, 42}, {Mixed, 1}, {Empty, 5},
    198           {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 14}, {Mixed, 1},
    199           {Empty, 120}, {Mixed, 1}, {Empty, 63}, {Mixed, 2}, {Empty, 1},
    200           {Mixed, 1}, {Empty, 1779}, {Mixed, 1}, {Empty, 7}, {Mixed, 1},
    201           {Empty, 133}, {Mixed, 1}, {Empty, 1375}, {Mixed, 1}, {Empty, 165},
    202           {Mixed, 1}, {Empty, 24948}, {Mixed, 1}, {Empty, 6143}},
    203          {0x00002000, 0x1000003f, 0x20000000, 0x00008000, 0x00000004,
    204           0x00004000, 0x0000c000, 0x00007c00, 0x0000ffdf, 0x80000000,
    205           0x0e000000, 0x20000000, 0x0000000f, 0x07f80000, 0x00000002}};
    206     /** Code Point Ranges for GAZ
    207     [10084, 10084], [128139, 128139], [128488, 128488]**/
    208     const UnicodeSet gaz_Set
    209         {{{Empty, 315}, {Mixed, 1}, {Empty, 3688}, {Mixed, 1}, {Empty, 10},
    210           {Mixed, 1}, {Empty, 30800}},
    211          {0x00000010, 0x00000800, 0x00000100}};
    212     /** Code Point Ranges for HL
    213     [1488, 1514], [1520, 1522], [64285, 64285], [64287, 64296],
    214     [64298, 64310], [64312, 64316], [64318, 64318], [64320, 64321],
    215     [64323, 64324], [64326, 64335]**/
    216     const UnicodeSet hl_Set
    217         {{{Empty, 46}, {Mixed, 2}, {Empty, 1960}, {Mixed, 3},
    218           {Empty, 32805}},
    219          {0xffff0000, 0x000707ff, 0xa0000000, 0x5f7ffdff, 0x0000ffdb}};
    220     /** Code Point Ranges for KA
    221     [12337, 12341], [12443, 12444], [12448, 12538], [12540, 12543],
    222     [12784, 12799], [13008, 13054], [13056, 13143], [65382, 65437],
    223     [110592, 110592]**/
    224     const UnicodeSet ka_Set
    225         {{{Empty, 385}, {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Full, 2},
    226           {Mixed, 1}, {Empty, 7}, {Mixed, 1}, {Empty, 6}, {Mixed, 2},
    227           {Full, 2}, {Mixed, 1}, {Empty, 1632}, {Mixed, 2}, {Empty, 1411},
    228           {Mixed, 1}, {Empty, 31359}},
    229          {0x003e0000, 0x18000000, 0xf7ffffff, 0xffff0000, 0xffff0000,
    230           0x7fffffff, 0x00ffffff, 0xffffffc0, 0x3fffffff, 0x00000001}};
    231     /** Code Point Ranges for LE
    232     [65, 90], [97, 122], [170, 170], [181, 181], [186, 186], [192, 214],
    233     [216, 246], [248, 705], [710, 721], [736, 740], [748, 748], [750, 750],
    234     [880, 884], [886, 887], [890, 893], [895, 895], [902, 902], [904, 906],
    235     [908, 908], [910, 929], [931, 1013], [1015, 1153], [1162, 1327],
    236     [1329, 1366], [1369, 1369], [1377, 1415], [1523, 1523], [1568, 1610],
    237     [1646, 1647], [1649, 1747], [1749, 1749], [1765, 1766], [1774, 1775],
    238     [1786, 1788], [1791, 1791], [1808, 1808], [1810, 1839], [1869, 1957],
    239     [1969, 1969], [1994, 2026], [2036, 2037], [2042, 2042], [2048, 2069],
    240     [2074, 2074], [2084, 2084], [2088, 2088], [2112, 2136], [2208, 2228],
    241     [2230, 2237], [2308, 2361], [2365, 2365], [2384, 2384], [2392, 2401],
    242     [2417, 2432], [2437, 2444], [2447, 2448], [2451, 2472], [2474, 2480],
    243     [2482, 2482], [2486, 2489], [2493, 2493], [2510, 2510], [2524, 2525],
    244     [2527, 2529], [2544, 2545], [2565, 2570], [2575, 2576], [2579, 2600],
    245     [2602, 2608], [2610, 2611], [2613, 2614], [2616, 2617], [2649, 2652],
    246     [2654, 2654], [2674, 2676], [2693, 2701], [2703, 2705], [2707, 2728],
    247     [2730, 2736], [2738, 2739], [2741, 2745], [2749, 2749], [2768, 2768],
    248     [2784, 2785], [2809, 2809], [2821, 2828], [2831, 2832], [2835, 2856],
    249     [2858, 2864], [2866, 2867], [2869, 2873], [2877, 2877], [2908, 2909],
    250     [2911, 2913], [2929, 2929], [2947, 2947], [2949, 2954], [2958, 2960],
    251     [2962, 2965], [2969, 2970], [2972, 2972], [2974, 2975], [2979, 2980],
    252     [2984, 2986], [2990, 3001], [3024, 3024], [3077, 3084], [3086, 3088],
    253     [3090, 3112], [3114, 3129], [3133, 3133], [3160, 3162], [3168, 3169],
    254     [3200, 3200], [3205, 3212], [3214, 3216], [3218, 3240], [3242, 3251],
    255     [3253, 3257], [3261, 3261], [3294, 3294], [3296, 3297], [3313, 3314],
    256     [3333, 3340], [3342, 3344], [3346, 3386], [3389, 3389], [3406, 3406],
    257     [3412, 3414], [3423, 3425], [3450, 3455], [3461, 3478], [3482, 3505],
    258     [3507, 3515], [3517, 3517], [3520, 3526], [3840, 3840], [3904, 3911],
    259     [3913, 3948], [3976, 3980], [4256, 4293], [4295, 4295], [4301, 4301],
    260     [4304, 4346], [4348, 4680], [4682, 4685], [4688, 4694], [4696, 4696],
    261     [4698, 4701], [4704, 4744], [4746, 4749], [4752, 4784], [4786, 4789],
    262     [4792, 4798], [4800, 4800], [4802, 4805], [4808, 4822], [4824, 4880],
    263     [4882, 4885], [4888, 4954], [4992, 5007], [5024, 5109], [5112, 5117],
    264     [5121, 5740], [5743, 5759], [5761, 5786], [5792, 5866], [5870, 5880],
    265     [5888, 5900], [5902, 5905], [5920, 5937], [5952, 5969], [5984, 5996],
    266     [5998, 6000], [6176, 6263], [6272, 6276], [6279, 6312], [6314, 6314],
    267     [6320, 6389], [6400, 6430], [6656, 6678], [6917, 6963], [6981, 6987],
    268     [7043, 7072], [7086, 7087], [7098, 7141], [7168, 7203], [7245, 7247],
    269     [7258, 7293], [7296, 7304], [7401, 7404], [7406, 7409], [7413, 7414],
    270     [7424, 7615], [7680, 7957], [7960, 7965], [7968, 8005], [8008, 8013],
    271     [8016, 8023], [8025, 8025], [8027, 8027], [8029, 8029], [8031, 8061],
    272     [8064, 8116], [8118, 8124], [8126, 8126], [8130, 8132], [8134, 8140],
    273     [8144, 8147], [8150, 8155], [8160, 8172], [8178, 8180], [8182, 8188],
    274     [8305, 8305], [8319, 8319], [8336, 8348], [8450, 8450], [8455, 8455],
    275     [8458, 8467], [8469, 8469], [8473, 8477], [8484, 8484], [8486, 8486],
    276     [8488, 8488], [8490, 8493], [8495, 8505], [8508, 8511], [8517, 8521],
    277     [8526, 8526], [8544, 8584], [9398, 9449], [11264, 11310],
    278     [11312, 11358], [11360, 11492], [11499, 11502], [11506, 11507],
    279     [11520, 11557], [11559, 11559], [11565, 11565], [11568, 11623],
    280     [11631, 11631], [11648, 11670], [11680, 11686], [11688, 11694],
    281     [11696, 11702], [11704, 11710], [11712, 11718], [11720, 11726],
    282     [11728, 11734], [11736, 11742], [11823, 11823], [12293, 12293],
    283     [12347, 12348], [12549, 12589], [12593, 12686], [12704, 12730],
    284     [40960, 42124], [42192, 42237], [42240, 42508], [42512, 42527],
    285     [42538, 42539], [42560, 42606], [42623, 42653], [42656, 42735],
    286     [42775, 42783], [42786, 42888], [42891, 42926], [42928, 42935],
    287     [42999, 43009], [43011, 43013], [43015, 43018], [43020, 43042],
    288     [43072, 43123], [43138, 43187], [43250, 43255], [43259, 43259],
    289     [43261, 43261], [43274, 43301], [43312, 43334], [43360, 43388],
    290     [43396, 43442], [43471, 43471], [43520, 43560], [43584, 43586],
    291     [43588, 43595], [43744, 43754], [43762, 43764], [43777, 43782],
    292     [43785, 43790], [43793, 43798], [43808, 43814], [43816, 43822],
    293     [43824, 43866], [43868, 43877], [43888, 44002], [44032, 55203],
    294     [55216, 55238], [55243, 55291], [64256, 64262], [64275, 64279],
    295     [64336, 64433], [64467, 64829], [64848, 64911], [64914, 64967],
    296     [65008, 65019], [65136, 65140], [65142, 65276], [65313, 65338],
    297     [65345, 65370], [65440, 65470], [65474, 65479], [65482, 65487],
    298     [65490, 65495], [65498, 65500], [65536, 65547], [65549, 65574],
    299     [65576, 65594], [65596, 65597], [65599, 65613], [65616, 65629],
    300     [65664, 65786], [65856, 65908], [66176, 66204], [66208, 66256],
    301     [66304, 66335], [66352, 66378], [66384, 66421], [66432, 66461],
    302     [66464, 66499], [66504, 66511], [66513, 66517], [66560, 66717],
    303     [66736, 66771], [66776, 66811], [66816, 66855], [66864, 66915],
    304     [67072, 67382], [67392, 67413], [67424, 67431], [67584, 67589],
    305     [67592, 67592], [67594, 67637], [67639, 67640], [67644, 67644],
    306     [67647, 67669], [67680, 67702], [67712, 67742], [67808, 67826],
    307     [67828, 67829], [67840, 67861], [67872, 67897], [67968, 68023],
    308     [68030, 68031], [68096, 68096], [68112, 68115], [68117, 68119],
    309     [68121, 68147], [68192, 68220], [68224, 68252], [68288, 68295],
    310     [68297, 68324], [68352, 68405], [68416, 68437], [68448, 68466],
    311     [68480, 68497], [68608, 68680], [68736, 68786], [68800, 68850],
    312     [69635, 69687], [69763, 69807], [69840, 69864], [69891, 69926],
    313     [69968, 70002], [70006, 70006], [70019, 70066], [70081, 70084],
    314     [70106, 70106], [70108, 70108], [70144, 70161], [70163, 70187],
    315     [70272, 70278], [70280, 70280], [70282, 70285], [70287, 70301],
    316     [70303, 70312], [70320, 70366], [70405, 70412], [70415, 70416],
    317     [70419, 70440], [70442, 70448], [70450, 70451], [70453, 70457],
    318     [70461, 70461], [70480, 70480], [70493, 70497], [70656, 70708],
    319     [70727, 70730], [70784, 70831], [70852, 70853], [70855, 70855],
    320     [71040, 71086], [71128, 71131], [71168, 71215], [71236, 71236],
    321     [71296, 71338], [71840, 71903], [71935, 71935], [72384, 72440],
    322     [72704, 72712], [72714, 72750], [72768, 72768], [72818, 72847],
    323     [73728, 74649], [74752, 74862], [74880, 75075], [77824, 78894],
    324     [82944, 83526], [92160, 92728], [92736, 92766], [92880, 92909],
    325     [92928, 92975], [92992, 92995], [93027, 93047], [93053, 93071],
    326     [93952, 94020], [94032, 94032], [94099, 94111], [94176, 94176],
    327     [113664, 113770], [113776, 113788], [113792, 113800], [113808, 113817],
    328     [119808, 119892], [119894, 119964], [119966, 119967], [119970, 119970],
    329     [119973, 119974], [119977, 119980], [119982, 119993], [119995, 119995],
    330     [119997, 120003], [120005, 120069], [120071, 120074], [120077, 120084],
    331     [120086, 120092], [120094, 120121], [120123, 120126], [120128, 120132],
    332     [120134, 120134], [120138, 120144], [120146, 120485], [120488, 120512],
    333     [120514, 120538], [120540, 120570], [120572, 120596], [120598, 120628],
    334     [120630, 120654], [120656, 120686], [120688, 120712], [120714, 120744],
    335     [120746, 120770], [120772, 120779], [124928, 125124], [125184, 125251],
    336     [126464, 126467], [126469, 126495], [126497, 126498], [126500, 126500],
    337     [126503, 126503], [126505, 126514], [126516, 126519], [126521, 126521],
    338     [126523, 126523], [126530, 126530], [126535, 126535], [126537, 126537],
    339     [126539, 126539], [126541, 126543], [126545, 126546], [126548, 126548],
    340     [126551, 126551], [126553, 126553], [126555, 126555], [126557, 126557],
    341     [126559, 126559], [126561, 126562], [126564, 126564], [126567, 126570],
    342     [126572, 126578], [126580, 126583], [126585, 126588], [126590, 126590],
    343     [126592, 126601], [126603, 126619], [126625, 126627], [126629, 126633],
    344     [126635, 126651], [127280, 127305], [127312, 127337], [127344, 127369]**/
    345     const UnicodeSet le_Set
    346         {{{Empty, 2}, {Mixed, 2}, {Empty, 1}, {Mixed, 3}, {Full, 14},
    347           {Mixed, 2}, {Empty, 3}, {Mixed, 3}, {Full, 1}, {Mixed, 1},
    348           {Full, 4}, {Mixed, 1}, {Full, 4}, {Mixed, 4}, {Empty, 2},
    349           {Mixed, 1}, {Empty, 1}, {Full, 1}, {Mixed, 2}, {Full, 2},
    350           {Mixed, 5}, {Full, 2}, {Mixed, 6}, {Empty, 2}, {Mixed, 1},
    351           {Empty, 2}, {Mixed, 23}, {Empty, 1}, {Mixed, 15}, {Empty, 9},
    352           {Mixed, 1}, {Empty, 1}, {Mixed, 3}, {Empty, 8}, {Full, 1},
    353           {Mixed, 2}, {Full, 10}, {Mixed, 1}, {Full, 1}, {Mixed, 3},
    354           {Full, 1}, {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Empty, 1},
    355           {Mixed, 1}, {Full, 2}, {Mixed, 2}, {Full, 18}, {Mixed, 2},
    356           {Full, 2}, {Mixed, 5}, {Empty, 5}, {Full, 2}, {Mixed, 3},
    357           {Full, 1}, {Mixed, 2}, {Empty, 7}, {Mixed, 1}, {Empty, 7},
    358           {Mixed, 3}, {Empty, 1}, {Mixed, 2}, {Full, 1}, {Mixed, 1},
    359           {Full, 1}, {Mixed, 4}, {Empty, 2}, {Mixed, 1}, {Full, 6},
    360           {Empty, 2}, {Full, 8}, {Mixed, 1}, {Full, 1}, {Mixed, 2},
    361           {Full, 1}, {Mixed, 3}, {Empty, 3}, {Mixed, 2}, {Empty, 3},
    362           {Mixed, 3}, {Full, 1}, {Mixed, 1}, {Empty, 24}, {Mixed, 1},
    363           {Full, 1}, {Mixed, 1}, {Empty, 56}, {Full, 1}, {Mixed, 2},
    364           {Full, 4}, {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Full, 1},
    365           {Mixed, 4}, {Empty, 2}, {Mixed, 1}, {Empty, 14}, {Mixed, 2},
    366           {Empty, 6}, {Mixed, 2}, {Full, 2}, {Mixed, 2}, {Empty, 882},
    367           {Full, 36}, {Mixed, 1}, {Empty, 1}, {Mixed, 2}, {Full, 8},
    368           {Mixed, 2}, {Full, 1}, {Mixed, 2}, {Full, 2}, {Mixed, 3},
    369           {Full, 2}, {Mixed, 2}, {Empty, 1}, {Mixed, 3}, {Full, 1},
    370           {Mixed, 3}, {Empty, 1}, {Mixed, 8}, {Empty, 1}, {Full, 1},
    371           {Mixed, 2}, {Empty, 4}, {Mixed, 5}, {Full, 3}, {Mixed, 1},
    372           {Full, 349}, {Mixed, 3}, {Empty, 280}, {Mixed, 1}, {Empty, 1},
    373           {Mixed, 1}, {Full, 2}, {Mixed, 2}, {Full, 10}, {Mixed, 2},
    374           {Full, 1}, {Mixed, 1}, {Full, 1}, {Mixed, 2}, {Empty, 3},
    375           {Mixed, 1}, {Full, 3}, {Mixed, 1}, {Empty, 1}, {Mixed, 2},
    376           {Empty, 2}, {Mixed, 2}, {Empty, 1}, {Mixed, 3}, {Empty, 1},
    377           {Full, 3}, {Mixed, 1}, {Empty, 2}, {Full, 1}, {Mixed, 1},
    378           {Empty, 8}, {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Empty, 1},
    379           {Full, 1}, {Mixed, 4}, {Full, 1}, {Mixed, 1}, {Empty, 1},
    380           {Full, 4}, {Mixed, 4}, {Full, 1}, {Mixed, 1}, {Full, 1},
    381           {Mixed, 1}, {Empty, 4}, {Full, 9}, {Mixed, 3}, {Empty, 4},
    382           {Mixed, 5}, {Empty, 2}, {Mixed, 3}, {Empty, 2}, {Full, 1},
    383           {Mixed, 1}, {Empty, 2}, {Mixed, 2}, {Empty, 1}, {Mixed, 2},
    384           {Empty, 1}, {Mixed, 2}, {Full, 1}, {Mixed, 4}, {Empty, 3},
    385           {Full, 2}, {Mixed, 1}, {Empty, 1}, {Full, 1}, {Mixed, 1},
    386           {Full, 1}, {Mixed, 1}, {Empty, 24}, {Mixed, 2}, {Empty, 2},
    387           {Mixed, 11}, {Empty, 1}, {Mixed, 2}, {Empty, 2}, {Mixed, 3},
    388           {Empty, 1}, {Mixed, 4}, {Empty, 4}, {Full, 1}, {Mixed, 2},
    389           {Empty, 1}, {Full, 1}, {Mixed, 2}, {Empty, 5}, {Full, 1},
    390           {Mixed, 2}, {Empty, 1}, {Full, 1}, {Mixed, 2}, {Empty, 1},
    391           {Full, 1}, {Mixed, 1}, {Empty, 15}, {Full, 2}, {Mixed, 1},
    392           {Empty, 14}, {Full, 1}, {Mixed, 1}, {Empty, 8}, {Mixed, 5},
    393           {Empty, 27}, {Full, 28}, {Mixed, 1}, {Empty, 3}, {Full, 3},
    394           {Mixed, 1}, {Full, 6}, {Mixed, 1}, {Empty, 85}, {Full, 33},
    395           {Mixed, 1}, {Empty, 126}, {Full, 18}, {Mixed, 1}, {Empty, 269},
    396           {Full, 17}, {Mixed, 2}, {Empty, 3}, {Mixed, 2}, {Full, 1},
    397           {Mixed, 4}, {Empty, 27}, {Full, 2}, {Mixed, 1}, {Empty, 1},
    398           {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Empty, 608}, {Full, 3},
    399           {Mixed, 2}, {Empty, 187}, {Full, 2}, {Mixed, 1}, {Full, 1},
    400           {Mixed, 3}, {Full, 1}, {Mixed, 3}, {Full, 10}, {Mixed, 10},
    401           {Empty, 129}, {Full, 6}, {Mixed, 1}, {Empty, 1}, {Full, 2},
    402           {Mixed, 1}, {Empty, 37}, {Mixed, 6}, {Empty, 19}, {Mixed, 4},
    403           {Empty, 30835}},
    404          {0x07fffffe, 0x07fffffe, 0x04200400, 0xff7fffff, 0xff7fffff,
    405           0x0003ffc3, 0x0000501f, 0xbcdf0000, 0xffffd740, 0xfffffffb,
    406           0xffbfffff, 0xfffffc03, 0xfffeffff, 0x027fffff, 0xfffffffe,
    407           0x000000ff, 0x00080000, 0x000007ff, 0xfffec000, 0x002fffff,
    408           0x9c00c060, 0xfffd0000, 0x0000ffff, 0xffffe000, 0x0002003f,
    409           0xfffffc00, 0x043007ff, 0x043fffff, 0x00000110, 0x01ffffff,
    410           0x3fdfffff, 0xfffffff0, 0x23ffffff, 0xff010000, 0xfffe0003,
    411           0xfff99fe1, 0x23c5fdff, 0xb0004000, 0x00030003, 0xfff987e0,
    412           0x036dfdff, 0x5e000000, 0x001c0000, 0xfffbbfe0, 0x23edfdff,
    413           0x00010000, 0x02000003, 0xfff99fe0, 0x23edfdff, 0xb0000000,
    414           0x00020003, 0xd63dc7e8, 0x03ffc718, 0x00010000, 0xfffddfe0,
    415           0x23fffdff, 0x07000000, 0x00000003, 0xfffddfe1, 0x23effdff,
    416           0x40000000, 0x00060003, 0xfffddfe0, 0x27ffffff, 0x80704000,
    417           0xfc000003, 0xfc7fffe0, 0x2ffbffff, 0x0000007f, 0x00000001,
    418           0xfffffeff, 0x00001fff, 0x00001f00, 0xffff20bf, 0xf7ffffff,
    419           0x3d7f3dff, 0xffff3dff, 0x7f3dffff, 0xff7fff3d, 0xff3dffff,
    420           0x07ffffff, 0x0000ffff, 0x3f3fffff, 0xfffffffe, 0xffff9fff,
    421           0x07fffffe, 0x01ffc7ff, 0x0003dfff, 0x0003ffff, 0x0003ffff,
    422           0x0001dfff, 0x00ffffff, 0xffffff9f, 0xffff05ff, 0x003fffff,
    423           0x7fffffff, 0x007fffff, 0xffffffe0, 0x000fffff, 0x00000fe0,
    424           0xfffffff8, 0xfc00c001, 0x0000003f, 0x0000000f, 0xfc00e000,
    425           0x3fffffff, 0x000001ff, 0x0063de00, 0x3f3fffff, 0xaaff3f3f,
    426           0x3fffffff, 0x5fdfffff, 0x0fcf1fdc, 0x1fdc1fff, 0x80020000,
    427           0x1fff0000, 0x3e2ffc84, 0xf3ffbd50, 0x000043e0, 0x000001ff,
    428           0xffc00000, 0x000003ff, 0xffff7fff, 0x7fffffff, 0x000c781f,
    429           0xffff20bf, 0x000080ff, 0x007fffff, 0x7f7f7f7f, 0x7f7f7f7f,
    430           0x00008000, 0x00000020, 0x18000000, 0xffffffe0, 0xfffe3fff,
    431           0x00007fff, 0x07ffffff, 0x00001fff, 0xffff0000, 0x3fffffff,
    432           0xffff1fff, 0x00000c00, 0x80007fff, 0x3fffffff, 0x0000ffff,
    433           0xff800000, 0xfffffffc, 0xfffff9ff, 0x00ff7fff, 0xff800000,
    434           0xfffff7bb, 0x00000007, 0x000fffff, 0xfffffffc, 0x000fffff,
    435           0x28fc0000, 0xfffffc00, 0xffff003f, 0x0000007f, 0x1fffffff,
    436           0xfffffff0, 0x0007ffff, 0x00008000, 0x000001ff, 0x00000ff7,
    437           0x001c07ff, 0x007e7e7e, 0xffff7f7f, 0xf7ffffff, 0xffff003f,
    438           0x00000007, 0xffff000f, 0xfffff87f, 0x0fffffff, 0x00f8007f,
    439           0xffff0000, 0x0003ffff, 0xfff80000, 0x3fffffff, 0xffff0000,
    440           0xfffcffff, 0x000000ff, 0x0fff0000, 0xffdf0000, 0x1fffffff,
    441           0x07fffffe, 0x07fffffe, 0x7fffffff, 0x1cfcfcfc, 0xffffefff,
    442           0xb7ffff7f, 0x3fff3fff, 0x07ffffff, 0x001fffff, 0x1fffffff,
    443           0x0001ffff, 0xffff0000, 0xffff07ff, 0x003fffff, 0x3fffffff,
    444           0x003eff0f, 0x3fffffff, 0xffff0000, 0xff0fffff, 0x0fffffff,
    445           0xffff00ff, 0x0000000f, 0x007fffff, 0x003fffff, 0x000000ff,
    446           0xfffffd3f, 0x91bfffff, 0x003fffff, 0x007fffff, 0x7fffffff,
    447           0x0037ffff, 0x003fffff, 0x03ffffff, 0xc0ffffff, 0xfeef0001,
    448           0x000fffff, 0x1fffffff, 0x1fffffff, 0xfffffeff, 0x0000001f,
    449           0x003fffff, 0x003fffff, 0x0007ffff, 0x0003ffff, 0x000001ff,
    450           0x0007ffff, 0x0007ffff, 0xfffffff8, 0x00ffffff, 0xfffffff8,
    451           0x0000ffff, 0xffff0000, 0x000001ff, 0xfffffff8, 0x0000007f,
    452           0xffff0000, 0x0047ffff, 0xfffffff8, 0x0007ffff, 0x1400001e,
    453           0xfffbffff, 0x00000fff, 0xbfffbd7f, 0xffff01ff, 0x7fffffff,
    454           0xfff99fe0, 0x23edfdff, 0xe0010000, 0x00000003, 0x001fffff,
    455           0x00000780, 0x0000ffff, 0x000000b0, 0x00007fff, 0x0f000000,
    456           0x0000ffff, 0x00000010, 0x000007ff, 0x80000000, 0x01ffffff,
    457           0xfffffdff, 0x00007fff, 0x00000001, 0xfffc0000, 0x0000ffff,
    458           0x03ffffff, 0x00007fff, 0x0000000f, 0x00007fff, 0x0000007f,
    459           0x01ffffff, 0x7fffffff, 0xffff0000, 0x00003fff, 0x0000ffff,
    460           0x0000000f, 0xe0fffff8, 0x0000ffff, 0x0001001f, 0xfff80000,
    461           0x00000001, 0x1fff07ff, 0x03ff01ff, 0xffdfffff, 0xdfffffff,
    462           0xebffde64, 0xffffffef, 0xdfdfe7bf, 0x7bffffff, 0xfffdfc5f,
    463           0xffffff3f, 0xf7fffffd, 0xf7ffffff, 0xffdfffff, 0xffdfffff,
    464           0xffff7fff, 0xffff7fff, 0xfffffdff, 0xfffffdff, 0x00000ff7,
    465           0x0000001f, 0x0000000f, 0xffffffef, 0x0af7fe96, 0xaa96ea84,
    466           0x5ef7f796, 0x0ffffbff, 0x0ffffbee, 0xffff0000, 0xffff03ff,
    467           0xffff03ff, 0x000003ff}};
    468     /** Code Point Ranges for LF
    469     [10, 10]**/
    470     const UnicodeSet lf_Set
    471         {{{Mixed, 1}, {Empty, 34815}},
    472          {0x00000400}};
    473     /** Code Point Ranges for MB
    474     [46, 46], [8216, 8217], [8228, 8228], [65106, 65106], [65287, 65287],
    475     [65294, 65294]**/
    476     const UnicodeSet mb_Set
    477         {{{Empty, 1}, {Mixed, 1}, {Empty, 254}, {Mixed, 2}, {Empty, 1776},
    478           {Mixed, 1}, {Empty, 5}, {Mixed, 1}, {Empty, 32775}},
    479          {0x00004000, 0x03000000, 0x00000010, 0x00040000, 0x00004080}};
    480     /** Code Point Ranges for ML
    481     [58, 58], [183, 183], [727, 727], [903, 903], [1524, 1524],
    482     [8231, 8231], [65043, 65043], [65109, 65109], [65306, 65306]**/
    483     const UnicodeSet ml_Set
    484         {{{Empty, 1}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 16},
    485           {Mixed, 1}, {Empty, 5}, {Mixed, 1}, {Empty, 18}, {Mixed, 1},
    486           {Empty, 209}, {Mixed, 1}, {Empty, 1774}, {Mixed, 1}, {Empty, 1},
    487           {Mixed, 1}, {Empty, 5}, {Mixed, 1}, {Empty, 32775}},
    488          {0x04000000, 0x00800000, 0x00800000, 0x00000080, 0x00100000,
    489           0x00000080, 0x00080000, 0x00200000, 0x04000000}};
    490     /** Code Point Ranges for MN
    491     [44, 44], [59, 59], [894, 894], [1417, 1417], [1548, 1549],
    492     [1644, 1644], [2040, 2040], [8260, 8260], [65040, 65040],
    493     [65044, 65044], [65104, 65104], [65108, 65108], [65292, 65292],
    494     [65307, 65307]**/
    495     const UnicodeSet mn_Set
    496         {{{Empty, 1}, {Mixed, 1}, {Empty, 25}, {Mixed, 1}, {Empty, 16},
    497           {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 2}, {Mixed, 1},
    498           {Empty, 11}, {Mixed, 1}, {Empty, 194}, {Mixed, 1}, {Empty, 1773},
    499           {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 5}, {Mixed, 1},
    500           {Empty, 32775}},
    501          {0x08001000, 0x40000000, 0x00000200, 0x00003000, 0x00001000,
    502           0x01000000, 0x00000010, 0x00110000, 0x00110000, 0x08001000}};
    503     /** Code Point Ranges for NL
    504     [11, 12], [133, 133], [8232, 8233]**/
    505     const UnicodeSet nl_Set
    506         {{{Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 252}, {Mixed, 1},
    507           {Empty, 34558}},
    508          {0x00001800, 0x00000020, 0x00000300}};
    509     /** Code Point Ranges for NU
    510     [48, 57], [1632, 1641], [1643, 1643], [1776, 1785], [1984, 1993],
    511     [2406, 2415], [2534, 2543], [2662, 2671], [2790, 2799], [2918, 2927],
    512     [3046, 3055], [3174, 3183], [3302, 3311], [3430, 3439], [3558, 3567],
    513     [3664, 3673], [3792, 3801], [3872, 3881], [4160, 4169], [4240, 4249],
    514     [6112, 6121], [6160, 6169], [6470, 6479], [6608, 6617], [6784, 6793],
    515     [6800, 6809], [6992, 7001], [7088, 7097], [7232, 7241], [7248, 7257],
    516     [42528, 42537], [43216, 43225], [43264, 43273], [43472, 43481],
    517     [43504, 43513], [43600, 43609], [44016, 44025], [66720, 66729],
    518     [69734, 69743], [69872, 69881], [69942, 69951], [70096, 70105],
    519     [70384, 70393], [70736, 70745], [70864, 70873], [71248, 71257],
    520     [71360, 71369], [71472, 71481], [71904, 71913], [72784, 72793],
    521     [92768, 92777], [93008, 93017], [120782, 120831], [125264, 125273]**/
    522     const UnicodeSet nu_Set
    523         {{{Empty, 1}, {Mixed, 1}, {Empty, 49}, {Mixed, 1}, {Empty, 3},
    524           {Mixed, 1}, {Empty, 6}, {Mixed, 1}, {Empty, 12}, {Mixed, 1},
    525           {Empty, 3}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 3},
    526           {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
    527           {Empty, 3}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 3},
    528           {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 2}, {Mixed, 1},
    529           {Empty, 3}, {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Empty, 8},
    530           {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 58}, {Mixed, 2},
    531           {Empty, 9}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 5},
    532           {Mixed, 1}, {Empty, 5}, {Mixed, 1}, {Empty, 2}, {Mixed, 1},
    533           {Empty, 4}, {Mixed, 1}, {Empty, 1102}, {Mixed, 1}, {Empty, 20},
    534           {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 5}, {Mixed, 2},
    535           {Empty, 2}, {Mixed, 1}, {Empty, 12}, {Mixed, 1}, {Empty, 709},
    536           {Mixed, 1}, {Empty, 93}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
    537           {Empty, 1}, {Mixed, 1}, {Empty, 4}, {Mixed, 1}, {Empty, 8},
    538           {Mixed, 1}, {Empty, 10}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
    539           {Empty, 11}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 2},
    540           {Mixed, 1}, {Empty, 13}, {Mixed, 1}, {Empty, 26}, {Mixed, 1},
    541           {Empty, 624}, {Mixed, 1}, {Empty, 6}, {Mixed, 1}, {Empty, 867},
    542           {Mixed, 1}, {Full, 1}, {Empty, 138}, {Mixed, 1}, {Empty, 30901}},
    543          {0x03ff0000, 0x00000bff, 0x03ff0000, 0x000003ff, 0x0000ffc0,
    544           0x0000ffc0, 0x0000ffc0, 0x0000ffc0, 0x0000ffc0, 0x0000ffc0,
    545           0x0000ffc0, 0x0000ffc0, 0x0000ffc0, 0x0000ffc0, 0x03ff0000,
    546           0x03ff0000, 0x000003ff, 0x000003ff, 0x03ff0000, 0x000003ff,
    547           0x03ff0000, 0x0000ffc0, 0x03ff0000, 0x03ff03ff, 0x03ff0000,
    548           0x03ff0000, 0x03ff03ff, 0x000003ff, 0x03ff0000, 0x000003ff,
    549           0x03ff0000, 0x03ff0000, 0x03ff0000, 0x03ff0000, 0x000003ff,
    550           0x0000ffc0, 0x03ff0000, 0xffc00000, 0x03ff0000, 0x03ff0000,
    551           0x03ff0000, 0x03ff0000, 0x03ff0000, 0x000003ff, 0x03ff0000,
    552           0x000003ff, 0x03ff0000, 0x000003ff, 0x03ff0000, 0xffffc000,
    553           0x03ff0000}};
    554     /** Code Point Ranges for RI
    555     [127462, 127487]**/
    556     const UnicodeSet ri_Set
    557         {{{Empty, 3983}, {Mixed, 1}, {Empty, 30832}},
    558          {0xffffffc0}};
    559     /** Code Point Ranges for SQ
    560     [39, 39]**/
    561     const UnicodeSet sq_Set
    562         {{{Empty, 1}, {Mixed, 1}, {Empty, 34814}},
    563          {0x00000080}};
    56417    /** Code Point Ranges for XX
    56518    [0, 9], [14, 33], [35, 38], [40, 43], [45, 45], [47, 47], [60, 64],
     
    876329          0xfbdfffff, 0xff9effff, 0xfffffeff, 0xffff071f, 0xff8ffff7,
    877330          0xfffffffe, 0x80ffffff, 0x8c06ffbf, 0xfffffffd, 0xffff0000}};
     331    /** Code Point Ranges for DQ
     332    [34, 34]**/
     333    const UnicodeSet dq_Set
     334        {{{Empty, 1}, {Mixed, 1}, {Empty, 34814}},
     335         {0x00000004}};
     336    /** Code Point Ranges for SQ
     337    [39, 39]**/
     338    const UnicodeSet sq_Set
     339        {{{Empty, 1}, {Mixed, 1}, {Empty, 34814}},
     340         {0x00000080}};
     341    /** Code Point Ranges for HL
     342    [1488, 1514], [1520, 1522], [64285, 64285], [64287, 64296],
     343    [64298, 64310], [64312, 64316], [64318, 64318], [64320, 64321],
     344    [64323, 64324], [64326, 64335]**/
     345    const UnicodeSet hl_Set
     346        {{{Empty, 46}, {Mixed, 2}, {Empty, 1960}, {Mixed, 3},
     347          {Empty, 32805}},
     348         {0xffff0000, 0x000707ff, 0xa0000000, 0x5f7ffdff, 0x0000ffdb}};
     349    /** Code Point Ranges for CR
     350    [13, 13]**/
     351    const UnicodeSet cr_Set
     352        {{{Mixed, 1}, {Empty, 34815}},
     353         {0x00002000}};
     354    /** Code Point Ranges for LF
     355    [10, 10]**/
     356    const UnicodeSet lf_Set
     357        {{{Mixed, 1}, {Empty, 34815}},
     358         {0x00000400}};
     359    /** Code Point Ranges for NL
     360    [11, 12], [133, 133], [8232, 8233]**/
     361    const UnicodeSet nl_Set
     362        {{{Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 252}, {Mixed, 1},
     363          {Empty, 34558}},
     364         {0x00001800, 0x00000020, 0x00000300}};
     365    /** Code Point Ranges for Extend
     366    [768, 879], [1155, 1161], [1425, 1469], [1471, 1471], [1473, 1474],
     367    [1476, 1477], [1479, 1479], [1552, 1562], [1611, 1631], [1648, 1648],
     368    [1750, 1756], [1759, 1764], [1767, 1768], [1770, 1773], [1809, 1809],
     369    [1840, 1866], [1958, 1968], [2027, 2035], [2070, 2073], [2075, 2083],
     370    [2085, 2087], [2089, 2093], [2137, 2139], [2260, 2273], [2275, 2307],
     371    [2362, 2364], [2366, 2383], [2385, 2391], [2402, 2403], [2433, 2435],
     372    [2492, 2492], [2494, 2500], [2503, 2504], [2507, 2509], [2519, 2519],
     373    [2530, 2531], [2561, 2563], [2620, 2620], [2622, 2626], [2631, 2632],
     374    [2635, 2637], [2641, 2641], [2672, 2673], [2677, 2677], [2689, 2691],
     375    [2748, 2748], [2750, 2757], [2759, 2761], [2763, 2765], [2786, 2787],
     376    [2817, 2819], [2876, 2876], [2878, 2884], [2887, 2888], [2891, 2893],
     377    [2902, 2903], [2914, 2915], [2946, 2946], [3006, 3010], [3014, 3016],
     378    [3018, 3021], [3031, 3031], [3072, 3075], [3134, 3140], [3142, 3144],
     379    [3146, 3149], [3157, 3158], [3170, 3171], [3201, 3203], [3260, 3260],
     380    [3262, 3268], [3270, 3272], [3274, 3277], [3285, 3286], [3298, 3299],
     381    [3329, 3331], [3390, 3396], [3398, 3400], [3402, 3405], [3415, 3415],
     382    [3426, 3427], [3458, 3459], [3530, 3530], [3535, 3540], [3542, 3542],
     383    [3544, 3551], [3570, 3571], [3633, 3633], [3636, 3642], [3655, 3662],
     384    [3761, 3761], [3764, 3769], [3771, 3772], [3784, 3789], [3864, 3865],
     385    [3893, 3893], [3895, 3895], [3897, 3897], [3902, 3903], [3953, 3972],
     386    [3974, 3975], [3981, 3991], [3993, 4028], [4038, 4038], [4139, 4158],
     387    [4182, 4185], [4190, 4192], [4194, 4196], [4199, 4205], [4209, 4212],
     388    [4226, 4237], [4239, 4239], [4250, 4253], [4957, 4959], [5906, 5908],
     389    [5938, 5940], [5970, 5971], [6002, 6003], [6068, 6099], [6109, 6109],
     390    [6155, 6157], [6277, 6278], [6313, 6313], [6432, 6443], [6448, 6459],
     391    [6679, 6683], [6741, 6750], [6752, 6780], [6783, 6783], [6832, 6846],
     392    [6912, 6916], [6964, 6980], [7019, 7027], [7040, 7042], [7073, 7085],
     393    [7142, 7155], [7204, 7223], [7376, 7378], [7380, 7400], [7405, 7405],
     394    [7410, 7412], [7416, 7417], [7616, 7669], [7675, 7679], [8204, 8204],
     395    [8400, 8432], [11503, 11505], [11647, 11647], [11744, 11775],
     396    [12330, 12335], [12441, 12442], [42607, 42610], [42612, 42621],
     397    [42654, 42655], [42736, 42737], [43010, 43010], [43014, 43014],
     398    [43019, 43019], [43043, 43047], [43136, 43137], [43188, 43205],
     399    [43232, 43249], [43302, 43309], [43335, 43347], [43392, 43395],
     400    [43443, 43456], [43493, 43493], [43561, 43574], [43587, 43587],
     401    [43596, 43597], [43643, 43645], [43696, 43696], [43698, 43700],
     402    [43703, 43704], [43710, 43711], [43713, 43713], [43755, 43759],
     403    [43765, 43766], [44003, 44010], [44012, 44013], [64286, 64286],
     404    [65024, 65039], [65056, 65071], [65438, 65439], [66045, 66045],
     405    [66272, 66272], [66422, 66426], [68097, 68099], [68101, 68102],
     406    [68108, 68111], [68152, 68154], [68159, 68159], [68325, 68326],
     407    [69632, 69634], [69688, 69702], [69759, 69762], [69808, 69818],
     408    [69888, 69890], [69927, 69940], [70003, 70003], [70016, 70018],
     409    [70067, 70080], [70090, 70092], [70188, 70199], [70206, 70206],
     410    [70367, 70378], [70400, 70403], [70460, 70460], [70462, 70468],
     411    [70471, 70472], [70475, 70477], [70487, 70487], [70498, 70499],
     412    [70502, 70508], [70512, 70516], [70709, 70726], [70832, 70851],
     413    [71087, 71093], [71096, 71104], [71132, 71133], [71216, 71232],
     414    [71339, 71351], [71453, 71467], [72751, 72758], [72760, 72767],
     415    [72850, 72871], [72873, 72886], [92912, 92916], [92976, 92982],
     416    [94033, 94078], [94095, 94098], [113821, 113822], [119141, 119145],
     417    [119149, 119154], [119163, 119170], [119173, 119179], [119210, 119213],
     418    [119362, 119364], [121344, 121398], [121403, 121452], [121461, 121461],
     419    [121476, 121476], [121499, 121503], [121505, 121519], [122880, 122886],
     420    [122888, 122904], [122907, 122913], [122915, 122916], [122918, 122922],
     421    [125136, 125142], [125252, 125258], [917536, 917631], [917760, 917999]**/
     422    const UnicodeSet extend_Set
     423        {{{Empty, 24}, {Full, 3}, {Mixed, 1}, {Empty, 8}, {Mixed, 1},
     424          {Empty, 7}, {Mixed, 3}, {Empty, 1}, {Mixed, 1}, {Empty, 1},
     425          {Mixed, 2}, {Empty, 2}, {Mixed, 5}, {Empty, 2}, {Mixed, 1},
     426          {Empty, 1}, {Mixed, 4}, {Empty, 3}, {Mixed, 25}, {Empty, 1},
     427          {Mixed, 13}, {Empty, 1}, {Mixed, 2}, {Empty, 1}, {Mixed, 2},
     428          {Empty, 2}, {Mixed, 2}, {Empty, 1}, {Mixed, 2}, {Empty, 1},
     429          {Mixed, 4}, {Empty, 2}, {Mixed, 4}, {Empty, 21}, {Mixed, 1},
     430          {Empty, 29}, {Mixed, 4}, {Empty, 1}, {Mixed, 2}, {Empty, 1},
     431          {Mixed, 1}, {Empty, 3}, {Mixed, 2}, {Empty, 3}, {Mixed, 1},
     432          {Empty, 6}, {Mixed, 1}, {Empty, 1}, {Mixed, 2}, {Empty, 1},
     433          {Mixed, 1}, {Empty, 2}, {Mixed, 6}, {Empty, 1}, {Mixed, 1},
     434          {Empty, 1}, {Mixed, 1}, {Empty, 4}, {Mixed, 2}, {Empty, 6},
     435          {Full, 1}, {Mixed, 1}, {Empty, 16}, {Mixed, 1}, {Empty, 5},
     436          {Mixed, 2}, {Empty, 95}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
     437          {Empty, 3}, {Full, 1}, {Empty, 17}, {Mixed, 1}, {Empty, 2},
     438          {Mixed, 1}, {Empty, 942}, {Mixed, 2}, {Empty, 2}, {Mixed, 1},
     439          {Empty, 8}, {Mixed, 2}, {Empty, 2}, {Mixed, 4}, {Empty, 1},
     440          {Mixed, 2}, {Empty, 1}, {Mixed, 4}, {Empty, 1}, {Mixed, 3},
     441          {Empty, 1}, {Mixed, 3}, {Empty, 7}, {Mixed, 1}, {Empty, 632},
     442          {Mixed, 1}, {Empty, 23}, {Mixed, 2}, {Empty, 10}, {Mixed, 1},
     443          {Empty, 18}, {Mixed, 1}, {Empty, 7}, {Mixed, 1}, {Empty, 3},
     444          {Mixed, 1}, {Empty, 52}, {Mixed, 2}, {Empty, 5}, {Mixed, 1},
     445          {Empty, 40}, {Mixed, 6}, {Empty, 2}, {Mixed, 2}, {Empty, 1},
     446          {Mixed, 4}, {Empty, 2}, {Mixed, 1}, {Empty, 4}, {Mixed, 6},
     447          {Empty, 5}, {Mixed, 2}, {Empty, 2}, {Mixed, 2}, {Empty, 6},
     448          {Mixed, 2}, {Empty, 2}, {Mixed, 2}, {Empty, 2}, {Mixed, 1},
     449          {Empty, 2}, {Mixed, 2}, {Empty, 39}, {Mixed, 1}, {Empty, 2},
     450          {Mixed, 2}, {Empty, 625}, {Mixed, 1}, {Empty, 1}, {Mixed, 1},
     451          {Empty, 32}, {Mixed, 3}, {Empty, 615}, {Mixed, 1}, {Empty, 166},
     452          {Mixed, 3}, {Empty, 4}, {Mixed, 1}, {Empty, 61}, {Full, 1},
     453          {Mixed, 1}, {Full, 1}, {Mixed, 3}, {Empty, 42}, {Mixed, 2},
     454          {Empty, 68}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 24758},
     455          {Full, 3}, {Empty, 4}, {Full, 7}, {Mixed, 1}, {Empty, 6128}},
     456         {0x0000ffff, 0x000003f8, 0xfffe0000, 0xbfffffff, 0x000000b6,
     457          0x07ff0000, 0xfffff800, 0x00010000, 0x9fc00000, 0x00003d9f,
     458          0x00020000, 0xffff0000, 0x000007ff, 0x0001ffc0, 0x000ff800,
     459          0xfbc00000, 0x00003eef, 0x0e000000, 0xfff00000, 0xfffffffb,
     460          0x0000000f, 0xdc000000, 0x00feffff, 0x0000000c, 0x0000000e,
     461          0xd0000000, 0x0080399f, 0x0000000c, 0x0000000e, 0xd0000000,
     462          0x00023987, 0x00230000, 0x0000000e, 0xd0000000, 0x00003bbf,
     463          0x0000000c, 0x0000000e, 0xd0000000, 0x00c0399f, 0x0000000c,
     464          0x00000004, 0xc0000000, 0x00803dc7, 0x0000000f, 0xc0000000,
     465          0x00603ddf, 0x0000000c, 0x0000000e, 0xd0000000, 0x00603ddf,
     466          0x0000000c, 0x0000000e, 0xc0000000, 0x00803ddf, 0x0000000c,
     467          0x0000000c, 0xff5f8400, 0x000c0000, 0x07f20000, 0x00007f80,
     468          0x1bf20000, 0x00003f00, 0x03000000, 0xc2a00000, 0xfffe0000,
     469          0xfeffe0df, 0x1fffffff, 0x00000040, 0x7ffff800, 0xc3c00000,
     470          0x001e3f9d, 0x3c00bffc, 0xe0000000, 0x001c0000, 0x001c0000,
     471          0x000c0000, 0x000c0000, 0xfff00000, 0x200fffff, 0x00003800,
     472          0x00000060, 0x00000200, 0x0fff0fff, 0x0f800000, 0x7fe00000,
     473          0x9fffffff, 0x7fff0000, 0x0000001f, 0xfff00000, 0x0000001f,
     474          0x000ff800, 0x00000007, 0x00003ffe, 0x000fffc0, 0x00fffff0,
     475          0xfff70000, 0x031c21ff, 0xf83fffff, 0x00001000, 0xffff0000,
     476          0x0001ffff, 0x00038000, 0x80000000, 0x0000fc00, 0x06000000,
     477          0x3ff78000, 0xc0000000, 0x00030000, 0x00000844, 0x000000f8,
     478          0x00000003, 0xfff00000, 0x0000003f, 0x0003ffff, 0x00003fc0,
     479          0x000fff80, 0x0000000f, 0xfff80000, 0x00000001, 0x00000020,
     480          0x007ffe00, 0x00003008, 0x38000000, 0xc19d0000, 0x00000002,
     481          0x0060f800, 0x000037f8, 0x40000000, 0x0000ffff, 0x0000ffff,
     482          0xc0000000, 0x20000000, 0x00000001, 0x07c00000, 0x0000f06e,
     483          0x87000000, 0x00000060, 0x00000007, 0xff000000, 0x0000007f,
     484          0x80000000, 0x00000007, 0x07ff0000, 0x00000007, 0x001fff80,
     485          0x00080000, 0x00000007, 0xfff80000, 0x00001c01, 0x40fff000,
     486          0x80000000, 0x000007ff, 0x0000000f, 0xd0000000, 0x0080399f,
     487          0x001f1fcc, 0xffe00000, 0x0000007f, 0xffff0000, 0x0000000f,
     488          0xff3f8000, 0x30000001, 0xffff0000, 0x00000001, 0x00fff800,
     489          0xe0000000, 0x00000fff, 0xff7f8000, 0xfffc0000, 0x007ffeff,
     490          0x001f0000, 0x007f0000, 0xfffe0000, 0x7fffffff, 0x00078000,
     491          0x60000000, 0xf807e3e0, 0x00000fe7, 0x00003c00, 0x0000001c,
     492          0xf87fffff, 0x00201fff, 0xf8000010, 0x0000fffe, 0xf9ffff7f,
     493          0x000007db, 0x007f0000, 0x000007f0, 0x0000ffff}};
     494    /** Code Point Ranges for RI
     495    [127462, 127487]**/
     496    const UnicodeSet ri_Set
     497        {{{Empty, 3983}, {Mixed, 1}, {Empty, 30832}},
     498         {0xffffffc0}};
     499    /** Code Point Ranges for FO
     500    [173, 173], [1536, 1541], [1564, 1564], [1757, 1757], [1807, 1807],
     501    [2274, 2274], [6158, 6158], [8206, 8207], [8234, 8238], [8288, 8292],
     502    [8294, 8303], [65279, 65279], [65529, 65531], [69821, 69821],
     503    [113824, 113827], [119155, 119162], [917505, 917505]**/
     504    const UnicodeSet fo_Set
     505        {{{Empty, 5}, {Mixed, 1}, {Empty, 42}, {Mixed, 1}, {Empty, 5},
     506          {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 14}, {Mixed, 1},
     507          {Empty, 120}, {Mixed, 1}, {Empty, 63}, {Mixed, 2}, {Empty, 1},
     508          {Mixed, 1}, {Empty, 1779}, {Mixed, 1}, {Empty, 7}, {Mixed, 1},
     509          {Empty, 133}, {Mixed, 1}, {Empty, 1375}, {Mixed, 1}, {Empty, 165},
     510          {Mixed, 1}, {Empty, 24948}, {Mixed, 1}, {Empty, 6143}},
     511         {0x00002000, 0x1000003f, 0x20000000, 0x00008000, 0x00000004,
     512          0x00004000, 0x0000c000, 0x00007c00, 0x0000ffdf, 0x80000000,
     513          0x0e000000, 0x20000000, 0x0000000f, 0x07f80000, 0x00000002}};
     514    /** Code Point Ranges for KA
     515    [12337, 12341], [12443, 12444], [12448, 12538], [12540, 12543],
     516    [12784, 12799], [13008, 13054], [13056, 13143], [65382, 65437],
     517    [110592, 110592]**/
     518    const UnicodeSet ka_Set
     519        {{{Empty, 385}, {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Full, 2},
     520          {Mixed, 1}, {Empty, 7}, {Mixed, 1}, {Empty, 6}, {Mixed, 2},
     521          {Full, 2}, {Mixed, 1}, {Empty, 1632}, {Mixed, 2}, {Empty, 1411},
     522          {Mixed, 1}, {Empty, 31359}},
     523         {0x003e0000, 0x18000000, 0xf7ffffff, 0xffff0000, 0xffff0000,
     524          0x7fffffff, 0x00ffffff, 0xffffffc0, 0x3fffffff, 0x00000001}};
     525    /** Code Point Ranges for LE
     526    [65, 90], [97, 122], [170, 170], [181, 181], [186, 186], [192, 214],
     527    [216, 246], [248, 705], [710, 721], [736, 740], [748, 748], [750, 750],
     528    [880, 884], [886, 887], [890, 893], [895, 895], [902, 902], [904, 906],
     529    [908, 908], [910, 929], [931, 1013], [1015, 1153], [1162, 1327],
     530    [1329, 1366], [1369, 1369], [1377, 1415], [1523, 1523], [1568, 1610],
     531    [1646, 1647], [1649, 1747], [1749, 1749], [1765, 1766], [1774, 1775],
     532    [1786, 1788], [1791, 1791], [1808, 1808], [1810, 1839], [1869, 1957],
     533    [1969, 1969], [1994, 2026], [2036, 2037], [2042, 2042], [2048, 2069],
     534    [2074, 2074], [2084, 2084], [2088, 2088], [2112, 2136], [2208, 2228],
     535    [2230, 2237], [2308, 2361], [2365, 2365], [2384, 2384], [2392, 2401],
     536    [2417, 2432], [2437, 2444], [2447, 2448], [2451, 2472], [2474, 2480],
     537    [2482, 2482], [2486, 2489], [2493, 2493], [2510, 2510], [2524, 2525],
     538    [2527, 2529], [2544, 2545], [2565, 2570], [2575, 2576], [2579, 2600],
     539    [2602, 2608], [2610, 2611], [2613, 2614], [2616, 2617], [2649, 2652],
     540    [2654, 2654], [2674, 2676], [2693, 2701], [2703, 2705], [2707, 2728],
     541    [2730, 2736], [2738, 2739], [2741, 2745], [2749, 2749], [2768, 2768],
     542    [2784, 2785], [2809, 2809], [2821, 2828], [2831, 2832], [2835, 2856],
     543    [2858, 2864], [2866, 2867], [2869, 2873], [2877, 2877], [2908, 2909],
     544    [2911, 2913], [2929, 2929], [2947, 2947], [2949, 2954], [2958, 2960],
     545    [2962, 2965], [2969, 2970], [2972, 2972], [2974, 2975], [2979, 2980],
     546    [2984, 2986], [2990, 3001], [3024, 3024], [3077, 3084], [3086, 3088],
     547    [3090, 3112], [3114, 3129], [3133, 3133], [3160, 3162], [3168, 3169],
     548    [3200, 3200], [3205, 3212], [3214, 3216], [3218, 3240], [3242, 3251],
     549    [3253, 3257], [3261, 3261], [3294, 3294], [3296, 3297], [3313, 3314],
     550    [3333, 3340], [3342, 3344], [3346, 3386], [3389, 3389], [3406, 3406],
     551    [3412, 3414], [3423, 3425], [3450, 3455], [3461, 3478], [3482, 3505],
     552    [3507, 3515], [3517, 3517], [3520, 3526], [3840, 3840], [3904, 3911],
     553    [3913, 3948], [3976, 3980], [4256, 4293], [4295, 4295], [4301, 4301],
     554    [4304, 4346], [4348, 4680], [4682, 4685], [4688, 4694], [4696, 4696],
     555    [4698, 4701], [4704, 4744], [4746, 4749], [4752, 4784], [4786, 4789],
     556    [4792, 4798], [4800, 4800], [4802, 4805], [4808, 4822], [4824, 4880],
     557    [4882, 4885], [4888, 4954], [4992, 5007], [5024, 5109], [5112, 5117],
     558    [5121, 5740], [5743, 5759], [5761, 5786], [5792, 5866], [5870, 5880],
     559    [5888, 5900], [5902, 5905], [5920, 5937], [5952, 5969], [5984, 5996],
     560    [5998, 6000], [6176, 6263], [6272, 6276], [6279, 6312], [6314, 6314],
     561    [6320, 6389], [6400, 6430], [6656, 6678], [6917, 6963], [6981, 6987],
     562    [7043, 7072], [7086, 7087], [7098, 7141], [7168, 7203], [7245, 7247],
     563    [7258, 7293], [7296, 7304], [7401, 7404], [7406, 7409], [7413, 7414],
     564    [7424, 7615], [7680, 7957], [7960, 7965], [7968, 8005], [8008, 8013],
     565    [8016, 8023], [8025, 8025], [8027, 8027], [8029, 8029], [8031, 8061],
     566    [8064, 8116], [8118, 8124], [8126, 8126], [8130, 8132], [8134, 8140],
     567    [8144, 8147], [8150, 8155], [8160, 8172], [8178, 8180], [8182, 8188],
     568    [8305, 8305], [8319, 8319], [8336, 8348], [8450, 8450], [8455, 8455],
     569    [8458, 8467], [8469, 8469], [8473, 8477], [8484, 8484], [8486, 8486],
     570    [8488, 8488], [8490, 8493], [8495, 8505], [8508, 8511], [8517, 8521],
     571    [8526, 8526], [8544, 8584], [9398, 9449], [11264, 11310],
     572    [11312, 11358], [11360, 11492], [11499, 11502], [11506, 11507],
     573    [11520, 11557], [11559, 11559], [11565, 11565], [11568, 11623],
     574    [11631, 11631], [11648, 11670], [11680, 11686], [11688, 11694],
     575    [11696, 11702], [11704, 11710], [11712, 11718], [11720, 11726],
     576    [11728, 11734], [11736, 11742], [11823, 11823], [12293, 12293],
     577    [12347, 12348], [12549, 12589], [12593, 12686], [12704, 12730],
     578    [40960, 42124], [42192, 42237], [42240, 42508], [42512, 42527],
     579    [42538, 42539], [42560, 42606], [42623, 42653], [42656, 42735],
     580    [42775, 42783], [42786, 42888], [42891, 42926], [42928, 42935],
     581    [42999, 43009], [43011, 43013], [43015, 43018], [43020, 43042],
     582    [43072, 43123], [43138, 43187], [43250, 43255], [43259, 43259],
     583    [43261, 43261], [43274, 43301], [43312, 43334], [43360, 43388],
     584    [43396, 43442], [43471, 43471], [43520, 43560], [43584, 43586],
     585    [43588, 43595], [43744, 43754], [43762, 43764], [43777, 43782],
     586    [43785, 43790], [43793, 43798], [43808, 43814], [43816, 43822],
     587    [43824, 43866], [43868, 43877], [43888, 44002], [44032, 55203],
     588    [55216, 55238], [55243, 55291], [64256, 64262], [64275, 64279],
     589    [64336, 64433], [64467, 64829], [64848, 64911], [64914, 64967],
     590    [65008, 65019], [65136, 65140], [65142, 65276], [65313, 65338],
     591    [65345, 65370], [65440, 65470], [65474, 65479], [65482, 65487],
     592    [65490, 65495], [65498, 65500], [65536, 65547], [65549, 65574],
     593    [65576, 65594], [65596, 65597], [65599, 65613], [65616, 65629],
     594    [65664, 65786], [65856, 65908], [66176, 66204], [66208, 66256],
     595    [66304, 66335], [66352, 66378], [66384, 66421], [66432, 66461],
     596    [66464, 66499], [66504, 66511], [66513, 66517], [66560, 66717],
     597    [66736, 66771], [66776, 66811], [66816, 66855], [66864, 66915],
     598    [67072, 67382], [67392, 67413], [67424, 67431], [67584, 67589],
     599    [67592, 67592], [67594, 67637], [67639, 67640], [67644, 67644],
     600    [67647, 67669], [67680, 67702], [67712, 67742], [67808, 67826],
     601    [67828, 67829], [67840, 67861], [67872, 67897], [67968, 68023],
     602    [68030, 68031], [68096, 68096], [68112, 68115], [68117, 68119],
     603    [68121, 68147], [68192, 68220], [68224, 68252], [68288, 68295],
     604    [68297, 68324], [68352, 68405], [68416, 68437], [68448, 68466],
     605    [68480, 68497], [68608, 68680], [68736, 68786], [68800, 68850],
     606    [69635, 69687], [69763, 69807], [69840, 69864], [69891, 69926],
     607    [69968, 70002], [70006, 70006], [70019, 70066], [70081, 70084],
     608    [70106, 70106], [70108, 70108], [70144, 70161], [70163, 70187],
     609    [70272, 70278], [70280, 70280], [70282, 70285], [70287, 70301],
     610    [70303, 70312], [70320, 70366], [70405, 70412], [70415, 70416],
     611    [70419, 70440], [70442, 70448], [70450, 70451], [70453, 70457],
     612    [70461, 70461], [70480, 70480], [70493, 70497], [70656, 70708],
     613    [70727, 70730], [70784, 70831], [70852, 70853], [70855, 70855],
     614    [71040, 71086], [71128, 71131], [71168, 71215], [71236, 71236],
     615    [71296, 71338], [71840, 71903], [71935, 71935], [72384, 72440],
     616    [72704, 72712], [72714, 72750], [72768, 72768], [72818, 72847],
     617    [73728, 74649], [74752, 74862], [74880, 75075], [77824, 78894],
     618    [82944, 83526], [92160, 92728], [92736, 92766], [92880, 92909],
     619    [92928, 92975], [92992, 92995], [93027, 93047], [93053, 93071],
     620    [93952, 94020], [94032, 94032], [94099, 94111], [94176, 94176],
     621    [113664, 113770], [113776, 113788], [113792, 113800], [113808, 113817],
     622    [119808, 119892], [119894, 119964], [119966, 119967], [119970, 119970],
     623    [119973, 119974], [119977, 119980], [119982, 119993], [119995, 119995],
     624    [119997, 120003], [120005, 120069], [120071, 120074], [120077, 120084],
     625    [120086, 120092], [120094, 120121], [120123, 120126], [120128, 120132],
     626    [120134, 120134], [120138, 120144], [120146, 120485], [120488, 120512],
     627    [120514, 120538], [120540, 120570], [120572, 120596], [120598, 120628],
     628    [120630, 120654], [120656, 120686], [120688, 120712], [120714, 120744],
     629    [120746, 120770], [120772, 120779], [124928, 125124], [125184, 125251],
     630    [126464, 126467], [126469, 126495], [126497, 126498], [126500, 126500],
     631    [126503, 126503], [126505, 126514], [126516, 126519], [126521, 126521],
     632    [126523, 126523], [126530, 126530], [126535, 126535], [126537, 126537],
     633    [126539, 126539], [126541, 126543], [126545, 126546], [126548, 126548],
     634    [126551, 126551], [126553, 126553], [126555, 126555], [126557, 126557],
     635    [126559, 126559], [126561, 126562], [126564, 126564], [126567, 126570],
     636    [126572, 126578], [126580, 126583], [126585, 126588], [126590, 126590],
     637    [126592, 126601], [126603, 126619], [126625, 126627], [126629, 126633],
     638    [126635, 126651], [127280, 127305], [127312, 127337], [127344, 127369]**/
     639    const UnicodeSet le_Set
     640        {{{Empty, 2}, {Mixed, 2}, {Empty, 1}, {Mixed, 3}, {Full, 14},
     641          {Mixed, 2}, {Empty, 3}, {Mixed, 3}, {Full, 1}, {Mixed, 1},
     642          {Full, 4}, {Mixed, 1}, {Full, 4}, {Mixed, 4}, {Empty, 2},
     643          {Mixed, 1}, {Empty, 1}, {Full, 1}, {Mixed, 2}, {Full, 2},
     644          {Mixed, 5}, {Full, 2}, {Mixed, 6}, {Empty, 2}, {Mixed, 1},
     645          {Empty, 2}, {Mixed, 23}, {Empty, 1}, {Mixed, 15}, {Empty, 9},
     646          {Mixed, 1}, {Empty, 1}, {Mixed, 3}, {Empty, 8}, {Full, 1},
     647          {Mixed, 2}, {Full, 10}, {Mixed, 1}, {Full, 1}, {Mixed, 3},
     648          {Full, 1}, {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Empty, 1},
     649          {Mixed, 1}, {Full, 2}, {Mixed, 2}, {Full, 18}, {Mixed, 2},
     650          {Full, 2}, {Mixed, 5}, {Empty, 5}, {Full, 2}, {Mixed, 3},
     651          {Full, 1}, {Mixed, 2}, {Empty, 7}, {Mixed, 1}, {Empty, 7},
     652          {Mixed, 3}, {Empty, 1}, {Mixed, 2}, {Full, 1}, {Mixed, 1},
     653          {Full, 1}, {Mixed, 4}, {Empty, 2}, {Mixed, 1}, {Full, 6},
     654          {Empty, 2}, {Full, 8}, {Mixed, 1}, {Full, 1}, {Mixed, 2},
     655          {Full, 1}, {Mixed, 3}, {Empty, 3}, {Mixed, 2}, {Empty, 3},
     656          {Mixed, 3}, {Full, 1}, {Mixed, 1}, {Empty, 24}, {Mixed, 1},
     657          {Full, 1}, {Mixed, 1}, {Empty, 56}, {Full, 1}, {Mixed, 2},
     658          {Full, 4}, {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Full, 1},
     659          {Mixed, 4}, {Empty, 2}, {Mixed, 1}, {Empty, 14}, {Mixed, 2},
     660          {Empty, 6}, {Mixed, 2}, {Full, 2}, {Mixed, 2}, {Empty, 882},
     661          {Full, 36}, {Mixed, 1}, {Empty, 1}, {Mixed, 2}, {Full, 8},
     662          {Mixed, 2}, {Full, 1}, {Mixed, 2}, {Full, 2}, {Mixed, 3},
     663          {Full, 2}, {Mixed, 2}, {Empty, 1}, {Mixed, 3}, {Full, 1},
     664          {Mixed, 3}, {Empty, 1}, {Mixed, 8}, {Empty, 1}, {Full, 1},
     665          {Mixed, 2}, {Empty, 4}, {Mixed, 5}, {Full, 3}, {Mixed, 1},
     666          {Full, 349}, {Mixed, 3}, {Empty, 280}, {Mixed, 1}, {Empty, 1},
     667          {Mixed, 1}, {Full, 2}, {Mixed, 2}, {Full, 10}, {Mixed, 2},
     668          {Full, 1}, {Mixed, 1}, {Full, 1}, {Mixed, 2}, {Empty, 3},
     669          {Mixed, 1}, {Full, 3}, {Mixed, 1}, {Empty, 1}, {Mixed, 2},
     670          {Empty, 2}, {Mixed, 2}, {Empty, 1}, {Mixed, 3}, {Empty, 1},
     671          {Full, 3}, {Mixed, 1}, {Empty, 2}, {Full, 1}, {Mixed, 1},
     672          {Empty, 8}, {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Empty, 1},
     673          {Full, 1}, {Mixed, 4}, {Full, 1}, {Mixed, 1}, {Empty, 1},
     674          {Full, 4}, {Mixed, 4}, {Full, 1}, {Mixed, 1}, {Full, 1},
     675          {Mixed, 1}, {Empty, 4}, {Full, 9}, {Mixed, 3}, {Empty, 4},
     676          {Mixed, 5}, {Empty, 2}, {Mixed, 3}, {Empty, 2}, {Full, 1},
     677          {Mixed, 1}, {Empty, 2}, {Mixed, 2}, {Empty, 1}, {Mixed, 2},
     678          {Empty, 1}, {Mixed, 2}, {Full, 1}, {Mixed, 4}, {Empty, 3},
     679          {Full, 2}, {Mixed, 1}, {Empty, 1}, {Full, 1}, {Mixed, 1},
     680          {Full, 1}, {Mixed, 1}, {Empty, 24}, {Mixed, 2}, {Empty, 2},
     681          {Mixed, 11}, {Empty, 1}, {Mixed, 2}, {Empty, 2}, {Mixed, 3},
     682          {Empty, 1}, {Mixed, 4}, {Empty, 4}, {Full, 1}, {Mixed, 2},
     683          {Empty, 1}, {Full, 1}, {Mixed, 2}, {Empty, 5}, {Full, 1},
     684          {Mixed, 2}, {Empty, 1}, {Full, 1}, {Mixed, 2}, {Empty, 1},
     685          {Full, 1}, {Mixed, 1}, {Empty, 15}, {Full, 2}, {Mixed, 1},
     686          {Empty, 14}, {Full, 1}, {Mixed, 1}, {Empty, 8}, {Mixed, 5},
     687          {Empty, 27}, {Full, 28}, {Mixed, 1}, {Empty, 3}, {Full, 3},
     688          {Mixed, 1}, {Full, 6}, {Mixed, 1}, {Empty, 85}, {Full, 33},
     689          {Mixed, 1}, {Empty, 126}, {Full, 18}, {Mixed, 1}, {Empty, 269},
     690          {Full, 17}, {Mixed, 2}, {Empty, 3}, {Mixed, 2}, {Full, 1},
     691          {Mixed, 4}, {Empty, 27}, {Full, 2}, {Mixed, 1}, {Empty, 1},
     692          {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Empty, 608}, {Full, 3},
     693          {Mixed, 2}, {Empty, 187}, {Full, 2}, {Mixed, 1}, {Full, 1},
     694          {Mixed, 3}, {Full, 1}, {Mixed, 3}, {Full, 10}, {Mixed, 10},
     695          {Empty, 129}, {Full, 6}, {Mixed, 1}, {Empty, 1}, {Full, 2},
     696          {Mixed, 1}, {Empty, 37}, {Mixed, 6}, {Empty, 19}, {Mixed, 4},
     697          {Empty, 30835}},
     698         {0x07fffffe, 0x07fffffe, 0x04200400, 0xff7fffff, 0xff7fffff,
     699          0x0003ffc3, 0x0000501f, 0xbcdf0000, 0xffffd740, 0xfffffffb,
     700          0xffbfffff, 0xfffffc03, 0xfffeffff, 0x027fffff, 0xfffffffe,
     701          0x000000ff, 0x00080000, 0x000007ff, 0xfffec000, 0x002fffff,
     702          0x9c00c060, 0xfffd0000, 0x0000ffff, 0xffffe000, 0x0002003f,
     703          0xfffffc00, 0x043007ff, 0x043fffff, 0x00000110, 0x01ffffff,
     704          0x3fdfffff, 0xfffffff0, 0x23ffffff, 0xff010000, 0xfffe0003,
     705          0xfff99fe1, 0x23c5fdff, 0xb0004000, 0x00030003, 0xfff987e0,
     706          0x036dfdff, 0x5e000000, 0x001c0000, 0xfffbbfe0, 0x23edfdff,
     707          0x00010000, 0x02000003, 0xfff99fe0, 0x23edfdff, 0xb0000000,
     708          0x00020003, 0xd63dc7e8, 0x03ffc718, 0x00010000, 0xfffddfe0,
     709          0x23fffdff, 0x07000000, 0x00000003, 0xfffddfe1, 0x23effdff,
     710          0x40000000, 0x00060003, 0xfffddfe0, 0x27ffffff, 0x80704000,
     711          0xfc000003, 0xfc7fffe0, 0x2ffbffff, 0x0000007f, 0x00000001,
     712          0xfffffeff, 0x00001fff, 0x00001f00, 0xffff20bf, 0xf7ffffff,
     713          0x3d7f3dff, 0xffff3dff, 0x7f3dffff, 0xff7fff3d, 0xff3dffff,
     714          0x07ffffff, 0x0000ffff, 0x3f3fffff, 0xfffffffe, 0xffff9fff,
     715          0x07fffffe, 0x01ffc7ff, 0x0003dfff, 0x0003ffff, 0x0003ffff,
     716          0x0001dfff, 0x00ffffff, 0xffffff9f, 0xffff05ff, 0x003fffff,
     717          0x7fffffff, 0x007fffff, 0xffffffe0, 0x000fffff, 0x00000fe0,
     718          0xfffffff8, 0xfc00c001, 0x0000003f, 0x0000000f, 0xfc00e000,
     719          0x3fffffff, 0x000001ff, 0x0063de00, 0x3f3fffff, 0xaaff3f3f,
     720          0x3fffffff, 0x5fdfffff, 0x0fcf1fdc, 0x1fdc1fff, 0x80020000,
     721          0x1fff0000, 0x3e2ffc84, 0xf3ffbd50, 0x000043e0, 0x000001ff,
     722          0xffc00000, 0x000003ff, 0xffff7fff, 0x7fffffff, 0x000c781f,
     723          0xffff20bf, 0x000080ff, 0x007fffff, 0x7f7f7f7f, 0x7f7f7f7f,
     724          0x00008000, 0x00000020, 0x18000000, 0xffffffe0, 0xfffe3fff,
     725          0x00007fff, 0x07ffffff, 0x00001fff, 0xffff0000, 0x3fffffff,
     726          0xffff1fff, 0x00000c00, 0x80007fff, 0x3fffffff, 0x0000ffff,
     727          0xff800000, 0xfffffffc, 0xfffff9ff, 0x00ff7fff, 0xff800000,
     728          0xfffff7bb, 0x00000007, 0x000fffff, 0xfffffffc, 0x000fffff,
     729          0x28fc0000, 0xfffffc00, 0xffff003f, 0x0000007f, 0x1fffffff,
     730          0xfffffff0, 0x0007ffff, 0x00008000, 0x000001ff, 0x00000ff7,
     731          0x001c07ff, 0x007e7e7e, 0xffff7f7f, 0xf7ffffff, 0xffff003f,
     732          0x00000007, 0xffff000f, 0xfffff87f, 0x0fffffff, 0x00f8007f,
     733          0xffff0000, 0x0003ffff, 0xfff80000, 0x3fffffff, 0xffff0000,
     734          0xfffcffff, 0x000000ff, 0x0fff0000, 0xffdf0000, 0x1fffffff,
     735          0x07fffffe, 0x07fffffe, 0x7fffffff, 0x1cfcfcfc, 0xffffefff,
     736          0xb7ffff7f, 0x3fff3fff, 0x07ffffff, 0x001fffff, 0x1fffffff,
     737          0x0001ffff, 0xffff0000, 0xffff07ff, 0x003fffff, 0x3fffffff,
     738          0x003eff0f, 0x3fffffff, 0xffff0000, 0xff0fffff, 0x0fffffff,
     739          0xffff00ff, 0x0000000f, 0x007fffff, 0x003fffff, 0x000000ff,
     740          0xfffffd3f, 0x91bfffff, 0x003fffff, 0x007fffff, 0x7fffffff,
     741          0x0037ffff, 0x003fffff, 0x03ffffff, 0xc0ffffff, 0xfeef0001,
     742          0x000fffff, 0x1fffffff, 0x1fffffff, 0xfffffeff, 0x0000001f,
     743          0x003fffff, 0x003fffff, 0x0007ffff, 0x0003ffff, 0x000001ff,
     744          0x0007ffff, 0x0007ffff, 0xfffffff8, 0x00ffffff, 0xfffffff8,
     745          0x0000ffff, 0xffff0000, 0x000001ff, 0xfffffff8, 0x0000007f,
     746          0xffff0000, 0x0047ffff, 0xfffffff8, 0x0007ffff, 0x1400001e,
     747          0xfffbffff, 0x00000fff, 0xbfffbd7f, 0xffff01ff, 0x7fffffff,
     748          0xfff99fe0, 0x23edfdff, 0xe0010000, 0x00000003, 0x001fffff,
     749          0x00000780, 0x0000ffff, 0x000000b0, 0x00007fff, 0x0f000000,
     750          0x0000ffff, 0x00000010, 0x000007ff, 0x80000000, 0x01ffffff,
     751          0xfffffdff, 0x00007fff, 0x00000001, 0xfffc0000, 0x0000ffff,
     752          0x03ffffff, 0x00007fff, 0x0000000f, 0x00007fff, 0x0000007f,
     753          0x01ffffff, 0x7fffffff, 0xffff0000, 0x00003fff, 0x0000ffff,
     754          0x0000000f, 0xe0fffff8, 0x0000ffff, 0x0001001f, 0xfff80000,
     755          0x00000001, 0x1fff07ff, 0x03ff01ff, 0xffdfffff, 0xdfffffff,
     756          0xebffde64, 0xffffffef, 0xdfdfe7bf, 0x7bffffff, 0xfffdfc5f,
     757          0xffffff3f, 0xf7fffffd, 0xf7ffffff, 0xffdfffff, 0xffdfffff,
     758          0xffff7fff, 0xffff7fff, 0xfffffdff, 0xfffffdff, 0x00000ff7,
     759          0x0000001f, 0x0000000f, 0xffffffef, 0x0af7fe96, 0xaa96ea84,
     760          0x5ef7f796, 0x0ffffbff, 0x0ffffbee, 0xffff0000, 0xffff03ff,
     761          0xffff03ff, 0x000003ff}};
     762    /** Code Point Ranges for ML
     763    [58, 58], [183, 183], [727, 727], [903, 903], [1524, 1524],
     764    [8231, 8231], [65043, 65043], [65109, 65109], [65306, 65306]**/
     765    const UnicodeSet ml_Set
     766        {{{Empty, 1}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 16},
     767          {Mixed, 1}, {Empty, 5}, {Mixed, 1}, {Empty, 18}, {Mixed, 1},
     768          {Empty, 209}, {Mixed, 1}, {Empty, 1774}, {Mixed, 1}, {Empty, 1},
     769          {Mixed, 1}, {Empty, 5}, {Mixed, 1}, {Empty, 32775}},
     770         {0x04000000, 0x00800000, 0x00800000, 0x00000080, 0x00100000,
     771          0x00000080, 0x00080000, 0x00200000, 0x04000000}};
     772    /** Code Point Ranges for MN
     773    [44, 44], [59, 59], [894, 894], [1417, 1417], [1548, 1549],
     774    [1644, 1644], [2040, 2040], [8260, 8260], [65040, 65040],
     775    [65044, 65044], [65104, 65104], [65108, 65108], [65292, 65292],
     776    [65307, 65307]**/
     777    const UnicodeSet mn_Set
     778        {{{Empty, 1}, {Mixed, 1}, {Empty, 25}, {Mixed, 1}, {Empty, 16},
     779          {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 2}, {Mixed, 1},
     780          {Empty, 11}, {Mixed, 1}, {Empty, 194}, {Mixed, 1}, {Empty, 1773},
     781          {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 5}, {Mixed, 1},
     782          {Empty, 32775}},
     783         {0x08001000, 0x40000000, 0x00000200, 0x00003000, 0x00001000,
     784          0x01000000, 0x00000010, 0x00110000, 0x00110000, 0x08001000}};
     785    /** Code Point Ranges for MB
     786    [46, 46], [8216, 8217], [8228, 8228], [65106, 65106], [65287, 65287],
     787    [65294, 65294]**/
     788    const UnicodeSet mb_Set
     789        {{{Empty, 1}, {Mixed, 1}, {Empty, 254}, {Mixed, 2}, {Empty, 1776},
     790          {Mixed, 1}, {Empty, 5}, {Mixed, 1}, {Empty, 32775}},
     791         {0x00004000, 0x03000000, 0x00000010, 0x00040000, 0x00004080}};
     792    /** Code Point Ranges for NU
     793    [48, 57], [1632, 1641], [1643, 1643], [1776, 1785], [1984, 1993],
     794    [2406, 2415], [2534, 2543], [2662, 2671], [2790, 2799], [2918, 2927],
     795    [3046, 3055], [3174, 3183], [3302, 3311], [3430, 3439], [3558, 3567],
     796    [3664, 3673], [3792, 3801], [3872, 3881], [4160, 4169], [4240, 4249],
     797    [6112, 6121], [6160, 6169], [6470, 6479], [6608, 6617], [6784, 6793],
     798    [6800, 6809], [6992, 7001], [7088, 7097], [7232, 7241], [7248, 7257],
     799    [42528, 42537], [43216, 43225], [43264, 43273], [43472, 43481],
     800    [43504, 43513], [43600, 43609], [44016, 44025], [66720, 66729],
     801    [69734, 69743], [69872, 69881], [69942, 69951], [70096, 70105],
     802    [70384, 70393], [70736, 70745], [70864, 70873], [71248, 71257],
     803    [71360, 71369], [71472, 71481], [71904, 71913], [72784, 72793],
     804    [92768, 92777], [93008, 93017], [120782, 120831], [125264, 125273]**/
     805    const UnicodeSet nu_Set
     806        {{{Empty, 1}, {Mixed, 1}, {Empty, 49}, {Mixed, 1}, {Empty, 3},
     807          {Mixed, 1}, {Empty, 6}, {Mixed, 1}, {Empty, 12}, {Mixed, 1},
     808          {Empty, 3}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 3},
     809          {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
     810          {Empty, 3}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 3},
     811          {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 2}, {Mixed, 1},
     812          {Empty, 3}, {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Empty, 8},
     813          {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 58}, {Mixed, 2},
     814          {Empty, 9}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 5},
     815          {Mixed, 1}, {Empty, 5}, {Mixed, 1}, {Empty, 2}, {Mixed, 1},
     816          {Empty, 4}, {Mixed, 1}, {Empty, 1102}, {Mixed, 1}, {Empty, 20},
     817          {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 5}, {Mixed, 2},
     818          {Empty, 2}, {Mixed, 1}, {Empty, 12}, {Mixed, 1}, {Empty, 709},
     819          {Mixed, 1}, {Empty, 93}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
     820          {Empty, 1}, {Mixed, 1}, {Empty, 4}, {Mixed, 1}, {Empty, 8},
     821          {Mixed, 1}, {Empty, 10}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
     822          {Empty, 11}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 2},
     823          {Mixed, 1}, {Empty, 13}, {Mixed, 1}, {Empty, 26}, {Mixed, 1},
     824          {Empty, 624}, {Mixed, 1}, {Empty, 6}, {Mixed, 1}, {Empty, 867},
     825          {Mixed, 1}, {Full, 1}, {Empty, 138}, {Mixed, 1}, {Empty, 30901}},
     826         {0x03ff0000, 0x00000bff, 0x03ff0000, 0x000003ff, 0x0000ffc0,
     827          0x0000ffc0, 0x0000ffc0, 0x0000ffc0, 0x0000ffc0, 0x0000ffc0,
     828          0x0000ffc0, 0x0000ffc0, 0x0000ffc0, 0x0000ffc0, 0x03ff0000,
     829          0x03ff0000, 0x000003ff, 0x000003ff, 0x03ff0000, 0x000003ff,
     830          0x03ff0000, 0x0000ffc0, 0x03ff0000, 0x03ff03ff, 0x03ff0000,
     831          0x03ff0000, 0x03ff03ff, 0x000003ff, 0x03ff0000, 0x000003ff,
     832          0x03ff0000, 0x03ff0000, 0x03ff0000, 0x03ff0000, 0x000003ff,
     833          0x0000ffc0, 0x03ff0000, 0xffc00000, 0x03ff0000, 0x03ff0000,
     834          0x03ff0000, 0x03ff0000, 0x03ff0000, 0x000003ff, 0x03ff0000,
     835          0x000003ff, 0x03ff0000, 0x000003ff, 0x03ff0000, 0xffffc000,
     836          0x03ff0000}};
     837    /** Code Point Ranges for EX
     838    [95, 95], [8239, 8239], [8255, 8256], [8276, 8276], [65075, 65076],
     839    [65101, 65103], [65343, 65343]**/
     840    const UnicodeSet ex_Set
     841        {{{Empty, 2}, {Mixed, 1}, {Empty, 254}, {Mixed, 2}, {Empty, 1774},
     842          {Mixed, 2}, {Empty, 6}, {Mixed, 1}, {Empty, 32774}},
     843         {0x80000000, 0x80008000, 0x00100001, 0x00180000, 0x0000e000,
     844          0x80000000}};
     845    /** Code Point Ranges for EB
     846    [9757, 9757], [9977, 9977], [9994, 9997], [127877, 127877],
     847    [127939, 127940], [127946, 127947], [128066, 128067], [128070, 128080],
     848    [128110, 128110], [128112, 128120], [128124, 128124], [128129, 128131],
     849    [128133, 128135], [128170, 128170], [128373, 128373], [128378, 128378],
     850    [128400, 128400], [128405, 128406], [128581, 128583], [128587, 128591],
     851    [128675, 128675], [128692, 128694], [128704, 128704], [129304, 129310],
     852    [129318, 129318], [129328, 129328], [129331, 129337], [129340, 129342]**/
     853    const UnicodeSet eb_Set
     854        {{{Empty, 304}, {Mixed, 1}, {Empty, 6}, {Mixed, 2}, {Empty, 3683},
     855          {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 3}, {Mixed, 4},
     856          {Empty, 5}, {Mixed, 2}, {Empty, 5}, {Mixed, 1}, {Empty, 2},
     857          {Mixed, 2}, {Empty, 17}, {Mixed, 2}, {Empty, 30774}},
     858         {0x20000000, 0x02000000, 0x00003c00, 0x00000020, 0x00000c18,
     859          0x0001ffcc, 0x11ff4000, 0x000000ee, 0x00000400, 0x04200000,
     860          0x00610000, 0x0000f8e0, 0x00700008, 0x00000001, 0x7f000000,
     861          0x73f90040}};
     862    /** Code Point Ranges for EM
     863    [127995, 127999]**/
     864    const UnicodeSet em_Set
     865        {{{Empty, 3999}, {Mixed, 1}, {Empty, 30816}},
     866         {0xf8000000}};
    878867    /** Code Point Ranges for ZWJ
    879868    [8205, 8205]**/
     
    881870        {{{Empty, 256}, {Mixed, 1}, {Empty, 34559}},
    882871         {0x00002000}};
     872    /** Code Point Ranges for GAZ
     873    [10084, 10084], [128139, 128139], [128488, 128488]**/
     874    const UnicodeSet gaz_Set
     875        {{{Empty, 315}, {Mixed, 1}, {Empty, 3688}, {Mixed, 1}, {Empty, 10},
     876          {Mixed, 1}, {Empty, 30800}},
     877         {0x00000010, 0x00000800, 0x00000100}};
     878    /** Code Point Ranges for EBG
     879    [128102, 128105]**/
     880    const UnicodeSet ebg_Set
     881        {{{Empty, 4003}, {Mixed, 1}, {Empty, 30812}},
     882         {0x000003c0}};
    883883    static EnumeratedPropertyObject property_object
    884884        {WB,
     
    886886         WB_ns::value_names,
    887887         WB_ns::aliases_only_map,
    888          {&cr_Set, &dq_Set, &eb_Set, &ebg_Set, &em_Set, &ex_Set, &extend_Set,
    889         &fo_Set, &gaz_Set, &hl_Set, &ka_Set, &le_Set, &lf_Set, &mb_Set,
    890         &ml_Set, &mn_Set, &nl_Set, &nu_Set, &ri_Set, &sq_Set, &xx_Set,
    891         &zwj_Set
     888         {&xx_Set, &dq_Set, &sq_Set, &hl_Set, &cr_Set, &lf_Set, &nl_Set,
     889        &extend_Set, &ri_Set, &fo_Set, &ka_Set, &le_Set, &ml_Set, &mn_Set,
     890        &mb_Set, &nu_Set, &ex_Set, &eb_Set, &em_Set, &zwj_Set, &gaz_Set,
     891        &ebg_Set
    892892         }};
    893893    }
Note: See TracChangeset for help on using the changeset viewer.