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/Scripts.h

    r5145 r5154  
    1515namespace UCD {
    1616    namespace SC_ns {
    17     /** Code Point Ranges for Adlm
    18     [125184, 125258], [125264, 125273], [125278, 125279]**/
    19     const UnicodeSet adlm_Set
    20         {{{Empty, 3912}, {Full, 2}, {Mixed, 1}, {Empty, 30901}},
    21          {0xc3ff07ff}};
    22     /** Code Point Ranges for Aghb
    23     [66864, 66915], [66927, 66927]**/
    24     const UnicodeSet aghb_Set
    25         {{{Empty, 2089}, {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Empty, 32724}},
    26          {0xffff0000, 0x0000800f}};
    27     /** Code Point Ranges for Ahom
    28     [71424, 71449], [71453, 71467], [71472, 71487]**/
    29     const UnicodeSet ahom_Set
    30         {{{Empty, 2232}, {Mixed, 2}, {Empty, 32582}},
    31          {0xe3ffffff, 0xffff0fff}};
    32     /** Code Point Ranges for Arab
    33     [1536, 1540], [1542, 1547], [1549, 1562], [1566, 1566], [1568, 1599],
    34     [1601, 1610], [1622, 1647], [1649, 1756], [1758, 1791], [1872, 1919],
    35     [2208, 2228], [2230, 2237], [2260, 2273], [2275, 2303], [64336, 64449],
    36     [64467, 64829], [64848, 64911], [64914, 64967], [65008, 65021],
    37     [65136, 65140], [65142, 65276], [69216, 69246], [126464, 126467],
    38     [126469, 126495], [126497, 126498], [126500, 126500], [126503, 126503],
    39     [126505, 126514], [126516, 126519], [126521, 126521], [126523, 126523],
    40     [126530, 126530], [126535, 126535], [126537, 126537], [126539, 126539],
    41     [126541, 126543], [126545, 126546], [126548, 126548], [126551, 126551],
    42     [126553, 126553], [126555, 126555], [126557, 126557], [126559, 126559],
    43     [126561, 126562], [126564, 126564], [126567, 126570], [126572, 126578],
    44     [126580, 126583], [126585, 126588], [126590, 126590], [126592, 126601],
    45     [126603, 126619], [126625, 126627], [126629, 126633], [126635, 126651],
    46     [126704, 126705]**/
    47     const UnicodeSet arab_Set
    48         {{{Empty, 48}, {Mixed, 1}, {Full, 1}, {Mixed, 2}, {Full, 2},
    49           {Mixed, 1}, {Full, 1}, {Empty, 2}, {Mixed, 1}, {Full, 1},
    50           {Empty, 9}, {Mixed, 3}, {Empty, 1938}, {Mixed, 1}, {Full, 3},
    51           {Mixed, 1}, {Full, 10}, {Mixed, 2}, {Full, 1}, {Mixed, 1},
    52           {Full, 1}, {Mixed, 2}, {Empty, 3}, {Mixed, 1}, {Full, 3},
    53           {Mixed, 1}, {Empty, 123}, {Mixed, 1}, {Empty, 1788}, {Mixed, 6},
    54           {Empty, 1}, {Mixed, 1}, {Empty, 30856}},
    55          {0x47ffefdf, 0xffc007fe, 0xfffeffff, 0xdfffffff, 0xffff0000,
    56           0x3fdfffff, 0xfff00000, 0xfffffffb, 0xffff0000, 0xfff80003,
    57           0x3fffffff, 0xffff0000, 0xfffcffff, 0x000000ff, 0x3fff0000,
    58           0xffdf0000, 0x1fffffff, 0x7fffffff, 0xffffffef, 0x0af7fe96,
    59           0xaa96ea84, 0x5ef7f796, 0x0ffffbff, 0x0ffffbee, 0x00030000}};
    60     /** Code Point Ranges for Armi
    61     [67648, 67669], [67671, 67679]**/
    62     const UnicodeSet armi_Set
    63         {{{Empty, 2114}, {Mixed, 1}, {Empty, 32701}},
    64          {0xffbfffff}};
    65     /** Code Point Ranges for Armn
    66     [1329, 1366], [1369, 1375], [1377, 1415], [1418, 1418], [1421, 1423],
    67     [64275, 64279]**/
    68     const UnicodeSet armn_Set
    69         {{{Empty, 41}, {Mixed, 4}, {Empty, 1963}, {Mixed, 1},
    70           {Empty, 32807}},
    71          {0xfffe0000, 0xfe7fffff, 0xfffffffe, 0x0000e4ff, 0x00f80000}};
    72     /** Code Point Ranges for Avst
    73     [68352, 68405], [68409, 68415]**/
    74     const UnicodeSet avst_Set
    75         {{{Empty, 2136}, {Full, 1}, {Mixed, 1}, {Empty, 32678}},
    76          {0xfe3fffff}};
    77     /** Code Point Ranges for Bali
    78     [6912, 6987], [6992, 7036]**/
    79     const UnicodeSet bali_Set
    80         {{{Empty, 216}, {Full, 2}, {Mixed, 2}, {Empty, 34596}},
    81          {0xffff0fff, 0x1fffffff}};
    82     /** Code Point Ranges for Bamu
    83     [42656, 42743], [92160, 92728]**/
    84     const UnicodeSet bamu_Set
    85         {{{Empty, 1333}, {Full, 2}, {Mixed, 1}, {Empty, 1544}, {Full, 17},
    86           {Mixed, 1}, {Empty, 31918}},
    87          {0x00ffffff, 0x01ffffff}};
    88     /** Code Point Ranges for Bass
    89     [92880, 92909], [92912, 92917]**/
    90     const UnicodeSet bass_Set
    91         {{{Empty, 2902}, {Mixed, 2}, {Empty, 31912}},
    92          {0xffff0000, 0x003f3fff}};
    93     /** Code Point Ranges for Batk
    94     [7104, 7155], [7164, 7167]**/
    95     const UnicodeSet batk_Set
    96         {{{Empty, 222}, {Full, 1}, {Mixed, 1}, {Empty, 34592}},
    97          {0xf00fffff}};
    98     /** Code Point Ranges for Beng
    99     [2432, 2435], [2437, 2444], [2447, 2448], [2451, 2472], [2474, 2480],
    100     [2482, 2482], [2486, 2489], [2492, 2500], [2503, 2504], [2507, 2510],
    101     [2519, 2519], [2524, 2525], [2527, 2531], [2534, 2555]**/
    102     const UnicodeSet beng_Set
    103         {{{Empty, 76}, {Mixed, 4}, {Empty, 34736}},
    104          {0xfff99fef, 0xf3c5fdff, 0xb080799f, 0x0fffffcf}};
    105     /** Code Point Ranges for Bhks
    106     [72704, 72712], [72714, 72758], [72760, 72773], [72784, 72812]**/
    107     const UnicodeSet bhks_Set
    108         {{{Empty, 2272}, {Mixed, 4}, {Empty, 32540}},
    109          {0xfffffdff, 0xff7fffff, 0xffff003f, 0x00001fff}};
    110     /** Code Point Ranges for Bopo
    111     [746, 747], [12549, 12589], [12704, 12730]**/
    112     const UnicodeSet bopo_Set
    113         {{{Empty, 23}, {Mixed, 1}, {Empty, 368}, {Mixed, 2}, {Empty, 3},
    114           {Mixed, 1}, {Empty, 34418}},
    115          {0x00000c00, 0xffffffe0, 0x00003fff, 0x07ffffff}};
    116     /** Code Point Ranges for Brah
    117     [69632, 69709], [69714, 69743], [69759, 69759]**/
    118     const UnicodeSet brah_Set
    119         {{{Empty, 2176}, {Full, 2}, {Mixed, 2}, {Empty, 32636}},
    120          {0xfffc3fff, 0x8000ffff}};
    121     /** Code Point Ranges for Brai
    122     [10240, 10495]**/
    123     const UnicodeSet brai_Set
    124         {{{Empty, 320}, {Full, 8}, {Empty, 34488}},
    125          {}};
    126     /** Code Point Ranges for Bugi
    127     [6656, 6683], [6686, 6687]**/
    128     const UnicodeSet bugi_Set
    129         {{{Empty, 208}, {Mixed, 1}, {Empty, 34607}},
    130          {0xcfffffff}};
    131     /** Code Point Ranges for Buhd
    132     [5952, 5971]**/
    133     const UnicodeSet buhd_Set
    134         {{{Empty, 186}, {Mixed, 1}, {Empty, 34629}},
    135          {0x000fffff}};
    136     /** Code Point Ranges for Cakm
    137     [69888, 69940], [69942, 69955]**/
    138     const UnicodeSet cakm_Set
    139         {{{Empty, 2184}, {Full, 1}, {Mixed, 2}, {Empty, 32629}},
    140          {0xffdfffff, 0x0000000f}};
    141     /** Code Point Ranges for Cans
    142     [5120, 5759], [6320, 6389]**/
    143     const UnicodeSet cans_Set
    144         {{{Empty, 160}, {Full, 20}, {Empty, 17}, {Mixed, 1}, {Full, 1},
    145           {Mixed, 1}, {Empty, 34616}},
    146          {0xffff0000, 0x003fffff}};
    147     /** Code Point Ranges for Cari
    148     [66208, 66256]**/
    149     const UnicodeSet cari_Set
    150         {{{Empty, 2069}, {Full, 1}, {Mixed, 1}, {Empty, 32745}},
    151          {0x0001ffff}};
    152     /** Code Point Ranges for Cham
    153     [43520, 43574], [43584, 43597], [43600, 43609], [43612, 43615]**/
    154     const UnicodeSet cham_Set
    155         {{{Empty, 1360}, {Full, 1}, {Mixed, 2}, {Empty, 33453}},
    156          {0x007fffff, 0xf3ff3fff}};
    157     /** Code Point Ranges for Cher
    158     [5024, 5109], [5112, 5117], [43888, 43967]**/
    159     const UnicodeSet cher_Set
    160         {{{Empty, 157}, {Full, 2}, {Mixed, 1}, {Empty, 1211}, {Mixed, 1},
    161           {Full, 2}, {Empty, 33442}},
    162          {0x3f3fffff, 0xffff0000}};
    163     /** Code Point Ranges for Copt
    164     [994, 1007], [11392, 11507], [11513, 11519]**/
    165     const UnicodeSet copt_Set
    166         {{{Empty, 31}, {Mixed, 1}, {Empty, 324}, {Full, 3}, {Mixed, 1},
    167           {Empty, 34456}},
    168          {0x0000fffc, 0xfe0fffff}};
    169     /** Code Point Ranges for Cprt
    170     [67584, 67589], [67592, 67592], [67594, 67637], [67639, 67640],
    171     [67644, 67644], [67647, 67647]**/
    172     const UnicodeSet cprt_Set
    173         {{{Empty, 2112}, {Mixed, 2}, {Empty, 32702}},
    174          {0xfffffd3f, 0x91bfffff}};
    175     /** Code Point Ranges for Cyrl
    176     [1024, 1156], [1159, 1327], [7296, 7304], [7467, 7467], [7544, 7544],
    177     [11744, 11775], [42560, 42655], [65070, 65071]**/
    178     const UnicodeSet cyrl_Set
    179         {{{Empty, 32}, {Full, 4}, {Mixed, 1}, {Full, 4}, {Mixed, 1},
    180           {Empty, 186}, {Mixed, 1}, {Empty, 4}, {Mixed, 1}, {Empty, 1},
    181           {Mixed, 1}, {Empty, 131}, {Full, 1}, {Empty, 962}, {Full, 3},
    182           {Empty, 700}, {Mixed, 1}, {Empty, 32782}},
    183          {0xffffff9f, 0x0000ffff, 0x000001ff, 0x00000800, 0x01000000,
    184           0x0000c000}};
    185     /** Code Point Ranges for Deva
    186     [2304, 2384], [2387, 2403], [2406, 2431], [43232, 43261]**/
    187     const UnicodeSet deva_Set
    188         {{{Empty, 72}, {Full, 2}, {Mixed, 2}, {Empty, 1275}, {Mixed, 1},
    189           {Empty, 33464}},
    190          {0xfff9ffff, 0xffffffcf, 0x3fffffff}};
    191     /** Code Point Ranges for Dsrt
    192     [66560, 66639]**/
    193     const UnicodeSet dsrt_Set
    194         {{{Empty, 2080}, {Full, 2}, {Mixed, 1}, {Empty, 32733}},
    195          {0x0000ffff}};
    196     /** Code Point Ranges for Dupl
    197     [113664, 113770], [113776, 113788], [113792, 113800], [113808, 113817],
    198     [113820, 113823]**/
    199     const UnicodeSet dupl_Set
    200         {{{Empty, 3552}, {Full, 3}, {Mixed, 2}, {Empty, 31259}},
    201          {0x1fff07ff, 0xf3ff01ff}};
    202     /** Code Point Ranges for Egyp
    203     [77824, 78894]**/
    204     const UnicodeSet egyp_Set
    205         {{{Empty, 2432}, {Full, 33}, {Mixed, 1}, {Empty, 32350}},
    206          {0x00007fff}};
    207     /** Code Point Ranges for Elba
    208     [66816, 66855]**/
    209     const UnicodeSet elba_Set
    210         {{{Empty, 2088}, {Full, 1}, {Mixed, 1}, {Empty, 32726}},
    211          {0x000000ff}};
    212     /** Code Point Ranges for Ethi
    213     [4608, 4680], [4682, 4685], [4688, 4694], [4696, 4696], [4698, 4701],
    214     [4704, 4744], [4746, 4749], [4752, 4784], [4786, 4789], [4792, 4798],
    215     [4800, 4800], [4802, 4805], [4808, 4822], [4824, 4880], [4882, 4885],
    216     [4888, 4954], [4957, 4988], [4992, 5017], [11648, 11670],
    217     [11680, 11686], [11688, 11694], [11696, 11702], [11704, 11710],
    218     [11712, 11718], [11720, 11726], [11728, 11734], [11736, 11742],
    219     [43777, 43782], [43785, 43790], [43793, 43798], [43808, 43814],
    220     [43816, 43822]**/
    221     const UnicodeSet ethi_Set
    222         {{{Empty, 144}, {Full, 2}, {Mixed, 1}, {Full, 1}, {Mixed, 3},
    223           {Full, 1}, {Mixed, 1}, {Full, 1}, {Mixed, 3}, {Empty, 207},
    224           {Mixed, 3}, {Empty, 1001}, {Mixed, 2}, {Empty, 33446}},
    225          {0x3d7f3dff, 0xffff3dff, 0x7f3dffff, 0xff7fff3d, 0xff3dffff,
    226           0xe7ffffff, 0x1fffffff, 0x03ffffff, 0x007fffff, 0x7f7f7f7f,
    227           0x7f7f7f7f, 0x007e7e7e, 0x00007f7f}};
    228     /** Code Point Ranges for Geor
    229     [4256, 4293], [4295, 4295], [4301, 4301], [4304, 4346], [4348, 4351],
    230     [11520, 11557], [11559, 11559], [11565, 11565]**/
    231     const UnicodeSet geor_Set
    232         {{{Empty, 133}, {Full, 1}, {Mixed, 2}, {Empty, 224}, {Full, 1},
    233           {Mixed, 1}, {Empty, 34454}},
    234          {0xffff20bf, 0xf7ffffff, 0x000020bf}};
    235     /** Code Point Ranges for Glag
    236     [11264, 11310], [11312, 11358], [122880, 122886], [122888, 122904],
    237     [122907, 122913], [122915, 122916], [122918, 122922]**/
    238     const UnicodeSet glag_Set
    239         {{{Empty, 352}, {Full, 1}, {Mixed, 2}, {Empty, 3485}, {Mixed, 2},
    240           {Empty, 30974}},
    241          {0xffff7fff, 0x7fffffff, 0xf9ffff7f, 0x000007db}};
    242     /** Code Point Ranges for Goth
    243     [66352, 66378]**/
    244     const UnicodeSet goth_Set
    245         {{{Empty, 2073}, {Mixed, 2}, {Empty, 32741}},
    246          {0xffff0000, 0x000007ff}};
    247     /** Code Point Ranges for Gran
    248     [70400, 70403], [70405, 70412], [70415, 70416], [70419, 70440],
    249     [70442, 70448], [70450, 70451], [70453, 70457], [70460, 70468],
    250     [70471, 70472], [70475, 70477], [70480, 70480], [70487, 70487],
    251     [70493, 70499], [70502, 70508], [70512, 70516]**/
    252     const UnicodeSet gran_Set
    253         {{{Empty, 2200}, {Mixed, 4}, {Empty, 32612}},
    254          {0xfff99fef, 0xf3edfdff, 0xe081399f, 0x001f1fcf}};
    255     /** Code Point Ranges for Grek
    256     [880, 883], [885, 887], [890, 893], [895, 895], [900, 900], [902, 902],
    257     [904, 906], [908, 908], [910, 929], [931, 993], [1008, 1023],
    258     [7462, 7466], [7517, 7521], [7526, 7530], [7615, 7615], [7936, 7957],
    259     [7960, 7965], [7968, 8005], [8008, 8013], [8016, 8023], [8025, 8025],
    260     [8027, 8027], [8029, 8029], [8031, 8061], [8064, 8116], [8118, 8132],
    261     [8134, 8147], [8150, 8155], [8157, 8175], [8178, 8180], [8182, 8190],
    262     [8486, 8486], [43877, 43877], [65856, 65934], [65952, 65952],
    263     [119296, 119365]**/
    264     const UnicodeSet grek_Set
    265         {{{Empty, 27}, {Mixed, 3}, {Full, 1}, {Mixed, 1}, {Empty, 201},
    266           {Mixed, 3}, {Empty, 1}, {Mixed, 1}, {Empty, 10}, {Mixed, 1},
    267           {Full, 1}, {Mixed, 2}, {Full, 1}, {Mixed, 3}, {Empty, 9},
    268           {Mixed, 1}, {Empty, 1105}, {Mixed, 1}, {Empty, 686}, {Full, 2},
    269           {Mixed, 2}, {Empty, 1666}, {Full, 2}, {Mixed, 1}, {Empty, 31085}},
    270          {0xbcef0000, 0xffffd750, 0xfffffffb, 0xffff0003, 0x000007c0,
    271           0xe0000000, 0x000007c3, 0x80000000, 0x3f3fffff, 0xaaff3f3f,
    272           0x3fffffff, 0xffdfffff, 0xefcfffdf, 0x7fdcffff, 0x00000040,
    273           0x00000020, 0x00007fff, 0x00000001, 0x0000003f}};
    274     /** Code Point Ranges for Gujr
    275     [2689, 2691], [2693, 2701], [2703, 2705], [2707, 2728], [2730, 2736],
    276     [2738, 2739], [2741, 2745], [2748, 2757], [2759, 2761], [2763, 2765],
    277     [2768, 2768], [2784, 2787], [2790, 2801], [2809, 2809]**/
    278     const UnicodeSet gujr_Set
    279         {{{Empty, 84}, {Mixed, 4}, {Empty, 34728}},
    280          {0xfffbbfee, 0xf3edfdff, 0x00013bbf, 0x0203ffcf}};
    281     /** Code Point Ranges for Guru
    282     [2561, 2563], [2565, 2570], [2575, 2576], [2579, 2600], [2602, 2608],
    283     [2610, 2611], [2613, 2614], [2616, 2617], [2620, 2620], [2622, 2626],
    284     [2631, 2632], [2635, 2637], [2641, 2641], [2649, 2652], [2654, 2654],
    285     [2662, 2677]**/
    286     const UnicodeSet guru_Set
    287         {{{Empty, 80}, {Mixed, 4}, {Empty, 34732}},
    288          {0xfff987ee, 0xd36dfdff, 0x5e023987, 0x003fffc0}};
    289     /** Code Point Ranges for Hang
    290     [4352, 4607], [12334, 12335], [12593, 12686], [12800, 12830],
    291     [12896, 12926], [43360, 43388], [44032, 55203], [55216, 55238],
    292     [55243, 55291], [65440, 65470], [65474, 65479], [65482, 65487],
    293     [65490, 65495], [65498, 65500]**/
    294     const UnicodeSet hang_Set
    295         {{{Empty, 136}, {Full, 8}, {Empty, 241}, {Mixed, 1}, {Empty, 7},
    296           {Mixed, 1}, {Full, 2}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
    297           {Empty, 2}, {Mixed, 1}, {Empty, 951}, {Mixed, 1}, {Empty, 20},
    298           {Full, 349}, {Mixed, 3}, {Empty, 317}, {Mixed, 2}, {Empty, 32769}},
    299          {0x0000c000, 0xfffe0000, 0x00007fff, 0x7fffffff, 0x7fffffff,
    300           0x1fffffff, 0xffff000f, 0xfffff87f, 0x0fffffff, 0x7fffffff,
    301           0x1cfcfcfc}};
    302     /** Code Point Ranges for Hani
    303     [11904, 11929], [11931, 12019], [12032, 12245], [12293, 12293],
    304     [12295, 12295], [12321, 12329], [12344, 12347], [13312, 19893],
    305     [19968, 40917], [63744, 64109], [64112, 64217], [131072, 173782],
    306     [173824, 177972], [177984, 178205], [178208, 183969], [194560, 195101]**/
    307     const UnicodeSet hani_Set
    308         {{{Empty, 372}, {Mixed, 1}, {Full, 2}, {Mixed, 1}, {Full, 6},
    309           {Mixed, 1}, {Empty, 1}, {Mixed, 2}, {Empty, 30}, {Full, 205},
    310           {Mixed, 1}, {Empty, 2}, {Full, 654}, {Mixed, 1}, {Empty, 713},
    311           {Full, 11}, {Mixed, 1}, {Full, 2}, {Mixed, 1}, {Empty, 2089},
    312           {Full, 1334}, {Mixed, 1}, {Empty, 1}, {Full, 129}, {Mixed, 1},
    313           {Full, 6}, {Mixed, 1}, {Full, 180}, {Mixed, 1}, {Empty, 330},
    314           {Full, 16}, {Mixed, 1}, {Empty, 28719}},
    315          {0xfbffffff, 0x000fffff, 0x003fffff, 0x000000a0, 0x0f0003fe,
    316           0x003fffff, 0x003fffff, 0xffff3fff, 0x03ffffff, 0x007fffff,
    317           0x001fffff, 0x3fffffff, 0x00000003, 0x3fffffff}};
    318     /** Code Point Ranges for Hano
    319     [5920, 5940]**/
    320     const UnicodeSet hano_Set
    321         {{{Empty, 185}, {Mixed, 1}, {Empty, 34630}},
    322          {0x001fffff}};
    323     /** Code Point Ranges for Hatr
    324     [67808, 67826], [67828, 67829], [67835, 67839]**/
    325     const UnicodeSet hatr_Set
    326         {{{Empty, 2119}, {Mixed, 1}, {Empty, 32696}},
    327          {0xf837ffff}};
    328     /** Code Point Ranges for Hebr
    329     [1425, 1479], [1488, 1514], [1520, 1524], [64285, 64310],
    330     [64312, 64316], [64318, 64318], [64320, 64321], [64323, 64324],
    331     [64326, 64335]**/
    332     const UnicodeSet hebr_Set
    333         {{{Empty, 44}, {Mixed, 1}, {Full, 1}, {Mixed, 2}, {Empty, 1960},
    334           {Mixed, 3}, {Empty, 32805}},
    335          {0xfffe0000, 0xffff00ff, 0x001f07ff, 0xe0000000, 0x5f7fffff,
    336           0x0000ffdb}};
    337     /** Code Point Ranges for Hira
    338     [12353, 12438], [12445, 12447], [110593, 110593], [127488, 127488]**/
    339     const UnicodeSet hira_Set
    340         {{{Empty, 386}, {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Empty, 3067},
    341           {Mixed, 1}, {Empty, 527}, {Mixed, 1}, {Empty, 30831}},
    342          {0xfffffffe, 0xe07fffff, 0x00000002, 0x00000001}};
    343     /** Code Point Ranges for Hluw
    344     [82944, 83526]**/
    345     const UnicodeSet hluw_Set
    346         {{{Empty, 2592}, {Full, 18}, {Mixed, 1}, {Empty, 32205}},
    347          {0x0000007f}};
    348     /** Code Point Ranges for Hmng
    349     [92928, 92997], [93008, 93017], [93019, 93025], [93027, 93047],
    350     [93053, 93071]**/
    351     const UnicodeSet hmng_Set
    352         {{{Empty, 2904}, {Full, 2}, {Mixed, 3}, {Empty, 31907}},
    353          {0xfbff003f, 0xe0fffffb, 0x0000ffff}};
    354     /** Code Point Ranges for Hrkt
    355     **/
    356     const UnicodeSet hrkt_Set
    357         {{{Empty, 34816}},
    358          {}};
    359     /** Code Point Ranges for Hung
    360     [68736, 68786], [68800, 68850], [68858, 68863]**/
    361     const UnicodeSet hung_Set
    362         {{{Empty, 2148}, {Full, 1}, {Mixed, 1}, {Full, 1}, {Mixed, 1},
    363           {Empty, 32664}},
    364          {0x0007ffff, 0xfc07ffff}};
    365     /** Code Point Ranges for Ital
    366     [66304, 66339]**/
    367     const UnicodeSet ital_Set
    368         {{{Empty, 2072}, {Full, 1}, {Mixed, 1}, {Empty, 32742}},
    369          {0x0000000f}};
    370     /** Code Point Ranges for Java
    371     [43392, 43469], [43472, 43481], [43486, 43487]**/
    372     const UnicodeSet java_Set
    373         {{{Empty, 1356}, {Full, 2}, {Mixed, 1}, {Empty, 33457}},
    374          {0xc3ff3fff}};
    375     /** Code Point Ranges for Kali
    376     [43264, 43309], [43311, 43311]**/
    377     const UnicodeSet kali_Set
    378         {{{Empty, 1352}, {Full, 1}, {Mixed, 1}, {Empty, 33462}},
    379          {0x0000bfff}};
    380     /** Code Point Ranges for Kana
    381     [12449, 12538], [12541, 12543], [12784, 12799], [13008, 13054],
    382     [13056, 13143], [65382, 65391], [65393, 65437], [110592, 110592]**/
    383     const UnicodeSet kana_Set
    384         {{{Empty, 389}, {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Empty, 7},
    385           {Mixed, 1}, {Empty, 6}, {Mixed, 2}, {Full, 2}, {Mixed, 1},
    386           {Empty, 1632}, {Mixed, 2}, {Empty, 1411}, {Mixed, 1},
    387           {Empty, 31359}},
    388          {0xfffffffe, 0xe7ffffff, 0xffff0000, 0xffff0000, 0x7fffffff,
    389           0x00ffffff, 0xfffeffc0, 0x3fffffff, 0x00000001}};
    390     /** Code Point Ranges for Khar
    391     [68096, 68099], [68101, 68102], [68108, 68115], [68117, 68119],
    392     [68121, 68147], [68152, 68154], [68159, 68167], [68176, 68184]**/
    393     const UnicodeSet khar_Set
    394         {{{Empty, 2128}, {Mixed, 3}, {Empty, 32685}},
    395          {0xfeeff06f, 0x870fffff, 0x01ff00ff}};
    396     /** Code Point Ranges for Khmr
    397     [6016, 6109], [6112, 6121], [6128, 6137], [6624, 6655]**/
    398     const UnicodeSet khmr_Set
    399         {{{Empty, 188}, {Full, 2}, {Mixed, 2}, {Empty, 15}, {Full, 1},
    400           {Empty, 34608}},
    401          {0x3fffffff, 0x03ff03ff}};
    402     /** Code Point Ranges for Khoj
    403     [70144, 70161], [70163, 70206]**/
    404     const UnicodeSet khoj_Set
    405         {{{Empty, 2192}, {Mixed, 2}, {Empty, 32622}},
    406          {0xfffbffff, 0x7fffffff}};
    407     /** Code Point Ranges for Knda
    408     [3200, 3203], [3205, 3212], [3214, 3216], [3218, 3240], [3242, 3251],
    409     [3253, 3257], [3260, 3268], [3270, 3272], [3274, 3277], [3285, 3286],
    410     [3294, 3294], [3296, 3299], [3302, 3311], [3313, 3314]**/
    411     const UnicodeSet knda_Set
    412         {{{Empty, 100}, {Mixed, 4}, {Empty, 34712}},
    413          {0xfffddfef, 0xf3effdff, 0x40603ddf, 0x0006ffcf}};
    414     /** Code Point Ranges for Kthi
    415     [69760, 69825]**/
    416     const UnicodeSet kthi_Set
    417         {{{Empty, 2180}, {Full, 2}, {Mixed, 1}, {Empty, 32633}},
    418          {0x00000003}};
    419     /** Code Point Ranges for Lana
    420     [6688, 6750], [6752, 6780], [6783, 6793], [6800, 6809], [6816, 6829]**/
    421     const UnicodeSet lana_Set
    422         {{{Empty, 209}, {Full, 1}, {Mixed, 4}, {Empty, 34602}},
    423          {0x7fffffff, 0x9fffffff, 0x03ff03ff, 0x00003fff}};
    424     /** Code Point Ranges for Laoo
    425     [3713, 3714], [3716, 3716], [3719, 3720], [3722, 3722], [3725, 3725],
    426     [3732, 3735], [3737, 3743], [3745, 3747], [3749, 3749], [3751, 3751],
    427     [3754, 3755], [3757, 3769], [3771, 3773], [3776, 3780], [3782, 3782],
    428     [3784, 3789], [3792, 3801], [3804, 3807]**/
    429     const UnicodeSet laoo_Set
    430         {{{Empty, 116}, {Mixed, 3}, {Empty, 34697}},
    431          {0xfef02596, 0x3bffecae, 0xf3ff3f5f}};
    432     /** Code Point Ranges for Latn
    433     [65, 90], [97, 122], [170, 170], [186, 186], [192, 214], [216, 246],
    434     [248, 696], [736, 740], [7424, 7461], [7468, 7516], [7522, 7525],
    435     [7531, 7543], [7545, 7614], [7680, 7935], [8305, 8305], [8319, 8319],
    436     [8336, 8348], [8490, 8491], [8498, 8498], [8526, 8526], [8544, 8584],
    437     [11360, 11391], [42786, 42887], [42891, 42926], [42928, 42935],
    438     [42999, 43007], [43824, 43866], [43868, 43876], [64256, 64262],
    439     [65313, 65338], [65345, 65370]**/
    440     const UnicodeSet latn_Set
    441         {{{Empty, 2}, {Mixed, 2}, {Empty, 1}, {Mixed, 3}, {Full, 13},
    442           {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 208}, {Full, 1},
    443           {Mixed, 3}, {Full, 1}, {Mixed, 1}, {Empty, 2}, {Full, 8},
    444           {Empty, 11}, {Mixed, 2}, {Empty, 4}, {Mixed, 2}, {Full, 1},
    445           {Mixed, 1}, {Empty, 86}, {Full, 1}, {Empty, 981}, {Mixed, 1},
    446           {Full, 2}, {Mixed, 2}, {Empty, 1}, {Mixed, 1}, {Empty, 25},
    447           {Mixed, 3}, {Empty, 636}, {Mixed, 1}, {Empty, 32}, {Mixed, 2},
    448           {Empty, 32773}},
    449          {0x07fffffe, 0x07fffffe, 0x04000400, 0xff7fffff, 0xff7fffff,
    450           0x01ffffff, 0x0000001f, 0xfffff03f, 0x1fffffff, 0xfefff83c,
    451           0x7fffffff, 0x80020000, 0x1fff0000, 0x00040c00, 0x00004000,
    452           0x000001ff, 0xfffffffc, 0xfffff8ff, 0x00ff7fff, 0xff800000,
    453           0xffff0000, 0xf7ffffff, 0x0000001f, 0x0000007f, 0x07fffffe,
    454           0x07fffffe}};
    455     /** Code Point Ranges for Lepc
    456     [7168, 7223], [7227, 7241], [7245, 7247]**/
    457     const UnicodeSet lepc_Set
    458         {{{Empty, 224}, {Full, 1}, {Mixed, 2}, {Empty, 34589}},
    459          {0xf8ffffff, 0x0000e3ff}};
    460     /** Code Point Ranges for Limb
    461     [6400, 6430], [6432, 6443], [6448, 6459], [6464, 6464], [6468, 6479]**/
    462     const UnicodeSet limb_Set
    463         {{{Empty, 200}, {Mixed, 3}, {Empty, 34613}},
    464          {0x7fffffff, 0x0fff0fff, 0x0000fff1}};
    465     /** Code Point Ranges for Lina
    466     [67072, 67382], [67392, 67413], [67424, 67431]**/
    467     const UnicodeSet lina_Set
    468         {{{Empty, 2096}, {Full, 9}, {Mixed, 3}, {Empty, 32708}},
    469          {0x007fffff, 0x003fffff, 0x000000ff}};
    470     /** Code Point Ranges for Linb
    471     [65536, 65547], [65549, 65574], [65576, 65594], [65596, 65597],
    472     [65599, 65613], [65616, 65629], [65664, 65786]**/
    473     const UnicodeSet linb_Set
    474         {{{Empty, 2048}, {Mixed, 3}, {Empty, 1}, {Full, 3}, {Mixed, 1},
    475           {Empty, 32760}},
    476          {0xffffefff, 0xb7ffff7f, 0x3fff3fff, 0x07ffffff}};
    477     /** Code Point Ranges for Lisu
    478     [42192, 42239]**/
    479     const UnicodeSet lisu_Set
    480         {{{Empty, 1318}, {Mixed, 1}, {Full, 1}, {Empty, 33496}},
    481          {0xffff0000}};
    482     /** Code Point Ranges for Lyci
    483     [66176, 66204]**/
    484     const UnicodeSet lyci_Set
    485         {{{Empty, 2068}, {Mixed, 1}, {Empty, 32747}},
    486          {0x1fffffff}};
    487     /** Code Point Ranges for Lydi
    488     [67872, 67897], [67903, 67903]**/
    489     const UnicodeSet lydi_Set
    490         {{{Empty, 2121}, {Mixed, 1}, {Empty, 32694}},
    491          {0x83ffffff}};
    492     /** Code Point Ranges for Mahj
    493     [69968, 70006]**/
    494     const UnicodeSet mahj_Set
    495         {{{Empty, 2186}, {Mixed, 2}, {Empty, 32628}},
    496          {0xffff0000, 0x007fffff}};
    497     /** Code Point Ranges for Mand
    498     [2112, 2139], [2142, 2142]**/
    499     const UnicodeSet mand_Set
    500         {{{Empty, 66}, {Mixed, 1}, {Empty, 34749}},
    501          {0x4fffffff}};
    502     /** Code Point Ranges for Mani
    503     [68288, 68326], [68331, 68342]**/
    504     const UnicodeSet mani_Set
    505         {{{Empty, 2134}, {Full, 1}, {Mixed, 1}, {Empty, 32680}},
    506          {0x007ff87f}};
    507     /** Code Point Ranges for Marc
    508     [72816, 72847], [72850, 72871], [72873, 72886]**/
    509     const UnicodeSet marc_Set
    510         {{{Empty, 2275}, {Mixed, 3}, {Empty, 32538}},
    511          {0xffff0000, 0xfffcffff, 0x007ffeff}};
    512     /** Code Point Ranges for Mend
    513     [124928, 125124], [125127, 125142]**/
    514     const UnicodeSet mend_Set
    515         {{{Empty, 3904}, {Full, 6}, {Mixed, 1}, {Empty, 30905}},
    516          {0x007fff9f}};
    517     /** Code Point Ranges for Merc
    518     [68000, 68023], [68028, 68047], [68050, 68095]**/
    519     const UnicodeSet merc_Set
    520         {{{Empty, 2125}, {Mixed, 2}, {Full, 1}, {Empty, 32688}},
    521          {0xf0ffffff, 0xfffcffff}};
    522     /** Code Point Ranges for Mero
    523     [67968, 67999]**/
    524     const UnicodeSet mero_Set
    525         {{{Empty, 2124}, {Full, 1}, {Empty, 32691}},
    526          {}};
    527     /** Code Point Ranges for Mlym
    528     [3329, 3331], [3333, 3340], [3342, 3344], [3346, 3386], [3389, 3396],
    529     [3398, 3400], [3402, 3407], [3412, 3427], [3430, 3455]**/
    530     const UnicodeSet mlym_Set
    531         {{{Empty, 104}, {Mixed, 4}, {Empty, 34708}},
    532          {0xfffddfee, 0xe7ffffff, 0xfff0fddf, 0xffffffcf}};
    533     /** Code Point Ranges for Modi
    534     [71168, 71236], [71248, 71257]**/
    535     const UnicodeSet modi_Set
    536         {{{Empty, 2224}, {Full, 2}, {Mixed, 1}, {Empty, 32589}},
    537          {0x03ff001f}};
    538     /** Code Point Ranges for Mong
    539     [6144, 6145], [6148, 6148], [6150, 6158], [6160, 6169], [6176, 6263],
    540     [6272, 6314], [71264, 71276]**/
    541     const UnicodeSet mong_Set
    542         {{{Empty, 192}, {Mixed, 1}, {Full, 2}, {Mixed, 1}, {Full, 1},
    543           {Mixed, 1}, {Empty, 2029}, {Mixed, 1}, {Empty, 32588}},
    544          {0x03ff7fd3, 0x00ffffff, 0x000007ff, 0x00001fff}};
    545     /** Code Point Ranges for Mroo
    546     [92736, 92766], [92768, 92777], [92782, 92783]**/
    547     const UnicodeSet mroo_Set
    548         {{{Empty, 2898}, {Mixed, 2}, {Empty, 31916}},
    549          {0x7fffffff, 0x0000c3ff}};
    550     /** Code Point Ranges for Mtei
    551     [43744, 43766], [43968, 44013], [44016, 44025]**/
    552     const UnicodeSet mtei_Set
    553         {{{Empty, 1367}, {Mixed, 1}, {Empty, 6}, {Full, 1}, {Mixed, 1},
    554           {Empty, 33440}},
    555          {0x007fffff, 0x03ff3fff}};
    556     /** Code Point Ranges for Mult
    557     [70272, 70278], [70280, 70280], [70282, 70285], [70287, 70301],
    558     [70303, 70313]**/
    559     const UnicodeSet mult_Set
    560         {{{Empty, 2196}, {Mixed, 2}, {Empty, 32618}},
    561          {0xbfffbd7f, 0x000003ff}};
    562     /** Code Point Ranges for Mymr
    563     [4096, 4255], [43488, 43518], [43616, 43647]**/
    564     const UnicodeSet mymr_Set
    565         {{{Empty, 128}, {Full, 5}, {Empty, 1226}, {Mixed, 1}, {Empty, 3},
    566           {Full, 1}, {Empty, 33452}},
    567          {0x7fffffff}};
    568     /** Code Point Ranges for Narb
    569     [68224, 68255]**/
    570     const UnicodeSet narb_Set
    571         {{{Empty, 2132}, {Full, 1}, {Empty, 32683}},
    572          {}};
    573     /** Code Point Ranges for Nbat
    574     [67712, 67742], [67751, 67759]**/
    575     const UnicodeSet nbat_Set
    576         {{{Empty, 2116}, {Mixed, 2}, {Empty, 32698}},
    577          {0x7fffffff, 0x0000ff80}};
    578     /** Code Point Ranges for Newa
    579     [70656, 70745], [70747, 70747], [70749, 70749]**/
    580     const UnicodeSet newa_Set
    581         {{{Empty, 2208}, {Full, 2}, {Mixed, 1}, {Empty, 32605}},
    582          {0x2bffffff}};
    583     /** Code Point Ranges for Nkoo
    584     [1984, 2042]**/
    585     const UnicodeSet nkoo_Set
    586         {{{Empty, 62}, {Full, 1}, {Mixed, 1}, {Empty, 34752}},
    587          {0x07ffffff}};
    588     /** Code Point Ranges for Ogam
    589     [5760, 5788]**/
    590     const UnicodeSet ogam_Set
    591         {{{Empty, 180}, {Mixed, 1}, {Empty, 34635}},
    592          {0x1fffffff}};
    593     /** Code Point Ranges for Olck
    594     [7248, 7295]**/
    595     const UnicodeSet olck_Set
    596         {{{Empty, 226}, {Mixed, 1}, {Full, 1}, {Empty, 34588}},
    597          {0xffff0000}};
    598     /** Code Point Ranges for Orkh
    599     [68608, 68680]**/
    600     const UnicodeSet orkh_Set
    601         {{{Empty, 2144}, {Full, 2}, {Mixed, 1}, {Empty, 32669}},
    602          {0x000001ff}};
    603     /** Code Point Ranges for Orya
    604     [2817, 2819], [2821, 2828], [2831, 2832], [2835, 2856], [2858, 2864],
    605     [2866, 2867], [2869, 2873], [2876, 2884], [2887, 2888], [2891, 2893],
    606     [2902, 2903], [2908, 2909], [2911, 2915], [2918, 2935]**/
    607     const UnicodeSet orya_Set
    608         {{{Empty, 88}, {Mixed, 4}, {Empty, 34724}},
    609          {0xfff99fee, 0xf3edfdff, 0xb0c0399f, 0x00ffffcf}};
    610     /** Code Point Ranges for Osge
    611     [66736, 66771], [66776, 66811]**/
    612     const UnicodeSet osge_Set
    613         {{{Empty, 2085}, {Mixed, 3}, {Empty, 32728}},
    614          {0xffff0000, 0xff0fffff, 0x0fffffff}};
    615     /** Code Point Ranges for Osma
    616     [66688, 66717], [66720, 66729]**/
    617     const UnicodeSet osma_Set
    618         {{{Empty, 2084}, {Mixed, 2}, {Empty, 32730}},
    619          {0x3fffffff, 0x000003ff}};
    620     /** Code Point Ranges for Palm
    621     [67680, 67711]**/
    622     const UnicodeSet palm_Set
    623         {{{Empty, 2115}, {Full, 1}, {Empty, 32700}},
    624          {}};
    625     /** Code Point Ranges for Pauc
    626     [72384, 72440]**/
    627     const UnicodeSet pauc_Set
    628         {{{Empty, 2262}, {Full, 1}, {Mixed, 1}, {Empty, 32552}},
    629          {0x01ffffff}};
    630     /** Code Point Ranges for Perm
    631     [66384, 66426]**/
    632     const UnicodeSet perm_Set
    633         {{{Empty, 2074}, {Mixed, 2}, {Empty, 32740}},
    634          {0xffff0000, 0x07ffffff}};
    635     /** Code Point Ranges for Phag
    636     [43072, 43127]**/
    637     const UnicodeSet phag_Set
    638         {{{Empty, 1346}, {Full, 1}, {Mixed, 1}, {Empty, 33468}},
    639          {0x00ffffff}};
    640     /** Code Point Ranges for Phli
    641     [68448, 68466], [68472, 68479]**/
    642     const UnicodeSet phli_Set
    643         {{{Empty, 2139}, {Mixed, 1}, {Empty, 32676}},
    644          {0xff07ffff}};
    645     /** Code Point Ranges for Phlp
    646     [68480, 68497], [68505, 68508], [68521, 68527]**/
    647     const UnicodeSet phlp_Set
    648         {{{Empty, 2140}, {Mixed, 2}, {Empty, 32674}},
    649          {0x1e03ffff, 0x0000fe00}};
    650     /** Code Point Ranges for Phnx
    651     [67840, 67867], [67871, 67871]**/
    652     const UnicodeSet phnx_Set
    653         {{{Empty, 2120}, {Mixed, 1}, {Empty, 32695}},
    654          {0x8fffffff}};
    655     /** Code Point Ranges for Plrd
    656     [93952, 94020], [94032, 94078], [94095, 94111]**/
    657     const UnicodeSet plrd_Set
    658         {{{Empty, 2936}, {Full, 2}, {Mixed, 3}, {Empty, 31875}},
    659          {0xffff001f, 0x7fffffff, 0xffff8000}};
    660     /** Code Point Ranges for Prti
    661     [68416, 68437], [68440, 68447]**/
    662     const UnicodeSet prti_Set
    663         {{{Empty, 2138}, {Mixed, 1}, {Empty, 32677}},
    664          {0xff3fffff}};
    665     /** Code Point Ranges for Rjng
    666     [43312, 43347], [43359, 43359]**/
    667     const UnicodeSet rjng_Set
    668         {{{Empty, 1353}, {Mixed, 2}, {Empty, 33461}},
    669          {0xffff0000, 0x800fffff}};
    670     /** Code Point Ranges for Runr
    671     [5792, 5866], [5870, 5880]**/
    672     const UnicodeSet runr_Set
    673         {{{Empty, 181}, {Full, 2}, {Mixed, 1}, {Empty, 34632}},
    674          {0x01ffc7ff}};
    675     /** Code Point Ranges for Samr
    676     [2048, 2093], [2096, 2110]**/
    677     const UnicodeSet samr_Set
    678         {{{Empty, 64}, {Full, 1}, {Mixed, 1}, {Empty, 34750}},
    679          {0x7fff3fff}};
    680     /** Code Point Ranges for Sarb
    681     [68192, 68223]**/
    682     const UnicodeSet sarb_Set
    683         {{{Empty, 2131}, {Full, 1}, {Empty, 32684}},
    684          {}};
    685     /** Code Point Ranges for Saur
    686     [43136, 43205], [43214, 43225]**/
    687     const UnicodeSet saur_Set
    688         {{{Empty, 1348}, {Full, 2}, {Mixed, 1}, {Empty, 33465}},
    689          {0x03ffc03f}};
    690     /** Code Point Ranges for Sgnw
    691     [120832, 121483], [121499, 121503], [121505, 121519]**/
    692     const UnicodeSet sgnw_Set
    693         {{{Empty, 3776}, {Full, 20}, {Mixed, 2}, {Empty, 31018}},
    694          {0xf8000fff, 0x0000fffe}};
    695     /** Code Point Ranges for Shaw
    696     [66640, 66687]**/
    697     const UnicodeSet shaw_Set
    698         {{{Empty, 2082}, {Mixed, 1}, {Full, 1}, {Empty, 32732}},
    699          {0xffff0000}};
    700     /** Code Point Ranges for Shrd
    701     [70016, 70093], [70096, 70111]**/
    702     const UnicodeSet shrd_Set
    703         {{{Empty, 2188}, {Full, 2}, {Mixed, 1}, {Empty, 32625}},
    704          {0xffff3fff}};
    705     /** Code Point Ranges for Sidd
    706     [71040, 71093], [71096, 71133]**/
    707     const UnicodeSet sidd_Set
    708         {{{Empty, 2220}, {Full, 1}, {Mixed, 2}, {Empty, 32593}},
    709          {0xff3fffff, 0x3fffffff}};
    710     /** Code Point Ranges for Sind
    711     [70320, 70378], [70384, 70393]**/
    712     const UnicodeSet sind_Set
    713         {{{Empty, 2197}, {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Empty, 32616}},
    714          {0xffff0000, 0x03ff07ff}};
    715     /** Code Point Ranges for Sinh
    716     [3458, 3459], [3461, 3478], [3482, 3505], [3507, 3515], [3517, 3517],
    717     [3520, 3526], [3530, 3530], [3535, 3540], [3542, 3542], [3544, 3551],
    718     [3558, 3567], [3570, 3572], [70113, 70132]**/
    719     const UnicodeSet sinh_Set
    720         {{{Empty, 108}, {Mixed, 4}, {Empty, 2079}, {Mixed, 1},
    721           {Empty, 32624}},
    722          {0xfc7fffec, 0x2ffbffff, 0xff5f847f, 0x001cffc0, 0x001ffffe}};
    723     /** Code Point Ranges for Sora
    724     [69840, 69864], [69872, 69881]**/
    725     const UnicodeSet sora_Set
    726         {{{Empty, 2182}, {Mixed, 2}, {Empty, 32632}},
    727          {0xffff0000, 0x03ff01ff}};
    728     /** Code Point Ranges for Sund
    729     [7040, 7103], [7360, 7367]**/
    730     const UnicodeSet sund_Set
    731         {{{Empty, 220}, {Full, 2}, {Empty, 8}, {Mixed, 1}, {Empty, 34585}},
    732          {0x000000ff}};
    733     /** Code Point Ranges for Sylo
    734     [43008, 43051]**/
    735     const UnicodeSet sylo_Set
    736         {{{Empty, 1344}, {Full, 1}, {Mixed, 1}, {Empty, 33470}},
    737          {0x00000fff}};
    738     /** Code Point Ranges for Syrc
    739     [1792, 1805], [1807, 1866], [1869, 1871]**/
    740     const UnicodeSet syrc_Set
    741         {{{Empty, 56}, {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Empty, 34757}},
    742          {0xffffbfff, 0x0000e7ff}};
    743     /** Code Point Ranges for Tagb
    744     [5984, 5996], [5998, 6000], [6002, 6003]**/
    745     const UnicodeSet tagb_Set
    746         {{{Empty, 187}, {Mixed, 1}, {Empty, 34628}},
    747          {0x000ddfff}};
    748     /** Code Point Ranges for Takr
    749     [71296, 71351], [71360, 71369]**/
    750     const UnicodeSet takr_Set
    751         {{{Empty, 2228}, {Full, 1}, {Mixed, 2}, {Empty, 32585}},
    752          {0x00ffffff, 0x000003ff}};
    753     /** Code Point Ranges for Tale
    754     [6480, 6509], [6512, 6516]**/
    755     const UnicodeSet tale_Set
    756         {{{Empty, 202}, {Mixed, 2}, {Empty, 34612}},
    757          {0xffff0000, 0x001f3fff}};
    758     /** Code Point Ranges for Talu
    759     [6528, 6571], [6576, 6601], [6608, 6618], [6622, 6623]**/
    760     const UnicodeSet talu_Set
    761         {{{Empty, 204}, {Full, 1}, {Mixed, 2}, {Empty, 34609}},
    762          {0xffff0fff, 0xc7ff03ff}};
    763     /** Code Point Ranges for Taml
    764     [2946, 2947], [2949, 2954], [2958, 2960], [2962, 2965], [2969, 2970],
    765     [2972, 2972], [2974, 2975], [2979, 2980], [2984, 2986], [2990, 3001],
    766     [3006, 3010], [3014, 3016], [3018, 3021], [3024, 3024], [3031, 3031],
    767     [3046, 3066]**/
    768     const UnicodeSet taml_Set
    769         {{{Empty, 92}, {Mixed, 4}, {Empty, 34720}},
    770          {0xd63dc7ec, 0xc3ffc718, 0x00813dc7, 0x07ffffc0}};
    771     /** Code Point Ranges for Tang
    772     [94176, 94176], [94208, 100332], [100352, 101106]**/
    773     const UnicodeSet tang_Set
    774         {{{Empty, 2943}, {Mixed, 1}, {Full, 191}, {Mixed, 1}, {Full, 23},
    775           {Mixed, 1}, {Empty, 31656}},
    776          {0x00000001, 0x00001fff, 0x0007ffff}};
    777     /** Code Point Ranges for Tavt
    778     [43648, 43714], [43739, 43743]**/
    779     const UnicodeSet tavt_Set
    780         {{{Empty, 1364}, {Full, 2}, {Mixed, 1}, {Empty, 33449}},
    781          {0xf8000007}};
    782     /** Code Point Ranges for Telu
    783     [3072, 3075], [3077, 3084], [3086, 3088], [3090, 3112], [3114, 3129],
    784     [3133, 3140], [3142, 3144], [3146, 3149], [3157, 3158], [3160, 3162],
    785     [3168, 3171], [3174, 3183], [3192, 3199]**/
    786     const UnicodeSet telu_Set
    787         {{{Empty, 96}, {Mixed, 4}, {Empty, 34716}},
    788          {0xfffddfef, 0xe3fffdff, 0x07603ddf, 0xff00ffcf}};
    789     /** Code Point Ranges for Tfng
    790     [11568, 11623], [11631, 11632], [11647, 11647]**/
    791     const UnicodeSet tfng_Set
    792         {{{Empty, 361}, {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Empty, 34452}},
    793          {0xffff0000, 0x800180ff}};
    794     /** Code Point Ranges for Tglg
    795     [5888, 5900], [5902, 5908]**/
    796     const UnicodeSet tglg_Set
    797         {{{Empty, 184}, {Mixed, 1}, {Empty, 34631}},
    798          {0x001fdfff}};
    799     /** Code Point Ranges for Thaa
    800     [1920, 1969]**/
    801     const UnicodeSet thaa_Set
    802         {{{Empty, 60}, {Full, 1}, {Mixed, 1}, {Empty, 34754}},
    803          {0x0003ffff}};
    804     /** Code Point Ranges for Thai
    805     [3585, 3642], [3648, 3675]**/
    806     const UnicodeSet thai_Set
    807         {{{Empty, 112}, {Mixed, 3}, {Empty, 34701}},
    808          {0xfffffffe, 0x07ffffff, 0x0fffffff}};
    809     /** Code Point Ranges for Tibt
    810     [3840, 3911], [3913, 3948], [3953, 3991], [3993, 4028], [4030, 4044],
    811     [4046, 4052], [4057, 4058]**/
    812     const UnicodeSet tibt_Set
    813         {{{Empty, 120}, {Full, 2}, {Mixed, 5}, {Empty, 34689}},
    814          {0xfffffeff, 0xfffe1fff, 0xfeffffff, 0xdfffffff, 0x061fdfff}};
    815     /** Code Point Ranges for Tirh
    816     [70784, 70855], [70864, 70873]**/
    817     const UnicodeSet tirh_Set
    818         {{{Empty, 2212}, {Full, 2}, {Mixed, 1}, {Empty, 32601}},
    819          {0x03ff00ff}};
    820     /** Code Point Ranges for Ugar
    821     [66432, 66461], [66463, 66463]**/
    822     const UnicodeSet ugar_Set
    823         {{{Empty, 2076}, {Mixed, 1}, {Empty, 32739}},
    824          {0xbfffffff}};
    825     /** Code Point Ranges for Vaii
    826     [42240, 42539]**/
    827     const UnicodeSet vaii_Set
    828         {{{Empty, 1320}, {Full, 9}, {Mixed, 1}, {Empty, 33486}},
    829          {0x00000fff}};
    830     /** Code Point Ranges for Wara
    831     [71840, 71922], [71935, 71935]**/
    832     const UnicodeSet wara_Set
    833         {{{Empty, 2245}, {Full, 2}, {Mixed, 1}, {Empty, 32568}},
    834          {0x8007ffff}};
    835     /** Code Point Ranges for Xpeo
    836     [66464, 66499], [66504, 66517]**/
    837     const UnicodeSet xpeo_Set
    838         {{{Empty, 2077}, {Full, 1}, {Mixed, 1}, {Empty, 32737}},
    839          {0x003fff0f}};
    840     /** Code Point Ranges for Xsux
    841     [73728, 74649], [74752, 74862], [74864, 74868], [74880, 75075]**/
    842     const UnicodeSet xsux_Set
    843         {{{Empty, 2304}, {Full, 28}, {Mixed, 1}, {Empty, 3}, {Full, 3},
    844           {Mixed, 1}, {Full, 6}, {Mixed, 1}, {Empty, 32469}},
    845          {0x03ffffff, 0x001f7fff, 0x0000000f}};
    846     /** Code Point Ranges for Yiii
    847     [40960, 42124], [42128, 42182]**/
    848     const UnicodeSet yiii_Set
    849         {{{Empty, 1280}, {Full, 36}, {Mixed, 1}, {Full, 1}, {Mixed, 1},
    850           {Empty, 33497}},
    851          {0xffff1fff, 0x0000007f}};
    852     /** Code Point Ranges for Zinh
    853     [768, 879], [1157, 1158], [1611, 1621], [1648, 1648], [2385, 2386],
    854     [6832, 6846], [7376, 7378], [7380, 7392], [7394, 7400], [7405, 7405],
    855     [7412, 7412], [7416, 7417], [7616, 7669], [7675, 7679], [8204, 8205],
    856     [8400, 8432], [12330, 12333], [12441, 12442], [65024, 65039],
    857     [65056, 65069], [66045, 66045], [66272, 66272], [119143, 119145],
    858     [119163, 119170], [119173, 119179], [119210, 119213], [917760, 917999]**/
    859     const UnicodeSet zinh_Set
    860         {{{Empty, 24}, {Full, 3}, {Mixed, 1}, {Empty, 8}, {Mixed, 1},
    861           {Empty, 13}, {Mixed, 2}, {Empty, 22}, {Mixed, 1}, {Empty, 138},
    862           {Mixed, 1}, {Empty, 16}, {Mixed, 2}, {Empty, 6}, {Full, 1},
    863           {Mixed, 1}, {Empty, 16}, {Mixed, 1}, {Empty, 5}, {Mixed, 2},
    864           {Empty, 121}, {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Empty, 1643},
    865           {Mixed, 2}, {Empty, 29}, {Mixed, 1}, {Empty, 7}, {Mixed, 1},
    866           {Empty, 1651}, {Mixed, 3}, {Empty, 24954}, {Full, 7}, {Mixed, 1},
    867           {Empty, 6128}},
    868          {0x0000ffff, 0x00000060, 0x003ff800, 0x00010000, 0x00060000,
    869           0x7fff0000, 0xfff70000, 0x031021fd, 0xf83fffff, 0x00003000,
    870           0xffff0000, 0x0001ffff, 0x00003c00, 0x06000000, 0x0000ffff,
    871           0x00003fff, 0x20000000, 0x00000001, 0xf8000380, 0x00000fe7,
    872           0x00003c00, 0x0000ffff}};
    873     /** Code Point Ranges for Zyyy
    874     [0, 64], [91, 96], [123, 169], [171, 185], [187, 191], [215, 215],
    875     [247, 247], [697, 735], [741, 745], [748, 767], [884, 884], [894, 894],
    876     [901, 901], [903, 903], [1417, 1417], [1541, 1541], [1548, 1548],
    877     [1563, 1564], [1567, 1567], [1600, 1600], [1757, 1757], [2274, 2274],
    878     [2404, 2405], [3647, 3647], [4053, 4056], [4347, 4347], [5867, 5869],
    879     [5941, 5942], [6146, 6147], [6149, 6149], [7379, 7379], [7393, 7393],
    880     [7401, 7404], [7406, 7411], [7413, 7414], [8192, 8203], [8206, 8292],
    881     [8294, 8304], [8308, 8318], [8320, 8334], [8352, 8382], [8448, 8485],
    882     [8487, 8489], [8492, 8497], [8499, 8525], [8527, 8543], [8585, 8587],
    883     [8592, 9214], [9216, 9254], [9280, 9290], [9312, 10239], [10496, 11123],
    884     [11126, 11157], [11160, 11193], [11197, 11208], [11210, 11217],
    885     [11244, 11247], [11776, 11844], [12272, 12283], [12288, 12292],
    886     [12294, 12294], [12296, 12320], [12336, 12343], [12348, 12351],
    887     [12443, 12444], [12448, 12448], [12539, 12540], [12688, 12703],
    888     [12736, 12771], [12832, 12895], [12927, 13007], [13144, 13311],
    889     [19904, 19967], [42752, 42785], [42888, 42890], [43056, 43065],
    890     [43310, 43310], [43471, 43471], [43867, 43867], [64830, 64831],
    891     [65040, 65049], [65072, 65106], [65108, 65126], [65128, 65131],
    892     [65279, 65279], [65281, 65312], [65339, 65344], [65371, 65381],
    893     [65392, 65392], [65438, 65439], [65504, 65510], [65512, 65518],
    894     [65529, 65533], [65792, 65794], [65799, 65843], [65847, 65855],
    895     [65936, 65947], [66000, 66044], [66273, 66299], [113824, 113827],
    896     [118784, 119029], [119040, 119078], [119081, 119142], [119146, 119162],
    897     [119171, 119172], [119180, 119209], [119214, 119272], [119552, 119638],
    898     [119648, 119665], [119808, 119892], [119894, 119964], [119966, 119967],
    899     [119970, 119970], [119973, 119974], [119977, 119980], [119982, 119993],
    900     [119995, 119995], [119997, 120003], [120005, 120069], [120071, 120074],
    901     [120077, 120084], [120086, 120092], [120094, 120121], [120123, 120126],
    902     [120128, 120132], [120134, 120134], [120138, 120144], [120146, 120485],
    903     [120488, 120779], [120782, 120831], [126976, 127019], [127024, 127123],
    904     [127136, 127150], [127153, 127167], [127169, 127183], [127185, 127221],
    905     [127232, 127244], [127248, 127278], [127280, 127339], [127344, 127404],
    906     [127462, 127487], [127489, 127490], [127504, 127547], [127552, 127560],
    907     [127568, 127569], [127744, 128722], [128736, 128748], [128752, 128758],
    908     [128768, 128883], [128896, 128980], [129024, 129035], [129040, 129095],
    909     [129104, 129113], [129120, 129159], [129168, 129197], [129296, 129310],
    910     [129312, 129319], [129328, 129328], [129331, 129342], [129344, 129355],
    911     [129360, 129374], [129408, 129425], [129472, 129472], [917505, 917505],
    912     [917536, 917631]**/
    913     const UnicodeSet zyyy_Set
    914         {{{Full, 2}, {Mixed, 2}, {Full, 1}, {Mixed, 3}, {Empty, 13},
    915           {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Empty, 3}, {Mixed, 2},
    916           {Empty, 15}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 1},
    917           {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 16}, {Mixed, 1},
    918           {Empty, 3}, {Mixed, 1}, {Empty, 37}, {Mixed, 1}, {Empty, 12},
    919           {Mixed, 1}, {Empty, 8}, {Mixed, 1}, {Empty, 47}, {Mixed, 1},
    920           {Empty, 1}, {Mixed, 1}, {Empty, 6}, {Mixed, 1}, {Empty, 37},
    921           {Mixed, 2}, {Empty, 24}, {Mixed, 1}, {Full, 2}, {Mixed, 3},
    922           {Empty, 2}, {Full, 1}, {Mixed, 2}, {Empty, 1}, {Mixed, 1},
    923           {Full, 18}, {Mixed, 1}, {Full, 1}, {Mixed, 2}, {Full, 29},
    924           {Empty, 8}, {Full, 19}, {Mixed, 5}, {Empty, 16}, {Full, 2},
    925           {Mixed, 1}, {Empty, 12}, {Mixed, 3}, {Empty, 2}, {Mixed, 2},
    926           {Empty, 1}, {Mixed, 1}, {Empty, 4}, {Mixed, 1}, {Empty, 1},
    927           {Full, 1}, {Mixed, 1}, {Empty, 1}, {Full, 2}, {Mixed, 1},
    928           {Full, 2}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Full, 5},
    929           {Empty, 206}, {Full, 2}, {Empty, 712}, {Full, 1}, {Mixed, 1},
    930           {Empty, 2}, {Mixed, 1}, {Empty, 4}, {Mixed, 1}, {Empty, 7},
    931           {Mixed, 1}, {Empty, 4}, {Mixed, 1}, {Empty, 11}, {Mixed, 1},
    932           {Empty, 654}, {Mixed, 1}, {Empty, 6}, {Mixed, 4}, {Empty, 3},
    933           {Mixed, 6}, {Empty, 2}, {Mixed, 1}, {Empty, 8}, {Mixed, 2},
    934           {Empty, 2}, {Mixed, 1}, {Empty, 1}, {Mixed, 2}, {Empty, 7},
    935           {Mixed, 1}, {Empty, 1485}, {Mixed, 1}, {Empty, 154}, {Full, 7},
    936           {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Full, 1}, {Mixed, 3},
    937           {Full, 1}, {Mixed, 1}, {Empty, 8}, {Full, 2}, {Mixed, 2},
    938           {Empty, 4}, {Full, 2}, {Mixed, 1}, {Full, 1}, {Mixed, 3},
    939           {Full, 1}, {Mixed, 3}, {Full, 10}, {Mixed, 1}, {Full, 8},
    940           {Mixed, 1}, {Full, 1}, {Empty, 192}, {Full, 1}, {Mixed, 1},
    941           {Full, 2}, {Mixed, 6}, {Full, 1}, {Mixed, 1}, {Full, 1},
    942           {Mixed, 1}, {Empty, 1}, {Mixed, 4}, {Empty, 5}, {Full, 30},
    943           {Mixed, 2}, {Full, 3}, {Mixed, 1}, {Full, 2}, {Mixed, 1},
    944           {Empty, 1}, {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Full, 1},
    945           {Mixed, 2}, {Empty, 2}, {Mixed, 3}, {Empty, 1}, {Mixed, 1},
    946           {Empty, 1}, {Mixed, 1}, {Empty, 24625}, {Mixed, 1}, {Full, 3},
    947           {Empty, 6140}},
    948          {0xf8000001, 0xf8000001, 0xfbfffbff, 0x00800000, 0x00800000,
    949           0xfe000000, 0xfffff3e0, 0x40100000, 0x000000a0, 0x00000200,
    950           0x98001020, 0x00000001, 0x20000000, 0x00000004, 0x00000030,
    951           0x80000000, 0x01e00000, 0x08000000, 0x00003800, 0x00600000,
    952           0x0000002c, 0x00080000, 0x006fde02, 0xffffcfff, 0x7ff1ffdf,
    953           0x00007fff, 0x7fffffff, 0xfffbf3bf, 0xffffbfff, 0xffff0e00,
    954           0x7fffffff, 0x0000007f, 0x000007ff, 0xffcfffff, 0xff3fffff,
    955           0xe3ffffff, 0x0003fdff, 0x0000f000, 0x0000001f, 0x0fff0000,
    956           0xffffff5f, 0xf0ff0001, 0x18000000, 0x00000001, 0x18000000,
    957           0xffff0000, 0x0000000f, 0x80000000, 0x0000ffff, 0xff000000,
    958           0x00000003, 0x00000700, 0x03ff0000, 0x00004000, 0x00008000,
    959           0x08000000, 0xc0000000, 0x03ff0000, 0xffff0000, 0xfff7ffff,
    960           0x00000f7f, 0x80000000, 0xfffffffe, 0xf8000001, 0xf8000001,
    961           0x0001003f, 0xc0000000, 0x3e007f7f, 0xffffff87, 0xff8fffff,
    962           0x0fff0000, 0xffff0000, 0x1fffffff, 0x0ffffffe, 0x0000000f,
    963           0x003fffff, 0xfffffe7f, 0x07fffc7f, 0xfffff018, 0xffffc3ff,
    964           0x000001ff, 0x007fffff, 0x0003ffff, 0xffdfffff, 0xdfffffff,
    965           0xebffde64, 0xffffffef, 0xdfdfe7bf, 0x7bffffff, 0xfffdfc5f,
    966           0xffffff3f, 0xffffcfff, 0xffff0fff, 0x000fffff, 0xfffe7fff,
    967           0xfffefffe, 0x003fffff, 0xffff1fff, 0xffff7fff, 0xffff0fff,
    968           0x00001fff, 0xffffffc0, 0xffff0006, 0x0fffffff, 0x000301ff,
    969           0x0007ffff, 0x007f1fff, 0x000fffff, 0x001fffff, 0xffff0fff,
    970           0x03ff00ff, 0xffff00ff, 0x00003fff, 0x7fff0000, 0x7ff900ff,
    971           0x7fff0fff, 0x0003ffff, 0x00000001, 0x00000002}};
    97217    /** Code Point Ranges for Zzzz
    97318    [888, 889], [896, 899], [907, 907], [909, 909], [930, 930],
     
    1267312          0xfffc0000, 0xfffffffe, 0xff800000, 0xffe00000, 0xc0000000,
    1268313          0xfffffffc, 0xc0000000, 0xfffffffd, 0xffff0000}};
     314    /** Code Point Ranges for Zyyy
     315    [0, 64], [91, 96], [123, 169], [171, 185], [187, 191], [215, 215],
     316    [247, 247], [697, 735], [741, 745], [748, 767], [884, 884], [894, 894],
     317    [901, 901], [903, 903], [1417, 1417], [1541, 1541], [1548, 1548],
     318    [1563, 1564], [1567, 1567], [1600, 1600], [1757, 1757], [2274, 2274],
     319    [2404, 2405], [3647, 3647], [4053, 4056], [4347, 4347], [5867, 5869],
     320    [5941, 5942], [6146, 6147], [6149, 6149], [7379, 7379], [7393, 7393],
     321    [7401, 7404], [7406, 7411], [7413, 7414], [8192, 8203], [8206, 8292],
     322    [8294, 8304], [8308, 8318], [8320, 8334], [8352, 8382], [8448, 8485],
     323    [8487, 8489], [8492, 8497], [8499, 8525], [8527, 8543], [8585, 8587],
     324    [8592, 9214], [9216, 9254], [9280, 9290], [9312, 10239], [10496, 11123],
     325    [11126, 11157], [11160, 11193], [11197, 11208], [11210, 11217],
     326    [11244, 11247], [11776, 11844], [12272, 12283], [12288, 12292],
     327    [12294, 12294], [12296, 12320], [12336, 12343], [12348, 12351],
     328    [12443, 12444], [12448, 12448], [12539, 12540], [12688, 12703],
     329    [12736, 12771], [12832, 12895], [12927, 13007], [13144, 13311],
     330    [19904, 19967], [42752, 42785], [42888, 42890], [43056, 43065],
     331    [43310, 43310], [43471, 43471], [43867, 43867], [64830, 64831],
     332    [65040, 65049], [65072, 65106], [65108, 65126], [65128, 65131],
     333    [65279, 65279], [65281, 65312], [65339, 65344], [65371, 65381],
     334    [65392, 65392], [65438, 65439], [65504, 65510], [65512, 65518],
     335    [65529, 65533], [65792, 65794], [65799, 65843], [65847, 65855],
     336    [65936, 65947], [66000, 66044], [66273, 66299], [113824, 113827],
     337    [118784, 119029], [119040, 119078], [119081, 119142], [119146, 119162],
     338    [119171, 119172], [119180, 119209], [119214, 119272], [119552, 119638],
     339    [119648, 119665], [119808, 119892], [119894, 119964], [119966, 119967],
     340    [119970, 119970], [119973, 119974], [119977, 119980], [119982, 119993],
     341    [119995, 119995], [119997, 120003], [120005, 120069], [120071, 120074],
     342    [120077, 120084], [120086, 120092], [120094, 120121], [120123, 120126],
     343    [120128, 120132], [120134, 120134], [120138, 120144], [120146, 120485],
     344    [120488, 120779], [120782, 120831], [126976, 127019], [127024, 127123],
     345    [127136, 127150], [127153, 127167], [127169, 127183], [127185, 127221],
     346    [127232, 127244], [127248, 127278], [127280, 127339], [127344, 127404],
     347    [127462, 127487], [127489, 127490], [127504, 127547], [127552, 127560],
     348    [127568, 127569], [127744, 128722], [128736, 128748], [128752, 128758],
     349    [128768, 128883], [128896, 128980], [129024, 129035], [129040, 129095],
     350    [129104, 129113], [129120, 129159], [129168, 129197], [129296, 129310],
     351    [129312, 129319], [129328, 129328], [129331, 129342], [129344, 129355],
     352    [129360, 129374], [129408, 129425], [129472, 129472], [917505, 917505],
     353    [917536, 917631]**/
     354    const UnicodeSet zyyy_Set
     355        {{{Full, 2}, {Mixed, 2}, {Full, 1}, {Mixed, 3}, {Empty, 13},
     356          {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Empty, 3}, {Mixed, 2},
     357          {Empty, 15}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 1},
     358          {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 16}, {Mixed, 1},
     359          {Empty, 3}, {Mixed, 1}, {Empty, 37}, {Mixed, 1}, {Empty, 12},
     360          {Mixed, 1}, {Empty, 8}, {Mixed, 1}, {Empty, 47}, {Mixed, 1},
     361          {Empty, 1}, {Mixed, 1}, {Empty, 6}, {Mixed, 1}, {Empty, 37},
     362          {Mixed, 2}, {Empty, 24}, {Mixed, 1}, {Full, 2}, {Mixed, 3},
     363          {Empty, 2}, {Full, 1}, {Mixed, 2}, {Empty, 1}, {Mixed, 1},
     364          {Full, 18}, {Mixed, 1}, {Full, 1}, {Mixed, 2}, {Full, 29},
     365          {Empty, 8}, {Full, 19}, {Mixed, 5}, {Empty, 16}, {Full, 2},
     366          {Mixed, 1}, {Empty, 12}, {Mixed, 3}, {Empty, 2}, {Mixed, 2},
     367          {Empty, 1}, {Mixed, 1}, {Empty, 4}, {Mixed, 1}, {Empty, 1},
     368          {Full, 1}, {Mixed, 1}, {Empty, 1}, {Full, 2}, {Mixed, 1},
     369          {Full, 2}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Full, 5},
     370          {Empty, 206}, {Full, 2}, {Empty, 712}, {Full, 1}, {Mixed, 1},
     371          {Empty, 2}, {Mixed, 1}, {Empty, 4}, {Mixed, 1}, {Empty, 7},
     372          {Mixed, 1}, {Empty, 4}, {Mixed, 1}, {Empty, 11}, {Mixed, 1},
     373          {Empty, 654}, {Mixed, 1}, {Empty, 6}, {Mixed, 4}, {Empty, 3},
     374          {Mixed, 6}, {Empty, 2}, {Mixed, 1}, {Empty, 8}, {Mixed, 2},
     375          {Empty, 2}, {Mixed, 1}, {Empty, 1}, {Mixed, 2}, {Empty, 7},
     376          {Mixed, 1}, {Empty, 1485}, {Mixed, 1}, {Empty, 154}, {Full, 7},
     377          {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Full, 1}, {Mixed, 3},
     378          {Full, 1}, {Mixed, 1}, {Empty, 8}, {Full, 2}, {Mixed, 2},
     379          {Empty, 4}, {Full, 2}, {Mixed, 1}, {Full, 1}, {Mixed, 3},
     380          {Full, 1}, {Mixed, 3}, {Full, 10}, {Mixed, 1}, {Full, 8},
     381          {Mixed, 1}, {Full, 1}, {Empty, 192}, {Full, 1}, {Mixed, 1},
     382          {Full, 2}, {Mixed, 6}, {Full, 1}, {Mixed, 1}, {Full, 1},
     383          {Mixed, 1}, {Empty, 1}, {Mixed, 4}, {Empty, 5}, {Full, 30},
     384          {Mixed, 2}, {Full, 3}, {Mixed, 1}, {Full, 2}, {Mixed, 1},
     385          {Empty, 1}, {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Full, 1},
     386          {Mixed, 2}, {Empty, 2}, {Mixed, 3}, {Empty, 1}, {Mixed, 1},
     387          {Empty, 1}, {Mixed, 1}, {Empty, 24625}, {Mixed, 1}, {Full, 3},
     388          {Empty, 6140}},
     389         {0xf8000001, 0xf8000001, 0xfbfffbff, 0x00800000, 0x00800000,
     390          0xfe000000, 0xfffff3e0, 0x40100000, 0x000000a0, 0x00000200,
     391          0x98001020, 0x00000001, 0x20000000, 0x00000004, 0x00000030,
     392          0x80000000, 0x01e00000, 0x08000000, 0x00003800, 0x00600000,
     393          0x0000002c, 0x00080000, 0x006fde02, 0xffffcfff, 0x7ff1ffdf,
     394          0x00007fff, 0x7fffffff, 0xfffbf3bf, 0xffffbfff, 0xffff0e00,
     395          0x7fffffff, 0x0000007f, 0x000007ff, 0xffcfffff, 0xff3fffff,
     396          0xe3ffffff, 0x0003fdff, 0x0000f000, 0x0000001f, 0x0fff0000,
     397          0xffffff5f, 0xf0ff0001, 0x18000000, 0x00000001, 0x18000000,
     398          0xffff0000, 0x0000000f, 0x80000000, 0x0000ffff, 0xff000000,
     399          0x00000003, 0x00000700, 0x03ff0000, 0x00004000, 0x00008000,
     400          0x08000000, 0xc0000000, 0x03ff0000, 0xffff0000, 0xfff7ffff,
     401          0x00000f7f, 0x80000000, 0xfffffffe, 0xf8000001, 0xf8000001,
     402          0x0001003f, 0xc0000000, 0x3e007f7f, 0xffffff87, 0xff8fffff,
     403          0x0fff0000, 0xffff0000, 0x1fffffff, 0x0ffffffe, 0x0000000f,
     404          0x003fffff, 0xfffffe7f, 0x07fffc7f, 0xfffff018, 0xffffc3ff,
     405          0x000001ff, 0x007fffff, 0x0003ffff, 0xffdfffff, 0xdfffffff,
     406          0xebffde64, 0xffffffef, 0xdfdfe7bf, 0x7bffffff, 0xfffdfc5f,
     407          0xffffff3f, 0xffffcfff, 0xffff0fff, 0x000fffff, 0xfffe7fff,
     408          0xfffefffe, 0x003fffff, 0xffff1fff, 0xffff7fff, 0xffff0fff,
     409          0x00001fff, 0xffffffc0, 0xffff0006, 0x0fffffff, 0x000301ff,
     410          0x0007ffff, 0x007f1fff, 0x000fffff, 0x001fffff, 0xffff0fff,
     411          0x03ff00ff, 0xffff00ff, 0x00003fff, 0x7fff0000, 0x7ff900ff,
     412          0x7fff0fff, 0x0003ffff, 0x00000001, 0x00000002}};
     413    /** Code Point Ranges for Latn
     414    [65, 90], [97, 122], [170, 170], [186, 186], [192, 214], [216, 246],
     415    [248, 696], [736, 740], [7424, 7461], [7468, 7516], [7522, 7525],
     416    [7531, 7543], [7545, 7614], [7680, 7935], [8305, 8305], [8319, 8319],
     417    [8336, 8348], [8490, 8491], [8498, 8498], [8526, 8526], [8544, 8584],
     418    [11360, 11391], [42786, 42887], [42891, 42926], [42928, 42935],
     419    [42999, 43007], [43824, 43866], [43868, 43876], [64256, 64262],
     420    [65313, 65338], [65345, 65370]**/
     421    const UnicodeSet latn_Set
     422        {{{Empty, 2}, {Mixed, 2}, {Empty, 1}, {Mixed, 3}, {Full, 13},
     423          {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 208}, {Full, 1},
     424          {Mixed, 3}, {Full, 1}, {Mixed, 1}, {Empty, 2}, {Full, 8},
     425          {Empty, 11}, {Mixed, 2}, {Empty, 4}, {Mixed, 2}, {Full, 1},
     426          {Mixed, 1}, {Empty, 86}, {Full, 1}, {Empty, 981}, {Mixed, 1},
     427          {Full, 2}, {Mixed, 2}, {Empty, 1}, {Mixed, 1}, {Empty, 25},
     428          {Mixed, 3}, {Empty, 636}, {Mixed, 1}, {Empty, 32}, {Mixed, 2},
     429          {Empty, 32773}},
     430         {0x07fffffe, 0x07fffffe, 0x04000400, 0xff7fffff, 0xff7fffff,
     431          0x01ffffff, 0x0000001f, 0xfffff03f, 0x1fffffff, 0xfefff83c,
     432          0x7fffffff, 0x80020000, 0x1fff0000, 0x00040c00, 0x00004000,
     433          0x000001ff, 0xfffffffc, 0xfffff8ff, 0x00ff7fff, 0xff800000,
     434          0xffff0000, 0xf7ffffff, 0x0000001f, 0x0000007f, 0x07fffffe,
     435          0x07fffffe}};
     436    /** Code Point Ranges for Grek
     437    [880, 883], [885, 887], [890, 893], [895, 895], [900, 900], [902, 902],
     438    [904, 906], [908, 908], [910, 929], [931, 993], [1008, 1023],
     439    [7462, 7466], [7517, 7521], [7526, 7530], [7615, 7615], [7936, 7957],
     440    [7960, 7965], [7968, 8005], [8008, 8013], [8016, 8023], [8025, 8025],
     441    [8027, 8027], [8029, 8029], [8031, 8061], [8064, 8116], [8118, 8132],
     442    [8134, 8147], [8150, 8155], [8157, 8175], [8178, 8180], [8182, 8190],
     443    [8486, 8486], [43877, 43877], [65856, 65934], [65952, 65952],
     444    [119296, 119365]**/
     445    const UnicodeSet grek_Set
     446        {{{Empty, 27}, {Mixed, 3}, {Full, 1}, {Mixed, 1}, {Empty, 201},
     447          {Mixed, 3}, {Empty, 1}, {Mixed, 1}, {Empty, 10}, {Mixed, 1},
     448          {Full, 1}, {Mixed, 2}, {Full, 1}, {Mixed, 3}, {Empty, 9},
     449          {Mixed, 1}, {Empty, 1105}, {Mixed, 1}, {Empty, 686}, {Full, 2},
     450          {Mixed, 2}, {Empty, 1666}, {Full, 2}, {Mixed, 1}, {Empty, 31085}},
     451         {0xbcef0000, 0xffffd750, 0xfffffffb, 0xffff0003, 0x000007c0,
     452          0xe0000000, 0x000007c3, 0x80000000, 0x3f3fffff, 0xaaff3f3f,
     453          0x3fffffff, 0xffdfffff, 0xefcfffdf, 0x7fdcffff, 0x00000040,
     454          0x00000020, 0x00007fff, 0x00000001, 0x0000003f}};
     455    /** Code Point Ranges for Cyrl
     456    [1024, 1156], [1159, 1327], [7296, 7304], [7467, 7467], [7544, 7544],
     457    [11744, 11775], [42560, 42655], [65070, 65071]**/
     458    const UnicodeSet cyrl_Set
     459        {{{Empty, 32}, {Full, 4}, {Mixed, 1}, {Full, 4}, {Mixed, 1},
     460          {Empty, 186}, {Mixed, 1}, {Empty, 4}, {Mixed, 1}, {Empty, 1},
     461          {Mixed, 1}, {Empty, 131}, {Full, 1}, {Empty, 962}, {Full, 3},
     462          {Empty, 700}, {Mixed, 1}, {Empty, 32782}},
     463         {0xffffff9f, 0x0000ffff, 0x000001ff, 0x00000800, 0x01000000,
     464          0x0000c000}};
     465    /** Code Point Ranges for Armn
     466    [1329, 1366], [1369, 1375], [1377, 1415], [1418, 1418], [1421, 1423],
     467    [64275, 64279]**/
     468    const UnicodeSet armn_Set
     469        {{{Empty, 41}, {Mixed, 4}, {Empty, 1963}, {Mixed, 1},
     470          {Empty, 32807}},
     471         {0xfffe0000, 0xfe7fffff, 0xfffffffe, 0x0000e4ff, 0x00f80000}};
     472    /** Code Point Ranges for Hebr
     473    [1425, 1479], [1488, 1514], [1520, 1524], [64285, 64310],
     474    [64312, 64316], [64318, 64318], [64320, 64321], [64323, 64324],
     475    [64326, 64335]**/
     476    const UnicodeSet hebr_Set
     477        {{{Empty, 44}, {Mixed, 1}, {Full, 1}, {Mixed, 2}, {Empty, 1960},
     478          {Mixed, 3}, {Empty, 32805}},
     479         {0xfffe0000, 0xffff00ff, 0x001f07ff, 0xe0000000, 0x5f7fffff,
     480          0x0000ffdb}};
     481    /** Code Point Ranges for Arab
     482    [1536, 1540], [1542, 1547], [1549, 1562], [1566, 1566], [1568, 1599],
     483    [1601, 1610], [1622, 1647], [1649, 1756], [1758, 1791], [1872, 1919],
     484    [2208, 2228], [2230, 2237], [2260, 2273], [2275, 2303], [64336, 64449],
     485    [64467, 64829], [64848, 64911], [64914, 64967], [65008, 65021],
     486    [65136, 65140], [65142, 65276], [69216, 69246], [126464, 126467],
     487    [126469, 126495], [126497, 126498], [126500, 126500], [126503, 126503],
     488    [126505, 126514], [126516, 126519], [126521, 126521], [126523, 126523],
     489    [126530, 126530], [126535, 126535], [126537, 126537], [126539, 126539],
     490    [126541, 126543], [126545, 126546], [126548, 126548], [126551, 126551],
     491    [126553, 126553], [126555, 126555], [126557, 126557], [126559, 126559],
     492    [126561, 126562], [126564, 126564], [126567, 126570], [126572, 126578],
     493    [126580, 126583], [126585, 126588], [126590, 126590], [126592, 126601],
     494    [126603, 126619], [126625, 126627], [126629, 126633], [126635, 126651],
     495    [126704, 126705]**/
     496    const UnicodeSet arab_Set
     497        {{{Empty, 48}, {Mixed, 1}, {Full, 1}, {Mixed, 2}, {Full, 2},
     498          {Mixed, 1}, {Full, 1}, {Empty, 2}, {Mixed, 1}, {Full, 1},
     499          {Empty, 9}, {Mixed, 3}, {Empty, 1938}, {Mixed, 1}, {Full, 3},
     500          {Mixed, 1}, {Full, 10}, {Mixed, 2}, {Full, 1}, {Mixed, 1},
     501          {Full, 1}, {Mixed, 2}, {Empty, 3}, {Mixed, 1}, {Full, 3},
     502          {Mixed, 1}, {Empty, 123}, {Mixed, 1}, {Empty, 1788}, {Mixed, 6},
     503          {Empty, 1}, {Mixed, 1}, {Empty, 30856}},
     504         {0x47ffefdf, 0xffc007fe, 0xfffeffff, 0xdfffffff, 0xffff0000,
     505          0x3fdfffff, 0xfff00000, 0xfffffffb, 0xffff0000, 0xfff80003,
     506          0x3fffffff, 0xffff0000, 0xfffcffff, 0x000000ff, 0x3fff0000,
     507          0xffdf0000, 0x1fffffff, 0x7fffffff, 0xffffffef, 0x0af7fe96,
     508          0xaa96ea84, 0x5ef7f796, 0x0ffffbff, 0x0ffffbee, 0x00030000}};
     509    /** Code Point Ranges for Syrc
     510    [1792, 1805], [1807, 1866], [1869, 1871]**/
     511    const UnicodeSet syrc_Set
     512        {{{Empty, 56}, {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Empty, 34757}},
     513         {0xffffbfff, 0x0000e7ff}};
     514    /** Code Point Ranges for Thaa
     515    [1920, 1969]**/
     516    const UnicodeSet thaa_Set
     517        {{{Empty, 60}, {Full, 1}, {Mixed, 1}, {Empty, 34754}},
     518         {0x0003ffff}};
     519    /** Code Point Ranges for Deva
     520    [2304, 2384], [2387, 2403], [2406, 2431], [43232, 43261]**/
     521    const UnicodeSet deva_Set
     522        {{{Empty, 72}, {Full, 2}, {Mixed, 2}, {Empty, 1275}, {Mixed, 1},
     523          {Empty, 33464}},
     524         {0xfff9ffff, 0xffffffcf, 0x3fffffff}};
     525    /** Code Point Ranges for Beng
     526    [2432, 2435], [2437, 2444], [2447, 2448], [2451, 2472], [2474, 2480],
     527    [2482, 2482], [2486, 2489], [2492, 2500], [2503, 2504], [2507, 2510],
     528    [2519, 2519], [2524, 2525], [2527, 2531], [2534, 2555]**/
     529    const UnicodeSet beng_Set
     530        {{{Empty, 76}, {Mixed, 4}, {Empty, 34736}},
     531         {0xfff99fef, 0xf3c5fdff, 0xb080799f, 0x0fffffcf}};
     532    /** Code Point Ranges for Guru
     533    [2561, 2563], [2565, 2570], [2575, 2576], [2579, 2600], [2602, 2608],
     534    [2610, 2611], [2613, 2614], [2616, 2617], [2620, 2620], [2622, 2626],
     535    [2631, 2632], [2635, 2637], [2641, 2641], [2649, 2652], [2654, 2654],
     536    [2662, 2677]**/
     537    const UnicodeSet guru_Set
     538        {{{Empty, 80}, {Mixed, 4}, {Empty, 34732}},
     539         {0xfff987ee, 0xd36dfdff, 0x5e023987, 0x003fffc0}};
     540    /** Code Point Ranges for Gujr
     541    [2689, 2691], [2693, 2701], [2703, 2705], [2707, 2728], [2730, 2736],
     542    [2738, 2739], [2741, 2745], [2748, 2757], [2759, 2761], [2763, 2765],
     543    [2768, 2768], [2784, 2787], [2790, 2801], [2809, 2809]**/
     544    const UnicodeSet gujr_Set
     545        {{{Empty, 84}, {Mixed, 4}, {Empty, 34728}},
     546         {0xfffbbfee, 0xf3edfdff, 0x00013bbf, 0x0203ffcf}};
     547    /** Code Point Ranges for Orya
     548    [2817, 2819], [2821, 2828], [2831, 2832], [2835, 2856], [2858, 2864],
     549    [2866, 2867], [2869, 2873], [2876, 2884], [2887, 2888], [2891, 2893],
     550    [2902, 2903], [2908, 2909], [2911, 2915], [2918, 2935]**/
     551    const UnicodeSet orya_Set
     552        {{{Empty, 88}, {Mixed, 4}, {Empty, 34724}},
     553         {0xfff99fee, 0xf3edfdff, 0xb0c0399f, 0x00ffffcf}};
     554    /** Code Point Ranges for Taml
     555    [2946, 2947], [2949, 2954], [2958, 2960], [2962, 2965], [2969, 2970],
     556    [2972, 2972], [2974, 2975], [2979, 2980], [2984, 2986], [2990, 3001],
     557    [3006, 3010], [3014, 3016], [3018, 3021], [3024, 3024], [3031, 3031],
     558    [3046, 3066]**/
     559    const UnicodeSet taml_Set
     560        {{{Empty, 92}, {Mixed, 4}, {Empty, 34720}},
     561         {0xd63dc7ec, 0xc3ffc718, 0x00813dc7, 0x07ffffc0}};
     562    /** Code Point Ranges for Telu
     563    [3072, 3075], [3077, 3084], [3086, 3088], [3090, 3112], [3114, 3129],
     564    [3133, 3140], [3142, 3144], [3146, 3149], [3157, 3158], [3160, 3162],
     565    [3168, 3171], [3174, 3183], [3192, 3199]**/
     566    const UnicodeSet telu_Set
     567        {{{Empty, 96}, {Mixed, 4}, {Empty, 34716}},
     568         {0xfffddfef, 0xe3fffdff, 0x07603ddf, 0xff00ffcf}};
     569    /** Code Point Ranges for Knda
     570    [3200, 3203], [3205, 3212], [3214, 3216], [3218, 3240], [3242, 3251],
     571    [3253, 3257], [3260, 3268], [3270, 3272], [3274, 3277], [3285, 3286],
     572    [3294, 3294], [3296, 3299], [3302, 3311], [3313, 3314]**/
     573    const UnicodeSet knda_Set
     574        {{{Empty, 100}, {Mixed, 4}, {Empty, 34712}},
     575         {0xfffddfef, 0xf3effdff, 0x40603ddf, 0x0006ffcf}};
     576    /** Code Point Ranges for Mlym
     577    [3329, 3331], [3333, 3340], [3342, 3344], [3346, 3386], [3389, 3396],
     578    [3398, 3400], [3402, 3407], [3412, 3427], [3430, 3455]**/
     579    const UnicodeSet mlym_Set
     580        {{{Empty, 104}, {Mixed, 4}, {Empty, 34708}},
     581         {0xfffddfee, 0xe7ffffff, 0xfff0fddf, 0xffffffcf}};
     582    /** Code Point Ranges for Sinh
     583    [3458, 3459], [3461, 3478], [3482, 3505], [3507, 3515], [3517, 3517],
     584    [3520, 3526], [3530, 3530], [3535, 3540], [3542, 3542], [3544, 3551],
     585    [3558, 3567], [3570, 3572], [70113, 70132]**/
     586    const UnicodeSet sinh_Set
     587        {{{Empty, 108}, {Mixed, 4}, {Empty, 2079}, {Mixed, 1},
     588          {Empty, 32624}},
     589         {0xfc7fffec, 0x2ffbffff, 0xff5f847f, 0x001cffc0, 0x001ffffe}};
     590    /** Code Point Ranges for Thai
     591    [3585, 3642], [3648, 3675]**/
     592    const UnicodeSet thai_Set
     593        {{{Empty, 112}, {Mixed, 3}, {Empty, 34701}},
     594         {0xfffffffe, 0x07ffffff, 0x0fffffff}};
     595    /** Code Point Ranges for Laoo
     596    [3713, 3714], [3716, 3716], [3719, 3720], [3722, 3722], [3725, 3725],
     597    [3732, 3735], [3737, 3743], [3745, 3747], [3749, 3749], [3751, 3751],
     598    [3754, 3755], [3757, 3769], [3771, 3773], [3776, 3780], [3782, 3782],
     599    [3784, 3789], [3792, 3801], [3804, 3807]**/
     600    const UnicodeSet laoo_Set
     601        {{{Empty, 116}, {Mixed, 3}, {Empty, 34697}},
     602         {0xfef02596, 0x3bffecae, 0xf3ff3f5f}};
     603    /** Code Point Ranges for Tibt
     604    [3840, 3911], [3913, 3948], [3953, 3991], [3993, 4028], [4030, 4044],
     605    [4046, 4052], [4057, 4058]**/
     606    const UnicodeSet tibt_Set
     607        {{{Empty, 120}, {Full, 2}, {Mixed, 5}, {Empty, 34689}},
     608         {0xfffffeff, 0xfffe1fff, 0xfeffffff, 0xdfffffff, 0x061fdfff}};
     609    /** Code Point Ranges for Mymr
     610    [4096, 4255], [43488, 43518], [43616, 43647]**/
     611    const UnicodeSet mymr_Set
     612        {{{Empty, 128}, {Full, 5}, {Empty, 1226}, {Mixed, 1}, {Empty, 3},
     613          {Full, 1}, {Empty, 33452}},
     614         {0x7fffffff}};
     615    /** Code Point Ranges for Geor
     616    [4256, 4293], [4295, 4295], [4301, 4301], [4304, 4346], [4348, 4351],
     617    [11520, 11557], [11559, 11559], [11565, 11565]**/
     618    const UnicodeSet geor_Set
     619        {{{Empty, 133}, {Full, 1}, {Mixed, 2}, {Empty, 224}, {Full, 1},
     620          {Mixed, 1}, {Empty, 34454}},
     621         {0xffff20bf, 0xf7ffffff, 0x000020bf}};
     622    /** Code Point Ranges for Hang
     623    [4352, 4607], [12334, 12335], [12593, 12686], [12800, 12830],
     624    [12896, 12926], [43360, 43388], [44032, 55203], [55216, 55238],
     625    [55243, 55291], [65440, 65470], [65474, 65479], [65482, 65487],
     626    [65490, 65495], [65498, 65500]**/
     627    const UnicodeSet hang_Set
     628        {{{Empty, 136}, {Full, 8}, {Empty, 241}, {Mixed, 1}, {Empty, 7},
     629          {Mixed, 1}, {Full, 2}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
     630          {Empty, 2}, {Mixed, 1}, {Empty, 951}, {Mixed, 1}, {Empty, 20},
     631          {Full, 349}, {Mixed, 3}, {Empty, 317}, {Mixed, 2}, {Empty, 32769}},
     632         {0x0000c000, 0xfffe0000, 0x00007fff, 0x7fffffff, 0x7fffffff,
     633          0x1fffffff, 0xffff000f, 0xfffff87f, 0x0fffffff, 0x7fffffff,
     634          0x1cfcfcfc}};
     635    /** Code Point Ranges for Ethi
     636    [4608, 4680], [4682, 4685], [4688, 4694], [4696, 4696], [4698, 4701],
     637    [4704, 4744], [4746, 4749], [4752, 4784], [4786, 4789], [4792, 4798],
     638    [4800, 4800], [4802, 4805], [4808, 4822], [4824, 4880], [4882, 4885],
     639    [4888, 4954], [4957, 4988], [4992, 5017], [11648, 11670],
     640    [11680, 11686], [11688, 11694], [11696, 11702], [11704, 11710],
     641    [11712, 11718], [11720, 11726], [11728, 11734], [11736, 11742],
     642    [43777, 43782], [43785, 43790], [43793, 43798], [43808, 43814],
     643    [43816, 43822]**/
     644    const UnicodeSet ethi_Set
     645        {{{Empty, 144}, {Full, 2}, {Mixed, 1}, {Full, 1}, {Mixed, 3},
     646          {Full, 1}, {Mixed, 1}, {Full, 1}, {Mixed, 3}, {Empty, 207},
     647          {Mixed, 3}, {Empty, 1001}, {Mixed, 2}, {Empty, 33446}},
     648         {0x3d7f3dff, 0xffff3dff, 0x7f3dffff, 0xff7fff3d, 0xff3dffff,
     649          0xe7ffffff, 0x1fffffff, 0x03ffffff, 0x007fffff, 0x7f7f7f7f,
     650          0x7f7f7f7f, 0x007e7e7e, 0x00007f7f}};
     651    /** Code Point Ranges for Cher
     652    [5024, 5109], [5112, 5117], [43888, 43967]**/
     653    const UnicodeSet cher_Set
     654        {{{Empty, 157}, {Full, 2}, {Mixed, 1}, {Empty, 1211}, {Mixed, 1},
     655          {Full, 2}, {Empty, 33442}},
     656         {0x3f3fffff, 0xffff0000}};
     657    /** Code Point Ranges for Cans
     658    [5120, 5759], [6320, 6389]**/
     659    const UnicodeSet cans_Set
     660        {{{Empty, 160}, {Full, 20}, {Empty, 17}, {Mixed, 1}, {Full, 1},
     661          {Mixed, 1}, {Empty, 34616}},
     662         {0xffff0000, 0x003fffff}};
     663    /** Code Point Ranges for Ogam
     664    [5760, 5788]**/
     665    const UnicodeSet ogam_Set
     666        {{{Empty, 180}, {Mixed, 1}, {Empty, 34635}},
     667         {0x1fffffff}};
     668    /** Code Point Ranges for Runr
     669    [5792, 5866], [5870, 5880]**/
     670    const UnicodeSet runr_Set
     671        {{{Empty, 181}, {Full, 2}, {Mixed, 1}, {Empty, 34632}},
     672         {0x01ffc7ff}};
     673    /** Code Point Ranges for Khmr
     674    [6016, 6109], [6112, 6121], [6128, 6137], [6624, 6655]**/
     675    const UnicodeSet khmr_Set
     676        {{{Empty, 188}, {Full, 2}, {Mixed, 2}, {Empty, 15}, {Full, 1},
     677          {Empty, 34608}},
     678         {0x3fffffff, 0x03ff03ff}};
     679    /** Code Point Ranges for Mong
     680    [6144, 6145], [6148, 6148], [6150, 6158], [6160, 6169], [6176, 6263],
     681    [6272, 6314], [71264, 71276]**/
     682    const UnicodeSet mong_Set
     683        {{{Empty, 192}, {Mixed, 1}, {Full, 2}, {Mixed, 1}, {Full, 1},
     684          {Mixed, 1}, {Empty, 2029}, {Mixed, 1}, {Empty, 32588}},
     685         {0x03ff7fd3, 0x00ffffff, 0x000007ff, 0x00001fff}};
     686    /** Code Point Ranges for Hira
     687    [12353, 12438], [12445, 12447], [110593, 110593], [127488, 127488]**/
     688    const UnicodeSet hira_Set
     689        {{{Empty, 386}, {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Empty, 3067},
     690          {Mixed, 1}, {Empty, 527}, {Mixed, 1}, {Empty, 30831}},
     691         {0xfffffffe, 0xe07fffff, 0x00000002, 0x00000001}};
     692    /** Code Point Ranges for Kana
     693    [12449, 12538], [12541, 12543], [12784, 12799], [13008, 13054],
     694    [13056, 13143], [65382, 65391], [65393, 65437], [110592, 110592]**/
     695    const UnicodeSet kana_Set
     696        {{{Empty, 389}, {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Empty, 7},
     697          {Mixed, 1}, {Empty, 6}, {Mixed, 2}, {Full, 2}, {Mixed, 1},
     698          {Empty, 1632}, {Mixed, 2}, {Empty, 1411}, {Mixed, 1},
     699          {Empty, 31359}},
     700         {0xfffffffe, 0xe7ffffff, 0xffff0000, 0xffff0000, 0x7fffffff,
     701          0x00ffffff, 0xfffeffc0, 0x3fffffff, 0x00000001}};
     702    /** Code Point Ranges for Bopo
     703    [746, 747], [12549, 12589], [12704, 12730]**/
     704    const UnicodeSet bopo_Set
     705        {{{Empty, 23}, {Mixed, 1}, {Empty, 368}, {Mixed, 2}, {Empty, 3},
     706          {Mixed, 1}, {Empty, 34418}},
     707         {0x00000c00, 0xffffffe0, 0x00003fff, 0x07ffffff}};
     708    /** Code Point Ranges for Hani
     709    [11904, 11929], [11931, 12019], [12032, 12245], [12293, 12293],
     710    [12295, 12295], [12321, 12329], [12344, 12347], [13312, 19893],
     711    [19968, 40917], [63744, 64109], [64112, 64217], [131072, 173782],
     712    [173824, 177972], [177984, 178205], [178208, 183969], [194560, 195101]**/
     713    const UnicodeSet hani_Set
     714        {{{Empty, 372}, {Mixed, 1}, {Full, 2}, {Mixed, 1}, {Full, 6},
     715          {Mixed, 1}, {Empty, 1}, {Mixed, 2}, {Empty, 30}, {Full, 205},
     716          {Mixed, 1}, {Empty, 2}, {Full, 654}, {Mixed, 1}, {Empty, 713},
     717          {Full, 11}, {Mixed, 1}, {Full, 2}, {Mixed, 1}, {Empty, 2089},
     718          {Full, 1334}, {Mixed, 1}, {Empty, 1}, {Full, 129}, {Mixed, 1},
     719          {Full, 6}, {Mixed, 1}, {Full, 180}, {Mixed, 1}, {Empty, 330},
     720          {Full, 16}, {Mixed, 1}, {Empty, 28719}},
     721         {0xfbffffff, 0x000fffff, 0x003fffff, 0x000000a0, 0x0f0003fe,
     722          0x003fffff, 0x003fffff, 0xffff3fff, 0x03ffffff, 0x007fffff,
     723          0x001fffff, 0x3fffffff, 0x00000003, 0x3fffffff}};
     724    /** Code Point Ranges for Yiii
     725    [40960, 42124], [42128, 42182]**/
     726    const UnicodeSet yiii_Set
     727        {{{Empty, 1280}, {Full, 36}, {Mixed, 1}, {Full, 1}, {Mixed, 1},
     728          {Empty, 33497}},
     729         {0xffff1fff, 0x0000007f}};
     730    /** Code Point Ranges for Ital
     731    [66304, 66339]**/
     732    const UnicodeSet ital_Set
     733        {{{Empty, 2072}, {Full, 1}, {Mixed, 1}, {Empty, 32742}},
     734         {0x0000000f}};
     735    /** Code Point Ranges for Goth
     736    [66352, 66378]**/
     737    const UnicodeSet goth_Set
     738        {{{Empty, 2073}, {Mixed, 2}, {Empty, 32741}},
     739         {0xffff0000, 0x000007ff}};
     740    /** Code Point Ranges for Dsrt
     741    [66560, 66639]**/
     742    const UnicodeSet dsrt_Set
     743        {{{Empty, 2080}, {Full, 2}, {Mixed, 1}, {Empty, 32733}},
     744         {0x0000ffff}};
     745    /** Code Point Ranges for Zinh
     746    [768, 879], [1157, 1158], [1611, 1621], [1648, 1648], [2385, 2386],
     747    [6832, 6846], [7376, 7378], [7380, 7392], [7394, 7400], [7405, 7405],
     748    [7412, 7412], [7416, 7417], [7616, 7669], [7675, 7679], [8204, 8205],
     749    [8400, 8432], [12330, 12333], [12441, 12442], [65024, 65039],
     750    [65056, 65069], [66045, 66045], [66272, 66272], [119143, 119145],
     751    [119163, 119170], [119173, 119179], [119210, 119213], [917760, 917999]**/
     752    const UnicodeSet zinh_Set
     753        {{{Empty, 24}, {Full, 3}, {Mixed, 1}, {Empty, 8}, {Mixed, 1},
     754          {Empty, 13}, {Mixed, 2}, {Empty, 22}, {Mixed, 1}, {Empty, 138},
     755          {Mixed, 1}, {Empty, 16}, {Mixed, 2}, {Empty, 6}, {Full, 1},
     756          {Mixed, 1}, {Empty, 16}, {Mixed, 1}, {Empty, 5}, {Mixed, 2},
     757          {Empty, 121}, {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Empty, 1643},
     758          {Mixed, 2}, {Empty, 29}, {Mixed, 1}, {Empty, 7}, {Mixed, 1},
     759          {Empty, 1651}, {Mixed, 3}, {Empty, 24954}, {Full, 7}, {Mixed, 1},
     760          {Empty, 6128}},
     761         {0x0000ffff, 0x00000060, 0x003ff800, 0x00010000, 0x00060000,
     762          0x7fff0000, 0xfff70000, 0x031021fd, 0xf83fffff, 0x00003000,
     763          0xffff0000, 0x0001ffff, 0x00003c00, 0x06000000, 0x0000ffff,
     764          0x00003fff, 0x20000000, 0x00000001, 0xf8000380, 0x00000fe7,
     765          0x00003c00, 0x0000ffff}};
     766    /** Code Point Ranges for Tglg
     767    [5888, 5900], [5902, 5908]**/
     768    const UnicodeSet tglg_Set
     769        {{{Empty, 184}, {Mixed, 1}, {Empty, 34631}},
     770         {0x001fdfff}};
     771    /** Code Point Ranges for Hano
     772    [5920, 5940]**/
     773    const UnicodeSet hano_Set
     774        {{{Empty, 185}, {Mixed, 1}, {Empty, 34630}},
     775         {0x001fffff}};
     776    /** Code Point Ranges for Buhd
     777    [5952, 5971]**/
     778    const UnicodeSet buhd_Set
     779        {{{Empty, 186}, {Mixed, 1}, {Empty, 34629}},
     780         {0x000fffff}};
     781    /** Code Point Ranges for Tagb
     782    [5984, 5996], [5998, 6000], [6002, 6003]**/
     783    const UnicodeSet tagb_Set
     784        {{{Empty, 187}, {Mixed, 1}, {Empty, 34628}},
     785         {0x000ddfff}};
     786    /** Code Point Ranges for Limb
     787    [6400, 6430], [6432, 6443], [6448, 6459], [6464, 6464], [6468, 6479]**/
     788    const UnicodeSet limb_Set
     789        {{{Empty, 200}, {Mixed, 3}, {Empty, 34613}},
     790         {0x7fffffff, 0x0fff0fff, 0x0000fff1}};
     791    /** Code Point Ranges for Tale
     792    [6480, 6509], [6512, 6516]**/
     793    const UnicodeSet tale_Set
     794        {{{Empty, 202}, {Mixed, 2}, {Empty, 34612}},
     795         {0xffff0000, 0x001f3fff}};
     796    /** Code Point Ranges for Linb
     797    [65536, 65547], [65549, 65574], [65576, 65594], [65596, 65597],
     798    [65599, 65613], [65616, 65629], [65664, 65786]**/
     799    const UnicodeSet linb_Set
     800        {{{Empty, 2048}, {Mixed, 3}, {Empty, 1}, {Full, 3}, {Mixed, 1},
     801          {Empty, 32760}},
     802         {0xffffefff, 0xb7ffff7f, 0x3fff3fff, 0x07ffffff}};
     803    /** Code Point Ranges for Ugar
     804    [66432, 66461], [66463, 66463]**/
     805    const UnicodeSet ugar_Set
     806        {{{Empty, 2076}, {Mixed, 1}, {Empty, 32739}},
     807         {0xbfffffff}};
     808    /** Code Point Ranges for Shaw
     809    [66640, 66687]**/
     810    const UnicodeSet shaw_Set
     811        {{{Empty, 2082}, {Mixed, 1}, {Full, 1}, {Empty, 32732}},
     812         {0xffff0000}};
     813    /** Code Point Ranges for Osma
     814    [66688, 66717], [66720, 66729]**/
     815    const UnicodeSet osma_Set
     816        {{{Empty, 2084}, {Mixed, 2}, {Empty, 32730}},
     817         {0x3fffffff, 0x000003ff}};
     818    /** Code Point Ranges for Cprt
     819    [67584, 67589], [67592, 67592], [67594, 67637], [67639, 67640],
     820    [67644, 67644], [67647, 67647]**/
     821    const UnicodeSet cprt_Set
     822        {{{Empty, 2112}, {Mixed, 2}, {Empty, 32702}},
     823         {0xfffffd3f, 0x91bfffff}};
     824    /** Code Point Ranges for Brai
     825    [10240, 10495]**/
     826    const UnicodeSet brai_Set
     827        {{{Empty, 320}, {Full, 8}, {Empty, 34488}},
     828         {}};
     829    /** Code Point Ranges for Bugi
     830    [6656, 6683], [6686, 6687]**/
     831    const UnicodeSet bugi_Set
     832        {{{Empty, 208}, {Mixed, 1}, {Empty, 34607}},
     833         {0xcfffffff}};
     834    /** Code Point Ranges for Copt
     835    [994, 1007], [11392, 11507], [11513, 11519]**/
     836    const UnicodeSet copt_Set
     837        {{{Empty, 31}, {Mixed, 1}, {Empty, 324}, {Full, 3}, {Mixed, 1},
     838          {Empty, 34456}},
     839         {0x0000fffc, 0xfe0fffff}};
     840    /** Code Point Ranges for Talu
     841    [6528, 6571], [6576, 6601], [6608, 6618], [6622, 6623]**/
     842    const UnicodeSet talu_Set
     843        {{{Empty, 204}, {Full, 1}, {Mixed, 2}, {Empty, 34609}},
     844         {0xffff0fff, 0xc7ff03ff}};
     845    /** Code Point Ranges for Glag
     846    [11264, 11310], [11312, 11358], [122880, 122886], [122888, 122904],
     847    [122907, 122913], [122915, 122916], [122918, 122922]**/
     848    const UnicodeSet glag_Set
     849        {{{Empty, 352}, {Full, 1}, {Mixed, 2}, {Empty, 3485}, {Mixed, 2},
     850          {Empty, 30974}},
     851         {0xffff7fff, 0x7fffffff, 0xf9ffff7f, 0x000007db}};
     852    /** Code Point Ranges for Tfng
     853    [11568, 11623], [11631, 11632], [11647, 11647]**/
     854    const UnicodeSet tfng_Set
     855        {{{Empty, 361}, {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Empty, 34452}},
     856         {0xffff0000, 0x800180ff}};
     857    /** Code Point Ranges for Sylo
     858    [43008, 43051]**/
     859    const UnicodeSet sylo_Set
     860        {{{Empty, 1344}, {Full, 1}, {Mixed, 1}, {Empty, 33470}},
     861         {0x00000fff}};
     862    /** Code Point Ranges for Xpeo
     863    [66464, 66499], [66504, 66517]**/
     864    const UnicodeSet xpeo_Set
     865        {{{Empty, 2077}, {Full, 1}, {Mixed, 1}, {Empty, 32737}},
     866         {0x003fff0f}};
     867    /** Code Point Ranges for Khar
     868    [68096, 68099], [68101, 68102], [68108, 68115], [68117, 68119],
     869    [68121, 68147], [68152, 68154], [68159, 68167], [68176, 68184]**/
     870    const UnicodeSet khar_Set
     871        {{{Empty, 2128}, {Mixed, 3}, {Empty, 32685}},
     872         {0xfeeff06f, 0x870fffff, 0x01ff00ff}};
     873    /** Code Point Ranges for Bali
     874    [6912, 6987], [6992, 7036]**/
     875    const UnicodeSet bali_Set
     876        {{{Empty, 216}, {Full, 2}, {Mixed, 2}, {Empty, 34596}},
     877         {0xffff0fff, 0x1fffffff}};
     878    /** Code Point Ranges for Xsux
     879    [73728, 74649], [74752, 74862], [74864, 74868], [74880, 75075]**/
     880    const UnicodeSet xsux_Set
     881        {{{Empty, 2304}, {Full, 28}, {Mixed, 1}, {Empty, 3}, {Full, 3},
     882          {Mixed, 1}, {Full, 6}, {Mixed, 1}, {Empty, 32469}},
     883         {0x03ffffff, 0x001f7fff, 0x0000000f}};
     884    /** Code Point Ranges for Phnx
     885    [67840, 67867], [67871, 67871]**/
     886    const UnicodeSet phnx_Set
     887        {{{Empty, 2120}, {Mixed, 1}, {Empty, 32695}},
     888         {0x8fffffff}};
     889    /** Code Point Ranges for Phag
     890    [43072, 43127]**/
     891    const UnicodeSet phag_Set
     892        {{{Empty, 1346}, {Full, 1}, {Mixed, 1}, {Empty, 33468}},
     893         {0x00ffffff}};
     894    /** Code Point Ranges for Nkoo
     895    [1984, 2042]**/
     896    const UnicodeSet nkoo_Set
     897        {{{Empty, 62}, {Full, 1}, {Mixed, 1}, {Empty, 34752}},
     898         {0x07ffffff}};
     899    /** Code Point Ranges for Sund
     900    [7040, 7103], [7360, 7367]**/
     901    const UnicodeSet sund_Set
     902        {{{Empty, 220}, {Full, 2}, {Empty, 8}, {Mixed, 1}, {Empty, 34585}},
     903         {0x000000ff}};
     904    /** Code Point Ranges for Lepc
     905    [7168, 7223], [7227, 7241], [7245, 7247]**/
     906    const UnicodeSet lepc_Set
     907        {{{Empty, 224}, {Full, 1}, {Mixed, 2}, {Empty, 34589}},
     908         {0xf8ffffff, 0x0000e3ff}};
     909    /** Code Point Ranges for Olck
     910    [7248, 7295]**/
     911    const UnicodeSet olck_Set
     912        {{{Empty, 226}, {Mixed, 1}, {Full, 1}, {Empty, 34588}},
     913         {0xffff0000}};
     914    /** Code Point Ranges for Vaii
     915    [42240, 42539]**/
     916    const UnicodeSet vaii_Set
     917        {{{Empty, 1320}, {Full, 9}, {Mixed, 1}, {Empty, 33486}},
     918         {0x00000fff}};
     919    /** Code Point Ranges for Saur
     920    [43136, 43205], [43214, 43225]**/
     921    const UnicodeSet saur_Set
     922        {{{Empty, 1348}, {Full, 2}, {Mixed, 1}, {Empty, 33465}},
     923         {0x03ffc03f}};
     924    /** Code Point Ranges for Kali
     925    [43264, 43309], [43311, 43311]**/
     926    const UnicodeSet kali_Set
     927        {{{Empty, 1352}, {Full, 1}, {Mixed, 1}, {Empty, 33462}},
     928         {0x0000bfff}};
     929    /** Code Point Ranges for Rjng
     930    [43312, 43347], [43359, 43359]**/
     931    const UnicodeSet rjng_Set
     932        {{{Empty, 1353}, {Mixed, 2}, {Empty, 33461}},
     933         {0xffff0000, 0x800fffff}};
     934    /** Code Point Ranges for Lyci
     935    [66176, 66204]**/
     936    const UnicodeSet lyci_Set
     937        {{{Empty, 2068}, {Mixed, 1}, {Empty, 32747}},
     938         {0x1fffffff}};
     939    /** Code Point Ranges for Cari
     940    [66208, 66256]**/
     941    const UnicodeSet cari_Set
     942        {{{Empty, 2069}, {Full, 1}, {Mixed, 1}, {Empty, 32745}},
     943         {0x0001ffff}};
     944    /** Code Point Ranges for Lydi
     945    [67872, 67897], [67903, 67903]**/
     946    const UnicodeSet lydi_Set
     947        {{{Empty, 2121}, {Mixed, 1}, {Empty, 32694}},
     948         {0x83ffffff}};
     949    /** Code Point Ranges for Cham
     950    [43520, 43574], [43584, 43597], [43600, 43609], [43612, 43615]**/
     951    const UnicodeSet cham_Set
     952        {{{Empty, 1360}, {Full, 1}, {Mixed, 2}, {Empty, 33453}},
     953         {0x007fffff, 0xf3ff3fff}};
     954    /** Code Point Ranges for Lana
     955    [6688, 6750], [6752, 6780], [6783, 6793], [6800, 6809], [6816, 6829]**/
     956    const UnicodeSet lana_Set
     957        {{{Empty, 209}, {Full, 1}, {Mixed, 4}, {Empty, 34602}},
     958         {0x7fffffff, 0x9fffffff, 0x03ff03ff, 0x00003fff}};
     959    /** Code Point Ranges for Tavt
     960    [43648, 43714], [43739, 43743]**/
     961    const UnicodeSet tavt_Set
     962        {{{Empty, 1364}, {Full, 2}, {Mixed, 1}, {Empty, 33449}},
     963         {0xf8000007}};
     964    /** Code Point Ranges for Avst
     965    [68352, 68405], [68409, 68415]**/
     966    const UnicodeSet avst_Set
     967        {{{Empty, 2136}, {Full, 1}, {Mixed, 1}, {Empty, 32678}},
     968         {0xfe3fffff}};
     969    /** Code Point Ranges for Egyp
     970    [77824, 78894]**/
     971    const UnicodeSet egyp_Set
     972        {{{Empty, 2432}, {Full, 33}, {Mixed, 1}, {Empty, 32350}},
     973         {0x00007fff}};
     974    /** Code Point Ranges for Samr
     975    [2048, 2093], [2096, 2110]**/
     976    const UnicodeSet samr_Set
     977        {{{Empty, 64}, {Full, 1}, {Mixed, 1}, {Empty, 34750}},
     978         {0x7fff3fff}};
     979    /** Code Point Ranges for Lisu
     980    [42192, 42239]**/
     981    const UnicodeSet lisu_Set
     982        {{{Empty, 1318}, {Mixed, 1}, {Full, 1}, {Empty, 33496}},
     983         {0xffff0000}};
     984    /** Code Point Ranges for Bamu
     985    [42656, 42743], [92160, 92728]**/
     986    const UnicodeSet bamu_Set
     987        {{{Empty, 1333}, {Full, 2}, {Mixed, 1}, {Empty, 1544}, {Full, 17},
     988          {Mixed, 1}, {Empty, 31918}},
     989         {0x00ffffff, 0x01ffffff}};
     990    /** Code Point Ranges for Java
     991    [43392, 43469], [43472, 43481], [43486, 43487]**/
     992    const UnicodeSet java_Set
     993        {{{Empty, 1356}, {Full, 2}, {Mixed, 1}, {Empty, 33457}},
     994         {0xc3ff3fff}};
     995    /** Code Point Ranges for Mtei
     996    [43744, 43766], [43968, 44013], [44016, 44025]**/
     997    const UnicodeSet mtei_Set
     998        {{{Empty, 1367}, {Mixed, 1}, {Empty, 6}, {Full, 1}, {Mixed, 1},
     999          {Empty, 33440}},
     1000         {0x007fffff, 0x03ff3fff}};
     1001    /** Code Point Ranges for Armi
     1002    [67648, 67669], [67671, 67679]**/
     1003    const UnicodeSet armi_Set
     1004        {{{Empty, 2114}, {Mixed, 1}, {Empty, 32701}},
     1005         {0xffbfffff}};
     1006    /** Code Point Ranges for Sarb
     1007    [68192, 68223]**/
     1008    const UnicodeSet sarb_Set
     1009        {{{Empty, 2131}, {Full, 1}, {Empty, 32684}},
     1010         {}};
     1011    /** Code Point Ranges for Prti
     1012    [68416, 68437], [68440, 68447]**/
     1013    const UnicodeSet prti_Set
     1014        {{{Empty, 2138}, {Mixed, 1}, {Empty, 32677}},
     1015         {0xff3fffff}};
     1016    /** Code Point Ranges for Phli
     1017    [68448, 68466], [68472, 68479]**/
     1018    const UnicodeSet phli_Set
     1019        {{{Empty, 2139}, {Mixed, 1}, {Empty, 32676}},
     1020         {0xff07ffff}};
     1021    /** Code Point Ranges for Orkh
     1022    [68608, 68680]**/
     1023    const UnicodeSet orkh_Set
     1024        {{{Empty, 2144}, {Full, 2}, {Mixed, 1}, {Empty, 32669}},
     1025         {0x000001ff}};
     1026    /** Code Point Ranges for Kthi
     1027    [69760, 69825]**/
     1028    const UnicodeSet kthi_Set
     1029        {{{Empty, 2180}, {Full, 2}, {Mixed, 1}, {Empty, 32633}},
     1030         {0x00000003}};
     1031    /** Code Point Ranges for Batk
     1032    [7104, 7155], [7164, 7167]**/
     1033    const UnicodeSet batk_Set
     1034        {{{Empty, 222}, {Full, 1}, {Mixed, 1}, {Empty, 34592}},
     1035         {0xf00fffff}};
     1036    /** Code Point Ranges for Brah
     1037    [69632, 69709], [69714, 69743], [69759, 69759]**/
     1038    const UnicodeSet brah_Set
     1039        {{{Empty, 2176}, {Full, 2}, {Mixed, 2}, {Empty, 32636}},
     1040         {0xfffc3fff, 0x8000ffff}};
     1041    /** Code Point Ranges for Mand
     1042    [2112, 2139], [2142, 2142]**/
     1043    const UnicodeSet mand_Set
     1044        {{{Empty, 66}, {Mixed, 1}, {Empty, 34749}},
     1045         {0x4fffffff}};
     1046    /** Code Point Ranges for Cakm
     1047    [69888, 69940], [69942, 69955]**/
     1048    const UnicodeSet cakm_Set
     1049        {{{Empty, 2184}, {Full, 1}, {Mixed, 2}, {Empty, 32629}},
     1050         {0xffdfffff, 0x0000000f}};
     1051    /** Code Point Ranges for Merc
     1052    [68000, 68023], [68028, 68047], [68050, 68095]**/
     1053    const UnicodeSet merc_Set
     1054        {{{Empty, 2125}, {Mixed, 2}, {Full, 1}, {Empty, 32688}},
     1055         {0xf0ffffff, 0xfffcffff}};
     1056    /** Code Point Ranges for Mero
     1057    [67968, 67999]**/
     1058    const UnicodeSet mero_Set
     1059        {{{Empty, 2124}, {Full, 1}, {Empty, 32691}},
     1060         {}};
     1061    /** Code Point Ranges for Plrd
     1062    [93952, 94020], [94032, 94078], [94095, 94111]**/
     1063    const UnicodeSet plrd_Set
     1064        {{{Empty, 2936}, {Full, 2}, {Mixed, 3}, {Empty, 31875}},
     1065         {0xffff001f, 0x7fffffff, 0xffff8000}};
     1066    /** Code Point Ranges for Shrd
     1067    [70016, 70093], [70096, 70111]**/
     1068    const UnicodeSet shrd_Set
     1069        {{{Empty, 2188}, {Full, 2}, {Mixed, 1}, {Empty, 32625}},
     1070         {0xffff3fff}};
     1071    /** Code Point Ranges for Sora
     1072    [69840, 69864], [69872, 69881]**/
     1073    const UnicodeSet sora_Set
     1074        {{{Empty, 2182}, {Mixed, 2}, {Empty, 32632}},
     1075         {0xffff0000, 0x03ff01ff}};
     1076    /** Code Point Ranges for Takr
     1077    [71296, 71351], [71360, 71369]**/
     1078    const UnicodeSet takr_Set
     1079        {{{Empty, 2228}, {Full, 1}, {Mixed, 2}, {Empty, 32585}},
     1080         {0x00ffffff, 0x000003ff}};
     1081    /** Code Point Ranges for Aghb
     1082    [66864, 66915], [66927, 66927]**/
     1083    const UnicodeSet aghb_Set
     1084        {{{Empty, 2089}, {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Empty, 32724}},
     1085         {0xffff0000, 0x0000800f}};
     1086    /** Code Point Ranges for Bass
     1087    [92880, 92909], [92912, 92917]**/
     1088    const UnicodeSet bass_Set
     1089        {{{Empty, 2902}, {Mixed, 2}, {Empty, 31912}},
     1090         {0xffff0000, 0x003f3fff}};
     1091    /** Code Point Ranges for Dupl
     1092    [113664, 113770], [113776, 113788], [113792, 113800], [113808, 113817],
     1093    [113820, 113823]**/
     1094    const UnicodeSet dupl_Set
     1095        {{{Empty, 3552}, {Full, 3}, {Mixed, 2}, {Empty, 31259}},
     1096         {0x1fff07ff, 0xf3ff01ff}};
     1097    /** Code Point Ranges for Elba
     1098    [66816, 66855]**/
     1099    const UnicodeSet elba_Set
     1100        {{{Empty, 2088}, {Full, 1}, {Mixed, 1}, {Empty, 32726}},
     1101         {0x000000ff}};
     1102    /** Code Point Ranges for Gran
     1103    [70400, 70403], [70405, 70412], [70415, 70416], [70419, 70440],
     1104    [70442, 70448], [70450, 70451], [70453, 70457], [70460, 70468],
     1105    [70471, 70472], [70475, 70477], [70480, 70480], [70487, 70487],
     1106    [70493, 70499], [70502, 70508], [70512, 70516]**/
     1107    const UnicodeSet gran_Set
     1108        {{{Empty, 2200}, {Mixed, 4}, {Empty, 32612}},
     1109         {0xfff99fef, 0xf3edfdff, 0xe081399f, 0x001f1fcf}};
     1110    /** Code Point Ranges for Hmng
     1111    [92928, 92997], [93008, 93017], [93019, 93025], [93027, 93047],
     1112    [93053, 93071]**/
     1113    const UnicodeSet hmng_Set
     1114        {{{Empty, 2904}, {Full, 2}, {Mixed, 3}, {Empty, 31907}},
     1115         {0xfbff003f, 0xe0fffffb, 0x0000ffff}};
     1116    /** Code Point Ranges for Khoj
     1117    [70144, 70161], [70163, 70206]**/
     1118    const UnicodeSet khoj_Set
     1119        {{{Empty, 2192}, {Mixed, 2}, {Empty, 32622}},
     1120         {0xfffbffff, 0x7fffffff}};
     1121    /** Code Point Ranges for Lina
     1122    [67072, 67382], [67392, 67413], [67424, 67431]**/
     1123    const UnicodeSet lina_Set
     1124        {{{Empty, 2096}, {Full, 9}, {Mixed, 3}, {Empty, 32708}},
     1125         {0x007fffff, 0x003fffff, 0x000000ff}};
     1126    /** Code Point Ranges for Mahj
     1127    [69968, 70006]**/
     1128    const UnicodeSet mahj_Set
     1129        {{{Empty, 2186}, {Mixed, 2}, {Empty, 32628}},
     1130         {0xffff0000, 0x007fffff}};
     1131    /** Code Point Ranges for Mani
     1132    [68288, 68326], [68331, 68342]**/
     1133    const UnicodeSet mani_Set
     1134        {{{Empty, 2134}, {Full, 1}, {Mixed, 1}, {Empty, 32680}},
     1135         {0x007ff87f}};
     1136    /** Code Point Ranges for Mend
     1137    [124928, 125124], [125127, 125142]**/
     1138    const UnicodeSet mend_Set
     1139        {{{Empty, 3904}, {Full, 6}, {Mixed, 1}, {Empty, 30905}},
     1140         {0x007fff9f}};
     1141    /** Code Point Ranges for Modi
     1142    [71168, 71236], [71248, 71257]**/
     1143    const UnicodeSet modi_Set
     1144        {{{Empty, 2224}, {Full, 2}, {Mixed, 1}, {Empty, 32589}},
     1145         {0x03ff001f}};
     1146    /** Code Point Ranges for Mroo
     1147    [92736, 92766], [92768, 92777], [92782, 92783]**/
     1148    const UnicodeSet mroo_Set
     1149        {{{Empty, 2898}, {Mixed, 2}, {Empty, 31916}},
     1150         {0x7fffffff, 0x0000c3ff}};
     1151    /** Code Point Ranges for Narb
     1152    [68224, 68255]**/
     1153    const UnicodeSet narb_Set
     1154        {{{Empty, 2132}, {Full, 1}, {Empty, 32683}},
     1155         {}};
     1156    /** Code Point Ranges for Nbat
     1157    [67712, 67742], [67751, 67759]**/
     1158    const UnicodeSet nbat_Set
     1159        {{{Empty, 2116}, {Mixed, 2}, {Empty, 32698}},
     1160         {0x7fffffff, 0x0000ff80}};
     1161    /** Code Point Ranges for Palm
     1162    [67680, 67711]**/
     1163    const UnicodeSet palm_Set
     1164        {{{Empty, 2115}, {Full, 1}, {Empty, 32700}},
     1165         {}};
     1166    /** Code Point Ranges for Pauc
     1167    [72384, 72440]**/
     1168    const UnicodeSet pauc_Set
     1169        {{{Empty, 2262}, {Full, 1}, {Mixed, 1}, {Empty, 32552}},
     1170         {0x01ffffff}};
     1171    /** Code Point Ranges for Perm
     1172    [66384, 66426]**/
     1173    const UnicodeSet perm_Set
     1174        {{{Empty, 2074}, {Mixed, 2}, {Empty, 32740}},
     1175         {0xffff0000, 0x07ffffff}};
     1176    /** Code Point Ranges for Phlp
     1177    [68480, 68497], [68505, 68508], [68521, 68527]**/
     1178    const UnicodeSet phlp_Set
     1179        {{{Empty, 2140}, {Mixed, 2}, {Empty, 32674}},
     1180         {0x1e03ffff, 0x0000fe00}};
     1181    /** Code Point Ranges for Sidd
     1182    [71040, 71093], [71096, 71133]**/
     1183    const UnicodeSet sidd_Set
     1184        {{{Empty, 2220}, {Full, 1}, {Mixed, 2}, {Empty, 32593}},
     1185         {0xff3fffff, 0x3fffffff}};
     1186    /** Code Point Ranges for Sind
     1187    [70320, 70378], [70384, 70393]**/
     1188    const UnicodeSet sind_Set
     1189        {{{Empty, 2197}, {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Empty, 32616}},
     1190         {0xffff0000, 0x03ff07ff}};
     1191    /** Code Point Ranges for Tirh
     1192    [70784, 70855], [70864, 70873]**/
     1193    const UnicodeSet tirh_Set
     1194        {{{Empty, 2212}, {Full, 2}, {Mixed, 1}, {Empty, 32601}},
     1195         {0x03ff00ff}};
     1196    /** Code Point Ranges for Wara
     1197    [71840, 71922], [71935, 71935]**/
     1198    const UnicodeSet wara_Set
     1199        {{{Empty, 2245}, {Full, 2}, {Mixed, 1}, {Empty, 32568}},
     1200         {0x8007ffff}};
     1201    /** Code Point Ranges for Ahom
     1202    [71424, 71449], [71453, 71467], [71472, 71487]**/
     1203    const UnicodeSet ahom_Set
     1204        {{{Empty, 2232}, {Mixed, 2}, {Empty, 32582}},
     1205         {0xe3ffffff, 0xffff0fff}};
     1206    /** Code Point Ranges for Hluw
     1207    [82944, 83526]**/
     1208    const UnicodeSet hluw_Set
     1209        {{{Empty, 2592}, {Full, 18}, {Mixed, 1}, {Empty, 32205}},
     1210         {0x0000007f}};
     1211    /** Code Point Ranges for Hatr
     1212    [67808, 67826], [67828, 67829], [67835, 67839]**/
     1213    const UnicodeSet hatr_Set
     1214        {{{Empty, 2119}, {Mixed, 1}, {Empty, 32696}},
     1215         {0xf837ffff}};
     1216    /** Code Point Ranges for Mult
     1217    [70272, 70278], [70280, 70280], [70282, 70285], [70287, 70301],
     1218    [70303, 70313]**/
     1219    const UnicodeSet mult_Set
     1220        {{{Empty, 2196}, {Mixed, 2}, {Empty, 32618}},
     1221         {0xbfffbd7f, 0x000003ff}};
     1222    /** Code Point Ranges for Hung
     1223    [68736, 68786], [68800, 68850], [68858, 68863]**/
     1224    const UnicodeSet hung_Set
     1225        {{{Empty, 2148}, {Full, 1}, {Mixed, 1}, {Full, 1}, {Mixed, 1},
     1226          {Empty, 32664}},
     1227         {0x0007ffff, 0xfc07ffff}};
     1228    /** Code Point Ranges for Sgnw
     1229    [120832, 121483], [121499, 121503], [121505, 121519]**/
     1230    const UnicodeSet sgnw_Set
     1231        {{{Empty, 3776}, {Full, 20}, {Mixed, 2}, {Empty, 31018}},
     1232         {0xf8000fff, 0x0000fffe}};
     1233    /** Code Point Ranges for Adlm
     1234    [125184, 125258], [125264, 125273], [125278, 125279]**/
     1235    const UnicodeSet adlm_Set
     1236        {{{Empty, 3912}, {Full, 2}, {Mixed, 1}, {Empty, 30901}},
     1237         {0xc3ff07ff}};
     1238    /** Code Point Ranges for Bhks
     1239    [72704, 72712], [72714, 72758], [72760, 72773], [72784, 72812]**/
     1240    const UnicodeSet bhks_Set
     1241        {{{Empty, 2272}, {Mixed, 4}, {Empty, 32540}},
     1242         {0xfffffdff, 0xff7fffff, 0xffff003f, 0x00001fff}};
     1243    /** Code Point Ranges for Marc
     1244    [72816, 72847], [72850, 72871], [72873, 72886]**/
     1245    const UnicodeSet marc_Set
     1246        {{{Empty, 2275}, {Mixed, 3}, {Empty, 32538}},
     1247         {0xffff0000, 0xfffcffff, 0x007ffeff}};
     1248    /** Code Point Ranges for Newa
     1249    [70656, 70745], [70747, 70747], [70749, 70749]**/
     1250    const UnicodeSet newa_Set
     1251        {{{Empty, 2208}, {Full, 2}, {Mixed, 1}, {Empty, 32605}},
     1252         {0x2bffffff}};
     1253    /** Code Point Ranges for Osge
     1254    [66736, 66771], [66776, 66811]**/
     1255    const UnicodeSet osge_Set
     1256        {{{Empty, 2085}, {Mixed, 3}, {Empty, 32728}},
     1257         {0xffff0000, 0xff0fffff, 0x0fffffff}};
     1258    /** Code Point Ranges for Tang
     1259    [94176, 94176], [94208, 100332], [100352, 101106]**/
     1260    const UnicodeSet tang_Set
     1261        {{{Empty, 2943}, {Mixed, 1}, {Full, 191}, {Mixed, 1}, {Full, 23},
     1262          {Mixed, 1}, {Empty, 31656}},
     1263         {0x00000001, 0x00001fff, 0x0007ffff}};
     1264    /** Code Point Ranges for Hrkt
     1265    **/
     1266    const UnicodeSet hrkt_Set
     1267        {{{Empty, 34816}},
     1268         {}};
    12691269    static EnumeratedPropertyObject property_object
    12701270        {sc,
     
    12721272         SC_ns::value_names,
    12731273         SC_ns::aliases_only_map,
    1274          {&adlm_Set, &aghb_Set, &ahom_Set, &arab_Set, &armi_Set, &armn_Set,
    1275         &avst_Set, &bali_Set, &bamu_Set, &bass_Set, &batk_Set, &beng_Set,
    1276         &bhks_Set, &bopo_Set, &brah_Set, &brai_Set, &bugi_Set, &buhd_Set,
    1277         &cakm_Set, &cans_Set, &cari_Set, &cham_Set, &cher_Set, &copt_Set,
    1278         &cprt_Set, &cyrl_Set, &deva_Set, &dsrt_Set, &dupl_Set, &egyp_Set,
    1279         &elba_Set, &ethi_Set, &geor_Set, &glag_Set, &goth_Set, &gran_Set,
    1280         &grek_Set, &gujr_Set, &guru_Set, &hang_Set, &hani_Set, &hano_Set,
    1281         &hatr_Set, &hebr_Set, &hira_Set, &hluw_Set, &hmng_Set, &hrkt_Set,
    1282         &hung_Set, &ital_Set, &java_Set, &kali_Set, &kana_Set, &khar_Set,
    1283         &khmr_Set, &khoj_Set, &knda_Set, &kthi_Set, &lana_Set, &laoo_Set,
    1284         &latn_Set, &lepc_Set, &limb_Set, &lina_Set, &linb_Set, &lisu_Set,
    1285         &lyci_Set, &lydi_Set, &mahj_Set, &mand_Set, &mani_Set, &marc_Set,
    1286         &mend_Set, &merc_Set, &mero_Set, &mlym_Set, &modi_Set, &mong_Set,
    1287         &mroo_Set, &mtei_Set, &mult_Set, &mymr_Set, &narb_Set, &nbat_Set,
    1288         &newa_Set, &nkoo_Set, &ogam_Set, &olck_Set, &orkh_Set, &orya_Set,
    1289         &osge_Set, &osma_Set, &palm_Set, &pauc_Set, &perm_Set, &phag_Set,
    1290         &phli_Set, &phlp_Set, &phnx_Set, &plrd_Set, &prti_Set, &rjng_Set,
    1291         &runr_Set, &samr_Set, &sarb_Set, &saur_Set, &sgnw_Set, &shaw_Set,
    1292         &shrd_Set, &sidd_Set, &sind_Set, &sinh_Set, &sora_Set, &sund_Set,
    1293         &sylo_Set, &syrc_Set, &tagb_Set, &takr_Set, &tale_Set, &talu_Set,
    1294         &taml_Set, &tang_Set, &tavt_Set, &telu_Set, &tfng_Set, &tglg_Set,
    1295         &thaa_Set, &thai_Set, &tibt_Set, &tirh_Set, &ugar_Set, &vaii_Set,
    1296         &wara_Set, &xpeo_Set, &xsux_Set, &yiii_Set, &zinh_Set, &zyyy_Set,
    1297         &zzzz_Set
     1274         {&zzzz_Set, &zyyy_Set, &latn_Set, &grek_Set, &cyrl_Set, &armn_Set,
     1275        &hebr_Set, &arab_Set, &syrc_Set, &thaa_Set, &deva_Set, &beng_Set,
     1276        &guru_Set, &gujr_Set, &orya_Set, &taml_Set, &telu_Set, &knda_Set,
     1277        &mlym_Set, &sinh_Set, &thai_Set, &laoo_Set, &tibt_Set, &mymr_Set,
     1278        &geor_Set, &hang_Set, &ethi_Set, &cher_Set, &cans_Set, &ogam_Set,
     1279        &runr_Set, &khmr_Set, &mong_Set, &hira_Set, &kana_Set, &bopo_Set,
     1280        &hani_Set, &yiii_Set, &ital_Set, &goth_Set, &dsrt_Set, &zinh_Set,
     1281        &tglg_Set, &hano_Set, &buhd_Set, &tagb_Set, &limb_Set, &tale_Set,
     1282        &linb_Set, &ugar_Set, &shaw_Set, &osma_Set, &cprt_Set, &brai_Set,
     1283        &bugi_Set, &copt_Set, &talu_Set, &glag_Set, &tfng_Set, &sylo_Set,
     1284        &xpeo_Set, &khar_Set, &bali_Set, &xsux_Set, &phnx_Set, &phag_Set,
     1285        &nkoo_Set, &sund_Set, &lepc_Set, &olck_Set, &vaii_Set, &saur_Set,
     1286        &kali_Set, &rjng_Set, &lyci_Set, &cari_Set, &lydi_Set, &cham_Set,
     1287        &lana_Set, &tavt_Set, &avst_Set, &egyp_Set, &samr_Set, &lisu_Set,
     1288        &bamu_Set, &java_Set, &mtei_Set, &armi_Set, &sarb_Set, &prti_Set,
     1289        &phli_Set, &orkh_Set, &kthi_Set, &batk_Set, &brah_Set, &mand_Set,
     1290        &cakm_Set, &merc_Set, &mero_Set, &plrd_Set, &shrd_Set, &sora_Set,
     1291        &takr_Set, &aghb_Set, &bass_Set, &dupl_Set, &elba_Set, &gran_Set,
     1292        &hmng_Set, &khoj_Set, &lina_Set, &mahj_Set, &mani_Set, &mend_Set,
     1293        &modi_Set, &mroo_Set, &narb_Set, &nbat_Set, &palm_Set, &pauc_Set,
     1294        &perm_Set, &phlp_Set, &sidd_Set, &sind_Set, &tirh_Set, &wara_Set,
     1295        &ahom_Set, &hluw_Set, &hatr_Set, &mult_Set, &hung_Set, &sgnw_Set,
     1296        &adlm_Set, &bhks_Set, &marc_Set, &newa_Set, &osge_Set, &tang_Set,
     1297        &hrkt_Set
    12981298         }};
    12991299    }
Note: See TracChangeset for help on using the changeset viewer.