Переглянути джерело

Update the routines of the 2.9inch V2 e-Paper to add a four-grayscale display

shhds 2 роки тому
батько
коміт
8316a45335
33 змінених файлів з 3111 додано та 1041 видалено
  1. 151 0
      Arduino/epd2in9_V2/epd2in9_V2.cpp
  2. 3 1
      Arduino/epd2in9_V2/epd2in9_V2.h
  3. 49 17
      Arduino/epd2in9_V2/epd2in9_V2.ino
  4. 1 1
      Arduino/epd2in9_V2/epdif.h
  5. 596 0
      Arduino/epd2in9_V2/imagedata.cpp
  6. 1 0
      Arduino/epd2in9_V2/imagedata.h
  7. 51 5
      RaspberryPi_JetsonNano/c/examples/EPD_2in9_V2_test.c
  8. 142 2
      RaspberryPi_JetsonNano/c/lib/e-Paper/EPD_2in9_V2.c
  9. 4 3
      RaspberryPi_JetsonNano/c/lib/e-Paper/EPD_2in9_V2.h
  10. BIN
      RaspberryPi_JetsonNano/c/pic/2in9_Scale.bmp
  11. 1 0
      RaspberryPi_JetsonNano/python/examples/epd_2in7_V2_test.py
  12. 28 1
      RaspberryPi_JetsonNano/python/examples/epd_2in9_V2_test.py
  13. BIN
      RaspberryPi_JetsonNano/python/lib/waveshare_epd/__init__.pyc
  14. BIN
      RaspberryPi_JetsonNano/python/lib/waveshare_epd/epd2in7.pyc
  15. BIN
      RaspberryPi_JetsonNano/python/lib/waveshare_epd/epd2in7_V2.pyc
  16. 167 0
      RaspberryPi_JetsonNano/python/lib/waveshare_epd/epd2in9_V2.py
  17. BIN
      RaspberryPi_JetsonNano/python/lib/waveshare_epd/epd2in9_V2.pyc
  18. BIN
      RaspberryPi_JetsonNano/python/lib/waveshare_epd/epdconfig.pyc
  19. BIN
      RaspberryPi_JetsonNano/python/pic/2in9_Scale.bmp
  20. 4 5
      STM32/STM32-F103ZET6/MDK-ARM/epd-demo.uvguix.liuyujian
  21. 3 3
      STM32/STM32-F103ZET6/MDK-ARM/epd-demo.uvoptx
  22. 5 39
      STM32/STM32-F103ZET6/MDK-ARM/epd-demo/epd-demo.build_log.htm
  23. 550 460
      STM32/STM32-F103ZET6/MDK-ARM/epd-demo/epd-demo.htm
  24. 535 464
      STM32/STM32-F103ZET6/MDK-ARM/epd-demo/epd-demo.map
  25. 5 5
      STM32/STM32-F103ZET6/MDK-ARM/startup_stm32f103xe.lst
  26. 8 8
      STM32/STM32-F103ZET6/User/Examples/EPD_2in7_V2_test.c
  27. 49 2
      STM32/STM32-F103ZET6/User/Examples/EPD_2in9_V2_test.c
  28. 594 0
      STM32/STM32-F103ZET6/User/Examples/ImageData.c
  29. 1 0
      STM32/STM32-F103ZET6/User/Examples/ImageData.h
  30. 155 20
      STM32/STM32-F103ZET6/User/e-Paper/EPD_2in9_V2.c
  31. 4 3
      STM32/STM32-F103ZET6/User/e-Paper/EPD_2in9_V2.h
  32. 2 1
      Version_CN.txt
  33. 2 1
      Version_EN.txt

+ 151 - 0
Arduino/epd2in9_V2/epd2in9_V2.cpp

@@ -73,6 +73,29 @@ unsigned char WS_20_30[159] =
 0x22,	0x17,	0x41,	0x0,	0x32,	0x36
 };	
 
+unsigned char Gray4[159] =			
+{											
+0x00,	0x60,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	//VS L0	 //2.28s			
+0x20,	0x60,	0x10,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	//VS L1				
+0x28,	0x60,	0x14,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	//VS L2				
+0x2A,	0x60,	0x15,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	//VS L3 				
+0x00,	0x90,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	//VS L4 				
+0x00,	0x02,	0x00,	0x05,	0x14,	0x00,	0x00,						//TP, SR, RP of Group0				
+0x1E,	0x1E,	0x00,	0x00,	0x00,	0x00,	0x01,						//TP, SR, RP of Group1				
+0x00,	0x02,	0x00,	0x05,	0x14,	0x00,	0x00,						//TP, SR, RP of Group2				
+0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,						//TP, SR, RP of Group3				
+0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,						//TP, SR, RP of Group4				
+0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,						//TP, SR, RP of Group5				
+0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,						//TP, SR, RP of Group6				
+0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,						//TP, SR, RP of Group7				
+0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,						//TP, SR, RP of Group8				
+0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,						//TP, SR, RP of Group9				
+0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,						//TP, SR, RP of Group10				
+0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,						//TP, SR, RP of Group11				
+0x24,	0x22,	0x22,	0x22,	0x23,	0x32,	0x00,	0x00,	0x00,				//FR, XON				
+0x22,	0x17,	0x41,	0xAE,	0x32,	0x28,							//EOPT VGH VSH1 VSH2 VSL VCOM				
+};
+
 Epd::~Epd() {
 };
 
@@ -120,6 +143,40 @@ int Epd::Init() {
     return 0;
 }
 
+int Epd::Init_4Gray() {
+    /* this calls the peripheral hardware interface, see epdif */
+    if (IfInit() != 0) {
+        return -1;
+    }
+	
+	Reset();
+	
+    /* EPD hardware init start */
+	WaitUntilIdle();   
+	SendCommand(0x12);  //SWRESET
+	WaitUntilIdle();   
+	
+	SendCommand(0x01); //Driver output control      
+	SendData(0x27);
+	SendData(0x01);
+	SendData(0x00);
+	
+	SendCommand(0x11); //data entry mode       
+	SendData(0x03);
+
+	SetMemoryArea(8, 0, width, height-1);
+
+	SendCommand(0x3C); 
+	SendData(0x04);
+
+	SetMemoryPointer(8, 0);
+	WaitUntilIdle();
+
+  SetLut_by_host(Gray4);
+  /* EPD hardware init end */
+  return 0;
+}
+
 /**
  *  @brief: basic function for sending commands
  */
@@ -331,6 +388,100 @@ void Epd::ClearFrameMemory(unsigned char color) {
     for (int i = 0; i < this->width / 8 * this->height; i++) {
         SendData(color);
     }
+
+    SendCommand(0x26);
+    /* send the color data */
+    for (int i = 0; i < this->width / 8 * this->height; i++) {
+        SendData(color);
+    }
+}
+
+void Epd::Display4Gray(const unsigned char *Image)
+{
+    int i,j,k;
+    unsigned char temp1,temp2,temp3;
+
+    SendCommand(0x24);	       
+    for(i=0;i<4736;i++)	     
+    {
+        temp3=0;
+        for(j=0;j<2;j++)	
+        {
+            temp1 = pgm_read_byte(&Image[i*2+j]);
+            for(k=0;k<2;k++)	
+            {
+                temp2 = temp1&0xC0 ;
+                if(temp2 == 0xC0)
+                    temp3 |= 0x00;//white
+                else if(temp2 == 0x00)
+                    temp3 |= 0x01;  //black
+                else if(temp2 == 0x80) 
+                    temp3 |= 0x01;  //gray1
+                else //0x40
+                    temp3 |= 0x00; //gray2
+                temp3 <<= 1;	
+                
+                temp1 <<= 2;
+                temp2 = temp1&0xC0 ;
+                if(temp2 == 0xC0)  //white
+                    temp3 |= 0x00;
+                else if(temp2 == 0x00) //black
+                    temp3 |= 0x01;
+                else if(temp2 == 0x80)
+                    temp3 |= 0x01; //gray1
+                else    //0x40
+                        temp3 |= 0x00;	//gray2	
+                if(j!=1 || k!=1)				
+                    temp3 <<= 1;
+                
+                temp1 <<= 2;
+            }
+            
+         }
+        SendData(temp3);			
+    }
+    // new  data
+    SendCommand(0x26);	       
+    for(i=0;i<4736;i++)	  
+    {
+        temp3=0;
+        for(j=0;j<2;j++)	
+        {
+            temp1 = pgm_read_byte(&Image[i*2+j]);
+            for(k=0;k<2;k++)	
+            {
+                temp2 = temp1&0xC0 ;
+                if(temp2 == 0xC0)
+                    temp3 |= 0x00;//white
+                else if(temp2 == 0x00)
+                    temp3 |= 0x01;  //black
+                else if(temp2 == 0x80) 
+                    temp3 |= 0x00;  //gray1
+                else //0x40
+                    temp3 |= 0x01; //gray2
+                temp3 <<= 1;	
+                
+                temp1 <<= 2;
+                temp2 = temp1&0xC0 ;
+                if(temp2 == 0xC0)  //white
+                    temp3 |= 0x00;
+                else if(temp2 == 0x00) //black
+                    temp3 |= 0x01;
+                else if(temp2 == 0x80)
+                    temp3 |= 0x00; //gray1
+                else    //0x40
+                    temp3 |= 0x01;	//gray2
+                if(j!=1 || k!=1)					
+                    temp3 <<= 1;
+                
+                temp1 <<= 2;
+            }
+            
+         }
+        SendData(temp3);	
+    }
+
+    DisplayFrame();
 }
 
 /**

+ 3 - 1
Arduino/epd2in9_V2/epd2in9_V2.h

@@ -41,6 +41,7 @@ public:
     Epd();
     ~Epd();
     int  Init();
+    int Init_4Gray(void);
     void SendCommand(unsigned char command);
     void SendData(unsigned char data);
     void WaitUntilIdle(void);
@@ -63,7 +64,8 @@ public:
     void SetFrameMemory_Base(const unsigned char* image_buffer);
     void ClearFrameMemory(unsigned char color);
     void DisplayFrame(void);
-	void DisplayFrame_Partial(void);
+	  void DisplayFrame_Partial(void);
+    void Display4Gray(const unsigned char *Image);
     void Sleep(void);
 
 private:

+ 49 - 17
Arduino/epd2in9_V2/epd2in9_V2.ino

@@ -1,4 +1,4 @@
-/**
+  /**
  *  @filename   :   epd2in9_V2-demo.ino
  *  @brief      :   2.9inch e-paper V2 display demo
  *  @author     :   Yehui from Waveshare
@@ -43,6 +43,7 @@ Paint paint(image, 0, 0);    // width should be the multiple of 8
 Epd epd;
 unsigned long time_start_ms;
 unsigned long time_now_s;
+char time_string[] = {'0', '0', ':', '0', '0', '\0'};
 
 void setup() {
   // put your setup code here, to run once:
@@ -51,7 +52,8 @@ void setup() {
       Serial.print("e-Paper init failed");
       return;
   }
-  
+
+#if 1
   epd.ClearFrameMemory(0xFF);   // bit set = white, bit reset = black
   epd.DisplayFrame();
   
@@ -91,7 +93,9 @@ void setup() {
   epd.DisplayFrame();
 
   delay(2000);
+#endif
 
+#if 1
   if (epd.Init() != 0) {
       Serial.print("e-Paper init failed ");
       return;
@@ -105,27 +109,55 @@ void setup() {
    */
   epd.SetFrameMemory_Base(IMAGE_DATA);
   epd.DisplayFrame();
+#endif
+
+#if 0
+  Serial.print("show 4-gray image\r\n");
+  if (epd.Init_4Gray() != 0) {
+      Serial.print("e-Paper init failed ");
+      return;
+  }
+  epd.Display4Gray(IMAGE_DATA_4Gray);
+#endif
 
+#if 0
+  if (epd.Init() != 0) {
+      Serial.print("e-Paper init failed");
+      return;
+  }
+
+  epd.ClearFrameMemory(0xFF);   // bit set = white, bit reset = black
+  epd.DisplayFrame();
+  
   time_start_ms = millis();
+  
+  // put your main code here, to run repeatedly:
+
+  for(;;){
+    time_now_s = (millis() - time_start_ms) / 1000;
+    time_string[0] = time_now_s / 60 / 10 + '0';
+    time_string[1] = time_now_s / 60 % 10 + '0';
+    time_string[3] = time_now_s % 60 / 10 + '0';
+    time_string[4] = time_now_s % 60 % 10 + '0';
+
+    paint.SetWidth(32);
+    paint.SetHeight(96);
+    paint.SetRotate(ROTATE_90);
+  
+    paint.Clear(UNCOLORED);
+    paint.DrawStringAt(0, 4, time_string, &Font24, COLORED);
+    epd.SetFrameMemory_Partial(paint.GetImage(), 80, 72, paint.GetWidth(), paint.GetHeight());
+    epd.DisplayFrame_Partial();
+  }
+#endif
+
+  /* Deep sleep */
+  Serial.print("sleep...");
+  epd.Sleep();
 }
 
 void loop() {
-  // put your main code here, to run repeatedly:
-  time_now_s = (millis() - time_start_ms) / 1000;
-  char time_string[] = {'0', '0', ':', '0', '0', '\0'};
-  time_string[0] = time_now_s / 60 / 10 + '0';
-  time_string[1] = time_now_s / 60 % 10 + '0';
-  time_string[3] = time_now_s % 60 / 10 + '0';
-  time_string[4] = time_now_s % 60 % 10 + '0';
-
-  paint.SetWidth(32);
-  paint.SetHeight(96);
-  paint.SetRotate(ROTATE_90);
 
-  paint.Clear(UNCOLORED);
-  paint.DrawStringAt(0, 4, time_string, &Font24, COLORED);
-  epd.SetFrameMemory_Partial(paint.GetImage(), 80, 72, paint.GetWidth(), paint.GetHeight());
-  epd.DisplayFrame_Partial();
 
   // delay(300);
 }

+ 1 - 1
Arduino/epd2in9_V2/epdif.h

@@ -34,7 +34,7 @@
 #define RST_PIN         8
 #define DC_PIN          9
 #define CS_PIN          10
