Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6
[pandora-kernel.git] / drivers / media / video / pwc / pwc-kiara.c
1 /* Linux driver for Philips webcam
2    (C) 2004-2006 Luc Saillard (luc@saillard.org)
3
4    NOTE: this version of pwc is an unofficial (modified) release of pwc & pcwx
5    driver and thus may have bugs that are not present in the original version.
6    Please send bug reports and support requests to <luc@saillard.org>.
7    The decompression routines have been implemented by reverse-engineering the
8    Nemosoft binary pwcx module. Caveat emptor.
9
10    This program is free software; you can redistribute it and/or modify
11    it under the terms of the GNU General Public License as published by
12    the Free Software Foundation; either version 2 of the License, or
13    (at your option) any later version.
14
15    This program is distributed in the hope that it will be useful,
16    but WITHOUT ANY WARRANTY; without even the implied warranty of
17    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18    GNU General Public License for more details.
19
20    You should have received a copy of the GNU General Public License
21    along with this program; if not, write to the Free Software
22    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
23 */
24
25
26 /* This tables contains entries for the 730/740/750 (Kiara) camera, with
27    4 different qualities (no compression, low, medium, high).
28    It lists the bandwidth requirements for said mode by its alternate interface
29    number. An alternate of 0 means that the mode is unavailable.
30
31    There are 6 * 4 * 4 entries:
32      6 different resolutions subqcif, qsif, qcif, sif, cif, vga
33      6 framerates: 5, 10, 15, 20, 25, 30
34      4 compression modi: none, low, medium, high
35
36    When an uncompressed mode is not available, the next available compressed mode
37    will be chosen (unless the decompressor is absent). Sometimes there are only
38    1 or 2 compressed modes available; in that case entries are duplicated.
39 */
40
41
42 #include "pwc-kiara.h"
43
44 const unsigned int Kiara_fps_vector[PWC_FPS_MAX_KIARA] = { 5, 10, 15, 20, 25, 30 };
45
46 const struct Kiara_table_entry Kiara_table[PSZ_MAX][6][4] =
47 {
48    /* SQCIF */
49    {
50       /* 5 fps */
51       {
52          {0, },
53          {0, },
54          {0, },
55          {0, },
56       },
57       /* 10 fps */
58       {
59          {0, },
60          {0, },
61          {0, },
62          {0, },
63       },
64       /* 15 fps */
65       {
66          {0, },
67          {0, },
68          {0, },
69          {0, },
70       },
71       /* 20 fps */
72       {
73          {0, },
74          {0, },
75          {0, },
76          {0, },
77       },
78       /* 25 fps */
79       {
80          {0, },
81          {0, },
82          {0, },
83          {0, },
84       },
85       /* 30 fps */
86       {
87          {0, },
88          {0, },
89          {0, },
90          {0, },
91       },
92    },
93    /* QSIF */
94    {
95       /* 5 fps */
96       {
97          {1, 146,    0, {0x1D, 0xF4, 0x30, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x92, 0x00, 0x80}},
98          {1, 146,    0, {0x1D, 0xF4, 0x30, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x92, 0x00, 0x80}},
99          {1, 146,    0, {0x1D, 0xF4, 0x30, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x92, 0x00, 0x80}},
100          {1, 146,    0, {0x1D, 0xF4, 0x30, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x92, 0x00, 0x80}},
101       },
102       /* 10 fps */
103       {
104          {2, 291,    0, {0x1C, 0xF4, 0x30, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x23, 0x01, 0x80}},
105          {1, 192,  630, {0x14, 0xF4, 0x30, 0x13, 0xA9, 0x12, 0xE1, 0x17, 0x08, 0xC0, 0x00, 0x80}},
106          {1, 192,  630, {0x14, 0xF4, 0x30, 0x13, 0xA9, 0x12, 0xE1, 0x17, 0x08, 0xC0, 0x00, 0x80}},
107          {1, 192,  630, {0x14, 0xF4, 0x30, 0x13, 0xA9, 0x12, 0xE1, 0x17, 0x08, 0xC0, 0x00, 0x80}},
108       },
109       /* 15 fps */
110       {
111          {3, 437,    0, {0x1B, 0xF4, 0x30, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0xB5, 0x01, 0x80}},
112          {2, 292,  640, {0x13, 0xF4, 0x30, 0x13, 0xF7, 0x13, 0x2F, 0x13, 0x20, 0x24, 0x01, 0x80}},
113          {2, 292,  640, {0x13, 0xF4, 0x30, 0x13, 0xF7, 0x13, 0x2F, 0x13, 0x20, 0x24, 0x01, 0x80}},
114          {1, 192,  420, {0x13, 0xF4, 0x30, 0x0D, 0x1B, 0x0C, 0x53, 0x1E, 0x18, 0xC0, 0x00, 0x80}},
115       },
116       /* 20 fps */
117       {
118          {4, 589,    0, {0x1A, 0xF4, 0x30, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x4D, 0x02, 0x80}},
119          {3, 448,  730, {0x12, 0xF4, 0x30, 0x16, 0xC9, 0x16, 0x01, 0x0E, 0x18, 0xC0, 0x01, 0x80}},
120          {2, 292,  476, {0x12, 0xF4, 0x30, 0x0E, 0xD8, 0x0E, 0x10, 0x19, 0x18, 0x24, 0x01, 0x80}},
121          {1, 192,  312, {0x12, 0xF4, 0x50, 0x09, 0xB3, 0x08, 0xEB, 0x1E, 0x18, 0xC0, 0x00, 0x80}},
122       },
123       /* 25 fps */
124       {
125          {5, 703,    0, {0x19, 0xF4, 0x30, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0xBF, 0x02, 0x80}},
126          {3, 447,  610, {0x11, 0xF4, 0x30, 0x13, 0x0B, 0x12, 0x43, 0x14, 0x28, 0xBF, 0x01, 0x80}},
127          {2, 292,  398, {0x11, 0xF4, 0x50, 0x0C, 0x6C, 0x0B, 0xA4, 0x1E, 0x28, 0x24, 0x01, 0x80}},
128          {1, 193,  262, {0x11, 0xF4, 0x50, 0x08, 0x23, 0x07, 0x5B, 0x1E, 0x28, 0xC1, 0x00, 0x80}},
129       },
130       /* 30 fps */
131       {
132          {8, 874,    0, {0x18, 0xF4, 0x30, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x6A, 0x03, 0x80}},
133          {5, 704,  730, {0x10, 0xF4, 0x30, 0x16, 0xC9, 0x16, 0x01, 0x0E, 0x28, 0xC0, 0x02, 0x80}},
134          {3, 448,  492, {0x10, 0xF4, 0x30, 0x0F, 0x5D, 0x0E, 0x95, 0x15, 0x28, 0xC0, 0x01, 0x80}},
135          {2, 292,  320, {0x10, 0xF4, 0x50, 0x09, 0xFB, 0x09, 0x33, 0x1E, 0x28, 0x24, 0x01, 0x80}},
136       },
137    },
138    /* QCIF */
139    {
140       /* 5 fps */
141       {
142          {0, },
143          {0, },
144          {0, },
145          {0, },
146       },
147       /* 10 fps */
148       {
149          {0, },
150          {0, },
151          {0, },
152          {0, },
153       },
154       /* 15 fps */
155       {
156          {0, },
157          {0, },
158          {0, },
159          {0, },
160       },
161       /* 20 fps */
162       {
163          {0, },
164          {0, },
165          {0, },
166          {0, },
167       },
168       /* 25 fps */
169       {
170          {0, },
171          {0, },
172          {0, },
173          {0, },
174       },
175       /* 30 fps */
176       {
177          {0, },
178          {0, },
179          {0, },
180          {0, },
181       },
182    },
183    /* SIF */
184    {
185       /* 5 fps */
186       {
187          {4, 582,    0, {0x0D, 0xF4, 0x30, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x46, 0x02, 0x80}},
188          {3, 387, 1276, {0x05, 0xF4, 0x30, 0x27, 0xD8, 0x26, 0x48, 0x03, 0x10, 0x83, 0x01, 0x80}},
189          {2, 291,  960, {0x05, 0xF4, 0x30, 0x1D, 0xF2, 0x1C, 0x62, 0x04, 0x10, 0x23, 0x01, 0x80}},
190          {1, 191,  630, {0x05, 0xF4, 0x50, 0x13, 0xA9, 0x12, 0x19, 0x05, 0x18, 0xBF, 0x00, 0x80}},
191       },
192       /* 10 fps */
193       {
194          {0, },
195          {6, 775, 1278, {0x04, 0xF4, 0x30, 0x27, 0xE8, 0x26, 0x58, 0x05, 0x30, 0x07, 0x03, 0x80}},
196          {3, 447,  736, {0x04, 0xF4, 0x30, 0x16, 0xFB, 0x15, 0x6B, 0x05, 0x28, 0xBF, 0x01, 0x80}},
197          {2, 292,  480, {0x04, 0xF4, 0x70, 0x0E, 0xF9, 0x0D, 0x69, 0x09, 0x28, 0x24, 0x01, 0x80}},
198       },
199       /* 15 fps */
200       {
201          {0, },
202          {9, 955, 1050, {0x03, 0xF4, 0x30, 0x20, 0xCF, 0x1F, 0x3F, 0x06, 0x48, 0xBB, 0x03, 0x80}},
203          {4, 592,  650, {0x03, 0xF4, 0x30, 0x14, 0x44, 0x12, 0xB4, 0x08, 0x30, 0x50, 0x02, 0x80}},
204          {3, 448,  492, {0x03, 0xF4, 0x50, 0x0F, 0x52, 0x0D, 0xC2, 0x09, 0x38, 0xC0, 0x01, 0x80}},
205       },
206       /* 20 fps */
207       {
208          {0, },
209          {9, 958,  782, {0x02, 0xF4, 0x30, 0x18, 0x6A, 0x16, 0xDA, 0x0B, 0x58, 0xBE, 0x03, 0x80}},
210          {5, 703,  574, {0x02, 0xF4, 0x50, 0x11, 0xE7, 0x10, 0x57, 0x0B, 0x40, 0xBF, 0x02, 0x80}},
211          {3, 446,  364, {0x02, 0xF4, 0x90, 0x0B, 0x5C, 0x09, 0xCC, 0x0E, 0x38, 0xBE, 0x01, 0x80}},
212       },
213       /* 25 fps */
214       {
215          {0, },
216          {9, 958,  654, {0x01, 0xF4, 0x30, 0x14, 0x66, 0x12, 0xD6, 0x0B, 0x50, 0xBE, 0x03, 0x80}},
217          {6, 776,  530, {0x01, 0xF4, 0x50, 0x10, 0x8C, 0x0E, 0xFC, 0x0C, 0x48, 0x08, 0x03, 0x80}},
218          {4, 592,  404, {0x01, 0xF4, 0x70, 0x0C, 0x96, 0x0B, 0x06, 0x0B, 0x48, 0x50, 0x02, 0x80}},
219       },
220       /* 30 fps */
221       {
222          {0, },
223          {9, 957,  526, {0x00, 0xF4, 0x50, 0x10, 0x68, 0x0E, 0xD8, 0x0D, 0x58, 0xBD, 0x03, 0x80}},
224          {6, 775,  426, {0x00, 0xF4, 0x70, 0x0D, 0x48, 0x0B, 0xB8, 0x0F, 0x50, 0x07, 0x03, 0x80}},
225          {4, 590,  324, {0x00, 0x7A, 0x88, 0x0A, 0x1C, 0x08, 0xB4, 0x0E, 0x50, 0x4E, 0x02, 0x80}},
226       },
227    },
228    /* CIF */
229    {
230       /* 5 fps */
231       {
232          {0, },
233          {0, },
234          {0, },
235          {0, },
236       },
237       /* 10 fps */
238       {
239          {0, },
240          {0, },
241          {0, },
242          {0, },
243       },
244       /* 15 fps */
245       {
246          {0, },
247          {0, },
248          {0, },
249          {0, },
250       },
251       /* 20 fps */
252       {
253          {0, },
254          {0, },
255          {0, },
256          {0, },
257       },
258       /* 25 fps */
259       {
260          {0, },
261          {0, },
262          {0, },
263          {0, },
264       },
265       /* 30 fps */
266       {
267          {0, },
268          {0, },
269          {0, },
270          {0, },
271       },
272    },
273    /* VGA */
274    {
275       /* 5 fps */
276       {
277          {0, },
278          {6, 773, 1272, {0x25, 0xF4, 0x30, 0x27, 0xB6, 0x24, 0x96, 0x02, 0x30, 0x05, 0x03, 0x80}},
279          {4, 592,  976, {0x25, 0xF4, 0x50, 0x1E, 0x78, 0x1B, 0x58, 0x03, 0x30, 0x50, 0x02, 0x80}},
280          {3, 448,  738, {0x25, 0xF4, 0x90, 0x17, 0x0C, 0x13, 0xEC, 0x04, 0x30, 0xC0, 0x01, 0x80}},
281       },
282       /* 10 fps */
283       {
284          {0, },
285          {9, 956,  788, {0x24, 0xF4, 0x70, 0x18, 0x9C, 0x15, 0x7C, 0x03, 0x48, 0xBC, 0x03, 0x80}},
286          {6, 776,  640, {0x24, 0xF4, 0xB0, 0x13, 0xFC, 0x11, 0x2C, 0x04, 0x48, 0x08, 0x03, 0x80}},
287          {4, 592,  488, {0x24, 0x7A, 0xE8, 0x0F, 0x3C, 0x0C, 0x6C, 0x06, 0x48, 0x50, 0x02, 0x80}},
288       },
289       /* 15 fps */
290       {
291          {0, },
292          {9, 957,  526, {0x23, 0x7A, 0xE8, 0x10, 0x68, 0x0D, 0x98, 0x06, 0x58, 0xBD, 0x03, 0x80}},
293          {9, 957,  526, {0x23, 0x7A, 0xE8, 0x10, 0x68, 0x0D, 0x98, 0x06, 0x58, 0xBD, 0x03, 0x80}},
294          {8, 895,  492, {0x23, 0x7A, 0xE8, 0x0F, 0x5D, 0x0C, 0x8D, 0x06, 0x58, 0x7F, 0x03, 0x80}},
295       },
296       /* 20 fps */
297       {
298          {0, },
299          {0, },
300          {0, },
301          {0, },
302       },
303       /* 25 fps */
304       {
305          {0, },
306          {0, },
307          {0, },
308          {0, },
309       },
310       /* 30 fps */
311       {
312          {0, },
313          {0, },
314          {0, },
315          {0, },
316       },
317    },
318 };
319
320
321 /*
322  * Rom table for kiara chips
323  *
324  * 32 roms tables (one for each resolution ?)
325  *  2 tables per roms (one for each passes) (Y, and U&V)
326  * 128 bytes per passes
327  */
328
329 const unsigned int KiaraRomTable [8][2][16][8] =
330 {
331  { /* version 0 */
332   { /* version 0, passes 0 */
333    {0x00000000,0x00000000,0x00000000,0x00000000,
334     0x00000000,0x00000000,0x00000001,0x00000001},
335    {0x00000000,0x00000000,0x00000009,0x00000009,
336     0x00000009,0x00000009,0x00000009,0x00000009},
337    {0x00000000,0x00000000,0x00000009,0x00000049,
338     0x00000049,0x00000049,0x00000049,0x00000049},
339    {0x00000000,0x00000000,0x00000049,0x00000049,
340     0x00000049,0x00000249,0x0000024a,0x00000049},
341    {0x00000000,0x00000000,0x00000049,0x00000049,
342     0x00000249,0x00000249,0x0000024a,0x0000024a},
343    {0x00000000,0x00000000,0x00000049,0x00000249,
344     0x00000249,0x0000124a,0x0000024a,0x0000024a},
345    {0x00000000,0x00000000,0x00000049,0x00000249,
346     0x0000124a,0x00009252,0x00001252,0x00001252},
347    {0x00000000,0x00000000,0x00000249,0x00000249,
348     0x00009252,0x00009292,0x00009292,0x00009292},
349    {0x00000000,0x00000000,0x00000249,0x00001249,
350     0x00009292,0x00009292,0x00009493,0x000124db},
351    {0x00000000,0x00000000,0x00000249,0x0000924a,
352     0x00009492,0x0000a49b,0x0000a49b,0x000124db},
353    {0x00000000,0x00000000,0x00001249,0x00009252,
354     0x0000a493,0x000124db,0x000124db,0x000126dc},
355    {0x00000000,0x00000000,0x00001249,0x00009493,
356     0x000124db,0x000126dc,0x000136e4,0x000126dc},
357    {0x00000000,0x00000000,0x00009292,0x0000a49b,
358     0x000124db,0x000136e4,0x000136e4,0x000136e4},
359    {0x00000000,0x00000000,0x00009292,0x0000a49b,
360     0x000126dc,0x0001b724,0x0001b92d,0x0001b925},
361    {0x00000000,0x00000000,0x00009492,0x000124db,
362     0x000136e4,0x0001b925,0x0001c96e,0x0001c92d},
363    {0x00000000,0x00000000,0x00000000,0x00000000,
364     0x00000000,0x00000000,0x00000000,0x00000000}
365   },
366   { /* version 0, passes 1 */
367    {0x00000000,0x00000000,0x00000000,0x00000000,
368     0x00000000,0x00000000,0x00000000,0x00000000},
369    {0x00000000,0x00000000,0x00000000,0x00000000,
370     0x00000000,0x00000000,0x00000000,0x00000000},
371    {0x00000000,0x00000000,0x00000001,0x00000009,
372     0x00000009,0x00000009,0x00000009,0x00000001},
373    {0x00000000,0x00000000,0x00000009,0x00000009,
374     0x00000049,0x00000049,0x00000049,0x00000049},
375    {0x00000000,0x00000000,0x00000049,0x00000049,
376     0x00000049,0x00000049,0x0000024a,0x0000024a},
377    {0x00000000,0x00000000,0x00000049,0x00000049,
378     0x00000249,0x00000249,0x0000024a,0x0000024a},
379    {0x00000000,0x00000000,0x00000049,0x00000249,
380     0x00000249,0x00000249,0x0000024a,0x00001252},
381    {0x00000000,0x00000000,0x00000049,0x00001249,
382     0x0000124a,0x0000124a,0x00001252,0x00009292},
383    {0x00000000,0x00000000,0x00000249,0x00001249,
384     0x00009252,0x00009252,0x00009292,0x00009493},
385    {0x00000000,0x00000000,0x00000249,0x0000924a,
386     0x00009292,0x00009292,0x00009292,0x00009493},
387    {0x00000000,0x00000000,0x00000249,0x00009292,
388     0x00009492,0x00009493,0x0000a49b,0x00009493},
389    {0x00000000,0x00000000,0x00001249,0x00009292,
390     0x0000a493,0x000124db,0x000126dc,0x000126dc},
391    {0x00000000,0x00000000,0x0000924a,0x00009493,
392     0x0000a493,0x000126dc,0x000136e4,0x000136e4},
393    {0x00000000,0x00000000,0x00009252,0x00009493,
394     0x000126dc,0x000126dc,0x000136e4,0x000136e4},
395    {0x00000000,0x00000000,0x00009292,0x0000a49b,
396     0x000136e4,0x000136e4,0x0001b725,0x0001b724},
397    {0x00000000,0x00000000,0x00000000,0x00000000,
398     0x00000000,0x00000000,0x00000000,0x00000000}
399   }
400  },
401  { /* version 1 */
402   { /* version 1, passes 0 */
403    {0x00000000,0x00000000,0x00000000,0x00000000,
404     0x00000000,0x00000000,0x00000000,0x00000001},
405    {0x00000000,0x00000000,0x00000009,0x00000009,
406     0x00000009,0x00000009,0x00000009,0x00000009},
407    {0x00000000,0x00000000,0x00000049,0x00000049,
408     0x00000049,0x00000049,0x00000049,0x00000049},
409    {0x00000000,0x00000000,0x00000049,0x00000049,
410     0x00000049,0x00000249,0x0000024a,0x0000024a},
411    {0x00000000,0x00000000,0x00000049,0x00000249,
412     0x00000249,0x00000249,0x0000024a,0x00001252},
413    {0x00000000,0x00000000,0x00000249,0x00000249,
414     0x00000249,0x0000124a,0x00001252,0x00001252},
415    {0x00000000,0x00000000,0x00000249,0x00000249,
416     0x0000124a,0x0000124a,0x00009292,0x00009292},
417    {0x00000000,0x00000000,0x00000249,0x00001249,
418     0x0000124a,0x00009252,0x00009292,0x00009292},
419    {0x00000000,0x00000000,0x00000249,0x00001249,
420     0x00009252,0x00009292,0x00009292,0x00009292},
421    {0x00000000,0x00000000,0x00000249,0x00001249,
422     0x00009252,0x00009292,0x00009493,0x00009493},
423    {0x00000000,0x00000000,0x00000249,0x0000924a,
424     0x00009252,0x00009493,0x00009493,0x00009493},
425    {0x00000000,0x00000000,0x00000249,0x0000924a,
426     0x00009292,0x00009493,0x00009493,0x00009493},
427    {0x00000000,0x00000000,0x00000249,0x00009252,
428     0x00009492,0x00009493,0x0000a49b,0x0000a49b},
429    {0x00000000,0x00000000,0x00001249,0x00009292,
430     0x00009492,0x000124db,0x000124db,0x000124db},
431    {0x00000000,0x00000000,0x0000924a,0x00009493,
432     0x0000a493,0x000126dc,0x000126dc,0x000126dc},
433    {0x00000000,0x00000000,0x00000000,0x00000000,
434     0x00000000,0x00000000,0x00000000,0x00000000}
435   },
436   { /* version 1, passes 1 */
437    {0x00000000,0x00000000,0x00000000,0x00000000,
438     0x00000000,0x00000000,0x00000000,0x00000000},
439    {0x00000000,0x00000000,0x00000049,0x00000009,
440     0x00000049,0x00000009,0x00000001,0x00000000},
441    {0x00000000,0x00000000,0x00000049,0x00000049,
442     0x00000049,0x00000049,0x00000049,0x00000000},
443    {0x00000000,0x00000000,0x00000249,0x00000049,
444     0x00000249,0x00000049,0x0000024a,0x00000001},
445    {0x00000000,0x00000000,0x00000249,0x00000249,
446     0x00000249,0x00000249,0x0000024a,0x00000001},
447    {0x00000000,0x00000000,0x00000249,0x00000249,
448     0x00000249,0x00000249,0x0000024a,0x00000001},
449    {0x00000000,0x00000000,0x00000249,0x00000249,
450     0x00000249,0x00000249,0x0000024a,0x00000009},
451    {0x00000000,0x00000000,0x00000249,0x00000249,
452     0x0000124a,0x0000124a,0x0000024a,0x00000009},
453    {0x00000000,0x00000000,0x00000249,0x00000249,
454     0x0000124a,0x0000124a,0x0000024a,0x00000009},
455    {0x00000000,0x00000000,0x00001249,0x00001249,
456     0x0000124a,0x00009252,0x00001252,0x00000049},
457    {0x00000000,0x00000000,0x00001249,0x00001249,
458     0x0000124a,0x00009292,0x00001252,0x00000049},
459    {0x00000000,0x00000000,0x00001249,0x00001249,
460     0x0000124a,0x00009292,0x00001252,0x00000049},
461    {0x00000000,0x00000000,0x00001249,0x00001249,
462     0x00009252,0x00009292,0x00001252,0x0000024a},
463    {0x00000000,0x00000000,0x00001249,0x00001249,
464     0x00009292,0x00009292,0x00001252,0x0000024a},
465    {0x00000000,0x00000000,0x0000924a,0x0000924a,
466     0x00009492,0x00009493,0x00009292,0x00001252},
467    {0x00000000,0x00000000,0x00000000,0x00000000,
468     0x00000000,0x00000000,0x00000000,0x00000000}
469   }
470  },
471  { /* version 2 */
472   { /* version 2, passes 0 */
473    {0x00000000,0x00000000,0x00000049,0x00000049,
474     0x00000049,0x00000049,0x0000024a,0x0000024a},
475    {0x00000000,0x00000000,0x00000249,0x00000249,
476     0x00000249,0x0000124a,0x00001252,0x00009292},
477    {0x00000000,0x00000000,0x00000249,0x00000249,
478     0x0000124a,0x00009252,0x00009292,0x00009292},
479    {0x00000000,0x00000000,0x00000249,0x00001249,
480     0x0000124a,0x00009292,0x00009493,0x00009493},
481    {0x00000000,0x00000000,0x00000249,0x00001249,
482     0x00009252,0x00009493,0x00009493,0x0000a49b},
483    {0x00000000,0x00000000,0x00000249,0x0000924a,
484     0x00009292,0x00009493,0x0000a49b,0x0000a49b},
485    {0x00000000,0x00000000,0x00001249,0x0000924a,
486     0x00009292,0x00009493,0x0000a49b,0x000124db},
487    {0x00000000,0x00000000,0x00001249,0x00009252,
488     0x00009492,0x0000a49b,0x0000a49b,0x000124db},
489    {0x00000000,0x00000000,0x00001249,0x00009292,
490     0x00009492,0x000124db,0x000124db,0x000126dc},
491    {0x00000000,0x00000000,0x00001249,0x00009292,
492     0x0000a493,0x000124db,0x000126dc,0x000126dc},
493    {0x00000000,0x00000000,0x00001249,0x00009493,
494     0x0000a493,0x000124db,0x000126dc,0x000136e4},
495    {0x00000000,0x00000000,0x00001249,0x00009493,
496     0x0000a493,0x000126dc,0x000136e4,0x000136e4},
497    {0x00000000,0x00000000,0x0000924a,0x00009493,
498     0x0001249b,0x000126dc,0x000136e4,0x000136e4},
499    {0x00000000,0x00000000,0x0000924a,0x0000a49b,
500     0x000124db,0x000136e4,0x000136e4,0x0001b724},
501    {0x00000000,0x00000000,0x00009252,0x000124db,
502     0x000126dc,0x0001b724,0x0001b725,0x0001b925},
503    {0x00000000,0x00000000,0x00000000,0x00000000,
504     0x00000000,0x00000000,0x00000000,0x00000000}
505   },
506   { /* version 2, passes 1 */
507    {0x00000000,0x00000000,0x00000049,0x00000049,
508     0x00000049,0x00000049,0x00000049,0x00000049},
509    {0x00000000,0x00000000,0x00000249,0x00000249,
510     0x00000249,0x00000249,0x0000024a,0x00000049},
511    {0x00000000,0x00000000,0x00001249,0x00000249,
512     0x0000124a,0x0000124a,0x00001252,0x00000049},
513    {0x00000000,0x00000000,0x00001249,0x00001249,
514     0x0000124a,0x0000124a,0x00009292,0x0000024a},
515    {0x00000000,0x00000000,0x00001249,0x00001249,
516     0x00009252,0x00009292,0x00009292,0x0000024a},
517    {0x00000000,0x00000000,0x00001249,0x00001249,
518     0x00009252,0x00009292,0x0000a49b,0x0000024a},
519    {0x00000000,0x00000000,0x00001249,0x00001249,
520     0x00009292,0x00009493,0x0000a49b,0x00001252},
521    {0x00000000,0x00000000,0x00001249,0x00001249,
522     0x00009292,0x00009493,0x0000a49b,0x00001252},
523    {0x00000000,0x00000000,0x00001249,0x0000924a,
524     0x00009492,0x0000a49b,0x0000a49b,0x00001252},
525    {0x00000000,0x00000000,0x00001249,0x00009252,
526     0x00009492,0x0000a49b,0x0000a49b,0x00009292},
527    {0x00000000,0x00000000,0x00001249,0x00009292,
528     0x00009492,0x0000a49b,0x0000a49b,0x00009292},
529    {0x00000000,0x00000000,0x00001249,0x00009493,
530     0x0000a493,0x0000a49b,0x0000a49b,0x00009292},
531    {0x00000000,0x00000000,0x00001249,0x00009493,
532     0x0000a493,0x0000a49b,0x0000a49b,0x00009493},
533    {0x00000000,0x00000000,0x0000924a,0x00009493,
534     0x0000a493,0x000124db,0x0000a49b,0x00009493},
535    {0x00000000,0x00000000,0x00009252,0x0000a49b,
536     0x0001249b,0x000126dc,0x000124db,0x0000a49b},
537    {0x00000000,0x00000000,0x00000000,0x00000000,
538     0x00000000,0x00000000,0x00000000,0x00000000}
539   }
540  },
541  { /* version 3 */
542   { /* version 3, passes 0 */
543    {0x00000000,0x00000000,0x00000249,0x00000249,
544     0x0000124a,0x0000124a,0x00009292,0x00009292},
545    {0x00000000,0x00000000,0x00001249,0x00001249,
546     0x00009292,0x00009493,0x0000a49b,0x0000a49b},
547    {0x00000000,0x00000000,0x00001249,0x0000924a,
548     0x00009492,0x0000a49b,0x0000a49b,0x000124db},
549    {0x00000000,0x00000000,0x00001249,0x00009292,
550     0x00009492,0x000124db,0x000126dc,0x000126dc},
551    {0x00000000,0x00000000,0x00001249,0x00009493,
552     0x0000a493,0x000124db,0x000126dc,0x000126dc},
553    {0x00000000,0x00000000,0x00001249,0x00009493,
554     0x0000a493,0x000126dc,0x000136e4,0x000136e4},
555    {0x00000000,0x00000000,0x00001249,0x00009493,
556     0x0000a493,0x000126dc,0x000136e4,0x0001b724},
557    {0x00000000,0x00000000,0x00001249,0x00009493,
558     0x0001249b,0x000126dc,0x000136e4,0x0001b724},
559    {0x00000000,0x00000000,0x0000924a,0x0000a49b,
560     0x0001249b,0x000126dc,0x000136e4,0x0001b724},
561    {0x00000000,0x00000000,0x0000924a,0x0000a49b,
562     0x0001249b,0x000136e4,0x0001b725,0x0001b724},
563    {0x00000000,0x00000000,0x0000924a,0x0000a49b,
564     0x000124db,0x000136e4,0x0001b725,0x0001b925},
565    {0x00000000,0x00000000,0x00009292,0x0000a49b,
566     0x000126dc,0x000136e4,0x0001b92d,0x0001b925},
567    {0x00000000,0x00000000,0x00009292,0x0000a49b,
568     0x000126dc,0x0001b724,0x0001b92d,0x0001c92d},
569    {0x00000000,0x00000000,0x00009492,0x000124db,
570     0x000126dc,0x0001b724,0x0001c96e,0x0001c92d},
571    {0x00000000,0x00000000,0x0000a492,0x000126db,
572     0x000136e4,0x0001b925,0x00025bb6,0x00024b77},
573    {0x00000000,0x00000000,0x00000000,0x00000000,
574     0x00000000,0x00000000,0x00000000,0x00000000}
575   },
576   { /* version 3, passes 1 */
577    {0x00000000,0x00000000,0x00001249,0x00000249,
578     0x0000124a,0x0000124a,0x00001252,0x00001252},
579    {0x00000000,0x00000000,0x00001249,0x00001249,
580     0x00009252,0x00009292,0x00009292,0x00001252},
581    {0x00000000,0x00000000,0x00001249,0x0000924a,
582     0x00009492,0x00009493,0x0000a49b,0x00001252},
583    {0x00000000,0x00000000,0x00001249,0x00009252,
584     0x00009492,0x0000a49b,0x0000a49b,0x00009292},
585    {0x00000000,0x00000000,0x00001249,0x00009292,
586     0x00009492,0x0000a49b,0x0000a49b,0x00009292},
587    {0x00000000,0x00000000,0x00001249,0x00009493,
588     0x0000a493,0x0000a49b,0x000126dc,0x00009292},
589    {0x00000000,0x00000000,0x0000924a,0x00009493,
590     0x0000a493,0x0000a49b,0x000126dc,0x00009493},
591    {0x00000000,0x00000000,0x0000924a,0x00009493,
592     0x0000a493,0x0000a49b,0x000126dc,0x00009493},
593    {0x00000000,0x00000000,0x0000924a,0x00009493,
594     0x0000a493,0x000124db,0x000126dc,0x00009493},
595    {0x00000000,0x00000000,0x0000924a,0x00009493,
596     0x0000a493,0x000124db,0x000126dc,0x0000a49b},
597    {0x00000000,0x00000000,0x0000924a,0x0000a49b,
598     0x0000a493,0x000124db,0x000126dc,0x0000a49b},
599    {0x00000000,0x00000000,0x0000924a,0x0000a49b,
600     0x0001249b,0x000126dc,0x000126dc,0x0000a49b},
601    {0x00000000,0x00000000,0x0000924a,0x0000a49b,
602     0x000124db,0x000136e4,0x000126dc,0x000124db},
603    {0x00000000,0x00000000,0x00009492,0x0000a49b,
604     0x000136e4,0x000136e4,0x000126dc,0x000124db},
605    {0x00000000,0x00000000,0x0000a492,0x000124db,
606     0x0001b724,0x0001b724,0x000136e4,0x000126dc},
607    {0x00000000,0x00000000,0x00000000,0x00000000,
608     0x00000000,0x00000000,0x00000000,0x00000000}
609   }
610  },
611  { /* version 4 */
612   { /* version 4, passes 0 */
613    {0x00000000,0x00000000,0x00000049,0x00000049,
614     0x00000049,0x00000049,0x00000049,0x00000049},
615    {0x00000000,0x00000000,0x00000249,0x00000049,
616     0x00000249,0x00000249,0x0000024a,0x00000049},
617    {0x00000000,0x00000000,0x00000249,0x00000249,
618     0x0000124a,0x00009252,0x00001252,0x0000024a},
619    {0x00000000,0x00000000,0x00001249,0x00001249,
620     0x00009252,0x00009292,0x00009493,0x00001252},
621    {0x00000000,0x00000000,0x00001249,0x0000924a,
622     0x00009292,0x00009493,0x00009493,0x00001252},
623    {0x00000000,0x00000000,0x00001249,0x00009292,
624     0x00009492,0x0000a49b,0x0000a49b,0x00009292},
625    {0x00000000,0x00000000,0x00001249,0x00009493,
626     0x0000a493,0x000124db,0x000124db,0x00009493},
627    {0x00000000,0x00000000,0x0000924a,0x00009493,
628     0x0000a493,0x000124db,0x000126dc,0x0000a49b},
629    {0x00000000,0x00000000,0x0000924a,0x00009493,
630     0x0000a493,0x000124db,0x000126dc,0x0000a49b},
631    {0x00000000,0x00000000,0x0000924a,0x00009493,
632     0x0001249b,0x000126dc,0x000126dc,0x000124db},
633    {0x00000000,0x00000000,0x00009252,0x00009493,
634     0x000124db,0x000136e4,0x000136e4,0x000126dc},
635    {0x00000000,0x00000000,0x00009252,0x0000a49b,
636     0x000124db,0x000136e4,0x000136e4,0x000126dc},
637    {0x00000000,0x00000000,0x00009292,0x0000a49b,
638     0x000126dc,0x000136e4,0x000136e4,0x000136e4},
639    {0x00000000,0x00000000,0x00009492,0x0000a49b,
640     0x000126dc,0x0001b724,0x0001b725,0x0001b724},
641    {0x00000000,0x00000000,0x0000a492,0x000124db,
642     0x000136e4,0x0001b925,0x0001b92d,0x0001b925},
643    {0x00000000,0x00000000,0x00000000,0x00000000,
644     0x00000000,0x00000000,0x00000000,0x00000000}
645   },
646   { /* version 4, passes 1 */
647    {0x00000000,0x00000000,0x00000249,0x00000049,
648     0x00000009,0x00000009,0x00000009,0x00000009},
649    {0x00000000,0x00000000,0x00000249,0x00000249,
650     0x00000049,0x00000049,0x00000009,0x00000009},
651    {0x00000000,0x00000000,0x00001249,0x00001249,
652     0x0000124a,0x00000249,0x00000049,0x00000049},
653    {0x00000000,0x00000000,0x00001249,0x00001249,
654     0x0000124a,0x0000124a,0x00000049,0x00000049},
655    {0x00000000,0x00000000,0x00001249,0x00001249,
656     0x00009252,0x0000124a,0x0000024a,0x0000024a},
657    {0x00000000,0x00000000,0x00001249,0x0000924a,
658     0x00009252,0x0000124a,0x0000024a,0x0000024a},
659    {0x00000000,0x00000000,0x00001249,0x00009292,
660     0x00009492,0x00009252,0x00001252,0x00001252},
661    {0x00000000,0x00000000,0x00001249,0x00009493,
662     0x0000a493,0x00009292,0x00009292,0x00001252},
663    {0x00000000,0x00000000,0x0000924a,0x00009493,
664     0x0000a493,0x00009292,0x00009292,0x00009292},
665    {0x00000000,0x00000000,0x0000924a,0x00009493,
666     0x0000a493,0x00009493,0x00009493,0x00009292},
667    {0x00000000,0x00000000,0x0000924a,0x0000a49b,
668     0x0000a493,0x0000a49b,0x00009493,0x00009493},
669    {0x00000000,0x00000000,0x0000924a,0x0000a49b,
670     0x0000a493,0x0000a49b,0x0000a49b,0x00009493},
671    {0x00000000,0x00000000,0x0000924a,0x0000a49b,
672     0x0001249b,0x000124db,0x0000a49b,0x0000a49b},
673    {0x00000000,0x00000000,0x0000924a,0x0000a49b,
674     0x000136e4,0x000126dc,0x000124db,0x0000a49b},
675    {0x00000000,0x00000000,0x00009252,0x000124db,
676     0x0001b724,0x000136e4,0x000126dc,0x000124db},
677    {0x00000000,0x00000000,0x00000000,0x00000000,
678     0x00000000,0x00000000,0x00000000,0x00000000}
679   }
680  },
681  { /* version 5 */
682   { /* version 5, passes 0 */
683    {0x00000000,0x00000000,0x00000249,0x00000249,
684     0x00000249,0x00000249,0x00001252,0x00001252},
685    {0x00000000,0x00000000,0x00001249,0x00001249,
686     0x00009252,0x00009292,0x00009292,0x00001252},
687    {0x00000000,0x00000000,0x00001249,0x0000924a,
688     0x00009492,0x0000a49b,0x0000a49b,0x00009292},
689    {0x00000000,0x00000000,0x00001249,0x00009493,
690     0x0000a493,0x0000a49b,0x000124db,0x00009493},
691    {0x00000000,0x00000000,0x00001249,0x00009493,
692     0x0000a493,0x000124db,0x000126dc,0x00009493},
693    {0x00000000,0x00000000,0x0000924a,0x00009493,
694     0x0000a493,0x000126dc,0x000126dc,0x0000a49b},
695    {0x00000000,0x00000000,0x0000924a,0x0000a49b,
696     0x0001249b,0x000126dc,0x000136e4,0x000124db},
697    {0x00000000,0x00000000,0x0000924a,0x0000a49b,
698     0x000126dc,0x000136e4,0x000136e4,0x000126dc},
699    {0x00000000,0x00000000,0x00009292,0x0000a49b,
700     0x000126dc,0x000136e4,0x000136e4,0x000126dc},
701    {0x00000000,0x00000000,0x00009292,0x0000a49b,
702     0x000126dc,0x0001b724,0x0001b725,0x000136e4},
703    {0x00000000,0x00000000,0x00009292,0x0000a49b,
704     0x000136e4,0x0001b724,0x0001b92d,0x0001b724},
705    {0x00000000,0x00000000,0x00009492,0x0000a49b,
706     0x000136e4,0x0001b724,0x0001b92d,0x0001b724},
707    {0x00000000,0x00000000,0x00009492,0x000124db,
708     0x000136e4,0x0001b925,0x0001c96e,0x0001b925},
709    {0x00000000,0x00000000,0x00009492,0x000124db,
710     0x0001b724,0x0001b925,0x0001c96e,0x0001c92d},
711    {0x00000000,0x00000000,0x0000a492,0x000126db,
712     0x0001c924,0x0002496d,0x00025bb6,0x00024b77},
713    {0x00000000,0x00000000,0x00000000,0x00000000,
714     0x00000000,0x00000000,0x00000000,0x00000000}
715   },
716   { /* version 5, passes 1 */
717    {0x00000000,0x00000000,0x00001249,0x00000249,
718     0x00000249,0x00000249,0x0000024a,0x0000024a},
719    {0x00000000,0x00000000,0x00001249,0x00001249,
720     0x0000124a,0x0000124a,0x0000024a,0x0000024a},
721    {0x00000000,0x00000000,0x00001249,0x0000924a,
722     0x00009252,0x00009252,0x0000024a,0x0000024a},
723    {0x00000000,0x00000000,0x00001249,0x00009292,
724     0x00009492,0x0000a49b,0x00001252,0x00001252},
725    {0x00000000,0x00000000,0x0000924a,0x00009493,
726     0x0000a493,0x0000a49b,0x00001252,0x00001252},
727    {0x00000000,0x00000000,0x0000924a,0x00009493,
728     0x0000a493,0x0000a49b,0x00009292,0x00001252},
729    {0x00000000,0x00000000,0x0000924a,0x0000a49b,
730     0x0000a493,0x0000a49b,0x00009292,0x00009292},
731    {0x00000000,0x00000000,0x0000924a,0x0000a49b,
732     0x0000a493,0x0000a49b,0x00009493,0x00009292},
733    {0x00000000,0x00000000,0x0000924a,0x0000a49b,
734     0x0001249b,0x000124db,0x00009493,0x00009292},
735    {0x00000000,0x00000000,0x0000924a,0x0000a49b,
736     0x0001249b,0x000124db,0x00009493,0x00009493},
737    {0x00000000,0x00000000,0x0000924a,0x0000a49b,
738     0x000124db,0x000124db,0x0000a49b,0x00009493},
739    {0x00000000,0x00000000,0x0000924a,0x000124db,
740     0x000126dc,0x000126dc,0x0000a49b,0x00009493},
741    {0x00000000,0x00000000,0x0000924a,0x000124db,
742     0x000136e4,0x000126dc,0x000124db,0x0000a49b},
743    {0x00000000,0x00000000,0x00009292,0x000124db,
744     0x000136e4,0x000126dc,0x000124db,0x0000a49b},
745    {0x00000000,0x00000000,0x00009492,0x000126db,
746     0x0001b724,0x000136e4,0x000126dc,0x000124db},
747    {0x00000000,0x00000000,0x00000000,0x00000000,
748     0x00000000,0x00000000,0x00000000,0x00000000}
749   }
750  },
751  { /* version 6 */
752   { /* version 6, passes 0 */
753    {0x00000000,0x00000000,0x00001249,0x00001249,
754     0x00009252,0x00009292,0x00009493,0x00009493},
755    {0x00000000,0x00000000,0x00001249,0x00009292,
756     0x0000a493,0x0000a49b,0x0000a49b,0x00009493},
757    {0x00000000,0x00000000,0x00001249,0x00009493,
758     0x0000a493,0x000124db,0x000124db,0x0000a49b},
759    {0x00000000,0x00000000,0x0000924a,0x00009493,
760     0x0000a493,0x000126dc,0x000126dc,0x0000a49b},
761    {0x00000000,0x00000000,0x0000924a,0x0000a49b,
762     0x0001249b,0x000126dc,0x000136e4,0x000124db},
763    {0x00000000,0x00000000,0x0000924a,0x0000a49b,
764     0x000126dc,0x000136e4,0x000136e4,0x000126dc},
765    {0x00000000,0x00000000,0x00009292,0x0000a49b,
766     0x000126dc,0x0001b724,0x0001b725,0x000126dc},
767    {0x00000000,0x00000000,0x00009292,0x0000a49b,
768     0x000136e4,0x0001b724,0x0001b92d,0x000136e4},
769    {0x00000000,0x00000000,0x00009492,0x0000a49b,
770     0x000136e4,0x0001b724,0x0001b92d,0x0001b724},
771    {0x00000000,0x00000000,0x00009492,0x000124db,
772     0x000136e4,0x0001b724,0x0001b92d,0x0001b724},
773    {0x00000000,0x00000000,0x00009492,0x000124db,
774     0x000136e4,0x0001b925,0x0001b92d,0x0001b925},
775    {0x00000000,0x00000000,0x00009492,0x000124db,
776     0x0001b724,0x0001b925,0x0001c96e,0x0001c92d},
777    {0x00000000,0x00000000,0x0000a492,0x000124db,
778     0x0001b724,0x0001c92d,0x0001c96e,0x0001c92d},
779    {0x00000000,0x00000000,0x0000a492,0x000124db,
780     0x0001b724,0x0001c92d,0x00024b76,0x0002496e},
781    {0x00000000,0x00000000,0x00012492,0x000126db,
782     0x0001c924,0x00024b6d,0x0002ddb6,0x00025bbf},
783    {0x00000000,0x00000000,0x00000000,0x00000000,
784     0x00000000,0x00000000,0x00000000,0x00000000}
785   },
786   { /* version 6, passes 1 */
787    {0x00000000,0x00000000,0x00001249,0x00001249,
788     0x0000124a,0x0000124a,0x00001252,0x00001252},
789    {0x00000000,0x00000000,0x00001249,0x00009292,
790     0x00009492,0x00009252,0x00001252,0x00001252},
791    {0x00000000,0x00000000,0x0000924a,0x00009493,
792     0x0000a493,0x00009292,0x00001252,0x00001252},
793    {0x00000000,0x00000000,0x0000924a,0x0000a49b,
794     0x0000a493,0x0000a49b,0x00009292,0x00009292},
795    {0x00000000,0x00000000,0x0000924a,0x0000a49b,
796     0x0000a493,0x0000a49b,0x00009292,0x00009292},
797    {0x00000000,0x00000000,0x0000924a,0x0000a49b,
798     0x0001249b,0x0000a49b,0x00009493,0x00009292},
799    {0x00000000,0x00000000,0x0000924a,0x0000a49b,
800     0x000124db,0x000124db,0x00009493,0x00009493},
801    {0x00000000,0x00000000,0x0000924a,0x0000a49b,
802     0x000124db,0x000124db,0x0000a49b,0x00009493},
803    {0x00000000,0x00000000,0x0000924a,0x000124db,
804     0x000126dc,0x000124db,0x0000a49b,0x00009493},
805    {0x00000000,0x00000000,0x0000924a,0x000124db,
806     0x000126dc,0x000126dc,0x0000a49b,0x0000a49b},
807    {0x00000000,0x00000000,0x0000924a,0x000124db,
808     0x000136e4,0x000126dc,0x000124db,0x0000a49b},
809    {0x00000000,0x00000000,0x00009492,0x000126db,
810     0x000136e4,0x000126dc,0x000124db,0x0000a49b},
811    {0x00000000,0x00000000,0x00009492,0x000126db,
812     0x0001b724,0x000136e4,0x000126dc,0x000124db},
813    {0x00000000,0x00000000,0x00009492,0x000126db,
814     0x0001b724,0x000136e4,0x000126dc,0x000124db},
815    {0x00000000,0x00000000,0x0000a492,0x000136db,
816     0x0001c924,0x0001b724,0x000136e4,0x000126dc},
817    {0x00000000,0x00000000,0x00000000,0x00000000,
818     0x00000000,0x00000000,0x00000000,0x00000000}
819   }
820  },
821  { /* version 7 */
822   { /* version 7, passes 0 */
823    {0x00000000,0x00000000,0x00001249,0x00001249,
824     0x00009252,0x00009292,0x00009493,0x00009493},
825    {0x00000000,0x00000000,0x00001249,0x00009493,
826     0x0000a493,0x000124db,0x000126dc,0x00009493},
827    {0x00000000,0x00000000,0x00001249,0x0000a49b,
828     0x0001249b,0x000126dc,0x000126dc,0x0000a49b},
829    {0x00000000,0x00000000,0x0000924a,0x0000a49b,
830     0x0001249b,0x000126dc,0x000136e4,0x0000a49b},
831    {0x00000000,0x00000000,0x0000924a,0x0000a49b,
832     0x000126dc,0x000136e4,0x0001b725,0x000124db},
833    {0x00000000,0x00000000,0x00009292,0x0000a49b,
834     0x000136e4,0x0001b724,0x0001b725,0x000126dc},
835    {0x00000000,0x00000000,0x00009292,0x000124db,
836     0x000136e4,0x0001b724,0x0001b725,0x000126dc},
837    {0x00000000,0x00000000,0x00009492,0x000124db,
838     0x000136e4,0x0001b724,0x0001c96e,0x000136e4},
839    {0x00000000,0x00000000,0x00009492,0x000124db,
840     0x000136e4,0x0001c92d,0x0001c96e,0x0001b724},
841    {0x00000000,0x00000000,0x0000a492,0x000124db,
842     0x000136e4,0x0001c92d,0x0001c96e,0x0001b724},
843    {0x00000000,0x00000000,0x0000a492,0x000124db,
844     0x0001b724,0x0001c92d,0x0001c96e,0x0001b925},
845    {0x00000000,0x00000000,0x0000a492,0x000126db,
846     0x0001b724,0x0001c92d,0x00024b76,0x0001c92d},
847    {0x00000000,0x00000000,0x0000a492,0x000126db,
848     0x0001b924,0x0001c92d,0x00024b76,0x0001c92d},
849    {0x00000000,0x00000000,0x0000a492,0x000126db,
850     0x0001b924,0x0001c92d,0x00024b76,0x0002496e},
851    {0x00000000,0x00000000,0x00012492,0x000136db,
852     0x00024924,0x00024b6d,0x0002ddb6,0x00025bbf},
853    {0x00000000,0x00000000,0x00000000,0x00000000,
854     0x00000000,0x00000000,0x00000000,0x00000000}
855   },
856   { /* version 7, passes 1 */
857    {0x00000000,0x00000000,0x00001249,0x00001249,
858     0x0000124a,0x0000124a,0x00001252,0x00001252},
859    {0x00000000,0x00000000,0x0000924a,0x00009493,
860     0x00009492,0x00009292,0x00001252,0x00001252},
861    {0x00000000,0x00000000,0x0000924a,0x0000a49b,
862     0x0000a493,0x0000a49b,0x00001252,0x00001252},
863    {0x00000000,0x00000000,0x0000924a,0x0000a49b,
864     0x0000a493,0x0000a49b,0x00009292,0x00009292},
865    {0x00000000,0x00000000,0x0000924a,0x0000a49b,
866     0x0000a493,0x0000a49b,0x00009292,0x00009292},
867    {0x00000000,0x00000000,0x0000924a,0x0000a49b,
868     0x000126dc,0x0000a49b,0x00009493,0x00009292},
869    {0x00000000,0x00000000,0x0000924a,0x000124db,
870     0x000126dc,0x000124db,0x00009493,0x00009493},
871    {0x00000000,0x00000000,0x0000924a,0x000124db,
872     0x000136e4,0x000124db,0x0000a49b,0x00009493},
873    {0x00000000,0x00000000,0x0000924a,0x000136db,
874     0x0001b724,0x000124db,0x0000a49b,0x00009493},
875    {0x00000000,0x00000000,0x0000924a,0x000136db,
876     0x0001b724,0x000126dc,0x0000a49b,0x0000a49b},
877    {0x00000000,0x00000000,0x00009292,0x000136db,
878     0x0001b724,0x000126dc,0x000124db,0x0000a49b},
879    {0x00000000,0x00000000,0x00009492,0x000136db,
880     0x0001b724,0x000126dc,0x000124db,0x0000a49b},
881    {0x00000000,0x00000000,0x0000a492,0x000136db,
882     0x0001b724,0x000136e4,0x000126dc,0x000124db},
883    {0x00000000,0x00000000,0x0000a492,0x000136db,
884     0x0001b724,0x000136e4,0x000126dc,0x000124db},
885    {0x00000000,0x00000000,0x00012492,0x0001b6db,
886     0x0001c924,0x0001b724,0x000136e4,0x000126dc},
887    {0x00000000,0x00000000,0x00000000,0x00000000,
888     0x00000000,0x00000000,0x00000000,0x00000000}
889   }
890  }
891 };
892