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

Last change on this file since 6192 was 6192, checked in by cameron, 11 months ago

Updates for Unicode 11.0 plus Emoji properties

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