-#define BUSY_PIN        7
+#define BUSY_PIN        7 
 
 class EpdIf {
 public:

+ 596 - 0
Arduino/epd2in9_V2/imagedata.cpp

@@ -325,3 +325,599 @@ const unsigned char IMAGE_DATA[] PROGMEM = {
 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,
 };
+
+
+const unsigned char IMAGE_DATA_4Gray[9472] PROGMEM= { /* 0X00,0X02,0X80,0X00,0X28,0X01, */
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFE,0X40,0X00,0X00,0X00,0X00,0X3F,
+0XFF,0XFF,0XF0,0XF0,0XF0,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X0C,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XD0,0X00,0X00,0X00,0X00,0X00,0X3F,
+0XFF,0XFF,0XF0,0XF0,0XF0,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XF0,0X00,0X00,0X00,0X00,
+0X0F,0XC0,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFD,0X00,0X00,0X00,0X10,0X00,0X00,0X3F,
+0XFF,0XFF,0XF0,0XF0,0XF0,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X00,0X00,0X00,
+0X0F,0XFC,0X00,0X00,0X00,0X00,0XFF,0XFF,0XE0,0X00,0X00,0X06,0XE0,0X00,0X00,0X3F,
+0XFF,0XFF,0XF0,0XF0,0X00,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,
+0X3F,0XFF,0X00,0X00,0X00,0X00,0XFF,0XFF,0X80,0X00,0X01,0XBF,0XE0,0X00,0X00,0X3F,
+0XFF,0XFF,0XF0,0X03,0X03,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X00,0X00,0X00,
+0X3F,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XFE,0X00,0X00,0X6F,0XFF,0XE0,0X00,0X00,0X3F,
+0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XF0,0X00,0X00,0X00,
+0XFF,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XF8,0X00,0X1B,0XFF,0XFF,0XE0,0X00,0X00,0X3F,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFC,0X00,0X00,0X00,
+0X3F,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XF0,0X00,0X3F,0XFF,0XFE,0X40,0X00,0X00,0X3F,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0X00,0X00,0X00,
+0X03,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XD0,0X00,0X3F,0XFF,0XD0,0X00,0X00,0X00,0X3F,
+0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,
+0X00,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XC0,0X00,0X2F,0XFF,0XF8,0X00,0X00,0X00,0X3F,
+0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XF0,0X00,0X00,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFF,0X40,0X00,0X00,0XBF,0XFF,0XD0,0X00,0X00,0X3F,
+0XFF,0XFF,0XF0,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFC,0X00,0X00,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFF,0X00,0X00,0X00,0X07,0XFF,0XF0,0X00,0X00,0X3F,
+0XFF,0XFF,0XF0,0X0C,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0XFF,0XFF,0XC0,0X00,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFE,0X00,0X00,0X00,0X2F,0XFF,0XF0,0X00,0X00,0X3F,
+0XFF,0XFF,0XF0,0X0F,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X3F,0XFF,0XF0,0X00,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFD,0X00,0X00,0X07,0XFF,0XFF,0XD0,0X00,0X00,0X3F,
+0XFF,0XFF,0XF3,0XCF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X0F,0XFF,0XFC,0X00,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFC,0X00,0X00,0X3F,0XFF,0XF8,0X00,0X00,0X00,0X3F,
+0XFF,0XFF,0XF0,0XCF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X03,0XFF,0XFF,0X00,
+0X00,0XFF,0XFC,0X00,0X00,0X00,0XFC,0X00,0X00,0X3F,0XFF,0X80,0X00,0X00,0X00,0X3F,
+0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0XFF,0XFF,0XF0,
+0X03,0XFF,0XFC,0X00,0X00,0X00,0XFC,0X00,0X00,0X2F,0XFF,0XF8,0X00,0X00,0X00,0X3F,
+0XFF,0XFF,0XF0,0X00,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X3F,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0X00,0XFC,0X00,0X00,0X01,0XBF,0XFF,0X91,0X00,0X00,0X3F,
+0XFF,0XFF,0XFF,0XCF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X0F,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0X00,0XFC,0X00,0X00,0X00,0X1B,0XFF,0XFF,0X40,0X00,0X3F,
+0XFF,0XFF,0XFC,0X00,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X03,0XFF,0XFF,
+0XFF,0XFF,0XC0,0X00,0X00,0X00,0XFC,0X00,0X00,0X06,0XA9,0X7F,0XFF,0XD0,0X00,0X3F,
+0XFF,0XFF,0XF0,0X30,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X00,0X3F,0XFF,
+0XFF,0XFF,0XC0,0X00,0X00,0X00,0XFC,0X00,0X00,0X3F,0XEA,0X82,0XFF,0XF8,0X00,0X7F,
+0XFF,0XFF,0XF0,0XFF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X00,0X0F,0XFF,
+0XFF,0XFF,0X00,0X00,0X00,0X00,0XFC,0X00,0X00,0X3F,0XFC,0X00,0X3F,0XFE,0X00,0XBF,
+0XFF,0XFF,0XF3,0XFF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X00,0X00,0XFF,
+0XFF,0XF0,0X00,0X00,0X00,0X00,0XFC,0X00,0X00,0X3F,0XFF,0X80,0X00,0X00,0X00,0XFF,
+0XFF,0XFF,0XF0,0XFC,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X00,0X00,0X03,
+0XFF,0X00,0X00,0X00,0X00,0X00,0XFC,0X00,0X00,0X1F,0XFF,0XF8,0X00,0X00,0X01,0XFF,
+0XFF,0XFF,0XFC,0XFC,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFC,0X00,0X00,0X01,0XBF,0XFF,0X90,0X00,0X03,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFC,0X03,0XFF,0X80,0X0B,0XFF,0XF0,0X00,0X07,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFC,0X00,0XFF,0XE0,0X07,0XFF,0XF0,0X00,0X0F,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFC,0X00,0X7F,0XFF,0X7F,0XFF,0XD0,0X00,0X2F,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFC,0X00,0X1F,0XFF,0XFF,0XFD,0X00,0X00,0XBF,0XFF,
+0XFF,0XFF,0XFF,0X00,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,
+0XFF,0X00,0X00,0X00,0X00,0X00,0XFC,0X00,0X04,0X7F,0XFF,0XD0,0X00,0X02,0XFF,0XFF,
+0XFF,0XFF,0XFC,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3F,0XFF,
+0XFF,0XF0,0X00,0X00,0X00,0X00,0XFC,0X00,0X00,0X07,0XFD,0X00,0X00,0X0B,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X3C,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,
+0XFF,0XFC,0X00,0X00,0X00,0X00,0XFC,0X00,0X00,0X00,0X40,0X00,0X00,0X7F,0XFF,0XFF,
+0XFF,0XFF,0XF3,0XFF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,
+0XFF,0XFF,0X00,0X00,0X00,0X00,0XFC,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF3,0XFF,0XCF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,
+0XFF,0XFF,0XC0,0X00,0X00,0X00,0XFC,0X00,0X00,0X00,0X00,0X01,0XBF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XC0,0X00,0X00,0X3F,0XFF,0XF0,
+0X3F,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFC,0X00,0X00,0X3F,0XFF,0X00,
+0X03,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0X00,0X00,0XFF,0XFC,0X00,
+0X00,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XF0,0X00,0XFF,0XF0,0X00,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X0C,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0X00,0XFF,0XF0,0X00,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X0F,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XC0,0XFF,0XF0,0X00,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF3,0XCF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFC,0X3F,0XF0,0X00,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XCF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFC,0X00,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFC,0X00,
+0X00,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XC0,
+0X03,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XFF,0X00,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3F,0XFF,0XFF,0XC0,0X3F,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,
+0XFF,0XFF,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,
+0XFF,0XFC,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X03,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,
+0XFF,0XC0,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0XFF,0XFF,0XC0,0X03,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,
+0XFC,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XF0,0X03,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X03,0XFF,0XFC,0X03,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XCF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X03,0XFF,0XFF,
+0XFF,0XFF,0XFC,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X30,0X00,0X3F,0XFC,0X03,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X30,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3C,0X00,0X0F,0XF0,0X03,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XFF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFC,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3F,0X00,0X00,0X00,0X03,0XFF,0XFF,
+0XFF,0XFF,0XF3,0XFF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XC0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3F,0XC0,0X00,0X00,0X03,0XFF,0XFF,
+0XFF,0XFF,0XFC,0XFC,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFC,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3F,0XF0,0X00,0X00,0X0F,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XC0,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3F,0XFF,0X00,0X00,0X3F,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFC,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3F,0XFF,0XF0,0X03,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X3F,0XFF,0X00,0X03,0XFF,0XFF,
+0XFF,0XF0,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X00,0XFF,0XFF,
+0XFF,0XFF,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XF0,0X00,0X00,0XFF,0XFF,
+0XFF,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XF0,0X00,0X00,0X3F,0XF3,
+0XFF,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XF0,0X00,0X00,0X3F,0XF0,
+0XFF,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XC0,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XF0,0X00,0X00,0X3F,0XFC,
+0X0F,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XF0,0X00,0X00,0X3F,0XFC,
+0X03,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XF0,0X00,0X00,0XFF,0XFC,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X00,0XFF,0XFC,
+0X00,0X03,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XF0,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X3F,0XFF,0X00,0X03,0XFF,0XF0,
+0X00,0X00,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XC0,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XF0,
+0X00,0X00,0X0C,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X03,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XF0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X3F,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XC0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X3F,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XF0,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFC,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X0F,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XF0,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X3F,0XFF,0XC0,0X00,0X00,0X03,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X03,0XFF,0X00,0X0F,0XC0,0X03,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3F,0X00,0X3F,0XF0,0X03,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X0F,0X00,0X3F,0XFC,0X03,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X03,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X0C,0X00,0X00,0X00,
+0XC0,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X3F,0XFC,0X03,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X3F,0X00,0X00,0X03,
+0XF0,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XF0,0X00,0X00,0X3F,0XF0,0X03,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0XFF,0XC0,0X00,0X0F,
+0XFC,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFC,0X00,0X00,0X03,0X00,0X03,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X03,0XFF,0XF0,0X00,0X3F,
+0XFF,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X0F,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X30,0X3F,0XFF,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFC,0X00,0XFF,
+0XFF,0XC0,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X00,0X0F,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X3C,0X3F,0XFF,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,0X03,0XFF,
+0XFF,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X3F,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XCF,0XFF,
+0XFC,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XF0,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,
+0XC0,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFC,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XFF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X3F,0XFF,0XF0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0X00,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XFF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFC,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3C,0X00,0X3F,0XFF,
+0XFF,0XFF,0XFF,0XCF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3C,0X00,0X3F,0XFF,
+0XFF,0XFF,0XFC,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,
+0XC0,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3C,0X00,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XF0,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0X00,0XFF,0XFF,
+0XFF,0XFF,0XF3,0XCF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XCF,0XFF,
+0XFC,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF3,0XCF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,0X03,0XFF,
+0XFF,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XCC,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFC,0X00,0XFF,
+0XFF,0XC0,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XC0,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X03,0XFF,0XF0,0X00,0X3F,
+0XFF,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0XFF,0XC0,0X00,0X0F,
+0XFC,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X3F,0X00,0X00,0X03,
+0XF0,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X0C,0X00,0X00,0X00,
+0XC0,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFC,0X03,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XCF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X03,
+0XFF,0XF0,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0X00,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0XFF,0XFC,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X30,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X3F,0XFC,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XFF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X3F,0XFF,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF3,0XFF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X0F,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XFC,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X0F,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0XFC,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X03,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XCF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X30,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XFF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF3,0XFF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XFC,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFC,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0X03,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X0F,0XFF,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3F,0XFF,0XC0,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3F,0XFF,0XC0,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XCF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3F,0XFF,0XC0,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X0C,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3F,0XFF,0XC0,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X30,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XF0,0X00,0X00,0X00,0X00,
+0X0F,0XC0,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X0F,0XFF,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XFF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X00,0X00,0X00,
+0X0F,0XFC,0X00,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X03,0XFC,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF3,0XFF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,
+0X3F,0XFF,0X00,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X0F,0XFF,0X00,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XFC,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X00,0X00,0X00,
+0X3F,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XFF,0XF0,0X0F,0XFF,0X03,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XF0,0X00,0X00,0X00,
+0XFF,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0X3F,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0X03,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFC,0X00,0X00,0X00,
+0X3F,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0X00,0X00,0X00,
+0X03,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,
+0X00,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XF0,0X00,0X00,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFC,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFC,0X00,0X00,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0XFF,0XFF,0XC0,0X00,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X3F,0XFF,0XF0,0X00,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X0F,0XFF,0XFC,0X00,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFC,0X03,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFC,0XF0,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X03,0XFF,0XFF,0X00,
+0X00,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0X00,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0XFF,0XFF,0XF0,
+0X03,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X3F,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X0F,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X03,0XFF,0XFF,
+0XFF,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X00,0X3F,0XFF,
+0XFF,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X00,0X0F,0XFF,
+0XFF,0XFF,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X00,0X00,0XFF,
+0XFF,0XF0,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X00,0X00,0X03,
+0XFF,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0X03,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0X0C,0X03,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0X0F,0XC0,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X03,0XFF,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XF0,0X00,0X00,
+0XFF,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0X00,0X0F,
+0XFF,0XF0,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XC0,0X3F,
+0XFF,0XFF,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XF0,0XFF,
+0XFF,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XF3,0XFF,
+0XFF,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X3F,0XFF,0X00,0X3F,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XCF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X0F,0XFF,0XFC,
+0X03,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X3C,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XF0,0X00,0X03,0XFF,0XF0,
+0X00,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X30,0X30,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XF0,0X00,0X03,0XFF,0XF0,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFC,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XF0,0XF0,0XFF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XF0,0X00,0X00,0XFF,0XC0,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XF0,0XF0,0XFF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XF0,0X00,0X00,0XFF,0XC0,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X3C,0XFC,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XF0,0X00,0X00,0XFF,0XC0,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X00,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XF0,0X00,0X03,0XFF,0XF0,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3C,0X03,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XC0,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XF0,0X00,0X03,0XFF,0XF0,
+0X00,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XFF,0X00,0XFC,0X03,0XC0,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X0F,0XFF,0XFF,
+0X03,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XFF,0X00,0XFC,0X03,0XF0,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X3F,0XFF,0X00,0X3F,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0X00,0XFC,0X03,0XF0,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XF3,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0X00,0XFC,0X03,0XC0,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFC,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XF3,0XFF,
+0XFF,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3C,0X03,0XC0,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XC0,0XFF,
+0XFF,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X0C,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XC0,0X3F,
+0XFF,0XFF,0X00,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X0C,0X00,0X00,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0X00,0X0F,
+0XFF,0XF0,0X00,0X00,0X00,0X00,0XFF,0XFF,0XF0,0X3C,0X00,0X00,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X0C,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XF0,0X00,0X00,
+0X0C,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFC,0X3C,0X00,0X03,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X0F,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0XFF,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFC,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF3,0XCF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XCF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XF0,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X3C,0X00,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X00,0X0F,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XC0,0X3F,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0X00,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XF0,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,
+0XFF,0XFF,0XFC,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XF0,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X03,0XFC,0X00,0X0F,0XF0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XC0,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X03,0XFC,0X00,0X0F,0XF0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0X00,0XFF,0XFC,0X03,0XFF,0XFF,
+0XFF,0XFF,0XF3,0XCF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X03,0XFC,0X00,0X0F,0XF0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0X00,0XFF,0XFC,0X03,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X0F,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X03,0XFC,0X00,0X0F,0XF0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0X00,0XFF,0XFC,0X03,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X0C,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X03,0XFC,0X00,0X0F,0XF0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0X00,0XFF,0XF0,0X03,0XFF,0XFF,
+0XFF,0XFF,0XFC,0X3C,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X03,0XFC,0X00,0X0F,0XF0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0X00,0XFF,0XF0,0X03,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XCF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X03,0XFF,0X00,0X3F,0XF0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0X00,0X3F,0XF0,0X03,0XFF,0XFF,
+0XFF,0XFF,0XFC,0X00,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0XFF,0XC0,0XFF,0XC0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0X00,0X0F,0XC0,0X03,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X30,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X0F,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XFF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X0F,0XFF,0XFF,
+0XFF,0XFF,0XF3,0XFF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFC,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X3F,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XFC,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XF0,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0XFC,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X0C,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X0F,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFC,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF3,0XCF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X00,0X3F,0XF3,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XCF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0X03,0XFC,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X00,0X3F,0XC0,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0X0F,0XFC,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X0F,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0X0F,0XFC,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X0F,0XC0,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0X03,0XFC,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0XF0,0X0F,0XC0,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XC0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0XFC,0X03,0XF0,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XC0,0XFC,0X03,0XF0,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0XC0,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XC0,0XFC,0X03,0XC0,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XCF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XC0,0X00,0X00,0X03,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFC,0X00,0X00,0X3F,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0X00,0X00,0XFF,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF3,0XCF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XF0,0X0F,0XFF,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF3,0XCF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X3F,0XFF,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XCC,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XF0,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XC0,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X03,0XFF,0XFF,0XC0,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFC,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X03,0XFF,0XFF,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XF0,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XF0,0X00,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X3F,0XFF,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XF0,0X00,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XC0,0X0F,0XFF,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XF0,0X00,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0X00,0X00,0XFF,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XF0,0X00,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFC,0X00,0X00,0X3F,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XF0,0X03,0XFC,0X03,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFE,0XAA,0XAA,0XAA,0XBF,0XFF,0X00,0X00,0X00,0XC0,0X00,0X00,0X03,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X3F,0XFF,0X00,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFE,0XAA,0XAA,0XAA,0XBF,0XFF,0X00,0X00,0X00,0XC0,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X3F,0XFF,0XC0,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFE,0XAA,0XAA,0XAA,0XBF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3F,0XFF,0XC0,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFE,0XAA,0XAA,0XAA,0XBF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3F,0XFF,0XC0,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFE,0XAA,0XAA,0XAA,0XBF,0XFF,0X00,0X00,0X00,0X00,0XFF,0XFC,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3F,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFE,0XAA,0XAA,0XAA,0XBF,0XFF,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XC0,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X03,0XFC,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFE,0XAA,0XAA,0XAA,0XBF,0XFF,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XF0,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFE,0XAA,0XAA,0XAA,0XBF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFC,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFE,0XAA,0XAA,0XAA,0XBF,0XFF,0X00,0X00,0X00,0XFF,0XCF,0XFF,0XFF,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFE,0XAA,0XAA,0XAA,0XBF,0XFF,0X00,0X00,0X00,0XFF,0X0F,0XF0,0XFF,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFE,0XAA,0XAA,0XAA,0XBF,0XFF,0X00,0X00,0X03,0XFC,0X0F,0XF0,0X3F,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFE,0XAA,0XAA,0XAA,0XBF,0XFF,0X00,0X00,0X03,0XFC,0X0F,0XF0,0X3F,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFE,0XAA,0XAA,0XAA,0XBF,0XFF,0X00,0X00,0X03,0XFC,0X0F,0XF0,0X3F,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFE,0XAA,0XAA,0XAA,0XBF,0XFF,0X00,0X00,0X03,0XFC,0X0F,0XF0,0XFF,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFC,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0X0F,0XF3,0XFF,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XCF,0XFF,0XFC,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFD,0X55,0X55,0X55,0X7F,0XFF,0X00,0X00,0X00,0X3F,0X0F,0XFF,0XFC,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFD,0X55,0X55,0X55,0X7F,0XFF,0X00,0X00,0X00,0X3F,0X0F,0XFF,0XF0,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3C,0X03,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFD,0X55,0X55,0X55,0X7F,0XFF,0X00,0X00,0X00,0X03,0X0F,0XFF,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0XFC,0X03,0XC0,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFD,0X55,0X55,0X55,0X7F,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0XFC,0X03,0XF0,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFD,0X55,0X55,0X55,0X7F,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0XFC,0X03,0XF0,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFD,0X55,0X55,0X55,0X7F,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0XFC,0X03,0XC0,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFD,0X55,0X55,0X55,0X7F,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3C,0X03,0XC0,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFD,0X55,0X55,0X55,0X7F,0XFF,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XF0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X0C,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFD,0X55,0X55,0X55,0X7F,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X0C,0X00,0X00,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFD,0X55,0X55,0X55,0X7F,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XF0,0X3C,0X00,0X00,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFD,0X55,0X55,0X55,0X7F,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFC,0X3C,0X00,0X03,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFD,0X55,0X55,0X55,0X7F,0XFF,0X00,0X00,0X00,0XFC,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFC,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFD,0X55,0X55,0X55,0X7F,0XFF,0X00,0X00,0X00,0XFC,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFD,0X55,0X55,0X55,0X7F,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X0F,0X00,0X3F,0XC0,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X00,0X00,0X00,0X3F,0XFF,0X00,0X00,0X00,0X3F,0X00,0XFF,0XFC,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X00,0X00,0X00,0X3F,0XFF,0X00,0X00,0X00,0XFF,0XC3,0XFF,0XFC,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X00,0X00,0X00,0X3F,0XFF,0X00,0X00,0X00,0XFF,0X03,0XFF,0XFF,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X00,0X00,0X00,0X3F,0XFF,0X00,0X00,0X03,0XFC,0X0F,0XFC,0XFF,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X00,0X00,0X00,0X3F,0XFF,0X00,0X00,0X03,0XFC,0X0F,0XF0,0X3F,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFC,0X03,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X00,0X00,0X00,0X3F,0XFF,0X00,0X00,0X03,0XFC,0X0F,0XF0,0X3F,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X00,0X00,0X00,0X3F,0XFF,0X00,0X00,0X03,0XFC,0X0F,0XC0,0X3F,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X00,0X00,0X00,0X3F,0XFF,0X00,0X00,0X03,0XFC,0X3F,0XC0,0XFF,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X00,0X00,0X00,0X3F,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XC3,0XFF,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X00,0X00,0X00,0X3F,0XFF,0X00,0X00,0X00,0XFF,0XFF,0X03,0XFC,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X00,0X00,0X00,0X3F,0XFF,0X00,0X00,0X00,0X3F,0XFF,0X03,0XF0,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X00,0X00,0X00,0X3F,0XFF,0X00,0X00,0X00,0X0F,0XFC,0X00,0XC0,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X00,0X00,0X00,0X3F,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X00,0X00,0X00,0X3F,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+};

+ 1 - 0
Arduino/epd2in9_V2/imagedata.h

@@ -24,5 +24,6 @@
  */
 
 extern const unsigned char IMAGE_DATA[];
+extern const unsigned char IMAGE_DATA_4Gray[];
 
 /* FILE END */

+ 51 - 5
RaspberryPi_JetsonNano/c/examples/EPD_2in9_V2_test.c

@@ -4,8 +4,8 @@
 * | Function    :   2.9inch e-paper V2 test demo
 * | Info        :
 *----------------
-* |	This version:   V1.0
-* | Date        :   2020-10-20
+* |	This version:   V1.1
+* | Date        :   2023-08-30
 * | Info        :
 #
 # Permission is hereby granted, free of charge, to any person obtaining a copy
@@ -73,7 +73,7 @@ int EPD_2in9_V2_test(void)
     DEV_Delay_ms(3000);
 #endif
 
-#if 1  //show image for array  
+#if 0  //show image for array  
     Paint_NewImage(BlackImage, EPD_2IN9_V2_WIDTH, EPD_2IN9_V2_HEIGHT, 90, WHITE);  
     printf("show image for array\r\n");
     Paint_SelectImage(BlackImage);
@@ -115,8 +115,8 @@ int EPD_2in9_V2_test(void)
     Paint_DrawNum(10, 33, 123456789, &Font12, BLACK, WHITE);
     Paint_DrawNum(10, 50, 987654321, &Font16, WHITE, BLACK);
 
-    Paint_DrawString_CN(130, 0,"你好abc", &Font12CN, BLACK, WHITE);
-    Paint_DrawString_CN(130, 20, "微雪电�", &Font24CN, WHITE, BLACK);
+    Paint_DrawString_CN(130, 0,"ÄãºÃabc", &Font12CN, BLACK, WHITE);
+    Paint_DrawString_CN(130, 20, "΢ѩµç×Ó", &Font24CN, WHITE, BLACK);
 
     EPD_2IN9_V2_Display_Base(BlackImage);
     DEV_Delay_ms(3000);
@@ -159,6 +159,52 @@ int EPD_2in9_V2_test(void)
     }
 #endif
 
