20130427
[gdash.git] / src / gfx / pixbufmanip_hq4x.cpp
blobf62018bd2faf9bf4d3d07ff32ce6d3fffec09d1c
1 /*
2 * Copyright (C) 2003 Maxim Stepin ( maxst@hiend3d.com )
4 * Copyright (C) 2010 Cameron Zemek ( grom@zeminvaders.net)
6 * This program is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
22 * This is a modified version of the hq2x engine, to support alpha
23 * channel, and to work on rgba images both on little endian and big
24 * endian machines.
26 * When scaling, the pixel values are determined by the rgb levels
27 * of the input picture. The alpha channel is also scaled,
28 * but interpolation settings do not depend on it.
30 * The scaling function is also modified to be able to handle cases
31 * when image pitch (bytes per row) is != width * bytes per pixel.
33 * The RGBtoYUV lookup table is removed, as scaling is only done once
34 * in GDash for every cave loading, not continuously during the game.
36 * The interpolation functions are changed so they do not produce
37 * overflows for the most significant bytes. So when calculating, they
38 * always do divisions first, then multiplications. This makes some
39 * inaccuracies (least significant bits are sometimes dropped), but
40 * it is not really visible in the result.
43 #include "config.h"
45 #include "gfx/pixbufmanip.hpp"
46 #include "gfx/pixbufmanip_hqx.hpp"
48 #define PIXEL00_0 *dp = w[5];
49 #define PIXEL00_11 Interp1(dp, w[5], w[4]);
50 #define PIXEL00_12 Interp1(dp, w[5], w[2]);
51 #define PIXEL00_20 Interp2(dp, w[5], w[2], w[4]);
52 #define PIXEL00_50 Interp5(dp, w[2], w[4]);
53 #define PIXEL00_80 Interp8(dp, w[5], w[1]);
54 #define PIXEL00_81 Interp8(dp, w[5], w[4]);
55 #define PIXEL00_82 Interp8(dp, w[5], w[2]);
56 #define PIXEL01_0 *(dp+1) = w[5];
57 #define PIXEL01_10 Interp1(dp+1, w[5], w[1]);
58 #define PIXEL01_12 Interp1(dp+1, w[5], w[2]);
59 #define PIXEL01_14 Interp1(dp+1, w[2], w[5]);
60 #define PIXEL01_21 Interp2(dp+1, w[2], w[5], w[4]);
61 #define PIXEL01_31 Interp3(dp+1, w[5], w[4]);
62 #define PIXEL01_50 Interp5(dp+1, w[2], w[5]);
63 #define PIXEL01_60 Interp6(dp+1, w[5], w[2], w[4]);
64 #define PIXEL01_61 Interp6(dp+1, w[5], w[2], w[1]);
65 #define PIXEL01_82 Interp8(dp+1, w[5], w[2]);
66 #define PIXEL01_83 Interp8(dp+1, w[2], w[4]);
67 #define PIXEL02_0 *(dp+2) = w[5];
68 #define PIXEL02_10 Interp1(dp+2, w[5], w[3]);
69 #define PIXEL02_11 Interp1(dp+2, w[5], w[2]);
70 #define PIXEL02_13 Interp1(dp+2, w[2], w[5]);
71 #define PIXEL02_21 Interp2(dp+2, w[2], w[5], w[6]);
72 #define PIXEL02_32 Interp3(dp+2, w[5], w[6]);
73 #define PIXEL02_50 Interp5(dp+2, w[2], w[5]);
74 #define PIXEL02_60 Interp6(dp+2, w[5], w[2], w[6]);
75 #define PIXEL02_61 Interp6(dp+2, w[5], w[2], w[3]);
76 #define PIXEL02_81 Interp8(dp+2, w[5], w[2]);
77 #define PIXEL02_83 Interp8(dp+2, w[2], w[6]);
78 #define PIXEL03_0 *(dp+3) = w[5];
79 #define PIXEL03_11 Interp1(dp+3, w[5], w[2]);
80 #define PIXEL03_12 Interp1(dp+3, w[5], w[6]);
81 #define PIXEL03_20 Interp2(dp+3, w[5], w[2], w[6]);
82 #define PIXEL03_50 Interp5(dp+3, w[2], w[6]);
83 #define PIXEL03_80 Interp8(dp+3, w[5], w[3]);
84 #define PIXEL03_81 Interp8(dp+3, w[5], w[2]);
85 #define PIXEL03_82 Interp8(dp+3, w[5], w[6]);
86 #define PIXEL10_0 *(dp+dpL) = w[5];
87 #define PIXEL10_10 Interp1(dp+dpL, w[5], w[1]);
88 #define PIXEL10_11 Interp1(dp+dpL, w[5], w[4]);
89 #define PIXEL10_13 Interp1(dp+dpL, w[4], w[5]);
90 #define PIXEL10_21 Interp2(dp+dpL, w[4], w[5], w[2]);
91 #define PIXEL10_32 Interp3(dp+dpL, w[5], w[2]);
92 #define PIXEL10_50 Interp5(dp+dpL, w[4], w[5]);
93 #define PIXEL10_60 Interp6(dp+dpL, w[5], w[4], w[2]);
94 #define PIXEL10_61 Interp6(dp+dpL, w[5], w[4], w[1]);
95 #define PIXEL10_81 Interp8(dp+dpL, w[5], w[4]);
96 #define PIXEL10_83 Interp8(dp+dpL, w[4], w[2]);
97 #define PIXEL11_0 *(dp+dpL+1) = w[5];
98 #define PIXEL11_30 Interp3(dp+dpL+1, w[5], w[1]);
99 #define PIXEL11_31 Interp3(dp+dpL+1, w[5], w[4]);
100 #define PIXEL11_32 Interp3(dp+dpL+1, w[5], w[2]);
101 #define PIXEL11_70 Interp7(dp+dpL+1, w[5], w[4], w[2]);
102 #define PIXEL12_0 *(dp+dpL+2) = w[5];
103 #define PIXEL12_30 Interp3(dp+dpL+2, w[5], w[3]);
104 #define PIXEL12_31 Interp3(dp+dpL+2, w[5], w[2]);
105 #define PIXEL12_32 Interp3(dp+dpL+2, w[5], w[6]);
106 #define PIXEL12_70 Interp7(dp+dpL+2, w[5], w[6], w[2]);
107 #define PIXEL13_0 *(dp+dpL+3) = w[5];
108 #define PIXEL13_10 Interp1(dp+dpL+3, w[5], w[3]);
109 #define PIXEL13_12 Interp1(dp+dpL+3, w[5], w[6]);
110 #define PIXEL13_14 Interp1(dp+dpL+3, w[6], w[5]);
111 #define PIXEL13_21 Interp2(dp+dpL+3, w[6], w[5], w[2]);
112 #define PIXEL13_31 Interp3(dp+dpL+3, w[5], w[2]);
113 #define PIXEL13_50 Interp5(dp+dpL+3, w[6], w[5]);
114 #define PIXEL13_60 Interp6(dp+dpL+3, w[5], w[6], w[2]);
115 #define PIXEL13_61 Interp6(dp+dpL+3, w[5], w[6], w[3]);
116 #define PIXEL13_82 Interp8(dp+dpL+3, w[5], w[6]);
117 #define PIXEL13_83 Interp8(dp+dpL+3, w[6], w[2]);
118 #define PIXEL20_0 *(dp+dpL+dpL) = w[5];
119 #define PIXEL20_10 Interp1(dp+dpL+dpL, w[5], w[7]);
120 #define PIXEL20_12 Interp1(dp+dpL+dpL, w[5], w[4]);
121 #define PIXEL20_14 Interp1(dp+dpL+dpL, w[4], w[5]);
122 #define PIXEL20_21 Interp2(dp+dpL+dpL, w[4], w[5], w[8]);
123 #define PIXEL20_31 Interp3(dp+dpL+dpL, w[5], w[8]);
124 #define PIXEL20_50 Interp5(dp+dpL+dpL, w[4], w[5]);
125 #define PIXEL20_60 Interp6(dp+dpL+dpL, w[5], w[4], w[8]);
126 #define PIXEL20_61 Interp6(dp+dpL+dpL, w[5], w[4], w[7]);
127 #define PIXEL20_82 Interp8(dp+dpL+dpL, w[5], w[4]);
128 #define PIXEL20_83 Interp8(dp+dpL+dpL, w[4], w[8]);
129 #define PIXEL21_0 *(dp+dpL+dpL+1) = w[5];
130 #define PIXEL21_30 Interp3(dp+dpL+dpL+1, w[5], w[7]);
131 #define PIXEL21_31 Interp3(dp+dpL+dpL+1, w[5], w[8]);
132 #define PIXEL21_32 Interp3(dp+dpL+dpL+1, w[5], w[4]);
133 #define PIXEL21_70 Interp7(dp+dpL+dpL+1, w[5], w[4], w[8]);
134 #define PIXEL22_0 *(dp+dpL+dpL+2) = w[5];
135 #define PIXEL22_30 Interp3(dp+dpL+dpL+2, w[5], w[9]);
136 #define PIXEL22_31 Interp3(dp+dpL+dpL+2, w[5], w[6]);
137 #define PIXEL22_32 Interp3(dp+dpL+dpL+2, w[5], w[8]);
138 #define PIXEL22_70 Interp7(dp+dpL+dpL+2, w[5], w[6], w[8]);
139 #define PIXEL23_0 *(dp+dpL+dpL+3) = w[5];
140 #define PIXEL23_10 Interp1(dp+dpL+dpL+3, w[5], w[9]);
141 #define PIXEL23_11 Interp1(dp+dpL+dpL+3, w[5], w[6]);
142 #define PIXEL23_13 Interp1(dp+dpL+dpL+3, w[6], w[5]);
143 #define PIXEL23_21 Interp2(dp+dpL+dpL+3, w[6], w[5], w[8]);
144 #define PIXEL23_32 Interp3(dp+dpL+dpL+3, w[5], w[8]);
145 #define PIXEL23_50 Interp5(dp+dpL+dpL+3, w[6], w[5]);
146 #define PIXEL23_60 Interp6(dp+dpL+dpL+3, w[5], w[6], w[8]);
147 #define PIXEL23_61 Interp6(dp+dpL+dpL+3, w[5], w[6], w[9]);
148 #define PIXEL23_81 Interp8(dp+dpL+dpL+3, w[5], w[6]);
149 #define PIXEL23_83 Interp8(dp+dpL+dpL+3, w[6], w[8]);
150 #define PIXEL30_0 *(dp+dpL+dpL+dpL) = w[5];
151 #define PIXEL30_11 Interp1(dp+dpL+dpL+dpL, w[5], w[8]);
152 #define PIXEL30_12 Interp1(dp+dpL+dpL+dpL, w[5], w[4]);
153 #define PIXEL30_20 Interp2(dp+dpL+dpL+dpL, w[5], w[8], w[4]);
154 #define PIXEL30_50 Interp5(dp+dpL+dpL+dpL, w[8], w[4]);
155 #define PIXEL30_80 Interp8(dp+dpL+dpL+dpL, w[5], w[7]);
156 #define PIXEL30_81 Interp8(dp+dpL+dpL+dpL, w[5], w[8]);
157 #define PIXEL30_82 Interp8(dp+dpL+dpL+dpL, w[5], w[4]);
158 #define PIXEL31_0 *(dp+dpL+dpL+dpL+1) = w[5];
159 #define PIXEL31_10 Interp1(dp+dpL+dpL+dpL+1, w[5], w[7]);
160 #define PIXEL31_11 Interp1(dp+dpL+dpL+dpL+1, w[5], w[8]);
161 #define PIXEL31_13 Interp1(dp+dpL+dpL+dpL+1, w[8], w[5]);
162 #define PIXEL31_21 Interp2(dp+dpL+dpL+dpL+1, w[8], w[5], w[4]);
163 #define PIXEL31_32 Interp3(dp+dpL+dpL+dpL+1, w[5], w[4]);
164 #define PIXEL31_50 Interp5(dp+dpL+dpL+dpL+1, w[8], w[5]);
165 #define PIXEL31_60 Interp6(dp+dpL+dpL+dpL+1, w[5], w[8], w[4]);
166 #define PIXEL31_61 Interp6(dp+dpL+dpL+dpL+1, w[5], w[8], w[7]);
167 #define PIXEL31_81 Interp8(dp+dpL+dpL+dpL+1, w[5], w[8]);
168 #define PIXEL31_83 Interp8(dp+dpL+dpL+dpL+1, w[8], w[4]);
169 #define PIXEL32_0 *(dp+dpL+dpL+dpL+2) = w[5];
170 #define PIXEL32_10 Interp1(dp+dpL+dpL+dpL+2, w[5], w[9]);
171 #define PIXEL32_12 Interp1(dp+dpL+dpL+dpL+2, w[5], w[8]);
172 #define PIXEL32_14 Interp1(dp+dpL+dpL+dpL+2, w[8], w[5]);
173 #define PIXEL32_21 Interp2(dp+dpL+dpL+dpL+2, w[8], w[5], w[6]);
174 #define PIXEL32_31 Interp3(dp+dpL+dpL+dpL+2, w[5], w[6]);
175 #define PIXEL32_50 Interp5(dp+dpL+dpL+dpL+2, w[8], w[5]);
176 #define PIXEL32_60 Interp6(dp+dpL+dpL+dpL+2, w[5], w[8], w[6]);
177 #define PIXEL32_61 Interp6(dp+dpL+dpL+dpL+2, w[5], w[8], w[9]);
178 #define PIXEL32_82 Interp8(dp+dpL+dpL+dpL+2, w[5], w[8]);
179 #define PIXEL32_83 Interp8(dp+dpL+dpL+dpL+2, w[8], w[6]);
180 #define PIXEL33_0 *(dp+dpL+dpL+dpL+3) = w[5];
181 #define PIXEL33_11 Interp1(dp+dpL+dpL+dpL+3, w[5], w[6]);
182 #define PIXEL33_12 Interp1(dp+dpL+dpL+dpL+3, w[5], w[8]);
183 #define PIXEL33_20 Interp2(dp+dpL+dpL+dpL+3, w[5], w[8], w[6]);
184 #define PIXEL33_50 Interp5(dp+dpL+dpL+dpL+3, w[8], w[6]);
185 #define PIXEL33_80 Interp8(dp+dpL+dpL+dpL+3, w[5], w[9]);
186 #define PIXEL33_81 Interp8(dp+dpL+dpL+dpL+3, w[5], w[6]);
187 #define PIXEL33_82 Interp8(dp+dpL+dpL+dpL+3, w[5], w[8]);
189 void hq4x(Pixbuf const &src, Pixbuf &dst) {
190 guint32 w[10];
192 // +----+----+----+
193 // | | | |
194 // | w1 | w2 | w3 |
195 // +----+----+----+
196 // | | | |
197 // | w4 | w5 | w6 |
198 // +----+----+----+
199 // | | | |
200 // | w7 | w8 | w9 |
201 // +----+----+----+
203 int sw = src.get_width();
204 int sh = src.get_height();
205 int dpL = dst.get_pitch() / 4; /* 4 bytes/pixel */
207 for (int j = 0; j < sh; j++) {
208 const guint32 *line = src.get_row(j);
209 const guint32 *prevline, *nextline;
210 if (j > 0) prevline = src.get_row(j - 1);
211 else prevline = src.get_row(sh - 1);
212 if (j < sh - 1) nextline = src.get_row(j + 1);
213 else nextline = src.get_row(0);
215 for (int i = 0; i < sw; i++) {
216 w[2] = prevline[i];
217 w[5] = line[i];
218 w[8] = nextline[i];
220 if (i > 0) {
221 w[1] = prevline[i - 1];
222 w[4] = line[i - 1];
223 w[7] = nextline[i - 1];
224 } else {
225 w[1] = prevline[sw - 1];
226 w[4] = line[sw - 1];
227 w[7] = nextline[sw - 1];
230 if (i < sw - 1) {
231 w[3] = prevline[i + 1];
232 w[6] = line[i + 1];
233 w[9] = nextline[i + 1];
234 } else {
235 w[3] = prevline[0];
236 w[6] = line[0];
237 w[9] = nextline[0];
240 int pattern = 0;
241 int flag = 1;
243 guint32 YUV1 = RGBtoYUV(w[5]);
245 for (int k = 1; k <= 9; k++) {
246 if (k == 5) continue;
248 if (w[k] != w[5]) {
249 guint32 YUV2 = RGBtoYUV(w[k]);
250 if ((abs((YUV1 & Ymask) - (YUV2 & Ymask)) > trY) ||
251 (abs((YUV1 & Umask) - (YUV2 & Umask)) > trU) ||
252 (abs((YUV1 & Vmask) - (YUV2 & Vmask)) > trV))
253 pattern |= flag;
255 flag <<= 1;
258 guint32 *dp = dst.get_row(j * 4) + i * 4;
260 switch (pattern) {
261 case 0:
262 case 1:
263 case 4:
264 case 32:
265 case 128:
266 case 5:
267 case 132:
268 case 160:
269 case 33:
270 case 129:
271 case 36:
272 case 133:
273 case 164:
274 case 161:
275 case 37:
276 case 165: {
277 PIXEL00_20
278 PIXEL01_60
279 PIXEL02_60
280 PIXEL03_20
281 PIXEL10_60
282 PIXEL11_70
283 PIXEL12_70
284 PIXEL13_60
285 PIXEL20_60
286 PIXEL21_70
287 PIXEL22_70
288 PIXEL23_60
289 PIXEL30_20
290 PIXEL31_60
291 PIXEL32_60
292 PIXEL33_20
293 break;
295 case 2:
296 case 34:
297 case 130:
298 case 162: {
299 PIXEL00_80
300 PIXEL01_10
301 PIXEL02_10
302 PIXEL03_80
303 PIXEL10_61
304 PIXEL11_30
305 PIXEL12_30
306 PIXEL13_61
307 PIXEL20_60
308 PIXEL21_70
309 PIXEL22_70
310 PIXEL23_60
311 PIXEL30_20
312 PIXEL31_60
313 PIXEL32_60
314 PIXEL33_20
315 break;
317 case 16:
318 case 17:
319 case 48:
320 case 49: {
321 PIXEL00_20
322 PIXEL01_60
323 PIXEL02_61
324 PIXEL03_80
325 PIXEL10_60
326 PIXEL11_70
327 PIXEL12_30
328 PIXEL13_10
329 PIXEL20_60
330 PIXEL21_70
331 PIXEL22_30
332 PIXEL23_10
333 PIXEL30_20
334 PIXEL31_60
335 PIXEL32_61
336 PIXEL33_80
337 break;
339 case 64:
340 case 65:
341 case 68:
342 case 69: {
343 PIXEL00_20
344 PIXEL01_60
345 PIXEL02_60
346 PIXEL03_20
347 PIXEL10_60
348 PIXEL11_70
349 PIXEL12_70
350 PIXEL13_60
351 PIXEL20_61
352 PIXEL21_30
353 PIXEL22_30
354 PIXEL23_61
355 PIXEL30_80
356 PIXEL31_10
357 PIXEL32_10
358 PIXEL33_80
359 break;
361 case 8:
362 case 12:
363 case 136:
364 case 140: {
365 PIXEL00_80
366 PIXEL01_61
367 PIXEL02_60
368 PIXEL03_20
369 PIXEL10_10
370 PIXEL11_30
371 PIXEL12_70
372 PIXEL13_60
373 PIXEL20_10
374 PIXEL21_30
375 PIXEL22_70
376 PIXEL23_60
377 PIXEL30_80
378 PIXEL31_61
379 PIXEL32_60
380 PIXEL33_20
381 break;
383 case 3:
384 case 35:
385 case 131:
386 case 163: {
387 PIXEL00_81
388 PIXEL01_31
389 PIXEL02_10
390 PIXEL03_80
391 PIXEL10_81
392 PIXEL11_31
393 PIXEL12_30
394 PIXEL13_61
395 PIXEL20_60
396 PIXEL21_70
397 PIXEL22_70
398 PIXEL23_60
399 PIXEL30_20
400 PIXEL31_60
401 PIXEL32_60
402 PIXEL33_20
403 break;
405 case 6:
406 case 38:
407 case 134:
408 case 166: {
409 PIXEL00_80
410 PIXEL01_10
411 PIXEL02_32
412 PIXEL03_82
413 PIXEL10_61
414 PIXEL11_30
415 PIXEL12_32
416 PIXEL13_82
417 PIXEL20_60
418 PIXEL21_70
419 PIXEL22_70
420 PIXEL23_60
421 PIXEL30_20
422 PIXEL31_60
423 PIXEL32_60
424 PIXEL33_20
425 break;
427 case 20:
428 case 21:
429 case 52:
430 case 53: {
431 PIXEL00_20
432 PIXEL01_60
433 PIXEL02_81
434 PIXEL03_81
435 PIXEL10_60
436 PIXEL11_70
437 PIXEL12_31
438 PIXEL13_31
439 PIXEL20_60
440 PIXEL21_70
441 PIXEL22_30
442 PIXEL23_10
443 PIXEL30_20
444 PIXEL31_60
445 PIXEL32_61
446 PIXEL33_80
447 break;
449 case 144:
450 case 145:
451 case 176:
452 case 177: {
453 PIXEL00_20
454 PIXEL01_60
455 PIXEL02_61
456 PIXEL03_80
457 PIXEL10_60
458 PIXEL11_70
459 PIXEL12_30
460 PIXEL13_10
461 PIXEL20_60
462 PIXEL21_70
463 PIXEL22_32
464 PIXEL23_32
465 PIXEL30_20
466 PIXEL31_60
467 PIXEL32_82
468 PIXEL33_82
469 break;
471 case 192:
472 case 193:
473 case 196:
474 case 197: {
475 PIXEL00_20
476 PIXEL01_60
477 PIXEL02_60
478 PIXEL03_20
479 PIXEL10_60
480 PIXEL11_70
481 PIXEL12_70
482 PIXEL13_60
483 PIXEL20_61
484 PIXEL21_30
485 PIXEL22_31
486 PIXEL23_81
487 PIXEL30_80
488 PIXEL31_10
489 PIXEL32_31
490 PIXEL33_81
491 break;
493 case 96:
494 case 97:
495 case 100:
496 case 101: {
497 PIXEL00_20
498 PIXEL01_60
499 PIXEL02_60
500 PIXEL03_20
501 PIXEL10_60
502 PIXEL11_70
503 PIXEL12_70
504 PIXEL13_60
505 PIXEL20_82
506 PIXEL21_32
507 PIXEL22_30
508 PIXEL23_61
509 PIXEL30_82
510 PIXEL31_32
511 PIXEL32_10
512 PIXEL33_80
513 break;
515 case 40:
516 case 44:
517 case 168:
518 case 172: {
519 PIXEL00_80
520 PIXEL01_61
521 PIXEL02_60
522 PIXEL03_20
523 PIXEL10_10
524 PIXEL11_30
525 PIXEL12_70
526 PIXEL13_60
527 PIXEL20_31
528 PIXEL21_31
529 PIXEL22_70
530 PIXEL23_60
531 PIXEL30_81
532 PIXEL31_81
533 PIXEL32_60
534 PIXEL33_20
535 break;
537 case 9:
538 case 13:
539 case 137:
540 case 141: {
541 PIXEL00_82
542 PIXEL01_82
543 PIXEL02_60
544 PIXEL03_20
545 PIXEL10_32
546 PIXEL11_32
547 PIXEL12_70
548 PIXEL13_60
549 PIXEL20_10
550 PIXEL21_30
551 PIXEL22_70
552 PIXEL23_60
553 PIXEL30_80
554 PIXEL31_61
555 PIXEL32_60
556 PIXEL33_20
557 break;
559 case 18:
560 case 50: {
561 PIXEL00_80
562 PIXEL01_10
563 if (Diff(w[2], w[6])) {
564 PIXEL02_10
565 PIXEL03_80
566 PIXEL12_30
567 PIXEL13_10
568 } else {
569 PIXEL02_50
570 PIXEL03_50
571 PIXEL12_0
572 PIXEL13_50
574 PIXEL10_61
575 PIXEL11_30
576 PIXEL20_60
577 PIXEL21_70
578 PIXEL22_30
579 PIXEL23_10
580 PIXEL30_20
581 PIXEL31_60
582 PIXEL32_61
583 PIXEL33_80
584 break;
586 case 80:
587 case 81: {
588 PIXEL00_20
589 PIXEL01_60
590 PIXEL02_61
591 PIXEL03_80
592 PIXEL10_60
593 PIXEL11_70
594 PIXEL12_30
595 PIXEL13_10
596 PIXEL20_61
597 PIXEL21_30
598 if (Diff(w[6], w[8])) {
599 PIXEL22_30
600 PIXEL23_10
601 PIXEL32_10
602 PIXEL33_80
603 } else {
604 PIXEL22_0
605 PIXEL23_50
606 PIXEL32_50
607 PIXEL33_50
609 PIXEL30_80
610 PIXEL31_10
611 break;
613 case 72:
614 case 76: {
615 PIXEL00_80
616 PIXEL01_61
617 PIXEL02_60
618 PIXEL03_20
619 PIXEL10_10
620 PIXEL11_30
621 PIXEL12_70
622 PIXEL13_60
623 if (Diff(w[8], w[4])) {
624 PIXEL20_10
625 PIXEL21_30
626 PIXEL30_80
627 PIXEL31_10
628 } else {
629 PIXEL20_50
630 PIXEL21_0
631 PIXEL30_50
632 PIXEL31_50
634 PIXEL22_30
635 PIXEL23_61
636 PIXEL32_10
637 PIXEL33_80
638 break;
640 case 10:
641 case 138: {
642 if (Diff(w[4], w[2])) {
643 PIXEL00_80
644 PIXEL01_10
645 PIXEL10_10
646 PIXEL11_30
647 } else {
648 PIXEL00_50
649 PIXEL01_50
650 PIXEL10_50
651 PIXEL11_0
653 PIXEL02_10
654 PIXEL03_80
655 PIXEL12_30
656 PIXEL13_61
657 PIXEL20_10
658 PIXEL21_30
659 PIXEL22_70
660 PIXEL23_60
661 PIXEL30_80
662 PIXEL31_61
663 PIXEL32_60
664 PIXEL33_20
665 break;
667 case 66: {
668 PIXEL00_80
669 PIXEL01_10
670 PIXEL02_10
671 PIXEL03_80
672 PIXEL10_61
673 PIXEL11_30
674 PIXEL12_30
675 PIXEL13_61
676 PIXEL20_61
677 PIXEL21_30
678 PIXEL22_30
679 PIXEL23_61
680 PIXEL30_80
681 PIXEL31_10
682 PIXEL32_10
683 PIXEL33_80
684 break;
686 case 24: {
687 PIXEL00_80
688 PIXEL01_61
689 PIXEL02_61
690 PIXEL03_80
691 PIXEL10_10
692 PIXEL11_30
693 PIXEL12_30
694 PIXEL13_10
695 PIXEL20_10
696 PIXEL21_30
697 PIXEL22_30
698 PIXEL23_10
699 PIXEL30_80
700 PIXEL31_61
701 PIXEL32_61
702 PIXEL33_80
703 break;
705 case 7:
706 case 39:
707 case 135: {
708 PIXEL00_81
709 PIXEL01_31
710 PIXEL02_32
711 PIXEL03_82
712 PIXEL10_81
713 PIXEL11_31
714 PIXEL12_32
715 PIXEL13_82
716 PIXEL20_60
717 PIXEL21_70
718 PIXEL22_70
719 PIXEL23_60
720 PIXEL30_20
721 PIXEL31_60
722 PIXEL32_60
723 PIXEL33_20
724 break;
726 case 148:
727 case 149:
728 case 180: {
729 PIXEL00_20
730 PIXEL01_60
731 PIXEL02_81
732 PIXEL03_81
733 PIXEL10_60
734 PIXEL11_70
735 PIXEL12_31
736 PIXEL13_31
737 PIXEL20_60
738 PIXEL21_70
739 PIXEL22_32
740 PIXEL23_32
741 PIXEL30_20
742 PIXEL31_60
743 PIXEL32_82
744 PIXEL33_82
745 break;
747 case 224:
748 case 228:
749 case 225: {
750 PIXEL00_20
751 PIXEL01_60
752 PIXEL02_60
753 PIXEL03_20
754 PIXEL10_60
755 PIXEL11_70
756 PIXEL12_70
757 PIXEL13_60
758 PIXEL20_82
759 PIXEL21_32
760 PIXEL22_31
761 PIXEL23_81
762 PIXEL30_82
763 PIXEL31_32
764 PIXEL32_31
765 PIXEL33_81
766 break;
768 case 41:
769 case 169:
770 case 45: {
771 PIXEL00_82
772 PIXEL01_82
773 PIXEL02_60
774 PIXEL03_20
775 PIXEL10_32
776 PIXEL11_32
777 PIXEL12_70
778 PIXEL13_60
779 PIXEL20_31
780 PIXEL21_31
781 PIXEL22_70
782 PIXEL23_60
783 PIXEL30_81
784 PIXEL31_81
785 PIXEL32_60
786 PIXEL33_20
787 break;
789 case 22:
790 case 54: {
791 PIXEL00_80
792 PIXEL01_10
793 if (Diff(w[2], w[6])) {
794 PIXEL02_0
795 PIXEL03_0
796 PIXEL13_0
797 } else {
798 PIXEL02_50
799 PIXEL03_50
800 PIXEL13_50
802 PIXEL10_61
803 PIXEL11_30
804 PIXEL12_0
805 PIXEL20_60
806 PIXEL21_70
807 PIXEL22_30
808 PIXEL23_10
809 PIXEL30_20
810 PIXEL31_60
811 PIXEL32_61
812 PIXEL33_80
813 break;
815 case 208:
816 case 209: {
817 PIXEL00_20
818 PIXEL01_60
819 PIXEL02_61
820 PIXEL03_80
821 PIXEL10_60
822 PIXEL11_70
823 PIXEL12_30
824 PIXEL13_10
825 PIXEL20_61
826 PIXEL21_30
827 PIXEL22_0
828 if (Diff(w[6], w[8])) {
829 PIXEL23_0
830 PIXEL32_0
831 PIXEL33_0
832 } else {
833 PIXEL23_50
834 PIXEL32_50
835 PIXEL33_50
837 PIXEL30_80
838 PIXEL31_10
839 break;
841 case 104:
842 case 108: {
843 PIXEL00_80
844 PIXEL01_61
845 PIXEL02_60
846 PIXEL03_20
847 PIXEL10_10
848 PIXEL11_30
849 PIXEL12_70
850 PIXEL13_60
851 if (Diff(w[8], w[4])) {
852 PIXEL20_0
853 PIXEL30_0
854 PIXEL31_0
855 } else {
856 PIXEL20_50
857 PIXEL30_50
858 PIXEL31_50
860 PIXEL21_0
861 PIXEL22_30
862 PIXEL23_61
863 PIXEL32_10
864 PIXEL33_80
865 break;
867 case 11:
868 case 139: {
869 if (Diff(w[4], w[2])) {
870 PIXEL00_0
871 PIXEL01_0
872 PIXEL10_0
873 } else {
874 PIXEL00_50
875 PIXEL01_50
876 PIXEL10_50
878 PIXEL02_10
879 PIXEL03_80
880 PIXEL11_0
881 PIXEL12_30
882 PIXEL13_61
883 PIXEL20_10
884 PIXEL21_30
885 PIXEL22_70
886 PIXEL23_60
887 PIXEL30_80
888 PIXEL31_61
889 PIXEL32_60
890 PIXEL33_20
891 break;
893 case 19:
894 case 51: {
895 if (Diff(w[2], w[6])) {
896 PIXEL00_81
897 PIXEL01_31
898 PIXEL02_10
899 PIXEL03_80
900 PIXEL12_30
901 PIXEL13_10
902 } else {
903 PIXEL00_12
904 PIXEL01_14
905 PIXEL02_83
906 PIXEL03_50
907 PIXEL12_70
908 PIXEL13_21
910 PIXEL10_81
911 PIXEL11_31
912 PIXEL20_60
913 PIXEL21_70
914 PIXEL22_30
915 PIXEL23_10
916 PIXEL30_20
917 PIXEL31_60
918 PIXEL32_61
919 PIXEL33_80
920 break;
922 case 146:
923 case 178: {
924 PIXEL00_80
925 PIXEL01_10
926 if (Diff(w[2], w[6])) {
927 PIXEL02_10
928 PIXEL03_80
929 PIXEL12_30
930 PIXEL13_10
931 PIXEL23_32
932 PIXEL33_82
933 } else {
934 PIXEL02_21
935 PIXEL03_50
936 PIXEL12_70
937 PIXEL13_83
938 PIXEL23_13
939 PIXEL33_11
941 PIXEL10_61
942 PIXEL11_30
943 PIXEL20_60
944 PIXEL21_70
945 PIXEL22_32
946 PIXEL30_20
947 PIXEL31_60
948 PIXEL32_82
949 break;
951 case 84:
952 case 85: {
953 PIXEL00_20
954 PIXEL01_60
955 PIXEL02_81
956 if (Diff(w[6], w[8])) {
957 PIXEL03_81
958 PIXEL13_31
959 PIXEL22_30
960 PIXEL23_10
961 PIXEL32_10
962 PIXEL33_80
963 } else {
964 PIXEL03_12
965 PIXEL13_14
966 PIXEL22_70
967 PIXEL23_83
968 PIXEL32_21
969 PIXEL33_50
971 PIXEL10_60
972 PIXEL11_70
973 PIXEL12_31
974 PIXEL20_61
975 PIXEL21_30
976 PIXEL30_80
977 PIXEL31_10
978 break;
980 case 112:
981 case 113: {
982 PIXEL00_20
983 PIXEL01_60
984 PIXEL02_61
985 PIXEL03_80
986 PIXEL10_60
987 PIXEL11_70
988 PIXEL12_30
989 PIXEL13_10
990 PIXEL20_82
991 PIXEL21_32
992 if (Diff(w[6], w[8])) {
993 PIXEL22_30
994 PIXEL23_10
995 PIXEL30_82
996 PIXEL31_32
997 PIXEL32_10
998 PIXEL33_80
999 } else {
1000 PIXEL22_70
1001 PIXEL23_21
1002 PIXEL30_11
1003 PIXEL31_13
1004 PIXEL32_83
1005 PIXEL33_50
1007 break;
1009 case 200:
1010 case 204: {
1011 PIXEL00_80
1012 PIXEL01_61
1013 PIXEL02_60
1014 PIXEL03_20
1015 PIXEL10_10
1016 PIXEL11_30
1017 PIXEL12_70
1018 PIXEL13_60
1019 if (Diff(w[8], w[4])) {
1020 PIXEL20_10
1021 PIXEL21_30
1022 PIXEL30_80
1023 PIXEL31_10
1024 PIXEL32_31
1025 PIXEL33_81
1026 } else {
1027 PIXEL20_21
1028 PIXEL21_70
1029 PIXEL30_50
1030 PIXEL31_83
1031 PIXEL32_14
1032 PIXEL33_12
1034 PIXEL22_31
1035 PIXEL23_81
1036 break;
1038 case 73:
1039 case 77: {
1040 if (Diff(w[8], w[4])) {
1041 PIXEL00_82
1042 PIXEL10_32
1043 PIXEL20_10
1044 PIXEL21_30
1045 PIXEL30_80
1046 PIXEL31_10
1047 } else {
1048 PIXEL00_11
1049 PIXEL10_13
1050 PIXEL20_83
1051 PIXEL21_70
1052 PIXEL30_50
1053 PIXEL31_21
1055 PIXEL01_82
1056 PIXEL02_60
1057 PIXEL03_20
1058 PIXEL11_32
1059 PIXEL12_70
1060 PIXEL13_60
1061 PIXEL22_30
1062 PIXEL23_61
1063 PIXEL32_10
1064 PIXEL33_80
1065 break;
1067 case 42:
1068 case 170: {
1069 if (Diff(w[4], w[2])) {
1070 PIXEL00_80
1071 PIXEL01_10
1072 PIXEL10_10
1073 PIXEL11_30
1074 PIXEL20_31
1075 PIXEL30_81
1076 } else {
1077 PIXEL00_50
1078 PIXEL01_21
1079 PIXEL10_83
1080 PIXEL11_70
1081 PIXEL20_14
1082 PIXEL30_12
1084 PIXEL02_10
1085 PIXEL03_80
1086 PIXEL12_30
1087 PIXEL13_61
1088 PIXEL21_31
1089 PIXEL22_70
1090 PIXEL23_60
1091 PIXEL31_81
1092 PIXEL32_60
1093 PIXEL33_20
1094 break;
1096 case 14:
1097 case 142: {
1098 if (Diff(w[4], w[2])) {
1099 PIXEL00_80
1100 PIXEL01_10
1101 PIXEL02_32
1102 PIXEL03_82
1103 PIXEL10_10
1104 PIXEL11_30
1105 } else {
1106 PIXEL00_50
1107 PIXEL01_83
1108 PIXEL02_13
1109 PIXEL03_11
1110 PIXEL10_21
1111 PIXEL11_70
1113 PIXEL12_32
1114 PIXEL13_82
1115 PIXEL20_10
1116 PIXEL21_30
1117 PIXEL22_70
1118 PIXEL23_60
1119 PIXEL30_80
1120 PIXEL31_61
1121 PIXEL32_60
1122 PIXEL33_20
1123 break;
1125 case 67: {
1126 PIXEL00_81
1127 PIXEL01_31
1128 PIXEL02_10
1129 PIXEL03_80
1130 PIXEL10_81
1131 PIXEL11_31
1132 PIXEL12_30
1133 PIXEL13_61
1134 PIXEL20_61
1135 PIXEL21_30
1136 PIXEL22_30
1137 PIXEL23_61
1138 PIXEL30_80
1139 PIXEL31_10
1140 PIXEL32_10
1141 PIXEL33_80
1142 break;
1144 case 70: {
1145 PIXEL00_80
1146 PIXEL01_10
1147 PIXEL02_32
1148 PIXEL03_82
1149 PIXEL10_61
1150 PIXEL11_30
1151 PIXEL12_32
1152 PIXEL13_82
1153 PIXEL20_61
1154 PIXEL21_30
1155 PIXEL22_30
1156 PIXEL23_61
1157 PIXEL30_80
1158 PIXEL31_10
1159 PIXEL32_10
1160 PIXEL33_80
1161 break;
1163 case 28: {
1164 PIXEL00_80
1165 PIXEL01_61
1166 PIXEL02_81
1167 PIXEL03_81
1168 PIXEL10_10
1169 PIXEL11_30
1170 PIXEL12_31
1171 PIXEL13_31
1172 PIXEL20_10
1173 PIXEL21_30
1174 PIXEL22_30
1175 PIXEL23_10
1176 PIXEL30_80
1177 PIXEL31_61
1178 PIXEL32_61
1179 PIXEL33_80
1180 break;
1182 case 152: {
1183 PIXEL00_80
1184 PIXEL01_61
1185 PIXEL02_61
1186 PIXEL03_80
1187 PIXEL10_10
1188 PIXEL11_30
1189 PIXEL12_30
1190 PIXEL13_10
1191 PIXEL20_10
1192 PIXEL21_30
1193 PIXEL22_32
1194 PIXEL23_32
1195 PIXEL30_80
1196 PIXEL31_61
1197 PIXEL32_82
1198 PIXEL33_82
1199 break;
1201 case 194: {
1202 PIXEL00_80
1203 PIXEL01_10
1204 PIXEL02_10
1205 PIXEL03_80
1206 PIXEL10_61
1207 PIXEL11_30
1208 PIXEL12_30
1209 PIXEL13_61
1210 PIXEL20_61
1211 PIXEL21_30
1212 PIXEL22_31
1213 PIXEL23_81
1214 PIXEL30_80
1215 PIXEL31_10
1216 PIXEL32_31
1217 PIXEL33_81
1218 break;
1220 case 98: {
1221 PIXEL00_80
1222 PIXEL01_10
1223 PIXEL02_10
1224 PIXEL03_80
1225 PIXEL10_61
1226 PIXEL11_30
1227 PIXEL12_30
1228 PIXEL13_61
1229 PIXEL20_82
1230 PIXEL21_32
1231 PIXEL22_30
1232 PIXEL23_61
1233 PIXEL30_82
1234 PIXEL31_32
1235 PIXEL32_10
1236 PIXEL33_80
1237 break;
1239 case 56: {
1240 PIXEL00_80
1241 PIXEL01_61
1242 PIXEL02_61
1243 PIXEL03_80
1244 PIXEL10_10
1245 PIXEL11_30
1246 PIXEL12_30
1247 PIXEL13_10
1248 PIXEL20_31
1249 PIXEL21_31
1250 PIXEL22_30
1251 PIXEL23_10
1252 PIXEL30_81
1253 PIXEL31_81
1254 PIXEL32_61
1255 PIXEL33_80
1256 break;
1258 case 25: {
1259 PIXEL00_82
1260 PIXEL01_82
1261 PIXEL02_61
1262 PIXEL03_80
1263 PIXEL10_32
1264 PIXEL11_32
1265 PIXEL12_30
1266 PIXEL13_10
1267 PIXEL20_10
1268 PIXEL21_30
1269 PIXEL22_30
1270 PIXEL23_10
1271 PIXEL30_80
1272 PIXEL31_61
1273 PIXEL32_61
1274 PIXEL33_80
1275 break;
1277 case 26:
1278 case 31: {
1279 if (Diff(w[4], w[2])) {
1280 PIXEL00_0
1281 PIXEL01_0
1282 PIXEL10_0
1283 } else {
1284 PIXEL00_50
1285 PIXEL01_50
1286 PIXEL10_50
1288 if (Diff(w[2], w[6])) {
1289 PIXEL02_0
1290 PIXEL03_0
1291 PIXEL13_0
1292 } else {
1293 PIXEL02_50
1294 PIXEL03_50
1295 PIXEL13_50
1297 PIXEL11_0
1298 PIXEL12_0
1299 PIXEL20_10
1300 PIXEL21_30
1301 PIXEL22_30
1302 PIXEL23_10
1303 PIXEL30_80
1304 PIXEL31_61
1305 PIXEL32_61
1306 PIXEL33_80
1307 break;
1309 case 82:
1310 case 214: {
1311 PIXEL00_80
1312 PIXEL01_10
1313 if (Diff(w[2], w[6])) {
1314 PIXEL02_0
1315 PIXEL03_0
1316 PIXEL13_0
1317 } else {
1318 PIXEL02_50
1319 PIXEL03_50
1320 PIXEL13_50
1322 PIXEL10_61
1323 PIXEL11_30
1324 PIXEL12_0
1325 PIXEL20_61
1326 PIXEL21_30
1327 PIXEL22_0
1328 if (Diff(w[6], w[8])) {
1329 PIXEL23_0
1330 PIXEL32_0
1331 PIXEL33_0
1332 } else {
1333 PIXEL23_50
1334 PIXEL32_50
1335 PIXEL33_50
1337 PIXEL30_80
1338 PIXEL31_10
1339 break;
1341 case 88:
1342 case 248: {
1343 PIXEL00_80
1344 PIXEL01_61
1345 PIXEL02_61
1346 PIXEL03_80
1347 PIXEL10_10
1348 PIXEL11_30
1349 PIXEL12_30
1350 PIXEL13_10
1351 if (Diff(w[8], w[4])) {
1352 PIXEL20_0
1353 PIXEL30_0
1354 PIXEL31_0
1355 } else {
1356 PIXEL20_50
1357 PIXEL30_50
1358 PIXEL31_50
1360 PIXEL21_0
1361 PIXEL22_0
1362 if (Diff(w[6], w[8])) {
1363 PIXEL23_0
1364 PIXEL32_0
1365 PIXEL33_0
1366 } else {
1367 PIXEL23_50
1368 PIXEL32_50
1369 PIXEL33_50
1371 break;
1373 case 74:
1374 case 107: {
1375 if (Diff(w[4], w[2])) {
1376 PIXEL00_0
1377 PIXEL01_0
1378 PIXEL10_0
1379 } else {
1380 PIXEL00_50
1381 PIXEL01_50
1382 PIXEL10_50
1384 PIXEL02_10
1385 PIXEL03_80
1386 PIXEL11_0
1387 PIXEL12_30
1388 PIXEL13_61
1389 if (Diff(w[8], w[4])) {
1390 PIXEL20_0
1391 PIXEL30_0
1392 PIXEL31_0
1393 } else {
1394 PIXEL20_50
1395 PIXEL30_50
1396 PIXEL31_50
1398 PIXEL21_0
1399 PIXEL22_30
1400 PIXEL23_61
1401 PIXEL32_10
1402 PIXEL33_80
1403 break;
1405 case 27: {
1406 if (Diff(w[4], w[2])) {
1407 PIXEL00_0
1408 PIXEL01_0
1409 PIXEL10_0
1410 } else {
1411 PIXEL00_50
1412 PIXEL01_50
1413 PIXEL10_50
1415 PIXEL02_10
1416 PIXEL03_80
1417 PIXEL11_0
1418 PIXEL12_30
1419 PIXEL13_10
1420 PIXEL20_10
1421 PIXEL21_30
1422 PIXEL22_30
1423 PIXEL23_10
1424 PIXEL30_80
1425 PIXEL31_61
1426 PIXEL32_61
1427 PIXEL33_80
1428 break;
1430 case 86: {
1431 PIXEL00_80
1432 PIXEL01_10
1433 if (Diff(w[2], w[6])) {
1434 PIXEL02_0
1435 PIXEL03_0
1436 PIXEL13_0
1437 } else {
1438 PIXEL02_50
1439 PIXEL03_50
1440 PIXEL13_50
1442 PIXEL10_61
1443 PIXEL11_30
1444 PIXEL12_0
1445 PIXEL20_61
1446 PIXEL21_30
1447 PIXEL22_30
1448 PIXEL23_10
1449 PIXEL30_80
1450 PIXEL31_10
1451 PIXEL32_10
1452 PIXEL33_80
1453 break;
1455 case 216: {
1456 PIXEL00_80
1457 PIXEL01_61
1458 PIXEL02_61
1459 PIXEL03_80
1460 PIXEL10_10
1461 PIXEL11_30
1462 PIXEL12_30
1463 PIXEL13_10
1464 PIXEL20_10
1465 PIXEL21_30
1466 PIXEL22_0
1467 if (Diff(w[6], w[8])) {
1468 PIXEL23_0
1469 PIXEL32_0
1470 PIXEL33_0
1471 } else {
1472 PIXEL23_50
1473 PIXEL32_50
1474 PIXEL33_50
1476 PIXEL30_80
1477 PIXEL31_10
1478 break;
1480 case 106: {
1481 PIXEL00_80
1482 PIXEL01_10
1483 PIXEL02_10
1484 PIXEL03_80
1485 PIXEL10_10
1486 PIXEL11_30
1487 PIXEL12_30
1488 PIXEL13_61
1489 if (Diff(w[8], w[4])) {
1490 PIXEL20_0
1491 PIXEL30_0
1492 PIXEL31_0
1493 } else {
1494 PIXEL20_50
1495 PIXEL30_50
1496 PIXEL31_50
1498 PIXEL21_0
1499 PIXEL22_30
1500 PIXEL23_61
1501 PIXEL32_10
1502 PIXEL33_80
1503 break;
1505 case 30: {
1506 PIXEL00_80
1507 PIXEL01_10
1508 if (Diff(w[2], w[6])) {
1509 PIXEL02_0
1510 PIXEL03_0
1511 PIXEL13_0
1512 } else {
1513 PIXEL02_50
1514 PIXEL03_50
1515 PIXEL13_50
1517 PIXEL10_10
1518 PIXEL11_30
1519 PIXEL12_0
1520 PIXEL20_10
1521 PIXEL21_30
1522 PIXEL22_30
1523 PIXEL23_10
1524 PIXEL30_80
1525 PIXEL31_61
1526 PIXEL32_61
1527 PIXEL33_80
1528 break;
1530 case 210: {
1531 PIXEL00_80
1532 PIXEL01_10
1533 PIXEL02_10
1534 PIXEL03_80
1535 PIXEL10_61
1536 PIXEL11_30
1537 PIXEL12_30
1538 PIXEL13_10
1539 PIXEL20_61
1540 PIXEL21_30
1541 PIXEL22_0
1542 if (Diff(w[6], w[8])) {
1543 PIXEL23_0
1544 PIXEL32_0
1545 PIXEL33_0
1546 } else {
1547 PIXEL23_50
1548 PIXEL32_50
1549 PIXEL33_50
1551 PIXEL30_80
1552 PIXEL31_10
1553 break;
1555 case 120: {
1556 PIXEL00_80
1557 PIXEL01_61
1558 PIXEL02_61
1559 PIXEL03_80
1560 PIXEL10_10
1561 PIXEL11_30
1562 PIXEL12_30
1563 PIXEL13_10
1564 if (Diff(w[8], w[4])) {
1565 PIXEL20_0
1566 PIXEL30_0
1567 PIXEL31_0
1568 } else {
1569 PIXEL20_50
1570 PIXEL30_50
1571 PIXEL31_50
1573 PIXEL21_0
1574 PIXEL22_30
1575 PIXEL23_10
1576 PIXEL32_10
1577 PIXEL33_80
1578 break;
1580 case 75: {
1581 if (Diff(w[4], w[2])) {
1582 PIXEL00_0
1583 PIXEL01_0
1584 PIXEL10_0
1585 } else {
1586 PIXEL00_50
1587 PIXEL01_50
1588 PIXEL10_50
1590 PIXEL02_10
1591 PIXEL03_80
1592 PIXEL11_0
1593 PIXEL12_30
1594 PIXEL13_61
1595 PIXEL20_10
1596 PIXEL21_30
1597 PIXEL22_30
1598 PIXEL23_61
1599 PIXEL30_80
1600 PIXEL31_10
1601 PIXEL32_10
1602 PIXEL33_80
1603 break;
1605 case 29: {
1606 PIXEL00_82
1607 PIXEL01_82
1608 PIXEL02_81
1609 PIXEL03_81
1610 PIXEL10_32
1611 PIXEL11_32
1612 PIXEL12_31
1613 PIXEL13_31
1614 PIXEL20_10
1615 PIXEL21_30
1616 PIXEL22_30
1617 PIXEL23_10
1618 PIXEL30_80
1619 PIXEL31_61
1620 PIXEL32_61
1621 PIXEL33_80
1622 break;
1624 case 198: {
1625 PIXEL00_80
1626 PIXEL01_10
1627 PIXEL02_32
1628 PIXEL03_82
1629 PIXEL10_61
1630 PIXEL11_30
1631 PIXEL12_32
1632 PIXEL13_82
1633 PIXEL20_61
1634 PIXEL21_30
1635 PIXEL22_31
1636 PIXEL23_81
1637 PIXEL30_80
1638 PIXEL31_10
1639 PIXEL32_31
1640 PIXEL33_81
1641 break;
1643 case 184: {
1644 PIXEL00_80
1645 PIXEL01_61
1646 PIXEL02_61
1647 PIXEL03_80
1648 PIXEL10_10
1649 PIXEL11_30
1650 PIXEL12_30
1651 PIXEL13_10
1652 PIXEL20_31
1653 PIXEL21_31
1654 PIXEL22_32
1655 PIXEL23_32
1656 PIXEL30_81
1657 PIXEL31_81
1658 PIXEL32_82
1659 PIXEL33_82
1660 break;
1662 case 99: {
1663 PIXEL00_81
1664 PIXEL01_31
1665 PIXEL02_10
1666 PIXEL03_80
1667 PIXEL10_81
1668 PIXEL11_31
1669 PIXEL12_30
1670 PIXEL13_61
1671 PIXEL20_82
1672 PIXEL21_32
1673 PIXEL22_30
1674 PIXEL23_61
1675 PIXEL30_82
1676 PIXEL31_32
1677 PIXEL32_10
1678 PIXEL33_80
1679 break;
1681 case 57: {
1682 PIXEL00_82
1683 PIXEL01_82
1684 PIXEL02_61
1685 PIXEL03_80
1686 PIXEL10_32
1687 PIXEL11_32
1688 PIXEL12_30
1689 PIXEL13_10
1690 PIXEL20_31
1691 PIXEL21_31
1692 PIXEL22_30
1693 PIXEL23_10
1694 PIXEL30_81
1695 PIXEL31_81
1696 PIXEL32_61
1697 PIXEL33_80
1698 break;
1700 case 71: {
1701 PIXEL00_81
1702 PIXEL01_31
1703 PIXEL02_32
1704 PIXEL03_82
1705 PIXEL10_81
1706 PIXEL11_31
1707 PIXEL12_32
1708 PIXEL13_82
1709 PIXEL20_61
1710 PIXEL21_30
1711 PIXEL22_30
1712 PIXEL23_61
1713 PIXEL30_80
1714 PIXEL31_10
1715 PIXEL32_10
1716 PIXEL33_80
1717 break;
1719 case 156: {
1720 PIXEL00_80
1721 PIXEL01_61
1722 PIXEL02_81
1723 PIXEL03_81
1724 PIXEL10_10
1725 PIXEL11_30
1726 PIXEL12_31
1727 PIXEL13_31
1728 PIXEL20_10
1729 PIXEL21_30
1730 PIXEL22_32
1731 PIXEL23_32
1732 PIXEL30_80
1733 PIXEL31_61
1734 PIXEL32_82
1735 PIXEL33_82
1736 break;
1738 case 226: {
1739 PIXEL00_80
1740 PIXEL01_10
1741 PIXEL02_10
1742 PIXEL03_80
1743 PIXEL10_61
1744 PIXEL11_30
1745 PIXEL12_30
1746 PIXEL13_61
1747 PIXEL20_82
1748 PIXEL21_32
1749 PIXEL22_31
1750 PIXEL23_81
1751 PIXEL30_82
1752 PIXEL31_32
1753 PIXEL32_31
1754 PIXEL33_81
1755 break;
1757 case 60: {
1758 PIXEL00_80
1759 PIXEL01_61
1760 PIXEL02_81
1761 PIXEL03_81
1762 PIXEL10_10
1763 PIXEL11_30
1764 PIXEL12_31
1765 PIXEL13_31
1766 PIXEL20_31
1767 PIXEL21_31
1768 PIXEL22_30
1769 PIXEL23_10
1770 PIXEL30_81
1771 PIXEL31_81
1772 PIXEL32_61
1773 PIXEL33_80
1774 break;
1776 case 195: {
1777 PIXEL00_81
1778 PIXEL01_31
1779 PIXEL02_10
1780 PIXEL03_80
1781 PIXEL10_81
1782 PIXEL11_31
1783 PIXEL12_30
1784 PIXEL13_61
1785 PIXEL20_61
1786 PIXEL21_30
1787 PIXEL22_31
1788 PIXEL23_81
1789 PIXEL30_80
1790 PIXEL31_10
1791 PIXEL32_31
1792 PIXEL33_81
1793 break;
1795 case 102: {
1796 PIXEL00_80
1797 PIXEL01_10
1798 PIXEL02_32
1799 PIXEL03_82
1800 PIXEL10_61
1801 PIXEL11_30
1802 PIXEL12_32
1803 PIXEL13_82
1804 PIXEL20_82
1805 PIXEL21_32
1806 PIXEL22_30
1807 PIXEL23_61
1808 PIXEL30_82
1809 PIXEL31_32
1810 PIXEL32_10
1811 PIXEL33_80
1812 break;
1814 case 153: {
1815 PIXEL00_82
1816 PIXEL01_82
1817 PIXEL02_61
1818 PIXEL03_80
1819 PIXEL10_32
1820 PIXEL11_32
1821 PIXEL12_30
1822 PIXEL13_10
1823 PIXEL20_10
1824 PIXEL21_30
1825 PIXEL22_32
1826 PIXEL23_32
1827 PIXEL30_80
1828 PIXEL31_61
1829 PIXEL32_82
1830 PIXEL33_82
1831 break;
1833 case 58: {
1834 if (Diff(w[4], w[2])) {
1835 PIXEL00_80
1836 PIXEL01_10
1837 PIXEL10_10
1838 PIXEL11_30
1839 } else {
1840 PIXEL00_20
1841 PIXEL01_12
1842 PIXEL10_11
1843 PIXEL11_0
1845 if (Diff(w[2], w[6])) {
1846 PIXEL02_10
1847 PIXEL03_80
1848 PIXEL12_30
1849 PIXEL13_10
1850 } else {
1851 PIXEL02_11
1852 PIXEL03_20
1853 PIXEL12_0
1854 PIXEL13_12
1856 PIXEL20_31
1857 PIXEL21_31
1858 PIXEL22_30
1859 PIXEL23_10
1860 PIXEL30_81
1861 PIXEL31_81
1862 PIXEL32_61
1863 PIXEL33_80
1864 break;
1866 case 83: {
1867 PIXEL00_81
1868 PIXEL01_31
1869 if (Diff(w[2], w[6])) {
1870 PIXEL02_10
1871 PIXEL03_80
1872 PIXEL12_30
1873 PIXEL13_10
1874 } else {
1875 PIXEL02_11
1876 PIXEL03_20
1877 PIXEL12_0
1878 PIXEL13_12
1880 PIXEL10_81
1881 PIXEL11_31
1882 PIXEL20_61
1883 PIXEL21_30
1884 if (Diff(w[6], w[8])) {
1885 PIXEL22_30
1886 PIXEL23_10
1887 PIXEL32_10
1888 PIXEL33_80
1889 } else {
1890 PIXEL22_0
1891 PIXEL23_11
1892 PIXEL32_12
1893 PIXEL33_20
1895 PIXEL30_80
1896 PIXEL31_10
1897 break;
1899 case 92: {
1900 PIXEL00_80
1901 PIXEL01_61
1902 PIXEL02_81
1903 PIXEL03_81
1904 PIXEL10_10
1905 PIXEL11_30
1906 PIXEL12_31
1907 PIXEL13_31
1908 if (Diff(w[8], w[4])) {
1909 PIXEL20_10
1910 PIXEL21_30
1911 PIXEL30_80
1912 PIXEL31_10
1913 } else {
1914 PIXEL20_12
1915 PIXEL21_0
1916 PIXEL30_20
1917 PIXEL31_11
1919 if (Diff(w[6], w[8])) {
1920 PIXEL22_30
1921 PIXEL23_10
1922 PIXEL32_10
1923 PIXEL33_80
1924 } else {
1925 PIXEL22_0
1926 PIXEL23_11
1927 PIXEL32_12
1928 PIXEL33_20
1930 break;
1932 case 202: {
1933 if (Diff(w[4], w[2])) {
1934 PIXEL00_80
1935 PIXEL01_10
1936 PIXEL10_10
1937 PIXEL11_30
1938 } else {
1939 PIXEL00_20
1940 PIXEL01_12
1941 PIXEL10_11
1942 PIXEL11_0
1944 PIXEL02_10
1945 PIXEL03_80
1946 PIXEL12_30
1947 PIXEL13_61
1948 if (Diff(w[8], w[4])) {
1949 PIXEL20_10
1950 PIXEL21_30
1951 PIXEL30_80
1952 PIXEL31_10
1953 } else {
1954 PIXEL20_12
1955 PIXEL21_0
1956 PIXEL30_20
1957 PIXEL31_11
1959 PIXEL22_31
1960 PIXEL23_81
1961 PIXEL32_31
1962 PIXEL33_81
1963 break;
1965 case 78: {
1966 if (Diff(w[4], w[2])) {
1967 PIXEL00_80
1968 PIXEL01_10
1969 PIXEL10_10
1970 PIXEL11_30
1971 } else {
1972 PIXEL00_20
1973 PIXEL01_12
1974 PIXEL10_11
1975 PIXEL11_0
1977 PIXEL02_32
1978 PIXEL03_82
1979 PIXEL12_32
1980 PIXEL13_82
1981 if (Diff(w[8], w[4])) {
1982 PIXEL20_10
1983 PIXEL21_30
1984 PIXEL30_80
1985 PIXEL31_10
1986 } else {
1987 PIXEL20_12
1988 PIXEL21_0
1989 PIXEL30_20
1990 PIXEL31_11
1992 PIXEL22_30
1993 PIXEL23_61
1994 PIXEL32_10
1995 PIXEL33_80
1996 break;
1998 case 154: {
1999 if (Diff(w[4], w[2])) {
2000 PIXEL00_80
2001 PIXEL01_10
2002 PIXEL10_10
2003 PIXEL11_30
2004 } else {
2005 PIXEL00_20
2006 PIXEL01_12
2007 PIXEL10_11
2008 PIXEL11_0
2010 if (Diff(w[2], w[6])) {
2011 PIXEL02_10
2012 PIXEL03_80
2013 PIXEL12_30
2014 PIXEL13_10
2015 } else {
2016 PIXEL02_11
2017 PIXEL03_20
2018 PIXEL12_0
2019 PIXEL13_12
2021 PIXEL20_10
2022 PIXEL21_30
2023 PIXEL22_32
2024 PIXEL23_32
2025 PIXEL30_80
2026 PIXEL31_61
2027 PIXEL32_82
2028 PIXEL33_82
2029 break;
2031 case 114: {
2032 PIXEL00_80
2033 PIXEL01_10
2034 if (Diff(w[2], w[6])) {
2035 PIXEL02_10
2036 PIXEL03_80
2037 PIXEL12_30
2038 PIXEL13_10
2039 } else {
2040 PIXEL02_11
2041 PIXEL03_20
2042 PIXEL12_0
2043 PIXEL13_12
2045 PIXEL10_61
2046 PIXEL11_30
2047 PIXEL20_82
2048 PIXEL21_32
2049 if (Diff(w[6], w[8])) {
2050 PIXEL22_30
2051 PIXEL23_10
2052 PIXEL32_10
2053 PIXEL33_80
2054 } else {
2055 PIXEL22_0
2056 PIXEL23_11
2057 PIXEL32_12
2058 PIXEL33_20
2060 PIXEL30_82
2061 PIXEL31_32
2062 break;
2064 case 89: {
2065 PIXEL00_82
2066 PIXEL01_82
2067 PIXEL02_61
2068 PIXEL03_80
2069 PIXEL10_32
2070 PIXEL11_32
2071 PIXEL12_30
2072 PIXEL13_10
2073 if (Diff(w[8], w[4])) {
2074 PIXEL20_10
2075 PIXEL21_30
2076 PIXEL30_80
2077 PIXEL31_10
2078 } else {
2079 PIXEL20_12
2080 PIXEL21_0
2081 PIXEL30_20
2082 PIXEL31_11
2084 if (Diff(w[6], w[8])) {
2085 PIXEL22_30
2086 PIXEL23_10
2087 PIXEL32_10
2088 PIXEL33_80
2089 } else {
2090 PIXEL22_0
2091 PIXEL23_11
2092 PIXEL32_12
2093 PIXEL33_20
2095 break;
2097 case 90: {
2098 if (Diff(w[4], w[2])) {
2099 PIXEL00_80
2100 PIXEL01_10
2101 PIXEL10_10
2102 PIXEL11_30
2103 } else {
2104 PIXEL00_20
2105 PIXEL01_12
2106 PIXEL10_11
2107 PIXEL11_0
2109 if (Diff(w[2], w[6])) {
2110 PIXEL02_10
2111 PIXEL03_80
2112 PIXEL12_30
2113 PIXEL13_10
2114 } else {
2115 PIXEL02_11
2116 PIXEL03_20
2117 PIXEL12_0
2118 PIXEL13_12
2120 if (Diff(w[8], w[4])) {
2121 PIXEL20_10
2122 PIXEL21_30
2123 PIXEL30_80
2124 PIXEL31_10
2125 } else {
2126 PIXEL20_12
2127 PIXEL21_0
2128 PIXEL30_20
2129 PIXEL31_11
2131 if (Diff(w[6], w[8])) {
2132 PIXEL22_30
2133 PIXEL23_10
2134 PIXEL32_10
2135 PIXEL33_80
2136 } else {
2137 PIXEL22_0
2138 PIXEL23_11
2139 PIXEL32_12
2140 PIXEL33_20
2142 break;
2144 case 55:
2145 case 23: {
2146 if (Diff(w[2], w[6])) {
2147 PIXEL00_81
2148 PIXEL01_31
2149 PIXEL02_0
2150 PIXEL03_0
2151 PIXEL12_0
2152 PIXEL13_0
2153 } else {
2154 PIXEL00_12
2155 PIXEL01_14
2156 PIXEL02_83
2157 PIXEL03_50
2158 PIXEL12_70
2159 PIXEL13_21
2161 PIXEL10_81
2162 PIXEL11_31
2163 PIXEL20_60
2164 PIXEL21_70
2165 PIXEL22_30
2166 PIXEL23_10
2167 PIXEL30_20
2168 PIXEL31_60
2169 PIXEL32_61
2170 PIXEL33_80
2171 break;
2173 case 182:
2174 case 150: {
2175 PIXEL00_80
2176 PIXEL01_10
2177 if (Diff(w[2], w[6])) {
2178 PIXEL02_0
2179 PIXEL03_0
2180 PIXEL12_0
2181 PIXEL13_0
2182 PIXEL23_32
2183 PIXEL33_82
2184 } else {
2185 PIXEL02_21
2186 PIXEL03_50
2187 PIXEL12_70
2188 PIXEL13_83
2189 PIXEL23_13
2190 PIXEL33_11
2192 PIXEL10_61
2193 PIXEL11_30
2194 PIXEL20_60
2195 PIXEL21_70
2196 PIXEL22_32
2197 PIXEL30_20
2198 PIXEL31_60
2199 PIXEL32_82
2200 break;
2202 case 213:
2203 case 212: {
2204 PIXEL00_20
2205 PIXEL01_60
2206 PIXEL02_81
2207 if (Diff(w[6], w[8])) {
2208 PIXEL03_81
2209 PIXEL13_31
2210 PIXEL22_0
2211 PIXEL23_0
2212 PIXEL32_0
2213 PIXEL33_0
2214 } else {
2215 PIXEL03_12
2216 PIXEL13_14
2217 PIXEL22_70
2218 PIXEL23_83
2219 PIXEL32_21
2220 PIXEL33_50
2222 PIXEL10_60
2223 PIXEL11_70
2224 PIXEL12_31
2225 PIXEL20_61
2226 PIXEL21_30
2227 PIXEL30_80
2228 PIXEL31_10
2229 break;
2231 case 241:
2232 case 240: {
2233 PIXEL00_20
2234 PIXEL01_60
2235 PIXEL02_61
2236 PIXEL03_80
2237 PIXEL10_60
2238 PIXEL11_70
2239 PIXEL12_30
2240 PIXEL13_10
2241 PIXEL20_82
2242 PIXEL21_32
2243 if (Diff(w[6], w[8])) {
2244 PIXEL22_0
2245 PIXEL23_0
2246 PIXEL30_82
2247 PIXEL31_32
2248 PIXEL32_0
2249 PIXEL33_0
2250 } else {
2251 PIXEL22_70
2252 PIXEL23_21
2253 PIXEL30_11
2254 PIXEL31_13
2255 PIXEL32_83
2256 PIXEL33_50
2258 break;
2260 case 236:
2261 case 232: {
2262 PIXEL00_80
2263 PIXEL01_61
2264 PIXEL02_60
2265 PIXEL03_20
2266 PIXEL10_10
2267 PIXEL11_30
2268 PIXEL12_70
2269 PIXEL13_60
2270 if (Diff(w[8], w[4])) {
2271 PIXEL20_0
2272 PIXEL21_0
2273 PIXEL30_0
2274 PIXEL31_0
2275 PIXEL32_31
2276 PIXEL33_81
2277 } else {
2278 PIXEL20_21
2279 PIXEL21_70
2280 PIXEL30_50
2281 PIXEL31_83
2282 PIXEL32_14
2283 PIXEL33_12
2285 PIXEL22_31
2286 PIXEL23_81
2287 break;
2289 case 109:
2290 case 105: {
2291 if (Diff(w[8], w[4])) {
2292 PIXEL00_82
2293 PIXEL10_32
2294 PIXEL20_0
2295 PIXEL21_0
2296 PIXEL30_0
2297 PIXEL31_0
2298 } else {
2299 PIXEL00_11
2300 PIXEL10_13
2301 PIXEL20_83
2302 PIXEL21_70
2303 PIXEL30_50
2304 PIXEL31_21
2306 PIXEL01_82
2307 PIXEL02_60
2308 PIXEL03_20
2309 PIXEL11_32
2310 PIXEL12_70
2311 PIXEL13_60
2312 PIXEL22_30
2313 PIXEL23_61
2314 PIXEL32_10
2315 PIXEL33_80
2316 break;
2318 case 171:
2319 case 43: {
2320 if (Diff(w[4], w[2])) {
2321 PIXEL00_0
2322 PIXEL01_0
2323 PIXEL10_0
2324 PIXEL11_0
2325 PIXEL20_31
2326 PIXEL30_81
2327 } else {
2328 PIXEL00_50
2329 PIXEL01_21
2330 PIXEL10_83
2331 PIXEL11_70
2332 PIXEL20_14
2333 PIXEL30_12
2335 PIXEL02_10
2336 PIXEL03_80
2337 PIXEL12_30
2338 PIXEL13_61
2339 PIXEL21_31
2340 PIXEL22_70
2341 PIXEL23_60
2342 PIXEL31_81
2343 PIXEL32_60
2344 PIXEL33_20
2345 break;
2347 case 143:
2348 case 15: {
2349 if (Diff(w[4], w[2])) {
2350 PIXEL00_0
2351 PIXEL01_0
2352 PIXEL02_32
2353 PIXEL03_82
2354 PIXEL10_0
2355 PIXEL11_0
2356 } else {
2357 PIXEL00_50
2358 PIXEL01_83
2359 PIXEL02_13
2360 PIXEL03_11
2361 PIXEL10_21
2362 PIXEL11_70
2364 PIXEL12_32
2365 PIXEL13_82
2366 PIXEL20_10
2367 PIXEL21_30
2368 PIXEL22_70
2369 PIXEL23_60
2370 PIXEL30_80
2371 PIXEL31_61
2372 PIXEL32_60
2373 PIXEL33_20
2374 break;
2376 case 124: {
2377 PIXEL00_80
2378 PIXEL01_61
2379 PIXEL02_81
2380 PIXEL03_81
2381 PIXEL10_10
2382 PIXEL11_30
2383 PIXEL12_31
2384 PIXEL13_31
2385 if (Diff(w[8], w[4])) {
2386 PIXEL20_0
2387 PIXEL30_0
2388 PIXEL31_0
2389 } else {
2390 PIXEL20_50
2391 PIXEL30_50
2392 PIXEL31_50
2394 PIXEL21_0
2395 PIXEL22_30
2396 PIXEL23_10
2397 PIXEL32_10
2398 PIXEL33_80
2399 break;
2401 case 203: {
2402 if (Diff(w[4], w[2])) {
2403 PIXEL00_0
2404 PIXEL01_0
2405 PIXEL10_0
2406 } else {
2407 PIXEL00_50
2408 PIXEL01_50
2409 PIXEL10_50
2411 PIXEL02_10
2412 PIXEL03_80
2413 PIXEL11_0
2414 PIXEL12_30
2415 PIXEL13_61
2416 PIXEL20_10
2417 PIXEL21_30
2418 PIXEL22_31
2419 PIXEL23_81
2420 PIXEL30_80
2421 PIXEL31_10
2422 PIXEL32_31
2423 PIXEL33_81
2424 break;
2426 case 62: {
2427 PIXEL00_80
2428 PIXEL01_10
2429 if (Diff(w[2], w[6])) {
2430 PIXEL02_0
2431 PIXEL03_0
2432 PIXEL13_0
2433 } else {
2434 PIXEL02_50
2435 PIXEL03_50
2436 PIXEL13_50
2438 PIXEL10_10
2439 PIXEL11_30
2440 PIXEL12_0
2441 PIXEL20_31
2442 PIXEL21_31
2443 PIXEL22_30
2444 PIXEL23_10
2445 PIXEL30_81
2446 PIXEL31_81
2447 PIXEL32_61
2448 PIXEL33_80
2449 break;
2451 case 211: {
2452 PIXEL00_81
2453 PIXEL01_31
2454 PIXEL02_10
2455 PIXEL03_80
2456 PIXEL10_81
2457 PIXEL11_31
2458 PIXEL12_30
2459 PIXEL13_10
2460 PIXEL20_61
2461 PIXEL21_30
2462 PIXEL22_0
2463 if (Diff(w[6], w[8])) {
2464 PIXEL23_0
2465 PIXEL32_0
2466 PIXEL33_0
2467 } else {
2468 PIXEL23_50
2469 PIXEL32_50
2470 PIXEL33_50
2472 PIXEL30_80
2473 PIXEL31_10
2474 break;
2476 case 118: {
2477 PIXEL00_80
2478 PIXEL01_10
2479 if (Diff(w[2], w[6])) {
2480 PIXEL02_0
2481 PIXEL03_0
2482 PIXEL13_0
2483 } else {
2484 PIXEL02_50
2485 PIXEL03_50
2486 PIXEL13_50
2488 PIXEL10_61
2489 PIXEL11_30
2490 PIXEL12_0
2491 PIXEL20_82
2492 PIXEL21_32
2493 PIXEL22_30
2494 PIXEL23_10
2495 PIXEL30_82
2496 PIXEL31_32
2497 PIXEL32_10
2498 PIXEL33_80
2499 break;
2501 case 217: {
2502 PIXEL00_82
2503 PIXEL01_82
2504 PIXEL02_61
2505 PIXEL03_80
2506 PIXEL10_32
2507 PIXEL11_32
2508 PIXEL12_30
2509 PIXEL13_10
2510 PIXEL20_10
2511 PIXEL21_30
2512 PIXEL22_0
2513 if (Diff(w[6], w[8])) {
2514 PIXEL23_0
2515 PIXEL32_0
2516 PIXEL33_0
2517 } else {
2518 PIXEL23_50
2519 PIXEL32_50
2520 PIXEL33_50
2522 PIXEL30_80
2523 PIXEL31_10
2524 break;
2526 case 110: {
2527 PIXEL00_80
2528 PIXEL01_10
2529 PIXEL02_32
2530 PIXEL03_82
2531 PIXEL10_10
2532 PIXEL11_30
2533 PIXEL12_32
2534 PIXEL13_82
2535 if (Diff(w[8], w[4])) {
2536 PIXEL20_0
2537 PIXEL30_0
2538 PIXEL31_0
2539 } else {
2540 PIXEL20_50
2541 PIXEL30_50
2542 PIXEL31_50
2544 PIXEL21_0
2545 PIXEL22_30
2546 PIXEL23_61
2547 PIXEL32_10
2548 PIXEL33_80
2549 break;
2551 case 155: {
2552 if (Diff(w[4], w[2])) {
2553 PIXEL00_0
2554 PIXEL01_0
2555 PIXEL10_0
2556 } else {
2557 PIXEL00_50
2558 PIXEL01_50
2559 PIXEL10_50
2561 PIXEL02_10
2562 PIXEL03_80
2563 PIXEL11_0
2564 PIXEL12_30
2565 PIXEL13_10
2566 PIXEL20_10
2567 PIXEL21_30
2568 PIXEL22_32
2569 PIXEL23_32
2570 PIXEL30_80
2571 PIXEL31_61
2572 PIXEL32_82
2573 PIXEL33_82
2574 break;
2576 case 188: {
2577 PIXEL00_80
2578 PIXEL01_61
2579 PIXEL02_81
2580 PIXEL03_81
2581 PIXEL10_10
2582 PIXEL11_30
2583 PIXEL12_31
2584 PIXEL13_31
2585 PIXEL20_31
2586 PIXEL21_31
2587 PIXEL22_32
2588 PIXEL23_32
2589 PIXEL30_81
2590 PIXEL31_81
2591 PIXEL32_82
2592 PIXEL33_82
2593 break;
2595 case 185: {
2596 PIXEL00_82
2597 PIXEL01_82
2598 PIXEL02_61
2599 PIXEL03_80
2600 PIXEL10_32
2601 PIXEL11_32
2602 PIXEL12_30
2603 PIXEL13_10
2604 PIXEL20_31
2605 PIXEL21_31
2606 PIXEL22_32
2607 PIXEL23_32
2608 PIXEL30_81
2609 PIXEL31_81
2610 PIXEL32_82
2611 PIXEL33_82
2612 break;
2614 case 61: {
2615 PIXEL00_82
2616 PIXEL01_82
2617 PIXEL02_81
2618 PIXEL03_81
2619 PIXEL10_32
2620 PIXEL11_32
2621 PIXEL12_31
2622 PIXEL13_31
2623 PIXEL20_31
2624 PIXEL21_31
2625 PIXEL22_30
2626 PIXEL23_10
2627 PIXEL30_81
2628 PIXEL31_81
2629 PIXEL32_61
2630 PIXEL33_80
2631 break;
2633 case 157: {
2634 PIXEL00_82
2635 PIXEL01_82
2636 PIXEL02_81
2637 PIXEL03_81
2638 PIXEL10_32
2639 PIXEL11_32
2640 PIXEL12_31
2641 PIXEL13_31
2642 PIXEL20_10
2643 PIXEL21_30
2644 PIXEL22_32
2645 PIXEL23_32
2646 PIXEL30_80
2647 PIXEL31_61
2648 PIXEL32_82
2649 PIXEL33_82
2650 break;
2652 case 103: {
2653 PIXEL00_81
2654 PIXEL01_31
2655 PIXEL02_32
2656 PIXEL03_82
2657 PIXEL10_81
2658 PIXEL11_31
2659 PIXEL12_32
2660 PIXEL13_82
2661 PIXEL20_82
2662 PIXEL21_32
2663 PIXEL22_30
2664 PIXEL23_61
2665 PIXEL30_82
2666 PIXEL31_32
2667 PIXEL32_10
2668 PIXEL33_80
2669 break;
2671 case 227: {
2672 PIXEL00_81
2673 PIXEL01_31
2674 PIXEL02_10
2675 PIXEL03_80
2676 PIXEL10_81
2677 PIXEL11_31
2678 PIXEL12_30
2679 PIXEL13_61
2680 PIXEL20_82
2681 PIXEL21_32
2682 PIXEL22_31
2683 PIXEL23_81
2684 PIXEL30_82
2685 PIXEL31_32
2686 PIXEL32_31
2687 PIXEL33_81
2688 break;
2690 case 230: {
2691 PIXEL00_80
2692 PIXEL01_10
2693 PIXEL02_32
2694 PIXEL03_82
2695 PIXEL10_61
2696 PIXEL11_30
2697 PIXEL12_32
2698 PIXEL13_82
2699 PIXEL20_82
2700 PIXEL21_32
2701 PIXEL22_31
2702 PIXEL23_81
2703 PIXEL30_82
2704 PIXEL31_32
2705 PIXEL32_31
2706 PIXEL33_81
2707 break;
2709 case 199: {
2710 PIXEL00_81
2711 PIXEL01_31
2712 PIXEL02_32
2713 PIXEL03_82
2714 PIXEL10_81
2715 PIXEL11_31
2716 PIXEL12_32
2717 PIXEL13_82
2718 PIXEL20_61
2719 PIXEL21_30
2720 PIXEL22_31
2721 PIXEL23_81
2722 PIXEL30_80
2723 PIXEL31_10
2724 PIXEL32_31
2725 PIXEL33_81
2726 break;
2728 case 220: {
2729 PIXEL00_80
2730 PIXEL01_61
2731 PIXEL02_81
2732 PIXEL03_81
2733 PIXEL10_10
2734 PIXEL11_30
2735 PIXEL12_31
2736 PIXEL13_31
2737 if (Diff(w[8], w[4])) {
2738 PIXEL20_10
2739 PIXEL21_30
2740 PIXEL30_80
2741 PIXEL31_10
2742 } else {
2743 PIXEL20_12
2744 PIXEL21_0
2745 PIXEL30_20
2746 PIXEL31_11
2748 PIXEL22_0
2749 if (Diff(w[6], w[8])) {
2750 PIXEL23_0
2751 PIXEL32_0
2752 PIXEL33_0
2753 } else {
2754 PIXEL23_50
2755 PIXEL32_50
2756 PIXEL33_50
2758 break;
2760 case 158: {
2761 if (Diff(w[4], w[2])) {
2762 PIXEL00_80
2763 PIXEL01_10
2764 PIXEL10_10
2765 PIXEL11_30
2766 } else {
2767 PIXEL00_20
2768 PIXEL01_12
2769 PIXEL10_11
2770 PIXEL11_0
2772 if (Diff(w[2], w[6])) {
2773 PIXEL02_0
2774 PIXEL03_0
2775 PIXEL13_0
2776 } else {
2777 PIXEL02_50
2778 PIXEL03_50
2779 PIXEL13_50
2781 PIXEL12_0
2782 PIXEL20_10
2783 PIXEL21_30
2784 PIXEL22_32
2785 PIXEL23_32
2786 PIXEL30_80
2787 PIXEL31_61
2788 PIXEL32_82
2789 PIXEL33_82
2790 break;
2792 case 234: {
2793 if (Diff(w[4], w[2])) {
2794 PIXEL00_80
2795 PIXEL01_10
2796 PIXEL10_10
2797 PIXEL11_30
2798 } else {
2799 PIXEL00_20
2800 PIXEL01_12
2801 PIXEL10_11
2802 PIXEL11_0
2804 PIXEL02_10
2805 PIXEL03_80
2806 PIXEL12_30
2807 PIXEL13_61
2808 if (Diff(w[8], w[4])) {
2809 PIXEL20_0
2810 PIXEL30_0
2811 PIXEL31_0
2812 } else {
2813 PIXEL20_50
2814 PIXEL30_50
2815 PIXEL31_50
2817 PIXEL21_0
2818 PIXEL22_31
2819 PIXEL23_81
2820 PIXEL32_31
2821 PIXEL33_81
2822 break;
2824 case 242: {
2825 PIXEL00_80
2826 PIXEL01_10
2827 if (Diff(w[2], w[6])) {
2828 PIXEL02_10
2829 PIXEL03_80
2830 PIXEL12_30
2831 PIXEL13_10
2832 } else {
2833 PIXEL02_11
2834 PIXEL03_20
2835 PIXEL12_0
2836 PIXEL13_12
2838 PIXEL10_61
2839 PIXEL11_30
2840 PIXEL20_82
2841 PIXEL21_32
2842 PIXEL22_0
2843 if (Diff(w[6], w[8])) {
2844 PIXEL23_0
2845 PIXEL32_0
2846 PIXEL33_0
2847 } else {
2848 PIXEL23_50
2849 PIXEL32_50
2850 PIXEL33_50
2852 PIXEL30_82
2853 PIXEL31_32
2854 break;
2856 case 59: {
2857 if (Diff(w[4], w[2])) {
2858 PIXEL00_0
2859 PIXEL01_0
2860 PIXEL10_0
2861 } else {
2862 PIXEL00_50
2863 PIXEL01_50
2864 PIXEL10_50
2866 if (Diff(w[2], w[6])) {
2867 PIXEL02_10
2868 PIXEL03_80
2869 PIXEL12_30
2870 PIXEL13_10
2871 } else {
2872 PIXEL02_11
2873 PIXEL03_20
2874 PIXEL12_0
2875 PIXEL13_12
2877 PIXEL11_0
2878 PIXEL20_31
2879 PIXEL21_31
2880 PIXEL22_30
2881 PIXEL23_10
2882 PIXEL30_81
2883 PIXEL31_81
2884 PIXEL32_61
2885 PIXEL33_80
2886 break;
2888 case 121: {
2889 PIXEL00_82
2890 PIXEL01_82
2891 PIXEL02_61
2892 PIXEL03_80
2893 PIXEL10_32
2894 PIXEL11_32
2895 PIXEL12_30
2896 PIXEL13_10
2897 if (Diff(w[8], w[4])) {
2898 PIXEL20_0
2899 PIXEL30_0
2900 PIXEL31_0
2901 } else {
2902 PIXEL20_50
2903 PIXEL30_50
2904 PIXEL31_50
2906 PIXEL21_0
2907 if (Diff(w[6], w[8])) {
2908 PIXEL22_30
2909 PIXEL23_10
2910 PIXEL32_10
2911 PIXEL33_80
2912 } else {
2913 PIXEL22_0
2914 PIXEL23_11
2915 PIXEL32_12
2916 PIXEL33_20
2918 break;
2920 case 87: {
2921 PIXEL00_81
2922 PIXEL01_31
2923 if (Diff(w[2], w[6])) {
2924 PIXEL02_0
2925 PIXEL03_0
2926 PIXEL13_0
2927 } else {
2928 PIXEL02_50
2929 PIXEL03_50
2930 PIXEL13_50
2932 PIXEL10_81
2933 PIXEL11_31
2934 PIXEL12_0
2935 PIXEL20_61
2936 PIXEL21_30
2937 if (Diff(w[6], w[8])) {
2938 PIXEL22_30
2939 PIXEL23_10
2940 PIXEL32_10
2941 PIXEL33_80
2942 } else {
2943 PIXEL22_0
2944 PIXEL23_11
2945 PIXEL32_12
2946 PIXEL33_20
2948 PIXEL30_80
2949 PIXEL31_10
2950 break;
2952 case 79: {
2953 if (Diff(w[4], w[2])) {
2954 PIXEL00_0
2955 PIXEL01_0
2956 PIXEL10_0
2957 } else {
2958 PIXEL00_50
2959 PIXEL01_50
2960 PIXEL10_50
2962 PIXEL02_32
2963 PIXEL03_82
2964 PIXEL11_0
2965 PIXEL12_32
2966 PIXEL13_82
2967 if (Diff(w[8], w[4])) {
2968 PIXEL20_10
2969 PIXEL21_30
2970 PIXEL30_80
2971 PIXEL31_10
2972 } else {
2973 PIXEL20_12
2974 PIXEL21_0
2975 PIXEL30_20
2976 PIXEL31_11
2978 PIXEL22_30
2979 PIXEL23_61
2980 PIXEL32_10
2981 PIXEL33_80
2982 break;
2984 case 122: {
2985 if (Diff(w[4], w[2])) {
2986 PIXEL00_80
2987 PIXEL01_10
2988 PIXEL10_10
2989 PIXEL11_30
2990 } else {
2991 PIXEL00_20
2992 PIXEL01_12
2993 PIXEL10_11
2994 PIXEL11_0
2996 if (Diff(w[2], w[6])) {
2997 PIXEL02_10
2998 PIXEL03_80
2999 PIXEL12_30
3000 PIXEL13_10
3001 } else {
3002 PIXEL02_11
3003 PIXEL03_20
3004 PIXEL12_0
3005 PIXEL13_12
3007 if (Diff(w[8], w[4])) {
3008 PIXEL20_0
3009 PIXEL30_0
3010 PIXEL31_0
3011 } else {
3012 PIXEL20_50
3013 PIXEL30_50
3014 PIXEL31_50
3016 PIXEL21_0
3017 if (Diff(w[6], w[8])) {
3018 PIXEL22_30
3019 PIXEL23_10
3020 PIXEL32_10
3021 PIXEL33_80
3022 } else {
3023 PIXEL22_0
3024 PIXEL23_11
3025 PIXEL32_12
3026 PIXEL33_20
3028 break;
3030 case 94: {
3031 if (Diff(w[4], w[2])) {
3032 PIXEL00_80
3033 PIXEL01_10
3034 PIXEL10_10
3035 PIXEL11_30
3036 } else {
3037 PIXEL00_20
3038 PIXEL01_12
3039 PIXEL10_11
3040 PIXEL11_0
3042 if (Diff(w[2], w[6])) {
3043 PIXEL02_0
3044 PIXEL03_0
3045 PIXEL13_0
3046 } else {
3047 PIXEL02_50
3048 PIXEL03_50
3049 PIXEL13_50
3051 PIXEL12_0
3052 if (Diff(w[8], w[4])) {
3053 PIXEL20_10
3054 PIXEL21_30
3055 PIXEL30_80
3056 PIXEL31_10
3057 } else {
3058 PIXEL20_12
3059 PIXEL21_0
3060 PIXEL30_20
3061 PIXEL31_11
3063 if (Diff(w[6], w[8])) {
3064 PIXEL22_30
3065 PIXEL23_10
3066 PIXEL32_10
3067 PIXEL33_80
3068 } else {
3069 PIXEL22_0
3070 PIXEL23_11
3071 PIXEL32_12
3072 PIXEL33_20
3074 break;
3076 case 218: {
3077 if (Diff(w[4], w[2])) {
3078 PIXEL00_80
3079 PIXEL01_10
3080 PIXEL10_10
3081 PIXEL11_30
3082 } else {
3083 PIXEL00_20
3084 PIXEL01_12
3085 PIXEL10_11
3086 PIXEL11_0
3088 if (Diff(w[2], w[6])) {
3089 PIXEL02_10
3090 PIXEL03_80
3091 PIXEL12_30
3092 PIXEL13_10
3093 } else {
3094 PIXEL02_11
3095 PIXEL03_20
3096 PIXEL12_0
3097 PIXEL13_12
3099 if (Diff(w[8], w[4])) {
3100 PIXEL20_10
3101 PIXEL21_30
3102 PIXEL30_80
3103 PIXEL31_10
3104 } else {
3105 PIXEL20_12
3106 PIXEL21_0
3107 PIXEL30_20
3108 PIXEL31_11
3110 PIXEL22_0
3111 if (Diff(w[6], w[8])) {
3112 PIXEL23_0
3113 PIXEL32_0
3114 PIXEL33_0
3115 } else {
3116 PIXEL23_50
3117 PIXEL32_50
3118 PIXEL33_50
3120 break;
3122 case 91: {
3123 if (Diff(w[4], w[2])) {
3124 PIXEL00_0
3125 PIXEL01_0
3126 PIXEL10_0
3127 } else {
3128 PIXEL00_50
3129 PIXEL01_50
3130 PIXEL10_50
3132 if (Diff(w[2], w[6])) {
3133 PIXEL02_10
3134 PIXEL03_80
3135 PIXEL12_30
3136 PIXEL13_10
3137 } else {
3138 PIXEL02_11
3139 PIXEL03_20
3140 PIXEL12_0
3141 PIXEL13_12
3143 PIXEL11_0
3144 if (Diff(w[8], w[4])) {
3145 PIXEL20_10
3146 PIXEL21_30
3147 PIXEL30_80
3148 PIXEL31_10
3149 } else {
3150 PIXEL20_12
3151 PIXEL21_0
3152 PIXEL30_20
3153 PIXEL31_11
3155 if (Diff(w[6], w[8])) {
3156 PIXEL22_30
3157 PIXEL23_10
3158 PIXEL32_10
3159 PIXEL33_80
3160 } else {
3161 PIXEL22_0
3162 PIXEL23_11
3163 PIXEL32_12
3164 PIXEL33_20
3166 break;
3168 case 229: {
3169 PIXEL00_20
3170 PIXEL01_60
3171 PIXEL02_60
3172 PIXEL03_20
3173 PIXEL10_60
3174 PIXEL11_70
3175 PIXEL12_70
3176 PIXEL13_60
3177 PIXEL20_82
3178 PIXEL21_32
3179 PIXEL22_31
3180 PIXEL23_81
3181 PIXEL30_82
3182 PIXEL31_32
3183 PIXEL32_31
3184 PIXEL33_81
3185 break;
3187 case 167: {
3188 PIXEL00_81
3189 PIXEL01_31
3190 PIXEL02_32
3191 PIXEL03_82
3192 PIXEL10_81
3193 PIXEL11_31
3194 PIXEL12_32
3195 PIXEL13_82
3196 PIXEL20_60
3197 PIXEL21_70
3198 PIXEL22_70
3199 PIXEL23_60
3200 PIXEL30_20
3201 PIXEL31_60
3202 PIXEL32_60
3203 PIXEL33_20
3204 break;
3206 case 173: {
3207 PIXEL00_82
3208 PIXEL01_82
3209 PIXEL02_60
3210 PIXEL03_20
3211 PIXEL10_32
3212 PIXEL11_32
3213 PIXEL12_70
3214 PIXEL13_60
3215 PIXEL20_31
3216 PIXEL21_31
3217 PIXEL22_70
3218 PIXEL23_60
3219 PIXEL30_81
3220 PIXEL31_81
3221 PIXEL32_60
3222 PIXEL33_20
3223 break;
3225 case 181: {
3226 PIXEL00_20
3227 PIXEL01_60
3228 PIXEL02_81
3229 PIXEL03_81
3230 PIXEL10_60
3231 PIXEL11_70
3232 PIXEL12_31
3233 PIXEL13_31
3234 PIXEL20_60
3235 PIXEL21_70
3236 PIXEL22_32
3237 PIXEL23_32
3238 PIXEL30_20
3239 PIXEL31_60
3240 PIXEL32_82
3241 PIXEL33_82
3242 break;
3244 case 186: {
3245 if (Diff(w[4], w[2])) {
3246 PIXEL00_80
3247 PIXEL01_10
3248 PIXEL10_10
3249 PIXEL11_30
3250 } else {
3251 PIXEL00_20
3252 PIXEL01_12
3253 PIXEL10_11
3254 PIXEL11_0
3256 if (Diff(w[2], w[6])) {
3257 PIXEL02_10
3258 PIXEL03_80
3259 PIXEL12_30
3260 PIXEL13_10
3261 } else {
3262 PIXEL02_11
3263 PIXEL03_20
3264 PIXEL12_0
3265 PIXEL13_12
3267 PIXEL20_31
3268 PIXEL21_31
3269 PIXEL22_32
3270 PIXEL23_32
3271 PIXEL30_81
3272 PIXEL31_81
3273 PIXEL32_82
3274 PIXEL33_82
3275 break;
3277 case 115: {
3278 PIXEL00_81
3279 PIXEL01_31
3280 if (Diff(w[2], w[6])) {
3281 PIXEL02_10
3282 PIXEL03_80
3283 PIXEL12_30
3284 PIXEL13_10
3285 } else {
3286 PIXEL02_11
3287 PIXEL03_20
3288 PIXEL12_0
3289 PIXEL13_12
3291 PIXEL10_81
3292 PIXEL11_31
3293 PIXEL20_82
3294 PIXEL21_32
3295 if (Diff(w[6], w[8])) {
3296 PIXEL22_30
3297 PIXEL23_10
3298 PIXEL32_10
3299 PIXEL33_80
3300 } else {
3301 PIXEL22_0
3302 PIXEL23_11
3303 PIXEL32_12
3304 PIXEL33_20
3306 PIXEL30_82
3307 PIXEL31_32
3308 break;
3310 case 93: {
3311 PIXEL00_82
3312 PIXEL01_82
3313 PIXEL02_81
3314 PIXEL03_81
3315 PIXEL10_32
3316 PIXEL11_32
3317 PIXEL12_31
3318 PIXEL13_31
3319 if (Diff(w[8], w[4])) {
3320 PIXEL20_10
3321 PIXEL21_30
3322 PIXEL30_80
3323 PIXEL31_10
3324 } else {
3325 PIXEL20_12
3326 PIXEL21_0
3327 PIXEL30_20
3328 PIXEL31_11
3330 if (Diff(w[6], w[8])) {
3331 PIXEL22_30
3332 PIXEL23_10
3333 PIXEL32_10
3334 PIXEL33_80
3335 } else {
3336 PIXEL22_0
3337 PIXEL23_11
3338 PIXEL32_12
3339 PIXEL33_20
3341 break;
3343 case 206: {
3344 if (Diff(w[4], w[2])) {
3345 PIXEL00_80
3346 PIXEL01_10
3347 PIXEL10_10
3348 PIXEL11_30
3349 } else {
3350 PIXEL00_20
3351 PIXEL01_12
3352 PIXEL10_11
3353 PIXEL11_0
3355 PIXEL02_32
3356 PIXEL03_82
3357 PIXEL12_32
3358 PIXEL13_82
3359 if (Diff(w[8], w[4])) {
3360 PIXEL20_10
3361 PIXEL21_30
3362 PIXEL30_80
3363 PIXEL31_10
3364 } else {
3365 PIXEL20_12
3366 PIXEL21_0
3367 PIXEL30_20
3368 PIXEL31_11
3370 PIXEL22_31
3371 PIXEL23_81
3372 PIXEL32_31
3373 PIXEL33_81
3374 break;
3376 case 205:
3377 case 201: {
3378 PIXEL00_82
3379 PIXEL01_82
3380 PIXEL02_60
3381 PIXEL03_20
3382 PIXEL10_32
3383 PIXEL11_32
3384 PIXEL12_70
3385 PIXEL13_60
3386 if (Diff(w[8], w[4])) {
3387 PIXEL20_10
3388 PIXEL21_30
3389 PIXEL30_80
3390 PIXEL31_10
3391 } else {
3392 PIXEL20_12
3393 PIXEL21_0
3394 PIXEL30_20
3395 PIXEL31_11
3397 PIXEL22_31
3398 PIXEL23_81
3399 PIXEL32_31
3400 PIXEL33_81
3401 break;
3403 case 174:
3404 case 46: {
3405 if (Diff(w[4], w[2])) {
3406 PIXEL00_80
3407 PIXEL01_10
3408 PIXEL10_10
3409 PIXEL11_30
3410 } else {
3411 PIXEL00_20
3412 PIXEL01_12
3413 PIXEL10_11
3414 PIXEL11_0
3416 PIXEL02_32
3417 PIXEL03_82
3418 PIXEL12_32
3419 PIXEL13_82
3420 PIXEL20_31
3421 PIXEL21_31
3422 PIXEL22_70
3423 PIXEL23_60
3424 PIXEL30_81
3425 PIXEL31_81
3426 PIXEL32_60
3427 PIXEL33_20
3428 break;
3430 case 179:
3431 case 147: {
3432 PIXEL00_81
3433 PIXEL01_31
3434 if (Diff(w[2], w[6])) {
3435 PIXEL02_10
3436 PIXEL03_80
3437 PIXEL12_30
3438 PIXEL13_10
3439 } else {
3440 PIXEL02_11
3441 PIXEL03_20
3442 PIXEL12_0
3443 PIXEL13_12
3445 PIXEL10_81
3446 PIXEL11_31
3447 PIXEL20_60
3448 PIXEL21_70
3449 PIXEL22_32
3450 PIXEL23_32
3451 PIXEL30_20
3452 PIXEL31_60
3453 PIXEL32_82
3454 PIXEL33_82
3455 break;
3457 case 117:
3458 case 116: {
3459 PIXEL00_20
3460 PIXEL01_60
3461 PIXEL02_81
3462 PIXEL03_81
3463 PIXEL10_60
3464 PIXEL11_70
3465 PIXEL12_31
3466 PIXEL13_31
3467 PIXEL20_82
3468 PIXEL21_32
3469 if (Diff(w[6], w[8])) {
3470 PIXEL22_30
3471 PIXEL23_10
3472 PIXEL32_10
3473 PIXEL33_80
3474 } else {
3475 PIXEL22_0
3476 PIXEL23_11
3477 PIXEL32_12
3478 PIXEL33_20
3480 PIXEL30_82
3481 PIXEL31_32
3482 break;
3484 case 189: {
3485 PIXEL00_82
3486 PIXEL01_82
3487 PIXEL02_81
3488 PIXEL03_81
3489 PIXEL10_32
3490 PIXEL11_32
3491 PIXEL12_31
3492 PIXEL13_31
3493 PIXEL20_31
3494 PIXEL21_31
3495 PIXEL22_32
3496 PIXEL23_32
3497 PIXEL30_81
3498 PIXEL31_81
3499 PIXEL32_82
3500 PIXEL33_82
3501 break;
3503 case 231: {
3504 PIXEL00_81
3505 PIXEL01_31
3506 PIXEL02_32
3507 PIXEL03_82
3508 PIXEL10_81
3509 PIXEL11_31
3510 PIXEL12_32
3511 PIXEL13_82
3512 PIXEL20_82
3513 PIXEL21_32
3514 PIXEL22_31
3515 PIXEL23_81
3516 PIXEL30_82
3517 PIXEL31_32
3518 PIXEL32_31
3519 PIXEL33_81
3520 break;
3522 case 126: {
3523 PIXEL00_80
3524 PIXEL01_10
3525 if (Diff(w[2], w[6])) {
3526 PIXEL02_0
3527 PIXEL03_0
3528 PIXEL13_0
3529 } else {
3530 PIXEL02_50
3531 PIXEL03_50
3532 PIXEL13_50
3534 PIXEL10_10
3535 PIXEL11_30
3536 PIXEL12_0
3537 if (Diff(w[8], w[4])) {
3538 PIXEL20_0
3539 PIXEL30_0
3540 PIXEL31_0
3541 } else {
3542 PIXEL20_50
3543 PIXEL30_50
3544 PIXEL31_50
3546 PIXEL21_0
3547 PIXEL22_30
3548 PIXEL23_10
3549 PIXEL32_10
3550 PIXEL33_80
3551 break;
3553 case 219: {
3554 if (Diff(w[4], w[2])) {
3555 PIXEL00_0
3556 PIXEL01_0
3557 PIXEL10_0
3558 } else {
3559 PIXEL00_50
3560 PIXEL01_50
3561 PIXEL10_50
3563 PIXEL02_10
3564 PIXEL03_80
3565 PIXEL11_0
3566 PIXEL12_30
3567 PIXEL13_10
3568 PIXEL20_10
3569 PIXEL21_30
3570 PIXEL22_0
3571 if (Diff(w[6], w[8])) {
3572 PIXEL23_0
3573 PIXEL32_0
3574 PIXEL33_0
3575 } else {
3576 PIXEL23_50
3577 PIXEL32_50
3578 PIXEL33_50
3580 PIXEL30_80
3581 PIXEL31_10
3582 break;
3584 case 125: {
3585 if (Diff(w[8], w[4])) {
3586 PIXEL00_82
3587 PIXEL10_32
3588 PIXEL20_0
3589 PIXEL21_0
3590 PIXEL30_0
3591 PIXEL31_0
3592 } else {
3593 PIXEL00_11
3594 PIXEL10_13
3595 PIXEL20_83
3596 PIXEL21_70
3597 PIXEL30_50
3598 PIXEL31_21
3600 PIXEL01_82
3601 PIXEL02_81
3602 PIXEL03_81
3603 PIXEL11_32
3604 PIXEL12_31
3605 PIXEL13_31
3606 PIXEL22_30
3607 PIXEL23_10
3608 PIXEL32_10
3609 PIXEL33_80
3610 break;
3612 case 221: {
3613 PIXEL00_82
3614 PIXEL01_82
3615 PIXEL02_81
3616 if (Diff(w[6], w[8])) {
3617 PIXEL03_81
3618 PIXEL13_31
3619 PIXEL22_0
3620 PIXEL23_0
3621 PIXEL32_0
3622 PIXEL33_0
3623 } else {
3624 PIXEL03_12
3625 PIXEL13_14
3626 PIXEL22_70
3627 PIXEL23_83
3628 PIXEL32_21
3629 PIXEL33_50
3631 PIXEL10_32
3632 PIXEL11_32
3633 PIXEL12_31
3634 PIXEL20_10
3635 PIXEL21_30
3636 PIXEL30_80
3637 PIXEL31_10
3638 break;
3640 case 207: {
3641 if (Diff(w[4], w[2])) {
3642 PIXEL00_0
3643 PIXEL01_0
3644 PIXEL02_32
3645 PIXEL03_82
3646 PIXEL10_0
3647 PIXEL11_0
3648 } else {
3649 PIXEL00_50
3650 PIXEL01_83
3651 PIXEL02_13
3652 PIXEL03_11
3653 PIXEL10_21
3654 PIXEL11_70
3656 PIXEL12_32
3657 PIXEL13_82
3658 PIXEL20_10
3659 PIXEL21_30
3660 PIXEL22_31
3661 PIXEL23_81
3662 PIXEL30_80
3663 PIXEL31_10
3664 PIXEL32_31
3665 PIXEL33_81
3666 break;
3668 case 238: {
3669 PIXEL00_80
3670 PIXEL01_10
3671 PIXEL02_32
3672 PIXEL03_82
3673 PIXEL10_10
3674 PIXEL11_30
3675 PIXEL12_32
3676 PIXEL13_82
3677 if (Diff(w[8], w[4])) {
3678 PIXEL20_0
3679 PIXEL21_0
3680 PIXEL30_0
3681 PIXEL31_0
3682 PIXEL32_31
3683 PIXEL33_81
3684 } else {
3685 PIXEL20_21
3686 PIXEL21_70
3687 PIXEL30_50
3688 PIXEL31_83
3689 PIXEL32_14
3690 PIXEL33_12
3692 PIXEL22_31
3693 PIXEL23_81
3694 break;
3696 case 190: {
3697 PIXEL00_80
3698 PIXEL01_10
3699 if (Diff(w[2], w[6])) {
3700 PIXEL02_0
3701 PIXEL03_0
3702 PIXEL12_0
3703 PIXEL13_0
3704 PIXEL23_32
3705 PIXEL33_82
3706 } else {
3707 PIXEL02_21
3708 PIXEL03_50
3709 PIXEL12_70
3710 PIXEL13_83
3711 PIXEL23_13
3712 PIXEL33_11
3714 PIXEL10_10
3715 PIXEL11_30
3716 PIXEL20_31
3717 PIXEL21_31
3718 PIXEL22_32
3719 PIXEL30_81
3720 PIXEL31_81
3721 PIXEL32_82
3722 break;
3724 case 187: {
3725 if (Diff(w[4], w[2])) {
3726 PIXEL00_0
3727 PIXEL01_0
3728 PIXEL10_0
3729 PIXEL11_0
3730 PIXEL20_31
3731 PIXEL30_81
3732 } else {
3733 PIXEL00_50
3734 PIXEL01_21
3735 PIXEL10_83
3736 PIXEL11_70
3737 PIXEL20_14
3738 PIXEL30_12
3740 PIXEL02_10
3741 PIXEL03_80
3742 PIXEL12_30
3743 PIXEL13_10
3744 PIXEL21_31
3745 PIXEL22_32
3746 PIXEL23_32
3747 PIXEL31_81
3748 PIXEL32_82
3749 PIXEL33_82
3750 break;
3752 case 243: {
3753 PIXEL00_81
3754 PIXEL01_31
3755 PIXEL02_10
3756 PIXEL03_80
3757 PIXEL10_81
3758 PIXEL11_31
3759 PIXEL12_30
3760 PIXEL13_10
3761 PIXEL20_82
3762 PIXEL21_32
3763 if (Diff(w[6], w[8])) {
3764 PIXEL22_0
3765 PIXEL23_0
3766 PIXEL30_82
3767 PIXEL31_32
3768 PIXEL32_0
3769 PIXEL33_0
3770 } else {
3771 PIXEL22_70
3772 PIXEL23_21
3773 PIXEL30_11
3774 PIXEL31_13
3775 PIXEL32_83
3776 PIXEL33_50
3778 break;
3780 case 119: {
3781 if (Diff(w[2], w[6])) {
3782 PIXEL00_81
3783 PIXEL01_31
3784 PIXEL02_0
3785 PIXEL03_0
3786 PIXEL12_0
3787 PIXEL13_0
3788 } else {
3789 PIXEL00_12
3790 PIXEL01_14
3791 PIXEL02_83
3792 PIXEL03_50
3793 PIXEL12_70
3794 PIXEL13_21
3796 PIXEL10_81
3797 PIXEL11_31
3798 PIXEL20_82
3799 PIXEL21_32
3800 PIXEL22_30
3801 PIXEL23_10
3802 PIXEL30_82
3803 PIXEL31_32
3804 PIXEL32_10
3805 PIXEL33_80
3806 break;
3808 case 237:
3809 case 233: {
3810 PIXEL00_82
3811 PIXEL01_82
3812 PIXEL02_60
3813 PIXEL03_20
3814 PIXEL10_32
3815 PIXEL11_32
3816 PIXEL12_70
3817 PIXEL13_60
3818 PIXEL20_0
3819 PIXEL21_0
3820 PIXEL22_31
3821 PIXEL23_81
3822 if (Diff(w[8], w[4])) {
3823 PIXEL30_0
3824 } else {
3825 PIXEL30_20
3827 PIXEL31_0
3828 PIXEL32_31
3829 PIXEL33_81
3830 break;
3832 case 175:
3833 case 47: {
3834 if (Diff(w[4], w[2])) {
3835 PIXEL00_0
3836 } else {
3837 PIXEL00_20
3839 PIXEL01_0
3840 PIXEL02_32
3841 PIXEL03_82
3842 PIXEL10_0
3843 PIXEL11_0
3844 PIXEL12_32
3845 PIXEL13_82
3846 PIXEL20_31
3847 PIXEL21_31
3848 PIXEL22_70
3849 PIXEL23_60
3850 PIXEL30_81
3851 PIXEL31_81
3852 PIXEL32_60
3853 PIXEL33_20
3854 break;
3856 case 183:
3857 case 151: {
3858 PIXEL00_81
3859 PIXEL01_31
3860 PIXEL02_0
3861 if (Diff(w[2], w[6])) {
3862 PIXEL03_0
3863 } else {
3864 PIXEL03_20
3866 PIXEL10_81
3867 PIXEL11_31
3868 PIXEL12_0
3869 PIXEL13_0
3870 PIXEL20_60
3871 PIXEL21_70
3872 PIXEL22_32
3873 PIXEL23_32
3874 PIXEL30_20
3875 PIXEL31_60
3876 PIXEL32_82
3877 PIXEL33_82
3878 break;
3880 case 245:
3881 case 244: {
3882 PIXEL00_20
3883 PIXEL01_60
3884 PIXEL02_81
3885 PIXEL03_81
3886 PIXEL10_60
3887 PIXEL11_70
3888 PIXEL12_31
3889 PIXEL13_31
3890 PIXEL20_82
3891 PIXEL21_32
3892 PIXEL22_0
3893 PIXEL23_0
3894 PIXEL30_82
3895 PIXEL31_32
3896 PIXEL32_0
3897 if (Diff(w[6], w[8])) {
3898 PIXEL33_0
3899 } else {
3900 PIXEL33_20
3902 break;
3904 case 250: {
3905 PIXEL00_80
3906 PIXEL01_10
3907 PIXEL02_10
3908 PIXEL03_80
3909 PIXEL10_10
3910 PIXEL11_30
3911 PIXEL12_30
3912 PIXEL13_10
3913 if (Diff(w[8], w[4])) {
3914 PIXEL20_0
3915 PIXEL30_0
3916 PIXEL31_0
3917 } else {
3918 PIXEL20_50
3919 PIXEL30_50
3920 PIXEL31_50
3922 PIXEL21_0
3923 PIXEL22_0
3924 if (Diff(w[6], w[8])) {
3925 PIXEL23_0
3926 PIXEL32_0
3927 PIXEL33_0
3928 } else {
3929 PIXEL23_50
3930 PIXEL32_50
3931 PIXEL33_50
3933 break;
3935 case 123: {
3936 if (Diff(w[4], w[2])) {
3937 PIXEL00_0
3938 PIXEL01_0
3939 PIXEL10_0
3940 } else {
3941 PIXEL00_50
3942 PIXEL01_50
3943 PIXEL10_50
3945 PIXEL02_10
3946 PIXEL03_80
3947 PIXEL11_0
3948 PIXEL12_30
3949 PIXEL13_10
3950 if (Diff(w[8], w[4])) {
3951 PIXEL20_0
3952 PIXEL30_0
3953 PIXEL31_0
3954 } else {
3955 PIXEL20_50
3956 PIXEL30_50
3957 PIXEL31_50
3959 PIXEL21_0
3960 PIXEL22_30
3961 PIXEL23_10
3962 PIXEL32_10
3963 PIXEL33_80
3964 break;
3966 case 95: {
3967 if (Diff(w[4], w[2])) {
3968 PIXEL00_0
3969 PIXEL01_0
3970 PIXEL10_0
3971 } else {
3972 PIXEL00_50
3973 PIXEL01_50
3974 PIXEL10_50
3976 if (Diff(w[2], w[6])) {
3977 PIXEL02_0
3978 PIXEL03_0
3979 PIXEL13_0
3980 } else {
3981 PIXEL02_50
3982 PIXEL03_50
3983 PIXEL13_50
3985 PIXEL11_0
3986 PIXEL12_0
3987 PIXEL20_10
3988 PIXEL21_30
3989 PIXEL22_30
3990 PIXEL23_10
3991 PIXEL30_80
3992 PIXEL31_10
3993 PIXEL32_10
3994 PIXEL33_80
3995 break;
3997 case 222: {
3998 PIXEL00_80
3999 PIXEL01_10
4000 if (Diff(w[2], w[6])) {
4001 PIXEL02_0
4002 PIXEL03_0
4003 PIXEL13_0
4004 } else {
4005 PIXEL02_50
4006 PIXEL03_50
4007 PIXEL13_50
4009 PIXEL10_10
4010 PIXEL11_30
4011 PIXEL12_0
4012 PIXEL20_10
4013 PIXEL21_30
4014 PIXEL22_0
4015 if (Diff(w[6], w[8])) {
4016 PIXEL23_0
4017 PIXEL32_0
4018 PIXEL33_0
4019 } else {
4020 PIXEL23_50
4021 PIXEL32_50
4022 PIXEL33_50
4024 PIXEL30_80
4025 PIXEL31_10
4026 break;
4028 case 252: {
4029 PIXEL00_80
4030 PIXEL01_61
4031 PIXEL02_81
4032 PIXEL03_81
4033 PIXEL10_10
4034 PIXEL11_30
4035 PIXEL12_31
4036 PIXEL13_31
4037 if (Diff(w[8], w[4])) {
4038 PIXEL20_0
4039 PIXEL30_0
4040 PIXEL31_0
4041 } else {
4042 PIXEL20_50
4043 PIXEL30_50
4044 PIXEL31_50
4046 PIXEL21_0
4047 PIXEL22_0
4048 PIXEL23_0
4049 PIXEL32_0
4050 if (Diff(w[6], w[8])) {
4051 PIXEL33_0
4052 } else {
4053 PIXEL33_20
4055 break;
4057 case 249: {
4058 PIXEL00_82
4059 PIXEL01_82
4060 PIXEL02_61
4061 PIXEL03_80
4062 PIXEL10_32
4063 PIXEL11_32
4064 PIXEL12_30
4065 PIXEL13_10
4066 PIXEL20_0
4067 PIXEL21_0
4068 PIXEL22_0
4069 if (Diff(w[6], w[8])) {
4070 PIXEL23_0
4071 PIXEL32_0
4072 PIXEL33_0
4073 } else {
4074 PIXEL23_50
4075 PIXEL32_50
4076 PIXEL33_50
4078 if (Diff(w[8], w[4])) {
4079 PIXEL30_0
4080 } else {
4081 PIXEL30_20
4083 PIXEL31_0
4084 break;
4086 case 235: {
4087 if (Diff(w[4], w[2])) {
4088 PIXEL00_0
4089 PIXEL01_0
4090 PIXEL10_0
4091 } else {
4092 PIXEL00_50
4093 PIXEL01_50
4094 PIXEL10_50
4096 PIXEL02_10
4097 PIXEL03_80
4098 PIXEL11_0
4099 PIXEL12_30
4100 PIXEL13_61
4101 PIXEL20_0
4102 PIXEL21_0
4103 PIXEL22_31
4104 PIXEL23_81
4105 if (Diff(w[8], w[4])) {
4106 PIXEL30_0
4107 } else {
4108 PIXEL30_20
4110 PIXEL31_0
4111 PIXEL32_31
4112 PIXEL33_81
4113 break;
4115 case 111: {
4116 if (Diff(w[4], w[2])) {
4117 PIXEL00_0
4118 } else {
4119 PIXEL00_20
4121 PIXEL01_0
4122 PIXEL02_32
4123 PIXEL03_82
4124 PIXEL10_0
4125 PIXEL11_0
4126 PIXEL12_32
4127 PIXEL13_82
4128 if (Diff(w[8], w[4])) {
4129 PIXEL20_0
4130 PIXEL30_0
4131 PIXEL31_0
4132 } else {
4133 PIXEL20_50
4134 PIXEL30_50
4135 PIXEL31_50
4137 PIXEL21_0
4138 PIXEL22_30
4139 PIXEL23_61
4140 PIXEL32_10
4141 PIXEL33_80
4142 break;
4144 case 63: {
4145 if (Diff(w[4], w[2])) {
4146 PIXEL00_0
4147 } else {
4148 PIXEL00_20
4150 PIXEL01_0
4151 if (Diff(w[2], w[6])) {
4152 PIXEL02_0
4153 PIXEL03_0
4154 PIXEL13_0
4155 } else {
4156 PIXEL02_50
4157 PIXEL03_50
4158 PIXEL13_50
4160 PIXEL10_0
4161 PIXEL11_0
4162 PIXEL12_0
4163 PIXEL20_31
4164 PIXEL21_31
4165 PIXEL22_30
4166 PIXEL23_10
4167 PIXEL30_81
4168 PIXEL31_81
4169 PIXEL32_61
4170 PIXEL33_80
4171 break;
4173 case 159: {
4174 if (Diff(w[4], w[2])) {
4175 PIXEL00_0
4176 PIXEL01_0
4177 PIXEL10_0
4178 } else {
4179 PIXEL00_50
4180 PIXEL01_50
4181 PIXEL10_50
4183 PIXEL02_0
4184 if (Diff(w[2], w[6])) {
4185 PIXEL03_0
4186 } else {
4187 PIXEL03_20
4189 PIXEL11_0
4190 PIXEL12_0
4191 PIXEL13_0
4192 PIXEL20_10
4193 PIXEL21_30
4194 PIXEL22_32
4195 PIXEL23_32
4196 PIXEL30_80
4197 PIXEL31_61
4198 PIXEL32_82
4199 PIXEL33_82
4200 break;
4202 case 215: {
4203 PIXEL00_81
4204 PIXEL01_31
4205 PIXEL02_0
4206 if (Diff(w[2], w[6])) {
4207 PIXEL03_0
4208 } else {
4209 PIXEL03_20
4211 PIXEL10_81
4212 PIXEL11_31
4213 PIXEL12_0
4214 PIXEL13_0
4215 PIXEL20_61
4216 PIXEL21_30
4217 PIXEL22_0
4218 if (Diff(w[6], w[8])) {
4219 PIXEL23_0
4220 PIXEL32_0
4221 PIXEL33_0
4222 } else {
4223 PIXEL23_50
4224 PIXEL32_50
4225 PIXEL33_50
4227 PIXEL30_80
4228 PIXEL31_10
4229 break;
4231 case 246: {
4232 PIXEL00_80
4233 PIXEL01_10
4234 if (Diff(w[2], w[6])) {
4235 PIXEL02_0
4236 PIXEL03_0
4237 PIXEL13_0
4238 } else {
4239 PIXEL02_50
4240 PIXEL03_50
4241 PIXEL13_50
4243 PIXEL10_61
4244 PIXEL11_30
4245 PIXEL12_0
4246 PIXEL20_82
4247 PIXEL21_32
4248 PIXEL22_0
4249 PIXEL23_0
4250 PIXEL30_82
4251 PIXEL31_32
4252 PIXEL32_0
4253 if (Diff(w[6], w[8])) {
4254 PIXEL33_0
4255 } else {
4256 PIXEL33_20
4258 break;
4260 case 254: {
4261 PIXEL00_80
4262 PIXEL01_10
4263 if (Diff(w[2], w[6])) {
4264 PIXEL02_0
4265 PIXEL03_0
4266 PIXEL13_0
4267 } else {
4268 PIXEL02_50
4269 PIXEL03_50
4270 PIXEL13_50
4272 PIXEL10_10
4273 PIXEL11_30
4274 PIXEL12_0
4275 if (Diff(w[8], w[4])) {
4276 PIXEL20_0
4277 PIXEL30_0
4278 PIXEL31_0
4279 } else {
4280 PIXEL20_50
4281 PIXEL30_50
4282 PIXEL31_50
4284 PIXEL21_0
4285 PIXEL22_0
4286 PIXEL23_0
4287 PIXEL32_0
4288 if (Diff(w[6], w[8])) {
4289 PIXEL33_0
4290 } else {
4291 PIXEL33_20
4293 break;
4295 case 253: {
4296 PIXEL00_82
4297 PIXEL01_82
4298 PIXEL02_81
4299 PIXEL03_81
4300 PIXEL10_32
4301 PIXEL11_32
4302 PIXEL12_31
4303 PIXEL13_31
4304 PIXEL20_0
4305 PIXEL21_0
4306 PIXEL22_0
4307 PIXEL23_0
4308 if (Diff(w[8], w[4])) {
4309 PIXEL30_0
4310 } else {
4311 PIXEL30_20
4313 PIXEL31_0
4314 PIXEL32_0
4315 if (Diff(w[6], w[8])) {
4316 PIXEL33_0
4317 } else {
4318 PIXEL33_20
4320 break;
4322 case 251: {
4323 if (Diff(w[4], w[2])) {
4324 PIXEL00_0
4325 PIXEL01_0
4326 PIXEL10_0
4327 } else {
4328 PIXEL00_50
4329 PIXEL01_50
4330 PIXEL10_50
4332 PIXEL02_10
4333 PIXEL03_80
4334 PIXEL11_0
4335 PIXEL12_30
4336 PIXEL13_10
4337 PIXEL20_0
4338 PIXEL21_0
4339 PIXEL22_0
4340 if (Diff(w[6], w[8])) {
4341 PIXEL23_0
4342 PIXEL32_0
4343 PIXEL33_0
4344 } else {
4345 PIXEL23_50
4346 PIXEL32_50
4347 PIXEL33_50
4349 if (Diff(w[8], w[4])) {
4350 PIXEL30_0
4351 } else {
4352 PIXEL30_20
4354 PIXEL31_0
4355 break;
4357 case 239: {
4358 if (Diff(w[4], w[2])) {
4359 PIXEL00_0
4360 } else {
4361 PIXEL00_20
4363 PIXEL01_0
4364 PIXEL02_32
4365 PIXEL03_82
4366 PIXEL10_0
4367 PIXEL11_0
4368 PIXEL12_32
4369 PIXEL13_82
4370 PIXEL20_0
4371 PIXEL21_0
4372 PIXEL22_31
4373 PIXEL23_81
4374 if (Diff(w[8], w[4])) {
4375 PIXEL30_0
4376 } else {
4377 PIXEL30_20
4379 PIXEL31_0
4380 PIXEL32_31
4381 PIXEL33_81
4382 break;
4384 case 127: {
4385 if (Diff(w[4], w[2])) {
4386 PIXEL00_0
4387 } else {
4388 PIXEL00_20
4390 PIXEL01_0
4391 if (Diff(w[2], w[6])) {
4392 PIXEL02_0
4393 PIXEL03_0
4394 PIXEL13_0
4395 } else {
4396 PIXEL02_50
4397 PIXEL03_50
4398 PIXEL13_50
4400 PIXEL10_0
4401 PIXEL11_0
4402 PIXEL12_0
4403 if (Diff(w[8], w[4])) {
4404 PIXEL20_0
4405 PIXEL30_0
4406 PIXEL31_0
4407 } else {
4408 PIXEL20_50
4409 PIXEL30_50
4410 PIXEL31_50
4412 PIXEL21_0
4413 PIXEL22_30
4414 PIXEL23_10
4415 PIXEL32_10
4416 PIXEL33_80
4417 break;
4419 case 191: {
4420 if (Diff(w[4], w[2])) {
4421 PIXEL00_0
4422 } else {
4423 PIXEL00_20
4425 PIXEL01_0
4426 PIXEL02_0
4427 if (Diff(w[2], w[6])) {
4428 PIXEL03_0
4429 } else {
4430 PIXEL03_20
4432 PIXEL10_0
4433 PIXEL11_0
4434 PIXEL12_0
4435 PIXEL13_0
4436 PIXEL20_31
4437 PIXEL21_31
4438 PIXEL22_32
4439 PIXEL23_32
4440 PIXEL30_81
4441 PIXEL31_81
4442 PIXEL32_82
4443 PIXEL33_82
4444 break;
4446 case 223: {
4447 if (Diff(w[4], w[2])) {
4448 PIXEL00_0
4449 PIXEL01_0
4450 PIXEL10_0
4451 } else {
4452 PIXEL00_50
4453 PIXEL01_50
4454 PIXEL10_50
4456 PIXEL02_0
4457 if (Diff(w[2], w[6])) {
4458 PIXEL03_0
4459 } else {
4460 PIXEL03_20
4462 PIXEL11_0
4463 PIXEL12_0
4464 PIXEL13_0
4465 PIXEL20_10
4466 PIXEL21_30
4467 PIXEL22_0
4468 if (Diff(w[6], w[8])) {
4469 PIXEL23_0
4470 PIXEL32_0
4471 PIXEL33_0
4472 } else {
4473 PIXEL23_50
4474 PIXEL32_50
4475 PIXEL33_50
4477 PIXEL30_80
4478 PIXEL31_10
4479 break;
4481 case 247: {
4482 PIXEL00_81
4483 PIXEL01_31
4484 PIXEL02_0
4485 if (Diff(w[2], w[6])) {
4486 PIXEL03_0
4487 } else {
4488 PIXEL03_20
4490 PIXEL10_81
4491 PIXEL11_31
4492 PIXEL12_0
4493 PIXEL13_0
4494 PIXEL20_82
4495 PIXEL21_32
4496 PIXEL22_0
4497 PIXEL23_0
4498 PIXEL30_82
4499 PIXEL31_32
4500 PIXEL32_0
4501 if (Diff(w[6], w[8])) {
4502 PIXEL33_0
4503 } else {
4504 PIXEL33_20
4506 break;
4508 case 255: {
4509 if (Diff(w[4], w[2])) {
4510 PIXEL00_0
4511 } else {
4512 PIXEL00_20
4514 PIXEL01_0
4515 PIXEL02_0
4516 if (Diff(w[2], w[6])) {
4517 PIXEL03_0
4518 } else {
4519 PIXEL03_20
4521 PIXEL10_0
4522 PIXEL11_0
4523 PIXEL12_0
4524 PIXEL13_0
4525 PIXEL20_0
4526 PIXEL21_0
4527 PIXEL22_0
4528 PIXEL23_0
4529 if (Diff(w[8], w[4])) {
4530 PIXEL30_0
4531 } else {
4532 PIXEL30_20
4534 PIXEL31_0
4535 PIXEL32_0
4536 if (Diff(w[6], w[8])) {
4537 PIXEL33_0
4538 } else {
4539 PIXEL33_20
4541 break;