source: icGREP/icgrep-devel/icgrep/UCD/IndicPositionalCategory.h @ 6194

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

Updates for Unicode 11.0 plus Emoji properties

File size: 32.4 KB
Line 
1#ifndef INDICPOSITIONALCATEGORY_H
2#define INDICPOSITIONALCATEGORY_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 INPC_ns {
18    const unsigned independent_prop_values = 15;
19    /** Code Point Ranges for NA
20    [0000, 08ff], [0904, 0939], [093d, 093d], [0950, 0950], [0958, 0961],
21    [0964, 0980], [0984, 09bb], [09bd, 09bd], [09c5, 09c6], [09c9, 09ca],
22    [09ce, 09d6], [09d8, 09e1], [09e4, 09fd], [09ff, 0a00], [0a04, 0a3b],
23    [0a3d, 0a3d], [0a43, 0a46], [0a49, 0a4a], [0a4e, 0a6f], [0a72, 0a74],
24    [0a76, 0a80], [0a84, 0abb], [0abd, 0abd], [0ac6, 0ac6], [0aca, 0aca],
25    [0ace, 0ae1], [0ae4, 0af9], [0b00, 0b00], [0b04, 0b3b], [0b3d, 0b3d],
26    [0b45, 0b46], [0b49, 0b4a], [0b4e, 0b55], [0b58, 0b61], [0b64, 0b81],
27    [0b83, 0bbd], [0bc3, 0bc5], [0bc9, 0bc9], [0bce, 0bd6], [0bd8, 0bff],
28    [0c05, 0c3d], [0c45, 0c45], [0c49, 0c49], [0c4e, 0c54], [0c57, 0c61],
29    [0c64, 0c80], [0c84, 0cbb], [0cbd, 0cbd], [0cc5, 0cc5], [0cc9, 0cc9],
30    [0cce, 0cd4], [0cd7, 0ce1], [0ce4, 0cff], [0d04, 0d3a], [0d3d, 0d3d],
31    [0d45, 0d45], [0d49, 0d49], [0d4e, 0d56], [0d58, 0d61], [0d64, 0d81],
32    [0d84, 0dc9], [0dcb, 0dce], [0dd5, 0dd5], [0dd7, 0dd7], [0de0, 0df1],
33    [0df4, 0e2f], [0e3b, 0e3f], [0e46, 0e46], [0e4f, 0eaf], [0eba, 0eba],
34    [0ebd, 0ebf], [0ec5, 0ec7], [0ece, 0f17], [0f1a, 0f34], [0f36, 0f36],
35    [0f38, 0f38], [0f3a, 0f3d], [0f40, 0f70], [0f85, 0f85], [0f88, 0f8c],
36    [0f98, 0f98], [0fbd, 0fc5], [0fc7, 102a], [1039, 1039], [103c, 103c],
37    [103f, 1055], [105a, 105d], [1061, 1061], [1065, 1066], [106e, 1070],
38    [1075, 1081], [108e, 108e], [1090, 1099], [109e, 1711], [1715, 1731],
39    [1735, 1751], [1754, 1771], [1774, 17b5], [17d2, 17d2], [17d4, 17dc],
40    [17de, 191f], [192c, 192f], [193c, 19af], [19c1, 19c7], [19ca, 1a16],
41    [1a1c, 1a54], [1a5f, 1a60], [1a7d, 1a7e], [1a80, 1aff], [1b05, 1b33],
42    [1b45, 1b6a], [1b74, 1b7f], [1b83, 1ba0], [1bab, 1bab], [1bae, 1be5],
43    [1bf4, 1c23], [1c38, 1ccf], [1cd3, 1cd3], [1ce9, 1cec], [1cee, 1cf3],
44    [1cf5, 1cf6], [1cf8, 1dfa], [1dfc, a805], [a807, a80a], [a80c, a822],
45    [a828, a87f], [a882, a8b3], [a8c6, a8df], [a8f2, a8fe], [a900, a92a],
46    [a92e, a946], [a954, a97f], [a984, a9b2], [a9c1, a9e4], [a9e6, aa28],
47    [aa37, aa42], [aa44, aa4b], [aa4e, aa7a], [aa7e, aaaf], [aac0, aac0],
48    [aac2, aaea], [aaf0, aaf4], [aaf6, abe2], [abeb, abeb], [abee, 10a00],
49    [10a04, 10a04], [10a07, 10a0b], [10a10, 10a37], [10a3b, 10fff],
50    [11003, 11037], [11047, 1107f], [11083, 110af], [110bb, 110ff],
51    [11103, 11126], [11133, 11133], [11135, 11144], [11147, 11172],
52    [11174, 1117f], [11183, 111b2], [111c1, 111c8], [111ca, 111ca],
53    [111cd, 1122b], [11238, 1123d], [1123f, 112de], [112eb, 11300],
54    [11304, 1133a], [1133d, 1133d], [11345, 11346], [11349, 1134a],
55    [1134e, 11356], [11358, 11361], [11364, 11365], [1136d, 1136f],
56    [11375, 11434], [11447, 1145d], [1145f, 114af], [114c4, 115ae],
57    [115b6, 115b7], [115c1, 115db], [115de, 1162f], [11641, 116aa],
58    [116b8, 1171c], [1171e, 1171e], [1172c, 1182b], [1183b, 11a00],
59    [11a0b, 11a32], [11a3a, 11a3a], [11a3f, 11a50], [11a5c, 11a89],
60    [11a99, 11c2e], [11c37, 11c37], [11c40, 11c91], [11ca8, 11ca8],
61    [11cb7, 11d30], [11d37, 11d39], [11d3b, 11d3b], [11d3e, 11d3e],
62    [11d45, 11d46], [11d48, 11d89], [11d8f, 11d8f], [11d92, 11d92],
63    [11d97, 11ef2], [11ef7, 10ffff]**/
64
65
66    namespace {
67    const static UnicodeSet::run_t __na_Set_runs[] = {
68    {Full, 72}, {Mixed, 23}, {Full, 1}, {Mixed, 13}, {Full, 1}, {Mixed, 2},
69    {Full, 1}, {Mixed, 2}, {Full, 2}, {Mixed, 2}, {Full, 1}, {Mixed, 2},
70    {Full, 1}, {Mixed, 4}, {Full, 2}, {Mixed, 4}, {Full, 51}, {Mixed, 4},
71    {Full, 1}, {Mixed, 2}, {Full, 10}, {Mixed, 1}, {Full, 3}, {Mixed, 2},
72    {Full, 1}, {Mixed, 1}, {Full, 1}, {Mixed, 2}, {Full, 4}, {Mixed, 6},
73    {Full, 1}, {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Full, 4}, {Mixed, 2},
74    {Full, 7}, {Mixed, 1}, {Full, 1104}, {Mixed, 2}, {Full, 2}, {Mixed, 4},
75    {Full, 1}, {Mixed, 2}, {Full, 1}, {Mixed, 4}, {Full, 1}, {Mixed, 3},
76    {Full, 1}, {Mixed, 3}, {Full, 7}, {Mixed, 1}, {Full, 752}, {Mixed, 2},
77    {Full, 46}, {Mixed, 3}, {Full, 1}, {Mixed, 2}, {Full, 2}, {Mixed, 7},
78    {Full, 2}, {Mixed, 1}, {Full, 4}, {Mixed, 6}, {Full, 5}, {Mixed, 2},
79    {Full, 2}, {Mixed, 2}, {Full, 6}, {Mixed, 2}, {Full, 2}, {Mixed, 2},
80    {Full, 2}, {Mixed, 1}, {Full, 2}, {Mixed, 2}, {Full, 7}, {Mixed, 1},
81    {Full, 14}, {Mixed, 3}, {Full, 1}, {Mixed, 1}, {Full, 12}, {Mixed, 1},
82    {Full, 2}, {Mixed, 2}, {Full, 3}, {Mixed, 2}, {Full, 1}, {Mixed, 1},
83    {Full, 10}, {Mixed, 1}, {Full, 32520}};
84    const static UnicodeSet::bitquad_t  __na_Set_quads[] = {
85    0xfffffff0, 0x23ffffff, 0xff010000, 0xfffffff3, 0xfffffff1, 0x2fffffff,
86    0xff7fc660, 0xbffffff3, 0xfffffff1, 0x2fffffff, 0xffffc678, 0xffdcffff,
87    0xfffffff1, 0x2fffffff, 0xffffc440, 0x03fffff3, 0xfffffff1, 0x2fffffff,
88    0xff3fc660, 0xfffffff3, 0xfffffffb, 0x3fffffff, 0xff7fc238, 0xffffffe0,
89    0x3fffffff, 0xff9fc220, 0xfffffff3, 0xfffffff1, 0x2fffffff, 0xff9fc220,
90    0xfffffff3, 0xfffffff0, 0x27ffffff, 0xff7fc220, 0xfffffff3, 0xfffffff3,
91    0x00a07bff, 0xfff3ffff, 0xf800ffff, 0xffff8040, 0xe400ffff, 0xffffc0e0,
92    0xfcffffff, 0x3d5fffff, 0x0001ffff, 0x01001f20, 0xe0000000, 0xffffffbf,
93    0x920007ff, 0x3c3fffff, 0xffe1c062, 0xc3ff4003, 0xffe3ffff, 0xffe3ffff,
94    0xfff3ffff, 0xfff3ffff, 0x003fffff, 0xdff40000, 0xf000f000, 0x0000ffff,
95    0xfffffcfe, 0xf07fffff, 0x801fffff, 0x60000001, 0xffffffe0, 0x000fffff,
96    0xffffffe0, 0xfff007ff, 0xfffffff8, 0xffffc801, 0xfff0003f, 0xff00000f,
97    0x0008ffff, 0xff6fde00, 0xf7ffffff, 0xfffff7bf, 0xffffff07, 0xfffffffc,
98    0x000fffff, 0xffffffc0, 0x7ffc0000, 0xffffc7ff, 0xfff0007f, 0xfffffff0,
99    0x0007ffff, 0xfffffffe, 0xffffffdf, 0xff8001ff, 0xffffcff7, 0xc7ffffff,
100    0x0000ffff, 0xfffffffd, 0xffdf07ff, 0xffffc807, 0xffff0f91, 0xf8ffffff,
101    0xfffffff8, 0x00ffffff, 0xffffff80, 0xfffffff8, 0xf800ffff, 0xfffffff8,
102    0xffe8007f, 0xffffff9f, 0xfff7ffff, 0xfffffff8, 0x0007ffff, 0xffffe5fe,
103    0xbf000fff, 0x7fffffff, 0xfffff800, 0xfffffff1, 0x27ffffff, 0xff7fc660,
104    0xffe0e033, 0x001fffff, 0xbfffff80, 0x0000ffff, 0xfffffff0, 0x00c07fff,
105    0xcffffffe, 0x0000ffff, 0xfffffffe, 0xff0007ff, 0x5fffffff, 0xfffff000,
106    0xf8000fff, 0xfffff801, 0x8407ffff, 0xf001ffff, 0xfe0003ff, 0x00807fff,
107    0x0003ffff, 0xff800100, 0x4b81ffff, 0xffffff60, 0xff8483ff, 0xff87ffff};
108    }
109
110    const static UnicodeSet na_Set{const_cast<UnicodeSet::run_t *>(__na_Set_runs), 93, 0, const_cast<UnicodeSet::bitquad_t *>(__na_Set_quads), 138, 0};
111
112    /** Code Point Ranges for Right
113    [0903, 0903], [093b, 093b], [093e, 093e], [0940, 0940], [0949, 094c],
114    [094f, 094f], [0982, 0983], [09be, 09be], [09c0, 09c0], [09d7, 09d7],
115    [0a03, 0a03], [0a3e, 0a3e], [0a40, 0a40], [0a83, 0a83], [0abe, 0abe],
116    [0ac0, 0ac0], [0acb, 0acc], [0b02, 0b03], [0b3e, 0b3e], [0b40, 0b40],
117    [0bbe, 0bbf], [0bc1, 0bc2], [0bd7, 0bd7], [0c01, 0c03], [0c41, 0c44],
118    [0c82, 0c83], [0cbe, 0cbe], [0cc1, 0cc4], [0cd5, 0cd6], [0d02, 0d03],
119    [0d3e, 0d42], [0d57, 0d57], [0d82, 0d83], [0dcf, 0dd1], [0dd8, 0dd8],
120    [0ddf, 0ddf], [0df2, 0df3], [0e30, 0e30], [0e32, 0e33], [0e45, 0e45],
121    [0eb0, 0eb0], [0eb2, 0eb3], [0f3e, 0f3e], [0f7f, 0f7f], [102b, 102c],
122    [1038, 1038], [103b, 103b], [1056, 1057], [1062, 1064], [1067, 106d],
123    [1083, 1083], [1087, 108c], [108f, 108f], [109a, 109c], [17b6, 17b6],
124    [17c7, 17c8], [1923, 1924], [1929, 192b], [1930, 1931], [1933, 1938],
125    [19b0, 19b4], [19b8, 19b9], [19bb, 19c0], [19c8, 19c9], [1a1a, 1a1a],
126    [1a57, 1a57], [1a61, 1a61], [1a63, 1a64], [1a6d, 1a6d], [1b04, 1b04],
127    [1b35, 1b35], [1b44, 1b44], [1b82, 1b82], [1ba1, 1ba1], [1ba7, 1ba7],
128    [1baa, 1baa], [1be7, 1be7], [1bea, 1bec], [1bee, 1bee], [1bf2, 1bf3],
129    [1c24, 1c26], [1c2a, 1c2b], [1ce1, 1ce1], [1cf7, 1cf7], [a823, a824],
130    [a827, a827], [a880, a881], [a8b4, a8c3], [a952, a953], [a983, a983],
131    [a9b4, a9b5], [a9bd, a9be], [aa33, aa33], [aa4d, aa4d], [aa7b, aa7b],
132    [aa7d, aa7d], [aab1, aab1], [aaba, aaba], [aabd, aabd], [aaef, aaef],
133    [aaf5, aaf5], [abe3, abe4], [abe6, abe7], [abe9, abea], [abec, abec],
134    [11000, 11000], [11002, 11002], [11082, 11082], [110b0, 110b0],
135    [110b2, 110b2], [110b7, 110b8], [11145, 11146], [11182, 11182],
136    [111b3, 111b3], [111b5, 111b5], [111c0, 111c0], [1122c, 1122e],
137    [11235, 11235], [112e0, 112e0], [112e2, 112e2], [11302, 11303],
138    [1133e, 1133f], [11341, 11344], [1134d, 1134d], [11357, 11357],
139    [11362, 11363], [11435, 11435], [11437, 11437], [11440, 11441],
140    [11445, 11445], [114b0, 114b0], [114b2, 114b2], [114bd, 114bd],
141    [114c1, 114c1], [115af, 115af], [115b1, 115b1], [115be, 115be],
142    [11630, 11632], [1163b, 1163c], [1163e, 1163e], [116ac, 116ac],
143    [116af, 116af], [116b6, 116b6], [11720, 11721], [1182c, 1182c],
144    [1182e, 1182e], [11838, 11838], [11a39, 11a39], [11a57, 11a58],
145    [11a97, 11a97], [11c2f, 11c2f], [11c3e, 11c3e], [11ca9, 11ca9],
146    [11cb4, 11cb4], [11d8a, 11d8e], [11d93, 11d94], [11d96, 11d96],
147    [11ef6, 11ef6]**/
148
149
150    namespace {
151    const static UnicodeSet::run_t __right_Set_runs[] = {
152    {Empty, 72}, {Mixed, 3}, {Empty, 1}, {Mixed, 3}, {Empty, 1}, {Mixed, 3},
153    {Empty, 1}, {Mixed, 3}, {Empty, 1}, {Mixed, 3}, {Empty, 2}, {Mixed, 2},
154    {Empty, 1}, {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 1}, {Mixed, 3},
155    {Empty, 1}, {Mixed, 3}, {Empty, 1}, {Mixed, 1}, {Empty, 1}, {Mixed, 2},
156    {Empty, 1}, {Mixed, 2}, {Empty, 2}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
157    {Empty, 1}, {Mixed, 1}, {Empty, 5}, {Mixed, 4}, {Empty, 56}, {Mixed, 2},
158    {Empty, 10}, {Mixed, 1}, {Empty, 3}, {Mixed, 2}, {Empty, 1}, {Mixed, 1},
159    {Empty, 1}, {Mixed, 2}, {Empty, 4}, {Mixed, 3}, {Empty, 1}, {Mixed, 2},
160    {Empty, 1}, {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 5}, {Mixed, 1},
161    {Empty, 1113}, {Mixed, 1}, {Empty, 2}, {Mixed, 3}, {Empty, 3},
162    {Mixed, 1}, {Empty, 1}, {Mixed, 2}, {Empty, 3}, {Mixed, 3}, {Empty, 1},
163    {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 7}, {Mixed, 1},
164    {Empty, 800}, {Mixed, 1}, {Empty, 3}, {Mixed, 2}, {Empty, 4},
165    {Mixed, 1}, {Empty, 1}, {Mixed, 3}, {Empty, 2}, {Mixed, 1}, {Empty, 5},
166    {Mixed, 5}, {Empty, 5}, {Mixed, 2}, {Empty, 2}, {Mixed, 2}, {Empty, 6},
167    {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 3},
168    {Mixed, 1}, {Empty, 7}, {Mixed, 1}, {Empty, 15}, {Mixed, 2}, {Empty, 1},
169    {Mixed, 1}, {Empty, 12}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 6},
170    {Mixed, 1}, {Empty, 10}, {Mixed, 1}, {Empty, 32520}};
171    const static UnicodeSet::bitquad_t  __right_Set_quads[] = {
172    0x00000008, 0x48000000, 0x00009e01, 0x0000000c, 0x40000000, 0x00800001,
173    0x00000008, 0x40000000, 0x00000001, 0x00000008, 0x40000000, 0x00001801,
174    0x0000000c, 0x40000000, 0x00000001, 0xc0000000, 0x00800006, 0x0000000e,
175    0x0000001e, 0x0000000c, 0x40000000, 0x0060001e, 0x0000000c, 0xc0000000,
176    0x00800007, 0x0000000c, 0x81038000, 0x000c0000, 0x000d0000, 0x00000020,
177    0x000d0000, 0x40000000, 0x80000000, 0x09001800, 0x00c00000, 0x00003f9c,
178    0x1c009f88, 0x00400000, 0x00000180, 0x01fb0e18, 0xfb1f0000, 0x00000301,
179    0x04000000, 0x00800000, 0x0000201a, 0x00000010, 0x00200000, 0x00000010,
180    0x00000004, 0x00000482, 0x000c5c80, 0x00000c70, 0x00800002, 0x00000098,
181    0x00000003, 0xfff00000, 0x0000000f, 0x000c0000, 0x00000008, 0x60300000,
182    0x00080000, 0x00002000, 0x28000000, 0x24020000, 0x00208000, 0x000016d8,
183    0x00000005, 0x00000004, 0x01850000, 0x00000060, 0x00000004, 0x00280000,
184    0x00000001, 0x00207000, 0x00000005, 0x0000000c, 0xc0000000, 0x0080201e,
185    0x0000000c, 0x00a00000, 0x00000023, 0x20050000, 0x00000002, 0x40028000,
186    0x58070000, 0x00409000, 0x00000003, 0x01005000, 0x02000000, 0x01800000,
187    0x00800000, 0x40008000, 0x00100200, 0x00587c00, 0x00400000};
188    }
189
190    const static UnicodeSet right_Set{const_cast<UnicodeSet::run_t *>(__right_Set_runs), 109, 0, const_cast<UnicodeSet::bitquad_t *>(__right_Set_quads), 95, 0};
191
192    /** Code Point Ranges for Left
193    [093f, 093f], [094e, 094e], [09bf, 09bf], [09c7, 09c8], [0a3f, 0a3f],
194    [0abf, 0abf], [0b47, 0b47], [0bc6, 0bc8], [0d46, 0d48], [0dd9, 0dd9],
195    [0ddb, 0ddb], [0f3f, 0f3f], [1031, 1031], [1084, 1084], [17c1, 17c3],
196    [1a19, 1a19], [1a55, 1a55], [1a6e, 1a72], [1b3e, 1b3f], [1ba6, 1ba6],
197    [1c27, 1c28], [1c34, 1c35], [a9ba, a9bb], [aa2f, aa30], [aa34, aa34],
198    [aaeb, aaeb], [aaee, aaee], [110b1, 110b1], [1112c, 1112c],
199    [111b4, 111b4], [112e1, 112e1], [11347, 11348], [11436, 11436],
200    [114b1, 114b1], [114b9, 114b9], [115b0, 115b0], [115b8, 115b8],
201    [116ae, 116ae], [11726, 11726], [1182d, 1182d], [11cb1, 11cb1],
202    [11ef5, 11ef5]**/
203
204
205    namespace {
206    const static UnicodeSet::run_t __left_Set_runs[] = {
207    {Empty, 73}, {Mixed, 2}, {Empty, 2}, {Mixed, 2}, {Empty, 2}, {Mixed, 1},
208    {Empty, 3}, {Mixed, 1}, {Empty, 4}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
209    {Empty, 11}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 10},
210    {Mixed, 1}, {Empty, 7}, {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Empty, 57},
211    {Mixed, 1}, {Empty, 17}, {Mixed, 1}, {Empty, 1}, {Mixed, 2}, {Empty, 5},
212    {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
213    {Empty, 1131}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 5},
214    {Mixed, 1}, {Empty, 813}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
215    {Empty, 3}, {Mixed, 1}, {Empty, 9}, {Mixed, 1}, {Empty, 2}, {Mixed, 1},
216    {Empty, 6}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 7}, {Mixed, 1},
217    {Empty, 7}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 7}, {Mixed, 1},
218    {Empty, 35}, {Mixed, 1}, {Empty, 17}, {Mixed, 1}, {Empty, 32520}};
219    const static UnicodeSet::bitquad_t  __left_Set_quads[] = {
220    0x80000000, 0x00004000, 0x80000000, 0x00000180, 0x80000000, 0x80000000,
221    0x00000080, 0x000001c0, 0x000001c0, 0x0a000000, 0x80000000, 0x00020000,
222    0x00000010, 0x0000000e, 0x02000000, 0x00200000, 0x0007c000, 0xc0000000,
223    0x00000040, 0x00300180, 0x0c000000, 0x00118000, 0x00004800, 0x00020000,
224    0x00001000, 0x00100000, 0x00000002, 0x00000180, 0x00400000, 0x02020000,
225    0x01010000, 0x00004000, 0x00000040, 0x00002000, 0x00020000, 0x00200000};
226    }
227
228    const static UnicodeSet left_Set{const_cast<UnicodeSet::run_t *>(__left_Set_runs), 67, 0, const_cast<UnicodeSet::bitquad_t *>(__left_Set_quads), 36, 0};
229
230    /** Code Point Ranges for Visual_Order_Left
231    [0e40, 0e44], [0ec0, 0ec4], [19b5, 19b7], [19ba, 19ba], [aab5, aab6],
232    [aab9, aab9], [aabb, aabc]**/
233
234
235    namespace {
236    const static UnicodeSet::run_t __visual_order_left_Set_runs[] = {
237    {Empty, 114}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 86},
238    {Mixed, 1}, {Empty, 1159}, {Mixed, 1}, {Empty, 33450}};
239    const static UnicodeSet::bitquad_t  __visual_order_left_Set_quads[] = {
240    0x0000001f, 0x0000001f, 0x04e00000, 0x1a600000};
241    }
242
243    const static UnicodeSet visual_order_left_Set{const_cast<UnicodeSet::run_t *>(__visual_order_left_Set_runs), 9, 0, const_cast<UnicodeSet::bitquad_t *>(__visual_order_left_Set_quads), 4, 0};
244
245    /** Code Point Ranges for Left_And_Right
246    [09cb, 09cc], [0b4b, 0b4b], [0bca, 0bcc], [0d4a, 0d4c], [0ddc, 0ddc],
247    [0dde, 0dde], [17c0, 17c0], [17c4, 17c5], [1b40, 1b41], [1134b, 1134c],
248    [114bc, 114bc], [114be, 114be], [115ba, 115ba]**/
249
250
251    namespace {
252    const static UnicodeSet::run_t __left_and_right_Set_runs[] = {
253    {Empty, 78}, {Mixed, 1}, {Empty, 11}, {Mixed, 1}, {Empty, 3},
254    {Mixed, 1}, {Empty, 11}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
255    {Empty, 79}, {Mixed, 1}, {Empty, 27}, {Mixed, 1}, {Empty, 1983},
256    {Mixed, 1}, {Empty, 10}, {Mixed, 1}, {Empty, 7}, {Mixed, 1},
257    {Empty, 32594}};
258    const static UnicodeSet::bitquad_t  __left_and_right_Set_quads[] = {
259    0x00001800, 0x00000800, 0x00001c00, 0x00001c00, 0x50000000, 0x00000031,
260    0x00000003, 0x00001800, 0x50000000, 0x04000000};
261    }
262
263    const static UnicodeSet left_and_right_Set{const_cast<UnicodeSet::run_t *>(__left_and_right_Set_runs), 21, 0, const_cast<UnicodeSet::bitquad_t *>(__left_and_right_Set_quads), 10, 0};
264
265    /** Code Point Ranges for Top
266    [0900, 0902], [093a, 093a], [0945, 0948], [0951, 0951], [0953, 0955],
267    [0981, 0981], [09fe, 09fe], [0a01, 0a02], [0a47, 0a48], [0a4b, 0a4c],
268    [0a70, 0a71], [0a81, 0a82], [0ac5, 0ac5], [0ac7, 0ac8], [0afa, 0aff],
269    [0b01, 0b01], [0b3f, 0b3f], [0b56, 0b56], [0b82, 0b82], [0bc0, 0bc0],
270    [0bcd, 0bcd], [0c00, 0c00], [0c04, 0c04], [0c3e, 0c40], [0c46, 0c47],
271    [0c4a, 0c4d], [0c55, 0c55], [0c81, 0c81], [0cbf, 0cbf], [0cc6, 0cc6],
272    [0ccc, 0ccd], [0d00, 0d01], [0d3b, 0d3c], [0d4d, 0d4d], [0dca, 0dca],
273    [0dd2, 0dd3], [0e31, 0e31], [0e34, 0e37], [0e47, 0e4e], [0eb1, 0eb1],
274    [0eb4, 0eb7], [0ebb, 0ebb], [0ec8, 0ecd], [0f39, 0f39], [0f72, 0f72],
275    [0f7a, 0f7e], [0f80, 0f80], [0f82, 0f83], [0f86, 0f87], [102d, 102e],
276    [1032, 1036], [103a, 103a], [1071, 1074], [1085, 1086], [109d, 109d],
277    [1712, 1712], [1732, 1732], [1752, 1752], [1772, 1772], [17b7, 17ba],
278    [17c6, 17c6], [17c9, 17d1], [17d3, 17d3], [17dd, 17dd], [1920, 1921],
279    [1927, 1928], [193a, 193a], [1a17, 1a17], [1a1b, 1a1b], [1a58, 1a5a],
280    [1a62, 1a62], [1a65, 1a68], [1a6b, 1a6b], [1a73, 1a7c], [1b00, 1b03],
281    [1b34, 1b34], [1b36, 1b37], [1b42, 1b42], [1b6b, 1b6b], [1b6d, 1b73],
282    [1b80, 1b81], [1ba4, 1ba4], [1ba8, 1ba9], [1be6, 1be6], [1be8, 1be9],
283    [1bed, 1bed], [1bef, 1bf1], [1c2d, 1c33], [1c36, 1c36], [1cd0, 1cd2],
284    [1cda, 1cdb], [1ce0, 1ce0], [1cf4, 1cf4], [1dfb, 1dfb], [a806, a806],
285    [a80b, a80b], [a826, a826], [a8c5, a8c5], [a8e0, a8f1], [a8ff, a8ff],
286    [a94a, a94a], [a94f, a951], [a980, a982], [a9b3, a9b3], [a9b6, a9b7],
287    [a9bc, a9bc], [a9e5, a9e5], [aa29, aa2c], [aa2e, aa2e], [aa31, aa31],
288    [aa43, aa43], [aa4c, aa4c], [aa7c, aa7c], [aab0, aab0], [aab2, aab3],
289    [aab7, aab8], [aabe, aabf], [aac1, aac1], [aaed, aaed], [abe5, abe5],
290    [10a05, 10a05], [10a0f, 10a0f], [10a38, 10a38], [11001, 11001],
291    [11038, 1103b], [11042, 11046], [11080, 11081], [110b5, 110b6],
292    [11100, 11102], [11127, 11129], [1112d, 1112d], [11130, 11130],
293    [11134, 11134], [11180, 11181], [111bc, 111be], [111cb, 111cb],
294    [11230, 11231], [11234, 11234], [11236, 11237], [1123e, 1123e],
295    [112df, 112df], [112e5, 112e8], [11301, 11301], [11340, 11340],
296    [11366, 1136c], [11370, 11374], [1143e, 1143f], [11443, 11444],
297    [1145e, 1145e], [114ba, 114ba], [114bf, 114c0], [115bc, 115bd],
298    [11639, 1163a], [1163d, 1163d], [11640, 11640], [116ab, 116ab],
299    [116ad, 116ad], [116b2, 116b5], [1171f, 1171f], [11722, 11723],
300    [11727, 11727], [11729, 1172b], [11833, 11837], [11a01, 11a01],
301    [11a04, 11a09], [11a35, 11a38], [11a51, 11a51], [11a54, 11a56],
302    [11a96, 11a96], [11a98, 11a98], [11c30, 11c31], [11c38, 11c3d],
303    [11cb3, 11cb3], [11cb5, 11cb6], [11d31, 11d35], [11d3a, 11d3a],
304    [11d3c, 11d3d], [11d3f, 11d41], [11d43, 11d43], [11d90, 11d91],
305    [11d95, 11d95], [11ef3, 11ef3]**/
306
307
308    namespace {
309    const static UnicodeSet::run_t __top_Set_runs[] = {
310    {Empty, 72}, {Mixed, 3}, {Empty, 1}, {Mixed, 1}, {Empty, 2}, {Mixed, 2},
311    {Empty, 1}, {Mixed, 3}, {Empty, 1}, {Mixed, 5}, {Empty, 1}, {Mixed, 1},
312    {Empty, 1}, {Mixed, 1}, {Empty, 1}, {Mixed, 3}, {Empty, 1}, {Mixed, 3},
313    {Empty, 1}, {Mixed, 3}, {Empty, 3}, {Mixed, 1}, {Empty, 2}, {Mixed, 2},
314    {Empty, 2}, {Mixed, 2}, {Empty, 2}, {Mixed, 1}, {Empty, 1}, {Mixed, 2},
315    {Empty, 4}, {Mixed, 1}, {Empty, 1}, {Mixed, 2}, {Empty, 51}, {Mixed, 4},
316    {Empty, 1}, {Mixed, 2}, {Empty, 10}, {Mixed, 1}, {Empty, 6}, {Mixed, 1},
317    {Empty, 1}, {Mixed, 2}, {Empty, 4}, {Mixed, 6}, {Empty, 1}, {Mixed, 1},
318    {Empty, 1}, {Mixed, 1}, {Empty, 4}, {Mixed, 2}, {Empty, 7}, {Mixed, 1},
319    {Empty, 1104}, {Mixed, 2}, {Empty, 4}, {Mixed, 2}, {Empty, 2},
320    {Mixed, 1}, {Empty, 1}, {Mixed, 2}, {Empty, 1}, {Mixed, 1}, {Empty, 1},
321    {Mixed, 3}, {Empty, 1}, {Mixed, 3}, {Empty, 7}, {Mixed, 1},
322    {Empty, 752}, {Mixed, 2}, {Empty, 46}, {Mixed, 3}, {Empty, 1},
323    {Mixed, 2}, {Empty, 2}, {Mixed, 2}, {Empty, 2}, {Mixed, 3}, {Empty, 2},
324    {Mixed, 1}, {Empty, 4}, {Mixed, 3}, {Empty, 1}, {Mixed, 2}, {Empty, 5},
325    {Mixed, 2}, {Empty, 2}, {Mixed, 2}, {Empty, 6}, {Mixed, 1}, {Empty, 3},
326    {Mixed, 2}, {Empty, 2}, {Mixed, 1}, {Empty, 2}, {Mixed, 2}, {Empty, 7},
327    {Mixed, 1}, {Empty, 14}, {Mixed, 3}, {Empty, 1}, {Mixed, 1},
328    {Empty, 12}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 3}, {Mixed, 2},
329    {Empty, 1}, {Mixed, 1}, {Empty, 10}, {Mixed, 1}, {Empty, 32520}};
330    const static UnicodeSet::bitquad_t  __top_Set_quads[] = {
331    0x00000007, 0x04000000, 0x003a01e0, 0x00000002, 0x40000000, 0x00000006,
332    0x00001980, 0x00030000, 0x00000006, 0x000001a0, 0xfc000000, 0x00000002,
333    0x80000000, 0x00400000, 0x00000004, 0x00002001, 0x00000011, 0xc0000000,
334    0x00203cc1, 0x00000002, 0x80000000, 0x00003040, 0x00000003, 0x18000000,
335    0x00002000, 0x000c0400, 0x00f20000, 0x00007f80, 0x08f20000, 0x00003f00,
336    0x02000000, 0x7c040000, 0x000000cd, 0x047c6000, 0x001e0000, 0x20000060,
337    0x00040000, 0x00040000, 0x00040000, 0x00040000, 0x07800000, 0x200bfe40,
338    0x04000183, 0x08800000, 0x07000000, 0x1ff809e4, 0x0000000f, 0x00d00000,
339    0x00000004, 0x000fe800, 0x00000003, 0x00000310, 0x0003a340, 0x004fe000,
340    0x0c070000, 0x00100001, 0x08000000, 0x00000840, 0x00000040, 0x00000020,
341    0x8003ffff, 0x00038400, 0x00000007, 0x10c80000, 0x00000020, 0x00025e00,
342    0x00001008, 0x10000000, 0xc18d0000, 0x00000002, 0x00002000, 0x00000020,
343    0x00008020, 0x01000000, 0x00000002, 0x0f000000, 0x0000007c, 0x00000003,
344    0x00600000, 0x00000007, 0x00112380, 0x00000003, 0x70000000, 0x00000800,
345    0x40d30000, 0x80000000, 0x000001e0, 0x00000002, 0x00000001, 0x001f1fc0,
346    0xc0000000, 0x40000018, 0x84000000, 0x00000001, 0x30000000, 0x26000000,
347    0x00000001, 0x003c2800, 0x80000000, 0x00000e8c, 0x00f80000, 0x000003f2,
348    0x01e00000, 0x00720000, 0x01400000, 0x3f030000, 0x00680000, 0xb43e0000,
349    0x0000000b, 0x00230000, 0x00080000};
350    }
351
352    const static UnicodeSet top_Set{const_cast<UnicodeSet::run_t *>(__top_Set_runs), 115, 0, const_cast<UnicodeSet::bitquad_t *>(__top_Set_quads), 111, 0};
353
354    /** Code Point Ranges for Bottom
355    [093c, 093c], [0941, 0944], [094d, 094d], [0952, 0952], [0956, 0957],
356    [0962, 0963], [09bc, 09bc], [09c1, 09c4], [09cd, 09cd], [09e2, 09e3],
357    [0a3c, 0a3c], [0a41, 0a42], [0a4d, 0a4d], [0a75, 0a75], [0abc, 0abc],
358    [0ac1, 0ac4], [0acd, 0acd], [0ae2, 0ae3], [0b3c, 0b3c], [0b41, 0b44],
359    [0b4d, 0b4d], [0b62, 0b63], [0c56, 0c56], [0c62, 0c63], [0cbc, 0cbc],
360    [0ce2, 0ce3], [0d43, 0d44], [0d62, 0d63], [0dd4, 0dd4], [0dd6, 0dd6],
361    [0e38, 0e3a], [0eb8, 0eb9], [0ebc, 0ebc], [0f18, 0f19], [0f35, 0f35],
362    [0f37, 0f37], [0f71, 0f71], [0f74, 0f75], [0f84, 0f84], [0f8d, 0f97],
363    [0f99, 0fbc], [0fc6, 0fc6], [102f, 1030], [1037, 1037], [103d, 103e],
364    [1058, 1059], [105e, 1060], [1082, 1082], [108d, 108d], [1713, 1714],
365    [1733, 1734], [1753, 1753], [1773, 1773], [17bb, 17bd], [1922, 1922],
366    [1932, 1932], [1939, 1939], [193b, 193b], [1a18, 1a18], [1a56, 1a56],
367    [1a5b, 1a5e], [1a69, 1a6a], [1a6c, 1a6c], [1a7f, 1a7f], [1b38, 1b3a],
368    [1b6c, 1b6c], [1ba2, 1ba3], [1ba5, 1ba5], [1bac, 1bad], [1c2c, 1c2c],
369    [1c37, 1c37], [1cd5, 1cd9], [1cdc, 1cdf], [1ced, 1ced], [a825, a825],
370    [a8c4, a8c4], [a92b, a92d], [a947, a949], [a94b, a94e], [a9b8, a9b9],
371    [aa2d, aa2d], [aa32, aa32], [aa35, aa36], [aab4, aab4], [aaec, aaec],
372    [abe8, abe8], [abed, abed], [10a02, 10a03], [10a0c, 10a0e],
373    [10a39, 10a3a], [1103c, 11041], [110b3, 110b4], [110b9, 110ba],
374    [1112a, 1112b], [11131, 11132], [11173, 11173], [111b6, 111bb],
375    [111c9, 111c9], [111cc, 111cc], [1122f, 1122f], [112e3, 112e4],
376    [112e9, 112ea], [1133b, 1133c], [11438, 1143d], [11442, 11442],
377    [11446, 11446], [114b3, 114b8], [114c2, 114c3], [115b2, 115b5],
378    [115bf, 115c0], [115dc, 115dd], [11633, 11638], [1163f, 1163f],
379    [116b0, 116b1], [116b7, 116b7], [1171d, 1171d], [11724, 11725],
380    [11728, 11728], [1182f, 11832], [11839, 1183a], [11a02, 11a03],
381    [11a0a, 11a0a], [11a33, 11a34], [11a3b, 11a3e], [11a52, 11a53],
382    [11a59, 11a5b], [11a8a, 11a95], [11c32, 11c36], [11c3f, 11c3f],
383    [11c92, 11ca7], [11caa, 11cb0], [11cb2, 11cb2], [11d36, 11d36],
384    [11d42, 11d42], [11d44, 11d44], [11d47, 11d47], [11ef4, 11ef4]**/
385
386
387    namespace {
388    const static UnicodeSet::run_t __bottom_Set_runs[] = {
389    {Empty, 73}, {Mixed, 3}, {Empty, 1}, {Mixed, 3}, {Empty, 1}, {Mixed, 3},
390    {Empty, 1}, {Mixed, 3}, {Empty, 1}, {Mixed, 3}, {Empty, 6}, {Mixed, 2},
391    {Empty, 1}, {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 2}, {Mixed, 2},
392    {Empty, 2}, {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
393    {Empty, 2}, {Mixed, 2}, {Empty, 1}, {Mixed, 4}, {Empty, 2}, {Mixed, 4},
394    {Empty, 51}, {Mixed, 4}, {Empty, 1}, {Mixed, 1}, {Empty, 11},
395    {Mixed, 1}, {Empty, 6}, {Mixed, 1}, {Empty, 1}, {Mixed, 2}, {Empty, 5},
396    {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 3},
397    {Mixed, 1}, {Empty, 4}, {Mixed, 2}, {Empty, 1113}, {Mixed, 1},
398    {Empty, 4}, {Mixed, 1}, {Empty, 2}, {Mixed, 2}, {Empty, 2}, {Mixed, 1},
399    {Empty, 3}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 1}, {Mixed, 1},
400    {Empty, 7}, {Mixed, 1}, {Empty, 752}, {Mixed, 2}, {Empty, 47},
401    {Mixed, 2}, {Empty, 2}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 1},
402    {Mixed, 1}, {Empty, 1}, {Mixed, 2}, {Empty, 2}, {Mixed, 1}, {Empty, 5},
403    {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 7}, {Mixed, 2}, {Empty, 2},
404    {Mixed, 2}, {Empty, 6}, {Mixed, 2}, {Empty, 2}, {Mixed, 1}, {Empty, 3},
405    {Mixed, 1}, {Empty, 2}, {Mixed, 2}, {Empty, 7}, {Mixed, 1}, {Empty, 14},
406    {Mixed, 3}, {Empty, 1}, {Mixed, 1}, {Empty, 12}, {Mixed, 1}, {Empty, 2},
407    {Mixed, 2}, {Empty, 3}, {Mixed, 2}, {Empty, 12}, {Mixed, 1},
408    {Empty, 32520}};
409    const static UnicodeSet::bitquad_t  __bottom_Set_quads[] = {
410    0x10000000, 0x00c4201e, 0x0000000c, 0x10000000, 0x0000201e, 0x0000000c,
411    0x10000000, 0x00002006, 0x00200000, 0x10000000, 0x0000201e, 0x0000000c,
412    0x10000000, 0x0000201e, 0x0000000c, 0x00400000, 0x0000000c, 0x10000000,
413    0x0000000c, 0x00000018, 0x0000000c, 0x00500000, 0x07000000, 0x13000000,
414    0x03000000, 0x00a00000, 0x00320000, 0xfeffe010, 0x1fffffff, 0x00000040,
415    0x60818000, 0xc3000000, 0x00000001, 0x00002004, 0x00180000, 0x00180000,
416    0x00080000, 0x00080000, 0x38000000, 0x0a040004, 0x01000000, 0x78400000,
417    0x80001600, 0x07000000, 0x00001000, 0x0000302c, 0x00801000, 0xf3e00000,
418    0x00002000, 0x00000020, 0x00000010, 0x00003800, 0x00007b80, 0x03000000,
419    0x00642000, 0x00100000, 0x00001000, 0x00002100, 0x0000700c, 0x06000000,
420    0xf0000000, 0x00000003, 0x06180000, 0x00060c00, 0x00080000, 0x0fc00000,
421    0x00001200, 0x00008000, 0x00000618, 0x18000000, 0x3f000000, 0x00000044,
422    0x01f80000, 0x0000000c, 0x803c0000, 0x30000001, 0x81f80000, 0x00830000,
423    0x20000000, 0x00000130, 0x06078000, 0x0000040c, 0x78180000, 0x0e0c0000,
424    0x003ffc00, 0x807c0000, 0xfffc0000, 0x0005fcff, 0x00400000, 0x00000094,
425    0x00100000};
426    }
427
428    const static UnicodeSet bottom_Set{const_cast<UnicodeSet::run_t *>(__bottom_Set_runs), 111, 0, const_cast<UnicodeSet::bitquad_t *>(__bottom_Set_quads), 91, 0};
429
430    /** Code Point Ranges for Top_And_Bottom
431    [0c48, 0c48], [0f73, 0f73], [0f76, 0f79], [0f81, 0f81], [1b3c, 1b3c],
432    [1112e, 1112f]**/
433
434
435    namespace {
436    const static UnicodeSet::run_t __top_and_bottom_Set_runs[] = {
437    {Empty, 98}, {Mixed, 1}, {Empty, 24}, {Mixed, 2}, {Empty, 92},
438    {Mixed, 1}, {Empty, 1967}, {Mixed, 1}, {Empty, 32630}};
439    const static UnicodeSet::bitquad_t  __top_and_bottom_Set_quads[] = {
440    0x00000100, 0x03c80000, 0x00000002, 0x10000000, 0x0000c000};
441    }
442
443    const static UnicodeSet top_and_bottom_Set{const_cast<UnicodeSet::run_t *>(__top_and_bottom_Set_runs), 9, 0, const_cast<UnicodeSet::bitquad_t *>(__top_and_bottom_Set_quads), 5, 0};
444
445    /** Code Point Ranges for Top_And_Right
446    [0ac9, 0ac9], [0b57, 0b57], [0cc0, 0cc0], [0cc7, 0cc8], [0cca, 0ccb],
447    [1925, 1926], [1b43, 1b43], [111bf, 111bf], [11232, 11233]**/
448
449
450    namespace {
451    const static UnicodeSet::run_t __top_and_right_Set_runs[] = {
452    {Empty, 86}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 11},
453    {Mixed, 1}, {Empty, 98}, {Mixed, 1}, {Empty, 16}, {Mixed, 1},
454    {Empty, 1970}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 32622}};
455    const static UnicodeSet::bitquad_t  __top_and_right_Set_quads[] = {
456    0x00000200, 0x00800000, 0x00000d81, 0x00000060, 0x00000008, 0x80000000,
457    0x000c0000};
458    }
459
460    const static UnicodeSet top_and_right_Set{const_cast<UnicodeSet::run_t *>(__top_and_right_Set_runs), 15, 0, const_cast<UnicodeSet::bitquad_t *>(__top_and_right_Set_quads), 7, 0};
461
462    /** Code Point Ranges for Top_And_Left
463    [0b48, 0b48], [0dda, 0dda], [17be, 17be], [1c29, 1c29], [114bb, 114bb],
464    [115b9, 115b9]**/
465
466
467    namespace {
468    const static UnicodeSet::run_t __top_and_left_Set_runs[] = {
469    {Empty, 90}, {Mixed, 1}, {Empty, 19}, {Mixed, 1}, {Empty, 78},
470    {Mixed, 1}, {Empty, 35}, {Mixed, 1}, {Empty, 1987}, {Mixed, 1},
471    {Empty, 7}, {Mixed, 1}, {Empty, 32594}};
472    const static UnicodeSet::bitquad_t  __top_and_left_Set_quads[] = {
473    0x00000100, 0x04000000, 0x40000000, 0x00000200, 0x08000000, 0x02000000};
474    }
475
476    const static UnicodeSet top_and_left_Set{const_cast<UnicodeSet::run_t *>(__top_and_left_Set_runs), 13, 0, const_cast<UnicodeSet::bitquad_t *>(__top_and_left_Set_quads), 6, 0};
477
478    /** Code Point Ranges for Top_And_Left_And_Right
479    [0b4c, 0b4c], [0ddd, 0ddd], [17bf, 17bf], [115bb, 115bb]**/
480
481
482    namespace {
483    const static UnicodeSet::run_t __top_and_left_and_right_Set_runs[] = {
484    {Empty, 90}, {Mixed, 1}, {Empty, 19}, {Mixed, 1}, {Empty, 78},
485    {Mixed, 1}, {Empty, 2031}, {Mixed, 1}, {Empty, 32594}};
486    const static UnicodeSet::bitquad_t  __top_and_left_and_right_Set_quads[] = {
487    0x00001000, 0x20000000, 0x80000000, 0x08000000};
488    }
489
490    const static UnicodeSet top_and_left_and_right_Set{const_cast<UnicodeSet::run_t *>(__top_and_left_and_right_Set_runs), 9, 0, const_cast<UnicodeSet::bitquad_t *>(__top_and_left_and_right_Set_quads), 4, 0};
491
492    /** Code Point Ranges for Bottom_And_Right
493    [1b3b, 1b3b], [a9c0, a9c0]**/
494
495
496    namespace {
497    const static UnicodeSet::run_t __bottom_and_right_Set_runs[] = {
498    {Empty, 217}, {Mixed, 1}, {Empty, 1140}, {Mixed, 1}, {Empty, 33457}};
499    const static UnicodeSet::bitquad_t  __bottom_and_right_Set_quads[] = {
500    0x08000000, 0x00000001};
501    }
502
503    const static UnicodeSet bottom_and_right_Set{const_cast<UnicodeSet::run_t *>(__bottom_and_right_Set_runs), 5, 0, const_cast<UnicodeSet::bitquad_t *>(__bottom_and_right_Set_quads), 2, 0};
504
505    /** Code Point Ranges for Bottom_And_Left
506    [a9bf, a9bf]**/
507
508
509    namespace {
510    const static UnicodeSet::run_t __bottom_and_left_Set_runs[] = {
511    {Empty, 1357}, {Mixed, 1}, {Empty, 33458}};
512    const static UnicodeSet::bitquad_t  __bottom_and_left_Set_quads[] = {
513    0x80000000};
514    }
515
516    const static UnicodeSet bottom_and_left_Set{const_cast<UnicodeSet::run_t *>(__bottom_and_left_Set_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__bottom_and_left_Set_quads), 1, 0};
517
518    /** Code Point Ranges for Top_And_Bottom_And_Right
519    [1b3d, 1b3d]**/
520
521
522    namespace {
523    const static UnicodeSet::run_t __top_and_bottom_and_right_Set_runs[] = {
524    {Empty, 217}, {Mixed, 1}, {Empty, 34598}};
525    const static UnicodeSet::bitquad_t  __top_and_bottom_and_right_Set_quads[] = {
526    0x20000000};
527    }
528
529    const static UnicodeSet top_and_bottom_and_right_Set{const_cast<UnicodeSet::run_t *>(__top_and_bottom_and_right_Set_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__top_and_bottom_and_right_Set_quads), 1, 0};
530
531    /** Code Point Ranges for Overstruck
532    [1cd4, 1cd4], [1ce2, 1ce8], [10a01, 10a01], [10a06, 10a06]**/
533
534
535    namespace {
536    const static UnicodeSet::run_t __overstruck_Set_runs[] = {
537    {Empty, 230}, {Mixed, 2}, {Empty, 1896}, {Mixed, 1}, {Empty, 32687}};
538    const static UnicodeSet::bitquad_t  __overstruck_Set_quads[] = {
539    0x00100000, 0x000001fc, 0x00000042};
540    }
541
542    const static UnicodeSet overstruck_Set{const_cast<UnicodeSet::run_t *>(__overstruck_Set_runs), 5, 0, const_cast<UnicodeSet::bitquad_t *>(__overstruck_Set_quads), 3, 0};
543
544    static EnumeratedPropertyObject property_object
545        {InPC,
546        INPC_ns::independent_prop_values,
547        std::move(INPC_ns::enum_names),
548        std::move(INPC_ns::value_names),
549        std::move(INPC_ns::aliases_only_map),{
550        &na_Set, &right_Set, &left_Set, &visual_order_left_Set,
551        &left_and_right_Set, &top_Set, &bottom_Set, &top_and_bottom_Set,
552        &top_and_right_Set, &top_and_left_Set, &top_and_left_and_right_Set,
553        &bottom_and_right_Set, &bottom_and_left_Set,
554        &top_and_bottom_and_right_Set, &overstruck_Set
555        }};
556    }
557}
558
559#endif
Note: See TracBrowser for help on using the repository browser.