1 /* Automatically generated file (contractions-toc), 1490539886
2  *
3  * Tag          : _nu_ducet
4  * Contractions : 820
5  */
6 
7 #include <stdint.h>
8 
9 #include <libnu/udb.h>
10 
11 const size_t _NU_DUCET_CONTRACTIONS = 820; /* contractions included in switch */
12 const size_t _NU_DUCET_CODEPOINTS = 20027; /* complementary codepoints number */
13 
14 #define state_00AAB9 -838
15 #define state_000438 -826
16 #define state_0019B5 -749
17 #define state_001B09 -745
18 #define state_0019B7 -744
19 #define state_0019BA -737
20 #define state_00006C -712
21 #define state_0019B6 -686
22 #define state_00064A -684
23 #define state_000648 -674
24 #define state_00AABB -667
25 #define state_000418 -500
26 #define state_001B07 -482
27 #define state_001B05 -454
28 #define state_00AABC -394
29 #define state_000627 -391
30 #define state_000B92 -381
31 #define state_00004C -343
32 #define state_001B0D -252
33 #define state_001025 -217
34 #define state_000E40 -198
35 #define state_000E41 -197
36 #define state_000E42 -196
37 #define state_000E43 -195
38 #define state_000E44 -194
39 #define state_00AAB5 -171
40 #define state_00AAB6 -161
41 #define state_000EC1 -114
42 #define state_000EC0 -113
43 #define state_000EC3 -112
44 #define state_000EC2 -111
45 #define state_000EC4 -109
46 #define state_001B0B -59
47 #define state_001B11 -24
48 
49 const int16_t _NU_DUCET_ROOTS_G[] = {
50 	0, -34, 0, 0, -33, -32, -31, -30, -29, -28, 2, -26,
51 	-15, 0, 0, 3, 0, 0, -14, -13, -12, 8, 1, 8,
52 	-10, 0, -7, -6, 5, 20, 4, -4, -2, 0, };
53 
54 const size_t _NU_DUCET_ROOTS_G_SIZE = sizeof(_NU_DUCET_ROOTS_G) / sizeof(*_NU_DUCET_ROOTS_G);
55 
56 /* codepoints */
57 const uint32_t _NU_DUCET_ROOTS_VALUES_C[] = {
58 	0x00004C, 0x001B0D, 0x000648, 0x000EC0, 0x00064A, 0x000E44, 0x001B0B, 0x000EC1,
59 	0x000EC3, 0x001B05, 0x000E41, 0x000E43, 0x00006C, 0x000627, 0x0019B5, 0x001025,
60 	0x001B07, 0x00AAB9, 0x000E40, 0x0019B7, 0x000E42, 0x00AABC, 0x001B09, 0x0019BA,
61 	0x000EC2, 0x0019B6, 0x000B92, 0x000418, 0x00AABB, 0x000438, 0x00AAB5, 0x00AAB6,
62 	0x001B11, 0x000EC4, };
63 
64 /* indexes */
65 const uint16_t _NU_DUCET_ROOTS_VALUES_I[] = {
66 	0x0157, 0x00FC, 0x02A2, 0x0071, 0x02AC, 0x00C2, 0x003B, 0x0072, 0x0070, 0x01C6,
67 	0x00C5, 0x00C3, 0x02C8, 0x0187, 0x02ED, 0x00D9, 0x01E2, 0x0346, 0x00C6, 0x02E8,
68 	0x00C4, 0x018A, 0x02E9, 0x02E1, 0x006F, 0x02AE, 0x017D, 0x01F4, 0x029B, 0x033A,
69 	0x00AB, 0x00A1, 0x0018, 0x006D, };
70 
71 /* MPH lookup for root codepoints + binary search on balanced tree
72  * for intermediate states */
_nu_ducet_weight_switch(uint32_t u,int32_t * w,void * context)73 int32_t _nu_ducet_weight_switch(uint32_t u, int32_t *w, void *context) {
74 	(void)(context);
75 
76 	if (w == 0) { /*  first entry, root states */
77 		uint32_t state = nu_udb_lookup_value(u, _NU_DUCET_ROOTS_G, _NU_DUCET_ROOTS_G_SIZE,
78 			_NU_DUCET_ROOTS_VALUES_C, _NU_DUCET_ROOTS_VALUES_I);
79 
80 		if (state != 0) {
81 			return -state; /* VALUES_I store negated (positive) states */
82 		}
83 	}
84 
85 	if (w != 0) { /* re-entry, intermediate states */
86 		int32_t weight = *w;
87 		*w = 0;
88 
89 		if (weight == state_00004C) {
90 			switch (u) {
91 			case 0x000387: return 0x000456;
92 			case 0x0000B7: return 0x000456;
93 			}
94 
95 			*w = 1;
96 			return 0x00044D;
97 		}
98 		else if (weight < state_00004C) {
99 			if (weight == state_00064A) {
100 				switch (u) {
101 				case 0x000654: return 0x000C71;
102 				}
103 
104 				*w = 1;
105 				return 0x000FE3;
106 			}
107 			else if (weight < state_00064A) {
108 				if (weight == state_0019B7) {
109 					switch (u) {
110 					case 0x0019A2: return 0x001F15;
111 					case 0x001999: return 0x001EE8;
112 					case 0x001981: return 0x001E70;
113 					case 0x00198E: return 0x001EB1;
114 					case 0x001988: return 0x001E93;
115 					case 0x001994: return 0x001ECF;
116 					case 0x0019A6: return 0x001F29;
117 					case 0x00198A: return 0x001E9D;
118 					case 0x001984: return 0x001E7F;
119 					case 0x00199D: return 0x001EFC;
120 					case 0x001991: return 0x001EC0;
121 					case 0x0019A3: return 0x001F1A;
122 					case 0x001980: return 0x001E6B;
123 					case 0x00198D: return 0x001EAC;
124 					case 0x001995: return 0x001ED4;
125 					case 0x0019A7: return 0x001F2E;
126 					case 0x00199A: return 0x001EED;
127 					case 0x0019AA: return 0x001F3D;
128 					case 0x00199E: return 0x001F01;
129 					case 0x001992: return 0x001EC5;
130 					case 0x001987: return 0x001E8E;
131 					case 0x001996: return 0x001ED9;
132 					case 0x0019A0: return 0x001F0B;
133 					case 0x00199B: return 0x001EF2;
134 					case 0x001983: return 0x001E7A;
135 					case 0x0019AB: return 0x001F42;
136 					case 0x0019A4: return 0x001F1F;
137 					case 0x00199F: return 0x001F06;
138 					case 0x001993: return 0x001ECA;
139 					case 0x00198C: return 0x001EA7;
140 					case 0x001986: return 0x001E89;
141 					case 0x0019A8: return 0x001F33;
142 					case 0x001997: return 0x001EDE;
143 					case 0x0019A1: return 0x001F10;
144 					case 0x00199C: return 0x001EF7;
145 					case 0x001998: return 0x001EE3;
146 					case 0x001982: return 0x001E75;
147 					case 0x00198F: return 0x001EB6;
148 					case 0x001989: return 0x001E98;
149 					case 0x0019A5: return 0x001F24;
150 					case 0x00198B: return 0x001EA2;
151 					case 0x001985: return 0x001E84;
152 					case 0x0019A9: return 0x001F38;
153 					case 0x001990: return 0x001EBB;
154 					}
155 
156 					*w = 1;
157 					return 0x001F4B;
158 				}
159 				else if (weight < state_0019B7) {
160 					if (weight == state_0019B5) {
161 						switch (u) {
162 						case 0x0019A8: return 0x001F31;
163 						case 0x00199F: return 0x001F04;
164 						case 0x001993: return 0x001EC8;
165 						case 0x0019AA: return 0x001F3B;
166 						case 0x0019A7: return 0x001F2C;
167 						case 0x001982: return 0x001E73;
168 						case 0x00198F: return 0x001EB4;
169 						case 0x001997: return 0x001EDC;
170 						case 0x00199C: return 0x001EF5;
171 						case 0x0019A0: return 0x001F09;
172 						case 0x00198B: return 0x001EA0;
173 						case 0x0019A9: return 0x001F36;
174 						case 0x001990: return 0x001EB9;
175 						case 0x0019A4: return 0x001F1D;
176 						case 0x001985: return 0x001E82;
177 						case 0x001994: return 0x001ECD;
178 						case 0x0019AB: return 0x001F40;
179 						case 0x001981: return 0x001E6E;
180 						case 0x0019A1: return 0x001F0E;
181 						case 0x00198E: return 0x001EAF;
182 						case 0x001998: return 0x001EE1;
183 						case 0x00199D: return 0x001EFA;
184 						case 0x001991: return 0x001EBE;
185 						case 0x0019A5: return 0x001F22;
186 						case 0x00198A: return 0x001E9B;
187 						case 0x001984: return 0x001E7D;
188 						case 0x001995: return 0x001ED2;
189 						case 0x001989: return 0x001E96;
190 						case 0x00199A: return 0x001EEB;
191 						case 0x001980: return 0x001E69;
192 						case 0x00198D: return 0x001EAA;
193 						case 0x001999: return 0x001EE6;
194 						case 0x00199E: return 0x001EFF;
195 						case 0x0019A2: return 0x001F13;
196 						case 0x001987: return 0x001E8C;
197 						case 0x001992: return 0x001EC3;
198 						case 0x001988: return 0x001E91;
199 						case 0x0019A6: return 0x001F27;
200 						case 0x001983: return 0x001E78;
201 						case 0x001996: return 0x001ED7;
202 						case 0x00199B: return 0x001EF0;
203 						case 0x0019A3: return 0x001F18;
204 						case 0x00198C: return 0x001EA5;
205 						case 0x001986: return 0x001E87;
206 						}
207 
208 						*w = 1;
209 						return 0x001F49;
210 					}
211 					else if (weight < state_0019B5) {
212 						if (weight == state_000438) {
213 							switch (u) {
214 							case 0x000306: return 0x000987;
215 							}
216 
217 							*w = 1;
218 							return 0x000977;
219 						}
220 						else if (weight < state_000438) {
221 							if (weight == state_00AAB9) {
222 								switch (u) {
223 								case 0x00AA92: return 0x001AE6;
224 								case 0x00AAA5: return 0x001B58;
225 								case 0x00AAAC: return 0x001B82;
226 								case 0x00AA8F: return 0x001AD4;
227 								case 0x00AA82: return 0x001A86;
228 								case 0x00AA9C: return 0x001B22;
229 								case 0x00AAA1: return 0x001B40;
230 								case 0x00AA97: return 0x001B04;
231 								case 0x00AAAD: return 0x001B88;
232 								case 0x00AA86: return 0x001A9E;
233 								case 0x00AA93: return 0x001AEC;
234 								case 0x00AA9D: return 0x001B28;
235 								case 0x00AA8A: return 0x001AB6;
236 								case 0x00AAA6: return 0x001B5E;
237 								case 0x00AA94: return 0x001AF2;
238 								case 0x00AA8E: return 0x001ACE;
239 								case 0x00AAAE: return 0x001B8E;
240 								case 0x00AA81: return 0x001A80;
241 								case 0x00AAA2: return 0x001B46;
242 								case 0x00AA90: return 0x001ADA;
243 								case 0x00AA9E: return 0x001B2E;
244 								case 0x00AAAA: return 0x001B76;
245 								case 0x00AA85: return 0x001A98;
246 								case 0x00AA9A: return 0x001B16;
247 								case 0x00AAA7: return 0x001B64;
248 								case 0x00AA95: return 0x001AF8;
249 								case 0x00AA89: return 0x001AB0;
250 								case 0x00AA8D: return 0x001AC8;
251 								case 0x00AA80: return 0x001A7A;
252 								case 0x00AA98: return 0x001B0A;
253 								case 0x00AAA3: return 0x001B4C;
254 								case 0x00AA91: return 0x001AE0;
255 								case 0x00AAA8: return 0x001B6A;
256 								case 0x00AAAF: return 0x001B94;
257 								case 0x00AA84: return 0x001A92;
258 								case 0x00AA8C: return 0x001AC2;
259 								case 0x00AA9F: return 0x001B34;
260 								case 0x00AAA4: return 0x001B52;
261 								case 0x00AAAB: return 0x001B7C;
262 								case 0x00AA88: return 0x001AAA;
263 								case 0x00AA83: return 0x001A8C;
264 								case 0x00AA99: return 0x001B10;
265 								case 0x00AA9B: return 0x001B1C;
266 								case 0x00AAA0: return 0x001B3A;
267 								case 0x00AA96: return 0x001AFE;
268 								case 0x00AAA9: return 0x001B70;
269 								case 0x00AA87: return 0x001AA4;
270 								case 0x00AA8B: return 0x001ABC;
271 								}
272 
273 								*w = 1;
274 								return 0x001B9A;
275 							}
276 						}
277 					}
278 					else { /* weight > state_0019B5 */
279 						if (weight == state_001B09) {
280 							switch (u) {
281 							case 0x001B35: return 0x001FCC;
282 							}
283 
284 							*w = 1;
285 							return 0x001FCB;
286 						}
287 					}
288 				}
289 				else { /* weight > state_0019B7 */
290 					if (weight == state_00006C) {
291 						switch (u) {
292 						case 0x0000B7: return 0x000445;
293 						case 0x000387: return 0x000445;
294 						}
295 
296 						*w = 1;
297 						return 0x00043C;
298 					}
299 					else if (weight < state_00006C) {
300 						if (weight == state_0019BA) {
301 							switch (u) {
302 							case 0x00198F: return 0x001EB7;
303 							case 0x0019A2: return 0x001F16;
304 							case 0x001995: return 0x001ED5;
305 							case 0x00199C: return 0x001EF8;
306 							case 0x001980: return 0x001E6C;
307 							case 0x001991: return 0x001EC1;
308 							case 0x0019A7: return 0x001F2F;
309 							case 0x001984: return 0x001E80;
310 							case 0x00199D: return 0x001EFD;
311 							case 0x00198A: return 0x001E9E;
312 							case 0x0019A3: return 0x001F1B;
313 							case 0x001983: return 0x001E7B;
314 							case 0x00198E: return 0x001EB2;
315 							case 0x001996: return 0x001EDA;
316 							case 0x0019A4: return 0x001F20;
317 							case 0x001987: return 0x001E8F;
318 							case 0x00199E: return 0x001F02;
319 							case 0x001992: return 0x001EC6;
320 							case 0x0019A0: return 0x001F0C;
321 							case 0x00199A: return 0x001EEE;
322 							case 0x001982: return 0x001E76;
323 							case 0x00198D: return 0x001EAD;
324 							case 0x0019AA: return 0x001F3E;
325 							case 0x001997: return 0x001EDF;
326 							case 0x0019A5: return 0x001F25;
327 							case 0x001986: return 0x001E8A;
328 							case 0x0019A8: return 0x001F34;
329 							case 0x001989: return 0x001E99;
330 							case 0x001993: return 0x001ECB;
331 							case 0x00198C: return 0x001EA8;
332 							case 0x0019A1: return 0x001F11;
333 							case 0x001998: return 0x001EE4;
334 							case 0x00199F: return 0x001F07;
335 							case 0x001994: return 0x001ED0;
336 							case 0x00199B: return 0x001EF3;
337 							case 0x001981: return 0x001E71;
338 							case 0x0019A9: return 0x001F39;
339 							case 0x0019AB: return 0x001F43;
340 							case 0x001988: return 0x001E94;
341 							case 0x001990: return 0x001EBC;
342 							case 0x00198B: return 0x001EA3;
343 							case 0x0019A6: return 0x001F2A;
344 							case 0x001999: return 0x001EE9;
345 							case 0x001985: return 0x001E85;
346 							}
347 
348 							*w = 1;
349 							return 0x001F4E;
350 						}
351 					}
352 					else { /* weight > state_00006C */
353 						if (weight == state_0019B6) {
354 							switch (u) {
355 							case 0x001995: return 0x001ED3;
356 							case 0x0019A3: return 0x001F19;
357 							case 0x00199A: return 0x001EEC;
358 							case 0x001980: return 0x001E6A;
359 							case 0x00198D: return 0x001EAB;
360 							case 0x001989: return 0x001E97;
361 							case 0x0019AA: return 0x001F3C;
362 							case 0x0019A7: return 0x001F2D;
363 							case 0x00199E: return 0x001F00;
364 							case 0x001990: return 0x001EBA;
365 							case 0x001985: return 0x001E83;
366 							case 0x001994: return 0x001ECE;
367 							case 0x0019A2: return 0x001F14;
368 							case 0x001981: return 0x001E6F;
369 							case 0x00198E: return 0x001EB0;
370 							case 0x0019A6: return 0x001F28;
371 							case 0x00199D: return 0x001EFB;
372 							case 0x00198A: return 0x001E9C;
373 							case 0x001986: return 0x001E88;
374 							case 0x001993: return 0x001EC9;
375 							case 0x0019A1: return 0x001F0F;
376 							case 0x001982: return 0x001E74;
377 							case 0x00198F: return 0x001EB5;
378 							case 0x001997: return 0x001EDD;
379 							case 0x0019A5: return 0x001F23;
380 							case 0x00199C: return 0x001EF6;
381 							case 0x00198B: return 0x001EA1;
382 							case 0x001987: return 0x001E8D;
383 							case 0x0019A9: return 0x001F37;
384 							case 0x001992: return 0x001EC4;
385 							case 0x0019A0: return 0x001F0A;
386 							case 0x001999: return 0x001EE7;
387 							case 0x001983: return 0x001E79;
388 							case 0x001996: return 0x001ED8;
389 							case 0x0019A4: return 0x001F1E;
390 							case 0x00199B: return 0x001EF1;
391 							case 0x00198C: return 0x001EA6;
392 							case 0x001988: return 0x001E92;
393 							case 0x0019AB: return 0x001F41;
394 							case 0x0019A8: return 0x001F32;
395 							case 0x00199F: return 0x001F05;
396 							case 0x001991: return 0x001EBF;
397 							case 0x001998: return 0x001EE2;
398 							case 0x001984: return 0x001E7E;
399 							}
400 
401 							*w = 1;
402 							return 0x001F4A;
403 						}
404 					}
405 				}
406 			}
407 			else { /* weight > state_00064A */
408 				if (weight == state_001B05) {
409 					switch (u) {
410 					case 0x001B35: return 0x001FC8;
411 					}
412 
413 					*w = 1;
414 					return 0x001FC7;
415 				}
416 				else if (weight < state_001B05) {
417 					if (weight == state_000418) {
418 						switch (u) {
419 						case 0x000306: return 0x000988;
420 						}
421 
422 						*w = 1;
423 						return 0x00097B;
424 					}
425 					else if (weight < state_000418) {
426 						if (weight == state_00AABB) {
427 							switch (u) {
428 							case 0x00AAA0: return 0x001B3B;
429 							case 0x00AA8D: return 0x001AC9;
430 							case 0x00AA81: return 0x001A81;
431 							case 0x00AA99: return 0x001B11;
432 							case 0x00AA90: return 0x001ADB;
433 							case 0x00AAAF: return 0x001B95;
434 							case 0x00AA9D: return 0x001B29;
435 							case 0x00AA85: return 0x001A99;
436 							case 0x00AA8A: return 0x001AB7;
437 							case 0x00AAAB: return 0x001B7D;
438 							case 0x00AA89: return 0x001AB1;
439 							case 0x00AAA7: return 0x001B65;
440 							case 0x00AA8E: return 0x001ACF;
441 							case 0x00AA82: return 0x001A87;
442 							case 0x00AA98: return 0x001B0B;
443 							case 0x00AA97: return 0x001B05;
444 							case 0x00AAAE: return 0x001B8F;
445 							case 0x00AAA3: return 0x001B4D;
446 							case 0x00AA86: return 0x001A9F;
447 							case 0x00AA8B: return 0x001ABD;
448 							case 0x00AA93: return 0x001AED;
449 							case 0x00AAAA: return 0x001B77;
450 							case 0x00AAA6: return 0x001B5F;
451 							case 0x00AA8F: return 0x001AD5;
452 							case 0x00AA83: return 0x001A8D;
453 							case 0x00AA9C: return 0x001B23;
454 							case 0x00AA96: return 0x001AFF;
455 							case 0x00AAAD: return 0x001B89;
456 							case 0x00AAA2: return 0x001B47;
457 							case 0x00AA87: return 0x001AA5;
458 							case 0x00AAA9: return 0x001B71;
459 							case 0x00AA8C: return 0x001AC3;
460 							case 0x00AA92: return 0x001AE7;
461 							case 0x00AA9F: return 0x001B35;
462 							case 0x00AAA5: return 0x001B59;
463 							case 0x00AA9B: return 0x001B1D;
464 							case 0x00AA95: return 0x001AF9;
465 							case 0x00AAA1: return 0x001B41;
466 							case 0x00AA80: return 0x001A7B;
467 							case 0x00AAA8: return 0x001B6B;
468 							case 0x00AA91: return 0x001AE1;
469 							case 0x00AA9E: return 0x001B2F;
470 							case 0x00AA84: return 0x001A93;
471 							case 0x00AAA4: return 0x001B53;
472 							case 0x00AAAC: return 0x001B83;
473 							case 0x00AA9A: return 0x001B17;
474 							case 0x00AA94: return 0x001AF3;
475 							case 0x00AA88: return 0x001AAB;
476 							}
477 
478 							*w = 1;
479 							return 0x001B9C;
480 						}
481 						else if (weight < state_00AABB) {
482 							if (weight == state_000648) {
483 								switch (u) {
484 								case 0x000654: return 0x000C68;
485 								}
486 
487 								*w = 1;
488 								return 0x000FBB;
489 							}
490 						}
491 					}
492 					else { /* weight > state_000418 */
493 						if (weight == state_001B07) {
494 							switch (u) {
495 							case 0x001B35: return 0x001FCA;
496 							}
497 
498 							*w = 1;
499 							return 0x001FC9;
500 						}
501 					}
502 				}
503 				else { /* weight > state_001B05 */
504 					if (weight == state_000627) {
505 						switch (u) {
506 						case 0x000653: return 0x000C5E;
507 						case 0x000655: return 0x000C6B;
508 						case 0x000654: return 0x000C61;
509 						}
510 
511 						*w = 1;
512 						return 0x000C9B;
513 					}
514 					else if (weight < state_000627) {
515 						if (weight == state_00AABC) {
516 							switch (u) {
517 							case 0x00AA95: return 0x001AFA;
518 							case 0x00AAA1: return 0x001B42;
519 							case 0x00AA84: return 0x001A94;
520 							case 0x00AA98: return 0x001B0C;
521 							case 0x00AA91: return 0x001AE2;
522 							case 0x00AAAC: return 0x001B84;
523 							case 0x00AA9E: return 0x001B30;
524 							case 0x00AA88: return 0x001AAC;
525 							case 0x00AAA6: return 0x001B60;
526 							case 0x00AA8D: return 0x001ACA;
527 							case 0x00AA9A: return 0x001B18;
528 							case 0x00AA96: return 0x001B00;
529 							case 0x00AAA2: return 0x001B48;
530 							case 0x00AA83: return 0x001A8E;
531 							case 0x00AA99: return 0x001B12;
532 							case 0x00AA92: return 0x001AE8;
533 							case 0x00AAAD: return 0x001B8A;
534 							case 0x00AA9F: return 0x001B36;
535 							case 0x00AA87: return 0x001AA6;
536 							case 0x00AAA7: return 0x001B66;
537 							case 0x00AA8C: return 0x001AC4;
538 							case 0x00AA9B: return 0x001B1E;
539 							case 0x00AA97: return 0x001B06;
540 							case 0x00AAA3: return 0x001B4E;
541 							case 0x00AA82: return 0x001A88;
542 							case 0x00AA93: return 0x001AEE;
543 							case 0x00AAAE: return 0x001B90;
544 							case 0x00AA86: return 0x001AA0;
545 							case 0x00AAA8: return 0x001B6C;
546 							case 0x00AA8B: return 0x001ABE;
547 							case 0x00AAAA: return 0x001B78;
548 							case 0x00AA9C: return 0x001B24;
549 							case 0x00AAA4: return 0x001B54;
550 							case 0x00AA8F: return 0x001AD6;
551 							case 0x00AA81: return 0x001A82;
552 							case 0x00AA94: return 0x001AF4;
553 							case 0x00AAAF: return 0x001B96;
554 							case 0x00AAA0: return 0x001B3C;
555 							case 0x00AA85: return 0x001A9A;
556 							case 0x00AAA9: return 0x001B72;
557 							case 0x00AA8A: return 0x001AB8;
558 							case 0x00AA90: return 0x001ADC;
559 							case 0x00AAAB: return 0x001B7E;
560 							case 0x00AA9D: return 0x001B2A;
561 							case 0x00AA89: return 0x001AB2;
562 							case 0x00AAA5: return 0x001B5A;
563 							case 0x00AA8E: return 0x001AD0;
564 							case 0x00AA80: return 0x001A7C;
565 							}
566 
567 							*w = 1;
568 							return 0x001B9D;
569 						}
570 					}
571 					else { /* weight > state_000627 */
572 						if (weight == state_000B92) {
573 							switch (u) {
574 							case 0x000BD7: return 0x0013E2;
575 							}
576 
577 							*w = 1;
578 							return 0x0013E0;
579 						}
580 					}
581 				}
582 			}
583 		}
584 		else { /* weight > state_00004C */
585 			if (weight == state_00AAB6) {
586 				switch (u) {
587 				case 0x00AA9D: return 0x001B27;
588 				case 0x00AA87: return 0x001AA3;
589 				case 0x00AA8A: return 0x001AB5;
590 				case 0x00AAA9: return 0x001B6F;
591 				case 0x00AAAD: return 0x001B87;
592 				case 0x00AA92: return 0x001AE5;
593 				case 0x00AAA0: return 0x001B39;
594 				case 0x00AA99: return 0x001B0F;
595 				case 0x00AA83: return 0x001A8B;
596 				case 0x00AA96: return 0x001AFD;
597 				case 0x00AA8F: return 0x001AD3;
598 				case 0x00AAA4: return 0x001B51;
599 				case 0x00AA9C: return 0x001B21;
600 				case 0x00AA88: return 0x001AA9;
601 				case 0x00AA8B: return 0x001ABB;
602 				case 0x00AAA8: return 0x001B69;
603 				case 0x00AAAC: return 0x001B81;
604 				case 0x00AA91: return 0x001ADF;
605 				case 0x00AA98: return 0x001B09;
606 				case 0x00AA84: return 0x001A91;
607 				case 0x00AA95: return 0x001AF7;
608 				case 0x00AAA3: return 0x001B4B;
609 				case 0x00AA80: return 0x001A79;
610 				case 0x00AA9B: return 0x001B1B;
611 				case 0x00AA89: return 0x001AAF;
612 				case 0x00AA8C: return 0x001AC1;
613 				case 0x00AAA7: return 0x001B63;
614 				case 0x00AAAB: return 0x001B7B;
615 				case 0x00AA90: return 0x001AD9;
616 				case 0x00AA9F: return 0x001B33;
617 				case 0x00AA85: return 0x001A97;
618 				case 0x00AAAF: return 0x001B93;
619 				case 0x00AA94: return 0x001AF1;
620 				case 0x00AAA2: return 0x001B45;
621 				case 0x00AA81: return 0x001A7F;
622 				case 0x00AA9A: return 0x001B15;
623 				case 0x00AA8D: return 0x001AC7;
624 				case 0x00AAA6: return 0x001B5D;
625 				case 0x00AAAA: return 0x001B75;
626 				case 0x00AA9E: return 0x001B2D;
627 				case 0x00AA86: return 0x001A9D;
628 				case 0x00AAAE: return 0x001B8D;
629 				case 0x00AA93: return 0x001AEB;
630 				case 0x00AAA1: return 0x001B3F;
631 				case 0x00AA82: return 0x001A85;
632 				case 0x00AA97: return 0x001B03;
633 				case 0x00AA8E: return 0x001ACD;
634 				case 0x00AAA5: return 0x001B57;
635 				}
636 
637 				*w = 1;
638 				return 0x001B99;
639 			}
640 			else if (weight < state_00AAB6) {
641 				if (weight == state_000E42) {
642 					switch (u) {
643 					case 0x000E1C: return 0x00193A;
644 					case 0x000E16: return 0x001916;
645 					case 0x000E24: return 0x00196A;
646 					case 0x000E07: return 0x0018BC;
647 					case 0x000E0C: return 0x0018DA;
648 					case 0x000E12: return 0x0018FE;
649 					case 0x000E1F: return 0x00194C;
650 					case 0x000E2D: return 0x0019A0;
651 					case 0x000E21: return 0x001958;
652 					case 0x000E1B: return 0x001934;
653 					case 0x000E15: return 0x001910;
654 					case 0x000E25: return 0x001970;
655 					case 0x000E2A: return 0x00198E;
656 					case 0x000E23: return 0x001964;
657 					case 0x000E11: return 0x0018F8;
658 					case 0x000E1E: return 0x001946;
659 					case 0x000E2E: return 0x0019A6;
660 					case 0x000E04: return 0x0018AA;
661 					case 0x000E1A: return 0x00192E;
662 					case 0x000E14: return 0x00190A;
663 					case 0x000E08: return 0x0018C2;
664 					case 0x000E0D: return 0x0018E0;
665 					case 0x000E01: return 0x001898;
666 					case 0x000E19: return 0x001928;
667 					case 0x000E28: return 0x001982;
668 					case 0x000E10: return 0x0018F2;
669 					case 0x000E26: return 0x001976;
670 					case 0x000E1D: return 0x001940;
671 					case 0x000E2B: return 0x001994;
672 					case 0x000E05: return 0x0018B0;
673 					case 0x000E0A: return 0x0018CE;
674 					case 0x000E09: return 0x0018C8;
675 					case 0x000E0E: return 0x0018E6;
676 					case 0x000E02: return 0x00189E;
677 					case 0x000E18: return 0x001922;
678 					case 0x000E17: return 0x00191C;
679 					case 0x000E27: return 0x00197C;
680 					case 0x000E2C: return 0x00199A;
681 					case 0x000E06: return 0x0018B6;
682 					case 0x000E0B: return 0x0018D4;
683 					case 0x000E13: return 0x001904;
684 					case 0x000E29: return 0x001988;
685 					case 0x000E20: return 0x001952;
686 					case 0x000E22: return 0x00195E;
687 					case 0x000E0F: return 0x0018EC;
688 					case 0x000E03: return 0x0018A4;
689 					}
690 
691 					*w = 1;
692 					return 0x0019AF;
693 				}
694 				else if (weight < state_000E42) {
695 					if (weight == state_000E40) {
696 						switch (u) {
697 						case 0x000E04: return 0x0018A8;
698 						case 0x000E27: return 0x00197A;
699 						case 0x000E11: return 0x0018F6;
700 						case 0x000E2C: return 0x001998;
701 						case 0x000E1E: return 0x001944;
702 						case 0x000E18: return 0x001920;
703 						case 0x000E0D: return 0x0018DE;
704 						case 0x000E01: return 0x001896;
705 						case 0x000E1A: return 0x00192C;
706 						case 0x000E14: return 0x001908;
707 						case 0x000E05: return 0x0018AE;
708 						case 0x000E0A: return 0x0018CC;
709 						case 0x000E20: return 0x001950;
710 						case 0x000E10: return 0x0018F0;
711 						case 0x000E29: return 0x001986;
712 						case 0x000E1D: return 0x00193E;
713 						case 0x000E0E: return 0x0018E4;
714 						case 0x000E24: return 0x001968;
715 						case 0x000E17: return 0x00191A;
716 						case 0x000E02: return 0x00189C;
717 						case 0x000E2D: return 0x00199E;
718 						case 0x000E21: return 0x001956;
719 						case 0x000E13: return 0x001902;
720 						case 0x000E22: return 0x00195C;
721 						case 0x000E06: return 0x0018B4;
722 						case 0x000E0B: return 0x0018D2;
723 						case 0x000E25: return 0x00196E;
724 						case 0x000E2A: return 0x00198C;
725 						case 0x000E1C: return 0x001938;
726 						case 0x000E16: return 0x001914;
727 						case 0x000E0F: return 0x0018EA;
728 						case 0x000E03: return 0x0018A2;
729 						case 0x000E2E: return 0x0019A4;
730 						case 0x000E08: return 0x0018C0;
731 						case 0x000E12: return 0x0018FC;
732 						case 0x000E1F: return 0x00194A;
733 						case 0x000E07: return 0x0018BA;
734 						case 0x000E0C: return 0x0018D8;
735 						case 0x000E26: return 0x001974;
736 						case 0x000E2B: return 0x001992;
737 						case 0x000E1B: return 0x001932;
738 						case 0x000E19: return 0x001926;
739 						case 0x000E23: return 0x001962;
740 						case 0x000E28: return 0x001980;
741 						case 0x000E09: return 0x0018C6;
742 						case 0x000E15: return 0x00190E;
743 						}
744 
745 						*w = 1;
746 						return 0x0019AD;
747 					}
748 					else if (weight < state_000E40) {
749 						if (weight == state_001025) {
750 							switch (u) {
751 							case 0x00102E: return 0x001DE0;
752 							}
753 
754 							*w = 1;
755 							return 0x001DDF;
756 						}
757 						else if (weight < state_001025) {
758 							if (weight == state_001B0D) {
759 								switch (u) {
760 								case 0x001B35: return 0x001FD0;
761 								}
762 
763 								*w = 1;
764 								return 0x001FCF;
765 							}
766 						}
767 					}
768 					else { /* weight > state_000E40 */
769 						if (weight == state_000E41) {
770 							switch (u) {
771 							case 0x000E2C: return 0x001999;
772 							case 0x000E26: return 0x001975;
773 							case 0x000E14: return 0x001909;
774 							case 0x000E01: return 0x001897;
775 							case 0x000E0E: return 0x0018E5;
776 							case 0x000E08: return 0x0018C1;
777 							case 0x000E1D: return 0x00193F;
778 							case 0x000E11: return 0x0018F7;
779 							case 0x000E0A: return 0x0018CD;
780 							case 0x000E04: return 0x0018A9;
781 							case 0x000E29: return 0x001987;
782 							case 0x000E2B: return 0x001993;
783 							case 0x000E25: return 0x00196F;
784 							case 0x000E15: return 0x00190F;
785 							case 0x000E1A: return 0x00192D;
786 							case 0x000E0D: return 0x0018DF;
787 							case 0x000E21: return 0x001957;
788 							case 0x000E2E: return 0x0019A5;
789 							case 0x000E1E: return 0x001945;
790 							case 0x000E23: return 0x001963;
791 							case 0x000E07: return 0x0018BB;
792 							case 0x000E2A: return 0x00198D;
793 							case 0x000E24: return 0x001969;
794 							case 0x000E12: return 0x0018FD;
795 							case 0x000E03: return 0x0018A3;
796 							case 0x000E20: return 0x001951;
797 							case 0x000E16: return 0x001915;
798 							case 0x000E28: return 0x001981;
799 							case 0x000E2D: return 0x00199F;
800 							case 0x000E1B: return 0x001933;
801 							case 0x000E0C: return 0x0018D9;
802 							case 0x000E06: return 0x0018B5;
803 							case 0x000E1F: return 0x00194B;
804 							case 0x000E13: return 0x001903;
805 							case 0x000E18: return 0x001921;
806 							case 0x000E02: return 0x00189D;
807 							case 0x000E0F: return 0x0018EB;
808 							case 0x000E27: return 0x00197B;
809 							case 0x000E17: return 0x00191B;
810 							case 0x000E1C: return 0x001939;
811 							case 0x000E0B: return 0x0018D3;
812 							case 0x000E09: return 0x0018C7;
813 							case 0x000E22: return 0x00195D;
814 							case 0x000E10: return 0x0018F1;
815 							case 0x000E19: return 0x001927;
816 							case 0x000E05: return 0x0018AF;
817 							}
818 
819 							*w = 1;
820 							return 0x0019AE;
821 						}
822 					}
823 				}
824 				else { /* weight > state_000E42 */
825 					if (weight == state_000E44) {
826 						switch (u) {
827 						case 0x000E1E: return 0x001948;
828 						case 0x000E10: return 0x0018F4;
829 						case 0x000E08: return 0x0018C4;
830 						case 0x000E01: return 0x00189A;
831 						case 0x000E28: return 0x001984;
832 						case 0x000E0E: return 0x0018E8;
833 						case 0x000E14: return 0x00190C;
834 						case 0x000E2B: return 0x001996;
835 						case 0x000E27: return 0x00197E;
836 						case 0x000E29: return 0x00198A;
837 						case 0x000E0A: return 0x0018D0;
838 						case 0x000E18: return 0x001924;
839 						case 0x000E22: return 0x001960;
840 						case 0x000E1D: return 0x001942;
841 						case 0x000E13: return 0x001906;
842 						case 0x000E09: return 0x0018CA;
843 						case 0x000E06: return 0x0018B8;
844 						case 0x000E17: return 0x00191E;
845 						case 0x000E1C: return 0x00193C;
846 						case 0x000E2C: return 0x00199C;
847 						case 0x000E02: return 0x0018A0;
848 						case 0x000E0F: return 0x0018EE;
849 						case 0x000E12: return 0x001900;
850 						case 0x000E24: return 0x00196C;
851 						case 0x000E0B: return 0x0018D6;
852 						case 0x000E07: return 0x0018BE;
853 						case 0x000E16: return 0x001918;
854 						case 0x000E20: return 0x001954;
855 						case 0x000E23: return 0x001966;
856 						case 0x000E1B: return 0x001936;
857 						case 0x000E2D: return 0x0019A2;
858 						case 0x000E03: return 0x0018A6;
859 						case 0x000E1F: return 0x00194E;
860 						case 0x000E25: return 0x001972;
861 						case 0x000E0C: return 0x0018DC;
862 						case 0x000E04: return 0x0018AC;
863 						case 0x000E11: return 0x0018FA;
864 						case 0x000E21: return 0x00195A;
865 						case 0x000E2E: return 0x0019A8;
866 						case 0x000E0D: return 0x0018E2;
867 						case 0x000E15: return 0x001912;
868 						case 0x000E1A: return 0x001930;
869 						case 0x000E2A: return 0x001990;
870 						case 0x000E26: return 0x001978;
871 						case 0x000E05: return 0x0018B2;
872 						case 0x000E19: return 0x00192A;
873 						}
874 
875 						*w = 1;
876 						return 0x0019B1;
877 					}
878 					else if (weight < state_000E44) {
879 						if (weight == state_000E43) {
880 							switch (u) {
881 							case 0x000E02: return 0x00189F;
882 							case 0x000E22: return 0x00195F;
883 							case 0x000E13: return 0x001905;
884 							case 0x000E25: return 0x001971;
885 							case 0x000E2A: return 0x00198F;
886 							case 0x000E06: return 0x0018B7;
887 							case 0x000E0B: return 0x0018D5;
888 							case 0x000E28: return 0x001983;
889 							case 0x000E1C: return 0x00193B;
890 							case 0x000E2E: return 0x0019A7;
891 							case 0x000E20: return 0x001953;
892 							case 0x000E0F: return 0x0018ED;
893 							case 0x000E01: return 0x001899;
894 							case 0x000E14: return 0x00190B;
895 							case 0x000E24: return 0x00196B;
896 							case 0x000E05: return 0x0018B1;
897 							case 0x000E0A: return 0x0018CF;
898 							case 0x000E10: return 0x0018F3;
899 							case 0x000E1D: return 0x001941;
900 							case 0x000E2D: return 0x0019A1;
901 							case 0x000E09: return 0x0018C9;
902 							case 0x000E0E: return 0x0018E7;
903 							case 0x000E15: return 0x001911;
904 							case 0x000E27: return 0x00197D;
905 							case 0x000E2C: return 0x00199B;
906 							case 0x000E04: return 0x0018AB;
907 							case 0x000E18: return 0x001923;
908 							case 0x000E11: return 0x0018F9;
909 							case 0x000E1E: return 0x001947;
910 							case 0x000E08: return 0x0018C3;
911 							case 0x000E23: return 0x001965;
912 							case 0x000E0D: return 0x0018E1;
913 							case 0x000E1A: return 0x00192F;
914 							case 0x000E16: return 0x001917;
915 							case 0x000E26: return 0x001977;
916 							case 0x000E2B: return 0x001995;
917 							case 0x000E03: return 0x0018A5;
918 							case 0x000E19: return 0x001929;
919 							case 0x000E29: return 0x001989;
920 							case 0x000E12: return 0x0018FF;
921 							case 0x000E1F: return 0x00194D;
922 							case 0x000E07: return 0x0018BD;
923 							case 0x000E0C: return 0x0018DB;
924 							case 0x000E1B: return 0x001935;
925 							case 0x000E17: return 0x00191D;
926 							case 0x000E21: return 0x001959;
927 							}
928 
929 							*w = 1;
930 							return 0x0019B0;
931 						}
932 					}
933 					else { /* weight > state_000E44 */
934 						if (weight == state_00AAB5) {
935 							switch (u) {
936 							case 0x00AAA8: return 0x001B68;
937 							case 0x00AA9F: return 0x001B32;
938 							case 0x00AA93: return 0x001AEA;
939 							case 0x00AAAA: return 0x001B74;
940 							case 0x00AAA7: return 0x001B62;
941 							case 0x00AA82: return 0x001A84;
942 							case 0x00AA8F: return 0x001AD2;
943 							case 0x00AA97: return 0x001B02;
944 							case 0x00AAAE: return 0x001B8C;
945 							case 0x00AA9C: return 0x001B20;
946 							case 0x00AAA0: return 0x001B38;
947 							case 0x00AA8B: return 0x001ABA;
948 							case 0x00AAA9: return 0x001B6E;
949 							case 0x00AA90: return 0x001AD8;
950 							case 0x00AAA4: return 0x001B50;
951 							case 0x00AA85: return 0x001A96;
952 							case 0x00AA94: return 0x001AF0;
953 							case 0x00AAAB: return 0x001B7A;
954 							case 0x00AA81: return 0x001A7E;
955 							case 0x00AAA1: return 0x001B3E;
956 							case 0x00AA8E: return 0x001ACC;
957 							case 0x00AA98: return 0x001B08;
958 							case 0x00AAAF: return 0x001B92;
959 							case 0x00AA9D: return 0x001B26;
960 							case 0x00AA91: return 0x001ADE;
961 							case 0x00AAA5: return 0x001B56;
962 							case 0x00AA8A: return 0x001AB4;
963 							case 0x00AA84: return 0x001A90;
964 							case 0x00AA95: return 0x001AF6;
965 							case 0x00AA89: return 0x001AAE;
966 							case 0x00AAAC: return 0x001B80;
967 							case 0x00AA9A: return 0x001B14;
968 							case 0x00AA80: return 0x001A78;
969 							case 0x00AA8D: return 0x001AC6;
970 							case 0x00AA99: return 0x001B0E;
971 							case 0x00AA9E: return 0x001B2C;
972 							case 0x00AAA2: return 0x001B44;
973 							case 0x00AA87: return 0x001AA2;
974 							case 0x00AA92: return 0x001AE4;
975 							case 0x00AA88: return 0x001AA8;
976 							case 0x00AAA6: return 0x001B5C;
977 							case 0x00AA83: return 0x001A8A;
978 							case 0x00AA96: return 0x001AFC;
979 							case 0x00AAAD: return 0x001B86;
980 							case 0x00AA9B: return 0x001B1A;
981 							case 0x00AAA3: return 0x001B4A;
982 							case 0x00AA8C: return 0x001AC0;
983 							case 0x00AA86: return 0x001A9C;
984 							}
985 
986 							*w = 1;
987 							return 0x001B98;
988 						}
989 					}
990 				}
991 			}
992 			else { /* weight > state_00AAB6 */
993 				if (weight == state_000EC2) {
994 					switch (u) {
995 					case 0x000E82: return 0x0019C2;
996 					case 0x000E9B: return 0x001A16;
997 					case 0x000EDD: return 0x001A5E;
998 					case 0x000EAD: return 0x001A64;
999 					case 0x000E9F: return 0x001A2E;
1000 					case 0x000EAA: return 0x0019DA;
1001 					case 0x000E81: return 0x0019BC;
1002 					case 0x000E9C: return 0x001A1C;
1003 					case 0x000E94: return 0x0019F2;
1004 					case 0x000EDC: return 0x001A58;
1005 					case 0x000EAE: return 0x001A6A;
1006 					case 0x000EA1: return 0x001A34;
1007 					case 0x000E84: return 0x0019C8;
1008 					case 0x000EA5: return 0x001A46;
1009 					case 0x000EAB: return 0x001A52;
1010 					case 0x000E95: return 0x0019F8;
1011 					case 0x000EA2: return 0x001A3A;
1012 					case 0x000E99: return 0x001A0A;
1013 					case 0x000E8A: return 0x0019E0;
1014 					case 0x000EDF: return 0x0019E6;
1015 					case 0x000E88: return 0x0019D4;
1016 					case 0x000E9D: return 0x001A22;
1017 					case 0x000E87: return 0x0019CE;
1018 					case 0x000E96: return 0x0019FE;
1019 					case 0x000E8D: return 0x0019EC;
1020 					case 0x000E9A: return 0x001A10;
1021 					case 0x000EA3: return 0x001A40;
1022 					case 0x000EDE: return 0x0019B6;
1023 					case 0x000E9E: return 0x001A28;
1024 					case 0x000EA7: return 0x001A4C;
1025 					case 0x000E97: return 0x001A04;
1026 					}
1027 
1028 					*w = 1;
1029 					return 0x001A74;
1030 				}
1031 				else if (weight < state_000EC2) {
1032 					if (weight == state_000EC0) {
1033 						switch (u) {
1034 						case 0x000E84: return 0x0019C6;
1035 						case 0x000E9D: return 0x001A20;
1036 						case 0x000E8A: return 0x0019DE;
1037 						case 0x000EAB: return 0x001A50;
1038 						case 0x000E88: return 0x0019D2;
1039 						case 0x000E99: return 0x001A08;
1040 						case 0x000E96: return 0x0019FC;
1041 						case 0x000EA2: return 0x001A38;
1042 						case 0x000E87: return 0x0019CC;
1043 						case 0x000E9E: return 0x001A26;
1044 						case 0x000EDE: return 0x0019B4;
1045 						case 0x000E9A: return 0x001A0E;
1046 						case 0x000EA7: return 0x001A4A;
1047 						case 0x000E82: return 0x0019C0;
1048 						case 0x000E8D: return 0x0019EA;
1049 						case 0x000E97: return 0x001A02;
1050 						case 0x000EA3: return 0x001A3E;
1051 						case 0x000EAD: return 0x001A62;
1052 						case 0x000EDD: return 0x001A5C;
1053 						case 0x000E9F: return 0x001A2C;
1054 						case 0x000E94: return 0x0019F0;
1055 						case 0x000E9B: return 0x001A14;
1056 						case 0x000EAE: return 0x001A68;
1057 						case 0x000E81: return 0x0019BA;
1058 						case 0x000EAA: return 0x0019D8;
1059 						case 0x000EA5: return 0x001A44;
1060 						case 0x000EDC: return 0x001A56;
1061 						case 0x000E95: return 0x0019F6;
1062 						case 0x000E9C: return 0x001A1A;
1063 						case 0x000EA1: return 0x001A32;
1064 						case 0x000EDF: return 0x0019E4;
1065 						}
1066 
1067 						*w = 1;
1068 						return 0x001A72;
1069 					}
1070 					else if (weight < state_000EC0) {
1071 						if (weight == state_000EC1) {
1072 							switch (u) {
1073 							case 0x000EAD: return 0x001A63;
1074 							case 0x000E97: return 0x001A03;
1075 							case 0x000EA1: return 0x001A33;
1076 							case 0x000E9C: return 0x001A1B;
1077 							case 0x000E82: return 0x0019C1;
1078 							case 0x000EDE: return 0x0019B5;
1079 							case 0x000EA5: return 0x001A45;
1080 							case 0x000E87: return 0x0019CD;
1081 							case 0x000E96: return 0x0019FD;
1082 							case 0x000E9B: return 0x001A15;
1083 							case 0x000E99: return 0x001A09;
1084 							case 0x000E88: return 0x0019D3;
1085 							case 0x000EAB: return 0x001A51;
1086 							case 0x000E9F: return 0x001A2D;
1087 							case 0x000E84: return 0x0019C7;
1088 							case 0x000EDF: return 0x0019E5;
1089 							case 0x000EA3: return 0x001A3F;
1090 							case 0x000E8D: return 0x0019EB;
1091 							case 0x000E95: return 0x0019F7;
1092 							case 0x000EDC: return 0x001A57;
1093 							case 0x000EA7: return 0x001A4B;
1094 							case 0x000E9A: return 0x001A0F;
1095 							case 0x000EAA: return 0x0019D9;
1096 							case 0x000E9E: return 0x001A27;
1097 							case 0x000EA2: return 0x001A39;
1098 							case 0x000E81: return 0x0019BB;
1099 							case 0x000EAE: return 0x001A69;
1100 							case 0x000E94: return 0x0019F1;
1101 							case 0x000E8A: return 0x0019DF;
1102 							case 0x000EDD: return 0x001A5D;
1103 							case 0x000E9D: return 0x001A21;
1104 							}
1105 
1106 							*w = 1;
1107 							return 0x001A73;
1108 						}
1109 					}
1110 					else { /* weight > state_000EC0 */
1111 						if (weight == state_000EC3) {
1112 							switch (u) {
1113 							case 0x000E96: return 0x0019FF;
1114 							case 0x000EAE: return 0x001A6B;
1115 							case 0x000E9C: return 0x001A1D;
1116 							case 0x000EA1: return 0x001A35;
1117 							case 0x000EDE: return 0x0019B7;
1118 							case 0x000EA5: return 0x001A47;
1119 							case 0x000E84: return 0x0019C9;
1120 							case 0x000E95: return 0x0019F9;
1121 							case 0x000EAD: return 0x001A65;
1122 							case 0x000E9B: return 0x001A17;
1123 							case 0x000E99: return 0x001A0B;
1124 							case 0x000EDF: return 0x0019E7;
1125 							case 0x000E9F: return 0x001A2F;
1126 							case 0x000E94: return 0x0019F3;
1127 							case 0x000E88: return 0x0019D5;
1128 							case 0x000EDC: return 0x001A59;
1129 							case 0x000E81: return 0x0019BD;
1130 							case 0x000E9A: return 0x001A11;
1131 							case 0x000E8D: return 0x0019ED;
1132 							case 0x000E9E: return 0x001A29;
1133 							case 0x000EA3: return 0x001A41;
1134 							case 0x000EA7: return 0x001A4D;
1135 							case 0x000EAB: return 0x001A53;
1136 							case 0x000E82: return 0x0019C3;
1137 							case 0x000E97: return 0x001A05;
1138 							case 0x000E9D: return 0x001A23;
1139 							case 0x000EA2: return 0x001A3B;
1140 							case 0x000E87: return 0x0019CF;
1141 							case 0x000E8A: return 0x0019E1;
1142 							case 0x000EDD: return 0x001A5F;
1143 							case 0x000EAA: return 0x0019DB;
1144 							}
1145 
1146 							*w = 1;
1147 							return 0x001A75;
1148 						}
1149 					}
1150 				}
1151 				else { /* weight > state_000EC2 */
1152 					if (weight == state_001B0B) {
1153 						switch (u) {
1154 						case 0x001B35: return 0x001FCE;
1155 						}
1156 
1157 						*w = 1;
1158 						return 0x001FCD;
1159 					}
1160 					else if (weight < state_001B0B) {
1161 						if (weight == state_000EC4) {
1162 							switch (u) {
1163 							case 0x000EDD: return 0x001A60;
1164 							case 0x000E9F: return 0x001A30;
1165 							case 0x000EAA: return 0x0019DC;
1166 							case 0x000EA7: return 0x001A4E;
1167 							case 0x000E82: return 0x0019C4;
1168 							case 0x000E97: return 0x001A06;
1169 							case 0x000EDC: return 0x001A5A;
1170 							case 0x000EAE: return 0x001A6C;
1171 							case 0x000E9C: return 0x001A1E;
1172 							case 0x000E94: return 0x0019F4;
1173 							case 0x000EAB: return 0x001A54;
1174 							case 0x000E81: return 0x0019BE;
1175 							case 0x000EA1: return 0x001A36;
1176 							case 0x000EDF: return 0x0019E8;
1177 							case 0x000E9D: return 0x001A24;
1178 							case 0x000EA5: return 0x001A48;
1179 							case 0x000E8A: return 0x0019E2;
1180 							case 0x000E84: return 0x0019CA;
1181 							case 0x000E95: return 0x0019FA;
1182 							case 0x000E9A: return 0x001A12;
1183 							case 0x000E8D: return 0x0019EE;
1184 							case 0x000E99: return 0x001A0C;
1185 							case 0x000E9E: return 0x001A2A;
1186 							case 0x000EA2: return 0x001A3C;
1187 							case 0x000E87: return 0x0019D0;
1188 							case 0x000EDE: return 0x0019B8;
1189 							case 0x000E88: return 0x0019D6;
1190 							case 0x000E96: return 0x001A00;
1191 							case 0x000EAD: return 0x001A66;
1192 							case 0x000E9B: return 0x001A18;
1193 							case 0x000EA3: return 0x001A42;
1194 							}
1195 
1196 							*w = 1;
1197 							return 0x001A76;
1198 						}
1199 					}
1200 					else { /* weight > state_001B0B */
1201 						if (weight == state_001B11) {
1202 							switch (u) {
1203 							case 0x001B35: return 0x001FD4;
1204 							}
1205 
1206 							*w = 1;
1207 							return 0x001FD3;
1208 						}
1209 					}
1210 				}
1211 			}
1212 		}
1213 	}
1214 
1215 	return 0;
1216 }
1217