+#if 1 // show image for array
+    free(BlackImage);
+    printf("show Gray------------------------\r\n");
+    Imagesize = ((EPD_2IN9_V2_WIDTH % 4 == 0)? (EPD_2IN9_V2_WIDTH / 4 ): (EPD_2IN9_V2_WIDTH / 4 + 1)) * EPD_2IN9_V2_HEIGHT;
+    if((BlackImage = (UBYTE *)malloc(Imagesize)) == NULL) {
+        printf("Failed to apply for black memory...\r\n");
+        return -1;
+    }
+    EPD_2IN9_V2_Gray4_Init();
+    printf("4 grayscale display\r\n");
+    Paint_NewImage(BlackImage, EPD_2IN9_V2_WIDTH, EPD_2IN9_V2_HEIGHT, 90, WHITE);
+    Paint_SetScale(4);
+    Paint_Clear(0xff);
+    
+    Paint_DrawPoint(10, 80, GRAY4, DOT_PIXEL_1X1, DOT_STYLE_DFT);
+    Paint_DrawPoint(10, 90, GRAY4, DOT_PIXEL_2X2, DOT_STYLE_DFT);
+    Paint_DrawPoint(10, 100, GRAY4, DOT_PIXEL_3X3, DOT_STYLE_DFT);
+    Paint_DrawLine(20, 70, 70, 120, GRAY4, DOT_PIXEL_1X1, LINE_STYLE_SOLID);
+    Paint_DrawLine(70, 70, 20, 120, GRAY4, DOT_PIXEL_1X1, LINE_STYLE_SOLID);
+    Paint_DrawRectangle(20, 70, 70, 120, GRAY4, DOT_PIXEL_1X1, DRAW_FILL_EMPTY);
+    Paint_DrawRectangle(80, 70, 130, 120, GRAY4, DOT_PIXEL_1X1, DRAW_FILL_FULL);
+    Paint_DrawCircle(45, 95, 20, GRAY4, DOT_PIXEL_1X1, DRAW_FILL_EMPTY);
+    Paint_DrawCircle(105, 95, 20, GRAY2, DOT_PIXEL_1X1, DRAW_FILL_FULL);
+    Paint_DrawLine(85, 95, 125, 95, GRAY4, DOT_PIXEL_1X1, LINE_STYLE_DOTTED);
+    Paint_DrawLine(105, 75, 105, 115, GRAY4, DOT_PIXEL_1X1, LINE_STYLE_DOTTED);
+    Paint_DrawString_EN(10, 0, "waveshare", &Font16, GRAY4, GRAY1);
+    Paint_DrawString_EN(10, 20, "hello world", &Font12, GRAY3, GRAY1);
+    Paint_DrawNum(10, 33, 123456789, &Font12, GRAY4, GRAY2);
+    Paint_DrawNum(10, 50, 987654321, &Font16, GRAY1, GRAY4);
+    Paint_DrawString_CN(150, 0,"ÄãºÃabc", &Font12CN, GRAY4, GRAY1);
+    Paint_DrawString_CN(150, 20,"ÄãºÃabc", &Font12CN, GRAY3, GRAY2);
+    Paint_DrawString_CN(150, 40,"ÄãºÃabc", &Font12CN, GRAY2, GRAY3);
+    Paint_DrawString_CN(150, 60,"ÄãºÃabc", &Font12CN, GRAY1, GRAY4);
+    Paint_DrawString_CN(150, 80, "΢ѩµç×Ó", &Font24CN, GRAY1, GRAY4);
+    EPD_2IN9_V2_4GrayDisplay(BlackImage);
+    DEV_Delay_ms(3000);
+
+    Paint_NewImage(BlackImage, EPD_2IN9_V2_WIDTH, EPD_2IN9_V2_HEIGHT, 0, WHITE);
+    Paint_SetScale(4);
+    Paint_Clear(WHITE);
+    GUI_ReadBmp_4Gray("./pic/2in9_Scale.bmp", 0, 0);
+    EPD_2IN9_V2_4GrayDisplay(BlackImage);
+    DEV_Delay_ms(3000);
+
+#endif
+
 	printf("Clear...\r\n");
 	EPD_2IN9_V2_Init();
     EPD_2IN9_V2_Clear();

