source: icGREP/icgrep-devel/icgrep/UCD/PropList.h @ 5660

Last change on this file since 5660 was 5660, checked in by cameron, 23 months ago

UCD corrections and additional properties

File size: 48.0 KB
Line 
1#ifndef PROPLIST_H
2#define PROPLIST_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 AHEX_ns {
18        /** Code Point Ranges for AHex
19        [0030, 0039], [0041, 0046], [0061, 0066]**/
20        const UnicodeSet codepoint_set
21            {{{Empty, 1}, {Mixed, 3}, {Empty, 34812}},
22             {0x03ff0000, 0x0000007e, 0x0000007e}};
23        static BinaryPropertyObject property_object{AHex, codepoint_set};
24    }
25    namespace BIDI_C_ns {
26        /** Code Point Ranges for Bidi_C
27        [061c, 061c], [200e, 200f], [202a, 202e], [2066, 2069]**/
28        const UnicodeSet codepoint_set
29            {{{Empty, 48}, {Mixed, 1}, {Empty, 207}, {Mixed, 2}, {Empty, 1},
30              {Mixed, 1}, {Empty, 34556}},
31             {0x10000000, 0x0000c000, 0x00007c00, 0x000003c0}};
32        static BinaryPropertyObject property_object{Bidi_C, codepoint_set};
33    }
34    namespace DASH_ns {
35        /** Code Point Ranges for Dash
36        [002d, 002d], [058a, 058a], [05be, 05be], [1400, 1400],
37        [1806, 1806], [2010, 2015], [2053, 2053], [207b, 207b],
38        [208b, 208b], [2212, 2212], [2e17, 2e17], [2e1a, 2e1a],
39        [2e3a, 2e3b], [2e40, 2e40], [301c, 301c], [3030, 3030],
40        [30a0, 30a0], [fe31, fe32], [fe58, fe58], [fe63, fe63],
41        [ff0d, ff0d]**/
42        const UnicodeSet codepoint_set
43            {{{Empty, 1}, {Mixed, 1}, {Empty, 42}, {Mixed, 2}, {Empty, 114},
44              {Mixed, 1}, {Empty, 31}, {Mixed, 1}, {Empty, 63}, {Mixed, 1},
45              {Empty, 1}, {Mixed, 3}, {Empty, 11}, {Mixed, 1}, {Empty, 95},
46              {Mixed, 3}, {Empty, 13}, {Mixed, 2}, {Empty, 3}, {Mixed, 1},
47              {Empty, 1643}, {Mixed, 3}, {Empty, 4}, {Mixed, 1},
48              {Empty, 32775}},
49             {0x00002000, 0x00000400, 0x40000000, 0x00000001, 0x00000040,
50              0x003f0000, 0x00080000, 0x08000000, 0x00000800, 0x00040000,
51              0x04800000, 0x0c000000, 0x00000001, 0x10000000, 0x00010000,
52              0x00000001, 0x00060000, 0x01000000, 0x00000008, 0x00002000}};
53        static BinaryPropertyObject property_object{Dash, codepoint_set};
54    }
55    namespace DEP_ns {
56        /** Code Point Ranges for Dep
57        [0149, 0149], [0673, 0673], [0f77, 0f77], [0f79, 0f79],
58        [17a3, 17a4], [206a, 206f], [2329, 232a], [e0001, e0001]**/
59        const UnicodeSet codepoint_set
60            {{{Empty, 10}, {Mixed, 1}, {Empty, 40}, {Mixed, 1}, {Empty, 71},
61              {Mixed, 1}, {Empty, 65}, {Mixed, 1}, {Empty, 69}, {Mixed, 1},
62              {Empty, 21}, {Mixed, 1}, {Empty, 28390}, {Mixed, 1},
63              {Empty, 6143}},
64             {0x00000200, 0x00080000, 0x02800000, 0x00000018, 0x0000fc00,
65              0x00000600, 0x00000002}};
66        static BinaryPropertyObject property_object{Dep, codepoint_set};
67    }
68    namespace DIA_ns {
69        /** Code Point Ranges for Dia
70        [005e, 005e], [0060, 0060], [00a8, 00a8], [00af, 00af],
71        [00b4, 00b4], [00b7, 00b8], [02b0, 034e], [0350, 0357],
72        [035d, 0362], [0374, 0375], [037a, 037a], [0384, 0385],
73        [0483, 0487], [0559, 0559], [0591, 05a1], [05a3, 05bd],
74        [05bf, 05bf], [05c1, 05c2], [05c4, 05c4], [064b, 0652],
75        [0657, 0658], [06df, 06e0], [06e5, 06e6], [06ea, 06ec],
76        [0730, 074a], [07a6, 07b0], [07eb, 07f5], [0818, 0819],
77        [08e3, 08fe], [093c, 093c], [094d, 094d], [0951, 0954],
78        [0971, 0971], [09bc, 09bc], [09cd, 09cd], [0a3c, 0a3c],
79        [0a4d, 0a4d], [0abc, 0abc], [0acd, 0acd], [0b3c, 0b3c],
80        [0b4d, 0b4d], [0bcd, 0bcd], [0c4d, 0c4d], [0cbc, 0cbc],
81        [0ccd, 0ccd], [0d4d, 0d4d], [0dca, 0dca], [0e47, 0e4c],
82        [0e4e, 0e4e], [0ec8, 0ecc], [0f18, 0f19], [0f35, 0f35],
83        [0f37, 0f37], [0f39, 0f39], [0f3e, 0f3f], [0f82, 0f84],
84        [0f86, 0f87], [0fc6, 0fc6], [1037, 1037], [1039, 103a],
85        [1087, 108d], [108f, 108f], [109a, 109b], [17c9, 17d3],
86        [17dd, 17dd], [1939, 193b], [1a75, 1a7c], [1a7f, 1a7f],
87        [1ab0, 1abd], [1b34, 1b34], [1b44, 1b44], [1b6b, 1b73],
88        [1baa, 1bab], [1c36, 1c37], [1c78, 1c7d], [1cd0, 1ce8],
89        [1ced, 1ced], [1cf4, 1cf4], [1cf8, 1cf9], [1d2c, 1d6a],
90        [1dc4, 1dcf], [1df5, 1df5], [1dfd, 1dff], [1fbd, 1fbd],
91        [1fbf, 1fc1], [1fcd, 1fcf], [1fdd, 1fdf], [1fed, 1fef],
92        [1ffd, 1ffe], [2cef, 2cf1], [2e2f, 2e2f], [302a, 302f],
93        [3099, 309c], [30fc, 30fc], [a66f, a66f], [a67c, a67d],
94        [a67f, a67f], [a69c, a69d], [a6f0, a6f1], [a717, a721],
95        [a788, a788], [a7f8, a7f9], [a8c4, a8c4], [a8e0, a8f1],
96        [a92b, a92e], [a953, a953], [a9b3, a9b3], [a9c0, a9c0],
97        [a9e5, a9e5], [aa7b, aa7d], [aabf, aac2], [aaf6, aaf6],
98        [ab5b, ab5f], [abec, abed], [fb1e, fb1e], [fe20, fe2f],
99        [ff3e, ff3e], [ff40, ff40], [ff70, ff70], [ff9e, ff9f],
100        [ffe3, ffe3], [102e0, 102e0], [10ae5, 10ae6], [110b9, 110ba],
101        [11133, 11134], [11173, 11173], [111c0, 111c0], [111ca, 111cc],
102        [11235, 11236], [112e9, 112ea], [1133c, 1133c], [1134d, 1134d],
103        [11366, 1136c], [11370, 11374], [11442, 11442], [11446, 11446],
104        [114c2, 114c3], [115bf, 115c0], [1163f, 1163f], [116b6, 116b7],
105        [1172b, 1172b], [11c3f, 11c3f], [16af0, 16af4], [16f8f, 16f9f],
106        [1d167, 1d169], [1d16d, 1d172], [1d17b, 1d182], [1d185, 1d18b],
107        [1d1aa, 1d1ad], [1e8d0, 1e8d6], [1e944, 1e946], [1e948, 1e94a]**/
108        const UnicodeSet codepoint_set
109            {{{Empty, 2}, {Mixed, 2}, {Empty, 1}, {Mixed, 1}, {Empty, 15},
110              {Mixed, 1}, {Full, 4}, {Mixed, 3}, {Empty, 7}, {Mixed, 1},
111              {Empty, 5}, {Mixed, 1}, {Empty, 1}, {Mixed, 3}, {Empty, 3},
112              {Mixed, 1}, {Empty, 3}, {Mixed, 2}, {Empty, 1}, {Mixed, 2},
113              {Empty, 2}, {Mixed, 1}, {Empty, 1}, {Mixed, 2}, {Empty, 6},
114              {Mixed, 1}, {Empty, 1}, {Mixed, 3}, {Empty, 1}, {Mixed, 2},
115              {Empty, 2}, {Mixed, 2}, {Empty, 2}, {Mixed, 2}, {Empty, 2},
116              {Mixed, 2}, {Empty, 3}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
117              {Empty, 2}, {Mixed, 2}, {Empty, 3}, {Mixed, 1}, {Empty, 3},
118              {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
119              {Empty, 1}, {Mixed, 2}, {Empty, 2}, {Mixed, 1}, {Empty, 1},
120              {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Empty, 2}, {Mixed, 1},
121              {Empty, 57}, {Mixed, 1}, {Empty, 10}, {Mixed, 1}, {Empty, 9},
122              {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 3}, {Mixed, 3},
123              {Empty, 1}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 1},
124              {Mixed, 1}, {Empty, 2}, {Mixed, 2}, {Empty, 1}, {Mixed, 1},
125              {Full, 1}, {Mixed, 1}, {Empty, 2}, {Mixed, 2}, {Empty, 13},
126              {Mixed, 3}, {Empty, 103}, {Mixed, 1}, {Empty, 9}, {Mixed, 1},
127              {Empty, 15}, {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Empty, 2},
128              {Mixed, 1}, {Empty, 939}, {Mixed, 2}, {Empty, 2}, {Mixed, 3},
129              {Empty, 2}, {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Empty, 6},
130              {Mixed, 2}, {Empty, 1}, {Mixed, 2}, {Empty, 2}, {Mixed, 3},
131              {Empty, 3}, {Mixed, 1}, {Empty, 1}, {Mixed, 3}, {Empty, 2},
132              {Mixed, 1}, {Empty, 4}, {Mixed, 1}, {Empty, 632}, {Mixed, 1},
133              {Empty, 24}, {Mixed, 1}, {Empty, 7}, {Mixed, 4}, {Empty, 2},
134              {Mixed, 1}, {Empty, 23}, {Mixed, 1}, {Empty, 63}, {Mixed, 1},
135              {Empty, 45}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 1},
136              {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Empty, 2}, {Mixed, 1},
137              {Empty, 5}, {Mixed, 1}, {Empty, 1}, {Mixed, 3}, {Empty, 6},
138              {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 6}, {Mixed, 2},
139              {Empty, 2}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 3},
140              {Mixed, 1}, {Empty, 39}, {Mixed, 1}, {Empty, 629}, {Mixed, 1},
141              {Empty, 36}, {Mixed, 1}, {Empty, 782}, {Mixed, 3},
142              {Empty, 184}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
143              {Empty, 30901}},
144             {0x40000000, 0x00000001, 0x01908100, 0xffff0000, 0xe0ff7fff,
145              0x04300007, 0x00000030, 0x000000f8, 0x02000000, 0xfffe0000,
146              0xbffffffb, 0x00000016, 0x0187f800, 0x80000000, 0x00001c61,
147              0xffff0000, 0x000007ff, 0x0001ffc0, 0x003ff800, 0x03000000,
148              0x7ffffff8, 0x10000000, 0x001e2000, 0x00020000, 0x10000000,
149              0x00002000, 0x10000000, 0x00002000, 0x10000000, 0x00002000,
150              0x10000000, 0x00002000, 0x00002000, 0x00002000, 0x10000000,
151              0x00002000, 0x00002000, 0x00000400, 0x00005f80, 0x00001f00,
152              0x03000000, 0xc2a00000, 0x000000dc, 0x00000040, 0x06800000,
153              0x0c00bf80, 0x200ffe00, 0x0e000000, 0x9fe00000, 0x3fff0000,
154              0x00100000, 0x00000010, 0x000ff800, 0x00000c00, 0x00c00000,
155              0x3f000000, 0xffff0000, 0x031021ff, 0xfffff000, 0x000007ff,
156              0x0000fff0, 0xe0200000, 0xa0000000, 0xe000e003, 0x6000e000,
157              0x00038000, 0x00008000, 0x0000fc00, 0x1e000000, 0x10000000,
158              0xb0008000, 0x30000000, 0x00030000, 0xff800000, 0x00000003,
159              0x00000100, 0x03000000, 0x00000010, 0x0003ffff, 0x00007800,
160              0x00080000, 0x00080000, 0x00000001, 0x00000020, 0x38000000,
161              0x80000000, 0x00000007, 0x00400000, 0xf8000000, 0x00003000,
162              0x40000000, 0x0000ffff, 0x40000000, 0x00000001, 0x00010000,
163              0xc0000000, 0x00000008, 0x00000001, 0x00000060, 0x06000000,
164              0x00180000, 0x00080000, 0x00001c01, 0x00600000, 0x00000600,
165              0x10000000, 0x00002000, 0x001f1fc0, 0x00000044, 0x0000000c,
166              0x80000000, 0x00000001, 0x80000000, 0x00c00000, 0x00000800,
167              0x80000000, 0x001f0000, 0xffff8000, 0xf807e380, 0x00000fe7,
168              0x00003c00, 0x007f0000, 0x00000770}};
169        static BinaryPropertyObject property_object{Dia, codepoint_set};
170    }
171    namespace EXT_ns {
172        /** Code Point Ranges for Ext
173        [00b7, 00b7], [02d0, 02d1], [0640, 0640], [07fa, 07fa],
174        [0e46, 0e46], [0ec6, 0ec6], [180a, 180a], [1843, 1843],
175        [1aa7, 1aa7], [1c36, 1c36], [1c7b, 1c7b], [3005, 3005],
176        [3031, 3035], [309d, 309e], [30fc, 30fe], [a015, a015],
177        [a60c, a60c], [a9cf, a9cf], [a9e6, a9e6], [aa70, aa70],
178        [aadd, aadd], [aaf3, aaf4], [ff70, ff70], [1135d, 1135d],
179        [115c6, 115c8], [16b42, 16b43], [16fe0, 16fe0], [1e944, 1e946]**/
180        const UnicodeSet codepoint_set
181            {{{Empty, 5}, {Mixed, 1}, {Empty, 16}, {Mixed, 1}, {Empty, 27},
182              {Mixed, 1}, {Empty, 12}, {Mixed, 1}, {Empty, 50}, {Mixed, 1},
183              {Empty, 3}, {Mixed, 1}, {Empty, 73}, {Mixed, 1}, {Empty, 1},
184              {Mixed, 1}, {Empty, 18}, {Mixed, 1}, {Empty, 11}, {Mixed, 1},
185              {Empty, 1}, {Mixed, 1}, {Empty, 156}, {Mixed, 2}, {Empty, 2},
186              {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Empty, 888}, {Mixed, 1},
187              {Empty, 47}, {Mixed, 1}, {Empty, 29}, {Mixed, 2}, {Empty, 3},
188              {Mixed, 1}, {Empty, 2}, {Mixed, 2}, {Empty, 675}, {Mixed, 1},
189              {Empty, 158}, {Mixed, 1}, {Empty, 19}, {Mixed, 1},
190              {Empty, 683}, {Mixed, 1}, {Empty, 36}, {Mixed, 1},
191              {Empty, 970}, {Mixed, 1}, {Empty, 30901}},
192             {0x00800000, 0x00030000, 0x00000001, 0x04000000, 0x00000040,
193              0x00000040, 0x00000400, 0x00000008, 0x00000080, 0x00400000,
194              0x08000000, 0x00000020, 0x003e0000, 0x60000000, 0x70000000,
195              0x00200000, 0x00001000, 0x00008000, 0x00000040, 0x00010000,
196              0x20000000, 0x00180000, 0x00010000, 0x20000000, 0x000001c0,
197              0x0000000c, 0x00000001, 0x00000070}};
198        static BinaryPropertyObject property_object{Ext, codepoint_set};
199    }
200    namespace HEX_ns {
201        /** Code Point Ranges for Hex
202        [0030, 0039], [0041, 0046], [0061, 0066], [ff10, ff19],
203        [ff21, ff26], [ff41, ff46]**/
204        const UnicodeSet codepoint_set
205            {{{Empty, 1}, {Mixed, 3}, {Empty, 2036}, {Mixed, 3},
206              {Empty, 32773}},
207             {0x03ff0000, 0x0000007e, 0x0000007e, 0x03ff0000, 0x0000007e,
208              0x0000007e}};
209        static BinaryPropertyObject property_object{Hex, codepoint_set};
210    }
211    namespace HYPHEN_ns {
212        /** Code Point Ranges for Hyphen
213        [002d, 002d], [00ad, 00ad], [058a, 058a], [1806, 1806],
214        [2010, 2011], [2e17, 2e17], [30fb, 30fb], [fe63, fe63],
215        [ff0d, ff0d], [ff65, ff65]**/
216        const UnicodeSet codepoint_set
217            {{{Empty, 1}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 38},
218              {Mixed, 1}, {Empty, 147}, {Mixed, 1}, {Empty, 63}, {Mixed, 1},
219              {Empty, 111}, {Mixed, 1}, {Empty, 22}, {Mixed, 1},
220              {Empty, 1643}, {Mixed, 1}, {Empty, 4}, {Mixed, 1}, {Empty, 2},
221              {Mixed, 1}, {Empty, 32772}},
222             {0x00002000, 0x00002000, 0x00000400, 0x00000040, 0x00030000,
223              0x00800000, 0x08000000, 0x00000008, 0x00002000, 0x00000020}};
224        static BinaryPropertyObject property_object{Hyphen, codepoint_set};
225    }
226    namespace IDSB_ns {
227        /** Code Point Ranges for IDSB
228        [2ff0, 2ff1], [2ff4, 2ffb]**/
229        const UnicodeSet codepoint_set
230            {{{Empty, 383}, {Mixed, 1}, {Empty, 34432}},
231             {0x0ff30000}};
232        static BinaryPropertyObject property_object{IDSB, codepoint_set};
233    }
234    namespace IDST_ns {
235        /** Code Point Ranges for IDST
236        [2ff2, 2ff3]**/
237        const UnicodeSet codepoint_set
238            {{{Empty, 383}, {Mixed, 1}, {Empty, 34432}},
239             {0x000c0000}};
240        static BinaryPropertyObject property_object{IDST, codepoint_set};
241    }
242    namespace IDEO_ns {
243        /** Code Point Ranges for Ideo
244        [3006, 3007], [3021, 3029], [3038, 303a], [3400, 4db5],
245        [4e00, 9fd5], [f900, fa6d], [fa70, fad9], [17000, 187ec],
246        [18800, 18af2], [20000, 2a6d6], [2a700, 2b734], [2b740, 2b81d],
247        [2b820, 2cea1], [2f800, 2fa1d]**/
248        const UnicodeSet codepoint_set
249            {{{Empty, 384}, {Mixed, 2}, {Empty, 30}, {Full, 205},
250              {Mixed, 1}, {Empty, 2}, {Full, 654}, {Mixed, 1}, {Empty, 713},
251              {Full, 11}, {Mixed, 1}, {Full, 2}, {Mixed, 1}, {Empty, 937},
252              {Full, 191}, {Mixed, 1}, {Full, 23}, {Mixed, 1}, {Empty, 936},
253              {Full, 1334}, {Mixed, 1}, {Empty, 1}, {Full, 129}, {Mixed, 1},
254              {Full, 6}, {Mixed, 1}, {Full, 180}, {Mixed, 1}, {Empty, 330},
255              {Full, 16}, {Mixed, 1}, {Empty, 28719}},
256             {0x000000c0, 0x070003fe, 0x003fffff, 0x003fffff, 0xffff3fff,
257              0x03ffffff, 0x00001fff, 0x0007ffff, 0x007fffff, 0x001fffff,
258              0x3fffffff, 0x00000003, 0x3fffffff}};
259        static BinaryPropertyObject property_object{Ideo, codepoint_set};
260    }
261    namespace JOIN_C_ns {
262        /** Code Point Ranges for Join_C
263        [200c, 200d]**/
264        const UnicodeSet codepoint_set
265            {{{Empty, 256}, {Mixed, 1}, {Empty, 34559}},
266             {0x00003000}};
267        static BinaryPropertyObject property_object{Join_C, codepoint_set};
268    }
269    namespace LOE_ns {
270        /** Code Point Ranges for LOE
271        [0e40, 0e44], [0ec0, 0ec4], [19b5, 19b7], [19ba, 19ba],
272        [aab5, aab6], [aab9, aab9], [aabb, aabc]**/
273        const UnicodeSet codepoint_set
274            {{{Empty, 114}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 86},
275              {Mixed, 1}, {Empty, 1159}, {Mixed, 1}, {Empty, 33450}},
276             {0x0000001f, 0x0000001f, 0x04e00000, 0x1a600000}};
277        static BinaryPropertyObject property_object{LOE, codepoint_set};
278    }
279    namespace NCHAR_ns {
280        /** Code Point Ranges for NChar
281        [fdd0, fdef], [fffe, ffff], [1fffe, 1ffff], [2fffe, 2ffff],
282        [3fffe, 3ffff], [4fffe, 4ffff], [5fffe, 5ffff], [6fffe, 6ffff],
283        [7fffe, 7ffff], [8fffe, 8ffff], [9fffe, 9ffff], [afffe, affff],
284        [bfffe, bffff], [cfffe, cffff], [dfffe, dffff], [efffe, effff],
285        [ffffe, fffff], [10fffe, 10ffff]**/
286        const UnicodeSet codepoint_set
287            {{{Empty, 2030}, {Mixed, 2}, {Empty, 15}, {Mixed, 1},
288              {Empty, 2047}, {Mixed, 1}, {Empty, 2047}, {Mixed, 1},
289              {Empty, 2047}, {Mixed, 1}, {Empty, 2047}, {Mixed, 1},
290              {Empty, 2047}, {Mixed, 1}, {Empty, 2047}, {Mixed, 1},
291              {Empty, 2047}, {Mixed, 1}, {Empty, 2047}, {Mixed, 1},
292              {Empty, 2047}, {Mixed, 1}, {Empty, 2047}, {Mixed, 1},
293              {Empty, 2047}, {Mixed, 1}, {Empty, 2047}, {Mixed, 1},
294              {Empty, 2047}, {Mixed, 1}, {Empty, 2047}, {Mixed, 1},
295              {Empty, 2047}, {Mixed, 1}, {Empty, 2047}, {Mixed, 1}},
296             {0xffff0000, 0x0000ffff, 0xc0000000, 0xc0000000, 0xc0000000,
297              0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000,
298              0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000,
299              0xc0000000, 0xc0000000, 0xc0000000, 0xc0000000}};
300        static BinaryPropertyObject property_object{NChar, codepoint_set};
301    }
302    namespace OALPHA_ns {
303        /** Code Point Ranges for OAlpha
304        [0345, 0345], [05b0, 05bd], [05bf, 05bf], [05c1, 05c2],
305        [05c4, 05c5], [05c7, 05c7], [0610, 061a], [064b, 0657],
306        [0659, 065f], [0670, 0670], [06d6, 06dc], [06e1, 06e4],
307        [06e7, 06e8], [06ed, 06ed], [0711, 0711], [0730, 073f],
308        [07a6, 07b0], [0816, 0817], [081b, 0823], [0825, 0827],
309        [0829, 082c], [08d4, 08df], [08e3, 08e9], [08f0, 0903],
310        [093a, 093b], [093e, 094c], [094e, 094f], [0955, 0957],
311        [0962, 0963], [0981, 0983], [09be, 09c4], [09c7, 09c8],
312        [09cb, 09cc], [09d7, 09d7], [09e2, 09e3], [0a01, 0a03],
313        [0a3e, 0a42], [0a47, 0a48], [0a4b, 0a4c], [0a51, 0a51],
314        [0a70, 0a71], [0a75, 0a75], [0a81, 0a83], [0abe, 0ac5],
315        [0ac7, 0ac9], [0acb, 0acc], [0ae2, 0ae3], [0b01, 0b03],
316        [0b3e, 0b44], [0b47, 0b48], [0b4b, 0b4c], [0b56, 0b57],
317        [0b62, 0b63], [0b82, 0b82], [0bbe, 0bc2], [0bc6, 0bc8],
318        [0bca, 0bcc], [0bd7, 0bd7], [0c00, 0c03], [0c3e, 0c44],
319        [0c46, 0c48], [0c4a, 0c4c], [0c55, 0c56], [0c62, 0c63],
320        [0c81, 0c83], [0cbe, 0cc4], [0cc6, 0cc8], [0cca, 0ccc],
321        [0cd5, 0cd6], [0ce2, 0ce3], [0d01, 0d03], [0d3e, 0d44],
322        [0d46, 0d48], [0d4a, 0d4c], [0d57, 0d57], [0d62, 0d63],
323        [0d82, 0d83], [0dcf, 0dd4], [0dd6, 0dd6], [0dd8, 0ddf],
324        [0df2, 0df3], [0e31, 0e31], [0e34, 0e3a], [0e4d, 0e4d],
325        [0eb1, 0eb1], [0eb4, 0eb9], [0ebb, 0ebc], [0ecd, 0ecd],
326        [0f71, 0f81], [0f8d, 0f97], [0f99, 0fbc], [102b, 1036],
327        [1038, 1038], [103b, 103e], [1056, 1059], [105e, 1060],
328        [1062, 1062], [1067, 1068], [1071, 1074], [1082, 1086],
329        [109c, 109d], [135f, 135f], [1712, 1713], [1732, 1733],
330        [1752, 1753], [1772, 1773], [17b6, 17c8], [1885, 1886],
331        [18a9, 18a9], [1920, 192b], [1930, 1938], [1a17, 1a1b],
332        [1a55, 1a5e], [1a61, 1a74], [1b00, 1b04], [1b35, 1b43],
333        [1b80, 1b82], [1ba1, 1ba9], [1bac, 1bad], [1be7, 1bf1],
334        [1c24, 1c35], [1cf2, 1cf3], [1de7, 1df4], [24b6, 24e9],
335        [2de0, 2dff], [a674, a67b], [a69e, a69f], [a823, a827],
336        [a880, a881], [a8b4, a8c3], [a8c5, a8c5], [a926, a92a],
337        [a947, a952], [a980, a983], [a9b4, a9bf], [aa29, aa36],
338        [aa43, aa43], [aa4c, aa4d], [aab0, aab0], [aab2, aab4],
339        [aab7, aab8], [aabe, aabe], [aaeb, aaef], [aaf5, aaf5],
340        [abe3, abea], [fb1e, fb1e], [10376, 1037a], [10a01, 10a03],
341        [10a05, 10a06], [10a0c, 10a0f], [11000, 11002], [11038, 11045],
342        [11082, 11082], [110b0, 110b8], [11100, 11102], [11127, 11132],
343        [11180, 11182], [111b3, 111bf], [1122c, 11234], [11237, 11237],
344        [1123e, 1123e], [112df, 112e8], [11300, 11303], [1133e, 11344],
345        [11347, 11348], [1134b, 1134c], [11357, 11357], [11362, 11363],
346        [11435, 11441], [11443, 11445], [114b0, 114c1], [115af, 115b5],
347        [115b8, 115be], [115dc, 115dd], [11630, 1163e], [11640, 11640],
348        [116ab, 116b5], [1171d, 1172a], [11c2f, 11c36], [11c38, 11c3e],
349        [11c92, 11ca7], [11ca9, 11cb6], [16b30, 16b36], [16f51, 16f7e],
350        [1bc9e, 1bc9e], [1e000, 1e006], [1e008, 1e018], [1e01b, 1e021],
351        [1e023, 1e024], [1e026, 1e02a], [1e947, 1e947], [1f130, 1f149],
352        [1f150, 1f169], [1f170, 1f189]**/
353        const UnicodeSet codepoint_set
354            {{{Empty, 26}, {Mixed, 1}, {Empty, 18}, {Mixed, 2}, {Empty, 1},
355              {Mixed, 1}, {Empty, 1}, {Mixed, 2}, {Empty, 2}, {Mixed, 4},
356              {Empty, 3}, {Mixed, 1}, {Empty, 2}, {Mixed, 2}, {Empty, 4},
357              {Mixed, 25}, {Empty, 1}, {Mixed, 13}, {Empty, 1}, {Mixed, 2},
358              {Empty, 1}, {Mixed, 2}, {Empty, 2}, {Mixed, 2}, {Empty, 4},
359              {Mixed, 3}, {Empty, 3}, {Mixed, 4}, {Empty, 21}, {Mixed, 1},
360              {Empty, 29}, {Mixed, 4}, {Empty, 1}, {Mixed, 2}, {Empty, 5},
361              {Mixed, 2}, {Empty, 3}, {Mixed, 1}, {Empty, 6}, {Mixed, 1},
362              {Empty, 1}, {Mixed, 2}, {Empty, 4}, {Mixed, 3}, {Empty, 1},
363              {Mixed, 2}, {Empty, 1}, {Mixed, 1}, {Empty, 1}, {Mixed, 1},
364              {Empty, 5}, {Mixed, 1}, {Empty, 7}, {Mixed, 1}, {Empty, 53},
365              {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Empty, 71}, {Full, 1},
366              {Empty, 963}, {Mixed, 2}, {Empty, 12}, {Mixed, 1}, {Empty, 2},
367              {Mixed, 3}, {Empty, 2}, {Mixed, 2}, {Empty, 1}, {Mixed, 2},
368              {Empty, 3}, {Mixed, 2}, {Empty, 2}, {Mixed, 1}, {Empty, 1},
369              {Mixed, 1}, {Empty, 7}, {Mixed, 1}, {Empty, 632}, {Mixed, 1},
370              {Empty, 66}, {Mixed, 1}, {Empty, 52}, {Mixed, 1}, {Empty, 47},
371              {Mixed, 3}, {Empty, 1}, {Mixed, 2}, {Empty, 2}, {Mixed, 2},
372              {Empty, 2}, {Mixed, 2}, {Empty, 3}, {Mixed, 1}, {Empty, 4},
373              {Mixed, 6}, {Empty, 5}, {Mixed, 2}, {Empty, 2}, {Mixed, 2},
374              {Empty, 6}, {Mixed, 2}, {Empty, 2}, {Mixed, 2}, {Empty, 2},
375              {Mixed, 1}, {Empty, 2}, {Mixed, 2}, {Empty, 39}, {Mixed, 1},
376              {Empty, 2}, {Mixed, 2}, {Empty, 627}, {Mixed, 1}, {Empty, 32},
377              {Mixed, 2}, {Empty, 616}, {Mixed, 1}, {Empty, 283},
378              {Mixed, 2}, {Empty, 72}, {Mixed, 1}, {Empty, 62}, {Mixed, 4},
379              {Empty, 30835}},
380             {0x00000020, 0xbfff0000, 0x000000b6, 0x07ff0000, 0xfefff800,
381              0x00010000, 0x1fc00000, 0x0000219e, 0x00020000, 0xffff0000,
382              0x0001ffc0, 0xf8c00000, 0x00001eef, 0xfff00000, 0xffff03f8,
383              0x0000000f, 0xcc000000, 0x00e0dfff, 0x0000000c, 0x0000000e,
384              0xc0000000, 0x0080199f, 0x0000000c, 0x0000000e, 0xc0000000,
385              0x00021987, 0x00230000, 0x0000000e, 0xc0000000, 0x00001bbf,
386              0x0000000c, 0x0000000e, 0xc0000000, 0x00c0199f, 0x0000000c,
387              0x00000004, 0xc0000000, 0x00801dc7, 0x0000000f, 0xc0000000,
388              0x00601ddf, 0x0000000c, 0x0000000e, 0xc0000000, 0x00601ddf,
389              0x0000000c, 0x0000000e, 0xc0000000, 0x00801ddf, 0x0000000c,
390              0x0000000c, 0xff5f8000, 0x000c0000, 0x07f20000, 0x00002000,
391              0x1bf20000, 0x00002000, 0xfffe0000, 0xfeffe003, 0x1fffffff,
392              0x797ff800, 0xc3c00000, 0x001e0185, 0x3000007c, 0x80000000,
393              0x000c0000, 0x000c0000, 0x000c0000, 0x000c0000, 0xffc00000,
394              0x000001ff, 0x00000060, 0x00000200, 0x01ff0fff, 0x0f800000,
395              0x7fe00000, 0x001ffffe, 0x0000001f, 0xffe00000, 0x0000000f,
396              0x00000007, 0x000033fe, 0x0003ff80, 0x003ffff0, 0x000c0000,
397              0x001fff80, 0xffc00000, 0x000003ff, 0x0ff00000, 0xc0000000,
398              0x000000f8, 0x00000003, 0xfff00000, 0x0000002f, 0x000007c0,
399              0x0007ff80, 0x0000000f, 0xfff00000, 0x007ffe00, 0x00003008,
400              0x419d0000, 0x0020f800, 0x000007f8, 0x40000000, 0x07c00000,
401              0x0000f06e, 0x00000007, 0xff000000, 0x0000003f, 0x00000004,
402              0x01ff0000, 0x00000007, 0x0007ff80, 0x00000007, 0xfff80000,
403              0x409ff000, 0x80000000, 0x000001ff, 0x0000000f, 0xc0000000,
404              0x0080199f, 0x0000000c, 0xffe00000, 0x0000003b, 0xffff0000,
405              0x00000003, 0x7f3f8000, 0x30000000, 0x7fff0000, 0x00000001,
406              0x003ff800, 0xe0000000, 0x000007ff, 0x7f7f8000, 0xfffc0000,
407              0x007ffeff, 0x007f0000, 0xfffe0000, 0x7fffffff, 0x40000000,
408              0xf9ffff7f, 0x000007db, 0x00000080, 0xffff0000, 0xffff03ff,
409              0xffff03ff, 0x000003ff}};
410        static BinaryPropertyObject property_object{OAlpha, codepoint_set};
411    }
412    namespace ODI_ns {
413        /** Code Point Ranges for ODI
414        [034f, 034f], [115f, 1160], [17b4, 17b5], [2065, 2065],
415        [3164, 3164], [ffa0, ffa0], [fff0, fff8], [e0000, e0000],
416        [e0002, e001f], [e0080, e00ff], [e01f0, e0fff]**/
417        const UnicodeSet codepoint_set
418            {{{Empty, 26}, {Mixed, 1}, {Empty, 111}, {Mixed, 2},
419              {Empty, 49}, {Mixed, 1}, {Empty, 69}, {Mixed, 1},
420              {Empty, 135}, {Mixed, 1}, {Empty, 1649}, {Mixed, 1},
421              {Empty, 1}, {Mixed, 1}, {Empty, 26624}, {Mixed, 1},
422              {Empty, 3}, {Full, 4}, {Empty, 7}, {Mixed, 1}, {Full, 112},
423              {Empty, 6016}},
424             {0x00008000, 0x80000000, 0x00000001, 0x00300000, 0x00000020,
425              0x00000010, 0x00000001, 0x01ff0000, 0xfffffffd, 0xffff0000}};
426        static BinaryPropertyObject property_object{ODI, codepoint_set};
427    }
428    namespace OGR_EXT_ns {
429        /** Code Point Ranges for OGr_Ext
430        [09be, 09be], [09d7, 09d7], [0b3e, 0b3e], [0b57, 0b57],
431        [0bbe, 0bbe], [0bd7, 0bd7], [0cc2, 0cc2], [0cd5, 0cd6],
432        [0d3e, 0d3e], [0d57, 0d57], [0dcf, 0dcf], [0ddf, 0ddf],
433        [200c, 200c], [302e, 302f], [ff9e, ff9f], [1133e, 1133e],
434        [11357, 11357], [114b0, 114b0], [114bd, 114bd], [115af, 115af],
435        [1d165, 1d165], [1d16e, 1d172], [e0020, e007f]**/
436        const UnicodeSet codepoint_set
437            {{{Empty, 77}, {Mixed, 2}, {Empty, 10}, {Mixed, 2}, {Empty, 2},
438              {Mixed, 2}, {Empty, 7}, {Mixed, 1}, {Empty, 2}, {Mixed, 2},
439              {Empty, 3}, {Mixed, 1}, {Empty, 145}, {Mixed, 1},
440              {Empty, 128}, {Mixed, 1}, {Empty, 1658}, {Mixed, 1},
441              {Empty, 156}, {Mixed, 2}, {Empty, 10}, {Mixed, 1}, {Empty, 7},
442              {Mixed, 1}, {Empty, 1501}, {Mixed, 1}, {Empty, 24949},
443              {Full, 3}, {Empty, 6140}},
444             {0x40000000, 0x00800000, 0x40000000, 0x00800000, 0x40000000,
445              0x00800000, 0x00600004, 0x40000000, 0x00800000, 0x80008000,
446              0x00001000, 0x0000c000, 0xc0000000, 0x40000000, 0x00800000,
447              0x20010000, 0x00008000, 0x0007c020}};
448        static BinaryPropertyObject property_object{OGr_Ext, codepoint_set};
449    }
450    namespace OIDC_ns {
451        /** Code Point Ranges for OIDC
452        [00b7, 00b7], [0387, 0387], [1369, 1371], [19da, 19da]**/
453        const UnicodeSet codepoint_set
454            {{{Empty, 5}, {Mixed, 1}, {Empty, 22}, {Mixed, 1}, {Empty, 126},
455              {Mixed, 1}, {Empty, 50}, {Mixed, 1}, {Empty, 34609}},
456             {0x00800000, 0x00000080, 0x0003fe00, 0x04000000}};
457        static BinaryPropertyObject property_object{OIDC, codepoint_set};
458    }
459    namespace OIDS_ns {
460        /** Code Point Ranges for OIDS
461        [1885, 1886], [2118, 2118], [212e, 212e], [309b, 309c]**/
462        const UnicodeSet codepoint_set
463            {{{Empty, 196}, {Mixed, 1}, {Empty, 67}, {Mixed, 2},
464              {Empty, 122}, {Mixed, 1}, {Empty, 34427}},
465             {0x00000060, 0x01000000, 0x00004000, 0x18000000}};
466        static BinaryPropertyObject property_object{OIDS, codepoint_set};
467    }
468    namespace OLOWER_ns {
469        /** Code Point Ranges for OLower
470        [00aa, 00aa], [00ba, 00ba], [02b0, 02b8], [02c0, 02c1],
471        [02e0, 02e4], [0345, 0345], [037a, 037a], [1d2c, 1d6a],
472        [1d78, 1d78], [1d9b, 1dbf], [2071, 2071], [207f, 207f],
473        [2090, 209c], [2170, 217f], [24d0, 24e9], [2c7c, 2c7d],
474        [a69c, a69d], [a770, a770], [a7f8, a7f9], [ab5c, ab5f]**/
475        const UnicodeSet codepoint_set
476            {{{Empty, 5}, {Mixed, 1}, {Empty, 15}, {Mixed, 3}, {Empty, 2},
477              {Mixed, 2}, {Empty, 205}, {Mixed, 1}, {Full, 1}, {Mixed, 2},
478              {Full, 1}, {Empty, 21}, {Mixed, 2}, {Empty, 6}, {Mixed, 1},
479              {Empty, 26}, {Mixed, 2}, {Empty, 59}, {Mixed, 1},
480              {Empty, 976}, {Mixed, 1}, {Empty, 6}, {Mixed, 1}, {Empty, 3},
481              {Mixed, 1}, {Empty, 26}, {Mixed, 1}, {Empty, 33445}},
482             {0x04000400, 0x01ff0000, 0x00000003, 0x0000001f, 0x00000020,
483              0x04000000, 0xfffff000, 0x010007ff, 0xf8000000, 0x80020000,
484              0x1fff0000, 0xffff0000, 0xffff0000, 0x000003ff, 0x30000000,
485              0x30000000, 0x00010000, 0x03000000, 0xf0000000}};
486        static BinaryPropertyObject property_object{OLower, codepoint_set};
487    }
488    namespace OMATH_ns {
489        /** Code Point Ranges for OMath
490        [005e, 005e], [03d0, 03d2], [03d5, 03d5], [03f0, 03f1],
491        [03f4, 03f5], [2016, 2016], [2032, 2034], [2040, 2040],
492        [2061, 2064], [207d, 207e], [208d, 208e], [20d0, 20dc],
493        [20e1, 20e1], [20e5, 20e6], [20eb, 20ef], [2102, 2102],
494        [2107, 2107], [210a, 2113], [2115, 2115], [2119, 211d],
495        [2124, 2124], [2128, 2129], [212c, 212d], [212f, 2131],
496        [2133, 2138], [213c, 213f], [2145, 2149], [2195, 2199],
497        [219c, 219f], [21a1, 21a2], [21a4, 21a5], [21a7, 21a7],
498        [21a9, 21ad], [21b0, 21b1], [21b6, 21b7], [21bc, 21cd],
499        [21d0, 21d1], [21d3, 21d3], [21d5, 21db], [21dd, 21dd],
500        [21e4, 21e5], [2308, 230b], [23b4, 23b5], [23b7, 23b7],
501        [23d0, 23d0], [23e2, 23e2], [25a0, 25a1], [25ae, 25b6],
502        [25bc, 25c0], [25c6, 25c7], [25ca, 25cb], [25cf, 25d3],
503        [25e2, 25e2], [25e4, 25e4], [25e7, 25ec], [2605, 2606],
504        [2640, 2640], [2642, 2642], [2660, 2663], [266d, 266e],
505        [27c5, 27c6], [27e6, 27ef], [2983, 2998], [29d8, 29db],
506        [29fc, 29fd], [fe61, fe61], [fe63, fe63], [fe68, fe68],
507        [ff3c, ff3c], [ff3e, ff3e], [1d400, 1d454], [1d456, 1d49c],
508        [1d49e, 1d49f], [1d4a2, 1d4a2], [1d4a5, 1d4a6], [1d4a9, 1d4ac],
509        [1d4ae, 1d4b9], [1d4bb, 1d4bb], [1d4bd, 1d4c3], [1d4c5, 1d505],
510        [1d507, 1d50a], [1d50d, 1d514], [1d516, 1d51c], [1d51e, 1d539],
511        [1d53b, 1d53e], [1d540, 1d544], [1d546, 1d546], [1d54a, 1d550],
512        [1d552, 1d6a5], [1d6a8, 1d6c0], [1d6c2, 1d6da], [1d6dc, 1d6fa],
513        [1d6fc, 1d714], [1d716, 1d734], [1d736, 1d74e], [1d750, 1d76e],
514        [1d770, 1d788], [1d78a, 1d7a8], [1d7aa, 1d7c2], [1d7c4, 1d7cb],
515        [1d7ce, 1d7ff], [1ee00, 1ee03], [1ee05, 1ee1f], [1ee21, 1ee22],
516        [1ee24, 1ee24], [1ee27, 1ee27], [1ee29, 1ee32], [1ee34, 1ee37],
517        [1ee39, 1ee39], [1ee3b, 1ee3b], [1ee42, 1ee42], [1ee47, 1ee47],
518        [1ee49, 1ee49], [1ee4b, 1ee4b], [1ee4d, 1ee4f], [1ee51, 1ee52],
519        [1ee54, 1ee54], [1ee57, 1ee57], [1ee59, 1ee59], [1ee5b, 1ee5b],
520        [1ee5d, 1ee5d], [1ee5f, 1ee5f], [1ee61, 1ee62], [1ee64, 1ee64],
521        [1ee67, 1ee6a], [1ee6c, 1ee72], [1ee74, 1ee77], [1ee79, 1ee7c],
522        [1ee7e, 1ee7e], [1ee80, 1ee89], [1ee8b, 1ee9b], [1eea1, 1eea3],
523        [1eea5, 1eea9], [1eeab, 1eebb]**/
524        const UnicodeSet codepoint_set
525            {{{Empty, 2}, {Mixed, 1}, {Empty, 27}, {Mixed, 2}, {Empty, 224},
526              {Mixed, 5}, {Empty, 1}, {Mixed, 5}, {Empty, 1}, {Mixed, 4},
527              {Empty, 8}, {Mixed, 1}, {Empty, 4}, {Mixed, 3}, {Empty, 13},
528              {Mixed, 4}, {Empty, 1}, {Mixed, 2}, {Empty, 10}, {Mixed, 2},
529              {Empty, 12}, {Mixed, 1}, {Empty, 1}, {Mixed, 2},
530              {Empty, 1699}, {Mixed, 1}, {Empty, 5}, {Mixed, 1},
531              {Empty, 1702}, {Full, 2}, {Mixed, 1}, {Full, 1}, {Mixed, 3},
532              {Full, 1}, {Mixed, 3}, {Full, 10}, {Mixed, 10}, {Full, 1},
533              {Empty, 176}, {Mixed, 6}, {Empty, 30858}},
534             {0x40000000, 0x00270000, 0x00330000, 0x00400000, 0x001c0000,
535              0x00000001, 0x6000001e, 0x00006000, 0x1fff0000, 0x0000f862,
536              0x3e2ffc84, 0xf1fbb310, 0x000003e0, 0xf3e00000, 0xf0c33eb6,
537              0x2feb3fff, 0x00000030, 0x00000f00, 0x00b00000, 0x00010000,
538              0x00000004, 0xf07fc003, 0x000f8cc1, 0x00001f94, 0x00000060,
539              0x00000005, 0x0000600f, 0x00000060, 0x0000ffc0, 0x01fffff8,
540              0x0f000000, 0x30000000, 0x0000010a, 0x50000000, 0xffdfffff,
541              0xdfffffff, 0xebffde64, 0xffffffef, 0xdfdfe7bf, 0x7bffffff,
542              0xfffdfc5f, 0xffffff3f, 0xf7fffffd, 0xf7ffffff, 0xffdfffff,
543              0xffdfffff, 0xffff7fff, 0xffff7fff, 0xfffffdff, 0xfffffdff,
544              0xffffcff7, 0xffffffef, 0x0af7fe96, 0xaa96ea84, 0x5ef7f796,
545              0x0ffffbff, 0x0ffffbee}};
546        static BinaryPropertyObject property_object{OMath, codepoint_set};
547    }
548    namespace OUPPER_ns {
549        /** Code Point Ranges for OUpper
550        [2160, 216f], [24b6, 24cf], [1f130, 1f149], [1f150, 1f169],
551        [1f170, 1f189]**/
552        const UnicodeSet codepoint_set
553            {{{Empty, 267}, {Mixed, 1}, {Empty, 25}, {Mixed, 2},
554              {Empty, 3682}, {Mixed, 4}, {Empty, 30835}},
555             {0x0000ffff, 0xffc00000, 0x0000ffff, 0xffff0000, 0xffff03ff,
556              0xffff03ff, 0x000003ff}};
557        static BinaryPropertyObject property_object{OUpper, codepoint_set};
558    }
559    namespace PCM_ns {
560        /** Code Point Ranges for PCM
561        [0600, 0605], [06dd, 06dd], [070f, 070f], [08e2, 08e2],
562        [110bd, 110bd]**/
563        const UnicodeSet codepoint_set
564            {{{Empty, 48}, {Mixed, 1}, {Empty, 5}, {Mixed, 1}, {Empty, 1},
565              {Mixed, 1}, {Empty, 14}, {Mixed, 1}, {Empty, 2109},
566              {Mixed, 1}, {Empty, 32634}},
567             {0x0000003f, 0x20000000, 0x00008000, 0x00000004, 0x20000000}};
568        static BinaryPropertyObject property_object{PCM, codepoint_set};
569    }
570    namespace PAT_SYN_ns {
571        /** Code Point Ranges for Pat_Syn
572        [0021, 002f], [003a, 0040], [005b, 005e], [0060, 0060],
573        [007b, 007e], [00a1, 00a7], [00a9, 00a9], [00ab, 00ac],
574        [00ae, 00ae], [00b0, 00b1], [00b6, 00b6], [00bb, 00bb],
575        [00bf, 00bf], [00d7, 00d7], [00f7, 00f7], [2010, 2027],
576        [2030, 203e], [2041, 2053], [2055, 205e], [2190, 245f],
577        [2500, 2775], [2794, 2bff], [2e00, 2e7f], [3001, 3003],
578        [3008, 3020], [3030, 3030], [fd3e, fd3f], [fe45, fe46]**/
579        const UnicodeSet codepoint_set
580            {{{Empty, 1}, {Mixed, 3}, {Empty, 1}, {Mixed, 3}, {Empty, 248},
581              {Mixed, 3}, {Empty, 9}, {Mixed, 1}, {Full, 22}, {Empty, 5},
582              {Full, 19}, {Mixed, 2}, {Full, 35}, {Empty, 16}, {Full, 4},
583              {Empty, 12}, {Mixed, 2}, {Empty, 1639}, {Mixed, 1},
584              {Empty, 8}, {Mixed, 1}, {Empty, 32781}},
585             {0xfc00fffe, 0x78000001, 0x78000001, 0x88435afe, 0x00800000,
586              0x00800000, 0xffff0000, 0x7fff00ff, 0x7feffffe, 0xffff0000,
587              0x003fffff, 0xfff00000, 0xffffff0e, 0x00010001, 0xc0000000,
588              0x00000060}};
589        static BinaryPropertyObject property_object{Pat_Syn, codepoint_set};
590    }
591    namespace PAT_WS_ns {
592        /** Code Point Ranges for Pat_WS
593        [0009, 000d], [0020, 0020], [0085, 0085], [200e, 200f],
594        [2028, 2029]**/
595        const UnicodeSet codepoint_set
596            {{{Mixed, 2}, {Empty, 2}, {Mixed, 1}, {Empty, 251}, {Mixed, 2},
597              {Empty, 34558}},
598             {0x00003e00, 0x00000001, 0x00000020, 0x0000c000, 0x00000300}};
599        static BinaryPropertyObject property_object{Pat_WS, codepoint_set};
600    }
601    namespace QMARK_ns {
602        /** Code Point Ranges for QMark
603        [0022, 0022], [0027, 0027], [00ab, 00ab], [00bb, 00bb],
604        [2018, 201f], [2039, 203a], [2e42, 2e42], [300c, 300f],
605        [301d, 301f], [fe41, fe44], [ff02, ff02], [ff07, ff07],
606        [ff62, ff63]**/
607        const UnicodeSet codepoint_set
608            {{{Empty, 1}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 250},
609              {Mixed, 2}, {Empty, 112}, {Mixed, 1}, {Empty, 13}, {Mixed, 1},
610              {Empty, 1649}, {Mixed, 1}, {Empty, 5}, {Mixed, 1}, {Empty, 2},
611              {Mixed, 1}, {Empty, 32772}},
612             {0x00000084, 0x08000800, 0xff000000, 0x06000000, 0x00000004,
613              0xe000f000, 0x0000001e, 0x00000084, 0x0000000c}};
614        static BinaryPropertyObject property_object{QMark, codepoint_set};
615    }
616    namespace RADICAL_ns {
617        /** Code Point Ranges for Radical
618        [2e80, 2e99], [2e9b, 2ef3], [2f00, 2fd5]**/
619        const UnicodeSet codepoint_set
620            {{{Empty, 372}, {Mixed, 1}, {Full, 2}, {Mixed, 1}, {Full, 6},
621              {Mixed, 1}, {Empty, 34433}},
622             {0xfbffffff, 0x000fffff, 0x003fffff}};
623        static BinaryPropertyObject property_object{Radical, codepoint_set};
624    }
625    namespace SD_ns {
626        /** Code Point Ranges for SD
627        [0069, 006a], [012f, 012f], [0249, 0249], [0268, 0268],
628        [029d, 029d], [02b2, 02b2], [03f3, 03f3], [0456, 0456],
629        [0458, 0458], [1d62, 1d62], [1d96, 1d96], [1da4, 1da4],
630        [1da8, 1da8], [1e2d, 1e2d], [1ecb, 1ecb], [2071, 2071],
631        [2148, 2149], [2c7c, 2c7c], [1d422, 1d423], [1d456, 1d457],
632        [1d48a, 1d48b], [1d4be, 1d4bf], [1d4f2, 1d4f3], [1d526, 1d527],
633        [1d55a, 1d55b], [1d58e, 1d58f], [1d5c2, 1d5c3], [1d5f6, 1d5f7],
634        [1d62a, 1d62b], [1d65e, 1d65f], [1d692, 1d693]**/
635        const UnicodeSet codepoint_set
636            {{{Empty, 3}, {Mixed, 1}, {Empty, 5}, {Mixed, 1}, {Empty, 8},
637              {Mixed, 4}, {Empty, 9}, {Mixed, 1}, {Empty, 2}, {Mixed, 1},
638              {Empty, 200}, {Mixed, 3}, {Empty, 3}, {Mixed, 1}, {Empty, 4},
639              {Mixed, 1}, {Empty, 12}, {Mixed, 1}, {Empty, 6}, {Mixed, 1},
640              {Empty, 88}, {Mixed, 1}, {Empty, 3389}, {Mixed, 2},
641              {Empty, 1}, {Mixed, 2}, {Empty, 1}, {Mixed, 1}, {Empty, 1},
642              {Mixed, 2}, {Empty, 1}, {Mixed, 1}, {Empty, 1}, {Mixed, 2},
643              {Empty, 1}, {Mixed, 2}, {Empty, 1}, {Mixed, 1},
644              {Empty, 31051}},
645             {0x00000600, 0x00008000, 0x00000200, 0x00000100, 0x20000000,
646              0x00040000, 0x00080000, 0x01400000, 0x00000004, 0x00400000,
647              0x00000110, 0x00002000, 0x00000800, 0x00020000, 0x00000300,
648              0x10000000, 0x0000000c, 0x00c00000, 0x00000c00, 0xc0000000,
649              0x000c0000, 0x000000c0, 0x0c000000, 0x0000c000, 0x0000000c,
650              0x00c00000, 0x00000c00, 0xc0000000, 0x000c0000}};
651        static BinaryPropertyObject property_object{SD, codepoint_set};
652    }
653    namespace STERM_ns {
654        /** Code Point Ranges for STerm
655        [0021, 0021], [002e, 002e], [003f, 003f], [0589, 0589],
656        [061f, 061f], [06d4, 06d4], [0700, 0702], [07f9, 07f9],
657        [0964, 0965], [104a, 104b], [1362, 1362], [1367, 1368],
658        [166e, 166e], [1735, 1736], [1803, 1803], [1809, 1809],
659        [1944, 1945], [1aa8, 1aab], [1b5a, 1b5b], [1b5e, 1b5f],
660        [1c3b, 1c3c], [1c7e, 1c7f], [203c, 203d], [2047, 2049],
661        [2e2e, 2e2e], [2e3c, 2e3c], [3002, 3002], [a4ff, a4ff],
662        [a60e, a60f], [a6f3, a6f3], [a6f7, a6f7], [a876, a877],
663        [a8ce, a8cf], [a92f, a92f], [a9c8, a9c9], [aa5d, aa5f],
664        [aaf0, aaf1], [abeb, abeb], [fe52, fe52], [fe56, fe57],
665        [ff01, ff01], [ff0e, ff0e], [ff1f, ff1f], [ff61, ff61],
666        [10a56, 10a57], [11047, 11048], [110be, 110c1], [11141, 11143],
667        [111c5, 111c6], [111cd, 111cd], [111de, 111df], [11238, 11239],
668        [1123b, 1123c], [112a9, 112a9], [1144b, 1144c], [115c2, 115c3],
669        [115c9, 115d7], [11641, 11642], [1173c, 1173e], [11c41, 11c42],
670        [16a6e, 16a6f], [16af5, 16af5], [16b37, 16b38], [16b44, 16b44],
671        [1bc9f, 1bc9f], [1da88, 1da88]**/
672        const UnicodeSet codepoint_set
673            {{{Empty, 1}, {Mixed, 1}, {Empty, 42}, {Mixed, 1}, {Empty, 3},
674              {Mixed, 1}, {Empty, 5}, {Mixed, 1}, {Empty, 1}, {Mixed, 1},
675              {Empty, 6}, {Mixed, 1}, {Empty, 11}, {Mixed, 1}, {Empty, 54},
676              {Mixed, 1}, {Empty, 24}, {Mixed, 1}, {Empty, 23}, {Mixed, 1},
677              {Empty, 5}, {Mixed, 1}, {Empty, 6}, {Mixed, 1}, {Empty, 9},
678              {Mixed, 1}, {Empty, 10}, {Mixed, 1}, {Empty, 4}, {Mixed, 1},
679              {Empty, 6}, {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 29},
680              {Mixed, 2}, {Empty, 110}, {Mixed, 1}, {Empty, 14}, {Mixed, 1},
681              {Empty, 934}, {Mixed, 1}, {Empty, 8}, {Mixed, 1}, {Empty, 6},
682              {Mixed, 1}, {Empty, 11}, {Mixed, 1}, {Empty, 2}, {Mixed, 1},
683              {Empty, 2}, {Mixed, 1}, {Empty, 4}, {Mixed, 1}, {Empty, 3},
684              {Mixed, 1}, {Empty, 4}, {Mixed, 1}, {Empty, 7}, {Mixed, 1},
685              {Empty, 658}, {Mixed, 1}, {Empty, 5}, {Mixed, 1}, {Empty, 2},
686              {Mixed, 1}, {Empty, 86}, {Mixed, 1}, {Empty, 47}, {Mixed, 1},
687              {Empty, 2}, {Mixed, 2}, {Empty, 3}, {Mixed, 1}, {Empty, 3},
688              {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
689              {Empty, 12}, {Mixed, 1}, {Empty, 11}, {Mixed, 1}, {Empty, 3},
690              {Mixed, 1}, {Empty, 6}, {Mixed, 1}, {Empty, 40}, {Mixed, 1},
691              {Empty, 624}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 1},
692              {Mixed, 2}, {Empty, 649}, {Mixed, 1}, {Empty, 239},
693              {Mixed, 1}, {Empty, 31019}},
694             {0x80004002, 0x00000200, 0x80000000, 0x00100000, 0x00000007,
695              0x02000000, 0x00000030, 0x00000c00, 0x00000184, 0x00004000,
696              0x00600000, 0x00000208, 0x00000030, 0x00000f00, 0xcc000000,
697              0x18000000, 0xc0000000, 0x30000000, 0x00000380, 0x10004000,
698              0x00000004, 0x80000000, 0x0000c000, 0x00880000, 0x00c00000,
699              0x0000c000, 0x00008000, 0x00000300, 0xe0000000, 0x00030000,
700              0x00000800, 0x00c40000, 0x80004002, 0x00000002, 0x00c00000,
701              0x00000180, 0xc0000000, 0x00000003, 0x0000000e, 0xc0002060,
702              0x1b000000, 0x00000200, 0x00001800, 0x00fffe0c, 0x00000006,
703              0x70000000, 0x00000006, 0x0000c000, 0x00200000, 0x01800000,
704              0x00000010, 0x80000000, 0x00000100}};
705        static BinaryPropertyObject property_object{STerm, codepoint_set};
706    }
707    namespace TERM_ns {
708        /** Code Point Ranges for Term
709        [0021, 0021], [002c, 002c], [002e, 002e], [003a, 003b],
710        [003f, 003f], [037e, 037e], [0387, 0387], [0589, 0589],
711        [05c3, 05c3], [060c, 060c], [061b, 061b], [061f, 061f],
712        [06d4, 06d4], [0700, 070a], [070c, 070c], [07f8, 07f9],
713        [0830, 083e], [085e, 085e], [0964, 0965], [0e5a, 0e5b],
714        [0f08, 0f08], [0f0d, 0f12], [104a, 104b], [1361, 1368],
715        [166d, 166e], [16eb, 16ed], [1735, 1736], [17d4, 17d6],
716        [17da, 17da], [1802, 1805], [1808, 1809], [1944, 1945],
717        [1aa8, 1aab], [1b5a, 1b5b], [1b5d, 1b5f], [1c3b, 1c3f],
718        [1c7e, 1c7f], [203c, 203d], [2047, 2049], [2e2e, 2e2e],
719        [2e3c, 2e3c], [2e41, 2e41], [3001, 3002], [a4fe, a4ff],
720        [a60d, a60f], [a6f3, a6f7], [a876, a877], [a8ce, a8cf],
721        [a92f, a92f], [a9c7, a9c9], [aa5d, aa5f], [aadf, aadf],
722        [aaf0, aaf1], [abeb, abeb], [fe50, fe52], [fe54, fe57],
723        [ff01, ff01], [ff0c, ff0c], [ff0e, ff0e], [ff1a, ff1b],
724        [ff1f, ff1f], [ff61, ff61], [ff64, ff64], [1039f, 1039f],
725        [103d0, 103d0], [10857, 10857], [1091f, 1091f], [10a56, 10a57],
726        [10af0, 10af5], [10b3a, 10b3f], [10b99, 10b9c], [11047, 1104d],
727        [110be, 110c1], [11141, 11143], [111c5, 111c6], [111cd, 111cd],
728        [111de, 111df], [11238, 1123c], [112a9, 112a9], [1144b, 1144d],
729        [1145b, 1145b], [115c2, 115c5], [115c9, 115d7], [11641, 11642],
730        [1173c, 1173e], [11c41, 11c43], [11c71, 11c71], [12470, 12474],
731        [16a6e, 16a6f], [16af5, 16af5], [16b37, 16b39], [16b44, 16b44],
732        [1bc9f, 1bc9f], [1da87, 1da8a]**/
733        const UnicodeSet codepoint_set
734            {{{Empty, 1}, {Mixed, 1}, {Empty, 25}, {Mixed, 2}, {Empty, 15},
735              {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 1}, {Mixed, 1},
736              {Empty, 5}, {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 6},
737              {Mixed, 1}, {Empty, 1}, {Mixed, 2}, {Empty, 8}, {Mixed, 1},
738              {Empty, 38}, {Mixed, 1}, {Empty, 5}, {Mixed, 1}, {Empty, 9},
739              {Mixed, 1}, {Empty, 24}, {Mixed, 1}, {Empty, 23}, {Mixed, 1},
740              {Empty, 3}, {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 4},
741              {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 9}, {Mixed, 1},
742              {Empty, 10}, {Mixed, 1}, {Empty, 4}, {Mixed, 1}, {Empty, 6},
743              {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 29}, {Mixed, 2},
744              {Empty, 110}, {Mixed, 2}, {Empty, 13}, {Mixed, 1},
745              {Empty, 934}, {Mixed, 1}, {Empty, 8}, {Mixed, 1}, {Empty, 6},
746              {Mixed, 1}, {Empty, 11}, {Mixed, 1}, {Empty, 2}, {Mixed, 1},
747              {Empty, 2}, {Mixed, 1}, {Empty, 4}, {Mixed, 1}, {Empty, 3},
748              {Mixed, 1}, {Empty, 3}, {Mixed, 2}, {Empty, 7}, {Mixed, 1},
749              {Empty, 658}, {Mixed, 1}, {Empty, 5}, {Mixed, 1}, {Empty, 2},
750              {Mixed, 1}, {Empty, 32}, {Mixed, 1}, {Empty, 1}, {Mixed, 1},
751              {Empty, 35}, {Mixed, 1}, {Empty, 5}, {Mixed, 1}, {Empty, 9},
752              {Mixed, 1}, {Empty, 4}, {Mixed, 1}, {Empty, 1}, {Mixed, 1},
753              {Empty, 2}, {Mixed, 1}, {Empty, 37}, {Mixed, 1}, {Empty, 2},
754              {Mixed, 2}, {Empty, 3}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
755              {Empty, 2}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 12},
756              {Mixed, 1}, {Empty, 11}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
757              {Empty, 6}, {Mixed, 1}, {Empty, 40}, {Mixed, 2}, {Empty, 63},
758              {Mixed, 1}, {Empty, 559}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
759              {Empty, 1}, {Mixed, 2}, {Empty, 649}, {Mixed, 1},
760              {Empty, 239}, {Mixed, 1}, {Empty, 31019}},
761             {0x8c005002, 0x40000000, 0x00000080, 0x00000200, 0x00000008,
762              0x88001000, 0x00100000, 0x000017ff, 0x03000000, 0x7fff0000,
763              0x40000000, 0x00000030, 0x0c000000, 0x0007e100, 0x00000c00,
764              0x000001fe, 0x00006000, 0x00003800, 0x00600000, 0x04700000,
765              0x0000033c, 0x00000030, 0x00000f00, 0xec000000, 0xf8000000,
766              0xc0000000, 0x30000000, 0x00000380, 0x10004000, 0x00000002,
767              0x00000006, 0xc0000000, 0x0000e000, 0x00f80000, 0x00c00000,
768              0x0000c000, 0x00008000, 0x00000380, 0xe0000000, 0x80000000,
769              0x00030000, 0x00000800, 0x00f70000, 0x8c005002, 0x00000012,
770              0x80000000, 0x00010000, 0x00800000, 0x80000000, 0x00c00000,
771              0x003f0000, 0xfc000000, 0x1e000000, 0x00003f80, 0xc0000000,
772              0x00000003, 0x0000000e, 0xc0002060, 0x1f000000, 0x00000200,
773              0x08003800, 0x00fffe3c, 0x00000006, 0x70000000, 0x0000000e,
774              0x00020000, 0x001f0000, 0x0000c000, 0x00200000, 0x03800000,
775              0x00000010, 0x80000000, 0x00000780}};
776        static BinaryPropertyObject property_object{Term, codepoint_set};
777    }
778    namespace UIDEO_ns {
779        /** Code Point Ranges for UIdeo
780        [3400, 4db5], [4e00, 9fd5], [fa0e, fa0f], [fa11, fa11],
781        [fa13, fa14], [fa1f, fa1f], [fa21, fa21], [fa23, fa24],
782        [fa27, fa29], [20000, 2a6d6], [2a700, 2b734], [2b740, 2b81d],
783        [2b820, 2cea1]**/
784        const UnicodeSet codepoint_set
785            {{{Empty, 416}, {Full, 205}, {Mixed, 1}, {Empty, 2},
786              {Full, 654}, {Mixed, 1}, {Empty, 721}, {Mixed, 2},
787              {Empty, 2094}, {Full, 1334}, {Mixed, 1}, {Empty, 1},
788              {Full, 129}, {Mixed, 1}, {Full, 6}, {Mixed, 1}, {Full, 180},
789              {Mixed, 1}, {Empty, 29066}},
790             {0x003fffff, 0x003fffff, 0x801ac000, 0x0000039a, 0x007fffff,
791              0x001fffff, 0x3fffffff, 0x00000003}};
792        static BinaryPropertyObject property_object{UIdeo, codepoint_set};
793    }
794    namespace VS_ns {
795        /** Code Point Ranges for VS
796        [180b, 180d], [fe00, fe0f], [e0100, e01ef]**/
797        const UnicodeSet codepoint_set
798            {{{Empty, 192}, {Mixed, 1}, {Empty, 1839}, {Mixed, 1},
799              {Empty, 26647}, {Full, 7}, {Mixed, 1}, {Empty, 6128}},
800             {0x00003800, 0x0000ffff, 0x0000ffff}};
801        static BinaryPropertyObject property_object{VS, codepoint_set};
802    }
803    namespace WSPACE_ns {
804        /** Code Point Ranges for WSpace
805        [0009, 000d], [0020, 0020], [0085, 0085], [00a0, 00a0],
806        [1680, 1680], [2000, 200a], [2028, 2029], [202f, 202f],
807        [205f, 205f], [3000, 3000]**/
808        const UnicodeSet codepoint_set
809            {{{Mixed, 2}, {Empty, 2}, {Mixed, 2}, {Empty, 174}, {Mixed, 1},
810              {Empty, 75}, {Mixed, 3}, {Empty, 125}, {Mixed, 1},
811              {Empty, 34431}},
812             {0x00003e00, 0x00000001, 0x00000020, 0x00000001, 0x00000001,
813              0x000007ff, 0x00008300, 0x80000000, 0x00000001}};
814        static BinaryPropertyObject property_object{WSpace, codepoint_set};
815    }
816}
817
818
819#endif
Note: See TracBrowser for help on using the repository browser.