source: icGREP/icgrep-devel/icgrep/UCD/WordBreakProperty.h @ 5154

Last change on this file since 5154 was 5154, checked in by cameron, 3 years ago

Fix for -gs mode from Xiangyu

File size: 57.3 KB
Line 
1#ifndef WORDBREAKPROPERTY_H
2#define WORDBREAKPROPERTY_H
3/*
4 *  Copyright (c) 2016 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 WB_ns {
17    /** Code Point Ranges for XX
18    [0, 9], [14, 33], [35, 38], [40, 43], [45, 45], [47, 47], [60, 64],
19    [91, 94], [96, 96], [123, 132], [134, 169], [171, 172], [174, 180],
20    [182, 182], [184, 185], [187, 191], [215, 215], [247, 247], [706, 709],
21    [722, 726], [728, 735], [741, 747], [749, 749], [751, 767], [885, 885],
22    [888, 889], [896, 901], [907, 907], [909, 909], [930, 930],
23    [1014, 1014], [1154, 1154], [1328, 1328], [1367, 1368], [1370, 1376],
24    [1416, 1416], [1418, 1424], [1470, 1470], [1472, 1472], [1475, 1475],
25    [1478, 1478], [1480, 1487], [1515, 1519], [1525, 1535], [1542, 1547],
26    [1550, 1551], [1563, 1563], [1565, 1567], [1642, 1642], [1645, 1645],
27    [1748, 1748], [1758, 1758], [1769, 1769], [1789, 1790], [1792, 1806],
28    [1867, 1868], [1970, 1983], [2038, 2039], [2041, 2041], [2043, 2047],
29    [2094, 2111], [2140, 2207], [2229, 2229], [2238, 2259], [2404, 2405],
30    [2416, 2416], [2436, 2436], [2445, 2446], [2449, 2450], [2473, 2473],
31    [2481, 2481], [2483, 2485], [2490, 2491], [2501, 2502], [2505, 2506],
32    [2511, 2518], [2520, 2523], [2526, 2526], [2532, 2533], [2546, 2560],
33    [2564, 2564], [2571, 2574], [2577, 2578], [2601, 2601], [2609, 2609],
34    [2612, 2612], [2615, 2615], [2618, 2619], [2621, 2621], [2627, 2630],
35    [2633, 2634], [2638, 2640], [2642, 2648], [2653, 2653], [2655, 2661],
36    [2678, 2688], [2692, 2692], [2702, 2702], [2706, 2706], [2729, 2729],
37    [2737, 2737], [2740, 2740], [2746, 2747], [2758, 2758], [2762, 2762],
38    [2766, 2767], [2769, 2783], [2788, 2789], [2800, 2808], [2810, 2816],
39    [2820, 2820], [2829, 2830], [2833, 2834], [2857, 2857], [2865, 2865],
40    [2868, 2868], [2874, 2875], [2885, 2886], [2889, 2890], [2894, 2901],
41    [2904, 2907], [2910, 2910], [2916, 2917], [2928, 2928], [2930, 2945],
42    [2948, 2948], [2955, 2957], [2961, 2961], [2966, 2968], [2971, 2971],
43    [2973, 2973], [2976, 2978], [2981, 2983], [2987, 2989], [3002, 3005],
44    [3011, 3013], [3017, 3017], [3022, 3023], [3025, 3030], [3032, 3045],
45    [3056, 3071], [3076, 3076], [3085, 3085], [3089, 3089], [3113, 3113],
46    [3130, 3132], [3141, 3141], [3145, 3145], [3150, 3156], [3159, 3159],
47    [3163, 3167], [3172, 3173], [3184, 3199], [3204, 3204], [3213, 3213],
48    [3217, 3217], [3241, 3241], [3252, 3252], [3258, 3259], [3269, 3269],
49    [3273, 3273], [3278, 3284], [3287, 3293], [3295, 3295], [3300, 3301],
50    [3312, 3312], [3315, 3328], [3332, 3332], [3341, 3341], [3345, 3345],
51    [3387, 3388], [3397, 3397], [3401, 3401], [3407, 3411], [3416, 3422],
52    [3428, 3429], [3440, 3449], [3456, 3457], [3460, 3460], [3479, 3481],
53    [3506, 3506], [3516, 3516], [3518, 3519], [3527, 3529], [3531, 3534],
54    [3541, 3541], [3543, 3543], [3552, 3557], [3568, 3569], [3572, 3632],
55    [3634, 3635], [3643, 3654], [3663, 3663], [3674, 3760], [3762, 3763],
56    [3770, 3770], [3773, 3783], [3790, 3791], [3802, 3839], [3841, 3863],
57    [3866, 3871], [3882, 3892], [3894, 3894], [3896, 3896], [3898, 3901],
58    [3912, 3912], [3949, 3952], [3973, 3973], [3992, 3992], [4029, 4037],
59    [4039, 4138], [4159, 4159], [4170, 4181], [4186, 4189], [4193, 4193],
60    [4197, 4198], [4206, 4208], [4213, 4225], [4238, 4238], [4254, 4255],
61    [4294, 4294], [4296, 4300], [4302, 4303], [4347, 4347], [4681, 4681],
62    [4686, 4687], [4695, 4695], [4697, 4697], [4702, 4703], [4745, 4745],
63    [4750, 4751], [4785, 4785], [4790, 4791], [4799, 4799], [4801, 4801],
64    [4806, 4807], [4823, 4823], [4881, 4881], [4886, 4887], [4955, 4956],
65    [4960, 4991], [5008, 5023], [5110, 5111], [5118, 5120], [5741, 5742],
66    [5760, 5760], [5787, 5791], [5867, 5869], [5881, 5887], [5901, 5901],
67    [5909, 5919], [5941, 5951], [5972, 5983], [5997, 5997], [6001, 6001],
68    [6004, 6067], [6100, 6108], [6110, 6111], [6122, 6154], [6159, 6159],
69    [6170, 6175], [6264, 6271], [6315, 6319], [6390, 6399], [6431, 6431],
70    [6444, 6447], [6460, 6469], [6480, 6607], [6618, 6655], [6684, 6740],
71    [6751, 6751], [6781, 6782], [6794, 6799], [6810, 6831], [6847, 6911],
72    [6988, 6991], [7002, 7018], [7028, 7039], [7156, 7167], [7224, 7231],
73    [7242, 7244], [7294, 7295], [7305, 7375], [7379, 7379], [7415, 7415],
74    [7418, 7423], [7670, 7674], [7958, 7959], [7966, 7967], [8006, 8007],
75    [8014, 8015], [8024, 8024], [8026, 8026], [8028, 8028], [8030, 8030],
76    [8062, 8063], [8117, 8117], [8125, 8125], [8127, 8129], [8133, 8133],
77    [8141, 8143], [8148, 8149], [8156, 8159], [8173, 8177], [8181, 8181],
78    [8189, 8203], [8208, 8215], [8218, 8227], [8229, 8230], [8240, 8254],
79    [8257, 8259], [8261, 8275], [8277, 8287], [8293, 8293], [8304, 8304],
80    [8306, 8318], [8320, 8335], [8349, 8399], [8433, 8449], [8451, 8454],
81    [8456, 8457], [8468, 8468], [8470, 8472], [8478, 8483], [8485, 8485],
82    [8487, 8487], [8489, 8489], [8494, 8494], [8506, 8507], [8512, 8516],
83    [8522, 8525], [8527, 8543], [8585, 9397], [9450, 9756], [9758, 9976],
84    [9978, 9993], [9998, 10083], [10085, 11263], [11311, 11311],
85    [11359, 11359], [11493, 11498], [11508, 11519], [11558, 11558],
86    [11560, 11564], [11566, 11567], [11624, 11630], [11632, 11646],
87    [11671, 11679], [11687, 11687], [11695, 11695], [11703, 11703],
88    [11711, 11711], [11719, 11719], [11727, 11727], [11735, 11735],
89    [11743, 11743], [11776, 11822], [11824, 12292], [12294, 12329],
90    [12336, 12336], [12342, 12346], [12349, 12440], [12445, 12447],
91    [12539, 12539], [12544, 12548], [12590, 12592], [12687, 12703],
92    [12731, 12783], [12800, 13007], [13055, 13055], [13144, 40959],
93    [42125, 42191], [42238, 42239], [42509, 42511], [42540, 42559],
94    [42611, 42611], [42622, 42622], [42738, 42774], [42784, 42785],
95    [42889, 42890], [42927, 42927], [42936, 42998], [43048, 43071],
96    [43124, 43135], [43206, 43215], [43226, 43231], [43256, 43258],
97    [43260, 43260], [43262, 43263], [43310, 43311], [43348, 43359],
98    [43389, 43391], [43457, 43470], [43482, 43492], [43494, 43503],
99    [43514, 43519], [43575, 43583], [43598, 43599], [43610, 43642],
100    [43646, 43695], [43697, 43697], [43701, 43702], [43705, 43709],
101    [43712, 43712], [43714, 43743], [43760, 43761], [43767, 43776],
102    [43783, 43784], [43791, 43792], [43799, 43807], [43815, 43815],
103    [43823, 43823], [43867, 43867], [43878, 43887], [44011, 44011],
104    [44014, 44015], [44026, 44031], [55204, 55215], [55239, 55242],
105    [55292, 64255], [64263, 64274], [64280, 64284], [64297, 64297],
106    [64311, 64311], [64317, 64317], [64319, 64319], [64322, 64322],
107    [64325, 64325], [64434, 64466], [64830, 64847], [64912, 64913],
108    [64968, 65007], [65020, 65023], [65041, 65042], [65045, 65055],
109    [65072, 65074], [65077, 65100], [65105, 65105], [65107, 65107],
110    [65110, 65135], [65141, 65141], [65277, 65278], [65280, 65286],
111    [65288, 65291], [65293, 65293], [65295, 65305], [65308, 65312],
112    [65339, 65342], [65344, 65344], [65371, 65381], [65471, 65473],
113    [65480, 65481], [65488, 65489], [65496, 65497], [65501, 65528],
114    [65532, 65535], [65548, 65548], [65575, 65575], [65595, 65595],
115    [65598, 65598], [65614, 65615], [65630, 65663], [65787, 65855],
116    [65909, 66044], [66046, 66175], [66205, 66207], [66257, 66271],
117    [66273, 66303], [66336, 66351], [66379, 66383], [66427, 66431],
118    [66462, 66463], [66500, 66503], [66512, 66512], [66518, 66559],
119    [66718, 66719], [66730, 66735], [66772, 66775], [66812, 66815],
120    [66856, 66863], [66916, 67071], [67383, 67391], [67414, 67423],
121    [67432, 67583], [67590, 67591], [67593, 67593], [67638, 67638],
122    [67641, 67643], [67645, 67646], [67670, 67679], [67703, 67711],
123    [67743, 67807], [67827, 67827], [67830, 67839], [67862, 67871],
124    [67898, 67967], [68024, 68029], [68032, 68095], [68100, 68100],
125    [68103, 68107], [68116, 68116], [68120, 68120], [68148, 68151],
126    [68155, 68158], [68160, 68191], [68221, 68223], [68253, 68287],
127    [68296, 68296], [68327, 68351], [68406, 68415], [68438, 68447],
128    [68467, 68479], [68498, 68607], [68681, 68735], [68787, 68799],
129    [68851, 69631], [69703, 69733], [69744, 69758], [69819, 69820],
130    [69822, 69839], [69865, 69871], [69882, 69887], [69941, 69941],
131    [69952, 69967], [70004, 70005], [70007, 70015], [70085, 70089],
132    [70093, 70095], [70107, 70107], [70109, 70143], [70162, 70162],
133    [70200, 70205], [70207, 70271], [70279, 70279], [70281, 70281],
134    [70286, 70286], [70302, 70302], [70313, 70319], [70379, 70383],
135    [70394, 70399], [70404, 70404], [70413, 70414], [70417, 70418],
136    [70441, 70441], [70449, 70449], [70452, 70452], [70458, 70459],
137    [70469, 70470], [70473, 70474], [70478, 70479], [70481, 70486],
138    [70488, 70492], [70500, 70501], [70509, 70511], [70517, 70655],
139    [70731, 70735], [70746, 70783], [70854, 70854], [70856, 70863],
140    [70874, 71039], [71094, 71095], [71105, 71127], [71134, 71167],
141    [71233, 71235], [71237, 71247], [71258, 71295], [71352, 71359],
142    [71370, 71452], [71468, 71471], [71482, 71839], [71914, 71934],
143    [71936, 72383], [72441, 72703], [72713, 72713], [72759, 72759],
144    [72769, 72783], [72794, 72817], [72848, 72849], [72872, 72872],
145    [72887, 73727], [74650, 74751], [74863, 74879], [75076, 77823],
146    [78895, 82943], [83527, 92159], [92729, 92735], [92767, 92767],
147    [92778, 92879], [92910, 92911], [92917, 92927], [92983, 92991],
148    [92996, 93007], [93018, 93026], [93048, 93052], [93072, 93951],
149    [94021, 94031], [94079, 94094], [94112, 94175], [94177, 110591],
150    [110593, 113663], [113771, 113775], [113789, 113791], [113801, 113807],
151    [113818, 113820], [113823, 113823], [113828, 119140], [119146, 119148],
152    [119171, 119172], [119180, 119209], [119214, 119361], [119365, 119807],
153    [119893, 119893], [119965, 119965], [119968, 119969], [119971, 119972],
154    [119975, 119976], [119981, 119981], [119994, 119994], [119996, 119996],
155    [120004, 120004], [120070, 120070], [120075, 120076], [120085, 120085],
156    [120093, 120093], [120122, 120122], [120127, 120127], [120133, 120133],
157    [120135, 120137], [120145, 120145], [120486, 120487], [120513, 120513],
158    [120539, 120539], [120571, 120571], [120597, 120597], [120629, 120629],
159    [120655, 120655], [120687, 120687], [120713, 120713], [120745, 120745],
160    [120771, 120771], [120780, 120781], [120832, 121343], [121399, 121402],
161    [121453, 121460], [121462, 121475], [121477, 121498], [121504, 121504],
162    [121520, 122879], [122887, 122887], [122905, 122906], [122914, 122914],
163    [122917, 122917], [122923, 124927], [125125, 125135], [125143, 125183],
164    [125259, 125263], [125274, 126463], [126468, 126468], [126496, 126496],
165    [126499, 126499], [126501, 126502], [126504, 126504], [126515, 126515],
166    [126520, 126520], [126522, 126522], [126524, 126529], [126531, 126534],
167    [126536, 126536], [126538, 126538], [126540, 126540], [126544, 126544],
168    [126547, 126547], [126549, 126550], [126552, 126552], [126554, 126554],
169    [126556, 126556], [126558, 126558], [126560, 126560], [126563, 126563],
170    [126565, 126566], [126571, 126571], [126579, 126579], [126584, 126584],
171    [126589, 126589], [126591, 126591], [126602, 126602], [126620, 126624],
172    [126628, 126628], [126634, 126634], [126652, 127279], [127306, 127311],
173    [127338, 127343], [127370, 127461], [127488, 127876], [127878, 127938],
174    [127941, 127945], [127948, 127994], [128000, 128065], [128068, 128069],
175    [128081, 128101], [128106, 128109], [128111, 128111], [128121, 128123],
176    [128125, 128128], [128132, 128132], [128136, 128138], [128140, 128169],
177    [128171, 128372], [128374, 128377], [128379, 128399], [128401, 128404],
178    [128407, 128487], [128489, 128580], [128584, 128586], [128592, 128674],
179    [128676, 128691], [128695, 128703], [128705, 129303], [129311, 129317],
180    [129319, 129327], [129329, 129330], [129338, 129339], [129343, 917504],
181    [917506, 917535], [917632, 917759], [918000, 1114111]**/
182    const UnicodeSet xx_Set
183        {{{Mixed, 8}, {Empty, 14}, {Mixed, 2}, {Empty, 3}, {Mixed, 3},
184          {Empty, 1}, {Mixed, 1}, {Empty, 4}, {Mixed, 1}, {Empty, 4},
185          {Mixed, 8}, {Empty, 2}, {Mixed, 1}, {Empty, 2}, {Mixed, 3},
186          {Empty, 1}, {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Empty, 1},
187          {Mixed, 1}, {Empty, 1}, {Mixed, 2}, {Full, 2}, {Mixed, 2},
188          {Empty, 4}, {Mixed, 37}, {Full, 1}, {Mixed, 2}, {Full, 2},
189          {Mixed, 2}, {Full, 1}, {Mixed, 7}, {Full, 2}, {Mixed, 4},
190          {Empty, 1}, {Mixed, 2}, {Empty, 10}, {Mixed, 1}, {Empty, 1},
191          {Mixed, 3}, {Empty, 1}, {Mixed, 1}, {Empty, 1}, {Mixed, 1},
192          {Full, 1}, {Mixed, 1}, {Empty, 2}, {Mixed, 2}, {Empty, 18},
193          {Mixed, 2}, {Empty, 2}, {Mixed, 5}, {Full, 1}, {Mixed, 4},
194          {Empty, 2}, {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 1},
195          {Mixed, 4}, {Full, 3}, {Mixed, 1}, {Full, 1}, {Mixed, 1},
196          {Full, 1}, {Mixed, 4}, {Full, 2}, {Empty, 2}, {Mixed, 2},
197          {Empty, 3}, {Mixed, 1}, {Empty, 1}, {Mixed, 4}, {Full, 1},
198          {Mixed, 2}, {Empty, 7}, {Mixed, 1}, {Empty, 8}, {Mixed, 1},
199          {Empty, 1}, {Mixed, 2}, {Empty, 1}, {Mixed, 8}, {Full, 1},
200          {Mixed, 5}, {Empty, 1}, {Mixed, 1}, {Full, 24}, {Mixed, 1},
201          {Empty, 1}, {Mixed, 1}, {Full, 8}, {Mixed, 1}, {Full, 6},
202          {Mixed, 2}, {Full, 2}, {Mixed, 1}, {Full, 36}, {Empty, 1},
203          {Mixed, 2}, {Empty, 4}, {Mixed, 1}, {Empty, 1}, {Mixed, 1},
204          {Empty, 1}, {Mixed, 4}, {Empty, 1}, {Full, 1}, {Mixed, 1},
205          {Full, 14}, {Mixed, 2}, {Full, 2}, {Mixed, 1}, {Empty, 2},
206          {Mixed, 3}, {Empty, 2}, {Mixed, 2}, {Full, 1}, {Mixed, 1},
207          {Full, 6}, {Mixed, 2}, {Empty, 2}, {Mixed, 1}, {Full, 869},
208          {Empty, 36}, {Mixed, 1}, {Full, 1}, {Mixed, 2}, {Empty, 8},
209          {Mixed, 2}, {Empty, 1}, {Mixed, 1}, {Empty, 3}, {Mixed, 3},
210          {Empty, 2}, {Mixed, 2}, {Full, 1}, {Mixed, 1}, {Empty, 1},
211          {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 2}, {Mixed, 2},
212          {Empty, 1}, {Mixed, 3}, {Empty, 2}, {Mixed, 2}, {Empty, 1},
213          {Mixed, 3}, {Full, 1}, {Mixed, 7}, {Empty, 3}, {Mixed, 1},
214          {Empty, 349}, {Mixed, 3}, {Full, 280}, {Mixed, 3}, {Empty, 2},
215          {Mixed, 2}, {Empty, 10}, {Mixed, 2}, {Empty, 1}, {Mixed, 1},
216          {Empty, 1}, {Mixed, 6}, {Empty, 3}, {Mixed, 5}, {Empty, 1},
217          {Mixed, 6}, {Full, 1}, {Empty, 3}, {Mixed, 1}, {Full, 2},
218          {Empty, 1}, {Mixed, 1}, {Full, 3}, {Mixed, 1}, {Full, 4},
219          {Mixed, 1}, {Empty, 1}, {Mixed, 2}, {Empty, 1}, {Mixed, 4},
220          {Empty, 1}, {Mixed, 1}, {Full, 1}, {Empty, 4}, {Mixed, 4},
221          {Empty, 1}, {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Full, 4},
222          {Empty, 9}, {Mixed, 3}, {Full, 4}, {Mixed, 5}, {Full, 2},
223          {Mixed, 3}, {Full, 2}, {Empty, 1}, {Mixed, 1}, {Full, 2},
224          {Mixed, 2}, {Full, 1}, {Mixed, 2}, {Full, 1}, {Mixed, 2},
225          {Empty, 1}, {Mixed, 4}, {Full, 3}, {Empty, 2}, {Mixed, 1},
226          {Full, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 1}, {Mixed, 1},
227          {Full, 24}, {Empty, 2}, {Mixed, 2}, {Empty, 1}, {Mixed, 3},
228          {Empty, 1}, {Mixed, 3}, {Empty, 2}, {Mixed, 1}, {Full, 1},
229          {Mixed, 2}, {Full, 2}, {Mixed, 2}, {Empty, 1}, {Mixed, 5},
230          {Full, 4}, {Empty, 2}, {Mixed, 1}, {Full, 1}, {Empty, 2},
231          {Mixed, 1}, {Full, 5}, {Empty, 1}, {Mixed, 2}, {Full, 1},
232          {Empty, 2}, {Mixed, 1}, {Full, 1}, {Empty, 1}, {Mixed, 2},
233          {Full, 1}, {Mixed, 2}, {Full, 11}, {Empty, 2}, {Mixed, 1},
234          {Full, 14}, {Empty, 1}, {Mixed, 1}, {Full, 8}, {Mixed, 6},
235          {Full, 26}, {Empty, 28}, {Mixed, 1}, {Full, 3}, {Empty, 3},
236          {Mixed, 1}, {Empty, 6}, {Mixed, 1}, {Full, 85}, {Empty, 33},
237          {Mixed, 1}, {Full, 126}, {Empty, 18}, {Mixed, 1}, {Full, 269},
238          {Empty, 17}, {Mixed, 3}, {Full, 2}, {Mixed, 2}, {Empty, 1},
239          {Mixed, 4}, {Full, 27}, {Empty, 2}, {Mixed, 3}, {Full, 2},
240          {Mixed, 1}, {Full, 512}, {Mixed, 1}, {Full, 95}, {Empty, 3},
241          {Mixed, 3}, {Full, 165}, {Mixed, 3}, {Full, 4}, {Mixed, 1},
242          {Full, 13}, {Empty, 2}, {Mixed, 1}, {Empty, 1}, {Mixed, 3},
243          {Empty, 1}, {Mixed, 3}, {Empty, 10}, {Mixed, 10}, {Empty, 1},
244          {Full, 16}, {Empty, 1}, {Mixed, 1}, {Empty, 1}, {Mixed, 3},
245          {Full, 42}, {Mixed, 2}, {Full, 62}, {Empty, 6}, {Mixed, 1},
246          {Full, 1}, {Empty, 2}, {Mixed, 1}, {Full, 37}, {Mixed, 6},
247          {Full, 19}, {Mixed, 4}, {Full, 2}, {Mixed, 1}, {Full, 12},
248          {Mixed, 1}, {Full, 1}, {Mixed, 2}, {Full, 2}, {Mixed, 4},
249          {Full, 5}, {Mixed, 2}, {Full, 2}, {Mixed, 1}, {Full, 2},
250          {Mixed, 1}, {Full, 2}, {Mixed, 2}, {Full, 17}, {Mixed, 2},
251          {Full, 24630}, {Mixed, 1}, {Empty, 3}, {Full, 4}, {Empty, 7},
252          {Mixed, 1}, {Full, 6128}},
253         {0xffffc3ff, 0xf000af7b, 0x78000001, 0xf8000001, 0xffffffdf,
254          0xfb5fdbff, 0x00800000, 0x00800000, 0xff7c003c, 0xffffafe0,
255          0x03200000, 0x0000283f, 0x00000004, 0x00400000, 0x00000004,
256          0x00010000, 0xfd800000, 0x00000001, 0x0001fd00, 0x40000000,
257          0x0000ff49, 0xffe0f800, 0xe800cfc0, 0x00002400, 0x40100000,
258          0x60000200, 0x00007fff, 0x00001800, 0xfffc0000, 0xfac00000,
259          0xffffc000, 0xf0000000, 0xc0200000, 0x000fffff, 0x00010030,
260          0x00066010, 0x0c3a0200, 0x4f7f8660, 0xfffc0030, 0x00067811,
261          0x2c920200, 0xa1fdc678, 0xffc0003f, 0x00044011, 0x0c120200,
262          0xfffec440, 0xfdff0030, 0x00066011, 0x0c120200, 0x4f3fc660,
263          0xfffd0030, 0x29c23813, 0x3c0038e7, 0xff7ec238, 0xffff003f,
264          0x00022010, 0x1c000200, 0xf89fc220, 0xffff0030, 0x00022010,
265          0x0c100200, 0xbf9fc220, 0xfff90030, 0x00022011, 0x18000000,
266          0x7f0f8220, 0x03ff0030, 0x03800013, 0xd0040000, 0x00a07b80,
267          0xfff3003f, 0xf80dffff, 0xfc00807f, 0xe40dffff, 0xfc00c0ff,
268          0xfcfffffe, 0x3d5ffc00, 0x00000100, 0x0001e000, 0x01000020,
269          0xe0000000, 0xffffffbf, 0x800007ff, 0x3c3ffc00, 0xffe1c062,
270          0xc0004003, 0x0000df40, 0x08000000, 0xc280c200, 0x0000c200,
271          0x80c20000, 0x008000c2, 0x00c20000, 0x18000000, 0xffff0000,
272          0xc0c00000, 0x00000001, 0x00006000, 0xf8000001, 0xfe003800,
273          0xffe02000, 0xffe00000, 0xfff00000, 0xfff22000, 0x000fffff,
274          0xdff00000, 0xfffffc00, 0xfc0087ff, 0xff000000, 0x0000f800,
275          0xffc00000, 0x80000000, 0xf000f000, 0xffff003f, 0xfc00ffff,
276          0xf0000000, 0x801fffff, 0x60000000, 0xfc00fc00, 0x8000ffff,
277          0xfc00f000, 0xfff007ff, 0xfff00000, 0xff000000, 0x00001c00,
278          0xc0000000, 0xfffffe00, 0x0008ffff, 0xfc800000, 0x07c00000,
279          0xc0c00000, 0x5500c0c0, 0xc0000000, 0xa0200000, 0xf030e023,
280          0xe023e000, 0xfcff0fff, 0x7fff006f, 0xffefffee, 0x7ffd0020,
281          0xe000ffff, 0x0000ffff, 0xfffe0000, 0xc1d0037b, 0x0c0042af,
282          0xffffbc1f, 0xfffffe00, 0x003fffff, 0xfffffc00, 0xdfffffff,
283          0xfdffffff, 0xffffc3ff, 0xffffffef, 0x00008000, 0x80000000,
284          0xfff007e0, 0x0000df40, 0x7fff7f00, 0xff800000, 0x80808080,
285          0x80808080, 0xffff7fff, 0xffffffdf, 0xe7c103ff, 0xe1ffffff,
286          0x08000000, 0x0000001f, 0x0001c000, 0xffff8000, 0xf8000000,
287          0x0000ffff, 0x0000ffff, 0x80000000, 0xff000000, 0xffffe000,
288          0x0000ffff, 0xc0000000, 0x0000e000, 0xfffff000, 0x40080000,
289          0xfffc0000, 0x007fffff, 0x00000003, 0x00000600, 0xff008000,
290          0x007fffff, 0xffffff00, 0xfff00000, 0xfc00ffc0, 0xd7000000,
291          0x0000c000, 0xfff00000, 0xe0000000, 0xfc007ffe, 0xfc00ffdf,
292          0xff800000, 0xfc00c000, 0xc7ffffff, 0x3e62ffff, 0xfffffffd,
293          0xff830000, 0xff818181, 0x00008080, 0x08000000, 0x0000ffc0,
294          0xfc00c800, 0x0000fff0, 0x00000780, 0xf0000000, 0x1f07ff80,
295          0xa0800200, 0x00000024, 0xfffc0000, 0x0007ffff, 0xc0000000,
296          0x0000ffff, 0x00030000, 0xffffff00, 0xf000ffff, 0xffe60000,
297          0xffe70000, 0xffca1fff, 0x0020ffff, 0x60000000, 0xf3ffaf7f,
298          0x78000001, 0xf8000001, 0x0000003f, 0x80000000, 0xe3030303,
299          0xf1ffffff, 0x00001000, 0x48000080, 0xc000c000, 0xf8000000,
300          0xffe00000, 0xdfffffff, 0xe0000000, 0xfffe0000, 0xfffffffe,
301          0x0000ffff, 0x0000f800, 0xf8000000, 0xc0000000, 0xffc100f0,
302          0xc0000000, 0x0000fc00, 0x00f00000, 0xf0000000, 0x0000ff00,
303          0xfffffff0, 0xff800000, 0xffc00000, 0xffffff00, 0x000002c0,
304          0x6e400000, 0xffc00000, 0xff800000, 0x80000000, 0xffc80000,
305          0xffc00000, 0xfc000000, 0x3f000000, 0x01100f90, 0x78f00000,
306          0xe0000000, 0xe0000000, 0x00000100, 0xffffff80, 0xffc00000,
307          0xffc00000, 0xfff80000, 0xfffc0000, 0xfffffe00, 0xfff80000,
308          0xfff80000, 0xffffff80, 0x7fff003f, 0xd8000000, 0x0000ffff,
309          0xfc00fe00, 0x00200000, 0x0000ffff, 0xffb00000, 0xe800e3e0,
310          0x00040000, 0xbf000000, 0x40004280, 0x0000fe00, 0xfc00f800,
311          0x00066010, 0x0c120200, 0x1f7ec660, 0xffe0e030, 0xfc00f800,
312          0xfc00ff40, 0x00c00000, 0xc0fffffe, 0xfc00ffee, 0xff000000,
313          0xfffffc00, 0x1fffffff, 0xfc00f000, 0x7ffffc00, 0xfe000000,
314          0x00000200, 0x00800000, 0xfc00fffe, 0x0003ffff, 0x00030000,
315          0xff800100, 0xfc000000, 0xffff8000, 0xfffffff0, 0xffff8000,
316          0xffffff80, 0xfe000000, 0x80000000, 0xfffffc00, 0x0000ffff,
317          0xffe0c000, 0xff800000, 0xfc00fff0, 0x1f000007, 0xffff0000,
318          0x0000ffe0, 0x80000000, 0x00007fff, 0xfffffffe, 0xfffffffe,
319          0xe000f800, 0x9c00fe00, 0xfffffff0, 0x00001c1f, 0xfffff018,
320          0xffffc3ff, 0xffffffe3, 0x00200000, 0x20000000, 0x1400219b,
321          0x00000010, 0x20201840, 0x84000000, 0x000203a0, 0x000000c0,
322          0x08000002, 0x08000000, 0x00200000, 0x00200000, 0x00008000,
323          0x00008000, 0x00000200, 0x00000200, 0x00003008, 0x07800000,
324          0xffdfe000, 0x07ffffef, 0xffff0001, 0x06000080, 0xfffff824,
325          0xff80ffe0, 0xfc00f800, 0x00000010, 0xf5080169, 0x5569157b,
326          0xa1080869, 0xf0000400, 0xf0000411, 0x0000ffff, 0x0000fc00,
327          0x0000fc00, 0xfffffc00, 0x0000003f, 0xffffffdf, 0xfffff3e7,
328          0x07ffffff, 0xfffe0033, 0xee00bc3f, 0xfffff711, 0xfffffbff,
329          0xfbdfffff, 0xff9effff, 0xfffffeff, 0xffff071f, 0xff8ffff7,
330          0xfffffffe, 0x80ffffff, 0x8c06ffbf, 0xfffffffd, 0xffff0000}};
331    /** Code Point Ranges for DQ
332    [34, 34]**/
333    const UnicodeSet dq_Set
334        {{{Empty, 1}, {Mixed, 1}, {Empty, 34814}},
335         {0x00000004}};
336    /** Code Point Ranges for SQ
337    [39, 39]**/
338    const UnicodeSet sq_Set
339        {{{Empty, 1}, {Mixed, 1}, {Empty, 34814}},
340         {0x00000080}};
341    /** Code Point Ranges for HL
342    [1488, 1514], [1520, 1522], [64285, 64285], [64287, 64296],
343    [64298, 64310], [64312, 64316], [64318, 64318], [64320, 64321],
344    [64323, 64324], [64326, 64335]**/
345    const UnicodeSet hl_Set
346        {{{Empty, 46}, {Mixed, 2}, {Empty, 1960}, {Mixed, 3},
347          {Empty, 32805}},
348         {0xffff0000, 0x000707ff, 0xa0000000, 0x5f7ffdff, 0x0000ffdb}};
349    /** Code Point Ranges for CR
350    [13, 13]**/
351    const UnicodeSet cr_Set
352        {{{Mixed, 1}, {Empty, 34815}},
353         {0x00002000}};
354    /** Code Point Ranges for LF
355    [10, 10]**/
356    const UnicodeSet lf_Set
357        {{{Mixed, 1}, {Empty, 34815}},
358         {0x00000400}};
359    /** Code Point Ranges for NL
360    [11, 12], [133, 133], [8232, 8233]**/
361    const UnicodeSet nl_Set
362        {{{Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 252}, {Mixed, 1},
363          {Empty, 34558}},
364         {0x00001800, 0x00000020, 0x00000300}};
365    /** Code Point Ranges for Extend
366    [768, 879], [1155, 1161], [1425, 1469], [1471, 1471], [1473, 1474],
367    [1476, 1477], [1479, 1479], [1552, 1562], [1611, 1631], [1648, 1648],
368    [1750, 1756], [1759, 1764], [1767, 1768], [1770, 1773], [1809, 1809],
369    [1840, 1866], [1958, 1968], [2027, 2035], [2070, 2073], [2075, 2083],
370    [2085, 2087], [2089, 2093], [2137, 2139], [2260, 2273], [2275, 2307],
371    [2362, 2364], [2366, 2383], [2385, 2391], [2402, 2403], [2433, 2435],
372    [2492, 2492], [2494, 2500], [2503, 2504], [2507, 2509], [2519, 2519],
373    [2530, 2531], [2561, 2563], [2620, 2620], [2622, 2626], [2631, 2632],
374    [2635, 2637], [2641, 2641], [2672, 2673], [2677, 2677], [2689, 2691],
375    [2748, 2748], [2750, 2757], [2759, 2761], [2763, 2765], [2786, 2787],
376    [2817, 2819], [2876, 2876], [2878, 2884], [2887, 2888], [2891, 2893],
377    [2902, 2903], [2914, 2915], [2946, 2946], [3006, 3010], [3014, 3016],
378    [3018, 3021], [3031, 3031], [3072, 3075], [3134, 3140], [3142, 3144],
379    [3146, 3149], [3157, 3158], [3170, 3171], [3201, 3203], [3260, 3260],
380    [3262, 3268], [3270, 3272], [3274, 3277], [3285, 3286], [3298, 3299],
381    [3329, 3331], [3390, 3396], [3398, 3400], [3402, 3405], [3415, 3415],
382    [3426, 3427], [3458, 3459], [3530, 3530], [3535, 3540], [3542, 3542],
383    [3544, 3551], [3570, 3571], [3633, 3633], [3636, 3642], [3655, 3662],
384    [3761, 3761], [3764, 3769], [3771, 3772], [3784, 3789], [3864, 3865],
385    [3893, 3893], [3895, 3895], [3897, 3897], [3902, 3903], [3953, 3972],
386    [3974, 3975], [3981, 3991], [3993, 4028], [4038, 4038], [4139, 4158],
387    [4182, 4185], [4190, 4192], [4194, 4196], [4199, 4205], [4209, 4212],
388    [4226, 4237], [4239, 4239], [4250, 4253], [4957, 4959], [5906, 5908],
389    [5938, 5940], [5970, 5971], [6002, 6003], [6068, 6099], [6109, 6109],
390    [6155, 6157], [6277, 6278], [6313, 6313], [6432, 6443], [6448, 6459],
391    [6679, 6683], [6741, 6750], [6752, 6780], [6783, 6783], [6832, 6846],
392    [6912, 6916], [6964, 6980], [7019, 7027], [7040, 7042], [7073, 7085],
393    [7142, 7155], [7204, 7223], [7376, 7378], [7380, 7400], [7405, 7405],
394    [7410, 7412], [7416, 7417], [7616, 7669], [7675, 7679], [8204, 8204],
395    [8400, 8432], [11503, 11505], [11647, 11647], [11744, 11775],
396    [12330, 12335], [12441, 12442], [42607, 42610], [42612, 42621],
397    [42654, 42655], [42736, 42737], [43010, 43010], [43014, 43014],
398    [43019, 43019], [43043, 43047], [43136, 43137], [43188, 43205],
399    [43232, 43249], [43302, 43309], [43335, 43347], [43392, 43395],
400    [43443, 43456], [43493, 43493], [43561, 43574], [43587, 43587],
401    [43596, 43597], [43643, 43645], [43696, 43696], [43698, 43700],
402    [43703, 43704], [43710, 43711], [43713, 43713], [43755, 43759],
403    [43765, 43766], [44003, 44010], [44012, 44013], [64286, 64286],
404    [65024, 65039], [65056, 65071], [65438, 65439], [66045, 66045],
405    [66272, 66272], [66422, 66426], [68097, 68099], [68101, 68102],
406    [68108, 68111], [68152, 68154], [68159, 68159], [68325, 68326],
407    [69632, 69634], [69688, 69702], [69759, 69762], [69808, 69818],
408    [69888, 69890], [69927, 69940], [70003, 70003], [70016, 70018],
409    [70067, 70080], [70090, 70092], [70188, 70199], [70206, 70206],
410    [70367, 70378], [70400, 70403], [70460, 70460], [70462, 70468],
411    [70471, 70472], [70475, 70477], [70487, 70487], [70498, 70499],
412    [70502, 70508], [70512, 70516], [70709, 70726], [70832, 70851],
413    [71087, 71093], [71096, 71104], [71132, 71133], [71216, 71232],
414    [71339, 71351], [71453, 71467], [72751, 72758], [72760, 72767],
415    [72850, 72871], [72873, 72886], [92912, 92916], [92976, 92982],
416    [94033, 94078], [94095, 94098], [113821, 113822], [119141, 119145],
417    [119149, 119154], [119163, 119170], [119173, 119179], [119210, 119213],
418    [119362, 119364], [121344, 121398], [121403, 121452], [121461, 121461],
419    [121476, 121476], [121499, 121503], [121505, 121519], [122880, 122886],
420    [122888, 122904], [122907, 122913], [122915, 122916], [122918, 122922],
421    [125136, 125142], [125252, 125258], [917536, 917631], [917760, 917999]**/
422    const UnicodeSet extend_Set
423        {{{Empty, 24}, {Full, 3}, {Mixed, 1}, {Empty, 8}, {Mixed, 1},
424          {Empty, 7}, {Mixed, 3}, {Empty, 1}, {Mixed, 1}, {Empty, 1},
425          {Mixed, 2}, {Empty, 2}, {Mixed, 5}, {Empty, 2}, {Mixed, 1},
426          {Empty, 1}, {Mixed, 4}, {Empty, 3}, {Mixed, 25}, {Empty, 1},
427          {Mixed, 13}, {Empty, 1}, {Mixed, 2}, {Empty, 1}, {Mixed, 2},
428          {Empty, 2}, {Mixed, 2}, {Empty, 1}, {Mixed, 2}, {Empty, 1},
429          {Mixed, 4}, {Empty, 2}, {Mixed, 4}, {Empty, 21}, {Mixed, 1},
430          {Empty, 29}, {Mixed, 4}, {Empty, 1}, {Mixed, 2}, {Empty, 1},
431          {Mixed, 1}, {Empty, 3}, {Mixed, 2}, {Empty, 3}, {Mixed, 1},
432          {Empty, 6}, {Mixed, 1}, {Empty, 1}, {Mixed, 2}, {Empty, 1},
433          {Mixed, 1}, {Empty, 2}, {Mixed, 6}, {Empty, 1}, {Mixed, 1},
434          {Empty, 1}, {Mixed, 1}, {Empty, 4}, {Mixed, 2}, {Empty, 6},
435          {Full, 1}, {Mixed, 1}, {Empty, 16}, {Mixed, 1}, {Empty, 5},
436          {Mixed, 2}, {Empty, 95}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
437          {Empty, 3}, {Full, 1}, {Empty, 17}, {Mixed, 1}, {Empty, 2},
438          {Mixed, 1}, {Empty, 942}, {Mixed, 2}, {Empty, 2}, {Mixed, 1},
439          {Empty, 8}, {Mixed, 2}, {Empty, 2}, {Mixed, 4}, {Empty, 1},
440          {Mixed, 2}, {Empty, 1}, {Mixed, 4}, {Empty, 1}, {Mixed, 3},
441          {Empty, 1}, {Mixed, 3}, {Empty, 7}, {Mixed, 1}, {Empty, 632},
442          {Mixed, 1}, {Empty, 23}, {Mixed, 2}, {Empty, 10}, {Mixed, 1},
443          {Empty, 18}, {Mixed, 1}, {Empty, 7}, {Mixed, 1}, {Empty, 3},
444          {Mixed, 1}, {Empty, 52}, {Mixed, 2}, {Empty, 5}, {Mixed, 1},
445          {Empty, 40}, {Mixed, 6}, {Empty, 2}, {Mixed, 2}, {Empty, 1},
446          {Mixed, 4}, {Empty, 2}, {Mixed, 1}, {Empty, 4}, {Mixed, 6},
447          {Empty, 5}, {Mixed, 2}, {Empty, 2}, {Mixed, 2}, {Empty, 6},
448          {Mixed, 2}, {Empty, 2}, {Mixed, 2}, {Empty, 2}, {Mixed, 1},
449          {Empty, 2}, {Mixed, 2}, {Empty, 39}, {Mixed, 1}, {Empty, 2},
450          {Mixed, 2}, {Empty, 625}, {Mixed, 1}, {Empty, 1}, {Mixed, 1},
451          {Empty, 32}, {Mixed, 3}, {Empty, 615}, {Mixed, 1}, {Empty, 166},
452          {Mixed, 3}, {Empty, 4}, {Mixed, 1}, {Empty, 61}, {Full, 1},
453          {Mixed, 1}, {Full, 1}, {Mixed, 3}, {Empty, 42}, {Mixed, 2},
454          {Empty, 68}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 24758},
455          {Full, 3}, {Empty, 4}, {Full, 7}, {Mixed, 1}, {Empty, 6128}},
456         {0x0000ffff, 0x000003f8, 0xfffe0000, 0xbfffffff, 0x000000b6,
457          0x07ff0000, 0xfffff800, 0x00010000, 0x9fc00000, 0x00003d9f,
458          0x00020000, 0xffff0000, 0x000007ff, 0x0001ffc0, 0x000ff800,
459          0xfbc00000, 0x00003eef, 0x0e000000, 0xfff00000, 0xfffffffb,
460          0x0000000f, 0xdc000000, 0x00feffff, 0x0000000c, 0x0000000e,
461          0xd0000000, 0x0080399f, 0x0000000c, 0x0000000e, 0xd0000000,
462          0x00023987, 0x00230000, 0x0000000e, 0xd0000000, 0x00003bbf,
463          0x0000000c, 0x0000000e, 0xd0000000, 0x00c0399f, 0x0000000c,
464          0x00000004, 0xc0000000, 0x00803dc7, 0x0000000f, 0xc0000000,
465          0x00603ddf, 0x0000000c, 0x0000000e, 0xd0000000, 0x00603ddf,
466          0x0000000c, 0x0000000e, 0xc0000000, 0x00803ddf, 0x0000000c,
467          0x0000000c, 0xff5f8400, 0x000c0000, 0x07f20000, 0x00007f80,
468          0x1bf20000, 0x00003f00, 0x03000000, 0xc2a00000, 0xfffe0000,
469          0xfeffe0df, 0x1fffffff, 0x00000040, 0x7ffff800, 0xc3c00000,
470          0x001e3f9d, 0x3c00bffc, 0xe0000000, 0x001c0000, 0x001c0000,
471          0x000c0000, 0x000c0000, 0xfff00000, 0x200fffff, 0x00003800,
472          0x00000060, 0x00000200, 0x0fff0fff, 0x0f800000, 0x7fe00000,
473          0x9fffffff, 0x7fff0000, 0x0000001f, 0xfff00000, 0x0000001f,
474          0x000ff800, 0x00000007, 0x00003ffe, 0x000fffc0, 0x00fffff0,
475          0xfff70000, 0x031c21ff, 0xf83fffff, 0x00001000, 0xffff0000,
476          0x0001ffff, 0x00038000, 0x80000000, 0x0000fc00, 0x06000000,
477          0x3ff78000, 0xc0000000, 0x00030000, 0x00000844, 0x000000f8,
478          0x00000003, 0xfff00000, 0x0000003f, 0x0003ffff, 0x00003fc0,
479          0x000fff80, 0x0000000f, 0xfff80000, 0x00000001, 0x00000020,
480          0x007ffe00, 0x00003008, 0x38000000, 0xc19d0000, 0x00000002,
481          0x0060f800, 0x000037f8, 0x40000000, 0x0000ffff, 0x0000ffff,
482          0xc0000000, 0x20000000, 0x00000001, 0x07c00000, 0x0000f06e,
483          0x87000000, 0x00000060, 0x00000007, 0xff000000, 0x0000007f,
484          0x80000000, 0x00000007, 0x07ff0000, 0x00000007, 0x001fff80,
485          0x00080000, 0x00000007, 0xfff80000, 0x00001c01, 0x40fff000,
486          0x80000000, 0x000007ff, 0x0000000f, 0xd0000000, 0x0080399f,
487          0x001f1fcc, 0xffe00000, 0x0000007f, 0xffff0000, 0x0000000f,
488          0xff3f8000, 0x30000001, 0xffff0000, 0x00000001, 0x00fff800,
489          0xe0000000, 0x00000fff, 0xff7f8000, 0xfffc0000, 0x007ffeff,
490          0x001f0000, 0x007f0000, 0xfffe0000, 0x7fffffff, 0x00078000,
491          0x60000000, 0xf807e3e0, 0x00000fe7, 0x00003c00, 0x0000001c,
492          0xf87fffff, 0x00201fff, 0xf8000010, 0x0000fffe, 0xf9ffff7f,
493          0x000007db, 0x007f0000, 0x000007f0, 0x0000ffff}};
494    /** Code Point Ranges for RI
495    [127462, 127487]**/
496    const UnicodeSet ri_Set
497        {{{Empty, 3983}, {Mixed, 1}, {Empty, 30832}},
498         {0xffffffc0}};
499    /** Code Point Ranges for FO
500    [173, 173], [1536, 1541], [1564, 1564], [1757, 1757], [1807, 1807],
501    [2274, 2274], [6158, 6158], [8206, 8207], [8234, 8238], [8288, 8292],
502    [8294, 8303], [65279, 65279], [65529, 65531], [69821, 69821],
503    [113824, 113827], [119155, 119162], [917505, 917505]**/
504    const UnicodeSet fo_Set
505        {{{Empty, 5}, {Mixed, 1}, {Empty, 42}, {Mixed, 1}, {Empty, 5},
506          {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 14}, {Mixed, 1},
507          {Empty, 120}, {Mixed, 1}, {Empty, 63}, {Mixed, 2}, {Empty, 1},
508          {Mixed, 1}, {Empty, 1779}, {Mixed, 1}, {Empty, 7}, {Mixed, 1},
509          {Empty, 133}, {Mixed, 1}, {Empty, 1375}, {Mixed, 1}, {Empty, 165},
510          {Mixed, 1}, {Empty, 24948}, {Mixed, 1}, {Empty, 6143}},
511         {0x00002000, 0x1000003f, 0x20000000, 0x00008000, 0x00000004,
512          0x00004000, 0x0000c000, 0x00007c00, 0x0000ffdf, 0x80000000,
513          0x0e000000, 0x20000000, 0x0000000f, 0x07f80000, 0x00000002}};
514    /** Code Point Ranges for KA
515    [12337, 12341], [12443, 12444], [12448, 12538], [12540, 12543],
516    [12784, 12799], [13008, 13054], [13056, 13143], [65382, 65437],
517    [110592, 110592]**/
518    const UnicodeSet ka_Set
519        {{{Empty, 385}, {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Full, 2},
520          {Mixed, 1}, {Empty, 7}, {Mixed, 1}, {Empty, 6}, {Mixed, 2},
521          {Full, 2}, {Mixed, 1}, {Empty, 1632}, {Mixed, 2}, {Empty, 1411},
522          {Mixed, 1}, {Empty, 31359}},
523         {0x003e0000, 0x18000000, 0xf7ffffff, 0xffff0000, 0xffff0000,
524          0x7fffffff, 0x00ffffff, 0xffffffc0, 0x3fffffff, 0x00000001}};
525    /** Code Point Ranges for LE
526    [65, 90], [97, 122], [170, 170], [181, 181], [186, 186], [192, 214],
527    [216, 246], [248, 705], [710, 721], [736, 740], [748, 748], [750, 750],
528    [880, 884], [886, 887], [890, 893], [895, 895], [902, 902], [904, 906],
529    [908, 908], [910, 929], [931, 1013], [1015, 1153], [1162, 1327],
530    [1329, 1366], [1369, 1369], [1377, 1415], [1523, 1523], [1568, 1610],
531    [1646, 1647], [1649, 1747], [1749, 1749], [1765, 1766], [1774, 1775],
532    [1786, 1788], [1791, 1791], [1808, 1808], [1810, 1839], [1869, 1957],
533    [1969, 1969], [1994, 2026], [2036, 2037], [2042, 2042], [2048, 2069],
534    [2074, 2074], [2084, 2084], [2088, 2088], [2112, 2136], [2208, 2228],
535    [2230, 2237], [2308, 2361], [2365, 2365], [2384, 2384], [2392, 2401],
536    [2417, 2432], [2437, 2444], [2447, 2448], [2451, 2472], [2474, 2480],
537    [2482, 2482], [2486, 2489], [2493, 2493], [2510, 2510], [2524, 2525],
538    [2527, 2529], [2544, 2545], [2565, 2570], [2575, 2576], [2579, 2600],
539    [2602, 2608], [2610, 2611], [2613, 2614], [2616, 2617], [2649, 2652],
540    [2654, 2654], [2674, 2676], [2693, 2701], [2703, 2705], [2707, 2728],
541    [2730, 2736], [2738, 2739], [2741, 2745], [2749, 2749], [2768, 2768],
542    [2784, 2785], [2809, 2809], [2821, 2828], [2831, 2832], [2835, 2856],
543    [2858, 2864], [2866, 2867], [2869, 2873], [2877, 2877], [2908, 2909],
544    [2911, 2913], [2929, 2929], [2947, 2947], [2949, 2954], [2958, 2960],
545    [2962, 2965], [2969, 2970], [2972, 2972], [2974, 2975], [2979, 2980],
546    [2984, 2986], [2990, 3001], [3024, 3024], [3077, 3084], [3086, 3088],
547    [3090, 3112], [3114, 3129], [3133, 3133], [3160, 3162], [3168, 3169],
548    [3200, 3200], [3205, 3212], [3214, 3216], [3218, 3240], [3242, 3251],
549    [3253, 3257], [3261, 3261], [3294, 3294], [3296, 3297], [3313, 3314],
550    [3333, 3340], [3342, 3344], [3346, 3386], [3389, 3389], [3406, 3406],
551    [3412, 3414], [3423, 3425], [3450, 3455], [3461, 3478], [3482, 3505],
552    [3507, 3515], [3517, 3517], [3520, 3526], [3840, 3840], [3904, 3911],
553    [3913, 3948], [3976, 3980], [4256, 4293], [4295, 4295], [4301, 4301],
554    [4304, 4346], [4348, 4680], [4682, 4685], [4688, 4694], [4696, 4696],
555    [4698, 4701], [4704, 4744], [4746, 4749], [4752, 4784], [4786, 4789],
556    [4792, 4798], [4800, 4800], [4802, 4805], [4808, 4822], [4824, 4880],
557    [4882, 4885], [4888, 4954], [4992, 5007], [5024, 5109], [5112, 5117],
558    [5121, 5740], [5743, 5759], [5761, 5786], [5792, 5866], [5870, 5880],
559    [5888, 5900], [5902, 5905], [5920, 5937], [5952, 5969], [5984, 5996],
560    [5998, 6000], [6176, 6263], [6272, 6276], [6279, 6312], [6314, 6314],
561    [6320, 6389], [6400, 6430], [6656, 6678], [6917, 6963], [6981, 6987],
562    [7043, 7072], [7086, 7087], [7098, 7141], [7168, 7203], [7245, 7247],
563    [7258, 7293], [7296, 7304], [7401, 7404], [7406, 7409], [7413, 7414],
564    [7424, 7615], [7680, 7957], [7960, 7965], [7968, 8005], [8008, 8013],
565    [8016, 8023], [8025, 8025], [8027, 8027], [8029, 8029], [8031, 8061],
566    [8064, 8116], [8118, 8124], [8126, 8126], [8130, 8132], [8134, 8140],
567    [8144, 8147], [8150, 8155], [8160, 8172], [8178, 8180], [8182, 8188],
568    [8305, 8305], [8319, 8319], [8336, 8348], [8450, 8450], [8455, 8455],
569    [8458, 8467], [8469, 8469], [8473, 8477], [8484, 8484], [8486, 8486],
570    [8488, 8488], [8490, 8493], [8495, 8505], [8508, 8511], [8517, 8521],
571    [8526, 8526], [8544, 8584], [9398, 9449], [11264, 11310],
572    [11312, 11358], [11360, 11492], [11499, 11502], [11506, 11507],
573    [11520, 11557], [11559, 11559], [11565, 11565], [11568, 11623],
574    [11631, 11631], [11648, 11670], [11680, 11686], [11688, 11694],
575    [11696, 11702], [11704, 11710], [11712, 11718], [11720, 11726],
576    [11728, 11734], [11736, 11742], [11823, 11823], [12293, 12293],
577    [12347, 12348], [12549, 12589], [12593, 12686], [12704, 12730],
578    [40960, 42124], [42192, 42237], [42240, 42508], [42512, 42527],
579    [42538, 42539], [42560, 42606], [42623, 42653], [42656, 42735],
580    [42775, 42783], [42786, 42888], [42891, 42926], [42928, 42935],
581    [42999, 43009], [43011, 43013], [43015, 43018], [43020, 43042],
582    [43072, 43123], [43138, 43187], [43250, 43255], [43259, 43259],
583    [43261, 43261], [43274, 43301], [43312, 43334], [43360, 43388],
584    [43396, 43442], [43471, 43471], [43520, 43560], [43584, 43586],
585    [43588, 43595], [43744, 43754], [43762, 43764], [43777, 43782],
586    [43785, 43790], [43793, 43798], [43808, 43814], [43816, 43822],
587    [43824, 43866], [43868, 43877], [43888, 44002], [44032, 55203],
588    [55216, 55238], [55243, 55291], [64256, 64262], [64275, 64279],
589    [64336, 64433], [64467, 64829], [64848, 64911], [64914, 64967],
590    [65008, 65019], [65136, 65140], [65142, 65276], [65313, 65338],
591    [65345, 65370], [65440, 65470], [65474, 65479], [65482, 65487],
592    [65490, 65495], [65498, 65500], [65536, 65547], [65549, 65574],
593    [65576, 65594], [65596, 65597], [65599, 65613], [65616, 65629],
594    [65664, 65786], [65856, 65908], [66176, 66204], [66208, 66256],
595    [66304, 66335], [66352, 66378], [66384, 66421], [66432, 66461],
596    [66464, 66499], [66504, 66511], [66513, 66517], [66560, 66717],
597    [66736, 66771], [66776, 66811], [66816, 66855], [66864, 66915],
598    [67072, 67382], [67392, 67413], [67424, 67431], [67584, 67589],
599    [67592, 67592], [67594, 67637], [67639, 67640], [67644, 67644],
600    [67647, 67669], [67680, 67702], [67712, 67742], [67808, 67826],
601    [67828, 67829], [67840, 67861], [67872, 67897], [67968, 68023],
602    [68030, 68031], [68096, 68096], [68112, 68115], [68117, 68119],
603    [68121, 68147], [68192, 68220], [68224, 68252], [68288, 68295],
604    [68297, 68324], [68352, 68405], [68416, 68437], [68448, 68466],
605    [68480, 68497], [68608, 68680], [68736, 68786], [68800, 68850],
606    [69635, 69687], [69763, 69807], [69840, 69864], [69891, 69926],
607    [69968, 70002], [70006, 70006], [70019, 70066], [70081, 70084],
608    [70106, 70106], [70108, 70108], [70144, 70161], [70163, 70187],
609    [70272, 70278], [70280, 70280], [70282, 70285], [70287, 70301],
610    [70303, 70312], [70320, 70366], [70405, 70412], [70415, 70416],
611    [70419, 70440], [70442, 70448], [70450, 70451], [70453, 70457],
612    [70461, 70461], [70480, 70480], [70493, 70497], [70656, 70708],
613    [70727, 70730], [70784, 70831], [70852, 70853], [70855, 70855],
614    [71040, 71086], [71128, 71131], [71168, 71215], [71236, 71236],
615    [71296, 71338], [71840, 71903], [71935, 71935], [72384, 72440],
616    [72704, 72712], [72714, 72750], [72768, 72768], [72818, 72847],
617    [73728, 74649], [74752, 74862], [74880, 75075], [77824, 78894],
618    [82944, 83526], [92160, 92728], [92736, 92766], [92880, 92909],
619    [92928, 92975], [92992, 92995], [93027, 93047], [93053, 93071],
620    [93952, 94020], [94032, 94032], [94099, 94111], [94176, 94176],
621    [113664, 113770], [113776, 113788], [113792, 113800], [113808, 113817],
622    [119808, 119892], [119894, 119964], [119966, 119967], [119970, 119970],
623    [119973, 119974], [119977, 119980], [119982, 119993], [119995, 119995],
624    [119997, 120003], [120005, 120069], [120071, 120074], [120077, 120084],
625    [120086, 120092], [120094, 120121], [120123, 120126], [120128, 120132],
626    [120134, 120134], [120138, 120144], [120146, 120485], [120488, 120512],
627    [120514, 120538], [120540, 120570], [120572, 120596], [120598, 120628],
628    [120630, 120654], [120656, 120686], [120688, 120712], [120714, 120744],
629    [120746, 120770], [120772, 120779], [124928, 125124], [125184, 125251],
630    [126464, 126467], [126469, 126495], [126497, 126498], [126500, 126500],
631    [126503, 126503], [126505, 126514], [126516, 126519], [126521, 126521],
632    [126523, 126523], [126530, 126530], [126535, 126535], [126537, 126537],
633    [126539, 126539], [126541, 126543], [126545, 126546], [126548, 126548],
634    [126551, 126551], [126553, 126553], [126555, 126555], [126557, 126557],
635    [126559, 126559], [126561, 126562], [126564, 126564], [126567, 126570],
636    [126572, 126578], [126580, 126583], [126585, 126588], [126590, 126590],
637    [126592, 126601], [126603, 126619], [126625, 126627], [126629, 126633],
638    [126635, 126651], [127280, 127305], [127312, 127337], [127344, 127369]**/
639    const UnicodeSet le_Set
640        {{{Empty, 2}, {Mixed, 2}, {Empty, 1}, {Mixed, 3}, {Full, 14},
641          {Mixed, 2}, {Empty, 3}, {Mixed, 3}, {Full, 1}, {Mixed, 1},
642          {Full, 4}, {Mixed, 1}, {Full, 4}, {Mixed, 4}, {Empty, 2},
643          {Mixed, 1}, {Empty, 1}, {Full, 1}, {Mixed, 2}, {Full, 2},
644          {Mixed, 5}, {Full, 2}, {Mixed, 6}, {Empty, 2}, {Mixed, 1},
645          {Empty, 2}, {Mixed, 23}, {Empty, 1}, {Mixed, 15}, {Empty, 9},
646          {Mixed, 1}, {Empty, 1}, {Mixed, 3}, {Empty, 8}, {Full, 1},
647          {Mixed, 2}, {Full, 10}, {Mixed, 1}, {Full, 1}, {Mixed, 3},
648          {Full, 1}, {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Empty, 1},
649          {Mixed, 1}, {Full, 2}, {Mixed, 2}, {Full, 18}, {Mixed, 2},
650          {Full, 2}, {Mixed, 5}, {Empty, 5}, {Full, 2}, {Mixed, 3},
651          {Full, 1}, {Mixed, 2}, {Empty, 7}, {Mixed, 1}, {Empty, 7},
652          {Mixed, 3}, {Empty, 1}, {Mixed, 2}, {Full, 1}, {Mixed, 1},
653          {Full, 1}, {Mixed, 4}, {Empty, 2}, {Mixed, 1}, {Full, 6},
654          {Empty, 2}, {Full, 8}, {Mixed, 1}, {Full, 1}, {Mixed, 2},
655          {Full, 1}, {Mixed, 3}, {Empty, 3}, {Mixed, 2}, {Empty, 3},
656          {Mixed, 3}, {Full, 1}, {Mixed, 1}, {Empty, 24}, {Mixed, 1},
657          {Full, 1}, {Mixed, 1}, {Empty, 56}, {Full, 1}, {Mixed, 2},
658          {Full, 4}, {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Full, 1},
659          {Mixed, 4}, {Empty, 2}, {Mixed, 1}, {Empty, 14}, {Mixed, 2},
660          {Empty, 6}, {Mixed, 2}, {Full, 2}, {Mixed, 2}, {Empty, 882},
661          {Full, 36}, {Mixed, 1}, {Empty, 1}, {Mixed, 2}, {Full, 8},
662          {Mixed, 2}, {Full, 1}, {Mixed, 2}, {Full, 2}, {Mixed, 3},
663          {Full, 2}, {Mixed, 2}, {Empty, 1}, {Mixed, 3}, {Full, 1},
664          {Mixed, 3}, {Empty, 1}, {Mixed, 8}, {Empty, 1}, {Full, 1},
665          {Mixed, 2}, {Empty, 4}, {Mixed, 5}, {Full, 3}, {Mixed, 1},
666          {Full, 349}, {Mixed, 3}, {Empty, 280}, {Mixed, 1}, {Empty, 1},
667          {Mixed, 1}, {Full, 2}, {Mixed, 2}, {Full, 10}, {Mixed, 2},
668          {Full, 1}, {Mixed, 1}, {Full, 1}, {Mixed, 2}, {Empty, 3},
669          {Mixed, 1}, {Full, 3}, {Mixed, 1}, {Empty, 1}, {Mixed, 2},
670          {Empty, 2}, {Mixed, 2}, {Empty, 1}, {Mixed, 3}, {Empty, 1},
671          {Full, 3}, {Mixed, 1}, {Empty, 2}, {Full, 1}, {Mixed, 1},
672          {Empty, 8}, {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Empty, 1},
673          {Full, 1}, {Mixed, 4}, {Full, 1}, {Mixed, 1}, {Empty, 1},
674          {Full, 4}, {Mixed, 4}, {Full, 1}, {Mixed, 1}, {Full, 1},
675          {Mixed, 1}, {Empty, 4}, {Full, 9}, {Mixed, 3}, {Empty, 4},
676          {Mixed, 5}, {Empty, 2}, {Mixed, 3}, {Empty, 2}, {Full, 1},
677          {Mixed, 1}, {Empty, 2}, {Mixed, 2}, {Empty, 1}, {Mixed, 2},
678          {Empty, 1}, {Mixed, 2}, {Full, 1}, {Mixed, 4}, {Empty, 3},
679          {Full, 2}, {Mixed, 1}, {Empty, 1}, {Full, 1}, {Mixed, 1},
680          {Full, 1}, {Mixed, 1}, {Empty, 24}, {Mixed, 2}, {Empty, 2},
681          {Mixed, 11}, {Empty, 1}, {Mixed, 2}, {Empty, 2}, {Mixed, 3},
682          {Empty, 1}, {Mixed, 4}, {Empty, 4}, {Full, 1}, {Mixed, 2},
683          {Empty, 1}, {Full, 1}, {Mixed, 2}, {Empty, 5}, {Full, 1},
684          {Mixed, 2}, {Empty, 1}, {Full, 1}, {Mixed, 2}, {Empty, 1},
685          {Full, 1}, {Mixed, 1}, {Empty, 15}, {Full, 2}, {Mixed, 1},
686          {Empty, 14}, {Full, 1}, {Mixed, 1}, {Empty, 8}, {Mixed, 5},
687          {Empty, 27}, {Full, 28}, {Mixed, 1}, {Empty, 3}, {Full, 3},
688          {Mixed, 1}, {Full, 6}, {Mixed, 1}, {Empty, 85}, {Full, 33},
689          {Mixed, 1}, {Empty, 126}, {Full, 18}, {Mixed, 1}, {Empty, 269},
690          {Full, 17}, {Mixed, 2}, {Empty, 3}, {Mixed, 2}, {Full, 1},
691          {Mixed, 4}, {Empty, 27}, {Full, 2}, {Mixed, 1}, {Empty, 1},
692          {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Empty, 608}, {Full, 3},
693          {Mixed, 2}, {Empty, 187}, {Full, 2}, {Mixed, 1}, {Full, 1},
694          {Mixed, 3}, {Full, 1}, {Mixed, 3}, {Full, 10}, {Mixed, 10},
695          {Empty, 129}, {Full, 6}, {Mixed, 1}, {Empty, 1}, {Full, 2},
696          {Mixed, 1}, {Empty, 37}, {Mixed, 6}, {Empty, 19}, {Mixed, 4},
697          {Empty, 30835}},
698         {0x07fffffe, 0x07fffffe, 0x04200400, 0xff7fffff, 0xff7fffff,
699          0x0003ffc3, 0x0000501f, 0xbcdf0000, 0xffffd740, 0xfffffffb,
700          0xffbfffff, 0xfffffc03, 0xfffeffff, 0x027fffff, 0xfffffffe,
701          0x000000ff, 0x00080000, 0x000007ff, 0xfffec000, 0x002fffff,
702          0x9c00c060, 0xfffd0000, 0x0000ffff, 0xffffe000, 0x0002003f,
703          0xfffffc00, 0x043007ff, 0x043fffff, 0x00000110, 0x01ffffff,
704          0x3fdfffff, 0xfffffff0, 0x23ffffff, 0xff010000, 0xfffe0003,
705          0xfff99fe1, 0x23c5fdff, 0xb0004000, 0x00030003, 0xfff987e0,
706          0x036dfdff, 0x5e000000, 0x001c0000, 0xfffbbfe0, 0x23edfdff,
707          0x00010000, 0x02000003, 0xfff99fe0, 0x23edfdff, 0xb0000000,
708          0x00020003, 0xd63dc7e8, 0x03ffc718, 0x00010000, 0xfffddfe0,
709          0x23fffdff, 0x07000000, 0x00000003, 0xfffddfe1, 0x23effdff,
710          0x40000000, 0x00060003, 0xfffddfe0, 0x27ffffff, 0x80704000,
711          0xfc000003, 0xfc7fffe0, 0x2ffbffff, 0x0000007f, 0x00000001,
712          0xfffffeff, 0x00001fff, 0x00001f00, 0xffff20bf, 0xf7ffffff,
713          0x3d7f3dff, 0xffff3dff, 0x7f3dffff, 0xff7fff3d, 0xff3dffff,
714          0x07ffffff, 0x0000ffff, 0x3f3fffff, 0xfffffffe, 0xffff9fff,
715          0x07fffffe, 0x01ffc7ff, 0x0003dfff, 0x0003ffff, 0x0003ffff,
716          0x0001dfff, 0x00ffffff, 0xffffff9f, 0xffff05ff, 0x003fffff,
717          0x7fffffff, 0x007fffff, 0xffffffe0, 0x000fffff, 0x00000fe0,
718          0xfffffff8, 0xfc00c001, 0x0000003f, 0x0000000f, 0xfc00e000,
719          0x3fffffff, 0x000001ff, 0x0063de00, 0x3f3fffff, 0xaaff3f3f,
720          0x3fffffff, 0x5fdfffff, 0x0fcf1fdc, 0x1fdc1fff, 0x80020000,
721          0x1fff0000, 0x3e2ffc84, 0xf3ffbd50, 0x000043e0, 0x000001ff,
722          0xffc00000, 0x000003ff, 0xffff7fff, 0x7fffffff, 0x000c781f,
723          0xffff20bf, 0x000080ff, 0x007fffff, 0x7f7f7f7f, 0x7f7f7f7f,
724          0x00008000, 0x00000020, 0x18000000, 0xffffffe0, 0xfffe3fff,
725          0x00007fff, 0x07ffffff, 0x00001fff, 0xffff0000, 0x3fffffff,
726          0xffff1fff, 0x00000c00, 0x80007fff, 0x3fffffff, 0x0000ffff,
727          0xff800000, 0xfffffffc, 0xfffff9ff, 0x00ff7fff, 0xff800000,
728          0xfffff7bb, 0x00000007, 0x000fffff, 0xfffffffc, 0x000fffff,
729          0x28fc0000, 0xfffffc00, 0xffff003f, 0x0000007f, 0x1fffffff,
730          0xfffffff0, 0x0007ffff, 0x00008000, 0x000001ff, 0x00000ff7,
731          0x001c07ff, 0x007e7e7e, 0xffff7f7f, 0xf7ffffff, 0xffff003f,
732          0x00000007, 0xffff000f, 0xfffff87f, 0x0fffffff, 0x00f8007f,
733          0xffff0000, 0x0003ffff, 0xfff80000, 0x3fffffff, 0xffff0000,
734          0xfffcffff, 0x000000ff, 0x0fff0000, 0xffdf0000, 0x1fffffff,
735          0x07fffffe, 0x07fffffe, 0x7fffffff, 0x1cfcfcfc, 0xffffefff,
736          0xb7ffff7f, 0x3fff3fff, 0x07ffffff, 0x001fffff, 0x1fffffff,
737          0x0001ffff, 0xffff0000, 0xffff07ff, 0x003fffff, 0x3fffffff,
738          0x003eff0f, 0x3fffffff, 0xffff0000, 0xff0fffff, 0x0fffffff,
739          0xffff00ff, 0x0000000f, 0x007fffff, 0x003fffff, 0x000000ff,
740          0xfffffd3f, 0x91bfffff, 0x003fffff, 0x007fffff, 0x7fffffff,
741          0x0037ffff, 0x003fffff, 0x03ffffff, 0xc0ffffff, 0xfeef0001,
742          0x000fffff, 0x1fffffff, 0x1fffffff, 0xfffffeff, 0x0000001f,
743          0x003fffff, 0x003fffff, 0x0007ffff, 0x0003ffff, 0x000001ff,
744          0x0007ffff, 0x0007ffff, 0xfffffff8, 0x00ffffff, 0xfffffff8,
745          0x0000ffff, 0xffff0000, 0x000001ff, 0xfffffff8, 0x0000007f,
746          0xffff0000, 0x0047ffff, 0xfffffff8, 0x0007ffff, 0x1400001e,
747          0xfffbffff, 0x00000fff, 0xbfffbd7f, 0xffff01ff, 0x7fffffff,
748          0xfff99fe0, 0x23edfdff, 0xe0010000, 0x00000003, 0x001fffff,
749          0x00000780, 0x0000ffff, 0x000000b0, 0x00007fff, 0x0f000000,
750          0x0000ffff, 0x00000010, 0x000007ff, 0x80000000, 0x01ffffff,
751          0xfffffdff, 0x00007fff, 0x00000001, 0xfffc0000, 0x0000ffff,
752          0x03ffffff, 0x00007fff, 0x0000000f, 0x00007fff, 0x0000007f,
753          0x01ffffff, 0x7fffffff, 0xffff0000, 0x00003fff, 0x0000ffff,
754          0x0000000f, 0xe0fffff8, 0x0000ffff, 0x0001001f, 0xfff80000,
755          0x00000001, 0x1fff07ff, 0x03ff01ff, 0xffdfffff, 0xdfffffff,
756          0xebffde64, 0xffffffef, 0xdfdfe7bf, 0x7bffffff, 0xfffdfc5f,
757          0xffffff3f, 0xf7fffffd, 0xf7ffffff, 0xffdfffff, 0xffdfffff,
758          0xffff7fff, 0xffff7fff, 0xfffffdff, 0xfffffdff, 0x00000ff7,
759          0x0000001f, 0x0000000f, 0xffffffef, 0x0af7fe96, 0xaa96ea84,
760          0x5ef7f796, 0x0ffffbff, 0x0ffffbee, 0xffff0000, 0xffff03ff,
761          0xffff03ff, 0x000003ff}};
762    /** Code Point Ranges for ML
763    [58, 58], [183, 183], [727, 727], [903, 903], [1524, 1524],
764    [8231, 8231], [65043, 65043], [65109, 65109], [65306, 65306]**/
765    const UnicodeSet ml_Set
766        {{{Empty, 1}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 16},
767          {Mixed, 1}, {Empty, 5}, {Mixed, 1}, {Empty, 18}, {Mixed, 1},
768          {Empty, 209}, {Mixed, 1}, {Empty, 1774}, {Mixed, 1}, {Empty, 1},
769          {Mixed, 1}, {Empty, 5}, {Mixed, 1}, {Empty, 32775}},
770         {0x04000000, 0x00800000, 0x00800000, 0x00000080, 0x00100000,
771          0x00000080, 0x00080000, 0x00200000, 0x04000000}};
772    /** Code Point Ranges for MN
773    [44, 44], [59, 59], [894, 894], [1417, 1417], [1548, 1549],
774    [1644, 1644], [2040, 2040], [8260, 8260], [65040, 65040],
775    [65044, 65044], [65104, 65104], [65108, 65108], [65292, 65292],
776    [65307, 65307]**/
777    const UnicodeSet mn_Set
778        {{{Empty, 1}, {Mixed, 1}, {Empty, 25}, {Mixed, 1}, {Empty, 16},
779          {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 2}, {Mixed, 1},
780          {Empty, 11}, {Mixed, 1}, {Empty, 194}, {Mixed, 1}, {Empty, 1773},
781          {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 5}, {Mixed, 1},
782          {Empty, 32775}},
783         {0x08001000, 0x40000000, 0x00000200, 0x00003000, 0x00001000,
784          0x01000000, 0x00000010, 0x00110000, 0x00110000, 0x08001000}};
785    /** Code Point Ranges for MB
786    [46, 46], [8216, 8217], [8228, 8228], [65106, 65106], [65287, 65287],
787    [65294, 65294]**/
788    const UnicodeSet mb_Set
789        {{{Empty, 1}, {Mixed, 1}, {Empty, 254}, {Mixed, 2}, {Empty, 1776},
790          {Mixed, 1}, {Empty, 5}, {Mixed, 1}, {Empty, 32775}},
791         {0x00004000, 0x03000000, 0x00000010, 0x00040000, 0x00004080}};
792    /** Code Point Ranges for NU
793    [48, 57], [1632, 1641], [1643, 1643], [1776, 1785], [1984, 1993],
794    [2406, 2415], [2534, 2543], [2662, 2671], [2790, 2799], [2918, 2927],
795    [3046, 3055], [3174, 3183], [3302, 3311], [3430, 3439], [3558, 3567],
796    [3664, 3673], [3792, 3801], [3872, 3881], [4160, 4169], [4240, 4249],
797    [6112, 6121], [6160, 6169], [6470, 6479], [6608, 6617], [6784, 6793],
798    [6800, 6809], [6992, 7001], [7088, 7097], [7232, 7241], [7248, 7257],
799    [42528, 42537], [43216, 43225], [43264, 43273], [43472, 43481],
800    [43504, 43513], [43600, 43609], [44016, 44025], [66720, 66729],
801    [69734, 69743], [69872, 69881], [69942, 69951], [70096, 70105],
802    [70384, 70393], [70736, 70745], [70864, 70873], [71248, 71257],
803    [71360, 71369], [71472, 71481], [71904, 71913], [72784, 72793],
804    [92768, 92777], [93008, 93017], [120782, 120831], [125264, 125273]**/
805    const UnicodeSet nu_Set
806        {{{Empty, 1}, {Mixed, 1}, {Empty, 49}, {Mixed, 1}, {Empty, 3},
807          {Mixed, 1}, {Empty, 6}, {Mixed, 1}, {Empty, 12}, {Mixed, 1},
808          {Empty, 3}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 3},
809          {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
810          {Empty, 3}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 3},
811          {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 2}, {Mixed, 1},
812          {Empty, 3}, {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Empty, 8},
813          {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 58}, {Mixed, 2},
814          {Empty, 9}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 5},
815          {Mixed, 1}, {Empty, 5}, {Mixed, 1}, {Empty, 2}, {Mixed, 1},
816          {Empty, 4}, {Mixed, 1}, {Empty, 1102}, {Mixed, 1}, {Empty, 20},
817          {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 5}, {Mixed, 2},
818          {Empty, 2}, {Mixed, 1}, {Empty, 12}, {Mixed, 1}, {Empty, 709},
819          {Mixed, 1}, {Empty, 93}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
820          {Empty, 1}, {Mixed, 1}, {Empty, 4}, {Mixed, 1}, {Empty, 8},
821          {Mixed, 1}, {Empty, 10}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
822          {Empty, 11}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 2},
823          {Mixed, 1}, {Empty, 13}, {Mixed, 1}, {Empty, 26}, {Mixed, 1},
824          {Empty, 624}, {Mixed, 1}, {Empty, 6}, {Mixed, 1}, {Empty, 867},
825          {Mixed, 1}, {Full, 1}, {Empty, 138}, {Mixed, 1}, {Empty, 30901}},
826         {0x03ff0000, 0x00000bff, 0x03ff0000, 0x000003ff, 0x0000ffc0,
827          0x0000ffc0, 0x0000ffc0, 0x0000ffc0, 0x0000ffc0, 0x0000ffc0,
828          0x0000ffc0, 0x0000ffc0, 0x0000ffc0, 0x0000ffc0, 0x03ff0000,
829          0x03ff0000, 0x000003ff, 0x000003ff, 0x03ff0000, 0x000003ff,
830          0x03ff0000, 0x0000ffc0, 0x03ff0000, 0x03ff03ff, 0x03ff0000,
831          0x03ff0000, 0x03ff03ff, 0x000003ff, 0x03ff0000, 0x000003ff,
832          0x03ff0000, 0x03ff0000, 0x03ff0000, 0x03ff0000, 0x000003ff,
833          0x0000ffc0, 0x03ff0000, 0xffc00000, 0x03ff0000, 0x03ff0000,
834          0x03ff0000, 0x03ff0000, 0x03ff0000, 0x000003ff, 0x03ff0000,
835          0x000003ff, 0x03ff0000, 0x000003ff, 0x03ff0000, 0xffffc000,
836          0x03ff0000}};
837    /** Code Point Ranges for EX
838    [95, 95], [8239, 8239], [8255, 8256], [8276, 8276], [65075, 65076],
839    [65101, 65103], [65343, 65343]**/
840    const UnicodeSet ex_Set
841        {{{Empty, 2}, {Mixed, 1}, {Empty, 254}, {Mixed, 2}, {Empty, 1774},
842          {Mixed, 2}, {Empty, 6}, {Mixed, 1}, {Empty, 32774}},
843         {0x80000000, 0x80008000, 0x00100001, 0x00180000, 0x0000e000,
844          0x80000000}};
845    /** Code Point Ranges for EB
846    [9757, 9757], [9977, 9977], [9994, 9997], [127877, 127877],
847    [127939, 127940], [127946, 127947], [128066, 128067], [128070, 128080],
848    [128110, 128110], [128112, 128120], [128124, 128124], [128129, 128131],
849    [128133, 128135], [128170, 128170], [128373, 128373], [128378, 128378],
850    [128400, 128400], [128405, 128406], [128581, 128583], [128587, 128591],
851    [128675, 128675], [128692, 128694], [128704, 128704], [129304, 129310],
852    [129318, 129318], [129328, 129328], [129331, 129337], [129340, 129342]**/
853    const UnicodeSet eb_Set
854        {{{Empty, 304}, {Mixed, 1}, {Empty, 6}, {Mixed, 2}, {Empty, 3683},
855          {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 3}, {Mixed, 4},
856          {Empty, 5}, {Mixed, 2}, {Empty, 5}, {Mixed, 1}, {Empty, 2},
857          {Mixed, 2}, {Empty, 17}, {Mixed, 2}, {Empty, 30774}},
858         {0x20000000, 0x02000000, 0x00003c00, 0x00000020, 0x00000c18,
859          0x0001ffcc, 0x11ff4000, 0x000000ee, 0x00000400, 0x04200000,
860          0x00610000, 0x0000f8e0, 0x00700008, 0x00000001, 0x7f000000,
861          0x73f90040}};
862    /** Code Point Ranges for EM
863    [127995, 127999]**/
864    const UnicodeSet em_Set
865        {{{Empty, 3999}, {Mixed, 1}, {Empty, 30816}},
866         {0xf8000000}};
867    /** Code Point Ranges for ZWJ
868    [8205, 8205]**/
869    const UnicodeSet zwj_Set
870        {{{Empty, 256}, {Mixed, 1}, {Empty, 34559}},
871         {0x00002000}};
872    /** Code Point Ranges for GAZ
873    [10084, 10084], [128139, 128139], [128488, 128488]**/
874    const UnicodeSet gaz_Set
875        {{{Empty, 315}, {Mixed, 1}, {Empty, 3688}, {Mixed, 1}, {Empty, 10},
876          {Mixed, 1}, {Empty, 30800}},
877         {0x00000010, 0x00000800, 0x00000100}};
878    /** Code Point Ranges for EBG
879    [128102, 128105]**/
880    const UnicodeSet ebg_Set
881        {{{Empty, 4003}, {Mixed, 1}, {Empty, 30812}},
882         {0x000003c0}};
883    static EnumeratedPropertyObject property_object
884        {WB,
885         WB_ns::enum_names,
886         WB_ns::value_names,
887         WB_ns::aliases_only_map,
888         {&xx_Set, &dq_Set, &sq_Set, &hl_Set, &cr_Set, &lf_Set, &nl_Set,
889        &extend_Set, &ri_Set, &fo_Set, &ka_Set, &le_Set, &ml_Set, &mn_Set,
890        &mb_Set, &nu_Set, &ex_Set, &eb_Set, &em_Set, &zwj_Set, &gaz_Set,
891        &ebg_Set
892         }};
893    }
894}
895
896#endif
Note: See TracBrowser for help on using the repository browser.