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

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

Updates for Unicode 11.0 plus Emoji properties

File size: 120.2 KB
Line 
1#ifndef SCRIPTEXTENSIONS_H
2#define SCRIPTEXTENSIONS_H
3/*
4 *  Copyright (c) 2018 International Characters, Inc.
5 *  This software is licensed to the public under the Open Software License 3.0.
6 *  icgrep is a trademark of International Characters, Inc.
7 *
8 *  This file is generated by UCD_properties.py - manual edits may be lost.
9 */
10
11#include "PropertyAliases.h"
12#include "PropertyObjects.h"
13#include "PropertyValueAliases.h"
14#include "unicode_set.h"
15
16namespace UCD {
17    namespace SCX_ns {
18        /** Code Point Ranges for Zzzz
19        [0378, 0379], [0380, 0383], [038b, 038b], [038d, 038d],
20        [03a2, 03a2], [0530, 0530], [0557, 0558], [058b, 058c],
21        [0590, 0590], [05c8, 05cf], [05eb, 05ee], [05f5, 05ff],
22        [061d, 061d], [070e, 070e], [074b, 074c], [07b2, 07bf],
23        [07fb, 07fc], [082e, 082f], [083f, 083f], [085c, 085d],
24        [085f, 085f], [086b, 089f], [08b5, 08b5], [08be, 08d2],
25        [0984, 0984], [098d, 098e], [0991, 0992], [09a9, 09a9],
26        [09b1, 09b1], [09b3, 09b5], [09ba, 09bb], [09c5, 09c6],
27        [09c9, 09ca], [09cf, 09d6], [09d8, 09db], [09de, 09de],
28        [09e4, 09e5], [09ff, 0a00], [0a04, 0a04], [0a0b, 0a0e],
29        [0a11, 0a12], [0a29, 0a29], [0a31, 0a31], [0a34, 0a34],
30        [0a37, 0a37], [0a3a, 0a3b], [0a3d, 0a3d], [0a43, 0a46],
31        [0a49, 0a4a], [0a4e, 0a50], [0a52, 0a58], [0a5d, 0a5d],
32        [0a5f, 0a65], [0a77, 0a80], [0a84, 0a84], [0a8e, 0a8e],
33        [0a92, 0a92], [0aa9, 0aa9], [0ab1, 0ab1], [0ab4, 0ab4],
34        [0aba, 0abb], [0ac6, 0ac6], [0aca, 0aca], [0ace, 0acf],
35        [0ad1, 0adf], [0ae4, 0ae5], [0af2, 0af8], [0b00, 0b00],
36        [0b04, 0b04], [0b0d, 0b0e], [0b11, 0b12], [0b29, 0b29],
37        [0b31, 0b31], [0b34, 0b34], [0b3a, 0b3b], [0b45, 0b46],
38        [0b49, 0b4a], [0b4e, 0b55], [0b58, 0b5b], [0b5e, 0b5e],
39        [0b64, 0b65], [0b78, 0b81], [0b84, 0b84], [0b8b, 0b8d],
40        [0b91, 0b91], [0b96, 0b98], [0b9b, 0b9b], [0b9d, 0b9d],
41        [0ba0, 0ba2], [0ba5, 0ba7], [0bab, 0bad], [0bba, 0bbd],
42        [0bc3, 0bc5], [0bc9, 0bc9], [0bce, 0bcf], [0bd1, 0bd6],
43        [0bd8, 0be5], [0bfb, 0bff], [0c0d, 0c0d], [0c11, 0c11],
44        [0c29, 0c29], [0c3a, 0c3c], [0c45, 0c45], [0c49, 0c49],
45        [0c4e, 0c54], [0c57, 0c57], [0c5b, 0c5f], [0c64, 0c65],
46        [0c70, 0c77], [0c8d, 0c8d], [0c91, 0c91], [0ca9, 0ca9],
47        [0cb4, 0cb4], [0cba, 0cbb], [0cc5, 0cc5], [0cc9, 0cc9],
48        [0cce, 0cd4], [0cd7, 0cdd], [0cdf, 0cdf], [0ce4, 0ce5],
49        [0cf0, 0cf0], [0cf3, 0cff], [0d04, 0d04], [0d0d, 0d0d],
50        [0d11, 0d11], [0d45, 0d45], [0d49, 0d49], [0d50, 0d53],
51        [0d64, 0d65], [0d80, 0d81], [0d84, 0d84], [0d97, 0d99],
52        [0db2, 0db2], [0dbc, 0dbc], [0dbe, 0dbf], [0dc7, 0dc9],
53        [0dcb, 0dce], [0dd5, 0dd5], [0dd7, 0dd7], [0de0, 0de5],
54        [0df0, 0df1], [0df5, 0e00], [0e3b, 0e3e], [0e5c, 0e80],
55        [0e83, 0e83], [0e85, 0e86], [0e89, 0e89], [0e8b, 0e8c],
56        [0e8e, 0e93], [0e98, 0e98], [0ea0, 0ea0], [0ea4, 0ea4],
57        [0ea6, 0ea6], [0ea8, 0ea9], [0eac, 0eac], [0eba, 0eba],
58        [0ebe, 0ebf], [0ec5, 0ec5], [0ec7, 0ec7], [0ece, 0ecf],
59        [0eda, 0edb], [0ee0, 0eff], [0f48, 0f48], [0f6d, 0f70],
60        [0f98, 0f98], [0fbd, 0fbd], [0fcd, 0fcd], [0fdb, 0fff],
61        [10c6, 10c6], [10c8, 10cc], [10ce, 10cf], [1249, 1249],
62        [124e, 124f], [1257, 1257], [1259, 1259], [125e, 125f],
63        [1289, 1289], [128e, 128f], [12b1, 12b1], [12b6, 12b7],
64        [12bf, 12bf], [12c1, 12c1], [12c6, 12c7], [12d7, 12d7],
65        [1311, 1311], [1316, 1317], [135b, 135c], [137d, 137f],
66        [139a, 139f], [13f6, 13f7], [13fe, 13ff], [169d, 169f],
67        [16f9, 16ff], [170d, 170d], [1715, 171f], [1737, 173f],
68        [1754, 175f], [176d, 176d], [1771, 1771], [1774, 177f],
69        [17de, 17df], [17ea, 17ef], [17fa, 17ff], [180f, 180f],
70        [181a, 181f], [1879, 187f], [18ab, 18af], [18f6, 18ff],
71        [191f, 191f], [192c, 192f], [193c, 193f], [1941, 1943],
72        [196e, 196f], [1975, 197f], [19ac, 19af], [19ca, 19cf],
73        [19db, 19dd], [1a1c, 1a1d], [1a5f, 1a5f], [1a7d, 1a7e],
74        [1a8a, 1a8f], [1a9a, 1a9f], [1aae, 1aaf], [1abf, 1aff],
75        [1b4c, 1b4f], [1b7d, 1b7f], [1bf4, 1bfb], [1c38, 1c3a],
76        [1c4a, 1c4c], [1c89, 1c8f], [1cbb, 1cbc], [1cc8, 1ccf],
77        [1cfa, 1cff], [1dfa, 1dfa], [1f16, 1f17], [1f1e, 1f1f],
78        [1f46, 1f47], [1f4e, 1f4f], [1f58, 1f58], [1f5a, 1f5a],
79        [1f5c, 1f5c], [1f5e, 1f5e], [1f7e, 1f7f], [1fb5, 1fb5],
80        [1fc5, 1fc5], [1fd4, 1fd5], [1fdc, 1fdc], [1ff0, 1ff1],
81        [1ff5, 1ff5], [1fff, 1fff], [2065, 2065], [2072, 2073],
82        [208f, 208f], [209d, 209f], [20c0, 20cf], [20f1, 20ff],
83        [218c, 218f], [2427, 243f], [244b, 245f], [2b74, 2b75],
84        [2b96, 2b97], [2bc9, 2bc9], [2bff, 2bff], [2c2f, 2c2f],
85        [2c5f, 2c5f], [2cf4, 2cf8], [2d26, 2d26], [2d28, 2d2c],
86        [2d2e, 2d2f], [2d68, 2d6e], [2d71, 2d7e], [2d97, 2d9f],
87        [2da7, 2da7], [2daf, 2daf], [2db7, 2db7], [2dbf, 2dbf],
88        [2dc7, 2dc7], [2dcf, 2dcf], [2dd7, 2dd7], [2ddf, 2ddf],
89        [2e4f, 2e7f], [2e9a, 2e9a], [2ef4, 2eff], [2fd6, 2fef],
90        [2ffc, 2fff], [3040, 3040], [3097, 3098], [3100, 3104],
91        [3130, 3130], [318f, 318f], [31bb, 31bf], [31e4, 31ef],
92        [321f, 321f], [32ff, 32ff], [4db6, 4dbf], [9ff0, 9fff],
93        [a48d, a48f], [a4c7, a4cf], [a62c, a63f], [a6f8, a6ff],
94        [a7ba, a7f6], [a82c, a82f], [a83a, a83f], [a878, a87f],
95        [a8c6, a8cd], [a8da, a8df], [a954, a95e], [a97d, a97f],
96        [a9ce, a9ce], [a9da, a9dd], [a9ff, a9ff], [aa37, aa3f],
97        [aa4e, aa4f], [aa5a, aa5b], [aac3, aada], [aaf7, ab00],
98        [ab07, ab08], [ab0f, ab10], [ab17, ab1f], [ab27, ab27],
99        [ab2f, ab2f], [ab66, ab6f], [abee, abef], [abfa, abff],
100        [d7a4, d7af], [d7c7, d7ca], [d7fc, f8ff], [fa6e, fa6f],
101        [fada, faff], [fb07, fb12], [fb18, fb1c], [fb37, fb37],
102        [fb3d, fb3d], [fb3f, fb3f], [fb42, fb42], [fb45, fb45],
103        [fbc2, fbd2], [fd40, fd4f], [fd90, fd91], [fdc8, fdef],
104        [fdfe, fdff], [fe1a, fe1f], [fe53, fe53], [fe67, fe67],
105        [fe6c, fe6f], [fe75, fe75], [fefd, fefe], [ff00, ff00],
106        [ffbf, ffc1], [ffc8, ffc9], [ffd0, ffd1], [ffd8, ffd9],
107        [ffdd, ffdf], [ffe7, ffe7], [ffef, fff8], [fffe, ffff],
108        [1000c, 1000c], [10027, 10027], [1003b, 1003b], [1003e, 1003e],
109        [1004e, 1004f], [1005e, 1007f], [100fb, 100ff], [10103, 10106],
110        [10134, 10136], [1018f, 1018f], [1019c, 1019f], [101a1, 101cf],
111        [101fe, 1027f], [1029d, 1029f], [102d1, 102df], [102fc, 102ff],
112        [10324, 1032c], [1034b, 1034f], [1037b, 1037f], [1039e, 1039e],
113        [103c4, 103c7], [103d6, 103ff], [1049e, 1049f], [104aa, 104af],
114        [104d4, 104d7], [104fc, 104ff], [10528, 1052f], [10564, 1056e],
115        [10570, 105ff], [10737, 1073f], [10756, 1075f], [10768, 107ff],
116        [10806, 10807], [10809, 10809], [10836, 10836], [10839, 1083b],
117        [1083d, 1083e], [10856, 10856], [1089f, 108a6], [108b0, 108df],
118        [108f3, 108f3], [108f6, 108fa], [1091c, 1091e], [1093a, 1093e],
119        [10940, 1097f], [109b8, 109bb], [109d0, 109d1], [10a04, 10a04],
120        [10a07, 10a0b], [10a14, 10a14], [10a18, 10a18], [10a36, 10a37],
121        [10a3b, 10a3e], [10a49, 10a4f], [10a59, 10a5f], [10aa0, 10abf],
122        [10ae7, 10aea], [10af7, 10aff], [10b36, 10b38], [10b56, 10b57],
123        [10b73, 10b77], [10b92, 10b98], [10b9d, 10ba8], [10bb0, 10bff],
124        [10c49, 10c7f], [10cb3, 10cbf], [10cf3, 10cf9], [10d28, 10d2f],
125        [10d3a, 10e5f], [10e7f, 10eff], [10f28, 10f2f], [10f5a, 10fff],
126        [1104e, 11051], [11070, 1107e], [110c2, 110cc], [110ce, 110cf],
127        [110e9, 110ef], [110fa, 110ff], [11135, 11135], [11147, 1114f],
128        [11177, 1117f], [111ce, 111cf], [111e0, 111e0], [111f5, 111ff],
129        [11212, 11212], [1123f, 1127f], [11287, 11287], [11289, 11289],
130        [1128e, 1128e], [1129e, 1129e], [112aa, 112af], [112eb, 112ef],
131        [112fa, 112ff], [11304, 11304], [1130d, 1130e], [11311, 11312],
132        [11329, 11329], [11331, 11331], [11334, 11334], [1133a, 1133a],
133        [11345, 11346], [11349, 1134a], [1134e, 1134f], [11351, 11356],
134        [11358, 1135c], [11364, 11365], [1136d, 1136f], [11375, 113ff],
135        [1145a, 1145a], [1145c, 1145c], [1145f, 1147f], [114c8, 114cf],
136        [114da, 1157f], [115b6, 115b7], [115de, 115ff], [11645, 1164f],
137        [1165a, 1165f], [1166d, 1167f], [116b8, 116bf], [116ca, 116ff],
138        [1171b, 1171c], [1172c, 1172f], [11740, 117ff], [1183c, 1189f],
139        [118f3, 118fe], [11900, 119ff], [11a48, 11a4f], [11a84, 11a85],
140        [11aa3, 11abf], [11af9, 11bff], [11c09, 11c09], [11c37, 11c37],
141        [11c46, 11c4f], [11c6d, 11c6f], [11c90, 11c91], [11ca8, 11ca8],
142        [11cb7, 11cff], [11d07, 11d07], [11d0a, 11d0a], [11d37, 11d39],
143        [11d3b, 11d3b], [11d3e, 11d3e], [11d48, 11d4f], [11d5a, 11d5f],
144        [11d66, 11d66], [11d69, 11d69], [11d8f, 11d8f], [11d92, 11d92],
145        [11d99, 11d9f], [11daa, 11edf], [11ef9, 11fff], [1239a, 123ff],
146        [1246f, 1246f], [12475, 1247f], [12544, 12fff], [1342f, 143ff],
147        [14647, 167ff], [16a39, 16a3f], [16a5f, 16a5f], [16a6a, 16a6d],
148        [16a70, 16acf], [16aee, 16aef], [16af6, 16aff], [16b46, 16b4f],
149        [16b5a, 16b5a], [16b62, 16b62], [16b78, 16b7c], [16b90, 16e3f],
150        [16e9b, 16eff], [16f45, 16f4f], [16f7f, 16f8e], [16fa0, 16fdf],
151        [16fe2, 16fff], [187f2, 187ff], [18af3, 1afff], [1b11f, 1b16f],
152        [1b2fc, 1bbff], [1bc6b, 1bc6f], [1bc7d, 1bc7f], [1bc89, 1bc8f],
153        [1bc9a, 1bc9b], [1bca4, 1cfff], [1d0f6, 1d0ff], [1d127, 1d128],
154        [1d1e9, 1d1ff], [1d246, 1d2df], [1d2f4, 1d2ff], [1d357, 1d35f],
155        [1d379, 1d3ff], [1d455, 1d455], [1d49d, 1d49d], [1d4a0, 1d4a1],
156        [1d4a3, 1d4a4], [1d4a7, 1d4a8], [1d4ad, 1d4ad], [1d4ba, 1d4ba],
157        [1d4bc, 1d4bc], [1d4c4, 1d4c4], [1d506, 1d506], [1d50b, 1d50c],
158        [1d515, 1d515], [1d51d, 1d51d], [1d53a, 1d53a], [1d53f, 1d53f],
159        [1d545, 1d545], [1d547, 1d549], [1d551, 1d551], [1d6a6, 1d6a7],
160        [1d7cc, 1d7cd], [1da8c, 1da9a], [1daa0, 1daa0], [1dab0, 1dfff],
161        [1e007, 1e007], [1e019, 1e01a], [1e022, 1e022], [1e025, 1e025],
162        [1e02b, 1e7ff], [1e8c5, 1e8c6], [1e8d7, 1e8ff], [1e94b, 1e94f],
163        [1e95a, 1e95d], [1e960, 1ec70], [1ecb5, 1edff], [1ee04, 1ee04],
164        [1ee20, 1ee20], [1ee23, 1ee23], [1ee25, 1ee26], [1ee28, 1ee28],
165        [1ee33, 1ee33], [1ee38, 1ee38], [1ee3a, 1ee3a], [1ee3c, 1ee41],
166        [1ee43, 1ee46], [1ee48, 1ee48], [1ee4a, 1ee4a], [1ee4c, 1ee4c],
167        [1ee50, 1ee50], [1ee53, 1ee53], [1ee55, 1ee56], [1ee58, 1ee58],
168        [1ee5a, 1ee5a], [1ee5c, 1ee5c], [1ee5e, 1ee5e], [1ee60, 1ee60],
169        [1ee63, 1ee63], [1ee65, 1ee66], [1ee6b, 1ee6b], [1ee73, 1ee73],
170        [1ee78, 1ee78], [1ee7d, 1ee7d], [1ee7f, 1ee7f], [1ee8a, 1ee8a],
171        [1ee9c, 1eea0], [1eea4, 1eea4], [1eeaa, 1eeaa], [1eebc, 1eeef],
172        [1eef2, 1efff], [1f02c, 1f02f], [1f094, 1f09f], [1f0af, 1f0b0],
173        [1f0c0, 1f0c0], [1f0d0, 1f0d0], [1f0f6, 1f0ff], [1f10d, 1f10f],
174        [1f16c, 1f16f], [1f1ad, 1f1e5], [1f203, 1f20f], [1f23c, 1f23f],
175        [1f249, 1f24f], [1f252, 1f25f], [1f266, 1f2ff], [1f6d5, 1f6df],
176        [1f6ed, 1f6ef], [1f6fa, 1f6ff], [1f774, 1f77f], [1f7d9, 1f7ff],
177        [1f80c, 1f80f], [1f848, 1f84f], [1f85a, 1f85f], [1f888, 1f88f],
178        [1f8ae, 1f8ff], [1f90c, 1f90f], [1f93f, 1f93f], [1f971, 1f972],
179        [1f977, 1f979], [1f97b, 1f97b], [1f9a3, 1f9af], [1f9ba, 1f9bf],
180        [1f9c3, 1f9cf], [1fa00, 1fa5f], [1fa6e, 1ffff], [2a6d7, 2a6ff],
181        [2b735, 2b73f], [2b81e, 2b81f], [2cea2, 2ceaf], [2ebe1, 2f7ff],
182        [2fa1e, e0000], [e0002, e001f], [e0080, e00ff], [e01f0, 10ffff]**/
183
184        namespace {
185        const static UnicodeSet::run_t __zzzz_Ext_runs[] = {
186        {Empty, 27}, {Mixed, 3}, {Empty, 11}, {Mixed, 2}, {Empty, 1},
187        {Mixed, 1}, {Empty, 1}, {Mixed, 3}, {Empty, 7}, {Mixed, 1},
188        {Empty, 1}, {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Empty, 1},
189        {Mixed, 1}, {Empty, 1}, {Mixed, 3}, {Full, 1}, {Mixed, 2},
190        {Empty, 5}, {Mixed, 29}, {Empty, 1}, {Mixed, 9}, {Full, 1},
191        {Mixed, 3}, {Full, 1}, {Empty, 2}, {Mixed, 5}, {Full, 1},
192        {Empty, 6}, {Mixed, 1}, {Empty, 11}, {Mixed, 1}, {Empty, 1},
193        {Mixed, 3}, {Empty, 1}, {Mixed, 1}, {Empty, 1}, {Mixed, 3},
194        {Empty, 2}, {Mixed, 1}, {Empty, 20}, {Mixed, 1}, {Empty, 2},
195        {Mixed, 5}, {Empty, 2}, {Mixed, 3}, {Empty, 2}, {Mixed, 1},
196        {Empty, 1}, {Mixed, 1}, {Empty, 1}, {Mixed, 5}, {Empty, 1},
197        {Mixed, 2}, {Empty, 1}, {Mixed, 1}, {Empty, 1}, {Mixed, 4},
198        {Full, 2}, {Empty, 2}, {Mixed, 2}, {Empty, 3}, {Mixed, 1},
199        {Empty, 1}, {Mixed, 2}, {Empty, 1}, {Mixed, 4}, {Empty, 7},
200        {Mixed, 1}, {Empty, 8}, {Mixed, 1}, {Empty, 1}, {Mixed, 2},
201        {Empty, 1}, {Mixed, 3}, {Empty, 3}, {Mixed, 2}, {Empty, 1},
202        {Mixed, 2}, {Empty, 4}, {Mixed, 1}, {Empty, 20}, {Mixed, 2},
203        {Empty, 56}, {Mixed, 2}, {Empty, 1}, {Mixed, 2}, {Empty, 1},
204        {Mixed, 2}, {Empty, 4}, {Mixed, 1}, {Empty, 1}, {Mixed, 1},
205        {Empty, 1}, {Mixed, 4}, {Empty, 3}, {Mixed, 1}, {Full, 1},
206        {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Empty, 6}, {Mixed, 2},
207        {Empty, 2}, {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 3},
208        {Mixed, 2}, {Empty, 2}, {Mixed, 2}, {Empty, 1}, {Mixed, 2},
209        {Empty, 6}, {Mixed, 1}, {Empty, 213}, {Mixed, 1}, {Empty, 657},
210        {Mixed, 1}, {Empty, 36}, {Mixed, 1}, {Empty, 1}, {Mixed, 1},
211        {Empty, 10}, {Mixed, 1}, {Empty, 5}, {Mixed, 1}, {Empty, 5},
212        {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Empty, 1}, {Mixed, 1},
213        {Empty, 1}, {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Empty, 3},
214        {Mixed, 2}, {Empty, 2}, {Mixed, 2}, {Empty, 1}, {Mixed, 2},
215        {Empty, 3}, {Mixed, 4}, {Empty, 1}, {Mixed, 1}, {Empty, 3},
216        {Mixed, 1}, {Empty, 349}, {Mixed, 3}, {Full, 264}, {Empty, 11},
217        {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Full, 1}, {Mixed, 3},
218        {Empty, 3}, {Mixed, 1}, {Empty, 11}, {Mixed, 1}, {Empty, 1},
219        {Mixed, 1}, {Empty, 1}, {Mixed, 3}, {Empty, 1}, {Mixed, 2},
220        {Empty, 3}, {Mixed, 2}, {Empty, 4}, {Mixed, 6}, {Full, 1},
221        {Empty, 3}, {Mixed, 3}, {Empty, 2}, {Mixed, 4}, {Full, 4},
222        {Mixed, 1}, {Empty, 1}, {Mixed, 2}, {Empty, 1}, {Mixed, 4},
223        {Empty, 1}, {Mixed, 1}, {Full, 1}, {Empty, 4}, {Mixed, 4},
224        {Empty, 1}, {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Full, 4},
225        {Empty, 9}, {Mixed, 3}, {Full, 4}, {Mixed, 3}, {Empty, 1},
226        {Mixed, 2}, {Full, 1}, {Mixed, 3}, {Full, 2}, {Empty, 1},
227        {Mixed, 2}, {Empty, 1}, {Mixed, 3}, {Empty, 2}, {Full, 1},
228        {Empty, 1}, {Mixed, 1}, {Empty, 1}, {Mixed, 5}, {Full, 2},
229        {Empty, 2}, {Mixed, 1}, {Full, 1}, {Empty, 1}, {Mixed, 1},
230        {Empty, 1}, {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Full, 9},
231        {Mixed, 1}, {Full, 4}, {Empty, 1}, {Mixed, 2}, {Full, 5},
232        {Empty, 2}, {Mixed, 2}, {Empty, 2}, {Mixed, 2}, {Empty, 1},
233        {Mixed, 3}, {Empty, 2}, {Mixed, 4}, {Full, 2}, {Mixed, 2},
234        {Empty, 1}, {Mixed, 5}, {Full, 4}, {Empty, 2}, {Mixed, 1},
235        {Full, 1}, {Empty, 2}, {Mixed, 1}, {Full, 5}, {Empty, 1},
236        {Mixed, 2}, {Full, 1}, {Empty, 2}, {Mixed, 2}, {Empty, 1},
237        {Mixed, 2}, {Full, 1}, {Mixed, 2}, {Full, 6}, {Empty, 1},
238        {Mixed, 1}, {Full, 3}, {Empty, 2}, {Mixed, 1}, {Full, 8},
239        {Empty, 2}, {Mixed, 1}, {Empty, 1}, {Mixed, 2}, {Empty, 1},
240        {Mixed, 1}, {Full, 8}, {Mixed, 6}, {Full, 2}, {Mixed, 6}, {Full, 9},
241        {Mixed, 1}, {Full, 8}, {Empty, 28}, {Mixed, 1}, {Full, 3},
242        {Empty, 3}, {Mixed, 1}, {Empty, 6}, {Mixed, 1}, {Full, 85},
243        {Empty, 33}, {Mixed, 1}, {Full, 126}, {Empty, 18}, {Mixed, 1},
244        {Full, 269}, {Empty, 17}, {Mixed, 3}, {Full, 2}, {Mixed, 2},
245        {Empty, 2}, {Mixed, 3}, {Full, 21}, {Empty, 2}, {Mixed, 1},
246        {Full, 3}, {Empty, 2}, {Mixed, 3}, {Full, 2}, {Mixed, 1},
247        {Empty, 191}, {Mixed, 1}, {Empty, 23}, {Mixed, 1}, {Full, 296},
248        {Empty, 8}, {Mixed, 1}, {Full, 2}, {Mixed, 1}, {Empty, 11},
249        {Mixed, 1}, {Full, 72}, {Empty, 3}, {Mixed, 3}, {Full, 154},
250        {Empty, 7}, {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 5},
251        {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Full, 4}, {Mixed, 1},
252        {Empty, 2}, {Mixed, 2}, {Full, 4}, {Empty, 2}, {Mixed, 1},
253        {Empty, 1}, {Mixed, 3}, {Empty, 1}, {Mixed, 3}, {Empty, 10},
254        {Mixed, 1}, {Empty, 8}, {Mixed, 1}, {Empty, 21}, {Mixed, 2},
255        {Full, 42}, {Mixed, 2}, {Full, 62}, {Empty, 6}, {Mixed, 1},
256        {Full, 1}, {Empty, 2}, {Mixed, 1}, {Full, 24}, {Mixed, 1},
257        {Empty, 1}, {Mixed, 1}, {Full, 10}, {Mixed, 6}, {Full, 1},
258        {Mixed, 1}, {Full, 8}, {Empty, 1}, {Mixed, 1}, {Empty, 2},
259        {Mixed, 5}, {Empty, 2}, {Mixed, 1}, {Empty, 1}, {Mixed, 1},
260        {Full, 1}, {Mixed, 5}, {Full, 4}, {Empty, 30}, {Mixed, 2},
261        {Empty, 3}, {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Full, 1},
262        {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 1}, {Mixed, 2},
263        {Full, 2}, {Mixed, 2}, {Empty, 1}, {Mixed, 1}, {Empty, 1},
264        {Mixed, 2}, {Empty, 1}, {Full, 3}, {Mixed, 1}, {Full, 44},
265        {Empty, 1334}, {Mixed, 1}, {Full, 1}, {Empty, 129}, {Mixed, 1},
266        {Empty, 6}, {Mixed, 1}, {Empty, 180}, {Mixed, 1}, {Empty, 233},
267        {Mixed, 1}, {Full, 96}, {Empty, 16}, {Mixed, 1}, {Full, 22575},
268        {Mixed, 1}, {Empty, 3}, {Full, 4}, {Empty, 7}, {Mixed, 1},
269        {Full, 6128}};
270        const static UnicodeSet::bitquad_t  __zzzz_Ext_quads[] = {
271        0x03000000, 0x0000280f, 0x00000004, 0x00010000, 0x01800000,
272        0x00011800, 0x0000ff00, 0xffe07800, 0x20000000, 0x00004000,
273        0x00001800, 0xfffc0000, 0x18000000, 0x8000c000, 0xb0000000,
274        0xfffff800, 0xc0200000, 0x0007ffff, 0x00066010, 0x0c3a0200,
275        0x4f7f8660, 0x80000030, 0x00067811, 0x2c920200, 0xa1fdc678,
276        0xff80003f, 0x00044011, 0x0c120200, 0xfffec440, 0x01fc0030,
277        0x00066011, 0x0c120200, 0x4f3fc660, 0xff000030, 0x29c23813,
278        0x3c0038e7, 0xff7ec238, 0xf800003f, 0x00022000, 0x1c000200,
279        0xf89fc220, 0x00ff0030, 0x00022000, 0x0c100200, 0xbf9fc220,
280        0xfff90030, 0x00022010, 0x000f0220, 0x00000030, 0x03800013,
281        0xd0040000, 0x00a07b80, 0xffe3003f, 0x00000001, 0x78000000,
282        0xf0000000, 0x010fda69, 0xc4001351, 0x0c00c0a0, 0x00000100,
283        0x0001e000, 0x01000000, 0x20000000, 0xf8002000, 0x0000df40,
284        0xc280c200, 0x0000c200, 0x80c20000, 0x008000c2, 0x00c20000,
285        0x18000000, 0xe0000000, 0xfc000000, 0xc0c00000, 0xe0000000,
286        0xfe000000, 0xffe02000, 0xff800000, 0xfff00000, 0xfff22000,
287        0xc0000000, 0xfc00fc00, 0xfc008000, 0xfe000000, 0x0000f800,
288        0xffc00000, 0x80000000, 0xf000f000, 0x0000000e, 0xffe0c000,
289        0x0000f000, 0x3800fc00, 0x30000000, 0x80000000, 0x60000000,
290        0xfc00fc00, 0x8000c000, 0x0000f000, 0xe0000000, 0x0ff00000,
291        0x07000000, 0x00001c00, 0x0000fe00, 0x18000000, 0x0000ff00,
292        0xfc000000, 0x04000000, 0xc0c00000, 0x5500c0c0, 0xc0000000,
293        0x00200000, 0x10300020, 0x80230000, 0x000c0020, 0xe0008000,
294        0x0000ffff, 0xfffe0000, 0x0000f000, 0xffffff80, 0xfffff800,
295        0x00300000, 0x00c00000, 0x00000200, 0x80000000, 0x00008000,
296        0x80000000, 0x01f00000, 0x0000df40, 0x7ffe7f00, 0xff800000,
297        0x80808080, 0x80808080, 0xffff8000, 0x04000000, 0xfff00000,
298        0xffc00000, 0xf000ffff, 0x00000001, 0x01800000, 0x0000001f,
299        0x00010000, 0x00008000, 0xf8000000, 0x0000fff0, 0x80000000,
300        0x80000000, 0xffc00000, 0xffff0000, 0x0000e000, 0x0000ff80,
301        0xfffff000, 0xff000000, 0xfc000000, 0x007fffff, 0xfc00f000,
302        0xff000000, 0xfc003fc0, 0x7ff00000, 0xe0000000, 0x3c004000,
303        0x80000000, 0xff800000, 0x0c00c000, 0x07fffff8, 0xff800000,
304        0xff818181, 0x00008080, 0x0000ffc0, 0xfc00c000, 0x0000fff0,
305        0x00000780, 0xf0000000, 0x0000c000, 0xfc000000, 0x1f07ff80,
306        0xa0800000, 0x00000024, 0x0007fffc, 0x0000ffff, 0x00030000,
307        0xffffff00, 0xc000ffff, 0xfc000000, 0x00080000, 0x0020f080,
308        0x60000000, 0x00000001, 0x80000000, 0xe3030303, 0xc1ff8080,
309        0x00001000, 0x48000080, 0xc000c000, 0xf8000000, 0x00000078,
310        0x00700000, 0xf0008000, 0xfffffffe, 0x0000ffff, 0xc0000000,
311        0xe0000000, 0xfffe0000, 0xf0000000, 0x00001ff0, 0x0000f800,
312        0xf8000000, 0x40000000, 0xffc000f0, 0xc0000000, 0x0000fc00,
313        0x00f00000, 0xf0000000, 0x0000ff00, 0xffff7ff0, 0xff800000,
314        0xffc00000, 0xffffff00, 0x000002c0, 0x6e400000, 0x00400000,
315        0x80000000, 0xffff007f, 0x07c80000, 0x70000000, 0x7c000000,
316        0x0f000000, 0x00030000, 0x01100f90, 0x78c00000, 0xfe00fe00,
317        0xff800780, 0x01c00000, 0x00c00000, 0x00f80000, 0xe1fc0000,
318        0xffff01ff, 0xfffffe00, 0xfff80000, 0x03f80000, 0xfc00ff00,
319        0x80000000, 0x0000ff00, 0xfc000000, 0x0003c000, 0x7fff0000,
320        0x0000dffc, 0xfc00fe00, 0x00200000, 0x0000ff80, 0xff800000,
321        0x0000c000, 0xffe00001, 0x00040000, 0x80000000, 0x40004280,
322        0x0000fc00, 0xfc00f800, 0x00066010, 0x04120200, 0x1f7ec660,
323        0xffe0e030, 0x94000000, 0xfc00ff00, 0x00c00000, 0xc0000000,
324        0xfc00ffe0, 0xffffe000, 0xff000000, 0xfffffc00, 0x18000000,
325        0x0000f000, 0xf0000000, 0x7ff80000, 0x0000ff00, 0x00000030,
326        0xfffffff8, 0xfe000000, 0x00000200, 0x00800000, 0x0000ffc0,
327        0x0000e000, 0x00030000, 0xff800100, 0x00000480, 0x4b800000,
328        0xfc00ff00, 0x00000240, 0xfe048000, 0xfffffc00, 0xfe000000,
329        0xfc000000, 0xffe08000, 0xfffffff0, 0xffff8000, 0xffffff80,
330        0xfe000000, 0x80000000, 0xffff3c00, 0x0000ffff, 0xffc0c000,
331        0x0400ffc0, 0x1f000004, 0xffff0000, 0xf8000000, 0x0000ffe0,
332        0x80000000, 0x00007fff, 0xfffffffc, 0xfffc0000, 0xfff80000,
333        0x80000000, 0x0000ffff, 0xf0000000, 0xe000f800, 0x0c00fe00,
334        0xfffffff0, 0xffc00000, 0x00000180, 0xfffffe00, 0xffffffc0,
335        0xfff00000, 0xff800000, 0xfe000000, 0x00200000, 0x20000000,
336        0x1400219b, 0x00000010, 0x20201840, 0x84000000, 0x000203a0,
337        0x000000c0, 0x00003000, 0x07fff000, 0xffff0001, 0x06000080,
338        0xfffff824, 0xff800060, 0x3c00f800, 0x0001ffff, 0xffe00000,
339        0x00000010, 0xf5080169, 0x5569157b, 0xa1080869, 0xf0000400,
340        0xf0000411, 0xfffcffff, 0x0000f000, 0xfff00000, 0x00018000,
341        0x00010001, 0xffc00000, 0x0000e000, 0x0000f000, 0xffffe000,
342        0x0000003f, 0x0000fff8, 0xf0000000, 0xfffcfe00, 0xffffffc0,
343        0xffe00000, 0xfc00e000, 0xfff00000, 0xfe000000, 0x0000f000,
344        0xfc00ff00, 0x0000ff00, 0xffffc000, 0x0000f000, 0x80000000,
345        0x0b860000, 0xfc00fff8, 0x0000fff8, 0xffffc000, 0xff800000,
346        0xffe00000, 0xc0000000, 0x0000fffc, 0xfffffffe, 0xc0000000,
347        0xfffffffd, 0xffff0000};
348        }
349
350        const static UnicodeSet zzzz_Ext{const_cast<UnicodeSet::run_t *>(__zzzz_Ext_runs), 417, 0, const_cast<UnicodeSet::bitquad_t *>(__zzzz_Ext_quads), 382, 0};
351
352        /** Code Point Ranges for Zyyy
353        [0000, 0040], [005b, 0060], [007b, 00a9], [00ab, 00b9],
354        [00bb, 00bf], [00d7, 00d7], [00f7, 00f7], [02b9, 02df],
355        [02e5, 02e9], [02ec, 02ff], [0374, 0374], [037e, 037e],
356        [0385, 0385], [0387, 0387], [0605, 0605], [06dd, 06dd],
357        [08e2, 08e2], [0e3f, 0e3f], [0fd5, 0fd8], [16eb, 16ed],
358        [2000, 200b], [200e, 2064], [2066, 2070], [2074, 207e],
359        [2080, 208e], [20a0, 20bf], [2100, 2125], [2127, 2129],
360        [212c, 2131], [2133, 214d], [214f, 215f], [2189, 218b],
361        [2190, 2426], [2440, 244a], [2460, 27ff], [2900, 2b73],
362        [2b76, 2b95], [2b98, 2bc8], [2bca, 2bfe], [2e00, 2e42],
363        [2e44, 2e4e], [2ff0, 2ffb], [3000, 3000], [3004, 3004],
364        [3012, 3012], [3020, 3020], [3036, 3036], [3248, 325f],
365        [327f, 327f], [32b1, 32bf], [32cc, 32cf], [3371, 337a],
366        [3380, 33df], [33ff, 33ff], [4dc0, 4dff], [a700, a721],
367        [a788, a78a], [ab5b, ab5b], [fd3e, fd3f], [fe10, fe19],
368        [fe30, fe44], [fe47, fe52], [fe54, fe66], [fe68, fe6b],
369        [feff, feff], [ff01, ff20], [ff3b, ff40], [ff5b, ff60],
370        [ffe0, ffe6], [ffe8, ffee], [fff9, fffd], [10190, 1019b],
371        [101d0, 101fc], [1d000, 1d0f5], [1d100, 1d126], [1d129, 1d166],
372        [1d16a, 1d17a], [1d183, 1d184], [1d18c, 1d1a9], [1d1ae, 1d1e8],
373        [1d2e0, 1d2f3], [1d300, 1d356], [1d372, 1d378], [1d400, 1d454],
374        [1d456, 1d49c], [1d49e, 1d49f], [1d4a2, 1d4a2], [1d4a5, 1d4a6],
375        [1d4a9, 1d4ac], [1d4ae, 1d4b9], [1d4bb, 1d4bb], [1d4bd, 1d4c3],
376        [1d4c5, 1d505], [1d507, 1d50a], [1d50d, 1d514], [1d516, 1d51c],
377        [1d51e, 1d539], [1d53b, 1d53e], [1d540, 1d544], [1d546, 1d546],
378        [1d54a, 1d550], [1d552, 1d6a5], [1d6a8, 1d7cb], [1d7ce, 1d7ff],
379        [1ec71, 1ecb4], [1f000, 1f02b], [1f030, 1f093], [1f0a0, 1f0ae],
380        [1f0b1, 1f0bf], [1f0c1, 1f0cf], [1f0d1, 1f0f5], [1f100, 1f10c],
381        [1f110, 1f16b], [1f170, 1f1ac], [1f1e6, 1f1ff], [1f201, 1f202],
382        [1f210, 1f23b], [1f240, 1f248], [1f260, 1f265], [1f300, 1f6d4],
383        [1f6e0, 1f6ec], [1f6f0, 1f6f9], [1f700, 1f773], [1f780, 1f7d8],
384        [1f800, 1f80b], [1f810, 1f847], [1f850, 1f859], [1f860, 1f887],
385        [1f890, 1f8ad], [1f900, 1f90b], [1f910, 1f93e], [1f940, 1f970],
386        [1f973, 1f976], [1f97a, 1f97a], [1f97c, 1f9a2], [1f9b0, 1f9b9],
387        [1f9c0, 1f9c2], [1f9d0, 1f9ff], [1fa60, 1fa6d], [e0001, e0001],
388        [e0020, e007f]**/
389
390        namespace {
391        const static UnicodeSet::run_t __zyyy_Ext_runs[] = {
392        {Full, 2}, {Mixed, 2}, {Full, 1}, {Mixed, 3}, {Empty, 13},
393        {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Empty, 3}, {Mixed, 2},
394        {Empty, 19}, {Mixed, 1}, {Empty, 5}, {Mixed, 1}, {Empty, 16},
395        {Mixed, 1}, {Empty, 41}, {Mixed, 1}, {Empty, 12}, {Mixed, 1},
396        {Empty, 56}, {Mixed, 1}, {Empty, 72}, {Mixed, 1}, {Full, 2},
397        {Mixed, 2}, {Full, 1}, {Empty, 2}, {Full, 1}, {Mixed, 2},
398        {Empty, 1}, {Mixed, 1}, {Full, 20}, {Mixed, 2}, {Full, 29},
399        {Empty, 8}, {Full, 19}, {Mixed, 2}, {Full, 1}, {Mixed, 2},
400        {Empty, 16}, {Full, 2}, {Mixed, 1}, {Empty, 12}, {Mixed, 3},
401        {Empty, 16}, {Mixed, 2}, {Empty, 1}, {Mixed, 2}, {Empty, 4},
402        {Mixed, 1}, {Full, 3}, {Mixed, 1}, {Empty, 206}, {Full, 2},
403        {Empty, 712}, {Full, 1}, {Mixed, 1}, {Empty, 2}, {Mixed, 1},
404        {Empty, 29}, {Mixed, 1}, {Empty, 654}, {Mixed, 1}, {Empty, 6},
405        {Mixed, 4}, {Empty, 3}, {Mixed, 5}, {Empty, 3}, {Mixed, 1},
406        {Empty, 12}, {Mixed, 1}, {Empty, 1}, {Mixed, 2}, {Empty, 1648},
407        {Full, 7}, {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Full, 1}, {Mixed, 3},
408        {Full, 1}, {Mixed, 1}, {Empty, 7}, {Mixed, 1}, {Full, 2},
409        {Mixed, 2}, {Empty, 4}, {Full, 2}, {Mixed, 1}, {Full, 1},
410        {Mixed, 3}, {Full, 1}, {Mixed, 3}, {Full, 10}, {Mixed, 1},
411        {Full, 8}, {Mixed, 1}, {Full, 1}, {Empty, 163}, {Mixed, 1},
412        {Full, 1}, {Mixed, 1}, {Empty, 26}, {Full, 1}, {Mixed, 1},
413        {Full, 2}, {Mixed, 5}, {Full, 2}, {Mixed, 1}, {Full, 1}, {Mixed, 1},
414        {Empty, 1}, {Mixed, 5}, {Empty, 4}, {Full, 30}, {Mixed, 2},
415        {Full, 3}, {Mixed, 1}, {Full, 2}, {Mixed, 1}, {Empty, 1},
416        {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Full, 1}, {Mixed, 2},
417        {Empty, 2}, {Mixed, 2}, {Full, 1}, {Mixed, 1}, {Full, 1},
418        {Mixed, 2}, {Full, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 24620},
419        {Mixed, 1}, {Full, 3}, {Empty, 6140}};
420        const static UnicodeSet::bitquad_t  __zyyy_Ext_quads[] = {
421        0xf8000001, 0xf8000001, 0xfbfffbff, 0x00800000, 0x00800000,
422        0xfe000000, 0xfffff3e0, 0x40100000, 0x000000a0, 0x00000020,
423        0x20000000, 0x00000004, 0x80000000, 0x01e00000, 0x00003800,
424        0xffffcfff, 0x7ff1ffdf, 0x00007fff, 0xfffbf3bf, 0xffffbfff,
425        0xffff0e00, 0x0000007f, 0x000007ff, 0xffcfffff, 0xff3fffff,
426        0xfffffdff, 0x7fffffff, 0x00007ff7, 0x0fff0000, 0x00040011,
427        0x00400001, 0xffffff00, 0x80000000, 0xfffe0000, 0x0000f000,
428        0x07fe0000, 0x80000000, 0x00000003, 0x00000700, 0x08000000,
429        0xc0000000, 0x03ff0000, 0xffff0000, 0xfff7ff9f, 0x00000f7f,
430        0x80000000, 0xfffffffe, 0xf8000001, 0xf8000001, 0x00000001,
431        0x3e007f7f, 0x0fff0000, 0xffff0000, 0x1fffffff, 0x003fffff,
432        0xfffffe7f, 0x07fffc7f, 0xfffff018, 0xffffc3ff, 0x000001ff,
433        0x000fffff, 0x007fffff, 0x01fc0000, 0xffdfffff, 0xdfffffff,
434        0xebffde64, 0xffffffef, 0xdfdfe7bf, 0x7bffffff, 0xfffdfc5f,
435        0xffffff3f, 0xffffcfff, 0xfffe0000, 0x001fffff, 0xffff0fff,
436        0x000fffff, 0xfffe7fff, 0xfffefffe, 0x003fffff, 0xffff1fff,
437        0xffff0fff, 0x00001fff, 0xffffffc0, 0xffff0006, 0x0fffffff,
438        0x000001ff, 0x0000003f, 0x001fffff, 0x03ff1fff, 0x000fffff,
439        0x01ffffff, 0xffff0fff, 0x03ff00ff, 0xffff00ff, 0x00003fff,
440        0xffff0fff, 0x7fffffff, 0xf479ffff, 0x03ff0007, 0xffff0007,
441        0x00003fff, 0x00000002};
442        }
443
444        const static UnicodeSet zyyy_Ext{const_cast<UnicodeSet::run_t *>(__zyyy_Ext_runs), 140, 0, const_cast<UnicodeSet::bitquad_t *>(__zyyy_Ext_quads), 102, 0};
445
446        /** Code Point Ranges for Latn
447        [0041, 005a], [0061, 007a], [00aa, 00aa], [00ba, 00ba],
448        [00c0, 00d6], [00d8, 00f6], [00f8, 02b8], [02e0, 02e4],
449        [0363, 036f], [0485, 0486], [0951, 0952], [10fb, 10fb],
450        [1d00, 1d25], [1d2c, 1d5c], [1d62, 1d65], [1d6b, 1d77],
451        [1d79, 1dbe], [1e00, 1eff], [2071, 2071], [207f, 207f],
452        [2090, 209c], [20f0, 20f0], [212a, 212b], [2132, 2132],
453        [214e, 214e], [2160, 2188], [2c60, 2c7f], [a722, a787],
454        [a78b, a7b9], [a7f7, a7ff], [a92e, a92e], [ab30, ab5a],
455        [ab5c, ab64], [fb00, fb06], [ff21, ff3a], [ff41, ff5a]**/
456
457        namespace {
458        const static UnicodeSet::run_t __latn_Ext_runs[] = {
459        {Empty, 2}, {Mixed, 2}, {Empty, 1}, {Mixed, 3}, {Full, 13},
460        {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
461        {Empty, 8}, {Mixed, 1}, {Empty, 37}, {Mixed, 1}, {Empty, 60},
462        {Mixed, 1}, {Empty, 96}, {Full, 1}, {Mixed, 3}, {Full, 1},
463        {Mixed, 1}, {Empty, 2}, {Full, 8}, {Empty, 11}, {Mixed, 2},
464        {Empty, 2}, {Mixed, 1}, {Empty, 1}, {Mixed, 2}, {Full, 1},
465        {Mixed, 1}, {Empty, 86}, {Full, 1}, {Empty, 981}, {Mixed, 1},
466        {Full, 2}, {Mixed, 2}, {Empty, 1}, {Mixed, 1}, {Empty, 9},
467        {Mixed, 1}, {Empty, 15}, {Mixed, 3}, {Empty, 636}, {Mixed, 1},
468        {Empty, 32}, {Mixed, 2}, {Empty, 32773}};
469        const static UnicodeSet::bitquad_t  __latn_Ext_quads[] = {
470        0x07fffffe, 0x07fffffe, 0x04000400, 0xff7fffff, 0xff7fffff,
471        0x01ffffff, 0x0000001f, 0x0000fff8, 0x00000060, 0x00060000,
472        0x08000000, 0xfffff03f, 0x1fffffff, 0xfefff83c, 0x7fffffff,
473        0x80020000, 0x1fff0000, 0x00010000, 0x00040c00, 0x00004000,
474        0x000001ff, 0xfffffffc, 0xfffff8ff, 0x03ffffff, 0xff800000,
475        0x00004000, 0xffff0000, 0xf7ffffff, 0x0000001f, 0x0000007f,
476        0x07fffffe, 0x07fffffe};
477        }
478
479        const static UnicodeSet latn_Ext{const_cast<UnicodeSet::run_t *>(__latn_Ext_runs), 48, 0, const_cast<UnicodeSet::bitquad_t *>(__latn_Ext_quads), 32, 0};
480
481        /** Code Point Ranges for Grek
482        [0342, 0342], [0345, 0345], [0370, 0373], [0375, 0377],
483        [037a, 037d], [037f, 037f], [0384, 0384], [0386, 0386],
484        [0388, 038a], [038c, 038c], [038e, 03a1], [03a3, 03e1],
485        [03f0, 03ff], [1d26, 1d2a], [1d5d, 1d61], [1d66, 1d6a],
486        [1dbf, 1dc1], [1f00, 1f15], [1f18, 1f1d], [1f20, 1f45],
487        [1f48, 1f4d], [1f50, 1f57], [1f59, 1f59], [1f5b, 1f5b],
488        [1f5d, 1f5d], [1f5f, 1f7d], [1f80, 1fb4], [1fb6, 1fc4],
489        [1fc6, 1fd3], [1fd6, 1fdb], [1fdd, 1fef], [1ff2, 1ff4],
490        [1ff6, 1ffe], [2126, 2126], [ab65, ab65], [10140, 1018e],
491        [101a0, 101a0], [1d200, 1d245]**/
492
493        namespace {
494        const static UnicodeSet::run_t __grek_Ext_runs[] = {
495        {Empty, 26}, {Mixed, 4}, {Full, 1}, {Mixed, 1}, {Empty, 201},
496        {Mixed, 3}, {Empty, 1}, {Mixed, 2}, {Empty, 9}, {Mixed, 1},
497        {Full, 1}, {Mixed, 2}, {Full, 1}, {Mixed, 3}, {Empty, 9},
498        {Mixed, 1}, {Empty, 1105}, {Mixed, 1}, {Empty, 686}, {Full, 2},
499        {Mixed, 2}, {Empty, 1666}, {Full, 2}, {Mixed, 1}, {Empty, 31085}};
500        const static UnicodeSet::bitquad_t  __grek_Ext_quads[] = {
501        0x00000024, 0xbcef0000, 0xffffd750, 0xfffffffb, 0xffff0003,
502        0x000007c0, 0xe0000000, 0x000007c3, 0x80000000, 0x00000003,
503        0x3f3fffff, 0xaaff3f3f, 0x3fffffff, 0xffdfffff, 0xefcfffdf,
504        0x7fdcffff, 0x00000040, 0x00000020, 0x00007fff, 0x00000001,
505        0x0000003f};
506        }
507
508        const static UnicodeSet grek_Ext{const_cast<UnicodeSet::run_t *>(__grek_Ext_runs), 25, 0, const_cast<UnicodeSet::bitquad_t *>(__grek_Ext_quads), 21, 0};
509
510        /** Code Point Ranges for Cyrl
511        [0400, 052f], [1c80, 1c88], [1d2b, 1d2b], [1d78, 1d78],
512        [2de0, 2dff], [2e43, 2e43], [a640, a69f], [fe2e, fe2f]**/
513
514        namespace {
515        const static UnicodeSet::run_t __cyrl_Ext_runs[] = {
516        {Empty, 32}, {Full, 9}, {Mixed, 1}, {Empty, 186}, {Mixed, 1},
517        {Empty, 4}, {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 131},
518        {Full, 1}, {Empty, 2}, {Mixed, 1}, {Empty, 959}, {Full, 3},
519        {Empty, 700}, {Mixed, 1}, {Empty, 32782}};
520        const static UnicodeSet::bitquad_t  __cyrl_Ext_quads[] = {
521        0x0000ffff, 0x000001ff, 0x00000800, 0x01000000, 0x00000008,
522        0x0000c000};
523        }
524
525        const static UnicodeSet cyrl_Ext{const_cast<UnicodeSet::run_t *>(__cyrl_Ext_runs), 18, 0, const_cast<UnicodeSet::bitquad_t *>(__cyrl_Ext_quads), 6, 0};
526
527        /** Code Point Ranges for Armn
528        [0531, 0556], [0559, 058a], [058d, 058f], [fb13, fb17]**/
529
530        namespace {
531        const static UnicodeSet::run_t __armn_Ext_runs[] = {
532        {Empty, 41}, {Mixed, 2}, {Full, 1}, {Mixed, 1}, {Empty, 1963},
533        {Mixed, 1}, {Empty, 32807}};
534        const static UnicodeSet::bitquad_t  __armn_Ext_quads[] = {
535        0xfffe0000, 0xfe7fffff, 0x0000e7ff, 0x00f80000};
536        }
537
538        const static UnicodeSet armn_Ext{const_cast<UnicodeSet::run_t *>(__armn_Ext_runs), 7, 0, const_cast<UnicodeSet::bitquad_t *>(__armn_Ext_quads), 4, 0};
539
540        /** Code Point Ranges for Hebr
541        [0591, 05c7], [05d0, 05ea], [05ef, 05f4], [fb1d, fb36],
542        [fb38, fb3c], [fb3e, fb3e], [fb40, fb41], [fb43, fb44],
543        [fb46, fb4f]**/
544
545        namespace {
546        const static UnicodeSet::run_t __hebr_Ext_runs[] = {
547        {Empty, 44}, {Mixed, 1}, {Full, 1}, {Mixed, 2}, {Empty, 1960},
548        {Mixed, 3}, {Empty, 32805}};
549        const static UnicodeSet::bitquad_t  __hebr_Ext_quads[] = {
550        0xfffe0000, 0xffff00ff, 0x001f87ff, 0xe0000000, 0x5f7fffff,
551        0x0000ffdb};
552        }
553
554        const static UnicodeSet hebr_Ext{const_cast<UnicodeSet::run_t *>(__hebr_Ext_runs), 7, 0, const_cast<UnicodeSet::bitquad_t *>(__hebr_Ext_quads), 6, 0};
555
556        /** Code Point Ranges for Arab
557        [0600, 0604], [0606, 061c], [061e, 06dc], [06de, 06ff],
558        [0750, 077f], [08a0, 08b4], [08b6, 08bd], [08d3, 08e1],
559        [08e3, 08ff], [fb50, fbc1], [fbd3, fd3d], [fd50, fd8f],
560        [fd92, fdc7], [fdf0, fdfd], [fe70, fe74], [fe76, fefc],
561        [102e0, 102fb], [10e60, 10e7e], [1ee00, 1ee03], [1ee05, 1ee1f],
562        [1ee21, 1ee22], [1ee24, 1ee24], [1ee27, 1ee27], [1ee29, 1ee32],
563        [1ee34, 1ee37], [1ee39, 1ee39], [1ee3b, 1ee3b], [1ee42, 1ee42],
564        [1ee47, 1ee47], [1ee49, 1ee49], [1ee4b, 1ee4b], [1ee4d, 1ee4f],
565        [1ee51, 1ee52], [1ee54, 1ee54], [1ee57, 1ee57], [1ee59, 1ee59],
566        [1ee5b, 1ee5b], [1ee5d, 1ee5d], [1ee5f, 1ee5f], [1ee61, 1ee62],
567        [1ee64, 1ee64], [1ee67, 1ee6a], [1ee6c, 1ee72], [1ee74, 1ee77],
568        [1ee79, 1ee7c], [1ee7e, 1ee7e], [1ee80, 1ee89], [1ee8b, 1ee9b],
569        [1eea1, 1eea3], [1eea5, 1eea9], [1eeab, 1eebb], [1eef0, 1eef1]**/
570
571        namespace {
572        const static UnicodeSet::run_t __arab_Ext_runs[] = {
573        {Empty, 48}, {Mixed, 1}, {Full, 5}, {Mixed, 1}, {Full, 1},
574        {Empty, 2}, {Mixed, 1}, {Full, 1}, {Empty, 9}, {Mixed, 3},
575        {Empty, 1938}, {Mixed, 1}, {Full, 3}, {Mixed, 1}, {Full, 10},
576        {Mixed, 2}, {Full, 1}, {Mixed, 1}, {Full, 1}, {Mixed, 2},
577        {Empty, 3}, {Mixed, 1}, {Full, 3}, {Mixed, 1}, {Empty, 31},
578        {Mixed, 1}, {Empty, 91}, {Mixed, 1}, {Empty, 1788}, {Mixed, 6},
579        {Empty, 1}, {Mixed, 1}, {Empty, 30856}};
580        const static UnicodeSet::bitquad_t  __arab_Ext_quads[] = {
581        0xdfffffdf, 0xdfffffff, 0xffff0000, 0x3fdfffff, 0xfff80000,
582        0xfffffffb, 0xffff0000, 0xfff80003, 0x3fffffff, 0xffff0000,
583        0xfffcffff, 0x000000ff, 0x3fff0000, 0xffdf0000, 0x1fffffff,
584        0x0fffffff, 0x7fffffff, 0xffffffef, 0x0af7fe96, 0xaa96ea84,
585        0x5ef7f796, 0x0ffffbff, 0x0ffffbee, 0x00030000};
586        }
587
588        const static UnicodeSet arab_Ext{const_cast<UnicodeSet::run_t *>(__arab_Ext_runs), 33, 0, const_cast<UnicodeSet::bitquad_t *>(__arab_Ext_quads), 24, 0};
589
590        /** Code Point Ranges for Syrc
591        [060c, 060c], [061b, 061c], [061f, 061f], [0640, 0640],
592        [064b, 0655], [0670, 0670], [0700, 070d], [070f, 074a],
593        [074d, 074f], [0860, 086a]**/
594
595        namespace {
596        const static UnicodeSet::run_t __syrc_Ext_runs[] = {
597        {Empty, 48}, {Mixed, 1}, {Empty, 1}, {Mixed, 2}, {Empty, 4},
598        {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Empty, 8}, {Mixed, 1},
599        {Empty, 34748}};
600        const static UnicodeSet::bitquad_t  __syrc_Ext_quads[] = {
601        0x98001000, 0x003ff801, 0x00010000, 0xffffbfff, 0x0000e7ff,
602        0x000007ff};
603        }
604
605        const static UnicodeSet syrc_Ext{const_cast<UnicodeSet::run_t *>(__syrc_Ext_runs), 11, 0, const_cast<UnicodeSet::bitquad_t *>(__syrc_Ext_quads), 6, 0};
606
607        /** Code Point Ranges for Thaa
608        [060c, 060c], [061b, 061c], [061f, 061f], [0660, 0669],
609        [0780, 07b1], [fdf2, fdf2], [fdfd, fdfd]**/
610
611        namespace {
612        const static UnicodeSet::run_t __thaa_Ext_runs[] = {
613        {Empty, 48}, {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Empty, 8},
614        {Full, 1}, {Mixed, 1}, {Empty, 1969}, {Mixed, 1}, {Empty, 32784}};
615        const static UnicodeSet::bitquad_t  __thaa_Ext_quads[] = {
616        0x98001000, 0x000003ff, 0x0003ffff, 0x20040000};
617        }
618
619        const static UnicodeSet thaa_Ext{const_cast<UnicodeSet::run_t *>(__thaa_Ext_runs), 10, 0, const_cast<UnicodeSet::bitquad_t *>(__thaa_Ext_quads), 4, 0};
620
621        /** Code Point Ranges for Deva
622        [0900, 097f], [1cd0, 1cf6], [1cf8, 1cf9], [20f0, 20f0],
623        [a830, a839], [a8e0, a8ff]**/
624
625        namespace {
626        const static UnicodeSet::run_t __deva_Ext_runs[] = {
627        {Empty, 72}, {Full, 4}, {Empty, 154}, {Mixed, 2}, {Empty, 31},
628        {Mixed, 1}, {Empty, 1081}, {Mixed, 1}, {Empty, 5}, {Full, 1},
629        {Empty, 33464}};
630        const static UnicodeSet::bitquad_t  __deva_Ext_quads[] = {
631        0xffff0000, 0x037fffff, 0x00010000, 0x03ff0000};
632        }
633
634        const static UnicodeSet deva_Ext{const_cast<UnicodeSet::run_t *>(__deva_Ext_runs), 11, 0, const_cast<UnicodeSet::bitquad_t *>(__deva_Ext_quads), 4, 0};
635
636        /** Code Point Ranges for Beng
637        [0951, 0952], [0964, 0965], [0980, 0983], [0985, 098c],
638        [098f, 0990], [0993, 09a8], [09aa, 09b0], [09b2, 09b2],
639        [09b6, 09b9], [09bc, 09c4], [09c7, 09c8], [09cb, 09ce],
640        [09d7, 09d7], [09dc, 09dd], [09df, 09e3], [09e6, 09fe],
641        [1cd0, 1cd0], [1cd2, 1cd2], [1cd5, 1cd6], [1cd8, 1cd8],
642        [1ce1, 1ce1], [1cea, 1cea], [1ced, 1ced], [1cf5, 1cf7],
643        [a8f1, a8f1]**/
644
645        namespace {
646        const static UnicodeSet::run_t __beng_Ext_runs[] = {
647        {Empty, 74}, {Mixed, 6}, {Empty, 150}, {Mixed, 2}, {Empty, 1119},
648        {Mixed, 1}, {Empty, 33464}};
649        const static UnicodeSet::bitquad_t  __beng_Ext_quads[] = {
650        0x00060000, 0x00000030, 0xfff99fef, 0xf3c5fdff, 0xb080799f,
651        0x7fffffcf, 0x01650000, 0x00e02402, 0x00020000};
652        }
653
654        const static UnicodeSet beng_Ext{const_cast<UnicodeSet::run_t *>(__beng_Ext_runs), 7, 0, const_cast<UnicodeSet::bitquad_t *>(__beng_Ext_quads), 9, 0};
655
656        /** Code Point Ranges for Guru
657        [0951, 0952], [0964, 0965], [0a01, 0a03], [0a05, 0a0a],
658        [0a0f, 0a10], [0a13, 0a28], [0a2a, 0a30], [0a32, 0a33],
659        [0a35, 0a36], [0a38, 0a39], [0a3c, 0a3c], [0a3e, 0a42],
660        [0a47, 0a48], [0a4b, 0a4d], [0a51, 0a51], [0a59, 0a5c],
661        [0a5e, 0a5e], [0a66, 0a76], [a830, a839]**/
662
663        namespace {
664        const static UnicodeSet::run_t __guru_Ext_runs[] = {
665        {Empty, 74}, {Mixed, 2}, {Empty, 4}, {Mixed, 4}, {Empty, 1261},
666        {Mixed, 1}, {Empty, 33470}};
667        const static UnicodeSet::bitquad_t  __guru_Ext_quads[] = {
668        0x00060000, 0x00000030, 0xfff987ee, 0xd36dfdff, 0x5e023987,
669        0x007fffc0, 0x03ff0000};
670        }
671
672        const static UnicodeSet guru_Ext{const_cast<UnicodeSet::run_t *>(__guru_Ext_runs), 7, 0, const_cast<UnicodeSet::bitquad_t *>(__guru_Ext_quads), 7, 0};
673
674        /** Code Point Ranges for Gujr
675        [0951, 0952], [0964, 0965], [0a81, 0a83], [0a85, 0a8d],
676        [0a8f, 0a91], [0a93, 0aa8], [0aaa, 0ab0], [0ab2, 0ab3],
677        [0ab5, 0ab9], [0abc, 0ac5], [0ac7, 0ac9], [0acb, 0acd],
678        [0ad0, 0ad0], [0ae0, 0ae3], [0ae6, 0af1], [0af9, 0aff],
679        [a830, a839]**/
680
681        namespace {
682        const static UnicodeSet::run_t __gujr_Ext_runs[] = {
683        {Empty, 74}, {Mixed, 2}, {Empty, 8}, {Mixed, 4}, {Empty, 1257},
684        {Mixed, 1}, {Empty, 33470}};
685        const static UnicodeSet::bitquad_t  __gujr_Ext_quads[] = {
686        0x00060000, 0x00000030, 0xfffbbfee, 0xf3edfdff, 0x00013bbf,
687        0xfe03ffcf, 0x03ff0000};
688        }
689
690        const static UnicodeSet gujr_Ext{const_cast<UnicodeSet::run_t *>(__gujr_Ext_runs), 7, 0, const_cast<UnicodeSet::bitquad_t *>(__gujr_Ext_quads), 7, 0};
691
692        /** Code Point Ranges for Orya
693        [0951, 0952], [0964, 0965], [0b01, 0b03], [0b05, 0b0c],
694        [0b0f, 0b10], [0b13, 0b28], [0b2a, 0b30], [0b32, 0b33],
695        [0b35, 0b39], [0b3c, 0b44], [0b47, 0b48], [0b4b, 0b4d],
696        [0b56, 0b57], [0b5c, 0b5d], [0b5f, 0b63], [0b66, 0b77],
697        [1cda, 1cda]**/
698
699        namespace {
700        const static UnicodeSet::run_t __orya_Ext_runs[] = {
701        {Empty, 74}, {Mixed, 2}, {Empty, 12}, {Mixed, 4}, {Empty, 138},
702        {Mixed, 1}, {Empty, 34585}};
703        const static UnicodeSet::bitquad_t  __orya_Ext_quads[] = {
704        0x00060000, 0x00000030, 0xfff99fee, 0xf3edfdff, 0xb0c0399f,
705        0x00ffffcf, 0x04000000};
706        }
707
708        const static UnicodeSet orya_Ext{const_cast<UnicodeSet::run_t *>(__orya_Ext_runs), 7, 0, const_cast<UnicodeSet::bitquad_t *>(__orya_Ext_quads), 7, 0};
709
710        /** Code Point Ranges for Taml
711        [0951, 0952], [0964, 0965], [0b82, 0b83], [0b85, 0b8a],
712        [0b8e, 0b90], [0b92, 0b95], [0b99, 0b9a], [0b9c, 0b9c],
713        [0b9e, 0b9f], [0ba3, 0ba4], [0ba8, 0baa], [0bae, 0bb9],
714        [0bbe, 0bc2], [0bc6, 0bc8], [0bca, 0bcd], [0bd0, 0bd0],
715        [0bd7, 0bd7], [0be6, 0bfa], [1cda, 1cda], [a8f3, a8f3],
716        [11301, 11301], [11303, 11303], [1133b, 1133c]**/
717
718        namespace {
719        const static UnicodeSet::run_t __taml_Ext_runs[] = {
720        {Empty, 74}, {Mixed, 2}, {Empty, 16}, {Mixed, 4}, {Empty, 134},
721        {Mixed, 1}, {Empty, 1120}, {Mixed, 1}, {Empty, 848}, {Mixed, 2},
722        {Empty, 32614}};
723        const static UnicodeSet::bitquad_t  __taml_Ext_quads[] = {
724        0x00060000, 0x00000030, 0xd63dc7ec, 0xc3ffc718, 0x00813dc7,
725        0x07ffffc0, 0x04000000, 0x00080000, 0x0000000a, 0x18000000};
726        }
727
728        const static UnicodeSet taml_Ext{const_cast<UnicodeSet::run_t *>(__taml_Ext_runs), 11, 0, const_cast<UnicodeSet::bitquad_t *>(__taml_Ext_quads), 10, 0};
729
730        /** Code Point Ranges for Telu
731        [0951, 0952], [0964, 0965], [0c00, 0c0c], [0c0e, 0c10],
732        [0c12, 0c28], [0c2a, 0c39], [0c3d, 0c44], [0c46, 0c48],
733        [0c4a, 0c4d], [0c55, 0c56], [0c58, 0c5a], [0c60, 0c63],
734        [0c66, 0c6f], [0c78, 0c7f], [1cda, 1cda]**/
735
736        namespace {
737        const static UnicodeSet::run_t __telu_Ext_runs[] = {
738        {Empty, 74}, {Mixed, 2}, {Empty, 20}, {Mixed, 4}, {Empty, 130},
739        {Mixed, 1}, {Empty, 34585}};
740        const static UnicodeSet::bitquad_t  __telu_Ext_quads[] = {
741        0x00060000, 0x00000030, 0xfffddfff, 0xe3fffdff, 0x07603ddf,
742        0xff00ffcf, 0x04000000};
743        }
744
745        const static UnicodeSet telu_Ext{const_cast<UnicodeSet::run_t *>(__telu_Ext_runs), 7, 0, const_cast<UnicodeSet::bitquad_t *>(__telu_Ext_quads), 7, 0};
746
747        /** Code Point Ranges for Knda
748        [0951, 0952], [0964, 0965], [0c80, 0c8c], [0c8e, 0c90],
749        [0c92, 0ca8], [0caa, 0cb3], [0cb5, 0cb9], [0cbc, 0cc4],
750        [0cc6, 0cc8], [0cca, 0ccd], [0cd5, 0cd6], [0cde, 0cde],
751        [0ce0, 0ce3], [0ce6, 0cef], [0cf1, 0cf2], [1cd0, 1cd0],
752        [1cd2, 1cd2], [1cda, 1cda], [1cf4, 1cf4], [a830, a835]**/
753
754        namespace {
755        const static UnicodeSet::run_t __knda_Ext_runs[] = {
756        {Empty, 74}, {Mixed, 2}, {Empty, 24}, {Mixed, 4}, {Empty, 126},
757        {Mixed, 2}, {Empty, 1113}, {Mixed, 1}, {Empty, 33470}};
758        const static UnicodeSet::bitquad_t  __knda_Ext_quads[] = {
759        0x00060000, 0x00000030, 0xfffddfff, 0xf3effdff, 0x40603ddf,
760        0x0006ffcf, 0x04050000, 0x00100000, 0x003f0000};
761        }
762
763        const static UnicodeSet knda_Ext{const_cast<UnicodeSet::run_t *>(__knda_Ext_runs), 9, 0, const_cast<UnicodeSet::bitquad_t *>(__knda_Ext_quads), 9, 0};
764
765        /** Code Point Ranges for Mlym
766        [0951, 0952], [0964, 0965], [0d00, 0d03], [0d05, 0d0c],
767        [0d0e, 0d10], [0d12, 0d44], [0d46, 0d48], [0d4a, 0d4f],
768        [0d54, 0d63], [0d66, 0d7f], [1cda, 1cda], [a830, a832]**/
769
770        namespace {
771        const static UnicodeSet::run_t __mlym_Ext_runs[] = {
772        {Empty, 74}, {Mixed, 2}, {Empty, 28}, {Mixed, 1}, {Full, 1},
773        {Mixed, 2}, {Empty, 122}, {Mixed, 1}, {Empty, 1114}, {Mixed, 1},
774        {Empty, 33470}};
775        const static UnicodeSet::bitquad_t  __mlym_Ext_quads[] = {
776        0x00060000, 0x00000030, 0xfffddfef, 0xfff0fddf, 0xffffffcf,
777        0x04000000, 0x00070000};
778        }
779
780        const static UnicodeSet mlym_Ext{const_cast<UnicodeSet::run_t *>(__mlym_Ext_runs), 11, 0, const_cast<UnicodeSet::bitquad_t *>(__mlym_Ext_quads), 7, 0};
781
782        /** Code Point Ranges for Sinh
783        [0964, 0965], [0d82, 0d83], [0d85, 0d96], [0d9a, 0db1],
784        [0db3, 0dbb], [0dbd, 0dbd], [0dc0, 0dc6], [0dca, 0dca],
785        [0dcf, 0dd4], [0dd6, 0dd6], [0dd8, 0ddf], [0de6, 0def],
786        [0df2, 0df4], [111e1, 111f4]**/
787
788        namespace {
789        const static UnicodeSet::run_t __sinh_Ext_runs[] = {
790        {Empty, 75}, {Mixed, 1}, {Empty, 32}, {Mixed, 4}, {Empty, 2079},
791        {Mixed, 1}, {Empty, 32624}};
792        const static UnicodeSet::bitquad_t  __sinh_Ext_quads[] = {
793        0x00000030, 0xfc7fffec, 0x2ffbffff, 0xff5f847f, 0x001cffc0,
794        0x001ffffe};
795        }
796
797        const static UnicodeSet sinh_Ext{const_cast<UnicodeSet::run_t *>(__sinh_Ext_runs), 7, 0, const_cast<UnicodeSet::bitquad_t *>(__sinh_Ext_quads), 6, 0};
798
799        /** Code Point Ranges for Thai
800        [0e01, 0e3a], [0e40, 0e5b]**/
801
802        namespace {
803        const static UnicodeSet::run_t __thai_Ext_runs[] = {
804        {Empty, 112}, {Mixed, 3}, {Empty, 34701}};
805        const static UnicodeSet::bitquad_t  __thai_Ext_quads[] = {
806        0xfffffffe, 0x07ffffff, 0x0fffffff};
807        }
808
809        const static UnicodeSet thai_Ext{const_cast<UnicodeSet::run_t *>(__thai_Ext_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__thai_Ext_quads), 3, 0};
810
811        /** Code Point Ranges for Laoo
812        [0e81, 0e82], [0e84, 0e84], [0e87, 0e88], [0e8a, 0e8a],
813        [0e8d, 0e8d], [0e94, 0e97], [0e99, 0e9f], [0ea1, 0ea3],
814        [0ea5, 0ea5], [0ea7, 0ea7], [0eaa, 0eab], [0ead, 0eb9],
815        [0ebb, 0ebd], [0ec0, 0ec4], [0ec6, 0ec6], [0ec8, 0ecd],
816        [0ed0, 0ed9], [0edc, 0edf]**/
817
818        namespace {
819        const static UnicodeSet::run_t __laoo_Ext_runs[] = {
820        {Empty, 116}, {Mixed, 3}, {Empty, 34697}};
821        const static UnicodeSet::bitquad_t  __laoo_Ext_quads[] = {
822        0xfef02596, 0x3bffecae, 0xf3ff3f5f};
823        }
824
825        const static UnicodeSet laoo_Ext{const_cast<UnicodeSet::run_t *>(__laoo_Ext_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__laoo_Ext_quads), 3, 0};
826
827        /** Code Point Ranges for Tibt
828        [0f00, 0f47], [0f49, 0f6c], [0f71, 0f97], [0f99, 0fbc],
829        [0fbe, 0fcc], [0fce, 0fd4], [0fd9, 0fda]**/
830
831        namespace {
832        const static UnicodeSet::run_t __tibt_Ext_runs[] = {
833        {Empty, 120}, {Full, 2}, {Mixed, 5}, {Empty, 34689}};
834        const static UnicodeSet::bitquad_t  __tibt_Ext_quads[] = {
835        0xfffffeff, 0xfffe1fff, 0xfeffffff, 0xdfffffff, 0x061fdfff};
836        }
837
838        const static UnicodeSet tibt_Ext{const_cast<UnicodeSet::run_t *>(__tibt_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__tibt_Ext_quads), 5, 0};
839
840        /** Code Point Ranges for Mymr
841        [1000, 109f], [a92e, a92e], [a9e0, a9fe], [aa60, aa7f]**/
842
843        namespace {
844        const static UnicodeSet::run_t __mymr_Ext_runs[] = {
845        {Empty, 128}, {Full, 5}, {Empty, 1220}, {Mixed, 1}, {Empty, 5},
846        {Mixed, 1}, {Empty, 3}, {Full, 1}, {Empty, 33452}};
847        const static UnicodeSet::bitquad_t  __mymr_Ext_quads[] = {
848        0x00004000, 0x7fffffff};
849        }
850
851        const static UnicodeSet mymr_Ext{const_cast<UnicodeSet::run_t *>(__mymr_Ext_runs), 9, 0, const_cast<UnicodeSet::bitquad_t *>(__mymr_Ext_quads), 2, 0};
852
853        /** Code Point Ranges for Geor
854        [0589, 0589], [10a0, 10c5], [10c7, 10c7], [10cd, 10cd],
855        [10d0, 10ff], [1c90, 1cba], [1cbd, 1cbf], [2d00, 2d25],
856        [2d27, 2d27], [2d2d, 2d2d]**/
857
858        namespace {
859        const static UnicodeSet::run_t __geor_Ext_runs[] = {
860        {Empty, 44}, {Mixed, 1}, {Empty, 88}, {Full, 1}, {Mixed, 1},
861        {Full, 1}, {Empty, 92}, {Mixed, 2}, {Empty, 130}, {Full, 1},
862        {Mixed, 1}, {Empty, 34454}};
863        const static UnicodeSet::bitquad_t  __geor_Ext_quads[] = {
864        0x00000200, 0xffff20bf, 0xffff0000, 0xe7ffffff, 0x000020bf};
865        }
866
867        const static UnicodeSet geor_Ext{const_cast<UnicodeSet::run_t *>(__geor_Ext_runs), 12, 0, const_cast<UnicodeSet::bitquad_t *>(__geor_Ext_quads), 5, 0};
868
869        /** Code Point Ranges for Hang
870        [1100, 11ff], [3001, 3003], [3008, 3011], [3013, 301f],
871        [302e, 3030], [3037, 3037], [30fb, 30fb], [3131, 318e],
872        [3200, 321e], [3260, 327e], [a960, a97c], [ac00, d7a3],
873        [d7b0, d7c6], [d7cb, d7fb], [fe45, fe46], [ff61, ff65],
874        [ffa0, ffbe], [ffc2, ffc7], [ffca, ffcf], [ffd2, ffd7],
875        [ffda, ffdc]**/
876
877        namespace {
878        const static UnicodeSet::run_t __hang_Ext_runs[] = {
879        {Empty, 136}, {Full, 8}, {Empty, 240}, {Mixed, 2}, {Empty, 5},
880        {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Full, 2}, {Mixed, 1},
881        {Empty, 3}, {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Empty, 951},
882        {Mixed, 1}, {Empty, 20}, {Full, 349}, {Mixed, 3}, {Empty, 306},
883        {Mixed, 1}, {Empty, 8}, {Mixed, 1}, {Empty, 1}, {Mixed, 2},
884        {Empty, 32769}};
885        const static UnicodeSet::bitquad_t  __hang_Ext_quads[] = {
886        0xfffbff0e, 0x0081c000, 0x08000000, 0xfffe0000, 0x00007fff,
887        0x7fffffff, 0x7fffffff, 0x1fffffff, 0xffff000f, 0xfffff87f,
888        0x0fffffff, 0x00000060, 0x0000003e, 0x7fffffff, 0x1cfcfcfc};
889        }
890
891        const static UnicodeSet hang_Ext{const_cast<UnicodeSet::run_t *>(__hang_Ext_runs), 26, 0, const_cast<UnicodeSet::bitquad_t *>(__hang_Ext_quads), 15, 0};
892
893        /** Code Point Ranges for Ethi
894        [1200, 1248], [124a, 124d], [1250, 1256], [1258, 1258],
895        [125a, 125d], [1260, 1288], [128a, 128d], [1290, 12b0],
896        [12b2, 12b5], [12b8, 12be], [12c0, 12c0], [12c2, 12c5],
897        [12c8, 12d6], [12d8, 1310], [1312, 1315], [1318, 135a],
898        [135d, 137c], [1380, 1399], [2d80, 2d96], [2da0, 2da6],
899        [2da8, 2dae], [2db0, 2db6], [2db8, 2dbe], [2dc0, 2dc6],
900        [2dc8, 2dce], [2dd0, 2dd6], [2dd8, 2dde], [ab01, ab06],
901        [ab09, ab0e], [ab11, ab16], [ab20, ab26], [ab28, ab2e]**/
902
903        namespace {
904        const static UnicodeSet::run_t __ethi_Ext_runs[] = {
905        {Empty, 144}, {Full, 2}, {Mixed, 1}, {Full, 1}, {Mixed, 3},
906        {Full, 1}, {Mixed, 1}, {Full, 1}, {Mixed, 3}, {Empty, 207},
907        {Mixed, 3}, {Empty, 1001}, {Mixed, 2}, {Empty, 33446}};
908        const static UnicodeSet::bitquad_t  __ethi_Ext_quads[] = {
909        0x3d7f3dff, 0xffff3dff, 0x7f3dffff, 0xff7fff3d, 0xff3dffff,
910        0xe7ffffff, 0x1fffffff, 0x03ffffff, 0x007fffff, 0x7f7f7f7f,
911        0x7f7f7f7f, 0x007e7e7e, 0x00007f7f};
912        }
913
914        const static UnicodeSet ethi_Ext{const_cast<UnicodeSet::run_t *>(__ethi_Ext_runs), 14, 0, const_cast<UnicodeSet::bitquad_t *>(__ethi_Ext_quads), 13, 0};
915
916        /** Code Point Ranges for Cher
917        [13a0, 13f5], [13f8, 13fd], [ab70, abbf]**/
918
919        namespace {
920        const static UnicodeSet::run_t __cher_Ext_runs[] = {
921        {Empty, 157}, {Full, 2}, {Mixed, 1}, {Empty, 1211}, {Mixed, 1},
922        {Full, 2}, {Empty, 33442}};
923        const static UnicodeSet::bitquad_t  __cher_Ext_quads[] = {
924        0x3f3fffff, 0xffff0000};
925        }
926
927        const static UnicodeSet cher_Ext{const_cast<UnicodeSet::run_t *>(__cher_Ext_runs), 7, 0, const_cast<UnicodeSet::bitquad_t *>(__cher_Ext_quads), 2, 0};
928
929        /** Code Point Ranges for Cans
930        [1400, 167f], [18b0, 18f5]**/
931
932        namespace {
933        const static UnicodeSet::run_t __cans_Ext_runs[] = {
934        {Empty, 160}, {Full, 20}, {Empty, 17}, {Mixed, 1}, {Full, 1},
935        {Mixed, 1}, {Empty, 34616}};
936        const static UnicodeSet::bitquad_t  __cans_Ext_quads[] = {
937        0xffff0000, 0x003fffff};
938        }
939
940        const static UnicodeSet cans_Ext{const_cast<UnicodeSet::run_t *>(__cans_Ext_runs), 7, 0, const_cast<UnicodeSet::bitquad_t *>(__cans_Ext_quads), 2, 0};
941
942        /** Code Point Ranges for Ogam
943        [1680, 169c]**/
944
945        namespace {
946        const static UnicodeSet::run_t __ogam_Ext_runs[] = {
947        {Empty, 180}, {Mixed, 1}, {Empty, 34635}};
948        const static UnicodeSet::bitquad_t  __ogam_Ext_quads[] = {
949        0x1fffffff};
950        }
951
952        const static UnicodeSet ogam_Ext{const_cast<UnicodeSet::run_t *>(__ogam_Ext_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__ogam_Ext_quads), 1, 0};
953
954        /** Code Point Ranges for Runr
955        [16a0, 16ea], [16ee, 16f8]**/
956
957        namespace {
958        const static UnicodeSet::run_t __runr_Ext_runs[] = {
959        {Empty, 181}, {Full, 2}, {Mixed, 1}, {Empty, 34632}};
960        const static UnicodeSet::bitquad_t  __runr_Ext_quads[] = {
961        0x01ffc7ff};
962        }
963
964        const static UnicodeSet runr_Ext{const_cast<UnicodeSet::run_t *>(__runr_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__runr_Ext_quads), 1, 0};
965
966        /** Code Point Ranges for Khmr
967        [1780, 17dd], [17e0, 17e9], [17f0, 17f9], [19e0, 19ff]**/
968
969        namespace {
970        const static UnicodeSet::run_t __khmr_Ext_runs[] = {
971        {Empty, 188}, {Full, 2}, {Mixed, 2}, {Empty, 15}, {Full, 1},
972        {Empty, 34608}};
973        const static UnicodeSet::bitquad_t  __khmr_Ext_quads[] = {
974        0x3fffffff, 0x03ff03ff};
975        }
976
977        const static UnicodeSet khmr_Ext{const_cast<UnicodeSet::run_t *>(__khmr_Ext_runs), 6, 0, const_cast<UnicodeSet::bitquad_t *>(__khmr_Ext_quads), 2, 0};
978
979        /** Code Point Ranges for Mong
980        [1800, 180e], [1810, 1819], [1820, 1878], [1880, 18aa],
981        [11660, 1166c]**/
982
983        namespace {
984        const static UnicodeSet::run_t __mong_Ext_runs[] = {
985        {Empty, 192}, {Mixed, 1}, {Full, 2}, {Mixed, 1}, {Full, 1},
986        {Mixed, 1}, {Empty, 2029}, {Mixed, 1}, {Empty, 32588}};
987        const static UnicodeSet::bitquad_t  __mong_Ext_quads[] = {
988        0x03ff7fff, 0x01ffffff, 0x000007ff, 0x00001fff};
989        }
990
991        const static UnicodeSet mong_Ext{const_cast<UnicodeSet::run_t *>(__mong_Ext_runs), 9, 0, const_cast<UnicodeSet::bitquad_t *>(__mong_Ext_quads), 4, 0};
992
993        /** Code Point Ranges for Hira
994        [3001, 3003], [3008, 3011], [3013, 301f], [3030, 3035],
995        [3037, 3037], [303c, 303d], [3041, 3096], [3099, 30a0],
996        [30fb, 30fc], [fe45, fe46], [ff61, ff65], [ff70, ff70],
997        [ff9e, ff9f], [1b001, 1b11e], [1f200, 1f200]**/
998
999        namespace {
1000        const static UnicodeSet::run_t __hira_Ext_runs[] = {
1001        {Empty, 384}, {Mixed, 3}, {Full, 1}, {Mixed, 2}, {Empty, 1},
1002        {Mixed, 1}, {Empty, 1642}, {Mixed, 1}, {Empty, 8}, {Mixed, 2},
1003        {Empty, 1411}, {Mixed, 1}, {Full, 7}, {Mixed, 1}, {Empty, 519},
1004        {Mixed, 1}, {Empty, 30831}};
1005        const static UnicodeSet::bitquad_t  __hira_Ext_quads[] = {
1006        0xfffbff0e, 0x30bf0000, 0xfffffffe, 0xfe7fffff, 0x00000001,
1007        0x18000000, 0x00000060, 0x0001003e, 0xc0000000, 0xfffffffe,
1008        0x7fffffff, 0x00000001};
1009        }
1010
1011        const static UnicodeSet hira_Ext{const_cast<UnicodeSet::run_t *>(__hira_Ext_runs), 17, 0, const_cast<UnicodeSet::bitquad_t *>(__hira_Ext_quads), 12, 0};
1012
1013        /** Code Point Ranges for Kana
1014        [3001, 3003], [3008, 3011], [3013, 301f], [3030, 3035],
1015        [3037, 3037], [303c, 303d], [3099, 309c], [30a0, 30ff],
1016        [31f0, 31ff], [32d0, 32fe], [3300, 3357], [fe45, fe46],
1017        [ff61, ff9f], [1b000, 1b000]**/
1018
1019        namespace {
1020        const static UnicodeSet::run_t __kana_Ext_runs[] = {
1021        {Empty, 384}, {Mixed, 2}, {Empty, 2}, {Mixed, 1}, {Full, 3},
1022        {Empty, 7}, {Mixed, 1}, {Empty, 6}, {Mixed, 2}, {Full, 2},
1023        {Mixed, 1}, {Empty, 1623}, {Mixed, 1}, {Empty, 8}, {Mixed, 1},
1024        {Full, 1}, {Empty, 1411}, {Mixed, 1}, {Empty, 31359}};
1025        const static UnicodeSet::bitquad_t  __kana_Ext_quads[] = {
1026        0xfffbff0e, 0x30bf0000, 0x1e000000, 0xffff0000, 0xffff0000,
1027        0x7fffffff, 0x00ffffff, 0x00000060, 0xfffffffe, 0x00000001};
1028        }
1029
1030        const static UnicodeSet kana_Ext{const_cast<UnicodeSet::run_t *>(__kana_Ext_runs), 19, 0, const_cast<UnicodeSet::bitquad_t *>(__kana_Ext_quads), 10, 0};
1031
1032        /** Code Point Ranges for Bopo
1033        [02ea, 02eb], [3001, 3003], [3008, 3011], [3013, 301f],
1034        [302a, 302d], [3030, 3030], [3037, 3037], [30fb, 30fb],
1035        [3105, 312f], [31a0, 31ba], [fe45, fe46], [ff61, ff65]**/
1036
1037        namespace {
1038        const static UnicodeSet::run_t __bopo_Ext_runs[] = {
1039        {Empty, 23}, {Mixed, 1}, {Empty, 360}, {Mixed, 2}, {Empty, 5},
1040        {Mixed, 3}, {Empty, 3}, {Mixed, 1}, {Empty, 1636}, {Mixed, 1},
1041        {Empty, 8}, {Mixed, 1}, {Empty, 32772}};
1042        const static UnicodeSet::bitquad_t  __bopo_Ext_quads[] = {
1043        0x00000c00, 0xfffbff0e, 0x00813c00, 0x08000000, 0xffffffe0,
1044        0x0000ffff, 0x07ffffff, 0x00000060, 0x0000003e};
1045        }
1046
1047        const static UnicodeSet bopo_Ext{const_cast<UnicodeSet::run_t *>(__bopo_Ext_runs), 13, 0, const_cast<UnicodeSet::bitquad_t *>(__bopo_Ext_quads), 9, 0};
1048
1049        /** Code Point Ranges for Hani
1050        [2e80, 2e99], [2e9b, 2ef3], [2f00, 2fd5], [3001, 3003],
1051        [3005, 3011], [3013, 301f], [3021, 302d], [3030, 3030],
1052        [3037, 303f], [30fb, 30fb], [3190, 319f], [31c0, 31e3],
1053        [3220, 3247], [3280, 32b0], [32c0, 32cb], [3358, 3370],
1054        [337b, 337f], [33e0, 33fe], [3400, 4db5], [4e00, 9fef],
1055        [f900, fa6d], [fa70, fad9], [fe45, fe46], [ff61, ff65],
1056        [1d360, 1d371], [1f250, 1f251], [20000, 2a6d6], [2a700, 2b734],
1057        [2b740, 2b81d], [2b820, 2cea1], [2ceb0, 2ebe0], [2f800, 2fa1d]**/
1058
1059        namespace {
1060        const static UnicodeSet::run_t __hani_Ext_runs[] = {
1061        {Empty, 372}, {Mixed, 1}, {Full, 2}, {Mixed, 1}, {Full, 6},
1062        {Mixed, 1}, {Empty, 1}, {Mixed, 2}, {Empty, 5}, {Mixed, 1},
1063        {Empty, 4}, {Mixed, 1}, {Empty, 1}, {Full, 1}, {Mixed, 1},
1064        {Empty, 1}, {Full, 1}, {Mixed, 1}, {Empty, 1}, {Full, 1},
1065        {Mixed, 2}, {Empty, 3}, {Mixed, 2}, {Empty, 3}, {Mixed, 1},
1066        {Full, 205}, {Mixed, 1}, {Empty, 2}, {Full, 655}, {Mixed, 1},
1067        {Empty, 712}, {Full, 11}, {Mixed, 1}, {Full, 2}, {Mixed, 1},
1068        {Empty, 27}, {Mixed, 1}, {Empty, 8}, {Mixed, 1}, {Empty, 1695},
1069        {Mixed, 1}, {Empty, 246}, {Mixed, 1}, {Empty, 109}, {Full, 1334},
1070        {Mixed, 1}, {Empty, 1}, {Full, 129}, {Mixed, 1}, {Full, 6},
1071        {Mixed, 1}, {Full, 180}, {Mixed, 1}, {Full, 233}, {Mixed, 1},
1072        {Empty, 96}, {Full, 16}, {Mixed, 1}, {Empty, 28719}};
1073        const static UnicodeSet::bitquad_t  __hani_Ext_quads[] = {
1074        0xfbffffff, 0x000fffff, 0x003fffff, 0xfffbffee, 0xff813ffe,
1075        0x08000000, 0xffff0000, 0x0000000f, 0x000000ff, 0x0001ffff,
1076        0x00000fff, 0xff000000, 0xf801ffff, 0x7fffffff, 0x003fffff,
1077        0x0000ffff, 0xffff3fff, 0x03ffffff, 0x00000060, 0x0000003e,
1078        0x0003ffff, 0x00030000, 0x007fffff, 0x001fffff, 0x3fffffff,
1079        0xffff0003, 0x00000001, 0x3fffffff};
1080        }
1081
1082        const static UnicodeSet hani_Ext{const_cast<UnicodeSet::run_t *>(__hani_Ext_runs), 59, 0, const_cast<UnicodeSet::bitquad_t *>(__hani_Ext_quads), 28, 0};
1083
1084        /** Code Point Ranges for Yiii
1085        [3001, 3002], [3008, 3011], [3014, 301b], [30fb, 30fb],
1086        [a000, a48c], [a490, a4c6], [ff61, ff65]**/
1087
1088        namespace {
1089        const static UnicodeSet::run_t __yiii_Ext_runs[] = {
1090        {Empty, 384}, {Mixed, 1}, {Empty, 6}, {Mixed, 1}, {Empty, 888},
1091        {Full, 36}, {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Empty, 724},
1092        {Mixed, 1}, {Empty, 32772}};
1093        const static UnicodeSet::bitquad_t  __yiii_Ext_quads[] = {
1094        0x0ff3ff06, 0x08000000, 0xffff1fff, 0x0000007f, 0x0000003e};
1095        }
1096
1097        const static UnicodeSet yiii_Ext{const_cast<UnicodeSet::run_t *>(__yiii_Ext_runs), 12, 0, const_cast<UnicodeSet::bitquad_t *>(__yiii_Ext_quads), 5, 0};
1098
1099        /** Code Point Ranges for Ital
1100        [10300, 10323], [1032d, 1032f]**/
1101
1102        namespace {
1103        const static UnicodeSet::run_t __ital_Ext_runs[] = {
1104        {Empty, 2072}, {Full, 1}, {Mixed, 1}, {Empty, 32742}};
1105        const static UnicodeSet::bitquad_t  __ital_Ext_quads[] = {
1106        0x0000e00f};
1107        }
1108
1109        const static UnicodeSet ital_Ext{const_cast<UnicodeSet::run_t *>(__ital_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__ital_Ext_quads), 1, 0};
1110
1111        /** Code Point Ranges for Goth
1112        [10330, 1034a]**/
1113
1114        namespace {
1115        const static UnicodeSet::run_t __goth_Ext_runs[] = {
1116        {Empty, 2073}, {Mixed, 2}, {Empty, 32741}};
1117        const static UnicodeSet::bitquad_t  __goth_Ext_quads[] = {
1118        0xffff0000, 0x000007ff};
1119        }
1120
1121        const static UnicodeSet goth_Ext{const_cast<UnicodeSet::run_t *>(__goth_Ext_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__goth_Ext_quads), 2, 0};
1122
1123        /** Code Point Ranges for Dsrt
1124        [10400, 1044f]**/
1125
1126        namespace {
1127        const static UnicodeSet::run_t __dsrt_Ext_runs[] = {
1128        {Empty, 2080}, {Full, 2}, {Mixed, 1}, {Empty, 32733}};
1129        const static UnicodeSet::bitquad_t  __dsrt_Ext_quads[] = {
1130        0x0000ffff};
1131        }
1132
1133        const static UnicodeSet dsrt_Ext{const_cast<UnicodeSet::run_t *>(__dsrt_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__dsrt_Ext_quads), 1, 0};
1134
1135        /** Code Point Ranges for Zinh
1136        [0300, 0341], [0343, 0344], [0346, 0362], [1ab0, 1abe],
1137        [1dc2, 1df9], [1dfb, 1dff], [200c, 200d], [20d0, 20ef],
1138        [fe00, fe0f], [fe20, fe2d], [101fd, 101fd], [1d167, 1d169],
1139        [1d17b, 1d182], [1d185, 1d18b], [1d1aa, 1d1ad], [e0100, e01ef]**/
1140
1141        namespace {
1142        const static UnicodeSet::run_t __zinh_Ext_runs[] = {
1143        {Empty, 24}, {Full, 2}, {Mixed, 2}, {Empty, 185}, {Mixed, 1},
1144        {Empty, 24}, {Mixed, 2}, {Empty, 16}, {Mixed, 1}, {Empty, 5},
1145        {Mixed, 2}, {Empty, 1768}, {Mixed, 2}, {Empty, 29}, {Mixed, 1},
1146        {Empty, 1659}, {Mixed, 3}, {Empty, 24954}, {Full, 7}, {Mixed, 1},
1147        {Empty, 6128}};
1148        const static UnicodeSet::bitquad_t  __zinh_Ext_quads[] = {
1149        0xffffffdb, 0x00000007, 0x7fff0000, 0xfffffffc, 0xfbffffff,
1150        0x00003000, 0xffff0000, 0x0000ffff, 0x0000ffff, 0x00003fff,
1151        0x20000000, 0xf8000380, 0x00000fe7, 0x00003c00, 0x0000ffff};
1152        }
1153
1154        const static UnicodeSet zinh_Ext{const_cast<UnicodeSet::run_t *>(__zinh_Ext_runs), 21, 0, const_cast<UnicodeSet::bitquad_t *>(__zinh_Ext_quads), 15, 0};
1155
1156        /** Code Point Ranges for Tglg
1157        [1700, 170c], [170e, 1714], [1735, 1736]**/
1158
1159        namespace {
1160        const static UnicodeSet::run_t __tglg_Ext_runs[] = {
1161        {Empty, 184}, {Mixed, 2}, {Empty, 34630}};
1162        const static UnicodeSet::bitquad_t  __tglg_Ext_quads[] = {
1163        0x001fdfff, 0x00600000};
1164        }
1165
1166        const static UnicodeSet tglg_Ext{const_cast<UnicodeSet::run_t *>(__tglg_Ext_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__tglg_Ext_quads), 2, 0};
1167
1168        /** Code Point Ranges for Hano
1169        [1720, 1736]**/
1170
1171        namespace {
1172        const static UnicodeSet::run_t __hano_Ext_runs[] = {
1173        {Empty, 185}, {Mixed, 1}, {Empty, 34630}};
1174        const static UnicodeSet::bitquad_t  __hano_Ext_quads[] = {
1175        0x007fffff};
1176        }
1177
1178        const static UnicodeSet hano_Ext{const_cast<UnicodeSet::run_t *>(__hano_Ext_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__hano_Ext_quads), 1, 0};
1179
1180        /** Code Point Ranges for Buhd
1181        [1735, 1736], [1740, 1753]**/
1182
1183        namespace {
1184        const static UnicodeSet::run_t __buhd_Ext_runs[] = {
1185        {Empty, 185}, {Mixed, 2}, {Empty, 34629}};
1186        const static UnicodeSet::bitquad_t  __buhd_Ext_quads[] = {
1187        0x00600000, 0x000fffff};
1188        }
1189
1190        const static UnicodeSet buhd_Ext{const_cast<UnicodeSet::run_t *>(__buhd_Ext_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__buhd_Ext_quads), 2, 0};
1191
1192        /** Code Point Ranges for Tagb
1193        [1735, 1736], [1760, 176c], [176e, 1770], [1772, 1773]**/
1194
1195        namespace {
1196        const static UnicodeSet::run_t __tagb_Ext_runs[] = {
1197        {Empty, 185}, {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 34628}};
1198        const static UnicodeSet::bitquad_t  __tagb_Ext_quads[] = {
1199        0x00600000, 0x000ddfff};
1200        }
1201
1202        const static UnicodeSet tagb_Ext{const_cast<UnicodeSet::run_t *>(__tagb_Ext_runs), 5, 0, const_cast<UnicodeSet::bitquad_t *>(__tagb_Ext_quads), 2, 0};
1203
1204        /** Code Point Ranges for Limb
1205        [0965, 0965], [1900, 191e], [1920, 192b], [1930, 193b],
1206        [1940, 1940], [1944, 194f]**/
1207
1208        namespace {
1209        const static UnicodeSet::run_t __limb_Ext_runs[] = {
1210        {Empty, 75}, {Mixed, 1}, {Empty, 124}, {Mixed, 3}, {Empty, 34613}};
1211        const static UnicodeSet::bitquad_t  __limb_Ext_quads[] = {
1212        0x00000020, 0x7fffffff, 0x0fff0fff, 0x0000fff1};
1213        }
1214
1215        const static UnicodeSet limb_Ext{const_cast<UnicodeSet::run_t *>(__limb_Ext_runs), 5, 0, const_cast<UnicodeSet::bitquad_t *>(__limb_Ext_quads), 4, 0};
1216
1217        /** Code Point Ranges for Tale
1218        [1040, 1049], [1950, 196d], [1970, 1974]**/
1219
1220        namespace {
1221        const static UnicodeSet::run_t __tale_Ext_runs[] = {
1222        {Empty, 130}, {Mixed, 1}, {Empty, 71}, {Mixed, 2}, {Empty, 34612}};
1223        const static UnicodeSet::bitquad_t  __tale_Ext_quads[] = {
1224        0x000003ff, 0xffff0000, 0x001f3fff};
1225        }
1226
1227        const static UnicodeSet tale_Ext{const_cast<UnicodeSet::run_t *>(__tale_Ext_runs), 5, 0, const_cast<UnicodeSet::bitquad_t *>(__tale_Ext_quads), 3, 0};
1228
1229        /** Code Point Ranges for Linb
1230        [10000, 1000b], [1000d, 10026], [10028, 1003a], [1003c, 1003d],
1231        [1003f, 1004d], [10050, 1005d], [10080, 100fa], [10100, 10102],
1232        [10107, 10133], [10137, 1013f]**/
1233
1234        namespace {
1235        const static UnicodeSet::run_t __linb_Ext_runs[] = {
1236        {Empty, 2048}, {Mixed, 3}, {Empty, 1}, {Full, 3}, {Mixed, 3},
1237        {Empty, 32758}};
1238        const static UnicodeSet::bitquad_t  __linb_Ext_quads[] = {
1239        0xffffefff, 0xb7ffff7f, 0x3fff3fff, 0x07ffffff, 0xffffff87,
1240        0xff8fffff};
1241        }
1242
1243        const static UnicodeSet linb_Ext{const_cast<UnicodeSet::run_t *>(__linb_Ext_runs), 6, 0, const_cast<UnicodeSet::bitquad_t *>(__linb_Ext_quads), 6, 0};
1244
1245        /** Code Point Ranges for Ugar
1246        [10380, 1039d], [1039f, 1039f]**/
1247
1248        namespace {
1249        const static UnicodeSet::run_t __ugar_Ext_runs[] = {
1250        {Empty, 2076}, {Mixed, 1}, {Empty, 32739}};
1251        const static UnicodeSet::bitquad_t  __ugar_Ext_quads[] = {
1252        0xbfffffff};
1253        }
1254
1255        const static UnicodeSet ugar_Ext{const_cast<UnicodeSet::run_t *>(__ugar_Ext_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__ugar_Ext_quads), 1, 0};
1256
1257        /** Code Point Ranges for Shaw
1258        [10450, 1047f]**/
1259
1260        namespace {
1261        const static UnicodeSet::run_t __shaw_Ext_runs[] = {
1262        {Empty, 2082}, {Mixed, 1}, {Full, 1}, {Empty, 32732}};
1263        const static UnicodeSet::bitquad_t  __shaw_Ext_quads[] = {
1264        0xffff0000};
1265        }
1266
1267        const static UnicodeSet shaw_Ext{const_cast<UnicodeSet::run_t *>(__shaw_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__shaw_Ext_quads), 1, 0};
1268
1269        /** Code Point Ranges for Osma
1270        [10480, 1049d], [104a0, 104a9]**/
1271
1272        namespace {
1273        const static UnicodeSet::run_t __osma_Ext_runs[] = {
1274        {Empty, 2084}, {Mixed, 2}, {Empty, 32730}};
1275        const static UnicodeSet::bitquad_t  __osma_Ext_quads[] = {
1276        0x3fffffff, 0x000003ff};
1277        }
1278
1279        const static UnicodeSet osma_Ext{const_cast<UnicodeSet::run_t *>(__osma_Ext_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__osma_Ext_quads), 2, 0};
1280
1281        /** Code Point Ranges for Cprt
1282        [10100, 10102], [10107, 10133], [10137, 1013f], [10800, 10805],
1283        [10808, 10808], [1080a, 10835], [10837, 10838], [1083c, 1083c],
1284        [1083f, 1083f]**/
1285
1286        namespace {
1287        const static UnicodeSet::run_t __cprt_Ext_runs[] = {
1288        {Empty, 2056}, {Mixed, 2}, {Empty, 54}, {Mixed, 2}, {Empty, 32702}};
1289        const static UnicodeSet::bitquad_t  __cprt_Ext_quads[] = {
1290        0xffffff87, 0xff8fffff, 0xfffffd3f, 0x91bfffff};
1291        }
1292
1293        const static UnicodeSet cprt_Ext{const_cast<UnicodeSet::run_t *>(__cprt_Ext_runs), 5, 0, const_cast<UnicodeSet::bitquad_t *>(__cprt_Ext_quads), 4, 0};
1294
1295        /** Code Point Ranges for Brai
1296        [2800, 28ff]**/
1297
1298        namespace {
1299        const static UnicodeSet::run_t __brai_Ext_runs[] = {
1300        {Empty, 320}, {Full, 8}, {Empty, 34488}};
1301        const static UnicodeSet::bitquad_t * const __brai_Ext_quads = nullptr;
1302        }
1303
1304        const static UnicodeSet brai_Ext{const_cast<UnicodeSet::run_t *>(__brai_Ext_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__brai_Ext_quads), 0, 0};
1305
1306        /** Code Point Ranges for Bugi
1307        [1a00, 1a1b], [1a1e, 1a1f], [a9cf, a9cf]**/
1308
1309        namespace {
1310        const static UnicodeSet::run_t __bugi_Ext_runs[] = {
1311        {Empty, 208}, {Mixed, 1}, {Empty, 1149}, {Mixed, 1}, {Empty, 33457}};
1312        const static UnicodeSet::bitquad_t  __bugi_Ext_quads[] = {
1313        0xcfffffff, 0x00008000};
1314        }
1315
1316        const static UnicodeSet bugi_Ext{const_cast<UnicodeSet::run_t *>(__bugi_Ext_runs), 5, 0, const_cast<UnicodeSet::bitquad_t *>(__bugi_Ext_quads), 2, 0};
1317
1318        /** Code Point Ranges for Copt
1319        [03e2, 03ef], [2c80, 2cf3], [2cf9, 2cff], [102e0, 102fb]**/
1320
1321        namespace {
1322        const static UnicodeSet::run_t __copt_Ext_runs[] = {
1323        {Empty, 31}, {Mixed, 1}, {Empty, 324}, {Full, 3}, {Mixed, 1},
1324        {Empty, 1711}, {Mixed, 1}, {Empty, 32744}};
1325        const static UnicodeSet::bitquad_t  __copt_Ext_quads[] = {
1326        0x0000fffc, 0xfe0fffff, 0x0fffffff};
1327        }
1328
1329        const static UnicodeSet copt_Ext{const_cast<UnicodeSet::run_t *>(__copt_Ext_runs), 8, 0, const_cast<UnicodeSet::bitquad_t *>(__copt_Ext_quads), 3, 0};
1330
1331        /** Code Point Ranges for Talu
1332        [1980, 19ab], [19b0, 19c9], [19d0, 19da], [19de, 19df]**/
1333
1334        namespace {
1335        const static UnicodeSet::run_t __talu_Ext_runs[] = {
1336        {Empty, 204}, {Full, 1}, {Mixed, 2}, {Empty, 34609}};
1337        const static UnicodeSet::bitquad_t  __talu_Ext_quads[] = {
1338        0xffff0fff, 0xc7ff03ff};
1339        }
1340
1341        const static UnicodeSet talu_Ext{const_cast<UnicodeSet::run_t *>(__talu_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__talu_Ext_quads), 2, 0};
1342
1343        /** Code Point Ranges for Glag
1344        [0484, 0484], [0487, 0487], [2c00, 2c2e], [2c30, 2c5e],
1345        [2e43, 2e43], [a66f, a66f], [1e000, 1e006], [1e008, 1e018],
1346        [1e01b, 1e021], [1e023, 1e024], [1e026, 1e02a]**/
1347
1348        namespace {
1349        const static UnicodeSet::run_t __glag_Ext_runs[] = {
1350        {Empty, 36}, {Mixed, 1}, {Empty, 315}, {Full, 1}, {Mixed, 2},
1351        {Empty, 15}, {Mixed, 1}, {Empty, 960}, {Mixed, 1}, {Empty, 2508},
1352        {Mixed, 2}, {Empty, 30974}};
1353        const static UnicodeSet::bitquad_t  __glag_Ext_quads[] = {
1354        0x00000090, 0xffff7fff, 0x7fffffff, 0x00000008, 0x00008000,
1355        0xf9ffff7f, 0x000007db};
1356        }
1357
1358        const static UnicodeSet glag_Ext{const_cast<UnicodeSet::run_t *>(__glag_Ext_runs), 12, 0, const_cast<UnicodeSet::bitquad_t *>(__glag_Ext_quads), 7, 0};
1359
1360        /** Code Point Ranges for Tfng
1361        [2d30, 2d67], [2d6f, 2d70], [2d7f, 2d7f]**/
1362
1363        namespace {
1364        const static UnicodeSet::run_t __tfng_Ext_runs[] = {
1365        {Empty, 361}, {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Empty, 34452}};
1366        const static UnicodeSet::bitquad_t  __tfng_Ext_quads[] = {
1367        0xffff0000, 0x800180ff};
1368        }
1369
1370        const static UnicodeSet tfng_Ext{const_cast<UnicodeSet::run_t *>(__tfng_Ext_runs), 5, 0, const_cast<UnicodeSet::bitquad_t *>(__tfng_Ext_quads), 2, 0};
1371
1372        /** Code Point Ranges for Sylo
1373        [0964, 0965], [09e6, 09ef], [a800, a82b]**/
1374
1375        namespace {
1376        const static UnicodeSet::run_t __sylo_Ext_runs[] = {
1377        {Empty, 75}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 1264},
1378        {Full, 1}, {Mixed, 1}, {Empty, 33470}};
1379        const static UnicodeSet::bitquad_t  __sylo_Ext_quads[] = {
1380        0x00000030, 0x0000ffc0, 0x00000fff};
1381        }
1382
1383        const static UnicodeSet sylo_Ext{const_cast<UnicodeSet::run_t *>(__sylo_Ext_runs), 8, 0, const_cast<UnicodeSet::bitquad_t *>(__sylo_Ext_quads), 3, 0};
1384
1385        /** Code Point Ranges for Xpeo
1386        [103a0, 103c3], [103c8, 103d5]**/
1387
1388        namespace {
1389        const static UnicodeSet::run_t __xpeo_Ext_runs[] = {
1390        {Empty, 2077}, {Full, 1}, {Mixed, 1}, {Empty, 32737}};
1391        const static UnicodeSet::bitquad_t  __xpeo_Ext_quads[] = {
1392        0x003fff0f};
1393        }
1394
1395        const static UnicodeSet xpeo_Ext{const_cast<UnicodeSet::run_t *>(__xpeo_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__xpeo_Ext_quads), 1, 0};
1396
1397        /** Code Point Ranges for Khar
1398        [10a00, 10a03], [10a05, 10a06], [10a0c, 10a13], [10a15, 10a17],
1399        [10a19, 10a35], [10a38, 10a3a], [10a3f, 10a48], [10a50, 10a58]**/
1400
1401        namespace {
1402        const static UnicodeSet::run_t __khar_Ext_runs[] = {
1403        {Empty, 2128}, {Mixed, 3}, {Empty, 32685}};
1404        const static UnicodeSet::bitquad_t  __khar_Ext_quads[] = {
1405        0xfeeff06f, 0x873fffff, 0x01ff01ff};
1406        }
1407
1408        const static UnicodeSet khar_Ext{const_cast<UnicodeSet::run_t *>(__khar_Ext_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__khar_Ext_quads), 3, 0};
1409
1410        /** Code Point Ranges for Bali
1411        [1b00, 1b4b], [1b50, 1b7c]**/
1412
1413        namespace {
1414        const static UnicodeSet::run_t __bali_Ext_runs[] = {
1415        {Empty, 216}, {Full, 2}, {Mixed, 2}, {Empty, 34596}};
1416        const static UnicodeSet::bitquad_t  __bali_Ext_quads[] = {
1417        0xffff0fff, 0x1fffffff};
1418        }
1419
1420        const static UnicodeSet bali_Ext{const_cast<UnicodeSet::run_t *>(__bali_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__bali_Ext_quads), 2, 0};
1421
1422        /** Code Point Ranges for Xsux
1423        [12000, 12399], [12400, 1246e], [12470, 12474], [12480, 12543]**/
1424
1425        namespace {
1426        const static UnicodeSet::run_t __xsux_Ext_runs[] = {
1427        {Empty, 2304}, {Full, 28}, {Mixed, 1}, {Empty, 3}, {Full, 3},
1428        {Mixed, 1}, {Full, 6}, {Mixed, 1}, {Empty, 32469}};
1429        const static UnicodeSet::bitquad_t  __xsux_Ext_quads[] = {
1430        0x03ffffff, 0x001f7fff, 0x0000000f};
1431        }
1432
1433        const static UnicodeSet xsux_Ext{const_cast<UnicodeSet::run_t *>(__xsux_Ext_runs), 9, 0, const_cast<UnicodeSet::bitquad_t *>(__xsux_Ext_quads), 3, 0};
1434
1435        /** Code Point Ranges for Phnx
1436        [10900, 1091b], [1091f, 1091f]**/
1437
1438        namespace {
1439        const static UnicodeSet::run_t __phnx_Ext_runs[] = {
1440        {Empty, 2120}, {Mixed, 1}, {Empty, 32695}};
1441        const static UnicodeSet::bitquad_t  __phnx_Ext_quads[] = {
1442        0x8fffffff};
1443        }
1444
1445        const static UnicodeSet phnx_Ext{const_cast<UnicodeSet::run_t *>(__phnx_Ext_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__phnx_Ext_quads), 1, 0};
1446
1447        /** Code Point Ranges for Phag
1448        [1802, 1803], [1805, 1805], [a840, a877]**/
1449
1450        namespace {
1451        const static UnicodeSet::run_t __phag_Ext_runs[] = {
1452        {Empty, 192}, {Mixed, 1}, {Empty, 1153}, {Full, 1}, {Mixed, 1},
1453        {Empty, 33468}};
1454        const static UnicodeSet::bitquad_t  __phag_Ext_quads[] = {
1455        0x0000002c, 0x00ffffff};
1456        }
1457
1458        const static UnicodeSet phag_Ext{const_cast<UnicodeSet::run_t *>(__phag_Ext_runs), 6, 0, const_cast<UnicodeSet::bitquad_t *>(__phag_Ext_quads), 2, 0};
1459
1460        /** Code Point Ranges for Nkoo
1461        [07c0, 07fa], [07fd, 07ff]**/
1462
1463        namespace {
1464        const static UnicodeSet::run_t __nkoo_Ext_runs[] = {
1465        {Empty, 62}, {Full, 1}, {Mixed, 1}, {Empty, 34752}};
1466        const static UnicodeSet::bitquad_t  __nkoo_Ext_quads[] = {
1467        0xe7ffffff};
1468        }
1469
1470        const static UnicodeSet nkoo_Ext{const_cast<UnicodeSet::run_t *>(__nkoo_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__nkoo_Ext_quads), 1, 0};
1471
1472        /** Code Point Ranges for Sund
1473        [1b80, 1bbf], [1cc0, 1cc7]**/
1474
1475        namespace {
1476        const static UnicodeSet::run_t __sund_Ext_runs[] = {
1477        {Empty, 220}, {Full, 2}, {Empty, 8}, {Mixed, 1}, {Empty, 34585}};
1478        const static UnicodeSet::bitquad_t  __sund_Ext_quads[] = {
1479        0x000000ff};
1480        }
1481
1482        const static UnicodeSet sund_Ext{const_cast<UnicodeSet::run_t *>(__sund_Ext_runs), 5, 0, const_cast<UnicodeSet::bitquad_t *>(__sund_Ext_quads), 1, 0};
1483
1484        /** Code Point Ranges for Lepc
1485        [1c00, 1c37], [1c3b, 1c49], [1c4d, 1c4f]**/
1486
1487        namespace {
1488        const static UnicodeSet::run_t __lepc_Ext_runs[] = {
1489        {Empty, 224}, {Full, 1}, {Mixed, 2}, {Empty, 34589}};
1490        const static UnicodeSet::bitquad_t  __lepc_Ext_quads[] = {
1491        0xf8ffffff, 0x0000e3ff};
1492        }
1493
1494        const static UnicodeSet lepc_Ext{const_cast<UnicodeSet::run_t *>(__lepc_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__lepc_Ext_quads), 2, 0};
1495
1496        /** Code Point Ranges for Olck
1497        [1c50, 1c7f]**/
1498
1499        namespace {
1500        const static UnicodeSet::run_t __olck_Ext_runs[] = {
1501        {Empty, 226}, {Mixed, 1}, {Full, 1}, {Empty, 34588}};
1502        const static UnicodeSet::bitquad_t  __olck_Ext_quads[] = {
1503        0xffff0000};
1504        }
1505
1506        const static UnicodeSet olck_Ext{const_cast<UnicodeSet::run_t *>(__olck_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__olck_Ext_quads), 1, 0};
1507
1508        /** Code Point Ranges for Vaii
1509        [a500, a62b]**/
1510
1511        namespace {
1512        const static UnicodeSet::run_t __vaii_Ext_runs[] = {
1513        {Empty, 1320}, {Full, 9}, {Mixed, 1}, {Empty, 33486}};
1514        const static UnicodeSet::bitquad_t  __vaii_Ext_quads[] = {
1515        0x00000fff};
1516        }
1517
1518        const static UnicodeSet vaii_Ext{const_cast<UnicodeSet::run_t *>(__vaii_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__vaii_Ext_quads), 1, 0};
1519
1520        /** Code Point Ranges for Saur
1521        [a880, a8c5], [a8ce, a8d9]**/
1522
1523        namespace {
1524        const static UnicodeSet::run_t __saur_Ext_runs[] = {
1525        {Empty, 1348}, {Full, 2}, {Mixed, 1}, {Empty, 33465}};
1526        const static UnicodeSet::bitquad_t  __saur_Ext_quads[] = {
1527        0x03ffc03f};
1528        }
1529
1530        const static UnicodeSet saur_Ext{const_cast<UnicodeSet::run_t *>(__saur_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__saur_Ext_quads), 1, 0};
1531
1532        /** Code Point Ranges for Kali
1533        [a900, a92f]**/
1534
1535        namespace {
1536        const static UnicodeSet::run_t __kali_Ext_runs[] = {
1537        {Empty, 1352}, {Full, 1}, {Mixed, 1}, {Empty, 33462}};
1538        const static UnicodeSet::bitquad_t  __kali_Ext_quads[] = {
1539        0x0000ffff};
1540        }
1541
1542        const static UnicodeSet kali_Ext{const_cast<UnicodeSet::run_t *>(__kali_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__kali_Ext_quads), 1, 0};
1543
1544        /** Code Point Ranges for Rjng
1545        [a930, a953], [a95f, a95f]**/
1546
1547        namespace {
1548        const static UnicodeSet::run_t __rjng_Ext_runs[] = {
1549        {Empty, 1353}, {Mixed, 2}, {Empty, 33461}};
1550        const static UnicodeSet::bitquad_t  __rjng_Ext_quads[] = {
1551        0xffff0000, 0x800fffff};
1552        }
1553
1554        const static UnicodeSet rjng_Ext{const_cast<UnicodeSet::run_t *>(__rjng_Ext_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__rjng_Ext_quads), 2, 0};
1555
1556        /** Code Point Ranges for Lyci
1557        [10280, 1029c]**/
1558
1559        namespace {
1560        const static UnicodeSet::run_t __lyci_Ext_runs[] = {
1561        {Empty, 2068}, {Mixed, 1}, {Empty, 32747}};
1562        const static UnicodeSet::bitquad_t  __lyci_Ext_quads[] = {
1563        0x1fffffff};
1564        }
1565
1566        const static UnicodeSet lyci_Ext{const_cast<UnicodeSet::run_t *>(__lyci_Ext_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__lyci_Ext_quads), 1, 0};
1567
1568        /** Code Point Ranges for Cari
1569        [102a0, 102d0]**/
1570
1571        namespace {
1572        const static UnicodeSet::run_t __cari_Ext_runs[] = {
1573        {Empty, 2069}, {Full, 1}, {Mixed, 1}, {Empty, 32745}};
1574        const static UnicodeSet::bitquad_t  __cari_Ext_quads[] = {
1575        0x0001ffff};
1576        }
1577
1578        const static UnicodeSet cari_Ext{const_cast<UnicodeSet::run_t *>(__cari_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__cari_Ext_quads), 1, 0};
1579
1580        /** Code Point Ranges for Lydi
1581        [10920, 10939], [1093f, 1093f]**/
1582
1583        namespace {
1584        const static UnicodeSet::run_t __lydi_Ext_runs[] = {
1585        {Empty, 2121}, {Mixed, 1}, {Empty, 32694}};
1586        const static UnicodeSet::bitquad_t  __lydi_Ext_quads[] = {
1587        0x83ffffff};
1588        }
1589
1590        const static UnicodeSet lydi_Ext{const_cast<UnicodeSet::run_t *>(__lydi_Ext_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__lydi_Ext_quads), 1, 0};
1591
1592        /** Code Point Ranges for Cham
1593        [aa00, aa36], [aa40, aa4d], [aa50, aa59], [aa5c, aa5f]**/
1594
1595        namespace {
1596        const static UnicodeSet::run_t __cham_Ext_runs[] = {
1597        {Empty, 1360}, {Full, 1}, {Mixed, 2}, {Empty, 33453}};
1598        const static UnicodeSet::bitquad_t  __cham_Ext_quads[] = {
1599        0x007fffff, 0xf3ff3fff};
1600        }
1601
1602        const static UnicodeSet cham_Ext{const_cast<UnicodeSet::run_t *>(__cham_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__cham_Ext_quads), 2, 0};
1603
1604        /** Code Point Ranges for Lana
1605        [1a20, 1a5e], [1a60, 1a7c], [1a7f, 1a89], [1a90, 1a99],
1606        [1aa0, 1aad]**/
1607
1608        namespace {
1609        const static UnicodeSet::run_t __lana_Ext_runs[] = {
1610        {Empty, 209}, {Full, 1}, {Mixed, 4}, {Empty, 34602}};
1611        const static UnicodeSet::bitquad_t  __lana_Ext_quads[] = {
1612        0x7fffffff, 0x9fffffff, 0x03ff03ff, 0x00003fff};
1613        }
1614
1615        const static UnicodeSet lana_Ext{const_cast<UnicodeSet::run_t *>(__lana_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__lana_Ext_quads), 4, 0};
1616
1617        /** Code Point Ranges for Tavt
1618        [aa80, aac2], [aadb, aadf]**/
1619
1620        namespace {
1621        const static UnicodeSet::run_t __tavt_Ext_runs[] = {
1622        {Empty, 1364}, {Full, 2}, {Mixed, 1}, {Empty, 33449}};
1623        const static UnicodeSet::bitquad_t  __tavt_Ext_quads[] = {
1624        0xf8000007};
1625        }
1626
1627        const static UnicodeSet tavt_Ext{const_cast<UnicodeSet::run_t *>(__tavt_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__tavt_Ext_quads), 1, 0};
1628
1629        /** Code Point Ranges for Avst
1630        [10b00, 10b35], [10b39, 10b3f]**/
1631
1632        namespace {
1633        const static UnicodeSet::run_t __avst_Ext_runs[] = {
1634        {Empty, 2136}, {Full, 1}, {Mixed, 1}, {Empty, 32678}};
1635        const static UnicodeSet::bitquad_t  __avst_Ext_quads[] = {
1636        0xfe3fffff};
1637        }
1638
1639        const static UnicodeSet avst_Ext{const_cast<UnicodeSet::run_t *>(__avst_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__avst_Ext_quads), 1, 0};
1640
1641        /** Code Point Ranges for Egyp
1642        [13000, 1342e]**/
1643
1644        namespace {
1645        const static UnicodeSet::run_t __egyp_Ext_runs[] = {
1646        {Empty, 2432}, {Full, 33}, {Mixed, 1}, {Empty, 32350}};
1647        const static UnicodeSet::bitquad_t  __egyp_Ext_quads[] = {
1648        0x00007fff};
1649        }
1650
1651        const static UnicodeSet egyp_Ext{const_cast<UnicodeSet::run_t *>(__egyp_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__egyp_Ext_quads), 1, 0};
1652
1653        /** Code Point Ranges for Samr
1654        [0800, 082d], [0830, 083e]**/
1655
1656        namespace {
1657        const static UnicodeSet::run_t __samr_Ext_runs[] = {
1658        {Empty, 64}, {Full, 1}, {Mixed, 1}, {Empty, 34750}};
1659        const static UnicodeSet::bitquad_t  __samr_Ext_quads[] = {
1660        0x7fff3fff};
1661        }
1662
1663        const static UnicodeSet samr_Ext{const_cast<UnicodeSet::run_t *>(__samr_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__samr_Ext_quads), 1, 0};
1664
1665        /** Code Point Ranges for Lisu
1666        [a4d0, a4ff]**/
1667
1668        namespace {
1669        const static UnicodeSet::run_t __lisu_Ext_runs[] = {
1670        {Empty, 1318}, {Mixed, 1}, {Full, 1}, {Empty, 33496}};
1671        const static UnicodeSet::bitquad_t  __lisu_Ext_quads[] = {
1672        0xffff0000};
1673        }
1674
1675        const static UnicodeSet lisu_Ext{const_cast<UnicodeSet::run_t *>(__lisu_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__lisu_Ext_quads), 1, 0};
1676
1677        /** Code Point Ranges for Bamu
1678        [a6a0, a6f7], [16800, 16a38]**/
1679
1680        namespace {
1681        const static UnicodeSet::run_t __bamu_Ext_runs[] = {
1682        {Empty, 1333}, {Full, 2}, {Mixed, 1}, {Empty, 1544}, {Full, 17},
1683        {Mixed, 1}, {Empty, 31918}};
1684        const static UnicodeSet::bitquad_t  __bamu_Ext_quads[] = {
1685        0x00ffffff, 0x01ffffff};
1686        }
1687
1688        const static UnicodeSet bamu_Ext{const_cast<UnicodeSet::run_t *>(__bamu_Ext_runs), 7, 0, const_cast<UnicodeSet::bitquad_t *>(__bamu_Ext_quads), 2, 0};
1689
1690        /** Code Point Ranges for Java
1691        [a980, a9cd], [a9cf, a9d9], [a9de, a9df]**/
1692
1693        namespace {
1694        const static UnicodeSet::run_t __java_Ext_runs[] = {
1695        {Empty, 1356}, {Full, 2}, {Mixed, 1}, {Empty, 33457}};
1696        const static UnicodeSet::bitquad_t  __java_Ext_quads[] = {
1697        0xc3ffbfff};
1698        }
1699
1700        const static UnicodeSet java_Ext{const_cast<UnicodeSet::run_t *>(__java_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__java_Ext_quads), 1, 0};
1701
1702        /** Code Point Ranges for Mtei
1703        [aae0, aaf6], [abc0, abed], [abf0, abf9]**/
1704
1705        namespace {
1706        const static UnicodeSet::run_t __mtei_Ext_runs[] = {
1707        {Empty, 1367}, {Mixed, 1}, {Empty, 6}, {Full, 1}, {Mixed, 1},
1708        {Empty, 33440}};
1709        const static UnicodeSet::bitquad_t  __mtei_Ext_quads[] = {
1710        0x007fffff, 0x03ff3fff};
1711        }
1712
1713        const static UnicodeSet mtei_Ext{const_cast<UnicodeSet::run_t *>(__mtei_Ext_runs), 6, 0, const_cast<UnicodeSet::bitquad_t *>(__mtei_Ext_quads), 2, 0};
1714
1715        /** Code Point Ranges for Armi
1716        [10840, 10855], [10857, 1085f]**/
1717
1718        namespace {
1719        const static UnicodeSet::run_t __armi_Ext_runs[] = {
1720        {Empty, 2114}, {Mixed, 1}, {Empty, 32701}};
1721        const static UnicodeSet::bitquad_t  __armi_Ext_quads[] = {
1722        0xffbfffff};
1723        }
1724
1725        const static UnicodeSet armi_Ext{const_cast<UnicodeSet::run_t *>(__armi_Ext_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__armi_Ext_quads), 1, 0};
1726
1727        /** Code Point Ranges for Sarb
1728        [10a60, 10a7f]**/
1729
1730        namespace {
1731        const static UnicodeSet::run_t __sarb_Ext_runs[] = {
1732        {Empty, 2131}, {Full, 1}, {Empty, 32684}};
1733        const static UnicodeSet::bitquad_t * const __sarb_Ext_quads = nullptr;
1734        }
1735
1736        const static UnicodeSet sarb_Ext{const_cast<UnicodeSet::run_t *>(__sarb_Ext_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__sarb_Ext_quads), 0, 0};
1737
1738        /** Code Point Ranges for Prti
1739        [10b40, 10b55], [10b58, 10b5f]**/
1740
1741        namespace {
1742        const static UnicodeSet::run_t __prti_Ext_runs[] = {
1743        {Empty, 2138}, {Mixed, 1}, {Empty, 32677}};
1744        const static UnicodeSet::bitquad_t  __prti_Ext_quads[] = {
1745        0xff3fffff};
1746        }
1747
1748        const static UnicodeSet prti_Ext{const_cast<UnicodeSet::run_t *>(__prti_Ext_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__prti_Ext_quads), 1, 0};
1749
1750        /** Code Point Ranges for Phli
1751        [10b60, 10b72], [10b78, 10b7f]**/
1752
1753        namespace {
1754        const static UnicodeSet::run_t __phli_Ext_runs[] = {
1755        {Empty, 2139}, {Mixed, 1}, {Empty, 32676}};
1756        const static UnicodeSet::bitquad_t  __phli_Ext_quads[] = {
1757        0xff07ffff};
1758        }
1759
1760        const static UnicodeSet phli_Ext{const_cast<UnicodeSet::run_t *>(__phli_Ext_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__phli_Ext_quads), 1, 0};
1761
1762        /** Code Point Ranges for Orkh
1763        [10c00, 10c48]**/
1764
1765        namespace {
1766        const static UnicodeSet::run_t __orkh_Ext_runs[] = {
1767        {Empty, 2144}, {Full, 2}, {Mixed, 1}, {Empty, 32669}};
1768        const static UnicodeSet::bitquad_t  __orkh_Ext_quads[] = {
1769        0x000001ff};
1770        }
1771
1772        const static UnicodeSet orkh_Ext{const_cast<UnicodeSet::run_t *>(__orkh_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__orkh_Ext_quads), 1, 0};
1773
1774        /** Code Point Ranges for Kthi
1775        [0966, 096f], [a830, a839], [11080, 110c1], [110cd, 110cd]**/
1776
1777        namespace {
1778        const static UnicodeSet::run_t __kthi_Ext_runs[] = {
1779        {Empty, 75}, {Mixed, 1}, {Empty, 1269}, {Mixed, 1}, {Empty, 834},
1780        {Full, 2}, {Mixed, 1}, {Empty, 32633}};
1781        const static UnicodeSet::bitquad_t  __kthi_Ext_quads[] = {
1782        0x0000ffc0, 0x03ff0000, 0x00002003};
1783        }
1784
1785        const static UnicodeSet kthi_Ext{const_cast<UnicodeSet::run_t *>(__kthi_Ext_runs), 8, 0, const_cast<UnicodeSet::bitquad_t *>(__kthi_Ext_quads), 3, 0};
1786
1787        /** Code Point Ranges for Batk
1788        [1bc0, 1bf3], [1bfc, 1bff]**/
1789
1790        namespace {
1791        const static UnicodeSet::run_t __batk_Ext_runs[] = {
1792        {Empty, 222}, {Full, 1}, {Mixed, 1}, {Empty, 34592}};
1793        const static UnicodeSet::bitquad_t  __batk_Ext_quads[] = {
1794        0xf00fffff};
1795        }
1796
1797        const static UnicodeSet batk_Ext{const_cast<UnicodeSet::run_t *>(__batk_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__batk_Ext_quads), 1, 0};
1798
1799        /** Code Point Ranges for Brah
1800        [11000, 1104d], [11052, 1106f], [1107f, 1107f]**/
1801
1802        namespace {
1803        const static UnicodeSet::run_t __brah_Ext_runs[] = {
1804        {Empty, 2176}, {Full, 2}, {Mixed, 2}, {Empty, 32636}};
1805        const static UnicodeSet::bitquad_t  __brah_Ext_quads[] = {
1806        0xfffc3fff, 0x8000ffff};
1807        }
1808
1809        const static UnicodeSet brah_Ext{const_cast<UnicodeSet::run_t *>(__brah_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__brah_Ext_quads), 2, 0};
1810
1811        /** Code Point Ranges for Mand
1812        [0640, 0640], [0840, 085b], [085e, 085e]**/
1813
1814        namespace {
1815        const static UnicodeSet::run_t __mand_Ext_runs[] = {
1816        {Empty, 50}, {Mixed, 1}, {Empty, 15}, {Mixed, 1}, {Empty, 34749}};
1817        const static UnicodeSet::bitquad_t  __mand_Ext_quads[] = {
1818        0x00000001, 0x4fffffff};
1819        }
1820
1821        const static UnicodeSet mand_Ext{const_cast<UnicodeSet::run_t *>(__mand_Ext_runs), 5, 0, const_cast<UnicodeSet::bitquad_t *>(__mand_Ext_quads), 2, 0};
1822
1823        /** Code Point Ranges for Cakm
1824        [09e6, 09ef], [1040, 1049], [11100, 11134], [11136, 11146]**/
1825
1826        namespace {
1827        const static UnicodeSet::run_t __cakm_Ext_runs[] = {
1828        {Empty, 79}, {Mixed, 1}, {Empty, 50}, {Mixed, 1}, {Empty, 2053},
1829        {Full, 1}, {Mixed, 2}, {Empty, 32629}};
1830        const static UnicodeSet::bitquad_t  __cakm_Ext_quads[] = {
1831        0x0000ffc0, 0x000003ff, 0xffdfffff, 0x0000007f};
1832        }
1833
1834        const static UnicodeSet cakm_Ext{const_cast<UnicodeSet::run_t *>(__cakm_Ext_runs), 8, 0, const_cast<UnicodeSet::bitquad_t *>(__cakm_Ext_quads), 4, 0};
1835
1836        /** Code Point Ranges for Merc
1837        [109a0, 109b7], [109bc, 109cf], [109d2, 109ff]**/
1838
1839        namespace {
1840        const static UnicodeSet::run_t __merc_Ext_runs[] = {
1841        {Empty, 2125}, {Mixed, 2}, {Full, 1}, {Empty, 32688}};
1842        const static UnicodeSet::bitquad_t  __merc_Ext_quads[] = {
1843        0xf0ffffff, 0xfffcffff};
1844        }
1845
1846        const static UnicodeSet merc_Ext{const_cast<UnicodeSet::run_t *>(__merc_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__merc_Ext_quads), 2, 0};
1847
1848        /** Code Point Ranges for Mero
1849        [10980, 1099f]**/
1850
1851        namespace {
1852        const static UnicodeSet::run_t __mero_Ext_runs[] = {
1853        {Empty, 2124}, {Full, 1}, {Empty, 32691}};
1854        const static UnicodeSet::bitquad_t * const __mero_Ext_quads = nullptr;
1855        }
1856
1857        const static UnicodeSet mero_Ext{const_cast<UnicodeSet::run_t *>(__mero_Ext_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__mero_Ext_quads), 0, 0};
1858
1859        /** Code Point Ranges for Plrd
1860        [16f00, 16f44], [16f50, 16f7e], [16f8f, 16f9f]**/
1861
1862        namespace {
1863        const static UnicodeSet::run_t __plrd_Ext_runs[] = {
1864        {Empty, 2936}, {Full, 2}, {Mixed, 3}, {Empty, 31875}};
1865        const static UnicodeSet::bitquad_t  __plrd_Ext_quads[] = {
1866        0xffff001f, 0x7fffffff, 0xffff8000};
1867        }
1868
1869        const static UnicodeSet plrd_Ext{const_cast<UnicodeSet::run_t *>(__plrd_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__plrd_Ext_quads), 3, 0};
1870
1871        /** Code Point Ranges for Shrd
1872        [0951, 0951], [1cd7, 1cd7], [1cd9, 1cd9], [1cdc, 1cdd],
1873        [1ce0, 1ce0], [11180, 111cd], [111d0, 111df]**/
1874
1875        namespace {
1876        const static UnicodeSet::run_t __shrd_Ext_runs[] = {
1877        {Empty, 74}, {Mixed, 1}, {Empty, 155}, {Mixed, 2}, {Empty, 1956},
1878        {Full, 2}, {Mixed, 1}, {Empty, 32625}};
1879        const static UnicodeSet::bitquad_t  __shrd_Ext_quads[] = {
1880        0x00020000, 0x32800000, 0x00000001, 0xffff3fff};
1881        }
1882
1883        const static UnicodeSet shrd_Ext{const_cast<UnicodeSet::run_t *>(__shrd_Ext_runs), 8, 0, const_cast<UnicodeSet::bitquad_t *>(__shrd_Ext_quads), 4, 0};
1884
1885        /** Code Point Ranges for Sora
1886        [110d0, 110e8], [110f0, 110f9]**/
1887
1888        namespace {
1889        const static UnicodeSet::run_t __sora_Ext_runs[] = {
1890        {Empty, 2182}, {Mixed, 2}, {Empty, 32632}};
1891        const static UnicodeSet::bitquad_t  __sora_Ext_quads[] = {
1892        0xffff0000, 0x03ff01ff};
1893        }
1894
1895        const static UnicodeSet sora_Ext{const_cast<UnicodeSet::run_t *>(__sora_Ext_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__sora_Ext_quads), 2, 0};
1896
1897        /** Code Point Ranges for Takr
1898        [0964, 0965], [a830, a839], [11680, 116b7], [116c0, 116c9]**/
1899
1900        namespace {
1901        const static UnicodeSet::run_t __takr_Ext_runs[] = {
1902        {Empty, 75}, {Mixed, 1}, {Empty, 1269}, {Mixed, 1}, {Empty, 882},
1903        {Full, 1}, {Mixed, 2}, {Empty, 32585}};
1904        const static UnicodeSet::bitquad_t  __takr_Ext_quads[] = {
1905        0x00000030, 0x03ff0000, 0x00ffffff, 0x000003ff};
1906        }
1907
1908        const static UnicodeSet takr_Ext{const_cast<UnicodeSet::run_t *>(__takr_Ext_runs), 8, 0, const_cast<UnicodeSet::bitquad_t *>(__takr_Ext_quads), 4, 0};
1909
1910        /** Code Point Ranges for Aghb
1911        [10530, 10563], [1056f, 1056f]**/
1912
1913        namespace {
1914        const static UnicodeSet::run_t __aghb_Ext_runs[] = {
1915        {Empty, 2089}, {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Empty, 32724}};
1916        const static UnicodeSet::bitquad_t  __aghb_Ext_quads[] = {
1917        0xffff0000, 0x0000800f};
1918        }
1919
1920        const static UnicodeSet aghb_Ext{const_cast<UnicodeSet::run_t *>(__aghb_Ext_runs), 5, 0, const_cast<UnicodeSet::bitquad_t *>(__aghb_Ext_quads), 2, 0};
1921
1922        /** Code Point Ranges for Bass
1923        [16ad0, 16aed], [16af0, 16af5]**/
1924
1925        namespace {
1926        const static UnicodeSet::run_t __bass_Ext_runs[] = {
1927        {Empty, 2902}, {Mixed, 2}, {Empty, 31912}};
1928        const static UnicodeSet::bitquad_t  __bass_Ext_quads[] = {
1929        0xffff0000, 0x003f3fff};
1930        }
1931
1932        const static UnicodeSet bass_Ext{const_cast<UnicodeSet::run_t *>(__bass_Ext_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__bass_Ext_quads), 2, 0};
1933
1934        /** Code Point Ranges for Dupl
1935        [1bc00, 1bc6a], [1bc70, 1bc7c], [1bc80, 1bc88], [1bc90, 1bc99],
1936        [1bc9c, 1bca3]**/
1937
1938        namespace {
1939        const static UnicodeSet::run_t __dupl_Ext_runs[] = {
1940        {Empty, 3552}, {Full, 3}, {Mixed, 3}, {Empty, 31258}};
1941        const static UnicodeSet::bitquad_t  __dupl_Ext_quads[] = {
1942        0x1fff07ff, 0xf3ff01ff, 0x0000000f};
1943        }
1944
1945        const static UnicodeSet dupl_Ext{const_cast<UnicodeSet::run_t *>(__dupl_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__dupl_Ext_quads), 3, 0};
1946
1947        /** Code Point Ranges for Elba
1948        [10500, 10527]**/
1949
1950        namespace {
1951        const static UnicodeSet::run_t __elba_Ext_runs[] = {
1952        {Empty, 2088}, {Full, 1}, {Mixed, 1}, {Empty, 32726}};
1953        const static UnicodeSet::bitquad_t  __elba_Ext_quads[] = {
1954        0x000000ff};
1955        }
1956
1957        const static UnicodeSet elba_Ext{const_cast<UnicodeSet::run_t *>(__elba_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__elba_Ext_quads), 1, 0};
1958
1959        /** Code Point Ranges for Gran
1960        [0951, 0952], [0964, 0965], [0be6, 0bf3], [1cd0, 1cd0],
1961        [1cd2, 1cd3], [1cf2, 1cf4], [1cf8, 1cf9], [20f0, 20f0],
1962        [11300, 11303], [11305, 1130c], [1130f, 11310], [11313, 11328],
1963        [1132a, 11330], [11332, 11333], [11335, 11339], [1133b, 11344],
1964        [11347, 11348], [1134b, 1134d], [11350, 11350], [11357, 11357],
1965        [1135d, 11363], [11366, 1136c], [11370, 11374]**/
1966
1967        namespace {
1968        const static UnicodeSet::run_t __gran_Ext_runs[] = {
1969        {Empty, 74}, {Mixed, 2}, {Empty, 19}, {Mixed, 1}, {Empty, 134},
1970        {Mixed, 2}, {Empty, 31}, {Mixed, 1}, {Empty, 1936}, {Mixed, 4},
1971        {Empty, 32612}};
1972        const static UnicodeSet::bitquad_t  __gran_Ext_quads[] = {
1973        0x00060000, 0x00000030, 0x000fffc0, 0x000d0000, 0x031c0000,
1974        0x00010000, 0xfff99fef, 0xfbedfdff, 0xe081399f, 0x001f1fcf};
1975        }
1976
1977        const static UnicodeSet gran_Ext{const_cast<UnicodeSet::run_t *>(__gran_Ext_runs), 11, 0, const_cast<UnicodeSet::bitquad_t *>(__gran_Ext_quads), 10, 0};
1978
1979        /** Code Point Ranges for Hmng
1980        [16b00, 16b45], [16b50, 16b59], [16b5b, 16b61], [16b63, 16b77],
1981        [16b7d, 16b8f]**/
1982
1983        namespace {
1984        const static UnicodeSet::run_t __hmng_Ext_runs[] = {
1985        {Empty, 2904}, {Full, 2}, {Mixed, 3}, {Empty, 31907}};
1986        const static UnicodeSet::bitquad_t  __hmng_Ext_quads[] = {
1987        0xfbff003f, 0xe0fffffb, 0x0000ffff};
1988        }
1989
1990        const static UnicodeSet hmng_Ext{const_cast<UnicodeSet::run_t *>(__hmng_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__hmng_Ext_quads), 3, 0};
1991
1992        /** Code Point Ranges for Khoj
1993        [0ae6, 0aef], [a830, a839], [11200, 11211], [11213, 1123e]**/
1994
1995        namespace {
1996        const static UnicodeSet::run_t __khoj_Ext_runs[] = {
1997        {Empty, 87}, {Mixed, 1}, {Empty, 1257}, {Mixed, 1}, {Empty, 846},
1998        {Mixed, 2}, {Empty, 32622}};
1999        const static UnicodeSet::bitquad_t  __khoj_Ext_quads[] = {
2000        0x0000ffc0, 0x03ff0000, 0xfffbffff, 0x7fffffff};
2001        }
2002
2003        const static UnicodeSet khoj_Ext{const_cast<UnicodeSet::run_t *>(__khoj_Ext_runs), 7, 0, const_cast<UnicodeSet::bitquad_t *>(__khoj_Ext_quads), 4, 0};
2004
2005        /** Code Point Ranges for Lina
2006        [10107, 10133], [10600, 10736], [10740, 10755], [10760, 10767]**/
2007
2008        namespace {
2009        const static UnicodeSet::run_t __lina_Ext_runs[] = {
2010        {Empty, 2056}, {Mixed, 2}, {Empty, 38}, {Full, 9}, {Mixed, 3},
2011        {Empty, 32708}};
2012        const static UnicodeSet::bitquad_t  __lina_Ext_quads[] = {
2013        0xffffff80, 0x000fffff, 0x007fffff, 0x003fffff, 0x000000ff};
2014        }
2015
2016        const static UnicodeSet lina_Ext{const_cast<UnicodeSet::run_t *>(__lina_Ext_runs), 6, 0, const_cast<UnicodeSet::bitquad_t *>(__lina_Ext_quads), 5, 0};
2017
2018        /** Code Point Ranges for Mahj
2019        [0964, 096f], [a830, a839], [11150, 11176]**/
2020
2021        namespace {
2022        const static UnicodeSet::run_t __mahj_Ext_runs[] = {
2023        {Empty, 75}, {Mixed, 1}, {Empty, 1269}, {Mixed, 1}, {Empty, 840},
2024        {Mixed, 2}, {Empty, 32628}};
2025        const static UnicodeSet::bitquad_t  __mahj_Ext_quads[] = {
2026        0x0000fff0, 0x03ff0000, 0xffff0000, 0x007fffff};
2027        }
2028
2029        const static UnicodeSet mahj_Ext{const_cast<UnicodeSet::run_t *>(__mahj_Ext_runs), 7, 0, const_cast<UnicodeSet::bitquad_t *>(__mahj_Ext_quads), 4, 0};
2030
2031        /** Code Point Ranges for Mani
2032        [0640, 0640], [10ac0, 10ae6], [10aeb, 10af6]**/
2033
2034        namespace {
2035        const static UnicodeSet::run_t __mani_Ext_runs[] = {
2036        {Empty, 50}, {Mixed, 1}, {Empty, 2083}, {Full, 1}, {Mixed, 1},
2037        {Empty, 32680}};
2038        const static UnicodeSet::bitquad_t  __mani_Ext_quads[] = {
2039        0x00000001, 0x007ff87f};
2040        }
2041
2042        const static UnicodeSet mani_Ext{const_cast<UnicodeSet::run_t *>(__mani_Ext_runs), 6, 0, const_cast<UnicodeSet::bitquad_t *>(__mani_Ext_quads), 2, 0};
2043
2044        /** Code Point Ranges for Mend
2045        [1e800, 1e8c4], [1e8c7, 1e8d6]**/
2046
2047        namespace {
2048        const static UnicodeSet::run_t __mend_Ext_runs[] = {
2049        {Empty, 3904}, {Full, 6}, {Mixed, 1}, {Empty, 30905}};
2050        const static UnicodeSet::bitquad_t  __mend_Ext_quads[] = {
2051        0x007fff9f};
2052        }
2053
2054        const static UnicodeSet mend_Ext{const_cast<UnicodeSet::run_t *>(__mend_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__mend_Ext_quads), 1, 0};
2055
2056        /** Code Point Ranges for Modi
2057        [a830, a839], [11600, 11644], [11650, 11659]**/
2058
2059        namespace {
2060        const static UnicodeSet::run_t __modi_Ext_runs[] = {
2061        {Empty, 1345}, {Mixed, 1}, {Empty, 878}, {Full, 2}, {Mixed, 1},
2062        {Empty, 32589}};
2063        const static UnicodeSet::bitquad_t  __modi_Ext_quads[] = {
2064        0x03ff0000, 0x03ff001f};
2065        }
2066
2067        const static UnicodeSet modi_Ext{const_cast<UnicodeSet::run_t *>(__modi_Ext_runs), 6, 0, const_cast<UnicodeSet::bitquad_t *>(__modi_Ext_quads), 2, 0};
2068
2069        /** Code Point Ranges for Mroo
2070        [16a40, 16a5e], [16a60, 16a69], [16a6e, 16a6f]**/
2071
2072        namespace {
2073        const static UnicodeSet::run_t __mroo_Ext_runs[] = {
2074        {Empty, 2898}, {Mixed, 2}, {Empty, 31916}};
2075        const static UnicodeSet::bitquad_t  __mroo_Ext_quads[] = {
2076        0x7fffffff, 0x0000c3ff};
2077        }
2078
2079        const static UnicodeSet mroo_Ext{const_cast<UnicodeSet::run_t *>(__mroo_Ext_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__mroo_Ext_quads), 2, 0};
2080
2081        /** Code Point Ranges for Narb
2082        [10a80, 10a9f]**/
2083
2084        namespace {
2085        const static UnicodeSet::run_t __narb_Ext_runs[] = {
2086        {Empty, 2132}, {Full, 1}, {Empty, 32683}};
2087        const static UnicodeSet::bitquad_t * const __narb_Ext_quads = nullptr;
2088        }
2089
2090        const static UnicodeSet narb_Ext{const_cast<UnicodeSet::run_t *>(__narb_Ext_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__narb_Ext_quads), 0, 0};
2091
2092        /** Code Point Ranges for Nbat
2093        [10880, 1089e], [108a7, 108af]**/
2094
2095        namespace {
2096        const static UnicodeSet::run_t __nbat_Ext_runs[] = {
2097        {Empty, 2116}, {Mixed, 2}, {Empty, 32698}};
2098        const static UnicodeSet::bitquad_t  __nbat_Ext_quads[] = {
2099        0x7fffffff, 0x0000ff80};
2100        }
2101
2102        const static UnicodeSet nbat_Ext{const_cast<UnicodeSet::run_t *>(__nbat_Ext_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__nbat_Ext_quads), 2, 0};
2103
2104        /** Code Point Ranges for Palm
2105        [10860, 1087f]**/
2106
2107        namespace {
2108        const static UnicodeSet::run_t __palm_Ext_runs[] = {
2109        {Empty, 2115}, {Full, 1}, {Empty, 32700}};
2110        const static UnicodeSet::bitquad_t * const __palm_Ext_quads = nullptr;
2111        }
2112
2113        const static UnicodeSet palm_Ext{const_cast<UnicodeSet::run_t *>(__palm_Ext_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__palm_Ext_quads), 0, 0};
2114
2115        /** Code Point Ranges for Pauc
2116        [11ac0, 11af8]**/
2117
2118        namespace {
2119        const static UnicodeSet::run_t __pauc_Ext_runs[] = {
2120        {Empty, 2262}, {Full, 1}, {Mixed, 1}, {Empty, 32552}};
2121        const static UnicodeSet::bitquad_t  __pauc_Ext_quads[] = {
2122        0x01ffffff};
2123        }
2124
2125        const static UnicodeSet pauc_Ext{const_cast<UnicodeSet::run_t *>(__pauc_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__pauc_Ext_quads), 1, 0};
2126
2127        /** Code Point Ranges for Perm
2128        [0483, 0483], [10350, 1037a]**/
2129
2130        namespace {
2131        const static UnicodeSet::run_t __perm_Ext_runs[] = {
2132        {Empty, 36}, {Mixed, 1}, {Empty, 2037}, {Mixed, 2}, {Empty, 32740}};
2133        const static UnicodeSet::bitquad_t  __perm_Ext_quads[] = {
2134        0x00000008, 0xffff0000, 0x07ffffff};
2135        }
2136
2137        const static UnicodeSet perm_Ext{const_cast<UnicodeSet::run_t *>(__perm_Ext_runs), 5, 0, const_cast<UnicodeSet::bitquad_t *>(__perm_Ext_quads), 3, 0};
2138
2139        /** Code Point Ranges for Phlp
2140        [0640, 0640], [10b80, 10b91], [10b99, 10b9c], [10ba9, 10baf]**/
2141
2142        namespace {
2143        const static UnicodeSet::run_t __phlp_Ext_runs[] = {
2144        {Empty, 50}, {Mixed, 1}, {Empty, 2089}, {Mixed, 2}, {Empty, 32674}};
2145        const static UnicodeSet::bitquad_t  __phlp_Ext_quads[] = {
2146        0x00000001, 0x1e03ffff, 0x0000fe00};
2147        }
2148
2149        const static UnicodeSet phlp_Ext{const_cast<UnicodeSet::run_t *>(__phlp_Ext_runs), 5, 0, const_cast<UnicodeSet::bitquad_t *>(__phlp_Ext_quads), 3, 0};
2150
2151        /** Code Point Ranges for Sidd
2152        [11580, 115b5], [115b8, 115dd]**/
2153
2154        namespace {
2155        const static UnicodeSet::run_t __sidd_Ext_runs[] = {
2156        {Empty, 2220}, {Full, 1}, {Mixed, 2}, {Empty, 32593}};
2157        const static UnicodeSet::bitquad_t  __sidd_Ext_quads[] = {
2158        0xff3fffff, 0x3fffffff};
2159        }
2160
2161        const static UnicodeSet sidd_Ext{const_cast<UnicodeSet::run_t *>(__sidd_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__sidd_Ext_quads), 2, 0};
2162
2163        /** Code Point Ranges for Sind
2164        [0964, 0965], [a830, a839], [112b0, 112ea], [112f0, 112f9]**/
2165
2166        namespace {
2167        const static UnicodeSet::run_t __sind_Ext_runs[] = {
2168        {Empty, 75}, {Mixed, 1}, {Empty, 1269}, {Mixed, 1}, {Empty, 851},
2169        {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Empty, 32616}};
2170        const static UnicodeSet::bitquad_t  __sind_Ext_quads[] = {
2171        0x00000030, 0x03ff0000, 0xffff0000, 0x03ff07ff};
2172        }
2173
2174        const static UnicodeSet sind_Ext{const_cast<UnicodeSet::run_t *>(__sind_Ext_runs), 9, 0, const_cast<UnicodeSet::bitquad_t *>(__sind_Ext_quads), 4, 0};
2175
2176        /** Code Point Ranges for Tirh
2177        [0951, 0952], [0964, 0965], [a830, a839], [11480, 114c7],
2178        [114d0, 114d9]**/
2179
2180        namespace {
2181        const static UnicodeSet::run_t __tirh_Ext_runs[] = {
2182        {Empty, 74}, {Mixed, 2}, {Empty, 1269}, {Mixed, 1}, {Empty, 866},
2183        {Full, 2}, {Mixed, 1}, {Empty, 32601}};
2184        const static UnicodeSet::bitquad_t  __tirh_Ext_quads[] = {
2185        0x00060000, 0x00000030, 0x03ff0000, 0x03ff00ff};
2186        }
2187
2188        const static UnicodeSet tirh_Ext{const_cast<UnicodeSet::run_t *>(__tirh_Ext_runs), 8, 0, const_cast<UnicodeSet::bitquad_t *>(__tirh_Ext_quads), 4, 0};
2189
2190        /** Code Point Ranges for Wara
2191        [118a0, 118f2], [118ff, 118ff]**/
2192
2193        namespace {
2194        const static UnicodeSet::run_t __wara_Ext_runs[] = {
2195        {Empty, 2245}, {Full, 2}, {Mixed, 1}, {Empty, 32568}};
2196        const static UnicodeSet::bitquad_t  __wara_Ext_quads[] = {
2197        0x8007ffff};
2198        }
2199
2200        const static UnicodeSet wara_Ext{const_cast<UnicodeSet::run_t *>(__wara_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__wara_Ext_quads), 1, 0};
2201
2202        /** Code Point Ranges for Ahom
2203        [11700, 1171a], [1171d, 1172b], [11730, 1173f]**/
2204
2205        namespace {
2206        const static UnicodeSet::run_t __ahom_Ext_runs[] = {
2207        {Empty, 2232}, {Mixed, 2}, {Empty, 32582}};
2208        const static UnicodeSet::bitquad_t  __ahom_Ext_quads[] = {
2209        0xe7ffffff, 0xffff0fff};
2210        }
2211
2212        const static UnicodeSet ahom_Ext{const_cast<UnicodeSet::run_t *>(__ahom_Ext_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__ahom_Ext_quads), 2, 0};
2213
2214        /** Code Point Ranges for Hluw
2215        [14400, 14646]**/
2216
2217        namespace {
2218        const static UnicodeSet::run_t __hluw_Ext_runs[] = {
2219        {Empty, 2592}, {Full, 18}, {Mixed, 1}, {Empty, 32205}};
2220        const static UnicodeSet::bitquad_t  __hluw_Ext_quads[] = {
2221        0x0000007f};
2222        }
2223
2224        const static UnicodeSet hluw_Ext{const_cast<UnicodeSet::run_t *>(__hluw_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__hluw_Ext_quads), 1, 0};
2225
2226        /** Code Point Ranges for Hatr
2227        [108e0, 108f2], [108f4, 108f5], [108fb, 108ff]**/
2228
2229        namespace {
2230        const static UnicodeSet::run_t __hatr_Ext_runs[] = {
2231        {Empty, 2119}, {Mixed, 1}, {Empty, 32696}};
2232        const static UnicodeSet::bitquad_t  __hatr_Ext_quads[] = {
2233        0xf837ffff};
2234        }
2235
2236        const static UnicodeSet hatr_Ext{const_cast<UnicodeSet::run_t *>(__hatr_Ext_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__hatr_Ext_quads), 1, 0};
2237
2238        /** Code Point Ranges for Mult
2239        [0a66, 0a6f], [11280, 11286], [11288, 11288], [1128a, 1128d],
2240        [1128f, 1129d], [1129f, 112a9]**/
2241
2242        namespace {
2243        const static UnicodeSet::run_t __mult_Ext_runs[] = {
2244        {Empty, 83}, {Mixed, 1}, {Empty, 2112}, {Mixed, 2}, {Empty, 32618}};
2245        const static UnicodeSet::bitquad_t  __mult_Ext_quads[] = {
2246        0x0000ffc0, 0xbfffbd7f, 0x000003ff};
2247        }
2248
2249        const static UnicodeSet mult_Ext{const_cast<UnicodeSet::run_t *>(__mult_Ext_runs), 5, 0, const_cast<UnicodeSet::bitquad_t *>(__mult_Ext_quads), 3, 0};
2250
2251        /** Code Point Ranges for Hung
2252        [10c80, 10cb2], [10cc0, 10cf2], [10cfa, 10cff]**/
2253
2254        namespace {
2255        const static UnicodeSet::run_t __hung_Ext_runs[] = {
2256        {Empty, 2148}, {Full, 1}, {Mixed, 1}, {Full, 1}, {Mixed, 1},
2257        {Empty, 32664}};
2258        const static UnicodeSet::bitquad_t  __hung_Ext_quads[] = {
2259        0x0007ffff, 0xfc07ffff};
2260        }
2261
2262        const static UnicodeSet hung_Ext{const_cast<UnicodeSet::run_t *>(__hung_Ext_runs), 6, 0, const_cast<UnicodeSet::bitquad_t *>(__hung_Ext_quads), 2, 0};
2263
2264        /** Code Point Ranges for Sgnw
2265        [1d800, 1da8b], [1da9b, 1da9f], [1daa1, 1daaf]**/
2266
2267        namespace {
2268        const static UnicodeSet::run_t __sgnw_Ext_runs[] = {
2269        {Empty, 3776}, {Full, 20}, {Mixed, 2}, {Empty, 31018}};
2270        const static UnicodeSet::bitquad_t  __sgnw_Ext_quads[] = {
2271        0xf8000fff, 0x0000fffe};
2272        }
2273
2274        const static UnicodeSet sgnw_Ext{const_cast<UnicodeSet::run_t *>(__sgnw_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__sgnw_Ext_quads), 2, 0};
2275
2276        /** Code Point Ranges for Adlm
2277        [0640, 0640], [1e900, 1e94a], [1e950, 1e959], [1e95e, 1e95f]**/
2278
2279        namespace {
2280        const static UnicodeSet::run_t __adlm_Ext_runs[] = {
2281        {Empty, 50}, {Mixed, 1}, {Empty, 3861}, {Full, 2}, {Mixed, 1},
2282        {Empty, 30901}};
2283        const static UnicodeSet::bitquad_t  __adlm_Ext_quads[] = {
2284        0x00000001, 0xc3ff07ff};
2285        }
2286
2287        const static UnicodeSet adlm_Ext{const_cast<UnicodeSet::run_t *>(__adlm_Ext_runs), 6, 0, const_cast<UnicodeSet::bitquad_t *>(__adlm_Ext_quads), 2, 0};
2288
2289        /** Code Point Ranges for Bhks
2290        [11c00, 11c08], [11c0a, 11c36], [11c38, 11c45], [11c50, 11c6c]**/
2291
2292        namespace {
2293        const static UnicodeSet::run_t __bhks_Ext_runs[] = {
2294        {Empty, 2272}, {Mixed, 4}, {Empty, 32540}};
2295        const static UnicodeSet::bitquad_t  __bhks_Ext_quads[] = {
2296        0xfffffdff, 0xff7fffff, 0xffff003f, 0x00001fff};
2297        }
2298
2299        const static UnicodeSet bhks_Ext{const_cast<UnicodeSet::run_t *>(__bhks_Ext_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__bhks_Ext_quads), 4, 0};
2300
2301        /** Code Point Ranges for Marc
2302        [11c70, 11c8f], [11c92, 11ca7], [11ca9, 11cb6]**/
2303
2304        namespace {
2305        const static UnicodeSet::run_t __marc_Ext_runs[] = {
2306        {Empty, 2275}, {Mixed, 3}, {Empty, 32538}};
2307        const static UnicodeSet::bitquad_t  __marc_Ext_quads[] = {
2308        0xffff0000, 0xfffcffff, 0x007ffeff};
2309        }
2310
2311        const static UnicodeSet marc_Ext{const_cast<UnicodeSet::run_t *>(__marc_Ext_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__marc_Ext_quads), 3, 0};
2312
2313        /** Code Point Ranges for Newa
2314        [11400, 11459], [1145b, 1145b], [1145d, 1145e]**/
2315
2316        namespace {
2317        const static UnicodeSet::run_t __newa_Ext_runs[] = {
2318        {Empty, 2208}, {Full, 2}, {Mixed, 1}, {Empty, 32605}};
2319        const static UnicodeSet::bitquad_t  __newa_Ext_quads[] = {
2320        0x6bffffff};
2321        }
2322
2323        const static UnicodeSet newa_Ext{const_cast<UnicodeSet::run_t *>(__newa_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__newa_Ext_quads), 1, 0};
2324
2325        /** Code Point Ranges for Osge
2326        [104b0, 104d3], [104d8, 104fb]**/
2327
2328        namespace {
2329        const static UnicodeSet::run_t __osge_Ext_runs[] = {
2330        {Empty, 2085}, {Mixed, 3}, {Empty, 32728}};
2331        const static UnicodeSet::bitquad_t  __osge_Ext_quads[] = {
2332        0xffff0000, 0xff0fffff, 0x0fffffff};
2333        }
2334
2335        const static UnicodeSet osge_Ext{const_cast<UnicodeSet::run_t *>(__osge_Ext_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__osge_Ext_quads), 3, 0};
2336
2337        /** Code Point Ranges for Tang
2338        [16fe0, 16fe0], [17000, 187f1], [18800, 18af2]**/
2339
2340        namespace {
2341        const static UnicodeSet::run_t __tang_Ext_runs[] = {
2342        {Empty, 2943}, {Mixed, 1}, {Full, 191}, {Mixed, 1}, {Full, 23},
2343        {Mixed, 1}, {Empty, 31656}};
2344        const static UnicodeSet::bitquad_t  __tang_Ext_quads[] = {
2345        0x00000001, 0x0003ffff, 0x0007ffff};
2346        }
2347
2348        const static UnicodeSet tang_Ext{const_cast<UnicodeSet::run_t *>(__tang_Ext_runs), 7, 0, const_cast<UnicodeSet::bitquad_t *>(__tang_Ext_quads), 3, 0};
2349
2350        /** Code Point Ranges for Gonm
2351        [11d00, 11d06], [11d08, 11d09], [11d0b, 11d36], [11d3a, 11d3a],
2352        [11d3c, 11d3d], [11d3f, 11d47], [11d50, 11d59]**/
2353
2354        namespace {
2355        const static UnicodeSet::run_t __gonm_Ext_runs[] = {
2356        {Empty, 2280}, {Mixed, 3}, {Empty, 32533}};
2357        const static UnicodeSet::bitquad_t  __gonm_Ext_quads[] = {
2358        0xfffffb7f, 0xb47fffff, 0x03ff00ff};
2359        }
2360
2361        const static UnicodeSet gonm_Ext{const_cast<UnicodeSet::run_t *>(__gonm_Ext_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__gonm_Ext_quads), 3, 0};
2362
2363        /** Code Point Ranges for Nshu
2364        [16fe1, 16fe1], [1b170, 1b2fb]**/
2365
2366        namespace {
2367        const static UnicodeSet::run_t __nshu_Ext_runs[] = {
2368        {Empty, 2943}, {Mixed, 1}, {Empty, 523}, {Mixed, 1}, {Full, 11},
2369        {Mixed, 1}, {Empty, 31336}};
2370        const static UnicodeSet::bitquad_t  __nshu_Ext_quads[] = {
2371        0x00000002, 0xffff0000, 0x0fffffff};
2372        }
2373
2374        const static UnicodeSet nshu_Ext{const_cast<UnicodeSet::run_t *>(__nshu_Ext_runs), 7, 0, const_cast<UnicodeSet::bitquad_t *>(__nshu_Ext_quads), 3, 0};
2375
2376        /** Code Point Ranges for Soyo
2377        [11a50, 11a83], [11a86, 11aa2]**/
2378
2379        namespace {
2380        const static UnicodeSet::run_t __soyo_Ext_runs[] = {
2381        {Empty, 2258}, {Mixed, 1}, {Full, 1}, {Mixed, 2}, {Empty, 32554}};
2382        const static UnicodeSet::bitquad_t  __soyo_Ext_quads[] = {
2383        0xffff0000, 0xffffffcf, 0x00000007};
2384        }
2385
2386        const static UnicodeSet soyo_Ext{const_cast<UnicodeSet::run_t *>(__soyo_Ext_runs), 5, 0, const_cast<UnicodeSet::bitquad_t *>(__soyo_Ext_quads), 3, 0};
2387
2388        /** Code Point Ranges for Zanb
2389        [11a00, 11a47]**/
2390
2391        namespace {
2392        const static UnicodeSet::run_t __zanb_Ext_runs[] = {
2393        {Empty, 2256}, {Full, 2}, {Mixed, 1}, {Empty, 32557}};
2394        const static UnicodeSet::bitquad_t  __zanb_Ext_quads[] = {
2395        0x000000ff};
2396        }
2397
2398        const static UnicodeSet zanb_Ext{const_cast<UnicodeSet::run_t *>(__zanb_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__zanb_Ext_quads), 1, 0};
2399
2400        /** Code Point Ranges for Dogr
2401        [0964, 096f], [a830, a839], [11800, 1183b]**/
2402
2403        namespace {
2404        const static UnicodeSet::run_t __dogr_Ext_runs[] = {
2405        {Empty, 75}, {Mixed, 1}, {Empty, 1269}, {Mixed, 1}, {Empty, 894},
2406        {Full, 1}, {Mixed, 1}, {Empty, 32574}};
2407        const static UnicodeSet::bitquad_t  __dogr_Ext_quads[] = {
2408        0x0000fff0, 0x03ff0000, 0x0fffffff};
2409        }
2410
2411        const static UnicodeSet dogr_Ext{const_cast<UnicodeSet::run_t *>(__dogr_Ext_runs), 8, 0, const_cast<UnicodeSet::bitquad_t *>(__dogr_Ext_quads), 3, 0};
2412
2413        /** Code Point Ranges for Gong
2414        [0964, 0965], [11d60, 11d65], [11d67, 11d68], [11d6a, 11d8e],
2415        [11d90, 11d91], [11d93, 11d98], [11da0, 11da9]**/
2416
2417        namespace {
2418        const static UnicodeSet::run_t __gong_Ext_runs[] = {
2419        {Empty, 75}, {Mixed, 1}, {Empty, 2207}, {Mixed, 3}, {Empty, 32530}};
2420        const static UnicodeSet::bitquad_t  __gong_Ext_quads[] = {
2421        0x00000030, 0xfffffdbf, 0x01fb7fff, 0x000003ff};
2422        }
2423
2424        const static UnicodeSet gong_Ext{const_cast<UnicodeSet::run_t *>(__gong_Ext_runs), 5, 0, const_cast<UnicodeSet::bitquad_t *>(__gong_Ext_quads), 4, 0};
2425
2426        /** Code Point Ranges for Maka
2427        [11ee0, 11ef8]**/
2428
2429        namespace {
2430        const static UnicodeSet::run_t __maka_Ext_runs[] = {
2431        {Empty, 2295}, {Mixed, 1}, {Empty, 32520}};
2432        const static UnicodeSet::bitquad_t  __maka_Ext_quads[] = {
2433        0x01ffffff};
2434        }
2435
2436        const static UnicodeSet maka_Ext{const_cast<UnicodeSet::run_t *>(__maka_Ext_runs), 3, 0, const_cast<UnicodeSet::bitquad_t *>(__maka_Ext_quads), 1, 0};
2437
2438        /** Code Point Ranges for Medf
2439        [16e40, 16e9a]**/
2440
2441        namespace {
2442        const static UnicodeSet::run_t __medf_Ext_runs[] = {
2443        {Empty, 2930}, {Full, 2}, {Mixed, 1}, {Empty, 31883}};
2444        const static UnicodeSet::bitquad_t  __medf_Ext_quads[] = {
2445        0x07ffffff};
2446        }
2447
2448        const static UnicodeSet medf_Ext{const_cast<UnicodeSet::run_t *>(__medf_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__medf_Ext_quads), 1, 0};
2449
2450        /** Code Point Ranges for Rohg
2451        [060c, 060c], [061b, 061b], [061f, 061f], [0640, 0640],
2452        [06d4, 06d4], [10d00, 10d27], [10d30, 10d39]**/
2453
2454        namespace {
2455        const static UnicodeSet::run_t __rohg_Ext_runs[] = {
2456        {Empty, 48}, {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 3},
2457        {Mixed, 1}, {Empty, 2097}, {Full, 1}, {Mixed, 1}, {Empty, 32662}};
2458        const static UnicodeSet::bitquad_t  __rohg_Ext_quads[] = {
2459        0x88001000, 0x00000001, 0x00100000, 0x03ff00ff};
2460        }
2461
2462        const static UnicodeSet rohg_Ext{const_cast<UnicodeSet::run_t *>(__rohg_Ext_runs), 10, 0, const_cast<UnicodeSet::bitquad_t *>(__rohg_Ext_quads), 4, 0};
2463
2464        /** Code Point Ranges for Sogd
2465        [0640, 0640], [10f30, 10f59]**/
2466
2467        namespace {
2468        const static UnicodeSet::run_t __sogd_Ext_runs[] = {
2469        {Empty, 50}, {Mixed, 1}, {Empty, 2118}, {Mixed, 2}, {Empty, 32645}};
2470        const static UnicodeSet::bitquad_t  __sogd_Ext_quads[] = {
2471        0x00000001, 0xffff0000, 0x03ffffff};
2472        }
2473
2474        const static UnicodeSet sogd_Ext{const_cast<UnicodeSet::run_t *>(__sogd_Ext_runs), 5, 0, const_cast<UnicodeSet::bitquad_t *>(__sogd_Ext_quads), 3, 0};
2475
2476        /** Code Point Ranges for Sogo
2477        [10f00, 10f27]**/
2478
2479        namespace {
2480        const static UnicodeSet::run_t __sogo_Ext_runs[] = {
2481        {Empty, 2168}, {Full, 1}, {Mixed, 1}, {Empty, 32646}};
2482        const static UnicodeSet::bitquad_t  __sogo_Ext_quads[] = {
2483        0x000000ff};
2484        }
2485
2486        const static UnicodeSet sogo_Ext{const_cast<UnicodeSet::run_t *>(__sogo_Ext_runs), 4, 0, const_cast<UnicodeSet::bitquad_t *>(__sogo_Ext_quads), 1, 0};
2487
2488        /** Code Point Ranges for Hrkt
2489        **/
2490
2491        namespace {
2492        const static UnicodeSet::run_t __hrkt_Ext_runs[] = {
2493        {Empty, 34816}};
2494        const static UnicodeSet::bitquad_t * const __hrkt_Ext_quads = nullptr;
2495        }
2496
2497        const static UnicodeSet hrkt_Ext{const_cast<UnicodeSet::run_t *>(__hrkt_Ext_runs), 1, 0, const_cast<UnicodeSet::bitquad_t *>(__hrkt_Ext_quads), 0, 0};
2498
2499        static ExtensionPropertyObject property_object
2500       {scx,
2501        UCD::sc,
2502       {&zzzz_Ext, &zyyy_Ext, &latn_Ext, &grek_Ext, &cyrl_Ext, &armn_Ext,
2503        &hebr_Ext, &arab_Ext, &syrc_Ext, &thaa_Ext, &deva_Ext, &beng_Ext,
2504        &guru_Ext, &gujr_Ext, &orya_Ext, &taml_Ext, &telu_Ext, &knda_Ext,
2505        &mlym_Ext, &sinh_Ext, &thai_Ext, &laoo_Ext, &tibt_Ext, &mymr_Ext,
2506        &geor_Ext, &hang_Ext, &ethi_Ext, &cher_Ext, &cans_Ext, &ogam_Ext,
2507        &runr_Ext, &khmr_Ext, &mong_Ext, &hira_Ext, &kana_Ext, &bopo_Ext,
2508        &hani_Ext, &yiii_Ext, &ital_Ext, &goth_Ext, &dsrt_Ext, &zinh_Ext,
2509        &tglg_Ext, &hano_Ext, &buhd_Ext, &tagb_Ext, &limb_Ext, &tale_Ext,
2510        &linb_Ext, &ugar_Ext, &shaw_Ext, &osma_Ext, &cprt_Ext, &brai_Ext,
2511        &bugi_Ext, &copt_Ext, &talu_Ext, &glag_Ext, &tfng_Ext, &sylo_Ext,
2512        &xpeo_Ext, &khar_Ext, &bali_Ext, &xsux_Ext, &phnx_Ext, &phag_Ext,
2513        &nkoo_Ext, &sund_Ext, &lepc_Ext, &olck_Ext, &vaii_Ext, &saur_Ext,
2514        &kali_Ext, &rjng_Ext, &lyci_Ext, &cari_Ext, &lydi_Ext, &cham_Ext,
2515        &lana_Ext, &tavt_Ext, &avst_Ext, &egyp_Ext, &samr_Ext, &lisu_Ext,
2516        &bamu_Ext, &java_Ext, &mtei_Ext, &armi_Ext, &sarb_Ext, &prti_Ext,
2517        &phli_Ext, &orkh_Ext, &kthi_Ext, &batk_Ext, &brah_Ext, &mand_Ext,
2518        &cakm_Ext, &merc_Ext, &mero_Ext, &plrd_Ext, &shrd_Ext, &sora_Ext,
2519        &takr_Ext, &aghb_Ext, &bass_Ext, &dupl_Ext, &elba_Ext, &gran_Ext,
2520        &hmng_Ext, &khoj_Ext, &lina_Ext, &mahj_Ext, &mani_Ext, &mend_Ext,
2521        &modi_Ext, &mroo_Ext, &narb_Ext, &nbat_Ext, &palm_Ext, &pauc_Ext,
2522        &perm_Ext, &phlp_Ext, &sidd_Ext, &sind_Ext, &tirh_Ext, &wara_Ext,
2523        &ahom_Ext, &hluw_Ext, &hatr_Ext, &mult_Ext, &hung_Ext, &sgnw_Ext,
2524        &adlm_Ext, &bhks_Ext, &marc_Ext, &newa_Ext, &osge_Ext, &tang_Ext,
2525        &gonm_Ext, &nshu_Ext, &soyo_Ext, &zanb_Ext, &dogr_Ext, &gong_Ext,
2526        &maka_Ext, &medf_Ext, &rohg_Ext, &sogd_Ext, &sogo_Ext, &hrkt_Ext
2527        }};
2528    }
2529}
2530
2531#endif
Note: See TracBrowser for help on using the repository browser.