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

Last change on this file since 4885 was 4735, checked in by cameron, 4 years ago

Support for Grapheme, Sentence, Word break properties

File size: 48.6 KB
RevLine 
[4735]1#ifndef GRAPHEMEBREAKPROPERTY_H
2#define GRAPHEMEBREAKPROPERTY_H
3/*
4 *  Copyright (c) 2015 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 "PropertyObjects.h"
12#include "PropertyValueAliases.h"
13#include "unicode_set.h"
14
15namespace UCD {
16    namespace GCB_ns {
17    /** Code Point Ranges for CN
18    [0, 9], [11, 12], [14, 31], [127, 159], [173, 173], [1536, 1541],
19    [1564, 1564], [1757, 1757], [1807, 1807], [6158, 6158], [8203, 8203],
20    [8206, 8207], [8232, 8238], [8288, 8303], [55296, 57343],
21    [65279, 65279], [65520, 65531], [69821, 69821], [113824, 113827],
22    [119155, 119162], [917504, 917759], [918000, 921599]**/
23    const UnicodeSet cn_Set
24        {{{Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Full, 1}, {Mixed, 1},
25          {Empty, 42}, {Mixed, 1}, {Empty, 5}, {Mixed, 1}, {Empty, 1},
26          {Mixed, 1}, {Empty, 135}, {Mixed, 1}, {Empty, 63}, {Mixed, 2},
27          {Empty, 1}, {Mixed, 1}, {Empty, 1468}, {Full, 64}, {Empty, 247},
28          {Mixed, 1}, {Empty, 7}, {Mixed, 1}, {Empty, 133}, {Mixed, 1},
29          {Empty, 1375}, {Mixed, 1}, {Empty, 165}, {Mixed, 1},
30          {Empty, 24948}, {Full, 8}, {Empty, 7}, {Mixed, 1}, {Full, 112},
31          {Empty, 6016}},
32         {0xffffdbff, 0x80000000, 0x00002000, 0x1000003f, 0x20000000,
33          0x00008000, 0x00004000, 0x0000c800, 0x00007f00, 0x0000ffff,
34          0x80000000, 0x0fff0000, 0x20000000, 0x0000000f, 0x07f80000,
35          0xffff0000}};
36    /** Code Point Ranges for CR
37    [13, 13]**/
38    const UnicodeSet cr_Set
39        {{{Mixed, 1}, {Empty, 34815}},
40         {0x00002000}};
41    /** Code Point Ranges for EX
42    [768, 879], [1155, 1161], [1425, 1469], [1471, 1471], [1473, 1474],
43    [1476, 1477], [1479, 1479], [1552, 1562], [1611, 1631], [1648, 1648],
44    [1750, 1756], [1759, 1764], [1767, 1768], [1770, 1773], [1809, 1809],
45    [1840, 1866], [1958, 1968], [2027, 2035], [2070, 2073], [2075, 2083],
46    [2085, 2087], [2089, 2093], [2137, 2139], [2275, 2306], [2362, 2362],
47    [2364, 2364], [2369, 2376], [2381, 2381], [2385, 2391], [2402, 2403],
48    [2433, 2433], [2492, 2492], [2494, 2494], [2497, 2500], [2509, 2509],
49    [2519, 2519], [2530, 2531], [2561, 2562], [2620, 2620], [2625, 2626],
50    [2631, 2632], [2635, 2637], [2641, 2641], [2672, 2673], [2677, 2677],
51    [2689, 2690], [2748, 2748], [2753, 2757], [2759, 2760], [2765, 2765],
52    [2786, 2787], [2817, 2817], [2876, 2876], [2878, 2879], [2881, 2884],
53    [2893, 2893], [2902, 2903], [2914, 2915], [2946, 2946], [3006, 3006],
54    [3008, 3008], [3021, 3021], [3031, 3031], [3072, 3072], [3134, 3136],
55    [3142, 3144], [3146, 3149], [3157, 3158], [3170, 3171], [3201, 3201],
56    [3260, 3260], [3263, 3263], [3266, 3266], [3270, 3270], [3276, 3277],
57    [3285, 3286], [3298, 3299], [3329, 3329], [3390, 3390], [3393, 3396],
58    [3405, 3405], [3415, 3415], [3426, 3427], [3530, 3530], [3535, 3535],
59    [3538, 3540], [3542, 3542], [3551, 3551], [3633, 3633], [3636, 3642],
60    [3655, 3662], [3761, 3761], [3764, 3769], [3771, 3772], [3784, 3789],
61    [3864, 3865], [3893, 3893], [3895, 3895], [3897, 3897], [3953, 3966],
62    [3968, 3972], [3974, 3975], [3981, 3991], [3993, 4028], [4038, 4038],
63    [4141, 4144], [4146, 4151], [4153, 4154], [4157, 4158], [4184, 4185],
64    [4190, 4192], [4209, 4212], [4226, 4226], [4229, 4230], [4237, 4237],
65    [4253, 4253], [4957, 4959], [5906, 5908], [5938, 5940], [5970, 5971],
66    [6002, 6003], [6068, 6069], [6071, 6077], [6086, 6086], [6089, 6099],
67    [6109, 6109], [6155, 6157], [6313, 6313], [6432, 6434], [6439, 6440],
68    [6450, 6450], [6457, 6459], [6679, 6680], [6683, 6683], [6742, 6742],
69    [6744, 6750], [6752, 6752], [6754, 6754], [6757, 6764], [6771, 6780],
70    [6783, 6783], [6832, 6846], [6912, 6915], [6964, 6964], [6966, 6970],
71    [6972, 6972], [6978, 6978], [7019, 7027], [7040, 7041], [7074, 7077],
72    [7080, 7081], [7083, 7085], [7142, 7142], [7144, 7145], [7149, 7149],
73    [7151, 7153], [7212, 7219], [7222, 7223], [7376, 7378], [7380, 7392],
74    [7394, 7400], [7405, 7405], [7412, 7412], [7416, 7417], [7616, 7669],
75    [7676, 7679], [8204, 8205], [8400, 8432], [11503, 11505],
76    [11647, 11647], [11744, 11775], [12330, 12335], [12441, 12442],
77    [42607, 42610], [42612, 42621], [42654, 42655], [42736, 42737],
78    [43010, 43010], [43014, 43014], [43019, 43019], [43045, 43046],
79    [43204, 43204], [43232, 43249], [43302, 43309], [43335, 43345],
80    [43392, 43394], [43443, 43443], [43446, 43449], [43452, 43452],
81    [43493, 43493], [43561, 43566], [43569, 43570], [43573, 43574],
82    [43587, 43587], [43596, 43596], [43644, 43644], [43696, 43696],
83    [43698, 43700], [43703, 43704], [43710, 43711], [43713, 43713],
84    [43756, 43757], [43766, 43766], [44005, 44005], [44008, 44008],
85    [44013, 44013], [64286, 64286], [65024, 65039], [65056, 65071],
86    [65438, 65439], [66045, 66045], [66272, 66272], [66422, 66426],
87    [68097, 68099], [68101, 68102], [68108, 68111], [68152, 68154],
88    [68159, 68159], [68325, 68326], [69633, 69633], [69688, 69702],
89    [69759, 69761], [69811, 69814], [69817, 69818], [69888, 69890],
90    [69927, 69931], [69933, 69940], [70003, 70003], [70016, 70017],
91    [70070, 70078], [70090, 70092], [70191, 70193], [70196, 70196],
92    [70198, 70199], [70367, 70367], [70371, 70378], [70400, 70401],
93    [70460, 70460], [70462, 70462], [70464, 70464], [70487, 70487],
94    [70502, 70508], [70512, 70516], [70832, 70832], [70835, 70840],
95    [70842, 70842], [70845, 70845], [70847, 70848], [70850, 70851],
96    [71087, 71087], [71090, 71093], [71100, 71101], [71103, 71104],
97    [71132, 71133], [71219, 71226], [71229, 71229], [71231, 71232],
98    [71339, 71339], [71341, 71341], [71344, 71349], [71351, 71351],
99    [71453, 71455], [71458, 71461], [71463, 71467], [92912, 92916],
100    [92976, 92982], [94095, 94098], [113821, 113822], [119141, 119141],
101    [119143, 119145], [119150, 119154], [119163, 119170], [119173, 119179],
102    [119210, 119213], [119362, 119364], [121344, 121398], [121403, 121452],
103    [121461, 121461], [121476, 121476], [121499, 121503], [121505, 121519],
104    [125136, 125142], [917760, 917999]**/
105    const UnicodeSet ex_Set
106        {{{Empty, 24}, {Full, 3}, {Mixed, 1}, {Empty, 8}, {Mixed, 1},
107          {Empty, 7}, {Mixed, 3}, {Empty, 1}, {Mixed, 1}, {Empty, 1},
108          {Mixed, 2}, {Empty, 2}, {Mixed, 5}, {Empty, 2}, {Mixed, 1},
109          {Empty, 1}, {Mixed, 4}, {Empty, 4}, {Mixed, 24}, {Empty, 1},
110          {Mixed, 12}, {Empty, 2}, {Mixed, 1}, {Empty, 2}, {Mixed, 2},
111          {Empty, 2}, {Mixed, 2}, {Empty, 1}, {Mixed, 2}, {Empty, 1},
112          {Mixed, 4}, {Empty, 2}, {Mixed, 4}, {Empty, 21}, {Mixed, 1},
113          {Empty, 29}, {Mixed, 4}, {Empty, 1}, {Mixed, 2}, {Empty, 1},
114          {Mixed, 1}, {Empty, 4}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
115          {Empty, 6}, {Mixed, 1}, {Empty, 1}, {Mixed, 2}, {Empty, 1},
116          {Mixed, 1}, {Empty, 2}, {Mixed, 6}, {Empty, 1}, {Mixed, 1},
117          {Empty, 1}, {Mixed, 1}, {Empty, 4}, {Mixed, 2}, {Empty, 6},
118          {Full, 1}, {Mixed, 1}, {Empty, 16}, {Mixed, 1}, {Empty, 5},
119          {Mixed, 2}, {Empty, 95}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
120          {Empty, 3}, {Full, 1}, {Empty, 17}, {Mixed, 1}, {Empty, 2},
121          {Mixed, 1}, {Empty, 942}, {Mixed, 2}, {Empty, 2}, {Mixed, 1},
122          {Empty, 8}, {Mixed, 2}, {Empty, 4}, {Mixed, 2}, {Empty, 1},
123          {Mixed, 2}, {Empty, 1}, {Mixed, 2}, {Empty, 1}, {Mixed, 1},
124          {Empty, 1}, {Mixed, 3}, {Empty, 1}, {Mixed, 3}, {Empty, 7},
125          {Mixed, 1}, {Empty, 632}, {Mixed, 1}, {Empty, 23}, {Mixed, 2},
126          {Empty, 10}, {Mixed, 1}, {Empty, 18}, {Mixed, 1}, {Empty, 7},
127          {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 52}, {Mixed, 2},
128          {Empty, 5}, {Mixed, 1}, {Empty, 40}, {Mixed, 6}, {Empty, 2},
129          {Mixed, 2}, {Empty, 1}, {Mixed, 4}, {Empty, 2}, {Mixed, 1},
130          {Empty, 4}, {Mixed, 6}, {Empty, 9}, {Mixed, 2}, {Empty, 6},
131          {Mixed, 2}, {Empty, 2}, {Mixed, 2}, {Empty, 2}, {Mixed, 1},
132          {Empty, 2}, {Mixed, 2}, {Empty, 669}, {Mixed, 1}, {Empty, 1},
133          {Mixed, 1}, {Empty, 34}, {Mixed, 1}, {Empty, 615}, {Mixed, 1},
134          {Empty, 166}, {Mixed, 3}, {Empty, 4}, {Mixed, 1}, {Empty, 61},
135          {Full, 1}, {Mixed, 1}, {Full, 1}, {Mixed, 3}, {Empty, 112},
136          {Mixed, 1}, {Empty, 24769}, {Full, 7}, {Mixed, 1}, {Empty, 6128}},
137         {0x0000ffff, 0x000003f8, 0xfffe0000, 0xbfffffff, 0x000000b6,
138          0x07ff0000, 0xfffff800, 0x00010000, 0x9fc00000, 0x00003d9f,
139          0x00020000, 0xffff0000, 0x000007ff, 0x0001ffc0, 0x000ff800,
140          0xfbc00000, 0x00003eef, 0x0e000000, 0xfffffff8, 0x00000007,
141          0x14000000, 0x00fe21fe, 0x0000000c, 0x00000002, 0x50000000,
142          0x0080201e, 0x0000000c, 0x00000006, 0x10000000, 0x00023986,
143          0x00230000, 0x00000006, 0x10000000, 0x000021be, 0x0000000c,
144          0x00000002, 0xd0000000, 0x00c0201e, 0x0000000c, 0x00000004,
145          0x40000000, 0x00802001, 0x00000001, 0xc0000000, 0x00603dc1,
146          0x0000000c, 0x00000002, 0x90000000, 0x00603044, 0x0000000c,
147          0x00000002, 0x40000000, 0x0080201e, 0x0000000c, 0x805c8400,
148          0x07f20000, 0x00007f80, 0x1bf20000, 0x00003f00, 0x03000000,
149          0x02a00000, 0x7ffe0000, 0xfeffe0df, 0x1fffffff, 0x00000040,
150          0x66fde000, 0xc3000000, 0x001e0001, 0x20002064, 0xe0000000,
151          0x001c0000, 0x001c0000, 0x000c0000, 0x000c0000, 0x3fb00000,
152          0x200ffe40, 0x00003800, 0x00000200, 0x0e040187, 0x09800000,
153          0x7f400000, 0x9ff81fe5, 0x7fff0000, 0x0000000f, 0x17d00000,
154          0x00000004, 0x000ff800, 0x00000003, 0x00003b3c, 0x0003a340,
155          0x00cff000, 0xfff70000, 0x031021fd, 0xf03fffff, 0x00003000,
156          0xffff0000, 0x0001ffff, 0x00038000, 0x80000000, 0x0000fc00,
157          0x06000000, 0x3ff78000, 0xc0000000, 0x00030000, 0x00000844,
158          0x00000060, 0x00000010, 0x0003ffff, 0x00003fc0, 0x0003ff80,
159          0x00000007, 0x13c80000, 0x00000020, 0x00667e00, 0x00001008,
160          0x10000000, 0xc19d0000, 0x00000002, 0x00403000, 0x00002120,
161          0x40000000, 0x0000ffff, 0x0000ffff, 0xc0000000, 0x20000000,
162          0x00000001, 0x07c00000, 0x0000f06e, 0x87000000, 0x00000060,
163          0x00000002, 0xff000000, 0x0000007f, 0x80000000, 0x00000003,
164          0x06780000, 0x00000007, 0x001fef80, 0x00080000, 0x00000003,
165          0x7fc00000, 0x00001c00, 0x00d38000, 0x80000000, 0x000007f8,
166          0x00000003, 0x50000000, 0x00800001, 0x001f1fc0, 0xa5f90000,
167          0x0000000d, 0xb03c8000, 0x30000001, 0xa7f80000, 0x00000001,
168          0x00bf2800, 0xe0000000, 0x00000fbc, 0x001f0000, 0x007f0000,
169          0x00078000, 0x60000000, 0xf807c3a0, 0x00000fe7, 0x00003c00,
170          0x0000001c, 0xf87fffff, 0x00201fff, 0xf8000010, 0x0000fffe,
171          0x007f0000, 0x0000ffff}};
172    /** Code Point Ranges for L
173    [4352, 4447], [43360, 43388]**/
174    const UnicodeSet l_Set
175        {{{Empty, 136}, {Full, 3}, {Empty, 1216}, {Mixed, 1},
176          {Empty, 33460}},
177         {0x1fffffff}};
178    /** Code Point Ranges for LF
179    [10, 10]**/
180    const UnicodeSet lf_Set
181        {{{Mixed, 1}, {Empty, 34815}},
182         {0x00000400}};
183    /** Code Point Ranges for LV
184    [44032, 44032], [44060, 44060], [44088, 44088], [44116, 44116],
185    [44144, 44144], [44172, 44172], [44200, 44200], [44228, 44228],
186    [44256, 44256], [44284, 44284], [44312, 44312], [44340, 44340],
187    [44368, 44368], [44396, 44396], [44424, 44424], [44452, 44452],
188    [44480, 44480], [44508, 44508], [44536, 44536], [44564, 44564],
189    [44592, 44592], [44620, 44620], [44648, 44648], [44676, 44676],
190    [44704, 44704], [44732, 44732], [44760, 44760], [44788, 44788],
191    [44816, 44816], [44844, 44844], [44872, 44872], [44900, 44900],
192    [44928, 44928], [44956, 44956], [44984, 44984], [45012, 45012],
193    [45040, 45040], [45068, 45068], [45096, 45096], [45124, 45124],
194    [45152, 45152], [45180, 45180], [45208, 45208], [45236, 45236],
195    [45264, 45264], [45292, 45292], [45320, 45320], [45348, 45348],
196    [45376, 45376], [45404, 45404], [45432, 45432], [45460, 45460],
197    [45488, 45488], [45516, 45516], [45544, 45544], [45572, 45572],
198    [45600, 45600], [45628, 45628], [45656, 45656], [45684, 45684],
199    [45712, 45712], [45740, 45740], [45768, 45768], [45796, 45796],
200    [45824, 45824], [45852, 45852], [45880, 45880], [45908, 45908],
201    [45936, 45936], [45964, 45964], [45992, 45992], [46020, 46020],
202    [46048, 46048], [46076, 46076], [46104, 46104], [46132, 46132],
203    [46160, 46160], [46188, 46188], [46216, 46216], [46244, 46244],
204    [46272, 46272], [46300, 46300], [46328, 46328], [46356, 46356],
205    [46384, 46384], [46412, 46412], [46440, 46440], [46468, 46468],
206    [46496, 46496], [46524, 46524], [46552, 46552], [46580, 46580],
207    [46608, 46608], [46636, 46636], [46664, 46664], [46692, 46692],
208    [46720, 46720], [46748, 46748], [46776, 46776], [46804, 46804],
209    [46832, 46832], [46860, 46860], [46888, 46888], [46916, 46916],
210    [46944, 46944], [46972, 46972], [47000, 47000], [47028, 47028],
211    [47056, 47056], [47084, 47084], [47112, 47112], [47140, 47140],
212    [47168, 47168], [47196, 47196], [47224, 47224], [47252, 47252],
213    [47280, 47280], [47308, 47308], [47336, 47336], [47364, 47364],
214    [47392, 47392], [47420, 47420], [47448, 47448], [47476, 47476],
215    [47504, 47504], [47532, 47532], [47560, 47560], [47588, 47588],
216    [47616, 47616], [47644, 47644], [47672, 47672], [47700, 47700],
217    [47728, 47728], [47756, 47756], [47784, 47784], [47812, 47812],
218    [47840, 47840], [47868, 47868], [47896, 47896], [47924, 47924],
219    [47952, 47952], [47980, 47980], [48008, 48008], [48036, 48036],
220    [48064, 48064], [48092, 48092], [48120, 48120], [48148, 48148],
221    [48176, 48176], [48204, 48204], [48232, 48232], [48260, 48260],
222    [48288, 48288], [48316, 48316], [48344, 48344], [48372, 48372],
223    [48400, 48400], [48428, 48428], [48456, 48456], [48484, 48484],
224    [48512, 48512], [48540, 48540], [48568, 48568], [48596, 48596],
225    [48624, 48624], [48652, 48652], [48680, 48680], [48708, 48708],
226    [48736, 48736], [48764, 48764], [48792, 48792], [48820, 48820],
227    [48848, 48848], [48876, 48876], [48904, 48904], [48932, 48932],
228    [48960, 48960], [48988, 48988], [49016, 49016], [49044, 49044],
229    [49072, 49072], [49100, 49100], [49128, 49128], [49156, 49156],
230    [49184, 49184], [49212, 49212], [49240, 49240], [49268, 49268],
231    [49296, 49296], [49324, 49324], [49352, 49352], [49380, 49380],
232    [49408, 49408], [49436, 49436], [49464, 49464], [49492, 49492],
233    [49520, 49520], [49548, 49548], [49576, 49576], [49604, 49604],
234    [49632, 49632], [49660, 49660], [49688, 49688], [49716, 49716],
235    [49744, 49744], [49772, 49772], [49800, 49800], [49828, 49828],
236    [49856, 49856], [49884, 49884], [49912, 49912], [49940, 49940],
237    [49968, 49968], [49996, 49996], [50024, 50024], [50052, 50052],
238    [50080, 50080], [50108, 50108], [50136, 50136], [50164, 50164],
239    [50192, 50192], [50220, 50220], [50248, 50248], [50276, 50276],
240    [50304, 50304], [50332, 50332], [50360, 50360], [50388, 50388],
241    [50416, 50416], [50444, 50444], [50472, 50472], [50500, 50500],
242    [50528, 50528], [50556, 50556], [50584, 50584], [50612, 50612],
243    [50640, 50640], [50668, 50668], [50696, 50696], [50724, 50724],
244    [50752, 50752], [50780, 50780], [50808, 50808], [50836, 50836],
245    [50864, 50864], [50892, 50892], [50920, 50920], [50948, 50948],
246    [50976, 50976], [51004, 51004], [51032, 51032], [51060, 51060],
247    [51088, 51088], [51116, 51116], [51144, 51144], [51172, 51172],
248    [51200, 51200], [51228, 51228], [51256, 51256], [51284, 51284],
249    [51312, 51312], [51340, 51340], [51368, 51368], [51396, 51396],
250    [51424, 51424], [51452, 51452], [51480, 51480], [51508, 51508],
251    [51536, 51536], [51564, 51564], [51592, 51592], [51620, 51620],
252    [51648, 51648], [51676, 51676], [51704, 51704], [51732, 51732],
253    [51760, 51760], [51788, 51788], [51816, 51816], [51844, 51844],
254    [51872, 51872], [51900, 51900], [51928, 51928], [51956, 51956],
255    [51984, 51984], [52012, 52012], [52040, 52040], [52068, 52068],
256    [52096, 52096], [52124, 52124], [52152, 52152], [52180, 52180],
257    [52208, 52208], [52236, 52236], [52264, 52264], [52292, 52292],
258    [52320, 52320], [52348, 52348], [52376, 52376], [52404, 52404],
259    [52432, 52432], [52460, 52460], [52488, 52488], [52516, 52516],
260    [52544, 52544], [52572, 52572], [52600, 52600], [52628, 52628],
261    [52656, 52656], [52684, 52684], [52712, 52712], [52740, 52740],
262    [52768, 52768], [52796, 52796], [52824, 52824], [52852, 52852],
263    [52880, 52880], [52908, 52908], [52936, 52936], [52964, 52964],
264    [52992, 52992], [53020, 53020], [53048, 53048], [53076, 53076],
265    [53104, 53104], [53132, 53132], [53160, 53160], [53188, 53188],
266    [53216, 53216], [53244, 53244], [53272, 53272], [53300, 53300],
267    [53328, 53328], [53356, 53356], [53384, 53384], [53412, 53412],
268    [53440, 53440], [53468, 53468], [53496, 53496], [53524, 53524],
269    [53552, 53552], [53580, 53580], [53608, 53608], [53636, 53636],
270    [53664, 53664], [53692, 53692], [53720, 53720], [53748, 53748],
271    [53776, 53776], [53804, 53804], [53832, 53832], [53860, 53860],
272    [53888, 53888], [53916, 53916], [53944, 53944], [53972, 53972],
273    [54000, 54000], [54028, 54028], [54056, 54056], [54084, 54084],
274    [54112, 54112], [54140, 54140], [54168, 54168], [54196, 54196],
275    [54224, 54224], [54252, 54252], [54280, 54280], [54308, 54308],
276    [54336, 54336], [54364, 54364], [54392, 54392], [54420, 54420],
277    [54448, 54448], [54476, 54476], [54504, 54504], [54532, 54532],
278    [54560, 54560], [54588, 54588], [54616, 54616], [54644, 54644],
279    [54672, 54672], [54700, 54700], [54728, 54728], [54756, 54756],
280    [54784, 54784], [54812, 54812], [54840, 54840], [54868, 54868],
281    [54896, 54896], [54924, 54924], [54952, 54952], [54980, 54980],
282    [55008, 55008], [55036, 55036], [55064, 55064], [55092, 55092],
283    [55120, 55120], [55148, 55148], [55176, 55176]**/
284    const UnicodeSet lv_Set
285        {{{Empty, 1376}, {Mixed, 349}, {Empty, 33091}},
286         {0x10000001, 0x01000000, 0x00100000, 0x00010000, 0x00001000,
287          0x00000100, 0x00000010, 0x10000001, 0x01000000, 0x00100000,
288          0x00010000, 0x00001000, 0x00000100, 0x00000010, 0x10000001,
289          0x01000000, 0x00100000, 0x00010000, 0x00001000, 0x00000100,
290          0x00000010, 0x10000001, 0x01000000, 0x00100000, 0x00010000,
291          0x00001000, 0x00000100, 0x00000010, 0x10000001, 0x01000000,
292          0x00100000, 0x00010000, 0x00001000, 0x00000100, 0x00000010,
293          0x10000001, 0x01000000, 0x00100000, 0x00010000, 0x00001000,
294          0x00000100, 0x00000010, 0x10000001, 0x01000000, 0x00100000,
295          0x00010000, 0x00001000, 0x00000100, 0x00000010, 0x10000001,
296          0x01000000, 0x00100000, 0x00010000, 0x00001000, 0x00000100,
297          0x00000010, 0x10000001, 0x01000000, 0x00100000, 0x00010000,
298          0x00001000, 0x00000100, 0x00000010, 0x10000001, 0x01000000,
299          0x00100000, 0x00010000, 0x00001000, 0x00000100, 0x00000010,
300          0x10000001, 0x01000000, 0x00100000, 0x00010000, 0x00001000,
301          0x00000100, 0x00000010, 0x10000001, 0x01000000, 0x00100000,
302          0x00010000, 0x00001000, 0x00000100, 0x00000010, 0x10000001,
303          0x01000000, 0x00100000, 0x00010000, 0x00001000, 0x00000100,
304          0x00000010, 0x10000001, 0x01000000, 0x00100000, 0x00010000,
305          0x00001000, 0x00000100, 0x00000010, 0x10000001, 0x01000000,
306          0x00100000, 0x00010000, 0x00001000, 0x00000100, 0x00000010,
307          0x10000001, 0x01000000, 0x00100000, 0x00010000, 0x00001000,
308          0x00000100, 0x00000010, 0x10000001, 0x01000000, 0x00100000,
309          0x00010000, 0x00001000, 0x00000100, 0x00000010, 0x10000001,
310          0x01000000, 0x00100000, 0x00010000, 0x00001000, 0x00000100,
311          0x00000010, 0x10000001, 0x01000000, 0x00100000, 0x00010000,
312          0x00001000, 0x00000100, 0x00000010, 0x10000001, 0x01000000,
313          0x00100000, 0x00010000, 0x00001000, 0x00000100, 0x00000010,
314          0x10000001, 0x01000000, 0x00100000, 0x00010000, 0x00001000,
315          0x00000100, 0x00000010, 0x10000001, 0x01000000, 0x00100000,
316          0x00010000, 0x00001000, 0x00000100, 0x00000010, 0x10000001,
317          0x01000000, 0x00100000, 0x00010000, 0x00001000, 0x00000100,
318          0x00000010, 0x10000001, 0x01000000, 0x00100000, 0x00010000,
319          0x00001000, 0x00000100, 0x00000010, 0x10000001, 0x01000000,
320          0x00100000, 0x00010000, 0x00001000, 0x00000100, 0x00000010,
321          0x10000001, 0x01000000, 0x00100000, 0x00010000, 0x00001000,
322          0x00000100, 0x00000010, 0x10000001, 0x01000000, 0x00100000,
323          0x00010000, 0x00001000, 0x00000100, 0x00000010, 0x10000001,
324          0x01000000, 0x00100000, 0x00010000, 0x00001000, 0x00000100,
325          0x00000010, 0x10000001, 0x01000000, 0x00100000, 0x00010000,
326          0x00001000, 0x00000100, 0x00000010, 0x10000001, 0x01000000,
327          0x00100000, 0x00010000, 0x00001000, 0x00000100, 0x00000010,
328          0x10000001, 0x01000000, 0x00100000, 0x00010000, 0x00001000,
329          0x00000100, 0x00000010, 0x10000001, 0x01000000, 0x00100000,
330          0x00010000, 0x00001000, 0x00000100, 0x00000010, 0x10000001,
331          0x01000000, 0x00100000, 0x00010000, 0x00001000, 0x00000100,
332          0x00000010, 0x10000001, 0x01000000, 0x00100000, 0x00010000,
333          0x00001000, 0x00000100, 0x00000010, 0x10000001, 0x01000000,
334          0x00100000, 0x00010000, 0x00001000, 0x00000100, 0x00000010,
335          0x10000001, 0x01000000, 0x00100000, 0x00010000, 0x00001000,
336          0x00000100, 0x00000010, 0x10000001, 0x01000000, 0x00100000,
337          0x00010000, 0x00001000, 0x00000100, 0x00000010, 0x10000001,
338          0x01000000, 0x00100000, 0x00010000, 0x00001000, 0x00000100,
339          0x00000010, 0x10000001, 0x01000000, 0x00100000, 0x00010000,
340          0x00001000, 0x00000100, 0x00000010, 0x10000001, 0x01000000,
341          0x00100000, 0x00010000, 0x00001000, 0x00000100, 0x00000010,
342          0x10000001, 0x01000000, 0x00100000, 0x00010000, 0x00001000,
343          0x00000100, 0x00000010, 0x10000001, 0x01000000, 0x00100000,
344          0x00010000, 0x00001000, 0x00000100, 0x00000010, 0x10000001,
345          0x01000000, 0x00100000, 0x00010000, 0x00001000, 0x00000100,
346          0x00000010, 0x10000001, 0x01000000, 0x00100000, 0x00010000,
347          0x00001000, 0x00000100, 0x00000010, 0x10000001, 0x01000000,
348          0x00100000, 0x00010000, 0x00001000, 0x00000100, 0x00000010,
349          0x10000001, 0x01000000, 0x00100000, 0x00010000, 0x00001000,
350          0x00000100, 0x00000010, 0x10000001, 0x01000000, 0x00100000,
351          0x00010000, 0x00001000, 0x00000100, 0x00000010, 0x10000001,
352          0x01000000, 0x00100000, 0x00010000, 0x00001000, 0x00000100,
353          0x00000010, 0x10000001, 0x01000000, 0x00100000, 0x00010000,
354          0x00001000, 0x00000100, 0x00000010, 0x10000001, 0x01000000,
355          0x00100000, 0x00010000, 0x00001000, 0x00000100}};
356    /** Code Point Ranges for LVT
357    [44033, 44059], [44061, 44087], [44089, 44115], [44117, 44143],
358    [44145, 44171], [44173, 44199], [44201, 44227], [44229, 44255],
359    [44257, 44283], [44285, 44311], [44313, 44339], [44341, 44367],
360    [44369, 44395], [44397, 44423], [44425, 44451], [44453, 44479],
361    [44481, 44507], [44509, 44535], [44537, 44563], [44565, 44591],
362    [44593, 44619], [44621, 44647], [44649, 44675], [44677, 44703],
363    [44705, 44731], [44733, 44759], [44761, 44787], [44789, 44815],
364    [44817, 44843], [44845, 44871], [44873, 44899], [44901, 44927],
365    [44929, 44955], [44957, 44983], [44985, 45011], [45013, 45039],
366    [45041, 45067], [45069, 45095], [45097, 45123], [45125, 45151],
367    [45153, 45179], [45181, 45207], [45209, 45235], [45237, 45263],
368    [45265, 45291], [45293, 45319], [45321, 45347], [45349, 45375],
369    [45377, 45403], [45405, 45431], [45433, 45459], [45461, 45487],
370    [45489, 45515], [45517, 45543], [45545, 45571], [45573, 45599],
371    [45601, 45627], [45629, 45655], [45657, 45683], [45685, 45711],
372    [45713, 45739], [45741, 45767], [45769, 45795], [45797, 45823],
373    [45825, 45851], [45853, 45879], [45881, 45907], [45909, 45935],
374    [45937, 45963], [45965, 45991], [45993, 46019], [46021, 46047],
375    [46049, 46075], [46077, 46103], [46105, 46131], [46133, 46159],
376    [46161, 46187], [46189, 46215], [46217, 46243], [46245, 46271],
377    [46273, 46299], [46301, 46327], [46329, 46355], [46357, 46383],
378    [46385, 46411], [46413, 46439], [46441, 46467], [46469, 46495],
379    [46497, 46523], [46525, 46551], [46553, 46579], [46581, 46607],
380    [46609, 46635], [46637, 46663], [46665, 46691], [46693, 46719],
381    [46721, 46747], [46749, 46775], [46777, 46803], [46805, 46831],
382    [46833, 46859], [46861, 46887], [46889, 46915], [46917, 46943],
383    [46945, 46971], [46973, 46999], [47001, 47027], [47029, 47055],
384    [47057, 47083], [47085, 47111], [47113, 47139], [47141, 47167],
385    [47169, 47195], [47197, 47223], [47225, 47251], [47253, 47279],
386    [47281, 47307], [47309, 47335], [47337, 47363], [47365, 47391],
387    [47393, 47419], [47421, 47447], [47449, 47475], [47477, 47503],
388    [47505, 47531], [47533, 47559], [47561, 47587], [47589, 47615],
389    [47617, 47643], [47645, 47671], [47673, 47699], [47701, 47727],
390    [47729, 47755], [47757, 47783], [47785, 47811], [47813, 47839],
391    [47841, 47867], [47869, 47895], [47897, 47923], [47925, 47951],
392    [47953, 47979], [47981, 48007], [48009, 48035], [48037, 48063],
393    [48065, 48091], [48093, 48119], [48121, 48147], [48149, 48175],
394    [48177, 48203], [48205, 48231], [48233, 48259], [48261, 48287],
395    [48289, 48315], [48317, 48343], [48345, 48371], [48373, 48399],
396    [48401, 48427], [48429, 48455], [48457, 48483], [48485, 48511],
397    [48513, 48539], [48541, 48567], [48569, 48595], [48597, 48623],
398    [48625, 48651], [48653, 48679], [48681, 48707], [48709, 48735],
399    [48737, 48763], [48765, 48791], [48793, 48819], [48821, 48847],
400    [48849, 48875], [48877, 48903], [48905, 48931], [48933, 48959],
401    [48961, 48987], [48989, 49015], [49017, 49043], [49045, 49071],
402    [49073, 49099], [49101, 49127], [49129, 49155], [49157, 49183],
403    [49185, 49211], [49213, 49239], [49241, 49267], [49269, 49295],
404    [49297, 49323], [49325, 49351], [49353, 49379], [49381, 49407],
405    [49409, 49435], [49437, 49463], [49465, 49491], [49493, 49519],
406    [49521, 49547], [49549, 49575], [49577, 49603], [49605, 49631],
407    [49633, 49659], [49661, 49687], [49689, 49715], [49717, 49743],
408    [49745, 49771], [49773, 49799], [49801, 49827], [49829, 49855],
409    [49857, 49883], [49885, 49911], [49913, 49939], [49941, 49967],
410    [49969, 49995], [49997, 50023], [50025, 50051], [50053, 50079],
411    [50081, 50107], [50109, 50135], [50137, 50163], [50165, 50191],
412    [50193, 50219], [50221, 50247], [50249, 50275], [50277, 50303],
413    [50305, 50331], [50333, 50359], [50361, 50387], [50389, 50415],
414    [50417, 50443], [50445, 50471], [50473, 50499], [50501, 50527],
415    [50529, 50555], [50557, 50583], [50585, 50611], [50613, 50639],
416    [50641, 50667], [50669, 50695], [50697, 50723], [50725, 50751],
417    [50753, 50779], [50781, 50807], [50809, 50835], [50837, 50863],
418    [50865, 50891], [50893, 50919], [50921, 50947], [50949, 50975],
419    [50977, 51003], [51005, 51031], [51033, 51059], [51061, 51087],
420    [51089, 51115], [51117, 51143], [51145, 51171], [51173, 51199],
421    [51201, 51227], [51229, 51255], [51257, 51283], [51285, 51311],
422    [51313, 51339], [51341, 51367], [51369, 51395], [51397, 51423],
423    [51425, 51451], [51453, 51479], [51481, 51507], [51509, 51535],
424    [51537, 51563], [51565, 51591], [51593, 51619], [51621, 51647],
425    [51649, 51675], [51677, 51703], [51705, 51731], [51733, 51759],
426    [51761, 51787], [51789, 51815], [51817, 51843], [51845, 51871],
427    [51873, 51899], [51901, 51927], [51929, 51955], [51957, 51983],
428    [51985, 52011], [52013, 52039], [52041, 52067], [52069, 52095],
429    [52097, 52123], [52125, 52151], [52153, 52179], [52181, 52207],
430    [52209, 52235], [52237, 52263], [52265, 52291], [52293, 52319],
431    [52321, 52347], [52349, 52375], [52377, 52403], [52405, 52431],
432    [52433, 52459], [52461, 52487], [52489, 52515], [52517, 52543],
433    [52545, 52571], [52573, 52599], [52601, 52627], [52629, 52655],
434    [52657, 52683], [52685, 52711], [52713, 52739], [52741, 52767],
435    [52769, 52795], [52797, 52823], [52825, 52851], [52853, 52879],
436    [52881, 52907], [52909, 52935], [52937, 52963], [52965, 52991],
437    [52993, 53019], [53021, 53047], [53049, 53075], [53077, 53103],
438    [53105, 53131], [53133, 53159], [53161, 53187], [53189, 53215],
439    [53217, 53243], [53245, 53271], [53273, 53299], [53301, 53327],
440    [53329, 53355], [53357, 53383], [53385, 53411], [53413, 53439],
441    [53441, 53467], [53469, 53495], [53497, 53523], [53525, 53551],
442    [53553, 53579], [53581, 53607], [53609, 53635], [53637, 53663],
443    [53665, 53691], [53693, 53719], [53721, 53747], [53749, 53775],
444    [53777, 53803], [53805, 53831], [53833, 53859], [53861, 53887],
445    [53889, 53915], [53917, 53943], [53945, 53971], [53973, 53999],
446    [54001, 54027], [54029, 54055], [54057, 54083], [54085, 54111],
447    [54113, 54139], [54141, 54167], [54169, 54195], [54197, 54223],
448    [54225, 54251], [54253, 54279], [54281, 54307], [54309, 54335],
449    [54337, 54363], [54365, 54391], [54393, 54419], [54421, 54447],
450    [54449, 54475], [54477, 54503], [54505, 54531], [54533, 54559],
451    [54561, 54587], [54589, 54615], [54617, 54643], [54645, 54671],
452    [54673, 54699], [54701, 54727], [54729, 54755], [54757, 54783],
453    [54785, 54811], [54813, 54839], [54841, 54867], [54869, 54895],
454    [54897, 54923], [54925, 54951], [54953, 54979], [54981, 55007],
455    [55009, 55035], [55037, 55063], [55065, 55091], [55093, 55119],
456    [55121, 55147], [55149, 55175], [55177, 55203]**/
457    const UnicodeSet lvt_Set
458        {{{Empty, 1376}, {Mixed, 350}, {Empty, 33090}},
459         {0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff,
460          0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff,
461          0xfffeffff, 0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe,
462          0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff,
463          0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff,
464          0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff,
465          0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff, 0xffffffef,
466          0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff,
467          0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff,
468          0xfffeffff, 0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe,
469          0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff,
470          0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff,
471          0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff,
472          0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff, 0xffffffef,
473          0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff,
474          0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff,
475          0xfffeffff, 0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe,
476          0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff,
477          0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff,
478          0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff,
479          0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff, 0xffffffef,
480          0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff,
481          0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff,
482          0xfffeffff, 0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe,
483          0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff,
484          0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff,
485          0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff,
486          0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff, 0xffffffef,
487          0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff,
488          0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff,
489          0xfffeffff, 0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe,
490          0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff,
491          0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff,
492          0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff,
493          0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff, 0xffffffef,
494          0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff,
495          0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff,
496          0xfffeffff, 0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe,
497          0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff,
498          0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff,
499          0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff,
500          0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff, 0xffffffef,
501          0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff,
502          0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff,
503          0xfffeffff, 0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe,
504          0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff,
505          0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff,
506          0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff,
507          0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff, 0xffffffef,
508          0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff,
509          0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff,
510          0xfffeffff, 0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe,
511          0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff,
512          0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff,
513          0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff,
514          0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff, 0xffffffef,
515          0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff,
516          0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff,
517          0xfffeffff, 0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe,
518          0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff,
519          0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff,
520          0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff,
521          0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff, 0xffffffef,
522          0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff,
523          0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff,
524          0xfffeffff, 0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe,
525          0xfeffffff, 0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff,
526          0xffffffef, 0xeffffffe, 0xfeffffff, 0xffefffff, 0xfffeffff,
527          0xffffefff, 0xfffffeff, 0xffffffef, 0xeffffffe, 0xfeffffff,
528          0xffefffff, 0xfffeffff, 0xffffefff, 0xfffffeff, 0x0000000f}};
529    /** Code Point Ranges for PP
530    **/
531    const UnicodeSet pp_Set
532        {{{Empty, 34816}},
533         {}};
534    /** Code Point Ranges for RI
535    [127462, 127487]**/
536    const UnicodeSet ri_Set
537        {{{Empty, 3983}, {Mixed, 1}, {Empty, 30832}},
538         {0xffffffc0}};
539    /** Code Point Ranges for SM
540    [2307, 2307], [2363, 2363], [2366, 2368], [2377, 2380], [2382, 2383],
541    [2434, 2435], [2495, 2496], [2503, 2504], [2507, 2508], [2563, 2563],
542    [2622, 2624], [2691, 2691], [2750, 2752], [2761, 2761], [2763, 2764],
543    [2818, 2819], [2880, 2880], [2887, 2888], [2891, 2892], [3007, 3007],
544    [3009, 3010], [3014, 3016], [3018, 3020], [3073, 3075], [3137, 3140],
545    [3202, 3203], [3262, 3262], [3264, 3265], [3267, 3268], [3271, 3272],
546    [3274, 3275], [3330, 3331], [3391, 3392], [3398, 3400], [3402, 3404],
547    [3458, 3459], [3536, 3537], [3544, 3550], [3570, 3571], [3635, 3635],
548    [3763, 3763], [3902, 3903], [3967, 3967], [4145, 4145], [4155, 4156],
549    [4182, 4183], [4228, 4228], [6070, 6070], [6078, 6085], [6087, 6088],
550    [6435, 6438], [6441, 6443], [6448, 6449], [6451, 6456], [6681, 6682],
551    [6741, 6741], [6743, 6743], [6765, 6770], [6916, 6916], [6965, 6965],
552    [6971, 6971], [6973, 6977], [6979, 6980], [7042, 7042], [7073, 7073],
553    [7078, 7079], [7082, 7082], [7143, 7143], [7146, 7148], [7150, 7150],
554    [7154, 7155], [7204, 7211], [7220, 7221], [7393, 7393], [7410, 7411],
555    [43043, 43044], [43047, 43047], [43136, 43137], [43188, 43203],
556    [43346, 43347], [43395, 43395], [43444, 43445], [43450, 43451],
557    [43453, 43456], [43567, 43568], [43571, 43572], [43597, 43597],
558    [43755, 43755], [43758, 43759], [43765, 43765], [44003, 44004],
559    [44006, 44007], [44009, 44010], [44012, 44012], [69632, 69632],
560    [69634, 69634], [69762, 69762], [69808, 69810], [69815, 69816],
561    [69932, 69932], [70018, 70018], [70067, 70069], [70079, 70080],
562    [70188, 70190], [70194, 70195], [70197, 70197], [70368, 70370],
563    [70402, 70403], [70463, 70463], [70465, 70468], [70471, 70472],
564    [70475, 70477], [70498, 70499], [70833, 70834], [70841, 70841],
565    [70843, 70844], [70846, 70846], [70849, 70849], [71088, 71089],
566    [71096, 71099], [71102, 71102], [71216, 71218], [71227, 71228],
567    [71230, 71230], [71340, 71340], [71342, 71343], [71350, 71350],
568    [71456, 71457], [71462, 71462], [94033, 94078], [119142, 119142],
569    [119149, 119149]**/
570    const UnicodeSet sm_Set
571        {{{Empty, 72}, {Mixed, 3}, {Empty, 1}, {Mixed, 3}, {Empty, 1},
572          {Mixed, 3}, {Empty, 1}, {Mixed, 3}, {Empty, 1}, {Mixed, 1},
573          {Empty, 1}, {Mixed, 1}, {Empty, 2}, {Mixed, 2}, {Empty, 1},
574          {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 1}, {Mixed, 3},
575          {Empty, 1}, {Mixed, 3}, {Empty, 1}, {Mixed, 1}, {Empty, 1},
576          {Mixed, 2}, {Empty, 1}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
577          {Empty, 3}, {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 5},
578          {Mixed, 2}, {Empty, 1}, {Mixed, 1}, {Empty, 56}, {Mixed, 2},
579          {Empty, 10}, {Mixed, 1}, {Empty, 6}, {Mixed, 1}, {Empty, 1},
580          {Mixed, 2}, {Empty, 4}, {Mixed, 3}, {Empty, 1}, {Mixed, 2},
581          {Empty, 1}, {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 5},
582          {Mixed, 1}, {Empty, 1113}, {Mixed, 1}, {Empty, 2}, {Mixed, 3},
583          {Empty, 3}, {Mixed, 1}, {Empty, 1}, {Mixed, 3}, {Empty, 2},
584          {Mixed, 2}, {Empty, 4}, {Mixed, 1}, {Empty, 7}, {Mixed, 1},
585          {Empty, 800}, {Mixed, 1}, {Empty, 3}, {Mixed, 2}, {Empty, 3},
586          {Mixed, 1}, {Empty, 2}, {Mixed, 3}, {Empty, 2}, {Mixed, 1},
587          {Empty, 5}, {Mixed, 5}, {Empty, 9}, {Mixed, 2}, {Empty, 6},
588          {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
589          {Empty, 3}, {Mixed, 1}, {Empty, 704}, {Mixed, 2}, {Empty, 783},
590          {Mixed, 1}, {Empty, 31092}},
591         {0x00000008, 0xc8000000, 0x0000de01, 0x0000000c, 0x80000000,
592          0x00001981, 0x00000008, 0xc0000000, 0x00000001, 0x00000008,
593          0xc0000000, 0x00001a01, 0x0000000c, 0x00001981, 0x80000000,
594          0x00001dc6, 0x0000000e, 0x0000001e, 0x0000000c, 0x40000000,
595          0x00000d9b, 0x0000000c, 0x80000000, 0x00001dc1, 0x0000000c,
596          0x7f030000, 0x000c0000, 0x00080000, 0x00080000, 0xc0000000,
597          0x80000000, 0x18020000, 0x00c00000, 0x00000010, 0xc0400000,
598          0x000001bf, 0x01fb0e78, 0x06000000, 0x00a00000, 0x0007e000,
599          0x00000010, 0xe8200000, 0x0000001b, 0x00000004, 0x000004c2,
600          0x000c5c80, 0x00300ff0, 0x000c0002, 0x00000098, 0x00000003,
601          0xfff00000, 0x0000000f, 0x000c0000, 0x00000008, 0xec300000,
602          0x00000001, 0x00198000, 0x00002000, 0x0020c800, 0x000016d8,
603          0x00000005, 0x00000004, 0x01870000, 0x00001000, 0x00000004,
604          0x80380000, 0x00000001, 0x002c7000, 0x00000007, 0x0000000c,
605          0x80000000, 0x0000399e, 0x0000000c, 0x5a060000, 0x00000002,
606          0x4f030000, 0x58070000, 0x0040d000, 0x00000043, 0xfffe0000,
607          0x7fffffff, 0x00002040}};
608    /** Code Point Ranges for T
609    [4520, 4607], [55243, 55291]**/
610    const UnicodeSet t_Set
611        {{{Empty, 141}, {Mixed, 1}, {Full, 2}, {Empty, 1582}, {Mixed, 2},
612          {Empty, 33088}},
613         {0xffffff00, 0xfffff800, 0x0fffffff}};
614    /** Code Point Ranges for V
615    [4448, 4519], [55216, 55238]**/
616    const UnicodeSet v_Set
617        {{{Empty, 139}, {Full, 2}, {Mixed, 1}, {Empty, 1583}, {Mixed, 2},
618          {Empty, 33089}},
619         {0x000000ff, 0xffff0000, 0x0000007f}};
620    /** Code Point Ranges for XX
621    [32, 126], [160, 172], [174, 767], [880, 1154], [1162, 1424],
622    [1470, 1470], [1472, 1472], [1475, 1475], [1478, 1478], [1480, 1535],
623    [1542, 1551], [1563, 1563], [1565, 1610], [1632, 1647], [1649, 1749],
624    [1758, 1758], [1765, 1766], [1769, 1769], [1774, 1806], [1808, 1808],
625    [1810, 1839], [1867, 1957], [1969, 2026], [2036, 2069], [2074, 2074],
626    [2084, 2084], [2088, 2088], [2094, 2136], [2140, 2274], [2308, 2361],
627    [2365, 2365], [2384, 2384], [2392, 2401], [2404, 2432], [2436, 2491],
628    [2493, 2493], [2501, 2502], [2505, 2506], [2510, 2518], [2520, 2529],
629    [2532, 2560], [2564, 2619], [2621, 2621], [2627, 2630], [2633, 2634],
630    [2638, 2640], [2642, 2671], [2674, 2676], [2678, 2688], [2692, 2747],
631    [2749, 2749], [2758, 2758], [2762, 2762], [2766, 2785], [2788, 2816],
632    [2820, 2875], [2877, 2877], [2885, 2886], [2889, 2890], [2894, 2901],
633    [2904, 2913], [2916, 2945], [2947, 3005], [3011, 3013], [3017, 3017],
634    [3022, 3030], [3032, 3071], [3076, 3133], [3141, 3141], [3145, 3145],
635    [3150, 3156], [3159, 3169], [3172, 3200], [3204, 3259], [3261, 3261],
636    [3269, 3269], [3273, 3273], [3278, 3284], [3287, 3297], [3300, 3328],
637    [3332, 3389], [3397, 3397], [3401, 3401], [3406, 3414], [3416, 3425],
638    [3428, 3457], [3460, 3529], [3531, 3534], [3541, 3541], [3543, 3543],
639    [3552, 3569], [3572, 3632], [3634, 3634], [3643, 3654], [3663, 3760],
640    [3762, 3762], [3770, 3770], [3773, 3783], [3790, 3863], [3866, 3892],
641    [3894, 3894], [3896, 3896], [3898, 3901], [3904, 3952], [3973, 3973],
642    [3976, 3980], [3992, 3992], [4029, 4037], [4039, 4140], [4152, 4152],
643    [4159, 4181], [4186, 4189], [4193, 4208], [4213, 4225], [4227, 4227],
644    [4231, 4236], [4238, 4252], [4254, 4351], [4608, 4956], [4960, 5905],
645    [5909, 5937], [5941, 5969], [5972, 6001], [6004, 6067], [6100, 6108],
646    [6110, 6154], [6159, 6312], [6314, 6431], [6444, 6447], [6460, 6678],
647    [6684, 6740], [6751, 6751], [6753, 6753], [6755, 6756], [6781, 6782],
648    [6784, 6831], [6847, 6911], [6917, 6963], [6981, 7018], [7028, 7039],
649    [7043, 7072], [7086, 7141], [7156, 7203], [7224, 7375], [7379, 7379],
650    [7401, 7404], [7406, 7409], [7413, 7415], [7418, 7615], [7670, 7675],
651    [7680, 8202], [8208, 8231], [8239, 8287], [8304, 8399], [8433, 11502],
652    [11506, 11646], [11648, 11743], [11776, 12329], [12336, 12440],
653    [12443, 42606], [42611, 42611], [42622, 42653], [42656, 42735],
654    [42738, 43009], [43011, 43013], [43015, 43018], [43020, 43042],
655    [43048, 43135], [43138, 43187], [43205, 43231], [43250, 43301],
656    [43310, 43334], [43348, 43359], [43389, 43391], [43396, 43442],
657    [43457, 43492], [43494, 43560], [43575, 43586], [43588, 43595],
658    [43598, 43643], [43645, 43695], [43697, 43697], [43701, 43702],
659    [43705, 43709], [43712, 43712], [43714, 43754], [43760, 43764],
660    [43767, 44002], [44011, 44011], [44014, 44031], [55204, 55215],
661    [55239, 55242], [55292, 55295], [57344, 64285], [64287, 65023],
662    [65040, 65055], [65072, 65278], [65280, 65437], [65440, 65519],
663    [65532, 66044], [66046, 66271], [66273, 66421], [66427, 68096],
664    [68100, 68100], [68103, 68107], [68112, 68151], [68155, 68158],
665    [68160, 68324], [68327, 69631], [69635, 69687], [69703, 69758],
666    [69763, 69807], [69819, 69820], [69822, 69887], [69891, 69926],
667    [69941, 70002], [70004, 70015], [70019, 70066], [70081, 70089],
668    [70093, 70187], [70200, 70366], [70379, 70399], [70404, 70459],
669    [70461, 70461], [70469, 70470], [70473, 70474], [70478, 70486],
670    [70488, 70497], [70500, 70501], [70509, 70511], [70517, 70831],
671    [70852, 71086], [71094, 71095], [71105, 71131], [71134, 71215],
672    [71233, 71338], [71352, 71452], [71468, 92911], [92917, 92975],
673    [92983, 94032], [94079, 94094], [94099, 113820], [113823, 113823],
674    [113828, 119140], [119146, 119148], [119171, 119172], [119180, 119209],
675    [119214, 119361], [119365, 121343], [121399, 121402], [121453, 121460],
676    [121462, 121475], [121477, 121498], [121504, 121504], [121520, 125135],
677    [125143, 127461], [127488, 917503], [921600, 1114111]**/
678    const UnicodeSet xx_Set
679        {{{Empty, 1}, {Full, 2}, {Mixed, 1}, {Empty, 1}, {Mixed, 1},
680          {Full, 18}, {Empty, 3}, {Mixed, 1}, {Full, 8}, {Mixed, 1},
681          {Full, 7}, {Mixed, 3}, {Full, 1}, {Mixed, 1}, {Full, 1},
682          {Mixed, 2}, {Full, 2}, {Mixed, 5}, {Full, 2}, {Mixed, 1},
683          {Full, 1}, {Mixed, 4}, {Full, 4}, {Mixed, 24}, {Full, 1},
684          {Mixed, 13}, {Full, 1}, {Mixed, 2}, {Full, 1}, {Mixed, 2},
685          {Full, 2}, {Mixed, 2}, {Full, 1}, {Mixed, 2}, {Full, 1},
686          {Mixed, 4}, {Full, 2}, {Mixed, 4}, {Full, 3}, {Empty, 8},
687          {Full, 10}, {Mixed, 1}, {Full, 29}, {Mixed, 4}, {Full, 1},
688          {Mixed, 2}, {Full, 1}, {Mixed, 1}, {Full, 4}, {Mixed, 1},
689          {Full, 3}, {Mixed, 1}, {Full, 6}, {Mixed, 1}, {Full, 1},
690          {Mixed, 2}, {Full, 1}, {Mixed, 1}, {Full, 2}, {Mixed, 6},
691          {Full, 1}, {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Full, 4},
692          {Mixed, 2}, {Full, 6}, {Empty, 1}, {Mixed, 1}, {Full, 16},
693          {Mixed, 2}, {Full, 1}, {Mixed, 1}, {Full, 2}, {Mixed, 2},
694          {Full, 95}, {Mixed, 1}, {Full, 3}, {Mixed, 1}, {Full, 3},
695          {Empty, 1}, {Full, 17}, {Mixed, 1}, {Full, 2}, {Mixed, 1},
696          {Full, 942}, {Mixed, 2}, {Full, 2}, {Mixed, 1}, {Full, 8},
697          {Mixed, 2}, {Full, 2}, {Mixed, 4}, {Full, 1}, {Mixed, 7},
698          {Full, 1}, {Mixed, 3}, {Full, 1}, {Mixed, 3}, {Full, 7},
699          {Mixed, 1}, {Empty, 349}, {Mixed, 3}, {Empty, 64}, {Full, 216},
700          {Mixed, 1}, {Full, 23}, {Mixed, 2}, {Full, 5}, {Mixed, 1},
701          {Full, 4}, {Mixed, 1}, {Full, 2}, {Mixed, 1}, {Full, 15},
702          {Mixed, 1}, {Full, 7}, {Mixed, 1}, {Full, 3}, {Mixed, 1},
703          {Full, 52}, {Mixed, 2}, {Full, 5}, {Mixed, 1}, {Full, 40},
704          {Mixed, 6}, {Full, 2}, {Mixed, 2}, {Full, 1}, {Mixed, 4},
705          {Full, 2}, {Mixed, 1}, {Full, 4}, {Mixed, 6}, {Full, 9},
706          {Mixed, 2}, {Full, 6}, {Mixed, 2}, {Full, 2}, {Mixed, 2},
707          {Full, 2}, {Mixed, 1}, {Full, 2}, {Mixed, 2}, {Full, 669},
708          {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Full, 32}, {Mixed, 3},
709          {Full, 615}, {Mixed, 2}, {Full, 165}, {Mixed, 3}, {Full, 4},
710          {Mixed, 1}, {Full, 61}, {Empty, 1}, {Mixed, 1}, {Empty, 1},
711          {Mixed, 3}, {Full, 112}, {Mixed, 1}, {Full, 72}, {Mixed, 1},
712          {Full, 24688}, {Empty, 128}, {Full, 6016}},
713         {0x7fffffff, 0xffffdfff, 0xffff0000, 0xfffffc07, 0x0001ffff,
714          0x40000000, 0xffffff49, 0xe800ffc0, 0x000007ff, 0xfffeffff,
715          0x403fffff, 0xffffc260, 0xfffd7fff, 0x0000ffff, 0xfffff800,
716          0xfffe003f, 0xfff007ff, 0x043fffff, 0xffffc110, 0xf1ffffff,
717          0x00000007, 0xfffffff0, 0x23ffffff, 0xff010000, 0xfffffff3,
718          0xfffffff1, 0x2fffffff, 0xff7fc660, 0xfffffff3, 0xfffffff1,
719          0x2fffffff, 0xfffdc678, 0xffdcffff, 0xfffffff1, 0x2fffffff,
720          0xffffc440, 0xfffffff3, 0xfffffff1, 0x2fffffff, 0xff3fc660,
721          0xfffffff3, 0xfffffffb, 0x3fffffff, 0xff7fc238, 0xfffffff0,
722          0x3fffffff, 0xff9fc220, 0xfffffff3, 0xfffffff1, 0x2fffffff,
723          0xff9fc220, 0xfffffff3, 0xfffffff1, 0x3fffffff, 0xff7fc220,
724          0xfffffff3, 0xfffffff3, 0x00a07bff, 0xfff3ffff, 0xf805ffff,
725          0xffff807f, 0xe405ffff, 0xffffc0ff, 0xfcffffff, 0x3d5fffff,
726          0x0001ffff, 0x01001f20, 0xe0000000, 0xffffffbf, 0x81001fff,
727          0x3c3fffff, 0xffe1fffe, 0xdfffdf8b, 0x1fffffff, 0xffe3ffff,
728          0xffe3ffff, 0xfff3ffff, 0xfff3ffff, 0x000fffff, 0xdff00000,
729          0xffff87ff, 0xfffffdff, 0xf000f000, 0xf07fffff, 0x801fffff,
730          0x6000001a, 0x8000ffff, 0xffffffe0, 0x000fffff, 0xffffffe0,
731          0xfff007ff, 0xfffffff8, 0xffffc001, 0xfff0003f, 0xff00000f,
732          0x0008ffff, 0xfce3de00, 0x0fc00000, 0xffff07ff, 0xffff80ff,
733          0xffff0000, 0x0000ffff, 0xfffe0000, 0xfffc7fff, 0x7fffffff,
734          0xffff03ff, 0xf9ffffff, 0xc0087fff, 0x3fffffff, 0xfffcffff,
735          0xfffff7bb, 0xffffff07, 0xfffffffc, 0x000fffff, 0xffffffe0,
736          0xfffc0000, 0xffffc03f, 0xfff0007f, 0xe0000000, 0xfffffff0,
737          0x0007ffff, 0xfffffffe, 0xffffffdf, 0xff8001ff, 0xffffcff7,
738          0xefffffff, 0x3e62ffff, 0xfffffffd, 0xff9f07ff, 0xffffc807,
739          0x0000fff0, 0x00000780, 0xf0000000, 0xbfffffff, 0xffff0000,
740          0xffff0000, 0x7fffffff, 0x3fffffff, 0xf000ffff, 0xdfffffff,
741          0xfffffffe, 0xf83fffff, 0xffff0f91, 0x78ffffff, 0xffffff9f,
742          0xfffffff8, 0x00ffffff, 0xffffff80, 0x7fffffff, 0xfffffff8,
743          0xd800ffff, 0xfffffff8, 0xffe0007f, 0xfff7ffff, 0xfffffff8,
744          0x0007ffff, 0xffffe3fe, 0xff000fff, 0x7fffffff, 0xfffff800,
745          0xfffffff0, 0x2fffffff, 0xff7fc660, 0xffe0e033, 0x0000ffff,
746          0xfffffff0, 0x00c07fff, 0xcffffffe, 0x0000ffff, 0xfffffffe,
747          0xff0007ff, 0x1fffffff, 0xfffff000, 0xffe0ffff, 0xff80ffff,
748          0x0001ffff, 0x80000000, 0xfff87fff, 0x9fffffff, 0xfffffff0,
749          0x00001c1f, 0xfffff018, 0xffffc3ff, 0xffffffe3, 0x07800000,
750          0xffdfe000, 0x07ffffef, 0xffff0001, 0xff80ffff, 0x0000003f}};
751    static EnumeratedPropertyObject property_object
752        {GCB,
753         GCB_ns::enum_names,
754         GCB_ns::value_names,
755         GCB_ns::aliases_only_map,
756         {&cn_Set, &cr_Set, &ex_Set, &l_Set, &lf_Set, &lv_Set, &lvt_Set,
757        &pp_Set, &ri_Set, &sm_Set, &t_Set, &v_Set, &xx_Set
758         }};
759    }
760}
761
762#endif
Note: See TracBrowser for help on using the repository browser.