+ 142 - 2
RaspberryPi_JetsonNano/c/lib/e-Paper/EPD_2in9_V2.c

@@ -4,8 +4,8 @@
 * | Function    :   2.9inch e-paper V2
 * | Info        :
 *----------------
-* |	This version:   V1.0
-* | Date        :   2020-10-20
+* |	This version:   V1.1
+* | Date        :   2023-08-30
 * | Info        :
 * -----------------------------------------------------------------------------
 #
@@ -77,6 +77,29 @@ UBYTE WS_20_30[159] =
 0x22,	0x17,	0x41,	0x0,	0x32,	0x36
 };	
 
+unsigned char Gray4[159] =			
+{											
+0x00,	0x60,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	//VS L0	 //2.28s			
+0x20,	0x60,	0x10,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	//VS L1				
+0x28,	0x60,	0x14,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	//VS L2				
+0x2A,	0x60,	0x15,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	//VS L3 				
+0x00,	0x90,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	//VS L4 				
+0x00,	0x02,	0x00,	0x05,	0x14,	0x00,	0x00,						//TP, SR, RP of Group0				
+0x1E,	0x1E,	0x00,	0x00,	0x00,	0x00,	0x01,						//TP, SR, RP of Group1				
+0x00,	0x02,	0x00,	0x05,	0x14,	0x00,	0x00,						//TP, SR, RP of Group2				
+0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,						//TP, SR, RP of Group3				
+0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,						//TP, SR, RP of Group4				
+0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,						//TP, SR, RP of Group5				
+0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,						//TP, SR, RP of Group6				
+0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,						//TP, SR, RP of Group7				
+0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,						//TP, SR, RP of Group8				
+0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,						//TP, SR, RP of Group9				
+0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,						//TP, SR, RP of Group10				
+0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,						//TP, SR, RP of Group11				
+0x24,	0x22,	0x22,	0x22,	0x23,	0x32,	0x00,	0x00,	0x00,				//FR, XON				
+0x22,	0x17,	0x41,	0xAE,	0x32,	0x28,							//EOPT VGH VSH1 VSH2 VSL VCOM				
+};	
+
 /******************************************************************************
 function :	Software reset
 parameter:
@@ -243,6 +266,34 @@ void EPD_2IN9_V2_Init(void)
 	EPD_2IN9_V2_LUT_by_host(WS_20_30);
 }
 
+void EPD_2IN9_V2_Gray4_Init(void)
+{
+	EPD_2IN9_V2_Reset();
+	DEV_Delay_ms(100);
+
+	EPD_2IN9_V2_ReadBusy();   
+	EPD_2IN9_V2_SendCommand(0x12); // soft reset
+	EPD_2IN9_V2_ReadBusy();
+	
+	EPD_2IN9_V2_SendCommand(0x01); //Driver output control      
+	EPD_2IN9_V2_SendData(0x27);
+	EPD_2IN9_V2_SendData(0x01);
+	EPD_2IN9_V2_SendData(0x00);
+	
+	EPD_2IN9_V2_SendCommand(0x11); //data entry mode       
+	EPD_2IN9_V2_SendData(0x03);
+	
+	EPD_2IN9_V2_SetWindows(8, 0, EPD_2IN9_V2_WIDTH, EPD_2IN9_V2_HEIGHT-1);
+
+	EPD_2IN9_V2_SendCommand(0x3C);       
+	EPD_2IN9_V2_SendData(0x04);
+	
+	EPD_2IN9_V2_SetCursor(1, 0);
+	EPD_2IN9_V2_ReadBusy();	
+
+	EPD_2IN9_V2_LUT_by_host(Gray4);
+}
+
 /******************************************************************************
 function :	Clear screen
 parameter:
@@ -256,6 +307,12 @@ void EPD_2IN9_V2_Clear(void)
 	{
 		EPD_2IN9_V2_SendData(0xff);
 	}
+
+	EPD_2IN9_V2_SendCommand(0x26);   //write RAM for black(0)/white (1)
+	for(i=0;i<4736;i++)
+	{
+		EPD_2IN9_V2_SendData(0xff);
+	}
 	EPD_2IN9_V2_TurnOnDisplay();
 }
 
@@ -291,6 +348,89 @@ void EPD_2IN9_V2_Display_Base(UBYTE *Image)
 	EPD_2IN9_V2_TurnOnDisplay();	
 }
 
+void EPD_2IN9_V2_4GrayDisplay(UBYTE *Image)
+{
+    UDOUBLE i,j,k;
+    UBYTE temp1,temp2,temp3;
+
+    // old  data
+    EPD_2IN9_V2_SendCommand(0x24);
+    for(i=0; i<4736; i++) { 
+        temp3=0;
+        for(j=0; j<2; j++) {
+            temp1 = Image[i*2+j];
+            for(k=0; k<2; k++) {
+                temp2 = temp1&0xC0;
+                if(temp2 == 0xC0)
+                    temp3 |= 0x00;
+                else if(temp2 == 0x00)
+                    temp3 |= 0x01; 
+                else if(temp2 == 0x80)
+                    temp3 |= 0x01; 
+                else //0x40
+                    temp3 |= 0x00; 
+                temp3 <<= 1;
+
+                temp1 <<= 2;
+                temp2 = temp1&0xC0 ;
+                if(temp2 == 0xC0) 
+                    temp3 |= 0x00;
+                else if(temp2 == 0x00) 
+                    temp3 |= 0x01;
+                else if(temp2 == 0x80)
+                    temp3 |= 0x01; 
+                else    //0x40
+                    temp3 |= 0x00;	
+                if(j!=1 || k!=1)
+                    temp3 <<= 1;
+
+                temp1 <<= 2;
+            }
+        }
+        EPD_2IN9_V2_SendData(temp3);
+        // printf("%x ",temp3);
+    }
+
+    EPD_2IN9_V2_SendCommand(0x26);   //write RAM for black(0)/white (1)
+    for(i=0; i<4736; i++) {            
+        temp3=0;
+        for(j=0; j<2; j++) {
+            temp1 = Image[i*2+j];
+            for(k=0; k<2; k++) {
+                temp2 = temp1&0xC0 ;
+                if(temp2 == 0xC0)
+                    temp3 |= 0x00;//white
+                else if(temp2 == 0x00)
+                    temp3 |= 0x01;  //black
+                else if(temp2 == 0x80)
+                    temp3 |= 0x00;  //gray1
+                else //0x40
+                    temp3 |= 0x01; //gray2
+                temp3 <<= 1;
+
+                temp1 <<= 2;
+                temp2 = temp1&0xC0 ;
+                if(temp2 == 0xC0)  //white
+                    temp3 |= 0x00;
+                else if(temp2 == 0x00) //black
+                    temp3 |= 0x01;
+                else if(temp2 == 0x80)
+                    temp3 |= 0x00; //gray1
+                else    //0x40
+                    temp3 |= 0x01;	//gray2
+                if(j!=1 || k!=1)
+                    temp3 <<= 1;
+
+                temp1 <<= 2;
+            }
+        }
+        EPD_2IN9_V2_SendData(temp3);
+        // printf("%x ",temp3);
+    }
+
+    EPD_2IN9_V2_TurnOnDisplay();
+}
+
 void EPD_2IN9_V2_Display_Partial(UBYTE *Image)
 {
 	UWORD i;

+ 4 - 3
RaspberryPi_JetsonNano/c/lib/e-Paper/EPD_2in9_V2.h

@@ -4,8 +4,8 @@
 * | Function    :   2.9inch e-paper V2
 * | Info        :
 *----------------
-* |	This version:   V1.0
-* | Date        :   2020-10-20
+* |	This version:   V1.1
+* | Date        :   2023-08-30
 * | Info        :
 * -----------------------------------------------------------------------------
 #
@@ -38,10 +38,11 @@
 #define EPD_2IN9_V2_HEIGHT      296
 
 void EPD_2IN9_V2_Init(void);
+void EPD_2IN9_V2_Gray4_Init(void);
 void EPD_2IN9_V2_Clear(void);
 void EPD_2IN9_V2_Display(UBYTE *Image);
 void EPD_2IN9_V2_Display_Base(UBYTE *Image);
+void EPD_2IN9_V2_4GrayDisplay(UBYTE *Image);
 void EPD_2IN9_V2_Display_Partial(UBYTE *Image);
 void EPD_2IN9_V2_Sleep(void);
-
 #endif

BIN
RaspberryPi_JetsonNano/c/pic/2in9_Scale.bmp


+ 1 - 0
RaspberryPi_JetsonNano/python/examples/epd_2in7_V2_test.py

@@ -145,6 +145,7 @@ try:
     time.sleep(2)
 
     logging.info("Clear...")
+    epd.init()   
     epd.Clear()
     logging.info("Goto Sleep...")
     epd.sleep()

+ 28 - 1
RaspberryPi_JetsonNano/python/examples/epd_2in9_V2_test.py

@@ -25,6 +25,7 @@ try:
     
     font24 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 24)
     font18 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 18)
+    font35 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 35)
     
     # Drawing on the Horizontal image
     logging.info("1.Drawing on the Horizontal image...")
@@ -74,7 +75,6 @@ try:
     Himage2.paste(bmp, (50,10))
     epd.display(epd.getbuffer(Himage2))
     time.sleep(2)
-    
 
     # partial update
     logging.info("5.show time")
@@ -92,6 +92,33 @@ try:
         num = num + 1
         if(num == 10):
             break
+
+    '''4Gray display'''
+    logging.info("4Gray display--------------------------------")
+    epd.Init_4Gray()
+    
+    Limage = Image.new('L', (epd.height, epd.width), 0)  # 255: clear the frame
+    draw = ImageDraw.Draw(Limage)
+    draw.text((0, 0), u'微雪电子', font = font35, fill = epd.GRAY1)
+    draw.text((0, 35), u'微雪电子', font = font35, fill = epd.GRAY2)
+    draw.text((0, 70), u'微雪电子', font = font35, fill = epd.GRAY3)
+    draw.text((20, 105), 'hello world', font = font18, fill = epd.GRAY1)
+    draw.line((160, 10, 210, 60), fill = epd.GRAY1)
+    draw.line((160, 60, 210, 10), fill = epd.GRAY1)
+    draw.rectangle((160, 10, 210, 60), outline = epd.GRAY1)
+    draw.line((160, 95, 210, 95), fill = epd.GRAY1)
+    draw.line((185, 70, 185, 120), fill = epd.GRAY1)
+    draw.arc((160, 70, 210, 120), 0, 360, fill = epd.GRAY1)
+    draw.rectangle((220, 10, 270, 60), fill = epd.GRAY1)
+    draw.chord((220, 70, 270, 120), 0, 360, fill = epd.GRAY1)
+
+    epd.display_4Gray(epd.getbuffer_4Gray(Limage))
+    time.sleep(2)
+    
+    #display 4Gra bmp
+    Himage = Image.open(os.path.join(picdir, '2in9_Scale.bmp'))
+    epd.display_4Gray(epd.getbuffer_4Gray(Himage))
+    time.sleep(2)
             
     logging.info("Clear...")
     epd.init()

BIN
RaspberryPi_JetsonNano/python/lib/waveshare_epd/__init__.pyc


BIN
RaspberryPi_JetsonNano/python/lib/waveshare_epd/epd2in7.pyc


BIN
RaspberryPi_JetsonNano/python/lib/waveshare_epd/epd2in7_V2.pyc


+ 167 - 0
RaspberryPi_JetsonNano/python/lib/waveshare_epd/epd2in9_V2.py

@@ -33,6 +33,10 @@ from . import epdconfig
 # Display resolution
 EPD_WIDTH       = 128
 EPD_HEIGHT      = 296
+GRAY1  = 0xff #white
+GRAY2  = 0xC0
+GRAY3  = 0x80 #gray
+GRAY4  = 0x00 #Blackest
 
 logger = logging.getLogger(__name__)
 
@@ -44,6 +48,10 @@ class EPD:
         self.cs_pin = epdconfig.CS_PIN
         self.width = EPD_WIDTH
         self.height = EPD_HEIGHT
+        self.GRAY1  = GRAY1 #white
+        self.GRAY2  = GRAY2
+        self.GRAY3  = GRAY3 #gray
+        self.GRAY4  = GRAY4 #Blackest
         
     WF_PARTIAL_2IN9 = [
     0x0,0x40,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
@@ -89,6 +97,28 @@ class EPD:
     0x22,	0x17,	0x41,	0x0,	0x32,	0x36
     ]
 
+    Gray4 = [										
+    0x00,	0x60,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,			
+    0x20,	0x60,	0x10,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,		
+    0x28,	0x60,	0x14,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,
+    0x2A,	0x60,	0x15,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,
+    0x00,	0x90,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,
+    0x00,	0x02,	0x00,	0x05,	0x14,	0x00,	0x00,	
+    0x1E,	0x1E,	0x00,	0x00,	0x00,	0x00,	0x01,
+    0x00,	0x02,	0x00,	0x05,	0x14,	0x00,	0x00,
+    0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,
+    0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,
+    0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,
+    0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,
+    0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,
+    0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,
+    0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,
+    0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,
+    0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,
+    0x24,	0x22,	0x22,	0x22,	0x23,	0x32,	0x00,	0x00,	0x00,
+    0x22,	0x17,	0x41,	0xAE,	0x32,	0x28		
+    ]	
+
     # Hardware reset
     def reset(self):
         epdconfig.digital_write(self.reset_pin, 1)
@@ -204,6 +234,36 @@ class EPD:
         self.SetLut(self.WS_20_30)
         # EPD hardware init end
         return 0
+    
+    def Init_4Gray(self):
+        if (epdconfig.module_init() != 0):
+            return -1
+        self.reset()
+        epdconfig.delay_ms(100)
+
+        self.ReadBusy()
+        self.send_command(0x12)  #SWRESET
+        self.ReadBusy() 
+
+        self.send_command(0x01) #Driver output control      
+        self.send_data(0x27)
+        self.send_data(0x01)
+        self.send_data(0x00)
+    
+        self.send_command(0x11) #data entry mode       
+        self.send_data(0x03)
+
+        self.SetWindow(8, 0, self.width, self.height-1)
+
+        self.send_command(0x3C)
+        self.send_data(0x04)
+    
+        self.SetCursor(1, 0)
+        self.ReadBusy()
+
+        self.SetLut(self.Gray4)
+        # EPD hardware init end
+        return 0
 
     def getbuffer(self, image):
         # logger.debug("bufsiz = ",int(self.width/8) * self.height)
@@ -228,6 +288,42 @@ class EPD:
                     if pixels[x, y] == 0:
                         buf[int((newx + newy*self.width) / 8)] &= ~(0x80 >> (y % 8))
         return buf
+    
+    def getbuffer_4Gray(self, image):
+        # logger.debug("bufsiz = ",int(self.width/8) * self.height)
+        buf = [0xFF] * (int(self.width / 4) * self.height)
+        image_monocolor = image.convert('L')
+        imwidth, imheight = image_monocolor.size
+        pixels = image_monocolor.load()
+        i=0
+        # logger.debug("imwidth = %d, imheight = %d",imwidth,imheight)
+        if(imwidth == self.width and imheight == self.height):
+            logger.debug("Vertical")
+            for y in range(imheight):
+                for x in range(imwidth):
+                    # Set the bits for the column of pixels at the current position.
+                    if(pixels[x, y] == 0xC0):
+                        pixels[x, y] = 0x80
+                    elif (pixels[x, y] == 0x80):
+                        pixels[x, y] = 0x40
+                    i= i+1
+                    if(i%4 == 0):
+                        buf[int((x + (y * self.width))/4)] = ((pixels[x-3, y]&0xc0) | (pixels[x-2, y]&0xc0)>>2 | (pixels[x-1, y]&0xc0)>>4 | (pixels[x, y]&0xc0)>>6)
+                        
+        elif(imwidth == self.height and imheight == self.width):
+            logger.debug("Horizontal")
+            for x in range(imwidth):
+                for y in range(imheight):
+                    newx = y
+                    newy = self.height - x - 1
+                    if(pixels[x, y] == 0xC0):
+                        pixels[x, y] = 0x80
+                    elif (pixels[x, y] == 0x80):
+                        pixels[x, y] = 0x40
+                    i= i+1
+                    if(i%4 == 0):
+                        buf[int((newx + (newy * self.width))/4)] = ((pixels[x, y-3]&0xc0) | (pixels[x, y-2]&0xc0)>>2 | (pixels[x, y-1]&0xc0)>>4 | (pixels[x, y]&0xc0)>>6) 
+        return buf
 
     def display(self, image):
         if (image == None):
@@ -247,6 +343,73 @@ class EPD:
         self.send_data2(image)   
                 
         self.TurnOnDisplay()
+
+    def display_4Gray(self, image):
+        self.send_command(0x24)
+        for i in range(0, 4736):
+            temp3=0
+            for j in range(0, 2):
+                temp1 = image[i*2+j]
+                for k in range(0, 2):
+                    temp2 = temp1&0xC0 
+                    if(temp2 == 0xC0):
+                        temp3 |= 0x00
+                    elif(temp2 == 0x00):
+                        temp3 |= 0x01  
+                    elif(temp2 == 0x80): 
+                        temp3 |= 0x01 
+                    else: #0x40
+                        temp3 |= 0x00 
+                    temp3 <<= 1	
+                    
+                    temp1 <<= 2
+                    temp2 = temp1&0xC0 
+                    if(temp2 == 0xC0): 
+                        temp3 |= 0x00
+                    elif(temp2 == 0x00): 
+                        temp3 |= 0x01
+                    elif(temp2 == 0x80):
+                        temp3 |= 0x01
+                    else :   #0x40
+                        temp3 |= 0x00	
+                    if(j!=1 or k!=1):				
+                        temp3 <<= 1
+                    temp1 <<= 2
+            self.send_data(temp3)
+            
+        self.send_command(0x26)	       
+        for i in range(0, 4736):
+            temp3=0
+            for j in range(0, 2):
+                temp1 = image[i*2+j]
+                for k in range(0, 2):
+                    temp2 = temp1&0xC0 
+                    if(temp2 == 0xC0):
+                        temp3 |= 0x00
+                    elif(temp2 == 0x00):
+                        temp3 |= 0x01
+                    elif(temp2 == 0x80):
+                        temp3 |= 0x00
+                    else: #0x40
+                        temp3 |= 0x01 
+                    temp3 <<= 1	
+                    
+                    temp1 <<= 2
+                    temp2 = temp1&0xC0 
+                    if(temp2 == 0xC0): 
+                        temp3 |= 0x00
+                    elif(temp2 == 0x00): 
+                        temp3 |= 0x01
+                    elif(temp2 == 0x80):
+                        temp3 |= 0x00 
+                    else:    #0x40
+                        temp3 |= 0x01	
+                    if(j!=1 or k!=1):					
+                        temp3 <<= 1
+                    temp1 <<= 2
+            self.send_data(temp3)
+
+        self.TurnOnDisplay()
         
     def display_Partial(self, image):
         if (image == None):
@@ -285,6 +448,7 @@ class EPD:
         self.send_data2(image)   
         self.TurnOnDisplay_Partial()
 
+
     def Clear(self, color=0xFF):
         if self.width%8 == 0:
             linewidth = int(self.width/8)
@@ -294,6 +458,9 @@ class EPD:
         self.send_command(0x24) # WRITE_RAM
         self.send_data2([color] * int(self.height * linewidth)) 
         self.TurnOnDisplay()
+        self.send_command(0x26) # WRITE_RAM
+        self.send_data2([color] * int(self.height * linewidth)) 
+        self.TurnOnDisplay()
 
     def sleep(self):
         self.send_command(0x10) # DEEP_SLEEP_MODE

BIN
RaspberryPi_JetsonNano/python/lib/waveshare_epd/epd2in9_V2.pyc


BIN
RaspberryPi_JetsonNano/python/lib/waveshare_epd/epdconfig.pyc


BIN
RaspberryPi_JetsonNano/python/pic/2in9_Scale.bmp


Різницю між файлами не показано, бо вона завелика
+ 4 - 5
STM32/STM32-F103ZET6/MDK-ARM/epd-demo.uvguix.liuyujian


+ 3 - 3
STM32/STM32-F103ZET6/MDK-ARM/epd-demo.uvoptx

@@ -2882,7 +2882,7 @@
       <OPTFL>
         <tvExp>1</tvExp>
         <tvExpOptDlg>0</tvExpOptDlg>
-        <IsCurrentTarget>0</IsCurrentTarget>
+        <IsCurrentTarget>1</IsCurrentTarget>
       </OPTFL>
       <CpuCode>18</CpuCode>
       <DebugOpt>
@@ -9446,7 +9446,7 @@
       <OPTFL>
         <tvExp>1</tvExp>
         <tvExpOptDlg>0</tvExpOptDlg>
-        <IsCurrentTarget>1</IsCurrentTarget>
+        <IsCurrentTarget>0</IsCurrentTarget>
       </OPTFL>
       <CpuCode>18</CpuCode>
       <DebugOpt>
@@ -11661,7 +11661,7 @@
 
   <Group>
     <GroupName>e-Paper</GroupName>
-    <tvExp>1</tvExp>
+    <tvExp>0</tvExp>
     <tvExpOptDlg>0</tvExpOptDlg>
     <cbSel>0</cbSel>
     <RteFlg>0</RteFlg>

+ 5 - 39
STM32/STM32-F103ZET6/MDK-ARM/epd-demo/epd-demo.build_log.htm

@@ -26,44 +26,10 @@ Project File Date:  06/25/2023
 
 <h2>Output:</h2>
 *** Using Compiler 'V5.06 update 6 (build 750)', folder: 'D:\KEIL\azwz\ARM\ARMCC\Bin'
-Build target 'EPD_4in37g_test'
-assembling startup_stm32f103xe.s...
-compiling usart.c...
-compiling spi.c...
-compiling stm32f1xx_it.c...
-compiling gpio.c...
-compiling main.c...
-compiling ImageData2.c...
-compiling DEV_Config.c...
-compiling stm32f1xx_hal_msp.c...
-compiling EPD_4in37g.c...
-compiling font8.c...
-compiling EPD_4in37g_test.c...
-compiling font12CN.c...
-compiling font12.c...
-compiling font16.c...
-compiling font20.c...
-compiling GUI_Paint.c...
-compiling font24CN.c...
-compiling font24.c...
-compiling stm32f1xx_hal.c...
-compiling stm32f1xx_hal_gpio_ex.c...
-compiling system_stm32f1xx.c...
-compiling stm32f1xx_hal_rcc.c...
-compiling stm32f1xx_hal_spi.c...
-compiling stm32f1xx_hal_gpio.c...
-compiling stm32f1xx_hal_rcc_ex.c...
-compiling stm32f1xx_hal_pwr.c...
-compiling stm32f1xx_hal_cortex.c...
-compiling stm32f1xx_hal_dma.c...
-compiling stm32f1xx_hal_tim_ex.c...
-compiling stm32f1xx_hal_flash.c...
-compiling stm32f1xx_hal_tim.c...
-compiling stm32f1xx_hal_flash_ex.c...
-compiling stm32f1xx_hal_exti.c...
-compiling stm32f1xx_hal_uart.c...
+Build target 'EPD_2in9_V2_test'
+compiling EPD_2in9_V2_test.c...
 linking...
-Program Size: Code=23756 RO-data=57124 RW-data=56 ZI-data=53424  
+Program Size: Code=25016 RO-data=28760 RW-data=556 ZI-data=53428  
 FromELF: creating hex file...
 "epd-demo\epd-demo.axf" - 0 Error(s), 0 Warning(s).
 
@@ -81,14 +47,14 @@ Package Vendor: Keil
                 STMicroelectronics STM32F1 Series Device Support, Drivers and Examples
 
 <h2>Collection of Component include folders:</h2>
-  .\RTE\_EPD_4in37g_test
+  .\RTE\_EPD_2in9_V2_test
   D:\KEIL\azwz\ARM\PACK\ARM\CMSIS\5.9.0\CMSIS\Core\Include
   D:\KEIL\azwz\ARM\PACK\Keil\STM32F1xx_DFP\2.1.0\Device\Include
 
 <h2>Collection of Component Files used:</h2>
 
    * Component: ARM::CMSIS:CORE:5.6.0
-Build Time Elapsed:  00:00:12
+Build Time Elapsed:  00:00:01
 </pre>
 </body>
 </html>

Різницю між файлами не показано, бо вона завелика
+ 550 - 460
STM32/STM32-F103ZET6/MDK-ARM/epd-demo/epd-demo.htm


Різницю між файлами не показано, бо вона завелика
+ 535 - 464
STM32/STM32-F103ZET6/MDK-ARM/epd-demo/epd-demo.map


+ 5 - 5
STM32/STM32-F103ZET6/MDK-ARM/startup_stm32f103xe.lst

@@ -580,17 +580,17 @@ ARM Macro Assembler    Page 9
               00000000 
 Command Line: --debug --xref --diag_suppress=9931 --cpu=Cortex-M3 --apcs=interw
 ork --depend=epd-demo\startup_stm32f103xe.d -oepd-demo\startup_stm32f103xe.o -I
-.\RTE\_EPD_4in37g_test -ID:\KEIL\azwz\ARM\PACK\ARM\CMSIS\5.9.0\CMSIS\Core\Inclu
-de -ID:\KEIL\azwz\ARM\PACK\Keil\STM32F1xx_DFP\2.1.0\Device\Include --predefine=
-"__MICROLIB SETA 1" --predefine="__UVISION_VERSION SETA 526" --predefine="_RTE_
+.\RTE\_EPD_2in7_V2_test -ID:\KEIL\azwz\ARM\PACK\ARM\CMSIS\5.9.0\CMSIS\Core\Incl
+ude -ID:\KEIL\azwz\ARM\PACK\Keil\STM32F1xx_DFP\2.1.0\Device\Include --predefine
+="__MICROLIB SETA 1" --predefine="__UVISION_VERSION SETA 526" --predefine="_RTE
 
 
 
 ARM Macro Assembler    Page 10 
 
 
- SETA 1" --predefine="STM32F10X_HD SETA 1" --list=startup_stm32f103xe.lst start
-up_stm32f103xe.s
+_ SETA 1" --predefine="STM32F10X_HD SETA 1" --list=startup_stm32f103xe.lst star
+tup_stm32f103xe.s
 
 
 

+ 8 - 8
STM32/STM32-F103ZET6/User/Examples/EPD_2in7_V2_test.c

@@ -147,8 +147,8 @@ int EPD_test(void)
     Paint_DrawNum(10, 33, 123456789, &Font12, BLACK, WHITE);
     Paint_DrawNum(10, 50, 987654321, &Font16, WHITE, BLACK);
 
-    Paint_DrawString_CN(130, 0,"���abc", &Font12CN, BLACK, WHITE);
-    Paint_DrawString_CN(130, 20, "΢ѩ����", &Font24CN, WHITE, BLACK);
+    Paint_DrawString_CN(130, 0,"你好abc", &Font12CN, BLACK, WHITE);
+    Paint_DrawString_CN(130, 20, "微雪电子", &Font24CN, WHITE, BLACK);
 
     EPD_2IN7_V2_Display_Base(BlackImage);
     DEV_Delay_ms(3000);
@@ -233,15 +233,15 @@ int EPD_test(void)
     Paint_DrawString_EN(10, 20, "hello world", &Font12, GRAY3, GRAY1);
     Paint_DrawNum(10, 33, 123456789, &Font12, GRAY4, GRAY2);
     Paint_DrawNum(10, 50, 987654321, &Font16, GRAY1, GRAY4);
-    Paint_DrawString_CN(150, 0,"���abc", &Font12CN, GRAY4, GRAY1);
-    Paint_DrawString_CN(150, 20,"���abc", &Font12CN, GRAY3, GRAY2);
-    Paint_DrawString_CN(150, 40,"���abc", &Font12CN, GRAY2, GRAY3);
-    Paint_DrawString_CN(150, 60,"���abc", &Font12CN, GRAY1, GRAY4);
-    Paint_DrawString_CN(10, 130, "΢ѩ����", &Font24CN, GRAY1, GRAY4);
+    Paint_DrawString_CN(150, 0,"你好abc", &Font12CN, GRAY4, GRAY1);
+    Paint_DrawString_CN(150, 20,"你好abc", &Font12CN, GRAY3, GRAY2);
+    Paint_DrawString_CN(150, 40,"你好abc", &Font12CN, GRAY2, GRAY3);
+    Paint_DrawString_CN(150, 60,"你好abc", &Font12CN, GRAY1, GRAY4);
+    Paint_DrawString_CN(10, 130, "微雪电子", &Font24CN, GRAY1, GRAY4);
     EPD_2IN7_V2_4GrayDisplay(BlackImage);
     DEV_Delay_ms(3000);
 		
-		Paint_SelectImage(BlackImage);
+	Paint_SelectImage(BlackImage);
     Paint_Clear(WHITE);
     Paint_DrawBitMap(gImage_2in7_4Gray);
     EPD_2IN7_V2_4GrayDisplay(BlackImage);

+ 49 - 2
STM32/STM32-F103ZET6/User/Examples/EPD_2in9_V2_test.c

@@ -4,8 +4,8 @@
 * | Function    :   2.9inch e-paper V2 test demo
 * | Info        :
 *----------------
-* |	This version:   V1.0
-* | Date        :   2020-12-09
+* |	This version:   V1.1
+* | Date        :   2023-08-30
 * | Info        :
 #
 # Permission is hereby granted, free of charge, to any person obtaining a copy
@@ -40,6 +40,7 @@ int EPD_test(void)
     printf("e-Paper Init and Clear...\r\n");
 	EPD_2IN9_V2_Init();
     EPD_2IN9_V2_Clear();
+    DEV_Delay_ms(1000);
 
     //Create a new image cache
     UBYTE *BlackImage;
@@ -138,6 +139,52 @@ int EPD_test(void)
     }
 #endif
 
+#if 1 // show image for array
+    free(BlackImage);
+    printf("show Gray------------------------\r\n");
+    Imagesize = ((EPD_2IN9_V2_WIDTH % 4 == 0)? (EPD_2IN9_V2_WIDTH / 4 ): (EPD_2IN9_V2_WIDTH / 4 + 1)) * EPD_2IN9_V2_HEIGHT;
+    if((BlackImage = (UBYTE *)malloc(Imagesize)) == NULL) {
+        printf("Failed to apply for black memory...\r\n");
+        return -1;
+    }
+    EPD_2IN9_V2_Gray4_Init();
+    printf("4 grayscale display\r\n");
+    Paint_NewImage(BlackImage, EPD_2IN9_V2_WIDTH, EPD_2IN9_V2_HEIGHT, 90, WHITE);  	
+    Paint_SetScale(4);
+    Paint_Clear(0xff);
+    
+    Paint_DrawPoint(10, 80, GRAY4, DOT_PIXEL_1X1, DOT_STYLE_DFT);
+    Paint_DrawPoint(10, 90, GRAY4, DOT_PIXEL_2X2, DOT_STYLE_DFT);
+    Paint_DrawPoint(10, 100, GRAY4, DOT_PIXEL_3X3, DOT_STYLE_DFT);
+    Paint_DrawLine(20, 70, 70, 120, GRAY4, DOT_PIXEL_1X1, LINE_STYLE_SOLID);
+    Paint_DrawLine(70, 70, 20, 120, GRAY4, DOT_PIXEL_1X1, LINE_STYLE_SOLID);
+    Paint_DrawRectangle(20, 70, 70, 120, GRAY4, DOT_PIXEL_1X1, DRAW_FILL_EMPTY);
+    Paint_DrawRectangle(80, 70, 130, 120, GRAY4, DOT_PIXEL_1X1, DRAW_FILL_FULL);
+    Paint_DrawCircle(45, 95, 20, GRAY4, DOT_PIXEL_1X1, DRAW_FILL_EMPTY);
+    Paint_DrawCircle(105, 95, 20, GRAY2, DOT_PIXEL_1X1, DRAW_FILL_FULL);
+    Paint_DrawLine(85, 95, 125, 95, GRAY4, DOT_PIXEL_1X1, LINE_STYLE_DOTTED);
+    Paint_DrawLine(105, 75, 105, 115, GRAY4, DOT_PIXEL_1X1, LINE_STYLE_DOTTED);
+    Paint_DrawString_EN(10, 0, "waveshare", &Font16, GRAY4, GRAY1);
+    Paint_DrawString_EN(10, 20, "hello world", &Font12, GRAY3, GRAY1);
+    Paint_DrawNum(10, 33, 123456789, &Font12, GRAY4, GRAY2);
+    Paint_DrawNum(10, 50, 987654321, &Font16, GRAY1, GRAY4);
+    Paint_DrawString_CN(150, 0,"ÄãºÃabc", &Font12CN, GRAY4, GRAY1);
+    Paint_DrawString_CN(150, 20,"ÄãºÃabc", &Font12CN, GRAY3, GRAY2);
+    Paint_DrawString_CN(150, 40,"ÄãºÃabc", &Font12CN, GRAY2, GRAY3);
+    Paint_DrawString_CN(150, 60,"ÄãºÃabc", &Font12CN, GRAY1, GRAY4);
+    Paint_DrawString_CN(150, 80, "΢ѩµç×Ó", &Font24CN, GRAY1, GRAY4);
+    EPD_2IN9_V2_4GrayDisplay(BlackImage);
+    DEV_Delay_ms(3000);
+
+    Paint_NewImage(BlackImage, EPD_2IN9_V2_WIDTH, EPD_2IN9_V2_HEIGHT, 0, WHITE);
+    Paint_SetScale(4);
+    Paint_Clear(WHITE);
+    Paint_DrawBitMap(gImage_2in9_4Gray);
+    EPD_2IN9_V2_4GrayDisplay(BlackImage);
+    DEV_Delay_ms(3000);
+
+#endif
+    
 	printf("Clear...\r\n");
 	EPD_2IN9_V2_Init();
     EPD_2IN9_V2_Clear();

+ 594 - 0
STM32/STM32-F103ZET6/User/Examples/ImageData.c

@@ -4421,6 +4421,600 @@ const unsigned char gImage_2in9[] = { /* 0X00,0X01,0X80,0X00,0X28,0X01, */
 };
 
 
