shamelessness

This commit is contained in:
dborca
2003-07-10 12:16:56 +00:00
parent ed1f80f916
commit 4b715ac8be
4 changed files with 801 additions and 8 deletions

View File

@@ -0,0 +1,495 @@
static unsigned long fxPlugWidth = 180;
static unsigned long fxPlugHeight = 90;
static unsigned long fxPlugStride = 360;
#ifdef GLIDE3
static GrLfbWriteMode_t fxPlugFormat = GR_LFBWRITEMODE_565;
#endif
static unsigned char tga_16rle[] = {
0xff, 0x00, 0x00, 0xb3, 0x00, 0x00, 0xff, 0x00, 0x00, 0xb3, 0x00, 0x00,
0xff, 0x00, 0x00, 0xb3, 0x00, 0x00, 0xff, 0x00, 0x00, 0xb3, 0x00, 0x00,
0xff, 0x00, 0x00, 0xb3, 0x00, 0x00, 0xff, 0x00, 0x00, 0xb3, 0x00, 0x00,
0xe1, 0x00, 0x00, 0x04, 0x20, 0x08, 0x40, 0x10, 0x80, 0x1c, 0xa0, 0x20,
0xa1, 0x28, 0x81, 0xc0, 0x2c, 0x05, 0xe1, 0x2c, 0xc0, 0x2c, 0xa0, 0x28,
0xa0, 0x20, 0x60, 0x14, 0x20, 0x0c, 0xc4, 0x00, 0x00, 0xdb, 0x00, 0x00,
0x0b, 0x00, 0x04, 0x40, 0x10, 0xa0, 0x24, 0x01, 0x35, 0x41, 0x49, 0xa1,
0x5d, 0xe1, 0x69, 0xe2, 0x6d, 0x02, 0x6e, 0x01, 0x72, 0x02, 0x72, 0x22,
0x76, 0x81, 0x02, 0x76, 0x00, 0x22, 0x72, 0x81, 0x02, 0x72, 0x06, 0xe2,
0x6d, 0xe1, 0x6d, 0xc1, 0x5d, 0x41, 0x45, 0xe1, 0x30, 0x60, 0x14, 0x00,
0x04, 0xbf, 0x00, 0x00, 0xd8, 0x00, 0x00, 0x14, 0x40, 0x10, 0xc0, 0x2c,
0x41, 0x45, 0xa1, 0x5d, 0x02, 0x6e, 0x01, 0x76, 0x22, 0x7a, 0x21, 0x76,
0x02, 0x76, 0x22, 0x72, 0x02, 0x76, 0x01, 0x72, 0x02, 0x72, 0x01, 0x72,
0x02, 0x72, 0x01, 0x6e, 0x02, 0x6e, 0xe1, 0x71, 0x02, 0x6e, 0xe1, 0x71,
0x02, 0x6e, 0x81, 0x02, 0x72, 0x05, 0x02, 0x76, 0x01, 0x76, 0x02, 0x6e,
0xa1, 0x5d, 0xe0, 0x34, 0x40, 0x10, 0xbd, 0x00, 0x00, 0xd5, 0x00, 0x00,
0x21, 0x40, 0x14, 0x01, 0x39, 0xa1, 0x59, 0x02, 0x72, 0x22, 0x7a, 0x42,
0x7a, 0x02, 0x76, 0x01, 0x6e, 0xe2, 0x6d, 0xe2, 0x65, 0xa1, 0x61, 0xa1,
0x59, 0xa1, 0x5d, 0xa2, 0x59, 0xa1, 0x5d, 0xc2, 0x61, 0xc1, 0x69, 0xe2,
0x69, 0x02, 0x72, 0x02, 0x76, 0x02, 0x72, 0x01, 0x72, 0x02, 0x6e, 0x01,
0x6e, 0xe2, 0x6d, 0x01, 0x6e, 0x02, 0x6e, 0xe2, 0x71, 0x01, 0x6e, 0x02,
0x72, 0x22, 0x76, 0xe2, 0x6d, 0x41, 0x45, 0x40, 0x0c, 0xbb, 0x00, 0x00,
0xd2, 0x00, 0x00, 0x0f, 0x40, 0x10, 0x01, 0x39, 0xa1, 0x5d, 0x01, 0x72,
0x22, 0x7a, 0x01, 0x6e, 0xa1, 0x5d, 0x41, 0x45, 0xe1, 0x34, 0xa0, 0x24,
0x61, 0x18, 0x40, 0x0c, 0x20, 0x08, 0x00, 0x04, 0x00, 0x00, 0x00, 0x04,
0x81, 0x00, 0x00, 0x14, 0x20, 0x04, 0x20, 0x08, 0x60, 0x14, 0x80, 0x20,
0xe1, 0x30, 0x61, 0x49, 0xc2, 0x65, 0x01, 0x72, 0x02, 0x76, 0x02, 0x72,
0xe2, 0x6d, 0x01, 0x6e, 0xe2, 0x6d, 0x02, 0x6e, 0xe1, 0x71, 0x02, 0x6e,
0x01, 0x72, 0x22, 0x76, 0xe1, 0x69, 0xe1, 0x34, 0x00, 0x04, 0xb9, 0x00,
0x00, 0xcf, 0x00, 0x00, 0x08, 0x20, 0x08, 0xc0, 0x2c, 0x81, 0x55, 0x02,
0x72, 0x01, 0x72, 0xa2, 0x59, 0x01, 0x3d, 0xa0, 0x20, 0x41, 0x0c, 0x91,
0x00, 0x00, 0x0f, 0x20, 0x04, 0x81, 0x20, 0x21, 0x41, 0xe1, 0x65, 0x02,
0x76, 0x02, 0x72, 0x01, 0x6e, 0xe2, 0x6d, 0x01, 0x6e, 0xe2, 0x6d, 0x01,
0x6e, 0xe2, 0x6d, 0x02, 0x72, 0x22, 0x76, 0xa1, 0x59, 0x60, 0x14, 0xb8,
0x00, 0x00, 0xcd, 0x00, 0x00, 0x06, 0x60, 0x14, 0x21, 0x45, 0xe1, 0x65,
0x02, 0x6e, 0x61, 0x51, 0xc1, 0x2c, 0x40, 0x10, 0x98, 0x00, 0x00, 0x0d,
0x40, 0x0c, 0x01, 0x39, 0xc1, 0x65, 0x22, 0x76, 0x02, 0x72, 0xe1, 0x6d,
0x02, 0x6e, 0xe2, 0x6d, 0x01, 0x6e, 0xe2, 0x6d, 0x01, 0x72, 0x02, 0x76,
0xe1, 0x69, 0xa1, 0x20, 0xb7, 0x00, 0x00, 0xcb, 0x00, 0x00, 0x05, 0xa0,
0x20, 0x61, 0x55, 0xe1, 0x69, 0x81, 0x55, 0xc1, 0x2c, 0x40, 0x0c, 0x9d,
0x00, 0x00, 0x01, 0x40, 0x0c, 0x41, 0x45, 0x81, 0x02, 0x72, 0x08, 0x01,
0x72, 0xe2, 0x6d, 0x02, 0x72, 0x01, 0x6e, 0xe2, 0x6d, 0x02, 0x6e, 0x01,
0x72, 0x02, 0x72, 0xa0, 0x24, 0xb6, 0x00, 0x00, 0xc9, 0x00, 0x00, 0x04,
0xa0, 0x24, 0x81, 0x55, 0xc2, 0x61, 0x41, 0x45, 0x61, 0x18, 0xa2, 0x00,
0x00, 0x0b, 0xc1, 0x2c, 0xe1, 0x6d, 0x02, 0x72, 0x01, 0x6e, 0xe2, 0x6d,
0x02, 0x6e, 0xe1, 0x6d, 0x02, 0x72, 0xe2, 0x6d, 0x01, 0x72, 0x02, 0x6e,
0x80, 0x1c, 0xb5, 0x00, 0x00, 0xc7, 0x00, 0x00, 0x04, 0xc0, 0x28, 0x81,
0x55, 0x81, 0x59, 0xe1, 0x30, 0x20, 0x04, 0xa5, 0x00, 0x00, 0x0b, 0x81,
0x1c, 0xe1, 0x65, 0x02, 0x76, 0x01, 0x6e, 0xe2, 0x71, 0x02, 0x6e, 0xe1,
0x6d, 0x02, 0x6e, 0xe2, 0x6d, 0x01, 0x76, 0xc2, 0x65, 0x40, 0x10, 0xb4,
0x00, 0x00, 0xc5, 0x00, 0x00, 0x00, 0xa0, 0x24, 0x81, 0x61, 0x51, 0x00,
0xa1, 0x20, 0xa9, 0x00, 0x00, 0x06, 0x60, 0x18, 0xe2, 0x65, 0x02, 0x72,
0x01, 0x6e, 0xe2, 0x6d, 0x02, 0x6e, 0x01, 0x72, 0x81, 0x02, 0x6e, 0x02,
0x22, 0x76, 0x81, 0x59, 0x20, 0x04, 0xb3, 0x00, 0x00, 0xc3, 0x00, 0x00,
0x03, 0x80, 0x1c, 0x41, 0x4d, 0x61, 0x4d, 0x81, 0x1c, 0xac, 0x00, 0x00,
0x03, 0x80, 0x1c, 0xe2, 0x6d, 0x02, 0x72, 0x01, 0x6e, 0x81, 0xe2, 0x6d,
0x04, 0x01, 0x6e, 0xe2, 0x71, 0x01, 0x6e, 0x02, 0x76, 0x01, 0x35, 0xb3,
0x00, 0x00, 0xc1, 0x00, 0x00, 0x03, 0x40, 0x10, 0x41, 0x45, 0x61, 0x4d,
0x81, 0x1c, 0xaf, 0x00, 0x00, 0x0a, 0xc1, 0x2c, 0x01, 0x76, 0x02, 0x6e,
0x01, 0x72, 0xe2, 0x6d, 0x01, 0x6e, 0xe2, 0x6d, 0x02, 0x6e, 0x01, 0x72,
0xe2, 0x6d, 0x40, 0x0c, 0xb2, 0x00, 0x00, 0xbf, 0x00, 0x00, 0x03, 0x00,
0x04, 0xe0, 0x34, 0x41, 0x49, 0xa1, 0x24, 0xb2, 0x00, 0x00, 0x09, 0x81,
0x51, 0x02, 0x76, 0x02, 0x6e, 0xe2, 0x6d, 0x02, 0x72, 0xe1, 0x6d, 0x02,
0x6e, 0xe2, 0x6d, 0x21, 0x76, 0x21, 0x41, 0xb2, 0x00, 0x00, 0xbe, 0x00,
0x00, 0x03, 0xa0, 0x20, 0x41, 0x45, 0xc1, 0x2c, 0x20, 0x04, 0xb3, 0x00,
0x00, 0x0a, 0x60, 0x14, 0xe2, 0x6d, 0x01, 0x72, 0x02, 0x6e, 0xe1, 0x6d,
0x02, 0x6e, 0xe1, 0x71, 0x02, 0x6e, 0x02, 0x72, 0xc1, 0x69, 0x40, 0x0c,
0xb1, 0x00, 0x00, 0xbc, 0x00, 0x00, 0x03, 0x40, 0x10, 0x01, 0x3d, 0xe1,
0x34, 0x40, 0x0c, 0xb6, 0x00, 0x00, 0x09, 0x41, 0x45, 0x02, 0x76, 0x01,
0x6e, 0xe2, 0x6d, 0x02, 0x72, 0x02, 0x6e, 0xe1, 0x6d, 0x02, 0x6e, 0x02,
0x76, 0xe1, 0x2c, 0xb1, 0x00, 0x00, 0xbb, 0x00, 0x00, 0x02, 0xc0, 0x28,
0x01, 0x3d, 0x80, 0x14, 0xb8, 0x00, 0x00, 0x09, 0x60, 0x14, 0x02, 0x6e,
0x02, 0x72, 0xe1, 0x6d, 0x02, 0x6e, 0xe1, 0x6d, 0x02, 0x6e, 0xe1, 0x6d,
0x22, 0x76, 0x81, 0x55, 0xb1, 0x00, 0x00, 0xb9, 0x00, 0x00, 0x02, 0x40,
0x10, 0x01, 0x35, 0xc0, 0x2c, 0xbb, 0x00, 0x00, 0x09, 0x61, 0x4d, 0x02,
0x76, 0x02, 0x6e, 0xe1, 0x71, 0x02, 0x6e, 0xe2, 0x71, 0x02, 0x6e, 0xe1,
0x71, 0xe2, 0x6d, 0x40, 0x10, 0xb0, 0x00, 0x00, 0xb8, 0x00, 0x00, 0x02,
0xa0, 0x24, 0xe1, 0x34, 0x40, 0x10, 0xbc, 0x00, 0x00, 0x09, 0xc1, 0x28,
0x01, 0x76, 0x02, 0x6e, 0xe2, 0x6d, 0x01, 0x6e, 0x02, 0x6e, 0xe1, 0x6d,
0x02, 0x6e, 0x22, 0x72, 0xc0, 0x28, 0xb0, 0x00, 0x00, 0xb6, 0x00, 0x00,
0x02, 0x20, 0x0c, 0xe1, 0x30, 0xa0, 0x24, 0xbe, 0x00, 0x00, 0x09, 0x40,
0x10, 0xe2, 0x69, 0x01, 0x72, 0x02, 0x6e, 0xe1, 0x6d, 0x02, 0x72, 0xe2,
0x6d, 0x01, 0x6e, 0x02, 0x76, 0x21, 0x41, 0xb0, 0x00, 0x00, 0xb5, 0x00,
0x00, 0x02, 0x80, 0x1c, 0xe1, 0x30, 0x40, 0x10, 0xc0, 0x00, 0x00, 0x05,
0x81, 0x59, 0x02, 0x72, 0x02, 0x6e, 0xe2, 0x6d, 0x01, 0x6e, 0xe2, 0x6d,
0x81, 0x02, 0x72, 0x00, 0x81, 0x55, 0xb0, 0x00, 0x00, 0xb3, 0x00, 0x00,
0x02, 0x00, 0x04, 0xc0, 0x28, 0xa1, 0x24, 0x94, 0x00, 0x00, 0x06, 0x21,
0x04, 0x00, 0x00, 0x21, 0x04, 0x00, 0x00, 0x21, 0x04, 0x00, 0x00, 0x21,
0x04, 0x8c, 0x00, 0x00, 0x02, 0x63, 0x0c, 0x29, 0x25, 0xad, 0x35, 0x81,
0x10, 0x42, 0x04, 0xce, 0x39, 0x8c, 0x31, 0x29, 0x25, 0xc6, 0x14, 0x21,
0x04, 0x8f, 0x00, 0x00, 0x09, 0x21, 0x3d, 0x22, 0x76, 0xe1, 0x71, 0x02,
0x6e, 0xe2, 0x71, 0x01, 0x6e, 0xe2, 0x6d, 0x01, 0x72, 0xe2, 0x69, 0x20,
0x08, 0xaf, 0x00, 0x00, 0xb2, 0x00, 0x00, 0x02, 0x40, 0x0c, 0xc0, 0x2c,
0x61, 0x14, 0x94, 0x00, 0x00, 0x00, 0x4a, 0x29, 0x81, 0x39, 0x67, 0x00,
0x18, 0x63, 0x81, 0x39, 0x67, 0x03, 0x19, 0x63, 0x38, 0x67, 0x39, 0x67,
0x4a, 0x29, 0x88, 0x00, 0x00, 0x02, 0x29, 0x25, 0xb5, 0x56, 0xbd, 0x77,
0x87, 0xff, 0x7f, 0x00, 0x08, 0x21, 0x8f, 0x00, 0x00, 0x09, 0xc1, 0x2c,
0x22, 0x76, 0xe2, 0x6d, 0x01, 0x6e, 0x02, 0x6e, 0xe1, 0x6d, 0x02, 0x6e,
0x02, 0x72, 0xe1, 0x69, 0x61, 0x14, 0xaf, 0x00, 0x00, 0xb1, 0x00, 0x00,
0x02, 0x60, 0x18, 0xc1, 0x28, 0x20, 0x08, 0x95, 0x00, 0x00, 0x00, 0xce,
0x39, 0x87, 0xff, 0x7f, 0x00, 0xae, 0x35, 0x87, 0x00, 0x00, 0x00, 0x31,
0x46, 0x8a, 0xff, 0x7f, 0x00, 0x29, 0x25, 0x8f, 0x00, 0x00, 0x09, 0xa0,
0x20, 0x02, 0x72, 0x01, 0x6e, 0xe2, 0x71, 0x02, 0x6e, 0xe2, 0x71, 0x01,
0x6e, 0xe2, 0x71, 0x01, 0x6e, 0x81, 0x20, 0xaf, 0x00, 0x00, 0xb0, 0x00,
0x00, 0x01, 0xa0, 0x20, 0x80, 0x20, 0x97, 0x00, 0x00, 0x00, 0xad, 0x35,
0x87, 0xff, 0x7f, 0x00, 0xad, 0x35, 0x86, 0x00, 0x00, 0x00, 0xef, 0x3d,
0x8b, 0xff, 0x7f, 0x00, 0x29, 0x25, 0x8f, 0x00, 0x00, 0x05, 0x60, 0x18,
0xe2, 0x6d, 0x02, 0x72, 0xe1, 0x6d, 0x02, 0x6e, 0xe1, 0x6d, 0x81, 0x02,
0x6e, 0x01, 0x02, 0x72, 0xc0, 0x28, 0xaf, 0x00, 0x00, 0xae, 0x00, 0x00,
0x02, 0x20, 0x08, 0xa0, 0x24, 0x61, 0x14, 0x98, 0x00, 0x00, 0x00, 0xad,
0x35, 0x87, 0xff, 0x7f, 0x00, 0xad, 0x35, 0x85, 0x00, 0x00, 0x01, 0xa5,
0x14, 0xde, 0x7b, 0x8b, 0xff, 0x7f, 0x00, 0x08, 0x21, 0x8f, 0x00, 0x00,
0x09, 0x40, 0x10, 0x02, 0x6a, 0x01, 0x72, 0xe2, 0x6d, 0x01, 0x6e, 0x02,
0x6e, 0xe1, 0x71, 0x02, 0x6e, 0x01, 0x76, 0xc1, 0x2c, 0xaf, 0x00, 0x00,
0xad, 0x00, 0x00, 0x02, 0x20, 0x0c, 0xa0, 0x24, 0x40, 0x0c, 0x99, 0x00,
0x00, 0x00, 0xad, 0x35, 0x87, 0xff, 0x7f, 0x00, 0xad, 0x35, 0x85, 0x00,
0x00, 0x00, 0x31, 0x46, 0x8c, 0xff, 0x7f, 0x00, 0x29, 0x25, 0x8f, 0x00,
0x00, 0x09, 0x40, 0x08, 0xe2, 0x69, 0x02, 0x72, 0xe1, 0x6d, 0x02, 0x6e,
0xe2, 0x6d, 0x02, 0x6e, 0xe1, 0x6d, 0x22, 0x76, 0xe1, 0x30, 0xaf, 0x00,
0x00, 0xac, 0x00, 0x00, 0x02, 0x40, 0x10, 0xa0, 0x24, 0x21, 0x08, 0x9a,
0x00, 0x00, 0x00, 0xad, 0x35, 0x87, 0xff, 0x7f, 0x00, 0xad, 0x31, 0x85,
0x00, 0x00, 0x00, 0x39, 0x67, 0x8c, 0xff, 0x7f, 0x00, 0x29, 0x25, 0x8f,
0x00, 0x00, 0x09, 0x20, 0x08, 0xe1, 0x69, 0x02, 0x72, 0xe2, 0x6d, 0x01,
0x72, 0xe2, 0x6d, 0x01, 0x72, 0xe2, 0x6d, 0x22, 0x76, 0xc1, 0x30, 0xaf,
0x00, 0x00, 0xab, 0x00, 0x00, 0x01, 0x60, 0x18, 0x80, 0x1c, 0x9c, 0x00,
0x00, 0x00, 0xad, 0x35, 0x87, 0xff, 0x7f, 0x00, 0xad, 0x35, 0x84, 0x00,
0x00, 0x01, 0x41, 0x08, 0xbd, 0x77, 0x89, 0xff, 0x7f, 0x03, 0xbd, 0x77,
0x5a, 0x6b, 0x18, 0x63, 0xe7, 0x1c, 0x8f, 0x00, 0x00, 0x05, 0x20, 0x08,
0xe2, 0x69, 0x01, 0x72, 0x02, 0x6e, 0xe2, 0x6d, 0x01, 0x6e, 0x81, 0x02,
0x6e, 0x01, 0x01, 0x76, 0xc1, 0x2c, 0xaf, 0x00, 0x00, 0xaa, 0x00, 0x00,
0x01, 0x80, 0x1c, 0x60, 0x18, 0x9d, 0x00, 0x00, 0x00, 0xad, 0x35, 0x87,
0xff, 0x7f, 0x00, 0xad, 0x35, 0x84, 0x00, 0x00, 0x01, 0x63, 0x0c, 0xde,
0x7b, 0x87, 0xff, 0x7f, 0x02, 0x9c, 0x73, 0x8c, 0x31, 0x42, 0x08, 0x92,
0x00, 0x00, 0x06, 0x40, 0x0c, 0xe2, 0x69, 0x02, 0x72, 0xe1, 0x6d, 0x02,
0x6e, 0xe2, 0x71, 0xe1, 0x6d, 0x81, 0x02, 0x72, 0x00, 0xc0, 0x28, 0xaf,
0x00, 0x00, 0xa9, 0x00, 0x00, 0x01, 0x80, 0x20, 0x60, 0x10, 0x9e, 0x00,
0x00, 0x00, 0xad, 0x35, 0x87, 0xff, 0x7f, 0x00, 0xad, 0x35, 0x84, 0x00,
0x00, 0x01, 0x84, 0x10, 0xde, 0x7b, 0x87, 0xff, 0x7f, 0x00, 0x08, 0x21,
0x94, 0x00, 0x00, 0x04, 0x40, 0x10, 0xe2, 0x6d, 0x01, 0x6e, 0x02, 0x72,
0xe1, 0x6d, 0x81, 0x02, 0x6e, 0x02, 0xe1, 0x6d, 0x02, 0x72, 0xa0, 0x20,
0xaf, 0x00, 0x00, 0xa7, 0x00, 0x00, 0x02, 0x00, 0x04, 0xa0, 0x20, 0x40,
0x0c, 0x9f, 0x00, 0x00, 0x00, 0xad, 0x35, 0x87, 0xff, 0x7f, 0x00, 0xad,
0x35, 0x84, 0x00, 0x00, 0x01, 0x63, 0x0c, 0xde, 0x7b, 0x86, 0xff, 0x7f,
0x00, 0x39, 0x67, 0x95, 0x00, 0x00, 0x09, 0x60, 0x14, 0x02, 0x6e, 0x02,
0x72, 0xe2, 0x6d, 0x02, 0x6e, 0xe1, 0x6d, 0x02, 0x72, 0x02, 0x6e, 0xe1,
0x6d, 0x81, 0x18, 0xaf, 0x00, 0x00, 0xa6, 0x00, 0x00, 0x02, 0x20, 0x08,
0x80, 0x1c, 0x20, 0x0c, 0xa0, 0x00, 0x00, 0x00, 0xad, 0x35, 0x87, 0xff,
0x7f, 0x00, 0xad, 0x35, 0x84, 0x00, 0x00, 0x01, 0x84, 0x10, 0xde, 0x7b,
0x86, 0xff, 0x7f, 0x00, 0xd6, 0x5a, 0x95, 0x00, 0x00, 0x09, 0xa1, 0x20,
0xe1, 0x6d, 0x02, 0x72, 0xe1, 0x6d, 0x02, 0x6e, 0xe2, 0x6d, 0x01, 0x6e,
0x02, 0x72, 0xe2, 0x69, 0x40, 0x0c, 0xaf, 0x00, 0x00, 0xa5, 0x00, 0x00,
0x02, 0x00, 0x04, 0x80, 0x1c, 0x20, 0x08, 0xa1, 0x00, 0x00, 0x00, 0xad,
0x35, 0x87, 0xff, 0x7f, 0x00, 0xad, 0x35, 0x84, 0x00, 0x00, 0x01, 0x63,
0x0c, 0xde, 0x7b, 0x86, 0xff, 0x7f, 0x00, 0xf7, 0x5e, 0x95, 0x00, 0x00,
0x09, 0xc1, 0x28, 0x02, 0x72, 0x01, 0x6e, 0x02, 0x6e, 0xe1, 0x71, 0x02,
0x6e, 0xe2, 0x6d, 0x01, 0x72, 0xc1, 0x61, 0x00, 0x04, 0xaf, 0x00, 0x00,
0xca, 0x00, 0x00, 0x00, 0xad, 0x35, 0x87, 0xff, 0x7f, 0x00, 0xad, 0x35,
0x84, 0x00, 0x00, 0x01, 0x84, 0x10, 0xde, 0x7b, 0x86, 0xff, 0x7f, 0x00,
0xd6, 0x5a, 0x95, 0x00, 0x00, 0x05, 0x01, 0x35, 0x02, 0x76, 0x02, 0x72,
0xe1, 0x6d, 0x02, 0x6e, 0xe1, 0x6d, 0x81, 0x02, 0x72, 0x00, 0x81, 0x51,
0xb0, 0x00, 0x00, 0xca, 0x00, 0x00, 0x00, 0xad, 0x35, 0x87, 0xff, 0x7f,
0x00, 0xad, 0x35, 0x84, 0x00, 0x00, 0x01, 0x63, 0x0c, 0xde, 0x7b, 0x86,
0xff, 0x7f, 0x00, 0xd6, 0x5a, 0x95, 0x00, 0x00, 0x08, 0x41, 0x45, 0x22,
0x76, 0xe1, 0x6d, 0x02, 0x6e, 0xe2, 0x71, 0x02, 0x6e, 0xe1, 0x6d, 0x22,
0x76, 0x21, 0x41, 0xb0, 0x00, 0x00, 0xca, 0x00, 0x00, 0x00, 0xad, 0x35,
0x87, 0xff, 0x7f, 0x00, 0xad, 0x35, 0x84, 0x00, 0x00, 0x01, 0x84, 0x10,
0xde, 0x7b, 0x86, 0xff, 0x7f, 0x00, 0xf7, 0x5e, 0x95, 0x00, 0x00, 0x08,
0xa1, 0x59, 0x02, 0x72, 0xe2, 0x6d, 0x01, 0x6e, 0x02, 0x6e, 0xe1, 0x6d,
0x02, 0x72, 0x02, 0x76, 0xc0, 0x2c, 0xb0, 0x00, 0x00, 0xaa, 0x00, 0x00,
0x02, 0x21, 0x04, 0xe7, 0x18, 0x6b, 0x2d, 0x81, 0xad, 0x35, 0x02, 0x6b,
0x2d, 0xc6, 0x18, 0x42, 0x08, 0x8f, 0x00, 0x00, 0x05, 0xa5, 0x14, 0x4a,
0x29, 0xad, 0x35, 0x8c, 0x31, 0x08, 0x21, 0x21, 0x04, 0x81, 0x00, 0x00,
0x00, 0xad, 0x35, 0x87, 0xff, 0x7f, 0x00, 0xad, 0x35, 0x84, 0x00, 0x00,
0x01, 0x84, 0x10, 0xde, 0x7b, 0x86, 0xff, 0x7f, 0x00, 0xd6, 0x5a, 0x85,
0x00, 0x00, 0x00, 0x21, 0x00, 0x8d, 0x00, 0x00, 0x09, 0x40, 0x0c, 0xe2,
0x69, 0x01, 0x72, 0xe2, 0x6d, 0x01, 0x72, 0xe2, 0x6d, 0x02, 0x6e, 0x01,
0x72, 0x02, 0x6e, 0x81, 0x1c, 0xb0, 0x00, 0x00, 0xa8, 0x00, 0x00, 0x02,
0x21, 0x00, 0x8c, 0x31, 0x39, 0x67, 0x85, 0xff, 0x7f, 0x02, 0x7b, 0x6f,
0x31, 0x46, 0x84, 0x10, 0x8b, 0x00, 0x00, 0x02, 0xa5, 0x14, 0x94, 0x52,
0xde, 0x7b, 0x83, 0xff, 0x7f, 0x03, 0x7b, 0x6f, 0xad, 0x35, 0x00, 0x00,
0x8c, 0x31, 0x87, 0xff, 0x7f, 0x06, 0xad, 0x35, 0x00, 0x00, 0x8c, 0x31,
0xf7, 0x5e, 0x18, 0x63, 0xf7, 0x5e, 0x18, 0x63, 0x87, 0xff, 0x7f, 0x07,
0xbd, 0x77, 0xf7, 0x5e, 0x18, 0x63, 0xf7, 0x5e, 0x18, 0x63, 0x94, 0x52,
0x00, 0x00, 0xe7, 0x20, 0x87, 0x18, 0x63, 0x00, 0xef, 0x3d, 0x84, 0x00,
0x00, 0x09, 0x81, 0x1c, 0x02, 0x72, 0xe2, 0x71, 0x01, 0x6e, 0xe2, 0x6d,
0x01, 0x6e, 0xe2, 0x6d, 0x02, 0x72, 0xe1, 0x69, 0x20, 0x08, 0xb0, 0x00,
0x00, 0xa7, 0x00, 0x00, 0x01, 0x63, 0x0c, 0xf6, 0x5e, 0x89, 0xff, 0x7f,
0x01, 0xbd, 0x77, 0x8c, 0x31, 0x89, 0x00, 0x00, 0x01, 0xc6, 0x18, 0x9c,
0x73, 0x87, 0xff, 0x7f, 0x01, 0x52, 0x4a, 0xce, 0x39, 0x87, 0xff, 0x7f,
0x02, 0xad, 0x35, 0x00, 0x00, 0x10, 0x42, 0x90, 0xff, 0x7f, 0x03, 0x9c,
0x73, 0x00, 0x00, 0x63, 0x08, 0xde, 0x7b, 0x86, 0xff, 0x7f, 0x01, 0x9c,
0x73, 0x21, 0x04, 0x83, 0x00, 0x00, 0x08, 0xe1, 0x30, 0x21, 0x76, 0xe2,
0x6d, 0x02, 0x6e, 0x02, 0x72, 0xe2, 0x6d, 0x01, 0x6e, 0x02, 0x72, 0x81,
0x55, 0xb1, 0x00, 0x00, 0xa6, 0x00, 0x00, 0x01, 0x83, 0x0c, 0x5a, 0x6b,
0x8c, 0xff, 0x7f, 0x00, 0xef, 0x3d, 0x87, 0x00, 0x00, 0x01, 0x83, 0x10,
0x7c, 0x6f, 0x89, 0xff, 0x7f, 0x00, 0x9c, 0x73, 0x87, 0xff, 0x7f, 0x02,
0xad, 0x35, 0x00, 0x00, 0x10, 0x42, 0x90, 0xff, 0x7f, 0x03, 0x7b, 0x6b,
0x00, 0x04, 0x00, 0x00, 0x73, 0x4e, 0x87, 0xff, 0x7f, 0x00, 0x6b, 0x2d,
0x83, 0x00, 0x00, 0x08, 0x61, 0x4d, 0x02, 0x76, 0x01, 0x6e, 0xe2, 0x6d,
0x01, 0x6e, 0xe2, 0x6d, 0x01, 0x72, 0x02, 0x76, 0x01, 0x3d, 0xb1, 0x00,
0x00, 0xa6, 0x00, 0x00, 0x00, 0xf8, 0x62, 0x8e, 0xff, 0x7f, 0x00, 0x6b,
0x2d, 0x86, 0x00, 0x00, 0x00, 0xd6, 0x5a, 0x93, 0xff, 0x7f, 0x02, 0xad,
0x35, 0x00, 0x00, 0xef, 0x3d, 0x90, 0xff, 0x7f, 0x03, 0x7b, 0x6f, 0x21,
0x04, 0x00, 0x00, 0x08, 0x21, 0x87, 0xff, 0x7f, 0x00, 0xd6, 0x5a, 0x82,
0x00, 0x00, 0x05, 0x20, 0x08, 0xe2, 0x65, 0x02, 0x72, 0xe1, 0x6d, 0x02,
0x72, 0xe1, 0x6d, 0x81, 0x02, 0x6e, 0x01, 0x02, 0x72, 0xa0, 0x20, 0xb1,
0x00, 0x00, 0xa5, 0x00, 0x00, 0x00, 0xce, 0x39, 0x8f, 0xff, 0x7f, 0x01,
0x9c, 0x73, 0x63, 0x0c, 0x84, 0x00, 0x00, 0x00, 0x29, 0x25, 0x94, 0xff,
0x7f, 0x02, 0xad, 0x35, 0x00, 0x00, 0x10, 0x42, 0x90, 0xff, 0x7f, 0x04,
0x5a, 0x6f, 0x21, 0x00, 0x00, 0x00, 0x00, 0x04, 0x5a, 0x6b, 0x86, 0xff,
0x7f, 0x01, 0xde, 0x7b, 0x84, 0x10, 0x81, 0x00, 0x00, 0x09, 0xa1, 0x24,
0x01, 0x72, 0x02, 0x6e, 0xe2, 0x6d, 0x01, 0x6e, 0x02, 0x6e, 0xe2, 0x71,
0x01, 0x72, 0xe2, 0x69, 0x20, 0x08, 0xb1, 0x00, 0x00, 0xa4, 0x00, 0x00,
0x01, 0x21, 0x04, 0x9c, 0x73, 0x86, 0xff, 0x7f, 0x01, 0x5a, 0x6f, 0xbd,
0x77, 0x87, 0xff, 0x7f, 0x00, 0xad, 0x35, 0x84, 0x00, 0x00, 0x00, 0xb5,
0x56, 0x87, 0xff, 0x7f, 0x03, 0x9c, 0x73, 0x52, 0x4a, 0x30, 0x42, 0x39,
0x67, 0x88, 0xff, 0x7f, 0x02, 0xad, 0x35, 0x00, 0x00, 0x10, 0x42, 0x90,
0xff, 0x7f, 0x01, 0x7b, 0x6f, 0x21, 0x04, 0x81, 0x00, 0x00, 0x00, 0xce,
0x39, 0x87, 0xff, 0x7f, 0x00, 0x10, 0x42, 0x81, 0x00, 0x00, 0x08, 0x41,
0x45, 0x22, 0x76, 0xe1, 0x71, 0x02, 0x6e, 0xe2, 0x71, 0x01, 0x6e, 0xe2,
0x6d, 0x02, 0x72, 0x61, 0x4d, 0xb2, 0x00, 0x00, 0xa4, 0x00, 0x00, 0x00,
0x4a, 0x29, 0x85, 0xff, 0x7f, 0x04, 0xbd, 0x77, 0x4a, 0x29, 0x21, 0x00,
0xa5, 0x14, 0x7b, 0x6f, 0x86, 0xff, 0x7f, 0x00, 0xf7, 0x5e, 0x83, 0x00,
0x00, 0x01, 0x84, 0x10, 0xde, 0x7b, 0x86, 0xff, 0x7f, 0x01, 0xbd, 0x77,
0xc6, 0x18, 0x81, 0x00, 0x00, 0x01, 0x01, 0x04, 0xb5, 0x56, 0x87, 0xff,
0x7f, 0x02, 0xad, 0x35, 0x00, 0x00, 0xef, 0x3d, 0x82, 0xde, 0x7b, 0x89,
0xff, 0x7f, 0x83, 0xde, 0x7b, 0x01, 0x5a, 0x6b, 0x21, 0x04, 0x81, 0x00,
0x00, 0x01, 0x63, 0x0c, 0xde, 0x77, 0x86, 0xff, 0x7f, 0x0b, 0x7b, 0x6f,
0x21, 0x04, 0x00, 0x00, 0xa1, 0x5d, 0x02, 0x72, 0x02, 0x6e, 0xe1, 0x6d,
0x02, 0x6e, 0xe2, 0x6d, 0x01, 0x6e, 0x02, 0x76, 0xe1, 0x30, 0xb2, 0x00,
0x00, 0xa4, 0x00, 0x00, 0x00, 0x52, 0x4a, 0x85, 0xff, 0x7f, 0x00, 0xad,
0x35, 0x82, 0x00, 0x00, 0x00, 0x8c, 0x31, 0x86, 0xff, 0x7f, 0x01, 0xde,
0x7b, 0x42, 0x08, 0x82, 0x00, 0x00, 0x00, 0x6b, 0x2d, 0x87, 0xff, 0x7f,
0x00, 0x73, 0x4e, 0x83, 0x00, 0x00, 0x00, 0x8c, 0x31, 0x87, 0xff, 0x7f,
0x03, 0xad, 0x35, 0x00, 0x00, 0x42, 0x08, 0xc6, 0x18, 0x81, 0xa5, 0x14,
0x01, 0x08, 0x21, 0xde, 0x7b, 0x86, 0xff, 0x7f, 0x00, 0x18, 0x63, 0x84,
0xa5, 0x14, 0x83, 0x00, 0x00, 0x00, 0xb5, 0x56, 0x87, 0xff, 0x7f, 0x0a,
0x29, 0x21, 0x40, 0x14, 0x02, 0x72, 0x01, 0x72, 0xe2, 0x6d, 0x02, 0x6e,
0xe1, 0x71, 0x02, 0x6e, 0x02, 0x72, 0xe1, 0x6d, 0x60, 0x10, 0xb2, 0x00,
0x00, 0xa4, 0x00, 0x00, 0x00, 0x18, 0x63, 0x84, 0xff, 0x7f, 0x01, 0x9c,
0x73, 0x21, 0x04, 0x82, 0x00, 0x00, 0x01, 0x63, 0x0c, 0xdf, 0x7b, 0x86,
0xff, 0x7f, 0x00, 0xc6, 0x18, 0x82, 0x00, 0x00, 0x00, 0x52, 0x4a, 0x87,
0xff, 0x7f, 0x00, 0x8c, 0x31, 0x83, 0x00, 0x00, 0x00, 0xad, 0x35, 0x87,
0xff, 0x7f, 0x00, 0xad, 0x35, 0x84, 0x00, 0x00, 0x01, 0x63, 0x0c, 0xde,
0x7b, 0x86, 0xff, 0x7f, 0x00, 0xd6, 0x5a, 0x88, 0x00, 0x00, 0x00, 0x4a,
0x29, 0x87, 0xff, 0x7f, 0x09, 0x95, 0x4e, 0x00, 0x3d, 0x02, 0x76, 0x02,
0x6e, 0xe1, 0x6d, 0x02, 0x6e, 0xe2, 0x6d, 0x01, 0x6e, 0x02, 0x72, 0x81,
0x55, 0xb3, 0x00, 0x00, 0xa4, 0x00, 0x00, 0x06, 0x8c, 0x31, 0x31, 0x46,
0x94, 0x52, 0xf7, 0x5e, 0x5a, 0x6b, 0xbd, 0x77, 0xb5, 0x56, 0x83, 0x00,
0x00, 0x01, 0x21, 0x04, 0x9b, 0x73, 0x86, 0xff, 0x7f, 0x00, 0xe7, 0x1c,
0x81, 0x00, 0x00, 0x01, 0x20, 0x04, 0x39, 0x67, 0x87, 0xff, 0x7f, 0x00,
0xe7, 0x1c, 0x83, 0x00, 0x00, 0x00, 0xad, 0x35, 0x87, 0xff, 0x7f, 0x00,
0xad, 0x35, 0x84, 0x00, 0x00, 0x01, 0x84, 0x10, 0xde, 0x7b, 0x86, 0xff,
0x7f, 0x00, 0xf7, 0x5e, 0x88, 0x00, 0x00, 0x01, 0x21, 0x04, 0x7b, 0x6f,
0x86, 0xff, 0x7f, 0x09, 0xdd, 0x7b, 0xe3, 0x69, 0x01, 0x6e, 0xe2, 0x71,
0x01, 0x6e, 0xe2, 0x71, 0x01, 0x6e, 0xe2, 0x71, 0x02, 0x76, 0xe1, 0x2c,
0xb3, 0x00, 0x00, 0xa9, 0x00, 0x00, 0x81, 0x42, 0x08, 0x83, 0x00, 0x00,
0x01, 0x01, 0x04, 0x5a, 0x67, 0x86, 0xff, 0x7f, 0x00, 0xe7, 0x1c, 0x81,
0x00, 0x00, 0x01, 0x43, 0x08, 0xde, 0x7b, 0x86, 0xff, 0x7f, 0x01, 0xde,
0x7b, 0x63, 0x0c, 0x83, 0x00, 0x00, 0x00, 0xad, 0x35, 0x87, 0xff, 0x7f,
0x00, 0xad, 0x35, 0x84, 0x00, 0x00, 0x01, 0x63, 0x0c, 0xde, 0x7b, 0x86,
0xff, 0x7f, 0x00, 0xd6, 0x5a, 0x89, 0x00, 0x00, 0x00, 0x31, 0x46, 0x86,
0xff, 0x7f, 0x09, 0x55, 0x7b, 0xe1, 0x71, 0x01, 0x6e, 0xe2, 0x6d, 0x02,
0x6e, 0xe1, 0x6d, 0x02, 0x6e, 0x02, 0x72, 0xe1, 0x69, 0x40, 0x10, 0xb3,
0x00, 0x00, 0xb0, 0x00, 0x00, 0x00, 0x59, 0x6b, 0x85, 0xff, 0x7f, 0x01,
0xdf, 0x7b, 0xa5, 0x14, 0x81, 0x00, 0x00, 0x00, 0xc6, 0x18, 0x87, 0xff,
0x7f, 0x01, 0xbd, 0x77, 0x42, 0x08, 0x83, 0x00, 0x00, 0x00, 0xad, 0x35,
0x87, 0xff, 0x7f, 0x00, 0xad, 0x35, 0x84, 0x00, 0x00, 0x01, 0x84, 0x10,
0xde, 0x7b, 0x86, 0xff, 0x7f, 0x00, 0xd6, 0x5a, 0x89, 0x00, 0x00, 0x00,
0xc6, 0x18, 0x86, 0xff, 0x7f, 0x08, 0x8b, 0x76, 0xe0, 0x6d, 0xe2, 0x6d,
0x01, 0x6e, 0xe2, 0x71, 0x02, 0x6e, 0xe1, 0x6d, 0x22, 0x76, 0x61, 0x4d,
0xb4, 0x00, 0x00, 0xaf, 0x00, 0x00, 0x01, 0x21, 0x04, 0x7c, 0x6f, 0x85,
0xff, 0x7f, 0x01, 0xde, 0x7b, 0x62, 0x0c, 0x81, 0x00, 0x00, 0x00, 0x29,
0x25, 0x87, 0xff, 0x7f, 0x01, 0x7b, 0x6f, 0x21, 0x04, 0x83, 0x00, 0x00,
0x00, 0xad, 0x35, 0x87, 0xff, 0x7f, 0x00, 0xad, 0x35, 0x84, 0x00, 0x00,
0x01, 0x63, 0x0c, 0xde, 0x7b, 0x86, 0xff, 0x7f, 0x00, 0xf7, 0x5e, 0x8a,
0x00, 0x00, 0x00, 0x18, 0x63, 0x84, 0xff, 0x7f, 0x02, 0xbb, 0x7f, 0x03,
0x6e, 0xe1, 0x6d, 0x81, 0x02, 0x6e, 0x01, 0xe1, 0x6d, 0x02, 0x6e, 0x81,
0x02, 0x72, 0x00, 0x80, 0x20, 0xb4, 0x00, 0x00, 0xaf, 0x00, 0x00, 0x00,
0xc6, 0x18, 0x86, 0xff, 0x7f, 0x00, 0x39, 0x67, 0x82, 0x00, 0x00, 0x00,
0x8c, 0x31, 0x87, 0xff, 0x7f, 0x01, 0x7b, 0x6f, 0x21, 0x04, 0x83, 0x00,
0x00, 0x00, 0xad, 0x35, 0x87, 0xff, 0x7f, 0x00, 0xad, 0x35, 0x84, 0x00,
0x00, 0x01, 0x84, 0x10, 0xde, 0x7b, 0x86, 0xff, 0x7f, 0x00, 0xd6, 0x5a,
0x8a, 0x00, 0x00, 0x00, 0xad, 0x35, 0x84, 0xff, 0x7f, 0x08, 0xcf, 0x76,
0xe0, 0x6d, 0x01, 0x6e, 0xe2, 0x71, 0x01, 0x6e, 0xe2, 0x71, 0x01, 0x6e,
0x02, 0x72, 0xa1, 0x59, 0xb5, 0x00, 0x00, 0xaf, 0x00, 0x00, 0x00, 0xd6,
0x5a, 0x86, 0xff, 0x7f, 0x00, 0x10, 0x42, 0x82, 0x00, 0x00, 0x00, 0xce,
0x39, 0x87, 0xff, 0x7f, 0x00, 0x5a, 0x6b, 0x84, 0x00, 0x00, 0x00, 0xad,
0x35, 0x87, 0xff, 0x7f, 0x00, 0xad, 0x35, 0x84, 0x00, 0x00, 0x01, 0x63,
0x0c, 0xde, 0x7b, 0x86, 0xff, 0x7f, 0x00, 0xf7, 0x5e, 0x8a, 0x00, 0x00,
0x01, 0x63, 0x0c, 0xbd, 0x77, 0x82, 0xff, 0x7f, 0x09, 0xdc, 0x7f, 0x24,
0x6e, 0xe1, 0x6d, 0x01, 0x6e, 0xe2, 0x6d, 0x02, 0x6e, 0xe1, 0x6d, 0x02,
0x6e, 0x02, 0x76, 0xe1, 0x34, 0xb5, 0x00, 0x00, 0xaa, 0x00, 0x00, 0x04,
0x21, 0x04, 0x22, 0x08, 0x63, 0x0c, 0x29, 0x25, 0xd6, 0x5a, 0x86, 0xff,
0x7f, 0x01, 0xde, 0x7b, 0xa5, 0x14, 0x82, 0x00, 0x00, 0x00, 0x10, 0x42,
0x87, 0xff, 0x7f, 0x00, 0x39, 0x67, 0x84, 0x00, 0x00, 0x00, 0xad, 0x35,
0x87, 0xff, 0x7f, 0x00, 0xad, 0x35, 0x84, 0x00, 0x00, 0x01, 0x84, 0x10,
0xde, 0x7b, 0x86, 0xff, 0x7f, 0x00, 0xd6, 0x5a, 0x8b, 0x00, 0x00, 0x00,
0xb5, 0x56, 0x82, 0xff, 0x7f, 0x04, 0x13, 0x77, 0xe0, 0x6d, 0xe1, 0x71,
0x02, 0x6e, 0xe1, 0x71, 0x81, 0x02, 0x6e, 0x02, 0x01, 0x72, 0xe2, 0x69,
0x40, 0x0c, 0xb5, 0x00, 0x00, 0xa9, 0x00, 0x00, 0x03, 0x84, 0x10, 0x5a,
0x6b, 0x9c, 0x73, 0xde, 0x7b, 0x88, 0xff, 0x7f, 0x00, 0xef, 0x3d, 0x83,
0x00, 0x00, 0x00, 0x10, 0x42, 0x87, 0xff, 0x7f, 0x00, 0x18, 0x63, 0x84,
0x00, 0x00, 0x00, 0xad, 0x35, 0x87, 0xff, 0x7f, 0x00, 0xad, 0x35, 0x84,
0x00, 0x00, 0x01, 0x63, 0x0c, 0xde, 0x7b, 0x86, 0xff, 0x7f, 0x00, 0xd6,
0x5a, 0x8b, 0x00, 0x00, 0x00, 0x4a, 0x29, 0x81, 0xff, 0x7f, 0x09, 0xde,
0x7f, 0x46, 0x72, 0xe0, 0x6d, 0x02, 0x6e, 0xe2, 0x6d, 0x02, 0x6e, 0xe1,
0x6d, 0xe2, 0x71, 0x22, 0x76, 0x21, 0x41, 0xb6, 0x00, 0x00, 0xa9, 0x00,
0x00, 0x00, 0xa5, 0x14, 0x89, 0xff, 0x7f, 0x01, 0x9c, 0x73, 0xce, 0x39,
0x84, 0x00, 0x00, 0x00, 0x52, 0x4a, 0x87, 0xff, 0x7f, 0x00, 0x39, 0x67,
0x84, 0x00, 0x00, 0x00, 0xad, 0x35, 0x87, 0xff, 0x7f, 0x00, 0xad, 0x35,
0x84, 0x00, 0x00, 0x01, 0x84, 0x10, 0xde, 0x7b, 0x86, 0xff, 0x7f, 0x00,
0xf7, 0x5e, 0x8c, 0x00, 0x00, 0x0b, 0x5a, 0x6b, 0xff, 0x7f, 0x54, 0x7b,
0xe0, 0x6d, 0xe2, 0x6d, 0x01, 0x72, 0x02, 0x6e, 0xe1, 0x71, 0x02, 0x6e,
0x01, 0x6e, 0xe2, 0x6d, 0x60, 0x14, 0xb6, 0x00, 0x00, 0xa9, 0x00, 0x00,
0x00, 0x84, 0x10, 0x88, 0xff, 0x7f, 0x01, 0xbd, 0x7b, 0xce, 0x35, 0x85,
0x00, 0x00, 0x00, 0x73, 0x4e, 0x87, 0xff, 0x7f, 0x00, 0x18, 0x63, 0x84,
0x00, 0x00, 0x00, 0xad, 0x35, 0x87, 0xff, 0x7f, 0x00, 0xad, 0x35, 0x84,
0x00, 0x00, 0x01, 0x63, 0x0c, 0xde, 0x7b, 0x86, 0xff, 0x7f, 0x00, 0xd6,
0x5a, 0x8c, 0x00, 0x00, 0x0a, 0xef, 0x39, 0xff, 0x7f, 0x47, 0x72, 0xe0,
0x6d, 0x02, 0x6e, 0xe2, 0x6d, 0x01, 0x6e, 0xe2, 0x6d, 0x02, 0x6e, 0x02,
0x76, 0x61, 0x4d, 0xb7, 0x00, 0x00, 0xa9, 0x00, 0x00, 0x01, 0xa5, 0x14,
0xde, 0x7b, 0x88, 0xff, 0x7f, 0x02, 0xde, 0x7f, 0x18, 0x63, 0xc6, 0x18,
0x83, 0x00, 0x00, 0x00, 0x73, 0x4e, 0x87, 0xff, 0x7f, 0x00, 0x39, 0x67,
0x84, 0x00, 0x00, 0x00, 0xad, 0x35, 0x87, 0xff, 0x7f, 0x00, 0xad, 0x35,
0x84, 0x00, 0x00, 0x01, 0x84, 0x10, 0xde, 0x7b, 0x86, 0xff, 0x7f, 0x00,
0xf7, 0x5e, 0x8c, 0x00, 0x00, 0x0a, 0xa6, 0x14, 0x34, 0x77, 0xe1, 0x71,
0x01, 0x6e, 0xe2, 0x6d, 0x01, 0x72, 0xe2, 0x6d, 0x01, 0x6e, 0x02, 0x72,
0xe1, 0x6d, 0x60, 0x18, 0xb7, 0x00, 0x00, 0xa9, 0x00, 0x00, 0x01, 0x84,
0x10, 0xde, 0x7b, 0x8a, 0xff, 0x7f, 0x01, 0xbd, 0x77, 0xc6, 0x18, 0x82,
0x00, 0x00, 0x00, 0x73, 0x4e, 0x87, 0xff, 0x7f, 0x00, 0x18, 0x63, 0x84,
0x00, 0x00, 0x00, 0xad, 0x35, 0x87, 0xff, 0x7f, 0x00, 0xad, 0x35, 0x84,
0x00, 0x00, 0x01, 0x63, 0x0c, 0xde, 0x7b, 0x86, 0xff, 0x7f, 0x00, 0xd6,
0x5a, 0x8c, 0x00, 0x00, 0x04, 0x21, 0x00, 0xe3, 0x61, 0x01, 0x72, 0x02,
0x6e, 0xe2, 0x6d, 0x81, 0x02, 0x6e, 0x03, 0xe1, 0x71, 0xe1, 0x6d, 0x89,
0x76, 0x29, 0x21, 0xb7, 0x00, 0x00, 0xa9, 0x00, 0x00, 0x00, 0xa5, 0x14,
0x8c, 0xff, 0x7f, 0x01, 0x39, 0x67, 0x21, 0x04, 0x81, 0x00, 0x00, 0x00,
0x31, 0x4a, 0x87, 0xff, 0x7f, 0x00, 0x39, 0x67, 0x84, 0x00, 0x00, 0x00,
0xad, 0x35, 0x87, 0xff, 0x7f, 0x00, 0xad, 0x35, 0x84, 0x00, 0x00, 0x01,
0x84, 0x10, 0xde, 0x7b, 0x86, 0xff, 0x7f, 0x00, 0xd6, 0x5a, 0x8c, 0x00,
0x00, 0x0a, 0xa0, 0x24, 0x01, 0x72, 0xe2, 0x71, 0x01, 0x6e, 0xe2, 0x6d,
0x01, 0x72, 0xe2, 0x6d, 0x01, 0x6e, 0xe1, 0x6d, 0xb8, 0x7f, 0x95, 0x52,
0xb7, 0x00, 0x00, 0xa9, 0x00, 0x00, 0x05, 0x21, 0x04, 0x6b, 0x2d, 0x8c,
0x31, 0xce, 0x39, 0x73, 0x4e, 0xbd, 0x77, 0x88, 0xff, 0x7f, 0x00, 0x4a,
0x29, 0x81, 0x00, 0x00, 0x00, 0x31, 0x42, 0x87, 0xff, 0x7f, 0x00, 0x18,
0x63, 0x84, 0x00, 0x00, 0x00, 0xad, 0x35, 0x87, 0xff, 0x7f, 0x00, 0xad,
0x35, 0x84, 0x00, 0x00, 0x01, 0x63, 0x0c, 0xde, 0x7b, 0x86, 0xff, 0x7f,
0x00, 0xf7, 0x5e, 0x8b, 0x00, 0x00, 0x0c, 0x20, 0x04, 0xa2, 0x61, 0x02,
0x72, 0x02, 0x6e, 0xe1, 0x6d, 0x02, 0x72, 0xe1, 0x6d, 0x02, 0x6e, 0xe0,
0x6d, 0x8a, 0x72, 0xff, 0x7f, 0xbd, 0x77, 0x42, 0x08, 0xb6, 0x00, 0x00,
0xae, 0x00, 0x00, 0x01, 0xa5, 0x14, 0x39, 0x67, 0x87, 0xff, 0x7f, 0x00,
0xb5, 0x56, 0x81, 0x00, 0x00, 0x00, 0x10, 0x42, 0x87, 0xff, 0x7f, 0x01,
0x39, 0x67, 0x21, 0x04, 0x83, 0x00, 0x00, 0x00, 0xad, 0x35, 0x87, 0xff,
0x7f, 0x00, 0xad, 0x35, 0x84, 0x00, 0x00, 0x01, 0x84, 0x10, 0xde, 0x7b,
0x86, 0xff, 0x7f, 0x00, 0xd6, 0x5a, 0x8b, 0x00, 0x00, 0x04, 0x01, 0x39,
0x21, 0x76, 0xe2, 0x6d, 0x01, 0x72, 0xe2, 0x6d, 0x81, 0x02, 0x6e, 0x02,
0xe1, 0x71, 0xe1, 0x6d, 0x78, 0x7b, 0x81, 0xff, 0x7f, 0x00, 0xad, 0x35,
0xb6, 0x00, 0x00, 0xaf, 0x00, 0x00, 0x00, 0x08, 0x21, 0x87, 0xff, 0x7f,
0x03, 0x7b, 0x6f, 0x21, 0x04, 0x00, 0x00, 0xce, 0x39, 0x87, 0xff, 0x7f,
0x00, 0x5a, 0x6b, 0x84, 0x00, 0x00, 0x00, 0xad, 0x35, 0x87, 0xff, 0x7f,
0x00, 0xad, 0x35, 0x84, 0x00, 0x00, 0x01, 0x63, 0x0c, 0xde, 0x7b, 0x86,
0xff, 0x7f, 0x00, 0xf7, 0x5e, 0x8a, 0x00, 0x00, 0x09, 0x40, 0x0c, 0xc2,
0x65, 0x01, 0x72, 0x02, 0x6e, 0xe2, 0x6d, 0x01, 0x6e, 0xe2, 0x6d, 0x01,
0x6e, 0xe0, 0x6d, 0xac, 0x76, 0x82, 0xff, 0x7f, 0x00, 0x18, 0x63, 0xb6,
0x00, 0x00, 0xb0, 0x00, 0x00, 0x00, 0x7b, 0x6f, 0x86, 0xff, 0x7f, 0x03,
0xde, 0x7b, 0x63, 0x0c, 0x00, 0x00, 0x8c, 0x35, 0x87, 0xff, 0x7f, 0x01,
0x7b, 0x6f, 0x21, 0x04, 0x83, 0x00, 0x00, 0x00, 0xad, 0x35, 0x87, 0xff,
0x7f, 0x00, 0xad, 0x35, 0x84, 0x00, 0x00, 0x01, 0x84, 0x10, 0xde, 0x7b,
0x86, 0xff, 0x7f, 0x00, 0xd6, 0x5a, 0x8a, 0x00, 0x00, 0x09, 0x21, 0x45,
0x22, 0x76, 0xe2, 0x6d, 0x01, 0x72, 0xe2, 0x6d, 0x01, 0x72, 0xe2, 0x6d,
0xe1, 0x6d, 0x03, 0x72, 0xbb, 0x7b, 0x82, 0xff, 0x7f, 0x01, 0xde, 0x7b,
0xa5, 0x14, 0xb5, 0x00, 0x00, 0xb0, 0x00, 0x00, 0x00, 0xd6, 0x5a, 0x87,
0xff, 0x7f, 0x02, 0xc6, 0x18, 0x00, 0x00, 0x4a, 0x29, 0x87, 0xff, 0x7f,
0x01, 0x7b, 0x6f, 0x21, 0x04, 0x83, 0x00, 0x00, 0x00, 0xad, 0x35, 0x87,
0xff, 0x7f, 0x00, 0xad, 0x35, 0x84, 0x00, 0x00, 0x01, 0x63, 0x0c, 0xde,
0x7b, 0x86, 0xff, 0x7f, 0x00, 0xd6, 0x5a, 0x89, 0x00, 0x00, 0x09, 0x80,
0x18, 0x02, 0x72, 0x01, 0x6e, 0xe2, 0x6d, 0x02, 0x6e, 0x01, 0x6e, 0xe2,
0x6d, 0x02, 0x6e, 0xe0, 0x6d, 0xef, 0x76, 0x84, 0xff, 0x7f, 0x00, 0x31,
0x46, 0xb5, 0x00, 0x00, 0xa9, 0x00, 0x00, 0x81, 0x21, 0x04, 0x84, 0x00,
0x00, 0x00, 0xd6, 0x5a, 0x87, 0xff, 0x7f, 0x02, 0xe7, 0x1c, 0x00, 0x00,
0x08, 0x1d, 0x87, 0xff, 0x7f, 0x01, 0xbd, 0x77, 0x21, 0x04, 0x83, 0x00,
0x00, 0x00, 0xad, 0x35, 0x87, 0xff, 0x7f, 0x00, 0xad, 0x35, 0x84, 0x00,
0x00, 0x01, 0x84, 0x10, 0xde, 0x7b, 0x86, 0xff, 0x7f, 0x00, 0xf7, 0x5e,
0x88, 0x00, 0x00, 0x0a, 0x00, 0x04, 0x81, 0x55, 0x02, 0x76, 0x02, 0x6e,
0xe1, 0x71, 0x02, 0x6e, 0xe2, 0x71, 0x01, 0x6e, 0xe1, 0x6d, 0x25, 0x72,
0xdd, 0x7f, 0x84, 0xff, 0x7f, 0x01, 0x7b, 0x6f, 0x21, 0x04, 0xb4, 0x00,
0x00, 0xa3, 0x00, 0x00, 0x07, 0xa5, 0x14, 0xef, 0x3d, 0x31, 0x46, 0x94,
0x52, 0xd6, 0x5a, 0x18, 0x63, 0x5a, 0x6b, 0x10, 0x42, 0x84, 0x00, 0x00,
0x00, 0xd6, 0x5a, 0x87, 0xff, 0x7f, 0x03, 0xe7, 0x1c, 0x00, 0x00, 0x84,
0x10, 0xde, 0x7f, 0x86, 0xff, 0x7f, 0x01, 0xde, 0x7b, 0x84, 0x10, 0x83,
0x00, 0x00, 0x00, 0xad, 0x35, 0x87, 0xff, 0x7f, 0x00, 0xad, 0x35, 0x84,
0x00, 0x00, 0x01, 0x63, 0x0c, 0xde, 0x7b, 0x86, 0xff, 0x7f, 0x00, 0xd6,
0x5a, 0x88, 0x00, 0x00, 0x09, 0xe1, 0x2c, 0x02, 0x76, 0x01, 0x6e, 0xe2,
0x6d, 0x02, 0x6e, 0xe1, 0x6d, 0x02, 0x6e, 0xe1, 0x6d, 0xe1, 0x71, 0x33,
0x7b, 0x86, 0xff, 0x7f, 0x00, 0x2a, 0x25, 0xb4, 0x00, 0x00, 0xa3, 0x00,
0x00, 0x00, 0x8c, 0x31, 0x85, 0xff, 0x7f, 0x00, 0x94, 0x52, 0x84, 0x00,
0x00, 0x00, 0x39, 0x67, 0x86, 0xff, 0x7f, 0x04, 0xde, 0x7b, 0x84, 0x10,
0x00, 0x00, 0x21, 0x04, 0x9c, 0x73, 0x87, 0xff, 0x7f, 0x00, 0xe7, 0x1c,
0x83, 0x00, 0x00, 0x00, 0xad, 0x35, 0x87, 0xff, 0x7f, 0x00, 0xad, 0x35,
0x84, 0x00, 0x00, 0x01, 0x84, 0x10, 0xde, 0x7b, 0x86, 0xff, 0x7f, 0x00,
0xf7, 0x5e, 0x87, 0x00, 0x00, 0x01, 0x40, 0x0c, 0xc1, 0x65, 0x81, 0x02,
0x72, 0x06, 0xe1, 0x6d, 0x02, 0x72, 0x02, 0x6e, 0xe1, 0x71, 0x01, 0x72,
0x26, 0x66, 0xff, 0x7b, 0x86, 0xff, 0x7f, 0x00, 0xd6, 0x5a, 0xb4, 0x00,
0x00, 0xa3, 0x00, 0x00, 0x00, 0xe7, 0x1c, 0x85, 0xff, 0x7f, 0x00, 0x18,
0x63, 0x83, 0x00, 0x00, 0x01, 0x42, 0x08, 0x9c, 0x73, 0x86, 0xff, 0x7f,
0x00, 0x5a, 0x6b, 0x82, 0x00, 0x00, 0x00, 0xb5, 0x56, 0x87, 0xff, 0x7f,
0x00, 0xad, 0x35, 0x83, 0x00, 0x00, 0x00, 0x8c, 0x31, 0x87, 0xff, 0x7f,
0x00, 0xad, 0x35, 0x84, 0x00, 0x00, 0x01, 0x63, 0x0c, 0xde, 0x7b, 0x86,
0xff, 0x7f, 0x00, 0xd6, 0x5a, 0x87, 0x00, 0x00, 0x02, 0x61, 0x51, 0x22,
0x76, 0xe1, 0x6d, 0x81, 0x02, 0x6e, 0x05, 0xe1, 0x6d, 0x02, 0x6e, 0x02,
0x72, 0xc1, 0x69, 0x82, 0x18, 0x5b, 0x6b, 0x86, 0xff, 0x7f, 0x01, 0xde,
0x7b, 0xa4, 0x14, 0xb3, 0x00, 0x00, 0xa3, 0x00, 0x00, 0x01, 0x42, 0x08,
0xbd, 0x77, 0x84, 0xff, 0x7f, 0x01, 0xde, 0x7b, 0xc6, 0x18, 0x82, 0x00,
0x00, 0x00, 0x6b, 0x2d, 0x87, 0xff, 0x7f, 0x00, 0x52, 0x4a, 0x82, 0x00,
0x00, 0x00, 0xef, 0x39, 0x87, 0xff, 0x7f, 0x00, 0xf7, 0x5e, 0x83, 0x00,
0x00, 0x00, 0x10, 0x42, 0x87, 0xff, 0x7f, 0x00, 0xad, 0x35, 0x84, 0x00,
0x00, 0x01, 0x84, 0x10, 0xde, 0x7b, 0x86, 0xff, 0x7f, 0x00, 0xd6, 0x5a,
0x86, 0x00, 0x00, 0x0b, 0xc1, 0x2c, 0x22, 0x72, 0x02, 0x6e, 0xe2, 0x71,
0x01, 0x6e, 0xe2, 0x71, 0x02, 0x6e, 0xe1, 0x6d, 0x02, 0x76, 0x01, 0x35,
0x00, 0x00, 0x31, 0x46, 0x87, 0xff, 0x7f, 0x00, 0xef, 0x39, 0xb3, 0x00,
0x00, 0xa4, 0x00, 0x00, 0x00, 0xb5, 0x56, 0x85, 0xff, 0x7f, 0x04, 0x39,
0x67, 0xe7, 0x1c, 0x42, 0x08, 0xe7, 0x1c, 0x7b, 0x6f, 0x87, 0xff, 0x7f,
0x00, 0x08, 0x21, 0x82, 0x00, 0x00, 0x00, 0xe7, 0x20, 0x88, 0xff, 0x7f,
0x04, 0x52, 0x4a, 0x08, 0x21, 0x29, 0x25, 0x31, 0x46, 0xde, 0x7b, 0x87,
0xff, 0x7f, 0x00, 0xad, 0x35, 0x84, 0x00, 0x00, 0x01, 0x63, 0x0c, 0xde,
0x7b, 0x86, 0xff, 0x7f, 0x00, 0xf7, 0x5e, 0x85, 0x00, 0x00, 0x0c, 0x40,
0x10, 0xe1, 0x69, 0x02, 0x72, 0xe1, 0x6d, 0x02, 0x6e, 0xe1, 0x6d, 0x02,
0x6e, 0xe1, 0x6d, 0x22, 0x76, 0xa1, 0x59, 0x00, 0x04, 0x00, 0x00, 0xa5,
0x14, 0x87, 0xff, 0x7f, 0x01, 0x5a, 0x6b, 0x00, 0x04, 0xb2, 0x00, 0x00,
0xa4, 0x00, 0x00, 0x00, 0x6b, 0x2d, 0x87, 0xff, 0x7f, 0x00, 0xbd, 0x77,
0x88, 0xff, 0x7f, 0x00, 0x38, 0x63, 0x83, 0x00, 0x00, 0x01, 0x21, 0x04,
0x7b, 0x6f, 0x94, 0xff, 0x7f, 0x00, 0xad, 0x35, 0x84, 0x00, 0x00, 0x01,
0x84, 0x10, 0xde, 0x7b, 0x86, 0xff, 0x7f, 0x00, 0xd6, 0x5a, 0x85, 0x00,
0x00, 0x09, 0x61, 0x4d, 0x22, 0x76, 0xe1, 0x6d, 0x02, 0x6e, 0x02, 0x72,
0xe1, 0x6d, 0x02, 0x72, 0x02, 0x6e, 0xe2, 0x71, 0x80, 0x1c, 0x82, 0x00,
0x00, 0x00, 0x18, 0x63, 0x87, 0xff, 0x7f, 0x00, 0x08, 0x21, 0xb2, 0x00,
0x00, 0xa5, 0x00, 0x00, 0x00, 0x39, 0x67, 0x90, 0xff, 0x7f, 0x00, 0x08,
0x21, 0x84, 0x00, 0x00, 0x00, 0xef, 0x3d, 0x94, 0xff, 0x7f, 0x00, 0xad,
0x35, 0x84, 0x00, 0x00, 0x01, 0x63, 0x0c, 0xde, 0x7b, 0x86, 0xff, 0x7f,
0x00, 0xf7, 0x5e, 0x84, 0x00, 0x00, 0x09, 0xe1, 0x2c, 0x02, 0x76, 0x01,
0x6e, 0x02, 0x6e, 0xe1, 0x6d, 0x02, 0x6e, 0xe2, 0x6d, 0x01, 0x6e, 0x02,
0x76, 0x21, 0x41, 0x83, 0x00, 0x00, 0x00, 0xad, 0x35, 0x87, 0xff, 0x7f,
0x00, 0x52, 0x4a, 0x82, 0x00, 0x00, 0x00, 0x21, 0x04, 0xae, 0x00, 0x00,
0xa5, 0x00, 0x00, 0x01, 0xe7, 0x1c, 0xde, 0x7b, 0x8e, 0xff, 0x7f, 0x00,
0x31, 0x46, 0x85, 0x00, 0x00, 0x01, 0x63, 0x08, 0x9c, 0x77, 0x8a, 0xff,
0x7f, 0x01, 0x5a, 0x6b, 0xde, 0x7b, 0x86, 0xff, 0x7f, 0x00, 0xad, 0x35,
0x84, 0x00, 0x00, 0x01, 0x84, 0x10, 0xde, 0x7b, 0x86, 0xff, 0x7f, 0x00,
0xd6, 0x5a, 0x83, 0x00, 0x00, 0x0a, 0x60, 0x14, 0xe1, 0x6d, 0x02, 0x72,
0xe2, 0x6d, 0x02, 0x72, 0xe2, 0x6d, 0x01, 0x72, 0xe2, 0x6d, 0x22, 0x76,
0xa1, 0x5d, 0x20, 0x04, 0x83, 0x00, 0x00, 0x01, 0x63, 0x08, 0xbd, 0x77,
0x86, 0xff, 0x7f, 0x07, 0xbd, 0x77, 0x43, 0x08, 0x00, 0x00, 0xe7, 0x1c,
0x52, 0x4a, 0xad, 0x35, 0x11, 0x42, 0xee, 0x3d, 0xab, 0x00, 0x00, 0xa6,
0x00, 0x00, 0x00, 0x8c, 0x31, 0x8d, 0xff, 0x7f, 0x00, 0x73, 0x4e, 0x87,
0x00, 0x00, 0x00, 0x4a, 0x25, 0x89, 0xff, 0x7f, 0x02, 0x5a, 0x6b, 0xa5,
0x14, 0x9c, 0x73, 0x86, 0xff, 0x7f, 0x00, 0xad, 0x35, 0x84, 0x00, 0x00,
0x01, 0x63, 0x0c, 0xde, 0x7b, 0x86, 0xff, 0x7f, 0x00, 0xd6, 0x5a, 0x82,
0x00, 0x00, 0x0a, 0x20, 0x08, 0xa1, 0x59, 0x02, 0x76, 0x01, 0x6e, 0xe2,
0x6d, 0x01, 0x6e, 0xe2, 0x6d, 0x01, 0x6e, 0x02, 0x72, 0xe1, 0x6d, 0x81,
0x1c, 0x85, 0x00, 0x00, 0x00, 0x94, 0x52, 0x87, 0xff, 0x7f, 0x06, 0x8c,
0x31, 0x00, 0x00, 0x83, 0x0c, 0x32, 0x4a, 0xce, 0x39, 0xbd, 0x77, 0xb5,
0x56, 0xab, 0x00, 0x00, 0xa7, 0x00, 0x00, 0x01, 0x4a, 0x29, 0xbd, 0x77,
0x89, 0xff, 0x7f, 0x01, 0xde, 0x7b, 0xef, 0x3d, 0x89, 0x00, 0x00, 0x00,
0xad, 0x35, 0x87, 0xff, 0x7f, 0x02, 0x39, 0x67, 0x84, 0x10, 0x00, 0x00,
0x87, 0xff, 0x7f, 0x00, 0xad, 0x35, 0x84, 0x00, 0x00, 0x00, 0x84, 0x10,
0x87, 0xff, 0x7f, 0x00, 0x18, 0x63, 0x82, 0x00, 0x00, 0x09, 0x61, 0x4d,
0x22, 0x7e, 0x22, 0x76, 0x02, 0x76, 0x22, 0x76, 0x02, 0x76, 0x22, 0x76,
0x02, 0x76, 0x22, 0x7a, 0x01, 0x35, 0x86, 0x00, 0x00, 0x00, 0x29, 0x25,
0x87, 0xff, 0x7f, 0x06, 0x38, 0x67, 0x00, 0x00, 0x63, 0x0c, 0x31, 0x46,
0x6b, 0x2d, 0x39, 0x67, 0x94, 0x52, 0xab, 0x00, 0x00, 0xa8, 0x00, 0x00,
0x02, 0x84, 0x10, 0x52, 0x4a, 0x9c, 0x73, 0x85, 0xff, 0x7f, 0x02, 0xbd,
0x77, 0x94, 0x52, 0xe7, 0x1c, 0x8b, 0x00, 0x00, 0x02, 0x08, 0x25, 0xf7,
0x5e, 0xde, 0x7b, 0x81, 0xff, 0x7f, 0x05, 0xde, 0x7b, 0x7b, 0x6f, 0xef,
0x3d, 0x42, 0x08, 0x00, 0x00, 0x21, 0x04, 0x81, 0x31, 0x46, 0x00, 0x52,
0x4a, 0x81, 0x31, 0x46, 0x03, 0x52, 0x4a, 0x31, 0x46, 0x52, 0x4a, 0xe7,
0x1c, 0x84, 0x00, 0x00, 0x00, 0x42, 0x08, 0x83, 0x31, 0x46, 0x04, 0x32,
0x4a, 0x51, 0x46, 0x31, 0x46, 0x52, 0x4a, 0x8c, 0x31, 0x81, 0x00, 0x00,
0x01, 0x40, 0x0c, 0x21, 0x41, 0x81, 0x21, 0x3d, 0x06, 0x20, 0x3d, 0x01,
0x3d, 0x21, 0x3d, 0x20, 0x3d, 0x21, 0x41, 0x01, 0x35, 0x00, 0x04, 0x86,
0x00, 0x00, 0x03, 0x21, 0x04, 0x10, 0x42, 0x31, 0x46, 0x52, 0x4a, 0x84,
0x73, 0x4e, 0x06, 0x52, 0x4a, 0x42, 0x08, 0x21, 0x04, 0x4a, 0x29, 0xc6,
0x18, 0x4a, 0x29, 0x6b, 0x2d, 0xab, 0x00, 0x00, 0xaa, 0x00, 0x00, 0x02,
0x63, 0x0c, 0x29, 0x25, 0xad, 0x35, 0x81, 0xef, 0x3d, 0x02, 0xad, 0x35,
0x29, 0x25, 0x63, 0x0c, 0x8f, 0x00, 0x00, 0x04, 0x84, 0x0c, 0xe7, 0x1c,
0x08, 0x21, 0xa5, 0x14, 0x21, 0x04, 0xeb, 0x00, 0x00, 0xff, 0x00, 0x00,
0xb3, 0x00, 0x00, 0xff, 0x00, 0x00, 0xb3, 0x00, 0x00, 0xff, 0x00, 0x00,
0xb3, 0x00, 0x00, 0xff, 0x00, 0x00, 0xb3, 0x00, 0x00, 0xff, 0x00, 0x00,
0xb3, 0x00, 0x00, 0xff, 0x00, 0x00, 0xb3, 0x00, 0x00
};

