Updated all files to GPL version 3.
[xboard.git] / bitmaps / bitmaps.h
1 /*\r
2  * bitmaps.h - Include bitmap files for pieces and icons\r
3  * $Id: bitmaps.h,v 2.1 2003/10/27 19:21:01 mann Exp $\r
4  *\r
5  *\r
6  * Copyright 1991 by Digital Equipment Corporation, Maynard,\r
7  * Massachusetts.  Enhancements Copyright\r
8  * 1992-2001,2002,2003,2004,2005,2006,2007,2008,2009 Free Software\r
9  * Foundation, Inc.\r
10  *\r
11  * The following terms apply to Digital Equipment Corporation's copyright\r
12  * interest in XBoard:\r
13  * ------------------------------------------------------------------------\r
14  * All Rights Reserved\r
15  *\r
16  * Permission to use, copy, modify, and distribute this software and its\r
17  * documentation for any purpose and without fee is hereby granted,\r
18  * provided that the above copyright notice appear in all copies and that\r
19  * both that copyright notice and this permission notice appear in\r
20  * supporting documentation, and that the name of Digital not be\r
21  * used in advertising or publicity pertaining to distribution of the\r
22  * software without specific, written prior permission.\r
23  *\r
24  * DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING\r
25  * ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL\r
26  * DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR\r
27  * ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,\r
28  * WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,\r
29  * ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS\r
30  * SOFTWARE.\r
31  * ------------------------------------------------------------------------\r
32  *\r
33  * The following terms apply to the enhanced version of XBoard\r
34  * distributed by the Free Software Foundation:\r
35  * ------------------------------------------------------------------------\r
36  *\r
37  * GNU XBoard is free software: you can redistribute it and/or modify\r
38  * it under the terms of the GNU General Public License as published by\r
39  * the Free Software Foundation, either version 3 of the License, or (at\r
40  * your option) any later version.\r
41  *\r
42  * GNU XBoard is distributed in the hope that it will be useful, but\r
43  * WITHOUT ANY WARRANTY; without even the implied warranty of\r
44  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU\r
45  * General Public License for more details.\r
46  *\r
47  * You should have received a copy of the GNU General Public License\r
48  * along with this program. If not, see http://www.gnu.org/licenses/.  *\r
49  *\r
50  *------------------------------------------------------------------------\r
51  ** See the file ChangeLog for a revision history.  */\r
52 \r
53 // [HGM] Note: the bitmaps for Shogi promoted pieces are #included, but not referred to in the list bitmapBits.\r
54 //       The front-end would have to substitutes them for some listed pieces, in variant shogi.\r
55 //       It would also have to replace the Queen bitmap with that of the Lance.\r
56 //       The Japanese-style Shogi symbols for size 58 are not included at all. To have those\r
57 //       you would have to convert the WinBoard .bmp files in the shogibitmaps folder with convert.c\r
58 \r
59 \r
60 #include "p129s.bm"\r
61 #include "n129s.bm"\r
62 #include "b129s.bm"\r
63 #include "r129s.bm"\r
64 #include "q129s.bm"\r
65 #include "k129s.bm"\r
66 \r
67 #include "p129o.bm"\r
68 #include "n129o.bm"\r
69 #include "b129o.bm"\r
70 #include "r129o.bm"\r
71 #include "q129o.bm"\r
72 #include "k129o.bm"\r
73 \r
74 #include "p116s.bm"\r
75 #include "n116s.bm"\r
76 #include "b116s.bm"\r
77 #include "r116s.bm"\r
78 #include "q116s.bm"\r
79 #include "k116s.bm"\r
80 \r
81 #include "p116o.bm"\r
82 #include "n116o.bm"\r
83 #include "b116o.bm"\r
84 #include "r116o.bm"\r
85 #include "q116o.bm"\r
86 #include "k116o.bm"\r
87 \r
88 #include "p108s.bm"\r
89 #include "n108s.bm"\r
90 #include "b108s.bm"\r
91 #include "r108s.bm"\r
92 #include "q108s.bm"\r
93 #include "k108s.bm"\r
94 \r
95 #include "p108o.bm"\r
96 #include "n108o.bm"\r
97 #include "b108o.bm"\r
98 #include "r108o.bm"\r
99 #include "q108o.bm"\r
100 #include "k108o.bm"\r
101 \r
102 #include "p95s.bm"\r
103 #include "n95s.bm"\r
104 #include "b95s.bm"\r
105 #include "r95s.bm"\r
106 #include "q95s.bm"\r
107 #include "k95s.bm"\r
108 \r
109 #include "p95o.bm"\r
110 #include "n95o.bm"\r
111 #include "b95o.bm"\r
112 #include "r95o.bm"\r
113 #include "q95o.bm"\r
114 #include "k95o.bm"\r
115 \r
116 #include "p87s.bm"\r
117 #include "n87s.bm"\r
118 #include "b87s.bm"\r
119 #include "r87s.bm"\r
120 #include "q87s.bm"\r
121 #include "k87s.bm"\r
122 \r
123 #include "p87o.bm"\r
124 #include "n87o.bm"\r
125 #include "b87o.bm"\r
126 #include "r87o.bm"\r
127 #include "q87o.bm"\r
128 #include "k87o.bm"\r
129 \r
130 #include "p80s.bm"\r
131 #include "n80s.bm"\r
132 #include "b80s.bm"\r
133 #include "r80s.bm"\r
134 #include "q80s.bm"\r
135 #include "k80s.bm"\r
136 \r
137 #include "p80o.bm"\r
138 #include "n80o.bm"\r
139 #include "b80o.bm"\r
140 #include "r80o.bm"\r
141 #include "q80o.bm"\r
142 #include "k80o.bm"\r
143 \r
144 #include "p72s.bm"\r
145 #include "n72s.bm"\r
146 #include "b72s.bm"\r
147 #include "r72s.bm"\r
148 #include "q72s.bm"\r
149 #include "f72s.bm"\r
150 #include "e72s.bm"\r
151 #include "a72s.bm"\r
152 #include "c72s.bm"\r
153 #include "w72s.bm"\r
154 #include "m72s.bm"\r
155 #include "o72s.bm"\r
156 #include "h72s.bm"\r
157 #include "dk72s.bm"\r
158 #include "g72s.bm"\r
159 #include "v72s.bm"\r
160 #include "l72s.bm"\r
161 #include "s72s.bm"\r
162 #include "u72s.bm"\r
163 #include "k72s.bm"\r
164 #include "wp72s.bm"\r
165 #include "wl72s.bm"\r
166 #include "wn72s.bm"\r
167 #include "ws72s.bm"\r
168 #include "as72s.bm"\r
169 #include "cv72s.bm"\r
170 #include "d72s.bm"\r
171 \r
172 #include "p72o.bm"\r
173 #include "n72o.bm"\r
174 #include "b72o.bm"\r
175 #include "r72o.bm"\r
176 #include "q72o.bm"\r
177 #include "f72o.bm"\r
178 #include "e72o.bm"\r
179 #include "a72o.bm"\r
180 #include "c72o.bm"\r
181 #include "w72o.bm"\r
182 #include "m72o.bm"\r
183 #include "o72o.bm"\r
184 #include "h72o.bm"\r
185 #include "dk72o.bm"\r
186 #include "g72o.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 #include "as72o.bm"\r
197 #include "cv72o.bm"\r
198 #include "d72o.bm"\r
199 \r
200 #include "p64s.bm"\r
201 #include "n64s.bm"\r
202 #include "b64s.bm"\r
203 #include "r64s.bm"\r
204 #include "q64s.bm"\r
205 #include "a64s.bm"\r
206 #include "c64s.bm"\r
207 #include "cv64s.bm"\r
208 #include "l64s.bm"\r
209 #include "k64s.bm"\r
210 \r
211 #include "p64o.bm"\r
212 #include "n64o.bm"\r
213 #include "b64o.bm"\r
214 #include "r64o.bm"\r
215 #include "q64o.bm"\r
216 #include "a64o.bm"\r
217 #include "c64o.bm"\r
218 #include "cv64o.bm"\r
219 #include "l64o.bm"\r
220 #include "k64o.bm"\r
221 \r
222 #include "p58s.bm"\r
223 #include "n58s.bm"\r
224 #include "b58s.bm"\r
225 #include "r58s.bm"\r
226 #include "q58s.bm"\r
227 #include "a58s.bm"\r
228 #include "c58s.bm"\r
229 #include "cv58s.bm"\r
230 #include "l58s.bm"\r
231 #include "k58s.bm"\r
232 \r
233 #include "p58o.bm"\r
234 #include "n58o.bm"\r
235 #include "b58o.bm"\r
236 #include "r58o.bm"\r
237 #include "q58o.bm"\r
238 #include "a58o.bm"\r
239 #include "c58o.bm"\r
240 #include "cv58o.bm"\r
241 #include "l58o.bm"\r
242 #include "k58o.bm"\r
243 \r
244 #include "p54s.bm"\r
245 #include "n54s.bm"\r
246 #include "b54s.bm"\r
247 #include "r54s.bm"\r
248 #include "q54s.bm"\r
249 #include "a54s.bm"\r
250 #include "c54s.bm"\r
251 #include "cv54s.bm"\r
252 #include "l54s.bm"\r
253 #include "k54s.bm"\r
254 \r
255 #include "p54o.bm"\r
256 #include "n54o.bm"\r
257 #include "b54o.bm"\r
258 #include "r54o.bm"\r
259 #include "q54o.bm"\r
260 #include "a54o.bm"\r
261 #include "c54o.bm"\r
262 #include "cv54o.bm"\r
263 #include "l54o.bm"\r
264 #include "k54o.bm"\r
265 \r
266 #include "p49s.bm"\r
267 #include "n49s.bm"\r
268 #include "b49s.bm"\r
269 #include "r49s.bm"\r
270 #include "q49s.bm"\r
271 #include "f49s.bm"\r
272 #include "e49s.bm"\r
273 #include "a49s.bm"\r
274 #include "c49s.bm"\r
275 #include "w49s.bm"\r
276 #include "m49s.bm"\r
277 #include "o49s.bm"\r
278 #include "h49s.bm"\r
279 #include "dk49s.bm"\r
280 #include "g49s.bm"\r
281 #include "v49s.bm"\r
282 #include "l49s.bm"\r
283 #include "s49s.bm"\r
284 #include "u49s.bm"\r
285 #include "k49s.bm"\r
286 #include "wp49s.bm"\r
287 #include "wl49s.bm"\r
288 #include "wn49s.bm"\r
289 #include "ws49s.bm"\r
290 #include "as49s.bm"\r
291 #include "cv49s.bm"\r
292 #include "d49s.bm"\r
293 \r
294 #include "p49o.bm"\r
295 #include "n49o.bm"\r
296 #include "b49o.bm"\r
297 #include "r49o.bm"\r
298 #include "q49o.bm"\r
299 #include "f49o.bm"\r
300 #include "e49o.bm"\r
301 #include "a49o.bm"\r
302 #include "c49o.bm"\r
303 #include "w49o.bm"\r
304 #include "m49o.bm"\r
305 #include "o49o.bm"\r
306 #include "h49o.bm"\r
307 #include "dk49o.bm"\r
308 #include "g49o.bm"\r
309 #include "v49o.bm"\r
310 #include "l49o.bm"\r
311 #include "s49o.bm"\r
312 #include "u49o.bm"\r
313 #include "k49o.bm"\r
314 #include "wp49o.bm"\r
315 #include "wl49o.bm"\r
316 #include "wn49o.bm"\r
317 #include "ws49o.bm"\r
318 #include "as49o.bm"\r
319 #include "cv49o.bm"\r
320 #include "d49o.bm"\r
321 \r
322 #include "p45s.bm"\r
323 #include "n45s.bm"\r
324 #include "b45s.bm"\r
325 #include "r45s.bm"\r
326 #include "q45s.bm"\r
327 #include "a45s.bm"\r
328 #include "c45s.bm"\r
329 #include "cv45s.bm"\r
330 #include "l45s.bm"\r
331 #include "k45s.bm"\r
332 \r
333 #include "p45o.bm"\r
334 #include "n45o.bm"\r
335 #include "b45o.bm"\r
336 #include "r45o.bm"\r
337 #include "q45o.bm"\r
338 #include "a45o.bm"\r
339 #include "c45o.bm"\r
340 #include "cv45o.bm"\r
341 #include "l45o.bm"\r
342 #include "k45o.bm"\r
343 \r
344 #include "p40s.bm"\r
345 #include "n40s.bm"\r
346 #include "b40s.bm"\r
347 #include "r40s.bm"\r
348 #include "q40s.bm"\r
349 #include "a40s.bm"\r
350 #include "c40s.bm"\r
351 #include "cv40s.bm"\r
352 #include "l40s.bm"\r
353 #include "k40s.bm"\r
354 \r
355 #include "p40o.bm"\r
356 #include "n40o.bm"\r
357 #include "b40o.bm"\r
358 #include "r40o.bm"\r
359 #include "q40o.bm"\r
360 #include "a40o.bm"\r
361 #include "c40o.bm"\r
362 #include "cv40o.bm"\r
363 #include "l40o.bm"\r
364 #include "k40o.bm"\r
365 \r
366 #include "p37s.bm"\r
367 #include "n37s.bm"\r
368 #include "b37s.bm"\r
369 #include "r37s.bm"\r
370 #include "q37s.bm"\r
371 #include "a37s.bm"\r
372 #include "c37s.bm"\r
373 #include "cv37s.bm"\r
374 #include "l37s.bm"\r
375 #include "k37s.bm"\r
376 \r
377 #include "p37o.bm"\r
378 #include "n37o.bm"\r
379 #include "b37o.bm"\r
380 #include "r37o.bm"\r
381 #include "q37o.bm"\r
382 #include "a37o.bm"\r
383 #include "c37o.bm"\r
384 #include "cv37o.bm"\r
385 #include "l37o.bm"\r
386 #include "k37o.bm"\r
387 \r
388 #include "p33s.bm"\r
389 #include "n33s.bm"\r
390 #include "b33s.bm"\r
391 #include "r33s.bm"\r
392 #include "q33s.bm"\r
393 #include "f33s.bm"\r
394 #include "e33s.bm"\r
395 #include "a33s.bm"\r
396 #include "c33s.bm"\r
397 #include "w33s.bm"\r
398 #include "m33s.bm"\r
399 #include "o33s.bm"\r
400 #include "h33s.bm"\r
401 #include "dk33s.bm"\r
402 #include "g33s.bm"\r
403 #include "cv33s.bm"\r
404 #include "l33s.bm"\r
405 #include "k33s.bm"\r
406 #include "as33s.bm"\r
407 \r
408 #include "p33o.bm"\r
409 #include "n33o.bm"\r
410 #include "b33o.bm"\r
411 #include "r33o.bm"\r
412 #include "q33o.bm"\r
413 #include "f33o.bm"\r
414 #include "e33o.bm"\r
415 #include "a33o.bm"\r
416 #include "c33o.bm"\r
417 #include "w33o.bm"\r
418 #include "m33o.bm"\r
419 #include "o33o.bm"\r
420 #include "h33o.bm"\r
421 #include "dk33o.bm"\r
422 #include "g33o.bm"\r
423 #include "cv33o.bm"\r
424 #include "l33o.bm"\r
425 #include "k33o.bm"\r
426 #include "as33o.bm"\r
427 \r
428 #include "p29s.bm"\r
429 #include "n29s.bm"\r
430 #include "b29s.bm"\r
431 #include "r29s.bm"\r
432 #include "q29s.bm"\r
433 #include "k29s.bm"\r
434 \r
435 #include "p29o.bm"\r
436 #include "n29o.bm"\r
437 #include "b29o.bm"\r
438 #include "r29o.bm"\r
439 #include "q29o.bm"\r
440 #include "k29o.bm"\r
441 \r
442 #include "p25s.bm"\r
443 #include "n25s.bm"\r
444 #include "b25s.bm"\r
445 #include "r25s.bm"\r
446 #include "q25s.bm"\r
447 #include "k25s.bm"\r
448 \r
449 #include "p25o.bm"\r
450 #include "n25o.bm"\r
451 #include "b25o.bm"\r
452 #include "r25o.bm"\r
453 #include "q25o.bm"\r
454 #include "k25o.bm"\r
455 \r
456 #include "p21s.bm"\r
457 #include "n21s.bm"\r
458 #include "b21s.bm"\r
459 #include "r21s.bm"\r
460 #include "q21s.bm"\r
461 #include "k21s.bm"\r
462 \r
463 #include "p21o.bm"\r
464 #include "n21o.bm"\r
465 #include "b21o.bm"\r
466 #include "r21o.bm"\r
467 #include "q21o.bm"\r
468 #include "k21o.bm"\r
469 \r
470 typedef struct {\r
471     int squareSize;\r
472     unsigned char *bits[2][(int)BlackPawn];\r
473 } BuiltInBits;\r
474 \r
475 BuiltInBits builtInBits[] = {\\r
476 { 129,\\r
477   { { 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 },\\r
478     { 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 } } },\\r
479 { 116,\\r
480   { { 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 },\\r
481     { 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 } } },\\r
482 { 108,\\r
483   { { 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 },\\r
484     { 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 } } },\\r
485 { 95,\\r
486   { { 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 },\\r
487     { 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 } } },\\r
488 { 87,\\r
489   { { 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 },\\r
490     { 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 } } },\\r
491 { 80,\\r
492   { { 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 },\\r
493     { 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 } } },\\r
494 { 72,\\r
495   { { p72s_bits, n72s_bits, b72s_bits, r72s_bits, q72s_bits, f72s_bits, e72s_bits, as72s_bits, c72s_bits, w72s_bits, m72s_bits, o72s_bits, h72s_bits, a72s_bits, dk72s_bits, g72s_bits, cv72s_bits, v72s_bits, l72s_bits, s72s_bits, u72s_bits, k72s_bits },\\r
496     { p72o_bits, n72o_bits, b72o_bits, r72o_bits, q72o_bits, f72o_bits, e72o_bits, as72o_bits, c72o_bits, w72o_bits, m72o_bits, o72o_bits, h72o_bits, a72o_bits, dk72o_bits, g72o_bits, cv72o_bits, v72o_bits, l72o_bits, s72o_bits, u72o_bits, k72o_bits } } },\\r
497 { 64,\\r
498   { { 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, cv64s_bits, l64s_bits, l64s_bits, l64s_bits, l64s_bits, k64s_bits },\\r
499     { 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, cv64o_bits, l64o_bits, l64o_bits, l64o_bits, l64o_bits, k64o_bits } } },\\r
500 { 58,\\r
501   { { 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, cv58s_bits, l58s_bits, l58s_bits, l58s_bits, l58s_bits, k58s_bits },\\r
502     { 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, cv58o_bits, l58o_bits, l58o_bits, l58o_bits, l58o_bits, k58o_bits } } },\\r
503 { 54,\\r
504   { { 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, cv54s_bits, l54s_bits, l54s_bits, l54s_bits, l54s_bits, k54s_bits },\\r
505     { 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, cv54o_bits, l54o_bits, l54o_bits, l54o_bits, l54o_bits, k54o_bits } } },\\r
506 { 49,\\r
507   { { p49s_bits, n49s_bits, b49s_bits, r49s_bits, q49s_bits, f49s_bits, e49s_bits, as49s_bits, c49s_bits, w49s_bits, m49s_bits, o49s_bits, h49s_bits, a49s_bits, dk49s_bits, g49s_bits, cv49s_bits, v49s_bits, l49s_bits, s49s_bits, u49s_bits, k49s_bits },\\r
508     { p49o_bits, n49o_bits, b49o_bits, r49o_bits, q49o_bits, f49o_bits, e49o_bits, as49o_bits, c49o_bits, w49o_bits, m49o_bits, o49o_bits, h49o_bits, a49s_bits, dk49o_bits, g49o_bits, cv49o_bits, v49o_bits, l49o_bits, s49o_bits, u49o_bits, k49o_bits } } },\\r
509 { 45,\\r
510   { { 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, cv45s_bits, l45s_bits, l45s_bits, l45s_bits, l45s_bits, k45s_bits },\\r
511     { 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, cv45o_bits, l45o_bits, l45o_bits, l45o_bits, l45o_bits, k45o_bits } } },\\r
512 { 40,\\r
513   { { 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, cv40s_bits, l40s_bits, l40s_bits, l40s_bits, l40s_bits, k40s_bits },\\r
514     { 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, cv40o_bits, l40o_bits, l40o_bits, l40o_bits, l40o_bits, k40o_bits } } },\\r
515 { 37,\\r
516   { { 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, cv37s_bits, l37s_bits, l37s_bits, l37s_bits, l37s_bits, k37s_bits },\\r
517     { 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, cv37o_bits, l37o_bits, l37o_bits, l37o_bits, l37o_bits, k37o_bits } } },\\r
518 { 33,\\r
519   { { p33s_bits, n33s_bits, b33s_bits, r33s_bits, q33s_bits, f33s_bits, e33s_bits, as33s_bits, c33s_bits, w33s_bits, m33s_bits, o33s_bits, h33s_bits, a33s_bits, dk33s_bits, g33s_bits, cv33s_bits, l33s_bits, cv33s_bits, l33s_bits, l33s_bits, k33s_bits },\\r
520     { p33o_bits, n33o_bits, b33o_bits, r33o_bits, q33o_bits, f33o_bits, e33o_bits, as33o_bits, c33o_bits, w33o_bits, m33o_bits, o33o_bits, h33o_bits, a33o_bits, dk33o_bits, g33o_bits, cv33o_bits, l33o_bits, cv33o_bits, l33o_bits, l33o_bits, k33o_bits } } },\\r
521 { 29,\\r
522   { { 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 },\\r
523     { 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 } } },\\r
524 { 25,\\r
525   { { 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 },\\r
526     { 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 } } },\\r
527 { 21,\\r
528   { { 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 },\\r
529     { 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 } } },\\r
530 { 0,\\r
531   { { NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL },\\r
532     { NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL } } }\\r
533 };\r
534 \r
535 \r