+const unsigned char gImage_2in9_4Gray[9472] = { /* 0X00,0X02,0X80,0X00,0X28,0X01, */
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFE,0X40,0X00,0X00,0X00,0X00,0X3F,
+0XFF,0XFF,0XF0,0XF0,0XF0,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X0C,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XD0,0X00,0X00,0X00,0X00,0X00,0X3F,
+0XFF,0XFF,0XF0,0XF0,0XF0,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XF0,0X00,0X00,0X00,0X00,
+0X0F,0XC0,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFD,0X00,0X00,0X00,0X10,0X00,0X00,0X3F,
+0XFF,0XFF,0XF0,0XF0,0XF0,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X00,0X00,0X00,
+0X0F,0XFC,0X00,0X00,0X00,0X00,0XFF,0XFF,0XE0,0X00,0X00,0X06,0XE0,0X00,0X00,0X3F,
+0XFF,0XFF,0XF0,0XF0,0X00,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,
+0X3F,0XFF,0X00,0X00,0X00,0X00,0XFF,0XFF,0X80,0X00,0X01,0XBF,0XE0,0X00,0X00,0X3F,
+0XFF,0XFF,0XF0,0X03,0X03,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X00,0X00,0X00,
+0X3F,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XFE,0X00,0X00,0X6F,0XFF,0XE0,0X00,0X00,0X3F,
+0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XF0,0X00,0X00,0X00,
+0XFF,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XF8,0X00,0X1B,0XFF,0XFF,0XE0,0X00,0X00,0X3F,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFC,0X00,0X00,0X00,
+0X3F,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XF0,0X00,0X3F,0XFF,0XFE,0X40,0X00,0X00,0X3F,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0X00,0X00,0X00,
+0X03,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XD0,0X00,0X3F,0XFF,0XD0,0X00,0X00,0X00,0X3F,
+0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,
+0X00,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XC0,0X00,0X2F,0XFF,0XF8,0X00,0X00,0X00,0X3F,
+0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XF0,0X00,0X00,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFF,0X40,0X00,0X00,0XBF,0XFF,0XD0,0X00,0X00,0X3F,
+0XFF,0XFF,0XF0,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFC,0X00,0X00,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFF,0X00,0X00,0X00,0X07,0XFF,0XF0,0X00,0X00,0X3F,
+0XFF,0XFF,0XF0,0X0C,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0XFF,0XFF,0XC0,0X00,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFE,0X00,0X00,0X00,0X2F,0XFF,0XF0,0X00,0X00,0X3F,
+0XFF,0XFF,0XF0,0X0F,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X3F,0XFF,0XF0,0X00,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFD,0X00,0X00,0X07,0XFF,0XFF,0XD0,0X00,0X00,0X3F,
+0XFF,0XFF,0XF3,0XCF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X0F,0XFF,0XFC,0X00,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFC,0X00,0X00,0X3F,0XFF,0XF8,0X00,0X00,0X00,0X3F,
+0XFF,0XFF,0XF0,0XCF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X03,0XFF,0XFF,0X00,
+0X00,0XFF,0XFC,0X00,0X00,0X00,0XFC,0X00,0X00,0X3F,0XFF,0X80,0X00,0X00,0X00,0X3F,
+0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0XFF,0XFF,0XF0,
+0X03,0XFF,0XFC,0X00,0X00,0X00,0XFC,0X00,0X00,0X2F,0XFF,0XF8,0X00,0X00,0X00,0X3F,
+0XFF,0XFF,0XF0,0X00,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X3F,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0X00,0XFC,0X00,0X00,0X01,0XBF,0XFF,0X91,0X00,0X00,0X3F,
+0XFF,0XFF,0XFF,0XCF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X0F,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0X00,0XFC,0X00,0X00,0X00,0X1B,0XFF,0XFF,0X40,0X00,0X3F,
+0XFF,0XFF,0XFC,0X00,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X03,0XFF,0XFF,
+0XFF,0XFF,0XC0,0X00,0X00,0X00,0XFC,0X00,0X00,0X06,0XA9,0X7F,0XFF,0XD0,0X00,0X3F,
+0XFF,0XFF,0XF0,0X30,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X00,0X3F,0XFF,
+0XFF,0XFF,0XC0,0X00,0X00,0X00,0XFC,0X00,0X00,0X3F,0XEA,0X82,0XFF,0XF8,0X00,0X7F,
+0XFF,0XFF,0XF0,0XFF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X00,0X0F,0XFF,
+0XFF,0XFF,0X00,0X00,0X00,0X00,0XFC,0X00,0X00,0X3F,0XFC,0X00,0X3F,0XFE,0X00,0XBF,
+0XFF,0XFF,0XF3,0XFF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X00,0X00,0XFF,
+0XFF,0XF0,0X00,0X00,0X00,0X00,0XFC,0X00,0X00,0X3F,0XFF,0X80,0X00,0X00,0X00,0XFF,
+0XFF,0XFF,0XF0,0XFC,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X00,0X00,0X03,
+0XFF,0X00,0X00,0X00,0X00,0X00,0XFC,0X00,0X00,0X1F,0XFF,0XF8,0X00,0X00,0X01,0XFF,
+0XFF,0XFF,0XFC,0XFC,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFC,0X00,0X00,0X01,0XBF,0XFF,0X90,0X00,0X03,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFC,0X03,0XFF,0X80,0X0B,0XFF,0XF0,0X00,0X07,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFC,0X00,0XFF,0XE0,0X07,0XFF,0XF0,0X00,0X0F,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFC,0X00,0X7F,0XFF,0X7F,0XFF,0XD0,0X00,0X2F,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFC,0X00,0X1F,0XFF,0XFF,0XFD,0X00,0X00,0XBF,0XFF,
+0XFF,0XFF,0XFF,0X00,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,
+0XFF,0X00,0X00,0X00,0X00,0X00,0XFC,0X00,0X04,0X7F,0XFF,0XD0,0X00,0X02,0XFF,0XFF,
+0XFF,0XFF,0XFC,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3F,0XFF,
+0XFF,0XF0,0X00,0X00,0X00,0X00,0XFC,0X00,0X00,0X07,0XFD,0X00,0X00,0X0B,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X3C,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,
+0XFF,0XFC,0X00,0X00,0X00,0X00,0XFC,0X00,0X00,0X00,0X40,0X00,0X00,0X7F,0XFF,0XFF,
+0XFF,0XFF,0XF3,0XFF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,
+0XFF,0XFF,0X00,0X00,0X00,0X00,0XFC,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF3,0XFF,0XCF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,
+0XFF,0XFF,0XC0,0X00,0X00,0X00,0XFC,0X00,0X00,0X00,0X00,0X01,0XBF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XC0,0X00,0X00,0X3F,0XFF,0XF0,
+0X3F,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFC,0X00,0X00,0X3F,0XFF,0X00,
+0X03,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0X00,0X00,0XFF,0XFC,0X00,
+0X00,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XF0,0X00,0XFF,0XF0,0X00,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X0C,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0X00,0XFF,0XF0,0X00,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X0F,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XC0,0XFF,0XF0,0X00,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF3,0XCF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFC,0X3F,0XF0,0X00,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XCF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFC,0X00,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFC,0X00,
+0X00,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XC0,
+0X03,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XFF,0X00,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3F,0XFF,0XFF,0XC0,0X3F,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,
+0XFF,0XFF,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,
+0XFF,0XFC,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X03,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,
+0XFF,0XC0,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0XFF,0XFF,0XC0,0X03,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,
+0XFC,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XF0,0X03,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X03,0XFF,0XFC,0X03,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XCF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X03,0XFF,0XFF,
+0XFF,0XFF,0XFC,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X30,0X00,0X3F,0XFC,0X03,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X30,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3C,0X00,0X0F,0XF0,0X03,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XFF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFC,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3F,0X00,0X00,0X00,0X03,0XFF,0XFF,
+0XFF,0XFF,0XF3,0XFF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XC0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3F,0XC0,0X00,0X00,0X03,0XFF,0XFF,
+0XFF,0XFF,0XFC,0XFC,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFC,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3F,0XF0,0X00,0X00,0X0F,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XC0,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3F,0XFF,0X00,0X00,0X3F,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFC,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3F,0XFF,0XF0,0X03,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X3F,0XFF,0X00,0X03,0XFF,0XFF,
+0XFF,0XF0,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X00,0XFF,0XFF,
+0XFF,0XFF,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XF0,0X00,0X00,0XFF,0XFF,
+0XFF,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XF0,0X00,0X00,0X3F,0XF3,
+0XFF,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XF0,0X00,0X00,0X3F,0XF0,
+0XFF,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XC0,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XF0,0X00,0X00,0X3F,0XFC,
+0X0F,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XF0,0X00,0X00,0X3F,0XFC,
+0X03,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XF0,0X00,0X00,0XFF,0XFC,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X00,0XFF,0XFC,
+0X00,0X03,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XF0,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X3F,0XFF,0X00,0X03,0XFF,0XF0,
+0X00,0X00,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XC0,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XF0,
+0X00,0X00,0X0C,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X03,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XF0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X3F,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XC0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X3F,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XF0,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFC,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X0F,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XF0,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X3F,0XFF,0XC0,0X00,0X00,0X03,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X03,0XFF,0X00,0X0F,0XC0,0X03,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3F,0X00,0X3F,0XF0,0X03,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X0F,0X00,0X3F,0XFC,0X03,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X03,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X0C,0X00,0X00,0X00,
+0XC0,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X3F,0XFC,0X03,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X3F,0X00,0X00,0X03,
+0XF0,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XF0,0X00,0X00,0X3F,0XF0,0X03,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0XFF,0XC0,0X00,0X0F,
+0XFC,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFC,0X00,0X00,0X03,0X00,0X03,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X03,0XFF,0XF0,0X00,0X3F,
+0XFF,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X0F,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X30,0X3F,0XFF,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFC,0X00,0XFF,
+0XFF,0XC0,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X00,0X0F,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X3C,0X3F,0XFF,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,0X03,0XFF,
+0XFF,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X3F,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XCF,0XFF,
+0XFC,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XF0,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,
+0XC0,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFC,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XFF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X3F,0XFF,0XF0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0X00,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XFF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFC,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3C,0X00,0X3F,0XFF,
+0XFF,0XFF,0XFF,0XCF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3C,0X00,0X3F,0XFF,
+0XFF,0XFF,0XFC,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,
+0XC0,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3C,0X00,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XF0,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0X00,0XFF,0XFF,
+0XFF,0XFF,0XF3,0XCF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XCF,0XFF,
+0XFC,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF3,0XCF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,0X03,0XFF,
+0XFF,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XCC,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFC,0X00,0XFF,
+0XFF,0XC0,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XC0,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X03,0XFF,0XF0,0X00,0X3F,
+0XFF,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0XFF,0XC0,0X00,0X0F,
+0XFC,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X3F,0X00,0X00,0X03,
+0XF0,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X0C,0X00,0X00,0X00,
+0XC0,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFC,0X03,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XCF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X03,
+0XFF,0XF0,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0X00,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0XFF,0XFC,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X30,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X3F,0XFC,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XFF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X3F,0XFF,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF3,0XFF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X0F,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XFC,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X0F,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0XFC,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X03,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XCF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X30,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XFF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF3,0XFF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XFC,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFC,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0X03,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X0F,0XFF,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3F,0XFF,0XC0,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3F,0XFF,0XC0,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XCF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3F,0XFF,0XC0,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X0C,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3F,0XFF,0XC0,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X30,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XF0,0X00,0X00,0X00,0X00,
+0X0F,0XC0,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X0F,0XFF,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XFF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X00,0X00,0X00,
+0X0F,0XFC,0X00,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X03,0XFC,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF3,0XFF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,
+0X3F,0XFF,0X00,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X0F,0XFF,0X00,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XFC,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X00,0X00,0X00,
+0X3F,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XFF,0XF0,0X0F,0XFF,0X03,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XF0,0X00,0X00,0X00,
+0XFF,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0X3F,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0X03,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFC,0X00,0X00,0X00,
+0X3F,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0X00,0X00,0X00,
+0X03,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,
+0X00,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XF0,0X00,0X00,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFC,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFC,0X00,0X00,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0XFF,0XFF,0XC0,0X00,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X3F,0XFF,0XF0,0X00,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X0F,0XFF,0XFC,0X00,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFC,0X03,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFC,0XF0,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X03,0XFF,0XFF,0X00,
+0X00,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0X00,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0XFF,0XFF,0XF0,
+0X03,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X3F,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X0F,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X03,0XFF,0XFF,
+0XFF,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X00,0X3F,0XFF,
+0XFF,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X00,0X0F,0XFF,
+0XFF,0XFF,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X00,0X00,0XFF,
+0XFF,0XF0,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X00,0X00,0X03,
+0XFF,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0X03,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0X0C,0X03,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0X0F,0XC0,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X03,0XFF,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XF0,0X00,0X00,
+0XFF,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0X00,0X0F,
+0XFF,0XF0,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XC0,0X3F,
+0XFF,0XFF,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XF0,0XFF,
+0XFF,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XF3,0XFF,
+0XFF,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X3F,0XFF,0X00,0X3F,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XCF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X0F,0XFF,0XFC,
+0X03,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X3C,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XF0,0X00,0X03,0XFF,0XF0,
+0X00,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X30,0X30,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XF0,0X00,0X03,0XFF,0XF0,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFC,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XF0,0XF0,0XFF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XF0,0X00,0X00,0XFF,0XC0,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XF0,0XF0,0XFF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XF0,0X00,0X00,0XFF,0XC0,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X3C,0XFC,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XF0,0X00,0X00,0XFF,0XC0,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X00,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XF0,0X00,0X03,0XFF,0XF0,
+0X00,0X3F,0XFC,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3C,0X03,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XC0,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XF0,0X00,0X03,0XFF,0XF0,
+0X00,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XFF,0X00,0XFC,0X03,0XC0,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X00,0X0F,0XFF,0XFF,
+0X03,0XFF,0XFC,0X00,0X00,0X00,0XFF,0XFF,0X00,0XFC,0X03,0XF0,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X3F,0XFF,0X00,0X3F,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0X00,0XFC,0X03,0XF0,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XF3,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0X00,0XFC,0X03,0XC0,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFC,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XF3,0XFF,
+0XFF,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3C,0X03,0XC0,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XC0,0XFF,
+0XFF,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X0C,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XC0,0X3F,
+0XFF,0XFF,0X00,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X0C,0X00,0X00,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0X00,0X0F,
+0XFF,0XF0,0X00,0X00,0X00,0X00,0XFF,0XFF,0XF0,0X3C,0X00,0X00,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X0C,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XF0,0X00,0X00,
+0X0C,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFC,0X3C,0X00,0X03,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X0F,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0XFF,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFC,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF3,0XCF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XCF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XF0,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X3C,0X00,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X00,0X0F,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XC0,0X3F,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0X00,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XF0,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,
+0XFF,0XFF,0XFC,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XF0,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X03,0XFC,0X00,0X0F,0XF0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XC0,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X03,0XFC,0X00,0X0F,0XF0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0X00,0XFF,0XFC,0X03,0XFF,0XFF,
+0XFF,0XFF,0XF3,0XCF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X03,0XFC,0X00,0X0F,0XF0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0X00,0XFF,0XFC,0X03,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X0F,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X03,0XFC,0X00,0X0F,0XF0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0X00,0XFF,0XFC,0X03,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X0C,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X03,0XFC,0X00,0X0F,0XF0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0X00,0XFF,0XF0,0X03,0XFF,0XFF,
+0XFF,0XFF,0XFC,0X3C,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X03,0XFC,0X00,0X0F,0XF0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0X00,0XFF,0XF0,0X03,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XCF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X03,0XFF,0X00,0X3F,0XF0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0X00,0X3F,0XF0,0X03,0XFF,0XFF,
+0XFF,0XFF,0XFC,0X00,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0XFF,0XC0,0XFF,0XC0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0X00,0X0F,0XC0,0X03,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X30,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X0F,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XFF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X0F,0XFF,0XFF,
+0XFF,0XFF,0XF3,0XFF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFC,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X3F,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XFC,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XF0,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0XFC,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X0C,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X0F,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFC,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF3,0XCF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X00,0X3F,0XF3,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XCF,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0X03,0XFC,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X00,0X3F,0XC0,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0X0F,0XFC,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X0F,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0X0F,0XFC,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X0F,0XC0,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0X03,0XFC,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0XF0,0X0F,0XC0,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XC0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0XFC,0X03,0XF0,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XC0,0XFC,0X03,0XF0,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0XC0,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XC0,0XFC,0X03,0XC0,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XCF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XC0,0X00,0X00,0X03,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFC,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFC,0X00,0X00,0X3F,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0X00,0X00,0XFF,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF3,0XCF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XF0,0X0F,0XFF,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF3,0XCF,0X0F,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X3F,0XFF,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XCC,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XF0,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XF0,0XC0,0X3F,0XFF,0XFF,0X00,0X00,0X00,0X03,0XFF,0XFF,0XC0,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFC,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X03,0XFF,0XFF,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XF0,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XF0,0X00,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFC,0X3F,0XFF,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XF0,0X00,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XC0,0X0F,0XFF,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XF0,0X00,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0X00,0X00,0XFF,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XF0,0X00,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFC,0X00,0X00,0X3F,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XF0,0X03,0XFC,0X03,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFE,0XAA,0XAA,0XAA,0XBF,0XFF,0X00,0X00,0X00,0XC0,0X00,0X00,0X03,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X3F,0XFF,0X00,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFE,0XAA,0XAA,0XAA,0XBF,0XFF,0X00,0X00,0X00,0XC0,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X3F,0XFF,0XC0,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFE,0XAA,0XAA,0XAA,0XBF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3F,0XFF,0XC0,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFE,0XAA,0XAA,0XAA,0XBF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3F,0XFF,0XC0,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFE,0XAA,0XAA,0XAA,0XBF,0XFF,0X00,0X00,0X00,0X00,0XFF,0XFC,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3F,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFE,0XAA,0XAA,0XAA,0XBF,0XFF,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XC0,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X03,0XFC,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFE,0XAA,0XAA,0XAA,0XBF,0XFF,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XF0,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFE,0XAA,0XAA,0XAA,0XBF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFC,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFE,0XAA,0XAA,0XAA,0XBF,0XFF,0X00,0X00,0X00,0XFF,0XCF,0XFF,0XFF,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFE,0XAA,0XAA,0XAA,0XBF,0XFF,0X00,0X00,0X00,0XFF,0X0F,0XF0,0XFF,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFE,0XAA,0XAA,0XAA,0XBF,0XFF,0X00,0X00,0X03,0XFC,0X0F,0XF0,0X3F,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFE,0XAA,0XAA,0XAA,0XBF,0XFF,0X00,0X00,0X03,0XFC,0X0F,0XF0,0X3F,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFE,0XAA,0XAA,0XAA,0XBF,0XFF,0X00,0X00,0X03,0XFC,0X0F,0XF0,0X3F,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFE,0XAA,0XAA,0XAA,0XBF,0XFF,0X00,0X00,0X03,0XFC,0X0F,0XF0,0XFF,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFC,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0X0F,0XF3,0XFF,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XCF,0XFF,0XFC,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFD,0X55,0X55,0X55,0X7F,0XFF,0X00,0X00,0X00,0X3F,0X0F,0XFF,0XFC,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFD,0X55,0X55,0X55,0X7F,0XFF,0X00,0X00,0X00,0X3F,0X0F,0XFF,0XF0,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3C,0X03,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFD,0X55,0X55,0X55,0X7F,0XFF,0X00,0X00,0X00,0X03,0X0F,0XFF,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0XFC,0X03,0XC0,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFD,0X55,0X55,0X55,0X7F,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0XFC,0X03,0XF0,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFD,0X55,0X55,0X55,0X7F,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0XFC,0X03,0XF0,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFD,0X55,0X55,0X55,0X7F,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0XFC,0X03,0XC0,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFD,0X55,0X55,0X55,0X7F,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X3C,0X03,0XC0,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFD,0X55,0X55,0X55,0X7F,0XFF,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XF0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X0C,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFD,0X55,0X55,0X55,0X7F,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XC0,0X0C,0X00,0X00,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFD,0X55,0X55,0X55,0X7F,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XF0,0X3C,0X00,0X00,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFD,0X55,0X55,0X55,0X7F,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFC,0X3C,0X00,0X03,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFD,0X55,0X55,0X55,0X7F,0XFF,0X00,0X00,0X00,0XFC,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFC,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFD,0X55,0X55,0X55,0X7F,0XFF,0X00,0X00,0X00,0XFC,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFD,0X55,0X55,0X55,0X7F,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X0F,0X00,0X3F,0XC0,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X00,0X00,0X00,0X3F,0XFF,0X00,0X00,0X00,0X3F,0X00,0XFF,0XFC,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X00,0X00,0X00,0X3F,0XFF,0X00,0X00,0X00,0XFF,0XC3,0XFF,0XFC,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X00,0X00,0X00,0X3F,0XFF,0X00,0X00,0X00,0XFF,0X03,0XFF,0XFF,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X00,0X00,0X00,0X3F,0XFF,0X00,0X00,0X03,0XFC,0X0F,0XFC,0XFF,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X00,0X00,0X00,0X3F,0XFF,0X00,0X00,0X03,0XFC,0X0F,0XF0,0X3F,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFC,0X03,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X00,0X00,0X00,0X3F,0XFF,0X00,0X00,0X03,0XFC,0X0F,0XF0,0X3F,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X00,0X00,0X00,0X3F,0XFF,0X00,0X00,0X03,0XFC,0X0F,0XC0,0X3F,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X00,0X00,0X00,0X3F,0XFF,0X00,0X00,0X03,0XFC,0X3F,0XC0,0XFF,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X3F,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X00,0X00,0X00,0X3F,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XC3,0XFF,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X00,0X00,0X00,0X3F,0XFF,0X00,0X00,0X00,0XFF,0XFF,0X03,0XFC,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X0F,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X00,0X00,0X00,0X3F,0XFF,0X00,0X00,0X00,0X3F,0XFF,0X03,0XF0,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X00,0X00,0X00,0X3F,0XFF,0X00,0X00,0X00,0X0F,0XFC,0X00,0XC0,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X00,0X00,0X00,0X3F,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFC,0X00,0X00,0X00,0X3F,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,
+0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,
+};
 const unsigned char gImage_2in9bc_b[]  = { /* 0X00,0X01,0X80,0X00,0X28,0X01, */
 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,

+ 1 - 0
STM32/STM32-F103ZET6/User/Examples/ImageData.h

@@ -66,6 +66,7 @@ extern const unsigned char gImage_2in7_4Gray[];
 
 
 extern const unsigned char gImage_2in9[];
+extern const unsigned char gImage_2in9_4Gray[];
 extern const unsigned char gImage_2in9bc_b[];
 extern const unsigned char gImage_2in9bc_ry[];
 

+ 155 - 20
STM32/STM32-F103ZET6/User/e-Paper/EPD_2in9_V2.c

@@ -4,8 +4,8 @@
 * | Function    :   2.9inch e-paper V2
 * | Info        :
 *----------------
-* |	This version:   V1.0
-* | Date        :   2020-12-09
+* |	This version:   V1.1
+* | Date        :   2023-08-30
 * | Info        :
 * -----------------------------------------------------------------------------
 #
@@ -77,6 +77,29 @@ UBYTE WS_20_30[159] =
 0x22,	0x17,	0x41,	0x0,	0x32,	0x36
 };	
 