View File

@@ -541,10 +541,21 @@
#define HWC_BASE_ADDR_MASK 0x03UL #define HWC_BASE_ADDR_MASK 0x03UL
#endif /* defined ( GLIDE_INIT_HAL ) */ #endif /* defined ( GLIDE_INIT_HAL ) */
#include "fxsplash.h"
#if (GLIDE_PLATFORM & GLIDE_OS_WIN32) #if (GLIDE_PLATFORM & GLIDE_OS_WIN32)
#define WIN32_LEANER_AND_MEANER #define WIN32_LEANER_AND_MEANER
#include <windows.h> #include <windows.h>
#include "fxsplash.h" #else
FxBool fxSplashInit (FxU32 hWnd,
FxU32 screenWidth, FxU32 screenHeight,
FxU32 numColBuf, FxU32 numAuxBuf,
GrColorFormat_t colorFormat);
void fxSplashShutdown (void);
void fxSplash (float x, float y, float w, float h, FxU32 frameNumber);
const void *fxSplashPlug (FxU32* w, FxU32* h,
FxI32* strideInBytes,
GrLfbWriteMode_t* format);
#endif /* (GLIDE_PLATFORM & GLIDE_OS_WIN32) */ #endif /* (GLIDE_PLATFORM & GLIDE_OS_WIN32) */
/* ----------------------------------------------------------------------- /* -----------------------------------------------------------------------
@@ -1825,7 +1836,7 @@ typedef struct GrGC_s
occur every 64K writes. */ occur every 64K writes. */
} cmdTransportInfo; } cmdTransportInfo;
FxI32 (FX_CALL *triSetupProc)(const void *a, const void *b, const void *c); FxI32 (FX_CALL *triSetupProc)(const void *a, const void *b, const void *c);
SstIORegs SstIORegs
@@ -1985,11 +1996,12 @@ typedef struct GrGC_s
texSurface[GLIDE_NUM_TMU]; /* Current texture surface */ texSurface[GLIDE_NUM_TMU]; /* Current texture surface */
#endif /* GLIDE_INIT_HWC */ #endif /* GLIDE_INIT_HWC */
#if (GLIDE_PLATFORM & GLIDE_OS_WIN32)
/* Splash screen/shameless plug crap */ /* Splash screen/shameless plug crap */
struct { struct {
#if (GLIDE_PLATFORM & GLIDE_OS_WIN32)
HMODULE HMODULE
moduleHandle; moduleHandle;
#endif /* (GLIDE_PLATFORM & GLIDE_OS_WIN32) */
GrSplashInitProc GrSplashInitProc
initProc; initProc;
GrSplashShutdownProc GrSplashShutdownProc
@@ -1999,7 +2011,6 @@ typedef struct GrGC_s
GrSplashPlugProc GrSplashPlugProc
plugProc; plugProc;
} pluginInfo; } pluginInfo;
#endif /* (GLIDE_PLATFORM & GLIDE_OS_WIN32) */
} GrGC; } GrGC;
@@ -3240,11 +3251,11 @@ extern GrChipID_t MultitextureAndTrilinear(void);
#define _grTexFloatLODToFixedLOD(value) \ #define _grTexFloatLODToFixedLOD(value) \
(FxU16)((( int )(( value + .125F ) / .25F)) & 0x003F) (FxU16)((( int )(( value + .125F ) / .25F)) & 0x003F)
#if 0 /* [dBorca] moved to `gtex.c' */ #if 0 /* [dBorca] moved to `gtex.c' */
static GrLOD_t g3LodXlat_base[2] = { GR_LOD_LOG2_256, GR_LOD_LOG2_2048 }; static GrLOD_t g3LodXlat_base[2] = { GR_LOD_LOG2_256, GR_LOD_LOG2_2048 };
#define _g3LodXlat(someLOD, tBig) \ #define _g3LodXlat(someLOD, tBig) \
(g3LodXlat_base[tBig] - someLOD) (g3LodXlat_base[tBig] - someLOD)
#endif #endif
#endif /* __FXGLIDE_H__ */ #endif /* __FXGLIDE_H__ */

