gpollableutils: utility functions for pollable stream implementations
[platform/upstream/glib.git] / glib / gmirroringtable.h
1 /* gmirroringtable.h
2  * generated by gen-mirroring-tab 
3  * from the file BidiMirroring.txt of */
4
5 #define PACKTAB_UINT8 guint8
6 #define PACKTAB_UINT16 guint16
7 #define PACKTAB_UINT32 guint32
8
9 /*
10   generated by packtab.c version 3
11
12   use GLIB_GET_MIRRORING_DELTA(key) to access your table
13
14   assumed sizeof(gint16): 2
15   required memory: 1008
16   lookups: 4
17   partition shape: Mir[256][16][4][4]
18   different table entries: 1 14 56 38
19 */
20
21 /* *INDENT-OFF* */
22
23 static const gint16 MirLev3[4*38] = {
24 #define MirLev3_0000 0x0
25   0,0,0,0,
26 #define MirLev3_0028 0x4
27   1,-1,0,0,
28 #define MirLev3_003C 0x8
29   2,0,-2,0,
30 #define MirLev3_0058 0xC
31   0,0,0,2,
32 #define MirLev3_005C 0x10
33   0,-2,0,0,
34 #define MirLev3_00A8 0x14
35   0,0,0,16,
36 #define MirLev3_00B8 0x18
37   0,0,0,-16,
38 #define MirLev3_0F38 0x1C
39   0,0,1,-1,
40 #define MirLev3_1698 0x20
41   0,0,0,1,
42 #define MirLev3_169C 0x24
43   -1,0,0,0,
44 #define MirLev3_2038 0x28
45   0,1,-1,0,
46 #define MirLev3_2208 0x2C
47   3,3,3,-3,
48 #define MirLev3_220C 0x30
49   -3,-3,0,0,
50 #define MirLev3_2214 0x34
51   0,2016,0,0,
52 #define MirLev3_2240 0x38
53   0,0,0,138,
54 #define MirLev3_2264 0x3C
55   1,-1,1,-1,
56 #define MirLev3_2290 0x40
57   -1,1,-1,0,
58 #define MirLev3_2298 0x44
59   1824,0,0,0,
60 #define MirLev3_22A4 0x48
61   0,0,2104,0,
62 #define MirLev3_22A8 0x4C
63   2108,2106,0,2106,
64 #define MirLev3_22C8 0x50
65   0,1,-1,1,
66 #define MirLev3_22CC 0x54
67   -1,-138,0,0,
68 #define MirLev3_22F0 0x58
69   1,-1,8,8,
70 #define MirLev3_22F4 0x5C
71   8,0,7,7,
72 #define MirLev3_22F8 0x60
73   0,0,-8,-8,
74 #define MirLev3_22FC 0x64
75   -8,-7,-7,0,
76 #define MirLev3_2984 0x68
77   -1,1,-1,1,
78 #define MirLev3_298C 0x6C
79   -1,3,1,-1,
80 #define MirLev3_2990 0x70
81   -3,1,-1,1,
82 #define MirLev3_29B8 0x74
83   -1824,0,0,0,
84 #define MirLev3_29F4 0x78
85   0,-2016,0,0,
86 #define MirLev3_2AAC 0x7C
87   1,-1,0,1,
88 #define MirLev3_2AB0 0x80
89   -1,0,0,1,
90 #define MirLev3_2ADC 0x84
91   0,0,-2104,0,
92 #define MirLev3_2AE0 0x88
93   0,0,0,-2106,
94 #define MirLev3_2AE4 0x8C
95   -2108,-2106,0,0,
96 #define MirLev3_FF5C 0x90
97   0,-2,0,1,
98 #define MirLev3_FF60 0x94
99   -1,0,1,-1,
100 };
101
102 static const PACKTAB_UINT8 MirLev2[4*56] = {
103 #define MirLev2_0000 0x0
104   MirLev3_0000,  /* 0000..0003 */
105   MirLev3_0000,  /* 0004..0007 */
106   MirLev3_0000,  /* 0008..000B */
107   MirLev3_0000,  /* 000C..000F */
108 #define MirLev2_0020 0x4
109   MirLev3_0000,  /* 0020..0023 */
110   MirLev3_0000,  /* 0024..0027 */
111   MirLev3_0028,  /* 0028..002B */
112   MirLev3_0000,  /* 002C..002F */
113 #define MirLev2_0030 0x8
114   MirLev3_0000,  /* 0030..0033 */
115   MirLev3_0000,  /* 0034..0037 */
116   MirLev3_0000,  /* 0038..003B */
117   MirLev3_003C,  /* 003C..003F */
118 #define MirLev2_0050 0xC
119   MirLev3_0000,  /* 0050..0053 */
120   MirLev3_0000,  /* 0054..0057 */
121   MirLev3_0058,  /* 0058..005B */
122   MirLev3_005C,  /* 005C..005F */
123 #define MirLev2_00A0 0x10
124   MirLev3_0000,  /* 00A0..00A3 */
125   MirLev3_0000,  /* 00A4..00A7 */
126   MirLev3_00A8,  /* 00A8..00AB */
127   MirLev3_0000,  /* 00AC..00AF */
128 #define MirLev2_00B0 0x14
129   MirLev3_0000,  /* 00B0..00B3 */
130   MirLev3_0000,  /* 00B4..00B7 */
131   MirLev3_00B8,  /* 00B8..00BB */
132   MirLev3_0000,  /* 00BC..00BF */
133 #define MirLev2_0F30 0x18
134   MirLev3_0000,  /* 0F30..0F33 */
135   MirLev3_0000,  /* 0F34..0F37 */
136   MirLev3_0F38,  /* 0F38..0F3B */
137   MirLev3_0028,  /* 0F3C..0F3F */
138 #define MirLev2_1690 0x1C
139   MirLev3_0000,  /* 1690..1693 */
140   MirLev3_0000,  /* 1694..1697 */
141   MirLev3_1698,  /* 1698..169B */
142   MirLev3_169C,  /* 169C..169F */
143 #define MirLev2_2030 0x20
144   MirLev3_0000,  /* 2030..2033 */
145   MirLev3_0000,  /* 2034..2037 */
146   MirLev3_2038,  /* 2038..203B */
147   MirLev3_0000,  /* 203C..203F */
148 #define MirLev2_2040 0x24
149   MirLev3_0000,  /* 2040..2043 */
150   MirLev3_2038,  /* 2044..2047 */
151   MirLev3_0000,  /* 2048..204B */
152   MirLev3_0000,  /* 204C..204F */
153 #define MirLev2_2070 0x28
154   MirLev3_0000,  /* 2070..2073 */
155   MirLev3_0000,  /* 2074..2077 */
156   MirLev3_0000,  /* 2078..207B */
157   MirLev3_2038,  /* 207C..207F */
158 #define MirLev2_2200 0x2C
159   MirLev3_0000,  /* 2200..2203 */
160   MirLev3_0000,  /* 2204..2207 */
161   MirLev3_2208,  /* 2208..220B */
162   MirLev3_220C,  /* 220C..220F */
163 #define MirLev2_2210 0x30
164   MirLev3_0000,  /* 2210..2213 */
165   MirLev3_2214,  /* 2214..2217 */
166   MirLev3_0000,  /* 2218..221B */
167   MirLev3_0000,  /* 221C..221F */
168 #define MirLev2_2230 0x34
169   MirLev3_0000,  /* 2230..2233 */
170   MirLev3_0000,  /* 2234..2237 */
171   MirLev3_0000,  /* 2238..223B */
172   MirLev3_0028,  /* 223C..223F */
173 #define MirLev2_2240 0x38
174   MirLev3_2240,  /* 2240..2243 */
175   MirLev3_0000,  /* 2244..2247 */
176   MirLev3_0000,  /* 2248..224B */
177   MirLev3_0000,  /* 224C..224F */
178 #define MirLev2_2250 0x3C
179   MirLev3_0F38,  /* 2250..2253 */
180   MirLev3_0028,  /* 2254..2257 */
181   MirLev3_0000,  /* 2258..225B */
182   MirLev3_0000,  /* 225C..225F */
183 #define MirLev2_2260 0x40
184   MirLev3_0000,  /* 2260..2263 */
185   MirLev3_2264,  /* 2264..2267 */
186   MirLev3_2264,  /* 2268..226B */
187   MirLev3_0F38,  /* 226C..226F */
188 #define MirLev2_2270 0x44
189   MirLev3_2264,  /* 2270..2273 */
190   MirLev3_2264,  /* 2274..2277 */
191   MirLev3_2264,  /* 2278..227B */
192   MirLev3_2264,  /* 227C..227F */
193 #define MirLev2_2280 0x48
194   MirLev3_2264,  /* 2280..2283 */
195   MirLev3_2264,  /* 2284..2287 */
196   MirLev3_2264,  /* 2288..228B */
197   MirLev3_1698,  /* 228C..228F */
198 #define MirLev2_2290 0x4C
199   MirLev3_2290,  /* 2290..2293 */
200   MirLev3_0000,  /* 2294..2297 */
201   MirLev3_2298,  /* 2298..229B */
202   MirLev3_0000,  /* 229C..229F */
203 #define MirLev2_22A0 0x50
204   MirLev3_0F38,  /* 22A0..22A3 */
205   MirLev3_22A4,  /* 22A4..22A7 */
206   MirLev3_22A8,  /* 22A8..22AB */
207   MirLev3_0000,  /* 22AC..22AF */
208 #define MirLev2_22B0 0x54
209   MirLev3_2264,  /* 22B0..22B3 */
210   MirLev3_2264,  /* 22B4..22B7 */
211   MirLev3_0000,  /* 22B8..22BB */
212   MirLev3_0000,  /* 22BC..22BF */
213 #define MirLev2_22C0 0x58
214   MirLev3_0000,  /* 22C0..22C3 */
215   MirLev3_0000,  /* 22C4..22C7 */
216   MirLev3_22C8,  /* 22C8..22CB */
217   MirLev3_22CC,  /* 22CC..22CF */
218 #define MirLev2_22D0 0x5C
219   MirLev3_0028,  /* 22D0..22D3 */
220   MirLev3_0F38,  /* 22D4..22D7 */
221   MirLev3_2264,  /* 22D8..22DB */
222   MirLev3_2264,  /* 22DC..22DF */
223 #define MirLev2_22E0 0x60
224   MirLev3_2264,  /* 22E0..22E3 */
225   MirLev3_2264,  /* 22E4..22E7 */
226   MirLev3_2264,  /* 22E8..22EB */
227   MirLev3_0028,  /* 22EC..22EF */
228 #define MirLev2_22F0 0x64
229   MirLev3_22F0,  /* 22F0..22F3 */
230   MirLev3_22F4,  /* 22F4..22F7 */
231   MirLev3_22F8,  /* 22F8..22FB */
232   MirLev3_22FC,  /* 22FC..22FF */
233 #define MirLev2_2300 0x68
234   MirLev3_0000,  /* 2300..2303 */
235   MirLev3_0000,  /* 2304..2307 */
236   MirLev3_2264,  /* 2308..230B */
237   MirLev3_0000,  /* 230C..230F */
238 #define MirLev2_2760 0x6C
239   MirLev3_0000,  /* 2760..2763 */
240   MirLev3_0000,  /* 2764..2767 */
241   MirLev3_2264,  /* 2768..276B */
242   MirLev3_2264,  /* 276C..276F */
243 #define MirLev2_2770 0x70
244   MirLev3_2264,  /* 2770..2773 */
245   MirLev3_0028,  /* 2774..2777 */
246   MirLev3_0000,  /* 2778..277B */
247   MirLev3_0000,  /* 277C..277F */
248 #define MirLev2_27C0 0x74
249   MirLev3_1698,  /* 27C0..27C3 */
250   MirLev3_2290,  /* 27C4..27C7 */
251   MirLev3_0028,  /* 27C8..27CB */
252   MirLev3_0000,  /* 27CC..27CF */
253 #define MirLev2_27D0 0x78
254   MirLev3_0000,  /* 27D0..27D3 */
255   MirLev3_2038,  /* 27D4..27D7 */
256   MirLev3_0000,  /* 27D8..27DB */
257   MirLev3_2038,  /* 27DC..27DF */
258 #define MirLev2_27E0 0x7C
259   MirLev3_0F38,  /* 27E0..27E3 */
260   MirLev3_2264,  /* 27E4..27E7 */
261   MirLev3_2264,  /* 27E8..27EB */
262   MirLev3_2264,  /* 27EC..27EF */
263 #define MirLev2_2980 0x80
264   MirLev3_1698,  /* 2980..2983 */
265   MirLev3_2984,  /* 2984..2987 */
266   MirLev3_2984,  /* 2988..298B */
267   MirLev3_298C,  /* 298C..298F */
268 #define MirLev2_2990 0x84
269   MirLev3_2990,  /* 2990..2993 */
270   MirLev3_2984,  /* 2994..2997 */
271   MirLev3_169C,  /* 2998..299B */
272   MirLev3_0000,  /* 299C..299F */
273 #define MirLev2_29B0 0x88
274   MirLev3_0000,  /* 29B0..29B3 */
275   MirLev3_0000,  /* 29B4..29B7 */
276   MirLev3_29B8,  /* 29B8..29BB */
277   MirLev3_0000,  /* 29BC..29BF */
278 #define MirLev2_29C0 0x8C
279   MirLev3_0028,  /* 29C0..29C3 */
280   MirLev3_0028,  /* 29C4..29C7 */
281   MirLev3_0000,  /* 29C8..29CB */
282   MirLev3_1698,  /* 29CC..29CF */
283 #define MirLev2_29D0 0x90
284   MirLev3_2290,  /* 29D0..29D3 */
285   MirLev3_0028,  /* 29D4..29D7 */
286   MirLev3_2264,  /* 29D8..29DB */
287   MirLev3_0000,  /* 29DC..29DF */
288 #define MirLev2_29F0 0x94
289   MirLev3_0000,  /* 29F0..29F3 */
290   MirLev3_29F4,  /* 29F4..29F7 */
291   MirLev3_0028,  /* 29F8..29FB */
292   MirLev3_0028,  /* 29FC..29FF */
293 #define MirLev2_2A20 0x98
294   MirLev3_0000,  /* 2A20..2A23 */
295   MirLev3_0000,  /* 2A24..2A27 */
296   MirLev3_1698,  /* 2A28..2A2B */
297   MirLev3_2290,  /* 2A2C..2A2F */
298 #define MirLev2_2A30 0x9C
299   MirLev3_0000,  /* 2A30..2A33 */
300   MirLev3_0028,  /* 2A34..2A37 */
301   MirLev3_0000,  /* 2A38..2A3B */
302   MirLev3_0028,  /* 2A3C..2A3F */
303 #define MirLev2_2A60 0xA0
304   MirLev3_0000,  /* 2A60..2A63 */
305   MirLev3_0028,  /* 2A64..2A67 */
306   MirLev3_0000,  /* 2A68..2A6B */
307   MirLev3_0000,  /* 2A6C..2A6F */
308 #define MirLev2_2A70 0xA4
309   MirLev3_0000,  /* 2A70..2A73 */
310   MirLev3_0000,  /* 2A74..2A77 */
311   MirLev3_2038,  /* 2A78..2A7B */
312   MirLev3_22C8,  /* 2A7C..2A7F */
313 #define MirLev2_2A80 0xA8
314   MirLev3_2984,  /* 2A80..2A83 */
315   MirLev3_169C,  /* 2A84..2A87 */
316   MirLev3_1698,  /* 2A88..2A8B */
317   MirLev3_169C,  /* 2A8C..2A8F */
318 #define MirLev2_2A90 0xAC
319   MirLev3_22C8,  /* 2A90..2A93 */
320   MirLev3_2984,  /* 2A94..2A97 */
321   MirLev3_2984,  /* 2A98..2A9B */
322   MirLev3_169C,  /* 2A9C..2A9F */
323 #define MirLev2_2AA0 0xB0
324   MirLev3_2038,  /* 2AA0..2AA3 */
325   MirLev3_0F38,  /* 2AA4..2AA7 */
326   MirLev3_2264,  /* 2AA8..2AAB */
327   MirLev3_2AAC,  /* 2AAC..2AAF */
328 #define MirLev2_2AB0 0xB4
329   MirLev3_2AB0,  /* 2AB0..2AB3 */
330   MirLev3_169C,  /* 2AB4..2AB7 */
331   MirLev3_1698,  /* 2AB8..2ABB */
332   MirLev3_2984,  /* 2ABC..2ABF */
333 #define MirLev2_2AC0 0xB8
334   MirLev3_2984,  /* 2AC0..2AC3 */
335   MirLev3_2290,  /* 2AC4..2AC7 */
336   MirLev3_0000,  /* 2AC8..2ACB */
337   MirLev3_22C8,  /* 2ACC..2ACF */
338 #define MirLev2_2AD0 0xBC
339   MirLev3_2984,  /* 2AD0..2AD3 */
340   MirLev3_2290,  /* 2AD4..2AD7 */
341   MirLev3_0000,  /* 2AD8..2ADB */
342   MirLev3_2ADC,  /* 2ADC..2ADF */
343 #define MirLev2_2AE0 0xC0
344   MirLev3_2AE0,  /* 2AE0..2AE3 */
345   MirLev3_2AE4,  /* 2AE4..2AE7 */
346   MirLev3_0000,  /* 2AE8..2AEB */
347   MirLev3_0028,  /* 2AEC..2AEF */
348 #define MirLev2_2AF0 0xC4
349   MirLev3_0000,  /* 2AF0..2AF3 */
350   MirLev3_1698,  /* 2AF4..2AF7 */
351   MirLev3_2290,  /* 2AF8..2AFB */
352   MirLev3_0000,  /* 2AFC..2AFF */
353 #define MirLev2_2E00 0xC8
354   MirLev3_0F38,  /* 2E00..2E03 */
355   MirLev3_0028,  /* 2E04..2E07 */
356   MirLev3_2038,  /* 2E08..2E0B */
357   MirLev3_0028,  /* 2E0C..2E0F */
358 #define MirLev2_2E20 0xCC
359   MirLev3_2264,  /* 2E20..2E23 */
360   MirLev3_2264,  /* 2E24..2E27 */
361   MirLev3_0028,  /* 2E28..2E2B */
362   MirLev3_0000,  /* 2E2C..2E2F */
363 #define MirLev2_3010 0xD0
364   MirLev3_0028,  /* 3010..3013 */
365   MirLev3_2264,  /* 3014..3017 */
366   MirLev3_2264,  /* 3018..301B */
367   MirLev3_0000,  /* 301C..301F */
368 #define MirLev2_FE50 0xD4
369   MirLev3_0000,  /* FE50..FE53 */
370   MirLev3_0000,  /* FE54..FE57 */
371   MirLev3_22C8,  /* FE58..FE5B */
372   MirLev3_2290,  /* FE5C..FE5F */
373 #define MirLev2_FF50 0xD8
374   MirLev3_0000,  /* FF50..FF53 */
375   MirLev3_0000,  /* FF54..FF57 */
376   MirLev3_0058,  /* FF58..FF5B */
377   MirLev3_FF5C,  /* FF5C..FF5F */
378 #define MirLev2_FF60 0xDC
379   MirLev3_FF60,  /* FF60..FF63 */
380   MirLev3_0000,  /* FF64..FF67 */
381   MirLev3_0000,  /* FF68..FF6B */
382   MirLev3_0000,  /* FF6C..FF6F */
383 };
384
385 static const PACKTAB_UINT8 MirLev1[16*14] = {
386 #define MirLev1_0000 0x0
387   MirLev2_0000,  /* 0000..000F */
388   MirLev2_0000,  /* 0010..001F */
389   MirLev2_0020,  /* 0020..002F */
390   MirLev2_0030,  /* 0030..003F */
391   MirLev2_0000,  /* 0040..004F */
392   MirLev2_0050,  /* 0050..005F */
393   MirLev2_0000,  /* 0060..006F */
394   MirLev2_0050,  /* 0070..007F */
395   MirLev2_0000,  /* 0080..008F */
396   MirLev2_0000,  /* 0090..009F */
397   MirLev2_00A0,  /* 00A0..00AF */
398   MirLev2_00B0,  /* 00B0..00BF */
399   MirLev2_0000,  /* 00C0..00CF */
400   MirLev2_0000,  /* 00D0..00DF */
401   MirLev2_0000,  /* 00E0..00EF */
402   MirLev2_0000,  /* 00F0..00FF */
403 #define MirLev1_0100 0x10
404   MirLev2_0000,  /* 0100..010F */
405   MirLev2_0000,  /* 0110..011F */
406   MirLev2_0000,  /* 0120..012F */
407   MirLev2_0000,  /* 0130..013F */
408   MirLev2_0000,  /* 0140..014F */
409   MirLev2_0000,  /* 0150..015F */
410   MirLev2_0000,  /* 0160..016F */
411   MirLev2_0000,  /* 0170..017F */
412   MirLev2_0000,  /* 0180..018F */
413   MirLev2_0000,  /* 0190..019F */
414   MirLev2_0000,  /* 01A0..01AF */
415   MirLev2_0000,  /* 01B0..01BF */
416   MirLev2_0000,  /* 01C0..01CF */
417   MirLev2_0000,  /* 01D0..01DF */
418   MirLev2_0000,  /* 01E0..01EF */
419   MirLev2_0000,  /* 01F0..01FF */
420 #define MirLev1_0F00 0x20
421   MirLev2_0000,  /* 0F00..0F0F */
422   MirLev2_0000,  /* 0F10..0F1F */
423   MirLev2_0000,  /* 0F20..0F2F */
424   MirLev2_0F30,  /* 0F30..0F3F */
425   MirLev2_0000,  /* 0F40..0F4F */
426   MirLev2_0000,  /* 0F50..0F5F */
427   MirLev2_0000,  /* 0F60..0F6F */
428   MirLev2_0000,  /* 0F70..0F7F */
429   MirLev2_0000,  /* 0F80..0F8F */
430   MirLev2_0000,  /* 0F90..0F9F */
431   MirLev2_0000,  /* 0FA0..0FAF */
432   MirLev2_0000,  /* 0FB0..0FBF */
433   MirLev2_0000,  /* 0FC0..0FCF */
434   MirLev2_0000,  /* 0FD0..0FDF */
435   MirLev2_0000,  /* 0FE0..0FEF */
436   MirLev2_0000,  /* 0FF0..0FFF */
437 #define MirLev1_1600 0x30
438   MirLev2_0000,  /* 1600..160F */
439   MirLev2_0000,  /* 1610..161F */
440   MirLev2_0000,  /* 1620..162F */
441   MirLev2_0000,  /* 1630..163F */
442   MirLev2_0000,  /* 1640..164F */
443   MirLev2_0000,  /* 1650..165F */
444   MirLev2_0000,  /* 1660..166F */
445   MirLev2_0000,  /* 1670..167F */
446   MirLev2_0000,  /* 1680..168F */
447   MirLev2_1690,  /* 1690..169F */
448   MirLev2_0000,  /* 16A0..16AF */
449   MirLev2_0000,  /* 16B0..16BF */
450   MirLev2_0000,  /* 16C0..16CF */
451   MirLev2_0000,  /* 16D0..16DF */
452   MirLev2_0000,  /* 16E0..16EF */
453   MirLev2_0000,  /* 16F0..16FF */
454 #define MirLev1_2000 0x40
455   MirLev2_0000,  /* 2000..200F */
456   MirLev2_0000,  /* 2010..201F */
457   MirLev2_0000,  /* 2020..202F */
458   MirLev2_2030,  /* 2030..203F */
459   MirLev2_2040,  /* 2040..204F */
460   MirLev2_0000,  /* 2050..205F */
461   MirLev2_0000,  /* 2060..206F */
462   MirLev2_2070,  /* 2070..207F */
463   MirLev2_2070,  /* 2080..208F */
464   MirLev2_0000,  /* 2090..209F */
465   MirLev2_0000,  /* 20A0..20AF */
466   MirLev2_0000,  /* 20B0..20BF */
467   MirLev2_0000,  /* 20C0..20CF */
468   MirLev2_0000,  /* 20D0..20DF */
469   MirLev2_0000,  /* 20E0..20EF */
470   MirLev2_0000,  /* 20F0..20FF */
471 #define MirLev1_2200 0x50
472   MirLev2_2200,  /* 2200..220F */
473   MirLev2_2210,  /* 2210..221F */
474   MirLev2_0000,  /* 2220..222F */
475   MirLev2_2230,  /* 2230..223F */
476   MirLev2_2240,  /* 2240..224F */
477   MirLev2_2250,  /* 2250..225F */
478   MirLev2_2260,  /* 2260..226F */
479   MirLev2_2270,  /* 2270..227F */
480   MirLev2_2280,  /* 2280..228F */
481   MirLev2_2290,  /* 2290..229F */
482   MirLev2_22A0,  /* 22A0..22AF */
483   MirLev2_22B0,  /* 22B0..22BF */
484   MirLev2_22C0,  /* 22C0..22CF */
485   MirLev2_22D0,  /* 22D0..22DF */
486   MirLev2_22E0,  /* 22E0..22EF */
487   MirLev2_22F0,  /* 22F0..22FF */
488 #define MirLev1_2300 0x60
489   MirLev2_2300,  /* 2300..230F */
490   MirLev2_0000,  /* 2310..231F */
491   MirLev2_2030,  /* 2320..232F */
492   MirLev2_0000,  /* 2330..233F */
493   MirLev2_0000,  /* 2340..234F */
494   MirLev2_0000,  /* 2350..235F */
495   MirLev2_0000,  /* 2360..236F */
496   MirLev2_0000,  /* 2370..237F */
497   MirLev2_0000,  /* 2380..238F */
498   MirLev2_0000,  /* 2390..239F */
499   MirLev2_0000,  /* 23A0..23AF */
500   MirLev2_0000,  /* 23B0..23BF */
501   MirLev2_0000,  /* 23C0..23CF */
502   MirLev2_0000,  /* 23D0..23DF */
503   MirLev2_0000,  /* 23E0..23EF */
504   MirLev2_0000,  /* 23F0..23FF */
505 #define MirLev1_2700 0x70
506   MirLev2_0000,  /* 2700..270F */
507   MirLev2_0000,  /* 2710..271F */
508   MirLev2_0000,  /* 2720..272F */
509   MirLev2_0000,  /* 2730..273F */
510   MirLev2_0000,  /* 2740..274F */
511   MirLev2_0000,  /* 2750..275F */
512   MirLev2_2760,  /* 2760..276F */
513   MirLev2_2770,  /* 2770..277F */
514   MirLev2_0000,  /* 2780..278F */
515   MirLev2_0000,  /* 2790..279F */
516   MirLev2_0000,  /* 27A0..27AF */
517   MirLev2_0000,  /* 27B0..27BF */
518   MirLev2_27C0,  /* 27C0..27CF */
519   MirLev2_27D0,  /* 27D0..27DF */
520   MirLev2_27E0,  /* 27E0..27EF */
521   MirLev2_0000,  /* 27F0..27FF */
522 #define MirLev1_2900 0x80
523   MirLev2_0000,  /* 2900..290F */
524   MirLev2_0000,  /* 2910..291F */
525   MirLev2_0000,  /* 2920..292F */
526   MirLev2_0000,  /* 2930..293F */
527   MirLev2_0000,  /* 2940..294F */
528   MirLev2_0000,  /* 2950..295F */
529   MirLev2_0000,  /* 2960..296F */
530   MirLev2_0000,  /* 2970..297F */
531   MirLev2_2980,  /* 2980..298F */
532   MirLev2_2990,  /* 2990..299F */
533   MirLev2_0000,  /* 29A0..29AF */
534   MirLev2_29B0,  /* 29B0..29BF */
535   MirLev2_29C0,  /* 29C0..29CF */
536   MirLev2_29D0,  /* 29D0..29DF */
537   MirLev2_0000,  /* 29E0..29EF */
538   MirLev2_29F0,  /* 29F0..29FF */
539 #define MirLev1_2A00 0x90
540   MirLev2_0000,  /* 2A00..2A0F */
541   MirLev2_0000,  /* 2A10..2A1F */
542   MirLev2_2A20,  /* 2A20..2A2F */
543   MirLev2_2A30,  /* 2A30..2A3F */
544   MirLev2_0000,  /* 2A40..2A4F */
545   MirLev2_0000,  /* 2A50..2A5F */
546   MirLev2_2A60,  /* 2A60..2A6F */
547   MirLev2_2A70,  /* 2A70..2A7F */
548   MirLev2_2A80,  /* 2A80..2A8F */
549   MirLev2_2A90,  /* 2A90..2A9F */
550   MirLev2_2AA0,  /* 2AA0..2AAF */
551   MirLev2_2AB0,  /* 2AB0..2ABF */
552   MirLev2_2AC0,  /* 2AC0..2ACF */
553   MirLev2_2AD0,  /* 2AD0..2ADF */
554   MirLev2_2AE0,  /* 2AE0..2AEF */
555   MirLev2_2AF0,  /* 2AF0..2AFF */
556 #define MirLev1_2E00 0xA0
557   MirLev2_2E00,  /* 2E00..2E0F */
558   MirLev2_2230,  /* 2E10..2E1F */
559   MirLev2_2E20,  /* 2E20..2E2F */
560   MirLev2_0000,  /* 2E30..2E3F */
561   MirLev2_0000,  /* 2E40..2E4F */
562   MirLev2_0000,  /* 2E50..2E5F */
563   MirLev2_0000,  /* 2E60..2E6F */
564   MirLev2_0000,  /* 2E70..2E7F */
565   MirLev2_0000,  /* 2E80..2E8F */
566   MirLev2_0000,  /* 2E90..2E9F */
567   MirLev2_0000,  /* 2EA0..2EAF */
568   MirLev2_0000,  /* 2EB0..2EBF */
569   MirLev2_0000,  /* 2EC0..2ECF */
570   MirLev2_0000,  /* 2ED0..2EDF */
571   MirLev2_0000,  /* 2EE0..2EEF */
572   MirLev2_0000,  /* 2EF0..2EFF */
573 #define MirLev1_3000 0xB0
574   MirLev2_2760,  /* 3000..300F */
575   MirLev2_3010,  /* 3010..301F */
576   MirLev2_0000,  /* 3020..302F */
577   MirLev2_0000,  /* 3030..303F */
578   MirLev2_0000,  /* 3040..304F */
579   MirLev2_0000,  /* 3050..305F */
580   MirLev2_0000,  /* 3060..306F */
581   MirLev2_0000,  /* 3070..307F */
582   MirLev2_0000,  /* 3080..308F */
583   MirLev2_0000,  /* 3090..309F */
584   MirLev2_0000,  /* 30A0..30AF */
585   MirLev2_0000,  /* 30B0..30BF */
586   MirLev2_0000,  /* 30C0..30CF */
587   MirLev2_0000,  /* 30D0..30DF */
588   MirLev2_0000,  /* 30E0..30EF */
589   MirLev2_0000,  /* 30F0..30FF */
590 #define MirLev1_FE00 0xC0
591   MirLev2_0000,  /* FE00..FE0F */
592   MirLev2_0000,  /* FE10..FE1F */
593   MirLev2_0000,  /* FE20..FE2F */
594   MirLev2_0000,  /* FE30..FE3F */
595   MirLev2_0000,  /* FE40..FE4F */
596   MirLev2_FE50,  /* FE50..FE5F */
597   MirLev2_2A60,  /* FE60..FE6F */
598   MirLev2_0000,  /* FE70..FE7F */
599   MirLev2_0000,  /* FE80..FE8F */
600   MirLev2_0000,  /* FE90..FE9F */
601   MirLev2_0000,  /* FEA0..FEAF */
602   MirLev2_0000,  /* FEB0..FEBF */
603   MirLev2_0000,  /* FEC0..FECF */
604   MirLev2_0000,  /* FED0..FEDF */
605   MirLev2_0000,  /* FEE0..FEEF */
606   MirLev2_0000,  /* FEF0..FEFF */
607 #define MirLev1_FF00 0xD0
608   MirLev2_0020,  /* FF00..FF0F */
609   MirLev2_0030,  /* FF10..FF1F */
610   MirLev2_0000,  /* FF20..FF2F */
611   MirLev2_0050,  /* FF30..FF3F */
612   MirLev2_0000,  /* FF40..FF4F */
613   MirLev2_FF50,  /* FF50..FF5F */
614   MirLev2_FF60,  /* FF60..FF6F */
615   MirLev2_0000,  /* FF70..FF7F */
616   MirLev2_0000,  /* FF80..FF8F */
617   MirLev2_0000,  /* FF90..FF9F */
618   MirLev2_0000,  /* FFA0..FFAF */
619   MirLev2_0000,  /* FFB0..FFBF */
620   MirLev2_0000,  /* FFC0..FFCF */
621   MirLev2_0000,  /* FFD0..FFDF */
622   MirLev2_0000,  /* FFE0..FFEF */
623   MirLev2_0000,  /* FFF0..FFFF */
624 };
625
626 static const PACKTAB_UINT8 MirLev0[256*1] = {
627 #define MirLev0_0000 0x0
628   MirLev1_0000,  /* 0000..00FF */
629   MirLev1_0100,  /* 0100..01FF */
630   MirLev1_0100,  /* 0200..02FF */
631   MirLev1_0100,  /* 0300..03FF */
632   MirLev1_0100,  /* 0400..04FF */
633   MirLev1_0100,  /* 0500..05FF */
634   MirLev1_0100,  /* 0600..06FF */
635   MirLev1_0100,  /* 0700..07FF */
636   MirLev1_0100,  /* 0800..08FF */
637   MirLev1_0100,  /* 0900..09FF */
638   MirLev1_0100,  /* 0A00..0AFF */
639   MirLev1_0100,  /* 0B00..0BFF */
640   MirLev1_0100,  /* 0C00..0CFF */
641   MirLev1_0100,  /* 0D00..0DFF */
642   MirLev1_0100,  /* 0E00..0EFF */
643   MirLev1_0F00,  /* 0F00..0FFF */
644   MirLev1_0100,  /* 1000..10FF */
645   MirLev1_0100,  /* 1100..11FF */
646   MirLev1_0100,  /* 1200..12FF */
647   MirLev1_0100,  /* 1300..13FF */
648   MirLev1_0100,  /* 1400..14FF */
649   MirLev1_0100,  /* 1500..15FF */
650   MirLev1_1600,  /* 1600..16FF */
651   MirLev1_0100,  /* 1700..17FF */
652   MirLev1_0100,  /* 1800..18FF */
653   MirLev1_0100,  /* 1900..19FF */
654   MirLev1_0100,  /* 1A00..1AFF */
655   MirLev1_0100,  /* 1B00..1BFF */
656   MirLev1_0100,  /* 1C00..1CFF */
657   MirLev1_0100,  /* 1D00..1DFF */
658   MirLev1_0100,  /* 1E00..1EFF */
659   MirLev1_0100,  /* 1F00..1FFF */
660   MirLev1_2000,  /* 2000..20FF */
661   MirLev1_0100,  /* 2100..21FF */
662   MirLev1_2200,  /* 2200..22FF */
663   MirLev1_2300,  /* 2300..23FF */
664   MirLev1_0100,  /* 2400..24FF */
665   MirLev1_0100,  /* 2500..25FF */
666   MirLev1_0100,  /* 2600..26FF */
667   MirLev1_2700,  /* 2700..27FF */
668   MirLev1_0100,  /* 2800..28FF */
669   MirLev1_2900,  /* 2900..29FF */
670   MirLev1_2A00,  /* 2A00..2AFF */
671   MirLev1_0100,  /* 2B00..2BFF */
672   MirLev1_0100,  /* 2C00..2CFF */
673   MirLev1_0100,  /* 2D00..2DFF */
674   MirLev1_2E00,  /* 2E00..2EFF */
675   MirLev1_0100,  /* 2F00..2FFF */
676   MirLev1_3000,  /* 3000..30FF */
677   MirLev1_0100,  /* 3100..31FF */
678   MirLev1_0100,  /* 3200..32FF */
679   MirLev1_0100,  /* 3300..33FF */
680   MirLev1_0100,  /* 3400..34FF */
681   MirLev1_0100,  /* 3500..35FF */
682   MirLev1_0100,  /* 3600..36FF */
683   MirLev1_0100,  /* 3700..37FF */
684   MirLev1_0100,  /* 3800..38FF */
685   MirLev1_0100,  /* 3900..39FF */
686   MirLev1_0100,  /* 3A00..3AFF */
687   MirLev1_0100,  /* 3B00..3BFF */
688   MirLev1_0100,  /* 3C00..3CFF */
689   MirLev1_0100,  /* 3D00..3DFF */
690   MirLev1_0100,  /* 3E00..3EFF */
691   MirLev1_0100,  /* 3F00..3FFF */
692   MirLev1_0100,  /* 4000..40FF */
693   MirLev1_0100,  /* 4100..41FF */
694   MirLev1_0100,  /* 4200..42FF */
695   MirLev1_0100,  /* 4300..43FF */
696   MirLev1_0100,  /* 4400..44FF */
697   MirLev1_0100,  /* 4500..45FF */
698   MirLev1_0100,  /* 4600..46FF */
699   MirLev1_0100,  /* 4700..47FF */
700   MirLev1_0100,  /* 4800..48FF */
701   MirLev1_0100,  /* 4900..49FF */
702   MirLev1_0100,  /* 4A00..4AFF */
703   MirLev1_0100,  /* 4B00..4BFF */
704   MirLev1_0100,  /* 4C00..4CFF */
705   MirLev1_0100,  /* 4D00..4DFF */
706   MirLev1_0100,  /* 4E00..4EFF */
707   MirLev1_0100,  /* 4F00..4FFF */
708   MirLev1_0100,  /* 5000..50FF */
709   MirLev1_0100,  /* 5100..51FF */
710   MirLev1_0100,  /* 5200..52FF */
711   MirLev1_0100,  /* 5300..53FF */
712   MirLev1_0100,  /* 5400..54FF */
713   MirLev1_0100,  /* 5500..55FF */
714   MirLev1_0100,  /* 5600..56FF */
715   MirLev1_0100,  /* 5700..57FF */
716   MirLev1_0100,  /* 5800..58FF */
717   MirLev1_0100,  /* 5900..59FF */
718   MirLev1_0100,  /* 5A00..5AFF */
719   MirLev1_0100,  /* 5B00..5BFF */
720   MirLev1_0100,  /* 5C00..5CFF */
721   MirLev1_0100,  /* 5D00..5DFF */
722   MirLev1_0100,  /* 5E00..5EFF */
723   MirLev1_0100,  /* 5F00..5FFF */
724   MirLev1_0100,  /* 6000..60FF */
725   MirLev1_0100,  /* 6100..61FF */
726   MirLev1_0100,  /* 6200..62FF */
727   MirLev1_0100,  /* 6300..63FF */
728   MirLev1_0100,  /* 6400..64FF */
729   MirLev1_0100,  /* 6500..65FF */
730   MirLev1_0100,  /* 6600..66FF */
731   MirLev1_0100,  /* 6700..67FF */
732   MirLev1_0100,  /* 6800..68FF */
733   MirLev1_0100,  /* 6900..69FF */
734   MirLev1_0100,  /* 6A00..6AFF */
735   MirLev1_0100,  /* 6B00..6BFF */
736   MirLev1_0100,  /* 6C00..6CFF */
737   MirLev1_0100,  /* 6D00..6DFF */
738   MirLev1_0100,  /* 6E00..6EFF */
739   MirLev1_0100,  /* 6F00..6FFF */
740   MirLev1_0100,  /* 7000..70FF */
741   MirLev1_0100,  /* 7100..71FF */
742   MirLev1_0100,  /* 7200..72FF */
743   MirLev1_0100,  /* 7300..73FF */
744   MirLev1_0100,  /* 7400..74FF */
745   MirLev1_0100,  /* 7500..75FF */
746   MirLev1_0100,  /* 7600..76FF */
747   MirLev1_0100,  /* 7700..77FF */
748   MirLev1_0100,  /* 7800..78FF */
749   MirLev1_0100,  /* 7900..79FF */
750   MirLev1_0100,  /* 7A00..7AFF */
751   MirLev1_0100,  /* 7B00..7BFF */
752   MirLev1_0100,  /* 7C00..7CFF */
753   MirLev1_0100,  /* 7D00..7DFF */
754   MirLev1_0100,  /* 7E00..7EFF */
755   MirLev1_0100,  /* 7F00..7FFF */
756   MirLev1_0100,  /* 8000..80FF */
757   MirLev1_0100,  /* 8100..81FF */
758   MirLev1_0100,  /* 8200..82FF */
759   MirLev1_0100,  /* 8300..83FF */
760   MirLev1_0100,  /* 8400..84FF */
761   MirLev1_0100,  /* 8500..85FF */
762   MirLev1_0100,  /* 8600..86FF */
763   MirLev1_0100,  /* 8700..87FF */
764   MirLev1_0100,  /* 8800..88FF */
765   MirLev1_0100,  /* 8900..89FF */
766   MirLev1_0100,  /* 8A00..8AFF */
767   MirLev1_0100,  /* 8B00..8BFF */
768   MirLev1_0100,  /* 8C00..8CFF */
769   MirLev1_0100,  /* 8D00..8DFF */
770   MirLev1_0100,  /* 8E00..8EFF */
771   MirLev1_0100,  /* 8F00..8FFF */
772   MirLev1_0100,  /* 9000..90FF */
773   MirLev1_0100,  /* 9100..91FF */
774   MirLev1_0100,  /* 9200..92FF */
775   MirLev1_0100,  /* 9300..93FF */
776   MirLev1_0100,  /* 9400..94FF */
777   MirLev1_0100,  /* 9500..95FF */
778   MirLev1_0100,  /* 9600..96FF */
779   MirLev1_0100,  /* 9700..97FF */
780   MirLev1_0100,  /* 9800..98FF */
781   MirLev1_0100,  /* 9900..99FF */
782   MirLev1_0100,  /* 9A00..9AFF */
783   MirLev1_0100,  /* 9B00..9BFF */
784   MirLev1_0100,  /* 9C00..9CFF */
785   MirLev1_0100,  /* 9D00..9DFF */
786   MirLev1_0100,  /* 9E00..9EFF */
787   MirLev1_0100,  /* 9F00..9FFF */
788   MirLev1_0100,  /* A000..A0FF */
789   MirLev1_0100,  /* A100..A1FF */
790   MirLev1_0100,  /* A200..A2FF */
791   MirLev1_0100,  /* A300..A3FF */
792   MirLev1_0100,  /* A400..A4FF */
793   MirLev1_0100,  /* A500..A5FF */
794   MirLev1_0100,  /* A600..A6FF */
795   MirLev1_0100,  /* A700..A7FF */
796   MirLev1_0100,  /* A800..A8FF */
797   MirLev1_0100,  /* A900..A9FF */
798   MirLev1_0100,  /* AA00..AAFF */
799   MirLev1_0100,  /* AB00..ABFF */
800   MirLev1_0100,  /* AC00..ACFF */
801   MirLev1_0100,  /* AD00..ADFF */
802   MirLev1_0100,  /* AE00..AEFF */
803   MirLev1_0100,  /* AF00..AFFF */
804   MirLev1_0100,  /* B000..B0FF */
805   MirLev1_0100,  /* B100..B1FF */
806   MirLev1_0100,  /* B200..B2FF */
807   MirLev1_0100,  /* B300..B3FF */
808   MirLev1_0100,  /* B400..B4FF */
809   MirLev1_0100,  /* B500..B5FF */
810   MirLev1_0100,  /* B600..B6FF */
811   MirLev1_0100,  /* B700..B7FF */
812   MirLev1_0100,  /* B800..B8FF */
813   MirLev1_0100,  /* B900..B9FF */
814   MirLev1_0100,  /* BA00..BAFF */
815   MirLev1_0100,  /* BB00..BBFF */
816   MirLev1_0100,  /* BC00..BCFF */
817   MirLev1_0100,  /* BD00..BDFF */
818   MirLev1_0100,  /* BE00..BEFF */
819   MirLev1_0100,  /* BF00..BFFF */
820   MirLev1_0100,  /* C000..C0FF */
821   MirLev1_0100,  /* C100..C1FF */
822   MirLev1_0100,  /* C200..C2FF */
823   MirLev1_0100,  /* C300..C3FF */
824   MirLev1_0100,  /* C400..C4FF */
825   MirLev1_0100,  /* C500..C5FF */
826   MirLev1_0100,  /* C600..C6FF */
827   MirLev1_0100,  /* C700..C7FF */
828   MirLev1_0100,  /* C800..C8FF */
829   MirLev1_0100,  /* C900..C9FF */
830   MirLev1_0100,  /* CA00..CAFF */
831   MirLev1_0100,  /* CB00..CBFF */
832   MirLev1_0100,  /* CC00..CCFF */
833   MirLev1_0100,  /* CD00..CDFF */
834   MirLev1_0100,  /* CE00..CEFF */
835   MirLev1_0100,  /* CF00..CFFF */
836   MirLev1_0100,  /* D000..D0FF */
837   MirLev1_0100,  /* D100..D1FF */
838   MirLev1_0100,  /* D200..D2FF */
839   MirLev1_0100,  /* D300..D3FF */
840   MirLev1_0100,  /* D400..D4FF */
841   MirLev1_0100,  /* D500..D5FF */
842   MirLev1_0100,  /* D600..D6FF */
843   MirLev1_0100,  /* D700..D7FF */
844   MirLev1_0100,  /* D800..D8FF */
845   MirLev1_0100,  /* D900..D9FF */
846   MirLev1_0100,  /* DA00..DAFF */
847   MirLev1_0100,  /* DB00..DBFF */
848   MirLev1_0100,  /* DC00..DCFF */
849   MirLev1_0100,  /* DD00..DDFF */
850   MirLev1_0100,  /* DE00..DEFF */
851   MirLev1_0100,  /* DF00..DFFF */
852   MirLev1_0100,  /* E000..E0FF */
853   MirLev1_0100,  /* E100..E1FF */
854   MirLev1_0100,  /* E200..E2FF */
855   MirLev1_0100,  /* E300..E3FF */
856   MirLev1_0100,  /* E400..E4FF */
857   MirLev1_0100,  /* E500..E5FF */
858   MirLev1_0100,  /* E600..E6FF */
859   MirLev1_0100,  /* E700..E7FF */
860   MirLev1_0100,  /* E800..E8FF */
861   MirLev1_0100,  /* E900..E9FF */
862   MirLev1_0100,  /* EA00..EAFF */
863   MirLev1_0100,  /* EB00..EBFF */
864   MirLev1_0100,  /* EC00..ECFF */
865   MirLev1_0100,  /* ED00..EDFF */
866   MirLev1_0100,  /* EE00..EEFF */
867   MirLev1_0100,  /* EF00..EFFF */
868   MirLev1_0100,  /* F000..F0FF */
869   MirLev1_0100,  /* F100..F1FF */
870   MirLev1_0100,  /* F200..F2FF */
871   MirLev1_0100,  /* F300..F3FF */
872   MirLev1_0100,  /* F400..F4FF */
873   MirLev1_0100,  /* F500..F5FF */
874   MirLev1_0100,  /* F600..F6FF */
875   MirLev1_0100,  /* F700..F7FF */
876   MirLev1_0100,  /* F800..F8FF */
877   MirLev1_0100,  /* F900..F9FF */
878   MirLev1_0100,  /* FA00..FAFF */
879   MirLev1_0100,  /* FB00..FBFF */
880   MirLev1_0100,  /* FC00..FCFF */
881   MirLev1_0100,  /* FD00..FDFF */
882   MirLev1_FE00,  /* FE00..FEFF */
883   MirLev1_FF00,  /* FF00..FFFF */
884 };
885
886 /* *INDENT-ON* */
887
888 #define GLIB_GET_MIRRORING_DELTA(x) \
889         ((x) >= 0x10000 ? 0 :  \
890         MirLev3[((x) & 0x03) + \
891         MirLev2[((x) >> 2 & 0x03) + \
892         MirLev1[((x) >> 4 & 0x0f) + \
893         MirLev0[((x) >> 8)]]]])
894
895 #undef PACKTAB_UINT8
896 #undef PACKTAB_UINT16
897 #undef PACKTAB_UINT32
898
899 #define GLIB_GET_MIRRORING(x) ((x) + GLIB_GET_MIRRORING_DELTA(x))
900
901 /* End of generated gmirroringtable.h */