+unsigned char Gray4[159] =			
+{											
+0x00,	0x60,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	//VS L0	 //2.28s			
+0x20,	0x60,	0x10,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	//VS L1				
+0x28,	0x60,	0x14,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	//VS L2				
+0x2A,	0x60,	0x15,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	//VS L3 				
+0x00,	0x90,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	//VS L4 				
+0x00,	0x02,	0x00,	0x05,	0x14,	0x00,	0x00,						//TP, SR, RP of Group0				
+0x1E,	0x1E,	0x00,	0x00,	0x00,	0x00,	0x01,						//TP, SR, RP of Group1				
+0x00,	0x02,	0x00,	0x05,	0x14,	0x00,	0x00,						//TP, SR, RP of Group2				
+0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,						//TP, SR, RP of Group3				
+0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,						//TP, SR, RP of Group4				
+0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,						//TP, SR, RP of Group5				
+0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,						//TP, SR, RP of Group6				
+0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,						//TP, SR, RP of Group7				
+0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,						//TP, SR, RP of Group8				
+0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,						//TP, SR, RP of Group9				
+0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,						//TP, SR, RP of Group10				
+0x00,	0x00,	0x00,	0x00,	0x00,	0x00,	0x00,						//TP, SR, RP of Group11				
+0x24,	0x22,	0x22,	0x22,	0x23,	0x32,	0x00,	0x00,	0x00,				//FR, XON				
+0x22,	0x17,	0x41,	0xAE,	0x32,	0x28,							//EOPT VGH VSH1 VSH2 VSL VCOM				
+};	
+
 /******************************************************************************
 function :	Software reset
 parameter:
@@ -84,11 +107,11 @@ parameter:
 static void EPD_2IN9_V2_Reset(void)
 {
     DEV_Digital_Write(EPD_RST_PIN, 1);
-    DEV_Delay_ms(100);
+    DEV_Delay_ms(10);
     DEV_Digital_Write(EPD_RST_PIN, 0);
     DEV_Delay_ms(2);
     DEV_Digital_Write(EPD_RST_PIN, 1);
-    DEV_Delay_ms(100);
+    DEV_Delay_ms(10);
 }
 
 /******************************************************************************
@@ -135,7 +158,7 @@ void EPD_2IN9_V2_ReadBusy(void)
 }
 
 static void EPD_2IN9_V2_LUT(UBYTE *lut)
-{       
+{
 	UBYTE count;
 	EPD_2IN9_V2_SendCommand(0x32);
 	for(count=0; count<153; count++) 
@@ -220,33 +243,55 @@ void EPD_2IN9_V2_Init(void)
 	DEV_Delay_ms(100);
 
 	EPD_2IN9_V2_ReadBusy();   
-	EPD_2IN9_V2_SendCommand(0x12);  //SWRESET
-	EPD_2IN9_V2_ReadBusy();   
-
+	EPD_2IN9_V2_SendCommand(0x12); // soft reset
+	EPD_2IN9_V2_ReadBusy();
+	
 	EPD_2IN9_V2_SendCommand(0x01); //Driver output control      
 	EPD_2IN9_V2_SendData(0x27);
 	EPD_2IN9_V2_SendData(0x01);
 	EPD_2IN9_V2_SendData(0x00);
-
+	
 	EPD_2IN9_V2_SendCommand(0x11); //data entry mode       
 	EPD_2IN9_V2_SendData(0x03);
-
+	
 	EPD_2IN9_V2_SetWindows(0, 0, EPD_2IN9_V2_WIDTH-1, EPD_2IN9_V2_HEIGHT-1);
-
-	// EPD_2IN9_V2_SendCommand(0x3C); //BorderWavefrom
-	// EPD_2IN9_V2_SendData(0x05);	
-
+	
 	EPD_2IN9_V2_SendCommand(0x21); //  Display update control
 	EPD_2IN9_V2_SendData(0x00);
 	EPD_2IN9_V2_SendData(0x80);	
+	
+	EPD_2IN9_V2_SetCursor(0, 0);
+	EPD_2IN9_V2_ReadBusy();	
+	
+	EPD_2IN9_V2_LUT_by_host(WS_20_30);
+}
 
-	// EPD_2IN9_V2_SendCommand(0x18); //Read built-in temperature sensor
-	// EPD_2IN9_V2_SendData(0x80);	
+void EPD_2IN9_V2_Gray4_Init(void)
+{
+	EPD_2IN9_V2_Reset();
+	DEV_Delay_ms(100);
 
-	EPD_2IN9_V2_SetCursor(0, 0);
+	EPD_2IN9_V2_ReadBusy();   
+	EPD_2IN9_V2_SendCommand(0x12); // soft reset
 	EPD_2IN9_V2_ReadBusy();
+	
+	EPD_2IN9_V2_SendCommand(0x01); //Driver output control      
+	EPD_2IN9_V2_SendData(0x27);
+	EPD_2IN9_V2_SendData(0x01);
+	EPD_2IN9_V2_SendData(0x00);
+	
+	EPD_2IN9_V2_SendCommand(0x11); //data entry mode       
+	EPD_2IN9_V2_SendData(0x03);
+	
+	EPD_2IN9_V2_SetWindows(8, 0, EPD_2IN9_V2_WIDTH, EPD_2IN9_V2_HEIGHT-1);
 
-	EPD_2IN9_V2_LUT_by_host(WS_20_30);
+	EPD_2IN9_V2_SendCommand(0x3C);       
+	EPD_2IN9_V2_SendData(0x04);
+	
+	EPD_2IN9_V2_SetCursor(1, 0);
+	EPD_2IN9_V2_ReadBusy();	
+
+	EPD_2IN9_V2_LUT_by_host(Gray4);
 }
 
 /******************************************************************************
@@ -256,11 +301,18 @@ parameter:
 void EPD_2IN9_V2_Clear(void)
 {
 	UWORD i;
+	
 	EPD_2IN9_V2_SendCommand(0x24);   //write RAM for black(0)/white (1)
 	for(i=0;i<4736;i++)
 	{
 		EPD_2IN9_V2_SendData(0xff);
 	}
+
+	EPD_2IN9_V2_SendCommand(0x26);   //write RAM for black(0)/white (1)
+	for(i=0;i<4736;i++)
+	{
+		EPD_2IN9_V2_SendData(0xff);
+	}
 	EPD_2IN9_V2_TurnOnDisplay();
 }
 
@@ -296,13 +348,96 @@ void EPD_2IN9_V2_Display_Base(UBYTE *Image)
 	EPD_2IN9_V2_TurnOnDisplay();	
 }
 
+void EPD_2IN9_V2_4GrayDisplay(UBYTE *Image)
+{
+    UDOUBLE i,j,k;
+    UBYTE temp1,temp2,temp3;
+
+    // old  data
+    EPD_2IN9_V2_SendCommand(0x24);
+    for(i=0; i<4736; i++) { 
+        temp3=0;
+        for(j=0; j<2; j++) {
+            temp1 = Image[i*2+j];
+            for(k=0; k<2; k++) {
+                temp2 = temp1&0xC0;
+                if(temp2 == 0xC0)
+                    temp3 |= 0x00;
+                else if(temp2 == 0x00)
+                    temp3 |= 0x01; 
+                else if(temp2 == 0x80)
+                    temp3 |= 0x01; 
+                else //0x40
+                    temp3 |= 0x00; 
+                temp3 <<= 1;
+
+                temp1 <<= 2;
+                temp2 = temp1&0xC0 ;
+                if(temp2 == 0xC0) 
+                    temp3 |= 0x00;
+                else if(temp2 == 0x00) 
+                    temp3 |= 0x01;
+                else if(temp2 == 0x80)
+                    temp3 |= 0x01; 
+                else    //0x40
+                    temp3 |= 0x00;	
+                if(j!=1 || k!=1)
+                    temp3 <<= 1;
+
+                temp1 <<= 2;
+            }
+        }
+        EPD_2IN9_V2_SendData(temp3);
+        // printf("%x ",temp3);
+    }
+
+    EPD_2IN9_V2_SendCommand(0x26);   //write RAM for black(0)/white (1)
+    for(i=0; i<4736; i++) {            
+        temp3=0;
+        for(j=0; j<2; j++) {
+            temp1 = Image[i*2+j];
+            for(k=0; k<2; k++) {
+                temp2 = temp1&0xC0 ;
+                if(temp2 == 0xC0)
+                    temp3 |= 0x00;//white
+                else if(temp2 == 0x00)
+                    temp3 |= 0x01;  //black
+                else if(temp2 == 0x80)
+                    temp3 |= 0x00;  //gray1
+                else //0x40
+                    temp3 |= 0x01; //gray2
+                temp3 <<= 1;
+
+                temp1 <<= 2;
+                temp2 = temp1&0xC0 ;
+                if(temp2 == 0xC0)  //white
+                    temp3 |= 0x00;
+                else if(temp2 == 0x00) //black
+                    temp3 |= 0x01;
+                else if(temp2 == 0x80)
+                    temp3 |= 0x00; //gray1
+                else    //0x40
+                    temp3 |= 0x01;	//gray2
+                if(j!=1 || k!=1)
+                    temp3 <<= 1;
+
+                temp1 <<= 2;
+            }
+        }
+        EPD_2IN9_V2_SendData(temp3);
+        // printf("%x ",temp3);
+    }
+
+    EPD_2IN9_V2_TurnOnDisplay();
+}
+
 void EPD_2IN9_V2_Display_Partial(UBYTE *Image)
 {
 	UWORD i;
 
 //Reset
     DEV_Digital_Write(EPD_RST_PIN, 0);
-    DEV_Delay_ms(2);
+    DEV_Delay_ms(1);
     DEV_Digital_Write(EPD_RST_PIN, 1);
     DEV_Delay_ms(2);
 
@@ -312,7 +447,7 @@ void EPD_2IN9_V2_Display_Partial(UBYTE *Image)
 	EPD_2IN9_V2_SendData(0x00);  
 	EPD_2IN9_V2_SendData(0x00);  
 	EPD_2IN9_V2_SendData(0x00); 
-	EPD_2IN9_V2_SendData(0x00);  	
+	EPD_2IN9_V2_SendData(0x00);  
 	EPD_2IN9_V2_SendData(0x40);  
 	EPD_2IN9_V2_SendData(0x00);  
 	EPD_2IN9_V2_SendData(0x00);   

+ 4 - 3
STM32/STM32-F103ZET6/User/e-Paper/EPD_2in9_V2.h

@@ -4,8 +4,8 @@
 * | Function    :   2.9inch e-paper V2
 * | Info        :
 *----------------
-* |	This version:   V1.0
-* | Date        :   2020-12-09
+* |	This version:   V1.1
+* | Date        :   2023-08-30
 * | Info        :
 * -----------------------------------------------------------------------------
 #
@@ -38,10 +38,11 @@
 #define EPD_2IN9_V2_HEIGHT      296
 
 void EPD_2IN9_V2_Init(void);
+void EPD_2IN9_V2_Gray4_Init(void);
 void EPD_2IN9_V2_Clear(void);
 void EPD_2IN9_V2_Display(UBYTE *Image);
 void EPD_2IN9_V2_Display_Base(UBYTE *Image);
+void EPD_2IN9_V2_4GrayDisplay(UBYTE *Image);
 void EPD_2IN9_V2_Display_Partial(UBYTE *Image);
 void EPD_2IN9_V2_Sleep(void);
-
 #endif

+ 2 - 1
Version_CN.txt

@@ -36,4 +36,5 @@
 2022-10-22:添加新程序7.3inch e-Paper (F)例程。
 2022-10-27:添加新程序2.7inch V2 e-Paper 例程。
 2023-05-29:添加新程序2.13inch e-Paper  (G)例程。
-2023-06-25:添加新程序2.13inch V4 e-Paper例程。
+2023-06-25:添加新程序2.13inch V4 e-Paper例程。
+2023-08-31:更新 2.9inch V2 e-Paper 的例程,添加四灰度显示

+ 2 - 1
Version_EN.txt

@@ -35,4 +35,5 @@
 2022-10-22: Added new programs 7.3inch e-Paper (F) routine.
 2022-10-27: Added new programs 2.7inch V2 e-Paper routine.
 2023-05-29: Added new programs 2.13inch e-Paper (G) routine.
-2023-06-25: Added new program 2.13inch V4 e-Paper routine.
+2023-06-25: Added new program 2.13inch V4 e-Paper routine.
+2023-08-31: Update the routines of the 2.9inch V2 e-Paper to add a four-grayscale display

Деякі файли не було показано, через те що забагато файлів було змінено