View File

@@ -111,7 +111,6 @@ _grShamelessPlug(void)
GR_BEGIN_NOFIFOCHECK("_grShamelessPlug", 80); GR_BEGIN_NOFIFOCHECK("_grShamelessPlug", 80);
GDBG_INFO_MORE(gc->myLevel, "()\n"); GDBG_INFO_MORE(gc->myLevel, "()\n");
#if (GLIDE_PLATFORM & GLIDE_OS_WIN32)
if (gc->pluginInfo.plugProc != NULL) { if (gc->pluginInfo.plugProc != NULL) {
FxU32 FxU32
plugWidth, plugHeight, plugWidth, plugHeight,
@@ -167,7 +166,263 @@ _grShamelessPlug(void)
#endif /* GLIDE_PLUG */ #endif /* GLIDE_PLUG */
} }
} }
#endif /* (GLIDE_PLATFORM & GLIDE_OS_WIN32) */
GR_END(); GR_END();
} /* _grShamelessPlug */ } /* _grShamelessPlug */
#if !(GLIDE_PLATFORM & GLIDE_OS_WIN32)
#if GLIDE_PLUG
#if GLIDE_PLUG_EXT
static FxU32 fxPlugWidth;
static FxU32 fxPlugHeight;
static FxU32 fxPlugStride;
static GrLfbWriteMode_t fxPlugFormat;
#else
#include "banner.inc"
#endif
static FxU16 *fxPlugData;
#endif /* GLIDE_PLUG */
void fxSplashShutdown (void)
{
#if GLIDE_PLUG
if (fxPlugData != NULL) {
free(fxPlugData);
fxPlugData = NULL;
}
#endif
}
FxBool fxSplashInit (FxU32 hWnd,
FxU32 screenWidth, FxU32 screenHeight,
FxU32 numColBuf, FxU32 numAuxBuf,
GrColorFormat_t colorFormat)
{
#if GLIDE_PLUG
if (fxPlugData == NULL) {
#if GLIDE_PLUG_EXT
/* [dBorca]
* we should try to extract TGA resource from 3dfxspl3.dll
*/
FILE *f;
if ((f = fopen("3dfxplug.tga", "rb")) != NULL) {
int bpp, skip;
int i, j, decoded;
unsigned char header[18], b1[4], b0;
/* read TGA header */
if (!fread(header, 18, 1, f)) {
fclose(f);
return FXFALSE;
}
/* fill in values */
fxPlugWidth = ((unsigned short *)header)[6];
fxPlugHeight = ((unsigned short *)header)[7];
fxPlugStride = fxPlugWidth * 2;
fxPlugFormat = GR_LFBWRITEMODE_565;
/* compute bits/pixel, then bytes/pixel; also check TGA type */
bpp = header[16];
if (((bpp != 16) && (bpp != 24) && (bpp != 32)) || ((header[2] & ~0x8) != 2)) {
fclose(f);
return FXFALSE;
}
bpp >>= 3;
/* skip colormap + junk */
skip = header[0];
if (header[1]) {
skip += *(unsigned short *)&header[5] * header[7] >> 3;
}
fseek(f, skip, SEEK_CUR);
/* allocate datablock */
if ((fxPlugData = malloc(fxPlugStride * fxPlugHeight)) == NULL) {
fclose(f);
return FXFALSE;
}
if (header[2] == 10) {
/* RLE */
j = 0;
while (j < (fxPlugWidth * fxPlugHeight)) {
/* packet header */
if (!fread(&b0, 1, 1, f)) {
fxSplashShutdown();
fclose(f);
return FXFALSE;
}
if (b0 & 0x80) {
/* replicate pixels */
b0 &= 0x7f;
if (!fread(b1, bpp, 1, f)) {
fxSplashShutdown();
fclose(f);
return FXFALSE;
}
switch (bpp) {
case 2:
decoded = *(unsigned short *)&b1[0];
decoded = ((decoded & 0x7c00) << 1)
| ((decoded & 0x03e0) << 1)
| (decoded & 0x001f);
break;
case 3:
case 4:
decoded = (b1[0]>>3) + ((b1[1]>>2)<<5) + ((b1[2]>>3)<<11);
break;
}
for (i = 0; i <= b0; i++) {
fxPlugData[j++] = decoded;
}
} else {
/* read pixels */
for (i = 0; i <= b0; i++) {
if (!fread(b1, bpp, 1, f)) {
fxSplashShutdown();
fclose(f);
return FXFALSE;
}
switch (bpp) {
case 2:
decoded = *(unsigned short *)&b1[0];
decoded = ((decoded & 0x7c00) << 1)
| ((decoded & 0x03e0) << 1)
| (decoded & 0x001f);
break;
case 3:
case 4:
decoded = (b1[0]>>3) + ((b1[1]>>2)<<5) + ((b1[2]>>3)<<11);
break;
}
fxPlugData[j++] = decoded;
}
}
}
/* flip (RLE can cross scanlines, thus we can't use tricks) */
if (!(header[17] & 0x20)) {
for (i = 0; i < fxPlugHeight / 2; i++) {
unsigned short *src = &fxPlugData[fxPlugWidth * i];
unsigned short *dst = &fxPlugData[fxPlugWidth * (fxPlugHeight - i - 1)];
for (j = 0; j < fxPlugWidth; j++) {
decoded = dst[j];
dst[j] = src[j];
src[j] = decoded;
}
}
}
} else if (header[2] == 2) {
/* normal (flip on-the-fly) */
for (i = 0; i < fxPlugHeight; i++) {
int l = (header[17] & 0x20) ? i : (fxPlugHeight-i-1);
unsigned short *line = &fxPlugData[fxPlugWidth * l];
for (j = 0; j < fxPlugWidth; j++) {
if (!fread(b1, bpp, 1, f)) {
fxSplashShutdown();
fclose(f);
return FXFALSE;
}
switch (bpp) {
case 2:
decoded = *(unsigned short *)&b1[0];
decoded = ((decoded & 0x7c00) << 1)
| ((decoded & 0x03e0) << 1)
| (decoded & 0x001f);
break;
case 3:
case 4:
decoded = (b1[0]>>3) + ((b1[1]>>2)<<5) + ((b1[2]>>3)<<11);
break;
}
line[j] = decoded;
}
}
}
fclose(f);
}
#else /* GLIDE_PLUG_EXT */
/* [dBorca]
* embedded image is always 16bit RLE and does not need to be flipped
*/
int k = 0;
int i, j, decoded;
unsigned char b0;
/* allocate datablock */
if ((fxPlugData = malloc(fxPlugStride * fxPlugHeight)) == NULL) {
return FXFALSE;
}
/* RLE */
j = 0;
while (j < (fxPlugWidth * fxPlugHeight)) {
/* packet header */
b0 = tga_16rle[k++];
if (b0 & 0x80) {
/* replicate pixels */
b0 &= 0x7f;
decoded = *(unsigned short *)&tga_16rle[k];
decoded = ((decoded & 0x7c00) << 1)
| ((decoded & 0x03e0) << 1)
| (decoded & 0x001f);
k += 2;
for (i = 0; i <= b0; i++) {
fxPlugData[j++] = decoded;
}
} else {
/* read pixels */
for (i = 0; i <= b0; i++) {
decoded = *(unsigned short *)&tga_16rle[k];
decoded = ((decoded & 0x7c00) << 1)
| ((decoded & 0x03e0) << 1)
| (decoded & 0x001f);
k += 2;
fxPlugData[j++] = decoded;
}
}
}
#endif /* GLIDE_PLUG_EXT */
}
return FXTRUE;
#else /* GLIDE_PLUG */
return FXFALSE;
#endif /* GLIDE_PLUG */
}
const void *fxSplashPlug (FxU32* w, FxU32* h,
FxI32* strideInBytes,
GrLfbWriteMode_t* format)
{
#if GLIDE_PLUG
*w = fxPlugWidth;
*h = fxPlugHeight;
*strideInBytes = fxPlugStride;
*format = fxPlugFormat;
return fxPlugData;
#else
return NULL;
#endif
}
void fxSplash (float x, float y, float w, float h, FxU32 frameNumber)
{
}
#endif /* (GLIDE_PLATFORM & GLIDE_OS_WIN32) */

