--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/graphicsdeviceinterface/screendriver/sbit/LUTAB.CPP Tue Feb 02 01:47:50 2010 +0200
@@ -0,0 +1,467 @@
+// Copyright (c) 1997-2009 Nokia Corporation and/or its subsidiary(-ies).
+// All rights reserved.
+// This component and the accompanying materials are made available
+// under the terms of "Eclipse Public License v1.0"
+// which accompanies this distribution, and is available
+// at the URL "http://www.eclipse.org/legal/epl-v10.html".
+//
+// Initial Contributors:
+// Nokia Corporation - initial contribution.
+//
+// Contributors:
+//
+// Description:
+//
+
+#include <e32std.h>
+
+extern const TUint32 wordlutab[256]=
+ { 0x0000, 0x0003, 0x000c, 0x000f, 0x0030, 0x0033, 0x003c, 0x003f,
+ 0x00c0, 0x00c3, 0x00cc, 0x00cf, 0x00f0, 0x00f3, 0x00fc, 0x00ff,
+ 0x0300, 0x0303, 0x030c, 0x030f, 0x0330, 0x0333, 0x033c, 0x033f,
+ 0x03c0, 0x03c3, 0x03cc, 0x03cf, 0x03f0, 0x03f3, 0x03fc, 0x03ff,
+ 0x0c00, 0x0c03, 0x0c0c, 0x0c0f, 0x0c30, 0x0c33, 0x0c3c, 0x0c3f,
+ 0x0cc0, 0x0cc3, 0x0ccc, 0x0ccf, 0x0cf0, 0x0cf3, 0x0cfc, 0x0cff,
+ 0x0f00, 0x0f03, 0x0f0c, 0x0f0f, 0x0f30, 0x0f33, 0x0f3c, 0x0f3f,
+ 0x0fc0, 0x0fc3, 0x0fcc, 0x0fcf, 0x0ff0, 0x0ff3, 0x0ffc, 0x0fff,
+ 0x3000, 0x3003, 0x300c, 0x300f, 0x3030, 0x3033, 0x303c, 0x303f,
+ 0x30c0, 0x30c3, 0x30cc, 0x30cf, 0x30f0, 0x30f3, 0x30fc, 0x30ff,
+ 0x3300, 0x3303, 0x330c, 0x330f, 0x3330, 0x3333, 0x333c, 0x333f,
+ 0x33c0, 0x33c3, 0x33cc, 0x33cf, 0x33f0, 0x33f3, 0x33fc, 0x33ff,
+ 0x3c00, 0x3c03, 0x3c0c, 0x3c0f, 0x3c30, 0x3c33, 0x3c3c, 0x3c3f,
+ 0x3cc0, 0x3cc3, 0x3ccc, 0x3ccf, 0x3cf0, 0x3cf3, 0x3cfc, 0x3cff,
+ 0x3f00, 0x3f03, 0x3f0c, 0x3f0f, 0x3f30, 0x3f33, 0x3f3c, 0x3f3f,
+ 0x3fc0, 0x3fc3, 0x3fcc, 0x3fcf, 0x3ff0, 0x3ff3, 0x3ffc, 0x3fff,
+ 0xc000, 0xc003, 0xc00c, 0xc00f, 0xc030, 0xc033, 0xc03c, 0xc03f,
+ 0xc0c0, 0xc0c3, 0xc0cc, 0xc0cf, 0xc0f0, 0xc0f3, 0xc0fc, 0xc0ff,
+ 0xc300, 0xc303, 0xc30c, 0xc30f, 0xc330, 0xc333, 0xc33c, 0xc33f,
+ 0xc3c0, 0xc3c3, 0xc3cc, 0xc3cf, 0xc3f0, 0xc3f3, 0xc3fc, 0xc3ff,
+ 0xcc00, 0xcc03, 0xcc0c, 0xcc0f, 0xcc30, 0xcc33, 0xcc3c, 0xcc3f,
+ 0xccc0, 0xccc3, 0xcccc, 0xcccf, 0xccf0, 0xccf3, 0xccfc, 0xccff,
+ 0xcf00, 0xcf03, 0xcf0c, 0xcf0f, 0xcf30, 0xcf33, 0xcf3c, 0xcf3f,
+ 0xcfc0, 0xcfc3, 0xcfcc, 0xcfcf, 0xcff0, 0xcff3, 0xcffc, 0xcfff,
+ 0xf000, 0xf003, 0xf00c, 0xf00f, 0xf030, 0xf033, 0xf03c, 0xf03f,
+ 0xf0c0, 0xf0c3, 0xf0cc, 0xf0cf, 0xf0f0, 0xf0f3, 0xf0fc, 0xf0ff,
+ 0xf300, 0xf303, 0xf30c, 0xf30f, 0xf330, 0xf333, 0xf33c, 0xf33f,
+ 0xf3c0, 0xf3c3, 0xf3cc, 0xf3cf, 0xf3f0, 0xf3f3, 0xf3fc, 0xf3ff,
+ 0xfc00, 0xfc03, 0xfc0c, 0xfc0f, 0xfc30, 0xfc33, 0xfc3c, 0xfc3f,
+ 0xfcc0, 0xfcc3, 0xfccc, 0xfccf, 0xfcf0, 0xfcf3, 0xfcfc, 0xfcff,
+ 0xff00, 0xff03, 0xff0c, 0xff0f, 0xff30, 0xff33, 0xff3c, 0xff3f,
+ 0xffc0, 0xffc3, 0xffcc, 0xffcf, 0xfff0, 0xfff3, 0xfffc, 0xffff };
+
+extern const TUint32 modelutab[256]=
+ { 0x0000, 0x0005, 0x000a, 0x000f, 0x0050, 0x0055, 0x005a, 0x005f,
+ 0x00a0, 0x00a5, 0x00aa, 0x00af, 0x00f0, 0x00f5, 0x00fa, 0x00ff,
+ 0x0500, 0x0505, 0x050a, 0x050f, 0x0550, 0x0555, 0x055a, 0x055f,
+ 0x05a0, 0x05a5, 0x05aa, 0x05af, 0x05f0, 0x05f5, 0x05fa, 0x05ff,
+ 0x0a00, 0x0a05, 0x0a0a, 0x0a0f, 0x0a50, 0x0a55, 0x0a5a, 0x0a5f,
+ 0x0aa0, 0x0aa5, 0x0aaa, 0x0aaf, 0x0af0, 0x0af5, 0x0afa, 0x0aff,
+ 0x0f00, 0x0f05, 0x0f0a, 0x0f0f, 0x0f50, 0x0f55, 0x0f5a, 0x0f5f,
+ 0x0fa0, 0x0fa5, 0x0faa, 0x0faf, 0x0ff0, 0x0ff5, 0x0ffa, 0x0fff,
+ 0x5000, 0x5005, 0x500a, 0x500f, 0x5050, 0x5055, 0x505a, 0x505f,
+ 0x50a0, 0x50a5, 0x50aa, 0x50af, 0x50f0, 0x50f5, 0x50fa, 0x50ff,
+ 0x5500, 0x5505, 0x550a, 0x550f, 0x5550, 0x5555, 0x555a, 0x555f,
+ 0x55a0, 0x55a5, 0x55aa, 0x55af, 0x55f0, 0x55f5, 0x55fa, 0x55ff,
+ 0x5a00, 0x5a05, 0x5a0a, 0x5a0f, 0x5a50, 0x5a55, 0x5a5a, 0x5a5f,
+ 0x5aa0, 0x5aa5, 0x5aaa, 0x5aaf, 0x5af0, 0x5af5, 0x5afa, 0x5aff,
+ 0x5f00, 0x5f05, 0x5f0a, 0x5f0f, 0x5f50, 0x5f55, 0x5f5a, 0x5f5f,
+ 0x5fa0, 0x5fa5, 0x5faa, 0x5faf, 0x5ff0, 0x5ff5, 0x5ffa, 0x5fff,
+ 0xa000, 0xa005, 0xa00a, 0xa00f, 0xa050, 0xa055, 0xa05a, 0xa05f,
+ 0xa0a0, 0xa0a5, 0xa0aa, 0xa0af, 0xa0f0, 0xa0f5, 0xa0fa, 0xa0ff,
+ 0xa500, 0xa505, 0xa50a, 0xa50f, 0xa550, 0xa555, 0xa55a, 0xa55f,
+ 0xa5a0, 0xa5a5, 0xa5aa, 0xa5af, 0xa5f0, 0xa5f5, 0xa5fa, 0xa5ff,
+ 0xaa00, 0xaa05, 0xaa0a, 0xaa0f, 0xaa50, 0xaa55, 0xaa5a, 0xaa5f,
+ 0xaaa0, 0xaaa5, 0xaaaa, 0xaaaf, 0xaaf0, 0xaaf5, 0xaafa, 0xaaff,
+ 0xaf00, 0xaf05, 0xaf0a, 0xaf0f, 0xaf50, 0xaf55, 0xaf5a, 0xaf5f,
+ 0xafa0, 0xafa5, 0xafaa, 0xafaf, 0xaff0, 0xaff5, 0xaffa, 0xafff,
+ 0xf000, 0xf005, 0xf00a, 0xf00f, 0xf050, 0xf055, 0xf05a, 0xf05f,
+ 0xf0a0, 0xf0a5, 0xf0aa, 0xf0af, 0xf0f0, 0xf0f5, 0xf0fa, 0xf0ff,
+ 0xf500, 0xf505, 0xf50a, 0xf50f, 0xf550, 0xf555, 0xf55a, 0xf55f,
+ 0xf5a0, 0xf5a5, 0xf5aa, 0xf5af, 0xf5f0, 0xf5f5, 0xf5fa, 0xf5ff,
+ 0xfa00, 0xfa05, 0xfa0a, 0xfa0f, 0xfa50, 0xfa55, 0xfa5a, 0xfa5f,
+ 0xfaa0, 0xfaa5, 0xfaaa, 0xfaaf, 0xfaf0, 0xfaf5, 0xfafa, 0xfaff,
+ 0xff00, 0xff05, 0xff0a, 0xff0f, 0xff50, 0xff55, 0xff5a, 0xff5f,
+ 0xffa0, 0xffa5, 0xffaa, 0xffaf, 0xfff0, 0xfff5, 0xfffa, 0xffff };
+
+extern const TUint8 ditherlutab[16][4]=
+ {{ 0x0, 0x0, 0x0, 0x0, },
+ { 0x5, 0x0, 0x0, 0x0, },
+ { 0x5, 0x0, 0x0, 0x5, },
+ { 0x5, 0x0, 0x0, 0x5, },
+ { 0x5, 0x0, 0x5, 0x5, },
+ { 0x5, 0x5, 0x5, 0x5, },
+ { 0xa, 0x5, 0x5, 0x5, },
+ { 0xa, 0x5, 0x5, 0xa, },
+ { 0xa, 0x5, 0x5, 0xa, },
+ { 0xa, 0x5, 0xa, 0xa, },
+ { 0xa, 0xa, 0xa, 0xa, },
+ { 0xf, 0xa, 0xa, 0xa, },
+ { 0xf, 0xa, 0xa, 0xf, },
+ { 0xf, 0xa, 0xa, 0xf, },
+ { 0xf, 0xa, 0xf, 0xf, },
+ { 0xf, 0xf, 0xf, 0xf }};
+
+extern const TUint8 shadowlutab[256]=
+ { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02,
+ 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02,
+ 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02,
+ 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02,
+ 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02,
+ 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a,
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02,
+ 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a,
+ 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x11, 0x12,
+ 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a,
+ 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x21, 0x22,
+ 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a,
+ 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x31, 0x32,
+ 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a,
+ 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x41, 0x42,
+ 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a,
+ 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x51, 0x52,
+ 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a,
+ 0x60, 0x60, 0x60, 0x60, 0x60, 0x60, 0x61, 0x62,
+ 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6a,
+ 0x70, 0x70, 0x70, 0x70, 0x70, 0x70, 0x71, 0x72,
+ 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7a,
+ 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x81, 0x82,
+ 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8a,
+ 0x90, 0x90, 0x90, 0x90, 0x90, 0x90, 0x91, 0x92,
+ 0x93, 0x94, 0x95, 0x96, 0x97, 0x98, 0x99, 0x9a,
+ 0xa0, 0xa0, 0xa0, 0xa0, 0xa0, 0xa0, 0xa1, 0xa2,
+ 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa };
+
+extern const TUint8 color256shadowlutab[256] = {
+ 0, 0, 1, 2, 3, 4,
+ 0, 0, 1, 2, 3, 4,
+ 6, 6, 7, 8, 9, 10,
+ 12, 12, 13, 14, 15, 16,
+ 18, 18, 19, 20, 21, 22,
+ 24, 24, 25, 26, 27, 28,
+
+ 0, 0, 1, 2, 3, 4,
+ 0, 0, 1, 2, 3, 4,
+ 6, 6, 7, 8, 9, 10,
+ 12, 12, 13, 14, 15, 16,
+ 18, 18, 19, 20, 21, 22,
+ 24, 24, 25, 26, 27, 28,
+
+ 36, 36, 37, 38, 39, 40,
+ 36, 36, 37, 38, 39, 40,
+ 42, 42, 43, 44, 45, 46,
+ 48, 48, 49, 50, 51, 52,
+ 54, 54, 55, 56, 57, 58,
+ 60, 60, 61, 62, 63, 64,
+
+ 0, 0, 108, 109, 110,
+ 0, 0, 113, 114, 115,
+ 0, 0, 118, 119, 120,
+ 0, 0, 123, 124, 125,
+
+ 126, 127, 128, 129, 130,
+ 121, 122, 133, 134, 135,
+ 116, 117, 138, 139, 140,
+ 111, 112, 143, 144, 145,
+
+ 72, 72, 73, 74, 75, 76,
+ 72, 72, 73, 74, 75, 76,
+ 78, 78, 79, 80, 81, 82,
+ 84, 84, 85, 86, 87, 88,
+ 90, 90, 91, 92, 93, 94,
+ 96, 96, 97, 98, 99, 100,
+
+ 148, 148, 149, 150, 151, 152,
+ 148, 148, 149, 150, 151, 152,
+ 154, 154, 155, 156, 157, 158,
+ 160, 160, 161, 162, 163, 164,
+ 166, 166, 167, 168, 169, 170,
+ 172, 172, 173, 174, 175, 176,
+
+ 184, 184, 185, 186, 187, 188,
+ 184, 184, 185, 186, 187, 188,
+ 190, 190, 191, 192, 193, 194,
+ 196, 196, 197, 198, 199, 200,
+ 202, 202, 203, 204, 205, 206,
+ 208, 208, 209, 210, 211, 212
+ };
+
+/**
+This lookup table is used for outline and shadow fonts. Four entries of this table represents
+% of Outline, Shadow, Fill and Background colour to be used to get the final colour to be
+displayed on screen.
+
+While doing the blending of four colours it would use the following formula,
+
+blendedXXXColor = (XXXOutlinePenColor * FourColorBlendLookup[index][KOutlineColorIndex] +
+ XXXShadowColor * FourColorBlendLookup[index][KShadowColorIndex] +
+ XXXFillColor * FourColorBlendLookup[index][KFillColorIndex] +
+ backgroundColor.XXX() * FourColorBlendLookup[index][KBackgroundColorIndex]) >> 8;
+where XXX can be Red, Green or Blue
+and index is the 8-bit value which will be provided by the rasterizer to decide which
+entry of lookup table should be used. Right shift by eight will divide the calculated value in % with
+256 to get the actual colour.
+
+This table is provided by Monotype and MUST NOT be changed.
+*/
+extern const TInt FourColorBlendLookup[256][4] = {
+ { 0, 0, 0, 255 },
+ { 0, 0, 17, 238 },
+ { 0, 0, 34, 221 },
+ { 0, 0, 51, 204 },
+ { 0, 0, 68, 187 },
+ { 0, 0, 85, 170 },
+ { 0, 0, 102, 153 },
+ { 0, 0, 119, 136 },
+ { 0, 0, 136, 119 },
+ { 0, 0, 153, 102 },
+ { 0, 0, 170, 85 },
+ { 0, 0, 187, 68 },
+ { 0, 0, 204, 51 },
+ { 0, 0, 221, 34 },
+ { 0, 0, 238, 17 },
+ { 0, 0, 255, 0 },
+ { 0, 17, 0, 238 },
+ { 0, 34, 0, 221 },
+ { 0, 51, 0, 204 },
+ { 0, 68, 0, 187 },
+ { 0, 85, 0, 170 },
+ { 0, 102, 0, 153 },
+ { 0, 119, 0, 136 },
+ { 0, 136, 0, 119 },
+ { 0, 153, 0, 102 },
+ { 0, 170, 0, 85 },
+ { 0, 187, 0, 68 },
+ { 0, 204, 0, 51 },
+ { 0, 221, 0, 34 },
+ { 0, 238, 0, 17 },
+ { 0, 255, 0, 0 },
+ { 17, 0, 0, 238 },
+ { 34, 0, 0, 221 },
+ { 51, 0, 0, 204 },
+ { 68, 0, 0, 187 },
+ { 85, 0, 0, 170 },
+ { 102, 0, 0, 153 },
+ { 119, 0, 0, 136 },
+ { 136, 0, 0, 119 },
+ { 153, 0, 0, 102 },
+ { 170, 0, 0, 85 },
+ { 187, 0, 0, 68 },
+ { 204, 0, 0, 51 },
+ { 221, 0, 0, 34 },
+ { 238, 0, 0, 17 },
+ { 255, 0, 0, 0 },
+ { 0, 17, 238, 0 },
+ { 0, 34, 221, 0 },
+ { 0, 51, 204, 0 },
+ { 0, 68, 187, 0 },
+ { 0, 85, 170, 0 },
+ { 0, 102, 153, 0 },
+ { 0, 119, 136, 0 },
+ { 0, 136, 119, 0 },
+ { 0, 153, 102, 0 },
+ { 0, 170, 85 ,0 },
+ { 0, 187, 68 ,0 },
+ { 0, 204, 51, 0 },
+ { 0, 221, 34, 0 },
+ { 0, 238, 17, 0 },
+ { 238, 17, 0, 0 },
+ { 221, 34, 0, 0 },
+ { 204, 51, 0, 0 },
+ { 187, 68, 0, 0 },
+ { 170, 85, 0, 0 },
+ { 153, 102, 0, 0 },
+ { 136, 119, 0, 0 },
+ { 119, 136, 0, 0 },
+ { 102, 153, 0, 0 },
+ { 85, 170, 0, 0 },
+ { 68, 187, 0, 0 },
+ { 51, 204, 0, 0 },
+ { 34, 221, 0, 0 },
+ { 17, 238, 0, 0 },
+ { 238, 0, 17, 0 },
+ { 221, 0, 34, 0 },
+ { 204, 0, 51, 0 },
+ { 187, 0, 68, 0 },
+ { 170, 0, 85, 0 },
+ { 153, 0, 102, 0 },
+ { 136, 0, 119, 0 },
+ { 119, 0, 136, 0 },
+ { 102, 0, 153, 0 },
+ { 85, 0, 170, 0 } ,
+ { 68, 0, 187, 0 },
+ { 51, 0, 204, 0 },
+ { 34, 0, 221, 0 },
+ { 17, 0, 238, 0 },
+ { 210, 23, 0, 22 },
+ { 179, 60, 0, 16 },
+ { 145, 94, 0, 16 },
+ { 119, 119, 0, 17 },
+ { 94, 145, 0, 16 },
+ { 60, 179, 0, 16 },
+ { 23, 210, 0, 22 },
+ { 176, 40, 0, 39 },
+ { 142, 74, 0, 39 },
+ { 113, 96, 0, 46 },
+ { 91, 125, 0, 39 },
+ { 62, 147, 0, 46 },
+ { 40, 176, 0, 39 },
+ { 179, 17, 0, 59 },
+ { 147, 45, 0, 63 },
+ { 17, 179, 0, 59 },
+ { 145, 17, 0, 93 },
+ { 125, 40, 0, 90 },
+ { 108, 74, 0, 73 },
+ { 74, 108, 0, 73 },
+ { 85, 85, 0, 85 },
+ { 40, 142, 0, 73 },
+ { 119, 17, 0, 119 },
+ { 96, 45, 0, 114 },
+ { 74, 74, 0, 107 },
+ { 45, 113, 0, 97 },
+ { 17, 145, 0, 93 },
+ { 94, 17, 0, 144 },
+ { 74, 40, 0, 141 },
+ { 45, 62, 0, 148 },
+ { 40, 91, 0, 124 },
+ { 17, 119, 0, 119 },
+ { 17, 94, 0, 144 },
+ { 60, 17, 0, 178 },
+ { 40, 40, 0, 175 },
+ { 17, 60, 0, 178 },
+ { 23, 23, 0, 209 },
+ { 0, 210, 23, 22 },
+ { 0, 179, 60, 16 },
+ { 0, 145, 94, 16 },
+ { 0, 119, 119, 17 },
+ { 0, 94 ,145, 16 },
+ { 0, 60 ,179, 16 },
+ { 0, 23, 210, 22 },
+ { 0, 176, 40, 39 },
+ { 0, 142, 74, 39 },
+ { 0, 113, 96, 46 },
+ { 0, 91, 125, 39 },
+ { 0, 62, 147, 46 },
+ { 0, 40, 176, 39 },
+ { 0, 179, 17, 59 },
+ { 0, 147, 45, 63 },
+ { 0, 17, 179, 59 },
+ { 0, 145, 17, 93 },
+ { 0, 125, 40, 90 },
+ { 0, 108, 74, 73 },
+ { 0, 74, 108, 73 },
+ { 0, 85, 85, 85 },
+ { 0, 40, 142, 73 },
+ { 0, 119, 17, 119 },
+ { 0, 96, 45, 114 },
+ { 0, 74, 74, 107 },
+ { 0, 45, 113, 97 },
+ { 0, 17, 145, 93 },
+ { 0, 94, 17, 144 },
+ { 0, 74, 40, 141 },
+ { 0, 45, 62, 148 },
+ { 0, 40, 91, 124 },
+ { 0, 17, 119, 119 },
+ { 0, 17, 94, 144 },
+ { 0, 60, 17, 178 },
+ { 0, 40, 40, 175 },
+ { 0, 17, 60, 178 },
+ { 0, 23, 23, 209 },
+ { 23, 0, 210, 22 },
+ { 60, 0, 179, 16 },
+ { 94, 0, 145, 16 },
+ { 119, 0, 119, 17 },
+ { 145, 0, 94, 16 },
+ { 179, 0, 60, 16 },
+ { 210, 0, 23, 22 },
+ { 40, 0, 176, 39 },
+ { 74, 0, 142, 39 },
+ { 96, 0, 113, 46 },
+ { 125, 0, 91, 39 },
+ { 147, 0, 62, 46 },
+ { 176, 0, 40, 39 },
+ { 17, 0, 179, 59 },
+ { 45, 0, 147, 63 },
+ { 179, 0, 17, 59 },
+ { 17, 0, 145, 93 },
+ { 40, 0, 125, 90 },
+ { 74, 0, 108, 73 },
+ { 108, 0, 74, 73 },
+ { 85, 0, 85, 85 },
+ { 142, 0, 40, 73 },
+ { 17, 0, 119, 119 },
+ { 45, 0, 96, 114 },
+ { 74, 0, 74, 107 },
+ { 113, 0, 45, 97 },
+ { 145, 0, 17, 93 },
+ { 17, 0, 94, 144 },
+ { 40, 0, 74, 141 },
+ { 62, 0, 45, 148 },
+ { 91, 0, 40, 124 },
+ { 119, 0, 17, 119 },
+ { 94, 0, 17, 144 },
+ { 17, 0, 60, 178 },
+ { 40, 0, 40, 175 },
+ { 60, 0, 17, 178 },
+ { 23, 0, 23, 209 },
+ { 209, 23, 23, 0 },
+ { 178, 17, 60, 0 },
+ { 144, 17, 94, 0 },
+ { 119, 17, 119, 0 },
+ { 93, 17, 145, 0 },
+ { 59, 17, 179, 0 },
+ { 22, 23, 210, 0 },
+ { 175, 40, 40, 0 },
+ { 141, 40, 74, 0 },
+ { 114, 45, 96, 0 },
+ { 90, 40, 125, 0 },
+ { 63, 45, 147, 0 },
+ { 39, 40, 176, 0 },
+ { 178, 60, 17, 0 },
+ { 148, 62, 45, 0 },
+ { 16, 60, 179, 0 },
+ { 144, 94, 17, 0 },
+ { 124, 91, 40, 0 },
+ { 107, 74, 74, 0 },
+ { 73, 74, 108, 0 },
+ { 85, 85, 85, 0 },
+ { 39, 74, 142, 0 },
+ { 119, 119, 17, 0 },
+ { 97, 113, 45, 0 },
+ { 73, 108, 74, 0 },
+ { 46, 96, 113, 0 },
+ { 16, 94, 145, 0 },
+ { 93, 145, 17, 0 },
+ { 73, 142, 40, 0 },
+ { 46, 147, 62, 0 },
+ { 39, 125, 91, 0 },
+ { 17, 119, 119, 0 },
+ { 16, 145, 94, 0 },
+ { 59, 179, 17, 0 },
+ { 39, 176, 40, 0 },
+ { 16, 179, 60, 0 },
+ { 22, 210, 23, 0 },
+ { 32, 32 ,32, 159 },
+ { 32, 32 ,74, 117 },
+ { 32, 32 ,116, 75 },
+ { 32, 32 ,158, 33 },
+ { 74, 32, 32, 117 },
+ { 74, 32, 74, 75 },
+ { 74, 32, 116, 33 },
+ { 116, 32, 32, 75 },
+ { 116, 32, 74, 33 },
+ { 158, 32, 32, 33 },
+ { 32, 74, 32, 117 },
+ { 32, 74, 74, 75 },
+ { 32, 74, 116, 33 },
+ { 74, 74, 32, 75 },
+ { 74, 74, 74, 33 },
+ { 116, 74, 32, 33 },
+ { 32, 116, 32, 75 },
+ { 32, 116, 74, 33 },
+ { 74, 116, 32, 33 },
+ { 32, 158, 32, 33 },
+ };