source: icGREP/icgrep-devel/icgrep/UCD/DerivedBidiClass.h @ 5787

Last change on this file since 5787 was 5751, checked in by cameron, 20 months ago

LLVM_ALIGNAS placement, eliminate std::move of temp objects to allow copy elision

File size: 45.1 KB
Line 
1#ifndef DERIVEDBIDICLASS_H
2#define DERIVEDBIDICLASS_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 "PropertyAliases.h"
12#include "PropertyObjects.h"
13#include "PropertyValueAliases.h"
14#include "unicode_set.h"
15
16namespace UCD {
17  namespace BC_ns {
18    const unsigned independent_prop_values = 23;
19    /** Code Point Ranges for L
20    [0041, 005a], [0061, 007a], [00aa, 00aa], [00b5, 00b5], [00ba, 00ba],
21    [00c0, 00d6], [00d8, 00f6], [00f8, 02b8], [02bb, 02c1], [02d0, 02d1],
22    [02e0, 02e4], [02ee, 02ee], [0370, 0373], [0376, 037d], [037f, 0383],
23    [0386, 0386], [0388, 03f5], [03f7, 0482], [048a, 0589], [058b, 058c],
24    [0903, 0939], [093b, 093b], [093d, 0940], [0949, 094c], [094e, 0950],
25    [0958, 0961], [0964, 0980], [0982, 09bb], [09bd, 09c0], [09c5, 09cc],
26    [09ce, 09e1], [09e4, 09f1], [09f4, 09fa], [09fc, 0a00], [0a03, 0a3b],
27    [0a3d, 0a40], [0a43, 0a46], [0a49, 0a4a], [0a4e, 0a50], [0a52, 0a6f],
28    [0a72, 0a74], [0a76, 0a80], [0a83, 0abb], [0abd, 0ac0], [0ac6, 0ac6],
29    [0ac9, 0acc], [0ace, 0ae1], [0ae4, 0af0], [0af2, 0af9], [0b00, 0b00],
30    [0b02, 0b3b], [0b3d, 0b3e], [0b40, 0b40], [0b45, 0b4c], [0b4e, 0b55],
31    [0b57, 0b61], [0b64, 0b81], [0b83, 0bbf], [0bc1, 0bcc], [0bce, 0bf2],
32    [0bfb, 0bff], [0c01, 0c3d], [0c41, 0c45], [0c49, 0c49], [0c4e, 0c54],
33    [0c57, 0c61], [0c64, 0c77], [0c7f, 0c80], [0c82, 0cbb], [0cbd, 0ccb],
34    [0cce, 0ce1], [0ce4, 0cff], [0d02, 0d3a], [0d3d, 0d40], [0d45, 0d4c],
35    [0d4e, 0d61], [0d64, 0dc9], [0dcb, 0dd1], [0dd5, 0dd5], [0dd7, 0e30],
36    [0e32, 0e33], [0e3b, 0e3e], [0e40, 0e46], [0e4f, 0eb0], [0eb2, 0eb3],
37    [0eba, 0eba], [0ebd, 0ec7], [0ece, 0f17], [0f1a, 0f34], [0f36, 0f36],
38    [0f38, 0f38], [0f3e, 0f70], [0f7f, 0f7f], [0f85, 0f85], [0f88, 0f8c],
39    [0f98, 0f98], [0fbd, 0fc5], [0fc7, 102c], [1031, 1031], [1038, 1038],
40    [103b, 103c], [103f, 1057], [105a, 105d], [1061, 1070], [1075, 1081],
41    [1083, 1084], [1087, 108c], [108e, 109c], [109e, 135c], [1360, 138f],
42    [139a, 13ff], [1401, 167f], [1681, 169a], [169d, 1711], [1715, 1731],
43    [1735, 1751], [1754, 1771], [1774, 17b3], [17b6, 17b6], [17be, 17c5],
44    [17c7, 17c8], [17d4, 17da], [17dc, 17dc], [17de, 17ef], [17fa, 17ff],
45    [180f, 1884], [1887, 18a8], [18aa, 191f], [1923, 1926], [1929, 1931],
46    [1933, 1938], [193c, 193f], [1941, 1943], [1946, 19dd], [1a00, 1a16],
47    [1a19, 1a1a], [1a1c, 1a55], [1a57, 1a57], [1a5f, 1a5f], [1a61, 1a61],
48    [1a63, 1a64], [1a6d, 1a72], [1a7d, 1a7e], [1a80, 1aaf], [1abf, 1aff],
49    [1b04, 1b33], [1b35, 1b35], [1b3b, 1b3b], [1b3d, 1b41], [1b43, 1b6a],
50    [1b74, 1b7f], [1b82, 1ba1], [1ba6, 1ba7], [1baa, 1baa], [1bae, 1be5],
51    [1be7, 1be7], [1bea, 1bec], [1bee, 1bee], [1bf2, 1c2b], [1c34, 1c35],
52    [1c38, 1ccf], [1cd3, 1cd3], [1ce1, 1ce1], [1ce9, 1cec], [1cee, 1cf3],
53    [1cf5, 1cf7], [1cfa, 1dbf], [1dfa, 1dfa], [1e00, 1fbc], [1fbe, 1fbe],
54    [1fc2, 1fcc], [1fd0, 1fdc], [1fe0, 1fec], [1ff0, 1ffc], [1fff, 1fff],
55    [200e, 200e], [2071, 2073], [207f, 207f], [208f, 209f], [20f1, 20ff],
56    [2102, 2102], [2107, 2107], [210a, 2113], [2115, 2115], [2119, 211d],
57    [2124, 2124], [2126, 2126], [2128, 2128], [212a, 212d], [212f, 2139],
58    [213c, 213f], [2145, 2149], [214e, 214f], [2160, 2188], [218c, 218f],
59    [2336, 237a], [2395, 2395], [2427, 243f], [244b, 245f], [249c, 24e9],
60    [26ac, 26ac], [2800, 28ff], [2b74, 2b75], [2b96, 2b97], [2bba, 2bbc],
61    [2bc9, 2bc9], [2bd3, 2beb], [2bf0, 2ce4], [2ceb, 2cee], [2cf2, 2cf8],
62    [2d00, 2d7e], [2d80, 2ddf], [2e4a, 2e7f], [2e9a, 2e9a], [2ef4, 2eff],
63    [2fd6, 2fef], [2ffc, 2fff], [3005, 3007], [3021, 3029], [302e, 302f],
64    [3031, 3035], [3038, 303c], [3040, 3098], [309d, 309f], [30a1, 30fa],
65    [30fc, 31bf], [31e4, 321c], [321f, 324f], [3260, 327b], [327f, 32b0],
66    [32c0, 32cb], [32d0, 3376], [337b, 33dd], [33e0, 33fe], [3400, 4dbf],
67    [4e00, a48f], [a4c7, a60c], [a610, a66e], [a680, a69d], [a6a0, a6ef],
68    [a6f2, a6ff], [a722, a787], [a789, a801], [a803, a805], [a807, a80a],
69    [a80c, a824], [a827, a827], [a82c, a837], [a83a, a873], [a878, a8c3],
70    [a8c6, a8df], [a8f2, a925], [a92e, a946], [a952, a97f], [a983, a9b2],
71    [a9b4, a9b5], [a9ba, a9bb], [a9bd, a9e4], [a9e6, aa28], [aa2f, aa30],
72    [aa33, aa34], [aa37, aa42], [aa44, aa4b], [aa4d, aa7b], [aa7d, aaaf],
73    [aab1, aab1], [aab5, aab6], [aab9, aabd], [aac0, aac0], [aac2, aaeb],
74    [aaee, aaf5], [aaf7, abe4], [abe6, abe7], [abe9, abec], [abee, fb1c],
75    [fe1a, fe1f], [fe53, fe53], [fe67, fe67], [fe6c, fe6f], [ff00, ff00],
76    [ff21, ff3a], [ff41, ff5a], [ff66, ffdf], [ffe7, ffe7], [ffef, ffef],
77    [10000, 10100], [10102, 1013f], [1018d, 1018f], [1019c, 1019f],
78    [101a1, 101fc], [101fe, 102df], [102fc, 10375], [1037b, 107ff],
79    [11000, 11000], [11002, 11037], [11047, 11051], [11066, 1107e],
80    [11082, 110b2], [110b7, 110b8], [110bb, 110ff], [11103, 11126],
81    [1112c, 1112c], [11135, 11172], [11174, 1117f], [11182, 111b5],
82    [111bf, 111c9], [111cd, 1122e], [11232, 11233], [11235, 11235],
83    [11238, 1123d], [1123f, 112de], [112e0, 112e2], [112eb, 112ff],
84    [11302, 1133b], [1133d, 1133f], [11341, 11365], [1136d, 1136f],
85    [11375, 11437], [11440, 11441], [11445, 11445], [11447, 114b2],
86    [114b9, 114b9], [114bb, 114be], [114c1, 114c1], [114c4, 115b1],
87    [115b6, 115bb], [115be, 115be], [115c1, 115db], [115de, 11632],
88    [1163b, 1163c], [1163e, 1163e], [11641, 1165f], [1166d, 116aa],
89    [116ac, 116ac], [116ae, 116af], [116b6, 116b6], [116b8, 1171c],
90    [11720, 11721], [11726, 11726], [1172c, 11a00], [11a07, 11a08],
91    [11a0b, 11a32], [11a39, 11a3a], [11a3f, 11a46], [11a48, 11a50],
92    [11a57, 11a58], [11a5c, 11a89], [11a97, 11a97], [11a9a, 11c2f],
93    [11c37, 11c37], [11c3e, 11c91], [11ca8, 11ca9], [11cb1, 11cb1],
94    [11cb4, 11cb4], [11cb7, 11d30], [11d37, 11d39], [11d3b, 11d3b],
95    [11d3e, 11d3e], [11d46, 11d46], [11d48, 16aef], [16af5, 16b2f],
96    [16b37, 16f8e], [16f93, 1bc9c], [1bc9f, 1bc9f], [1bca4, 1d166],
97    [1d16a, 1d172], [1d183, 1d184], [1d18c, 1d1a9], [1d1ae, 1d1ff],
98    [1d246, 1d2ff], [1d357, 1d6da], [1d6dc, 1d714], [1d716, 1d74e],
99    [1d750, 1d788], [1d78a, 1d7c2], [1d7c4, 1d7cd], [1d800, 1d9ff],
100    [1da37, 1da3a], [1da6d, 1da74], [1da76, 1da83], [1da85, 1da9a],
101    [1daa0, 1daa0], [1dab0, 1dfff], [1e007, 1e007], [1e019, 1e01a],
102    [1e022, 1e022], [1e025, 1e025], [1e02b, 1e7ff], [1f02c, 1f02f],
103    [1f094, 1f09f], [1f0af, 1f0b0], [1f0c0, 1f0c0], [1f0d0, 1f0d0],
104    [1f0f6, 1f0ff], [1f10d, 1f169], [1f16c, 1f25f], [1f266, 1f2ff],
105    [1f6d5, 1f6df], [1f6ed, 1f6ef], [1f6f9, 1f6ff], [1f774, 1f77f],
106    [1f7d5, 1f7ff], [1f80c, 1f80f], [1f848, 1f84f], [1f85a, 1f85f],
107    [1f888, 1f88f], [1f8ae, 1f8ff], [1f90c, 1f90f], [1f93f, 1f93f],
108    [1f94d, 1f94f], [1f96c, 1f97f], [1f998, 1f9bf], [1f9c1, 1f9cf],
109    [1f9e7, 1fffd], [20000, 2fffd], [30000, 3fffd], [40000, 4fffd],
110    [50000, 5fffd], [60000, 6fffd], [70000, 7fffd], [80000, 8fffd],
111    [90000, 9fffd], [a0000, afffd], [b0000, bfffd], [c0000, cfffd],
112    [d0000, dfffd], [e1000, efffd], [f0000, ffffd], [100000, 10fffd]**/
113
114
115    namespace {
116    const static UnicodeSet::run_t __l_Set_runs[] = {
117    {Empty, 2}, {Mixed, 2}, {Empty, 1}, {Mixed, 3}, {Full, 13}, {Mixed, 3},
118    {Empty, 3}, {Mixed, 2}, {Full, 2}, {Mixed, 1}, {Full, 4}, {Mixed, 1},
119    {Full, 7}, {Mixed, 1}, {Empty, 27}, {Mixed, 21}, {Full, 1}, {Mixed, 14},
120    {Full, 2}, {Mixed, 1}, {Full, 2}, {Mixed, 2}, {Full, 2}, {Mixed, 2},
121    {Full, 1}, {Mixed, 2}, {Full, 1}, {Mixed, 4}, {Full, 2}, {Mixed, 4},
122    {Full, 21}, {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Full, 3}, {Mixed, 1},
123    {Full, 19}, {Mixed, 1}, {Full, 3}, {Mixed, 4}, {Full, 1}, {Mixed, 4},
124    {Full, 3}, {Mixed, 2}, {Full, 3}, {Mixed, 2}, {Full, 3}, {Mixed, 1},
125    {Empty, 1}, {Mixed, 1}, {Full, 1}, {Mixed, 2}, {Full, 1}, {Mixed, 1},
126    {Full, 2}, {Mixed, 6}, {Full, 1}, {Mixed, 1}, {Full, 1}, {Mixed, 1},
127    {Full, 4}, {Mixed, 2}, {Full, 6}, {Empty, 1}, {Mixed, 1}, {Full, 13},
128    {Mixed, 4}, {Empty, 2}, {Mixed, 2}, {Empty, 2}, {Mixed, 4}, {Full, 1},
129    {Mixed, 1}, {Empty, 12}, {Mixed, 1}, {Full, 1}, {Mixed, 2}, {Empty, 4},
130    {Mixed, 2}, {Empty, 1}, {Mixed, 1}, {Full, 2}, {Mixed, 1}, {Empty, 13},
131    {Mixed, 1}, {Empty, 10}, {Full, 8}, {Empty, 19}, {Mixed, 5}, {Full, 7},
132    {Mixed, 1}, {Full, 3}, {Mixed, 1}, {Full, 3}, {Empty, 3}, {Mixed, 1},
133    {Full, 1}, {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Empty, 6}, {Mixed, 4},
134    {Full, 2}, {Mixed, 2}, {Full, 1}, {Mixed, 1}, {Full, 6}, {Empty, 1},
135    {Mixed, 2}, {Full, 1}, {Mixed, 2}, {Full, 1}, {Mixed, 2}, {Full, 4},
136    {Mixed, 1}, {Full, 2}, {Mixed, 2}, {Full, 206}, {Empty, 2}, {Full, 692},
137    {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Full, 9}, {Mixed, 1}, {Full, 2},
138    {Mixed, 2}, {Full, 2}, {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Full, 2},
139    {Mixed, 1}, {Full, 3}, {Mixed, 2}, {Full, 1}, {Mixed, 1}, {Full, 2},
140    {Mixed, 2}, {Full, 1}, {Mixed, 2}, {Full, 1}, {Mixed, 2}, {Full, 1},
141    {Mixed, 1}, {Full, 1}, {Mixed, 3}, {Full, 1}, {Mixed, 3}, {Full, 7},
142    {Mixed, 1}, {Full, 632}, {Mixed, 1}, {Empty, 23}, {Mixed, 1},
143    {Empty, 1}, {Mixed, 2}, {Empty, 4}, {Mixed, 4}, {Full, 3}, {Mixed, 1},
144    {Full, 8}, {Mixed, 1}, {Full, 1}, {Empty, 2}, {Mixed, 2}, {Full, 1},
145    {Mixed, 1}, {Full, 7}, {Mixed, 1}, {Full, 3}, {Mixed, 1}, {Full, 36},
146    {Empty, 64}, {Mixed, 6}, {Full, 2}, {Mixed, 2}, {Full, 1}, {Mixed, 4},
147    {Full, 2}, {Mixed, 1}, {Full, 4}, {Mixed, 6}, {Full, 5}, {Mixed, 2},
148    {Full, 2}, {Mixed, 2}, {Full, 6}, {Mixed, 2}, {Full, 2}, {Mixed, 3},
149    {Full, 1}, {Mixed, 1}, {Full, 2}, {Mixed, 2}, {Full, 22}, {Mixed, 3},
150    {Full, 1}, {Mixed, 1}, {Full, 12}, {Mixed, 1}, {Full, 2}, {Mixed, 2},
151    {Full, 3}, {Mixed, 2}, {Full, 620}, {Mixed, 1}, {Full, 1}, {Mixed, 1},
152    {Full, 34}, {Mixed, 1}, {Full, 615}, {Mixed, 2}, {Full, 165},
153    {Mixed, 3}, {Full, 2}, {Empty, 2}, {Mixed, 1}, {Full, 5}, {Empty, 2},
154    {Mixed, 1}, {Full, 27}, {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Full, 1},
155    {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Empty, 1},
156    {Full, 16}, {Empty, 1}, {Mixed, 1}, {Empty, 1}, {Mixed, 3}, {Full, 42},
157    {Mixed, 2}, {Full, 62}, {Empty, 65}, {Mixed, 1}, {Empty, 2}, {Mixed, 5},
158    {Full, 2}, {Mixed, 1}, {Full, 7}, {Mixed, 1}, {Full, 4}, {Empty, 30},
159    {Mixed, 2}, {Empty, 3}, {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Full, 1},
160    {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 1}, {Mixed, 2}, {Full, 2},
161    {Mixed, 5}, {Full, 1}, {Mixed, 2}, {Full, 47}, {Mixed, 1}, {Full, 2047},
162    {Mixed, 1}, {Full, 2047}, {Mixed, 1}, {Full, 2047}, {Mixed, 1},
163    {Full, 2047}, {Mixed, 1}, {Full, 2047}, {Mixed, 1}, {Full, 2047},
164    {Mixed, 1}, {Full, 2047}, {Mixed, 1}, {Full, 2047}, {Mixed, 1},
165    {Full, 2047}, {Mixed, 1}, {Full, 2047}, {Mixed, 1}, {Full, 2047},
166    {Mixed, 1}, {Full, 2047}, {Mixed, 1}, {Empty, 128}, {Full, 1919},
167    {Mixed, 1}, {Full, 2047}, {Mixed, 1}, {Full, 2047}, {Mixed, 1}};
168    const static UnicodeSet::bitquad_t  __l_Set_quads[] = {
169    0x07fffffe, 0x07fffffe, 0x04200400, 0xff7fffff, 0xff7fffff, 0xf9ffffff,
170    0x00030003, 0x0000401f, 0xbfcf0000, 0xffffff4f, 0xffbfffff, 0xfffffc07,
171    0x00001bff, 0xfffffff8, 0xebffffff, 0xff01de01, 0xfffffff3, 0xfffffffd,
172    0xefffffff, 0xffffdfe1, 0xf7f3fff3, 0xfffffff9, 0xefffffff, 0xfffdc679,
173    0xffdcffff, 0xfffffff9, 0xefffffff, 0xffffde41, 0x03fdfff3, 0xfffffffd,
174    0x6fffffff, 0xffbfdfe1, 0xfffffff3, 0xfffffffb, 0xffffdffe, 0xf807ffff,
175    0xfffffffe, 0x3fffffff, 0xff9fc23e, 0x80fffff3, 0xfffffffd, 0xefffffff,
176    0xffffcfff, 0xfffffff3, 0xfffffffc, 0xe7ffffff, 0xffffdfe1, 0xfffffff3,
177    0xffa3fbff, 0x780dffff, 0xffff807f, 0xe40dffff, 0xffffc0ff, 0xfcffffff,
178    0xc15fffff, 0x8001ffff, 0x01001f20, 0xe0000000, 0xffffffbf, 0x99021fff,
179    0x3cffffff, 0xffe1fffe, 0xdfffdf9b, 0x1fffffff, 0xfc00ffff, 0xfffffffe,
180    0xe7fffffe, 0xffe3ffff, 0xffe3ffff, 0xfff3ffff, 0xfff3ffff, 0xc04fffff,
181    0xd7f001bf, 0xfc00ffff, 0xffff8000, 0xffffff9f, 0xfffffdff, 0xf1fbfe78,
182    0xffffffce, 0x3fffffff, 0xf67fffff, 0x80bfffff, 0x6007e01a, 0x8000ffff,
183    0xfffffff0, 0xe82fffff, 0xfffffffb, 0xfff007ff, 0xfffffffc, 0xffffc4c3,
184    0xfffc5cbf, 0xff300fff, 0x0008ffff, 0xfcefde02, 0x04000000, 0x5fffffff,
185    0x1fff1ffc, 0x9fff1fff, 0x00004000, 0x800e0000, 0xffff8000, 0xfffe0000,
186    0x3e2ffc84, 0xf3ffbd50, 0x0000c3e0, 0x0000f1ff, 0xffc00000, 0x07ffffff,
187    0x00200000, 0xffffff80, 0xfffff800, 0xf0000000, 0x000003ff, 0x00001000,
188    0x00300000, 0x00c00000, 0x1c000000, 0xfff80200, 0xffff0fff, 0x01fc781f,
189    0x7fffffff, 0xfffffc00, 0x04000000, 0xfff00000, 0xffc00000, 0xf000ffff,
190    0x000000e0, 0x1f3ec3fe, 0xe1ffffff, 0xfffffffe, 0xf7ffffff, 0xfffffff0,
191    0x9fffffff, 0x0000ffff, 0x8fffffff, 0x0001ffff, 0xffff0fff, 0xf87fffff,
192    0x3fffffff, 0x7fffffff, 0x0000ffff, 0xffffff80, 0xffff1fff, 0x00007fff,
193    0x3fffffff, 0xfffcffff, 0xfffffffc, 0xfffffeff, 0xfffff7bb, 0xfcfff09f,
194    0xff0fffff, 0xffffffcf, 0xfffc0000, 0xffffc03f, 0xfffc007f, 0xfffffff8,
195    0xec37ffff, 0xffffffdf, 0xff9981ff, 0xffffeff7, 0xefffffff, 0x3e62ffff,
196    0xfffffffd, 0xffbfcfff, 0xffffdedf, 0x1fffffff, 0xfc000000, 0x00080000,
197    0x0000f080, 0x00000001, 0x07fffffe, 0x07fffffe, 0xffffffc0, 0x00008080,
198    0xfffffffd, 0xf000e000, 0xfffffffe, 0xdfffffff, 0xf0000000, 0xf83fffff,
199    0xfffffffd, 0x00ffffff, 0x0003ff80, 0x7fffffc0, 0xfffffffc, 0xf987ffff,
200    0xfffffff8, 0xffe0107f, 0xfff7ffff, 0xfffffffc, 0x803fffff, 0xffffe3ff,
201    0xbf2c7fff, 0x7fffffff, 0xfffff807, 0xfffffffc, 0xefffffff, 0xfffffffe,
202    0xffe0e03f, 0x00ffffff, 0xffffffa3, 0x7a07ffff, 0xfffffff2, 0x4fc3ffff,
203    0xcffffffe, 0x5807ffff, 0xfffffffe, 0xffffe000, 0xff40d7ff, 0x1fffffff,
204    0xfffff043, 0xfffff981, 0x8607ffff, 0xf181ff7f, 0xfc8003ff, 0xc080ffff,
205    0x0003ffff, 0xff920300, 0x4b81ffff, 0xffffff40, 0xffe0ffff, 0xff80ffff,
206    0xfff87fff, 0x9fffffff, 0xfffffff0, 0x0007fc7f, 0xfffff018, 0xffffc3ff,
207    0xffffffc0, 0xff800000, 0xf7ffffff, 0xffdfffff, 0xffff7fff, 0xfffffdff,
208    0x00003ff7, 0x07800000, 0xffdfe000, 0x07ffffef, 0xffff0001, 0x06000080,
209    0xfffff824, 0x0000f000, 0xfff00000, 0x00018000, 0x00010001, 0xffc00000,
210    0xffffe000, 0xfffff3ff, 0xffffffc0, 0xffe00000, 0xfe00e000, 0xfff00000,
211    0xffe00000, 0x0000f000, 0xfc00ff00, 0x0000ff00, 0xffffc000, 0x0000f000,
212    0x80000000, 0x0000e000, 0xfffff000, 0xff000000, 0x0000fffe, 0xffffff80,
213    0x3fffffff, 0x3fffffff, 0x3fffffff, 0x3fffffff, 0x3fffffff, 0x3fffffff,
214    0x3fffffff, 0x3fffffff, 0x3fffffff, 0x3fffffff, 0x3fffffff, 0x3fffffff,
215    0x3fffffff, 0x3fffffff, 0x3fffffff, 0x3fffffff};
216    }
217
218    const static UnicodeSet l_Set{const_cast<UnicodeSet::run_t *>(__l_Set_runs), 298, 0, const_cast<UnicodeSet::bitquad_t *>(__l_Set_quads), 280, 0};
219
220    /** Code Point Ranges for R
221    [0590, 0590], [05be, 05be], [05c0, 05c0], [05c3, 05c3], [05c6, 05c6],
222    [05c8, 05ff], [07c0, 07ea], [07f4, 07f5], [07fa, 0815], [081a, 081a],
223    [0824, 0824], [0828, 0828], [082e, 0858], [085c, 085f], [0870, 089f],
224    [200f, 200f], [fb1d, fb1d], [fb1f, fb28], [fb2a, fb4f], [10800, 1091e],
225    [10920, 10a00], [10a04, 10a04], [10a07, 10a0b], [10a10, 10a37],
226    [10a3b, 10a3e], [10a40, 10ae4], [10ae7, 10b38], [10b40, 10e5f],
227    [10e7f, 10fff], [1e800, 1e8cf], [1e8d7, 1e943], [1e94b, 1edff],
228    [1ef00, 1efff]**/
229
230
231    namespace {
232    const static UnicodeSet::run_t __r_Set_runs[] = {
233    {Empty, 44}, {Mixed, 3}, {Full, 1}, {Empty, 14}, {Full, 1}, {Mixed, 5},
234    {Full, 1}, {Empty, 187}, {Mixed, 1}, {Empty, 1751}, {Mixed, 3},
235    {Empty, 101}, {Full, 8}, {Mixed, 1}, {Full, 7}, {Mixed, 2}, {Full, 5},
236    {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Full, 25}, {Mixed, 1}, {Full, 12},
237    {Empty, 1728}, {Full, 6}, {Mixed, 1}, {Full, 3}, {Mixed, 1}, {Full, 37},
238    {Empty, 8}, {Full, 8}, {Empty, 30848}};
239    const static UnicodeSet::bitquad_t  __r_Set_quads[] = {
240    0x00010000, 0x40000000, 0xffffff49, 0xfc3007ff, 0x043fffff, 0xffffc110,
241    0xf1ffffff, 0xffff0000, 0x00008000, 0xa0000000, 0xfffffdff, 0x0000ffff,
242    0x7fffffff, 0xffff0f91, 0x78ffffff, 0xffffff9f, 0x01ffffff, 0x80000000,
243    0xff80ffff, 0xfffff80f};
244    }
245
246    const static UnicodeSet r_Set{const_cast<UnicodeSet::run_t *>(__r_Set_runs), 32, 0, const_cast<UnicodeSet::bitquad_t *>(__r_Set_quads), 20, 0};
247
248    /** Code Point Ranges for EN
249    [0030, 0039], [00b2, 00b3], [00b9, 00b9], [06f0, 06f9], [2070, 2070],
250    [2074, 2079], [2080, 2089], [2488, 249b], [ff10, ff19], [102e1, 102fb],
251    [1d7ce, 1d7ff], [1f100, 1f10a]**/
252
253
254    namespace {
255    const static UnicodeSet::run_t __en_Set_runs[] = {
256    {Empty, 1}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 49}, {Mixed, 1},
257    {Empty, 203}, {Mixed, 2}, {Empty, 31}, {Mixed, 1}, {Empty, 1747},
258    {Mixed, 1}, {Empty, 30}, {Mixed, 1}, {Empty, 1702}, {Mixed, 1},
259    {Full, 1}, {Empty, 200}, {Mixed, 1}, {Empty, 30839}};
260    const static UnicodeSet::bitquad_t  __en_Set_quads[] = {
261    0x03ff0000, 0x020c0000, 0x03ff0000, 0x03f10000, 0x000003ff, 0x0fffff00,
262    0x03ff0000, 0x0ffffffe, 0xffffc000, 0x000007ff};
263    }
264
265    const static UnicodeSet en_Set{const_cast<UnicodeSet::run_t *>(__en_Set_runs), 20, 0, const_cast<UnicodeSet::bitquad_t *>(__en_Set_quads), 10, 0};
266
267    /** Code Point Ranges for ES
268    [002b, 002b], [002d, 002d], [207a, 207b], [208a, 208b], [2212, 2212],
269    [fb29, fb29], [fe62, fe63], [ff0b, ff0b], [ff0d, ff0d]**/
270
271
272    namespace {
273    const static UnicodeSet::run_t __es_Set_runs[] = {
274    {Empty, 1}, {Mixed, 1}, {Empty, 257}, {Mixed, 2}, {Empty, 11},
275    {Mixed, 1}, {Empty, 1736}, {Mixed, 1}, {Empty, 25}, {Mixed, 1},
276    {Empty, 4}, {Mixed, 1}, {Empty, 32775}};
277    const static UnicodeSet::bitquad_t  __es_Set_quads[] = {
278    0x00002800, 0x0c000000, 0x00000c00, 0x00040000, 0x00000200, 0x0000000c,
279    0x00002800};
280    }
281
282    const static UnicodeSet es_Set{const_cast<UnicodeSet::run_t *>(__es_Set_runs), 13, 0, const_cast<UnicodeSet::bitquad_t *>(__es_Set_quads), 7, 0};
283
284    /** Code Point Ranges for ET
285    [0023, 0025], [00a2, 00a5], [00b0, 00b1], [058f, 058f], [0609, 060a],
286    [066a, 066a], [09f2, 09f3], [09fb, 09fb], [0af1, 0af1], [0bf9, 0bf9],
287    [0e3f, 0e3f], [17db, 17db], [2030, 2034], [20a0, 20cf], [212e, 212e],
288    [2213, 2213], [a838, a839], [fe5f, fe5f], [fe69, fe6a], [ff03, ff05],
289    [ffe0, ffe1], [ffe5, ffe6]**/
290
291
292    namespace {
293    const static UnicodeSet::run_t __et_Set_runs[] = {
294    {Empty, 1}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 38}, {Mixed, 1},
295    {Empty, 3}, {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Empty, 27}, {Mixed, 1},
296    {Empty, 7}, {Mixed, 1}, {Empty, 7}, {Mixed, 1}, {Empty, 17}, {Mixed, 1},
297    {Empty, 76}, {Mixed, 1}, {Empty, 66}, {Mixed, 1}, {Empty, 3}, {Full, 1},
298    {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Empty, 6}, {Mixed, 1},
299    {Empty, 1072}, {Mixed, 1}, {Empty, 688}, {Mixed, 2}, {Empty, 4},
300    {Mixed, 1}, {Empty, 6}, {Mixed, 1}, {Empty, 32768}};
301    const static UnicodeSet::bitquad_t  __et_Set_quads[] = {
302    0x00000038, 0x0003003c, 0x00008000, 0x00000600, 0x00000400, 0x080c0000,
303    0x00020000, 0x02000000, 0x80000000, 0x08000000, 0x001f0000, 0x0000ffff,
304    0x00004000, 0x00080000, 0x03000000, 0x80000000, 0x00000600, 0x00000038,
305    0x00000063};
306    }
307
308    const static UnicodeSet et_Set{const_cast<UnicodeSet::run_t *>(__et_Set_runs), 38, 0, const_cast<UnicodeSet::bitquad_t *>(__et_Set_quads), 19, 0};
309
310    /** Code Point Ranges for AN
311    [0600, 0605], [0660, 0669], [066b, 066c], [06dd, 06dd], [08e2, 08e2],
312    [10e60, 10e7e]**/
313
314
315    namespace {
316    const static UnicodeSet::run_t __an_Set_runs[] = {
317    {Empty, 48}, {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Empty, 2}, {Mixed, 1},
318    {Empty, 16}, {Mixed, 1}, {Empty, 2091}, {Mixed, 1}, {Empty, 32652}};
319    const static UnicodeSet::bitquad_t  __an_Set_quads[] = {
320    0x0000003f, 0x00001bff, 0x20000000, 0x00000004, 0x7fffffff};
321    }
322
323    const static UnicodeSet an_Set{const_cast<UnicodeSet::run_t *>(__an_Set_runs), 11, 0, const_cast<UnicodeSet::bitquad_t *>(__an_Set_quads), 5, 0};
324
325    /** Code Point Ranges for CS
326    [002c, 002c], [002e, 002f], [003a, 003a], [00a0, 00a0], [060c, 060c],
327    [202f, 202f], [2044, 2044], [fe50, fe50], [fe52, fe52], [fe55, fe55],
328    [ff0c, ff0c], [ff0e, ff0f], [ff1a, ff1a]**/
329
330
331    namespace {
332    const static UnicodeSet::run_t __cs_Set_runs[] = {
333    {Empty, 1}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 42}, {Mixed, 1},
334    {Empty, 208}, {Mixed, 2}, {Empty, 1775}, {Mixed, 1}, {Empty, 5},
335    {Mixed, 1}, {Empty, 32775}};
336    const static UnicodeSet::bitquad_t  __cs_Set_quads[] = {
337    0x0400d000, 0x00000001, 0x00001000, 0x00008000, 0x00000010, 0x00250000,
338    0x0400d000};
339    }
340
341    const static UnicodeSet cs_Set{const_cast<UnicodeSet::run_t *>(__cs_Set_runs), 13, 0, const_cast<UnicodeSet::bitquad_t *>(__cs_Set_quads), 7, 0};
342
343    /** Code Point Ranges for B
344    [000a, 000a], [000d, 000d], [001c, 001e], [0085, 0085], [2029, 2029]**/
345
346
347    namespace {
348    const static UnicodeSet::run_t __b_Set_runs[] = {
349    {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 252}, {Mixed, 1},
350    {Empty, 34558}};
351    const static UnicodeSet::bitquad_t  __b_Set_quads[] = {
352    0x70002400, 0x00000020, 0x00000200};
353    }
354
355    const static UnicodeSet b_Set{const_cast<UnicodeSet::run_t *>(__b_Set_runs), 6, 0, const_cast<UnicodeSet::bitquad_t *>(__b_Set_quads), 3, 0};
356
357    /** Code Point Ranges for S
358    [0009, 0009], [000b, 000b], [001f, 001f]**/
359
360
361    namespace {
362    const static UnicodeSet::run_t __s_Set_runs[] = {
363    {Mixed, 1}, {Empty, 34815}};
364    const static UnicodeSet::bitquad_t  __s_Set_quads[] = {
365    0x80000a00};
366    }
367
368    const static UnicodeSet s_Set{const_cast<UnicodeSet::run_t *>(__s_Set_runs), 2, 0, const_cast<UnicodeSet::bitquad_t *>(__s_Set_quads), 1, 0};
369
370    /** Code Point Ranges for WS
371    [000c, 000c], [0020, 0020], [1680, 1680], [2000, 200a], [2028, 2028],
372    [205f, 205f], [3000, 3000]**/
373
374
375    namespace {
376    const static UnicodeSet::run_t __ws_Set_runs[] = {
377    {Mixed, 2}, {Empty, 178}, {Mixed, 1}, {Empty, 75}, {Mixed, 3},
378    {Empty, 125}, {Mixed, 1}, {Empty, 34431}};
379    const static UnicodeSet::bitquad_t  __ws_Set_quads[] = {
380    0x00001000, 0x00000001, 0x00000001, 0x000007ff, 0x00000100, 0x80000000,
381    0x00000001};
382    }
383
384    const static UnicodeSet ws_Set{const_cast<UnicodeSet::run_t *>(__ws_Set_runs), 8, 0, const_cast<UnicodeSet::bitquad_t *>(__ws_Set_quads), 7, 0};
385
386    /** Code Point Ranges for ON
387    [0021, 0022], [0026, 002a], [003b, 0040], [005b, 0060], [007b, 007e],
388    [00a1, 00a1], [00a6, 00a9], [00ab, 00ac], [00ae, 00af], [00b4, 00b4],
389    [00b6, 00b8], [00bb, 00bf], [00d7, 00d7], [00f7, 00f7], [02b9, 02ba],
390    [02c2, 02cf], [02d2, 02df], [02e5, 02ed], [02ef, 02ff], [0374, 0375],
391    [037e, 037e], [0384, 0385], [0387, 0387], [03f6, 03f6], [058a, 058a],
392    [058d, 058e], [0606, 0607], [060e, 060f], [06de, 06de], [06e9, 06e9],
393    [07f6, 07f9], [0bf3, 0bf8], [0bfa, 0bfa], [0c78, 0c7e], [0f3a, 0f3d],
394    [1390, 1399], [1400, 1400], [169b, 169c], [17f0, 17f9], [1800, 180a],
395    [1940, 1940], [1944, 1945], [19de, 19ff], [1fbd, 1fbd], [1fbf, 1fc1],
396    [1fcd, 1fcf], [1fdd, 1fdf], [1fed, 1fef], [1ffd, 1ffe], [2010, 2027],
397    [2035, 2043], [2045, 205e], [207c, 207e], [208c, 208e], [2100, 2101],
398    [2103, 2106], [2108, 2109], [2114, 2114], [2116, 2118], [211e, 2123],
399    [2125, 2125], [2127, 2127], [2129, 2129], [213a, 213b], [2140, 2144],
400    [214a, 214d], [2150, 215f], [2189, 218b], [2190, 2211], [2214, 2335],
401    [237b, 2394], [2396, 2426], [2440, 244a], [2460, 2487], [24ea, 26ab],
402    [26ad, 27ff], [2900, 2b73], [2b76, 2b95], [2b98, 2bb9], [2bbd, 2bc8],
403    [2bca, 2bd2], [2bec, 2bef], [2ce5, 2cea], [2cf9, 2cff], [2e00, 2e49],
404    [2e80, 2e99], [2e9b, 2ef3], [2f00, 2fd5], [2ff0, 2ffb], [3001, 3004],
405    [3008, 3020], [3030, 3030], [3036, 3037], [303d, 303f], [309b, 309c],
406    [30a0, 30a0], [30fb, 30fb], [31c0, 31e3], [321d, 321e], [3250, 325f],
407    [327c, 327e], [32b1, 32bf], [32cc, 32cf], [3377, 337a], [33de, 33df],
408    [33ff, 33ff], [4dc0, 4dff], [a490, a4c6], [a60d, a60f], [a673, a673],
409    [a67e, a67f], [a700, a721], [a788, a788], [a828, a82b], [a874, a877],
410    [fd3e, fd3f], [fdfd, fdfd], [fe10, fe19], [fe30, fe4f], [fe51, fe51],
411    [fe54, fe54], [fe56, fe5e], [fe60, fe61], [fe64, fe66], [fe68, fe68],
412    [fe6b, fe6b], [ff01, ff02], [ff06, ff0a], [ff1b, ff20], [ff3b, ff40],
413    [ff5b, ff65], [ffe2, ffe4], [ffe8, ffee], [fff9, fffd], [10101, 10101],
414    [10140, 1018c], [10190, 1019b], [101a0, 101a0], [1091f, 1091f],
415    [10b39, 10b3f], [11052, 11065], [11660, 1166c], [1d200, 1d241],
416    [1d245, 1d245], [1d300, 1d356], [1d6db, 1d6db], [1d715, 1d715],
417    [1d74f, 1d74f], [1d789, 1d789], [1d7c3, 1d7c3], [1eef0, 1eef1],
418    [1f000, 1f02b], [1f030, 1f093], [1f0a0, 1f0ae], [1f0b1, 1f0bf],
419    [1f0c1, 1f0cf], [1f0d1, 1f0f5], [1f10b, 1f10c], [1f16a, 1f16b],
420    [1f260, 1f265], [1f300, 1f6d4], [1f6e0, 1f6ec], [1f6f0, 1f6f8],
421    [1f700, 1f773], [1f780, 1f7d4], [1f800, 1f80b], [1f810, 1f847],
422    [1f850, 1f859], [1f860, 1f887], [1f890, 1f8ad], [1f900, 1f90b],
423    [1f910, 1f93e], [1f940, 1f94c], [1f950, 1f96b], [1f980, 1f997],
424    [1f9c0, 1f9c0], [1f9d0, 1f9e6]**/
425
426
427    namespace {
428    const static UnicodeSet::run_t __on_Set_runs[] = {
429    {Empty, 1}, {Mixed, 3}, {Empty, 1}, {Mixed, 3}, {Empty, 13}, {Mixed, 3},
430    {Empty, 3}, {Mixed, 2}, {Empty, 2}, {Mixed, 1}, {Empty, 12}, {Mixed, 1},
431    {Empty, 3}, {Mixed, 1}, {Empty, 5}, {Mixed, 2}, {Empty, 7}, {Mixed, 1},
432    {Empty, 31}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 21},
433    {Mixed, 1}, {Empty, 34}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
434    {Empty, 19}, {Mixed, 1}, {Empty, 10}, {Mixed, 2}, {Empty, 9},
435    {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Full, 1}, {Empty, 45}, {Mixed, 8},
436    {Empty, 3}, {Mixed, 3}, {Empty, 1}, {Mixed, 1}, {Full, 3}, {Mixed, 1},
437    {Full, 8}, {Mixed, 1}, {Empty, 1}, {Mixed, 2}, {Full, 4}, {Mixed, 2},
438    {Full, 1}, {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Full, 13}, {Mixed, 1},
439    {Full, 10}, {Empty, 8}, {Full, 19}, {Mixed, 5}, {Empty, 7}, {Mixed, 1},
440    {Empty, 8}, {Full, 2}, {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Full, 2},
441    {Mixed, 1}, {Full, 6}, {Mixed, 4}, {Empty, 2}, {Mixed, 2}, {Empty, 1},
442    {Mixed, 1}, {Empty, 6}, {Full, 1}, {Mixed, 2}, {Empty, 1}, {Mixed, 2},
443    {Empty, 1}, {Mixed, 2}, {Empty, 4}, {Mixed, 1}, {Empty, 2}, {Mixed, 2},
444    {Empty, 206}, {Full, 2}, {Empty, 692}, {Mixed, 1}, {Full, 1},
445    {Mixed, 1}, {Empty, 9}, {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Empty, 4},
446    {Full, 1}, {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Empty, 4}, {Mixed, 1},
447    {Empty, 1}, {Mixed, 1}, {Empty, 677}, {Mixed, 1}, {Empty, 5},
448    {Mixed, 5}, {Empty, 4}, {Mixed, 4}, {Empty, 3}, {Mixed, 1}, {Empty, 8},
449    {Mixed, 1}, {Empty, 1}, {Full, 2}, {Mixed, 2}, {Empty, 58}, {Mixed, 1},
450    {Empty, 16}, {Mixed, 1}, {Empty, 40}, {Mixed, 2}, {Empty, 47},
451    {Mixed, 1}, {Empty, 1500}, {Full, 2}, {Mixed, 1}, {Empty, 5}, {Full, 2},
452    {Mixed, 1}, {Empty, 27}, {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 1},
453    {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 1}, {Mixed, 1},
454    {Empty, 184}, {Mixed, 1}, {Empty, 8}, {Full, 1}, {Mixed, 1}, {Full, 2},
455    {Mixed, 5}, {Empty, 2}, {Mixed, 1}, {Empty, 7}, {Mixed, 1}, {Empty, 4},
456    {Full, 30}, {Mixed, 2}, {Full, 3}, {Mixed, 1}, {Full, 2}, {Mixed, 1},
457    {Empty, 1}, {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Full, 1}, {Mixed, 2},
458    {Empty, 2}, {Mixed, 5}, {Empty, 1}, {Mixed, 2}, {Empty, 30768}};
459    const static UnicodeSet::bitquad_t  __on_Set_quads[] = {
460    0xf80007c6, 0xf8000001, 0x78000001, 0xf9d0dbc2, 0x00800000, 0x00800000,
461    0x06000000, 0xfffcfffc, 0xffffbfe0, 0x40300000, 0x000000b0, 0x00400000,
462    0x00006400, 0x0000c0c0, 0x40000000, 0x00000200, 0x03c00000, 0x05f80000,
463    0x7f000000, 0x3c000000, 0x03ff0000, 0x00000001, 0x18000000, 0x03ff0000,
464    0x000007ff, 0x00000031, 0xc0000000, 0xa0000000, 0xe000e003, 0x6000e000,
465    0xffff0000, 0xffe000ff, 0x7fffffef, 0x70000000, 0x00007000, 0xc1d0037b,
466    0x0c0002af, 0xffff3c1f, 0xffff0e00, 0xfff3ffff, 0x003fffff, 0xf8000000,
467    0xffdfffff, 0x0000007f, 0x000007ff, 0x000000ff, 0xfffffc00, 0xffffefff,
468    0xffcfffff, 0xff3fffff, 0xe3ffffff, 0x0007fdff, 0x0000f000, 0xfe0007e0,
469    0x000003ff, 0xfbffffff, 0x000fffff, 0x003fffff, 0x0fff0000, 0xffffff1e,
470    0xe0c10001, 0x18000000, 0x00000001, 0x08000000, 0x0000000f, 0x60000000,
471    0xffff0000, 0x70000000, 0xfffe0000, 0x0000f000, 0x07800000, 0xc0000000,
472    0x80000000, 0xffff0000, 0x0000007f, 0x0000e000, 0xc0080000, 0x00000003,
473    0x00000100, 0x00000f00, 0x00f00000, 0xc0000000, 0x20000000, 0x03ff0000,
474    0xffff0000, 0x7fd2ffff, 0x00000973, 0xf80007c6, 0xf8000001, 0xf8000001,
475    0x0000003f, 0x3e007f1c, 0x00000002, 0x0fff1fff, 0x00000001, 0x80000000,
476    0xfe000000, 0xfffc0000, 0x0000003f, 0x00001fff, 0x00000023, 0x007fffff,
477    0x08000000, 0x00200000, 0x00008000, 0x00000200, 0x00000008, 0x00030000,
478    0xffff0fff, 0x000fffff, 0xfffe7fff, 0xfffefffe, 0x003fffff, 0x00001800,
479    0x00000c00, 0x0000003f, 0x001fffff, 0x01ff1fff, 0x000fffff, 0x001fffff,
480    0xffff0fff, 0x03ff00ff, 0xffff00ff, 0x00003fff, 0xffff0fff, 0x7fffffff,
481    0xffff1fff, 0x00000fff, 0x00ffffff, 0xffff0001, 0x0000007f};
482    }
483
484    const static UnicodeSet on_Set{const_cast<UnicodeSet::run_t *>(__on_Set_runs), 172, 0, const_cast<UnicodeSet::bitquad_t *>(__on_Set_quads), 131, 0};
485
486    /** Code Point Ranges for BN
487    [0000, 0008], [000e, 001b], [007f, 0084], [0086, 009f], [00ad, 00ad],
488    [180e, 180e], [200b, 200d], [2060, 2065], [206a, 206f], [fdd0, fdef],
489    [feff, feff], [fff0, fff8], [fffe, ffff], [1bca0, 1bca3],
490    [1d173, 1d17a], [1fffe, 1ffff], [2fffe, 2ffff], [3fffe, 3ffff],
491    [4fffe, 4ffff], [5fffe, 5ffff], [6fffe, 6ffff], [7fffe, 7ffff],
492    [8fffe, 8ffff], [9fffe, 9ffff], [afffe, affff], [bfffe, bffff],
493    [cfffe, cffff], [dfffe, e00ff], [e01f0, e0fff], [efffe, effff],
494    [ffffe, fffff], [10fffe, 10ffff]**/
495
496
497    namespace {
498    const static UnicodeSet::run_t __bn_Set_runs[] = {
499    {Mixed, 1}, {Empty, 2}, {Mixed, 3}, {Empty, 186}, {Mixed, 1},
500    {Empty, 63}, {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Empty, 1770},
501    {Mixed, 2}, {Empty, 7}, {Mixed, 1}, {Empty, 7}, {Mixed, 1},
502    {Empty, 1509}, {Mixed, 1}, {Empty, 165}, {Mixed, 1}, {Empty, 371},
503    {Mixed, 1}, {Empty, 2047}, {Mixed, 1}, {Empty, 2047}, {Mixed, 1},
504    {Empty, 2047}, {Mixed, 1}, {Empty, 2047}, {Mixed, 1}, {Empty, 2047},
505    {Mixed, 1}, {Empty, 2047}, {Mixed, 1}, {Empty, 2047}, {Mixed, 1},
506    {Empty, 2047}, {Mixed, 1}, {Empty, 2047}, {Mixed, 1}, {Empty, 2047},
507    {Mixed, 1}, {Empty, 2047}, {Mixed, 1}, {Empty, 2047}, {Mixed, 1},
508    {Full, 8}, {Empty, 7}, {Mixed, 1}, {Full, 112}, {Empty, 1919},
509    {Mixed, 1}, {Empty, 2047}, {Mixed, 1}, {Empty, 2047}, {Mixed, 1}};
510    const static UnicodeSet::bitquad_t  __bn_Set_quads[] = {
511    0x0fffc1ff, 0x80000000, 0xffffffdf, 0x00002000, 0x00004000, 0x00003800,
512    0x0000fc3f, 0xffff0000, 0x0000ffff, 0x80000000, 0xc1ff0000, 0x0000000f,
513    0x07f80000, 0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000,
514    0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000,
515    0xc0000000, 0xc0000000, 0xffff0000, 0xc0000000, 0xc0000000, 0xc0000000};
516    }
517
518    const static UnicodeSet bn_Set{const_cast<UnicodeSet::run_t *>(__bn_Set_runs), 55, 0, const_cast<UnicodeSet::bitquad_t *>(__bn_Set_quads), 30, 0};
519
520    /** Code Point Ranges for NSM
521    [0300, 036f], [0483, 0489], [0591, 05bd], [05bf, 05bf], [05c1, 05c2],
522    [05c4, 05c5], [05c7, 05c7], [0610, 061a], [064b, 065f], [0670, 0670],
523    [06d6, 06dc], [06df, 06e4], [06e7, 06e8], [06ea, 06ed], [0711, 0711],
524    [0730, 074a], [07a6, 07b0], [07eb, 07f3], [0816, 0819], [081b, 0823],
525    [0825, 0827], [0829, 082d], [0859, 085b], [08d4, 08e1], [08e3, 0902],
526    [093a, 093a], [093c, 093c], [0941, 0948], [094d, 094d], [0951, 0957],
527    [0962, 0963], [0981, 0981], [09bc, 09bc], [09c1, 09c4], [09cd, 09cd],
528    [09e2, 09e3], [0a01, 0a02], [0a3c, 0a3c], [0a41, 0a42], [0a47, 0a48],
529    [0a4b, 0a4d], [0a51, 0a51], [0a70, 0a71], [0a75, 0a75], [0a81, 0a82],
530    [0abc, 0abc], [0ac1, 0ac5], [0ac7, 0ac8], [0acd, 0acd], [0ae2, 0ae3],
531    [0afa, 0aff], [0b01, 0b01], [0b3c, 0b3c], [0b3f, 0b3f], [0b41, 0b44],
532    [0b4d, 0b4d], [0b56, 0b56], [0b62, 0b63], [0b82, 0b82], [0bc0, 0bc0],
533    [0bcd, 0bcd], [0c00, 0c00], [0c3e, 0c40], [0c46, 0c48], [0c4a, 0c4d],
534    [0c55, 0c56], [0c62, 0c63], [0c81, 0c81], [0cbc, 0cbc], [0ccc, 0ccd],
535    [0ce2, 0ce3], [0d00, 0d01], [0d3b, 0d3c], [0d41, 0d44], [0d4d, 0d4d],
536    [0d62, 0d63], [0dca, 0dca], [0dd2, 0dd4], [0dd6, 0dd6], [0e31, 0e31],
537    [0e34, 0e3a], [0e47, 0e4e], [0eb1, 0eb1], [0eb4, 0eb9], [0ebb, 0ebc],
538    [0ec8, 0ecd], [0f18, 0f19], [0f35, 0f35], [0f37, 0f37], [0f39, 0f39],
539    [0f71, 0f7e], [0f80, 0f84], [0f86, 0f87], [0f8d, 0f97], [0f99, 0fbc],
540    [0fc6, 0fc6], [102d, 1030], [1032, 1037], [1039, 103a], [103d, 103e],
541    [1058, 1059], [105e, 1060], [1071, 1074], [1082, 1082], [1085, 1086],
542    [108d, 108d], [109d, 109d], [135d, 135f], [1712, 1714], [1732, 1734],
543    [1752, 1753], [1772, 1773], [17b4, 17b5], [17b7, 17bd], [17c6, 17c6],
544    [17c9, 17d3], [17dd, 17dd], [180b, 180d], [1885, 1886], [18a9, 18a9],
545    [1920, 1922], [1927, 1928], [1932, 1932], [1939, 193b], [1a17, 1a18],
546    [1a1b, 1a1b], [1a56, 1a56], [1a58, 1a5e], [1a60, 1a60], [1a62, 1a62],
547    [1a65, 1a6c], [1a73, 1a7c], [1a7f, 1a7f], [1ab0, 1abe], [1b00, 1b03],
548    [1b34, 1b34], [1b36, 1b3a], [1b3c, 1b3c], [1b42, 1b42], [1b6b, 1b73],
549    [1b80, 1b81], [1ba2, 1ba5], [1ba8, 1ba9], [1bab, 1bad], [1be6, 1be6],
550    [1be8, 1be9], [1bed, 1bed], [1bef, 1bf1], [1c2c, 1c33], [1c36, 1c37],
551    [1cd0, 1cd2], [1cd4, 1ce0], [1ce2, 1ce8], [1ced, 1ced], [1cf4, 1cf4],
552    [1cf8, 1cf9], [1dc0, 1df9], [1dfb, 1dff], [20d0, 20f0], [2cef, 2cf1],
553    [2d7f, 2d7f], [2de0, 2dff], [302a, 302d], [3099, 309a], [a66f, a672],
554    [a674, a67d], [a69e, a69f], [a6f0, a6f1], [a802, a802], [a806, a806],
555    [a80b, a80b], [a825, a826], [a8c4, a8c5], [a8e0, a8f1], [a926, a92d],
556    [a947, a951], [a980, a982], [a9b3, a9b3], [a9b6, a9b9], [a9bc, a9bc],
557    [a9e5, a9e5], [aa29, aa2e], [aa31, aa32], [aa35, aa36], [aa43, aa43],
558    [aa4c, aa4c], [aa7c, aa7c], [aab0, aab0], [aab2, aab4], [aab7, aab8],
559    [aabe, aabf], [aac1, aac1], [aaec, aaed], [aaf6, aaf6], [abe5, abe5],
560    [abe8, abe8], [abed, abed], [fb1e, fb1e], [fe00, fe0f], [fe20, fe2f],
561    [101fd, 101fd], [102e0, 102e0], [10376, 1037a], [10a01, 10a03],
562    [10a05, 10a06], [10a0c, 10a0f], [10a38, 10a3a], [10a3f, 10a3f],
563    [10ae5, 10ae6], [11001, 11001], [11038, 11046], [1107f, 11081],
564    [110b3, 110b6], [110b9, 110ba], [11100, 11102], [11127, 1112b],
565    [1112d, 11134], [11173, 11173], [11180, 11181], [111b6, 111be],
566    [111ca, 111cc], [1122f, 11231], [11234, 11234], [11236, 11237],
567    [1123e, 1123e], [112df, 112df], [112e3, 112ea], [11300, 11301],
568    [1133c, 1133c], [11340, 11340], [11366, 1136c], [11370, 11374],
569    [11438, 1143f], [11442, 11444], [11446, 11446], [114b3, 114b8],
570    [114ba, 114ba], [114bf, 114c0], [114c2, 114c3], [115b2, 115b5],
571    [115bc, 115bd], [115bf, 115c0], [115dc, 115dd], [11633, 1163a],
572    [1163d, 1163d], [1163f, 11640], [116ab, 116ab], [116ad, 116ad],
573    [116b0, 116b5], [116b7, 116b7], [1171d, 1171f], [11722, 11725],
574    [11727, 1172b], [11a01, 11a06], [11a09, 11a0a], [11a33, 11a38],
575    [11a3b, 11a3e], [11a47, 11a47], [11a51, 11a56], [11a59, 11a5b],
576    [11a8a, 11a96], [11a98, 11a99], [11c30, 11c36], [11c38, 11c3d],
577    [11c92, 11ca7], [11caa, 11cb0], [11cb2, 11cb3], [11cb5, 11cb6],
578    [11d31, 11d36], [11d3a, 11d3a], [11d3c, 11d3d], [11d3f, 11d45],
579    [11d47, 11d47], [16af0, 16af4], [16b30, 16b36], [16f8f, 16f92],
580    [1bc9d, 1bc9e], [1d167, 1d169], [1d17b, 1d182], [1d185, 1d18b],
581    [1d1aa, 1d1ad], [1d242, 1d244], [1da00, 1da36], [1da3b, 1da6c],
582    [1da75, 1da75], [1da84, 1da84], [1da9b, 1da9f], [1daa1, 1daaf],
583    [1e000, 1e006], [1e008, 1e018], [1e01b, 1e021], [1e023, 1e024],
584    [1e026, 1e02a], [1e8d0, 1e8d6], [1e944, 1e94a], [e0100, e01ef]**/
585
586
587    namespace {
588    const static UnicodeSet::run_t __nsm_Set_runs[] = {
589    {Empty, 24}, {Full, 3}, {Mixed, 1}, {Empty, 8}, {Mixed, 1}, {Empty, 7},
590    {Mixed, 3}, {Empty, 1}, {Mixed, 1}, {Empty, 1}, {Mixed, 2}, {Empty, 2},
591    {Mixed, 5}, {Empty, 2}, {Mixed, 1}, {Empty, 1}, {Mixed, 4}, {Empty, 3},
592    {Mixed, 23}, {Empty, 1}, {Mixed, 1}, {Empty, 1}, {Mixed, 12},
593    {Empty, 2}, {Mixed, 1}, {Empty, 2}, {Mixed, 2}, {Empty, 2}, {Mixed, 2},
594    {Empty, 1}, {Mixed, 2}, {Empty, 1}, {Mixed, 4}, {Empty, 2}, {Mixed, 4},
595    {Empty, 21}, {Mixed, 1}, {Empty, 29}, {Mixed, 4}, {Empty, 1},
596    {Mixed, 2}, {Empty, 1}, {Mixed, 1}, {Empty, 3}, {Mixed, 2}, {Empty, 3},
597    {Mixed, 1}, {Empty, 6}, {Mixed, 1}, {Empty, 1}, {Mixed, 2}, {Empty, 1},
598    {Mixed, 1}, {Empty, 2}, {Mixed, 6}, {Empty, 1}, {Mixed, 1}, {Empty, 1},
599    {Mixed, 1}, {Empty, 4}, {Mixed, 2}, {Empty, 6}, {Full, 1}, {Mixed, 1},
600    {Empty, 22}, {Mixed, 2}, {Empty, 95}, {Mixed, 1}, {Empty, 3},
601    {Mixed, 1}, {Empty, 3}, {Full, 1}, {Empty, 17}, {Mixed, 1}, {Empty, 2},
602    {Mixed, 1}, {Empty, 942}, {Mixed, 2}, {Empty, 2}, {Mixed, 1},
603    {Empty, 8}, {Mixed, 2}, {Empty, 4}, {Mixed, 2}, {Empty, 1}, {Mixed, 2},
604    {Empty, 1}, {Mixed, 2}, {Empty, 1}, {Mixed, 1}, {Empty, 1}, {Mixed, 3},
605    {Empty, 1}, {Mixed, 3}, {Empty, 7}, {Mixed, 1}, {Empty, 632},
606    {Mixed, 1}, {Empty, 23}, {Mixed, 2}, {Empty, 29}, {Mixed, 1},
607    {Empty, 7}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 52}, {Mixed, 2},
608    {Empty, 5}, {Mixed, 1}, {Empty, 40}, {Mixed, 6}, {Empty, 2}, {Mixed, 2},
609    {Empty, 1}, {Mixed, 4}, {Empty, 2}, {Mixed, 1}, {Empty, 4}, {Mixed, 6},
610    {Empty, 5}, {Mixed, 2}, {Empty, 2}, {Mixed, 2}, {Empty, 6}, {Mixed, 2},
611    {Empty, 2}, {Mixed, 2}, {Empty, 2}, {Mixed, 1}, {Empty, 2}, {Mixed, 2},
612    {Empty, 22}, {Mixed, 3}, {Empty, 1}, {Mixed, 1}, {Empty, 12},
613    {Mixed, 1}, {Empty, 2}, {Mixed, 2}, {Empty, 3}, {Mixed, 2},
614    {Empty, 620}, {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 34},
615    {Mixed, 1}, {Empty, 615}, {Mixed, 1}, {Empty, 166}, {Mixed, 3},
616    {Empty, 4}, {Mixed, 1}, {Empty, 61}, {Full, 1}, {Mixed, 1}, {Full, 1},
617    {Mixed, 3}, {Empty, 42}, {Mixed, 2}, {Empty, 68}, {Mixed, 1},
618    {Empty, 3}, {Mixed, 1}, {Empty, 24765}, {Full, 7}, {Mixed, 1},
619    {Empty, 6128}};
620    const static UnicodeSet::bitquad_t  __nsm_Set_quads[] = {
621    0x0000ffff, 0x000003f8, 0xfffe0000, 0xbfffffff, 0x000000b6, 0x07ff0000,
622    0xfffff800, 0x00010000, 0x9fc00000, 0x00003d9f, 0x00020000, 0xffff0000,
623    0x000007ff, 0x0001ffc0, 0x000ff800, 0xfbc00000, 0x00003eef, 0x0e000000,
624    0xfff00000, 0xfffffffb, 0x00000007, 0x14000000, 0x00fe21fe, 0x0000000c,
625    0x00000002, 0x10000000, 0x0000201e, 0x0000000c, 0x00000006, 0x10000000,
626    0x00023986, 0x00230000, 0x00000006, 0x10000000, 0x000021be, 0xfc00000c,
627    0x00000002, 0x90000000, 0x0040201e, 0x0000000c, 0x00000004, 0x00002001,
628    0x00000001, 0xc0000000, 0x00603dc1, 0x0000000c, 0x00000002, 0x10000000,
629    0x00003000, 0x0000000c, 0x00000003, 0x18000000, 0x0000201e, 0x0000000c,
630    0x005c0400, 0x07f20000, 0x00007f80, 0x1bf20000, 0x00003f00, 0x03000000,
631    0x02a00000, 0x7ffe0000, 0xfeffe0df, 0x1fffffff, 0x00000040, 0x66fde000,
632    0xc3000000, 0x001e0001, 0x20002064, 0xe0000000, 0x001c0000, 0x001c0000,
633    0x000c0000, 0x000c0000, 0x3fb00000, 0x200ffe40, 0x00003800, 0x00000060,
634    0x00000200, 0x0e040187, 0x09800000, 0x7f400000, 0x9ff81fe5, 0x7fff0000,
635    0x0000000f, 0x17d00000, 0x00000004, 0x000ff800, 0x00000003, 0x00003b3c,
636    0x0003a340, 0x00cff000, 0xfff70000, 0x031021fd, 0xfbffffff, 0xffff0000,
637    0x0001ffff, 0x00038000, 0x80000000, 0x00003c00, 0x06000000, 0x3ff78000,
638    0xc0000000, 0x00030000, 0x00000844, 0x00000060, 0x00000030, 0x0003ffff,
639    0x00003fc0, 0x0003ff80, 0x00000007, 0x13c80000, 0x00000020, 0x00667e00,
640    0x00001008, 0x10000000, 0xc19d0000, 0x00000002, 0x00403000, 0x00002120,
641    0x40000000, 0x0000ffff, 0x0000ffff, 0x20000000, 0x00000001, 0x07c00000,
642    0x0000f06e, 0x87000000, 0x00000060, 0x00000002, 0xff000000, 0x0000007f,
643    0x80000000, 0x00000003, 0x06780000, 0x00000007, 0x001fef80, 0x00080000,
644    0x00000003, 0x7fc00000, 0x00001c00, 0x40d38000, 0x80000000, 0x000007f8,
645    0x00000003, 0x10000000, 0x00000001, 0x001f1fc0, 0xff000000, 0x0000005c,
646    0x85f80000, 0x0000000d, 0xb03c0000, 0x30000001, 0xa7f80000, 0x00000001,
647    0x00bf2800, 0xe0000000, 0x00000fbc, 0x0000067e, 0x79f80000, 0x0e7e0080,
648    0x037ffc00, 0x3f7f0000, 0xfffc0000, 0x006dfcff, 0xb47e0000, 0x000000bf,
649    0x001f0000, 0x007f0000, 0x00078000, 0x60000000, 0xf8000380, 0x00000fe7,
650    0x00003c00, 0x0000001c, 0xf87fffff, 0x00201fff, 0xf8000010, 0x0000fffe,
651    0xf9ffff7f, 0x000007db, 0x007f0000, 0x000007f0, 0x0000ffff};
652    }
653
654    const static UnicodeSet nsm_Set{const_cast<UnicodeSet::run_t *>(__nsm_Set_runs), 169, 0, const_cast<UnicodeSet::bitquad_t *>(__nsm_Set_quads), 185, 0};
655
656    /** Code Point Ranges for AL
657    [0608, 0608], [060b, 060b], [060d, 060d], [061b, 064a], [066d, 066f],
658    [0671, 06d5], [06e5, 06e6], [06ee, 06ef], [06fa, 0710], [0712, 072f],
659    [074b, 07a5], [07b1, 07bf], [0860, 086f], [08a0, 08d3], [fb50, fd3d],
660    [fd40, fdcf], [fdf0, fdfc], [fdfe, fdff], [fe70, fefe], [1ee00, 1eeef],
661    [1eef2, 1eeff]**/
662
663
664    namespace {
665    const static UnicodeSet::run_t __al_Set_runs[] = {
666    {Empty, 48}, {Mixed, 1}, {Full, 1}, {Mixed, 2}, {Full, 2}, {Mixed, 5},
667    {Full, 2}, {Mixed, 1}, {Empty, 5}, {Mixed, 1}, {Empty, 1}, {Full, 1},
668    {Mixed, 1}, {Empty, 1939}, {Mixed, 1}, {Full, 14}, {Mixed, 1},
669    {Full, 4}, {Mixed, 2}, {Empty, 3}, {Mixed, 1}, {Full, 3}, {Mixed, 1},
670    {Empty, 1912}, {Full, 7}, {Mixed, 1}, {Empty, 30856}};
671    const static UnicodeSet::bitquad_t  __al_Set_quads[] = {
672    0xf8002900, 0x000007ff, 0xfffee000, 0x003fffff, 0xfc00c060, 0xfffdffff,
673    0x0000ffff, 0xfffff800, 0xfffe003f, 0x0000ffff, 0x000fffff, 0xffff0000,
674    0x3fffffff, 0x0000ffff, 0xdfff0000, 0xffff0000, 0x7fffffff, 0xfffcffff};
675    }
676
677    const static UnicodeSet al_Set{const_cast<UnicodeSet::run_t *>(__al_Set_runs), 27, 0, const_cast<UnicodeSet::bitquad_t *>(__al_Set_quads), 18, 0};
678
679    /** Code Point Ranges for LRO
680    [202d, 202d]**/
681
682
683    namespace {
684    const static UnicodeSet::run_t __lro_Set_runs[] = {
685    {Empty, 257}, {Mixed, 1}, {Empty, 34558}};
686    const static UnicodeSet::bitquad_t  __lro_Set_quads[] = {
687    0x00002000};
688    }
689
690    const static UnicodeSet lro_Set{const_cast<UnicodeSet::run_t *>(__lro_Set_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__lro_Set_quads), 1, 0};
691
692    /** Code Point Ranges for RLO
693    [202e, 202e]**/
694
695
696    namespace {
697    const static UnicodeSet::run_t __rlo_Set_runs[] = {
698    {Empty, 257}, {Mixed, 1}, {Empty, 34558}};
699    const static UnicodeSet::bitquad_t  __rlo_Set_quads[] = {
700    0x00004000};
701    }
702
703    const static UnicodeSet rlo_Set{const_cast<UnicodeSet::run_t *>(__rlo_Set_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__rlo_Set_quads), 1, 0};
704
705    /** Code Point Ranges for LRE
706    [202a, 202a]**/
707
708
709    namespace {
710    const static UnicodeSet::run_t __lre_Set_runs[] = {
711    {Empty, 257}, {Mixed, 1}, {Empty, 34558}};
712    const static UnicodeSet::bitquad_t  __lre_Set_quads[] = {
713    0x00000400};
714    }
715
716    const static UnicodeSet lre_Set{const_cast<UnicodeSet::run_t *>(__lre_Set_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__lre_Set_quads), 1, 0};
717
718    /** Code Point Ranges for RLE
719    [202b, 202b]**/
720
721
722    namespace {
723    const static UnicodeSet::run_t __rle_Set_runs[] = {
724    {Empty, 257}, {Mixed, 1}, {Empty, 34558}};
725    const static UnicodeSet::bitquad_t  __rle_Set_quads[] = {
726    0x00000800};
727    }
728
729    const static UnicodeSet rle_Set{const_cast<UnicodeSet::run_t *>(__rle_Set_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__rle_Set_quads), 1, 0};
730
731    /** Code Point Ranges for PDF
732    [202c, 202c]**/
733
734
735    namespace {
736    const static UnicodeSet::run_t __pdf_Set_runs[] = {
737    {Empty, 257}, {Mixed, 1}, {Empty, 34558}};
738    const static UnicodeSet::bitquad_t  __pdf_Set_quads[] = {
739    0x00001000};
740    }
741
742    const static UnicodeSet pdf_Set{const_cast<UnicodeSet::run_t *>(__pdf_Set_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__pdf_Set_quads), 1, 0};
743
744    /** Code Point Ranges for LRI
745    [2066, 2066]**/
746
747
748    namespace {
749    const static UnicodeSet::run_t __lri_Set_runs[] = {
750    {Empty, 259}, {Mixed, 1}, {Empty, 34556}};
751    const static UnicodeSet::bitquad_t  __lri_Set_quads[] = {
752    0x00000040};
753    }
754
755    const static UnicodeSet lri_Set{const_cast<UnicodeSet::run_t *>(__lri_Set_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__lri_Set_quads), 1, 0};
756
757    /** Code Point Ranges for RLI
758    [2067, 2067]**/
759
760
761    namespace {
762    const static UnicodeSet::run_t __rli_Set_runs[] = {
763    {Empty, 259}, {Mixed, 1}, {Empty, 34556}};
764    const static UnicodeSet::bitquad_t  __rli_Set_quads[] = {
765    0x00000080};
766    }
767
768    const static UnicodeSet rli_Set{const_cast<UnicodeSet::run_t *>(__rli_Set_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__rli_Set_quads), 1, 0};
769
770    /** Code Point Ranges for FSI
771    [2068, 2068]**/
772
773
774    namespace {
775    const static UnicodeSet::run_t __fsi_Set_runs[] = {
776    {Empty, 259}, {Mixed, 1}, {Empty, 34556}};
777    const static UnicodeSet::bitquad_t  __fsi_Set_quads[] = {
778    0x00000100};
779    }
780
781    const static UnicodeSet fsi_Set{const_cast<UnicodeSet::run_t *>(__fsi_Set_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__fsi_Set_quads), 1, 0};
782
783    /** Code Point Ranges for PDI
784    [2069, 2069]**/
785
786
787    namespace {
788    const static UnicodeSet::run_t __pdi_Set_runs[] = {
789    {Empty, 259}, {Mixed, 1}, {Empty, 34556}};
790    const static UnicodeSet::bitquad_t  __pdi_Set_quads[] = {
791    0x00000200};
792    }
793
794    const static UnicodeSet pdi_Set{const_cast<UnicodeSet::run_t *>(__pdi_Set_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__pdi_Set_quads), 1, 0};
795
796    static EnumeratedPropertyObject property_object
797        {bc,
798        BC_ns::independent_prop_values,
799        std::move(BC_ns::enum_names),
800        std::move(BC_ns::value_names),
801        std::move(BC_ns::aliases_only_map),{
802        &l_Set, &r_Set, &en_Set, &es_Set, &et_Set, &an_Set, &cs_Set, &b_Set,
803        &s_Set, &ws_Set, &on_Set, &bn_Set, &nsm_Set, &al_Set, &lro_Set,
804        &rlo_Set, &lre_Set, &rle_Set, &pdf_Set, &lri_Set, &rli_Set,
805        &fsi_Set, &pdi_Set
806        }};
807    }
808}
809
810#endif
Note: See TracBrowser for help on using the repository browser.