jpeg相关知识
一、jpeg介绍
JPEG 是 Joint Photographic Exports Group 的英文缩写,中文称之为联合图像专家小组。该小组隶属于 ISO 国际标准化组织,主要负责定制静态数字图像的编码方法,即所谓的 JPEG算法。JPEG 专家组开发了两种基本的压缩算法、两种熵编码方法、四种编码模式。
二、编码步骤
(一)颜色空间转换
jpeg采用的是y_cb_cr空间
rgb 到y_cb_cr的转换
可以采用y_cb_cr444,y_cb_cr422h,y_cb_cr422v,y_cb_cr420,y_cb_cr400(交织,非交织)
(二)DCT变换
jpeg以8*8为一个单位进行DCT变换
以zigzag顺序存放数据
标准量化表 unsigned char luma_dqt[] = {
, , , , , , , ,
, , , , , , , ,
, , , , , , , ,
, , , , , , , ,
, , , , , , , ,
, , , , , , , ,
, , , , , , , ,
, , , , , , ,
}; unsigned char chroma_dqt[] = {
, , , , , , , ,
, , , , , , , ,
, , , , , , , ,
, , , , , , , ,
, , , , , , , ,
, , , , , , , ,
, , , , , , , ,
, , , , , , ,
};
unsigned char luma_dc_dht[32] =
{ /* 0-base */ 0, 1, 5, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0 ,
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 ,0,0,0,0}; unsigned char chroma_dc_dht[32] =
{ /* 0-base */ 0, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0,
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11,0,0,0,0 };
unsigned char luma_ac_dht[184] =
{ /* 0-base */ 0, 2, 1, 3, 3, 2, 4, 3, 5, 5, 4, 4, 0, 0, 1, 0x7d,
0x01, 0x02, 0x03, 0x00, 0x04, 0x11, 0x05, 0x12,
0x21, 0x31, 0x41, 0x06, 0x13, 0x51, 0x61, 0x07,
0x22, 0x71, 0x14, 0x32, 0x81, 0x91, 0xa1, 0x08,
0x23, 0x42, 0xb1, 0xc1, 0x15, 0x52, 0xd1, 0xf0,
0x24, 0x33, 0x62, 0x72, 0x82, 0x09, 0x0a, 0x16,
0x17, 0x18, 0x19, 0x1a, 0x25, 0x26, 0x27, 0x28,
0x29, 0x2a, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39,
0x3a, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49,
0x4a, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59,
0x5a, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69,
0x6a, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79,
0x7a, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89,
0x8a, 0x92, 0x93, 0x94, 0x95, 0x96, 0x97, 0x98,
0x99, 0x9a, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7,
0xa8, 0xa9, 0xaa, 0xb2, 0xb3, 0xb4, 0xb5, 0xb6,
0xb7, 0xb8, 0xb9, 0xba, 0xc2, 0xc3, 0xc4, 0xc5,
0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xd2, 0xd3, 0xd4,
0xd5, 0xd6, 0xd7, 0xd8, 0xd9, 0xda, 0xe1, 0xe2,
0xe3, 0xe4, 0xe5, 0xe6, 0xe7, 0xe8, 0xe9, 0xea,
0xf1, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8,
0xf9, 0xfa ,0,0,0,0,0,0};
unsigned char chroma_ac_dht[184] =
{ /* 0-base */ 0, 2, 1, 2, 4, 4, 3, 4, 7, 5, 4, 4, 0, 1, 2, 0x77 ,
0x00, 0x01, 0x02, 0x03, 0x11, 0x04, 0x05, 0x21,
0x31, 0x06, 0x12, 0x41, 0x51, 0x07, 0x61, 0x71,
0x13, 0x22, 0x32, 0x81, 0x08, 0x14, 0x42, 0x91,
0xa1, 0xb1, 0xc1, 0x09, 0x23, 0x33, 0x52, 0xf0,
0x15, 0x62, 0x72, 0xd1, 0x0a, 0x16, 0x24, 0x34,
0xe1, 0x25, 0xf1, 0x17, 0x18, 0x19, 0x1a, 0x26,
0x27, 0x28, 0x29, 0x2a, 0x35, 0x36, 0x37, 0x38,
0x39, 0x3a, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48,
0x49, 0x4a, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58,
0x59, 0x5a, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68,
0x69, 0x6a, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78,
0x79, 0x7a, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87,
0x88, 0x89, 0x8a, 0x92, 0x93, 0x94, 0x95, 0x96,
0x97, 0x98, 0x99, 0x9a, 0xa2, 0xa3, 0xa4, 0xa5,
0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xb2, 0xb3, 0xb4,
0xb5, 0xb6, 0xb7, 0xb8, 0xb9, 0xba, 0xc2, 0xc3,
0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xd2,
0xd3, 0xd4, 0xd5, 0xd6, 0xd7, 0xd8, 0xd9, 0xda,
0xe2, 0xe3, 0xe4, 0xe5, 0xe6, 0xe7, 0xe8, 0xe9,
0xea, 0xf2, 0xf3, 0xf4, 0xf5, 0xf6, 0xf7, 0xf8,
0xf9, 0xfa ,0,0,0,0,0,0};
unsigned short luma_dc_huf_code[12] = {
0x0, 0x2, 0x3, 0x4,
0x5, 0x6, 0xe, 0x1e,
0x3e, 0x7e, 0xfe, 0x1fe } ;
unsigned char luma_dc_huf_size[12] = {
2, 3, 3, 3,
3, 3, 4, 5,
6, 7, 8, 9};
unsigned short luma_ac_huf_code[164] = {
0x0, 0x1, 0x4,
0xb, 0x1a, 0x78, 0xf8,
0x3f6, 0xff82, 0xff83, 0xc,
0x1b, 0x79, 0x1f6, 0x7f6,
0xff84, 0xff85, 0xff86, 0xff87,
0xff88, 0x1c, 0xf9, 0x3f7,
0xff4, 0xff89, 0xff8a, 0xff8b,
0xff8c, 0xff8d, 0xff8e, 0x3a,
0x1f7, 0xff5, 0xff8f, 0xff90,
0xff91, 0xff92, 0xff93, 0xff94,
0xff95, 0x3b, 0x3f8, 0xff96,
0xff97, 0xff98, 0xff99, 0xff9a,
0xff9b, 0xff9c, 0xff9d, 0x7a,
0x7f7, 0xff9e, 0xff9f, 0xffa0,
0xffa1, 0xffa2, 0xffa3, 0xffa4,
0xffa5, 0x7b, 0xff6, 0xffa6,
0xffa7, 0xffa8, 0xffa9, 0xffaa,
0xffab, 0xffac, 0xffad, 0xfa,
0xff7, 0xffae, 0xffaf, 0xffb0,
0xffb1, 0xffb2, 0xffb3, 0xffb4,
0xffb5, 0x1f8, 0x7fc0, 0xffb6,
0xffb7, 0xffb8, 0xffb9, 0xffba,
0xffbb, 0xffbc, 0xffbd, 0x1f9,
0xffbe, 0xffbf, 0xffc0, 0xffc1,
0xffc2, 0xffc3, 0xffc4, 0xffc5,
0xffc6, 0x1fa, 0xffc7, 0xffc8,
0xffc9, 0xffca, 0xffcb, 0xffcc,
0xffcd, 0xffce, 0xffcf, 0x3f9,
0xffd0, 0xffd1, 0xffd2, 0xffd3,
0xffd4, 0xffd5, 0xffd6, 0xffd7,
0xffd8, 0x3fa, 0xffd9, 0xffda,
0xffdb, 0xffdc, 0xffdd, 0xffde,
0xffdf, 0xffe0, 0xffe1, 0x7f8,
0xffe2, 0xffe3, 0xffe4, 0xffe5,
0xffe6, 0xffe7, 0xffe8, 0xffe9,
0xffea, 0xffeb, 0xffec, 0xffed,
0xffee, 0xffef, 0xfff0, 0xfff1,
0xfff2, 0xfff3, 0xfff4,
0xfff5, 0xfff6, 0xfff7, 0xfff8,
0xfff9, 0xfffa, 0xfffb, 0xfffc,
0xfffd, 0xfffe, 0x7f9, 0xa,
0,0};
unsigned char luma_ac_huf_size[164] = {
2 , 2 , 3 , 4 ,
5 , 7 , 8 , 10 ,
16 , 16 , 4 , 5 ,
7 , 9 , 11 , 16 ,
16 , 16 , 16 , 16 ,
5 , 8 , 10 , 12 ,
16 , 16 , 16 , 16 ,
16 , 16 , 6 , 9 ,
12 , 16 , 16 , 16 ,
16 , 16 , 16 , 16 ,
6 , 10 , 16 , 16 ,
16 , 16 , 16 , 16 ,
16 , 16 , 7 , 11,
16 , 16 , 16 , 16,
16 , 16 , 16 , 16,
7 , 12 , 16 , 16,
16 , 16 , 16 , 16,
16 , 16 , 8 , 12,
16 , 16 , 16 , 16,
16 , 16 , 16 , 16,
9 , 15 , 16 , 16,
16 , 16 , 16 , 16,
16 , 16 , 10 , 16,
16 , 16 , 16 , 16,
16 , 16 , 16 , 16,
10 , 16 , 16 , 16,
16 , 16 , 16 , 16,
16 , 16 , 11 , 16,
16 , 16 , 16 , 16,
16 , 16 , 16 , 16,
16 , 16 , 16 , 16,
16 , 16 , 16 , 16,
16 , 16 , 16 , 16,
16 , 16 , 16 , 16,
16 , 16 , 16 , 16,
11 , 4 , 0 , 0
};
unsigned short chroma_dc_huf_code[12] = {
0x0, 0x1, 0x2, 0x6,
0xe, 0x1e, 0x3e, 0x7e,
0xfe, 0x1fe, 0x3fe, 0x7fe}; unsigned char chroma_dc_huf_size[12] = {
2 , 2, 2, 3,4,5,6,7,8,9,10,11};
unsigned short chroma_ac_huf_code[164] = {
0x1, 0x4, 0xa, 0x18,
0x19, 0x38, 0x78, 0x1f4,
0x3f6, 0xff4, 0xb, 0x39,
0xf6, 0x1f5, 0x7f6, 0xff5,
0xff88, 0xff89, 0xff8a, 0xff8b,
0x1a, 0xf7, 0x3f7, 0xff6,
0x7fc2, 0xff8c, 0xff8d, 0xff8e,
0xff8f, 0xff90, 0x1b, 0xf8,
0x3f8, 0xff7, 0xff91, 0xff92,
0xff93, 0xff94, 0xff95, 0xff96,
0x3a, 0x1f6, 0xff97, 0xff98,
0xff99, 0xff9a, 0xff9b, 0xff9c,
0xffa9, 0xffaa, 0xffab, 0xffac,
0xffad, 0xffae, 0x7a, 0x7f8,
0xffaf, 0xffb0, 0xffb1, 0xffb2,
0xffb3, 0xffb4, 0xffb5, 0xffb6,
0xf9, 0xffb7, 0xffb8, 0xffb9,
0xffba, 0xffbb, 0xffbc, 0xffbd,
0xffbe, 0xffbf, 0x1f7, 0xffc0,
0xffc1, 0xffc2, 0xffc3, 0xffc4,
0xffc5, 0xffc6, 0xffc7, 0xffc8,
0x1f8, 0xffc9, 0xffca, 0xffcb,
0xffcc, 0xffcd, 0xffce, 0xffcf,
0xffd0, 0xffd1, 0x1f9, 0xffd2,
0xffd3, 0xffd4, 0xffd5, 0xffd6,
0xffd7, 0xffd8, 0xffd9, 0xffda,
0x1fa, 0xffdb, 0xffdc, 0xffdd,
0xffde, 0xffdf, 0xffe0, 0xffe1,
0xffe2, 0xffe3, 0x7f9, 0xffe4,
0xffe5, 0xffe6, 0xffe7, 0xffe8,
0xffe9, 0xffea, 0xffeb, 0xffec,
0x3fe0, 0xffed, 0xffee, 0xffef,
0xfff0, 0xfff1, 0xfff2, 0xfff3,
0xfff4, 0xfff5, 0x7fc3, 0xfff6,
0xfff7, 0xfff8, 0xfff9, 0xfffa,
0xfffb, 0xfffc, 0xfffd, 0xfffe,
0x3fa, 0x0, 0 , 0}; unsigned char chroma_ac_huf_size[164] = {
2 ,3 ,4 ,5 ,5 ,6 ,7 ,9 ,
10 ,12 ,4 ,6 ,8 ,9 ,11 ,12,
16 ,16 ,16 ,16 ,5 ,8 ,10 ,12,
15 ,16 ,16 ,16 ,16 ,16 ,5 ,8,
10 ,12 ,16 ,16 ,16 ,16 ,16 ,16,
6 ,9 ,16 ,16 ,16 ,16 ,16 ,16,
16 ,16 ,6 ,10 ,16 ,16 ,16 ,16,
16 ,16 ,16 ,16 ,7 ,11 ,16 ,16,
16 ,16 ,16 ,16 ,16 ,16 ,7 ,11,
16 ,16 ,16 ,16 ,16 ,16 ,16 ,16,
8 ,16 ,16 ,16 ,16 ,16 ,16 ,16,
16 ,16 ,9 ,16 ,16 ,16 ,16 ,16,
16 ,16 ,16 ,16 ,9 ,16 ,16 ,16,
16 ,16 ,16 ,16 ,16 ,16 ,9 ,16,
16 ,16 ,16 ,16 ,16 ,16 ,16 ,16,
9 ,16 ,16 ,16 ,16 ,16 ,16 ,16,
16 ,16 ,11 ,16 ,16 ,16 ,16 ,16,
16 ,16 ,16 ,16 ,14 ,16 ,16 ,16,
16 ,16 ,16 ,16 ,16 ,16 ,15 ,16,
16 ,16 ,16 ,16 ,16 ,16 ,16 ,16,
10 ,2 ,0 ,0 };
进行 DC 系数的差分脉冲调制编码 、 AC 系数的行程长度编码(RLC) 、 在通过哈弗曼熵编码,编码结束
三、文件结构
- SOI 0xD8 图像开始
- APP0 0xE0 JFIF应用数据块
- APPn 0xE1 - 0xEF 其他的应用数据块(n, 1~15)
- DQT 0xDB 量化表
- SOF0 0xC0 帧开始
- DHT 0xC4 霍夫曼(Huffman)表
- SOS 0xDA 扫描线开始
- EOI 0xD9 图像结束
以一个1270*700,y_cb_cr400彩条图
FF D8 FF E0 C0 3A B0 BF 3F B0 BF FF DB 0B 0C 0E 0C 0A 0E 0D 0E 1A 1D 3A 3D 3C 5C 4E 6D 5F 3E 4D 5C FF C0 0B BC F6 FF C4 1F 0A 0B FF C4 B5 7D A1 B1 C1 D1 F0 0A 1A 2A 3A 4A 5A 6A 7A 8A 9A A2 A3 A4 A5 A6 A7 A8 A9 AA B2 B3 B4 B5 B6 B7 B8 B9 BA C2 C3 C4 C5 C6 C7 C8 C9 CA D2 D3 D4 D5 D6 D7 D8 D9 DA E1 E2 E3 E4 E5 E6 E7 E8 E9 EA F1 F2 F3 F4 F5 F6 F7 F8 F9 FA FF DA 3F EF A2 8A A2 8A A2 8A A2 8A A2 BE E9 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF D6 7D E3 E8 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DC 6F F7 4F F2 AE 2B D7 EB 1E 0D 1E 9B FA C6 FA D3 A2 8A A2 8A A2 8A A2 8A A0 F4 A8 A9 A2 8A A2 8A A2 8A A2 8A AF 7B A2 8A A2 8A A2 8A A2 8A A2 8A FB A6 A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD D3 8D F7 8D A1 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF BF DD 3F CA B8 AF 5F AD 7A 7A 6C 9F EB 1B EB 4C A2 8A A2 8A A2 8A A2 8A A2 D2 A2 A4 A2 8A A2 8A A2 8A A2 8A A2 BD EE 8A A2 8A A2 8A A2 8A A2 8A 1B EE 9A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 4D DE 1E A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD C6 FF FF 2A E2 BD 7E B4 E9 D1 E9 B2 7F AC 6F AD 8A A2 8A A2 8A A2 8A A2 8A 0F 4A 8A 8A A2 8A A2 8A A2 8A A2 8A F7 BA A2 8A A2 8A A2 8A A2 8A A4 6F BA 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DD DF D2 7A 1A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 1B FD D3 FC AB 8A F5 FA D1 A5 A5 C9 FE B1 BE B4 CA A2 8A A2 8A A2 8A A2 8A 3D 2A 2A 4A A2 8A A2 8A A2 8A A2 8A 2B DE E8 A2 8A A2 8A A2 8A A2 8A A2 BE E9 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF D6 7D E3 E8 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DC 6F F7 4F F2 AE 2B D7 EB 1E 0D 1E 9B FA C6 FA D3 A2 8A A2 8A A2 8A A2 8A A0 F4 A8 A9 A2 8A A2 8A A2 8A A2 8A AF 7B A2 8A A2 8A A2 8A A2 8A A2 8A FB A6 A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD D3 8D F7 8D A1 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF BF DD 3F CA B8 AF 5F AD 7A 7A 6C 9F EB 1B EB 4C A2 8A A2 8A A2 8A A2 8A A2 D2 A2 A4 A2 8A A2 8A A2 8A A2 8A A2 BD EE 8A A2 8A A2 8A A2 8A A2 8A 1B EE 9A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 4D DE 1E A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD C6 FF FF 2A E2 BD 7E B4 E9 D1 E9 B2 7F AC 6F AD 8A A2 8A A2 8A A2 8A A2 8A 0F 4A 8A 8A A2 8A A2 8A A2 8A A2 8A F7 BA A2 8A A2 8A A2 8A A2 8A A4 6F BA 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DD DF D2 7A 1A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 1B FD D3 FC AB 8A F5 FA D1 A5 A5 C9 FE B1 BE B4 CA A2 8A A2 8A A2 8A A2 8A 3D 2A 2A 4A A2 8A A2 8A A2 8A A2 8A 2B DE E8 A2 8A A2 8A A2 8A A2 8A A2 BE E9 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF D6 7D E3 E8 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DC 6F F7 4F F2 AE 2B D7 EB 1E 0D 1E 9B FA C6 FA D3 A2 8A A2 8A A2 8A A2 8A A0 F4 A8 A9 A2 8A A2 8A A2 8A A2 8A AF 7B A2 8A A2 8A A2 8A A2 8A A2 8A FB A6 A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD D3 8D F7 8D A1 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF BF DD 3F CA B8 AF 5F AD 7A 7A 6C 9F EB 1B EB 4C A2 8A A2 8A A2 8A A2 8A A2 D2 A2 A4 A2 8A A2 8A A2 8A A2 8A A2 BD EE 8A A2 8A A2 8A A2 8A A2 8A 1B EE 9A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 4D DE 1E A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD C6 FF FF 2A E2 BD 7E B4 E9 D1 E9 B2 7F AC 6F AD 8A A2 8A A2 8A A2 8A A2 8A 0F 4A 8A 8A A2 8A A2 8A A2 8A A2 8A F7 BA A2 8A A2 8A A2 8A A2 8A A4 6F BA 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DD DF D2 7A 1A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 1B FD D3 FC AB 8A F5 FA D1 A5 A5 C9 FE B1 BE B4 CA A2 8A A2 8A A2 8A A2 8A 3D 2A 2A 4A A2 8A A2 8A A2 8A A2 8A 2B DE E8 A2 8A A2 8A A2 8A A2 8A A2 BE E9 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF D6 7D E3 E8 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DC 6F F7 4F F2 AE 2B D7 EB 1E 0D 1E 9B FA C6 FA D3 A2 8A A2 8A A2 8A A2 8A A0 F4 A8 A9 A2 8A A2 8A A2 8A A2 8A AF 7B A2 8A A2 8A A2 8A A2 8A A2 8A FB A6 A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD D3 8D F7 8D A1 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF BF DD 3F CA B8 AF 5F AD 7A 7A 6C 9F EB 1B EB 4C A2 8A A2 8A A2 8A A2 8A A2 D2 A2 A4 A2 8A A2 8A A2 8A A2 8A A2 BD EE 8A A2 8A A2 8A A2 8A A2 8A 1B EE 9A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 4D DE 1E A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD C6 FF FF 2A E2 BD 7E B4 E9 D1 E9 B2 7F AC 6F AD 8A A2 8A A2 8A A2 8A A2 8A 0F 4A 8A 8A A2 8A A2 8A A2 8A A2 8A F7 BA A2 8A A2 8A A2 8A A2 8A A4 6F BA 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DD DF D2 7A 1A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 1B FD D3 FC AB 8A F5 FA D1 A5 A5 C9 FE B1 BE B4 CA A2 8A A2 8A A2 8A A2 8A 3D 2A 2A 4A A2 8A A2 8A A2 8A A2 8A 2B DE E8 A2 8A A2 8A A2 8A A2 8A A2 BE E9 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF D6 7D E3 E8 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DC 6F F7 4F F2 AE 2B D7 EB 1E 0D 1E 9B FA C6 FA D3 A2 8A A2 8A A2 8A A2 8A A0 F4 A8 A9 A2 8A A2 8A A2 8A A2 8A AF 7B A2 8A A2 8A A2 8A A2 8A A2 8A FB A6 A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD D3 8D F7 8D A1 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF BF DD 3F CA B8 AF 5F AD 7A 7A 6C 9F EB 1B EB 4C A2 8A A2 8A A2 8A A2 8A A2 D2 A2 A4 A2 8A A2 8A A2 8A A2 8A A2 BD EE 8A A2 8A A2 8A A2 8A A2 8A 1B EE 9A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 4D DE 1E A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD C6 FF FF 2A E2 BD 7E B4 E9 D1 E9 B2 7F AC 6F AD 8A A2 8A A2 8A A2 8A A2 8A 0F 4A 8A 8A A2 8A A2 8A A2 8A A2 8A F7 BA A2 8A A2 8A A2 8A A2 8A A4 6F BA 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DD DF D2 7A 1A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 1B FD D3 FC AB 8A F5 FA D1 A5 A5 C9 FE B1 BE B4 CA A2 8A A2 8A A2 8A A2 8A 3D 2A 2A 4A A2 8A A2 8A A2 8A A2 8A 2B DE E8 A2 8A A2 8A A2 8A A2 8A A2 BE E9 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF D6 7D E3 E8 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DC 6F F7 4F F2 AE 2B D7 EB 1E 0D 1E 9B FA C6 FA D3 A2 8A A2 8A A2 8A A2 8A A0 F4 A8 A9 A2 8A A2 8A A2 8A A2 8A AF 7B A2 8A A2 8A A2 8A A2 8A A2 8A FB A6 A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD D3 8D F7 8D A1 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF BF DD 3F CA B8 AF 5F AD 7A 7A 6C 9F EB 1B EB 4C A2 8A A2 8A A2 8A A2 8A A2 D2 A2 A4 A2 8A A2 8A A2 8A A2 8A A2 BD EE 8A A2 8A A2 8A A2 8A A2 8A 1B EE 9A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 4D DE 1E A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD C6 FF FF 2A E2 BD 7E B4 E9 D1 E9 B2 7F AC 6F AD 8A A2 8A A2 8A A2 8A A2 8A 0F 4A 8A 8A A2 8A A2 8A A2 8A A2 8A F7 BA A2 8A A2 8A A2 8A A2 8A A4 6F BA 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DD DF D2 7A 1A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 1B FD D3 FC AB 8A F5 FA D1 A5 A5 C9 FE B1 BE B4 CA A2 8A A2 8A A2 8A A2 8A 3D 2A 2A 4A A2 8A A2 8A A2 8A A2 8A 2B DE E8 A2 8A A2 8A A2 8A A2 8A A2 BE E9 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF D6 7D E3 E8 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DC 6F F7 4F F2 AE 2B D7 EB 1E 0D 1E 9B FA C6 FA D3 A2 8A A2 8A A2 8A A2 8A A0 F4 A8 A9 A2 8A A2 8A A2 8A A2 8A AF 7B A2 8A A2 8A A2 8A A2 8A A2 8A FB A6 A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD D3 8D F7 8D A1 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF BF DD 3F CA B8 AF 5F AD 7A 7A 6C 9F EB 1B EB 4C A2 8A A2 8A A2 8A A2 8A A2 D2 A2 A4 A2 8A A2 8A A2 8A A2 8A A2 BD EE 8A A2 8A A2 8A A2 8A A2 8A 1B EE 9A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 4D DE 1E A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD C6 FF FF 2A E2 BD 7E B4 E9 D1 E9 B2 7F AC 6F AD 8A A2 8A A2 8A A2 8A A2 8A 0F 4A 8A 8A A2 8A A2 8A A2 8A A2 8A F7 BA A2 8A A2 8A A2 8A A2 8A A4 6F BA 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DD DF D2 7A 1A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 1B FD D3 FC AB 8A F5 FA D1 A5 A5 C9 FE B1 BE B4 CA A2 8A A2 8A A2 8A A2 8A 3D 2A 2A 4A A2 8A A2 8A A2 8A A2 8A 2B DE E8 A2 8A A2 8A A2 8A A2 8A A2 BE E9 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF D6 7D E3 E8 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DC 6F F7 4F F2 AE 2B D7 EB 1E 0D 1E 9B FA C6 FA D3 A2 8A A2 8A A2 8A A2 8A A0 F4 A8 A9 A2 8A A2 8A A2 8A A2 8A AF 7B A2 8A A2 8A A2 8A A2 8A A2 8A FB A6 A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD D3 8D F7 8D A1 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF BF DD 3F CA B8 AF 5F AD 7A 7A 6C 9F EB 1B EB 4C A2 8A A2 8A A2 8A A2 8A A2 D2 A2 A4 A2 8A A2 8A A2 8A A2 8A A2 BD EE 8A A2 8A A2 8A A2 8A A2 8A 1B EE 9A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 4D DE 1E A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD C6 FF FF 2A E2 BD 7E B4 E9 D1 E9 B2 7F AC 6F AD 8A A2 8A A2 8A A2 8A A2 8A 0F 4A 8A 8A A2 8A A2 8A A2 8A A2 8A F7 BA A2 8A A2 8A A2 8A A2 8A A4 6F BA 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DD DF D2 7A 1A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 1B FD D3 FC AB 8A F5 FA D1 A5 A5 C9 FE B1 BE B4 CA A2 8A A2 8A A2 8A A2 8A 3D 2A 2A 4A A2 8A A2 8A A2 8A A2 8A 2B DE E8 A2 8A A2 8A A2 8A A2 8A A2 BE E9 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF D6 7D E3 E8 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DC 6F F7 4F F2 AE 2B D7 EB 1E 0D 1E 9B FA C6 FA D3 A2 8A A2 8A A2 8A A2 8A A0 F4 A8 A9 A2 8A A2 8A A2 8A A2 8A AF 7B A2 8A A2 8A A2 8A A2 8A A2 8A FB A6 A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD D3 8D F7 8D A1 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF BF DD 3F CA B8 AF 5F AD 7A 7A 6C 9F EB 1B EB 4C A2 8A A2 8A A2 8A A2 8A A2 D2 A2 A4 A2 8A A2 8A A2 8A A2 8A A2 BD EE 8A A2 8A A2 8A A2 8A A2 8A 1B EE 9A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 4D DE 1E A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD C6 FF FF 2A E2 BD 7E B4 E9 D1 E9 B2 7F AC 6F AD 8A A2 8A A2 8A A2 8A A2 8A 0F 4A 8A 8A A2 8A A2 8A A2 8A A2 8A F7 BA A2 8A A2 8A A2 8A A2 8A A4 6F BA 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DD DF D2 7A 1A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 1B FD D3 FC AB 8A F5 FA D1 A5 A5 C9 FE B1 BE B4 CA A2 8A A2 8A A2 8A A2 8A 3D 2A 2A 4A A2 8A A2 8A A2 8A A2 8A 2B DE E8 A2 8A A2 8A A2 8A A2 8A A2 BE E9 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF D6 7D E3 E8 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DC 6F F7 4F F2 AE 2B D7 EB 1E 0D 1E 9B FA C6 FA D3 A2 8A A2 8A A2 8A A2 8A A0 F4 A8 A9 A2 8A A2 8A A2 8A A2 8A AF 7B A2 8A A2 8A A2 8A A2 8A A2 8A FB A6 A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD D3 8D F7 8D A1 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF BF DD 3F CA B8 AF 5F AD 7A 7A 6C 9F EB 1B EB 4C A2 8A A2 8A A2 8A A2 8A A2 D2 A2 A4 A2 8A A2 8A A2 8A A2 8A A2 BD EE 8A A2 8A A2 8A A2 8A A2 8A 1B EE 9A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 4D DE 1E A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD C6 FF FF 2A E2 BD 7E B4 E9 D1 E9 B2 7F AC 6F AD 8A A2 8A A2 8A A2 8A A2 8A 0F 4A 8A 8A A2 8A A2 8A A2 8A A2 8A F7 BA A2 8A A2 8A A2 8A A2 8A A4 6F BA 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DD DF D2 7A 1A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 1B FD D3 FC AB 8A F5 FA D1 A5 A5 C9 FE B1 BE B4 CA A2 8A A2 8A A2 8A A2 8A 3D 2A 2A 4A A2 8A A2 8A A2 8A A2 8A 2B DE E8 A2 8A A2 8A A2 8A A2 8A A2 BE E9 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF D6 7D E3 E8 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DC 6F F7 4F F2 AE 2B D7 EB 1E 0D 1E 9B FA C6 FA D3 A2 8A A2 8A A2 8A A2 8A A0 F4 A8 A9 A2 8A A2 8A A2 8A A2 8A AF 7B A2 8A A2 8A A2 8A A2 8A A2 8A FB A6 A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD D3 8D F7 8D A1 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF BF DD 3F CA B8 AF 5F AD 7A 7A 6C 9F EB 1B EB 4C A2 8A A2 8A A2 8A A2 8A A2 D2 A2 A4 A2 8A A2 8A A2 8A A2 8A A2 BD EE 8A A2 8A A2 8A A2 8A A2 8A 1B EE 9A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 4D DE 1E A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD C6 FF FF 2A E2 BD 7E B4 E9 D1 E9 B2 7F AC 6F AD 8A A2 8A A2 8A A2 8A A2 8A 0F 4A 8A 8A A2 8A A2 8A A2 8A A2 8A F7 BA A2 8A A2 8A A2 8A A2 8A A4 6F BA 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DD DF D2 7A 1A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 1B FD D3 FC AB 8A F5 FA D1 A5 A5 C9 FE B1 BE B4 CA A2 8A A2 8A A2 8A A2 8A 3D 2A 2A 4A A2 8A A2 8A A2 8A A2 8A 2B DE E8 A2 8A A2 8A A2 8A A2 8A A2 BE E9 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF D6 7D E3 E8 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DC 6F F7 4F F2 AE 2B D7 EB 1E 0D 1E 9B FA C6 FA D3 A2 8A A2 8A A2 8A A2 8A A0 F4 A8 A9 A2 8A A2 8A A2 8A A2 8A AF 7B A2 8A A2 8A A2 8A A2 8A A2 8A FB A6 A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD D3 8D F7 8D A1 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF BF DD 3F CA B8 AF 5F AD 7A 7A 6C 9F EB 1B EB 4C A2 8A A2 8A A2 8A A2 8A A2 D2 A2 A4 A2 8A A2 8A A2 8A A2 8A A2 BD EE 8A A2 8A A2 8A A2 8A A2 8A 1B EE 9A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 4D DE 1E A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD C6 FF FF 2A E2 BD 7E B4 E9 D1 E9 B2 7F AC 6F AD 8A A2 8A A2 8A A2 8A A2 8A 0F 4A 8A 8A A2 8A A2 8A A2 8A A2 8A F7 BA A2 8A A2 8A A2 8A A2 8A A4 6F BA 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DD DF D2 7A 1A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 1B FD D3 FC AB 8A F5 FA D1 A5 A5 C9 FE B1 BE B4 CA A2 8A A2 8A A2 8A A2 8A 3D 2A 2A 4A A2 8A A2 8A A2 8A A2 8A 2B DE E8 A2 8A A2 8A A2 8A A2 8A A2 BE E9 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF D6 7D E3 E8 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DC 6F F7 4F F2 AE 2B D7 EB 1E 0D 1E 9B FA C6 FA D3 A2 8A A2 8A A2 8A A2 8A A0 F4 A8 A9 A2 8A A2 8A A2 8A A2 8A AF 7B A2 8A A2 8A A2 8A A2 8A A2 8A FB A6 A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD D3 8D F7 8D A1 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF BF DD 3F CA B8 AF 5F AD 7A 7A 6C 9F EB 1B EB 4C A2 8A A2 8A A2 8A A2 8A A2 D2 A2 A4 A2 8A A2 8A A2 8A A2 8A A2 BD EE 8A A2 8A A2 8A A2 8A A2 8A 1B EE 9A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 4D DE 1E A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD C6 FF FF 2A E2 BD 7E B4 E9 D1 E9 B2 7F AC 6F AD 8A A2 8A A2 8A A2 8A A2 8A 0F 4A 8A 8A A2 8A A2 8A A2 8A A2 8A F7 BA A2 8A A2 8A A2 8A A2 8A A4 6F BA 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DD DF D2 7A 1A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 1B FD D3 FC AB 8A F5 FA D1 A5 A5 C9 FE B1 BE B4 CA A2 8A A2 8A A2 8A A2 8A 3D 2A 2A 4A A2 8A A2 8A A2 8A A2 8A 2B DE E8 A2 8A A2 8A A2 8A A2 8A A2 BE E9 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF D6 7D E3 E8 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DC 6F F7 4F F2 AE 2B D7 EB 1E 0D 1E 9B FA C6 FA D3 A2 8A A2 8A A2 8A A2 8A A0 F4 A8 A9 A2 8A A2 8A A2 8A A2 8A AF 7B A2 8A A2 8A A2 8A A2 8A A2 8A FB A6 A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD D3 8D F7 8D A1 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF BF DD 3F CA B8 AF 5F AD 7A 7A 6C 9F EB 1B EB 4C A2 8A A2 8A A2 8A A2 8A A2 D2 A2 A4 A2 8A A2 8A A2 8A A2 8A A2 BD EE 8A A2 8A A2 8A A2 8A A2 8A 1B EE 9A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 4D DE 1E A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD C6 FF FF 2A E2 BD 7E B4 E9 D1 E9 B2 7F AC 6F AD 8A A2 8A A2 8A A2 8A A2 8A 0F 4A 8A 8A A2 8A A2 8A A2 8A A2 8A F7 BA A2 8A A2 8A A2 8A A2 8A A4 6F BA 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DD DF D2 7A 1A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 1B FD D3 FC AB 8A F5 FA D1 A5 A5 C9 FE B1 BE B4 CA A2 8A A2 8A A2 8A A2 8A 3D 2A 2A 4A A2 8A A2 8A A2 8A A2 8A 2B DE E8 A2 8A A2 8A A2 8A A2 8A A2 BE E9 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF D6 7D E3 E8 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DC 6F F7 4F F2 AE 2B D7 EB 1E 0D 1E 9B FA C6 FA D3 A2 8A A2 8A A2 8A A2 8A A0 F4 A8 A9 A2 8A A2 8A A2 8A A2 8A AF 7B A2 8A A2 8A A2 8A A2 8A A2 8A FB A6 A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD D3 8D F7 8D A1 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF BF DD 3F CA B8 AF 5F AD 7A 7A 6C 9F EB 1B EB 4C A2 8A A2 8A A2 8A A2 8A A2 D2 A2 A4 A2 8A A2 8A A2 8A A2 8A A2 BD EE 8A A2 8A A2 8A A2 8A A2 8A 1B EE 9A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 4D DE 1E A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD C6 FF FF 2A E2 BD 7E B4 E9 D1 E9 B2 7F AC 6F AD 8A A2 8A A2 8A A2 8A A2 8A 0F 4A 8A 8A A2 8A A2 8A A2 8A A2 8A F7 BA A2 8A A2 8A A2 8A A2 8A A4 6F BA 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DD DF D2 7A 1A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 1B FD D3 FC AB 8A F5 FA D1 A5 A5 C9 FE B1 BE B4 CA A2 8A A2 8A A2 8A A2 8A 3D 2A 2A 4A A2 8A A2 8A A2 8A A2 8A 2B DE E8 A2 8A A2 8A A2 8A A2 8A A2 BE E9 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF D6 7D E3 E8 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DC 6F F7 4F F2 AE 2B D7 EB 1E 0D 1E 9B FA C6 FA D3 A2 8A A2 8A A2 8A A2 8A A0 F4 A8 A9 A2 8A A2 8A A2 8A A2 8A AF 7B A2 8A A2 8A A2 8A A2 8A A2 8A FB A6 A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD D3 8D F7 8D A1 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF BF DD 3F CA B8 AF 5F AD 7A 7A 6C 9F EB 1B EB 4C A2 8A A2 8A A2 8A A2 8A A2 D2 A2 A4 A2 8A A2 8A A2 8A A2 8A A2 BD EE 8A A2 8A A2 8A A2 8A A2 8A 1B EE 9A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 4D DE 1E A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD C6 FF FF 2A E2 BD 7E B4 E9 D1 E9 B2 7F AC 6F AD 8A A2 8A A2 8A A2 8A A2 8A 0F 4A 8A 8A A2 8A A2 8A A2 8A A2 8A F7 BA A2 8A A2 8A A2 8A A2 8A A4 6F BA 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DD DF D2 7A 1A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 1B FD D3 FC AB 8A F5 FA D1 A5 A5 C9 FE B1 BE B4 CA A2 8A A2 8A A2 8A A2 8A 3D 2A 2A 4A A2 8A A2 8A A2 8A A2 8A 2B DE E8 A2 8A A2 8A A2 8A A2 8A A2 BE E9 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF D6 7D E3 E8 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DC 6F F7 4F F2 AE 2B D7 EB 1E 0D 1E 9B FA C6 FA D3 A2 8A A2 8A A2 8A A2 8A A0 F4 A8 A9 A2 8A A2 8A A2 8A A2 8A AF 7B A2 8A A2 8A A2 8A A2 8A A2 8A FB A6 A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD D3 8D F7 8D A1 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF BF DD 3F CA B8 AF 5F AD 7A 7A 6C 9F EB 1B EB 4C A2 8A A2 8A A2 8A A2 8A A2 D2 A2 A4 A2 8A A2 8A A2 8A A2 8A A2 BD EE 8A A2 8A A2 8A A2 8A A2 8A 1B EE 9A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 4D DE 1E A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD C6 FF FF 2A E2 BD 7E B4 E9 D1 E9 B2 7F AC 6F AD 8A A2 8A A2 8A A2 8A A2 8A 0F 4A 8A 8A A2 8A A2 8A A2 8A A2 8A F7 BA A2 8A A2 8A A2 8A A2 8A A4 6F BA 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DD DF D2 7A 1A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 1B FD D3 FC AB 8A F5 FA D1 A5 A5 C9 FE B1 BE B4 CA A2 8A A2 8A A2 8A A2 8A 3D 2A 2A 4A A2 8A A2 8A A2 8A A2 8A 2B DE E8 A2 8A A2 8A A2 8A A2 8A A2 BE E9 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF D6 7D E3 E8 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DC 6F F7 4F F2 AE 2B D7 EB 1E 0D 1E 9B FA C6 FA D3 A2 8A A2 8A A2 8A A2 8A A0 F4 A8 A9 A2 8A A2 8A A2 8A A2 8A AF 7B A2 8A A2 8A A2 8A A2 8A A2 8A FB A6 A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD D3 8D F7 8D A1 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF BF DD 3F CA B8 AF 5F AD 7A 7A 6C 9F EB 1B EB 4C A2 8A A2 8A A2 8A A2 8A A2 D2 A2 A4 A2 8A A2 8A A2 8A A2 8A A2 BD EE 8A A2 8A A2 8A A2 8A A2 8A 1B EE 9A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 4D DE 1E A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD C6 FF FF 2A E2 BD 7E B4 E9 D1 E9 B2 7F AC 6F AD 8A A2 8A A2 8A A2 8A A2 8A 0F 4A 8A 8A A2 8A A2 8A A2 8A A2 8A F7 BA A2 8A A2 8A A2 8A A2 8A A4 6F BA 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DD DF D2 7A 1A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 1B FD D3 FC AB 8A F5 FA D1 A5 A5 C9 FE B1 BE B4 CA A2 8A A2 8A A2 8A A2 8A 3D 2A 2A 4A A2 8A A2 8A A2 8A A2 8A 2B DE E8 A2 8A A2 8A A2 8A A2 8A A2 BE E9 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF D6 7D E3 E8 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DC 6F F7 4F F2 AE 2B D7 EB 1E 0D 1E 9B FA C6 FA D3 A2 8A A2 8A A2 8A A2 8A A0 F4 A8 A9 A2 8A A2 8A A2 8A A2 8A AF 7B A2 8A A2 8A A2 8A A2 8A A2 8A FB A6 A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD D3 8D F7 8D A1 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF BF DD 3F CA B8 AF 5F AD 7A 7A 6C 9F EB 1B EB 4C A2 8A A2 8A A2 8A A2 8A A2 D2 A2 A4 A2 8A A2 8A A2 8A A2 8A A2 BD EE 8A A2 8A A2 8A A2 8A A2 8A 1B EE 9A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 4D DE 1E A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD C6 FF FF 2A E2 BD 7E B4 E9 D1 E9 B2 7F AC 6F AD 8A A2 8A A2 8A A2 8A A2 8A 0F 4A 8A 8A A2 8A A2 8A A2 8A A2 8A F7 BA A2 8A A2 8A A2 8A A2 8A A4 6F BA 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DD DF D2 7A 1A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 1B FD D3 FC AB 8A F5 FA D1 A5 A5 C9 FE B1 BE B4 CA A2 8A A2 8A A2 8A A2 8A 3D 2A 2A 4A A2 8A A2 8A A2 8A A2 8A 2B DE E8 A2 8A A2 8A A2 8A A2 8A A2 BE E9 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF D6 7D E3 E8 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DC 6F F7 4F F2 AE 2B D7 EB 1E 0D 1E 9B FA C6 FA D3 A2 8A A2 8A A2 8A A2 8A A0 F4 A8 A9 A2 8A A2 8A A2 8A A2 8A AF 7B A2 8A A2 8A A2 8A A2 8A A2 8A FB A6 A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD D3 8D F7 8D A1 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF BF DD 3F CA B8 AF 5F AD 7A 7A 6C 9F EB 1B EB 4C A2 8A A2 8A A2 8A A2 8A A2 D2 A2 A4 A2 8A A2 8A A2 8A A2 8A A2 BD EE 8A A2 8A A2 8A A2 8A A2 8A 1B EE 9A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 4D DE 1E A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD C6 FF FF 2A E2 BD 7E B4 E9 D1 E9 B2 7F AC 6F AD 8A A2 8A A2 8A A2 8A A2 8A 0F 4A 8A 8A A2 8A A2 8A A2 8A A2 8A F7 BA A2 8A A2 8A A2 8A A2 8A A4 6F BA 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DD DF D2 7A 1A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 1B FD D3 FC AB 8A F5 FA D1 A5 A5 C9 FE B1 BE B4 CA A2 8A A2 8A A2 8A A2 8A 3D 2A 2A 4A A2 8A A2 8A A2 8A A2 8A 2B DE E8 A2 8A A2 8A A2 8A A2 8A A2 BE E9 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF D6 7D E3 E8 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DC 6F F7 4F F2 AE 2B D7 EB 1E 0D 1E 9B FA C6 FA D3 A2 8A A2 8A A2 8A A2 8A A0 F4 A8 A9 A2 8A A2 8A A2 8A A2 8A AF 7B A2 8A A2 8A A2 8A A2 8A A2 8A FB A6 A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD D3 8D F7 8D A1 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF BF DD 3F CA B8 AF 5F AD 7A 7A 6C 9F EB 1B EB 4C A2 8A A2 8A A2 8A A2 8A A2 D2 A2 A4 A2 8A A2 8A A2 8A A2 8A A2 BD EE 8A A2 8A A2 8A A2 8A A2 8A 1B EE 9A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 4D DE 1E A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD C6 FF FF 2A E2 BD 7E B4 E9 D1 E9 B2 7F AC 6F AD 8A A2 8A A2 8A A2 8A A2 8A 0F 4A 8A 8A A2 8A A2 8A A2 8A A2 8A F7 BA A2 8A A2 8A A2 8A A2 8A A4 6F BA 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DD DF D2 7A 1A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 1B FD D3 FC AB 8A F5 FA D1 A5 A5 C9 FE B1 BE B4 CA A2 8A A2 8A A2 8A A2 8A 3D 2A 2A 4A A2 8A A2 8A A2 8A A2 8A 2B DE E8 A2 8A A2 8A A2 8A A2 8A A2 BE E9 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF D6 7D E3 E8 6A 2A A2 8A A2 8A A2 8A A2 8A A6 BF DC 6F F7 4F F2 AE 2B D7 EB 1E 0D 1E 9B FA C6 FA D3 A2 8A A2 8A A2 8A A2 8A A0 F4 A8 A9 A2 8A A2 8A A2 8A A2 8A AF 7B A2 8A A2 8A A2 8A A2 8A A2 8A FB A6 A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD D3 8D F7 8D A1 A8 A8 A2 8A A2 8A A2 8A A2 8A A2 9A FF BF DD 3F CA B8 AF 5F AD 7A 7A 6C 9F EB 1B EB 4C A2 8A A2 8A A2 8A A2 8A A2 D2 A2 A4 A2 8A A2 8A A2 8A A2 8A A2 BD EE 8A A2 8A A2 8A A2 8A A2 8A 1B EE 9A 8A 8A A2 8A A2 8A A2 8A A2 8A AF F7 4D DE 1E A2 A2 8A A2 8A A2 8A A2 8A A2 8A 6B FD C6 FF FF 2A E2 BD 7E B4 E9 D1 E9 B2 7F AC 6F AD 8A A2 8A A2 8A A2 8A A2 8A 0F 4A 8A 8A A2 8A A2 8A A2 8A A2 8A F5 8F F8 4A 8F FC F9 7F E4 5F FE C6 A0 FF B2 EB FE B0 7F E0 FF E2 2A 7F F8 4A FC F9 FF E4 5F FE B5 FC 2F FF 3E 1F F9 1B FF AD FF C2 6B FC F9 CB FF 7C BF FF 7F C2 3F E7 CF FF 7F F6 FC 6F FF 7B 8F FB F8 B5 2F FC C7 FE EF FF 7D 9F FE FF 9F F4 0F 5F FB FE 7F F8 8A FE B3 FF 3E FE FE FF F5 AA 0F F8 4D FE D3 7E 4F FF C4 FF C2 5B FF C8 BF F0 BF F8 DD 1F F0 DD 7F D0 1F FC 0A 3F FC FE 3F E8 2F FD FF 4A B3 FF FF 9F 2F FC 8B FF D8 D4 3F F0 4B FF BF EF F2 7F E1 2D BB FF A0 5C 5F F8 7F F8 8A FE D7 FF A0 6B FF DF D1 FE 7F C2 5E DF F4 0D 7F FB FC B4 A7 C5 A0 8F F8 F3 FF C8 BF FD 6A AF FF 7B FF D0 2A 6F FB FA 9F E3 FF C2 3F E7 D4 7F DF DF FE C6 A9 7F C2 6E 7F E8 0D FE 7F 0A BB FF 4A FF CF BA 7F DF EF FE B5 FE C5 FF 9F FF 7F F8 FF FD 0F FB FE 3F C2 FE A9 7F E8 1B FF C7 F8 FF 5B 7F CF FF BF FF A3 FE B7 FF A0 FF BF E3 FC FF F0 FF D3 8B 7F DF D1 FF FF 9F 2F FC 8B FF D6 A8 FF E1 BA FF A0 6C 3F F8 7F F8 8A 7F FC A9 FF 3E 9F F9 7F FF FF F4 0E FF FF FB 0A FE D3 FF E9 3F EF BF FE B5 FF FF 9F FF 7D 9F FE A1 FF AA EB FE B1 7F E0 FF E2 DF F0 7F D3 AC 7F F7 FF FF B1 A7 FF C2 BF F3 EA BF F7 F7 FF B1 AA C6 A4 FB FF C7 FF F1 1C F6 BF EF DB FF F1 2F F6 D0 FF 9E 1F F8 FF FF 5A AA FF C2 4C 7F E7 C2 4F FB FC 9F E3 FF 6F A7 FC F1 1F F7 F3 FF AD 7F 6C 1F F9 F7 1F F7 DF FF 5A AB 7F C2 DF F4 0F FE FE A7 F8 D1 FF 0C FF F4 0A 9B FE FE 2D FE D9 5F F9 E3 FF 8F FF F5 A9 BF DB 2D FF 3E A3 FE FE 7F F5 A9 3F B7 FC F0 FF C7 FF FA D4 7F 6E 1F F9 F5 FF C8 A0 FF 7F E7 C6 E3 FE F8 6F FE A2 FF 9A 7F FA 1F FB EA 4F FE FF C2 4D 6D EB FD FF 1F E1 4E FE DF FE 7F DF C4 FF 1A FB BF E7 DB FF 7F F5 A9 3F B6 9B FE 7D 4F FD F7 FF D6 A3 FB 7F CF FF 7D FF F5 AA 0F ED EB 9F F9 F2 FF 1B FF A9 4E B4 C4 7F C7 BA 7F DF DF FE C6 FB 7F E7 FF BE BF FA D4 BF DA E3 FE 0F FB EF FF AD F6 B7 FD FF C7 FF FA D5 FE 5F FA FF 7F FD 8D 5C FE D8 FF A6 1F F8 FF FF 5A A1 FE DA BA FF 9F FF EF F3 7F F1 3F F6 B3 7F CF B7 FE 3F FF D6 A8 3F B6 EE 7F E7 CA 2F FB FE 7F F8 8A FB 6D 3F E7 DD FF 5F F0 A5 FE DA 5F F9 E0 DF 9F FF 5A A1 FE DF 7F FA 4D FF 7F FC 7F E1 B6 FE F4 1F F7 FC 9F DB 5F F4 C3 FF 1F FF EB 5F DB 3F F3 E5 1F FD FE 6F FE A6 FE D8 1F F3 C1 BF 5F F0 A7 7F 6B 1F F9 E1 FF 8F FF F5 A9 3F B5 FF E9 FF BE FF FA D5 1F F6 C4 BF F3 E8 BF F7 F4 FF F1 CF F8 FE 7D FF BE 1F FF A6 A9 1F D9 F2 F2 FE B1 3F C6 B9 ED F7 7F F3 E8 3F EF F2 D5 9C DA FF CF EC 3F F7 D0 A8 B6 5F FF CF FF BF A2 AE 7D FD A6 FF BE 7F FA F4 7D FD A6 FF BE 7F FA F4 DF B3 9F EF 7E BF D5 7E C6 DF DE FD 0D 2F D8 8F F7 FF 4F FE BD EC CB FF 3D FD F2 3C FF 9E FE F8 BF 3E A7 FE F9 A4 FB FB 5F A5 EC B7 5F DD FE FE 1F FE A6 FB FF CF 5F FC 9B F6 EA 7F EF 9A 5F B2 0F F9 E8 7F EF 4C FB FF 6B FE F8 BF 1F DE 6F FB F6 FF 3F DE 6F FB E6 A1 FB FF 9E FE FD B5 2F D8 FC F4 3F F7 CF FF 5E EC 3F F4 D3 FF 1D 1F 0F FC F7 FF C7 FF 4F F9 F8 4F D3 FC FB 0B 7F BF EF 9A 6F D9 0F FB 7F F7 C8 FF 1A 3E C6 7D 4F E9 FE 1F D9 A6 FF 9E FE FF C5 FE C8 DF F3 D2 3F FB EA A9 C7 FE 7D EE 3F EF DD 7D FE 9A 9F FB E0 D5 6D B1 FF 7A 6F FB F0 DF E1 FD 8C 7F CF FF 7C FF F5 E9 7F B3 DB FB FF A5 2F D8 FC F6 1F 2F F6 FD FF C7 6A BF FC F4 9B FF DF FC 2A 6F EC F6 FE FF E9 1B 2B A3 DA 2F FB E9 BF F8 9A AA D6 AC C4 FF C3 CF D3 FC 6A 6F EC FF 3F FE F8 1F E3 4E FE C1 FF A7 8F FC FF AF BF B3 FB F7 1F F8 0A D5 F6 3F FD 6F FB F4 6A 5F EC FF 3F FE F8 FF EB D2 7F 1F F9 F9 5F FB E7 FF AF 7F DD 7F 7A 2F CD BF C2 A7 FE C3 FF A7 FF BE 7F FA F5 0F F6 4C BF DD 9B FE F9 4F FE 2E FB 2A 4F EE 4F FF 7C FF 7F AF FC FC FF E4 7F CB FD D9 3F FF E2 EA 6F EC FF 3D 5F FE FD 8F F1 A4 FE C6 3F F3 D1 FF EF D8 FF E2 AA 2F EC F8 FF E7 B4 DF F8 0C D5 3F F6 1B 7F CF 7F FC FF 8D FB FF 9F CB 3F FB FA 7F C2 AC 7F 0F F9 EF FF 8E 8F F1 A7 7F AF FC FC 1F FB E0 7F 8D FB BF E7 B1 FF BE F8 D2 FF 9F F9 F8 3F F7 EF FF AF FE C7 FC FC 7E B1 FF F1 2F F6 DF AC 5F F7 DD 4F FD FF 4F FE FD FF F5 EA BF F6 D7 FD FF BE BF FA D5 2F F6 BF F3 D4 7E FC DF D8 2D FF 3F FE F8 BF D8 5F F4 F0 7F EF DF FF 5E A8 FD FE 9E AD 7F EF ED 4F FD BF F3 D6 6F FC 7A 9F FB 7F CF CB FF DF FE 9F D8 FE 7E FD FB EF EC 0F FA FF C7 3F FA F4 7F C2 3F FF 4F 3F F9 0F FF AF FD 3F E7 EC 7F DF BF FE BD 2F F6 FD 3C FF E4 3F FE BD 1F D8 FF 3F 9F F9 0F FF AF 7F DB 7F D0 4A 1F D3 FC 6B FF D9 5A 5A 5A 5A 5A 5A 5A 5A
① FFD8 图像开始
② FFE0 APP0段 0010 段长度0x10
③ FFDB 量化表 0x43 段长度0x43
④ FFC0 帧开始 0x0b
⑤ FFC4 霍夫曼表 亮度色度的霍夫曼表
⑥ FFDA 扫描线开始
⑦ FFD9 图像结束
jpeg相关知识的更多相关文章
- 【Python五篇慢慢弹(5)】类的继承案例解析,python相关知识延伸
类的继承案例解析,python相关知识延伸 作者:白宁超 2016年10月10日22:36:57 摘要:继<快速上手学python>一文之后,笔者又将python官方文档认真学习下.官方给 ...
- 移动WEB像素相关知识
了解移动web像素的知识,主要是为了切图时心中有数.本文主要围绕一个问题:怎样根据设备厂商提供的屏幕尺寸和物理像素得到我们切图需要的逻辑像素?围绕这个问题以iphone5为例讲解涉及到的web像素相关 ...
- listener监听器的相关知识
从别人的博客上我学习了listener的相关知识现在分享给大家 1.概念: 监听器就是一个实现特定接口的普通java程序,这个程序专门用于监听另一个java对象的方法调用或属性改变,当被监听对象发生上 ...
- UIViewController相关知识
title: UIViewController 相关知识date: 2015-12-13 11:50categories: IOS tags: UIViewController 小小程序猿我的博客:h ...
- 【转】java NIO 相关知识
原文地址:http://www.iteye.com/magazines/132-Java-NIO Java NIO(New IO)是从Java 1.4版本开始引入的一个新的IO API,可以替代标准的 ...
- NSString使用stringWithFormat拼接的相关知识
NSString使用stringWithFormat拼接的相关知识 保留2位小数点 1 2 3 4 //.2代表小数点后面保留2位(2代表保留的数量) NSString *string = [NSSt ...
- iOS网络相关知识总结
iOS网络相关知识总结 1.关于请求NSURLRequest? 我们经常讲的GET/POST/PUT等请求是指我们要向服务器发出的NSMutableURLRequest的类型; 我们可以设置Reque ...
- 电路相关知识--读<<继电器是如何成为CPU的>>
电路相关知识–读<<继电器是如何成为CPU的>> */--> *///--> *///--> 电路相关知识–读<<继电器是如何成为CPU的> ...
- 地址标记,SpringMVC转发与调用相关知识存档
1.mytest_mavenprj1中,index的 <a href="login/login.html">点击登录</a> 与 <a href=&q ...
随机推荐
- hdu 1281 二分图最大匹配
对N个可以放棋子的点(X1,Y1),(x2,Y2)......(Xn,Yn);我们把它竖着排看看~(当然X1可以对多个点~) X1 Y1 X2 Y2 X3 Y3 ..... Xn Yn ...
- Tomcat使用详解
Tomcat简介 官网:http://tomcat.apache.org/ Tomcat GitHub 地址:https://github.com/apache/tomcat Tomcat是Apach ...
- asp:Repeater实例备忘
1.前置部分 <asp:Repeater ID="rptPlanNo" runat="server" OnItemDataBound="rptP ...
- Redis Cluster 介绍与使用
Redis Cluster 功能特性 Redis 集群是分布式的redis 实现,具有以下特性: 1. 高可用性与可线性扩张到1000个节点 2. 数据自动路由到多个节点 3. 节点间数据共享 4. ...
- Linux下多线程下载利器 axel
参考 https://teddysun.com/377.html 使用示例: axel -an https://ubuntu-mate.org/raspberry-pi/ubuntu-mate-16. ...
- STM32F412应用开发笔记之六:使用片上Flash存储参数
我们的项目中需要保存一些系统配置参数,这些数据的特点是:数量少而且不需要经常修改,但又不能定义为常量,因为每台设备可能不一样而且在以后还有修改的可能.这就需要考虑这些参数保存的问题.将这类数据存在指定 ...
- C++开始前篇,深入编译链接(补充2)
在开始链接之前,我们先了解几个概念: 一>符号的概念. 我们知道,链接的最重要的是"对符号的重定位",而且上面提到了符号表,那什么是符号呢,在链接中,我们将函数和变量统称为符 ...
- pygame学习笔记
pygame参考文档pdf版:pygame API html版 pygame API 石头剪子布的简单小游戏,待改进的地方,自适应大小.感兴趣的小伙伴可以依据get_surface()返回值(即当前窗 ...
- 【JavaScript】ES6 新语法
function* 声明 function* 声明(function关键字后跟一个星号)定义一个generator(生成器)函数,返回一个Generator对象. 生成器是一种可以从中退出并在之后重新 ...
- 设计模式之单例模式Singleton(三创建型)
1.什么事单例模式? 单例模式确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例. 单例模式有以下特点: 1.单例类只能有一个实例. 2.单例类必须自己创建自己的唯一实例. 3.单例类必须 ...