一、运行环境介绍
Linux系统: Redhat6.3 (32位)
gcc 版本 4.4.6 20120305 (Red Hat 4.4.6-4) (GCC)
二、功能介绍
创建一张BMP图片,将图片当做画板,在图片的指定位置绘制图片(要当做水印的图片)。
三、核心代码
可以传入任意尺寸的图片进行生成绘制。
代码语言:javascript复制#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#pragma pack(1) //强制1个字节对齐
//BMP的文件头
struct _BMP_HEAD
{
char type[2]; //图片的类型 "BM"
unsigned int size; //文件大小
unsigned short r1; //保留1
unsigned short r2; //保留2
unsigned int seek; //数据偏移字节(真实像素点数据)
};
//BMP的参数信息
struct _BMP_INFO
{
unsigned int size; //当前结构体大小
unsigned int w; //宽度
unsigned int h; //高度
unsigned short flag; //固定为1
unsigned short bit; //像素点的位数
unsigned int r1; //压缩方式 0
unsigned int r2; //水平分辨率
unsigned int r3; //垂直分辨率
unsigned int r4; //垂直分辨率
unsigned int r5; //引用色彩
unsigned int r6; //关键色彩
};
//外部引用声明
extern const unsigned char gImage_1[4800];
/*
函数功能: 显示像素点
*/
void Display_Point(char *head,int w,int x,int y,int c)
{
unsigned char *p=(unsigned char *)(head w*3*y x*3);
*(p 0)=(c>>0)&0xFF;
*(p 1)=(c>>8)&0xFF;
*(p 2)=(c>>16)&0xFF;
}
/*
函数功能: 绘制一张图片水印
函数参数:
char *image_data 取模数据的首地址 (横向取模--高位在前)
int w 取模字体的宽度
int h 取模字体的高度
*/
void Display_Image(char *image_data,int w,int h,char *image_head,int image_w,int x,int y)
{
int i,j;
int x0=x;
int c;
for(i=0;i<h;i )
{
for(j=0;j<w;j )
{
//合成RGB888颜色
c=*(image_data 2)<<16|*(image_data 1)<<8|*(image_data 0)<<0;
//绘制像素点
Display_Point(image_head,image_w,x0 ,y,c);
//偏移像素点
image_data =3;
}
y ; //换行
x0=x; //横坐标归位
}
}
int main(int argc,char **argv)
{
if(argc!=4)
{
printf("传入的参数格式: ./a.out <新图片宽度> <新图片高度> <新图片的名称>n");
printf("例如: ./a.out 80 80 test.bmp");
printf("传入的宽度和高度需要>=48n");
return 0;
}
/*1. 创建一张BMP图片*/
FILE *fp=fopen(argv[3],"wb");
if(fp==NULL)
{
printf("%s 文件创建失败.n",argv[1]);
return 0;
}
/*2. 创建BMP的文件头*/
int cnt;
struct _BMP_HEAD bmp_head;
memset(&bmp_head,0,sizeof(struct _BMP_HEAD));
//图片的类型
bmp_head.type[0]='B';
bmp_head.type[1]='M';
//文件大小
bmp_head.size=54 atoi(argv[1])*atoi(argv[2])*3;
//数据偏移量
bmp_head.seek=54;
//写文件头
cnt=fwrite(&bmp_head,1,sizeof(struct _BMP_HEAD),fp);
printf("成功写入:%d 字节.n",cnt);
/*3. 写文件参数信息*/
struct _BMP_INFO bmp_info;
memset(&bmp_info,0,sizeof(struct _BMP_INFO));
//当前结构体大小
bmp_info.size=sizeof(struct _BMP_INFO);
//图片的宽度和高度
bmp_info.w=atoi(argv[1]);
bmp_info.h=atoi(argv[2]);
//图片的颜色位数
bmp_info.bit=24;
//标志位
bmp_info.flag=1;
//写入文件参数信息
cnt=fwrite(&bmp_info,1,sizeof(struct _BMP_INFO),fp);
printf("成功写入:%d 字节.n",cnt);
/*4.添加水印: 制作图片的数据*/
int one_line_byte=bmp_info.w*3; //BMP图片一行的字节数
while(one_line_byte%4!=0) //补齐4的倍数
{
one_line_byte ;
}
one_line_byte=one_line_byte-bmp_info.w*3; //得到需要补齐的字节数量
//申请一个存放图片颜色数据的缓冲区
char *head_p=malloc(bmp_info.w*3*bmp_info.h);
//将缓冲区初始化
memset(head_p,0xFF,bmp_info.w*3*bmp_info.h);
//绘制水印
Display_Image((char *)gImage_1,40,40,head_p,bmp_info.w,60,60);
/*5. 写入位图数据*/
int w,h;
char *tmp_p;
for(h=bmp_info.h-1;h>=0;h--)
{
tmp_p=head_p h*bmp_info.w*3; //从缓冲区的最后一行开始读取
fwrite(tmp_p,1,bmp_info.w*3,fp); //写一行数据
if(one_line_byte) //判断是否需要补齐
fwrite(tmp_p,1,one_line_byte,fp); //写补齐的数据(占位而已--没有显示作用)
}
/*6. 关闭文件*/
fclose(fp);
free(head_p);
return 0;
}
const unsigned char gImage_1[4800] = { /* 0X10,0X18,0X00,0X28,0X00,0X28,0X00,0X39, */
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0XFC,0XFC,0XF6,0XF7,0XF6,
0XFD,0XFD,0XFD,0XF5,0XF9,0XFB,0XC2,0XC4,0XC4,0X91,0X90,0X8D,0X75,0X71,0X6C,0X71,
0X6D,0X69,0X86,0X83,0X7F,0XB2,0XB0,0XAD,0XE7,0XE7,0XE6,0XFD,0XFD,0XFD,0XFD,0XFD,
0XFD,0XFC,0XFC,0XFC,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFE,0XFE,0XFE,0XEA,0XEB,0XEB,0XAA,0XA2,0X9D,0X7A,0X6B,0X60,0X60,0X4E,
0X41,0X50,0X40,0X33,0X41,0X33,0X28,0X30,0X28,0X1F,0X2B,0X24,0X1B,0X2F,0X29,0X20,
0X44,0X3E,0X36,0X76,0X72,0X6C,0XC7,0XC5,0XC4,0XFE,0XFE,0XFE,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFE,0XFE,0XFE,0XFC,0XFD,0XFD,0XB1,0XA7,0XA3,0X80,0X62,0X51,
0X87,0X62,0X4B,0X8B,0X6A,0X52,0X7E,0X60,0X4C,0X66,0X4F,0X3E,0X4E,0X3E,0X30,0X38,
0X2E,0X24,0X2C,0X24,0X1B,0X25,0X1F,0X15,0X1E,0X17,0X0E,0X15,0X0D,0X04,0X1A,0X12,
0X09,0X5D,0X58,0X52,0XD3,0XD1,0XD0,0XFE,0XFE,0XFE,0XFE,0XFE,0XFE,0XFE,0XFE,0XFE,
0XFE,0XFE,0XFE,0XFE,0XFE,0XFE,0XFE,0XFE,0XFE,0XFE,0XFE,0XFE,0XFE,0XFE,0XFE,0XFE,
0XFE,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFE,0XFE,0XFE,0XFE,0XFE,0XE6,0XE6,0XE6,0X80,
0X6E,0X63,0X98,0X76,0X61,0XC4,0X96,0X7C,0XAC,0X7F,0X62,0X89,0X61,0X47,0X6C,0X4B,
0X34,0X56,0X3D,0X2B,0X43,0X32,0X24,0X32,0X27,0X1E,0X29,0X22,0X1A,0X28,0X21,0X18,
0X27,0X20,0X17,0X27,0X20,0X17,0X26,0X1F,0X16,0X18,0X10,0X07,0X1D,0X16,0X0C,0X91,
0X8D,0X89,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,
0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFE,0XFE,0XFE,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,
0XFE,0XFE,0XFE,0XFE,0XFE,0XFE,0XFE,0XFE,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,
0XFD,0XD9,0XD9,0XD9,0X5C,0X49,0X3D,0X83,0X5F,0X46,0XAE,0X84,0X6A,0XA0,0X6B,0X4B,
0X8B,0X56,0X35,0X74,0X47,0X2B,0X5F,0X3D,0X26,0X4C,0X34,0X23,0X3C,0X2C,0X1E,0X2C,
0X23,0X1A,0X26,0X20,0X17,0X27,0X20,0X17,0X27,0X20,0X17,0X27,0X20,0X17,0X27,0X20,
0X17,0X28,0X21,0X18,0X23,0X1C,0X13,0X11,0X09,0X00,0X79,0X75,0X70,0XFD,0XFD,0XFD,
0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,
0XFD,0XFD,0XFE,0XFE,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,
0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XE8,0XE8,0XE8,0X4D,0X41,0X37,0X65,0X48,0X35,0X81,
0X60,0X49,0X7D,0X51,0X35,0X7B,0X4A,0X2B,0X75,0X47,0X29,0X60,0X39,0X1D,0X4F,0X30,
0X1A,0X48,0X32,0X21,0X39,0X2A,0X1E,0X2A,0X22,0X18,0X26,0X20,0X17,0X27,0X20,0X17,
0X21,0X1A,0X10,0X22,0X1B,0X11,0X27,0X20,0X17,0X27,0X20,0X17,0X27,0X20,0X17,0X26,
0X1F,0X16,0X10,0X08,0X00,0X8A,0X86,0X82,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,
0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFE,0XFE,0XFE,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,
0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0X64,0X5D,
0X57,0X3D,0X2A,0X1B,0X60,0X48,0X37,0X5E,0X40,0X2B,0X61,0X3E,0X26,0X64,0X3F,0X26,
0X64,0X40,0X27,0X88,0X70,0X5E,0X71,0X5D,0X4F,0X36,0X23,0X14,0X31,0X24,0X1A,0X27,
0X20,0X18,0X26,0X1F,0X16,0X26,0X1E,0X15,0X3E,0X37,0X2F,0X33,0X2C,0X24,0X1B,0X14,
0X0A,0X28,0X21,0X18,0X27,0X20,0X17,0X27,0X20,0X17,0X24,0X1D,0X14,0X17,0X10,0X06,
0XBF,0XBE,0XBB,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,
0XFD,0XFD,0XFE,0XFE,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,
0XFD,0XFD,0XFD,0XAA,0XA7,0XA4,0X1B,0X12,0X08,0X41,0X33,0X27,0X45,0X33,0X24,0X49,
0X32,0X22,0X50,0X36,0X24,0X50,0X33,0X20,0X5D,0X4E,0X43,0X8C,0X8E,0X8F,0XFD,0XFD,
0XFD,0X96,0X8F,0X8A,0X1D,0X13,0X0A,0X26,0X20,0X17,0X20,0X18,0X0F,0X49,0X46,0X41,
0XDE,0XDE,0XDE,0XE9,0XE8,0XE8,0X63,0X5E,0X58,0X19,0X12,0X09,0X27,0X20,0X17,0X27,
0X20,0X17,0X27,0X20,0X17,0X1B,0X13,0X0A,0X45,0X3E,0X37,0XF8,0XF8,0XF8,0XFD,0XFD,
0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFE,0XFE,0XFE,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFE,0XFE,0XFD,
0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XF7,0XF6,0XF6,0X3F,0X39,0X31,0X20,0X19,
0X10,0X2E,0X25,0X1C,0X33,0X27,0X1C,0X3B,0X2B,0X1E,0X3E,0X2B,0X1C,0X47,0X36,0X29,
0X51,0X52,0X52,0X46,0X47,0X48,0XA8,0XA9,0XA9,0XFD,0XFD,0XFD,0X43,0X3D,0X36,0X1D,
0X16,0X0C,0X28,0X23,0X1C,0X6A,0X6A,0X6A,0X6A,0X6A,0X6A,0XFD,0XFD,0XFD,0XEE,0XED,
0XED,0X2F,0X28,0X20,0X22,0X1B,0X12,0X27,0X20,0X17,0X27,0X20,0X17,0X27,0X20,0X17,
0X17,0X0D,0X04,0XB4,0XAC,0XA9,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,
0XFD,0XFD,0XFE,0XFE,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,
0XB5,0XB3,0XB0,0X15,0X0E,0X04,0X27,0X21,0X17,0X27,0X21,0X18,0X28,0X20,0X17,0X2C,
0X22,0X19,0X25,0X19,0X0F,0X59,0X51,0X4A,0XB4,0XB5,0XB6,0XEB,0XEB,0XEB,0XBC,0XBC,
0XBC,0XFD,0XFD,0XFD,0X76,0X72,0X6C,0X14,0X0C,0X01,0X49,0X46,0X42,0X57,0X57,0X58,
0X42,0X42,0X42,0XFC,0XFC,0XFC,0XFD,0XFD,0XFD,0X60,0X5B,0X55,0X19,0X12,0X08,0X27,
0X20,0X17,0X27,0X20,0X17,0X27,0X20,0X17,0X1C,0X14,0X0B,0X69,0X57,0X53,0XFD,0XFD,
0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFE,0XFE,0XFE,0XFF,0XFF,0XFF,
0XFC,0XFC,0XFC,0XFF,0XFF,0XFF,0XFD,0XFC,0XFC,0XE1,0XE0,0XE0,0XFD,0XFD,0XFD,0XFD,
0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0X70,0X6B,0X65,0X16,0X0F,0X05,0X27,0X20,
0X17,0X27,0X20,0X17,0X27,0X20,0X17,0X26,0X1F,0X17,0X16,0X0F,0X06,0X75,0X70,0X67,
0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0X7C,0X78,0X73,0X08,
0X01,0X00,0X9F,0X9C,0X99,0X66,0X67,0X67,0XB1,0XB1,0XB2,0XFD,0XFD,0XFD,0XFD,0XFD,
0XFD,0X6B,0X65,0X5E,0X18,0X10,0X07,0X27,0X20,0X17,0X27,0X20,0X17,0X26,0X20,0X17,
0X25,0X1E,0X15,0X3C,0X2D,0X25,0XEB,0XE7,0XE8,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,
0XFD,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC1,0XBF,0XBD,0XB9,0XB7,0XB4,0XF0,0XF0,
0XEF,0X5E,0X59,0X52,0X9A,0X97,0X93,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFB,0XFA,0XFA,
0X45,0X3E,0X37,0X1E,0X17,0X0D,0X27,0X20,0X17,0X27,0X20,0X17,0X27,0X20,0X17,0X27,
0X20,0X17,0X1C,0X15,0X0C,0X4E,0X49,0X41,0XFD,0XFD,0XF0,0XFD,0XFC,0XF5,0XFD,0XFD,
0XFC,0XFD,0XFD,0XFD,0X54,0X4F,0X48,0X09,0X01,0X00,0X90,0X8C,0X86,0XFD,0XFD,0XFD,
0XFD,0XFD,0XFD,0XFD,0XFD,0XF7,0XFD,0XFB,0XEF,0X49,0X43,0X3B,0X1E,0X16,0X0D,0X27,
0X20,0X17,0X27,0X20,0X17,0X27,0X20,0X17,0X26,0X20,0X16,0X2D,0X21,0X14,0XC6,0XC1,
0XBF,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0X81,0X7E,0X79,0X17,0X0F,0X06,0X43,0X3D,0X35,0X3F,0X38,0X30,0X0F,0X08,0X00,0XAA,
0XA7,0XA4,0XFD,0XFD,0XFD,0XEB,0XEA,0XE9,0X31,0X2A,0X22,0X22,0X1B,0X12,0X27,0X20,
0X17,0X27,0X20,0X17,0X27,0X20,0X17,0X27,0X20,0X17,0X26,0X1F,0X16,0X1C,0X16,0X0E,
0XB3,0XAE,0X9F,0XFD,0XFD,0XF5,0XFD,0XFD,0XFD,0XB9,0XB5,0XAC,0X1E,0X16,0X0E,0X1E,
0X17,0X0D,0X3D,0X38,0X30,0XF3,0XF0,0XE5,0XFD,0XFD,0XF2,0XFD,0XFD,0XF5,0XB2,0XAD,
0XA1,0X1B,0X15,0X0D,0X26,0X1F,0X16,0X27,0X20,0X17,0X27,0X20,0X17,0X26,0X20,0X17,
0X28,0X20,0X17,0X2E,0X21,0X11,0XAB,0XA7,0XA2,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,
0XFD,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDA,0XDA,0XD8,0X3C,0X35,0X2D,0X18,0X11,
0X07,0X22,0X1A,0X11,0X21,0X1A,0X11,0X22,0X1B,0X12,0XE2,0XE1,0XE0,0XF3,0XF3,0XEB,
0X28,0X21,0X15,0X24,0X1D,0X14,0X27,0X20,0X17,0X27,0X20,0X17,0X27,0X20,0X17,0X27,
0X20,0X17,0X27,0X20,0X18,0X22,0X18,0X0F,0X2B,0X1C,0X12,0X8C,0X79,0X6A,0X8D,0X79,
0X6A,0X2C,0X18,0X0B,0X22,0X0F,0X01,0X29,0X16,0X08,0X1C,0X08,0X00,0X58,0X45,0X36,
0XBA,0XAE,0X9A,0X9E,0X95,0X86,0X2C,0X25,0X1D,0X21,0X1A,0X11,0X27,0X20,0X17,0X27,
0X20,0X17,0X27,0X20,0X17,0X26,0X20,0X17,0X2D,0X24,0X19,0X32,0X24,0X0F,0XA9,0XA5,
0X9B,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFE,0XFE,0XFE,0XFF,0XFF,0XFF,
0XFD,0XFD,0XFD,0X7B,0X76,0X71,0X14,0X0C,0X02,0X27,0X21,0X18,0X28,0X21,0X18,0X17,
0X10,0X06,0X68,0X63,0X59,0X77,0X72,0X9D,0X13,0X0E,0X11,0X28,0X21,0X13,0X27,0X20,
0X17,0X27,0X20,0X17,0X27,0X20,0X18,0X27,0X1C,0X10,0X28,0X13,0X04,0X28,0X20,0X15,
0X21,0X3B,0X3A,0X0C,0X50,0X58,0X05,0X6A,0X7A,0X14,0X84,0X9B,0X1D,0X8A,0XA8,0X1C,
0X80,0XA5,0X1E,0X72,0X98,0X14,0X50,0X71,0X14,0X33,0X49,0X16,0X1A,0X1B,0X23,0X14,
0X04,0X29,0X18,0X07,0X27,0X1E,0X14,0X27,0X20,0X18,0X26,0X20,0X17,0X2A,0X21,0X18,
0X38,0X2B,0X1C,0X3F,0X2F,0X12,0X60,0X5D,0X5E,0XF5,0XF6,0XF8,0XFD,0XFD,0XFD,0XFD,
0XFD,0XFD,0XFE,0XFE,0XFE,0XFF,0XFF,0XFF,0XFB,0XFB,0XFB,0XDB,0XDA,0XD9,0X21,0X1A,
0X11,0X24,0X1D,0X13,0X27,0X20,0X17,0X28,0X22,0X14,0X24,0X14,0X1D,0X0C,0X00,0XC2,
0X1E,0X10,0X8D,0X21,0X1E,0X00,0X29,0X21,0X18,0X27,0X20,0X18,0X28,0X18,0X09,0X26,
0X29,0X25,0X1F,0X6A,0X84,0X19,0XA4,0XD2,0X17,0XC8,0XF9,0X25,0XDD,0XFD,0X3D,0XE5,
0XFD,0X39,0XE1,0XFD,0X26,0XD7,0XFD,0X23,0XCF,0XFD,0X1F,0XC3,0XFD,0X1A,0XB4,0XFD,
0X16,0X9E,0XFD,0X15,0X89,0XEC,0X1A,0X70,0XB6,0X21,0X46,0X61,0X28,0X1D,0X13,0X27,
0X1A,0X0B,0X27,0X21,0X19,0X32,0X27,0X1B,0X46,0X36,0X19,0X3D,0X32,0X21,0X00,0X00,
0X93,0X9D,0X9B,0XBB,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFE,0XFE,0XFE,0XFF,0XFF,0XFF,
0XFB,0XFB,0XFB,0XFE,0XFE,0XFE,0X81,0X80,0X7A,0X11,0X0A,0X00,0X28,0X21,0X18,0X29,
0X23,0X11,0X1A,0X11,0X2B,0X0F,0X00,0XD5,0X23,0X09,0XFD,0X1D,0X14,0X4E,0X22,0X1E,
0X00,0X2A,0X1A,0X0B,0X22,0X48,0X5F,0X17,0XA2,0XEC,0X16,0XBC,0XFD,0X13,0XC1,0XFD,
0X36,0XCC,0XF8,0XA1,0XEC,0XFA,0XC3,0XF6,0XFB,0X99,0XEE,0XFA,0X3F,0XDD,0XF6,0X34,
0XD6,0XF6,0X2E,0XC8,0XF7,0X26,0XB4,0XF7,0X1B,0X9B,0XF9,0X14,0X8E,0XFC,0X13,0X99,
0XFD,0X13,0X9A,0XFD,0X19,0X7C,0XCD,0X23,0X38,0X48,0X30,0X21,0X11,0X41,0X32,0X1B,
0X3D,0X33,0X06,0X26,0X16,0X96,0X0A,0X00,0XFD,0X63,0X5F,0X99,0XFD,0XFD,0XFC,0XFD,
0XFD,0XFD,0XFE,0XFE,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFE,0XFE,0XF4,0XF4,
0XF4,0X43,0X3D,0X36,0X18,0X10,0X07,0X2A,0X23,0X0E,0X16,0X10,0X43,0X0D,0X00,0XC6,
0X1C,0X04,0XFB,0X2B,0X10,0XF3,0X1C,0X14,0X4D,0X20,0X15,0X00,0X22,0X48,0X5D,0X15,
0XA2,0XFC,0X19,0X87,0XC8,0X17,0X9A,0XDD,0X21,0XC3,0XFD,0X40,0XC7,0XFB,0X44,0XCB,
0XF7,0X30,0XC9,0XF7,0X27,0XC4,0XF7,0X24,0XBC,0XF7,0X20,0XAE,0XF8,0X1A,0X9C,0XF8,
0X15,0X8F,0XFA,0X15,0X98,0XFD,0X16,0X83,0XE4,0X17,0X80,0XDC,0X10,0X9F,0XFD,0X23,
0X55,0X7F,0X41,0X29,0X06,0X39,0X2F,0X07,0X27,0X18,0X7F,0X21,0X06,0XFD,0X15,0X00,
0XFD,0X22,0X13,0XB3,0XEC,0XEE,0XE3,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFD,0XFD,0XDA,0XD9,0XD8,0X2E,0X27,0X1F,0X1C,
0X14,0X00,0X21,0X18,0X3C,0X11,0X03,0XE7,0X14,0X04,0XDD,0X24,0X0A,0XFD,0X36,0X17,
0XFC,0X23,0X15,0X7B,0X18,0X0D,0X00,0X1D,0X2B,0X20,0X1A,0X53,0X74,0X1E,0X30,0X38,
0X15,0X70,0X9F,0X0E,0XA6,0XF7,0X0E,0XAE,0XFD,0X13,0XA6,0XFD,0X16,0X9E,0XFD,0X16,
0X95,0XFD,0X17,0X8B,0XFD,0X16,0X8B,0XFD,0X16,0X8B,0XFD,0X16,0X67,0XAB,0X1D,0X31,
0X41,0X18,0X5A,0X91,0X25,0X40,0X51,0X37,0X27,0X00,0X2F,0X27,0X1A,0X26,0X14,0X9B,
0X24,0X08,0XFD,0X1C,0X04,0XFD,0X16,0X00,0XFD,0X27,0X15,0XD1,0XF1,0XF2,0XEA,0XFD,
0XFD,0XFD,0XFD,0XFD,0XFD,0XFE,0XFE,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFD,
0XFD,0XFD,0XFD,0XFD,0XD3,0XD2,0XD0,0X3F,0X33,0X2A,0X2A,0X15,0X00,0X18,0X08,0XBA,
0X12,0X07,0XF8,0X18,0X06,0XE1,0X2B,0X0E,0XFD,0X44,0X1F,0XFD,0X3C,0X22,0XC9,0X1E,
0X10,0X4C,0X14,0X0A,0X02,0X1F,0X15,0X00,0X22,0X12,0X00,0X1B,0X2D,0X2F,0X16,0X56,
0X7C,0X15,0X6E,0XB1,0X15,0X75,0XCB,0X16,0X6E,0XD0,0X16,0X61,0XBD,0X17,0X50,0X8B,
0X1B,0X30,0X3E,0X24,0X16,0X00,0X29,0X1E,0X02,0X28,0X1D,0X00,0X2B,0X1C,0X09,0X27,
0X1B,0X65,0X27,0X0F,0XD9,0X26,0X08,0XFD,0X20,0X06,0XFD,0X1D,0X05,0XFB,0X16,0X00,
0XFD,0X1E,0X11,0X89,0XDA,0XDA,0XC7,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XE9,
0XE7,0XE6,0X80,0X6B,0X58,0X41,0X23,0X37,0X19,0X05,0XE8,0X19,0X08,0XFA,0X20,0X08,
0XF3,0X2D,0X0E,0XFD,0X48,0X21,0XFD,0X5C,0X35,0XFD,0X4D,0X32,0XD3,0X31,0X23,0X89,
0X1E,0X16,0X4C,0X17,0X0B,0X1C,0X13,0X03,0X00,0X11,0X08,0X00,0X0F,0X0E,0X00,0X10,
0X11,0X00,0X13,0X0F,0X00,0X17,0X0C,0X00,0X1C,0X11,0X07,0X1E,0X17,0X27,0X22,0X18,
0X50,0X28,0X17,0X8E,0X2B,0X12,0XDA,0X2C,0X0D,0XFD,0X27,0X09,0XFD,0X23,0X08,0XFB,
0X1F,0X06,0XFB,0X1E,0X04,0XFD,0X18,0X03,0XD6,0X16,0X10,0X12,0X3E,0X38,0X29,0XEA,
0XEA,0XE9,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFE,
0XFE,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0X67,0X4E,0X35,
0X2D,0X16,0X38,0X14,0X01,0XD9,0X1F,0X04,0XFD,0X2E,0X0F,0XFD,0X31,0X0F,0XFD,0X3F,
0X16,0XFD,0X55,0X2B,0XFD,0X67,0X40,0XFD,0X6B,0X4B,0XFD,0X64,0X4A,0XEE,0X58,0X42,
0XD3,0X4C,0X37,0XBE,0X43,0X2E,0XB1,0X3F,0X28,0XAD,0X3C,0X25,0XB2,0X3C,0X23,0XBF,
0X3D,0X21,0XD4,0X3F,0X1F,0XEF,0X3E,0X1B,0XFD,0X38,0X15,0XFD,0X2F,0X0F,0XFD,0X2A,
0X0D,0XFD,0X26,0X0A,0XFB,0X1F,0X07,0XFC,0X18,0X00,0XFD,0X16,0X01,0XD2,0X1E,0X17,
0X2F,0X2A,0X23,0X0C,0X21,0X18,0X0E,0X64,0X5F,0X58,0XFC,0XFC,0XFD,0XFD,0XFD,0XFD,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,
0XFD,0XFD,0XDD,0XDC,0XDB,0X28,0X21,0X19,0X23,0X1B,0X01,0X3A,0X34,0X41,0X33,0X1F,
0XC7,0X1E,0X00,0XF9,0X33,0X10,0XFD,0X3D,0X16,0XFD,0X3A,0X13,0XFD,0X37,0X11,0XFD,
0X3E,0X18,0XFD,0X4B,0X26,0XFD,0X57,0X32,0XFD,0X5B,0X36,0XFD,0X5B,0X36,0XFD,0X58,
0X32,0XFD,0X54,0X2D,0XFD,0X4D,0X27,0XFD,0X45,0X20,0XFD,0X3E,0X1B,0XFD,0X35,0X14,
0XFD,0X31,0X11,0XFD,0X2D,0X0F,0XFD,0X26,0X0C,0XFD,0X1F,0X06,0XFD,0X10,0X00,0XF2,
0X31,0X20,0XB6,0X2D,0X27,0X2B,0X25,0X1F,0X07,0X26,0X1F,0X17,0X2D,0X25,0X1C,0X2F,
0X27,0X19,0XA5,0XA2,0X9E,0XFD,0XFD,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFE,
0XFE,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XB4,0XB1,0XAE,0X17,0X0F,0X06,
0X17,0X10,0X08,0XAB,0XA7,0X94,0XD7,0XD5,0XC8,0X5B,0X50,0XA4,0X26,0X0A,0XD1,0X2E,
0X05,0XFA,0X3B,0X11,0XFD,0X3E,0X17,0XFD,0X3C,0X18,0XFD,0X3A,0X16,0XFD,0X38,0X13,
0XFD,0X36,0X11,0XFD,0X36,0X11,0XFD,0X37,0X12,0XFD,0X38,0X13,0XFD,0X38,0X15,0XFD,
0X38,0X16,0XFD,0X36,0X15,0XFD,0X2F,0X12,0XFD,0X2A,0X0E,0XFD,0X26,0X0C,0XFD,0X20,
0X07,0XF0,0X20,0X0D,0XBC,0X6B,0X61,0X95,0XDA,0XD6,0XB3,0X7D,0X78,0X60,0X18,0X10,
0X0A,0X27,0X20,0X17,0X23,0X1C,0X14,0X35,0X2E,0X21,0X4E,0X48,0X3B,0XEB,0XEA,0XEA,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFE,0XFE,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,
0XFD,0XFD,0X9E,0X9A,0X97,0X13,0X0B,0X01,0X26,0X1F,0X16,0XDA,0XD6,0XCD,0XFD,0XFD,
0XFD,0XF6,0XF7,0XE4,0XB2,0XAF,0XB2,0X67,0X5A,0XAA,0X3B,0X21,0XC6,0X2C,0X0A,0XE7,
0X2D,0X08,0XFB,0X32,0X0B,0XFD,0X35,0X0F,0XFD,0X36,0X11,0XFD,0X36,0X12,0XFD,0X36,
0X12,0XFD,0X34,0X11,0XFD,0X2F,0X0F,0XFD,0X29,0X0A,0XFD,0X2A,0X0D,0XFD,0X28,0X0F,
0XEF,0X21,0X0B,0XD6,0X19,0X08,0XAB,0X08,0X00,0X8B,0X16,0X12,0X92,0XE7,0XE4,0XD7,
0XFD,0XFD,0XEC,0XAD,0XA8,0X94,0X19,0X12,0X0A,0X27,0X20,0X17,0X27,0X20,0X17,0X28,
0X21,0X18,0X31,0X29,0X1A,0X9B,0X97,0X93,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFE,
0XFE,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0X9B,0X97,0X93,0X0F,0X08,0X00,
0X36,0X30,0X26,0XEB,0XE8,0XDC,0XFD,0XFD,0XFC,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XF8,
0XF9,0XE7,0XD0,0XCF,0XC4,0X9D,0X99,0XB3,0X73,0X68,0XB6,0X55,0X44,0XC3,0X42,0X2D,
0XD3,0X36,0X1F,0XE1,0X31,0X17,0XEB,0X2E,0X14,0XEF,0X2F,0X16,0XE8,0X35,0X1E,0XDD,
0X44,0X32,0XCA,0X32,0X22,0XAE,0X12,0X04,0XAD,0X10,0X02,0XAF,0X04,0X02,0XA3,0X07,
0X01,0XCE,0X00,0X00,0XDD,0XBF,0XBC,0XE1,0XFD,0XFD,0XE1,0XC5,0XBF,0XA8,0X22,0X1B,
0X13,0X25,0X1E,0X15,0X27,0X20,0X17,0X24,0X1D,0X15,0X29,0X22,0X16,0X59,0X53,0X4B,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFE,0XFE,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,
0XFD,0XFD,0XAA,0XA8,0XA4,0X0F,0X08,0X00,0X3B,0X35,0X2B,0XED,0XEA,0XDC,0XFD,0XFD,
0XF7,0XFC,0XFD,0XFB,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFB,
0XFC,0XFC,0XEB,0XEC,0XED,0XDA,0XDA,0XDB,0XCF,0XCB,0XCA,0XCA,0XC0,0XBE,0XCA,0XBB,
0XB9,0XCA,0XBE,0XBC,0XC7,0XCD,0XCD,0XCB,0XDE,0XDF,0XBE,0X5D,0X55,0XA6,0X1A,0X00,
0XF2,0X29,0X0A,0XFD,0X10,0X08,0XD6,0X19,0X08,0XEF,0X00,0X00,0XF3,0X90,0X8E,0XD6,
0XFD,0XFD,0XDC,0XCB,0XC5,0XAB,0X26,0X1F,0X16,0X25,0X1E,0X15,0X27,0X20,0X17,0X26,
0X1F,0X16,0X28,0X20,0X17,0X3A,0X32,0X29,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XCD,0XCB,0XC9,0X19,0X11,0X08,
0X32,0X2B,0X21,0XE4,0XE0,0XD0,0XFD,0XFC,0XF3,0XFC,0XFC,0XFA,0XFC,0XFD,0XFC,0XFD,
0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,
0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,
0XFC,0XFD,0XE9,0X5A,0X50,0XBF,0X20,0X00,0XFD,0X2B,0X0B,0XFD,0X17,0X0E,0XE1,0X20,
0X0B,0XF4,0X00,0X00,0XFA,0X76,0X73,0XD9,0XFD,0XFD,0XD8,0XC2,0XBC,0XA2,0X21,0X1A,
0X12,0X25,0X1E,0X15,0X24,0X1D,0X14,0X27,0X20,0X17,0X27,0X1F,0X17,0X2D,0X25,0X1D,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,
0XFD,0XFD,0XF5,0XF5,0XF4,0X39,0X32,0X2A,0X1A,0X13,0X0A,0XC9,0XC5,0XB4,0XFD,0XFD,
0XF0,0XFB,0XF9,0XF5,0XFC,0XFD,0XFB,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,
0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,
0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XF5,0XF5,0XE3,0X53,0X4A,0XBB,0X1E,0X00,
0XFD,0X29,0X0B,0XFD,0X22,0X0C,0XFB,0X22,0X0B,0XFC,0X00,0X00,0XFD,0X72,0X6F,0XE2,
0XFD,0XFD,0XD6,0XA5,0X9E,0X88,0X18,0X11,0X0A,0X27,0X20,0X17,0X25,0X1E,0X15,0X24,
0X1D,0X13,0X27,0X1F,0X17,0X29,0X22,0X1A,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0X7F,0X7C,0X76,
0X02,0X00,0X00,0X94,0X8E,0X80,0XFD,0XFD,0XEF,0XF7,0XF5,0XEB,0XFC,0XFB,0XF8,0XFC,
0XFD,0XFC,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,
0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,
0XF9,0XF9,0XE6,0X58,0X51,0XBC,0X1A,0X00,0XFD,0X29,0X0B,0XFD,0X28,0X0A,0XFD,0X1E,
0X05,0XFD,0X00,0X00,0XFC,0X9E,0X99,0XD4,0XFD,0XFD,0XD6,0X70,0X69,0X5A,0X0F,0X07,
0X00,0X4A,0X44,0X3D,0XAC,0XAA,0XA7,0X19,0X12,0X08,0X22,0X1B,0X12,0X2E,0X27,0X1E,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,
0XFD,0XFD,0XFD,0XFD,0XFD,0XDF,0XDD,0XDD,0X1B,0X14,0X0D,0X44,0X3E,0X32,0XF5,0XF1,
0XDB,0XF7,0XF3,0XE4,0XF9,0XF6,0XEF,0XFC,0XFC,0XF9,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,
0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,
0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XF3,0X89,0X88,0XBA,0X12,0X00,
0XE4,0X1B,0X00,0XF8,0X19,0X00,0XF7,0X1C,0X09,0XE7,0X66,0X5D,0XC1,0XF3,0XED,0XC9,
0XE3,0XDC,0XBE,0X31,0X2B,0X21,0X0D,0X05,0X00,0X9D,0X99,0X95,0XFD,0XFD,0XFD,0X8D,
0X8A,0X86,0X07,0X00,0X00,0X39,0X32,0X2A,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,
0X8F,0X8B,0X87,0X01,0X00,0X00,0XA5,0X9F,0X8C,0XFD,0XFD,0XE9,0XF4,0XF0,0XE2,0XF9,
0XF6,0XEE,0XFC,0XFB,0XF8,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,
0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,
0XFD,0XFD,0XFD,0XE8,0XE7,0XDF,0XAD,0XA9,0XBF,0X91,0X8A,0XBD,0X96,0X8F,0XB8,0XBB,
0XB6,0XB0,0XEF,0XEA,0XC2,0XFD,0XFD,0XDD,0X83,0X7D,0X6C,0X07,0X00,0X00,0X49,0X43,
0X3B,0XF8,0XF7,0XF7,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XA6,0XA3,0X9F,0XAB,0XA8,0XA5,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFE,0XFE,0XFD,0XFD,0XFD,0XFD,
0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0X65,0X56,0X49,0X26,0X17,
0X0D,0XDC,0XD7,0XBF,0XFC,0XF8,0XE1,0XF3,0XEF,0XE0,0XF7,0XF4,0XEA,0XFA,0XF8,0XF2,
0XFC,0XFB,0XF9,0XFD,0XFD,0XFC,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,
0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFC,0XFC,0XFB,0XF9,0XFD,0XFB,0XF5,0XFD,0XFC,
0XE9,0XFB,0XF8,0XDA,0XF8,0XF4,0XD1,0XF6,0XF1,0XD4,0XFD,0XFB,0XDE,0XC2,0XBB,0XA3,
0X1D,0X13,0X0B,0X33,0X26,0X16,0XDA,0XD8,0XD4,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,
0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFE,0XFE,0XFE,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,
0XCC,0XCE,0XEB,0X5B,0X90,0XD8,0X0D,0X24,0X31,0X4C,0X36,0X24,0XEA,0XE4,0XC9,0XFC,
0XF6,0XDE,0XF1,0XED,0XDB,0XF5,0XF1,0XE3,0XF7,0XF4,0XEA,0XF9,0XF7,0XEF,0XFA,0XF9,
0XF3,0XFB,0XFA,0XF6,0XFB,0XFA,0XF6,0XFB,0XFA,0XF5,0XFA,0XF8,0XF3,0XF9,0XF7,0XEF,
0XF7,0XF4,0XEA,0XF5,0XF1,0XE3,0XF2,0XEE,0XDB,0XF0,0XEB,0XD4,0XF0,0XEB,0XD5,0XFD,
0XF9,0XDE,0XD7,0XD1,0XB6,0X36,0X27,0X1B,0X10,0X09,0X08,0X6C,0X7C,0XA7,0XFD,0XF7,
0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFE,0XFE,0XFE,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFE,0XFE,0XFD,0XFD,0XFD,0XFD,
0XFD,0XFD,0XFD,0XFD,0XFD,0XA0,0XAF,0XDD,0X07,0X78,0XDB,0X03,0XC0,0XFD,0X17,0XC9,
0XEF,0X13,0X40,0X47,0X4B,0X31,0X21,0XD9,0XCE,0XB2,0XFD,0XFB,0XDF,0XF2,0XED,0XD6,
0XF1,0XEC,0XDA,0XF3,0XEF,0XDF,0XF4,0XF1,0XE2,0XF5,0XF2,0XE5,0XF5,0XF2,0XE5,0XF5,
0XF2,0XE4,0XF4,0XF1,0XE2,0XF3,0XEF,0XDE,0XF1,0XEC,0XD9,0XEF,0XEA,0XD4,0XEE,0XE9,
0XD4,0XF4,0XF0,0XDB,0XFD,0XFD,0XE1,0XC7,0XBE,0XA4,0X38,0X20,0X13,0X18,0X1D,0X19,
0X15,0XA2,0XC0,0X01,0XAF,0XFC,0X32,0X7D,0XD4,0XD9,0XDB,0XED,0XFD,0XFD,0XFD,0XFE,
0XFE,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFE,0XFE,0XFE,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XF5,0XF3,0XF3,0X25,0X53,0XBE,
0X09,0X99,0XFC,0X15,0XCB,0XF9,0X13,0XD3,0XFD,0X14,0XD5,0XFD,0X0F,0X70,0X83,0X2E,
0X2B,0X24,0XA2,0X8C,0X71,0XF3,0XE8,0XC7,0XFD,0XF8,0XDB,0XF5,0XEF,0XD5,0XF0,0XEA,
0XD3,0XEF,0XEA,0XD4,0XF0,0XEB,0XD5,0XF0,0XEA,0XD5,0XEF,0XEA,0XD4,0XEF,0XE9,0XD3,
0XF0,0XEB,0XD4,0XF7,0XF2,0XDB,0XFD,0XFC,0XE2,0XED,0XE4,0XC7,0X8F,0X7E,0X64,0X25,
0X13,0X08,0X15,0X4B,0X52,0X31,0XC5,0XE3,0X4E,0XE6,0XFD,0X35,0XD3,0XFD,0X00,0X7E,
0XF1,0X52,0X6F,0XC1,0XFD,0XFD,0XFD,0XFE,0XFE,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFD,0XFD,0XFD,
0XFD,0XFD,0XC1,0XC3,0XDC,0X09,0X5A,0XD7,0X13,0XB7,0XFC,0X13,0XC6,0XF8,0X14,0XC8,
0XF8,0X13,0XCA,0XFC,0X13,0XCF,0XFD,0X10,0X9F,0XD7,0X0F,0X4A,0X69,0X48,0X4A,0X46,
0X9D,0X8B,0X70,0XD9,0XC7,0XA3,0XF3,0XE7,0XC2,0XFC,0XF4,0XD1,0XFB,0XF5,0XD7,0XFA,
0XF4,0XD7,0XFD,0XF7,0XD9,0XFD,0XF5,0XD5,0XF2,0XE7,0XC6,0XD3,0XC3,0XA1,0X91,0X7F,
0X62,0X3E,0X34,0X29,0X11,0X30,0X43,0X16,0X86,0XB5,0X12,0XCC,0XFD,0X1E,0XD3,0XFD,
0X55,0XD7,0XFA,0X78,0XE0,0XFB,0X3D,0XAC,0XFA,0X19,0X4E,0XBF,0XE7,0XE5,0XEB,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XD1,0XD0,0XE0,0X07,0X52,0XD4,
0X0F,0XA5,0XFD,0X15,0XBB,0XF8,0X14,0XBD,0XF7,0X14,0XBA,0XF7,0X14,0XB3,0XF7,0X14,
0XB0,0XFD,0X12,0XAD,0XFD,0X0B,0X8F,0XDE,0X0A,0X66,0X99,0X24,0X52,0X6F,0X4C,0X5C,
0X6B,0X64,0X64,0X67,0X7C,0X74,0X64,0X89,0X82,0X70,0X76,0X6F,0X61,0X64,0X64,0X63,
0X49,0X51,0X58,0X21,0X41,0X57,0X0D,0X50,0X7F,0X11,0X7A,0XCB,0X16,0X9F,0XFD,0X15,
0XAF,0XFD,0X15,0XB2,0XF9,0X12,0XB8,0XF8,0X12,0XBA,0XF8,0X25,0XBC,0XF8,0X22,0XA7,
0XFD,0X10,0X4F,0XCC,0XE3,0XE0,0XE6,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFE,0XFE,0XFD,
0XFD,0XFD,0XFD,0XFD,0XFB,0X89,0X97,0XCB,0X09,0X51,0XD2,0X01,0X79,0XF1,0X0C,0X99,
0XFC,0X11,0XA3,0XFD,0X14,0XA3,0XFD,0X14,0X9E,0XFB,0X14,0X9A,0XFB,0X12,0X99,0XFD,
0X0F,0X91,0XFD,0X03,0X71,0XFD,0X00,0X3B,0XCF,0X22,0X35,0X80,0XA9,0XA7,0XAE,0XCD,
0XCB,0XCB,0X8D,0X8D,0X9A,0X0B,0X25,0X81,0X00,0X41,0XD9,0X0A,0X76,0XFD,0X14,0X91,
0XFD,0X16,0X95,0XFD,0X17,0X92,0XFC,0X16,0X97,0XFB,0X16,0XA1,0XFC,0X15,0XA5,0XFD,
0X10,0X9E,0XFD,0X01,0X80,0XF9,0X00,0X4F,0XD8,0X80,0X91,0XCA,0XFD,0XFD,0XFB,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFE,0XFE,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,
0XCB,0XCA,0XDB,0X6D,0X80,0XC7,0X37,0X63,0XCA,0X22,0X5F,0XD4,0X1B,0X61,0XDB,0X19,
0X61,0XDF,0X19,0X5F,0XDD,0X1C,0X58,0XD6,0X27,0X54,0XC7,0X49,0X61,0XB4,0X97,0X9A,
0XBA,0XF3,0XF1,0XF0,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XFD,0XDE,0XDD,0XE2,
0X77,0X80,0XB3,0X33,0X55,0XBB,0X1D,0X53,0XD2,0X18,0X5C,0XE1,0X17,0X63,0XE8,0X17,
0X66,0XE9,0X17,0X66,0XE6,0X1A,0X63,0XDF,0X25,0X5F,0XD2,0X50,0X6E,0XC6,0XB3,0XB6,
0XD3,0XFD,0XFD,0XFB,0XFD,0XFD,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
};