1 /*
2  * Copyright (C) 2003 Maxim Stepin ( maxst@hiend3d.com )
3  *
4  * Copyright (C) 2010 Cameron Zemek ( grom@zeminvaders.net)
5  *
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.
10  *
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.
15  *
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
19  */
20 
21 #include <stdint.h>
22 #include "hqx/common.h"
23 #include "hqx/hqx.h"
24 
25 #define PIXEL00_0     *dp = w[5];
26 #define PIXEL00_11    *dp = Interp1(w[5], w[4]);
27 #define PIXEL00_12    *dp = Interp1(w[5], w[2]);
28 #define PIXEL00_20    *dp = Interp2(w[5], w[2], w[4]);
29 #define PIXEL00_50    *dp = Interp5(w[2], w[4]);
30 #define PIXEL00_80    *dp = Interp8(w[5], w[1]);
31 #define PIXEL00_81    *dp = Interp8(w[5], w[4]);
32 #define PIXEL00_82    *dp = Interp8(w[5], w[2]);
33 #define PIXEL01_0     *(dp+1) = w[5];
34 #define PIXEL01_10    *(dp+1) = Interp1(w[5], w[1]);
35 #define PIXEL01_12    *(dp+1) = Interp1(w[5], w[2]);
36 #define PIXEL01_14    *(dp+1) = Interp1(w[2], w[5]);
37 #define PIXEL01_21    *(dp+1) = Interp2(w[2], w[5], w[4]);
38 #define PIXEL01_31    *(dp+1) = Interp3(w[5], w[4]);
39 #define PIXEL01_50    *(dp+1) = Interp5(w[2], w[5]);
40 #define PIXEL01_60    *(dp+1) = Interp6(w[5], w[2], w[4]);
41 #define PIXEL01_61    *(dp+1) = Interp6(w[5], w[2], w[1]);
42 #define PIXEL01_82    *(dp+1) = Interp8(w[5], w[2]);
43 #define PIXEL01_83    *(dp+1) = Interp8(w[2], w[4]);
44 #define PIXEL02_0     *(dp+2) = w[5];
45 #define PIXEL02_10    *(dp+2) = Interp1(w[5], w[3]);
46 #define PIXEL02_11    *(dp+2) = Interp1(w[5], w[2]);
47 #define PIXEL02_13    *(dp+2) = Interp1(w[2], w[5]);
48 #define PIXEL02_21    *(dp+2) = Interp2(w[2], w[5], w[6]);
49 #define PIXEL02_32    *(dp+2) = Interp3(w[5], w[6]);
50 #define PIXEL02_50    *(dp+2) = Interp5(w[2], w[5]);
51 #define PIXEL02_60    *(dp+2) = Interp6(w[5], w[2], w[6]);
52 #define PIXEL02_61    *(dp+2) = Interp6(w[5], w[2], w[3]);
53 #define PIXEL02_81    *(dp+2) = Interp8(w[5], w[2]);
54 #define PIXEL02_83    *(dp+2) = Interp8(w[2], w[6]);
55 #define PIXEL03_0     *(dp+3) = w[5];
56 #define PIXEL03_11    *(dp+3) = Interp1(w[5], w[2]);
57 #define PIXEL03_12    *(dp+3) = Interp1(w[5], w[6]);
58 #define PIXEL03_20    *(dp+3) = Interp2(w[5], w[2], w[6]);
59 #define PIXEL03_50    *(dp+3) = Interp5(w[2], w[6]);
60 #define PIXEL03_80    *(dp+3) = Interp8(w[5], w[3]);
61 #define PIXEL03_81    *(dp+3) = Interp8(w[5], w[2]);
62 #define PIXEL03_82    *(dp+3) = Interp8(w[5], w[6]);
63 #define PIXEL10_0     *(dp+dpL) = w[5];
64 #define PIXEL10_10    *(dp+dpL) = Interp1(w[5], w[1]);
65 #define PIXEL10_11    *(dp+dpL) = Interp1(w[5], w[4]);
66 #define PIXEL10_13    *(dp+dpL) = Interp1(w[4], w[5]);
67 #define PIXEL10_21    *(dp+dpL) = Interp2(w[4], w[5], w[2]);
68 #define PIXEL10_32    *(dp+dpL) = Interp3(w[5], w[2]);
69 #define PIXEL10_50    *(dp+dpL) = Interp5(w[4], w[5]);
70 #define PIXEL10_60    *(dp+dpL) = Interp6(w[5], w[4], w[2]);
71 #define PIXEL10_61    *(dp+dpL) = Interp6(w[5], w[4], w[1]);
72 #define PIXEL10_81    *(dp+dpL) = Interp8(w[5], w[4]);
73 #define PIXEL10_83    *(dp+dpL) = Interp8(w[4], w[2]);
74 #define PIXEL11_0     *(dp+dpL+1) = w[5];
75 #define PIXEL11_30    *(dp+dpL+1) = Interp3(w[5], w[1]);
76 #define PIXEL11_31    *(dp+dpL+1) = Interp3(w[5], w[4]);
77 #define PIXEL11_32    *(dp+dpL+1) = Interp3(w[5], w[2]);
78 #define PIXEL11_70    *(dp+dpL+1) = Interp7(w[5], w[4], w[2]);
79 #define PIXEL12_0     *(dp+dpL+2) = w[5];
80 #define PIXEL12_30    *(dp+dpL+2) = Interp3(w[5], w[3]);
81 #define PIXEL12_31    *(dp+dpL+2) = Interp3(w[5], w[2]);
82 #define PIXEL12_32    *(dp+dpL+2) = Interp3(w[5], w[6]);
83 #define PIXEL12_70    *(dp+dpL+2) = Interp7(w[5], w[6], w[2]);
84 #define PIXEL13_0     *(dp+dpL+3) = w[5];
85 #define PIXEL13_10    *(dp+dpL+3) = Interp1(w[5], w[3]);
86 #define PIXEL13_12    *(dp+dpL+3) = Interp1(w[5], w[6]);
87 #define PIXEL13_14    *(dp+dpL+3) = Interp1(w[6], w[5]);
88 #define PIXEL13_21    *(dp+dpL+3) = Interp2(w[6], w[5], w[2]);
89 #define PIXEL13_31    *(dp+dpL+3) = Interp3(w[5], w[2]);
90 #define PIXEL13_50    *(dp+dpL+3) = Interp5(w[6], w[5]);
91 #define PIXEL13_60    *(dp+dpL+3) = Interp6(w[5], w[6], w[2]);
92 #define PIXEL13_61    *(dp+dpL+3) = Interp6(w[5], w[6], w[3]);
93 #define PIXEL13_82    *(dp+dpL+3) = Interp8(w[5], w[6]);
94 #define PIXEL13_83    *(dp+dpL+3) = Interp8(w[6], w[2]);
95 #define PIXEL20_0     *(dp+dpL+dpL) = w[5];
96 #define PIXEL20_10    *(dp+dpL+dpL) = Interp1(w[5], w[7]);
97 #define PIXEL20_12    *(dp+dpL+dpL) = Interp1(w[5], w[4]);
98 #define PIXEL20_14    *(dp+dpL+dpL) = Interp1(w[4], w[5]);
99 #define PIXEL20_21    *(dp+dpL+dpL) = Interp2(w[4], w[5], w[8]);
100 #define PIXEL20_31    *(dp+dpL+dpL) = Interp3(w[5], w[8]);
101 #define PIXEL20_50    *(dp+dpL+dpL) = Interp5(w[4], w[5]);
102 #define PIXEL20_60    *(dp+dpL+dpL) = Interp6(w[5], w[4], w[8]);
103 #define PIXEL20_61    *(dp+dpL+dpL) = Interp6(w[5], w[4], w[7]);
104 #define PIXEL20_82    *(dp+dpL+dpL) = Interp8(w[5], w[4]);
105 #define PIXEL20_83    *(dp+dpL+dpL) = Interp8(w[4], w[8]);
106 #define PIXEL21_0     *(dp+dpL+dpL+1) = w[5];
107 #define PIXEL21_30    *(dp+dpL+dpL+1) = Interp3(w[5], w[7]);
108 #define PIXEL21_31    *(dp+dpL+dpL+1) = Interp3(w[5], w[8]);
109 #define PIXEL21_32    *(dp+dpL+dpL+1) = Interp3(w[5], w[4]);
110 #define PIXEL21_70    *(dp+dpL+dpL+1) = Interp7(w[5], w[4], w[8]);
111 #define PIXEL22_0     *(dp+dpL+dpL+2) = w[5];
112 #define PIXEL22_30    *(dp+dpL+dpL+2) = Interp3(w[5], w[9]);
113 #define PIXEL22_31    *(dp+dpL+dpL+2) = Interp3(w[5], w[6]);
114 #define PIXEL22_32    *(dp+dpL+dpL+2) = Interp3(w[5], w[8]);
115 #define PIXEL22_70    *(dp+dpL+dpL+2) = Interp7(w[5], w[6], w[8]);
116 #define PIXEL23_0     *(dp+dpL+dpL+3) = w[5];
117 #define PIXEL23_10    *(dp+dpL+dpL+3) = Interp1(w[5], w[9]);
118 #define PIXEL23_11    *(dp+dpL+dpL+3) = Interp1(w[5], w[6]);
119 #define PIXEL23_13    *(dp+dpL+dpL+3) = Interp1(w[6], w[5]);
120 #define PIXEL23_21    *(dp+dpL+dpL+3) = Interp2(w[6], w[5], w[8]);
121 #define PIXEL23_32    *(dp+dpL+dpL+3) = Interp3(w[5], w[8]);
122 #define PIXEL23_50    *(dp+dpL+dpL+3) = Interp5(w[6], w[5]);
123 #define PIXEL23_60    *(dp+dpL+dpL+3) = Interp6(w[5], w[6], w[8]);
124 #define PIXEL23_61    *(dp+dpL+dpL+3) = Interp6(w[5], w[6], w[9]);
125 #define PIXEL23_81    *(dp+dpL+dpL+3) = Interp8(w[5], w[6]);
126 #define PIXEL23_83    *(dp+dpL+dpL+3) = Interp8(w[6], w[8]);
127 #define PIXEL30_0     *(dp+dpL+dpL+dpL) = w[5];
128 #define PIXEL30_11    *(dp+dpL+dpL+dpL) = Interp1(w[5], w[8]);
129 #define PIXEL30_12    *(dp+dpL+dpL+dpL) = Interp1(w[5], w[4]);
130 #define PIXEL30_20    *(dp+dpL+dpL+dpL) = Interp2(w[5], w[8], w[4]);
131 #define PIXEL30_50    *(dp+dpL+dpL+dpL) = Interp5(w[8], w[4]);
132 #define PIXEL30_80    *(dp+dpL+dpL+dpL) = Interp8(w[5], w[7]);
133 #define PIXEL30_81    *(dp+dpL+dpL+dpL) = Interp8(w[5], w[8]);
134 #define PIXEL30_82    *(dp+dpL+dpL+dpL) = Interp8(w[5], w[4]);
135 #define PIXEL31_0     *(dp+dpL+dpL+dpL+1) = w[5];
136 #define PIXEL31_10    *(dp+dpL+dpL+dpL+1) = Interp1(w[5], w[7]);
137 #define PIXEL31_11    *(dp+dpL+dpL+dpL+1) = Interp1(w[5], w[8]);
138 #define PIXEL31_13    *(dp+dpL+dpL+dpL+1) = Interp1(w[8], w[5]);
139 #define PIXEL31_21    *(dp+dpL+dpL+dpL+1) = Interp2(w[8], w[5], w[4]);
140 #define PIXEL31_32    *(dp+dpL+dpL+dpL+1) = Interp3(w[5], w[4]);
141 #define PIXEL31_50    *(dp+dpL+dpL+dpL+1) = Interp5(w[8], w[5]);
142 #define PIXEL31_60    *(dp+dpL+dpL+dpL+1) = Interp6(w[5], w[8], w[4]);
143 #define PIXEL31_61    *(dp+dpL+dpL+dpL+1) = Interp6(w[5], w[8], w[7]);
144 #define PIXEL31_81    *(dp+dpL+dpL+dpL+1) = Interp8(w[5], w[8]);
145 #define PIXEL31_83    *(dp+dpL+dpL+dpL+1) = Interp8(w[8], w[4]);
146 #define PIXEL32_0     *(dp+dpL+dpL+dpL+2) = w[5];
147 #define PIXEL32_10    *(dp+dpL+dpL+dpL+2) = Interp1(w[5], w[9]);
148 #define PIXEL32_12    *(dp+dpL+dpL+dpL+2) = Interp1(w[5], w[8]);
149 #define PIXEL32_14    *(dp+dpL+dpL+dpL+2) = Interp1(w[8], w[5]);
150 #define PIXEL32_21    *(dp+dpL+dpL+dpL+2) = Interp2(w[8], w[5], w[6]);
151 #define PIXEL32_31    *(dp+dpL+dpL+dpL+2) = Interp3(w[5], w[6]);
152 #define PIXEL32_50    *(dp+dpL+dpL+dpL+2) = Interp5(w[8], w[5]);
153 #define PIXEL32_60    *(dp+dpL+dpL+dpL+2) = Interp6(w[5], w[8], w[6]);
154 #define PIXEL32_61    *(dp+dpL+dpL+dpL+2) = Interp6(w[5], w[8], w[9]);
155 #define PIXEL32_82    *(dp+dpL+dpL+dpL+2) = Interp8(w[5], w[8]);
156 #define PIXEL32_83    *(dp+dpL+dpL+dpL+2) = Interp8(w[8], w[6]);
157 #define PIXEL33_0     *(dp+dpL+dpL+dpL+3) = w[5];
158 #define PIXEL33_11    *(dp+dpL+dpL+dpL+3) = Interp1(w[5], w[6]);
159 #define PIXEL33_12    *(dp+dpL+dpL+dpL+3) = Interp1(w[5], w[8]);
160 #define PIXEL33_20    *(dp+dpL+dpL+dpL+3) = Interp2(w[5], w[8], w[6]);
161 #define PIXEL33_50    *(dp+dpL+dpL+dpL+3) = Interp5(w[8], w[6]);
162 #define PIXEL33_80    *(dp+dpL+dpL+dpL+3) = Interp8(w[5], w[9]);
163 #define PIXEL33_81    *(dp+dpL+dpL+dpL+3) = Interp8(w[5], w[6]);
164 #define PIXEL33_82    *(dp+dpL+dpL+dpL+3) = Interp8(w[5], w[8]);
165 
hq4x_32_rb(uint32_t * sp,uint32_t srb,uint32_t * dp,uint32_t drb,int Xres,int Yres)166 HQX_API void HQX_CALLCONV hq4x_32_rb( uint32_t * sp, uint32_t srb, uint32_t * dp, uint32_t drb, int Xres, int Yres )
167 {
168     int  i, j, k;
169     int  prevline, nextline;
170     uint32_t w[10];
171     int dpL = (drb >> 2);
172     int spL = (srb >> 2);
173     uint8_t *sRowP = (uint8_t *) sp;
174     uint8_t *dRowP = (uint8_t *) dp;
175     uint32_t yuv1, yuv2;
176 
177     //   +----+----+----+
178     //   |    |    |    |
179     //   | w1 | w2 | w3 |
180     //   +----+----+----+
181     //   |    |    |    |
182     //   | w4 | w5 | w6 |
183     //   +----+----+----+
184     //   |    |    |    |
185     //   | w7 | w8 | w9 |
186     //   +----+----+----+
187 
188     for (j=0; j<Yres; j++)
189     {
190         if (j>0)      prevline = -spL; else prevline = 0;
191         if (j<Yres-1) nextline =  spL; else nextline = 0;
192 
193         for (i=0; i<Xres; i++)
194         {
195             w[2] = *(sp + prevline);
196             w[5] = *sp;
197             w[8] = *(sp + nextline);
198 
199             if (i>0)
200             {
201                 w[1] = *(sp + prevline - 1);
202                 w[4] = *(sp - 1);
203                 w[7] = *(sp + nextline - 1);
204             }
205             else
206             {
207                 w[1] = w[2];
208                 w[4] = w[5];
209                 w[7] = w[8];
210             }
211 
212             if (i<Xres-1)
213             {
214                 w[3] = *(sp + prevline + 1);
215                 w[6] = *(sp + 1);
216                 w[9] = *(sp + nextline + 1);
217             }
218             else
219             {
220                 w[3] = w[2];
221                 w[6] = w[5];
222                 w[9] = w[8];
223             }
224 
225             int pattern = 0;
226             int flag = 1;
227 
228             yuv1 = rgb_to_yuv(w[5]);
229 
230             for (k=1; k<=9; k++)
231             {
232                 if (k==5) continue;
233 
234                 if ( w[k] != w[5] )
235                 {
236                     yuv2 = rgb_to_yuv(w[k]);
237                     if (yuv_diff(yuv1, yuv2))
238                         pattern |= flag;
239                 }
240                 flag <<= 1;
241             }
242 
243             switch (pattern)
244             {
245                 case 0:
246                 case 1:
247                 case 4:
248                 case 32:
249                 case 128:
250                 case 5:
251                 case 132:
252                 case 160:
253                 case 33:
254                 case 129:
255                 case 36:
256                 case 133:
257                 case 164:
258                 case 161:
259                 case 37:
260                 case 165:
261                     {
262                         PIXEL00_20
263                         PIXEL01_60
264                         PIXEL02_60
265                         PIXEL03_20
266                         PIXEL10_60
267                         PIXEL11_70
268                         PIXEL12_70
269                         PIXEL13_60
270                         PIXEL20_60
271                         PIXEL21_70
272                         PIXEL22_70
273                         PIXEL23_60
274                         PIXEL30_20
275                         PIXEL31_60
276                         PIXEL32_60
277                         PIXEL33_20
278                         break;
279                     }
280                 case 2:
281                 case 34:
282                 case 130:
283                 case 162:
284                     {
285                         PIXEL00_80
286                         PIXEL01_10
287                         PIXEL02_10
288                         PIXEL03_80
289                         PIXEL10_61
290                         PIXEL11_30
291                         PIXEL12_30
292                         PIXEL13_61
293                         PIXEL20_60
294                         PIXEL21_70
295                         PIXEL22_70
296                         PIXEL23_60
297                         PIXEL30_20
298                         PIXEL31_60
299                         PIXEL32_60
300                         PIXEL33_20
301                         break;
302                     }
303                 case 16:
304                 case 17:
305                 case 48:
306                 case 49:
307                     {
308                         PIXEL00_20
309                         PIXEL01_60
310                         PIXEL02_61
311                         PIXEL03_80
312                         PIXEL10_60
313                         PIXEL11_70
314                         PIXEL12_30
315                         PIXEL13_10
316                         PIXEL20_60
317                         PIXEL21_70
318                         PIXEL22_30
319                         PIXEL23_10
320                         PIXEL30_20
321                         PIXEL31_60
322                         PIXEL32_61
323                         PIXEL33_80
324                         break;
325                     }
326                 case 64:
327                 case 65:
328                 case 68:
329                 case 69:
330                     {
331                         PIXEL00_20
332                         PIXEL01_60
333                         PIXEL02_60
334                         PIXEL03_20
335                         PIXEL10_60
336                         PIXEL11_70
337                         PIXEL12_70
338                         PIXEL13_60
339                         PIXEL20_61
340                         PIXEL21_30
341                         PIXEL22_30
342                         PIXEL23_61
343                         PIXEL30_80
344                         PIXEL31_10
345                         PIXEL32_10
346                         PIXEL33_80
347                         break;
348                     }
349                 case 8:
350                 case 12:
351                 case 136:
352                 case 140:
353                     {
354                         PIXEL00_80
355                         PIXEL01_61
356                         PIXEL02_60
357                         PIXEL03_20
358                         PIXEL10_10
359                         PIXEL11_30
360                         PIXEL12_70
361                         PIXEL13_60
362                         PIXEL20_10
363                         PIXEL21_30
364                         PIXEL22_70
365                         PIXEL23_60
366                         PIXEL30_80
367                         PIXEL31_61
368                         PIXEL32_60
369                         PIXEL33_20
370                         break;
371                     }
372                 case 3:
373                 case 35:
374                 case 131:
375                 case 163:
376                     {
377                         PIXEL00_81
378                         PIXEL01_31
379                         PIXEL02_10
380                         PIXEL03_80
381                         PIXEL10_81
382                         PIXEL11_31
383                         PIXEL12_30
384                         PIXEL13_61
385                         PIXEL20_60
386                         PIXEL21_70
387                         PIXEL22_70
388                         PIXEL23_60
389                         PIXEL30_20
390                         PIXEL31_60
391                         PIXEL32_60
392                         PIXEL33_20
393                         break;
394                     }
395                 case 6:
396                 case 38:
397                 case 134:
398                 case 166:
399                     {
400                         PIXEL00_80
401                         PIXEL01_10
402                         PIXEL02_32
403                         PIXEL03_82
404                         PIXEL10_61
405                         PIXEL11_30
406                         PIXEL12_32
407                         PIXEL13_82
408                         PIXEL20_60
409                         PIXEL21_70
410                         PIXEL22_70
411                         PIXEL23_60
412                         PIXEL30_20
413                         PIXEL31_60
414                         PIXEL32_60
415                         PIXEL33_20
416                         break;
417                     }
418                 case 20:
419                 case 21:
420                 case 52:
421                 case 53:
422                     {
423                         PIXEL00_20
424                         PIXEL01_60
425                         PIXEL02_81
426                         PIXEL03_81
427                         PIXEL10_60
428                         PIXEL11_70
429                         PIXEL12_31
430                         PIXEL13_31
431                         PIXEL20_60
432                         PIXEL21_70
433                         PIXEL22_30
434                         PIXEL23_10
435                         PIXEL30_20
436                         PIXEL31_60
437                         PIXEL32_61
438                         PIXEL33_80
439                         break;
440                     }
441                 case 144:
442                 case 145:
443                 case 176:
444                 case 177:
445                     {
446                         PIXEL00_20
447                         PIXEL01_60
448                         PIXEL02_61
449                         PIXEL03_80
450                         PIXEL10_60
451                         PIXEL11_70
452                         PIXEL12_30
453                         PIXEL13_10
454                         PIXEL20_60
455                         PIXEL21_70
456                         PIXEL22_32
457                         PIXEL23_32
458                         PIXEL30_20
459                         PIXEL31_60
460                         PIXEL32_82
461                         PIXEL33_82
462                         break;
463                     }
464                 case 192:
465                 case 193:
466                 case 196:
467                 case 197:
468                     {
469                         PIXEL00_20
470                         PIXEL01_60
471                         PIXEL02_60
472                         PIXEL03_20
473                         PIXEL10_60
474                         PIXEL11_70
475                         PIXEL12_70
476                         PIXEL13_60
477                         PIXEL20_61
478                         PIXEL21_30
479                         PIXEL22_31
480                         PIXEL23_81
481                         PIXEL30_80
482                         PIXEL31_10
483                         PIXEL32_31
484                         PIXEL33_81
485                         break;
486                     }
487                 case 96:
488                 case 97:
489                 case 100:
490                 case 101:
491                     {
492                         PIXEL00_20
493                         PIXEL01_60
494                         PIXEL02_60
495                         PIXEL03_20
496                         PIXEL10_60
497                         PIXEL11_70
498                         PIXEL12_70
499                         PIXEL13_60
500                         PIXEL20_82
501                         PIXEL21_32
502                         PIXEL22_30
503                         PIXEL23_61
504                         PIXEL30_82
505                         PIXEL31_32
506                         PIXEL32_10
507                         PIXEL33_80
508                         break;
509                     }
510                 case 40:
511                 case 44:
512                 case 168:
513                 case 172:
514                     {
515                         PIXEL00_80
516                         PIXEL01_61
517                         PIXEL02_60
518                         PIXEL03_20
519                         PIXEL10_10
520                         PIXEL11_30
521                         PIXEL12_70
522                         PIXEL13_60
523                         PIXEL20_31
524                         PIXEL21_31
525                         PIXEL22_70
526                         PIXEL23_60
527                         PIXEL30_81
528                         PIXEL31_81
529                         PIXEL32_60
530                         PIXEL33_20
531                         break;
532                     }
533                 case 9:
534                 case 13:
535                 case 137:
536                 case 141:
537                     {
538                         PIXEL00_82
539                         PIXEL01_82
540                         PIXEL02_60
541                         PIXEL03_20
542                         PIXEL10_32
543                         PIXEL11_32
544                         PIXEL12_70
545                         PIXEL13_60
546                         PIXEL20_10
547                         PIXEL21_30
548                         PIXEL22_70
549                         PIXEL23_60
550                         PIXEL30_80
551                         PIXEL31_61
552                         PIXEL32_60
553                         PIXEL33_20
554                         break;
555                     }
556                 case 18:
557                 case 50:
558                     {
559                         PIXEL00_80
560                         PIXEL01_10
561                         if (Diff(w[2], w[6]))
562                         {
563                             PIXEL02_10
564                             PIXEL03_80
565                             PIXEL12_30
566                             PIXEL13_10
567                         }
568                         else
569                         {
570                             PIXEL02_50
571                             PIXEL03_50
572                             PIXEL12_0
573                             PIXEL13_50
574                         }
575                         PIXEL10_61
576                         PIXEL11_30
577                         PIXEL20_60
578                         PIXEL21_70
579                         PIXEL22_30
580                         PIXEL23_10
581                         PIXEL30_20
582                         PIXEL31_60
583                         PIXEL32_61
584                         PIXEL33_80
585                         break;
586                     }
587                 case 80:
588                 case 81:
589                     {
590                         PIXEL00_20
591                         PIXEL01_60
592                         PIXEL02_61
593                         PIXEL03_80
594                         PIXEL10_60
595                         PIXEL11_70
596                         PIXEL12_30
597                         PIXEL13_10
598                         PIXEL20_61
599                         PIXEL21_30
600                         if (Diff(w[6], w[8]))
601                         {
602                             PIXEL22_30
603                             PIXEL23_10
604                             PIXEL32_10
605                             PIXEL33_80
606                         }
607                         else
608                         {
609                             PIXEL22_0
610                             PIXEL23_50
611                             PIXEL32_50
612                             PIXEL33_50
613                         }
614                         PIXEL30_80
615                         PIXEL31_10
616                         break;
617                     }
618                 case 72:
619                 case 76:
620                     {
621                         PIXEL00_80
622                         PIXEL01_61
623                         PIXEL02_60
624                         PIXEL03_20
625                         PIXEL10_10
626                         PIXEL11_30
627                         PIXEL12_70
628                         PIXEL13_60
629                         if (Diff(w[8], w[4]))
630                         {
631                             PIXEL20_10
632                             PIXEL21_30
633                             PIXEL30_80
634                             PIXEL31_10
635                         }
636                         else
637                         {
638                             PIXEL20_50
639                             PIXEL21_0
640                             PIXEL30_50
641                             PIXEL31_50
642                         }
643                         PIXEL22_30
644                         PIXEL23_61
645                         PIXEL32_10
646                         PIXEL33_80
647                         break;
648                     }
649                 case 10:
650                 case 138:
651                     {
652                         if (Diff(w[4], w[2]))
653                         {
654                             PIXEL00_80
655                             PIXEL01_10
656                             PIXEL10_10
657                             PIXEL11_30
658                         }
659                         else
660                         {
661                             PIXEL00_50
662                             PIXEL01_50
663                             PIXEL10_50
664                             PIXEL11_0
665                         }
666                         PIXEL02_10
667                         PIXEL03_80
668                         PIXEL12_30
669                         PIXEL13_61
670                         PIXEL20_10
671                         PIXEL21_30
672                         PIXEL22_70
673                         PIXEL23_60
674                         PIXEL30_80
675                         PIXEL31_61
676                         PIXEL32_60
677                         PIXEL33_20
678                         break;
679                     }
680                 case 66:
681                     {
682                         PIXEL00_80
683                         PIXEL01_10
684                         PIXEL02_10
685                         PIXEL03_80
686                         PIXEL10_61
687                         PIXEL11_30
688                         PIXEL12_30
689                         PIXEL13_61
690                         PIXEL20_61
691                         PIXEL21_30
692                         PIXEL22_30
693                         PIXEL23_61
694                         PIXEL30_80
695                         PIXEL31_10
696                         PIXEL32_10
697                         PIXEL33_80
698                         break;
699                     }
700                 case 24:
701                     {
702                         PIXEL00_80
703                         PIXEL01_61
704                         PIXEL02_61
705                         PIXEL03_80
706                         PIXEL10_10
707                         PIXEL11_30
708                         PIXEL12_30
709                         PIXEL13_10
710                         PIXEL20_10
711                         PIXEL21_30
712                         PIXEL22_30
713                         PIXEL23_10
714                         PIXEL30_80
715                         PIXEL31_61
716                         PIXEL32_61
717                         PIXEL33_80
718                         break;
719                     }
720                 case 7:
721                 case 39:
722                 case 135:
723                     {
724                         PIXEL00_81
725                         PIXEL01_31
726                         PIXEL02_32
727                         PIXEL03_82
728                         PIXEL10_81
729                         PIXEL11_31
730                         PIXEL12_32
731                         PIXEL13_82
732                         PIXEL20_60
733                         PIXEL21_70
734                         PIXEL22_70
735                         PIXEL23_60
736                         PIXEL30_20
737                         PIXEL31_60
738                         PIXEL32_60
739                         PIXEL33_20
740                         break;
741                     }
742                 case 148:
743                 case 149:
744                 case 180:
745                     {
746                         PIXEL00_20
747                         PIXEL01_60
748                         PIXEL02_81
749                         PIXEL03_81
750                         PIXEL10_60
751                         PIXEL11_70
752                         PIXEL12_31
753                         PIXEL13_31
754                         PIXEL20_60
755                         PIXEL21_70
756                         PIXEL22_32
757                         PIXEL23_32
758                         PIXEL30_20
759                         PIXEL31_60
760                         PIXEL32_82
761                         PIXEL33_82
762                         break;
763                     }
764                 case 224:
765                 case 228:
766                 case 225:
767                     {
768                         PIXEL00_20
769                         PIXEL01_60
770                         PIXEL02_60
771                         PIXEL03_20
772                         PIXEL10_60
773                         PIXEL11_70
774                         PIXEL12_70
775                         PIXEL13_60
776                         PIXEL20_82
777                         PIXEL21_32
778                         PIXEL22_31
779                         PIXEL23_81
780                         PIXEL30_82
781                         PIXEL31_32
782                         PIXEL32_31
783                         PIXEL33_81
784                         break;
785                     }
786                 case 41:
787                 case 169:
788                 case 45:
789                     {
790                         PIXEL00_82
791                         PIXEL01_82
792                         PIXEL02_60
793                         PIXEL03_20
794                         PIXEL10_32
795                         PIXEL11_32
796                         PIXEL12_70
797                         PIXEL13_60
798                         PIXEL20_31
799                         PIXEL21_31
800                         PIXEL22_70
801                         PIXEL23_60
802                         PIXEL30_81
803                         PIXEL31_81
804                         PIXEL32_60
805                         PIXEL33_20
806                         break;
807                     }
808                 case 22:
809                 case 54:
810                     {
811                         PIXEL00_80
812                         PIXEL01_10
813                         if (Diff(w[2], w[6]))
814                         {
815                             PIXEL02_0
816                             PIXEL03_0
817                             PIXEL13_0
818                         }
819                         else
820                         {
821                             PIXEL02_50
822                             PIXEL03_50
823                             PIXEL13_50
824                         }
825                         PIXEL10_61
826                         PIXEL11_30
827                         PIXEL12_0
828                         PIXEL20_60
829                         PIXEL21_70
830                         PIXEL22_30
831                         PIXEL23_10
832                         PIXEL30_20
833                         PIXEL31_60
834                         PIXEL32_61
835                         PIXEL33_80
836                         break;
837                     }
838                 case 208:
839                 case 209:
840                     {
841                         PIXEL00_20
842                         PIXEL01_60
843                         PIXEL02_61
844                         PIXEL03_80
845                         PIXEL10_60
846                         PIXEL11_70
847                         PIXEL12_30
848                         PIXEL13_10
849                         PIXEL20_61
850                         PIXEL21_30
851                         PIXEL22_0
852                         if (Diff(w[6], w[8]))
853                         {
854                             PIXEL23_0
855                             PIXEL32_0
856                             PIXEL33_0
857                         }
858                         else
859                         {
860                             PIXEL23_50
861                             PIXEL32_50
862                             PIXEL33_50
863                         }
864                         PIXEL30_80
865                         PIXEL31_10
866                         break;
867                     }
868                 case 104:
869                 case 108:
870                     {
871                         PIXEL00_80
872                         PIXEL01_61
873                         PIXEL02_60
874                         PIXEL03_20
875                         PIXEL10_10
876                         PIXEL11_30
877                         PIXEL12_70
878                         PIXEL13_60
879                         if (Diff(w[8], w[4]))
880                         {
881                             PIXEL20_0
882                             PIXEL30_0
883                             PIXEL31_0
884                         }
885                         else
886                         {
887                             PIXEL20_50
888                             PIXEL30_50
889                             PIXEL31_50
890                         }
891                         PIXEL21_0
892                         PIXEL22_30
893                         PIXEL23_61
894                         PIXEL32_10
895                         PIXEL33_80
896                         break;
897                     }
898                 case 11:
899                 case 139:
900                     {
901                         if (Diff(w[4], w[2]))
902                         {
903                             PIXEL00_0
904                             PIXEL01_0
905                             PIXEL10_0
906                         }
907                         else
908                         {
909                             PIXEL00_50
910                             PIXEL01_50
911                             PIXEL10_50
912                         }
913                         PIXEL02_10
914                         PIXEL03_80
915                         PIXEL11_0
916                         PIXEL12_30
917                         PIXEL13_61
918                         PIXEL20_10
919                         PIXEL21_30
920                         PIXEL22_70
921                         PIXEL23_60
922                         PIXEL30_80
923                         PIXEL31_61
924                         PIXEL32_60
925                         PIXEL33_20
926                         break;
927                     }
928                 case 19:
929                 case 51:
930                     {
931                         if (Diff(w[2], w[6]))
932                         {
933                             PIXEL00_81
934                             PIXEL01_31
935                             PIXEL02_10
936                             PIXEL03_80
937                             PIXEL12_30
938                             PIXEL13_10
939                         }
940                         else
941                         {
942                             PIXEL00_12
943                             PIXEL01_14
944                             PIXEL02_83
945                             PIXEL03_50
946                             PIXEL12_70
947                             PIXEL13_21
948                         }
949                         PIXEL10_81
950                         PIXEL11_31
951                         PIXEL20_60
952                         PIXEL21_70
953                         PIXEL22_30
954                         PIXEL23_10
955                         PIXEL30_20
956                         PIXEL31_60
957                         PIXEL32_61
958                         PIXEL33_80
959                         break;
960                     }
961                 case 146:
962                 case 178:
963                     {
964                         PIXEL00_80
965                         PIXEL01_10
966                         if (Diff(w[2], w[6]))
967                         {
968                             PIXEL02_10
969                             PIXEL03_80
970                             PIXEL12_30
971                             PIXEL13_10
972                             PIXEL23_32
973                             PIXEL33_82
974                         }
975                         else
976                         {
977                             PIXEL02_21
978                             PIXEL03_50
979                             PIXEL12_70
980                             PIXEL13_83
981                             PIXEL23_13
982                             PIXEL33_11
983                         }
984                         PIXEL10_61
985                         PIXEL11_30
986                         PIXEL20_60
987                         PIXEL21_70
988                         PIXEL22_32
989                         PIXEL30_20
990                         PIXEL31_60
991                         PIXEL32_82
992                         break;
993                     }
994                 case 84:
995                 case 85:
996                     {
997                         PIXEL00_20
998                         PIXEL01_60
999                         PIXEL02_81
1000                         if (Diff(w[6], w[8]))
1001                         {
1002                             PIXEL03_81
1003                             PIXEL13_31
1004                             PIXEL22_30
1005                             PIXEL23_10
1006                             PIXEL32_10
1007                             PIXEL33_80
1008                         }
1009                         else
1010                         {
1011                             PIXEL03_12
1012                             PIXEL13_14
1013                             PIXEL22_70
1014                             PIXEL23_83
1015                             PIXEL32_21
1016                             PIXEL33_50
1017                         }
1018                         PIXEL10_60
1019                         PIXEL11_70
1020                         PIXEL12_31
1021                         PIXEL20_61
1022                         PIXEL21_30
1023                         PIXEL30_80
1024                         PIXEL31_10
1025                         break;
1026                     }
1027                 case 112:
1028                 case 113:
1029                     {
1030                         PIXEL00_20
1031                         PIXEL01_60
1032                         PIXEL02_61
1033                         PIXEL03_80
1034                         PIXEL10_60
1035                         PIXEL11_70
1036                         PIXEL12_30
1037                         PIXEL13_10
1038                         PIXEL20_82
1039                         PIXEL21_32
1040                         if (Diff(w[6], w[8]))
1041                         {
1042                             PIXEL22_30
1043                             PIXEL23_10
1044                             PIXEL30_82
1045                             PIXEL31_32
1046                             PIXEL32_10
1047                             PIXEL33_80
1048                         }
1049                         else
1050                         {
1051                             PIXEL22_70
1052                             PIXEL23_21
1053                             PIXEL30_11
1054                             PIXEL31_13
1055                             PIXEL32_83
1056                             PIXEL33_50
1057                         }
1058                         break;
1059                     }
1060                 case 200:
1061                 case 204:
1062                     {
1063                         PIXEL00_80
1064                         PIXEL01_61
1065                         PIXEL02_60
1066                         PIXEL03_20
1067                         PIXEL10_10
1068                         PIXEL11_30
1069                         PIXEL12_70
1070                         PIXEL13_60
1071                         if (Diff(w[8], w[4]))
1072                         {
1073                             PIXEL20_10
1074                             PIXEL21_30
1075                             PIXEL30_80
1076                             PIXEL31_10
1077                             PIXEL32_31
1078                             PIXEL33_81
1079                         }
1080                         else
1081                         {
1082                             PIXEL20_21
1083                             PIXEL21_70
1084                             PIXEL30_50
1085                             PIXEL31_83
1086                             PIXEL32_14
1087                             PIXEL33_12
1088                         }
1089                         PIXEL22_31
1090                         PIXEL23_81
1091                         break;
1092                     }
1093                 case 73:
1094                 case 77:
1095                     {
1096                         if (Diff(w[8], w[4]))
1097                         {
1098                             PIXEL00_82
1099                             PIXEL10_32
1100                             PIXEL20_10
1101                             PIXEL21_30
1102                             PIXEL30_80
1103                             PIXEL31_10
1104                         }
1105                         else
1106                         {
1107                             PIXEL00_11
1108                             PIXEL10_13
1109                             PIXEL20_83
1110                             PIXEL21_70
1111                             PIXEL30_50
1112                             PIXEL31_21
1113                         }
1114                         PIXEL01_82
1115                         PIXEL02_60
1116                         PIXEL03_20
1117                         PIXEL11_32
1118                         PIXEL12_70
1119                         PIXEL13_60
1120                         PIXEL22_30
1121                         PIXEL23_61
1122                         PIXEL32_10
1123                         PIXEL33_80
1124                         break;
1125                     }
1126                 case 42:
1127                 case 170:
1128                     {
1129                         if (Diff(w[4], w[2]))
1130                         {
1131                             PIXEL00_80
1132                             PIXEL01_10
1133                             PIXEL10_10
1134                             PIXEL11_30
1135                             PIXEL20_31
1136                             PIXEL30_81
1137                         }
1138                         else
1139                         {
1140                             PIXEL00_50
1141                             PIXEL01_21
1142                             PIXEL10_83
1143                             PIXEL11_70
1144                             PIXEL20_14
1145                             PIXEL30_12
1146                         }
1147                         PIXEL02_10
1148                         PIXEL03_80
1149                         PIXEL12_30
1150                         PIXEL13_61
1151                         PIXEL21_31
1152                         PIXEL22_70
1153                         PIXEL23_60
1154                         PIXEL31_81
1155                         PIXEL32_60
1156                         PIXEL33_20
1157                         break;
1158                     }
1159                 case 14:
1160                 case 142:
1161                     {
1162                         if (Diff(w[4], w[2]))
1163                         {
1164                             PIXEL00_80
1165                             PIXEL01_10
1166                             PIXEL02_32
1167                             PIXEL03_82
1168                             PIXEL10_10
1169                             PIXEL11_30
1170                         }
1171                         else
1172                         {
1173                             PIXEL00_50
1174                             PIXEL01_83
1175                             PIXEL02_13
1176                             PIXEL03_11
1177                             PIXEL10_21
1178                             PIXEL11_70
1179                         }
1180                         PIXEL12_32
1181                         PIXEL13_82
1182                         PIXEL20_10
1183                         PIXEL21_30
1184                         PIXEL22_70
1185                         PIXEL23_60
1186                         PIXEL30_80
1187                         PIXEL31_61
1188                         PIXEL32_60
1189                         PIXEL33_20
1190                         break;
1191                     }
1192                 case 67:
1193                     {
1194                         PIXEL00_81
1195                         PIXEL01_31
1196                         PIXEL02_10
1197                         PIXEL03_80
1198                         PIXEL10_81
1199                         PIXEL11_31
1200                         PIXEL12_30
1201                         PIXEL13_61
1202                         PIXEL20_61
1203                         PIXEL21_30
1204                         PIXEL22_30
1205                         PIXEL23_61
1206                         PIXEL30_80
1207                         PIXEL31_10
1208                         PIXEL32_10
1209                         PIXEL33_80
1210                         break;
1211                     }
1212                 case 70:
1213                     {
1214                         PIXEL00_80
1215                         PIXEL01_10
1216                         PIXEL02_32
1217                         PIXEL03_82
1218                         PIXEL10_61
1219                         PIXEL11_30
1220                         PIXEL12_32
1221                         PIXEL13_82
1222                         PIXEL20_61
1223                         PIXEL21_30
1224                         PIXEL22_30
1225                         PIXEL23_61
1226                         PIXEL30_80
1227                         PIXEL31_10
1228                         PIXEL32_10
1229                         PIXEL33_80
1230                         break;
1231                     }
1232                 case 28:
1233                     {
1234                         PIXEL00_80
1235                         PIXEL01_61
1236                         PIXEL02_81
1237                         PIXEL03_81
1238                         PIXEL10_10
1239                         PIXEL11_30
1240                         PIXEL12_31
1241                         PIXEL13_31
1242                         PIXEL20_10
1243                         PIXEL21_30
1244                         PIXEL22_30
1245                         PIXEL23_10
1246                         PIXEL30_80
1247                         PIXEL31_61
1248                         PIXEL32_61
1249                         PIXEL33_80
1250                         break;
1251                     }
1252                 case 152:
1253                     {
1254                         PIXEL00_80
1255                         PIXEL01_61
1256                         PIXEL02_61
1257                         PIXEL03_80
1258                         PIXEL10_10
1259                         PIXEL11_30
1260                         PIXEL12_30
1261                         PIXEL13_10
1262                         PIXEL20_10
1263                         PIXEL21_30
1264                         PIXEL22_32
1265                         PIXEL23_32
1266                         PIXEL30_80
1267                         PIXEL31_61
1268                         PIXEL32_82
1269                         PIXEL33_82
1270                         break;
1271                     }
1272                 case 194:
1273                     {
1274                         PIXEL00_80
1275                         PIXEL01_10
1276                         PIXEL02_10
1277                         PIXEL03_80
1278                         PIXEL10_61
1279                         PIXEL11_30
1280                         PIXEL12_30
1281                         PIXEL13_61
1282                         PIXEL20_61
1283                         PIXEL21_30
1284                         PIXEL22_31
1285                         PIXEL23_81
1286                         PIXEL30_80
1287                         PIXEL31_10
1288                         PIXEL32_31
1289                         PIXEL33_81
1290                         break;
1291                     }
1292                 case 98:
1293                     {
1294                         PIXEL00_80
1295                         PIXEL01_10
1296                         PIXEL02_10
1297                         PIXEL03_80
1298                         PIXEL10_61
1299                         PIXEL11_30
1300                         PIXEL12_30
1301                         PIXEL13_61
1302                         PIXEL20_82
1303                         PIXEL21_32
1304                         PIXEL22_30
1305                         PIXEL23_61
1306                         PIXEL30_82
1307                         PIXEL31_32
1308                         PIXEL32_10
1309                         PIXEL33_80
1310                         break;
1311                     }
1312                 case 56:
1313                     {
1314                         PIXEL00_80
1315                         PIXEL01_61
1316                         PIXEL02_61
1317                         PIXEL03_80
1318                         PIXEL10_10
1319                         PIXEL11_30
1320                         PIXEL12_30
1321                         PIXEL13_10
1322                         PIXEL20_31
1323                         PIXEL21_31
1324                         PIXEL22_30
1325                         PIXEL23_10
1326                         PIXEL30_81
1327                         PIXEL31_81
1328                         PIXEL32_61
1329                         PIXEL33_80
1330                         break;
1331                     }
1332                 case 25:
1333                     {
1334                         PIXEL00_82
1335                         PIXEL01_82
1336                         PIXEL02_61
1337                         PIXEL03_80
1338                         PIXEL10_32
1339                         PIXEL11_32
1340                         PIXEL12_30
1341                         PIXEL13_10
1342                         PIXEL20_10
1343                         PIXEL21_30
1344                         PIXEL22_30
1345                         PIXEL23_10
1346                         PIXEL30_80
1347                         PIXEL31_61
1348                         PIXEL32_61
1349                         PIXEL33_80
1350                         break;
1351                     }
1352                 case 26:
1353                 case 31:
1354                     {
1355                         if (Diff(w[4], w[2]))
1356                         {
1357                             PIXEL00_0
1358                             PIXEL01_0
1359                             PIXEL10_0
1360                         }
1361                         else
1362                         {
1363                             PIXEL00_50
1364                             PIXEL01_50
1365                             PIXEL10_50
1366                         }
1367                         if (Diff(w[2], w[6]))
1368                         {
1369                             PIXEL02_0
1370                             PIXEL03_0
1371                             PIXEL13_0
1372                         }
1373                         else
1374                         {
1375                             PIXEL02_50
1376                             PIXEL03_50
1377                             PIXEL13_50
1378                         }
1379                         PIXEL11_0
1380                         PIXEL12_0
1381                         PIXEL20_10
1382                         PIXEL21_30
1383                         PIXEL22_30
1384                         PIXEL23_10
1385                         PIXEL30_80
1386                         PIXEL31_61
1387                         PIXEL32_61
1388                         PIXEL33_80
1389                         break;
1390                     }
1391                 case 82:
1392                 case 214:
1393                     {
1394                         PIXEL00_80
1395                         PIXEL01_10
1396                         if (Diff(w[2], w[6]))
1397                         {
1398                             PIXEL02_0
1399                             PIXEL03_0
1400                             PIXEL13_0
1401                         }
1402                         else
1403                         {
1404                             PIXEL02_50
1405                             PIXEL03_50
1406                             PIXEL13_50
1407                         }
1408                         PIXEL10_61
1409                         PIXEL11_30
1410                         PIXEL12_0
1411                         PIXEL20_61
1412                         PIXEL21_30
1413                         PIXEL22_0
1414                         if (Diff(w[6], w[8]))
1415                         {
1416                             PIXEL23_0
1417                             PIXEL32_0
1418                             PIXEL33_0
1419                         }
1420                         else
1421                         {
1422                             PIXEL23_50
1423                             PIXEL32_50
1424                             PIXEL33_50
1425                         }
1426                         PIXEL30_80
1427                         PIXEL31_10
1428                         break;
1429                     }
1430                 case 88:
1431                 case 248:
1432                     {
1433                         PIXEL00_80
1434                         PIXEL01_61
1435                         PIXEL02_61
1436                         PIXEL03_80
1437                         PIXEL10_10
1438                         PIXEL11_30
1439                         PIXEL12_30
1440                         PIXEL13_10
1441                         if (Diff(w[8], w[4]))
1442                         {
1443                             PIXEL20_0
1444                             PIXEL30_0
1445                             PIXEL31_0
1446                         }
1447                         else
1448                         {
1449                             PIXEL20_50
1450                             PIXEL30_50
1451                             PIXEL31_50
1452                         }
1453                         PIXEL21_0
1454                         PIXEL22_0
1455                         if (Diff(w[6], w[8]))
1456                         {
1457                             PIXEL23_0
1458                             PIXEL32_0
1459                             PIXEL33_0
1460                         }
1461                         else
1462                         {
1463                             PIXEL23_50
1464                             PIXEL32_50
1465                             PIXEL33_50
1466                         }
1467                         break;
1468                     }
1469                 case 74:
1470                 case 107:
1471                     {
1472                         if (Diff(w[4], w[2]))
1473                         {
1474                             PIXEL00_0
1475                             PIXEL01_0
1476                             PIXEL10_0
1477                         }
1478                         else
1479                         {
1480                             PIXEL00_50
1481                             PIXEL01_50
1482                             PIXEL10_50
1483                         }
1484                         PIXEL02_10
1485                         PIXEL03_80
1486                         PIXEL11_0
1487                         PIXEL12_30
1488                         PIXEL13_61
1489                         if (Diff(w[8], w[4]))
1490                         {
1491                             PIXEL20_0
1492                             PIXEL30_0
1493                             PIXEL31_0
1494                         }
1495                         else
1496                         {
1497                             PIXEL20_50
1498                             PIXEL30_50
1499                             PIXEL31_50
1500                         }
1501                         PIXEL21_0
1502                         PIXEL22_30
1503                         PIXEL23_61
1504                         PIXEL32_10
1505                         PIXEL33_80
1506                         break;
1507                     }
1508                 case 27:
1509                     {
1510                         if (Diff(w[4], w[2]))
1511                         {
1512                             PIXEL00_0
1513                             PIXEL01_0
1514                             PIXEL10_0
1515                         }
1516                         else
1517                         {
1518                             PIXEL00_50
1519                             PIXEL01_50
1520                             PIXEL10_50
1521                         }
1522                         PIXEL02_10
1523                         PIXEL03_80
1524                         PIXEL11_0
1525                         PIXEL12_30
1526                         PIXEL13_10
1527                         PIXEL20_10
1528                         PIXEL21_30
1529                         PIXEL22_30
1530                         PIXEL23_10
1531                         PIXEL30_80
1532                         PIXEL31_61
1533                         PIXEL32_61
1534                         PIXEL33_80
1535                         break;
1536                     }
1537                 case 86:
1538                     {
1539                         PIXEL00_80
1540                         PIXEL01_10
1541                         if (Diff(w[2], w[6]))
1542                         {
1543                             PIXEL02_0
1544                             PIXEL03_0
1545                             PIXEL13_0
1546                         }
1547                         else
1548                         {
1549                             PIXEL02_50
1550                             PIXEL03_50
1551                             PIXEL13_50
1552                         }
1553                         PIXEL10_61
1554                         PIXEL11_30
1555                         PIXEL12_0
1556                         PIXEL20_61
1557                         PIXEL21_30
1558                         PIXEL22_30
1559                         PIXEL23_10
1560                         PIXEL30_80
1561                         PIXEL31_10
1562                         PIXEL32_10
1563                         PIXEL33_80
1564                         break;
1565                     }
1566                 case 216:
1567                     {
1568                         PIXEL00_80
1569                         PIXEL01_61
1570                         PIXEL02_61
1571                         PIXEL03_80
1572                         PIXEL10_10
1573                         PIXEL11_30
1574                         PIXEL12_30
1575                         PIXEL13_10
1576                         PIXEL20_10
1577                         PIXEL21_30
1578                         PIXEL22_0
1579                         if (Diff(w[6], w[8]))
1580                         {
1581                             PIXEL23_0
1582                             PIXEL32_0
1583                             PIXEL33_0
1584                         }
1585                         else
1586                         {
1587                             PIXEL23_50
1588                             PIXEL32_50
1589                             PIXEL33_50
1590                         }
1591                         PIXEL30_80
1592                         PIXEL31_10
1593                         break;
1594                     }
1595                 case 106:
1596                     {
1597                         PIXEL00_80
1598                         PIXEL01_10
1599                         PIXEL02_10
1600                         PIXEL03_80
1601                         PIXEL10_10
1602                         PIXEL11_30
1603                         PIXEL12_30
1604                         PIXEL13_61
1605                         if (Diff(w[8], w[4]))
1606                         {
1607                             PIXEL20_0
1608                             PIXEL30_0
1609                             PIXEL31_0
1610                         }
1611                         else
1612                         {
1613                             PIXEL20_50
1614                             PIXEL30_50
1615                             PIXEL31_50
1616                         }
1617                         PIXEL21_0
1618                         PIXEL22_30
1619                         PIXEL23_61
1620                         PIXEL32_10
1621                         PIXEL33_80
1622                         break;
1623                     }
1624                 case 30:
1625                     {
1626                         PIXEL00_80
1627                         PIXEL01_10
1628                         if (Diff(w[2], w[6]))
1629                         {
1630                             PIXEL02_0
1631                             PIXEL03_0
1632                             PIXEL13_0
1633                         }
1634                         else
1635                         {
1636                             PIXEL02_50
1637                             PIXEL03_50
1638                             PIXEL13_50
1639                         }
1640                         PIXEL10_10
1641                         PIXEL11_30
1642                         PIXEL12_0
1643                         PIXEL20_10
1644                         PIXEL21_30
1645                         PIXEL22_30
1646                         PIXEL23_10
1647                         PIXEL30_80
1648                         PIXEL31_61
1649                         PIXEL32_61
1650                         PIXEL33_80
1651                         break;
1652                     }
1653                 case 210:
1654                     {
1655                         PIXEL00_80
1656                         PIXEL01_10
1657                         PIXEL02_10
1658                         PIXEL03_80
1659                         PIXEL10_61
1660                         PIXEL11_30
1661                         PIXEL12_30
1662                         PIXEL13_10
1663                         PIXEL20_61
1664                         PIXEL21_30
1665                         PIXEL22_0
1666                         if (Diff(w[6], w[8]))
1667                         {
1668                             PIXEL23_0
1669                             PIXEL32_0
1670                             PIXEL33_0
1671                         }
1672                         else
1673                         {
1674                             PIXEL23_50
1675                             PIXEL32_50
1676                             PIXEL33_50
1677                         }
1678                         PIXEL30_80
1679                         PIXEL31_10
1680                         break;
1681                     }
1682                 case 120:
1683                     {
1684                         PIXEL00_80
1685                         PIXEL01_61
1686                         PIXEL02_61
1687                         PIXEL03_80
1688                         PIXEL10_10
1689                         PIXEL11_30
1690                         PIXEL12_30
1691                         PIXEL13_10
1692                         if (Diff(w[8], w[4]))
1693                         {
1694                             PIXEL20_0
1695                             PIXEL30_0
1696                             PIXEL31_0
1697                         }
1698                         else
1699                         {
1700                             PIXEL20_50
1701                             PIXEL30_50
1702                             PIXEL31_50
1703                         }
1704                         PIXEL21_0
1705                         PIXEL22_30
1706                         PIXEL23_10
1707                         PIXEL32_10
1708                         PIXEL33_80
1709                         break;
1710                     }
1711                 case 75:
1712                     {
1713                         if (Diff(w[4], w[2]))
1714                         {
1715                             PIXEL00_0
1716                             PIXEL01_0
1717                             PIXEL10_0
1718                         }
1719                         else
1720                         {
1721                             PIXEL00_50
1722                             PIXEL01_50
1723                             PIXEL10_50
1724                         }
1725                         PIXEL02_10
1726                         PIXEL03_80
1727                         PIXEL11_0
1728                         PIXEL12_30
1729                         PIXEL13_61
1730                         PIXEL20_10
1731                         PIXEL21_30
1732                         PIXEL22_30
1733                         PIXEL23_61
1734                         PIXEL30_80
1735                         PIXEL31_10
1736                         PIXEL32_10
1737                         PIXEL33_80
1738                         break;
1739                     }
1740                 case 29:
1741                     {
1742                         PIXEL00_82
1743                         PIXEL01_82
1744                         PIXEL02_81
1745                         PIXEL03_81
1746                         PIXEL10_32
1747                         PIXEL11_32
1748                         PIXEL12_31
1749                         PIXEL13_31
1750                         PIXEL20_10
1751                         PIXEL21_30
1752                         PIXEL22_30
1753                         PIXEL23_10
1754                         PIXEL30_80
1755                         PIXEL31_61
1756                         PIXEL32_61
1757                         PIXEL33_80
1758                         break;
1759                     }
1760                 case 198:
1761                     {
1762                         PIXEL00_80
1763                         PIXEL01_10
1764                         PIXEL02_32
1765                         PIXEL03_82
1766                         PIXEL10_61
1767                         PIXEL11_30
1768                         PIXEL12_32
1769                         PIXEL13_82
1770                         PIXEL20_61
1771                         PIXEL21_30
1772                         PIXEL22_31
1773                         PIXEL23_81
1774                         PIXEL30_80
1775                         PIXEL31_10
1776                         PIXEL32_31
1777                         PIXEL33_81
1778                         break;
1779                     }
1780                 case 184:
1781                     {
1782                         PIXEL00_80
1783                         PIXEL01_61
1784                         PIXEL02_61
1785                         PIXEL03_80
1786                         PIXEL10_10
1787                         PIXEL11_30
1788                         PIXEL12_30
1789                         PIXEL13_10
1790                         PIXEL20_31
1791                         PIXEL21_31
1792                         PIXEL22_32
1793                         PIXEL23_32
1794                         PIXEL30_81
1795                         PIXEL31_81
1796                         PIXEL32_82
1797                         PIXEL33_82
1798                         break;
1799                     }
1800                 case 99:
1801                     {
1802                         PIXEL00_81
1803                         PIXEL01_31
1804                         PIXEL02_10
1805                         PIXEL03_80
1806                         PIXEL10_81
1807                         PIXEL11_31
1808                         PIXEL12_30
1809                         PIXEL13_61
1810                         PIXEL20_82
1811                         PIXEL21_32
1812                         PIXEL22_30
1813                         PIXEL23_61
1814                         PIXEL30_82
1815                         PIXEL31_32
1816                         PIXEL32_10
1817                         PIXEL33_80
1818                         break;
1819                     }
1820                 case 57:
1821                     {
1822                         PIXEL00_82
1823                         PIXEL01_82
1824                         PIXEL02_61
1825                         PIXEL03_80
1826                         PIXEL10_32
1827                         PIXEL11_32
1828                         PIXEL12_30
1829                         PIXEL13_10
1830                         PIXEL20_31
1831                         PIXEL21_31
1832                         PIXEL22_30
1833                         PIXEL23_10
1834                         PIXEL30_81
1835                         PIXEL31_81
1836                         PIXEL32_61
1837                         PIXEL33_80
1838                         break;
1839                     }
1840                 case 71:
1841                     {
1842                         PIXEL00_81
1843                         PIXEL01_31
1844                         PIXEL02_32
1845                         PIXEL03_82
1846                         PIXEL10_81
1847                         PIXEL11_31
1848                         PIXEL12_32
1849                         PIXEL13_82
1850                         PIXEL20_61
1851                         PIXEL21_30
1852                         PIXEL22_30
1853                         PIXEL23_61
1854                         PIXEL30_80
1855                         PIXEL31_10
1856                         PIXEL32_10
1857                         PIXEL33_80
1858                         break;
1859                     }
1860                 case 156:
1861                     {
1862                         PIXEL00_80
1863                         PIXEL01_61
1864                         PIXEL02_81
1865                         PIXEL03_81
1866                         PIXEL10_10
1867                         PIXEL11_30
1868                         PIXEL12_31
1869                         PIXEL13_31
1870                         PIXEL20_10
1871                         PIXEL21_30
1872                         PIXEL22_32
1873                         PIXEL23_32
1874                         PIXEL30_80
1875                         PIXEL31_61
1876                         PIXEL32_82
1877                         PIXEL33_82
1878                         break;
1879                     }
1880                 case 226:
1881                     {
1882                         PIXEL00_80
1883                         PIXEL01_10
1884                         PIXEL02_10
1885                         PIXEL03_80
1886                         PIXEL10_61
1887                         PIXEL11_30
1888                         PIXEL12_30
1889                         PIXEL13_61
1890                         PIXEL20_82
1891                         PIXEL21_32
1892                         PIXEL22_31
1893                         PIXEL23_81
1894                         PIXEL30_82
1895                         PIXEL31_32
1896                         PIXEL32_31
1897                         PIXEL33_81
1898                         break;
1899                     }
1900                 case 60:
1901                     {
1902                         PIXEL00_80
1903                         PIXEL01_61
1904                         PIXEL02_81
1905                         PIXEL03_81
1906                         PIXEL10_10
1907                         PIXEL11_30
1908                         PIXEL12_31
1909                         PIXEL13_31
1910                         PIXEL20_31
1911                         PIXEL21_31
1912                         PIXEL22_30
1913                         PIXEL23_10
1914                         PIXEL30_81
1915                         PIXEL31_81
1916                         PIXEL32_61
1917                         PIXEL33_80
1918                         break;
1919                     }
1920                 case 195:
1921                     {
1922                         PIXEL00_81
1923                         PIXEL01_31
1924                         PIXEL02_10
1925                         PIXEL03_80
1926                         PIXEL10_81
1927                         PIXEL11_31
1928                         PIXEL12_30
1929                         PIXEL13_61
1930                         PIXEL20_61
1931                         PIXEL21_30
1932                         PIXEL22_31
1933                         PIXEL23_81
1934                         PIXEL30_80
1935                         PIXEL31_10
1936                         PIXEL32_31
1937                         PIXEL33_81
1938                         break;
1939                     }
1940                 case 102:
1941                     {
1942                         PIXEL00_80
1943                         PIXEL01_10
1944                         PIXEL02_32
1945                         PIXEL03_82
1946                         PIXEL10_61
1947                         PIXEL11_30
1948                         PIXEL12_32
1949                         PIXEL13_82
1950                         PIXEL20_82
1951                         PIXEL21_32
1952                         PIXEL22_30
1953                         PIXEL23_61
1954                         PIXEL30_82
1955                         PIXEL31_32
1956                         PIXEL32_10
1957                         PIXEL33_80
1958                         break;
1959                     }
1960                 case 153:
1961                     {
1962                         PIXEL00_82
1963                         PIXEL01_82
1964                         PIXEL02_61
1965                         PIXEL03_80
1966                         PIXEL10_32
1967                         PIXEL11_32
1968                         PIXEL12_30
1969                         PIXEL13_10
1970                         PIXEL20_10
1971                         PIXEL21_30
1972                         PIXEL22_32
1973                         PIXEL23_32
1974                         PIXEL30_80
1975                         PIXEL31_61
1976                         PIXEL32_82
1977                         PIXEL33_82
1978                         break;
1979                     }
1980                 case 58:
1981                     {
1982                         if (Diff(w[4], w[2]))
1983                         {
1984                             PIXEL00_80
1985                             PIXEL01_10
1986                             PIXEL10_10
1987                             PIXEL11_30
1988                         }
1989                         else
1990                         {
1991                             PIXEL00_20
1992                             PIXEL01_12
1993                             PIXEL10_11
1994                             PIXEL11_0
1995                         }
1996                         if (Diff(w[2], w[6]))
1997                         {
1998                             PIXEL02_10
1999                             PIXEL03_80
2000                             PIXEL12_30
2001                             PIXEL13_10
2002                         }
2003                         else
2004                         {
2005                             PIXEL02_11
2006                             PIXEL03_20
2007                             PIXEL12_0
2008                             PIXEL13_12
2009                         }
2010                         PIXEL20_31
2011                         PIXEL21_31
2012                         PIXEL22_30
2013                         PIXEL23_10
2014                         PIXEL30_81
2015                         PIXEL31_81
2016                         PIXEL32_61
2017                         PIXEL33_80
2018                         break;
2019                     }
2020                 case 83:
2021                     {
2022                         PIXEL00_81
2023                         PIXEL01_31
2024                         if (Diff(w[2], w[6]))
2025                         {
2026                             PIXEL02_10
2027                             PIXEL03_80
2028                             PIXEL12_30
2029                             PIXEL13_10
2030                         }
2031                         else
2032                         {
2033                             PIXEL02_11
2034                             PIXEL03_20
2035                             PIXEL12_0
2036                             PIXEL13_12
2037                         }
2038                         PIXEL10_81
2039                         PIXEL11_31
2040                         PIXEL20_61
2041                         PIXEL21_30
2042                         if (Diff(w[6], w[8]))
2043                         {
2044                             PIXEL22_30
2045                             PIXEL23_10
2046                             PIXEL32_10
2047                             PIXEL33_80
2048                         }
2049                         else
2050                         {
2051                             PIXEL22_0
2052                             PIXEL23_11
2053                             PIXEL32_12
2054                             PIXEL33_20
2055                         }
2056                         PIXEL30_80
2057                         PIXEL31_10
2058                         break;
2059                     }
2060                 case 92:
2061                     {
2062                         PIXEL00_80
2063                         PIXEL01_61
2064                         PIXEL02_81
2065                         PIXEL03_81
2066                         PIXEL10_10
2067                         PIXEL11_30
2068                         PIXEL12_31
2069                         PIXEL13_31
2070                         if (Diff(w[8], w[4]))
2071                         {
2072                             PIXEL20_10
2073                             PIXEL21_30
2074                             PIXEL30_80
2075                             PIXEL31_10
2076                         }
2077                         else
2078                         {
2079                             PIXEL20_12
2080                             PIXEL21_0
2081                             PIXEL30_20
2082                             PIXEL31_11
2083                         }
2084                         if (Diff(w[6], w[8]))
2085                         {
2086                             PIXEL22_30
2087                             PIXEL23_10
2088                             PIXEL32_10
2089                             PIXEL33_80
2090                         }
2091                         else
2092                         {
2093                             PIXEL22_0
2094                             PIXEL23_11
2095                             PIXEL32_12
2096                             PIXEL33_20
2097                         }
2098                         break;
2099                     }
2100                 case 202:
2101                     {
2102                         if (Diff(w[4], w[2]))
2103                         {
2104                             PIXEL00_80
2105                             PIXEL01_10
2106                             PIXEL10_10
2107                             PIXEL11_30
2108                         }
2109                         else
2110                         {
2111                             PIXEL00_20
2112                             PIXEL01_12
2113                             PIXEL10_11
2114                             PIXEL11_0
2115                         }
2116                         PIXEL02_10
2117                         PIXEL03_80
2118                         PIXEL12_30
2119                         PIXEL13_61
2120                         if (Diff(w[8], w[4]))
2121                         {
2122                             PIXEL20_10
2123                             PIXEL21_30
2124                             PIXEL30_80
2125                             PIXEL31_10
2126                         }
2127                         else
2128                         {
2129                             PIXEL20_12
2130                             PIXEL21_0
2131                             PIXEL30_20
2132                             PIXEL31_11
2133                         }
2134                         PIXEL22_31
2135                         PIXEL23_81
2136                         PIXEL32_31
2137                         PIXEL33_81
2138                         break;
2139                     }
2140                 case 78:
2141                     {
2142                         if (Diff(w[4], w[2]))
2143                         {
2144                             PIXEL00_80
2145                             PIXEL01_10
2146                             PIXEL10_10
2147                             PIXEL11_30
2148                         }
2149                         else
2150                         {
2151                             PIXEL00_20
2152                             PIXEL01_12
2153                             PIXEL10_11
2154                             PIXEL11_0
2155                         }
2156                         PIXEL02_32
2157                         PIXEL03_82
2158                         PIXEL12_32
2159                         PIXEL13_82
2160                         if (Diff(w[8], w[4]))
2161                         {
2162                             PIXEL20_10
2163                             PIXEL21_30
2164                             PIXEL30_80
2165                             PIXEL31_10
2166                         }
2167                         else
2168                         {
2169                             PIXEL20_12
2170                             PIXEL21_0
2171                             PIXEL30_20
2172                             PIXEL31_11
2173                         }
2174                         PIXEL22_30
2175                         PIXEL23_61
2176                         PIXEL32_10
2177                         PIXEL33_80
2178                         break;
2179                     }
2180                 case 154:
2181                     {
2182                         if (Diff(w[4], w[2]))
2183                         {
2184                             PIXEL00_80
2185                             PIXEL01_10
2186                             PIXEL10_10
2187                             PIXEL11_30
2188                         }
2189                         else
2190                         {
2191                             PIXEL00_20
2192                             PIXEL01_12
2193                             PIXEL10_11
2194                             PIXEL11_0
2195                         }
2196                         if (Diff(w[2], w[6]))
2197                         {
2198                             PIXEL02_10
2199                             PIXEL03_80
2200                             PIXEL12_30
2201                             PIXEL13_10
2202                         }
2203                         else
2204                         {
2205                             PIXEL02_11
2206                             PIXEL03_20
2207                             PIXEL12_0
2208                             PIXEL13_12
2209                         }
2210                         PIXEL20_10
2211                         PIXEL21_30
2212                         PIXEL22_32
2213                         PIXEL23_32
2214                         PIXEL30_80
2215                         PIXEL31_61
2216                         PIXEL32_82
2217                         PIXEL33_82
2218                         break;
2219                     }
2220                 case 114:
2221                     {
2222                         PIXEL00_80
2223                         PIXEL01_10
2224                         if (Diff(w[2], w[6]))
2225                         {
2226                             PIXEL02_10
2227                             PIXEL03_80
2228                             PIXEL12_30
2229                             PIXEL13_10
2230                         }
2231                         else
2232                         {
2233                             PIXEL02_11
2234                             PIXEL03_20
2235                             PIXEL12_0
2236                             PIXEL13_12
2237                         }
2238                         PIXEL10_61
2239                         PIXEL11_30
2240                         PIXEL20_82
2241                         PIXEL21_32
2242                         if (Diff(w[6], w[8]))
2243                         {
2244                             PIXEL22_30
2245                             PIXEL23_10
2246                             PIXEL32_10
2247                             PIXEL33_80
2248                         }
2249                         else
2250                         {
2251                             PIXEL22_0
2252                             PIXEL23_11
2253                             PIXEL32_12
2254                             PIXEL33_20
2255                         }
2256                         PIXEL30_82
2257                         PIXEL31_32
2258                         break;
2259                     }
2260                 case 89:
2261                     {
2262                         PIXEL00_82
2263                         PIXEL01_82
2264                         PIXEL02_61
2265                         PIXEL03_80
2266                         PIXEL10_32
2267                         PIXEL11_32
2268                         PIXEL12_30
2269                         PIXEL13_10
2270                         if (Diff(w[8], w[4]))
2271                         {
2272                             PIXEL20_10
2273                             PIXEL21_30
2274                             PIXEL30_80
2275                             PIXEL31_10
2276                         }
2277                         else
2278                         {
2279                             PIXEL20_12
2280                             PIXEL21_0
2281                             PIXEL30_20
2282                             PIXEL31_11
2283                         }
2284                         if (Diff(w[6], w[8]))
2285                         {
2286                             PIXEL22_30
2287                             PIXEL23_10
2288                             PIXEL32_10
2289                             PIXEL33_80
2290                         }
2291                         else
2292                         {
2293                             PIXEL22_0
2294                             PIXEL23_11
2295                             PIXEL32_12
2296                             PIXEL33_20
2297                         }
2298                         break;
2299                     }
2300                 case 90:
2301                     {
2302                         if (Diff(w[4], w[2]))
2303                         {
2304                             PIXEL00_80
2305                             PIXEL01_10
2306                             PIXEL10_10
2307                             PIXEL11_30
2308                         }
2309                         else
2310                         {
2311                             PIXEL00_20
2312                             PIXEL01_12
2313                             PIXEL10_11
2314                             PIXEL11_0
2315                         }
2316                         if (Diff(w[2], w[6]))
2317                         {
2318                             PIXEL02_10
2319                             PIXEL03_80
2320                             PIXEL12_30
2321                             PIXEL13_10
2322                         }
2323                         else
2324                         {
2325                             PIXEL02_11
2326                             PIXEL03_20
2327                             PIXEL12_0
2328                             PIXEL13_12
2329                         }
2330                         if (Diff(w[8], w[4]))
2331                         {
2332                             PIXEL20_10
2333                             PIXEL21_30
2334                             PIXEL30_80
2335                             PIXEL31_10
2336                         }
2337                         else
2338                         {
2339                             PIXEL20_12
2340                             PIXEL21_0
2341                             PIXEL30_20
2342                             PIXEL31_11
2343                         }
2344                         if (Diff(w[6], w[8]))
2345                         {
2346                             PIXEL22_30
2347                             PIXEL23_10
2348                             PIXEL32_10
2349                             PIXEL33_80
2350                         }
2351                         else
2352                         {
2353                             PIXEL22_0
2354                             PIXEL23_11
2355                             PIXEL32_12
2356                             PIXEL33_20
2357                         }
2358                         break;
2359                     }
2360                 case 55:
2361                 case 23:
2362                     {
2363                         if (Diff(w[2], w[6]))
2364                         {
2365                             PIXEL00_81
2366                             PIXEL01_31
2367                             PIXEL02_0
2368                             PIXEL03_0
2369                             PIXEL12_0
2370                             PIXEL13_0
2371                         }
2372                         else
2373                         {
2374                             PIXEL00_12
2375                             PIXEL01_14
2376                             PIXEL02_83
2377                             PIXEL03_50
2378                             PIXEL12_70
2379                             PIXEL13_21
2380                         }
2381                         PIXEL10_81
2382                         PIXEL11_31
2383                         PIXEL20_60
2384                         PIXEL21_70
2385                         PIXEL22_30
2386                         PIXEL23_10
2387                         PIXEL30_20
2388                         PIXEL31_60
2389                         PIXEL32_61
2390                         PIXEL33_80
2391                         break;
2392                     }
2393                 case 182:
2394                 case 150:
2395                     {
2396                         PIXEL00_80
2397                         PIXEL01_10
2398                         if (Diff(w[2], w[6]))
2399                         {
2400                             PIXEL02_0
2401                             PIXEL03_0
2402                             PIXEL12_0
2403                             PIXEL13_0
2404                             PIXEL23_32
2405                             PIXEL33_82
2406                         }
2407                         else
2408                         {
2409                             PIXEL02_21
2410                             PIXEL03_50
2411                             PIXEL12_70
2412                             PIXEL13_83
2413                             PIXEL23_13
2414                             PIXEL33_11
2415                         }
2416                         PIXEL10_61
2417                         PIXEL11_30
2418                         PIXEL20_60
2419                         PIXEL21_70
2420                         PIXEL22_32
2421                         PIXEL30_20
2422                         PIXEL31_60
2423                         PIXEL32_82
2424                         break;
2425                     }
2426                 case 213:
2427                 case 212:
2428                     {
2429                         PIXEL00_20
2430                         PIXEL01_60
2431                         PIXEL02_81
2432                         if (Diff(w[6], w[8]))
2433                         {
2434                             PIXEL03_81
2435                             PIXEL13_31
2436                             PIXEL22_0
2437                             PIXEL23_0
2438                             PIXEL32_0
2439                             PIXEL33_0
2440                         }
2441                         else
2442                         {
2443                             PIXEL03_12
2444                             PIXEL13_14
2445                             PIXEL22_70
2446                             PIXEL23_83
2447                             PIXEL32_21
2448                             PIXEL33_50
2449                         }
2450                         PIXEL10_60
2451                         PIXEL11_70
2452                         PIXEL12_31
2453                         PIXEL20_61
2454                         PIXEL21_30
2455                         PIXEL30_80
2456                         PIXEL31_10
2457                         break;
2458                     }
2459                 case 241:
2460                 case 240:
2461                     {
2462                         PIXEL00_20
2463                         PIXEL01_60
2464                         PIXEL02_61
2465                         PIXEL03_80
2466                         PIXEL10_60
2467                         PIXEL11_70
2468                         PIXEL12_30
2469                         PIXEL13_10
2470                         PIXEL20_82
2471                         PIXEL21_32
2472                         if (Diff(w[6], w[8]))
2473                         {
2474                             PIXEL22_0
2475                             PIXEL23_0
2476                             PIXEL30_82
2477                             PIXEL31_32
2478                             PIXEL32_0
2479                             PIXEL33_0
2480                         }
2481                         else
2482                         {
2483                             PIXEL22_70
2484                             PIXEL23_21
2485                             PIXEL30_11
2486                             PIXEL31_13
2487                             PIXEL32_83
2488                             PIXEL33_50
2489                         }
2490                         break;
2491                     }
2492                 case 236:
2493                 case 232:
2494                     {
2495                         PIXEL00_80
2496                         PIXEL01_61
2497                         PIXEL02_60
2498                         PIXEL03_20
2499                         PIXEL10_10
2500                         PIXEL11_30
2501                         PIXEL12_70
2502                         PIXEL13_60
2503                         if (Diff(w[8], w[4]))
2504                         {
2505                             PIXEL20_0
2506                             PIXEL21_0
2507                             PIXEL30_0
2508                             PIXEL31_0
2509                             PIXEL32_31
2510                             PIXEL33_81
2511                         }
2512                         else
2513                         {
2514                             PIXEL20_21
2515                             PIXEL21_70
2516                             PIXEL30_50
2517                             PIXEL31_83
2518                             PIXEL32_14
2519                             PIXEL33_12
2520                         }
2521                         PIXEL22_31
2522                         PIXEL23_81
2523                         break;
2524                     }
2525                 case 109:
2526                 case 105:
2527                     {
2528                         if (Diff(w[8], w[4]))
2529                         {
2530                             PIXEL00_82
2531                             PIXEL10_32
2532                             PIXEL20_0
2533                             PIXEL21_0
2534                             PIXEL30_0
2535                             PIXEL31_0
2536                         }
2537                         else
2538                         {
2539                             PIXEL00_11
2540                             PIXEL10_13
2541                             PIXEL20_83
2542                             PIXEL21_70
2543                             PIXEL30_50
2544                             PIXEL31_21
2545                         }
2546                         PIXEL01_82
2547                         PIXEL02_60
2548                         PIXEL03_20
2549                         PIXEL11_32
2550                         PIXEL12_70
2551                         PIXEL13_60
2552                         PIXEL22_30
2553                         PIXEL23_61
2554                         PIXEL32_10
2555                         PIXEL33_80
2556                         break;
2557                     }
2558                 case 171:
2559                 case 43:
2560                     {
2561                         if (Diff(w[4], w[2]))
2562                         {
2563                             PIXEL00_0
2564                             PIXEL01_0
2565                             PIXEL10_0
2566                             PIXEL11_0
2567                             PIXEL20_31
2568                             PIXEL30_81
2569                         }
2570                         else
2571                         {
2572                             PIXEL00_50
2573                             PIXEL01_21
2574                             PIXEL10_83
2575                             PIXEL11_70
2576                             PIXEL20_14
2577                             PIXEL30_12
2578                         }
2579                         PIXEL02_10
2580                         PIXEL03_80
2581                         PIXEL12_30
2582                         PIXEL13_61
2583                         PIXEL21_31
2584                         PIXEL22_70
2585                         PIXEL23_60
2586                         PIXEL31_81
2587                         PIXEL32_60
2588                         PIXEL33_20
2589                         break;
2590                     }
2591                 case 143:
2592                 case 15:
2593                     {
2594                         if (Diff(w[4], w[2]))
2595                         {
2596                             PIXEL00_0
2597                             PIXEL01_0
2598                             PIXEL02_32
2599                             PIXEL03_82
2600                             PIXEL10_0
2601                             PIXEL11_0
2602                         }
2603                         else
2604                         {
2605                             PIXEL00_50
2606                             PIXEL01_83
2607                             PIXEL02_13
2608                             PIXEL03_11
2609                             PIXEL10_21
2610                             PIXEL11_70
2611                         }
2612                         PIXEL12_32
2613                         PIXEL13_82
2614                         PIXEL20_10
2615                         PIXEL21_30
2616                         PIXEL22_70
2617                         PIXEL23_60
2618                         PIXEL30_80
2619                         PIXEL31_61
2620                         PIXEL32_60
2621                         PIXEL33_20
2622                         break;
2623                     }
2624                 case 124:
2625                     {
2626                         PIXEL00_80
2627                         PIXEL01_61
2628                         PIXEL02_81
2629                         PIXEL03_81
2630                         PIXEL10_10
2631                         PIXEL11_30
2632                         PIXEL12_31
2633                         PIXEL13_31
2634                         if (Diff(w[8], w[4]))
2635                         {
2636                             PIXEL20_0
2637                             PIXEL30_0
2638                             PIXEL31_0
2639                         }
2640                         else
2641                         {
2642                             PIXEL20_50
2643                             PIXEL30_50
2644                             PIXEL31_50
2645                         }
2646                         PIXEL21_0
2647                         PIXEL22_30
2648                         PIXEL23_10
2649                         PIXEL32_10
2650                         PIXEL33_80
2651                         break;
2652                     }
2653                 case 203:
2654                     {
2655                         if (Diff(w[4], w[2]))
2656                         {
2657                             PIXEL00_0
2658                             PIXEL01_0
2659                             PIXEL10_0
2660                         }
2661                         else
2662                         {
2663                             PIXEL00_50
2664                             PIXEL01_50
2665                             PIXEL10_50
2666                         }
2667                         PIXEL02_10
2668                         PIXEL03_80
2669                         PIXEL11_0
2670                         PIXEL12_30
2671                         PIXEL13_61
2672                         PIXEL20_10
2673                         PIXEL21_30
2674                         PIXEL22_31
2675                         PIXEL23_81
2676                         PIXEL30_80
2677                         PIXEL31_10
2678                         PIXEL32_31
2679                         PIXEL33_81
2680                         break;
2681                     }
2682                 case 62:
2683                     {
2684                         PIXEL00_80
2685                         PIXEL01_10
2686                         if (Diff(w[2], w[6]))
2687                         {
2688                             PIXEL02_0
2689                             PIXEL03_0
2690                             PIXEL13_0
2691                         }
2692                         else
2693                         {
2694                             PIXEL02_50
2695                             PIXEL03_50
2696                             PIXEL13_50
2697                         }
2698                         PIXEL10_10
2699                         PIXEL11_30
2700                         PIXEL12_0
2701                         PIXEL20_31
2702                         PIXEL21_31
2703                         PIXEL22_30
2704                         PIXEL23_10
2705                         PIXEL30_81
2706                         PIXEL31_81
2707                         PIXEL32_61
2708                         PIXEL33_80
2709                         break;
2710                     }
2711                 case 211:
2712                     {
2713                         PIXEL00_81
2714                         PIXEL01_31
2715                         PIXEL02_10
2716                         PIXEL03_80
2717                         PIXEL10_81
2718                         PIXEL11_31
2719                         PIXEL12_30
2720                         PIXEL13_10
2721                         PIXEL20_61
2722                         PIXEL21_30
2723                         PIXEL22_0
2724                         if (Diff(w[6], w[8]))
2725                         {
2726                             PIXEL23_0
2727                             PIXEL32_0
2728                             PIXEL33_0
2729                         }
2730                         else
2731                         {
2732                             PIXEL23_50
2733                             PIXEL32_50
2734                             PIXEL33_50
2735                         }
2736                         PIXEL30_80
2737                         PIXEL31_10
2738                         break;
2739                     }
2740                 case 118:
2741                     {
2742                         PIXEL00_80
2743                         PIXEL01_10
2744                         if (Diff(w[2], w[6]))
2745                         {
2746                             PIXEL02_0
2747                             PIXEL03_0
2748                             PIXEL13_0
2749                         }
2750                         else
2751                         {
2752                             PIXEL02_50
2753                             PIXEL03_50
2754                             PIXEL13_50
2755                         }
2756                         PIXEL10_61
2757                         PIXEL11_30
2758                         PIXEL12_0
2759                         PIXEL20_82
2760                         PIXEL21_32
2761                         PIXEL22_30
2762                         PIXEL23_10
2763                         PIXEL30_82
2764                         PIXEL31_32
2765                         PIXEL32_10
2766                         PIXEL33_80
2767                         break;
2768                     }
2769                 case 217:
2770                     {
2771                         PIXEL00_82
2772                         PIXEL01_82
2773                         PIXEL02_61
2774                         PIXEL03_80
2775                         PIXEL10_32
2776                         PIXEL11_32
2777                         PIXEL12_30
2778                         PIXEL13_10
2779                         PIXEL20_10
2780                         PIXEL21_30
2781                         PIXEL22_0
2782                         if (Diff(w[6], w[8]))
2783                         {
2784                             PIXEL23_0
2785                             PIXEL32_0
2786                             PIXEL33_0
2787                         }
2788                         else
2789                         {
2790                             PIXEL23_50
2791                             PIXEL32_50
2792                             PIXEL33_50
2793                         }
2794                         PIXEL30_80
2795                         PIXEL31_10
2796                         break;
2797                     }
2798                 case 110:
2799                     {
2800                         PIXEL00_80
2801                         PIXEL01_10
2802                         PIXEL02_32
2803                         PIXEL03_82
2804                         PIXEL10_10
2805                         PIXEL11_30
2806                         PIXEL12_32
2807                         PIXEL13_82
2808                         if (Diff(w[8], w[4]))
2809                         {
2810                             PIXEL20_0
2811                             PIXEL30_0
2812                             PIXEL31_0
2813                         }
2814                         else
2815                         {
2816                             PIXEL20_50
2817                             PIXEL30_50
2818                             PIXEL31_50
2819                         }
2820                         PIXEL21_0
2821                         PIXEL22_30
2822                         PIXEL23_61
2823                         PIXEL32_10
2824                         PIXEL33_80
2825                         break;
2826                     }
2827                 case 155:
2828                     {
2829                         if (Diff(w[4], w[2]))
2830                         {
2831                             PIXEL00_0
2832                             PIXEL01_0
2833                             PIXEL10_0
2834                         }
2835                         else
2836                         {
2837                             PIXEL00_50
2838                             PIXEL01_50
2839                             PIXEL10_50
2840                         }
2841                         PIXEL02_10
2842                         PIXEL03_80
2843                         PIXEL11_0
2844                         PIXEL12_30
2845                         PIXEL13_10
2846                         PIXEL20_10
2847                         PIXEL21_30
2848                         PIXEL22_32
2849                         PIXEL23_32
2850                         PIXEL30_80
2851                         PIXEL31_61
2852                         PIXEL32_82
2853                         PIXEL33_82
2854                         break;
2855                     }
2856                 case 188:
2857                     {
2858                         PIXEL00_80
2859                         PIXEL01_61
2860                         PIXEL02_81
2861                         PIXEL03_81
2862                         PIXEL10_10
2863                         PIXEL11_30
2864                         PIXEL12_31
2865                         PIXEL13_31
2866                         PIXEL20_31
2867                         PIXEL21_31
2868                         PIXEL22_32
2869                         PIXEL23_32
2870                         PIXEL30_81
2871                         PIXEL31_81
2872                         PIXEL32_82
2873                         PIXEL33_82
2874                         break;
2875                     }
2876                 case 185:
2877                     {
2878                         PIXEL00_82
2879                         PIXEL01_82
2880                         PIXEL02_61
2881                         PIXEL03_80
2882                         PIXEL10_32
2883                         PIXEL11_32
2884                         PIXEL12_30
2885                         PIXEL13_10
2886                         PIXEL20_31
2887                         PIXEL21_31
2888                         PIXEL22_32
2889                         PIXEL23_32
2890                         PIXEL30_81
2891                         PIXEL31_81
2892                         PIXEL32_82
2893                         PIXEL33_82
2894                         break;
2895                     }
2896                 case 61:
2897                     {
2898                         PIXEL00_82
2899                         PIXEL01_82
2900                         PIXEL02_81
2901                         PIXEL03_81
2902                         PIXEL10_32
2903                         PIXEL11_32
2904                         PIXEL12_31
2905                         PIXEL13_31
2906                         PIXEL20_31
2907                         PIXEL21_31
2908                         PIXEL22_30
2909                         PIXEL23_10
2910                         PIXEL30_81
2911                         PIXEL31_81
2912                         PIXEL32_61
2913                         PIXEL33_80
2914                         break;
2915                     }
2916                 case 157:
2917                     {
2918                         PIXEL00_82
2919                         PIXEL01_82
2920                         PIXEL02_81
2921                         PIXEL03_81
2922                         PIXEL10_32
2923                         PIXEL11_32
2924                         PIXEL12_31
2925                         PIXEL13_31
2926                         PIXEL20_10
2927                         PIXEL21_30
2928                         PIXEL22_32
2929                         PIXEL23_32
2930                         PIXEL30_80
2931                         PIXEL31_61
2932                         PIXEL32_82
2933                         PIXEL33_82
2934                         break;
2935                     }
2936                 case 103:
2937                     {
2938                         PIXEL00_81
2939                         PIXEL01_31
2940                         PIXEL02_32
2941                         PIXEL03_82
2942                         PIXEL10_81
2943                         PIXEL11_31
2944                         PIXEL12_32
2945                         PIXEL13_82
2946                         PIXEL20_82
2947                         PIXEL21_32
2948                         PIXEL22_30
2949                         PIXEL23_61
2950                         PIXEL30_82
2951                         PIXEL31_32
2952                         PIXEL32_10
2953                         PIXEL33_80
2954                         break;
2955                     }
2956                 case 227:
2957                     {
2958                         PIXEL00_81
2959                         PIXEL01_31
2960                         PIXEL02_10
2961                         PIXEL03_80
2962                         PIXEL10_81
2963                         PIXEL11_31
2964                         PIXEL12_30
2965                         PIXEL13_61
2966                         PIXEL20_82
2967                         PIXEL21_32
2968                         PIXEL22_31
2969                         PIXEL23_81
2970                         PIXEL30_82
2971                         PIXEL31_32
2972                         PIXEL32_31
2973                         PIXEL33_81
2974                         break;
2975                     }
2976                 case 230:
2977                     {
2978                         PIXEL00_80
2979                         PIXEL01_10
2980                         PIXEL02_32
2981                         PIXEL03_82
2982                         PIXEL10_61
2983                         PIXEL11_30
2984                         PIXEL12_32
2985                         PIXEL13_82
2986                         PIXEL20_82
2987                         PIXEL21_32
2988                         PIXEL22_31
2989                         PIXEL23_81
2990                         PIXEL30_82
2991                         PIXEL31_32
2992                         PIXEL32_31
2993                         PIXEL33_81
2994                         break;
2995                     }
2996                 case 199:
2997                     {
2998                         PIXEL00_81
2999                         PIXEL01_31
3000                         PIXEL02_32
3001                         PIXEL03_82
3002                         PIXEL10_81
3003                         PIXEL11_31
3004                         PIXEL12_32
3005                         PIXEL13_82
3006                         PIXEL20_61
3007                         PIXEL21_30
3008                         PIXEL22_31
3009                         PIXEL23_81
3010                         PIXEL30_80
3011                         PIXEL31_10
3012                         PIXEL32_31
3013                         PIXEL33_81
3014                         break;
3015                     }
3016                 case 220:
3017                     {
3018                         PIXEL00_80
3019                         PIXEL01_61
3020                         PIXEL02_81
3021                         PIXEL03_81
3022                         PIXEL10_10
3023                         PIXEL11_30
3024                         PIXEL12_31
3025                         PIXEL13_31
3026                         if (Diff(w[8], w[4]))
3027                         {
3028                             PIXEL20_10
3029                             PIXEL21_30
3030                             PIXEL30_80
3031                             PIXEL31_10
3032                         }
3033                         else
3034                         {
3035                             PIXEL20_12
3036                             PIXEL21_0
3037                             PIXEL30_20
3038                             PIXEL31_11
3039                         }
3040                         PIXEL22_0
3041                         if (Diff(w[6], w[8]))
3042                         {
3043                             PIXEL23_0
3044                             PIXEL32_0
3045                             PIXEL33_0
3046                         }
3047                         else
3048                         {
3049                             PIXEL23_50
3050                             PIXEL32_50
3051                             PIXEL33_50
3052                         }
3053                         break;
3054                     }
3055                 case 158:
3056                     {
3057                         if (Diff(w[4], w[2]))
3058                         {
3059                             PIXEL00_80
3060                             PIXEL01_10
3061                             PIXEL10_10
3062                             PIXEL11_30
3063                         }
3064                         else
3065                         {
3066                             PIXEL00_20
3067                             PIXEL01_12
3068                             PIXEL10_11
3069                             PIXEL11_0
3070                         }
3071                         if (Diff(w[2], w[6]))
3072                         {
3073                             PIXEL02_0
3074                             PIXEL03_0
3075                             PIXEL13_0
3076                         }
3077                         else
3078                         {
3079                             PIXEL02_50
3080                             PIXEL03_50
3081                             PIXEL13_50
3082                         }
3083                         PIXEL12_0
3084                         PIXEL20_10
3085                         PIXEL21_30
3086                         PIXEL22_32
3087                         PIXEL23_32
3088                         PIXEL30_80
3089                         PIXEL31_61
3090                         PIXEL32_82
3091                         PIXEL33_82
3092                         break;
3093                     }
3094                 case 234:
3095                     {
3096                         if (Diff(w[4], w[2]))
3097                         {
3098                             PIXEL00_80
3099                             PIXEL01_10
3100                             PIXEL10_10
3101                             PIXEL11_30
3102                         }
3103                         else
3104                         {
3105                             PIXEL00_20
3106                             PIXEL01_12
3107                             PIXEL10_11
3108                             PIXEL11_0
3109                         }
3110                         PIXEL02_10
3111                         PIXEL03_80
3112                         PIXEL12_30
3113                         PIXEL13_61
3114                         if (Diff(w[8], w[4]))
3115                         {
3116                             PIXEL20_0
3117                             PIXEL30_0
3118                             PIXEL31_0
3119                         }
3120                         else
3121                         {
3122                             PIXEL20_50
3123                             PIXEL30_50
3124                             PIXEL31_50
3125                         }
3126                         PIXEL21_0
3127                         PIXEL22_31
3128                         PIXEL23_81
3129                         PIXEL32_31
3130                         PIXEL33_81
3131                         break;
3132                     }
3133                 case 242:
3134                     {
3135                         PIXEL00_80
3136                         PIXEL01_10
3137                         if (Diff(w[2], w[6]))
3138                         {
3139                             PIXEL02_10
3140                             PIXEL03_80
3141                             PIXEL12_30
3142                             PIXEL13_10
3143                         }
3144                         else
3145                         {
3146                             PIXEL02_11
3147                             PIXEL03_20
3148                             PIXEL12_0
3149                             PIXEL13_12
3150                         }
3151                         PIXEL10_61
3152                         PIXEL11_30
3153                         PIXEL20_82
3154                         PIXEL21_32
3155                         PIXEL22_0
3156                         if (Diff(w[6], w[8]))
3157                         {
3158                             PIXEL23_0
3159                             PIXEL32_0
3160                             PIXEL33_0
3161                         }
3162                         else
3163                         {
3164                             PIXEL23_50
3165                             PIXEL32_50
3166                             PIXEL33_50
3167                         }
3168                         PIXEL30_82
3169                         PIXEL31_32
3170                         break;
3171                     }
3172                 case 59:
3173                     {
3174                         if (Diff(w[4], w[2]))
3175                         {
3176                             PIXEL00_0
3177                             PIXEL01_0
3178                             PIXEL10_0
3179                         }
3180                         else
3181                         {
3182                             PIXEL00_50
3183                             PIXEL01_50
3184                             PIXEL10_50
3185                         }
3186                         if (Diff(w[2], w[6]))
3187                         {
3188                             PIXEL02_10
3189                             PIXEL03_80
3190                             PIXEL12_30
3191                             PIXEL13_10
3192                         }
3193                         else
3194                         {
3195                             PIXEL02_11
3196                             PIXEL03_20
3197                             PIXEL12_0
3198                             PIXEL13_12
3199                         }
3200                         PIXEL11_0
3201                         PIXEL20_31
3202                         PIXEL21_31
3203                         PIXEL22_30
3204                         PIXEL23_10
3205                         PIXEL30_81
3206                         PIXEL31_81
3207                         PIXEL32_61
3208                         PIXEL33_80
3209                         break;
3210                     }
3211                 case 121:
3212                     {
3213                         PIXEL00_82
3214                         PIXEL01_82
3215                         PIXEL02_61
3216                         PIXEL03_80
3217                         PIXEL10_32
3218                         PIXEL11_32
3219                         PIXEL12_30
3220                         PIXEL13_10
3221                         if (Diff(w[8], w[4]))
3222                         {
3223                             PIXEL20_0
3224                             PIXEL30_0
3225                             PIXEL31_0
3226                         }
3227                         else
3228                         {
3229                             PIXEL20_50
3230                             PIXEL30_50
3231                             PIXEL31_50
3232                         }
3233                         PIXEL21_0
3234                         if (Diff(w[6], w[8]))
3235                         {
3236                             PIXEL22_30
3237                             PIXEL23_10
3238                             PIXEL32_10
3239                             PIXEL33_80
3240                         }
3241                         else
3242                         {
3243                             PIXEL22_0
3244                             PIXEL23_11
3245                             PIXEL32_12
3246                             PIXEL33_20
3247                         }
3248                         break;
3249                     }
3250                 case 87:
3251                     {
3252                         PIXEL00_81
3253                         PIXEL01_31
3254                         if (Diff(w[2], w[6]))
3255                         {
3256                             PIXEL02_0
3257                             PIXEL03_0
3258                             PIXEL13_0
3259                         }
3260                         else
3261                         {
3262                             PIXEL02_50
3263                             PIXEL03_50
3264                             PIXEL13_50
3265                         }
3266                         PIXEL10_81
3267                         PIXEL11_31
3268                         PIXEL12_0
3269                         PIXEL20_61
3270                         PIXEL21_30
3271                         if (Diff(w[6], w[8]))
3272                         {
3273                             PIXEL22_30
3274                             PIXEL23_10
3275                             PIXEL32_10
3276                             PIXEL33_80
3277                         }
3278                         else
3279                         {
3280                             PIXEL22_0
3281                             PIXEL23_11
3282                             PIXEL32_12
3283                             PIXEL33_20
3284                         }
3285                         PIXEL30_80
3286                         PIXEL31_10
3287                         break;
3288                     }
3289                 case 79:
3290                     {
3291                         if (Diff(w[4], w[2]))
3292                         {
3293                             PIXEL00_0
3294                             PIXEL01_0
3295                             PIXEL10_0
3296                         }
3297                         else
3298                         {
3299                             PIXEL00_50
3300                             PIXEL01_50
3301                             PIXEL10_50
3302                         }
3303                         PIXEL02_32
3304                         PIXEL03_82
3305                         PIXEL11_0
3306                         PIXEL12_32
3307                         PIXEL13_82
3308                         if (Diff(w[8], w[4]))
3309                         {
3310                             PIXEL20_10
3311                             PIXEL21_30
3312                             PIXEL30_80
3313                             PIXEL31_10
3314                         }
3315                         else
3316                         {
3317                             PIXEL20_12
3318                             PIXEL21_0
3319                             PIXEL30_20
3320                             PIXEL31_11
3321                         }
3322                         PIXEL22_30
3323                         PIXEL23_61
3324                         PIXEL32_10
3325                         PIXEL33_80
3326                         break;
3327                     }
3328                 case 122:
3329                     {
3330                         if (Diff(w[4], w[2]))
3331                         {
3332                             PIXEL00_80
3333                             PIXEL01_10
3334                             PIXEL10_10
3335                             PIXEL11_30
3336                         }
3337                         else
3338                         {
3339                             PIXEL00_20
3340                             PIXEL01_12
3341                             PIXEL10_11
3342                             PIXEL11_0
3343                         }
3344                         if (Diff(w[2], w[6]))
3345                         {
3346                             PIXEL02_10
3347                             PIXEL03_80
3348                             PIXEL12_30
3349                             PIXEL13_10
3350                         }
3351                         else
3352                         {
3353                             PIXEL02_11
3354                             PIXEL03_20
3355                             PIXEL12_0
3356                             PIXEL13_12
3357                         }
3358                         if (Diff(w[8], w[4]))
3359                         {
3360                             PIXEL20_0
3361                             PIXEL30_0
3362                             PIXEL31_0
3363                         }
3364                         else
3365                         {
3366                             PIXEL20_50
3367                             PIXEL30_50
3368                             PIXEL31_50
3369                         }
3370                         PIXEL21_0
3371                         if (Diff(w[6], w[8]))
3372                         {
3373                             PIXEL22_30
3374                             PIXEL23_10
3375                             PIXEL32_10
3376                             PIXEL33_80
3377                         }
3378                         else
3379                         {
3380                             PIXEL22_0
3381                             PIXEL23_11
3382                             PIXEL32_12
3383                             PIXEL33_20
3384                         }
3385                         break;
3386                     }
3387                 case 94:
3388                     {
3389                         if (Diff(w[4], w[2]))
3390                         {
3391                             PIXEL00_80
3392                             PIXEL01_10
3393                             PIXEL10_10
3394                             PIXEL11_30
3395                         }
3396                         else
3397                         {
3398                             PIXEL00_20
3399                             PIXEL01_12
3400                             PIXEL10_11
3401                             PIXEL11_0
3402                         }
3403                         if (Diff(w[2], w[6]))
3404                         {
3405                             PIXEL02_0
3406                             PIXEL03_0
3407                             PIXEL13_0
3408                         }
3409                         else
3410                         {
3411                             PIXEL02_50
3412                             PIXEL03_50
3413                             PIXEL13_50
3414                         }
3415                         PIXEL12_0
3416                         if (Diff(w[8], w[4]))
3417                         {
3418                             PIXEL20_10
3419                             PIXEL21_30
3420                             PIXEL30_80
3421                             PIXEL31_10
3422                         }
3423                         else
3424                         {
3425                             PIXEL20_12
3426                             PIXEL21_0
3427                             PIXEL30_20
3428                             PIXEL31_11
3429                         }
3430                         if (Diff(w[6], w[8]))
3431                         {
3432                             PIXEL22_30
3433                             PIXEL23_10
3434                             PIXEL32_10
3435                             PIXEL33_80
3436                         }
3437                         else
3438                         {
3439                             PIXEL22_0
3440                             PIXEL23_11
3441                             PIXEL32_12
3442                             PIXEL33_20
3443                         }
3444                         break;
3445                     }
3446                 case 218:
3447                     {
3448                         if (Diff(w[4], w[2]))
3449                         {
3450                             PIXEL00_80
3451                             PIXEL01_10
3452                             PIXEL10_10
3453                             PIXEL11_30
3454                         }
3455                         else
3456                         {
3457                             PIXEL00_20
3458                             PIXEL01_12
3459                             PIXEL10_11
3460                             PIXEL11_0
3461                         }
3462                         if (Diff(w[2], w[6]))
3463                         {
3464                             PIXEL02_10
3465                             PIXEL03_80
3466                             PIXEL12_30
3467                             PIXEL13_10
3468                         }
3469                         else
3470                         {
3471                             PIXEL02_11
3472                             PIXEL03_20
3473                             PIXEL12_0
3474                             PIXEL13_12
3475                         }
3476                         if (Diff(w[8], w[4]))
3477                         {
3478                             PIXEL20_10
3479                             PIXEL21_30
3480                             PIXEL30_80
3481                             PIXEL31_10
3482                         }
3483                         else
3484                         {
3485                             PIXEL20_12
3486                             PIXEL21_0
3487                             PIXEL30_20
3488                             PIXEL31_11
3489                         }
3490                         PIXEL22_0
3491                         if (Diff(w[6], w[8]))
3492                         {
3493                             PIXEL23_0
3494                             PIXEL32_0
3495                             PIXEL33_0
3496                         }
3497                         else
3498                         {
3499                             PIXEL23_50
3500                             PIXEL32_50
3501                             PIXEL33_50
3502                         }
3503                         break;
3504                     }
3505                 case 91:
3506                     {
3507                         if (Diff(w[4], w[2]))
3508                         {
3509                             PIXEL00_0
3510                             PIXEL01_0
3511                             PIXEL10_0
3512                         }
3513                         else
3514                         {
3515                             PIXEL00_50
3516                             PIXEL01_50
3517                             PIXEL10_50
3518                         }
3519                         if (Diff(w[2], w[6]))
3520                         {
3521                             PIXEL02_10
3522                             PIXEL03_80
3523                             PIXEL12_30
3524                             PIXEL13_10
3525                         }
3526                         else
3527                         {
3528                             PIXEL02_11
3529                             PIXEL03_20
3530                             PIXEL12_0
3531                             PIXEL13_12
3532                         }
3533                         PIXEL11_0
3534                         if (Diff(w[8], w[4]))
3535                         {
3536                             PIXEL20_10
3537                             PIXEL21_30
3538                             PIXEL30_80
3539                             PIXEL31_10
3540                         }
3541                         else
3542                         {
3543                             PIXEL20_12
3544                             PIXEL21_0
3545                             PIXEL30_20
3546                             PIXEL31_11
3547                         }
3548                         if (Diff(w[6], w[8]))
3549                         {
3550                             PIXEL22_30
3551                             PIXEL23_10
3552                             PIXEL32_10
3553                             PIXEL33_80
3554                         }
3555                         else
3556                         {
3557                             PIXEL22_0
3558                             PIXEL23_11
3559                             PIXEL32_12
3560                             PIXEL33_20
3561                         }
3562                         break;
3563                     }
3564                 case 229:
3565                     {
3566                         PIXEL00_20
3567                         PIXEL01_60
3568                         PIXEL02_60
3569                         PIXEL03_20
3570                         PIXEL10_60
3571                         PIXEL11_70
3572                         PIXEL12_70
3573                         PIXEL13_60
3574                         PIXEL20_82
3575                         PIXEL21_32
3576                         PIXEL22_31
3577                         PIXEL23_81
3578                         PIXEL30_82
3579                         PIXEL31_32
3580                         PIXEL32_31
3581                         PIXEL33_81
3582                         break;
3583                     }
3584                 case 167:
3585                     {
3586                         PIXEL00_81
3587                         PIXEL01_31
3588                         PIXEL02_32
3589                         PIXEL03_82
3590                         PIXEL10_81
3591                         PIXEL11_31
3592                         PIXEL12_32
3593                         PIXEL13_82
3594                         PIXEL20_60
3595                         PIXEL21_70
3596                         PIXEL22_70
3597                         PIXEL23_60
3598                         PIXEL30_20
3599                         PIXEL31_60
3600                         PIXEL32_60
3601                         PIXEL33_20
3602                         break;
3603                     }
3604                 case 173:
3605                     {
3606                         PIXEL00_82
3607                         PIXEL01_82
3608                         PIXEL02_60
3609                         PIXEL03_20
3610                         PIXEL10_32
3611                         PIXEL11_32
3612                         PIXEL12_70
3613                         PIXEL13_60
3614                         PIXEL20_31
3615                         PIXEL21_31
3616                         PIXEL22_70
3617                         PIXEL23_60
3618                         PIXEL30_81
3619                         PIXEL31_81
3620                         PIXEL32_60
3621                         PIXEL33_20
3622                         break;
3623                     }
3624                 case 181:
3625                     {
3626                         PIXEL00_20
3627                         PIXEL01_60
3628                         PIXEL02_81
3629                         PIXEL03_81
3630                         PIXEL10_60
3631                         PIXEL11_70
3632                         PIXEL12_31
3633                         PIXEL13_31
3634                         PIXEL20_60
3635                         PIXEL21_70
3636                         PIXEL22_32
3637                         PIXEL23_32
3638                         PIXEL30_20
3639                         PIXEL31_60
3640                         PIXEL32_82
3641                         PIXEL33_82
3642                         break;
3643                     }
3644                 case 186:
3645                     {
3646                         if (Diff(w[4], w[2]))
3647                         {
3648                             PIXEL00_80
3649                             PIXEL01_10
3650                             PIXEL10_10
3651                             PIXEL11_30
3652                         }
3653                         else
3654                         {
3655                             PIXEL00_20
3656                             PIXEL01_12
3657                             PIXEL10_11
3658                             PIXEL11_0
3659                         }
3660                         if (Diff(w[2], w[6]))
3661                         {
3662                             PIXEL02_10
3663                             PIXEL03_80
3664                             PIXEL12_30
3665                             PIXEL13_10
3666                         }
3667                         else
3668                         {
3669                             PIXEL02_11
3670                             PIXEL03_20
3671                             PIXEL12_0
3672                             PIXEL13_12
3673                         }
3674                         PIXEL20_31
3675                         PIXEL21_31
3676                         PIXEL22_32
3677                         PIXEL23_32
3678                         PIXEL30_81
3679                         PIXEL31_81
3680                         PIXEL32_82
3681                         PIXEL33_82
3682                         break;
3683                     }
3684                 case 115:
3685                     {
3686                         PIXEL00_81
3687                         PIXEL01_31
3688                         if (Diff(w[2], w[6]))
3689                         {
3690                             PIXEL02_10
3691                             PIXEL03_80
3692                             PIXEL12_30
3693                             PIXEL13_10
3694                         }
3695                         else
3696                         {
3697                             PIXEL02_11
3698                             PIXEL03_20
3699                             PIXEL12_0
3700                             PIXEL13_12
3701                         }
3702                         PIXEL10_81
3703                         PIXEL11_31
3704                         PIXEL20_82
3705                         PIXEL21_32
3706                         if (Diff(w[6], w[8]))
3707                         {
3708                             PIXEL22_30
3709                             PIXEL23_10
3710                             PIXEL32_10
3711                             PIXEL33_80
3712                         }
3713                         else
3714                         {
3715                             PIXEL22_0
3716                             PIXEL23_11
3717                             PIXEL32_12
3718                             PIXEL33_20
3719                         }
3720                         PIXEL30_82
3721                         PIXEL31_32
3722                         break;
3723                     }
3724                 case 93:
3725                     {
3726                         PIXEL00_82
3727                         PIXEL01_82
3728                         PIXEL02_81
3729                         PIXEL03_81
3730                         PIXEL10_32
3731                         PIXEL11_32
3732                         PIXEL12_31
3733                         PIXEL13_31
3734                         if (Diff(w[8], w[4]))
3735                         {
3736                             PIXEL20_10
3737                             PIXEL21_30
3738                             PIXEL30_80
3739                             PIXEL31_10
3740                         }
3741                         else
3742                         {
3743                             PIXEL20_12
3744                             PIXEL21_0
3745                             PIXEL30_20
3746                             PIXEL31_11
3747                         }
3748                         if (Diff(w[6], w[8]))
3749                         {
3750                             PIXEL22_30
3751                             PIXEL23_10
3752                             PIXEL32_10
3753                             PIXEL33_80
3754                         }
3755                         else
3756                         {
3757                             PIXEL22_0
3758                             PIXEL23_11
3759                             PIXEL32_12
3760                             PIXEL33_20
3761                         }
3762                         break;
3763                     }
3764                 case 206:
3765                     {
3766                         if (Diff(w[4], w[2]))
3767                         {
3768                             PIXEL00_80
3769                             PIXEL01_10
3770                             PIXEL10_10
3771                             PIXEL11_30
3772                         }
3773                         else
3774                         {
3775                             PIXEL00_20
3776                             PIXEL01_12
3777                             PIXEL10_11
3778                             PIXEL11_0
3779                         }
3780                         PIXEL02_32
3781                         PIXEL03_82
3782                         PIXEL12_32
3783                         PIXEL13_82
3784                         if (Diff(w[8], w[4]))
3785                         {
3786                             PIXEL20_10
3787                             PIXEL21_30
3788                             PIXEL30_80
3789                             PIXEL31_10
3790                         }
3791                         else
3792                         {
3793                             PIXEL20_12
3794                             PIXEL21_0
3795                             PIXEL30_20
3796                             PIXEL31_11
3797                         }
3798                         PIXEL22_31
3799                         PIXEL23_81
3800                         PIXEL32_31
3801                         PIXEL33_81
3802                         break;
3803                     }
3804                 case 205:
3805                 case 201:
3806                     {
3807                         PIXEL00_82
3808                         PIXEL01_82
3809                         PIXEL02_60
3810                         PIXEL03_20
3811                         PIXEL10_32
3812                         PIXEL11_32
3813                         PIXEL12_70
3814                         PIXEL13_60
3815                         if (Diff(w[8], w[4]))
3816                         {
3817                             PIXEL20_10
3818                             PIXEL21_30
3819                             PIXEL30_80
3820                             PIXEL31_10
3821                         }
3822                         else
3823                         {
3824                             PIXEL20_12
3825                             PIXEL21_0
3826                             PIXEL30_20
3827                             PIXEL31_11
3828                         }
3829                         PIXEL22_31
3830                         PIXEL23_81
3831                         PIXEL32_31
3832                         PIXEL33_81
3833                         break;
3834                     }
3835                 case 174:
3836                 case 46:
3837                     {
3838                         if (Diff(w[4], w[2]))
3839                         {
3840                             PIXEL00_80
3841                             PIXEL01_10
3842                             PIXEL10_10
3843                             PIXEL11_30
3844                         }
3845                         else
3846                         {
3847                             PIXEL00_20
3848                             PIXEL01_12
3849                             PIXEL10_11
3850                             PIXEL11_0
3851                         }
3852                         PIXEL02_32
3853                         PIXEL03_82
3854                         PIXEL12_32
3855                         PIXEL13_82
3856                         PIXEL20_31
3857                         PIXEL21_31
3858                         PIXEL22_70
3859                         PIXEL23_60
3860                         PIXEL30_81
3861                         PIXEL31_81
3862                         PIXEL32_60
3863                         PIXEL33_20
3864                         break;
3865                     }
3866                 case 179:
3867                 case 147:
3868                     {
3869                         PIXEL00_81
3870                         PIXEL01_31
3871                         if (Diff(w[2], w[6]))
3872                         {
3873                             PIXEL02_10
3874                             PIXEL03_80
3875                             PIXEL12_30
3876                             PIXEL13_10
3877                         }
3878                         else
3879                         {
3880                             PIXEL02_11
3881                             PIXEL03_20
3882                             PIXEL12_0
3883                             PIXEL13_12
3884                         }
3885                         PIXEL10_81
3886                         PIXEL11_31
3887                         PIXEL20_60
3888                         PIXEL21_70
3889                         PIXEL22_32
3890                         PIXEL23_32
3891                         PIXEL30_20
3892                         PIXEL31_60
3893                         PIXEL32_82
3894                         PIXEL33_82
3895                         break;
3896                     }
3897                 case 117:
3898                 case 116:
3899                     {
3900                         PIXEL00_20
3901                         PIXEL01_60
3902                         PIXEL02_81
3903                         PIXEL03_81
3904                         PIXEL10_60
3905                         PIXEL11_70
3906                         PIXEL12_31
3907                         PIXEL13_31
3908                         PIXEL20_82
3909                         PIXEL21_32
3910                         if (Diff(w[6], w[8]))
3911                         {
3912                             PIXEL22_30
3913                             PIXEL23_10
3914                             PIXEL32_10
3915                             PIXEL33_80
3916                         }
3917                         else
3918                         {
3919                             PIXEL22_0
3920                             PIXEL23_11
3921                             PIXEL32_12
3922                             PIXEL33_20
3923                         }
3924                         PIXEL30_82
3925                         PIXEL31_32
3926                         break;
3927                     }
3928                 case 189:
3929                     {
3930                         PIXEL00_82
3931                         PIXEL01_82
3932                         PIXEL02_81
3933                         PIXEL03_81
3934                         PIXEL10_32
3935                         PIXEL11_32
3936                         PIXEL12_31
3937                         PIXEL13_31
3938                         PIXEL20_31
3939                         PIXEL21_31
3940                         PIXEL22_32
3941                         PIXEL23_32
3942                         PIXEL30_81
3943                         PIXEL31_81
3944                         PIXEL32_82
3945                         PIXEL33_82
3946                         break;
3947                     }
3948                 case 231:
3949                     {
3950                         PIXEL00_81
3951                         PIXEL01_31
3952                         PIXEL02_32
3953                         PIXEL03_82
3954                         PIXEL10_81
3955                         PIXEL11_31
3956                         PIXEL12_32
3957                         PIXEL13_82
3958                         PIXEL20_82
3959                         PIXEL21_32
3960                         PIXEL22_31
3961                         PIXEL23_81
3962                         PIXEL30_82
3963                         PIXEL31_32
3964                         PIXEL32_31
3965                         PIXEL33_81
3966                         break;
3967                     }
3968                 case 126:
3969                     {
3970                         PIXEL00_80
3971                         PIXEL01_10
3972                         if (Diff(w[2], w[6]))
3973                         {
3974                             PIXEL02_0
3975                             PIXEL03_0
3976                             PIXEL13_0
3977                         }
3978                         else
3979                         {
3980                             PIXEL02_50
3981                             PIXEL03_50
3982                             PIXEL13_50
3983                         }
3984                         PIXEL10_10
3985                         PIXEL11_30
3986                         PIXEL12_0
3987                         if (Diff(w[8], w[4]))
3988                         {
3989                             PIXEL20_0
3990                             PIXEL30_0
3991                             PIXEL31_0
3992                         }
3993                         else
3994                         {
3995                             PIXEL20_50
3996                             PIXEL30_50
3997                             PIXEL31_50
3998                         }
3999                         PIXEL21_0
4000                         PIXEL22_30
4001                         PIXEL23_10
4002                         PIXEL32_10
4003                         PIXEL33_80
4004                         break;
4005                     }
4006                 case 219:
4007                     {
4008                         if (Diff(w[4], w[2]))
4009                         {
4010                             PIXEL00_0
4011                             PIXEL01_0
4012                             PIXEL10_0
4013                         }
4014                         else
4015                         {
4016                             PIXEL00_50
4017                             PIXEL01_50
4018                             PIXEL10_50
4019                         }
4020                         PIXEL02_10
4021                         PIXEL03_80
4022                         PIXEL11_0
4023                         PIXEL12_30
4024                         PIXEL13_10
4025                         PIXEL20_10
4026                         PIXEL21_30
4027                         PIXEL22_0
4028                         if (Diff(w[6], w[8]))
4029                         {
4030                             PIXEL23_0
4031                             PIXEL32_0
4032                             PIXEL33_0
4033                         }
4034                         else
4035                         {
4036                             PIXEL23_50
4037                             PIXEL32_50
4038                             PIXEL33_50
4039                         }
4040                         PIXEL30_80
4041                         PIXEL31_10
4042                         break;
4043                     }
4044                 case 125:
4045                     {
4046                         if (Diff(w[8], w[4]))
4047                         {
4048                             PIXEL00_82
4049                             PIXEL10_32
4050                             PIXEL20_0
4051                             PIXEL21_0
4052                             PIXEL30_0
4053                             PIXEL31_0
4054                         }
4055                         else
4056                         {
4057                             PIXEL00_11
4058                             PIXEL10_13
4059                             PIXEL20_83
4060                             PIXEL21_70
4061                             PIXEL30_50
4062                             PIXEL31_21
4063                         }
4064                         PIXEL01_82
4065                         PIXEL02_81
4066                         PIXEL03_81
4067                         PIXEL11_32
4068                         PIXEL12_31
4069                         PIXEL13_31
4070                         PIXEL22_30
4071                         PIXEL23_10
4072                         PIXEL32_10
4073                         PIXEL33_80
4074                         break;
4075                     }
4076                 case 221:
4077                     {
4078                         PIXEL00_82
4079                         PIXEL01_82
4080                         PIXEL02_81
4081                         if (Diff(w[6], w[8]))
4082                         {
4083                             PIXEL03_81
4084                             PIXEL13_31
4085                             PIXEL22_0
4086                             PIXEL23_0
4087                             PIXEL32_0
4088                             PIXEL33_0
4089                         }
4090                         else
4091                         {
4092                             PIXEL03_12
4093                             PIXEL13_14
4094                             PIXEL22_70
4095                             PIXEL23_83
4096                             PIXEL32_21
4097                             PIXEL33_50
4098                         }
4099                         PIXEL10_32
4100                         PIXEL11_32
4101                         PIXEL12_31
4102                         PIXEL20_10
4103                         PIXEL21_30
4104                         PIXEL30_80
4105                         PIXEL31_10
4106                         break;
4107                     }
4108                 case 207:
4109                     {
4110                         if (Diff(w[4], w[2]))
4111                         {
4112                             PIXEL00_0
4113                             PIXEL01_0
4114                             PIXEL02_32
4115                             PIXEL03_82
4116                             PIXEL10_0
4117                             PIXEL11_0
4118                         }
4119                         else
4120                         {
4121                             PIXEL00_50
4122                             PIXEL01_83
4123                             PIXEL02_13
4124                             PIXEL03_11
4125                             PIXEL10_21
4126                             PIXEL11_70
4127                         }
4128                         PIXEL12_32
4129                         PIXEL13_82
4130                         PIXEL20_10
4131                         PIXEL21_30
4132                         PIXEL22_31
4133                         PIXEL23_81
4134                         PIXEL30_80
4135                         PIXEL31_10
4136                         PIXEL32_31
4137                         PIXEL33_81
4138                         break;
4139                     }
4140                 case 238:
4141                     {
4142                         PIXEL00_80
4143                         PIXEL01_10
4144                         PIXEL02_32
4145                         PIXEL03_82
4146                         PIXEL10_10
4147                         PIXEL11_30
4148                         PIXEL12_32
4149                         PIXEL13_82
4150                         if (Diff(w[8], w[4]))
4151                         {
4152                             PIXEL20_0
4153                             PIXEL21_0
4154                             PIXEL30_0
4155                             PIXEL31_0
4156                             PIXEL32_31
4157                             PIXEL33_81
4158                         }
4159                         else
4160                         {
4161                             PIXEL20_21
4162                             PIXEL21_70
4163                             PIXEL30_50
4164                             PIXEL31_83
4165                             PIXEL32_14
4166                             PIXEL33_12
4167                         }
4168                         PIXEL22_31
4169                         PIXEL23_81
4170                         break;
4171                     }
4172                 case 190:
4173                     {
4174                         PIXEL00_80
4175                         PIXEL01_10
4176                         if (Diff(w[2], w[6]))
4177                         {
4178                             PIXEL02_0
4179                             PIXEL03_0
4180                             PIXEL12_0
4181                             PIXEL13_0
4182                             PIXEL23_32
4183                             PIXEL33_82
4184                         }
4185                         else
4186                         {
4187                             PIXEL02_21
4188                             PIXEL03_50
4189                             PIXEL12_70
4190                             PIXEL13_83
4191                             PIXEL23_13
4192                             PIXEL33_11
4193                         }
4194                         PIXEL10_10
4195                         PIXEL11_30
4196                         PIXEL20_31
4197                         PIXEL21_31
4198                         PIXEL22_32
4199                         PIXEL30_81
4200                         PIXEL31_81
4201                         PIXEL32_82
4202                         break;
4203                     }
4204                 case 187:
4205                     {
4206                         if (Diff(w[4], w[2]))
4207                         {
4208                             PIXEL00_0
4209                             PIXEL01_0
4210                             PIXEL10_0
4211                             PIXEL11_0
4212                             PIXEL20_31
4213                             PIXEL30_81
4214                         }
4215                         else
4216                         {
4217                             PIXEL00_50
4218                             PIXEL01_21
4219                             PIXEL10_83
4220                             PIXEL11_70
4221                             PIXEL20_14
4222                             PIXEL30_12
4223                         }
4224                         PIXEL02_10
4225                         PIXEL03_80
4226                         PIXEL12_30
4227                         PIXEL13_10
4228                         PIXEL21_31
4229                         PIXEL22_32
4230                         PIXEL23_32
4231                         PIXEL31_81
4232                         PIXEL32_82
4233                         PIXEL33_82
4234                         break;
4235                     }
4236                 case 243:
4237                     {
4238                         PIXEL00_81
4239                         PIXEL01_31
4240                         PIXEL02_10
4241                         PIXEL03_80
4242                         PIXEL10_81
4243                         PIXEL11_31
4244                         PIXEL12_30
4245                         PIXEL13_10
4246                         PIXEL20_82
4247                         PIXEL21_32
4248                         if (Diff(w[6], w[8]))
4249                         {
4250                             PIXEL22_0
4251                             PIXEL23_0
4252                             PIXEL30_82
4253                             PIXEL31_32
4254                             PIXEL32_0
4255                             PIXEL33_0
4256                         }
4257                         else
4258                         {
4259                             PIXEL22_70
4260                             PIXEL23_21
4261                             PIXEL30_11
4262                             PIXEL31_13
4263                             PIXEL32_83
4264                             PIXEL33_50
4265                         }
4266                         break;
4267                     }
4268                 case 119:
4269                     {
4270                         if (Diff(w[2], w[6]))
4271                         {
4272                             PIXEL00_81
4273                             PIXEL01_31
4274                             PIXEL02_0
4275                             PIXEL03_0
4276                             PIXEL12_0
4277                             PIXEL13_0
4278                         }
4279                         else
4280                         {
4281                             PIXEL00_12
4282                             PIXEL01_14
4283                             PIXEL02_83
4284                             PIXEL03_50
4285                             PIXEL12_70
4286                             PIXEL13_21
4287                         }
4288                         PIXEL10_81
4289                         PIXEL11_31
4290                         PIXEL20_82
4291                         PIXEL21_32
4292                         PIXEL22_30
4293                         PIXEL23_10
4294                         PIXEL30_82
4295                         PIXEL31_32
4296                         PIXEL32_10
4297                         PIXEL33_80
4298                         break;
4299                     }
4300                 case 237:
4301                 case 233:
4302                     {
4303                         PIXEL00_82
4304                         PIXEL01_82
4305                         PIXEL02_60
4306                         PIXEL03_20
4307                         PIXEL10_32
4308                         PIXEL11_32
4309                         PIXEL12_70
4310                         PIXEL13_60
4311                         PIXEL20_0
4312                         PIXEL21_0
4313                         PIXEL22_31
4314                         PIXEL23_81
4315                         if (Diff(w[8], w[4]))
4316                         {
4317                             PIXEL30_0
4318                         }
4319                         else
4320                         {
4321                             PIXEL30_20
4322                         }
4323                         PIXEL31_0
4324                         PIXEL32_31
4325                         PIXEL33_81
4326                         break;
4327                     }
4328                 case 175:
4329                 case 47:
4330                     {
4331                         if (Diff(w[4], w[2]))
4332                         {
4333                             PIXEL00_0
4334                         }
4335                         else
4336                         {
4337                             PIXEL00_20
4338                         }
4339                         PIXEL01_0
4340                         PIXEL02_32
4341                         PIXEL03_82
4342                         PIXEL10_0
4343                         PIXEL11_0
4344                         PIXEL12_32
4345                         PIXEL13_82
4346                         PIXEL20_31
4347                         PIXEL21_31
4348                         PIXEL22_70
4349                         PIXEL23_60
4350                         PIXEL30_81
4351                         PIXEL31_81
4352                         PIXEL32_60
4353                         PIXEL33_20
4354                         break;
4355                     }
4356                 case 183:
4357                 case 151:
4358                     {
4359                         PIXEL00_81
4360                         PIXEL01_31
4361                         PIXEL02_0
4362                         if (Diff(w[2], w[6]))
4363                         {
4364                             PIXEL03_0
4365                         }
4366                         else
4367                         {
4368                             PIXEL03_20
4369                         }
4370                         PIXEL10_81
4371                         PIXEL11_31
4372                         PIXEL12_0
4373                         PIXEL13_0
4374                         PIXEL20_60
4375                         PIXEL21_70
4376                         PIXEL22_32
4377                         PIXEL23_32
4378                         PIXEL30_20
4379                         PIXEL31_60
4380                         PIXEL32_82
4381                         PIXEL33_82
4382                         break;
4383                     }
4384                 case 245:
4385                 case 244:
4386                     {
4387                         PIXEL00_20
4388                         PIXEL01_60
4389                         PIXEL02_81
4390                         PIXEL03_81
4391                         PIXEL10_60
4392                         PIXEL11_70
4393                         PIXEL12_31
4394                         PIXEL13_31
4395                         PIXEL20_82
4396                         PIXEL21_32
4397                         PIXEL22_0
4398                         PIXEL23_0
4399                         PIXEL30_82
4400                         PIXEL31_32
4401                         PIXEL32_0
4402                         if (Diff(w[6], w[8]))
4403                         {
4404                             PIXEL33_0
4405                         }
4406                         else
4407                         {
4408                             PIXEL33_20
4409                         }
4410                         break;
4411                     }
4412                 case 250:
4413                     {
4414                         PIXEL00_80
4415                         PIXEL01_10
4416                         PIXEL02_10
4417                         PIXEL03_80
4418                         PIXEL10_10
4419                         PIXEL11_30
4420                         PIXEL12_30
4421                         PIXEL13_10
4422                         if (Diff(w[8], w[4]))
4423                         {
4424                             PIXEL20_0
4425                             PIXEL30_0
4426                             PIXEL31_0
4427                         }
4428                         else
4429                         {
4430                             PIXEL20_50
4431                             PIXEL30_50
4432                             PIXEL31_50
4433                         }
4434                         PIXEL21_0
4435                         PIXEL22_0
4436                         if (Diff(w[6], w[8]))
4437                         {
4438                             PIXEL23_0
4439                             PIXEL32_0
4440                             PIXEL33_0
4441                         }
4442                         else
4443                         {
4444                             PIXEL23_50
4445                             PIXEL32_50
4446                             PIXEL33_50
4447                         }
4448                         break;
4449                     }
4450                 case 123:
4451                     {
4452                         if (Diff(w[4], w[2]))
4453                         {
4454                             PIXEL00_0
4455                             PIXEL01_0
4456                             PIXEL10_0
4457                         }
4458                         else
4459                         {
4460                             PIXEL00_50
4461                             PIXEL01_50
4462                             PIXEL10_50
4463                         }
4464                         PIXEL02_10
4465                         PIXEL03_80
4466                         PIXEL11_0
4467                         PIXEL12_30
4468                         PIXEL13_10
4469                         if (Diff(w[8], w[4]))
4470                         {
4471                             PIXEL20_0
4472                             PIXEL30_0
4473                             PIXEL31_0
4474                         }
4475                         else
4476                         {
4477                             PIXEL20_50
4478                             PIXEL30_50
4479                             PIXEL31_50
4480                         }
4481                         PIXEL21_0
4482                         PIXEL22_30
4483                         PIXEL23_10
4484                         PIXEL32_10
4485                         PIXEL33_80
4486                         break;
4487                     }
4488                 case 95:
4489                     {
4490                         if (Diff(w[4], w[2]))
4491                         {
4492                             PIXEL00_0
4493                             PIXEL01_0
4494                             PIXEL10_0
4495                         }
4496                         else
4497                         {
4498                             PIXEL00_50
4499                             PIXEL01_50
4500                             PIXEL10_50
4501                         }
4502                         if (Diff(w[2], w[6]))
4503                         {
4504                             PIXEL02_0
4505                             PIXEL03_0
4506                             PIXEL13_0
4507                         }
4508                         else
4509                         {
4510                             PIXEL02_50
4511                             PIXEL03_50
4512                             PIXEL13_50
4513                         }
4514                         PIXEL11_0
4515                         PIXEL12_0
4516                         PIXEL20_10
4517                         PIXEL21_30
4518                         PIXEL22_30
4519                         PIXEL23_10
4520                         PIXEL30_80
4521                         PIXEL31_10
4522                         PIXEL32_10
4523                         PIXEL33_80
4524                         break;
4525                     }
4526                 case 222:
4527                     {
4528                         PIXEL00_80
4529                         PIXEL01_10
4530                         if (Diff(w[2], w[6]))
4531                         {
4532                             PIXEL02_0
4533                             PIXEL03_0
4534                             PIXEL13_0
4535                         }
4536                         else
4537                         {
4538                             PIXEL02_50
4539                             PIXEL03_50
4540                             PIXEL13_50
4541                         }
4542                         PIXEL10_10
4543                         PIXEL11_30
4544                         PIXEL12_0
4545                         PIXEL20_10
4546                         PIXEL21_30
4547                         PIXEL22_0
4548                         if (Diff(w[6], w[8]))
4549                         {
4550                             PIXEL23_0
4551                             PIXEL32_0
4552                             PIXEL33_0
4553                         }
4554                         else
4555                         {
4556                             PIXEL23_50
4557                             PIXEL32_50
4558                             PIXEL33_50
4559                         }
4560                         PIXEL30_80
4561                         PIXEL31_10
4562                         break;
4563                     }
4564                 case 252:
4565                     {
4566                         PIXEL00_80
4567                         PIXEL01_61
4568                         PIXEL02_81
4569                         PIXEL03_81
4570                         PIXEL10_10
4571                         PIXEL11_30
4572                         PIXEL12_31
4573                         PIXEL13_31
4574                         if (Diff(w[8], w[4]))
4575                         {
4576                             PIXEL20_0
4577                             PIXEL30_0
4578                             PIXEL31_0
4579                         }
4580                         else
4581                         {
4582                             PIXEL20_50
4583                             PIXEL30_50
4584                             PIXEL31_50
4585                         }
4586                         PIXEL21_0
4587                         PIXEL22_0
4588                         PIXEL23_0
4589                         PIXEL32_0
4590                         if (Diff(w[6], w[8]))
4591                         {
4592                             PIXEL33_0
4593                         }
4594                         else
4595                         {
4596                             PIXEL33_20
4597                         }
4598                         break;
4599                     }
4600                 case 249:
4601                     {
4602                         PIXEL00_82
4603                         PIXEL01_82
4604                         PIXEL02_61
4605                         PIXEL03_80
4606                         PIXEL10_32
4607                         PIXEL11_32
4608                         PIXEL12_30
4609                         PIXEL13_10
4610                         PIXEL20_0
4611                         PIXEL21_0
4612                         PIXEL22_0
4613                         if (Diff(w[6], w[8]))
4614                         {
4615                             PIXEL23_0
4616                             PIXEL32_0
4617                             PIXEL33_0
4618                         }
4619                         else
4620                         {
4621                             PIXEL23_50
4622                             PIXEL32_50
4623                             PIXEL33_50
4624                         }
4625                         if (Diff(w[8], w[4]))
4626                         {
4627                             PIXEL30_0
4628                         }
4629                         else
4630                         {
4631                             PIXEL30_20
4632                         }
4633                         PIXEL31_0
4634                         break;
4635                     }
4636                 case 235:
4637                     {
4638                         if (Diff(w[4], w[2]))
4639                         {
4640                             PIXEL00_0
4641                             PIXEL01_0
4642                             PIXEL10_0
4643                         }
4644                         else
4645                         {
4646                             PIXEL00_50
4647                             PIXEL01_50
4648                             PIXEL10_50
4649                         }
4650                         PIXEL02_10
4651                         PIXEL03_80
4652                         PIXEL11_0
4653                         PIXEL12_30
4654                         PIXEL13_61
4655                         PIXEL20_0
4656                         PIXEL21_0
4657                         PIXEL22_31
4658                         PIXEL23_81
4659                         if (Diff(w[8], w[4]))
4660                         {
4661                             PIXEL30_0
4662                         }
4663                         else
4664                         {
4665                             PIXEL30_20
4666                         }
4667                         PIXEL31_0
4668                         PIXEL32_31
4669                         PIXEL33_81
4670                         break;
4671                     }
4672                 case 111:
4673                     {
4674                         if (Diff(w[4], w[2]))
4675                         {
4676                             PIXEL00_0
4677                         }
4678                         else
4679                         {
4680                             PIXEL00_20
4681                         }
4682                         PIXEL01_0
4683                         PIXEL02_32
4684                         PIXEL03_82
4685                         PIXEL10_0
4686                         PIXEL11_0
4687                         PIXEL12_32
4688                         PIXEL13_82
4689                         if (Diff(w[8], w[4]))
4690                         {
4691                             PIXEL20_0
4692                             PIXEL30_0
4693                             PIXEL31_0
4694                         }
4695                         else
4696                         {
4697                             PIXEL20_50
4698                             PIXEL30_50
4699                             PIXEL31_50
4700                         }
4701                         PIXEL21_0
4702                         PIXEL22_30
4703                         PIXEL23_61
4704                         PIXEL32_10
4705                         PIXEL33_80
4706                         break;
4707                     }
4708                 case 63:
4709                     {
4710                         if (Diff(w[4], w[2]))
4711                         {
4712                             PIXEL00_0
4713                         }
4714                         else
4715                         {
4716                             PIXEL00_20
4717                         }
4718                         PIXEL01_0
4719                         if (Diff(w[2], w[6]))
4720                         {
4721                             PIXEL02_0
4722                             PIXEL03_0
4723                             PIXEL13_0
4724                         }
4725                         else
4726                         {
4727                             PIXEL02_50
4728                             PIXEL03_50
4729                             PIXEL13_50
4730                         }
4731                         PIXEL10_0
4732                         PIXEL11_0
4733                         PIXEL12_0
4734                         PIXEL20_31
4735                         PIXEL21_31
4736                         PIXEL22_30
4737                         PIXEL23_10
4738                         PIXEL30_81
4739                         PIXEL31_81
4740                         PIXEL32_61
4741                         PIXEL33_80
4742                         break;
4743                     }
4744                 case 159:
4745                     {
4746                         if (Diff(w[4], w[2]))
4747                         {
4748                             PIXEL00_0
4749                             PIXEL01_0
4750                             PIXEL10_0
4751                         }
4752                         else
4753                         {
4754                             PIXEL00_50
4755                             PIXEL01_50
4756                             PIXEL10_50
4757                         }
4758                         PIXEL02_0
4759                         if (Diff(w[2], w[6]))
4760                         {
4761                             PIXEL03_0
4762                         }
4763                         else
4764                         {
4765                             PIXEL03_20
4766                         }
4767                         PIXEL11_0
4768                         PIXEL12_0
4769                         PIXEL13_0
4770                         PIXEL20_10
4771                         PIXEL21_30
4772                         PIXEL22_32
4773                         PIXEL23_32
4774                         PIXEL30_80
4775                         PIXEL31_61
4776                         PIXEL32_82
4777                         PIXEL33_82
4778                         break;
4779                     }
4780                 case 215:
4781                     {
4782                         PIXEL00_81
4783                         PIXEL01_31
4784                         PIXEL02_0
4785                         if (Diff(w[2], w[6]))
4786                         {
4787                             PIXEL03_0
4788                         }
4789                         else
4790                         {
4791                             PIXEL03_20
4792                         }
4793                         PIXEL10_81
4794                         PIXEL11_31
4795                         PIXEL12_0
4796                         PIXEL13_0
4797                         PIXEL20_61
4798                         PIXEL21_30
4799                         PIXEL22_0
4800                         if (Diff(w[6], w[8]))
4801                         {
4802                             PIXEL23_0
4803                             PIXEL32_0
4804                             PIXEL33_0
4805                         }
4806                         else
4807                         {
4808                             PIXEL23_50
4809                             PIXEL32_50
4810                             PIXEL33_50
4811                         }
4812                         PIXEL30_80
4813                         PIXEL31_10
4814                         break;
4815                     }
4816                 case 246:
4817                     {
4818                         PIXEL00_80
4819                         PIXEL01_10
4820                         if (Diff(w[2], w[6]))
4821                         {
4822                             PIXEL02_0
4823                             PIXEL03_0
4824                             PIXEL13_0
4825                         }
4826                         else
4827                         {
4828                             PIXEL02_50
4829                             PIXEL03_50
4830                             PIXEL13_50
4831                         }
4832                         PIXEL10_61
4833                         PIXEL11_30
4834                         PIXEL12_0
4835                         PIXEL20_82
4836                         PIXEL21_32
4837                         PIXEL22_0
4838                         PIXEL23_0
4839                         PIXEL30_82
4840                         PIXEL31_32
4841                         PIXEL32_0
4842                         if (Diff(w[6], w[8]))
4843                         {
4844                             PIXEL33_0
4845                         }
4846                         else
4847                         {
4848                             PIXEL33_20
4849                         }
4850                         break;
4851                     }
4852                 case 254:
4853                     {
4854                         PIXEL00_80
4855                         PIXEL01_10
4856                         if (Diff(w[2], w[6]))
4857                         {
4858                             PIXEL02_0
4859                             PIXEL03_0
4860                             PIXEL13_0
4861                         }
4862                         else
4863                         {
4864                             PIXEL02_50
4865                             PIXEL03_50
4866                             PIXEL13_50
4867                         }
4868                         PIXEL10_10
4869                         PIXEL11_30
4870                         PIXEL12_0
4871                         if (Diff(w[8], w[4]))
4872                         {
4873                             PIXEL20_0
4874                             PIXEL30_0
4875                             PIXEL31_0
4876                         }
4877                         else
4878                         {
4879                             PIXEL20_50
4880                             PIXEL30_50
4881                             PIXEL31_50
4882                         }
4883                         PIXEL21_0
4884                         PIXEL22_0
4885                         PIXEL23_0
4886                         PIXEL32_0
4887                         if (Diff(w[6], w[8]))
4888                         {
4889                             PIXEL33_0
4890                         }
4891                         else
4892                         {
4893                             PIXEL33_20
4894                         }
4895                         break;
4896                     }
4897                 case 253:
4898                     {
4899                         PIXEL00_82
4900                         PIXEL01_82
4901                         PIXEL02_81
4902                         PIXEL03_81
4903                         PIXEL10_32
4904                         PIXEL11_32
4905                         PIXEL12_31
4906                         PIXEL13_31
4907                         PIXEL20_0
4908                         PIXEL21_0
4909                         PIXEL22_0
4910                         PIXEL23_0
4911                         if (Diff(w[8], w[4]))
4912                         {
4913                             PIXEL30_0
4914                         }
4915                         else
4916                         {
4917                             PIXEL30_20
4918                         }
4919                         PIXEL31_0
4920                         PIXEL32_0
4921                         if (Diff(w[6], w[8]))
4922                         {
4923                             PIXEL33_0
4924                         }
4925                         else
4926                         {
4927                             PIXEL33_20
4928                         }
4929                         break;
4930                     }
4931                 case 251:
4932                     {
4933                         if (Diff(w[4], w[2]))
4934                         {
4935                             PIXEL00_0
4936                             PIXEL01_0
4937                             PIXEL10_0
4938                         }
4939                         else
4940                         {
4941                             PIXEL00_50
4942                             PIXEL01_50
4943                             PIXEL10_50
4944                         }
4945                         PIXEL02_10
4946                         PIXEL03_80
4947                         PIXEL11_0
4948                         PIXEL12_30
4949                         PIXEL13_10
4950                         PIXEL20_0
4951                         PIXEL21_0
4952                         PIXEL22_0
4953                         if (Diff(w[6], w[8]))
4954                         {
4955                             PIXEL23_0
4956                             PIXEL32_0
4957                             PIXEL33_0
4958                         }
4959                         else
4960                         {
4961                             PIXEL23_50
4962                             PIXEL32_50
4963                             PIXEL33_50
4964                         }
4965                         if (Diff(w[8], w[4]))
4966                         {
4967                             PIXEL30_0
4968                         }
4969                         else
4970                         {
4971                             PIXEL30_20
4972                         }
4973                         PIXEL31_0
4974                         break;
4975                     }
4976                 case 239:
4977                     {
4978                         if (Diff(w[4], w[2]))
4979                         {
4980                             PIXEL00_0
4981                         }
4982                         else
4983                         {
4984                             PIXEL00_20
4985                         }
4986                         PIXEL01_0
4987                         PIXEL02_32
4988                         PIXEL03_82
4989                         PIXEL10_0
4990                         PIXEL11_0
4991                         PIXEL12_32
4992                         PIXEL13_82
4993                         PIXEL20_0
4994                         PIXEL21_0
4995                         PIXEL22_31
4996                         PIXEL23_81
4997                         if (Diff(w[8], w[4]))
4998                         {
4999                             PIXEL30_0
5000                         }
5001                         else
5002                         {
5003                             PIXEL30_20
5004                         }
5005                         PIXEL31_0
5006                         PIXEL32_31
5007                         PIXEL33_81
5008                         break;
5009                     }
5010                 case 127:
5011                     {
5012                         if (Diff(w[4], w[2]))
5013                         {
5014                             PIXEL00_0
5015                         }
5016                         else
5017                         {
5018                             PIXEL00_20
5019                         }
5020                         PIXEL01_0
5021                         if (Diff(w[2], w[6]))
5022                         {
5023                             PIXEL02_0
5024                             PIXEL03_0
5025                             PIXEL13_0
5026                         }
5027                         else
5028                         {
5029                             PIXEL02_50
5030                             PIXEL03_50
5031                             PIXEL13_50
5032                         }
5033                         PIXEL10_0
5034                         PIXEL11_0
5035                         PIXEL12_0
5036                         if (Diff(w[8], w[4]))
5037                         {
5038                             PIXEL20_0
5039                             PIXEL30_0
5040                             PIXEL31_0
5041                         }
5042                         else
5043                         {
5044                             PIXEL20_50
5045                             PIXEL30_50
5046                             PIXEL31_50
5047                         }
5048                         PIXEL21_0
5049                         PIXEL22_30
5050                         PIXEL23_10
5051                         PIXEL32_10
5052                         PIXEL33_80
5053                         break;
5054                     }
5055                 case 191:
5056                     {
5057                         if (Diff(w[4], w[2]))
5058                         {
5059                             PIXEL00_0
5060                         }
5061                         else
5062                         {
5063                             PIXEL00_20
5064                         }
5065                         PIXEL01_0
5066                         PIXEL02_0
5067                         if (Diff(w[2], w[6]))
5068                         {
5069                             PIXEL03_0
5070                         }
5071                         else
5072                         {
5073                             PIXEL03_20
5074                         }
5075                         PIXEL10_0
5076                         PIXEL11_0
5077                         PIXEL12_0
5078                         PIXEL13_0
5079                         PIXEL20_31
5080                         PIXEL21_31
5081                         PIXEL22_32
5082                         PIXEL23_32
5083                         PIXEL30_81
5084                         PIXEL31_81
5085                         PIXEL32_82
5086                         PIXEL33_82
5087                         break;
5088                     }
5089                 case 223:
5090                     {
5091                         if (Diff(w[4], w[2]))
5092                         {
5093                             PIXEL00_0
5094                             PIXEL01_0
5095                             PIXEL10_0
5096                         }
5097                         else
5098                         {
5099                             PIXEL00_50
5100                             PIXEL01_50
5101                             PIXEL10_50
5102                         }
5103                         PIXEL02_0
5104                         if (Diff(w[2], w[6]))
5105                         {
5106                             PIXEL03_0
5107                         }
5108                         else
5109                         {
5110                             PIXEL03_20
5111                         }
5112                         PIXEL11_0
5113                         PIXEL12_0
5114                         PIXEL13_0
5115                         PIXEL20_10
5116                         PIXEL21_30
5117                         PIXEL22_0
5118                         if (Diff(w[6], w[8]))
5119                         {
5120                             PIXEL23_0
5121                             PIXEL32_0
5122                             PIXEL33_0
5123                         }
5124                         else
5125                         {
5126                             PIXEL23_50
5127                             PIXEL32_50
5128                             PIXEL33_50
5129                         }
5130                         PIXEL30_80
5131                         PIXEL31_10
5132                         break;
5133                     }
5134                 case 247:
5135                     {
5136                         PIXEL00_81
5137                         PIXEL01_31
5138                         PIXEL02_0
5139                         if (Diff(w[2], w[6]))
5140                         {
5141                             PIXEL03_0
5142                         }
5143                         else
5144                         {
5145                             PIXEL03_20
5146                         }
5147                         PIXEL10_81
5148                         PIXEL11_31
5149                         PIXEL12_0
5150                         PIXEL13_0
5151                         PIXEL20_82
5152                         PIXEL21_32
5153                         PIXEL22_0
5154                         PIXEL23_0
5155                         PIXEL30_82
5156                         PIXEL31_32
5157                         PIXEL32_0
5158                         if (Diff(w[6], w[8]))
5159                         {
5160                             PIXEL33_0
5161                         }
5162                         else
5163                         {
5164                             PIXEL33_20
5165                         }
5166                         break;
5167                     }
5168                 case 255:
5169                     {
5170                         if (Diff(w[4], w[2]))
5171                         {
5172                             PIXEL00_0
5173                         }
5174                         else
5175                         {
5176                             PIXEL00_20
5177                         }
5178                         PIXEL01_0
5179                         PIXEL02_0
5180                         if (Diff(w[2], w[6]))
5181                         {
5182                             PIXEL03_0
5183                         }
5184                         else
5185                         {
5186                             PIXEL03_20
5187                         }
5188                         PIXEL10_0
5189                         PIXEL11_0
5190                         PIXEL12_0
5191                         PIXEL13_0
5192                         PIXEL20_0
5193                         PIXEL21_0
5194                         PIXEL22_0
5195                         PIXEL23_0
5196                         if (Diff(w[8], w[4]))
5197                         {
5198                             PIXEL30_0
5199                         }
5200                         else
5201                         {
5202                             PIXEL30_20
5203                         }
5204                         PIXEL31_0
5205                         PIXEL32_0
5206                         if (Diff(w[6], w[8]))
5207                         {
5208                             PIXEL33_0
5209                         }
5210                         else
5211                         {
5212                             PIXEL33_20
5213                         }
5214                         break;
5215                     }
5216             }
5217             sp++;
5218             dp += 4;
5219         }
5220 
5221         sRowP += srb;
5222         sp = (uint32_t *) sRowP;
5223 
5224         dRowP += drb * 4;
5225         dp = (uint32_t *) dRowP;
5226     }
5227 }
5228 
hq4x_32(uint32_t * sp,uint32_t * dp,int Xres,int Yres)5229 HQX_API void HQX_CALLCONV hq4x_32( uint32_t * sp, uint32_t * dp, int Xres, int Yres )
5230 {
5231     uint32_t rowBytesL = Xres * 4;
5232     hq4x_32_rb(sp, rowBytesL, dp, rowBytesL * 4, Xres, Yres);
5233 }
5234