source: icGREP/icgrep-devel/icgrep/UCD/GraphemeBreakProperty.h @ 5656

Last change on this file since 5656 was 5656, checked in by cameron, 22 months ago

UCD_Config.h, add Indic and CompositionExclusion? properties

File size: 51.3 KB
Line 
1#ifndef GRAPHEMEBREAKPROPERTY_H
2#define GRAPHEMEBREAKPROPERTY_H
3/*
4 *  Copyright (c) 2017 International Characters, Inc.
5 *  This software is licensed to the public under the Open Software License 3.0.
6 *  icgrep is a trademark of International Characters, Inc.
7 *
8 *  This file is generated by UCD_properties.py - manual edits may be lost.
9 */
10
11#include "PropertyObjects.h"
12#include "PropertyValueAliases.h"
13#include "unicode_set.h"
14
15namespace UCD {
16  namespace GCB_ns {
17    const unsigned independent_prop_values = 18;
18    /** Code Point Ranges for XX
19    [0020, 007e], [00a0, 00ac], [00ae, 02ff], [0370, 0482], [048a, 0590],
20    [05be, 05be], [05c0, 05c0], [05c3, 05c3], [05c6, 05c6], [05c8, 05ff],
21    [0606, 060f], [061b, 061b], [061d, 064a], [0660, 066f], [0671, 06d5],
22    [06de, 06de], [06e5, 06e6], [06e9, 06e9], [06ee, 070e], [0710, 0710],
23    [0712, 072f], [074b, 07a5], [07b1, 07ea], [07f4, 0815], [081a, 081a],
24    [0824, 0824], [0828, 0828], [082e, 0858], [085c, 08d3], [0904, 0939],
25    [093d, 093d], [0950, 0950], [0958, 0961], [0964, 0980], [0984, 09bb],
26    [09bd, 09bd], [09c5, 09c6], [09c9, 09ca], [09ce, 09d6], [09d8, 09e1],
27    [09e4, 0a00], [0a04, 0a3b], [0a3d, 0a3d], [0a43, 0a46], [0a49, 0a4a],
28    [0a4e, 0a50], [0a52, 0a6f], [0a72, 0a74], [0a76, 0a80], [0a84, 0abb],
29    [0abd, 0abd], [0ac6, 0ac6], [0aca, 0aca], [0ace, 0ae1], [0ae4, 0b00],
30    [0b04, 0b3b], [0b3d, 0b3d], [0b45, 0b46], [0b49, 0b4a], [0b4e, 0b55],
31    [0b58, 0b61], [0b64, 0b81], [0b83, 0bbd], [0bc3, 0bc5], [0bc9, 0bc9],
32    [0bce, 0bd6], [0bd8, 0bff], [0c04, 0c3d], [0c45, 0c45], [0c49, 0c49],
33    [0c4e, 0c54], [0c57, 0c61], [0c64, 0c80], [0c84, 0cbb], [0cbd, 0cbd],
34    [0cc5, 0cc5], [0cc9, 0cc9], [0cce, 0cd4], [0cd7, 0ce1], [0ce4, 0d00],
35    [0d04, 0d3d], [0d45, 0d45], [0d49, 0d49], [0d4f, 0d56], [0d58, 0d61],
36    [0d64, 0d81], [0d84, 0dc9], [0dcb, 0dce], [0dd5, 0dd5], [0dd7, 0dd7],
37    [0de0, 0df1], [0df4, 0e30], [0e32, 0e32], [0e3b, 0e46], [0e4f, 0eb0],
38    [0eb2, 0eb2], [0eba, 0eba], [0ebd, 0ec7], [0ece, 0f17], [0f1a, 0f34],
39    [0f36, 0f36], [0f38, 0f38], [0f3a, 0f3d], [0f40, 0f70], [0f85, 0f85],
40    [0f88, 0f8c], [0f98, 0f98], [0fbd, 0fc5], [0fc7, 102c], [1038, 1038],
41    [103f, 1055], [105a, 105d], [1061, 1070], [1075, 1081], [1083, 1083],
42    [1087, 108c], [108e, 109c], [109e, 10ff], [1200, 135c], [1360, 1711],
43    [1715, 1731], [1735, 1751], [1754, 1771], [1774, 17b3], [17d4, 17dc],
44    [17de, 180a], [180f, 1884], [1887, 18a8], [18aa, 191f], [192c, 192f],
45    [193c, 1a16], [1a1c, 1a54], [1a5f, 1a5f], [1a61, 1a61], [1a63, 1a64],
46    [1a7d, 1a7e], [1a80, 1aaf], [1abf, 1aff], [1b05, 1b33], [1b45, 1b6a],
47    [1b74, 1b7f], [1b83, 1ba0], [1bae, 1be5], [1bf4, 1c23], [1c38, 1ccf],
48    [1cd3, 1cd3], [1ce9, 1cec], [1cee, 1cf1], [1cf5, 1cf7], [1cfa, 1dbf],
49    [1df6, 1dfa], [1e00, 200a], [2010, 2027], [202f, 205f], [2070, 20cf],
50    [20f1, 261c], [261e, 26f8], [26fa, 2709], [270e, 2763], [2765, 2cee],
51    [2cf2, 2d7e], [2d80, 2ddf], [2e00, 3029], [3030, 3098], [309b, a66e],
52    [a673, a673], [a67e, a69d], [a6a0, a6ef], [a6f2, a801], [a803, a805],
53    [a807, a80a], [a80c, a822], [a828, a87f], [a882, a8b3], [a8c6, a8df],
54    [a8f2, a925], [a92e, a946], [a954, a95f], [a97d, a97f], [a984, a9b2],
55    [a9c1, a9e4], [a9e6, aa28], [aa37, aa42], [aa44, aa4b], [aa4e, aa7b],
56    [aa7d, aaaf], [aab1, aab1], [aab5, aab6], [aab9, aabd], [aac0, aac0],
57    [aac2, aaea], [aaf0, aaf4], [aaf7, abe2], [abeb, abeb], [abee, abff],
58    [d7a4, d7af], [d7c7, d7ca], [d7fc, d7ff], [e000, fb1d], [fb1f, fdff],
59    [fe10, fe1f], [fe30, fefe], [ff00, ff9d], [ffa0, ffef], [fffc, 101fc],
60    [101fe, 102df], [102e1, 10375], [1037b, 10a00], [10a04, 10a04],
61    [10a07, 10a0b], [10a10, 10a37], [10a3b, 10a3e], [10a40, 10ae4],
62    [10ae7, 10fff], [11003, 11037], [11047, 1107e], [11083, 110af],
63    [110bb, 110bc], [110be, 110ff], [11103, 11126], [11135, 11172],
64    [11174, 1117f], [11183, 111b2], [111c1, 111c1], [111c4, 111c9],
65    [111cd, 1122b], [11238, 1123d], [1123f, 112de], [112eb, 112ff],
66    [11304, 1133b], [1133d, 1133d], [11345, 11346], [11349, 1134a],
67    [1134e, 11356], [11358, 11361], [11364, 11365], [1136d, 1136f],
68    [11375, 11434], [11447, 114af], [114c4, 115ae], [115b6, 115b7],
69    [115c1, 115db], [115de, 1162f], [11641, 116aa], [116b8, 1171c],
70    [1172c, 11c2e], [11c37, 11c37], [11c40, 11c91], [11ca8, 11ca8],
71    [11cb7, 16aef], [16af5, 16b2f], [16b37, 16f50], [16f7f, 16f8e],
72    [16f93, 1bc9c], [1bc9f, 1bc9f], [1bca4, 1d164], [1d16a, 1d16c],
73    [1d183, 1d184], [1d18c, 1d1a9], [1d1ae, 1d241], [1d245, 1d9ff],
74    [1da37, 1da3a], [1da6d, 1da74], [1da76, 1da83], [1da85, 1da9a],
75    [1daa0, 1daa0], [1dab0, 1dfff], [1e007, 1e007], [1e019, 1e01a],
76    [1e022, 1e022], [1e025, 1e025], [1e02b, 1e8cf], [1e8d7, 1e943],
77    [1e94b, 1f1e5], [1f200, 1f384], [1f386, 1f3c2], [1f3c5, 1f3c9],
78    [1f3cc, 1f3fa], [1f400, 1f441], [1f444, 1f445], [1f451, 1f465],
79    [1f46a, 1f46d], [1f46f, 1f46f], [1f479, 1f47b], [1f47d, 1f480],
80    [1f484, 1f484], [1f488, 1f48a], [1f48c, 1f4a9], [1f4ab, 1f574],
81    [1f576, 1f579], [1f57b, 1f58f], [1f591, 1f594], [1f597, 1f5e7],
82    [1f5e9, 1f644], [1f648, 1f64a], [1f650, 1f6a2], [1f6a4, 1f6b3],
83    [1f6b7, 1f6bf], [1f6c1, 1f917], [1f91f, 1f925], [1f927, 1f92f],
84    [1f931, 1f932], [1f93a, 1f93b], [1f93f, dffff], [e1000, 10ffff]**/
85    const UnicodeSet xx_Set
86        {{{Empty, 1}, {Full, 2}, {Mixed, 1}, {Empty, 1}, {Mixed, 1},
87          {Full, 18}, {Empty, 3}, {Mixed, 1}, {Full, 8}, {Mixed, 1},
88          {Full, 7}, {Mixed, 3}, {Full, 1}, {Mixed, 1}, {Full, 1},
89          {Mixed, 2}, {Full, 2}, {Mixed, 5}, {Full, 2}, {Mixed, 1},
90          {Full, 1}, {Mixed, 4}, {Full, 3}, {Mixed, 1}, {Empty, 1},
91          {Mixed, 23}, {Full, 1}, {Mixed, 13}, {Full, 1}, {Mixed, 2},
92          {Full, 1}, {Mixed, 2}, {Full, 2}, {Mixed, 2}, {Full, 1},
93          {Mixed, 2}, {Full, 1}, {Mixed, 4}, {Full, 2}, {Mixed, 4},
94          {Full, 3}, {Empty, 8}, {Full, 10}, {Mixed, 1}, {Full, 29},
95          {Mixed, 4}, {Full, 1}, {Mixed, 2}, {Full, 1}, {Mixed, 1},
96          {Full, 3}, {Mixed, 2}, {Full, 3}, {Mixed, 1}, {Full, 6},
97          {Mixed, 1}, {Full, 1}, {Mixed, 2}, {Full, 1}, {Mixed, 1},
98          {Full, 2}, {Mixed, 6}, {Full, 1}, {Mixed, 1}, {Full, 1},
99          {Mixed, 1}, {Full, 4}, {Mixed, 2}, {Full, 6}, {Empty, 1},
100          {Mixed, 1}, {Full, 16}, {Mixed, 2}, {Full, 1}, {Mixed, 1},
101          {Full, 2}, {Mixed, 2}, {Full, 40}, {Mixed, 1}, {Full, 6},
102          {Mixed, 2}, {Full, 2}, {Mixed, 1}, {Full, 43}, {Mixed, 1},
103          {Full, 3}, {Mixed, 1}, {Full, 3}, {Empty, 1}, {Full, 17},
104          {Mixed, 1}, {Full, 2}, {Mixed, 1}, {Full, 942}, {Mixed, 2},
105          {Full, 2}, {Mixed, 1}, {Full, 8}, {Mixed, 2}, {Full, 2},
106          {Mixed, 4}, {Full, 1}, {Mixed, 7}, {Full, 1}, {Mixed, 3},
107          {Full, 1}, {Mixed, 3}, {Full, 7}, {Mixed, 1}, {Empty, 349},
108          {Mixed, 3}, {Empty, 64}, {Full, 216}, {Mixed, 1}, {Full, 23},
109          {Mixed, 2}, {Full, 5}, {Mixed, 1}, {Full, 4}, {Mixed, 1},
110          {Full, 2}, {Mixed, 1}, {Full, 15}, {Mixed, 1}, {Full, 7},
111          {Mixed, 1}, {Full, 3}, {Mixed, 1}, {Full, 52}, {Mixed, 2},
112          {Full, 5}, {Mixed, 1}, {Full, 40}, {Mixed, 6}, {Full, 2},
113          {Mixed, 2}, {Full, 1}, {Mixed, 4}, {Full, 2}, {Mixed, 1},
114          {Full, 4}, {Mixed, 6}, {Full, 5}, {Mixed, 2}, {Full, 2},
115          {Mixed, 2}, {Full, 6}, {Mixed, 2}, {Full, 2}, {Mixed, 2},
116          {Full, 2}, {Mixed, 1}, {Full, 2}, {Mixed, 2}, {Full, 39},
117          {Mixed, 1}, {Full, 2}, {Mixed, 2}, {Full, 625}, {Mixed, 1},
118          {Full, 1}, {Mixed, 1}, {Full, 32}, {Mixed, 3}, {Full, 615},
119          {Mixed, 2}, {Full, 165}, {Mixed, 3}, {Full, 4}, {Mixed, 1},
120          {Full, 61}, {Empty, 1}, {Mixed, 1}, {Empty, 1}, {Mixed, 3},
121          {Full, 42}, {Mixed, 2}, {Full, 68}, {Mixed, 1}, {Full, 3},
122          {Mixed, 1}, {Full, 68}, {Mixed, 1}, {Full, 12}, {Mixed, 1},
123          {Full, 1}, {Mixed, 2}, {Full, 2}, {Mixed, 4}, {Full, 5},
124          {Mixed, 2}, {Full, 2}, {Mixed, 1}, {Full, 2}, {Mixed, 1},
125          {Full, 2}, {Mixed, 2}, {Full, 17}, {Mixed, 2}, {Full, 24630},
126          {Empty, 128}, {Full, 6016}},
127         {0x7fffffff, 0xffffdfff, 0xffff0000, 0xfffffc07, 0x0001ffff,
128          0x40000000, 0xffffff49, 0xe800ffc0, 0x000007ff, 0xfffeffff,
129          0x403fffff, 0xffffc260, 0xfffd7fff, 0x0000ffff, 0xfffff800,
130          0xfffe003f, 0xfff007ff, 0x043fffff, 0xffffc110, 0xf1ffffff,
131          0x000fffff, 0xfffffff0, 0x23ffffff, 0xff010000, 0xfffffff3,
132          0xfffffff1, 0x2fffffff, 0xff7fc660, 0xfffffff3, 0xfffffff1,
133          0x2fffffff, 0xfffdc678, 0xffdcffff, 0xfffffff1, 0x2fffffff,
134          0xffffc440, 0xfffffff3, 0xfffffff1, 0x2fffffff, 0xff3fc660,
135          0xfffffff3, 0xfffffffb, 0x3fffffff, 0xff7fc238, 0xfffffff0,
136          0x3fffffff, 0xff9fc220, 0xfffffff3, 0xfffffff1, 0x2fffffff,
137          0xff9fc220, 0xfffffff3, 0xfffffff1, 0x3fffffff, 0xff7f8220,
138          0xfffffff3, 0xfffffff3, 0x00a07bff, 0xfff3ffff, 0xf805ffff,
139          0xffff807f, 0xe405ffff, 0xffffc0ff, 0xfcffffff, 0x3d5fffff,
140          0x0001ffff, 0x01001f20, 0xe0000000, 0xffffffbf, 0x81001fff,
141          0x3c3fffff, 0xffe1fffe, 0xdfffdf8b, 0x1fffffff, 0xffe3ffff,
142          0xffe3ffff, 0xfff3ffff, 0xfff3ffff, 0x000fffff, 0xdff00000,
143          0xffff87ff, 0xffffff9f, 0xfffffdff, 0xf000f000, 0xf07fffff,
144          0x801fffff, 0x6000001a, 0x8000ffff, 0xffffffe0, 0x000fffff,
145          0xffffffe0, 0xfff007ff, 0xfffffff8, 0xffffc001, 0xfff0003f,
146          0xff00000f, 0x0008ffff, 0xfce3de00, 0x07c00000, 0xffff07ff,
147          0xffff80ff, 0xffff0000, 0x0000ffff, 0xfffe0000, 0xdfffffff,
148          0xfdffffff, 0xffffc3ff, 0xffffffef, 0xfffc7fff, 0x7fffffff,
149          0xffff03ff, 0xf9ffffff, 0xc0087fff, 0x3fffffff, 0xfffcffff,
150          0xfffff7bb, 0xffffff07, 0xfffffffc, 0x000fffff, 0xffffffc0,
151          0xfffc0000, 0xffffc03f, 0xfff0007f, 0xe0000000, 0xfffffff0,
152          0x0007ffff, 0xfffffffe, 0xffffffdf, 0xff8001ff, 0xffffcff7,
153          0xefffffff, 0x3e62ffff, 0xfffffffd, 0xff9f07ff, 0xffffc807,
154          0x0000fff0, 0x00000780, 0xf0000000, 0xbfffffff, 0xffff0000,
155          0xffff0000, 0x7fffffff, 0x3fffffff, 0xf000ffff, 0xdfffffff,
156          0xfffffffe, 0xf83fffff, 0xffff0f91, 0x78ffffff, 0xffffff9f,
157          0xfffffff8, 0x00ffffff, 0xffffff80, 0x7fffffff, 0xfffffff8,
158          0xd800ffff, 0xfffffff8, 0xffe0007f, 0xfff7ffff, 0xfffffff8,
159          0x0007ffff, 0xffffe3f2, 0xbf000fff, 0x7fffffff, 0xfffff800,
160          0xfffffff0, 0x2fffffff, 0xff7fc660, 0xffe0e033, 0x001fffff,
161          0xffffff80, 0x0000ffff, 0xfffffff0, 0x00c07fff, 0xcffffffe,
162          0x0000ffff, 0xfffffffe, 0xff0007ff, 0x1fffffff, 0xfffff000,
163          0x00807fff, 0x0003ffff, 0xff800100, 0xffe0ffff, 0xff80ffff,
164          0x0001ffff, 0x80000000, 0xfff87fff, 0x9fffffff, 0xfffffff0,
165          0x00001c1f, 0xfffff018, 0xffffc3ff, 0xffffffe3, 0x07800000,
166          0xffdfe000, 0x07ffffef, 0xffff0001, 0x06000080, 0xfffff824,
167          0xff80ffff, 0xfffff80f, 0x0000003f, 0xffffffdf, 0xfffff3e7,
168          0x07ffffff, 0xfffe0033, 0xee00bc3f, 0xfffff711, 0xfffffbff,
169          0xfbdfffff, 0xff9effff, 0xfffffeff, 0xffff071f, 0xff8ffff7,
170          0xfffffffe, 0x80ffffff, 0x8c06ffbf}};
171    /** Code Point Ranges for PP
172    [0600, 0605], [06dd, 06dd], [070f, 070f], [08e2, 08e2], [0d4e, 0d4e],
173    [110bd, 110bd], [111c2, 111c3]**/
174    const UnicodeSet pp_Set
175        {{{Empty, 48}, {Mixed, 1}, {Empty, 5}, {Mixed, 1}, {Empty, 1},
176          {Mixed, 1}, {Empty, 14}, {Mixed, 1}, {Empty, 34}, {Mixed, 1},
177          {Empty, 2074}, {Mixed, 1}, {Empty, 8}, {Mixed, 1}, {Empty, 32625}},
178         {0x0000003f, 0x20000000, 0x00008000, 0x00000004, 0x00004000,
179          0x20000000, 0x0000000c}};
180    /** Code Point Ranges for CR
181    [000d, 000d]**/
182    const UnicodeSet cr_Set
183        {{{Mixed, 1}, {Empty, 34815}},
184         {0x00002000}};
185    /** Code Point Ranges for LF
186    [000a, 000a]**/
187    const UnicodeSet lf_Set
188        {{{Mixed, 1}, {Empty, 34815}},
189         {0x00000400}};
190    /** Code Point Ranges for CN
191    [0000, 0009], [000b, 000c], [000e, 001f], [007f, 009f], [00ad, 00ad],
192    [061c, 061c], [180e, 180e], [200b, 200b], [200e, 200f], [2028, 202e],
193    [2060, 206f], [d800, dfff], [feff, feff], [fff0, fffb], [1bca0, 1bca3],
194    [1d173, 1d17a], [e0000, e001f], [e0080, e00ff], [e01f0, e0fff]**/
195    const UnicodeSet cn_Set
196        {{{Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Full, 1}, {Mixed, 1},
197          {Empty, 42}, {Mixed, 1}, {Empty, 143}, {Mixed, 1}, {Empty, 63},
198          {Mixed, 2}, {Empty, 1}, {Mixed, 1}, {Empty, 1468}, {Full, 64},
199          {Empty, 247}, {Mixed, 1}, {Empty, 7}, {Mixed, 1}, {Empty, 1509},
200          {Mixed, 1}, {Empty, 165}, {Mixed, 1}, {Empty, 24948}, {Full, 1},
201          {Empty, 3}, {Full, 4}, {Empty, 7}, {Mixed, 1}, {Full, 112},
202          {Empty, 6016}},
203         {0xffffdbff, 0x80000000, 0x00002000, 0x10000000, 0x00004000,
204          0x0000c800, 0x00007f00, 0x0000ffff, 0x80000000, 0x0fff0000,
205          0x0000000f, 0x07f80000, 0xffff0000}};
206    /** Code Point Ranges for EX
207    [0300, 036f], [0483, 0489], [0591, 05bd], [05bf, 05bf], [05c1, 05c2],
208    [05c4, 05c5], [05c7, 05c7], [0610, 061a], [064b, 065f], [0670, 0670],
209    [06d6, 06dc], [06df, 06e4], [06e7, 06e8], [06ea, 06ed], [0711, 0711],
210    [0730, 074a], [07a6, 07b0], [07eb, 07f3], [0816, 0819], [081b, 0823],
211    [0825, 0827], [0829, 082d], [0859, 085b], [08d4, 08e1], [08e3, 0902],
212    [093a, 093a], [093c, 093c], [0941, 0948], [094d, 094d], [0951, 0957],
213    [0962, 0963], [0981, 0981], [09bc, 09bc], [09be, 09be], [09c1, 09c4],
214    [09cd, 09cd], [09d7, 09d7], [09e2, 09e3], [0a01, 0a02], [0a3c, 0a3c],
215    [0a41, 0a42], [0a47, 0a48], [0a4b, 0a4d], [0a51, 0a51], [0a70, 0a71],
216    [0a75, 0a75], [0a81, 0a82], [0abc, 0abc], [0ac1, 0ac5], [0ac7, 0ac8],
217    [0acd, 0acd], [0ae2, 0ae3], [0b01, 0b01], [0b3c, 0b3c], [0b3e, 0b3f],
218    [0b41, 0b44], [0b4d, 0b4d], [0b56, 0b57], [0b62, 0b63], [0b82, 0b82],
219    [0bbe, 0bbe], [0bc0, 0bc0], [0bcd, 0bcd], [0bd7, 0bd7], [0c00, 0c00],
220    [0c3e, 0c40], [0c46, 0c48], [0c4a, 0c4d], [0c55, 0c56], [0c62, 0c63],
221    [0c81, 0c81], [0cbc, 0cbc], [0cbf, 0cbf], [0cc2, 0cc2], [0cc6, 0cc6],
222    [0ccc, 0ccd], [0cd5, 0cd6], [0ce2, 0ce3], [0d01, 0d01], [0d3e, 0d3e],
223    [0d41, 0d44], [0d4d, 0d4d], [0d57, 0d57], [0d62, 0d63], [0dca, 0dca],
224    [0dcf, 0dcf], [0dd2, 0dd4], [0dd6, 0dd6], [0ddf, 0ddf], [0e31, 0e31],
225    [0e34, 0e3a], [0e47, 0e4e], [0eb1, 0eb1], [0eb4, 0eb9], [0ebb, 0ebc],
226    [0ec8, 0ecd], [0f18, 0f19], [0f35, 0f35], [0f37, 0f37], [0f39, 0f39],
227    [0f71, 0f7e], [0f80, 0f84], [0f86, 0f87], [0f8d, 0f97], [0f99, 0fbc],
228    [0fc6, 0fc6], [102d, 1030], [1032, 1037], [1039, 103a], [103d, 103e],
229    [1058, 1059], [105e, 1060], [1071, 1074], [1082, 1082], [1085, 1086],
230    [108d, 108d], [109d, 109d], [135d, 135f], [1712, 1714], [1732, 1734],
231    [1752, 1753], [1772, 1773], [17b4, 17b5], [17b7, 17bd], [17c6, 17c6],
232    [17c9, 17d3], [17dd, 17dd], [180b, 180d], [1885, 1886], [18a9, 18a9],
233    [1920, 1922], [1927, 1928], [1932, 1932], [1939, 193b], [1a17, 1a18],
234    [1a1b, 1a1b], [1a56, 1a56], [1a58, 1a5e], [1a60, 1a60], [1a62, 1a62],
235    [1a65, 1a6c], [1a73, 1a7c], [1a7f, 1a7f], [1ab0, 1abe], [1b00, 1b03],
236    [1b34, 1b34], [1b36, 1b3a], [1b3c, 1b3c], [1b42, 1b42], [1b6b, 1b73],
237    [1b80, 1b81], [1ba2, 1ba5], [1ba8, 1ba9], [1bab, 1bad], [1be6, 1be6],
238    [1be8, 1be9], [1bed, 1bed], [1bef, 1bf1], [1c2c, 1c33], [1c36, 1c37],
239    [1cd0, 1cd2], [1cd4, 1ce0], [1ce2, 1ce8], [1ced, 1ced], [1cf4, 1cf4],
240    [1cf8, 1cf9], [1dc0, 1df5], [1dfb, 1dff], [200c, 200c], [20d0, 20f0],
241    [2cef, 2cf1], [2d7f, 2d7f], [2de0, 2dff], [302a, 302f], [3099, 309a],
242    [a66f, a672], [a674, a67d], [a69e, a69f], [a6f0, a6f1], [a802, a802],
243    [a806, a806], [a80b, a80b], [a825, a826], [a8c4, a8c5], [a8e0, a8f1],
244    [a926, a92d], [a947, a951], [a980, a982], [a9b3, a9b3], [a9b6, a9b9],
245    [a9bc, a9bc], [a9e5, a9e5], [aa29, aa2e], [aa31, aa32], [aa35, aa36],
246    [aa43, aa43], [aa4c, aa4c], [aa7c, aa7c], [aab0, aab0], [aab2, aab4],
247    [aab7, aab8], [aabe, aabf], [aac1, aac1], [aaec, aaed], [aaf6, aaf6],
248    [abe5, abe5], [abe8, abe8], [abed, abed], [fb1e, fb1e], [fe00, fe0f],
249    [fe20, fe2f], [ff9e, ff9f], [101fd, 101fd], [102e0, 102e0],
250    [10376, 1037a], [10a01, 10a03], [10a05, 10a06], [10a0c, 10a0f],
251    [10a38, 10a3a], [10a3f, 10a3f], [10ae5, 10ae6], [11001, 11001],
252    [11038, 11046], [1107f, 11081], [110b3, 110b6], [110b9, 110ba],
253    [11100, 11102], [11127, 1112b], [1112d, 11134], [11173, 11173],
254    [11180, 11181], [111b6, 111be], [111ca, 111cc], [1122f, 11231],
255    [11234, 11234], [11236, 11237], [1123e, 1123e], [112df, 112df],
256    [112e3, 112ea], [11300, 11301], [1133c, 1133c], [1133e, 1133e],
257    [11340, 11340], [11357, 11357], [11366, 1136c], [11370, 11374],
258    [11438, 1143f], [11442, 11444], [11446, 11446], [114b0, 114b0],
259    [114b3, 114b8], [114ba, 114ba], [114bd, 114bd], [114bf, 114c0],
260    [114c2, 114c3], [115af, 115af], [115b2, 115b5], [115bc, 115bd],
261    [115bf, 115c0], [115dc, 115dd], [11633, 1163a], [1163d, 1163d],
262    [1163f, 11640], [116ab, 116ab], [116ad, 116ad], [116b0, 116b5],
263    [116b7, 116b7], [1171d, 1171f], [11722, 11725], [11727, 1172b],
264    [11c30, 11c36], [11c38, 11c3d], [11c3f, 11c3f], [11c92, 11ca7],
265    [11caa, 11cb0], [11cb2, 11cb3], [11cb5, 11cb6], [16af0, 16af4],
266    [16b30, 16b36], [16f8f, 16f92], [1bc9d, 1bc9e], [1d165, 1d165],
267    [1d167, 1d169], [1d16e, 1d172], [1d17b, 1d182], [1d185, 1d18b],
268    [1d1aa, 1d1ad], [1d242, 1d244], [1da00, 1da36], [1da3b, 1da6c],
269    [1da75, 1da75], [1da84, 1da84], [1da9b, 1da9f], [1daa1, 1daaf],
270    [1e000, 1e006], [1e008, 1e018], [1e01b, 1e021], [1e023, 1e024],
271    [1e026, 1e02a], [1e8d0, 1e8d6], [1e944, 1e94a], [e0020, e007f],
272    [e0100, e01ef]**/
273    const UnicodeSet ex_Set
274        {{{Empty, 24}, {Full, 3}, {Mixed, 1}, {Empty, 8}, {Mixed, 1},
275          {Empty, 7}, {Mixed, 3}, {Empty, 1}, {Mixed, 1}, {Empty, 1},
276          {Mixed, 2}, {Empty, 2}, {Mixed, 5}, {Empty, 2}, {Mixed, 1},
277          {Empty, 1}, {Mixed, 4}, {Empty, 3}, {Mixed, 25}, {Empty, 1},
278          {Mixed, 12}, {Empty, 2}, {Mixed, 1}, {Empty, 2}, {Mixed, 2},
279          {Empty, 2}, {Mixed, 2}, {Empty, 1}, {Mixed, 2}, {Empty, 1},
280          {Mixed, 4}, {Empty, 2}, {Mixed, 4}, {Empty, 21}, {Mixed, 1},
281          {Empty, 29}, {Mixed, 4}, {Empty, 1}, {Mixed, 2}, {Empty, 1},
282          {Mixed, 1}, {Empty, 3}, {Mixed, 2}, {Empty, 3}, {Mixed, 1},
283          {Empty, 6}, {Mixed, 1}, {Empty, 1}, {Mixed, 2}, {Empty, 1},
284          {Mixed, 1}, {Empty, 2}, {Mixed, 6}, {Empty, 1}, {Mixed, 1},
285          {Empty, 1}, {Mixed, 1}, {Empty, 4}, {Mixed, 2}, {Empty, 6},
286          {Full, 1}, {Mixed, 1}, {Empty, 16}, {Mixed, 1}, {Empty, 5},
287          {Mixed, 2}, {Empty, 95}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
288          {Empty, 3}, {Full, 1}, {Empty, 17}, {Mixed, 1}, {Empty, 2},
289          {Mixed, 1}, {Empty, 942}, {Mixed, 2}, {Empty, 2}, {Mixed, 1},
290          {Empty, 8}, {Mixed, 2}, {Empty, 4}, {Mixed, 2}, {Empty, 1},
291          {Mixed, 2}, {Empty, 1}, {Mixed, 2}, {Empty, 1}, {Mixed, 1},
292          {Empty, 1}, {Mixed, 3}, {Empty, 1}, {Mixed, 3}, {Empty, 7},
293          {Mixed, 1}, {Empty, 632}, {Mixed, 1}, {Empty, 23}, {Mixed, 2},
294          {Empty, 10}, {Mixed, 1}, {Empty, 18}, {Mixed, 1}, {Empty, 7},
295          {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 52}, {Mixed, 2},
296          {Empty, 5}, {Mixed, 1}, {Empty, 40}, {Mixed, 6}, {Empty, 2},
297          {Mixed, 2}, {Empty, 1}, {Mixed, 4}, {Empty, 2}, {Mixed, 1},
298          {Empty, 4}, {Mixed, 6}, {Empty, 5}, {Mixed, 2}, {Empty, 2},
299          {Mixed, 2}, {Empty, 6}, {Mixed, 2}, {Empty, 2}, {Mixed, 2},
300          {Empty, 2}, {Mixed, 1}, {Empty, 2}, {Mixed, 2}, {Empty, 39},
301          {Mixed, 1}, {Empty, 2}, {Mixed, 2}, {Empty, 625}, {Mixed, 1},
302          {Empty, 1}, {Mixed, 1}, {Empty, 34}, {Mixed, 1}, {Empty, 615},
303          {Mixed, 1}, {Empty, 166}, {Mixed, 3}, {Empty, 4}, {Mixed, 1},
304          {Empty, 61}, {Full, 1}, {Mixed, 1}, {Full, 1}, {Mixed, 3},
305          {Empty, 42}, {Mixed, 2}, {Empty, 68}, {Mixed, 1}, {Empty, 3},
306          {Mixed, 1}, {Empty, 24758}, {Full, 3}, {Empty, 4}, {Full, 7},
307          {Mixed, 1}, {Empty, 6128}},
308         {0x0000ffff, 0x000003f8, 0xfffe0000, 0xbfffffff, 0x000000b6,
309          0x07ff0000, 0xfffff800, 0x00010000, 0x9fc00000, 0x00003d9f,
310          0x00020000, 0xffff0000, 0x000007ff, 0x0001ffc0, 0x000ff800,
311          0xfbc00000, 0x00003eef, 0x0e000000, 0xfff00000, 0xfffffffb,
312          0x00000007, 0x14000000, 0x00fe21fe, 0x0000000c, 0x00000002,
313          0x50000000, 0x0080201e, 0x0000000c, 0x00000006, 0x10000000,
314          0x00023986, 0x00230000, 0x00000006, 0x10000000, 0x000021be,
315          0x0000000c, 0x00000002, 0xd0000000, 0x00c0201e, 0x0000000c,
316          0x00000004, 0x40000000, 0x00802001, 0x00000001, 0xc0000000,
317          0x00603dc1, 0x0000000c, 0x00000002, 0x90000000, 0x00603044,
318          0x0000000c, 0x00000002, 0x40000000, 0x0080201e, 0x0000000c,
319          0x805c8400, 0x07f20000, 0x00007f80, 0x1bf20000, 0x00003f00,
320          0x03000000, 0x02a00000, 0x7ffe0000, 0xfeffe0df, 0x1fffffff,
321          0x00000040, 0x66fde000, 0xc3000000, 0x001e0001, 0x20002064,
322          0xe0000000, 0x001c0000, 0x001c0000, 0x000c0000, 0x000c0000,
323          0x3fb00000, 0x200ffe40, 0x00003800, 0x00000060, 0x00000200,
324          0x0e040187, 0x09800000, 0x7f400000, 0x9ff81fe5, 0x7fff0000,
325          0x0000000f, 0x17d00000, 0x00000004, 0x000ff800, 0x00000003,
326          0x00003b3c, 0x0003a340, 0x00cff000, 0xfff70000, 0x031021fd,
327          0xf83fffff, 0x00001000, 0xffff0000, 0x0001ffff, 0x00038000,
328          0x80000000, 0x0000fc00, 0x06000000, 0x3ff78000, 0xc0000000,
329          0x00030000, 0x00000844, 0x00000060, 0x00000030, 0x0003ffff,
330          0x00003fc0, 0x0003ff80, 0x00000007, 0x13c80000, 0x00000020,
331          0x00667e00, 0x00001008, 0x10000000, 0xc19d0000, 0x00000002,
332          0x00403000, 0x00002120, 0x40000000, 0x0000ffff, 0x0000ffff,
333          0xc0000000, 0x20000000, 0x00000001, 0x07c00000, 0x0000f06e,
334          0x87000000, 0x00000060, 0x00000002, 0xff000000, 0x0000007f,
335          0x80000000, 0x00000003, 0x06780000, 0x00000007, 0x001fef80,
336          0x00080000, 0x00000003, 0x7fc00000, 0x00001c00, 0x40d38000,
337          0x80000000, 0x000007f8, 0x00000003, 0x50000000, 0x00800001,
338          0x001f1fc0, 0xff000000, 0x0000005c, 0xa5f90000, 0x0000000d,
339          0xb03c8000, 0x30000001, 0xa7f80000, 0x00000001, 0x00bf2800,
340          0xe0000000, 0x00000fbc, 0xbf7f0000, 0xfffc0000, 0x006dfcff,
341          0x001f0000, 0x007f0000, 0x00078000, 0x60000000, 0xf807c3a0,
342          0x00000fe7, 0x00003c00, 0x0000001c, 0xf87fffff, 0x00201fff,
343          0xf8000010, 0x0000fffe, 0xf9ffff7f, 0x000007db, 0x007f0000,
344          0x000007f0, 0x0000ffff}};
345    /** Code Point Ranges for RI
346    [1f1e6, 1f1ff]**/
347    const UnicodeSet ri_Set
348        {{{Empty, 3983}, {Mixed, 1}, {Empty, 30832}},
349         {0xffffffc0}};
350    /** Code Point Ranges for SM
351    [0903, 0903], [093b, 093b], [093e, 0940], [0949, 094c], [094e, 094f],
352    [0982, 0983], [09bf, 09c0], [09c7, 09c8], [09cb, 09cc], [0a03, 0a03],
353    [0a3e, 0a40], [0a83, 0a83], [0abe, 0ac0], [0ac9, 0ac9], [0acb, 0acc],
354    [0b02, 0b03], [0b40, 0b40], [0b47, 0b48], [0b4b, 0b4c], [0bbf, 0bbf],
355    [0bc1, 0bc2], [0bc6, 0bc8], [0bca, 0bcc], [0c01, 0c03], [0c41, 0c44],
356    [0c82, 0c83], [0cbe, 0cbe], [0cc0, 0cc1], [0cc3, 0cc4], [0cc7, 0cc8],
357    [0cca, 0ccb], [0d02, 0d03], [0d3f, 0d40], [0d46, 0d48], [0d4a, 0d4c],
358    [0d82, 0d83], [0dd0, 0dd1], [0dd8, 0dde], [0df2, 0df3], [0e33, 0e33],
359    [0eb3, 0eb3], [0f3e, 0f3f], [0f7f, 0f7f], [1031, 1031], [103b, 103c],
360    [1056, 1057], [1084, 1084], [17b6, 17b6], [17be, 17c5], [17c7, 17c8],
361    [1923, 1926], [1929, 192b], [1930, 1931], [1933, 1938], [1a19, 1a1a],
362    [1a55, 1a55], [1a57, 1a57], [1a6d, 1a72], [1b04, 1b04], [1b35, 1b35],
363    [1b3b, 1b3b], [1b3d, 1b41], [1b43, 1b44], [1b82, 1b82], [1ba1, 1ba1],
364    [1ba6, 1ba7], [1baa, 1baa], [1be7, 1be7], [1bea, 1bec], [1bee, 1bee],
365    [1bf2, 1bf3], [1c24, 1c2b], [1c34, 1c35], [1ce1, 1ce1], [1cf2, 1cf3],
366    [a823, a824], [a827, a827], [a880, a881], [a8b4, a8c3], [a952, a953],
367    [a983, a983], [a9b4, a9b5], [a9ba, a9bb], [a9bd, a9c0], [aa2f, aa30],
368    [aa33, aa34], [aa4d, aa4d], [aaeb, aaeb], [aaee, aaef], [aaf5, aaf5],
369    [abe3, abe4], [abe6, abe7], [abe9, abea], [abec, abec], [11000, 11000],
370    [11002, 11002], [11082, 11082], [110b0, 110b2], [110b7, 110b8],
371    [1112c, 1112c], [11182, 11182], [111b3, 111b5], [111bf, 111c0],
372    [1122c, 1122e], [11232, 11233], [11235, 11235], [112e0, 112e2],
373    [11302, 11303], [1133f, 1133f], [11341, 11344], [11347, 11348],
374    [1134b, 1134d], [11362, 11363], [11435, 11437], [11440, 11441],
375    [11445, 11445], [114b1, 114b2], [114b9, 114b9], [114bb, 114bc],
376    [114be, 114be], [114c1, 114c1], [115b0, 115b1], [115b8, 115bb],
377    [115be, 115be], [11630, 11632], [1163b, 1163c], [1163e, 1163e],
378    [116ac, 116ac], [116ae, 116af], [116b6, 116b6], [11720, 11721],
379    [11726, 11726], [11c2f, 11c2f], [11c3e, 11c3e], [11ca9, 11ca9],
380    [11cb1, 11cb1], [11cb4, 11cb4], [16f51, 16f7e], [1d166, 1d166],
381    [1d16d, 1d16d]**/
382    const UnicodeSet sm_Set
383        {{{Empty, 72}, {Mixed, 3}, {Empty, 1}, {Mixed, 3}, {Empty, 1},
384          {Mixed, 3}, {Empty, 1}, {Mixed, 3}, {Empty, 1}, {Mixed, 1},
385          {Empty, 1}, {Mixed, 1}, {Empty, 2}, {Mixed, 2}, {Empty, 1},
386          {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 1}, {Mixed, 3},
387          {Empty, 1}, {Mixed, 3}, {Empty, 1}, {Mixed, 1}, {Empty, 1},
388          {Mixed, 2}, {Empty, 1}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
389          {Empty, 3}, {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 5},
390          {Mixed, 2}, {Empty, 1}, {Mixed, 1}, {Empty, 56}, {Mixed, 2},
391          {Empty, 10}, {Mixed, 1}, {Empty, 6}, {Mixed, 1}, {Empty, 1},
392          {Mixed, 2}, {Empty, 4}, {Mixed, 3}, {Empty, 1}, {Mixed, 2},
393          {Empty, 1}, {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 5},
394          {Mixed, 1}, {Empty, 1113}, {Mixed, 1}, {Empty, 2}, {Mixed, 3},
395          {Empty, 3}, {Mixed, 1}, {Empty, 1}, {Mixed, 3}, {Empty, 2},
396          {Mixed, 2}, {Empty, 4}, {Mixed, 1}, {Empty, 7}, {Mixed, 1},
397          {Empty, 800}, {Mixed, 1}, {Empty, 3}, {Mixed, 2}, {Empty, 3},
398          {Mixed, 1}, {Empty, 2}, {Mixed, 3}, {Empty, 2}, {Mixed, 1},
399          {Empty, 5}, {Mixed, 5}, {Empty, 5}, {Mixed, 2}, {Empty, 2},
400          {Mixed, 2}, {Empty, 6}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
401          {Empty, 3}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 39},
402          {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 660}, {Mixed, 2},
403          {Empty, 783}, {Mixed, 1}, {Empty, 31092}},
404         {0x00000008, 0xc8000000, 0x0000de01, 0x0000000c, 0x80000000,
405          0x00001981, 0x00000008, 0xc0000000, 0x00000001, 0x00000008,
406          0xc0000000, 0x00001a01, 0x0000000c, 0x00001981, 0x80000000,
407          0x00001dc6, 0x0000000e, 0x0000001e, 0x0000000c, 0x40000000,
408          0x00000d9b, 0x0000000c, 0x80000000, 0x00001dc1, 0x0000000c,
409          0x7f030000, 0x000c0000, 0x00080000, 0x00080000, 0xc0000000,
410          0x80000000, 0x18020000, 0x00c00000, 0x00000010, 0xc0400000,
411          0x000001bf, 0x01fb0e78, 0x06000000, 0x00a00000, 0x0007e000,
412          0x00000010, 0xe8200000, 0x0000001b, 0x00000004, 0x000004c2,
413          0x000c5c80, 0x00300ff0, 0x000c0002, 0x00000098, 0x00000003,
414          0xfff00000, 0x0000000f, 0x000c0000, 0x00000008, 0xec300000,
415          0x00000001, 0x00198000, 0x00002000, 0x0020c800, 0x000016d8,
416          0x00000005, 0x00000004, 0x01870000, 0x00001000, 0x00000004,
417          0x80380000, 0x00000001, 0x002c7000, 0x00000007, 0x0000000c,
418          0x80000000, 0x0000399e, 0x0000000c, 0x00e00000, 0x00000023,
419          0x5a060000, 0x00000002, 0x4f030000, 0x58070000, 0x0040d000,
420          0x00000043, 0x40008000, 0x00120200, 0xfffe0000, 0x7fffffff,
421          0x00002040}};
422    /** Code Point Ranges for L
423    [1100, 115f], [a960, a97c]**/
424    const UnicodeSet l_Set
425        {{{Empty, 136}, {Full, 3}, {Empty, 1216}, {Mixed, 1},
426          {Empty, 33460}},
427         {0x1fffffff}};
428    /** Code Point Ranges for V
429    [1160, 11a7], [d7b0, d7c6]**/
430    const UnicodeSet v_Set
431        {{{Empty, 139}, {Full, 2}, {Mixed, 1}, {Empty, 1583}, {Mixed, 2},
432          {Empty, 33089}},
433         {0x000000ff, 0xffff0000, 0x0000007f}};
434    /** Code Point Ranges for T
435    [11a8, 11ff], [d7cb, d7fb]**/
436    const UnicodeSet t_Set
437        {{{Empty, 141}, {Mixed, 1}, {Full, 2}, {Empty, 1582}, {Mixed, 2},
438          {Empty, 33088}},
439         {0xffffff00, 0xfffff800, 0x0fffffff}};
440    /** Code Point Ranges for LV
441    [ac00, ac00], [ac1c, ac1c], [ac38, ac38], [ac54, ac54], [ac70, ac70],
442    [ac8c, ac8c], [aca8, aca8], [acc4, acc4], [ace0, ace0], [acfc, acfc],
443    [ad18, ad18], [ad34, ad34], [ad50, ad50], [ad6c, ad6c], [ad88, ad88],
444    [ada4, ada4], [adc0, adc0], [addc, addc], [adf8, adf8], [ae14, ae14],
445    [ae30, ae30], [ae4c, ae4c], [ae68, ae68], [ae84, ae84], [aea0, aea0],
446    [aebc, aebc], [aed8, aed8], [aef4, aef4], [af10, af10], [af2c, af2c],
447    [af48, af48], [af64, af64], [af80, af80], [af9c, af9c], [afb8, afb8],
448    [afd4, afd4], [aff0, aff0], [b00c, b00c], [b028, b028], [b044, b044],
449    [b060, b060], [b07c, b07c], [b098, b098], [b0b4, b0b4], [b0d0, b0d0],
450    [b0ec, b0ec], [b108, b108], [b124, b124], [b140, b140], [b15c, b15c],
451    [b178, b178], [b194, b194], [b1b0, b1b0], [b1cc, b1cc], [b1e8, b1e8],
452    [b204, b204], [b220, b220], [b23c, b23c], [b258, b258], [b274, b274],
453    [b290, b290], [b2ac, b2ac], [b2c8, b2c8], [b2e4, b2e4], [b300, b300],
454    [b31c, b31c], [b338, b338], [b354, b354], [b370, b370], [b38c, b38c],
455    [b3a8, b3a8], [b3c4, b3c4], [b3e0, b3e0], [b3fc, b3fc], [b418, b418],
456    [b434, b434], [b450, b450], [b46c, b46c], [b488, b488], [b4a4, b4a4],
457    [b4c0, b4c0], [b4dc, b4dc], [b4f8, b4f8], [b514, b514], [b530, b530],
458    [b54c, b54c], [b568, b568], [b584, b584], [b5a0, b5a0], [b5bc, b5bc],
459    [b5d8, b5d8], [b5f4, b5f4], [b610, b610], [b62c, b62c], [b648, b648],
460    [b664, b664], [b680, b680], [b69c, b69c], [b6b8, b6b8], [b6d4, b6d4],
461    [b6f0, b6f0], [b70c, b70c], [b728, b728], [b744, b744], [b760, b760],
462    [b77c, b77c], [b798, b798], [b7b4, b7b4], [b7d0, b7d0], [b7ec, b7ec],
463    [b808, b808], [b824, b824], [b840, b840], [b85c, b85c], [b878, b878],
464    [b894, b894], [b8b0, b8b0], [b8cc, b8cc], [b8e8, b8e8], [b904, b904],
465    [b920, b920], [b93c, b93c], [b958, b958], [b974, b974], [b990, b990],
466    [b9ac, b9ac], [b9c8, b9c8], [b9e4, b9e4], [ba00, ba00], [ba1c, ba1c],
467    [ba38, ba38], [ba54, ba54], [ba70, ba70], [ba8c, ba8c], [baa8, baa8],
468    [bac4, bac4], [bae0, bae0], [bafc, bafc], [bb18, bb18], [bb34, bb34],
469    [bb50, bb50], [bb6c, bb6c], [bb88, bb88], [bba4, bba4], [bbc0, bbc0],
470    [bbdc, bbdc], [bbf8, bbf8], [bc14, bc14], [bc30, bc30], [bc4c, bc4c],
471    [bc68, bc68], [bc84, bc84], [bca0, bca0], [bcbc, bcbc], [bcd8, bcd8],
472    [bcf4, bcf4], [bd10, bd10], [bd2c, bd2c], [bd48, bd48], [bd64, bd64],
473    [bd80, bd80], [bd9c, bd9c], [bdb8, bdb8], [bdd4, bdd4], [bdf0, bdf0],
474    [be0c, be0c], [be28, be28], [be44, be44], [be60, be60], [be7c, be7c],
475    [be98, be98], [beb4, beb4], [bed0, bed0], [beec, beec], [bf08, bf08],
476    [bf24, bf24], [bf40, bf40], [bf5c, bf5c], [bf78, bf78], [bf94, bf94],
477    [bfb0, bfb0], [bfcc, bfcc], [bfe8, bfe8], [c004, c004], [c020, c020],
478    [c03c, c03c], [c058, c058], [c074, c074], [c090, c090], [c0ac, c0ac],
479    [c0c8, c0c8], [c0e4, c0e4], [c100, c100], [c11c, c11c], [c138, c138],
480    [c154, c154], [c170, c170], [c18c, c18c], [c1a8, c1a8], [c1c4, c1c4],
481    [c1e0, c1e0], [c1fc, c1fc], [c218, c218], [c234, c234], [c250, c250],
482    [c26c, c26c], [c288, c288], [c2a4, c2a4], [c2c0, c2c0], [c2dc, c2dc],
483    [c2f8, c2f8], [c314, c314], [c330, c330], [c34c, c34c], [c368, c368],
484    [c384, c384], [c3a0, c3a0], [c3bc, c3bc], [c3d8, c3d8], [c3f4, c3f4],
485    [c410, c410], [c42c, c42c], [c448, c448], [c464, c464], [c480, c480],
486    [c49c, c49c], [c4b8, c4b8], [c4d4, c4d4], [c4f0, c4f0], [c50c, c50c],
487    [c528, c528], [c544, c544], [c560, c560], [c57c, c57c], [c598, c598],
488    [c5b4, c5b4], [c5d0, c5d0], [c5ec, c5ec], [c608, c608], [c624, c624],
489    [c640, c640], [c65c, c65c], [c678, c678], [c694, c694], [c6b0, c6b0],
490    [c6cc, c6cc], [c6e8, c6e8], [c704, c704], [c720, c720], [c73c, c73c],
491    [c758, c758], [c774, c774], [c790, c790], [c7ac, c7ac], [c7c8, c7c8],
492    [c7e4, c7e4], [c800, c800], [c81c, c81c], [c838, c838], [c854, c854],
493    [c870, c870], [c88c, c88c], [c8a8, c8a8], [c8c4, c8c4], [c8e0, c8e0],
494    [c8fc, c8fc], [c918, c918], [c934, c934], [c950, c950], [c96c, c96c],
495    [c988, c988], [c9a4, c9a4], [c9c0, c9c0], [c9dc, c9dc], [c9f8, c9f8],
496    [ca14, ca14], [ca30, ca30], [ca4c, ca4c], [ca68, ca68], [ca84, ca84],
497    [caa0, caa0], [cabc, cabc], [cad8, cad8], [caf4, caf4], [cb10, cb10],
498    [cb2c, cb2c], [cb48, cb48], [cb64, cb64], [cb80, cb80], [cb9c, cb9c],
499    [cbb8, cbb8], [cbd4, cbd4], [cbf0, cbf0], [cc0c, cc0c], [cc28, cc28],
500    [cc44, cc44], [cc60, cc60], [cc7c, cc7c], [cc98, cc98], [ccb4, ccb4],
501    [ccd0, ccd0], [ccec, ccec], [cd08, cd08], [cd24, cd24], [cd40, cd40],
502    [cd5c, cd5c], [cd78, cd78], [cd94, cd94], [cdb0, cdb0], [cdcc, cdcc],
503    [cde8, cde8], [ce04, ce04], [ce20, ce20], [ce3c, ce3c], [ce58, ce58],
504    [ce74, ce74], [ce90, ce90], [ceac, ceac], [cec8, cec8], [cee4, cee4],
505    [cf00, cf00], [cf1c, cf1c], [cf38, cf38], [cf54, cf54], [cf70, cf70],
506    [cf8c, cf8c], [cfa8, cfa8], [cfc4, cfc4], [cfe0, cfe0], [cffc, cffc],
507    [d018, d018], [d034, d034], [d050, d050], [d06c, d06c], [d088, d088],
508    [d0a4, d0a4], [d0c0, d0c0], [d0dc, d0dc], [d0f8, d0f8], [d114, d114],
509    [d130, d130], [d14c, d14c], [d168, d168], [d184, d184], [d1a0, d1a0],
510    [d1bc, d1bc], [d1d8, d1d8], [d1f4, d1f4], [d210, d210], [d22c, d22c],
511    [d248, d248], [d264, d264], [d280, d280], [d29c, d29c], [d2b8, d2b8],
512    [d2d4, d2d4], [d2f0, d2f0], [d30c, d30c], [d328, d328], [d344, d344],
513    [d360, d360], [d37c, d37c], [d398, d398], [d3b4, d3b4], [d3d0, d3d0],
514    [d3ec, d3ec], [d408, d408], [d424, d424], [d440, d440], [d45c, d45c],
515    [d478, d478], [d494, d494], [d4b0, d4b0], [d4cc, d4cc], [d4e8, d4e8],
516    [d504, d504], [d520, d520], [d53c, d53c], [d558, d558], [d574, d574],
517    [d590, d590], [d5ac, d5ac], [d5c8, d5c8], [d5e4, d5e4], [d600, d600],
518    [d61c, d61c], [d638, d638], [d654, d654], [d670, d670], [d68c, d68c],
519    [d6a8, d6a8], [d6c4, d6c4], [d6e0, d6e0], [d6fc, d6fc], [d718, d718],
520    [d734, d734], [d750, d750], [d76c, d76c], [d788, d788]**/
521    const UnicodeSet lv_Set
522        {{{Empty, 1376}, {Mixed, 349}, {Empty, 33091}},
523         {0x10000001, 0x01000000, 0x00100000, 0x00010000, 0x00001000,
524          0x00000100, 0x00000010, 0x10000001, 0x01000000, 0x00100000,
525          0x00010000, 0x00001000, 0x00000100, 0x00000010, 0x10000001,
526          0x01000000, 0x00100000, 0x00010000, 0x00001000, 0x00000100,
527          0x00000010, 0x10000001, 0x01000000, 0x00100000, 0x00010000,
528          0x00001000, 0x00000100, 0x00000010, 0x10000001, 0x01000000,
529          0x00100000, 0x00010000, 0x00001000, 0x00000100, 0x00000010,
530          0x10000001, 0x01000000, 0x00100000, 0x00010000, 0x00001000,
531          0x00000100, 0x00000010, 0x10000001, 0x01000000, 0x00100000,
532          0x00010000, 0x00001000, 0x00000100, 0x00000010, 0x10000001,
533          0x01000000, 0x00100000, 0x00010000, 0x00001000, 0x00000100,
534          0x00000010, 0x10000001, 0x01000000, 0x00100000, 0x00010000,
535          0x00001000, 0x00000100, 0x00000010, 0x10000001, 0x01000000,
536          0x00100000, 0x00010000, 0x00001000, 0x00000100, 0x00000010,
537          0x10000001, 0x01000000, 0x00100000, 0x00010000, 0x00001000,
538          0x00000100, 0x00000010, 0x10000001, 0x01000000, 0x00100000,
539          0x00010000, 0x00001000, 0x00000100, 0x00000010, 0x10000001,
540          0x01000000, 0x00100000, 0x00010000, 0x00001000, 0x00000100,
541          0x00000010, 0x10000001, 0x01000000, 0x00100000, 0x00010000,
542          0x00001000, 0x00000100, 0x00000010, 0x10000001, 0x01000000,
543          0x00100000, 0x00010000, 0x00001000, 0x00000100, 0x00000010,
544          0x10000001, 0x01000000, 0x00100000, 0x00010000, 0x00001000,
545          0x00000100, 0x00000010, 0x10000001, 0x01000000, 0x00100000,
546          0x00010000, 0x00001000, 0x00000100, 0x00000010, 0x10000001,
547          0x01000000, 0x00100000, 0x00010000, 0x00001000, 0x00000100,
548          0x00000010, 0x10000001, 0x01000000, 0x00100000, 0x00010000,
549          0x00001000, 0x00000100, 0x00000010, 0x10000001, 0x01000000,
550          0x00100000, 0x00010000, 0x00001000, 0x00000100, 0x00000010,
551          0x10000001, 0x01000000, 0x00100000, 0x00010000, 0x00001000,
552          0x00000100, 0x00000010, 0x10000001, 0x01000000, 0x00100000,
553          0x00010000, 0x00001000, 0x00000100, 0x00000010, 0x10000001,
554          0x01000000, 0x00100000, 0x00010000, 0x00001000, 0x00000100,
555          0x00000010, 0x10000001, 0x01000000, 0x00100000, 0x00010000,
556          0x00001000, 0x00000100, 0x00000010, 0x10000001, 0x01000000,
557          0x00100000, 0x00010000, 0x00001000, 0x00000100, 0x00000010,
558          0x10000001, 0x01000000, 0x00100000, 0x00010000, 0x00001000,
559          0x00000100, 0x00000010, 0x10000001, 0x01000000, 0x00100000,
560          0x00010000, 0x00001000, 0x00000100, 0x00000010, 0x10000001,
561          0x01000000, 0x00100000, 0x00010000, 0x00001000, 0x00000100,
562          0x00000010, 0x10000001, 0x01000000, 0x00100000, 0x00010000,
563          0x00001000, 0x00000100, 0x00000010, 0x10000001, 0x01000000,
564          0x00100000, 0x00010000, 0x00001000, 0x00000100, 0x00000010,
565          0x10000001, 0x01000000, 0x00100000, 0x00010000, 0x00001000,
566          0x00000100, 0x00000010, 0x10000001, 0x01000000, 0x00100000,
567          0x00010000, 0x00001000, 0x00000100, 0x00000010, 0x10000001,
568          0x01000000, 0x00100000, 0x00010000, 0x00001000, 0x00000100,
569          0x00000010, 0x10000001, 0x01000000, 0x00100000, 0x00010000,
570          0x00001000, 0x00000100, 0x00000010, 0x10000001, 0x01000000,
571          0x00100000, 0x00010000, 0x00001000, 0x00000100, 0x00000010,
572          0x10000001, 0x01000000, 0x00100000, 0x00010000, 0x00001000,
573          0x00000100, 0x00000010, 0x10000001, 0x01000000, 0x00100000,
574          0x00010000, 0x00001000, 0x00000100, 0x00000010, 0x10000001,
575          0x01000000, 0x00100000, 0x00010000, 0x00001000, 0x00000100,
576          0x00000010, 0x10000001, 0x01000000, 0x00100000, 0x00010000,
577          0x00001000, 0x00000100, 0x00000010, 0x10000001, 0x01000000,
578          0x00100000, 0x00010000, 0x00001000, 0x00000100, 0x00000010,
579          0x10000001, 0x01000000, 0x00100000, 0x00010000, 0x00001000,
580          0x00000100, 0x00000010, 0x10000001, 0x01000000, 0x00100000,
581          0x00010000, 0x00001000, 0x00000100, 0x00000010, 0x10000001,
582          0x01000000, 0x00100000, 0x00010000, 0x00001000, 0x00000100,
583          0x00000010, 0x10000001, 0x01000000, 0x00100000, 0x00010000,
584          0x00001000, 0x00000100, 0x00000010, 0x10000001, 0x01000000,
585          0x00100000, 0x00010000, 0x00001000, 0x00000100, 0x00000010,
586          0x10000001, 0x01000000, 0x00100000, 0x00010000, 0x00001000,
587          0x00000100, 0x00000010, 0x10000001, 0x01000000, 0x00100000,
588          0x00010000, 0x00001000, 0x00000100, 0x00000010, 0x10000001,
589          0x01000000, 0x00100000, 0x00010000, 0x00001000, 0x00000100,
590          0x00000010, 0x10000001, 0x01000000, 0x00100000, 0x00010000,
591          0x00001000, 0x00000100, 0x00000010, 0x10000001, 0x01000000,
592          0x00100000, 0x00010000, 0x00001000, 0x00000100}};
593    /** Code Point Ranges for LVT
594    [ac01, ac1b], [ac1d, ac37], [ac39, ac53], [ac55, ac6f], [ac71, ac8b],
595    [ac8d, aca7], [aca9, acc3], [acc5, acdf], [ace1, acfb], [acfd, ad17],
596    [ad19, ad33], [ad35, ad4f], [ad51, ad6b], [ad6d, ad87], [ad89, ada3],
597    [ada5, adbf], [adc1, addb], [addd, adf7], [adf9, ae13], [ae15, ae2f],
598    [ae31, ae4b], [ae4d, ae67], [ae69, ae83], [ae85, ae9f], [aea1, aebb],
599    [aebd, aed7], [aed9, aef3], [aef5, af0f], [af11, af2b], [af2d, af47],
600    [af49, af63], [af65, af7f], [af81, af9b], [af9d, afb7], [afb9, afd3],
601    [afd5, afef], [aff1, b00b], [b00d, b027], [b029, b043], [b045, b05f],
602    [b061, b07b], [b07d, b097], [b099, b0b3], [b0b5, b0cf], [b0d1, b0eb],
603    [b0ed, b107], [b109, b123], [b125, b13f], [b141, b15b], [b15d, b177],
604    [b179, b193], [b195, b1af], [b1b1, b1cb], [b1cd, b1e7], [b1e9, b203],
605    [b205, b21f], [b221, b23b], [b23d, b257], [b259, b273], [b275, b28f],
606    [b291, b2ab], [b2ad, b2c7], [b2c9, b2e3], [b2e5, b2ff], [b301, b31b],
607    [b31d, b337], [b339, b353], [b355, b36f], [b371, b38b], [b38d, b3a7],
608    [b3a9, b3c3], [b3c5, b3df], [b3e1, b3fb], [b3fd, b417], [b419, b433],
609    [b435, b44f], [b451, b46b], [b46d, b487], [b489, b4a3], [b4a5, b4bf],
610    [b4c1, b4db], [b4dd, b4f7], [b4f9, b513], [b515, b52f], [b531, b54b],
611    [b54d, b567], [b569, b583], [b585, b59f], [b5a1, b5bb], [b5bd, b5d7],
612    [b5d9, b5f3], [b5f5, b60f], [b611, b62b], [b62d, b647], [b649, b663],
613    [b665, b67f], [b681, b69b], [b69d, b6b7], [b6b9, b6d3], [b6d5, b6ef],
614    [b6f1, b70b], [b70d, b727], [b729, b743], [b745, b75f], [b761, b77b],
615    [b77d, b797], [b799, b7b3], [b7b5, b7cf], [b7d1, b7eb], [b7ed, b807],
616    [b809, b823], [b825, b83f], [b841, b85b], [b85d, b877], [b879, b893],
617    [b895, b8af], [b8b1, b8cb], [b8cd, b8e7], [b8e9, b903], [b905, b91f],
618    [b921, b93b], [b93d, b957], [b959, b973], [b975, b98f], [b991, b9ab],
619    [b9ad, b9c7], [b9c9, b9e3], [b9e5, b9ff], [ba01, ba1b], [ba1d, ba37],
620    [ba39, ba53], [ba55, ba6f], [ba71, ba8b], [ba8d, baa7], [baa9, bac3],
621    [bac5, badf], [bae1, bafb], [bafd, bb17], [bb19, bb33], [bb35, bb4f],
622    [bb51, bb6b], [bb6d, bb87], [bb89, bba3], [bba5, bbbf], [bbc1, bbdb],
623    [bbdd, bbf7], [bbf9, bc13], [bc15, bc2f], [bc31, bc4b], [bc4d, bc67],
624    [bc69, bc83], [bc85, bc9f], [bca1, bcbb], [bcbd, bcd7], [bcd9, bcf3],
625    [bcf5, bd0f], [bd11, bd2b], [bd2d, bd47], [bd49, bd63], [bd65, bd7f],
626    [bd81, bd9b], [bd9d, bdb7], [bdb9, bdd3], [bdd5, bdef], [bdf1, be0b],
627    [be0d, be27], [be29, be43], [be45, be5f], [be61, be7b], [be7d, be97],
628    [be99, beb3], [beb5, becf], [bed1, beeb], [beed, bf07], [bf09, bf23],
629    [bf25, bf3f], [bf41, bf5b], [bf5d, bf77], [bf79, bf93], [bf95, bfaf],
630    [bfb1, bfcb], [bfcd, bfe7], [bfe9, c003], [c005, c01f], [c021, c03b],
631    [c03d, c057], [c059, c073], [c075, c08f], [c091, c0ab], [c0ad, c0c7],
632    [c0c9, c0e3], [c0e5, c0ff], [c101, c11b], [c11d, c137], [c139, c153],
633    [c155, c16f], [c171, c18b], [c18d, c1a7], [c1a9, c1c3], [c1c5, c1df],
634    [c1e1, c1fb], [c1fd, c217], [c219, c233], [c235, c24f], [c251, c26b],
635    [c26d, c287], [c289, c2a3], [c2a5, c2bf], [c2c1, c2db], [c2dd, c2f7],
636    [c2f9, c313], [c315, c32f], [c331, c34b], [c34d, c367], [c369, c383],
637    [c385, c39f], [c3a1, c3bb], [c3bd, c3d7], [c3d9, c3f3], [c3f5, c40f],
638    [c411, c42b], [c42d, c447], [c449, c463], [c465, c47f], [c481, c49b],
639    [c49d, c4b7], [c4b9, c4d3], [c4d5, c4ef], [c4f1, c50b], [c50d, c527],
640    [c529, c543], [c545, c55f], [c561, c57b], [c57d, c597], [c599, c5b3],
641    [c5b5, c5cf], [c5d1, c5eb], [c5ed, c607], [c609, c623], [c625, c63f],
642    [c641, c65b], [c65d, c677], [c679, c693], [c695, c6af], [c6b1, c6cb],
643    [c6cd, c6e7], [c6e9, c703], [c705, c71f], [c721, c73b], [c73d, c757],
644    [c759, c773], [c775, c78f], [c791, c7ab], [c7ad, c7c7], [c7c9, c7e3],
645    [c7e5, c7ff], [c801, c81b], [c81d, c837], [c839, c853], [c855, c86f],
646    [c871, c88b], [c88d, c8a7], [c8a9, c8c3], [c8c5, c8df], [c8e1, c8fb],
647    [c8fd, c917], [c919, c933], [c935, c94f], [c951, c96b], [c96d, c987],
648    [c989, c9a3], [c9a5, c9bf], [c9c1, c9db], [c9dd, c9f7], [c9f9, ca13],
649    [ca15, ca2f], [ca31, ca4b], [ca4d, ca67], [ca69, ca83], [ca85, ca9f],
650    [caa1, cabb], [cabd, cad7], [cad9, caf3], [caf5, cb0f], [cb11, cb2b],
651    [cb2d, cb47], [cb49, cb63], [cb65, cb7f], [cb81, cb9b], [cb9d, cbb7],
652    [cbb9, cbd3], [cbd5, cbef], [cbf1, cc0b], [cc0d, cc27], [cc29, cc43],
653    [cc45, cc5f], [cc61, cc7b], [cc7d, cc97], [cc99, ccb3], [ccb5, cccf],
654    [ccd1, cceb], [cced, cd07], [cd09, cd23], [cd25, cd3f], [cd41, cd5b],
655    [cd5d, cd77], [cd79, cd93], [cd95, cdaf], [cdb1, cdcb], [cdcd, cde7],
656    [cde9, ce03], [ce05, ce1f], [ce21, ce3b], [ce3d, ce57], [ce59, ce73],
657    [ce75, ce8f], [ce91, ceab], [cead, cec7], [cec9, cee3], [cee5, ceff],
658    [cf01, cf1b], [cf1d, cf37], [cf39, cf53], [cf55, cf6f], [cf71, cf8b],
659    [cf8d, cfa7], [cfa9, cfc3], [cfc5, cfdf], [cfe1, cffb], [cffd, d017],
660    [d019, d033], [d035, d04f], [d051, d06b], [d06d, d087], [d089, d0a3],
661    [d0a5, d0bf], [d0c1, d0db], [d0dd, d0f7], [d0f9, d113], [d115, d12f],
662    [d131, d14b], [d14d, d167], [d169, d183], [d185, d19f], [d1a1, d1bb],
663    [d1bd, d1d7], [d1d9, d1f3], [d1f5, d20f], [d211, d22b], [d22d, d247],
664    [d249, d263], [d265, d27f], [d281, d29b], [d29d, d2b7], [d2b9, d2d3],
665    [d2d5, d2ef], [d2f1, d30b], [d30d, d327], [d329, d343], [d345, d35f],
666    [d361, d37b], [d37d, d397], [d399, d3b3], [d3b5, d3cf], [d3d1, d3eb],
667    [d3ed, d407], [d409, d423], [d425, d43f], [d441, d45b], [d45d, d477],
668    [d479, d493], [d495, d4af], [d4b1, d4cb], [d4cd, d4e7], [d4e9, d503],
669    [d505, d51f], [d521, d53b], [d53d, d557], [d559, d573], [d575, d58f],
670    [d591, d5ab], [d5ad, d5c7], [d5c9, d5e3], [d5e5, d5ff], [d601, d61b],
671    [d61d, d637], [d639, d653], [d655, d66f], [d671, d68b], [d68d, d6a7],
672    [d6a9, d6c3], [d6c5, d6df], [d6e1, d6fb], [d6fd, d717], [d719, d733],
673    [d735, d74f], [d751, d76b], [d76d, d787], [d789, d7a3]**/
674    const UnicodeSet lvt_Set
675        {{{Empty, 1376}, {Mixed, 350}, {Empty, 33090}},
676         {0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff,
677          0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff,
678          0xfffeffff, 0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe,
679          0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff,
680          0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff,
681          0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff,
682          0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff, 0xffffffef,
683          0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff,
684          0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff,
685          0xfffeffff, 0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe,
686          0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff,
687          0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff,
688          0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff,
689          0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff, 0xffffffef,
690          0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff,
691          0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff,
692          0xfffeffff, 0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe,
693          0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff,
694          0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff,
695          0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff,
696          0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff, 0xffffffef,
697          0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff,
698          0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff,
699          0xfffeffff, 0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe,
700          0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff,
701          0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff,
702          0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff,
703          0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff, 0xffffffef,
704          0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff,
705          0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff,
706          0xfffeffff, 0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe,
707          0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff,
708          0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff,
709          0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff,
710          0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff, 0xffffffef,
711          0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff,
712          0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff,
713          0xfffeffff, 0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe,
714          0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff,
715          0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff,
716          0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff,
717          0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff, 0xffffffef,
718          0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff,
719          0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff,
720          0xfffeffff, 0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe,
721          0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff,
722          0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff,
723          0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff,
724          0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff, 0xffffffef,
725          0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff,
726          0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff,
727          0xfffeffff, 0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe,
728          0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff,
729          0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff,
730          0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff,
731          0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff, 0xffffffef,
732          0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff,
733          0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff,
734          0xfffeffff, 0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe,
735          0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff,
736          0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff,
737          0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff,
738          0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff, 0xffffffef,
739          0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff,
740          0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff,
741          0xfffeffff, 0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe,
742          0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff,
743          0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff,
744          0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff,
745          0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff, 0x0000000f}};
746    /** Code Point Ranges for EB
747    [261d, 261d], [26f9, 26f9], [270a, 270d], [1f385, 1f385],
748    [1f3c3, 1f3c4], [1f3ca, 1f3cb], [1f442, 1f443], [1f446, 1f450],
749    [1f46e, 1f46e], [1f470, 1f478], [1f47c, 1f47c], [1f481, 1f483],
750    [1f485, 1f487], [1f4aa, 1f4aa], [1f575, 1f575], [1f57a, 1f57a],
751    [1f590, 1f590], [1f595, 1f596], [1f645, 1f647], [1f64b, 1f64f],
752    [1f6a3, 1f6a3], [1f6b4, 1f6b6], [1f6c0, 1f6c0], [1f918, 1f91e],
753    [1f926, 1f926], [1f930, 1f930], [1f933, 1f939], [1f93c, 1f93e]**/
754    const UnicodeSet eb_Set
755        {{{Empty, 304}, {Mixed, 1}, {Empty, 6}, {Mixed, 2}, {Empty, 3683},
756          {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 3}, {Mixed, 4},
757          {Empty, 5}, {Mixed, 2}, {Empty, 5}, {Mixed, 1}, {Empty, 2},
758          {Mixed, 2}, {Empty, 17}, {Mixed, 2}, {Empty, 30774}},
759         {0x20000000, 0x02000000, 0x00003c00, 0x00000020, 0x00000c18,
760          0x0001ffcc, 0x11ff4000, 0x000000ee, 0x00000400, 0x04200000,
761          0x00610000, 0x0000f8e0, 0x00700008, 0x00000001, 0x7f000000,
762          0x73f90040}};
763    /** Code Point Ranges for EM
764    [1f3fb, 1f3ff]**/
765    const UnicodeSet em_Set
766        {{{Empty, 3999}, {Mixed, 1}, {Empty, 30816}},
767         {0xf8000000}};
768    /** Code Point Ranges for ZWJ
769    [200d, 200d]**/
770    const UnicodeSet zwj_Set
771        {{{Empty, 256}, {Mixed, 1}, {Empty, 34559}},
772         {0x00002000}};
773    /** Code Point Ranges for GAZ
774    [2764, 2764], [1f48b, 1f48b], [1f5e8, 1f5e8]**/
775    const UnicodeSet gaz_Set
776        {{{Empty, 315}, {Mixed, 1}, {Empty, 3688}, {Mixed, 1}, {Empty, 10},
777          {Mixed, 1}, {Empty, 30800}},
778         {0x00000010, 0x00000800, 0x00000100}};
779    /** Code Point Ranges for EBG
780    [1f466, 1f469]**/
781    const UnicodeSet ebg_Set
782        {{{Empty, 4003}, {Mixed, 1}, {Empty, 30812}},
783         {0x000003c0}};
784    static EnumeratedPropertyObject property_object
785        {GCB,
786         GCB_ns::independent_prop_values,
787         GCB_ns::enum_names,
788         GCB_ns::value_names,
789         GCB_ns::aliases_only_map,
790         {&xx_Set, &pp_Set, &cr_Set, &lf_Set, &cn_Set, &ex_Set, &ri_Set,
791        &sm_Set, &l_Set, &v_Set, &t_Set, &lv_Set, &lvt_Set, &eb_Set,
792        &em_Set, &zwj_Set, &gaz_Set, &ebg_Set
793         }};
794    }
795}
796
797#endif
Note: See TracBrowser for help on using the repository browser.