View File

@@ -1140,6 +1140,38 @@ doSplash( void )
if (!didLoad) FreeLibrary(gc->pluginInfo.moduleHandle); if (!didLoad) FreeLibrary(gc->pluginInfo.moduleHandle);
} }
/* Clear all the info if we could not load for some reason */
if (!didLoad) memset(&gc->pluginInfo, 0, sizeof(gc->pluginInfo));
}
#else
{
FxBool
didLoad;
gc->pluginInfo.initProc = fxSplashInit;
gc->pluginInfo.shutdownProc = fxSplashShutdown;
gc->pluginInfo.splashProc = fxSplash;
gc->pluginInfo.plugProc = fxSplashPlug;
didLoad = ((gc->pluginInfo.initProc != NULL) &&
(gc->pluginInfo.splashProc != NULL) &&
(gc->pluginInfo.plugProc != NULL) &&
(gc->pluginInfo.shutdownProc != NULL));
if (didLoad) {
GrState glideState;
/* Protect ourselves from the splash screen */
grGlideGetState(&glideState);
{
didLoad = (*gc->pluginInfo.initProc)(gc->grHwnd,
gc->state.screen_width, gc->state.screen_height,
gc->grColBuf, gc->grAuxBuf,
gc->state.color_format);
if (!didLoad) (*gc->pluginInfo.shutdownProc)();
}
grGlideSetState((const void*)&glideState);
}
/* Clear all the info if we could not load for some reason */ /* Clear all the info if we could not load for some reason */
if (!didLoad) memset(&gc->pluginInfo, 0, sizeof(gc->pluginInfo)); if (!didLoad) memset(&gc->pluginInfo, 0, sizeof(gc->pluginInfo));
} }