more callbacks
[xboard.git] / bitmaps / bitmaps.h
1 /*\r
2  * bitmaps.h - Include bitmap files for pieces and icons\r
3  *\r
4  * Copyright 1991 by Digital Equipment Corporation, Maynard,\r
5  * Massachusetts.\r
6  *\r
7  * Enhancements Copyright 1992-2001, 2002, 2003, 2004, 2005, 2006,\r
8  * 2007, 2008, 2009 Free Software Foundation, Inc.\r
9  *\r
10  * The following terms apply to Digital Equipment Corporation's copyright\r
11  * interest in XBoard:\r
12  * ------------------------------------------------------------------------\r
13  * All Rights Reserved\r
14  *\r
15  * Permission to use, copy, modify, and distribute this software and its\r
16  * documentation for any purpose and without fee is hereby granted,\r
17  * provided that the above copyright notice appear in all copies and that\r
18  * both that copyright notice and this permission notice appear in\r
19  * supporting documentation, and that the name of Digital not be\r
20  * used in advertising or publicity pertaining to distribution of the\r
21  * software without specific, written prior permission.\r
22  *\r
23  * DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING\r
24  * ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL\r
25  * DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR\r
26  * ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,\r
27  * WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,\r
28  * ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS\r
29  * SOFTWARE.\r
30  * ------------------------------------------------------------------------\r
31  *\r
32  * The following terms apply to the enhanced version of XBoard\r
33  * distributed by the Free Software Foundation:\r
34  * ------------------------------------------------------------------------\r
35  *\r
36  * GNU XBoard is free software: you can redistribute it and/or modify\r
37  * it under the terms of the GNU General Public License as published by\r
38  * the Free Software Foundation, either version 3 of the License, or (at\r
39  * your option) any later version.\r
40  *\r
41  * GNU XBoard is distributed in the hope that it will be useful, but\r
42  * WITHOUT ANY WARRANTY; without even the implied warranty of\r
43  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU\r
44  * General Public License for more details.\r
45  *\r
46  * You should have received a copy of the GNU General Public License\r
47  * along with this program. If not, see http://www.gnu.org/licenses/.  *\r
48  *\r
49  *------------------------------------------------------------------------\r
50  ** See the file ChangeLog for a revision history.  */\r
51 \r
52 // [HGM] Note: the bitmaps for Shogi promoted pieces are #included, but not referred to in the list bitmapBits.\r
53 //       The front-end would have to substitutes them for some listed pieces, in variant shogi.\r
54 //       It would also have to replace the Queen bitmap with that of the Lance.\r
55 //       The Japanese-style Shogi symbols for size 58 are not included at all. To have those\r
56 //       you would have to convert the WinBoard .bmp files in the shogibitmaps folder with convert.c\r
57 \r
58 \r
59 #include "p129s.bm"\r
60 #include "n129s.bm"\r
61 #include "b129s.bm"\r
62 #include "r129s.bm"\r
63 #include "q129s.bm"\r
64 #include "k129s.bm"\r
65 \r
66 #include "p129o.bm"\r
67 #include "n129o.bm"\r
68 #include "b129o.bm"\r
69 #include "r129o.bm"\r
70 #include "q129o.bm"\r
71 #include "k129o.bm"\r
72 \r
73 #include "p116s.bm"\r
74 #include "n116s.bm"\r
75 #include "b116s.bm"\r
76 #include "r116s.bm"\r
77 #include "q116s.bm"\r
78 #include "k116s.bm"\r
79 \r
80 #include "p116o.bm"\r
81 #include "n116o.bm"\r
82 #include "b116o.bm"\r
83 #include "r116o.bm"\r
84 #include "q116o.bm"\r
85 #include "k116o.bm"\r
86 \r
87 #include "p108s.bm"\r
88 #include "n108s.bm"\r
89 #include "b108s.bm"\r
90 #include "r108s.bm"\r
91 #include "q108s.bm"\r
92 #include "k108s.bm"\r
93 \r
94 #include "p108o.bm"\r
95 #include "n108o.bm"\r
96 #include "b108o.bm"\r
97 #include "r108o.bm"\r
98 #include "q108o.bm"\r
99 #include "k108o.bm"\r
100 \r
101 #include "p95s.bm"\r
102 #include "n95s.bm"\r
103 #include "b95s.bm"\r
104 #include "r95s.bm"\r
105 #include "q95s.bm"\r
106 #include "k95s.bm"\r
107 \r
108 #include "p95o.bm"\r
109 #include "n95o.bm"\r
110 #include "b95o.bm"\r
111 #include "r95o.bm"\r
112 #include "q95o.bm"\r
113 #include "k95o.bm"\r
114 \r
115 #include "p87s.bm"\r
116 #include "n87s.bm"\r
117 #include "b87s.bm"\r
118 #include "r87s.bm"\r
119 #include "q87s.bm"\r
120 #include "k87s.bm"\r
121 \r
122 #include "p87o.bm"\r
123 #include "n87o.bm"\r
124 #include "b87o.bm"\r
125 #include "r87o.bm"\r
126 #include "q87o.bm"\r
127 #include "k87o.bm"\r
128 \r
129 #include "p80s.bm"\r
130 #include "n80s.bm"\r
131 #include "b80s.bm"\r
132 #include "r80s.bm"\r
133 #include "q80s.bm"\r
134 #include "k80s.bm"\r
135 \r
136 #include "p80o.bm"\r
137 #include "n80o.bm"\r
138 #include "b80o.bm"\r
139 #include "r80o.bm"\r
140 #include "q80o.bm"\r
141 #include "k80o.bm"\r
142 \r
143 #include "p72s.bm"\r
144 #include "n72s.bm"\r
145 #include "b72s.bm"\r
146 #include "r72s.bm"\r
147 #include "q72s.bm"\r
148 #include "f72s.bm"\r
149 #include "e72s.bm"\r
150 #include "a72s.bm"\r
151 #include "c72s.bm"\r
152 #include "w72s.bm"\r
153 #include "m72s.bm"\r
154 #include "o72s.bm"\r
155 #include "h72s.bm"\r
156 #include "i72s.bm"\r
157 #include "j72s.bm"\r
158 #include "g72s.bm"\r
159 #include "d72s.bm"\r
160 #include "v72s.bm"\r
161 #include "l72s.bm"\r
162 #include "s72s.bm"\r
163 #include "u72s.bm"\r
164 #include "k72s.bm"\r
165 #include "wp72s.bm"\r
166 #include "wl72s.bm"\r
167 #include "wn72s.bm"\r
168 #include "ws72s.bm"\r
169 \r
170 #include "p72o.bm"\r
171 #include "n72o.bm"\r
172 #include "b72o.bm"\r
173 #include "r72o.bm"\r
174 #include "q72o.bm"\r
175 #include "f72o.bm"\r
176 #include "e72o.bm"\r
177 #include "a72o.bm"\r
178 #include "c72o.bm"\r
179 #include "w72o.bm"\r
180 #include "m72o.bm"\r
181 #include "o72o.bm"\r
182 #include "h72o.bm"\r
183 #include "i72o.bm"\r
184 #include "j72o.bm"\r
185 #include "g72o.bm"\r
186 #include "d72o.bm"\r
187 #include "v72o.bm"\r
188 #include "l72o.bm"\r
189 #include "s72o.bm"\r
190 #include "u72o.bm"\r
191 #include "k72o.bm"\r
192 #include "wp72o.bm"\r
193 #include "wl72o.bm"\r
194 #include "wn72o.bm"\r
195 #include "ws72o.bm"\r
196 \r
197 #include "p64s.bm"\r
198 #include "n64s.bm"\r
199 #include "b64s.bm"\r
200 #include "r64s.bm"\r
201 #include "q64s.bm"\r
202 #include "a64s.bm"\r
203 #include "c64s.bm"\r
204 #include "d64s.bm"\r
205 #include "l64s.bm"\r
206 #include "k64s.bm"\r
207 \r
208 #include "p64o.bm"\r
209 #include "n64o.bm"\r
210 #include "b64o.bm"\r
211 #include "r64o.bm"\r
212 #include "q64o.bm"\r
213 #include "a64o.bm"\r
214 #include "c64o.bm"\r
215 #include "d64o.bm"\r
216 #include "l64o.bm"\r
217 #include "k64o.bm"\r
218 \r
219 #include "p58s.bm"\r
220 #include "n58s.bm"\r
221 #include "b58s.bm"\r
222 #include "r58s.bm"\r
223 #include "q58s.bm"\r
224 #include "a58s.bm"\r
225 #include "c58s.bm"\r
226 #include "d58s.bm"\r
227 #include "l58s.bm"\r
228 #include "k58s.bm"\r
229 \r
230 #include "p58o.bm"\r
231 #include "n58o.bm"\r
232 #include "b58o.bm"\r
233 #include "r58o.bm"\r
234 #include "q58o.bm"\r
235 #include "a58o.bm"\r
236 #include "c58o.bm"\r
237 #include "d58o.bm"\r
238 #include "l58o.bm"\r
239 #include "k58o.bm"\r
240 \r
241 #include "p54s.bm"\r
242 #include "n54s.bm"\r
243 #include "b54s.bm"\r
244 #include "r54s.bm"\r
245 #include "q54s.bm"\r
246 #include "a54s.bm"\r
247 #include "c54s.bm"\r
248 #include "d54s.bm"\r
249 #include "l54s.bm"\r
250 #include "k54s.bm"\r
251 \r
252 #include "p54o.bm"\r
253 #include "n54o.bm"\r
254 #include "b54o.bm"\r
255 #include "r54o.bm"\r
256 #include "q54o.bm"\r
257 #include "a54o.bm"\r
258 #include "c54o.bm"\r
259 #include "d54o.bm"\r
260 #include "l54o.bm"\r
261 #include "k54o.bm"\r
262 \r
263 #include "p49s.bm"\r
264 #include "n49s.bm"\r
265 #include "b49s.bm"\r
266 #include "r49s.bm"\r
267 #include "q49s.bm"\r
268 #include "f49s.bm"\r
269 #include "e49s.bm"\r
270 #include "a49s.bm"\r
271 #include "c49s.bm"\r
272 #include "w49s.bm"\r
273 #include "m49s.bm"\r
274 #include "o49s.bm"\r
275 #include "h49s.bm"\r
276 #include "i49s.bm"\r
277 #include "j49s.bm"\r
278 #include "g49s.bm"\r
279 #include "d49s.bm"\r
280 #include "v49s.bm"\r
281 #include "l49s.bm"\r
282 #include "s49s.bm"\r
283 #include "u49s.bm"\r
284 #include "k49s.bm"\r
285 #include "wp49s.bm"\r
286 #include "wl49s.bm"\r
287 #include "wn49s.bm"\r
288 #include "ws49s.bm"\r
289 \r
290 #include "p49o.bm"\r
291 #include "n49o.bm"\r
292 #include "b49o.bm"\r
293 #include "r49o.bm"\r
294 #include "q49o.bm"\r
295 #include "f49o.bm"\r
296 #include "e49o.bm"\r
297 #include "a49o.bm"\r
298 #include "c49o.bm"\r
299 #include "w49o.bm"\r
300 #include "m49o.bm"\r
301 #include "o49o.bm"\r
302 #include "h49o.bm"\r
303 #include "i49o.bm"\r
304 #include "j49o.bm"\r
305 #include "g49o.bm"\r
306 #include "d49o.bm"\r
307 #include "v49o.bm"\r
308 #include "l49o.bm"\r
309 #include "s49o.bm"\r
310 #include "u49o.bm"\r
311 #include "k49o.bm"\r
312 #include "wp49o.bm"\r
313 #include "wl49o.bm"\r
314 #include "wn49o.bm"\r
315 #include "ws49o.bm"\r
316 \r
317 #include "p45s.bm"\r
318 #include "n45s.bm"\r
319 #include "b45s.bm"\r
320 #include "r45s.bm"\r
321 #include "q45s.bm"\r
322 #include "a45s.bm"\r
323 #include "c45s.bm"\r
324 #include "d45s.bm"\r
325 #include "l45s.bm"\r
326 #include "k45s.bm"\r
327 \r
328 #include "p45o.bm"\r
329 #include "n45o.bm"\r
330 #include "b45o.bm"\r
331 #include "r45o.bm"\r
332 #include "q45o.bm"\r
333 #include "a45o.bm"\r
334 #include "c45o.bm"\r
335 #include "d45o.bm"\r
336 #include "l45o.bm"\r
337 #include "k45o.bm"\r
338 \r
339 #include "p40s.bm"\r
340 #include "n40s.bm"\r
341 #include "b40s.bm"\r
342 #include "r40s.bm"\r
343 #include "q40s.bm"\r
344 #include "a40s.bm"\r
345 #include "c40s.bm"\r
346 #include "d40s.bm"\r
347 #include "l40s.bm"\r
348 #include "k40s.bm"\r
349 \r
350 #include "p40o.bm"\r
351 #include "n40o.bm"\r
352 #include "b40o.bm"\r
353 #include "r40o.bm"\r
354 #include "q40o.bm"\r
355 #include "a40o.bm"\r
356 #include "c40o.bm"\r
357 #include "d40o.bm"\r
358 #include "l40o.bm"\r
359 #include "k40o.bm"\r
360 \r
361 #include "p37s.bm"\r
362 #include "n37s.bm"\r
363 #include "b37s.bm"\r
364 #include "r37s.bm"\r
365 #include "q37s.bm"\r
366 #include "a37s.bm"\r
367 #include "c37s.bm"\r
368 #include "d37s.bm"\r
369 #include "l37s.bm"\r
370 #include "k37s.bm"\r
371 \r
372 #include "p37o.bm"\r
373 #include "n37o.bm"\r
374 #include "b37o.bm"\r
375 #include "r37o.bm"\r
376 #include "q37o.bm"\r
377 #include "a37o.bm"\r
378 #include "c37o.bm"\r
379 #include "d37o.bm"\r
380 #include "l37o.bm"\r
381 #include "k37o.bm"\r
382 \r
383 #include "p33s.bm"\r
384 #include "n33s.bm"\r
385 #include "b33s.bm"\r
386 #include "r33s.bm"\r
387 #include "q33s.bm"\r
388 #include "f33s.bm"\r
389 #include "e33s.bm"\r
390 #include "a33s.bm"\r
391 #include "c33s.bm"\r
392 #include "w33s.bm"\r
393 #include "m33s.bm"\r
394 #include "o33s.bm"\r
395 #include "h33s.bm"\r
396 #include "i33s.bm"\r
397 #include "j33s.bm"\r
398 #include "g33s.bm"\r
399 #include "d33s.bm"\r
400 #include "l33s.bm"\r
401 #include "k33s.bm"\r
402 \r
403 #include "p33o.bm"\r
404 #include "n33o.bm"\r
405 #include "b33o.bm"\r
406 #include "r33o.bm"\r
407 #include "q33o.bm"\r
408 #include "f33o.bm"\r
409 #include "e33o.bm"\r
410 #include "a33o.bm"\r
411 #include "c33o.bm"\r
412 #include "w33o.bm"\r
413 #include "m33o.bm"\r
414 #include "o33o.bm"\r
415 #include "h33o.bm"\r
416 #include "i33o.bm"\r
417 #include "j33o.bm"\r
418 #include "g33o.bm"\r
419 #include "d33o.bm"\r
420 #include "l33o.bm"\r
421 #include "k33o.bm"\r
422 \r
423 #include "p29s.bm"\r
424 #include "n29s.bm"\r
425 #include "b29s.bm"\r
426 #include "r29s.bm"\r
427 #include "q29s.bm"\r
428 #include "k29s.bm"\r
429 \r
430 #include "p29o.bm"\r
431 #include "n29o.bm"\r
432 #include "b29o.bm"\r
433 #include "r29o.bm"\r
434 #include "q29o.bm"\r
435 #include "k29o.bm"\r
436 \r
437 #include "p25s.bm"\r
438 #include "n25s.bm"\r
439 #include "b25s.bm"\r
440 #include "r25s.bm"\r
441 #include "q25s.bm"\r
442 #include "k25s.bm"\r
443 \r
444 #include "p25o.bm"\r
445 #include "n25o.bm"\r
446 #include "b25o.bm"\r
447 #include "r25o.bm"\r
448 #include "q25o.bm"\r
449 #include "k25o.bm"\r
450 \r
451 #include "p21s.bm"\r
452 #include "n21s.bm"\r
453 #include "b21s.bm"\r
454 #include "r21s.bm"\r
455 #include "q21s.bm"\r
456 #include "k21s.bm"\r
457 \r
458 #include "p21o.bm"\r
459 #include "n21o.bm"\r
460 #include "b21o.bm"\r
461 #include "r21o.bm"\r
462 #include "q21o.bm"\r
463 #include "k21o.bm"\r
464 \r
465 typedef struct {\r
466     int squareSize;\r
467     unsigned char *bits[2][(int)BlackPawn+4];\r
468 } BuiltInBits;\r
469 \r
470 BuiltInBits builtInBits[] = {\\r
471 { 129,\\r
472   { { p129s_bits, n129s_bits, b129s_bits, r129s_bits, q129s_bits, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, k129s_bits, NULL, NULL, NULL, NULL },\\r
473     { p129o_bits, n129o_bits, b129o_bits, r129o_bits, q129o_bits, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, k129o_bits, NULL, NULL, NULL, NULL } } },\\r
474 { 116,\\r
475   { { p116s_bits, n116s_bits, b116s_bits, r116s_bits, q116s_bits, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, k116s_bits, NULL, NULL, NULL, NULL },\\r
476     { p116o_bits, n116o_bits, b116o_bits, r116o_bits, q116o_bits, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, k116o_bits, NULL, NULL, NULL, NULL } } },\\r
477 { 108,\\r
478   { { p108s_bits, n108s_bits, b108s_bits, r108s_bits, q108s_bits, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, k108s_bits, NULL, NULL, NULL, NULL },\\r
479     { p108o_bits, n108o_bits, b108o_bits, r108o_bits, q108o_bits, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, k108o_bits, NULL, NULL, NULL, NULL } } },\\r
480 { 95,\\r
481   { { p95s_bits, n95s_bits, b95s_bits, r95s_bits, q95s_bits, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, k95s_bits, NULL, NULL, NULL, NULL },\\r
482     { p95o_bits, n95o_bits, b95o_bits, r95o_bits, q95o_bits, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, k95o_bits, NULL, NULL, NULL, NULL } } },\\r
483 { 87,\\r
484   { { p87s_bits, n87s_bits, b87s_bits, r87s_bits, q87s_bits, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, k87s_bits, NULL, NULL, NULL, NULL },\\r
485     { p87o_bits, n87o_bits, b87o_bits, r87o_bits, q87o_bits, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, k87o_bits, NULL, NULL, NULL, NULL } } },\\r
486 { 80,\\r
487   { { p80s_bits, n80s_bits, b80s_bits, r80s_bits, q80s_bits, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, k80s_bits, NULL, NULL, NULL, NULL },\\r
488     { p80o_bits, n80o_bits, b80o_bits, r80o_bits, q80o_bits, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, k80o_bits }, NULL, NULL, NULL, NULL } },\\r
489 { 72,\\r
490   { { p72s_bits, n72s_bits, b72s_bits, r72s_bits, q72s_bits, f72s_bits, e72s_bits, a72s_bits, c72s_bits, w72s_bits, m72s_bits, o72s_bits, h72s_bits, i72s_bits, j72s_bits, g72s_bits, d72s_bits, v72s_bits, l72s_bits, s72s_bits, u72s_bits, k72s_bits, wp_72s_bits, wn_72s_bits, ws_72s_bits, wl_72s_bits },\\r
491     { p72o_bits, n72o_bits, b72o_bits, r72o_bits, q72o_bits, f72o_bits, e72o_bits, a72o_bits, c72o_bits, w72o_bits, m72o_bits, o72o_bits, h72o_bits, i72o_bits, j72o_bits, g72o_bits, d72o_bits, v72o_bits, l72o_bits, s72o_bits, u72o_bits, k72o_bits, wp_72o_bits, wn_72o_bits, ws_72o_bits, wl_72o_bits } } },\\r
492 { 64,\\r
493   { { p64s_bits, n64s_bits, b64s_bits, r64s_bits, q64s_bits, l64s_bits, l64s_bits, a64s_bits, c64s_bits, l64s_bits, l64s_bits, l64s_bits, l64s_bits, l64s_bits, l64s_bits, l64s_bits, d64s_bits, l64s_bits, l64s_bits, l64s_bits, l64s_bits, k64s_bits, l64s_bits, l64s_bits, l64s_bits, l64s_bits },\\r
494     { p64o_bits, n64o_bits, b64o_bits, r64o_bits, q64o_bits, l64o_bits, l64o_bits, a64o_bits, c64o_bits, l64o_bits, l64o_bits, l64o_bits, l64o_bits, l64o_bits, l64o_bits, l64o_bits, d64o_bits, l64o_bits, l64o_bits, l64o_bits, l64o_bits, k64o_bits, l64o_bits, l64o_bits, l64o_bits, l64o_bits } } },\\r
495 { 58,\\r
496   { { p58s_bits, n58s_bits, b58s_bits, r58s_bits, q58s_bits, l58s_bits, l58s_bits, a58s_bits, c58s_bits, l58s_bits, l58s_bits, l58s_bits, l58s_bits, l58s_bits, l58s_bits, l58s_bits, d58s_bits, l58s_bits, l58s_bits, l58s_bits, l58s_bits, k58s_bits, l58s_bits, l58s_bits, l58s_bits, l58s_bits },\\r
497     { p58o_bits, n58o_bits, b58o_bits, r58o_bits, q58o_bits, l58o_bits, l58o_bits, a58o_bits, c58o_bits, l58o_bits, l58o_bits, l58o_bits, l58o_bits, l58o_bits, l58o_bits, l58o_bits, d58o_bits, l58o_bits, l58o_bits, l58o_bits, l58o_bits, k58o_bits, l58o_bits, l58o_bits, l58o_bits, l58o_bits } } },\\r
498 { 54,\\r
499   { { p54s_bits, n54s_bits, b54s_bits, r54s_bits, q54s_bits, l54s_bits, l54s_bits, a54s_bits, c54s_bits, l54s_bits, l54s_bits, l54s_bits, l54s_bits, l54s_bits, l54s_bits, l54s_bits, d54s_bits, l54s_bits, l54s_bits, l54s_bits, l54s_bits, k54s_bits, l54s_bits, l54s_bits, l54s_bits, l54s_bits },\\r
500     { p54o_bits, n54o_bits, b54o_bits, r54o_bits, q54o_bits, l54o_bits, l54o_bits, a54o_bits, c54o_bits, l54o_bits, l54o_bits, l54o_bits, l54o_bits, l54o_bits, l54o_bits, l54o_bits, d54o_bits, l54o_bits, l54o_bits, l54o_bits, l54o_bits, k54o_bits, l54o_bits, l54o_bits, l54o_bits, l54o_bits } } },\\r
501 { 49,\\r
502   { { p49s_bits, n49s_bits, b49s_bits, r49s_bits, q49s_bits, f49s_bits, e49s_bits, a49s_bits, c49s_bits, w49s_bits, m49s_bits, o49s_bits, h49s_bits, i49s_bits, j49s_bits, g49s_bits, d49s_bits, v49s_bits, l49s_bits, s49s_bits, u49s_bits, k49s_bits, wp49s_bits, wn49s_bits, ws49s_bits, wl49s_bits },\\r
503     { p49o_bits, n49o_bits, b49o_bits, r49o_bits, q49o_bits, f49o_bits, e49o_bits, a49o_bits, c49o_bits, w49o_bits, m49o_bits, o49o_bits, h49o_bits, i49s_bits, j49o_bits, g49o_bits, d49o_bits, v49o_bits, l49o_bits, s49o_bits, u49o_bits, k49o_bits, wp49o_bits, wn49o_bits, ws49o_bits, wl49o_bits } } },\\r
504 { 45,\\r
505   { { p45s_bits, n45s_bits, b45s_bits, r45s_bits, q45s_bits, l45s_bits, l45s_bits, a45s_bits, c45s_bits, l45s_bits, l45s_bits, l45s_bits, l45s_bits, l45s_bits, l45s_bits, l45s_bits, d45s_bits, l45s_bits, l45s_bits, l45s_bits, l45s_bits, k45s_bits, l45s_bits, l45s_bits, l45s_bits, l45s_bits },\\r
506     { p45o_bits, n45o_bits, b45o_bits, r45o_bits, q45o_bits, l45o_bits, l45o_bits, a45o_bits, c45o_bits, l45o_bits, l45o_bits, l45o_bits, l45o_bits, l45o_bits, l45o_bits, l45o_bits, d45o_bits, l45o_bits, l45o_bits, l45o_bits, l45o_bits, k45o_bits, l45o_bits, l45o_bits, l45o_bits, l45o_bits } } },\\r
507 { 40,\\r
508   { { p40s_bits, n40s_bits, b40s_bits, r40s_bits, q40s_bits, l40s_bits, l40s_bits, a40s_bits, c40s_bits, l40s_bits, l40s_bits, l40s_bits, l40s_bits, l40s_bits, l40s_bits, l40s_bits, d40s_bits, l40s_bits, l40s_bits, l40s_bits, l40s_bits, k40s_bits, l40s_bits, l40s_bits, l40s_bits, l40s_bits },\\r
509     { p40o_bits, n40o_bits, b40o_bits, r40o_bits, q40o_bits, l40o_bits, l40o_bits, a40o_bits, c40o_bits, l40o_bits, l40o_bits, l40o_bits, l40o_bits, l40o_bits, l40o_bits, l40o_bits, d40o_bits, l40o_bits, l40o_bits, l40o_bits, l40o_bits, k40o_bits, l40o_bits, l40o_bits, l40o_bits, l40o_bits } } },\\r
510 { 37,\\r
511   { { p37s_bits, n37s_bits, b37s_bits, r37s_bits, q37s_bits, l37s_bits, l37s_bits, a37s_bits, c37s_bits, l37s_bits, l37s_bits, l37s_bits, l37s_bits, l37s_bits, l37s_bits, l37s_bits, d37s_bits, l37s_bits, l37s_bits, l37s_bits, l37s_bits, k37s_bits, l37s_bits, l37s_bits, l37s_bits, l37s_bits },\\r
512     { p37o_bits, n37o_bits, b37o_bits, r37o_bits, q37o_bits, l37o_bits, l37o_bits, a37o_bits, c37o_bits, l37o_bits, l37o_bits, l37o_bits, l37o_bits, l37o_bits, l37o_bits, l37o_bits, d37o_bits, l37o_bits, l37o_bits, l37o_bits, l37o_bits, k37o_bits, l37o_bits, l37o_bits, l37o_bits, l37o_bits } } },\\r
513 { 33,\\r
514   { { p33s_bits, n33s_bits, b33s_bits, r33s_bits, q33s_bits, f33s_bits, e33s_bits, a33s_bits, c33s_bits, w33s_bits, m33s_bits, o33s_bits, h33s_bits, a33s_bits, j33s_bits, g33s_bits, d33s_bits, l33s_bits, d33s_bits, l33s_bits, l33s_bits, k33s_bits, l33s_bits, l33s_bits, l33s_bits, l33s_bits },\\r
515     { p33o_bits, n33o_bits, b33o_bits, r33o_bits, q33o_bits, f33o_bits, e33o_bits, a33o_bits, c33o_bits, w33o_bits, m33o_bits, o33o_bits, h33o_bits, a33o_bits, j33o_bits, g33o_bits, d33o_bits, l33o_bits, d33o_bits, l33o_bits, l33o_bits, k33o_bits, l33o_bits, l33o_bits, l33o_bits, l33o_bits } } },\\r
516 { 29,\\r
517   { { p29s_bits, n29s_bits, b29s_bits, r29s_bits, q29s_bits, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, k29s_bits, NULL, NULL, NULL, NULL },\\r
518     { p29o_bits, n29o_bits, b29o_bits, r29o_bits, q29o_bits, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, k29o_bits, NULL, NULL, NULL, NULL } } },\\r
519 { 25,\\r
520   { { p25s_bits, n25s_bits, b25s_bits, r25s_bits, q25s_bits, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, k25s_bits, NULL, NULL, NULL, NULL },\\r
521     { p25o_bits, n25o_bits, b25o_bits, r25o_bits, q25o_bits, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, k25o_bits, NULL, NULL, NULL, NULL } } },\\r
522 { 21,\\r
523   { { p21s_bits, n21s_bits, b21s_bits, r21s_bits, q21s_bits, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, k21s_bits, NULL, NULL, NULL, NULL },\\r
524     { p21o_bits, n21o_bits, b21o_bits, r21o_bits, q21o_bits, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, k21o_bits, NULL, NULL, NULL, NULL } } },\\r
525 { 0,\\r
526   { { NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL },\\r
527     { NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL } } }\\r
528 };\r
529 \r
530 \r