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

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

UCD_Config.h, add Indic and CompositionExclusion? properties

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