1 // Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT.
5 // CLDRVersion is the CLDR version from which the tables in this package are derived.
6 const CLDRVersion = "31"
8 var ordinalRules = []pluralCheck{ // 58 elements
9 0: {cat: 0x2f, setID: 0x4},
10 1: {cat: 0x3a, setID: 0x5},
11 2: {cat: 0x22, setID: 0x1},
12 3: {cat: 0x22, setID: 0x6},
13 4: {cat: 0x22, setID: 0x7},
14 5: {cat: 0x2f, setID: 0x8},
15 6: {cat: 0x3c, setID: 0x9},
16 7: {cat: 0x2f, setID: 0xa},
17 8: {cat: 0x3c, setID: 0xb},
18 9: {cat: 0x2d, setID: 0xc},
19 10: {cat: 0x2d, setID: 0xd},
20 11: {cat: 0x2f, setID: 0xe},
21 12: {cat: 0x35, setID: 0x3},
22 13: {cat: 0xc5, setID: 0xf},
23 14: {cat: 0x2, setID: 0x1},
24 15: {cat: 0x5, setID: 0x3},
25 16: {cat: 0xd, setID: 0x10},
26 17: {cat: 0x22, setID: 0x1},
27 18: {cat: 0x2f, setID: 0x11},
28 19: {cat: 0x3d, setID: 0x12},
29 20: {cat: 0x2f, setID: 0x13},
30 21: {cat: 0x3a, setID: 0x14},
31 22: {cat: 0x2f, setID: 0x15},
32 23: {cat: 0x3b, setID: 0x16},
33 24: {cat: 0x2f, setID: 0xa},
34 25: {cat: 0x3c, setID: 0xb},
35 26: {cat: 0x22, setID: 0x1},
36 27: {cat: 0x23, setID: 0x17},
37 28: {cat: 0x24, setID: 0x18},
38 29: {cat: 0x22, setID: 0x19},
39 30: {cat: 0x23, setID: 0x2},
40 31: {cat: 0x24, setID: 0x18},
41 32: {cat: 0xf, setID: 0x13},
42 33: {cat: 0x1a, setID: 0x14},
43 34: {cat: 0xf, setID: 0x15},
44 35: {cat: 0x1b, setID: 0x16},
45 36: {cat: 0xf, setID: 0x1a},
46 37: {cat: 0x1d, setID: 0x1b},
47 38: {cat: 0xa, setID: 0x1c},
48 39: {cat: 0xa, setID: 0x1d},
49 40: {cat: 0xc, setID: 0x1e},
50 41: {cat: 0xe4, setID: 0x0},
51 42: {cat: 0x5, setID: 0x3},
52 43: {cat: 0xd, setID: 0xc},
53 44: {cat: 0xd, setID: 0x1f},
54 45: {cat: 0x22, setID: 0x1},
55 46: {cat: 0x23, setID: 0x17},
56 47: {cat: 0x24, setID: 0x18},
57 48: {cat: 0x25, setID: 0x20},
58 49: {cat: 0x22, setID: 0x21},
59 50: {cat: 0x23, setID: 0x17},
60 51: {cat: 0x24, setID: 0x18},
61 52: {cat: 0x25, setID: 0x20},
62 53: {cat: 0x21, setID: 0x22},
63 54: {cat: 0x22, setID: 0x1},
64 55: {cat: 0x23, setID: 0x2},
65 56: {cat: 0x24, setID: 0x23},
66 57: {cat: 0x25, setID: 0x24},
69 var ordinalIndex = []uint8{ // 20 elements
70 0x00, 0x00, 0x02, 0x03, 0x04, 0x05, 0x07, 0x09,
71 0x0d, 0x0e, 0x11, 0x14, 0x1a, 0x1d, 0x20, 0x26,
72 0x2d, 0x31, 0x35, 0x3a,
75 var ordinalLangToIndex = []uint8{ // 754 elements
77 0x00, 0x0d, 0x0b, 0x00, 0x00, 0x00, 0x00, 0x00,
78 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
79 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
80 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
81 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
82 0x00, 0x00, 0x11, 0x11, 0x00, 0x00, 0x00, 0x00,
83 0x0f, 0x00, 0x00, 0x0f, 0x0f, 0x00, 0x00, 0x05,
84 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
86 0x00, 0x00, 0x11, 0x11, 0x11, 0x00, 0x00, 0x00,
87 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
88 0x00, 0x0d, 0x0d, 0x0d, 0x0d, 0x0d, 0x00, 0x00,
89 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
90 0x00, 0x00, 0x00, 0x12, 0x12, 0x00, 0x00, 0x00,
91 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
92 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
93 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
95 0x00, 0x00, 0x00, 0x00, 0x00, 0x0b, 0x0b, 0x0b,
96 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b,
97 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b,
98 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b,
99 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b,
100 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b,
101 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b,
102 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b,
104 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b,
105 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b,
106 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b,
107 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b,
108 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b,
109 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x0b, 0x00, 0x00,
110 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
111 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
113 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
114 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
115 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
116 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x00,
117 0x00, 0x00, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02,
118 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02,
119 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02,
120 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02,
122 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02,
123 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02,
124 0x02, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x00,
125 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10,
126 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
127 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x10,
128 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x02,
129 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
131 0x00, 0x08, 0x08, 0x08, 0x08, 0x08, 0x00, 0x00,
132 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09,
133 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
134 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07,
135 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
136 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
137 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
138 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
140 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
141 0x00, 0x00, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00,
142 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
143 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
144 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x0e,
145 0x00, 0x00, 0x00, 0x00, 0x0c, 0x0c, 0x02, 0x02,
146 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
147 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
149 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x04,
150 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
151 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
152 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
153 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
154 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
155 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
156 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
158 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
159 0x02, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00,
160 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
161 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
162 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
163 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
164 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
165 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
167 0x00, 0x0a, 0x0a, 0x0a, 0x0a, 0x00, 0x00, 0x00,
168 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
169 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x00,
170 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
171 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
172 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
173 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
174 0x00, 0x00, 0x00, 0x00, 0x06, 0x06, 0x00, 0x00,
176 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
177 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02,
178 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
179 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
180 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
181 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
185 var ordinalInclusionMasks = []uint64{ // 100 elements
187 0x0000000400004009, 0x00000002120800d3, 0x0000000010a10195, 0x0000000842810581,
188 0x0000000841030081, 0x0000001210010041, 0x0000001100011001, 0x0000000614010001,
189 0x0000000614018001, 0x0000000600012001, 0x0000000200014001, 0x0000000010198031,
190 0x0000000010610331, 0x0000000040010f01, 0x0000000040070001, 0x0000000010010001,
191 0x0000000000011001, 0x000000001c010001, 0x000000001c010001, 0x0000000000012001,
192 0x0000000020014001, 0x0000000010080011, 0x0000000010200111, 0x0000000040000501,
193 0x0000000040020001, 0x0000000010000001, 0x0000000000001001, 0x0000000014000001,
194 0x0000000014000001, 0x0000000000002001, 0x0000000000004001, 0x0000000010080011,
196 0x0000000010200111, 0x0000000040000501, 0x0000000040020001, 0x0000000010000001,
197 0x0000000000001001, 0x0000000014000001, 0x0000000014000001, 0x0000000000002001,
198 0x0000000080014001, 0x0000000010080011, 0x0000000010200111, 0x0000000040000501,
199 0x0000000040020001, 0x0000000010000001, 0x0000000000001001, 0x0000000014000001,
200 0x0000000014000001, 0x0000000000002001, 0x0000000020004001, 0x0000000010080011,
201 0x0000000010200111, 0x0000000040000501, 0x0000000040020001, 0x0000000010000001,
202 0x0000000000001001, 0x0000000014000001, 0x0000000014000001, 0x0000000000002001,
203 0x0000000080014001, 0x0000000010080011, 0x0000000010200111, 0x0000000040000501,
205 0x0000000040020001, 0x0000000010000001, 0x0000000000001001, 0x0000000014000001,
206 0x0000000014000001, 0x0000000000002001, 0x0000000020004001, 0x0000000010080011,
207 0x0000000010200111, 0x0000000040000501, 0x0000000040020001, 0x0000000010000001,
208 0x0000000000001001, 0x0000000014000001, 0x0000000014000001, 0x0000000000002001,
209 0x000000002001c001, 0x0000000010080011, 0x0000000010200111, 0x0000000040000501,
210 0x0000000040020001, 0x0000000010000001, 0x0000000000001001, 0x0000000014000001,
211 0x0000000014000001, 0x0000000000002001, 0x0000000080004001, 0x0000000010080011,
212 0x0000000010200111, 0x0000000040000501, 0x0000000040020001, 0x0000000010000001,
214 0x0000000000001001, 0x0000000014000001, 0x0000000014000001, 0x0000000000002001,
217 // Slots used for ordinal: 3A of 0xFF rules; 14 of 0xFF indexes; 37 of 64 sets
219 var cardinalRules = []pluralCheck{ // 166 elements
220 0: {cat: 0x2, setID: 0x3},
221 1: {cat: 0x22, setID: 0x1},
222 2: {cat: 0x2, setID: 0x4},
223 3: {cat: 0x2, setID: 0x4},
224 4: {cat: 0x7, setID: 0x1},
225 5: {cat: 0x62, setID: 0x3},
226 6: {cat: 0x22, setID: 0x4},
227 7: {cat: 0x7, setID: 0x3},
228 8: {cat: 0x42, setID: 0x1},
229 9: {cat: 0x22, setID: 0x4},
230 10: {cat: 0x22, setID: 0x4},
231 11: {cat: 0x22, setID: 0x5},
232 12: {cat: 0x22, setID: 0x1},
233 13: {cat: 0x22, setID: 0x1},
234 14: {cat: 0x7, setID: 0x4},
235 15: {cat: 0x92, setID: 0x3},
236 16: {cat: 0xf, setID: 0x6},
237 17: {cat: 0x1f, setID: 0x7},
238 18: {cat: 0x82, setID: 0x3},
239 19: {cat: 0x92, setID: 0x3},
240 20: {cat: 0xf, setID: 0x6},
241 21: {cat: 0x62, setID: 0x3},
242 22: {cat: 0x4a, setID: 0x6},
243 23: {cat: 0x7, setID: 0x8},
244 24: {cat: 0x62, setID: 0x3},
245 25: {cat: 0x1f, setID: 0x9},
246 26: {cat: 0x62, setID: 0x3},
247 27: {cat: 0x5f, setID: 0x9},
248 28: {cat: 0x72, setID: 0x3},
249 29: {cat: 0x29, setID: 0xa},
250 30: {cat: 0x29, setID: 0xb},
251 31: {cat: 0x4f, setID: 0xb},
252 32: {cat: 0x61, setID: 0x2},
253 33: {cat: 0x2f, setID: 0x6},
254 34: {cat: 0x3a, setID: 0x7},
255 35: {cat: 0x4f, setID: 0x6},
256 36: {cat: 0x5f, setID: 0x7},
257 37: {cat: 0x62, setID: 0x2},
258 38: {cat: 0x4f, setID: 0x6},
259 39: {cat: 0x72, setID: 0x2},
260 40: {cat: 0x21, setID: 0x3},
261 41: {cat: 0x7, setID: 0x4},
262 42: {cat: 0x32, setID: 0x3},
263 43: {cat: 0x21, setID: 0x3},
264 44: {cat: 0x22, setID: 0x1},
265 45: {cat: 0x22, setID: 0x1},
266 46: {cat: 0x23, setID: 0x2},
267 47: {cat: 0x2, setID: 0x3},
268 48: {cat: 0x22, setID: 0x1},
269 49: {cat: 0x24, setID: 0xc},
270 50: {cat: 0x7, setID: 0x1},
271 51: {cat: 0x62, setID: 0x3},
272 52: {cat: 0x74, setID: 0x3},
273 53: {cat: 0x24, setID: 0x3},
274 54: {cat: 0x2f, setID: 0xd},
275 55: {cat: 0x34, setID: 0x1},
276 56: {cat: 0xf, setID: 0x6},
277 57: {cat: 0x1f, setID: 0x7},
278 58: {cat: 0x62, setID: 0x3},
279 59: {cat: 0x4f, setID: 0x6},
280 60: {cat: 0x5a, setID: 0x7},
281 61: {cat: 0xf, setID: 0xe},
282 62: {cat: 0x1f, setID: 0xf},
283 63: {cat: 0x64, setID: 0x3},
284 64: {cat: 0x4f, setID: 0xe},
285 65: {cat: 0x5c, setID: 0xf},
286 66: {cat: 0x22, setID: 0x10},
287 67: {cat: 0x23, setID: 0x11},
288 68: {cat: 0x24, setID: 0x12},
289 69: {cat: 0xf, setID: 0x1},
290 70: {cat: 0x62, setID: 0x3},
291 71: {cat: 0xf, setID: 0x2},
292 72: {cat: 0x63, setID: 0x3},
293 73: {cat: 0xf, setID: 0x13},
294 74: {cat: 0x64, setID: 0x3},
295 75: {cat: 0x74, setID: 0x3},
296 76: {cat: 0xf, setID: 0x1},
297 77: {cat: 0x62, setID: 0x3},
298 78: {cat: 0x4a, setID: 0x1},
299 79: {cat: 0xf, setID: 0x2},
300 80: {cat: 0x63, setID: 0x3},
301 81: {cat: 0x4b, setID: 0x2},
302 82: {cat: 0xf, setID: 0x13},
303 83: {cat: 0x64, setID: 0x3},
304 84: {cat: 0x4c, setID: 0x13},
305 85: {cat: 0x7, setID: 0x1},
306 86: {cat: 0x62, setID: 0x3},
307 87: {cat: 0x7, setID: 0x2},
308 88: {cat: 0x63, setID: 0x3},
309 89: {cat: 0x2f, setID: 0xa},
310 90: {cat: 0x37, setID: 0x14},
311 91: {cat: 0x65, setID: 0x3},
312 92: {cat: 0x7, setID: 0x1},
313 93: {cat: 0x62, setID: 0x3},
314 94: {cat: 0x7, setID: 0x15},
315 95: {cat: 0x64, setID: 0x3},
316 96: {cat: 0x75, setID: 0x3},
317 97: {cat: 0x7, setID: 0x1},
318 98: {cat: 0x62, setID: 0x3},
319 99: {cat: 0xf, setID: 0xe},
320 100: {cat: 0x1f, setID: 0xf},
321 101: {cat: 0x64, setID: 0x3},
322 102: {cat: 0xf, setID: 0x16},
323 103: {cat: 0x17, setID: 0x1},
324 104: {cat: 0x65, setID: 0x3},
325 105: {cat: 0xf, setID: 0x17},
326 106: {cat: 0x65, setID: 0x3},
327 107: {cat: 0xf, setID: 0xf},
328 108: {cat: 0x65, setID: 0x3},
329 109: {cat: 0x2f, setID: 0x6},
330 110: {cat: 0x3a, setID: 0x7},
331 111: {cat: 0x2f, setID: 0xe},
332 112: {cat: 0x3c, setID: 0xf},
333 113: {cat: 0x2d, setID: 0xa},
334 114: {cat: 0x2d, setID: 0x17},
335 115: {cat: 0x2d, setID: 0x18},
336 116: {cat: 0x2f, setID: 0x6},
337 117: {cat: 0x3a, setID: 0xb},
338 118: {cat: 0x2f, setID: 0x19},
339 119: {cat: 0x3c, setID: 0xb},
340 120: {cat: 0x55, setID: 0x3},
341 121: {cat: 0x22, setID: 0x1},
342 122: {cat: 0x24, setID: 0x3},
343 123: {cat: 0x2c, setID: 0xc},
344 124: {cat: 0x2d, setID: 0xb},
345 125: {cat: 0xf, setID: 0x6},
346 126: {cat: 0x1f, setID: 0x7},
347 127: {cat: 0x62, setID: 0x3},
348 128: {cat: 0xf, setID: 0xe},
349 129: {cat: 0x1f, setID: 0xf},
350 130: {cat: 0x64, setID: 0x3},
351 131: {cat: 0xf, setID: 0xa},
352 132: {cat: 0x65, setID: 0x3},
353 133: {cat: 0xf, setID: 0x17},
354 134: {cat: 0x65, setID: 0x3},
355 135: {cat: 0xf, setID: 0x18},
356 136: {cat: 0x65, setID: 0x3},
357 137: {cat: 0x2f, setID: 0x6},
358 138: {cat: 0x3a, setID: 0x1a},
359 139: {cat: 0x2f, setID: 0x1b},
360 140: {cat: 0x3b, setID: 0x1c},
361 141: {cat: 0x2f, setID: 0x1d},
362 142: {cat: 0x3c, setID: 0x1e},
363 143: {cat: 0x37, setID: 0x3},
364 144: {cat: 0xa5, setID: 0x0},
365 145: {cat: 0x22, setID: 0x1},
366 146: {cat: 0x23, setID: 0x2},
367 147: {cat: 0x24, setID: 0x1f},
368 148: {cat: 0x25, setID: 0x20},
369 149: {cat: 0xf, setID: 0x6},
370 150: {cat: 0x62, setID: 0x3},
371 151: {cat: 0xf, setID: 0x1b},
372 152: {cat: 0x63, setID: 0x3},
373 153: {cat: 0xf, setID: 0x21},
374 154: {cat: 0x64, setID: 0x3},
375 155: {cat: 0x75, setID: 0x3},
376 156: {cat: 0x21, setID: 0x3},
377 157: {cat: 0x22, setID: 0x1},
378 158: {cat: 0x23, setID: 0x2},
379 159: {cat: 0x2c, setID: 0x22},
380 160: {cat: 0x2d, setID: 0x5},
381 161: {cat: 0x21, setID: 0x3},
382 162: {cat: 0x22, setID: 0x1},
383 163: {cat: 0x23, setID: 0x2},
384 164: {cat: 0x24, setID: 0x23},
385 165: {cat: 0x25, setID: 0x24},
388 var cardinalIndex = []uint8{ // 36 elements
389 0x00, 0x00, 0x02, 0x03, 0x04, 0x06, 0x09, 0x0a,
390 0x0c, 0x0d, 0x10, 0x14, 0x17, 0x1d, 0x28, 0x2b,
391 0x2d, 0x2f, 0x32, 0x38, 0x42, 0x45, 0x4c, 0x55,
392 0x5c, 0x61, 0x6d, 0x74, 0x79, 0x7d, 0x89, 0x91,
393 0x95, 0x9c, 0xa1, 0xa6,
396 var cardinalLangToIndex = []uint8{ // 754 elements
398 0x00, 0x04, 0x04, 0x08, 0x08, 0x08, 0x00, 0x00,
399 0x06, 0x06, 0x01, 0x01, 0x21, 0x21, 0x21, 0x21,
400 0x21, 0x21, 0x21, 0x21, 0x21, 0x21, 0x21, 0x21,
401 0x21, 0x21, 0x21, 0x21, 0x21, 0x21, 0x21, 0x21,
402 0x21, 0x21, 0x21, 0x21, 0x21, 0x21, 0x21, 0x21,
403 0x21, 0x21, 0x01, 0x01, 0x08, 0x08, 0x04, 0x04,
404 0x08, 0x00, 0x00, 0x08, 0x08, 0x00, 0x00, 0x1a,
405 0x1a, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x06,
407 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00,
408 0x1e, 0x1e, 0x08, 0x08, 0x13, 0x00, 0x00, 0x13,
409 0x13, 0x04, 0x04, 0x04, 0x04, 0x04, 0x08, 0x08,
410 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x18,
411 0x18, 0x00, 0x00, 0x22, 0x22, 0x09, 0x09, 0x09,
412 0x00, 0x00, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04,
413 0x04, 0x04, 0x00, 0x00, 0x16, 0x16, 0x00, 0x00,
414 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08,
416 0x08, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x04,
417 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04,
418 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04,
419 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04,
420 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04,
421 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04,
422 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04,
423 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04,
425 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04,
426 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04,
427 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04,
428 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04,
429 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04,
430 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x08, 0x08,
431 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08,
432 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08,
434 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08,
435 0x08, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x08,
436 0x08, 0x00, 0x00, 0x01, 0x01, 0x01, 0x02, 0x02,
437 0x02, 0x02, 0x02, 0x04, 0x04, 0x0c, 0x0c, 0x08,
438 0x08, 0x08, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02,
439 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02,
440 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02,
441 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02,
443 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02,
444 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02,
445 0x02, 0x08, 0x08, 0x04, 0x04, 0x1f, 0x1f, 0x14,
446 0x14, 0x04, 0x04, 0x08, 0x08, 0x08, 0x08, 0x01,
447 0x01, 0x06, 0x00, 0x00, 0x20, 0x20, 0x08, 0x08,
448 0x08, 0x08, 0x08, 0x08, 0x17, 0x17, 0x01, 0x01,
449 0x13, 0x13, 0x13, 0x16, 0x16, 0x08, 0x08, 0x02,
450 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0a,
452 0x0a, 0x04, 0x04, 0x04, 0x04, 0x04, 0x10, 0x00,
453 0x00, 0x00, 0x08, 0x08, 0x08, 0x08, 0x00, 0x08,
454 0x08, 0x02, 0x02, 0x08, 0x00, 0x00, 0x08, 0x00,
455 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08,
456 0x08, 0x08, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00,
457 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
458 0x08, 0x08, 0x08, 0x08, 0x00, 0x00, 0x0f, 0x0f,
459 0x08, 0x10, 0x10, 0x08, 0x08, 0x0e, 0x0e, 0x08,
461 0x08, 0x08, 0x08, 0x00, 0x00, 0x06, 0x06, 0x06,
462 0x06, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1b,
463 0x1b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0d,
464 0x0d, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00,
465 0x06, 0x06, 0x00, 0x00, 0x08, 0x08, 0x0b, 0x0b,
466 0x08, 0x08, 0x08, 0x08, 0x01, 0x01, 0x00, 0x00,
467 0x00, 0x00, 0x1c, 0x1c, 0x00, 0x00, 0x00, 0x00,
468 0x00, 0x00, 0x08, 0x10, 0x10, 0x08, 0x08, 0x08,
470 0x08, 0x08, 0x00, 0x00, 0x00, 0x08, 0x08, 0x08,
471 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04,
472 0x00, 0x00, 0x08, 0x08, 0x08, 0x08, 0x08, 0x00,
473 0x08, 0x06, 0x00, 0x00, 0x08, 0x08, 0x08, 0x08,
474 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x06,
475 0x00, 0x00, 0x06, 0x06, 0x08, 0x19, 0x19, 0x0d,
476 0x0d, 0x08, 0x08, 0x03, 0x03, 0x03, 0x03, 0x03,
477 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03,
479 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x00, 0x00,
480 0x12, 0x12, 0x12, 0x08, 0x08, 0x1d, 0x1d, 0x1d,
481 0x1d, 0x1d, 0x1d, 0x1d, 0x00, 0x00, 0x08, 0x08,
482 0x00, 0x00, 0x08, 0x08, 0x00, 0x00, 0x08, 0x10,
483 0x10, 0x10, 0x10, 0x08, 0x08, 0x00, 0x00, 0x00,
484 0x00, 0x11, 0x00, 0x00, 0x11, 0x11, 0x05, 0x05,
485 0x18, 0x18, 0x15, 0x15, 0x10, 0x10, 0x10, 0x10,
486 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08,
488 0x08, 0x08, 0x08, 0x08, 0x08, 0x13, 0x13, 0x13,
489 0x13, 0x13, 0x13, 0x13, 0x13, 0x13, 0x13, 0x13,
490 0x08, 0x08, 0x08, 0x04, 0x04, 0x04, 0x04, 0x04,
491 0x04, 0x04, 0x04, 0x04, 0x08, 0x08, 0x08, 0x08,
492 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x00,
493 0x00, 0x06, 0x06, 0x06, 0x08, 0x08, 0x08, 0x08,
494 0x00, 0x00, 0x08, 0x08, 0x08, 0x08, 0x00, 0x00,
495 0x07, 0x07, 0x08, 0x08, 0x1d, 0x1d, 0x04, 0x04,
497 0x04, 0x08, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08,
498 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00,
499 0x08, 0x08, 0x08, 0x08, 0x06, 0x08, 0x08, 0x00,
500 0x08, 0x08, 0x08, 0x00, 0x00, 0x04, 0x04, 0x00,
501 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
502 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
506 var cardinalInclusionMasks = []uint64{ // 100 elements
508 0x0000000200500419, 0x0000000000512153, 0x000000000a327105, 0x0000000ca23c7101,
509 0x00000004a23c7201, 0x0000000482943001, 0x0000001482943201, 0x0000000502943001,
510 0x0000000502943001, 0x0000000522943201, 0x0000000540543401, 0x00000000454128e1,
511 0x000000005b02e821, 0x000000006304e821, 0x000000006304ea21, 0x0000000042842821,
512 0x0000000042842a21, 0x0000000042842821, 0x0000000042842821, 0x0000000062842a21,
513 0x0000000200400421, 0x0000000000400061, 0x000000000a004021, 0x0000000022004021,
514 0x0000000022004221, 0x0000000002800021, 0x0000000002800221, 0x0000000002800021,
515 0x0000000002800021, 0x0000000022800221, 0x0000000000400421, 0x0000000000400061,
517 0x000000000a004021, 0x0000000022004021, 0x0000000022004221, 0x0000000002800021,
518 0x0000000002800221, 0x0000000002800021, 0x0000000002800021, 0x0000000022800221,
519 0x0000000200400421, 0x0000000000400061, 0x000000000a004021, 0x0000000022004021,
520 0x0000000022004221, 0x0000000002800021, 0x0000000002800221, 0x0000000002800021,
521 0x0000000002800021, 0x0000000022800221, 0x0000000000400421, 0x0000000000400061,
522 0x000000000a004021, 0x0000000022004021, 0x0000000022004221, 0x0000000002800021,
523 0x0000000002800221, 0x0000000002800021, 0x0000000002800021, 0x0000000022800221,
524 0x0000000200400421, 0x0000000000400061, 0x000000000a004021, 0x0000000022004021,
526 0x0000000022004221, 0x0000000002800021, 0x0000000002800221, 0x0000000002800021,
527 0x0000000002800021, 0x0000000022800221, 0x0000000040400421, 0x0000000044400061,
528 0x000000005a004021, 0x0000000062004021, 0x0000000062004221, 0x0000000042800021,
529 0x0000000042800221, 0x0000000042800021, 0x0000000042800021, 0x0000000062800221,
530 0x0000000200400421, 0x0000000000400061, 0x000000000a004021, 0x0000000022004021,
531 0x0000000022004221, 0x0000000002800021, 0x0000000002800221, 0x0000000002800021,
532 0x0000000002800021, 0x0000000022800221, 0x0000000040400421, 0x0000000044400061,
533 0x000000005a004021, 0x0000000062004021, 0x0000000062004221, 0x0000000042800021,
535 0x0000000042800221, 0x0000000042800021, 0x0000000042800021, 0x0000000062800221,
538 // Slots used for cardinal: A6 of 0xFF rules; 24 of 0xFF indexes; 37 of 64 sets
540 // Total table size 3804 bytes (3KiB); checksum: FFC009FC