diff --git a/Arduino UNO/epd2in13d/epd2in13d.ino b/Arduino UNO/epd2in13d/epd2in13d.ino index 800bbe6..07f7972 100644 --- a/Arduino UNO/epd2in13d/epd2in13d.ino +++ b/Arduino UNO/epd2in13d/epd2in13d.ino @@ -45,7 +45,7 @@ void setup() return; } //Serial.print("ClearFrameMemory\n"); - // epd.ClearFrameMemory(); // bit set = white, bit reset = black + // epd.ClearFrameMemory(); // bit set = white, bit reset = black /** * there are 2 memory areas embedded in the e-paper display diff --git a/Arduino UNO/epd2in13d/epdif.cpp b/Arduino UNO/epd2in13d/epdif.cpp deleted file mode 100644 index fa17453..0000000 --- a/Arduino UNO/epd2in13d/epdif.cpp +++ /dev/null @@ -1,65 +0,0 @@ -/** - * @filename : epdif.cpp - * @brief : Implements EPD interface functions - * Users have to implement all the functions in epdif.cpp - * @author : Yehui from Waveshare - * - * Copyright (C) Waveshare August 10 2017 - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documnetation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - -#include "epdif.h" -#include - -EpdIf::EpdIf() { -}; - -EpdIf::~EpdIf() { -}; - -void EpdIf::DigitalWrite(int pin, int value) { - digitalWrite(pin, value); -} - -int EpdIf::DigitalRead(int pin) { - return digitalRead(pin); -} - -void EpdIf::DelayMs(unsigned int delaytime) { - delay(delaytime); -} - -void EpdIf::SpiTransfer(unsigned char data) { - digitalWrite(CS_PIN, LOW); - SPI.transfer(data); - digitalWrite(CS_PIN, HIGH); -} - -int EpdIf::IfInit(void) { - pinMode(CS_PIN, OUTPUT); - pinMode(RST_PIN, OUTPUT); - pinMode(DC_PIN, OUTPUT); - pinMode(BUSY_PIN, INPUT); - SPI.begin(); - SPI.beginTransaction(SPISettings(2000000, MSBFIRST, SPI_MODE0)); - - return 0; -} - diff --git a/Arduino UNO/epd2in13d/epdif.h b/Arduino UNO/epd2in13d/epdif.h deleted file mode 100644 index 3c55313..0000000 --- a/Arduino UNO/epd2in13d/epdif.h +++ /dev/null @@ -1,51 +0,0 @@ -/** - * @filename : epdif.h - * @brief : Header file of epdif.cpp providing EPD interface functions - * Users have to implement all the functions in epdif.cpp - * @author : Yehui from Waveshare - * - * Copyright (C) Waveshare August 10 2017 - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documnetation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - -#ifndef EPDIF_H -#define EPDIF_H - -#include - -// Pin definition -#define RST_PIN 8 -#define DC_PIN 9 -#define CS_PIN 10 -#define BUSY_PIN 7 - -class EpdIf { -public: - EpdIf(void); - ~EpdIf(void); - - static int IfInit(void); - static void DigitalWrite(int pin, int value); - static int DigitalRead(int pin); - static void DelayMs(unsigned int delaytime); - static void SpiTransfer(unsigned char data); -}; - -#endif diff --git a/Arduino UNO/epd2in13d/fepd2in13.cpp b/Arduino UNO/epd2in13d/fepd2in13.cpp deleted file mode 100644 index b427328..0000000 --- a/Arduino UNO/epd2in13d/fepd2in13.cpp +++ /dev/null @@ -1,292 +0,0 @@ -/** - * @filename : epd2in13.cpp - * @brief : Implements for e-paper library - * @author : Yehui from Waveshare - * - * Copyright (C) Waveshare September 9 2017 - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documnetation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - -#include -#include "fepd2in13.h" - -/** - * full screen update LUT -**/ -const unsigned char lut_vcomDC[] = { - 0x00, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x60, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x00, 0x14, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, -}; -const unsigned char lut_ww[] = { - 0x40, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x40, 0x14, 0x00, 0x00, 0x00, 0x01, - 0xA0, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -}; -const unsigned char lut_bw[] = { - 0x40, 0x17, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x0F, 0x0F, 0x00, 0x00, 0x03, - 0x40, 0x0A, 0x01, 0x00, 0x00, 0x01, - 0xA0, 0x0E, 0x0E, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -}; -const unsigned char lut_wb[] = { - 0x80, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x80, 0x14, 0x00, 0x00, 0x00, 0x01, - 0x50, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -}; -const unsigned char lut_bb[] = { - 0x80, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x80, 0x14, 0x00, 0x00, 0x00, 0x01, - 0x50, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -}; - -Epd::~Epd() { -}; - -Epd::Epd() { - reset_pin = RST_PIN; - dc_pin = DC_PIN; - cs_pin = CS_PIN; - busy_pin = BUSY_PIN; - width = EPD_WIDTH; - height = EPD_HEIGHT; -}; - -int Epd::Init() { - Serial.begin(9600); - /* this calls the peripheral hardware interface, see epdif */ - if (IfInit() != 0) { - return -1; - } - /* EPD hardware init start */ - Reset(); - - SendCommand(0x01); //POWER SETTING - SendData(0x03); - SendData(0x00); - SendData(0x2b); - SendData(0x2b); - SendData(0x03); - - SendCommand(0x06); //boost soft start - SendData(0x17); //A - SendData(0x17); //B - SendData(0x17); //C - - SendCommand(0x04); - // WaitUntilIdle(); - - SendCommand(0x00); //panel setting - SendData(0xbf); //LUT from OTP拢卢128x296 - SendData(0x0d); //VCOM to 0V fast - - SendCommand(0x30); //PLL setting - SendData(0x3a); // 3a 100HZ 29 150Hz 39 200HZ 31 171HZ - - SendCommand(0x61); //resolution setting - SendData(EPD_WIDTH); - SendData((EPD_HEIGHT >> 8) & 0xff); - SendData(EPD_HEIGHT& 0xff); - - SendCommand(0x82); //vcom_DC setting - SendData(0x28); - /* EPD hardware init end */ - return 0; -} - -/** - * @brief: basic function for sending commands - */ -void Epd::SendCommand(unsigned char command) { - DigitalWrite(dc_pin, LOW); - SpiTransfer(command); -} - -/** - * @brief: basic function for sending data - */ -void Epd::SendData(unsigned char data) { - DigitalWrite(dc_pin, HIGH); - SpiTransfer(data); -} - -/** - * @brief: Wait until the busy_pin goes LOW - */ -void Epd::WaitUntilIdle(void) { - while(DigitalRead(busy_pin) == HIGH) { //LOW: idle, HIGH: busy - DelayMs(100); - } -} - -/** - * @brief: module reset. - * often used to awaken the module in deep sleep, - * see Epd::Sleep(); - */ -void Epd::Reset(void) { - DigitalWrite(reset_pin, LOW); //module reset - DelayMs(200); - DigitalWrite(reset_pin, HIGH); - DelayMs(200); -} - -/** - * @brief: set the look-up table register - */ -void Epd::SetFullReg(void) -{ - SendCommand(0X50); //VCOM AND DATA INTERVAL SETTING - SendData(0x97); //WBmode:VBDF 17|D7 VBDW 97 VBDB 57 WBRmode:VBDF F7 VBDW 77 VBDB 37 VBDR B7 - - unsigned int count; - SendCommand(0x20); - for(count=0; count<44; count++) { - SendData(lut_vcomDC[count]); - } - - SendCommand(0x21); - for(count=0; count<42; count++) { - SendData(lut_ww[count]); - } - - SendCommand(0x22); - for(count=0; count<42; count++) { - SendData(lut_bw[count]); - } - - SendCommand(0x23); - for(count=0; count<42; count++) { - SendData(lut_wb[count]); - } - - SendCommand(0x24); - for(count=0; count<42; count++) { - SendData(lut_bb[count]); - } -} - -void Epd::SetFrameMemory(const unsigned char* image_buffer) { - unsigned char Width, Height, data; - Width = (EPD_WIDTH % 8 == 0)? (EPD_WIDTH / 8 ): (EPD_WIDTH / 8 + 1); - Height = EPD_HEIGHT; - - SendCommand(0x10); - for (int j = 0; j < Height; j++) { - for (int i = 0; i < Width; i++) { - SendData(0x00); - } - } - DelayMs(10); - - SendCommand(0x13); - for (int j = 0; j < Height; j++) { - for (int i = 0; i < Width; i++) { - data = pgm_read_byte(&image_buffer[i + j * Width]); - SendData(data); - // Serial.print(data); - } - } - DelayMs(10); - - SetFullReg(); - DisplayFrame(); -} - -/** - * @brief: clear the frame memory with the specified color. - * this won't update the display. - */ -void Epd::ClearFrameMemory() { - unsigned char Width, Height; - Width = (EPD_WIDTH % 8 == 0)? (EPD_WIDTH / 8 ): (EPD_WIDTH / 8 + 1); - Height = EPD_HEIGHT; - - SendCommand(0x10); - for (int j = 0; j < Height; j++) { - for (int i = 0; i < Width; i++) { - SendData(0x00); - } - } - DelayMs(10); - - SendCommand(0x13); - for (int j = 0; j < Height; j++) { - for (int i = 0; i < Width; i++) { - SendData(0xFF); - } - } - DelayMs(10); - - SetFullReg(); - DisplayFrame(); -} - -/** - * @brief: update the display - * there are 2 memory areas embedded in the e-paper display - * but once this function is called, - * the the next action of SetFrameMemory or ClearFrame will - * set the other memory area. - */ -void Epd::DisplayFrame(void) { - SendCommand(0x12); - DelayMs(100); - WaitUntilIdle(); -} - -/** - * @brief: After this command is transmitted, the chip would enter the - * deep-sleep mode to save power. - * The deep sleep mode would return to standby by hardware reset. - * You can use Epd::Init() to awaken - */ -void Epd::Sleep() { - SendCommand(0X50); - SendData(0xf7); - SendCommand(0X02); //power off - SendCommand(0X07); //deep sleep - SendData(0xA5); -} - - -/* END OF FILE */ - - diff --git a/Arduino UNO/epd2in13d/fepd2in13.h b/Arduino UNO/epd2in13d/fepd2in13.h deleted file mode 100644 index a3f7b33..0000000 --- a/Arduino UNO/epd2in13d/fepd2in13.h +++ /dev/null @@ -1,67 +0,0 @@ -/** - * @filename : epd2in13.h - * @brief : Header file for e-paper display library epd2in13.cpp - * @author : Yehui from Waveshare - * - * Copyright (C) Waveshare September 9 2017 - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documnetation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - -#ifndef FEPD2IN13_H -#define FEPD2IN13_H - -#include "epdif.h" - -// Display resolution -/* the resolution is 122x250 in fact */ -/* however, the logical resolution is 128x250 */ -#define EPD_WIDTH 104 -#define EPD_HEIGHT 212 - -class Epd : EpdIf { -public: - unsigned long width; - unsigned long height; - - Epd(); - ~Epd(); - int Init(); - void SendCommand(unsigned char command); - void SendData(unsigned char data); - void WaitUntilIdle(void); - void Reset(void); - void SetFrameMemory(const unsigned char* image_buffer); - void ClearFrameMemory(); - void DisplayFrame(void); - void Sleep(void); - -private: - unsigned int reset_pin; - unsigned int dc_pin; - unsigned int cs_pin; - unsigned int busy_pin; - const unsigned char* lut; - - void SetFullReg(void); -}; - -#endif /* EPD2IN13_H */ - -/* END OF FILE */ diff --git a/Jetson Nano/c/Makefile b/Jetson Nano/c/Makefile deleted file mode 100644 index 4546ecf..0000000 --- a/Jetson Nano/c/Makefile +++ /dev/null @@ -1,42 +0,0 @@ -DIR_Config = ./lib/Config -DIR_EPD = ./lib/e-Paper -DIR_FONTS = ./lib/Fonts -DIR_GUI = ./lib/GUI -DIR_Examples = ./examples -DIR_BIN = ./bin - -OBJ_C = $(wildcard ${DIR_EPD}/*.c ${DIR_Config}/*.c ${DIR_GUI}/*.c ${DIR_Examples}/*.c ${DIR_FONTS}/*.c) -OBJ_O = $(patsubst %.c,${DIR_BIN}/%.o,$(notdir ${OBJ_C})) - -TARGET = epd - -CC = gcc - -MSG = -g -O0 -Wall -DEBUG = -D DEBUG -# DEBUG = -CFLAGS += $(MSG) $(DEBUG) - -LIB = -I $(shell pwd) - -${TARGET}:${OBJ_O} - $(CC) $(CFLAGS) $(OBJ_O) -o $@ - -${DIR_BIN}/%.o:$(DIR_Examples)/%.c - $(CC) $(CFLAGS) -c $< -o $@ -I $(DIR_Config) -I $(DIR_GUI) -I $(DIR_EPD) - -${DIR_BIN}/%.o:$(DIR_Config)/%.c - $(CC) $(CFLAGS) -c $< -o $@ - -${DIR_BIN}/%.o:$(DIR_EPD)/%.c - $(CC) $(CFLAGS) -c $< -o $@ -I $(DIR_Config) - -${DIR_BIN}/%.o:$(DIR_FONTS)/%.c - $(CC) $(CFLAGS) -c $< -o $@ - -${DIR_BIN}/%.o:$(DIR_GUI)/%.c - $(CC) $(CFLAGS) -c $< -o $@ -I $(DIR_Config) - -clean : - rm $(DIR_BIN)/*.* - rm $(TARGET) \ No newline at end of file diff --git a/Jetson Nano/c/bin/DEV_Config.o b/Jetson Nano/c/bin/DEV_Config.o deleted file mode 100644 index 07da1ac..0000000 Binary files a/Jetson Nano/c/bin/DEV_Config.o and /dev/null differ diff --git a/Jetson Nano/c/bin/EPD_1in54.o b/Jetson Nano/c/bin/EPD_1in54.o deleted file mode 100644 index 21fc5b8..0000000 Binary files a/Jetson Nano/c/bin/EPD_1in54.o and /dev/null differ diff --git a/Jetson Nano/c/bin/EPD_1in54_V2.o b/Jetson Nano/c/bin/EPD_1in54_V2.o deleted file mode 100644 index e84d5b1..0000000 Binary files a/Jetson Nano/c/bin/EPD_1in54_V2.o and /dev/null differ diff --git a/Jetson Nano/c/bin/EPD_1in54_V2_test.o b/Jetson Nano/c/bin/EPD_1in54_V2_test.o deleted file mode 100644 index 8559756..0000000 Binary files a/Jetson Nano/c/bin/EPD_1in54_V2_test.o and /dev/null differ diff --git a/Jetson Nano/c/bin/EPD_1in54_test.o b/Jetson Nano/c/bin/EPD_1in54_test.o deleted file mode 100644 index cd57d14..0000000 Binary files a/Jetson Nano/c/bin/EPD_1in54_test.o and /dev/null differ diff --git a/Jetson Nano/c/bin/EPD_1in54b.o b/Jetson Nano/c/bin/EPD_1in54b.o deleted file mode 100644 index 7f211ca..0000000 Binary files a/Jetson Nano/c/bin/EPD_1in54b.o and /dev/null differ diff --git a/Jetson Nano/c/bin/EPD_1in54b_test.o b/Jetson Nano/c/bin/EPD_1in54b_test.o deleted file mode 100644 index 6db7a29..0000000 Binary files a/Jetson Nano/c/bin/EPD_1in54b_test.o and /dev/null differ diff --git a/Jetson Nano/c/bin/EPD_1in54c.o b/Jetson Nano/c/bin/EPD_1in54c.o deleted file mode 100644 index 78fb1b0..0000000 Binary files a/Jetson Nano/c/bin/EPD_1in54c.o and /dev/null differ diff --git a/Jetson Nano/c/bin/EPD_1in54c_test.o b/Jetson Nano/c/bin/EPD_1in54c_test.o deleted file mode 100644 index cbc2209..0000000 Binary files a/Jetson Nano/c/bin/EPD_1in54c_test.o and /dev/null differ diff --git a/Jetson Nano/c/bin/EPD_2in13.o b/Jetson Nano/c/bin/EPD_2in13.o deleted file mode 100644 index 1bf1dc3..0000000 Binary files a/Jetson Nano/c/bin/EPD_2in13.o and /dev/null differ diff --git a/Jetson Nano/c/bin/EPD_2in13_V2.o b/Jetson Nano/c/bin/EPD_2in13_V2.o deleted file mode 100644 index 00e0b95..0000000 Binary files a/Jetson Nano/c/bin/EPD_2in13_V2.o and /dev/null differ diff --git a/Jetson Nano/c/bin/EPD_2in13_V2_test.o b/Jetson Nano/c/bin/EPD_2in13_V2_test.o deleted file mode 100644 index a9d9da8..0000000 Binary files a/Jetson Nano/c/bin/EPD_2in13_V2_test.o and /dev/null differ diff --git a/Jetson Nano/c/bin/EPD_2in13_test.o b/Jetson Nano/c/bin/EPD_2in13_test.o deleted file mode 100644 index c343bd3..0000000 Binary files a/Jetson Nano/c/bin/EPD_2in13_test.o and /dev/null differ diff --git a/Jetson Nano/c/bin/EPD_2in13bc.o b/Jetson Nano/c/bin/EPD_2in13bc.o deleted file mode 100644 index 1eeb988..0000000 Binary files a/Jetson Nano/c/bin/EPD_2in13bc.o and /dev/null differ diff --git a/Jetson Nano/c/bin/EPD_2in13bc_test.o b/Jetson Nano/c/bin/EPD_2in13bc_test.o deleted file mode 100644 index dd84fd7..0000000 Binary files a/Jetson Nano/c/bin/EPD_2in13bc_test.o and /dev/null differ diff --git a/Jetson Nano/c/bin/EPD_2in13d.o b/Jetson Nano/c/bin/EPD_2in13d.o deleted file mode 100644 index 64d54bd..0000000 Binary files a/Jetson Nano/c/bin/EPD_2in13d.o and /dev/null differ diff --git a/Jetson Nano/c/bin/EPD_2in13d_test.o b/Jetson Nano/c/bin/EPD_2in13d_test.o deleted file mode 100644 index 6d187db..0000000 Binary files a/Jetson Nano/c/bin/EPD_2in13d_test.o and /dev/null differ diff --git a/Jetson Nano/c/bin/EPD_2in7.o b/Jetson Nano/c/bin/EPD_2in7.o deleted file mode 100644 index 08186e3..0000000 Binary files a/Jetson Nano/c/bin/EPD_2in7.o and /dev/null differ diff --git a/Jetson Nano/c/bin/EPD_2in7_test.o b/Jetson Nano/c/bin/EPD_2in7_test.o deleted file mode 100644 index 09d2e35..0000000 Binary files a/Jetson Nano/c/bin/EPD_2in7_test.o and /dev/null differ diff --git a/Jetson Nano/c/bin/EPD_2in7b.o b/Jetson Nano/c/bin/EPD_2in7b.o deleted file mode 100644 index e860138..0000000 Binary files a/Jetson Nano/c/bin/EPD_2in7b.o and /dev/null differ diff --git a/Jetson Nano/c/bin/EPD_2in7b_test.o b/Jetson Nano/c/bin/EPD_2in7b_test.o deleted file mode 100644 index a30c628..0000000 Binary files a/Jetson Nano/c/bin/EPD_2in7b_test.o and /dev/null differ diff --git a/Jetson Nano/c/bin/EPD_2in9.o b/Jetson Nano/c/bin/EPD_2in9.o deleted file mode 100644 index dfc6b64..0000000 Binary files a/Jetson Nano/c/bin/EPD_2in9.o and /dev/null differ diff --git a/Jetson Nano/c/bin/EPD_2in9_test.o b/Jetson Nano/c/bin/EPD_2in9_test.o deleted file mode 100644 index 5c36146..0000000 Binary files a/Jetson Nano/c/bin/EPD_2in9_test.o and /dev/null differ diff --git a/Jetson Nano/c/bin/EPD_2in9bc.o b/Jetson Nano/c/bin/EPD_2in9bc.o deleted file mode 100644 index a20b980..0000000 Binary files a/Jetson Nano/c/bin/EPD_2in9bc.o and /dev/null differ diff --git a/Jetson Nano/c/bin/EPD_2in9bc_test.o b/Jetson Nano/c/bin/EPD_2in9bc_test.o deleted file mode 100644 index b2f2621..0000000 Binary files a/Jetson Nano/c/bin/EPD_2in9bc_test.o and /dev/null differ diff --git a/Jetson Nano/c/bin/EPD_2in9d.o b/Jetson Nano/c/bin/EPD_2in9d.o deleted file mode 100644 index a44b838..0000000 Binary files a/Jetson Nano/c/bin/EPD_2in9d.o and /dev/null differ diff --git a/Jetson Nano/c/bin/EPD_2in9d_test.o b/Jetson Nano/c/bin/EPD_2in9d_test.o deleted file mode 100644 index 4ad3cdd..0000000 Binary files a/Jetson Nano/c/bin/EPD_2in9d_test.o and /dev/null differ diff --git a/Jetson Nano/c/bin/EPD_4in2.o b/Jetson Nano/c/bin/EPD_4in2.o deleted file mode 100644 index b2c397e..0000000 Binary files a/Jetson Nano/c/bin/EPD_4in2.o and /dev/null differ diff --git a/Jetson Nano/c/bin/EPD_4in2_test.o b/Jetson Nano/c/bin/EPD_4in2_test.o deleted file mode 100644 index 29754ba..0000000 Binary files a/Jetson Nano/c/bin/EPD_4in2_test.o and /dev/null differ diff --git a/Jetson Nano/c/bin/EPD_4in2bc.o b/Jetson Nano/c/bin/EPD_4in2bc.o deleted file mode 100644 index e68a259..0000000 Binary files a/Jetson Nano/c/bin/EPD_4in2bc.o and /dev/null differ diff --git a/Jetson Nano/c/bin/EPD_4in2bc_test.o b/Jetson Nano/c/bin/EPD_4in2bc_test.o deleted file mode 100644 index 7d9663b..0000000 Binary files a/Jetson Nano/c/bin/EPD_4in2bc_test.o and /dev/null differ diff --git a/Jetson Nano/c/bin/EPD_5in83.o b/Jetson Nano/c/bin/EPD_5in83.o deleted file mode 100644 index d9564ec..0000000 Binary files a/Jetson Nano/c/bin/EPD_5in83.o and /dev/null differ diff --git a/Jetson Nano/c/bin/EPD_5in83_test.o b/Jetson Nano/c/bin/EPD_5in83_test.o deleted file mode 100644 index 5b8205f..0000000 Binary files a/Jetson Nano/c/bin/EPD_5in83_test.o and /dev/null differ diff --git a/Jetson Nano/c/bin/EPD_5in83bc.o b/Jetson Nano/c/bin/EPD_5in83bc.o deleted file mode 100644 index 17918ee..0000000 Binary files a/Jetson Nano/c/bin/EPD_5in83bc.o and /dev/null differ diff --git a/Jetson Nano/c/bin/EPD_5in83bc_test.o b/Jetson Nano/c/bin/EPD_5in83bc_test.o deleted file mode 100644 index 0e2fd8e..0000000 Binary files a/Jetson Nano/c/bin/EPD_5in83bc_test.o and /dev/null differ diff --git a/Jetson Nano/c/bin/EPD_7in5.o b/Jetson Nano/c/bin/EPD_7in5.o deleted file mode 100644 index dcf0bb5..0000000 Binary files a/Jetson Nano/c/bin/EPD_7in5.o and /dev/null differ diff --git a/Jetson Nano/c/bin/EPD_7in5_test.o b/Jetson Nano/c/bin/EPD_7in5_test.o deleted file mode 100644 index cc73cea..0000000 Binary files a/Jetson Nano/c/bin/EPD_7in5_test.o and /dev/null differ diff --git a/Jetson Nano/c/bin/EPD_7in5bc.o b/Jetson Nano/c/bin/EPD_7in5bc.o deleted file mode 100644 index be011d1..0000000 Binary files a/Jetson Nano/c/bin/EPD_7in5bc.o and /dev/null differ diff --git a/Jetson Nano/c/bin/EPD_7in5bc_test.o b/Jetson Nano/c/bin/EPD_7in5bc_test.o deleted file mode 100644 index 11832de..0000000 Binary files a/Jetson Nano/c/bin/EPD_7in5bc_test.o and /dev/null differ diff --git a/Jetson Nano/c/bin/GUI_BMPfile.o b/Jetson Nano/c/bin/GUI_BMPfile.o deleted file mode 100644 index 69b65d3..0000000 Binary files a/Jetson Nano/c/bin/GUI_BMPfile.o and /dev/null differ diff --git a/Jetson Nano/c/bin/GUI_Paint.o b/Jetson Nano/c/bin/GUI_Paint.o deleted file mode 100644 index 48f7ec0..0000000 Binary files a/Jetson Nano/c/bin/GUI_Paint.o and /dev/null differ diff --git a/Jetson Nano/c/bin/ImageData.o b/Jetson Nano/c/bin/ImageData.o deleted file mode 100644 index c1843f8..0000000 Binary files a/Jetson Nano/c/bin/ImageData.o and /dev/null differ diff --git a/Jetson Nano/c/bin/font12.o b/Jetson Nano/c/bin/font12.o deleted file mode 100644 index 6d928b7..0000000 Binary files a/Jetson Nano/c/bin/font12.o and /dev/null differ diff --git a/Jetson Nano/c/bin/font12CN.o b/Jetson Nano/c/bin/font12CN.o deleted file mode 100644 index 98431f9..0000000 Binary files a/Jetson Nano/c/bin/font12CN.o and /dev/null differ diff --git a/Jetson Nano/c/bin/font16.o b/Jetson Nano/c/bin/font16.o deleted file mode 100644 index 3faf2bb..0000000 Binary files a/Jetson Nano/c/bin/font16.o and /dev/null differ diff --git a/Jetson Nano/c/bin/font20.o b/Jetson Nano/c/bin/font20.o deleted file mode 100644 index 46fd5e2..0000000 Binary files a/Jetson Nano/c/bin/font20.o and /dev/null differ diff --git a/Jetson Nano/c/bin/font24.o b/Jetson Nano/c/bin/font24.o deleted file mode 100644 index b9f4f1d..0000000 Binary files a/Jetson Nano/c/bin/font24.o and /dev/null differ diff --git a/Jetson Nano/c/bin/font24CN.o b/Jetson Nano/c/bin/font24CN.o deleted file mode 100644 index 990057b..0000000 Binary files a/Jetson Nano/c/bin/font24CN.o and /dev/null differ diff --git a/Jetson Nano/c/bin/font8.o b/Jetson Nano/c/bin/font8.o deleted file mode 100644 index d2b134a..0000000 Binary files a/Jetson Nano/c/bin/font8.o and /dev/null differ diff --git a/Jetson Nano/c/bin/main.o b/Jetson Nano/c/bin/main.o deleted file mode 100644 index cfc5025..0000000 Binary files a/Jetson Nano/c/bin/main.o and /dev/null differ diff --git a/Jetson Nano/c/bin/sysfs_gpio.o b/Jetson Nano/c/bin/sysfs_gpio.o deleted file mode 100644 index 327097e..0000000 Binary files a/Jetson Nano/c/bin/sysfs_gpio.o and /dev/null differ diff --git a/Jetson Nano/c/bin/sysfs_software_spi.o b/Jetson Nano/c/bin/sysfs_software_spi.o deleted file mode 100644 index 21f14cf..0000000 Binary files a/Jetson Nano/c/bin/sysfs_software_spi.o and /dev/null differ diff --git a/Jetson Nano/c/epd b/Jetson Nano/c/epd deleted file mode 100644 index 3104977..0000000 Binary files a/Jetson Nano/c/epd and /dev/null differ diff --git a/Jetson Nano/c/examples/EPD_1in54_test.c b/Jetson Nano/c/examples/EPD_1in54_test.c deleted file mode 100644 index 2dfb271..0000000 --- a/Jetson Nano/c/examples/EPD_1in54_test.c +++ /dev/null @@ -1,163 +0,0 @@ -/***************************************************************************** -* | File : EPD_1IN54_test.c -* | Author : Waveshare team -* | Function : 1.54inch e-paper test demo -* | Info : -*---------------- -* | This version: V1.0 -* | Date : 2019-06-11 -* | Info : -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "EPD_Test.h" -#include "EPD_1in54.h" - -int EPD_1in54_test(void) -{ - printf("EPD_1IN54_test Demo\r\n"); - DEV_Module_Init(); - - printf("e-Paper Init and Clear...\r\n"); - EPD_1IN54_Init(EPD_1IN54_FULL); - EPD_1IN54_Clear(); - DEV_Delay_ms(500); - - //Create a new image cache - UBYTE *BlackImage; - /* you have to edit the startup_stm32fxxx.s file and set a big enough heap size */ - UWORD Imagesize = ((EPD_1IN54_WIDTH % 8 == 0)? (EPD_1IN54_WIDTH / 8 ): (EPD_1IN54_WIDTH / 8 + 1)) * EPD_1IN54_HEIGHT; - if((BlackImage = (UBYTE *)malloc(Imagesize)) == NULL) { - printf("Failed to apply for black memory...\r\n"); - return -1; - } - printf("Paint_NewImage\r\n"); - Paint_NewImage(BlackImage, EPD_1IN54_WIDTH, EPD_1IN54_HEIGHT, 270, WHITE); - -#if 1 // show bmp - printf("show window BMP-----------------\r\n"); - Paint_SelectImage(BlackImage); - - Paint_Clear(WHITE); - GUI_ReadBmp("./pic/100x100.bmp", 50, 50); - EPD_1IN54_Display(BlackImage); - DEV_Delay_ms(500); - - printf("show bmp------------------------\r\n"); - Paint_Clear(WHITE); - GUI_ReadBmp("./pic/1in54.bmp", 0, 0); - EPD_1IN54_Display(BlackImage); - DEV_Delay_ms(2000); -#endif - -#if 1 //show image for array - printf("show image for array\r\n"); - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - Paint_DrawBitMap(gImage_1in54); - - EPD_1IN54_Display(BlackImage); - DEV_Delay_ms(2000); -#endif - -#if 1 // Drawing on the image - printf("Drawing\r\n"); - //1.Select Image - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - - // 2.Drawing on the image - Paint_DrawPoint(5, 10, BLACK, DOT_PIXEL_1X1, DOT_STYLE_DFT); - Paint_DrawPoint(5, 25, BLACK, DOT_PIXEL_2X2, DOT_STYLE_DFT); - Paint_DrawPoint(5, 40, BLACK, DOT_PIXEL_3X3, DOT_STYLE_DFT); - Paint_DrawPoint(5, 55, BLACK, DOT_PIXEL_4X4, DOT_STYLE_DFT); - - Paint_DrawLine(20, 10, 70, 60, BLACK, DOT_PIXEL_1X1, LINE_STYLE_SOLID); - Paint_DrawLine(70, 10, 20, 60, BLACK, DOT_PIXEL_1X1, LINE_STYLE_SOLID); - Paint_DrawLine(170, 15, 170, 55, BLACK, DOT_PIXEL_1X1, LINE_STYLE_DOTTED); - Paint_DrawLine(150, 35, 190, 35, BLACK, DOT_PIXEL_1X1, LINE_STYLE_DOTTED); - - Paint_DrawRectangle(20, 10, 70, 60, BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY); - Paint_DrawRectangle(85, 10, 130, 60, BLACK, DOT_PIXEL_1X1, DRAW_FILL_FULL); - - Paint_DrawCircle(170, 35, 20, BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY); - Paint_DrawCircle(170, 85, 20, BLACK, DOT_PIXEL_1X1, DRAW_FILL_FULL); - Paint_DrawString_EN(5, 85, "waveshare", &Font20, BLACK, WHITE); - Paint_DrawNum(5, 110, 123456789, &Font20, BLACK, WHITE); - - Paint_DrawString_CN(5, 135,"你好abc", &Font12CN, BLACK, WHITE); - Paint_DrawString_CN(5, 155, "微雪电子", &Font24CN, WHITE, BLACK); - - EPD_1IN54_Display(BlackImage); - DEV_Delay_ms(2000); -#endif - -#if 1 //Partial refresh, example shows time - printf("Partial refresh\r\n"); - EPD_1IN54_Init(EPD_1IN54_PART); - Paint_SelectImage(BlackImage); - PAINT_TIME sPaint_time; - sPaint_time.Hour = 12; - sPaint_time.Min = 34; - sPaint_time.Sec = 56; - UBYTE num = 20; - for (;;) { - sPaint_time.Sec = sPaint_time.Sec + 1; - if (sPaint_time.Sec == 60) { - sPaint_time.Min = sPaint_time.Min + 1; - sPaint_time.Sec = 0; - if (sPaint_time.Min == 60) { - sPaint_time.Hour = sPaint_time.Hour + 1; - sPaint_time.Min = 0; - if (sPaint_time.Hour == 24) { - sPaint_time.Hour = 0; - sPaint_time.Min = 0; - sPaint_time.Sec = 0; - } - } - } - Paint_ClearWindows(15, 65, 15 + Font20.Width * 7, 65 + Font20.Height, WHITE); - Paint_DrawTime(15, 65, &sPaint_time, &Font20, WHITE, BLACK); - num = num - 1; - if(num == 0) { - break; - } - EPD_1IN54_Display(BlackImage); - // DEV_Delay_ms(100);//Analog clock 1s - } - -#endif - - printf("Clear...\r\n"); - EPD_1IN54_Init(EPD_1IN54_FULL); - EPD_1IN54_Clear(); - - printf("Goto Sleep...\r\n"); - EPD_1IN54_Sleep(); - free(BlackImage); - BlackImage = NULL; - - // close 5V - printf("close 5V, Module enters 0 power consumption ...\r\n"); - DEV_Module_Exit(); - - return 0; -} - diff --git a/Jetson Nano/c/examples/EPD_2in13_V2_test.c b/Jetson Nano/c/examples/EPD_2in13_V2_test.c deleted file mode 100644 index e86139c..0000000 --- a/Jetson Nano/c/examples/EPD_2in13_V2_test.c +++ /dev/null @@ -1,172 +0,0 @@ -/***************************************************************************** -* | File : EPD_2IN13_V2_test.c -* | Author : Waveshare team -* | Function : 2.13inch e-paper(V2) test demo -* | Info : -*---------------- -* | This version: V1.0 -* | Date : 2019-06-13 -* | Info : -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "EPD_Test.h" -#include "EPD_2in13_V2.h" - -int EPD_2in13_V2_test(void) -{ - printf("EPD_2IN13_V2_test Demo\r\n"); - DEV_Module_Init(); - - printf("e-Paper Init and Clear...\r\n"); - EPD_2IN13_V2_Init(EPD_2IN13_V2_FULL); - EPD_2IN13_V2_Clear(); - DEV_Delay_ms(500); - - //Create a new image cache - UBYTE *BlackImage; - /* you have to edit the startup_stm32fxxx.s file and set a big enough heap size */ - UWORD Imagesize = ((EPD_2IN13_V2_WIDTH % 8 == 0)? (EPD_2IN13_V2_WIDTH / 8 ): (EPD_2IN13_V2_WIDTH / 8 + 1)) * EPD_2IN13_V2_HEIGHT; - if((BlackImage = (UBYTE *)malloc(Imagesize)) == NULL) { - printf("Failed to apply for black memory...\r\n"); - return -1; - } - printf("Paint_NewImage\r\n"); - Paint_NewImage(BlackImage, EPD_2IN13_V2_WIDTH, EPD_2IN13_V2_HEIGHT, 270, WHITE); - Paint_SelectImage(BlackImage); - Paint_SetMirroring(MIRROR_HORIZONTAL); // - Paint_Clear(WHITE); - -#if 1 // show bmp - printf("show window BMP-----------------\r\n"); - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - GUI_ReadBmp("./pic/100x100.bmp", 10, 10); - EPD_2IN13_V2_Display(BlackImage); - DEV_Delay_ms(2000); - - printf("show bmp------------------------\r\n"); - Paint_SelectImage(BlackImage); - GUI_ReadBmp("./pic/2in13-v2.bmp", 0, 0); - EPD_2IN13_V2_Display(BlackImage); - DEV_Delay_ms(2000); -#endif - - -#if 1 //show image for array - printf("show image for array\r\n"); - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - Paint_DrawBitMap(gImage_2in13); - - EPD_2IN13_V2_Display(BlackImage); - DEV_Delay_ms(2000); -#endif - -#if 1 // Drawing on the image - printf("Drawing\r\n"); - //1.Select Image - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - - // 2.Drawing on the image - Paint_DrawPoint(5, 10, BLACK, DOT_PIXEL_1X1, DOT_STYLE_DFT); - Paint_DrawPoint(5, 25, BLACK, DOT_PIXEL_2X2, DOT_STYLE_DFT); - Paint_DrawPoint(5, 40, BLACK, DOT_PIXEL_3X3, DOT_STYLE_DFT); - Paint_DrawPoint(5, 55, BLACK, DOT_PIXEL_4X4, DOT_STYLE_DFT); - - Paint_DrawLine(20, 10, 70, 60, BLACK, DOT_PIXEL_1X1, LINE_STYLE_SOLID); - Paint_DrawLine(70, 10, 20, 60, BLACK, DOT_PIXEL_1X1, LINE_STYLE_SOLID); - Paint_DrawRectangle(20, 10, 70, 60, BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY); - Paint_DrawRectangle(85, 10, 135, 60, BLACK, DOT_PIXEL_1X1, DRAW_FILL_FULL); - - Paint_DrawLine(45, 15, 45, 55, BLACK, DOT_PIXEL_1X1, LINE_STYLE_DOTTED); - Paint_DrawLine(25, 35, 70, 35, BLACK, DOT_PIXEL_1X1, LINE_STYLE_DOTTED); - Paint_DrawCircle(45, 35, 20, BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY); - Paint_DrawCircle(110, 35, 20, WHITE, DOT_PIXEL_1X1, DRAW_FILL_FULL); - - Paint_DrawString_EN(140, 15, "waveshare", &Font16, BLACK, WHITE); - Paint_DrawNum(140, 40, 123456789, &Font16, BLACK, WHITE); - - Paint_DrawString_CN(140, 60, "你好abc", &Font12CN, BLACK, WHITE); - Paint_DrawString_CN(5, 65, "微雪电子", &Font24CN, WHITE, BLACK); - - EPD_2IN13_V2_Display(BlackImage); - DEV_Delay_ms(2000); -#endif - -#if 1 //Partial refresh, example shows time - printf("Partial refresh\r\n"); - EPD_2IN13_V2_Init(EPD_2IN13_V2_FULL); - EPD_2IN13_V2_DisplayPartBaseImage(BlackImage); - - EPD_2IN13_V2_Init(EPD_2IN13_V2_PART); - Paint_SelectImage(BlackImage); - PAINT_TIME sPaint_time; - sPaint_time.Hour = 12; - sPaint_time.Min = 34; - sPaint_time.Sec = 56; - UBYTE num = 20; - for (;;) { - sPaint_time.Sec = sPaint_time.Sec + 1; - if (sPaint_time.Sec == 60) { - sPaint_time.Min = sPaint_time.Min + 1; - sPaint_time.Sec = 0; - if (sPaint_time.Min == 60) { - sPaint_time.Hour = sPaint_time.Hour + 1; - sPaint_time.Min = 0; - if (sPaint_time.Hour == 24) { - sPaint_time.Hour = 0; - sPaint_time.Min = 0; - sPaint_time.Sec = 0; - } - } - } - Paint_ClearWindows(140, 90, 140 + Font20.Width * 7, 90 + Font20.Height, WHITE); - Paint_DrawTime(140, 90, &sPaint_time, &Font20, WHITE, BLACK); - - num = num - 1; - if(num == 0) { - break; - } - EPD_2IN13_V2_DisplayPart(BlackImage); - DEV_Delay_ms(500);//Analog clock 1s - } - -#endif - printf("Clear...\r\n"); - - EPD_2IN13_V2_Init(EPD_2IN13_V2_FULL); - EPD_2IN13_V2_Clear(); - DEV_Delay_ms(2000);//Analog clock 1s - - printf("Goto Sleep...\r\n"); - EPD_2IN13_V2_Sleep(); - free(BlackImage); - BlackImage = NULL; - DEV_Delay_ms(1000);//Analog clock 1s - - // close 5V - printf("close 5V, Module enters 0 power consumption ...\r\n"); - DEV_Module_Exit(); - - return 0; -} - diff --git a/Jetson Nano/c/examples/EPD_4in2_test.c b/Jetson Nano/c/examples/EPD_4in2_test.c deleted file mode 100644 index 96d7471..0000000 --- a/Jetson Nano/c/examples/EPD_4in2_test.c +++ /dev/null @@ -1,123 +0,0 @@ -/***************************************************************************** -* | File : EPD_4in2_test.c -* | Author : Waveshare team -* | Function : 4.2inch e-paper test demo -* | Info : -*---------------- -* | This version: V1.0 -* | Date : 2019-06-13 -* | Info : -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "EPD_Test.h" -#include "EPD_4in2.h" - -int EPD_4in2_test(void) -{ - printf("EPD_4IN2_test Demo\r\n"); - DEV_Module_Init(); - - printf("e-Paper Init and Clear...\r\n"); - EPD_4IN2_Init(); - EPD_4IN2_Clear(); - DEV_Delay_ms(500); - - //Create a new image cache - UBYTE *BlackImage; - /* you have to edit the startup_stm32fxxx.s file and set a big enough heap size */ - UWORD Imagesize = ((EPD_4IN2_WIDTH % 8 == 0)? (EPD_4IN2_WIDTH / 8 ): (EPD_4IN2_WIDTH / 8 + 1)) * EPD_4IN2_HEIGHT; - if((BlackImage = (UBYTE *)malloc(Imagesize)) == NULL) { - printf("Failed to apply for black memory...\r\n"); - return -1; - } - printf("Paint_NewImage\r\n"); - Paint_NewImage(BlackImage, EPD_4IN2_WIDTH, EPD_4IN2_HEIGHT, 180, WHITE); - -#if 1 // show bmp - printf("show window BMP-----------------\r\n"); - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - GUI_ReadBmp("./pic/100x100.bmp", 10, 10); - EPD_4IN2_Display(BlackImage); - DEV_Delay_ms(2000); - - printf("show bmp------------------------\r\n"); - Paint_SelectImage(BlackImage); - GUI_ReadBmp("./pic/4in2.bmp", 0, 0); - EPD_4IN2_Display(BlackImage); - DEV_Delay_ms(2000); -#endif - -#if 1 // show image for array - printf("show image for array\r\n"); - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - Paint_DrawBitMap(gImage_4in2); - EPD_4IN2_Display(BlackImage); - DEV_Delay_ms(500); -#endif - -#if 1 // Drawing on the image - //1.Select Image - printf("SelectImage:BlackImage\r\n"); - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - - // 2.Drawing on the image - printf("Drawing:BlackImage\r\n"); - Paint_DrawPoint(10, 80, BLACK, DOT_PIXEL_1X1, DOT_STYLE_DFT); - Paint_DrawPoint(10, 90, BLACK, DOT_PIXEL_2X2, DOT_STYLE_DFT); - Paint_DrawPoint(10, 100, BLACK, DOT_PIXEL_3X3, DOT_STYLE_DFT); - Paint_DrawLine(20, 70, 70, 120, BLACK, DOT_PIXEL_1X1, LINE_STYLE_SOLID); - Paint_DrawLine(70, 70, 20, 120, BLACK, DOT_PIXEL_1X1, LINE_STYLE_SOLID); - Paint_DrawRectangle(20, 70, 70, 120, BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY); - Paint_DrawRectangle(80, 70, 130, 120, BLACK, DOT_PIXEL_1X1, DRAW_FILL_FULL); - Paint_DrawCircle(45, 95, 20, BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY); - Paint_DrawCircle(105, 95, 20, WHITE, DOT_PIXEL_1X1, DRAW_FILL_FULL); - Paint_DrawLine(85, 95, 125, 95, BLACK, DOT_PIXEL_1X1, LINE_STYLE_DOTTED); - Paint_DrawLine(105, 75, 105, 115, BLACK, DOT_PIXEL_1X1, LINE_STYLE_DOTTED); - Paint_DrawString_EN(10, 0, "waveshare", &Font16, BLACK, WHITE); - Paint_DrawString_EN(10, 20, "hello world", &Font12, WHITE, BLACK); - 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); - - printf("EPD_Display\r\n"); - EPD_4IN2_Display(BlackImage); - DEV_Delay_ms(2000); -#endif - - printf("Clear...\r\n"); - EPD_4IN2_Clear(); - - printf("Goto Sleep...\r\n"); - EPD_4IN2_Sleep(); - free(BlackImage); - BlackImage = NULL; - - // close 5V - printf("close 5V, Module enters 0 power consumption ...\r\n"); - DEV_Module_Exit(); - - return 0; -} - diff --git a/Jetson Nano/c/examples/EPD_5in83_test.c b/Jetson Nano/c/examples/EPD_5in83_test.c deleted file mode 100644 index 9ecfc72..0000000 --- a/Jetson Nano/c/examples/EPD_5in83_test.c +++ /dev/null @@ -1,123 +0,0 @@ -/***************************************************************************** -* | File : EPD_5in83_test.c -* | Author : Waveshare team -* | Function : 5.83inch e-paper test demo -* | Info : -*---------------- -* | This version: V1.0 -* | Date : 2019-06-13 -* | Info : -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "EPD_Test.h" -#include "EPD_5in83.h" - -int EPD_5in83_test(void) -{ - printf("EPD_5IN83_test Demo\r\n"); - DEV_Module_Init(); - - printf("e-Paper Init and Clear...\r\n"); - EPD_5IN83_Init(); - EPD_5IN83_Clear(); - DEV_Delay_ms(500); - - //Create a new image cache - UBYTE *BlackImage; - /* you have to edit the startup_stm32fxxx.s file and set a big enough heap size */ - UWORD Imagesize = ((EPD_5IN83_WIDTH % 8 == 0)? (EPD_5IN83_WIDTH / 8 ): (EPD_5IN83_WIDTH / 8 + 1)) * EPD_5IN83_HEIGHT; - if((BlackImage = (UBYTE *)malloc(Imagesize)) == NULL) { - printf("Failed to apply for black memory...\r\n"); - return -1; - } - printf("Paint_NewImage\r\n"); - Paint_NewImage(BlackImage, EPD_5IN83_WIDTH, EPD_5IN83_HEIGHT, 180, WHITE); - -#if 1 // show bmp - printf("show window BMP-----------------\r\n"); - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - GUI_ReadBmp("./pic/100x100.bmp", 10, 10); - EPD_5IN83_Display(BlackImage); - DEV_Delay_ms(2000); - - printf("show bmp------------------------\r\n"); - Paint_SelectImage(BlackImage); - GUI_ReadBmp("./pic/5in83.bmp", 0, 0); - EPD_5IN83_Display(BlackImage); - DEV_Delay_ms(2000); -#endif - -#if 0 // show image for array - printf("show image for array\r\n"); - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - Paint_DrawBitMap(gImage_5in83); - EPD_5IN83_Display(BlackImage); - DEV_Delay_ms(500); -#endif - -#if 0 // Drawing on the image - //1.Select Image - printf("SelectImage:BlackImage\r\n"); - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - - // 2.Drawing on the image - printf("Drawing:BlackImage\r\n"); - Paint_DrawPoint(10, 80, BLACK, DOT_PIXEL_1X1, DOT_STYLE_DFT); - Paint_DrawPoint(10, 90, BLACK, DOT_PIXEL_2X2, DOT_STYLE_DFT); - Paint_DrawPoint(10, 100, BLACK, DOT_PIXEL_3X3, DOT_STYLE_DFT); - Paint_DrawLine(20, 70, 70, 120, BLACK, DOT_PIXEL_1X1, LINE_STYLE_SOLID); - Paint_DrawLine(70, 70, 20, 120, BLACK, DOT_PIXEL_1X1, LINE_STYLE_SOLID); - Paint_DrawRectangle(20, 70, 70, 120, BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY); - Paint_DrawRectangle(80, 70, 130, 120, BLACK, DOT_PIXEL_1X1, DRAW_FILL_FULL); - Paint_DrawCircle(45, 95, 20, BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY); - Paint_DrawCircle(105, 95, 20, WHITE, DOT_PIXEL_1X1, DRAW_FILL_FULL); - Paint_DrawLine(85, 95, 125, 95, BLACK, DOT_PIXEL_1X1, LINE_STYLE_DOTTED); - Paint_DrawLine(105, 75, 105, 115, BLACK, DOT_PIXEL_1X1, LINE_STYLE_DOTTED); - Paint_DrawString_EN(10, 0, "waveshare", &Font16, BLACK, WHITE); - Paint_DrawString_EN(10, 20, "hello world", &Font12, WHITE, BLACK); - 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); - - printf("EPD_Display\r\n"); - EPD_5IN83_Display(BlackImage); - DEV_Delay_ms(2000); -#endif - - printf("Clear...\r\n"); - EPD_5IN83_Clear(); - - printf("Goto Sleep...\r\n"); - EPD_5IN83_Sleep(); - free(BlackImage); - BlackImage = NULL; - - // close 5V - printf("close 5V, Module enters 0 power consumption ...\r\n"); - DEV_Module_Exit(); - - return 0; -} - diff --git a/Jetson Nano/c/examples/EPD_5in83bc_test.c b/Jetson Nano/c/examples/EPD_5in83bc_test.c deleted file mode 100644 index 16de9cd..0000000 --- a/Jetson Nano/c/examples/EPD_5in83bc_test.c +++ /dev/null @@ -1,136 +0,0 @@ -/***************************************************************************** -* | File : EPD_5in83bc_test.c -* | Author : Waveshare team -* | Function : 5.83inch B&C e-paper test demo -* | Info : -*---------------- -* | This version: V1.0 -* | Date : 2019-06-13 -* | Info : -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "EPD_Test.h" -#include "EPD_5in83bc.h" - -int EPD_5in83bc_test(void) -{ - printf("EPD_5IN83BC_test Demo\r\n"); - DEV_Module_Init(); - - printf("e-Paper Init and Clear...\r\n"); - EPD_5IN83BC_Init(); - EPD_5IN83BC_Clear(); - DEV_Delay_ms(500); - - //Create a new image cache named IMAGE_BW and fill it with white - UBYTE *BlackImage, *RYImage; - UWORD Imagesize = ((EPD_5IN83BC_WIDTH % 8 == 0)? (EPD_5IN83BC_WIDTH / 8 ): (EPD_5IN83BC_WIDTH / 8 + 1)) * EPD_5IN83BC_HEIGHT; - if((BlackImage = (UBYTE *)malloc(Imagesize / 2)) == NULL) { - printf("Failed to apply for black memory...\r\n"); - return -1; - } - if((RYImage = (UBYTE *)malloc(Imagesize / 2)) == NULL) { - printf("Failed to apply for red memory...\r\n"); - return -1; - } - printf("NewImage:BlackImage and RYImage\r\n"); - Paint_NewImage(BlackImage, EPD_5IN83BC_WIDTH, EPD_5IN83BC_HEIGHT / 2, 0, WHITE); - Paint_NewImage(RYImage, EPD_5IN83BC_WIDTH, EPD_5IN83BC_HEIGHT / 2, 0, WHITE); - - //Select Image - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - Paint_SelectImage(RYImage); - Paint_Clear(WHITE); - -#if 1 // show bmp - printf("show window BMP-----------------\r\n"); - Paint_SelectImage(BlackImage); - GUI_ReadBmp("./pic/100x100.bmp", 10, 0); - Paint_SelectImage(RYImage); - Paint_Clear(WHITE); - EPD_5IN83BC_Display(BlackImage, RYImage); - DEV_Delay_ms(2000); - - printf("show red bmp------------------------\r\n"); - Paint_SelectImage(BlackImage); - GUI_ReadBmp("./pic/5in83bc-b.bmp", 0, 0); - Paint_SelectImage(RYImage); - GUI_ReadBmp("./pic/5in83bc-ry.bmp", 0, 0); - EPD_5IN83BC_Display(BlackImage, RYImage); -#endif - -#if 1 // show image for array - printf("show image for array\r\n"); - EPD_5IN83BC_Display(gImage_5in83bc_b, gImage_5in83bc_ry); - DEV_Delay_ms(2000); -#endif - -#if 1 // Drawing on the image - /*Horizontal screen*/ - //1.Draw black image - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - Paint_DrawPoint(10, 80, BLACK, DOT_PIXEL_1X1, DOT_STYLE_DFT); - Paint_DrawPoint(10, 90, BLACK, DOT_PIXEL_2X2, DOT_STYLE_DFT); - Paint_DrawPoint(10, 100, BLACK, DOT_PIXEL_3X3, DOT_STYLE_DFT); - Paint_DrawPoint(10, 110, BLACK, DOT_PIXEL_3X3, DOT_STYLE_DFT); - Paint_DrawLine(20, 70, 70, 120, BLACK, DOT_PIXEL_1X1, LINE_STYLE_SOLID); - Paint_DrawLine(70, 70, 20, 120, BLACK, DOT_PIXEL_1X1, LINE_STYLE_SOLID); - Paint_DrawRectangle(20, 70, 70, 120, BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY); - Paint_DrawRectangle(80, 70, 130, 120, BLACK, DOT_PIXEL_1X1, DRAW_FILL_FULL); - Paint_DrawString_EN(10, 0, "waveshare", &Font16, BLACK, WHITE); - Paint_DrawString_CN(130, 20, "微雪电子", &Font24CN, WHITE, BLACK); - Paint_DrawNum(10, 50, 987654321, &Font16, WHITE, BLACK); - - //2.Draw red image - Paint_SelectImage(RYImage); - Paint_Clear(WHITE); - Paint_DrawCircle(160, 95, 20, BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY); - Paint_DrawCircle(210, 95, 20, BLACK, DOT_PIXEL_1X1, DRAW_FILL_FULL); - Paint_DrawLine(85, 95, 125, 95, BLACK, DOT_PIXEL_1X1, LINE_STYLE_DOTTED); - Paint_DrawLine(105, 75,+ 105, 115, BLACK, DOT_PIXEL_1X1, LINE_STYLE_DOTTED); - Paint_DrawString_CN(130, 0,"你好abc", &Font12CN, BLACK, WHITE); - Paint_DrawString_EN(10, 20, "hello world", &Font12, WHITE, BLACK); - Paint_DrawNum(10, 33, 123456789, &Font12, BLACK, WHITE); - - printf("EPD_Display\r\n"); - EPD_5IN83BC_DisplayHalfScreen(BlackImage, RYImage); - DEV_Delay_ms(2000); -#endif - - printf("Clear...\r\n"); - EPD_5IN83BC_Clear(); - - printf("Goto Sleep...\r\n"); - EPD_5IN83BC_Sleep(); - free(BlackImage); - free(RYImage); - BlackImage = NULL; - RYImage = NULL; - - // close 5V - printf("close 5V, Module enters 0 power consumption ...\r\n"); - DEV_Module_Exit(); - - return 0; -} - diff --git a/Jetson Nano/c/examples/EPD_7in5bc_test.c b/Jetson Nano/c/examples/EPD_7in5bc_test.c deleted file mode 100644 index 5a092ef..0000000 --- a/Jetson Nano/c/examples/EPD_7in5bc_test.c +++ /dev/null @@ -1,136 +0,0 @@ -/***************************************************************************** -* | File : EPD_7in5bc_test.c -* | Author : Waveshare team -* | Function : 5.83inch B&C e-paper test demo -* | Info : -*---------------- -* | This version: V1.0 -* | Date : 2019-06-13 -* | Info : -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "EPD_Test.h" -#include "EPD_7in5bc.h" - -int EPD_7in5bc_test(void) -{ - printf("EPD_7IN5BC_test Demo\r\n"); - DEV_Module_Init(); - - printf("e-Paper Init and Clear...\r\n"); - EPD_7IN5BC_Init(); - EPD_7IN5BC_Clear(); - DEV_Delay_ms(500); - - //Create a new image cache named IMAGE_BW and fill it with white - UBYTE *BlackImage, *RYImage; - UWORD Imagesize = ((EPD_7IN5BC_WIDTH % 8 == 0)? (EPD_7IN5BC_WIDTH / 8 ): (EPD_7IN5BC_WIDTH / 8 + 1)) * EPD_7IN5BC_HEIGHT; - if((BlackImage = (UBYTE *)malloc(Imagesize / 2)) == NULL) { - printf("Failed to apply for black memory...\r\n"); - return -1; - } - if((RYImage = (UBYTE *)malloc(Imagesize / 2)) == NULL) { - printf("Failed to apply for red memory...\r\n"); - return -1; - } - printf("NewImage:BlackImage and RYImage\r\n"); - Paint_NewImage(BlackImage, EPD_7IN5BC_WIDTH, EPD_7IN5BC_HEIGHT / 2, 0, WHITE); - Paint_NewImage(RYImage, EPD_7IN5BC_WIDTH, EPD_7IN5BC_HEIGHT / 2, 0, WHITE); - - //Select Image - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - Paint_SelectImage(RYImage); - Paint_Clear(WHITE); - -#if 1 // show bmp - printf("show window BMP-----------------\r\n"); - Paint_SelectImage(BlackImage); - GUI_ReadBmp("./pic/100x100.bmp", 10, 0); - Paint_SelectImage(RYImage); - Paint_Clear(WHITE); - EPD_7IN5BC_Display(BlackImage, RYImage); - DEV_Delay_ms(2000); - - printf("show red bmp------------------------\r\n"); - Paint_SelectImage(BlackImage); - GUI_ReadBmp("./pic/7in5b-b.bmp", 0, 0); - Paint_SelectImage(RYImage); - GUI_ReadBmp("./pic/7in5b-r.bmp", 0, 0); - EPD_7IN5BC_Display(BlackImage, RYImage); -#endif - -#if 1 // show image for array - printf("show image for array\r\n"); - EPD_7IN5BC_Display(gImage_7in5bc_b, gImage_7in5bc_ry); - DEV_Delay_ms(2000); -#endif - -#if 1 // Drawing on the image - /*Horizontal screen*/ - //1.Draw black image - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - Paint_DrawPoint(10, 80, BLACK, DOT_PIXEL_1X1, DOT_STYLE_DFT); - Paint_DrawPoint(10, 90, BLACK, DOT_PIXEL_2X2, DOT_STYLE_DFT); - Paint_DrawPoint(10, 100, BLACK, DOT_PIXEL_3X3, DOT_STYLE_DFT); - Paint_DrawPoint(10, 110, BLACK, DOT_PIXEL_3X3, DOT_STYLE_DFT); - Paint_DrawLine(20, 70, 70, 120, BLACK, DOT_PIXEL_1X1, LINE_STYLE_SOLID); - Paint_DrawLine(70, 70, 20, 120, BLACK, DOT_PIXEL_1X1, LINE_STYLE_SOLID); - Paint_DrawRectangle(20, 70, 70, 120, BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY); - Paint_DrawRectangle(80, 70, 130, 120, BLACK, DOT_PIXEL_1X1, DRAW_FILL_FULL); - Paint_DrawString_EN(10, 0, "waveshare", &Font16, BLACK, WHITE); - Paint_DrawString_CN(130, 20, "微雪电子", &Font24CN, WHITE, BLACK); - Paint_DrawNum(10, 50, 987654321, &Font16, WHITE, BLACK); - - //2.Draw red image - Paint_SelectImage(RYImage); - Paint_Clear(WHITE); - Paint_DrawCircle(160, 95, 20, BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY); - Paint_DrawCircle(210, 95, 20, BLACK, DOT_PIXEL_1X1, DRAW_FILL_FULL); - Paint_DrawLine(85, 95, 125, 95, BLACK, DOT_PIXEL_1X1, LINE_STYLE_DOTTED); - Paint_DrawLine(105, 75, 105, 115, BLACK, DOT_PIXEL_1X1, LINE_STYLE_DOTTED); - Paint_DrawString_CN(130, 0,"你好abc", &Font12CN, BLACK, WHITE); - Paint_DrawString_EN(10, 20, "hello world", &Font12, WHITE, BLACK); - Paint_DrawNum(10, 33, 123456789, &Font12, BLACK, WHITE); - - printf("EPD_Display\r\n"); - EPD_7IN5BC_DisplayHalfScreen(BlackImage, RYImage); - DEV_Delay_ms(2000); -#endif - - printf("Clear...\r\n"); - EPD_7IN5BC_Clear(); - - printf("Goto Sleep...\r\n"); - EPD_7IN5BC_Sleep(); - free(BlackImage); - free(RYImage); - BlackImage = NULL; - RYImage = NULL; - - // close 5V - printf("close 5V, Module enters 0 power consumption ...\r\n"); - DEV_Module_Exit(); - - return 0; -} - diff --git a/Jetson Nano/c/lib/Config/DEV_Config.c b/Jetson Nano/c/lib/Config/DEV_Config.c deleted file mode 100644 index 7419d87..0000000 --- a/Jetson Nano/c/lib/Config/DEV_Config.c +++ /dev/null @@ -1,99 +0,0 @@ -/***************************************************************************** -* | File : DEV_Config.c -* | Author : Waveshare team -* | Function : Hardware underlying interface -* | Info : -*---------------- -* | This version: V1.0 -* | Date : 2019-06-05 -* | Info : -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "DEV_Config.h" - -/****************************************************************************** -function: Initialization pin -parameter: -Info: -******************************************************************************/ -static void DEV_GPIOConfig(void) -{ - SYSFS_GPIO_Export(EPD_CS_PIN); - SYSFS_GPIO_Export(EPD_DC_PIN); - SYSFS_GPIO_Export(EPD_RST_PIN); - SYSFS_GPIO_Export(EPD_BUSY_PIN); - - SYSFS_GPIO_Direction(EPD_CS_PIN, OUT); - SYSFS_GPIO_Direction(EPD_DC_PIN, OUT); - SYSFS_GPIO_Direction(EPD_RST_PIN, OUT); - SYSFS_GPIO_Direction(EPD_BUSY_PIN, IN); -} - -void DEV_Delay_us(UWORD xus) -{ - for(int j=xus; j > 0; j--); -} - -void DEV_Delay_ms(UWORD xms) -{ - for(int j=xms; j > 0; j--) - for(int j=xms; j > 0; j--); -} - -/****************************************************************************** -function: Module Initialize, the BCM2835 library and initialize the pins, SPI protocol -parameter: -Info: -******************************************************************************/ -UBYTE DEV_Module_Init(void) -{ - DEV_GPIOConfig(); - - SYSFS_software_spi_begin(); - SYSFS_software_spi_setBitOrder(SOFTWARE_SPI_MSBFIRST); - SYSFS_software_spi_setDataMode(SOFTWARE_SPI_Mode0); - SYSFS_software_spi_setClockDivider(SOFTWARE_SPI_CLOCK_DIV4); - return 0; -} - -void DEV_SPI_WriteByte(UBYTE value) -{ - SYSFS_software_spi_transfer(value); -} - -/****************************************************************************** -function: Module exits, closes SPI and BCM2835 library -parameter: -Info: -******************************************************************************/ -void DEV_Module_Exit(void) -{ - SYSFS_software_spi_end(); - - SYSFS_GPIO_Write(EPD_CS_PIN, LOW); - SYSFS_GPIO_Write(EPD_DC_PIN, LOW); - SYSFS_GPIO_Write(EPD_RST_PIN, LOW); - - SYSFS_GPIO_Unexport(EPD_CS_PIN); - SYSFS_GPIO_Unexport(EPD_DC_PIN); - SYSFS_GPIO_Unexport(EPD_RST_PIN); - SYSFS_GPIO_Unexport(EPD_BUSY_PIN); -} diff --git a/Jetson Nano/c/lib/Config/DEV_Config.h b/Jetson Nano/c/lib/Config/DEV_Config.h deleted file mode 100644 index 59c26a6..0000000 --- a/Jetson Nano/c/lib/Config/DEV_Config.h +++ /dev/null @@ -1,69 +0,0 @@ -/***************************************************************************** -* | File : DEV_Config.h -* | Author : Waveshare team -* | Function : Hardware underlying interface -* | Info : -*---------------- -* | This version: V1.0 -* | Date : 2019-06-04 -* | Info : -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#ifndef _DEV_CONFIG_H_ -#define _DEV_CONFIG_H_ - -#include "sysfs_gpio.h" -#include "sysfs_software_spi.h" -#include -#include - -/** - * data -**/ -#define UBYTE uint8_t -#define UWORD uint16_t -#define UDOUBLE uint32_t - -/** - * GPIO config -**/ -// #define EPD_MOSI_PIN SPI0_MOSI -// #define EPD_SCK_PIN SPI0_SCK -#define EPD_CS_PIN SPI0_CS0 -#define EPD_DC_PIN GPIO25 -#define EPD_RST_PIN GPIO17 -#define EPD_BUSY_PIN GPIO24 - -/** - * GPIO read and write -**/ -#define DEV_Digital_Write(_pin, _value) SYSFS_GPIO_Write(_pin, _value) -#define DEV_Digital_Read(_pin) SYSFS_GPIO_Read(_pin) - -/*------------------------------------------------------------------------------------------------------*/ -UBYTE DEV_Module_Init(void); -void DEV_Module_Exit(void); -void DEV_Delay_us(UWORD xus); -void DEV_Delay_ms(UWORD xms); -void DEV_SPI_WriteByte(UBYTE value); - - -#endif diff --git a/Jetson Nano/c/lib/Fonts/font24CN.c b/Jetson Nano/c/lib/Fonts/font24CN.c deleted file mode 100644 index 9175e2d..0000000 --- a/Jetson Nano/c/lib/Fonts/font24CN.c +++ /dev/null @@ -1,465 +0,0 @@ -/** - ****************************************************************************** - * @file Font12.c - * @author MCD Application Team - * @version V1.0.0 - * @date 18-February-2014 - * @brief This file provides text Font12 for STM32xx-EVAL's LCD driver. - ****************************************************************************** - * @attention - * - *

© COPYRIGHT(c) 2014 STMicroelectronics

- * - * Redistribution and use in source and binary forms, with or without modification, - * are permitted provided that the following conditions are met: - * 1. Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * 3. Neither the name of STMicroelectronics nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR - * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER - * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - * - ****************************************************************************** - */ - -/* Includes ------------------------------------------------------------------*/ -#include "fonts.h" - - -// -// Font data for Courier New 12pt -// - -const CH_CN Font24CN_Table[] = -{ -/*-- 文字: 你 --*/ -/*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"你", -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,0x01,0xC1,0xC0,0x00, -0x01,0xE3,0xE0,0x00,0x03,0xE3,0xC0,0x00,0x03,0xC7,0x80,0x00,0x03,0xC7,0xFF,0xFF, -0x07,0x8F,0xFF,0xFF,0x07,0x8F,0x00,0x0F,0x0F,0x1E,0x00,0x1E,0x0F,0x3C,0x1E,0x1E, -0x1F,0x3C,0x1E,0x3E,0x1F,0x18,0x1E,0x3C,0x3F,0x00,0x1E,0x1C,0x7F,0x00,0x1E,0x00, -0x7F,0x07,0x9E,0x70,0xFF,0x07,0x9E,0xF0,0xEF,0x0F,0x9E,0x78,0x6F,0x0F,0x1E,0x78, -0x0F,0x0F,0x1E,0x3C,0x0F,0x1E,0x1E,0x3C,0x0F,0x1E,0x1E,0x1E,0x0F,0x3C,0x1E,0x1E, -0x0F,0x3C,0x1E,0x1F,0x0F,0x7C,0x1E,0x0F,0x0F,0x78,0x1E,0x0E,0x0F,0x00,0x1E,0x00, -0x0F,0x00,0x1E,0x00,0x0F,0x00,0x3C,0x00,0x0F,0x07,0xFC,0x00,0x0F,0x07,0xF8,0x00, -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, - -/*-- 文字: 好 --*/ -/*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"好", -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x00,0x00,0x00,0x0F,0x00,0x00,0x00, -0x0F,0x07,0xFF,0xFE,0x0F,0x07,0xFF,0xFE,0x0F,0x00,0x00,0x3E,0x1E,0x00,0x00,0xFC, -0xFF,0xF8,0x01,0xF0,0xFF,0xF8,0x03,0xE0,0x1E,0x78,0x07,0xC0,0x1E,0x78,0x0F,0x80, -0x3C,0x78,0x0F,0x00,0x3C,0x78,0x0F,0x00,0x3C,0x78,0x0F,0x00,0x3C,0x78,0x0F,0x00, -0x3C,0x7F,0xFF,0xFF,0x78,0xFF,0xFF,0xFF,0x78,0xF0,0x0F,0x00,0x78,0xF0,0x0F,0x00, -0x3D,0xE0,0x0F,0x00,0x1F,0xE0,0x0F,0x00,0x0F,0xE0,0x0F,0x00,0x07,0xC0,0x0F,0x00, -0x07,0xE0,0x0F,0x00,0x07,0xF0,0x0F,0x00,0x0F,0xF8,0x0F,0x00,0x1E,0x7C,0x0F,0x00, -0x3C,0x38,0x0F,0x00,0x78,0x00,0x0F,0x00,0xF0,0x03,0xFF,0x00,0x60,0x01,0xFE,0x00, -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, - -/*-- 文字: 微 --*/ -/*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"微", -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x07,0x01,0xE0,0x07,0x87,0x01,0xE0, -0x07,0x07,0x01,0xC0,0x0F,0xF7,0x79,0xC0,0x1E,0xF7,0x7B,0xC0,0x1E,0xF7,0x7B,0x80, -0x3C,0xF7,0x7B,0xFF,0x78,0xF7,0x7B,0xFF,0xF8,0xF7,0x7F,0x9E,0xF7,0xFF,0xFF,0x9E, -0x67,0xFF,0xFF,0x9E,0x07,0x00,0x7F,0x9C,0x0F,0x00,0x0F,0x9C,0x1E,0x00,0x1F,0x9C, -0x1E,0x7F,0xFF,0xBC,0x3E,0x7F,0xF3,0xFC,0x3E,0x00,0x03,0xFC,0x7E,0x00,0x01,0xF8, -0xFE,0x00,0x01,0xF8,0xFE,0x7F,0xE1,0xF8,0xDE,0x7F,0xE1,0xF8,0x1E,0x78,0xE0,0xF0, -0x1E,0x78,0xEE,0xF0,0x1E,0x78,0xFF,0xF0,0x1E,0x78,0xFD,0xF8,0x1E,0x79,0xFB,0xFC, -0x1E,0xF1,0xF7,0xBC,0x1E,0xF0,0xEF,0x9E,0x1F,0xE0,0x0F,0x0F,0x1E,0xC0,0x1E,0x0F, -0x1E,0x00,0x0C,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, - -/*-- 文字: 软 --*/ -/*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"软", -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00,0x03,0xC0,0x78,0x00,0x07,0x80,0x78,0x00,0x07,0x80,0x78,0x00, -0x07,0x80,0xF0,0x00,0x0F,0x00,0xF0,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, -0x1E,0x03,0xC0,0x1F,0x1E,0x03,0xC0,0x1E,0x1F,0xE7,0x8F,0x3E,0x3D,0xE7,0x8F,0x3C, -0x3D,0xEF,0x0F,0x7C,0x3D,0xE7,0x0F,0x78,0x79,0xE0,0x0F,0x00,0x79,0xE0,0x0E,0x00, -0x7F,0xFE,0x0E,0x00,0x7F,0xFE,0x1F,0x00,0x01,0xE0,0x1F,0x00,0x01,0xE0,0x1F,0x00, -0x01,0xE0,0x1F,0x80,0x01,0xE0,0x1F,0x80,0x01,0xE0,0x3F,0x80,0x01,0xFF,0x3F,0xC0, -0x0F,0xFF,0x7B,0xC0,0xFF,0xF0,0x79,0xE0,0xF9,0xE0,0xF1,0xF0,0x01,0xE1,0xF0,0xF0, -0x01,0xE3,0xE0,0xF8,0x01,0xE7,0xC0,0x7C,0x01,0xFF,0x80,0x3F,0x01,0xFF,0x00,0x1F, -0x01,0xEC,0x00,0x0E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, - -/*-- 文字: 雅 --*/ -/*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"雅", -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,0x77,0x00,0x00,0x00,0xFF,0x00, -0x7F,0xFC,0xF7,0x80,0x7F,0xFD,0xE3,0xC0,0x01,0xC1,0xE3,0xC0,0x01,0xC3,0xC1,0x80, -0x3D,0xC7,0xFF,0xFF,0x39,0xC7,0xFF,0xFF,0x39,0xCF,0x83,0x80,0x79,0xDF,0x83,0x80, -0x79,0xFF,0x83,0x80,0x79,0xDF,0x83,0x80,0x71,0xC3,0x83,0x80,0x7F,0xFF,0xFF,0xFE, -0x7F,0xFF,0xFF,0xFE,0x03,0xC3,0x83,0x80,0x07,0xC3,0x83,0x80,0x07,0xC3,0x83,0x80, -0x0F,0xC3,0x83,0x80,0x0F,0xC3,0x83,0x80,0x1F,0xC3,0xFF,0xFE,0x1D,0xC3,0xFF,0xFE, -0x3D,0xC3,0x83,0x80,0x79,0xC3,0x83,0x80,0xF1,0xC3,0x83,0x80,0xF1,0xC3,0x83,0x80, -0x61,0xC3,0x83,0x80,0x01,0xC3,0xFF,0xFF,0x03,0xC3,0xFF,0xFF,0x1F,0xC3,0x80,0x00, -0x1F,0x83,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, - -/*-- 文字: 黑 --*/ -/*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"黑", -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, -0x1F,0xFF,0xFF,0xFC,0x1F,0xFF,0xFF,0xFC,0x1E,0x03,0xC0,0x3C,0x1E,0xC3,0xC7,0x3C, -0x1F,0xE3,0xC7,0xBC,0x1E,0xF3,0xCF,0x3C,0x1E,0xFB,0xDF,0x3C,0x1E,0x7B,0xDE,0x3C, -0x1E,0x33,0xDC,0x3C,0x1E,0x03,0xC0,0x3C,0x1F,0xFF,0xFF,0xFC,0x1F,0xFF,0xFF,0xFC, -0x1E,0x03,0xC0,0x3C,0x00,0x03,0xC0,0x00,0x00,0x03,0xC0,0x00,0x3F,0xFF,0xFF,0xFC, -0x3F,0xFF,0xFF,0xFC,0x00,0x03,0xC0,0x00,0x00,0x03,0xC0,0x00,0x00,0x03,0xC0,0x00, -0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00,0x1C,0x38,0x70,0x70, -0x3E,0x78,0xF8,0xF8,0x3C,0x7C,0x78,0x7C,0x7C,0x3C,0x3C,0x3E,0xF8,0x3E,0x3C,0x1F, -0xF0,0x1C,0x18,0x0E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, - -/*-- 文字: 此 --*/ -/*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"此", -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,0x78,0x3C,0x00, -0x00,0x78,0x3C,0x00,0x00,0x78,0x3C,0x00,0x00,0x78,0x3C,0x00,0x00,0x78,0x3C,0x00, -0x00,0x78,0x3C,0x0C,0x3C,0x78,0x3C,0x1E,0x3C,0x78,0x3C,0x3F,0x3C,0x78,0x3C,0xF8, -0x3C,0x7F,0xFD,0xF0,0x3C,0x7F,0xFF,0xE0,0x3C,0x78,0x3F,0x80,0x3C,0x78,0x3E,0x00, -0x3C,0x78,0x3C,0x00,0x3C,0x78,0x3C,0x00,0x3C,0x78,0x3C,0x00,0x3C,0x78,0x3C,0x00, -0x3C,0x78,0x3C,0x00,0x3C,0x78,0x3C,0x00,0x3C,0x78,0x3C,0x0E,0x3C,0x78,0x3C,0x0F, -0x3C,0x78,0x3C,0x0F,0x3C,0x79,0xFC,0x0F,0x3C,0x7F,0xFC,0x0F,0x3F,0xFF,0x3C,0x0F, -0x3F,0xF0,0x3E,0x1E,0xFF,0x00,0x1F,0xFE,0xF0,0x00,0x0F,0xFC,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, - -/*-- 文字: 字 --*/ -/*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"字", -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00,0x00,0x03,0x80,0x00,0x00,0x07,0x80,0x00,0x00,0x03,0xC0,0x00, -0x00,0x03,0xE0,0x00,0x00,0x01,0xE0,0x00,0x7F,0xFF,0xFF,0xFE,0x7F,0xFF,0xFF,0xFE, -0x78,0x00,0x00,0x1E,0x78,0x00,0x00,0x1E,0x78,0x00,0x00,0x1E,0x78,0x00,0x00,0x1E, -0x7B,0xFF,0xFF,0xDE,0x03,0xFF,0xFF,0xC0,0x00,0x00,0x0F,0xC0,0x00,0x00,0x3F,0x00, -0x00,0x00,0x7E,0x00,0x00,0x01,0xF8,0x00,0x00,0x01,0xE0,0x00,0x00,0x01,0xE0,0x00, -0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x01,0xE0,0x00,0x00,0x01,0xE0,0x00, -0x00,0x01,0xE0,0x00,0x00,0x01,0xE0,0x00,0x00,0x01,0xE0,0x00,0x00,0x01,0xE0,0x00, -0x00,0x03,0xE0,0x00,0x00,0x03,0xC0,0x00,0x00,0xFF,0xC0,0x00,0x00,0xFF,0x80,0x00, -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, - -/*-- 文字: 体 --*/ -/*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"体", -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,0x03,0xC0,0x3C,0x00, -0x03,0xC0,0x3C,0x00,0x03,0xC0,0x3C,0x00,0x07,0x80,0x3C,0x00,0x07,0x80,0x3C,0x00, -0x07,0x80,0x3C,0x00,0x0F,0xFF,0xFF,0xFF,0x0F,0xFF,0xFF,0xFF,0x1F,0x01,0xFE,0x00, -0x1F,0x01,0xFF,0x00,0x3F,0x01,0xFF,0x00,0x3F,0x03,0xFF,0x00,0x7F,0x03,0xFF,0x80, -0x7F,0x07,0xBF,0x80,0xFF,0x07,0xBF,0xC0,0xEF,0x0F,0x3D,0xC0,0xCF,0x0F,0x3D,0xE0, -0x0F,0x1E,0x3D,0xE0,0x0F,0x1E,0x3C,0xF0,0x0F,0x3C,0x3C,0x78,0x0F,0x7C,0x3C,0x7C, -0x0F,0xF8,0x3C,0x3E,0x0F,0xF7,0xFF,0xDF,0x0F,0xE7,0xFF,0xCF,0x0F,0xC0,0x3C,0x06, -0x0F,0x00,0x3C,0x00,0x0F,0x00,0x3C,0x00,0x0F,0x00,0x3C,0x00,0x0F,0x00,0x3C,0x00, -0x0F,0x00,0x3C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, - -/*-- 文字: 下 --*/ -/*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"下", -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, -0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x0F,0x80,0x00,0x00,0x0F,0x80,0x00, -0x00,0x0F,0x80,0x00,0x00,0x0F,0x80,0x00,0x00,0x0F,0x80,0x00,0x00,0x0F,0x80,0x00, -0x00,0x0F,0xE0,0x00,0x00,0x0F,0xF8,0x00,0x00,0x0F,0xFC,0x00,0x00,0x0F,0xBF,0x00, -0x00,0x0F,0x9F,0x80,0x00,0x0F,0x87,0xE0,0x00,0x0F,0x83,0xF0,0x00,0x0F,0x80,0xF8, -0x00,0x0F,0x80,0x7C,0x00,0x0F,0x80,0x38,0x00,0x0F,0x80,0x00,0x00,0x0F,0x80,0x00, -0x00,0x0F,0x80,0x00,0x00,0x0F,0x80,0x00,0x00,0x0F,0x80,0x00,0x00,0x0F,0x80,0x00, -0x00,0x0F,0x80,0x00,0x00,0x0F,0x80,0x00,0x00,0x0F,0x80,0x00,0x00,0x0F,0x80,0x00, -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, - -/*-- 文字: 对 --*/ -/*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"对", -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,0x78, -0x00,0x00,0x00,0x78,0x00,0x00,0x00,0x78,0x7F,0xFC,0x00,0x78,0x7F,0xFC,0x00,0x78, -0x00,0x3C,0x00,0x78,0x00,0x3F,0xFF,0xFF,0x30,0x3F,0xFF,0xFF,0x78,0x3C,0x00,0x78, -0x3C,0x38,0x00,0x78,0x3E,0x78,0x00,0x78,0x1E,0x78,0xC0,0x78,0x0F,0x79,0xE0,0x78, -0x0F,0xF0,0xF0,0x78,0x07,0xF0,0xF8,0x78,0x03,0xF0,0x78,0x78,0x01,0xE0,0x3C,0x78, -0x03,0xF0,0x3E,0x78,0x03,0xF0,0x18,0x78,0x07,0xF8,0x00,0x78,0x07,0xFC,0x00,0x78, -0x0F,0x3E,0x00,0x78,0x1F,0x1E,0x00,0x78,0x3E,0x1F,0x00,0x78,0x7C,0x0E,0x00,0xF8, -0xF8,0x00,0x00,0xF0,0xF0,0x00,0x3F,0xF0,0x60,0x00,0x3F,0xE0,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, - -/*-- 文字: 应 --*/ -/*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"应", -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00,0x00,0x01,0xC0,0x00,0x00,0x03,0xE0,0x00,0x00,0x01,0xE0,0x00, -0x00,0x01,0xF0,0x00,0x00,0x00,0xF0,0x00,0x1F,0xFF,0xFF,0xFF,0x1F,0xFF,0xFF,0xFF, -0x1E,0x00,0x00,0x00,0x1E,0x00,0x00,0x00,0x1E,0x01,0xE0,0x78,0x1E,0x01,0xE0,0x78, -0x1E,0xE1,0xE0,0x78,0x1F,0xF1,0xF0,0xF8,0x1E,0xF0,0xF0,0xF0,0x1E,0xF0,0xF0,0xF0, -0x1E,0xF8,0xF0,0xF0,0x1E,0x78,0xF1,0xF0,0x1E,0x78,0xF9,0xE0,0x1E,0x78,0x79,0xE0, -0x1E,0x7C,0x7B,0xE0,0x1E,0x3C,0x7B,0xC0,0x1E,0x3C,0x7B,0xC0,0x1E,0x3C,0x7B,0xC0, -0x3C,0x3E,0x07,0x80,0x3C,0x1C,0x07,0x80,0x3C,0x00,0x07,0x80,0x3C,0x00,0x0F,0x00, -0x78,0x00,0x0F,0x00,0x7B,0xFF,0xFF,0xFF,0xF3,0xFF,0xFF,0xFF,0xF0,0x00,0x00,0x00, -0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, - -/*-- 文字: 的 --*/ -/*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"的", -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x80,0x3C,0x00,0x07,0xC0,0x3E,0x00, -0x07,0x80,0x3C,0x00,0x07,0x80,0x7C,0x00,0x0F,0x00,0x78,0x00,0x7F,0xFE,0x7F,0xFE, -0x7F,0xFE,0xFF,0xFE,0x78,0x1E,0xF0,0x1E,0x78,0x1F,0xE0,0x1E,0x78,0x1F,0xE0,0x1E, -0x78,0x1F,0xC0,0x1E,0x78,0x1F,0xC0,0x1E,0x78,0x1F,0xF0,0x1E,0x78,0x1E,0xF8,0x1E, -0x78,0x1E,0x7C,0x1E,0x7F,0xFE,0x3C,0x1E,0x7F,0xFE,0x1E,0x1E,0x78,0x1E,0x1F,0x1E, -0x78,0x1E,0x0F,0x9E,0x78,0x1E,0x07,0x9E,0x78,0x1E,0x07,0x1E,0x78,0x1E,0x00,0x1E, -0x78,0x1E,0x00,0x1E,0x78,0x1E,0x00,0x3E,0x78,0x1E,0x00,0x3C,0x78,0x1E,0x00,0x3C, -0x7F,0xFE,0x00,0x3C,0x7F,0xFE,0x00,0x7C,0x78,0x1E,0x3F,0xF8,0x78,0x1E,0x3F,0xF0, -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, - -/*-- 文字: 点 --*/ -/*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"点", -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,0x03,0xC0,0x00,0x00,0x03,0xC0,0x00, -0x00,0x03,0xC0,0x00,0x00,0x03,0xC0,0x00,0x00,0x03,0xFF,0xFF,0x00,0x03,0xFF,0xFF, -0x00,0x03,0xC0,0x00,0x00,0x03,0xC0,0x00,0x00,0x03,0xC0,0x00,0x00,0x03,0xC0,0x00, -0x0F,0xFF,0xFF,0xF8,0x0F,0xFF,0xFF,0xF8,0x0F,0x00,0x00,0x78,0x0F,0x00,0x00,0x78, -0x0F,0x00,0x00,0x78,0x0F,0x00,0x00,0x78,0x0F,0x00,0x00,0x78,0x0F,0x00,0x00,0x78, -0x0F,0xFF,0xFF,0xF8,0x0F,0xFF,0xFF,0xF8,0x0F,0x00,0x00,0x78,0x00,0x00,0x00,0x00, -0x0C,0x38,0x38,0x30,0x1E,0x7C,0x78,0x78,0x3E,0x3C,0x78,0x78,0x3C,0x3C,0x3C,0x3C, -0x7C,0x3E,0x3C,0x3E,0xF8,0x1E,0x3C,0x1E,0xF0,0x1E,0x1E,0x1F,0x70,0x1E,0x1C,0x0E, -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, - -/*-- 文字: 阵 --*/ -/*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"阵", -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,0x3C,0x00,0x00,0x00,0x78,0x00, -0x7F,0xF0,0x78,0x00,0x7F,0xF0,0x78,0x00,0x79,0xFF,0xFF,0xFF,0x79,0xFF,0xFF,0xFF, -0x79,0xE1,0xE0,0x00,0x79,0xE1,0xE0,0x00,0x7B,0xC1,0xEF,0x80,0x7B,0xC3,0xCF,0x80, -0x7B,0xC3,0xCF,0x80,0x7F,0x87,0xCF,0x80,0x7F,0x87,0x8F,0x80,0x7F,0x87,0x8F,0x80, -0x7B,0xCF,0x0F,0x80,0x7B,0xCF,0xFF,0xFE,0x79,0xEF,0xFF,0xFE,0x79,0xE0,0x0F,0x80, -0x78,0xE0,0x0F,0x80,0x78,0xF0,0x0F,0x80,0x78,0xF0,0x0F,0x80,0x78,0xF0,0x0F,0x80, -0x78,0xFF,0xFF,0xFF,0x79,0xFF,0xFF,0xFF,0x7F,0xE0,0x0F,0x80,0x7F,0xC0,0x0F,0x80, -0x78,0x00,0x0F,0x80,0x78,0x00,0x0F,0x80,0x78,0x00,0x0F,0x80,0x78,0x00,0x0F,0x80, -0x78,0x00,0x0F,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, - -/*-- 文字: 为 --*/ -/*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"为", -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,0x07,0x80,0x00, -0x0E,0x07,0x80,0x00,0x1F,0x07,0x80,0x00,0x0F,0x87,0x80,0x00,0x07,0xC7,0x80,0x00, -0x01,0xE7,0x80,0x00,0x00,0xC7,0x80,0x00,0x00,0x07,0x80,0x00,0x7F,0xFF,0xFF,0xFC, -0x7F,0xFF,0xFF,0xFC,0x00,0x07,0x80,0x3C,0x00,0x0F,0x80,0x3C,0x00,0x0F,0x00,0x3C, -0x00,0x0F,0x00,0x3C,0x00,0x0F,0x60,0x3C,0x00,0x1F,0xF0,0x3C,0x00,0x1E,0x78,0x3C, -0x00,0x3E,0x3C,0x3C,0x00,0x3C,0x3E,0x3C,0x00,0x7C,0x1F,0x3C,0x00,0x78,0x0F,0x3C, -0x00,0xF8,0x06,0x3C,0x01,0xF0,0x00,0x3C,0x03,0xE0,0x00,0x7C,0x07,0xC0,0x00,0x7C, -0x0F,0x80,0x00,0x78,0x1F,0x00,0x00,0xF8,0x3E,0x00,0xFF,0xF0,0x7C,0x00,0xFF,0xE0, -0x38,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, - -/*-- 文字: 树 --*/ -/*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"树", -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,0x0F,0x00,0x00,0x38, -0x0F,0x00,0x00,0x38,0x0F,0x00,0x00,0x38,0x0F,0x3F,0xF8,0x38,0x0F,0x3F,0xF8,0x38, -0x0F,0x00,0x78,0x38,0xFF,0xE0,0x7F,0xFF,0xFF,0xE0,0x7F,0xFF,0x0F,0x00,0x70,0x38, -0x0F,0x18,0xF0,0x38,0x1F,0x3C,0xF0,0x38,0x1F,0x1C,0xFE,0x38,0x1F,0xDE,0xFE,0x38, -0x3F,0xEF,0xEF,0x38,0x3F,0xFF,0xEF,0x38,0x3F,0xF7,0xE7,0xB8,0x7F,0x67,0xC7,0xB8, -0x7F,0x03,0xC3,0xB8,0xFF,0x07,0xE0,0x38,0xEF,0x07,0xE0,0x38,0xEF,0x0F,0xF0,0x38, -0xCF,0x1F,0xF0,0x38,0x0F,0x1E,0x78,0x38,0x0F,0x3C,0x7C,0x38,0x0F,0x78,0x3C,0x38, -0x0F,0xF8,0x38,0x38,0x0F,0x60,0x00,0x78,0x0F,0x00,0x0F,0xF8,0x0F,0x00,0x07,0xF0, -0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, - -/*-- 文字: 莓 --*/ -/*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"莓", -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,0x3C,0x1E,0x00,0x00,0x3C,0x1E,0x00, -0x00,0x3C,0x1E,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x3C,0x1E,0x00, -0x07,0xBC,0x1E,0x00,0x07,0x80,0x00,0x00,0x0F,0xFF,0xFF,0xFC,0x0F,0xFF,0xFF,0xFC, -0x1E,0x00,0x00,0x00,0x3C,0x00,0x00,0x00,0x3C,0x00,0x00,0x00,0x7F,0xFF,0xFF,0xF0, -0xF7,0xFF,0xFF,0xF0,0x37,0x83,0x80,0xF0,0x07,0x87,0xC0,0xF0,0x07,0x83,0xF0,0xF0, -0x07,0x00,0xE0,0xF0,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x0F,0x0F,0x00,0xE0, -0x0F,0x0F,0x81,0xE0,0x0E,0x03,0xE1,0xE0,0x1E,0x01,0xC1,0xE0,0x1F,0xFF,0xFF,0xFE, -0x1F,0xFF,0xFF,0xFE,0x00,0x00,0x01,0xE0,0x00,0x00,0x03,0xC0,0x00,0x00,0xFF,0xC0, -0x00,0x00,0xFF,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, - -/*-- 文字: 派 --*/ -/*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"派", -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,0x38,0x00,0x00,0x3E, -0x7C,0x00,0x3F,0xFE,0x3F,0x3F,0xFF,0xF0,0x1F,0xBF,0xE0,0x00,0x07,0xBC,0x00,0x00, -0x03,0x3C,0x00,0x00,0x00,0x3C,0x00,0x3C,0x00,0x3C,0x0F,0xFE,0x70,0x3D,0xFF,0xF8, -0xF8,0x3D,0xFF,0x00,0x7C,0x3D,0xE7,0x80,0x3F,0x3D,0xE7,0x80,0x1F,0x3D,0xE7,0x8E, -0x0E,0x3D,0xE7,0x9F,0x00,0x3D,0xE7,0xFE,0x00,0x39,0xE7,0xF8,0x00,0x39,0xE3,0xF0, -0x1C,0x39,0xE3,0xC0,0x1E,0x79,0xE3,0xC0,0x1E,0x79,0xE1,0xE0,0x1E,0x79,0xE1,0xE0, -0x3C,0x79,0xE0,0xF0,0x3C,0x79,0xE0,0xF8,0x3C,0xF1,0xE0,0x7C,0x3C,0xF1,0xE3,0x7C, -0x7D,0xF1,0xEF,0x3F,0x79,0xE1,0xFE,0x1F,0x7B,0xE1,0xF8,0x0E,0x7B,0xC3,0xE0,0x00, -0x79,0x81,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, - -/*-- 文字: A --*/ -/*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{ -"A", -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,0x7C,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0xFE,0x00,0x00,0x00,0xFE,0x00,0x00, -0x01,0xFF,0x00,0x00,0x01,0xFF,0x00,0x00,0x01,0xEF,0x00,0x00,0x03,0xEF,0x80,0x00, -0x03,0xCF,0x80,0x00,0x07,0xC7,0x80,0x00,0x07,0xC7,0xC0,0x00,0x07,0x87,0xC0,0x00, -0x0F,0x83,0xE0,0x00,0x0F,0x83,0xE0,0x00,0x0F,0x01,0xE0,0x00,0x1F,0xFF,0xF0,0x00, -0x1F,0xFF,0xF0,0x00,0x3F,0xFF,0xF8,0x00,0x3E,0x00,0xF8,0x00,0x3C,0x00,0xF8,0x00, -0x7C,0x00,0x7C,0x00,0x7C,0x00,0x7C,0x00,0x78,0x00,0x3C,0x00,0xF8,0x00,0x3E,0x00, -0xF8,0x00,0x3E,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}, - -/*-- 文字: a --*/ -/*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"a", -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,0x07,0xF8,0x00,0x00, -0x1F,0xFE,0x00,0x00,0x3F,0xFE,0x00,0x00,0x3E,0x3F,0x00,0x00,0x38,0x1F,0x00,0x00, -0x00,0x0F,0x00,0x00,0x00,0x0F,0x00,0x00,0x03,0xFF,0x00,0x00,0x1F,0xFF,0x00,0x00, -0x3F,0x8F,0x00,0x00,0x7C,0x0F,0x00,0x00,0x7C,0x0F,0x00,0x00,0x78,0x1F,0x00,0x00, -0x7C,0x1F,0x00,0x00,0x7E,0x7F,0x00,0x00,0x7F,0xFF,0x00,0x00,0x3F,0xFF,0x00,0x00, -0x0F,0xCF,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}, - -/*-- 文字: b --*/ -/*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"b", -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,0x3C,0x00,0x00,0x00, -0x3C,0x00,0x00,0x00,0x3C,0x00,0x00,0x00,0x3C,0x00,0x00,0x00,0x3C,0x00,0x00,0x00, -0x3C,0x00,0x00,0x00,0x3C,0x00,0x00,0x00,0x3C,0x00,0x00,0x00,0x3C,0xFE,0x00,0x00, -0x3D,0xFF,0x80,0x00,0x3F,0xFF,0xC0,0x00,0x3F,0x8F,0xC0,0x00,0x3F,0x07,0xE0,0x00, -0x3E,0x03,0xE0,0x00,0x3E,0x03,0xE0,0x00,0x3C,0x01,0xE0,0x00,0x3C,0x01,0xE0,0x00, -0x3C,0x01,0xE0,0x00,0x3C,0x03,0xE0,0x00,0x3E,0x03,0xE0,0x00,0x3E,0x03,0xE0,0x00, -0x3F,0x07,0xC0,0x00,0x3F,0x8F,0xC0,0x00,0x3F,0xFF,0x80,0x00,0x3F,0xFF,0x00,0x00, -0x3C,0xFC,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}, - -/*-- 文字: c --*/ -/*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"c", -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,0x01,0xFC,0x00,0x00, -0x07,0xFE,0x00,0x00,0x1F,0xFE,0x00,0x00,0x3F,0x86,0x00,0x00,0x3E,0x00,0x00,0x00, -0x7C,0x00,0x00,0x00,0x7C,0x00,0x00,0x00,0x7C,0x00,0x00,0x00,0x78,0x00,0x00,0x00, -0x78,0x00,0x00,0x00,0x7C,0x00,0x00,0x00,0x7C,0x00,0x00,0x00,0x7C,0x00,0x00,0x00, -0x3E,0x00,0x00,0x00,0x3F,0x86,0x00,0x00,0x1F,0xFE,0x00,0x00,0x0F,0xFE,0x00,0x00, -0x03,0xFC,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}, - -/*-- 文字: 微 --*/ -/*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"微", -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x07,0x01,0xE0,0x07,0x87,0x01,0xE0, -0x07,0x07,0x01,0xC0,0x0F,0xF7,0x79,0xC0,0x1E,0xF7,0x7B,0xC0,0x1E,0xF7,0x7B,0x80, -0x3C,0xF7,0x7B,0xFF,0x78,0xF7,0x7B,0xFF,0xF8,0xF7,0x7F,0x9E,0xF7,0xFF,0xFF,0x9E, -0x67,0xFF,0xFF,0x9E,0x07,0x00,0x7F,0x9C,0x0F,0x00,0x0F,0x9C,0x1E,0x00,0x1F,0x9C, -0x1E,0x7F,0xFF,0xBC,0x3E,0x7F,0xF3,0xFC,0x3E,0x00,0x03,0xFC,0x7E,0x00,0x01,0xF8, -0xFE,0x00,0x01,0xF8,0xFE,0x7F,0xE1,0xF8,0xDE,0x7F,0xE1,0xF8,0x1E,0x78,0xE0,0xF0, -0x1E,0x78,0xEE,0xF0,0x1E,0x78,0xFF,0xF0,0x1E,0x78,0xFD,0xF8,0x1E,0x79,0xFB,0xFC, -0x1E,0xF1,0xF7,0xBC,0x1E,0xF0,0xEF,0x9E,0x1F,0xE0,0x0F,0x0F,0x1E,0xC0,0x1E,0x0F, -0x1E,0x00,0x0C,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, - -/*-- 文字: 雪 --*/ -/*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"雪", -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, -0x1F,0xFF,0xFF,0xF8,0x1F,0xFF,0xFF,0xF8,0x00,0x03,0xC0,0x00,0x00,0x03,0xC0,0x00, -0x7F,0xFF,0xFF,0xFE,0x7F,0xFF,0xFF,0xFE,0x78,0x03,0xC0,0x1E,0x78,0x03,0xC0,0x1E, -0x7F,0xFF,0xFF,0xFE,0x7F,0xFF,0xFF,0xFE,0x00,0x03,0xC0,0x00,0x00,0x03,0xC0,0x00, -0x07,0xFF,0xFF,0xE0,0x07,0xFF,0xFF,0xE0,0x00,0x03,0xC0,0x00,0x00,0x00,0x00,0x00, -0x1F,0xFF,0xFF,0xF8,0x1F,0xFF,0xFF,0xF8,0x00,0x00,0x00,0x78,0x00,0x00,0x00,0x78, -0x1F,0xFF,0xFF,0xF8,0x1F,0xFF,0xFF,0xF8,0x00,0x00,0x00,0x78,0x00,0x00,0x00,0x78, -0x00,0x00,0x00,0x78,0x3F,0xFF,0xFF,0xF8,0x3F,0xFF,0xFF,0xF8,0x00,0x00,0x00,0x78, -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, - -/*-- 文字: 电 --*/ -/*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"电", -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,0x07,0x80,0x00,0x00,0x07,0x80,0x00, -0x00,0x07,0x80,0x00,0x00,0x07,0x80,0x00,0x7F,0xFF,0xFF,0xF8,0x7F,0xFF,0xFF,0xF8, -0x78,0x07,0x80,0xF8,0x78,0x07,0x80,0xF8,0x78,0x07,0x80,0xF8,0x78,0x07,0x80,0xF8, -0x78,0x07,0x80,0xF8,0x78,0x07,0x80,0xF8,0x7F,0xFF,0xFF,0xF8,0x7F,0xFF,0xFF,0xF8, -0x78,0x07,0x80,0xF8,0x78,0x07,0x80,0xF8,0x78,0x07,0x80,0xF8,0x78,0x07,0x80,0xF8, -0x78,0x07,0x80,0xF8,0x78,0x07,0x80,0xF8,0x7F,0xFF,0xFF,0xF8,0x7F,0xFF,0xFF,0xF8, -0x78,0x07,0x80,0x0E,0x78,0x07,0x80,0x0F,0x00,0x07,0x80,0x0F,0x00,0x07,0x80,0x0F, -0x00,0x07,0x80,0x1F,0x00,0x07,0x80,0x1E,0x00,0x03,0xFF,0xFE,0x00,0x01,0xFF,0xFC, -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, - -/*-- 文字: 子 --*/ -/*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"子", -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, -0x1F,0xFF,0xFF,0xF8,0x1F,0xFF,0xFF,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0, -0x00,0x00,0x0F,0xC0,0x00,0x00,0x1F,0x80,0x00,0x00,0x3E,0x00,0x00,0x00,0xFC,0x00, -0x00,0x01,0xF8,0x00,0x00,0x03,0xE0,0x00,0x00,0x03,0xE0,0x00,0x00,0x03,0xE0,0x00, -0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x03,0xE0,0x00,0x00,0x03,0xE0,0x00, -0x00,0x03,0xE0,0x00,0x00,0x03,0xE0,0x00,0x00,0x03,0xE0,0x00,0x00,0x03,0xE0,0x00, -0x00,0x03,0xE0,0x00,0x00,0x03,0xE0,0x00,0x00,0x03,0xE0,0x00,0x00,0x03,0xE0,0x00, -0x00,0x03,0xE0,0x00,0x00,0x03,0xC0,0x00,0x01,0xFF,0xC0,0x00,0x00,0xFF,0x80,0x00, -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, - - -}; - -cFONT Font24CN = { - Font24CN_Table, - sizeof(Font24CN_Table)/sizeof(CH_CN), /*size of table*/ - 24, /* ASCII Width */ - 32, /* Width */ - 41, /* Height */ -}; - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/Jetson Nano/c/lib/Fonts/fonts.h b/Jetson Nano/c/lib/Fonts/fonts.h deleted file mode 100644 index 4a6b33d..0000000 --- a/Jetson Nano/c/lib/Fonts/fonts.h +++ /dev/null @@ -1,97 +0,0 @@ -/** - ****************************************************************************** - * @file fonts.h - * @author MCD Application Team - * @version V1.0.0 - * @date 18-February-2014 - * @brief Header for fonts.c file - ****************************************************************************** - * @attention - * - *

© COPYRIGHT(c) 2014 STMicroelectronics

- * - * Redistribution and use in source and binary forms, with or without modification, - * are permitted provided that the following conditions are met: - * 1. Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * 3. Neither the name of STMicroelectronics nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR - * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER - * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - * - ****************************************************************************** - */ - -/* Define to prevent recursive inclusion -------------------------------------*/ -#ifndef __FONTS_H -#define __FONTS_H - -/*最大字体微软雅黑24 (32x41) */ -#define MAX_HEIGHT_FONT 41 -#define MAX_WIDTH_FONT 32 -#define OFFSET_BITMAP - -#ifdef __cplusplus - extern "C" { -#endif - -/* Includes ------------------------------------------------------------------*/ -#include - -//ASCII -typedef struct _tFont -{ - const uint8_t *table; - uint16_t Width; - uint16_t Height; - -} sFONT; - - -//GB2312 -typedef struct // 汉字字模数据结构 -{ - unsigned char index[2]; // 汉字内码索引 - const char matrix[MAX_HEIGHT_FONT*MAX_WIDTH_FONT/8]; // 点阵码数据 -}CH_CN; - - -typedef struct -{ - const CH_CN *table; - uint16_t size; - uint16_t ASCII_Width; - uint16_t Width; - uint16_t Height; - -}cFONT; - -extern sFONT Font24; -extern sFONT Font20; -extern sFONT Font16; -extern sFONT Font12; -extern sFONT Font8; - -extern cFONT Font12CN; -extern cFONT Font24CN; -#ifdef __cplusplus -} -#endif - -#endif /* __FONTS_H */ - - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/Jetson Nano/c/lib/GUI/GUI_BMPfile.c b/Jetson Nano/c/lib/GUI/GUI_BMPfile.c deleted file mode 100644 index 32aa406..0000000 --- a/Jetson Nano/c/lib/GUI/GUI_BMPfile.c +++ /dev/null @@ -1,132 +0,0 @@ -/***************************************************************************** -* | File : GUI_BMPfile.c -* | Author : Waveshare team -* | Function : Hardware underlying interface -* | Info : -* Used to shield the underlying layers of each master -* and enhance portability -*---------------- -* | This version: V2.0 -* | Date : 2018-11-12 -* | Info : -* 1.Change file name: GUI_BMP.c -> GUI_BMPfile.c -* 2.fix: GUI_ReadBmp() -* Now Xstart and Xstart can control the position of the picture normally, -* and support the display of images of any size. If it is larger than -* the actual display range, it will not be displayed. -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ - -#include "GUI_BMPfile.h" -#include "GUI_Paint.h" -#include "Debug.h" - -#include -#include -#include -#include //exit() -#include //memset() -#include //memset() - -UBYTE GUI_ReadBmp(const char *path, UWORD Xstart, UWORD Ystart) -{ - FILE *fp; //Define a file pointer - BMPFILEHEADER bmpFileHeader; //Define a bmp file header structure - BMPINFOHEADER bmpInfoHeader; //Define a bmp info header structure - - - // Binary file open - if((fp = fopen(path, "rb")) == NULL) { - Debug("Cann't open the file!\n"); - exit(0); - } - - // Set the file pointer from the beginning - fseek(fp, 0, SEEK_SET); - fread(&bmpFileHeader, sizeof(BMPFILEHEADER), 1, fp); //sizeof(BMPFILEHEADER) must be 14 - fread(&bmpInfoHeader, sizeof(BMPINFOHEADER), 1, fp); //sizeof(BMPFILEHEADER) must be 50 - printf("pixel = %d * %d\r\n", bmpInfoHeader.biWidth, bmpInfoHeader.biHeight); - - UWORD Image_Width_Byte = (bmpInfoHeader.biWidth % 8 == 0)? (bmpInfoHeader.biWidth / 8): (bmpInfoHeader.biWidth / 8 + 1); - UWORD Bmp_Width_Byte = (Image_Width_Byte % 4 == 0) ? Image_Width_Byte: ((Image_Width_Byte / 4 + 1) * 4); - UBYTE Image[Image_Width_Byte * bmpInfoHeader.biHeight]; - memset(Image, 0xFF, Image_Width_Byte * bmpInfoHeader.biHeight); - - // Determine if it is a monochrome bitmap - int readbyte = bmpInfoHeader.biBitCount; - if(readbyte != 1) { - Debug("the bmp Image is not a monochrome bitmap!\n"); - exit(0); - } - - // Determine black and white based on the palette - UWORD i; - UWORD Bcolor, Wcolor; - // UWORD bmprgbquadsize = pow(2, bmpInfoHeader.biBitCount);// 2^1 = 2 - // BMPRGBQUAD bmprgbquad[bmprgbquadsize]; //palette - BMPRGBQUAD bmprgbquad[2]; //palette - - // for(i = 0; i < bmprgbquadsize; i++){ - for(i = 0; i < 2; i++) { - fread(&bmprgbquad[i * 4], sizeof(BMPRGBQUAD), 1, fp); - } - if(bmprgbquad[0].rgbBlue == 0xff && bmprgbquad[0].rgbGreen == 0xff && bmprgbquad[0].rgbRed == 0xff) { - Bcolor = BLACK; - Wcolor = WHITE; - } else { - Bcolor = WHITE; - Wcolor = BLACK; - } - - // Read image data into the cache - UWORD x, y; - UBYTE Rdata; - fseek(fp, bmpFileHeader.bOffset, SEEK_SET); - for(y = 0; y < bmpInfoHeader.biHeight; y++) {//Total display column - for(x = 0; x < Bmp_Width_Byte; x++) {//Show a line in the line - if(fread((char *)&Rdata, 1, readbyte, fp) != readbyte) { - perror("get bmpdata:\r\n"); - break; - } - if(x < Image_Width_Byte) { //bmp - Image[x + (bmpInfoHeader.biHeight - y - 1) * Image_Width_Byte] = Rdata; - // printf("rdata = %d\r\n", Rdata); - } - } - } - fclose(fp); - - // Refresh the image to the display buffer based on the displayed orientation - UBYTE color, temp; - for(y = 0; y < bmpInfoHeader.biHeight; y++) { - for(x = 0; x < bmpInfoHeader.biWidth; x++) { - if(x > Paint.Width || y > Paint.Height) { - break; - } - temp = Image[(x / 8) + (y * Image_Width_Byte)]; - color = (((temp << (x%8)) & 0x80) == 0x80) ?Bcolor:Wcolor; - Paint_SetPixel(Xstart + x, Ystart + y, color); - } - } - return 0; -} - - diff --git a/Jetson Nano/c/lib/e-Paper/EPD_2in7b.c b/Jetson Nano/c/lib/e-Paper/EPD_2in7b.c deleted file mode 100644 index 4118b88..0000000 --- a/Jetson Nano/c/lib/e-Paper/EPD_2in7b.c +++ /dev/null @@ -1,369 +0,0 @@ -/***************************************************************************** -* | File : EPD_2in7b.c -* | Author : Waveshare team -* | Function : 2.7inch e-paper b -* | Info : -*---------------- -* | This version: V3.0 -* | Date : 2019-06-12 -* | Info : -* ----------------------------------------------------------------------------- -* V3.0(2019-06-12): -* lut_vcom_dc[] => EPD_2in7B_lut_vcom_dc[] -* lut_ww[] => EPD_2in7B_lut_ww[] -* lut_bw[] => EPD_2in7B_lut_bw[] -* lut_bb[] => EPD_2in7B_lut_bb[] -* lut_wb[] => EPD_2in7B_lut_wb[] -* EPD_Reset() => EPD_2in7B_Reset() -* EPD_SendCommand() => EPD_2in7B_SendCommand() -* EPD_SendData() => EPD_2in7B_SendData() -* EPD_WaitUntilIdle() => EPD_2in7B_ReadBusy() -* EPD_SetLut() => EPD_2in7B_SetLut() -* EPD_Init() => EPD_2in7B_Init() -* EPD_Clear() => EPD_2in7B_Clear() -* EPD_Display() => EPD_2in7B_Display() -* EPD_Sleep() => EPD_2in7B_Sleep() -* 2.remove commands define: -* #define PANEL_SETTING 0x00 -* #define POWER_SETTING 0x01 -* #define POWER_OFF 0x02 -* #define POWER_OFF_SEQUENCE_SETTING 0x03 -* #define POWER_ON 0x04 -* #define POWER_ON_MEASURE 0x05 -* #define BOOSTER_SOFT_START 0x06 -* #define DEEP_SLEEP 0x07 -* #define DATA_START_TRANSMISSION_1 0x10 -* #define DATA_STOP 0x11 -* #define DISPLAY_REFRESH 0x12 -* #define DATA_START_TRANSMISSION_2 0x13 -* #define PARTIAL_DATA_START_TRANSMISSION_1 0x14 -* #define PARTIAL_DATA_START_TRANSMISSION_2 0x15 -* #define PARTIAL_DISPLAY_REFRESH 0x16 -* #define LUT_FOR_VCOM 0x20 -* #define LUT_WHITE_TO_WHITE 0x21 -* #define LUT_BLACK_TO_WHITE 0x22 -* #define LUT_WHITE_TO_BLACK 0x23 -* #define LUT_BLACK_TO_BLACK 0x24 -* #define PLL_CONTROL 0x30 -* #define TEMPERATURE_SENSOR_COMMAND 0x40 -* #define TEMPERATURE_SENSOR_CALIBRATION 0x41 -* #define TEMPERATURE_SENSOR_WRITE 0x42 -* #define TEMPERATURE_SENSOR_READ 0x43 -* #define VCOM_AND_DATA_INTERVAL_SETTING 0x50 -* #define LOW_POWER_DETECTION 0x51 -* #define TCON_SETTING 0x60 -* #define TCON_RESOLUTION 0x61 -* #define SOURCE_AND_GATE_START_SETTING 0x62 -* #define GET_STATUS 0x71 -* #define AUTO_MEASURE_VCOM 0x80 -* #define VCOM_VALUE 0x81 -* #define VCM_DC_SETTING_REGISTER 0x82 -* #define PROGRAM_MODE 0xA0 -* #define ACTIVE_PROGRAM 0xA1 -* #define READ_OTP_DATA 0xA2 -* ----------------------------------------------------------------------------- -* V2.0(2018-10-30): -* 1.Remove:ImageBuff[EPD_2IN7B_HEIGHT * EPD_2IN7B_WIDTH / 8] -* 2.Change:EPD_Display(UBYTE *Image) -* Need to pass parameters: pointer to cached data -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "EPD_2in7b.h" -#include "Debug.h" - -static const unsigned char EPD_2IN7B_lut_vcom_dc[] = { - 0x00, 0x00, - 0x00, 0x1A, 0x1A, 0x00, 0x00, 0x01, - 0x00, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0x00, 0x0E, 0x01, 0x0E, 0x01, 0x10, - 0x00, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0x00, 0x04, 0x10, 0x00, 0x00, 0x05, - 0x00, 0x03, 0x0E, 0x00, 0x00, 0x0A, - 0x00, 0x23, 0x00, 0x00, 0x00, 0x01 -}; - -//R21H -static const unsigned char EPD_2IN7B_lut_ww[] = { - 0x90, 0x1A, 0x1A, 0x00, 0x00, 0x01, - 0x40, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0x84, 0x0E, 0x01, 0x0E, 0x01, 0x10, - 0x80, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0x00, 0x04, 0x10, 0x00, 0x00, 0x05, - 0x00, 0x03, 0x0E, 0x00, 0x00, 0x0A, - 0x00, 0x23, 0x00, 0x00, 0x00, 0x01 -}; - -//R22H r -static const unsigned char EPD_2IN7B_lut_bw[] = { - 0xA0, 0x1A, 0x1A, 0x00, 0x00, 0x01, - 0x00, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0x84, 0x0E, 0x01, 0x0E, 0x01, 0x10, - 0x90, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0xB0, 0x04, 0x10, 0x00, 0x00, 0x05, - 0xB0, 0x03, 0x0E, 0x00, 0x00, 0x0A, - 0xC0, 0x23, 0x00, 0x00, 0x00, 0x01 -}; - -//R23H w -static const unsigned char EPD_2IN7B_lut_bb[] = { - 0x90, 0x1A, 0x1A, 0x00, 0x00, 0x01, - 0x40, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0x84, 0x0E, 0x01, 0x0E, 0x01, 0x10, - 0x80, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0x00, 0x04, 0x10, 0x00, 0x00, 0x05, - 0x00, 0x03, 0x0E, 0x00, 0x00, 0x0A, - 0x00, 0x23, 0x00, 0x00, 0x00, 0x01 -}; - -//R24H b -static const unsigned char EPD_2IN7B_lut_wb[] = { - 0x90, 0x1A, 0x1A, 0x00, 0x00, 0x01, - 0x20, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0x84, 0x0E, 0x01, 0x0E, 0x01, 0x10, - 0x10, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0x00, 0x04, 0x10, 0x00, 0x00, 0x05, - 0x00, 0x03, 0x0E, 0x00, 0x00, 0x0A, - 0x00, 0x23, 0x00, 0x00, 0x00, 0x01 -}; - -/****************************************************************************** -function : Software reset -parameter: -******************************************************************************/ -static void EPD_2IN7B_Reset(void) -{ - DEV_Digital_Write(EPD_RST_PIN, 1); - DEV_Delay_ms(200); - DEV_Digital_Write(EPD_RST_PIN, 0); - DEV_Delay_ms(10); - DEV_Digital_Write(EPD_RST_PIN, 1); - DEV_Delay_ms(200); -} - -/****************************************************************************** -function : send command -parameter: - Reg : Command register -******************************************************************************/ -static void EPD_2IN7B_SendCommand(UBYTE Reg) -{ - DEV_Digital_Write(EPD_DC_PIN, 0); - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_SPI_WriteByte(Reg); - DEV_Digital_Write(EPD_CS_PIN, 1); -} - -/****************************************************************************** -function : send data -parameter: - Data : Write data -******************************************************************************/ -static void EPD_2IN7B_SendData(UBYTE Data) -{ - DEV_Digital_Write(EPD_DC_PIN, 1); - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_SPI_WriteByte(Data); - DEV_Digital_Write(EPD_CS_PIN, 1); -} - -/****************************************************************************** -function : Wait until the busy_pin goes LOW -parameter: -******************************************************************************/ -static void EPD_2IN7B_ReadBusy(void) -{ - Debug("e-Paper busy\r\n"); - while(DEV_Digital_Read(EPD_BUSY_PIN) == 0) { //0: busy, 1: idle - DEV_Delay_ms(100); - } - Debug("e-Paper busy release\r\n"); -} - -/****************************************************************************** -function : set the look-up tables -parameter: -******************************************************************************/ -static void EPD_2IN7B_SetLut(void) -{ - unsigned int count; - EPD_2IN7B_SendCommand(0x20); //vcom - for(count = 0; count < 44; count++) { - EPD_2IN7B_SendData(EPD_2IN7B_lut_vcom_dc[count]); - } - - EPD_2IN7B_SendCommand(0x21); //ww -- - for(count = 0; count < 42; count++) { - EPD_2IN7B_SendData(EPD_2IN7B_lut_ww[count]); - } - - EPD_2IN7B_SendCommand(0x22); //bw r - for(count = 0; count < 42; count++) { - EPD_2IN7B_SendData(EPD_2IN7B_lut_bw[count]); - } - - EPD_2IN7B_SendCommand(0x23); //wb w - for(count = 0; count < 42; count++) { - EPD_2IN7B_SendData(EPD_2IN7B_lut_bb[count]); - } - - EPD_2IN7B_SendCommand(0x24); //bb b - for(count = 0; count < 42; count++) { - EPD_2IN7B_SendData(EPD_2IN7B_lut_wb[count]); - } -} - -/****************************************************************************** -function : Initialize the e-Paper register -parameter: -******************************************************************************/ -void EPD_2IN7B_Init(void) -{ - EPD_2IN7B_Reset(); - - EPD_2IN7B_SendCommand(0x04); // POWER_ON - EPD_2IN7B_ReadBusy(); - - EPD_2IN7B_SendCommand(0x00); // PANEL_SETTING - EPD_2IN7B_SendData(0xaf); // KW-BF KWR-AF BWROTP 0f - - EPD_2IN7B_SendCommand(0x30); // PLL_CONTROL - EPD_2IN7B_SendData(0x3a); //3A 100HZ 29 150Hz 39 200HZ 31 171HZ - - EPD_2IN7B_SendCommand(0x01); // PANEL_SETTING - EPD_2IN7B_SendData(0x03); // VDS_EN, VDG_EN - EPD_2IN7B_SendData(0x00); // VCOM_HV, VGHL_LV[1], VGHL_LV[0] - EPD_2IN7B_SendData(0x2b); // VDH - EPD_2IN7B_SendData(0x2b); // VDL - EPD_2IN7B_SendData(0x09); // VDHR - - EPD_2IN7B_SendCommand(0x06); // BOOSTER_SOFT_START - EPD_2IN7B_SendData(0x07); - EPD_2IN7B_SendData(0x07); - EPD_2IN7B_SendData(0x17); - - // Power optimization - EPD_2IN7B_SendCommand(0xF8); - EPD_2IN7B_SendData(0x60); - EPD_2IN7B_SendData(0xA5); - - // Power optimization - EPD_2IN7B_SendCommand(0xF8); - EPD_2IN7B_SendData(0x89); - EPD_2IN7B_SendData(0xA5); - - // Power optimization - EPD_2IN7B_SendCommand(0xF8); - EPD_2IN7B_SendData(0x90); - EPD_2IN7B_SendData(0x00); - - // Power optimization - EPD_2IN7B_SendCommand(0xF8); - EPD_2IN7B_SendData(0x93); - EPD_2IN7B_SendData(0x2A); - - // Power optimization - EPD_2IN7B_SendCommand(0xF8); - EPD_2IN7B_SendData(0x73); - EPD_2IN7B_SendData(0x41); - - EPD_2IN7B_SendCommand(0x82); // VCM_DC_SETTING_REGISTER - EPD_2IN7B_SendData(0x12); - EPD_2IN7B_SendCommand(0x50); // VCOM_AND_DATA_INTERVAL_SETTING - EPD_2IN7B_SendData(0x87); // define by OTP - - EPD_2IN7B_SetLut(); - - EPD_2IN7B_SendCommand(0x16); // PARTIAL_DISPLAY_REFRESH - EPD_2IN7B_SendData(0x00); -} - -/****************************************************************************** -function : Clear screen -parameter: -******************************************************************************/ -void EPD_2IN7B_Clear(void) -{ - UWORD Width, Height; - Width = (EPD_2IN7B_WIDTH % 8 == 0)? (EPD_2IN7B_WIDTH / 8 ): (EPD_2IN7B_WIDTH / 8 + 1); - Height = EPD_2IN7B_HEIGHT; - - EPD_2IN7B_SendCommand(0x10); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_2IN7B_SendData(0X00); - } - } - EPD_2IN7B_SendCommand(0x11); // DATA_STOP - - EPD_2IN7B_SendCommand(0x13); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_2IN7B_SendData(0X00); - } - } - EPD_2IN7B_SendCommand(0x11); // DATA_STOP - - EPD_2IN7B_SendCommand(0x12); - EPD_2IN7B_ReadBusy(); -} - -/****************************************************************************** -function : Sends the image buffer in RAM to e-Paper and displays -parameter: -******************************************************************************/ -void EPD_2IN7B_Display(UBYTE *Imageblack, UBYTE *Imagered) -{ - UWORD Width, Height; - Width = (EPD_2IN7B_WIDTH % 8 == 0)? (EPD_2IN7B_WIDTH / 8 ): (EPD_2IN7B_WIDTH / 8 + 1); - Height = EPD_2IN7B_HEIGHT; - - EPD_2IN7B_SendCommand(0x10); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_2IN7B_SendData(~Imageblack[i + j * Width]); - } - } - EPD_2IN7B_SendCommand(0x11); // DATA_STOP - - EPD_2IN7B_SendCommand(0x13); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_2IN7B_SendData(~Imagered[i + j * Width]); - } - } - EPD_2IN7B_SendCommand(0x11); // DATA_STOP - - EPD_2IN7B_SendCommand(0x12); - EPD_2IN7B_ReadBusy(); -} - -/****************************************************************************** -function : Enter sleep mode -parameter: -******************************************************************************/ -void EPD_2IN7B_Sleep(void) -{ - EPD_2IN7B_SendCommand(0X50); - EPD_2IN7B_SendData(0xf7); - EPD_2IN7B_SendCommand(0X02); //power off - EPD_2IN7B_SendCommand(0X07); //deep sleep - EPD_2IN7B_SendData(0xA5); -} diff --git a/Jetson Nano/c/lib/e-Paper/EPD_2in9.c b/Jetson Nano/c/lib/e-Paper/EPD_2in9.c deleted file mode 100644 index a34636c..0000000 --- a/Jetson Nano/c/lib/e-Paper/EPD_2in9.c +++ /dev/null @@ -1,296 +0,0 @@ -/***************************************************************************** -* | File : EPD_2in9.c -* | Author : Waveshare team -* | Function : 2.9inch e-paper -* | Info : -*---------------- -* | This version: V3.0 -* | Date : 2019-06-12 -* | Info : -* ----------------------------------------------------------------------------- -* V3.0(2019-06-12): -* 1.Change: -* lut_full_update[] => EPD_2IN9_lut_full_update[] -* lut_partial_update[] => EPD_2IN9_lut_partial_update[] -* EPD_Reset() => EPD_2IN9_Reset() -* EPD_SendCommand() => EPD_2IN9_SendCommand() -* EPD_SendData() => EPD_2IN9_SendData() -* EPD_WaitUntilIdle() => EPD_2IN9_ReadBusy() -* EPD_SetLut() => EPD_2IN9_SetLut() -* EPD_SetWindow() => EPD_2IN9_SetWindow() -* EPD_SetCursor() => EPD_2IN9_SetCursor() -* EPD_TurnOnDisplay() => EPD_2IN9_TurnOnDisplay() -* EPD_Init() => EPD_2IN9_Init() -* EPD_Clear() => EPD_2IN9_Clear() -* EPD_Display() => EPD_2IN9_Display() -* EPD_Sleep() => EPD_2IN9_Sleep() -* 2.remove commands define: -* #define DRIVER_OUTPUT_CONTROL 0x01 -* #define BOOSTER_SOFT_START_CONTROL 0x0C -* #define GATE_SCAN_START_POSITION 0x0F -* #define DEEP_SLEEP_MODE 0x10 -* #define DATA_ENTRY_MODE_SETTING 0x11 -* #define SW_RESET 0x12 -* #define TEMPERATURE_SENSOR_CONTROL 0x1A -* #define MASTER_ACTIVATION 0x20 -* #define DISPLAY_UPDATE_CONTROL_1 0x21 -* #define DISPLAY_UPDATE_CONTROL_2 0x22 -* #define WRITE_RAM 0x24 -* #define WRITE_VCOM_REGISTER 0x2C -* #define WRITE_LUT_REGISTER 0x32 -* #define SET_DUMMY_LINE_PERIOD 0x3A -* #define SET_GATE_TIME 0x3B -* #define BORDER_WAVEFORM_CONTROL 0x3C -* #define SET_RAM_X_ADDRESS_START_END_POSITION 0x44 -* #define SET_RAM_Y_ADDRESS_START_END_POSITION 0x45 -* #define SET_RAM_X_ADDRESS_COUNTER 0x4E -* #define SET_RAM_Y_ADDRESS_COUNTER 0x4F -* #define TERMINATE_FRAME_READ_WRITE 0xFF -* ----------------------------------------------------------------------------- -* V2.0(2018-11-06): -* 1.Remove:ImageBuff[EPD_2IN9_HEIGHT * EPD_2IN9_WIDTH / 8] -* 2.Change:EPD_Display(UBYTE *Image) -* Need to pass parameters: pointer to cached data -* 3.Change: -* EPD_RST -> EPD_RST_PIN -* EPD_DC -> EPD_DC_PIN -* EPD_CS -> EPD_CS_PIN -* EPD_BUSY -> EPD_BUSY_PIN -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "EPD_2in9.h" -#include "Debug.h" - -const unsigned char EPD_2IN9_lut_full_update[] = { - 0x50, 0xAA, 0x55, 0xAA, 0x11, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0xFF, 0xFF, 0x1F, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 -}; - -const unsigned char EPD_2IN9_lut_partial_update[] = { - 0x10, 0x18, 0x18, 0x08, 0x18, 0x18, - 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x13, 0x14, 0x44, 0x12, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 -}; - -/****************************************************************************** -function : Software reset -parameter: -******************************************************************************/ -static void EPD_2IN9_Reset(void) -{ - DEV_Digital_Write(EPD_RST_PIN, 1); - DEV_Delay_ms(200); - DEV_Digital_Write(EPD_RST_PIN, 0); - DEV_Delay_ms(200); - DEV_Digital_Write(EPD_RST_PIN, 1); - DEV_Delay_ms(200); -} - -/****************************************************************************** -function : send command -parameter: - Reg : Command register -******************************************************************************/ -static void EPD_2IN9_SendCommand(UBYTE Reg) -{ - DEV_Digital_Write(EPD_DC_PIN, 0); - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_SPI_WriteByte(Reg); - DEV_Digital_Write(EPD_CS_PIN, 1); -} - -/****************************************************************************** -function : send data -parameter: - Data : Write data -******************************************************************************/ -static void EPD_2IN9_SendData(UBYTE Data) -{ - DEV_Digital_Write(EPD_DC_PIN, 1); - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_SPI_WriteByte(Data); - DEV_Digital_Write(EPD_CS_PIN, 1); -} - -/****************************************************************************** -function : Wait until the busy_pin goes LOW -parameter: -******************************************************************************/ -void EPD_2IN9_ReadBusy(void) -{ - Debug("e-Paper busy\r\n"); - while(DEV_Digital_Read(EPD_BUSY_PIN) == 1) { //LOW: idle, HIGH: busy - DEV_Delay_ms(100); - } - Debug("e-Paper busy release\r\n"); -} - -/****************************************************************************** -function : Setting the display window -parameter: -******************************************************************************/ -static void EPD_2IN9_SetWindows(UWORD Xstart, UWORD Ystart, UWORD Xend, UWORD Yend) -{ - EPD_2IN9_SendCommand(0x44); // SET_RAM_X_ADDRESS_START_END_POSITION - EPD_2IN9_SendData((Xstart >> 3) & 0xFF); - EPD_2IN9_SendData((Xend >> 3) & 0xFF); - - EPD_2IN9_SendCommand(0x45); // SET_RAM_Y_ADDRESS_START_END_POSITION - EPD_2IN9_SendData(Ystart & 0xFF); - EPD_2IN9_SendData((Ystart >> 8) & 0xFF); - EPD_2IN9_SendData(Yend & 0xFF); - EPD_2IN9_SendData((Yend >> 8) & 0xFF); -} - -/****************************************************************************** -function : Set Cursor -parameter: -******************************************************************************/ -static void EPD_2IN9_SetCursor(UWORD Xstart, UWORD Ystart) -{ - EPD_2IN9_SendCommand(0x4E); // SET_RAM_X_ADDRESS_COUNTER - EPD_2IN9_SendData((Xstart >> 3) & 0xFF); - - EPD_2IN9_SendCommand(0x4F); // SET_RAM_Y_ADDRESS_COUNTER - EPD_2IN9_SendData(Ystart & 0xFF); - EPD_2IN9_SendData((Ystart >> 8) & 0xFF); -} - -/****************************************************************************** -function : Turn On Display -parameter: -******************************************************************************/ -static void EPD_2IN9_TurnOnDisplay(void) -{ - EPD_2IN9_SendCommand(0x22); // DISPLAY_UPDATE_CONTROL_2 - EPD_2IN9_SendData(0xC4); - EPD_2IN9_SendCommand(0x20); // MASTER_ACTIVATION - EPD_2IN9_SendCommand(0xFF); // TERMINATE_FRAME_READ_WRITE - - EPD_2IN9_ReadBusy(); -} - -/****************************************************************************** -function : Initialize the e-Paper register -parameter: -******************************************************************************/ -void EPD_2IN9_Init(UBYTE Mode) -{ - EPD_2IN9_Reset(); - - EPD_2IN9_SendCommand(0x01); // DRIVER_OUTPUT_CONTROL - EPD_2IN9_SendData((EPD_2IN9_HEIGHT - 1) & 0xFF); - EPD_2IN9_SendData(((EPD_2IN9_HEIGHT - 1) >> 8) & 0xFF); - EPD_2IN9_SendData(0x00); // GD = 0; SM = 0; TB = 0; - - EPD_2IN9_SendCommand(0x0C); // BOOSTER_SOFT_START_CONTROL - EPD_2IN9_SendData(0xD7); - EPD_2IN9_SendData(0xD6); - EPD_2IN9_SendData(0x9D); - - EPD_2IN9_SendCommand(0x2C); // WRITE_VCOM_REGISTER - EPD_2IN9_SendData(0xA8); // VCOM 7C - - EPD_2IN9_SendCommand(0x3A); // SET_DUMMY_LINE_PERIOD - EPD_2IN9_SendData(0x1A); // 4 dummy lines per gate - - EPD_2IN9_SendCommand(0x3B); // SET_GATE_TIME - EPD_2IN9_SendData(0x08); // 2us per line - - EPD_2IN9_SendCommand(0x3C); // BORDER_WAVEFORM_CONTROL - EPD_2IN9_SendData(0x03); - EPD_2IN9_SendCommand(0x11); // DATA_ENTRY_MODE_SETTING - EPD_2IN9_SendData(0x03); - - //set the look-up table register - EPD_2IN9_SendCommand(0x32); // WRITE_LUT_REGISTER - if(Mode == EPD_2IN9_FULL){ - for (UWORD i = 0; i < 30; i++) { - EPD_2IN9_SendData(EPD_2IN9_lut_full_update[i]); - } - }else if(Mode == EPD_2IN9_PART){ - for (UWORD i = 0; i < 30; i++) { - EPD_2IN9_SendData(EPD_2IN9_lut_partial_update[i]); - } - }else{ - Debug("error, the Mode is EPD_2IN9_FULL or EPD_2IN9_PART"); - } -} - -/****************************************************************************** -function : Clear screen -parameter: -******************************************************************************/ -void EPD_2IN9_Clear(void) -{ - UWORD Width, Height; - Width = (EPD_2IN9_WIDTH % 8 == 0)? (EPD_2IN9_WIDTH / 8 ): (EPD_2IN9_WIDTH / 8 + 1); - Height = EPD_2IN9_HEIGHT; - EPD_2IN9_SetWindows(0, 0, EPD_2IN9_WIDTH, EPD_2IN9_HEIGHT); - for (UWORD j = 0; j < Height; j++) { - EPD_2IN9_SetCursor(0, j); - EPD_2IN9_SendCommand(0x24); - for (UWORD i = 0; i < Width; i++) { - EPD_2IN9_SendData(0XFF); - } - } - EPD_2IN9_TurnOnDisplay(); -} - -/****************************************************************************** -function : Sends the image buffer in RAM to e-Paper and displays -parameter: -******************************************************************************/ -void EPD_2IN9_Display(UBYTE *Image) -{ - UWORD Width, Height; - Width = (EPD_2IN9_WIDTH % 8 == 0)? (EPD_2IN9_WIDTH / 8 ): (EPD_2IN9_WIDTH / 8 + 1); - Height = EPD_2IN9_HEIGHT; - - UDOUBLE Addr = 0; - // UDOUBLE Offset = ImageName; - EPD_2IN9_SetWindows(0, 0, EPD_2IN9_WIDTH, EPD_2IN9_HEIGHT); - for (UWORD j = 0; j < Height; j++) { - EPD_2IN9_SetCursor(0, j); - EPD_2IN9_SendCommand(0x24); - for (UWORD i = 0; i < Width; i++) { - Addr = i + j * Width; - EPD_2IN9_SendData(Image[Addr]); - } - } - EPD_2IN9_TurnOnDisplay(); -} - -/****************************************************************************** -function : Enter sleep mode -parameter: -******************************************************************************/ -void EPD_2IN9_Sleep(void) -{ - EPD_2IN9_SendCommand(0x10); - EPD_2IN9_SendData(0x01); - // EPD_2IN9_ReadBusy(); -} diff --git a/Jetson Nano/c/readme_CN.txt b/Jetson Nano/c/readme_CN.txt deleted file mode 100644 index 9f6db54..0000000 --- a/Jetson Nano/c/readme_CN.txt +++ /dev/null @@ -1,86 +0,0 @@ -/***************************************************************************** -* | File : Readme_CN.txt -* | Author : Waveshare team -* | Function : Help with use -* | Info : -*---------------- -* | This version: V1.0 -* | Date : 2019-06-17 -* | Info : 鍦ㄨ繖閲屾彁渚涗竴涓腑鏂囩増鏈殑浣跨敤鏂囨。锛屼互渚夸綘鐨勫揩閫熶娇鐢 -******************************************************************************/ -杩欎釜鏂囦欢鏄府鍔╂偍浣跨敤鏈緥绋嬨 -鐢变簬鎴戜滑鐨勫ⅷ姘村睆瓒婃潵瓒婂锛屼笉渚夸簬鎴戜滑鐨勭淮鎶わ紝鍥犳鎶婃墍鏈夌殑澧ㄦ按灞忕▼搴忓仛鎴愪竴涓伐绋嬨 -鍦ㄨ繖閲岀畝鐣ョ殑鎻忚堪鏈伐绋嬬殑浣跨敤锛 - -1.鍩烘湰淇℃伅锛 -鏈緥绋嬫槸鍩轰簬jetson-nano-sd-r32.1-2019-03-18绯荤粺闀滃儚鑰屽紑鍙戠殑锛岀敱浜庣洰鍓嶇殑绯荤粺鏄病鏈夌‖浠禨PI鐨勶紝 -鐩墠閲囩敤妯℃嫙SPI杩涜寮鍙戠殑锛屽洜姝ゅⅷ姘村睆鐨勫埛鏂伴熷害杈冩參; -鏈緥绋嬫槸鍩轰簬Jetson Nano杩涜寮鍙戠殑锛屼緥绋嬪潎鍦↗etson Nano涓婅繘琛屼簡楠岃瘉; -鏈緥绋嬩娇鐢╡-paper Driver HAT妯″潡杩涜浜嗛獙璇侊紝浣犲彲浠ュ湪宸ョ▼鐨凟xamples\涓煡鐪嬪搴旂殑娴嬭瘯渚嬬▼; - -2.绠¤剼杩炴帴锛 -绠¤剼杩炴帴浣犲彲浠ュ湪\lib\Config鐩綍涓嬫煡鐪婦EV_Config.h涓煡鐪嬶紝杩欓噷涔熷啀閲嶈堪涓娆★細 -EPD => Jetson Nano/RPI(BCM) -VCC -> 3.3 -GND -> GND -DIN -> 10(SPI0_MOSI) -CLK -> 11(SPI0_SCK) -CS -> 8(SPI0_CS0) -DC -> 25 -RST -> 17 -BUSY -> 24 - -3.鍩烘湰浣跨敤锛 -鐢变簬鏈伐绋嬫槸涓涓患鍚堝伐绋嬶紝瀵逛簬浣跨敤鑰岃█锛屼綘鍙兘闇瑕侀槄璇讳互涓嬪唴瀹癸細 -浣犲彲浠ュ湪main.c涓殑19琛屽埌43琛岀湅鍒板凡缁忚繘琛屼簡娉ㄩ噴鐨19涓嚱鏁帮紝 -璇锋敞鎰忎綘璐拱鐨勬槸鍝竴娆剧殑澧ㄦ按灞忋 -鏍楀瓙1锛 - 濡傛灉浣犺喘涔扮殑5.83inch e-paper锛岄偅涔堜綘搴旇鎶婂搴旂殑39琛屼唬鐮佺殑娉ㄩ噴鍘绘帀锛屽嵆锛 - // EPD_5in83_test(); - 淇敼鎴愶細 - EPD_5in83_test(); -鏍楀瓙2锛 - 濡傛灉浣犺喘涔扮殑2.9inch e-paper (B)锛岀敱浜2.9瀵哥殑B鍨嬪拰C鍨嬫槸鍏敤鐨勯┍鍔ㄤ唬鐮侊紝 - 閭d箞浣犲簲璇ユ妸瀵瑰簲鐨28琛屼唬鐮佺殑娉ㄩ噴鍘绘帀锛屽嵆锛 - // EPD_2in9bc_test(); - 淇敼鎴愶細 - EPD_2in9bc_test(); -娉ㄦ剰锛氬浜嶦PD_1in54_V2_test()鍜孍PD_2in13_V2_test()璇锋敞鎰忎綘鐨勫睆骞曡儗闈㈡槸鍚﹁创鏈塚2鏍囪瘑銆 - -鐒跺悗浣犻渶瑕佹墽琛岋細make,缂栬瘧绋嬪簭锛屼細鐢熸垚鍙墽琛屾枃浠讹細epd -杩愯锛歴udo ./epd -濡傛灉淇敼浜嗙▼搴忥紝闇瑕佹墽琛岋細make clear,鐒跺悗閲嶆柊make銆 - -4.鐩綍缁撴瀯锛堥夎锛夛細 -濡傛灉浣犵粡甯镐娇鐢ㄦ垜浠殑浜у搧锛屽鎴戜滑鐨勭▼搴忕洰褰曠粨鏋勪細鍗佸垎鐔熸倝锛屽叧浜庡叿浣撶殑鍑芥暟鐨勬垜浠湁涓浠 -鍑芥暟鐨凙PI鎵嬪唽锛屼綘鍙互鍦ㄦ垜浠殑WIKI涓婁笅杞芥垨鍍忓敭鍚庡鏈嶇储鍙栵紝杩欓噷绠鍗曚粙缁嶄竴娆★細 -\lib\Config\:姝ょ洰褰曚负纭欢鎺ュ彛灞傛枃浠讹紝鍦―EV_Config.c(.h)鍙互鐪嬪埌寰堝瀹氫箟锛屽寘鎷細 - 鏁版嵁绫诲瀷; - GPIO; - 璇诲啓GPIO; - 寤舵椂锛氭敞鎰忥細姝ゅ欢鏃跺嚱鏁板苟鏈娇鐢ㄧず娉㈠櫒娴嬮噺鍏蜂綋鏁板,鍥犳浼氫笉鍑; - 妯″潡鍒濆鍖栦笌閫鍑虹殑澶勭悊锛 - void DEV_Module_Init(void); - void DEV_Module_Exit(void); - 娉ㄦ剰锛1.杩欓噷鏄鐞嗕娇鐢ㄥⅷ姘村睆鍓嶄笌浣跨敤瀹屼箣鍚庝竴浜汫PIO鐨勫鐞嗐 - 2.瀵逛簬PCB甯︽湁Rev2.1鐨勶紝DEV_Module_Exit()涔嬪悗鏁翠釜妯″潡浼氳繘鍏ヤ綆鍔熻楋紝缁忚繃娴嬭瘯杩欎釜鍔熻楀熀鏈负0; - -\lib\GUI\:姝ょ洰褰曚负涓浜涘熀鏈殑鍥惧儚澶勭悊鍑芥暟锛屽湪GUI_Paint.c(.h)涓細 - 甯哥敤鍥惧儚澶勭悊锛氬垱寤哄浘褰€佺炕杞浘褰€侀暅鍍忓浘褰€佽缃儚绱犵偣銆佹竻灞忕瓑; - 甯哥敤鐢诲浘澶勭悊锛氱敾鐐广佺嚎銆佹銆佸渾銆佷腑鏂囧瓧绗︺佽嫳鏂囧瓧绗︺佹暟瀛楃瓑; - 甯哥敤鏃堕棿鏄剧ず锛氭彁渚涗竴涓父鐢ㄧ殑鏄剧ず鏃堕棿鍑芥暟; - 甯哥敤鏄剧ず鍥剧墖锛氭彁渚涗竴涓樉绀轰綅鍥剧殑鍑芥暟; - -\lib\Fonts\:涓轰竴浜涘父鐢ㄧ殑瀛椾綋锛 - Ascii: - font8: 5*8 - font12: 7*12 - font16: 11*16 - font20: 14*20 - font24: 17*24 - 涓枃锛 - font12CN: 16*21 - font24CN: 32*41 - -\lib\e-paper\:姝ょ洰褰曚笅涓哄ⅷ姘村睆椹卞姩鍑芥暟; -Examples\:姝ょ洰褰曚笅涓哄ⅷ姘村睆鐨勬祴璇曠▼搴忥紝浣犲彲鍦ㄥ叾涓湅鍒板叿浣撶殑浣跨敤鏂规硶; \ No newline at end of file diff --git a/Jetson Nano/python2/examples/epd_1in54_V2_test.py b/Jetson Nano/python2/examples/epd_1in54_V2_test.py deleted file mode 100644 index 2e51114..0000000 --- a/Jetson Nano/python2/examples/epd_1in54_V2_test.py +++ /dev/null @@ -1,87 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd1in54_V2 -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd1in54_V2 Demo") - - epd = epd1in54_V2.EPD() - print("init and Clear") - epd.init() - epd.Clear(0xFF) - time.sleep(1) - - # Drawing on the image - print("1.Drawing on the image...") - image = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - - draw = ImageDraw.Draw(image) - font = ImageFont.truetype('../lib/Font.ttc', 24) - draw.rectangle((0, 10, 200, 34), fill = 0) - draw.text((8, 12), 'hello world', font = font, fill = 255) - draw.text((8, 36), u'寰洩鐢靛瓙', font = font, fill = 0) - draw.line((16, 60, 56, 60), fill = 0) - draw.line((56, 60, 56, 110), fill = 0) - draw.line((16, 110, 56, 110), fill = 0) - draw.line((16, 110, 16, 60), fill = 0) - draw.line((16, 60, 56, 110), fill = 0) - draw.line((56, 60, 16, 110), fill = 0) - draw.arc((90, 60, 150, 120), 0, 360, fill = 0) - draw.rectangle((16, 130, 56, 180), fill = 0) - draw.chord((90, 130, 150, 190), 0, 360, fill = 0) - epd.display(epd.getbuffer(image.rotate(90))) - time.sleep(2) - - # read bmp file - print("2.read bmp file...") - image = Image.open('../pic/1in54.bmp') - epd.display(epd.getbuffer(image)) - time.sleep(2) - - # read bmp file on window - print("3.read bmp file on window...") - epd.Clear(0xFF) - image1 = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') - image1.paste(bmp, (50,50)) - epd.display(epd.getbuffer(image1)) - time.sleep(2) - - # partial update - print("4.show time...") - time_image = Image.new('1', (epd.width, epd.height), 255) - epd.displayPartBaseImage(epd.getbuffer(time_image)) - - time_draw = ImageDraw.Draw(time_image) - num = 0 - while (True): - time_draw.rectangle((10, 10, 120, 50), fill = 255) - time_draw.text((10, 10), time.strftime('%H:%M:%S'), font = font, fill = 0) - newimage = time_image.crop([10, 10, 120, 50]) - time_image.paste(newimage, (10,10)) - epd.displayPart(epd.getbuffer(time_image)) - num = num + 1 - if(num == 10): - break - - print("Clear...") - epd.init() - epd.Clear(0xFF) - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() \ No newline at end of file diff --git a/Jetson Nano/python2/examples/epd_1in54_test.py b/Jetson Nano/python2/examples/epd_1in54_test.py deleted file mode 100644 index 92f619f..0000000 --- a/Jetson Nano/python2/examples/epd_1in54_test.py +++ /dev/null @@ -1,86 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd1in54 -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd1in54 Demo") - - epd = epd1in54.EPD() - print("init and Clear") - epd.init(epd.lut_full_update) - epd.Clear(0xFF) - - # Drawing on the image - print("1.Drawing on the image...") - image = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - - draw = ImageDraw.Draw(image) - font = ImageFont.truetype('../lib/Font.ttc', 24) - draw.rectangle((0, 10, 200, 34), fill = 0) - draw.text((8, 12), 'hello world', font = font, fill = 255) - draw.text((8, 36), u'寰洩鐢靛瓙', font = font, fill = 0) - draw.line((16, 60, 56, 60), fill = 0) - draw.line((56, 60, 56, 110), fill = 0) - draw.line((16, 110, 56, 110), fill = 0) - draw.line((16, 110, 16, 60), fill = 0) - draw.line((16, 60, 56, 110), fill = 0) - draw.line((56, 60, 16, 110), fill = 0) - draw.arc((90, 60, 150, 120), 0, 360, fill = 0) - draw.rectangle((16, 130, 56, 180), fill = 0) - draw.chord((90, 130, 150, 190), 0, 360, fill = 0) - epd.display(epd.getbuffer(image.rotate(90))) - time.sleep(2) - - # read bmp file - print("2.read bmp file...") - image = Image.open('../pic/1in54.bmp') - epd.display(epd.getbuffer(image)) - time.sleep(2) - - # read bmp file on window - print("3.read bmp file on window...") - epd.Clear(0xFF) - image1 = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') - image1.paste(bmp, (50,50)) - epd.display(epd.getbuffer(image1)) - time.sleep(2) - - # # partial update - print("4.show time...") - epd.init(epd.lut_partial_update) - epd.Clear(0xFF) - - time_image = Image.new('1', (epd.width, epd.height), 255) - time_draw = ImageDraw.Draw(time_image) - num = 0 - while (True): - time_draw.rectangle((10, 10, 120, 50), fill = 255) - time_draw.text((10, 10), time.strftime('%H:%M:%S'), font = font, fill = 0) - newimage = time_image.crop([10, 10, 120, 50]) - time_image.paste(newimage, (10,10)) - epd.display(epd.getbuffer(time_image)) - num = num + 1 - if(num == 10): - break - - print("Clear...") - epd.Clear(0xFF) - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Jetson Nano/python2/examples/epd_2in13_V2_test.py b/Jetson Nano/python2/examples/epd_2in13_V2_test.py deleted file mode 100644 index 85f5ee7..0000000 --- a/Jetson Nano/python2/examples/epd_2in13_V2_test.py +++ /dev/null @@ -1,89 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd2in13_V2 -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd2in13_V2 Demo") - - epd = epd2in13_V2.EPD() - print("init and Clear") - epd.init(epd.FULL_UPDATE) - epd.Clear(0xFF) - - # Drawing on the image - font15 = ImageFont.truetype('../lib/Font.ttc', 15) - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - - print("1.Drawing on the image...") - image = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - draw = ImageDraw.Draw(image) - - draw.rectangle([(0,0),(50,50)],outline = 0) - draw.rectangle([(55,0),(100,50)],fill = 0) - draw.line([(0,0),(50,50)], fill = 0,width = 1) - draw.line([(0,50),(50,0)], fill = 0,width = 1) - draw.chord((10, 60, 50, 100), 0, 360, fill = 0) - draw.ellipse((55, 60, 95, 100), outline = 0) - draw.pieslice((55, 60, 95, 100), 90, 180, outline = 0) - draw.pieslice((55, 60, 95, 100), 270, 360, fill = 0) - draw.polygon([(110,0),(110,50),(150,25)],outline = 0) - draw.polygon([(190,0),(190,50),(150,25)],fill = 0) - draw.text((120, 60), 'e-Paper demo', font = font15, fill = 0) - draw.text((110, 90), u'寰洩鐢靛瓙', font = font24, fill = 0) - epd.display(epd.getbuffer(image)) - time.sleep(2) - - # read bmp file - print("2.read bmp file...") - image = Image.open('../pic/2in13.bmp') - epd.display(epd.getbuffer(image)) - time.sleep(2) - - # read bmp file on window - print("3.read bmp file on window...") - # epd.Clear(0xFF) - image1 = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') - image1.paste(bmp, (2,2)) - epd.display(epd.getbuffer(image1)) - time.sleep(2) - - # # partial update - print("4.show time...") - time_image = Image.new('1', (epd.height, epd.width), 255) - time_draw = ImageDraw.Draw(time_image) - - epd.init(epd.FULL_UPDATE) - epd.displayPartBaseImage(epd.getbuffer(time_image)) - - epd.init(epd.PART_UPDATE) - num = 0 - while (True): - time_draw.rectangle((120, 80, 220, 105), fill = 255) - time_draw.text((120, 80), time.strftime('%H:%M:%S'), font = font24, fill = 0) - epd.displayPartial(epd.getbuffer(time_image)) - num = num + 1 - if(num == 10): - break - - print("Clear...") - epd.init(epd.FULL_UPDATE) - epd.Clear(0xFF) - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Jetson Nano/python2/examples/epd_2in13_test.py b/Jetson Nano/python2/examples/epd_2in13_test.py deleted file mode 100644 index 1081d79..0000000 --- a/Jetson Nano/python2/examples/epd_2in13_test.py +++ /dev/null @@ -1,87 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd2in13 -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd2in13 Demo") - - epd = epd2in13.EPD() - print("init and Clear") - epd.init(epd.lut_full_update) - epd.Clear(0xFF) - - # Drawing on the image - font15 = ImageFont.truetype('../lib/Font.ttc', 15) - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - - print("1.Drawing on the image...") - image = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - draw = ImageDraw.Draw(image) - - draw.rectangle([(0,0),(50,50)],outline = 0) - draw.rectangle([(55,0),(100,50)],fill = 0) - draw.line([(0,0),(50,50)], fill = 0,width = 1) - draw.line([(0,50),(50,0)], fill = 0,width = 1) - draw.chord((10, 60, 50, 100), 0, 360, fill = 0) - draw.ellipse((55, 60, 95, 100), outline = 0) - draw.pieslice((55, 60, 95, 100), 90, 180, outline = 0) - draw.pieslice((55, 60, 95, 100), 270, 360, fill = 0) - draw.polygon([(110,0),(110,50),(150,25)],outline = 0) - draw.polygon([(190,0),(190,50),(150,25)],fill = 0) - draw.text((120, 60), 'e-Paper demo', font = font15, fill = 0) - draw.text((110, 90), u'寰洩鐢靛瓙', font = font24, fill = 0) - epd.display(epd.getbuffer(image)) - time.sleep(2) - - # read bmp file - print("2.read bmp file...") - image = Image.open('../pic/2in13.bmp') - epd.display(epd.getbuffer(image)) - time.sleep(2) - - # read bmp file on window - print("3.read bmp file on window...") - # epd.Clear(0xFF) - image1 = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') - image1.paste(bmp, (2,2)) - epd.display(epd.getbuffer(image1)) - time.sleep(2) - - # # partial update - print("4.show time...") - epd.init(epd.lut_partial_update) - epd.Clear(0xFF) - - time_image = Image.new('1', (epd.height, epd.width), 255) - time_draw = ImageDraw.Draw(time_image) - num = 0 - while (True): - time_draw.rectangle((120, 80, 220, 105), fill = 255) - time_draw.text((120, 80), time.strftime('%H:%M:%S'), font = font24, fill = 0) - epd.display(epd.getbuffer(time_image)) - num = num + 1 - if(num == 10): - break - - print("Clear...") - epd.init(epd.lut_full_update) - epd.Clear(0xFF) - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Jetson Nano/python2/examples/epd_2in13bc_test.py b/Jetson Nano/python2/examples/epd_2in13bc_test.py deleted file mode 100644 index ad24c87..0000000 --- a/Jetson Nano/python2/examples/epd_2in13bc_test.py +++ /dev/null @@ -1,91 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd2in13bc -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd2in13bc Demo") - - epd = epd2in13bc.EPD() - print("init and Clear") - epd.init() - epd.Clear() - time.sleep(1) - - # Drawing on the image - print("Drawing") - font20 = ImageFont.truetype('../lib/Font.ttc', 20) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - HBlackimage = Image.new('1', (epd.height, epd.width), 255) # 298*126 - HRYimage = Image.new('1', (epd.height, epd.width), 255) # 298*126 ryimage: red or yellow image - drawblack = ImageDraw.Draw(HBlackimage) - drawry = ImageDraw.Draw(HRYimage) - drawblack.text((10, 0), 'hello world', font = font20, fill = 0) - drawblack.text((10, 20), '2.13inch e-Paper bc', font = font20, fill = 0) - drawblack.text((120, 0), u'寰洩鐢靛瓙', font = font20, fill = 0) - drawblack.line((20, 50, 70, 100), fill = 0) - drawblack.line((70, 50, 20, 100), fill = 0) - drawblack.rectangle((20, 50, 70, 100), outline = 0) - drawry.line((165, 50, 165, 100), fill = 0) - drawry.line((140, 75, 190, 75), fill = 0) - drawry.arc((140, 50, 190, 100), 0, 360, fill = 0) - drawry.rectangle((80, 50, 130, 100), fill = 0) - drawry.chord((85, 55, 125, 95), 0, 360, fill =1) - epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRYimage)) - time.sleep(2) - - # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") - LBlackimage = Image.new('1', (epd.width, epd.height), 255) # 126*298 - LRYimage = Image.new('1', (epd.width, epd.height), 255) # 126*298 - drawblack = ImageDraw.Draw(LBlackimage) - drawry = ImageDraw.Draw(LRYimage) - - drawblack.text((2, 0), 'hello world', font = font18, fill = 0) - drawblack.text((2, 20), '2.13 epd b', font = font18, fill = 0) - drawblack.text((20, 50), u'寰洩鐢靛瓙', font = font18, fill = 0) - drawblack.line((10, 90, 60, 140), fill = 0) - drawblack.line((60, 90, 10, 140), fill = 0) - drawblack.rectangle((10, 90, 60, 140), outline = 0) - drawry.rectangle((10, 150, 60, 200), fill = 0) - drawry.arc((15, 95, 55, 135), 0, 360, fill = 0) - drawry.chord((15, 155, 55, 195), 0, 360, fill =1) - epd.display(epd.getbuffer(LBlackimage), epd.getbuffer(LRYimage)) - time.sleep(2) - - print("3.read bmp file") - HBlackimage = Image.open('../pic/2in13bc-b.bmp') - HRYimage = Image.open('../pic/2in13bc-ry.bmp') - epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRYimage)) - time.sleep(2) - - print("4.read bmp file on window") - blackimage1 = Image.new('1', (epd.height, epd.width), 255) # 298*126 - redimage1 = Image.new('1', (epd.height, epd.width), 255) # 298*126 - newimage = Image.open('../pic/100x100.bmp') - blackimage1.paste(newimage, (10,10)) - epd.display(epd.getbuffer(blackimage1), epd.getbuffer(redimage1)) - - print("Clear...") - epd.init() - epd.Clear() - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Jetson Nano/python2/examples/epd_2in13d_test.py b/Jetson Nano/python2/examples/epd_2in13d_test.py deleted file mode 100644 index 883ccb3..0000000 --- a/Jetson Nano/python2/examples/epd_2in13d_test.py +++ /dev/null @@ -1,83 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd2in13d -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd2in13d Demo") - - epd = epd2in13d.EPD() - print("init and Clear") - epd.init() - epd.Clear(0xFF) - - font15 = ImageFont.truetype('../lib/Font.ttc', 15) - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - Himage = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - draw = ImageDraw.Draw(Himage) - draw.rectangle([(0,0),(50,50)],outline = 0) - draw.rectangle([(55,0),(100,50)],fill = 0) - draw.line([(0,0),(50,50)], fill = 0,width = 1) - draw.line([(0,50),(50,0)], fill = 0,width = 1) - draw.chord((10, 60, 50, 100), 0, 360, fill = 0) - draw.ellipse((55, 60, 95, 100), outline = 0) - draw.pieslice((55, 60, 95, 100), 90, 180, outline = 0) - draw.pieslice((55, 60, 95, 100), 270, 360, fill = 0) - draw.polygon([(110,0),(110,50),(150,25)],outline = 0) - draw.polygon([(190,0),(190,50),(150,25)],fill = 0) - draw.text((110, 60), 'e-Paper demo', font = font15, fill = 0) - draw.text((110, 80), u'寰洩鐢靛瓙', font = font15, fill = 0) - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - print("3.read bmp file") - Himage = Image.open('../pic/2in13d.bmp') - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - print("4.read bmp file on window") - Himage2 = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') - Himage2.paste(bmp, (20,20)) - epd.display(epd.getbuffer(Himage2)) - time.sleep(2) - - # # partial update - print("5.show time...") - epd.init() - epd.Clear(0xFF) - - time_image = Image.new('1', (epd.width, epd.height), 255) - time_draw = ImageDraw.Draw(time_image) - num = 0 - while (True): - time_draw.rectangle((10, 10, 120, 50), fill = 255) - time_draw.text((10, 10), time.strftime('%H:%M:%S'), font = font24, fill = 0) - newimage = time_image.crop([10, 10, 120, 50]) - time_image.paste(newimage, (10,10)) - epd.DisplayPartial(epd.getbuffer(time_image)) - num = num + 1 - if(num == 10): - break - - print("Clear...") - epd.Clear(0xFF) - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Jetson Nano/python2/examples/epd_2in7_test.py b/Jetson Nano/python2/examples/epd_2in7_test.py deleted file mode 100644 index 24a7c43..0000000 --- a/Jetson Nano/python2/examples/epd_2in7_test.py +++ /dev/null @@ -1,81 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd2in7 -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd2in7 Demo") - - epd = epd2in7.EPD() - print("init and Clear") - epd.init() - epd.Clear(0xFF) - - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - Himage = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - draw = ImageDraw.Draw(Himage) - draw.text((10, 0), 'hello world', font = font24, fill = 0) - draw.text((150, 0), u'寰洩鐢靛瓙', font = font24, fill = 0) - draw.line((20, 50, 70, 100), fill = 0) - draw.line((70, 50, 20, 100), fill = 0) - draw.rectangle((20, 50, 70, 100), outline = 0) - draw.line((165, 50, 165, 100), fill = 0) - draw.line((140, 75, 190, 75), fill = 0) - draw.arc((140, 50, 190, 100), 0, 360, fill = 0) - draw.rectangle((80, 50, 130, 100), fill = 0) - draw.chord((200, 50, 250, 100), 0, 360, fill = 0) - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") - Limage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - draw = ImageDraw.Draw(Limage) - draw.text((2, 0), 'hello world', font = font18, fill = 0) - draw.text((20, 50), u'寰洩鐢靛瓙', font = font18, fill = 0) - draw.line((10, 90, 60, 140), fill = 0) - draw.line((60, 90, 10, 140), fill = 0) - draw.rectangle((10, 90, 60, 140), outline = 0) - draw.line((95, 90, 95, 140), fill = 0) - draw.line((70, 115, 120, 115), fill = 0) - draw.arc((70, 90, 120, 140), 0, 360, fill = 0) - draw.rectangle((10, 150, 60, 200), fill = 0) - draw.chord((70, 150, 120, 200), 0, 360, fill = 0) - epd.display(epd.getbuffer(Limage)) - time.sleep(2) - - print("3.read bmp file") - Himage = Image.open('../pic/2in7.bmp') - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - print("4.read bmp file on window") - Himage2 = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') - Himage2.paste(bmp, (50,10)) - epd.display(epd.getbuffer(Himage2)) - time.sleep(2) - - print("Clear...") - epd.Clear(0xFF) - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Jetson Nano/python2/examples/epd_2in7b_test.py b/Jetson Nano/python2/examples/epd_2in7b_test.py deleted file mode 100644 index ece7390..0000000 --- a/Jetson Nano/python2/examples/epd_2in7b_test.py +++ /dev/null @@ -1,98 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd2in7b -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd2in7b Demo") - - epd = epd2in7b.EPD() - print("init and Clear") - epd.init() - epd.Clear() - time.sleep(1) - - # Drawing on the image - print("Drawing") - blackimage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - redimage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - HBlackimage = Image.new('1', (epd.height, epd.width), 255) # 298*126 - HRedimage = Image.new('1', (epd.height, epd.width), 255) # 298*126 - - drawblack = ImageDraw.Draw(HBlackimage) - drawred = ImageDraw.Draw(HRedimage) - drawblack.text((10, 0), 'hello world', font = font24, fill = 0) - drawblack.text((10, 20), '2.9inch e-Paper', font = font24, fill = 0) - drawblack.text((150, 0), u'寰洩鐢靛瓙', font = font24, fill = 0) - drawblack.line((20, 50, 70, 100), fill = 0) - drawblack.line((70, 50, 20, 100), fill = 0) - drawblack.rectangle((20, 50, 70, 100), outline = 0) - drawred.line((165, 50, 165, 100), fill = 0) - drawred.line((140, 75, 190, 75), fill = 0) - drawred.arc((140, 50, 190, 100), 0, 360, fill = 0) - drawred.rectangle((80, 50, 130, 100), fill = 0) - drawred.chord((200, 50, 250, 100), 0, 360, fill = 0) - epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRedimage)) - time.sleep(2) - - # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") - LBlackimage = Image.new('1', (epd.width, epd.height), 255) # 126*298 - LRedimage = Image.new('1', (epd.width, epd.height), 255) # 126*298 - drawblack = ImageDraw.Draw(LBlackimage) - drawred = ImageDraw.Draw(LRedimage) - - drawblack.text((2, 0), 'hello world', font = font18, fill = 0) - drawblack.text((2, 20), '2.9inch epd', font = font18, fill = 0) - drawblack.text((20, 50), u'寰洩鐢靛瓙', font = font18, fill = 0) - drawblack.line((10, 90, 60, 140), fill = 0) - drawblack.line((60, 90, 10, 140), fill = 0) - drawblack.rectangle((10, 90, 60, 140), outline = 0) - drawred.line((95, 90, 95, 140), fill = 0) - drawred.line((70, 115, 120, 115), fill = 0) - drawred.arc((70, 90, 120, 140), 0, 360, fill = 0) - drawred.rectangle((10, 150, 60, 200), fill = 0) - drawred.chord((70, 150, 120, 200), 0, 360, fill = 0) - epd.display(epd.getbuffer(LBlackimage), epd.getbuffer(LRedimage)) - time.sleep(2) - - print("3.read bmp file") - HBlackimage = Image.open('../pic/2in7b-b.bmp') - HRedimage = Image.open('../pic/2in7b-r.bmp') - epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRedimage)) - time.sleep(2) - - print("4.read bmp file on window") - blackimage1 = Image.new('1', (epd.height, epd.width), 255) # 298*126 - redimage1 = Image.new('1', (epd.height, epd.width), 255) # 298*126 - newimage = Image.open('../pic/100x100.bmp') - blackimage1.paste(newimage, (50,10)) - epd.display(epd.getbuffer(blackimage1), epd.getbuffer(redimage1)) - - print("Clear...") - epd.init() - epd.Clear() - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Jetson Nano/python2/examples/epd_2in9_test.py b/Jetson Nano/python2/examples/epd_2in9_test.py deleted file mode 100644 index 59c7ca1..0000000 --- a/Jetson Nano/python2/examples/epd_2in9_test.py +++ /dev/null @@ -1,102 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd2in9 -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd2in9 Demo") - - epd = epd2in9.EPD() - print("init and Clear") - epd.init(epd.lut_full_update) - epd.Clear(0xFF) - - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - Himage = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - draw = ImageDraw.Draw(Himage) - draw.text((10, 0), 'hello world', font = font24, fill = 0) - draw.text((10, 20), '2.9inch e-Paper', font = font24, fill = 0) - draw.text((150, 0), u'寰洩鐢靛瓙', font = font24, fill = 0) - draw.line((20, 50, 70, 100), fill = 0) - draw.line((70, 50, 20, 100), fill = 0) - draw.rectangle((20, 50, 70, 100), outline = 0) - draw.line((165, 50, 165, 100), fill = 0) - draw.line((140, 75, 190, 75), fill = 0) - draw.arc((140, 50, 190, 100), 0, 360, fill = 0) - draw.rectangle((80, 50, 130, 100), fill = 0) - draw.chord((200, 50, 250, 100), 0, 360, fill = 0) - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") - Limage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - draw = ImageDraw.Draw(Limage) - draw.text((2, 0), 'hello world', font = font18, fill = 0) - draw.text((2, 20), '2.9inch epd', font = font18, fill = 0) - draw.text((20, 50), u'寰洩鐢靛瓙', font = font18, fill = 0) - draw.line((10, 90, 60, 140), fill = 0) - draw.line((60, 90, 10, 140), fill = 0) - draw.rectangle((10, 90, 60, 140), outline = 0) - draw.line((95, 90, 95, 140), fill = 0) - draw.line((70, 115, 120, 115), fill = 0) - draw.arc((70, 90, 120, 140), 0, 360, fill = 0) - draw.rectangle((10, 150, 60, 200), fill = 0) - draw.chord((70, 150, 120, 200), 0, 360, fill = 0) - epd.display(epd.getbuffer(Limage)) - time.sleep(2) - - print("3.read bmp file") - Himage = Image.open('../pic/2in9.bmp') - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - print("4.read bmp file on window") - Himage2 = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') - Himage2.paste(bmp, (50,10)) - epd.display(epd.getbuffer(Himage2)) - time.sleep(2) - - # partial update - print("5.show time") - epd.init(epd.lut_partial_update) - epd.Clear(0xFF) - time_image = Image.new('1', (epd.height, epd.width), 255) - time_draw = ImageDraw.Draw(time_image) - num = 0 - while (True): - time_draw.rectangle((10, 10, 120, 50), fill = 255) - time_draw.text((10, 10), time.strftime('%H:%M:%S'), font = font24, fill = 0) - newimage = time_image.crop([10, 10, 120, 50]) - time_image.paste(newimage, (10,10)) - epd.display(epd.getbuffer(time_image)) - - num = num + 1 - if(num == 10): - break - - print("Clear...") - epd.init(epd.lut_full_update) - epd.Clear(0xFF) - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Jetson Nano/python2/examples/epd_2in9bc_test.py b/Jetson Nano/python2/examples/epd_2in9bc_test.py deleted file mode 100644 index b16809d..0000000 --- a/Jetson Nano/python2/examples/epd_2in9bc_test.py +++ /dev/null @@ -1,93 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd2in9bc -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd2in9bc Demo") - - epd = epd2in9bc.EPD() - print("init and Clear") - epd.init() - epd.Clear() - time.sleep(1) - - # Drawing on the image - print("Drawing") - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - HBlackimage = Image.new('1', (epd.height, epd.width), 255) # 298*126 - HRYimage = Image.new('1', (epd.height, epd.width), 255) # 298*126 ryimage: red or yellow image - drawblack = ImageDraw.Draw(HBlackimage) - drawry = ImageDraw.Draw(HRYimage) - drawblack.text((10, 0), 'hello world', font = font24, fill = 0) - drawblack.text((10, 20), '2.9inch e-Paper bc', font = font24, fill = 0) - drawblack.text((150, 0), u'寰洩鐢靛瓙', font = font24, fill = 0) - drawblack.line((20, 50, 70, 100), fill = 0) - drawblack.line((70, 50, 20, 100), fill = 0) - drawblack.rectangle((20, 50, 70, 100), outline = 0) - drawry.line((165, 50, 165, 100), fill = 0) - drawry.line((140, 75, 190, 75), fill = 0) - drawry.arc((140, 50, 190, 100), 0, 360, fill = 0) - drawry.rectangle((80, 50, 130, 100), fill = 0) - drawry.chord((200, 50, 250, 100), 0, 360, fill = 0) - epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRYimage)) - time.sleep(2) - - # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") - LBlackimage = Image.new('1', (epd.width, epd.height), 255) # 126*298 - LRYimage = Image.new('1', (epd.width, epd.height), 255) # 126*298 - drawblack = ImageDraw.Draw(LBlackimage) - drawry = ImageDraw.Draw(LRYimage) - - drawblack.text((2, 0), 'hello world', font = font18, fill = 0) - drawblack.text((2, 20), '2.9inch epd bc', font = font18, fill = 0) - drawblack.text((20, 50), u'寰洩鐢靛瓙', font = font18, fill = 0) - drawblack.line((10, 90, 60, 140), fill = 0) - drawblack.line((60, 90, 10, 140), fill = 0) - drawblack.rectangle((10, 90, 60, 140), outline = 0) - drawry.line((95, 90, 95, 140), fill = 0) - drawry.line((70, 115, 120, 115), fill = 0) - drawry.arc((70, 90, 120, 140), 0, 360, fill = 0) - drawry.rectangle((10, 150, 60, 200), fill = 0) - drawry.chord((70, 150, 120, 200), 0, 360, fill = 0) - epd.display(epd.getbuffer(LBlackimage), epd.getbuffer(LRYimage)) - time.sleep(2) - - print("3.read bmp file") - HBlackimage = Image.open('../pic/2in9bc-b.bmp') - HRYimage = Image.open('../pic/2in9bc-ry.bmp') - epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRYimage)) - time.sleep(2) - - print("4.read bmp file on window") - blackimage1 = Image.new('1', (epd.height, epd.width), 255) # 298*126 - redimage1 = Image.new('1', (epd.height, epd.width), 255) # 298*126 - newimage = Image.open('../pic/100x100.bmp') - blackimage1.paste(newimage, (50,10)) - epd.display(epd.getbuffer(blackimage1), epd.getbuffer(redimage1)) - - print("Clear...") - epd.init() - epd.Clear() - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Jetson Nano/python2/examples/epd_2in9d_test.py b/Jetson Nano/python2/examples/epd_2in9d_test.py deleted file mode 100644 index 34f5f71..0000000 --- a/Jetson Nano/python2/examples/epd_2in9d_test.py +++ /dev/null @@ -1,101 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd2in9d -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd2in9d Demo") - - epd = epd2in9d.EPD() - print("init and Clear") - epd.init() - epd.Clear(0xFF) - - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - Himage = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - draw = ImageDraw.Draw(Himage) - draw.text((10, 0), 'hello world', font = font24, fill = 0) - draw.text((10, 20), '2.9inch e-Paper d', font = font24, fill = 0) - draw.text((150, 0), u'寰洩鐢靛瓙', font = font24, fill = 0) - draw.line((20, 50, 70, 100), fill = 0) - draw.line((70, 50, 20, 100), fill = 0) - draw.rectangle((20, 50, 70, 100), outline = 0) - draw.line((165, 50, 165, 100), fill = 0) - draw.line((140, 75, 190, 75), fill = 0) - draw.arc((140, 50, 190, 100), 0, 360, fill = 0) - draw.rectangle((80, 50, 130, 100), fill = 0) - draw.chord((200, 50, 250, 100), 0, 360, fill = 0) - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") - Limage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - draw = ImageDraw.Draw(Limage) - draw.text((2, 0), 'hello world', font = font18, fill = 0) - draw.text((2, 20), '2.9inch epd d', font = font18, fill = 0) - draw.text((20, 50), u'寰洩鐢靛瓙', font = font18, fill = 0) - draw.line((10, 90, 60, 140), fill = 0) - draw.line((60, 90, 10, 140), fill = 0) - draw.rectangle((10, 90, 60, 140), outline = 0) - draw.line((95, 90, 95, 140), fill = 0) - draw.line((70, 115, 120, 115), fill = 0) - draw.arc((70, 90, 120, 140), 0, 360, fill = 0) - draw.rectangle((10, 150, 60, 200), fill = 0) - draw.chord((70, 150, 120, 200), 0, 360, fill = 0) - epd.display(epd.getbuffer(Limage)) - time.sleep(2) - - print("3.read bmp file") - Himage = Image.open('../pic/2in9d.bmp') - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - print("4.read bmp file on window") - Himage2 = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') - Himage2.paste(bmp, (50,10)) - epd.display(epd.getbuffer(Himage2)) - time.sleep(2) - - # # partial update - print("5.show time...") - epd.init() - epd.Clear(0xFF) - - time_image = Image.new('1', (epd.width, epd.height), 255) - time_draw = ImageDraw.Draw(time_image) - num = 0 - while (True): - time_draw.rectangle((10, 10, 120, 50), fill = 255) - time_draw.text((10, 10), time.strftime('%H:%M:%S'), font = font24, fill = 0) - newimage = time_image.crop([10, 10, 120, 50]) - time_image.paste(newimage, (10,10)) - epd.display(epd.getbuffer(time_image)) - num = num + 1 - if(num == 10): - break - - print("Clear...") - epd.Clear(0xFF) - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Jetson Nano/python2/examples/epd_4in2_test.py b/Jetson Nano/python2/examples/epd_4in2_test.py deleted file mode 100644 index 6343f58..0000000 --- a/Jetson Nano/python2/examples/epd_4in2_test.py +++ /dev/null @@ -1,84 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd4in2 -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd4in2 Demo") - - epd = epd4in2.EPD() - print("init and Clear") - epd.init() - epd.Clear() - - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - Himage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - draw = ImageDraw.Draw(Himage) - draw.text((10, 0), 'hello world', font = font24, fill = 0) - draw.text((10, 20), '4.2inch e-Paper', font = font24, fill = 0) - draw.text((150, 0), u'寰洩鐢靛瓙', font = font24, fill = 0) - draw.line((20, 50, 70, 100), fill = 0) - draw.line((70, 50, 20, 100), fill = 0) - draw.rectangle((20, 50, 70, 100), outline = 0) - draw.line((165, 50, 165, 100), fill = 0) - draw.line((140, 75, 190, 75), fill = 0) - draw.arc((140, 50, 190, 100), 0, 360, fill = 0) - draw.rectangle((80, 50, 130, 100), fill = 0) - draw.chord((200, 50, 250, 100), 0, 360, fill = 0) - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") - Limage = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - draw = ImageDraw.Draw(Limage) - draw.text((2, 0), 'hello world', font = font18, fill = 0) - draw.text((2, 20), '4.2inch epd', font = font18, fill = 0) - draw.text((20, 50), u'寰洩鐢靛瓙', font = font18, fill = 0) - draw.line((10, 90, 60, 140), fill = 0) - draw.line((60, 90, 10, 140), fill = 0) - draw.rectangle((10, 90, 60, 140), outline = 0) - draw.line((95, 90, 95, 140), fill = 0) - draw.line((70, 115, 120, 115), fill = 0) - draw.arc((70, 90, 120, 140), 0, 360, fill = 0) - draw.rectangle((10, 150, 60, 200), fill = 0) - draw.chord((70, 150, 120, 200), 0, 360, fill = 0) - epd.display(epd.getbuffer(Limage)) - time.sleep(2) - - print("3.read bmp file") - Himage = Image.open('../pic/4in2.bmp') - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - print("4.read bmp file on window") - Himage2 = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') - Himage2.paste(bmp, (50,10)) - epd.display(epd.getbuffer(Himage2)) - time.sleep(2) - - print("Clear...") - epd.init() - epd.Clear() - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Jetson Nano/python2/examples/epd_4in2bc_test.py b/Jetson Nano/python2/examples/epd_4in2bc_test.py deleted file mode 100644 index ad1abda..0000000 --- a/Jetson Nano/python2/examples/epd_4in2bc_test.py +++ /dev/null @@ -1,95 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd4in2bc -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd4in2bc Demo") - - epd = epd4in2bc.EPD() - print("init and Clear") - epd.init() - epd.Clear() - time.sleep(1) - - # Drawing on the image - print("Drawing") - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - HBlackimage = Image.new('1', (epd.width, epd.height), 255) # 298*126 - HRYimage = Image.new('1', (epd.width, epd.height), 255) # 298*126 ryimage: red or yellow image - drawblack = ImageDraw.Draw(HBlackimage) - drawry = ImageDraw.Draw(HRYimage) - drawblack.text((10, 0), 'hello world', font = font24, fill = 0) - drawblack.text((10, 20), '4.2inch e-Paper bc', font = font24, fill = 0) - drawblack.text((150, 0), u'寰洩鐢靛瓙', font = font24, fill = 0) - drawblack.line((20, 50, 70, 100), fill = 0) - drawblack.line((70, 50, 20, 100), fill = 0) - drawblack.rectangle((20, 50, 70, 100), outline = 0) - drawry.line((165, 50, 165, 100), fill = 0) - drawry.line((140, 75, 190, 75), fill = 0) - drawry.arc((140, 50, 190, 100), 0, 360, fill = 0) - drawry.rectangle((80, 50, 130, 100), fill = 0) - drawry.chord((200, 50, 250, 100), 0, 360, fill = 0) - epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRYimage)) - time.sleep(2) - - # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") - LBlackimage = Image.new('1', (epd.height, epd.width), 255) # 126*298 - LRYimage = Image.new('1', (epd.height, epd.width), 255) # 126*298 - drawblack = ImageDraw.Draw(LBlackimage) - drawry = ImageDraw.Draw(LRYimage) - - drawblack.text((2, 0), 'hello world', font = font18, fill = 0) - drawblack.text((2, 20), '4.2inch epd bc', font = font18, fill = 0) - drawblack.text((20, 50), u'寰洩鐢靛瓙', font = font18, fill = 0) - drawblack.line((10, 90, 60, 140), fill = 0) - drawblack.line((60, 90, 10, 140), fill = 0) - drawblack.rectangle((10, 90, 60, 140), outline = 0) - drawry.line((95, 90, 95, 140), fill = 0) - drawry.line((70, 115, 120, 115), fill = 0) - drawry.arc((70, 90, 120, 140), 0, 360, fill = 0) - drawry.rectangle((10, 150, 60, 200), fill = 0) - drawry.chord((70, 150, 120, 200), 0, 360, fill = 0) - epd.display(epd.getbuffer(LBlackimage), epd.getbuffer(LRYimage)) - time.sleep(2) - - print("3.read bmp file") - HBlackimage = Image.open('../pic/4in2b-b.bmp') - HRYimage = Image.open('../pic/4in2b-r.bmp') - # HBlackimage = Image.open('../pic/4in2c-b.bmp') - # HRYimage = Image.open('../pic/4in2c-y.bmp') - epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRYimage)) - time.sleep(2) - - print("4.read bmp file on window") - blackimage1 = Image.new('1', (epd.width, epd.height), 255) # 298*126 - redimage1 = Image.new('1', (epd.width, epd.height), 255) # 298*126 - newimage = Image.open('../pic/100x100.bmp') - blackimage1.paste(newimage, (50,10)) - epd.display(epd.getbuffer(blackimage1), epd.getbuffer(redimage1)) - - print("Clear...") - epd.init() - epd.Clear() - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Jetson Nano/python2/examples/epd_7in5_test.py b/Jetson Nano/python2/examples/epd_7in5_test.py deleted file mode 100644 index eaf11ec..0000000 --- a/Jetson Nano/python2/examples/epd_7in5_test.py +++ /dev/null @@ -1,84 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd7in5 -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd7in5 Demo") - - epd = epd7in5.EPD() - print("init and Clear") - epd.init() - epd.Clear() - - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - Himage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - draw = ImageDraw.Draw(Himage) - draw.text((10, 0), 'hello world', font = font24, fill = 0) - draw.text((10, 20), '7.5inch e-Paper', font = font24, fill = 0) - draw.text((150, 0), u'寰洩鐢靛瓙', font = font24, fill = 0) - draw.line((20, 50, 70, 100), fill = 0) - draw.line((70, 50, 20, 100), fill = 0) - draw.rectangle((20, 50, 70, 100), outline = 0) - draw.line((165, 50, 165, 100), fill = 0) - draw.line((140, 75, 190, 75), fill = 0) - draw.arc((140, 50, 190, 100), 0, 360, fill = 0) - draw.rectangle((80, 50, 130, 100), fill = 0) - draw.chord((200, 50, 250, 100), 0, 360, fill = 0) - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") - Limage = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - draw = ImageDraw.Draw(Limage) - draw.text((2, 0), 'hello world', font = font18, fill = 0) - draw.text((2, 20), '7.5inch epd', font = font18, fill = 0) - draw.text((20, 50), u'寰洩鐢靛瓙', font = font18, fill = 0) - draw.line((10, 90, 60, 140), fill = 0) - draw.line((60, 90, 10, 140), fill = 0) - draw.rectangle((10, 90, 60, 140), outline = 0) - draw.line((95, 90, 95, 140), fill = 0) - draw.line((70, 115, 120, 115), fill = 0) - draw.arc((70, 90, 120, 140), 0, 360, fill = 0) - draw.rectangle((10, 150, 60, 200), fill = 0) - draw.chord((70, 150, 120, 200), 0, 360, fill = 0) - epd.display(epd.getbuffer(Limage)) - time.sleep(2) - - print("3.read bmp file") - Himage = Image.open('../pic/7in5.bmp') - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - print("4.read bmp file on window") - Himage2 = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') - Himage2.paste(bmp, (50,10)) - epd.display(epd.getbuffer(Himage2)) - time.sleep(2) - - print("Clear...") - epd.init() - epd.Clear() - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Jetson Nano/python2/lib/epd1in54.py b/Jetson Nano/python2/lib/epd1in54.py deleted file mode 100644 index ffd2815..0000000 --- a/Jetson Nano/python2/lib/epd1in54.py +++ /dev/null @@ -1,254 +0,0 @@ -# /***************************************************************************** -# * | File : epd1in54.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V3.1 -# * | Date : 2019-06-18 -# # | Info : python2 demo -# ----------------------------------------------------------------------------- -# V3.1(2019-06-18): -# 2.remove commands define: -# #define PANEL_SETTING 0x00 -# #define POWER_SETTING 0x01 -# #define POWER_OFF 0x02 -# #define POWER_OFF_SEQUENCE_SETTING 0x03 -# #define POWER_ON 0x04 -# #define POWER_ON_MEASURE 0x05 -# #define BOOSTER_SOFT_START 0x06 -# #define DEEP_SLEEP 0x07 -# #define DATA_START_TRANSMISSION_1 0x10 -# #define DATA_STOP 0x11 -# #define DISPLAY_REFRESH 0x12 -# #define DATA_START_TRANSMISSION_2 0x13 -# #define PLL_CONTROL 0x30 -# #define TEMPERATURE_SENSOR_COMMAND 0x40 -# #define TEMPERATURE_SENSOR_CALIBRATION 0x41 -# #define TEMPERATURE_SENSOR_WRITE 0x42 -# #define TEMPERATURE_SENSOR_READ 0x43 -# #define VCOM_AND_DATA_INTERVAL_SETTING 0x50 -# #define LOW_POWER_DETECTION 0x51 -# #define TCON_SETTING 0x60 -# #define TCON_RESOLUTION 0x61 -# #define SOURCE_AND_GATE_START_SETTING 0x62 -# #define GET_STATUS 0x71 -# #define AUTO_MEASURE_VCOM 0x80 -# #define VCOM_VALUE 0x81 -# #define VCM_DC_SETTING_REGISTER 0x82 -# #define PROGRAM_MODE 0xA0 -# #define ACTIVE_PROGRAM 0xA1 -# #define READ_OTP_DATA 0xA2 -# ----------------------------------------------------------------------------- -# V3.0(2018-11-01): -# # 1.Remove: -# digital_write(self, pin, value) -# digital_read(self, pin) -# delay_ms(self, delaytime) -# set_lut(self, lut) -# self.lut = self.lut_full_update -# * 2.Change: -# display_frame -> TurnOnDisplay -# set_memory_area -> SetWindow -# set_memory_pointer -> SetCursor -# * 3.How to use -# epd = epd1in54.EPD() -# epd.init(epd.lut_full_update) -# image = Image.new('1', (epd1in54.EPD_WIDTH, epd1in54.EPD_HEIGHT), 255) -# ... -# drawing ...... -# ... -# epd.display(getbuffer(image)) -# ******************************************************************************/ -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - -import epdconfig - -# Display resolution -EPD_WIDTH = 200 -EPD_HEIGHT = 200 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - lut_full_update = [ - 0x02, 0x02, 0x01, 0x11, 0x12, 0x12, 0x22, 0x22, - 0x66, 0x69, 0x69, 0x59, 0x58, 0x99, 0x99, 0x88, - 0x00, 0x00, 0x00, 0x00, 0xF8, 0xB4, 0x13, 0x51, - 0x35, 0x51, 0x51, 0x19, 0x01, 0x00 - ] - - lut_partial_update = [ - 0x10, 0x18, 0x18, 0x08, 0x18, 0x18, 0x08, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x13, 0x14, 0x44, 0x12, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - ] - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) # module reset - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 1): # 0: idle, 1: busy - epdconfig.delay_ms(100) - print("e-Paper busy release") - - def TurnOnDisplay(self): - self.send_command(0x22) # DISPLAY_UPDATE_CONTROL_2 - self.send_data(0xC4) - self.send_command(0x20) # MASTER_ACTIVATION - self.send_command(0xFF) # TERMINATE_FRAME_READ_WRITE - - self.ReadBusy() - - def SetWindow(self, x_start, y_start, x_end, y_end): - self.send_command(0x44) # SET_RAM_X_ADDRESS_START_END_POSITION - # x point must be the multiple of 8 or the last 3 bits will be ignored - self.send_data((x_start >> 3) & 0xFF) - self.send_data((x_end >> 3) & 0xFF) - self.send_command(0x45) # SET_RAM_Y_ADDRESS_START_END_POSITION - self.send_data(y_start & 0xFF) - self.send_data((y_start >> 8) & 0xFF) - self.send_data(y_end & 0xFF) - self.send_data((y_end >> 8) & 0xFF) - - def SetCursor(self, x, y): - self.send_command(0x4E) # SET_RAM_X_ADDRESS_COUNTER - # x point must be the multiple of 8 or the last 3 bits will be ignored - self.send_data((x >> 3) & 0xFF) - - self.send_command(0x4F) # SET_RAM_Y_ADDRESS_COUNTER - self.send_data(y & 0xFF) - self.send_data((y >> 8) & 0xFF) - # self.ReadBusy() - - def init(self, lut): - if (epdconfig.module_init() != 0): - return -1 - # EPD hardware init start - self.reset() - - self.send_command(0x01) # DRIVER_OUTPUT_CONTROL - self.send_data((EPD_HEIGHT - 1) & 0xFF) - self.send_data(((EPD_HEIGHT - 1) >> 8) & 0xFF) - self.send_data(0x00) # GD = 0 SM = 0 TB = 0 - - self.send_command(0x0C) # BOOSTER_SOFT_START_CONTROL - self.send_data(0xD7) - self.send_data(0xD6) - self.send_data(0x9D) - - self.send_command(0x2C) # WRITE_VCOM_REGISTER - self.send_data(0xA8) # VCOM 7C - - self.send_command(0x3A) # SET_DUMMY_LINE_PERIOD - self.send_data(0x1A) # 4 dummy lines per gate - - self.send_command(0x3B) # SET_GATE_TIME - self.send_data(0x08) # 2us per line - - self.send_command(0x11) # DATA_ENTRY_MODE_SETTING - self.send_data(0x03) # X increment Y increment - - # set the look-up table register - self.send_command(0x32) - for i in range(0, len(lut)): - self.send_data(lut[i]) - # EPD hardware init end - return 0 - - def getbuffer(self, image): - buf = [0xFF] * ((self.width/8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - if(imwidth == self.width and imheight == self.height): - print("Horizontal") - 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] == 0: - buf[(x + y * self.width) / 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Vertical") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) / 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, image): - if (image == None): - return - - self.SetWindow(0, 0, self.width, self.height) - for j in range(0, self.height): - self.SetCursor(0, j) - self.send_command(0x24) - for i in range(0, self.width / 8): - self.send_data(image[i + j * (self.width / 8)]) - self.TurnOnDisplay() - - def Clear(self, color): - # self.SetWindow(0, 0, self.width - 1, self.height - 1) - # send the color data - self.SetWindow(0, 0, self.width, self.height) - for j in range(0, self.height): - self.SetCursor(0, j) - self.send_command(0x24) - for i in range(0, self.width / 8): - self.send_data(color) - self.TurnOnDisplay() - - def sleep(self): - self.send_command(0x10) # DEEP_SLEEP_MODE - self.send_data(0x01) - - epdconfig.module_exit() - -### END OF FILE ### - diff --git a/Jetson Nano/python2/lib/epd1in54.pyc b/Jetson Nano/python2/lib/epd1in54.pyc deleted file mode 100644 index 36b73c0..0000000 Binary files a/Jetson Nano/python2/lib/epd1in54.pyc and /dev/null differ diff --git a/Jetson Nano/python2/lib/epd1in54_V2.pyc b/Jetson Nano/python2/lib/epd1in54_V2.pyc deleted file mode 100644 index 2daa315..0000000 Binary files a/Jetson Nano/python2/lib/epd1in54_V2.pyc and /dev/null differ diff --git a/Jetson Nano/python2/lib/epd1in54b.py b/Jetson Nano/python2/lib/epd1in54b.py deleted file mode 100644 index a7ac01d..0000000 --- a/Jetson Nano/python2/lib/epd1in54b.py +++ /dev/null @@ -1,218 +0,0 @@ -# /***************************************************************************** -# * | File : epd1in54b.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-18 -# * | Info : python2 demo -# ****************************************************************************** -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - -import epdconfig - -# Display resolution -EPD_WIDTH = 200 -EPD_HEIGHT = 200 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - lut_vcom0 = [0x0E, 0x14, 0x01, 0x0A, 0x06, 0x04, 0x0A, 0x0A, 0x0F, 0x03, 0x03, 0x0C, 0x06, 0x0A, 0x00] - lut_w = [0x0E, 0x14, 0x01, 0x0A, 0x46, 0x04, 0x8A, 0x4A, 0x0F, 0x83, 0x43, 0x0C, 0x86, 0x0A, 0x04] - lut_b = [0x0E, 0x14, 0x01, 0x8A, 0x06, 0x04, 0x8A, 0x4A, 0x0F, 0x83, 0x43, 0x0C, 0x06, 0x4A, 0x04] - lut_g1 = [0x8E, 0x94, 0x01, 0x8A, 0x06, 0x04, 0x8A, 0x4A, 0x0F, 0x83, 0x43, 0x0C, 0x06, 0x0A, 0x04] - lut_g2 = [0x8E, 0x94, 0x01, 0x8A, 0x06, 0x04, 0x8A, 0x4A, 0x0F, 0x83, 0x43, 0x0C, 0x06, 0x0A, 0x04] - lut_vcom1 = [0x03, 0x1D, 0x01, 0x01, 0x08, 0x23, 0x37, 0x37, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00] - lut_red0 = [0x83, 0x5D, 0x01, 0x81, 0x48, 0x23, 0x77, 0x77, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00] - lut_red1 = [0x03, 0x1D, 0x01, 0x01, 0x08, 0x23, 0x37, 0x37, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00] - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) # module reset - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): - epdconfig.delay_ms(100) - print("e-Paper busy release") - - def set_lut_bw(self): - self.send_command(0x20) # vcom - for count in range(0, 15): - self.send_data(self.lut_vcom0[count]) - self.send_command(0x21) # ww -- - for count in range(0, 15): - self.send_data(self.lut_w[count]) - self.send_command(0x22) # bw r - for count in range(0, 15): - self.send_data(self.lut_b[count]) - self.send_command(0x23) # wb w - for count in range(0, 15): - self.send_data(self.lut_g1[count]) - self.send_command(0x24) # bb b - for count in range(0, 15): - self.send_data(self.lut_g2[count]) - - def set_lut_red(self): - self.send_command(0x25) - for count in range(0, 15): - self.send_data(self.lut_vcom1[count]) - self.send_command(0x26) - for count in range(0, 15): - self.send_data(self.lut_red0[count]) - self.send_command(0x27) - for count in range(0, 15): - self.send_data(self.lut_red1[count]) - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - # EPD hardware init start - self.reset() - - self.send_command(0x01) # POWER_SETTING - self.send_data(0x07) - self.send_data(0x00) - self.send_data(0x08) - self.send_data(0x00) - self.send_command(0x06) # BOOSTER_SOFT_START - self.send_data(0x07) - self.send_data(0x07) - self.send_data(0x07) - self.send_command(0x04) # POWER_ON - - self.ReadBusy() - - self.send_command(0X00) # PANEL_SETTING - self.send_data(0xCF) - self.send_command(0X50) # VCOM_AND_DATA_INTERVAL_SETTING - self.send_data(0x17) - self.send_command(0x30) # PLL_CONTROL - self.send_data(0x39) - self.send_command(0x61) # TCON_RESOLUTION set x and y - self.send_data(0xC8) - self.send_data(0x00) - self.send_data(0xC8) - self.send_command(0x82) # VCM_DC_SETTING_REGISTER - self.send_data(0x0E) - - self.set_lut_bw() - self.set_lut_red() - return 0 - - def getbuffer(self, image): - buf = [0xFF] * (self.width * self.height / 8) - # Set buffer to value of Python Imaging Library image. - # Image must be in mode 1. - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - if imwidth != self.width or imheight != self.height: - raise ValueError('Image must be same dimensions as display \ - ({0}x{1}).' .format(self.width, self.height)) - - pixels = image_monocolor.load() - for y in range(self.height): - for x in range(self.width): - # Set the bits for the column of pixels at the current position. - if pixels[x, y] == 0: - buf[(x + y * self.width) / 8] &= ~(0x80 >> (x % 8)) - return buf - - def display(self, blackimage, redimage): - # send black data - if (blackimage != None): - self.send_command(0x10) # DATA_START_TRANSMISSION_1 - for i in range(0, self.width * self.height / 8): - temp = 0x00 - for bit in range(0, 4): - if (blackimage[i] & (0x80 >> bit) != 0): - temp |= 0xC0 >> (bit * 2) - self.send_data(temp) - temp = 0x00 - for bit in range(4, 8): - if (blackimage[i] & (0x80 >> bit) != 0): - temp |= 0xC0 >> ((bit - 4) * 2) - self.send_data(temp) - - # send red data - if (redimage != None): - self.send_command(0x13) # DATA_START_TRANSMISSION_2 - for i in range(0, self.width * self.height / 8): - self.send_data(redimage[i]) - - self.send_command(0x12) # DISPLAY_REFRESH - self.ReadBusy() - - def Clear(self): - self.send_command(0x10) # DATA_START_TRANSMISSION_1 - for i in range(0, self.width * self.height / 8): - self.send_data(0xFF) - self.send_data(0xFF) - - self.send_command(0x13) # DATA_START_TRANSMISSION_2 - for i in range(0, self.width * self.height / 8): - self.send_data(0xFF) - - self.send_command(0x12) # DISPLAY_REFRESH - self.ReadBusy() - - def sleep(self): - self.send_command(0x50) # VCOM_AND_DATA_INTERVAL_SETTING - self.send_data(0x17) - self.send_command(0x82) # to solve Vcom drop - self.send_data(0x00) - self.send_command(0x01) # power setting - self.send_data(0x02) # gate switch to external - self.send_data(0x00) - self.send_data(0x00) - self.send_data(0x00) - self.ReadBusy() - - self.send_command(0x02) # power off - - epdconfig.module_exit() - -### END OF FILE ### - diff --git a/Jetson Nano/python2/lib/epd1in54b.pyc b/Jetson Nano/python2/lib/epd1in54b.pyc deleted file mode 100644 index 846bbee..0000000 Binary files a/Jetson Nano/python2/lib/epd1in54b.pyc and /dev/null differ diff --git a/Jetson Nano/python2/lib/epd1in54c.py b/Jetson Nano/python2/lib/epd1in54c.py deleted file mode 100644 index 8231aca..0000000 --- a/Jetson Nano/python2/lib/epd1in54c.py +++ /dev/null @@ -1,152 +0,0 @@ -# /***************************************************************************** -# * | File : epd1in54c.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-18 -# * | Info : python2 demo -# ****************************************************************************** -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -import epdconfig - -# Display resolution -EPD_WIDTH = 152 -EPD_HEIGHT = 152 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(1) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(10) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - epdconfig.delay_ms(200) - print("e-Paper busy release") - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - # EPD hardware init start - self.reset() - - self.send_command(0x06) # boost soft start - self.send_data(0x17) - self.send_data(0x17) - self.send_data(0x17) - self.send_command(0x04) # power on - - self.ReadBusy() - - self.send_command(0x00) # panel setting - self.send_data(0x0f) # LUT from OTP,160x296 - self.send_data(0x0d) # VCOM to 0V fast - - self.send_command(0x61) # resolution setting - self.send_data(0x98) - self.send_data(0x00) - self.send_data(0x98) - - self.send_command(0x50) - self.send_data(0x77) - - def getbuffer(self, image): - buf = [0xFF] * ((self.width/8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - if(imwidth == self.width and imheight == self.height): - print("Horizontal") - 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] == 0: - buf[(x + y * self.width) / 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Vertical") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) / 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, blackimage, yellowimage): - self.send_command(0x10) - print("blackimage") - for i in range(0, self.width * self.height / 8): - self.send_data(blackimage[i]) - self.send_command(0x13) - print("yellowimage") - for i in range(0, self.width * self.height / 8): - self.send_data(yellowimage[i]) - - self.send_command(0x12) - self.ReadBusy() - - def Clear(self): - self.send_command(0x10) - for i in range(0, self.width * self.height / 8): - self.send_data(0xFF) - self.send_command(0x13) - for i in range(0, self.width * self.height / 8): - self.send_data(0xFF) - - self.send_command(0x12) - self.ReadBusy() - - # after this, call epd.init() to awaken the module - def sleep(self): - self.send_command(0X02) # power off - self.ReadBusy() - self.send_command(0X07) # deep sleep - self.send_data(0xA5) - - epdconfig.module_exit() -### END OF FILE ### - diff --git a/Jetson Nano/python2/lib/epd1in54c.pyc b/Jetson Nano/python2/lib/epd1in54c.pyc deleted file mode 100644 index 3bd7cbe..0000000 Binary files a/Jetson Nano/python2/lib/epd1in54c.pyc and /dev/null differ diff --git a/Jetson Nano/python2/lib/epd2in13.py b/Jetson Nano/python2/lib/epd2in13.py deleted file mode 100644 index 39b1914..0000000 --- a/Jetson Nano/python2/lib/epd2in13.py +++ /dev/null @@ -1,224 +0,0 @@ -# /***************************************************************************** -# * | File : epd2in13.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-19 -# * | Info : python2 demo -# ******************************************************************************/ -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - - -import epdconfig -import numpy as np - -# Display resolution -EPD_WIDTH = 122 -EPD_HEIGHT = 250 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - lut_full_update = [ - 0x22, 0x55, 0xAA, 0x55, 0xAA, 0x55, 0xAA, 0x11, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, - 0x01, 0x00, 0x00, 0x00, 0x00, 0x00 - ] - - lut_partial_update = [ - 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x0F, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - ] - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - while(epdconfig.digital_read(self.busy_pin) == 1): # 0: idle, 1: busy - epdconfig.delay_ms(100) - - def TurnOnDisplay(self): - self.send_command(0x22) # DISPLAY_UPDATE_CONTROL_2 - self.send_data(0xC4) - self.send_command(0x20) # MASTER_ACTIVATION - self.send_command(0xFF) # TERMINATE_FRAME_READ_WRITE - - print("e-Paper busy") - self.ReadBusy() - print("e-Paper busy release") - - def init(self, lut): - if (epdconfig.module_init() != 0): - return -1 - # EPD hardware init start - self.reset() - self.send_command(0x01) # DRIVER_OUTPUT_CONTROL - self.send_data((EPD_HEIGHT - 1) & 0xFF) - self.send_data(((EPD_HEIGHT - 1) >> 8) & 0xFF) - self.send_data(0x00) # GD = 0 SM = 0 TB = 0 - - self.send_command(0x0C) # BOOSTER_SOFT_START_CONTROL - self.send_data(0xD7) - self.send_data(0xD6) - self.send_data(0x9D) - - self.send_command(0x2C) # WRITE_VCOM_REGISTER - self.send_data(0xA8) # VCOM 7C - - self.send_command(0x3A) # SET_DUMMY_LINE_PERIOD - self.send_data(0x1A) # 4 dummy lines per gate - - self.send_command(0x3B) # SET_GATE_TIME - self.send_data(0x08) # 2us per line - - self.send_command(0X3C) # BORDER_WAVEFORM_CONTROL - self.send_data(0x03) - - self.send_command(0X11) # DATA_ENTRY_MODE_SETTING - self.send_data(0x03) # X increment; Y increment - - # WRITE_LUT_REGISTER - self.send_command(0x32) - for count in range(30): - self.send_data(lut[count]) - - return 0 - -## - # @brief: specify the memory area for data R/W - ## - def SetWindows(self, x_start, y_start, x_end, y_end): - self.send_command(0x44) # SET_RAM_X_ADDRESS_START_END_POSITION - self.send_data((x_start >> 3) & 0xFF) - self.send_data((x_end >> 3) & 0xFF) - self.send_command(0x45) # SET_RAM_Y_ADDRESS_START_END_POSITION - self.send_data(y_start & 0xFF) - self.send_data((y_start >> 8) & 0xFF) - self.send_data(y_end & 0xFF) - self.send_data((y_end >> 8) & 0xFF) - -## - # @brief: specify the start point for data R/W - ## - def SetCursor(self, x, y): - self.send_command(0x4E) # SET_RAM_X_ADDRESS_COUNTER - # x point must be the multiple of 8 or the last 3 bits will be ignored - self.send_data((x >> 3) & 0xFF) - self.send_command(0x4F) # SET_RAM_Y_ADDRESS_COUNTER - self.send_data(y & 0xFF) - self.send_data((y >> 8) & 0xFF) - self.ReadBusy() - - def getbuffer(self, image): - if self.width%8 == 0: - linewidth = self.width/8 - else: - linewidth = self.width/8 + 1 - - buf = [0xFF] * (linewidth * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - - if(imwidth == self.width and imheight == self.height): - print("Vertical") - for y in range(imheight): - for x in range(imwidth): - if pixels[x, y] == 0: - # x = imwidth - x - buf[x / 8 + y * linewidth] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Horizontal") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - # newy = imwidth - newy - 1 - buf[newx / 8 + newy*linewidth] &= ~(0x80 >> (y % 8)) - return buf - - - def display(self, image): - if self.width%8 == 0: - linewidth = self.width/8 - else: - linewidth = self.width/8 + 1 - - self.SetWindows(0, 0, self.width, self.height); - for j in range(0, self.height): - self.SetCursor(0, j); - self.send_command(0x24); - for i in range(0, linewidth): - self.send_data(image[i + j * linewidth]) - self.TurnOnDisplay() - - def Clear(self, color): - if self.width%8 == 0: - linewidth = self.width/8 - else: - linewidth = self.width/8 + 1 - - self.SetWindows(0, 0, self.width, self.height); - for j in range(0, self.height): - self.SetCursor(0, j); - self.send_command(0x24); - for i in range(0, linewidth): - self.send_data(color) - self.TurnOnDisplay() - - def sleep(self): - self.send_command(0x10) #enter deep sleep - self.send_data(0x01) - epdconfig.delay_ms(100) - - epdconfig.module_exit() - -### END OF FILE ### - diff --git a/Jetson Nano/python2/lib/epd2in13.pyc b/Jetson Nano/python2/lib/epd2in13.pyc deleted file mode 100644 index b350d67..0000000 Binary files a/Jetson Nano/python2/lib/epd2in13.pyc and /dev/null differ diff --git a/Jetson Nano/python2/lib/epd2in13_V2.pyc b/Jetson Nano/python2/lib/epd2in13_V2.pyc deleted file mode 100644 index c2480b5..0000000 Binary files a/Jetson Nano/python2/lib/epd2in13_V2.pyc and /dev/null differ diff --git a/Jetson Nano/python2/lib/epd2in13bc.py b/Jetson Nano/python2/lib/epd2in13bc.py deleted file mode 100644 index 04f3512..0000000 --- a/Jetson Nano/python2/lib/epd2in13bc.py +++ /dev/null @@ -1,158 +0,0 @@ -# /***************************************************************************** -# * | File : epd2in13bc.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-20 -# * | Info : python2 demo -# ******************************************************************************/ -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - -import epdconfig - -# Display resolution -EPD_WIDTH = 104 -EPD_HEIGHT = 212 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - epdconfig.delay_ms(100) - print("e-Paper busy release") - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - - self.reset() - - self.send_command(0x06) # BOOSTER_SOFT_START - self.send_data(0x17) - self.send_data(0x17) - self.send_data(0x17) - - self.send_command(0x04) # POWER_ON - self.ReadBusy() - - self.send_command(0x00) # PANEL_SETTING - self.send_data(0x8F) - - self.send_command(0x50) # VCOM_AND_DATA_INTERVAL_SETTING - self.send_data(0xF0) - - self.send_command(0x61) # RESOLUTION_SETTING - self.send_data(self.width & 0xff) - self.send_data(self.height >> 8) - self.send_data(self.height & 0xff) - return 0 - - def getbuffer(self, image): - # print "bufsiz = ",(self.width/8) * self.height - buf = [0xFF] * ((self.width/8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight - if(imwidth == self.width and imheight == self.height): - print("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] == 0: - buf[(x + y * self.width) / 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Horizontal") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) / 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, imageblack, imagered): - self.send_command(0x10) - for i in range(0, self.width * self.height / 8): - self.send_data(imageblack[i]) - self.send_command(0x92) - - self.send_command(0x13) - for i in range(0, self.width * self.height / 8): - self.send_data(imagered[i]) - self.send_command(0x92) - - self.send_command(0x12) # REFRESH - self.ReadBusy() - - def Clear(self): - self.send_command(0x10) - for i in range(0, self.width * self.height / 8): - self.send_data(0xFF) - self.send_command(0x92) - - self.send_command(0x13) - for i in range(0, self.width * self.height / 8): - self.send_data(0xFF) - self.send_command(0x92) - - self.send_command(0x12) # REFRESH - self.ReadBusy() - - def sleep(self): - self.send_command(0x02) # POWER_OFF - self.ReadBusy() - self.send_command(0x07) # DEEP_SLEEP - self.send_data(0xA5) # check code - - epdconfig.module_exit() -### END OF FILE ### - diff --git a/Jetson Nano/python2/lib/epd2in13bc.pyc b/Jetson Nano/python2/lib/epd2in13bc.pyc deleted file mode 100644 index 789e1a1..0000000 Binary files a/Jetson Nano/python2/lib/epd2in13bc.pyc and /dev/null differ diff --git a/Jetson Nano/python2/lib/epd2in13d.py b/Jetson Nano/python2/lib/epd2in13d.py deleted file mode 100644 index 30ebb77..0000000 --- a/Jetson Nano/python2/lib/epd2in13d.py +++ /dev/null @@ -1,357 +0,0 @@ -# /***************************************************************************** -# * | File : epd2in13d.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-20 -# * | Info : python2 demo -# ******************************************************************************/ -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - - -import epdconfig -from PIL import Image -import RPi.GPIO as GPIO - -# Display resolution -EPD_WIDTH = 104 -EPD_HEIGHT = 212 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - lut_vcomDC = [ - 0x00, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x60, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x00, 0x14, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, - ] - - lut_ww = [ - 0x40, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x40, 0x14, 0x00, 0x00, 0x00, 0x01, - 0xA0, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - - lut_bw = [ - 0x40, 0x17, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x0F, 0x0F, 0x00, 0x00, 0x03, - 0x40, 0x0A, 0x01, 0x00, 0x00, 0x01, - 0xA0, 0x0E, 0x0E, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - - lut_wb = [ - 0x80, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x80, 0x14, 0x00, 0x00, 0x00, 0x01, - 0x50, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - - lut_bb = [ - 0x80, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x80, 0x14, 0x00, 0x00, 0x00, 0x01, - 0x50, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - - lut_vcom1 = [ - 0x00, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, - ] - - lut_ww1 = [ - 0x00, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, - ] - - lut_bw1 = [ - 0x80, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, - ] - - lut_wb1 = [ - 0x40, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, - ] - - lut_bb1 = [ - 0x00, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, - ] - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - self.send_command(0x71) - epdconfig.delay_ms(100) - print("e-Paper busy release") - - def TurnOnDisplay(self): - self.send_command(0x12) - epdconfig.delay_ms(10) - self.ReadBusy() - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - # EPD hardware init start - self.reset() - - self.send_command(0x01) # POWER SETTING - self.send_data(0x03) - self.send_data(0x00) - self.send_data(0x2b) - self.send_data(0x2b) - self.send_data(0x03) - - self.send_command(0x06) # boost soft start - self.send_data(0x17) # A - self.send_data(0x17) # B - self.send_data(0x17) # C - - self.send_command(0x04) - self.ReadBusy() - - self.send_command(0x00) # panel setting - self.send_data(0xbf) # LUT from OTP,128x296 - self.send_data(0x0d) # VCOM to 0V fast - - self.send_command(0x30) # PLL setting - self.send_data(0x3a) # 3a 100HZ 29 150Hz 39 200HZ 31 171HZ - - self.send_command(0x61) # resolution setting - self.send_data(self.width) - self.send_data((self.height >> 8) & 0xff) - self.send_data(self.height& 0xff) - - self.send_command(0x82) # vcom_DC setting - self.send_data(0x28) - return 0 - - def SetFullReg(self): - self.send_command(0x82) - self.send_data(0x00) - self.send_command(0X50) - self.send_data(0x97) - - self.send_command(0x20) # vcom - for count in range(0, 44): - self.send_data(self.lut_vcomDC[count]) - self.send_command(0x21) # ww -- - for count in range(0, 42): - self.send_data(self.lut_ww[count]) - self.send_command(0x22) # bw r - for count in range(0, 42): - self.send_data(self.lut_bw[count]) - self.send_command(0x23) # wb w - for count in range(0, 42): - self.send_data(self.lut_wb[count]) - self.send_command(0x24) # bb b - for count in range(0, 42): - self.send_data(self.lut_bb[count]) - - def SetPartReg(self): - self.send_command(0x82) - self.send_data(0x03) - self.send_command(0X50) - self.send_data(0x47) - - self.send_command(0x20) # vcom - for count in range(0, 44): - self.send_data(self.lut_vcom1[count]) - self.send_command(0x21) # ww -- - for count in range(0, 42): - self.send_data(self.lut_ww1[count]) - self.send_command(0x22) # bw r - for count in range(0, 42): - self.send_data(self.lut_bw1[count]) - self.send_command(0x23) # wb w - for count in range(0, 42): - self.send_data(self.lut_wb1[count]) - self.send_command(0x24) # bb b - for count in range(0, 42): - self.send_data(self.lut_bb1[count]) - - def getbuffer(self, image): - # print "bufsiz = ",(self.width/8) * self.height - buf = [0xFF] * ((self.width/8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight - if(imwidth == self.width and imheight == self.height): - print "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] == 0: - buf[(x + y * self.width) / 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print "Horizontal" - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) / 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, image): - if (Image == None): - return - - self.send_command(0x10) - for i in range(0, self.width * self.height / 8): - self.send_data(0x00) - epdconfig.delay_ms(10) - - self.send_command(0x13) - for i in range(0, self.width * self.height / 8): - self.send_data(image[i]) - epdconfig.delay_ms(10) - - self.SetFullReg() - self.TurnOnDisplay() - - def DisplayPartial(self, image): - if (Image == None): - return - - self.SetPartReg() - self.send_command(0x91) - self.send_command(0x90) - self.send_data(0) - self.send_data(self.width - 1) - - self.send_data(0) - self.send_data(0) - self.send_data(self.height / 256) - self.send_data(self.height % 256 - 1) - self.send_data(0x28) - - self.send_command(0x10) - for i in range(0, self.width * self.height / 8): - self.send_data(image[i]) - epdconfig.delay_ms(10) - - self.send_command(0x13) - for i in range(0, self.width * self.height / 8): - self.send_data(~image[i]) - epdconfig.delay_ms(10) - - self.TurnOnDisplay() - - def Clear(self, color): - self.send_command(0x10) - for i in range(0, self.width * self.height / 8): - self.send_data(0x00) - epdconfig.delay_ms(10) - - self.send_command(0x13) - for i in range(0, self.width * self.height / 8): - self.send_data(0xFF) - epdconfig.delay_ms(10) - - self.SetFullReg() - self.TurnOnDisplay() - - def sleep(self): - self.send_command(0X50) - self.send_data(0xf7) - self.send_command(0X02) # power off - self.send_command(0X07) # deep sleep - self.send_data(0xA5) - - epdconfig.module_exit() - -### END OF FILE ### - diff --git a/Jetson Nano/python2/lib/epd2in13d.pyc b/Jetson Nano/python2/lib/epd2in13d.pyc deleted file mode 100644 index c585890..0000000 Binary files a/Jetson Nano/python2/lib/epd2in13d.pyc and /dev/null differ diff --git a/Jetson Nano/python2/lib/epd2in7.py b/Jetson Nano/python2/lib/epd2in7.py deleted file mode 100644 index 9d5fca6..0000000 --- a/Jetson Nano/python2/lib/epd2in7.py +++ /dev/null @@ -1,258 +0,0 @@ -# /***************************************************************************** -# * | File : epd2in7.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-19 -# * | Info : python2 demo -# ******************************************************************************/ -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - -import epdconfig - -# Display resolution -EPD_WIDTH = 176 -EPD_HEIGHT = 264 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - lut_vcom_dc = [0x00, 0x00, - 0x00, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x60, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x00, 0x14, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - ] - lut_ww = [ - 0x40, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x40, 0x14, 0x00, 0x00, 0x00, 0x01, - 0xA0, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - lut_bw = [ - 0x40, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x40, 0x14, 0x00, 0x00, 0x00, 0x01, - 0xA0, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - lut_bb = [ - 0x80, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x80, 0x14, 0x00, 0x00, 0x00, 0x01, - 0x50, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - lut_wb = [ - 0x80, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x80, 0x14, 0x00, 0x00, 0x00, 0x01, - 0x50, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - epdconfig.delay_ms(200) - print("e-Paper busy release") - - def set_lut(self): - self.send_command(0x20) # vcom - for count in range(0, 44): - self.send_data(self.lut_vcom_dc[count]) - self.send_command(0x21) # ww -- - for count in range(0, 42): - self.send_data(self.lut_ww[count]) - self.send_command(0x22) # bw r - for count in range(0, 42): - self.send_data(self.lut_bw[count]) - self.send_command(0x23) # wb w - for count in range(0, 42): - self.send_data(self.lut_bb[count]) - self.send_command(0x24) # bb b - for count in range(0, 42): - self.send_data(self.lut_wb[count]) - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - - # EPD hardware init start - self.reset() - - self.send_command(0x01) # POWER_SETTING - self.send_data(0x03) # VDS_EN, VDG_EN - self.send_data(0x00) # VCOM_HV, VGHL_LV[1], VGHL_LV[0] - self.send_data(0x2b) # VDH - self.send_data(0x2b) # VDL - self.send_data(0x09) # VDHR - - self.send_command(0x06) # BOOSTER_SOFT_START - self.send_data(0x07) - self.send_data(0x07) - self.send_data(0x17) - - # Power optimization - self.send_command(0xF8) - self.send_data(0x60) - self.send_data(0xA5) - - # Power optimization - self.send_command(0xF8) - self.send_data(0x89) - self.send_data(0xA5) - - # Power optimization - self.send_command(0xF8) - self.send_data(0x90) - self.send_data(0x00) - - # Power optimization - self.send_command(0xF8) - self.send_data(0x93) - self.send_data(0x2A) - - # Power optimization - self.send_command(0xF8) - self.send_data(0xA0) - self.send_data(0xA5) - - # Power optimization - self.send_command(0xF8) - self.send_data(0xA1) - self.send_data(0x00) - - # Power optimization - self.send_command(0xF8) - self.send_data(0x73) - self.send_data(0x41) - - self.send_command(0x16) # PARTIAL_DISPLAY_REFRESH - self.send_data(0x00) - self.send_command(0x04) # POWER_ON - self.ReadBusy() - - self.send_command(0x00) # PANEL_SETTING - self.send_data(0xAF) # KW-BF KWR-AF BWROTP 0f - - self.send_command(0x30) # PLL_CONTROL - self.send_data(0x3A) # 3A 100HZ 29 150Hz 39 200HZ 31 171HZ - - self.send_command(0x82) # VCM_DC_SETTING_REGISTER - self.send_data(0x12) - self.set_lut() - return 0 - - def getbuffer(self, image): - # print "bufsiz = ",(self.width/8) * self.height - buf = [0xFF] * ((self.width/8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight - if(imwidth == self.width and imheight == self.height): - print("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] == 0: - buf[(x + y * self.width) / 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Horizontal") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) / 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, image): - self.send_command(0x10) - for i in range(0, self.width * self.height / 8): - self.send_data(0xFF) - self.send_command(0x13) - for i in range(0, self.width * self.height / 8): - self.send_data(image[i]) - self.send_command(0x12) - self.ReadBusy() - - def Clear(self, color): - self.send_command(0x10) - for i in range(0, self.width * self.height / 8): - self.send_data(0xFF) - self.send_command(0x13) - for i in range(0, self.width * self.height / 8): - self.send_data(0xFF) - self.send_command(0x12) - self.ReadBusy() - - def sleep(self): - self.send_command(0X50) - self.send_data(0xf7) - self.send_command(0X02) - self.send_command(0X07) - self.send_data(0xA5) - - epdconfig.module_exit() -### END OF FILE ### - diff --git a/Jetson Nano/python2/lib/epd2in7.pyc b/Jetson Nano/python2/lib/epd2in7.pyc deleted file mode 100644 index 89c55ab..0000000 Binary files a/Jetson Nano/python2/lib/epd2in7.pyc and /dev/null differ diff --git a/Jetson Nano/python2/lib/epd2in7b.py b/Jetson Nano/python2/lib/epd2in7b.py deleted file mode 100644 index 358adb4..0000000 --- a/Jetson Nano/python2/lib/epd2in7b.py +++ /dev/null @@ -1,266 +0,0 @@ -# /***************************************************************************** -# * | File : epd2in7b.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-19 -# * | Info : python2 demo -# ******************************************************************************/ -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - - -import epdconfig - -# Display resolution -EPD_WIDTH = 176 -EPD_HEIGHT = 264 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - lut_vcom_dc = [ - 0x00, 0x00, - 0x00, 0x1A, 0x1A, 0x00, 0x00, 0x01, - 0x00, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0x00, 0x0E, 0x01, 0x0E, 0x01, 0x10, - 0x00, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0x00, 0x04, 0x10, 0x00, 0x00, 0x05, - 0x00, 0x03, 0x0E, 0x00, 0x00, 0x0A, - 0x00, 0x23, 0x00, 0x00, 0x00, 0x01 - ] - - lut_ww = [ - 0x90, 0x1A, 0x1A, 0x00, 0x00, 0x01, - 0x40, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0x84, 0x0E, 0x01, 0x0E, 0x01, 0x10, - 0x80, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0x00, 0x04, 0x10, 0x00, 0x00, 0x05, - 0x00, 0x03, 0x0E, 0x00, 0x00, 0x0A, - 0x00, 0x23, 0x00, 0x00, 0x00, 0x01 - ] - - # R22H r - lut_bw = [ - 0xA0, 0x1A, 0x1A, 0x00, 0x00, 0x01, - 0x00, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0x84, 0x0E, 0x01, 0x0E, 0x01, 0x10, - 0x90, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0xB0, 0x04, 0x10, 0x00, 0x00, 0x05, - 0xB0, 0x03, 0x0E, 0x00, 0x00, 0x0A, - 0xC0, 0x23, 0x00, 0x00, 0x00, 0x01 - ] - - # R23H w - lut_bb = [ - 0x90, 0x1A, 0x1A, 0x00, 0x00, 0x01, - 0x40, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0x84, 0x0E, 0x01, 0x0E, 0x01, 0x10, - 0x80, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0x00, 0x04, 0x10, 0x00, 0x00, 0x05, - 0x00, 0x03, 0x0E, 0x00, 0x00, 0x0A, - 0x00, 0x23, 0x00, 0x00, 0x00, 0x01 - ] - # R24H b - lut_wb = [ - 0x90, 0x1A, 0x1A, 0x00, 0x00, 0x01, - 0x20, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0x84, 0x0E, 0x01, 0x0E, 0x01, 0x10, - 0x10, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0x00, 0x04, 0x10, 0x00, 0x00, 0x05, - 0x00, 0x03, 0x0E, 0x00, 0x00, 0x0A, - 0x00, 0x23, 0x00, 0x00, 0x00, 0x01 - ] - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - epdconfig.delay_ms(100) - print("e-Paper busy release") - - def set_lut(self): - self.send_command(0x20) # vcom - for count in range(0, 44): - self.send_data(self.lut_vcom_dc[count]) - self.send_command(0x21) # ww -- - for count in range(0, 42): - self.send_data(self.lut_ww[count]) - self.send_command(0x22) # bw r - for count in range(0, 42): - self.send_data(self.lut_bw[count]) - self.send_command(0x23) # wb w - for count in range(0, 42): - self.send_data(self.lut_bb[count]) - self.send_command(0x24) # bb b - for count in range(0, 42): - self.send_data(self.lut_wb[count]) - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - - self.reset() - - self.send_command(0x04) # POWER_ON - self.ReadBusy() - - self.send_command(0x00) # PANEL_SETTING - self.send_data(0xaf) #KW-BF KWR-AF BWROTP 0f - - self.send_command(0x30) # PLL_CONTROL - self.send_data(0x3a) #3A 100HZ 29 150Hz 39 200HZ 31 171HZ - - self.send_command(0x01) # POWER_SETTING - self.send_data(0x03) # VDS_EN, VDG_EN - self.send_data(0x00) # VCOM_HV, VGHL_LV[1], VGHL_LV[0] - self.send_data(0x2b) # VDH - self.send_data(0x2b) # VDL - self.send_data(0x09) # VDHR - - self.send_command(0x06) # BOOSTER_SOFT_START - self.send_data(0x07) - self.send_data(0x07) - self.send_data(0x17) - - # Power optimization - self.send_command(0xF8) - self.send_data(0x60) - self.send_data(0xA5) - - # Power optimization - self.send_command(0xF8) - self.send_data(0x89) - self.send_data(0xA5) - - # Power optimization - self.send_command(0xF8) - self.send_data(0x90) - self.send_data(0x00) - - # Power optimization - self.send_command(0xF8) - self.send_data(0x93) - self.send_data(0x2A) - - # Power optimization - self.send_command(0xF8) - self.send_data(0x73) - self.send_data(0x41) - - self.send_command(0x82) # VCM_DC_SETTING_REGISTER - self.send_data(0x12) - self.send_command(0x50) # VCOM_AND_DATA_INTERVAL_SETTING - self.send_data(0x87) # define by OTP - - self.set_lut() - - self.send_command(0x16) # PARTIAL_DISPLAY_REFRESH - self.send_data(0x00) - - return 0 - - def getbuffer(self, image): - # print "bufsiz = ",(self.width/8) * self.height - buf = [0xFF] * ((self.width/8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight - if(imwidth == self.width and imheight == self.height): - print("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] == 0: - buf[(x + y * self.width) / 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Horizontal") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) / 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, imageblack, imagered): - self.send_command(0x10) - for i in range(0, self.width * self.height / 8): - self.send_data(~imageblack[i]) - self.send_command(0x11) - - self.send_command(0x13) - for i in range(0, self.width * self.height / 8): - self.send_data(~imagered[i]) - self.send_command(0x11) - - self.send_command(0x12) - self.ReadBusy() - - def Clear(self): - self.send_command(0x10) - for i in range(0, self.width * self.height / 8): - self.send_data(0x00) - self.send_command(0x11) - - self.send_command(0x13) - for i in range(0, self.width * self.height / 8): - self.send_data(0x00) - self.send_command(0x11) - - self.send_command(0x12) - self.ReadBusy() - - def sleep(self): - self.send_command(0X50) - self.send_data(0xf7) - self.send_command(0X02) - self.send_command(0X07) - self.send_data(0xA5) -### END OF FILE ### - diff --git a/Jetson Nano/python2/lib/epd2in7b.pyc b/Jetson Nano/python2/lib/epd2in7b.pyc deleted file mode 100644 index f88a113..0000000 Binary files a/Jetson Nano/python2/lib/epd2in7b.pyc and /dev/null differ diff --git a/Jetson Nano/python2/lib/epd2in9.py b/Jetson Nano/python2/lib/epd2in9.py deleted file mode 100644 index 9e2bd6d..0000000 --- a/Jetson Nano/python2/lib/epd2in9.py +++ /dev/null @@ -1,200 +0,0 @@ -# /***************************************************************************** -# * | File : epd2in9.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-19 -# * | Info : python2 demo -# ******************************************************************************/ -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - -import epdconfig - -# Display resolution -EPD_WIDTH = 128 -EPD_HEIGHT = 296 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - lut_full_update = [ - 0x50, 0xAA, 0x55, 0xAA, 0x11, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0xFF, 0xFF, 0x1F, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - ] - - lut_partial_update = [ - 0x10, 0x18, 0x18, 0x08, 0x18, 0x18, - 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x13, 0x14, 0x44, 0x12, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - ] - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - while(epdconfig.digital_read(self.busy_pin) == 1): # 0: idle, 1: busy - epdconfig.delay_ms(200) - - def TurnOnDisplay(self): - self.send_command(0x22) # DISPLAY_UPDATE_CONTROL_2 - self.send_data(0xC4) - self.send_command(0x20) # MASTER_ACTIVATION - self.send_command(0xFF) # TERMINATE_FRAME_READ_WRITE - - print("e-Paper busy") - self.ReadBusy() - print("e-Paper busy release") - - def SetWindow(self, x_start, y_start, x_end, y_end): - self.send_command(0x44) # SET_RAM_X_ADDRESS_START_END_POSITION - # x point must be the multiple of 8 or the last 3 bits will be ignored - self.send_data((x_start >> 3) & 0xFF) - self.send_data((x_end >> 3) & 0xFF) - self.send_command(0x45) # SET_RAM_Y_ADDRESS_START_END_POSITION - self.send_data(y_start & 0xFF) - self.send_data((y_start >> 8) & 0xFF) - self.send_data(y_end & 0xFF) - self.send_data((y_end >> 8) & 0xFF) - - def SetCursor(self, x, y): - self.send_command(0x4E) # SET_RAM_X_ADDRESS_COUNTER - # x point must be the multiple of 8 or the last 3 bits will be ignored - self.send_data((x >> 3) & 0xFF) - self.send_command(0x4F) # SET_RAM_Y_ADDRESS_COUNTER - self.send_data(y & 0xFF) - self.send_data((y >> 8) & 0xFF) - self.ReadBusy() - - def init(self, lut): - if (epdconfig.module_init() != 0): - return -1 - # EPD hardware init start - self.reset() - - self.send_command(0x01) # DRIVER_OUTPUT_CONTROL - self.send_data((EPD_HEIGHT - 1) & 0xFF) - self.send_data(((EPD_HEIGHT - 1) >> 8) & 0xFF) - self.send_data(0x00) # GD = 0 SM = 0 TB = 0 - - self.send_command(0x0C) # BOOSTER_SOFT_START_CONTROL - self.send_data(0xD7) - self.send_data(0xD6) - self.send_data(0x9D) - - self.send_command(0x2C) # WRITE_VCOM_REGISTER - self.send_data(0xA8) # VCOM 7C - - self.send_command(0x3A) # SET_DUMMY_LINE_PERIOD - self.send_data(0x1A) # 4 dummy lines per gate - - self.send_command(0x3B) # SET_GATE_TIME - self.send_data(0x08) # 2us per line - - self.send_command(0x11) # DATA_ENTRY_MODE_SETTING - self.send_data(0x03) # X increment Y increment - - self.send_command(0x32) # WRITE_LUT_REGISTER - for i in range(0, len(lut)): - self.send_data(lut[i]) - # EPD hardware init end - return 0 - - def getbuffer(self, image): - # print "bufsiz = ",(self.width/8) * self.height - buf = [0xFF] * ((self.width/8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight - if(imwidth == self.width and imheight == self.height): - print("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] == 0: - buf[(x + y * self.width) / 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Horizontal") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) / 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, image): - if (image == None): - return - self.SetWindow(0, 0, self.width - 1, self.height - 1) - for j in range(0, self.height): - self.SetCursor(0, j) - self.send_command(0x24) # WRITE_RAM - for i in range(0, self.width / 8): - self.send_data(image[i + j * (self.width / 8)]) - self.TurnOnDisplay() - - def Clear(self, color): - self.SetWindow(0, 0, self.width - 1, self.height - 1) - for j in range(0, self.height): - self.SetCursor(0, j) - self.send_command(0x24) # WRITE_RAM - for i in range(0, self.width / 8): - self.send_data(color) - self.TurnOnDisplay() - - def sleep(self): - self.send_command(0x10) # DEEP_SLEEP_MODE - self.send_data(0x01) - - epdconfig.module_exit() -### END OF FILE ### - diff --git a/Jetson Nano/python2/lib/epd2in9.pyc b/Jetson Nano/python2/lib/epd2in9.pyc deleted file mode 100644 index bbcf85c..0000000 Binary files a/Jetson Nano/python2/lib/epd2in9.pyc and /dev/null differ diff --git a/Jetson Nano/python2/lib/epd2in9bc.py b/Jetson Nano/python2/lib/epd2in9bc.py deleted file mode 100644 index baee127..0000000 --- a/Jetson Nano/python2/lib/epd2in9bc.py +++ /dev/null @@ -1,154 +0,0 @@ -# /***************************************************************************** -# * | File : epd2in9bc.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-19 -# * | Info : python2 demo -# ******************************************************************************/ -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - - -import epdconfig - -# Display resolution -EPD_WIDTH = 128 -EPD_HEIGHT = 296 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - epdconfig.delay_ms(200) - print("e-Paper busy release") - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - # EPD hardware init start - self.reset() - - self.send_command(0x06) # boost - self.send_data (0x17) - self.send_data (0x17) - self.send_data (0x17) - self.send_command(0x04) # POWER_ON - self.ReadBusy() - self.send_command(0X00) # PANEL_SETTING - self.send_data(0x8F) - self.send_command(0X50) # VCOM_AND_DATA_INTERVAL_SETTING - self.send_data(0x77) - self.send_command(0x61) # TCON_RESOLUTION - self.send_data (0x80) - self.send_data (0x01) - self.send_data (0x28) - # self.send_command(VCM_DC_SETTING_REGISTER) - # self.send_data (0x0A) - - return 0 - - def getbuffer(self, image): - # print "bufsiz = ",(self.width/8) * self.height - buf = [0xFF] * ((self.width/8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight - if(imwidth == self.width and imheight == self.height): - print("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] == 0: - buf[(x + y * self.width) / 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Horizontal") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) / 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, blackimage, ryimage): # ryimage: red or yellow image - if (blackimage != None): - self.send_command(0X10) - for i in range(0, self.width * self.height / 8): - self.send_data(blackimage[i]) - if (ryimage != None): - self.send_command(0X13) - for i in range(0, self.width * self.height / 8): - self.send_data(ryimage[i]) - - self.send_command(0x12) - self.ReadBusy() - - def Clear(self): - self.send_command(0X10) - for i in range(0, self.width * self.height / 8): - self.send_data(0xff) - self.send_command(0X13) - for i in range(0, self.width * self.height / 8): - self.send_data(0xff) - - self.send_command(0x12) - self.ReadBusy() - - def sleep(self): - self.send_command(0X02) # power off - self.ReadBusy() - self.send_command(0X07) # deep sleep - self.send_data(0xA5) - - epdconfig.module_exit() -### END OF FILE ### - diff --git a/Jetson Nano/python2/lib/epd2in9bc.pyc b/Jetson Nano/python2/lib/epd2in9bc.pyc deleted file mode 100644 index f35e880..0000000 Binary files a/Jetson Nano/python2/lib/epd2in9bc.pyc and /dev/null differ diff --git a/Jetson Nano/python2/lib/epd2in9d.py b/Jetson Nano/python2/lib/epd2in9d.py deleted file mode 100644 index ab0212c..0000000 --- a/Jetson Nano/python2/lib/epd2in9d.py +++ /dev/null @@ -1,350 +0,0 @@ -# /***************************************************************************** -# * | File : epd2in9d.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V2.0 -# * | Date : 2019-06-19 -# * | Info : python2 demo -# ******************************************************************************/ -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - - -import epdconfig -from PIL import Image -import RPi.GPIO as GPIO - -# Display resolution -EPD_WIDTH = 128 -EPD_HEIGHT = 296 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - lut_vcomDC = [ - 0x00, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x60, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x00, 0x14, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, - ] - - lut_ww = [ - 0x40, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x40, 0x14, 0x00, 0x00, 0x00, 0x01, - 0xA0, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - - lut_bw = [ - 0x40, 0x17, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x0F, 0x0F, 0x00, 0x00, 0x03, - 0x40, 0x0A, 0x01, 0x00, 0x00, 0x01, - 0xA0, 0x0E, 0x0E, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - - lut_wb = [ - 0x80, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x80, 0x14, 0x00, 0x00, 0x00, 0x01, - 0x50, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - - lut_bb = [ - 0x80, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x80, 0x14, 0x00, 0x00, 0x00, 0x01, - 0x50, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - - lut_vcom1 = [ - 0x00, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, - ] - - lut_ww1 = [ - 0x00, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, - ] - - lut_bw1 = [ - 0x80, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, - ] - - lut_wb1 = [ - 0x40, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, - ] - - lut_bb1 = [ - 0x00, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, - ] - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - self.send_command(0x71) - epdconfig.delay_ms(100) - print("e-Paper busy release") - def TurnOnDisplay(self): - self.send_command(0x12) - epdconfig.delay_ms(10) - self.ReadBusy() - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - # EPD hardware init start - self.reset() - - self.send_command(0x01) # POWER SETTING - self.send_data(0x03) - self.send_data(0x00) - self.send_data(0x2b) - self.send_data(0x2b) - self.send_data(0x03) - - self.send_command(0x06) # boost soft start - self.send_data(0x17) # A - self.send_data(0x17) # B - self.send_data(0x17) # C - - self.send_command(0x04) - self.ReadBusy() - - self.send_command(0x00) # panel setting - self.send_data(0xbf) # LUT from OTP,128x296 - self.send_data(0x0d) # VCOM to 0V fast - - self.send_command(0x30) #PLL setting - self.send_data(0x3a) # 3a 100HZ 29 150Hz 39 200HZ 31 171HZ - - self.send_command(0x61) # resolution setting - self.send_data(self.width) - self.send_data((self.height >> 8) & 0xff) - self.send_data(self.height& 0xff) - - self.send_command(0x82) # vcom_DC setting - self.send_data(0x28) - return 0 - - def SetFullReg(self): - self.send_command(0x82) - self.send_data(0x00) - self.send_command(0X50) - self.send_data(0x97) - - self.send_command(0x20) # vcom - for count in range(0, 44): - self.send_data(self.lut_vcomDC[count]) - self.send_command(0x21) # ww -- - for count in range(0, 42): - self.send_data(self.lut_ww[count]) - self.send_command(0x22) # bw r - for count in range(0, 42): - self.send_data(self.lut_bw[count]) - self.send_command(0x23) # wb w - for count in range(0, 42): - self.send_data(self.lut_wb[count]) - self.send_command(0x24) # bb b - for count in range(0, 42): - self.send_data(self.lut_bb[count]) - - def SetPartReg(self): - self.send_command(0x82) - self.send_data(0x03) - self.send_command(0X50) - self.send_data(0x47) - - self.send_command(0x20) # vcom - for count in range(0, 44): - self.send_data(self.lut_vcom1[count]) - self.send_command(0x21) # ww -- - for count in range(0, 42): - self.send_data(self.lut_ww1[count]) - self.send_command(0x22) # bw r - for count in range(0, 42): - self.send_data(self.lut_bw1[count]) - self.send_command(0x23) # wb w - for count in range(0, 42): - self.send_data(self.lut_wb1[count]) - self.send_command(0x24) # bb b - for count in range(0, 42): - self.send_data(self.lut_bb1[count]) - - def getbuffer(self, image): - # print "bufsiz = ",(self.width/8) * self.height - buf = [0xFF] * ((self.width/8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight - if(imwidth == self.width and imheight == self.height): - print("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] == 0: - buf[(x + y * self.width) / 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Horizontal") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) / 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, image): - self.send_command(0x10) - for i in range(0, self.width * self.height / 8): - self.send_data(0x00) - epdconfig.delay_ms(10) - - self.send_command(0x13) - for i in range(0, self.width * self.height / 8): - self.send_data(image[i]) - epdconfig.delay_ms(10) - - self.SetFullReg() - self.TurnOnDisplay() - - def DisplayPartial(self, image): - self.SetPartReg() - self.send_command(0x91) - self.send_command(0x90) - self.send_data(0) - self.send_data(self.width - 1) - - self.send_data(0) - self.send_data(0) - self.send_data(self.height / 256) - self.send_data(self.height % 256 - 1) - self.send_data(0x28) - - self.send_command(0x10) - for i in range(0, self.width * self.height / 8): - self.send_data(image[i]) - epdconfig.delay_ms(10) - - self.send_command(0x13) - for i in range(0, self.width * self.height / 8): - self.send_data(~image[i]) - epdconfig.delay_ms(10) - - self.TurnOnDisplay() - - def Clear(self, color): - self.send_command(0x10) - for i in range(0, self.width * self.height / 8): - self.send_data(0x00) - epdconfig.delay_ms(10) - - self.send_command(0x13) - for i in range(0, self.width * self.height / 8): - self.send_data(0xFF) - epdconfig.delay_ms(10) - - self.SetFullReg() - self.TurnOnDisplay() - - def sleep(self): - self.send_command(0X50) - self.send_data(0xf7) - self.send_command(0X02) #power off - self.send_command(0X07) #deep sleep - self.send_data(0xA5) - - epdconfig.module_exit() - -### END OF FILE ### - diff --git a/Jetson Nano/python2/lib/epd2in9d.pyc b/Jetson Nano/python2/lib/epd2in9d.pyc deleted file mode 100644 index 4fea169..0000000 Binary files a/Jetson Nano/python2/lib/epd2in9d.pyc and /dev/null differ diff --git a/Jetson Nano/python2/lib/epd4in2.py b/Jetson Nano/python2/lib/epd4in2.py deleted file mode 100644 index 36c07b1..0000000 --- a/Jetson Nano/python2/lib/epd4in2.py +++ /dev/null @@ -1,240 +0,0 @@ -# /***************************************************************************** -# * | File : epd4in2.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-20 -# * | Info : python2 demo -# ******************************************************************************/ -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - - -import epdconfig -from PIL import Image -import RPi.GPIO as GPIO - -# Display resolution -EPD_WIDTH = 400 -EPD_HEIGHT = 300 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - lut_vcom0 = [ - 0x00, 0x17, 0x00, 0x00, 0x00, 0x02, - 0x00, 0x17, 0x17, 0x00, 0x00, 0x02, - 0x00, 0x0A, 0x01, 0x00, 0x00, 0x01, - 0x00, 0x0E, 0x0E, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - lut_ww = [ - 0x40, 0x17, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x17, 0x17, 0x00, 0x00, 0x02, - 0x40, 0x0A, 0x01, 0x00, 0x00, 0x01, - 0xA0, 0x0E, 0x0E, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - lut_bw = [ - 0x40, 0x17, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x17, 0x17, 0x00, 0x00, 0x02, - 0x40, 0x0A, 0x01, 0x00, 0x00, 0x01, - 0xA0, 0x0E, 0x0E, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - lut_wb = [ - 0x80, 0x17, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x17, 0x17, 0x00, 0x00, 0x02, - 0x80, 0x0A, 0x01, 0x00, 0x00, 0x01, - 0x50, 0x0E, 0x0E, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - lut_bb = [ - 0x80, 0x17, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x17, 0x17, 0x00, 0x00, 0x02, - 0x80, 0x0A, 0x01, 0x00, 0x00, 0x01, - 0x50, 0x0E, 0x0E, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - epdconfig.delay_ms(100) - - def set_lut(self): - self.send_command(0x20) # vcom - for count in range(0, 44): - self.send_data(self.lut_vcom0[count]) - - self.send_command(0x21) # ww -- - for count in range(0, 42): - self.send_data(self.lut_ww[count]) - - self.send_command(0x22) # bw r - for count in range(0, 42): - self.send_data(self.lut_bw[count]) - - self.send_command(0x23) # wb w - for count in range(0, 42): - self.send_data(self.lut_bb[count]) - - self.send_command(0x24) # bb b - for count in range(0, 42): - self.send_data(self.lut_wb[count]) - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - # EPD hardware init start - self.reset() - - self.send_command(0x01) # POWER SETTING - self.send_data(0x03) # VDS_EN, VDG_EN - self.send_data(0x00) # VCOM_HV, VGHL_LV[1], VGHL_LV[0] - self.send_data(0x2b) # VDH - self.send_data(0x2b) # VDL - - self.send_command(0x06) # boost soft start - self.send_data(0x17) - self.send_data(0x17) - self.send_data(0x17) - - self.send_command(0x04) # POWER_ON - self.ReadBusy() - - self.send_command(0x00) # panel setting - self.send_data(0xbf) # KW-BF KWR-AF BWROTP 0f - self.send_data(0x0d) - - self.send_command(0x30) # PLL setting - self.send_data(0x3c) # 3A 100HZ 29 150Hz 39 200HZ 31 171HZ - - self.send_command(0x61) # resolution setting - self.send_data(0x01) - self.send_data(0x90) # 128 - self.send_data(0x01) - self.send_data(0x2c) - - self.send_command(0x82) # vcom_DC setting - self.send_data(0x28) - - self.send_command(0X50) # VCOM AND DATA INTERVAL SETTING - self.send_data(0x97) # 97white border 77black border VBDF 17|D7 VBDW 97 VBDB 57 VBDF F7 VBDW 77 VBDB 37 VBDR B7 - - self.set_lut() - # EPD hardware init end - return 0 - - def getbuffer(self, image): - # print "bufsiz = ",(self.width/8) * self.height - buf = [0xFF] * ((self.width/8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight - if(imwidth == self.width and imheight == self.height): - print "Horizontal" - 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] == 0: - buf[(x + y * self.width) / 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print "Vertical" - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) / 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, image): - self.send_command(0x10) - for i in range(0, self.width * self.height / 8): - self.send_data(0xFF) - - self.send_command(0x13) - for i in range(0, self.width * self.height / 8): - self.send_data(image[i]) - - self.send_command(0x12) - self.ReadBusy() - - def Clear(self): - self.send_command(0x10) - for i in range(0, self.width * self.height / 8): - self.send_data(0xFF) - - self.send_command(0x13) - for i in range(0, self.width * self.height / 8): - self.send_data(0xFF) - - self.send_command(0x12) - self.ReadBusy() - - def sleep(self): - self.send_command(0x02) # POWER_OFF - self.ReadBusy() - self.send_command(0x07) # DEEP_SLEEP - self.send_data(0XA5) - - epdconfig.module_exit() - -### END OF FILE ### - diff --git a/Jetson Nano/python2/lib/epd4in2.pyc b/Jetson Nano/python2/lib/epd4in2.pyc deleted file mode 100644 index 8d0194f..0000000 Binary files a/Jetson Nano/python2/lib/epd4in2.pyc and /dev/null differ diff --git a/Jetson Nano/python2/lib/epd4in2bc.py b/Jetson Nano/python2/lib/epd4in2bc.py deleted file mode 100644 index 0760c48..0000000 --- a/Jetson Nano/python2/lib/epd4in2bc.py +++ /dev/null @@ -1,147 +0,0 @@ -# /***************************************************************************** -# * | File : epd4in2bc.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-20 -# * | Info : python2 demo -# ******************************************************************************/ -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - -import epdconfig - -# Display resolution -EPD_WIDTH = 400 -EPD_HEIGHT = 300 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - epdconfig.delay_ms(100) - print("e-Paper busy release") - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - - self.reset() - - self.send_command(0x06) # BOOSTER_SOFT_START - self.send_data (0x17) - self.send_data (0x17) - self.send_data (0x17) # 07 0f 17 1f 27 2F 37 2f - - self.send_command(0x04) # POWER_ON - self.ReadBusy() - - self.send_command(0x00) # PANEL_SETTING - self.send_data(0x0F) # LUT from OTP - - return 0 - - def getbuffer(self, image): - # print "bufsiz = ",(self.width/8) * self.height - buf = [0xFF] * ((self.width/8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight - if(imwidth == self.width and imheight == self.height): - print("Horizontal") - 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] == 0: - buf[(x + y * self.width) / 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Vertical") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) / 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, imageblack, imagered): - self.send_command(0x10) - for i in range(0, self.width * self.height / 8): - self.send_data(imageblack[i]) - - self.send_command(0x13) - for i in range(0, self.width * self.height / 8): - self.send_data(imagered[i]) - - self.send_command(0x12) - self.ReadBusy() - - def Clear(self): - self.send_command(0x10) - for i in range(0, self.width * self.height / 8): - self.send_data(0xFF) - - self.send_command(0x13) - for i in range(0, self.width * self.height / 8): - self.send_data(0xFF) - - self.send_command(0x12) - self.ReadBusy() - - def sleep(self): - self.send_command(0x02) # POWER_OFF - self.ReadBusy() - self.send_command(0x07) # DEEP_SLEEP - self.send_data(0xA5) # check code - - epdconfig.module_exit() -### END OF FILE ### - diff --git a/Jetson Nano/python2/lib/epd4in2bc.pyc b/Jetson Nano/python2/lib/epd4in2bc.pyc deleted file mode 100644 index ef2ec4a..0000000 Binary files a/Jetson Nano/python2/lib/epd4in2bc.pyc and /dev/null differ diff --git a/Jetson Nano/python2/lib/epd5in83.py b/Jetson Nano/python2/lib/epd5in83.py deleted file mode 100644 index e309db0..0000000 --- a/Jetson Nano/python2/lib/epd5in83.py +++ /dev/null @@ -1,199 +0,0 @@ -# /***************************************************************************** -# * | File : epd5in83.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-20 -# * | Info : python2 demo -# ******************************************************************************/ -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - - -import epdconfig - -# Display resolution -EPD_WIDTH = 600 -EPD_HEIGHT = 448 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - epdconfig.delay_ms(100) - print("e-Paper busy release") - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - # EPD hardware init start - self.reset() - - self.send_command(0x01) # POWER_SETTING - self.send_data(0x37) - self.send_data(0x00) - - self.send_command(0x00) # PANEL_SETTING - self.send_data(0xCF) - self.send_data(0x08) - - self.send_command(0x06) # BOOSTER_SOFT_START - self.send_data(0xc7) - self.send_data(0xcc) - self.send_data(0x28) - - self.send_command(0x04) # POWER_ON - self.ReadBusy() - - self.send_command(0x30) # PLL_CONTROL - self.send_data(0x3c) - - self.send_command(0x41) # TEMPERATURE_CALIBRATION - self.send_data(0x00) - - self.send_command(0x50) # VCOM_AND_DATA_INTERVAL_SETTING - self.send_data(0x77) - - self.send_command(0x60) # TCON_SETTING - self.send_data(0x22) - - self.send_command(0x61) # TCON_RESOLUTION - self.send_data(0x02) # source 600 - self.send_data(0x58) - self.send_data(0x01) # gate 448 - self.send_data(0xC0) - - self.send_command(0x82) # VCM_DC_SETTING - self.send_data(0x1E) # decide by LUT file - - self.send_command(0xe5) # FLASH MODE - self.send_data(0x03) - - # EPD hardware init end - return 0 - - def getbuffer(self, image): - buf = [0x00] * (self.width * self.height / 4) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - print("imwidth = ", imwidth, "imheight = ", imheight) - if(imwidth == self.width and imheight == self.height): - 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] < 64: # black - buf[(x + y * self.width) / 4] &= ~(0xC0 >> (x % 4 * 2)) - elif pixels[x, y] < 192: # convert gray to red - buf[(x + y * self.width) / 4] &= ~(0xC0 >> (x % 4 * 2)) - buf[(x + y * self.width) / 4] |= 0x40 >> (x % 4 * 2) - else: # white - buf[(x + y * self.width) / 4] |= 0xC0 >> (x % 4 * 2) - elif(imwidth == self.height and imheight == self.width): - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] < 64: # black - buf[(newx + newy*self.width) / 4] &= ~(0xC0 >> (y % 4 * 2)) - elif pixels[x, y] < 192: # convert gray to red - buf[(newx + newy*self.width) / 4] &= ~(0xC0 >> (y % 4 * 2)) - buf[(newx + newy*self.width) / 4] |= 0x40 >> (y % 4 * 2) - else: # white - buf[(newx + newy*self.width) / 4] |= 0xC0 >> (y % 4 * 2) - return buf - - def display(self, image): - self.send_command(0x10) - for i in range(0, self.width / 4 * self.height): - temp1 = image[i] - j = 0 - while (j < 4): - if ((temp1 & 0xC0) == 0xC0): - temp2 = 0x03 - elif ((temp1 & 0xC0) == 0x00): - temp2 = 0x00 - else: - temp2 = 0x04 - temp2 = (temp2 << 4) & 0xFF - temp1 = (temp1 << 2) & 0xFF - j += 1 - if((temp1 & 0xC0) == 0xC0): - temp2 |= 0x03 - elif ((temp1 & 0xC0) == 0x00): - temp2 |= 0x00 - else: - temp2 |= 0x04 - temp1 = (temp1 << 2) & 0xFF - self.send_data(temp2) - j += 1 - - self.send_command(0x12) - epdconfig.delay_ms(100) - self.ReadBusy() - - def Clear(self): - self.send_command(0x10) - for i in range(0, self.width / 4 * self.height): - for j in range(0, 4): - self.send_data(0x33) - self.send_command(0x12) - self.ReadBusy() - - def sleep(self): - self.send_command(0x02) # POWER_OFF - self.ReadBusy() - self.send_command(0x07) # DEEP_SLEEP - self.send_data(0XA5) - - epdconfig.module_exit() - -### END OF FILE ### - diff --git a/Jetson Nano/python2/lib/epd5in83.pyc b/Jetson Nano/python2/lib/epd5in83.pyc deleted file mode 100644 index ec4406c..0000000 Binary files a/Jetson Nano/python2/lib/epd5in83.pyc and /dev/null differ diff --git a/Jetson Nano/python2/lib/epd5in83bc.py b/Jetson Nano/python2/lib/epd5in83bc.py deleted file mode 100644 index 60ef7d6..0000000 --- a/Jetson Nano/python2/lib/epd5in83bc.py +++ /dev/null @@ -1,199 +0,0 @@ -# /***************************************************************************** -# * | File : epd5in83b.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-20 -# * | Info : python2 demo -# ******************************************************************************/ -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - - -import epdconfig - -# Display resolution -EPD_WIDTH = 600 -EPD_HEIGHT = 448 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - epdconfig.delay_ms(100) - print("e-Paper busy release") - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - - self.reset() - - self.send_command(0x01) # POWER_SETTING - self.send_data(0x37) - self.send_data(0x00) - - self.send_command(0x00) # PANEL_SETTING - self.send_data(0xCF) - self.send_data(0x08) - - self.send_command(0x30) # PLL_CONTROL - self.send_data(0x3A) # PLL: 0-15:0x3C, 15+:0x3A - self.send_command(0X82) # VCOM VOLTAGE SETTING - self.send_data(0x28) # all temperature range - - self.send_command(0x06) # boost - self.send_data(0xc7) - self.send_data(0xcc) - self.send_data(0x15) - - self.send_command(0X50) # VCOM AND DATA INTERVAL SETTING - self.send_data(0x77) - - self.send_command(0X60) # TCON SETTING - self.send_data(0x22) - - self.send_command(0X65) # FLASH CONTROL - self.send_data(0x00) - - self.send_command(0x61) # tres - self.send_data(0x02) # source 600 - self.send_data(0x58) - self.send_data(0x01) # gate 448 - self.send_data(0xc0) - - self.send_command(0xe5) # FLASH MODE - self.send_data(0x03) - self.send_data(0x03) - - return 0 - - def getbuffer(self, image): - # print "bufsiz = ",(self.width/8) * self.height - buf = [0xFF] * ((self.width/8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight - if(imwidth == self.width and imheight == self.height): - print("Horizontal") - 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] == 0: - buf[(x + y * self.width) / 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Vertical") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) / 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, imageblack, imagered): - self.send_command(0x10) - for i in range(0, self.width / 8 * self.height): - temp1 = imageblack[i] - temp2 = imagered[i] - j = 0 - while (j < 8): - if ((temp2 & 0x80) == 0x00): - temp3 = 0x04 #red - elif ((temp1 & 0x80) == 0x00): - temp3 = 0x00 #black - else: - temp3 = 0x03 #white - - temp3 = (temp3 << 4) & 0xFF - temp1 = (temp1 << 1) & 0xFF - temp2 = (temp2 << 1) & 0xFF - j += 1 - if((temp2 & 0x80) == 0x00): - temp3 |= 0x04 #red - elif ((temp1 & 0x80) == 0x00): - temp3 |= 0x00 #black - else: - temp3 |= 0x03 #white - temp1 = (temp1 << 1) & 0xFF - temp2 = (temp2 << 1) & 0xFF - self.send_data(temp3) - j += 1 - - self.send_command(0x04) # POWER ON - self.ReadBusy() - self.send_command(0x12) # display refresh - epdconfig.delay_ms(100) - self.ReadBusy() - - def Clear(self): - self.send_command(0x10) - for i in range(0, self.width / 8 * self.height): - self.send_data(0x33) - self.send_data(0x33) - self.send_data(0x33) - self.send_data(0x33) - - self.send_command(0x04) # POWER ON - self.ReadBusy() - self.send_command(0x12) # display refresh - epdconfig.delay_ms(100) - self.ReadBusy() - - def sleep(self): - self.send_command(0x02) # POWER_OFF - self.ReadBusy() - self.send_command(0x07) # DEEP_SLEEP - self.send_data(0xA5) # check code - - epdconfig.module_exit() -### END OF FILE ### - diff --git a/Jetson Nano/python2/lib/epd5in83bc.pyc b/Jetson Nano/python2/lib/epd5in83bc.pyc deleted file mode 100644 index 56cd1b8..0000000 Binary files a/Jetson Nano/python2/lib/epd5in83bc.pyc and /dev/null differ diff --git a/Jetson Nano/python2/lib/epd7in5.py b/Jetson Nano/python2/lib/epd7in5.py deleted file mode 100644 index 6e5a70f..0000000 --- a/Jetson Nano/python2/lib/epd7in5.py +++ /dev/null @@ -1,200 +0,0 @@ -# /***************************************************************************** -# * | File : epd7in5.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-20 -# * | Info : python2 demo -# ******************************************************************************/ -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - - -import epdconfig - -# Display resolution -EPD_WIDTH = 640 -EPD_HEIGHT = 384 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - epdconfig.delay_ms(100) - print("e-Paper busy release") - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - # EPD hardware init start - self.reset() - - self.send_command(0x01) # POWER_SETTING - self.send_data(0x37) - self.send_data(0x00) - - self.send_command(0x00) # PANEL_SETTING - self.send_data(0xCF) - self.send_data(0x08) - - self.send_command(0x06) # BOOSTER_SOFT_START - self.send_data(0xc7) - self.send_data(0xcc) - self.send_data(0x28) - - self.send_command(0x04) # POWER_ON - self.ReadBusy() - - self.send_command(0x30) # PLL_CONTROL - self.send_data(0x3c) - - self.send_command(0x41) # TEMPERATURE_CALIBRATION - self.send_data(0x00) - - self.send_command(0x50) # VCOM_AND_DATA_INTERVAL_SETTING - self.send_data(0x77) - - self.send_command(0x60) # TCON_SETTING - self.send_data(0x22) - - self.send_command(0x61) # TCON_RESOLUTION - self.send_data(EPD_WIDTH >> 8) #source 640 - self.send_data(EPD_WIDTH & 0xff) - self.send_data(EPD_HEIGHT >> 8) #gate 384 - self.send_data(EPD_HEIGHT & 0xff) - - self.send_command(0x82) # VCM_DC_SETTING - self.send_data(0x1E) # decide by LUT file - - self.send_command(0xe5) # FLASH MODE - self.send_data(0x03) - - # EPD hardware init end - return 0 - - def getbuffer(self, image): - buf = [0x00] * (self.width * self.height / 4) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - print("imwidth = ", imwidth, "imheight = ", imheight) - if(imwidth == self.width and imheight == self.height): - 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] < 64: # black - buf[(x + y * self.width) / 4] &= ~(0xC0 >> (x % 4 * 2)) - elif pixels[x, y] < 192: # convert gray to red - buf[(x + y * self.width) / 4] &= ~(0xC0 >> (x % 4 * 2)) - buf[(x + y * self.width) / 4] |= 0x40 >> (x % 4 * 2) - else: # white - buf[(x + y * self.width) / 4] |= 0xC0 >> (x % 4 * 2) - elif(imwidth == self.height and imheight == self.width): - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] < 64: # black - buf[(newx + newy*self.width) / 4] &= ~(0xC0 >> (y % 4 * 2)) - elif pixels[x, y] < 192: # convert gray to red - buf[(newx + newy*self.width) / 4] &= ~(0xC0 >> (y % 4 * 2)) - buf[(newx + newy*self.width) / 4] |= 0x40 >> (y % 4 * 2) - else: # white - buf[(newx + newy*self.width) / 4] |= 0xC0 >> (y % 4 * 2) - return buf - - def display(self, image): - self.send_command(0x10) - for i in range(0, self.width / 4 * self.height): - temp1 = image[i] - j = 0 - while (j < 4): - if ((temp1 & 0xC0) == 0xC0): - temp2 = 0x03 - elif ((temp1 & 0xC0) == 0x00): - temp2 = 0x00 - else: - temp2 = 0x04 - temp2 = (temp2 << 4) & 0xFF - temp1 = (temp1 << 2) & 0xFF - j += 1 - if((temp1 & 0xC0) == 0xC0): - temp2 |= 0x03 - elif ((temp1 & 0xC0) == 0x00): - temp2 |= 0x00 - else: - temp2 |= 0x04 - temp1 = (temp1 << 2) & 0xFF - self.send_data(temp2) - j += 1 - - self.send_command(0x12) - epdconfig.delay_ms(100) - self.ReadBusy() - - def Clear(self): - self.send_command(0x10) - for i in range(0, self.width / 4 * self.height): - for j in range(0, 4): - self.send_data(0x33) - - self.send_command(0x12) - self.ReadBusy() - - def sleep(self): - self.send_command(0x02) # POWER_OFF - self.ReadBusy() - - self.send_command(0x07) # DEEP_SLEEP - self.send_data(0XA5) - - epdconfig.module_exit() -### END OF FILE ### - diff --git a/Jetson Nano/python2/lib/epd7in5.pyc b/Jetson Nano/python2/lib/epd7in5.pyc deleted file mode 100644 index 2b03b1f..0000000 Binary files a/Jetson Nano/python2/lib/epd7in5.pyc and /dev/null differ diff --git a/Jetson Nano/python2/lib/epd7in5bc.py b/Jetson Nano/python2/lib/epd7in5bc.py deleted file mode 100644 index 58157f8..0000000 --- a/Jetson Nano/python2/lib/epd7in5bc.py +++ /dev/null @@ -1,200 +0,0 @@ -# /***************************************************************************** -# * | File : epd7in5bc.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-20 -# * | Info : python2 demo -# ******************************************************************************/ -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - - -import epdconfig - -# Display resolution -EPD_WIDTH = 640 -EPD_HEIGHT = 384 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - epdconfig.delay_ms(100) - print("e-Paper busy release") - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - - self.reset() - - self.send_command(0x01) # POWER_SETTING - self.send_data(0x37) - self.send_data(0x00) - - self.send_command(0x00) # PANEL_SETTING - self.send_data(0xCF) - self.send_data(0x08) - - self.send_command(0x30) # PLL_CONTROL - self.send_data(0x3A) # PLL: 0-15:0x3C, 15+:0x3A - - self.send_command(0x82) # VCM_DC_SETTING - self.send_data(0x28) #all temperature range - - self.send_command(0x06) # BOOSTER_SOFT_START - self.send_data(0xc7) - self.send_data(0xcc) - self.send_data(0x15) - - self.send_command(0x50) # VCOM AND DATA INTERVAL SETTING - self.send_data(0x77) - - self.send_command(0x60) # TCON_SETTING - self.send_data(0x22) - - self.send_command(0x65) # FLASH CONTROL - self.send_data(0x00) - - self.send_command(0x61) # TCON_RESOLUTION - self.send_data(self.width >> 8) # source 640 - self.send_data(self.width & 0xff) - self.send_data(self.height >> 8) # gate 384 - self.send_data(self.height & 0xff) - - self.send_command(0xe5) # FLASH MODE - self.send_data(0x03) - - return 0 - - def getbuffer(self, image): - # print "bufsiz = ",(self.width/8) * self.height - buf = [0xFF] * ((self.width/8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight - if(imwidth == self.width and imheight == self.height): - print("Horizontal") - 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] == 0: - buf[(x + y * self.width) / 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Vertical") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) / 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, imageblack, imagered): - self.send_command(0x10) - for i in range(0, self.width / 8 * self.height): - temp1 = imageblack[i] - temp2 = imagered[i] - j = 0 - while (j < 8): - if ((temp2 & 0x80) == 0x00): - temp3 = 0x04 #red - elif ((temp1 & 0x80) == 0x00): - temp3 = 0x00 #black - else: - temp3 = 0x03 #white - - temp3 = (temp3 << 4) & 0xFF - temp1 = (temp1 << 1) & 0xFF - temp2 = (temp2 << 1) & 0xFF - j += 1 - if((temp2 & 0x80) == 0x00): - temp3 |= 0x04 #red - elif ((temp1 & 0x80) == 0x00): - temp3 |= 0x00 #black - else: - temp3 |= 0x03 #white - temp1 = (temp1 << 1) & 0xFF - temp2 = (temp2 << 1) & 0xFF - self.send_data(temp3) - j += 1 - - self.send_command(0x04) # POWER ON - self.ReadBusy() - self.send_command(0x12) # display refresh - epdconfig.delay_ms(100) - self.ReadBusy() - - def Clear(self): - self.send_command(0x10) - for i in range(0, self.width / 8 * self.height): - self.send_data(0x33) - self.send_data(0x33) - self.send_data(0x33) - self.send_data(0x33) - - self.send_command(0x04) # POWER ON - self.ReadBusy() - self.send_command(0x12) # display refresh - epdconfig.delay_ms(100) - self.ReadBusy() - - def sleep(self): - self.send_command(0x02) # POWER_OFF - self.ReadBusy() - - self.send_command(0x07) # DEEP_SLEEP - self.send_data(0XA5) - - epdconfig.module_exit() -### END OF FILE ### - diff --git a/Jetson Nano/python2/lib/epd7in5bc.pyc b/Jetson Nano/python2/lib/epd7in5bc.pyc deleted file mode 100644 index 4aff03d..0000000 Binary files a/Jetson Nano/python2/lib/epd7in5bc.pyc and /dev/null differ diff --git a/Jetson Nano/python2/lib/epdconfig.py b/Jetson Nano/python2/lib/epdconfig.py deleted file mode 100644 index 403d6a1..0000000 --- a/Jetson Nano/python2/lib/epdconfig.py +++ /dev/null @@ -1,97 +0,0 @@ -# /***************************************************************************** -# * | File : epdconfig.py -# * | Author : Waveshare team -# * | Function : Hardware underlying interface -# * | Info : -# *---------------- -# * | This version: V1.0 -# * | Date : 2019-06-06 -# * | Info : -# ****************************************************************************** -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - -import Jetson.GPIO as GPIO -import time - -import ctypes -# import spidev - -# Pin definition -RST_PIN = 17 -DC_PIN = 25 -CS_PIN = 8 -BUSY_PIN = 24 - -# SPI device, bus = 0, device = 0 -# SPI = spidev.SpiDev(0, 0) - -clib = ctypes.cdll.LoadLibrary -spi = clib('../lib/sysfs_software_spi.so') -# gpio2 = clib('../lib/sysfs_gpio.so') - -def digital_write(pin, value): - GPIO.output(pin, value) - -def digital_read(pin): - return GPIO.input(BUSY_PIN) - # return gpio2.SYSFS_GPIO_Read(15) - -def delay_ms(delaytime): - time.sleep(delaytime / 1000.0) - -def spi_writebyte(data): - # SPI.writebytes(data) - spi.SYSFS_software_spi_transfer(data[0]) - -def module_init(): - # print("module_init") - GPIO.setmode(GPIO.BCM) - GPIO.setwarnings(False) - # print("RST_PIN") - GPIO.setup(RST_PIN, GPIO.OUT) - # print("DC_PIN") - GPIO.setup(DC_PIN, GPIO.OUT) - # print("CS_PIN") - GPIO.setup(CS_PIN, GPIO.OUT) - # print("BUSY_PIN") - GPIO.setup(BUSY_PIN, GPIO.IN) - # SPI.max_speed_hz = 2000000 - # SPI.mode = 0b00 - - # gpio2.SYSFS_GPIO_Export(15) - # gpio2.SYSFS_GPIO_Direction(15, 0) - - spi.SYSFS_software_spi_begin() - return 0 - - -def module_exit(): - print("spi end") - spi.SYSFS_software_spi_end() - - print("close 5V, Module enters 0 power consumption ...") - GPIO.output(RST_PIN, 0) - GPIO.output(DC_PIN, 0) - - GPIO.cleanup() - - - -### END OF FILE ### diff --git a/Jetson Nano/python2/lib/epdconfig.pyc b/Jetson Nano/python2/lib/epdconfig.pyc deleted file mode 100644 index da933d7..0000000 Binary files a/Jetson Nano/python2/lib/epdconfig.pyc and /dev/null differ diff --git a/Jetson Nano/python3/examples/epd_1in54_test.py b/Jetson Nano/python3/examples/epd_1in54_test.py deleted file mode 100644 index 7844db3..0000000 --- a/Jetson Nano/python3/examples/epd_1in54_test.py +++ /dev/null @@ -1,87 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd1in54 -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd1in54 Demo") - - epd = epd1in54.EPD() - print("init and Clear") - epd.init(epd.lut_full_update) - epd.Clear(0xFF) - - # Drawing on the image - print("1.Drawing on the image...") - image = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - - draw = ImageDraw.Draw(image) - font = ImageFont.truetype('../lib/Font.ttc', 24) - draw.rectangle((0, 10, 200, 34), fill = 0) - draw.text((8, 12), 'hello world', font = font, fill = 255) - draw.text((8, 36), u'寰洩鐢靛瓙', font = font, fill = 0) - draw.line((16, 60, 56, 60), fill = 0) - draw.line((56, 60, 56, 110), fill = 0) - draw.line((16, 110, 56, 110), fill = 0) - draw.line((16, 110, 16, 60), fill = 0) - draw.line((16, 60, 56, 110), fill = 0) - draw.line((56, 60, 16, 110), fill = 0) - draw.arc((90, 60, 150, 120), 0, 360, fill = 0) - draw.rectangle((16, 130, 56, 180), fill = 0) - draw.chord((90, 130, 150, 190), 0, 360, fill = 0) - epd.display(epd.getbuffer(image.rotate(90))) - time.sleep(2) - - # read bmp file - print("2.read bmp file...") - image = Image.open('../pic/1in54.bmp') - epd.display(epd.getbuffer(image)) - time.sleep(2) - - # read bmp file on window - print("3.read bmp file on window...") - epd.Clear(0xFF) - image1 = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') - image1.paste(bmp, (50,50)) - epd.display(epd.getbuffer(image1)) - time.sleep(2) - - # # partial update - print("4.show time...") - epd.init(epd.lut_partial_update) - epd.Clear(0xFF) - - time_image = Image.new('1', (epd.width, epd.height), 255) - time_draw = ImageDraw.Draw(time_image) - num = 0 - while (True): - time_draw.rectangle((10, 10, 120, 50), fill = 255) - time_draw.text((10, 10), time.strftime('%H:%M:%S'), font = font, fill = 0) - newimage = time_image.crop([10, 10, 120, 50]) - time_image.paste(newimage, (10,10)) - epd.display(epd.getbuffer(time_image)) - num = num + 1 - if(num == 10): - break - - print("Clear...") - epd.init(epd.lut_full_update) - epd.Clear(0xFF) - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Jetson Nano/python3/examples/epd_1in54b_test.py b/Jetson Nano/python3/examples/epd_1in54b_test.py deleted file mode 100644 index d48b8e2..0000000 --- a/Jetson Nano/python3/examples/epd_1in54b_test.py +++ /dev/null @@ -1,75 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd1in54b -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd1in54b Demo") - - epd = epd1in54b.EPD() - print("init and Clear") - epd.init() - epd.Clear() - time.sleep(1) - - # Drawing on the image - print("1.Drawing on the image...") - blackimage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - redimage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - - font = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - drawblack = ImageDraw.Draw(blackimage) - drawred = ImageDraw.Draw(redimage) - drawblack.rectangle((0, 10, 200, 34), fill = 0) - drawblack.text((8, 12), 'hello world', font = font, fill = 255) - drawblack.text((8, 36), u'寰洩鐢靛瓙', font = font18, fill = 0) - drawblack.line((16, 60, 56, 60), fill = 0) - drawblack.line((56, 60, 56, 110), fill = 0) - drawblack.line((16, 110, 56, 110), fill = 0) - drawred.line((16, 110, 16, 60), fill = 0) - drawred.line((16, 60, 56, 110), fill = 0) - drawred.line((56, 60, 16, 110), fill = 0) - drawred.arc((90, 60, 150, 120), 0, 360, fill = 0) - drawred.rectangle((16, 130, 56, 180), fill = 0) - drawred.chord((90, 130, 150, 190), 0, 360, fill = 0) - epd.display(epd.getbuffer(blackimage),epd.getbuffer(redimage)) - time.sleep(1) - - # read bmp file - print("2.read bmp file...") - blackimage = Image.open('../pic/1in54b-b.bmp') - redimage = Image.open('../pic/1in54b-r.bmp') - epd.display(epd.getbuffer(blackimage),epd.getbuffer(redimage)) - time.sleep(1) - - # read bmp file on window - print("3.read bmp file on window...") - blackimage1 = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - redimage2 = Image.new('1', (epd.width, epd.height), 255) - - newimage = Image.open('../pic/100x100.bmp') - blackimage1.paste(newimage, (50,50)) - epd.display(epd.getbuffer(blackimage1), epd.getbuffer(redimage2)) - - print("Clear...") - epd.init() - epd.Clear() - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Jetson Nano/python3/examples/epd_1in54c_test.py b/Jetson Nano/python3/examples/epd_1in54c_test.py deleted file mode 100644 index 7374e6d..0000000 --- a/Jetson Nano/python3/examples/epd_1in54c_test.py +++ /dev/null @@ -1,72 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd1in54c -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd1in54c Demo") - - epd = epd1in54c.EPD() - print("init and Clear") - epd.init() - epd.Clear() - time.sleep(1) - - # Drawing on the image - print("1.Drawing on the image...") - blackimage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - yellowimage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - - font = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - drawblack = ImageDraw.Draw(blackimage) - drawyellow = ImageDraw.Draw(yellowimage) - drawblack.rectangle((0, 10, 200, 34), fill = 0) - drawblack.text((8, 12), 'hello world', font = font, fill = 255) - drawblack.text((8, 36), u'寰洩鐢靛瓙', font = font, fill = 0) - drawblack.line((10, 100, 70, 100), fill = 0) - drawblack.line((40, 70, 40, 130), fill = 0) - - drawyellow.rectangle((10, 70, 70, 130), outline = 0) - drawyellow.arc((80, 70, 140, 130), 0, 360, fill = 0) - drawyellow.chord((90, 80, 130, 120), 0, 360, fill = 0) - epd.display(epd.getbuffer(blackimage),epd.getbuffer(yellowimage)) - time.sleep(1) - - # read bmp file - print("2.read bmp file...") - blackimage = Image.open('../pic/1in54c-b.bmp') - yellowimage = Image.open('../pic/1in54c-y.bmp') - epd.display(epd.getbuffer(blackimage),epd.getbuffer(yellowimage)) - time.sleep(1) - - # read bmp file on window - print("3.read bmp file on window...") - blackimage1 = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - yellowimage2 = Image.new('1', (epd.width, epd.height), 255) - - newimage = Image.open('../pic/100x100.bmp') - blackimage1.paste(newimage, (50,50)) - epd.display(epd.getbuffer(blackimage1), epd.getbuffer(yellowimage2)) - - print("Clear...") - epd.init() - epd.Clear() - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Jetson Nano/python3/examples/epd_2in13_V2_test.py b/Jetson Nano/python3/examples/epd_2in13_V2_test.py deleted file mode 100644 index 85f5ee7..0000000 --- a/Jetson Nano/python3/examples/epd_2in13_V2_test.py +++ /dev/null @@ -1,89 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd2in13_V2 -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd2in13_V2 Demo") - - epd = epd2in13_V2.EPD() - print("init and Clear") - epd.init(epd.FULL_UPDATE) - epd.Clear(0xFF) - - # Drawing on the image - font15 = ImageFont.truetype('../lib/Font.ttc', 15) - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - - print("1.Drawing on the image...") - image = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - draw = ImageDraw.Draw(image) - - draw.rectangle([(0,0),(50,50)],outline = 0) - draw.rectangle([(55,0),(100,50)],fill = 0) - draw.line([(0,0),(50,50)], fill = 0,width = 1) - draw.line([(0,50),(50,0)], fill = 0,width = 1) - draw.chord((10, 60, 50, 100), 0, 360, fill = 0) - draw.ellipse((55, 60, 95, 100), outline = 0) - draw.pieslice((55, 60, 95, 100), 90, 180, outline = 0) - draw.pieslice((55, 60, 95, 100), 270, 360, fill = 0) - draw.polygon([(110,0),(110,50),(150,25)],outline = 0) - draw.polygon([(190,0),(190,50),(150,25)],fill = 0) - draw.text((120, 60), 'e-Paper demo', font = font15, fill = 0) - draw.text((110, 90), u'寰洩鐢靛瓙', font = font24, fill = 0) - epd.display(epd.getbuffer(image)) - time.sleep(2) - - # read bmp file - print("2.read bmp file...") - image = Image.open('../pic/2in13.bmp') - epd.display(epd.getbuffer(image)) - time.sleep(2) - - # read bmp file on window - print("3.read bmp file on window...") - # epd.Clear(0xFF) - image1 = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') - image1.paste(bmp, (2,2)) - epd.display(epd.getbuffer(image1)) - time.sleep(2) - - # # partial update - print("4.show time...") - time_image = Image.new('1', (epd.height, epd.width), 255) - time_draw = ImageDraw.Draw(time_image) - - epd.init(epd.FULL_UPDATE) - epd.displayPartBaseImage(epd.getbuffer(time_image)) - - epd.init(epd.PART_UPDATE) - num = 0 - while (True): - time_draw.rectangle((120, 80, 220, 105), fill = 255) - time_draw.text((120, 80), time.strftime('%H:%M:%S'), font = font24, fill = 0) - epd.displayPartial(epd.getbuffer(time_image)) - num = num + 1 - if(num == 10): - break - - print("Clear...") - epd.init(epd.FULL_UPDATE) - epd.Clear(0xFF) - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Jetson Nano/python3/examples/epd_2in13_test.py b/Jetson Nano/python3/examples/epd_2in13_test.py deleted file mode 100644 index 1081d79..0000000 --- a/Jetson Nano/python3/examples/epd_2in13_test.py +++ /dev/null @@ -1,87 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd2in13 -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd2in13 Demo") - - epd = epd2in13.EPD() - print("init and Clear") - epd.init(epd.lut_full_update) - epd.Clear(0xFF) - - # Drawing on the image - font15 = ImageFont.truetype('../lib/Font.ttc', 15) - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - - print("1.Drawing on the image...") - image = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - draw = ImageDraw.Draw(image) - - draw.rectangle([(0,0),(50,50)],outline = 0) - draw.rectangle([(55,0),(100,50)],fill = 0) - draw.line([(0,0),(50,50)], fill = 0,width = 1) - draw.line([(0,50),(50,0)], fill = 0,width = 1) - draw.chord((10, 60, 50, 100), 0, 360, fill = 0) - draw.ellipse((55, 60, 95, 100), outline = 0) - draw.pieslice((55, 60, 95, 100), 90, 180, outline = 0) - draw.pieslice((55, 60, 95, 100), 270, 360, fill = 0) - draw.polygon([(110,0),(110,50),(150,25)],outline = 0) - draw.polygon([(190,0),(190,50),(150,25)],fill = 0) - draw.text((120, 60), 'e-Paper demo', font = font15, fill = 0) - draw.text((110, 90), u'寰洩鐢靛瓙', font = font24, fill = 0) - epd.display(epd.getbuffer(image)) - time.sleep(2) - - # read bmp file - print("2.read bmp file...") - image = Image.open('../pic/2in13.bmp') - epd.display(epd.getbuffer(image)) - time.sleep(2) - - # read bmp file on window - print("3.read bmp file on window...") - # epd.Clear(0xFF) - image1 = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') - image1.paste(bmp, (2,2)) - epd.display(epd.getbuffer(image1)) - time.sleep(2) - - # # partial update - print("4.show time...") - epd.init(epd.lut_partial_update) - epd.Clear(0xFF) - - time_image = Image.new('1', (epd.height, epd.width), 255) - time_draw = ImageDraw.Draw(time_image) - num = 0 - while (True): - time_draw.rectangle((120, 80, 220, 105), fill = 255) - time_draw.text((120, 80), time.strftime('%H:%M:%S'), font = font24, fill = 0) - epd.display(epd.getbuffer(time_image)) - num = num + 1 - if(num == 10): - break - - print("Clear...") - epd.init(epd.lut_full_update) - epd.Clear(0xFF) - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Jetson Nano/python3/examples/epd_2in13d_test.py b/Jetson Nano/python3/examples/epd_2in13d_test.py deleted file mode 100644 index 883ccb3..0000000 --- a/Jetson Nano/python3/examples/epd_2in13d_test.py +++ /dev/null @@ -1,83 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd2in13d -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd2in13d Demo") - - epd = epd2in13d.EPD() - print("init and Clear") - epd.init() - epd.Clear(0xFF) - - font15 = ImageFont.truetype('../lib/Font.ttc', 15) - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - Himage = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - draw = ImageDraw.Draw(Himage) - draw.rectangle([(0,0),(50,50)],outline = 0) - draw.rectangle([(55,0),(100,50)],fill = 0) - draw.line([(0,0),(50,50)], fill = 0,width = 1) - draw.line([(0,50),(50,0)], fill = 0,width = 1) - draw.chord((10, 60, 50, 100), 0, 360, fill = 0) - draw.ellipse((55, 60, 95, 100), outline = 0) - draw.pieslice((55, 60, 95, 100), 90, 180, outline = 0) - draw.pieslice((55, 60, 95, 100), 270, 360, fill = 0) - draw.polygon([(110,0),(110,50),(150,25)],outline = 0) - draw.polygon([(190,0),(190,50),(150,25)],fill = 0) - draw.text((110, 60), 'e-Paper demo', font = font15, fill = 0) - draw.text((110, 80), u'寰洩鐢靛瓙', font = font15, fill = 0) - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - print("3.read bmp file") - Himage = Image.open('../pic/2in13d.bmp') - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - print("4.read bmp file on window") - Himage2 = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') - Himage2.paste(bmp, (20,20)) - epd.display(epd.getbuffer(Himage2)) - time.sleep(2) - - # # partial update - print("5.show time...") - epd.init() - epd.Clear(0xFF) - - time_image = Image.new('1', (epd.width, epd.height), 255) - time_draw = ImageDraw.Draw(time_image) - num = 0 - while (True): - time_draw.rectangle((10, 10, 120, 50), fill = 255) - time_draw.text((10, 10), time.strftime('%H:%M:%S'), font = font24, fill = 0) - newimage = time_image.crop([10, 10, 120, 50]) - time_image.paste(newimage, (10,10)) - epd.DisplayPartial(epd.getbuffer(time_image)) - num = num + 1 - if(num == 10): - break - - print("Clear...") - epd.Clear(0xFF) - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Jetson Nano/python3/examples/epd_2in9d_test.py b/Jetson Nano/python3/examples/epd_2in9d_test.py deleted file mode 100644 index 34f5f71..0000000 --- a/Jetson Nano/python3/examples/epd_2in9d_test.py +++ /dev/null @@ -1,101 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd2in9d -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd2in9d Demo") - - epd = epd2in9d.EPD() - print("init and Clear") - epd.init() - epd.Clear(0xFF) - - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - Himage = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - draw = ImageDraw.Draw(Himage) - draw.text((10, 0), 'hello world', font = font24, fill = 0) - draw.text((10, 20), '2.9inch e-Paper d', font = font24, fill = 0) - draw.text((150, 0), u'寰洩鐢靛瓙', font = font24, fill = 0) - draw.line((20, 50, 70, 100), fill = 0) - draw.line((70, 50, 20, 100), fill = 0) - draw.rectangle((20, 50, 70, 100), outline = 0) - draw.line((165, 50, 165, 100), fill = 0) - draw.line((140, 75, 190, 75), fill = 0) - draw.arc((140, 50, 190, 100), 0, 360, fill = 0) - draw.rectangle((80, 50, 130, 100), fill = 0) - draw.chord((200, 50, 250, 100), 0, 360, fill = 0) - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") - Limage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - draw = ImageDraw.Draw(Limage) - draw.text((2, 0), 'hello world', font = font18, fill = 0) - draw.text((2, 20), '2.9inch epd d', font = font18, fill = 0) - draw.text((20, 50), u'寰洩鐢靛瓙', font = font18, fill = 0) - draw.line((10, 90, 60, 140), fill = 0) - draw.line((60, 90, 10, 140), fill = 0) - draw.rectangle((10, 90, 60, 140), outline = 0) - draw.line((95, 90, 95, 140), fill = 0) - draw.line((70, 115, 120, 115), fill = 0) - draw.arc((70, 90, 120, 140), 0, 360, fill = 0) - draw.rectangle((10, 150, 60, 200), fill = 0) - draw.chord((70, 150, 120, 200), 0, 360, fill = 0) - epd.display(epd.getbuffer(Limage)) - time.sleep(2) - - print("3.read bmp file") - Himage = Image.open('../pic/2in9d.bmp') - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - print("4.read bmp file on window") - Himage2 = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') - Himage2.paste(bmp, (50,10)) - epd.display(epd.getbuffer(Himage2)) - time.sleep(2) - - # # partial update - print("5.show time...") - epd.init() - epd.Clear(0xFF) - - time_image = Image.new('1', (epd.width, epd.height), 255) - time_draw = ImageDraw.Draw(time_image) - num = 0 - while (True): - time_draw.rectangle((10, 10, 120, 50), fill = 255) - time_draw.text((10, 10), time.strftime('%H:%M:%S'), font = font24, fill = 0) - newimage = time_image.crop([10, 10, 120, 50]) - time_image.paste(newimage, (10,10)) - epd.display(epd.getbuffer(time_image)) - num = num + 1 - if(num == 10): - break - - print("Clear...") - epd.Clear(0xFF) - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Jetson Nano/python3/examples/epd_4in2_test.py b/Jetson Nano/python3/examples/epd_4in2_test.py deleted file mode 100644 index 6343f58..0000000 --- a/Jetson Nano/python3/examples/epd_4in2_test.py +++ /dev/null @@ -1,84 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd4in2 -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd4in2 Demo") - - epd = epd4in2.EPD() - print("init and Clear") - epd.init() - epd.Clear() - - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - Himage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - draw = ImageDraw.Draw(Himage) - draw.text((10, 0), 'hello world', font = font24, fill = 0) - draw.text((10, 20), '4.2inch e-Paper', font = font24, fill = 0) - draw.text((150, 0), u'寰洩鐢靛瓙', font = font24, fill = 0) - draw.line((20, 50, 70, 100), fill = 0) - draw.line((70, 50, 20, 100), fill = 0) - draw.rectangle((20, 50, 70, 100), outline = 0) - draw.line((165, 50, 165, 100), fill = 0) - draw.line((140, 75, 190, 75), fill = 0) - draw.arc((140, 50, 190, 100), 0, 360, fill = 0) - draw.rectangle((80, 50, 130, 100), fill = 0) - draw.chord((200, 50, 250, 100), 0, 360, fill = 0) - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") - Limage = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - draw = ImageDraw.Draw(Limage) - draw.text((2, 0), 'hello world', font = font18, fill = 0) - draw.text((2, 20), '4.2inch epd', font = font18, fill = 0) - draw.text((20, 50), u'寰洩鐢靛瓙', font = font18, fill = 0) - draw.line((10, 90, 60, 140), fill = 0) - draw.line((60, 90, 10, 140), fill = 0) - draw.rectangle((10, 90, 60, 140), outline = 0) - draw.line((95, 90, 95, 140), fill = 0) - draw.line((70, 115, 120, 115), fill = 0) - draw.arc((70, 90, 120, 140), 0, 360, fill = 0) - draw.rectangle((10, 150, 60, 200), fill = 0) - draw.chord((70, 150, 120, 200), 0, 360, fill = 0) - epd.display(epd.getbuffer(Limage)) - time.sleep(2) - - print("3.read bmp file") - Himage = Image.open('../pic/4in2.bmp') - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - print("4.read bmp file on window") - Himage2 = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') - Himage2.paste(bmp, (50,10)) - epd.display(epd.getbuffer(Himage2)) - time.sleep(2) - - print("Clear...") - epd.init() - epd.Clear() - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Jetson Nano/python3/examples/epd_4in2bc_test.py b/Jetson Nano/python3/examples/epd_4in2bc_test.py deleted file mode 100644 index ad1abda..0000000 --- a/Jetson Nano/python3/examples/epd_4in2bc_test.py +++ /dev/null @@ -1,95 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd4in2bc -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd4in2bc Demo") - - epd = epd4in2bc.EPD() - print("init and Clear") - epd.init() - epd.Clear() - time.sleep(1) - - # Drawing on the image - print("Drawing") - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - HBlackimage = Image.new('1', (epd.width, epd.height), 255) # 298*126 - HRYimage = Image.new('1', (epd.width, epd.height), 255) # 298*126 ryimage: red or yellow image - drawblack = ImageDraw.Draw(HBlackimage) - drawry = ImageDraw.Draw(HRYimage) - drawblack.text((10, 0), 'hello world', font = font24, fill = 0) - drawblack.text((10, 20), '4.2inch e-Paper bc', font = font24, fill = 0) - drawblack.text((150, 0), u'寰洩鐢靛瓙', font = font24, fill = 0) - drawblack.line((20, 50, 70, 100), fill = 0) - drawblack.line((70, 50, 20, 100), fill = 0) - drawblack.rectangle((20, 50, 70, 100), outline = 0) - drawry.line((165, 50, 165, 100), fill = 0) - drawry.line((140, 75, 190, 75), fill = 0) - drawry.arc((140, 50, 190, 100), 0, 360, fill = 0) - drawry.rectangle((80, 50, 130, 100), fill = 0) - drawry.chord((200, 50, 250, 100), 0, 360, fill = 0) - epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRYimage)) - time.sleep(2) - - # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") - LBlackimage = Image.new('1', (epd.height, epd.width), 255) # 126*298 - LRYimage = Image.new('1', (epd.height, epd.width), 255) # 126*298 - drawblack = ImageDraw.Draw(LBlackimage) - drawry = ImageDraw.Draw(LRYimage) - - drawblack.text((2, 0), 'hello world', font = font18, fill = 0) - drawblack.text((2, 20), '4.2inch epd bc', font = font18, fill = 0) - drawblack.text((20, 50), u'寰洩鐢靛瓙', font = font18, fill = 0) - drawblack.line((10, 90, 60, 140), fill = 0) - drawblack.line((60, 90, 10, 140), fill = 0) - drawblack.rectangle((10, 90, 60, 140), outline = 0) - drawry.line((95, 90, 95, 140), fill = 0) - drawry.line((70, 115, 120, 115), fill = 0) - drawry.arc((70, 90, 120, 140), 0, 360, fill = 0) - drawry.rectangle((10, 150, 60, 200), fill = 0) - drawry.chord((70, 150, 120, 200), 0, 360, fill = 0) - epd.display(epd.getbuffer(LBlackimage), epd.getbuffer(LRYimage)) - time.sleep(2) - - print("3.read bmp file") - HBlackimage = Image.open('../pic/4in2b-b.bmp') - HRYimage = Image.open('../pic/4in2b-r.bmp') - # HBlackimage = Image.open('../pic/4in2c-b.bmp') - # HRYimage = Image.open('../pic/4in2c-y.bmp') - epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRYimage)) - time.sleep(2) - - print("4.read bmp file on window") - blackimage1 = Image.new('1', (epd.width, epd.height), 255) # 298*126 - redimage1 = Image.new('1', (epd.width, epd.height), 255) # 298*126 - newimage = Image.open('../pic/100x100.bmp') - blackimage1.paste(newimage, (50,10)) - epd.display(epd.getbuffer(blackimage1), epd.getbuffer(redimage1)) - - print("Clear...") - epd.init() - epd.Clear() - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Jetson Nano/python3/examples/epd_5in83_test.py b/Jetson Nano/python3/examples/epd_5in83_test.py deleted file mode 100644 index cb7858c..0000000 --- a/Jetson Nano/python3/examples/epd_5in83_test.py +++ /dev/null @@ -1,84 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd5in83 -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd5in83 Demo") - - epd = epd5in83.EPD() - print("init and Clear") - epd.init() - epd.Clear() - - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - Himage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - draw = ImageDraw.Draw(Himage) - draw.text((10, 0), 'hello world', font = font24, fill = 0) - draw.text((10, 20), '5.83inch e-Paper', font = font24, fill = 0) - draw.text((150, 0), u'寰洩鐢靛瓙', font = font24, fill = 0) - draw.line((20, 50, 70, 100), fill = 0) - draw.line((70, 50, 20, 100), fill = 0) - draw.rectangle((20, 50, 70, 100), outline = 0) - draw.line((165, 50, 165, 100), fill = 0) - draw.line((140, 75, 190, 75), fill = 0) - draw.arc((140, 50, 190, 100), 0, 360, fill = 0) - draw.rectangle((80, 50, 130, 100), fill = 0) - draw.chord((200, 50, 250, 100), 0, 360, fill = 0) - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") - Limage = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - draw = ImageDraw.Draw(Limage) - draw.text((2, 0), 'hello world', font = font18, fill = 0) - draw.text((2, 20), '5.83inch epd', font = font18, fill = 0) - draw.text((20, 50), u'寰洩鐢靛瓙', font = font18, fill = 0) - draw.line((10, 90, 60, 140), fill = 0) - draw.line((60, 90, 10, 140), fill = 0) - draw.rectangle((10, 90, 60, 140), outline = 0) - draw.line((95, 90, 95, 140), fill = 0) - draw.line((70, 115, 120, 115), fill = 0) - draw.arc((70, 90, 120, 140), 0, 360, fill = 0) - draw.rectangle((10, 150, 60, 200), fill = 0) - draw.chord((70, 150, 120, 200), 0, 360, fill = 0) - epd.display(epd.getbuffer(Limage)) - time.sleep(2) - - print("3.read bmp file") - Himage = Image.open('../pic/5in83.bmp') - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - print("4.read bmp file on window") - Himage2 = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') - Himage2.paste(bmp, (50,10)) - epd.display(epd.getbuffer(Himage2)) - time.sleep(2) - - print("Clear...") - epd.init() - epd.Clear() - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Jetson Nano/python3/examples/epd_5in83bc_test.py b/Jetson Nano/python3/examples/epd_5in83bc_test.py deleted file mode 100644 index b5e3b39..0000000 --- a/Jetson Nano/python3/examples/epd_5in83bc_test.py +++ /dev/null @@ -1,93 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd5in83bc -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd5in83bc Demo") - - epd = epd5in83bc.EPD() - print("init and Clear") - epd.init() - epd.Clear() - time.sleep(1) - - # Drawing on the image - print("Drawing") - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - HBlackimage = Image.new('1', (epd.width, epd.height), 255) # 298*126 - HRYimage = Image.new('1', (epd.width, epd.height), 255) # 298*126 ryimage: red or yellow image - drawblack = ImageDraw.Draw(HBlackimage) - drawry = ImageDraw.Draw(HRYimage) - drawblack.text((10, 0), 'hello world', font = font24, fill = 0) - drawblack.text((10, 20), '5.83inch e-Paper bc', font = font24, fill = 0) - drawblack.text((150, 0), u'寰洩鐢靛瓙', font = font24, fill = 0) - drawblack.line((20, 50, 70, 100), fill = 0) - drawblack.line((70, 50, 20, 100), fill = 0) - drawblack.rectangle((20, 50, 70, 100), outline = 0) - drawry.line((165, 50, 165, 100), fill = 0) - drawry.line((140, 75, 190, 75), fill = 0) - drawry.arc((140, 50, 190, 100), 0, 360, fill = 0) - drawry.rectangle((80, 50, 130, 100), fill = 0) - drawry.chord((200, 50, 250, 100), 0, 360, fill = 0) - epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRYimage)) - time.sleep(2) - - # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") - LBlackimage = Image.new('1', (epd.height, epd.width), 255) # 126*298 - LRYimage = Image.new('1', (epd.height, epd.width), 255) # 126*298 - drawblack = ImageDraw.Draw(LBlackimage) - drawry = ImageDraw.Draw(LRYimage) - - drawblack.text((2, 0), 'hello world', font = font18, fill = 0) - drawblack.text((2, 20), '5.83inch epd bc', font = font18, fill = 0) - drawblack.text((20, 50), u'寰洩鐢靛瓙', font = font18, fill = 0) - drawblack.line((10, 90, 60, 140), fill = 0) - drawblack.line((60, 90, 10, 140), fill = 0) - drawblack.rectangle((10, 90, 60, 140), outline = 0) - drawry.line((95, 90, 95, 140), fill = 0) - drawry.line((70, 115, 120, 115), fill = 0) - drawry.arc((70, 90, 120, 140), 0, 360, fill = 0) - drawry.rectangle((10, 150, 60, 200), fill = 0) - drawry.chord((70, 150, 120, 200), 0, 360, fill = 0) - epd.display(epd.getbuffer(LBlackimage), epd.getbuffer(LRYimage)) - time.sleep(2) - - print("3.read bmp file") - HBlackimage = Image.open('../pic/5in83bc-b.bmp') - HRYimage = Image.open('../pic/5in83bc-ry.bmp') - epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRYimage)) - time.sleep(2) - - print("4.read bmp file on window") - blackimage1 = Image.new('1', (epd.width, epd.height), 255) # 298*126 - redimage1 = Image.new('1', (epd.width, epd.height), 255) # 298*126 - newimage = Image.open('../pic/100x100.bmp') - blackimage1.paste(newimage, (50,10)) - epd.display(epd.getbuffer(blackimage1), epd.getbuffer(redimage1)) - - print("Clear...") - epd.init() - epd.Clear() - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Jetson Nano/python3/examples/epd_7in5_test.py b/Jetson Nano/python3/examples/epd_7in5_test.py deleted file mode 100644 index eaf11ec..0000000 --- a/Jetson Nano/python3/examples/epd_7in5_test.py +++ /dev/null @@ -1,84 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd7in5 -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd7in5 Demo") - - epd = epd7in5.EPD() - print("init and Clear") - epd.init() - epd.Clear() - - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - Himage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - draw = ImageDraw.Draw(Himage) - draw.text((10, 0), 'hello world', font = font24, fill = 0) - draw.text((10, 20), '7.5inch e-Paper', font = font24, fill = 0) - draw.text((150, 0), u'寰洩鐢靛瓙', font = font24, fill = 0) - draw.line((20, 50, 70, 100), fill = 0) - draw.line((70, 50, 20, 100), fill = 0) - draw.rectangle((20, 50, 70, 100), outline = 0) - draw.line((165, 50, 165, 100), fill = 0) - draw.line((140, 75, 190, 75), fill = 0) - draw.arc((140, 50, 190, 100), 0, 360, fill = 0) - draw.rectangle((80, 50, 130, 100), fill = 0) - draw.chord((200, 50, 250, 100), 0, 360, fill = 0) - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") - Limage = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - draw = ImageDraw.Draw(Limage) - draw.text((2, 0), 'hello world', font = font18, fill = 0) - draw.text((2, 20), '7.5inch epd', font = font18, fill = 0) - draw.text((20, 50), u'寰洩鐢靛瓙', font = font18, fill = 0) - draw.line((10, 90, 60, 140), fill = 0) - draw.line((60, 90, 10, 140), fill = 0) - draw.rectangle((10, 90, 60, 140), outline = 0) - draw.line((95, 90, 95, 140), fill = 0) - draw.line((70, 115, 120, 115), fill = 0) - draw.arc((70, 90, 120, 140), 0, 360, fill = 0) - draw.rectangle((10, 150, 60, 200), fill = 0) - draw.chord((70, 150, 120, 200), 0, 360, fill = 0) - epd.display(epd.getbuffer(Limage)) - time.sleep(2) - - print("3.read bmp file") - Himage = Image.open('../pic/7in5.bmp') - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - print("4.read bmp file on window") - Himage2 = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') - Himage2.paste(bmp, (50,10)) - epd.display(epd.getbuffer(Himage2)) - time.sleep(2) - - print("Clear...") - epd.init() - epd.Clear() - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Jetson Nano/python3/examples/epd_7in5bc_test.py b/Jetson Nano/python3/examples/epd_7in5bc_test.py deleted file mode 100644 index 82153b4..0000000 --- a/Jetson Nano/python3/examples/epd_7in5bc_test.py +++ /dev/null @@ -1,95 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd7in5bc -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd7in5bc Demo") - - epd = epd7in5bc.EPD() - print("init and Clear") - epd.init() - epd.Clear() - time.sleep(1) - - # Drawing on the image - print("Drawing") - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - HBlackimage = Image.new('1', (epd.width, epd.height), 255) # 298*126 - HRYimage = Image.new('1', (epd.width, epd.height), 255) # 298*126 ryimage: red or yellow image - drawblack = ImageDraw.Draw(HBlackimage) - drawry = ImageDraw.Draw(HRYimage) - drawblack.text((10, 0), 'hello world', font = font24, fill = 0) - drawblack.text((10, 20), '7.5inch e-Paper bc', font = font24, fill = 0) - drawblack.text((150, 0), u'寰洩鐢靛瓙', font = font24, fill = 0) - drawblack.line((20, 50, 70, 100), fill = 0) - drawblack.line((70, 50, 20, 100), fill = 0) - drawblack.rectangle((20, 50, 70, 100), outline = 0) - drawry.line((165, 50, 165, 100), fill = 0) - drawry.line((140, 75, 190, 75), fill = 0) - drawry.arc((140, 50, 190, 100), 0, 360, fill = 0) - drawry.rectangle((80, 50, 130, 100), fill = 0) - drawry.chord((200, 50, 250, 100), 0, 360, fill = 0) - epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRYimage)) - time.sleep(2) - - # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") - LBlackimage = Image.new('1', (epd.height, epd.width), 255) # 126*298 - LRYimage = Image.new('1', (epd.height, epd.width), 255) # 126*298 - drawblack = ImageDraw.Draw(LBlackimage) - drawry = ImageDraw.Draw(LRYimage) - - drawblack.text((2, 0), 'hello world', font = font18, fill = 0) - drawblack.text((2, 20), '7.5inch epd bc', font = font18, fill = 0) - drawblack.text((20, 50), u'寰洩鐢靛瓙', font = font18, fill = 0) - drawblack.line((10, 90, 60, 140), fill = 0) - drawblack.line((60, 90, 10, 140), fill = 0) - drawblack.rectangle((10, 90, 60, 140), outline = 0) - drawry.line((95, 90, 95, 140), fill = 0) - drawry.line((70, 115, 120, 115), fill = 0) - drawry.arc((70, 90, 120, 140), 0, 360, fill = 0) - drawry.rectangle((10, 150, 60, 200), fill = 0) - drawry.chord((70, 150, 120, 200), 0, 360, fill = 0) - epd.display(epd.getbuffer(LBlackimage), epd.getbuffer(LRYimage)) - time.sleep(2) - - print("3.read bmp file") - HBlackimage = Image.open('../pic/7in5b-b.bmp') - HRYimage = Image.open('../pic/7in5b-r.bmp') - # HBlackimage = Image.open('../pic/7in5c-b.bmp') - # HRYimage = Image.open('../pic/7in5c-r.bmp') - epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRYimage)) - time.sleep(2) - - print("4.read bmp file on window") - blackimage1 = Image.new('1', (epd.width, epd.height), 255) # 298*126 - redimage1 = Image.new('1', (epd.width, epd.height), 255) # 298*126 - newimage = Image.open('../pic/100x100.bmp') - blackimage1.paste(newimage, (50,10)) - epd.display(epd.getbuffer(blackimage1), epd.getbuffer(redimage1)) - - print("Clear...") - epd.init() - epd.Clear() - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Jetson Nano/python3/lib/Font.ttc b/Jetson Nano/python3/lib/Font.ttc deleted file mode 100644 index 4cbb7c5..0000000 Binary files a/Jetson Nano/python3/lib/Font.ttc and /dev/null differ diff --git a/Jetson Nano/python3/lib/__pycache__/epd1in54.cpython-36.pyc b/Jetson Nano/python3/lib/__pycache__/epd1in54.cpython-36.pyc deleted file mode 100644 index 4f38d73..0000000 Binary files a/Jetson Nano/python3/lib/__pycache__/epd1in54.cpython-36.pyc and /dev/null differ diff --git a/Jetson Nano/python3/lib/__pycache__/epd1in54_V2.cpython-36.pyc b/Jetson Nano/python3/lib/__pycache__/epd1in54_V2.cpython-36.pyc deleted file mode 100644 index 4b7a257..0000000 Binary files a/Jetson Nano/python3/lib/__pycache__/epd1in54_V2.cpython-36.pyc and /dev/null differ diff --git a/Jetson Nano/python3/lib/__pycache__/epd1in54b.cpython-36.pyc b/Jetson Nano/python3/lib/__pycache__/epd1in54b.cpython-36.pyc deleted file mode 100644 index 2614d48..0000000 Binary files a/Jetson Nano/python3/lib/__pycache__/epd1in54b.cpython-36.pyc and /dev/null differ diff --git a/Jetson Nano/python3/lib/__pycache__/epd1in54c.cpython-36.pyc b/Jetson Nano/python3/lib/__pycache__/epd1in54c.cpython-36.pyc deleted file mode 100644 index 95fc097..0000000 Binary files a/Jetson Nano/python3/lib/__pycache__/epd1in54c.cpython-36.pyc and /dev/null differ diff --git a/Jetson Nano/python3/lib/__pycache__/epd2in13.cpython-36.pyc b/Jetson Nano/python3/lib/__pycache__/epd2in13.cpython-36.pyc deleted file mode 100644 index aff19b5..0000000 Binary files a/Jetson Nano/python3/lib/__pycache__/epd2in13.cpython-36.pyc and /dev/null differ diff --git a/Jetson Nano/python3/lib/__pycache__/epd2in13_V2.cpython-36.pyc b/Jetson Nano/python3/lib/__pycache__/epd2in13_V2.cpython-36.pyc deleted file mode 100644 index ba84173..0000000 Binary files a/Jetson Nano/python3/lib/__pycache__/epd2in13_V2.cpython-36.pyc and /dev/null differ diff --git a/Jetson Nano/python3/lib/__pycache__/epd2in13bc.cpython-36.pyc b/Jetson Nano/python3/lib/__pycache__/epd2in13bc.cpython-36.pyc deleted file mode 100644 index c324fcf..0000000 Binary files a/Jetson Nano/python3/lib/__pycache__/epd2in13bc.cpython-36.pyc and /dev/null differ diff --git a/Jetson Nano/python3/lib/__pycache__/epd2in7.cpython-36.pyc b/Jetson Nano/python3/lib/__pycache__/epd2in7.cpython-36.pyc deleted file mode 100644 index 0cb6dac..0000000 Binary files a/Jetson Nano/python3/lib/__pycache__/epd2in7.cpython-36.pyc and /dev/null differ diff --git a/Jetson Nano/python3/lib/__pycache__/epd2in7b.cpython-36.pyc b/Jetson Nano/python3/lib/__pycache__/epd2in7b.cpython-36.pyc deleted file mode 100644 index 018c4c4..0000000 Binary files a/Jetson Nano/python3/lib/__pycache__/epd2in7b.cpython-36.pyc and /dev/null differ diff --git a/Jetson Nano/python3/lib/__pycache__/epd2in9.cpython-36.pyc b/Jetson Nano/python3/lib/__pycache__/epd2in9.cpython-36.pyc deleted file mode 100644 index d7def41..0000000 Binary files a/Jetson Nano/python3/lib/__pycache__/epd2in9.cpython-36.pyc and /dev/null differ diff --git a/Jetson Nano/python3/lib/__pycache__/epd2in9bc.cpython-36.pyc b/Jetson Nano/python3/lib/__pycache__/epd2in9bc.cpython-36.pyc deleted file mode 100644 index 329cd94..0000000 Binary files a/Jetson Nano/python3/lib/__pycache__/epd2in9bc.cpython-36.pyc and /dev/null differ diff --git a/Jetson Nano/python3/lib/__pycache__/epd2in9d.cpython-36.pyc b/Jetson Nano/python3/lib/__pycache__/epd2in9d.cpython-36.pyc deleted file mode 100644 index 860f8ad..0000000 Binary files a/Jetson Nano/python3/lib/__pycache__/epd2in9d.cpython-36.pyc and /dev/null differ diff --git a/Jetson Nano/python3/lib/__pycache__/epd4in2.cpython-36.pyc b/Jetson Nano/python3/lib/__pycache__/epd4in2.cpython-36.pyc deleted file mode 100644 index b7edcd9..0000000 Binary files a/Jetson Nano/python3/lib/__pycache__/epd4in2.cpython-36.pyc and /dev/null differ diff --git a/Jetson Nano/python3/lib/__pycache__/epd4in2bc.cpython-36.pyc b/Jetson Nano/python3/lib/__pycache__/epd4in2bc.cpython-36.pyc deleted file mode 100644 index 1dc4708..0000000 Binary files a/Jetson Nano/python3/lib/__pycache__/epd4in2bc.cpython-36.pyc and /dev/null differ diff --git a/Jetson Nano/python3/lib/__pycache__/epd7in5bc.cpython-36.pyc b/Jetson Nano/python3/lib/__pycache__/epd7in5bc.cpython-36.pyc deleted file mode 100644 index 41c49a9..0000000 Binary files a/Jetson Nano/python3/lib/__pycache__/epd7in5bc.cpython-36.pyc and /dev/null differ diff --git a/Jetson Nano/python3/lib/__pycache__/epdconfig.cpython-36.pyc b/Jetson Nano/python3/lib/__pycache__/epdconfig.cpython-36.pyc deleted file mode 100644 index dd24df4..0000000 Binary files a/Jetson Nano/python3/lib/__pycache__/epdconfig.cpython-36.pyc and /dev/null differ diff --git a/Jetson Nano/python3/lib/epd1in54_V2.py b/Jetson Nano/python3/lib/epd1in54_V2.py deleted file mode 100644 index 76136ed..0000000 --- a/Jetson Nano/python3/lib/epd1in54_V2.py +++ /dev/null @@ -1,206 +0,0 @@ -# ***************************************************************************** -# * | File : epd1in54_V2.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V1 -# * | Date : 2019-06-20 -# # | Info : python3 demo -# ----------------------------------------------------------------------------- -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and//or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - -import epdconfig - -# Display resolution -EPD_WIDTH = 200 -EPD_HEIGHT = 200 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 1): - epdconfig.delay_ms(100) - print("e-Paper busy release") - - def TurnOnDisplay(self): - self.send_command(0x22) # DISPLAY_UPDATE_CONTROL_2 - self.send_data(0xF7) - self.send_command(0x20) # MASTER_ACTIVATION - - self.ReadBusy() - - def TurnOnDisplayPart(self): - self.send_command(0x22) # DISPLAY_UPDATE_CONTROL_2 - self.send_data(0xFF) - self.send_command(0x20) # MASTER_ACTIVATION - - self.ReadBusy() - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - - # EPD hardware init start - self.reset() - - self.ReadBusy() - self.send_command(0x12) # SWRESET - self.ReadBusy() - - self.send_command(0x01) # DRIVER_OUTPUT_CONTROL - self.send_data(0xC7) # (EPD_HEIGHT - 1) & 0xFF - self.send_data(0x00) # ((EPD_HEIGHT - 1) >> 8) & 0xFF - self.send_data(0x01) # GD = 0 SM = 0 TB = 0 - - self.send_command(0x11) # data entry mode - self.send_data(0x01) - - self.send_command(0x44) # set Ram-X address start//end position - self.send_data(0x00) - self.send_data(0x18) # 0x0C-->(18+1)*8=200 - - self.send_command(0x45) # set Ram-Y address start//end position - self.send_data(0xC7) # 0xC7-->(199+1)=200 - self.send_data(0x00) - self.send_data(0x00) - self.send_data(0x00) - - self.send_command(0x3C) # BorderWavefrom - self.send_data(0x01) - - self.send_command(0x18) - self.send_data(0x80) - - self.send_command(0x22) # #Load Temperature and waveform setting. - self.send_data(0XB1) - self.send_command(0x20) - - self.send_command(0x4E) # set RAM x address count to 0; - self.send_data(0x00) - self.send_command(0x4F) # set RAM y address count to 0X199; - self.send_data(0xC7) - self.send_data(0x00) - - self.ReadBusy() - - def Clear(self, color): - self.send_command(0x24) - for j in range(0, self.height): - for i in range(0, self.width // 8): - self.send_data(color) - self.TurnOnDisplay() - - def getbuffer(self, image): - buf = [0xFF] * ((self.width//8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - if(imwidth == self.width and imheight == self.height): - print("Horizontal") - 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] == 0: - buf[(x + y * self.width) // 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Vertical") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) // 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, image): - if (image == None): - return - - self.send_command(0x24) - for j in range(0, self.height): - for i in range(0, self.width // 8): - self.send_data(image[i + j * (self.width // 8)]) - self.TurnOnDisplay() - - def displayPartBaseImage(self, image): - if (image == None): - return - - self.send_command(0x24) - for j in range(0, self.height): - for i in range(0, self.width // 8): - self.send_data(image[i + j * (self.width // 8)]) - - self.send_command(0x26) - for j in range(0, self.height): - for i in range(0, self.width // 8): - self.send_data(image[i + j * (self.width // 8)]) - - self.TurnOnDisplayPart() - - def displayPart(self, image): - if (image == None): - return - - self.send_command(0x24) - for j in range(0, self.height): - for i in range(0, self.width // 8): - self.send_data(image[i + j * (self.width // 8)]) - - self.TurnOnDisplayPart() - - def sleep(self): - self.send_command(0x10) # DEEP_SLEEP_MODE - self.send_data(0x01) - - epdconfig.module_exit() - -### END OF FILE ### - diff --git a/Jetson Nano/python3/lib/epd1in54c.py b/Jetson Nano/python3/lib/epd1in54c.py deleted file mode 100644 index 2880b1c..0000000 --- a/Jetson Nano/python3/lib/epd1in54c.py +++ /dev/null @@ -1,152 +0,0 @@ -# ***************************************************************************** -# * | File : epd1in54c.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-20 -# # | Info : python3 demo -# ----------------------------------------------------------------------------- -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and//or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -import epdconfig - -# Display resolution -EPD_WIDTH = 152 -EPD_HEIGHT = 152 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(1) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(10) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - epdconfig.delay_ms(200) - print("e-Paper busy release") - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - # EPD hardware init start - self.reset() - - self.send_command(0x06) # boost soft start - self.send_data(0x17) - self.send_data(0x17) - self.send_data(0x17) - self.send_command(0x04) # power on - - self.ReadBusy() - - self.send_command(0x00) # panel setting - self.send_data(0x0f) # LUT from OTP,160x296 - self.send_data(0x0d) # VCOM to 0V fast - - self.send_command(0x61) # resolution setting - self.send_data(0x98) - self.send_data(0x00) - self.send_data(0x98) - - self.send_command(0x50) - self.send_data(0x77) - - def getbuffer(self, image): - buf = [0xFF] * ((self.width//8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - if(imwidth == self.width and imheight == self.height): - print("Horizontal") - 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] == 0: - buf[(x + y * self.width) // 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Vertical") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) // 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, blackimage, yellowimage): - self.send_command(0x10) - print("blackimage") - for i in range(0, self.width * self.height // 8): - self.send_data(blackimage[i]) - self.send_command(0x13) - print("yellowimage") - for i in range(0, self.width * self.height // 8): - self.send_data(yellowimage[i]) - - self.send_command(0x12) - self.ReadBusy() - - def Clear(self): - self.send_command(0x10) - for i in range(0, self.width * self.height // 8): - self.send_data(0xFF) - self.send_command(0x13) - for i in range(0, self.width * self.height // 8): - self.send_data(0xFF) - - self.send_command(0x12) - self.ReadBusy() - - # after this, call epd.init() to awaken the module - def sleep(self): - self.send_command(0X02) # power off - self.ReadBusy() - self.send_command(0X07) # deep sleep - self.send_data(0xA5) - - epdconfig.module_exit() -### END OF FILE ### - diff --git a/Jetson Nano/python3/lib/epd2in13_V2.py b/Jetson Nano/python3/lib/epd2in13_V2.py deleted file mode 100644 index f4407ff..0000000 --- a/Jetson Nano/python3/lib/epd2in13_V2.py +++ /dev/null @@ -1,315 +0,0 @@ -# ***************************************************************************** -# * | File : epd2in13_V2.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-20 -# # | Info : python3 demo -# ----------------------------------------------------------------------------- -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and//or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - - -import epdconfig -import numpy as np - -# Display resolution -EPD_WIDTH = 122 -EPD_HEIGHT = 250 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - FULL_UPDATE = 0 - PART_UPDATE = 1 - lut_full_update= [ - 0x80,0x60,0x40,0x00,0x00,0x00,0x00, #LUT0: BB: VS 0 ~7 - 0x10,0x60,0x20,0x00,0x00,0x00,0x00, #LUT1: BW: VS 0 ~7 - 0x80,0x60,0x40,0x00,0x00,0x00,0x00, #LUT2: WB: VS 0 ~7 - 0x10,0x60,0x20,0x00,0x00,0x00,0x00, #LUT3: WW: VS 0 ~7 - 0x00,0x00,0x00,0x00,0x00,0x00,0x00, #LUT4: VCOM: VS 0 ~7 - - 0x03,0x03,0x00,0x00,0x02, # TP0 A~D RP0 - 0x09,0x09,0x00,0x00,0x02, # TP1 A~D RP1 - 0x03,0x03,0x00,0x00,0x02, # TP2 A~D RP2 - 0x00,0x00,0x00,0x00,0x00, # TP3 A~D RP3 - 0x00,0x00,0x00,0x00,0x00, # TP4 A~D RP4 - 0x00,0x00,0x00,0x00,0x00, # TP5 A~D RP5 - 0x00,0x00,0x00,0x00,0x00, # TP6 A~D RP6 - - 0x15,0x41,0xA8,0x32,0x30,0x0A, - ] - - lut_partial_update = [ #20 bytes - 0x00,0x00,0x00,0x00,0x00,0x00,0x00, #LUT0: BB: VS 0 ~7 - 0x80,0x00,0x00,0x00,0x00,0x00,0x00, #LUT1: BW: VS 0 ~7 - 0x40,0x00,0x00,0x00,0x00,0x00,0x00, #LUT2: WB: VS 0 ~7 - 0x00,0x00,0x00,0x00,0x00,0x00,0x00, #LUT3: WW: VS 0 ~7 - 0x00,0x00,0x00,0x00,0x00,0x00,0x00, #LUT4: VCOM: VS 0 ~7 - - 0x0A,0x00,0x00,0x00,0x00, # TP0 A~D RP0 - 0x00,0x00,0x00,0x00,0x00, # TP1 A~D RP1 - 0x00,0x00,0x00,0x00,0x00, # TP2 A~D RP2 - 0x00,0x00,0x00,0x00,0x00, # TP3 A~D RP3 - 0x00,0x00,0x00,0x00,0x00, # TP4 A~D RP4 - 0x00,0x00,0x00,0x00,0x00, # TP5 A~D RP5 - 0x00,0x00,0x00,0x00,0x00, # TP6 A~D RP6 - - 0x15,0x41,0xA8,0x32,0x30,0x0A, - ] - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - while(epdconfig.digital_read(self.busy_pin) == 1): # 0: idle, 1: busy - epdconfig.delay_ms(100) - - def TurnOnDisplay(self): - self.send_command(0x22) - self.send_data(0xC7) - self.send_command(0x20) - self.ReadBusy() - - def TurnOnDisplayPart(self): - self.send_command(0x22) - self.send_data(0x0c) - self.send_command(0x20) - self.ReadBusy() - - def init(self, update): - if (epdconfig.module_init() != 0): - return -1 - # EPD hardware init start - self.reset() - if(update == self.FULL_UPDATE): - self.ReadBusy() - self.send_command(0x12) # soft reset - self.ReadBusy() - - self.send_command(0x74) #set analog block control - self.send_data(0x54) - self.send_command(0x7E) #set digital block control - self.send_data(0x3B) - - self.send_command(0x01) #Driver output control - self.send_data(0xF9) - self.send_data(0x00) - self.send_data(0x00) - - self.send_command(0x11) #data entry mode - self.send_data(0x01) - - self.send_command(0x44) #set Ram-X address start//end position - self.send_data(0x00) - self.send_data(0x0F) #0x0C-->(15+1)*8=128 - - self.send_command(0x45) #set Ram-Y address start//end position - self.send_data(0xF9) #0xF9-->(249+1)=250 - self.send_data(0x00) - self.send_data(0x00) - self.send_data(0x00) - - self.send_command(0x3C) #BorderWavefrom - self.send_data(0x03) - - self.send_command(0x2C) #VCOM Voltage - self.send_data(0x55) # - - self.send_command(0x03) - self.send_data(self.lut_full_update[70]) - - self.send_command(0x04) # - self.send_data(self.lut_full_update[71]) - self.send_data(self.lut_full_update[72]) - self.send_data(self.lut_full_update[73]) - - self.send_command(0x3A) #Dummy Line - self.send_data(self.lut_full_update[74]) - self.send_command(0x3B) #Gate time - self.send_data(self.lut_full_update[75]) - - self.send_command(0x32) - for count in range(70): - self.send_data(self.lut_full_update[count]) - - self.send_command(0x4E) # set RAM x address count to 0 - self.send_data(0x00) - self.send_command(0x4F) # set RAM y address count to 0X127 - self.send_data(0xF9) - self.send_data(0x00) - self.ReadBusy() - else: - self.send_command(0x2C) #VCOM Voltage - self.send_data(0x26) - - self.ReadBusy() - - self.send_command(0x32) - for count in range(70): - self.send_data(self.lut_partial_update[count]) - - self.send_command(0x37) - self.send_data(0x00) - self.send_data(0x00) - self.send_data(0x00) - self.send_data(0x00) - self.send_data(0x40) - self.send_data(0x00) - self.send_data(0x00) - - self.send_command(0x22) - self.send_data(0xC0) - self.send_command(0x20) - self.ReadBusy() - - self.send_command(0x3C) #BorderWavefrom - self.send_data(0x01) - return 0 - - def getbuffer(self, image): - if self.width%8 == 0: - linewidth = self.width//8 - else: - linewidth = self.width//8 + 1 - - buf = [0xFF] * (linewidth * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - - if(imwidth == self.width and imheight == self.height): - print("Vertical") - for y in range(imheight): - for x in range(imwidth): - if pixels[x, y] == 0: - x = imwidth - x - buf[x // 8 + y * linewidth] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Horizontal") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - newy = imwidth - newy - 1 - buf[newx // 8 + newy*linewidth] &= ~(0x80 >> (y % 8)) - return buf - - - def display(self, image): - if self.width%8 == 0: - linewidth = self.width//8 - else: - linewidth = self.width//8 + 1 - - self.send_command(0x24) - for j in range(0, self.height): - for i in range(0, linewidth): - self.send_data(image[i + j * linewidth]) - self.TurnOnDisplay() - - def displayPartial(self, image): - if self.width%8 == 0: - linewidth = self.width//8 - else: - linewidth = self.width//8 + 1 - - self.send_command(0x24) - for j in range(0, self.height): - for i in range(0, linewidth): - self.send_data(image[i + j * linewidth]) - - - # self.send_command(0x26) - # for j in range(0, self.height): - # for i in range(0, linewidth): - # self.send_data(~image[i + j * linewidth]) - self.TurnOnDisplayPart() - - def displayPartBaseImage(self, image): - if self.width%8 == 0: - linewidth = self.width//8 - else: - linewidth = self.width//8 + 1 - - self.send_command(0x24) - for j in range(0, self.height): - for i in range(0, linewidth): - self.send_data(image[i + j * linewidth]) - - - self.send_command(0x26) - for j in range(0, self.height): - for i in range(0, linewidth): - self.send_data(image[i + j * linewidth]) - self.TurnOnDisplay() - - def Clear(self, color): - if self.width%8 == 0: - linewidth = self.width//8 - else: - linewidth = self.width//8 + 1 - # print(linewidth) - - self.send_command(0x24) - for j in range(0, self.height): - for i in range(0, linewidth): - self.send_data(color) - self.TurnOnDisplay() - - def sleep(self): - self.send_command(0x22) #POWER OFF - self.send_data(0xC3) - self.send_command(0x20) - - self.send_command(0x10) #enter deep sleep - self.send_data(0x01) - epdconfig.delay_ms(100) - - epdconfig.module_exit() - -### END OF FILE ### - diff --git a/Jetson Nano/python3/lib/epd2in13bc.py b/Jetson Nano/python3/lib/epd2in13bc.py deleted file mode 100644 index aad8f47..0000000 --- a/Jetson Nano/python3/lib/epd2in13bc.py +++ /dev/null @@ -1,158 +0,0 @@ -# ***************************************************************************** -# * | File : epd2in13bc.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-20 -# # | Info : python3 demo -# ----------------------------------------------------------------------------- -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and//or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - -import epdconfig - -# Display resolution -EPD_WIDTH = 104 -EPD_HEIGHT = 212 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - epdconfig.delay_ms(100) - print("e-Paper busy release") - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - - self.reset() - - self.send_command(0x06) # BOOSTER_SOFT_START - self.send_data(0x17) - self.send_data(0x17) - self.send_data(0x17) - - self.send_command(0x04) # POWER_ON - self.ReadBusy() - - self.send_command(0x00) # PANEL_SETTING - self.send_data(0x8F) - - self.send_command(0x50) # VCOM_AND_DATA_INTERVAL_SETTING - self.send_data(0xF0) - - self.send_command(0x61) # RESOLUTION_SETTING - self.send_data(self.width & 0xff) - self.send_data(self.height >> 8) - self.send_data(self.height & 0xff) - return 0 - - def getbuffer(self, image): - # print "bufsiz = ",(self.width//8) * self.height - buf = [0xFF] * ((self.width//8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight - if(imwidth == self.width and imheight == self.height): - print("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] == 0: - buf[(x + y * self.width) // 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Horizontal") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) // 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, imageblack, imagered): - self.send_command(0x10) - for i in range(0, self.width * self.height // 8): - self.send_data(imageblack[i]) - self.send_command(0x92) - - self.send_command(0x13) - for i in range(0, self.width * self.height // 8): - self.send_data(imagered[i]) - self.send_command(0x92) - - self.send_command(0x12) # REFRESH - self.ReadBusy() - - def Clear(self): - self.send_command(0x10) - for i in range(0, self.width * self.height // 8): - self.send_data(0xFF) - self.send_command(0x92) - - self.send_command(0x13) - for i in range(0, self.width * self.height // 8): - self.send_data(0xFF) - self.send_command(0x92) - - self.send_command(0x12) # REFRESH - self.ReadBusy() - - def sleep(self): - self.send_command(0x02) # POWER_OFF - self.ReadBusy() - self.send_command(0x07) # DEEP_SLEEP - self.send_data(0xA5) # check code - - epdconfig.module_exit() -### END OF FILE ### - diff --git a/Jetson Nano/python3/lib/epd2in13d.py b/Jetson Nano/python3/lib/epd2in13d.py deleted file mode 100644 index 30b4fa0..0000000 --- a/Jetson Nano/python3/lib/epd2in13d.py +++ /dev/null @@ -1,357 +0,0 @@ -# ***************************************************************************** -# * | File : epd2in13d.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-20 -# # | Info : python3 demo -# ----------------------------------------------------------------------------- -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and//or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - - -import epdconfig -from PIL import Image -import RPi.GPIO as GPIO - -# Display resolution -EPD_WIDTH = 104 -EPD_HEIGHT = 212 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - lut_vcomDC = [ - 0x00, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x60, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x00, 0x14, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, - ] - - lut_ww = [ - 0x40, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x40, 0x14, 0x00, 0x00, 0x00, 0x01, - 0xA0, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - - lut_bw = [ - 0x40, 0x17, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x0F, 0x0F, 0x00, 0x00, 0x03, - 0x40, 0x0A, 0x01, 0x00, 0x00, 0x01, - 0xA0, 0x0E, 0x0E, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - - lut_wb = [ - 0x80, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x80, 0x14, 0x00, 0x00, 0x00, 0x01, - 0x50, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - - lut_bb = [ - 0x80, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x80, 0x14, 0x00, 0x00, 0x00, 0x01, - 0x50, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - - lut_vcom1 = [ - 0x00, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, - ] - - lut_ww1 = [ - 0x00, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, - ] - - lut_bw1 = [ - 0x80, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, - ] - - lut_wb1 = [ - 0x40, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, - ] - - lut_bb1 = [ - 0x00, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, - ] - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - self.send_command(0x71) - epdconfig.delay_ms(100) - print("e-Paper busy release") - - def TurnOnDisplay(self): - self.send_command(0x12) - epdconfig.delay_ms(10) - self.ReadBusy() - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - # EPD hardware init start - self.reset() - - self.send_command(0x01) # POWER SETTING - self.send_data(0x03) - self.send_data(0x00) - self.send_data(0x2b) - self.send_data(0x2b) - self.send_data(0x03) - - self.send_command(0x06) # boost soft start - self.send_data(0x17) # A - self.send_data(0x17) # B - self.send_data(0x17) # C - - self.send_command(0x04) - self.ReadBusy() - - self.send_command(0x00) # panel setting - self.send_data(0xbf) # LUT from OTP,128x296 - self.send_data(0x0d) # VCOM to 0V fast - - self.send_command(0x30) # PLL setting - self.send_data(0x3a) # 3a 100HZ 29 150Hz 39 200HZ 31 171HZ - - self.send_command(0x61) # resolution setting - self.send_data(self.width) - self.send_data((self.height >> 8) & 0xff) - self.send_data(self.height& 0xff) - - self.send_command(0x82) # vcom_DC setting - self.send_data(0x28) - return 0 - - def SetFullReg(self): - self.send_command(0x82) - self.send_data(0x00) - self.send_command(0X50) - self.send_data(0x97) - - self.send_command(0x20) # vcom - for count in range(0, 44): - self.send_data(self.lut_vcomDC[count]) - self.send_command(0x21) # ww -- - for count in range(0, 42): - self.send_data(self.lut_ww[count]) - self.send_command(0x22) # bw r - for count in range(0, 42): - self.send_data(self.lut_bw[count]) - self.send_command(0x23) # wb w - for count in range(0, 42): - self.send_data(self.lut_wb[count]) - self.send_command(0x24) # bb b - for count in range(0, 42): - self.send_data(self.lut_bb[count]) - - def SetPartReg(self): - self.send_command(0x82) - self.send_data(0x03) - self.send_command(0X50) - self.send_data(0x47) - - self.send_command(0x20) # vcom - for count in range(0, 44): - self.send_data(self.lut_vcom1[count]) - self.send_command(0x21) # ww -- - for count in range(0, 42): - self.send_data(self.lut_ww1[count]) - self.send_command(0x22) # bw r - for count in range(0, 42): - self.send_data(self.lut_bw1[count]) - self.send_command(0x23) # wb w - for count in range(0, 42): - self.send_data(self.lut_wb1[count]) - self.send_command(0x24) # bb b - for count in range(0, 42): - self.send_data(self.lut_bb1[count]) - - def getbuffer(self, image): - # print "bufsiz = ",(self.width//8) * self.height - buf = [0xFF] * ((self.width//8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight - if(imwidth == self.width and imheight == self.height): - print "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] == 0: - buf[(x + y * self.width) // 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print "Horizontal" - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) // 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, image): - if (Image == None): - return - - self.send_command(0x10) - for i in range(0, self.width * self.height // 8): - self.send_data(0x00) - epdconfig.delay_ms(10) - - self.send_command(0x13) - for i in range(0, self.width * self.height // 8): - self.send_data(image[i]) - epdconfig.delay_ms(10) - - self.SetFullReg() - self.TurnOnDisplay() - - def DisplayPartial(self, image): - if (Image == None): - return - - self.SetPartReg() - self.send_command(0x91) - self.send_command(0x90) - self.send_data(0) - self.send_data(self.width - 1) - - self.send_data(0) - self.send_data(0) - self.send_data(self.height // 256) - self.send_data(self.height % 256 - 1) - self.send_data(0x28) - - self.send_command(0x10) - for i in range(0, self.width * self.height // 8): - self.send_data(image[i]) - epdconfig.delay_ms(10) - - self.send_command(0x13) - for i in range(0, self.width * self.height // 8): - self.send_data(~image[i]) - epdconfig.delay_ms(10) - - self.TurnOnDisplay() - - def Clear(self, color): - self.send_command(0x10) - for i in range(0, self.width * self.height // 8): - self.send_data(0x00) - epdconfig.delay_ms(10) - - self.send_command(0x13) - for i in range(0, self.width * self.height // 8): - self.send_data(0xFF) - epdconfig.delay_ms(10) - - self.SetFullReg() - self.TurnOnDisplay() - - def sleep(self): - self.send_command(0X50) - self.send_data(0xf7) - self.send_command(0X02) # power off - self.send_command(0X07) # deep sleep - self.send_data(0xA5) - - epdconfig.module_exit() - -### END OF FILE ### - diff --git a/Jetson Nano/python3/lib/epd2in7.py b/Jetson Nano/python3/lib/epd2in7.py deleted file mode 100644 index d958c53..0000000 --- a/Jetson Nano/python3/lib/epd2in7.py +++ /dev/null @@ -1,258 +0,0 @@ -# ***************************************************************************** -# * | File : epd2in7.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-20 -# # | Info : python3 demo -# ----------------------------------------------------------------------------- -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and//or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - -import epdconfig - -# Display resolution -EPD_WIDTH = 176 -EPD_HEIGHT = 264 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - lut_vcom_dc = [0x00, 0x00, - 0x00, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x60, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x00, 0x14, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - ] - lut_ww = [ - 0x40, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x40, 0x14, 0x00, 0x00, 0x00, 0x01, - 0xA0, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - lut_bw = [ - 0x40, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x40, 0x14, 0x00, 0x00, 0x00, 0x01, - 0xA0, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - lut_bb = [ - 0x80, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x80, 0x14, 0x00, 0x00, 0x00, 0x01, - 0x50, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - lut_wb = [ - 0x80, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x80, 0x14, 0x00, 0x00, 0x00, 0x01, - 0x50, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - epdconfig.delay_ms(200) - print("e-Paper busy release") - - def set_lut(self): - self.send_command(0x20) # vcom - for count in range(0, 44): - self.send_data(self.lut_vcom_dc[count]) - self.send_command(0x21) # ww -- - for count in range(0, 42): - self.send_data(self.lut_ww[count]) - self.send_command(0x22) # bw r - for count in range(0, 42): - self.send_data(self.lut_bw[count]) - self.send_command(0x23) # wb w - for count in range(0, 42): - self.send_data(self.lut_bb[count]) - self.send_command(0x24) # bb b - for count in range(0, 42): - self.send_data(self.lut_wb[count]) - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - - # EPD hardware init start - self.reset() - - self.send_command(0x01) # POWER_SETTING - self.send_data(0x03) # VDS_EN, VDG_EN - self.send_data(0x00) # VCOM_HV, VGHL_LV[1], VGHL_LV[0] - self.send_data(0x2b) # VDH - self.send_data(0x2b) # VDL - self.send_data(0x09) # VDHR - - self.send_command(0x06) # BOOSTER_SOFT_START - self.send_data(0x07) - self.send_data(0x07) - self.send_data(0x17) - - # Power optimization - self.send_command(0xF8) - self.send_data(0x60) - self.send_data(0xA5) - - # Power optimization - self.send_command(0xF8) - self.send_data(0x89) - self.send_data(0xA5) - - # Power optimization - self.send_command(0xF8) - self.send_data(0x90) - self.send_data(0x00) - - # Power optimization - self.send_command(0xF8) - self.send_data(0x93) - self.send_data(0x2A) - - # Power optimization - self.send_command(0xF8) - self.send_data(0xA0) - self.send_data(0xA5) - - # Power optimization - self.send_command(0xF8) - self.send_data(0xA1) - self.send_data(0x00) - - # Power optimization - self.send_command(0xF8) - self.send_data(0x73) - self.send_data(0x41) - - self.send_command(0x16) # PARTIAL_DISPLAY_REFRESH - self.send_data(0x00) - self.send_command(0x04) # POWER_ON - self.ReadBusy() - - self.send_command(0x00) # PANEL_SETTING - self.send_data(0xAF) # KW-BF KWR-AF BWROTP 0f - - self.send_command(0x30) # PLL_CONTROL - self.send_data(0x3A) # 3A 100HZ 29 150Hz 39 200HZ 31 171HZ - - self.send_command(0x82) # VCM_DC_SETTING_REGISTER - self.send_data(0x12) - self.set_lut() - return 0 - - def getbuffer(self, image): - # print "bufsiz = ",(self.width//8) * self.height - buf = [0xFF] * ((self.width//8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight - if(imwidth == self.width and imheight == self.height): - print("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] == 0: - buf[(x + y * self.width) // 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Horizontal") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) // 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, image): - self.send_command(0x10) - for i in range(0, self.width * self.height // 8): - self.send_data(0xFF) - self.send_command(0x13) - for i in range(0, self.width * self.height // 8): - self.send_data(image[i]) - self.send_command(0x12) - self.ReadBusy() - - def Clear(self, color): - self.send_command(0x10) - for i in range(0, self.width * self.height // 8): - self.send_data(0xFF) - self.send_command(0x13) - for i in range(0, self.width * self.height // 8): - self.send_data(0xFF) - self.send_command(0x12) - self.ReadBusy() - - def sleep(self): - self.send_command(0X50) - self.send_data(0xf7) - self.send_command(0X02) - self.send_command(0X07) - self.send_data(0xA5) - - epdconfig.module_exit() -### END OF FILE ### - diff --git a/Jetson Nano/python3/lib/epd2in7b.py b/Jetson Nano/python3/lib/epd2in7b.py deleted file mode 100644 index 52d0719..0000000 --- a/Jetson Nano/python3/lib/epd2in7b.py +++ /dev/null @@ -1,266 +0,0 @@ -# ***************************************************************************** -# * | File : epd2in7b.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-20 -# # | Info : python3 demo -# ----------------------------------------------------------------------------- -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and//or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - - -import epdconfig - -# Display resolution -EPD_WIDTH = 176 -EPD_HEIGHT = 264 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - lut_vcom_dc = [ - 0x00, 0x00, - 0x00, 0x1A, 0x1A, 0x00, 0x00, 0x01, - 0x00, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0x00, 0x0E, 0x01, 0x0E, 0x01, 0x10, - 0x00, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0x00, 0x04, 0x10, 0x00, 0x00, 0x05, - 0x00, 0x03, 0x0E, 0x00, 0x00, 0x0A, - 0x00, 0x23, 0x00, 0x00, 0x00, 0x01 - ] - - lut_ww = [ - 0x90, 0x1A, 0x1A, 0x00, 0x00, 0x01, - 0x40, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0x84, 0x0E, 0x01, 0x0E, 0x01, 0x10, - 0x80, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0x00, 0x04, 0x10, 0x00, 0x00, 0x05, - 0x00, 0x03, 0x0E, 0x00, 0x00, 0x0A, - 0x00, 0x23, 0x00, 0x00, 0x00, 0x01 - ] - - # R22H r - lut_bw = [ - 0xA0, 0x1A, 0x1A, 0x00, 0x00, 0x01, - 0x00, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0x84, 0x0E, 0x01, 0x0E, 0x01, 0x10, - 0x90, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0xB0, 0x04, 0x10, 0x00, 0x00, 0x05, - 0xB0, 0x03, 0x0E, 0x00, 0x00, 0x0A, - 0xC0, 0x23, 0x00, 0x00, 0x00, 0x01 - ] - - # R23H w - lut_bb = [ - 0x90, 0x1A, 0x1A, 0x00, 0x00, 0x01, - 0x40, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0x84, 0x0E, 0x01, 0x0E, 0x01, 0x10, - 0x80, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0x00, 0x04, 0x10, 0x00, 0x00, 0x05, - 0x00, 0x03, 0x0E, 0x00, 0x00, 0x0A, - 0x00, 0x23, 0x00, 0x00, 0x00, 0x01 - ] - # R24H b - lut_wb = [ - 0x90, 0x1A, 0x1A, 0x00, 0x00, 0x01, - 0x20, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0x84, 0x0E, 0x01, 0x0E, 0x01, 0x10, - 0x10, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0x00, 0x04, 0x10, 0x00, 0x00, 0x05, - 0x00, 0x03, 0x0E, 0x00, 0x00, 0x0A, - 0x00, 0x23, 0x00, 0x00, 0x00, 0x01 - ] - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - epdconfig.delay_ms(100) - print("e-Paper busy release") - - def set_lut(self): - self.send_command(0x20) # vcom - for count in range(0, 44): - self.send_data(self.lut_vcom_dc[count]) - self.send_command(0x21) # ww -- - for count in range(0, 42): - self.send_data(self.lut_ww[count]) - self.send_command(0x22) # bw r - for count in range(0, 42): - self.send_data(self.lut_bw[count]) - self.send_command(0x23) # wb w - for count in range(0, 42): - self.send_data(self.lut_bb[count]) - self.send_command(0x24) # bb b - for count in range(0, 42): - self.send_data(self.lut_wb[count]) - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - - self.reset() - - self.send_command(0x04) # POWER_ON - self.ReadBusy() - - self.send_command(0x00) # PANEL_SETTING - self.send_data(0xaf) #KW-BF KWR-AF BWROTP 0f - - self.send_command(0x30) # PLL_CONTROL - self.send_data(0x3a) #3A 100HZ 29 150Hz 39 200HZ 31 171HZ - - self.send_command(0x01) # POWER_SETTING - self.send_data(0x03) # VDS_EN, VDG_EN - self.send_data(0x00) # VCOM_HV, VGHL_LV[1], VGHL_LV[0] - self.send_data(0x2b) # VDH - self.send_data(0x2b) # VDL - self.send_data(0x09) # VDHR - - self.send_command(0x06) # BOOSTER_SOFT_START - self.send_data(0x07) - self.send_data(0x07) - self.send_data(0x17) - - # Power optimization - self.send_command(0xF8) - self.send_data(0x60) - self.send_data(0xA5) - - # Power optimization - self.send_command(0xF8) - self.send_data(0x89) - self.send_data(0xA5) - - # Power optimization - self.send_command(0xF8) - self.send_data(0x90) - self.send_data(0x00) - - # Power optimization - self.send_command(0xF8) - self.send_data(0x93) - self.send_data(0x2A) - - # Power optimization - self.send_command(0xF8) - self.send_data(0x73) - self.send_data(0x41) - - self.send_command(0x82) # VCM_DC_SETTING_REGISTER - self.send_data(0x12) - self.send_command(0x50) # VCOM_AND_DATA_INTERVAL_SETTING - self.send_data(0x87) # define by OTP - - self.set_lut() - - self.send_command(0x16) # PARTIAL_DISPLAY_REFRESH - self.send_data(0x00) - - return 0 - - def getbuffer(self, image): - # print "bufsiz = ",(self.width//8) * self.height - buf = [0xFF] * ((self.width//8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight - if(imwidth == self.width and imheight == self.height): - print("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] == 0: - buf[(x + y * self.width) // 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Horizontal") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) // 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, imageblack, imagered): - self.send_command(0x10) - for i in range(0, self.width * self.height // 8): - self.send_data(~imageblack[i]) - self.send_command(0x11) - - self.send_command(0x13) - for i in range(0, self.width * self.height // 8): - self.send_data(~imagered[i]) - self.send_command(0x11) - - self.send_command(0x12) - self.ReadBusy() - - def Clear(self): - self.send_command(0x10) - for i in range(0, self.width * self.height // 8): - self.send_data(0x00) - self.send_command(0x11) - - self.send_command(0x13) - for i in range(0, self.width * self.height // 8): - self.send_data(0x00) - self.send_command(0x11) - - self.send_command(0x12) - self.ReadBusy() - - def sleep(self): - self.send_command(0X50) - self.send_data(0xf7) - self.send_command(0X02) - self.send_command(0X07) - self.send_data(0xA5) -### END OF FILE ### - diff --git a/Jetson Nano/python3/lib/epd2in9.py b/Jetson Nano/python3/lib/epd2in9.py deleted file mode 100644 index 604230e..0000000 --- a/Jetson Nano/python3/lib/epd2in9.py +++ /dev/null @@ -1,200 +0,0 @@ -# ***************************************************************************** -# * | File : epd2in9.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-20 -# # | Info : python3 demo -# ----------------------------------------------------------------------------- -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and//or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - -import epdconfig - -# Display resolution -EPD_WIDTH = 128 -EPD_HEIGHT = 296 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - lut_full_update = [ - 0x50, 0xAA, 0x55, 0xAA, 0x11, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0xFF, 0xFF, 0x1F, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - ] - - lut_partial_update = [ - 0x10, 0x18, 0x18, 0x08, 0x18, 0x18, - 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x13, 0x14, 0x44, 0x12, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - ] - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - while(epdconfig.digital_read(self.busy_pin) == 1): # 0: idle, 1: busy - epdconfig.delay_ms(200) - - def TurnOnDisplay(self): - self.send_command(0x22) # DISPLAY_UPDATE_CONTROL_2 - self.send_data(0xC4) - self.send_command(0x20) # MASTER_ACTIVATION - self.send_command(0xFF) # TERMINATE_FRAME_READ_WRITE - - print("e-Paper busy") - self.ReadBusy() - print("e-Paper busy release") - - def SetWindow(self, x_start, y_start, x_end, y_end): - self.send_command(0x44) # SET_RAM_X_ADDRESS_START_END_POSITION - # x point must be the multiple of 8 or the last 3 bits will be ignored - self.send_data((x_start >> 3) & 0xFF) - self.send_data((x_end >> 3) & 0xFF) - self.send_command(0x45) # SET_RAM_Y_ADDRESS_START_END_POSITION - self.send_data(y_start & 0xFF) - self.send_data((y_start >> 8) & 0xFF) - self.send_data(y_end & 0xFF) - self.send_data((y_end >> 8) & 0xFF) - - def SetCursor(self, x, y): - self.send_command(0x4E) # SET_RAM_X_ADDRESS_COUNTER - # x point must be the multiple of 8 or the last 3 bits will be ignored - self.send_data((x >> 3) & 0xFF) - self.send_command(0x4F) # SET_RAM_Y_ADDRESS_COUNTER - self.send_data(y & 0xFF) - self.send_data((y >> 8) & 0xFF) - self.ReadBusy() - - def init(self, lut): - if (epdconfig.module_init() != 0): - return -1 - # EPD hardware init start - self.reset() - - self.send_command(0x01) # DRIVER_OUTPUT_CONTROL - self.send_data((EPD_HEIGHT - 1) & 0xFF) - self.send_data(((EPD_HEIGHT - 1) >> 8) & 0xFF) - self.send_data(0x00) # GD = 0 SM = 0 TB = 0 - - self.send_command(0x0C) # BOOSTER_SOFT_START_CONTROL - self.send_data(0xD7) - self.send_data(0xD6) - self.send_data(0x9D) - - self.send_command(0x2C) # WRITE_VCOM_REGISTER - self.send_data(0xA8) # VCOM 7C - - self.send_command(0x3A) # SET_DUMMY_LINE_PERIOD - self.send_data(0x1A) # 4 dummy lines per gate - - self.send_command(0x3B) # SET_GATE_TIME - self.send_data(0x08) # 2us per line - - self.send_command(0x11) # DATA_ENTRY_MODE_SETTING - self.send_data(0x03) # X increment Y increment - - self.send_command(0x32) # WRITE_LUT_REGISTER - for i in range(0, len(lut)): - self.send_data(lut[i]) - # EPD hardware init end - return 0 - - def getbuffer(self, image): - # print "bufsiz = ",(self.width//8) * self.height - buf = [0xFF] * ((self.width//8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight - if(imwidth == self.width and imheight == self.height): - print("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] == 0: - buf[(x + y * self.width) // 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Horizontal") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) // 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, image): - if (image == None): - return - self.SetWindow(0, 0, self.width - 1, self.height - 1) - for j in range(0, self.height): - self.SetCursor(0, j) - self.send_command(0x24) # WRITE_RAM - for i in range(0, self.width // 8): - self.send_data(image[i + j * (self.width // 8)]) - self.TurnOnDisplay() - - def Clear(self, color): - self.SetWindow(0, 0, self.width - 1, self.height - 1) - for j in range(0, self.height): - self.SetCursor(0, j) - self.send_command(0x24) # WRITE_RAM - for i in range(0, self.width // 8): - self.send_data(color) - self.TurnOnDisplay() - - def sleep(self): - self.send_command(0x10) # DEEP_SLEEP_MODE - self.send_data(0x01) - - epdconfig.module_exit() -### END OF FILE ### - diff --git a/Jetson Nano/python3/lib/epd4in2.py b/Jetson Nano/python3/lib/epd4in2.py deleted file mode 100644 index a748b3d..0000000 --- a/Jetson Nano/python3/lib/epd4in2.py +++ /dev/null @@ -1,240 +0,0 @@ -# ***************************************************************************** -# * | File : epd4in2.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-20 -# # | Info : python3 demo -# ----------------------------------------------------------------------------- -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and//or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - - -import epdconfig -from PIL import Image -import RPi.GPIO as GPIO - -# Display resolution -EPD_WIDTH = 400 -EPD_HEIGHT = 300 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - lut_vcom0 = [ - 0x00, 0x17, 0x00, 0x00, 0x00, 0x02, - 0x00, 0x17, 0x17, 0x00, 0x00, 0x02, - 0x00, 0x0A, 0x01, 0x00, 0x00, 0x01, - 0x00, 0x0E, 0x0E, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - lut_ww = [ - 0x40, 0x17, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x17, 0x17, 0x00, 0x00, 0x02, - 0x40, 0x0A, 0x01, 0x00, 0x00, 0x01, - 0xA0, 0x0E, 0x0E, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - lut_bw = [ - 0x40, 0x17, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x17, 0x17, 0x00, 0x00, 0x02, - 0x40, 0x0A, 0x01, 0x00, 0x00, 0x01, - 0xA0, 0x0E, 0x0E, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - lut_wb = [ - 0x80, 0x17, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x17, 0x17, 0x00, 0x00, 0x02, - 0x80, 0x0A, 0x01, 0x00, 0x00, 0x01, - 0x50, 0x0E, 0x0E, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - lut_bb = [ - 0x80, 0x17, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x17, 0x17, 0x00, 0x00, 0x02, - 0x80, 0x0A, 0x01, 0x00, 0x00, 0x01, - 0x50, 0x0E, 0x0E, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - epdconfig.delay_ms(100) - - def set_lut(self): - self.send_command(0x20) # vcom - for count in range(0, 44): - self.send_data(self.lut_vcom0[count]) - - self.send_command(0x21) # ww -- - for count in range(0, 42): - self.send_data(self.lut_ww[count]) - - self.send_command(0x22) # bw r - for count in range(0, 42): - self.send_data(self.lut_bw[count]) - - self.send_command(0x23) # wb w - for count in range(0, 42): - self.send_data(self.lut_bb[count]) - - self.send_command(0x24) # bb b - for count in range(0, 42): - self.send_data(self.lut_wb[count]) - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - # EPD hardware init start - self.reset() - - self.send_command(0x01) # POWER SETTING - self.send_data(0x03) # VDS_EN, VDG_EN - self.send_data(0x00) # VCOM_HV, VGHL_LV[1], VGHL_LV[0] - self.send_data(0x2b) # VDH - self.send_data(0x2b) # VDL - - self.send_command(0x06) # boost soft start - self.send_data(0x17) - self.send_data(0x17) - self.send_data(0x17) - - self.send_command(0x04) # POWER_ON - self.ReadBusy() - - self.send_command(0x00) # panel setting - self.send_data(0xbf) # KW-BF KWR-AF BWROTP 0f - self.send_data(0x0d) - - self.send_command(0x30) # PLL setting - self.send_data(0x3c) # 3A 100HZ 29 150Hz 39 200HZ 31 171HZ - - self.send_command(0x61) # resolution setting - self.send_data(0x01) - self.send_data(0x90) # 128 - self.send_data(0x01) - self.send_data(0x2c) - - self.send_command(0x82) # vcom_DC setting - self.send_data(0x28) - - self.send_command(0X50) # VCOM AND DATA INTERVAL SETTING - self.send_data(0x97) # 97white border 77black border VBDF 17|D7 VBDW 97 VBDB 57 VBDF F7 VBDW 77 VBDB 37 VBDR B7 - - self.set_lut() - # EPD hardware init end - return 0 - - def getbuffer(self, image): - # print "bufsiz = ",(self.width//8) * self.height - buf = [0xFF] * ((self.width//8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight - if(imwidth == self.width and imheight == self.height): - print("Horizontal") - 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] == 0: - buf[(x + y * self.width) // 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Vertical") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) // 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, image): - self.send_command(0x10) - for i in range(0, self.width * self.height // 8): - self.send_data(0xFF) - - self.send_command(0x13) - for i in range(0, self.width * self.height // 8): - self.send_data(image[i]) - - self.send_command(0x12) - self.ReadBusy() - - def Clear(self): - self.send_command(0x10) - for i in range(0, self.width * self.height // 8): - self.send_data(0xFF) - - self.send_command(0x13) - for i in range(0, self.width * self.height // 8): - self.send_data(0xFF) - - self.send_command(0x12) - self.ReadBusy() - - def sleep(self): - self.send_command(0x02) # POWER_OFF - self.ReadBusy() - self.send_command(0x07) # DEEP_SLEEP - self.send_data(0XA5) - - epdconfig.module_exit() - -### END OF FILE ### - diff --git a/Jetson Nano/python3/lib/epdconfig.py b/Jetson Nano/python3/lib/epdconfig.py deleted file mode 100644 index 403d6a1..0000000 --- a/Jetson Nano/python3/lib/epdconfig.py +++ /dev/null @@ -1,97 +0,0 @@ -# /***************************************************************************** -# * | File : epdconfig.py -# * | Author : Waveshare team -# * | Function : Hardware underlying interface -# * | Info : -# *---------------- -# * | This version: V1.0 -# * | Date : 2019-06-06 -# * | Info : -# ****************************************************************************** -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - -import Jetson.GPIO as GPIO -import time - -import ctypes -# import spidev - -# Pin definition -RST_PIN = 17 -DC_PIN = 25 -CS_PIN = 8 -BUSY_PIN = 24 - -# SPI device, bus = 0, device = 0 -# SPI = spidev.SpiDev(0, 0) - -clib = ctypes.cdll.LoadLibrary -spi = clib('../lib/sysfs_software_spi.so') -# gpio2 = clib('../lib/sysfs_gpio.so') - -def digital_write(pin, value): - GPIO.output(pin, value) - -def digital_read(pin): - return GPIO.input(BUSY_PIN) - # return gpio2.SYSFS_GPIO_Read(15) - -def delay_ms(delaytime): - time.sleep(delaytime / 1000.0) - -def spi_writebyte(data): - # SPI.writebytes(data) - spi.SYSFS_software_spi_transfer(data[0]) - -def module_init(): - # print("module_init") - GPIO.setmode(GPIO.BCM) - GPIO.setwarnings(False) - # print("RST_PIN") - GPIO.setup(RST_PIN, GPIO.OUT) - # print("DC_PIN") - GPIO.setup(DC_PIN, GPIO.OUT) - # print("CS_PIN") - GPIO.setup(CS_PIN, GPIO.OUT) - # print("BUSY_PIN") - GPIO.setup(BUSY_PIN, GPIO.IN) - # SPI.max_speed_hz = 2000000 - # SPI.mode = 0b00 - - # gpio2.SYSFS_GPIO_Export(15) - # gpio2.SYSFS_GPIO_Direction(15, 0) - - spi.SYSFS_software_spi_begin() - return 0 - - -def module_exit(): - print("spi end") - spi.SYSFS_software_spi_end() - - print("close 5V, Module enters 0 power consumption ...") - GPIO.output(RST_PIN, 0) - GPIO.output(DC_PIN, 0) - - GPIO.cleanup() - - - -### END OF FILE ### diff --git a/Jetson Nano/python3/lib/sysfs_gpio.so b/Jetson Nano/python3/lib/sysfs_gpio.so deleted file mode 100644 index b8d9cdd..0000000 Binary files a/Jetson Nano/python3/lib/sysfs_gpio.so and /dev/null differ diff --git a/Jetson Nano/python3/lib/sysfs_software_spi.so b/Jetson Nano/python3/lib/sysfs_software_spi.so deleted file mode 100644 index f9ff3a6..0000000 Binary files a/Jetson Nano/python3/lib/sysfs_software_spi.so and /dev/null differ diff --git a/Jetson Nano/python3/pic/100x100.bmp b/Jetson Nano/python3/pic/100x100.bmp deleted file mode 100644 index 70f4584..0000000 Binary files a/Jetson Nano/python3/pic/100x100.bmp and /dev/null differ diff --git a/Jetson Nano/python3/pic/1in54.bmp b/Jetson Nano/python3/pic/1in54.bmp deleted file mode 100644 index a877bfa..0000000 Binary files a/Jetson Nano/python3/pic/1in54.bmp and /dev/null differ diff --git a/Jetson Nano/python3/pic/1in54b-b.bmp b/Jetson Nano/python3/pic/1in54b-b.bmp deleted file mode 100644 index e992aea..0000000 Binary files a/Jetson Nano/python3/pic/1in54b-b.bmp and /dev/null differ diff --git a/Jetson Nano/python3/pic/1in54b-r.bmp b/Jetson Nano/python3/pic/1in54b-r.bmp deleted file mode 100644 index 68c339b..0000000 Binary files a/Jetson Nano/python3/pic/1in54b-r.bmp and /dev/null differ diff --git a/Jetson Nano/python3/pic/1in54c-b.bmp b/Jetson Nano/python3/pic/1in54c-b.bmp deleted file mode 100644 index 159795e..0000000 Binary files a/Jetson Nano/python3/pic/1in54c-b.bmp and /dev/null differ diff --git a/Jetson Nano/python3/pic/1in54c-y.bmp b/Jetson Nano/python3/pic/1in54c-y.bmp deleted file mode 100644 index fe37382..0000000 Binary files a/Jetson Nano/python3/pic/1in54c-y.bmp and /dev/null differ diff --git a/Jetson Nano/python3/pic/2in13-v2.bmp b/Jetson Nano/python3/pic/2in13-v2.bmp deleted file mode 100644 index 5156852..0000000 Binary files a/Jetson Nano/python3/pic/2in13-v2.bmp and /dev/null differ diff --git a/Jetson Nano/python3/pic/2in13.bmp b/Jetson Nano/python3/pic/2in13.bmp deleted file mode 100644 index a579e2a..0000000 Binary files a/Jetson Nano/python3/pic/2in13.bmp and /dev/null differ diff --git a/Jetson Nano/python3/pic/2in13bc-b.bmp b/Jetson Nano/python3/pic/2in13bc-b.bmp deleted file mode 100644 index 6b70b26..0000000 Binary files a/Jetson Nano/python3/pic/2in13bc-b.bmp and /dev/null differ diff --git a/Jetson Nano/python3/pic/2in13bc-ry.bmp b/Jetson Nano/python3/pic/2in13bc-ry.bmp deleted file mode 100644 index ec5cf02..0000000 Binary files a/Jetson Nano/python3/pic/2in13bc-ry.bmp and /dev/null differ diff --git a/Jetson Nano/python3/pic/2in13d.bmp b/Jetson Nano/python3/pic/2in13d.bmp deleted file mode 100644 index 6f0a83d..0000000 Binary files a/Jetson Nano/python3/pic/2in13d.bmp and /dev/null differ diff --git a/Jetson Nano/python3/pic/2in7.bmp b/Jetson Nano/python3/pic/2in7.bmp deleted file mode 100644 index 48138bb..0000000 Binary files a/Jetson Nano/python3/pic/2in7.bmp and /dev/null differ diff --git a/Jetson Nano/python3/pic/2in7b-b.bmp b/Jetson Nano/python3/pic/2in7b-b.bmp deleted file mode 100644 index d25dec3..0000000 Binary files a/Jetson Nano/python3/pic/2in7b-b.bmp and /dev/null differ diff --git a/Jetson Nano/python3/pic/2in7b-r.bmp b/Jetson Nano/python3/pic/2in7b-r.bmp deleted file mode 100644 index 66d51b1..0000000 Binary files a/Jetson Nano/python3/pic/2in7b-r.bmp and /dev/null differ diff --git a/Jetson Nano/python3/pic/2in9.bmp b/Jetson Nano/python3/pic/2in9.bmp deleted file mode 100644 index c3e0181..0000000 Binary files a/Jetson Nano/python3/pic/2in9.bmp and /dev/null differ diff --git a/Jetson Nano/python3/pic/2in9bc-b.bmp b/Jetson Nano/python3/pic/2in9bc-b.bmp deleted file mode 100644 index d45ff48..0000000 Binary files a/Jetson Nano/python3/pic/2in9bc-b.bmp and /dev/null differ diff --git a/Jetson Nano/python3/pic/2in9bc-ry.bmp b/Jetson Nano/python3/pic/2in9bc-ry.bmp deleted file mode 100644 index 402727c..0000000 Binary files a/Jetson Nano/python3/pic/2in9bc-ry.bmp and /dev/null differ diff --git a/Jetson Nano/python3/pic/2in9d.bmp b/Jetson Nano/python3/pic/2in9d.bmp deleted file mode 100644 index 61e0fd3..0000000 Binary files a/Jetson Nano/python3/pic/2in9d.bmp and /dev/null differ diff --git a/Jetson Nano/python3/pic/4in2.bmp b/Jetson Nano/python3/pic/4in2.bmp deleted file mode 100644 index b380a1c..0000000 Binary files a/Jetson Nano/python3/pic/4in2.bmp and /dev/null differ diff --git a/Jetson Nano/python3/pic/4in2b-b.bmp b/Jetson Nano/python3/pic/4in2b-b.bmp deleted file mode 100644 index 7c537a4..0000000 Binary files a/Jetson Nano/python3/pic/4in2b-b.bmp and /dev/null differ diff --git a/Jetson Nano/python3/pic/4in2b-r.bmp b/Jetson Nano/python3/pic/4in2b-r.bmp deleted file mode 100644 index 3de854c..0000000 Binary files a/Jetson Nano/python3/pic/4in2b-r.bmp and /dev/null differ diff --git a/Jetson Nano/python3/pic/4in2c-b.bmp b/Jetson Nano/python3/pic/4in2c-b.bmp deleted file mode 100644 index b380a1c..0000000 Binary files a/Jetson Nano/python3/pic/4in2c-b.bmp and /dev/null differ diff --git a/Jetson Nano/python3/pic/4in2c-y.bmp b/Jetson Nano/python3/pic/4in2c-y.bmp deleted file mode 100644 index cd5c0d6..0000000 Binary files a/Jetson Nano/python3/pic/4in2c-y.bmp and /dev/null differ diff --git a/Jetson Nano/python3/pic/5in83.bmp b/Jetson Nano/python3/pic/5in83.bmp deleted file mode 100644 index 6b8f604..0000000 Binary files a/Jetson Nano/python3/pic/5in83.bmp and /dev/null differ diff --git a/Jetson Nano/python3/pic/5in83bc-b.bmp b/Jetson Nano/python3/pic/5in83bc-b.bmp deleted file mode 100644 index 545e060..0000000 Binary files a/Jetson Nano/python3/pic/5in83bc-b.bmp and /dev/null differ diff --git a/Jetson Nano/python3/pic/5in83bc-ry.bmp b/Jetson Nano/python3/pic/5in83bc-ry.bmp deleted file mode 100644 index 41884b3..0000000 Binary files a/Jetson Nano/python3/pic/5in83bc-ry.bmp and /dev/null differ diff --git a/Jetson Nano/python3/pic/7in5.bmp b/Jetson Nano/python3/pic/7in5.bmp deleted file mode 100644 index b997800..0000000 Binary files a/Jetson Nano/python3/pic/7in5.bmp and /dev/null differ diff --git a/Jetson Nano/python3/pic/7in5b-b.bmp b/Jetson Nano/python3/pic/7in5b-b.bmp deleted file mode 100644 index 8f84025..0000000 Binary files a/Jetson Nano/python3/pic/7in5b-b.bmp and /dev/null differ diff --git a/Jetson Nano/python3/pic/7in5b-r.bmp b/Jetson Nano/python3/pic/7in5b-r.bmp deleted file mode 100644 index 3f81b2c..0000000 Binary files a/Jetson Nano/python3/pic/7in5b-r.bmp and /dev/null differ diff --git a/Jetson Nano/python3/pic/7in5c-b.bmp b/Jetson Nano/python3/pic/7in5c-b.bmp deleted file mode 100644 index a69ddbc..0000000 Binary files a/Jetson Nano/python3/pic/7in5c-b.bmp and /dev/null differ diff --git a/Jetson Nano/python3/pic/7in5c-r.bmp b/Jetson Nano/python3/pic/7in5c-r.bmp deleted file mode 100644 index be84903..0000000 Binary files a/Jetson Nano/python3/pic/7in5c-r.bmp and /dev/null differ diff --git a/Jetson Nano/python3/readme_CN.txt b/Jetson Nano/python3/readme_CN.txt deleted file mode 100644 index 38eb743..0000000 --- a/Jetson Nano/python3/readme_CN.txt +++ /dev/null @@ -1,52 +0,0 @@ -/***************************************************************************** -* | File : Readme_CN.txt -* | Author : Waveshare team -* | Function : Help with use -* | Info : -*---------------- -* | This version: V1.0 -* | Date : 2019-06-20 -* | Info : 鍦ㄨ繖閲屾彁渚涗竴涓腑鏂囩増鏈殑浣跨敤鏂囨。锛屼互渚夸綘鐨勫揩閫熶娇鐢 -******************************************************************************/ -杩欎釜鏂囦欢鏄府鍔╂偍浣跨敤鏈緥绋嬨 -鐢变簬鎴戜滑鐨勫ⅷ姘村睆瓒婃潵瓒婂锛屼笉渚夸簬鎴戜滑鐨勭淮鎶わ紝鍥犳鎶婃墍鏈夌殑澧ㄦ按灞忕▼搴忓仛鎴愪竴涓伐绋嬨 -鍦ㄨ繖閲岀畝鐣ョ殑鎻忚堪鏈伐绋嬬殑浣跨敤锛 - -1.鍩烘湰淇℃伅锛 -鏈緥绋嬫槸鍩轰簬jetson-nano-sd-r32.1-2019-03-18绯荤粺闀滃儚鑰屽紑鍙戠殑锛岀敱浜庣洰鍓嶇殑绯荤粺鏄病鏈夌‖浠禨PI鐨勶紝 -鐩墠閲囩敤妯℃嫙SPI杩涜寮鍙戠殑锛屽洜姝ゅⅷ姘村睆鐨勫埛鏂伴熷害杈冩參; -鏈緥绋嬫槸鍩轰簬Jetson Nano杩涜寮鍙戠殑锛屼緥绋嬪潎鍦↗etson Nano涓婅繘琛屼簡楠岃瘉; -鏈緥绋嬩娇鐢╡-paper Driver HAT妯″潡杩涜浜嗛獙璇侊紝浣犲彲浠ュ湪宸ョ▼鐨別xamples\涓煡鐪嬪搴旂殑娴嬭瘯渚嬬▼; - -2.绠¤剼杩炴帴锛 -绠¤剼杩炴帴浣犲彲浠ュ湪\lib\epdconfig.py涓煡鐪嬶紝杩欓噷涔熷啀閲嶈堪涓娆★細 -EPD => Jetson Nano/RPI(BCM) -VCC -> 3.3 -GND -> GND -DIN -> 10(SPI0_MOSI) -CLK -> 11(SPI0_SCK) -CS -> 8(SPI0_CS0) -DC -> 25 -RST -> 17 -BUSY -> 24 - -3.瀹夎搴擄細 - sudo apt-get update - sudo apt-get install python3-pip - sudo apt-get install python3-pil - sudo apt-get install python3-numpy - sudo pip3 install Jetson.GPIO - -4.鍩烘湰浣跨敤锛 -鐢变簬鏈伐绋嬫槸涓涓患鍚堝伐绋嬶紝瀵逛簬浣跨敤鑰岃█锛屼綘鍙兘闇瑕侀槄璇讳互涓嬪唴瀹癸細 -浣犲彲浠ュ湪examples\鐩綍涓煡鐪嬫祴璇曠▼搴 -璇锋敞鎰忎綘璐拱鐨勬槸鍝竴娆剧殑澧ㄦ按灞忋 -鏍楀瓙1锛 - 濡傛灉浣犺喘涔扮殑5.83inch e-paper锛岄偅涔堜綘搴旇鎵ц鍛戒护锛 - sudo python epd_5in83_test.py -鏍楀瓙2锛 - 濡傛灉浣犺喘涔扮殑2.9inch e-paper (B)锛岀敱浜2.9瀵哥殑B鍨嬪拰C鍨嬫槸鍏敤鐨勯┍鍔ㄤ唬鐮侊紝 - 閭d箞浣犲簲璇ユ墽琛屽懡浠わ細 - sudo python epd_2in9bc_test.py - -娉ㄦ剰锛氬浜巈pd_1in54_V2_test.py鍜宔pd_2in13_V2_test.py璇锋敞鎰忎綘鐨勫睆骞曡儗闈㈡槸鍚﹁创鏈塚2鏍囪瘑銆 \ No newline at end of file diff --git a/Jetson Nano/python3/readme_EN.txt b/Jetson Nano/python3/readme_EN.txt deleted file mode 100644 index 2904db3..0000000 --- a/Jetson Nano/python3/readme_EN.txt +++ /dev/null @@ -1,56 +0,0 @@ -/***************************************************************************** -* | File : Readme_CN.txt -* | Author : Waveshare team -* | Function : Help with use -* | Info : -*---------------- -* | This version: V1.0 -* | Date : 2019-06-20 -* | Info : Here is an English version of the documentation for your quick use. -******************************************************************************/ -This file is to help you use this routine. -Since our ink screens are getting more and more, it is not convenient for our maintenance, so all the ink screen programs are made into one project. -A brief description of the use of this project is here: - -1. Basic information: -This routine was developed based on the jetson-nano-sd-r32.1-2019-03-18 system -image. Since the current system does not have a hardware SPI,Currently developed -with analog SPI, so the ink screen refresh rate is slower; -This routine was developed based on the Jetson Nano and the routines were -verified on the Jetson Nano; -This routine has been verified using the e-paper Driver HAT module. -You can view the corresponding test routines in the examples\ -of the project. - -2. Pin connection: -Pin connections can be viewed in \lib\epdconfig.py and will be repeated here: -EPD => Jetson Nano/RPI(BCM) -VCC -> 3.3 -GND -> GND -DIN -> 10(SPI0_MOSI) -CLK -> 11(SPI0_SCK) -CS -> 8(SPI0_CS0) -DC -> 25 -RST -> 17 -BUSY -> 24 - -3.Installation library - sudo apt-get update - sudo apt-get install python3-pip - sudo apt-get install python3-pil - sudo apt-get install python3-numpy - sudo pip3 install Jetson.GPIO - -4. Basic use: -Since this project is a comprehensive project, you may need to read the following for use: -You can view the test program in the examples\ directory. -Please note which ink screen you purchased. -Chestnut 1: -聽聽聽聽 If you purchased 5.83inch e-paper, then you should execute the command: -聽聽聽聽 Sudo python epd_5in83_test.py -Chestnut 2: -聽聽聽聽 If you buy a 2.9inch e-paper (B), since the 2.9-inch Type B and Type C are common driver codes, -聽聽聽聽 Then you should execute the command: -聽聽聽聽 Sudo python epd_2in9bc_test.py -聽聽聽聽 -Note: For epd_1in54_V2_test.py and epd_2in13_V2_test.py, please note that the V2 logo is attached to the back of your screen. \ No newline at end of file diff --git a/README.md b/README.md index d8dfb91..3f16392 100644 --- a/README.md +++ b/README.md @@ -4,14 +4,11 @@ waveshare electronics ## 涓枃: Jetson Nano銆丷aspberry Pi銆丄rduino銆丼TM32渚嬬▼ -* Jetson Nano: - > C - > Python2 - > python3 -* Raspberry Pi: - > C(BCM2835\WiringPi) - > Python2 - > python3 +* Raspberry Pi & Jetson Nano: + > C + > Python +* Arduino: + > Arduino UNO * Arduino: > Arduino UNO * STM32: @@ -23,14 +20,9 @@ http://www.waveshare.net ## English: Jetson Nano銆丷aspberry Pi銆丄rduino銆丼TM32 Demo: -* Jetson Nano: - > C - > Python2 - > python3 -* Raspberry Pi: - > C(BCM2835\WiringPi) - > Python2 - > python3 +* Raspberry Pi & Jetson Nano: + > C + > Python * Arduino: > Arduino UNO * STM32: diff --git a/Raspberry Pi/c/Makefile b/Raspberry Pi/c/Makefile deleted file mode 100644 index f8a4e18..0000000 --- a/Raspberry Pi/c/Makefile +++ /dev/null @@ -1,47 +0,0 @@ -DIR_Config = ./lib/Config -DIR_EPD = ./lib/e-Paper -DIR_FONTS = ./lib/Fonts -DIR_GUI = ./lib/GUI -DIR_Examples = ./examples -DIR_BIN = ./bin - -OBJ_C = $(wildcard ${DIR_EPD}/*.c ${DIR_Config}/*.c ${DIR_GUI}/*.c ${DIR_Examples}/*.c ${DIR_FONTS}/*.c) -OBJ_O = $(patsubst %.c,${DIR_BIN}/%.o,$(notdir ${OBJ_C})) - -TARGET = epd - -USELIB = USE_BCM2835_LIB -# USELIB = USE_WIRINGPI_LIB -DEBUG = -D $(USELIB) -ifeq ($(USELIB), USE_BCM2835_LIB) - LIB = -lbcm2835 -lm -else ifeq ($(USELIB), USE_WIRINGPI_LIB) - LIB = -lwiringPi -lm -endif - -CC = gcc -MSG = -g -O0 -Wall -CFLAGS += $(MSG) $(DEBUG) - -${TARGET}:${OBJ_O} - $(CC) $(CFLAGS) $(OBJ_O) -o $@ $(LIB) - -${DIR_BIN}/%.o:$(DIR_Examples)/%.c - $(CC) $(CFLAGS) -c $< -o $@ -I $(DIR_Config) -I $(DIR_GUI) -I $(DIR_EPD) - -${DIR_BIN}/%.o:$(DIR_Config)/%.c - $(CC) $(CFLAGS) -c $< -o $@ $(LIB) - -${DIR_BIN}/%.o:$(DIR_EPD)/%.c - $(CC) $(CFLAGS) -c $< -o $@ -I $(DIR_Config) - -${DIR_BIN}/%.o:$(DIR_FONTS)/%.c - $(CC) $(CFLAGS) -c $< -o $@ - -${DIR_BIN}/%.o:$(DIR_GUI)/%.c - $(CC) $(CFLAGS) -c $< -o $@ -I $(DIR_Config) - - -clean : - rm $(DIR_BIN)/*.* - rm $(TARGET) \ No newline at end of file diff --git a/Raspberry Pi/c/bin/DEV_Config.o b/Raspberry Pi/c/bin/DEV_Config.o deleted file mode 100644 index 159df72..0000000 Binary files a/Raspberry Pi/c/bin/DEV_Config.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/EPD_1in54.o b/Raspberry Pi/c/bin/EPD_1in54.o deleted file mode 100644 index 03d3b30..0000000 Binary files a/Raspberry Pi/c/bin/EPD_1in54.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/EPD_1in54_V2.o b/Raspberry Pi/c/bin/EPD_1in54_V2.o deleted file mode 100644 index 76dce87..0000000 Binary files a/Raspberry Pi/c/bin/EPD_1in54_V2.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/EPD_1in54_V2_test.o b/Raspberry Pi/c/bin/EPD_1in54_V2_test.o deleted file mode 100644 index d19de72..0000000 Binary files a/Raspberry Pi/c/bin/EPD_1in54_V2_test.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/EPD_1in54_test.o b/Raspberry Pi/c/bin/EPD_1in54_test.o deleted file mode 100644 index e95a009..0000000 Binary files a/Raspberry Pi/c/bin/EPD_1in54_test.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/EPD_1in54b.o b/Raspberry Pi/c/bin/EPD_1in54b.o deleted file mode 100644 index f5def43..0000000 Binary files a/Raspberry Pi/c/bin/EPD_1in54b.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/EPD_1in54b_test.o b/Raspberry Pi/c/bin/EPD_1in54b_test.o deleted file mode 100644 index f9a8f37..0000000 Binary files a/Raspberry Pi/c/bin/EPD_1in54b_test.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/EPD_1in54c.o b/Raspberry Pi/c/bin/EPD_1in54c.o deleted file mode 100644 index 2f1123a..0000000 Binary files a/Raspberry Pi/c/bin/EPD_1in54c.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/EPD_1in54c_test.o b/Raspberry Pi/c/bin/EPD_1in54c_test.o deleted file mode 100644 index cdc15c8..0000000 Binary files a/Raspberry Pi/c/bin/EPD_1in54c_test.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/EPD_2in13.o b/Raspberry Pi/c/bin/EPD_2in13.o deleted file mode 100644 index d66a1f4..0000000 Binary files a/Raspberry Pi/c/bin/EPD_2in13.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/EPD_2in13_V2.o b/Raspberry Pi/c/bin/EPD_2in13_V2.o deleted file mode 100644 index 95d914e..0000000 Binary files a/Raspberry Pi/c/bin/EPD_2in13_V2.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/EPD_2in13_V2_test.o b/Raspberry Pi/c/bin/EPD_2in13_V2_test.o deleted file mode 100644 index 2b94958..0000000 Binary files a/Raspberry Pi/c/bin/EPD_2in13_V2_test.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/EPD_2in13_test.o b/Raspberry Pi/c/bin/EPD_2in13_test.o deleted file mode 100644 index e94fd4c..0000000 Binary files a/Raspberry Pi/c/bin/EPD_2in13_test.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/EPD_2in13bc.o b/Raspberry Pi/c/bin/EPD_2in13bc.o deleted file mode 100644 index 57ca032..0000000 Binary files a/Raspberry Pi/c/bin/EPD_2in13bc.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/EPD_2in13bc_test.o b/Raspberry Pi/c/bin/EPD_2in13bc_test.o deleted file mode 100644 index db6dbce..0000000 Binary files a/Raspberry Pi/c/bin/EPD_2in13bc_test.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/EPD_2in13d.o b/Raspberry Pi/c/bin/EPD_2in13d.o deleted file mode 100644 index 80f1e44..0000000 Binary files a/Raspberry Pi/c/bin/EPD_2in13d.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/EPD_2in13d_test.o b/Raspberry Pi/c/bin/EPD_2in13d_test.o deleted file mode 100644 index f18f8e8..0000000 Binary files a/Raspberry Pi/c/bin/EPD_2in13d_test.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/EPD_2in7.o b/Raspberry Pi/c/bin/EPD_2in7.o deleted file mode 100644 index 0298f80..0000000 Binary files a/Raspberry Pi/c/bin/EPD_2in7.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/EPD_2in7_test.o b/Raspberry Pi/c/bin/EPD_2in7_test.o deleted file mode 100644 index a3c8f3a..0000000 Binary files a/Raspberry Pi/c/bin/EPD_2in7_test.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/EPD_2in7b.o b/Raspberry Pi/c/bin/EPD_2in7b.o deleted file mode 100644 index 27632bd..0000000 Binary files a/Raspberry Pi/c/bin/EPD_2in7b.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/EPD_2in7b_test.o b/Raspberry Pi/c/bin/EPD_2in7b_test.o deleted file mode 100644 index 584120c..0000000 Binary files a/Raspberry Pi/c/bin/EPD_2in7b_test.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/EPD_2in9.o b/Raspberry Pi/c/bin/EPD_2in9.o deleted file mode 100644 index 68a8730..0000000 Binary files a/Raspberry Pi/c/bin/EPD_2in9.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/EPD_2in9_test.o b/Raspberry Pi/c/bin/EPD_2in9_test.o deleted file mode 100644 index 6bc0f60..0000000 Binary files a/Raspberry Pi/c/bin/EPD_2in9_test.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/EPD_2in9bc.o b/Raspberry Pi/c/bin/EPD_2in9bc.o deleted file mode 100644 index ce73660..0000000 Binary files a/Raspberry Pi/c/bin/EPD_2in9bc.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/EPD_2in9bc_test.o b/Raspberry Pi/c/bin/EPD_2in9bc_test.o deleted file mode 100644 index af26a9b..0000000 Binary files a/Raspberry Pi/c/bin/EPD_2in9bc_test.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/EPD_2in9d.o b/Raspberry Pi/c/bin/EPD_2in9d.o deleted file mode 100644 index 12df733..0000000 Binary files a/Raspberry Pi/c/bin/EPD_2in9d.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/EPD_2in9d_test.o b/Raspberry Pi/c/bin/EPD_2in9d_test.o deleted file mode 100644 index 44d5fff..0000000 Binary files a/Raspberry Pi/c/bin/EPD_2in9d_test.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/EPD_4in2.o b/Raspberry Pi/c/bin/EPD_4in2.o deleted file mode 100644 index ca86d6a..0000000 Binary files a/Raspberry Pi/c/bin/EPD_4in2.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/EPD_4in2_test.o b/Raspberry Pi/c/bin/EPD_4in2_test.o deleted file mode 100644 index eab4730..0000000 Binary files a/Raspberry Pi/c/bin/EPD_4in2_test.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/EPD_4in2bc.o b/Raspberry Pi/c/bin/EPD_4in2bc.o deleted file mode 100644 index 37e48cf..0000000 Binary files a/Raspberry Pi/c/bin/EPD_4in2bc.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/EPD_4in2bc_test.o b/Raspberry Pi/c/bin/EPD_4in2bc_test.o deleted file mode 100644 index a3ca60e..0000000 Binary files a/Raspberry Pi/c/bin/EPD_4in2bc_test.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/EPD_5in83.o b/Raspberry Pi/c/bin/EPD_5in83.o deleted file mode 100644 index a079f00..0000000 Binary files a/Raspberry Pi/c/bin/EPD_5in83.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/EPD_5in83_test.o b/Raspberry Pi/c/bin/EPD_5in83_test.o deleted file mode 100644 index 36c0cf8..0000000 Binary files a/Raspberry Pi/c/bin/EPD_5in83_test.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/EPD_5in83bc.o b/Raspberry Pi/c/bin/EPD_5in83bc.o deleted file mode 100644 index cb28706..0000000 Binary files a/Raspberry Pi/c/bin/EPD_5in83bc.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/EPD_5in83bc_test.o b/Raspberry Pi/c/bin/EPD_5in83bc_test.o deleted file mode 100644 index 118a70a..0000000 Binary files a/Raspberry Pi/c/bin/EPD_5in83bc_test.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/EPD_7in5.o b/Raspberry Pi/c/bin/EPD_7in5.o deleted file mode 100644 index a29bd1a..0000000 Binary files a/Raspberry Pi/c/bin/EPD_7in5.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/EPD_7in5_test.o b/Raspberry Pi/c/bin/EPD_7in5_test.o deleted file mode 100644 index 9115b3f..0000000 Binary files a/Raspberry Pi/c/bin/EPD_7in5_test.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/EPD_7in5bc.o b/Raspberry Pi/c/bin/EPD_7in5bc.o deleted file mode 100644 index fd5263b..0000000 Binary files a/Raspberry Pi/c/bin/EPD_7in5bc.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/EPD_7in5bc_test.o b/Raspberry Pi/c/bin/EPD_7in5bc_test.o deleted file mode 100644 index 051ea16..0000000 Binary files a/Raspberry Pi/c/bin/EPD_7in5bc_test.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/GUI_BMPfile.o b/Raspberry Pi/c/bin/GUI_BMPfile.o deleted file mode 100644 index 8b2d9f2..0000000 Binary files a/Raspberry Pi/c/bin/GUI_BMPfile.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/GUI_Paint.o b/Raspberry Pi/c/bin/GUI_Paint.o deleted file mode 100644 index d69dd98..0000000 Binary files a/Raspberry Pi/c/bin/GUI_Paint.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/font12.o b/Raspberry Pi/c/bin/font12.o deleted file mode 100644 index 33d5b3d..0000000 Binary files a/Raspberry Pi/c/bin/font12.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/font12CN.o b/Raspberry Pi/c/bin/font12CN.o deleted file mode 100644 index c49a2bd..0000000 Binary files a/Raspberry Pi/c/bin/font12CN.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/font24CN.o b/Raspberry Pi/c/bin/font24CN.o deleted file mode 100644 index 070fe34..0000000 Binary files a/Raspberry Pi/c/bin/font24CN.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/font8.o b/Raspberry Pi/c/bin/font8.o deleted file mode 100644 index 20b948c..0000000 Binary files a/Raspberry Pi/c/bin/font8.o and /dev/null differ diff --git a/Raspberry Pi/c/bin/main.o b/Raspberry Pi/c/bin/main.o deleted file mode 100644 index 48960f3..0000000 Binary files a/Raspberry Pi/c/bin/main.o and /dev/null differ diff --git a/Raspberry Pi/c/examples/EPD_1in54_V2_test.c b/Raspberry Pi/c/examples/EPD_1in54_V2_test.c deleted file mode 100644 index fde950d..0000000 --- a/Raspberry Pi/c/examples/EPD_1in54_V2_test.c +++ /dev/null @@ -1,168 +0,0 @@ -/***************************************************************************** -* | File : EPD_1in54_V2_test.c -* | Author : Waveshare team -* | Function : 1.54inch e-paper test demo -* | Info : -*---------------- -* | This version: V1.0 -* | Date : 2019-06-11 -* | Info : -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "EPD_Test.h" -#include "EPD_1in54_V2.h" - -int EPD_1in54_V2_test(void) -{ - printf("EPD_1in54_V2_test Demo\r\n"); - DEV_Module_Init(); - - printf("e-Paper Init and Clear...\r\n"); - EPD_1IN54_V2_Init(); - EPD_1IN54_V2_Clear(); - DEV_Delay_ms(500); - - //Create a new image cache - UBYTE *BlackImage; - /* you have to edit the startup_stm32fxxx.s file and set a big enough heap size */ - UWORD Imagesize = ((EPD_1IN54_V2_WIDTH % 8 == 0)? (EPD_1IN54_V2_WIDTH / 8 ): (EPD_1IN54_V2_WIDTH / 8 + 1)) * EPD_1IN54_V2_HEIGHT; - if((BlackImage = (UBYTE *)malloc(Imagesize)) == NULL) { - printf("Failed to apply for black memory...\r\n"); - return -1; - } - printf("Paint_NewImage\r\n"); - Paint_NewImage(BlackImage, EPD_1IN54_V2_WIDTH, EPD_1IN54_V2_HEIGHT, 270, WHITE); - -#if 1 // show bmp - printf("show window BMP-----------------\r\n"); - Paint_SelectImage(BlackImage); - - Paint_Clear(WHITE); - GUI_ReadBmp("./pic/100x100.bmp", 50, 50); - EPD_1IN54_V2_Display(BlackImage); - DEV_Delay_ms(500); - - printf("show bmp------------------------\r\n"); - Paint_Clear(WHITE); - GUI_ReadBmp("./pic/1in54.bmp", 0, 0); - EPD_1IN54_V2_Display(BlackImage); - DEV_Delay_ms(2000); -#endif - -#if 1 //show image for array - printf("show image for array\r\n"); - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - Paint_DrawBitMap(gImage_1in54); - - EPD_1IN54_V2_Display(BlackImage); - DEV_Delay_ms(2000); -#endif - -#if 1 // Drawing on the image - printf("Drawing\r\n"); - //1.Select Image - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - - // 2.Drawing on the image - Paint_DrawPoint(5, 10, BLACK, DOT_PIXEL_1X1, DOT_STYLE_DFT); - Paint_DrawPoint(5, 25, BLACK, DOT_PIXEL_2X2, DOT_STYLE_DFT); - Paint_DrawPoint(5, 40, BLACK, DOT_PIXEL_3X3, DOT_STYLE_DFT); - Paint_DrawPoint(5, 55, BLACK, DOT_PIXEL_4X4, DOT_STYLE_DFT); - - Paint_DrawLine(20, 10, 70, 60, BLACK, DOT_PIXEL_1X1, LINE_STYLE_SOLID); - Paint_DrawLine(70, 10, 20, 60, BLACK, DOT_PIXEL_1X1, LINE_STYLE_SOLID); - Paint_DrawLine(170, 15, 170, 55, BLACK, DOT_PIXEL_1X1, LINE_STYLE_DOTTED); - Paint_DrawLine(150, 35, 190, 35, BLACK, DOT_PIXEL_1X1, LINE_STYLE_DOTTED); - - Paint_DrawRectangle(20, 10, 70, 60, BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY); - Paint_DrawRectangle(85, 10, 130, 60, BLACK, DOT_PIXEL_1X1, DRAW_FILL_FULL); - - Paint_DrawCircle(170, 35, 20, BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY); - Paint_DrawCircle(170, 85, 20, BLACK, DOT_PIXEL_1X1, DRAW_FILL_FULL); - Paint_DrawString_EN(5, 85, "waveshare", &Font20, BLACK, WHITE); - Paint_DrawNum(5, 110, 123456789, &Font20, BLACK, WHITE); - - Paint_DrawString_CN(5, 135,"你好abc", &Font12CN, BLACK, WHITE); - Paint_DrawString_CN(5, 155, "微雪电子", &Font24CN, WHITE, BLACK); - - EPD_1IN54_V2_Display(BlackImage); - DEV_Delay_ms(2000); -#endif - -#if 1 //Partial refresh, example shows time - - // The image of the previous frame must be uploaded, otherwise the - // first few seconds will display an exception. - EPD_1IN54_V2_Init(); - EPD_1IN54_V2_DisplayPartBaseImage(BlackImage); - - printf("Partial refresh\r\n"); - Paint_SelectImage(BlackImage); - PAINT_TIME sPaint_time; - sPaint_time.Hour = 12; - sPaint_time.Min = 34; - sPaint_time.Sec = 56; - UBYTE num = 20; - for (;;) { - sPaint_time.Sec = sPaint_time.Sec + 1; - if (sPaint_time.Sec == 60) { - sPaint_time.Min = sPaint_time.Min + 1; - sPaint_time.Sec = 0; - if (sPaint_time.Min == 60) { - sPaint_time.Hour = sPaint_time.Hour + 1; - sPaint_time.Min = 0; - if (sPaint_time.Hour == 24) { - sPaint_time.Hour = 0; - sPaint_time.Min = 0; - sPaint_time.Sec = 0; - } - } - } - Paint_ClearWindows(15, 65, 15 + Font20.Width * 7, 65 + Font20.Height, WHITE); - Paint_DrawTime(15, 65, &sPaint_time, &Font20, WHITE, BLACK); - num = num - 1; - if(num == 0) { - break; - } - EPD_1IN54_V2_DisplayPart(BlackImage); - DEV_Delay_ms(500);//Analog clock 1s - } - -#endif - - printf("Clear...\r\n"); - EPD_1IN54_V2_Init(); - EPD_1IN54_V2_Clear(); - - printf("Goto Sleep...\r\n"); - EPD_1IN54_V2_Sleep(); - free(BlackImage); - BlackImage = NULL; - - // close 5V - printf("close 5V, Module enters 0 power consumption ...\r\n"); - DEV_Module_Exit(); - - return 0; -} - diff --git a/Raspberry Pi/c/examples/EPD_1in54b_test.c b/Raspberry Pi/c/examples/EPD_1in54b_test.c deleted file mode 100644 index bf9c9d5..0000000 --- a/Raspberry Pi/c/examples/EPD_1in54b_test.c +++ /dev/null @@ -1,139 +0,0 @@ -/***************************************************************************** -* | File : EPD_1in54b_test.c -* | Author : Waveshare team -* | Function : 1.54inch B e-paper test demo -* | Info : -*---------------- -* | This version: V1.0 -* | Date : 2019-06-12 -* | Info : -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "EPD_Test.h" -#include "EPD_1in54b.h" - -int EPD_1in54b_test(void) -{ - printf("EPD_1in54b_test Demo\r\n"); - DEV_Module_Init(); - - printf("e-Paper Init and Clear...\r\n"); - EPD_1IN54B_Init(); - EPD_1IN54B_Clear(); - DEV_Delay_ms(500); - - //Create new image - UBYTE *BlackImage, *RedImage; - UWORD Imagesize = ((EPD_1IN54B_WIDTH % 8 == 0)? (EPD_1IN54B_WIDTH / 8 ): (EPD_1IN54B_WIDTH / 8 + 1)) * EPD_1IN54B_HEIGHT; - if((BlackImage = (UBYTE *)malloc(Imagesize)) == NULL) { - printf("Failed to apply for black memory...\r\n"); - return -1; - } - if((RedImage = (UBYTE *)malloc(Imagesize)) == NULL) { - printf("Failed to apply for red memory...\r\n"); - return -1; - } - printf("NewImage:BlackImage and RedImage\r\n"); - Paint_NewImage(BlackImage, EPD_1IN54B_WIDTH, EPD_1IN54B_HEIGHT, 270, WHITE); - Paint_NewImage(RedImage, EPD_1IN54B_WIDTH, EPD_1IN54B_HEIGHT, 270, WHITE); - -#if 1 // show bmp - printf("show window BMP-----------------\r\n"); - printf("read black bmp\r\n"); - Paint_SelectImage(BlackImage); - GUI_ReadBmp("./pic/100x100.bmp", 50, 50); - - Paint_SelectImage(RedImage); - Paint_Clear(WHITE); - - EPD_1IN54B_Display(BlackImage, RedImage); - DEV_Delay_ms(2000); - - printf("show bmp------------------------\r\n"); - printf("read black bmp\r\n"); - Paint_SelectImage(BlackImage); - GUI_ReadBmp("./pic/1in54b-b.bmp", 0, 0); - printf("read red bmp\r\n"); - Paint_SelectImage(RedImage); - GUI_ReadBmp("./pic/1in54b-r.bmp", 0, 0); - - EPD_1IN54B_Display(BlackImage, RedImage); - DEV_Delay_ms(2000); -#endif - -#if 1 //Drawing - printf("Drawing------------------------\r\n"); - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - Paint_DrawPoint(5, 10, BLACK, DOT_PIXEL_1X1, DOT_STYLE_DFT); - Paint_DrawPoint(5, 25, BLACK, DOT_PIXEL_2X2, DOT_STYLE_DFT); - Paint_DrawLine(20, 10, 70, 60, BLACK, DOT_PIXEL_1X1, LINE_STYLE_SOLID); - Paint_DrawLine(70, 10, 20, 60, BLACK, DOT_PIXEL_1X1, LINE_STYLE_SOLID); - Paint_DrawRectangle(20, 10, 70, 60, BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY); - Paint_DrawCircle(170, 85, 20, BLACK, DOT_PIXEL_1X1, DRAW_FILL_FULL); - Paint_DrawString_EN(5, 70, "hello world", &Font16, WHITE, BLACK); - Paint_DrawString_CN(5, 160, "微雪电子", &Font24CN, WHITE, BLACK); - - Paint_SelectImage(RedImage); - Paint_Clear(WHITE); - Paint_DrawPoint(5, 40, BLACK, DOT_PIXEL_3X3, DOT_STYLE_DFT); - Paint_DrawPoint(5, 55, BLACK, DOT_PIXEL_4X4, DOT_STYLE_DFT); - Paint_DrawLine(170, 15, 170, 55, BLACK, DOT_PIXEL_1X1, LINE_STYLE_DOTTED); - Paint_DrawLine(150, 35, 190, 35, BLACK, DOT_PIXEL_1X1, LINE_STYLE_DOTTED); - Paint_DrawRectangle(85, 10, 130, 60, BLACK, DOT_PIXEL_1X1, DRAW_FILL_FULL); - Paint_DrawCircle(170, 35, 20, BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY); - Paint_DrawString_EN(5, 90, "waveshare", &Font20, BLACK, WHITE); - Paint_DrawNum(5, 120, 123456789, &Font20, BLACK, WHITE); - Paint_DrawString_CN(5, 135,"你好abc", &Font12CN, BLACK, WHITE); - - EPD_1IN54B_Display(BlackImage, RedImage); - DEV_Delay_ms(2000); -#endif - -#if 1 //show image for array - printf("show image for array------------------------\r\n"); - Paint_SelectImage(BlackImage); - Paint_DrawBitMap(gImage_1in54b_Black); - - Paint_SelectImage(RedImage); - Paint_DrawBitMap(gImage_1in54b_Red); - - EPD_1IN54B_Display(BlackImage, RedImage); - DEV_Delay_ms(2000); -#endif - - printf("Clear...\r\n"); - EPD_1IN54B_Clear(); - - printf("Goto Sleep...\r\n"); - EPD_1IN54B_Sleep(); - free(BlackImage); - free(RedImage); - BlackImage = NULL; - RedImage = NULL; - - // close 5V - printf("close 5V, Module enters 0 power consumption ...\r\n"); - DEV_Module_Exit(); - - return 0; -} - diff --git a/Raspberry Pi/c/examples/EPD_1in54c_test.c b/Raspberry Pi/c/examples/EPD_1in54c_test.c deleted file mode 100644 index f7e4814..0000000 --- a/Raspberry Pi/c/examples/EPD_1in54c_test.c +++ /dev/null @@ -1,135 +0,0 @@ -/***************************************************************************** -* | File : EPD_1in54c_test.c -* | Author : Waveshare team -* | Function : 1.54inch C e-paper test demo -* | Info : -*---------------- -* | This version: V1.0 -* | Date : 2019-06-12 -* | Info : -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "EPD_Test.h" -#include "EPD_1in54c.h" - -int EPD_1in54c_test(void) -{ - printf("EPD_1IN54C_test Demo\r\n"); - DEV_Module_Init(); - - printf("e-Paper Init and Clear...\r\n"); - EPD_1IN54C_Init(); - EPD_1IN54C_Clear(); - DEV_Delay_ms(500); - - //Create new image - UBYTE *BlackImage, *YellowImage; - UWORD Imagesize = ((EPD_1IN54C_WIDTH % 8 == 0)? (EPD_1IN54C_WIDTH / 8 ): (EPD_1IN54C_WIDTH / 8 + 1)) * EPD_1IN54C_HEIGHT; - if((BlackImage = (UBYTE *)malloc(Imagesize)) == NULL) { - printf("Failed to apply for black memory...\r\n"); - return -1; - } - if((YellowImage = (UBYTE *)malloc(Imagesize)) == NULL) { - printf("Failed to apply for red memory...\r\n"); - return -1; - } - printf("NewImage:BlackImage and YellowImage\r\n"); - Paint_NewImage(BlackImage, EPD_1IN54C_WIDTH, EPD_1IN54C_HEIGHT, 270, WHITE); - Paint_NewImage(YellowImage, EPD_1IN54C_WIDTH, EPD_1IN54C_HEIGHT, 270, WHITE); - -#if 1 // show bmp - printf("show window BMP-----------------\r\n"); - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - GUI_ReadBmp("./pic/100x100.bmp", 50, 50); - - Paint_SelectImage(YellowImage); - Paint_Clear(WHITE); - - EPD_1IN54C_Display(BlackImage, YellowImage); - DEV_Delay_ms(500); - - printf("show bmp------------------------\r\n"); - Paint_SelectImage(BlackImage); - GUI_ReadBmp("./pic/1in54c-b.bmp", 0, 0); - - Paint_SelectImage(YellowImage); - GUI_ReadBmp("./pic/1in54c-y.bmp", 0, 0); - EPD_1IN54C_Display(BlackImage, YellowImage); - DEV_Delay_ms(2000); -#endif - -#if 1 //Drawing - printf("Drawing------------------------\r\n"); - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - Paint_DrawPoint(5, 10, BLACK, DOT_PIXEL_1X1, DOT_STYLE_DFT); - Paint_DrawPoint(5, 25, BLACK, DOT_PIXEL_2X2, DOT_STYLE_DFT); - Paint_DrawLine(20, 10, 70, 60, BLACK, DOT_PIXEL_1X1, LINE_STYLE_SOLID); - Paint_DrawLine(70, 10, 20, 60, BLACK, DOT_PIXEL_1X1, LINE_STYLE_SOLID); - Paint_DrawRectangle(20, 10, 70, 60, BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY); - Paint_DrawRectangle(85, 10, 130, 60, BLACK, DOT_PIXEL_1X1, DRAW_FILL_FULL); - - Paint_SelectImage(YellowImage); - Paint_Clear(WHITE); - Paint_DrawPoint(5, 40, BLACK, DOT_PIXEL_3X3, DOT_STYLE_DFT); - Paint_DrawPoint(5, 55, BLACK, DOT_PIXEL_4X4, DOT_STYLE_DFT); - Paint_DrawLine(170, 15, 170, 55, BLACK, DOT_PIXEL_1X1, LINE_STYLE_DOTTED); - Paint_DrawLine(150, 35, 190, 35, BLACK, DOT_PIXEL_1X1, LINE_STYLE_DOTTED); - Paint_DrawCircle(45, 35, 15, BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY); - Paint_DrawCircle(105, 30, 15, BLACK, DOT_PIXEL_1X1, DRAW_FILL_FULL); - Paint_DrawString_EN(5, 70, "waveshare", &Font20, BLACK, WHITE); - Paint_DrawNum(5, 95, 123456789, &Font20, BLACK, WHITE); - Paint_DrawString_CN(5, 120,"你好abc", &Font12CN, BLACK, WHITE); - - EPD_1IN54C_Display(BlackImage, YellowImage); - DEV_Delay_ms(2000); -#endif - -#if 1 //show image for array - printf("show image for array------------------------\r\n"); - Paint_SelectImage(BlackImage); - Paint_DrawBitMap(gImage_1in54c_Black); - - Paint_SelectImage(YellowImage); - Paint_DrawBitMap(gImage_1in54c_Yellow); - - EPD_1IN54C_Display(BlackImage, YellowImage); - DEV_Delay_ms(2000); -#endif - - printf("Clear...\r\n"); - EPD_1IN54C_Clear(); - - printf("Goto Sleep...\r\n"); - EPD_1IN54C_Sleep(); - free(BlackImage); - free(YellowImage); - BlackImage = NULL; - YellowImage = NULL; - - // close 5V - printf("close 5V, Module enters 0 power consumption ...\r\n"); - DEV_Module_Exit(); - - return 0; -} - diff --git a/Raspberry Pi/c/examples/EPD_2in13_test.c b/Raspberry Pi/c/examples/EPD_2in13_test.c deleted file mode 100644 index 7bd29bb..0000000 --- a/Raspberry Pi/c/examples/EPD_2in13_test.c +++ /dev/null @@ -1,162 +0,0 @@ -/***************************************************************************** -* | File : EPD_2IN13_test.c -* | Author : Waveshare team -* | Function : 2.9inch e-paper test demo -* | Info : -*---------------- -* | This version: V1.0 -* | Date : 2019-06-11 -* | Info : -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "EPD_Test.h" -#include "EPD_2in13.h" - -int EPD_2in13_test(void) -{ - printf("EPD_2IN13_test Demo\r\n"); - DEV_Module_Init(); - - printf("e-Paper Init and Clear...\r\n"); - EPD_2IN13_Init(EPD_2IN13_FULL); - EPD_2IN13_Clear(); - DEV_Delay_ms(500); - - //Create a new image cache - UBYTE *BlackImage; - /* you have to edit the startup_stm32fxxx.s file and set a big enough heap size */ - UWORD Imagesize = ((EPD_2IN13_WIDTH % 8 == 0)? (EPD_2IN13_WIDTH / 8 ): (EPD_2IN13_WIDTH / 8 + 1)) * EPD_2IN13_HEIGHT; - if((BlackImage = (UBYTE *)malloc(Imagesize)) == NULL) { - printf("Failed to apply for black memory...\r\n"); - return -1; - } - printf("Paint_NewImage\r\n"); - Paint_NewImage(BlackImage, EPD_2IN13_WIDTH, EPD_2IN13_HEIGHT, 270, WHITE); - -#if 1 // show bmp - printf("show window BMP-----------------\r\n"); - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - GUI_ReadBmp("./pic/100x100.bmp", 10, 10); - EPD_2IN13_Display(BlackImage); - DEV_Delay_ms(2000); - - printf("show bmp------------------------\r\n"); - Paint_SelectImage(BlackImage); - GUI_ReadBmp("./pic/2in13.bmp", 0, 0); - EPD_2IN13_Display(BlackImage); - DEV_Delay_ms(2000); -#endif - -#if 1 //show image for array - printf("show image for array\r\n"); - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - Paint_DrawBitMap(gImage_2in13); - - EPD_2IN13_Display(BlackImage); - DEV_Delay_ms(2000); -#endif - -#if 1 // Drawing on the image - printf("Drawing\r\n"); - //1.Select Image - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - - // 2.Drawing on the image - Paint_DrawPoint(5, 10, BLACK, DOT_PIXEL_1X1, DOT_STYLE_DFT); - Paint_DrawPoint(5, 25, BLACK, DOT_PIXEL_2X2, DOT_STYLE_DFT); - Paint_DrawPoint(5, 40, BLACK, DOT_PIXEL_3X3, DOT_STYLE_DFT); - Paint_DrawPoint(5, 55, BLACK, DOT_PIXEL_4X4, DOT_STYLE_DFT); - - Paint_DrawLine(20, 10, 70, 60, BLACK, DOT_PIXEL_1X1, LINE_STYLE_SOLID); - Paint_DrawLine(70, 10, 20, 60, BLACK, DOT_PIXEL_1X1, LINE_STYLE_SOLID); - Paint_DrawRectangle(20, 10, 70, 60, BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY); - Paint_DrawRectangle(85, 10, 135, 60, BLACK, DOT_PIXEL_1X1, DRAW_FILL_FULL); - - Paint_DrawLine(45, 15, 45, 55, BLACK, DOT_PIXEL_1X1, LINE_STYLE_DOTTED); - Paint_DrawLine(25, 35, 70, 35, BLACK, DOT_PIXEL_1X1, LINE_STYLE_DOTTED); - Paint_DrawCircle(45, 35, 20, BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY); - Paint_DrawCircle(110, 35, 20, WHITE, DOT_PIXEL_1X1, DRAW_FILL_FULL); - - Paint_DrawString_EN(140, 15, "waveshare", &Font16, BLACK, WHITE); - Paint_DrawNum(140, 40, 123456789, &Font16, BLACK, WHITE); - - Paint_DrawString_CN(140, 60, "你好abc", &Font12CN, BLACK, WHITE); - Paint_DrawString_CN(5, 65, "微雪电子", &Font24CN, WHITE, BLACK); - - EPD_2IN13_Display(BlackImage); - DEV_Delay_ms(2000); -#endif - -#if 1 //Partial refresh, example shows time - printf("Partial refresh\r\n"); - EPD_2IN13_Init(EPD_2IN13_PART); - Paint_SelectImage(BlackImage); - PAINT_TIME sPaint_time; - sPaint_time.Hour = 12; - sPaint_time.Min = 34; - sPaint_time.Sec = 56; - UBYTE num = 20; - for (;;) { - sPaint_time.Sec = sPaint_time.Sec + 1; - if (sPaint_time.Sec == 60) { - sPaint_time.Min = sPaint_time.Min + 1; - sPaint_time.Sec = 0; - if (sPaint_time.Min == 60) { - sPaint_time.Hour = sPaint_time.Hour + 1; - sPaint_time.Min = 0; - if (sPaint_time.Hour == 24) { - sPaint_time.Hour = 0; - sPaint_time.Min = 0; - sPaint_time.Sec = 0; - } - } - } - Paint_ClearWindows(140, 90, 140 + Font20.Width * 7, 90 + Font20.Height, WHITE); - Paint_DrawTime(140, 90, &sPaint_time, &Font20, WHITE, BLACK); - - num = num - 1; - if(num == 0) { - break; - } - EPD_2IN13_Display(BlackImage); - DEV_Delay_ms(500);//Analog clock 1s - } - -#endif - printf("Clear...\r\n"); - EPD_2IN13_Init(EPD_2IN13_FULL); - EPD_2IN13_Clear(); - - printf("Goto Sleep...\r\n"); - EPD_2IN13_Sleep(); - free(BlackImage); - BlackImage = NULL; - - // close 5V - printf("close 5V, Module enters 0 power consumption ...\r\n"); - DEV_Module_Exit(); - - return 0; -} - diff --git a/Raspberry Pi/c/examples/EPD_2in13bc_test.c b/Raspberry Pi/c/examples/EPD_2in13bc_test.c deleted file mode 100644 index 0ff2e86..0000000 --- a/Raspberry Pi/c/examples/EPD_2in13bc_test.c +++ /dev/null @@ -1,139 +0,0 @@ -/***************************************************************************** -* | File : EPD_2in13bc_test.c -* | Author : Waveshare team -* | Function : 2.13inch B&C e-paper test demo -* | Info : -*---------------- -* | This version: V1.0 -* | Date : 2019-06-13 -* | Info : -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "EPD_Test.h" -#include "EPD_2in13bc.h" - -int EPD_2in13bc_test(void) -{ - printf("EPD_2IN13BC_test Demo\r\n"); - DEV_Module_Init(); - - printf("e-Paper Init and Clear...\r\n"); - EPD_2IN13BC_Init(); - EPD_2IN13BC_Clear(); - DEV_Delay_ms(500); - - //Create a new image cache named IMAGE_BW and fill it with white - UBYTE *BlackImage, *RYImage; // Red or Yellow - UWORD Imagesize = ((EPD_2IN13BC_WIDTH % 8 == 0)? (EPD_2IN13BC_WIDTH / 8 ): (EPD_2IN13BC_WIDTH / 8 + 1)) * EPD_2IN13BC_HEIGHT; - if((BlackImage = (UBYTE *)malloc(Imagesize)) == NULL) { - printf("Failed to apply for black memory...\r\n"); - return -1; - } - if((RYImage = (UBYTE *)malloc(Imagesize)) == NULL) { - printf("Failed to apply for red memory...\r\n"); - return -1; - } - printf("NewImage:BlackImage and RYImage\r\n"); - Paint_NewImage(BlackImage, EPD_2IN13BC_WIDTH, EPD_2IN13BC_HEIGHT, 270, WHITE); - Paint_NewImage(RYImage, EPD_2IN13BC_WIDTH, EPD_2IN13BC_HEIGHT, 270, WHITE); - - //Select Image - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - Paint_SelectImage(RYImage); - Paint_Clear(WHITE); - -#if 1 // show bmp - printf("show window BMP-----------------\r\n"); - Paint_SelectImage(BlackImage); - GUI_ReadBmp("./pic/100x100.bmp", 10, 0); - Paint_SelectImage(RYImage); - Paint_Clear(WHITE); - EPD_2IN13BC_Display(BlackImage, RYImage); - DEV_Delay_ms(2000); - - printf("show red bmp------------------------\r\n"); - Paint_SelectImage(BlackImage); - GUI_ReadBmp("./pic/2in13bc-b.bmp", 0, 0); - Paint_SelectImage(RYImage); - GUI_ReadBmp("./pic/2in13bc-ry.bmp", 0, 0); - EPD_2IN13BC_Display(BlackImage, RYImage); - // DEV_Delay_ms(2000); - -#endif - -#if 1 // show image for array - printf("show image for array\r\n"); -// EPD_2IN13BC_Display(gImage_2in13b_b, gImage_2in13b_r); - - EPD_2IN13BC_Display(gImage_2in13c_b, gImage_2in13c_y); - DEV_Delay_ms(2000); -#endif - -#if 1 // Drawing on the image - /*Horizontal screen*/ - //1.Draw black image - printf("Draw black image\r\n"); - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - Paint_DrawPoint(5, 70, BLACK, DOT_PIXEL_1X1, DOT_STYLE_DFT); - Paint_DrawPoint(5, 80, BLACK, DOT_PIXEL_2X2, DOT_STYLE_DFT); - Paint_DrawLine(20, 70, 50, 100, BLACK, DOT_PIXEL_1X1, LINE_STYLE_SOLID); - Paint_DrawLine(50, 70, 20, 100, BLACK, DOT_PIXEL_1X1, LINE_STYLE_SOLID); - Paint_DrawRectangle(60, 70, 90, 100, BLACK, DOT_PIXEL_1X1, DRAW_FILL_FULL); - Paint_DrawCircle(125, 85, 15, BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY); - Paint_DrawString_CN(5, 15, "你好abc", &Font12CN, WHITE, BLACK); - - //2.Draw red image - printf("Draw red image\r\n"); - Paint_SelectImage(RYImage); - Paint_Clear(WHITE); - Paint_DrawPoint(5, 90, RED, DOT_PIXEL_3X3, DOT_STYLE_DFT); - Paint_DrawPoint(5, 100, RED, DOT_PIXEL_4X4, DOT_STYLE_DFT); - Paint_DrawLine(125, 70, 125, 100, RED, DOT_PIXEL_1X1, LINE_STYLE_DOTTED); - Paint_DrawLine(110, 85, 140, 85, RED, DOT_PIXEL_1X1, LINE_STYLE_DOTTED); - Paint_DrawRectangle(20, 70, 50, 100, RED, DOT_PIXEL_1X1, DRAW_FILL_EMPTY); - Paint_DrawCircle(165, 85, 15, RED, DOT_PIXEL_1X1, DRAW_FILL_FULL); - Paint_DrawString_EN(5, 0, "waveshare Electronics", &Font12, BLACK, WHITE); - Paint_DrawNum(5, 50, 987654321, &Font16, WHITE, RED); - - printf("EPD_Display\r\n"); - EPD_2IN13BC_Display(BlackImage, RYImage); - DEV_Delay_ms(2000); -#endif - - printf("Clear...\r\n"); - EPD_2IN13BC_Clear(); - - printf("Goto Sleep...\r\n"); - EPD_2IN13BC_Sleep(); - free(BlackImage); - free(RYImage); - BlackImage = NULL; - RYImage = NULL; - - // close 5V - printf("close 5V, Module enters 0 power consumption ...\r\n"); - DEV_Module_Exit(); - - return 0; -} - diff --git a/Raspberry Pi/c/examples/EPD_2in13d_test.c b/Raspberry Pi/c/examples/EPD_2in13d_test.c deleted file mode 100644 index 500c29e..0000000 --- a/Raspberry Pi/c/examples/EPD_2in13d_test.c +++ /dev/null @@ -1,160 +0,0 @@ -/***************************************************************************** -* | File : EPD_2in13d_test.c -* | Author : Waveshare team -* | Function : 2.9inch e-paper test demo -* | Info : -*---------------- -* | This version: V1.0 -* | Date : 2019-06-13 -* | Info : -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "EPD_Test.h" -#include "EPD_2in13d.h" - -int EPD_2in13d_test(void) -{ - printf("EPD_2IN13D_test Demo\r\n"); - DEV_Module_Init(); - - printf("e-Paper Init and Clear...\r\n"); - EPD_2IN13D_Init(); - EPD_2IN13D_Clear(); - DEV_Delay_ms(500); - - //Create a new image cache - UBYTE *BlackImage; - /* you have to edit the startup_stm32fxxx.s file and set a big enough heap size */ - UWORD Imagesize = ((EPD_2IN13D_WIDTH % 8 == 0)? (EPD_2IN13D_WIDTH / 8 ): (EPD_2IN13D_WIDTH / 8 + 1)) * EPD_2IN13D_HEIGHT; - if((BlackImage = (UBYTE *)malloc(Imagesize)) == NULL) { - printf("Failed to apply for black memory...\r\n"); - return -1; - } - printf("Paint_NewImage\r\n"); - Paint_NewImage(BlackImage, EPD_2IN13D_WIDTH, EPD_2IN13D_HEIGHT, 270, WHITE); - -#if 1 // show bmp - printf("show window BMP-----------------\r\n"); - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - GUI_ReadBmp("./pic/100x100.bmp", 10, 10); - EPD_2IN13D_Display(BlackImage); - DEV_Delay_ms(2000); - - printf("show bmp------------------------\r\n"); - Paint_SelectImage(BlackImage); - GUI_ReadBmp("./pic/2in13d.bmp", 0, 0); - EPD_2IN13D_Display(BlackImage); - DEV_Delay_ms(2000); -#endif - -#if 1 //show image for array - printf("show image for array\r\n"); - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - Paint_DrawBitMap(gImage_2in13d); - - EPD_2IN13D_Display(BlackImage); - DEV_Delay_ms(2000); -#endif - -#if 1 // Drawing on the image - printf("Drawing\r\n"); - //1.Select Image - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - - // 2.Drawing on the image - Paint_DrawString_EN(5, 5, "waveshare", &Font16, BLACK, WHITE); - Paint_DrawNum(5, 25, 123456789, &Font16, BLACK, WHITE); - Paint_DrawString_CN(5, 45,"你好abc", &Font12CN, BLACK, WHITE); - Paint_DrawString_CN(5, 60,"微雪电子", &Font24CN, WHITE, BLACK); - EPD_2IN13D_Display(BlackImage); - DEV_Delay_ms(1000); - - Paint_Clear(WHITE); - Paint_DrawPoint(5, 10, BLACK, DOT_PIXEL_1X1, DOT_STYLE_DFT); - Paint_DrawPoint(5, 25, BLACK, DOT_PIXEL_2X2, DOT_STYLE_DFT); - Paint_DrawPoint(5, 40, BLACK, DOT_PIXEL_3X3, DOT_STYLE_DFT); - Paint_DrawPoint(5, 55, BLACK, DOT_PIXEL_4X4, DOT_STYLE_DFT); - Paint_DrawLine(20, 10, 70, 60, BLACK, DOT_PIXEL_1X1, LINE_STYLE_SOLID); - Paint_DrawLine(70, 10, 20, 60, BLACK, DOT_PIXEL_1X1, LINE_STYLE_SOLID); - Paint_DrawLine(170, 15, 170, 55, BLACK, DOT_PIXEL_1X1, LINE_STYLE_DOTTED); - Paint_DrawLine(150, 35, 190, 35, BLACK, DOT_PIXEL_1X1, LINE_STYLE_DOTTED); - Paint_DrawRectangle(20, 10, 70, 60, BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY); - Paint_DrawRectangle(85, 10, 130, 60, BLACK, DOT_PIXEL_1X1, DRAW_FILL_FULL); - Paint_DrawCircle(170, 35, 20, BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY); - Paint_DrawCircle(170, 80, 20, BLACK, DOT_PIXEL_1X1, DRAW_FILL_FULL); - EPD_2IN13D_Display(BlackImage); - DEV_Delay_ms(2000); -#endif - -#if 1 //Partial refresh, example shows time - printf("Partial refresh\r\n"); - Paint_SelectImage(BlackImage); - PAINT_TIME sPaint_time; - sPaint_time.Hour = 12; - sPaint_time.Min = 34; - sPaint_time.Sec = 56; - UBYTE num = 20; - for (;;) { - sPaint_time.Sec = sPaint_time.Sec + 1; - if (sPaint_time.Sec == 60) { - sPaint_time.Min = sPaint_time.Min + 1; - sPaint_time.Sec = 0; - if (sPaint_time.Min == 60) { - sPaint_time.Hour = sPaint_time.Hour + 1; - sPaint_time.Min = 0; - if (sPaint_time.Hour == 24) { - sPaint_time.Hour = 0; - sPaint_time.Min = 0; - sPaint_time.Sec = 0; - } - } - } - Paint_ClearWindows(15, 65, 15 + Font20.Width * 7, 65 + Font20.Height, WHITE); - Paint_DrawTime(15, 65, &sPaint_time, &Font20, WHITE, BLACK); - - num = num - 1; - if(num == 0) { - break; - } - EPD_2IN13D_DisplayPart(BlackImage); - DEV_Delay_ms(500);//Analog clock 1s - } - -#endif - printf("Clear...\r\n"); - EPD_2IN13D_Init(); - EPD_2IN13D_Clear(); - - printf("Goto Sleep...\r\n"); - EPD_2IN13D_Sleep(); - free(BlackImage); - BlackImage = NULL; - - // close 5V - printf("close 5V, Module enters 0 power consumption ...\r\n"); - DEV_Module_Exit(); - - return 0; -} - diff --git a/Raspberry Pi/c/examples/EPD_2in7_test.c b/Raspberry Pi/c/examples/EPD_2in7_test.c deleted file mode 100644 index 0a15a43..0000000 --- a/Raspberry Pi/c/examples/EPD_2in7_test.c +++ /dev/null @@ -1,125 +0,0 @@ -/***************************************************************************** -* | File : EPD_2IN7_test.c -* | Author : Waveshare team -* | Function : 1.54inch e-paper test demo -* | Info : -*---------------- -* | This version: V1.0 -* | Date : 2019-06-11 -* | Info : -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "EPD_Test.h" -#include "EPD_2in7.h" - -int EPD_2in7_test(void) -{ - printf("EPD_2IN7_test Demo\r\n"); - DEV_Module_Init(); - - printf("e-Paper Init and Clear...\r\n"); - EPD_2IN7_Init(); - EPD_2IN7_Clear(); - DEV_Delay_ms(500); - - //Create a new image cache - UBYTE *BlackImage; - /* you have to edit the startup_stm32fxxx.s file and set a big enough heap size */ - UWORD Imagesize = ((EPD_2IN7_WIDTH % 8 == 0)? (EPD_2IN7_WIDTH / 8 ): (EPD_2IN7_WIDTH / 8 + 1)) * EPD_2IN7_HEIGHT; - if((BlackImage = (UBYTE *)malloc(Imagesize)) == NULL) { - printf("Failed to apply for black memory...\r\n"); - return -1; - } - printf("Paint_NewImage\r\n"); - Paint_NewImage(BlackImage, EPD_2IN7_WIDTH, EPD_2IN7_HEIGHT, 270, WHITE); - -#if 1 // show bmp - printf("show window BMP-----------------\r\n"); - Paint_SelectImage(BlackImage); - - Paint_Clear(WHITE); - GUI_ReadBmp("./pic/100x100.bmp", 50, 50); - EPD_2IN7_Display(BlackImage); - DEV_Delay_ms(500); - - printf("show bmp------------------------\r\n"); - Paint_Clear(WHITE); - GUI_ReadBmp("./pic/2in7.bmp", 0, 0); - EPD_2IN7_Display(BlackImage); - DEV_Delay_ms(2000); -#endif - - -#if 1 // show image for array - printf("show image for array\r\n"); - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - Paint_DrawBitMap(gImage_2in7); - EPD_2IN7_Display(BlackImage); - DEV_Delay_ms(500); -#endif - -#if 1 // Drawing on the image - //1.Select Image - printf("SelectImage:BlackImage\r\n"); - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - - // 2.Drawing on the image - printf("Drawing:BlackImage\r\n"); - Paint_DrawPoint(10, 80, BLACK, DOT_PIXEL_1X1, DOT_STYLE_DFT); - Paint_DrawPoint(10, 90, BLACK, DOT_PIXEL_2X2, DOT_STYLE_DFT); - Paint_DrawPoint(10, 100, BLACK, DOT_PIXEL_3X3, DOT_STYLE_DFT); - Paint_DrawLine(20, 70, 70, 120, BLACK, DOT_PIXEL_1X1, LINE_STYLE_SOLID); - Paint_DrawLine(70, 70, 20, 120, BLACK, DOT_PIXEL_1X1, LINE_STYLE_SOLID); - Paint_DrawRectangle(20, 70, 70, 120, BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY); - Paint_DrawRectangle(80, 70, 130, 120, BLACK, DOT_PIXEL_1X1, DRAW_FILL_FULL); - Paint_DrawCircle(45, 95, 20, BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY); - Paint_DrawCircle(105, 95, 20, WHITE, DOT_PIXEL_1X1, DRAW_FILL_FULL); - Paint_DrawLine(85, 95, 125, 95, BLACK, DOT_PIXEL_1X1, LINE_STYLE_DOTTED); - Paint_DrawLine(105, 75, 105, 115, BLACK, DOT_PIXEL_1X1, LINE_STYLE_DOTTED); - Paint_DrawString_EN(10, 0, "waveshare", &Font16, BLACK, WHITE); - Paint_DrawString_EN(10, 20, "hello world", &Font12, WHITE, BLACK); - 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); - - printf("EPD_Display\r\n"); - EPD_2IN7_Display(BlackImage); - DEV_Delay_ms(2000); -#endif - - printf("Clear...\r\n"); - EPD_2IN7_Clear(); - - printf("Goto Sleep...\r\n"); - EPD_2IN7_Sleep(); - free(BlackImage); - BlackImage = NULL; - - // close 5V - printf("close 5V, Module enters 0 power consumption ...\r\n"); - DEV_Module_Exit(); - - return 0; -} - diff --git a/Raspberry Pi/c/examples/EPD_2in7b_test.c b/Raspberry Pi/c/examples/EPD_2in7b_test.c deleted file mode 100644 index 1295b2f..0000000 --- a/Raspberry Pi/c/examples/EPD_2in7b_test.c +++ /dev/null @@ -1,139 +0,0 @@ -/***************************************************************************** -* | File : EPD_2IN7b_test.c -* | Author : Waveshare team -* | Function : 2.7inch e-paper b test demo -* | Info : -*---------------- -* | This version: V1.0 -* | Date : 2019-06-11 -* | Info : -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "EPD_Test.h" -#include "EPD_2in7b.h" - -int EPD_2in7b_test(void) -{ - printf("EPD_2IN7B_test Demo\r\n"); - DEV_Module_Init(); - - printf("e-Paper Init and Clear...\r\n"); - EPD_2IN7B_Init(); - EPD_2IN7B_Clear(); - DEV_Delay_ms(500); - - //Create a new image cache named IMAGE_BW and fill it with white - UBYTE *BlackImage, *RedImage; - UWORD Imagesize = ((EPD_2IN7B_WIDTH % 8 == 0)? (EPD_2IN7B_WIDTH / 8 ): (EPD_2IN7B_WIDTH / 8 + 1)) * EPD_2IN7B_HEIGHT; - if((BlackImage = (UBYTE *)malloc(Imagesize)) == NULL) { - printf("Failed to apply for black memory...\r\n"); - return -1; - } - if((RedImage = (UBYTE *)malloc(Imagesize)) == NULL) { - printf("Failed to apply for red memory...\r\n"); - return -1; - } - printf("NewImage:BlackImage and RedImage\r\n"); - Paint_NewImage(BlackImage, EPD_2IN7B_WIDTH, EPD_2IN7B_HEIGHT, 270, WHITE); - Paint_NewImage(RedImage, EPD_2IN7B_WIDTH, EPD_2IN7B_HEIGHT, 270, WHITE); - - //Select Image - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - Paint_SelectImage(RedImage); - Paint_Clear(WHITE); - -#if 1 // show bmp - printf("show window BMP-----------------\r\n"); - Paint_SelectImage(BlackImage); - GUI_ReadBmp("./pic/100x100.bmp", 50, 10); - Paint_SelectImage(RedImage); - Paint_Clear(WHITE); - EPD_2IN7B_Display(BlackImage, RedImage); - DEV_Delay_ms(2000); - - printf("show bmp------------------------\r\n"); - Paint_SelectImage(BlackImage); - GUI_ReadBmp("./pic/2in7b-b.bmp", 0, 0); - Paint_SelectImage(RedImage); - GUI_ReadBmp("./pic/2in7b-r.bmp", 0, 0); - EPD_2IN7B_Display(BlackImage, RedImage); - DEV_Delay_ms(2000); -#endif - -#if 1 // show image for array - printf("show image for array\r\n"); - Paint_SelectImage(BlackImage); - Paint_DrawBitMap(gImage_2in7b_Black); - Paint_SelectImage(RedImage); - Paint_DrawBitMap(gImage_2in7b_Red); - EPD_2IN7B_Display(BlackImage, RedImage); - DEV_Delay_ms(2000); -#endif - -#if 1 // Drawing on the image - /*Horizontal screen*/ - //1.Draw black image - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - Paint_DrawPoint(10, 80, BLACK, DOT_PIXEL_1X1, DOT_STYLE_DFT); - Paint_DrawPoint(10, 90, BLACK, DOT_PIXEL_2X2, DOT_STYLE_DFT); - Paint_DrawPoint(10, 100, BLACK, DOT_PIXEL_3X3, DOT_STYLE_DFT); - Paint_DrawPoint(10, 110, BLACK, DOT_PIXEL_3X3, DOT_STYLE_DFT); - Paint_DrawLine(20, 70, 70, 120, BLACK, DOT_PIXEL_1X1, LINE_STYLE_SOLID); - Paint_DrawLine(70, 70, 20, 120, BLACK, DOT_PIXEL_1X1, LINE_STYLE_SOLID); - Paint_DrawRectangle(20, 70, 70, 120, BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY); - Paint_DrawRectangle(80, 70, 130, 120, BLACK, DOT_PIXEL_1X1, DRAW_FILL_FULL); - Paint_DrawString_EN(10, 0, "waveshare", &Font16, BLACK, WHITE); - Paint_DrawString_CN(130, 20, "微雪电子", &Font24CN, WHITE, BLACK); - Paint_DrawNum(10, 50, 987654321, &Font16, WHITE, BLACK); - - //2.Draw red image - Paint_SelectImage(RedImage); - Paint_Clear(WHITE); - Paint_DrawCircle(160, 95, 20, BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY); - Paint_DrawCircle(210, 95, 20, BLACK, DOT_PIXEL_1X1, DRAW_FILL_FULL); - Paint_DrawLine(85, 95, 125, 95, BLACK, DOT_PIXEL_1X1, LINE_STYLE_DOTTED); - Paint_DrawLine(105, 75, 105, 115, BLACK, DOT_PIXEL_1X1, LINE_STYLE_DOTTED); - Paint_DrawString_CN(130, 0,"你好abc", &Font12CN, BLACK, WHITE); - Paint_DrawString_EN(10, 20, "hello world", &Font12, WHITE, BLACK); - Paint_DrawNum(10, 33, 123456789, &Font12, BLACK, WHITE); - - printf("EPD_Display\r\n"); - EPD_2IN7B_Display(BlackImage, RedImage); - DEV_Delay_ms(2000); -#endif - - printf("Clear...\r\n"); - EPD_2IN7B_Clear(); - - printf("Goto Sleep...\r\n"); - EPD_2IN7B_Sleep(); - free(BlackImage); - BlackImage = NULL; - - // close 5V - printf("close 5V, Module enters 0 power consumption ...\r\n"); - DEV_Module_Exit(); - - return 0; -} - diff --git a/Raspberry Pi/c/examples/EPD_2in9_test.c b/Raspberry Pi/c/examples/EPD_2in9_test.c deleted file mode 100644 index d3414aa..0000000 --- a/Raspberry Pi/c/examples/EPD_2in9_test.c +++ /dev/null @@ -1,168 +0,0 @@ -/***************************************************************************** -* | File : EPD_2IN9_test.c -* | Author : Waveshare team -* | Function : 2.9inch e-paper test demo -* | Info : -*---------------- -* | This version: V1.0 -* | Date : 2019-06-11 -* | Info : -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "EPD_Test.h" -#include "EPD_2in9.h" - -int EPD_2in9_test(void) -{ - printf("EPD_2IN9_test Demo\r\n"); - DEV_Module_Init(); - - printf("e-Paper Init and Clear...\r\n"); - EPD_2IN9_Init(EPD_2IN9_FULL); - EPD_2IN9_Clear(); - DEV_Delay_ms(500); - - //Create a new image cache - UBYTE *BlackImage; - /* you have to edit the startup_stm32fxxx.s file and set a big enough heap size */ - UWORD Imagesize = ((EPD_2IN9_WIDTH % 8 == 0)? (EPD_2IN9_WIDTH / 8 ): (EPD_2IN9_WIDTH / 8 + 1)) * EPD_2IN9_HEIGHT; - if((BlackImage = (UBYTE *)malloc(Imagesize)) == NULL) { - printf("Failed to apply for black memory...\r\n"); - return -1; - } - printf("Paint_NewImage\r\n"); - Paint_NewImage(BlackImage, EPD_2IN9_WIDTH, EPD_2IN9_HEIGHT, 270, WHITE); - -#if 1 // show bmp - printf("show window BMP-----------------\r\n"); - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - GUI_ReadBmp("./pic/100x100.bmp", 10, 10); - EPD_2IN9_Display(BlackImage); - DEV_Delay_ms(2000); - - printf("show bmp------------------------\r\n"); - Paint_SelectImage(BlackImage); - GUI_ReadBmp("./pic/2in9.bmp", 0, 0); - EPD_2IN9_Display(BlackImage); - DEV_Delay_ms(2000); -#endif - - -#if 1 //show image for array - printf("show image for array\r\n"); - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - Paint_DrawBitMap(gImage_2in9); - - EPD_2IN9_Display(BlackImage); - DEV_Delay_ms(2000); -#endif - -#if 1 // Drawing on the image - printf("Drawing\r\n"); - //1.Select Image - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - - // 2.Drawing on the image - printf("Drawing:BlackImage\r\n"); - Paint_DrawPoint(10, 80, BLACK, DOT_PIXEL_1X1, DOT_STYLE_DFT); - Paint_DrawPoint(10, 90, BLACK, DOT_PIXEL_2X2, DOT_STYLE_DFT); - Paint_DrawPoint(10, 100, BLACK, DOT_PIXEL_3X3, DOT_STYLE_DFT); - - Paint_DrawLine(20, 70, 70, 120, BLACK, DOT_PIXEL_1X1, LINE_STYLE_SOLID); - Paint_DrawLine(70, 70, 20, 120, BLACK, DOT_PIXEL_1X1, LINE_STYLE_SOLID); - - Paint_DrawRectangle(20, 70, 70, 120, BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY); - Paint_DrawRectangle(80, 70, 130, 120, BLACK, DOT_PIXEL_1X1, DRAW_FILL_FULL); - - Paint_DrawCircle(45, 95, 20, BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY); - Paint_DrawCircle(105, 95, 20, WHITE, DOT_PIXEL_1X1, DRAW_FILL_FULL); - - Paint_DrawLine(85, 95, 125, 95, BLACK, DOT_PIXEL_1X1, LINE_STYLE_DOTTED); - Paint_DrawLine(105, 75, 105, 115, BLACK, DOT_PIXEL_1X1, LINE_STYLE_DOTTED); - - Paint_DrawString_EN(10, 0, "waveshare", &Font16, BLACK, WHITE); - Paint_DrawString_EN(10, 20, "hello world", &Font12, WHITE, BLACK); - - 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); - - EPD_2IN9_Display(BlackImage); - DEV_Delay_ms(2000); -#endif - -#if 1 //Partial refresh, example shows time - printf("Partial refresh\r\n"); - EPD_2IN9_Init(EPD_2IN9_PART); - Paint_SelectImage(BlackImage); - PAINT_TIME sPaint_time; - sPaint_time.Hour = 12; - sPaint_time.Min = 34; - sPaint_time.Sec = 56; - UBYTE num = 20; - for (;;) { - sPaint_time.Sec = sPaint_time.Sec + 1; - if (sPaint_time.Sec == 60) { - sPaint_time.Min = sPaint_time.Min + 1; - sPaint_time.Sec = 0; - if (sPaint_time.Min == 60) { - sPaint_time.Hour = sPaint_time.Hour + 1; - sPaint_time.Min = 0; - if (sPaint_time.Hour == 24) { - sPaint_time.Hour = 0; - sPaint_time.Min = 0; - sPaint_time.Sec = 0; - } - } - } - Paint_ClearWindows(150, 80, 150 + Font20.Width * 7, 80 + Font20.Height, WHITE); - Paint_DrawTime(150, 80, &sPaint_time, &Font20, WHITE, BLACK); - - num = num - 1; - if(num == 0) { - break; - } - EPD_2IN9_Display(BlackImage); - DEV_Delay_ms(500);//Analog clock 1s - } - -#endif - printf("Clear...\r\n"); - EPD_2IN9_Init(EPD_2IN9_FULL); - EPD_2IN9_Clear(); - - printf("Goto Sleep...\r\n"); - EPD_2IN9_Sleep(); - free(BlackImage); - BlackImage = NULL; - - // close 5V - printf("close 5V, Module enters 0 power consumption ...\r\n"); - DEV_Module_Exit(); - - return 0; -} - diff --git a/Raspberry Pi/c/examples/EPD_2in9bc_test.c b/Raspberry Pi/c/examples/EPD_2in9bc_test.c deleted file mode 100644 index 3e7a5e2..0000000 --- a/Raspberry Pi/c/examples/EPD_2in9bc_test.c +++ /dev/null @@ -1,138 +0,0 @@ -/***************************************************************************** -* | File : EPD_2in9bc_test.c -* | Author : Waveshare team -* | Function : 2.9inch B&C e-paper test demo -* | Info : -*---------------- -* | This version: V1.0 -* | Date : 2019-06-12 -* | Info : -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "EPD_Test.h" -#include "EPD_2in9bc.h" - -int EPD_2in9bc_test(void) -{ - printf("EPD_2IN9BC_test Demo\r\n"); - DEV_Module_Init(); - - printf("e-Paper Init and Clear...\r\n"); - EPD_2IN9BC_Init(); - EPD_2IN9BC_Clear(); - DEV_Delay_ms(500); - - //Create a new image cache named IMAGE_BW and fill it with white - UBYTE *BlackImage, *RYImage; // Red or Yellow - UWORD Imagesize = ((EPD_2IN9BC_WIDTH % 8 == 0)? (EPD_2IN9BC_WIDTH / 8 ): (EPD_2IN9BC_WIDTH / 8 + 1)) * EPD_2IN9BC_HEIGHT; - if((BlackImage = (UBYTE *)malloc(Imagesize)) == NULL) { - printf("Failed to apply for black memory...\r\n"); - return -1; - } - if((RYImage = (UBYTE *)malloc(Imagesize)) == NULL) { - printf("Failed to apply for red memory...\r\n"); - return -1; - } - printf("NewImage:BlackImage and RYImage\r\n"); - Paint_NewImage(BlackImage, EPD_2IN9BC_WIDTH, EPD_2IN9BC_HEIGHT, 270, WHITE); - Paint_NewImage(RYImage, EPD_2IN9BC_WIDTH, EPD_2IN9BC_HEIGHT, 270, WHITE); - - //Select Image - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - Paint_SelectImage(RYImage); - Paint_Clear(WHITE); - -#if 1 // show bmp - printf("show window BMP-----------------\r\n"); - Paint_SelectImage(BlackImage); - GUI_ReadBmp("./pic/100x100.bmp", 50, 10); - Paint_SelectImage(RYImage); - Paint_Clear(WHITE); - EPD_2IN9BC_Display(BlackImage, RYImage); - DEV_Delay_ms(2000); - - printf("show red bmp------------------------\r\n"); - Paint_SelectImage(BlackImage); - GUI_ReadBmp("./pic/2in9bc-b.bmp", 0, 0); - Paint_SelectImage(RYImage); - GUI_ReadBmp("./pic/2in9bc-ry.bmp", 0, 0); - EPD_2IN9BC_Display(BlackImage, RYImage); - // DEV_Delay_ms(2000); - -#endif - -#if 1 // show image for array - printf("show image for array\r\n"); - EPD_2IN9BC_Display(gImage_2in9bc_b, gImage_2in9bc_ry); - DEV_Delay_ms(2000); -#endif - -#if 1 // Drawing on the image - /*Horizontal screen*/ - //1.Draw black image - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - Paint_DrawPoint(10, 80, BLACK, DOT_PIXEL_1X1, DOT_STYLE_DFT); - Paint_DrawPoint(10, 90, BLACK, DOT_PIXEL_2X2, DOT_STYLE_DFT); - Paint_DrawPoint(10, 100, BLACK, DOT_PIXEL_3X3, DOT_STYLE_DFT); - Paint_DrawPoint(10, 110, BLACK, DOT_PIXEL_3X3, DOT_STYLE_DFT); - Paint_DrawLine(20, 70, 70, 120, BLACK, DOT_PIXEL_1X1, LINE_STYLE_SOLID); - Paint_DrawLine(70, 70, 20, 120, BLACK, DOT_PIXEL_1X1, LINE_STYLE_SOLID); - Paint_DrawRectangle(20, 70, 70, 120, BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY); - Paint_DrawRectangle(80, 70, 130, 120, BLACK, DOT_PIXEL_1X1, DRAW_FILL_FULL); - Paint_DrawString_EN(10, 0, "waveshare", &Font16, BLACK, WHITE); - Paint_DrawString_CN(130, 20, "微雪电子", &Font24CN, WHITE, BLACK); - Paint_DrawNum(10, 50, 987654321, &Font16, WHITE, BLACK); - - //2.Draw red image - Paint_SelectImage(RYImage); - Paint_Clear(WHITE); - Paint_DrawCircle(160, 95, 20, BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY); - Paint_DrawCircle(210, 95, 20, BLACK, DOT_PIXEL_1X1, DRAW_FILL_FULL); - Paint_DrawLine(85, 95, 125, 95, BLACK, DOT_PIXEL_1X1, LINE_STYLE_DOTTED); - Paint_DrawLine(105, 75, 105, 115, BLACK, DOT_PIXEL_1X1, LINE_STYLE_DOTTED); - Paint_DrawString_CN(130, 0,"你好abc", &Font12CN, BLACK, WHITE); - Paint_DrawString_EN(10, 20, "hello world", &Font12, WHITE, BLACK); - Paint_DrawNum(10, 33, 123456789, &Font12, BLACK, WHITE); - - printf("EPD_Display\r\n"); - EPD_2IN9BC_Display(BlackImage, RYImage); - DEV_Delay_ms(2000); -#endif - - printf("Clear...\r\n"); - EPD_2IN9BC_Clear(); - - printf("Goto Sleep...\r\n"); - EPD_2IN9BC_Sleep(); - free(BlackImage); - free(RYImage); - BlackImage = NULL; - RYImage = NULL; - - // close 5V - printf("close 5V, Module enters 0 power consumption ...\r\n"); - DEV_Module_Exit(); - - return 0; -} - diff --git a/Raspberry Pi/c/examples/EPD_2in9d_test.c b/Raspberry Pi/c/examples/EPD_2in9d_test.c deleted file mode 100644 index bf7fc18..0000000 --- a/Raspberry Pi/c/examples/EPD_2in9d_test.c +++ /dev/null @@ -1,159 +0,0 @@ -/***************************************************************************** -* | File : EPD_2in9d_test.c -* | Author : Waveshare team -* | Function : 2.9inch e-paper d test demo -* | Info : -*---------------- -* | This version: V1.0 -* | Date : 2019-06-13 -* | Info : -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "EPD_Test.h" -#include "EPD_2in9d.h" - -int EPD_2in9d_test(void) -{ - printf("EPD_2IN9D_test Demo\r\n"); - DEV_Module_Init(); - - printf("e-Paper Init and Clear...\r\n"); - EPD_2IN9D_Init(); - EPD_2IN9D_Clear(); - DEV_Delay_ms(500); - - //Create a new image cache - UBYTE *BlackImage; - /* you have to edit the startup_stm32fxxx.s file and set a big enough heap size */ - UWORD Imagesize = ((EPD_2IN9D_WIDTH % 8 == 0)? (EPD_2IN9D_WIDTH / 8 ): (EPD_2IN9D_WIDTH / 8 + 1)) * EPD_2IN9D_HEIGHT; - if((BlackImage = (UBYTE *)malloc(Imagesize)) == NULL) { - printf("Failed to apply for black memory...\r\n"); - return -1; - } - printf("Paint_NewImage\r\n"); - Paint_NewImage(BlackImage, EPD_2IN9D_WIDTH, EPD_2IN9D_HEIGHT, 270, WHITE); - -#if 1 // show bmp - printf("show window BMP-----------------\r\n"); - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - GUI_ReadBmp("./pic/100x100.bmp", 10, 10); - EPD_2IN9D_Display(BlackImage); - DEV_Delay_ms(2000); - - printf("show bmp------------------------\r\n"); - Paint_SelectImage(BlackImage); - GUI_ReadBmp("./pic/2in9d.bmp", 0, 0); - EPD_2IN9D_Display(BlackImage); - DEV_Delay_ms(2000); -#endif - -#if 1 //show image for array - printf("show image for array\r\n"); - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - Paint_DrawBitMap(gImage_2in9); - - EPD_2IN9D_Display(BlackImage); - DEV_Delay_ms(2000); -#endif - -#if 1 // Drawing on the image - //1.Select Image - printf("SelectImage:BlackImage\r\n"); - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - - // 2.Drawing on the image - printf("Drawing:BlackImage\r\n"); - Paint_DrawPoint(10, 80, BLACK, DOT_PIXEL_1X1, DOT_STYLE_DFT); - Paint_DrawPoint(10, 90, BLACK, DOT_PIXEL_2X2, DOT_STYLE_DFT); - Paint_DrawPoint(10, 100, BLACK, DOT_PIXEL_3X3, DOT_STYLE_DFT); - Paint_DrawLine(20, 70, 70, 120, BLACK, DOT_PIXEL_1X1, LINE_STYLE_SOLID); - Paint_DrawLine(70, 70, 20, 120, BLACK, DOT_PIXEL_1X1, LINE_STYLE_SOLID); - Paint_DrawRectangle(20, 70, 70, 120, BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY); - Paint_DrawRectangle(80, 70, 130, 120, BLACK, DOT_PIXEL_1X1, DRAW_FILL_FULL); - Paint_DrawCircle(45, 95, 20, BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY); - Paint_DrawCircle(105, 95, 20, WHITE, DOT_PIXEL_1X1, DRAW_FILL_FULL); - Paint_DrawLine(85, 95, 125, 95, BLACK, DOT_PIXEL_1X1, LINE_STYLE_DOTTED); - Paint_DrawLine(105, 75, 105, 115, BLACK, DOT_PIXEL_1X1, LINE_STYLE_DOTTED); - Paint_DrawString_EN(10, 0, "waveshare", &Font16, BLACK, WHITE); - Paint_DrawString_EN(10, 20, "hello world", &Font12, WHITE, BLACK); - 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); - - printf("EPD_Display\r\n"); - EPD_2IN9D_Display(BlackImage); - DEV_Delay_ms(2000); -#endif - -#if 1 //Partial refresh, example shows time - printf("Partial refresh\r\n"); - PAINT_TIME sPaint_time; - sPaint_time.Hour = 12; - sPaint_time.Min = 34; - sPaint_time.Sec = 56; - UBYTE num = 20; - for (;;) { - sPaint_time.Sec = sPaint_time.Sec + 1; - if (sPaint_time.Sec == 60) { - sPaint_time.Min = sPaint_time.Min + 1; - sPaint_time.Sec = 0; - if (sPaint_time.Min == 60) { - sPaint_time.Hour = sPaint_time.Hour + 1; - sPaint_time.Min = 0; - if (sPaint_time.Hour == 24) { - sPaint_time.Hour = 0; - sPaint_time.Min = 0; - sPaint_time.Sec = 0; - } - } - } - Paint_ClearWindows(150, 80, 150 + Font20.Width * 7, 80 + Font20.Height, WHITE); - Paint_DrawTime(150, 80, &sPaint_time, &Font20, WHITE, BLACK); - - num = num - 1; - if(num == 0) { - break; - } - EPD_2IN9D_DisplayPart(BlackImage); - DEV_Delay_ms(500);//Analog clock 1s - } - -#endif - printf("Clear...\r\n"); -// EPD_2IN9D_Init(); - EPD_2IN9D_Clear(); - - printf("Goto Sleep...\r\n"); - EPD_2IN9D_Sleep(); - free(BlackImage); - BlackImage = NULL; - - // close 5V - printf("close 5V, Module enters 0 power consumption ...\r\n"); - DEV_Module_Exit(); - - return 0; -} - diff --git a/Raspberry Pi/c/examples/EPD_4in2bc_test.c b/Raspberry Pi/c/examples/EPD_4in2bc_test.c deleted file mode 100644 index 09bb332..0000000 --- a/Raspberry Pi/c/examples/EPD_4in2bc_test.c +++ /dev/null @@ -1,138 +0,0 @@ -/***************************************************************************** -* | File : EPD_4in2bc_test.c -* | Author : Waveshare team -* | Function : 4.2inch B&C e-paper test demo -* | Info : -*---------------- -* | This version: V1.0 -* | Date : 2019-06-13 -* | Info : -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "EPD_Test.h" -#include "EPD_4in2bc.h" - -int EPD_4in2bc_test(void) -{ - printf("EPD_4IN2BC_test Demo\r\n"); - DEV_Module_Init(); - - printf("e-Paper Init and Clear...\r\n"); - EPD_4IN2BC_Init(); - EPD_4IN2BC_Clear(); - DEV_Delay_ms(500); - - //Create a new image cache named IMAGE_BW and fill it with white - UBYTE *BlackImage, *RYImage; // Red or Yellow - UWORD Imagesize = ((EPD_4IN2BC_WIDTH % 8 == 0)? (EPD_4IN2BC_WIDTH / 8 ): (EPD_4IN2BC_WIDTH / 8 + 1)) * EPD_4IN2BC_HEIGHT; - if((BlackImage = (UBYTE *)malloc(Imagesize)) == NULL) { - printf("Failed to apply for black memory...\r\n"); - return -1; - } - if((RYImage = (UBYTE *)malloc(Imagesize)) == NULL) { - printf("Failed to apply for red memory...\r\n"); - return -1; - } - printf("NewImage:BlackImage and RYImage\r\n"); - Paint_NewImage(BlackImage, EPD_4IN2BC_WIDTH, EPD_4IN2BC_HEIGHT, 180, WHITE); - Paint_NewImage(RYImage, EPD_4IN2BC_WIDTH, EPD_4IN2BC_HEIGHT, 180, WHITE); - - //Select Image - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - Paint_SelectImage(RYImage); - Paint_Clear(WHITE); - -#if 1 // show bmp - printf("show window BMP-----------------\r\n"); - Paint_SelectImage(BlackImage); - GUI_ReadBmp("./pic/100x100.bmp", 10, 0); - Paint_SelectImage(RYImage); - Paint_Clear(WHITE); - EPD_4IN2BC_Display(BlackImage, RYImage); - DEV_Delay_ms(2000); - - printf("show red bmp------------------------\r\n"); - Paint_SelectImage(BlackImage); - GUI_ReadBmp("./pic/4in2b-b.bmp", 0, 0); - Paint_SelectImage(RYImage); - GUI_ReadBmp("./pic/4in2b-r.bmp", 0, 0); - EPD_4IN2BC_Display(BlackImage, RYImage); -#endif - -#if 1 // show image for array - printf("show image for array\r\n"); - EPD_4IN2BC_Display(gImage_4in2bc_b, gImage_4in2bc_ry); - DEV_Delay_ms(2000); -#endif - -#if 1 // Drawing on the image - /*Horizontal screen*/ - //1.Draw black image - printf("Draw black image\r\n"); - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - Paint_DrawPoint(10, 80, BLACK, DOT_PIXEL_1X1, DOT_STYLE_DFT); - Paint_DrawPoint(10, 90, BLACK, DOT_PIXEL_2X2, DOT_STYLE_DFT); - Paint_DrawPoint(10, 100, BLACK, DOT_PIXEL_3X3, DOT_STYLE_DFT); - Paint_DrawPoint(10, 110, BLACK, DOT_PIXEL_3X3, DOT_STYLE_DFT); - Paint_DrawLine(20, 70, 70, 120, BLACK, DOT_PIXEL_1X1, LINE_STYLE_SOLID); - Paint_DrawLine(70, 70, 20, 120, BLACK, DOT_PIXEL_1X1, LINE_STYLE_SOLID); - Paint_DrawRectangle(20, 70, 70, 120, BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY); - Paint_DrawRectangle(80, 70, 130, 120, BLACK, DOT_PIXEL_1X1, DRAW_FILL_FULL); - Paint_DrawString_EN(10, 0, "waveshare", &Font16, BLACK, WHITE); - Paint_DrawString_CN(130, 20, "微雪电子", &Font24CN, WHITE, BLACK); - Paint_DrawNum(10, 50, 987654321, &Font16, WHITE, BLACK); - - //2.Draw red image - printf("Draw red image\r\n"); - Paint_SelectImage(RYImage); - Paint_Clear(WHITE); - Paint_DrawCircle(160, 95, 20, BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY); - Paint_DrawCircle(210, 95, 20, BLACK, DOT_PIXEL_1X1, DRAW_FILL_FULL); - Paint_DrawLine(85, 95, 125, 95, BLACK, DOT_PIXEL_1X1, LINE_STYLE_DOTTED); - Paint_DrawLine(105, 75, 105, 115, BLACK, DOT_PIXEL_1X1, LINE_STYLE_DOTTED); - Paint_DrawString_CN(130, 0,"你好abc", &Font12CN, BLACK, WHITE); - Paint_DrawString_EN(10, 20, "hello world", &Font12, WHITE, BLACK); - Paint_DrawNum(10, 33, 123456789, &Font12, BLACK, WHITE); - - printf("EPD_Display\r\n"); - EPD_4IN2BC_Display(BlackImage, RYImage); - DEV_Delay_ms(2000); -#endif - - printf("Clear...\r\n"); - EPD_4IN2BC_Clear(); - - printf("Goto Sleep...\r\n"); - EPD_4IN2BC_Sleep(); - free(BlackImage); - free(RYImage); - BlackImage = NULL; - RYImage = NULL; - - // close 5V - printf("close 5V, Module enters 0 power consumption ...\r\n"); - DEV_Module_Exit(); - - return 0; -} - diff --git a/Raspberry Pi/c/examples/EPD_7in5_test.c b/Raspberry Pi/c/examples/EPD_7in5_test.c deleted file mode 100644 index 6b6d597..0000000 --- a/Raspberry Pi/c/examples/EPD_7in5_test.c +++ /dev/null @@ -1,123 +0,0 @@ -/***************************************************************************** -* | File : EPD_7in5_test.c -* | Author : Waveshare team -* | Function : 7.5inch e-paper test demo -* | Info : -*---------------- -* | This version: V1.0 -* | Date : 2019-06-13 -* | Info : -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "EPD_Test.h" -#include "EPD_7in5.h" - -int EPD_7in5_test(void) -{ - printf("EPD_7IN5_test Demo\r\n"); - DEV_Module_Init(); - - printf("e-Paper Init and Clear...\r\n"); - EPD_7IN5_Init(); - EPD_7IN5_Clear(); - DEV_Delay_ms(500); - - //Create a new image cache - UBYTE *BlackImage; - /* you have to edit the startup_stm32fxxx.s file and set a big enough heap size */ - UWORD Imagesize = ((EPD_7IN5_WIDTH % 8 == 0)? (EPD_7IN5_WIDTH / 8 ): (EPD_7IN5_WIDTH / 8 + 1)) * EPD_7IN5_HEIGHT; - if((BlackImage = (UBYTE *)malloc(Imagesize)) == NULL) { - printf("Failed to apply for black memory...\r\n"); - return -1; - } - printf("Paint_NewImage\r\n"); - Paint_NewImage(BlackImage, EPD_7IN5_WIDTH, EPD_7IN5_HEIGHT, 0, WHITE); - -#if 1 // show bmp - printf("show window BMP-----------------\r\n"); - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - GUI_ReadBmp("./pic/100x100.bmp", 10, 10); - EPD_7IN5_Display(BlackImage); - DEV_Delay_ms(2000); - - printf("show bmp------------------------\r\n"); - Paint_SelectImage(BlackImage); - GUI_ReadBmp("./pic/7in5.bmp", 0, 0); - EPD_7IN5_Display(BlackImage); - DEV_Delay_ms(2000); -#endif - -#if 1 // show image for array - printf("show image for array\r\n"); - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - Paint_DrawBitMap(gImage_7in5); - EPD_7IN5_Display(BlackImage); - DEV_Delay_ms(500); -#endif - -#if 1 // Drawing on the image - //1.Select Image - printf("SelectImage:BlackImage\r\n"); - Paint_SelectImage(BlackImage); - Paint_Clear(WHITE); - - // 2.Drawing on the image - printf("Drawing:BlackImage\r\n"); - Paint_DrawPoint(10, 80, BLACK, DOT_PIXEL_1X1, DOT_STYLE_DFT); - Paint_DrawPoint(10, 90, BLACK, DOT_PIXEL_2X2, DOT_STYLE_DFT); - Paint_DrawPoint(10, 100, BLACK, DOT_PIXEL_3X3, DOT_STYLE_DFT); - Paint_DrawLine(20, 70, 70, 120, BLACK, DOT_PIXEL_1X1, LINE_STYLE_SOLID); - Paint_DrawLine(70, 70, 20, 120, BLACK, DOT_PIXEL_1X1, LINE_STYLE_SOLID); - Paint_DrawRectangle(20, 70, 70, 120, BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY); - Paint_DrawRectangle(80, 70, 130, 120, BLACK, DOT_PIXEL_1X1, DRAW_FILL_FULL); - Paint_DrawCircle(45, 95, 20, BLACK, DOT_PIXEL_1X1, DRAW_FILL_EMPTY); - Paint_DrawCircle(105, 95, 20, WHITE, DOT_PIXEL_1X1, DRAW_FILL_FULL); - Paint_DrawLine(85, 95, 125, 95, BLACK, DOT_PIXEL_1X1, LINE_STYLE_DOTTED); - Paint_DrawLine(105, 75, 105, 115, BLACK, DOT_PIXEL_1X1, LINE_STYLE_DOTTED); - Paint_DrawString_EN(10, 0, "waveshare", &Font16, BLACK, WHITE); - Paint_DrawString_EN(10, 20, "hello world", &Font12, WHITE, BLACK); - 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); - - printf("EPD_Display\r\n"); - EPD_7IN5_Display(BlackImage); - DEV_Delay_ms(2000); -#endif - - printf("Clear...\r\n"); - EPD_7IN5_Clear(); - - printf("Goto Sleep...\r\n"); - EPD_7IN5_Sleep(); - free(BlackImage); - BlackImage = NULL; - - // close 5V - printf("close 5V, Module enters 0 power consumption ...\r\n"); - DEV_Module_Exit(); - - return 0; -} - diff --git a/Raspberry Pi/c/examples/EPD_Test.h b/Raspberry Pi/c/examples/EPD_Test.h deleted file mode 100644 index e0e00ab..0000000 --- a/Raspberry Pi/c/examples/EPD_Test.h +++ /dev/null @@ -1,65 +0,0 @@ -/***************************************************************************** -* | File : EPD_Test.h -* | Author : Waveshare team -* | Function : e-Paper test Demo -* | Info : -*---------------- -* | This version: V1.0 -* | Date : 2019-06-11 -* | Info : -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#ifndef _EPD_TEST_H_ -#define _EPD_TEST_H_ - -#include "DEV_Config.h" -#include "GUI_Paint.h" -#include "GUI_BMPfile.h" -#include "ImageData.h" -#include "Debug.h" -#include // malloc() free() - -int EPD_1in54_test(void); -int EPD_1in54_V2_test(void); -int EPD_1in54b_test(void); -int EPD_1in54c_test(void); - -int EPD_2in7_test(void); -int EPD_2in7b_test(void); - -int EPD_2in9_test(void); -int EPD_2in9bc_test(void); -int EPD_2in9d_test(void); - -int EPD_2in13_test(void); -int EPD_2in13_V2_test(void); -int EPD_2in13bc_test(void); -int EPD_2in13d_test(void); - -int EPD_4in2_test(void); -int EPD_4in2bc_test(void); - -int EPD_5in83_test(void); -int EPD_5in83bc_test(void); - -int EPD_7in5_test(void); -int EPD_7in5bc_test(void); -#endif diff --git a/Raspberry Pi/c/examples/ImageData.c b/Raspberry Pi/c/examples/ImageData.c deleted file mode 100644 index 0b6bfd2..0000000 --- a/Raspberry Pi/c/examples/ImageData.c +++ /dev/null @@ -1,19388 +0,0 @@ -/***************************************************************************** -* | File : ImageData.c -* | Author : Waveshare team -* | Function : -*---------------- -* | This version: V1.1 -* | Date : 2019-06-12 -* | Info : -* -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - -******************************************************************************/ - -#include "ImageData.h" -const unsigned char gImage_1in54[5000] = { /* 0X00,0X01,0XC8,0X00,0XC8,0X00, */ -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFE,0X01,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF1,0XF8,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF, -0X3F,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XF0,0X00, -0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XF0,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE3,0XFF,0X1F,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1, -0XE0,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0XFF,0X9F,0XFF,0XFF,0XFF,0XFF, -0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XE1,0XE3,0X00,0X00,0X00,0X00,0X01, -0XFF,0XFF,0XE7,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF1,0XC3,0XF3,0X0F,0XFF,0XFF,0XFF,0XFC,0XFF,0XFF,0XE3,0XFF,0X8F,0XFF,0XFF, -0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XC3,0X3B,0X0F,0XFF,0XFF, -0XFF,0XFE,0XFF,0XFF,0XE3,0XFF,0X1F,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF1,0XC3,0X0F,0X0F,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XE1,0XFE,0X1F, -0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XC3,0X0F,0X0F, -0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XF0,0XFC,0X1F,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XE3, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XC3,0X87,0X0F,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XF0, -0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XE0,0X7F,0XFF,0XFF,0XFF,0XFF,0XF1,0XC1, -0X03,0X0F,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XF8,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0X8F, -0XFF,0XE0,0X0F,0XFF,0XFF,0XFF,0XFF,0XF1,0XE0,0X00,0X1F,0XFF,0XFF,0XFF,0XFE,0XFF, -0XFF,0XFE,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFC,0X03,0XFF,0XFF,0XFF,0XFF, -0XF1,0XE0,0X00,0X1F,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X8F,0XFF,0XFF,0X80,0X7F,0XFF,0XFF,0XFF,0XF1,0XF0,0X00,0X3F,0XFF,0XFF,0XFF, -0X7E,0XFF,0XFF,0XFB,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XF0,0X1F,0XFF, -0XFF,0XFF,0XF1,0XF8,0X00,0X7F,0XFF,0XFF,0XFC,0X3E,0XFF,0XFF,0XE0,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0X00,0X1F,0XFF,0XFF,0XFF,0XF1,0XFE,0X00,0XFF,0XFF, -0XFF,0XF0,0X3E,0XFF,0XFF,0XC6,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XF8,0X07, -0X8F,0XFF,0XFF,0XFF,0XF1,0XFE,0X87,0XFF,0XFF,0XFF,0XE0,0XCE,0XFF,0XFF,0XCE,0X7F, -0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XE0,0X1F,0X8F,0XC0,0X07,0XFF,0XF1,0XFE,0XFF, -0XFF,0XFF,0XFF,0X81,0X86,0XFF,0XFF,0XCE,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF, -0XE0,0XFF,0XCF,0X80,0X07,0XFF,0XF1,0XFE,0XFF,0XFF,0XFF,0XFF,0X02,0X06,0XFF,0XFF, -0XC6,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XE3,0XFF,0XEF,0X00,0X07,0XFF,0XF1, -0XFE,0XFF,0XFF,0XFF,0XFE,0X0C,0X02,0XFF,0XFF,0XE0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X8F,0XFF,0XFF,0XFF,0XFF,0X1F,0XFF,0XFF,0XF1,0XFE,0XFF,0XFF,0XFF,0XFE,0X18,0X02, -0XFF,0XFF,0XFB,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0X1F,0XFF, -0XFF,0XF1,0XFE,0XFF,0XFF,0XFF,0XFE,0X20,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X8F,0XFF,0XFE,0X01,0XFF,0X1F,0XFF,0XFF,0XF1,0XFE,0XFF,0XFF,0XFF,0XFE, -0XC0,0X02,0XFF,0XFF,0XFF,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XF0,0X01,0XFF, -0X9F,0XFF,0XFF,0XF1,0XFE,0XFF,0XFF,0XFF,0XFF,0X00,0X02,0XFF,0XFF,0XF8,0X00,0X7F, -0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XE0,0X01,0XE0,0X80,0X0F,0XFF,0XF1,0XFE,0XFF,0XFF, -0XFF,0XFF,0X00,0X02,0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XE7,0XFF,0XFF,0X8F,0XFF,0XE0, -0X03,0XE0,0X00,0X07,0XFF,0XF1,0XFE,0XFF,0XFF,0XFF,0XFF,0X80,0X06,0XFF,0XFF,0XE0, -0XCC,0X1F,0XFF,0XE0,0XFF,0XFF,0X8F,0XFF,0XE2,0X71,0XE0,0X00,0X07,0XFF,0XF1,0XFE, -0XFF,0XFF,0XFF,0XFF,0XC0,0X0E,0XFF,0XFF,0XE3,0XC7,0X1F,0XFF,0XE0,0X3F,0XFF,0X8F, -0XFF,0XE7,0X39,0XE0,0X00,0X0F,0XFF,0XF1,0XFE,0XFF,0XFF,0XFF,0XFF,0XC0,0X0E,0XFF, -0XFF,0XE7,0XE7,0X8F,0XFF,0XF0,0X07,0XFF,0X8F,0XFF,0XE7,0X38,0XFF,0XFF,0XFF,0XFF, -0XF1,0XFE,0XFF,0XFF,0XFF,0XFF,0X00,0X1E,0XFF,0XFF,0XE7,0XE7,0X8F,0XFF,0XFE,0X01, -0XFF,0X8F,0XFF,0XE3,0X10,0XFF,0XFF,0XFF,0XFF,0XF1,0XFE,0XFF,0XFF,0XFF,0XFC,0X00, -0X3E,0XFF,0XFF,0XE3,0XC7,0X8F,0XFF,0XFF,0XC0,0X7F,0X8F,0XFF,0XE3,0X01,0XFF,0X1F, -0XC7,0XFF,0XF1,0XFE,0XFF,0X83,0XFF,0XF0,0X00,0X7E,0XFF,0XFF,0XE0,0X07,0X1F,0XFF, -0XFF,0XF8,0X3F,0X8F,0XFF,0XF3,0X81,0XFF,0X1F,0XC7,0XFF,0XF1,0XFE,0XFC,0X01,0XFF, -0XE0,0X00,0XFE,0XFF,0XFF,0XF0,0X0F,0X1F,0XFF,0XFF,0XC0,0X1F,0X8F,0XFF,0XFF,0XC7, -0XFF,0X1F,0XC7,0XFF,0XF1,0XFE,0XF0,0X07,0XFF,0X80,0X01,0XFE,0XFF,0XFF,0XF8,0X1F, -0XBF,0XFF,0XFE,0X00,0X0F,0X8F,0XFF,0XFF,0XFF,0XF8,0X00,0X07,0XFF,0XF1,0XFE,0XC0, -0X18,0XFE,0X00,0X03,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X07,0X87,0X8F,0XFF, -0XFF,0XFF,0XF8,0X00,0X0F,0XFF,0XF1,0XFE,0XC0,0XE0,0XF8,0X00,0X0F,0XFE,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X1F,0XC7,0X8F,0XFF,0XFF,0XFF,0XF8,0X00,0X0F,0XFF,0XF1, -0XFE,0XC7,0X00,0XE0,0X00,0X1F,0XFE,0XFF,0XFF,0XFF,0XFF,0X9F,0XFF,0XE0,0XFF,0XC7, -0X8F,0XFE,0X00,0X01,0XFF,0X1E,0XFF,0XFF,0XF1,0XFE,0XDC,0X00,0XC0,0X00,0X3F,0XFE, -0XFF,0XFF,0XF8,0X3F,0X1F,0XFF,0XE3,0XFF,0XC7,0X8F,0XFE,0X00,0X01,0XFF,0X1F,0XFF, -0XFF,0XF1,0XFE,0XE0,0X00,0X00,0X00,0XFF,0XFE,0XFF,0XFF,0XF0,0X0F,0X1F,0XFF,0XFF, -0XFF,0XC7,0X8F,0XFE,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XF1,0XFE,0XC0,0X00,0X00,0X03, -0XFF,0XFE,0XFF,0XFF,0XE0,0X03,0X1F,0XFF,0XFF,0XFF,0XFF,0X8F,0XFE,0X03,0XFF,0XF8, -0X7F,0XFF,0XFF,0XF1,0XFE,0XE0,0X00,0X00,0X07,0XFF,0XFE,0XFF,0XFF,0XE3,0XC1,0X9F, -0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XC0,0X7F,0XF8,0X1F,0XFF,0XFF,0XF1,0XFE,0XE0,0X00, -0X00,0X1F,0XFF,0XFE,0XFF,0XFF,0XE7,0XE0,0X9F,0XFF,0XF8,0X00,0XFF,0X8F,0XFF,0XF8, -0X1F,0XF8,0X07,0XFF,0XFF,0XF1,0XFE,0XF0,0X00,0X00,0XFF,0XFF,0XFE,0XFF,0XFF,0XE7, -0XF8,0X1F,0XFF,0XF0,0X00,0XFF,0X8F,0XFF,0XFE,0X03,0XF8,0X01,0XFF,0XFF,0XF1,0XFE, -0XF8,0X00,0X03,0XFF,0XFF,0XFE,0XFF,0XFF,0XE7,0XFC,0X1F,0XFF,0XE0,0X00,0XFF,0X8F, -0XFF,0XFF,0X83,0XF8,0XC0,0X7F,0XFF,0XF1,0XFE,0XFC,0X00,0X3F,0XFF,0XFF,0XFE,0XFF, -0XFF,0XE3,0XFE,0X1F,0XFF,0XE0,0X00,0XFF,0X8F,0XFF,0XFC,0X07,0XF8,0XF0,0X1F,0XFF, -0XF1,0XFE,0XFF,0XB7,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XF1,0XFF,0X1F,0XFF,0XE3,0X31, -0XFF,0X8F,0XFF,0XE0,0X3F,0XF8,0XFC,0X07,0XFF,0XF1,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFE,0XFF,0XFF,0XF3,0XFF,0X9F,0XFF,0XE3,0X38,0XFF,0X8F,0XFF,0X00,0XFF,0XF8,0XFF, -0X03,0XFF,0XF1,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE3,0X38,0XFF,0X8F,0XFE,0X07,0XFF,0XF8,0XFF,0XC3,0XFF,0XF1,0XFE,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0X18,0XFF,0X8F,0XFE,0X00,0X01, -0XF8,0XFF,0XF3,0XFF,0XF1,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XDF, -0XFF,0XFF,0XE3,0X00,0XFF,0X8F,0XFE,0X00,0X01,0XF8,0XFF,0XFF,0XFF,0XF1,0XFE,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XE3,0X80,0XFF,0X8F,0XFE, -0X00,0X01,0XF8,0XFF,0XFF,0XFF,0XF1,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF, -0XFF,0X87,0XFF,0XFF,0XF1,0X81,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1, -0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XC3,0XFF,0XFF,0XFF,0XC3,0XFF, -0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE, -0XFF,0XFF,0XFF,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF1,0XFE,0X7F,0XFF,0XFF,0XFF,0XFF,0XFC,0XFF,0XFF,0XFF,0XF3,0XFF,0XFF,0XFF, -0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0X00,0X00,0X00,0X00, -0X00,0X01,0XFF,0XFF,0XFF,0XE3,0XFF,0XFC,0X00,0X00,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0XFF, -0XFC,0X00,0X00,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0XFF,0XFC,0X00,0X00,0XFF,0X8F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X87,0XFF,0XFC,0X00,0X00,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XE3,0XF1,0XFF,0X8F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X1F,0XFF,0XFF,0XE3,0XF9,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X1F,0XFF,0XFF,0XE3,0XF8, -0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0XE3,0XF8,0XFF,0X80,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF, -0XE1,0XF0,0XFF,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X1F,0XFF,0XFF,0XF0,0X00,0XFF,0X8F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X1F, -0XFF,0XFF,0XF0,0X01,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0XF8,0X01,0XFF,0X8F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X87,0XFF,0XFF,0XFE,0X07,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XCF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8, -0X00,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0XFF,0XFF,0XF0,0X00,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X70,0X3F, -0XFF,0XE0,0X00,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF, -0XFF,0XFA,0XFF,0XFF,0XFF,0XFF,0XF0,0X20,0X1F,0XFF,0XE0,0X00,0XFF,0X8F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XC0,0X1F,0XFF,0XFF,0XFF,0XE0, -0X02,0X1F,0XFF,0XE3,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0XF1,0XFF, -0XFF,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XE3,0X87,0X1F,0XFF,0XE3,0XFF,0XFF,0X8F, -0XFF,0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XE7,0X8F,0X8F,0XFF,0XE3,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0X0F,0XFF,0XFF, -0XF1,0XFF,0XFF,0XFF,0XFE,0X00,0X02,0X7F,0XFF,0XFF,0XE7,0XCF,0X8F,0XFF,0XF0,0XFF, -0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFC,0X00,0X00, -0X7F,0XFF,0XFF,0XE7,0XCF,0X9F,0XFF,0XE0,0X00,0XFF,0X8F,0XFF,0XFE,0X00,0X00,0X00, -0X3F,0XFF,0XF1,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0XFF,0XFF,0XFF,0XE3,0XFF,0X1F,0XFF, -0XE0,0X00,0XFF,0X8F,0XFF,0XFE,0X00,0X00,0X00,0X3F,0XFF,0XF1,0XFF,0XFF,0XFF,0XF8, -0X30,0X00,0XFF,0XFF,0XFF,0XF3,0XFE,0X1F,0XFF,0XE0,0X00,0XFF,0X8F,0XFF,0XFE,0X00, -0X00,0X00,0X3F,0XFF,0XF1,0XFF,0XFF,0XFF,0XF8,0X30,0X00,0XFF,0XFF,0XFF,0XF7,0XFF, -0X3F,0XFF,0XE0,0X00,0XFF,0X8F,0XFF,0XFE,0X00,0X00,0X00,0X3F,0XFF,0XF1,0XFF,0XFF, -0XFF,0XF0,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF, -0XFE,0X00,0X00,0X00,0X3F,0XFF,0XF1,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0X01,0XFF,0X0F,0XFF,0XFF,0XF1, -0XFF,0XFF,0XFF,0X90,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0X1F,0XFF,0XFF,0XFF,0XFF, -0X8F,0XFF,0XFF,0XC0,0X7F,0X0F,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0X10,0X00,0X00,0XFF, -0XFF,0XFF,0XF8,0X1F,0X1F,0XFF,0XE0,0X00,0XFF,0X8F,0XFF,0XFF,0XE0,0X3F,0X0F,0XFF, -0XFF,0XF1,0XFF,0XFF,0XFC,0X10,0X00,0X00,0XFF,0XFF,0XFF,0XF0,0X0F,0X1F,0XFF,0XE0, -0X00,0XFF,0X8F,0XFF,0XFF,0XF8,0X1F,0X0F,0XFF,0XFF,0XF1,0XFF,0XFF,0XF8,0X18,0X30, -0X00,0XFF,0XFF,0XFF,0XE0,0X03,0X1F,0XFF,0XE0,0X00,0XFF,0X8F,0XFF,0XFF,0XFC,0X07, -0X0F,0XFF,0XFF,0XF1,0XFF,0XFF,0XF8,0X08,0X38,0X00,0XFF,0XFF,0XFF,0XE3,0XC1,0X9F, -0XFF,0XE0,0X00,0XFF,0X8F,0XFF,0XFF,0XFF,0X03,0X0F,0XFF,0XFF,0XF1,0XFF,0XFF,0XF0, -0X08,0X30,0X01,0XFF,0XFF,0XFF,0XE7,0XF0,0X9F,0XFF,0XFF,0XE1,0XFF,0X8F,0XFF,0XFF, -0XFF,0X81,0X0F,0XFF,0XFF,0XF1,0XFF,0XFF,0XE0,0X08,0X00,0X01,0XFF,0XFF,0XFF,0XE7, -0XF8,0X1F,0XFF,0XFF,0XF9,0XFF,0X8F,0XFF,0XFF,0XFF,0XE0,0X0F,0XFF,0XFF,0XF1,0XFF, -0XFF,0XE0,0XE4,0X00,0X01,0XFF,0XFF,0XFF,0XE7,0XFC,0X1F,0XFF,0XFF,0XF8,0XFF,0X8F, -0XFF,0XFF,0XFF,0XF0,0X0F,0XFF,0XFF,0XF1,0XFF,0XFF,0XE0,0XE2,0X00,0X03,0XFF,0XFF, -0XFF,0XE3,0XFE,0X1F,0XFF,0XFF,0XF8,0XFF,0X8F,0XFF,0XFF,0XFF,0XF8,0X0F,0XFF,0XFF, -0XF1,0XFF,0XFF,0XC0,0XE2,0X00,0X07,0XFF,0XFF,0XFF,0XF1,0XFF,0X1F,0XFF,0XE0,0X00, -0XFF,0X8F,0XFF,0XFF,0XFF,0XFC,0X0F,0XFF,0XFF,0XF1,0XFF,0XFF,0XC0,0X41,0X00,0X0F, -0XFF,0XFF,0XFF,0XF3,0XFF,0X9F,0XFF,0XE0,0X00,0XFF,0X8F,0XFF,0XFF,0XFF,0XFE,0X0F, -0XFF,0XFF,0XF1,0XFF,0XFF,0XC0,0X00,0XC0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE0,0X01,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XC0,0X00, -0X30,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X03,0XFF,0X8F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XC0,0X00,0X07,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF, -0XC0,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF, -0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XF1,0XFF,0XFF,0XC0,0X00,0X00,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XE0,0XFC,0X01,0XFF,0XFF,0XF1, -0XFF,0XFF,0XC0,0X40,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XBF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X8F,0XFF,0XFF,0XC0,0X78,0X00,0XFF,0XFF,0XF1,0XFF,0XFF,0XC0,0XE0,0X00,0X7F,0XFF, -0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0XFF,0X87,0XFF,0X8F,0XFF,0XFF,0X80,0X38,0X00,0XFF, -0XFF,0XF1,0XFF,0XFF,0XE0,0XE0,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0X1E, -0X03,0XFF,0X8F,0XFF,0XFF,0X00,0X10,0X00,0X7F,0XFF,0XF1,0XFF,0XFF,0XE0,0XE0,0X00, -0X7F,0XFF,0XFF,0XFE,0XFF,0XBF,0XCF,0XFE,0X3E,0X01,0XFF,0X8F,0XFF,0XFF,0X00,0X10, -0X00,0X7F,0XFF,0XF1,0XFF,0XFF,0XE0,0X00,0X00,0X3F,0XFF,0XFF,0XFE,0X3F,0XFF,0X8F, -0XFE,0X3C,0X01,0XFF,0X8F,0XFF,0XFE,0X00,0X00,0XF0,0X7F,0XFF,0XF1,0XFF,0XFF,0XF0, -0X00,0X00,0X3F,0XFF,0XFF,0XFF,0X3C,0X0F,0X9F,0XFE,0X3C,0X30,0XFF,0X8F,0XFF,0XFE, -0X0F,0X01,0XF8,0X3F,0XFF,0XF1,0XFF,0XFF,0XF8,0X00,0X01,0X1F,0XFF,0XFF,0XFF,0XF0, -0X03,0XFF,0XFE,0X3C,0X78,0XFF,0X8F,0XFF,0XFE,0X0F,0X81,0XFC,0X3F,0XFF,0XF1,0XFF, -0XFF,0XF8,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0XFF,0XFE,0X38,0X78,0XFF,0X8F, -0XFF,0XFE,0X1F,0XC3,0XFC,0X3F,0XFF,0XF1,0XFF,0XFF,0XFC,0X00,0X07,0XFF,0XFF,0XFF, -0XFF,0XC0,0X00,0XFF,0XFE,0X18,0X78,0XFF,0X8F,0XFF,0XFE,0X1F,0XC3,0XFC,0X3F,0XFF, -0XF1,0XFF,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X7F,0XFE,0X00,0XF8, -0XFF,0X8F,0XFF,0XFE,0X1F,0XC3,0XFC,0X3F,0XFF,0XF1,0XFF,0XFF,0XFF,0X80,0X3F,0XFF, -0XFF,0XFF,0XFF,0X80,0X00,0X3F,0XFF,0X00,0XF8,0XFF,0X8F,0XFF,0XFE,0X1F,0XC3,0XFC, -0X3F,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X3F,0XFF, -0X01,0XF0,0XFF,0X8F,0XFF,0XFE,0X1F,0XC3,0XFC,0X3F,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X3F,0XFF,0XC3,0XF1,0XFF,0X8F,0XFF,0XFF,0X0F, -0XC3,0XFC,0X3F,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0X00,0X00, -0X31,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0X0F,0XFF,0XF8,0X3F,0XFF,0XF1,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0X00,0X00,0X31,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF, -0XFF,0X07,0XFF,0XF8,0X7F,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X80,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XF1, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X3F,0XFF,0XFF,0XFF,0XFF, -0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X80,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X7F,0XFF,0XFF, -0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X01,0XFF, -0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X78,0X03,0XDF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F, -0X1F,0X8F,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X7F,0XFF,0XCF,0XFF,0XFF,0XFF,0XFF,0X8F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFE,0XFF,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0XFF,0XFF, -0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0X00,0X00, -0X00,0X01,0X7F,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFD,0X80,0X00,0X00,0X03,0X1F,0XFF,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0X0F,0XF8,0X7F,0XFF,0XF1,0XFF,0XF8, -0X80,0X00,0X00,0X02,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF, -0XFF,0XFE,0X07,0XF8,0X3F,0XFF,0XF1,0XFF,0XF0,0X40,0X00,0X00,0X04,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFE,0X07,0XF0,0X3F,0XFF,0XF1, -0XFF,0XF0,0X60,0X00,0X00,0X0C,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X8F,0XFF,0XFF,0XFE,0X07,0XF0,0X3F,0XFF,0XF1,0XFF,0XF0,0X20,0X00,0X00,0X08,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFE,0X07,0XF0,0X3F, -0XFF,0XF1,0XFF,0XF0,0X30,0X00,0X00,0X10,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0X07,0XF8,0X7F,0XFF,0XF1,0XFF,0XF0,0X10,0X00,0X00, -0X30,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0X0F, -0XF8,0X7F,0XFF,0XF1,0XFF,0XF0,0X18,0X00,0X00,0X20,0X07,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XF0,0X08, -0X00,0X00,0X60,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XF0,0X04,0X00,0X00,0X40,0X07,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF, -0XF0,0X06,0X00,0X00,0X80,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XF0,0X02,0X00,0X01,0X80,0X07,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF1,0XFF,0XF0,0X03,0X00,0X01,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00, -0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XF0,0X01,0X00,0X02,0X00, -0X07,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF1,0XFF,0XF0,0X01,0X80,0X06,0X00,0X07,0XFF,0XFF,0XFF,0XFC,0X00,0X00, -0X00,0X00,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XF0,0X00,0X80, -0X04,0X00,0X07,0XFF,0XFF,0XFF,0XF0,0X00,0X38,0X00,0X00,0XFF,0X8F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XF0,0X00,0X40,0X08,0X00,0X07,0XFF,0XFF,0XFF,0XE0, -0X00,0XFE,0X00,0X00,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XF0, -0X00,0X40,0X08,0X00,0X07,0XFF,0XFF,0XFF,0XC0,0X03,0XFF,0X80,0X00,0XFF,0X8F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XF0,0X00,0X20,0X10,0X00,0X07,0XFF,0XFF, -0XFF,0X80,0X0F,0XFF,0XF8,0X00,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1, -0XFF,0XF0,0X00,0X30,0X30,0X00,0X07,0XFF,0XFF,0XFF,0X00,0X3F,0XFF,0XFC,0X00,0XFF, -0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XF0,0X00,0X10,0X20,0X00,0X07, -0XFF,0XFF,0XFE,0X00,0XFF,0XE7,0XFE,0X00,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF1,0XFF,0XF0,0X00,0X18,0X40,0X00,0X07,0XFF,0XFF,0XFC,0X01,0XFF,0X81,0XFF, -0X00,0XFF,0X8F,0XFF,0XFF,0XF0,0X3F,0XFC,0X3F,0XFF,0XF1,0XFF,0XF0,0X00,0X08,0XC0, -0X00,0X07,0XFF,0XFF,0XFC,0X01,0XFF,0X00,0X7F,0X00,0XFF,0X8F,0XFF,0XFF,0XC0,0X0F, -0XFC,0X3F,0XFF,0XF1,0XFF,0XF0,0X00,0X04,0X80,0X00,0X07,0XFF,0XFF,0XF8,0X01,0XFF, -0XC0,0X7F,0X80,0XFF,0X8F,0XFF,0XFF,0X80,0X07,0XFC,0X3F,0XFF,0XF1,0XFF,0XF0,0X00, -0X05,0X00,0X00,0X07,0XFF,0XFF,0XF8,0X00,0XFF,0XF8,0X00,0X00,0XFF,0X8F,0XFF,0XFF, -0X00,0X03,0XFC,0X3F,0XFF,0XF1,0XFF,0XF0,0X00,0X03,0X00,0X00,0X07,0XFF,0XFF,0XF0, -0X00,0X1F,0XFE,0X00,0X00,0XFF,0X8F,0XFF,0XFF,0X00,0X01,0XFC,0X3F,0XFF,0XF1,0XFF, -0XF0,0X00,0X03,0X00,0X00,0X07,0XFF,0XFF,0XF0,0X00,0X07,0XFF,0X80,0X00,0XFF,0X8F, -0XFF,0XFE,0X00,0X00,0XFC,0X3F,0XFF,0XF1,0XFF,0XF0,0X00,0X01,0X00,0X00,0X07,0XFF, -0XFF,0XF1,0XFF,0X81,0XFF,0X80,0X00,0XFF,0X8F,0XFF,0XFE,0X07,0X80,0XFC,0X3F,0XFF, -0XF1,0XFF,0XF0,0X00,0X01,0X80,0X00,0X07,0XFF,0XFF,0XE0,0XFF,0X00,0X7F,0X80,0X00, -0XFF,0X8F,0XFF,0XFE,0X0F,0XE0,0X7C,0X3F,0XFF,0XF1,0XFF,0XF0,0X47,0X80,0X80,0X00, -0X07,0XFF,0XFF,0XE0,0X7F,0XC1,0X3F,0X80,0X00,0XFF,0X8F,0XFF,0XFE,0X1F,0XF0,0X3C, -0X3F,0XFF,0XF1,0XFF,0XF0,0X4F,0XC0,0X40,0X00,0X07,0XFF,0XFF,0XE0,0X3F,0XF9,0X4F, -0X00,0X00,0XFF,0X8F,0XFF,0XFE,0X1F,0XF8,0X1C,0X3F,0XFF,0XF1,0XFF,0XF0,0X4C,0X40, -0X40,0X00,0X07,0XFF,0XFF,0XE0,0X1F,0XFE,0X78,0X00,0X00,0XFF,0X8F,0XFF,0XFE,0X1F, -0XF8,0X0C,0X3F,0XFF,0XF1,0XFF,0XF0,0X64,0XC0,0X40,0X00,0X07,0XFF,0XFF,0XE0,0X0F, -0XFF,0X80,0X00,0X00,0XFF,0X8F,0XFF,0XFE,0X1F,0XFC,0X04,0X3F,0XFF,0XF1,0XFF,0XF0, -0X7F,0XC0,0X40,0X00,0X07,0XFF,0XFF,0XE0,0X05,0XFF,0XF0,0X00,0X00,0XFF,0X8F,0XFF, -0XFE,0X1F,0XFE,0X00,0X3F,0XFF,0XF1,0XFF,0XF0,0X1F,0X00,0XC0,0X00,0X07,0XFF,0XFF, -0XE0,0X00,0X3F,0XFC,0X00,0X00,0XFF,0X8F,0XFF,0XFF,0X0F,0XFF,0X00,0X3F,0XFF,0XF1, -0XFF,0XF0,0X00,0X00,0X80,0X00,0X07,0XFF,0XFF,0XE0,0X00,0X0F,0XFF,0X00,0X00,0XFF, -0X8F,0XFF,0XFF,0X0F,0XFF,0X00,0X3F,0XFF,0XF1,0XFF,0XF0,0X00,0X01,0X00,0X00,0X07, -0XFF,0XFF,0XE0,0X00,0X03,0XFF,0X80,0X00,0XFF,0X8F,0XFF,0XFF,0X07,0XFF,0XC0,0X3F, -0XFF,0XF1,0XFF,0XF0,0X00,0X01,0X00,0X00,0X07,0XFF,0XFF,0XE0,0X00,0X07,0XFF,0X80, -0X01,0XFF,0X8F,0XFF,0XFF,0X87,0XFF,0XE0,0X3F,0XFF,0XF1,0XFF,0XF0,0X00,0X02,0X00, -0X00,0X07,0XFF,0XFF,0XE0,0X00,0X3F,0XFF,0X00,0X01,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF, -0XF8,0X3F,0XFF,0XF1,0XFF,0XF0,0X00,0X06,0X00,0X00,0X07,0XFF,0XFF,0XE0,0X00,0XFF, -0XFC,0X00,0X01,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XF0,0X00, -0X05,0X00,0X00,0X07,0XFF,0XFF,0XE0,0X01,0XFF,0XE0,0X00,0X01,0XFF,0X8F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XF0,0X00,0X0D,0X80,0X00,0X07,0XFF,0XFF,0XE0, -0X01,0XFF,0X00,0X00,0X03,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF, -0XF0,0X00,0X08,0X80,0X00,0X07,0XFF,0XFF,0XE0,0X01,0XFF,0X80,0X00,0X03,0XFF,0X8F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XF0,0X00,0X10,0X40,0X00,0X07,0XFF, -0XFF,0XE0,0X00,0XFF,0XF0,0X00,0X03,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF1,0XFF,0XF0,0X00,0X10,0X40,0X00,0X07,0XFF,0XFF,0XE0,0X00,0X1F,0XFE,0X00,0X07, -0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XF0,0X00,0X20,0X20,0X00, -0X07,0XFF,0XFF,0XE0,0X00,0X03,0XFF,0X80,0X07,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF1,0XFF,0XF0,0X00,0X60,0X30,0X00,0X07,0XFF,0XFF,0XE0,0X00,0X07,0XFF, -0X80,0X0F,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XF0,0X00,0X40, -0X10,0X00,0X07,0XFF,0XFF,0XE0,0X00,0X3F,0XFF,0X80,0X1F,0XFF,0X8F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XF0,0X00,0XC0,0X08,0X00,0X07,0XFF,0XFF,0XE0,0X01, -0XFF,0XFF,0X00,0X1F,0XFF,0X8F,0XFF,0XFE,0X00,0X00,0X00,0X3F,0XFF,0XF1,0XFF,0XF0, -0X00,0X80,0X0C,0X00,0X07,0XFF,0XFF,0XE0,0X01,0XFF,0XF8,0X00,0X3F,0XFF,0X8F,0XFF, -0XFE,0X00,0X00,0X00,0X3F,0XFF,0XF1,0XFF,0XF0,0X01,0X80,0X04,0X00,0X07,0XFF,0XFF, -0XE0,0X01,0XFF,0XE0,0X00,0X7F,0XFF,0X8F,0XFF,0XFE,0X00,0X00,0X00,0X3F,0XFF,0XF1, -0XFF,0XF0,0X01,0X00,0X02,0X00,0X07,0XFF,0XFF,0XE0,0X01,0XFE,0X00,0X00,0XFF,0XFF, -0X8F,0XFF,0XFE,0X00,0X00,0X00,0X3F,0XFF,0XF1,0XFF,0XF0,0X02,0X00,0X03,0X00,0X07, -0XFF,0XFF,0XE0,0X01,0XF0,0X00,0X03,0XFF,0XFF,0X8F,0XFF,0XFE,0X00,0X00,0X00,0X3F, -0XFF,0XF1,0XFF,0XF0,0X06,0X00,0X01,0X00,0X07,0XFF,0XFF,0XE0,0X01,0X80,0X00,0X07, -0XFF,0XFF,0X8F,0XFF,0XFF,0X00,0X00,0X00,0X3F,0XFF,0XF1,0XFF,0XF0,0X04,0X00,0X01, -0X80,0X07,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X1F,0XFF,0XFF,0X8F,0XFF,0XFF,0X83,0XFF, -0XFF,0XFF,0XFF,0XF1,0XFF,0XF0,0X0C,0X00,0X00,0X80,0X07,0XFF,0XFF,0XE0,0X00,0X00, -0X00,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0X81,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XF0,0X08, -0X00,0X00,0X40,0X07,0XFF,0XFF,0XE0,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF, -0XC1,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XF0,0X18,0X00,0X00,0X60,0X07,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XC1,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF, -0XF0,0X10,0X00,0X00,0X20,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F, -0XFF,0XFF,0XE0,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XF0,0X20,0X00,0X00,0X10,0X07,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XE0,0XFF,0XFF,0XFF,0XFF, -0XF1,0XFF,0XF0,0X60,0X00,0X00,0X18,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XF0,0X40,0X00,0X00,0X08, -0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF1,0XFF,0XF8,0XC0,0X00,0X00,0X04,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XF8,0X80,0X00, -0X00,0X04,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0X00,0X00,0X00,0X02,0X3F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,}; - -const unsigned char gImage_1in54b_Black[] = { /* 0X00,0X01,0XC8,0X00,0XC8,0X00, */ -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF, -0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE3,0XFF,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0XFF,0X9F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X01, -0XFF,0XFF,0XE7,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0XFF,0XFF,0XE3,0XFF,0X8F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFE,0XFF,0XFF,0XE3,0XFF,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XE1,0XFE,0X1F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XF0,0XFC,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XF0, -0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XF8,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF, -0XFF,0XFE,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X7E,0XFF,0XFF,0XFB,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X3E,0XFF,0XFF,0XE0,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF, -0XFF,0XF0,0X3E,0XFF,0XFF,0XC6,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XE0,0XCE,0XFF,0XFF,0XCE,0X7F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF, -0XFF,0XFF,0XFF,0X81,0X86,0XFF,0XFF,0XCE,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0X02,0X06,0XFF,0XFF, -0XC6,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFE,0XFF,0XFF,0XFF,0XFE,0X0C,0X02,0XFF,0XFF,0XE0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFE,0X18,0X02, -0XFF,0XFF,0XFB,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFE,0X20,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFE, -0XC0,0X02,0XFF,0XFF,0XFF,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0X00,0X02,0XFF,0XFF,0XF8,0X00,0X7F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF, -0XFF,0XFF,0X00,0X02,0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0X80,0X06,0XFF,0XFF,0XE0, -0XCC,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE, -0XFF,0XFF,0XFF,0XFF,0XC0,0X0E,0XFF,0XFF,0XE3,0XC7,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XC0,0X0E,0XFF, -0XFF,0XE7,0XE7,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0X00,0X1E,0XFF,0XFF,0XE7,0XE7,0X8F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFC,0X00, -0X3E,0XFF,0XFF,0XE3,0XC7,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFE,0XFF,0X83,0XFF,0XF0,0X00,0X7E,0XFF,0XFF,0XE0,0X07,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFC,0X01,0XFF, -0XE0,0X00,0XFE,0XFF,0XFF,0XF0,0X0F,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XF0,0X07,0XFF,0X80,0X01,0XFE,0XFF,0XFF,0XF8,0X1F, -0XBF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XC0, -0X18,0XFE,0X00,0X03,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XC0,0XE0,0XF8,0X00,0X0F,0XFE,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFE,0XC7,0X00,0XE0,0X00,0X1F,0XFE,0XFF,0XFF,0XFF,0XFF,0X9F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XDC,0X00,0XC0,0X00,0X3F,0XFE, -0XFF,0XFF,0XF8,0X3F,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0XE0,0X00,0X00,0X00,0XFF,0XFE,0XFF,0XFF,0XF0,0X0F,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XC0,0X00,0X00,0X03, -0XFF,0XFE,0XFF,0XFF,0XE0,0X03,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0XE0,0X00,0X00,0X07,0XFF,0XFE,0XFF,0XFF,0XE3,0XC1,0X9F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XE0,0X00, -0X00,0X1F,0XFF,0XFE,0XFF,0XFF,0XE7,0XE0,0X9F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XF0,0X00,0X00,0XFF,0XFF,0XFE,0XFF,0XFF,0XE7, -0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE, -0XF8,0X00,0X03,0XFF,0XFF,0XFE,0XFF,0XFF,0XE7,0XFC,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFC,0X00,0X3F,0XFF,0XFF,0XFE,0XFF, -0XFF,0XE3,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFE,0XFF,0XB7,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XF1,0XFF,0X1F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFE,0XFF,0XFF,0XF3,0XFF,0X9F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XDF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF, -0XFF,0X87,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XC3,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE, -0XFF,0XFF,0XFF,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0X7F,0XFF,0XFF,0XFF,0XFF,0XFC,0XFF,0XFF,0XFF,0XF3,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00, -0X00,0X01,0XFF,0XFF,0XFF,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X87,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X1F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X87,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XCF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X70,0X3F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFA,0XFF,0XFF,0XFF,0XFF,0XF0,0X20,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X1F,0XFF,0XFF,0XFF,0XE0, -0X02,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XE3,0X87,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFC,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XE7,0X8F,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X01,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X02,0X7F,0XFF,0XFF,0XE7,0XCF,0X8F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00, -0X7F,0XFF,0XFF,0XE7,0XCF,0X9F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00, -0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0XFF,0XFF,0XFF,0XE3,0XFF,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X0F,0XFE,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8, -0X30,0X00,0XFF,0XFF,0XFF,0XF3,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0XFF, -0XFF,0XE0,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X30,0X00,0XFF,0XFF,0XFF,0XF7,0XFF, -0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X81,0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X83,0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X83,0XFF,0XFF,0XFC,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0X90,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X83,0XFF,0XFF,0XFC,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0X10,0X00,0X00,0XFF, -0XFF,0XFF,0XF8,0X1F,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X83,0XFF,0XFF,0XFC,0X1F, -0XFF,0XFF,0XFF,0XFF,0XFC,0X10,0X00,0X00,0XFF,0XFF,0XFF,0XF0,0X0F,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X81,0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XF8,0X18,0X30, -0X00,0XFF,0XFF,0XFF,0XE0,0X03,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0XFF,0XFF, -0XF0,0X3F,0XFF,0XFF,0XFF,0XFF,0XF8,0X08,0X38,0X00,0XFF,0XFF,0XFF,0XE3,0XC1,0X9F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X1F,0XFF,0X80,0X3F,0XFF,0XFF,0XFF,0XFF,0XF0, -0X08,0X30,0X01,0XFF,0XFF,0XFF,0XE7,0XF0,0X9F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XE0,0X08,0X00,0X01,0XFF,0XFF,0XFF,0XE7, -0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF, -0XFF,0XE0,0XE4,0X00,0X01,0XFF,0XFF,0XFF,0XE7,0XFC,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0XE2,0X00,0X03,0XFF,0XFF, -0XFF,0XE3,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X03,0XFF,0XFF, -0XFF,0XFF,0XFF,0XC0,0XE2,0X00,0X07,0XFF,0XFF,0XFF,0XF1,0XFF,0X1F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X41,0X00,0X0F, -0XFF,0XFF,0XFF,0XF3,0XFF,0X9F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X7F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0XC0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00, -0X30,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X07,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XC0,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X03,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XC0,0X40,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X80,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XE0,0X00,0X7F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X07,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0XE0,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0XE0,0X00, -0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00, -0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XF0, -0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X00,0X60,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X01,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X7F,0XFF,0XC0,0X3F,0XFF,0XFF,0XFF, -0XFF,0XF8,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X81,0XFF,0XFF,0XF0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X07,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X83,0XFF,0XFF,0XF8,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X83,0XFF,0XFF,0XFC,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X3F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X83,0XFF,0XFF,0XFC, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X83,0XFF,0XFF,0XFC,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X83,0XFF, -0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X81,0XFF,0XFF,0XF0,0X3F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X80,0X7F,0XFF,0XC0,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XE0,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,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, -0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00, -0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFC,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0X00,0X00, -0X00,0X01,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X7F,0XE0,0X3F,0XFF,0XFF,0XFF,0XFD,0X80,0X00,0X00,0X03,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X3F,0XE0,0X1F,0XFF,0XFF,0XFF,0XF8, -0X80,0X00,0X00,0X02,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X80,0X3F,0XC0,0X1F,0XFF,0XFF,0XFF,0XF0,0X40,0X00,0X00,0X04,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X3F,0XC0,0X1F,0XFF,0XFF, -0XFF,0XF0,0X60,0X00,0X00,0X0C,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XC0,0X3F,0XE0,0X1F,0XFF,0XFF,0XFF,0XF0,0X20,0X00,0X00,0X08,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X7F,0XE0,0X3F, -0XFF,0XFF,0XFF,0XF0,0X30,0X00,0X00,0X10,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0XFF,0XF8,0X7F,0XFF,0XFF,0XFF,0XF0,0X10,0X00,0X00, -0X30,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X18,0X00,0X00,0X20,0X07,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X08, -0X00,0X00,0X60,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X04,0X00,0X00,0X40,0X07,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X06,0X00,0X00,0X80,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X02,0X00,0X01,0X80,0X07,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF, -0XFF,0XFF,0XF0,0X03,0X00,0X01,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00, -0XFF,0XFF,0XFF,0XFF,0X3F,0XF8,0X03,0XFF,0XFF,0XFF,0XFF,0XF0,0X01,0X00,0X02,0X00, -0X07,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XF8,0X07,0XF0,0X00, -0XFF,0XFF,0XFF,0XFF,0XF0,0X01,0X80,0X06,0X00,0X07,0XFF,0XFF,0XFF,0XFC,0X00,0X00, -0X00,0X00,0XFF,0XFF,0XFF,0XF0,0X01,0XE0,0X00,0X7F,0XFF,0XFF,0XFF,0XF0,0X00,0X80, -0X04,0X00,0X07,0XFF,0XFF,0XFF,0XF0,0X00,0X38,0X00,0X00,0XFF,0XFF,0XFF,0XE0,0X00, -0XC0,0X00,0X7F,0XFF,0XFF,0XFF,0XF0,0X00,0X40,0X08,0X00,0X07,0XFF,0XFF,0XFF,0XE0, -0X00,0XFE,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XF0, -0X00,0X40,0X08,0X00,0X07,0XFF,0XFF,0XFF,0XC0,0X03,0XFF,0X80,0X00,0XFF,0XFF,0XFF, -0XC0,0X00,0X00,0XE0,0X3F,0XFF,0XFF,0XFF,0XF0,0X00,0X20,0X10,0X00,0X07,0XFF,0XFF, -0XFF,0X80,0X0F,0XFF,0XF8,0X00,0XFF,0XFF,0XFF,0X81,0XF8,0X01,0XF8,0X3F,0XFF,0XFF, -0XFF,0XF0,0X00,0X30,0X30,0X00,0X07,0XFF,0XFF,0XFF,0X00,0X3F,0XFF,0XFC,0X00,0XFF, -0XFF,0XFF,0X83,0XFE,0X03,0XFC,0X1F,0XFF,0XFF,0XFF,0XF0,0X00,0X10,0X20,0X00,0X07, -0XFF,0XFF,0XFE,0X00,0XFF,0XE7,0XFE,0X00,0XFF,0XFF,0XFF,0X83,0XFE,0X07,0XFC,0X1F, -0XFF,0XFF,0XFF,0XF0,0X00,0X18,0X40,0X00,0X07,0XFF,0XFF,0XFC,0X01,0XFF,0X81,0XFF, -0X00,0XFF,0XFF,0XFF,0X87,0XFE,0X07,0XFC,0X1F,0XFF,0XFF,0XFF,0XF0,0X00,0X08,0XC0, -0X00,0X07,0XFF,0XFF,0XFC,0X01,0XFF,0X00,0X7F,0X00,0XFF,0XFF,0XFF,0X87,0XFC,0X0F, -0XFC,0X1F,0XFF,0XFF,0XFF,0XF0,0X00,0X04,0X80,0X00,0X07,0XFF,0XFF,0XF8,0X01,0XFF, -0XC0,0X7F,0X80,0XFF,0XFF,0XFF,0X87,0XFC,0X0F,0XFC,0X1F,0XFF,0XFF,0XFF,0XF0,0X00, -0X05,0X00,0X00,0X07,0XFF,0XFF,0XF8,0X00,0XFF,0XF8,0X00,0X00,0XFF,0XFF,0XFF,0X83, -0XF8,0X1F,0XFC,0X1F,0XFF,0XFF,0XFF,0XF0,0X00,0X03,0X00,0X00,0X07,0XFF,0XFF,0XF0, -0X00,0X1F,0XFE,0X00,0X00,0XFF,0XFF,0XFF,0X81,0XF0,0X0F,0XF8,0X1F,0XFF,0XFF,0XFF, -0XF0,0X00,0X03,0X00,0X00,0X07,0XFF,0XFF,0XF0,0X00,0X07,0XFF,0X80,0X00,0XFF,0XFF, -0XFF,0X80,0X00,0X07,0XF0,0X3F,0XFF,0XFF,0XFF,0XF0,0X00,0X01,0X00,0X00,0X07,0XFF, -0XFF,0XF1,0XFF,0X81,0XFF,0X80,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0XE0,0X3F,0XFF, -0XFF,0XFF,0XF0,0X00,0X01,0X80,0X00,0X07,0XFF,0XFF,0XE0,0XFF,0X00,0X7F,0X80,0X00, -0XFF,0XFF,0XFF,0XC0,0X00,0X40,0X00,0X3F,0XFF,0XFF,0XFF,0XF0,0X47,0X80,0X80,0X00, -0X07,0XFF,0XFF,0XE0,0X7F,0XC1,0X3F,0X80,0X00,0XFF,0XFF,0XFF,0XE0,0X00,0XE0,0X00, -0X7F,0XFF,0XFF,0XFF,0XF0,0X4F,0XC0,0X40,0X00,0X07,0XFF,0XFF,0XE0,0X3F,0XF9,0X4F, -0X00,0X00,0XFF,0XFF,0XFF,0XF0,0X03,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XF0,0X4C,0X40, -0X40,0X00,0X07,0XFF,0XFF,0XE0,0X1F,0XFE,0X78,0X00,0X00,0XFF,0XFF,0XFF,0XFC,0X07, -0XF8,0X01,0XFF,0XFF,0XFF,0XFF,0XF0,0X64,0XC0,0X40,0X00,0X07,0XFF,0XFF,0XE0,0X0F, -0XFF,0X80,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X03,0XFF,0XFF,0XFF,0XFF,0XF0, -0X7F,0XC0,0X40,0X00,0X07,0XFF,0XFF,0XE0,0X05,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X1F,0X00,0XC0,0X00,0X07,0XFF,0XFF, -0XE0,0X00,0X3F,0XFC,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X00,0X00,0X80,0X00,0X07,0XFF,0XFF,0XE0,0X00,0X0F,0XFF,0X00,0X00,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X01,0X00,0X00,0X07, -0XFF,0XFF,0XE0,0X00,0X03,0XFF,0X80,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X01,0X00,0X00,0X07,0XFF,0XFF,0XE0,0X00,0X07,0XFF,0X80, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X02,0X00, -0X00,0X07,0XFF,0XFF,0XE0,0X00,0X3F,0XFF,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF8,0X3F,0XFF,0XFF,0XFF,0XF0,0X00,0X06,0X00,0X00,0X07,0XFF,0XFF,0XE0,0X00,0XFF, -0XFC,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF,0XF0,0X00, -0X05,0X00,0X00,0X07,0XFF,0XFF,0XE0,0X01,0XFF,0XE0,0X00,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF,0XF0,0X00,0X0D,0X80,0X00,0X07,0XFF,0XFF,0XE0, -0X01,0XFF,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF, -0XF0,0X00,0X08,0X80,0X00,0X07,0XFF,0XFF,0XE0,0X01,0XFF,0X80,0X00,0X03,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF,0XF0,0X00,0X10,0X40,0X00,0X07,0XFF, -0XFF,0XE0,0X00,0XFF,0XF0,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X3F,0XFF, -0XFF,0XFF,0XF0,0X00,0X10,0X40,0X00,0X07,0XFF,0XFF,0XE0,0X00,0X1F,0XFE,0X00,0X07, -0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XF0,0X00,0X20,0X20,0X00, -0X07,0XFF,0XFF,0XE0,0X00,0X03,0XFF,0X80,0X07,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00, -0X3F,0XFF,0XFF,0XFF,0XF0,0X00,0X60,0X30,0X00,0X07,0XFF,0XFF,0XE0,0X00,0X07,0XFF, -0X80,0X0F,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XF0,0X00,0X40, -0X10,0X00,0X07,0XFF,0XFF,0XE0,0X00,0X3F,0XFF,0X80,0X1F,0XFF,0XFF,0XFF,0X80,0X00, -0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XF0,0X00,0XC0,0X08,0X00,0X07,0XFF,0XFF,0XE0,0X01, -0XFF,0XFF,0X00,0X1F,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XF0, -0X00,0X80,0X0C,0X00,0X07,0XFF,0XFF,0XE0,0X01,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF, -0X80,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XF0,0X01,0X80,0X04,0X00,0X07,0XFF,0XFF, -0XE0,0X01,0XFF,0XE0,0X00,0X7F,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X3F,0XFF,0XFF, -0XFF,0XF0,0X01,0X00,0X02,0X00,0X07,0XFF,0XFF,0XE0,0X01,0XFE,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XC0,0XFF,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF,0XF0,0X02,0X00,0X03,0X00,0X07, -0XFF,0XFF,0XE0,0X01,0XF0,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XE0,0XFF,0XFF,0XF8,0X3F, -0XFF,0XFF,0XFF,0XF0,0X06,0X00,0X01,0X00,0X07,0XFF,0XFF,0XE0,0X01,0X80,0X00,0X07, -0XFF,0XFF,0XFF,0XFF,0XE0,0XFF,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF,0XF0,0X04,0X00,0X01, -0X80,0X07,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XE0,0XFF,0XFF, -0XF8,0X3F,0XFF,0XFF,0XFF,0XF0,0X0C,0X00,0X00,0X80,0X07,0XFF,0XFF,0XE0,0X00,0X00, -0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0XFF,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF,0XF0,0X08, -0X00,0X00,0X40,0X07,0XFF,0XFF,0XE0,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0XFF,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF,0XF0,0X18,0X00,0X00,0X60,0X07,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF, -0XF0,0X10,0X00,0X00,0X20,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X20,0X00,0X00,0X10,0X07,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF0,0X60,0X00,0X00,0X18,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X40,0X00,0X00,0X08, -0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0XC0,0X00,0X00,0X04,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X80,0X00, -0X00,0X04,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X02,0X3F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -}; - -const unsigned char gImage_1in54b_Red[] = { /* 0X00,0X01,0XC8,0X00,0XC8,0X00, */ -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFE,0X01,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF1,0XF8,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XF0,0X00, -0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XF0,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1, -0XE0,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XE1,0XE3,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF1,0XC3,0XF3,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XC3,0X3B,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF1,0XC3,0X0F,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XC3,0X0F,0X0F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XE3, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XC3,0X87,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XE0,0X7F,0XFF,0XFF,0XFF,0XFF,0XF1,0XC1, -0X03,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F, -0XFF,0XE0,0X0F,0XFF,0XFF,0XFF,0XFF,0XF1,0XE0,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFC,0X03,0XFF,0XFF,0XFF,0XFF, -0XF1,0XE0,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X8F,0XFF,0XFF,0X80,0X7F,0XFF,0XFF,0XFF,0XF1,0XF0,0X00,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XF0,0X1F,0XFF, -0XFF,0XFF,0XF1,0XF8,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0X00,0X1F,0XFF,0XFF,0XFF,0XF1,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XF8,0X07, -0X8F,0XFF,0XFF,0XFF,0XF1,0XFF,0X87,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XE0,0X1F,0X8F,0XC0,0X07,0XFF,0XF1,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF, -0XE0,0XFF,0XCF,0X80,0X07,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XE3,0XFF,0XEF,0X00,0X07,0XFF,0XF1, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X8F,0XFF,0XFF,0XFF,0XFF,0X1F,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0X1F,0XFF, -0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X8F,0XFF,0XFE,0X01,0XFF,0X1F,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XF0,0X01,0XFF, -0X9F,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XE0,0X01,0XE0,0X80,0X0F,0XFF,0XF1,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0XFF,0XFF,0X8F,0XFF,0XE0, -0X03,0XE0,0X00,0X07,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XE0,0XFF,0XFF,0X8F,0XFF,0XE2,0X71,0XE0,0X00,0X07,0XFF,0XF1,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X3F,0XFF,0X8F, -0XFF,0XE7,0X39,0XE0,0X00,0X0F,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0X8F,0XFF,0XE7,0X38,0XFF,0XFF,0XFF,0XFF, -0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X01, -0XFF,0X8F,0XFF,0XE3,0X10,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X7F,0X8F,0XFF,0XE3,0X01,0XFF,0X1F, -0XC7,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X3F,0X8F,0XFF,0XF3,0X81,0XFF,0X1F,0XC7,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X1F,0X8F,0XFF,0XFF,0XC7, -0XFF,0X1F,0XC7,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0X00,0X0F,0X8F,0XFF,0XFF,0XFF,0XF8,0X00,0X07,0XFF,0XF1,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X07,0X87,0X8F,0XFF, -0XFF,0XFF,0XF8,0X00,0X0F,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X1F,0XC7,0X8F,0XFF,0XFF,0XFF,0XF8,0X00,0X0F,0XFF,0XF1, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0XFF,0XC7, -0X8F,0XFE,0X00,0X01,0XFF,0X1E,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0XFF,0XC7,0X8F,0XFE,0X00,0X01,0XFF,0X1F,0XFF, -0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC7,0X8F,0XFE,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFE,0X03,0XFF,0XF8, -0X7F,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XC0,0X7F,0XF8,0X1F,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0XFF,0X8F,0XFF,0XF8, -0X1F,0XF8,0X07,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0XFF,0X8F,0XFF,0XFE,0X03,0XF8,0X01,0XFF,0XFF,0XF1,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0XFF,0X8F, -0XFF,0XFF,0X83,0XF8,0XC0,0X7F,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0XFF,0X8F,0XFF,0XFC,0X07,0XF8,0XF0,0X1F,0XFF, -0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0X31, -0XFF,0X8F,0XFF,0XE0,0X3F,0XF8,0XFC,0X07,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0X38,0XFF,0X8F,0XFF,0X00,0XFF,0XF8,0XFF, -0X03,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE3,0X38,0XFF,0X8F,0XFE,0X07,0XFF,0XF8,0XFF,0XC3,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0X18,0XFF,0X8F,0XFE,0X00,0X01, -0XF8,0XFF,0XF3,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XE3,0X00,0XFF,0X8F,0XFE,0X00,0X01,0XF8,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0X80,0XFF,0X8F,0XFE, -0X00,0X01,0XF8,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF1,0X81,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0XFF, -0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFC,0X00,0X00,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0XFF,0X8F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFC,0X00,0X00,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0XF1,0XFF,0X8F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0XF9,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0XF8, -0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0XF8,0XFF,0X80,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE1,0XF0,0XFF,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0XFF,0X8F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF0,0X01,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X01,0XFF,0X8F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X07,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8, -0X00,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XE0,0X00,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0XFF,0X8F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XE3,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0XFF,0XFF,0X8F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0XFF, -0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE0,0X00,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0XFF,0X8F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XE0,0X00,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0, -0X00,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XE0,0X00,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0X8F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF9,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0XFF,0X8F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00, -0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE0,0X01,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X03,0XFF,0X8F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0XFF,0X87,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0X1E, -0X03,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFE,0XFF,0XBF,0XCF,0XFE,0X3E,0X01,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0X8F, -0XFE,0X3C,0X01,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X3C,0X0F,0X9F,0XFE,0X3C,0X30,0XFF,0X8F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X03,0XFF,0XFE,0X3C,0X78,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0XFF,0XFE,0X38,0X78,0XFF,0X8F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC0,0X00,0XFF,0XFE,0X18,0X78,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X7F,0XFE,0X00,0XF8, -0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X80,0X00,0X3F,0XFF,0X00,0XF8,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X3F,0XFF, -0X01,0XF0,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X3F,0XFF,0XC3,0XF1,0XFF,0X8F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0X00,0X00, -0X31,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0X00,0X00,0X31,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X80,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X3F,0XFF,0XFF,0XFF,0XFF, -0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X80,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X7F,0XFF,0XFF, -0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X01,0XFF, -0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X78,0X03,0XDF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F, -0X1F,0X8F,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X7F,0XFF,0XCF,0XFF,0XFF,0XFF,0XFF,0X8F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFE,0XFF,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0XFF,0XFF, -0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -}; - - -const unsigned char gImage_1in54c_Black[] = { /* 0X00,0X01,0X98,0X00,0X98,0X00, */ -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XBF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XBF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XEF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00, -0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XEF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFE,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XEF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XEF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X07,0XFF,0XFD,0XFF,0XCF,0XFF,0XFF, -0XFF,0XFF,0XEF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X03,0XFF,0XF8,0X7F, -0X87,0XFF,0XFF,0XFF,0XFF,0XEF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X03, -0XFF,0XF8,0XFF,0XC7,0XFF,0XFF,0XFF,0XFF,0XEF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC, -0X00,0X78,0X03,0XFF,0XF8,0XFF,0XE7,0XFF,0XFF,0XFF,0XFF,0XEF,0XFF,0XFF,0XFF,0XF5, -0XFF,0XFF,0XFC,0X00,0XFB,0X83,0XFF,0XF9,0XFF,0XE3,0XFF,0XFF,0XFF,0XFF,0XEF,0XFF, -0XFF,0XFF,0X80,0X3F,0XFF,0XFC,0X01,0XF9,0XC3,0XFF,0XF8,0XFF,0XE3,0XFF,0XFF,0XFF, -0XFF,0XEF,0XFF,0XFF,0XFE,0X00,0X1F,0XFF,0XF8,0X01,0XD9,0XC3,0XFF,0XF8,0XFF,0XC7, -0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XFF,0XFC,0X00,0X0F,0XFF,0XF8,0X01,0XD9,0XC3,0XFF, -0XF8,0X7F,0X87,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XFF,0XFC,0X00,0X04,0XFF,0XF8,0X01, -0XD9,0XC3,0XFF,0XFC,0X3F,0X07,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XFF,0XF8,0X00,0X00, -0XFF,0XF8,0X01,0XDB,0XC1,0XFF,0XFC,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XFF, -0XF0,0X00,0X01,0XFF,0XF8,0X00,0XFF,0X81,0XFF,0XFE,0X00,0X1F,0XFF,0XFF,0XFF,0XFF, -0XF7,0XFF,0XFF,0XF0,0X60,0X01,0XFF,0XF8,0X00,0X7F,0X81,0XFF,0XFF,0X80,0X7F,0XFF, -0XFF,0XFF,0XFF,0XF7,0XFF,0XFF,0XF0,0X60,0X01,0XFF,0XF8,0X00,0X3E,0X01,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XFF,0XE0,0X00,0X01,0XFF,0XF8,0X00,0X00, -0X01,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XFF,0XE0,0X00,0X01,0XFF, -0XF8,0X01,0XC0,0X01,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XFF,0X20, -0X00,0X01,0XFF,0XF8,0X01,0XC0,0X01,0XFF,0XF1,0X9F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7, -0XFF,0XFE,0X20,0X00,0X01,0XFF,0XF8,0X01,0XC0,0X01,0XFF,0XF3,0X9F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFB,0XFF,0XF8,0X20,0X00,0X01,0XFF,0XF8,0X00,0XE0,0X01,0XFF,0XF3,0X9F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFB,0XFF,0XF0,0X30,0X60,0X01,0XFF,0XF8,0X01,0XFF,0XC1, -0XFF,0XF1,0X9F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFB,0XFF,0XF0,0X10,0X70,0X01,0XFF,0XF8, -0X01,0XFF,0XC1,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFB,0XFF,0XE0,0X10,0X60, -0X03,0XFF,0XF8,0X01,0XFF,0XC1,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFB,0XFF, -0XC0,0X10,0X00,0X03,0XFF,0XF8,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFB,0XFF,0XC1,0XC8,0X00,0X03,0XFF,0XF8,0X00,0X00,0X01,0XFF,0XFF,0XC0,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFB,0XFF,0XC1,0XC4,0X00,0X07,0XFF,0XF8,0X00,0X00,0X01,0XFF, -0XFE,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFB,0XFF,0X81,0XC4,0X00,0X0F,0XFF,0XF8,0X00, -0X7F,0XC1,0XFF,0XFC,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFB,0XFF,0X80,0X82,0X00,0X1F, -0XFF,0XF8,0X00,0XFF,0XC1,0XFF,0XF8,0X33,0X07,0XFF,0XFF,0XFF,0XFF,0XFB,0XFF,0X80, -0X01,0X80,0X3F,0XFF,0XF8,0X01,0XFF,0XC1,0XFF,0XF8,0XF1,0XC7,0XFF,0XFF,0XFF,0XFF, -0XFD,0XFF,0X80,0X00,0X61,0XFF,0XFF,0XF8,0X01,0XD9,0X81,0XFF,0XF9,0XF9,0XE3,0XFF, -0XFF,0XFF,0XFF,0XFD,0XFF,0X80,0X00,0X0E,0XFF,0XFF,0XF8,0X01,0XD9,0XC1,0XFF,0XF9, -0XF9,0XE3,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0X80,0X00,0X00,0X7F,0XFF,0XF8,0X01,0XD9, -0XC1,0XFF,0XF8,0XF1,0XE3,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0X80,0X00,0X00,0XFF,0XFF, -0XF8,0X01,0XD9,0XC1,0XFF,0XF8,0X01,0XC7,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0X80,0X80, -0X00,0XFF,0XFF,0XF8,0X01,0XDF,0XC1,0XFF,0XFC,0X03,0XC7,0XFF,0XFF,0XFF,0XFF,0XFD, -0XFF,0X81,0XC0,0X00,0XFF,0XFF,0XF8,0X00,0XCF,0XC1,0XFF,0XFE,0X07,0XEF,0XFF,0XFF, -0XFF,0XFF,0XFD,0XFF,0XC1,0XC0,0X00,0XFF,0XFF,0XF8,0X00,0X07,0X81,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XC1,0XC0,0X00,0XFF,0XFF,0XF8,0X00,0X00,0X01, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XC0,0X00,0X00,0X7F,0XFF,0XF8, -0X00,0X00,0X01,0XFF,0XFF,0XFF,0XE7,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XE0,0X00,0X00, -0X7F,0XFF,0XF8,0X00,0X7F,0XC1,0XFF,0XFE,0X0F,0XC7,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF, -0XF0,0X00,0X02,0X3F,0XFF,0XF8,0X00,0XFF,0XC1,0XFF,0XFC,0X03,0XC7,0XFF,0XFF,0XFF, -0XFF,0XFE,0XFF,0XF0,0X00,0X07,0XFF,0XFF,0XF8,0X01,0XFF,0XC1,0XFF,0XF8,0X00,0XC7, -0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XF8,0X00,0X0F,0XFF,0XFF,0XF8,0X01,0XE0,0X01,0XFF, -0XF8,0XF0,0X67,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFE,0X00,0X1F,0XFF,0XFF,0XF8,0X01, -0XC0,0X01,0XFF,0XF9,0XF8,0X27,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0X00,0X7F,0XFF, -0XFF,0XF8,0X01,0XC0,0X01,0XFF,0XF9,0XFE,0X07,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0XC0,0X01,0XFF,0XF9,0XFF,0X07,0XFF,0XFF,0XFF,0XFF, -0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X60,0X01,0XFF,0XF8,0XFF,0X87,0XFF, -0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X7F,0XFF,0XC1,0XFF,0XFC, -0X7F,0XC7,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X7F,0XFF, -0XC1,0XFF,0XFC,0XFF,0XE7,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF8,0X7F,0XFF,0XC1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X01,0XFF,0XFF,0XF7,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X01,0XFF,0XFF,0XE3, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X01, -0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8, -0X00,0X0F,0X01,0XFF,0XFF,0XF0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X7F,0XFF,0XFF,0X0F, -0XFF,0XFF,0XF8,0X3C,0X3F,0X81,0XFF,0XFF,0XF8,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X7F, -0XFF,0XFC,0XF3,0XFF,0XFF,0XF8,0X38,0X3F,0X81,0XFF,0XFF,0XFC,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X7F,0XFF,0XF3,0XFD,0XFF,0XFF,0XF8,0X38,0X73,0XC1,0XFF,0XFF,0XF8,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X7F,0XFF,0XEF,0XFE,0XFF,0XFF,0XF8,0X38,0X71,0XC1,0XFF, -0XFF,0XF8,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X7F,0XFF,0XDF,0XFF,0X7F,0XFF,0XF8,0X38, -0XE1,0XC1,0XFF,0XFF,0XF0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X7F,0XFF,0XBF,0XFF,0XBF, -0XFF,0XF8,0X3C,0XE1,0XC1,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBF,0XFF, -0XBF,0XFF,0XBF,0XFF,0XF8,0X1F,0XC1,0XC1,0XFF,0XFF,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XBF,0XFF,0X7F,0XFF,0XDF,0XFF,0XF8,0X1F,0XC3,0XC1,0XFF,0XFF,0XC7,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XBF,0XFF,0X7F,0XFF,0XDF,0XFF,0XF8,0X0F,0X87,0X81,0XFF,0XFF, -0XC7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBF,0XFE,0XFF,0XFF,0XEF,0XFF,0XF8,0X00,0X00, -0X01,0XFF,0XFF,0XCF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBF,0XFE,0XFF,0XFF,0XEF,0XFF, -0XF8,0X00,0X00,0X01,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBF,0XFD,0XFF, -0X81,0XF7,0XFF,0XF8,0X00,0X78,0X01,0XFF,0XFF,0XC7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XBF,0XFD,0XFF,0X01,0XF7,0XFF,0XF8,0X00,0XFB,0X81,0XFF,0XFF,0XC7,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XBF,0XFB,0XFF,0X3F,0XFB,0XFF,0XF8,0X01,0XF9,0XC1,0XFF,0XFF,0XC3, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBF,0XFB,0XFF,0XBF,0XFB,0XFF,0XF8,0X01,0XD9,0XC1, -0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBF,0XFB,0XF8,0X01,0XFB,0XFF,0XF8, -0X01,0XD9,0XC1,0XFF,0XFF,0XF3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XF7,0XF8,0X01, -0XFB,0XFF,0XF8,0X01,0XD9,0XC1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF, -0XF7,0XFF,0XFF,0XFD,0XFF,0XF8,0X01,0XDB,0XC1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XDF,0XF7,0XFF,0X31,0XFD,0XFF,0XF8,0X00,0XFF,0X81,0XFF,0XFF,0XFE,0X3F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XF7,0XFF,0X39,0XFD,0XFF,0XF8,0X00,0X7F,0X81,0XFF, -0XFE,0X1C,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XF7,0XFF,0X39,0XFD,0XFF,0XF8,0X00, -0X3E,0X01,0XFF,0XFC,0X08,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XEF,0XFF,0X19,0XFE, -0XFF,0XF8,0X00,0X00,0X01,0XFF,0XF8,0X00,0X87,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XEF, -0XFF,0X83,0XFE,0XFF,0XF8,0X01,0X00,0X01,0XFF,0XF8,0XE1,0XC7,0XFF,0XFF,0XFF,0XFF, -0XFF,0XDF,0XEF,0XFF,0XC7,0XFE,0XFF,0XF8,0X01,0XE0,0X01,0XFF,0XF9,0XE3,0XE3,0XFF, -0XFF,0XFF,0XFF,0XFF,0XDF,0XEF,0XFF,0XFF,0XFE,0XFF,0XF8,0X01,0XF8,0X01,0XFF,0XF9, -0XF3,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XEF,0XFF,0XFF,0XFE,0XFF,0XF8,0X01,0XFF, -0X01,0XFF,0XF9,0XF3,0XE7,0XFF,0XFF,0XFF,0XFF,0XFF,0XEF,0XEF,0XFF,0X81,0XFE,0XFF, -0XF8,0X00,0X1F,0XC1,0XFF,0XF8,0XFF,0XC7,0XFF,0XFF,0XFF,0XFF,0XFF,0XEF,0XDF,0XFF, -0X01,0XFE,0XFF,0XF8,0X00,0X03,0XC1,0XFF,0XFC,0XFF,0X87,0XFF,0XFF,0XFF,0XFF,0XFF, -0XEF,0XDF,0XFF,0X3F,0XFF,0X7F,0XF8,0X00,0X03,0XC1,0XFF,0XFD,0XFF,0XCF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XEF,0XDF,0XFF,0XBF,0XFF,0X7F,0XF8,0X00,0X3F,0XC1,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XEF,0XDF,0XFF,0X01,0XFF,0X7F,0XF8,0X01,0XFF,0X81, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XEF,0XDF,0XFF,0X01,0XFF,0X7F,0XF8, -0X01,0XFC,0X01,0XFF,0XFF,0XFF,0XC7,0XFF,0XFF,0XFF,0XFF,0XFF,0XEF,0XDF,0XFF,0XFF, -0XFF,0X7F,0XF8,0X01,0XE0,0X01,0XFF,0XFE,0X07,0XC7,0XFF,0XFF,0XFF,0XFF,0XFF,0XEF, -0XDF,0XFF,0XFF,0XFF,0X7F,0XF8,0X01,0X00,0X01,0XFF,0XFC,0X03,0XC7,0XFF,0XFF,0XFF, -0XFF,0XFF,0XEF,0XDF,0XF9,0X01,0XFF,0X7F,0XF8,0X00,0X00,0X01,0XFF,0XF8,0X00,0XC7, -0XFF,0XFF,0XFF,0XFF,0XFF,0XEF,0XDF,0XF9,0X01,0XFF,0X7F,0XF8,0X00,0X7F,0XC1,0XFF, -0XF8,0XF0,0X67,0XFF,0XFF,0XFF,0XFF,0XFF,0XEF,0XDF,0XFF,0XFF,0XFF,0X7F,0XF8,0X00, -0XFF,0XC1,0XFF,0XF9,0XFC,0X27,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XDF,0XFF,0XEF,0XFF, -0X7F,0XF8,0X01,0XFF,0XC1,0XFF,0XF9,0XFE,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XDF, -0XF8,0X01,0XFF,0X7F,0XF8,0X01,0XD9,0X81,0XFF,0XF9,0XFF,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF7,0XDF,0XF8,0X01,0XFF,0X7F,0XF8,0X01,0XD9,0XC1,0XFF,0XF8,0XFF,0X87,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF7,0XDF,0XFC,0XEF,0XFF,0X7F,0XF8,0X01,0XD9,0XC1,0XFF,0XFC, -0X7F,0XC7,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XDF,0XFE,0X6F,0XFF,0X7F,0XF8,0X01,0XD9, -0XC1,0XFF,0XFC,0XFF,0XE7,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XDF,0XFF,0X2F,0XFF,0X7F, -0XF8,0X01,0XDF,0XC1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XDF,0XFF, -0XCF,0XFF,0X7F,0XF8,0X00,0XCF,0XC1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF7,0XDF,0XFF,0XEF,0XFE,0XFF,0XF8,0X00,0X07,0X81,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF7,0XEF,0XFF,0XFF,0XFE,0XFF,0XF8,0X00,0X00,0X01,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XEF,0XF9,0XC3,0XFE,0XFF,0XF8,0X38,0X00,0X01, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFB,0XEF,0XF9,0X83,0XFE,0XFF,0XF8, -0X3F,0X00,0X01,0XFF,0XFF,0XEF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFB,0XEF,0XF9,0X99, -0XFE,0XFF,0XF8,0X3F,0XF0,0X01,0XFF,0XFF,0XCF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFB, -0XEF,0XF9,0X99,0XFE,0XFF,0XF8,0X07,0XFF,0X01,0XFF,0XFF,0XCF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFB,0XEF,0XF8,0X19,0XFE,0XFF,0XF8,0X00,0XFF,0XC1,0XFF,0XBF,0XEF,0XF3, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFB,0XF7,0XF8,0X1B,0XFD,0XFF,0XF8,0X00,0X0F,0XC1,0XFF, -0X8F,0XFF,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFB,0XF7,0XFF,0XFF,0XFD,0XFF,0XF8,0X00, -0X0F,0XC1,0XFF,0XCF,0X03,0XE7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFB,0XF7,0XFF,0XFF,0XFD, -0XFF,0XF8,0X00,0XFF,0XC1,0XFF,0XFC,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFB,0XF7, -0XFF,0XF9,0XFD,0XFF,0XF8,0X0F,0XFF,0X01,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFB,0XF7,0XFF,0XF9,0XFB,0XFF,0XF8,0X3F,0XF0,0X01,0XFF,0XF0,0X00,0X3F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFB,0XFB,0XFF,0XFF,0XFB,0XFF,0XF8,0X3F,0X00,0X01,0XFF,0XF0, -0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFB,0XFF,0XFF,0XFB,0XFF,0XF8,0X3F,0X00, -0X01,0XFF,0XE0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFB,0XFF,0XFF,0XF7,0XFF, -0XF8,0X3F,0XF0,0X03,0XFF,0XE0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFD,0XFF, -0XFF,0XF7,0XFF,0XF8,0X07,0XFE,0X03,0XFF,0XE0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFD,0XFD,0XF8,0X01,0XF7,0XFF,0XF8,0X00,0X7F,0XC3,0XFC,0X40,0X00,0X0C,0X7F,0XFF, -0XFF,0XFF,0XFF,0XFD,0XFE,0XF8,0X01,0XEF,0XFF,0XF8,0X00,0X0F,0XC3,0XFC,0X40,0X00, -0X0C,0X7F,0XFF,0XFF,0XFF,0XFF,0XFD,0XFE,0XFD,0XFF,0XEF,0XFF,0XFC,0X00,0X0F,0XC3, -0XFF,0XE0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0X7C,0XFF,0XDF,0XFF,0XFC, -0X00,0XFF,0XC3,0XFF,0XE0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0X7F,0XFF, -0XDF,0XFF,0XFC,0X1F,0XFF,0XC3,0XFF,0XE0,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD, -0XFF,0XBF,0XFF,0XBF,0XFF,0XFC,0X3F,0XFC,0X03,0XFF,0XF0,0X00,0X1F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFD,0XFF,0XBF,0XFF,0XBF,0XFF,0XFC,0X3F,0XE0,0X03,0XFF,0XF8,0X00,0X3F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XDF,0XFF,0X7F,0XFF,0XFC,0X3E,0X00,0X07,0XFF, -0XFC,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XEF,0XFE,0XFF,0XFF,0XFE,0X30, -0X00,0X07,0XFF,0XDE,0X00,0XF7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XF7,0XFD,0XFF, -0XFF,0XFE,0X00,0X00,0X07,0XFF,0X8F,0XC7,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF, -0XF8,0XF3,0XFF,0XFF,0XFE,0X00,0X00,0X0F,0XFF,0X9F,0XFF,0XF3,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFE,0XFF,0XFF,0X0F,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XBF,0XCF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XCF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XCF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X7F,0XFF,0XFF,0XFF,0XFF,}; - -const unsigned char gImage_1in54c_Yellow[] = { /* 0X00,0X01,0X98,0X00,0X98,0X00, */ -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00, -0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00, -0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00, -0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00, -0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00, -0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE0,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X00,0X00,0X00,0X00, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X00, -0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF0,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X00,0X00,0X00,0X00,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X00,0X0A, -0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00, -0X00,0X00,0X7F,0XC0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X00,0X00,0X01,0XFF,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X03,0XFF,0XF0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X03,0XFF,0XFB,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X07,0XFF,0XFF, -0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00, -0X0F,0XFF,0XFE,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF8,0X00,0X00,0X0F,0XFF,0XFE,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X0F,0XFF,0XFE,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X1F,0XFF,0XFE,0X00,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X1F,0XFF,0XFE,0X00, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0XDF, -0XFF,0XFE,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8, -0X00,0X01,0XDF,0XFF,0XFE,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFC,0X00,0X07,0XDF,0XFF,0XFE,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X0F,0XCF,0XFF,0XFE,0X00,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X0F,0XEF,0XFF,0XFE,0X00,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X1F,0XEF,0XFF, -0XFC,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00, -0X3F,0XEF,0XFF,0XFC,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFC,0X00,0X3F,0XF7,0XFF,0XFC,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X3F,0XFF,0XFF,0XF8,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X7F,0XFF,0XFF,0XF0,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF9,0XFF,0XFF,0XFC,0X00,0X7F,0XFF,0XFF,0XE0, -0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X3F,0XFF,0XFC,0X00,0X7F, -0XFF,0XFF,0XC0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X0F,0XFF, -0XFE,0X00,0X7F,0XFF,0XFE,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFC,0X01,0XFF,0XFE,0X00,0X7F,0XFF,0XFD,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0X7F,0XFE,0X00,0X7F,0XFF,0XFF,0X80,0X00,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X1F,0XFE,0X00,0X7F,0XFF,0XFF,0X00,0X00, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFE,0X00,0X7F,0XFF, -0XFF,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X07,0XFE, -0X00,0X7F,0XFF,0XFF,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X80,0X03,0XFE,0X00,0X3F,0XFF,0XFF,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFC,0X01,0XE1,0XFE,0X00,0X3F,0XFF,0XFF,0X00,0X00,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X07,0XF1,0XFE,0X00,0X3F,0XFF,0XFF,0X80,0X00,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X3F,0XF1,0XFE,0X00,0X1F,0XFF,0XFF, -0X80,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0XFF,0XF1,0XFE,0X00, -0X0F,0XFF,0XFD,0XC0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF1,0XFF,0X00,0X0F,0XFF,0XF8,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X07,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X01,0XFF,0XE0,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X3F,0XFF,0X00,0X00,0XFF,0X80,0X00, -0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X3F,0XFF,0X00,0X00, -0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F, -0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF8,0X00,0X3F,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF8,0XCC,0X7F,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0XCE,0X3F,0XFF,0X00,0X00,0X00,0X00,0X00,0X00, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0XCE,0X3F,0XFF,0X00,0X00,0X00, -0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0XC6,0X3F,0XFF, -0X80,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8, -0XC0,0X3F,0XFF,0X80,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF8,0XE0,0X3F,0XFF,0X80,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X60,0X7F,0XFF,0X80,0X00,0X00,0X00,0X00,0X00,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0XFF,0XFF,0X80,0X00,0X00,0XF0, -0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80, -0X00,0X03,0X6C,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X80,0X00,0X0D,0XFA,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X00,0X00,0X3F,0XFF,0X80,0X00,0X17,0XFD,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X3F,0XFF,0X80,0X00,0X2F,0XFE,0X80,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X3F,0XFF,0X80,0X00,0X5F,0XFF,0X40, -0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X3F,0XFF,0XC0,0X00, -0X7F,0XFF,0XC0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0XFC,0X7F, -0XFF,0XC0,0X00,0XBF,0XFF,0XA0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF8,0XFE,0X7F,0XFF,0XC0,0X00,0XFF,0XFF,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF8,0XFE,0X3F,0XFF,0XC0,0X01,0X7F,0XFF,0XD0,0X00,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0XFE,0X3F,0XFF,0XC0,0X01,0XFF,0XFF,0XF0,0X00, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X7C,0X3F,0XFF,0XC0,0X02,0XFF, -0XFF,0XE8,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X3F,0XFF, -0XC0,0X03,0XFF,0XFF,0XF8,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC, -0X00,0X7F,0XFF,0XC0,0X05,0XFF,0XFF,0XF4,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0X00,0X7F,0XFF,0XC0,0X07,0XFF,0XFF,0XFC,0X00,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X81,0XFF,0XFF,0XC0,0X07,0XFF,0XFF,0XFC,0X00,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X0B,0XFF,0XFF, -0XFC,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0, -0X0F,0XFF,0XFF,0XFA,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00, -0X3F,0XFF,0XE0,0X0F,0XFF,0XFF,0XFE,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFC,0X00,0X3F,0XFF,0XE0,0X0F,0XFF,0XFF,0XFE,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XE0,0X0F,0XFF,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XE0,0X17,0XFF,0XFF,0XFD, -0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0XFF,0XFF,0XFF,0XE0,0X1F, -0XFF,0XFF,0XFF,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0XFF,0XFF, -0XFF,0XE0,0X1F,0XFF,0XFF,0XFF,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF8,0XFF,0XFF,0XFF,0XE0,0X1F,0XFF,0XFF,0XFF,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFC,0X3F,0XFF,0XFF,0XE0,0X1F,0XFF,0XFF,0XFF,0X00,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XF0,0X1F,0XFF,0XFF,0XFF,0X00, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XF0,0X2F,0XFF, -0XFF,0XFF,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF, -0XF0,0X3F,0XFF,0XFF,0XFE,0X80,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8, -0X00,0X3F,0XFF,0XF0,0X3F,0XFF,0XFF,0XFF,0X80,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X3F,0XFF,0XFF,0XFF,0X80,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X3F,0XFF,0XFF,0XFF,0X80,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X3F,0XFF,0XFF, -0XFF,0X80,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XF0, -0X3F,0XFF,0XFF,0XFF,0X80,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00, -0X3F,0XFF,0XF0,0X3F,0XFF,0XFF,0XFF,0X80,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X00,0X3F,0XFF,0XF0,0X3F,0XFF,0XFF,0XFF,0X80,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XF0,0X3F,0XFF,0XFF,0XFF,0X80,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X7F,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF, -0X80,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X7F,0XFF,0XF8,0X3F, -0XFF,0XFF,0XFF,0X80,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F, -0XFF,0XF8,0X3F,0XFF,0XFF,0XFF,0X80,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFE,0X3F,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF,0X80,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF,0X80,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF,0X80, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X7F,0XFF,0XF8,0X3F,0XFF, -0XFF,0XFE,0X80,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0XFF,0XFF, -0XF8,0X2F,0XFF,0XFF,0XFF,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0X00,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X1F,0XFF,0XFF,0XFF,0X00,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X1F,0XFF,0XFF, -0XFF,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFC, -0X1F,0XFF,0XFF,0XFF,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC7,0X80, -0XFF,0XFF,0XFC,0X17,0XFF,0XFF,0XFD,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X8F,0X80,0X7F,0XFF,0XFC,0X0F,0XFF,0XFF,0XFE,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X8F,0X00,0X7F,0XFF,0XFC,0X0F,0XFF,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0X0C,0X3F,0XFF,0XFC,0X0F,0XFF,0XFF,0XFE, -0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0X1E,0X3F,0XFF,0XFC,0X0F, -0XFF,0XFF,0XFA,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8E,0X1E,0X3F, -0XFF,0XFC,0X0B,0XFF,0XFF,0XFC,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X86,0X1E,0X3F,0XFF,0XFC,0X07,0XFF,0XFF,0XFC,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X80,0X3E,0X3F,0XFF,0XFE,0X07,0XFF,0XFF,0XF4,0X00,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X3E,0X3F,0XFF,0XFE,0X05,0XFF,0XFF,0XF8,0X00, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X7C,0X3F,0XFF,0XFE,0X03,0XFF, -0XFF,0XF8,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0XFC,0X7F,0XFF, -0XFE,0X02,0XFF,0XFF,0XE8,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFE,0X01,0XFF,0XFF,0XF0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X01,0X7F,0XFF,0XD0,0X00,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0XFF,0XFF,0XE0,0X00,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0XBF,0XFF, -0XA0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE, -0X00,0X7F,0XFF,0XC0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0X00,0X5F,0XFF,0X40,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X2F,0XFE,0X80,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X17,0XFD,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X0B,0XFA,0X00, -0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00, -0X07,0X6C,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X00,0X00,0XF0,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00, -0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X80,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00,0X00,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00, -0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X80,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00,0X00,}; - - -const unsigned char gImage_2in7[5808] = { /* 0X00,0X01,0XB0,0X00,0X08,0X01, */ -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0X80,0X00,0X00,0X00,0X00,0X03,0XE1,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0X80,0X00,0X00,0X00, -0X00,0X03,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFE,0X1F,0X80,0X00,0X00,0X00,0X00,0X03,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0X80,0X00,0X00,0X00,0X00,0X03,0XE1,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0XFF,0XFF,0XFE,0X1F,0X80,0X00, -0X00,0X00,0X00,0X03,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80, -0X1F,0XFF,0XFE,0X1F,0X83,0XFF,0XFF,0XFF,0XFF,0X83,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X0F,0XFF,0XFE,0X1F,0X83,0XFF,0XFF,0XFF,0XFF,0X83, -0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X0E,0X07,0XFF,0XFE,0X1F, -0X83,0XFF,0XFF,0XFF,0XFF,0X83,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF8,0X3F,0X83,0XFF,0XFE,0X1F,0X83,0XFF,0XFF,0XFF,0XFF,0X83,0XE1,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XE1,0XFF,0XFE,0X1F,0X83,0XFF,0XFF,0XFF, -0XFF,0X83,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XF1,0XFF, -0XFE,0X1F,0X83,0XFF,0XC0,0X00,0X01,0X83,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X01,0XFF,0XF1,0XFF,0XFE,0X1F,0X83,0X00,0X00,0X00,0X01,0X83,0XE1,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X01,0XFF,0XF0,0XFF,0XFE,0X1F,0X83,0X00, -0X00,0X00,0X01,0X83,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X03,0XFF, -0XF0,0XFF,0XFE,0X1F,0X83,0X00,0X00,0X00,0X01,0X83,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XF0,0XFF,0XFE,0X1F,0X83,0X00,0X00,0X00,0X01,0X83, -0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0XFF,0XFF,0XF0,0XFF,0XFE,0X1F, -0X83,0X01,0XFF,0XFF,0XFF,0X83,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3, -0XFF,0XFF,0XF0,0XFF,0XFE,0X1F,0X83,0X00,0X3F,0XFF,0XFF,0X83,0XE1,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC7,0XFF,0XFF,0XF0,0XFF,0XFE,0X1F,0X83,0X00,0X07,0XFF, -0XFF,0X83,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X87,0XFF,0XFF,0XF0,0XFF, -0XFE,0X1F,0X83,0XE0,0X00,0X7F,0XFF,0X83,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X8F,0XFF,0XFF,0XF0,0XFF,0XFE,0X1F,0X83,0XFE,0X00,0X0F,0XFF,0X83,0XE1,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XF0,0XFF,0XFE,0X1F,0X83,0XFF, -0XE0,0X03,0XFF,0X83,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF, -0XF0,0XFF,0XFE,0X1F,0X83,0XFF,0XFE,0X03,0XFF,0X83,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XF0,0XFF,0XFE,0X1F,0X83,0XFF,0XE0,0X03,0XFF,0X83, -0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XF0,0XFF,0XFE,0X1F, -0X83,0XFE,0X00,0X03,0XFF,0X83,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F, -0XFF,0XFF,0XF0,0XFF,0XFE,0X1F,0X83,0XE0,0X00,0X1F,0XFF,0X83,0XE1,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X87,0XFF,0XFF,0XF0,0XFF,0XFE,0X1F,0X83,0X00,0X01,0XFF, -0XFF,0X83,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X87,0XFF,0XFF,0XF0,0XFF, -0XFE,0X1F,0X83,0X00,0X1F,0XFF,0XFF,0X83,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC3,0XFF,0XFF,0XF0,0XFF,0XFE,0X1F,0X83,0X00,0XFF,0XFF,0XFF,0X83,0XE1,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF9,0XC1,0XFF,0XFF,0XF0,0XFF,0XFE,0X1F,0X83,0X00, -0X00,0X00,0X1F,0X83,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0XE0,0XFF,0XFF, -0XF0,0XFF,0XFE,0X1F,0X83,0X00,0X00,0X00,0X01,0X83,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFC,0X70,0X1F,0XFF,0XF0,0XFF,0XFE,0X1F,0X83,0X00,0X00,0X00,0X01,0X83, -0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X38,0X1F,0XFF,0XF0,0XFF,0XFE,0X1F, -0X83,0X00,0X00,0X00,0X01,0X83,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X3E, -0X1F,0XFF,0XF0,0XFF,0XFE,0X1F,0X83,0XFF,0XC0,0X00,0X01,0X83,0XE1,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XBE,0X1F,0XFF,0XF0,0XFF,0XFE,0X1F,0X83,0XFF,0XFF,0XFF, -0XFF,0X83,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X3F,0XBE,0X1F,0XFF,0XF0,0XFF, -0XFE,0X1F,0X83,0XFF,0XFF,0XFF,0XFF,0X83,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X0F,0X1E,0X1F,0XFF,0XF0,0XFF,0XFE,0X1F,0X83,0XFF,0XFF,0XFF,0XE1,0X83,0XE1,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X82,0X0E,0X1F,0XFF,0XF0,0XFF,0XFE,0X1F,0X83,0XFF, -0XFF,0XFF,0X01,0X83,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X1E,0X1F,0XFF, -0XF0,0XFF,0XFE,0X1F,0X83,0XFF,0XFF,0XF0,0X01,0X83,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFC,0X3F,0X0F,0XFF,0XF0,0XFF,0XFE,0X1F,0X83,0XFF,0XFF,0X80,0X01,0X83, -0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X3F,0X07,0XFF,0XF0,0XFF,0XFE,0X1F, -0X83,0XFF,0XF8,0X00,0X01,0X83,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X7F, -0X81,0XFF,0XF0,0XFF,0XFE,0X1F,0X83,0XFF,0XC0,0X00,0X01,0X83,0XE1,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X7F,0XC0,0X0F,0XF0,0XFF,0XFE,0X1F,0X83,0XFC,0X00,0X00, -0X07,0X83,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X7F,0XE0,0X1F,0XF0,0XFF, -0XFE,0X1F,0X83,0XE0,0X00,0X00,0X7F,0X83,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC, -0X00,0X7F,0XFC,0X1F,0XF0,0XFF,0XFE,0X1F,0X83,0X00,0X00,0X00,0X7F,0X83,0XE1,0XFF, -0XFF,0XFE,0X3F,0XFF,0XFF,0XFF,0XFC,0X7F,0XFE,0X1F,0XF0,0XFF,0XFE,0X1F,0X83,0X00, -0X00,0X70,0X7F,0X83,0XE1,0XFF,0XFF,0XFC,0X1F,0XFF,0XFF,0XFF,0XFC,0X3F,0XFE,0X1F, -0XF0,0XFF,0XFE,0X1F,0X83,0X00,0X07,0XF0,0X7F,0X83,0XE1,0XFF,0XFF,0XFC,0X1F,0XFF, -0XFF,0XFF,0XFC,0X1F,0XFF,0X1F,0XF1,0XFF,0XFE,0X1F,0X83,0X00,0X7F,0XF0,0X7F,0X83, -0XE1,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF,0XF8,0X0F,0XFF,0X0F,0XE1,0XFF,0XFE,0X1F, -0X83,0X07,0XFF,0XF0,0X7F,0X83,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X01, -0X0F,0X83,0XC1,0XFF,0XFE,0X1F,0X83,0X00,0X7F,0XF0,0X7F,0X83,0XE1,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC3,0X80,0X07,0X80,0X03,0XFF,0XFE,0X1F,0X83,0X00,0X0F,0XF0, -0X7F,0X83,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XC0,0X03,0XC0,0X07,0XFF, -0XFE,0X1F,0X83,0X00,0X00,0XF0,0X7F,0X83,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X9F,0XC0,0X19,0XF0,0X1F,0XFF,0XFE,0X1F,0X83,0X80,0X00,0X10,0X7F,0X83,0XE1,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X9E,0X7C,0XFC,0X7F,0XFF,0XFE,0X1F,0X83,0XF0, -0X00,0X00,0X7F,0X83,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X9F,0X7C,0X7F, -0XFF,0XFF,0XFE,0X1F,0X83,0XFE,0X00,0X00,0X3F,0X83,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X3F,0X7E,0X7F,0XFF,0XFF,0XFE,0X1F,0X83,0XFF,0XE0,0X00,0X03,0X83, -0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X3F,0X7F,0X3F,0XFF,0XFF,0XFE,0X1F, -0X83,0XFF,0XFC,0X00,0X01,0X83,0XE1,0XFF,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFE,0X7F, -0X3F,0XBF,0XFF,0XFF,0XFE,0X1F,0X83,0XFF,0XFF,0XC0,0X01,0X83,0XE1,0XFF,0X00,0X00, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0XFF,0XFE,0X1F,0X83,0XFF,0XFF,0XF8, -0X01,0X83,0XE1,0XFF,0XF8,0XFC,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0XFF, -0XFE,0X1F,0X83,0XFF,0XFF,0XFF,0X01,0X83,0XE1,0XFF,0XF9,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0X83,0XFF,0XFF,0XFF,0XF1,0X83,0XE1,0XFF, -0XF9,0XFF,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0X83,0XFF, -0XFF,0XFF,0XFF,0X83,0XE1,0XFF,0XF9,0XFF,0X9F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0X1F,0X83,0XFF,0XFF,0XFF,0XFF,0X83,0XE1,0XFF,0XF9,0XFF,0X9F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0X83,0XFF,0XFF,0XFF,0XFF,0X83, -0XE1,0XFF,0XFC,0XFF,0X9F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F, -0X83,0XFF,0XFF,0XFF,0XFF,0X83,0XE1,0XFF,0XFC,0X7F,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0X80,0X00,0X00,0X00,0X00,0X03,0XE1,0XFF,0XFE,0X00, -0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0X80,0X00,0X00,0X00, -0X00,0X03,0XE1,0XFF,0XFF,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFE,0X1F,0X80,0X00,0X00,0X00,0X00,0X03,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0X80,0X00,0X00,0X00,0X00,0X03,0XE1,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0X80,0X00, -0X00,0X00,0X00,0X03,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE1,0XFF,0XFF,0X07,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFE,0X07,0XBF,0XFF,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFC,0X67, -0X9F,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XE1,0XFF,0XF8,0XE7,0X9F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XF9,0XE7,0X9F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF, -0XF9,0XE7,0X9F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XF9,0XE7,0X9F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XF9,0XE7,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE1,0XFF,0XFC,0XE7,0X3F,0XFF,0XFF,0XF8,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFC,0X00,0X3F,0XFF,0XFF,0XF0,0X01,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFE,0X00, -0X7F,0XFF,0XFF,0XC1,0XE0,0X3F,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XE1,0XFF,0XFF,0X81,0XFF,0XFF,0XFF,0X0F,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F, -0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X38,0X63,0X83,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0X80,0X1F,0XFF,0XFF,0XF8,0X70,0X31,0XC1,0XFF,0XFF, -0XFF,0XFF,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0X80,0X00,0X1F,0XFF, -0XF0,0X60,0X30,0XC1,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XFC,0X00,0X03,0XFF,0XFF, -0XE1,0XFF,0XFF,0XFC,0X1F,0XFF,0XE0,0X60,0X30,0X40,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F, -0XFF,0XC0,0X00,0X00,0X7F,0XFF,0XE1,0XFF,0XFF,0XFE,0X1F,0XFF,0XE0,0X60,0X30,0X60, -0X00,0X00,0X00,0X01,0XFE,0X1F,0XFF,0X00,0X00,0X00,0X1F,0XFF,0XE1,0XFF,0XFF,0XF0, -0X7F,0XFF,0XC0,0X70,0X30,0X60,0X00,0X00,0X00,0X01,0XFE,0X1F,0XFE,0X00,0X00,0X00, -0X07,0XFF,0XE1,0XFF,0XFF,0X83,0XFF,0XFF,0XC0,0X30,0X70,0X60,0X00,0X00,0X00,0X01, -0XFE,0X1F,0XFC,0X00,0X00,0X00,0X03,0XFF,0XE1,0XFF,0XFE,0X1F,0XFF,0XFF,0X80,0X3F, -0XE0,0X60,0X00,0X00,0X00,0X01,0XFE,0X1F,0XF8,0X00,0X3F,0XFC,0X01,0XFF,0XE1,0XFF, -0XFE,0X0F,0XFF,0XFF,0X80,0X1F,0XC0,0X00,0X00,0X00,0X00,0X01,0XFE,0X1F,0XF0,0X18, -0X1F,0XFF,0X80,0XFF,0XE1,0XFF,0XFF,0XC1,0XFF,0XFF,0X80,0X03,0X00,0X00,0X00,0X00, -0X00,0X01,0XFE,0X1F,0XE0,0X7C,0X0F,0XFF,0XE0,0XFF,0XE1,0XFF,0XFF,0XF8,0X3F,0XFF, -0X80,0X00,0X00,0X00,0X1F,0XFF,0XF0,0X01,0XFE,0X1F,0XE0,0XFE,0X07,0XFF,0XF0,0X7F, -0XE1,0XFF,0XFF,0XFF,0X1F,0XFF,0X80,0X00,0X00,0X00,0X1F,0XFF,0XE0,0X01,0XFE,0X1F, -0XE1,0XFF,0X07,0XFF,0XF8,0X7F,0XE1,0XFF,0XE0,0X00,0X1F,0XFF,0X80,0X00,0X00,0X00, -0X1F,0XFF,0XC0,0X01,0XFE,0X1F,0XC1,0XFF,0X03,0XFF,0XF8,0X7F,0XE1,0XFF,0X80,0X00, -0X1F,0XFF,0X80,0X07,0XFC,0X00,0X1F,0XFF,0X80,0X01,0XFE,0X1F,0XC3,0XFF,0X81,0XFF, -0XFC,0X3F,0XE1,0XFF,0X83,0XFF,0XFF,0XFF,0X80,0X1F,0XFF,0X00,0X1F,0XFF,0X00,0X01, -0XFE,0X1F,0XC3,0XFF,0XC0,0XFF,0XFC,0X3F,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X3C, -0X67,0X80,0X1F,0XFE,0X00,0X81,0XFE,0X1F,0XC3,0XFF,0XE0,0XFF,0XFC,0X3F,0XE1,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0X30,0X21,0XC0,0X1F,0XFC,0X01,0X81,0XFE,0X1F,0XC3,0XFF, -0XE0,0X7F,0XFC,0X3F,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X60,0X30,0XC0,0X3F,0XF8, -0X03,0X81,0XFE,0X1F,0XC3,0XFF,0XF0,0X3F,0XFC,0X3F,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF, -0XC0,0X60,0X30,0XC0,0X7F,0XF0,0X0F,0X81,0XFE,0X1F,0XE1,0XFF,0XF8,0X3F,0XF8,0X3F, -0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X60,0X30,0X60,0X7F,0XE0,0X1F,0X81,0XFE,0X1F, -0XE1,0XFF,0XFC,0X1F,0XF8,0X7F,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X60,0X30,0X60, -0XFF,0XC0,0X3F,0X81,0XFE,0X1F,0XE0,0XFF,0XFC,0X0F,0XF0,0X7F,0XE1,0XFF,0XFF,0XFF, -0XFF,0XFF,0XE0,0X30,0X70,0X60,0XFF,0X80,0X7F,0X81,0XFE,0X1F,0XF0,0X7F,0XFE,0X07, -0XC0,0X7F,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X38,0XE0,0X61,0XFE,0X00,0XFF,0X81, -0XFE,0X1F,0XF0,0X1F,0XFF,0X07,0X80,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F, -0XE0,0X61,0XFC,0X01,0XFF,0X81,0XFE,0X1F,0XF8,0X03,0XFF,0X00,0X01,0XFF,0XE1,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0X80,0X00,0XF8,0X03,0XFF,0X81,0XFE,0X1F,0XFC,0X00, -0X00,0X00,0X01,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X70,0X07, -0XFF,0X81,0XFE,0X1F,0XFE,0X00,0X00,0X00,0X07,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X00,0X00,0X00,0X20,0X0F,0XFF,0X81,0XFE,0X1F,0XFF,0X80,0X00,0X00,0X0F,0XFF, -0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X60,0X00,0X1F,0XFF,0X81,0XFE,0X1F, -0XFF,0XE0,0X00,0X00,0X3F,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X01,0XF0, -0X00,0X3F,0XFF,0X81,0XFE,0X1F,0XFF,0XFC,0X00,0X03,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X81,0XFF,0XF8,0X00,0XFF,0XFF,0X81,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X81,0XFF,0XFC,0X01,0XFF,0XFF,0X81, -0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X81, -0XFF,0XFE,0X01,0XFF,0XFF,0X81,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X81,0XFF,0XFE,0X01,0XFF,0XFF,0X81,0XFE,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0X81,0XFF,0XFF,0X00,0XFF, -0XFF,0X81,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0X9F,0X80,0X3F,0XFF, -0XFF,0X81,0XFF,0XFF,0X80,0X7F,0XFF,0X81,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE1,0XFF,0X9F,0X9E,0X3F,0XFF,0XFF,0X81,0XFF,0XFF,0XC0,0X3F,0XFF,0X81,0XFE,0X1F, -0XFF,0XFC,0X00,0X03,0XFF,0XFF,0XE1,0XFF,0X9F,0X3F,0X1F,0XFF,0XFF,0X81,0XFF,0XFF, -0XE0,0X1F,0XFF,0X81,0XFE,0X1F,0XFF,0XC0,0X00,0X00,0X7F,0XFF,0XE1,0XFF,0X9F,0X3F, -0X9F,0XFF,0XFF,0X81,0XFF,0XFF,0XF0,0X0F,0XFF,0X81,0XFE,0X1F,0XFF,0X00,0X00,0X00, -0X1F,0XFF,0XE1,0XFF,0X9F,0X3F,0X9F,0XFF,0XFF,0X81,0XFF,0XFF,0XF8,0X0F,0XFF,0X81, -0XFE,0X1F,0XFE,0X00,0X00,0X00,0X07,0XFF,0XE1,0XFF,0XCF,0X3F,0X9F,0XFF,0XFF,0X81, -0XFF,0XFF,0XFC,0X07,0XFF,0X81,0XFE,0X1F,0XFC,0X00,0X00,0X00,0X03,0XFF,0XE1,0XFF, -0XCF,0X3F,0X9F,0XFF,0XFF,0X81,0XFF,0XFF,0XFE,0X03,0XFF,0X81,0XFE,0X1F,0XF8,0X00, -0X3F,0XFC,0X01,0XFF,0XE1,0XFF,0XE3,0X9F,0X3F,0XFF,0XFF,0X81,0XFF,0XFF,0XFE,0X03, -0XFF,0X81,0XFE,0X1F,0XF0,0X18,0X1F,0XFF,0X80,0XFF,0XE1,0XFF,0XF0,0X00,0X3F,0XFF, -0XFF,0X81,0XFF,0XFF,0XFC,0X03,0XFF,0X81,0XFE,0X1F,0XE0,0X7C,0X0F,0XFF,0XE0,0XFF, -0XE1,0XFF,0XF8,0X00,0X7F,0XFF,0XFF,0X81,0XFF,0XFF,0XF8,0X07,0XFF,0X81,0XFE,0X1F, -0XE0,0XFE,0X07,0XFF,0XF0,0X7F,0XE1,0XFF,0XFF,0X03,0XFF,0XFF,0XFF,0X81,0XFF,0XFF, -0XF0,0X0F,0XFF,0X81,0XFE,0X1F,0XE1,0XFF,0X07,0XFF,0XF8,0X7F,0XE1,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X81,0XFF,0XFF,0XE0,0X1F,0XFF,0X81,0XFE,0X1F,0XC1,0XFF,0X03,0XFF, -0XF8,0X7F,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X81,0XFF,0XFF,0XC0,0X3F,0XFF,0X81, -0XFE,0X1F,0XC3,0XFF,0X81,0XFF,0XFC,0X3F,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X81, -0XFF,0XFF,0XC0,0X7F,0XFF,0X81,0XFE,0X1F,0XC3,0XFF,0XC0,0XFF,0XFC,0X3F,0XE1,0XFF, -0XFF,0XFF,0X9F,0XFF,0XFF,0X81,0XFF,0XFF,0X80,0XFF,0XFF,0X81,0XFE,0X1F,0XC3,0XFF, -0XE0,0XFF,0XFC,0X3F,0XE1,0XFF,0XFF,0XFF,0X9F,0XFF,0XFF,0X81,0XFF,0XFF,0X01,0XFF, -0XFF,0X81,0XFE,0X1F,0XC3,0XFF,0XE0,0X7F,0XFC,0X3F,0XE1,0XFF,0XFF,0XFF,0X9F,0XFF, -0XFF,0X81,0XFF,0XFE,0X01,0XFF,0XFF,0X81,0XFE,0X1F,0XC3,0XFF,0XF0,0X3F,0XFC,0X3F, -0XE1,0XFF,0XFF,0XFF,0X9F,0XFF,0XFF,0X81,0XFF,0XFC,0X01,0XFF,0XFF,0X81,0XFE,0X1F, -0XE1,0XFF,0XF8,0X3F,0XF8,0X3F,0XE1,0XFF,0X80,0X00,0X1F,0XFF,0XFF,0X81,0XFF,0XF8, -0X00,0XFF,0XFF,0X81,0XFE,0X1F,0XE1,0XFF,0XFC,0X1F,0XF8,0X7F,0XE1,0XFF,0X80,0X00, -0X1F,0XFF,0XFF,0X81,0XFF,0XF0,0X00,0X7F,0XFF,0X81,0XFE,0X1F,0XE0,0XFF,0XFC,0X0F, -0XF0,0X7F,0XE1,0XFF,0X80,0X00,0X1F,0XFF,0XFF,0X81,0XFF,0XE0,0X00,0X3F,0XFF,0X81, -0XFE,0X1F,0XF0,0X7F,0XFE,0X07,0XC0,0X7F,0XE1,0XFF,0XDF,0XFF,0X9F,0XFF,0XFF,0X81, -0XFF,0XE0,0X00,0X1F,0XFF,0X81,0XFE,0X1F,0XF0,0X1F,0XFF,0X07,0X80,0XFF,0XE1,0XFF, -0XCF,0XFF,0X9F,0XFF,0XFF,0X81,0XFF,0XC0,0X70,0X0F,0XFF,0X81,0XFE,0X1F,0XF8,0X03, -0XFF,0X00,0X01,0XFF,0XE1,0XFF,0XE7,0XFF,0X9F,0XFF,0XFF,0X81,0XFF,0X80,0XF8,0X07, -0XFF,0X81,0XFE,0X1F,0XFC,0X00,0X00,0X00,0X01,0XFF,0XE1,0XFF,0XE7,0XFF,0X9F,0XFF, -0XFF,0X81,0XFF,0X01,0XFC,0X01,0XFF,0X81,0XFE,0X1F,0XFE,0X00,0X00,0X00,0X07,0XFF, -0XE1,0XFF,0XF7,0XFF,0X9F,0XFF,0XFF,0X81,0XFE,0X01,0XFE,0X00,0XFF,0X81,0XFE,0X1F, -0XFF,0X80,0X00,0X00,0X0F,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X81,0XFC,0X03, -0XFF,0X00,0X7F,0X81,0XFE,0X1F,0XFF,0XE0,0X00,0X00,0X3F,0XFF,0XE1,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X81,0XF8,0X07,0XFF,0X80,0X3F,0X81,0XFE,0X1F,0XFF,0XFC,0X00,0X03, -0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X81,0XF0,0X0F,0XFF,0XC0,0X1F,0X81, -0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X81, -0XE0,0X1F,0XFF,0XE0,0X0F,0X81,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X81,0XE0,0X3F,0XFF,0XF0,0X07,0X81,0XFE,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X81,0XC0,0X7F,0XFF,0XFC, -0X03,0X81,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X81,0X80,0XFF,0XFF,0XFE,0X01,0X81,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X81,0X00,0XFF,0XFF,0XFF,0X00,0X81,0XFE,0X1F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X01,0XFF, -0XFF,0XFF,0X80,0X01,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X80,0X03,0XFF,0XFF,0XFF,0XC0,0X01,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X07,0XFF,0XFF,0XFF,0XE0,0X01, -0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80, -0X0F,0XFF,0XFF,0XFF,0XF0,0X01,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X0F,0XFF,0XFF,0XFF,0XF0,0X01,0XFE,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00,0X00, -0X00,0X01,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X80,0X00,0X00,0X00,0X00,0X00,0X01,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00,0X00,0X00,0X01,0XFE,0X1F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00, -0X00,0X00,0X00,0X01,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00,0X00,0X00,0X01,0XFE,0X1F,0XFF,0XFC,0X7F,0XFF, -0XF1,0XFF,0XE1,0XFF,0XF9,0XFF,0XE7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFE,0X1F,0XFF,0XF0,0X1F,0XFF,0XC0,0X7F,0XE1,0XFF,0XF9,0XFF,0XC3,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XF0,0X1F,0XFF,0XC0,0X7F,0XE1,0XFF, -0XF8,0X0F,0X81,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XE0, -0X0F,0XFF,0X80,0X3F,0XE1,0XFF,0XF8,0X07,0X99,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0X1F,0XFF,0XE0,0X0F,0XFF,0X80,0X3F,0XE1,0XFF,0XF8,0XE7,0X9C,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XE0,0X0F,0XFF,0X80,0X3F, -0XE1,0XFF,0XF9,0XF3,0X9C,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F, -0XFF,0XF0,0X1F,0XFF,0XC0,0X7F,0XE1,0XFF,0XF9,0XF3,0X9C,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XF0,0X1F,0XFF,0XC0,0X7F,0XE1,0XFF,0XF9,0XF3, -0X9C,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XFC,0X7F,0XFF, -0XF1,0XFF,0XE1,0XFF,0XF9,0XF3,0X9C,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFC,0XE7,0X9C,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF, -0XFC,0X00,0X09,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFE,0X08,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFC,0X61,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF, -0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XF8,0X00,0X1F,0XFF,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF, -0XF8,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFE,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0X3F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE1,0XFF,0XFF,0XFF,0X9F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0X9F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF, -0X9F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XFC,0X00,0X03, -0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0X9F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFE,0X1F,0XFF,0XC0,0X00,0X00,0X7F,0XFF,0XE1,0XFF,0XFF,0XFC,0X1F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0X00,0X00,0X00,0X1F,0XFF,0XE1,0XFF, -0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFE,0X00, -0X00,0X00,0X07,0XFF,0XE1,0XFF,0XF8,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0X1F,0XFC,0X00,0X00,0X00,0X03,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X00,0X01,0XFE,0X1F,0XF8,0X00,0X3F,0XFC,0X01,0XFF, -0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00,0X01,0XFE,0X1F, -0XF0,0X18,0X1F,0XFF,0X80,0XFF,0XE1,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XFE,0X00, -0X00,0X00,0X00,0X01,0XFE,0X1F,0XE0,0X7C,0X0F,0XFF,0XE0,0XFF,0XE1,0XFF,0XFF,0XFE, -0X1F,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X00,0X01,0XFE,0X1F,0XE0,0XFE,0X07,0XFF, -0XF0,0X7F,0XE1,0XFF,0XFF,0XF0,0X1F,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X00,0X00,0X01, -0XFE,0X1F,0XE1,0XFF,0X07,0XFF,0XF8,0X7F,0XE1,0XFF,0XFF,0X80,0X7F,0XFF,0XFF,0XFF, -0XC0,0X00,0X00,0X80,0X00,0X01,0XFE,0X1F,0XC1,0XFF,0X03,0XFF,0XF8,0X7F,0XE1,0XFF, -0XFC,0X01,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X03,0XE0,0X00,0X01,0XFE,0X1F,0XC3,0XFF, -0X81,0XFF,0XFC,0X3F,0XE1,0XFF,0XE0,0X39,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XF8, -0X00,0X01,0XFE,0X1F,0XC3,0XFF,0XC0,0XFF,0XFC,0X3F,0XE1,0XFF,0X81,0XF9,0XFF,0XFF, -0XFF,0XFE,0X00,0X00,0X3F,0XFE,0X00,0X01,0XFE,0X1F,0XC3,0XFF,0XE0,0XFF,0XFC,0X3F, -0XE1,0XFF,0X8F,0XF9,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0XFF,0XFF,0XE0,0X01,0XFE,0X1F, -0XC3,0XFF,0XE0,0X7F,0XFC,0X3F,0XE1,0XFF,0X87,0XF9,0XFF,0XFF,0XFF,0XF8,0X00,0X03, -0XFC,0X0F,0XF0,0X01,0XFE,0X1F,0XC3,0XFF,0XF0,0X3F,0XFC,0X3F,0XE1,0XFF,0X80,0XF9, -0XFF,0XFF,0XFF,0XF0,0X00,0X0F,0XF0,0X03,0XF0,0X01,0XFE,0X1F,0XE1,0XFF,0XF8,0X3F, -0XF8,0X3F,0XE1,0XFF,0XF0,0X19,0XFF,0XFF,0XFF,0XF0,0X00,0X1F,0XF0,0X00,0XF8,0X01, -0XFE,0X1F,0XE1,0XFF,0XFC,0X1F,0XF8,0X7F,0XE1,0XFF,0XFE,0X01,0XFF,0XFF,0XFF,0XE0, -0X00,0X1F,0XF0,0X00,0XFC,0X01,0XFE,0X1F,0XE0,0XFF,0XFC,0X0F,0XF0,0X7F,0XE1,0XFF, -0XFF,0XC0,0X3F,0XFF,0XFF,0XE0,0X00,0X0F,0XF8,0X00,0X00,0X01,0XFE,0X1F,0XF0,0X7F, -0XFE,0X07,0XC0,0X7F,0XE1,0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XC0,0X00,0X03,0XFE,0X00, -0X00,0X01,0XFE,0X1F,0XF0,0X1F,0XFF,0X07,0X80,0XFF,0XE1,0XFF,0XFF,0XFF,0X9F,0XFF, -0XFF,0XC0,0X00,0X00,0XFF,0X80,0X00,0X01,0XFE,0X1F,0XF8,0X03,0XFF,0X00,0X01,0XFF, -0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X3F,0XE0,0X00,0X01,0XFE,0X1F, -0XFC,0X00,0X00,0X00,0X01,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00, -0X07,0XFC,0X00,0X01,0XFE,0X1F,0XFE,0X00,0X00,0X00,0X07,0XFF,0XE1,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X80,0X00,0X00,0X03,0XFC,0X00,0X01,0XFE,0X1F,0XFF,0X80,0X00,0X00, -0X0F,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X1F,0XC0,0X03,0XFC,0X00,0X01, -0XFE,0X1F,0XFF,0XE0,0X00,0X00,0X3F,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00, -0X0F,0XC0,0X03,0XFC,0X00,0X01,0XFE,0X1F,0XFF,0XFC,0X00,0X03,0XFF,0XFF,0XE1,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X07,0XF8,0X1F,0XF0,0X00,0X01,0XFE,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X03,0XFE,0X3F,0X00, -0X00,0X01,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X00,0X01,0XFF,0XFE,0X00,0X00,0X01,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X1F,0XFE,0X00,0X00,0X01,0XFE,0X1F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X03, -0XFE,0X00,0X00,0X01,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0X80,0X00,0X01,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X3F,0XE0,0X00,0X01, -0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00, -0X00,0X00,0X1F,0XFC,0X00,0X01,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XE1,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X1F,0XFC,0X00,0X01,0XFE,0X1F,0XFF,0XFF, -0XFF,0XFF,0XF0,0X7F,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X1F,0XFC, -0X00,0X01,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X00,0X00,0X00,0XFF,0XE0,0X00,0X01,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F, -0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X07,0XFF,0X00,0X00,0X01,0XFE,0X1F, -0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X1F, -0XFC,0X00,0X00,0X01,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XE1,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X00,0X00,0X1F,0XF0,0X00,0X00,0X03,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF, -0XF0,0X7F,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X1F,0XF0,0X00,0X00,0X03, -0XFE,0X1F,0XE0,0X00,0X00,0X00,0X00,0X7F,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00, -0X00,0X0F,0XF0,0X00,0X00,0X03,0XFE,0X1F,0XE0,0X00,0X00,0X00,0X00,0X7F,0XE1,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X01,0XFE,0X00,0X00,0X07,0XFE,0X1F,0XE0,0X00, -0X00,0X00,0X00,0X7F,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X3F,0XC0, -0X00,0X07,0XFE,0X1F,0XE0,0X00,0X00,0X00,0X00,0X7F,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X00,0X00,0X00,0X3F,0XF8,0X00,0X0F,0XFE,0X1F,0XE0,0X00,0X00,0X00,0X00,0X7F, -0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X3F,0XFC,0X00,0X0F,0XFE,0X1F, -0XE0,0X00,0X00,0X00,0X00,0X7F,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00, -0X7F,0XFC,0X00,0X1F,0XFE,0X1F,0XF0,0XFF,0XFF,0XFF,0XF0,0X7F,0XE1,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X00,0X00,0X03,0XFF,0XF8,0X00,0X3F,0XFE,0X1F,0XF8,0X7F,0XFF,0XFF, -0XF0,0X7F,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XC0,0X00,0X3F, -0XFE,0X1F,0XF8,0X3F,0XFF,0XFF,0XF0,0X7F,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00, -0X00,0X1F,0XFE,0X00,0X00,0X7F,0XFE,0X1F,0XFC,0X3F,0XFF,0XFF,0XF0,0X7F,0XE1,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X1F,0XF0,0X00,0X00,0XFF,0XFE,0X1F,0XFC,0X1F, -0XFF,0XFF,0XF0,0X7F,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X1F,0X80,0X00, -0X01,0XFF,0XFE,0X1F,0XFE,0X0F,0XFF,0XFF,0XF0,0X7F,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X00,0X00,0X1C,0X00,0X00,0X03,0XFF,0XFE,0X1F,0XFE,0X0F,0XFF,0XFF,0XF0,0X7F, -0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFE,0X1F, -0XFF,0X07,0XFF,0XFF,0XF0,0X7F,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00, -0X00,0X00,0X1F,0XFF,0XFE,0X1F,0XFF,0X83,0XFF,0XFF,0XF0,0X7F,0XE1,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFE,0X1F,0XFF,0X87,0XFF,0XFF, -0XF0,0X7F,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF, -0XFE,0X1F,0XFF,0XDF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00, -0X00,0X00,0X00,0X03,0XFF,0XFF,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFE,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF, -}; - -const unsigned char gImage_2in7b_Black[5808] = { /* 0X01,0X01,0X08,0X01,0XB0,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, -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,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,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,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,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,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,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0XC0,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X60,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X30,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X18,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X0C,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X06,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X07,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X03,0X80,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0XC0, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0XE0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XF0,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X78,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3C,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X08,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1C,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X08,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X1E,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0C,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X0C,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X07, -0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0C,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0E,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X1E,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1E,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X1E,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X1F,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3F,0X80,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3F,0X80, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X3F,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3F,0XC0,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X3F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X3F,0XE0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3F,0XE0,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X7F,0XF0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X7F,0XF0,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X7F,0XF0, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X7F,0XF0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X7F,0XE0,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X7F,0XE0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X04,0X00,0X7F,0XC0,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X20, -0X02,0X00,0X7F,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X30,0X03,0X00,0XFF,0X80,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X38,0X03,0X80,0XFF,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X3C,0X01,0XE0,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1E,0X01,0XF0,0XFE,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0X01,0XF8, -0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X1F,0X80,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0XC0,0XFF,0XFC,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0F, -0XE0,0XFF,0XFC,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X0F,0XF0,0XFF,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XF0,0XFF,0XF8,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X60,0X00,0X00, -0X00,0X07,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X38,0XC0,0X00,0X00,0X03,0XFF,0XFF,0XF0,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3F,0XC0,0X00,0X00,0X03,0XFF,0XFF, -0XF0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F, -0XC0,0X00,0X00,0X03,0XFF,0XFF,0XF0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X1F,0XE0,0X00,0X00,0X01,0XFF,0XFF,0XF0,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0XE0,0X00,0X00,0X01, -0XFF,0XFF,0XF0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X07,0XE0,0X00,0X00,0X01,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XE0,0X00,0X00,0X00,0XFF,0XFF,0XE0,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X03,0XF0,0X00, -0X00,0X00,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X03,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0XF0,0X00,0X00,0X00,0XFF,0XFF, -0XE0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0XF8,0X00,0X00,0X1F,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0XF8,0X00,0X00,0X1F,0XFF,0XFF,0XE0,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X7C,0X00,0X00,0X0F, -0XFF,0XFF,0XF0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X7C,0X00,0X00,0X0F,0XFF,0XFF,0XF0,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3C,0X00,0X00,0X07,0XFF,0XFF,0XF0,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3E,0X00, -0X00,0X07,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X1E,0X00,0X00,0X03,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0X00,0X00,0X00,0XFF,0XFF, -0XFC,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X0F,0X00,0X00,0X00,0X7F,0XFF,0XFC,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X07,0X80,0X00,0X00,0X7F,0XFF,0XFE,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0X80,0X00,0X00, -0X7F,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X03,0XC0,0X00,0X01,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X03,0XE0,0X00,0X07,0XFF,0XFF,0XFF,0X80, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0XF0, -0X00,0X07,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X01,0XF0,0X00,0X0F,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XF8,0X00,0X0F,0XFF,0XFF, -0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0XFC,0X00,0X0F,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFE,0X00,0X0F,0XFF,0XFF,0XFF,0XF0,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0X00,0X1F, -0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X20,0XFF,0XC0,0X3F,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X30,0XFF,0XE0,0XFF,0XFF,0XFF,0XFE,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF, -0XFF,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF, -0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XC0, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X0F,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF, -0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X08,0X03,0XFF, -0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF, -0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X1F,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF, -0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X7F,0XFF, -0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFE,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XC3, -0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X1F,0XFF,0XFF,0XFF,0X00,0X70,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF, -0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X7F,0XFF,0XFF,0XF0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,0XC0,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X03, -0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFC,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X0F,0XFF,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0XF0,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XF0, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X07,0XFF,0XF0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XF0,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01, -0XFF,0XF0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X01,0XFF,0XF0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XF0,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0XFF,0XF0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XF0,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XF8, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X7F,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X7F,0XF8,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XC0,0X00, -0X7F,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X7F,0XFF,0XFF,0XFF,0XFF,0XC0,0X7F,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XF8,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X03,0XFF,0XFC,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3F,0XFC,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3F,0XFC, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X3F,0XFC,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X7F,0XFE,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0XFF,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X01,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0XFC,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X03,0XF8,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X03,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X03,0XF0,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X07, -0XE0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X07,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XC0,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X0F,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X1E,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3E,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X7C, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X1F,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0XF8,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F, -0XF1,0XF0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X8E,0X01,0XF0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0XE0,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X01,0XE0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X03,0XC0,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0X80, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X07,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X1F,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X3E,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3C,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X7C,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0XF0,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X01,0XF0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X03,0XE0,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X07, -0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X0F,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X1F,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3F,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X7F,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X7F,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0XFF, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X01,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X03,0XFE,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X07,0XC6,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0X86,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0X04,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X1E,0X04,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3C,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X38,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X70,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XE0,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01, -0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X01,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X03,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X06,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0E,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0C,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X18,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X30,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X60, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X40,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X80,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X01,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X02,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,0X04,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X18,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X10,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X20,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,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,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,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,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,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,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,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -}; - -const unsigned char gImage_2in7b_Red[5808] = { /* 0X01,0X01,0X08,0X01,0XB0,0X00, */ -0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X04,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X04,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0, -0X00,0X00,0X00,0X00,0X04,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X0E,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00, -0X0E,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF, -0XFF,0XC0,0X00,0X00,0X00,0X00,0X1C,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X1C,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00, -0X00,0X00,0X08,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X03,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0X80,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X1F,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF, -0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0X81,0XE0,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F, -0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XF0,0X7F,0XC0,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X1F,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0XFF,0XEF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0X80,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XEF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X1F,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XF0,0X7F,0XC0, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0XFF,0XEF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0X81,0XC0, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XEF,0XFF,0XC0,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X1F,0X87,0XF0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XF7, -0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0X07,0XF0,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0XFF,0XE0,0X7F,0XC0,0X00,0X00,0X00,0X00,0X03,0X80,0X00,0X0F, -0X0F,0XF0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00, -0X00,0X00,0X07,0XE0,0X00,0X0E,0X1F,0XE0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X01,0XFC,0X00,0X04,0X1F,0XC0,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XF0,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X78, -0X00,0X00,0X1F,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XEF,0X7F,0XC0, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0XFF,0XEF,0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X03, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XEF,0X7F,0XC0,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X0F,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XF0, -0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X38,0X00,0X00,0X00,0X1F,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X70,0X00,0X00, -0X00,0X3E,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XEF,0X7F,0XC0,0X00,0X00, -0X00,0X00,0X00,0XE0,0X00,0X00,0X00,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0XFF,0XEF,0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0XC0,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XEF,0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XF0,0XFF,0XC0, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF, -0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0XFF,0XF3,0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XEB,0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XEB,0X7F,0XC0, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0XFF,0XEB,0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XF0,0XFF,0XC0,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X87,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF, -0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0X81,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0XFF,0XEF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01, -0XFF,0X87,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XEF,0XFF,0XC0,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X01,0XCC,0XC7,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0XFF,0XE0,0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XCC,0XC7,0X80,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0XCF,0XFC,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X7F,0XF8,0XF0,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0XFF,0XF0,0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X7F,0X3C, -0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XEB,0X7F,0XC0,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X1E,0X08,0X27,0XF0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XEB, -0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3F,0XC0,0X0F,0X30,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0XFF,0XEB,0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3D, -0XF0,0X01,0X20,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XEC,0XFF,0XC0,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X18,0X80,0X03,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X19,0X80,0X0B,0X80,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X1F,0XC0,0X06,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XF0,0X7F,0XC0, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3D,0X80,0X01,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0XFF,0XEF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X38,0XC2,0X09, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XEF,0XFF,0XC0,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X18,0XCF,0X3F,0XB0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XF7, -0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0X3F,0XFE,0X78,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0XFF,0X80,0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01, -0X3F,0XFE,0X70,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X01,0XBF,0XF6,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0XF2,0X63,0X80,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XEC,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X01,0XF2,0X73,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XED,0X7F,0XC0, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0XFE,0X0F,0X80,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0XFF,0XEB,0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0X83, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XF3,0X7F,0XC0,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X87,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF, -0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X06,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XF3,0X7F,0XC0,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0XFF,0XEB,0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XEB,0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XEB,0X7F,0XC0, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0XFF,0XF0,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XE7, -0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0XFF,0XF9,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFE,0X7F,0XC0,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0XFF,0XF9,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XE7,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X20, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0, -0X00,0X00,0X00,0X00,0X00,0XFC,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0XFF,0XF0,0X7F,0XC0,0X00,0X00,0X00,0X00,0X01,0XFE,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XEB,0X7F,0XC0,0X00,0X00,0X00,0X00, -0X01,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XEB, -0X7F,0XC0,0X00,0X00,0X00,0X01,0X81,0XFF,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0XFF,0XEB,0X7F,0XC0,0X00,0X00,0X00,0X03,0XE3,0XFF,0X80,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XEC,0XFF,0XC0,0X00,0X00, -0X00,0X07,0XF3,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X0F,0XFB,0XFF,0XC0,0X1F,0X80,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XE7,0XFF,0XC0,0X00,0X00,0X00,0X0F,0XFF,0XFF, -0XC0,0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XF9,0XFF,0XC0, -0X00,0X00,0X00,0X0F,0XFF,0XFF,0XC1,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0XFF,0XFE,0X7F,0XC0,0X00,0X00,0X00,0X1F,0XFF,0XDF,0XC3,0XFF,0XF0,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XF9,0XFF,0XC0,0X00,0X00,0X00,0X1F, -0XFF,0XF3,0XEB,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XE7, -0XFF,0XC0,0X00,0X00,0X00,0X1F,0XF3,0XE1,0XD0,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0XFF,0XF9,0XFF,0XC0,0X00,0X00,0X00,0X1F,0XE1,0XE1,0XF0,0XFF, -0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFE,0X7F,0XC0,0X00,0X00, -0X00,0X0F,0XE1,0XE1,0XF0,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0XFF,0XF9,0XFF,0XC0,0X00,0X00,0X00,0X0F,0XE1,0XDF,0XF9,0XFF,0XC0,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XE7,0XFF,0XC0,0X00,0X00,0X00,0X0F,0XFB,0XFF, -0XFF,0XF3,0X87,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0, -0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XE1,0X7F,0X80,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0XFF,0XFF,0X7F,0XC0,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XC1,0XFF,0XC0, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X03,0XF8, -0XFF,0XFF,0XFF,0XE3,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XE7, -0XFF,0XC0,0X00,0X00,0X0F,0XF8,0X7F,0XFF,0XFF,0XF7,0XFF,0XC0,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0XFF,0XF9,0XFF,0XC0,0X00,0X00,0X3F,0XF8,0X7F,0X9F,0X3F,0XBF, -0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFE,0X7F,0XC0,0X00,0X00, -0X7F,0XF8,0X9F,0X86,0X3E,0X3F,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0XFF,0XF9,0XFF,0XC0,0X00,0X00,0X7F,0XFF,0X80,0XC0,0X10,0XFF,0XFF,0X80,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XE7,0XFF,0XC0,0X00,0X00,0XFF,0XFF,0XE0,0X00, -0X01,0XBF,0X1F,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XF9,0XFF,0XC0, -0X00,0X00,0XFF,0XFF,0XFC,0X00,0X03,0XFE,0X1F,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0XFF,0XFE,0X7F,0XC0,0X00,0X01,0XFF,0XFF,0XF6,0X00,0X00,0X06,0X1E,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XF9,0XFF,0XC0,0X00,0X00,0XFF,0XC7, -0XF0,0X00,0X00,0X07,0X1C,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XE7, -0XFF,0XC0,0X00,0X00,0X7F,0X87,0XFE,0X00,0X00,0X7F,0XF8,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0XFF,0XE7,0XFF,0XC0,0X00,0X00,0X3F,0X83,0XC0,0X00,0X00,0X8F, -0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XF9,0XFF,0XC0,0X00,0X00, -0X1F,0XC6,0X00,0X00,0X00,0X0F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0XFF,0XFE,0X7F,0XC0,0X00,0X00,0X0F,0XFF,0X80,0X00,0X03,0XFF,0XC0,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XF9,0XFF,0XC0,0X00,0X00,0X1F,0XFF,0XF0,0X00, -0X01,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XE7,0XFF,0XC0, -0X00,0X00,0X7F,0XFF,0XC0,0X00,0X00,0X7F,0XF0,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0XFF,0XF9,0XFF,0XC0,0X00,0X00,0XFF,0XFF,0X80,0X00,0X00,0X1F,0XFC,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFE,0X7F,0XC0,0X00,0X01,0XFF,0XC7, -0XFC,0X00,0X00,0X07,0X0E,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XF9, -0XFF,0XC0,0X00,0X00,0XFF,0XC3,0XF0,0X1C,0X01,0XC3,0X0F,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0XFF,0XE7,0XFF,0XC0,0X00,0X00,0XFF,0X83,0XE0,0XFC,0X18,0XFB, -0X0F,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XE7,0XFF,0XC0,0X00,0X00, -0X7F,0XC7,0XC7,0XFC,0X3E,0XFF,0X9F,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0XFF,0XF9,0XFF,0XC0,0X00,0X00,0X3F,0XFD,0XDF,0XFE,0X7F,0XFF,0XFF,0XC0,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFE,0X7F,0XC0,0X00,0X00,0X1F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XF9,0XFF,0XC0, -0X00,0X00,0X0F,0XFE,0X1F,0XFF,0XFF,0XF8,0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0XFF,0XE7,0XFF,0XC0,0X00,0X00,0X03,0XFE,0X1F,0XFF,0XFF,0XF8,0X7F,0XC0, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XF9,0XFF,0XC0,0X00,0X00,0X00,0X06, -0X1F,0XFF,0XFF,0XF8,0X7F,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFE, -0X7F,0XC0,0X00,0X00,0X00,0X07,0X3F,0XFF,0XFF,0XFC,0XFF,0X80,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0XFF,0XF9,0XFF,0XC0,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFE,0X7F, -0XBF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XE7,0XFF,0XC0,0X00,0X00, -0X00,0X0F,0XFE,0X3F,0XFC,0X3F,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X0F,0XFE,0X1C,0XFC,0X1F,0XC0,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X1F,0XFC,0X18, -0X7E,0X3F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0, -0X00,0X00,0X00,0X1F,0XFE,0X38,0X7F,0X7F,0XE0,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X1F,0XFF,0X78,0X7F,0XFF,0XE0,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X1F, -0XFF,0XFF,0XDB,0XFF,0XF0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF, -0XFF,0XC0,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XD9,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XC0,0X7F, -0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00, -0X00,0X07,0XFF,0XFF,0XC0,0X1F,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X07,0XFB,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X03,0XE1,0XFF, -0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0, -0X00,0X00,0X00,0X01,0XC1,0XFF,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X01,0XFF,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XEF,0X7F,0XC0,0X00,0X00,0X00,0X00, -0X01,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XEF, -0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0XFF,0XC0,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XEF,0XFF,0XC0,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XF3,0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XEB,0X7F,0XC0, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0XFF,0XEB,0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XEB,0X7F,0XC0,0X00,0X00,0X30,0X00, -0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XF0, -0XFF,0XC0,0X00,0X00,0X78,0X03,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X7C,0X07,0XC0,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00, -0X7E,0X0F,0XC3,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0XFF,0XF0,0X7F,0XC0,0X00,0X00,0X3F,0X07,0XC3,0X80,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XEF,0XFF,0XC0,0X00,0X00,0X1F,0X87,0XC3,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XEF,0XFF,0XC0, -0X00,0X00,0X1F,0XC7,0X83,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0XFF,0XF7,0XFF,0XC0,0X00,0X00,0X0F,0XC7,0X86,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XE0,0X7F,0XC0,0X00,0X00,0X07,0XC3, -0X04,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF, -0XFF,0XC0,0X00,0X00,0X01,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0XC0,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0X7F,0XC0,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1C,0X00,0X00,0X00,0X00, -0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X3F,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3F,0X80,0X00,0X00,0X00,0XFF,0XF3,0X7F,0XC0, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1C,0X7F,0X80,0X00, -0X00,0X00,0XFF,0XEB,0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X3E,0X7F,0XC0,0X00,0X00,0X00,0XFF,0XEB,0X7F,0XC0,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X7F,0X7F,0XC0,0X3C,0X00,0X00,0XFF,0XEB, -0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X7F,0XFF, -0XC0,0XFE,0X00,0X00,0XFF,0XF0,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X7F,0XFF,0XC1,0XFF,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XF8,0XC3,0XFF,0X00,0X00, -0XFF,0XEF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0XFE,0X78,0XF1,0XFE,0X00,0X00,0XFF,0XEF,0XFF,0XC0,0X00,0X1C,0X00,0X00,0X01,0X80, -0X00,0X00,0X00,0X00,0X00,0X00,0XFC,0X38,0XF1,0XFE,0X00,0X00,0XFF,0XE0,0X7F,0XC0, -0X00,0X38,0X00,0X00,0X03,0X80,0X80,0X00,0X00,0X00,0X00,0X00,0XFE,0X3D,0XF1,0XFE, -0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X78,0X00,0X00,0X07,0X80,0X00,0X00,0X00,0X00, -0X00,0X00,0XFE,0X7F,0XFF,0XCE,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X60,0X00,0X00, -0X0E,0X18,0X00,0X00,0X00,0X00,0X00,0X00,0X7F,0XFF,0XFF,0X87,0XF8,0X00,0XFF,0XF0, -0X7F,0XC0,0X00,0X01,0X80,0X00,0X1E,0X1C,0X00,0X00,0X00,0X00,0X00,0X01,0X4F,0XFF, -0XFF,0X87,0XF8,0X00,0XFF,0XEB,0X7F,0XC0,0X00,0X01,0X80,0X00,0X1C,0X1C,0X00,0X00, -0X00,0X00,0X00,0X0F,0X87,0XFF,0XFF,0XCF,0XF8,0X00,0XFF,0XEB,0X7F,0XC0,0X00,0X01, -0X00,0X00,0X10,0X0C,0X00,0X00,0X00,0X00,0X00,0X3F,0X87,0XE7,0X3F,0X7F,0XF8,0X00, -0XFF,0XEB,0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X7F, -0XC8,0XF3,0X1C,0X7F,0XF8,0X00,0XFF,0XEC,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0XFF,0XF8,0X10,0X11,0XFC,0XF0,0X00,0XFF,0XFF,0XFF,0XC0, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0XFF,0XFE,0X00,0X03,0XF8, -0XF0,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0XFF,0X80,0X00,0X08,0XE0,0X00,0XFF,0XF0,0X7F,0XC0,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFE,0X3F,0X00,0X00,0X1C,0XC0,0X00,0XFF,0XEF, -0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X7E,0X3F,0X80, -0X00,0XFF,0X00,0X00,0XFF,0XEF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X3E,0X30,0X00,0X00,0X3E,0X00,0X00,0XFF,0XF7,0XFF,0XC0,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3F,0X70,0X00,0X02,0X3E,0X00,0X00, -0XFF,0X80,0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3F, -0XFE,0X00,0X01,0XFE,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0XFF,0XF8,0X00,0X00,0X7F,0X80,0X00,0XFF,0XFF,0XFF,0XC0, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0XFF,0X79,0X80,0X00,0X1C, -0XE0,0X00,0XFF,0XEC,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X01,0XE0,0X00,0X00,0X00, -0X01,0XFE,0X3F,0X06,0X01,0X08,0X70,0X00,0XFF,0XED,0X7F,0XC0,0X00,0X00,0X00,0X00, -0X00,0X07,0XF8,0X00,0X00,0X00,0X00,0XFE,0X3C,0X1E,0X19,0XE8,0X70,0X00,0XFF,0XEB, -0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0X0F,0XF8,0X00,0X00,0X00,0X00,0X7E,0X38,0XFF, -0X3F,0XFC,0XF8,0X00,0XFF,0XF3,0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0X3F,0XF8,0X00, -0X00,0X00,0X00,0X3F,0XDF,0XFF,0X7F,0XFF,0XF8,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00, -0X00,0X00,0X00,0X0F,0XF0,0X00,0X00,0X00,0X00,0X1F,0XF3,0XFF,0XFF,0XE3,0XF8,0X00, -0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X01,0XC0,0X00,0X00,0X00,0X00,0X00, -0X21,0XFF,0XFF,0XE1,0XF8,0X00,0XFF,0XF3,0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X31,0XFF,0XFF,0XE3,0XF8,0X00,0XFF,0XEB,0X7F,0XC0, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFE,0XFF, -0XF0,0X00,0XFF,0XEB,0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X1C,0X00,0X00,0X00, -0X00,0X00,0X3F,0XCF,0XFC,0X7E,0X00,0X00,0XFF,0XEB,0X7F,0XC0,0X00,0X00,0X00,0X00, -0X00,0X00,0X38,0X00,0X00,0X00,0X00,0X00,0X7F,0X86,0X7C,0X7E,0X00,0X00,0XFF,0XF0, -0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X78,0X00,0X00,0X00,0X00,0X00,0X7F,0X84, -0X3C,0X7E,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0XF0,0X00, -0X00,0X00,0X00,0X00,0XFF,0XCE,0X2F,0XFF,0X00,0X00,0XFF,0XE7,0XFF,0XC0,0X00,0X00, -0X00,0X00,0X00,0X01,0XF0,0X00,0X00,0X00,0X00,0X00,0X7F,0XFF,0X63,0XFF,0X00,0X00, -0XFF,0XF9,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X01,0XC0,0X00,0X00,0X00,0X00,0X00, -0X7F,0XFF,0XE1,0XFF,0X00,0X00,0XFF,0XFE,0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X7F,0XFF,0XC0,0X7C,0X00,0X00,0XFF,0XF9,0XFF,0XC0, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3F,0X7F,0XC0,0X00, -0X00,0X00,0XFF,0XE7,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X1C,0X3F,0XC0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X08,0X3F,0X80,0X00,0X00,0X00,0XFF,0XF0, -0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3F, -0X00,0X00,0X00,0X00,0XFF,0XEB,0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X1C,0X00,0X00,0X00,0X00,0XFF,0XEB,0X7F,0XC0,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0XFF,0XEB,0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XEC,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0XFF,0XE7,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XF9,0XFF,0XC0,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFE, -0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0XFF,0XF9,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XE7,0XFF,0XC0,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0XFF,0XF9,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFE,0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XF9,0XFF,0XC0, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0XFF,0XE7,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF, -0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XE7,0XFF,0XC0,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0XFF,0XF9,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFE,0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XF9,0XFF,0XC0, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0XFF,0XE7,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XF9,0XFF,0XC0,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFE, -0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0XFF,0XF9,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XE7,0XFF,0XC0,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0XFF,0XE7,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XF9,0XFF,0XC0,0X00,0X00,0X00,0X78,0X00,0X00, -0X06,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFE,0X7F,0XC0, -0X00,0X00,0X00,0X7E,0X00,0X00,0X0E,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0XFF,0XF9,0XFF,0XC0,0X00,0X00,0X00,0X3F,0X00,0X00,0X1C,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XE7,0XFF,0XC0,0X00,0X00,0X00,0X1F, -0X80,0X00,0X3C,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XF9, -0XFF,0XC0,0X00,0X00,0X00,0X0F,0X80,0X00,0X38,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0XFF,0XFE,0X7F,0XC0,0X00,0X00,0X00,0X03,0X00,0X00,0X20,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XF9,0XFF,0XC0,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0XFF,0XE7,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XE7,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XF9,0XFF,0XC0, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0XFF,0XFE,0X7F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XF9,0XFF,0XC0,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XE7, -0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0XFF,0XF9,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFE,0X7F,0XC0,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0XFF,0XF9,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XE7,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF, -0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF, -0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XC0,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -}; - - -const unsigned char gImage_2in9[] = { /* 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, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X1F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X1F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X1F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X1F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X1F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X1F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00,0X00,0X03,0XF0,0X1F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00,0X00,0X03,0XF0,0X1F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00,0X38,0X03,0XF0,0X1F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X01,0XF8,0X03,0XF0,0X1F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X0F,0XF8,0X03,0XF0,0X1F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X7F,0XF8,0X03,0XF0,0X1F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X03,0XFF,0XF8,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X1F,0XFF,0XF8,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X7F,0XFF,0XF0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X7F,0XFF,0X80,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X7F,0XFC,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X7F,0XF8,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X3F,0XFE,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X07,0XFF,0XC0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0XFF,0XF8,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X1F,0XF8,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X1F,0XF8,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X7F,0XF8,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X03,0XFF,0XF8,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X1F,0XFF,0XE0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X7F,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X7F,0XFC,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X7F,0XF0,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X7F,0XFC,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X1F,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X03,0XFF,0XE0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0XFF,0XF8,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X3F,0XFF,0X80,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X07,0XFF,0XC0,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X01,0XFF,0XE0,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X7C,0X00,0X7F,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X7F,0X00,0X0F,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X7F,0XC0,0X07,0XFC,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X7F,0XE0,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X7F,0XF8,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X3F,0XFE,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X07,0XFF,0XC0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X01,0XFF,0XF0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X83,0XFF,0X00,0X7F,0XF8,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X81,0XFE,0X00,0X1F,0XF8,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0XFF,0X00,0X1F,0XF8,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X7F,0XC0,0X7F,0XF8,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X3F,0XF9,0XFF,0XF0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X1F,0XFF,0XFF,0X80,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X3F,0X0B,0XFF,0XFE,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X3F,0X00,0XFF,0XF8,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X3F,0X00,0X3F,0XE0,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X3F,0X00,0X0F,0X80,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X3F,0X00,0X02,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X3F,0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X18,0XFF,0XFF,0XFE,0X7F,0XF9,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X01,0XF8,0XFF,0XFF,0XF8,0X1F,0XF0,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X3F,0XF8,0XFF,0XFF,0XE0,0X0F,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0XE0,0XFF,0XFF,0XE0,0X07,0X80,0X7F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFC,0X00,0XFF,0XFF,0XF0,0X03,0XC0,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0X00,0XFF,0XFF,0XF8,0X00,0XE0,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X3F,0XF0,0XC0,0X00,0X00,0X00,0X70,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X03,0XF8,0XC0,0X00,0X00,0X00,0X18,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XF8,0XC0,0X00,0X00,0X00,0X04,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X7F,0XE0,0XC0,0X00,0X00,0X00,0X06,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0X00,0XC0,0X00,0X00,0X00,0X07,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFC,0X00,0XFF,0XFF,0XFF,0XFC,0X07,0XC3,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0XE0,0XF8,0XFF,0XFF,0XFE,0X0F,0XE3,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X1F,0XF8,0XF8,0X3F,0XFF,0X06,0X00,0X13,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X01,0XF8,0XE0,0X03,0XFF,0X06,0X00,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X18,0XE0,0X00,0X01,0X06,0X00,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XE0,0X00,0X01,0X06,0X00,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X70,0X00,0XF8,0X00,0X01,0X06,0X00,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XF9,0X80,0XFE,0X00,0X01,0X06,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XF9,0XC0,0XFF,0XC0,0X01,0X06,0X00,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XCC,0XC0,0XFF,0XFF,0XC1,0X06,0X00,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XCC,0XC0,0XFF,0XFF,0XC1,0X06,0X00,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0XC0,0XFF,0X8F,0XC1,0X06,0X00,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0X80,0XFC,0X00,0X01,0X06,0X00,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0X00,0XFE,0X00,0X01,0X06,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XFE,0X00,0X01,0X06,0X00,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X40,0XFD,0X00,0X01,0X06,0X00,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X03,0XC0,0XF8,0X80,0X01,0X06,0X00,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X1F,0XC0,0XE0,0X40,0XFF,0X02,0X00,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0X80,0XC0,0X40,0XFF,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFC,0X00,0XC0,0X20,0X7E,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFC,0X00,0XE0,0X00,0X7E,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0X80,0XF0,0X07,0XF0,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X1F,0XC0,0XF8,0X03,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X03,0XC0,0XFC,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X40,0XFE,0X00,0X00,0X01,0X00,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X1E,0X00,0XFF,0X00,0X00,0X7F,0X80,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X7F,0X80,0XFF,0X00,0X00,0X7F,0X83,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X7F,0X80,0XFC,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XED,0XC0,0XF8,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XCC,0XC0,0XF0,0X03,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XCC,0XC0,0XE0,0X07,0XE0,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XCF,0XC0,0XE0,0X1F,0XFC,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XCF,0X80,0XE0,0X3F,0XFF,0XE0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X0E,0X00,0XF8,0X7F,0XFF,0XFF,0X83,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XFC,0XFF,0XFF,0XFF,0X83,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X43,0X00,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XC7,0X80,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XCF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XCC,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFC,0XC0,0XFF,0XFF,0XFF,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X78,0XC0,0XFF,0XFF,0XFF,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X30,0X40,0XFF,0XFF,0XFF,0XE0,0X00,0X83,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XF0,0X7F,0XFF,0XE0,0X00,0X83,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0XFC,0XF0,0X7F,0X83,0XE0,0X00,0X83,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0XFC,0XF0,0X60,0X83,0XFF,0XE0,0X83,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0XFC,0XF0,0X60,0X83,0X84,0X20,0X83,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X01,0XC0,0XF0,0X60,0X83,0X84,0X20,0X83,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0XC0,0XF0,0X60,0X83,0X84,0X20,0X83,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0XC0,0XF0,0X60,0X83,0X84,0X20,0X83,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0XC0,0XF0,0X60,0X83,0X84,0X20,0X83,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0X80,0XF0,0X60,0X83,0X84,0X20,0X83,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0X00,0XF0,0X60,0X83,0X84,0X20,0X83,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XF0,0X60,0X83,0X84,0X20,0X83,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XF0,0X60,0X83,0X84,0X20,0X83,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X70,0X00,0XF0,0X60,0X83,0X84,0X20,0X83,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XF9,0X80,0XF0,0X60,0X83,0XFF,0XE0,0X83,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XF9,0XC0,0XF0,0X60,0X83,0XFF,0XE0,0X83,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XCC,0XC0,0XF0,0X60,0X83,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XCC,0XC0,0XF0,0X60,0X83,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0XC0,0XF0,0X60,0X83,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0X80,0XF0,0X60,0X83,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0X00,0XF0,0X60,0X83,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XF0,0X60,0X83,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XF0,0X60,0X83,0XFF,0XE0,0X83,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0XC0,0XF0,0X60,0X83,0X84,0X20,0X83,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0XC0,0XF0,0X60,0X83,0X84,0X20,0X83,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0XC0,0XF0,0X60,0X83,0X84,0X20,0X83,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X01,0XC0,0XF0,0X60,0X83,0X84,0X20,0X83,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0XC0,0XF0,0X60,0X83,0X84,0X20,0X83,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0XC0,0XF0,0X60,0X83,0X84,0X20,0X83,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XF0,0X60,0X83,0X84,0X20,0X83,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X1E,0X00,0XC0,0X00,0X03,0X84,0X20,0X83,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X7F,0X80,0XC0,0X00,0X03,0X84,0X20,0X83,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X7F,0X80,0XC0,0X00,0X03,0X84,0X20,0X83,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XED,0XC0,0XC0,0X00,0X03,0XFF,0XE0,0X83,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XCC,0XC0,0XC0,0X00,0X03,0XE0,0X00,0X83,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XCC,0XC0,0XC0,0X00,0X03,0XE0,0X00,0X83,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XCF,0XC0,0XFF,0XFF,0XFF,0XE0,0X00,0X83,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XCF,0X80,0XFF,0XFF,0XFF,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X0E,0X00,0XFF,0XFF,0XFF,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0XFF,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0XF8,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0XF8,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0XF8,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XC3,0X18,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XC3,0X18,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XC3,0X18,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XC0,0X18,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0XFC,0XFF,0XFE,0X07,0X83,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0XFC,0XFF,0XFE,0X07,0X83,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0XFC,0XFF,0XFE,0X07,0X83,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFE,0X07,0X83,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFE,0X07,0X83,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X1E,0X00,0XFF,0XFE,0X07,0X83,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X7F,0X80,0XFF,0XFE,0X07,0X83,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X7F,0X80,0XFF,0XFE,0X07,0X83,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XED,0XC0,0XFF,0XFE,0X07,0X03,0XC0,0X7F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XCC,0XC0,0XFC,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XCC,0XC0,0XF8,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XCF,0XC0,0XF0,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XCF,0X80,0XE0,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X0E,0X00,0XE0,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XE0,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X1E,0X00,0XE0,0X3E,0X07,0X83,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X7F,0X80,0XE0,0X7E,0X07,0X83,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X7F,0X80,0XE0,0X7E,0X07,0X83,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XE1,0XC0,0XE0,0X7E,0X07,0X83,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XC0,0XC0,0XE0,0X7E,0X07,0X83,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XC0,0XC0,0XE0,0X7E,0X07,0X83,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XC0,0XC0,0XE0,0X7E,0X07,0X83,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X40,0XC0,0XE0,0X7E,0X07,0X83,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XE0,0X7E,0X07,0X83,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0XC0,0XE0,0X7E,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X7F,0XF0,0XE0,0X7E,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0XF0,0XE0,0X7E,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0XF0,0XE0,0X3E,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XC0,0XC0,0XE0,0X02,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XC0,0XC0,0XE0,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XE0,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0XC0,0XF0,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0XC0,0XF8,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0XC0,0XFE,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X01,0XC0,0XFF,0XC3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X1E,0X00,0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X7F,0X80,0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0X80,0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XE1,0XC0,0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XC0,0XC0,0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XE1,0XC0,0XFF,0XFF,0XF8,0X1F,0XFC,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X7F,0XC0,0XFF,0XFF,0XF8,0X1F,0XFC,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X7F,0X80,0XFF,0XFF,0XF8,0X1F,0XFC,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X1E,0X00,0XFF,0XFF,0XF8,0X1F,0XFC,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XFF,0X7F,0XF8,0X1F,0XFC,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0XC0,0XFC,0X7F,0XF8,0X1F,0XFC,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0XC0,0XE0,0X7F,0XF8,0X1F,0XFC,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0XC0,0XC0,0X7F,0XF8,0X1F,0XFC,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X01,0X80,0XC0,0X7F,0XF8,0X1F,0XFC,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0XC0,0XC0,0X7F,0XF8,0X1F,0XFC,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0XC0,0XC0,0X7F,0XF8,0X1F,0XFC,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0XC0,0XC0,0X7F,0XF8,0X1F,0XFC,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0X80,0XE0,0X7F,0XF8,0X1F,0XFC,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0X00,0XE0,0X7F,0XF8,0X1F,0XFC,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XE0,0X00,0X00,0X00,0X3C,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XE0,0X00,0X00,0X00,0X3C,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0XD8,0XE0,0X00,0X00,0X00,0X1C,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0XD8,0XF0,0X00,0X00,0X00,0X1C,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0XD8,0XF0,0X00,0X00,0X00,0X0C,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XF8,0X00,0X00,0X00,0X04,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0XF8,0X1C,0X04,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X1E,0X00,0XFF,0XFF,0XF8,0X1E,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X7F,0X80,0XFF,0XFF,0XF8,0X1E,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X7F,0X80,0XFF,0XFF,0XF8,0X1F,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XE1,0XC0,0XFF,0XFF,0XF8,0X1F,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XC0,0XC0,0XFF,0XFF,0XF8,0X1F,0X80,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XC0,0XC0,0XFF,0XFF,0XF8,0X1F,0XC0,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XC0,0XC0,0XFF,0XFF,0XF8,0X1F,0XC0,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X40,0XC0,0XFF,0XFF,0XF8,0X1F,0XE0,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0XF8,0X1F,0XF0,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X43,0X00,0XFF,0XFF,0XF8,0X1F,0XF8,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XC7,0X80,0XFF,0XFF,0XF8,0X1F,0XF8,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XCF,0XC0,0XFF,0XFF,0XF8,0X1F,0XFC,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XCC,0XC0,0XFF,0XFF,0XF8,0X1F,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFC,0XC0,0XFF,0XFF,0XF8,0X1F,0XFF,0X3F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X78,0XC0,0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X30,0X40,0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -}; - - -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, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X7F,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X3F,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X1F,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X1F,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X0F,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X07,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X03,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X03,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X01,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X78,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X78,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X20,0X38,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X20,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X30,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X38,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X38,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X3C,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X3C,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X3F,0XF8,0X1F,0XFE,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X3F,0XF8,0X1F,0XFE,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X3F,0XF8,0X1F,0XFE,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X3F,0XF8,0X1F,0XFE,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X3F,0XF8,0X1F,0XFE,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X3F,0XF8,0X1F,0XFE,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X3F,0XF8,0X1F,0XFE,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X3F,0XF8,0X1F,0XFE,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X3F,0XF8,0X1F,0XFE,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X3F,0XF8,0X1F,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X3F,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X3F,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X3F,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X3F,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X40,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X7C,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X7E,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X7E,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X7E,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XC1,0XE0,0X7E,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XC1,0XE0,0X7E,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XC1,0XE0,0X7E,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XC1,0XE0,0X7E,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XC1,0XE0,0X7E,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XC1,0XE0,0X7E,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XC1,0XE0,0X7E,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XC1,0XE0,0X7E,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XC1,0XE0,0X7C,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X03,0XC0,0XE0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XC1,0XE0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XC1,0XE0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XC1,0XE0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XC1,0XE0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XC1,0XE0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XC1,0XE0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XC1,0XE0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XC1,0XE0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0X00,0X07,0XC0,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0X00,0X07,0XC0,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0X07,0XFF,0XC0,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0X04,0X21,0XC0,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0X04,0X21,0XC0,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0X04,0X21,0XC0,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0X04,0X21,0XC1,0X06,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0X04,0X21,0XC1,0X06,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0X04,0X21,0XC1,0X06,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0X04,0X21,0XC1,0X06,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0X04,0X21,0XC1,0X06,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0X04,0X21,0XC1,0X06,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0X04,0X21,0XC1,0X06,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0X07,0XFF,0XC1,0X06,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0XC1,0X06,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0XC1,0X06,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0XC1,0X06,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0XC1,0X06,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0XC1,0X06,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0XC1,0X06,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0X07,0XFF,0XC1,0X06,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0X07,0XFF,0XC1,0X06,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0X04,0X21,0XC1,0X06,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0X04,0X21,0XC1,0X06,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0X04,0X21,0XC1,0X06,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0X04,0X21,0XC1,0X06,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0X04,0X21,0XC1,0X06,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0X04,0X21,0XC1,0X06,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0X04,0X21,0XC1,0X06,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0X04,0X21,0XC1,0X06,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0X04,0X21,0XC1,0X06,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0X04,0X21,0XC1,0X06,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0X07,0XFF,0XC1,0X06,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0X00,0X07,0XC1,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0X00,0X07,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC1,0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC1,0XFF,0XFF,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X07,0XFF,0XFC,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X3F,0XF8,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X07,0XE0,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0XC0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0XC1,0XFE,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0X01,0XFE,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X80,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00,0XC0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X0F,0XE0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X7E,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X7E,0X04,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0XFF,0X02,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X40,0XFF,0X02,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X60,0X80,0X01,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X60,0X80,0X00,0XBF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X60,0X80,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X60,0X80,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X60,0X80,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X60,0X83,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X60,0X83,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X60,0X83,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X60,0X80,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X60,0X80,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X60,0X80,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X60,0X80,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X60,0X80,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X60,0XFF,0XC0,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC8,0X00,0X60,0XFF,0XFC,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC7,0XF0,0X7F,0XFF,0XFF,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC3,0XE0,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0XE0,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0X60,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0X20,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0X18,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X0E,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X07,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X03,0XC0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X01,0XE0,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XF0,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X0F,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X9F,0XFE,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X00,0X40,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X01,0XF0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X07,0XFC,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X1F,0XFF,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X7F,0XFF,0XD0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X01,0XFF,0XFF,0XF8,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X0F,0XFF,0X9F,0XFC,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X1F,0XFE,0X03,0XFE,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X1F,0XF8,0X00,0XFF,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X1F,0XF8,0X00,0X7F,0X81,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X1F,0XFE,0X00,0XFF,0XC1,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X0F,0XFF,0X80,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X03,0XFF,0XE0,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X7F,0XFC,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X1F,0XFE,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X07,0XFE,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X3F,0XE0,0X03,0XFE,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X1F,0XF0,0X00,0XFE,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0XFE,0X00,0X3E,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0X80,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X03,0XFF,0XE0,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X01,0XFF,0XFC,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X1F,0XFF,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X07,0XFF,0XC0,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XF8,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X3F,0XFE,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X0F,0XFE,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X3F,0XFE,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFE,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X07,0XFF,0XF8,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X1F,0XFF,0XC0,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X1F,0XFE,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X1F,0XF8,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X1F,0XF8,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X1F,0XFF,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X03,0XFF,0XE0,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X7F,0XFC,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X1F,0XFE,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X3F,0XFE,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X01,0XFF,0XFE,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X0F,0XFF,0XFE,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X1F,0XFF,0XF8,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X1F,0XFF,0XC0,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X1F,0XFE,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X1F,0XF0,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X1F,0X80,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X1C,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,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,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -}; - -const unsigned char gImage_2in9bc_ry[] = { /* 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, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X02,0X0C,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X1E,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X3F,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X33,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XF3,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X01,0XE3,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0XC2,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X02,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X03,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X03,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X03,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X87,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X01,0XFE,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X01,0XFE,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X78,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X1B,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X1B,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X1B,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X01,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X01,0X80,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X78,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X01,0XFE,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XFE,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X87,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X03,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X87,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X01,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X01,0XFE,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X78,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X80,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X03,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X03,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X0F,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X0F,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X0F,0XFE,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X02,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X03,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X03,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X03,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X87,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X01,0XFE,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X01,0XFE,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X78,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X70,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X01,0XF3,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XF3,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X33,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X33,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XB7,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X01,0XFE,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X01,0XFE,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X78,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X18,0X03,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X18,0XC3,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X18,0XC3,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X18,0XC3,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X18,0XC3,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X1F,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X1F,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X1F,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X70,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X01,0XF3,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XF3,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X33,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X33,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XB7,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X01,0XFE,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X01,0XFE,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X78,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X80,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X01,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X33,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X33,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X9F,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X01,0X9F,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X0E,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X01,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X80,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X02,0X0C,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X1E,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X3F,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X33,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XF3,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X01,0XE3,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0XC2,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X70,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X01,0XF3,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XF3,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X33,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X33,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XB7,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X01,0XFE,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X01,0XFE,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X78,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X02,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XC0,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XF8,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X01,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X3F,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X3F,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X01,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XF8,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XC0,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X02,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X01,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X33,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X33,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0X9F,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X01,0X9F,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X0E,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X18,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X1F,0X80,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X1F,0XF8,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X3F,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFE,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X1F,0XE0,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X1F,0XC0,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X0F,0XFC,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X3F,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X1F,0XFC,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X1F,0X80,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X18,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF8,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF8,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF8,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF8,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF8,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF8,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF8,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -}; - -const unsigned char gImage_2in13[] = { /* 0X00,0X01,0X80,0X00,0XFA,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,0X38,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0X00,0X00,0X78,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0X80,0X00,0XF8,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XC0,0X03,0XF8,0X00,0X00,0X00, -0X00,0X00,0X00,0X01,0X00,0X00,0X00,0X00,0X01,0XFF,0XE0,0X1F,0XF8,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0XC0,0X00,0X00,0X00,0X03,0XFF,0X70,0X1F,0XF0,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X7E,0X00,0X00,0X00,0X03,0XFF,0X78,0X38,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X3F,0X00,0X00,0X00,0X03,0XFF,0XF8,0XF0,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X0F,0XC0,0X00,0X00,0X03,0XF0,0XF8,0XC1,0XF8,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X03,0XF0,0X00,0X00,0X03,0XF3,0XF3,0X8F,0XFE,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X01,0XF8,0X00,0X00,0X03,0XFF,0XF3,0XBF,0XFF,0XC0,0X00,0X00, -0X00,0X03,0X00,0X00,0X00,0X3E,0X00,0X00,0X03,0XFF,0XFA,0X7F,0XFF,0XF0,0X00,0X00, -0X00,0X0F,0X00,0X00,0X00,0X3F,0XE0,0X00,0X00,0XE7,0XFB,0XFF,0XFF,0XF0,0X00,0X00, -0X00,0X07,0X00,0X00,0X00,0X3F,0XF0,0X00,0X00,0XE7,0XFB,0XFF,0XFF,0XE0,0X00,0X00, -0X00,0X03,0X00,0X00,0X00,0X1F,0XFC,0X00,0X00,0XFF,0XFB,0XFF,0XFF,0XE0,0X00,0X00, -0X00,0X03,0X00,0X00,0X00,0X0F,0XFE,0X00,0X00,0X7F,0XFB,0XCF,0XFF,0XE0,0X00,0X00, -0X00,0X03,0X00,0X00,0X00,0X03,0XFE,0X00,0X00,0X3F,0XF9,0XCF,0XFF,0XE0,0X00,0X00, -0X00,0X03,0X00,0X00,0X00,0X01,0XFF,0X80,0X00,0X0F,0XF1,0XFF,0XFF,0XE0,0X00,0X00, -0X00,0X03,0X00,0X00,0X00,0X00,0XFF,0XC0,0X00,0X00,0X3D,0XEF,0XFF,0XE0,0X00,0X00, -0X00,0X03,0X00,0X00,0X00,0X00,0X7F,0XE0,0X00,0X03,0XFF,0XF7,0XFF,0XC0,0X00,0X00, -0X00,0X03,0X00,0X00,0X00,0X00,0X3F,0XE0,0X00,0X3F,0XFF,0XFF,0XFF,0X80,0X00,0X00, -0X00,0X03,0X00,0X00,0X00,0X00,0X1F,0XE0,0X00,0X7E,0XFF,0XFF,0XFF,0X00,0X00,0X00, -0X00,0X03,0X00,0X00,0X00,0X00,0X0F,0XE0,0X00,0X3E,0XFF,0XF1,0XFF,0X00,0X00,0X00, -0X00,0X03,0X00,0X00,0X00,0X00,0X0F,0XE0,0X00,0X3F,0XFF,0XBF,0XFC,0X00,0X00,0X00, -0X00,0X03,0X00,0X00,0X00,0X00,0X07,0XF0,0X00,0X3E,0X7F,0X3F,0XF8,0X38,0X00,0X00, -0X00,0X03,0X00,0X00,0X00,0X00,0X07,0XF0,0X00,0X7E,0X7F,0XC0,0X00,0X7C,0X00,0X00, -0X00,0X03,0X00,0X00,0X00,0X00,0X07,0XF0,0X00,0X7E,0X3F,0XC0,0X01,0XFE,0X00,0X00, -0X00,0X03,0X00,0X00,0X00,0X00,0X07,0XF0,0X00,0X7F,0X1F,0XDF,0XFF,0XFF,0X00,0X00, -0X00,0X03,0X00,0X00,0X00,0X00,0X03,0XF0,0X00,0X7F,0X87,0XEF,0XFF,0XFF,0X80,0X00, -0X00,0X03,0X00,0X00,0X00,0X00,0X03,0XF0,0X00,0X7F,0XE3,0XF1,0XFF,0XFF,0X00,0X00, -0X00,0X03,0X00,0X00,0X00,0X00,0X03,0XF0,0X01,0X87,0XFC,0X78,0XFE,0X00,0X00,0X00, -0X00,0X03,0X00,0X00,0X00,0X00,0X03,0XF0,0X03,0X01,0XF8,0XFF,0X00,0X00,0X00,0X00, -0X00,0X03,0X00,0X00,0X00,0X00,0X03,0XF0,0X0E,0X00,0X01,0XFF,0X80,0X00,0X00,0X00, -0X00,0X03,0X00,0X00,0X00,0X00,0X03,0XF0,0X0C,0X00,0X03,0XFF,0X80,0X00,0X00,0X00, -0X00,0X03,0X00,0X00,0X00,0X00,0X03,0XF0,0X1C,0X00,0X0F,0X98,0X00,0X00,0X00,0X00, -0X00,0X03,0X00,0X00,0X00,0X00,0X03,0XF0,0X38,0X00,0X7F,0X9C,0X00,0X00,0X00,0X00, -0X00,0X03,0X00,0X00,0X00,0X00,0X03,0XF0,0X30,0X00,0X3F,0XDC,0X00,0X00,0X00,0X00, -0X00,0X03,0X00,0X00,0X07,0XFE,0X07,0XE0,0X30,0X00,0X1F,0XFE,0X00,0X00,0X00,0X00, -0X00,0X03,0X00,0X00,0X0F,0XFF,0X87,0XF0,0X70,0X00,0X1F,0XFC,0X00,0X00,0X00,0X00, -0X00,0X03,0X00,0X00,0X1F,0XFF,0XC7,0XF0,0X00,0X00,0X0F,0XFE,0X00,0X00,0X00,0X00, -0X00,0X03,0X00,0X00,0X3F,0XFF,0XE7,0XE0,0X00,0X00,0X0F,0XF0,0X00,0X00,0X00,0X00, -0X00,0X03,0X00,0X00,0X7F,0XFF,0XF3,0XE0,0X7F,0XFF,0XEF,0XE0,0X00,0X00,0X00,0X00, -0X00,0X03,0X00,0X00,0XFF,0X9F,0XFB,0XCF,0XFF,0XFF,0XC6,0X18,0X00,0X00,0X00,0X00, -0X00,0X03,0X00,0X03,0XFF,0XCF,0XF9,0XDF,0XFF,0XFF,0XC0,0X08,0X00,0X00,0X00,0X00, -0X00,0X03,0X00,0X0E,0XFF,0XDF,0XFD,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X03,0X01,0XF0,0XFF,0XFF,0XFD,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X03,0X03,0XF8,0XFF,0XFF,0XFD,0XFF,0XFC,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X03,0X07,0XFC,0XFF,0XDF,0XFD,0XFF,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X03,0X0F,0XFE,0XC7,0XDF,0XFD,0XFF,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X03,0X3E,0X7F,0XF7,0XDF,0XFF,0XFE,0X30,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X03,0X3E,0X7F,0XF7,0XDF,0XCF,0XF0,0X38,0X00,0X06,0X00,0X00,0X00,0X00,0X00, -0X00,0X03,0X7E,0X7F,0XFF,0XFF,0X9F,0XE0,0X38,0X00,0X1F,0XC0,0X00,0X00,0X00,0X00, -0X00,0X03,0X7F,0X1F,0XFF,0XFE,0X3E,0X00,0X3C,0X00,0X3B,0XE0,0X00,0X00,0X00,0X00, -0X00,0X03,0X7F,0X8F,0XFF,0XFE,0X7C,0X00,0X3C,0X00,0X3B,0XE0,0X00,0X00,0X00,0X00, -0X00,0X03,0X7F,0X87,0XFE,0X3F,0XF8,0X00,0X3C,0X00,0X7F,0XF0,0X00,0X00,0X00,0X00, -0X00,0X03,0X7F,0XA1,0XF8,0X1F,0XFC,0X00,0X1C,0X00,0X7C,0XF0,0X00,0X00,0X00,0X00, -0X00,0X03,0X3F,0XFF,0XF0,0X0F,0XFC,0X00,0X0C,0X00,0X7E,0X7C,0X00,0X00,0X00,0X00, -0X00,0X03,0X3F,0XFF,0XF0,0X0F,0XFE,0X00,0X0C,0X00,0X7F,0X3C,0X00,0X00,0X00,0X00, -0X00,0X03,0X1F,0XFF,0XF0,0X0F,0XFF,0X00,0X0C,0X00,0X3F,0X80,0X00,0X00,0X00,0X00, -0X00,0X03,0X0F,0XFF,0XF0,0X0E,0X7F,0X80,0X0C,0X00,0X3F,0XC0,0X00,0X00,0X00,0X00, -0X00,0X03,0X07,0XFF,0XF8,0X0E,0X3F,0XC0,0X0C,0X00,0X1F,0XF0,0X00,0X00,0X00,0X00, -0X00,0X03,0X03,0XFF,0XF8,0X1E,0X1F,0XE0,0X0C,0X00,0X0F,0XF0,0X00,0X00,0X00,0X00, -0X00,0X03,0X00,0X3F,0XFE,0X3F,0X87,0XE0,0X3C,0X00,0X0F,0XBE,0X00,0X00,0X00,0X00, -0X00,0X03,0X00,0X47,0XFF,0XFF,0XF0,0X60,0X3C,0X00,0X0F,0XBF,0X00,0X00,0X00,0X00, -0X00,0X03,0X00,0X31,0XFF,0XFF,0XF8,0XE0,0X38,0X00,0X0F,0XBF,0X80,0X00,0X00,0X00, -0X00,0X03,0X06,0X11,0XFF,0XFD,0XFF,0XE0,0X38,0X00,0X0F,0X1F,0X80,0X00,0X00,0X00, -0X00,0X03,0X0E,0X13,0XFF,0XF9,0XFF,0XE0,0X30,0X00,0X0E,0X07,0X80,0X00,0X00,0X00, -0X00,0X03,0X3C,0XD7,0XFD,0XFD,0XFF,0XE0,0X30,0X00,0X1C,0XC7,0X80,0X00,0X00,0X00, -0X00,0X03,0X39,0XEF,0XFB,0XFF,0XFF,0XE0,0X30,0X00,0X3D,0XFF,0X80,0X00,0X00,0X00, -0X00,0X03,0X73,0XEF,0XFB,0XFF,0XFF,0XE0,0X60,0X00,0X3D,0XFF,0X80,0X00,0X00,0X00, -0X00,0X03,0X67,0XEF,0XFB,0XFF,0XFF,0XC0,0XC0,0X00,0X3F,0XFF,0X80,0X00,0X00,0X00, -0X00,0X03,0X8F,0XF7,0XE3,0XFF,0XFF,0X80,0XE0,0X00,0X1B,0XFF,0X80,0X00,0X00,0X00, -0X00,0X03,0X9F,0XF3,0XE1,0XFF,0XE0,0X01,0XC0,0X00,0X3B,0XFF,0XC0,0X00,0X00,0X00, -0X00,0X03,0X3F,0XF1,0XF9,0XFF,0XC0,0X03,0X80,0X00,0X7F,0XFF,0XE0,0X00,0X00,0X00, -0X00,0X03,0X7F,0XF1,0XFD,0XFF,0X80,0X07,0X00,0X00,0X1F,0XFF,0XF8,0X00,0X00,0X00, -0X00,0X03,0XFF,0XF1,0XFF,0XFF,0X80,0X0F,0X00,0X00,0X3F,0XFF,0XFC,0X00,0X00,0X00, -0X00,0X03,0XFF,0XE0,0XFF,0XFF,0X00,0X0E,0X00,0X00,0X3F,0XFF,0X9C,0X00,0X00,0X00, -0X00,0X03,0XFF,0X80,0X0F,0XFF,0X00,0X06,0X00,0X00,0X03,0XF6,0X7C,0X00,0X00,0X00, -0X00,0X03,0XFF,0X00,0X1F,0X7C,0X00,0XF8,0X00,0X00,0X09,0XF0,0X3C,0X00,0X00,0X00, -0X00,0X03,0XFE,0X00,0X3F,0X38,0X01,0XFC,0X00,0X00,0X1C,0XF8,0X1C,0X00,0X00,0X00, -0X00,0X03,0XFC,0X00,0XFF,0X90,0X03,0XFE,0X00,0X00,0X3D,0XFF,0X9C,0X00,0X00,0X00, -0X00,0X03,0XF8,0X00,0XFF,0XC0,0X0F,0XFF,0X00,0X00,0X73,0XFF,0XCC,0X00,0X00,0X00, -0X00,0X03,0XF0,0X00,0XFF,0XE0,0X0F,0XFF,0X00,0X00,0X61,0XFF,0XFC,0X60,0X00,0X00, -0X00,0X03,0XF0,0X01,0XFF,0XF0,0X1F,0XFF,0X00,0X00,0XC0,0XFF,0XFF,0XF0,0X00,0X00, -0X00,0X07,0XE0,0X01,0XFF,0XBF,0XFF,0XFF,0X80,0X00,0XE0,0X00,0X7F,0XF0,0X00,0X00, -0X00,0X03,0XC0,0X01,0XFF,0X3F,0XFF,0XFF,0X80,0X00,0XC0,0X00,0X3F,0XF8,0X00,0X00, -0X00,0X01,0X80,0X01,0XFE,0X7F,0XFF,0XFF,0X80,0X00,0X80,0X00,0X1F,0XFC,0X00,0X00, -0X00,0X07,0X00,0X00,0XFE,0X7F,0XFF,0XFF,0X80,0X00,0X80,0X00,0X0C,0XFC,0X00,0X00, -0X00,0X03,0X00,0X00,0XF0,0X7F,0XFF,0XFF,0X00,0X00,0X80,0X00,0X04,0X7C,0X00,0X00, -0X00,0X03,0X00,0X00,0X7E,0X3F,0XFF,0XFC,0X00,0X01,0X80,0X00,0X03,0XFC,0X00,0X00, -0X00,0X03,0X00,0X00,0X7E,0X3F,0XFF,0XFE,0X00,0X01,0X80,0X00,0X01,0XF0,0X00,0X00, -0X00,0X03,0X00,0X00,0X3F,0XDF,0XBF,0XFF,0X80,0X01,0X80,0X00,0X00,0X00,0X00,0X00, -0X00,0X03,0X00,0X00,0X3F,0XCF,0XBF,0XFF,0XC0,0X01,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X03,0X00,0X00,0X7F,0XCF,0XFF,0XFF,0XE0,0X01,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X03,0X00,0X00,0XFF,0XCF,0XCF,0XFF,0XC0,0X01,0X80,0X00,0X00,0X00,0X00,0X00, -0X00,0X03,0X00,0X1E,0XFF,0XEF,0XC7,0XFF,0XC0,0X01,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X03,0X01,0XFC,0XFF,0XE7,0XF0,0X7F,0X80,0X03,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X07,0X07,0XC0,0XFF,0XF3,0XF8,0XFF,0X00,0X0F,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X03,0X0F,0X80,0X7F,0XF3,0XF9,0XFE,0X00,0X0E,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X01,0X1F,0X00,0X3F,0XF3,0XFB,0XFE,0X00,0X0C,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X01,0X38,0X00,0X03,0XF9,0XFB,0XF3,0XE0,0X18,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X01,0XF0,0X00,0X3C,0XF9,0XFB,0XEF,0XF0,0X30,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X01,0XC0,0X00,0X7D,0XF9,0XFB,0XCF,0XF0,0X70,0X00,0X00,0X18,0X00,0X00,0X00, -0X00,0X01,0X80,0X00,0XFF,0XF8,0XFB,0XCF,0XFC,0XC0,0X00,0X03,0XF8,0X00,0X00,0X00, -0X00,0X01,0X80,0X00,0XFF,0XFC,0XFB,0XFF,0XFC,0X00,0X00,0X07,0XF8,0X00,0X00,0X00, -0X00,0X01,0X80,0X00,0XFF,0XDE,0XFB,0XFF,0X7C,0X00,0X00,0X3F,0XFC,0X00,0X00,0X00, -0X00,0X01,0X00,0X00,0XFF,0XDE,0XF3,0XFF,0X3C,0X00,0X00,0X7F,0XFE,0X00,0X00,0X00, -0X00,0X01,0X00,0X00,0XFF,0XC2,0XF3,0XFF,0X1C,0X00,0X00,0XFF,0XFE,0X00,0X00,0X00, -0X00,0X01,0X00,0X00,0XFB,0XE3,0XFF,0XFF,0X3C,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00, -0X00,0X01,0X00,0X00,0XF9,0XEF,0XFF,0XFE,0X3C,0X00,0X00,0XFF,0XFF,0X00,0X00,0X00, -0X00,0X01,0X00,0X00,0XFC,0XFF,0XFF,0XF9,0XFC,0X00,0X00,0XDC,0X7F,0X00,0X00,0X00, -0X00,0X01,0X00,0X01,0XFE,0X7F,0XFF,0XE3,0XFE,0X00,0X00,0XFF,0XBF,0X00,0X00,0X00, -0X00,0X01,0X00,0X01,0XFE,0X3F,0XFF,0XC7,0XFE,0X00,0X00,0XFF,0X9F,0X00,0X00,0X00, -0X00,0X01,0X00,0X03,0XFF,0X3F,0XFF,0XCF,0XFF,0X00,0X00,0XFF,0XBF,0X00,0X00,0X00, -0X00,0X01,0X00,0XFF,0XFF,0XCF,0XFF,0XFF,0XFF,0X80,0X00,0XFF,0XFE,0X00,0X00,0X00, -0X00,0X01,0X0F,0XE0,0X7F,0XFF,0X87,0XFF,0XFF,0X80,0X00,0XFF,0XC0,0X00,0X00,0X00, -0X00,0X01,0X1F,0X80,0X3F,0XFF,0X03,0XFF,0XCE,0X00,0X00,0XFF,0X00,0X00,0X00,0X00, -0X00,0X01,0XF0,0X00,0X0F,0XFE,0X01,0XFC,0X1E,0X00,0X00,0XF0,0X00,0X00,0X00,0X00, -0X00,0X01,0XE0,0X7F,0XC7,0XFC,0X01,0XFC,0X3E,0X00,0X00,0XC1,0XFF,0XE0,0X00,0X00, -0X00,0X01,0XC1,0XFF,0XF7,0XF8,0X01,0XFF,0XFC,0X00,0X01,0X8D,0XFF,0XF0,0X00,0X00, -0X00,0X01,0X87,0XFF,0XFB,0XFC,0X01,0XFF,0XF8,0X00,0X0F,0X1E,0XFF,0XF8,0X00,0X00, -0X00,0X01,0X3F,0X80,0X03,0XFC,0X01,0XFF,0XF0,0X00,0X0E,0X7E,0X7F,0XFE,0X00,0X00, -0X00,0X01,0XF8,0X00,0X07,0XFE,0X01,0XFF,0XE2,0X00,0X1E,0X7F,0X3F,0XFC,0X00,0X00, -0X00,0X01,0XE0,0XFF,0X9F,0XDF,0X03,0XFF,0XC6,0X60,0X1C,0XFF,0X8F,0XFE,0X00,0X00, -0X00,0X01,0X8F,0XC0,0XFF,0X3F,0XC7,0XEF,0XE3,0X78,0X3E,0X1F,0XCF,0XFF,0X00,0X00, -0X00,0X01,0XDF,0X80,0XFE,0X7F,0XEF,0XE7,0XF1,0XBC,0X7F,0X0F,0XCF,0XFF,0XC0,0X00, -0X00,0X01,0XFC,0X00,0XFD,0XFF,0XFF,0XE3,0XF1,0X9E,0X3F,0XC3,0XE7,0XFF,0X00,0X00, -0X00,0X01,0XF8,0X01,0XF1,0XF9,0XFF,0XF1,0XFD,0XCF,0X9F,0XE1,0XFF,0XFF,0X00,0X00, -0X00,0X01,0X80,0X01,0XF3,0XF1,0XFF,0XF9,0XFD,0XC1,0X9F,0XF8,0XFF,0XE0,0X00,0X00, -0X00,0X01,0X00,0X01,0XFF,0XE3,0XFD,0XFE,0XFF,0XC0,0X3F,0XF0,0X00,0X03,0X80,0X00, -0X00,0X01,0X00,0X00,0XFF,0XE3,0XFD,0XFF,0X7F,0XC0,0X7F,0XC0,0X00,0X07,0X80,0X00, -0X00,0X01,0X00,0X00,0XFF,0XE7,0XFC,0XFF,0X07,0X80,0XFF,0XCF,0XFF,0XFF,0X00,0X00, -0X00,0X01,0X00,0X00,0XFF,0XEF,0XCE,0X7F,0X07,0X00,0X7E,0X7F,0XFF,0XFE,0X00,0X00, -0X00,0X01,0X1F,0XFE,0XFF,0XFF,0XCE,0X7F,0X3E,0X00,0X3E,0X7F,0XFF,0XFC,0X00,0X00, -0X00,0X01,0XFF,0XFF,0XFF,0XF1,0XCE,0X3F,0X3E,0X00,0X3F,0XFC,0X07,0XF8,0X00,0X00, -0X00,0X01,0XFF,0XFF,0X3F,0XE1,0X8E,0X3F,0X3E,0X00,0X1F,0XFC,0X07,0XF0,0X00,0X00, -0X00,0X01,0XE0,0X00,0X0E,0X03,0X8E,0X3F,0X3E,0X00,0X0F,0XFF,0XF8,0X00,0X00,0X00, -0X00,0X01,0XFF,0XFF,0X87,0XFF,0X8E,0X3F,0X1E,0X00,0X04,0XFE,0X3E,0X00,0X00,0X00, -0X00,0X01,0XFF,0XFF,0XC7,0XFF,0X8F,0X3F,0XBE,0X00,0X00,0XFE,0X1E,0X00,0X00,0X00, -0X00,0X01,0XFF,0XFF,0XC7,0XFF,0X8F,0X9F,0XFE,0X00,0X00,0XFC,0X3F,0X80,0X00,0X00, -0X00,0X01,0X87,0XFF,0X8F,0XFF,0X8F,0X9F,0XFE,0X00,0X00,0X79,0XFF,0XC0,0X00,0X00, -0X00,0X01,0X00,0X06,0X3F,0XFF,0X8F,0XDF,0XFE,0X00,0X00,0X7F,0XFF,0XC0,0X00,0X00, -0X00,0X01,0X00,0X00,0X7F,0XFF,0X8F,0X8F,0XFC,0X00,0X00,0X1F,0XFF,0XE0,0X00,0X00, -0X00,0X01,0X80,0X00,0XFF,0XFF,0X8F,0X1F,0X00,0X00,0X00,0X0F,0XFF,0XF0,0X00,0X00, -0X00,0X01,0XC0,0X01,0XFF,0XFF,0X8E,0X3F,0X81,0X00,0X00,0X01,0XFF,0XE0,0X00,0X00, -0X00,0X01,0XE0,0X01,0XFF,0XFF,0X8E,0X7F,0XC3,0X80,0X00,0X00,0XFF,0X80,0X00,0X00, -0X00,0X01,0XF8,0X00,0XFF,0XF3,0X8E,0X7F,0XE7,0XC0,0X00,0X00,0X7F,0X00,0X00,0X00, -0X00,0X01,0XFF,0X80,0XFF,0XE7,0X8F,0XFF,0XC4,0XE0,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X01,0X87,0XE1,0XFF,0XDF,0X8F,0XFF,0XCE,0X1C,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X01,0XF1,0XF8,0XFF,0XFF,0X8F,0XFF,0XCF,0XCF,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X01,0XFE,0X1C,0XFF,0XBE,0X43,0XE0,0X1F,0XF3,0X80,0X00,0X00,0X00,0X00,0X00, -0X00,0X01,0XFF,0X06,0X7F,0X3E,0X63,0XC1,0X3F,0XF1,0XE0,0X00,0X00,0X00,0X00,0X00, -0X00,0X01,0XFF,0X83,0X3E,0X3C,0XF3,0X81,0X1F,0XF8,0XF0,0X00,0X00,0X00,0X00,0X00, -0X00,0X01,0XFF,0XE1,0X80,0X39,0XFF,0X00,0X07,0XFE,0X78,0X00,0X00,0X00,0X00,0X00, -0X00,0X01,0XFF,0XFE,0X60,0X1F,0XFE,0X1C,0X03,0XFF,0X1C,0X00,0X00,0X00,0X00,0X00, -0X00,0X01,0X0F,0XFF,0X3C,0X1F,0XFE,0X60,0X01,0XFF,0X8E,0X00,0X00,0X00,0X00,0X00, -0X00,0X01,0X01,0XFF,0X9E,0X0F,0XFF,0XC0,0X00,0X3F,0XC3,0X00,0X00,0X00,0X00,0X00, -0X00,0X01,0X00,0X7F,0XC3,0X8F,0XFD,0X80,0X00,0X3F,0XE3,0X80,0X00,0X00,0X00,0X00, -0X00,0X01,0X00,0X3F,0XE1,0XC7,0XFC,0X00,0X00,0X3F,0XF1,0XC0,0X00,0X00,0X00,0X00, -0X00,0X01,0X00,0X1F,0XF1,0XE3,0XF8,0X00,0X00,0X07,0XF0,0X60,0X00,0X00,0X00,0X00, -0X00,0X01,0X80,0X0F,0XF1,0XE1,0XF0,0X00,0X00,0X03,0XF8,0X30,0X00,0X00,0X00,0X00, -0X00,0X01,0X80,0X01,0XF8,0X30,0X00,0X00,0X00,0X01,0XFC,0X3C,0X00,0X00,0X00,0X00, -0X00,0X01,0X80,0X00,0XF8,0X18,0X00,0X00,0X00,0X00,0XFC,0X0E,0X00,0X00,0X00,0X00, -0X00,0X01,0X80,0X00,0XFC,0X0C,0X00,0X00,0X00,0X00,0XFE,0X0F,0X00,0X00,0X00,0X00, -0X00,0X01,0X80,0X00,0X7C,0X0C,0X00,0X00,0X00,0X00,0X7E,0X07,0X80,0X00,0X00,0X00, -0X00,0X01,0X80,0X00,0X7C,0X06,0X00,0X00,0X00,0X00,0X3F,0X03,0X80,0X00,0X00,0X00, -0X00,0X01,0X80,0X00,0X7E,0X06,0X00,0X00,0X00,0X00,0X1F,0X81,0X80,0X00,0X00,0X00, -0X00,0X01,0X80,0X00,0X1E,0X03,0X00,0X00,0X00,0X00,0X0F,0X80,0XC0,0X00,0X00,0X00, -0X00,0X01,0X80,0X00,0X0E,0X01,0X00,0X00,0X00,0X00,0X07,0X80,0X60,0X00,0X00,0X00, -0X00,0X01,0X80,0X00,0X0F,0X01,0X80,0X00,0X00,0X00,0X03,0XC0,0X30,0X00,0X00,0X00, -0X00,0X01,0X80,0X00,0X07,0X81,0XC0,0X00,0X00,0X00,0X01,0XC0,0X38,0X00,0X00,0X00, -0X00,0X01,0X80,0X00,0X07,0X81,0XC0,0X00,0X00,0X00,0X00,0XC0,0X18,0X00,0X00,0X00, -0X00,0X01,0X80,0X00,0X07,0XC0,0XE0,0X00,0X00,0X00,0X00,0X40,0X08,0X00,0X00,0X00, -0X00,0X01,0X80,0X00,0X03,0XC0,0XF0,0X00,0X00,0X00,0X00,0X00,0X04,0X00,0X00,0X00, -0X00,0X01,0X80,0X00,0X03,0XC0,0X70,0X00,0X00,0X00,0X00,0X00,0X06,0X00,0X00,0X00, -0X00,0X01,0X80,0X00,0X01,0XC0,0X70,0X00,0XF8,0X00,0X00,0X00,0X02,0X00,0X00,0X00, -0X00,0X01,0X80,0X00,0X03,0XC0,0X30,0X00,0XFF,0XF0,0X00,0X00,0X07,0X00,0X00,0X00, -0X00,0X01,0X80,0X00,0X03,0XC0,0X30,0X01,0XFF,0XF8,0X00,0X00,0X03,0X80,0X00,0X00, -0X00,0X01,0X80,0X00,0X01,0XC0,0X30,0X01,0XFF,0XFC,0X00,0X00,0X03,0X80,0X00,0X00, -0X00,0X01,0X80,0X00,0X01,0XC0,0X18,0X01,0XFF,0XFE,0X00,0X00,0X03,0X80,0X00,0X00, -0X00,0X01,0X80,0X00,0X01,0XC0,0X08,0X00,0XFF,0XFF,0X00,0X00,0X01,0XC0,0X00,0X00, -0X00,0X01,0X80,0X00,0X01,0XC0,0X08,0X00,0X67,0XFF,0X00,0X00,0X01,0XC0,0X00,0X00, -0X00,0X01,0X80,0X00,0X01,0XC0,0X08,0X00,0XFF,0XFF,0X00,0X00,0X00,0XC0,0X00,0X00, -0X00,0X01,0X80,0X00,0X01,0X80,0X08,0X03,0XFF,0XBF,0X80,0X00,0X00,0X40,0X00,0X00, -0X00,0X01,0X80,0X00,0X00,0X00,0X08,0X07,0XFF,0X3F,0X80,0X00,0X00,0X40,0X00,0X00, -0X00,0X01,0X80,0X00,0X00,0X00,0X08,0X03,0XFF,0XBF,0XC0,0X00,0X00,0X40,0X00,0X00, -0X00,0X01,0X80,0X00,0X00,0X00,0X08,0X03,0XFF,0X3F,0XC0,0X00,0X00,0X40,0X00,0X00, -0X00,0X01,0X80,0X00,0X00,0X00,0X08,0X03,0XF0,0X1F,0XC0,0X00,0X00,0X40,0X00,0X00, -0X00,0X01,0X80,0X00,0X00,0X00,0X08,0X03,0XFF,0XCF,0XF0,0X00,0X00,0X40,0X00,0X00, -0X00,0X01,0X80,0X00,0X00,0X00,0X08,0X01,0XFF,0XE7,0XFC,0X00,0X00,0XC0,0X00,0X00, -0X00,0X01,0X80,0X00,0X00,0X00,0X08,0X01,0XFF,0XF3,0XFF,0XF0,0X01,0XC0,0X00,0X00, -0X00,0X01,0X80,0X00,0X00,0X00,0X08,0X01,0XFF,0XF8,0XFF,0XF8,0X01,0X80,0X00,0X00, -0X00,0X01,0X80,0X00,0X00,0X00,0X08,0X00,0X7F,0XFC,0X7F,0XFF,0X03,0X80,0X00,0X00, -0X00,0X01,0X80,0X00,0X00,0X00,0X08,0X00,0X1F,0XFF,0X00,0X7F,0X83,0X80,0X00,0X00, -0X00,0X01,0X80,0X00,0X00,0X00,0X08,0X00,0X3F,0XFF,0X80,0X1F,0XC7,0X80,0X00,0X00, -0X00,0X01,0X80,0X00,0X00,0X00,0X08,0X00,0X3F,0XFF,0XFF,0XFF,0XC3,0X00,0X00,0X00, -0X00,0X01,0X80,0X00,0X00,0X00,0X08,0X00,0X3F,0XFF,0XFF,0XFF,0XC4,0X00,0X00,0X00, -0X00,0X01,0X80,0X00,0X00,0X00,0X08,0X00,0X3F,0XFF,0XFF,0XFF,0XC4,0X00,0X00,0X00, -0X00,0X01,0X80,0X00,0X00,0X00,0X18,0X00,0X1F,0XFF,0XFF,0XFF,0XC4,0X00,0X00,0X00, -0X00,0X01,0X80,0X00,0X00,0X00,0X38,0X00,0X0F,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00, -0X00,0X01,0X80,0X00,0X00,0X00,0X78,0X00,0X03,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00, -0X00,0X01,0X80,0X00,0X00,0X00,0XF8,0X00,0X00,0X7F,0XFF,0XFF,0XFC,0X00,0X00,0X00, -0X00,0X01,0X80,0X00,0X00,0X01,0XF8,0X00,0X00,0X3F,0XFF,0XFF,0XFC,0X00,0X00,0X00, -0X00,0X01,0X80,0X00,0X00,0X00,0X38,0X00,0X00,0X3F,0XFF,0XF9,0XFC,0X00,0X00,0X00, -0X00,0X01,0X80,0X00,0X00,0X00,0X18,0X00,0X00,0X3F,0XFF,0XF3,0XFC,0X00,0X00,0X00, -0X00,0X01,0X80,0X00,0X00,0X00,0X08,0X00,0X00,0X3F,0XFF,0XE7,0XFC,0X00,0X00,0X00, -0X00,0X01,0X80,0X00,0X00,0X00,0X08,0X00,0X00,0X3C,0XFC,0X1F,0XF8,0X00,0X00,0X00, -0X00,0X01,0X80,0X00,0X00,0X00,0X8C,0X00,0X00,0X7E,0X00,0X7F,0X98,0X00,0X00,0X00, -0X00,0X01,0X80,0X00,0X00,0X79,0X8C,0X00,0X07,0XFF,0X0F,0XFF,0X9C,0X00,0X00,0X00, -0X00,0X01,0X80,0X00,0X00,0XFC,0XC6,0X00,0X0F,0XFF,0X7F,0XFF,0X78,0X00,0X00,0X00, -0X00,0X01,0X80,0X00,0X01,0XF8,0X46,0X00,0X0F,0XFF,0X7F,0XFE,0X78,0X00,0X00,0X00, -0X00,0X01,0X80,0X00,0X03,0XFC,0X07,0X00,0X0F,0XFF,0X7F,0XFE,0X78,0X00,0X00,0X00, -0X00,0X00,0X80,0X00,0X07,0XFE,0X07,0XC0,0X0F,0XFF,0X7F,0XFE,0X60,0X00,0X00,0X00, -0X00,0X00,0X80,0X00,0X07,0XF9,0XE7,0XE0,0X07,0XFF,0X7F,0XF8,0XC0,0X00,0X00,0X00, -0X00,0X00,0X80,0X00,0X03,0XE3,0XF3,0XF0,0X03,0XFF,0XFF,0XF1,0XC0,0X00,0X00,0X00, -0X00,0X00,0X80,0X00,0X7F,0XC3,0XF3,0X38,0X01,0XFF,0XFF,0XF1,0X80,0X00,0X00,0X00, -0X00,0X00,0X80,0X00,0XFF,0XDF,0XF3,0X1C,0X00,0X7F,0XFF,0XE3,0X80,0X00,0X00,0X00, -0X00,0X00,0X80,0X00,0XFF,0X9F,0XF3,0X8E,0X00,0X3F,0XFF,0XE7,0X80,0X00,0X00,0X00, -0X00,0X00,0X80,0X00,0XFE,0X33,0XFB,0XCF,0X00,0X1F,0XFF,0XCF,0X00,0X00,0X00,0X00, -0X00,0X00,0X80,0X01,0XFE,0X3F,0XF1,0XCF,0X00,0X0F,0XFF,0XCF,0X00,0X00,0X00,0X00, -0X00,0X00,0X80,0X00,0X0C,0X7F,0XCD,0XE3,0X80,0X0F,0XFF,0XDF,0X00,0X00,0X00,0X00, -0X00,0X00,0X80,0X01,0X01,0XFC,0X8E,0X7F,0X80,0X0F,0XFF,0X9F,0X00,0X00,0X00,0X00, -0X00,0X00,0X80,0X0F,0XF9,0XFC,0X1E,0X3F,0X80,0X0F,0XF3,0XBF,0X00,0X00,0X00,0X00, -0X00,0X00,0X80,0X0F,0XFD,0XFC,0X3E,0X3F,0X80,0X0F,0XE1,0XBF,0X00,0X00,0X00,0X00, -0X00,0X00,0X80,0X0F,0XFC,0XFC,0X3F,0X3F,0X80,0X0F,0XC1,0X3F,0X00,0X00,0X00,0X00, -0X00,0X00,0X80,0X1F,0XE5,0XF8,0X3B,0X9F,0X80,0X0F,0XC2,0X3F,0X80,0X00,0X00,0X00, -0X00,0X00,0X80,0X1F,0XCF,0XF0,0X33,0XDF,0XC0,0X03,0X9C,0X0F,0X80,0X00,0X00,0X00, -0X00,0X00,0X80,0X00,0X0E,0X00,0X39,0XD9,0XC0,0X00,0X38,0X63,0XC0,0X00,0X00,0X00, -0X00,0X00,0X80,0X0F,0XFE,0X00,0X0F,0XEE,0XF0,0X00,0XFF,0XF3,0XF0,0X00,0X00,0X00, -0X00,0X00,0X80,0X1F,0XFE,0X00,0X07,0XEE,0X78,0X01,0XFF,0XFF,0XF0,0X00,0X00,0X00, -0X00,0X00,0X00,0X1F,0XFE,0X00,0X07,0XEE,0X3C,0X01,0XFF,0XFF,0XF0,0X00,0X00,0X00, -0X00,0X00,0X00,0X1F,0XFE,0X00,0X07,0XEF,0X3C,0X01,0XFF,0XFF,0XF0,0X00,0X00,0X00, -0X00,0X00,0X00,0X1F,0X7C,0X00,0X00,0XEF,0XFC,0X01,0XFF,0XFF,0XF0,0X00,0X00,0X00, -0X00,0X00,0X00,0X1E,0X1C,0X00,0X00,0X6F,0XFC,0X01,0XFF,0XFF,0XC0,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X33,0XFE,0X00,0XFF,0XFF,0XC0,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X03,0XFE,0X00,0XFF,0XFF,0X80,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFE,0X00,0X3F,0XFF,0X80,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFE,0X00,0X1F,0XFF,0X80,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X03,0XFC,0X00,0X03,0XFF,0X80,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0XFE,0X00,0X03,0XFF,0X80,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X7E,0X00,0X03,0XFF,0X80,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0XFE,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X78,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X30,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, -}; - -const unsigned char gImage_2in13b_b[] = { /* 0X00,0X01,0X68,0X00,0XD4,0X00, */ -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XBF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XCF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0XFF,0XFF, -0XC3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC7,0XFF,0XFF,0XC0,0X3F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0XFF,0XFF,0XE0,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE7,0XFF,0XFF,0XF0,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XE7,0XFF,0XFF,0XF8,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0XFF, -0XFF,0XFC,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0XFF,0XFF,0XFE,0X01, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0XFF,0XFF,0XFF,0X00,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0XFF,0XFF,0XFF,0X80,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XE7,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7, -0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0XFF,0XFF,0XFF, -0XE0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0XFF,0XFF,0XFF,0XE0,0X7F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0XFF,0XFF,0XFF,0XE0,0X7F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XE7,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE7,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0XFF,0XFF, -0XFF,0XF0,0X7F,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0XFF,0XFF,0XFF,0XF0,0X7F, -0XBF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0XFF,0XFF,0XFF,0XF0,0X7E,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE7,0XFF,0XFF,0XFF,0XF0,0X7E,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XE7,0XFF,0XFF,0XFF,0XF0,0X7C,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0XFF, -0XFF,0XFF,0XF0,0X7D,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0XFF,0XFC,0X03,0XE0, -0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0XFF,0XF8,0X00,0XE0,0X79,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0XFF,0XF0,0X00,0X60,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XE7,0XFF,0XE0,0X00,0X30,0XF8,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7, -0XFF,0XC0,0X60,0X11,0X80,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0XFF,0X00,0X30, -0X19,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0XFE,0X40,0X20,0X08,0X00,0X00, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0XC1,0XC0,0X00,0X08,0X00,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XE7,0X80,0XC0,0X20,0X08,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE7,0X00,0X4C,0X20,0X08,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE6,0X10,0X04, -0X20,0X00,0X1D,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE6,0X10,0X04,0X20,0X40,0X7C, -0XFF,0XF9,0XFF,0XFF,0XFF,0XFF,0XFF,0XE4,0X10,0X00,0X00,0X80,0XFC,0XFF,0XE0,0X7F, -0XFF,0XFF,0XFF,0XFF,0XE4,0X0C,0X00,0X03,0X0F,0XFC,0X7F,0XE4,0X3F,0XFF,0XFF,0XFF, -0XFF,0XE4,0X0E,0X00,0XC0,0X1F,0XFC,0X7F,0XC0,0X1F,0XFF,0XFF,0XFF,0XFF,0XE4,0X0B, -0X83,0XE0,0X0F,0XFC,0X7F,0XC2,0X1F,0XFF,0XFF,0XFF,0XFF,0XE6,0X00,0X07,0XF0,0X0F, -0XFE,0X7F,0XC1,0X0F,0XFF,0XFF,0XFF,0XFF,0XE6,0X00,0X07,0XF0,0X07,0XFE,0X7F,0XC0, -0X8F,0XFF,0XFF,0XFF,0XFF,0XE7,0X00,0X07,0XF0,0X03,0XFE,0X7F,0XE0,0X7F,0XFF,0XFF, -0XFF,0XFF,0XE7,0X80,0X03,0XF3,0X01,0XFE,0X7F,0XE0,0X1F,0XFF,0XFF,0XFF,0XFF,0XE7, -0XC0,0X03,0XE3,0X80,0XFE,0X7F,0XF0,0X1F,0XFF,0XFF,0XFF,0XFF,0XE7,0XF8,0X00,0XC0, -0XE0,0XFC,0X7F,0XF0,0X87,0XFF,0XFF,0XFF,0XFF,0XE7,0XF7,0X00,0X00,0X3C,0XFC,0X7F, -0XF0,0X83,0XFF,0XFF,0XFF,0XFF,0XE7,0XF9,0X80,0X00,0X18,0XFC,0XFF,0XF0,0X81,0XFF, -0XFF,0XFF,0XFF,0XE7,0X9D,0X80,0X04,0X00,0XFC,0XFF,0XF1,0XC1,0XFF,0XFF,0XFF,0XFF, -0XE6,0X35,0X01,0X04,0X00,0XFD,0XFF,0XF3,0X71,0XFF,0XFF,0XFF,0XFF,0XE6,0X62,0X02, -0X00,0X00,0XFD,0XFF,0XE2,0X01,0XFF,0XFF,0XFF,0XFF,0XE4,0XC2,0X02,0X00,0X00,0XFB, -0XFF,0XE2,0X01,0XFF,0XFF,0XFF,0XFF,0XE5,0X82,0X02,0X00,0X01,0XF3,0XFF,0XE0,0X01, -0XFF,0XFF,0XFF,0XFF,0XE3,0X01,0X0E,0X00,0X03,0XF3,0XFF,0XE4,0X01,0XFF,0XFF,0XFF, -0XFF,0XE6,0X01,0X83,0X00,0X7F,0XE7,0XFF,0XC0,0X00,0XFF,0XFF,0XFF,0XFF,0XE4,0X01, -0X81,0X00,0XFF,0XCF,0XFF,0XE0,0X00,0X3F,0XFF,0XFF,0XFF,0XE0,0X01,0X80,0X00,0XFF, -0X8F,0XFF,0XE0,0X00,0X1F,0XFF,0XFF,0XFF,0XE0,0X03,0XC0,0X01,0XFF,0X9F,0XFF,0XE0, -0X01,0X1F,0XFF,0XFF,0XFF,0XE0,0X0F,0XF8,0X01,0XFF,0XDF,0XFF,0XFC,0X16,0X1F,0XFF, -0XFF,0XFF,0XE0,0X1F,0XF0,0XC7,0XF8,0X3F,0XFF,0XF6,0X1F,0X1F,0XFF,0XFF,0XFF,0XE0, -0X3F,0XC0,0X6F,0XF0,0X1F,0XFF,0XE2,0X01,0X1F,0XFF,0XFF,0XFF,0XE0,0X7F,0XC0,0X3F, -0XC0,0X0F,0XFF,0XCC,0X00,0X9F,0XFF,0XFF,0XFF,0XE0,0XFF,0XC0,0X1F,0XC0,0X0F,0XFF, -0XDE,0X00,0X19,0XFF,0XFF,0XFF,0XE0,0XFF,0X80,0X0F,0X80,0X0F,0XFF,0X9F,0X00,0X00, -0XFF,0XFF,0XFF,0XE1,0XFF,0X80,0X40,0X00,0X07,0XFF,0X9F,0XFE,0X00,0XFF,0XFF,0XFF, -0XF3,0XFF,0X80,0XC0,0X00,0X07,0XFF,0XBF,0XFF,0X00,0X7F,0XFF,0XFF,0XE7,0XFF,0XC0, -0X80,0X00,0X07,0XFF,0XBF,0XFF,0X90,0X7F,0XFF,0XFF,0XE7,0XFF,0XC7,0X80,0X00,0X0F, -0XFF,0XBF,0XFF,0XD8,0X7F,0XFF,0XFF,0XE7,0XFF,0XE0,0XC0,0X00,0X3F,0XFF,0X3F,0XFF, -0XE0,0X7F,0XFF,0XFF,0XE7,0XFF,0XE0,0XC0,0X00,0X1F,0XFF,0X3F,0XFF,0XF0,0XFF,0XFF, -0XFF,0XE7,0XFF,0XF0,0X20,0X80,0X07,0XFF,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0XFF, -0XE0,0X30,0X00,0X03,0XFF,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0XFF,0XC0,0X30,0X40, -0X03,0XFF,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0XFC,0X40,0X10,0X60,0X03,0XFF,0X7F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0XE0,0XC0,0X18,0X3C,0X07,0XFE,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XE7,0X87,0XC0,0X08,0X18,0X0F,0XFC,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7, -0X0F,0XE0,0X08,0X10,0X1F,0XFC,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF6,0X7F,0XFE,0X0C, -0X10,0X43,0XF9,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0XFF,0XF1,0X04,0X10,0X81,0XF3, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XE1,0X04,0X11,0X81,0XE3,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF3,0XFF,0XC0,0X06,0X11,0X80,0X4F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF3,0XFF,0XC0,0X02,0X10,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XC0, -0X22,0X10,0X08,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XC0,0X3A,0X30,0X0C, -0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XC2,0X18,0X00,0X0C,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XC3,0X10,0X00,0X1C,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF7,0XFF,0XC1,0X80,0X00,0X60,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF, -0X80,0XC0,0X00,0XC0,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0X80,0XC0,0X01, -0X80,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XF0,0X00,0X30,0X00,0X00,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0X03,0XE0,0X00,0XE0,0X00,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF6,0X0F,0XF0,0X01,0XF0,0X02,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0XFF,0XF8,0X03,0XF8,0X3C,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XE0,0X04,0X07, -0XF8,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF3,0X80,0X02,0X07,0XF8,0X00,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF6,0X0F,0XFE,0X07,0XF8,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X7F,0XFC,0X03,0XF8,0X03,0XBF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF1,0XE0,0X10,0X21,0XF0,0X03,0X27,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF3,0X07,0XC0, -0XC0,0X60,0X81,0X91,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X3F,0XC1,0X00,0X00,0XC1, -0XD8,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0X87,0X04,0X00,0X60,0X4C,0X3F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF3,0XFF,0X86,0X0C,0X00,0X20,0X4F,0X3F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF7,0XFF,0X80,0X18,0X08,0X10,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF, -0XC0,0X18,0X08,0X08,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XC0,0X10,0X4C, -0X0F,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0X00,0X40,0X00,0X44,0X0C,0X3F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X0C,0X46,0X0C,0X3F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF0,0X00,0X30,0X1C,0XC6,0X0C,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1, -0XFF,0XF8,0XF8,0XC6,0X0C,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X1C,0X00, -0XC6,0X0C,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X0C,0X00,0XC3,0X00,0X3F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF3,0X80,0X18,0X00,0XC3,0X00,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF7,0XFF,0X70,0X00,0XC1,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF7,0XFF,0XE0,0X00,0XC3,0X80,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF3,0XFF,0XC0, -0X00,0XC7,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0X80,0X00,0XC6,0X07, -0X9F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XC0,0X08,0XC4,0X03,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0XC0,0X18,0XC0,0X03,0X47,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF3,0X83,0X80,0X20,0XC0,0X02,0X39,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0XE0, -0XC0,0X00,0XC0,0X02,0X0C,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X1C,0X40,0X43,0X70, -0XFC,0X03,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0X20,0XC2,0X31,0XEC,0X03,0X8F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X03,0X9F,0XC4,0X03,0XFF,0X00,0XC7,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF0,0X00,0X6F,0XE0,0X07,0X3F,0X80,0X63,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7, -0X00,0X31,0XE0,0X04,0XFF,0XC0,0X31,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XE0,0X18,0XF0, -0X01,0XFF,0XF0,0X1C,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XF8,0X0E,0X30,0X0B,0XFF,0XF0, -0X0C,0X7F,0XFF,0XFF,0XFF,0XFF,0XF7,0XFC,0X07,0X18,0X1F,0XFF,0XFC,0X0F,0X3F,0XFF, -0XFF,0XFF,0XFF,0XF3,0XFE,0X07,0X1C,0X3F,0XFF,0XFE,0X07,0X9F,0XFF,0XFF,0XFF,0XFF, -0XF3,0XFF,0X83,0XCF,0XFF,0XFF,0XFF,0X03,0X8F,0XFF,0XFF,0XFF,0XFF,0XF3,0XFF,0XC3, -0XE7,0XFF,0XFF,0XFF,0X83,0XE7,0XFF,0XFF,0XFF,0XFF,0XF3,0XFF,0XC1,0XF7,0XFF,0XFF, -0XFF,0X81,0XE3,0XFF,0XFF,0XFF,0XFF,0XF3,0XFF,0XE1,0XF3,0XFF,0XFF,0XFF,0XC1,0XF1, -0XFF,0XFF,0XFF,0XFF,0XF3,0XFF,0XE0,0XFB,0XFF,0XFF,0XFF,0XE0,0XF9,0XFF,0XFF,0XFF, -0XFF,0XF3,0XFF,0XF0,0XF9,0XFF,0XFF,0XFF,0XF0,0XFC,0XFF,0XFF,0XFF,0XFF,0XF3,0XFF, -0XF8,0XFD,0XFF,0XFF,0XFF,0XF8,0XFE,0XFF,0XFF,0XFF,0XFF,0XF3,0XFF,0XF8,0X7C,0XFF, -0XFF,0XFF,0XFC,0X7F,0X7F,0XFF,0XFF,0XFF,0XF3,0XFF,0XFC,0X7C,0X7F,0XFF,0XFF,0XFE, -0X7F,0X3F,0XFF,0XFF,0XFF,0XF3,0XFF,0XFC,0X3E,0X7F,0XFF,0XFF,0XFF,0X7F,0XBF,0XFF, -0XFF,0XFF,0XF3,0XFF,0XFE,0X3E,0X3F,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XF3, -0XFF,0XFE,0X3F,0X3F,0XFF,0XFF,0XFF,0XFF,0XCF,0XFF,0XFF,0XFF,0XF3,0XFF,0XFF,0X3F, -0X3F,0XF0,0XFF,0XFF,0XFF,0XEF,0XFF,0XFF,0XFF,0XF3,0XFF,0XFE,0X3F,0XBF,0XF0,0X03, -0XFF,0XFF,0XC7,0XFF,0XFF,0XFF,0XF3,0XFF,0XFE,0X3F,0XBF,0XE0,0X01,0XFF,0XFF,0XE7, -0XFF,0XFF,0XFF,0XF3,0XFF,0XFF,0X3F,0X9F,0XE0,0X00,0XFF,0XFF,0XE7,0XFF,0XFF,0XFF, -0XF3,0XFF,0XFF,0X3F,0XDF,0XF0,0X00,0X7F,0XFF,0XF3,0XFF,0XFF,0XFF,0XF3,0XFF,0XFF, -0X3F,0XDF,0XFB,0X00,0X7F,0XFF,0XF3,0XFF,0XFF,0XFF,0XF3,0XFF,0XFF,0X3F,0XDF,0XF0, -0X00,0X7F,0XFF,0XFB,0XFF,0XFF,0XFF,0XF3,0XFF,0XFF,0X7F,0XDF,0XC0,0X10,0X3F,0XFF, -0XFB,0XFF,0XFF,0XFF,0XF3,0XFF,0XFF,0XFF,0XDF,0XC0,0X10,0X3F,0XFF,0XFB,0XFF,0XFF, -0XFF,0XF3,0XFF,0XFF,0XFF,0XDF,0XC0,0X10,0X1F,0XFF,0XFB,0XFF,0XFF,0XFF,0XF3,0XFF, -0XFF,0XFF,0XDF,0XC1,0XF8,0X1F,0XFF,0XFB,0XFF,0XFF,0XFF,0XF3,0XFF,0XFF,0XFF,0XDF, -0XC0,0X0C,0X0F,0XFF,0XFB,0XFF,0XFF,0XFF,0XF3,0XFF,0XFF,0XFF,0XDF,0XE0,0X06,0X03, -0XFF,0XF3,0XFF,0XFF,0XFF,0XF3,0XFF,0XFF,0XFF,0XDF,0XE0,0X03,0X00,0X1F,0XF3,0XFF, -0XFF,0XFF,0XF3,0XFF,0XFF,0XFF,0XDF,0XF8,0X01,0XC0,0X03,0XE7,0XFF,0XFF,0XFF,0XF3, -0XFF,0XFF,0XFF,0XDF,0XFC,0X00,0X7F,0X01,0XE7,0XFF,0XFF,0XFF,0XF3,0XFF,0XFF,0XFF, -0XDF,0XFC,0X00,0X3F,0XC0,0XC7,0XFF,0XFF,0XFF,0XF3,0XFF,0XFF,0XFF,0XDF,0XFC,0X00, -0X00,0X00,0XEF,0XFF,0XFF,0XFF,0XF3,0XFF,0XFF,0XFF,0XDF,0XFC,0X00,0X00,0X00,0XDF, -0XFF,0XFF,0XFF,0XF3,0XFF,0XFF,0XFF,0XDF,0XFC,0X00,0X00,0X00,0XDF,0XFF,0XFF,0XFF, -0XF3,0XFF,0XFF,0XFF,0X9F,0XFE,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XF3,0XFF,0XFF, -0XFF,0X1F,0XFF,0X80,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XF3,0XFF,0XFF,0XFE,0X1F,0XFF, -0XE0,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XF3,0XFF,0XFF,0XFC,0X1F,0XFF,0XF0,0X00,0X00, -0X1F,0XFF,0XFF,0XFF,0XF3,0XFF,0XFF,0XFF,0X9F,0XFF,0XF0,0X00,0X18,0X1F,0XFF,0XFF, -0XFF,0XF3,0XFF,0XFF,0XFF,0XDF,0XFF,0XF0,0X00,0X30,0X1F,0XFF,0XFF,0XFF,0XF3,0XFF, -0XFF,0XFF,0XDF,0XFF,0XF1,0X83,0XC0,0X3F,0XFF,0XFF,0XFF,0XF3,0XFF,0XFF,0XFE,0XCF, -0XFF,0XE0,0XFF,0X01,0X3F,0XFF,0XFF,0XFF,0XF3,0XFF,0XFF,0X84,0XCF,0XFF,0X00,0X70, -0X01,0X1F,0XFF,0XFF,0XFF,0XF3,0XFF,0XFF,0X06,0X67,0XFE,0X00,0X40,0X02,0X3F,0XFF, -0XFF,0XFF,0XF3,0XFF,0XFE,0X07,0XE7,0XFE,0X00,0X40,0X06,0X3F,0XFF,0XFF,0XFF,0XFB, -0XFF,0XFC,0X03,0XE1,0XFE,0X00,0X40,0X06,0X7F,0XFF,0XFF,0XFF,0XFB,0XFF,0XFC,0X04, -0X60,0XFF,0X00,0X40,0X0C,0XFF,0XFF,0XFF,0XFF,0XFB,0XFF,0XFE,0X18,0X30,0X7F,0X80, -0X00,0X18,0XFF,0XFF,0XFF,0XFF,0XFB,0XFF,0XE0,0X38,0X36,0X3F,0XC0,0X00,0X19,0XFF, -0XFF,0XFF,0XFF,0XFB,0XFF,0XC0,0X20,0X33,0X1F,0XF0,0X00,0X31,0XFF,0XFF,0XFF,0XFF, -0XFB,0XFF,0XC0,0XC8,0X11,0X8F,0XF8,0X00,0X63,0XFF,0XFF,0XFF,0XFF,0XFB,0XFF,0X80, -0XC0,0X39,0X8F,0XFC,0X00,0X63,0XFF,0XFF,0XFF,0XFF,0XFB,0XFF,0XF9,0X80,0X48,0XC7, -0XFC,0X00,0X43,0XFF,0XFF,0XFF,0XFF,0XFB,0XFF,0XBF,0X06,0XC4,0X07,0XFC,0X00,0XC3, -0XFF,0XFF,0XFF,0XFF,0XFB,0XFE,0X03,0X07,0X86,0X07,0XFC,0X0C,0X83,0XFF,0XFF,0XFF, -0XFF,0XFB,0XFE,0X01,0X07,0X86,0X07,0XFC,0X1E,0X83,0XFF,0XFF,0XFF,0XFF,0XFB,0XFC, -0X05,0X07,0X93,0X07,0XFC,0X1D,0X81,0XFF,0XFF,0XFF,0XFF,0XFB,0XFC,0X08,0X0F,0XB1, -0X03,0XFE,0X23,0XE1,0XFF,0XFF,0XFF,0XFF,0XFB,0XFF,0XF8,0XFF,0X99,0X23,0XFF,0XE7, -0X30,0XFF,0XFF,0XFF,0XFF,0XFB,0XFE,0X00,0XFF,0XC0,0X91,0XFF,0X80,0X10,0X7F,0XFF, -0XFF,0XFF,0XFB,0XFC,0X00,0XFF,0XE0,0X98,0XFF,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF, -0XFC,0X00,0XFF,0XE0,0X8C,0X7F,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFC,0X21,0XFF, -0XF8,0X80,0X7F,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFC,0X71,0XFF,0XFC,0X80,0X7F, -0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X40,0X3F,0X80,0X00,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X3F,0X80,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X3F,0XE0,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XC0,0X7F,0XFC,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0, -0X3F,0XFC,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X3F,0XFC,0X01, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X03,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X9F,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 gImage_2in13b_r[] = { /* 0X00,0X01,0X68,0X00,0XD4,0X00, */ -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X7F, -0XFE,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X3F,0XFC,0X3F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X1F,0XF0,0X3F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X0F,0XC0,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X80,0X47,0X80,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80, -0X02,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X83,0X86,0X78,0X3F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X82,0X0C,0XE0,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X0C,0X80,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X80,0X05,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XC6,0X04,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X04,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X04,0X60,0X01,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X06,0X60,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X0E,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XE2,0X20,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00, -0X10,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X80,0X00,0X07,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X80,0X18,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X80,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF0,0XC0,0X80,0X3C,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0, -0XC0,0X7F,0XF0,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X60,0X40,0X00, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X38,0X20,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X1C,0X18,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFC,0X03,0X0C,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X06,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0XC9,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XCF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X47,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XE0,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0, -0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF9,0XCF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XEF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,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,0X3F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFE,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00, -0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X4E,0X07,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X01,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0X01,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE, -0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X03,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1C,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFE,0X68,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0XC4,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0X06,0X00, -0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0X03,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE2,0X01,0X80,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0XC0,0X80,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC0,0X70,0XC0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X38, -0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X0C,0X01,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X1F,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X70,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X81,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC1, -0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X0F,0XC0,0X7F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X0F,0XC0,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFA,0X07,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFE,0X07,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X08,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X03,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF8,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC, -0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF, -}; - - -const unsigned char gImage_2in13c_b[] = { /* 0X00,0X01,0X68,0X00,0XD4,0X00, */ -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFC,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X00,0XE7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00, -0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X3C,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X00,0X00,0XFF,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X03, -0XFF,0XE0,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X03,0XFF,0XF8,0X00, -0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X03,0XFF,0XFC,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFC,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X00,0X00,0X3F,0XF8,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00, -0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X03,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X1F,0XFF,0XF3,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X07,0X8F,0XF3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X00,0X00,0X03,0X8F,0XF3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00, -0X03,0X88,0XF3,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X03,0XFF,0XF0,0X00,0X03,0X88,0XF3, -0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X03,0XFF,0XDE,0X00,0X03,0X88,0XF3,0XFF,0XFF,0XFF, -0XFF,0XFC,0X00,0X01,0XFF,0XC7,0X80,0X03,0X88,0XF3,0XFF,0XFF,0XFF,0XFF,0XFE,0X00, -0X00,0X7F,0X00,0XF0,0X03,0X88,0XF3,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X1F,0X80, -0X1C,0X03,0X88,0XF3,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X60,0X07,0X83,0X88, -0XF3,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X1C,0X01,0XFF,0X88,0XF3,0XFF,0XFF, -0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X07,0X01,0XFF,0X88,0XF3,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X00,0X00,0X01,0XC7,0XFF,0X80,0XF3,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00, -0X00,0X7F,0XFF,0X80,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X00,0X1F,0XFF, -0X80,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X30,0X00,0X00,0X0F,0XFF,0X80,0X03,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X7C,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE0,0X00,0X00,0X1F,0XC0,0X7B,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00, -0X07,0XC0,0X7B,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X03,0XC0,0X33, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X03,0X8E,0X23,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X03,0X8E,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFC,0X00,0X00,0X03,0X8E,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00, -0X00,0X07,0X8E,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X07,0X8E, -0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X3F,0X8E,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X01,0XFF,0X8E,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X00,0X00,0X07,0XFF,0X8E,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00, -0X00,0X3F,0XFF,0X8E,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X01,0XFF,0XFF, -0X8E,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X01,0XFF,0XFF,0X80,0X03,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X01,0XFF,0XFF,0X80,0X03,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF0,0X00,0X00,0X3F,0XFF,0X80,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X01, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X3F,0XE0,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X07,0XC0,0X03,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X03,0XC0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X00,0X00,0X03,0XC7,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00, -0X00,0X03,0X8F,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X03,0X8F, -0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X03,0X8F,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X03,0X8F,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X00,0X00,0X00,0X07,0X8F,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00, -0X00,0X00,0X3F,0X8F,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X00,0XFF, -0X8F,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X07,0XFF,0X87,0X3F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X3F,0XFF,0XC0,0X03,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0XC0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X00,0X0F,0XFF,0XFF,0XE0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X1F,0XFF,0XFF,0XFF,0X80,0X03,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0XFF,0XFF,0XFF,0XFF,0X80,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF8,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF8,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF8,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X80,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X8C,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X88,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X88, -0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X88,0XE3,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X88,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X88,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X88,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X88,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X88,0XE3,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X88,0XE3,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X88,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC0,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC0,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XE3, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XF3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X8F,0XF3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X88, -0XF3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X88,0XF3,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X88,0XF3,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X88,0XF3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X88,0XF3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X88,0XF3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X88,0XF3,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X88,0XF3,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X88,0XF3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0XF3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X80,0XF3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X03,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X9F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFC,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X83,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X3F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X83,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X9F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XC0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XC0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC7,0X3F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0X3F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X8F,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X8F,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0X3F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X87,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XC0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X03,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X80,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X80,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X03,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE3, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X80,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80, -0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X80,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X0F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,}; - - -const unsigned char gImage_2in13c_y[] = { /* 0X00,0X01,0X68,0X00,0XD4,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,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00, -0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00, -0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00, -0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00, -0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X1F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE, -0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00, -0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X1F,0XFE,0X00,0X00,0X00,0X00,0X00,0X00, -0X1F,0XFF,0X00,0X00,0X00,0X1F,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00, -0X00,0X00,0X1F,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X1F, -0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X1F,0XFE,0X00,0X00, -0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X0F,0XFE,0X00,0X00,0X00,0X00,0X00, -0X00,0X1F,0XFC,0X00,0XFC,0X00,0X07,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XF0, -0X03,0XFF,0X00,0X03,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XC0,0X07,0XFF,0XC0, -0X01,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0X00,0X1F,0XFF,0XF0,0X00,0XFE,0X00, -0X00,0X00,0X00,0X00,0X00,0X18,0X00,0XFF,0XFF,0XFC,0X00,0X7E,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0X18,0X3E,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X0F,0XFF,0XFF,0XFF,0XFC,0X1E,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF, -0XFF,0XFE,0X0E,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0X06, -0X00,0X00,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0X02,0X00,0X00,0X00, -0X00,0X00,0X00,0X07,0XFF,0XFF,0XC3,0XFF,0XFF,0X80,0X00,0X00,0X00,0X00,0X00,0X00, -0X0F,0XFF,0XFF,0X00,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFC, -0X00,0X1F,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFC,0X00,0X07,0XFF, -0XF0,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFC,0X00,0X03,0XFF,0XF8,0X00,0X00, -0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0X00,0X03,0XFF,0XFC,0X00,0X00,0X00,0X00,0X00, -0X00,0X0F,0XFF,0XFF,0XC0,0X07,0XFF,0XFC,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0XFF, -0XFF,0XF0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFC,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XE0,0X00,0X0C,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X07,0XFF,0XFF,0XF8,0X70,0X0C,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0XFF,0XFF,0XFC,0X70,0X0C,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3F,0XFF, -0XFC,0X77,0X0C,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFC,0X00,0X0F,0XFF,0XFC,0X77,0X0C, -0X00,0X00,0X00,0X00,0X07,0XFF,0XFC,0X00,0X21,0XFF,0XFC,0X77,0X0C,0X00,0X00,0X00, -0X00,0X03,0XFF,0XFE,0X00,0X38,0X7F,0XFC,0X77,0X0C,0X00,0X00,0X00,0X00,0X01,0XFF, -0XFF,0X80,0XFF,0X0F,0XFC,0X77,0X0C,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XE0,0X7F, -0XE3,0XFC,0X77,0X0C,0X00,0X00,0X00,0X00,0X00,0X7F,0XFF,0XFF,0X9F,0XF8,0X7C,0X77, -0X0C,0X00,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XE3,0XFE,0X00,0X77,0X0C,0X00,0X00, -0X00,0X00,0X00,0X1F,0XFF,0XFF,0XF8,0XFE,0X00,0X77,0X0C,0X00,0X00,0X00,0X00,0X00, -0X0F,0XFF,0XFF,0XFE,0X38,0X00,0X7F,0X0C,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF, -0XFF,0X80,0X00,0X7F,0XFC,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XE0,0X00, -0X7F,0XFC,0X00,0X00,0X00,0X00,0X00,0X01,0XCF,0XFF,0XFF,0XF0,0X00,0X7F,0XFC,0X00, -0X00,0X00,0X00,0X00,0X00,0X83,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X1F,0XFF,0XFF,0XE0,0X3F,0X84,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF, -0XF8,0X3F,0X84,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFC,0X3F,0XCC, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFC,0X71,0XDC,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFC,0X71,0XFC,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X03,0XFF,0XFF,0XFC,0X71,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF, -0XFF,0XF8,0X71,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XF8,0X71, -0XF0,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XC0,0X71,0XE0,0X00,0X00, -0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFE,0X00,0X71,0XE0,0X00,0X00,0X00,0X00,0X00, -0X00,0X0F,0XFF,0XFF,0XF8,0X00,0X71,0XE0,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0XFF, -0XFF,0XC0,0X00,0X71,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFE,0X00,0X00, -0X71,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFE,0X00,0X00,0X7F,0XFC,0X00, -0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFE,0X00,0X00,0X7F,0XFC,0X00,0X00,0X00,0X00, -0X00,0X00,0X0F,0XFF,0XFF,0XC0,0X00,0X7F,0XFC,0X00,0X00,0X00,0X00,0X00,0X00,0X0F, -0XFF,0XFF,0XF0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFE, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XC0,0X1F,0XFC, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XF8,0X3F,0XFC,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFC,0X3F,0XFC,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0XFF,0XFF,0XFC,0X38,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X03,0XFF, -0XFF,0XFC,0X70,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFC,0X70, -0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFC,0X70,0XC0,0X00,0X00, -0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFC,0X70,0XC0,0X00,0X00,0X00,0X00,0X00, -0X00,0X0F,0XFF,0XFF,0XFF,0XF8,0X70,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0XFF, -0XFF,0XFF,0XC0,0X70,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0X00, -0X70,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XF8,0X00,0X78,0XC0,0X00, -0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XC0,0X00,0X3F,0XFC,0X00,0X00,0X00,0X00, -0X00,0X00,0X0F,0XFF,0XFF,0X00,0X00,0X3F,0XFC,0X00,0X00,0X00,0X00,0X00,0X00,0X0F, -0XFF,0XF0,0X00,0X00,0X1F,0XFC,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0XFC,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0XE0,0X00,0X00,0X00,0X7F,0XFC,0X00,0X00,0X00, -0X00,0X00,0X00,0X0F,0X00,0X00,0X00,0X00,0X7F,0XFC,0X00,0X00,0X00,0X00,0X00,0X00, -0X08,0X00,0X00,0X00,0X00,0X7F,0XFC,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X07,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0X00,0X00,0X00,0X07, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0X00,0X00,0X00,0X07,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0XFF,0X00,0X00,0X00,0X07,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X0F,0XFF,0X00,0X00,0X00,0X07,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF, -0X00,0X00,0X00,0X07,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00, -0X07,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X07,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X07,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X07,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F, -0XFF,0X00,0X00,0X00,0X7F,0XFC,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00, -0X00,0X7F,0XFC,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X7F,0XFC, -0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X01,0XF8,0X00,0X00,0X00,0X00,0X00,0X00, -0X1F,0XFF,0X00,0X00,0X00,0X73,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00, -0X00,0X00,0X77,0XFC,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X77, -0X1C,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X77,0X1C,0X00,0X00, -0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X77,0X1C,0X00,0X00,0X00,0X00,0X00, -0X00,0X1F,0XFF,0X00,0X00,0X00,0X77,0X1C,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF, -0X00,0X00,0X00,0X77,0X1C,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00, -0X77,0X1C,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X77,0X1C,0X00, -0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X77,0X1C,0X00,0X00,0X00,0X00, -0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X77,0X1C,0X00,0X00,0X00,0X00,0X00,0X00,0X1F, -0XFF,0X00,0X00,0X00,0X3F,0X1C,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00, -0X00,0X3F,0X1C,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X3F,0X1C, -0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X1F,0XFF,0X00,0X00,0X00,0X70,0X0C,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00, -0X00,0X00,0X70,0X0C,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X77, -0X0C,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X77,0X0C,0X00,0X00, -0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X77,0X0C,0X00,0X00,0X00,0X00,0X00, -0X00,0X1F,0XFF,0X00,0X00,0X00,0X77,0X0C,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF, -0X00,0X00,0X00,0X77,0X0C,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00, -0X77,0X0C,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X77,0X0C,0X00, -0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X77,0X0C,0X00,0X00,0X00,0X00, -0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X77,0X0C,0X00,0X00,0X00,0X00,0X00,0X00,0X1F, -0XFF,0X00,0X00,0X00,0X7F,0X0C,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00, -0X00,0X7F,0X0C,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X7F,0XFC, -0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X7F,0XFC,0X00,0X00,0X00, -0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X7F,0XFC,0X00,0X00,0X00,0X00,0X00,0X00, -0X1F,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00, -0X00,0X00,0X60,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X70, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X3C,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X3E,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X1F,0XFF,0X00,0X00,0X00,0X0F,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF, -0X00,0X00,0X00,0X07,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00, -0X03,0XE0,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X00,0XF8,0X00, -0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X00,0X7C,0X00,0X00,0X00,0X00, -0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X00,0X3C,0X00,0X00,0X00,0X00,0X00,0X00,0X1F, -0XFF,0X00,0X00,0X00,0X00,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00, -0X00,0X01,0XF0,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X07,0XC0, -0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X0F,0X80,0X00,0X00,0X00, -0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X3F,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X1F,0XFF,0X00,0X00,0X00,0X7C,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00, -0X00,0X00,0X70,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X60, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X1F,0XFF,0X00,0X00,0X00,0X1F,0XFC,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF, -0X00,0X00,0X00,0X3F,0XFC,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00, -0X3F,0XFC,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X38,0XC0,0X00, -0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X70,0XC0,0X00,0X00,0X00,0X00, -0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X70,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X1F, -0XFF,0X00,0X00,0X00,0X70,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00, -0X00,0X70,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X70,0XC0, -0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X70,0XC0,0X00,0X00,0X00, -0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X70,0XC0,0X00,0X00,0X00,0X00,0X00,0X00, -0X1F,0XFF,0X00,0X00,0X00,0X78,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00, -0X00,0X00,0X3F,0XFC,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X3F, -0XFC,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X1F,0XFC,0X00,0X00, -0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X1F,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF, -0X00,0X00,0X00,0X7F,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00, -0X7F,0XFC,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X7F,0XFC,0X00, -0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X00,0X3C,0X00,0X00,0X00,0X00, -0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X00,0X1C,0X00,0X00,0X00,0X00,0X00,0X00,0X1F, -0XFF,0X00,0X00,0X00,0X00,0X1C,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00, -0X00,0X00,0X1C,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X00,0X1C, -0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X00,0X1C,0X00,0X00,0X00, -0X00,0X00,0X00,0X1F,0XFF,0X00,0X00,0X00,0X00,0X1C,0X00,0X00,0X00,0X00,0X00,0X00, -0X1F,0XFF,0X00,0X00,0X00,0X7F,0XFC,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0X00, -0X00,0X00,0X7F,0XFC,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XF8,0X7F, -0XFC,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XF8,0X00,0X1C,0X00,0X00, -0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XF8,0X00,0X1C,0X00,0X00,0X00,0X00,0X00, -0X00,0X1F,0XFF,0XFF,0XFF,0XF8,0X00,0X1C,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF, -0XFF,0XFF,0XF8,0X00,0X1C,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XF8, -0X00,0X1C,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XF8,0X00,0X1C,0X00, -0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XF8,0X00,0X1C,0X00,0X00,0X00,0X00, -0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XF8,0X00,0X3C,0X00,0X00,0X00,0X00,0X00,0X00,0X1F, -0XFF,0XFF,0XFF,0XF8,0X7F,0XFC,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF, -0XF8,0X7F,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XF8,0X7F,0XF0, -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,0X00,0X00,0X00,}; - -const unsigned char gImage_2in13d[2756] = { /* 0X00,0X01,0X68,0X00,0XD4,0X00, */ -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC, -0X03,0XF3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0XE3,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X63,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0XF8,0X23,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XC7,0XF8,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X8B,0XF9,0X83,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X99,0XF9,0X83, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X99,0XFD,0X83,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X1B,0XFF,0XC3,0XFF,0XFF,0XFE,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XC3,0XFF,0XF1,0XFE,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF, -0X80,0X3F,0XFF,0XC3,0XFF,0XF1,0XFE,0X7F,0XFF,0XFF,0XFF,0XFF,0XE0,0X3F,0XFF,0XFF, -0X83,0XFF,0XF1,0X1E,0X7F,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0X83,0XFF,0XF1, -0X1E,0X7F,0XFF,0XFF,0XFF,0XFF,0XC3,0XFF,0XFF,0XFF,0X03,0XFF,0XF1,0X1E,0X7F,0XFF, -0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0X03,0XFF,0XF1,0X1E,0X7F,0XFF,0XFB,0XFF,0XFF, -0X3F,0XFF,0XFF,0XFF,0X03,0XFF,0XF1,0X1E,0X7F,0XFF,0XFB,0XFF,0XFE,0X3F,0XFF,0XFF, -0XFE,0X03,0XFF,0XF1,0X1E,0X7F,0XFF,0XF3,0XFF,0XF8,0X7F,0XFF,0XFF,0XFE,0X03,0XFF, -0XF1,0X1E,0X7F,0XFF,0XE1,0XFF,0XF0,0XFF,0XFF,0XFF,0XFC,0X23,0XFF,0XF1,0X1E,0X7F, -0XFF,0XE1,0XFF,0XC3,0XFF,0XFF,0XFF,0XC0,0XE3,0XFF,0XF1,0X1E,0X7F,0XFF,0XC4,0XFF, -0X87,0XFF,0XFF,0XFF,0X01,0XE3,0XFF,0XF0,0X1E,0X7F,0XFF,0XC4,0XFF,0X8F,0XFF,0XFF, -0XFE,0X01,0XE1,0XFF,0XF0,0X00,0X7F,0XFF,0XCC,0XFF,0X8F,0XFF,0XFF,0XF8,0X07,0XE1, -0XFF,0XF0,0X00,0X7F,0XFF,0XCC,0XFF,0X83,0XFF,0XFF,0XF8,0X3F,0XF1,0XFF,0XF0,0X00, -0X7F,0XFF,0X8C,0XFF,0XC0,0X00,0X3F,0XF8,0X00,0X31,0XFF,0XFF,0XFF,0XFF,0XFF,0X9C, -0XFF,0XE0,0X00,0X3F,0XFE,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0X9C,0XFF,0XE0,0X00, -0X3F,0XFF,0X00,0X00,0XFF,0XF8,0X0F,0X7F,0XFF,0X9C,0XFF,0X00,0X7F,0XFF,0XFF,0XFF, -0X08,0X7F,0XF8,0X0F,0X7F,0XFF,0X9C,0XFF,0X01,0XFF,0XFF,0XFF,0XFF,0X80,0X7F,0XF8, -0X06,0X7F,0XFF,0X9C,0XFE,0X07,0XFF,0XFF,0XFF,0XFF,0XC0,0X7F,0XF1,0XC4,0X7F,0XFF, -0X9C,0XFC,0X1F,0XFF,0XFF,0XFF,0XFF,0XC0,0X7F,0XF1,0XC0,0X7F,0XFF,0X9C,0XF8,0X7F, -0XFF,0XFF,0XFF,0XFF,0XE0,0X7F,0XF1,0XC0,0XFF,0XFF,0X9C,0XF0,0XFF,0XFF,0XFF,0XFF, -0XFF,0XE0,0X7F,0XF1,0XC0,0XFF,0XFF,0X9C,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F, -0XF1,0XC1,0XFF,0XFF,0X9C,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XF1,0XC3,0XFF, -0XFF,0X98,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XF1,0XC3,0XFF,0XFF,0X98,0X0F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XF1,0XC3,0XFF,0XFF,0X98,0X1F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF0,0X7F,0XF1,0XC7,0XFF,0XFF,0X80,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0, -0X7F,0XF1,0XC7,0XFF,0XFF,0X80,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0XFF,0XF1,0X87, -0XFF,0XFF,0X80,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0XFF,0XF0,0X00,0X7F,0XFF,0X80, -0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X07,0XFF,0XF0,0X00,0X7F,0XFF,0XC0,0XFF,0XFF,0XFF, -0XFF,0XC0,0XFE,0X0F,0XFF,0XF0,0X00,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0X07,0XFE, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC1,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0X87,0XFF,0XF8,0X00,0X7F,0XFF, -0XE1,0XFF,0XFF,0XFF,0XE0,0XFF,0XFF,0XC3,0XFF,0XF8,0X00,0X7F,0XFF,0XE1,0XFF,0XFF, -0XFF,0XE1,0XFF,0XFF,0XE1,0XFF,0XF8,0X00,0X7F,0XFF,0XF1,0XFF,0XFF,0XFF,0XE7,0XFF, -0XFF,0XF8,0XFF,0XF0,0XE7,0XFF,0XFF,0XF9,0XFF,0XFF,0XFF,0XE7,0XFF,0XFF,0XF8,0X7F, -0XF1,0XE7,0XFF,0XFF,0XF8,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XF8,0X7F,0XF1,0XE7,0XFF, -0XFF,0XF8,0XFF,0XFF,0XFE,0X1F,0XFF,0XFF,0XFC,0X7F,0XF1,0XE7,0XFF,0XFF,0XF8,0XFF, -0XFF,0XF0,0X1F,0XFF,0XFF,0XFC,0X7F,0XF1,0XE7,0XFF,0XFF,0XFC,0X7F,0XFF,0XC0,0X0F, -0XFF,0XFF,0XFC,0X7F,0XF1,0XE7,0XFF,0XFF,0XFC,0X7F,0XFF,0XFF,0XC0,0XFF,0XFF,0XFC, -0X7F,0XF1,0XE7,0XFF,0XFF,0XFC,0X3F,0XFF,0XFF,0XC0,0XFF,0XFF,0XFC,0X7F,0XF1,0XE7, -0XFF,0XFF,0XFC,0X3F,0XFF,0XFF,0XC1,0XFF,0XFF,0XF8,0X7F,0XF0,0XE7,0XFF,0XFF,0XFE, -0X1F,0XFF,0XFF,0XC3,0XFB,0XFF,0XF8,0X7F,0XF8,0X00,0X7F,0XFF,0XFE,0X1F,0XFF,0XFF, -0XC3,0XFB,0XFF,0XF8,0X7F,0XF8,0X00,0X7F,0XFF,0XFF,0X0F,0XFF,0XFF,0XE3,0XE3,0X9F, -0XF8,0X7F,0XFC,0X00,0X7F,0XFF,0XFF,0X0F,0XFF,0XFF,0XE1,0XC0,0X0F,0XF8,0X7F,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0X07,0XFF,0XE0,0X80,0X0F,0XF8,0X7F,0XFF,0XFF,0XFF,0XFF, -0XFF,0X80,0X00,0X7F,0XE0,0X00,0X0F,0XF8,0X7F,0XF0,0X00,0X7F,0XFF,0XFF,0XC0,0X00, -0X3F,0XF0,0X00,0X1F,0XF8,0X7F,0XF0,0X00,0X7F,0XFF,0XFF,0XF0,0X00,0X0F,0XFF,0X83, -0X3F,0XF8,0X7F,0XF0,0X00,0X7F,0XFF,0XFF,0XFC,0X00,0X07,0XFF,0XE7,0X1F,0XF8,0X7F, -0XFF,0X1F,0XFF,0XFF,0XFF,0XFE,0X00,0X01,0XFF,0XFF,0X0F,0XF8,0X7F,0XFF,0X1F,0XFF, -0XFF,0XFF,0XFF,0X00,0X00,0XFF,0XFF,0X0F,0XF0,0XFF,0XFF,0X1F,0XFF,0XFF,0XFF,0XFF, -0X00,0X00,0X7F,0XFF,0X0F,0XF1,0XFF,0XFF,0X1F,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X1F, -0XFF,0X0F,0XF1,0XFF,0XFF,0X1F,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X1F,0XFF,0X0F,0XF1, -0XFF,0XFF,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X1F,0XFF,0X0F,0XF1,0XFF,0XFF,0X1F, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X0F,0XFF,0X0F,0XF9,0XFF,0XFF,0X1F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF8,0X0F,0XFF,0X0F,0XF8,0XFF,0XFF,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE, -0X0F,0XFF,0X0F,0XF8,0X7F,0XFF,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X67,0XFF,0X0F, -0XF8,0X7F,0XF0,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0XFE,0X0F,0XF8,0X7F,0XF0, -0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFE,0X0F,0XF8,0XFF,0XF0,0X00,0X7F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X7E,0X0F,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X7E,0X0F,0XF1,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X7E, -0X0F,0XF1,0XFF,0XF3,0X80,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X3E,0X0F,0XF1,0XFF, -0XF1,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0X1F,0XF0,0XFF,0XF1,0X1C,0X7F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0XF8,0XFF,0XF1,0X1C,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X1F,0XFF,0XF8,0X7F,0XF1,0X1C,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X9F,0XFF,0XF8,0X7F,0XF1,0X1C,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X9F,0XFF,0XF8, -0X7F,0XF1,0X1C,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X9F,0XFF,0XF8,0X7F,0XF1,0X1C, -0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XF0,0XFF,0XF1,0X1C,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X0F,0XFF,0XF1,0XFF,0XF1,0X1C,0X7F,0XFF,0XFF,0XFF,0XFF,0XFE, -0X00,0X00,0X3F,0XF1,0XFF,0XF1,0X1C,0X7F,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X07, -0XF1,0XFF,0XF0,0X1C,0X7F,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X03,0XF0,0XFF,0XF8, -0X1C,0X7F,0XFF,0XFF,0XFF,0XF0,0X03,0XFF,0XFC,0X00,0X00,0XFF,0XF8,0X1C,0X7F,0XFF, -0XFF,0XFF,0XC0,0X1F,0X80,0X03,0X80,0X00,0X7F,0XF8,0X3C,0X7F,0XFF,0XFF,0XFF,0X00, -0X30,0X00,0X00,0X18,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X07,0XC0,0X00,0X00, -0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0X00,0X00,0X00,0X01,0X00,0X7F, -0XF1,0XFE,0X7F,0XFF,0XFF,0XF0,0X7E,0X00,0X00,0X00,0X01,0X80,0XFF,0XF1,0XFE,0X7F, -0XFF,0XFF,0XE0,0XFF,0X00,0X00,0X00,0X01,0XC1,0XFF,0XF1,0X1E,0X7F,0XFF,0XFF,0X81, -0XFF,0X00,0X00,0X00,0X00,0X41,0XFF,0XF1,0X1E,0X7F,0XFF,0XFF,0X03,0XFE,0X00,0X80, -0X00,0X00,0X38,0X7F,0XF1,0X1E,0X7F,0XFF,0XFE,0X07,0XFF,0X01,0XC0,0X00,0X00,0X3C, -0X7F,0XF1,0X1E,0X7F,0XFF,0XFC,0X0F,0XFF,0X80,0X00,0X00,0X00,0X1C,0X7F,0XF1,0X1E, -0X7F,0XFF,0XFC,0X1F,0XFF,0X00,0X00,0X00,0X00,0X0E,0X7F,0XF1,0X1E,0X7F,0XFF,0XFC, -0X3F,0XFE,0X00,0X00,0X00,0X00,0X0E,0X3F,0XF1,0X1E,0X7F,0XFF,0XFC,0X7F,0XFC,0X00, -0X00,0X00,0X00,0X07,0X1F,0XF1,0X1E,0X7F,0XFF,0XF8,0XFF,0XFE,0X00,0X00,0X00,0X00, -0X03,0X1F,0XF1,0X1E,0X7F,0XFF,0XF1,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X01,0X8F,0XF0, -0X1E,0X7F,0XFF,0XE3,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X01,0X8F,0XF0,0X1E,0X7F,0XFF, -0XE3,0XFF,0XFF,0XFC,0X00,0X00,0X00,0X00,0X0F,0XF0,0X00,0X7F,0XFF,0XC3,0XFF,0XFF, -0XDF,0X80,0X00,0X00,0X00,0X0F,0XF0,0X00,0X7F,0XFF,0XC3,0XFF,0XFF,0XCF,0XE0,0X00, -0X00,0X00,0X0F,0XF0,0X00,0X7F,0XFF,0XC3,0XFF,0XFF,0XC7,0XF0,0X00,0X00,0X00,0X0F, -0XFF,0XFF,0XFF,0XFF,0XC7,0XFF,0XFF,0XE1,0XFC,0X00,0X00,0X00,0X0F,0XF3,0XFF,0XFF, -0XFF,0X87,0XFF,0XFF,0XF0,0X1F,0X80,0X00,0X01,0X0F,0XF1,0XFF,0XFF,0XFF,0X8F,0XFF, -0XFF,0XFE,0X03,0XFF,0XF0,0X06,0X7F,0XF8,0X7F,0XFF,0XFF,0X0F,0XFF,0XFF,0XFF,0X80, -0X3F,0XFE,0X18,0X7F,0XF8,0X3F,0XFF,0XFF,0X1F,0XFF,0XFF,0XFF,0XF0,0X00,0X01,0XC0, -0XFF,0XFE,0X1F,0XFF,0XFF,0X1F,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X01,0XFF,0XFF,0X07, -0XFF,0XFF,0X1F,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X01,0XFF,0XFF,0X83,0XFF,0XFF,0X0F, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X03,0XFF,0XFF,0XE0,0XFF,0XFF,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XE3,0XFF,0XFF,0XF0,0X7F,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE3,0XFF,0XFF,0XF8,0X7F,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0XFF,0XFF, -0XE0,0XFF,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0XFF,0XFF,0XC1,0XFF,0XFF, -0X87,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0XFF,0XFF,0X07,0XFF,0XFF,0X87,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE3,0XFF,0XFE,0X0F,0XFF,0XFF,0X83,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XE3,0XFF,0XF8,0X1F,0XFF,0XFF,0XC3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0XFF, -0XF0,0X7F,0XFF,0XFF,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF3,0XFF,0XF1,0XFF,0XFF, -0XFF,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF3,0XFF,0XF3,0XFF,0XFF,0XFF,0XF1,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF3,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF3, -0XFF,0XFC,0X00,0XFF,0XFF,0XFC,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF3,0XFF,0XF8,0X00, -0X7F,0XFF,0XFC,0X3F,0XFF,0XF8,0XFF,0XFF,0XFF,0XF3,0XFF,0XF8,0X00,0X7F,0XFF,0XFE, -0X0F,0XFF,0XF0,0XFF,0XFF,0XFF,0XF3,0XFF,0XF8,0XC4,0XFF,0XFF,0XFF,0X87,0XFF,0XC0, -0XFF,0XFF,0XFF,0XF1,0XFF,0XF1,0XE7,0XFF,0XFF,0XFF,0XC3,0XFF,0XC1,0XFF,0XFF,0XFF, -0XF1,0XFF,0XF1,0XE7,0XFF,0XFF,0XFF,0XF0,0XFF,0X83,0XFF,0XFF,0XFF,0XF1,0XFF,0XF1, -0XE7,0XFF,0XFF,0XFF,0XF8,0XFF,0X07,0XFF,0XFF,0XFF,0XF1,0XFF,0XF1,0XE7,0XFF,0XFF, -0XFF,0XF8,0XFE,0X0F,0XFF,0XFF,0XFF,0XF1,0XFF,0XF1,0XE7,0XFF,0XFF,0XFF,0XFC,0XFE, -0X3F,0XFF,0XFF,0XFF,0XF1,0XFF,0XF1,0XE7,0XFF,0XFF,0XFF,0XFE,0X7F,0XFF,0XFF,0XFF, -0XFF,0XF1,0XFF,0XF1,0XE7,0XFF,0XFF,0XFF,0XFF,0X7F,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF, -0XF1,0XE7,0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XF0,0XE7,0XFF, -0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XF8,0X00,0X7F,0XFF,0XFF,0XFF, -0X3F,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XF8,0X00,0X7F,0XFF,0XFF,0XFF,0X1F,0XFF,0XFF, -0XFF,0XFF,0XF1,0XFF,0XFC,0X00,0X7F,0XFF,0XFF,0XFF,0X1F,0XFF,0XFF,0XFF,0XFF,0XF1, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X1F,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X1F,0XFF,0XFF,0XFF,0XFF,0XF0,0XFF,0XF0,0X00,0XFF,0XFF,0XFF, -0XFF,0X1F,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XF0,0X00,0X7F,0XFF,0XFF,0XFF,0X0F,0XFF, -0XFF,0XFF,0XFF,0XF0,0X7F,0XF0,0X00,0X7F,0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF, -0XF0,0X7F,0XFF,0XF8,0X7F,0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF, -0XFC,0X7F,0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFC,0X7F,0XFF, -0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFC,0X7F,0XFF,0XFF,0XFF,0X87, -0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFC,0X7F,0XFF,0XFF,0XFF,0XC7,0XFF,0XFF,0XFF, -0XFF,0XF0,0X7F,0XFF,0XFC,0X7F,0XFF,0XFF,0XFF,0XC3,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F, -0XFF,0XFC,0X7F,0XFF,0XFF,0XFF,0XC3,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XF0,0X00,0X7F, -0XFF,0XFF,0XFF,0XC3,0XFF,0XFF,0XFF,0XFF,0XE0,0X7F,0XF0,0X00,0X7F,0XFF,0XFF,0XFF, -0XC3,0XFF,0XFF,0XFF,0XFF,0XE0,0X7F,0XF0,0X00,0X7F,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF, -0XFF,0XFF,0XE0,0X7F,0XFF,0XFC,0X7F,0XFF,0XFF,0XFF,0XE0,0XFF,0XFF,0XFF,0XFF,0XE0, -0X7F,0XFF,0XFC,0X7F,0XFF,0XFF,0XFF,0XF0,0XFF,0XFF,0XFF,0XFF,0XC0,0X7F,0XFF,0XFC, -0X7F,0XFF,0XFF,0XFF,0XF8,0X7F,0XFF,0XFF,0XFF,0XC0,0X7F,0XFF,0XFC,0X7F,0XFF,0XFF, -0XFF,0XF8,0X7F,0XFF,0XFF,0XFF,0XC0,0X7F,0XFF,0XFC,0X7F,0XFF,0XFF,0XFF,0XF8,0X3F, -0XFF,0XFF,0XFF,0XC4,0X7F,0XFF,0XFC,0X7F,0XFF,0XFF,0XFF,0XFC,0X3F,0XFF,0XFF,0XFF, -0X86,0X7F,0XFF,0XFC,0X7F,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF,0X84,0X7F,0XFF, -0XF8,0X7F,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF,0X0C,0X7F,0XF0,0X00,0X7F,0XFF, -0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0XFE,0X0C,0X7F,0XF0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XC7,0XFF,0XFF,0XFE,0X1C,0X7F,0XF0,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0XFF,0XFF, -0XFE,0X1C,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC1,0XFF,0XFF,0XFE,0X3C,0X7F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X7F,0XFF,0XFE,0X7C,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X3F,0XFF,0XFC,0XFC,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X1F,0XFF,0XF8,0XFC,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F, -0XFF,0XE1,0XFC,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X3C, -0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X1C,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X20,0X1C,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X70,0X0C,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFC,0XF0,0X0C,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X78, -0X0C,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X38,0X0C,0X7F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0C,0X1C,0X7F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X1C,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X80,0X7C,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XC0,0XFC,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,}; - - - -const unsigned char gImage_4in2[] = { /* 0X00,0X01,0X90,0X01,0X2C,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, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE, -0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XC0,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0XD0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XCF,0XEB,0X03,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XE3,0X83,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X43,0XF3, -0XC3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF9, -0XC3,0XF3,0XE3,0XFC,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF3,0XE3,0XF9,0XE3,0XF8,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XE5,0XFF,0XFB,0XF3,0XE0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC8,0XFF,0XFB,0XF3,0XC0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X92,0XFF,0XFB,0XF7,0X00,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X30,0XFF,0XF3,0XF4,0X00,0X7F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X5B,0XFF,0XF3,0XF0,0X70, -0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0B,0XFF,0XF3, -0XE1,0XF8,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X09, -0XFF,0XF3,0X85,0XFC,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF9,0X4C,0XFF,0XE7,0X3D,0XFE,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF2,0X7E,0X7F,0XE6,0XFD,0XFE,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X3F,0XBF,0XE1,0X9D,0XFE,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE4,0X3F,0XDF,0XE3,0X9D,0XFF,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE4,0XDF,0XFF,0XC6,0X7D,0XFF,0X3F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XEF,0XFF,0XFF,0XDE,0XFF,0XFF, -0X9F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XCF,0XFF,0XFF,0X93, -0XFF,0XFF,0X9F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XCD,0XFF, -0XFF,0X33,0XFF,0XFF,0X9F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XC0,0XFF,0XFE,0X1F,0XFD,0XFF,0X9F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XC9,0XFF,0XFC,0X8F,0XFF,0XFF,0X9F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC9,0XFF,0XF9,0XFF,0XFD,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XCF,0XFF,0XF0,0XFF,0XF5,0XFF,0X8F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0XFF,0XF6,0X7F,0XF7,0XFF,0X8F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0XFF,0XE3,0X3F,0XFD,0XFF, -0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF3,0XFF,0XEF,0X9F, -0X0B,0XFF,0X87,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF3,0XFF, -0XCE,0X4F,0XA1,0XFF,0X87,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF9,0XFF,0XD7,0X27,0XF3,0XFF,0X97,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFC,0XFB,0XD3,0XC3,0XFB,0XFF,0X97,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X7C,0XD3,0XE1,0XFB,0XFF,0X97,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0X3E,0X1F,0XF1,0XFF,0XFF,0XC7,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X8F,0X93,0XF8,0XDF,0XFF,0XC7,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XCF,0XFC,0X03,0X93,0XFE,0X5F,0XFF, -0XC7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XA3,0XFF,0XE0,0XCF,0XFF, -0X7F,0XFF,0XC7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X79,0XFF,0XFC, -0X0F,0XFF,0X3F,0X7F,0XE7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFE, -0X7F,0XF8,0XF7,0XFF,0X9F,0X7F,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFE,0XFF,0XFF,0XF3,0XD3,0XF7,0XDF,0XBF,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFC,0XBF,0XFF,0XC1,0XEB,0XFB,0XCF,0X9F,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XFF,0XDC,0X71,0XFB,0XEF,0XCF,0XE7,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF9,0XBF,0XFF,0XAF,0XFC,0XF9,0XFF,0XEF,0XE7,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFB,0XFF,0XFF,0X47,0XFE,0X79,0XF7,0XF7, -0XA7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFB,0XFF,0XFE,0X47,0XFF,0X39, -0XF7,0XFB,0XA7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFA,0X3F,0XFC,0XEF, -0XFF,0X99,0XFB,0XFD,0X87,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFA,0X3F, -0XFC,0XFF,0XFF,0XC9,0XFD,0XFC,0X87,0XF8,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFA,0X07,0XFD,0XFF,0XFF,0XE0,0XFC,0XFE,0X07,0XC0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF8,0X7F,0XF9,0XFF,0XFF,0XF8,0X7E,0X7E,0X0F,0X9F,0XF3,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF3,0XFF,0XFB,0XFF,0XFF,0XFE,0X3F,0X39,0X0F,0X20,0X19,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF3,0XFF,0XFB,0XFF,0XFF,0XFF,0X0F,0X98,0X0E,0X0F, -0XC1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF2,0X3F,0XFB,0XFF,0XFF,0XFF,0XC7,0XC0, -0X0C,0X7F,0XF3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFA,0X3F,0XFB,0XFF,0XFF,0XFF, -0XF0,0X20,0X09,0XFF,0XF9,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFB,0XFF,0XF3,0XFF, -0XFF,0XFF,0XFC,0X00,0X01,0XFF,0XF9,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFB,0XFF, -0XEB,0XFF,0X80,0X3F,0XFE,0X00,0X07,0XFF,0XFC,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF9,0X3F,0XDB,0XD8,0X1F,0XC7,0XFF,0X80,0X0F,0XFF,0XFC,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF9,0X3E,0X5B,0XEC,0X7F,0XFC,0X3F,0X80,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0XFF,0X1B,0XFF,0X8F,0XFF,0X80,0X00,0X1F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0XFF,0X3B,0XFF,0XF9,0XFF,0XFF,0X00,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X7E,0XBB,0XFF,0XFF,0XFF,0XFF,0X80, -0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X3E,0XBB,0XFF,0XFF,0XEF, -0XFF,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBE,0X53,0XFF, -0XFF,0XF3,0XFE,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X9F, -0X13,0XFF,0XFF,0XF8,0XFC,0X04,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XCF,0X83,0XFF,0XFF,0XFE,0X18,0X0C,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XE7,0XC3,0XFF,0XFF,0XFF,0XC0,0X1C,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF3,0XE7,0XFF,0XFF,0XFF,0XFE,0X7C,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,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,0XF9,0XE3,0XFF,0XFF,0XFF,0XF9,0XFD,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8, -0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X73,0XFF,0XFE,0XFF,0XE3,0XFD, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF1,0XFF,0X83,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X33,0XFD,0XFE,0XF8, -0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XE7,0XFF,0XF0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X93,0XEB, -0X7E,0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XD8,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XC3,0XF8,0XFF,0XF8,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X9F,0XFB,0XDB,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XE1,0XF9,0XFF,0XC3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X7F,0XF3,0XBF,0XF8,0X0B,0XCF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF9,0XF3,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0X81,0X3F,0XFF,0XE3,0XE7,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0XF7,0XF8,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XCF,0X1C,0X3F,0XFF,0XF3, -0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X77,0XC1,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XE0,0X9C,0X3F, -0XFF,0XFB,0XCB,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X20,0X1F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0XF1, -0X9C,0X1F,0XFF,0XF3,0XD9,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X7E,0XFE,0XD9,0X9F,0XFF,0XF7,0X9C,0XFF,0X87,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFE,0X3E,0X3E,0X59,0XCE,0XFF,0XE4,0X1C,0XFF,0X23,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X7F,0X1F,0X19,0XCC,0XFF,0XE0,0XC6,0XFE,0XF9,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X1F,0X19,0XE5,0XFF,0XC7,0XE0,0X7E,0XF9,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X1F,0X93,0XE4,0XFF,0XCF,0XFF,0X7F, -0XF9,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X2F,0X93,0XF4,0XFF,0X9F, -0XFF,0X7D,0XF9,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X6F,0XC7,0XF0, -0X3F,0X3F,0XFF,0X3D,0XF9,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X7F, -0XCF,0XF2,0X7E,0X7F,0XFF,0X3D,0XF9,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XEF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X80,0X3F,0XCF,0XF0,0XFC,0XFF,0XFF,0X39,0XF8,0XF8,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFE,0X07,0X8F,0XCF,0XF1,0XF9,0XFF,0XFF,0X33,0XFC,0X78,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF8,0XE3,0XE7,0XE7,0XF1,0XF3,0XFF,0XFF,0X27,0XFF,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XF1,0XF3,0XE7,0XF3,0XF7,0XFF,0XFF,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0XF9,0XFD,0XE3,0XE3,0XE7,0XFF,0XFF,0X3F, -0XF3,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XCF,0XFC,0XFC,0XE1,0XE7,0XE7,0XFF, -0XFE,0X7F,0XF7,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFC,0XFE,0X75,0XCF, -0XCF,0XFF,0XF8,0X7F,0XF7,0XF3,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X9F,0XFE,0XFF, -0X74,0X9F,0XCF,0XFE,0X00,0XFF,0XFF,0XF7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X87,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X9F, -0XFE,0X7F,0X3A,0X3F,0X8F,0XE0,0X05,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE, -0X10,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XBF,0XFE,0X7F,0X38,0X7F,0X8F,0X80,0X19,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF9,0XFE,0X3F,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X19,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X3F,0XFF,0X3F,0XBC,0X7F,0X8F,0X03,0XF3,0XFF,0XFF,0XFF,0XF3,0XFF, -0XFF,0XFF,0XFF,0XE7,0XFF,0X8F,0XFF,0XFF,0XFF,0XFC,0X00,0XE0,0X00,0X0C,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0X3F,0X9C,0X7F,0X8E,0X03,0XC7,0XFF,0XFF,0XFF, -0XF3,0XFF,0XFF,0XFF,0XFF,0X1F,0XFF,0XE7,0XFF,0XFF,0XFF,0XF1,0X3F,0XFF,0XF0,0X04, -0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0X9F,0XCD,0X3F,0X8C,0X07,0X1F,0XFF, -0XFF,0XFF,0XF7,0XFF,0XFF,0XFF,0XFC,0X7F,0XFF,0XF3,0XFF,0XFF,0XFF,0XC6,0XFF,0XFF, -0XF8,0X42,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X7F,0XFF,0X8F,0XC5,0X9F,0X84,0X1C, -0X7F,0XFF,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XF3,0XFF,0X00,0XFD,0XFF,0XFF,0XFF,0X9D, -0XFF,0XFF,0XFE,0X22,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X7F,0XF7,0XCF,0XC1,0X9F, -0X84,0X19,0XFF,0XFC,0X00,0X10,0X07,0XFF,0XFF,0XFF,0XCF,0XF8,0X3C,0X1C,0XFF,0XFF, -0XFF,0X3B,0XFF,0XFF,0XFE,0X10,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X7F,0XE3,0XE3, -0XC0,0X8F,0X00,0X13,0XFF,0XF0,0XFF,0X00,0X00,0X47,0XFF,0XFC,0X7F,0XE3,0XFF,0XC6, -0X7F,0XFF,0XFC,0XF7,0XFF,0XFF,0XFF,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F, -0XE3,0XF0,0X00,0XCE,0X00,0X27,0XFF,0XE1,0XFF,0XE3,0XF8,0X03,0XFF,0XC3,0XFF,0XC7, -0XFF,0XF1,0X3F,0XFF,0XF9,0XE7,0XFF,0XFF,0XFF,0X88,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFE,0X3F,0XFF,0XFC,0X00,0X4C,0X00,0X27,0XFF,0X87,0XFF,0XF0,0X00,0X00,0X00,0X1F, -0XFF,0X9F,0XFF,0XFC,0X1F,0XFF,0XE3,0X8F,0XFF,0XFF,0XFF,0X88,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0X1F,0XFF,0XFF,0X01,0X00,0X00,0X67,0XFC,0X0F,0XFF,0XF8,0X07,0XFE, -0X01,0XF9,0XFE,0X7F,0XFF,0XFF,0X0F,0XFF,0X07,0X3F,0XFF,0XFF,0XF9,0X88,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X4F,0XFF,0XFF,0XC1,0X80,0X70,0X00,0X00,0X3F,0XDF,0XFC, -0XFF,0XFF,0XFF,0XF9,0XFC,0XFF,0XFF,0XFF,0XC0,0X60,0X3C,0X7F,0XFF,0XFF,0XFD,0XC0, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X27,0XFF,0XFF,0XC1,0XC0,0X08,0X00,0X00,0XFF, -0X9F,0XFE,0X7F,0XFF,0XFF,0XFD,0XF9,0XFF,0XFF,0XFF,0XF8,0X00,0XC1,0XFF,0XFF,0XFF, -0XFF,0XE0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X33,0XFF,0XFF,0XC0,0XE0,0X00,0X38, -0X00,0XFF,0XBF,0XFE,0X7F,0XFF,0XFF,0XFF,0XF3,0XFF,0XFF,0XFF,0XFF,0XE0,0X3F,0XFF, -0XFF,0XFF,0XFF,0XE0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1D,0XFF,0XFF,0XE0,0X70, -0X04,0X18,0X00,0X7F,0XFF,0XFF,0X7F,0XFF,0XFF,0XFF,0XE7,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0E,0X7F,0XFF, -0XE0,0X10,0X04,0X08,0X18,0X3F,0XFF,0XFF,0X7F,0XFF,0XFF,0XFF,0XCF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X47, -0X1F,0XFF,0XF0,0X00,0X04,0X08,0X8E,0X3F,0XFF,0XFF,0X3F,0XFF,0XFF,0XFF,0XDF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X07,0X8F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X63,0XC7,0XFF,0XFC,0X00,0X0C,0X00,0X8F,0X3F,0XFF,0XFF,0X3F,0XFF,0XFF,0XFF, -0XBF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X30,0XF1,0XFF,0XFF,0X82,0X18,0X01,0X87,0X3F,0XFF,0XFF,0XBF,0XFF, -0XFF,0XFF,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF, -0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X38,0X1C,0XE1,0XFF,0XF1,0XF0,0X01,0XC7,0X3F,0XFF,0XFF, -0X9F,0XFF,0XFF,0XFE,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE3,0XFF,0XFB,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X3E,0X00,0X04,0X7F,0X00,0X01,0X03,0XC3,0X3F, -0XFF,0XFF,0X8F,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF8,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBF,0X87,0X83,0X00,0X00,0X00,0X61, -0XC3,0X9F,0XFF,0XFF,0X8F,0XFF,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X9F,0XFF,0XF1,0XE6,0X00, -0XC2,0X61,0XC3,0X9F,0XFF,0XFF,0X9F,0XFF,0XFF,0XF9,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XF0, -0X78,0X00,0X82,0X61,0XE1,0X9F,0XFF,0XFF,0X9F,0XFF,0XFF,0XF3,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XEF,0XE0,0X00,0X01,0X86,0X61,0XE1,0XFF,0XFF,0XFF,0X9F,0XFF,0XFF,0XE7,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X3F,0XCF,0XE4,0X00,0X01,0X00,0X40,0XF0,0XFF,0XFF,0XFF,0X1F,0XFF,0XFF,0XCF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF9,0XFF,0XFE,0X04,0X01,0X80,0X41,0XD0,0X7F,0XFF,0XFF,0X1F,0XFF, -0XFF,0X9F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X7F,0XF8,0X00,0X33,0X80,0X40,0X88,0X3F,0XFF,0XFF, -0X4F,0XFF,0XF8,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X0F,0XE0,0X23,0XE7,0XC2,0X00,0XCC,0X1F, -0XFF,0XFF,0X4F,0XFF,0XF8,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X06,0X4F,0X8F,0XE3,0X00, -0XFE,0X07,0XFF,0XFE,0X47,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X7C,0X9C,0X3F, -0XF3,0X00,0XFF,0X80,0XFF,0XFE,0X13,0XFC,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF9, -0XB1,0XFF,0XF9,0X80,0X7F,0XC0,0X3F,0XFC,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF1,0X07,0XFF,0XF9,0XC0,0X7F,0XF0,0X0F,0XFC,0X00,0X03,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF3,0X1F,0XFF,0XF9,0XE0,0X3F,0XFE,0X01,0XF0,0X00,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0X3F,0XFF,0XFC,0XF0,0X3F,0XFF,0X80,0X00,0X3F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0X3F,0XFF,0XFC,0X78,0X3F,0XFF,0XC0,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, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0X3F,0XFF,0XFC,0X7E,0X1F,0XFF, -0XF0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XCE,0X3F,0XFF,0XFC,0X3F, -0X8F,0XFF,0XF8,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XCE,0X3F,0XFF, -0XFC,0X9F,0XC7,0XFF,0XFC,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XCC, -0X9F,0XFF,0XFC,0X9F,0XE7,0XFF,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC8,0XCF,0XFF,0XFD,0X9F,0XE0,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XC0,0XE7,0XFC,0X79,0XDF,0XF0,0X7F,0XFE,0X7F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC1,0XF0,0XF0,0X73,0XDF,0XF0,0X7F,0XFC,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC1,0XFC,0X03,0X07,0XDF,0XF0,0XFF,0XF8,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC1,0XFF,0XFF,0XDF,0XDF,0XF2,0X7F, -0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC1,0XFF,0XFF,0XFF,0XDF, -0XF3,0X0F,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC1,0XFF,0XFF, -0XFF,0XDF,0XF3,0X80,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC1, -0XFF,0XFF,0XFF,0X9F,0XF3,0XE0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XE1,0XFF,0XFF,0XFF,0X9F,0XF3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0X9F,0XF3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0X9F,0XF3,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFE,0X7F,0XFF,0X9F,0XF3,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0XFF,0X7F,0XFF,0X9F,0XE7,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X3F,0XFF,0XFF,0X8F, -0XE7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF9,0X0F,0X80, -0X0F,0X8F,0XCF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC, -0XC0,0X00,0X01,0X87,0XCF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFC,0XF8,0X7F,0XE0,0X17,0X9F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFC,0XFF,0XFF,0XFC,0X12,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X7F,0XFF,0XFF,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X7F,0XFF,0XFF,0X81,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X87,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFC,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0XFF,0XFF,0X1F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0XFF,0XFC,0X0F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBF,0XFF,0XFF,0XFF,0XF8, -0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X9F,0XFF,0XFF, -0XFF,0XF9,0XC3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X9F, -0XFF,0XFF,0XFF,0XF3,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XDF,0XFF,0XFF,0XFF,0XF3,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XE4,0X73,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XE0,0X33,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XC0,0X13,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XCF,0XFF,0XFF,0XFF,0X87,0X03,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XEF,0XFF,0XFF,0XFF,0X1F, -0X83,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0XFF,0XFF, -0XFE,0X3F,0XC3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7, -0XFF,0XFF,0XFC,0X7F,0XC7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFB,0XFF,0XFF,0XF9,0XFF,0XE7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF9,0XFF,0XFF,0XE3,0XFF,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X7F,0XFF,0XCF,0XFF,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X1F,0XFF,0X1F,0XFF,0XF3,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC7,0XFC,0X7F,0XFF,0XF3,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X21,0XFF,0XFF, -0XF3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF9,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X87,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF9,0XE1,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,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,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,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,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,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,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,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,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,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,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,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,0X03, -0XFF,0XFF,0XFF,0XFF,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,0X07,0XFF,0XFF,0XFF,0XFF,0XF8,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,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,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,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,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,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,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,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC, -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,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X00,0X00,0X0F,0X00,0X01,0XE0,0X00,0X78,0X00,0X7F,0XFE,0X00,0X7C,0X00, -0X00,0X07,0XCF,0XFF,0XFF,0XFF,0X80,0X7F,0XFF,0XFE,0X1E,0X00,0X00,0X1E,0X00,0X3F, -0XFF,0X00,0X0F,0XFF,0XFF,0XE0,0X1F,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X0F,0X00,0X01,0XE0,0X00,0X78,0X03,0XFF,0XFF,0X80, -0X3E,0X00,0X00,0X0F,0X8F,0XFF,0XFF,0XFF,0X81,0XFF,0XFF,0XFE,0X1E,0X00,0X00,0X1E, -0X00,0XFF,0XFF,0XC0,0X0F,0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X0F,0X00,0X01,0XE0,0X00,0X78,0X07,0XFF, -0XFF,0XE0,0X3E,0X00,0X00,0X0F,0X8F,0XFF,0XFF,0XFF,0X83,0XFF,0XFF,0XFE,0X1E,0X00, -0X00,0X1E,0X03,0XFF,0XFF,0XF0,0X0F,0XFF,0XFF,0XFC,0X1F,0XFF,0XFF,0XFF,0X00,0X00, -0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XF9,0XFF,0XE0,0X00,0X0F,0X00,0X01,0XE0,0X00,0X78, -0X0F,0XFF,0XFF,0XF0,0X1F,0X00,0X00,0X1F,0X0F,0XFF,0XFF,0XFF,0X87,0XFF,0XFF,0XFE, -0X1E,0X00,0X00,0X1E,0X07,0XFF,0XFF,0XF8,0X0F,0XFF,0XFF,0XFE,0X1F,0XFF,0XFF,0XFF, -0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XF0,0X00,0X0F,0X00,0X01,0XE0, -0X00,0X78,0X1F,0XFF,0XFF,0XF8,0X1F,0X00,0X00,0X1F,0X0F,0XFF,0XFF,0XFF,0X87,0XFF, -0XFF,0XFE,0X1E,0X00,0X00,0X1E,0X0F,0XFF,0XFF,0XFC,0X0F,0XFF,0XFF,0XFF,0X1F,0XFF, -0XFF,0XFF,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XF8,0X00,0X0F,0X00, -0X01,0XE0,0X00,0X78,0X1F,0XF0,0X0F,0XF8,0X0F,0X80,0X00,0X3E,0X0F,0X80,0X00,0X00, -0X07,0XF0,0X00,0X00,0X1E,0X00,0X00,0X1E,0X0F,0XF8,0X07,0XFC,0X0F,0X00,0X01,0XFF, -0X1F,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XC1,0XFF,0XFC,0X00, -0X0F,0X00,0X01,0XE0,0X00,0X78,0X3F,0X80,0X01,0XFC,0X0F,0X80,0X00,0X3E,0X0F,0X00, -0X00,0X00,0X07,0X80,0X00,0X00,0X1E,0X00,0X00,0X1E,0X1F,0XC0,0X00,0XFE,0X0F,0X00, -0X00,0X1F,0X1E,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0X81,0XFF, -0XFC,0X00,0X0F,0X00,0X01,0XE0,0X00,0X78,0X3F,0X00,0X00,0X7C,0X07,0XC0,0X00,0X7C, -0X0F,0X00,0X00,0X00,0X07,0X80,0X00,0X00,0X1E,0X00,0X00,0X1E,0X1F,0X80,0X00,0X3E, -0X0F,0X00,0X00,0X0F,0X1E,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0X01,0XFF,0XFE,0X00,0X0F,0X00,0X01,0XE0,0X00,0X78,0X3E,0X00,0X00,0X7C,0X03,0XC0, -0X00,0X7C,0X0F,0X00,0X00,0X00,0X07,0X80,0X00,0X00,0X1E,0X00,0X00,0X1E,0X1F,0X00, -0X00,0X3E,0X0F,0X00,0X00,0X0F,0X1E,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF, -0XFF,0XFE,0X01,0XFF,0XFF,0X00,0X0F,0X00,0X01,0XE0,0X00,0X78,0X3C,0X00,0X00,0X3C, -0X03,0XE0,0X00,0XF8,0X0F,0X80,0X00,0X00,0X07,0XC0,0X00,0X00,0X1F,0X00,0X00,0X1E, -0X1E,0X00,0X00,0X1E,0X0F,0X00,0X00,0X0F,0X1F,0X00,0X00,0X00,0X00,0X00,0X00,0X07, -0XFF,0XFF,0XFF,0XFC,0X01,0XFF,0XFF,0X00,0X0F,0X00,0X01,0XE0,0X00,0X78,0X3C,0X00, -0X00,0X3C,0X01,0XF0,0X00,0XF8,0X0F,0XFF,0XFF,0XF0,0X07,0XFF,0XFF,0XF0,0X1F,0XFF, -0XFF,0XFE,0X1E,0X00,0X00,0X1E,0X0F,0X00,0X00,0X0F,0X1F,0XFF,0XFF,0XE0,0X00,0X00, -0X00,0X07,0XFF,0XFF,0XFF,0XFC,0X01,0XFF,0XFF,0X80,0X0F,0X00,0X01,0XE0,0X00,0X78, -0X3C,0X00,0X00,0X3C,0X01,0XF0,0X01,0XF0,0X0F,0XFF,0XFF,0XF0,0X07,0XFF,0XFF,0XFC, -0X1F,0XFF,0XFF,0XFE,0X1E,0X00,0X00,0X1E,0X0F,0X00,0X00,0X0F,0X1F,0XFF,0XFF,0XE0, -0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XF8,0X01,0XFF,0XFF,0X80,0X0F,0X00,0X01,0XE0, -0X00,0X78,0X3C,0X00,0X00,0X3C,0X00,0XF8,0X01,0XF0,0X0F,0XFF,0XFF,0XF0,0X07,0XFF, -0XFF,0XFE,0X1F,0XFF,0XFF,0XFE,0X1E,0X00,0X00,0X1E,0X0F,0X00,0X00,0X0F,0X1F,0XFF, -0XFF,0XE0,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XF8,0X01,0XFF,0XFF,0XC0,0X0F,0X00, -0X01,0XE0,0X00,0X78,0X3C,0X00,0X00,0X3C,0X00,0XF8,0X03,0XE0,0X0F,0XFF,0XFF,0XF0, -0X01,0XFF,0XFF,0XFE,0X1F,0XFF,0XFF,0XFE,0X1E,0X00,0X00,0X1E,0X0F,0X00,0X00,0X1F, -0X1F,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X07,0XC0,0X1F,0X01,0XFC,0X01,0XE0,0XFF,0XC0, -0X0F,0X00,0X01,0XE0,0X00,0X78,0X3C,0X00,0X00,0X3C,0X00,0X7C,0X03,0XC0,0X0F,0XFF, -0XFF,0XF0,0X00,0X7F,0XFF,0XFF,0X1F,0XFF,0XFF,0XFE,0X1E,0X00,0X00,0X1E,0X0F,0XFF, -0XFF,0XFF,0X1F,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X07,0XC0,0X1F,0X01,0XF8,0X01,0XC0, -0X7F,0XC0,0X0F,0X00,0X01,0XE0,0X00,0X78,0X3F,0XFF,0XFF,0XFC,0X00,0X7C,0X07,0XC0, -0X0F,0X00,0X00,0X00,0X00,0X00,0X00,0X3F,0X1E,0X00,0X00,0X1E,0X1F,0XFF,0XFF,0XFE, -0X0F,0XFF,0XFF,0XFF,0X1F,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XC0,0X1F,0X01,0XF8, -0X01,0XC0,0X7F,0XE0,0X0F,0X00,0X01,0XE0,0X00,0X78,0X3F,0XFF,0XFF,0XFC,0X00,0X3E, -0X07,0X80,0X0F,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0X1E,0X00,0X00,0X1E,0X1F,0XFF, -0XFF,0XFE,0X0F,0XFF,0XFF,0XFE,0X1E,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XC0,0X1E, -0X00,0XF8,0X07,0XC0,0X3F,0XE0,0X0F,0X00,0X01,0XE0,0X00,0X78,0X3F,0XFF,0XFF,0XFC, -0X00,0X3E,0X0F,0X80,0X0F,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0X1E,0X00,0X00,0X1E, -0X1F,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFC,0X1E,0X00,0X00,0X00,0X00,0X00,0X00,0X07, -0XC0,0X0E,0X00,0XF0,0X0F,0X80,0X3F,0XE0,0X0F,0X00,0X01,0XE0,0X00,0X78,0X3F,0XFF, -0XFF,0XFC,0X00,0X1F,0X0F,0X00,0X0F,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0X1E,0X00, -0X00,0X1E,0X1F,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XF8,0X1E,0X00,0X00,0X00,0X00,0X00, -0X00,0X07,0XE0,0X0E,0X00,0XF0,0X0F,0X80,0X1F,0XF0,0X0F,0X00,0X01,0XE0,0X00,0X78, -0X3F,0XFF,0XFF,0XFC,0X00,0X1F,0X1F,0X00,0X0F,0X00,0X00,0X00,0X00,0X00,0X00,0X0F, -0X1E,0X00,0X00,0X1E,0X1F,0XFF,0XFF,0XFE,0X0F,0XFF,0XF7,0XC0,0X1E,0X00,0X00,0X00, -0X00,0X00,0X00,0X07,0XE0,0X04,0X00,0X60,0X0F,0X00,0X1F,0XF0,0X0F,0X00,0X01,0XE0, -0X00,0X78,0X3C,0X00,0X00,0X7C,0X00,0X0F,0XBE,0X00,0X0F,0X00,0X00,0X00,0X00,0X00, -0X00,0X0F,0X1E,0X00,0X00,0X1E,0X1F,0X00,0X00,0X1E,0X0F,0X0F,0XF0,0X00,0X1E,0X00, -0X00,0X00,0X00,0X00,0X00,0X07,0XE0,0X04,0X00,0X60,0X1F,0X00,0X0F,0XF0,0X0F,0X00, -0X01,0XE0,0X00,0X78,0X3C,0X00,0X00,0X3C,0X00,0X0F,0XBE,0X00,0X0F,0X00,0X00,0X00, -0X00,0X00,0X00,0X0F,0X1E,0X00,0X00,0X1E,0X1E,0X00,0X00,0X1E,0X0F,0X07,0XF8,0X00, -0X1E,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XF0,0X04,0X00,0X40,0X1E,0X00,0X0F,0XF0, -0X0F,0X00,0X01,0XE0,0X00,0X78,0X3C,0X00,0X00,0X3C,0X00,0X07,0XFC,0X00,0X0F,0X00, -0X00,0X00,0X00,0X00,0X00,0X0F,0X1E,0X00,0X00,0X1E,0X1E,0X00,0X00,0X1E,0X0F,0X01, -0XFE,0X00,0X1E,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XF0,0X00,0X00,0X00,0X0E,0X00, -0X07,0XF0,0X0F,0X80,0X01,0XE0,0X00,0XF8,0X3C,0X00,0X00,0X3C,0X00,0X07,0XFC,0X00, -0X0F,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0X1E,0X00,0X00,0X1E,0X1E,0X00,0X00,0X1E, -0X0F,0X00,0XFF,0X00,0X1E,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XF0,0X00,0X00,0X00, -0X0C,0X00,0X07,0XF0,0X0F,0XF0,0X03,0XE0,0X0F,0XF8,0X3C,0X00,0X00,0X3C,0X00,0X03, -0XF8,0X00,0X0F,0X80,0X00,0X00,0X00,0X00,0X01,0XFF,0X1E,0X00,0X00,0X1E,0X1E,0X00, -0X00,0X1E,0X0F,0X00,0X3F,0XC0,0X1F,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XF8,0X00, -0X00,0X00,0X04,0X00,0X03,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF,0XF8,0X3C,0X00,0X00,0X3C, -0X00,0X03,0XF8,0X00,0X0F,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0X1E,0X00,0X00,0X1E, -0X1E,0X00,0X00,0X1E,0X0F,0X00,0X1F,0XE0,0X1F,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X07, -0XF8,0X00,0X00,0X00,0X04,0X00,0X03,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF,0XF8,0X3C,0X00, -0X00,0X3C,0X00,0X01,0XF0,0X00,0X0F,0XFF,0XFF,0XFF,0X87,0XFF,0XFF,0XFE,0X1E,0X00, -0X00,0X1E,0X1E,0X00,0X00,0X1E,0X0F,0X00,0X07,0XF0,0X1F,0XFF,0XFF,0XFF,0X00,0X00, -0X00,0X07,0XF8,0X00,0X00,0X00,0X00,0X00,0X01,0XF0,0X07,0XFF,0XFF,0XFF,0XFF,0XF0, -0X3C,0X00,0X00,0X3C,0X00,0X01,0XF0,0X00,0X0F,0XFF,0XFF,0XFF,0X87,0XFF,0XFF,0XFC, -0X1E,0X00,0X00,0X1E,0X1E,0X00,0X00,0X1E,0X0F,0X00,0X03,0XFC,0X1F,0XFF,0XFF,0XFF, -0X00,0X00,0X00,0X03,0XFC,0X00,0X00,0X00,0X00,0X04,0X01,0XF0,0X01,0XFF,0XFF,0XFF, -0XFF,0XE0,0X3C,0X00,0X00,0X3C,0X00,0X00,0XE0,0X00,0X0F,0XFF,0XFF,0XFF,0X87,0XFF, -0XFF,0XF8,0X1E,0X00,0X00,0X1E,0X1E,0X00,0X00,0X1E,0X0F,0X00,0X01,0XFE,0X1F,0XFF, -0XFF,0XFF,0X00,0X00,0X00,0X03,0XFC,0X00,0X20,0X00,0X00,0X06,0X00,0XF0,0X00,0X3F, -0XFF,0XFF,0XFF,0X00,0X3C,0X00,0X00,0X3C,0X00,0X00,0XC0,0X00,0X0F,0XFF,0XFF,0XFF, -0X87,0XFF,0XFF,0XC0,0X1E,0X00,0X00,0X1E,0X1E,0X00,0X00,0X1E,0X0F,0X00,0X00,0X7F, -0X9F,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X03,0XFC,0X00,0X30,0X00,0X00,0X0E,0X00,0XF0, -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,0X03,0XFE,0X00,0X30,0X00,0X00,0X0F, -0X00,0XF0,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,0X03,0XFE,0X00,0X70,0X01, -0X00,0X0F,0X00,0XF0,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,0X03,0XFE,0X00, -0X78,0X03,0X00,0X1E,0X00,0XF0,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,0X01, -0XFF,0X00,0X78,0X03,0X80,0X1E,0X01,0XF0,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,0X01,0XFF,0X00,0XF8,0X03,0X80,0X3E,0X01,0XF0,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,0X01,0XFF,0X00,0XFC,0X07,0X80,0X3C,0X03,0XF0,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,0XFF,0X80,0XFC,0X07,0XC0,0X7C,0X03,0XF0,0X00,0X04, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X20,0X00,0X00,0X00,0X00,0X00,0X10,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0X81,0XFC,0X0F,0XC0,0X78,0X07,0XF0, -0X00,0X04,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X20,0X00,0X00,0X00,0X00,0X00,0X10,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X7F,0X81,0XFE,0X0F,0XFF,0XE0, -0X07,0XF0,0X00,0X04,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X20,0X00,0X00,0X00,0X00,0X00, -0X10,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF, -0XFF,0XE0,0X0F,0XF0,0X00,0X04,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X20,0X00,0X00,0X00, -0X00,0X00,0X10,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3F,0XFF, -0XFF,0XFF,0XFF,0XE0,0X1F,0XF0,0X0F,0X04,0X78,0X01,0XE2,0X13,0X03,0XE0,0X00,0X0F, -0X88,0X80,0X00,0X40,0XF8,0X07,0X80,0X7C,0X04,0X78,0X38,0X01,0XF0,0X00,0X23,0XC0, -0X0F,0X10,0X98,0X1F,0X10,0X00,0X00,0X81,0XF1,0X01,0X83,0XE0,0X00,0X00,0X00,0X00, -0X3F,0XFF,0XFF,0XFF,0XFF,0XE0,0X0F,0XF0,0X19,0X85,0X8C,0X06,0X1A,0X14,0X0C,0X30, -0X00,0X18,0XC8,0X80,0X80,0X43,0X8E,0X0C,0XC1,0XC6,0X04,0X8C,0XC6,0X06,0X18,0X00, -0X2C,0X60,0X30,0XD0,0XA0,0X71,0X91,0X01,0X00,0X87,0X19,0X1E,0X06,0X18,0X00,0X00, -0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XE0,0X0F,0XF0,0X10,0X06,0X06,0X0C,0X06,0X18, -0X18,0X08,0X00,0X20,0X38,0X80,0XC0,0X82,0X02,0X08,0X03,0X01,0X07,0X07,0X02,0X0C, -0X04,0X00,0X30,0X30,0X60,0X70,0XC0,0XC0,0X71,0X01,0X81,0X04,0X07,0X1C,0X08,0X0C, -0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XE0,0X1F,0XF0,0X10,0X06,0X02,0X18, -0X06,0X18,0X10,0X04,0X00,0X40,0X18,0X41,0XC0,0X84,0X01,0X08,0X02,0X00,0X86,0X03, -0X02,0X08,0X02,0X00,0X30,0X10,0XC0,0X30,0X80,0X80,0X30,0X83,0X81,0X08,0X03,0X18, -0X18,0X04,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XE0,0X3F,0XF0,0X10,0X04, -0X02,0X10,0X02,0X10,0X30,0X04,0X00,0XC0,0X18,0X41,0X61,0X84,0X01,0X88,0X06,0X00, -0X86,0X02,0X03,0X18,0X02,0X00,0X20,0X10,0X80,0X10,0X81,0X80,0X30,0X82,0XC2,0X18, -0X03,0X18,0X10,0X02,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XE0,0X7F,0XF0, -0X0C,0X04,0X02,0X10,0X02,0X10,0X3F,0XFE,0X00,0X80,0X08,0X21,0X21,0X0F,0XFF,0X86, -0X04,0X00,0XC4,0X02,0X03,0X1F,0XFE,0X00,0X20,0X10,0X80,0X10,0X81,0X00,0X10,0XC6, -0X42,0X10,0X01,0X18,0X1F,0XFE,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XE0, -0XFF,0XF0,0X06,0X04,0X02,0X10,0X02,0X10,0X30,0X00,0X00,0X80,0X08,0X22,0X33,0X0C, -0X00,0X03,0X04,0X00,0XC4,0X02,0X03,0X18,0X00,0X00,0X20,0X10,0X80,0X10,0X81,0X00, -0X10,0X44,0X46,0X10,0X01,0X18,0X10,0X00,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF, -0XFF,0XE1,0XFF,0XF0,0X01,0X84,0X02,0X10,0X02,0X10,0X20,0X00,0X00,0X80,0X08,0X32, -0X12,0X08,0X00,0X00,0XC4,0X00,0XC4,0X02,0X03,0X10,0X00,0X00,0X20,0X10,0X80,0X10, -0X81,0X00,0X10,0X44,0X24,0X10,0X01,0X18,0X10,0X00,0X00,0X00,0X00,0X00,0X00,0XFF, -0XFF,0XFF,0XFF,0XE3,0XFF,0XF0,0X00,0X84,0X02,0X10,0X02,0X10,0X30,0X00,0X00,0XC0, -0X18,0X14,0X12,0X04,0X00,0X00,0X44,0X00,0X84,0X02,0X03,0X10,0X00,0X00,0X20,0X10, -0X80,0X10,0X81,0X80,0X30,0X28,0X24,0X18,0X03,0X18,0X10,0X00,0X00,0X00,0X00,0X00, -0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X84,0X02,0X18,0X06,0X10,0X10,0X04, -0X00,0X40,0X18,0X1C,0X0C,0X04,0X01,0X00,0X42,0X00,0X84,0X02,0X03,0X08,0X02,0X00, -0X20,0X10,0XC0,0X30,0X80,0X80,0X30,0X38,0X18,0X08,0X03,0X18,0X18,0X04,0X00,0X00, -0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X84,0X02,0X0C,0X06,0X10, -0X18,0X08,0X00,0X20,0X38,0X0C,0X0C,0X02,0X03,0X00,0X43,0X01,0X04,0X02,0X03,0X0C, -0X04,0X00,0X20,0X10,0X60,0X30,0X80,0XC0,0X70,0X10,0X18,0X0C,0X07,0X18,0X08,0X0C, -0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X31,0X84,0X02,0X06, -0X1A,0X10,0X0C,0X30,0X00,0X38,0XC8,0X08,0X0C,0X03,0X8E,0X18,0XC1,0X86,0X04,0X02, -0X03,0X06,0X18,0X00,0X20,0X10,0X30,0XD0,0X80,0X71,0X90,0X10,0X10,0X07,0X19,0X18, -0X06,0X18,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X0E,0X04, -0X02,0X01,0XE2,0X10,0X03,0XE0,0X00,0X0F,0X88,0X00,0X00,0X00,0XF8,0X07,0X00,0X7C, -0X04,0X02,0X00,0X01,0XF0,0X00,0X20,0X10,0X0F,0X10,0X80,0X1F,0X10,0X00,0X00,0X01, -0XF1,0X00,0X03,0XE0,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -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,0X3F,0XFF,0XFF,0XFF, -0XFF,0XF0,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,0X03,0XFF, -0XFF,0XFF,0XFF,0XF0,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,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,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,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,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,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,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,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,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,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,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,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, -}; - - - -const unsigned char gImage_4in2bc_b[] = { /* 0X00,0X01,0X90,0X01,0X2C,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, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE, -0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X80,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0XD0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XCF,0XEB,0X03,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XE3,0X83,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X43,0XF3, -0XC3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8, -0XC3,0XF3,0XE3,0XFC,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF3,0XE3,0XF9,0XE3,0XF8,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XE5,0XFF,0XF9,0XF3,0XE0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC8,0XFF,0XF9,0XF3,0X80,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X92,0X7F,0XFB,0XF3,0X00,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X30,0XFF,0XF3,0XF4,0X00,0X7F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X5B,0XFF,0XF3,0XF0,0X70, -0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0B,0XFF,0XF3, -0XE1,0XF8,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X09, -0XFF,0XF3,0X85,0XFC,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF9,0X4C,0XFF,0XE7,0X3D,0XFE,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF2,0X7E,0X7F,0XE6,0XFD,0XFE,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X3F,0XBF,0XE1,0X99,0XFE,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE4,0X3F,0XDF,0XE3,0X9D,0XFF,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE4,0X5F,0XFF,0XC6,0X7D,0XFF,0X3F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XCF,0XFF,0XFF,0XDE,0XFF,0XFF, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XCF,0XFF,0XFF,0X93, -0XFF,0XFF,0X9F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XCC,0XFF, -0XFF,0X33,0XFF,0XFF,0X9F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XC0,0XFF,0XFE,0X1F,0XFD,0XFF,0X9F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XC9,0XFF,0XFC,0X8F,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC9,0XFF,0XF9,0XDF,0XFD,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XCF,0XFF,0XF0,0XFF,0XF5,0XFF,0X8F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0XFF,0XF6,0X7F,0XF5,0XFF,0X8F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0XFF,0XE3,0X3F,0XB5,0XFF, -0X87,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF3,0XFF,0XEF,0X9F, -0X0B,0XFF,0X87,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF3,0XFF, -0XCE,0X4F,0XA1,0XFF,0X87,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF9,0XFF,0XD7,0X27,0XF3,0XFF,0X97,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFC,0XFB,0XD3,0XC3,0XFB,0XFF,0X97,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X7C,0XD3,0XE1,0XFB,0XFF,0X97,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0X3E,0X1F,0XF1,0XFF,0XFF,0XC7,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X0F,0X93,0XF8,0XDF,0XFF,0XC3,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XCF,0XFC,0X03,0X93,0XFE,0X5F,0XFF, -0XC7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XA3,0XFF,0XE0,0XCF,0XFF, -0X3F,0XFF,0XC7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X79,0XFF,0XFC, -0X07,0XFF,0X3F,0X7F,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFE, -0X7F,0XF8,0XF7,0XFF,0X9F,0X3F,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFE,0XFF,0XFF,0XF3,0XD3,0XF7,0XDF,0XBF,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFC,0XBF,0XFF,0XC1,0XEB,0XFB,0XCF,0X9F,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XFF,0XD8,0X71,0XFB,0XEF,0XCF,0XE7,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF9,0XBF,0XFF,0XAF,0XF8,0XF9,0XE7,0XEF,0XE7,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF9,0XFF,0XFF,0X47,0XFE,0X79,0XF7,0XF7, -0XA7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFB,0XFF,0XFE,0X47,0XFF,0X39, -0XF3,0XFB,0XA7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFA,0X3F,0XFC,0XEF, -0XFF,0X99,0XFB,0XF9,0X87,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF2,0X3F, -0XFC,0XFF,0XFF,0XC8,0XFD,0XFC,0X07,0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF2,0X03,0XFD,0XFF,0XFF,0XE0,0XFC,0XFC,0X07,0XC0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF8,0X7F,0XF9,0XFF,0XFF,0XF8,0X7E,0X7E,0X0F,0X9F,0XE3,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF3,0XFF,0XFB,0XFF,0XFF,0XFC,0X3F,0X39,0X0F,0X20,0X19,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF3,0X7F,0XFB,0XFF,0XFF,0XFF,0X0F,0X90,0X0E,0X0F, -0XC1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF2,0X3F,0XF3,0XFF,0XFF,0XFF,0XC7,0XC0, -0X0C,0X7F,0XF3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF2,0X3F,0XF3,0XFF,0XFF,0XFF, -0XF0,0X20,0X09,0XFF,0XF9,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFB,0XFF,0XF3,0XFF, -0XFE,0XFF,0XFC,0X00,0X01,0XFF,0XF9,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFB,0XFF, -0XEB,0XFF,0X80,0X3F,0XFC,0X00,0X07,0XFF,0XFC,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF9,0X1F,0XDB,0XD8,0X1F,0XC7,0XFF,0X00,0X0F,0XFF,0XFC,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF9,0X1E,0X5B,0XCC,0X3F,0XF8,0X3F,0X80,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0XBF,0X1B,0XFF,0X8F,0XFF,0X80,0X00,0X1F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0XFF,0X3B,0XFF,0XF9,0XFF,0XFF,0X00,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X7E,0XBB,0XFF,0XFF,0XFF,0XFF,0X80, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X3E,0XB3,0XFF,0XFF,0XCF, -0XFE,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBE,0X53,0XFF, -0XFF,0XF3,0XFE,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X9F, -0X13,0XFF,0XFF,0XF8,0XF8,0X04,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XCF,0X83,0XFF,0XFF,0XFE,0X18,0X0C,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XE7,0XC3,0XFF,0XFF,0XFF,0XC0,0X1C,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF3,0XE7,0XFF,0XFF,0XFF,0XFC,0X7C,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0XE3,0XFF,0XFF,0XFF,0XF9,0XFD,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X73,0XFF,0XFE,0XFF,0XE3,0XFD, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X33,0XFD,0XFE,0XF8, -0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X93,0XEB, -0X7E,0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XC3,0XE8,0XFF,0XF8,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XE1,0XF1,0XFF,0XC3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF9,0XF3,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0XF7,0XF8,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X77,0XC1,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X20,0X1F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,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,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,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,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,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,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,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,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,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,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,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,0X03, -0XFF,0XFF,0XFF,0XFF,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,0X07,0XFF,0XFF,0XFF,0XFF,0XF8,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,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,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,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,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,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,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,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC, -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,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFE,0X00,0X00,0X0F,0X00,0X01,0XE0,0X00,0X78,0X00,0X7F,0XFE,0X00,0X7C,0X00, -0X00,0X07,0XCF,0XFF,0XFF,0XFF,0X80,0X7F,0XFF,0XFE,0X1E,0X00,0X00,0X1E,0X00,0X3F, -0XFF,0X00,0X0F,0XFF,0XFF,0XE0,0X1F,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X0F,0X00,0X01,0XE0,0X00,0X78,0X01,0XFF,0XFF,0X80, -0X3E,0X00,0X00,0X0F,0X8F,0XFF,0XFF,0XFF,0X81,0XFF,0XFF,0XFE,0X1E,0X00,0X00,0X1E, -0X00,0XFF,0XFF,0XC0,0X0F,0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X0F,0X00,0X01,0XE0,0X00,0X78,0X07,0XFF, -0XFF,0XE0,0X3E,0X00,0X00,0X0F,0X8F,0XFF,0XFF,0XFF,0X83,0XFF,0XFF,0XFE,0X1E,0X00, -0X00,0X1E,0X03,0XFF,0XFF,0XF0,0X0F,0XFF,0XFF,0XFC,0X1F,0XFF,0XFF,0XFF,0X00,0X00, -0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XF9,0XFF,0XE0,0X00,0X0F,0X00,0X01,0XE0,0X00,0X78, -0X0F,0XFF,0XFF,0XF0,0X1F,0X00,0X00,0X1F,0X0F,0XFF,0XFF,0XFF,0X87,0XFF,0XFF,0XFE, -0X1E,0X00,0X00,0X1E,0X07,0XFF,0XFF,0XF8,0X0F,0XFF,0XFF,0XFE,0X1F,0XFF,0XFF,0XFF, -0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XF0,0X00,0X0F,0X00,0X01,0XE0, -0X00,0X78,0X1F,0XFF,0XFF,0XF8,0X1F,0X00,0X00,0X1F,0X0F,0XFF,0XFF,0XFF,0X87,0XFF, -0XFF,0XFE,0X1E,0X00,0X00,0X1E,0X0F,0XFF,0XFF,0XFC,0X0F,0XFF,0XFF,0XFF,0X1F,0XFF, -0XFF,0XFF,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XF8,0X00,0X0F,0X00, -0X01,0XE0,0X00,0X78,0X1F,0XE0,0X07,0XF8,0X0F,0X80,0X00,0X3E,0X0F,0X80,0X00,0X00, -0X07,0XF0,0X00,0X00,0X1E,0X00,0X00,0X1E,0X0F,0XF0,0X03,0XFC,0X0F,0X00,0X01,0XFF, -0X1F,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XC1,0XFF,0XFC,0X00, -0X0F,0X00,0X01,0XE0,0X00,0X78,0X3F,0X80,0X01,0XFC,0X07,0X80,0X00,0X3E,0X0F,0X00, -0X00,0X00,0X07,0X80,0X00,0X00,0X1E,0X00,0X00,0X1E,0X1F,0XC0,0X00,0X7E,0X0F,0X00, -0X00,0X1F,0X1E,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0X81,0XFF, -0XFC,0X00,0X0F,0X00,0X01,0XE0,0X00,0X78,0X3F,0X00,0X00,0X7C,0X07,0XC0,0X00,0X7C, -0X0F,0X00,0X00,0X00,0X07,0X80,0X00,0X00,0X1E,0X00,0X00,0X1E,0X1F,0X80,0X00,0X3E, -0X0F,0X00,0X00,0X0F,0X1E,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0X01,0XFF,0XFE,0X00,0X0F,0X00,0X01,0XE0,0X00,0X78,0X3E,0X00,0X00,0X7C,0X03,0XC0, -0X00,0X7C,0X0F,0X00,0X00,0X00,0X07,0X80,0X00,0X00,0X1E,0X00,0X00,0X1E,0X1F,0X00, -0X00,0X1E,0X0F,0X00,0X00,0X0F,0X1E,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF, -0XFF,0XFE,0X01,0XFF,0XFF,0X00,0X0F,0X00,0X01,0XE0,0X00,0X78,0X3C,0X00,0X00,0X3C, -0X03,0XE0,0X00,0XF8,0X0F,0X80,0X00,0X00,0X07,0XC0,0X00,0X00,0X1F,0X00,0X00,0X1E, -0X1E,0X00,0X00,0X1E,0X0F,0X00,0X00,0X0F,0X1F,0X00,0X00,0X00,0X00,0X00,0X00,0X07, -0XFF,0XFF,0XFF,0XFC,0X01,0XFF,0XFF,0X00,0X0F,0X00,0X01,0XE0,0X00,0X78,0X3C,0X00, -0X00,0X3C,0X01,0XE0,0X00,0XF8,0X0F,0XFF,0XFF,0XF0,0X07,0XFF,0XFF,0XF0,0X1F,0XFF, -0XFF,0XFE,0X1E,0X00,0X00,0X1E,0X0F,0X00,0X00,0X0F,0X1F,0XFF,0XFF,0XE0,0X00,0X00, -0X00,0X07,0XFF,0XFF,0XFF,0XF8,0X01,0XFF,0XFF,0X80,0X0F,0X00,0X01,0XE0,0X00,0X78, -0X3C,0X00,0X00,0X3C,0X01,0XF0,0X01,0XF0,0X0F,0XFF,0XFF,0XF0,0X07,0XFF,0XFF,0XFC, -0X1F,0XFF,0XFF,0XFE,0X1E,0X00,0X00,0X1E,0X0F,0X00,0X00,0X0F,0X1F,0XFF,0XFF,0XE0, -0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XF8,0X01,0XFF,0XFF,0X80,0X0F,0X00,0X01,0XE0, -0X00,0X78,0X3C,0X00,0X00,0X3C,0X00,0XF8,0X01,0XE0,0X0F,0XFF,0XFF,0XF0,0X07,0XFF, -0XFF,0XFE,0X1F,0XFF,0XFF,0XFE,0X1E,0X00,0X00,0X1E,0X0F,0X00,0X00,0X0F,0X1F,0XFF, -0XFF,0XE0,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XF8,0X01,0XFF,0XFF,0XC0,0X0F,0X00, -0X01,0XE0,0X00,0X78,0X3C,0X00,0X00,0X3C,0X00,0XF8,0X03,0XE0,0X0F,0XFF,0XFF,0XF0, -0X01,0XFF,0XFF,0XFE,0X1F,0XFF,0XFF,0XFE,0X1E,0X00,0X00,0X1E,0X0F,0X00,0X00,0X1F, -0X1F,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X07,0XC0,0X1F,0X01,0XFC,0X01,0XE0,0XFF,0XC0, -0X0F,0X00,0X01,0XE0,0X00,0X78,0X3C,0X00,0X00,0X3C,0X00,0X7C,0X03,0XC0,0X0F,0XFF, -0XFF,0XF0,0X00,0X7F,0XFF,0XFF,0X1F,0XFF,0XFF,0XFE,0X1E,0X00,0X00,0X1E,0X0F,0XFF, -0XFF,0XFF,0X1F,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X07,0XC0,0X1F,0X01,0XF8,0X01,0XC0, -0X7F,0XC0,0X0F,0X00,0X01,0XE0,0X00,0X78,0X3F,0XFF,0XFF,0XFC,0X00,0X7C,0X07,0XC0, -0X0F,0X00,0X00,0X00,0X00,0X00,0X00,0X3F,0X1E,0X00,0X00,0X1E,0X1F,0XFF,0XFF,0XFE, -0X0F,0XFF,0XFF,0XFF,0X1F,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XC0,0X1F,0X01,0XF8, -0X01,0XC0,0X7F,0XE0,0X0F,0X00,0X01,0XE0,0X00,0X78,0X3F,0XFF,0XFF,0XFC,0X00,0X3E, -0X07,0X80,0X0F,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0X1E,0X00,0X00,0X1E,0X1F,0XFF, -0XFF,0XFE,0X0F,0XFF,0XFF,0XFE,0X1E,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XC0,0X0E, -0X00,0XF0,0X07,0XC0,0X3F,0XE0,0X0F,0X00,0X01,0XE0,0X00,0X78,0X3F,0XFF,0XFF,0XFC, -0X00,0X3E,0X0F,0X80,0X0F,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0X1E,0X00,0X00,0X1E, -0X1F,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFC,0X1E,0X00,0X00,0X00,0X00,0X00,0X00,0X07, -0XC0,0X0E,0X00,0XF0,0X07,0X80,0X3F,0XE0,0X0F,0X00,0X01,0XE0,0X00,0X78,0X3F,0XFF, -0XFF,0XFC,0X00,0X1F,0X0F,0X00,0X0F,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0X1E,0X00, -0X00,0X1E,0X1F,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XF8,0X1E,0X00,0X00,0X00,0X00,0X00, -0X00,0X07,0XC0,0X0C,0X00,0XF0,0X0F,0X80,0X1F,0XF0,0X0F,0X00,0X01,0XE0,0X00,0X78, -0X3F,0XFF,0XFF,0XFC,0X00,0X1F,0X1F,0X00,0X0F,0X00,0X00,0X00,0X00,0X00,0X00,0X0F, -0X1E,0X00,0X00,0X1E,0X1F,0XFF,0XFF,0XFE,0X0F,0XFF,0XF7,0X80,0X1E,0X00,0X00,0X00, -0X00,0X00,0X00,0X07,0XE0,0X04,0X00,0X60,0X0F,0X00,0X1F,0XF0,0X0F,0X00,0X01,0XE0, -0X00,0X78,0X3C,0X00,0X00,0X3C,0X00,0X0F,0X9E,0X00,0X0F,0X00,0X00,0X00,0X00,0X00, -0X00,0X0F,0X1E,0X00,0X00,0X1E,0X1E,0X00,0X00,0X1E,0X0F,0X0F,0XF0,0X00,0X1E,0X00, -0X00,0X00,0X00,0X00,0X00,0X07,0XE0,0X04,0X00,0X60,0X1F,0X00,0X0F,0XF0,0X0F,0X00, -0X01,0XE0,0X00,0X78,0X3C,0X00,0X00,0X3C,0X00,0X0F,0XBE,0X00,0X0F,0X00,0X00,0X00, -0X00,0X00,0X00,0X0F,0X1E,0X00,0X00,0X1E,0X1E,0X00,0X00,0X1E,0X0F,0X07,0XF8,0X00, -0X1E,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XE0,0X04,0X00,0X40,0X1E,0X00,0X0F,0XF0, -0X0F,0X00,0X01,0XE0,0X00,0X78,0X3C,0X00,0X00,0X3C,0X00,0X07,0XFC,0X00,0X0F,0X00, -0X00,0X00,0X00,0X00,0X00,0X0F,0X1E,0X00,0X00,0X1E,0X1E,0X00,0X00,0X1E,0X0F,0X01, -0XFE,0X00,0X1E,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XF0,0X00,0X00,0X00,0X0E,0X00, -0X07,0XF0,0X0F,0X80,0X01,0XE0,0X00,0XF8,0X3C,0X00,0X00,0X3C,0X00,0X07,0XFC,0X00, -0X0F,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0X1E,0X00,0X00,0X1E,0X1E,0X00,0X00,0X1E, -0X0F,0X00,0XFF,0X00,0X1E,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XF0,0X00,0X00,0X00, -0X0C,0X00,0X07,0XF0,0X0F,0XF0,0X03,0XE0,0X07,0XF8,0X3C,0X00,0X00,0X3C,0X00,0X03, -0XF8,0X00,0X0F,0X80,0X00,0X00,0X00,0X00,0X00,0XFF,0X1E,0X00,0X00,0X1E,0X1E,0X00, -0X00,0X1E,0X0F,0X00,0X3F,0X80,0X1F,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XF0,0X00, -0X00,0X00,0X04,0X00,0X03,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF,0XF8,0X3C,0X00,0X00,0X3C, -0X00,0X03,0XF8,0X00,0X0F,0XFF,0XFF,0XFF,0X87,0XFF,0XFF,0XFE,0X1E,0X00,0X00,0X1E, -0X1E,0X00,0X00,0X1E,0X0F,0X00,0X1F,0XE0,0X1F,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X07, -0XF8,0X00,0X00,0X00,0X04,0X00,0X03,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF,0XF8,0X3C,0X00, -0X00,0X3C,0X00,0X01,0XF0,0X00,0X0F,0XFF,0XFF,0XFF,0X87,0XFF,0XFF,0XFE,0X1E,0X00, -0X00,0X1E,0X1E,0X00,0X00,0X1E,0X0F,0X00,0X07,0XF0,0X1F,0XFF,0XFF,0XFF,0X00,0X00, -0X00,0X07,0XF8,0X00,0X00,0X00,0X00,0X00,0X01,0XF0,0X07,0XFF,0XFF,0XFF,0XFF,0XF0, -0X3C,0X00,0X00,0X3C,0X00,0X01,0XF0,0X00,0X0F,0XFF,0XFF,0XFF,0X87,0XFF,0XFF,0XFC, -0X1E,0X00,0X00,0X1E,0X1E,0X00,0X00,0X1E,0X0F,0X00,0X03,0XFC,0X1F,0XFF,0XFF,0XFF, -0X00,0X00,0X00,0X03,0XF8,0X00,0X00,0X00,0X00,0X04,0X01,0XF0,0X01,0XFF,0XFF,0XFF, -0XFF,0XE0,0X3C,0X00,0X00,0X3C,0X00,0X00,0XE0,0X00,0X0F,0XFF,0XFF,0XFF,0X87,0XFF, -0XFF,0XF8,0X1E,0X00,0X00,0X1E,0X1E,0X00,0X00,0X1E,0X0F,0X00,0X01,0XFE,0X1F,0XFF, -0XFF,0XFF,0X00,0X00,0X00,0X03,0XFC,0X00,0X20,0X00,0X00,0X06,0X00,0XF0,0X00,0X3F, -0XFF,0XFF,0XFF,0X00,0X3C,0X00,0X00,0X3C,0X00,0X00,0XC0,0X00,0X0F,0XFF,0XFF,0XFF, -0X07,0XFF,0XFF,0XC0,0X1E,0X00,0X00,0X1E,0X1E,0X00,0X00,0X1E,0X0F,0X00,0X00,0X7F, -0X9F,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X03,0XFC,0X00,0X20,0X00,0X00,0X0E,0X00,0XF0, -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,0X03,0XFC,0X00,0X30,0X00,0X00,0X0F, -0X00,0XF0,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,0X03,0XFE,0X00,0X70,0X01, -0X00,0X0F,0X00,0XF0,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,0X03,0XFE,0X00, -0X78,0X03,0X00,0X1E,0X00,0XF0,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,0X01, -0XFE,0X00,0X78,0X03,0X80,0X1E,0X01,0XF0,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,0X01,0XFF,0X00,0XF8,0X03,0X80,0X3E,0X01,0XF0,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,0X01,0XFF,0X00,0XFC,0X07,0X80,0X3C,0X03,0XF0,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,0XFF,0X00,0XFC,0X07,0XC0,0X7C,0X03,0XF0,0X00,0X04, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X20,0X00,0X00,0X00,0X00,0X00,0X10,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0X81,0XFC,0X0F,0XC0,0X78,0X07,0XF0, -0X00,0X04,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X20,0X00,0X00,0X00,0X00,0X00,0X10,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X7F,0X81,0XFE,0X0F,0XFF,0XE0, -0X07,0XF0,0X00,0X04,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X20,0X00,0X00,0X00,0X00,0X00, -0X10,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF, -0XFF,0XE0,0X0F,0XF0,0X00,0X04,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X20,0X00,0X00,0X00, -0X00,0X00,0X10,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3F,0XFF, -0XFF,0XFF,0XFF,0XE0,0X0F,0XF0,0X0F,0X04,0X78,0X01,0XE2,0X13,0X03,0XE0,0X00,0X0F, -0X88,0X00,0X00,0X40,0XF8,0X07,0X00,0X7C,0X04,0X78,0X38,0X01,0XE0,0X00,0X23,0XC0, -0X0F,0X10,0X98,0X1F,0X10,0X00,0X00,0X81,0XF1,0X01,0X81,0XE0,0X00,0X00,0X00,0X00, -0X3F,0XFF,0XFF,0XFF,0XFF,0XE0,0X0F,0XF0,0X19,0X85,0X8C,0X06,0X1A,0X14,0X0C,0X30, -0X00,0X18,0X48,0X80,0X80,0X41,0X8C,0X0C,0XC1,0X86,0X04,0X8C,0XC6,0X06,0X18,0X00, -0X2C,0X60,0X30,0XD0,0XA0,0X71,0X91,0X01,0X00,0X83,0X19,0X1E,0X06,0X18,0X00,0X00, -0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XE0,0X0F,0XF0,0X10,0X06,0X06,0X0C,0X06,0X18, -0X18,0X08,0X00,0X20,0X38,0X80,0XC0,0X82,0X02,0X08,0X03,0X01,0X07,0X05,0X02,0X0C, -0X04,0X00,0X30,0X30,0X60,0X30,0XC0,0XC0,0X71,0X01,0X81,0X04,0X07,0X1C,0X08,0X0C, -0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XE0,0X0F,0XF0,0X10,0X06,0X02,0X18, -0X06,0X18,0X10,0X04,0X00,0X40,0X18,0X41,0XC0,0X84,0X01,0X08,0X02,0X00,0X86,0X03, -0X02,0X08,0X02,0X00,0X30,0X10,0XC0,0X30,0X80,0X80,0X30,0X83,0X81,0X08,0X03,0X18, -0X18,0X04,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XE0,0X3F,0XF0,0X10,0X04, -0X02,0X10,0X02,0X10,0X30,0X04,0X00,0XC0,0X18,0X41,0X21,0X84,0X01,0X08,0X04,0X00, -0X86,0X02,0X03,0X10,0X02,0X00,0X20,0X10,0X80,0X10,0X81,0X80,0X30,0X82,0XC2,0X18, -0X03,0X18,0X10,0X02,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XE0,0X7F,0XF0, -0X0C,0X04,0X02,0X10,0X02,0X10,0X3F,0XFE,0X00,0X80,0X08,0X21,0X21,0X0F,0XFF,0X86, -0X04,0X00,0XC4,0X02,0X03,0X1F,0XFE,0X00,0X20,0X10,0X80,0X10,0X81,0X00,0X10,0XC6, -0X42,0X10,0X01,0X18,0X1F,0XFE,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XE0, -0XFF,0XF0,0X06,0X04,0X02,0X10,0X02,0X10,0X30,0X00,0X00,0X80,0X08,0X22,0X31,0X0C, -0X00,0X03,0X04,0X00,0X44,0X02,0X03,0X10,0X00,0X00,0X20,0X10,0X80,0X10,0X81,0X00, -0X10,0X44,0X46,0X10,0X01,0X18,0X10,0X00,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF, -0XFF,0XE1,0XFF,0XF0,0X01,0X84,0X02,0X10,0X02,0X10,0X20,0X00,0X00,0X80,0X08,0X32, -0X12,0X08,0X00,0X00,0X84,0X00,0XC4,0X02,0X03,0X10,0X00,0X00,0X20,0X10,0X80,0X10, -0X81,0X00,0X10,0X44,0X24,0X10,0X01,0X18,0X10,0X00,0X00,0X00,0X00,0X00,0X00,0XFF, -0XFF,0XFF,0XFF,0XE3,0XFF,0XF0,0X00,0X84,0X02,0X10,0X02,0X10,0X30,0X00,0X00,0XC0, -0X18,0X14,0X12,0X04,0X00,0X00,0X44,0X00,0X84,0X02,0X03,0X10,0X00,0X00,0X20,0X10, -0X80,0X10,0X81,0X80,0X30,0X28,0X24,0X18,0X03,0X18,0X10,0X00,0X00,0X00,0X00,0X00, -0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X84,0X02,0X18,0X06,0X10,0X10,0X04, -0X00,0X40,0X18,0X1C,0X0C,0X04,0X01,0X00,0X42,0X00,0X84,0X02,0X03,0X08,0X02,0X00, -0X20,0X10,0XC0,0X30,0X80,0X80,0X30,0X38,0X18,0X08,0X03,0X18,0X18,0X04,0X00,0X00, -0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X84,0X02,0X0C,0X06,0X10, -0X18,0X08,0X00,0X20,0X38,0X0C,0X0C,0X02,0X03,0X00,0X43,0X01,0X04,0X02,0X03,0X0C, -0X04,0X00,0X20,0X10,0X60,0X30,0X80,0XC0,0X70,0X10,0X18,0X04,0X07,0X18,0X08,0X0C, -0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X11,0X84,0X02,0X06, -0X1A,0X10,0X0C,0X30,0X00,0X18,0XC8,0X08,0X04,0X03,0X8E,0X18,0X81,0X86,0X04,0X02, -0X03,0X06,0X18,0X00,0X20,0X10,0X30,0XD0,0X80,0X71,0X90,0X10,0X10,0X07,0X19,0X18, -0X06,0X18,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X0E,0X04, -0X02,0X01,0XE2,0X10,0X03,0XE0,0X00,0X0F,0X88,0X00,0X00,0X00,0XF8,0X07,0X00,0X7C, -0X04,0X02,0X00,0X01,0XF0,0X00,0X20,0X10,0X0F,0X10,0X80,0X1F,0X10,0X00,0X00,0X01, -0XF1,0X00,0X03,0XE0,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -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,0X1F,0XFF,0XFF,0XFF, -0XFF,0XF0,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,0X03,0XFF, -0XFF,0XFF,0XFF,0XF0,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,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,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,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,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,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,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,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,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,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,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,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, -}; - -const unsigned char gImage_4in2bc_ry[] = { /* 0X00,0X01,0X90,0X01,0X2C,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, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8, -0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF1,0XFF,0X83,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XE7,0XFF,0XF0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XD8,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X9F,0XF8,0X1B,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X7F,0XF3,0XBF,0XF8,0X0B,0XCF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0X81,0X3F,0XFF,0XE3,0XE7,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XCF,0X1C,0X3F,0XFF,0XF3, -0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XE0,0X9C,0X3F, -0XFF,0XFB,0XCB,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0XF0, -0X9C,0X1F,0XFF,0XF3,0XD9,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X7E,0XFE,0XD9,0X9F,0XFF,0XF7,0X9C,0XFF,0X87,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFE,0X3E,0X3E,0X59,0XCC,0XFF,0XE4,0X1C,0XFF,0X23,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X7F,0X1F,0X19,0XCC,0XFF,0XE0,0XC6,0XFE,0XF9,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X1F,0X19,0XE4,0XFF,0XC7,0XE0,0X7E,0XF9,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X1F,0X93,0XE4,0XFF,0XCF,0XFF,0X7F, -0XF9,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X2F,0X93,0XF4,0XFF,0X9F, -0XFF,0X7D,0XF9,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X6F,0XC7,0XF0, -0X3F,0X3F,0XFF,0X3D,0XF9,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X7F, -0XC7,0XF2,0X7E,0X7F,0XFF,0X3D,0XF9,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XEF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X80,0X1F,0XCF,0XF0,0XFC,0XFF,0XFF,0X39,0XF8,0XF8,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFE,0X07,0X8F,0XCF,0XF1,0XF9,0XFF,0XFF,0X33,0XFC,0X78,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF8,0X63,0XE7,0XE7,0XF1,0XF3,0XFF,0XFF,0X27,0XFE,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XF1,0XF3,0XE7,0XF3,0XF7,0XFF,0XFF,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0XF9,0XF9,0XE3,0XE3,0XE7,0XFF,0XFF,0X3F, -0XF3,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XCF,0XFC,0XFC,0XE1,0XE7,0XC7,0XFF, -0XFE,0X7F,0XF3,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFC,0XFE,0X71,0XCF, -0XCF,0XFF,0XF8,0X7F,0XF7,0XF3,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XEF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X9F,0XFE,0XFF, -0X70,0X9F,0XCF,0XFC,0X00,0XFF,0XFF,0XF7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X87,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X9F, -0XFE,0X7F,0X32,0X3F,0X8F,0XE0,0X05,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE, -0X10,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XBF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X3F,0XFE,0X7F,0X38,0X7F,0X8F,0X80,0X19,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF9,0XFE,0X3F,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X19,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X3F,0XFF,0X3F,0XBC,0X7F,0X8F,0X03,0XF3,0XFF,0XFF,0XFF,0XF3,0XFF, -0XFF,0XFF,0XFF,0XE7,0XFF,0X8F,0XFF,0XFF,0XFF,0XFC,0X00,0XE0,0X00,0X0C,0X7F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0X3F,0X9C,0X7F,0X8E,0X03,0XC7,0XFF,0XFF,0XFF, -0XF3,0XFF,0XFF,0XFF,0XFF,0X1F,0XFF,0XE7,0XFF,0XFF,0XFF,0XF1,0X3F,0XFF,0XE0,0X04, -0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0X9F,0X8D,0X3F,0X8C,0X07,0X1F,0XFF, -0XFF,0XFF,0XF7,0XFF,0XFF,0XFF,0XFC,0X7F,0XFF,0XF3,0XFF,0XFF,0XFF,0XC6,0X7F,0XFF, -0XF8,0X42,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X7F,0XFF,0X8F,0XC1,0X9F,0X84,0X1C, -0X7F,0XFE,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XF3,0XFF,0X00,0XFD,0XFF,0XFF,0XFF,0X9D, -0XFF,0XFF,0XFE,0X22,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X7F,0XF7,0XCF,0XC1,0X9F, -0X84,0X18,0XFF,0XFC,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XCF,0XF8,0X0C,0X1C,0XFF,0XFF, -0XFF,0X3B,0XFF,0XFF,0XFE,0X10,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X7F,0XE3,0XE3, -0XC0,0X8F,0X00,0X13,0XFF,0XF0,0XFF,0X00,0X00,0X47,0XFF,0XFC,0X7F,0XE1,0XFF,0XC6, -0X7F,0XFF,0XFC,0X77,0XFF,0XFF,0XFF,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F, -0XE3,0XF0,0X00,0XCE,0X00,0X27,0XFF,0XE1,0XFF,0XE3,0XF8,0X03,0XFF,0X83,0XFF,0XC7, -0XFF,0XF1,0X3F,0XFF,0XF9,0XE7,0XFF,0XFF,0XFF,0X88,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFE,0X3F,0XFF,0XFC,0X00,0X4C,0X00,0X27,0XFF,0X07,0XFF,0XF0,0X00,0X00,0X00,0X1F, -0XFF,0X9F,0XFF,0XFC,0X1F,0XFF,0XE3,0X8F,0XFF,0XFF,0XFF,0X88,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0X1F,0XFF,0XFF,0X01,0X00,0X00,0X67,0XFC,0X0F,0XFF,0XF8,0X07,0XFC, -0X01,0XF9,0XFE,0X7F,0XFF,0XFF,0X0F,0XFF,0X07,0X3F,0XFF,0XFF,0XF9,0X80,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X4F,0XFF,0XFF,0XC1,0X80,0X70,0X00,0X00,0X3F,0XDF,0XFC, -0XFF,0XFF,0XFF,0XF8,0XFC,0XFF,0XFF,0XFF,0XC0,0X40,0X3C,0X7F,0XFF,0XFF,0XFD,0XC0, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X27,0XFF,0XFF,0XC1,0XC0,0X08,0X00,0X00,0XFF, -0X9F,0XFE,0X7F,0XFF,0XFF,0XFD,0XF9,0XFF,0XFF,0XFF,0XF8,0X00,0X81,0XFF,0XFF,0XFF, -0XFF,0XE0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X33,0XFF,0XFF,0XC0,0XE0,0X00,0X38, -0X00,0XFF,0XBF,0XFE,0X7F,0XFF,0XFF,0XFF,0XF3,0XFF,0XFF,0XFF,0XFF,0XC0,0X3F,0XFF, -0XFF,0XFF,0XFF,0XE0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1D,0XFF,0XFF,0XE0,0X70, -0X04,0X18,0X00,0X7F,0XFF,0XFF,0X7F,0XFF,0XFF,0XFF,0XE7,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0E,0X7F,0XFF, -0XE0,0X00,0X04,0X08,0X18,0X3F,0XFF,0XFF,0X7F,0XFF,0XFF,0XFF,0XCF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X47, -0X1F,0XFF,0XF0,0X00,0X04,0X08,0X8E,0X3F,0XFF,0XFF,0X3F,0XFF,0XFF,0XFF,0X9F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X07,0X8F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X61,0XC7,0XFF,0XFC,0X00,0X0C,0X00,0X86,0X3F,0XFF,0XFF,0X3F,0XFF,0XFF,0XFF, -0XBF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X01,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X30,0XF1,0XFF,0XFF,0X82,0X18,0X00,0X87,0X3F,0XFF,0XFF,0XBF,0XFF, -0XFF,0XFF,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF, -0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X38,0X1C,0XC1,0XFF,0XF1,0XF0,0X01,0XC7,0X3F,0XFF,0XFF, -0X9F,0XFF,0XFF,0XFE,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE3,0XFF,0XF3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X3E,0X00,0X04,0X7F,0X00,0X01,0X03,0XC3,0X3F, -0XFF,0XFF,0X8F,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF8,0X7F,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBF,0X87,0X83,0X00,0X00,0X00,0X21, -0XC3,0X9F,0XFF,0XFF,0X8F,0XFF,0XFF,0XFD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X9F,0XFF,0XF1,0XE6,0X00, -0XC2,0X61,0XC3,0X9F,0XFF,0XFF,0X9F,0XFF,0XFF,0XF9,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XF0, -0X78,0X00,0X82,0X61,0XE1,0X9F,0XFF,0XFF,0X9F,0XFF,0XFF,0XF3,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XCF,0XE0,0X00,0X01,0X06,0X61,0XE1,0XFF,0XFF,0XFF,0X9F,0XFF,0XFF,0XE7,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X3F,0XCF,0XE4,0X00,0X01,0X00,0X40,0XF0,0XFF,0XFF,0XFF,0X1F,0XFF,0XFF,0XCF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X79,0XFF,0XFE,0X04,0X01,0X80,0X41,0XD0,0X7F,0XFF,0XFF,0X1F,0XFF, -0XFF,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X7F,0XF8,0X00,0X13,0X80,0X40,0X88,0X3F,0XFF,0XFF, -0X4F,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X0F,0XE0,0X23,0XE7,0XC2,0X00,0X8C,0X0F, -0XFF,0XFF,0X4F,0XFF,0XF8,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X06,0X4F,0X8F,0XE3,0X00, -0XFE,0X03,0XFF,0XFE,0X47,0XFF,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X7C,0X9C,0X3F, -0XF3,0X00,0XFF,0X80,0XFF,0XFE,0X13,0XFC,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF9, -0XB1,0XFF,0XF1,0X80,0X7F,0XC0,0X3F,0XFC,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF1,0X07,0XFF,0XF9,0XC0,0X7F,0XF0,0X0F,0XFC,0X00,0X03,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF3,0X1F,0XFF,0XF9,0XE0,0X3F,0XFE,0X01,0XF0,0X00,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0X3F,0XFF,0XFC,0XF0,0X3F,0XFF,0X00,0X00,0X3F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0X3F,0XFF,0XFC,0X78,0X1F,0XFF,0XC0,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, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC6,0X3F,0XFF,0XFC,0X7E,0X1F,0XFF, -0XF0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC6,0X3F,0XFF,0XFC,0X3F, -0X8F,0XFF,0XF8,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XCE,0X3F,0XFF, -0XFC,0X9F,0XC7,0XFF,0XFC,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XCC, -0X9F,0XFF,0XFC,0X9F,0XE7,0XFF,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC8,0XCF,0XFF,0XFD,0X9F,0XE0,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XC0,0XE7,0XFC,0X79,0XDF,0XF0,0X7F,0XFE,0X3F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC1,0XF0,0XF0,0X73,0XDF,0XF0,0X7F,0XFC,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC1,0XFC,0X03,0X07,0XDF,0XF0,0XFF,0XF8,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC1,0XFF,0XFF,0XDF,0XDF,0XF2,0X3F, -0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC1,0XFF,0XFF,0XFF,0XDF, -0XF3,0X0F,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC1,0XFF,0XFF, -0XFF,0XDF,0XF3,0X80,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC1, -0XFF,0XFF,0XFF,0X9F,0XF3,0XE0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XE1,0XFF,0XFF,0XFF,0X9F,0XF3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0X9F,0XF3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0X9F,0XF3,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFE,0X7F,0XFF,0X9F,0XF3,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0XFF,0X7F,0XFF,0X8F,0XE7,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X3F,0XFF,0XFF,0X8F, -0XE7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF9,0X0F,0X80, -0X0F,0X8F,0XCF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8, -0XC0,0X00,0X01,0X87,0XCF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFC,0XF8,0X3F,0XE0,0X17,0X9F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFC,0XFF,0XFF,0XFC,0X12,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X7F,0XFF,0XFE,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X7F,0XFF,0XFF,0X81,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X87,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC1,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFC,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF,0XFF,0X1F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0XFF,0XFC,0X0F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBF,0XFF,0XFF,0XFF,0XF8, -0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X9F,0XFF,0XFF, -0XFF,0XF1,0XC3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X9F, -0XFF,0XFF,0XFF,0XF3,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XDF,0XFF,0XFF,0XFF,0XF3,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XE4,0X73,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XE0,0X33,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0XC0,0X13,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XCF,0XFF,0XFF,0XFF,0X87,0X03,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XEF,0XFF,0XFF,0XFF,0X1F, -0X83,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0XFF,0XFF, -0XFE,0X3F,0XC3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7, -0XFF,0XFF,0XFC,0X7F,0XC7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFB,0XFF,0XFF,0XF9,0XFF,0XE7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF9,0XFF,0XFF,0XE3,0XFF,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X7F,0XFF,0XCF,0XFF,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X1F,0XFF,0X1F,0XFF,0XF3,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC7,0XFC,0X7F,0XFF,0XF3,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X01,0XFF,0XFF, -0XF3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XEF, -0XFF,0XFF,0XF9,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X87,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0XC1,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -}; - - - -const unsigned char gImage_5in83[] = { /* 0X00,0X01,0X58,0X02,0XC0,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, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,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,0X0F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,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,0X0F,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,0XF8,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,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFC,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,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,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, -0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X80,0X00,0X00,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,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8, -0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFE,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X01,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XE0,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,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,0XC0,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X07,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,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,0XFC,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X80,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,0XC0,0X1F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,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,0XF0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0XFF,0XFF,0XFF,0XF8,0X03,0XFF,0XFF,0X00,0X7F,0XFF,0X80,0X7F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFC,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE, -0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XE0,0X00, -0XFF,0XFC,0X00,0X3F,0XFF,0X80,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X03,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07, -0XFF,0XFF,0XFF,0XFC,0X00,0X01,0XFF,0XFF,0XFF,0X80,0X00,0X7F,0XF8,0X00,0X1F,0XFF, -0X80,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XF8,0X00, -0X01,0XFF,0XFF,0XFF,0X01,0XC0,0X7F,0XF0,0X00,0X1F,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00, -0XFE,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XF8,0X00,0X03,0XFF,0XFF,0XFF,0X03, -0XE0,0X3F,0XE0,0X60,0X0F,0XFF,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X1F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0X80,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X07,0XFF,0XFF,0XFF,0XF8,0X00,0X03,0XFF,0XFF,0XFE,0X07,0XF0,0X3F,0XC1,0XF0,0X0F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X1C,0X0F,0XC0,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XF0, -0X00,0X1F,0XFF,0XFF,0XFC,0X0F,0XF0,0X3F,0XC3,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X40,0X0F,0XE0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFC, -0X0F,0XF0,0X3F,0XC7,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X81,0XC0,0X0F,0XE0,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X07,0XFF,0XFF,0XFF,0XF0,0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XF0,0X3F,0XFF,0XF8, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X3F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XC0,0X1F,0XE0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF, -0XE0,0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XE0,0X7F,0XFF,0XF0,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE, -0X07,0XF0,0X1F,0XE0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XE0,0XFF,0XFF,0XFF,0XFF, -0XFC,0X07,0XC0,0X7F,0XFF,0XF0,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XF0,0X1F,0XE0,0X1F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFE,0X0F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XE0,0X3F,0XFF,0XFF,0XFF,0XFC,0X07,0X80,0XFF,0XFF, -0XE0,0X3F,0XFC,0X07,0XFE,0X07,0XE0,0X7F,0XFF,0X80,0X3F,0XE0,0X7E,0X07,0XFF,0XFF, -0XFF,0XF8,0X07,0XFF,0XFF,0XFC,0X1F,0XF0,0X1F,0XE0,0X1F,0XFF,0XF8,0X7F,0XE0,0X7F, -0X03,0XFF,0XF0,0X0F,0XFF,0X03,0X00,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF, -0XFF,0XE0,0X0F,0XFF,0XFF,0XFF,0XFC,0X03,0X00,0XFF,0XFF,0XE0,0X7F,0XF0,0X07,0XF0, -0X07,0X80,0X3F,0XFE,0X00,0X1F,0XC0,0X78,0X03,0XFF,0XFF,0XFF,0XE0,0X03,0XFF,0XFF, -0XF8,0X3F,0XE0,0X3F,0XE0,0X3F,0XFC,0X00,0X7F,0X80,0X38,0X01,0XFF,0XC0,0X07,0XFC, -0X02,0X00,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XE0,0X07,0XFF,0XFF, -0XFF,0XFC,0X00,0X01,0XFF,0XFF,0XC0,0XFF,0XC0,0X07,0XE0,0X07,0X00,0X3F,0XFC,0X00, -0X1F,0XC0,0X70,0X03,0XFF,0XFF,0XFF,0XC0,0X03,0XFF,0XFF,0XF8,0X3F,0XE0,0X3F,0XC0, -0X3F,0XE0,0X00,0X7E,0X00,0X30,0X01,0XFF,0X80,0X07,0XF0,0X00,0X00,0XFF,0XFE,0X0F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XE0,0X01,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF, -0XFF,0X81,0XFF,0X80,0X07,0XC0,0X04,0X00,0X3F,0XF0,0X00,0X1F,0XC0,0XC0,0X03,0XFF, -0XFF,0XFF,0X82,0X01,0XFF,0XFF,0XF8,0X7F,0XE0,0X3F,0X80,0X3F,0XC0,0X00,0XFC,0X00, -0X20,0X00,0XFF,0X04,0X03,0XC0,0X04,0X07,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF, -0XFF,0XFF,0XE0,0X01,0XFF,0XFF,0XFF,0XFE,0X00,0X0F,0XFF,0XFF,0X03,0XFF,0X00,0X07, -0X00,0X08,0X00,0X3F,0XE0,0X60,0X1F,0XC0,0X80,0X03,0XFF,0XFF,0XFF,0X07,0X01,0XFF, -0XFF,0XF0,0X7F,0XE0,0X3F,0X80,0X7F,0X00,0X00,0XF8,0X00,0X00,0X00,0XFE,0X0E,0X03, -0X80,0X00,0X1F,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XF8,0X00,0XFF, -0XFF,0XFF,0XFF,0X00,0X1F,0XFF,0XFC,0X01,0XFE,0X00,0X0E,0X04,0X00,0X20,0X3F,0XE0, -0XF8,0X1F,0X80,0X02,0X03,0XFF,0XFF,0XFE,0X0F,0X01,0XFF,0XFF,0XF0,0XFF,0XC0,0X7F, -0X00,0XFE,0X03,0X80,0XF0,0X00,0X03,0X80,0XFC,0X1E,0X03,0X00,0X00,0X7F,0XFF,0XFE, -0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFC,0X00,0XFF,0XFF,0XFF,0XFF,0X00,0X3F, -0XFF,0XF0,0X00,0X7E,0X18,0X0E,0X18,0X00,0XE0,0X3F,0XC1,0XFF,0XFF,0X80,0X0C,0X07, -0XFF,0XFF,0XFC,0X0F,0X01,0XFF,0XFF,0XF0,0XFF,0XC0,0X7C,0X01,0XFC,0X0F,0X80,0XF0, -0XC0,0X0F,0X80,0XF8,0X1E,0X03,0X0C,0X00,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07, -0XFF,0XFF,0XFF,0XFF,0X00,0X7F,0XFF,0XFF,0XFF,0X00,0X1F,0XFF,0XE0,0X00,0X3F,0XF8, -0X0F,0XF8,0X01,0XC0,0X7F,0X81,0XFF,0XFF,0X80,0X1C,0X07,0XFF,0XFF,0XFC,0X1E,0X03, -0XFF,0XFF,0XF0,0XFF,0XC0,0X70,0X03,0XF8,0X1F,0X01,0XF1,0XC0,0X1F,0X80,0XF8,0X3C, -0X07,0X9C,0X01,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0X80, -0X7F,0XFF,0XFF,0XFC,0X00,0X0F,0XFF,0XE0,0X00,0X3F,0XF0,0X1F,0XF8,0X03,0XC0,0X7F, -0X83,0XFF,0XFF,0X80,0X3C,0X07,0XFF,0XFF,0XF8,0X1C,0X03,0XFF,0XFF,0XF0,0XFF,0XC0, -0X00,0X0F,0XF8,0X3F,0X01,0XFF,0XC0,0X3F,0X80,0XF0,0X38,0X07,0XFC,0X03,0XFF,0XFF, -0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XC0,0X7F,0XFF,0XFF,0XF8,0X00, -0X0F,0XFF,0XE3,0X80,0X1F,0XF0,0X1F,0XF8,0X07,0XC0,0X7F,0X03,0XFF,0XFF,0X80,0X7C, -0X07,0XFF,0XFF,0XF8,0X18,0X07,0XFF,0XFF,0XF0,0XFF,0X80,0X00,0X3F,0XF0,0X7F,0X01, -0XFF,0XC0,0X3F,0X80,0XF0,0X30,0X0F,0XF8,0X07,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X07,0XFF,0XFF,0XFF,0XFF,0XC0,0X7F,0XFF,0XFF,0XE0,0X30,0X07,0XFF,0XFF,0XC0,0X1F, -0XF0,0X1F,0XF0,0X0F,0X80,0XFF,0X03,0XFF,0XFF,0X00,0XF8,0X0F,0XFF,0XFF,0XF0,0X30, -0X0F,0XFF,0XFF,0XF0,0XFF,0X80,0X01,0XFF,0XE0,0X7F,0X03,0XFF,0X80,0X7F,0X80,0XE0, -0X60,0X1F,0XF8,0X07,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF, -0XE0,0X7F,0XFF,0XFF,0XC0,0X78,0X07,0XFF,0XFF,0XE0,0X1F,0XE0,0X1F,0XF0,0X1F,0X80, -0XFE,0X07,0XFF,0XFF,0X01,0XF8,0X0F,0XFF,0XFF,0XF0,0X20,0X1F,0XFF,0XFF,0XF0,0XFF, -0X80,0XFF,0XFF,0XE0,0XFE,0X03,0XFF,0X80,0XFF,0X81,0XE0,0X40,0X3F,0XF8,0X0F,0XFF, -0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XE0,0X7F,0XFF,0XFF,0X80, -0XF8,0X03,0XFF,0XFF,0XF0,0X1F,0XE0,0X3F,0XF0,0X1F,0X80,0XFE,0X07,0XFF,0XFF,0X01, -0XF8,0X0F,0XFF,0XFF,0XE0,0X00,0X3F,0XC0,0X00,0X30,0X7F,0X80,0XFF,0XFF,0XC0,0XFE, -0X03,0XFF,0X80,0XFF,0X81,0XC0,0X00,0X7F,0XF8,0X0F,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XE0,0X7F,0XFF,0XFF,0X01,0XFC,0X03,0XFF,0XFF,0XF0, -0X1F,0XE0,0X3F,0XF0,0X1F,0X80,0XFC,0X07,0XFF,0XFF,0X01,0XF8,0X1F,0XFF,0XFF,0XE0, -0X00,0XFF,0X80,0X00,0X30,0X3F,0X01,0XFF,0XFF,0X81,0XFE,0X03,0XFF,0X80,0XFF,0X01, -0XC0,0X01,0XFF,0XF0,0X1F,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF, -0XFF,0XE0,0X7F,0XFF,0XFE,0X03,0XFE,0X03,0XFF,0XFF,0XF0,0X1F,0XE0,0X3F,0XE0,0X3F, -0X01,0XFC,0X07,0XFF,0XFE,0X03,0XF0,0X1F,0XFF,0XFF,0XE0,0X03,0XFF,0X80,0X00,0X30, -0X1F,0X01,0XFF,0XFF,0X81,0XFE,0X07,0XFF,0X01,0XFF,0X01,0XC0,0X07,0XFF,0XF0,0X1F, -0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XE0,0X7F,0XFF,0XFE, -0X03,0XFE,0X03,0XFF,0XFF,0XF0,0X1F,0XC0,0X7F,0XE0,0X3F,0X01,0XFC,0X0F,0XFF,0XFE, -0X03,0XF0,0X1F,0XFF,0XFF,0XC0,0X0F,0XFF,0X80,0X00,0X38,0X0F,0X01,0XFF,0XFF,0X81, -0XFC,0X07,0XFF,0X01,0XFF,0X03,0X80,0X1F,0XFF,0XF0,0X1F,0XFF,0XFF,0XFE,0X0F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XE0,0XFF,0XFF,0XFC,0X07,0XFF,0X03,0XFF,0XFF, -0XE0,0X1F,0XC0,0X7F,0XE0,0X3F,0X01,0XF8,0X0F,0XFF,0XFE,0X03,0XF0,0X1F,0XFF,0XFF, -0XC0,0X3F,0XFF,0XFF,0XFF,0XF8,0X07,0X01,0XFF,0XFF,0X01,0XFC,0X07,0XFF,0X01,0XFE, -0X03,0X80,0X7F,0XFF,0XF0,0X3F,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF, -0XFF,0XFF,0XC0,0XFF,0XFF,0XFC,0X07,0XFF,0X03,0XFF,0XFF,0XE0,0X3F,0XC0,0X7F,0XE0, -0X7E,0X03,0XF8,0X0F,0XFF,0XFE,0X07,0XE0,0X3F,0XFF,0XFF,0XC0,0X7F,0XFF,0XFF,0XFF, -0XFC,0X06,0X03,0XFF,0XFF,0X03,0XF8,0X07,0XFF,0X01,0XFE,0X07,0X80,0XFF,0XFF,0XE0, -0X3F,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF, -0XFC,0X07,0XFF,0X03,0XFF,0XFF,0XC0,0X3F,0XC0,0X7F,0XE0,0X7E,0X03,0XF8,0X0F,0XFF, -0XFC,0X07,0XE0,0X3F,0XFF,0XFF,0XC0,0X7F,0XFF,0XFF,0XFF,0XFE,0X0E,0X03,0XFF,0XFF, -0X03,0XF8,0X0F,0XFE,0X03,0XFE,0X07,0X80,0XFF,0XFF,0XE0,0X3F,0XFF,0XFF,0XFE,0X0F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0X81,0XFF,0X0F,0XFC,0X0F,0XFE,0X03,0XFF, -0XFF,0XC0,0X7F,0X80,0XFF,0XC0,0X7E,0X03,0XF8,0X0F,0XFF,0XFC,0X07,0XE0,0X3F,0XFF, -0XFF,0XC0,0X7F,0X87,0XFF,0XFF,0XFF,0XFE,0X03,0XFF,0XFF,0X03,0XF0,0X0F,0XFE,0X03, -0XFC,0X0F,0X80,0XFF,0X0F,0XE0,0X3F,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF, -0XFF,0XFF,0XFF,0X83,0XFE,0X07,0XFC,0X07,0XFE,0X07,0XFF,0XFF,0X80,0XFF,0X80,0XFF, -0XC0,0X7E,0X03,0X08,0X0F,0XF8,0XFC,0X07,0XE0,0X30,0XFF,0XFF,0XC0,0X7E,0X07,0XFF, -0XFF,0XFF,0XFE,0X03,0XFF,0XFE,0X03,0XE0,0X0C,0X1E,0X03,0XFC,0X0F,0X80,0XFC,0X0F, -0XE0,0X7F,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0X07,0XFC, -0X03,0XFC,0X07,0XFC,0X07,0XFF,0XFF,0X01,0XFF,0X80,0XC3,0XC0,0X7E,0X06,0X08,0X07, -0XF0,0X7C,0X0F,0XE0,0X60,0XFF,0XFF,0XC0,0X7C,0X07,0XFF,0XFF,0XFF,0XFC,0X07,0XFF, -0XFE,0X01,0XC0,0X08,0X1E,0X03,0XF8,0X1F,0X80,0XF8,0X0F,0XC0,0X7F,0XFF,0XFF,0XFE, -0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFE,0X07,0XFC,0X03,0XFC,0X07,0XFC,0X0F, -0XC0,0XFE,0X01,0XFF,0X80,0X83,0XC0,0XFC,0X04,0X08,0X07,0XC0,0X78,0X0F,0XC0,0X40, -0XFF,0XFF,0XC0,0X30,0X1F,0XFF,0XFF,0XFF,0XFC,0X07,0XFF,0XFE,0X01,0X80,0X00,0X3E, -0X07,0XF0,0X3F,0X80,0X60,0X3F,0XC0,0X7F,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07, -0XFF,0XFF,0X83,0XF8,0X0F,0XFC,0X03,0XFE,0X03,0XF8,0X1F,0XC0,0X7C,0X07,0XFF,0X80, -0X07,0X80,0XFC,0X00,0X18,0X03,0X01,0XF8,0X0F,0XC0,0X01,0XFF,0XFF,0XC0,0X00,0X3F, -0XFF,0XFF,0XFF,0XF8,0X07,0XFF,0XFE,0X00,0X00,0X00,0X7C,0X03,0XE0,0X7F,0X80,0X00, -0X7F,0XC0,0X7F,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0X80,0XE0,0X3F, -0XFC,0X03,0XFE,0X00,0XE0,0X3F,0XC0,0X10,0X0F,0XFF,0X80,0X0F,0X80,0XFC,0X00,0X3C, -0X00,0X03,0XF8,0X0F,0XC0,0X03,0XFF,0XFF,0XC0,0X00,0X7F,0XFF,0XFF,0XFF,0XF0,0X0F, -0XC7,0XFF,0X00,0X00,0X00,0XFC,0X00,0XC0,0XFF,0X80,0X00,0XFF,0XC0,0X7F,0XFF,0XFF, -0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0X80,0X00,0X7F,0XFC,0X03,0XFF,0X00,0X00, -0X7F,0XC0,0X00,0X1F,0XFF,0X80,0X1F,0X80,0XFC,0X00,0XFC,0X00,0X0F,0XF8,0X0F,0XC0, -0X0F,0XFF,0XFF,0XC0,0X00,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X07,0XFF,0X00,0X00,0X03, -0XFC,0X00,0X01,0XFF,0X80,0X01,0XFF,0XC0,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X07,0XFF,0XFF,0X80,0X01,0XFF,0XFC,0X07,0XFF,0X80,0X00,0XFF,0XE0,0X00,0X7F,0XFF, -0X80,0X7F,0X81,0XFE,0X01,0XFE,0X00,0X3F,0XF8,0X1F,0XE0,0X1F,0XFF,0XFF,0XE0,0X03, -0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X07,0XFF,0X00,0X30,0X07,0XFC,0X00,0X03,0XFF,0XC0, -0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XC0,0X0F, -0XFF,0XFE,0X0F,0XFF,0XF0,0X07,0XFF,0XF8,0X03,0XFF,0XFF,0XC1,0XFF,0XFF,0XFE,0X07, -0XFF,0X00,0XFF,0XFF,0XFF,0XE0,0X7F,0XFF,0XFF,0XF0,0X1F,0XFF,0XFF,0XFF,0XFF,0X07, -0X00,0X0F,0XFF,0XC0,0XF8,0X1F,0XF8,0X00,0X0F,0XFF,0XE0,0X3F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X3F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,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,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80, -0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC, -0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFC,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X1F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00, -0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,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,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,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, -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,0XC0,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,0X7F,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,0XE0,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,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,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,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00,0XFF, -0XF0,0X03,0XF8,0X7F,0XFF,0XE1,0XFF,0XFF,0X80,0X1F,0X80,0X1F,0XC0,0X00,0X00,0X00, -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,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X7F,0XF0,0X01,0XF0,0X3F,0XFF, -0XC0,0XFF,0XFF,0X00,0X1F,0X80,0X0F,0X80,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XC0,0X00,0X00,0X00,0X00,0X7F,0XF0,0X01,0XF0,0X3F,0XFF,0XC0,0XFF,0XFF,0X00,0X1F, -0X80,0X0F,0X80,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00, -0X7F,0XF0,0X01,0XF0,0X3F,0XFF,0XC0,0XFF,0XFF,0X00,0X1F,0X80,0X0F,0X80,0X00,0X00, -0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X7F,0XF0,0X01,0XF0,0X3F, -0XFF,0XC0,0XFF,0XFF,0X00,0X1F,0X80,0X0F,0X80,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC0,0X00,0X00,0X00,0X00,0X7F,0XF0,0X01,0XF0,0X3F,0XFF,0XC0,0XFF,0XFF,0X00, -0X1F,0X80,0X0F,0X80,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00,0X00,0X00,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,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF, -0XE0,0X7F,0XF0,0X7E,0X0F,0XC1,0XFF,0XC0,0XFF,0XE0,0X00,0X00,0X03,0XFF,0X81,0XFF, -0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XE0,0X7F,0XF0,0X7E,0X0F, -0XC1,0XFF,0XC0,0XFF,0XE0,0X00,0X00,0X03,0XFF,0X81,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XE0,0X7F,0XF0,0X7E,0X0F,0XC1,0XFF,0XC0,0XFF,0XE0, -0X00,0X00,0X03,0XFF,0X81,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF, -0XFF,0XE0,0X7F,0XF0,0X7E,0X0F,0XC1,0XFF,0XC0,0XFF,0XE0,0X00,0X00,0X03,0XFF,0X81, -0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80, -0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XE0,0X7F,0XF0,0X7E, -0X0F,0XC1,0XFF,0XC0,0XFF,0XE0,0X00,0X00,0X03,0XFF,0X81,0XFF,0XFF,0XFF,0XC0,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X3F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE, -0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XC0,0XFC,0X00,0X07,0XE0,0X7F,0XF0,0X7E,0X0F,0XC0,0X0F,0XC0,0X00, -0X00,0X03,0XE0,0X03,0XFF,0X81,0XF8,0X00,0X0F,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X1F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8, -0X00,0X03,0XE0,0X7F,0XF0,0X7E,0X0F,0XC0,0X07,0XC0,0X00,0X00,0X03,0XE0,0X03,0XFF, -0X81,0XF0,0X00,0X07,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8, -0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00,0X03,0XE0,0X7F,0XF0, -0X7E,0X0F,0XC0,0X07,0XC0,0X00,0X00,0X03,0XE0,0X03,0XFF,0X81,0XF0,0X00,0X07,0XC0, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00,0X03,0XE0,0X7F,0XF0,0X7E,0X0F,0XC0,0X07,0XC0, -0X00,0X00,0X03,0XE0,0X03,0XFF,0X81,0XF0,0X00,0X07,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X03,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0XF8,0X00,0X03,0XE0,0X7F,0XF0,0X7E,0X0F,0XC0,0X07,0XC0,0X00,0X00,0X03,0XE0,0X03, -0XFF,0X81,0XF0,0X00,0X07,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XC0,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00,0X03,0XE0,0X7F, -0XF0,0X7E,0X0F,0XC0,0X07,0XC0,0X00,0X00,0X03,0XE0,0X03,0XFF,0X81,0XF0,0X00,0X07, -0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X80,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00,0X03,0XE0,0X7F,0XF0,0X01,0XF0,0X01,0XF8, -0X00,0XFF,0XFF,0XFF,0XE0,0X03,0XFF,0X81,0XF0,0X00,0X07,0XC0,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X81,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XC0,0XF8,0X00,0X03,0XE0,0X7F,0XF0,0X01,0XF0,0X01,0XF8,0X00,0XFF,0XFF,0XFF,0XE0, -0X03,0XFF,0X81,0XF0,0X00,0X07,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00,0X03,0XE0, -0X7F,0XF0,0X01,0XF0,0X01,0XF8,0X00,0XFF,0XFF,0XFF,0XE0,0X03,0XFF,0X81,0XF0,0X00, -0X07,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00,0X03,0XE0,0X7F,0XF0,0X01,0XF0,0X01, -0XF8,0X00,0XFF,0XFF,0XFF,0XE0,0X03,0XFF,0X81,0XF0,0X00,0X07,0XC0,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC0,0XF8,0X00,0X03,0XE0,0X7F,0XF0,0X01,0XF0,0X01,0XF8,0X00,0XFF,0XFF,0XFF, -0XE0,0X03,0XFF,0X81,0XF0,0X00,0X07,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFC,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00,0X03, -0XE0,0X7E,0X00,0X01,0XF0,0X01,0XF8,0X1F,0XFC,0X00,0X00,0X1F,0X03,0XFF,0X81,0XF0, -0X00,0X07,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00,0X03,0XE0,0X7C,0X00,0X01,0XF0, -0X01,0XF8,0X3F,0XF8,0X00,0X00,0X1F,0X83,0XFF,0X81,0XF0,0X00,0X07,0XC0,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFC,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XC0,0XF8,0X00,0X03,0XE0,0X7C,0X00,0X01,0XF0,0X01,0XF8,0X3F,0XF8,0X00, -0X00,0X1F,0X83,0XFF,0X81,0XF0,0X00,0X07,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00, -0X03,0XE0,0X7C,0X00,0X01,0XF0,0X01,0XF8,0X3F,0XF8,0X00,0X00,0X1F,0X83,0XFF,0X81, -0XF0,0X00,0X07,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X3F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00,0X03,0XE0,0X7C,0X00,0X01, -0XF0,0X01,0XF8,0X3F,0XF8,0X00,0X00,0X1F,0X83,0XFF,0X81,0XF0,0X00,0X07,0XC0,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XC0,0XFC,0X00,0X03,0XE0,0X7C,0X00,0X01,0XF0,0X01,0XF8,0X3F,0XF8, -0X00,0X00,0X1F,0X83,0XFF,0X81,0XF0,0X00,0X0F,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF, -0XFF,0XFF,0XE0,0X7F,0XF0,0X01,0XFF,0XC1,0XF8,0X3F,0XFF,0XFF,0XFC,0X1F,0XFC,0X0F, -0X81,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XE0,0X7F,0XF0, -0X01,0XFF,0XC1,0XF8,0X3F,0XFF,0XFF,0XFC,0X1F,0XFC,0X0F,0X81,0XFF,0XFF,0XFF,0XC0, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XE0,0X7F,0XF0,0X01,0XFF,0XC1,0XF8,0X3F, -0XFF,0XFF,0XFC,0X1F,0XFC,0X0F,0X81,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0XFF,0XFF,0XFF,0XE0,0X7F,0XF0,0X01,0XFF,0XC1,0XF8,0X3F,0XFF,0XFF,0XFC,0X1F,0XFC, -0X0F,0X81,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XE0,0X7F, -0XF0,0X01,0XFF,0XC1,0XF8,0X3F,0XFF,0XFF,0XFC,0X1F,0XFC,0X0F,0X81,0XFF,0XFF,0XFF, -0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X7E,0X0F,0X81,0XF8,0X3E,0X07, -0XC1,0XFC,0X3F,0X83,0XE0,0XFC,0X0F,0X80,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XC0,0X00,0X00,0X00,0X00,0X7C,0X0F,0X81,0XF0,0X3E,0X07,0XC0,0XF8,0X1F,0X03,0XE0, -0X7C,0X0F,0X80,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00, -0X7C,0X0F,0X81,0XF0,0X3E,0X07,0XC0,0XF8,0X1F,0X03,0XE0,0X7C,0X0F,0X80,0X00,0X00, -0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X7C,0X0F,0X81,0XF0,0X3E, -0X07,0XC0,0XF8,0X1F,0X03,0XE0,0X7C,0X0F,0X80,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC0,0X00,0X00,0X00,0X00,0X7C,0X0F,0X81,0XF0,0X3E,0X07,0XC0,0XF8,0X1F,0X03, -0XE0,0X7C,0X0F,0X80,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00, -0X00,0X7C,0X0F,0X81,0XF0,0X3E,0X07,0XC0,0XF8,0X1F,0X03,0XE0,0X7C,0X0F,0X80,0X00, -0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X7E,0X00, -0X3E,0X07,0XFF,0X07,0XE0,0X03,0XE0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X7E,0X00,0X3E,0X07,0XFF,0X07,0XE0, -0X03,0XE0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFC,0X00,0X7E,0X00,0X3E,0X07,0XFF,0X07,0XE0,0X03,0XE0,0X03,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X7E, -0X00,0X3E,0X07,0XFF,0X07,0XE0,0X03,0XE0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X7E,0X00,0X3E,0X07,0XFF,0X07, -0XE0,0X03,0XE0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC, -0X00,0XFF,0XF0,0X00,0X0F,0XFE,0X07,0XC0,0X00,0X3F,0X00,0X1F,0XFC,0X1F,0XFF,0XF0, -0X03,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X0F,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0XFF,0XE0,0X00,0X0F, -0XFE,0X0F,0XC0,0X00,0X3F,0X00,0X1F,0XFC,0X1F,0XFF,0XF0,0X01,0XF0,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF, -0XFF,0XF3,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0XFF,0XE0,0X00,0X0F,0XFE,0X0F,0XC0,0X00,0X3F, -0X00,0X1F,0XFC,0X1F,0XFF,0XF0,0X01,0XF0,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XE0,0XFC,0X1F,0XF8,0X3F,0XFF,0XFF,0XFE, -0X7F,0XFC,0XFF,0X83,0XFF,0XFF,0X80,0X3F,0X8F,0XFF,0XFF,0XFF,0XE3,0XFF,0X07,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF8,0X00,0XFF,0XE0,0X00,0X0F,0XFE,0X0F,0XC0,0X00,0X3F,0X00,0X1F,0XFC,0X1F,0XFF, -0XF0,0X01,0XF0,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X7F,0XFF,0XFF,0X87,0XF1,0X8F,0XE3,0X1F,0XFF,0XFF,0XFC,0X7F,0XF8,0XFE,0X30,0XFF, -0XFE,0X3E,0X1F,0X8F,0XFF,0XFF,0XFF,0XE3,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0XFF,0XE0,0X00, -0X0F,0XFE,0X0F,0XC0,0X00,0X3F,0X00,0X1F,0XFC,0X1F,0XFF,0XF0,0X01,0XF0,0X3F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFE,0X3F,0XF1, -0XC7,0XE3,0X8F,0XFF,0XFF,0XF0,0X7F,0XE0,0XFE,0X78,0XFF,0XF8,0XFF,0X8F,0XFF,0XFF, -0XFF,0XFF,0XC7,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0XFF,0XE0,0X00,0X0F,0XFE,0X0F,0XC0,0X00, -0X3F,0X00,0X1F,0XFC,0X1F,0XFF,0XF0,0X01,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFC,0X7F,0XE3,0XC3,0XC7,0X87,0XFF,0XFF, -0XE0,0XFF,0XC1,0XFC,0X78,0XFF,0XF1,0X07,0X87,0XFF,0XFF,0XFF,0XFF,0XC7,0XFF,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XC0,0XF8,0X00,0XFC,0X1F,0XFF,0XF0,0X7E,0X0F,0XC0,0X00,0X00,0XFF,0XE0,0XFF,0XFF, -0X83,0XF0,0X01,0XFF,0XFF,0XF8,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X7F,0XFF,0XF8,0XFF,0XC3,0XC3,0X87,0X87,0XFF,0XFF,0XC0,0XFF,0X81,0XFC,0X78, -0XFF,0XE7,0X87,0X87,0XFF,0XFF,0XFF,0XFF,0XC7,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00,0XFC,0X1F, -0XFF,0XF0,0X7E,0X0F,0XC0,0X00,0X00,0XFF,0XE0,0XFF,0XFF,0X83,0XF0,0X01,0XFF,0XFF, -0XF8,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XF0,0XFF, -0XC7,0XC3,0X8F,0X87,0XFF,0XC7,0X88,0XFF,0X11,0XFC,0X71,0XFF,0XC7,0X87,0X87,0XFF, -0XFF,0X8F,0XFF,0X87,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00,0XFC,0X1F,0XFF,0XF0,0X7E,0X0F,0XC0, -0X00,0X00,0XFF,0XE0,0XFF,0XFF,0X83,0XF0,0X01,0XFF,0XFF,0XF8,0X00,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XF1,0XFF,0X87,0XC3,0X0F,0X87,0XC7, -0X07,0X10,0XFE,0X21,0XFC,0X23,0XFF,0XCF,0X8F,0X8F,0X0F,0X8E,0X0F,0X0F,0X8F,0XFF, -0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC0,0XF8,0X00,0XFC,0X1F,0XFF,0XF0,0X7E,0X0F,0XC0,0X00,0X00,0XFF,0XE0,0XFF, -0XFF,0X83,0XF0,0X01,0XFF,0XFF,0XF8,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X7F,0XFF,0XE0,0X0F,0X87,0XC3,0X0F,0X87,0X82,0X3F,0X31,0XFE,0X63,0XFE, -0X07,0XFF,0X9F,0X8F,0X0C,0X0F,0X04,0X7C,0X47,0X8F,0XFF,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00,0XFC, -0X1F,0XFF,0XF0,0X7E,0X0F,0XC0,0X00,0X00,0XFF,0XE0,0XFF,0XFF,0X83,0XF0,0X01,0XFF, -0XFF,0XF8,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XE0, -0X87,0X87,0XC3,0X0F,0X86,0X00,0X7E,0X71,0XFC,0XE3,0XFE,0X0F,0XFF,0X9F,0X0E,0X18, -0X1C,0X00,0XFC,0XC7,0X8F,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X1F,0X00,0X00,0X03,0XFF,0X81,0XF0, -0X00,0XF8,0X1F,0X00,0X1F,0X00,0X00,0X00,0X00,0X7F,0XFF,0XC1,0XF8,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XC3,0XC3,0X8F,0XC3,0X1F,0X87, -0XE0,0XFC,0XF1,0XF9,0XE3,0XFC,0X07,0XFF,0X9F,0X0C,0X33,0X1F,0XC1,0XF8,0XC7,0X8F, -0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X00,0X1F,0X00,0X00,0X03,0XFF,0X81,0XF0,0X01,0XF8,0X3F,0X00,0X1F, -0X00,0X00,0X00,0X00,0X7F,0XFF,0XC1,0XF8,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF0,0X7F,0XFF,0XC3,0XC3,0X0F,0XC6,0X1F,0X8F,0XE1,0XF9,0XE1,0XF3,0XC3, -0XF8,0X87,0XFF,0X9F,0X00,0XFE,0X1F,0XC3,0XF0,0X8F,0X1F,0XFF,0X07,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X1F, -0X00,0X00,0X03,0XFF,0X81,0XF0,0X01,0XF8,0X3F,0X00,0X1F,0X00,0X00,0X00,0X00,0X7F, -0XFF,0XC1,0XF8,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF, -0XC3,0XC3,0X0F,0XC6,0X1F,0X8F,0XE3,0XF9,0XE3,0XF3,0XC7,0XF1,0XC3,0XFF,0X9F,0X1F, -0XFE,0X3F,0XC7,0XF0,0X1F,0X1F,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X1F,0X00,0X00,0X03,0XFF,0X81, -0XF0,0X01,0XF8,0X3F,0X00,0X1F,0X00,0X00,0X00,0X00,0X7F,0XFF,0XC1,0XF8,0X00,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XC3,0XC3,0X0F,0X86,0X1F, -0X0F,0XE1,0XF0,0X00,0XE0,0X01,0XE3,0XE3,0XFF,0X8E,0X1F,0XFE,0X3F,0XC3,0XF0,0X7F, -0X1F,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X00,0X1F,0X00,0X00,0X03,0XFF,0X81,0XF0,0X01,0XF8,0X3F,0X00, -0X1F,0X00,0X00,0X00,0X00,0X7F,0XFF,0XC1,0XF8,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XC3,0XC3,0X0F,0X8E,0X1F,0X1F,0XE1,0XE0,0X00,0XC0, -0X01,0XC7,0XE3,0XFF,0XC6,0X1F,0XFC,0X3F,0XC3,0XE0,0XFF,0X1F,0XFF,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00, -0X1F,0X00,0X00,0X03,0XFF,0X81,0XF0,0X01,0XF8,0X3F,0X00,0X1F,0X00,0X00,0X00,0X00, -0X7F,0XFF,0X81,0XF8,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F, -0XFF,0XC3,0XC7,0X0F,0X8E,0X1F,0X1F,0XC1,0XFF,0XC3,0XFF,0X87,0XC7,0XE3,0XFF,0XE6, -0X3F,0XFC,0X7F,0X83,0XE1,0XFE,0X3F,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X07,0XFF,0X03,0XFF,0XFF,0XF0, -0X7E,0X00,0X3F,0XF8,0X3F,0X07,0XE0,0X00,0X00,0X03,0XF0,0X00,0X00,0X01,0XFF,0XC0, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XC3,0XC7,0X8F,0X1F, -0X1E,0X3F,0X91,0XFF,0XC7,0XFF,0X8F,0XC7,0XE7,0XFF,0XFE,0X3F,0XF8,0X4F,0X23,0XE1, -0XE6,0X33,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC0,0X07,0XFF,0X03,0XFF,0XFF,0XF0,0X7E,0X00,0X3F,0XF8,0X3F, -0X07,0XE0,0X00,0X00,0X03,0XF0,0X00,0X00,0X01,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XE3,0X87,0X87,0X1F,0X0E,0X3F,0X30,0XFF,0XC7, -0XFF,0X8F,0XC7,0XC7,0XFF,0XFC,0X3F,0XF8,0X0E,0X61,0XE1,0X8E,0X27,0XFF,0X07,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X07,0XFF,0X03,0XFF,0XFF,0XF0,0X7E,0X00,0X3F,0XF8,0X3F,0X07,0XE0,0X00,0X00,0X03, -0XF0,0X00,0X00,0X01,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X7F,0XFF,0XE1,0X8F,0XC6,0X3F,0X8C,0X70,0X38,0XFF,0XC7,0XFF,0X8F,0XE3,0X8F,0XFF, -0XF8,0X7F,0XF8,0X00,0X71,0XE0,0X1E,0X0F,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X07,0XFF,0X03,0XFF,0XFF, -0XF0,0X7E,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X03,0XF0,0X00,0X00,0X01,0XFF, -0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XF8,0X3F,0XE0, -0XFF,0XC1,0XF0,0XF8,0XFF,0XC7,0XFF,0X8F,0XF0,0X3F,0XFF,0XE0,0X03,0XF8,0X61,0XF1, -0XF0,0X7E,0X3F,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X07,0XFF,0X03,0XFF,0XFF,0XF0,0X7E,0X03,0XFF,0XFF, -0XFF,0XFF,0XFF,0XE0,0X00,0X03,0XF0,0X00,0X00,0X01,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X00,0X00,0X03,0XF0,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00, -0X7F,0XF0,0X7C,0X0F,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00, -0X03,0XF0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X7F,0XF0,0X7E,0X0F,0XFF, -0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X71,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFC,0XE3,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X03,0XF0,0X00,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X7F,0XF0,0X7E,0X0F,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE, -0X31,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X63,0XFF,0XFF,0XFF, -0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X03,0XF0,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC, -0X00,0X7F,0XF0,0X7E,0X0F,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X83,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00, -0X00,0X03,0XF0,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X7F,0XF0,0X7E,0X0F, -0XFF,0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X03,0XF0,0X00,0X3F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X7F,0XF0,0X7E,0X0F,0XFF,0XF8,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X07,0XE0,0XFC,0X1F,0X83,0XFF,0X81,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFE,0X1F,0XFC,0X00,0X7E,0X00,0X3E,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XE0, -0XFC,0X1F,0X83,0XFF,0X81,0XFF,0XE0,0X00,0X00,0X7F,0XFF,0XFE,0X1F,0XFC,0X00,0X7E, -0X00,0X3E,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XE0,0XFC,0X1F,0X83,0XFF,0X81, -0XFF,0XE0,0X00,0X00,0X0F,0XFF,0XFE,0X1F,0XFC,0X00,0X7E,0X00,0X3E,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X07,0XE0,0XFC,0X1F,0X83,0XFF,0X81,0XFF,0XE0,0X00,0X00,0X03, -0XFF,0XFE,0X1F,0XFC,0X00,0X7E,0X00,0X3E,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07, -0XE0,0XFC,0X1F,0X83,0XFF,0X81,0XFF,0XE0,0X00,0X00,0X60,0XFF,0XFE,0X1F,0XFC,0X00, -0X7E,0X00,0X3E,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X07,0XFF,0X03,0XE0,0X7F,0XFF, -0X81,0XFF,0XE0,0X00,0X00,0XE0,0X7F,0XFE,0X1F,0XFC,0X0F,0XFF,0XFF,0XFE,0X07,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC0,0X07,0XFF,0X03,0XE0,0X7F,0XFF,0X81,0XFF,0XE0,0X00,0X01, -0XE0,0X3F,0XFE,0X1F,0XFC,0X0F,0XFF,0XFF,0XFE,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X07,0XFF,0X03,0XE0,0X7F,0XFF,0X81,0XFF,0XE0,0X00,0X03,0XE0,0X1F,0XFE,0X1F,0XFC, -0X0F,0XFF,0XFF,0XFE,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X07,0XFF,0X03,0XE0,0X7F, -0XFF,0X81,0XFF,0XE0,0X00,0X07,0XE0,0X1F,0XFE,0X1F,0XFC,0X0F,0XFF,0XFF,0XFE,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X07,0XFF,0X03,0XE0,0X7F,0XFF,0X81,0XFF,0XE0,0X00, -0X07,0XE0,0X0F,0XFE,0X1F,0XFC,0X0F,0XFF,0XFF,0XFE,0X07,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE0,0X07,0XFF,0X03,0XF0,0X7F,0XFF,0X81,0XFF,0XE7,0XC3,0X87,0XE7,0X07,0XFE,0X1F, -0XFC,0X0F,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0X03,0XFF, -0X80,0X00,0X00,0X3F,0XE7,0XC7,0X87,0XEF,0X07,0XFE,0X00,0X7C,0X00,0X7F,0XF0,0X01, -0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0X03,0XFF,0X80,0X00,0X00,0X3F,0XE7, -0XE7,0XCF,0X8F,0X87,0XFE,0X00,0X7C,0X00,0X7F,0XF0,0X01,0XFF,0XC0,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF8,0X1F,0X03,0XFF,0X80,0X00,0X00,0X3F,0XE7,0XEF,0XCF,0X9F,0X83,0XFE, -0X00,0X7C,0X00,0X7F,0XF0,0X01,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0X03, -0XFF,0X80,0X00,0X00,0X3F,0XE3,0XEF,0XDF,0X1F,0XC3,0XFE,0X00,0X7C,0X00,0X7F,0XF0, -0X01,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0X03,0XFF,0X80,0X00,0X00,0X3F, -0XE3,0XFF,0XFF,0XBF,0XC3,0XFE,0X00,0X7C,0X00,0X7F,0XF0,0X01,0XFF,0XC0,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X07,0XE0,0XFC,0X00,0X01,0XFF,0XFF,0XFF,0XE3,0XFF,0XFF,0XBF,0XE3, -0XFE,0X1F,0X80,0X0F,0X83,0XF0,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XE0, -0XFC,0X00,0X03,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XE3,0XFE,0X1F,0X80,0X0F,0X81, -0XF0,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XE0,0XFC,0X00,0X03,0XFF,0XFF, -0XFF,0XE1,0XFF,0XFF,0XFF,0XF3,0XFE,0X1F,0X80,0X0F,0X81,0XF0,0X01,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X07,0XE0,0XFC,0X00,0X03,0XFF,0XFF,0XFF,0XE1,0XFD,0XFF,0XFD, -0XF3,0XFE,0X1F,0X80,0X0F,0X81,0XF0,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07, -0XE0,0XFC,0X00,0X03,0XFF,0XFF,0XFF,0XF0,0XFC,0XFF,0XF8,0XFB,0XFE,0X1F,0X80,0X0F, -0X81,0XF0,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFE,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XE0,0XFC,0X00,0X01,0XFF, -0XFF,0XFF,0XF0,0XFC,0XF9,0XF9,0XF3,0XFE,0X1F,0X00,0X0F,0X81,0XF0,0X01,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0X80,0X0F,0XFF,0XFF,0XF0,0XF8,0XF9, -0XF1,0XF3,0XFF,0XE0,0X03,0XF0,0X00,0X00,0X3E,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XC0,0X3F,0XC0,0X1F,0XFF,0XFF,0XFF,0X1F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF9,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0XFF,0XFF,0XFF,0XFF,0X80,0X0F,0XFF,0XFF,0XF0,0X78,0X79,0XF3,0XE3,0XFF,0XE0,0X03, -0XF0,0X00,0X00,0X3E,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X7F,0XFF,0XFF,0X9C,0X3F,0X1F,0X0F,0X80,0X3F,0XFF,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0X80, -0X0F,0XFF,0XFF,0XF0,0X78,0X70,0XF7,0XE3,0XFF,0XE0,0X03,0XF0,0X00,0X00,0X3E,0X00, -0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0X3E,0X3C, -0X7F,0XC7,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0X80,0X0F,0XFF,0XFF,0XF8,0X00, -0X00,0X07,0XC3,0XFF,0XE0,0X03,0XF0,0X00,0X00,0X3E,0X00,0X3F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFE,0X7E,0X78,0X83,0XC3,0XE1,0XFF,0XFF, -0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XC0,0XFF,0XFF,0XFF,0XFF,0X80,0X0F,0XFF,0XFF,0XF8,0X00,0X00,0X07,0XC3,0XFF,0XE0, -0X03,0XF0,0X00,0X00,0X3E,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X7F,0XFF,0XFC,0X7E,0X73,0XC3,0XC3,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF, -0XFF,0XFF,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFC,0X00, -0X00,0X00,0X7E,0X3F,0XFC,0X00,0X00,0X07,0XC3,0XFE,0X00,0X7F,0XFF,0XFC,0X00,0X3E, -0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFC,0X7E, -0X63,0XC3,0XC3,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0XF3,0XC3,0XFF,0XE7, -0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFC,0X00,0X00,0X00,0X7E,0X3F,0XFE, -0X00,0X00,0X07,0X83,0XFE,0X00,0X7F,0XFF,0XFE,0X00,0X3E,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFC,0X7F,0XE7,0XC7,0XC7,0XC3,0XFF, -0XFE,0X1E,0X1C,0X7F,0X1F,0XF0,0XFC,0X61,0XC7,0XFE,0X07,0XF8,0X3F,0X0F,0XFF,0XFF, -0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X07,0XFF,0XFC,0X00,0X00,0X00,0X7E,0X3F,0XFE,0X00,0X00,0X07,0X03,0XFE, -0X00,0X7F,0XFF,0XFE,0X00,0X3E,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X7F,0XFF,0XFC,0X3F,0XCF,0XC7,0X87,0XC7,0XFF,0XF8,0X1C,0X10,0X78,0X03, -0XC4,0X78,0X40,0X00,0X78,0X0F,0XE0,0X1C,0X47,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFC, -0X00,0X00,0X00,0X7E,0X3F,0XFF,0X00,0X00,0X06,0X03,0XFE,0X00,0X7F,0XFF,0XFE,0X00, -0X3E,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFE, -0X0F,0XCF,0X87,0X0F,0XC7,0XFF,0XF0,0X30,0X04,0X7F,0X1F,0XCC,0X60,0X1F,0XC7,0XF3, -0X8F,0XC6,0X1C,0XC7,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFC,0X00,0X00,0X00,0X7E,0X3F, -0XFF,0X80,0X00,0X04,0X03,0XFE,0X00,0X7F,0XFF,0XFE,0X00,0X3E,0X07,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0X07,0XCF,0X86,0X1F,0XC7, -0XFF,0XE6,0X32,0X0C,0X7E,0X1F,0X8C,0X7C,0X3F,0X87,0XE7,0X0F,0X8F,0XF8,0XC7,0XFF, -0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X07,0XFF,0XFC,0X00,0X00,0X00,0X3E,0X3F,0XFF,0XC0,0X00,0X00,0X03, -0XFE,0X00,0X7F,0XFF,0XFE,0X00,0X7E,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0X83,0XCF,0X80,0X7F,0X87,0XFF,0XFC,0X3C,0X1C,0X7E, -0X3F,0X08,0XF8,0X3F,0X8F,0XCF,0X1F,0X8F,0XF0,0X8F,0XFF,0XFF,0X07,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0, -0XFF,0XFF,0XFC,0X00,0X00,0X3F,0XFF,0XF0,0X00,0X00,0X03,0XFF,0XE0,0X7F,0XF0,0X01, -0XFF,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF, -0XFF,0XC1,0XCF,0X8F,0XFF,0X8F,0XFF,0XFC,0X7C,0X38,0XFE,0X3F,0X01,0XF8,0X7F,0X8F, -0X8F,0X1F,0X1F,0XF0,0X1F,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0XFF,0XFF,0XFC,0X00,0X00, -0X3F,0XFF,0XFC,0X00,0X00,0X03,0XFF,0XE0,0X7F,0XF0,0X01,0XFF,0XFF,0XF8,0X3F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XE0,0XC7,0X0F,0XFF, -0X8F,0XFF,0XFC,0X7C,0X78,0XFC,0X3F,0X07,0XF8,0XFF,0X8F,0X9E,0X1F,0X1F,0XF0,0X7F, -0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0XFF,0XFF,0XFC,0X00,0X00,0X3F,0XFF,0XFF,0X80,0X00, -0X01,0XFF,0XE0,0X7F,0XF0,0X01,0XFF,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XF0,0XE3,0X0F,0XFF,0X8F,0XFF,0XF8,0X7C,0X78, -0XFC,0X3E,0X0F,0XF8,0XFF,0X0F,0X9E,0X1E,0X1F,0XE0,0XFF,0XFF,0XFF,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE0,0XFF,0XFF,0XFC,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X7F,0XF0, -0X01,0XFF,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F, -0XFF,0XFF,0XF0,0XF3,0X1F,0XFF,0X0F,0XFF,0XF8,0XFC,0X79,0XFC,0X7E,0X1F,0XF8,0XFF, -0X1F,0X1E,0X1E,0X1F,0XE1,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0XFF,0XFF,0XFC,0X00, -0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X7F,0XF0,0X01,0XFF,0XFF,0XF8,0X3F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XF0,0XFF,0X1F, -0XFF,0X1F,0XFF,0XF0,0X98,0X71,0XF8,0X72,0X1E,0X71,0XFF,0X1F,0X1C,0X3E,0X1E,0X61, -0XE7,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X07,0XE0,0XFF,0XF0,0X7C,0X0F,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0X1F,0XFF,0XF0,0X7F,0XFF,0XC0,0X07,0XC1,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0X8F,0XF1,0XFE,0X1F,0XFF,0X1F,0XFF,0XF0,0X18, -0XF0,0X38,0X46,0X18,0XF1,0XFE,0X1F,0X18,0X26,0X0C,0X61,0X8F,0XFF,0XFF,0X07,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X07,0XE0,0XFF,0XE0,0X7C,0X0F,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X1F,0XFF, -0XF0,0X7F,0XFF,0XC0,0X07,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X7F,0XFF,0X8F,0XE1,0XFC,0X3F,0XFE,0X1F,0XFF,0XF0,0X38,0XF0,0X78,0X1E,0X01,0XF1, -0XFE,0X1F,0X02,0X0E,0X01,0XE0,0X1F,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X07,0XE0,0XFF,0XE0,0X7C, -0X0F,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X1F,0XFF,0XF0,0X7F,0XFF,0XC0,0X07, -0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0X87,0XC3,0XF0, -0X01,0XF0,0X07,0XFF,0XF0,0XF8,0XF1,0XF8,0X3F,0X07,0XE1,0XFE,0X3F,0X86,0X3F,0X07, -0XF0,0X7F,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X07,0XE0,0XFF,0XE0,0X7C,0X0F,0XFE,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF8,0X1F,0XFF,0XF0,0X7F,0XFF,0XC0,0X07,0XC0,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XC3,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XC0,0X07,0XE0,0XFF,0XE0,0X7C,0X0F,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F, -0XFF,0XF0,0X7F,0XFF,0XC0,0X07,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X7F,0XFF,0XE0,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFC,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X07,0XE0,0XFF,0XF0, -0X7C,0X0F,0XFE,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X1F,0XFF,0XF0,0X7F,0XFF,0XC0, -0X07,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00,0XFF,0XFF,0X83,0XF0,0X01,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X83,0XE0,0X7F,0XF0,0X7E,0X0F,0XC0,0X07,0XC0,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC0,0XF8,0X00,0XFF,0XFF,0X83,0XF0,0X01,0XFF,0XFE,0X00,0X3F,0XF8,0X00,0X03, -0XE0,0X7F,0XF0,0X7E,0X0F,0XC0,0X07,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF8,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00,0XFF, -0XFF,0X83,0XF0,0X01,0XFF,0XFE,0X00,0X3F,0XF8,0X00,0X03,0XE0,0X7F,0XF0,0X7E,0X0F, -0XC0,0X07,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X01,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00,0XFF,0XFF,0X83,0XF0,0X01,0XFF, -0XFE,0X00,0X3F,0XF8,0X00,0X03,0XE0,0X7F,0XF0,0X7E,0X0F,0XC0,0X07,0XC0,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XC0,0XF8,0X00,0XFF,0XFF,0X83,0XF0,0X01,0XFF,0XFE,0X00,0X3F,0XF8,0X00, -0X03,0XE0,0X7F,0XF0,0X7E,0X0F,0XC0,0X07,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X00,0X00,0X00,0X00,0X00,0X00,0X3E,0X07,0XC0,0XF8,0X00,0XFF,0XE0,0X7F,0XFF,0X80, -0X00,0X3E,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00, -0X00,0X3E,0X07,0XC0,0XF8,0X00,0XFF,0XE0,0X7F,0XFF,0X80,0X00,0X3E,0X00,0X00,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X3E,0X07,0XC0,0XF8, -0X00,0XFF,0XE0,0X7F,0XFF,0X80,0X00,0X3E,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X3E,0X07,0XC0,0XF8,0X00,0XFF,0XE0,0X7F,0XFF, -0X80,0X00,0X3E,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00, -0X00,0X00,0X3E,0X07,0XC0,0XF8,0X00,0XFF,0XE0,0X7F,0XFF,0X80,0X00,0X3E,0X00,0X00, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00,0X00,0X00,0X3E,0X07,0XE0, -0XF8,0X00,0XFF,0XE0,0X7F,0XFF,0X80,0X00,0X3E,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X07,0XFF,0XFF,0XFF,0X83,0XF0,0X7F,0XF0,0X3E,0X07,0XFF,0X00,0X1F,0XFF,0XFF,0X80, -0X00,0X7E,0X00,0X01,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0X83, -0XF0,0X7F,0XF0,0X3E,0X07,0XFF,0X00,0X1F,0XFF,0XFF,0X80,0X00,0X7E,0X00,0X01,0XFF, -0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFE,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0X83,0XF0,0X7F,0XF0,0X3E,0X07, -0XFF,0X00,0X1F,0XFF,0XFF,0X80,0X00,0X7E,0X00,0X01,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X07,0XFF,0XFF,0XFF,0X83,0XF0,0X7F,0XF0,0X3E,0X07,0XFF,0X00,0X1F,0XFF,0XFF, -0X80,0X00,0X7E,0X00,0X01,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF, -0X83,0XF0,0X7F,0XF0,0X3E,0X07,0XFF,0X00,0X1F,0XFF,0XFF,0X80,0X00,0X7E,0X00,0X01, -0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0XFF,0XFF,0X80,0X00,0X7C,0X0F,0XFE,0X0F,0XC1, -0XF8,0X3F,0X00,0X00,0X03,0XFF,0X80,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC, -0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC0,0XFF,0XFF,0X00,0X00,0X7C,0X0F,0XFE,0X0F,0XC1,0XF8,0X3F,0X00,0X00,0X03, -0XFF,0X80,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFC,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0X00, -0X00,0X7C,0X0F,0XFE,0X0F,0XC1,0XF8,0X3F,0X00,0X00,0X03,0XFF,0X80,0X00,0X00,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0X00,0X00,0X7C,0X0F,0XFE,0X0F, -0XC1,0XF8,0X3F,0X00,0X00,0X03,0XFF,0X80,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XC0,0XFF,0XFF,0X00,0X00,0X7C,0X0F,0XFE,0X0F,0XC1,0XF8,0X3F,0X00,0X00, -0X03,0XFF,0X80,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0XFF,0XFF, -0X80,0X00,0X7C,0X0F,0XFE,0X0F,0XC1,0XF8,0X3F,0X00,0X00,0X03,0XFF,0X80,0X00,0X00, -0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XFF, -0XFF,0XFF,0XF8,0X3F,0XFF,0XE0,0X03,0XFF,0X80,0X0F,0XFF,0XF0,0X01,0XF8,0X3F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XE0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XFF,0XFF,0XFF,0XF8,0X3F,0XFF, -0XE0,0X03,0XFF,0X80,0X0F,0XFF,0XF0,0X01,0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X81,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFC,0X0F,0XFF,0XFF,0XFF,0XF8,0X3F,0XFF,0XE0,0X03,0XFF,0X80,0X0F, -0XFF,0XF0,0X01,0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X0F, -0XFF,0XFF,0XFF,0XF8,0X3F,0XFF,0XE0,0X03,0XFF,0X80,0X0F,0XFF,0XF0,0X01,0XF8,0X3F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X7F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XFF,0XFF,0XFF,0XF8,0X3F, -0XFF,0XE0,0X03,0XFF,0X80,0X0F,0XFF,0XF0,0X01,0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X03,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0, -0X00,0X00,0X00,0X00,0X7C,0X00,0X00,0X00,0X3E,0X07,0XC0,0X07,0XE0,0X03,0XE0,0X00, -0X0F,0X81,0XF0,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X7C, -0X00,0X00,0X00,0X3E,0X07,0XC0,0X07,0XE0,0X03,0XE0,0X00,0X0F,0X81,0XF0,0X01,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X07,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X7C,0X00,0X00,0X00,0X3E,0X07, -0XC0,0X07,0XE0,0X03,0XE0,0X00,0X0F,0X81,0XF0,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XC0,0X00,0X00,0X00,0X00,0X7C,0X00,0X00,0X00,0X3E,0X07,0XC0,0X07,0XE0,0X03,0XE0, -0X00,0X0F,0X81,0XF0,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFE,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00, -0X7C,0X00,0X00,0X00,0X3E,0X07,0XC0,0X07,0XE0,0X03,0XE0,0X00,0X0F,0X81,0XF0,0X01, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X3F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X7E,0X00,0X00,0X00,0X3E, -0X0F,0XC0,0X03,0XE0,0X03,0XE0,0X00,0X0F,0X83,0XF0,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X01,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC0,0XFF,0XFF,0XFF,0XE0,0X7F,0XFF,0X80,0X00,0X01,0XFF,0XC0,0X00,0X1F,0X00, -0X00,0X00,0X0F,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XE0,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF, -0XE0,0X7F,0XFF,0X80,0X00,0X01,0XFF,0XC0,0X00,0X1F,0X00,0X00,0X00,0X0F,0XFF,0XF0, -0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00, -0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XE0,0X7F,0XFF,0X80,0X00, -0X01,0XFF,0XC0,0X00,0X1F,0X00,0X00,0X00,0X0F,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFC,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XE0,0X7F,0XFF,0X80,0X00,0X01,0XFF,0XC0,0X00,0X1F, -0X00,0X00,0X00,0X0F,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XF8,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,0XFF,0XFF,0XC0,0XFF,0XFF, -0XFF,0XE0,0X7F,0XFF,0X80,0X00,0X01,0XFF,0XC0,0X00,0X1F,0X00,0X00,0X00,0X0F,0XFF, -0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFC,0X00,0X03,0XE0,0X7F,0XFF,0X81, -0XFF,0XC1,0XF8,0X00,0XFF,0XE0,0XFF,0XFF,0X80,0X00,0X00,0X00,0X3E,0X00,0X3F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X03,0XFF,0XFF, -0XFF,0XFF,0XC0,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, -0XFF,0XFF,0XFF,0XC0,0XF8,0X00,0X03,0XE0,0X7F,0XFF,0X81,0XFF,0XC1,0XF8,0X00,0XFF, -0XE0,0XFF,0XFF,0X80,0X00,0X00,0X00,0X3E,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X01,0XFF,0XFF,0XFF,0XFF,0X80,0X7F,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,0XC0,0XF8, -0X00,0X03,0XE0,0X7F,0XFF,0X81,0XFF,0XC1,0XF8,0X00,0XFF,0XE0,0XFF,0XFF,0X80,0X00, -0X00,0X00,0X3E,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X00,0XFF,0XFF,0XFF,0XFF,0X00,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,0XC0,0XF8,0X00,0X03,0XE0,0X7F,0XFF, -0X81,0XFF,0XC1,0XF8,0X00,0XFF,0XE0,0XFF,0XFF,0X80,0X00,0X00,0X00,0X3E,0X00,0X3F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X7F, -0XFF,0XFF,0XFC,0X03,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,0XC0,0XF8,0X00,0X03,0XE0,0X7F,0XFF,0X81,0XFF,0XC1,0XF8,0X00, -0XFF,0XE0,0XFF,0XFF,0X80,0X00,0X00,0X00,0X3E,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X1F,0XFF,0XFF,0XF8,0X07,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,0XC0, -0XF8,0X00,0X03,0XE0,0X7F,0XFF,0X81,0XFF,0XC1,0XF8,0X00,0XFF,0XE0,0XFF,0XFF,0X80, -0X00,0X00,0X00,0X7E,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0XFF,0XFF,0XF0,0X0F,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,0XC0,0XF8,0X00,0X03,0XE0,0X7C, -0X0F,0X80,0X0F,0XC1,0XFF,0XFF,0X07,0XFF,0X00,0X1F,0XFC,0X0F,0XFE,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8, -0X07,0XFF,0XFF,0XE0,0X1F,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,0XC0,0XF8,0X00,0X03,0XE0,0X7C,0X0F,0X80,0X0F,0XC1,0XFF, -0XFF,0X07,0XFF,0X00,0X1F,0XFC,0X0F,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X03,0XFF,0XFF,0X80,0X7F, -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, -0XC0,0XF8,0X00,0X03,0XE0,0X7C,0X0F,0X80,0X0F,0XC1,0XFF,0XFF,0X07,0XFF,0X00,0X1F, -0XFC,0X0F,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X01,0XFF,0XFF,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00,0X03,0XE0, -0X7C,0X0F,0X80,0X0F,0XC1,0XFF,0XFF,0X07,0XFF,0X00,0X1F,0XFC,0X0F,0XFE,0X0F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X80,0X7F,0XFE,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,0XFF,0XC0,0XF8,0X00,0X03,0XE0,0X7C,0X0F,0X80,0X0F,0XC1, -0XFF,0XFF,0X07,0XFF,0X00,0X1F,0XFC,0X0F,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X3F,0XFC,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC0,0XF8,0X00,0X03,0XE0,0X7C,0X0F,0XFE,0X0F,0XFF,0XF8,0X00,0XF8,0X00,0XFF, -0XE0,0X03,0XF0,0X01,0XFF,0XC0,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X1F,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00,0X03, -0XE0,0X7C,0X0F,0XFE,0X0F,0XFF,0XF8,0X00,0XF8,0X00,0XFF,0XE0,0X03,0XF0,0X01,0XFF, -0XC0,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF0,0X0F,0XE0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00,0X03,0XE0,0X7C,0X0F,0XFE,0X0F, -0XFF,0XF8,0X00,0XF8,0X00,0XFF,0XE0,0X03,0XF0,0X01,0XFF,0XC0,0X07,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X07,0XC0, -0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XC0,0XF8,0X00,0X03,0XE0,0X7C,0X0F,0XFE,0X0F,0XFF,0XF8,0X00,0XF8,0X00, -0XFF,0XE0,0X03,0XF0,0X01,0XFF,0XC0,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X01,0X80,0X7F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00, -0X03,0XE0,0X7C,0X0F,0XFE,0X0F,0XFF,0XF8,0X00,0XF8,0X00,0XFF,0XE0,0X03,0XF0,0X01, -0XFF,0XC0,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X00,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,0XFF,0XFF,0XC0,0XFC,0X00,0X07,0XE0,0X7E,0X1F,0XFE, -0X0F,0XFF,0XF8,0X01,0XF8,0X00,0XFF,0XE0,0X01,0XE0,0X01,0XFF,0XC0,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80, -0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XE0,0X7F,0XFF,0X81,0XFF,0XC1,0XFF,0XFF,0XF8, -0X1F,0XFC,0X1F,0X80,0X00,0X01,0XFF,0XC1,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF, -0XFF,0XFF,0XE0,0X7F,0XFF,0X81,0XFF,0XC1,0XFF,0XFF,0XF8,0X1F,0XFC,0X1F,0X80,0X00, -0X01,0XFF,0XC1,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XE0,0X7F,0XFF, -0X81,0XFF,0XC1,0XFF,0XFF,0XF8,0X1F,0XFC,0X1F,0X80,0X00,0X01,0XFF,0XC1,0XFF,0XC0, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XE0,0X7F,0XFF,0X81,0XFF,0XC1,0XFF,0XFF, -0XF8,0X1F,0XFC,0X1F,0X80,0X00,0X01,0XFF,0XC1,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0XFF,0XFF,0XFF,0XE0,0X7F,0XFF,0X81,0XFF,0XC1,0XFF,0XFF,0XF8,0X1F,0XFC,0X1F,0X80, -0X00,0X01,0XFF,0XC1,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X7F, -0XFF,0XFE,0X0F,0XFF,0XFF,0XC0,0XF8,0X1F,0XFF,0XFF,0X83,0XFF,0X80,0X00,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,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X7F,0XFF,0XFE,0X0F,0XFF,0XFF, -0XC0,0XF8,0X1F,0XFF,0XFF,0X83,0XFF,0X80,0X00,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,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XC0,0X00,0X00,0X00,0X00,0X7F,0XFF,0XFE,0X0F,0XFF,0XFF,0XC0,0XF8,0X1F,0XFF,0XFF, -0X83,0XFF,0X80,0X00,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,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00, -0X7F,0XFF,0XFE,0X0F,0XFF,0XFF,0XC0,0XF8,0X1F,0XFF,0XFF,0X83,0XFF,0X80,0X00,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, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X7F,0XFF,0XFE,0X0F,0XFF, -0XFF,0XC0,0XF8,0X1F,0XFF,0XFF,0X83,0XFF,0X80,0X00,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,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XE0,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XE1,0XFC,0X3F,0XFF, -0XFF,0X83,0XFF,0XC0,0X00,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,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -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,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,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,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,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,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,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,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, -0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,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,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,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,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC0,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,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,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,0X03,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,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,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X80,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,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,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,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,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,0X03,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X00,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00, -0X7F,0X80,0X00,0X1F,0XFF,0XFF,0X80,0X00,0X7F,0X80,0X00,0X00,0X00,0X0F,0XF8,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X0F,0XFF,0XFF,0XFF,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X1F,0XC0,0X00,0X3F,0XFF,0XFF,0X80,0X00,0X1F,0XFF,0XFF,0XFF,0XFE,0X00,0X0F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X00,0X00,0X00,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X80,0X00,0XFF,0XFF, -0XFF,0XE0,0X00,0X7F,0XC0,0X00,0X00,0X00,0X0F,0XF8,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE, -0X00,0X7F,0XFF,0XFF,0XFF,0XFE,0X0F,0XF0,0X00,0X00,0X00,0X1F,0XC0,0X00,0XFF,0XFF, -0XFF,0XE0,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XC0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0, -0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X03,0XFC, -0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X80,0X03,0XFF,0XFF,0XFF,0XF8,0X00,0X7F,0XC0, -0X00,0X00,0X00,0X1F,0XF8,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0XFF,0XFF,0XFF,0XFF, -0XFE,0X0F,0XF0,0X00,0X00,0X00,0X1F,0XC0,0X03,0XFF,0XFF,0XFF,0XF8,0X00,0X1F,0XFF, -0XFF,0XFF,0XFF,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X03,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00, -0X00,0X7F,0X80,0X07,0XFF,0XFF,0XFF,0XFE,0X00,0X3F,0XE0,0X00,0X00,0X00,0X1F,0XF0, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X01,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XE0,0X00,0X00, -0X00,0X1F,0XC0,0X07,0XFF,0XFF,0XFF,0XFE,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XF8,0X0F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XE0,0X00,0X00,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X80,0X1F,0XFF, -0XFF,0XFF,0XFF,0X00,0X3F,0XE0,0X00,0X00,0X00,0X3F,0XF0,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFC,0X03,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC0,0X1F,0XFF, -0XFF,0XFF,0XFF,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XF0,0X00,0X00,0X03, -0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X80,0X1F,0XFF,0XFF,0XFF,0XFF,0X80,0X1F, -0XF0,0X00,0X00,0X00,0X3F,0XE0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X07,0XFF,0XFF,0XFF, -0XFF,0XFE,0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC0,0X3F,0XFF,0XFF,0XFF,0XFF,0X80,0X1F, -0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X03,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XF8,0X00,0X00,0X03,0XFC,0X00,0X00,0X0F,0XF0, -0X00,0X00,0X7F,0X80,0X3F,0XFF,0XFF,0XFF,0XFF,0XC0,0X0F,0XF0,0X00,0X00,0X00,0X7F, -0XE0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X07,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XE0,0X00, -0X00,0X00,0X1F,0XC0,0X7F,0XFF,0XFF,0XFF,0XFF,0XC0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFE, -0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC, -0XFF,0XFF,0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X80,0X7F, -0XFF,0XFF,0XFF,0XFF,0XE0,0X0F,0XF8,0X00,0X00,0X00,0X7F,0XC0,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFC,0X0F,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC0,0X7F, -0XFF,0XFF,0XFF,0XFF,0XE0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XE0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0XFF,0XFF,0XFE,0X00,0X00, -0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X80,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0, -0X07,0XF8,0X00,0X00,0X00,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFE,0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X03,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0XFF,0XFF,0XFF,0X00,0X00,0X03,0XFC,0X00,0X00,0X0F, -0XF0,0X00,0X00,0X7F,0X80,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0XFC,0X00,0X00,0X00, -0XFF,0X80,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XE0, -0X00,0X00,0X00,0X1F,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE0,0XFF,0XFF,0XFF,0X80,0X00,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X80, -0XFF,0XF0,0X00,0X00,0XFF,0XF0,0X07,0XFC,0X00,0X00,0X01,0XFF,0X00,0XFF,0X80,0X00, -0X00,0X00,0X00,0X0F,0XF8,0X00,0X00,0X00,0X00,0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC1, -0XFF,0XF0,0X00,0X01,0XFF,0XF0,0X1F,0X80,0X00,0X00,0X03,0XFF,0X0F,0XF0,0X00,0X00, -0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0X80, -0X00,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X81,0XFF,0XE0,0X00,0X00,0X3F, -0XF0,0X07,0XFE,0X00,0X00,0X01,0XFF,0X00,0XFF,0X80,0X00,0X00,0X00,0X00,0X0F,0XE0, -0X00,0X00,0X00,0X00,0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC1,0XFF,0XE0,0X00,0X00,0X7F, -0XF0,0X1F,0XC0,0X00,0X00,0X00,0XFF,0X0F,0XF0,0X00,0X00,0X00,0X00,0X00,0X03,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0XFF,0XFF,0XFF,0XC0,0X00,0X03,0XFC,0X00,0X00, -0X0F,0XF0,0X00,0X00,0X7F,0X81,0XFF,0XC0,0X00,0X00,0X1F,0XF0,0X03,0XFE,0X00,0X00, -0X03,0XFE,0X00,0XFF,0X80,0X00,0X00,0X00,0X00,0X0F,0XE0,0X00,0X00,0X00,0X00,0X0F, -0XE0,0X00,0X00,0X00,0X1F,0XC1,0XFF,0XC0,0X00,0X00,0X1F,0XF0,0X1F,0XC0,0X00,0X00, -0X00,0XFF,0X0F,0XF0,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X00,0XFF,0XFF,0XFF,0XE0,0X00,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F, -0X81,0XFF,0X80,0X00,0X00,0X0F,0XF0,0X03,0XFF,0X00,0X00,0X03,0XFE,0X00,0XFF,0X80, -0X00,0X00,0X00,0X00,0X0F,0XF0,0X00,0X00,0X00,0X00,0X0F,0XE0,0X00,0X00,0X00,0X1F, -0XC1,0XFF,0X00,0X00,0X00,0X0F,0XF0,0X1F,0XC0,0X00,0X00,0X00,0XFF,0X0F,0XF0,0X00, -0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0XFF,0XFF,0XFF, -0XF0,0X00,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X81,0XFF,0X00,0X00,0X00, -0X07,0XF0,0X01,0XFF,0X80,0X00,0X07,0XFC,0X00,0XFF,0X80,0X00,0X00,0X00,0X00,0X0F, -0XF8,0X00,0X00,0X00,0X00,0X0F,0XF0,0X00,0X00,0X00,0X3F,0XC1,0XFF,0X00,0X00,0X00, -0X0F,0XF0,0X1F,0XC0,0X00,0X00,0X00,0XFF,0X0F,0XF0,0X00,0X00,0X00,0X00,0X00,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0XFF,0XFF,0XFF,0XF0,0X00,0X03,0XFC,0X00, -0X00,0X0F,0XF0,0X00,0X00,0X7F,0X81,0XFE,0X00,0X00,0X00,0X07,0XF0,0X00,0XFF,0X80, -0X00,0X07,0XFC,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFE,0X00, -0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC1,0XFE,0X00,0X00,0X00,0X07,0XF0,0X1F,0XC0,0X00, -0X00,0X00,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFC,0X00,0XFF,0XFF,0XFF,0XF0,0X00,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00, -0X7F,0X81,0XFE,0X00,0X00,0X00,0X07,0XF0,0X00,0XFF,0XC0,0X00,0X0F,0XF8,0X00,0XFF, -0XFF,0XFF,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XC0,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC1,0XFE,0X00,0X00,0X00,0X0F,0XF0,0X1F,0XC0,0X00,0X00,0X00,0XFF,0X0F,0XFF, -0XFF,0XFF,0XFF,0XE0,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0XFF,0XFF, -0XFF,0XF8,0X00,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X81,0XFC,0X00,0X00, -0X00,0X03,0XF0,0X00,0X7F,0XC0,0X00,0X0F,0XF8,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0X00, -0X0F,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC1,0XFC,0X00,0X00, -0X00,0X0F,0XF0,0X1F,0XC0,0X00,0X00,0X00,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF,0XE0,0X00, -0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0XFF,0XFF,0XFF,0XF8,0X00,0X03,0XFC, -0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X81,0XFC,0X00,0X00,0X00,0X07,0XF0,0X00,0X7F, -0XE0,0X00,0X1F,0XF0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC1,0XFC,0X00,0X00,0X00,0X0F,0XF0,0X1F,0XC0, -0X00,0X00,0X00,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X03,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XE0,0X00,0XFF,0XFF,0XFF,0XFC,0X00,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00, -0X00,0X7F,0X81,0XFC,0X00,0X00,0X00,0X07,0XF0,0X00,0X3F,0XE0,0X00,0X1F,0XE0,0X00, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XC1,0XFC,0X00,0X00,0X00,0X0F,0XF0,0X1F,0XC0,0X00,0X00,0X00,0XFF,0X0F, -0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0XFF, -0XFF,0XFF,0XFC,0X00,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X81,0XFC,0X00, -0X00,0X00,0X07,0XF0,0X00,0X3F,0XF0,0X00,0X1F,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC1,0XFC,0X00, -0X00,0X00,0X0F,0XF0,0X1F,0XC0,0X00,0X00,0X00,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF,0XE0, -0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0XFF,0XFF,0XFF,0XFE,0X00,0X03, -0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X81,0XFC,0X00,0X00,0X00,0X07,0XF0,0X00, -0X1F,0XF0,0X00,0X3F,0XC0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X03,0XFF,0XFF,0XFF, -0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC1,0XFC,0X00,0X00,0X00,0X0F,0XF0,0X1F, -0X80,0X00,0X00,0X01,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X03,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0XFF,0XFF,0XFF,0XFE,0X00,0X03,0XFC,0X00,0X00,0X0F,0XF0, -0X00,0X00,0X7F,0X81,0XFC,0X00,0X00,0X00,0X03,0XF0,0X00,0X0F,0XF8,0X00,0X7F,0XC0, -0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XC1,0XFC,0X00,0X00,0X00,0X0F,0XF0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF, -0X0F,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00, -0XFF,0XFF,0XFF,0XFE,0X00,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X81,0XFE, -0X00,0X00,0X00,0X07,0XF0,0X00,0X0F,0XF8,0X00,0X7F,0X80,0X00,0XFF,0XFF,0XFF,0XFF, -0XFF,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC1,0XFE, -0X00,0X00,0X00,0X07,0XF0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF, -0XE0,0X00,0X03,0XFC,0X00,0X1F,0XFE,0X03,0XFF,0XE0,0X00,0XFF,0X01,0XFF,0XFF,0X00, -0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X81,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X00,0X0F,0XFC,0X00,0XFF,0X80,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X01,0XFF, -0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC1,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X03,0XFC,0X00, -0X0F,0XFC,0X01,0XFF,0XE0,0X00,0XFE,0X00,0XFF,0XFF,0X00,0X03,0XFC,0X00,0X00,0X0F, -0XF0,0X00,0X00,0X7F,0X81,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X07,0XFC,0X00,0XFF, -0X00,0X00,0XFF,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0X0F,0XF0, -0X00,0X00,0X00,0X1F,0XC1,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0X0F,0XF0,0X00,0X00,0X00,0X00,0X00,0X03,0XFC,0X00,0X0F,0XF8,0X01,0XFF,0XC0, -0X06,0XFE,0X00,0XFF,0XFF,0X80,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X81, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X07,0XFE,0X01,0XFF,0X00,0X00,0XFF,0X80,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC1, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XF0,0X00,0X00, -0X00,0X00,0X00,0X03,0XFE,0X00,0X0F,0XF8,0X01,0XFF,0XC0,0X07,0XFC,0X00,0X7F,0XFF, -0X80,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X81,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X00,0X03,0XFE,0X03,0XFF,0X00,0X00,0XFF,0X80,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0XFF,0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC1,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XF0,0X00,0X00,0X00,0X00,0X00,0X03,0XFF, -0X00,0X07,0XF8,0X00,0XFF,0X80,0X0F,0XFC,0X00,0X7F,0XFF,0X80,0X03,0XFC,0X00,0X00, -0X0F,0XF0,0X00,0X00,0X7F,0X81,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X01,0XFF,0X03, -0XFE,0X00,0X00,0XFF,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X7F,0X0F, -0XE0,0X00,0X00,0X00,0X1F,0XC1,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X1F,0XFF,0XFF,0XFF, -0XFF,0XFC,0X0F,0XF0,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0X00,0X07,0XF0,0X00,0XFF, -0X80,0X0F,0XF8,0X00,0X3F,0XFF,0XC0,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F, -0X81,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X01,0XFF,0X07,0XFE,0X00,0X00,0XFF,0X80, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X7F,0X0F,0XE0,0X00,0X00,0X00,0X1F, -0XC1,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X1F,0XFF,0XFF,0XFF,0XFF,0XF8,0X0F,0XF0,0X00, -0X00,0X00,0X00,0X00,0X03,0XFF,0X00,0X07,0XF0,0X00,0X7F,0X00,0X0F,0XF8,0X00,0X3F, -0XFF,0XC0,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X81,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X00,0X01,0XFF,0X87,0XFC,0X00,0X00,0XFF,0X80,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X7F,0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC1,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X1F,0XFF,0XFF,0XFF,0XFF,0XE0,0X0F,0XF0,0X00,0X00,0X00,0X00,0X00,0X03, -0XFF,0X00,0X03,0XE0,0X00,0X7F,0X00,0X1F,0XF8,0X00,0X1F,0XFF,0XC0,0X03,0XFC,0X00, -0X00,0X0F,0XF0,0X00,0X00,0X7F,0X81,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XFF, -0X8F,0XFC,0X00,0X00,0XFF,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X7F, -0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC1,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X1F,0XFF,0XFF, -0XFF,0XFF,0X80,0X0F,0XF0,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0X80,0X03,0XE0,0X00, -0X7F,0X00,0X3F,0XF0,0X00,0X1F,0XFF,0XC0,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00, -0X7F,0X81,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XFF,0X8F,0XF8,0X00,0X00,0XFF, -0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X7F,0X0F,0XE0,0X00,0X00,0X00, -0X1F,0XC1,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X1F,0XC3,0XFF,0XF8,0X00,0X00,0X0F,0XF0, -0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0X80,0X03,0XE0,0X00,0X3F,0X00,0X3F,0XE0,0X00, -0X0F,0XFF,0XC0,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X81,0XFD,0XFF,0XFF, -0XFF,0XF7,0XF0,0X00,0X00,0X7F,0XCF,0XF0,0X00,0X00,0XFF,0X80,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X7F,0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC1,0XFD,0XFF,0XFF, -0XFF,0XEF,0XF0,0X1F,0X81,0XFF,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X00,0X00,0X00, -0X03,0XFF,0X80,0X01,0XC0,0X00,0X7E,0X00,0X7F,0XE0,0X00,0X0F,0XFF,0XE0,0X03,0XFC, -0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X81,0XFC,0X00,0X00,0X00,0X03,0XF0,0X00,0X00, -0X3F,0XFF,0XF0,0X00,0X00,0XFF,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X7F,0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC1,0XFC,0X00,0X00,0X00,0X07,0XF0,0X1F,0XC0, -0X7F,0XFF,0X00,0X00,0X0F,0XF0,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XC0,0X01,0XC0, -0X00,0X3E,0X00,0X7F,0XC0,0X00,0X07,0XFF,0XE0,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00, -0X00,0X7F,0X81,0XFC,0X00,0X00,0X00,0X07,0XF0,0X00,0X00,0X3F,0XFF,0XE0,0X00,0X00, -0XFF,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X7F,0X0F,0XE0,0X00,0X00, -0X00,0X1F,0XC1,0XFC,0X00,0X00,0X00,0X0F,0XF0,0X1F,0XC0,0X1F,0XFF,0X80,0X00,0X0F, -0XF0,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XC0,0X00,0XC0,0X00,0X3C,0X00,0X7F,0XC0, -0X00,0X03,0XFF,0XE0,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0XFF,0X81,0XFC,0X00, -0X00,0X00,0X07,0XF0,0X00,0X00,0X1F,0XFF,0XE0,0X00,0X00,0XFF,0X80,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC1,0XFC,0X00, -0X00,0X00,0X0F,0XF0,0X1F,0XC0,0X0F,0XFF,0XE0,0X00,0X0F,0XF0,0X00,0X00,0X00,0X00, -0X00,0X03,0XFF,0XC0,0X00,0X80,0X00,0X1C,0X00,0XFF,0XC0,0X00,0X03,0XFF,0XE0,0X03, -0XFF,0X00,0X00,0X0F,0XF0,0X00,0X01,0XFF,0X81,0XFC,0X00,0X00,0X00,0X07,0XF0,0X00, -0X00,0X0F,0XFF,0XC0,0X00,0X00,0XFF,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC1,0XFC,0X00,0X00,0X00,0X0F,0XF0,0X1F, -0XC0,0X03,0XFF,0XF0,0X00,0X0F,0XF0,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XE0,0X00, -0X80,0X00,0X1C,0X00,0X7F,0X80,0X00,0X01,0XFF,0XE0,0X03,0XFF,0XC0,0X00,0X0F,0XF0, -0X00,0X0F,0XFF,0X81,0XFC,0X00,0X00,0X00,0X07,0XF0,0X00,0X00,0X1F,0XFF,0XC0,0X00, -0X00,0XFF,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0X0F,0XE0,0X00, -0X00,0X00,0X1F,0XC1,0XFC,0X00,0X00,0X00,0X0F,0XF0,0X1F,0XC0,0X01,0XFF,0XFC,0X00, -0X0F,0XF0,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XE0,0X00,0X00,0X00,0X18,0X00,0XFF, -0X80,0X00,0X03,0XFF,0XE0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X81,0XFC, -0X00,0X00,0X00,0X07,0XF0,0X00,0X00,0X0F,0XFF,0X80,0X00,0X00,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFC,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC1,0XFC, -0X00,0X00,0X00,0X0F,0XF0,0X1F,0XC0,0X00,0XFF,0XFE,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XE0,0X03,0XFF,0XE0,0X00,0X00,0X00,0X00,0X01,0XFF,0X00,0X00,0X01,0XFF,0XE0, -0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X81,0XFC,0X00,0X00,0X00,0X07,0XF0, -0X00,0X00,0X0F,0XFF,0X80,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC1,0XFC,0X00,0X00,0X00,0X0F,0XF0, -0X1F,0XC0,0X00,0X3F,0XFF,0X80,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X03,0XFF,0XF0, -0X00,0X00,0X00,0X00,0X01,0XCF,0X00,0X00,0X01,0XFF,0XE0,0X03,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X01,0XFC,0X00,0X00,0X00,0X07,0XF0,0X00,0X00,0X07,0XFF,0X00, -0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0X0F,0XE0, -0X00,0X00,0X00,0X1F,0XC1,0XFC,0X00,0X00,0X00,0X0F,0XF0,0X1F,0XC0,0X00,0X1F,0XFF, -0XC0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X03,0XFF,0XF0,0X00,0X00,0X00,0X00,0X01, -0X8E,0X00,0X00,0X00,0XFF,0XE0,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X01, -0XFC,0X00,0X00,0X00,0X07,0XF0,0X00,0X00,0X07,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFC,0X0F,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC1, -0XFC,0X00,0X00,0X00,0X0F,0XF0,0X1F,0XC0,0X00,0X07,0XFF,0XF0,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XE0,0X03,0XFF,0XF0,0X00,0X00,0X80,0X00,0X03,0X9E,0X00,0X18,0X00,0XFF, -0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X01,0XFC,0X00,0X00,0X00,0X07, -0XF0,0X00,0X00,0X03,0XFE,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XFF, -0XFF,0XFF,0XFF,0XFC,0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC1,0XFC,0X00,0X00,0X00,0X0F, -0XF0,0X1F,0XC0,0X00,0X03,0XFF,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X03,0XFF, -0XF8,0X00,0X00,0XC0,0X00,0X03,0X98,0X00,0X38,0X00,0X7F,0XE0,0X00,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X01,0XFC,0X00,0X00,0X00,0X07,0XF0,0X00,0X00,0X03,0XFE, -0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XFF,0XFF,0XFF,0XFF,0XF8,0X0F, -0XE0,0X00,0X00,0X00,0X1F,0XC1,0XFC,0X00,0X00,0X00,0X0F,0XF0,0X1F,0XC0,0X00,0X01, -0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X03,0XFF,0XF8,0X00,0X00,0XC0,0X00, -0X07,0X30,0X00,0X38,0X00,0X7F,0XE0,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC, -0X01,0XFC,0X00,0X00,0X00,0X07,0XF0,0X00,0X00,0X01,0XFC,0X00,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFC,0X0F,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0XE0,0X00,0X00,0X00,0X1F, -0XC1,0XFC,0X00,0X00,0X00,0X0F,0XF0,0X1F,0XC0,0X00,0X00,0X7F,0XFF,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XE0,0X01,0XFF,0XFC,0X00,0X01,0XC0,0X00,0X07,0X30,0X00,0X3C,0X00, -0X3F,0XE0,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X01,0XFC,0X00,0X00,0X00, -0X07,0XF0,0X00,0X00,0X00,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F, -0XFF,0XFF,0XFF,0XFF,0XC0,0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC1,0XFC,0X00,0X00,0X00, -0X0F,0XF0,0X1F,0XC0,0X00,0X00,0X3F,0XFF,0XCF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X01, -0XFF,0XFC,0X00,0X01,0XE0,0X00,0X06,0X70,0X00,0X7C,0X00,0X3F,0XE0,0X00,0X03,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X01,0XFC,0X00,0X00,0X00,0X07,0XF0,0X00,0X00,0X00, -0X78,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0X00, -0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC1,0XFC,0X00,0X00,0X00,0X0F,0XF0,0X1F,0XC0,0X00, -0X00,0X0F,0XFF,0XE7,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X01,0XFF,0XFC,0X00,0X01,0XE0, -0X00,0X0C,0X70,0X00,0X7E,0X00,0X1F,0XE0,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFC, -0X00,0X00,0XF8,0X00,0X00,0X00,0X03,0XF0,0X00,0X00,0X00,0X30,0X00,0X00,0X00,0X7F, -0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XFF,0XFF,0XFF,0XF0,0X00,0X07,0XE0,0X00,0X00,0X00, -0X1F,0X80,0XF8,0X00,0X00,0X00,0X07,0XF0,0X1F,0X80,0X00,0X00,0X07,0XFF,0XC3,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC0,0X01,0XFF,0XFE,0X00,0X03,0XE0,0X00,0X0C,0X60,0X00,0XFE, -0X00,0X1F,0XE0,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, -0X01,0XFF,0XFE,0X00,0X03,0XF0,0X00,0X0C,0XC0,0X00,0XFF,0X00,0X0F,0XE0,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,0X01,0XFF,0XFE,0X00,0X03, -0XF0,0X00,0X18,0X40,0X01,0XFF,0X00,0X1F,0XE0,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,0XFF,0XFF,0X00,0X07,0XF0,0X00,0X18,0X80,0X00, -0XFE,0X00,0X1F,0XE0,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,0XFF,0XFF,0X00,0X07,0XF8,0X00,0X3C,0XC0,0X01,0XFE,0X00,0X3F,0XE0,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,0XFF,0XFF,0X00, -0X07,0XF8,0X00,0X3F,0X80,0X01,0XFC,0X00,0X3F,0XE0,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,0XFF,0XFF,0X80,0X0F,0XFC,0X00,0X7F,0X80, -0X03,0XFC,0X00,0X7F,0XE0,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,0X7F,0XFF,0X80,0X0F,0XFC,0X00,0X7F,0X00,0X07,0XF8,0X00,0X7F,0XE0, -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,0X7F,0XFF, -0X80,0X0F,0XFC,0X00,0X7F,0X80,0X07,0XFC,0X00,0XFF,0XE0,0X00,0X00,0X04,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,0X0C,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X60,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X7F,0XFF,0XC0,0X1F,0XFE,0X00,0XFF, -0X80,0X07,0XF8,0X00,0XFF,0XE0,0X00,0X00,0X0E,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,0X1C,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X70,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X3F,0XFF,0X80,0X1F,0XFE,0X01,0XFF,0X80,0X0F,0XF8,0X01,0XFF, -0XE0,0X00,0X00,0X0E,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,0X1C,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X70,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3F, -0XFF,0XC0,0X3F,0XFF,0X01,0XFF,0XC0,0X0F,0XF0,0X01,0XFF,0XE0,0X00,0X00,0X0E,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,0X1C,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X70,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0XC0,0X1F,0XFF,0X01, -0XFF,0XE0,0X1F,0XF0,0X01,0XFF,0XE0,0X00,0X00,0X0E,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,0X1C,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X70,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X20,0X03, -0XFF,0XE0,0X00,0X00,0X0E,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,0X1C,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X70,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X03,0XFF,0XE0,0X00,0X00,0X0E, -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,0X1C,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X70,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X00,0X07,0XFF,0XE0,0X00,0X00,0X0E,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,0X1C,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X70,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00, -0X07,0XFF,0XE0,0X01,0XF8,0X0E,0X0F,0X80,0X00,0X7F,0X06,0X04,0X3C,0X03,0XF8,0X00, -0X00,0X00,0X7F,0X06,0X10,0X00,0X00,0X03,0X00,0X3F,0X80,0X01,0XF8,0X00,0X3F,0XC0, -0X02,0X1F,0X80,0X7E,0X00,0X03,0XFC,0X00,0X00,0X1C,0X3F,0X00,0X00,0XFF,0X0C,0X08, -0XF8,0X03,0XF0,0X71,0X80,0X00,0X00,0X18,0X01,0XF8,0X10,0X71,0XE0,0X1F,0XE0,0X00, -0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X0F,0XFF,0XE0,0X03,0XFE, -0X0E,0X3F,0XE0,0X01,0XFF,0XCF,0X0E,0XFC,0X0F,0XFE,0X00,0X00,0X01,0XFF,0XCF,0X38, -0X00,0X60,0X03,0X80,0XFF,0XF0,0X03,0XFE,0X00,0XFF,0XF0,0X07,0X7F,0XE1,0XFF,0X80, -0X0F,0XFF,0X00,0X00,0X1C,0X7F,0XC0,0X03,0XFF,0XDC,0X1D,0XF8,0X0F,0XFC,0X71,0XC0, -0X06,0X00,0X3C,0X07,0XFE,0X38,0X77,0XE0,0X7F,0XF8,0X00,0X00,0X03,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X0F,0XFF,0XE0,0X07,0X9F,0X0E,0XFB,0XF0,0X03,0XF3, -0XFF,0X0E,0XF8,0X1F,0XBF,0X00,0X00,0X03,0XF3,0XE7,0X1C,0X00,0XE0,0X07,0X81,0XFB, -0XFC,0X07,0X9F,0X01,0XFB,0XF0,0X07,0X79,0XF3,0XEF,0XC0,0X1F,0XBF,0X00,0X00,0X1C, -0XFB,0XE0,0X07,0XE7,0XEC,0X1D,0XF0,0X3F,0XBE,0X71,0XC0,0X0F,0X00,0X78,0X1F,0X9F, -0X38,0X7F,0X40,0XFC,0XFC,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X00,0X03,0XFF,0XE0,0X07,0X07,0X0F,0XE0,0X70,0X07,0X80,0X7F,0X0F,0X80,0X3C,0X07, -0X80,0X00,0X07,0XC0,0X7F,0X1C,0X00,0XE0,0X07,0X83,0XC0,0X7C,0X07,0X07,0X03,0XC0, -0X78,0X07,0XE0,0X77,0X81,0XC0,0X3C,0X07,0X80,0X00,0X1F,0XC0,0XF0,0X0F,0X01,0XFC, -0X1F,0X80,0X7C,0X07,0X71,0XC0,0X0F,0X00,0X38,0X3E,0X03,0XB8,0X7C,0X01,0XF0,0X1E, -0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X03,0XFF,0XE0,0X0E, -0X00,0X0F,0X80,0X38,0X0F,0X00,0X3F,0X0F,0X00,0X78,0X01,0XC0,0X00,0X0F,0X00,0X3F, -0X0E,0X01,0XF0,0X0F,0X07,0X80,0X1E,0X0E,0X00,0X07,0X80,0X3C,0X07,0XC0,0X3F,0X01, -0XE0,0X78,0X01,0XC0,0X00,0X1F,0X80,0X70,0X1E,0X00,0X7C,0X1F,0X00,0X70,0X03,0XF0, -0XE0,0X1F,0X80,0X70,0X38,0X01,0XF8,0X78,0X03,0XE0,0X0F,0X00,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X07,0XFF,0XE0,0X0E,0X00,0X0F,0X80,0X38,0X1E, -0X00,0X1F,0X0F,0X00,0X70,0X00,0XE0,0X00,0X0E,0X00,0X1F,0X0E,0X01,0XF0,0X0F,0X07, -0X00,0X0F,0X0E,0X00,0X0F,0X00,0X1E,0X07,0XC0,0X3E,0X00,0XE0,0X70,0X00,0XE0,0X00, -0X1F,0X00,0X38,0X3C,0X00,0X3C,0X1E,0X00,0XE0,0X01,0XF0,0XE0,0X1F,0X00,0X70,0X70, -0X00,0XF8,0X78,0X03,0XC0,0X07,0X80,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X00,0X1F,0XFF,0XE0,0X0E,0X00,0X0F,0X00,0X38,0X3E,0X00,0X1F,0X0F,0X00,0XE0, -0X00,0XE0,0X00,0X1E,0X00,0X0F,0X06,0X03,0XF0,0X0E,0X0E,0X00,0X0F,0X0F,0X00,0X0E, -0X00,0X0E,0X07,0X80,0X1C,0X00,0XE0,0XE0,0X00,0XE0,0X00,0X1E,0X00,0X38,0X38,0X00, -0X3C,0X1E,0X01,0XE0,0X00,0XF0,0X70,0X1F,0X80,0XF0,0XF0,0X00,0X78,0X78,0X07,0X80, -0X03,0X80,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X3F,0XFF,0XE0, -0X07,0X00,0X0E,0X00,0X1C,0X3C,0X00,0X0F,0X0E,0X00,0XE0,0X00,0X70,0X00,0X1C,0X00, -0X0F,0X07,0X03,0X98,0X1E,0X0E,0X00,0X07,0X87,0X80,0X0E,0X00,0X07,0X07,0X80,0X1C, -0X00,0XE0,0XE0,0X00,0X70,0X00,0X1E,0X00,0X38,0X38,0X00,0X1C,0X1C,0X01,0XC0,0X00, -0X70,0X70,0X3F,0X80,0XE0,0XE0,0X00,0X78,0X78,0X07,0X00,0X03,0X80,0X00,0X00,0X3F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0XFF,0XFF,0XE0,0X07,0XE0,0X0E,0X00,0X1C, -0X3C,0X00,0X0F,0X0E,0X01,0XFF,0XFF,0XF0,0X00,0X1C,0X00,0X07,0X07,0X83,0XBC,0X1E, -0X1F,0XFF,0XFF,0X87,0XE0,0X1C,0X00,0X07,0X07,0X00,0X1C,0X00,0XE1,0XFF,0XFF,0XF0, -0X00,0X1C,0X00,0X38,0X78,0X00,0X1C,0X1C,0X01,0XC0,0X00,0X70,0X38,0X3F,0XC1,0XE0, -0XE0,0X00,0X38,0X78,0X07,0XFF,0XFF,0XC0,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X01,0XFF,0XFF,0XE0,0X03,0XF8,0X0E,0X00,0X1C,0X3C,0X00,0X0F,0X0E,0X01, -0XFF,0XFF,0XF0,0X00,0X38,0X00,0X0F,0X03,0X87,0X9C,0X1C,0X1F,0XFF,0XFF,0X83,0XF8, -0X1C,0X00,0X07,0X07,0X00,0X1C,0X00,0XE1,0XFF,0XFF,0XF0,0X00,0X1C,0X00,0X38,0X78, -0X00,0X0C,0X1C,0X03,0X80,0X00,0X70,0X38,0X39,0XC1,0XC1,0XC0,0X00,0X38,0X78,0X07, -0XFF,0XFF,0XC0,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XFF,0XFF, -0XE0,0X01,0XFC,0X0E,0X00,0X1C,0X38,0X00,0X0F,0X0E,0X01,0XFF,0XFF,0XF0,0X00,0X38, -0X00,0X0F,0X03,0XC7,0X1E,0X38,0X1F,0XFF,0XFF,0X81,0XFC,0X1C,0X00,0X03,0X07,0X00, -0X1C,0X00,0XE1,0XFF,0XFF,0XF0,0X00,0X1C,0X00,0X38,0X78,0X00,0X0C,0X1C,0X03,0X80, -0X00,0X70,0X3C,0X71,0XE3,0XC1,0XC0,0X00,0X38,0X78,0X07,0XFF,0XFF,0X80,0X00,0X00, -0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0XE0,0X00,0X7E,0X0E,0X00, -0X1C,0X3C,0X00,0X0F,0X0E,0X01,0XC0,0X00,0X00,0X00,0X38,0X00,0X0F,0X01,0XCF,0X0E, -0X38,0X1C,0X00,0X00,0X00,0X7E,0X1C,0X00,0X07,0X07,0X00,0X1C,0X00,0XE1,0XC0,0X00, -0X00,0X00,0X1C,0X00,0X38,0X78,0X00,0X0C,0X1C,0X03,0X80,0X00,0X70,0X1C,0X70,0XE3, -0X81,0XC0,0X00,0X38,0X78,0X07,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X1F,0XFF,0XFF,0XE0,0X00,0X1F,0X0E,0X00,0X1C,0X3C,0X00,0X0F,0X0E, -0X01,0XC0,0X00,0X00,0X00,0X1C,0X00,0X07,0X01,0XCE,0X0F,0X30,0X1C,0X00,0X00,0X00, -0X1F,0X1C,0X00,0X07,0X07,0X00,0X1C,0X00,0XE1,0XC0,0X00,0X00,0X00,0X1C,0X00,0X38, -0X78,0X00,0X1C,0X1C,0X01,0XC0,0X00,0X70,0X0C,0X60,0X73,0X00,0XE0,0X00,0X38,0X78, -0X07,0X00,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X3F,0XFF, -0XFF,0XE0,0X00,0X0F,0X0E,0X00,0X1C,0X3C,0X00,0X0F,0X0E,0X00,0XE0,0X00,0X00,0X00, -0X1C,0X00,0X0F,0X01,0XEE,0X07,0X30,0X0E,0X00,0X00,0X00,0X0F,0X1C,0X00,0X07,0X07, -0X00,0X1C,0X00,0XE0,0XE0,0X00,0X00,0X00,0X1C,0X00,0X38,0X38,0X00,0X1C,0X1C,0X01, -0XC0,0X00,0X70,0X0E,0XE0,0X77,0X00,0XE0,0X00,0X78,0X78,0X07,0X00,0X00,0X00,0X00, -0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X7F,0XFF,0XFF,0XE0,0X00,0X07,0X0E, -0X00,0X1C,0X3E,0X00,0X1F,0X0E,0X00,0XE0,0X00,0X60,0X00,0X1C,0X00,0X0F,0X00,0XFC, -0X07,0XF0,0X0E,0X00,0X07,0X00,0X07,0X0E,0X00,0X0E,0X07,0X00,0X1C,0X00,0XE0,0XE0, -0X00,0X60,0X00,0X1C,0X00,0X38,0X38,0X00,0X1C,0X1C,0X01,0XE0,0X00,0XF0,0X07,0XE0, -0X7F,0X00,0XE0,0X00,0X78,0X78,0X07,0X80,0X03,0X80,0X00,0X00,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X07,0X0E,0X00,0X1C,0X1E,0X00,0X1F, -0X0E,0X00,0XF0,0X00,0XE0,0X00,0X0E,0X00,0X1F,0X00,0X7C,0X03,0XE0,0X07,0X00,0X0F, -0X00,0X07,0X0F,0X00,0X0E,0X07,0X00,0X1C,0X00,0XE0,0XF0,0X00,0XE0,0X00,0X1C,0X00, -0X38,0X3C,0X00,0X3C,0X1C,0X00,0XE0,0X01,0XF0,0X07,0XC0,0X3E,0X00,0X70,0X00,0XF8, -0X78,0X03,0X80,0X03,0X80,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XE0,0X00,0X07,0X0E,0X00,0X1C,0X0F,0X00,0X3F,0X0E,0X00,0X78,0X01,0XC0, -0X00,0X0F,0X00,0X3F,0X00,0X78,0X03,0XE0,0X07,0X80,0X1F,0X00,0X07,0X07,0X80,0X1C, -0X07,0X00,0X1C,0X00,0XE0,0X78,0X01,0XC0,0X00,0X1C,0X00,0X38,0X1E,0X00,0X7C,0X1C, -0X00,0X70,0X03,0XF0,0X07,0XC0,0X3E,0X00,0X78,0X01,0XF8,0X78,0X03,0XC0,0X07,0X00, -0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X0C,0X0F, -0X0E,0X00,0X1C,0X0F,0X80,0X7F,0X0E,0X00,0X3C,0X07,0XC0,0X00,0X07,0X80,0X7F,0X00, -0X38,0X01,0XC0,0X03,0XC0,0X3E,0X0C,0X0F,0X03,0XC0,0X7C,0X07,0X00,0X1C,0X00,0XE0, -0X3C,0X07,0XC0,0X00,0X1C,0X00,0X38,0X0F,0X01,0XFC,0X1C,0X00,0X7C,0X07,0XF0,0X03, -0X80,0X1C,0X00,0X3C,0X03,0XF8,0X78,0X01,0XF0,0X1E,0X00,0X00,0X00,0X00,0X03,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X0F,0X1E,0X0E,0X00,0X1C,0X07,0XE3, -0XFF,0X0E,0X00,0X1F,0X1F,0X80,0X00,0X03,0XF3,0XF7,0X00,0X38,0X01,0XC0,0X01,0XF9, -0XFC,0X0F,0X9E,0X01,0XF1,0XF8,0X07,0X00,0X1C,0X00,0XE0,0X1F,0X1F,0X80,0X00,0X1C, -0X00,0X38,0X07,0XE3,0XEC,0X1C,0X00,0X3F,0X3F,0X70,0X03,0X80,0X1C,0X00,0X1F,0X9F, -0XB8,0X78,0X01,0XF8,0XFE,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XE0,0X07,0XFC,0X0E,0X00,0X1C,0X01,0XFF,0XCF,0X0E,0X00,0X0F,0XFE, -0X00,0X00,0X03,0XFF,0XCF,0X00,0X30,0X00,0XC0,0X00,0XFF,0XF0,0X07,0XFC,0X00,0XFF, -0XF0,0X07,0X00,0X1C,0X00,0XE0,0X0F,0XFF,0X00,0X00,0X1C,0X00,0X38,0X03,0XFF,0XDC, -0X1C,0X00,0X0F,0XFC,0X70,0X01,0X00,0X08,0X00,0X07,0XFE,0X38,0X78,0X00,0X7F,0XF8, -0X00,0X00,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X03, -0XF8,0X0E,0X00,0X18,0X00,0XFF,0X8E,0X0E,0X00,0X03,0XFC,0X00,0X00,0X00,0XFF,0X06, -0X00,0X00,0X00,0XC0,0X00,0X3F,0XE0,0X03,0XF8,0X00,0X3F,0XC0,0X03,0X00,0X18,0X00, -0X60,0X03,0XFE,0X00,0X00,0X0C,0X00,0X38,0X00,0XFF,0X0C,0X1C,0X00,0X07,0XF8,0X70, -0X00,0X00,0X00,0X00,0X03,0XF8,0X30,0X70,0X00,0X1F,0XE0,0X00,0X00,0X00,0X00,0X00, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,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,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,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,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0, -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,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,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,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,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,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE0,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,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,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,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,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,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,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,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, -}; - - - -const unsigned char gImage_5in83bc_b[33600] = { /* 0X00,0X01,0X58,0X02,0XC0,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, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,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,0X0F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,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,0X0F,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,0XF8,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,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFC,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,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,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, -0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X80,0X00,0X00,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,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8, -0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,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,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X01,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XE0,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X07,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFC,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X1F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,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,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE, -0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE, -0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE, -0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,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,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80, -0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFC,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X1F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00, -0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,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,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,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, -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,0XC0,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,0X7F,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,0XE0,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,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,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,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00,0XFF, -0XF0,0X03,0XF8,0X7F,0XFF,0XE1,0XFF,0XFF,0X80,0X1F,0X80,0X1F,0XC0,0X00,0X00,0X00, -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,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X7F,0XF0,0X01,0XF0,0X3F,0XFF, -0XC0,0XFF,0XFF,0X00,0X1F,0X80,0X0F,0X80,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XC0,0X00,0X00,0X00,0X00,0X7F,0XF0,0X01,0XF0,0X3F,0XFF,0XC0,0XFF,0XFF,0X00,0X1F, -0X80,0X0F,0X80,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00, -0X7F,0XF0,0X01,0XF0,0X3F,0XFF,0XC0,0XFF,0XFF,0X00,0X1F,0X80,0X0F,0X80,0X00,0X00, -0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X7F,0XF0,0X01,0XF0,0X3F, -0XFF,0XC0,0XFF,0XFF,0X00,0X1F,0X80,0X0F,0X80,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC0,0X00,0X00,0X00,0X00,0X7F,0XF0,0X01,0XF0,0X3F,0XFF,0XC0,0XFF,0XFF,0X00, -0X1F,0X80,0X0F,0X80,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00,0X00,0X00,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,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF, -0XE0,0X7F,0XF0,0X7E,0X0F,0XC1,0XFF,0XC0,0XFF,0XE0,0X00,0X00,0X03,0XFF,0X81,0XFF, -0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XE0,0X7F,0XF0,0X7E,0X0F, -0XC1,0XFF,0XC0,0XFF,0XE0,0X00,0X00,0X03,0XFF,0X81,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XE0,0X7F,0XF0,0X7E,0X0F,0XC1,0XFF,0XC0,0XFF,0XE0, -0X00,0X00,0X03,0XFF,0X81,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF, -0XFF,0XE0,0X7F,0XF0,0X7E,0X0F,0XC1,0XFF,0XC0,0XFF,0XE0,0X00,0X00,0X03,0XFF,0X81, -0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80, -0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XE0,0X7F,0XF0,0X7E, -0X0F,0XC1,0XFF,0XC0,0XFF,0XE0,0X00,0X00,0X03,0XFF,0X81,0XFF,0XFF,0XFF,0XC0,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X3F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE, -0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XC0,0XFC,0X00,0X07,0XE0,0X7F,0XF0,0X7E,0X0F,0XC0,0X0F,0XC0,0X00, -0X00,0X03,0XE0,0X03,0XFF,0X81,0XF8,0X00,0X0F,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X1F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8, -0X00,0X03,0XE0,0X7F,0XF0,0X7E,0X0F,0XC0,0X07,0XC0,0X00,0X00,0X03,0XE0,0X03,0XFF, -0X81,0XF0,0X00,0X07,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8, -0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00,0X03,0XE0,0X7F,0XF0, -0X7E,0X0F,0XC0,0X07,0XC0,0X00,0X00,0X03,0XE0,0X03,0XFF,0X81,0XF0,0X00,0X07,0XC0, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00,0X03,0XE0,0X7F,0XF0,0X7E,0X0F,0XC0,0X07,0XC0, -0X00,0X00,0X03,0XE0,0X03,0XFF,0X81,0XF0,0X00,0X07,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X03,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0XF8,0X00,0X03,0XE0,0X7F,0XF0,0X7E,0X0F,0XC0,0X07,0XC0,0X00,0X00,0X03,0XE0,0X03, -0XFF,0X81,0XF0,0X00,0X07,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XC0,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00,0X03,0XE0,0X7F, -0XF0,0X7E,0X0F,0XC0,0X07,0XC0,0X00,0X00,0X03,0XE0,0X03,0XFF,0X81,0XF0,0X00,0X07, -0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X80,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00,0X03,0XE0,0X7F,0XF0,0X01,0XF0,0X01,0XF8, -0X00,0XFF,0XFF,0XFF,0XE0,0X03,0XFF,0X81,0XF0,0X00,0X07,0XC0,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X81,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XC0,0XF8,0X00,0X03,0XE0,0X7F,0XF0,0X01,0XF0,0X01,0XF8,0X00,0XFF,0XFF,0XFF,0XE0, -0X03,0XFF,0X81,0XF0,0X00,0X07,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00,0X03,0XE0, -0X7F,0XF0,0X01,0XF0,0X01,0XF8,0X00,0XFF,0XFF,0XFF,0XE0,0X03,0XFF,0X81,0XF0,0X00, -0X07,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00,0X03,0XE0,0X7F,0XF0,0X01,0XF0,0X01, -0XF8,0X00,0XFF,0XFF,0XFF,0XE0,0X03,0XFF,0X81,0XF0,0X00,0X07,0XC0,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC0,0XF8,0X00,0X03,0XE0,0X7F,0XF0,0X01,0XF0,0X01,0XF8,0X00,0XFF,0XFF,0XFF, -0XE0,0X03,0XFF,0X81,0XF0,0X00,0X07,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFC,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00,0X03, -0XE0,0X7E,0X00,0X01,0XF0,0X01,0XF8,0X1F,0XFC,0X00,0X00,0X1F,0X03,0XFF,0X81,0XF0, -0X00,0X07,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00,0X03,0XE0,0X7C,0X00,0X01,0XF0, -0X01,0XF8,0X3F,0XF8,0X00,0X00,0X1F,0X83,0XFF,0X81,0XF0,0X00,0X07,0XC0,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFC,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XC0,0XF8,0X00,0X03,0XE0,0X7C,0X00,0X01,0XF0,0X01,0XF8,0X3F,0XF8,0X00, -0X00,0X1F,0X83,0XFF,0X81,0XF0,0X00,0X07,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00, -0X03,0XE0,0X7C,0X00,0X01,0XF0,0X01,0XF8,0X3F,0XF8,0X00,0X00,0X1F,0X83,0XFF,0X81, -0XF0,0X00,0X07,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X3F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00,0X03,0XE0,0X7C,0X00,0X01, -0XF0,0X01,0XF8,0X3F,0XF8,0X00,0X00,0X1F,0X83,0XFF,0X81,0XF0,0X00,0X07,0XC0,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XC0,0XFC,0X00,0X03,0XE0,0X7C,0X00,0X01,0XF0,0X01,0XF8,0X3F,0XF8, -0X00,0X00,0X1F,0X83,0XFF,0X81,0XF0,0X00,0X0F,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF, -0XFF,0XFF,0XE0,0X7F,0XF0,0X01,0XFF,0XC1,0XF8,0X3F,0XFF,0XFF,0XFC,0X1F,0XFC,0X0F, -0X81,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XE0,0X7F,0XF0, -0X01,0XFF,0XC1,0XF8,0X3F,0XFF,0XFF,0XFC,0X1F,0XFC,0X0F,0X81,0XFF,0XFF,0XFF,0XC0, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XE0,0X7F,0XF0,0X01,0XFF,0XC1,0XF8,0X3F, -0XFF,0XFF,0XFC,0X1F,0XFC,0X0F,0X81,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0XFF,0XFF,0XFF,0XE0,0X7F,0XF0,0X01,0XFF,0XC1,0XF8,0X3F,0XFF,0XFF,0XFC,0X1F,0XFC, -0X0F,0X81,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XE0,0X7F, -0XF0,0X01,0XFF,0XC1,0XF8,0X3F,0XFF,0XFF,0XFC,0X1F,0XFC,0X0F,0X81,0XFF,0XFF,0XFF, -0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X7E,0X0F,0X81,0XF8,0X3E,0X07, -0XC1,0XFC,0X3F,0X83,0XE0,0XFC,0X0F,0X80,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XC0,0X00,0X00,0X00,0X00,0X7C,0X0F,0X81,0XF0,0X3E,0X07,0XC0,0XF8,0X1F,0X03,0XE0, -0X7C,0X0F,0X80,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00, -0X7C,0X0F,0X81,0XF0,0X3E,0X07,0XC0,0XF8,0X1F,0X03,0XE0,0X7C,0X0F,0X80,0X00,0X00, -0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X7C,0X0F,0X81,0XF0,0X3E, -0X07,0XC0,0XF8,0X1F,0X03,0XE0,0X7C,0X0F,0X80,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC0,0X00,0X00,0X00,0X00,0X7C,0X0F,0X81,0XF0,0X3E,0X07,0XC0,0XF8,0X1F,0X03, -0XE0,0X7C,0X0F,0X80,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00, -0X00,0X7C,0X0F,0X81,0XF0,0X3E,0X07,0XC0,0XF8,0X1F,0X03,0XE0,0X7C,0X0F,0X80,0X00, -0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X7E,0X00, -0X3E,0X07,0XFF,0X07,0XE0,0X03,0XE0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X7E,0X00,0X3E,0X07,0XFF,0X07,0XE0, -0X03,0XE0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFC,0X00,0X7E,0X00,0X3E,0X07,0XFF,0X07,0XE0,0X03,0XE0,0X03,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X7E, -0X00,0X3E,0X07,0XFF,0X07,0XE0,0X03,0XE0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X7E,0X00,0X3E,0X07,0XFF,0X07, -0XE0,0X03,0XE0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC, -0X00,0XFF,0XF0,0X00,0X0F,0XFE,0X07,0XC0,0X00,0X3F,0X00,0X1F,0XFC,0X1F,0XFF,0XF0, -0X03,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0XFF,0XE0,0X00,0X0F, -0XFE,0X0F,0XC0,0X00,0X3F,0X00,0X1F,0XFC,0X1F,0XFF,0XF0,0X01,0XF0,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0XFF,0XE0,0X00,0X0F,0XFE,0X0F,0XC0,0X00,0X3F, -0X00,0X1F,0XFC,0X1F,0XFF,0XF0,0X01,0XF0,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF8,0X00,0XFF,0XE0,0X00,0X0F,0XFE,0X0F,0XC0,0X00,0X3F,0X00,0X1F,0XFC,0X1F,0XFF, -0XF0,0X01,0XF0,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0XFF,0XE0,0X00, -0X0F,0XFE,0X0F,0XC0,0X00,0X3F,0X00,0X1F,0XFC,0X1F,0XFF,0XF0,0X01,0XF0,0X3F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0XFF,0XE0,0X00,0X0F,0XFE,0X0F,0XC0,0X00, -0X3F,0X00,0X1F,0XFC,0X1F,0XFF,0XF0,0X01,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XC0,0XF8,0X00,0XFC,0X1F,0XFF,0XF0,0X7E,0X0F,0XC0,0X00,0X00,0XFF,0XE0,0XFF,0XFF, -0X83,0XF0,0X01,0XFF,0XFF,0XF8,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00,0XFC,0X1F, -0XFF,0XF0,0X7E,0X0F,0XC0,0X00,0X00,0XFF,0XE0,0XFF,0XFF,0X83,0XF0,0X01,0XFF,0XFF, -0XF8,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00,0XFC,0X1F,0XFF,0XF0,0X7E,0X0F,0XC0, -0X00,0X00,0XFF,0XE0,0XFF,0XFF,0X83,0XF0,0X01,0XFF,0XFF,0XF8,0X00,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC0,0XF8,0X00,0XFC,0X1F,0XFF,0XF0,0X7E,0X0F,0XC0,0X00,0X00,0XFF,0XE0,0XFF, -0XFF,0X83,0XF0,0X01,0XFF,0XFF,0XF8,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00,0XFC, -0X1F,0XFF,0XF0,0X7E,0X0F,0XC0,0X00,0X00,0XFF,0XE0,0XFF,0XFF,0X83,0XF0,0X01,0XFF, -0XFF,0XF8,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X1F,0X00,0X00,0X03,0XFF,0X81,0XF0, -0X00,0XF8,0X1F,0X00,0X1F,0X00,0X00,0X00,0X00,0X7F,0XFF,0XC1,0XF8,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X00,0X1F,0X00,0X00,0X03,0XFF,0X81,0XF0,0X01,0XF8,0X3F,0X00,0X1F, -0X00,0X00,0X00,0X00,0X7F,0XFF,0XC1,0XF8,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X1F, -0X00,0X00,0X03,0XFF,0X81,0XF0,0X01,0XF8,0X3F,0X00,0X1F,0X00,0X00,0X00,0X00,0X7F, -0XFF,0XC1,0XF8,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X1F,0X00,0X00,0X03,0XFF,0X81, -0XF0,0X01,0XF8,0X3F,0X00,0X1F,0X00,0X00,0X00,0X00,0X7F,0XFF,0XC1,0XF8,0X00,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X00,0X1F,0X00,0X00,0X03,0XFF,0X81,0XF0,0X01,0XF8,0X3F,0X00, -0X1F,0X00,0X00,0X00,0X00,0X7F,0XFF,0XC1,0XF8,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00, -0X1F,0X00,0X00,0X03,0XFF,0X81,0XF0,0X01,0XF8,0X3F,0X00,0X1F,0X00,0X00,0X00,0X00, -0X7F,0XFF,0X81,0XF8,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X07,0XFF,0X03,0XFF,0XFF,0XF0, -0X7E,0X00,0X3F,0XF8,0X3F,0X07,0XE0,0X00,0X00,0X03,0XF0,0X00,0X00,0X01,0XFF,0XC0, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC0,0X07,0XFF,0X03,0XFF,0XFF,0XF0,0X7E,0X00,0X3F,0XF8,0X3F, -0X07,0XE0,0X00,0X00,0X03,0XF0,0X00,0X00,0X01,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X07,0XFF,0X03,0XFF,0XFF,0XF0,0X7E,0X00,0X3F,0XF8,0X3F,0X07,0XE0,0X00,0X00,0X03, -0XF0,0X00,0X00,0X01,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X07,0XFF,0X03,0XFF,0XFF, -0XF0,0X7E,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X03,0XF0,0X00,0X00,0X01,0XFF, -0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X07,0XFF,0X03,0XFF,0XFF,0XF0,0X7E,0X03,0XFF,0XFF, -0XFF,0XFF,0XFF,0XE0,0X00,0X03,0XF0,0X00,0X00,0X01,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X00,0X00,0X03,0XF0,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00, -0X7F,0XF0,0X7C,0X0F,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00, -0X03,0XF0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X7F,0XF0,0X7E,0X0F,0XFF, -0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X03,0XF0,0X00,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X7F,0XF0,0X7E,0X0F,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X03,0XF0,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC, -0X00,0X7F,0XF0,0X7E,0X0F,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00, -0X00,0X03,0XF0,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X7F,0XF0,0X7E,0X0F, -0XFF,0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X03,0XF0,0X00,0X3F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X7F,0XF0,0X7E,0X0F,0XFF,0XF8,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X07,0XE0,0XFC,0X1F,0X83,0XFF,0X81,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFE,0X1F,0XFC,0X00,0X7E,0X00,0X3E,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XE0, -0XFC,0X1F,0X83,0XFF,0X81,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFC,0X00,0X7E, -0X00,0X3E,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XE0,0XFC,0X1F,0X83,0XFF,0X81, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFC,0X00,0X7E,0X00,0X3E,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X07,0XE0,0XFC,0X1F,0X83,0XFF,0X81,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFE,0X1F,0XFC,0X00,0X7E,0X00,0X3E,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07, -0XE0,0XFC,0X1F,0X83,0XFF,0X81,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFC,0X00, -0X7E,0X00,0X3E,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X07,0XFF,0X03,0XE0,0X7F,0XFF, -0X81,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFC,0X0F,0XFF,0XFF,0XFE,0X07,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC0,0X07,0XFF,0X03,0XE0,0X7F,0XFF,0X81,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0X1F,0XFC,0X0F,0XFF,0XFF,0XFE,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X07,0XFF,0X03,0XE0,0X7F,0XFF,0X81,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFC, -0X0F,0XFF,0XFF,0XFE,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X07,0XFF,0X03,0XE0,0X7F, -0XFF,0X81,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFC,0X0F,0XFF,0XFF,0XFE,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X07,0XFF,0X03,0XE0,0X7F,0XFF,0X81,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFE,0X1F,0XFC,0X0F,0XFF,0XFF,0XFE,0X07,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE0,0X07,0XFF,0X03,0XF0,0X7F,0XFF,0X81,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F, -0XFC,0X0F,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0X03,0XFF, -0X80,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X7C,0X00,0X7F,0XF0,0X01, -0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0X03,0XFF,0X80,0X00,0X00,0X3F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X7C,0X00,0X7F,0XF0,0X01,0XFF,0XC0,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF8,0X1F,0X03,0XFF,0X80,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE, -0X00,0X7C,0X00,0X7F,0XF0,0X01,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0X03, -0XFF,0X80,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X7C,0X00,0X7F,0XF0, -0X01,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0X03,0XFF,0X80,0X00,0X00,0X3F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X7C,0X00,0X7F,0XF0,0X01,0XFF,0XC0,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X07,0XE0,0XFC,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFE,0X1F,0X80,0X0F,0X83,0XF0,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XE0, -0XFC,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0X80,0X0F,0X81, -0XF0,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XE0,0XFC,0X00,0X03,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0X80,0X0F,0X81,0XF0,0X01,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X07,0XE0,0XFC,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFE,0X1F,0X80,0X0F,0X81,0XF0,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07, -0XE0,0XFC,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0X80,0X0F, -0X81,0XF0,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XE0,0XFC,0X00,0X01,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0X00,0X0F,0X81,0XF0,0X01,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0X80,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XE0,0X03,0XF0,0X00,0X00,0X3E,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0XFF,0XFF,0XFF,0XFF,0X80,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X03, -0XF0,0X00,0X00,0X3E,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0X80, -0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X03,0XF0,0X00,0X00,0X3E,0X00, -0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0X80,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X03,0XF0,0X00,0X00,0X3E,0X00,0X3F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XC0,0XFF,0XFF,0XFF,0XFF,0X80,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0, -0X03,0XF0,0X00,0X00,0X3E,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFC,0X00, -0X00,0X00,0X7E,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X7F,0XFF,0XFC,0X00,0X3E, -0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFC,0X00,0X00,0X00,0X7E,0X3F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X7F,0XFF,0XFE,0X00,0X3E,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X07,0XFF,0XFC,0X00,0X00,0X00,0X7E,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE, -0X00,0X7F,0XFF,0XFE,0X00,0X3E,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFC, -0X00,0X00,0X00,0X7E,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X7F,0XFF,0XFE,0X00, -0X3E,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFC,0X00,0X00,0X00,0X7E,0X3F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X7F,0XFF,0XFE,0X00,0X3E,0X07,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X07,0XFF,0XFC,0X00,0X00,0X00,0X3E,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFE,0X00,0X7F,0XFF,0XFE,0X00,0X7E,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0, -0XFF,0XFF,0XFC,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X7F,0XF0,0X01, -0XFF,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0XFF,0XFF,0XFC,0X00,0X00, -0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X7F,0XF0,0X01,0XFF,0XFF,0XF8,0X3F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0XFF,0XFF,0XFC,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XE0,0X7F,0XF0,0X01,0XFF,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE0,0XFF,0XFF,0XFC,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X7F,0XF0, -0X01,0XFF,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0XFF,0XFF,0XFC,0X00, -0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X7F,0XF0,0X01,0XFF,0XFF,0XF8,0X3F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X07,0XE0,0XFF,0XF0,0X7C,0X0F,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0X1F,0XFF,0XF0,0X7F,0XFF,0XC0,0X07,0XC1,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X07,0XE0,0XFF,0XE0,0X7C,0X0F,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X1F,0XFF, -0XF0,0X7F,0XFF,0XC0,0X07,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X07,0XE0,0XFF,0XE0,0X7C, -0X0F,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X1F,0XFF,0XF0,0X7F,0XFF,0XC0,0X07, -0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X07,0XE0,0XFF,0XE0,0X7C,0X0F,0XFE,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF8,0X1F,0XFF,0XF0,0X7F,0XFF,0XC0,0X07,0XC0,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XC0,0X07,0XE0,0XFF,0XE0,0X7C,0X0F,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F, -0XFF,0XF0,0X7F,0XFF,0XC0,0X07,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X07,0XE0,0XFF,0XF0, -0X7C,0X0F,0XFE,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X1F,0XFF,0XF0,0X7F,0XFF,0XC0, -0X07,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00,0XFF,0XFF,0X83,0XF0,0X01,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X83,0XE0,0X7F,0XF0,0X7E,0X0F,0XC0,0X07,0XC0,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC0,0XF8,0X00,0XFF,0XFF,0X83,0XF0,0X01,0XFF,0XFE,0X00,0X3F,0XF8,0X00,0X03, -0XE0,0X7F,0XF0,0X7E,0X0F,0XC0,0X07,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00,0XFF, -0XFF,0X83,0XF0,0X01,0XFF,0XFE,0X00,0X3F,0XF8,0X00,0X03,0XE0,0X7F,0XF0,0X7E,0X0F, -0XC0,0X07,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00,0XFF,0XFF,0X83,0XF0,0X01,0XFF, -0XFE,0X00,0X3F,0XF8,0X00,0X03,0XE0,0X7F,0XF0,0X7E,0X0F,0XC0,0X07,0XC0,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XC0,0XF8,0X00,0XFF,0XFF,0X83,0XF0,0X01,0XFF,0XFE,0X00,0X3F,0XF8,0X00, -0X03,0XE0,0X7F,0XF0,0X7E,0X0F,0XC0,0X07,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X00,0X00,0X00,0X00,0X00,0X00,0X3E,0X07,0XC0,0XF8,0X00,0XFF,0XE0,0X7F,0XFF,0X80, -0X00,0X3E,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00, -0X00,0X3E,0X07,0XC0,0XF8,0X00,0XFF,0XE0,0X7F,0XFF,0X80,0X00,0X3E,0X00,0X00,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X3E,0X07,0XC0,0XF8, -0X00,0XFF,0XE0,0X7F,0XFF,0X80,0X00,0X3E,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X3E,0X07,0XC0,0XF8,0X00,0XFF,0XE0,0X7F,0XFF, -0X80,0X00,0X3E,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00, -0X00,0X00,0X3E,0X07,0XC0,0XF8,0X00,0XFF,0XE0,0X7F,0XFF,0X80,0X00,0X3E,0X00,0X00, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00,0X00,0X00,0X3E,0X07,0XE0, -0XF8,0X00,0XFF,0XE0,0X7F,0XFF,0X80,0X00,0X3E,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X07,0XFF,0XFF,0XFF,0X83,0XF0,0X7F,0XF0,0X3E,0X07,0XFF,0X00,0X1F,0XFF,0XFF,0X80, -0X00,0X7E,0X00,0X01,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0X83, -0XF0,0X7F,0XF0,0X3E,0X07,0XFF,0X00,0X1F,0XFF,0XFF,0X80,0X00,0X7E,0X00,0X01,0XFF, -0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFE,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0X83,0XF0,0X7F,0XF0,0X3E,0X07, -0XFF,0X00,0X1F,0XFF,0XFF,0X80,0X00,0X7E,0X00,0X01,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X07,0XFF,0XFF,0XFF,0X83,0XF0,0X7F,0XF0,0X3E,0X07,0XFF,0X00,0X1F,0XFF,0XFF, -0X80,0X00,0X7E,0X00,0X01,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF, -0X83,0XF0,0X7F,0XF0,0X3E,0X07,0XFF,0X00,0X1F,0XFF,0XFF,0X80,0X00,0X7E,0X00,0X01, -0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0XFF,0XFF,0X80,0X00,0X7C,0X0F,0XFE,0X0F,0XC1, -0XF8,0X3F,0X00,0X00,0X03,0XFF,0X80,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC, -0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC0,0XFF,0XFF,0X00,0X00,0X7C,0X0F,0XFE,0X0F,0XC1,0XF8,0X3F,0X00,0X00,0X03, -0XFF,0X80,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFC,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0X00, -0X00,0X7C,0X0F,0XFE,0X0F,0XC1,0XF8,0X3F,0X00,0X00,0X03,0XFF,0X80,0X00,0X00,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0X00,0X00,0X7C,0X0F,0XFE,0X0F, -0XC1,0XF8,0X3F,0X00,0X00,0X03,0XFF,0X80,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XC0,0XFF,0XFF,0X00,0X00,0X7C,0X0F,0XFE,0X0F,0XC1,0XF8,0X3F,0X00,0X00, -0X03,0XFF,0X80,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0XFF,0XFF, -0X80,0X00,0X7C,0X0F,0XFE,0X0F,0XC1,0XF8,0X3F,0X00,0X00,0X03,0XFF,0X80,0X00,0X00, -0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XFF, -0XFF,0XFF,0XF8,0X3F,0XFF,0XE0,0X03,0XFF,0X80,0X0F,0XFF,0XF0,0X01,0XF8,0X3F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XE0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XFF,0XFF,0XFF,0XF8,0X3F,0XFF, -0XE0,0X03,0XFF,0X80,0X0F,0XFF,0XF0,0X01,0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X81,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFC,0X0F,0XFF,0XFF,0XFF,0XF8,0X3F,0XFF,0XE0,0X03,0XFF,0X80,0X0F, -0XFF,0XF0,0X01,0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X0F, -0XFF,0XFF,0XFF,0XF8,0X3F,0XFF,0XE0,0X03,0XFF,0X80,0X0F,0XFF,0XF0,0X01,0XF8,0X3F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X7F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XFF,0XFF,0XFF,0XF8,0X3F, -0XFF,0XE0,0X03,0XFF,0X80,0X0F,0XFF,0XF0,0X01,0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X03,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0, -0X00,0X00,0X00,0X00,0X7C,0X00,0X00,0X00,0X3E,0X07,0XC0,0X07,0XE0,0X03,0XE0,0X00, -0X0F,0X81,0XF0,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X7C, -0X00,0X00,0X00,0X3E,0X07,0XC0,0X07,0XE0,0X03,0XE0,0X00,0X0F,0X81,0XF0,0X01,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X07,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X7C,0X00,0X00,0X00,0X3E,0X07, -0XC0,0X07,0XE0,0X03,0XE0,0X00,0X0F,0X81,0XF0,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XC0,0X00,0X00,0X00,0X00,0X7C,0X00,0X00,0X00,0X3E,0X07,0XC0,0X07,0XE0,0X03,0XE0, -0X00,0X0F,0X81,0XF0,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFE,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00, -0X7C,0X00,0X00,0X00,0X3E,0X07,0XC0,0X07,0XE0,0X03,0XE0,0X00,0X0F,0X81,0XF0,0X01, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X3F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X7E,0X00,0X00,0X00,0X3E, -0X0F,0XC0,0X03,0XE0,0X03,0XE0,0X00,0X0F,0X83,0XF0,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X01,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC0,0XFF,0XFF,0XFF,0XE0,0X7F,0XFF,0X80,0X00,0X01,0XFF,0XC0,0X00,0X1F,0X00, -0X00,0X00,0X0F,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XE0,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF, -0XE0,0X7F,0XFF,0X80,0X00,0X01,0XFF,0XC0,0X00,0X1F,0X00,0X00,0X00,0X0F,0XFF,0XF0, -0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00, -0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XE0,0X7F,0XFF,0X80,0X00, -0X01,0XFF,0XC0,0X00,0X1F,0X00,0X00,0X00,0X0F,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFC,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XE0,0X7F,0XFF,0X80,0X00,0X01,0XFF,0XC0,0X00,0X1F, -0X00,0X00,0X00,0X0F,0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XF8,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,0XFF,0XFF,0XC0,0XFF,0XFF, -0XFF,0XE0,0X7F,0XFF,0X80,0X00,0X01,0XFF,0XC0,0X00,0X1F,0X00,0X00,0X00,0X0F,0XFF, -0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFC,0X00,0X03,0XE0,0X7F,0XFF,0X81, -0XFF,0XC1,0XF8,0X00,0XFF,0XE0,0XFF,0XFF,0X80,0X00,0X00,0X00,0X3E,0X00,0X3F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X03,0XFF,0XFF, -0XFF,0XFF,0XC0,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, -0XFF,0XFF,0XFF,0XC0,0XF8,0X00,0X03,0XE0,0X7F,0XFF,0X81,0XFF,0XC1,0XF8,0X00,0XFF, -0XE0,0XFF,0XFF,0X80,0X00,0X00,0X00,0X3E,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X01,0XFF,0XFF,0XFF,0XFF,0X80,0X7F,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,0XC0,0XF8, -0X00,0X03,0XE0,0X7F,0XFF,0X81,0XFF,0XC1,0XF8,0X00,0XFF,0XE0,0XFF,0XFF,0X80,0X00, -0X00,0X00,0X3E,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X00,0XFF,0XFF,0XFF,0XFF,0X00,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,0XC0,0XF8,0X00,0X03,0XE0,0X7F,0XFF, -0X81,0XFF,0XC1,0XF8,0X00,0XFF,0XE0,0XFF,0XFF,0X80,0X00,0X00,0X00,0X3E,0X00,0X3F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X7F, -0XFF,0XFF,0XFC,0X03,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,0XC0,0XF8,0X00,0X03,0XE0,0X7F,0XFF,0X81,0XFF,0XC1,0XF8,0X00, -0XFF,0XE0,0XFF,0XFF,0X80,0X00,0X00,0X00,0X3E,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X1F,0XFF,0XFF,0XF8,0X07,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,0XC0, -0XF8,0X00,0X03,0XE0,0X7F,0XFF,0X81,0XFF,0XC1,0XF8,0X00,0XFF,0XE0,0XFF,0XFF,0X80, -0X00,0X00,0X00,0X7E,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0XFF,0XFF,0XF0,0X0F,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,0XC0,0XF8,0X00,0X03,0XE0,0X7C, -0X0F,0X80,0X0F,0XC1,0XFF,0XFF,0X07,0XFF,0X00,0X1F,0XFC,0X0F,0XFE,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8, -0X07,0XFF,0XFF,0XE0,0X1F,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,0XC0,0XF8,0X00,0X03,0XE0,0X7C,0X0F,0X80,0X0F,0XC1,0XFF, -0XFF,0X07,0XFF,0X00,0X1F,0XFC,0X0F,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X03,0XFF,0XFF,0X80,0X7F, -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, -0XC0,0XF8,0X00,0X03,0XE0,0X7C,0X0F,0X80,0X0F,0XC1,0XFF,0XFF,0X07,0XFF,0X00,0X1F, -0XFC,0X0F,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X01,0XFF,0XFF,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00,0X03,0XE0, -0X7C,0X0F,0X80,0X0F,0XC1,0XFF,0XFF,0X07,0XFF,0X00,0X1F,0XFC,0X0F,0XFE,0X0F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X80,0X7F,0XFE,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,0XFF,0XC0,0XF8,0X00,0X03,0XE0,0X7C,0X0F,0X80,0X0F,0XC1, -0XFF,0XFF,0X07,0XFF,0X00,0X1F,0XFC,0X0F,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X3F,0XFC,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC0,0XF8,0X00,0X03,0XE0,0X7C,0X0F,0XFE,0X0F,0XFF,0XF8,0X00,0XF8,0X00,0XFF, -0XE0,0X03,0XF0,0X01,0XFF,0XC0,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X1F,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00,0X03, -0XE0,0X7C,0X0F,0XFE,0X0F,0XFF,0XF8,0X00,0XF8,0X00,0XFF,0XE0,0X03,0XF0,0X01,0XFF, -0XC0,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF0,0X0F,0XE0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00,0X03,0XE0,0X7C,0X0F,0XFE,0X0F, -0XFF,0XF8,0X00,0XF8,0X00,0XFF,0XE0,0X03,0XF0,0X01,0XFF,0XC0,0X07,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X07,0XC0, -0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XC0,0XF8,0X00,0X03,0XE0,0X7C,0X0F,0XFE,0X0F,0XFF,0XF8,0X00,0XF8,0X00, -0XFF,0XE0,0X03,0XF0,0X01,0XFF,0XC0,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X01,0X80,0X7F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XF8,0X00, -0X03,0XE0,0X7C,0X0F,0XFE,0X0F,0XFF,0XF8,0X00,0XF8,0X00,0XFF,0XE0,0X03,0XF0,0X01, -0XFF,0XC0,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X00,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,0XFF,0XFF,0XC0,0XFC,0X00,0X07,0XE0,0X7E,0X1F,0XFE, -0X0F,0XFF,0XF8,0X01,0XF8,0X00,0XFF,0XE0,0X01,0XE0,0X01,0XFF,0XC0,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80, -0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XE0,0X7F,0XFF,0X81,0XFF,0XC1,0XFF,0XFF,0XF8, -0X1F,0XFC,0X1F,0X80,0X00,0X01,0XFF,0XC1,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF, -0XFF,0XFF,0XE0,0X7F,0XFF,0X81,0XFF,0XC1,0XFF,0XFF,0XF8,0X1F,0XFC,0X1F,0X80,0X00, -0X01,0XFF,0XC1,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XE0,0X7F,0XFF, -0X81,0XFF,0XC1,0XFF,0XFF,0XF8,0X1F,0XFC,0X1F,0X80,0X00,0X01,0XFF,0XC1,0XFF,0XC0, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF8,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0XE0,0X7F,0XFF,0X81,0XFF,0XC1,0XFF,0XFF, -0XF8,0X1F,0XFC,0X1F,0X80,0X00,0X01,0XFF,0XC1,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0XFF,0XFF,0XFF,0XE0,0X7F,0XFF,0X81,0XFF,0XC1,0XFF,0XFF,0XF8,0X1F,0XFC,0X1F,0X80, -0X00,0X01,0XFF,0XC1,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X7F, -0XFF,0XFE,0X0F,0XFF,0XFF,0XC0,0XF8,0X1F,0XFF,0XFF,0X83,0XFF,0X80,0X00,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,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X7F,0XFF,0XFE,0X0F,0XFF,0XFF, -0XC0,0XF8,0X1F,0XFF,0XFF,0X83,0XFF,0X80,0X00,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,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XC0,0X00,0X00,0X00,0X00,0X7F,0XFF,0XFE,0X0F,0XFF,0XFF,0XC0,0XF8,0X1F,0XFF,0XFF, -0X83,0XFF,0X80,0X00,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,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00, -0X7F,0XFF,0XFE,0X0F,0XFF,0XFF,0XC0,0XF8,0X1F,0XFF,0XFF,0X83,0XFF,0X80,0X00,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, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X7F,0XFF,0XFE,0X0F,0XFF, -0XFF,0XC0,0XF8,0X1F,0XFF,0XFF,0X83,0XFF,0X80,0X00,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,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XE0,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XE1,0XFC,0X3F,0XFF, -0XFF,0X83,0XFF,0XC0,0X00,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,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -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,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,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,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,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,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,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,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, -0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,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,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,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,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC0,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,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,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,0X03,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,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,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X80,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,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,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,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,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,0X03,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X00,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00, -0X7F,0X80,0X00,0X1F,0XFF,0XFF,0X80,0X00,0X7F,0X80,0X00,0X00,0X00,0X0F,0XF8,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X0F,0XFF,0XFF,0XFF,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X1F,0XC0,0X00,0X3F,0XFF,0XFF,0X80,0X00,0X1F,0XFF,0XFF,0XFF,0XFE,0X00,0X0F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X00,0X00,0X00,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X80,0X00,0XFF,0XFF, -0XFF,0XE0,0X00,0X7F,0XC0,0X00,0X00,0X00,0X0F,0XF8,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE, -0X00,0X7F,0XFF,0XFF,0XFF,0XFE,0X0F,0XF0,0X00,0X00,0X00,0X1F,0XC0,0X00,0XFF,0XFF, -0XFF,0XE0,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XC0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0, -0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X03,0XFC, -0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X80,0X03,0XFF,0XFF,0XFF,0XF8,0X00,0X7F,0XC0, -0X00,0X00,0X00,0X1F,0XF8,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0XFF,0XFF,0XFF,0XFF, -0XFE,0X0F,0XF0,0X00,0X00,0X00,0X1F,0XC0,0X03,0XFF,0XFF,0XFF,0XF8,0X00,0X1F,0XFF, -0XFF,0XFF,0XFF,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X03,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00, -0X00,0X7F,0X80,0X07,0XFF,0XFF,0XFF,0XFE,0X00,0X3F,0XE0,0X00,0X00,0X00,0X1F,0XF0, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X01,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XE0,0X00,0X00, -0X00,0X1F,0XC0,0X07,0XFF,0XFF,0XFF,0XFE,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XF8,0X0F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XE0,0X00,0X00,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X80,0X1F,0XFF, -0XFF,0XFF,0XFF,0X00,0X3F,0XE0,0X00,0X00,0X00,0X3F,0XF0,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFC,0X03,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC0,0X1F,0XFF, -0XFF,0XFF,0XFF,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XF0,0X00,0X00,0X03, -0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X80,0X1F,0XFF,0XFF,0XFF,0XFF,0X80,0X1F, -0XF0,0X00,0X00,0X00,0X3F,0XE0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X07,0XFF,0XFF,0XFF, -0XFF,0XFE,0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC0,0X3F,0XFF,0XFF,0XFF,0XFF,0X80,0X1F, -0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X03,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0XFF,0XFF,0XF8,0X00,0X00,0X03,0XFC,0X00,0X00,0X0F,0XF0, -0X00,0X00,0X7F,0X80,0X3F,0XFF,0XFF,0XFF,0XFF,0XC0,0X0F,0XF0,0X00,0X00,0X00,0X7F, -0XE0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X07,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XE0,0X00, -0X00,0X00,0X1F,0XC0,0X7F,0XFF,0XFF,0XFF,0XFF,0XC0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFE, -0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC, -0XFF,0XFF,0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X80,0X7F, -0XFF,0XFF,0XFF,0XFF,0XE0,0X0F,0XF8,0X00,0X00,0X00,0X7F,0XC0,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFC,0X0F,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC0,0X7F, -0XFF,0XFF,0XFF,0XFF,0XE0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XE0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0XFF,0XFF,0XFE,0X00,0X00, -0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X80,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0, -0X07,0XF8,0X00,0X00,0X00,0XFF,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFE,0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X03,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0XFF,0XFF,0XFF,0X00,0X00,0X03,0XFC,0X00,0X00,0X0F, -0XF0,0X00,0X00,0X7F,0X80,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0XFC,0X00,0X00,0X00, -0XFF,0X80,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XE0, -0X00,0X00,0X00,0X1F,0XC0,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE0,0XFF,0XFF,0XFF,0X80,0X00,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X80, -0XFF,0XF0,0X00,0X00,0XFF,0XF0,0X07,0XFC,0X00,0X00,0X01,0XFF,0X00,0XFF,0X80,0X00, -0X00,0X00,0X00,0X0F,0XF8,0X00,0X00,0X00,0X00,0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC1, -0XFF,0XF0,0X00,0X01,0XFF,0XF0,0X1F,0X80,0X00,0X00,0X03,0XFF,0X0F,0XF0,0X00,0X00, -0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0XFF,0XFF,0XFF,0X80, -0X00,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X81,0XFF,0XE0,0X00,0X00,0X3F, -0XF0,0X07,0XFE,0X00,0X00,0X01,0XFF,0X00,0XFF,0X80,0X00,0X00,0X00,0X00,0X0F,0XE0, -0X00,0X00,0X00,0X00,0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC1,0XFF,0XE0,0X00,0X00,0X7F, -0XF0,0X1F,0XC0,0X00,0X00,0X00,0XFF,0X0F,0XF0,0X00,0X00,0X00,0X00,0X00,0X03,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0XFF,0XFF,0XFF,0XC0,0X00,0X03,0XFC,0X00,0X00, -0X0F,0XF0,0X00,0X00,0X7F,0X81,0XFF,0XC0,0X00,0X00,0X1F,0XF0,0X03,0XFE,0X00,0X00, -0X03,0XFE,0X00,0XFF,0X80,0X00,0X00,0X00,0X00,0X0F,0XE0,0X00,0X00,0X00,0X00,0X0F, -0XE0,0X00,0X00,0X00,0X1F,0XC1,0XFF,0XC0,0X00,0X00,0X1F,0XF0,0X1F,0XC0,0X00,0X00, -0X00,0XFF,0X0F,0XF0,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X00,0XFF,0XFF,0XFF,0XE0,0X00,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F, -0X81,0XFF,0X80,0X00,0X00,0X0F,0XF0,0X03,0XFF,0X00,0X00,0X03,0XFE,0X00,0XFF,0X80, -0X00,0X00,0X00,0X00,0X0F,0XF0,0X00,0X00,0X00,0X00,0X0F,0XE0,0X00,0X00,0X00,0X1F, -0XC1,0XFF,0X00,0X00,0X00,0X0F,0XF0,0X1F,0XC0,0X00,0X00,0X00,0XFF,0X0F,0XF0,0X00, -0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0XFF,0XFF,0XFF, -0XF0,0X00,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X81,0XFF,0X00,0X00,0X00, -0X07,0XF0,0X01,0XFF,0X80,0X00,0X07,0XFC,0X00,0XFF,0X80,0X00,0X00,0X00,0X00,0X0F, -0XF8,0X00,0X00,0X00,0X00,0X0F,0XF0,0X00,0X00,0X00,0X3F,0XC1,0XFF,0X00,0X00,0X00, -0X0F,0XF0,0X1F,0XC0,0X00,0X00,0X00,0XFF,0X0F,0XF0,0X00,0X00,0X00,0X00,0X00,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0XFF,0XFF,0XFF,0XF0,0X00,0X03,0XFC,0X00, -0X00,0X0F,0XF0,0X00,0X00,0X7F,0X81,0XFE,0X00,0X00,0X00,0X07,0XF0,0X00,0XFF,0X80, -0X00,0X07,0XFC,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFE,0X00, -0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC1,0XFE,0X00,0X00,0X00,0X07,0XF0,0X1F,0XC0,0X00, -0X00,0X00,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFC,0X00,0XFF,0XFF,0XFF,0XF0,0X00,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00, -0X7F,0X81,0XFE,0X00,0X00,0X00,0X07,0XF0,0X00,0XFF,0XC0,0X00,0X0F,0XF8,0X00,0XFF, -0XFF,0XFF,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XC0,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC1,0XFE,0X00,0X00,0X00,0X0F,0XF0,0X1F,0XC0,0X00,0X00,0X00,0XFF,0X0F,0XFF, -0XFF,0XFF,0XFF,0XE0,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0XFF,0XFF, -0XFF,0XF8,0X00,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X81,0XFC,0X00,0X00, -0X00,0X03,0XF0,0X00,0X7F,0XC0,0X00,0X0F,0XF8,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0X00, -0X0F,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC1,0XFC,0X00,0X00, -0X00,0X0F,0XF0,0X1F,0XC0,0X00,0X00,0X00,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF,0XE0,0X00, -0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0XFF,0XFF,0XFF,0XF8,0X00,0X03,0XFC, -0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X81,0XFC,0X00,0X00,0X00,0X07,0XF0,0X00,0X7F, -0XE0,0X00,0X1F,0XF0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC1,0XFC,0X00,0X00,0X00,0X0F,0XF0,0X1F,0XC0, -0X00,0X00,0X00,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X03,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XE0,0X00,0XFF,0XFF,0XFF,0XFC,0X00,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00, -0X00,0X7F,0X81,0XFC,0X00,0X00,0X00,0X07,0XF0,0X00,0X3F,0XE0,0X00,0X1F,0XE0,0X00, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XC1,0XFC,0X00,0X00,0X00,0X0F,0XF0,0X1F,0XC0,0X00,0X00,0X00,0XFF,0X0F, -0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0XFF, -0XFF,0XFF,0XFC,0X00,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X81,0XFC,0X00, -0X00,0X00,0X07,0XF0,0X00,0X3F,0XF0,0X00,0X1F,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC1,0XFC,0X00, -0X00,0X00,0X0F,0XF0,0X1F,0XC0,0X00,0X00,0X00,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF,0XE0, -0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0XFF,0XFF,0XFF,0XFE,0X00,0X03, -0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X81,0XFC,0X00,0X00,0X00,0X07,0XF0,0X00, -0X1F,0XF0,0X00,0X3F,0XC0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X03,0XFF,0XFF,0XFF, -0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC1,0XFC,0X00,0X00,0X00,0X0F,0XF0,0X1F, -0X80,0X00,0X00,0X01,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X03,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0XFF,0XFF,0XFF,0XFE,0X00,0X03,0XFC,0X00,0X00,0X0F,0XF0, -0X00,0X00,0X7F,0X81,0XFC,0X00,0X00,0X00,0X03,0XF0,0X00,0X0F,0XF8,0X00,0X7F,0XC0, -0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XC1,0XFC,0X00,0X00,0X00,0X0F,0XF0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF, -0X0F,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00, -0XFF,0XFF,0XFF,0XFE,0X00,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X81,0XFE, -0X00,0X00,0X00,0X07,0XF0,0X00,0X0F,0XF8,0X00,0X7F,0X80,0X00,0XFF,0XFF,0XFF,0XFF, -0XFF,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC1,0XFE, -0X00,0X00,0X00,0X07,0XF0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF, -0XE0,0X00,0X03,0XFC,0X00,0X1F,0XFE,0X03,0XFF,0XE0,0X00,0XFF,0X01,0XFF,0XFF,0X00, -0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X81,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X00,0X0F,0XFC,0X00,0XFF,0X80,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X01,0XFF, -0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC1,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X03,0XFC,0X00, -0X0F,0XFC,0X01,0XFF,0XE0,0X00,0XFE,0X00,0XFF,0XFF,0X00,0X03,0XFC,0X00,0X00,0X0F, -0XF0,0X00,0X00,0X7F,0X81,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X07,0XFC,0X00,0XFF, -0X00,0X00,0XFF,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0X0F,0XF0, -0X00,0X00,0X00,0X1F,0XC1,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0X0F,0XF0,0X00,0X00,0X00,0X00,0X00,0X03,0XFC,0X00,0X0F,0XF8,0X01,0XFF,0XC0, -0X06,0XFE,0X00,0XFF,0XFF,0X80,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X81, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X07,0XFE,0X01,0XFF,0X00,0X00,0XFF,0X80,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC1, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XF0,0X00,0X00, -0X00,0X00,0X00,0X03,0XFE,0X00,0X0F,0XF8,0X01,0XFF,0XC0,0X07,0XFC,0X00,0X7F,0XFF, -0X80,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X81,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X00,0X03,0XFE,0X03,0XFF,0X00,0X00,0XFF,0X80,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0XFF,0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC1,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XF0,0X00,0X00,0X00,0X00,0X00,0X03,0XFF, -0X00,0X07,0XF8,0X00,0XFF,0X80,0X0F,0XFC,0X00,0X7F,0XFF,0X80,0X03,0XFC,0X00,0X00, -0X0F,0XF0,0X00,0X00,0X7F,0X81,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X01,0XFF,0X03, -0XFE,0X00,0X00,0XFF,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X7F,0X0F, -0XE0,0X00,0X00,0X00,0X1F,0XC1,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X1F,0XFF,0XFF,0XFF, -0XFF,0XFC,0X0F,0XF0,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0X00,0X07,0XF0,0X00,0XFF, -0X80,0X0F,0XF8,0X00,0X3F,0XFF,0XC0,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F, -0X81,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X01,0XFF,0X07,0XFE,0X00,0X00,0XFF,0X80, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X7F,0X0F,0XE0,0X00,0X00,0X00,0X1F, -0XC1,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X1F,0XFF,0XFF,0XFF,0XFF,0XF8,0X0F,0XF0,0X00, -0X00,0X00,0X00,0X00,0X03,0XFF,0X00,0X07,0XF0,0X00,0X7F,0X00,0X0F,0XF8,0X00,0X3F, -0XFF,0XC0,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X81,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X00,0X01,0XFF,0X87,0XFC,0X00,0X00,0XFF,0X80,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X7F,0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC1,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X1F,0XFF,0XFF,0XFF,0XFF,0XE0,0X0F,0XF0,0X00,0X00,0X00,0X00,0X00,0X03, -0XFF,0X00,0X03,0XE0,0X00,0X7F,0X00,0X1F,0XF8,0X00,0X1F,0XFF,0XC0,0X03,0XFC,0X00, -0X00,0X0F,0XF0,0X00,0X00,0X7F,0X81,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XFF, -0X8F,0XFC,0X00,0X00,0XFF,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X7F, -0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC1,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X1F,0XFF,0XFF, -0XFF,0XFF,0X80,0X0F,0XF0,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0X80,0X03,0XE0,0X00, -0X7F,0X00,0X3F,0XF0,0X00,0X1F,0XFF,0XC0,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00, -0X7F,0X81,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0XFF,0X8F,0XF8,0X00,0X00,0XFF, -0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X7F,0X0F,0XE0,0X00,0X00,0X00, -0X1F,0XC1,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X1F,0XC3,0XFF,0XF8,0X00,0X00,0X0F,0XF0, -0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0X80,0X03,0XE0,0X00,0X3F,0X00,0X3F,0XE0,0X00, -0X0F,0XFF,0XC0,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X81,0XFD,0XFF,0XFF, -0XFF,0XF7,0XF0,0X00,0X00,0X7F,0XCF,0XF0,0X00,0X00,0XFF,0X80,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X7F,0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC1,0XFD,0XFF,0XFF, -0XFF,0XEF,0XF0,0X1F,0X81,0XFF,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0X00,0X00,0X00, -0X03,0XFF,0X80,0X01,0XC0,0X00,0X7E,0X00,0X7F,0XE0,0X00,0X0F,0XFF,0XE0,0X03,0XFC, -0X00,0X00,0X0F,0XF0,0X00,0X00,0X7F,0X81,0XFC,0X00,0X00,0X00,0X03,0XF0,0X00,0X00, -0X3F,0XFF,0XF0,0X00,0X00,0XFF,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X7F,0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC1,0XFC,0X00,0X00,0X00,0X07,0XF0,0X1F,0XC0, -0X7F,0XFF,0X00,0X00,0X0F,0XF0,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XC0,0X01,0XC0, -0X00,0X3E,0X00,0X7F,0XC0,0X00,0X07,0XFF,0XE0,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00, -0X00,0X7F,0X81,0XFC,0X00,0X00,0X00,0X07,0XF0,0X00,0X00,0X3F,0XFF,0XE0,0X00,0X00, -0XFF,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X7F,0X0F,0XE0,0X00,0X00, -0X00,0X1F,0XC1,0XFC,0X00,0X00,0X00,0X0F,0XF0,0X1F,0XC0,0X1F,0XFF,0X80,0X00,0X0F, -0XF0,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XC0,0X00,0XC0,0X00,0X3C,0X00,0X7F,0XC0, -0X00,0X03,0XFF,0XE0,0X03,0XFC,0X00,0X00,0X0F,0XF0,0X00,0X00,0XFF,0X81,0XFC,0X00, -0X00,0X00,0X07,0XF0,0X00,0X00,0X1F,0XFF,0XE0,0X00,0X00,0XFF,0X80,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC1,0XFC,0X00, -0X00,0X00,0X0F,0XF0,0X1F,0XC0,0X0F,0XFF,0XE0,0X00,0X0F,0XF0,0X00,0X00,0X00,0X00, -0X00,0X03,0XFF,0XC0,0X00,0X80,0X00,0X1C,0X00,0XFF,0XC0,0X00,0X03,0XFF,0XE0,0X03, -0XFF,0X00,0X00,0X0F,0XF0,0X00,0X01,0XFF,0X81,0XFC,0X00,0X00,0X00,0X07,0XF0,0X00, -0X00,0X0F,0XFF,0XC0,0X00,0X00,0XFF,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC1,0XFC,0X00,0X00,0X00,0X0F,0XF0,0X1F, -0XC0,0X03,0XFF,0XF0,0X00,0X0F,0XF0,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XE0,0X00, -0X80,0X00,0X1C,0X00,0X7F,0X80,0X00,0X01,0XFF,0XE0,0X03,0XFF,0XC0,0X00,0X0F,0XF0, -0X00,0X0F,0XFF,0X81,0XFC,0X00,0X00,0X00,0X07,0XF0,0X00,0X00,0X1F,0XFF,0XC0,0X00, -0X00,0XFF,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0X0F,0XE0,0X00, -0X00,0X00,0X1F,0XC1,0XFC,0X00,0X00,0X00,0X0F,0XF0,0X1F,0XC0,0X01,0XFF,0XFC,0X00, -0X0F,0XF0,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XE0,0X00,0X00,0X00,0X18,0X00,0XFF, -0X80,0X00,0X03,0XFF,0XE0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X81,0XFC, -0X00,0X00,0X00,0X07,0XF0,0X00,0X00,0X0F,0XFF,0X80,0X00,0X00,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFC,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC1,0XFC, -0X00,0X00,0X00,0X0F,0XF0,0X1F,0XC0,0X00,0XFF,0XFE,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XE0,0X03,0XFF,0XE0,0X00,0X00,0X00,0X00,0X01,0XFF,0X00,0X00,0X01,0XFF,0XE0, -0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X81,0XFC,0X00,0X00,0X00,0X07,0XF0, -0X00,0X00,0X0F,0XFF,0X80,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC1,0XFC,0X00,0X00,0X00,0X0F,0XF0, -0X1F,0XC0,0X00,0X3F,0XFF,0X80,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X03,0XFF,0XF0, -0X00,0X00,0X00,0X00,0X01,0XCF,0X00,0X00,0X01,0XFF,0XE0,0X03,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X01,0XFC,0X00,0X00,0X00,0X07,0XF0,0X00,0X00,0X07,0XFF,0X00, -0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0X0F,0XE0, -0X00,0X00,0X00,0X1F,0XC1,0XFC,0X00,0X00,0X00,0X0F,0XF0,0X1F,0XC0,0X00,0X1F,0XFF, -0XC0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X03,0XFF,0XF0,0X00,0X00,0X00,0X00,0X01, -0X8E,0X00,0X00,0X00,0XFF,0XE0,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X01, -0XFC,0X00,0X00,0X00,0X07,0XF0,0X00,0X00,0X07,0XFF,0X00,0X00,0X00,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFC,0X0F,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC1, -0XFC,0X00,0X00,0X00,0X0F,0XF0,0X1F,0XC0,0X00,0X07,0XFF,0XF0,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XE0,0X03,0XFF,0XF0,0X00,0X00,0X80,0X00,0X03,0X9E,0X00,0X18,0X00,0XFF, -0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X01,0XFC,0X00,0X00,0X00,0X07, -0XF0,0X00,0X00,0X03,0XFE,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XFF, -0XFF,0XFF,0XFF,0XFC,0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC1,0XFC,0X00,0X00,0X00,0X0F, -0XF0,0X1F,0XC0,0X00,0X03,0XFF,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X03,0XFF, -0XF8,0X00,0X00,0XC0,0X00,0X03,0X98,0X00,0X38,0X00,0X7F,0XE0,0X00,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X01,0XFC,0X00,0X00,0X00,0X07,0XF0,0X00,0X00,0X03,0XFE, -0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XFF,0XFF,0XFF,0XFF,0XF8,0X0F, -0XE0,0X00,0X00,0X00,0X1F,0XC1,0XFC,0X00,0X00,0X00,0X0F,0XF0,0X1F,0XC0,0X00,0X01, -0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X03,0XFF,0XF8,0X00,0X00,0XC0,0X00, -0X07,0X30,0X00,0X38,0X00,0X7F,0XE0,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC, -0X01,0XFC,0X00,0X00,0X00,0X07,0XF0,0X00,0X00,0X01,0XFC,0X00,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFC,0X0F,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0XE0,0X00,0X00,0X00,0X1F, -0XC1,0XFC,0X00,0X00,0X00,0X0F,0XF0,0X1F,0XC0,0X00,0X00,0X7F,0XFF,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XE0,0X01,0XFF,0XFC,0X00,0X01,0XC0,0X00,0X07,0X30,0X00,0X3C,0X00, -0X3F,0XE0,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X01,0XFC,0X00,0X00,0X00, -0X07,0XF0,0X00,0X00,0X00,0XFC,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F, -0XFF,0XFF,0XFF,0XFF,0XC0,0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC1,0XFC,0X00,0X00,0X00, -0X0F,0XF0,0X1F,0XC0,0X00,0X00,0X3F,0XFF,0XCF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X01, -0XFF,0XFC,0X00,0X01,0XE0,0X00,0X06,0X70,0X00,0X7C,0X00,0X3F,0XE0,0X00,0X03,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X01,0XFC,0X00,0X00,0X00,0X07,0XF0,0X00,0X00,0X00, -0X78,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0X00, -0X0F,0XE0,0X00,0X00,0X00,0X1F,0XC1,0XFC,0X00,0X00,0X00,0X0F,0XF0,0X1F,0XC0,0X00, -0X00,0X0F,0XFF,0XE7,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X01,0XFF,0XFC,0X00,0X01,0XE0, -0X00,0X0C,0X70,0X00,0X7E,0X00,0X1F,0XE0,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFC, -0X00,0X00,0XF8,0X00,0X00,0X00,0X03,0XF0,0X00,0X00,0X00,0X30,0X00,0X00,0X00,0X7F, -0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XFF,0XFF,0XFF,0XF0,0X00,0X07,0XE0,0X00,0X00,0X00, -0X1F,0X80,0XF8,0X00,0X00,0X00,0X07,0XF0,0X1F,0X80,0X00,0X00,0X07,0XFF,0XC3,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC0,0X01,0XFF,0XFE,0X00,0X03,0XE0,0X00,0X0C,0X60,0X00,0XFE, -0X00,0X1F,0XE0,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, -0X01,0XFF,0XFE,0X00,0X03,0XF0,0X00,0X0C,0XC0,0X00,0XFF,0X00,0X0F,0XE0,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,0X01,0XFF,0XFE,0X00,0X03, -0XF0,0X00,0X18,0X40,0X01,0XFF,0X00,0X1F,0XE0,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,0XFF,0XFF,0X00,0X07,0XF0,0X00,0X18,0X80,0X00, -0XFE,0X00,0X1F,0XE0,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,0XFF,0XFF,0X00,0X07,0XF8,0X00,0X3C,0XC0,0X01,0XFE,0X00,0X3F,0XE0,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,0XFF,0XFF,0X00, -0X07,0XF8,0X00,0X3F,0X80,0X01,0XFC,0X00,0X3F,0XE0,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,0XFF,0XFF,0X80,0X0F,0XFC,0X00,0X7F,0X80, -0X03,0XFC,0X00,0X7F,0XE0,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,0X7F,0XFF,0X80,0X0F,0XFC,0X00,0X7F,0X00,0X07,0XF8,0X00,0X7F,0XE0, -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,0X7F,0XFF, -0X80,0X0F,0XFC,0X00,0X7F,0X80,0X07,0XFC,0X00,0XFF,0XE0,0X00,0X00,0X04,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,0X0C,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X60,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X7F,0XFF,0XC0,0X1F,0XFE,0X00,0XFF, -0X80,0X07,0XF8,0X00,0XFF,0XE0,0X00,0X00,0X0E,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,0X1C,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X70,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X3F,0XFF,0X80,0X1F,0XFE,0X01,0XFF,0X80,0X0F,0XF8,0X01,0XFF, -0XE0,0X00,0X00,0X0E,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,0X1C,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X70,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3F, -0XFF,0XC0,0X3F,0XFF,0X01,0XFF,0XC0,0X0F,0XF0,0X01,0XFF,0XE0,0X00,0X00,0X0E,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,0X1C,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X70,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0XC0,0X1F,0XFF,0X01, -0XFF,0XE0,0X1F,0XF0,0X01,0XFF,0XE0,0X00,0X00,0X0E,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,0X1C,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X70,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X20,0X03, -0XFF,0XE0,0X00,0X00,0X0E,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,0X1C,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X70,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X03,0XFF,0XE0,0X00,0X00,0X0E, -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,0X1C,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X70,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X00,0X07,0XFF,0XE0,0X00,0X00,0X0E,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,0X1C,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X70,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00, -0X07,0XFF,0XE0,0X01,0XF8,0X0E,0X0F,0X80,0X00,0X7F,0X06,0X04,0X3C,0X03,0XF8,0X00, -0X00,0X00,0X7F,0X06,0X10,0X00,0X00,0X03,0X00,0X3F,0X80,0X01,0XF8,0X00,0X3F,0XC0, -0X02,0X1F,0X80,0X7E,0X00,0X03,0XFC,0X00,0X00,0X1C,0X3F,0X00,0X00,0XFF,0X0C,0X08, -0XF8,0X03,0XF0,0X71,0X80,0X00,0X00,0X18,0X01,0XF8,0X10,0X71,0XE0,0X1F,0XE0,0X00, -0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X0F,0XFF,0XE0,0X03,0XFE, -0X0E,0X3F,0XE0,0X01,0XFF,0XCF,0X0E,0XFC,0X0F,0XFE,0X00,0X00,0X01,0XFF,0XCF,0X38, -0X00,0X60,0X03,0X80,0XFF,0XF0,0X03,0XFE,0X00,0XFF,0XF0,0X07,0X7F,0XE1,0XFF,0X80, -0X0F,0XFF,0X00,0X00,0X1C,0X7F,0XC0,0X03,0XFF,0XDC,0X1D,0XF8,0X0F,0XFC,0X71,0XC0, -0X06,0X00,0X3C,0X07,0XFE,0X38,0X77,0XE0,0X7F,0XF8,0X00,0X00,0X03,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X0F,0XFF,0XE0,0X07,0X9F,0X0E,0XFB,0XF0,0X03,0XF3, -0XFF,0X0E,0XF8,0X1F,0XBF,0X00,0X00,0X03,0XF3,0XE7,0X1C,0X00,0XE0,0X07,0X81,0XFB, -0XFC,0X07,0X9F,0X01,0XFB,0XF0,0X07,0X79,0XF3,0XEF,0XC0,0X1F,0XBF,0X00,0X00,0X1C, -0XFB,0XE0,0X07,0XE7,0XEC,0X1D,0XF0,0X3F,0XBE,0X71,0XC0,0X0F,0X00,0X78,0X1F,0X9F, -0X38,0X7F,0X40,0XFC,0XFC,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X00,0X03,0XFF,0XE0,0X07,0X07,0X0F,0XE0,0X70,0X07,0X80,0X7F,0X0F,0X80,0X3C,0X07, -0X80,0X00,0X07,0XC0,0X7F,0X1C,0X00,0XE0,0X07,0X83,0XC0,0X7C,0X07,0X07,0X03,0XC0, -0X78,0X07,0XE0,0X77,0X81,0XC0,0X3C,0X07,0X80,0X00,0X1F,0XC0,0XF0,0X0F,0X01,0XFC, -0X1F,0X80,0X7C,0X07,0X71,0XC0,0X0F,0X00,0X38,0X3E,0X03,0XB8,0X7C,0X01,0XF0,0X1E, -0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X03,0XFF,0XE0,0X0E, -0X00,0X0F,0X80,0X38,0X0F,0X00,0X3F,0X0F,0X00,0X78,0X01,0XC0,0X00,0X0F,0X00,0X3F, -0X0E,0X01,0XF0,0X0F,0X07,0X80,0X1E,0X0E,0X00,0X07,0X80,0X3C,0X07,0XC0,0X3F,0X01, -0XE0,0X78,0X01,0XC0,0X00,0X1F,0X80,0X70,0X1E,0X00,0X7C,0X1F,0X00,0X70,0X03,0XF0, -0XE0,0X1F,0X80,0X70,0X38,0X01,0XF8,0X78,0X03,0XE0,0X0F,0X00,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X07,0XFF,0XE0,0X0E,0X00,0X0F,0X80,0X38,0X1E, -0X00,0X1F,0X0F,0X00,0X70,0X00,0XE0,0X00,0X0E,0X00,0X1F,0X0E,0X01,0XF0,0X0F,0X07, -0X00,0X0F,0X0E,0X00,0X0F,0X00,0X1E,0X07,0XC0,0X3E,0X00,0XE0,0X70,0X00,0XE0,0X00, -0X1F,0X00,0X38,0X3C,0X00,0X3C,0X1E,0X00,0XE0,0X01,0XF0,0XE0,0X1F,0X00,0X70,0X70, -0X00,0XF8,0X78,0X03,0XC0,0X07,0X80,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X00,0X1F,0XFF,0XE0,0X0E,0X00,0X0F,0X00,0X38,0X3E,0X00,0X1F,0X0F,0X00,0XE0, -0X00,0XE0,0X00,0X1E,0X00,0X0F,0X06,0X03,0XF0,0X0E,0X0E,0X00,0X0F,0X0F,0X00,0X0E, -0X00,0X0E,0X07,0X80,0X1C,0X00,0XE0,0XE0,0X00,0XE0,0X00,0X1E,0X00,0X38,0X38,0X00, -0X3C,0X1E,0X01,0XE0,0X00,0XF0,0X70,0X1F,0X80,0XF0,0XF0,0X00,0X78,0X78,0X07,0X80, -0X03,0X80,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X3F,0XFF,0XE0, -0X07,0X00,0X0E,0X00,0X1C,0X3C,0X00,0X0F,0X0E,0X00,0XE0,0X00,0X70,0X00,0X1C,0X00, -0X0F,0X07,0X03,0X98,0X1E,0X0E,0X00,0X07,0X87,0X80,0X0E,0X00,0X07,0X07,0X80,0X1C, -0X00,0XE0,0XE0,0X00,0X70,0X00,0X1E,0X00,0X38,0X38,0X00,0X1C,0X1C,0X01,0XC0,0X00, -0X70,0X70,0X3F,0X80,0XE0,0XE0,0X00,0X78,0X78,0X07,0X00,0X03,0X80,0X00,0X00,0X3F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0XFF,0XFF,0XE0,0X07,0XE0,0X0E,0X00,0X1C, -0X3C,0X00,0X0F,0X0E,0X01,0XFF,0XFF,0XF0,0X00,0X1C,0X00,0X07,0X07,0X83,0XBC,0X1E, -0X1F,0XFF,0XFF,0X87,0XE0,0X1C,0X00,0X07,0X07,0X00,0X1C,0X00,0XE1,0XFF,0XFF,0XF0, -0X00,0X1C,0X00,0X38,0X78,0X00,0X1C,0X1C,0X01,0XC0,0X00,0X70,0X38,0X3F,0XC1,0XE0, -0XE0,0X00,0X38,0X78,0X07,0XFF,0XFF,0XC0,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X01,0XFF,0XFF,0XE0,0X03,0XF8,0X0E,0X00,0X1C,0X3C,0X00,0X0F,0X0E,0X01, -0XFF,0XFF,0XF0,0X00,0X38,0X00,0X0F,0X03,0X87,0X9C,0X1C,0X1F,0XFF,0XFF,0X83,0XF8, -0X1C,0X00,0X07,0X07,0X00,0X1C,0X00,0XE1,0XFF,0XFF,0XF0,0X00,0X1C,0X00,0X38,0X78, -0X00,0X0C,0X1C,0X03,0X80,0X00,0X70,0X38,0X39,0XC1,0XC1,0XC0,0X00,0X38,0X78,0X07, -0XFF,0XFF,0XC0,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XFF,0XFF, -0XE0,0X01,0XFC,0X0E,0X00,0X1C,0X38,0X00,0X0F,0X0E,0X01,0XFF,0XFF,0XF0,0X00,0X38, -0X00,0X0F,0X03,0XC7,0X1E,0X38,0X1F,0XFF,0XFF,0X81,0XFC,0X1C,0X00,0X03,0X07,0X00, -0X1C,0X00,0XE1,0XFF,0XFF,0XF0,0X00,0X1C,0X00,0X38,0X78,0X00,0X0C,0X1C,0X03,0X80, -0X00,0X70,0X3C,0X71,0XE3,0XC1,0XC0,0X00,0X38,0X78,0X07,0XFF,0XFF,0X80,0X00,0X00, -0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0XE0,0X00,0X7E,0X0E,0X00, -0X1C,0X3C,0X00,0X0F,0X0E,0X01,0XC0,0X00,0X00,0X00,0X38,0X00,0X0F,0X01,0XCF,0X0E, -0X38,0X1C,0X00,0X00,0X00,0X7E,0X1C,0X00,0X07,0X07,0X00,0X1C,0X00,0XE1,0XC0,0X00, -0X00,0X00,0X1C,0X00,0X38,0X78,0X00,0X0C,0X1C,0X03,0X80,0X00,0X70,0X1C,0X70,0XE3, -0X81,0XC0,0X00,0X38,0X78,0X07,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X1F,0XFF,0XFF,0XE0,0X00,0X1F,0X0E,0X00,0X1C,0X3C,0X00,0X0F,0X0E, -0X01,0XC0,0X00,0X00,0X00,0X1C,0X00,0X07,0X01,0XCE,0X0F,0X30,0X1C,0X00,0X00,0X00, -0X1F,0X1C,0X00,0X07,0X07,0X00,0X1C,0X00,0XE1,0XC0,0X00,0X00,0X00,0X1C,0X00,0X38, -0X78,0X00,0X1C,0X1C,0X01,0XC0,0X00,0X70,0X0C,0X60,0X73,0X00,0XE0,0X00,0X38,0X78, -0X07,0X00,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X3F,0XFF, -0XFF,0XE0,0X00,0X0F,0X0E,0X00,0X1C,0X3C,0X00,0X0F,0X0E,0X00,0XE0,0X00,0X00,0X00, -0X1C,0X00,0X0F,0X01,0XEE,0X07,0X30,0X0E,0X00,0X00,0X00,0X0F,0X1C,0X00,0X07,0X07, -0X00,0X1C,0X00,0XE0,0XE0,0X00,0X00,0X00,0X1C,0X00,0X38,0X38,0X00,0X1C,0X1C,0X01, -0XC0,0X00,0X70,0X0E,0XE0,0X77,0X00,0XE0,0X00,0X78,0X78,0X07,0X00,0X00,0X00,0X00, -0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X7F,0XFF,0XFF,0XE0,0X00,0X07,0X0E, -0X00,0X1C,0X3E,0X00,0X1F,0X0E,0X00,0XE0,0X00,0X60,0X00,0X1C,0X00,0X0F,0X00,0XFC, -0X07,0XF0,0X0E,0X00,0X07,0X00,0X07,0X0E,0X00,0X0E,0X07,0X00,0X1C,0X00,0XE0,0XE0, -0X00,0X60,0X00,0X1C,0X00,0X38,0X38,0X00,0X1C,0X1C,0X01,0XE0,0X00,0XF0,0X07,0XE0, -0X7F,0X00,0XE0,0X00,0X78,0X78,0X07,0X80,0X03,0X80,0X00,0X00,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X07,0X0E,0X00,0X1C,0X1E,0X00,0X1F, -0X0E,0X00,0XF0,0X00,0XE0,0X00,0X0E,0X00,0X1F,0X00,0X7C,0X03,0XE0,0X07,0X00,0X0F, -0X00,0X07,0X0F,0X00,0X0E,0X07,0X00,0X1C,0X00,0XE0,0XF0,0X00,0XE0,0X00,0X1C,0X00, -0X38,0X3C,0X00,0X3C,0X1C,0X00,0XE0,0X01,0XF0,0X07,0XC0,0X3E,0X00,0X70,0X00,0XF8, -0X78,0X03,0X80,0X03,0X80,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XE0,0X00,0X07,0X0E,0X00,0X1C,0X0F,0X00,0X3F,0X0E,0X00,0X78,0X01,0XC0, -0X00,0X0F,0X00,0X3F,0X00,0X78,0X03,0XE0,0X07,0X80,0X1F,0X00,0X07,0X07,0X80,0X1C, -0X07,0X00,0X1C,0X00,0XE0,0X78,0X01,0XC0,0X00,0X1C,0X00,0X38,0X1E,0X00,0X7C,0X1C, -0X00,0X70,0X03,0XF0,0X07,0XC0,0X3E,0X00,0X78,0X01,0XF8,0X78,0X03,0XC0,0X07,0X00, -0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X0C,0X0F, -0X0E,0X00,0X1C,0X0F,0X80,0X7F,0X0E,0X00,0X3C,0X07,0XC0,0X00,0X07,0X80,0X7F,0X00, -0X38,0X01,0XC0,0X03,0XC0,0X3E,0X0C,0X0F,0X03,0XC0,0X7C,0X07,0X00,0X1C,0X00,0XE0, -0X3C,0X07,0XC0,0X00,0X1C,0X00,0X38,0X0F,0X01,0XFC,0X1C,0X00,0X7C,0X07,0XF0,0X03, -0X80,0X1C,0X00,0X3C,0X03,0XF8,0X78,0X01,0XF0,0X1E,0X00,0X00,0X00,0X00,0X03,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X0F,0X1E,0X0E,0X00,0X1C,0X07,0XE3, -0XFF,0X0E,0X00,0X1F,0X1F,0X80,0X00,0X03,0XF3,0XF7,0X00,0X38,0X01,0XC0,0X01,0XF9, -0XFC,0X0F,0X9E,0X01,0XF1,0XF8,0X07,0X00,0X1C,0X00,0XE0,0X1F,0X1F,0X80,0X00,0X1C, -0X00,0X38,0X07,0XE3,0XEC,0X1C,0X00,0X3F,0X3F,0X70,0X03,0X80,0X1C,0X00,0X1F,0X9F, -0XB8,0X78,0X01,0XF8,0XFE,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XE0,0X07,0XFC,0X0E,0X00,0X1C,0X01,0XFF,0XCF,0X0E,0X00,0X0F,0XFE, -0X00,0X00,0X03,0XFF,0XCF,0X00,0X30,0X00,0XC0,0X00,0XFF,0XF0,0X07,0XFC,0X00,0XFF, -0XF0,0X07,0X00,0X1C,0X00,0XE0,0X0F,0XFF,0X00,0X00,0X1C,0X00,0X38,0X03,0XFF,0XDC, -0X1C,0X00,0X0F,0XFC,0X70,0X01,0X00,0X08,0X00,0X07,0XFE,0X38,0X78,0X00,0X7F,0XF8, -0X00,0X00,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X03, -0XF8,0X0E,0X00,0X18,0X00,0XFF,0X8E,0X0E,0X00,0X03,0XFC,0X00,0X00,0X00,0XFF,0X06, -0X00,0X00,0X00,0XC0,0X00,0X3F,0XE0,0X03,0XF8,0X00,0X3F,0XC0,0X03,0X00,0X18,0X00, -0X60,0X03,0XFE,0X00,0X00,0X0C,0X00,0X38,0X00,0XFF,0X0C,0X1C,0X00,0X07,0XF8,0X70, -0X00,0X00,0X00,0X00,0X03,0XF8,0X30,0X70,0X00,0X1F,0XE0,0X00,0X00,0X00,0X00,0X00, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,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,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,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,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0, -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,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,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,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,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,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE0,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,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,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,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,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,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,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,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, -}; - -const unsigned char gImage_5in83bc_ry[33600] = { /* 0X00,0X01,0X58,0X02,0XC0,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, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,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,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,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,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC, -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,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X01,0XFC,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0XFE,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,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFE,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,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X7F,0XFE,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,0X3F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X1F,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFE,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,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3F, -0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0XF8,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,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X00,0X00,0X0F, -0X00,0X00,0X00,0X07,0XFC,0X00,0X00,0XFF,0X80,0X00,0X7F,0X80,0X00,0X00,0X00,0X00, -0X00,0X00,0X03,0XF0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X03,0XFF, -0XE0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X00,0X00,0X3F,0X00,0X00,0X00,0X1F,0XFF, -0X00,0X03,0XFF,0XC0,0X00,0X7F,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X03,0XF0,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFC,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8, -0X00,0X00,0X00,0X03,0XFF,0XFE,0X00,0X00,0X00,0X7F,0XFF,0X80,0X07,0XFF,0XE0,0X00, -0X7F,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XE0,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X07,0XFF, -0XFE,0X00,0X00,0X00,0XFE,0X3F,0X80,0X0F,0XFF,0XE0,0X00,0X3F,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X07,0XE0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X03,0XFF, -0X01,0XFF,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X07,0XFF,0XFC,0X00,0X00,0X00,0XFC, -0X1F,0XC0,0X1F,0X9F,0XF0,0X00,0X1C,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0XE0, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0XF8,0X00,0X7F,0XC0,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF8,0X00,0X00,0X00,0X07,0XFF,0XFC,0X00,0X00,0X01,0XF8,0X0F,0XC0,0X3E,0X0F,0XF0, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0F,0XE0,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X1F,0XE3,0XF0,0X3F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X0F, -0XFF,0XE0,0X00,0X00,0X03,0XF0,0X0F,0XC0,0X3C,0X07,0XF0,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X0F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3F, -0XBF,0XF0,0X1F,0XE0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X0F,0X80,0X00,0X00,0X00,0X03, -0XF0,0X0F,0XC0,0X38,0X07,0XF0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0F, -0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X7E,0X3F,0XF0,0X1F,0XE0,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X00,0X00,0X00,0X0F,0X00,0X00,0X00,0X00,0X03,0XF0,0X0F,0XC0,0X00,0X07, -0XE0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XC0,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0XFC,0X3F,0XE0,0X1F,0XE0,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00, -0X1F,0X00,0X00,0X00,0X00,0X03,0XF0,0X1F,0X80,0X00,0X0F,0XE0,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X1F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01, -0XF8,0X0F,0XE0,0X1F,0XE0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X1F,0X00,0X00,0X00,0X00, -0X03,0XF8,0X3F,0X80,0X00,0X0F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X1F,0X80,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0XF0,0X0F,0XE0,0X1F,0XE0, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X3F,0X00,0X01,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF8,0X00,0X00,0X00,0X1F,0XC0,0X00,0X00,0X00,0X03,0XF8,0X7F,0X00,0X00, -0X1F,0XC0,0X03,0XF8,0X01,0XF8,0X1F,0X80,0X00,0X7F,0XC0,0X1F,0X81,0XF8,0X00,0X00, -0X00,0X07,0XF8,0X00,0X00,0X03,0XE0,0X0F,0XE0,0X1F,0XE0,0X00,0X07,0X80,0X1F,0X80, -0XFC,0X00,0X0F,0XF0,0X00,0XFC,0XFF,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00, -0X00,0X1F,0XF0,0X00,0X00,0X00,0X03,0XFC,0XFF,0X00,0X00,0X1F,0X80,0X0F,0XF8,0X0F, -0XF8,0X7F,0XC0,0X01,0XFF,0XE0,0X3F,0X87,0XFC,0X00,0X00,0X00,0X1F,0XFC,0X00,0X00, -0X07,0XC0,0X1F,0XC0,0X1F,0XC0,0X03,0XFF,0X80,0X7F,0XC7,0XFE,0X00,0X3F,0XF8,0X03, -0XFD,0XFF,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X1F,0XF8,0X00,0X00, -0X00,0X03,0XFF,0XFE,0X00,0X00,0X3F,0X00,0X3F,0XF8,0X1F,0XF8,0XFF,0XC0,0X03,0XFF, -0XE0,0X3F,0X8F,0XFC,0X00,0X00,0X00,0X3F,0XFC,0X00,0X00,0X07,0XC0,0X1F,0XC0,0X3F, -0XC0,0X1F,0XFF,0X81,0XFF,0XCF,0XFE,0X00,0X7F,0XF8,0X0F,0XFF,0XFF,0X00,0X01,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X1F,0XFE,0X00,0X00,0X00,0X01,0XFF,0XF8,0X00, -0X00,0X7E,0X00,0X7F,0XF8,0X3F,0XFB,0XFF,0XC0,0X0F,0XFF,0XE0,0X3F,0X3F,0XFC,0X00, -0X00,0X00,0X7D,0XFE,0X00,0X00,0X07,0X80,0X1F,0XC0,0X7F,0XC0,0X3F,0XFF,0X03,0XFF, -0XDF,0XFF,0X00,0XFB,0XFC,0X3F,0XFB,0XF8,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00, -0X00,0X00,0X1F,0XFE,0X00,0X00,0X00,0X01,0XFF,0XF0,0X00,0X00,0XFC,0X00,0XFF,0XF8, -0XFF,0XF7,0XFF,0XC0,0X1F,0X9F,0XE0,0X3F,0X7F,0XFC,0X00,0X00,0X00,0XF8,0XFE,0X00, -0X00,0X0F,0X80,0X1F,0XC0,0X7F,0X80,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0X01,0XF1,0XFC, -0X7F,0XFF,0XE0,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X07,0XFF,0X00, -0X00,0X00,0X00,0XFF,0XE0,0X00,0X03,0XFE,0X01,0XFF,0XF1,0XFB,0XFF,0XDF,0XC0,0X1F, -0X07,0XE0,0X7F,0XFD,0XFC,0X00,0X00,0X01,0XF0,0XFE,0X00,0X00,0X0F,0X00,0X3F,0X80, -0XFF,0X01,0XFC,0X7F,0X0F,0XFF,0XFC,0X7F,0X03,0XE1,0XFC,0XFF,0XFF,0X80,0X00,0X01, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X03,0XFF,0X00,0X00,0X00,0X00,0XFF,0XC0, -0X00,0X0F,0XFF,0X81,0XE7,0XF1,0XE7,0XFF,0X1F,0XC0,0X3E,0X00,0X00,0X7F,0XF3,0XF8, -0X00,0X00,0X03,0XF0,0XFE,0X00,0X00,0X0F,0X00,0X3F,0X83,0XFE,0X03,0XF0,0X7F,0X0F, -0X3F,0XF0,0X7F,0X07,0XE1,0XFC,0XF3,0XFF,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8, -0X00,0X00,0X00,0X00,0XFF,0X80,0X00,0X00,0X00,0XFF,0XE0,0X00,0X1F,0XFF,0XC0,0X07, -0XF0,0X07,0XFE,0X3F,0X80,0X7E,0X00,0X00,0X7F,0XE3,0XF8,0X00,0X00,0X03,0XE1,0XFC, -0X00,0X00,0X0F,0X00,0X3F,0X8F,0XFC,0X07,0XE0,0XFE,0X0E,0X3F,0XE0,0X7F,0X07,0XC3, -0XF8,0X63,0XFE,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X00,0X7F, -0X80,0X00,0X00,0X03,0XFF,0XF0,0X00,0X1F,0XFF,0XC0,0X0F,0XE0,0X07,0XFC,0X3F,0X80, -0X7C,0X00,0X00,0X7F,0XC3,0XF8,0X00,0X00,0X07,0XE3,0XFC,0X00,0X00,0X0F,0X00,0X3F, -0XFF,0XF0,0X07,0XC0,0XFE,0X00,0X3F,0XC0,0X7F,0X0F,0XC7,0XF8,0X03,0XFC,0X00,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X00,0X3F,0X80,0X00,0X00,0X07,0XFF, -0XF0,0X00,0X1C,0X7F,0XE0,0X0F,0XE0,0X07,0XF8,0X3F,0X80,0XFC,0X00,0X00,0X7F,0X83, -0XF8,0X00,0X00,0X07,0XE7,0XF8,0X00,0X00,0X0F,0X00,0X7F,0XFF,0XC0,0X0F,0X80,0XFE, -0X00,0X3F,0XC0,0X7F,0X0F,0XCF,0XF0,0X07,0XF8,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF8,0X00,0X00,0X00,0X00,0X3F,0X80,0X00,0X00,0X1F,0XCF,0XF8,0X00,0X00,0X3F,0XE0, -0X0F,0XE0,0X0F,0XF0,0X7F,0X00,0XFC,0X00,0X00,0XFF,0X07,0XF0,0X00,0X00,0X0F,0XCF, -0XF0,0X00,0X00,0X0F,0X00,0X7F,0XFE,0X00,0X1F,0X80,0XFC,0X00,0X7F,0X80,0X7F,0X1F, -0X9F,0XE0,0X07,0XF8,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X00, -0X1F,0X80,0X00,0X00,0X3F,0X87,0XF8,0X00,0X00,0X1F,0XE0,0X1F,0XE0,0X0F,0XE0,0X7F, -0X01,0XF8,0X00,0X00,0XFE,0X07,0XF0,0X00,0X00,0X0F,0XDF,0XE0,0X00,0X00,0X0F,0X00, -0X7F,0X00,0X00,0X1F,0X01,0XFC,0X00,0X7F,0X00,0X7E,0X1F,0XBF,0XC0,0X07,0XF0,0X00, -0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X00,0X1F,0X80,0X00,0X00,0X7F, -0X07,0XFC,0X00,0X00,0X0F,0XE0,0X1F,0XC0,0X0F,0XE0,0X7F,0X01,0XF8,0X00,0X00,0XFE, -0X07,0XF0,0X00,0X00,0X1F,0XFF,0XC0,0X3F,0XFF,0XCF,0X80,0X7F,0X00,0X00,0X3F,0X01, -0XFC,0X00,0X7F,0X00,0X7E,0X3F,0XFF,0X80,0X07,0XF0,0X00,0X00,0X01,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X00,0X00,0X00,0X00,0X1F,0X80,0X00,0X00,0XFE,0X03,0XFC,0X00,0X00,0X0F, -0XE0,0X1F,0XC0,0X0F,0XE0,0X7F,0X03,0XF8,0X00,0X00,0XFE,0X07,0XE0,0X00,0X00,0X1F, -0XFF,0X00,0X7F,0XFF,0XCF,0XC0,0XFE,0X00,0X00,0X7E,0X01,0XFC,0X00,0X7F,0X00,0XFE, -0X3F,0XFE,0X00,0X0F,0XE0,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00, -0X00,0X1F,0X80,0X00,0X01,0XFC,0X01,0XFC,0X00,0X00,0X0F,0XE0,0X1F,0XC0,0X1F,0XC0, -0XFE,0X03,0XF8,0X00,0X01,0XFC,0X0F,0XE0,0X00,0X00,0X1F,0XFC,0X00,0X7F,0XFF,0XCF, -0XE0,0XFE,0X00,0X00,0X7E,0X01,0XF8,0X00,0XFE,0X00,0XFE,0X3F,0XF8,0X00,0X0F,0XE0, -0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X00,0X1F,0X80,0X00,0X01, -0XFC,0X01,0XFC,0X00,0X00,0X0F,0XE0,0X3F,0X80,0X1F,0XC0,0XFE,0X03,0XF0,0X00,0X01, -0XFC,0X0F,0XE0,0X00,0X00,0X3F,0XF0,0X00,0X7F,0XFF,0XC7,0XF0,0XFE,0X00,0X00,0X7E, -0X03,0XF8,0X00,0XFE,0X00,0XFC,0X7F,0XE0,0X00,0X0F,0XE0,0X00,0X00,0X01,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF8,0X00,0X00,0X00,0X00,0X1F,0X00,0X00,0X03,0XF8,0X00,0XFC,0X00,0X00, -0X1F,0XE0,0X3F,0X80,0X1F,0XC0,0XFE,0X07,0XF0,0X00,0X01,0XFC,0X0F,0XE0,0X00,0X00, -0X3F,0XC0,0X00,0X00,0X00,0X07,0XF8,0XFE,0X00,0X00,0XFE,0X03,0XF8,0X00,0XFE,0X01, -0XFC,0X7F,0X80,0X00,0X0F,0XC0,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00, -0X00,0X00,0X3F,0X00,0X00,0X03,0XF8,0X00,0XFC,0X00,0X00,0X1F,0XC0,0X3F,0X80,0X1F, -0X81,0XFC,0X07,0XF0,0X00,0X01,0XF8,0X1F,0XC0,0X00,0X00,0X3F,0X80,0X00,0X00,0X00, -0X03,0XF9,0XFC,0X00,0X00,0XFC,0X07,0XF8,0X00,0XFE,0X01,0XF8,0X7F,0X00,0X00,0X1F, -0XC0,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X00,0X3F,0X00,0X00, -0X03,0XF8,0X00,0XFC,0X00,0X00,0X3F,0XC0,0X3F,0X80,0X1F,0X81,0XFC,0X07,0XF0,0X00, -0X03,0XF8,0X1F,0XC0,0X00,0X00,0X3F,0X80,0X00,0X00,0X00,0X01,0XF1,0XFC,0X00,0X00, -0XFC,0X07,0XF0,0X01,0XFC,0X01,0XF8,0X7F,0X00,0X00,0X1F,0XC0,0X00,0X00,0X01,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X00,0X7E,0X00,0XF0,0X03,0XF0,0X01,0XFC,0X00, -0X00,0X3F,0X80,0X7F,0X00,0X3F,0X81,0XFC,0X07,0XF0,0X00,0X03,0XF8,0X1F,0XC0,0X00, -0X00,0X3F,0X80,0X78,0X00,0X00,0X00,0X01,0XFC,0X00,0X00,0XFC,0X0F,0XF0,0X01,0XFC, -0X03,0XF0,0X7F,0X00,0XF0,0X1F,0XC0,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00, -0X00,0X00,0X00,0X7C,0X01,0XF8,0X03,0XF8,0X01,0XF8,0X00,0X00,0X7F,0X00,0X7F,0X00, -0X3F,0X81,0XFC,0XF7,0XF0,0X07,0X03,0XF8,0X1F,0XCF,0X00,0X00,0X3F,0X81,0XF8,0X00, -0X00,0X00,0X01,0XFC,0X00,0X01,0XFC,0X1F,0XF3,0XE1,0XFC,0X03,0XF0,0X7F,0X03,0XF0, -0X1F,0X80,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X00,0XF8,0X03, -0XFC,0X03,0XF8,0X03,0XF8,0X00,0X00,0XFE,0X00,0X7F,0X3C,0X3F,0X81,0XF9,0XF7,0XF8, -0X0F,0X83,0XF0,0X1F,0X9F,0X00,0X00,0X3F,0X83,0XF8,0X00,0X00,0X00,0X03,0XF8,0X00, -0X01,0XFE,0X3F,0XF7,0XE1,0XFC,0X07,0XE0,0X7F,0X07,0XF0,0X3F,0X80,0X00,0X00,0X01, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X01,0XF8,0X03,0XFC,0X03,0XF8,0X03,0XF0, -0X3F,0X01,0XFE,0X00,0X7F,0X7C,0X3F,0X03,0XFB,0XF7,0XF8,0X3F,0X87,0XF0,0X3F,0XBF, -0X00,0X00,0X3F,0XCF,0XE0,0X00,0X00,0X00,0X03,0XF8,0X00,0X01,0XFE,0X7F,0XFF,0XC1, -0XF8,0X0F,0XC0,0X7F,0X9F,0XC0,0X3F,0X80,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8, -0X00,0X00,0X7C,0X07,0XF0,0X03,0XFC,0X01,0XFC,0X07,0XE0,0X3F,0X83,0XF8,0X00,0X7F, -0XF8,0X7F,0X03,0XFF,0XE7,0XFC,0XFE,0X07,0XF0,0X3F,0XFE,0X00,0X00,0X3F,0XFF,0XC0, -0X00,0X00,0X00,0X07,0XF8,0X00,0X01,0XFF,0XFF,0XFF,0X83,0XFC,0X1F,0X80,0X7F,0XFF, -0X80,0X3F,0X80,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X7F,0X1F,0XC0, -0X03,0XFC,0X01,0XFF,0X1F,0XC0,0X3F,0XEF,0XF0,0X00,0X7F,0XF0,0X7F,0X03,0XFF,0XC3, -0XFF,0XFC,0X07,0XF0,0X3F,0XFC,0X00,0X00,0X3F,0XFF,0X80,0X00,0X00,0X00,0X0F,0XF0, -0X38,0X00,0XFF,0XFF,0XFF,0X03,0XFF,0X3F,0X00,0X7F,0XFF,0X00,0X3F,0X80,0X00,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X7F,0XFF,0X80,0X03,0XFC,0X00,0XFF,0XFF, -0X80,0X3F,0XFF,0XE0,0X00,0X7F,0XE0,0X7F,0X03,0XFF,0X03,0XFF,0XF0,0X07,0XF0,0X3F, -0XF0,0X00,0X00,0X3F,0XFF,0X00,0X00,0X00,0X00,0XFF,0XFF,0XF8,0X00,0XFF,0XFF,0XFC, -0X03,0XFF,0XFE,0X00,0X7F,0XFE,0X00,0X3F,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF8,0X00,0X00,0X7F,0XFE,0X00,0X03,0XF8,0X00,0X7F,0XFF,0X00,0X1F,0XFF,0X80,0X00, -0X7F,0X80,0X7E,0X01,0XFE,0X01,0XFF,0XC0,0X07,0XE0,0X1F,0XE0,0X00,0X00,0X1F,0XFC, -0X00,0X00,0X00,0X00,0XFF,0XFF,0XF8,0X00,0XFF,0XCF,0XF8,0X03,0XFF,0XFC,0X00,0X3F, -0XF8,0X00,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X3F,0XF0, -0X00,0X01,0XF0,0X00,0X0F,0XF8,0X00,0X07,0XFC,0X00,0X00,0X3E,0X00,0X00,0X01,0XF8, -0X00,0XFF,0X00,0X00,0X00,0X1F,0X80,0X00,0X00,0X0F,0XE0,0X00,0X00,0X00,0X00,0XF8, -0XFF,0XF0,0X00,0X3F,0X07,0XE0,0X07,0XFF,0XF0,0X00,0X1F,0XC0,0X00,0X00,0X00,0X00, -0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,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,0X07,0XF0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,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,0X07,0XF0,0X00,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,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,0X07,0XE0,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,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,0X0F,0XE0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF8,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,0X0F,0XE0,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,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,0X0F,0XE0,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,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,0X0F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF8,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,0X1F,0XC0, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,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,0X1F,0XC0,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,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,0X1F,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,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,0X3F, -0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,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,0X7F,0XF8,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,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,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,0X03,0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X0F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,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,0X03, -0XFF,0XFF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,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,0XE0,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,0X03,0XFF,0XFF,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,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,0XE0, -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,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,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,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XFF, -0XFF,0XF3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0XFC,0X1F,0XF8,0X3F,0XFF,0XFF,0XFE, -0X7F,0XFC,0XFF,0X83,0XFF,0XFF,0X80,0X3F,0X8F,0XFF,0XFF,0XFF,0XE3,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X87,0XF1,0X8F,0XE3,0X1F,0XFF,0XFF,0XFC,0X7F,0XF8,0XFE,0X30,0XFF, -0XFE,0X3E,0X1F,0X8F,0XFF,0XFF,0XFF,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XF1, -0XC7,0XE3,0X8F,0XFF,0XFF,0XF0,0X7F,0XE0,0XFE,0X78,0XFF,0XF8,0XFF,0X8F,0XFF,0XFF, -0XFF,0XFF,0XC7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X7F,0XE3,0XC3,0XC7,0X87,0XFF,0XFF, -0XE0,0XFF,0XC1,0XFC,0X78,0XFF,0XF1,0X07,0X87,0XFF,0XFF,0XFF,0XFF,0XC7,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF8,0XFF,0XC3,0XC3,0X87,0X87,0XFF,0XFF,0XC0,0XFF,0X81,0XFC,0X78, -0XFF,0XE7,0X87,0X87,0XFF,0XFF,0XFF,0XFF,0XC7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0XFF, -0XC7,0XC3,0X8F,0X87,0XFF,0XC7,0X88,0XFF,0X11,0XFC,0X71,0XFF,0XC7,0X87,0X87,0XFF, -0XFF,0X8F,0XFF,0X87,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0X87,0XC3,0X0F,0X87,0XC7, -0X07,0X10,0XFE,0X21,0XFC,0X23,0XFF,0XCF,0X8F,0X8F,0X0F,0X8E,0X0F,0X0F,0X8F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X0F,0X87,0XC3,0X0F,0X87,0X82,0X3F,0X31,0XFE,0X63,0XFE, -0X07,0XFF,0X9F,0X8F,0X0C,0X0F,0X04,0X7C,0X47,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0, -0X87,0X87,0XC3,0X0F,0X86,0X00,0X7E,0X71,0XFC,0XE3,0XFE,0X0F,0XFF,0X9F,0X0E,0X18, -0X1C,0X00,0XFC,0XC7,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0XC3,0X8F,0XC3,0X1F,0X87, -0XE0,0XFC,0XF1,0XF9,0XE3,0XFC,0X07,0XFF,0X9F,0X0C,0X33,0X1F,0XC1,0XF8,0XC7,0X8F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0XC3,0X0F,0XC6,0X1F,0X8F,0XE1,0XF9,0XE1,0XF3,0XC3, -0XF8,0X87,0XFF,0X9F,0X00,0XFE,0X1F,0XC3,0XF0,0X8F,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XC3,0XC3,0X0F,0XC6,0X1F,0X8F,0XE3,0XF9,0XE3,0XF3,0XC7,0XF1,0XC3,0XFF,0X9F,0X1F, -0XFE,0X3F,0XC7,0XF0,0X1F,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0XC3,0X0F,0X86,0X1F, -0X0F,0XE1,0XF0,0X00,0XE0,0X01,0XE3,0XE3,0XFF,0X8E,0X1F,0XFE,0X3F,0XC3,0XF0,0X7F, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0XC3,0X0F,0X8E,0X1F,0X1F,0XE1,0XE0,0X00,0XC0, -0X01,0XC7,0XE3,0XFF,0XC6,0X1F,0XFC,0X3F,0XC3,0XE0,0XFF,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC3,0XC7,0X0F,0X8E,0X1F,0X1F,0XC1,0XFF,0XC3,0XFF,0X87,0XC7,0XE3,0XFF,0XE6, -0X3F,0XFC,0X7F,0X83,0XE1,0XFE,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0XC7,0X8F,0X1F, -0X1E,0X3F,0X91,0XFF,0XC7,0XFF,0X8F,0XC7,0XE7,0XFF,0XFE,0X3F,0XF8,0X4F,0X23,0XE1, -0XE6,0X33,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0X87,0X87,0X1F,0X0E,0X3F,0X30,0XFF,0XC7, -0XFF,0X8F,0XC7,0XC7,0XFF,0XFC,0X3F,0XF8,0X0E,0X61,0XE1,0X8E,0X27,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XE1,0X8F,0XC6,0X3F,0X8C,0X70,0X38,0XFF,0XC7,0XFF,0X8F,0XE3,0X8F,0XFF, -0XF8,0X7F,0XF8,0X00,0X71,0XE0,0X1E,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X3F,0XE0, -0XFF,0XC1,0XF0,0XF8,0XFF,0XC7,0XFF,0X8F,0XF0,0X3F,0XFF,0XE0,0X03,0XF8,0X61,0XF1, -0XF0,0X7E,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X71,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFC,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE, -0X31,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X63,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X83,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XE0,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X60,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XE0,0X00,0X00,0XE0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X01, -0XE0,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X03,0XE0,0X1F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XE0,0X00,0X07,0XE0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00, -0X07,0XE0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0XC3,0X87,0XE7,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE7,0XC7,0X87,0XEF,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7, -0XE7,0XCF,0X8F,0X87,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0XEF,0XCF,0X9F,0X83,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0XEF,0XDF,0X1F,0XC3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE3,0XFF,0XFF,0XBF,0XC3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0XFF,0XFF,0XBF,0XE3, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFF,0XFF,0XFF,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XE1,0XFF,0XFF,0XFF,0XF3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE1,0XFD,0XFF,0XFD, -0XF3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,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,0XF0,0XFC,0XFF,0XF8,0XFB,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFE,0X03,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,0XF0,0XFC,0XF9,0XF9,0XF3,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,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0XF8,0XF9, -0XF1,0XF3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X3F,0XC0,0X1F,0XFF,0XFF,0XFF,0X1F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF9,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X78,0X79,0XF3,0XE3,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X9C,0X3F,0X1F,0X0F,0X80,0X3F,0XFF,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X78,0X70,0XF7,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X3E,0X3C, -0X7F,0XC7,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE3,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00, -0X00,0X07,0XC3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X7E,0X78,0X83,0XC3,0XE1,0XFF,0XFF, -0XFF,0XFF,0XFF,0X8F,0XFF,0XFF,0XFF,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X07,0XC3,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFC,0X7E,0X73,0XC3,0XC3,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF, -0XFF,0XFF,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X07,0XC3,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X7E, -0X63,0XC3,0XC3,0XE3,0XFF,0XFF,0XFF,0XFF,0XFF,0X0F,0XFF,0XFF,0XF3,0XC3,0XFF,0XE7, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE, -0X00,0X00,0X07,0X83,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X7F,0XE7,0XC7,0XC7,0XC3,0XFF, -0XFE,0X1E,0X1C,0X7F,0X1F,0XF0,0XFC,0X61,0XC7,0XFE,0X07,0XF8,0X3F,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X07,0X03,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X3F,0XCF,0XC7,0X87,0XC7,0XFF,0XF8,0X1C,0X10,0X78,0X03, -0XC4,0X78,0X40,0X00,0X78,0X0F,0XE0,0X1C,0X47,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,0X00,0X00,0X06,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE, -0X0F,0XCF,0X87,0X0F,0XC7,0XFF,0XF0,0X30,0X04,0X7F,0X1F,0XCC,0X60,0X1F,0XC7,0XF3, -0X8F,0XC6,0X1C,0XC7,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,0X80,0X00,0X04,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XCF,0X86,0X1F,0XC7, -0XFF,0XE6,0X32,0X0C,0X7E,0X1F,0X8C,0X7C,0X3F,0X87,0XE7,0X0F,0X8F,0XF8,0XC7,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,0XC0,0X00,0X00,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X83,0XCF,0X80,0X7F,0X87,0XFF,0XFC,0X3C,0X1C,0X7E, -0X3F,0X08,0XF8,0X3F,0X8F,0XCF,0X1F,0X8F,0XF0,0X8F,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,0XF0,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC1,0XCF,0X8F,0XFF,0X8F,0XFF,0XFC,0X7C,0X38,0XFE,0X3F,0X01,0XF8,0X7F,0X8F, -0X8F,0X1F,0X1F,0XF0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFC,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0XC7,0X0F,0XFF, -0X8F,0XFF,0XFC,0X7C,0X78,0XFC,0X3F,0X07,0XF8,0XFF,0X8F,0X9E,0X1F,0X1F,0XF0,0X7F, -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,0X80,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0XE3,0X0F,0XFF,0X8F,0XFF,0XF8,0X7C,0X78, -0XFC,0X3E,0X0F,0XF8,0XFF,0X0F,0X9E,0X1E,0X1F,0XE0,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF0,0XF3,0X1F,0XFF,0X0F,0XFF,0XF8,0XFC,0X79,0XFC,0X7E,0X1F,0XF8,0XFF, -0X1F,0X1E,0X1E,0X1F,0XE1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0XFF,0X1F, -0XFF,0X1F,0XFF,0XF0,0X98,0X71,0XF8,0X72,0X1E,0X71,0XFF,0X1F,0X1C,0X3E,0X1E,0X61, -0XE7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XF1,0XFE,0X1F,0XFF,0X1F,0XFF,0XF0,0X18, -0XF0,0X38,0X46,0X18,0XF1,0XFE,0X1F,0X18,0X26,0X0C,0X61,0X8F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X8F,0XE1,0XFC,0X3F,0XFE,0X1F,0XFF,0XF0,0X38,0XF0,0X78,0X1E,0X01,0XF1, -0XFE,0X1F,0X02,0X0E,0X01,0XE0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X87,0XC3,0XF0, -0X01,0XF0,0X07,0XFF,0XF0,0XF8,0XF1,0XF8,0X3F,0X07,0XE1,0XFE,0X3F,0X86,0X3F,0X07, -0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XE0,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFC,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF8,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,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,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,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 gImage_7in5[] = { /* 0X00,0X01,0X80,0X02,0X80,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,0XFE,0X3F,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,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0X80, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFE,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFE,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFC,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFC,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFC,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFC,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFC,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XC0, -0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF8,0X07,0XFF,0XFF,0XFF,0XFF,0XC0,0X0F,0XFE,0X3F,0XFF,0XFC,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0X80, -0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XE0,0X07,0XFF,0XFF,0XFF,0XF8,0X00,0X0F,0XFE,0X3F,0XFF,0XFC,0X00, -0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0X80, -0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X80,0X07,0XFF,0XFF,0XFF,0XC0,0X00,0X0F,0XFE,0X3F,0XFF,0XFC,0X00, -0X01,0XFF,0XFF,0XFF,0XF0,0X7F,0XF0,0X7F,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X9F,0XFF,0XFE,0X0F,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0X80, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFE,0X3F,0XFF,0XFC,0X00, -0X00,0XFF,0XFF,0XFF,0X80,0X1F,0XC0,0X1F,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFE,0X0F,0XFF,0XFC,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0X80, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFC,0X00,0X07,0XFF,0XFF,0XFC,0X00,0X00,0X0F,0XFE,0X3F,0XFF,0XFC,0X00, -0X00,0X7F,0XFF,0XFF,0X00,0X1F,0X80,0X0F,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X03,0XFF,0XFE,0X0F,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF0,0X00,0X07,0XFF,0XFF,0XF8,0X00,0X00,0X0F,0XFE,0X3F,0XFF,0XFC,0X01, -0X80,0X3F,0XFF,0XFF,0X0F,0X0F,0X07,0X0F,0XFC,0X7F,0XFF,0XF0,0X06,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X01,0XFF,0XFE,0X1F,0XFF,0XF0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0X00, -0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XC0,0X00,0X07,0XFF,0XFF,0XF0,0X00,0X00,0X0F,0XFE,0X3F,0XFF,0XFC,0X01, -0XC0,0X0F,0XFF,0XFE,0X1F,0X8F,0X0F,0X87,0XFC,0X7F,0XFF,0XC0,0X0E,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0XFF,0XFF,0X3F,0XFF,0XE0,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0X00, -0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X00,0X00,0X07,0XFF,0XFF,0XE0,0X00,0XFF,0XFF,0XFE,0X3F,0XFF,0XFC,0X01, -0XE0,0X07,0XFF,0XFE,0X1F,0X87,0X1F,0XC7,0XFC,0X7F,0XFF,0X80,0X1E,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC0,0X7F,0XFF,0XFF,0XFF,0XC0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFE,0X01, -0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFE,0X00,0X00,0X07,0XFF,0XFF,0XE0,0X07,0XFF,0XFF,0XFE,0X3F,0XFF,0XFC,0X01, -0XF0,0X03,0XFF,0XFE,0X1F,0X87,0X1F,0XC7,0XFC,0X7F,0XFF,0X00,0X7E,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X3F,0XFF,0XFF,0XFF,0X80,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFE,0X01, -0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X00,0X10,0X07,0XFF,0XFF,0XC0,0X0F,0XFF,0XFF,0XFE,0X3F,0XFF,0XFC,0X01, -0XF8,0X01,0XFF,0XFE,0X1F,0X87,0X1F,0XC7,0XFC,0X7F,0XFE,0X00,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X1F,0XFF,0XFF,0XFF,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFE,0X01, -0X00,0X7F,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0XFF,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0X00,0X30,0X07,0XFF,0XFF,0X80,0X1F,0XFF,0XFF,0XFE,0X3F,0XFF,0XFC,0X01, -0XFE,0X00,0X7F,0XFE,0X0F,0X87,0X0F,0X87,0XFC,0X7F,0XF8,0X01,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFC,0X07,0XFE,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFC,0X03, -0X80,0X7F,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0XFC,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0X80,0XF0,0X07,0XFF,0XFF,0X80,0X3F,0XFF,0XFF,0XFE,0X3F,0XFF,0XFC,0X01, -0XFF,0X00,0X3F,0XFF,0X00,0X07,0X00,0X07,0X00,0X03,0XF0,0X03,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XC0,0X00,0XFE,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X0F,0XFF,0XFE,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFC,0X03, -0X80,0X7F,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0XF8,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0X83,0XF0,0X07,0XFF,0XFF,0X80,0X7F,0XFF,0XFF,0XFE,0X3F,0XFF,0XFC,0X01, -0XFF,0X80,0X1F,0XFF,0X80,0X07,0X80,0X07,0X00,0X03,0XE0,0X07,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0X00,0X00,0X3E,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XC0,0X03,0XFF,0XFE,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFC,0X03, -0X80,0X3F,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0XF0,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0X8F,0XF0,0X07,0XFF,0XFF,0X00,0X7F,0XFF,0XFF,0XFE,0X3F,0XFF,0XFC,0X01, -0XFF,0XC0,0X0F,0XFF,0XE0,0X87,0XE0,0XC7,0X00,0X03,0XC0,0X0F,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X3E,0X00,0X00,0X0F,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X00,0X01,0XFF,0XFE,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFC,0X07, -0X80,0X3F,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0XE0,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XDF,0XF0,0X07,0XFF,0XFF,0X00,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFC,0X01, -0XFF,0XF0,0X07,0XFF,0XFF,0X8F,0XFF,0XC7,0XFC,0X7F,0X80,0X3F,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE, -0X00,0X00,0XFF,0XFE,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XF8,0X07, -0XC0,0X3F,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0XE0,0X0F,0XC0,0X00,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFF,0X00,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFC,0X01, -0XFF,0XF8,0X01,0XFF,0XFF,0X8F,0XFF,0X87,0XFC,0X7E,0X00,0X7F,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC, -0X00,0X00,0X7F,0XFE,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XF8,0X07, -0XC0,0X1F,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0XC0,0X1F,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFC,0X01, -0XFF,0XFC,0X00,0XFF,0XFF,0X0F,0XFF,0X0F,0XFC,0X7C,0X00,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC, -0X0F,0XE0,0X7F,0XFE,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XF8,0X07, -0XC0,0X1F,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0XC0,0X3F,0XF8,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0XF8,0X07,0XFF,0XFE,0X3F,0XFF,0XFC,0X01, -0XFF,0XFE,0X00,0X7F,0XFE,0X1F,0XFE,0X0F,0XFC,0X78,0X01,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC, -0X3F,0XF0,0X3F,0XFE,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XF0,0X0F, -0XC0,0X1F,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0X80,0X7F,0XF8,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0X80,0X00,0XFF,0XFE,0X3F,0XFF,0XFC,0X01, -0XFF,0XFF,0X80,0X3F,0X00,0X3F,0X80,0X1F,0XFC,0X70,0X07,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE, -0X7F,0XF8,0X3F,0XFE,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XF0,0X0F, -0XE0,0X1F,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0X80,0X7F,0XF8,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0X00,0X00,0X3F,0XFE,0X3F,0XFF,0XFC,0X01, -0XFF,0XFF,0XC0,0X0F,0X00,0X7F,0X80,0X3F,0XFC,0X40,0X0F,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X3F,0XFE,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XF0,0X0F, -0XE0,0X0F,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0X80,0X7F,0XFC,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0X00,0X00,0X0F,0XFE,0X3F,0XFF,0XFC,0X01, -0XFF,0XFF,0XE0,0X07,0X03,0XFF,0X81,0XFF,0XFF,0X80,0X1F,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X3F,0XFE,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XF0,0X0F, -0XE0,0X0F,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0X80,0X7F,0XFC,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0X00,0X00,0X07,0XFE,0X3F,0XFF,0XFC,0X01, -0XFF,0XFF,0XF0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X3F,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFC,0X1F,0XFE,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XE0,0X1F, -0XF0,0X0F,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0X80,0X7F,0XFC,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0X00,0X00,0X07,0XFE,0X3F,0XFF,0XFC,0X01, -0XFF,0XFF,0XFC,0X01,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0XFF,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFC,0X1F,0XFE,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XE0,0X1F, -0XF0,0X07,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0X80,0X7F,0XF8,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0X00,0X00,0X03,0XFE,0X3F,0XFF,0XFC,0X01, -0XFF,0XFF,0XFE,0X00,0X7F,0XFF,0XFF,0XFF,0XF8,0X01,0XFF,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFC,0X1F,0XFE,0X3F,0XFF,0XFF,0X8F,0XFF,0X01,0XFF,0XFE,0X3F,0XFF,0XE0,0X1F, -0XF0,0X07,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0X80,0X7F,0XF8,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0X1F,0XE0,0X01,0XFE,0X3F,0XFF,0XFC,0X01, -0XFF,0XFF,0XFF,0X00,0X3F,0XFF,0XFF,0XFF,0XF0,0X03,0XFF,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFC,0X1F,0XFE,0X3F,0XFF,0XFE,0X07,0XFE,0X00,0X7F,0XFE,0X3F,0XFF,0XC0,0X3F, -0XF0,0X07,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0XC0,0X3F,0XF0,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0XFF,0XF8,0X01,0XFE,0X3F,0XFF,0XFC,0X01, -0XFF,0XFF,0XFF,0X80,0X1F,0XFF,0XFF,0XFF,0XE0,0X07,0XFF,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFE,0X00,0X1F,0X00,0X00,0X00,0X00,0X1F,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFC,0X3F,0XFE,0X3F,0XFF,0XFC,0X03,0XFC,0X00,0X3F,0XFE,0X3F,0XFF,0XC0,0X3F, -0XF8,0X03,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0XC0,0X1F,0XF0,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0XFF,0XFC,0X01,0XFE,0X3F,0XFF,0XFC,0X01, -0XFF,0XFF,0XFF,0XE0,0X0F,0XFF,0XFF,0XFF,0XC0,0X1F,0XFF,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFC,0X00,0X0F,0X00,0X00,0X00,0X00,0X1E,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X3F,0XFE,0X3F,0XFF,0XFC,0X61,0XF8,0X7E,0X1F,0XFE,0X3F,0XFF,0XC0,0X3F, -0XF8,0X03,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0XC0,0X0F,0XC0,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0XFF,0XFC,0X01,0XFE,0X3F,0XFF,0XFC,0X01, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFF,0XFF,0X00,0X3F,0XFF,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFC,0X00,0X0F,0X00,0X00,0X00,0X00,0X1C,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X3F,0XFE,0X3F,0XFF,0XF8,0XF1,0XF0,0XFF,0X9F,0XFE,0X3F,0XFF,0X80,0X3F, -0XF8,0X03,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0XE0,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0XFF,0XFE,0X00,0XFE,0X3F,0XFF,0XFC,0X01, -0XFF,0XFF,0XFF,0XF8,0X01,0XFF,0XFF,0XFE,0X00,0X7F,0XFF,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFC,0X00,0X0F,0X00,0X00,0X00,0X00,0X1C,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X3F,0XFE,0X00,0X1F,0XF9,0XF8,0XF1,0XFF,0X8F,0XFE,0X3F,0XFF,0X80,0X7F, -0XF8,0X03,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0XF0,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0XFF,0XFE,0X00,0XFE,0X3F,0XFF,0XFC,0X01, -0XFF,0XFF,0XFF,0XFC,0X00,0XFF,0XFF,0XFC,0X00,0XFF,0XFF,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFE,0X00,0X0F,0X00,0X00,0X00,0X00,0X1E,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X7F,0XFE,0X00,0X07,0XF9,0XF8,0XF3,0XFF,0XCF,0XFE,0X3F,0XFF,0X80,0X00, -0X00,0X01,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0XE0,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0XFF,0XFE,0X00,0XFE,0X3F,0XFF,0XFC,0X01, -0XFF,0XFF,0XFF,0XFC,0X00,0X7F,0XFF,0XF8,0X00,0XFF,0XFF,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X7F,0XFE,0X00,0X01,0XF9,0XF0,0XF3,0XFF,0XCF,0XFE,0X3F,0XFF,0X80,0X00, -0X00,0X01,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0XE0,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0XFF,0XFE,0X00,0XFE,0X3F,0XFF,0XFC,0X01, -0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XF0,0X00,0X7F,0XFF,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XE0,0XFF,0XFE,0X00,0X00,0XFC,0XE1,0XF3,0XFF,0XCF,0XFE,0X3F,0XFF,0X00,0X00, -0X00,0X01,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0XC0,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0XFF,0XFE,0X00,0XFE,0X3F,0XFF,0XFC,0X01, -0XFF,0XFF,0XFF,0XF0,0X00,0X0F,0XFF,0XC0,0X00,0X3F,0XFF,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC0,0XFF,0XFF,0XFF,0X00,0X7C,0X01,0XF3,0XFF,0XFF,0XFE,0X3F,0XFF,0X00,0X00, -0X00,0X00,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0X80,0X70,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0XFF,0XFE,0X00,0XFE,0X3F,0XFF,0XFC,0X01, -0XFF,0XFF,0XFF,0XE0,0X00,0X07,0XFF,0X80,0X00,0X1F,0XFF,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC1,0XFF,0XFF,0XFF,0XE0,0X7E,0X03,0XF3,0XFF,0XFF,0XFE,0X3F,0XFF,0X00,0X00, -0X00,0X00,0XFF,0X80,0X7F,0XF8,0X01,0XFF,0X80,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0XFF,0XFE,0X01,0XFE,0X3F,0XFF,0XFC,0X01, -0XFF,0XFF,0XFF,0X80,0X10,0X03,0XFF,0X00,0X20,0X0F,0XFF,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X83,0XFF,0XFF,0XFF,0XF8,0X3F,0X8F,0XF3,0XFF,0XFF,0XFE,0X3F,0XFE,0X00,0X00, -0X00,0X00,0XFF,0X80,0X7F,0XF8,0X01,0XFF,0X80,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFF,0X00,0X7F,0XFC,0X01,0XFE,0X3F,0XFF,0XFC,0X01, -0XFF,0XFF,0XFF,0X00,0X3C,0X01,0XFE,0X00,0XF0,0X03,0XFF,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X03,0XFF,0XFF,0XFF,0XFC,0X3F,0XFF,0XF3,0XFF,0XFF,0XFE,0X3F,0XFE,0X00,0X00, -0X00,0X00,0XFF,0X80,0X3F,0XF0,0X01,0XFF,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFF,0X00,0X7F,0XFC,0X01,0XFE,0X3F,0XFF,0XFC,0X01, -0XFF,0XFF,0XFE,0X00,0X7E,0X00,0X78,0X01,0XF8,0X01,0XFF,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFE,0X07,0XFF,0XFF,0XFF,0XFC,0X1F,0XFF,0XF3,0XFF,0XFF,0XFE,0X3F,0XFE,0X01,0XFF, -0XFF,0X00,0X7F,0X80,0X3F,0XE0,0X01,0XFF,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFF,0X00,0X3F,0XF8,0X01,0XFE,0X3F,0XFF,0XFC,0X01, -0XFF,0XFF,0XFC,0X00,0XFF,0X00,0X30,0X03,0XFC,0X00,0XFF,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFC,0X0F,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XF3,0XFF,0XFF,0XFE,0X3F,0XFE,0X01,0XFF, -0XFF,0X00,0X7F,0X80,0X3F,0XC0,0X01,0XFF,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X00,0X00,0X00,0X01,0XFF,0X80,0X1F,0XF0,0X03,0XFE,0X3F,0XFF,0XFC,0X01, -0XFF,0XFF,0XF0,0X03,0XFF,0X80,0X00,0X07,0XFF,0X00,0X7F,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF8,0X1F,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XF3,0XFF,0XFF,0XFE,0X3F,0XFC,0X03,0XFF, -0XFF,0X00,0X7F,0XC0,0X0F,0X00,0X01,0XFF,0X80,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X00,0X00,0X00,0X01,0XFF,0X80,0X0F,0XE0,0X03,0XFE,0X3F,0XFF,0XFC,0X01, -0XFF,0XFF,0XE0,0X07,0XFF,0XC0,0X00,0X1F,0XFF,0X80,0X1F,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF8,0X3F,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XF3,0XFF,0XFF,0XFE,0X3F,0XFC,0X03,0XFF, -0XFF,0X00,0X3F,0XC0,0X00,0X00,0X01,0XFF,0X80,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X00,0X00,0X00,0X01,0XFF,0XC0,0X00,0X00,0X07,0XFE,0X3F,0XFF,0XFC,0X01, -0XFF,0XFF,0XC0,0X0F,0XFF,0XF0,0X00,0X3F,0XFF,0XC0,0X0F,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X7F,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XF3,0XFF,0XFF,0XFE,0X3F,0XFC,0X03,0XFF, -0XFF,0X80,0X3F,0XC0,0X00,0X03,0X01,0XFF,0XC0,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X00,0X00,0X00,0X01,0XFF,0XE0,0X00,0X00,0X0F,0XFE,0X3F,0XFF,0XFC,0X01, -0XFF,0XFF,0X80,0X1F,0XFF,0XF8,0X00,0X7F,0XFF,0XE0,0X07,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE0,0X7F,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XF3,0XFF,0XFF,0XFE,0X3F,0XF8,0X03,0XFF, -0XFF,0X80,0X3F,0XE0,0X00,0X06,0X01,0XFF,0XC0,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X00,0X00,0X00,0X01,0XFF,0XE0,0X00,0X00,0X1F,0XFE,0X3F,0XFF,0XFC,0X01, -0XFF,0XFF,0X00,0X7F,0XFF,0XFC,0X00,0XFF,0XFF,0XF8,0X03,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0X00,0X00,0X1F,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XC0,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XF3,0XFF,0XFF,0XFE,0X3F,0XF8,0X07,0XFF, -0XFF,0X80,0X1F,0XF0,0X00,0X0E,0X01,0XFF,0XF0,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X00,0X00,0X00,0X01,0XFF,0XF0,0X00,0X00,0X3F,0XFE,0X3F,0XFF,0XFC,0X01, -0XFF,0XFC,0X00,0XFF,0XFF,0XFE,0X01,0XFF,0XFF,0XFC,0X00,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X1F,0XC0,0X00,0X7E,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X81,0XFF,0XFF,0XFF,0XFF,0XFC,0X3F,0XFF,0XF3,0XFF,0XCF,0XFE,0X3F,0XF8,0X07,0XFF, -0XFF,0XC0,0X1F,0XF8,0X00,0X1E,0X01,0XFF,0XE0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X00,0X00,0X00,0X01,0XFF,0XFC,0X00,0X00,0X7F,0XFE,0X3F,0XFF,0XFC,0X01, -0XFF,0XF8,0X01,0XFF,0XFF,0XFF,0X87,0XFF,0XFF,0XFE,0X00,0X7F,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XF0,0X01,0XFE,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X03,0XFF,0XFF,0XFF,0XFF,0XFC,0X3F,0XFF,0XF3,0XFF,0XCF,0XFE,0X3F,0XF0,0X07,0XFF, -0XFF,0XC0,0X1F,0XFC,0X00,0X3E,0X01,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X00,0X00,0X00,0X01,0XFF,0XFF,0X00,0X03,0XFF,0XFE,0X3F,0XFF,0XFC,0X01, -0XFF,0XF0,0X03,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0X00,0X3F,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X1F,0XFF,0XFF,0XFF,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE, -0X07,0XFF,0XFF,0XFF,0XFF,0XF8,0X7F,0XFF,0XF3,0XFF,0XCF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X81,0XFF,0XFF,0XFF,0X80,0X3F,0XFC,0X00,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X1F,0XFF,0XFE,0X3F,0XFF,0XFC,0X01, -0XFF,0XE0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X1F,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X3F,0XFF,0XFF,0XFF,0X80,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE, -0X0F,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XF3,0XFF,0X8F,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X7F,0XFE,0X00,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFC,0X01, -0XFF,0X80,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X07,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC0,0X7F,0XFF,0XFF,0XFF,0XC0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFC, -0X0F,0XFF,0XFF,0XFF,0XFF,0XE0,0XFF,0XFF,0XF1,0XFF,0X8F,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0XFF,0XFF,0X00,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFC,0X01, -0XFF,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X03,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0XFF,0XFF,0XFF,0XFF,0XE0,0X3F,0XFF,0XFF,0XFF,0XFF,0XF8, -0X00,0X00,0X07,0XF9,0XFF,0X81,0XFF,0XFF,0XF8,0XFF,0X1F,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0XFF,0XFF,0X00,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFC,0X01, -0XFE,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X01,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X01,0XFF,0XFE,0X1F,0XFF,0XF0,0X3F,0XFF,0XFF,0XFF,0XFF,0XF8, -0X00,0X00,0X07,0XF8,0X00,0X03,0XFF,0XFF,0XF8,0X00,0X3F,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X01,0XFF,0XFF,0X00,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFC,0X01, -0XFC,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X03,0XFF,0XFE,0X0F,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XF8, -0X00,0X00,0X07,0XF8,0X00,0X07,0XFF,0XFF,0XFC,0X00,0X7F,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X01,0XFF,0XFF,0X00,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFC,0X01, -0XF0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X3E,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFE,0X0F,0XFF,0XFC,0X1F,0XFF,0XFF,0XFF,0XFF,0XF8, -0X00,0X00,0X07,0XF8,0X00,0X0F,0XFF,0XFF,0XFF,0X00,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0XFF,0XFE,0X00,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFC,0X01, -0XE0,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X1E,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X0F,0XFF,0XFE,0X0F,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF,0XFF,0XF8, -0X00,0X00,0X07,0XF8,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X7F,0XFC,0X00,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFC,0X01, -0XC0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X0E,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X3F,0XF0,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFC,0X01, -0X80,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X06,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFC,0X00, -0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFC,0X00, -0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFC,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFC,0X00, -0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFC,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFC,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFC,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFC,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFC,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,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFC,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,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFE,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,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,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFE,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,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,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0X80, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,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,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, -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,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,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,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, -0X80,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,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,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X80,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC0,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X03,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE, -0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFC,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X7F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC, -0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X00,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X00,0X0F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0, -0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X03,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X00,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,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,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0X80, -0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0X00, -0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X00,0X00,0X00,0X7F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00, -0X00,0X07,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X7F,0XFF,0XFC,0X00,0X00,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFE,0X00, -0X00,0X7F,0X80,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X00,0X00,0X3F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00, -0X00,0X03,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X7F,0XFF,0XFC,0X00,0X00,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFC,0X00, -0X03,0XFF,0XF0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X01,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0XFF,0XF0,0X00,0X03,0XFE,0X00,0X00,0X3F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00, -0X00,0X03,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X3F,0XFF,0XFC,0X00,0X00,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFC,0X00, -0X07,0XFF,0XF8,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X3F,0XFF,0XFF,0X00,0X00,0X7F,0XFF,0XFF,0XE0,0X00,0X1F,0XFF,0XC0,0X00,0X1F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00, -0X00,0X03,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X3F,0XFF,0XFC,0X00,0X00,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XF8,0X00, -0X1F,0XFF,0XFE,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF3,0XFF,0XFF,0XFF,0XC0,0X00,0X7F,0XFF,0XFF,0XF0,0X00,0X7F,0XFF,0XE0,0X00,0X1F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00, -0X00,0X01,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X3F,0XFF,0XF8,0X00,0X00,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XF0,0X00, -0X3F,0XFF,0XFF,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X3F,0XFF,0XFF,0XF8,0X01,0XFF,0XFF,0XF8,0X00,0X0F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00, -0X00,0X01,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X1F,0XFF,0XF8,0X00,0X00,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X08,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XF0,0X00, -0X7F,0XFF,0XFF,0X80,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0XF8,0X03,0XFF,0XFF,0XFC,0X00,0X0F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00, -0X00,0X01,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X1F,0XFF,0XF8,0X00,0X00,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X38,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XE0,0X00, -0XFF,0XFF,0XFF,0X80,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFC,0X07,0XFF,0XFF,0XFC,0X00,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00, -0X00,0X00,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X1F,0XFF,0XF0,0X00,0X00,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XE0,0X00, -0XFF,0XFF,0XFF,0XC0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X1F,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFE,0X00,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00, -0X00,0X00,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X1F,0XFF,0XF0,0X00,0X00,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X03,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XC0,0X01, -0XFF,0XFF,0XFF,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X1F,0XFF,0XFF,0XFF,0X1F,0XFF,0XFF,0XFE,0X00,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00, -0X00,0X00,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X0F,0XFF,0XF0,0X00,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X07,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XC0,0X01, -0XFF,0XFF,0XFF,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X1F,0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0XFF,0X00,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00, -0X00,0X00,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X0F,0XFF,0XE0,0X00,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X1F,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XC0,0X03, -0XFF,0XFF,0XFF,0XF0,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00, -0X00,0X00,0X7F,0XFF,0XFF,0XFC,0X00,0X00,0X0F,0XFF,0XE0,0X00,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X7F,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0X80,0X03, -0XFF,0XFF,0XFF,0XF0,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0X03,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00, -0X00,0X00,0X7F,0XFF,0XFF,0XFC,0X00,0X00,0X07,0XFF,0XE0,0X00,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X01,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0X80,0X07, -0XFF,0XFF,0XFF,0XF8,0X00,0X7F,0XFF,0XFF,0XFF,0XFC,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00, -0X00,0X00,0X7F,0XFF,0XFF,0XFC,0X00,0X00,0X07,0XFF,0XE0,0X00,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X07,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0X80,0X07, -0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XF0,0X00,0X7F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00, -0X00,0X00,0X3F,0XFF,0XFF,0XFC,0X00,0X00,0X07,0XFF,0XC0,0X00,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X1F,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0X00,0X07, -0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XE0,0X00,0X3F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00, -0X40,0X00,0X3F,0XFF,0XFF,0XFC,0X00,0X00,0X07,0XFF,0XC0,0X00,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X7F,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0X00,0X0F, -0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XE0,0X00,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00, -0X40,0X00,0X3F,0XFF,0XFF,0XFC,0X00,0X00,0X03,0XFF,0XC0,0X00,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0X00,0X0F, -0XFF,0XFF,0XFF,0XE0,0X00,0X3F,0XFF,0XFF,0XFF,0XC0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00, -0X40,0X00,0X1F,0XFF,0XFF,0XFC,0X00,0X00,0X03,0XFF,0X80,0X00,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0X00,0X0F, -0XFF,0XFF,0XFF,0XC0,0X00,0X1F,0XFF,0XFF,0XFF,0XC0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00, -0XE0,0X00,0X1F,0XFF,0XFF,0XFC,0X00,0X00,0X03,0XFF,0X80,0X00,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFE,0X00,0X1F, -0XFF,0XFF,0XFF,0X80,0X00,0X1F,0XFF,0XFF,0XFF,0X80,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00, -0XE0,0X00,0X1F,0XFF,0XFF,0XFC,0X00,0X20,0X01,0XFF,0X80,0X08,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFE,0X00,0X1F, -0XFF,0XFF,0XFE,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0X80,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00, -0XE0,0X00,0X1F,0XFF,0XFF,0XFC,0X00,0X20,0X01,0XFF,0X00,0X08,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFE,0X00,0X1F, -0XFF,0XFF,0XFC,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0X80,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00, -0XE0,0X00,0X0F,0XFF,0XFF,0XFC,0X00,0X20,0X01,0XFF,0X00,0X08,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFE,0X00,0X1F, -0XFF,0XFF,0XF8,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0X80,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X01, -0XF0,0X00,0X0F,0XFF,0XFF,0XFC,0X00,0X30,0X01,0XFF,0X00,0X08,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFE,0X00,0X1F, -0XFF,0XFF,0XE0,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0X80,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X01, -0XF0,0X00,0X0F,0XFF,0XFF,0XFC,0X00,0X30,0X00,0XFF,0X00,0X18,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFE,0X00,0X1F, -0XFF,0XFF,0XC0,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0X80,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X01, -0XF0,0X00,0X07,0XFF,0XFF,0XFC,0X00,0X30,0X00,0XFE,0X00,0X18,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X3F, -0XFF,0XFF,0X80,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XC0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X03, -0XF0,0X00,0X07,0XFF,0XFF,0XFC,0X00,0X30,0X00,0XFE,0X00,0X18,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X3F, -0XFF,0XFE,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XC0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X0F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X03, -0XF8,0X00,0X07,0XFF,0XFF,0XFC,0X00,0X38,0X00,0X7E,0X00,0X38,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X3F, -0XFF,0XFC,0X00,0X01,0X00,0X0F,0XFF,0XFF,0XFF,0XE0,0X00,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X0F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X03, -0XF8,0X00,0X07,0XFF,0XFF,0XFC,0X00,0X38,0X00,0X7C,0X00,0X38,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X3F, -0XFF,0XF0,0X00,0X07,0X00,0X0F,0XFF,0XFF,0XFF,0XE0,0X00,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFC,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X0F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X03, -0XF8,0X00,0X03,0XFF,0XFF,0XF8,0X00,0X38,0X00,0X7C,0X00,0X38,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X3F, -0XFF,0XE0,0X00,0X0F,0X00,0X0F,0XFF,0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XE0,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X1F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X07, -0XFC,0X00,0X03,0XFF,0XFF,0XF8,0X00,0X38,0X00,0X7C,0X00,0X78,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X3F, -0XFF,0XC0,0X00,0X1F,0X00,0X0F,0XFF,0XFF,0XFF,0XFC,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X1F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X07, -0XFC,0X00,0X03,0XFF,0XFF,0XF8,0X00,0X3C,0X00,0X3C,0X00,0X78,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X3F, -0XFF,0X00,0X00,0X7F,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0X03,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X07, -0XFC,0X00,0X01,0XFF,0XFF,0XF8,0X00,0X3C,0X00,0X38,0X00,0X78,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X3F, -0XFE,0X00,0X00,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X3F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X0F, -0XFC,0X00,0X01,0XFF,0XFF,0XF8,0X00,0X3C,0X00,0X38,0X00,0XF8,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X3F, -0XFC,0X00,0X01,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X7F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X0F, -0XFE,0X00,0X01,0XFF,0XFF,0XF8,0X00,0X3E,0X00,0X38,0X00,0XFC,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X3F, -0XF0,0X00,0X07,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X0F, -0XFE,0X00,0X00,0XFF,0XFF,0XF8,0X00,0X3E,0X00,0X38,0X00,0XFC,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X3F, -0XE0,0X00,0X0F,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X0F, -0XFE,0X00,0X00,0XFF,0XFF,0XF8,0X00,0X3E,0X00,0X10,0X01,0XFC,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X3F, -0XC0,0X00,0X1F,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X01,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X1F, -0XFE,0X00,0X00,0XFF,0XFF,0XF8,0X00,0X3E,0X00,0X10,0X01,0XFC,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X3F, -0X00,0X00,0X7F,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X03,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X1F, -0XFF,0X00,0X00,0XFF,0XFF,0XF8,0X00,0X3F,0X00,0X10,0X01,0XFC,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X3E, -0X00,0X00,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X03,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X1F, -0XFF,0X00,0X00,0X7F,0XFF,0XF8,0X00,0X3F,0X00,0X10,0X03,0XFC,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X3C, -0X00,0X01,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X3F, -0XFF,0X00,0X00,0X7F,0XFF,0XF8,0X00,0X3F,0X00,0X00,0X03,0XFC,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X30, -0X00,0X07,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X0F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X3F, -0XFF,0X80,0X00,0X7F,0XFF,0XF8,0X00,0X3F,0X00,0X00,0X03,0XFC,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X20, -0X00,0X0F,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X3F, -0XFF,0X80,0X00,0X3F,0XFF,0XF8,0X00,0X3F,0X80,0X00,0X03,0XFC,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X00, -0X00,0X1F,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X3F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X3F, -0XFF,0X80,0X00,0X3F,0XFF,0XF8,0X00,0X3F,0X80,0X00,0X07,0XFC,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X00, -0X00,0X7F,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X7F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X7F, -0XFF,0X80,0X00,0X3F,0XFF,0XF8,0X00,0X3F,0X80,0X00,0X07,0XFC,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X00, -0X00,0XFF,0XFF,0XFE,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X7F, -0XFF,0XC0,0X00,0X1F,0XFF,0XF8,0X00,0X7F,0XC0,0X00,0X07,0XFC,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFE,0X00,0X00, -0X01,0XFF,0XFF,0XFE,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X7F, -0XFF,0XC0,0X00,0X1F,0XFF,0XF8,0X00,0X7F,0XC0,0X00,0X0F,0XFC,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFE,0X00,0X00, -0X07,0XFF,0XFF,0XFE,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X01,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0XFF, -0XFF,0XC0,0X00,0X1F,0XFF,0XF8,0X00,0X7F,0XC0,0X00,0X0F,0XFC,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFE,0X00,0X00, -0X0F,0XFF,0XFF,0XFE,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X03,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X03,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0XFF, -0XFF,0XC0,0X00,0X1F,0XFF,0XF0,0X00,0X7F,0XC0,0X00,0X0F,0XFC,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFE,0X00,0X00, -0X3F,0XFF,0XFF,0XFE,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X01,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0XFF, -0XFF,0XE0,0X00,0X0F,0XFF,0XF0,0X00,0X7F,0XE0,0X00,0X1F,0XFC,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFE,0X00,0X00, -0X7F,0XFF,0XFF,0XFE,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X01,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0XFF, -0XFF,0XE0,0X00,0X0F,0XFF,0XF0,0X00,0X7F,0XE0,0X00,0X1F,0XFC,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFE,0X00,0X00, -0XFF,0XFF,0XFF,0XFC,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X01,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X01,0XFF, -0XFF,0XE0,0X00,0X0F,0XFF,0XF0,0X00,0X7F,0XE0,0X00,0X1F,0XFC,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0X00,0X03, -0XFF,0XFF,0XFF,0XFC,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X01,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X01,0XFF, -0XFF,0XF0,0X00,0X07,0XFF,0XF0,0X00,0X7F,0XE0,0X00,0X3F,0XFC,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0X00,0X07, -0XFF,0XFF,0XFF,0XFC,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X01,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X01,0XFF, -0XFF,0XF0,0X00,0X07,0XFF,0XF0,0X00,0X7F,0XF0,0X00,0X3F,0XFC,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0X00,0X07, -0XFF,0XFF,0XFF,0XFC,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X01,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X03,0XFF, -0XFF,0XF0,0X00,0X07,0XFF,0XF0,0X00,0X7F,0XF0,0X00,0X3F,0XFC,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0X00,0X07, -0XFF,0XFF,0XFF,0XF8,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X01,0XFF,0XFF,0XFF,0XFF,0X00,0X01,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X03,0XFF, -0XFF,0XF0,0X00,0X07,0XFF,0XF0,0X00,0X7F,0XF0,0X00,0X7F,0XFC,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0X80,0X07, -0XFF,0XFF,0XFF,0XF8,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X01,0XFF,0XFF,0XFF,0XFE,0X00,0X03,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X00, -0X00,0X00,0X00,0X03,0XFF,0XF0,0X00,0X7F,0XF8,0X00,0X7F,0XFC,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0X80,0X03, -0XFF,0XFF,0XFF,0XF0,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X01,0XFF,0XFF,0XFF,0XFC,0X00,0X07,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X00, -0X00,0X00,0X00,0X03,0XFF,0XF0,0X00,0X7F,0XF8,0X00,0X7F,0XFC,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0X80,0X03, -0XFF,0XFF,0XFF,0XF0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X03,0XFF,0XFF,0XFF,0XF8,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X00, -0X00,0X00,0X00,0X03,0XFF,0XF0,0X00,0X7F,0XF8,0X00,0X7F,0XFC,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XC0,0X01, -0XFF,0XFF,0XFF,0XF0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X03,0XFF,0XFF,0XFF,0XF0,0X00,0X1F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00, -0X00,0X00,0X00,0X01,0XFF,0XF0,0X00,0X7F,0XF8,0X00,0XFF,0XFC,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XC0,0X01, -0XFF,0XFF,0XFF,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X03,0XFF,0XFF,0XFF,0XE0,0X00,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00, -0X00,0X00,0X00,0X01,0XFF,0XF0,0X00,0X7F,0XFC,0X00,0XFF,0XFC,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XC0,0X00, -0XFF,0XFF,0XFF,0XC0,0X01,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X03,0XFF,0XFF,0XFF,0XC0,0X00,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00, -0X00,0X00,0X00,0X01,0XFF,0XF0,0X00,0X7F,0XFF,0XFF,0XFF,0XFE,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XE0,0X00, -0XFF,0XFF,0XFF,0XC0,0X01,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X7F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X07,0XFF,0XFF,0XFF,0X80,0X00,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0XFF,0XF0,0X00,0X7F,0XFF,0XFF,0XFF,0XFE,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XE0,0X00, -0X7F,0XFF,0XFF,0X80,0X03,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X3F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X07,0XFF,0XFF,0XFF,0X00,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0XFF,0XF0,0X00,0X7F,0XFF,0XFF,0XFF,0XFE,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XF0,0X00, -0X3F,0XFF,0XFF,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X0F,0XFF,0XFF,0XFE,0X00,0X03,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0XFF,0XF0,0X00,0X7F,0XFF,0XFF,0XFF,0XFE,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XF0,0X00, -0X1F,0XFF,0XFE,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X0F,0XFF,0XFF,0XFC,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0XFF,0XF0,0X00,0X7F,0XFF,0XFF,0XFF,0XFE,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XF8,0X00, -0X0F,0XFF,0XF8,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X1F,0XFF,0XFF,0XF8,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X7F,0XF0,0X00,0X7F,0XFF,0XFF,0XFF,0XFE,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFC,0X00, -0X03,0XFF,0XF0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X3F,0XFF,0XFF,0XF0,0X00,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X7F,0XE0,0X00,0X7F,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFC,0X00, -0X00,0X7F,0X80,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XCF,0XFF,0XFF,0XFF,0X00,0X00,0X3F,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X7F,0XE0,0X00,0X7F,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFE,0X00, -0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XC0,0X1F,0XFF,0XE0,0X00,0X00,0X7F,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X3F,0XFF, -0XFF,0XFF,0X00,0X00,0X3F,0XE0,0X00,0X7F,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0X00, -0X00,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XC0,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X3F,0XFF, -0XFF,0XFF,0X80,0X00,0X3F,0XE0,0X00,0X7F,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0X80, -0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XC0,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X3F,0XFF, -0XFF,0XFF,0X80,0X00,0X3F,0XE0,0X00,0X7F,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XC0, -0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XC0,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X7F,0XFF, -0XFF,0XFF,0X80,0X00,0X1F,0XE0,0X00,0X7F,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XE0, -0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XC0,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X7F,0XFF, -0XFF,0XFF,0X80,0X00,0X1F,0XE0,0X00,0X7F,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XF0, -0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XC0,0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X7F,0XFF, -0XFF,0XFF,0XC0,0X00,0X1F,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFC, -0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X1F,0XFF,0XFF,0XFF,0XFF, -0XC0,0X00,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0XFF,0XFF, -0XFF,0XFF,0XC0,0X00,0X1F,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X1F,0XFF,0XFF,0XFF,0XFF, -0XC0,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XC0,0X00,0X0F,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XE0,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0XFF,0XFF, -0XC0,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XC0,0X00,0X0F,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XFE,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X01,0XFF,0XFF, -0XFF,0XFF,0XE0,0X00,0X0F,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X07,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,0X03,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC0,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X01,0XFF,0XFF, -0XFF,0XFF,0XE0,0X00,0X07,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X01,0XFF,0XFF, -0XFF,0XFF,0XE0,0X00,0X07,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X01,0XFF,0XFF, -0XFF,0XFF,0XF0,0X00,0X07,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X03,0XFF,0XFF, -0XFF,0XFF,0XF0,0X00,0X07,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X03,0XFF,0XFF, -0XFF,0XFF,0XF0,0X00,0X03,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X03,0XFF,0XFF, -0XFF,0XFF,0XF0,0X00,0X03,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XF8,0X00,0X03,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -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,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,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,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,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,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,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,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, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,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,0X00,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,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,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,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,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,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,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,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,0X00,0X00,0X00,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,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,0X00,0X00,0X00,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,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,0X00,0X00,0X00,0X00, -0X01,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,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, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,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,0X00,0X00,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,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,0X00,0X00,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X00,0X00,0XFF,0XFF,0XFF,0X00,0X00, -0X7F,0XC0,0X00,0X00,0X00,0X01,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X0F, -0XFF,0XFF,0XFF,0XFF,0X81,0XFE,0X00,0X00,0X00,0X00,0XFE,0X00,0X00,0X7F,0XFF,0XFF, -0X80,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X00,0X07,0XFF,0XFF,0XFF,0XC0,0X00, -0X7F,0XE0,0X00,0X00,0X00,0X01,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X7F, -0XFF,0XFF,0XFF,0XFF,0X81,0XFE,0X00,0X00,0X00,0X00,0XFE,0X00,0X03,0XFF,0XFF,0XFF, -0XE0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X00,0X1F,0XFF,0XFF,0XFF,0XF0,0X00, -0X3F,0XE0,0X00,0X00,0X00,0X03,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X01,0XFF, -0XFF,0XFF,0XFF,0XFF,0X81,0XFC,0X00,0X00,0X00,0X00,0XFE,0X00,0X0F,0XFF,0XFF,0XFF, -0XF8,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00, -0X3F,0XF0,0X00,0X00,0X00,0X03,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X03,0XFF, -0XFF,0XFF,0XFF,0XFF,0X81,0XFC,0X00,0X00,0X00,0X00,0XFE,0X00,0X1F,0XFF,0XFF,0XFF, -0XFE,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X00,0XFF,0XFF,0XFF,0XFF,0XFE,0X00, -0X1F,0XF0,0X00,0X00,0X00,0X07,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X07,0XFF, -0XFF,0XFF,0XFF,0XFF,0X81,0XFC,0X00,0X00,0X00,0X00,0XFE,0X00,0X7F,0XFF,0XFF,0XFF, -0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XFF,0XC0,0X00,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0X00, -0X1F,0XF8,0X00,0X00,0X00,0X07,0XFC,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X0F,0XFF, -0XFF,0XFF,0XFF,0XFF,0X81,0XFC,0X00,0X00,0X00,0X00,0XFE,0X00,0XFF,0XFF,0XFF,0XFF, -0XFF,0X80,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0XFF,0XFF,0XE0,0X00,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0X80, -0X0F,0XF8,0X00,0X00,0X00,0X0F,0XFC,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X0F,0XFF, -0XFF,0XFF,0XFF,0XFF,0X81,0XFC,0X00,0X00,0X00,0X00,0XFE,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC7,0XFF,0XFF,0XF0,0X00,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X0F,0XFC,0X00,0X00,0X00,0X0F,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFF,0X81,0XFC,0X00,0X00,0X00,0X00,0XFE,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XE0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X87,0XFF,0XFF,0XF8,0X00,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X07,0XFC,0X00,0X00,0X00,0X1F,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFF,0X81,0XFC,0X00,0X00,0X00,0X00,0XFE,0X03,0XFF,0XFF,0XFF,0XFF, -0XFF,0XE0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFC,0X00,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0, -0X07,0XFE,0X00,0X00,0X00,0X1F,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFF,0X01,0XFC,0X00,0X00,0X00,0X00,0XFE,0X03,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X07,0XFF,0XFF,0XFE,0X00,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X07,0XFF,0XC0,0X00,0X01,0XFF,0XE0, -0X03,0XFE,0X00,0X00,0X00,0X3F,0XE0,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X1F,0XF8, -0X00,0X00,0X00,0X00,0X01,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XFF,0XE0,0X00,0X01, -0XFF,0XF0,0X0F,0XE0,0X00,0X00,0X00,0X3F,0XF0,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X07,0XFF,0XFF,0XFE,0X00,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XFF,0X00,0X00,0X00,0X7F,0XF0, -0X03,0XFF,0X00,0X00,0X00,0X3F,0XE0,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X1F,0XE0, -0X00,0X00,0X00,0X00,0X01,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XFF,0X80,0X00,0X00, -0X7F,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X0F,0XF0,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X07,0XFF,0XFF,0XFF,0X00,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XFE,0X00,0X00,0X00,0X3F,0XF0, -0X01,0XFF,0X00,0X00,0X00,0X7F,0XC0,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X1F,0XE0, -0X00,0X00,0X00,0X00,0X01,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XFF,0X00,0X00,0X00, -0X1F,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X0F,0XF0,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFF,0XFF,0X80,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XFC,0X00,0X00,0X00,0X1F,0XF0, -0X01,0XFF,0X80,0X00,0X00,0X7F,0XC0,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X1F,0XE0, -0X00,0X00,0X00,0X00,0X01,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XFC,0X00,0X00,0X00, -0X0F,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X0F,0XF0,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X07,0XFF,0XFF,0XFF,0XC0,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XF8,0X00,0X00,0X00,0X0F,0XF0, -0X00,0XFF,0X80,0X00,0X00,0XFF,0X80,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X1F,0XF0, -0X00,0X00,0X00,0X00,0X01,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XFC,0X00,0X00,0X00, -0X0F,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X0F,0XF0,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X07,0XFF,0XFF,0XFF,0XC0,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XF0,0X00,0X00,0X00,0X0F,0XF0, -0X00,0XFF,0XC0,0X00,0X00,0XFF,0X80,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X1F,0XF8, -0X00,0X00,0X00,0X00,0X01,0XFE,0X00,0X00,0X00,0X01,0XFE,0X07,0XF8,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X0F,0XF0,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X07,0XFF,0XFF,0XFF,0XE0,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XF0,0X00,0X00,0X00,0X0F,0XF0, -0X00,0X7F,0XC0,0X00,0X01,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X1F,0XFF, -0XFF,0XFF,0XFF,0X80,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X07,0XF8,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X0F,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XC0,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X07,0XFF,0XFF,0XFF,0XE0,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X7F,0XE0,0X00,0X01,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X1F,0XFF, -0XFF,0XFF,0XFF,0XF0,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X0F,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XC0,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X07,0XFF,0XFF,0XFF,0XF0,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X3F,0XE0,0X00,0X03,0XFE,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X0F,0XFF, -0XFF,0XFF,0XFF,0XFC,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X0F,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XC0,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF,0XFF,0XF0,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X3F,0XF0,0X00,0X03,0XFE,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X0F,0XFF, -0XFF,0XFF,0XFF,0XFE,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X0F,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XC0,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X07,0XFF,0XFF,0XFF,0XF8,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X1F,0XF0,0X00,0X07,0XFC,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X0F,0XFF, -0XFF,0XFF,0XFF,0XFF,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X0F,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XC0,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X07,0XFF,0XFF,0XFF,0XF8,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X1F,0XF8,0X00,0X07,0XFC,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X07,0XFF, -0XFF,0XFF,0XFF,0XFF,0X81,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X0F,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XC0,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X07,0XFF,0XFF,0XFF,0XFC,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X0F,0XF8,0X00,0X0F,0XF8,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X03,0XFF, -0XFF,0XFF,0XFF,0XFF,0X81,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X1F,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XC0,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X07,0XFF,0XFF,0XFF,0XFC,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X07,0XFC,0X00,0X1F,0XF8,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XC0,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF,0XFF,0XFC,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XF0,0X00,0X00,0X00,0X0F,0XF0, -0X00,0X07,0XFC,0X00,0X1F,0XF0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X3F, -0XFF,0XFF,0XFF,0XFF,0XC1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X07,0XF8,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XC0,0X00, -0X01,0XFE,0X00,0X07,0XFF,0X80,0X7F,0XFE,0X00,0X07,0XF8,0X07,0XFF,0XFE,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X00,0X07,0XFE,0X00,0X3F,0XF0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X01, -0XFF,0XFF,0XFF,0XFF,0XC1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XC0,0X00, -0X01,0XFE,0X00,0X03,0XFF,0X00,0X3F,0XFE,0X00,0X07,0XF0,0X03,0XFF,0XFE,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X00,0X03,0XFE,0X00,0X3F,0XE0,0X00,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0XFF,0XC1,0XFE,0X00,0X00,0X00,0X00,0XFE,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFE,0X00,0X03,0XFE,0X00,0X3F,0XFC,0X00,0X27,0XF0,0X03,0XFF,0XFF,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X00,0X03,0XFF,0X00,0X7F,0XE0,0X00,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X3F,0XC1,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0X00,0X03,0XFE,0X00,0X3F,0XFC,0X00,0X3F,0XE0,0X01,0XFF,0XFF,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X00,0X01,0XFF,0X00,0X7F,0XC0,0X00,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X3F,0XC1,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0X00,0X01,0XFE,0X00,0X1F,0XF8,0X00,0X7F,0XE0,0X01,0XFF,0XFF,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X00,0X00,0XFF,0X80,0XFF,0XC0,0X00,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X1F,0XC1,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0X80,0X01,0XFC,0X00,0X1F,0XF8,0X00,0X7F,0XC0,0X00,0XFF,0XFF,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X00,0X00,0XFF,0X80,0XFF,0X80,0X00,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X1F,0XC1,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0X80,0X01,0XFC,0X00,0X0F,0XF0,0X00,0X7F,0XC0,0X00,0XFF,0XFF,0X80,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X00,0X00,0XFF,0XC1,0XFF,0X80,0X00,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X1F,0XC1,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0X80,0X00,0XFC,0X00,0X0F,0XF0,0X00,0XFF,0XC0,0X00,0X7F,0XFF,0X80,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X00,0X00,0X7F,0XC1,0XFF,0X00,0X00,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X1F,0XC1,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0X80,0X00,0XF8,0X00,0X0F,0XF0,0X00,0XFF,0X80,0X00,0X7F,0XFF,0X80,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X00,0X00,0X7F,0XE3,0XFF,0X00,0X00,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X1F,0XC1,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X0F,0XF0,0XFF,0XFE,0X00,0X00,0X00,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0XC0,0X00,0XF8,0X00,0X07,0XE0,0X01,0XFF,0X80,0X00,0X3F,0XFF,0X80,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X00,0X00,0X3F,0XE3,0XFE,0X00,0X00,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X1F,0XC1,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X0F,0XE0,0X7F,0XFF,0X00,0X00,0X00,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0XC0,0X00,0X78,0X00,0X07,0XE0,0X01,0XFF,0X00,0X00,0X3F,0XFF,0X80,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X00,0X1F,0XF3,0XFC,0X00,0X00,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X1F,0XC1,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X1F,0XFF,0X80,0X00,0X00,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0XC0,0X00,0X70,0X00,0X07,0XC0,0X03,0XFF,0X00,0X00,0X1F,0XFF,0XC0,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X00,0X1F,0XFF,0XFC,0X00,0X00,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X1F,0XC1,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X0F,0XFF,0XE0,0X00,0X00,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0XE0,0X00,0X70,0X00,0X03,0XC0,0X03,0XFE,0X00,0X00,0X1F,0XFF,0XC0,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X00,0X0F,0XFF,0XF8,0X00,0X00,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X1F,0XC1,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X03,0XFF,0XF0,0X00,0X00,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0XE0,0X00,0X30,0X00,0X03,0X80,0X03,0XFE,0X00,0X00,0X0F,0XFF,0XC0,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X0F,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X00,0X0F,0XFF,0XF8,0X00,0X00,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X3F,0XC1,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X01,0XFF,0XFC,0X00,0X00,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0XE0,0X00,0X20,0X00,0X01,0X80,0X07,0XFE,0X00,0X00,0X0F,0XFF,0XC0,0X03, -0XFF,0X00,0X00,0X03,0XFC,0X00,0X00,0X1F,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X00,0X07,0XFF,0XF0,0X00,0X00,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X7F,0XC1,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X7F,0XFE,0X00,0X00,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0XF0,0X00,0X20,0X00,0X01,0X80,0X07,0XFC,0X00,0X00,0X07,0XFF,0XC0,0X03, -0XFF,0XC0,0X00,0X03,0XFC,0X00,0X00,0XFF,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X00,0X07,0XFF,0XF0,0X00,0X00,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X03,0XFF,0XC1,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X3F,0XFF,0X80,0X00,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0XF0,0X00,0X00,0X00,0X01,0X00,0X0F,0XFC,0X00,0X00,0X07,0XFF,0XC0,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X00,0X03,0XFF,0XE0,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X1F,0XFF,0XC0,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X01,0XFF,0XF0,0X00,0X00,0X00,0X00,0X00,0X0E,0XF8,0X00,0X00,0X07,0XFF,0XC0,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X00,0X03,0XFF,0XE0,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X07,0XFF,0XF0,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X01,0XFF,0XF8,0X00,0X00,0X00,0X00,0X00,0X1C,0X78,0X00,0X00,0X03,0XFF,0XC0,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X00,0X01,0XFF,0XC0,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X03,0XFF,0XF8,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X01,0XFF,0XF8,0X00,0X00,0X00,0X00,0X00,0X18,0X70,0X00,0X00,0X03,0XFF,0XC0,0X01, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X00,0X01,0XFF,0XC0,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFF,0X81,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X00,0XFF,0XFC,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X01,0XFF,0XF8,0X00,0X00,0X00,0X00,0X00,0X18,0XF0,0X00,0X40,0X01,0XFF,0XC0,0X00, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X00,0X00,0XFF,0X80,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFF,0X01,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X00,0X7F,0XFF,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X01,0XFF,0XFC,0X00,0X00,0X10,0X00,0X00,0X38,0X80,0X00,0XC0,0X01,0XFF,0XC0,0X00, -0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X00,0X00,0XFF,0X80,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFE,0X01,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X00,0X3F,0XFF,0X80,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X01,0XFF,0XFC,0X00,0X00,0X18,0X00,0X00,0X31,0X80,0X00,0XE0,0X00,0XFF,0XC0,0X00, -0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X00,0X00,0X7F,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFC,0X01,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X00,0X0F,0XFF,0XE0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X01,0XFF,0XFE,0X00,0X00,0X18,0X00,0X00,0X71,0X00,0X00,0XE0,0X00,0XFF,0XC0,0X00, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X00,0X00,0X7F,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF, -0XFF,0XFF,0XFF,0XF0,0X01,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X00,0X07,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X00,0XFF,0XFE,0X00,0X00,0X38,0X00,0X00,0X63,0X80,0X01,0XF0,0X00,0X7F,0XC0,0X00, -0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X00,0X00,0X3E,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X1F,0XFF, -0XFF,0XFF,0XFF,0XC0,0X01,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X00,0X01,0XFF,0XFC,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X00,0XFF,0XFE,0X00,0X00,0X3C,0X00,0X00,0X63,0X00,0X01,0XF0,0X00,0X7F,0XC0,0X00, -0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X00,0X00,0X1C,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF, -0XFF,0XFF,0XFC,0X00,0X01,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X00,0X00,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X00,0XFF,0XFE,0X00,0X00,0X3C,0X00,0X00,0XC3,0X00,0X03,0XF8,0X00,0X3F,0XC0,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, -0X00,0XFF,0XFF,0X00,0X00,0X7C,0X00,0X00,0XC6,0X00,0X03,0XF8,0X00,0X3F,0XC0,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, -0X00,0XFF,0XFF,0X00,0X00,0X7E,0X00,0X00,0XC4,0X00,0X07,0XFC,0X00,0X1F,0XC0,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, -0X00,0XFF,0XFF,0X00,0X00,0X7E,0X00,0X01,0X84,0X00,0X07,0XFC,0X00,0X3F,0XC0,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, -0X00,0X7F,0XFF,0X80,0X00,0XFE,0X00,0X01,0X88,0X00,0X07,0XF8,0X00,0X3F,0XC0,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, -0X00,0X7F,0XFF,0X80,0X00,0XFF,0X00,0X03,0XCC,0X00,0X0F,0XF8,0X00,0X7F,0XC0,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, -0X00,0X7F,0XFF,0X80,0X00,0XFF,0X00,0X03,0XF8,0X00,0X0F,0XF0,0X00,0X7F,0XC0,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, -0X00,0X7F,0XFF,0XC0,0X01,0XFF,0X80,0X07,0XF8,0X00,0X1F,0XF0,0X00,0XFF,0XC0,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, -0X00,0X3F,0XFF,0XC0,0X01,0XFF,0X80,0X07,0XF0,0X00,0X1F,0XE0,0X00,0XFF,0XC0,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, -0X00,0X3F,0XFF,0XC0,0X01,0XFF,0X80,0X07,0XF8,0X00,0X3F,0XE0,0X01,0XFF,0XC0,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, -0X00,0X3F,0XFF,0XE0,0X03,0XFF,0XC0,0X0F,0XF8,0X00,0X3F,0XE0,0X01,0XFF,0XC0,0X00, -0X00,0X06,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,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X38,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X1F,0XFF,0XE0,0X03,0XFF,0XC0,0X0F,0XF8,0X00,0X3F,0XC0,0X03,0XFF,0XC0,0X00, -0X00,0X07,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,0X01,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X38,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X1F,0XFF,0XE0,0X07,0XFF,0XC0,0X1F,0XFC,0X00,0X7F,0XC0,0X03,0XFF,0XC0,0X00, -0X00,0X07,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,0X01,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X38,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X0F,0XFF,0XF0,0X07,0XFF,0XE0,0X1F,0XFC,0X00,0X7F,0X80,0X07,0XFF,0XC0,0X00, -0X00,0X07,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,0X01,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X38,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X0F,0XFF,0XF0,0X07,0XFF,0XE0,0X1F,0XFE,0X00,0XF9,0X80,0X07,0XFF,0XC0,0X00, -0X00,0X07,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,0X01,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X38,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X0F,0XFF,0XC0,0X00, -0X00,0X07,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,0X01,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X38,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X0F,0XFF,0XC0,0X00, -0X00,0X07,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,0X01,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X38,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X1F,0XFF,0XC0,0X00, -0X00,0X07,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,0X01,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X38,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X1F,0XFF,0XC0,0X01, -0XF8,0X07,0X07,0XE0,0X00,0X0F,0XE0,0X40,0X43,0XC0,0X1F,0XE0,0X00,0X00,0X00,0X7F, -0X02,0X08,0X00,0X00,0X00,0X60,0X07,0XF8,0X00,0X0F,0XC0,0X00,0XFF,0X00,0X04,0X1F, -0X80,0X3F,0X00,0X00,0XFF,0X00,0X00,0X01,0XC1,0XF8,0X00,0X03,0XFC,0X18,0X10,0XF8, -0X03,0XF8,0X38,0X40,0X00,0X00,0X01,0X00,0X1F,0XC0,0X81,0X87,0X80,0X3F,0XC0,0X00, -0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XC0,0X03, -0XFE,0X07,0X1F,0XF8,0X00,0X3F,0XF8,0XE0,0XEF,0XC0,0X7F,0XF8,0X00,0X00,0X01,0XFF, -0XC7,0X1C,0X00,0X18,0X00,0X70,0X1F,0XFF,0X00,0X1F,0XF0,0X03,0XFF,0XC0,0X0E,0X7F, -0XE0,0XFF,0XC0,0X03,0XFF,0XC0,0X00,0X01,0XC7,0XFE,0X00,0X0F,0XFF,0X38,0X39,0XF8, -0X0F,0XFE,0X38,0X70,0X00,0X80,0X03,0X80,0X7F,0XF1,0XC1,0XDF,0X80,0XFF,0XF0,0X00, -0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XC0,0X07, -0X9F,0X07,0X7C,0XFC,0X00,0X7E,0X7E,0XE0,0XEE,0X80,0XFC,0XFC,0X00,0X00,0X07,0XE3, -0XE7,0X0E,0X00,0X38,0X00,0XE0,0X3F,0X3F,0XC0,0X3C,0XF8,0X07,0XE7,0XE0,0X0E,0X79, -0XF1,0XF7,0XE0,0X07,0XE7,0XE0,0X00,0X01,0XCF,0X9F,0X00,0X1F,0X9F,0X98,0X3B,0XB0, -0X3F,0X9F,0X38,0X70,0X01,0XC0,0X07,0X01,0XF8,0XF9,0XC1,0XFD,0X01,0XF9,0XF8,0X00, -0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X0F,0XFF,0XC0,0X07, -0X07,0X07,0XF0,0X1C,0X00,0XF0,0X0F,0XE0,0XF8,0X01,0XE0,0X1E,0X00,0X00,0X0F,0X80, -0X7F,0X0E,0X00,0X38,0X00,0XE0,0X78,0X07,0XC0,0X38,0X38,0X0F,0X00,0XF0,0X0F,0XE0, -0X73,0X80,0XE0,0X0F,0X00,0XF0,0X00,0X01,0XFC,0X07,0X80,0X3C,0X03,0XF8,0X3F,0X00, -0X7C,0X03,0XB8,0X70,0X01,0XC0,0X07,0X03,0XE0,0X1D,0XC1,0XF0,0X03,0XC0,0X3C,0X00, -0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X0F,0XFF,0XC0,0X0E, -0X00,0X07,0XC0,0X0E,0X01,0XC0,0X07,0XE0,0XF0,0X03,0XC0,0X07,0X00,0X00,0X1E,0X00, -0X3F,0X07,0X00,0X7C,0X01,0XC0,0XF0,0X01,0XE0,0X70,0X00,0X1E,0X00,0X78,0X0F,0X80, -0X3F,0X00,0XF0,0X1E,0X00,0X38,0X00,0X01,0XF8,0X03,0X80,0X78,0X00,0XF8,0X3E,0X00, -0X70,0X01,0XF8,0X38,0X03,0XE0,0X0E,0X03,0X80,0X0F,0XC1,0XE0,0X07,0X80,0X1E,0X00, -0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X1F,0XFF,0XC0,0X0E, -0X00,0X07,0XC0,0X0E,0X03,0X80,0X03,0XE0,0XF0,0X03,0X80,0X03,0X80,0X00,0X1C,0X00, -0X1F,0X07,0X00,0X7C,0X01,0XC0,0XE0,0X00,0XF0,0X70,0X00,0X3C,0X00,0X3C,0X0F,0X80, -0X3E,0X00,0X70,0X1C,0X00,0X1C,0X00,0X01,0XF0,0X01,0XC0,0XF0,0X00,0X78,0X3C,0X00, -0XE0,0X00,0XF8,0X38,0X03,0XE0,0X0E,0X07,0X00,0X07,0XC1,0XE0,0X0F,0X00,0X0F,0X00, -0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X7F,0XFF,0XC0,0X0E, -0X00,0X07,0X80,0X0E,0X07,0X80,0X01,0XE0,0XF0,0X07,0X00,0X03,0X80,0X00,0X3C,0X00, -0X0F,0X03,0X00,0XFC,0X01,0X81,0XC0,0X00,0XF0,0X70,0X00,0X38,0X00,0X1C,0X0F,0X00, -0X1C,0X00,0X70,0X38,0X00,0X1C,0X00,0X01,0XE0,0X01,0XC0,0XE0,0X00,0X78,0X3C,0X01, -0XE0,0X00,0X78,0X1C,0X03,0XE0,0X0E,0X0F,0X00,0X03,0XC1,0XC0,0X0E,0X00,0X07,0X00, -0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0XFF,0XFF,0XC0,0X07, -0X00,0X07,0X00,0X06,0X07,0X00,0X00,0XE0,0XE0,0X07,0X00,0X01,0XC0,0X00,0X38,0X00, -0X0F,0X03,0X80,0XE6,0X03,0X81,0XC0,0X00,0X78,0X38,0X00,0X38,0X00,0X0E,0X0F,0X00, -0X1C,0X00,0X70,0X38,0X00,0X0E,0X00,0X01,0XE0,0X01,0XC0,0XE0,0X00,0X38,0X38,0X01, -0XC0,0X00,0X38,0X1C,0X07,0X70,0X1C,0X0E,0X00,0X03,0XC1,0XC0,0X1C,0X00,0X03,0X00, -0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X01,0XFF,0XFF,0XC0,0X07, -0X80,0X07,0X00,0X07,0X07,0X00,0X00,0XE0,0XE0,0X0F,0X00,0X01,0XC0,0X00,0X38,0X00, -0X07,0X03,0X80,0XCE,0X03,0X81,0XC0,0X00,0X78,0X3C,0X00,0X70,0X00,0X0E,0X0E,0X00, -0X1C,0X00,0X70,0X70,0X00,0X0E,0X00,0X01,0XC0,0X01,0XC1,0XC0,0X00,0X38,0X38,0X01, -0XC0,0X00,0X38,0X0C,0X07,0X70,0X1C,0X0E,0X00,0X01,0XC1,0XC0,0X1C,0X00,0X03,0X80, -0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X03,0XFF,0XFF,0XC0,0X03, -0XE0,0X07,0X00,0X07,0X07,0X00,0X00,0XE0,0XE0,0X0F,0XFF,0XFF,0XC0,0X00,0X30,0X00, -0X07,0X01,0XC1,0XC7,0X07,0X03,0XFF,0XFF,0XF8,0X1F,0X00,0X70,0X00,0X0E,0X0E,0X00, -0X1C,0X00,0X70,0X7F,0XFF,0XFE,0X00,0X01,0XC0,0X01,0XC1,0XC0,0X00,0X18,0X38,0X01, -0X80,0X00,0X38,0X0E,0X0E,0X38,0X38,0X1C,0X00,0X01,0XC1,0XC0,0X1F,0XFF,0XFF,0X80, -0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X07,0XFF,0XFF,0XC0,0X01, -0XF8,0X07,0X00,0X07,0X06,0X00,0X00,0XE0,0XE0,0X0F,0XFF,0XFF,0XC0,0X00,0X70,0X00, -0X07,0X01,0XC1,0XC7,0X07,0X03,0XFF,0XFF,0XF8,0X0F,0XC0,0X70,0X00,0X06,0X0E,0X00, -0X1C,0X00,0X70,0X7F,0XFF,0XFE,0X00,0X01,0XC0,0X01,0XC1,0XC0,0X00,0X18,0X38,0X03, -0X80,0X00,0X38,0X0E,0X0E,0X38,0X38,0X1C,0X00,0X01,0XC1,0XC0,0X1F,0XFF,0XFF,0X80, -0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X0F,0XFF,0XFF,0XC0,0X00, -0X7C,0X07,0X00,0X07,0X06,0X00,0X00,0XE0,0XE0,0X0E,0X00,0X00,0X00,0X00,0X70,0X00, -0X07,0X00,0XE3,0X83,0X8E,0X03,0X80,0X00,0X00,0X03,0XE0,0X70,0X00,0X06,0X0E,0X00, -0X1C,0X00,0X70,0X70,0X00,0X00,0X00,0X01,0XC0,0X01,0XC1,0XC0,0X00,0X18,0X38,0X03, -0X80,0X00,0X38,0X07,0X1C,0X1C,0X70,0X1C,0X00,0X01,0XC1,0XC0,0X1C,0X00,0X00,0X00, -0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X3F,0XFF,0XFF,0XC0,0X00, -0X1E,0X07,0X00,0X07,0X07,0X00,0X00,0XE0,0XE0,0X0E,0X00,0X00,0X00,0X00,0X30,0X00, -0X07,0X00,0XE3,0X83,0X8E,0X03,0X80,0X00,0X00,0X00,0XF0,0X70,0X00,0X0E,0X0E,0X00, -0X1C,0X00,0X70,0X70,0X00,0X00,0X00,0X01,0XC0,0X01,0XC1,0XC0,0X00,0X18,0X38,0X01, -0X80,0X00,0X38,0X07,0X1C,0X1C,0X70,0X1C,0X00,0X01,0XC1,0XC0,0X1C,0X00,0X00,0X00, -0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X7F,0XFF,0XFF,0XC0,0X00, -0X0F,0X07,0X00,0X07,0X07,0X00,0X00,0XE0,0XE0,0X0E,0X00,0X00,0X00,0X00,0X38,0X00, -0X07,0X00,0XE7,0X01,0XCC,0X01,0X80,0X00,0X00,0X00,0X78,0X70,0X00,0X0E,0X0E,0X00, -0X1C,0X00,0X70,0X70,0X00,0X00,0X00,0X01,0XC0,0X01,0XC1,0XC0,0X00,0X38,0X38,0X01, -0XC0,0X00,0X38,0X03,0X18,0X0E,0X60,0X0E,0X00,0X01,0XC1,0XC0,0X1C,0X00,0X00,0X00, -0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0XFF,0XFF,0XFF,0XC0,0X00, -0X07,0X07,0X00,0X07,0X07,0X00,0X00,0XE0,0XE0,0X07,0X00,0X00,0X00,0X00,0X38,0X00, -0X0F,0X00,0X77,0X01,0XCC,0X01,0XC0,0X00,0X00,0X00,0X38,0X70,0X00,0X0E,0X0E,0X00, -0X1C,0X00,0X70,0X38,0X00,0X00,0X00,0X01,0XC0,0X01,0XC0,0XE0,0X00,0X38,0X38,0X01, -0XC0,0X00,0X38,0X03,0XB8,0X0E,0XE0,0X0E,0X00,0X03,0XC1,0XC0,0X1C,0X00,0X00,0X00, -0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF9,0XFF,0XFF,0XFF,0XC0,0X00, -0X03,0X07,0X00,0X07,0X07,0X80,0X01,0XE0,0XE0,0X07,0X00,0X01,0X80,0X00,0X38,0X00, -0X0F,0X00,0X7E,0X01,0XFC,0X01,0XC0,0X00,0X70,0X00,0X38,0X38,0X00,0X1C,0X0E,0X00, -0X1C,0X00,0X70,0X38,0X00,0X0C,0X00,0X01,0XC0,0X01,0XC0,0XE0,0X00,0X38,0X38,0X01, -0XE0,0X00,0X78,0X01,0XF8,0X0F,0XE0,0X0E,0X00,0X03,0XC1,0XC0,0X0E,0X00,0X07,0X00, -0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00, -0X03,0X07,0X00,0X07,0X03,0X80,0X01,0XE0,0XE0,0X07,0X80,0X03,0X80,0X00,0X1C,0X00, -0X1F,0X00,0X3E,0X00,0XF8,0X00,0XE0,0X00,0XF0,0X00,0X38,0X3C,0X00,0X1C,0X0E,0X00, -0X1C,0X00,0X70,0X3C,0X00,0X1C,0X00,0X01,0XC0,0X01,0XC0,0XF0,0X00,0X78,0X38,0X00, -0XE0,0X00,0XF8,0X01,0XF0,0X07,0XC0,0X07,0X00,0X07,0XC1,0XC0,0X0E,0X00,0X07,0X00, -0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00, -0X07,0X07,0X00,0X07,0X01,0XC0,0X07,0XE0,0XE0,0X03,0XC0,0X07,0X00,0X00,0X1E,0X00, -0X3F,0X00,0X3C,0X00,0XF8,0X00,0XF0,0X01,0XF0,0X00,0X38,0X1E,0X00,0X38,0X0E,0X00, -0X1C,0X00,0X70,0X1E,0X00,0X38,0X00,0X01,0XC0,0X01,0XC0,0X78,0X00,0XF8,0X38,0X00, -0X70,0X01,0XF8,0X01,0XF0,0X07,0XC0,0X07,0X80,0X0F,0XC1,0XC0,0X07,0X00,0X0E,0X00, -0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X0C, -0X0F,0X07,0X00,0X07,0X01,0XF0,0X0F,0XE0,0XE0,0X01,0XE0,0X1F,0X00,0X00,0X0F,0X00, -0X7F,0X00,0X1C,0X00,0X70,0X00,0X78,0X03,0XE0,0X60,0X78,0X0F,0X00,0XF8,0X0E,0X00, -0X1C,0X00,0X70,0X0F,0X00,0XF8,0X00,0X01,0XC0,0X01,0XC0,0X3C,0X03,0XF8,0X38,0X00, -0X7C,0X03,0XF8,0X00,0XE0,0X03,0X80,0X03,0XC0,0X1F,0XC1,0XC0,0X03,0XC0,0X3C,0X00, -0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X0F, -0X1E,0X07,0X00,0X07,0X00,0XFC,0X7E,0XE0,0XE0,0X00,0XF8,0X7E,0X00,0X00,0X07,0XE3, -0XF7,0X00,0X1C,0X00,0X70,0X00,0X3F,0X1F,0XC0,0X7C,0XF0,0X07,0XC3,0XF0,0X0E,0X00, -0X1C,0X00,0X70,0X07,0XC3,0XF0,0X00,0X01,0XC0,0X01,0XC0,0X1F,0X8F,0X98,0X38,0X00, -0X3F,0X1F,0XB8,0X00,0XE0,0X03,0X80,0X01,0XF8,0XFD,0XC1,0XC0,0X03,0XF1,0XFC,0X00, -0X00,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X07, -0XFC,0X07,0X00,0X07,0X00,0X3F,0XF8,0XE0,0XE0,0X00,0X7F,0XF8,0X00,0X00,0X03,0XFF, -0XC7,0X00,0X18,0X00,0X30,0X00,0X1F,0XFF,0X00,0X3F,0XE0,0X03,0XFF,0XC0,0X0E,0X00, -0X1C,0X00,0X70,0X03,0XFF,0XC0,0X00,0X01,0XC0,0X01,0XC0,0X0F,0XFF,0X38,0X38,0X00, -0X0F,0XFE,0X38,0X00,0X40,0X01,0X00,0X00,0X7F,0XF1,0XC1,0XC0,0X00,0XFF,0XF0,0X00, -0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X03, -0XF8,0X07,0X00,0X06,0X00,0X1F,0XF0,0XE0,0XE0,0X00,0X1F,0XF0,0X00,0X00,0X00,0XFF, -0X06,0X00,0X00,0X00,0X30,0X00,0X07,0XFE,0X00,0X1F,0XC0,0X00,0XFF,0X00,0X06,0X00, -0X18,0X00,0X30,0X00,0XFF,0X80,0X00,0X00,0XC0,0X01,0XC0,0X03,0XFC,0X18,0X38,0X00, -0X07,0XFC,0X38,0X00,0X00,0X00,0X00,0X00,0X3F,0XC1,0X81,0X80,0X00,0X3F,0XC0,0X00, -0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,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, -0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,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, -0X00,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,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, -0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,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, -0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,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, -0X00,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,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, -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,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,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,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,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,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,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,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,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, -}; - - - -const unsigned char gImage_7in5bc_b[30720] = { /* 0X00,0X01,0X80,0X02,0X80,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, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,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,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,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,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,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,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,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,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,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,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,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,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF8,0X07,0XFF,0XFF,0XFF,0XFF,0XC0,0X0F,0XFF,0XFF,0XFF,0XFC,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,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80, -0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XE0,0X07,0XFF,0XFF,0XFF,0XF8,0X00,0X0F,0XFF,0XFF,0XFF,0XFC,0X00, -0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80, -0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0X80,0X07,0XFF,0XFF,0XFF,0XC0,0X00,0X0F,0XFF,0XFF,0XFF,0XFC,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF,0XFF,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFC,0X00, -0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFC,0X00,0X07,0XFF,0XFF,0XFC,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFC,0X00, -0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XF0,0X00,0X07,0XFF,0XFF,0XF8,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFC,0X01, -0X80,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X06,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00, -0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XC0,0X00,0X07,0XFF,0XFF,0XF0,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFC,0X01, -0XC0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X0E,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00, -0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X00,0X00,0X07,0XFF,0XFF,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X01, -0XE0,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X1E,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X01, -0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFE,0X00,0X00,0X07,0XFF,0XFF,0XE0,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X01, -0XF0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X7E,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X01, -0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X00,0X10,0X07,0XFF,0XFF,0XC0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X01, -0XF8,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X01, -0X00,0X7F,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0XFF,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0X00,0X30,0X07,0XFF,0XFF,0X80,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X01, -0XFE,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X01,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X03, -0X80,0X7F,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0XFC,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0X80,0XF0,0X07,0XFF,0XFF,0X80,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X03,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X0F,0XFF,0XFE,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X03, -0X80,0X7F,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0XF8,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0X83,0XF0,0X07,0XFF,0XFF,0X80,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0X80,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X07,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XC0,0X03,0XFF,0XFE,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X03, -0X80,0X3F,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0XF0,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0X8F,0XF0,0X07,0XFF,0XFF,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0XC0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X0F,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X00,0X01,0XFF,0XFE,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X07, -0X80,0X3F,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0XE0,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XDF,0XF0,0X07,0XFF,0XFF,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0XF0,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X3F,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE, -0X00,0X00,0XFF,0XFE,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X07, -0XC0,0X3F,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0XE0,0X0F,0XC0,0X00,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFF,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0XF8,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X7F,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC, -0X00,0X00,0X7F,0XFE,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X07, -0XC0,0X1F,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0XC0,0X1F,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0XFC,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC, -0X0F,0XE0,0X7F,0XFE,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X07, -0XC0,0X1F,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0XC0,0X3F,0XF8,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0XF8,0X07,0XFF,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0XFE,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X01,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC, -0X3F,0XF0,0X3F,0XFE,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F, -0XC0,0X1F,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0X80,0X7F,0XF8,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0X80,0X00,0XFF,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0XFF,0X80,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE, -0X7F,0XF8,0X3F,0XFE,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F, -0XE0,0X1F,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0X80,0X7F,0XF8,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0XFF,0XC0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X0F,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X3F,0XFE,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F, -0XE0,0X0F,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0X80,0X7F,0XFC,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0XFF,0XE0,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X1F,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X3F,0XFE,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F, -0XE0,0X0F,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0X80,0X7F,0XFC,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0XFF,0XF0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X3F,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFC,0X1F,0XFE,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X1F, -0XF0,0X0F,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0X80,0X7F,0XFC,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0XFF,0XFC,0X01,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0XFF,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFC,0X1F,0XFE,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X1F, -0XF0,0X07,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0X80,0X7F,0XF8,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0XFF,0XFE,0X00,0X7F,0XFF,0XFF,0XFF,0XF8,0X01,0XFF,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFC,0X1F,0XFE,0X3F,0XFF,0XFF,0X8F,0XFF,0X01,0XFF,0XFF,0XFF,0XFF,0XE0,0X1F, -0XF0,0X07,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0X80,0X7F,0XF8,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0X1F,0XE0,0X01,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0XFF,0XFF,0X00,0X3F,0XFF,0XFF,0XFF,0XF0,0X03,0XFF,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFC,0X1F,0XFE,0X3F,0XFF,0XFE,0X07,0XFE,0X00,0X7F,0XFF,0XFF,0XFF,0XC0,0X3F, -0XF0,0X07,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0XC0,0X3F,0XF0,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0XFF,0XF8,0X01,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0XFF,0XFF,0X80,0X1F,0XFF,0XFF,0XFF,0XE0,0X07,0XFF,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFC,0X3F,0XFE,0X3F,0XFF,0XFC,0X03,0XFC,0X00,0X3F,0XFF,0XFF,0XFF,0XC0,0X3F, -0XF8,0X03,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0XC0,0X1F,0XF0,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0XFF,0XFC,0X01,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0XFF,0XFF,0XE0,0X0F,0XFF,0XFF,0XFF,0XC0,0X1F,0XFF,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X3F,0XFE,0X3F,0XFF,0XFC,0X61,0XF8,0X7E,0X1F,0XFF,0XFF,0XFF,0XC0,0X3F, -0XF8,0X03,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0XC0,0X0F,0XC0,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0XFF,0XFC,0X01,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFF,0XFF,0X00,0X3F,0XFF,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X3F,0XFE,0X3F,0XFF,0XF8,0XF1,0XF0,0XFF,0X9F,0XFF,0XFF,0XFF,0X80,0X3F, -0XF8,0X03,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0XE0,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0XFF,0XFE,0X00,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0XFF,0XFF,0XF8,0X01,0XFF,0XFF,0XFE,0X00,0X7F,0XFF,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X3F,0XFE,0X00,0X1F,0XF9,0XF8,0XF1,0XFF,0X8F,0XFF,0XFF,0XFF,0X80,0X7F, -0XF8,0X03,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0XF0,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0XFF,0XFE,0X00,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0XFF,0XFF,0XFC,0X00,0XFF,0XFF,0XFC,0X00,0XFF,0XFF,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X7F,0XFE,0X00,0X07,0XF9,0XF8,0XF3,0XFF,0XCF,0XFF,0XFF,0XFF,0X80,0X00, -0X00,0X01,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0XE0,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0XFF,0XFE,0X00,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0XFF,0XFF,0XFC,0X00,0X7F,0XFF,0XF8,0X00,0XFF,0XFF,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X7F,0XFE,0X00,0X01,0XF9,0XF0,0XF3,0XFF,0XCF,0XFF,0XFF,0XFF,0X80,0X00, -0X00,0X01,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0XE0,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0XFF,0XFE,0X00,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XF0,0X00,0X7F,0XFF,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XE0,0XFF,0XFE,0X00,0X00,0XFC,0XE1,0XF3,0XFF,0XCF,0XFF,0XFF,0XFF,0X00,0X00, -0X00,0X01,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0XC0,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0XFF,0XFE,0X00,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0XFF,0XFF,0XF0,0X00,0X0F,0XFF,0XC0,0X00,0X3F,0XFF,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC0,0XFF,0XFF,0XFF,0X00,0X7C,0X01,0XF3,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00, -0X00,0X00,0XFF,0X80,0X7F,0XFC,0X01,0XFF,0X80,0X70,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0XFF,0XFE,0X00,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0XFF,0XFF,0XE0,0X00,0X07,0XFF,0X80,0X00,0X1F,0XFF,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC1,0XFF,0XFF,0XFF,0XE0,0X7E,0X03,0XF3,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00, -0X00,0X00,0XFF,0X80,0X7F,0XF8,0X01,0XFF,0X80,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFE,0X00,0XFF,0XFE,0X01,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0XFF,0XFF,0X80,0X10,0X03,0XFF,0X00,0X20,0X0F,0XFF,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X83,0XFF,0XFF,0XFF,0XF8,0X3F,0X8F,0XF3,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00, -0X00,0X00,0XFF,0X80,0X7F,0XF8,0X01,0XFF,0X80,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFF,0X00,0X7F,0XFC,0X01,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0XFF,0XFF,0X00,0X3C,0X01,0XFE,0X00,0XF0,0X03,0XFF,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X03,0XFF,0XFF,0XFF,0XFC,0X3F,0XFF,0XF3,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00, -0X00,0X00,0XFF,0X80,0X3F,0XF0,0X01,0XFF,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFF,0X00,0X7F,0XFC,0X01,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0XFF,0XFE,0X00,0X7E,0X00,0X78,0X01,0XF8,0X01,0XFF,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFE,0X07,0XFF,0XFF,0XFF,0XFC,0X1F,0XFF,0XF3,0XFF,0XFF,0XFF,0XFF,0XFE,0X01,0XFF, -0XFF,0X00,0X7F,0X80,0X3F,0XE0,0X01,0XFF,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFF,0X00,0X3F,0XF8,0X01,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0XFF,0XFC,0X00,0XFF,0X00,0X30,0X03,0XFC,0X00,0XFF,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFC,0X0F,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XF3,0XFF,0XFF,0XFF,0XFF,0XFE,0X01,0XFF, -0XFF,0X00,0X7F,0X80,0X3F,0XC0,0X01,0XFF,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X00,0X00,0X00,0X01,0XFF,0X80,0X1F,0XF0,0X03,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0XFF,0XF0,0X03,0XFF,0X80,0X00,0X07,0XFF,0X00,0X7F,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF8,0X1F,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XF3,0XFF,0XFF,0XFF,0XFF,0XFC,0X03,0XFF, -0XFF,0X00,0X7F,0XC0,0X0F,0X00,0X01,0XFF,0X80,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X00,0X00,0X00,0X01,0XFF,0X80,0X0F,0XE0,0X03,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0XFF,0XE0,0X07,0XFF,0XC0,0X00,0X1F,0XFF,0X80,0X1F,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF8,0X3F,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XF3,0XFF,0XFF,0XFF,0XFF,0XFC,0X03,0XFF, -0XFF,0X00,0X3F,0XC0,0X00,0X00,0X01,0XFF,0X80,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X00,0X00,0X00,0X01,0XFF,0XC0,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0XFF,0XC0,0X0F,0XFF,0XF0,0X00,0X3F,0XFF,0XC0,0X0F,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X7F,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XF3,0XFF,0XFF,0XFF,0XFF,0XFC,0X03,0XFF, -0XFF,0X80,0X3F,0XC0,0X00,0X03,0X01,0XFF,0XC0,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X00,0X00,0X00,0X01,0XFF,0XE0,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0XFF,0X80,0X1F,0XFF,0XF8,0X00,0X7F,0XFF,0XE0,0X07,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XE0,0X7F,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XF3,0XFF,0XFF,0XFF,0XFF,0XF8,0X03,0XFF, -0XFF,0X80,0X3F,0XE0,0X00,0X06,0X01,0XFF,0XC0,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X00,0X00,0X00,0X01,0XFF,0XE0,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0XFF,0X00,0X7F,0XFF,0XFC,0X00,0XFF,0XFF,0XF8,0X03,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XC0,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XF3,0XFF,0XFF,0XFF,0XFF,0XF8,0X07,0XFF, -0XFF,0X80,0X1F,0XF0,0X00,0X0E,0X01,0XFF,0XF0,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X00,0X00,0X00,0X01,0XFF,0XF0,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0XFC,0X00,0XFF,0XFF,0XFE,0X01,0XFF,0XFF,0XFC,0X00,0XFF,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X81,0XFF,0XFF,0XFF,0XFF,0XFC,0X3F,0XFF,0XF3,0XFF,0XCF,0XFF,0XFF,0XF8,0X07,0XFF, -0XFF,0XC0,0X1F,0XF8,0X00,0X1E,0X01,0XFF,0XE0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X00,0X00,0X00,0X01,0XFF,0XFC,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0XF8,0X01,0XFF,0XFF,0XFF,0X87,0XFF,0XFF,0XFE,0X00,0X7F,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X03,0XFF,0XFF,0XFF,0XFF,0XFC,0X3F,0XFF,0XF3,0XFF,0XCF,0XFF,0XFF,0XF0,0X07,0XFF, -0XFF,0XC0,0X1F,0XFC,0X00,0X3E,0X01,0XFF,0XC0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X00,0X00,0X00,0X01,0XFF,0XFF,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0XF0,0X03,0XFF,0XFF,0XFF,0XDF,0XFF,0XFF,0XFF,0X00,0X3F,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE, -0X07,0XFF,0XFF,0XFF,0XFF,0XF8,0X7F,0XFF,0XF3,0XFF,0XCF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X81,0XFF,0XFF,0XFF,0X80,0X3F,0XFC,0X00,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0XE0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X1F,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE, -0X0F,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XF3,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X7F,0XFE,0X00,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0X80,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X07,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC, -0X0F,0XFF,0XFF,0XFF,0XFF,0XE0,0XFF,0XFF,0XF1,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0XFF,0XFF,0X00,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X01, -0XFF,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X03,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8, -0X00,0X00,0X07,0XF9,0XFF,0X81,0XFF,0XFF,0XF8,0XFF,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0XFF,0XFF,0X00,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X01, -0XFE,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X01,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8, -0X00,0X00,0X07,0XF8,0X00,0X03,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X01,0XFF,0XFF,0X00,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X01, -0XFC,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0XFE,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8, -0X00,0X00,0X07,0XF8,0X00,0X07,0XFF,0XFF,0XFC,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X01,0XFF,0XFF,0X00,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X01, -0XF0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X3E,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8, -0X00,0X00,0X07,0XF8,0X00,0X0F,0XFF,0XFF,0XFF,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0XFF,0XFE,0X00,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X01, -0XE0,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X1E,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8, -0X00,0X00,0X07,0XF8,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X7F,0XFC,0X00,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X01, -0XC0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X0E,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X3F,0XF0,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X01, -0X80,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X06,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00, -0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00, -0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00, -0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,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,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,0XC0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,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,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,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,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,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,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,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,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,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,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,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,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,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,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80, -0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0X80,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC0,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X03,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE, -0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFC,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X7F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC, -0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X00,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X00,0X0F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0, -0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X03,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X00,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,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,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0X80, -0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0X00, -0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X00,0X00,0X00,0X7F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFE,0X00, -0X00,0X7F,0X80,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X00,0X00,0X3F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFC,0X00, -0X03,0XFF,0XF0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X01,0XFF,0XF0,0X00,0X00,0XFF,0XFF,0XFF,0XF0,0X00,0X03,0XFE,0X00,0X00,0X3F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFC,0X00, -0X07,0XFF,0XF8,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X3F,0XFF,0XFF,0X00,0X00,0X7F,0XFF,0XFF,0XE0,0X00,0X1F,0XFF,0XC0,0X00,0X1F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XF8,0X00, -0X1F,0XFF,0XFE,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF3,0XFF,0XFF,0XFF,0XC0,0X00,0X7F,0XFF,0XFF,0XF0,0X00,0X7F,0XFF,0XE0,0X00,0X1F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XF0,0X00, -0X3F,0XFF,0XFF,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X3F,0XFF,0XFF,0XF8,0X01,0XFF,0XFF,0XF8,0X00,0X0F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X08,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XF0,0X00, -0X7F,0XFF,0XFF,0X80,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0XF8,0X03,0XFF,0XFF,0XFC,0X00,0X0F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X38,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XE0,0X00, -0XFF,0XFF,0XFF,0X80,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFC,0X07,0XFF,0XFF,0XFC,0X00,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XE0,0X00, -0XFF,0XFF,0XFF,0XC0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X1F,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFE,0X00,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X03,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XC0,0X01, -0XFF,0XFF,0XFF,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X1F,0XFF,0XFF,0XFF,0X1F,0XFF,0XFF,0XFE,0X00,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X07,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XC0,0X01, -0XFF,0XFF,0XFF,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X1F,0XFF,0XFF,0XFF,0X3F,0XFF,0XFF,0XFF,0X00,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X1F,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XC0,0X03, -0XFF,0XFF,0XFF,0XF0,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X7F,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0X80,0X03, -0XFF,0XFF,0XFF,0XF0,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0X03,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X01,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0X80,0X07, -0XFF,0XFF,0XFF,0XF8,0X00,0X7F,0XFF,0XFF,0XFF,0XFC,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X07,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0X80,0X07, -0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XF0,0X00,0X7F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X1F,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0X00,0X07, -0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XE0,0X00,0X3F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X7F,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0X00,0X0F, -0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XE0,0X00,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0X00,0X0F, -0XFF,0XFF,0XFF,0XE0,0X00,0X3F,0XFF,0XFF,0XFF,0XC0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0X00,0X0F, -0XFF,0XFF,0XFF,0XC0,0X00,0X1F,0XFF,0XFF,0XFF,0XC0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFE,0X00,0X1F, -0XFF,0XFF,0XFF,0X80,0X00,0X1F,0XFF,0XFF,0XFF,0X80,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFE,0X00,0X1F, -0XFF,0XFF,0XFE,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0X80,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFE,0X00,0X1F, -0XFF,0XFF,0XFC,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0X80,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFE,0X00,0X1F, -0XFF,0XFF,0XF8,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0X80,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFE,0X00,0X1F, -0XFF,0XFF,0XE0,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0X80,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFE,0X00,0X1F, -0XFF,0XFF,0XC0,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0X80,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X3F, -0XFF,0XFF,0X80,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XC0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X07, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X3F, -0XFF,0XFE,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XC0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC0,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X0F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X3F, -0XFF,0XFC,0X00,0X01,0X00,0X0F,0XFF,0XFF,0XFF,0XE0,0X00,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X0F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X3F, -0XFF,0XF0,0X00,0X07,0X00,0X0F,0XFF,0XFF,0XFF,0XE0,0X00,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFC,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X0F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X3F, -0XFF,0XE0,0X00,0X0F,0X00,0X0F,0XFF,0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XE0,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X1F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X3F, -0XFF,0XC0,0X00,0X1F,0X00,0X0F,0XFF,0XFF,0XFF,0XFC,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X1F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X3F, -0XFF,0X00,0X00,0X7F,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0X03,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X3F, -0XFE,0X00,0X00,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X3F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X3F, -0XFC,0X00,0X01,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X7F, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X3F, -0XF0,0X00,0X07,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X3F, -0XE0,0X00,0X0F,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X3F, -0XC0,0X00,0X1F,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,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,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X3F, -0X00,0X00,0X7F,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X03,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X3E, -0X00,0X00,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X03,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X3C, -0X00,0X01,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X30, -0X00,0X07,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X0F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X20, -0X00,0X0F,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X00, -0X00,0X1F,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X3F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X00, -0X00,0X7F,0XFF,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X7F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00,0X00, -0X00,0XFF,0XFF,0XFE,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFE,0X00,0X00, -0X01,0XFF,0XFF,0XFE,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFE,0X00,0X00, -0X07,0XFF,0XFF,0XFE,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,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,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFE,0X00,0X00, -0X0F,0XFF,0XFF,0XFE,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X03,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X03,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFE,0X00,0X00, -0X3F,0XFF,0XFF,0XFE,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X01,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFE,0X00,0X00, -0X7F,0XFF,0XFF,0XFE,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X01,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFE,0X00,0X00, -0XFF,0XFF,0XFF,0XFC,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X01,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0X00,0X03, -0XFF,0XFF,0XFF,0XFC,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X01,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0X00,0X07, -0XFF,0XFF,0XFF,0XFC,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X01,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0X00,0X07, -0XFF,0XFF,0XFF,0XFC,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X01,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0X00,0X07, -0XFF,0XFF,0XFF,0XF8,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X01,0XFF,0XFF,0XFF,0XFF,0X00,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,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0X80,0X07, -0XFF,0XFF,0XFF,0XF8,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X01,0XFF,0XFF,0XFF,0XFE,0X00,0X03,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0X80,0X03, -0XFF,0XFF,0XFF,0XF0,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X01,0XFF,0XFF,0XFF,0XFC,0X00,0X07,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0X80,0X03, -0XFF,0XFF,0XFF,0XF0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X03,0XFF,0XFF,0XFF,0XF8,0X00,0X0F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XC0,0X01, -0XFF,0XFF,0XFF,0XF0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X03,0XFF,0XFF,0XFF,0XF0,0X00,0X1F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XC0,0X01, -0XFF,0XFF,0XFF,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X03,0XFF,0XFF,0XFF,0XE0,0X00,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XC0,0X00, -0XFF,0XFF,0XFF,0XC0,0X01,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X03,0XFF,0XFF,0XFF,0XC0,0X00,0X7F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XE0,0X00, -0XFF,0XFF,0XFF,0XC0,0X01,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X7F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X07,0XFF,0XFF,0XFF,0X80,0X00,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XE0,0X00, -0X7F,0XFF,0XFF,0X80,0X03,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X3F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X07,0XFF,0XFF,0XFF,0X00,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,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XF0,0X00, -0X3F,0XFF,0XFF,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X0F,0XFF,0XFF,0XFE,0X00,0X03,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XF0,0X00, -0X1F,0XFF,0XFE,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X0F,0XFF,0XFF,0XFC,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XF8,0X00, -0X0F,0XFF,0XF8,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X1F,0XFF,0XFF,0XF8,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFC,0X00, -0X03,0XFF,0XF0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X3F,0XFF,0XFF,0XF0,0X00,0X1F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFC,0X00, -0X00,0X7F,0X80,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XCF,0XFF,0XFF,0XFF,0X00,0X00,0X3F,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFE,0X00, -0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XC0,0X1F,0XFF,0XE0,0X00,0X00,0X7F,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0X00, -0X00,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XC0,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0X80, -0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XC0,0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XC0, -0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XC0,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XE0, -0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XC0,0X00,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XF0, -0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XC0,0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFC, -0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X1F,0XFF,0XFF,0XFF,0XFF, -0XC0,0X00,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X1F,0XFF,0XFF,0XFF,0XFF, -0XC0,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XE0,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X3F,0XFF,0XFF,0XFF,0XFF, -0XC0,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XFE,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0XFF,0XFF,0XFF,0XFF,0XFF, -0XF0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0X00,0X00,0X00, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X03,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC0,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -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,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,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,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,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,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,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,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, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,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,0X00,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,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,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,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,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,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,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,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,0X00,0X00,0X00,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,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,0X00,0X00,0X00,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,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,0X00,0X00,0X00,0X00, -0X01,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,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, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,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,0X00,0X00,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,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,0X00,0X00,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X00,0X00,0XFF,0XFF,0XFF,0X00,0X00, -0X7F,0XC0,0X00,0X00,0X00,0X01,0XFF,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X0F, -0XFF,0XFF,0XFF,0XFF,0X81,0XFE,0X00,0X00,0X00,0X00,0XFE,0X00,0X00,0X7F,0XFF,0XFF, -0X80,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X00,0X07,0XFF,0XFF,0XFF,0XC0,0X00, -0X7F,0XE0,0X00,0X00,0X00,0X01,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X7F, -0XFF,0XFF,0XFF,0XFF,0X81,0XFE,0X00,0X00,0X00,0X00,0XFE,0X00,0X03,0XFF,0XFF,0XFF, -0XE0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X00,0X1F,0XFF,0XFF,0XFF,0XF0,0X00, -0X3F,0XE0,0X00,0X00,0X00,0X03,0XFF,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X01,0XFF, -0XFF,0XFF,0XFF,0XFF,0X81,0XFC,0X00,0X00,0X00,0X00,0XFE,0X00,0X0F,0XFF,0XFF,0XFF, -0XF8,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X00,0X3F,0XFF,0XFF,0XFF,0XFC,0X00, -0X3F,0XF0,0X00,0X00,0X00,0X03,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X03,0XFF, -0XFF,0XFF,0XFF,0XFF,0X81,0XFC,0X00,0X00,0X00,0X00,0XFE,0X00,0X1F,0XFF,0XFF,0XFF, -0XFE,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X00,0XFF,0XFF,0XFF,0XFF,0XFE,0X00, -0X1F,0XF0,0X00,0X00,0X00,0X07,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X07,0XFF, -0XFF,0XFF,0XFF,0XFF,0X81,0XFC,0X00,0X00,0X00,0X00,0XFE,0X00,0X7F,0XFF,0XFF,0XFF, -0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XFF,0XC0,0X00,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0X00, -0X1F,0XF8,0X00,0X00,0X00,0X07,0XFC,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X0F,0XFF, -0XFF,0XFF,0XFF,0XFF,0X81,0XFC,0X00,0X00,0X00,0X00,0XFE,0X00,0XFF,0XFF,0XFF,0XFF, -0XFF,0X80,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0XFF,0XFF,0XE0,0X00,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0X80, -0X0F,0XF8,0X00,0X00,0X00,0X0F,0XFC,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X0F,0XFF, -0XFF,0XFF,0XFF,0XFF,0X81,0XFC,0X00,0X00,0X00,0X00,0XFE,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XC0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC7,0XFF,0XFF,0XF0,0X00,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X0F,0XFC,0X00,0X00,0X00,0X0F,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFF,0X81,0XFC,0X00,0X00,0X00,0X00,0XFE,0X01,0XFF,0XFF,0XFF,0XFF, -0XFF,0XE0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X87,0XFF,0XFF,0XF8,0X00,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X07,0XFC,0X00,0X00,0X00,0X1F,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFF,0X81,0XFC,0X00,0X00,0X00,0X00,0XFE,0X03,0XFF,0XFF,0XFF,0XFF, -0XFF,0XE0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFF,0XFC,0X00,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0, -0X07,0XFE,0X00,0X00,0X00,0X1F,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFF,0X01,0XFC,0X00,0X00,0X00,0X00,0XFE,0X03,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF0,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X07,0XFF,0XFF,0XFE,0X00,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X07,0XFF,0XC0,0X00,0X01,0XFF,0XE0, -0X03,0XFE,0X00,0X00,0X00,0X3F,0XE0,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X1F,0XF8, -0X00,0X00,0X00,0X00,0X01,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XFF,0XE0,0X00,0X01, -0XFF,0XF0,0X0F,0XE0,0X00,0X00,0X00,0X3F,0XF0,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X07,0XFF,0XFF,0XFE,0X00,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XFF,0X00,0X00,0X00,0X7F,0XF0, -0X03,0XFF,0X00,0X00,0X00,0X3F,0XE0,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X1F,0XE0, -0X00,0X00,0X00,0X00,0X01,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XFF,0X80,0X00,0X00, -0X7F,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X0F,0XF0,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X07,0XFF,0XFF,0XFF,0X00,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XFE,0X00,0X00,0X00,0X3F,0XF0, -0X01,0XFF,0X00,0X00,0X00,0X7F,0XC0,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X1F,0XE0, -0X00,0X00,0X00,0X00,0X01,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XFF,0X00,0X00,0X00, -0X1F,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X0F,0XF0,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X07,0XFF,0XFF,0XFF,0X80,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XFC,0X00,0X00,0X00,0X1F,0XF0, -0X01,0XFF,0X80,0X00,0X00,0X7F,0XC0,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X1F,0XE0, -0X00,0X00,0X00,0X00,0X01,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XFC,0X00,0X00,0X00, -0X0F,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X0F,0XF0,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X07,0XFF,0XFF,0XFF,0XC0,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XF8,0X00,0X00,0X00,0X0F,0XF0, -0X00,0XFF,0X80,0X00,0X00,0XFF,0X80,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X1F,0XF0, -0X00,0X00,0X00,0X00,0X01,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XFC,0X00,0X00,0X00, -0X0F,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X0F,0XF0,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X07,0XFF,0XFF,0XFF,0XC0,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XF0,0X00,0X00,0X00,0X0F,0XF0, -0X00,0XFF,0XC0,0X00,0X00,0XFF,0X80,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X1F,0XF8, -0X00,0X00,0X00,0X00,0X01,0XFE,0X00,0X00,0X00,0X01,0XFE,0X07,0XF8,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X0F,0XF0,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X07,0XFF,0XFF,0XFF,0XE0,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XF0,0X00,0X00,0X00,0X0F,0XF0, -0X00,0X7F,0XC0,0X00,0X01,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X1F,0XFF, -0XFF,0XFF,0XFF,0X80,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X07,0XF8,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X0F,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XC0,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X07,0XFF,0XFF,0XFF,0XE0,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X7F,0XE0,0X00,0X01,0XFF,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X1F,0XFF, -0XFF,0XFF,0XFF,0XF0,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X0F,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XC0,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X07,0XFF,0XFF,0XFF,0XF0,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X3F,0XE0,0X00,0X03,0XFE,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X0F,0XFF, -0XFF,0XFF,0XFF,0XFC,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X0F,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XC0,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF,0XFF,0XF0,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X3F,0XF0,0X00,0X03,0XFE,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X0F,0XFF, -0XFF,0XFF,0XFF,0XFE,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X0F,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XC0,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X07,0XFF,0XFF,0XFF,0XF8,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X1F,0XF0,0X00,0X07,0XFC,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X0F,0XFF, -0XFF,0XFF,0XFF,0XFF,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X0F,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XC0,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X07,0XFF,0XFF,0XFF,0XF8,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X1F,0XF8,0X00,0X07,0XFC,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X07,0XFF, -0XFF,0XFF,0XFF,0XFF,0X81,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X0F,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XC0,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X07,0XFF,0XFF,0XFF,0XFC,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X0F,0XF8,0X00,0X0F,0XF8,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X03,0XFF, -0XFF,0XFF,0XFF,0XFF,0X81,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X1F,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XC0,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X07,0XFF,0XFF,0XFF,0XFC,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X07,0XFC,0X00,0X1F,0XF8,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XC0,0X00, -0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF,0XFF,0XFC,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XF0,0X00,0X00,0X00,0X0F,0XF0, -0X00,0X07,0XFC,0X00,0X1F,0XF0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X3F, -0XFF,0XFF,0XFF,0XFF,0XC1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X07,0XF8,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XC0,0X00, -0X01,0XFE,0X00,0X07,0XFF,0X80,0X7F,0XFE,0X00,0X07,0XF8,0X07,0XFF,0XFE,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X00,0X07,0XFE,0X00,0X3F,0XF0,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X01, -0XFF,0XFF,0XFF,0XFF,0XC1,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XC0,0X00, -0X01,0XFE,0X00,0X03,0XFF,0X00,0X3F,0XFE,0X00,0X07,0XF0,0X03,0XFF,0XFE,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X00,0X03,0XFE,0X00,0X3F,0XE0,0X00,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0XFF,0XC1,0XFE,0X00,0X00,0X00,0X00,0XFE,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFE,0X00,0X03,0XFE,0X00,0X3F,0XFC,0X00,0X27,0XF0,0X03,0XFF,0XFF,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X00,0X03,0XFF,0X00,0X7F,0XE0,0X00,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X3F,0XC1,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0X00,0X03,0XFE,0X00,0X3F,0XFC,0X00,0X3F,0XE0,0X01,0XFF,0XFF,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X00,0X01,0XFF,0X00,0X7F,0XC0,0X00,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X3F,0XC1,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0X00,0X01,0XFE,0X00,0X1F,0XF8,0X00,0X7F,0XE0,0X01,0XFF,0XFF,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X00,0X00,0XFF,0X80,0XFF,0XC0,0X00,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X1F,0XC1,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0X80,0X01,0XFC,0X00,0X1F,0XF8,0X00,0X7F,0XC0,0X00,0XFF,0XFF,0X00,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X00,0X00,0XFF,0X80,0XFF,0X80,0X00,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X1F,0XC1,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0X80,0X01,0XFC,0X00,0X0F,0XF0,0X00,0X7F,0XC0,0X00,0XFF,0XFF,0X80,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X00,0X00,0XFF,0XC1,0XFF,0X80,0X00,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X1F,0XC1,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0X80,0X00,0XFC,0X00,0X0F,0XF0,0X00,0XFF,0XC0,0X00,0X7F,0XFF,0X80,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X00,0X00,0X7F,0XC1,0XFF,0X00,0X00,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X1F,0XC1,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0X80,0X00,0XF8,0X00,0X0F,0XF0,0X00,0XFF,0X80,0X00,0X7F,0XFF,0X80,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X00,0X00,0X7F,0XE3,0XFF,0X00,0X00,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X1F,0XC1,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X0F,0XF0,0XFF,0XFE,0X00,0X00,0X00,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0XC0,0X00,0XF8,0X00,0X07,0XE0,0X01,0XFF,0X80,0X00,0X3F,0XFF,0X80,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0, -0X00,0X00,0X3F,0XE3,0XFE,0X00,0X00,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X1F,0XC1,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XF8,0X0F,0XE0,0X7F,0XFF,0X00,0X00,0X00,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0XC0,0X00,0X78,0X00,0X07,0XE0,0X01,0XFF,0X00,0X00,0X3F,0XFF,0X80,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X00,0X1F,0XF3,0XFC,0X00,0X00,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X1F,0XC1,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X1F,0XFF,0X80,0X00,0X00,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0XC0,0X00,0X70,0X00,0X07,0XC0,0X03,0XFF,0X00,0X00,0X1F,0XFF,0XC0,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X00,0X1F,0XFF,0XFC,0X00,0X00,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X1F,0XC1,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X0F,0XFF,0XE0,0X00,0X00,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0XE0,0X00,0X70,0X00,0X03,0XC0,0X03,0XFE,0X00,0X00,0X1F,0XFF,0XC0,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X07,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X00,0X0F,0XFF,0XF8,0X00,0X00,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X1F,0XC1,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X03,0XFF,0XF0,0X00,0X00,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0XE0,0X00,0X30,0X00,0X03,0X80,0X03,0XFE,0X00,0X00,0X0F,0XFF,0XC0,0X03, -0XFC,0X00,0X00,0X03,0XFC,0X00,0X00,0X0F,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X00,0X0F,0XFF,0XF8,0X00,0X00,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X3F,0XC1,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X01,0XFF,0XFC,0X00,0X00,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0XE0,0X00,0X20,0X00,0X01,0X80,0X07,0XFE,0X00,0X00,0X0F,0XFF,0XC0,0X03, -0XFF,0X00,0X00,0X03,0XFC,0X00,0X00,0X1F,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X00,0X07,0XFF,0XF0,0X00,0X00,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X00,0X7F,0XC1,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X7F,0XFE,0X00,0X00,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0XF0,0X00,0X20,0X00,0X01,0X80,0X07,0XFC,0X00,0X00,0X07,0XFF,0XC0,0X03, -0XFF,0XC0,0X00,0X03,0XFC,0X00,0X00,0XFF,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X00,0X07,0XFF,0XF0,0X00,0X00,0X0F,0XF8,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X03,0XFF,0XC1,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X3F,0XFF,0X80,0X00,0X7F,0X80,0X00,0X00,0X00,0X00,0X00, -0X01,0XFF,0XF0,0X00,0X00,0X00,0X01,0X00,0X0F,0XFC,0X00,0X00,0X07,0XFF,0XC0,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X00,0X03,0XFF,0XE0,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X1F,0XFF,0XC0,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X01,0XFF,0XF0,0X00,0X00,0X00,0X00,0X00,0X0E,0XF8,0X00,0X00,0X07,0XFF,0XC0,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X00,0X03,0XFF,0XE0,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X07,0XFF,0XF0,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X01,0XFF,0XF8,0X00,0X00,0X00,0X00,0X00,0X1C,0X78,0X00,0X00,0X03,0XFF,0XC0,0X03, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X00,0X01,0XFF,0XC0,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC1,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X03,0XFF,0XF8,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X01,0XFF,0XF8,0X00,0X00,0X00,0X00,0X00,0X18,0X70,0X00,0X00,0X03,0XFF,0XC0,0X01, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X00,0X01,0XFF,0XC0,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFF,0X81,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X00,0XFF,0XFC,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X01,0XFF,0XF8,0X00,0X00,0X00,0X00,0X00,0X18,0XF0,0X00,0X40,0X01,0XFF,0XC0,0X00, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X00,0X00,0XFF,0X80,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFF,0X01,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X00,0X7F,0XFF,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X01,0XFF,0XFC,0X00,0X00,0X10,0X00,0X00,0X38,0X80,0X00,0XC0,0X01,0XFF,0XC0,0X00, -0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X00,0X00,0XFF,0X80,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFE,0X01,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X00,0X3F,0XFF,0X80,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X01,0XFF,0XFC,0X00,0X00,0X18,0X00,0X00,0X31,0X80,0X00,0XE0,0X00,0XFF,0XC0,0X00, -0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X00,0X00,0X7F,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF, -0XFF,0XFF,0XFF,0XFC,0X01,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X00,0X0F,0XFF,0XE0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X01,0XFF,0XFE,0X00,0X00,0X18,0X00,0X00,0X71,0X00,0X00,0XE0,0X00,0XFF,0XC0,0X00, -0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X00,0X00,0X7F,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF, -0XFF,0XFF,0XFF,0XF0,0X01,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X00,0X07,0XFF,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X00,0XFF,0XFE,0X00,0X00,0X38,0X00,0X00,0X63,0X80,0X01,0XF0,0X00,0X7F,0XC0,0X00, -0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X00,0X00,0X3E,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X1F,0XFF, -0XFF,0XFF,0XFF,0XC0,0X01,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X00,0X01,0XFF,0XFC,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X00,0XFF,0XFE,0X00,0X00,0X3C,0X00,0X00,0X63,0X00,0X01,0XF0,0X00,0X7F,0XC0,0X00, -0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X0F,0XE0,0X00,0X00,0X00,0X07,0XF0, -0X00,0X00,0X00,0X1C,0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFF, -0XFF,0XFF,0XFC,0X00,0X01,0XFC,0X00,0X00,0X00,0X00,0XFE,0X07,0XF0,0X00,0X00,0X00, -0X07,0XF8,0X0F,0XE0,0X00,0X00,0X00,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0, -0X00,0XFF,0XFE,0X00,0X00,0X3C,0X00,0X00,0XC3,0X00,0X03,0XF8,0X00,0X3F,0XC0,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, -0X00,0XFF,0XFF,0X00,0X00,0X7C,0X00,0X00,0XC6,0X00,0X03,0XF8,0X00,0X3F,0XC0,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, -0X00,0XFF,0XFF,0X00,0X00,0X7E,0X00,0X00,0XC4,0X00,0X07,0XFC,0X00,0X1F,0XC0,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, -0X00,0XFF,0XFF,0X00,0X00,0X7E,0X00,0X01,0X84,0X00,0X07,0XFC,0X00,0X3F,0XC0,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, -0X00,0X7F,0XFF,0X80,0X00,0XFE,0X00,0X01,0X88,0X00,0X07,0XF8,0X00,0X3F,0XC0,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, -0X00,0X7F,0XFF,0X80,0X00,0XFF,0X00,0X03,0XCC,0X00,0X0F,0XF8,0X00,0X7F,0XC0,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, -0X00,0X7F,0XFF,0X80,0X00,0XFF,0X00,0X03,0XF8,0X00,0X0F,0XF0,0X00,0X7F,0XC0,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, -0X00,0X7F,0XFF,0XC0,0X01,0XFF,0X80,0X07,0XF8,0X00,0X1F,0XF0,0X00,0XFF,0XC0,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, -0X00,0X3F,0XFF,0XC0,0X01,0XFF,0X80,0X07,0XF0,0X00,0X1F,0XE0,0X00,0XFF,0XC0,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, -0X00,0X3F,0XFF,0XC0,0X01,0XFF,0X80,0X07,0XF8,0X00,0X3F,0XE0,0X01,0XFF,0XC0,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, -0X00,0X3F,0XFF,0XE0,0X03,0XFF,0XC0,0X0F,0XF8,0X00,0X3F,0XE0,0X01,0XFF,0XC0,0X00, -0X00,0X06,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,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X38,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X1F,0XFF,0XE0,0X03,0XFF,0XC0,0X0F,0XF8,0X00,0X3F,0XC0,0X03,0XFF,0XC0,0X00, -0X00,0X07,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,0X01,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X38,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X1F,0XFF,0XE0,0X07,0XFF,0XC0,0X1F,0XFC,0X00,0X7F,0XC0,0X03,0XFF,0XC0,0X00, -0X00,0X07,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,0X01,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X38,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X0F,0XFF,0XF0,0X07,0XFF,0XE0,0X1F,0XFC,0X00,0X7F,0X80,0X07,0XFF,0XC0,0X00, -0X00,0X07,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,0X01,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X38,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X0F,0XFF,0XF0,0X07,0XFF,0XE0,0X1F,0XFE,0X00,0XF9,0X80,0X07,0XFF,0XC0,0X00, -0X00,0X07,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,0X01,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X38,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X0F,0XFF,0XC0,0X00, -0X00,0X07,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,0X01,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X38,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X0F,0XFF,0XC0,0X00, -0X00,0X07,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,0X01,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X38,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X1F,0XFF,0XC0,0X00, -0X00,0X07,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,0X01,0XC0,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X00,0X38,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00, -0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X1F,0XFF,0XC0,0X01, -0XF8,0X07,0X07,0XE0,0X00,0X0F,0XE0,0X40,0X43,0XC0,0X1F,0XE0,0X00,0X00,0X00,0X7F, -0X02,0X08,0X00,0X00,0X00,0X60,0X07,0XF8,0X00,0X0F,0XC0,0X00,0XFF,0X00,0X04,0X1F, -0X80,0X3F,0X00,0X00,0XFF,0X00,0X00,0X01,0XC1,0XF8,0X00,0X03,0XFC,0X18,0X10,0XF8, -0X03,0XF8,0X38,0X40,0X00,0X00,0X01,0X00,0X1F,0XC0,0X81,0X87,0X80,0X3F,0XC0,0X00, -0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XC0,0X03, -0XFE,0X07,0X1F,0XF8,0X00,0X3F,0XF8,0XE0,0XEF,0XC0,0X7F,0XF8,0X00,0X00,0X01,0XFF, -0XC7,0X1C,0X00,0X18,0X00,0X70,0X1F,0XFF,0X00,0X1F,0XF0,0X03,0XFF,0XC0,0X0E,0X7F, -0XE0,0XFF,0XC0,0X03,0XFF,0XC0,0X00,0X01,0XC7,0XFE,0X00,0X0F,0XFF,0X38,0X39,0XF8, -0X0F,0XFE,0X38,0X70,0X00,0X80,0X03,0X80,0X7F,0XF1,0XC1,0XDF,0X80,0XFF,0XF0,0X00, -0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X3F,0XFF,0XC0,0X07, -0X9F,0X07,0X7C,0XFC,0X00,0X7E,0X7E,0XE0,0XEE,0X80,0XFC,0XFC,0X00,0X00,0X07,0XE3, -0XE7,0X0E,0X00,0X38,0X00,0XE0,0X3F,0X3F,0XC0,0X3C,0XF8,0X07,0XE7,0XE0,0X0E,0X79, -0XF1,0XF7,0XE0,0X07,0XE7,0XE0,0X00,0X01,0XCF,0X9F,0X00,0X1F,0X9F,0X98,0X3B,0XB0, -0X3F,0X9F,0X38,0X70,0X01,0XC0,0X07,0X01,0XF8,0XF9,0XC1,0XFD,0X01,0XF9,0XF8,0X00, -0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X0F,0XFF,0XC0,0X07, -0X07,0X07,0XF0,0X1C,0X00,0XF0,0X0F,0XE0,0XF8,0X01,0XE0,0X1E,0X00,0X00,0X0F,0X80, -0X7F,0X0E,0X00,0X38,0X00,0XE0,0X78,0X07,0XC0,0X38,0X38,0X0F,0X00,0XF0,0X0F,0XE0, -0X73,0X80,0XE0,0X0F,0X00,0XF0,0X00,0X01,0XFC,0X07,0X80,0X3C,0X03,0XF8,0X3F,0X00, -0X7C,0X03,0XB8,0X70,0X01,0XC0,0X07,0X03,0XE0,0X1D,0XC1,0XF0,0X03,0XC0,0X3C,0X00, -0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X0F,0XFF,0XC0,0X0E, -0X00,0X07,0XC0,0X0E,0X01,0XC0,0X07,0XE0,0XF0,0X03,0XC0,0X07,0X00,0X00,0X1E,0X00, -0X3F,0X07,0X00,0X7C,0X01,0XC0,0XF0,0X01,0XE0,0X70,0X00,0X1E,0X00,0X78,0X0F,0X80, -0X3F,0X00,0XF0,0X1E,0X00,0X38,0X00,0X01,0XF8,0X03,0X80,0X78,0X00,0XF8,0X3E,0X00, -0X70,0X01,0XF8,0X38,0X03,0XE0,0X0E,0X03,0X80,0X0F,0XC1,0XE0,0X07,0X80,0X1E,0X00, -0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X1F,0XFF,0XC0,0X0E, -0X00,0X07,0XC0,0X0E,0X03,0X80,0X03,0XE0,0XF0,0X03,0X80,0X03,0X80,0X00,0X1C,0X00, -0X1F,0X07,0X00,0X7C,0X01,0XC0,0XE0,0X00,0XF0,0X70,0X00,0X3C,0X00,0X3C,0X0F,0X80, -0X3E,0X00,0X70,0X1C,0X00,0X1C,0X00,0X01,0XF0,0X01,0XC0,0XF0,0X00,0X78,0X3C,0X00, -0XE0,0X00,0XF8,0X38,0X03,0XE0,0X0E,0X07,0X00,0X07,0XC1,0XE0,0X0F,0X00,0X0F,0X00, -0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X7F,0XFF,0XC0,0X0E, -0X00,0X07,0X80,0X0E,0X07,0X80,0X01,0XE0,0XF0,0X07,0X00,0X03,0X80,0X00,0X3C,0X00, -0X0F,0X03,0X00,0XFC,0X01,0X81,0XC0,0X00,0XF0,0X70,0X00,0X38,0X00,0X1C,0X0F,0X00, -0X1C,0X00,0X70,0X38,0X00,0X1C,0X00,0X01,0XE0,0X01,0XC0,0XE0,0X00,0X78,0X3C,0X01, -0XE0,0X00,0X78,0X1C,0X03,0XE0,0X0E,0X0F,0X00,0X03,0XC1,0XC0,0X0E,0X00,0X07,0X00, -0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0XFF,0XFF,0XC0,0X07, -0X00,0X07,0X00,0X06,0X07,0X00,0X00,0XE0,0XE0,0X07,0X00,0X01,0XC0,0X00,0X38,0X00, -0X0F,0X03,0X80,0XE6,0X03,0X81,0XC0,0X00,0X78,0X38,0X00,0X38,0X00,0X0E,0X0F,0X00, -0X1C,0X00,0X70,0X38,0X00,0X0E,0X00,0X01,0XE0,0X01,0XC0,0XE0,0X00,0X38,0X38,0X01, -0XC0,0X00,0X38,0X1C,0X07,0X70,0X1C,0X0E,0X00,0X03,0XC1,0XC0,0X1C,0X00,0X03,0X00, -0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X01,0XFF,0XFF,0XC0,0X07, -0X80,0X07,0X00,0X07,0X07,0X00,0X00,0XE0,0XE0,0X0F,0X00,0X01,0XC0,0X00,0X38,0X00, -0X07,0X03,0X80,0XCE,0X03,0X81,0XC0,0X00,0X78,0X3C,0X00,0X70,0X00,0X0E,0X0E,0X00, -0X1C,0X00,0X70,0X70,0X00,0X0E,0X00,0X01,0XC0,0X01,0XC1,0XC0,0X00,0X38,0X38,0X01, -0XC0,0X00,0X38,0X0C,0X07,0X70,0X1C,0X0E,0X00,0X01,0XC1,0XC0,0X1C,0X00,0X03,0X80, -0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X03,0XFF,0XFF,0XC0,0X03, -0XE0,0X07,0X00,0X07,0X07,0X00,0X00,0XE0,0XE0,0X0F,0XFF,0XFF,0XC0,0X00,0X30,0X00, -0X07,0X01,0XC1,0XC7,0X07,0X03,0XFF,0XFF,0XF8,0X1F,0X00,0X70,0X00,0X0E,0X0E,0X00, -0X1C,0X00,0X70,0X7F,0XFF,0XFE,0X00,0X01,0XC0,0X01,0XC1,0XC0,0X00,0X18,0X38,0X01, -0X80,0X00,0X38,0X0E,0X0E,0X38,0X38,0X1C,0X00,0X01,0XC1,0XC0,0X1F,0XFF,0XFF,0X80, -0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X07,0XFF,0XFF,0XC0,0X01, -0XF8,0X07,0X00,0X07,0X06,0X00,0X00,0XE0,0XE0,0X0F,0XFF,0XFF,0XC0,0X00,0X70,0X00, -0X07,0X01,0XC1,0XC7,0X07,0X03,0XFF,0XFF,0XF8,0X0F,0XC0,0X70,0X00,0X06,0X0E,0X00, -0X1C,0X00,0X70,0X7F,0XFF,0XFE,0X00,0X01,0XC0,0X01,0XC1,0XC0,0X00,0X18,0X38,0X03, -0X80,0X00,0X38,0X0E,0X0E,0X38,0X38,0X1C,0X00,0X01,0XC1,0XC0,0X1F,0XFF,0XFF,0X80, -0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X0F,0XFF,0XFF,0XC0,0X00, -0X7C,0X07,0X00,0X07,0X06,0X00,0X00,0XE0,0XE0,0X0E,0X00,0X00,0X00,0X00,0X70,0X00, -0X07,0X00,0XE3,0X83,0X8E,0X03,0X80,0X00,0X00,0X03,0XE0,0X70,0X00,0X06,0X0E,0X00, -0X1C,0X00,0X70,0X70,0X00,0X00,0X00,0X01,0XC0,0X01,0XC1,0XC0,0X00,0X18,0X38,0X03, -0X80,0X00,0X38,0X07,0X1C,0X1C,0X70,0X1C,0X00,0X01,0XC1,0XC0,0X1C,0X00,0X00,0X00, -0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X3F,0XFF,0XFF,0XC0,0X00, -0X1E,0X07,0X00,0X07,0X07,0X00,0X00,0XE0,0XE0,0X0E,0X00,0X00,0X00,0X00,0X30,0X00, -0X07,0X00,0XE3,0X83,0X8E,0X03,0X80,0X00,0X00,0X00,0XF0,0X70,0X00,0X0E,0X0E,0X00, -0X1C,0X00,0X70,0X70,0X00,0X00,0X00,0X01,0XC0,0X01,0XC1,0XC0,0X00,0X18,0X38,0X01, -0X80,0X00,0X38,0X07,0X1C,0X1C,0X70,0X1C,0X00,0X01,0XC1,0XC0,0X1C,0X00,0X00,0X00, -0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X7F,0XFF,0XFF,0XC0,0X00, -0X0F,0X07,0X00,0X07,0X07,0X00,0X00,0XE0,0XE0,0X0E,0X00,0X00,0X00,0X00,0X38,0X00, -0X07,0X00,0XE7,0X01,0XCC,0X01,0X80,0X00,0X00,0X00,0X78,0X70,0X00,0X0E,0X0E,0X00, -0X1C,0X00,0X70,0X70,0X00,0X00,0X00,0X01,0XC0,0X01,0XC1,0XC0,0X00,0X38,0X38,0X01, -0XC0,0X00,0X38,0X03,0X18,0X0E,0X60,0X0E,0X00,0X01,0XC1,0XC0,0X1C,0X00,0X00,0X00, -0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0XFF,0XFF,0XFF,0XC0,0X00, -0X07,0X07,0X00,0X07,0X07,0X00,0X00,0XE0,0XE0,0X07,0X00,0X00,0X00,0X00,0X38,0X00, -0X0F,0X00,0X77,0X01,0XCC,0X01,0XC0,0X00,0X00,0X00,0X38,0X70,0X00,0X0E,0X0E,0X00, -0X1C,0X00,0X70,0X38,0X00,0X00,0X00,0X01,0XC0,0X01,0XC0,0XE0,0X00,0X38,0X38,0X01, -0XC0,0X00,0X38,0X03,0XB8,0X0E,0XE0,0X0E,0X00,0X03,0XC1,0XC0,0X1C,0X00,0X00,0X00, -0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF9,0XFF,0XFF,0XFF,0XC0,0X00, -0X03,0X07,0X00,0X07,0X07,0X80,0X01,0XE0,0XE0,0X07,0X00,0X01,0X80,0X00,0X38,0X00, -0X0F,0X00,0X7E,0X01,0XFC,0X01,0XC0,0X00,0X70,0X00,0X38,0X38,0X00,0X1C,0X0E,0X00, -0X1C,0X00,0X70,0X38,0X00,0X0C,0X00,0X01,0XC0,0X01,0XC0,0XE0,0X00,0X38,0X38,0X01, -0XE0,0X00,0X78,0X01,0XF8,0X0F,0XE0,0X0E,0X00,0X03,0XC1,0XC0,0X0E,0X00,0X07,0X00, -0X00,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00, -0X03,0X07,0X00,0X07,0X03,0X80,0X01,0XE0,0XE0,0X07,0X80,0X03,0X80,0X00,0X1C,0X00, -0X1F,0X00,0X3E,0X00,0XF8,0X00,0XE0,0X00,0XF0,0X00,0X38,0X3C,0X00,0X1C,0X0E,0X00, -0X1C,0X00,0X70,0X3C,0X00,0X1C,0X00,0X01,0XC0,0X01,0XC0,0XF0,0X00,0X78,0X38,0X00, -0XE0,0X00,0XF8,0X01,0XF0,0X07,0XC0,0X07,0X00,0X07,0XC1,0XC0,0X0E,0X00,0X07,0X00, -0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00, -0X07,0X07,0X00,0X07,0X01,0XC0,0X07,0XE0,0XE0,0X03,0XC0,0X07,0X00,0X00,0X1E,0X00, -0X3F,0X00,0X3C,0X00,0XF8,0X00,0XF0,0X01,0XF0,0X00,0X38,0X1E,0X00,0X38,0X0E,0X00, -0X1C,0X00,0X70,0X1E,0X00,0X38,0X00,0X01,0XC0,0X01,0XC0,0X78,0X00,0XF8,0X38,0X00, -0X70,0X01,0XF8,0X01,0XF0,0X07,0XC0,0X07,0X80,0X0F,0XC1,0XC0,0X07,0X00,0X0E,0X00, -0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X0C, -0X0F,0X07,0X00,0X07,0X01,0XF0,0X0F,0XE0,0XE0,0X01,0XE0,0X1F,0X00,0X00,0X0F,0X00, -0X7F,0X00,0X1C,0X00,0X70,0X00,0X78,0X03,0XE0,0X60,0X78,0X0F,0X00,0XF8,0X0E,0X00, -0X1C,0X00,0X70,0X0F,0X00,0XF8,0X00,0X01,0XC0,0X01,0XC0,0X3C,0X03,0XF8,0X38,0X00, -0X7C,0X03,0XF8,0X00,0XE0,0X03,0X80,0X03,0XC0,0X1F,0XC1,0XC0,0X03,0XC0,0X3C,0X00, -0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X0F, -0X1E,0X07,0X00,0X07,0X00,0XFC,0X7E,0XE0,0XE0,0X00,0XF8,0X7E,0X00,0X00,0X07,0XE3, -0XF7,0X00,0X1C,0X00,0X70,0X00,0X3F,0X1F,0XC0,0X7C,0XF0,0X07,0XC3,0XF0,0X0E,0X00, -0X1C,0X00,0X70,0X07,0XC3,0XF0,0X00,0X01,0XC0,0X01,0XC0,0X1F,0X8F,0X98,0X38,0X00, -0X3F,0X1F,0XB8,0X00,0XE0,0X03,0X80,0X01,0XF8,0XFD,0XC1,0XC0,0X03,0XF1,0XFC,0X00, -0X00,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X07, -0XFC,0X07,0X00,0X07,0X00,0X3F,0XF8,0XE0,0XE0,0X00,0X7F,0XF8,0X00,0X00,0X03,0XFF, -0XC7,0X00,0X18,0X00,0X30,0X00,0X1F,0XFF,0X00,0X3F,0XE0,0X03,0XFF,0XC0,0X0E,0X00, -0X1C,0X00,0X70,0X03,0XFF,0XC0,0X00,0X01,0XC0,0X01,0XC0,0X0F,0XFF,0X38,0X38,0X00, -0X0F,0XFE,0X38,0X00,0X40,0X01,0X00,0X00,0X7F,0XF1,0XC1,0XC0,0X00,0XFF,0XF0,0X00, -0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X03, -0XF8,0X07,0X00,0X06,0X00,0X1F,0XF0,0XE0,0XE0,0X00,0X1F,0XF0,0X00,0X00,0X00,0XFF, -0X06,0X00,0X00,0X00,0X30,0X00,0X07,0XFE,0X00,0X1F,0XC0,0X00,0XFF,0X00,0X06,0X00, -0X18,0X00,0X30,0X00,0XFF,0X80,0X00,0X00,0XC0,0X01,0XC0,0X03,0XFC,0X18,0X38,0X00, -0X07,0XFC,0X38,0X00,0X00,0X00,0X00,0X00,0X3F,0XC1,0X81,0X80,0X00,0X3F,0XC0,0X00, -0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,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, -0X00,0X00,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,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, -0X00,0X00,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,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, -0X00,0X00,0X00,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,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, -0X00,0X00,0X00,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,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, -0X00,0X00,0X00,0X00,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,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, -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,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,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,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,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,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,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,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,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, -}; - -const unsigned char gImage_7in5bc_ry[30720] = { /* 0X00,0X01,0X80,0X02,0X80,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,0XFE,0X3F,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,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,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,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X7F,0XF0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X9F,0XFF,0XFE,0X0F,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0X1F,0XC0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFE,0X0F,0XFF,0XFC,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X00,0X1F,0X80,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X03,0XFF,0XFE,0X0F,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X0F,0X0F,0X07,0X0F,0XFC,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X01,0XFF,0XFE,0X1F,0XFF,0XF0,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFE,0X1F,0X8F,0X0F,0X87,0XFC,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0XFF,0XFF,0X3F,0XFF,0XE0,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFE,0X1F,0X87,0X1F,0XC7,0XFC,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC0,0X7F,0XFF,0XFF,0XFF,0XC0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFE,0X1F,0X87,0X1F,0XC7,0XFC,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X3F,0XFF,0XFF,0XFF,0X80,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFE,0X1F,0X87,0X1F,0XC7,0XFC,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X1F,0XFF,0XFF,0XFF,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFE,0X0F,0X87,0X0F,0X87,0XFC,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XFC,0X07,0XFE,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X00,0X07,0X00,0X07,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X0F,0XC0,0X00,0XFE,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0X07,0X80,0X07,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0X00,0X00,0X3E,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X87,0XE0,0XC7,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X3E,0X00,0X00,0X0F,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0XC7,0XFC,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X8F,0XFF,0X87,0XFC,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X0F,0XFF,0X0F,0XFC,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFE,0X0F,0XFC,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X00,0X3F,0X80,0X1F,0XFC,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,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,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X00,0X7F,0X80,0X3F,0XFC,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X03,0XFF,0X81,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,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,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,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,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0X00,0X1F,0X00,0X00,0X00,0X00,0X1F,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFC,0X00,0X0F,0X00,0X00,0X00,0X00,0X1E,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFC,0X00,0X0F,0X00,0X00,0X00,0X00,0X1C,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFC,0X00,0X0F,0X00,0X00,0X00,0X00,0X1C,0X00,0X07,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFE,0X00,0X0F,0X00,0X00,0X00,0X00,0X1E,0X00,0X0F,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0X00,0X00,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,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,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X00,0X00,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X00,0X00,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0X00,0X00,0X1F,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFC,0X1F,0XC0,0X00,0X7E,0X07,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF8,0X1F,0XF0,0X01,0XFE,0X03,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XF0,0X1F,0XFF,0XFF,0XFF,0X01,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XE0,0X3F,0XFF,0XFF,0XFF,0X80,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XC0,0X7F,0XFF,0XFF,0XFF,0XC0,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X80,0XFF,0XFF,0XFF,0XFF,0XE0,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X01,0XFF,0XFE,0X1F,0XFF,0XF0,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X03,0XFF,0XFE,0X0F,0XFF,0XF8,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X07,0XFF,0XFE,0X0F,0XFF,0XFC,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0X0F,0XFF,0XFE,0X0F,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X0F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X1F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X3F,0XFF,0XFF,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,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, -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,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,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,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, -0X80,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,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,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00, -0X00,0X07,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X7F,0XFF,0XFC,0X00,0X00,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00, -0X00,0X03,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X7F,0XFF,0XFC,0X00,0X00,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00, -0X00,0X03,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X3F,0XFF,0XFC,0X00,0X00,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00, -0X00,0X03,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X3F,0XFF,0XFC,0X00,0X00,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00, -0X00,0X01,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X3F,0XFF,0XF8,0X00,0X00,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00, -0X00,0X01,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X1F,0XFF,0XF8,0X00,0X00,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00, -0X00,0X01,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X1F,0XFF,0XF8,0X00,0X00,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00, -0X00,0X00,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X1F,0XFF,0XF0,0X00,0X00,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00, -0X00,0X00,0XFF,0XFF,0XFF,0XFE,0X00,0X00,0X1F,0XFF,0XF0,0X00,0X00,0X7F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00, -0X00,0X00,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X0F,0XFF,0XF0,0X00,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00, -0X00,0X00,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X0F,0XFF,0XE0,0X00,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00, -0X00,0X00,0X7F,0XFF,0XFF,0XFC,0X00,0X00,0X0F,0XFF,0XE0,0X00,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00, -0X00,0X00,0X7F,0XFF,0XFF,0XFC,0X00,0X00,0X07,0XFF,0XE0,0X00,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00, -0X00,0X00,0X7F,0XFF,0XFF,0XFC,0X00,0X00,0X07,0XFF,0XE0,0X00,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00, -0X00,0X00,0X3F,0XFF,0XFF,0XFC,0X00,0X00,0X07,0XFF,0XC0,0X00,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00, -0X40,0X00,0X3F,0XFF,0XFF,0XFC,0X00,0X00,0X07,0XFF,0XC0,0X00,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00, -0X40,0X00,0X3F,0XFF,0XFF,0XFC,0X00,0X00,0X03,0XFF,0XC0,0X00,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00, -0X40,0X00,0X1F,0XFF,0XFF,0XFC,0X00,0X00,0X03,0XFF,0X80,0X00,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00, -0XE0,0X00,0X1F,0XFF,0XFF,0XFC,0X00,0X00,0X03,0XFF,0X80,0X00,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00, -0XE0,0X00,0X1F,0XFF,0XFF,0XFC,0X00,0X20,0X01,0XFF,0X80,0X08,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00, -0XE0,0X00,0X1F,0XFF,0XFF,0XFC,0X00,0X20,0X01,0XFF,0X00,0X08,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00, -0XE0,0X00,0X0F,0XFF,0XFF,0XFC,0X00,0X20,0X01,0XFF,0X00,0X08,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X01, -0XF0,0X00,0X0F,0XFF,0XFF,0XFC,0X00,0X30,0X01,0XFF,0X00,0X08,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X01, -0XF0,0X00,0X0F,0XFF,0XFF,0XFC,0X00,0X30,0X00,0XFF,0X00,0X18,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X01, -0XF0,0X00,0X07,0XFF,0XFF,0XFC,0X00,0X30,0X00,0XFE,0X00,0X18,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X03, -0XF0,0X00,0X07,0XFF,0XFF,0XFC,0X00,0X30,0X00,0XFE,0X00,0X18,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X03, -0XF8,0X00,0X07,0XFF,0XFF,0XFC,0X00,0X38,0X00,0X7E,0X00,0X38,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X03, -0XF8,0X00,0X07,0XFF,0XFF,0XFC,0X00,0X38,0X00,0X7C,0X00,0X38,0X00,0X3F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X03, -0XF8,0X00,0X03,0XFF,0XFF,0XF8,0X00,0X38,0X00,0X7C,0X00,0X38,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X07, -0XFC,0X00,0X03,0XFF,0XFF,0XF8,0X00,0X38,0X00,0X7C,0X00,0X78,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X07, -0XFC,0X00,0X03,0XFF,0XFF,0XF8,0X00,0X3C,0X00,0X3C,0X00,0X78,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X07, -0XFC,0X00,0X01,0XFF,0XFF,0XF8,0X00,0X3C,0X00,0X38,0X00,0X78,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X0F, -0XFC,0X00,0X01,0XFF,0XFF,0XF8,0X00,0X3C,0X00,0X38,0X00,0XF8,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X0F, -0XFE,0X00,0X01,0XFF,0XFF,0XF8,0X00,0X3E,0X00,0X38,0X00,0XFC,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X0F, -0XFE,0X00,0X00,0XFF,0XFF,0XF8,0X00,0X3E,0X00,0X38,0X00,0XFC,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X0F, -0XFE,0X00,0X00,0XFF,0XFF,0XF8,0X00,0X3E,0X00,0X10,0X01,0XFC,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X1F, -0XFE,0X00,0X00,0XFF,0XFF,0XF8,0X00,0X3E,0X00,0X10,0X01,0XFC,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X1F, -0XFF,0X00,0X00,0XFF,0XFF,0XF8,0X00,0X3F,0X00,0X10,0X01,0XFC,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X1F, -0XFF,0X00,0X00,0X7F,0XFF,0XF8,0X00,0X3F,0X00,0X10,0X03,0XFC,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X3F, -0XFF,0X00,0X00,0X7F,0XFF,0XF8,0X00,0X3F,0X00,0X00,0X03,0XFC,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X3F, -0XFF,0X80,0X00,0X7F,0XFF,0XF8,0X00,0X3F,0X00,0X00,0X03,0XFC,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X3F, -0XFF,0X80,0X00,0X3F,0XFF,0XF8,0X00,0X3F,0X80,0X00,0X03,0XFC,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X3F, -0XFF,0X80,0X00,0X3F,0XFF,0XF8,0X00,0X3F,0X80,0X00,0X07,0XFC,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X7F, -0XFF,0X80,0X00,0X3F,0XFF,0XF8,0X00,0X3F,0X80,0X00,0X07,0XFC,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X7F, -0XFF,0XC0,0X00,0X1F,0XFF,0XF8,0X00,0X7F,0XC0,0X00,0X07,0XFC,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X7F, -0XFF,0XC0,0X00,0X1F,0XFF,0XF8,0X00,0X7F,0XC0,0X00,0X0F,0XFC,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0XFF, -0XFF,0XC0,0X00,0X1F,0XFF,0XF8,0X00,0X7F,0XC0,0X00,0X0F,0XFC,0X00,0X1F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0XFF, -0XFF,0XC0,0X00,0X1F,0XFF,0XF0,0X00,0X7F,0XC0,0X00,0X0F,0XFC,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0XFF, -0XFF,0XE0,0X00,0X0F,0XFF,0XF0,0X00,0X7F,0XE0,0X00,0X1F,0XFC,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0XFF, -0XFF,0XE0,0X00,0X0F,0XFF,0XF0,0X00,0X7F,0XE0,0X00,0X1F,0XFC,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X01,0XFF, -0XFF,0XE0,0X00,0X0F,0XFF,0XF0,0X00,0X7F,0XE0,0X00,0X1F,0XFC,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X01,0XFF, -0XFF,0XF0,0X00,0X07,0XFF,0XF0,0X00,0X7F,0XE0,0X00,0X3F,0XFC,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X01,0XFF, -0XFF,0XF0,0X00,0X07,0XFF,0XF0,0X00,0X7F,0XF0,0X00,0X3F,0XFC,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X03,0XFF, -0XFF,0XF0,0X00,0X07,0XFF,0XF0,0X00,0X7F,0XF0,0X00,0X3F,0XFC,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X03,0XFF, -0XFF,0XF0,0X00,0X07,0XFF,0XF0,0X00,0X7F,0XF0,0X00,0X7F,0XFC,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X00, -0X00,0X00,0X00,0X03,0XFF,0XF0,0X00,0X7F,0XF8,0X00,0X7F,0XFC,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X00, -0X00,0X00,0X00,0X03,0XFF,0XF0,0X00,0X7F,0XF8,0X00,0X7F,0XFC,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X00,0X00, -0X00,0X00,0X00,0X03,0XFF,0XF0,0X00,0X7F,0XF8,0X00,0X7F,0XFC,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00, -0X00,0X00,0X00,0X01,0XFF,0XF0,0X00,0X7F,0XF8,0X00,0XFF,0XFC,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00, -0X00,0X00,0X00,0X01,0XFF,0XF0,0X00,0X7F,0XFC,0X00,0XFF,0XFC,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00, -0X00,0X00,0X00,0X01,0XFF,0XF0,0X00,0X7F,0XFF,0XFF,0XFF,0XFE,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF8,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0XFF,0XF0,0X00,0X7F,0XFF,0XFF,0XFF,0XFE,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0XFF,0XF0,0X00,0X7F,0XFF,0XFF,0XFF,0XFE,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0XFF,0XF0,0X00,0X7F,0XFF,0XFF,0XFF,0XFE,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0XFF,0XF0,0X00,0X7F,0XFF,0XFF,0XFF,0XFE,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X7F,0XF0,0X00,0X7F,0XFF,0XFF,0XFF,0XFE,0X00,0X0F,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X7F,0XE0,0X00,0X7F,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE0,0X00,0X00,0X00, -0X00,0X00,0X00,0X00,0X7F,0XE0,0X00,0X7F,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X3F,0XFF, -0XFF,0XFF,0X00,0X00,0X3F,0XE0,0X00,0X7F,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X3F,0XFF, -0XFF,0XFF,0X80,0X00,0X3F,0XE0,0X00,0X7F,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X3F,0XFF, -0XFF,0XFF,0X80,0X00,0X3F,0XE0,0X00,0X7F,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC0,0X00,0X7F,0XFF, -0XFF,0XFF,0X80,0X00,0X1F,0XE0,0X00,0X7F,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X7F,0XFF, -0XFF,0XFF,0X80,0X00,0X1F,0XE0,0X00,0X7F,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0X7F,0XFF, -0XFF,0XFF,0XC0,0X00,0X1F,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0X00,0XFF,0XFF, -0XFF,0XFF,0XC0,0X00,0X1F,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XC0,0X00,0X0F,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0XFF,0XFF, -0XFF,0XFF,0XC0,0X00,0X0F,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X01,0XFF,0XFF, -0XFF,0XFF,0XE0,0X00,0X0F,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X01,0XFF,0XFF, -0XFF,0XFF,0XE0,0X00,0X07,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X01,0XFF,0XFF, -0XFF,0XFF,0XE0,0X00,0X07,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X01,0XFF,0XFF, -0XFF,0XFF,0XF0,0X00,0X07,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X03,0XFF,0XFF, -0XFF,0XFF,0XF0,0X00,0X07,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X03,0XFF,0XFF, -0XFF,0XFF,0XF0,0X00,0X03,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X03,0XFF,0XFF, -0XFF,0XFF,0XF0,0X00,0X03,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFC,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XF8,0X00,0X03,0XE0,0X00,0XFF,0XFF,0XFF,0XFF,0XFE,0X00,0X07,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, -}; diff --git a/Raspberry Pi/c/examples/ImageData.h b/Raspberry Pi/c/examples/ImageData.h deleted file mode 100644 index 6e797e5..0000000 --- a/Raspberry Pi/c/examples/ImageData.h +++ /dev/null @@ -1,70 +0,0 @@ -/***************************************************************************** -* | File : ImageData.h -* | Author : Waveshare team -* | Function : -*---------------- -* | This version: V1.0 -* | Date : 2018-10-23 -* | Info : -* -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - -******************************************************************************/ - -#ifndef _IMAGEDATA_H_ -#define _IMAGEDATA_H_ - -extern const unsigned char gImage_1in54[]; -extern const unsigned char gImage_1in54b_Black[]; -extern const unsigned char gImage_1in54b_Red[]; -extern const unsigned char gImage_1in54c_Black[]; -extern const unsigned char gImage_1in54c_Yellow[]; - -extern const unsigned char gImage_2in7[]; -extern const unsigned char gImage_2in7b_Black[5808]; -extern const unsigned char gImage_2in7b_Red[5808]; - -extern const unsigned char gImage_2in9[]; -extern const unsigned char gImage_2in9bc_b[]; -extern const unsigned char gImage_2in9bc_ry[]; - -extern const unsigned char gImage_2in13[]; -extern const unsigned char gImage_2in13b_b[]; -extern const unsigned char gImage_2in13b_r[]; -extern const unsigned char gImage_2in13c_b[]; -extern const unsigned char gImage_2in13c_y[]; -extern const unsigned char gImage_2in13d[]; - -extern const unsigned char gImage_4in2[]; -extern const unsigned char gImage_4in2bc_b[]; -extern const unsigned char gImage_4in2bc_ry[]; - -extern const unsigned char gImage_5in83[]; -extern const unsigned char gImage_5in83bc_b[]; -extern const unsigned char gImage_5in83bc_ry[]; - -extern const unsigned char gImage_7in5[]; -extern const unsigned char gImage_7in5bc_b[]; -extern const unsigned char gImage_7in5bc_ry[]; -#endif -/* FILE END */ - - diff --git a/Raspberry Pi/c/examples/main.c b/Raspberry Pi/c/examples/main.c deleted file mode 100644 index e2cd0be..0000000 --- a/Raspberry Pi/c/examples/main.c +++ /dev/null @@ -1,46 +0,0 @@ -锘#include //exit() -#include //signal() -#include "EPD_Test.h" //Examples - -void Handler(int signo) -{ - //System Exit - printf("\r\nHandler:exit\r\n"); - DEV_Module_Exit(); - - exit(0); -} - -int main(void) -{ - // Exception handling:ctrl + c - signal(SIGINT, Handler); - - // EPD_1in54_test(); - // EPD_1in54_V2_test(); - // EPD_1in54b_test(); - // EPD_1in54c_test(); - - // EPD_2in7_test(); - EPD_2in7b_test(); - - // EPD_2in9_test(); - // EPD_2in9bc_test(); - // EPD_2in9d_test(); - - // EPD_2in13_test(); - // EPD_2in13_V2_test(); - // EPD_2in13bc_test(); - // EPD_2in13d_test(); - - // EPD_4in2_test(); - // EPD_4in2bc_test(); - - // EPD_5in83_test(); - // EPD_5in83bc_test(); - - // EPD_7in5_test(); - // EPD_7in5bc_test(); - - return 0; -} diff --git a/Raspberry Pi/c/lib/.LCD.c.swp b/Raspberry Pi/c/lib/.LCD.c.swp deleted file mode 100644 index 3a49887..0000000 Binary files a/Raspberry Pi/c/lib/.LCD.c.swp and /dev/null differ diff --git a/Raspberry Pi/c/lib/Config/DEV_Config.c b/Raspberry Pi/c/lib/Config/DEV_Config.c deleted file mode 100644 index b58ad04..0000000 --- a/Raspberry Pi/c/lib/Config/DEV_Config.c +++ /dev/null @@ -1,157 +0,0 @@ -/***************************************************************************** -* | File : DEV_Config.c -* | Author : Waveshare team -* | Function : Hardware underlying interface -* | Info : -*---------------- -* | This version: V3.0 -* | Date : 2019-06-20 -* | Info : -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "DEV_Config.h" - -#ifdef USE_BCM2835_LIB - #include -#elif USE_WIRINGPI_LIB - #include - #include -#endif - -/** - * GPIO read and write -**/ - -void DEV_Digital_Write(UWORD Pin, UBYTE Value) -{ -#ifdef USE_BCM2835_LIB - bcm2835_gpio_write(Pin, Value); -#elif USE_WIRINGPI_LIB - digitalWrite(Pin, Value); -#endif -} - -UBYTE DEV_Digital_Read(UWORD Pin) -{ - UBYTE Read_value = 0; -#ifdef USE_BCM2835_LIB - Read_value = bcm2835_gpio_lev(Pin); -#elif USE_WIRINGPI_LIB - Read_value = digitalRead(Pin); -#endif - return Read_value; -} - -/** - * SPI -**/ -void DEV_SPI_WriteByte(UBYTE Value) -{ -#ifdef USE_BCM2835_LIB - bcm2835_spi_transfer(Value); -#elif USE_WIRINGPI_LIB - wiringPiSPIDataRW(0,&Value,1); -#endif -} - -/** - * delay x ms -**/ -void DEV_Delay_ms(UDOUBLE xms) -{ -#ifdef USE_BCM2835_LIB - bcm2835_delay(xms); -#elif USE_WIRINGPI_LIB - delay(xms); -#endif -} - -/****************************************************************************** -function: Module Initialize, the BCM2835 library and initialize the pins, SPI protocol -parameter: -Info: -******************************************************************************/ -UBYTE DEV_Module_Init(void) -{ -#ifdef USE_BCM2835_LIB - if(!bcm2835_init()) { - printf("bcm2835 init failed !!! \r\n"); - return 1; - } else { - printf("bcm2835 init success !!! \r\n"); - } - - // GPIO Config - bcm2835_gpio_fsel(EPD_RST_PIN, BCM2835_GPIO_FSEL_OUTP); - bcm2835_gpio_fsel(EPD_DC_PIN, BCM2835_GPIO_FSEL_OUTP); - bcm2835_gpio_fsel(EPD_CS_PIN, BCM2835_GPIO_FSEL_OUTP); - bcm2835_gpio_fsel(EPD_BUSY_PIN, BCM2835_GPIO_FSEL_INPT); - - bcm2835_spi_begin(); //Start spi interface, set spi pin for the reuse function - bcm2835_spi_setBitOrder(BCM2835_SPI_BIT_ORDER_MSBFIRST); //High first transmission - bcm2835_spi_setDataMode(BCM2835_SPI_MODE0); //spi mode 0 - bcm2835_spi_setClockDivider(BCM2835_SPI_CLOCK_DIVIDER_128); //Frequency - bcm2835_spi_chipSelect(BCM2835_SPI_CS0); //set CE0 - bcm2835_spi_setChipSelectPolarity(BCM2835_SPI_CS0, LOW); //enable cs0 - -#elif USE_WIRINGPI_LIB - //if(wiringPiSetup() < 0)//use wiringpi Pin number table - if(wiringPiSetupGpio() < 0) { //use BCM2835 Pin number table - printf("set wiringPi lib failed !!! \r\n"); - return 1; - } else { - printf("set wiringPi lib success !!! \r\n"); - } - - // GPIO Config - pinMode(EPD_RST_PIN, OUTPUT); - pinMode(EPD_DC_PIN, OUTPUT); - pinMode(EPD_CS_PIN, OUTPUT); - pinMode(EPD_BUSY_PIN, INPUT); - - wiringPiSPISetup(0,32000000); - // wiringPiSPISetupMode(0, 32000000, 0); - -#endif - return 0; -} - -/****************************************************************************** -function: Module exits, closes SPI and BCM2835 library -parameter: -Info: -******************************************************************************/ -void DEV_Module_Exit(void) -{ - -#ifdef USE_BCM2835_LIB - DEV_Digital_Write(EPD_CS_PIN, LOW); - DEV_Digital_Write(EPD_DC_PIN, LOW); - DEV_Digital_Write(EPD_RST_PIN, LOW); - - bcm2835_spi_end(); - bcm2835_close(); -#elif USE_WIRINGPI_LIB - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_Digital_Write(EPD_DC_PIN, 0); - DEV_Digital_Write(EPD_RST_PIN, 0); -#endif -} diff --git a/Raspberry Pi/c/lib/Config/Debug.h b/Raspberry Pi/c/lib/Config/Debug.h deleted file mode 100644 index af3c30e..0000000 --- a/Raspberry Pi/c/lib/Config/Debug.h +++ /dev/null @@ -1,47 +0,0 @@ -/***************************************************************************** -* | File : Debug.h -* | Author : Waveshare team -* | Function : debug with printf -* | Info : -* Image scanning -* Please use progressive scanning to generate images or fonts -*---------------- -* | This version: V2.0 -* | Date : 2018-10-30 -* | Info : -* 1.USE_DEBUG -> DEBUG, If you need to see the debug information, -* clear the execution: make DEBUG=-DDEBUG -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - -******************************************************************************/ -#ifndef __DEBUG_H -#define __DEBUG_H - -#include - -#if DEBUG - #define Debug(__info,...) printf("Debug: " __info,##__VA_ARGS__) -#else - #define Debug(__info,...) -#endif - -#endif - diff --git a/Raspberry Pi/c/lib/Fonts/font12.c b/Raspberry Pi/c/lib/Fonts/font12.c deleted file mode 100644 index 485c3f0..0000000 --- a/Raspberry Pi/c/lib/Fonts/font12.c +++ /dev/null @@ -1,1384 +0,0 @@ -/** - ****************************************************************************** - * @file Font12.c - * @author MCD Application Team - * @version V1.0.0 - * @date 18-February-2014 - * @brief This file provides text Font12 for STM32xx-EVAL's LCD driver. - ****************************************************************************** - * @attention - * - *

© COPYRIGHT(c) 2014 STMicroelectronics

- * - * Redistribution and use in source and binary forms, with or without modification, - * are permitted provided that the following conditions are met: - * 1. Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * 3. Neither the name of STMicroelectronics nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR - * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER - * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - * - ****************************************************************************** - */ - -/* Includes ------------------------------------------------------------------*/ -#include "fonts.h" - -// -// Font data for Courier New 12pt -// - -const uint8_t Font12_Table[] = -{ - // @0 ' ' (7 pixels wide) - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - - // @12 '!' (7 pixels wide) - 0x00, // - 0x10, // # - 0x10, // # - 0x10, // # - 0x10, // # - 0x10, // # - 0x00, // - 0x00, // - 0x10, // # - 0x00, // - 0x00, // - 0x00, // - - // @24 '"' (7 pixels wide) - 0x00, // - 0x6C, // ## ## - 0x48, // # # - 0x48, // # # - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - - // @36 '#' (7 pixels wide) - 0x00, // - 0x14, // # # - 0x14, // # # - 0x28, // # # - 0x7C, // ##### - 0x28, // # # - 0x7C, // ##### - 0x28, // # # - 0x50, // # # - 0x50, // # # - 0x00, // - 0x00, // - - // @48 '$' (7 pixels wide) - 0x00, // - 0x10, // # - 0x38, // ### - 0x40, // # - 0x40, // # - 0x38, // ### - 0x48, // # # - 0x70, // ### - 0x10, // # - 0x10, // # - 0x00, // - 0x00, // - - // @60 '%' (7 pixels wide) - 0x00, // - 0x20, // # - 0x50, // # # - 0x20, // # - 0x0C, // ## - 0x70, // ### - 0x08, // # - 0x14, // # # - 0x08, // # - 0x00, // - 0x00, // - 0x00, // - - // @72 '&' (7 pixels wide) - 0x00, // - 0x00, // - 0x00, // - 0x18, // ## - 0x20, // # - 0x20, // # - 0x54, // # # # - 0x48, // # # - 0x34, // ## # - 0x00, // - 0x00, // - 0x00, // - - // @84 ''' (7 pixels wide) - 0x00, // - 0x10, // # - 0x10, // # - 0x10, // # - 0x10, // # - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - - // @96 '(' (7 pixels wide) - 0x00, // - 0x08, // # - 0x08, // # - 0x10, // # - 0x10, // # - 0x10, // # - 0x10, // # - 0x10, // # - 0x10, // # - 0x08, // # - 0x08, // # - 0x00, // - - // @108 ')' (7 pixels wide) - 0x00, // - 0x20, // # - 0x20, // # - 0x10, // # - 0x10, // # - 0x10, // # - 0x10, // # - 0x10, // # - 0x10, // # - 0x20, // # - 0x20, // # - 0x00, // - - // @120 '*' (7 pixels wide) - 0x00, // - 0x10, // # - 0x7C, // ##### - 0x10, // # - 0x28, // # # - 0x28, // # # - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - - // @132 '+' (7 pixels wide) - 0x00, // - 0x00, // - 0x10, // # - 0x10, // # - 0x10, // # - 0xFE, // ####### - 0x10, // # - 0x10, // # - 0x10, // # - 0x00, // - 0x00, // - 0x00, // - - // @144 ',' (7 pixels wide) - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x18, // ## - 0x10, // # - 0x30, // ## - 0x20, // # - 0x00, // - - // @156 '-' (7 pixels wide) - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x7C, // ##### - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - - // @168 '.' (7 pixels wide) - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x30, // ## - 0x30, // ## - 0x00, // - 0x00, // - 0x00, // - - // @180 '/' (7 pixels wide) - 0x00, // - 0x04, // # - 0x04, // # - 0x08, // # - 0x08, // # - 0x10, // # - 0x10, // # - 0x20, // # - 0x20, // # - 0x40, // # - 0x00, // - 0x00, // - - // @192 '0' (7 pixels wide) - 0x00, // - 0x38, // ### - 0x44, // # # - 0x44, // # # - 0x44, // # # - 0x44, // # # - 0x44, // # # - 0x44, // # # - 0x38, // ### - 0x00, // - 0x00, // - 0x00, // - - // @204 '1' (7 pixels wide) - 0x00, // - 0x30, // ## - 0x10, // # - 0x10, // # - 0x10, // # - 0x10, // # - 0x10, // # - 0x10, // # - 0x7C, // ##### - 0x00, // - 0x00, // - 0x00, // - - // @216 '2' (7 pixels wide) - 0x00, // - 0x38, // ### - 0x44, // # # - 0x04, // # - 0x08, // # - 0x10, // # - 0x20, // # - 0x44, // # # - 0x7C, // ##### - 0x00, // - 0x00, // - 0x00, // - - // @228 '3' (7 pixels wide) - 0x00, // - 0x38, // ### - 0x44, // # # - 0x04, // # - 0x18, // ## - 0x04, // # - 0x04, // # - 0x44, // # # - 0x38, // ### - 0x00, // - 0x00, // - 0x00, // - - // @240 '4' (7 pixels wide) - 0x00, // - 0x0C, // ## - 0x14, // # # - 0x14, // # # - 0x24, // # # - 0x44, // # # - 0x7E, // ###### - 0x04, // # - 0x0E, // ### - 0x00, // - 0x00, // - 0x00, // - - // @252 '5' (7 pixels wide) - 0x00, // - 0x3C, // #### - 0x20, // # - 0x20, // # - 0x38, // ### - 0x04, // # - 0x04, // # - 0x44, // # # - 0x38, // ### - 0x00, // - 0x00, // - 0x00, // - - // @264 '6' (7 pixels wide) - 0x00, // - 0x1C, // ### - 0x20, // # - 0x40, // # - 0x78, // #### - 0x44, // # # - 0x44, // # # - 0x44, // # # - 0x38, // ### - 0x00, // - 0x00, // - 0x00, // - - // @276 '7' (7 pixels wide) - 0x00, // - 0x7C, // ##### - 0x44, // # # - 0x04, // # - 0x08, // # - 0x08, // # - 0x08, // # - 0x10, // # - 0x10, // # - 0x00, // - 0x00, // - 0x00, // - - // @288 '8' (7 pixels wide) - 0x00, // - 0x38, // ### - 0x44, // # # - 0x44, // # # - 0x38, // ### - 0x44, // # # - 0x44, // # # - 0x44, // # # - 0x38, // ### - 0x00, // - 0x00, // - 0x00, // - - // @300 '9' (7 pixels wide) - 0x00, // - 0x38, // ### - 0x44, // # # - 0x44, // # # - 0x44, // # # - 0x3C, // #### - 0x04, // # - 0x08, // # - 0x70, // ### - 0x00, // - 0x00, // - 0x00, // - - // @312 ':' (7 pixels wide) - 0x00, // - 0x00, // - 0x00, // - 0x30, // ## - 0x30, // ## - 0x00, // - 0x00, // - 0x30, // ## - 0x30, // ## - 0x00, // - 0x00, // - 0x00, // - - // @324 ';' (7 pixels wide) - 0x00, // - 0x00, // - 0x00, // - 0x18, // ## - 0x18, // ## - 0x00, // - 0x00, // - 0x18, // ## - 0x30, // ## - 0x20, // # - 0x00, // - 0x00, // - - // @336 '<' (7 pixels wide) - 0x00, // - 0x00, // - 0x0C, // ## - 0x10, // # - 0x60, // ## - 0x80, // # - 0x60, // ## - 0x10, // # - 0x0C, // ## - 0x00, // - 0x00, // - 0x00, // - - // @348 '=' (7 pixels wide) - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x7C, // ##### - 0x00, // - 0x7C, // ##### - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - - // @360 '>' (7 pixels wide) - 0x00, // - 0x00, // - 0xC0, // ## - 0x20, // # - 0x18, // ## - 0x04, // # - 0x18, // ## - 0x20, // # - 0xC0, // ## - 0x00, // - 0x00, // - 0x00, // - - // @372 '?' (7 pixels wide) - 0x00, // - 0x00, // - 0x18, // ## - 0x24, // # # - 0x04, // # - 0x08, // # - 0x10, // # - 0x00, // - 0x30, // ## - 0x00, // - 0x00, // - 0x00, // - - // @384 '@' (7 pixels wide) - 0x38, // ### - 0x44, // # # - 0x44, // # # - 0x4C, // # ## - 0x54, // # # # - 0x54, // # # # - 0x4C, // # ## - 0x40, // # - 0x44, // # # - 0x38, // ### - 0x00, // - 0x00, // - - // @396 'A' (7 pixels wide) - 0x00, // - 0x30, // ## - 0x10, // # - 0x28, // # # - 0x28, // # # - 0x28, // # # - 0x7C, // ##### - 0x44, // # # - 0xEE, // ### ### - 0x00, // - 0x00, // - 0x00, // - - // @408 'B' (7 pixels wide) - 0x00, // - 0xF8, // ##### - 0x44, // # # - 0x44, // # # - 0x78, // #### - 0x44, // # # - 0x44, // # # - 0x44, // # # - 0xF8, // ##### - 0x00, // - 0x00, // - 0x00, // - - // @420 'C' (7 pixels wide) - 0x00, // - 0x3C, // #### - 0x44, // # # - 0x40, // # - 0x40, // # - 0x40, // # - 0x40, // # - 0x44, // # # - 0x38, // ### - 0x00, // - 0x00, // - 0x00, // - - // @432 'D' (7 pixels wide) - 0x00, // - 0xF0, // #### - 0x48, // # # - 0x44, // # # - 0x44, // # # - 0x44, // # # - 0x44, // # # - 0x48, // # # - 0xF0, // #### - 0x00, // - 0x00, // - 0x00, // - - // @444 'E' (7 pixels wide) - 0x00, // - 0xFC, // ###### - 0x44, // # # - 0x50, // # # - 0x70, // ### - 0x50, // # # - 0x40, // # - 0x44, // # # - 0xFC, // ###### - 0x00, // - 0x00, // - 0x00, // - - // @456 'F' (7 pixels wide) - 0x00, // - 0x7E, // ###### - 0x22, // # # - 0x28, // # # - 0x38, // ### - 0x28, // # # - 0x20, // # - 0x20, // # - 0x70, // ### - 0x00, // - 0x00, // - 0x00, // - - // @468 'G' (7 pixels wide) - 0x00, // - 0x3C, // #### - 0x44, // # # - 0x40, // # - 0x40, // # - 0x4E, // # ### - 0x44, // # # - 0x44, // # # - 0x38, // ### - 0x00, // - 0x00, // - 0x00, // - - // @480 'H' (7 pixels wide) - 0x00, // - 0xEE, // ### ### - 0x44, // # # - 0x44, // # # - 0x7C, // ##### - 0x44, // # # - 0x44, // # # - 0x44, // # # - 0xEE, // ### ### - 0x00, // - 0x00, // - 0x00, // - - // @492 'I' (7 pixels wide) - 0x00, // - 0x7C, // ##### - 0x10, // # - 0x10, // # - 0x10, // # - 0x10, // # - 0x10, // # - 0x10, // # - 0x7C, // ##### - 0x00, // - 0x00, // - 0x00, // - - // @504 'J' (7 pixels wide) - 0x00, // - 0x3C, // #### - 0x08, // # - 0x08, // # - 0x08, // # - 0x48, // # # - 0x48, // # # - 0x48, // # # - 0x30, // ## - 0x00, // - 0x00, // - 0x00, // - - // @516 'K' (7 pixels wide) - 0x00, // - 0xEE, // ### ### - 0x44, // # # - 0x48, // # # - 0x50, // # # - 0x70, // ### - 0x48, // # # - 0x44, // # # - 0xE6, // ### ## - 0x00, // - 0x00, // - 0x00, // - - // @528 'L' (7 pixels wide) - 0x00, // - 0x70, // ### - 0x20, // # - 0x20, // # - 0x20, // # - 0x20, // # - 0x24, // # # - 0x24, // # # - 0x7C, // ##### - 0x00, // - 0x00, // - 0x00, // - - // @540 'M' (7 pixels wide) - 0x00, // - 0xEE, // ### ### - 0x6C, // ## ## - 0x6C, // ## ## - 0x54, // # # # - 0x54, // # # # - 0x44, // # # - 0x44, // # # - 0xEE, // ### ### - 0x00, // - 0x00, // - 0x00, // - - // @552 'N' (7 pixels wide) - 0x00, // - 0xEE, // ### ### - 0x64, // ## # - 0x64, // ## # - 0x54, // # # # - 0x54, // # # # - 0x54, // # # # - 0x4C, // # ## - 0xEC, // ### ## - 0x00, // - 0x00, // - 0x00, // - - // @564 'O' (7 pixels wide) - 0x00, // - 0x38, // ### - 0x44, // # # - 0x44, // # # - 0x44, // # # - 0x44, // # # - 0x44, // # # - 0x44, // # # - 0x38, // ### - 0x00, // - 0x00, // - 0x00, // - - // @576 'P' (7 pixels wide) - 0x00, // - 0x78, // #### - 0x24, // # # - 0x24, // # # - 0x24, // # # - 0x38, // ### - 0x20, // # - 0x20, // # - 0x70, // ### - 0x00, // - 0x00, // - 0x00, // - - // @588 'Q' (7 pixels wide) - 0x00, // - 0x38, // ### - 0x44, // # # - 0x44, // # # - 0x44, // # # - 0x44, // # # - 0x44, // # # - 0x44, // # # - 0x38, // ### - 0x1C, // ### - 0x00, // - 0x00, // - - // @600 'R' (7 pixels wide) - 0x00, // - 0xF8, // ##### - 0x44, // # # - 0x44, // # # - 0x44, // # # - 0x78, // #### - 0x48, // # # - 0x44, // # # - 0xE2, // ### # - 0x00, // - 0x00, // - 0x00, // - - // @612 'S' (7 pixels wide) - 0x00, // - 0x34, // ## # - 0x4C, // # ## - 0x40, // # - 0x38, // ### - 0x04, // # - 0x04, // # - 0x64, // ## # - 0x58, // # ## - 0x00, // - 0x00, // - 0x00, // - - // @624 'T' (7 pixels wide) - 0x00, // - 0xFE, // ####### - 0x92, // # # # - 0x10, // # - 0x10, // # - 0x10, // # - 0x10, // # - 0x10, // # - 0x38, // ### - 0x00, // - 0x00, // - 0x00, // - - // @636 'U' (7 pixels wide) - 0x00, // - 0xEE, // ### ### - 0x44, // # # - 0x44, // # # - 0x44, // # # - 0x44, // # # - 0x44, // # # - 0x44, // # # - 0x38, // ### - 0x00, // - 0x00, // - 0x00, // - - // @648 'V' (7 pixels wide) - 0x00, // - 0xEE, // ### ### - 0x44, // # # - 0x44, // # # - 0x28, // # # - 0x28, // # # - 0x28, // # # - 0x10, // # - 0x10, // # - 0x00, // - 0x00, // - 0x00, // - - // @660 'W' (7 pixels wide) - 0x00, // - 0xEE, // ### ### - 0x44, // # # - 0x44, // # # - 0x54, // # # # - 0x54, // # # # - 0x54, // # # # - 0x54, // # # # - 0x28, // # # - 0x00, // - 0x00, // - 0x00, // - - // @672 'X' (7 pixels wide) - 0x00, // - 0xC6, // ## ## - 0x44, // # # - 0x28, // # # - 0x10, // # - 0x10, // # - 0x28, // # # - 0x44, // # # - 0xC6, // ## ## - 0x00, // - 0x00, // - 0x00, // - - // @684 'Y' (7 pixels wide) - 0x00, // - 0xEE, // ### ### - 0x44, // # # - 0x28, // # # - 0x28, // # # - 0x10, // # - 0x10, // # - 0x10, // # - 0x38, // ### - 0x00, // - 0x00, // - 0x00, // - - // @696 'Z' (7 pixels wide) - 0x00, // - 0x7C, // ##### - 0x44, // # # - 0x08, // # - 0x10, // # - 0x10, // # - 0x20, // # - 0x44, // # # - 0x7C, // ##### - 0x00, // - 0x00, // - 0x00, // - - // @708 '[' (7 pixels wide) - 0x00, // - 0x38, // ### - 0x20, // # - 0x20, // # - 0x20, // # - 0x20, // # - 0x20, // # - 0x20, // # - 0x20, // # - 0x20, // # - 0x38, // ### - 0x00, // - - // @720 '\' (7 pixels wide) - 0x00, // - 0x40, // # - 0x20, // # - 0x20, // # - 0x20, // # - 0x10, // # - 0x10, // # - 0x08, // # - 0x08, // # - 0x08, // # - 0x00, // - 0x00, // - - // @732 ']' (7 pixels wide) - 0x00, // - 0x38, // ### - 0x08, // # - 0x08, // # - 0x08, // # - 0x08, // # - 0x08, // # - 0x08, // # - 0x08, // # - 0x08, // # - 0x38, // ### - 0x00, // - - // @744 '^' (7 pixels wide) - 0x00, // - 0x10, // # - 0x10, // # - 0x28, // # # - 0x44, // # # - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - - // @756 '_' (7 pixels wide) - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0xFE, // ####### - - // @768 '`' (7 pixels wide) - 0x00, // - 0x10, // # - 0x08, // # - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - - // @780 'a' (7 pixels wide) - 0x00, // - 0x00, // - 0x00, // - 0x38, // ### - 0x44, // # # - 0x3C, // #### - 0x44, // # # - 0x44, // # # - 0x3E, // ##### - 0x00, // - 0x00, // - 0x00, // - - // @792 'b' (7 pixels wide) - 0x00, // - 0xC0, // ## - 0x40, // # - 0x58, // # ## - 0x64, // ## # - 0x44, // # # - 0x44, // # # - 0x44, // # # - 0xF8, // ##### - 0x00, // - 0x00, // - 0x00, // - - // @804 'c' (7 pixels wide) - 0x00, // - 0x00, // - 0x00, // - 0x3C, // #### - 0x44, // # # - 0x40, // # - 0x40, // # - 0x44, // # # - 0x38, // ### - 0x00, // - 0x00, // - 0x00, // - - // @816 'd' (7 pixels wide) - 0x00, // - 0x0C, // ## - 0x04, // # - 0x34, // ## # - 0x4C, // # ## - 0x44, // # # - 0x44, // # # - 0x44, // # # - 0x3E, // ##### - 0x00, // - 0x00, // - 0x00, // - - // @828 'e' (7 pixels wide) - 0x00, // - 0x00, // - 0x00, // - 0x38, // ### - 0x44, // # # - 0x7C, // ##### - 0x40, // # - 0x40, // # - 0x3C, // #### - 0x00, // - 0x00, // - 0x00, // - - // @840 'f' (7 pixels wide) - 0x00, // - 0x1C, // ### - 0x20, // # - 0x7C, // ##### - 0x20, // # - 0x20, // # - 0x20, // # - 0x20, // # - 0x7C, // ##### - 0x00, // - 0x00, // - 0x00, // - - // @852 'g' (7 pixels wide) - 0x00, // - 0x00, // - 0x00, // - 0x36, // ## ## - 0x4C, // # ## - 0x44, // # # - 0x44, // # # - 0x44, // # # - 0x3C, // #### - 0x04, // # - 0x38, // ### - 0x00, // - - // @864 'h' (7 pixels wide) - 0x00, // - 0xC0, // ## - 0x40, // # - 0x58, // # ## - 0x64, // ## # - 0x44, // # # - 0x44, // # # - 0x44, // # # - 0xEE, // ### ### - 0x00, // - 0x00, // - 0x00, // - - // @876 'i' (7 pixels wide) - 0x00, // - 0x10, // # - 0x00, // - 0x70, // ### - 0x10, // # - 0x10, // # - 0x10, // # - 0x10, // # - 0x7C, // ##### - 0x00, // - 0x00, // - 0x00, // - - // @888 'j' (7 pixels wide) - 0x00, // - 0x10, // # - 0x00, // - 0x78, // #### - 0x08, // # - 0x08, // # - 0x08, // # - 0x08, // # - 0x08, // # - 0x08, // # - 0x70, // ### - 0x00, // - - // @900 'k' (7 pixels wide) - 0x00, // - 0xC0, // ## - 0x40, // # - 0x5C, // # ### - 0x48, // # # - 0x70, // ### - 0x50, // # # - 0x48, // # # - 0xDC, // ## ### - 0x00, // - 0x00, // - 0x00, // - - // @912 'l' (7 pixels wide) - 0x00, // - 0x30, // ## - 0x10, // # - 0x10, // # - 0x10, // # - 0x10, // # - 0x10, // # - 0x10, // # - 0x7C, // ##### - 0x00, // - 0x00, // - 0x00, // - - // @924 'm' (7 pixels wide) - 0x00, // - 0x00, // - 0x00, // - 0xE8, // ### # - 0x54, // # # # - 0x54, // # # # - 0x54, // # # # - 0x54, // # # # - 0xFE, // ####### - 0x00, // - 0x00, // - 0x00, // - - // @936 'n' (7 pixels wide) - 0x00, // - 0x00, // - 0x00, // - 0xD8, // ## ## - 0x64, // ## # - 0x44, // # # - 0x44, // # # - 0x44, // # # - 0xEE, // ### ### - 0x00, // - 0x00, // - 0x00, // - - // @948 'o' (7 pixels wide) - 0x00, // - 0x00, // - 0x00, // - 0x38, // ### - 0x44, // # # - 0x44, // # # - 0x44, // # # - 0x44, // # # - 0x38, // ### - 0x00, // - 0x00, // - 0x00, // - - // @960 'p' (7 pixels wide) - 0x00, // - 0x00, // - 0x00, // - 0xD8, // ## ## - 0x64, // ## # - 0x44, // # # - 0x44, // # # - 0x44, // # # - 0x78, // #### - 0x40, // # - 0xE0, // ### - 0x00, // - - // @972 'q' (7 pixels wide) - 0x00, // - 0x00, // - 0x00, // - 0x36, // ## ## - 0x4C, // # ## - 0x44, // # # - 0x44, // # # - 0x44, // # # - 0x3C, // #### - 0x04, // # - 0x0E, // ### - 0x00, // - - // @984 'r' (7 pixels wide) - 0x00, // - 0x00, // - 0x00, // - 0x6C, // ## ## - 0x30, // ## - 0x20, // # - 0x20, // # - 0x20, // # - 0x7C, // ##### - 0x00, // - 0x00, // - 0x00, // - - // @996 's' (7 pixels wide) - 0x00, // - 0x00, // - 0x00, // - 0x3C, // #### - 0x44, // # # - 0x38, // ### - 0x04, // # - 0x44, // # # - 0x78, // #### - 0x00, // - 0x00, // - 0x00, // - - // @1008 't' (7 pixels wide) - 0x00, // - 0x00, // - 0x20, // # - 0x7C, // ##### - 0x20, // # - 0x20, // # - 0x20, // # - 0x22, // # # - 0x1C, // ### - 0x00, // - 0x00, // - 0x00, // - - // @1020 'u' (7 pixels wide) - 0x00, // - 0x00, // - 0x00, // - 0xCC, // ## ## - 0x44, // # # - 0x44, // # # - 0x44, // # # - 0x4C, // # ## - 0x36, // ## ## - 0x00, // - 0x00, // - 0x00, // - - // @1032 'v' (7 pixels wide) - 0x00, // - 0x00, // - 0x00, // - 0xEE, // ### ### - 0x44, // # # - 0x44, // # # - 0x28, // # # - 0x28, // # # - 0x10, // # - 0x00, // - 0x00, // - 0x00, // - - // @1044 'w' (7 pixels wide) - 0x00, // - 0x00, // - 0x00, // - 0xEE, // ### ### - 0x44, // # # - 0x54, // # # # - 0x54, // # # # - 0x54, // # # # - 0x28, // # # - 0x00, // - 0x00, // - 0x00, // - - // @1056 'x' (7 pixels wide) - 0x00, // - 0x00, // - 0x00, // - 0xCC, // ## ## - 0x48, // # # - 0x30, // ## - 0x30, // ## - 0x48, // # # - 0xCC, // ## ## - 0x00, // - 0x00, // - 0x00, // - - // @1068 'y' (7 pixels wide) - 0x00, // - 0x00, // - 0x00, // - 0xEE, // ### ### - 0x44, // # # - 0x24, // # # - 0x28, // # # - 0x18, // ## - 0x10, // # - 0x10, // # - 0x78, // #### - 0x00, // - - // @1080 'z' (7 pixels wide) - 0x00, // - 0x00, // - 0x00, // - 0x7C, // ##### - 0x48, // # # - 0x10, // # - 0x20, // # - 0x44, // # # - 0x7C, // ##### - 0x00, // - 0x00, // - 0x00, // - - // @1092 '{' (7 pixels wide) - 0x00, // - 0x08, // # - 0x10, // # - 0x10, // # - 0x10, // # - 0x10, // # - 0x20, // # - 0x10, // # - 0x10, // # - 0x10, // # - 0x08, // # - 0x00, // - - // @1104 '|' (7 pixels wide) - 0x00, // - 0x10, // # - 0x10, // # - 0x10, // # - 0x10, // # - 0x10, // # - 0x10, // # - 0x10, // # - 0x10, // # - 0x10, // # - 0x00, // - 0x00, // - - // @1116 '}' (7 pixels wide) - 0x00, // - 0x20, // # - 0x10, // # - 0x10, // # - 0x10, // # - 0x10, // # - 0x08, // # - 0x10, // # - 0x10, // # - 0x10, // # - 0x20, // # - 0x00, // - - // @1128 '~' (7 pixels wide) - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x24, // # # - 0x58, // # ## - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // -}; - -sFONT Font12 = { - Font12_Table, - 7, /* Width */ - 12, /* Height */ -}; - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/Raspberry Pi/c/lib/Fonts/font12CN.c b/Raspberry Pi/c/lib/Fonts/font12CN.c deleted file mode 100644 index d743293..0000000 --- a/Raspberry Pi/c/lib/Fonts/font12CN.c +++ /dev/null @@ -1,120 +0,0 @@ -/** - ****************************************************************************** - * @file Font12.c - * @author MCD Application Team - * @version V1.0.0 - * @date 18-February-2014 - * @brief This file provides text Font12 for STM32xx-EVAL's LCD driver. - ****************************************************************************** - * @attention - * - *

© COPYRIGHT(c) 2014 STMicroelectronics

- * - * Redistribution and use in source and binary forms, with or without modification, - * are permitted provided that the following conditions are met: - * 1. Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * 3. Neither the name of STMicroelectronics nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR - * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER - * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - * - ****************************************************************************** - */ - -/* Includes ------------------------------------------------------------------*/ -#include "fonts.h" - - -// -// Font data for Courier New 12pt -// - -const CH_CN Font12CN_Table[] = -{ -/*-- 文字: 你 --*/ -/*-- 微软雅黑12; 此字体下对应的点阵为:宽x高=16x21 --*/ -{"你", -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1D,0xC0,0x1D,0x80,0x3B,0xFF,0x3B,0x07, -0x3F,0x77,0x7E,0x76,0xF8,0x70,0xFB,0xFE,0xFB,0xFE,0x3F,0x77,0x3F,0x77,0x3E,0x73, -0x38,0x70,0x38,0x70,0x3B,0xE0,0x00,0x00,0x00,0x00}, - -/*-- 文字: 好 --*/ -/*-- 微软雅黑12; 此字体下对应的点阵为:宽x高=16x21 --*/ -{"好", -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x00,0x73,0xFF,0x70,0x0F,0xFE,0x1E, -0x7E,0x3C,0x6E,0x38,0xEE,0x30,0xEF,0xFF,0xFC,0x30,0x7C,0x30,0x38,0x30,0x3E,0x30, -0x7E,0x30,0xE0,0x30,0xC1,0xF0,0x00,0x00,0x00,0x00}, - -/*-- 文字: 树 --*/ -/*-- 微软雅黑12; 此字体下对应的点阵为:宽x高=16x21 --*/ -{"树", -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x0E,0x30,0x0E,0x3F,0xEE,0x30,0xEE, -0xFC,0xFF,0x76,0xCE,0x77,0xFE,0x7B,0xFE,0xFF,0xFE,0xF3,0xDE,0xF3,0xCE,0x37,0xEE, -0x3E,0x6E,0x3C,0x0E,0x30,0x3E,0x00,0x00,0x00,0x00}, - -/*-- 文字: 莓 --*/ -/*-- 微软雅黑12; 此字体下对应的点阵为:宽x高=16x21 --*/ -{"莓", -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x06,0x70,0xFF,0xFF,0x3E,0x70,0x38,0x00, -0x7F,0xFF,0xE0,0x00,0xFF,0xFC,0x3B,0x8C,0x39,0xCC,0xFF,0xFF,0x73,0x9C,0x71,0xDC, -0x7F,0xFF,0x00,0x1C,0x01,0xF8,0x00,0x00,0x00,0x00}, - -/*-- 文字: 派 --*/ -/*-- 微软雅黑12; 此字体下对应的点阵为:宽x高=16x21 --*/ -{"派", -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x1F,0xFF,0xF0,0x3E,0x00,0x0E,0x1F, -0xCF,0xFB,0xFF,0xF8,0x3F,0xFF,0x0F,0xFF,0x7F,0xD8,0x7F,0xDC,0x6F,0xCE,0xED,0xFF, -0xFD,0xF7,0xF9,0xC0,0x00,0x00,0x00,0x00,0x00,0x00}, - -/*-- 文字: a --*/ -/*-- 微软雅黑12; 此字体下对应的点阵为:宽x高=16x21 --*/ -{"a", -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x3E,0x00,0x67,0x00,0x07,0x80,0x0F,0x80,0x7F,0x80,0xE3,0x80,0xE7,0x80,0xE7,0x80, -0x7F,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}, - -/*-- 文字: b --*/ -/*-- 微软雅黑12; 此字体下对应的点阵为:宽x高=16x21 --*/ -{"b", -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x00,0x70,0x00,0x70,0x00,0x70,0x00, -0x7F,0x00,0x7B,0x80,0x71,0xC0,0x71,0xC0,0x71,0xC0,0x71,0xC0,0x71,0xC0,0x7B,0x80, -0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}, - -/*-- 文字: c --*/ -/*-- 微软雅黑12; 此字体下对应的点阵为:宽x高=16x21 --*/ -{"c", -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x3F,0x00,0x73,0x00,0xF0,0x00,0xE0,0x00,0xE0,0x00,0xE0,0x00,0xF0,0x00,0x73,0x00, -0x3F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}, - -/*-- 文字: A --*/ -/*-- 微软雅黑12; 此字体下对应的点阵为:宽x高=16x21 --*/ -{"A", -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0E,0x00,0x1F,0x00,0x1F,0x00, -0x1F,0x00,0x3B,0x80,0x3B,0x80,0x71,0x80,0x7F,0xC0,0x71,0xC0,0xE0,0xE0,0xE0,0xE0, -0xE0,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}, -}; - -cFONT Font12CN = { - Font12CN_Table, - sizeof(Font12CN_Table)/sizeof(CH_CN), /*size of table*/ - 11, /* ASCII Width */ - 16, /* Width */ - 21, /* Height */ -}; - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/Raspberry Pi/c/lib/Fonts/font16.c b/Raspberry Pi/c/lib/Fonts/font16.c deleted file mode 100644 index 58ce59b..0000000 --- a/Raspberry Pi/c/lib/Fonts/font16.c +++ /dev/null @@ -1,1764 +0,0 @@ -/** - ****************************************************************************** - * @file font16.c - * @author MCD Application Team - * @version V1.0.0 - * @date 18-February-2014 - * @brief This file provides text font16 for STM32xx-EVAL's LCD driver. - ****************************************************************************** - * @attention - * - *

© COPYRIGHT(c) 2014 STMicroelectronics

- * - * Redistribution and use in source and binary forms, with or without modification, - * are permitted provided that the following conditions are met: - * 1. Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * 3. Neither the name of STMicroelectronics nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR - * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER - * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - * - ****************************************************************************** - */ - -/* Includes ------------------------------------------------------------------*/ -#include "fonts.h" - -// -// Font data for Courier New 12pt -// - -const uint8_t Font16_Table[] = -{ - // @0 ' ' (11 pixels wide) - 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, // - - // @32 '!' (11 pixels wide) - 0x00, 0x00, // - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x00, 0x00, // - 0x0C, 0x00, // ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @64 '"' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x1D, 0xC0, // ### ### - 0x1D, 0xC0, // ### ### - 0x08, 0x80, // # # - 0x08, 0x80, // # # - 0x08, 0x80, // # # - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @96 '#' (11 pixels wide) - 0x00, 0x00, // - 0x0D, 0x80, // ## ## - 0x0D, 0x80, // ## ## - 0x0D, 0x80, // ## ## - 0x0D, 0x80, // ## ## - 0x3F, 0xC0, // ######## - 0x1B, 0x00, // ## ## - 0x3F, 0xC0, // ######## - 0x1B, 0x00, // ## ## - 0x1B, 0x00, // ## ## - 0x1B, 0x00, // ## ## - 0x1B, 0x00, // ## ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @128 '$' (11 pixels wide) - 0x04, 0x00, // # - 0x1F, 0x80, // ###### - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x38, 0x00, // ### - 0x1E, 0x00, // #### - 0x0F, 0x00, // #### - 0x03, 0x80, // ### - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x3F, 0x00, // ###### - 0x04, 0x00, // # - 0x04, 0x00, // # - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @160 '%' (11 pixels wide) - 0x00, 0x00, // - 0x18, 0x00, // ## - 0x24, 0x00, // # # - 0x24, 0x00, // # # - 0x18, 0xC0, // ## ## - 0x07, 0x80, // #### - 0x1E, 0x00, // #### - 0x31, 0x80, // ## ## - 0x02, 0x40, // # # - 0x02, 0x40, // # # - 0x01, 0x80, // ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @192 '&' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x0F, 0x00, // #### - 0x18, 0x00, // ## - 0x18, 0x00, // ## - 0x18, 0x00, // ## - 0x0C, 0x00, // ## - 0x1D, 0x80, // ### ## - 0x37, 0x00, // ## ### - 0x33, 0x00, // ## ## - 0x1D, 0x80, // ### ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @224 ''' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x07, 0x00, // ### - 0x07, 0x00, // ### - 0x02, 0x00, // # - 0x02, 0x00, // # - 0x02, 0x00, // # - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @256 '(' (11 pixels wide) - 0x00, 0x00, // - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x06, 0x00, // ## - 0x0E, 0x00, // ### - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x0E, 0x00, // ### - 0x06, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @288 ')' (11 pixels wide) - 0x00, 0x00, // - 0x18, 0x00, // ## - 0x18, 0x00, // ## - 0x0C, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x0C, 0x00, // ## - 0x1C, 0x00, // ### - 0x18, 0x00, // ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @320 '*' (11 pixels wide) - 0x00, 0x00, // - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x3F, 0xC0, // ######## - 0x3F, 0xC0, // ######## - 0x0F, 0x00, // #### - 0x1F, 0x80, // ###### - 0x19, 0x80, // ## ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @352 '+' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x04, 0x00, // # - 0x04, 0x00, // # - 0x04, 0x00, // # - 0x3F, 0x80, // ####### - 0x04, 0x00, // # - 0x04, 0x00, // # - 0x04, 0x00, // # - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @384 ',' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x06, 0x00, // ## - 0x04, 0x00, // # - 0x0C, 0x00, // ## - 0x08, 0x00, // # - 0x08, 0x00, // # - 0x00, 0x00, // - 0x00, 0x00, // - - // @416 '-' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x3F, 0x80, // ####### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @448 '.' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @480 '/' (11 pixels wide) - 0x00, 0xC0, // ## - 0x00, 0xC0, // ## - 0x01, 0x80, // ## - 0x01, 0x80, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x06, 0x00, // ## - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x18, 0x00, // ## - 0x18, 0x00, // ## - 0x30, 0x00, // ## - 0x30, 0x00, // ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @512 '0' (11 pixels wide) - 0x00, 0x00, // - 0x0E, 0x00, // ### - 0x1B, 0x00, // ## ## - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x1B, 0x00, // ## ## - 0x0E, 0x00, // ### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @544 '1' (11 pixels wide) - 0x00, 0x00, // - 0x06, 0x00, // ## - 0x3E, 0x00, // ##### - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x3F, 0xC0, // ######## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @576 '2' (11 pixels wide) - 0x00, 0x00, // - 0x0F, 0x00, // #### - 0x19, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x03, 0x00, // ## - 0x06, 0x00, // ## - 0x0C, 0x00, // ## - 0x18, 0x00, // ## - 0x30, 0x00, // ## - 0x3F, 0x80, // ####### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @608 '3' (11 pixels wide) - 0x00, 0x00, // - 0x3F, 0x00, // ###### - 0x61, 0x80, // ## ## - 0x01, 0x80, // ## - 0x03, 0x00, // ## - 0x1F, 0x00, // ##### - 0x03, 0x80, // ### - 0x01, 0x80, // ## - 0x01, 0x80, // ## - 0x61, 0x80, // ## ## - 0x3F, 0x00, // ###### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @640 '4' (11 pixels wide) - 0x00, 0x00, // - 0x07, 0x00, // ### - 0x07, 0x00, // ### - 0x0F, 0x00, // #### - 0x0B, 0x00, // # ## - 0x1B, 0x00, // ## ## - 0x13, 0x00, // # ## - 0x33, 0x00, // ## ## - 0x3F, 0x80, // ####### - 0x03, 0x00, // ## - 0x0F, 0x80, // ##### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @672 '5' (11 pixels wide) - 0x00, 0x00, // - 0x1F, 0x80, // ###### - 0x18, 0x00, // ## - 0x18, 0x00, // ## - 0x18, 0x00, // ## - 0x1F, 0x00, // ##### - 0x11, 0x80, // # ## - 0x01, 0x80, // ## - 0x01, 0x80, // ## - 0x21, 0x80, // # ## - 0x1F, 0x00, // ##### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @704 '6' (11 pixels wide) - 0x00, 0x00, // - 0x07, 0x80, // #### - 0x1C, 0x00, // ### - 0x18, 0x00, // ## - 0x30, 0x00, // ## - 0x37, 0x00, // ## ### - 0x39, 0x80, // ### ## - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x19, 0x80, // ## ## - 0x0F, 0x00, // #### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @736 '7' (11 pixels wide) - 0x00, 0x00, // - 0x7F, 0x00, // ####### - 0x43, 0x00, // # ## - 0x03, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @768 '8' (11 pixels wide) - 0x00, 0x00, // - 0x1F, 0x00, // ##### - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x1F, 0x00, // ##### - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x1F, 0x00, // ##### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @800 '9' (11 pixels wide) - 0x00, 0x00, // - 0x1E, 0x00, // #### - 0x33, 0x00, // ## ## - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x33, 0x80, // ## ### - 0x1D, 0x80, // ### ## - 0x01, 0x80, // ## - 0x03, 0x00, // ## - 0x07, 0x00, // ### - 0x3C, 0x00, // #### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @832 ':' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @864 ';' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x06, 0x00, // ## - 0x04, 0x00, // # - 0x08, 0x00, // # - 0x08, 0x00, // # - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @896 '<' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0xC0, // ## - 0x03, 0x00, // ## - 0x04, 0x00, // # - 0x18, 0x00, // ## - 0x60, 0x00, // ## - 0x18, 0x00, // ## - 0x04, 0x00, // # - 0x03, 0x00, // ## - 0x00, 0xC0, // ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @928 '=' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x7F, 0xC0, // ######### - 0x00, 0x00, // - 0x7F, 0xC0, // ######### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @960 '>' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x60, 0x00, // ## - 0x18, 0x00, // ## - 0x04, 0x00, // # - 0x03, 0x00, // ## - 0x00, 0xC0, // ## - 0x03, 0x00, // ## - 0x04, 0x00, // # - 0x18, 0x00, // ## - 0x60, 0x00, // ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @992 '?' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x1F, 0x00, // ##### - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x01, 0x80, // ## - 0x07, 0x00, // ### - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x00, 0x00, // - 0x0C, 0x00, // ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1024 '@' (11 pixels wide) - 0x00, 0x00, // - 0x0E, 0x00, // ### - 0x11, 0x00, // # # - 0x21, 0x00, // # # - 0x21, 0x00, // # # - 0x27, 0x00, // # ### - 0x29, 0x00, // # # # - 0x29, 0x00, // # # # - 0x27, 0x00, // # ### - 0x20, 0x00, // # - 0x11, 0x00, // # # - 0x0E, 0x00, // ### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1056 'A' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x3F, 0x00, // ###### - 0x0F, 0x00, // #### - 0x09, 0x00, // # # - 0x19, 0x80, // ## ## - 0x19, 0x80, // ## ## - 0x1F, 0x80, // ###### - 0x30, 0xC0, // ## ## - 0x30, 0xC0, // ## ## - 0x79, 0xE0, // #### #### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1088 'B' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x7F, 0x00, // ####### - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x3F, 0x00, // ###### - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x7F, 0x00, // ####### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1120 'C' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x1F, 0x40, // ##### # - 0x30, 0xC0, // ## ## - 0x60, 0x40, // ## # - 0x60, 0x00, // ## - 0x60, 0x00, // ## - 0x60, 0x00, // ## - 0x60, 0x40, // ## # - 0x30, 0x80, // ## # - 0x1F, 0x00, // ##### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1152 'D' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x7F, 0x00, // ####### - 0x31, 0x80, // ## ## - 0x30, 0xC0, // ## ## - 0x30, 0xC0, // ## ## - 0x30, 0xC0, // ## ## - 0x30, 0xC0, // ## ## - 0x30, 0xC0, // ## ## - 0x31, 0x80, // ## ## - 0x7F, 0x00, // ####### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1184 'E' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x7F, 0x80, // ######## - 0x30, 0x80, // ## # - 0x30, 0x80, // ## # - 0x32, 0x00, // ## # - 0x3E, 0x00, // ##### - 0x32, 0x00, // ## # - 0x30, 0x80, // ## # - 0x30, 0x80, // ## # - 0x7F, 0x80, // ######## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1216 'F' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x7F, 0xC0, // ######### - 0x30, 0x40, // ## # - 0x30, 0x40, // ## # - 0x32, 0x00, // ## # - 0x3E, 0x00, // ##### - 0x32, 0x00, // ## # - 0x30, 0x00, // ## - 0x30, 0x00, // ## - 0x7C, 0x00, // ##### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1248 'G' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x1E, 0x80, // #### # - 0x31, 0x80, // ## ## - 0x60, 0x80, // ## # - 0x60, 0x00, // ## - 0x60, 0x00, // ## - 0x67, 0xC0, // ## ##### - 0x61, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x1F, 0x00, // ##### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1280 'H' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x7B, 0xC0, // #### #### - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x3F, 0x80, // ####### - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x7B, 0xC0, // #### #### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1312 'I' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x3F, 0xC0, // ######## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x3F, 0xC0, // ######## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1344 'J' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x1F, 0xC0, // ####### - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x63, 0x00, // ## ## - 0x63, 0x00, // ## ## - 0x63, 0x00, // ## ## - 0x3E, 0x00, // ##### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1376 'K' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x7B, 0xC0, // #### #### - 0x31, 0x80, // ## ## - 0x33, 0x00, // ## ## - 0x36, 0x00, // ## ## - 0x3C, 0x00, // #### - 0x3E, 0x00, // ##### - 0x33, 0x00, // ## ## - 0x31, 0x80, // ## ## - 0x79, 0xC0, // #### ### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1408 'L' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x7E, 0x00, // ###### - 0x18, 0x00, // ## - 0x18, 0x00, // ## - 0x18, 0x00, // ## - 0x18, 0x00, // ## - 0x18, 0x40, // ## # - 0x18, 0x40, // ## # - 0x18, 0x40, // ## # - 0x7F, 0xC0, // ######### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1440 'M' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0xE0, 0xE0, // ### ### - 0x60, 0xC0, // ## ## - 0x71, 0xC0, // ### ### - 0x7B, 0xC0, // #### #### - 0x6A, 0xC0, // ## # # ## - 0x6E, 0xC0, // ## ### ## - 0x64, 0xC0, // ## # ## - 0x60, 0xC0, // ## ## - 0xFB, 0xE0, // ##### ##### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1472 'N' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x73, 0xC0, // ### #### - 0x31, 0x80, // ## ## - 0x39, 0x80, // ### ## - 0x3D, 0x80, // #### ## - 0x35, 0x80, // ## # ## - 0x37, 0x80, // ## #### - 0x33, 0x80, // ## ### - 0x31, 0x80, // ## ## - 0x79, 0x80, // #### ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1504 'O' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x1F, 0x00, // ##### - 0x31, 0x80, // ## ## - 0x60, 0xC0, // ## ## - 0x60, 0xC0, // ## ## - 0x60, 0xC0, // ## ## - 0x60, 0xC0, // ## ## - 0x60, 0xC0, // ## ## - 0x31, 0x80, // ## ## - 0x1F, 0x00, // ##### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1536 'P' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x7F, 0x00, // ####### - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x3F, 0x00, // ###### - 0x30, 0x00, // ## - 0x30, 0x00, // ## - 0x7E, 0x00, // ###### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1568 'Q' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x1F, 0x00, // ##### - 0x31, 0x80, // ## ## - 0x60, 0xC0, // ## ## - 0x60, 0xC0, // ## ## - 0x60, 0xC0, // ## ## - 0x60, 0xC0, // ## ## - 0x60, 0xC0, // ## ## - 0x31, 0x80, // ## ## - 0x1F, 0x00, // ##### - 0x0C, 0xC0, // ## ## - 0x1F, 0x80, // ###### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1600 'R' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x7F, 0x00, // ####### - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x3E, 0x00, // ##### - 0x33, 0x00, // ## ## - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x7C, 0xE0, // ##### ### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1632 'S' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x1F, 0x80, // ###### - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x38, 0x00, // ### - 0x1F, 0x00, // ##### - 0x03, 0x80, // ### - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x3F, 0x00, // ###### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1664 'T' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x7F, 0x80, // ######## - 0x4C, 0x80, // # ## # - 0x4C, 0x80, // # ## # - 0x4C, 0x80, // # ## # - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x3F, 0x00, // ###### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1696 'U' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x7B, 0xC0, // #### #### - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x1F, 0x00, // ##### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1728 'V' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x7B, 0xC0, // #### #### - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x1B, 0x00, // ## ## - 0x1B, 0x00, // ## ## - 0x1B, 0x00, // ## ## - 0x0A, 0x00, // # # - 0x0E, 0x00, // ### - 0x0E, 0x00, // ### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1760 'W' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0xFB, 0xE0, // ##### ##### - 0x60, 0xC0, // ## ## - 0x64, 0xC0, // ## # ## - 0x6E, 0xC0, // ## ### ## - 0x6E, 0xC0, // ## ### ## - 0x2A, 0x80, // # # # # - 0x3B, 0x80, // ### ### - 0x3B, 0x80, // ### ### - 0x31, 0x80, // ## ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1792 'X' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x7B, 0xC0, // #### #### - 0x31, 0x80, // ## ## - 0x1B, 0x00, // ## ## - 0x0E, 0x00, // ### - 0x0E, 0x00, // ### - 0x0E, 0x00, // ### - 0x1B, 0x00, // ## ## - 0x31, 0x80, // ## ## - 0x7B, 0xC0, // #### #### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1824 'Y' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x79, 0xE0, // #### #### - 0x30, 0xC0, // ## ## - 0x19, 0x80, // ## ## - 0x0F, 0x00, // #### - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x1F, 0x80, // ###### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1856 'Z' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x3F, 0x80, // ####### - 0x21, 0x80, // # ## - 0x23, 0x00, // # ## - 0x06, 0x00, // ## - 0x04, 0x00, // # - 0x0C, 0x00, // ## - 0x18, 0x80, // ## # - 0x30, 0x80, // ## # - 0x3F, 0x80, // ####### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1888 '[' (11 pixels wide) - 0x00, 0x00, // - 0x07, 0x80, // #### - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x07, 0x80, // #### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1920 '\' (11 pixels wide) - 0x30, 0x00, // ## - 0x30, 0x00, // ## - 0x18, 0x00, // ## - 0x18, 0x00, // ## - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x06, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x01, 0x80, // ## - 0x01, 0x80, // ## - 0x00, 0xC0, // ## - 0x00, 0xC0, // ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1952 ']' (11 pixels wide) - 0x00, 0x00, // - 0x1E, 0x00, // #### - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x1E, 0x00, // #### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1984 '^' (11 pixels wide) - 0x04, 0x00, // # - 0x0A, 0x00, // # # - 0x0A, 0x00, // # # - 0x11, 0x00, // # # - 0x20, 0x80, // # # - 0x20, 0x80, // # # - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2016 '_' (11 pixels wide) - 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, // - 0xFF, 0xE0, // ########### - - // @2048 '`' (11 pixels wide) - 0x08, 0x00, // # - 0x04, 0x00, // # - 0x02, 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, // - - // @2080 'a' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x1F, 0x00, // ##### - 0x01, 0x80, // ## - 0x01, 0x80, // ## - 0x1F, 0x80, // ###### - 0x31, 0x80, // ## ## - 0x33, 0x80, // ## ### - 0x1D, 0xC0, // ### ### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2112 'b' (11 pixels wide) - 0x00, 0x00, // - 0x70, 0x00, // ### - 0x30, 0x00, // ## - 0x30, 0x00, // ## - 0x37, 0x00, // ## ### - 0x39, 0x80, // ### ## - 0x30, 0xC0, // ## ## - 0x30, 0xC0, // ## ## - 0x30, 0xC0, // ## ## - 0x39, 0x80, // ### ## - 0x77, 0x00, // ### ### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2144 'c' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x1E, 0x80, // #### # - 0x31, 0x80, // ## ## - 0x60, 0x80, // ## # - 0x60, 0x00, // ## - 0x60, 0x80, // ## # - 0x31, 0x80, // ## ## - 0x1F, 0x00, // ##### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2176 'd' (11 pixels wide) - 0x00, 0x00, // - 0x03, 0x80, // ### - 0x01, 0x80, // ## - 0x01, 0x80, // ## - 0x1D, 0x80, // ### ## - 0x33, 0x80, // ## ### - 0x61, 0x80, // ## ## - 0x61, 0x80, // ## ## - 0x61, 0x80, // ## ## - 0x33, 0x80, // ## ### - 0x1D, 0xC0, // ### ### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2208 'e' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x1F, 0x00, // ##### - 0x31, 0x80, // ## ## - 0x60, 0xC0, // ## ## - 0x7F, 0xC0, // ######### - 0x60, 0x00, // ## - 0x30, 0xC0, // ## ## - 0x1F, 0x80, // ###### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2240 'f' (11 pixels wide) - 0x00, 0x00, // - 0x07, 0xE0, // ###### - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x3F, 0x80, // ####### - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x3F, 0x80, // ####### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2272 'g' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x1D, 0xC0, // ### ### - 0x33, 0x80, // ## ### - 0x61, 0x80, // ## ## - 0x61, 0x80, // ## ## - 0x61, 0x80, // ## ## - 0x33, 0x80, // ## ### - 0x1D, 0x80, // ### ## - 0x01, 0x80, // ## - 0x01, 0x80, // ## - 0x1F, 0x00, // ##### - 0x00, 0x00, // - 0x00, 0x00, // - - // @2304 'h' (11 pixels wide) - 0x00, 0x00, // - 0x70, 0x00, // ### - 0x30, 0x00, // ## - 0x30, 0x00, // ## - 0x37, 0x00, // ## ### - 0x39, 0x80, // ### ## - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x7B, 0xC0, // #### #### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2336 'i' (11 pixels wide) - 0x00, 0x00, // - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x00, 0x00, // - 0x1E, 0x00, // #### - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x3F, 0xC0, // ######## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2368 'j' (11 pixels wide) - 0x00, 0x00, // - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x00, 0x00, // - 0x3F, 0x00, // ###### - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x3E, 0x00, // ##### - 0x00, 0x00, // - 0x00, 0x00, // - - // @2400 'k' (11 pixels wide) - 0x00, 0x00, // - 0x70, 0x00, // ### - 0x30, 0x00, // ## - 0x30, 0x00, // ## - 0x37, 0x80, // ## #### - 0x36, 0x00, // ## ## - 0x3C, 0x00, // #### - 0x3C, 0x00, // #### - 0x36, 0x00, // ## ## - 0x33, 0x00, // ## ## - 0x77, 0xC0, // ### ##### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2432 'l' (11 pixels wide) - 0x00, 0x00, // - 0x1E, 0x00, // #### - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x3F, 0xC0, // ######## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2464 'm' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x7F, 0x80, // ######## - 0x36, 0xC0, // ## ## ## - 0x36, 0xC0, // ## ## ## - 0x36, 0xC0, // ## ## ## - 0x36, 0xC0, // ## ## ## - 0x36, 0xC0, // ## ## ## - 0x76, 0xE0, // ### ## ### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2496 'n' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x77, 0x00, // ### ### - 0x39, 0x80, // ### ## - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x7B, 0xC0, // #### #### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2528 'o' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x1F, 0x00, // ##### - 0x31, 0x80, // ## ## - 0x60, 0xC0, // ## ## - 0x60, 0xC0, // ## ## - 0x60, 0xC0, // ## ## - 0x31, 0x80, // ## ## - 0x1F, 0x00, // ##### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2560 'p' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x77, 0x00, // ### ### - 0x39, 0x80, // ### ## - 0x30, 0xC0, // ## ## - 0x30, 0xC0, // ## ## - 0x30, 0xC0, // ## ## - 0x39, 0x80, // ### ## - 0x37, 0x00, // ## ### - 0x30, 0x00, // ## - 0x30, 0x00, // ## - 0x7C, 0x00, // ##### - 0x00, 0x00, // - 0x00, 0x00, // - - // @2592 'q' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x1D, 0xC0, // ### ### - 0x33, 0x80, // ## ### - 0x61, 0x80, // ## ## - 0x61, 0x80, // ## ## - 0x61, 0x80, // ## ## - 0x33, 0x80, // ## ### - 0x1D, 0x80, // ### ## - 0x01, 0x80, // ## - 0x01, 0x80, // ## - 0x07, 0xC0, // ##### - 0x00, 0x00, // - 0x00, 0x00, // - - // @2624 'r' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x7B, 0x80, // #### ### - 0x1C, 0xC0, // ### ## - 0x18, 0x00, // ## - 0x18, 0x00, // ## - 0x18, 0x00, // ## - 0x18, 0x00, // ## - 0x7F, 0x00, // ####### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2656 's' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x1F, 0x80, // ###### - 0x31, 0x80, // ## ## - 0x3C, 0x00, // #### - 0x1F, 0x00, // ##### - 0x03, 0x80, // ### - 0x31, 0x80, // ## ## - 0x3F, 0x00, // ###### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2688 't' (11 pixels wide) - 0x00, 0x00, // - 0x18, 0x00, // ## - 0x18, 0x00, // ## - 0x18, 0x00, // ## - 0x7F, 0x00, // ####### - 0x18, 0x00, // ## - 0x18, 0x00, // ## - 0x18, 0x00, // ## - 0x18, 0x00, // ## - 0x18, 0x80, // ## # - 0x0F, 0x00, // #### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2720 'u' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x73, 0x80, // ### ### - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x33, 0x80, // ## ### - 0x1D, 0xC0, // ### ### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2752 'v' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x7B, 0xC0, // #### #### - 0x31, 0x80, // ## ## - 0x31, 0x80, // ## ## - 0x1B, 0x00, // ## ## - 0x1B, 0x00, // ## ## - 0x0E, 0x00, // ### - 0x0E, 0x00, // ### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2784 'w' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0xF1, 0xE0, // #### #### - 0x60, 0xC0, // ## ## - 0x64, 0xC0, // ## # ## - 0x6E, 0xC0, // ## ### ## - 0x3B, 0x80, // ### ### - 0x3B, 0x80, // ### ### - 0x31, 0x80, // ## ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2816 'x' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x7B, 0xC0, // #### #### - 0x1B, 0x00, // ## ## - 0x0E, 0x00, // ### - 0x0E, 0x00, // ### - 0x0E, 0x00, // ### - 0x1B, 0x00, // ## ## - 0x7B, 0xC0, // #### #### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2848 'y' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x79, 0xE0, // #### #### - 0x30, 0xC0, // ## ## - 0x19, 0x80, // ## ## - 0x19, 0x80, // ## ## - 0x0B, 0x00, // # ## - 0x0F, 0x00, // #### - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x0C, 0x00, // ## - 0x3E, 0x00, // ##### - 0x00, 0x00, // - 0x00, 0x00, // - - // @2880 'z' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x3F, 0x80, // ####### - 0x21, 0x80, // # ## - 0x03, 0x00, // ## - 0x0E, 0x00, // ### - 0x18, 0x00, // ## - 0x30, 0x80, // ## # - 0x3F, 0x80, // ####### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2912 '{' (11 pixels wide) - 0x00, 0x00, // - 0x06, 0x00, // ## - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x18, 0x00, // ## - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x06, 0x00, // ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2944 '|' (11 pixels wide) - 0x00, 0x00, // - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2976 '}' (11 pixels wide) - 0x00, 0x00, // - 0x0C, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x03, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x0C, 0x00, // ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @3008 '~' (11 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x18, 0x00, // ## - 0x24, 0x80, // # # # - 0x03, 0x00, // ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // -}; - -sFONT Font16 = { - Font16_Table, - 11, /* Width */ - 16, /* Height */ -}; - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/Raspberry Pi/c/lib/Fonts/font20.c b/Raspberry Pi/c/lib/Fonts/font20.c deleted file mode 100644 index 697e3ed..0000000 --- a/Raspberry Pi/c/lib/Fonts/font20.c +++ /dev/null @@ -1,2142 +0,0 @@ -/** - ****************************************************************************** - * @file font20.c - * @author MCD Application Team - * @version V1.0.0 - * @date 18-February-2014 - * @brief This file provides text font20 for STM32xx-EVAL's LCD driver. - ****************************************************************************** - * @attention - * - *

© COPYRIGHT(c) 2014 STMicroelectronics

- * - * Redistribution and use in source and binary forms, with or without modification, - * are permitted provided that the following conditions are met: - * 1. Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * 3. Neither the name of STMicroelectronics nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR - * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER - * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - * - ****************************************************************************** - */ - -/* Includes ------------------------------------------------------------------*/ -#include "fonts.h" - -// Character bitmaps for Courier New 15pt -const uint8_t Font20_Table[] = -{ - // @0 ' ' (14 pixels wide) - 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, // - - // @40 '!' (14 pixels wide) - 0x00, 0x00, // - 0x07, 0x00, // ### - 0x07, 0x00, // ### - 0x07, 0x00, // ### - 0x07, 0x00, // ### - 0x07, 0x00, // ### - 0x07, 0x00, // ### - 0x07, 0x00, // ### - 0x02, 0x00, // # - 0x02, 0x00, // # - 0x00, 0x00, // - 0x00, 0x00, // - 0x07, 0x00, // ### - 0x07, 0x00, // ### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @80 '"' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x1C, 0xE0, // ### ### - 0x1C, 0xE0, // ### ### - 0x1C, 0xE0, // ### ### - 0x08, 0x40, // # # - 0x08, 0x40, // # # - 0x08, 0x40, // # # - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @120 '#' (14 pixels wide) - 0x0C, 0xC0, // ## ## - 0x0C, 0xC0, // ## ## - 0x0C, 0xC0, // ## ## - 0x0C, 0xC0, // ## ## - 0x0C, 0xC0, // ## ## - 0x3F, 0xF0, // ########## - 0x3F, 0xF0, // ########## - 0x0C, 0xC0, // ## ## - 0x0C, 0xC0, // ## ## - 0x3F, 0xF0, // ########## - 0x3F, 0xF0, // ########## - 0x0C, 0xC0, // ## ## - 0x0C, 0xC0, // ## ## - 0x0C, 0xC0, // ## ## - 0x0C, 0xC0, // ## ## - 0x0C, 0xC0, // ## ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @160 '$' (14 pixels wide) - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x07, 0xE0, // ###### - 0x0F, 0xE0, // ####### - 0x18, 0x60, // ## ## - 0x18, 0x00, // ## - 0x1F, 0x00, // ##### - 0x0F, 0xC0, // ###### - 0x00, 0xE0, // ### - 0x18, 0x60, // ## ## - 0x18, 0x60, // ## ## - 0x1F, 0xC0, // ####### - 0x1F, 0x80, // ###### - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @200 '%' (14 pixels wide) - 0x00, 0x00, // - 0x1C, 0x00, // ### - 0x22, 0x00, // # # - 0x22, 0x00, // # # - 0x22, 0x00, // # # - 0x1C, 0x60, // ### ## - 0x01, 0xE0, // #### - 0x0F, 0x80, // ##### - 0x3C, 0x00, // #### - 0x31, 0xC0, // ## ### - 0x02, 0x20, // # # - 0x02, 0x20, // # # - 0x02, 0x20, // # # - 0x01, 0xC0, // ### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @240 '&' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x03, 0xE0, // ##### - 0x0F, 0xE0, // ####### - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x06, 0x00, // ## - 0x0F, 0x30, // #### ## - 0x1F, 0xF0, // ######### - 0x19, 0xE0, // ## #### - 0x18, 0xC0, // ## ## - 0x1F, 0xF0, // ######### - 0x07, 0xB0, // #### ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @280 ''' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x03, 0x80, // ### - 0x03, 0x80, // ### - 0x03, 0x80, // ### - 0x01, 0x00, // # - 0x01, 0x00, // # - 0x01, 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, // - - // @320 '(' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0xC0, // ## - 0x00, 0xC0, // ## - 0x01, 0x80, // ## - 0x01, 0x80, // ## - 0x01, 0x80, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x01, 0x80, // ## - 0x01, 0x80, // ## - 0x01, 0x80, // ## - 0x00, 0xC0, // ## - 0x00, 0xC0, // ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @360 ')' (14 pixels wide) - 0x00, 0x00, // - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @400 '*' (14 pixels wide) - 0x00, 0x00, // - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x1B, 0x60, // ## ## ## - 0x1F, 0xE0, // ######## - 0x07, 0x80, // #### - 0x07, 0x80, // #### - 0x0F, 0xC0, // ###### - 0x0C, 0xC0, // ## ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @440 '+' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x3F, 0xF0, // ########## - 0x3F, 0xF0, // ########## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @480 ',' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x03, 0x80, // ### - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x04, 0x00, // # - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @520 '-' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x3F, 0xE0, // ######### - 0x3F, 0xE0, // ######### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @560 '.' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x03, 0x80, // ### - 0x03, 0x80, // ### - 0x03, 0x80, // ### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @600 '/' (14 pixels wide) - 0x00, 0x60, // ## - 0x00, 0x60, // ## - 0x00, 0xC0, // ## - 0x00, 0xC0, // ## - 0x00, 0xC0, // ## - 0x01, 0x80, // ## - 0x01, 0x80, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x18, 0x00, // ## - 0x18, 0x00, // ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @640 '0' (14 pixels wide) - 0x00, 0x00, // - 0x0F, 0x80, // ##### - 0x1F, 0xC0, // ####### - 0x18, 0xC0, // ## ## - 0x30, 0x60, // ## ## - 0x30, 0x60, // ## ## - 0x30, 0x60, // ## ## - 0x30, 0x60, // ## ## - 0x30, 0x60, // ## ## - 0x30, 0x60, // ## ## - 0x30, 0x60, // ## ## - 0x18, 0xC0, // ## ## - 0x1F, 0xC0, // ####### - 0x0F, 0x80, // ##### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @680 '1' (14 pixels wide) - 0x00, 0x00, // - 0x03, 0x00, // ## - 0x1F, 0x00, // ##### - 0x1F, 0x00, // ##### - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x1F, 0xE0, // ######## - 0x1F, 0xE0, // ######## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @720 '2' (14 pixels wide) - 0x00, 0x00, // - 0x0F, 0x80, // ##### - 0x1F, 0xC0, // ####### - 0x38, 0xE0, // ### ### - 0x30, 0x60, // ## ## - 0x00, 0x60, // ## - 0x00, 0xC0, // ## - 0x01, 0x80, // ## - 0x03, 0x00, // ## - 0x06, 0x00, // ## - 0x0C, 0x00, // ## - 0x18, 0x00, // ## - 0x3F, 0xE0, // ######### - 0x3F, 0xE0, // ######### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @760 '3' (14 pixels wide) - 0x00, 0x00, // - 0x0F, 0x80, // ##### - 0x3F, 0xC0, // ######## - 0x30, 0xE0, // ## ### - 0x00, 0x60, // ## - 0x00, 0xE0, // ### - 0x07, 0xC0, // ##### - 0x07, 0xC0, // ##### - 0x00, 0xE0, // ### - 0x00, 0x60, // ## - 0x00, 0x60, // ## - 0x60, 0xE0, // ## ### - 0x7F, 0xC0, // ######### - 0x3F, 0x80, // ####### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @800 '4' (14 pixels wide) - 0x00, 0x00, // - 0x01, 0xC0, // ### - 0x03, 0xC0, // #### - 0x03, 0xC0, // #### - 0x06, 0xC0, // ## ## - 0x0C, 0xC0, // ## ## - 0x0C, 0xC0, // ## ## - 0x18, 0xC0, // ## ## - 0x30, 0xC0, // ## ## - 0x3F, 0xE0, // ######### - 0x3F, 0xE0, // ######### - 0x00, 0xC0, // ## - 0x03, 0xE0, // ##### - 0x03, 0xE0, // ##### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @840 '5' (14 pixels wide) - 0x00, 0x00, // - 0x1F, 0xC0, // ####### - 0x1F, 0xC0, // ####### - 0x18, 0x00, // ## - 0x18, 0x00, // ## - 0x1F, 0x80, // ###### - 0x1F, 0xC0, // ####### - 0x18, 0xE0, // ## ### - 0x00, 0x60, // ## - 0x00, 0x60, // ## - 0x00, 0x60, // ## - 0x30, 0xE0, // ## ### - 0x3F, 0xC0, // ######## - 0x1F, 0x80, // ###### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @880 '6' (14 pixels wide) - 0x00, 0x00, // - 0x03, 0xE0, // ##### - 0x0F, 0xE0, // ####### - 0x1E, 0x00, // #### - 0x18, 0x00, // ## - 0x38, 0x00, // ### - 0x37, 0x80, // ## #### - 0x3F, 0xC0, // ######## - 0x38, 0xE0, // ### ### - 0x30, 0x60, // ## ## - 0x30, 0x60, // ## ## - 0x18, 0xE0, // ## ### - 0x1F, 0xC0, // ####### - 0x07, 0x80, // #### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @920 '7' (14 pixels wide) - 0x00, 0x00, // - 0x3F, 0xE0, // ######### - 0x3F, 0xE0, // ######### - 0x30, 0x60, // ## ## - 0x00, 0x60, // ## - 0x00, 0xC0, // ## - 0x00, 0xC0, // ## - 0x00, 0xC0, // ## - 0x01, 0x80, // ## - 0x01, 0x80, // ## - 0x01, 0x80, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @960 '8' (14 pixels wide) - 0x00, 0x00, // - 0x0F, 0x80, // ##### - 0x1F, 0xC0, // ####### - 0x38, 0xE0, // ### ### - 0x30, 0x60, // ## ## - 0x38, 0xE0, // ### ### - 0x1F, 0xC0, // ####### - 0x1F, 0xC0, // ####### - 0x38, 0xE0, // ### ### - 0x30, 0x60, // ## ## - 0x30, 0x60, // ## ## - 0x38, 0xE0, // ### ### - 0x1F, 0xC0, // ####### - 0x0F, 0x80, // ##### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1000 '9' (14 pixels wide) - 0x00, 0x00, // - 0x0F, 0x00, // #### - 0x1F, 0xC0, // ####### - 0x38, 0xC0, // ### ## - 0x30, 0x60, // ## ## - 0x30, 0x60, // ## ## - 0x38, 0xE0, // ### ### - 0x1F, 0xE0, // ######## - 0x0F, 0x60, // #### ## - 0x00, 0xE0, // ### - 0x00, 0xC0, // ## - 0x03, 0xC0, // #### - 0x3F, 0x80, // ####### - 0x3E, 0x00, // ##### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1040 ':' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x03, 0x80, // ### - 0x03, 0x80, // ### - 0x03, 0x80, // ### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x03, 0x80, // ### - 0x03, 0x80, // ### - 0x03, 0x80, // ### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1080 ';' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x01, 0xC0, // ### - 0x01, 0xC0, // ### - 0x01, 0xC0, // ### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x03, 0x80, // ### - 0x03, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x04, 0x00, // # - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1120 '<' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x30, // ## - 0x00, 0xF0, // #### - 0x03, 0xC0, // #### - 0x07, 0x00, // ### - 0x1C, 0x00, // ### - 0x78, 0x00, // #### - 0x1C, 0x00, // ### - 0x07, 0x00, // ### - 0x03, 0xC0, // #### - 0x00, 0xF0, // #### - 0x00, 0x30, // ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1160 '=' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x7F, 0xF0, // ########### - 0x7F, 0xF0, // ########### - 0x00, 0x00, // - 0x00, 0x00, // - 0x7F, 0xF0, // ########### - 0x7F, 0xF0, // ########### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1200 '>' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x30, 0x00, // ## - 0x3C, 0x00, // #### - 0x0F, 0x00, // #### - 0x03, 0x80, // ### - 0x00, 0xE0, // ### - 0x00, 0x78, // #### - 0x00, 0xE0, // ### - 0x03, 0x80, // ### - 0x0F, 0x00, // #### - 0x3C, 0x00, // #### - 0x30, 0x00, // ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1240 '?' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x0F, 0x80, // ##### - 0x1F, 0xC0, // ####### - 0x18, 0x60, // ## ## - 0x18, 0x60, // ## ## - 0x00, 0x60, // ## - 0x01, 0xC0, // ### - 0x03, 0x80, // ### - 0x03, 0x00, // ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x07, 0x00, // ### - 0x07, 0x00, // ### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1280 '@' (14 pixels wide) - 0x00, 0x00, // - 0x03, 0x80, // ### - 0x0C, 0x80, // ## # - 0x08, 0x40, // # # - 0x10, 0x40, // # # - 0x10, 0x40, // # # - 0x11, 0xC0, // # ### - 0x12, 0x40, // # # # - 0x12, 0x40, // # # # - 0x12, 0x40, // # # # - 0x11, 0xC0, // # ### - 0x10, 0x00, // # - 0x08, 0x00, // # - 0x08, 0x40, // # # - 0x07, 0x80, // #### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1320 'A' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x1F, 0x80, // ###### - 0x1F, 0x80, // ###### - 0x03, 0x80, // ### - 0x06, 0xC0, // ## ## - 0x06, 0xC0, // ## ## - 0x0C, 0xC0, // ## ## - 0x0C, 0x60, // ## ## - 0x1F, 0xE0, // ######## - 0x1F, 0xE0, // ######## - 0x30, 0x30, // ## ## - 0x78, 0x78, // #### #### - 0x78, 0x78, // #### #### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1360 'B' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x3F, 0x80, // ####### - 0x3F, 0xC0, // ######## - 0x18, 0x60, // ## ## - 0x18, 0x60, // ## ## - 0x18, 0xE0, // ## ### - 0x1F, 0xC0, // ####### - 0x1F, 0xE0, // ######## - 0x18, 0x70, // ## ### - 0x18, 0x30, // ## ## - 0x18, 0x30, // ## ## - 0x3F, 0xF0, // ########## - 0x3F, 0xE0, // ######### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1400 'C' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x07, 0xB0, // #### ## - 0x0F, 0xF0, // ######## - 0x1C, 0x70, // ### ### - 0x38, 0x30, // ### ## - 0x30, 0x00, // ## - 0x30, 0x00, // ## - 0x30, 0x00, // ## - 0x30, 0x00, // ## - 0x38, 0x30, // ### ## - 0x1C, 0x70, // ### ### - 0x0F, 0xE0, // ####### - 0x07, 0xC0, // ##### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1440 'D' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x7F, 0x80, // ######## - 0x7F, 0xC0, // ######### - 0x30, 0xE0, // ## ### - 0x30, 0x70, // ## ### - 0x30, 0x30, // ## ## - 0x30, 0x30, // ## ## - 0x30, 0x30, // ## ## - 0x30, 0x30, // ## ## - 0x30, 0x70, // ## ### - 0x30, 0xE0, // ## ### - 0x7F, 0xC0, // ######### - 0x7F, 0x80, // ######## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1480 'E' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x3F, 0xF0, // ########## - 0x3F, 0xF0, // ########## - 0x18, 0x30, // ## ## - 0x18, 0x30, // ## ## - 0x19, 0x80, // ## ## - 0x1F, 0x80, // ###### - 0x1F, 0x80, // ###### - 0x19, 0x80, // ## ## - 0x18, 0x30, // ## ## - 0x18, 0x30, // ## ## - 0x3F, 0xF0, // ########## - 0x3F, 0xF0, // ########## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1520 'F' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x3F, 0xF0, // ########## - 0x3F, 0xF0, // ########## - 0x18, 0x30, // ## ## - 0x18, 0x30, // ## ## - 0x19, 0x80, // ## ## - 0x1F, 0x80, // ###### - 0x1F, 0x80, // ###### - 0x19, 0x80, // ## ## - 0x18, 0x00, // ## - 0x18, 0x00, // ## - 0x3F, 0x00, // ###### - 0x3F, 0x00, // ###### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1560 'G' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x07, 0xB0, // #### ## - 0x1F, 0xF0, // ######### - 0x18, 0x70, // ## ### - 0x30, 0x30, // ## ## - 0x30, 0x00, // ## - 0x30, 0x00, // ## - 0x31, 0xF8, // ## ###### - 0x31, 0xF8, // ## ###### - 0x30, 0x30, // ## ## - 0x18, 0x30, // ## ## - 0x1F, 0xF0, // ######### - 0x07, 0xC0, // ##### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1600 'H' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x3C, 0xF0, // #### #### - 0x3C, 0xF0, // #### #### - 0x18, 0x60, // ## ## - 0x18, 0x60, // ## ## - 0x18, 0x60, // ## ## - 0x1F, 0xE0, // ######## - 0x1F, 0xE0, // ######## - 0x18, 0x60, // ## ## - 0x18, 0x60, // ## ## - 0x18, 0x60, // ## ## - 0x3C, 0xF0, // #### #### - 0x3C, 0xF0, // #### #### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1640 'I' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x1F, 0xE0, // ######## - 0x1F, 0xE0, // ######## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x1F, 0xE0, // ######## - 0x1F, 0xE0, // ######## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1680 'J' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x03, 0xF8, // ####### - 0x03, 0xF8, // ####### - 0x00, 0x60, // ## - 0x00, 0x60, // ## - 0x00, 0x60, // ## - 0x00, 0x60, // ## - 0x30, 0x60, // ## ## - 0x30, 0x60, // ## ## - 0x30, 0x60, // ## ## - 0x30, 0xE0, // ## ### - 0x3F, 0xC0, // ######## - 0x0F, 0x80, // ##### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1720 'K' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x3E, 0xF8, // ##### ##### - 0x3E, 0xF8, // ##### ##### - 0x18, 0xE0, // ## ### - 0x19, 0x80, // ## ## - 0x1B, 0x00, // ## ## - 0x1F, 0x00, // ##### - 0x1D, 0x80, // ### ## - 0x18, 0xC0, // ## ## - 0x18, 0xC0, // ## ## - 0x18, 0x60, // ## ## - 0x3E, 0x78, // ##### #### - 0x3E, 0x38, // ##### ### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1760 'L' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x3F, 0x00, // ###### - 0x3F, 0x00, // ###### - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x0C, 0x30, // ## ## - 0x0C, 0x30, // ## ## - 0x0C, 0x30, // ## ## - 0x3F, 0xF0, // ########## - 0x3F, 0xF0, // ########## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1800 'M' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x78, 0x78, // #### #### - 0x78, 0x78, // #### #### - 0x38, 0x70, // ### ### - 0x3C, 0xF0, // #### #### - 0x34, 0xB0, // ## # # ## - 0x37, 0xB0, // ## #### ## - 0x37, 0xB0, // ## #### ## - 0x33, 0x30, // ## ## ## - 0x33, 0x30, // ## ## ## - 0x30, 0x30, // ## ## - 0x7C, 0xF8, // ##### ##### - 0x7C, 0xF8, // ##### ##### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1840 'N' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x39, 0xF0, // ### ##### - 0x3D, 0xF0, // #### ##### - 0x1C, 0x60, // ### ## - 0x1E, 0x60, // #### ## - 0x1E, 0x60, // #### ## - 0x1B, 0x60, // ## ## ## - 0x1B, 0x60, // ## ## ## - 0x19, 0xE0, // ## #### - 0x19, 0xE0, // ## #### - 0x18, 0xE0, // ## ### - 0x3E, 0xE0, // ##### ### - 0x3E, 0x60, // ##### ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1880 'O' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x07, 0x80, // #### - 0x0F, 0xC0, // ###### - 0x1C, 0xE0, // ### ### - 0x38, 0x70, // ### ### - 0x30, 0x30, // ## ## - 0x30, 0x30, // ## ## - 0x30, 0x30, // ## ## - 0x30, 0x30, // ## ## - 0x38, 0x70, // ### ### - 0x1C, 0xE0, // ### ### - 0x0F, 0xC0, // ###### - 0x07, 0x80, // #### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1920 'P' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x3F, 0xC0, // ######## - 0x3F, 0xE0, // ######### - 0x18, 0x70, // ## ### - 0x18, 0x30, // ## ## - 0x18, 0x30, // ## ## - 0x18, 0x70, // ## ### - 0x1F, 0xE0, // ######## - 0x1F, 0xC0, // ####### - 0x18, 0x00, // ## - 0x18, 0x00, // ## - 0x3F, 0x00, // ###### - 0x3F, 0x00, // ###### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @1960 'Q' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x07, 0x80, // #### - 0x0F, 0xC0, // ###### - 0x1C, 0xE0, // ### ### - 0x38, 0x70, // ### ### - 0x30, 0x30, // ## ## - 0x30, 0x30, // ## ## - 0x30, 0x30, // ## ## - 0x30, 0x30, // ## ## - 0x38, 0x70, // ### ### - 0x1C, 0xE0, // ### ### - 0x0F, 0xC0, // ###### - 0x07, 0x80, // #### - 0x07, 0xB0, // #### ## - 0x0F, 0xF0, // ######## - 0x0C, 0xE0, // ## ### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2000 'R' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x3F, 0xC0, // ######## - 0x3F, 0xE0, // ######### - 0x18, 0x70, // ## ### - 0x18, 0x30, // ## ## - 0x18, 0x70, // ## ### - 0x1F, 0xE0, // ######## - 0x1F, 0xC0, // ####### - 0x18, 0xE0, // ## ### - 0x18, 0x60, // ## ## - 0x18, 0x70, // ## ### - 0x3E, 0x38, // ##### ### - 0x3E, 0x18, // ##### ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2040 'S' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x0F, 0xB0, // ##### ## - 0x1F, 0xF0, // ######### - 0x38, 0x70, // ### ### - 0x30, 0x30, // ## ## - 0x38, 0x00, // ### - 0x1F, 0x80, // ###### - 0x07, 0xE0, // ###### - 0x00, 0x70, // ### - 0x30, 0x30, // ## ## - 0x38, 0x70, // ### ### - 0x3F, 0xE0, // ######### - 0x37, 0xC0, // ## ##### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2080 'T' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x3F, 0xF0, // ########## - 0x3F, 0xF0, // ########## - 0x33, 0x30, // ## ## ## - 0x33, 0x30, // ## ## ## - 0x33, 0x30, // ## ## ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x0F, 0xC0, // ###### - 0x0F, 0xC0, // ###### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2120 'U' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x3C, 0xF0, // #### #### - 0x3C, 0xF0, // #### #### - 0x18, 0x60, // ## ## - 0x18, 0x60, // ## ## - 0x18, 0x60, // ## ## - 0x18, 0x60, // ## ## - 0x18, 0x60, // ## ## - 0x18, 0x60, // ## ## - 0x18, 0x60, // ## ## - 0x1C, 0xE0, // ### ### - 0x0F, 0xC0, // ###### - 0x07, 0x80, // #### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2160 'V' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x78, 0xF0, // #### #### - 0x78, 0xF0, // #### #### - 0x30, 0x60, // ## ## - 0x30, 0x60, // ## ## - 0x18, 0xC0, // ## ## - 0x18, 0xC0, // ## ## - 0x0D, 0x80, // ## ## - 0x0D, 0x80, // ## ## - 0x0D, 0x80, // ## ## - 0x07, 0x00, // ### - 0x07, 0x00, // ### - 0x07, 0x00, // ### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2200 'W' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x7C, 0x7C, // ##### ##### - 0x7C, 0x7C, // ##### ##### - 0x30, 0x18, // ## ## - 0x33, 0x98, // ## ### ## - 0x33, 0x98, // ## ### ## - 0x33, 0x98, // ## ### ## - 0x36, 0xD8, // ## ## ## ## - 0x16, 0xD0, // # ## ## # - 0x1C, 0x70, // ### ### - 0x1C, 0x70, // ### ### - 0x1C, 0x70, // ### ### - 0x18, 0x30, // ## ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2240 'X' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x78, 0xF0, // #### #### - 0x78, 0xF0, // #### #### - 0x30, 0x60, // ## ## - 0x18, 0xC0, // ## ## - 0x0D, 0x80, // ## ## - 0x07, 0x00, // ### - 0x07, 0x00, // ### - 0x0D, 0x80, // ## ## - 0x18, 0xC0, // ## ## - 0x30, 0x60, // ## ## - 0x78, 0xF0, // #### #### - 0x78, 0xF0, // #### #### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2280 'Y' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x3C, 0xF0, // #### #### - 0x3C, 0xF0, // #### #### - 0x18, 0x60, // ## ## - 0x0C, 0xC0, // ## ## - 0x07, 0x80, // #### - 0x07, 0x80, // #### - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x0F, 0xC0, // ###### - 0x0F, 0xC0, // ###### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2320 'Z' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x1F, 0xE0, // ######## - 0x1F, 0xE0, // ######## - 0x18, 0x60, // ## ## - 0x18, 0xC0, // ## ## - 0x01, 0x80, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x06, 0x00, // ## - 0x0C, 0x60, // ## ## - 0x18, 0x60, // ## ## - 0x1F, 0xE0, // ######## - 0x1F, 0xE0, // ######## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2360 '[' (14 pixels wide) - 0x00, 0x00, // - 0x03, 0xC0, // #### - 0x03, 0xC0, // #### - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0xC0, // #### - 0x03, 0xC0, // #### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2400 '\' (14 pixels wide) - 0x18, 0x00, // ## - 0x18, 0x00, // ## - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x01, 0x80, // ## - 0x01, 0x80, // ## - 0x00, 0xC0, // ## - 0x00, 0xC0, // ## - 0x00, 0xC0, // ## - 0x00, 0x60, // ## - 0x00, 0x60, // ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2440 ']' (14 pixels wide) - 0x00, 0x00, // - 0x0F, 0x00, // #### - 0x0F, 0x00, // #### - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x0F, 0x00, // #### - 0x0F, 0x00, // #### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2480 '^' (14 pixels wide) - 0x00, 0x00, // - 0x02, 0x00, // # - 0x07, 0x00, // ### - 0x0D, 0x80, // ## ## - 0x18, 0xC0, // ## ## - 0x30, 0x60, // ## ## - 0x20, 0x20, // # # - 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, // - - // @2520 '_' (14 pixels wide) - 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, // - 0xFF, 0xFC, // ############## - 0xFF, 0xFC, // ############## - - // @2560 '`' (14 pixels wide) - 0x00, 0x00, // - 0x04, 0x00, // # - 0x03, 0x00, // ## - 0x00, 0x80, // # - 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, // - - // @2600 'a' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x0F, 0xC0, // ###### - 0x1F, 0xE0, // ######## - 0x00, 0x60, // ## - 0x0F, 0xE0, // ####### - 0x1F, 0xE0, // ######## - 0x38, 0x60, // ### ## - 0x30, 0xE0, // ## ### - 0x3F, 0xF0, // ########## - 0x1F, 0x70, // ##### ### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2640 'b' (14 pixels wide) - 0x00, 0x00, // - 0x70, 0x00, // ### - 0x70, 0x00, // ### - 0x30, 0x00, // ## - 0x30, 0x00, // ## - 0x37, 0x80, // ## #### - 0x3F, 0xE0, // ######### - 0x38, 0x60, // ### ## - 0x30, 0x30, // ## ## - 0x30, 0x30, // ## ## - 0x30, 0x30, // ## ## - 0x38, 0x60, // ### ## - 0x7F, 0xE0, // ########## - 0x77, 0x80, // ### #### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2680 'c' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x07, 0xB0, // #### ## - 0x1F, 0xF0, // ######### - 0x18, 0x30, // ## ## - 0x30, 0x30, // ## ## - 0x30, 0x00, // ## - 0x30, 0x00, // ## - 0x38, 0x30, // ### ## - 0x1F, 0xF0, // ######### - 0x0F, 0xC0, // ###### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2720 'd' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x70, // ### - 0x00, 0x70, // ### - 0x00, 0x30, // ## - 0x00, 0x30, // ## - 0x07, 0xB0, // #### ## - 0x1F, 0xF0, // ######### - 0x18, 0x70, // ## ### - 0x30, 0x30, // ## ## - 0x30, 0x30, // ## ## - 0x30, 0x30, // ## ## - 0x38, 0x70, // ### ### - 0x1F, 0xF8, // ########## - 0x07, 0xB8, // #### ### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2760 'e' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x07, 0x80, // #### - 0x1F, 0xE0, // ######## - 0x18, 0x60, // ## ## - 0x3F, 0xF0, // ########## - 0x3F, 0xF0, // ########## - 0x30, 0x00, // ## - 0x18, 0x30, // ## ## - 0x1F, 0xF0, // ######### - 0x07, 0xC0, // ##### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2800 'f' (14 pixels wide) - 0x00, 0x00, // - 0x03, 0xF0, // ###### - 0x07, 0xF0, // ####### - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x1F, 0xE0, // ######## - 0x1F, 0xE0, // ######## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x1F, 0xE0, // ######## - 0x1F, 0xE0, // ######## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2840 'g' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x07, 0xB8, // #### ### - 0x1F, 0xF8, // ########## - 0x18, 0x70, // ## ### - 0x30, 0x30, // ## ## - 0x30, 0x30, // ## ## - 0x30, 0x30, // ## ## - 0x18, 0x70, // ## ### - 0x1F, 0xF0, // ######### - 0x07, 0xB0, // #### ## - 0x00, 0x30, // ## - 0x00, 0x70, // ### - 0x0F, 0xE0, // ####### - 0x0F, 0xC0, // ###### - 0x00, 0x00, // - 0x00, 0x00, // - - // @2880 'h' (14 pixels wide) - 0x00, 0x00, // - 0x38, 0x00, // ### - 0x38, 0x00, // ### - 0x18, 0x00, // ## - 0x18, 0x00, // ## - 0x1B, 0xC0, // ## #### - 0x1F, 0xE0, // ######## - 0x1C, 0x60, // ### ## - 0x18, 0x60, // ## ## - 0x18, 0x60, // ## ## - 0x18, 0x60, // ## ## - 0x18, 0x60, // ## ## - 0x3C, 0xF0, // #### #### - 0x3C, 0xF0, // #### #### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2920 'i' (14 pixels wide) - 0x00, 0x00, // - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x1F, 0x00, // ##### - 0x1F, 0x00, // ##### - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x1F, 0xE0, // ######## - 0x1F, 0xE0, // ######## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @2960 'j' (14 pixels wide) - 0x00, 0x00, // - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x1F, 0xC0, // ####### - 0x1F, 0xC0, // ####### - 0x00, 0xC0, // ## - 0x00, 0xC0, // ## - 0x00, 0xC0, // ## - 0x00, 0xC0, // ## - 0x00, 0xC0, // ## - 0x00, 0xC0, // ## - 0x00, 0xC0, // ## - 0x00, 0xC0, // ## - 0x01, 0xC0, // ### - 0x3F, 0x80, // ####### - 0x3F, 0x00, // ###### - 0x00, 0x00, // - 0x00, 0x00, // - - // @3000 'k' (14 pixels wide) - 0x00, 0x00, // - 0x38, 0x00, // ### - 0x38, 0x00, // ### - 0x18, 0x00, // ## - 0x18, 0x00, // ## - 0x1B, 0xE0, // ## ##### - 0x1B, 0xE0, // ## ##### - 0x1B, 0x00, // ## ## - 0x1E, 0x00, // #### - 0x1E, 0x00, // #### - 0x1B, 0x00, // ## ## - 0x19, 0x80, // ## ## - 0x39, 0xF0, // ### ##### - 0x39, 0xF0, // ### ##### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @3040 'l' (14 pixels wide) - 0x00, 0x00, // - 0x1F, 0x00, // ##### - 0x1F, 0x00, // ##### - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x1F, 0xE0, // ######## - 0x1F, 0xE0, // ######## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @3080 'm' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x7E, 0xE0, // ###### ### - 0x7F, 0xF0, // ########### - 0x33, 0x30, // ## ## ## - 0x33, 0x30, // ## ## ## - 0x33, 0x30, // ## ## ## - 0x33, 0x30, // ## ## ## - 0x33, 0x30, // ## ## ## - 0x7B, 0xB8, // #### ### ### - 0x7B, 0xB8, // #### ### ### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @3120 'n' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x3B, 0xC0, // ### #### - 0x3F, 0xE0, // ######### - 0x1C, 0x60, // ### ## - 0x18, 0x60, // ## ## - 0x18, 0x60, // ## ## - 0x18, 0x60, // ## ## - 0x18, 0x60, // ## ## - 0x3C, 0xF0, // #### #### - 0x3C, 0xF0, // #### #### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @3160 'o' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x07, 0x80, // #### - 0x1F, 0xE0, // ######## - 0x18, 0x60, // ## ## - 0x30, 0x30, // ## ## - 0x30, 0x30, // ## ## - 0x30, 0x30, // ## ## - 0x18, 0x60, // ## ## - 0x1F, 0xE0, // ######## - 0x07, 0x80, // #### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @3200 'p' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x77, 0x80, // ### #### - 0x7F, 0xE0, // ########## - 0x38, 0x60, // ### ## - 0x30, 0x30, // ## ## - 0x30, 0x30, // ## ## - 0x30, 0x30, // ## ## - 0x38, 0x60, // ### ## - 0x3F, 0xE0, // ######### - 0x37, 0x80, // ## #### - 0x30, 0x00, // ## - 0x30, 0x00, // ## - 0x7C, 0x00, // ##### - 0x7C, 0x00, // ##### - 0x00, 0x00, // - 0x00, 0x00, // - - // @3240 'q' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x07, 0xB8, // #### ### - 0x1F, 0xF8, // ########## - 0x18, 0x70, // ## ### - 0x30, 0x30, // ## ## - 0x30, 0x30, // ## ## - 0x30, 0x30, // ## ## - 0x18, 0x70, // ## ### - 0x1F, 0xF0, // ######### - 0x07, 0xB0, // #### ## - 0x00, 0x30, // ## - 0x00, 0x30, // ## - 0x00, 0xF8, // ##### - 0x00, 0xF8, // ##### - 0x00, 0x00, // - 0x00, 0x00, // - - // @3280 'r' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x3C, 0xE0, // #### ### - 0x3D, 0xF0, // #### ##### - 0x0F, 0x30, // #### ## - 0x0E, 0x00, // ### - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x3F, 0xC0, // ######## - 0x3F, 0xC0, // ######## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @3320 's' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x07, 0xE0, // ###### - 0x1F, 0xE0, // ######## - 0x18, 0x60, // ## ## - 0x1E, 0x00, // #### - 0x0F, 0xC0, // ###### - 0x01, 0xE0, // #### - 0x18, 0x60, // ## ## - 0x1F, 0xE0, // ######## - 0x1F, 0x80, // ###### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @3360 't' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x3F, 0xE0, // ######### - 0x3F, 0xE0, // ######### - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x0C, 0x00, // ## - 0x0C, 0x30, // ## ## - 0x0F, 0xF0, // ######## - 0x07, 0xC0, // ##### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @3400 'u' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x38, 0xE0, // ### ### - 0x38, 0xE0, // ### ### - 0x18, 0x60, // ## ## - 0x18, 0x60, // ## ## - 0x18, 0x60, // ## ## - 0x18, 0x60, // ## ## - 0x18, 0xE0, // ## ### - 0x1F, 0xF0, // ######### - 0x0F, 0x70, // #### ### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @3440 'v' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x78, 0xF0, // #### #### - 0x78, 0xF0, // #### #### - 0x30, 0x60, // ## ## - 0x18, 0xC0, // ## ## - 0x18, 0xC0, // ## ## - 0x0D, 0x80, // ## ## - 0x0D, 0x80, // ## ## - 0x07, 0x00, // ### - 0x07, 0x00, // ### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @3480 'w' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x78, 0xF0, // #### #### - 0x78, 0xF0, // #### #### - 0x32, 0x60, // ## # ## - 0x32, 0x60, // ## # ## - 0x37, 0xE0, // ## ###### - 0x1D, 0xC0, // ### ### - 0x1D, 0xC0, // ### ### - 0x18, 0xC0, // ## ## - 0x18, 0xC0, // ## ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @3520 'x' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x3C, 0xF0, // #### #### - 0x3C, 0xF0, // #### #### - 0x0C, 0xC0, // ## ## - 0x07, 0x80, // #### - 0x03, 0x00, // ## - 0x07, 0x80, // #### - 0x0C, 0xC0, // ## ## - 0x3C, 0xF0, // #### #### - 0x3C, 0xF0, // #### #### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @3560 'y' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x78, 0xF0, // #### #### - 0x78, 0xF0, // #### #### - 0x30, 0x60, // ## ## - 0x18, 0xC0, // ## ## - 0x18, 0xC0, // ## ## - 0x0D, 0x80, // ## ## - 0x0F, 0x80, // ##### - 0x07, 0x00, // ### - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x0C, 0x00, // ## - 0x7F, 0x00, // ####### - 0x7F, 0x00, // ####### - 0x00, 0x00, // - 0x00, 0x00, // - - // @3600 'z' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x1F, 0xE0, // ######## - 0x1F, 0xE0, // ######## - 0x18, 0xC0, // ## ## - 0x01, 0x80, // ## - 0x03, 0x00, // ## - 0x06, 0x00, // ## - 0x0C, 0x60, // ## ## - 0x1F, 0xE0, // ######## - 0x1F, 0xE0, // ######## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @3640 '{' (14 pixels wide) - 0x00, 0x00, // - 0x01, 0xC0, // ### - 0x03, 0xC0, // #### - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x07, 0x00, // ### - 0x0E, 0x00, // ### - 0x07, 0x00, // ### - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0xC0, // #### - 0x01, 0xC0, // ### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @3680 '|' (14 pixels wide) - 0x00, 0x00, // - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x03, 0x00, // ## - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @3720 '}' (14 pixels wide) - 0x00, 0x00, // - 0x1C, 0x00, // ### - 0x1E, 0x00, // #### - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x07, 0x00, // ### - 0x03, 0x80, // ### - 0x07, 0x00, // ### - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x06, 0x00, // ## - 0x1E, 0x00, // #### - 0x1C, 0x00, // ### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - - // @3760 '~' (14 pixels wide) - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x0E, 0x00, // ### - 0x3F, 0x30, // ###### ## - 0x33, 0xF0, // ## ###### - 0x01, 0xE0, // #### - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // - 0x00, 0x00, // -}; - - -sFONT Font20 = { - Font20_Table, - 14, /* Width */ - 20, /* Height */ -}; - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/Raspberry Pi/c/lib/Fonts/font24.c b/Raspberry Pi/c/lib/Fonts/font24.c deleted file mode 100644 index fea3321..0000000 --- a/Raspberry Pi/c/lib/Fonts/font24.c +++ /dev/null @@ -1,2520 +0,0 @@ -/** - ****************************************************************************** - * @file font24.c - * @author MCD Application Team - * @version V1.0.0 - * @date 18-February-2014 - * @brief This file provides text font24 for STM32xx-EVAL's LCD driver. - ****************************************************************************** - * @attention - * - *

© COPYRIGHT(c) 2014 STMicroelectronics

- * - * Redistribution and use in source and binary forms, with or without modification, - * are permitted provided that the following conditions are met: - * 1. Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * 3. Neither the name of STMicroelectronics nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR - * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER - * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - * - ****************************************************************************** - */ - -/* Includes ------------------------------------------------------------------*/ -#include "fonts.h" - -const uint8_t Font24_Table [] = -{ - // @0 ' ' (17 pixels wide) - 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, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @72 '!' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x03, 0x80, 0x00, // ### - 0x03, 0x80, 0x00, // ### - 0x03, 0x80, 0x00, // ### - 0x03, 0x80, 0x00, // ### - 0x03, 0x80, 0x00, // ### - 0x03, 0x80, 0x00, // ### - 0x03, 0x80, 0x00, // ### - 0x03, 0x80, 0x00, // ### - 0x03, 0x80, 0x00, // ### - 0x01, 0x00, 0x00, // # - 0x01, 0x00, 0x00, // # - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x03, 0x80, 0x00, // ### - 0x03, 0x80, 0x00, // ### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @144 '"' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x0E, 0x70, 0x00, // ### ### - 0x0E, 0x70, 0x00, // ### ### - 0x0E, 0x70, 0x00, // ### ### - 0x04, 0x20, 0x00, // # # - 0x04, 0x20, 0x00, // # # - 0x04, 0x20, 0x00, // # # - 0x04, 0x20, 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, // - - // @216 '#' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x06, 0x60, 0x00, // ## ## - 0x06, 0x60, 0x00, // ## ## - 0x06, 0x60, 0x00, // ## ## - 0x06, 0x60, 0x00, // ## ## - 0x06, 0x60, 0x00, // ## ## - 0x3F, 0xF8, 0x00, // ########### - 0x3F, 0xF8, 0x00, // ########### - 0x06, 0x60, 0x00, // ## ## - 0x0C, 0xC0, 0x00, // ## ## - 0x3F, 0xF8, 0x00, // ########### - 0x3F, 0xF8, 0x00, // ########### - 0x0C, 0xC0, 0x00, // ## ## - 0x0C, 0xC0, 0x00, // ## ## - 0x0C, 0xC0, 0x00, // ## ## - 0x0C, 0xC0, 0x00, // ## ## - 0x0C, 0xC0, 0x00, // ## ## - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @288 '$' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x07, 0xB0, 0x00, // #### ## - 0x0F, 0xF0, 0x00, // ######## - 0x18, 0x70, 0x00, // ## ### - 0x18, 0x70, 0x00, // ## ### - 0x1C, 0x00, 0x00, // ### - 0x0F, 0x80, 0x00, // ##### - 0x07, 0xE0, 0x00, // ###### - 0x00, 0xF0, 0x00, // #### - 0x18, 0x30, 0x00, // ## ## - 0x1C, 0x30, 0x00, // ### ## - 0x1C, 0x70, 0x00, // ### ### - 0x1F, 0xE0, 0x00, // ######## - 0x1B, 0xC0, 0x00, // ## #### - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @360 '%' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x07, 0x80, 0x00, // #### - 0x0F, 0xC0, 0x00, // ###### - 0x1C, 0xE0, 0x00, // ### ### - 0x18, 0x60, 0x00, // ## ## - 0x18, 0x60, 0x00, // ## ## - 0x1C, 0xE0, 0x00, // ### ### - 0x0F, 0xF8, 0x00, // ######### - 0x07, 0xE0, 0x00, // ###### - 0x1F, 0xF0, 0x00, // ######### - 0x07, 0x38, 0x00, // ### ### - 0x06, 0x18, 0x00, // ## ## - 0x06, 0x18, 0x00, // ## ## - 0x07, 0x38, 0x00, // ### ### - 0x03, 0xF0, 0x00, // ###### - 0x01, 0xE0, 0x00, // #### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @432 '&' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x03, 0xF0, 0x00, // ###### - 0x07, 0xF0, 0x00, // ####### - 0x0C, 0x60, 0x00, // ## ## - 0x0C, 0x00, 0x00, // ## - 0x0C, 0x00, 0x00, // ## - 0x06, 0x00, 0x00, // ## - 0x07, 0x00, 0x00, // ### - 0x0F, 0x9C, 0x00, // ##### ### - 0x1D, 0xFC, 0x00, // ### ####### - 0x18, 0xF0, 0x00, // ## #### - 0x18, 0x70, 0x00, // ## ### - 0x0F, 0xFC, 0x00, // ########## - 0x07, 0xDC, 0x00, // ##### ### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @504 ''' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x03, 0x80, 0x00, // ### - 0x03, 0x80, 0x00, // ### - 0x03, 0x80, 0x00, // ### - 0x01, 0x00, 0x00, // # - 0x01, 0x00, 0x00, // # - 0x01, 0x00, 0x00, // # - 0x01, 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, // - - // @576 '(' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x18, 0x00, // ## - 0x00, 0x38, 0x00, // ### - 0x00, 0x70, 0x00, // ### - 0x00, 0xF0, 0x00, // #### - 0x00, 0xE0, 0x00, // ### - 0x00, 0xE0, 0x00, // ### - 0x01, 0xC0, 0x00, // ### - 0x01, 0xC0, 0x00, // ### - 0x01, 0xC0, 0x00, // ### - 0x01, 0xC0, 0x00, // ### - 0x01, 0xC0, 0x00, // ### - 0x01, 0xC0, 0x00, // ### - 0x00, 0xE0, 0x00, // ### - 0x00, 0xE0, 0x00, // ### - 0x00, 0x70, 0x00, // ### - 0x00, 0x70, 0x00, // ### - 0x00, 0x38, 0x00, // ### - 0x00, 0x18, 0x00, // ## - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @648 ')' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x18, 0x00, 0x00, // ## - 0x1C, 0x00, 0x00, // ### - 0x0E, 0x00, 0x00, // ### - 0x0E, 0x00, 0x00, // ### - 0x07, 0x00, 0x00, // ### - 0x07, 0x00, 0x00, // ### - 0x03, 0x80, 0x00, // ### - 0x03, 0x80, 0x00, // ### - 0x03, 0x80, 0x00, // ### - 0x03, 0x80, 0x00, // ### - 0x03, 0x80, 0x00, // ### - 0x03, 0x80, 0x00, // ### - 0x07, 0x00, 0x00, // ### - 0x07, 0x00, 0x00, // ### - 0x0F, 0x00, 0x00, // #### - 0x0E, 0x00, 0x00, // ### - 0x1C, 0x00, 0x00, // ### - 0x18, 0x00, 0x00, // ## - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @720 '*' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x1D, 0xB8, 0x00, // ### ## ### - 0x1F, 0xF8, 0x00, // ########## - 0x07, 0xE0, 0x00, // ###### - 0x03, 0xC0, 0x00, // #### - 0x03, 0xC0, 0x00, // #### - 0x06, 0x60, 0x00, // ## ## - 0x06, 0x60, 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, // - - // @792 '+' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x3F, 0xFC, 0x00, // ############ - 0x3F, 0xFC, 0x00, // ############ - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 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, // - - // @864 ',' (17 pixels wide) - 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, 0xE0, 0x00, // ### - 0x00, 0xC0, 0x00, // ## - 0x01, 0xC0, 0x00, // ### - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x03, 0x00, 0x00, // ## - 0x03, 0x00, 0x00, // ## - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @936 '-' (17 pixels wide) - 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, // - 0x1F, 0xF8, 0x00, // ########## - 0x1F, 0xF8, 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, // - - // @1008 '.' (17 pixels wide) - 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, // - 0x03, 0xC0, 0x00, // #### - 0x03, 0xC0, 0x00, // #### - 0x03, 0xC0, 0x00, // #### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @1080 '/' (17 pixels wide) - 0x00, 0x18, 0x00, // ## - 0x00, 0x18, 0x00, // ## - 0x00, 0x38, 0x00, // ### - 0x00, 0x30, 0x00, // ## - 0x00, 0x70, 0x00, // ### - 0x00, 0x60, 0x00, // ## - 0x00, 0x60, 0x00, // ## - 0x00, 0xC0, 0x00, // ## - 0x00, 0xC0, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x03, 0x00, 0x00, // ## - 0x03, 0x00, 0x00, // ## - 0x06, 0x00, 0x00, // ## - 0x06, 0x00, 0x00, // ## - 0x0E, 0x00, 0x00, // ### - 0x0C, 0x00, 0x00, // ## - 0x1C, 0x00, 0x00, // ### - 0x18, 0x00, 0x00, // ## - 0x18, 0x00, 0x00, // ## - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @1152 '0' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x03, 0xC0, 0x00, // #### - 0x07, 0xE0, 0x00, // ###### - 0x0C, 0x30, 0x00, // ## ## - 0x0C, 0x30, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x0C, 0x30, 0x00, // ## ## - 0x0C, 0x30, 0x00, // ## ## - 0x07, 0xE0, 0x00, // ###### - 0x03, 0xC0, 0x00, // #### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @1224 '1' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x80, 0x00, // # - 0x07, 0x80, 0x00, // #### - 0x1F, 0x80, 0x00, // ###### - 0x1D, 0x80, 0x00, // ### ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x1F, 0xF8, 0x00, // ########## - 0x1F, 0xF8, 0x00, // ########## - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @1296 '2' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x07, 0xC0, 0x00, // ##### - 0x1F, 0xF0, 0x00, // ######### - 0x38, 0x30, 0x00, // ### ## - 0x30, 0x18, 0x00, // ## ## - 0x30, 0x18, 0x00, // ## ## - 0x00, 0x18, 0x00, // ## - 0x00, 0x30, 0x00, // ## - 0x00, 0x60, 0x00, // ## - 0x01, 0xC0, 0x00, // ### - 0x03, 0x80, 0x00, // ### - 0x06, 0x00, 0x00, // ## - 0x0C, 0x00, 0x00, // ## - 0x18, 0x00, 0x00, // ## - 0x3F, 0xF8, 0x00, // ########### - 0x3F, 0xF8, 0x00, // ########### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @1368 '3' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x03, 0xC0, 0x00, // #### - 0x0F, 0xE0, 0x00, // ####### - 0x0C, 0x70, 0x00, // ## ### - 0x00, 0x30, 0x00, // ## - 0x00, 0x30, 0x00, // ## - 0x00, 0x60, 0x00, // ## - 0x03, 0xC0, 0x00, // #### - 0x03, 0xE0, 0x00, // ##### - 0x00, 0x70, 0x00, // ### - 0x00, 0x18, 0x00, // ## - 0x00, 0x18, 0x00, // ## - 0x00, 0x18, 0x00, // ## - 0x18, 0x38, 0x00, // ## ### - 0x1F, 0xF0, 0x00, // ######### - 0x0F, 0xC0, 0x00, // ###### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @1440 '4' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0xE0, 0x00, // ### - 0x01, 0xE0, 0x00, // #### - 0x01, 0xE0, 0x00, // #### - 0x03, 0x60, 0x00, // ## ## - 0x06, 0x60, 0x00, // ## ## - 0x06, 0x60, 0x00, // ## ## - 0x0C, 0x60, 0x00, // ## ## - 0x0C, 0x60, 0x00, // ## ## - 0x18, 0x60, 0x00, // ## ## - 0x30, 0x60, 0x00, // ## ## - 0x3F, 0xF8, 0x00, // ########### - 0x3F, 0xF8, 0x00, // ########### - 0x00, 0x60, 0x00, // ## - 0x03, 0xF8, 0x00, // ####### - 0x03, 0xF8, 0x00, // ####### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @1512 '5' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x1F, 0xF0, 0x00, // ######### - 0x1F, 0xF0, 0x00, // ######### - 0x18, 0x00, 0x00, // ## - 0x18, 0x00, 0x00, // ## - 0x18, 0x00, 0x00, // ## - 0x1B, 0xC0, 0x00, // ## #### - 0x1F, 0xF0, 0x00, // ######### - 0x1C, 0x30, 0x00, // ### ## - 0x00, 0x18, 0x00, // ## - 0x00, 0x18, 0x00, // ## - 0x00, 0x18, 0x00, // ## - 0x00, 0x18, 0x00, // ## - 0x30, 0x30, 0x00, // ## ## - 0x3F, 0xF0, 0x00, // ########## - 0x0F, 0xC0, 0x00, // ###### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @1584 '6' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0xF8, 0x00, // ##### - 0x03, 0xF8, 0x00, // ####### - 0x07, 0x00, 0x00, // ### - 0x0E, 0x00, 0x00, // ### - 0x0C, 0x00, 0x00, // ## - 0x18, 0x00, 0x00, // ## - 0x1B, 0xC0, 0x00, // ## #### - 0x1F, 0xF0, 0x00, // ######### - 0x1C, 0x30, 0x00, // ### ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x0C, 0x38, 0x00, // ## ### - 0x0F, 0xF0, 0x00, // ######## - 0x03, 0xE0, 0x00, // ##### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @1656 '7' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x1F, 0xF8, 0x00, // ########## - 0x1F, 0xF8, 0x00, // ########## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x38, 0x00, // ## ### - 0x00, 0x30, 0x00, // ## - 0x00, 0x30, 0x00, // ## - 0x00, 0x70, 0x00, // ### - 0x00, 0x60, 0x00, // ## - 0x00, 0x60, 0x00, // ## - 0x00, 0xE0, 0x00, // ### - 0x00, 0xC0, 0x00, // ## - 0x00, 0xC0, 0x00, // ## - 0x01, 0xC0, 0x00, // ### - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @1728 '8' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x07, 0xE0, 0x00, // ###### - 0x0F, 0xF0, 0x00, // ######## - 0x1C, 0x38, 0x00, // ### ### - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x0C, 0x30, 0x00, // ## ## - 0x07, 0xE0, 0x00, // ###### - 0x07, 0xE0, 0x00, // ###### - 0x0C, 0x30, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x1C, 0x38, 0x00, // ### ### - 0x0F, 0xF0, 0x00, // ######## - 0x07, 0xE0, 0x00, // ###### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @1800 '9' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x07, 0xC0, 0x00, // ##### - 0x0F, 0xF0, 0x00, // ######## - 0x1C, 0x30, 0x00, // ### ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x0C, 0x38, 0x00, // ## ### - 0x0F, 0xF8, 0x00, // ######### - 0x03, 0xD8, 0x00, // #### ## - 0x00, 0x18, 0x00, // ## - 0x00, 0x30, 0x00, // ## - 0x00, 0x70, 0x00, // ### - 0x00, 0xE0, 0x00, // ### - 0x1F, 0xC0, 0x00, // ####### - 0x1F, 0x00, 0x00, // ##### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @1872 ':' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x03, 0xC0, 0x00, // #### - 0x03, 0xC0, 0x00, // #### - 0x03, 0xC0, 0x00, // #### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x03, 0xC0, 0x00, // #### - 0x03, 0xC0, 0x00, // #### - 0x03, 0xC0, 0x00, // #### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @1944 ';' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0xF0, 0x00, // #### - 0x00, 0xF0, 0x00, // #### - 0x00, 0xF0, 0x00, // #### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0xE0, 0x00, // ### - 0x01, 0xC0, 0x00, // ### - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x03, 0x00, 0x00, // ## - 0x02, 0x00, 0x00, // # - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @2016 '<' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x1C, 0x00, // ### - 0x00, 0x3C, 0x00, // #### - 0x00, 0xF0, 0x00, // #### - 0x03, 0xC0, 0x00, // #### - 0x0F, 0x00, 0x00, // #### - 0x3C, 0x00, 0x00, // #### - 0xF0, 0x00, 0x00, // #### - 0x3C, 0x00, 0x00, // #### - 0x0F, 0x00, 0x00, // #### - 0x03, 0xC0, 0x00, // #### - 0x00, 0xF0, 0x00, // #### - 0x00, 0x3C, 0x00, // #### - 0x00, 0x1C, 0x00, // ### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @2088 '=' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x7F, 0xFC, 0x00, // ############# - 0x7F, 0xFC, 0x00, // ############# - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x7F, 0xFC, 0x00, // ############# - 0x7F, 0xFC, 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, // - - // @2160 '>' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x70, 0x00, 0x00, // ### - 0x78, 0x00, 0x00, // #### - 0x1E, 0x00, 0x00, // #### - 0x07, 0x80, 0x00, // #### - 0x01, 0xE0, 0x00, // #### - 0x00, 0x78, 0x00, // #### - 0x00, 0x1E, 0x00, // #### - 0x00, 0x78, 0x00, // #### - 0x01, 0xE0, 0x00, // #### - 0x07, 0x80, 0x00, // #### - 0x1E, 0x00, 0x00, // #### - 0x78, 0x00, 0x00, // #### - 0x70, 0x00, 0x00, // ### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @2232 '?' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x07, 0xC0, 0x00, // ##### - 0x0F, 0xE0, 0x00, // ####### - 0x18, 0x70, 0x00, // ## ### - 0x18, 0x30, 0x00, // ## ## - 0x18, 0x30, 0x00, // ## ## - 0x00, 0x70, 0x00, // ### - 0x00, 0xE0, 0x00, // ### - 0x03, 0xC0, 0x00, // #### - 0x03, 0x80, 0x00, // ### - 0x03, 0x00, 0x00, // ## - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x07, 0x00, 0x00, // ### - 0x07, 0x00, 0x00, // ### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @2304 '@' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x03, 0xE0, 0x00, // ##### - 0x07, 0xF0, 0x00, // ####### - 0x0E, 0x38, 0x00, // ### ### - 0x0C, 0x18, 0x00, // ## ## - 0x18, 0x78, 0x00, // ## #### - 0x18, 0xF8, 0x00, // ## ##### - 0x19, 0xD8, 0x00, // ## ### ## - 0x19, 0x98, 0x00, // ## ## ## - 0x19, 0x98, 0x00, // ## ## ## - 0x19, 0x98, 0x00, // ## ## ## - 0x18, 0xF8, 0x00, // ## ##### - 0x18, 0x78, 0x00, // ## #### - 0x18, 0x00, 0x00, // ## - 0x0C, 0x00, 0x00, // ## - 0x0E, 0x18, 0x00, // ### ## - 0x07, 0xF8, 0x00, // ######## - 0x03, 0xE0, 0x00, // ##### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @2376 'A' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x1F, 0x80, 0x00, // ###### - 0x1F, 0xC0, 0x00, // ####### - 0x01, 0xC0, 0x00, // ### - 0x03, 0x60, 0x00, // ## ## - 0x03, 0x60, 0x00, // ## ## - 0x06, 0x30, 0x00, // ## ## - 0x06, 0x30, 0x00, // ## ## - 0x0C, 0x30, 0x00, // ## ## - 0x0F, 0xF8, 0x00, // ######### - 0x1F, 0xF8, 0x00, // ########## - 0x18, 0x0C, 0x00, // ## ## - 0x30, 0x0C, 0x00, // ## ## - 0xFC, 0x7F, 0x00, // ###### ####### - 0xFC, 0x7F, 0x00, // ###### ####### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @2448 'B' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x7F, 0xE0, 0x00, // ########## - 0x7F, 0xF0, 0x00, // ########### - 0x18, 0x38, 0x00, // ## ### - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x38, 0x00, // ## ### - 0x1F, 0xF0, 0x00, // ######### - 0x1F, 0xF8, 0x00, // ########## - 0x18, 0x1C, 0x00, // ## ### - 0x18, 0x0C, 0x00, // ## ## - 0x18, 0x0C, 0x00, // ## ## - 0x18, 0x0C, 0x00, // ## ## - 0x7F, 0xF8, 0x00, // ############ - 0x7F, 0xF0, 0x00, // ########### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @2520 'C' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x03, 0xEC, 0x00, // ##### ## - 0x0F, 0xFC, 0x00, // ########## - 0x1C, 0x1C, 0x00, // ### ### - 0x18, 0x0C, 0x00, // ## ## - 0x30, 0x0C, 0x00, // ## ## - 0x30, 0x00, 0x00, // ## - 0x30, 0x00, 0x00, // ## - 0x30, 0x00, 0x00, // ## - 0x30, 0x00, 0x00, // ## - 0x30, 0x00, 0x00, // ## - 0x18, 0x0C, 0x00, // ## ## - 0x1C, 0x1C, 0x00, // ### ### - 0x0F, 0xF8, 0x00, // ######### - 0x03, 0xF0, 0x00, // ###### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @2592 'D' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x7F, 0xC0, 0x00, // ######### - 0x7F, 0xF0, 0x00, // ########### - 0x18, 0x38, 0x00, // ## ### - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x0C, 0x00, // ## ## - 0x18, 0x0C, 0x00, // ## ## - 0x18, 0x0C, 0x00, // ## ## - 0x18, 0x0C, 0x00, // ## ## - 0x18, 0x0C, 0x00, // ## ## - 0x18, 0x0C, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x38, 0x00, // ## ### - 0x7F, 0xF0, 0x00, // ########### - 0x7F, 0xE0, 0x00, // ########## - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @2664 'E' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x7F, 0xF8, 0x00, // ############ - 0x7F, 0xF8, 0x00, // ############ - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x19, 0x98, 0x00, // ## ## ## - 0x19, 0x80, 0x00, // ## ## - 0x1F, 0x80, 0x00, // ###### - 0x1F, 0x80, 0x00, // ###### - 0x19, 0x80, 0x00, // ## ## - 0x19, 0x98, 0x00, // ## ## ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x7F, 0xF8, 0x00, // ############ - 0x7F, 0xF8, 0x00, // ############ - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @2736 'F' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x3F, 0xFC, 0x00, // ############ - 0x3F, 0xFC, 0x00, // ############ - 0x0C, 0x0C, 0x00, // ## ## - 0x0C, 0x0C, 0x00, // ## ## - 0x0C, 0xCC, 0x00, // ## ## ## - 0x0C, 0xC0, 0x00, // ## ## - 0x0F, 0xC0, 0x00, // ###### - 0x0F, 0xC0, 0x00, // ###### - 0x0C, 0xC0, 0x00, // ## ## - 0x0C, 0xC0, 0x00, // ## ## - 0x0C, 0x00, 0x00, // ## - 0x0C, 0x00, 0x00, // ## - 0x3F, 0xC0, 0x00, // ######## - 0x3F, 0xC0, 0x00, // ######## - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @2808 'G' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x03, 0xEC, 0x00, // ##### ## - 0x0F, 0xFC, 0x00, // ########## - 0x1C, 0x1C, 0x00, // ### ### - 0x18, 0x0C, 0x00, // ## ## - 0x30, 0x0C, 0x00, // ## ## - 0x30, 0x00, 0x00, // ## - 0x30, 0x00, 0x00, // ## - 0x30, 0xFE, 0x00, // ## ####### - 0x30, 0xFE, 0x00, // ## ####### - 0x30, 0x0C, 0x00, // ## ## - 0x38, 0x0C, 0x00, // ### ## - 0x1C, 0x1C, 0x00, // ### ### - 0x0F, 0xFC, 0x00, // ########## - 0x03, 0xF0, 0x00, // ###### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @2880 'H' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x7E, 0x7E, 0x00, // ###### ###### - 0x7E, 0x7E, 0x00, // ###### ###### - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x1F, 0xF8, 0x00, // ########## - 0x1F, 0xF8, 0x00, // ########## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x7E, 0x7E, 0x00, // ###### ###### - 0x7E, 0x7E, 0x00, // ###### ###### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @2952 'I' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x1F, 0xF8, 0x00, // ########## - 0x1F, 0xF8, 0x00, // ########## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x1F, 0xF8, 0x00, // ########## - 0x1F, 0xF8, 0x00, // ########## - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @3024 'J' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x07, 0xFE, 0x00, // ########## - 0x07, 0xFE, 0x00, // ########## - 0x00, 0x30, 0x00, // ## - 0x00, 0x30, 0x00, // ## - 0x00, 0x30, 0x00, // ## - 0x00, 0x30, 0x00, // ## - 0x00, 0x30, 0x00, // ## - 0x30, 0x30, 0x00, // ## ## - 0x30, 0x30, 0x00, // ## ## - 0x30, 0x30, 0x00, // ## ## - 0x30, 0x30, 0x00, // ## ## - 0x30, 0x60, 0x00, // ## ## - 0x3F, 0xE0, 0x00, // ######### - 0x0F, 0x80, 0x00, // ##### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @3096 'K' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x7F, 0x3E, 0x00, // ####### ##### - 0x7F, 0x3E, 0x00, // ####### ##### - 0x18, 0x30, 0x00, // ## ## - 0x18, 0x60, 0x00, // ## ## - 0x18, 0xC0, 0x00, // ## ## - 0x19, 0x80, 0x00, // ## ## - 0x1B, 0x80, 0x00, // ## ### - 0x1F, 0xC0, 0x00, // ####### - 0x1C, 0xE0, 0x00, // ### ### - 0x18, 0x70, 0x00, // ## ### - 0x18, 0x30, 0x00, // ## ## - 0x18, 0x38, 0x00, // ## ### - 0x7F, 0x1F, 0x00, // ####### ##### - 0x7F, 0x1F, 0x00, // ####### ##### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @3168 'L' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x7F, 0x80, 0x00, // ######## - 0x7F, 0x80, 0x00, // ######## - 0x0C, 0x00, 0x00, // ## - 0x0C, 0x00, 0x00, // ## - 0x0C, 0x00, 0x00, // ## - 0x0C, 0x00, 0x00, // ## - 0x0C, 0x00, 0x00, // ## - 0x0C, 0x00, 0x00, // ## - 0x0C, 0x0C, 0x00, // ## ## - 0x0C, 0x0C, 0x00, // ## ## - 0x0C, 0x0C, 0x00, // ## ## - 0x0C, 0x0C, 0x00, // ## ## - 0x7F, 0xFC, 0x00, // ############# - 0x7F, 0xFC, 0x00, // ############# - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @3240 'M' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0xF0, 0x0F, 0x00, // #### #### - 0xF8, 0x1F, 0x00, // ##### ##### - 0x38, 0x1C, 0x00, // ### ### - 0x3C, 0x3C, 0x00, // #### #### - 0x3C, 0x3C, 0x00, // #### #### - 0x36, 0x6C, 0x00, // ## ## ## ## - 0x36, 0x6C, 0x00, // ## ## ## ## - 0x33, 0xCC, 0x00, // ## #### ## - 0x33, 0xCC, 0x00, // ## #### ## - 0x31, 0x8C, 0x00, // ## ## ## - 0x30, 0x0C, 0x00, // ## ## - 0x30, 0x0C, 0x00, // ## ## - 0xFE, 0x7F, 0x00, // ####### ####### - 0xFE, 0x7F, 0x00, // ####### ####### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @3312 'N' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x78, 0xFE, 0x00, // #### ####### - 0x78, 0xFE, 0x00, // #### ####### - 0x1C, 0x18, 0x00, // ### ## - 0x1E, 0x18, 0x00, // #### ## - 0x1F, 0x18, 0x00, // ##### ## - 0x1B, 0x18, 0x00, // ## ## ## - 0x1B, 0x98, 0x00, // ## ### ## - 0x19, 0xD8, 0x00, // ## ### ## - 0x18, 0xD8, 0x00, // ## ## ## - 0x18, 0xF8, 0x00, // ## ##### - 0x18, 0x78, 0x00, // ## #### - 0x18, 0x38, 0x00, // ## ### - 0x7F, 0x18, 0x00, // ####### ## - 0x7F, 0x18, 0x00, // ####### ## - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @3384 'O' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x03, 0xC0, 0x00, // #### - 0x0F, 0xF0, 0x00, // ######## - 0x1C, 0x38, 0x00, // ### ### - 0x18, 0x18, 0x00, // ## ## - 0x38, 0x1C, 0x00, // ### ### - 0x30, 0x0C, 0x00, // ## ## - 0x30, 0x0C, 0x00, // ## ## - 0x30, 0x0C, 0x00, // ## ## - 0x30, 0x0C, 0x00, // ## ## - 0x38, 0x1C, 0x00, // ### ### - 0x18, 0x18, 0x00, // ## ## - 0x1C, 0x38, 0x00, // ### ### - 0x0F, 0xF0, 0x00, // ######## - 0x03, 0xC0, 0x00, // #### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @3456 'P' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x3F, 0xF0, 0x00, // ########## - 0x3F, 0xF8, 0x00, // ########### - 0x0C, 0x1C, 0x00, // ## ### - 0x0C, 0x0C, 0x00, // ## ## - 0x0C, 0x0C, 0x00, // ## ## - 0x0C, 0x0C, 0x00, // ## ## - 0x0C, 0x18, 0x00, // ## ## - 0x0F, 0xF8, 0x00, // ######### - 0x0F, 0xE0, 0x00, // ####### - 0x0C, 0x00, 0x00, // ## - 0x0C, 0x00, 0x00, // ## - 0x0C, 0x00, 0x00, // ## - 0x3F, 0xC0, 0x00, // ######## - 0x3F, 0xC0, 0x00, // ######## - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @3528 'Q' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x03, 0xC0, 0x00, // #### - 0x0F, 0xF0, 0x00, // ######## - 0x1C, 0x38, 0x00, // ### ### - 0x18, 0x18, 0x00, // ## ## - 0x38, 0x1C, 0x00, // ### ### - 0x30, 0x0C, 0x00, // ## ## - 0x30, 0x0C, 0x00, // ## ## - 0x30, 0x0C, 0x00, // ## ## - 0x30, 0x0C, 0x00, // ## ## - 0x38, 0x1C, 0x00, // ### ### - 0x18, 0x18, 0x00, // ## ## - 0x1C, 0x38, 0x00, // ### ### - 0x0F, 0xF0, 0x00, // ######## - 0x07, 0xC0, 0x00, // ##### - 0x07, 0xCC, 0x00, // ##### ## - 0x0F, 0xFC, 0x00, // ########## - 0x0C, 0x38, 0x00, // ## ### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @3600 'R' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x7F, 0xE0, 0x00, // ########## - 0x7F, 0xF0, 0x00, // ########### - 0x18, 0x38, 0x00, // ## ### - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x38, 0x00, // ## ### - 0x1F, 0xF0, 0x00, // ######### - 0x1F, 0xC0, 0x00, // ####### - 0x18, 0xE0, 0x00, // ## ### - 0x18, 0x70, 0x00, // ## ### - 0x18, 0x30, 0x00, // ## ## - 0x18, 0x38, 0x00, // ## ### - 0x7F, 0x1E, 0x00, // ####### #### - 0x7F, 0x0E, 0x00, // ####### ### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @3672 'S' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x07, 0xD8, 0x00, // ##### ## - 0x0F, 0xF8, 0x00, // ######### - 0x1C, 0x38, 0x00, // ### ### - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x1E, 0x00, 0x00, // #### - 0x0F, 0xC0, 0x00, // ###### - 0x03, 0xF0, 0x00, // ###### - 0x00, 0x78, 0x00, // #### - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x1C, 0x38, 0x00, // ### ### - 0x1F, 0xF0, 0x00, // ######### - 0x1B, 0xE0, 0x00, // ## ##### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @3744 'T' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x3F, 0xFC, 0x00, // ############ - 0x3F, 0xFC, 0x00, // ############ - 0x31, 0x8C, 0x00, // ## ## ## - 0x31, 0x8C, 0x00, // ## ## ## - 0x31, 0x8C, 0x00, // ## ## ## - 0x31, 0x8C, 0x00, // ## ## ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x0F, 0xF0, 0x00, // ######## - 0x0F, 0xF0, 0x00, // ######## - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @3816 'U' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x7E, 0x7E, 0x00, // ###### ###### - 0x7E, 0x7E, 0x00, // ###### ###### - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x0C, 0x30, 0x00, // ## ## - 0x0F, 0xF0, 0x00, // ######## - 0x03, 0xC0, 0x00, // #### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @3888 'V' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x7F, 0x7F, 0x00, // ####### ####### - 0x7F, 0x7F, 0x00, // ####### ####### - 0x18, 0x0C, 0x00, // ## ## - 0x0C, 0x18, 0x00, // ## ## - 0x0C, 0x18, 0x00, // ## ## - 0x0C, 0x18, 0x00, // ## ## - 0x06, 0x30, 0x00, // ## ## - 0x06, 0x30, 0x00, // ## ## - 0x03, 0x60, 0x00, // ## ## - 0x03, 0x60, 0x00, // ## ## - 0x03, 0x60, 0x00, // ## ## - 0x01, 0xC0, 0x00, // ### - 0x01, 0xC0, 0x00, // ### - 0x00, 0x80, 0x00, // # - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @3960 'W' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0xFE, 0x3F, 0x80, // ####### ####### - 0xFE, 0x3F, 0x80, // ####### ####### - 0x30, 0x06, 0x00, // ## ## - 0x30, 0x06, 0x00, // ## ## - 0x30, 0x86, 0x00, // ## # ## - 0x19, 0xCC, 0x00, // ## ### ## - 0x19, 0xCC, 0x00, // ## ### ## - 0x1B, 0x6C, 0x00, // ## ## ## ## - 0x1B, 0x6C, 0x00, // ## ## ## ## - 0x1E, 0x7C, 0x00, // #### ##### - 0x0E, 0x38, 0x00, // ### ### - 0x0E, 0x38, 0x00, // ### ### - 0x0C, 0x18, 0x00, // ## ## - 0x0C, 0x18, 0x00, // ## ## - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @4032 'X' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x7E, 0x7E, 0x00, // ###### ###### - 0x7E, 0x7E, 0x00, // ###### ###### - 0x18, 0x18, 0x00, // ## ## - 0x0C, 0x30, 0x00, // ## ## - 0x06, 0x60, 0x00, // ## ## - 0x03, 0xC0, 0x00, // #### - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x03, 0xC0, 0x00, // #### - 0x06, 0x60, 0x00, // ## ## - 0x0C, 0x30, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x7E, 0x7E, 0x00, // ###### ###### - 0x7E, 0x7E, 0x00, // ###### ###### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @4104 'Y' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x7C, 0x7E, 0x00, // ##### ###### - 0x7C, 0x7E, 0x00, // ##### ###### - 0x18, 0x18, 0x00, // ## ## - 0x0C, 0x30, 0x00, // ## ## - 0x06, 0x60, 0x00, // ## ## - 0x06, 0x60, 0x00, // ## ## - 0x03, 0xC0, 0x00, // #### - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x0F, 0xF0, 0x00, // ######## - 0x0F, 0xF0, 0x00, // ######## - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @4176 'Z' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x1F, 0xF8, 0x00, // ########## - 0x1F, 0xF8, 0x00, // ########## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x30, 0x00, // ## ## - 0x18, 0x60, 0x00, // ## ## - 0x18, 0xC0, 0x00, // ## ## - 0x01, 0x80, 0x00, // ## - 0x03, 0x00, 0x00, // ## - 0x06, 0x18, 0x00, // ## ## - 0x0C, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x30, 0x18, 0x00, // ## ## - 0x3F, 0xF8, 0x00, // ########### - 0x3F, 0xF8, 0x00, // ########### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @4248 '[' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x01, 0xF0, 0x00, // ##### - 0x01, 0xF0, 0x00, // ##### - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0xF0, 0x00, // ##### - 0x01, 0xF0, 0x00, // ##### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @4320 '\' (17 pixels wide) - 0x18, 0x00, 0x00, // ## - 0x18, 0x00, 0x00, // ## - 0x1C, 0x00, 0x00, // ### - 0x0C, 0x00, 0x00, // ## - 0x0E, 0x00, 0x00, // ### - 0x06, 0x00, 0x00, // ## - 0x06, 0x00, 0x00, // ## - 0x03, 0x00, 0x00, // ## - 0x03, 0x00, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x00, 0xC0, 0x00, // ## - 0x00, 0xC0, 0x00, // ## - 0x00, 0x60, 0x00, // ## - 0x00, 0x60, 0x00, // ## - 0x00, 0x70, 0x00, // ### - 0x00, 0x30, 0x00, // ## - 0x00, 0x38, 0x00, // ### - 0x00, 0x18, 0x00, // ## - 0x00, 0x18, 0x00, // ## - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @4392 ']' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x0F, 0x80, 0x00, // ##### - 0x0F, 0x80, 0x00, // ##### - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x0F, 0x80, 0x00, // ##### - 0x0F, 0x80, 0x00, // ##### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @4464 '^' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x80, 0x00, // # - 0x01, 0xC0, 0x00, // ### - 0x03, 0xE0, 0x00, // ##### - 0x07, 0x70, 0x00, // ### ### - 0x06, 0x30, 0x00, // ## ## - 0x0C, 0x18, 0x00, // ## ## - 0x18, 0x0C, 0x00, // ## ## - 0x10, 0x04, 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, // - - // @4536 '_' (17 pixels wide) - 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, 0x00, // - 0xFF, 0xFF, 0x00, // ################ - 0xFF, 0xFF, 0x00, // ################ - - // @4608 '`' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x03, 0x00, 0x00, // ## - 0x03, 0x80, 0x00, // ### - 0x00, 0xE0, 0x00, // ### - 0x00, 0x60, 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, // - - // @4680 'a' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x0F, 0xC0, 0x00, // ###### - 0x1F, 0xE0, 0x00, // ######## - 0x00, 0x30, 0x00, // ## - 0x00, 0x30, 0x00, // ## - 0x07, 0xF0, 0x00, // ####### - 0x1F, 0xF0, 0x00, // ######### - 0x38, 0x30, 0x00, // ### ## - 0x30, 0x30, 0x00, // ## ## - 0x30, 0x70, 0x00, // ## ### - 0x1F, 0xFC, 0x00, // ########### - 0x0F, 0xBC, 0x00, // ##### #### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @4752 'b' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x78, 0x00, 0x00, // #### - 0x78, 0x00, 0x00, // #### - 0x18, 0x00, 0x00, // ## - 0x18, 0x00, 0x00, // ## - 0x1B, 0xE0, 0x00, // ## ##### - 0x1F, 0xF8, 0x00, // ########## - 0x1C, 0x18, 0x00, // ### ## - 0x18, 0x0C, 0x00, // ## ## - 0x18, 0x0C, 0x00, // ## ## - 0x18, 0x0C, 0x00, // ## ## - 0x18, 0x0C, 0x00, // ## ## - 0x18, 0x0C, 0x00, // ## ## - 0x1C, 0x18, 0x00, // ### ## - 0x7F, 0xF8, 0x00, // ############ - 0x7B, 0xE0, 0x00, // #### ##### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @4824 'c' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x03, 0xEC, 0x00, // ##### ## - 0x0F, 0xFC, 0x00, // ########## - 0x1C, 0x1C, 0x00, // ### ### - 0x38, 0x0C, 0x00, // ### ## - 0x30, 0x0C, 0x00, // ## ## - 0x30, 0x00, 0x00, // ## - 0x30, 0x00, 0x00, // ## - 0x38, 0x0C, 0x00, // ### ## - 0x1C, 0x1C, 0x00, // ### ### - 0x0F, 0xF8, 0x00, // ######### - 0x03, 0xF0, 0x00, // ###### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @4896 'd' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x78, 0x00, // #### - 0x00, 0x78, 0x00, // #### - 0x00, 0x18, 0x00, // ## - 0x00, 0x18, 0x00, // ## - 0x07, 0xD8, 0x00, // ##### ## - 0x1F, 0xF8, 0x00, // ########## - 0x18, 0x38, 0x00, // ## ### - 0x30, 0x18, 0x00, // ## ## - 0x30, 0x18, 0x00, // ## ## - 0x30, 0x18, 0x00, // ## ## - 0x30, 0x18, 0x00, // ## ## - 0x30, 0x18, 0x00, // ## ## - 0x18, 0x38, 0x00, // ## ### - 0x1F, 0xFE, 0x00, // ############ - 0x07, 0xDE, 0x00, // ##### #### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @4968 'e' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x07, 0xE0, 0x00, // ###### - 0x1F, 0xF8, 0x00, // ########## - 0x18, 0x18, 0x00, // ## ## - 0x30, 0x0C, 0x00, // ## ## - 0x3F, 0xFC, 0x00, // ############ - 0x3F, 0xFC, 0x00, // ############ - 0x30, 0x00, 0x00, // ## - 0x30, 0x00, 0x00, // ## - 0x18, 0x0C, 0x00, // ## ## - 0x1F, 0xFC, 0x00, // ########### - 0x07, 0xF0, 0x00, // ####### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @5040 'f' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x01, 0xFC, 0x00, // ####### - 0x03, 0xFC, 0x00, // ######## - 0x06, 0x00, 0x00, // ## - 0x06, 0x00, 0x00, // ## - 0x3F, 0xF8, 0x00, // ########### - 0x3F, 0xF8, 0x00, // ########### - 0x06, 0x00, 0x00, // ## - 0x06, 0x00, 0x00, // ## - 0x06, 0x00, 0x00, // ## - 0x06, 0x00, 0x00, // ## - 0x06, 0x00, 0x00, // ## - 0x06, 0x00, 0x00, // ## - 0x06, 0x00, 0x00, // ## - 0x3F, 0xF0, 0x00, // ########## - 0x3F, 0xF0, 0x00, // ########## - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @5112 'g' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x07, 0xDE, 0x00, // ##### #### - 0x1F, 0xFE, 0x00, // ############ - 0x18, 0x38, 0x00, // ## ### - 0x30, 0x18, 0x00, // ## ## - 0x30, 0x18, 0x00, // ## ## - 0x30, 0x18, 0x00, // ## ## - 0x30, 0x18, 0x00, // ## ## - 0x30, 0x18, 0x00, // ## ## - 0x18, 0x38, 0x00, // ## ### - 0x1F, 0xF8, 0x00, // ########## - 0x07, 0xD8, 0x00, // ##### ## - 0x00, 0x18, 0x00, // ## - 0x00, 0x18, 0x00, // ## - 0x00, 0x38, 0x00, // ### - 0x0F, 0xF0, 0x00, // ######## - 0x0F, 0xC0, 0x00, // ###### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @5184 'h' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x78, 0x00, 0x00, // #### - 0x78, 0x00, 0x00, // #### - 0x18, 0x00, 0x00, // ## - 0x18, 0x00, 0x00, // ## - 0x1B, 0xE0, 0x00, // ## ##### - 0x1F, 0xF0, 0x00, // ######### - 0x1C, 0x38, 0x00, // ### ### - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x7E, 0x7E, 0x00, // ###### ###### - 0x7E, 0x7E, 0x00, // ###### ###### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @5256 'i' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x1F, 0x80, 0x00, // ###### - 0x1F, 0x80, 0x00, // ###### - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x3F, 0xFC, 0x00, // ############ - 0x3F, 0xFC, 0x00, // ############ - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @5328 'j' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0xC0, 0x00, // ## - 0x00, 0xC0, 0x00, // ## - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x1F, 0xF0, 0x00, // ######### - 0x1F, 0xF0, 0x00, // ######### - 0x00, 0x30, 0x00, // ## - 0x00, 0x30, 0x00, // ## - 0x00, 0x30, 0x00, // ## - 0x00, 0x30, 0x00, // ## - 0x00, 0x30, 0x00, // ## - 0x00, 0x30, 0x00, // ## - 0x00, 0x30, 0x00, // ## - 0x00, 0x30, 0x00, // ## - 0x00, 0x30, 0x00, // ## - 0x00, 0x30, 0x00, // ## - 0x00, 0x30, 0x00, // ## - 0x00, 0x70, 0x00, // ### - 0x1F, 0xE0, 0x00, // ######## - 0x1F, 0x80, 0x00, // ###### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @5400 'k' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x3C, 0x00, 0x00, // #### - 0x3C, 0x00, 0x00, // #### - 0x0C, 0x00, 0x00, // ## - 0x0C, 0x00, 0x00, // ## - 0x0C, 0xF8, 0x00, // ## ##### - 0x0C, 0xF8, 0x00, // ## ##### - 0x0C, 0xC0, 0x00, // ## ## - 0x0D, 0x80, 0x00, // ## ## - 0x0F, 0x80, 0x00, // ##### - 0x0F, 0x00, 0x00, // #### - 0x0F, 0x80, 0x00, // ##### - 0x0D, 0xC0, 0x00, // ## ### - 0x0C, 0xE0, 0x00, // ## ### - 0x3C, 0x7C, 0x00, // #### ##### - 0x3C, 0x7C, 0x00, // #### ##### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @5472 'l' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x1F, 0x80, 0x00, // ###### - 0x1F, 0x80, 0x00, // ###### - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x3F, 0xFC, 0x00, // ############ - 0x3F, 0xFC, 0x00, // ############ - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @5544 'm' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0xF7, 0x78, 0x00, // #### ### #### - 0xFF, 0xFC, 0x00, // ############## - 0x39, 0xCC, 0x00, // ### ### ## - 0x31, 0x8C, 0x00, // ## ## ## - 0x31, 0x8C, 0x00, // ## ## ## - 0x31, 0x8C, 0x00, // ## ## ## - 0x31, 0x8C, 0x00, // ## ## ## - 0x31, 0x8C, 0x00, // ## ## ## - 0x31, 0x8C, 0x00, // ## ## ## - 0xFD, 0xEF, 0x00, // ###### #### #### - 0xFD, 0xEF, 0x00, // ###### #### #### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @5616 'n' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x7B, 0xE0, 0x00, // #### ##### - 0x7F, 0xF0, 0x00, // ########### - 0x1C, 0x38, 0x00, // ### ### - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x7E, 0x7E, 0x00, // ###### ###### - 0x7E, 0x7E, 0x00, // ###### ###### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @5688 'o' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x03, 0xC0, 0x00, // #### - 0x0F, 0xF0, 0x00, // ######## - 0x1C, 0x38, 0x00, // ### ### - 0x38, 0x1C, 0x00, // ### ### - 0x30, 0x0C, 0x00, // ## ## - 0x30, 0x0C, 0x00, // ## ## - 0x30, 0x0C, 0x00, // ## ## - 0x38, 0x1C, 0x00, // ### ### - 0x1C, 0x38, 0x00, // ### ### - 0x0F, 0xF0, 0x00, // ######## - 0x03, 0xC0, 0x00, // #### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @5760 'p' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x7B, 0xE0, 0x00, // #### ##### - 0x7F, 0xF8, 0x00, // ############ - 0x1C, 0x18, 0x00, // ### ## - 0x18, 0x0C, 0x00, // ## ## - 0x18, 0x0C, 0x00, // ## ## - 0x18, 0x0C, 0x00, // ## ## - 0x18, 0x0C, 0x00, // ## ## - 0x18, 0x0C, 0x00, // ## ## - 0x1C, 0x18, 0x00, // ### ## - 0x1F, 0xF8, 0x00, // ########## - 0x1B, 0xE0, 0x00, // ## ##### - 0x18, 0x00, 0x00, // ## - 0x18, 0x00, 0x00, // ## - 0x18, 0x00, 0x00, // ## - 0x7F, 0x00, 0x00, // ####### - 0x7F, 0x00, 0x00, // ####### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @5832 'q' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x07, 0xDE, 0x00, // ##### #### - 0x1F, 0xFE, 0x00, // ############ - 0x18, 0x38, 0x00, // ## ### - 0x30, 0x18, 0x00, // ## ## - 0x30, 0x18, 0x00, // ## ## - 0x30, 0x18, 0x00, // ## ## - 0x30, 0x18, 0x00, // ## ## - 0x30, 0x18, 0x00, // ## ## - 0x18, 0x38, 0x00, // ## ### - 0x1F, 0xF8, 0x00, // ########## - 0x07, 0xD8, 0x00, // ##### ## - 0x00, 0x18, 0x00, // ## - 0x00, 0x18, 0x00, // ## - 0x00, 0x18, 0x00, // ## - 0x00, 0xFE, 0x00, // ####### - 0x00, 0xFE, 0x00, // ####### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @5904 'r' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x3E, 0x78, 0x00, // ##### #### - 0x3E, 0xFC, 0x00, // ##### ###### - 0x07, 0xCC, 0x00, // ##### ## - 0x07, 0x00, 0x00, // ### - 0x06, 0x00, 0x00, // ## - 0x06, 0x00, 0x00, // ## - 0x06, 0x00, 0x00, // ## - 0x06, 0x00, 0x00, // ## - 0x06, 0x00, 0x00, // ## - 0x3F, 0xF0, 0x00, // ########## - 0x3F, 0xF0, 0x00, // ########## - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @5976 's' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x07, 0xF8, 0x00, // ######## - 0x0F, 0xF8, 0x00, // ######### - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x1F, 0x80, 0x00, // ###### - 0x0F, 0xF0, 0x00, // ######## - 0x00, 0xF8, 0x00, // ##### - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x38, 0x00, // ## ### - 0x1F, 0xF0, 0x00, // ######### - 0x1F, 0xE0, 0x00, // ######## - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @6048 't' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x0C, 0x00, 0x00, // ## - 0x0C, 0x00, 0x00, // ## - 0x0C, 0x00, 0x00, // ## - 0x0C, 0x00, 0x00, // ## - 0x3F, 0xF0, 0x00, // ########## - 0x3F, 0xF0, 0x00, // ########## - 0x0C, 0x00, 0x00, // ## - 0x0C, 0x00, 0x00, // ## - 0x0C, 0x00, 0x00, // ## - 0x0C, 0x00, 0x00, // ## - 0x0C, 0x00, 0x00, // ## - 0x0C, 0x00, 0x00, // ## - 0x0C, 0x1C, 0x00, // ## ### - 0x07, 0xFC, 0x00, // ######### - 0x03, 0xF0, 0x00, // ###### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @6120 'u' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x78, 0x78, 0x00, // #### #### - 0x78, 0x78, 0x00, // #### #### - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x38, 0x00, // ## ### - 0x0F, 0xFE, 0x00, // ########### - 0x07, 0xDE, 0x00, // ##### #### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @6192 'v' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x7C, 0x3E, 0x00, // ##### ##### - 0x7C, 0x3E, 0x00, // ##### ##### - 0x18, 0x18, 0x00, // ## ## - 0x18, 0x18, 0x00, // ## ## - 0x0C, 0x30, 0x00, // ## ## - 0x0C, 0x30, 0x00, // ## ## - 0x06, 0x60, 0x00, // ## ## - 0x06, 0x60, 0x00, // ## ## - 0x07, 0xE0, 0x00, // ###### - 0x03, 0xC0, 0x00, // #### - 0x03, 0xC0, 0x00, // #### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @6264 'w' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x78, 0x3C, 0x00, // #### #### - 0x78, 0x3C, 0x00, // #### #### - 0x31, 0x18, 0x00, // ## # ## - 0x33, 0x98, 0x00, // ## ### ## - 0x33, 0x98, 0x00, // ## ### ## - 0x1A, 0xB0, 0x00, // ## # # ## - 0x1E, 0xF0, 0x00, // #### #### - 0x1E, 0xF0, 0x00, // #### #### - 0x1C, 0x60, 0x00, // ### ## - 0x0C, 0x60, 0x00, // ## ## - 0x0C, 0x60, 0x00, // ## ## - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @6336 'x' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x3E, 0x7C, 0x00, // ##### ##### - 0x3E, 0x7C, 0x00, // ##### ##### - 0x0C, 0x30, 0x00, // ## ## - 0x06, 0x60, 0x00, // ## ## - 0x03, 0xC0, 0x00, // #### - 0x01, 0x80, 0x00, // ## - 0x03, 0xC0, 0x00, // #### - 0x06, 0x60, 0x00, // ## ## - 0x0C, 0x30, 0x00, // ## ## - 0x3E, 0x7C, 0x00, // ##### ##### - 0x3E, 0x7C, 0x00, // ##### ##### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @6408 'y' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x7E, 0x1F, 0x00, // ###### ##### - 0x7E, 0x1F, 0x00, // ###### ##### - 0x18, 0x0C, 0x00, // ## ## - 0x0C, 0x18, 0x00, // ## ## - 0x0C, 0x18, 0x00, // ## ## - 0x06, 0x30, 0x00, // ## ## - 0x06, 0x30, 0x00, // ## ## - 0x03, 0x60, 0x00, // ## ## - 0x03, 0xE0, 0x00, // ##### - 0x01, 0xC0, 0x00, // ### - 0x00, 0xC0, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x03, 0x00, 0x00, // ## - 0x3F, 0xC0, 0x00, // ######## - 0x3F, 0xC0, 0x00, // ######## - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @6480 'z' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x1F, 0xF8, 0x00, // ########## - 0x1F, 0xF8, 0x00, // ########## - 0x18, 0x30, 0x00, // ## ## - 0x18, 0x60, 0x00, // ## ## - 0x00, 0xC0, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x03, 0x00, 0x00, // ## - 0x06, 0x18, 0x00, // ## ## - 0x0C, 0x18, 0x00, // ## ## - 0x1F, 0xF8, 0x00, // ########## - 0x1F, 0xF8, 0x00, // ########## - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @6552 '{' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0xE0, 0x00, // ### - 0x01, 0xE0, 0x00, // #### - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x03, 0x80, 0x00, // ### - 0x07, 0x00, 0x00, // ### - 0x03, 0x80, 0x00, // ### - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0xE0, 0x00, // #### - 0x00, 0xE0, 0x00, // ### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @6624 '|' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @6696 '}' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x07, 0x00, 0x00, // ### - 0x07, 0x80, 0x00, // #### - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0xC0, 0x00, // ### - 0x00, 0xE0, 0x00, // ### - 0x01, 0xC0, 0x00, // ### - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x01, 0x80, 0x00, // ## - 0x07, 0x80, 0x00, // #### - 0x07, 0x00, 0x00, // ### - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - - // @6768 '~' (17 pixels wide) - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x00, 0x00, 0x00, // - 0x0E, 0x00, 0x00, // ### - 0x1F, 0x18, 0x00, // ##### ## - 0x3B, 0xB8, 0x00, // ### ### ### - 0x31, 0xF0, 0x00, // ## ##### - 0x00, 0xE0, 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, // -}; - -sFONT Font24 = { - Font24_Table, - 17, /* Width */ - 24, /* Height */ -}; - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/Raspberry Pi/c/lib/Fonts/font8.c b/Raspberry Pi/c/lib/Fonts/font8.c deleted file mode 100644 index 88450d9..0000000 --- a/Raspberry Pi/c/lib/Fonts/font8.c +++ /dev/null @@ -1,1004 +0,0 @@ -/** - ****************************************************************************** - * @file Font8.c - * @author MCD Application Team - * @version V1.0.0 - * @date 18-February-2014 - * @brief This file provides text Font8 for STM32xx-EVAL's LCD driver. - ****************************************************************************** - * @attention - * - *

© COPYRIGHT(c) 2014 STMicroelectronics

- * - * Redistribution and use in source and binary forms, with or without modification, - * are permitted provided that the following conditions are met: - * 1. Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * 3. Neither the name of STMicroelectronics nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR - * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER - * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, - * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - * - ****************************************************************************** - */ - -/* Includes ------------------------------------------------------------------*/ -#include "fonts.h" - -// -// Font data for Courier New 12pt -// - -const uint8_t Font8_Table[] = -{ - // @0 ' ' (5 pixels wide) - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - - // @8 '!' (5 pixels wide) - 0x20, // # - 0x20, // # - 0x20, // # - 0x20, // # - 0x00, // - 0x20, // # - 0x00, // - 0x00, // - - // @16 '"' (5 pixels wide) - 0x50, // # # - 0x50, // # # - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - - // @24 '#' (5 pixels wide) - 0x28, // # # - 0x50, // # # - 0xF8, // ##### - 0x50, // # # - 0xF8, // ##### - 0x50, // # # - 0xA0, // # # - 0x00, // - - // @32 '$' (5 pixels wide) - 0x20, // # - 0x30, // ## - 0x60, // ## - 0x30, // ## - 0x10, // # - 0x60, // ## - 0x20, // # - 0x00, // - - // @40 '%' (5 pixels wide) - 0x20, // # - 0x20, // # - 0x18, // ## - 0x60, // ## - 0x10, // # - 0x10, // # - 0x00, // - 0x00, // - - // @48 '&' (5 pixels wide) - 0x00, // - 0x38, // ### - 0x20, // # - 0x60, // ## - 0x50, // # # - 0x78, // #### - 0x00, // - 0x00, // - - // @56 ''' (5 pixels wide) - 0x20, // # - 0x20, // # - 0x20, // # - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - - // @64 '(' (5 pixels wide) - 0x10, // # - 0x20, // # - 0x20, // # - 0x20, // # - 0x20, // # - 0x20, // # - 0x10, // # - 0x00, // - - // @72 ')' (5 pixels wide) - 0x40, // # - 0x20, // # - 0x20, // # - 0x20, // # - 0x20, // # - 0x20, // # - 0x40, // # - 0x00, // - - // @80 '*' (5 pixels wide) - 0x20, // # - 0x70, // ### - 0x20, // # - 0x50, // # # - 0x00, // - 0x00, // - 0x00, // - 0x00, // - - // @88 '+' (5 pixels wide) - 0x00, // - 0x20, // # - 0x20, // # - 0xF8, // ##### - 0x20, // # - 0x20, // # - 0x00, // - 0x00, // - - // @96 ',' (5 pixels wide) - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x10, // # - 0x20, // # - 0x20, // # - 0x00, // - - // @104 '-' (5 pixels wide) - 0x00, // - 0x00, // - 0x00, // - 0x70, // ### - 0x00, // - 0x00, // - 0x00, // - 0x00, // - - // @112 '.' (5 pixels wide) - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x20, // # - 0x00, // - 0x00, // - - // @120 '/' (5 pixels wide) - 0x10, // # - 0x20, // # - 0x20, // # - 0x20, // # - 0x40, // # - 0x40, // # - 0x80, // # - 0x00, // - - // @128 '0' (5 pixels wide) - 0x20, // # - 0x50, // # # - 0x50, // # # - 0x50, // # # - 0x50, // # # - 0x20, // # - 0x00, // - 0x00, // - - // @136 '1' (5 pixels wide) - 0x60, // ## - 0x20, // # - 0x20, // # - 0x20, // # - 0x20, // # - 0xF8, // ##### - 0x00, // - 0x00, // - - // @144 '2' (5 pixels wide) - 0x20, // # - 0x50, // # # - 0x20, // # - 0x20, // # - 0x40, // # - 0x70, // ### - 0x00, // - 0x00, // - - // @152 '3' (5 pixels wide) - 0x20, // # - 0x50, // # # - 0x10, // # - 0x20, // # - 0x10, // # - 0x60, // ## - 0x00, // - 0x00, // - - // @160 '4' (5 pixels wide) - 0x10, // # - 0x30, // ## - 0x50, // # # - 0x78, // #### - 0x10, // # - 0x38, // ### - 0x00, // - 0x00, // - - // @168 '5' (5 pixels wide) - 0x70, // ### - 0x40, // # - 0x60, // ## - 0x10, // # - 0x50, // # # - 0x20, // # - 0x00, // - 0x00, // - - // @176 '6' (5 pixels wide) - 0x30, // ## - 0x40, // # - 0x60, // ## - 0x50, // # # - 0x50, // # # - 0x60, // ## - 0x00, // - 0x00, // - - // @184 '7' (5 pixels wide) - 0x70, // ### - 0x50, // # # - 0x10, // # - 0x20, // # - 0x20, // # - 0x20, // # - 0x00, // - 0x00, // - - // @192 '8' (5 pixels wide) - 0x20, // # - 0x50, // # # - 0x20, // # - 0x50, // # # - 0x50, // # # - 0x20, // # - 0x00, // - 0x00, // - - // @200 '9' (5 pixels wide) - 0x30, // ## - 0x50, // # # - 0x50, // # # - 0x30, // ## - 0x10, // # - 0x60, // ## - 0x00, // - 0x00, // - - // @208 ':' (5 pixels wide) - 0x00, // - 0x00, // - 0x20, // # - 0x00, // - 0x00, // - 0x20, // # - 0x00, // - 0x00, // - - // @216 ';' (5 pixels wide) - 0x00, // - 0x00, // - 0x10, // # - 0x00, // - 0x10, // # - 0x20, // # - 0x00, // - 0x00, // - - // @224 '<' (5 pixels wide) - 0x00, // - 0x10, // # - 0x20, // # - 0xC0, // ## - 0x20, // # - 0x10, // # - 0x00, // - 0x00, // - - // @232 '=' (5 pixels wide) - 0x00, // - 0x70, // ### - 0x00, // - 0x70, // ### - 0x00, // - 0x00, // - 0x00, // - 0x00, // - - // @240 '>' (5 pixels wide) - 0x00, // - 0x40, // # - 0x20, // # - 0x18, // ## - 0x20, // # - 0x40, // # - 0x00, // - 0x00, // - - // @248 '?' (5 pixels wide) - 0x20, // # - 0x50, // # # - 0x10, // # - 0x20, // # - 0x00, // - 0x20, // # - 0x00, // - 0x00, // - - // @256 '@' (5 pixels wide) - 0x30, // ## - 0x48, // # # - 0x48, // # # - 0x58, // # ## - 0x48, // # # - 0x40, // # - 0x38, // ### - 0x00, // - - // @264 'A' (5 pixels wide) - 0x60, // ## - 0x20, // # - 0x50, // # # - 0x70, // ### - 0x88, // # # - 0xD8, // ## ## - 0x00, // - 0x00, // - - // @272 'B' (5 pixels wide) - 0xF0, // #### - 0x48, // # # - 0x70, // ### - 0x48, // # # - 0x48, // # # - 0xF0, // #### - 0x00, // - 0x00, // - - // @280 'C' (5 pixels wide) - 0x70, // ### - 0x50, // # # - 0x40, // # - 0x40, // # - 0x40, // # - 0x30, // ## - 0x00, // - 0x00, // - - // @288 'D' (5 pixels wide) - 0xF0, // #### - 0x48, // # # - 0x48, // # # - 0x48, // # # - 0x48, // # # - 0xF0, // #### - 0x00, // - 0x00, // - - // @296 'E' (5 pixels wide) - 0xF8, // ##### - 0x48, // # # - 0x60, // ## - 0x40, // # - 0x48, // # # - 0xF8, // ##### - 0x00, // - 0x00, // - - // @304 'F' (5 pixels wide) - 0xF8, // ##### - 0x48, // # # - 0x60, // ## - 0x40, // # - 0x40, // # - 0xE0, // ### - 0x00, // - 0x00, // - - // @312 'G' (5 pixels wide) - 0x70, // ### - 0x40, // # - 0x40, // # - 0x58, // # ## - 0x50, // # # - 0x30, // ## - 0x00, // - 0x00, // - - // @320 'H' (5 pixels wide) - 0xE8, // ### # - 0x48, // # # - 0x78, // #### - 0x48, // # # - 0x48, // # # - 0xE8, // ### # - 0x00, // - 0x00, // - - // @328 'I' (5 pixels wide) - 0x70, // ### - 0x20, // # - 0x20, // # - 0x20, // # - 0x20, // # - 0x70, // ### - 0x00, // - 0x00, // - - // @336 'J' (5 pixels wide) - 0x38, // ### - 0x10, // # - 0x10, // # - 0x50, // # # - 0x50, // # # - 0x20, // # - 0x00, // - 0x00, // - - // @344 'K' (5 pixels wide) - 0xD8, // ## ## - 0x50, // # # - 0x60, // ## - 0x70, // ### - 0x50, // # # - 0xD8, // ## ## - 0x00, // - 0x00, // - - // @352 'L' (5 pixels wide) - 0xE0, // ### - 0x40, // # - 0x40, // # - 0x40, // # - 0x48, // # # - 0xF8, // ##### - 0x00, // - 0x00, // - - // @360 'M' (5 pixels wide) - 0xD8, // ## ## - 0xD8, // ## ## - 0xD8, // ## ## - 0xA8, // # # # - 0x88, // # # - 0xD8, // ## ## - 0x00, // - 0x00, // - - // @368 'N' (5 pixels wide) - 0xD8, // ## ## - 0x68, // ## # - 0x68, // ## # - 0x58, // # ## - 0x58, // # ## - 0xE8, // ### # - 0x00, // - 0x00, // - - // @376 'O' (5 pixels wide) - 0x30, // ## - 0x48, // # # - 0x48, // # # - 0x48, // # # - 0x48, // # # - 0x30, // ## - 0x00, // - 0x00, // - - // @384 'P' (5 pixels wide) - 0xF0, // #### - 0x48, // # # - 0x48, // # # - 0x70, // ### - 0x40, // # - 0xE0, // ### - 0x00, // - 0x00, // - - // @392 'Q' (5 pixels wide) - 0x30, // ## - 0x48, // # # - 0x48, // # # - 0x48, // # # - 0x48, // # # - 0x30, // ## - 0x18, // ## - 0x00, // - - // @400 'R' (5 pixels wide) - 0xF0, // #### - 0x48, // # # - 0x48, // # # - 0x70, // ### - 0x48, // # # - 0xE8, // ### # - 0x00, // - 0x00, // - - // @408 'S' (5 pixels wide) - 0x70, // ### - 0x50, // # # - 0x20, // # - 0x10, // # - 0x50, // # # - 0x70, // ### - 0x00, // - 0x00, // - - // @416 'T' (5 pixels wide) - 0xF8, // ##### - 0xA8, // # # # - 0x20, // # - 0x20, // # - 0x20, // # - 0x70, // ### - 0x00, // - 0x00, // - - // @424 'U' (5 pixels wide) - 0xD8, // ## ## - 0x48, // # # - 0x48, // # # - 0x48, // # # - 0x48, // # # - 0x30, // ## - 0x00, // - 0x00, // - - // @432 'V' (5 pixels wide) - 0xD8, // ## ## - 0x88, // # # - 0x48, // # # - 0x50, // # # - 0x50, // # # - 0x30, // ## - 0x00, // - 0x00, // - - // @440 'W' (5 pixels wide) - 0xD8, // ## ## - 0x88, // # # - 0xA8, // # # # - 0xA8, // # # # - 0xA8, // # # # - 0x50, // # # - 0x00, // - 0x00, // - - // @448 'X' (5 pixels wide) - 0xD8, // ## ## - 0x50, // # # - 0x20, // # - 0x20, // # - 0x50, // # # - 0xD8, // ## ## - 0x00, // - 0x00, // - - // @456 'Y' (5 pixels wide) - 0xD8, // ## ## - 0x88, // # # - 0x50, // # # - 0x20, // # - 0x20, // # - 0x70, // ### - 0x00, // - 0x00, // - - // @464 'Z' (5 pixels wide) - 0x78, // #### - 0x48, // # # - 0x10, // # - 0x20, // # - 0x48, // # # - 0x78, // #### - 0x00, // - 0x00, // - - // @472 '[' (5 pixels wide) - 0x30, // ## - 0x20, // # - 0x20, // # - 0x20, // # - 0x20, // # - 0x20, // # - 0x30, // ## - 0x00, // - - // @480 '\' (5 pixels wide) - 0x80, // # - 0x40, // # - 0x40, // # - 0x20, // # - 0x20, // # - 0x20, // # - 0x10, // # - 0x00, // - - // @488 ']' (5 pixels wide) - 0x60, // ## - 0x20, // # - 0x20, // # - 0x20, // # - 0x20, // # - 0x20, // # - 0x60, // ## - 0x00, // - - // @496 '^' (5 pixels wide) - 0x20, // # - 0x20, // # - 0x50, // # # - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - - // @504 '_' (5 pixels wide) - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0xF8, // ##### - - // @512 '`' (5 pixels wide) - 0x20, // # - 0x10, // # - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - 0x00, // - - // @520 'a' (5 pixels wide) - 0x00, // - 0x00, // - 0x30, // ## - 0x10, // # - 0x70, // ### - 0x78, // #### - 0x00, // - 0x00, // - - // @528 'b' (5 pixels wide) - 0xC0, // ## - 0x40, // # - 0x70, // ### - 0x48, // # # - 0x48, // # # - 0xF0, // #### - 0x00, // - 0x00, // - - // @536 'c' (5 pixels wide) - 0x00, // - 0x00, // - 0x70, // ### - 0x40, // # - 0x40, // # - 0x70, // ### - 0x00, // - 0x00, // - - // @544 'd' (5 pixels wide) - 0x18, // ## - 0x08, // # - 0x38, // ### - 0x48, // # # - 0x48, // # # - 0x38, // ### - 0x00, // - 0x00, // - - // @552 'e' (5 pixels wide) - 0x00, // - 0x00, // - 0x70, // ### - 0x70, // ### - 0x40, // # - 0x30, // ## - 0x00, // - 0x00, // - - // @560 'f' (5 pixels wide) - 0x10, // # - 0x20, // # - 0x70, // ### - 0x20, // # - 0x20, // # - 0x70, // ### - 0x00, // - 0x00, // - - // @568 'g' (5 pixels wide) - 0x00, // - 0x00, // - 0x38, // ### - 0x48, // # # - 0x48, // # # - 0x38, // ### - 0x08, // # - 0x30, // ## - - // @576 'h' (5 pixels wide) - 0xC0, // ## - 0x40, // # - 0x70, // ### - 0x48, // # # - 0x48, // # # - 0xE8, // ### # - 0x00, // - 0x00, // - - // @584 'i' (5 pixels wide) - 0x20, // # - 0x00, // - 0x60, // ## - 0x20, // # - 0x20, // # - 0x70, // ### - 0x00, // - 0x00, // - - // @592 'j' (5 pixels wide) - 0x20, // # - 0x00, // - 0x70, // ### - 0x10, // # - 0x10, // # - 0x10, // # - 0x10, // # - 0x70, // ### - - // @600 'k' (5 pixels wide) - 0xC0, // ## - 0x40, // # - 0x58, // # ## - 0x70, // ### - 0x50, // # # - 0xD8, // ## ## - 0x00, // - 0x00, // - - // @608 'l' (5 pixels wide) - 0x60, // ## - 0x20, // # - 0x20, // # - 0x20, // # - 0x20, // # - 0x70, // ### - 0x00, // - 0x00, // - - // @616 'm' (5 pixels wide) - 0x00, // - 0x00, // - 0xD0, // ## # - 0xA8, // # # # - 0xA8, // # # # - 0xA8, // # # # - 0x00, // - 0x00, // - - // @624 'n' (5 pixels wide) - 0x00, // - 0x00, // - 0xF0, // #### - 0x48, // # # - 0x48, // # # - 0xC8, // ## # - 0x00, // - 0x00, // - - // @632 'o' (5 pixels wide) - 0x00, // - 0x00, // - 0x30, // ## - 0x48, // # # - 0x48, // # # - 0x30, // ## - 0x00, // - 0x00, // - - // @640 'p' (5 pixels wide) - 0x00, // - 0x00, // - 0xF0, // #### - 0x48, // # # - 0x48, // # # - 0x70, // ### - 0x40, // # - 0xE0, // ### - - // @648 'q' (5 pixels wide) - 0x00, // - 0x00, // - 0x38, // ### - 0x48, // # # - 0x48, // # # - 0x38, // ### - 0x08, // # - 0x18, // ## - - // @656 'r' (5 pixels wide) - 0x00, // - 0x00, // - 0x78, // #### - 0x20, // # - 0x20, // # - 0x70, // ### - 0x00, // - 0x00, // - - // @664 's' (5 pixels wide) - 0x00, // - 0x00, // - 0x30, // ## - 0x20, // # - 0x10, // # - 0x60, // ## - 0x00, // - 0x00, // - - // @672 't' (5 pixels wide) - 0x00, // - 0x40, // # - 0xF0, // #### - 0x40, // # - 0x48, // # # - 0x30, // ## - 0x00, // - 0x00, // - - // @680 'u' (5 pixels wide) - 0x00, // - 0x00, // - 0xD8, // ## ## - 0x48, // # # - 0x48, // # # - 0x38, // ### - 0x00, // - 0x00, // - - // @688 'v' (5 pixels wide) - 0x00, // - 0x00, // - 0xC8, // ## # - 0x48, // # # - 0x30, // ## - 0x30, // ## - 0x00, // - 0x00, // - - // @696 'w' (5 pixels wide) - 0x00, // - 0x00, // - 0xD8, // ## ## - 0xA8, // # # # - 0xA8, // # # # - 0x50, // # # - 0x00, // - 0x00, // - - // @704 'x' (5 pixels wide) - 0x00, // - 0x00, // - 0x48, // # # - 0x30, // ## - 0x30, // ## - 0x48, // # # - 0x00, // - 0x00, // - - // @712 'y' (5 pixels wide) - 0x00, // - 0x00, // - 0xD8, // ## ## - 0x50, // # # - 0x50, // # # - 0x20, // # - 0x20, // # - 0x60, // ## - - // @720 'z' (5 pixels wide) - 0x00, // - 0x00, // - 0x78, // #### - 0x50, // # # - 0x28, // # # - 0x78, // #### - 0x00, // - 0x00, // - - // @728 '{' (5 pixels wide) - 0x10, // # - 0x20, // # - 0x20, // # - 0x60, // ## - 0x20, // # - 0x20, // # - 0x10, // # - 0x00, // - - // @736 '|' (5 pixels wide) - 0x20, // # - 0x20, // # - 0x20, // # - 0x20, // # - 0x20, // # - 0x20, // # - 0x20, // # - 0x00, // - - // @744 '}' (5 pixels wide) - 0x40, // # - 0x20, // # - 0x20, // # - 0x30, // ## - 0x20, // # - 0x20, // # - 0x40, // # - 0x00, // - - // @752 '~' (5 pixels wide) - 0x00, // - 0x00, // - 0x00, // - 0x28, // # # - 0x50, // # # - 0x00, // - 0x00, // - 0x00, // -}; - -sFONT Font8 = { - Font8_Table, - 5, /* Width */ - 8, /* Height */ -}; - -/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/Raspberry Pi/c/lib/GUI/GUI_BMPfile.h b/Raspberry Pi/c/lib/GUI/GUI_BMPfile.h deleted file mode 100644 index 7d397a1..0000000 --- a/Raspberry Pi/c/lib/GUI/GUI_BMPfile.h +++ /dev/null @@ -1,81 +0,0 @@ -/***************************************************************************** -* | File : GUI_BMPfile.h -* | Author : Waveshare team -* | Function : Hardware underlying interface -* | Info : -* Used to shield the underlying layers of each master -* and enhance portability -*---------------- -* | This version: V2.0 -* | Date : 2018-11-12 -* | Info : -* 1.Change file name: GUI_BMP.h -> GUI_BMPfile.h -* 2.fix: GUI_ReadBmp() -* Now Xstart and Xstart can control the position of the picture normally, -* and support the display of images of any size. If it is larger than -* the actual display range, it will not be displayed. -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#ifndef __GUI_BMPFILE_H -#define __GUI_BMPFILE_H - -#include -#include -#include -#include - -#include "DEV_Config.h" - -/*Bitmap file header 14bit*/ -typedef struct BMP_FILE_HEADER { - UWORD bType; //File identifier - UDOUBLE bSize; //The size of the file - UWORD bReserved1; //Reserved value, must be set to 0 - UWORD bReserved2; //Reserved value, must be set to 0 - UDOUBLE bOffset; //The offset from the beginning of the file header to the beginning of the image data bit -} __attribute__ ((packed)) BMPFILEHEADER; // 14bit - -/*Bitmap information header 40bit*/ -typedef struct BMP_INFO { - UDOUBLE biInfoSize; //The size of the header - UDOUBLE biWidth; //The width of the image - UDOUBLE biHeight; //The height of the image - UWORD biPlanes; //The number of planes in the image - UWORD biBitCount; //The number of bits per pixel - UDOUBLE biCompression; //Compression type - UDOUBLE bimpImageSize; //The size of the image, in bytes - UDOUBLE biXPelsPerMeter; //Horizontal resolution - UDOUBLE biYPelsPerMeter; //Vertical resolution - UDOUBLE biClrUsed; //The number of colors used - UDOUBLE biClrImportant; //The number of important colors -} __attribute__ ((packed)) BMPINFOHEADER; - -/*Color table: palette */ -typedef struct RGB_QUAD { - UBYTE rgbBlue; //Blue intensity - UBYTE rgbGreen; //Green strength - UBYTE rgbRed; //Red intensity - UBYTE rgbReversed; //Reserved value -} __attribute__ ((packed)) BMPRGBQUAD; -/**************************************** end ***********************************************/ - -UBYTE GUI_ReadBmp(const char *path, UWORD Xstart, UWORD Ystart); -#endif diff --git a/Raspberry Pi/c/lib/GUI/GUI_Paint.c b/Raspberry Pi/c/lib/GUI/GUI_Paint.c deleted file mode 100644 index fc75305..0000000 --- a/Raspberry Pi/c/lib/GUI/GUI_Paint.c +++ /dev/null @@ -1,725 +0,0 @@ -/****************************************************************************** -* | File : GUI_Paint.c -* | Author : Waveshare electronics -* | Function : Achieve drawing: draw points, lines, boxes, circles and -* their size, solid dotted line, solid rectangle hollow -* rectangle, solid circle hollow circle. -* | Info : -* Achieve display characters: Display a single character, string, number -* Achieve time display: adaptive size display time minutes and seconds -*---------------- -* | This version: V3.0 -* | Date : 2019-04-18 -* | Info : -* ----------------------------------------------------------------------------- -* V3.0(2019-04-18): -* 1.Change: -* Paint_DrawPoint(..., DOT_STYLE DOT_STYLE) -* => Paint_DrawPoint(..., DOT_STYLE Dot_Style) -* Paint_DrawLine(..., LINE_STYLE Line_Style, DOT_PIXEL Dot_Pixel) -* => Paint_DrawLine(..., DOT_PIXEL Line_width, LINE_STYLE Line_Style) -* Paint_DrawRectangle(..., DRAW_FILL Filled, DOT_PIXEL Dot_Pixel) -* => Paint_DrawRectangle(..., DOT_PIXEL Line_width, DRAW_FILL Draw_Fill) -* Paint_DrawCircle(..., DRAW_FILL Draw_Fill, DOT_PIXEL Dot_Pixel) -* => Paint_DrawCircle(..., DOT_PIXEL Line_width, DRAW_FILL Draw_Filll) -* -* ----------------------------------------------------------------------------- -* V2.0(2018-11-15): -* 1.add: Paint_NewImage() -* Create an image's properties -* 2.add: Paint_SelectImage() -* Select the picture to be drawn -* 3.add: Paint_SetRotate() -* Set the direction of the cache -* 4.add: Paint_RotateImage() -* Can flip the picture, Support 0-360 degrees, -* but only 90.180.270 rotation is better -* 4.add: Paint_SetMirroring() -* Can Mirroring the picture, horizontal, vertical, origin -* 5.add: Paint_DrawString_CN() -* Can display Chinese(GB1312) -* -* ----------------------------------------------------------------------------- -* V1.0(2018-07-17): -* Create library -* -* Permission is hereby granted, free of charge, to any person obtaining a copy -* of this software and associated documnetation files (the "Software"), to deal -* in the Software without restriction, including without limitation the rights -* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -* copies of the Software, and to permit persons to whom the Software is -* furished to do so, subject to the following conditions: -* -* The above copyright notice and this permission notice shall be included in -* all copies or substantial portions of the Software. -* -* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -* FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -* LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -* THE SOFTWARE. -* -******************************************************************************/ -#include "GUI_Paint.h" -#include "DEV_Config.h" -#include "Debug.h" -#include -#include -#include //memset() -#include - -PAINT Paint; - -/****************************************************************************** -function: Create Image -parameter: - image : Pointer to the image cache - width : The width of the picture - Height : The height of the picture - Color : Whether the picture is inverted -******************************************************************************/ -void Paint_NewImage(UBYTE *image, UWORD Width, UWORD Height, UWORD Rotate, UWORD Color) -{ - Paint.Image = NULL; - Paint.Image = image; - - Paint.WidthMemory = Width; - Paint.HeightMemory = Height; - Paint.Color = Color; - Paint.WidthByte = (Width % 8 == 0)? (Width / 8 ): (Width / 8 + 1); - Paint.HeightByte = Height; -// printf("WidthByte = %d, HeightByte = %d\r\n", Paint.WidthByte, Paint.HeightByte); -// printf(" EPD_WIDTH / 8 = %d\r\n", 122 / 8); - - Paint.Rotate = Rotate; - Paint.Mirror = MIRROR_NONE; - - if(Rotate == ROTATE_0 || Rotate == ROTATE_180) { - Paint.Width = Width; - Paint.Height = Height; - } else { - Paint.Width = Height; - Paint.Height = Width; - } -} - -/****************************************************************************** -function: Select Image -parameter: - image : Pointer to the image cache -******************************************************************************/ -void Paint_SelectImage(UBYTE *image) -{ - Paint.Image = image; -} - -/****************************************************************************** -function: Select Image Rotate -parameter: - Rotate : 0,90,180,270 -******************************************************************************/ -void Paint_SetRotate(UWORD Rotate) -{ - if(Rotate == ROTATE_0 || Rotate == ROTATE_90 || Rotate == ROTATE_180 || Rotate == ROTATE_270) { - Debug("Set image Rotate %d\r\n", Rotate); - Paint.Rotate = Rotate; - } else { - Debug("rotate = 0, 90, 180, 270\r\n"); - } -} - -/****************************************************************************** -function: Select Image mirror -parameter: - mirror :Not mirror,Horizontal mirror,Vertical mirror,Origin mirror -******************************************************************************/ -void Paint_SetMirroring(UBYTE mirror) -{ - if(mirror == MIRROR_NONE || mirror == MIRROR_HORIZONTAL || - mirror == MIRROR_VERTICAL || mirror == MIRROR_ORIGIN) { - Debug("mirror image x:%s, y:%s\r\n",(mirror & 0x01)? "mirror":"none", ((mirror >> 1) & 0x01)? "mirror":"none"); - Paint.Mirror = mirror; - } else { - Debug("mirror should be MIRROR_NONE, MIRROR_HORIZONTAL, \ - MIRROR_VERTICAL or MIRROR_ORIGIN\r\n"); - } -} - -/****************************************************************************** -function: Draw Pixels -parameter: - Xpoint : At point X - Ypoint : At point Y - Color : Painted colors -******************************************************************************/ -void Paint_SetPixel(UWORD Xpoint, UWORD Ypoint, UWORD Color) -{ - if(Xpoint > Paint.Width || Ypoint > Paint.Height){ - Debug("Exceeding display boundaries\r\n"); - return; - } - UWORD X, Y; - - switch(Paint.Rotate) { - case 0: - X = Xpoint; - Y = Ypoint; - break; - case 90: - X = Paint.WidthMemory - Ypoint - 1; - Y = Xpoint; - break; - case 180: - X = Paint.WidthMemory - Xpoint - 1; - Y = Paint.HeightMemory - Ypoint - 1; - break; - case 270: - X = Ypoint; - Y = Paint.HeightMemory - Xpoint - 1; - break; - default: - return; - } - - switch(Paint.Mirror) { - case MIRROR_NONE: - break; - case MIRROR_HORIZONTAL: - X = Paint.WidthMemory - X - 1; - break; - case MIRROR_VERTICAL: - Y = Paint.HeightMemory - Y - 1; - break; - case MIRROR_ORIGIN: - X = Paint.WidthMemory - X - 1; - Y = Paint.HeightMemory - Y - 1; - break; - default: - return; - } - - if(X > Paint.WidthMemory || Y > Paint.HeightMemory){ - Debug("Exceeding display boundaries\r\n"); - return; - } - - UDOUBLE Addr = X / 8 + Y * Paint.WidthByte; - UBYTE Rdata = Paint.Image[Addr]; - if(Color == BLACK) - Paint.Image[Addr] = Rdata & ~(0x80 >> (X % 8)); - else - Paint.Image[Addr] = Rdata | (0x80 >> (X % 8)); -} - -/****************************************************************************** -function: Clear the color of the picture -parameter: - Color : Painted colors -******************************************************************************/ -void Paint_Clear(UWORD Color) -{ - for (UWORD Y = 0; Y < Paint.HeightByte; Y++) { - for (UWORD X = 0; X < Paint.WidthByte; X++ ) {//8 pixel = 1 byte - UDOUBLE Addr = X + Y*Paint.WidthByte; - Paint.Image[Addr] = Color; - } - } -} - -/****************************************************************************** -function: Clear the color of a window -parameter: - Xstart : x starting point - Ystart : Y starting point - Xend : x end point - Yend : y end point - Color : Painted colors -******************************************************************************/ -void Paint_ClearWindows(UWORD Xstart, UWORD Ystart, UWORD Xend, UWORD Yend, UWORD Color) -{ - UWORD X, Y; - for (Y = Ystart; Y < Yend; Y++) { - for (X = Xstart; X < Xend; X++) {//8 pixel = 1 byte - Paint_SetPixel(X, Y, Color); - } - } -} - -/****************************************************************************** -function: Draw Point(Xpoint, Ypoint) Fill the color -parameter: - Xpoint : The Xpoint coordinate of the point - Ypoint : The Ypoint coordinate of the point - Color : Painted color - Dot_Pixel : point size - Dot_Style : point Style -******************************************************************************/ -void Paint_DrawPoint(UWORD Xpoint, UWORD Ypoint, UWORD Color, - DOT_PIXEL Dot_Pixel, DOT_STYLE Dot_Style) -{ - if (Xpoint > Paint.Width || Ypoint > Paint.Height) { - Debug("Paint_DrawPoint Input exceeds the normal display range\r\n"); - return; - } - - int16_t XDir_Num , YDir_Num; - if (Dot_Style == DOT_FILL_AROUND) { - for (XDir_Num = 0; XDir_Num < 2 * Dot_Pixel - 1; XDir_Num++) { - for (YDir_Num = 0; YDir_Num < 2 * Dot_Pixel - 1; YDir_Num++) { - if(Xpoint + XDir_Num - Dot_Pixel < 0 || Ypoint + YDir_Num - Dot_Pixel < 0) - break; - // printf("x = %d, y = %d\r\n", Xpoint + XDir_Num - Dot_Pixel, Ypoint + YDir_Num - Dot_Pixel); - Paint_SetPixel(Xpoint + XDir_Num - Dot_Pixel, Ypoint + YDir_Num - Dot_Pixel, Color); - } - } - } else { - for (XDir_Num = 0; XDir_Num < Dot_Pixel; XDir_Num++) { - for (YDir_Num = 0; YDir_Num < Dot_Pixel; YDir_Num++) { - Paint_SetPixel(Xpoint + XDir_Num - 1, Ypoint + YDir_Num - 1, Color); - } - } - } -} - -/****************************************************************************** -function: Draw a line of arbitrary slope -parameter: - Xstart 锛歋tarting Xpoint point coordinates - Ystart 锛歋tarting Xpoint point coordinates - Xend 锛欵nd point Xpoint coordinate - Yend 锛欵nd point Ypoint coordinate - Color 锛歍he color of the line segment - Line_width : Line width - Line_Style: Solid and dotted lines -******************************************************************************/ -void Paint_DrawLine(UWORD Xstart, UWORD Ystart, UWORD Xend, UWORD Yend, - UWORD Color, DOT_PIXEL Line_width, LINE_STYLE Line_Style) -{ - if (Xstart > Paint.Width || Ystart > Paint.Height || - Xend > Paint.Width || Yend > Paint.Height) { - Debug("Paint_DrawLine Input exceeds the normal display range\r\n"); - return; - } - - UWORD Xpoint = Xstart; - UWORD Ypoint = Ystart; - int dx = (int)Xend - (int)Xstart >= 0 ? Xend - Xstart : Xstart - Xend; - int dy = (int)Yend - (int)Ystart <= 0 ? Yend - Ystart : Ystart - Yend; - - // Increment direction, 1 is positive, -1 is counter; - int XAddway = Xstart < Xend ? 1 : -1; - int YAddway = Ystart < Yend ? 1 : -1; - - //Cumulative error - int Esp = dx + dy; - char Dotted_Len = 0; - - for (;;) { - Dotted_Len++; - //Painted dotted line, 2 point is really virtual - if (Line_Style == LINE_STYLE_DOTTED && Dotted_Len % 3 == 0) { - //Debug("LINE_DOTTED\r\n"); - Paint_DrawPoint(Xpoint, Ypoint, IMAGE_BACKGROUND, Line_width, DOT_STYLE_DFT); - Dotted_Len = 0; - } else { - Paint_DrawPoint(Xpoint, Ypoint, Color, Line_width, DOT_STYLE_DFT); - } - if (2 * Esp >= dy) { - if (Xpoint == Xend) - break; - Esp += dy; - Xpoint += XAddway; - } - if (2 * Esp <= dx) { - if (Ypoint == Yend) - break; - Esp += dx; - Ypoint += YAddway; - } - } -} - -/****************************************************************************** -function: Draw a rectangle -parameter: - Xstart 锛歊ectangular Starting Xpoint point coordinates - Ystart 锛歊ectangular Starting Xpoint point coordinates - Xend 锛歊ectangular End point Xpoint coordinate - Yend 锛歊ectangular End point Ypoint coordinate - Color 锛歍he color of the Rectangular segment - Line_width: Line width - Draw_Fill : Whether to fill the inside of the rectangle -******************************************************************************/ -void Paint_DrawRectangle(UWORD Xstart, UWORD Ystart, UWORD Xend, UWORD Yend, - UWORD Color, DOT_PIXEL Line_width, DRAW_FILL Draw_Fill) -{ - if (Xstart > Paint.Width || Ystart > Paint.Height || - Xend > Paint.Width || Yend > Paint.Height) { - Debug("Input exceeds the normal display range\r\n"); - return; - } - - if (Draw_Fill) { - UWORD Ypoint; - for(Ypoint = Ystart; Ypoint < Yend; Ypoint++) { - Paint_DrawLine(Xstart, Ypoint, Xend, Ypoint, Color , Line_width, LINE_STYLE_SOLID); - } - } else { - Paint_DrawLine(Xstart, Ystart, Xend, Ystart, Color, Line_width, LINE_STYLE_SOLID); - Paint_DrawLine(Xstart, Ystart, Xstart, Yend, Color, Line_width, LINE_STYLE_SOLID); - Paint_DrawLine(Xend, Yend, Xend, Ystart, Color, Line_width, LINE_STYLE_SOLID); - Paint_DrawLine(Xend, Yend, Xstart, Yend, Color, Line_width, LINE_STYLE_SOLID); - } -} - -/****************************************************************************** -function: Use the 8-point method to draw a circle of the - specified size at the specified position-> -parameter: - X_Center 锛欳enter X coordinate - Y_Center 锛欳enter Y coordinate - Radius 锛歝ircle Radius - Color 锛歍he color of the 锛歝ircle segment - Line_width: Line width - Draw_Fill : Whether to fill the inside of the Circle -******************************************************************************/ -void Paint_DrawCircle(UWORD X_Center, UWORD Y_Center, UWORD Radius, - UWORD Color, DOT_PIXEL Line_width, DRAW_FILL Draw_Fill) -{ - if (X_Center > Paint.Width || Y_Center >= Paint.Height) { - Debug("Paint_DrawCircle Input exceeds the normal display range\r\n"); - return; - } - - //Draw a circle from(0, R) as a starting point - int16_t XCurrent, YCurrent; - XCurrent = 0; - YCurrent = Radius; - - //Cumulative error,judge the next point of the logo - int16_t Esp = 3 - (Radius << 1 ); - - int16_t sCountY; - if (Draw_Fill == DRAW_FILL_FULL) { - while (XCurrent <= YCurrent ) { //Realistic circles - for (sCountY = XCurrent; sCountY <= YCurrent; sCountY ++ ) { - Paint_DrawPoint(X_Center + XCurrent, Y_Center + sCountY, Color, DOT_PIXEL_DFT, DOT_STYLE_DFT);//1 - Paint_DrawPoint(X_Center - XCurrent, Y_Center + sCountY, Color, DOT_PIXEL_DFT, DOT_STYLE_DFT);//2 - Paint_DrawPoint(X_Center - sCountY, Y_Center + XCurrent, Color, DOT_PIXEL_DFT, DOT_STYLE_DFT);//3 - Paint_DrawPoint(X_Center - sCountY, Y_Center - XCurrent, Color, DOT_PIXEL_DFT, DOT_STYLE_DFT);//4 - Paint_DrawPoint(X_Center - XCurrent, Y_Center - sCountY, Color, DOT_PIXEL_DFT, DOT_STYLE_DFT);//5 - Paint_DrawPoint(X_Center + XCurrent, Y_Center - sCountY, Color, DOT_PIXEL_DFT, DOT_STYLE_DFT);//6 - Paint_DrawPoint(X_Center + sCountY, Y_Center - XCurrent, Color, DOT_PIXEL_DFT, DOT_STYLE_DFT);//7 - Paint_DrawPoint(X_Center + sCountY, Y_Center + XCurrent, Color, DOT_PIXEL_DFT, DOT_STYLE_DFT); - } - if (Esp < 0 ) - Esp += 4 * XCurrent + 6; - else { - Esp += 10 + 4 * (XCurrent - YCurrent ); - YCurrent --; - } - XCurrent ++; - } - } else { //Draw a hollow circle - while (XCurrent <= YCurrent ) { - Paint_DrawPoint(X_Center + XCurrent, Y_Center + YCurrent, Color, Line_width, DOT_STYLE_DFT);//1 - Paint_DrawPoint(X_Center - XCurrent, Y_Center + YCurrent, Color, Line_width, DOT_STYLE_DFT);//2 - Paint_DrawPoint(X_Center - YCurrent, Y_Center + XCurrent, Color, Line_width, DOT_STYLE_DFT);//3 - Paint_DrawPoint(X_Center - YCurrent, Y_Center - XCurrent, Color, Line_width, DOT_STYLE_DFT);//4 - Paint_DrawPoint(X_Center - XCurrent, Y_Center - YCurrent, Color, Line_width, DOT_STYLE_DFT);//5 - Paint_DrawPoint(X_Center + XCurrent, Y_Center - YCurrent, Color, Line_width, DOT_STYLE_DFT);//6 - Paint_DrawPoint(X_Center + YCurrent, Y_Center - XCurrent, Color, Line_width, DOT_STYLE_DFT);//7 - Paint_DrawPoint(X_Center + YCurrent, Y_Center + XCurrent, Color, Line_width, DOT_STYLE_DFT);//0 - - if (Esp < 0 ) - Esp += 4 * XCurrent + 6; - else { - Esp += 10 + 4 * (XCurrent - YCurrent ); - YCurrent --; - } - XCurrent ++; - } - } -} - -/****************************************************************************** -function: Show English characters -parameter: - Xpoint 锛歑 coordinate - Ypoint 锛歒 coordinate - Acsii_Char 锛歍o display the English characters - Font 锛欰 structure pointer that displays a character size - Color_Foreground : Select the foreground color - Color_Background : Select the background color -******************************************************************************/ -void Paint_DrawChar(UWORD Xpoint, UWORD Ypoint, const char Acsii_Char, - sFONT* Font, UWORD Color_Foreground, UWORD Color_Background) -{ - UWORD Page, Column; - - if (Xpoint > Paint.Width || Ypoint > Paint.Height) { - Debug("Paint_DrawChar Input exceeds the normal display range\r\n"); - return; - } - - uint32_t Char_Offset = (Acsii_Char - ' ') * Font->Height * (Font->Width / 8 + (Font->Width % 8 ? 1 : 0)); - const unsigned char *ptr = &Font->table[Char_Offset]; - - for (Page = 0; Page < Font->Height; Page ++ ) { - for (Column = 0; Column < Font->Width; Column ++ ) { - - //To determine whether the font background color and screen background color is consistent - if (FONT_BACKGROUND == Color_Background) { //this process is to speed up the scan - if (*ptr & (0x80 >> (Column % 8))) - Paint_SetPixel(Xpoint + Column, Ypoint + Page, Color_Foreground); - // Paint_DrawPoint(Xpoint + Column, Ypoint + Page, Color_Foreground, DOT_PIXEL_DFT, DOT_STYLE_DFT); - } else { - if (*ptr & (0x80 >> (Column % 8))) { - Paint_SetPixel(Xpoint + Column, Ypoint + Page, Color_Foreground); - // Paint_DrawPoint(Xpoint + Column, Ypoint + Page, Color_Foreground, DOT_PIXEL_DFT, DOT_STYLE_DFT); - } else { - Paint_SetPixel(Xpoint + Column, Ypoint + Page, Color_Background); - // Paint_DrawPoint(Xpoint + Column, Ypoint + Page, Color_Background, DOT_PIXEL_DFT, DOT_STYLE_DFT); - } - } - //One pixel is 8 bits - if (Column % 8 == 7) - ptr++; - }// Write a line - if (Font->Width % 8 != 0) - ptr++; - }// Write all -} - -/****************************************************************************** -function: Display the string -parameter: - Xstart 锛歑 coordinate - Ystart 锛歒 coordinate - pString 锛歍he first address of the English string to be displayed - Font 锛欰 structure pointer that displays a character size - Color_Foreground : Select the foreground color - Color_Background : Select the background color -******************************************************************************/ -void Paint_DrawString_EN(UWORD Xstart, UWORD Ystart, const char * pString, - sFONT* Font, UWORD Color_Foreground, UWORD Color_Background) -{ - UWORD Xpoint = Xstart; - UWORD Ypoint = Ystart; - - if (Xstart > Paint.Width || Ystart > Paint.Height) { - Debug("Paint_DrawString_EN Input exceeds the normal display range\r\n"); - return; - } - - while (* pString != '\0') { - //if X direction filled , reposition to(Xstart,Ypoint),Ypoint is Y direction plus the Height of the character - if ((Xpoint + Font->Width ) > Paint.Width ) { - Xpoint = Xstart; - Ypoint += Font->Height; - } - - // If the Y direction is full, reposition to(Xstart, Ystart) - if ((Ypoint + Font->Height ) > Paint.Height ) { - Xpoint = Xstart; - Ypoint = Ystart; - } - Paint_DrawChar(Xpoint, Ypoint, * pString, Font, Color_Background, Color_Foreground); - - //The next character of the address - pString ++; - - //The next word of the abscissa increases the font of the broadband - Xpoint += Font->Width; - } -} - - -/****************************************************************************** -function: Display the string -parameter: - Xstart 锛歑 coordinate - Ystart 锛歒 coordinate - pString 锛歍he first address of the Chinese string and English - string to be displayed - Font 锛欰 structure pointer that displays a character size - Color_Foreground : Select the foreground color - Color_Background : Select the background color -******************************************************************************/ -void Paint_DrawString_CN(UWORD Xstart, UWORD Ystart, const char * pString, cFONT* font, - UWORD Color_Foreground, UWORD Color_Background) -{ - const char* p_text = pString; - int x = Xstart, y = Ystart; - int i, j,Num; - - /* Send the string character by character on EPD */ - while (*p_text != 0) { - if(*p_text <= 0x7F) { //ASCII < 126 - for(Num = 0; Num < font->size; Num++) { - if(*p_text== font->table[Num].index[0]) { - const char* ptr = &font->table[Num].matrix[0]; - - for (j = 0; j < font->Height; j++) { - for (i = 0; i < font->Width; i++) { - if (FONT_BACKGROUND == Color_Background) { //this process is to speed up the scan - if (*ptr & (0x80 >> (i % 8))) { - Paint_SetPixel(x + i, y + j, Color_Foreground); - // Paint_DrawPoint(x + i, y + j, Color_Foreground, DOT_PIXEL_DFT, DOT_STYLE_DFT); - } - } else { - if (*ptr & (0x80 >> (i % 8))) { - Paint_SetPixel(x + i, y + j, Color_Foreground); - // Paint_DrawPoint(x + i, y + j, Color_Foreground, DOT_PIXEL_DFT, DOT_STYLE_DFT); - } else { - Paint_SetPixel(x + i, y + j, Color_Background); - // Paint_DrawPoint(x + i, y + j, Color_Background, DOT_PIXEL_DFT, DOT_STYLE_DFT); - } - } - if (i % 8 == 7) { - ptr++; - } - } - if (font->Width % 8 != 0) { - ptr++; - } - } - break; - } - } - /* Point on the next character */ - p_text += 1; - /* Decrement the column position by 16 */ - x += font->ASCII_Width; - } else { //Chinese - for(Num = 0; Num < font->size; Num++) { - if((*p_text== font->table[Num].index[0]) && (*(p_text+1) == font->table[Num].index[1])) { - const char* ptr = &font->table[Num].matrix[0]; - - for (j = 0; j < font->Height; j++) { - for (i = 0; i < font->Width; i++) { - if (FONT_BACKGROUND == Color_Background) { //this process is to speed up the scan - if (*ptr & (0x80 >> (i % 8))) { - Paint_SetPixel(x + i, y + j, Color_Foreground); - // Paint_DrawPoint(x + i, y + j, Color_Foreground, DOT_PIXEL_DFT, DOT_STYLE_DFT); - } - } else { - if (*ptr & (0x80 >> (i % 8))) { - Paint_SetPixel(x + i, y + j, Color_Foreground); - // Paint_DrawPoint(x + i, y + j, Color_Foreground, DOT_PIXEL_DFT, DOT_STYLE_DFT); - } else { - Paint_SetPixel(x + i, y + j, Color_Background); - // Paint_DrawPoint(x + i, y + j, Color_Background, DOT_PIXEL_DFT, DOT_STYLE_DFT); - } - } - if (i % 8 == 7) { - ptr++; - } - } - if (font->Width % 8 != 0) { - ptr++; - } - } - break; - } - } - /* Point on the next character */ - p_text += 2; - /* Decrement the column position by 16 */ - x += font->Width; - } - } -} - -/****************************************************************************** -function: Display nummber -parameter: - Xstart 锛歑 coordinate - Ystart : Y coordinate - Nummber : The number displayed - Font 锛欰 structure pointer that displays a character size - Color_Foreground : Select the foreground color - Color_Background : Select the background color -******************************************************************************/ -#define ARRAY_LEN 255 -void Paint_DrawNum(UWORD Xpoint, UWORD Ypoint, int32_t Nummber, - sFONT* Font, UWORD Color_Foreground, UWORD Color_Background) -{ - - int16_t Num_Bit = 0, Str_Bit = 0; - uint8_t Str_Array[ARRAY_LEN] = {0}, Num_Array[ARRAY_LEN] = {0}; - uint8_t *pStr = Str_Array; - - if (Xpoint > Paint.Width || Ypoint > Paint.Height) { - Debug("Paint_DisNum Input exceeds the normal display range\r\n"); - return; - } - - //Converts a number to a string - while (Nummber) { - Num_Array[Num_Bit] = Nummber % 10 + '0'; - Num_Bit++; - Nummber /= 10; - } - - //The string is inverted - while (Num_Bit > 0) { - Str_Array[Str_Bit] = Num_Array[Num_Bit - 1]; - Str_Bit ++; - Num_Bit --; - } - - //show - Paint_DrawString_EN(Xpoint, Ypoint, (const char*)pStr, Font, Color_Background, Color_Foreground); -} - -/****************************************************************************** -function: Display time -parameter: - Xstart 锛歑 coordinate - Ystart : Y coordinate - pTime : Time-related structures - Font 锛欰 structure pointer that displays a character size - Color_Foreground : Select the foreground color - Color_Background : Select the background color -******************************************************************************/ -void Paint_DrawTime(UWORD Xstart, UWORD Ystart, PAINT_TIME *pTime, sFONT* Font, - UWORD Color_Foreground, UWORD Color_Background) -{ - uint8_t value[10] = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9'}; - - UWORD Dx = Font->Width; - - //Write data into the cache - Paint_DrawChar(Xstart , Ystart, value[pTime->Hour / 10], Font, Color_Background, Color_Foreground); - Paint_DrawChar(Xstart + Dx , Ystart, value[pTime->Hour % 10], Font, Color_Background, Color_Foreground); - Paint_DrawChar(Xstart + Dx + Dx / 4 + Dx / 2 , Ystart, ':' , Font, Color_Background, Color_Foreground); - Paint_DrawChar(Xstart + Dx * 2 + Dx / 2 , Ystart, value[pTime->Min / 10] , Font, Color_Background, Color_Foreground); - Paint_DrawChar(Xstart + Dx * 3 + Dx / 2 , Ystart, value[pTime->Min % 10] , Font, Color_Background, Color_Foreground); - Paint_DrawChar(Xstart + Dx * 4 + Dx / 2 - Dx / 4, Ystart, ':' , Font, Color_Background, Color_Foreground); - Paint_DrawChar(Xstart + Dx * 5 , Ystart, value[pTime->Sec / 10] , Font, Color_Background, Color_Foreground); - Paint_DrawChar(Xstart + Dx * 6 , Ystart, value[pTime->Sec % 10] , Font, Color_Background, Color_Foreground); -} - -/****************************************************************************** -function: Display monochrome bitmap -parameter: - image_buffer 锛欰 picture data converted to a bitmap -info: - Use a computer to convert the image into a corresponding array, - and then embed the array directly into Imagedata.cpp as a .c file. -******************************************************************************/ -void Paint_DrawBitMap(const unsigned char* image_buffer) -{ - UWORD x, y; - UDOUBLE Addr = 0; - - for (y = 0; y < Paint.HeightByte; y++) { - for (x = 0; x < Paint.WidthByte; x++) {//8 pixel = 1 byte - Addr = x + y * Paint.WidthByte; - Paint.Image[Addr] = (unsigned char)image_buffer[Addr]; - } - } -} diff --git a/Raspberry Pi/c/lib/GUI/GUI_Paint.h b/Raspberry Pi/c/lib/GUI/GUI_Paint.h deleted file mode 100644 index 393f65b..0000000 --- a/Raspberry Pi/c/lib/GUI/GUI_Paint.h +++ /dev/null @@ -1,203 +0,0 @@ -/****************************************************************************** -* | File : GUI_Paint.h -* | Author : Waveshare electronics -* | Function : Achieve drawing: draw points, lines, boxes, circles and -* their size, solid dotted line, solid rectangle hollow -* rectangle, solid circle hollow circle. -* | Info : -* Achieve display characters: Display a single character, string, number -* Achieve time display: adaptive size display time minutes and seconds -*---------------- -* | This version: V3.0 -* | Date : 2019-04-18 -* | Info : -* ----------------------------------------------------------------------------- -* V3.0(2019-04-18): -* 1.Change: -* Paint_DrawPoint(..., DOT_STYLE DOT_STYLE) -* => Paint_DrawPoint(..., DOT_STYLE Dot_Style) -* Paint_DrawLine(..., LINE_STYLE Line_Style, DOT_PIXEL Dot_Pixel) -* => Paint_DrawLine(..., DOT_PIXEL Line_width, LINE_STYLE Line_Style) -* Paint_DrawRectangle(..., DRAW_FILL Filled, DOT_PIXEL Dot_Pixel) -* => Paint_DrawRectangle(..., DOT_PIXEL Line_width, DRAW_FILL Draw_Fill) -* Paint_DrawCircle(..., DRAW_FILL Draw_Fill, DOT_PIXEL Dot_Pixel) -* => Paint_DrawCircle(..., DOT_PIXEL Line_width, DRAW_FILL Draw_Filll) -* -* ----------------------------------------------------------------------------- -* V2.0(2018-11-15): -* 1.add: Paint_NewImage() -* Create an image's properties -* 2.add: Paint_SelectImage() -* Select the picture to be drawn -* 3.add: Paint_SetRotate() -* Set the direction of the cache -* 4.add: Paint_RotateImage() -* Can flip the picture, Support 0-360 degrees, -* but only 90.180.270 rotation is better -* 4.add: Paint_SetMirroring() -* Can Mirroring the picture, horizontal, vertical, origin -* 5.add: Paint_DrawString_CN() -* Can display Chinese(GB1312) -* -* ----------------------------------------------------------------------------- -* V1.0(2018-07-17): -* Create library -* -* Permission is hereby granted, free of charge, to any person obtaining a copy -* of this software and associated documnetation files (the "Software"), to deal -* in the Software without restriction, including without limitation the rights -* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -* copies of the Software, and to permit persons to whom the Software is -* furished to do so, subject to the following conditions: -* -* The above copyright notice and this permission notice shall be included in -* all copies or substantial portions of the Software. -* -* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -* FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -* LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -* THE SOFTWARE. -* -******************************************************************************/ -#ifndef __GUI_PAINT_H -#define __GUI_PAINT_H - -#include "DEV_Config.h" -#include "../Fonts/fonts.h" - -/** - * Image attributes -**/ -typedef struct { - UBYTE *Image; - UWORD Width; - UWORD Height; - UWORD WidthMemory; - UWORD HeightMemory; - UWORD Color; - UWORD Rotate; - UWORD Mirror; - UWORD WidthByte; - UWORD HeightByte; -} PAINT; -extern PAINT Paint; - -/** - * Display rotate -**/ -#define ROTATE_0 0 -#define ROTATE_90 90 -#define ROTATE_180 180 -#define ROTATE_270 270 - -/** - * Display Flip -**/ -typedef enum { - MIRROR_NONE = 0x00, - MIRROR_HORIZONTAL = 0x01, - MIRROR_VERTICAL = 0x02, - MIRROR_ORIGIN = 0x03, -} MIRROR_IMAGE; -#define MIRROR_IMAGE_DFT MIRROR_NONE - -/** - * image color -**/ -#define WHITE 0xFF -#define BLACK 0x00 -#define RED BLACK - -#define IMAGE_BACKGROUND WHITE -#define FONT_FOREGROUND BLACK -#define FONT_BACKGROUND WHITE - -/** - * The size of the point -**/ -typedef enum { - DOT_PIXEL_1X1 = 1, // 1 x 1 - DOT_PIXEL_2X2 , // 2 X 2 - DOT_PIXEL_3X3 , // 3 X 3 - DOT_PIXEL_4X4 , // 4 X 4 - DOT_PIXEL_5X5 , // 5 X 5 - DOT_PIXEL_6X6 , // 6 X 6 - DOT_PIXEL_7X7 , // 7 X 7 - DOT_PIXEL_8X8 , // 8 X 8 -} DOT_PIXEL; -#define DOT_PIXEL_DFT DOT_PIXEL_1X1 //Default dot pilex - -/** - * Point size fill style -**/ -typedef enum { - DOT_FILL_AROUND = 1, // dot pixel 1 x 1 - DOT_FILL_RIGHTUP , // dot pixel 2 X 2 -} DOT_STYLE; -#define DOT_STYLE_DFT DOT_FILL_AROUND //Default dot pilex - -/** - * Line style, solid or dashed -**/ -typedef enum { - LINE_STYLE_SOLID = 0, - LINE_STYLE_DOTTED, -} LINE_STYLE; - -/** - * Whether the graphic is filled -**/ -typedef enum { - DRAW_FILL_EMPTY = 0, - DRAW_FILL_FULL, -} DRAW_FILL; - -/** - * Custom structure of a time attribute -**/ -typedef struct { - UWORD Year; //0000 - UBYTE Month; //1 - 12 - UBYTE Day; //1 - 30 - UBYTE Hour; //0 - 23 - UBYTE Min; //0 - 59 - UBYTE Sec; //0 - 59 -} PAINT_TIME; -extern PAINT_TIME sPaint_time; - -//init and Clear -void Paint_NewImage(UBYTE *image, UWORD Width, UWORD Height, UWORD Rotate, UWORD Color); -void Paint_SelectImage(UBYTE *image); -void Paint_SetRotate(UWORD Rotate); -void Paint_SetMirroring(UBYTE mirror); -void Paint_SetPixel(UWORD Xpoint, UWORD Ypoint, UWORD Color); - -void Paint_Clear(UWORD Color); -void Paint_ClearWindows(UWORD Xstart, UWORD Ystart, UWORD Xend, UWORD Yend, UWORD Color); - -//Drawing -void Paint_DrawPoint(UWORD Xpoint, UWORD Ypoint, UWORD Color, DOT_PIXEL Dot_Pixel, DOT_STYLE Dot_FillWay); -void Paint_DrawLine(UWORD Xstart, UWORD Ystart, UWORD Xend, UWORD Yend, UWORD Color, DOT_PIXEL Line_width, LINE_STYLE Line_Style); -void Paint_DrawRectangle(UWORD Xstart, UWORD Ystart, UWORD Xend, UWORD Yend, UWORD Color, DOT_PIXEL Line_width, DRAW_FILL Draw_Fill); -void Paint_DrawCircle(UWORD X_Center, UWORD Y_Center, UWORD Radius, UWORD Color, DOT_PIXEL Line_width, DRAW_FILL Draw_Fill); - -//Display string -void Paint_DrawChar(UWORD Xstart, UWORD Ystart, const char Acsii_Char, sFONT* Font, UWORD Color_Foreground, UWORD Color_Background); -void Paint_DrawString_EN(UWORD Xstart, UWORD Ystart, const char * pString, sFONT* Font, UWORD Color_Foreground, UWORD Color_Background); -void Paint_DrawString_CN(UWORD Xstart, UWORD Ystart, const char * pString, cFONT* font, UWORD Color_Foreground, UWORD Color_Background); -void Paint_DrawNum(UWORD Xpoint, UWORD Ypoint, int32_t Nummber, sFONT* Font, UWORD Color_Foreground, UWORD Color_Background); -void Paint_DrawTime(UWORD Xstart, UWORD Ystart, PAINT_TIME *pTime, sFONT* Font, UWORD Color_Foreground, UWORD Color_Background); - -//pic -void Paint_DrawBitMap(const unsigned char* image_buffer); - - -#endif - - - - - diff --git a/Raspberry Pi/c/lib/e-Paper/EPD_1in54.c b/Raspberry Pi/c/lib/e-Paper/EPD_1in54.c deleted file mode 100644 index a6dbc1c..0000000 --- a/Raspberry Pi/c/lib/e-Paper/EPD_1in54.c +++ /dev/null @@ -1,300 +0,0 @@ -/***************************************************************************** -* | File : EPD_1in54.C -* | Author : Waveshare team -* | Function : 1.54inch e-paper -* | Info : -*---------------- -* | This version: V3.0 -* | Date : 2019-06-12 -* | Info : -* ----------------------------------------------------------------------------- -* V3.0(2019-06-12): -* 1.Change: -* lut_full_update[] => EPD_1IN54_lut_full_update[] -* lut_partial_update[] => EPD_1IN54_lut_partial_update[] -* EPD_Reset() => EPD_1IN54_Reset() -* EPD_SendCommand() => EPD_1IN54_SendCommand() -* EPD_SendData() => EPD_1IN54_SendData() -* EPD_WaitUntilIdle() => EPD_1IN54_ReadBusy() -* EPD_SetLut() => EPD_1IN54_SetLut() -* EPD_SetWindow() => EPD_1IN54_SetWindow() -* EPD_SetCursor() => EPD_1IN54_SetCursor() -* EPD_TurnOnDisplay() => EPD_1IN54_TurnOnDisplay() -* EPD_Init() => EPD_1IN54_Init() -* EPD_Clear() => EPD_1IN54_Clear() -* EPD_Display() => EPD_1IN54_Display() -* EPD_Sleep() => EPD_1IN54_Sleep() -* 2.remove commands define: -* #define PANEL_SETTING 0x00 -* #define POWER_SETTING 0x01 -* #define POWER_OFF 0x02 -* #define POWER_OFF_SEQUENCE_SETTING 0x03 -* #define POWER_ON 0x04 -* #define POWER_ON_MEASURE 0x05 -* #define BOOSTER_SOFT_START 0x06 -* #define DEEP_SLEEP 0x07 -* #define DATA_START_TRANSMISSION_1 0x10 -* #define DATA_STOP 0x11 -* #define DISPLAY_REFRESH 0x12 -* #define DATA_START_TRANSMISSION_2 0x13 -* #define PLL_CONTROL 0x30 -* #define TEMPERATURE_SENSOR_COMMAND 0x40 -* #define TEMPERATURE_SENSOR_CALIBRATION 0x41 -* #define TEMPERATURE_SENSOR_WRITE 0x42 -* #define TEMPERATURE_SENSOR_READ 0x43 -* #define VCOM_AND_DATA_INTERVAL_SETTING 0x50 -* #define LOW_POWER_DETECTION 0x51 -* #define TCON_SETTING 0x60 -* #define TCON_RESOLUTION 0x61 -* #define SOURCE_AND_GATE_START_SETTING 0x62 -* #define GET_STATUS 0x71 -* #define AUTO_MEASURE_VCOM 0x80 -* #define VCOM_VALUE 0x81 -* #define VCM_DC_SETTING_REGISTER 0x82 -* #define PROGRAM_MODE 0xA0 -* #define ACTIVE_PROGRAM 0xA1 -* #define READ_OTP_DATA 0xA2 -* ----------------------------------------------------------------------------- -* V2.0(2018-10-30): -* 1.Remove:ImageBuff[EPD_1IN54_HEIGHT * EPD_1IN54_WIDTH / 8] -* 2.Change:EPD_Display(UBYTE *Image) -* Need to pass parameters: pointer to cached data -* 3.Change: -* EPD_RST -> EPD_RST_PIN -* EPD_DC -> EPD_DC_PIN -* EPD_CS -> EPD_CS_PIN -* EPD_BUSY -> EPD_BUSY_PIN -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "EPD_1in54.h" -#include "Debug.h" - -static const unsigned char EPD_1IN54_lut_full_update[] = { - 0x02, 0x02, 0x01, 0x11, 0x12, 0x12, 0x22, 0x22, - 0x66, 0x69, 0x69, 0x59, 0x58, 0x99, 0x99, 0x88, - 0x00, 0x00, 0x00, 0x00, 0xF8, 0xB4, 0x13, 0x51, - 0x35, 0x51, 0x51, 0x19, 0x01, 0x00 -}; - -static const unsigned char EPD_1IN54_lut_partial_update[] = { - 0x10, 0x18, 0x18, 0x08, 0x18, 0x18, 0x08, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x13, 0x14, 0x44, 0x12, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 -}; - -/****************************************************************************** -function : Software reset -parameter: -******************************************************************************/ -static void EPD_1IN54_Reset(void) -{ - DEV_Digital_Write(EPD_RST_PIN, 1); - DEV_Delay_ms(200); - DEV_Digital_Write(EPD_RST_PIN, 0); - DEV_Delay_ms(10); - DEV_Digital_Write(EPD_RST_PIN, 1); - DEV_Delay_ms(200); -} - -/****************************************************************************** -function : send command -parameter: - Reg : Command register -******************************************************************************/ -static void EPD_1IN54_SendCommand(UBYTE Reg) -{ - DEV_Digital_Write(EPD_DC_PIN, 0); - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_SPI_WriteByte(Reg); - DEV_Digital_Write(EPD_CS_PIN, 1); -} - -/****************************************************************************** -function : send data -parameter: - Data : Write data -******************************************************************************/ -static void EPD_1IN54_SendData(UBYTE Data) -{ - DEV_Digital_Write(EPD_DC_PIN, 1); - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_SPI_WriteByte(Data); - DEV_Digital_Write(EPD_CS_PIN, 1); -} - -/****************************************************************************** -function : Wait until the busy_pin goes LOW -parameter: -******************************************************************************/ -void EPD_1IN54_ReadBusy(void) -{ - Debug("e-Paper busy\r\n"); - while(DEV_Digital_Read(EPD_BUSY_PIN) == 1) { //LOW: idle, HIGH: busy - DEV_Delay_ms(100); - } - Debug("e-Paper busy release\r\n"); -} - -/****************************************************************************** -function : Setting the display window -parameter: -******************************************************************************/ -static void EPD_1IN54_SetWindow(UWORD Xstart, UWORD Ystart, UWORD Xend, UWORD Yend) -{ - EPD_1IN54_SendCommand(0x44); // SET_RAM_X_ADDRESS_START_END_POSITION - EPD_1IN54_SendData((Xstart >> 3) & 0xFF); - EPD_1IN54_SendData((Xend >> 3) & 0xFF); - - EPD_1IN54_SendCommand(0x45); // SET_RAM_Y_ADDRESS_START_END_POSITION - EPD_1IN54_SendData(Ystart & 0xFF); - EPD_1IN54_SendData((Ystart >> 8) & 0xFF); - EPD_1IN54_SendData(Yend & 0xFF); - EPD_1IN54_SendData((Yend >> 8) & 0xFF); -} - -/****************************************************************************** -function : Set Cursor -parameter: -******************************************************************************/ -static void EPD_1IN54_SetCursor(UWORD Xstart, UWORD Ystart) -{ - EPD_1IN54_SendCommand(0x4E); // SET_RAM_X_ADDRESS_COUNTER - EPD_1IN54_SendData((Xstart >> 3) & 0xFF); - - EPD_1IN54_SendCommand(0x4F); // SET_RAM_Y_ADDRESS_COUNTER - EPD_1IN54_SendData(Ystart & 0xFF); - EPD_1IN54_SendData((Ystart >> 8) & 0xFF); -} - -/****************************************************************************** -function : Turn On Display -parameter: -******************************************************************************/ -static void EPD_1IN54_TurnOnDisplay(void) -{ - EPD_1IN54_SendCommand(0x22); // DISPLAY_UPDATE_CONTROL_2 - EPD_1IN54_SendData(0xC4); - EPD_1IN54_SendCommand(0x20); // MASTER_ACTIVATION - EPD_1IN54_SendCommand(0xFF); // TERMINATE_FRAME_READ_WRITE - - EPD_1IN54_ReadBusy(); -} - -/****************************************************************************** -function : Initialize the e-Paper register -parameter: -******************************************************************************/ -void EPD_1IN54_Init(UBYTE Mode) -{ - EPD_1IN54_Reset(); - - EPD_1IN54_SendCommand(0x01); // DRIVER_OUTPUT_CONTROL - EPD_1IN54_SendData((EPD_1IN54_HEIGHT - 1) & 0xFF); - EPD_1IN54_SendData(((EPD_1IN54_HEIGHT - 1) >> 8) & 0xFF); - EPD_1IN54_SendData(0x00); // GD = 0; SM = 0; TB = 0; - - EPD_1IN54_SendCommand(0x0C); // BOOSTER_SOFT_START_CONTROL - EPD_1IN54_SendData(0xD7); - EPD_1IN54_SendData(0xD6); - EPD_1IN54_SendData(0x9D); - - EPD_1IN54_SendCommand(0x2C); // WRITE_VCOM_REGISTER - EPD_1IN54_SendData(0xA8); // VCOM 7C - - EPD_1IN54_SendCommand(0x3A); // SET_DUMMY_LINE_PERIOD - EPD_1IN54_SendData(0x1A); // 4 dummy lines per gate - - EPD_1IN54_SendCommand(0x3B); // SET_GATE_TIME - EPD_1IN54_SendData(0x08); // 2us per line - - EPD_1IN54_SendCommand(0x11); - EPD_1IN54_SendData(0x03); - - //set the look-up table register - EPD_1IN54_SendCommand(0x32); - if(Mode == EPD_1IN54_FULL){ - for (UWORD i = 0; i < 30; i++) { - EPD_1IN54_SendData(EPD_1IN54_lut_full_update[i]); - } - }else if(Mode == EPD_1IN54_PART){ - for (UWORD i = 0; i < 30; i++) { - EPD_1IN54_SendData(EPD_1IN54_lut_partial_update[i]); - } - }else{ - Debug("error, the Mode is EPD_1IN54_FULL or EPD_1IN54_PART"); - } - -} - -/****************************************************************************** -function : Clear screen -parameter: -******************************************************************************/ -void EPD_1IN54_Clear(void) -{ - UWORD Width, Height; - Width = (EPD_1IN54_WIDTH % 8 == 0)? (EPD_1IN54_WIDTH / 8 ): (EPD_1IN54_WIDTH / 8 + 1); - Height = EPD_1IN54_HEIGHT; - EPD_1IN54_SetWindow(0, 0, EPD_1IN54_WIDTH, EPD_1IN54_HEIGHT); - for (UWORD j = 0; j < Height; j++) { - EPD_1IN54_SetCursor(0, j); - EPD_1IN54_SendCommand(0x24); - for (UWORD i = 0; i < Width; i++) { - EPD_1IN54_SendData(0XFF); - } - } - EPD_1IN54_TurnOnDisplay(); -} - -/****************************************************************************** -function : Sends the image buffer in RAM to e-Paper and displays -parameter: -******************************************************************************/ -void EPD_1IN54_Display(UBYTE *Image) -{ - UWORD Width, Height; - Width = (EPD_1IN54_WIDTH % 8 == 0)? (EPD_1IN54_WIDTH / 8 ): (EPD_1IN54_WIDTH / 8 + 1); - Height = EPD_1IN54_HEIGHT; - - UDOUBLE Addr = 0; - // UDOUBLE Offset = ImageName; - EPD_1IN54_SetWindow(0, 0, EPD_1IN54_WIDTH, EPD_1IN54_HEIGHT); - for (UWORD j = 0; j < Height; j++) { - EPD_1IN54_SetCursor(0, j); - EPD_1IN54_SendCommand(0x24); - for (UWORD i = 0; i < Width; i++) { - Addr = i + j * Width; - EPD_1IN54_SendData(Image[Addr]); - } - } - EPD_1IN54_TurnOnDisplay(); -} - -/****************************************************************************** -function : Enter sleep mode -parameter: -******************************************************************************/ -void EPD_1IN54_Sleep(void) -{ - EPD_1IN54_SendCommand(0x10); - EPD_1IN54_SendData(0x01); -} diff --git a/Raspberry Pi/c/lib/e-Paper/EPD_1in54.h b/Raspberry Pi/c/lib/e-Paper/EPD_1in54.h deleted file mode 100644 index 310d39b..0000000 --- a/Raspberry Pi/c/lib/e-Paper/EPD_1in54.h +++ /dev/null @@ -1,104 +0,0 @@ -/***************************************************************************** -* | File : EPD_1in54.h -* | Author : Waveshare team -* | Function : 1.54inch e-paper -* | Info : -*---------------- -* | This version: V3.1 -* | Date : 2019-06-12 -* | Info : -* ----------------------------------------------------------------------------- -* V3.1(2019-06-12): -* 1.Change: -* lut_full_update[] => EPD_1IN54_lut_full_update[] -* lut_partial_update[] => EPD_1IN54_lut_partial_update[] -* EPD_Reset() => EPD_1IN54_Reset() -* EPD_SendCommand() => EPD_1IN54_SendCommand() -* EPD_SendData() => EPD_1IN54_SendData() -* EPD_WaitUntilIdle() => EPD_1IN54_ReadBusy() -* EPD_SetLut() => EPD_1IN54_SetLut() -* EPD_SetWindow() => EPD_1IN54_SetWindow() -* EPD_SetCursor() => EPD_1IN54_SetCursor() -* EPD_TurnOnDisplay() => EPD_1IN54_TurnOnDisplay() -* EPD_Init() => EPD_1IN54_Init() -* EPD_Clear() => EPD_1IN54_Clear() -* EPD_Display() => EPD_1IN54_Display() -* EPD_Sleep() => EPD_1IN54_Sleep() -* 2.remove commands define: -* #define PANEL_SETTING 0x00 -* #define POWER_SETTING 0x01 -* #define POWER_OFF 0x02 -* #define POWER_OFF_SEQUENCE_SETTING 0x03 -* #define POWER_ON 0x04 -* #define POWER_ON_MEASURE 0x05 -* #define BOOSTER_SOFT_START 0x06 -* #define DEEP_SLEEP 0x07 -* #define DATA_START_TRANSMISSION_1 0x10 -* #define DATA_STOP 0x11 -* #define DISPLAY_REFRESH 0x12 -* #define DATA_START_TRANSMISSION_2 0x13 -* #define PLL_CONTROL 0x30 -* #define TEMPERATURE_SENSOR_COMMAND 0x40 -* #define TEMPERATURE_SENSOR_CALIBRATION 0x41 -* #define TEMPERATURE_SENSOR_WRITE 0x42 -* #define TEMPERATURE_SENSOR_READ 0x43 -* #define VCOM_AND_DATA_INTERVAL_SETTING 0x50 -* #define LOW_POWER_DETECTION 0x51 -* #define TCON_SETTING 0x60 -* #define TCON_RESOLUTION 0x61 -* #define SOURCE_AND_GATE_START_SETTING 0x62 -* #define GET_STATUS 0x71 -* #define AUTO_MEASURE_VCOM 0x80 -* #define VCOM_VALUE 0x81 -* #define VCM_DC_SETTING_REGISTER 0x82 -* #define PROGRAM_MODE 0xA0 -* #define ACTIVE_PROGRAM 0xA1 -* #define READ_OTP_DATA 0xA2 -* ----------------------------------------------------------------------------- -* V2.0(2018-10-30): -* 1.Remove:ImageBuff[EPD_1IN54_HEIGHT * EPD_1IN54_WIDTH / 8] -* 2.Change:EPD_Display(UBYTE *Image) -* Need to pass parameters: pointer to cached data -* 3.Change: -* EPD_RST -> EPD_RST_PIN -* EPD_DC -> EPD_DC_PIN -* EPD_CS -> EPD_CS_PIN -* EPD_BUSY -> EPD_BUSY_PIN -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#ifndef __EPD_1IN54_H_ -#define __EPD_1IN54_H_ - -#include "DEV_Config.h" - -// Display resolution -#define EPD_1IN54_WIDTH 200 -#define EPD_1IN54_HEIGHT 200 - -#define EPD_1IN54_FULL 0 -#define EPD_1IN54_PART 1 - -void EPD_1IN54_Init(UBYTE Mode); -void EPD_1IN54_Clear(void); -void EPD_1IN54_Display(UBYTE *Image); -void EPD_1IN54_Sleep(void); - -#endif diff --git a/Raspberry Pi/c/lib/e-Paper/EPD_1in54_V2.c b/Raspberry Pi/c/lib/e-Paper/EPD_1in54_V2.c deleted file mode 100644 index c1c9d95..0000000 --- a/Raspberry Pi/c/lib/e-Paper/EPD_1in54_V2.c +++ /dev/null @@ -1,263 +0,0 @@ -/***************************************************************************** -* | File : EPD_1in54_V2.c -* | Author : Waveshare team -* | Function : 1.54inch e-paper V2 -* | Info : -*---------------- -* | This version: V1.0 -* | Date : 2019-06-11 -* | Info : -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "EPD_1in54_V2.h" -#include "Debug.h" - -/****************************************************************************** -function : Software reset -parameter: -******************************************************************************/ -static void EPD_1IN54_V2_Reset(void) -{ - DEV_Digital_Write(EPD_RST_PIN, 1); - DEV_Delay_ms(200); - DEV_Digital_Write(EPD_RST_PIN, 0); - DEV_Delay_ms(10); - DEV_Digital_Write(EPD_RST_PIN, 1); - DEV_Delay_ms(200); -} - -/****************************************************************************** -function : send command -parameter: - Reg : Command register -******************************************************************************/ -static void EPD_1IN54_V2_SendCommand(UBYTE Reg) -{ - DEV_Digital_Write(EPD_DC_PIN, 0); - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_SPI_WriteByte(Reg); - DEV_Digital_Write(EPD_CS_PIN, 1); -} - -/****************************************************************************** -function : send data -parameter: - Data : Write data -******************************************************************************/ -static void EPD_1IN54_V2_SendData(UBYTE Data) -{ - DEV_Digital_Write(EPD_DC_PIN, 1); - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_SPI_WriteByte(Data); - DEV_Digital_Write(EPD_CS_PIN, 1); -} - -/****************************************************************************** -function : Wait until the busy_pin goes LOW -parameter: -******************************************************************************/ -static void EPD_1IN54_V2_ReadBusy(void) -{ - Debug("e-Paper busy\r\n"); - // UBYTE busy; - // do { - // EPD_1IN54_V2_SendCommand(0x71); - // busy = DEV_Digital_Read(EPD_BUSY_PIN); - // busy =!(busy & 0x01); - // } while(busy); - // DEV_Delay_ms(200); - while(DEV_Digital_Read(EPD_BUSY_PIN) == 1) { //LOW: idle, HIGH: busy - DEV_Delay_ms(100); - } - Debug("e-Paper busy release\r\n"); -} - -/****************************************************************************** -function : Turn On Display full -parameter: -******************************************************************************/ -static void EPD_1IN54_V2_TurnOnDisplay(void) -{ - EPD_1IN54_V2_SendCommand(0x22); - EPD_1IN54_V2_SendData(0xF7); - EPD_1IN54_V2_SendCommand(0x20); - EPD_1IN54_V2_ReadBusy(); -} - -/****************************************************************************** -function : Turn On Display part -parameter: -******************************************************************************/ -static void EPD_1IN54_V2_TurnOnDisplayPart(void) -{ - EPD_1IN54_V2_SendCommand(0x22); - EPD_1IN54_V2_SendData(0xFF); - EPD_1IN54_V2_SendCommand(0x20); - EPD_1IN54_V2_ReadBusy(); -} - -/****************************************************************************** -function : Initialize the e-Paper register -parameter: -******************************************************************************/ -void EPD_1IN54_V2_Init(void) -{ - EPD_1IN54_V2_Reset(); - - EPD_1IN54_V2_ReadBusy(); - EPD_1IN54_V2_SendCommand(0x12); //SWRESET - EPD_1IN54_V2_ReadBusy(); - - EPD_1IN54_V2_SendCommand(0x01); //Driver output control - EPD_1IN54_V2_SendData(0xC7); - EPD_1IN54_V2_SendData(0x00); - EPD_1IN54_V2_SendData(0x01); - - EPD_1IN54_V2_SendCommand(0x11); //data entry mode - EPD_1IN54_V2_SendData(0x01); - - EPD_1IN54_V2_SendCommand(0x44); //set Ram-X address start/end position - EPD_1IN54_V2_SendData(0x00); - EPD_1IN54_V2_SendData(0x18); //0x0C-->(18+1)*8=200 - - EPD_1IN54_V2_SendCommand(0x45); //set Ram-Y address start/end position - EPD_1IN54_V2_SendData(0xC7); //0xC7-->(199+1)=200 - EPD_1IN54_V2_SendData(0x00); - EPD_1IN54_V2_SendData(0x00); - EPD_1IN54_V2_SendData(0x00); - - EPD_1IN54_V2_SendCommand(0x3C); //BorderWavefrom - EPD_1IN54_V2_SendData(0x01); - - EPD_1IN54_V2_SendCommand(0x18); - EPD_1IN54_V2_SendData(0x80); - - EPD_1IN54_V2_SendCommand(0x22); // //Load Temperature and waveform setting. - EPD_1IN54_V2_SendData(0XB1); - EPD_1IN54_V2_SendCommand(0x20); - - EPD_1IN54_V2_SendCommand(0x4E); // set RAM x address count to 0; - EPD_1IN54_V2_SendData(0x00); - EPD_1IN54_V2_SendCommand(0x4F); // set RAM y address count to 0X199; - EPD_1IN54_V2_SendData(0xC7); - EPD_1IN54_V2_SendData(0x00); - EPD_1IN54_V2_ReadBusy(); -} - -/****************************************************************************** -function : Clear screen -parameter: -******************************************************************************/ -void EPD_1IN54_V2_Clear(void) -{ - UWORD Width, Height; - Width = (EPD_1IN54_V2_WIDTH % 8 == 0)? (EPD_1IN54_V2_WIDTH / 8 ): (EPD_1IN54_V2_WIDTH / 8 + 1); - Height = EPD_1IN54_V2_HEIGHT; - - EPD_1IN54_V2_SendCommand(0x24); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_1IN54_V2_SendData(0XFF); - } - } - EPD_1IN54_V2_TurnOnDisplay(); -} - -/****************************************************************************** -function : Sends the image buffer in RAM to e-Paper and displays -parameter: -******************************************************************************/ -void EPD_1IN54_V2_Display(UBYTE *Image) -{ - UWORD Width, Height; - Width = (EPD_1IN54_V2_WIDTH % 8 == 0)? (EPD_1IN54_V2_WIDTH / 8 ): (EPD_1IN54_V2_WIDTH / 8 + 1); - Height = EPD_1IN54_V2_HEIGHT; - - UDOUBLE Addr = 0; - EPD_1IN54_V2_SendCommand(0x24); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - Addr = i + j * Width; - EPD_1IN54_V2_SendData(Image[Addr]); - } - } - EPD_1IN54_V2_TurnOnDisplay(); -} - -/****************************************************************************** -function : The image of the previous frame must be uploaded, otherwise the - first few seconds will display an exception. -parameter: -******************************************************************************/ -void EPD_1IN54_V2_DisplayPartBaseImage(UBYTE *Image) -{ - UWORD Width, Height; - Width = (EPD_1IN54_V2_WIDTH % 8 == 0)? (EPD_1IN54_V2_WIDTH / 8 ): (EPD_1IN54_V2_WIDTH / 8 + 1); - Height = EPD_1IN54_V2_HEIGHT; - - UDOUBLE Addr = 0; - EPD_1IN54_V2_SendCommand(0x24); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - Addr = i + j * Width; - EPD_1IN54_V2_SendData(Image[Addr]); - } - } - EPD_1IN54_V2_SendCommand(0x26); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - Addr = i + j * Width; - EPD_1IN54_V2_SendData(Image[Addr]); - } - } - EPD_1IN54_V2_TurnOnDisplayPart(); -} - -/****************************************************************************** -function : Sends the image buffer in RAM to e-Paper and displays -parameter: -******************************************************************************/ -void EPD_1IN54_V2_DisplayPart(UBYTE *Image) -{ - UWORD Width, Height; - Width = (EPD_1IN54_V2_WIDTH % 8 == 0)? (EPD_1IN54_V2_WIDTH / 8 ): (EPD_1IN54_V2_WIDTH / 8 + 1); - Height = EPD_1IN54_V2_HEIGHT; - - UDOUBLE Addr = 0; - EPD_1IN54_V2_SendCommand(0x24); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - Addr = i + j * Width; - EPD_1IN54_V2_SendData(Image[Addr]); - } - } - EPD_1IN54_V2_TurnOnDisplayPart(); -} -/****************************************************************************** -function : Enter sleep mode -parameter: -******************************************************************************/ -void EPD_1IN54_V2_Sleep(void) -{ - EPD_1IN54_V2_SendCommand(0x10); //enter deep sleep - EPD_1IN54_V2_SendData(0x01); - DEV_Delay_ms(100); -} diff --git a/Raspberry Pi/c/lib/e-Paper/EPD_1in54_V2.h b/Raspberry Pi/c/lib/e-Paper/EPD_1in54_V2.h deleted file mode 100644 index 83f39fb..0000000 --- a/Raspberry Pi/c/lib/e-Paper/EPD_1in54_V2.h +++ /dev/null @@ -1,46 +0,0 @@ -/***************************************************************************** -* | File : EPD_1in54_V2.h -* | Author : Waveshare team -* | Function : 1.54inch e-paper V2 -* | Info : -*---------------- -* | This version: V1.0 -* | Date : 2019-06-11 -* | Info : -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#ifndef __EPD_1IN54_V2_H_ -#define __EPD_1IN54_V2_H_ - -#include "DEV_Config.h" - -// Display resolution -#define EPD_1IN54_V2_WIDTH 200 -#define EPD_1IN54_V2_HEIGHT 200 - -void EPD_1IN54_V2_Init(void); -void EPD_1IN54_V2_Clear(void); -void EPD_1IN54_V2_Display(UBYTE *Image); -void EPD_1IN54_V2_DisplayPartBaseImage(UBYTE *Image); -void EPD_1IN54_V2_DisplayPart(UBYTE *Image); -void EPD_1IN54_V2_Sleep(void); - -#endif diff --git a/Raspberry Pi/c/lib/e-Paper/EPD_1in54b.c b/Raspberry Pi/c/lib/e-Paper/EPD_1in54b.c deleted file mode 100644 index c9fc13a..0000000 --- a/Raspberry Pi/c/lib/e-Paper/EPD_1in54b.c +++ /dev/null @@ -1,348 +0,0 @@ -/***************************************************************************** -* | File : EPD_1in54b.c -* | Author : Waveshare team -* | Function : 1.54inch e-paper b -* | Info : -*---------------- -* | This version: V3.1 -* | Date : 2019-06-12 -* | Info : -* ----------------------------------------------------------------------------- -* V3.1(2019-06-12): -* 1.Change: -* lut_vcom0[] => EPD_1IN54_lut_vcom0[] -* lut_w[] => EPD_1IN54_lut_w[] -* lut_b[] => EPD_1IN54B_lut_b[] -* lut_g1[] => EPD_1IN54B_lut_g1[] -* lut_g2[] => EPD_1IN54B_lut_g2[] -* lut_vcom1[] => EPD_1IN54B_lut_vcom1[] -* lut_red0[] => EPD_1IN54B_lut_red0[] -* lut_red1[] => EPD_1IN54B_lut_red1[] -* EPD_Reset() => EPD_1IN54B_Reset() -* EPD_SendCommand() => EPD_1IN54B_SendCommand() -* EPD_SendData() => EPD_1IN54B_SendData() -* EPD_WaitUntilIdle() => EPD_1IN54B_ReadBusy() -* EPD_SetLutBw() => EPD_1IN54B_SetLutBw() -* EPD_SetLutBw => EPD_1IN54B_SetLutBw() -* EPD_Init() => EPD_1IN54B_Init() -* EPD_Clear() => EPD_1IN54B_Clear() -* EPD_Display() => EPD_1IN54B_Display() -* EPD_Sleep() => EPD_1IN54B_Sleep() -* ----------------------------------------------------------------------------- -* V3.0(2019-04-24): -* 1.remove commands define: -* #define PANEL_SETTING 0x00 -* #define POWER_SETTING 0x01 -* #define POWER_OFF 0x02 -* #define POWER_OFF_SEQUENCE_SETTING 0x03 -* #define POWER_ON 0x04 -* #define POWER_ON_MEASURE 0x05 -* #define BOOSTER_SOFT_START 0x06 -* #define DEEP_SLEEP 0x07 -* #define DATA_START_TRANSMISSION_1 0x10 -* #define DATA_STOP 0x11 -* #define DISPLAY_REFRESH 0x12 -* #define DATA_START_TRANSMISSION_2 0x13 -* #define PLL_CONTROL 0x30 -* #define TEMPERATURE_SENSOR_COMMAND 0x40 -* #define TEMPERATURE_SENSOR_CALIBRATION 0x41 -* #define TEMPERATURE_SENSOR_WRITE 0x42 -* #define TEMPERATURE_SENSOR_READ 0x43 -* #define VCOM_AND_DATA_INTERVAL_SETTING 0x50 -* #define LOW_POWER_DETECTION 0x51 -* #define TCON_SETTING 0x60 -* #define TCON_RESOLUTION 0x61 -* #define SOURCE_AND_GATE_START_SETTING 0x62 -* #define GET_STATUS 0x71 -* #define AUTO_MEASURE_VCOM 0x80 -* #define VCOM_VALUE 0x81 -* #define VCM_DC_SETTING_REGISTER 0x82 -* #define PROGRAM_MODE 0xA0 -* #define ACTIVE_PROGRAM 0xA1 -* #define READ_OTP_DATA 0xA2 -* -* ----------------------------------------------------------------------------- -* V2.0(2018-10-30): -* 1.Remove:ImageBuff[EPD_1IN54B_HEIGHT * EPD_1IN54B_WIDTH / 8] -* 2.Change:EPD_Display(UBYTE *Image) -* Need to pass parameters: pointer to cached data -* 3.Change: -* EPD_RST -> EPD_RST_PIN -* EPD_DC -> EPD_DC_PIN -* EPD_CS -> EPD_CS_PIN -* EPD_BUSY -> EPD_BUSY_PIN -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "EPD_1in54b.h" -#include "Debug.h" - -const unsigned char EPD_1IN54B_lut_vcom0[] = {0x0E, 0x14, 0x01, 0x0A, 0x06, 0x04, 0x0A, 0x0A, 0x0F, 0x03, 0x03, 0x0C, 0x06, 0x0A, 0x00}; -const unsigned char EPD_1IN54B_lut_w[] = {0x0E, 0x14, 0x01, 0x0A, 0x46, 0x04, 0x8A, 0x4A, 0x0F, 0x83, 0x43, 0x0C, 0x86, 0x0A, 0x04}; -const unsigned char EPD_1IN54B_lut_b[] = {0x0E, 0x14, 0x01, 0x8A, 0x06, 0x04, 0x8A, 0x4A, 0x0F, 0x83, 0x43, 0x0C, 0x06, 0x4A, 0x04}; -const unsigned char EPD_1IN54B_lut_g1[] = {0x8E, 0x94, 0x01, 0x8A, 0x06, 0x04, 0x8A, 0x4A, 0x0F, 0x83, 0x43, 0x0C, 0x06, 0x0A, 0x04}; -const unsigned char EPD_1IN54B_lut_g2[] = {0x8E, 0x94, 0x01, 0x8A, 0x06, 0x04, 0x8A, 0x4A, 0x0F, 0x83, 0x43, 0x0C, 0x06, 0x0A, 0x04}; -const unsigned char EPD_1IN54B_lut_vcom1[] = {0x03, 0x1D, 0x01, 0x01, 0x08, 0x23, 0x37, 0x37, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}; -const unsigned char EPD_1IN54B_lut_red0[] = {0x83, 0x5D, 0x01, 0x81, 0x48, 0x23, 0x77, 0x77, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}; -const unsigned char EPD_1IN54B_lut_red1[] = {0x03, 0x1D, 0x01, 0x01, 0x08, 0x23, 0x37, 0x37, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}; - -/****************************************************************************** -function : Software reset -parameter: -******************************************************************************/ -static void EPD_1IN54B_Reset(void) -{ - DEV_Digital_Write(EPD_RST_PIN, 1); - DEV_Delay_ms(100); - DEV_Digital_Write(EPD_RST_PIN, 0); - DEV_Delay_ms(10); - DEV_Digital_Write(EPD_RST_PIN, 1); - DEV_Delay_ms(100); -} - -/****************************************************************************** -function : send command -parameter: - Reg : Command register -******************************************************************************/ -static void EPD_1IN54B_SendCommand(UBYTE Reg) -{ - DEV_Digital_Write(EPD_DC_PIN, 0); - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_SPI_WriteByte(Reg); - DEV_Digital_Write(EPD_CS_PIN, 1); -} - -/****************************************************************************** -function : send data -parameter: - Data : Write data -******************************************************************************/ -static void EPD_1IN54B_SendData(UBYTE Data) -{ - DEV_Digital_Write(EPD_DC_PIN, 1); - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_SPI_WriteByte(Data); - DEV_Digital_Write(EPD_CS_PIN, 1); -} - -/****************************************************************************** -function : Wait until the busy_pin goes LOW -parameter: -******************************************************************************/ -static void EPD_1IN54B_ReadBusy(void) -{ - Debug("e-Paper busy\r\n"); - while(1) { - if(DEV_Digital_Read(EPD_BUSY_PIN) == 1) - break; - } - DEV_Delay_ms(200); - Debug("e-Paper busy release\r\n"); -} - -/****************************************************************************** -function : Set the look-up black and white tables -parameter: -******************************************************************************/ -static void EPD_1IN54B_SetLutBw(void) -{ - UWORD count; - EPD_1IN54B_SendCommand(0x20);// g vcom - for(count = 0; count < 15; count++) { - EPD_1IN54B_SendData(EPD_1IN54B_lut_vcom0[count]); - } - EPD_1IN54B_SendCommand(0x21);// g ww -- - for(count = 0; count < 15; count++) { - EPD_1IN54B_SendData(EPD_1IN54B_lut_w[count]); - } - EPD_1IN54B_SendCommand(0x22);// g bw r - for(count = 0; count < 15; count++) { - EPD_1IN54B_SendData(EPD_1IN54B_lut_b[count]); - } - EPD_1IN54B_SendCommand(0x23);// g wb w - for(count = 0; count < 15; count++) { - EPD_1IN54B_SendData(EPD_1IN54B_lut_g1[count]); - } - EPD_1IN54B_SendCommand(0x24);// g bb b - for(count = 0; count < 15; count++) { - EPD_1IN54B_SendData(EPD_1IN54B_lut_g2[count]); - } -} - -/****************************************************************************** -function : Set the look-up red tables -parameter: -******************************************************************************/ -static void EPD_1IN54B_SetLutRed(void) -{ - UWORD count; - EPD_1IN54B_SendCommand(0x25); - for(count = 0; count < 15; count++) { - EPD_1IN54B_SendData(EPD_1IN54B_lut_vcom1[count]); - } - EPD_1IN54B_SendCommand(0x26); - for(count = 0; count < 15; count++) { - EPD_1IN54B_SendData(EPD_1IN54B_lut_red0[count]); - } - EPD_1IN54B_SendCommand(0x27); - for(count = 0; count < 15; count++) { - EPD_1IN54B_SendData(EPD_1IN54B_lut_red1[count]); - } -} - -/****************************************************************************** -function : Initialize the e-Paper register -parameter: -******************************************************************************/ -void EPD_1IN54B_Init(void) -{ - EPD_1IN54B_Reset(); - - EPD_1IN54B_SendCommand(0x01);// POWER_SETTING - EPD_1IN54B_SendData(0x07); - EPD_1IN54B_SendData(0x00); - EPD_1IN54B_SendData(0x08); - EPD_1IN54B_SendData(0x00); - EPD_1IN54B_SendCommand(0x06);// BOOSTER_SOFT_START - EPD_1IN54B_SendData(0x07); - EPD_1IN54B_SendData(0x07); - EPD_1IN54B_SendData(0x07); - EPD_1IN54B_SendCommand(0x04);// POWER_ON - - EPD_1IN54B_ReadBusy(); - - EPD_1IN54B_SendCommand(0X00);// PANEL_SETTING - EPD_1IN54B_SendData(0xcf); - EPD_1IN54B_SendCommand(0X50);// VCOM_AND_DATA_INTERVAL_SETTING - EPD_1IN54B_SendData(0x37);// 0xF0 - EPD_1IN54B_SendCommand(0x30);// PLL_CONTROL - EPD_1IN54B_SendData(0x39); - EPD_1IN54B_SendCommand(0x61);// TCON_RESOLUTION set x and y - EPD_1IN54B_SendData(0xC8);// 200 - EPD_1IN54B_SendData(0x00);// y High eight: 0 - EPD_1IN54B_SendData(0xC8);// y Low eight: 200 - EPD_1IN54B_SendCommand(0x82);// VCM_DC_SETTING_REGISTER - EPD_1IN54B_SendData(0x0E); - - EPD_1IN54B_SetLutBw(); - EPD_1IN54B_SetLutRed(); -} - -/****************************************************************************** -function : Clear screen -parameter: -******************************************************************************/ -void EPD_1IN54B_Clear(void) -{ - UWORD Width, Height; - Width = (EPD_1IN54B_WIDTH % 8 == 0)? (EPD_1IN54B_WIDTH / 8 ): (EPD_1IN54B_WIDTH / 8 + 1); - Height = EPD_1IN54B_HEIGHT; - - //send black data - EPD_1IN54B_SendCommand(0x10);// DATA_START_TRANSMISSION_1 - DEV_Delay_ms(2); - for(UWORD i = 0; i < Height; i++) { - for(UWORD i = 0; i < Width; i++) { - EPD_1IN54B_SendData(0xFF); - EPD_1IN54B_SendData(0xFF); - } - } - DEV_Delay_ms(2); - - //send red data - EPD_1IN54B_SendCommand(0x13);// DATA_START_TRANSMISSION_2 - DEV_Delay_ms(2); - for(UWORD i = 0; i < Height; i++) { - for(UWORD i = 0; i < Width; i++) { - EPD_1IN54B_SendData(0xFF); - } - } - DEV_Delay_ms(2); - - EPD_1IN54B_SendCommand(0x12);// DISPLAY_REFRESH - EPD_1IN54B_ReadBusy(); -} - -/****************************************************************************** -function : Sends the image buffer in RAM to e-Paper and displays -parameter: -******************************************************************************/ -void EPD_1IN54B_Display(const UBYTE *blackimage, const UBYTE *redimage) -{ - UBYTE Temp = 0x00; - UWORD Width, Height; - Width = (EPD_1IN54B_WIDTH % 8 == 0)? (EPD_1IN54B_WIDTH / 8 ): (EPD_1IN54B_WIDTH / 8 + 1); - Height = EPD_1IN54B_HEIGHT; - - EPD_1IN54B_SendCommand(0x10);// DATA_START_TRANSMISSION_1 - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - Temp = 0x00; - for (int bit = 0; bit < 4; bit++) { - if ((blackimage[i + j * Width] & (0x80 >> bit)) != 0) { - Temp |= 0xC0 >> (bit * 2); - } - } - EPD_1IN54B_SendData(Temp); - Temp = 0x00; - for (int bit = 4; bit < 8; bit++) { - if ((blackimage[i + j * Width] & (0x80 >> bit)) != 0) { - Temp |= 0xC0 >> ((bit - 4) * 2); - } - } - EPD_1IN54B_SendData(Temp); - } - } - DEV_Delay_ms(2); - - EPD_1IN54B_SendCommand(0x13);// DATA_START_TRANSMISSION_2 - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_1IN54B_SendData(redimage[i + j * Width]); - } - } - DEV_Delay_ms(2); - - //Display refresh - EPD_1IN54B_SendCommand(0x12);// DISPLAY_REFRESH - EPD_1IN54B_ReadBusy(); -} - -/****************************************************************************** -function : Enter sleep mode -parameter: -******************************************************************************/ -void EPD_1IN54B_Sleep(void) -{ - EPD_1IN54B_SendCommand(0x50);// VCOM_AND_DATA_INTERVAL_SETTING - EPD_1IN54B_SendData(0x17); - EPD_1IN54B_SendCommand(0x82);// VCM_DC_SETTING_REGISTER - EPD_1IN54B_SendData(0x00); - EPD_1IN54B_SendCommand(0x01);// POWER_SETTING - EPD_1IN54B_SendData(0x02); - EPD_1IN54B_SendData(0x00); - EPD_1IN54B_SendData(0x00); - EPD_1IN54B_SendData(0x00); - EPD_1IN54B_ReadBusy(); - DEV_Delay_ms(1000); - - EPD_1IN54B_SendCommand(0x02);// POWER_OFF -} diff --git a/Raspberry Pi/c/lib/e-Paper/EPD_1in54b.h b/Raspberry Pi/c/lib/e-Paper/EPD_1in54b.h deleted file mode 100644 index 1c70a56..0000000 --- a/Raspberry Pi/c/lib/e-Paper/EPD_1in54b.h +++ /dev/null @@ -1,108 +0,0 @@ -/***************************************************************************** -* | File : EPD_1in54b.h -* | Author : Waveshare team -* | Function : 1.54inch e-paper b -* | Info : -*---------------- -* | This version: V3.1 -* | Date : 2019-06-12 -* | Info : -* ----------------------------------------------------------------------------- -* V3.1(2019-06-12): -* 1.Change: -* lut_vcom0[] => EPD_1IN54_lut_vcom0[] -* lut_w[] => EPD_1IN54_lut_w[] -* lut_b[] => EPD_1IN54B_lut_b[] -* lut_g1[] => EPD_1IN54B_lut_g1[] -* lut_g2[] => EPD_1IN54B_lut_g2[] -* lut_vcom1[] => EPD_1IN54B_lut_vcom1[] -* lut_red0[] => EPD_1IN54B_lut_red0[] -* lut_red1[] => EPD_1IN54B_lut_red1[] -* EPD_Reset() => EPD_1IN54B_Reset() -* EPD_SendCommand() => EPD_1IN54B_SendCommand() -* EPD_SendData() => EPD_1IN54B_SendData() -* EPD_WaitUntilIdle() => EPD_1IN54B_ReadBusy() -* EPD_SetLutBw() => EPD_1IN54B_SetLutBw() -* EPD_SetLutBw => EPD_1IN54B_SetLutBw() -* EPD_Init() => EPD_1IN54B_Init() -* EPD_Clear() => EPD_1IN54B_Clear() -* EPD_Display() => EPD_1IN54B_Display() -* EPD_Sleep() => EPD_1IN54B_Sleep() -* ----------------------------------------------------------------------------- -* V3.0(2019-04-24): -* 1.remove commands define: -* #define PANEL_SETTING 0x00 -* #define POWER_SETTING 0x01 -* #define POWER_OFF 0x02 -* #define POWER_OFF_SEQUENCE_SETTING 0x03 -* #define POWER_ON 0x04 -* #define POWER_ON_MEASURE 0x05 -* #define BOOSTER_SOFT_START 0x06 -* #define DEEP_SLEEP 0x07 -* #define DATA_START_TRANSMISSION_1 0x10 -* #define DATA_STOP 0x11 -* #define DISPLAY_REFRESH 0x12 -* #define DATA_START_TRANSMISSION_2 0x13 -* #define PLL_CONTROL 0x30 -* #define TEMPERATURE_SENSOR_COMMAND 0x40 -* #define TEMPERATURE_SENSOR_CALIBRATION 0x41 -* #define TEMPERATURE_SENSOR_WRITE 0x42 -* #define TEMPERATURE_SENSOR_READ 0x43 -* #define VCOM_AND_DATA_INTERVAL_SETTING 0x50 -* #define LOW_POWER_DETECTION 0x51 -* #define TCON_SETTING 0x60 -* #define TCON_RESOLUTION 0x61 -* #define SOURCE_AND_GATE_START_SETTING 0x62 -* #define GET_STATUS 0x71 -* #define AUTO_MEASURE_VCOM 0x80 -* #define VCOM_VALUE 0x81 -* #define VCM_DC_SETTING_REGISTER 0x82 -* #define PROGRAM_MODE 0xA0 -* #define ACTIVE_PROGRAM 0xA1 -* #define READ_OTP_DATA 0xA2 -* -* ----------------------------------------------------------------------------- -* V2.0(2018-10-30): -* 1.Remove:ImageBuff[EPD_1IN54B_HEIGHT * EPD_1IN54B_WIDTH / 8] -* 2.Change:EPD_Display(UBYTE *Image) -* Need to pass parameters: pointer to cached data -* 3.Change: -* EPD_RST -> EPD_RST_PIN -* EPD_DC -> EPD_DC_PIN -* EPD_CS -> EPD_CS_PIN -* EPD_BUSY -> EPD_BUSY_PIN -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#ifndef __EPD_1IN54B_H_ -#define __EPD_1IN54B_H_ - -#include "DEV_Config.h" - -// Display resolution -#define EPD_1IN54B_WIDTH 200 -#define EPD_1IN54B_HEIGHT 200 - -void EPD_1IN54B_Init(void); -void EPD_1IN54B_Clear(void); -void EPD_1IN54B_Display(const UBYTE *blackimage, const UBYTE *redimage); -void EPD_1IN54B_Sleep(void); - -#endif diff --git a/Raspberry Pi/c/lib/e-Paper/EPD_1in54c.c b/Raspberry Pi/c/lib/e-Paper/EPD_1in54c.c deleted file mode 100644 index 9e8a459..0000000 --- a/Raspberry Pi/c/lib/e-Paper/EPD_1in54c.c +++ /dev/null @@ -1,240 +0,0 @@ -/***************************************************************************** -* | File : EPD_1in54c.C -* | Author : Waveshare team -* | Function : 1.54inch e-paper c -* | Info : -*---------------- -* | This version: V3.1 -* | Date : 2019-06-12 -* | Info : -* ----------------------------------------------------------------------------- -* V3.1(2019-06-12): -* 1.Change: -* EPD_Reset() => EPD_1IN54C_Reset() -* EPD_SendCommand() => EPD_1IN54C_SendCommand() -* EPD_SendData() => EPD_1IN54C_SendData() -* EPD_WaitUntilIdle() => EPD_1IN54C_ReadBusy() -* EPD_Init() => EPD_1IN54C_Init() -* EPD_Clear() => EPD_1IN54C_Clear() -* EPD_Display() => EPD_1IN54C_Display() -* EPD_Sleep() => EPD_1IN54C_Sleep() -* 2.remove commands define: -* #define PANEL_SETTING 0x00 -* #define POWER_SETTING 0x01 -* #define POWER_OFF 0x02 -* #define POWER_OFF_SEQUENCE_SETTING 0x03 -* #define POWER_ON 0x04 -* #define POWER_ON_MEASURE 0x05 -* #define BOOSTER_SOFT_START 0x06 -* #define DEEP_SLEEP 0x07 -* #define DATA_START_TRANSMISSION_1 0x10 -* #define DATA_STOP 0x11 -* #define DISPLAY_REFRESH 0x12 -* #define DATA_START_TRANSMISSION_2 0x13 -* #define PLL_CONTROL 0x30 -* #define TEMPERATURE_SENSOR_COMMAND 0x40 -* #define TEMPERATURE_SENSOR_CALIBRATION 0x41 -* #define TEMPERATURE_SENSOR_WRITE 0x42 -* #define TEMPERATURE_SENSOR_READ 0x43 -* #define VCOM_AND_DATA_INTERVAL_SETTING 0x50 -* #define LOW_POWER_DETECTION 0x51 -* #define TCON_SETTING 0x60 -* #define TCON_RESOLUTION 0x61 -* #define SOURCE_AND_GATE_START_SETTING 0x62 -* #define GET_STATUS 0x71 -* #define AUTO_MEASURE_VCOM 0x80 -* #define VCOM_VALUE 0x81 -* #define VCM_DC_SETTING_REGISTER 0x82 -* #define PROGRAM_MODE 0xA0 -* #define ACTIVE_PROGRAM 0xA1 -* #define READ_OTP_DATA 0xA2 -* ----------------------------------------------------------------------------- -* V2.0(2018-11-14): -* 1.Remove:ImageBuff[EPD_1IN54C_HEIGHT * EPD_1IN54C_WIDTH / 8] -* 2.Change:EPD_Display(UBYTE *Image) -* Need to pass parameters: pointer to cached data -* 3.Change: -* EPD_RST -> EPD_RST_PIN -* EPD_DC -> EPD_DC_PIN -* EPD_CS -> EPD_CS_PIN -* EPD_BUSY -> EPD_BUSY_PIN -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "EPD_1in54c.h" -#include "Debug.h" - -/****************************************************************************** -function : Software reset -parameter: -******************************************************************************/ -static void EPD_1IN54C_Reset(void) -{ - DEV_Digital_Write(EPD_RST_PIN, 1); - DEV_Delay_ms(10); - DEV_Digital_Write(EPD_RST_PIN, 0); - DEV_Delay_ms(10); - DEV_Digital_Write(EPD_RST_PIN, 1); - DEV_Delay_ms(10); -} - -/****************************************************************************** -function : send command -parameter: - Reg : Command register -******************************************************************************/ -static void EPD_1IN54C_SendCommand(UBYTE Reg) -{ - DEV_Digital_Write(EPD_DC_PIN, 0); - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_SPI_WriteByte(Reg); - DEV_Digital_Write(EPD_CS_PIN, 1); -} - -/****************************************************************************** -function : send data -parameter: - Data : Write data -******************************************************************************/ -static void EPD_1IN54C_SendData(UBYTE Data) -{ - DEV_Digital_Write(EPD_DC_PIN, 1); - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_SPI_WriteByte(Data); - DEV_Digital_Write(EPD_CS_PIN, 1); -} - -/****************************************************************************** -function : Wait until the busy_pin goes LOW -parameter: -******************************************************************************/ -static void EPD_1IN54C_ReadBusy(void) -{ - unsigned char busy; - do { - EPD_1IN54C_SendCommand(0x71); - busy = DEV_Digital_Read(EPD_BUSY_PIN); - busy =!(busy & 0x01); - } while(busy); - DEV_Delay_ms(200); -} - -/****************************************************************************** -function : Initialize the e-Paper register -parameter: -******************************************************************************/ -void EPD_1IN54C_Init(void) -{ - EPD_1IN54C_Reset(); - - EPD_1IN54C_SendCommand(0x06); //boost soft start - EPD_1IN54C_SendData(0x17); - EPD_1IN54C_SendData(0x17); - EPD_1IN54C_SendData(0x17); - EPD_1IN54C_SendCommand(0x04); - - EPD_1IN54C_ReadBusy(); - - EPD_1IN54C_SendCommand(0x00); //panel setting - EPD_1IN54C_SendData(0x0f); //LUT from OTP,160x296 - EPD_1IN54C_SendData(0x0d); //VCOM to 0V fast - - EPD_1IN54C_SendCommand(0x61); //resolution setting - EPD_1IN54C_SendData(0x98); //152 - EPD_1IN54C_SendData(0x00); //152 - EPD_1IN54C_SendData(0x98); - - EPD_1IN54C_SendCommand(0X50); //VCOM AND DATA INTERVAL SETTING - EPD_1IN54C_SendData(0x77); //WBmode:VBDF 17|D7 VBDW 97 VBDB 57 WBRmode:VBDF F7 VBDW 77 VBDB 37 VBDR B7 -} - -/****************************************************************************** -function : Clear screen -parameter: -******************************************************************************/ -void EPD_1IN54C_Clear(void) -{ - UWORD Width, Height; - Width = (EPD_1IN54C_WIDTH % 8 == 0)? (EPD_1IN54C_WIDTH / 8 ): (EPD_1IN54C_WIDTH / 8 + 1); - Height = EPD_1IN54C_HEIGHT; - - //send black data - EPD_1IN54C_SendCommand(0x10); - for(UWORD i = 0; i < Height; i++) { - for(UWORD i = 0; i < Width; i++) { - EPD_1IN54C_SendData(0xFF); - } - } - - //send red data - EPD_1IN54C_SendCommand(0x13); - for(UWORD i = 0; i < Height; i++) { - for(UWORD i = 0; i < Width; i++) { - EPD_1IN54C_SendData(0xFF); - } - } - - //Display refresh - EPD_1IN54C_SendCommand(0x12); - EPD_1IN54C_ReadBusy(); -} - -/****************************************************************************** -function : Sends the image buffer in RAM to e-Paper and displays -parameter: -******************************************************************************/ -void EPD_1IN54C_Display(const UBYTE *blackimage, const UBYTE *redimage) -{ - UWORD Width, Height; - Width = (EPD_1IN54C_WIDTH % 8 == 0)? (EPD_1IN54C_WIDTH / 8 ): (EPD_1IN54C_WIDTH / 8 + 1); - Height = EPD_1IN54C_HEIGHT; - - //send black data - EPD_1IN54C_SendCommand(0x10); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_1IN54C_SendData(blackimage[i + j * Width]); - } - } - - //send red data - EPD_1IN54C_SendCommand(0x13); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_1IN54C_SendData(redimage[i + j * Width]); - } - } - - //Display refresh - EPD_1IN54C_SendCommand(0x12); - EPD_1IN54C_ReadBusy(); -} - -/****************************************************************************** -function : Enter sleep mode -parameter: -******************************************************************************/ -void EPD_1IN54C_Sleep(void) -{ - EPD_1IN54C_SendCommand(0X02); //power off - EPD_1IN54C_ReadBusy(); - EPD_1IN54C_SendCommand(0X07); //deep sleep - EPD_1IN54C_SendData(0xA5); -} diff --git a/Raspberry Pi/c/lib/e-Paper/EPD_1in54c.h b/Raspberry Pi/c/lib/e-Paper/EPD_1in54c.h deleted file mode 100644 index c70f1ff..0000000 --- a/Raspberry Pi/c/lib/e-Paper/EPD_1in54c.h +++ /dev/null @@ -1,95 +0,0 @@ -/***************************************************************************** -* | File : EPD_1in54c.h -* | Author : Waveshare team -* | Function : 1.54inch e-paper c -* | Info : -*---------------- -* | This version: V3.1 -* | Date : 2019-06-12 -* | Info : -* ----------------------------------------------------------------------------- -* V3.1(2019-06-12): -* 1.Change: -* EPD_Reset() => EPD_1IN54C_Reset() -* EPD_SendCommand() => EPD_1IN54C_SendCommand() -* EPD_SendData() => EPD_1IN54C_SendData() -* EPD_WaitUntilIdle() => EPD_1IN54C_ReadBusy() -* EPD_Init() => EPD_1IN54C_Init() -* EPD_Clear() => EPD_1IN54C_Clear() -* EPD_Display() => EPD_1IN54C_Display() -* EPD_Sleep() => EPD_1IN54C_Sleep() -* 2.remove commands define: -* #define PANEL_SETTING 0x00 -* #define POWER_SETTING 0x01 -* #define POWER_OFF 0x02 -* #define POWER_OFF_SEQUENCE_SETTING 0x03 -* #define POWER_ON 0x04 -* #define POWER_ON_MEASURE 0x05 -* #define BOOSTER_SOFT_START 0x06 -* #define DEEP_SLEEP 0x07 -* #define DATA_START_TRANSMISSION_1 0x10 -* #define DATA_STOP 0x11 -* #define DISPLAY_REFRESH 0x12 -* #define DATA_START_TRANSMISSION_2 0x13 -* #define PLL_CONTROL 0x30 -* #define TEMPERATURE_SENSOR_COMMAND 0x40 -* #define TEMPERATURE_SENSOR_CALIBRATION 0x41 -* #define TEMPERATURE_SENSOR_WRITE 0x42 -* #define TEMPERATURE_SENSOR_READ 0x43 -* #define VCOM_AND_DATA_INTERVAL_SETTING 0x50 -* #define LOW_POWER_DETECTION 0x51 -* #define TCON_SETTING 0x60 -* #define TCON_RESOLUTION 0x61 -* #define SOURCE_AND_GATE_START_SETTING 0x62 -* #define GET_STATUS 0x71 -* #define AUTO_MEASURE_VCOM 0x80 -* #define VCOM_VALUE 0x81 -* #define VCM_DC_SETTING_REGISTER 0x82 -* #define PROGRAM_MODE 0xA0 -* #define ACTIVE_PROGRAM 0xA1 -* #define READ_OTP_DATA 0xA2 -* ----------------------------------------------------------------------------- -* V2.0(2018-11-14): -* 1.Remove:ImageBuff[EPD_1IN54C_HEIGHT * EPD_1IN54C_WIDTH / 8] -* 2.Change:EPD_Display(UBYTE *Image) -* Need to pass parameters: pointer to cached data -* 3.Change: -* EPD_RST -> EPD_RST_PIN -* EPD_DC -> EPD_DC_PIN -* EPD_CS -> EPD_CS_PIN -* EPD_BUSY -> EPD_BUSY_PIN -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#ifndef __EPD_1IN54C_H_ -#define __EPD_1IN54C_H_ - -#include "DEV_Config.h" - -// Display resolution -#define EPD_1IN54C_WIDTH 152 -#define EPD_1IN54C_HEIGHT 152 - -void EPD_1IN54C_Init(void); -void EPD_1IN54C_Clear(void); -void EPD_1IN54C_Display(const UBYTE *blackimage, const UBYTE *redimage); -void EPD_1IN54C_Sleep(void); - -#endif diff --git a/Raspberry Pi/c/lib/e-Paper/EPD_2in13.c b/Raspberry Pi/c/lib/e-Paper/EPD_2in13.c deleted file mode 100644 index 70ee551..0000000 --- a/Raspberry Pi/c/lib/e-Paper/EPD_2in13.c +++ /dev/null @@ -1,255 +0,0 @@ -/***************************************************************************** -* | File : EPD_2IN13.c -* | Author : Waveshare team -* | Function : 2.13inch e-paper -* | Info : -*---------------- -* | This version: V3.0 -* | Date : 2019-06-12 -* | Info : -* ----------------------------------------------------------------------------- -* V3.0(2019-06-12): -* 1.Change: -* EPD_Reset() => EPD_2IN13_Reset() -* EPD_SendCommand() => EPD_2IN13_SendCommand() -* EPD_SendData() => EPD_2IN13_SendData() -* EPD_WaitUntilIdle() => EPD_2IN13_ReadBusy() -* EPD_Init() => EPD_2IN13_Init() -* EPD_Clear() => EPD_2IN13_Clear() -* EPD_Display() => EPD_2IN13_Display() -* EPD_Sleep() => EPD_2IN13_Sleep() -* ----------------------------------------------------------------------------- -* V2.0(2019-01-03): -* 1.Remove:ImageBuff[EPD_2IN13_HEIGHT * EPD_2IN13_WIDTH / 8] -* 2.Change:EPD_Display(UBYTE *Image) -* Need to pass parameters: pointer to cached data -* 3.Change: -* EPD_RST -> EPD_RST_PIN -* EPD_DC -> EPD_DC_PIN -* EPD_CS -> EPD_CS_PIN -* EPD_BUSY -> EPD_BUSY_PIN -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "EPD_2in13.h" -#include "Debug.h" - -const unsigned char EPD_2IN13_lut_full_update[] = { - 0x22, 0x55, 0xAA, 0x55, 0xAA, 0x55, 0xAA, 0x11, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, - 0x01, 0x00, 0x00, 0x00, 0x00, 0x00 -}; - -const unsigned char EPD_2IN13_lut_partial_update[] = { - 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x0F, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 -}; -/****************************************************************************** -function : Software reset -parameter: -******************************************************************************/ -static void EPD_2IN13_Reset(void) -{ - DEV_Digital_Write(EPD_RST_PIN, 1); - DEV_Delay_ms(200); - DEV_Digital_Write(EPD_RST_PIN, 0); - DEV_Delay_ms(10); - DEV_Digital_Write(EPD_RST_PIN, 1); - DEV_Delay_ms(200); -} - -/****************************************************************************** -function : send command -parameter: - Reg : Command register -******************************************************************************/ -static void EPD_2IN13_SendCommand(UBYTE Reg) -{ - DEV_Digital_Write(EPD_DC_PIN, 0); - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_SPI_WriteByte(Reg); - DEV_Digital_Write(EPD_CS_PIN, 1); -} - -/****************************************************************************** -function : send data -parameter: - Data : Write data -******************************************************************************/ -static void EPD_2IN13_SendData(UBYTE Data) -{ - DEV_Digital_Write(EPD_DC_PIN, 1); - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_SPI_WriteByte(Data); - DEV_Digital_Write(EPD_CS_PIN, 1); -} - -/****************************************************************************** -function : Wait until the busy_pin goes LOW -parameter: -******************************************************************************/ -void EPD_2IN13_ReadBusy(void) -{ - Debug("e-Paper busy\r\n"); - while(DEV_Digital_Read(EPD_BUSY_PIN) == 1) { //LOW: idle, HIGH: busy - DEV_Delay_ms(100); - } - Debug("e-Paper busy release\r\n"); -} - -/****************************************************************************** -function : Turn On Display -parameter: -******************************************************************************/ -static void EPD_2IN13_TurnOnDisplay(void) -{ - EPD_2IN13_SendCommand(0x22); // DISPLAY_UPDATE_CONTROL_2 - EPD_2IN13_SendData(0xC4); - EPD_2IN13_SendCommand(0X20); // MASTER_ACTIVATION - EPD_2IN13_SendCommand(0xFF); // TERMINATE_FRAME_READ_WRITE - - EPD_2IN13_ReadBusy(); -} - -static void EPD_2IN13_SetWindows(int x_start, int y_start, int x_end, int y_end) -{ - EPD_2IN13_SendCommand(0x44); - /* x point must be the multiple of 8 or the last 3 bits will be ignored */ - EPD_2IN13_SendData((x_start >> 3) & 0xFF); - EPD_2IN13_SendData((x_end >> 3) & 0xFF); - EPD_2IN13_SendCommand(0x45); - EPD_2IN13_SendData(y_start & 0xFF); - EPD_2IN13_SendData((y_start >> 8) & 0xFF); - EPD_2IN13_SendData(y_end & 0xFF); - EPD_2IN13_SendData((y_end >> 8) & 0xFF); -} - -static void EPD_2IN13_SetCursor(int x, int y) -{ - EPD_2IN13_SendCommand(0x4E); - /* x point must be the multiple of 8 or the last 3 bits will be ignored */ - EPD_2IN13_SendData((x >> 3) & 0xFF); - EPD_2IN13_SendCommand(0x4F); - EPD_2IN13_SendData(y & 0xFF); - EPD_2IN13_SendData((y >> 8) & 0xFF); -// EPD_2IN13_ReadBusy(); -} - -/****************************************************************************** -function : Initialize the e-Paper register -parameter: -******************************************************************************/ -void EPD_2IN13_Init(UBYTE Mode) -{ - EPD_2IN13_Reset(); - - EPD_2IN13_SendCommand(0x01); // DRIVER_OUTPUT_CONTROL - EPD_2IN13_SendData((EPD_2IN13_HEIGHT - 1) & 0xFF); - EPD_2IN13_SendData(((EPD_2IN13_HEIGHT - 1) >> 8) & 0xFF); - EPD_2IN13_SendData(0x00); // GD = 0; SM = 0; TB = 0; - - EPD_2IN13_SendCommand(0x0C); // BOOSTER_SOFT_START_CONTROL - EPD_2IN13_SendData(0xD7); - EPD_2IN13_SendData(0xD6); - EPD_2IN13_SendData(0x9D); - - EPD_2IN13_SendCommand(0x2C); // WRITE_VCOM_REGISTER - EPD_2IN13_SendData(0xA8); // VCOM 7C - - EPD_2IN13_SendCommand(0x3A); // SET_DUMMY_LINE_PERIOD - EPD_2IN13_SendData(0x1A); // 4 dummy lines per gate - - EPD_2IN13_SendCommand(0x3B); // SET_GATE_TIME - EPD_2IN13_SendData(0x08); // 2us per line - - EPD_2IN13_SendCommand(0X3C); // BORDER_WAVEFORM_CONTROL - EPD_2IN13_SendData(0x63); - - EPD_2IN13_SendCommand(0X11); // DATA_ENTRY_MODE_SETTING - EPD_2IN13_SendData(0x03); // X increment; Y increment - - //set the look-up table register - EPD_2IN13_SendCommand(0x32); - if(Mode == EPD_2IN13_FULL) { - for (UWORD i = 0; i < 30; i++) { - EPD_2IN13_SendData(EPD_2IN13_lut_full_update[i]); - } - } else if(Mode == EPD_2IN13_PART) { - for (UWORD i = 0; i < 30; i++) { - EPD_2IN13_SendData(EPD_2IN13_lut_partial_update[i]); - } - } else { - Debug("error, the Mode is EPD_2IN13_FULL or EPD_2IN13_PART"); - } -} -/****************************************************************************** -function : Clear screen -parameter: -******************************************************************************/ -void EPD_2IN13_Clear(void) -{ - UWORD Width, Height; - Width = (EPD_2IN13_WIDTH % 8 == 0)? (EPD_2IN13_WIDTH / 8 ): (EPD_2IN13_WIDTH / 8 + 1); - Height = EPD_2IN13_HEIGHT; - - EPD_2IN13_SetWindows(0, 0, EPD_2IN13_WIDTH, EPD_2IN13_HEIGHT); - for (UWORD j = 0; j < Height; j++) { - EPD_2IN13_SetCursor(0, j); - EPD_2IN13_SendCommand(0x24); - for (UWORD i = 0; i < Width; i++) { - EPD_2IN13_SendData(0Xff); - } - } - EPD_2IN13_TurnOnDisplay(); -} - -/****************************************************************************** -function : Sends the image buffer in RAM to e-Paper and displays -parameter: -******************************************************************************/ -void EPD_2IN13_Display(UBYTE *Image) -{ - UWORD Width, Height; - Width = (EPD_2IN13_WIDTH % 8 == 0)? (EPD_2IN13_WIDTH / 8 ): (EPD_2IN13_WIDTH / 8 + 1); - Height = EPD_2IN13_HEIGHT; - - EPD_2IN13_SetWindows(0, 0, EPD_2IN13_WIDTH, EPD_2IN13_HEIGHT); - for (UWORD j = 0; j < Height; j++) { - EPD_2IN13_SetCursor(0, j); - EPD_2IN13_SendCommand(0x24); - for (UWORD i = 0; i < Width; i++) { - EPD_2IN13_SendData(Image[i + j * Width]); - } - } - EPD_2IN13_TurnOnDisplay(); -} - -/****************************************************************************** -function : Enter sleep mode -parameter: -******************************************************************************/ -void EPD_2IN13_Sleep(void) -{ - EPD_2IN13_SendCommand(0x10); //DEEP_SLEEP_MODE - EPD_2IN13_SendData(0x01); -} diff --git a/Raspberry Pi/c/lib/e-Paper/EPD_2in13.h b/Raspberry Pi/c/lib/e-Paper/EPD_2in13.h deleted file mode 100644 index c41f054..0000000 --- a/Raspberry Pi/c/lib/e-Paper/EPD_2in13.h +++ /dev/null @@ -1,68 +0,0 @@ -/***************************************************************************** -* | File : EPD_2IN13.h -* | Author : Waveshare team -* | Function : 2.13inch e-paper -* | Info : -*---------------- -* | This version: V3.0 -* | Date : 2019-06-12 -* | Info : -* ----------------------------------------------------------------------------- -* V3.0(2019-06-12): -* 1.Change: -* EPD_Reset() => EPD_2IN13_Reset() -* EPD_SendCommand() => EPD_2IN13_SendCommand() -* EPD_SendData() => EPD_2IN13_SendData() -* EPD_WaitUntilIdle() => EPD_2IN13_ReadBusy() -* EPD_Init() => EPD_2IN13_Init() -* EPD_Clear() => EPD_2IN13_Clear() -* EPD_Display() => EPD_2IN13_Display() -* EPD_Sleep() => EPD_2IN13_Sleep() -* ----------------------------------------------------------------------------- -* V2.0(2019-01-03): -* 1.Remove:ImageBuff[EPD_2IN13_HEIGHT * EPD_2IN13_WIDTH / 8] -* 2.Change:EPD_Display(UBYTE *Image) -* Need to pass parameters: pointer to cached data -* 3.Change: -* EPD_RST -> EPD_RST_PIN -* EPD_DC -> EPD_DC_PIN -* EPD_CS -> EPD_CS_PIN -* EPD_BUSY -> EPD_BUSY_PIN -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#ifndef _EPD2IN13_H -#define _EPD2IN13_H - -#include "DEV_Config.h" - -// Display resolution -#define EPD_2IN13_WIDTH 122 -#define EPD_2IN13_HEIGHT 250 - -#define EPD_2IN13_FULL 0 -#define EPD_2IN13_PART 1 - -void EPD_2IN13_Init(UBYTE Mode); -void EPD_2IN13_Clear(void); -void EPD_2IN13_Display(UBYTE *Image); -void EPD_2IN13_Sleep(void); - -#endif diff --git a/Raspberry Pi/c/lib/e-Paper/EPD_2in13_V2.c b/Raspberry Pi/c/lib/e-Paper/EPD_2in13_V2.c deleted file mode 100644 index a0bf1a4..0000000 --- a/Raspberry Pi/c/lib/e-Paper/EPD_2in13_V2.c +++ /dev/null @@ -1,364 +0,0 @@ -/***************************************************************************** -* | File : EPD_2in13_V2.c -* | Author : Waveshare team -* | Function : 2.13inch e-paper V2 -* | Info : -*---------------- -* | This version: V3.0 -* | Date : 2019-06-13 -* | Info : -* ----------------------------------------------------------------------------- -* V3.0(2019-06-13): -* 1.Change name: -* EPD_Reset() => EPD_2IN13_V2_Reset() -* EPD_SendCommand() => EPD_2IN13_V2_SendCommand() -* EPD_SendData() => EPD_2IN13_V2_SendData() -* EPD_WaitUntilIdle() => EPD_2IN13_V2_ReadBusy() -* EPD_Init() => EPD_2IN13_V2_Init() -* EPD_Clear() => EPD_2IN13_V2_Clear() -* EPD_Display() => EPD_2IN13_V2_Display() -* EPD_Sleep() => EPD_2IN13_V2_Sleep() -* 2.add: -* EPD_2IN13_V2_DisplayPartBaseImage() -* ----------------------------------------------------------------------------- -* V2.0(2018-11-14): -* 1.Remove:ImageBuff[EPD_HEIGHT * EPD_WIDTH / 8] -* 2.Change:EPD_2IN13_V2_Display(UBYTE *Image) -* Need to pass parameters: pointer to cached data -* 3.Change: -* EPD_RST -> EPD_RST_PIN -* EPD_DC -> EPD_DC_PIN -* EPD_CS -> EPD_CS_PIN -* EPD_BUSY -> EPD_BUSY_PIN -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "EPD_2in13_V2.h" -#include "Debug.h" - -const unsigned char EPD_2IN13_V2_lut_full_update[]= { - 0x80,0x60,0x40,0x00,0x00,0x00,0x00, //LUT0: BB: VS 0 ~7 - 0x10,0x60,0x20,0x00,0x00,0x00,0x00, //LUT1: BW: VS 0 ~7 - 0x80,0x60,0x40,0x00,0x00,0x00,0x00, //LUT2: WB: VS 0 ~7 - 0x10,0x60,0x20,0x00,0x00,0x00,0x00, //LUT3: WW: VS 0 ~7 - 0x00,0x00,0x00,0x00,0x00,0x00,0x00, //LUT4: VCOM: VS 0 ~7 - - 0x03,0x03,0x00,0x00,0x02, // TP0 A~D RP0 - 0x09,0x09,0x00,0x00,0x02, // TP1 A~D RP1 - 0x03,0x03,0x00,0x00,0x02, // TP2 A~D RP2 - 0x00,0x00,0x00,0x00,0x00, // TP3 A~D RP3 - 0x00,0x00,0x00,0x00,0x00, // TP4 A~D RP4 - 0x00,0x00,0x00,0x00,0x00, // TP5 A~D RP5 - 0x00,0x00,0x00,0x00,0x00, // TP6 A~D RP6 - - 0x15,0x41,0xA8,0x32,0x30,0x0A, -}; - -const unsigned char EPD_2IN13_V2_lut_partial_update[]= { //20 bytes - 0x00,0x00,0x00,0x00,0x00,0x00,0x00, //LUT0: BB: VS 0 ~7 - 0x80,0x00,0x00,0x00,0x00,0x00,0x00, //LUT1: BW: VS 0 ~7 - 0x40,0x00,0x00,0x00,0x00,0x00,0x00, //LUT2: WB: VS 0 ~7 - 0x00,0x00,0x00,0x00,0x00,0x00,0x00, //LUT3: WW: VS 0 ~7 - 0x00,0x00,0x00,0x00,0x00,0x00,0x00, //LUT4: VCOM: VS 0 ~7 - - 0x0A,0x00,0x00,0x00,0x00, // TP0 A~D RP0 - 0x00,0x00,0x00,0x00,0x00, // TP1 A~D RP1 - 0x00,0x00,0x00,0x00,0x00, // TP2 A~D RP2 - 0x00,0x00,0x00,0x00,0x00, // TP3 A~D RP3 - 0x00,0x00,0x00,0x00,0x00, // TP4 A~D RP4 - 0x00,0x00,0x00,0x00,0x00, // TP5 A~D RP5 - 0x00,0x00,0x00,0x00,0x00, // TP6 A~D RP6 - - 0x15,0x41,0xA8,0x32,0x30,0x0A, -}; -/****************************************************************************** -function : Software reset -parameter: -******************************************************************************/ -static void EPD_2IN13_V2_Reset(void) -{ - DEV_Digital_Write(EPD_RST_PIN, 1); - DEV_Delay_ms(200); - DEV_Digital_Write(EPD_RST_PIN, 0); - DEV_Delay_ms(10); - DEV_Digital_Write(EPD_RST_PIN, 1); - DEV_Delay_ms(200); -} - -/****************************************************************************** -function : send command -parameter: - Reg : Command register -******************************************************************************/ -static void EPD_2IN13_V2_SendCommand(UBYTE Reg) -{ - DEV_Digital_Write(EPD_DC_PIN, 0); - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_SPI_WriteByte(Reg); - DEV_Digital_Write(EPD_CS_PIN, 1); -} - -/****************************************************************************** -function : send data -parameter: - Data : Write data -******************************************************************************/ -static void EPD_2IN13_V2_SendData(UBYTE Data) -{ - DEV_Digital_Write(EPD_DC_PIN, 1); - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_SPI_WriteByte(Data); - DEV_Digital_Write(EPD_CS_PIN, 1); -} - -/****************************************************************************** -function : Wait until the busy_pin goes LOW -parameter: -******************************************************************************/ -void EPD_2IN13_V2_ReadBusy(void) -{ - Debug("e-Paper busy\r\n"); - while(DEV_Digital_Read(EPD_BUSY_PIN) == 1) { //LOW: idle, HIGH: busy - DEV_Delay_ms(100); - } - Debug("e-Paper busy release\r\n"); -} - -/****************************************************************************** -function : Turn On Display -parameter: -******************************************************************************/ -static void EPD_2IN13_V2_TurnOnDisplay(void) -{ - EPD_2IN13_V2_SendCommand(0x22); - EPD_2IN13_V2_SendData(0xC7); - EPD_2IN13_V2_SendCommand(0x20); - EPD_2IN13_V2_ReadBusy(); -} - -/****************************************************************************** -function : Turn On Display -parameter: -******************************************************************************/ -static void EPD_2IN13_V2_TurnOnDisplayPart(void) -{ - EPD_2IN13_V2_SendCommand(0x22); - EPD_2IN13_V2_SendData(0x0C); - EPD_2IN13_V2_SendCommand(0x20); - EPD_2IN13_V2_ReadBusy(); -} -/****************************************************************************** -function : Initialize the e-Paper register -parameter: -******************************************************************************/ -void EPD_2IN13_V2_Init(UBYTE Mode) -{ - UBYTE count; - EPD_2IN13_V2_Reset(); - - if(Mode == EPD_2IN13_V2_FULL) { - EPD_2IN13_V2_ReadBusy(); - EPD_2IN13_V2_SendCommand(0x12); // soft reset - EPD_2IN13_V2_ReadBusy(); - - EPD_2IN13_V2_SendCommand(0x74); //set analog block control - EPD_2IN13_V2_SendData(0x54); - EPD_2IN13_V2_SendCommand(0x7E); //set digital block control - EPD_2IN13_V2_SendData(0x3B); - - EPD_2IN13_V2_SendCommand(0x01); //Driver output control - EPD_2IN13_V2_SendData(0xF9); - EPD_2IN13_V2_SendData(0x00); - EPD_2IN13_V2_SendData(0x00); - - EPD_2IN13_V2_SendCommand(0x11); //data entry mode - EPD_2IN13_V2_SendData(0x01); - - EPD_2IN13_V2_SendCommand(0x44); //set Ram-X address start/end position - EPD_2IN13_V2_SendData(0x00); - EPD_2IN13_V2_SendData(0x0F); //0x0C-->(15+1)*8=128 - - EPD_2IN13_V2_SendCommand(0x45); //set Ram-Y address start/end position - EPD_2IN13_V2_SendData(0xF9); //0xF9-->(249+1)=250 - EPD_2IN13_V2_SendData(0x00); - EPD_2IN13_V2_SendData(0x00); - EPD_2IN13_V2_SendData(0x00); - - EPD_2IN13_V2_SendCommand(0x3C); //BorderWavefrom - EPD_2IN13_V2_SendData(0x03); - - EPD_2IN13_V2_SendCommand(0x2C); //VCOM Voltage - EPD_2IN13_V2_SendData(0x55); // - - EPD_2IN13_V2_SendCommand(0x03); - EPD_2IN13_V2_SendData(EPD_2IN13_V2_lut_full_update[70]); - - EPD_2IN13_V2_SendCommand(0x04); // - EPD_2IN13_V2_SendData(EPD_2IN13_V2_lut_full_update[71]); - EPD_2IN13_V2_SendData(EPD_2IN13_V2_lut_full_update[72]); - EPD_2IN13_V2_SendData(EPD_2IN13_V2_lut_full_update[73]); - - EPD_2IN13_V2_SendCommand(0x3A); //Dummy Line - EPD_2IN13_V2_SendData(EPD_2IN13_V2_lut_full_update[74]); - EPD_2IN13_V2_SendCommand(0x3B); //Gate time - EPD_2IN13_V2_SendData(EPD_2IN13_V2_lut_full_update[75]); - - EPD_2IN13_V2_SendCommand(0x32); - for(count = 0; count < 70; count++) { - EPD_2IN13_V2_SendData(EPD_2IN13_V2_lut_full_update[count]); - } - - EPD_2IN13_V2_SendCommand(0x4E); // set RAM x address count to 0; - EPD_2IN13_V2_SendData(0x00); - EPD_2IN13_V2_SendCommand(0x4F); // set RAM y address count to 0X127; - EPD_2IN13_V2_SendData(0xF9); - EPD_2IN13_V2_SendData(0x00); - EPD_2IN13_V2_ReadBusy(); - } else if(Mode == EPD_2IN13_V2_PART) { - EPD_2IN13_V2_SendCommand(0x2C); //VCOM Voltage - EPD_2IN13_V2_SendData(0x26); - - EPD_2IN13_V2_ReadBusy(); - - EPD_2IN13_V2_SendCommand(0x32); - for(count = 0; count < 70; count++) { - EPD_2IN13_V2_SendData(EPD_2IN13_V2_lut_partial_update[count]); - } - - EPD_2IN13_V2_SendCommand(0x37); - EPD_2IN13_V2_SendData(0x00); - EPD_2IN13_V2_SendData(0x00); - EPD_2IN13_V2_SendData(0x00); - EPD_2IN13_V2_SendData(0x00); - EPD_2IN13_V2_SendData(0x40); - EPD_2IN13_V2_SendData(0x00); - EPD_2IN13_V2_SendData(0x00); - - EPD_2IN13_V2_SendCommand(0x22); - EPD_2IN13_V2_SendData(0xC0); - - EPD_2IN13_V2_SendCommand(0x20); - EPD_2IN13_V2_ReadBusy(); - - EPD_2IN13_V2_SendCommand(0x3C); //BorderWavefrom - EPD_2IN13_V2_SendData(0x01); - } else { - Debug("error, the Mode is EPD_2IN13_FULL or EPD_2IN13_PART"); - } -} - -/****************************************************************************** -function : Clear screen -parameter: -******************************************************************************/ -void EPD_2IN13_V2_Clear(void) -{ - UWORD Width, Height; - Width = (EPD_2IN13_V2_WIDTH % 8 == 0)? (EPD_2IN13_V2_WIDTH / 8 ): (EPD_2IN13_V2_WIDTH / 8 + 1); - Height = EPD_2IN13_V2_HEIGHT; - - EPD_2IN13_V2_SendCommand(0x24); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_2IN13_V2_SendData(0XFF); - } - } - - EPD_2IN13_V2_TurnOnDisplay(); -} - -/****************************************************************************** -function : Sends the image buffer in RAM to e-Paper and displays -parameter: -******************************************************************************/ -void EPD_2IN13_V2_Display(UBYTE *Image) -{ - UWORD Width, Height; - Width = (EPD_2IN13_V2_WIDTH % 8 == 0)? (EPD_2IN13_V2_WIDTH / 8 ): (EPD_2IN13_V2_WIDTH / 8 + 1); - Height = EPD_2IN13_V2_HEIGHT; - - EPD_2IN13_V2_SendCommand(0x24); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_2IN13_V2_SendData(Image[i + j * Width]); - } - } - EPD_2IN13_V2_TurnOnDisplay(); -} - -/****************************************************************************** -function : The image of the previous frame must be uploaded, otherwise the - first few seconds will display an exception. -parameter: -******************************************************************************/ -void EPD_2IN13_V2_DisplayPartBaseImage(UBYTE *Image) -{ - UWORD Width, Height; - Width = (EPD_2IN13_V2_WIDTH % 8 == 0)? (EPD_2IN13_V2_WIDTH / 8 ): (EPD_2IN13_V2_WIDTH / 8 + 1); - Height = EPD_2IN13_V2_HEIGHT; - - UDOUBLE Addr = 0; - EPD_2IN13_V2_SendCommand(0x24); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - Addr = i + j * Width; - EPD_2IN13_V2_SendData(Image[Addr]); - } - } - EPD_2IN13_V2_SendCommand(0x26); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - Addr = i + j * Width; - EPD_2IN13_V2_SendData(Image[Addr]); - } - } - EPD_2IN13_V2_TurnOnDisplay(); -} - - -void EPD_2IN13_V2_DisplayPart(UBYTE *Image) -{ - UWORD Width, Height; - Width = (EPD_2IN13_V2_WIDTH % 8 == 0)? (EPD_2IN13_V2_WIDTH / 8 ): (EPD_2IN13_V2_WIDTH / 8 + 1); - Height = EPD_2IN13_V2_HEIGHT; - EPD_2IN13_V2_SendCommand(0x24); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_2IN13_V2_SendData(Image[i + j * Width]); - } - } - - EPD_2IN13_V2_TurnOnDisplayPart(); -} - -/****************************************************************************** -function : Enter sleep mode -parameter: -******************************************************************************/ -void EPD_2IN13_V2_Sleep(void) -{ - EPD_2IN13_V2_SendCommand(0x22); //POWER OFF - EPD_2IN13_V2_SendData(0xC3); - EPD_2IN13_V2_SendCommand(0x20); - - EPD_2IN13_V2_SendCommand(0x10); //enter deep sleep - EPD_2IN13_V2_SendData(0x01); - DEV_Delay_ms(100); -} diff --git a/Raspberry Pi/c/lib/e-Paper/EPD_2in13_V2.h b/Raspberry Pi/c/lib/e-Paper/EPD_2in13_V2.h deleted file mode 100644 index d9f6d6f..0000000 --- a/Raspberry Pi/c/lib/e-Paper/EPD_2in13_V2.h +++ /dev/null @@ -1,72 +0,0 @@ -/***************************************************************************** -* | File : EPD_2in13_V2.h -* | Author : Waveshare team -* | Function : 2.13inch e-paper V2 -* | Info : -*---------------- -* | This version: V3.0 -* | Date : 2019-06-13 -* | Info : -* ----------------------------------------------------------------------------- -* V3.0(2019-06-13): -* 1.Change name: -* EPD_Reset() => EPD_2IN13_V2_Reset() -* EPD_SendCommand() => EPD_2IN13_V2_SendCommand() -* EPD_SendData() => EPD_2IN13_V2_SendData() -* EPD_WaitUntilIdle() => EPD_2IN13_V2_ReadBusy() -* EPD_Init() => EPD_2IN13_V2_Init() -* EPD_Clear() => EPD_2IN13_V2_Clear() -* EPD_Display() => EPD_2IN13_V2_Display() -* EPD_Sleep() => EPD_2IN13_V2_Sleep() -* 2.add: -* EPD_2IN13_V2_DisplayPartBaseImage() -* ----------------------------------------------------------------------------- -* V2.0(2018-11-14): -* 1.Remove:ImageBuff[EPD_HEIGHT * EPD_WIDTH / 8] -* 2.Change:EPD_2IN13_V2_Display(UBYTE *Image) -* Need to pass parameters: pointer to cached data -* 3.Change: -* EPD_RST -> EPD_RST_PIN -* EPD_DC -> EPD_DC_PIN -* EPD_CS -> EPD_CS_PIN -* EPD_BUSY -> EPD_BUSY_PIN -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#ifndef _EPD_2IN13_V2_H_ -#define _EPD_2IN13_V2_H_ - -#include "DEV_Config.h" - -// Display resolution -#define EPD_2IN13_V2_WIDTH 122 -#define EPD_2IN13_V2_HEIGHT 250 - -#define EPD_2IN13_V2_FULL 0 -#define EPD_2IN13_V2_PART 1 - -void EPD_2IN13_V2_Init(UBYTE Mode); -void EPD_2IN13_V2_Clear(void); -void EPD_2IN13_V2_Display(UBYTE *Image); -void EPD_2IN13_V2_DisplayPart(UBYTE *Image); -void EPD_2IN13_V2_DisplayPartBaseImage(UBYTE *Image); -void EPD_2IN13_V2_Sleep(void); - -#endif diff --git a/Raspberry Pi/c/lib/e-Paper/EPD_2in13bc.c b/Raspberry Pi/c/lib/e-Paper/EPD_2in13bc.c deleted file mode 100644 index bb6cb43..0000000 --- a/Raspberry Pi/c/lib/e-Paper/EPD_2in13bc.c +++ /dev/null @@ -1,247 +0,0 @@ -/***************************************************************************** -* | File : EPD_2in13bc.c -* | Author : Waveshare team -* | Function : 2.13inch e-paper b&c -* | Info : -*---------------- -* | This version: V3.0 -* | Date : 2019-06-13 -* | Info : -* ----------------------------------------------------------------------------- -* V3.0(2019-06-13): -* 1.Change: -* EPD_Reset() => EPD_2IN13BC_Reset() -* EPD_SendCommand() => EPD_2IN13BC_SendCommand() -* EPD_SendData() => EPD_2IN13BC_SendData() -* EPD_WaitUntilIdle() => EPD_2IN13BC_ReadBusy() -* EPD_Init() => EPD_2IN13BC_Init() -* EPD_Clear() => EPD_2IN13BC_Clear() -* EPD_Display() => EPD_2IN13BC_Display() -* EPD_Sleep() => EPD_2IN13BC_Sleep() -* 2.remove commands define: -* #define PANEL_SETTING 0x00 -* #define POWER_SETTING 0x01 -* #define POWER_OFF 0x02 -* #define POWER_OFF_SEQUENCE_SETTING 0x03 -* #define POWER_ON 0x04 -* #define POWER_ON_MEASURE 0x05 -* #define BOOSTER_SOFT_START 0x06 -* #define DEEP_SLEEP 0x07 -* #define DATA_START_TRANSMISSION_1 0x10 -* #define DATA_STOP 0x11 -* #define DISPLAY_REFRESH 0x12 -* #define DATA_START_TRANSMISSION_2 0x13 -* #define VCOM_LUT 0x20 -* #define W2W_LUT 0x21 -* #define B2W_LUT 0x22 -* #define W2B_LUT 0x23 -* #define B2B_LUT 0x24 -* #define PLL_CONTROL 0x30 -* #define TEMPERATURE_SENSOR_CALIBRATION 0x40 -* #define TEMPERATURE_SENSOR_SELECTION 0x41 -* #define TEMPERATURE_SENSOR_WRITE 0x42 -* #define TEMPERATURE_SENSOR_READ 0x43 -* #define VCOM_AND_DATA_INTERVAL_SETTING 0x50 -* #define LOW_POWER_DETECTION 0x51 -* #define TCON_SETTING 0x60 -* #define RESOLUTION_SETTING 0x61 -* #define GET_STATUS 0x71 -* #define AUTO_MEASURE_VCOM 0x80 -* #define READ_VCOM_VALUE 0x81 -* #define VCM_DC_SETTING 0x82 -* #define PARTIAL_WINDOW 0x90 -* #define PARTIAL_IN 0x91 -* #define PARTIAL_OUT 0x92 -* #define PROGRAM_MODE 0xA0 -* #define ACTIVE_PROGRAM 0xA1 -* #define READ_OTP_DATA 0xA2 -* #define POWER_SAVING 0xE3 -* V2.0(2018-11-13): -* 1.Remove:ImageBuff[EPD_HEIGHT * EPD_WIDTH / 8] -* 2.Change:EPD_Display(UBYTE *Image) -* Need to pass parameters: pointer to cached data -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "EPD_2in13bc.h" -#include "Debug.h" - -/****************************************************************************** -function : Software reset -parameter: -******************************************************************************/ -static void EPD_2IN13BC_Reset(void) -{ - DEV_Digital_Write(EPD_RST_PIN, 1); - DEV_Delay_ms(200); - DEV_Digital_Write(EPD_RST_PIN, 0); - DEV_Delay_ms(200); - DEV_Digital_Write(EPD_RST_PIN, 1); - DEV_Delay_ms(200); -} - -/****************************************************************************** -function : send command -parameter: - Reg : Command register -******************************************************************************/ -static void EPD_2IN13BC_SendCommand(UBYTE Reg) -{ - DEV_Digital_Write(EPD_DC_PIN, 0); - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_SPI_WriteByte(Reg); - DEV_Digital_Write(EPD_CS_PIN, 1); -} - -/****************************************************************************** -function : send data -parameter: - Data : Write data -******************************************************************************/ -static void EPD_2IN13BC_SendData(UBYTE Data) -{ - DEV_Digital_Write(EPD_DC_PIN, 1); - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_SPI_WriteByte(Data); - DEV_Digital_Write(EPD_CS_PIN, 1); -} - -/****************************************************************************** -function : Wait until the busy_pin goes LOW -parameter: -******************************************************************************/ -void EPD_2IN13BC_ReadBusy(void) -{ - Debug("e-Paper busy\r\n"); - while(DEV_Digital_Read(EPD_BUSY_PIN) == 0) { - DEV_Delay_ms(100); - } - Debug("e-Paper busy release\r\n"); -} - -/****************************************************************************** -function : Turn On Display -parameter: -******************************************************************************/ -static void EPD_2IN13BC_TurnOnDisplay(void) -{ - EPD_2IN13BC_SendCommand(0x12); //DISPLAY REFRESH - DEV_Delay_ms(10); - - EPD_2IN13BC_ReadBusy(); -} - -/****************************************************************************** -function : Initialize the e-Paper register -parameter: -******************************************************************************/ -void EPD_2IN13BC_Init(void) -{ - EPD_2IN13BC_Reset(); - - EPD_2IN13BC_SendCommand(0x06); // BOOSTER_SOFT_START - EPD_2IN13BC_SendData(0x17); - EPD_2IN13BC_SendData(0x17); - EPD_2IN13BC_SendData(0x17); - - EPD_2IN13BC_SendCommand(0x04); // POWER_ON - EPD_2IN13BC_ReadBusy(); - - EPD_2IN13BC_SendCommand(0x00); // PANEL_SETTING - EPD_2IN13BC_SendData(0x8F); - - EPD_2IN13BC_SendCommand(0x50); // VCOM_AND_DATA_INTERVAL_SETTING - EPD_2IN13BC_SendData(0xF0); - EPD_2IN13BC_SendCommand(0x61); // RESOLUTION_SETTING - EPD_2IN13BC_SendData(EPD_2IN13BC_WIDTH); // width: 104 - EPD_2IN13BC_SendData(EPD_2IN13BC_HEIGHT >> 8); // height: 212 - EPD_2IN13BC_SendData(EPD_2IN13BC_HEIGHT & 0xFF); -} - -/****************************************************************************** -function : Clear screen -parameter: -******************************************************************************/ -void EPD_2IN13BC_Clear(void) -{ - UWORD Width = (EPD_2IN13BC_WIDTH % 8 == 0)? (EPD_2IN13BC_WIDTH / 8 ): (EPD_2IN13BC_WIDTH / 8 + 1); - UWORD Height = EPD_2IN13BC_HEIGHT; - - //send black data - EPD_2IN13BC_SendCommand(0x10); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_2IN13BC_SendData(0xFF); - } - } - EPD_2IN13BC_SendCommand(0x92); - - //send red data - EPD_2IN13BC_SendCommand(0x13); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_2IN13BC_SendData(0xFF); - } - } - EPD_2IN13BC_SendCommand(0x92); - - EPD_2IN13BC_TurnOnDisplay(); -} - -/****************************************************************************** -function : Sends the image buffer in RAM to e-Paper and displays -parameter: -******************************************************************************/ -void EPD_2IN13BC_Display(const UBYTE *blackimage, const UBYTE *ryimage) -{ - UWORD Width, Height; - Width = (EPD_2IN13BC_WIDTH % 8 == 0)? (EPD_2IN13BC_WIDTH / 8 ): (EPD_2IN13BC_WIDTH / 8 + 1); - Height = EPD_2IN13BC_HEIGHT; - - EPD_2IN13BC_SendCommand(0x10); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_2IN13BC_SendData(blackimage[i + j * Width]); - } - } - EPD_2IN13BC_SendCommand(0x92); - - EPD_2IN13BC_SendCommand(0x13); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_2IN13BC_SendData(ryimage[i + j * Width]); - } - } - EPD_2IN13BC_SendCommand(0x92); - - EPD_2IN13BC_TurnOnDisplay(); -} - -/****************************************************************************** -function : Enter sleep mode -parameter: -******************************************************************************/ -void EPD_2IN13BC_Sleep(void) -{ - EPD_2IN13BC_SendCommand(0x02); // POWER_OFF - EPD_2IN13BC_ReadBusy(); - EPD_2IN13BC_SendCommand(0x07); // DEEP_SLEEP - EPD_2IN13BC_SendData(0xA5); // check code -} diff --git a/Raspberry Pi/c/lib/e-Paper/EPD_2in13bc.h b/Raspberry Pi/c/lib/e-Paper/EPD_2in13bc.h deleted file mode 100644 index 8f8fa5b..0000000 --- a/Raspberry Pi/c/lib/e-Paper/EPD_2in13bc.h +++ /dev/null @@ -1,97 +0,0 @@ -/***************************************************************************** -* | File : EPD_2in13bc.h -* | Author : Waveshare team -* | Function : 2.13inch e-paper b&c -* | Info : -*---------------- -* | This version: V3.0 -* | Date : 2019-06-13 -* | Info : -* ----------------------------------------------------------------------------- -* V3.0(2019-06-13): -* 1.Change: -* EPD_Reset() => EPD_2IN13BC_Reset() -* EPD_SendCommand() => EPD_2IN13BC_SendCommand() -* EPD_SendData() => EPD_2IN13BC_SendData() -* EPD_WaitUntilIdle() => EPD_2IN13BC_ReadBusy() -* EPD_Init() => EPD_2IN13BC_Init() -* EPD_Clear() => EPD_2IN13BC_Clear() -* EPD_Display() => EPD_2IN13BC_Display() -* EPD_Sleep() => EPD_2IN13BC_Sleep() -* 2.remove commands define: -* #define PANEL_SETTING 0x00 -* #define POWER_SETTING 0x01 -* #define POWER_OFF 0x02 -* #define POWER_OFF_SEQUENCE_SETTING 0x03 -* #define POWER_ON 0x04 -* #define POWER_ON_MEASURE 0x05 -* #define BOOSTER_SOFT_START 0x06 -* #define DEEP_SLEEP 0x07 -* #define DATA_START_TRANSMISSION_1 0x10 -* #define DATA_STOP 0x11 -* #define DISPLAY_REFRESH 0x12 -* #define DATA_START_TRANSMISSION_2 0x13 -* #define VCOM_LUT 0x20 -* #define W2W_LUT 0x21 -* #define B2W_LUT 0x22 -* #define W2B_LUT 0x23 -* #define B2B_LUT 0x24 -* #define PLL_CONTROL 0x30 -* #define TEMPERATURE_SENSOR_CALIBRATION 0x40 -* #define TEMPERATURE_SENSOR_SELECTION 0x41 -* #define TEMPERATURE_SENSOR_WRITE 0x42 -* #define TEMPERATURE_SENSOR_READ 0x43 -* #define VCOM_AND_DATA_INTERVAL_SETTING 0x50 -* #define LOW_POWER_DETECTION 0x51 -* #define TCON_SETTING 0x60 -* #define RESOLUTION_SETTING 0x61 -* #define GET_STATUS 0x71 -* #define AUTO_MEASURE_VCOM 0x80 -* #define READ_VCOM_VALUE 0x81 -* #define VCM_DC_SETTING 0x82 -* #define PARTIAL_WINDOW 0x90 -* #define PARTIAL_IN 0x91 -* #define PARTIAL_OUT 0x92 -* #define PROGRAM_MODE 0xA0 -* #define ACTIVE_PROGRAM 0xA1 -* #define READ_OTP_DATA 0xA2 -* #define POWER_SAVING 0xE3 -* V2.0(2018-11-13): -* 1.Remove:ImageBuff[EPD_HEIGHT * EPD_WIDTH / 8] -* 2.Change:EPD_Display(UBYTE *Image) -* Need to pass parameters: pointer to cached data -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#ifndef __EPD_2IN13BC_H_ -#define __EPD_2IN13BC_H_ - -#include "DEV_Config.h" - -// Display resolution -#define EPD_2IN13BC_WIDTH 104 -#define EPD_2IN13BC_HEIGHT 212 - -void EPD_2IN13BC_Init(void); -void EPD_2IN13BC_Clear(void); -void EPD_2IN13BC_Display(const UBYTE *blackimage, const UBYTE *ryimage); -void EPD_2IN13BC_Sleep(void); - -#endif diff --git a/Raspberry Pi/c/lib/e-Paper/EPD_2in13d.c b/Raspberry Pi/c/lib/e-Paper/EPD_2in13d.c deleted file mode 100644 index 979e25b..0000000 --- a/Raspberry Pi/c/lib/e-Paper/EPD_2in13d.c +++ /dev/null @@ -1,461 +0,0 @@ -/***************************************************************************** -* | File : EPD_2in13d.c -* | Author : Waveshare team -* | Function : 2.13inch e-paper d -* | Info : -*---------------- -* | This version: V3.0 -* | Date : 2019-06-12 -* | Info : -* ----------------------------------------------------------------------------- -* V3.0(2019-06-12): -* 1.Change: -* lut_vcomDC[] => EPD_2IN13D_lut_vcomDC[] -* lut_ww[] => EPD_2IN13D_lut_ww[] -* lut_bw[] => EPD_2IN13D_lut_bw[] -* lut_wb[] => EPD_2IN13D_lut_wb[] -* lut_bb[] => EPD_2IN13D_lut_bb[] -* lut_vcom1[] => EPD_2IN13D_lut_vcom1[] -* lut_ww1[] => EPD_2IN13D_lut_ww1[] -* lut_bw1[] => EPD_2IN13D_lut_bw1[] -* lut_wb1[] => EPD_2IN13D_lut_wb1[] -* lut_bb1[] => EPD_2IN13D_lut_bb1[] -* EPD_Reset() => EPD_2IN13D_Reset() -* EPD_SendCommand() => EPD_2IN13D_SendCommand() -* EPD_SendData() => EPD_2IN13D_SendData() -* EPD_WaitUntilIdle() => EPD_2IN13D_ReadBusy() -* EPD_SetFullReg() => EPD_2IN13D_SetFullReg() -* EPD_SetPartReg() => EPD_2IN13D_SetPartReg() -* EPD_TurnOnDisplay() => EPD_2IN13D_TurnOnDisplay() -* EPD_Init() => EPD_2IN13D_Init() -* EPD_Clear() => EPD_2IN13D_Clear() -* EPD_Display() => EPD_2IN13D_Display() -* EPD_Sleep() => EPD_2IN13D_Sleep() -* V2.0(2018-11-13): -* 1.Remove:ImageBuff[EPD_2IN13D_HEIGHT * EPD_2IN13D_WIDTH / 8] -* 2.Change:EPD_Display(UBYTE *Image) -* Need to pass parameters: pointer to cached data -* 3.Change: -* EPD_RST -> EPD_RST_PIN -* EPD_DC -> EPD_DC_PIN -* EPD_CS -> EPD_CS_PIN -* EPD_BUSY -> EPD_BUSY_PIN -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "EPD_2in13d.h" -#include "Debug.h" - -/** - * full screen update LUT -**/ -static const unsigned char EPD_2IN13D_lut_vcomDC[] = { - 0x00, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x60, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x00, 0x14, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, -}; -static const unsigned char EPD_2IN13D_lut_ww[] = { - 0x40, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x40, 0x14, 0x00, 0x00, 0x00, 0x01, - 0xA0, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -}; -static const unsigned char EPD_2IN13D_lut_bw[] = { - 0x40, 0x17, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x0F, 0x0F, 0x00, 0x00, 0x03, - 0x40, 0x0A, 0x01, 0x00, 0x00, 0x01, - 0xA0, 0x0E, 0x0E, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -}; -static const unsigned char EPD_2IN13D_lut_wb[] = { - 0x80, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x80, 0x14, 0x00, 0x00, 0x00, 0x01, - 0x50, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -}; -static const unsigned char EPD_2IN13D_lut_bb[] = { - 0x80, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x80, 0x14, 0x00, 0x00, 0x00, 0x01, - 0x50, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -}; - - -/** - * partial screen update LUT -**/ -static const unsigned char EPD_2IN13D_lut_vcom1[] = { - 0x00, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, -}; -static const unsigned char EPD_2IN13D_lut_ww1[] = { - 0x00, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, -}; -static const unsigned char EPD_2IN13D_lut_bw1[] = { - 0x80, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, -}; -static const unsigned char EPD_2IN13D_lut_wb1[] = { - 0x40, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, -}; -static const unsigned char EPD_2IN13D_lut_bb1[] = { - 0x00, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, -}; - - -/****************************************************************************** -function : Software reset -parameter: -******************************************************************************/ -static void EPD_2IN13D_Reset(void) -{ - DEV_Digital_Write(EPD_RST_PIN, 1); - DEV_Delay_ms(200); - DEV_Digital_Write(EPD_RST_PIN, 0); - DEV_Delay_ms(200); - DEV_Digital_Write(EPD_RST_PIN, 1); - DEV_Delay_ms(200); -} - -/****************************************************************************** -function : send command -parameter: - Reg : Command register -******************************************************************************/ -static void EPD_2IN13D_SendCommand(UBYTE Reg) -{ - DEV_Digital_Write(EPD_DC_PIN, 0); - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_SPI_WriteByte(Reg); - DEV_Digital_Write(EPD_CS_PIN, 1); -} - -/****************************************************************************** -function : send data -parameter: - Data : Write data -******************************************************************************/ -static void EPD_2IN13D_SendData(UBYTE Data) -{ - DEV_Digital_Write(EPD_DC_PIN, 1); - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_SPI_WriteByte(Data); - DEV_Digital_Write(EPD_CS_PIN, 1); -} - -/****************************************************************************** -function : Wait until the busy_pin goes LOW -parameter: -******************************************************************************/ -static void EPD_2IN13D_ReadBusy(void) -{ - Debug("e-Paper busy\r\n"); - UBYTE busy; - do { - EPD_2IN13D_SendCommand(0x71); - busy = DEV_Digital_Read(EPD_BUSY_PIN); - busy =!(busy & 0x01); - } while(busy); - DEV_Delay_ms(200); - Debug("e-Paper busy release\r\n"); -} - -/****************************************************************************** -function : LUT download -parameter: -******************************************************************************/ -static void EPD_2IN13D_SetFullReg(void) -{ - EPD_2IN13D_SendCommand(0X50); //VCOM AND DATA INTERVAL SETTING - EPD_2IN13D_SendData(0xb7); //WBmode:VBDF 17|D7 VBDW 97 VBDB 57 WBRmode:VBDF F7 VBDW 77 VBDB 37 VBDR B7 - - unsigned int count; - EPD_2IN13D_SendCommand(0x20); - for(count=0; count<44; count++) { - EPD_2IN13D_SendData(EPD_2IN13D_lut_vcomDC[count]); - } - - EPD_2IN13D_SendCommand(0x21); - for(count=0; count<42; count++) { - EPD_2IN13D_SendData(EPD_2IN13D_lut_ww[count]); - } - - EPD_2IN13D_SendCommand(0x22); - for(count=0; count<42; count++) { - EPD_2IN13D_SendData(EPD_2IN13D_lut_bw[count]); - } - - EPD_2IN13D_SendCommand(0x23); - for(count=0; count<42; count++) { - EPD_2IN13D_SendData(EPD_2IN13D_lut_wb[count]); - } - - EPD_2IN13D_SendCommand(0x24); - for(count=0; count<42; count++) { - EPD_2IN13D_SendData(EPD_2IN13D_lut_bb[count]); - } -} - -/****************************************************************************** -function : LUT download -parameter: -******************************************************************************/ -static void EPD_2IN13D_SetPartReg(void) -{ - EPD_2IN13D_SendCommand(0x82); //vcom_DC setting - EPD_2IN13D_SendData(0x00); - EPD_2IN13D_SendCommand(0X50); - EPD_2IN13D_SendData(0xb7); - - unsigned int count; - EPD_2IN13D_SendCommand(0x20); - for(count=0; count<44; count++) { - EPD_2IN13D_SendData(EPD_2IN13D_lut_vcom1[count]); - } - - EPD_2IN13D_SendCommand(0x21); - for(count=0; count<42; count++) { - EPD_2IN13D_SendData(EPD_2IN13D_lut_ww1[count]); - } - - EPD_2IN13D_SendCommand(0x22); - for(count=0; count<42; count++) { - EPD_2IN13D_SendData(EPD_2IN13D_lut_bw1[count]); - } - - EPD_2IN13D_SendCommand(0x23); - for(count=0; count<42; count++) { - EPD_2IN13D_SendData(EPD_2IN13D_lut_wb1[count]); - } - - EPD_2IN13D_SendCommand(0x24); - for(count=0; count<42; count++) { - EPD_2IN13D_SendData(EPD_2IN13D_lut_bb1[count]); - } -} - -/****************************************************************************** -function : Turn On Display -parameter: -******************************************************************************/ -static void EPD_2IN13D_TurnOnDisplay(void) -{ - EPD_2IN13D_SendCommand(0x12); //DISPLAY REFRESH - DEV_Delay_ms(10); //!!!The delay here is necessary, 200uS at least!!! - - EPD_2IN13D_ReadBusy(); -} - -/****************************************************************************** -function : Initialize the e-Paper register -parameter: -******************************************************************************/ -void EPD_2IN13D_Init() -{ - EPD_2IN13D_Reset(); - - EPD_2IN13D_SendCommand(0x01); //POWER SETTING - EPD_2IN13D_SendData(0x03); - EPD_2IN13D_SendData(0x00); - EPD_2IN13D_SendData(0x2b); - EPD_2IN13D_SendData(0x2b); - EPD_2IN13D_SendData(0x03); - - EPD_2IN13D_SendCommand(0x06); //boost soft start - EPD_2IN13D_SendData(0x17); //A - EPD_2IN13D_SendData(0x17); //B - EPD_2IN13D_SendData(0x17); //C - - EPD_2IN13D_SendCommand(0x04); - EPD_2IN13D_ReadBusy(); - - EPD_2IN13D_SendCommand(0x00); //panel setting - EPD_2IN13D_SendData(0xbf); //LUT from OTP锛128x296 - EPD_2IN13D_SendData(0x0e); //VCOM to 0V fast - - EPD_2IN13D_SendCommand(0x30); //PLL setting - EPD_2IN13D_SendData(0x3a); // 3a 100HZ 29 150Hz 39 200HZ 31 171HZ - - EPD_2IN13D_SendCommand(0x61); //resolution setting - EPD_2IN13D_SendData(EPD_2IN13D_WIDTH); - EPD_2IN13D_SendData((EPD_2IN13D_HEIGHT >> 8) & 0xff); - EPD_2IN13D_SendData(EPD_2IN13D_HEIGHT& 0xff); - - EPD_2IN13D_SendCommand(0x82); //vcom_DC setting - EPD_2IN13D_SendData(0x28); -} - -/****************************************************************************** -function : Clear screen -parameter: -******************************************************************************/ -void EPD_2IN13D_Clear(void) -{ - UWORD Width, Height; - Width = (EPD_2IN13D_WIDTH % 8 == 0)? (EPD_2IN13D_WIDTH / 8 ): (EPD_2IN13D_WIDTH / 8 + 1); - Height = EPD_2IN13D_HEIGHT; - - EPD_2IN13D_SendCommand(0x10); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_2IN13D_SendData(0x00); - } - } - - EPD_2IN13D_SendCommand(0x13); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_2IN13D_SendData(0xFF); - } - } - - EPD_2IN13D_SetFullReg(); - EPD_2IN13D_TurnOnDisplay(); -} - -/****************************************************************************** -function : Sends the image buffer in RAM to e-Paper and displays -parameter: -******************************************************************************/ -void EPD_2IN13D_Display(UBYTE *Image) -{ - UWORD Width, Height; - Width = (EPD_2IN13D_WIDTH % 8 == 0)? (EPD_2IN13D_WIDTH / 8 ): (EPD_2IN13D_WIDTH / 8 + 1); - Height = EPD_2IN13D_HEIGHT; - - EPD_2IN13D_SendCommand(0x10); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_2IN13D_SendData(0x00); - } - } - // Dev_Delay_ms(10); - - EPD_2IN13D_SendCommand(0x13); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_2IN13D_SendData(Image[i + j * Width]); - } - } - // Dev_Delay_ms(10); - - EPD_2IN13D_SetFullReg(); - EPD_2IN13D_TurnOnDisplay(); -} - -/****************************************************************************** -function : Sends the image buffer in RAM to e-Paper and displays -parameter: -******************************************************************************/ -void EPD_2IN13D_DisplayPart(UBYTE *Image) -{ - /* Set partial Windows */ - EPD_2IN13D_SetPartReg(); - EPD_2IN13D_SendCommand(0x91); //This command makes the display enter partial mode - EPD_2IN13D_SendCommand(0x90); //resolution setting - EPD_2IN13D_SendData(0); //x-start - EPD_2IN13D_SendData(EPD_2IN13D_WIDTH - 1); //x-end - - EPD_2IN13D_SendData(0); - EPD_2IN13D_SendData(0); //y-start - EPD_2IN13D_SendData(EPD_2IN13D_HEIGHT / 256); - EPD_2IN13D_SendData(EPD_2IN13D_HEIGHT % 256 - 1); //y-end - EPD_2IN13D_SendData(0x28); - - UWORD Width; - Width = (EPD_2IN13D_WIDTH % 8 == 0)? (EPD_2IN13D_WIDTH / 8 ): (EPD_2IN13D_WIDTH / 8 + 1); - - /* send data */ - EPD_2IN13D_SendCommand(0x10); - for (UWORD j = 0; j < EPD_2IN13D_HEIGHT; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_2IN13D_SendData(~Image[i + j * Width]); - } - } - - EPD_2IN13D_SendCommand(0x13); - for (UWORD j = 0; j < EPD_2IN13D_HEIGHT; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_2IN13D_SendData(Image[i + j * Width]); - } - } - - /* Set partial refresh */ - EPD_2IN13D_TurnOnDisplay(); -} - - -/****************************************************************************** -function : Enter sleep mode -parameter: -******************************************************************************/ -void EPD_2IN13D_Sleep(void) -{ - EPD_2IN13D_SendCommand(0X50); - EPD_2IN13D_SendData(0xf7); - EPD_2IN13D_SendCommand(0X02); //power off - EPD_2IN13D_SendCommand(0X07); //deep sleep - EPD_2IN13D_SendData(0xA5); -} diff --git a/Raspberry Pi/c/lib/e-Paper/EPD_2in13d.h b/Raspberry Pi/c/lib/e-Paper/EPD_2in13d.h deleted file mode 100644 index 0c404dd..0000000 --- a/Raspberry Pi/c/lib/e-Paper/EPD_2in13d.h +++ /dev/null @@ -1,78 +0,0 @@ -/***************************************************************************** -* | File : EPD_2in13d.h -* | Author : Waveshare team -* | Function : 2.13inch e-paper d -* | Info : -*---------------- -* | This version: V3.0 -* | Date : 2019-06-12 -* | Info : -* ----------------------------------------------------------------------------- -* V3.0(2019-06-12): -* 1.Change: -* lut_vcomDC[] => EPD_2IN13D_lut_vcomDC[] -* lut_ww[] => EPD_2IN13D_lut_ww[] -* lut_bw[] => EPD_2IN13D_lut_bw[] -* lut_wb[] => EPD_2IN13D_lut_wb[] -* lut_bb[] => EPD_2IN13D_lut_bb[] -* lut_vcom1[] => EPD_2IN13D_lut_vcom1[] -* lut_ww1[] => EPD_2IN13D_lut_ww1[] -* lut_bw1[] => EPD_2IN13D_lut_bw1[] -* lut_wb1[] => EPD_2IN13D_lut_wb1[] -* lut_bb1[] => EPD_2IN13D_lut_bb1[] -* EPD_Reset() => EPD_2IN13D_Reset() -* EPD_SendCommand() => EPD_2IN13D_SendCommand() -* EPD_SendData() => EPD_2IN13D_SendData() -* EPD_WaitUntilIdle() => EPD_2IN13D_ReadBusy() -* EPD_SetFullReg() => EPD_2IN13D_SetFullReg() -* EPD_SetPartReg() => EPD_2IN13D_SetPartReg() -* EPD_TurnOnDisplay() => EPD_2IN13D_TurnOnDisplay() -* EPD_Init() => EPD_2IN13D_Init() -* EPD_Clear() => EPD_2IN13D_Clear() -* EPD_Display() => EPD_2IN13D_Display() -* EPD_Sleep() => EPD_2IN13D_Sleep() -* V2.0(2018-11-13): -* 1.Remove:ImageBuff[EPD_2IN13D_HEIGHT * EPD_2IN13D_WIDTH / 8] -* 2.Change:EPD_Display(UBYTE *Image) -* Need to pass parameters: pointer to cached data -* 3.Change: -* EPD_RST -> EPD_RST_PIN -* EPD_DC -> EPD_DC_PIN -* EPD_CS -> EPD_CS_PIN -* EPD_BUSY -> EPD_BUSY_PIN -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#ifndef __EPD_2IN13D_H_ -#define __EPD_2IN13D_H_ - -#include "DEV_Config.h" - -// Display resolution -#define EPD_2IN13D_WIDTH 104 -#define EPD_2IN13D_HEIGHT 212 - -void EPD_2IN13D_Init(void); -void EPD_2IN13D_Clear(void); -void EPD_2IN13D_Display(UBYTE *Image); -void EPD_2IN13D_DisplayPart(UBYTE *Image); -void EPD_2IN13D_Sleep(void); - -#endif diff --git a/Raspberry Pi/c/lib/e-Paper/EPD_2in7.c b/Raspberry Pi/c/lib/e-Paper/EPD_2in7.c deleted file mode 100644 index 2dbeebf..0000000 --- a/Raspberry Pi/c/lib/e-Paper/EPD_2in7.c +++ /dev/null @@ -1,359 +0,0 @@ -/***************************************************************************** -* | File : EPD_2in7.c -* | Author : Waveshare team -* | Function : 2.7inch e-paper -* | Info : -*---------------- -* | This version: V3.0 -* | Date : 2019-06-12 -* | Info : -* ----------------------------------------------------------------------------- -* V3.0(2019-06-12): -* 1.Change: -* lut_vcom_dc[] => EPD_2in7_lut_vcom_dc[] -* lut_ww[] => EPD_2in7_lut_ww[] -* lut_bw[] => EPD_2in7_lut_bw[] -* lut_bb[] => EPD_2in7_lut_bb[] -* lut_wb[] => EPD_2in7_lut_wb[] -* EPD_Reset() => EPD_2in7_Reset() -* EPD_SendCommand() => EPD_2in7_SendCommand() -* EPD_SendData() => EPD_2in7_SendData() -* EPD_WaitUntilIdle() => EPD_2in7_ReadBusy() -* EPD_SetLut() => EPD_2in7_SetLut() -* EPD_Init() => EPD_2in7_Init() -* EPD_Clear() => EPD_2in7_Clear() -* EPD_Display() => EPD_2in7_Display() -* EPD_Sleep() => EPD_2in7_Sleep() -* 2.remove commands define: -* #define PANEL_SETTING 0x00 -* #define POWER_SETTING 0x01 -* #define POWER_OFF 0x02 -* #define POWER_OFF_SEQUENCE_SETTING 0x03 -* #define POWER_ON 0x04 -* #define POWER_ON_MEASURE 0x05 -* #define BOOSTER_SOFT_START 0x06 -* #define DEEP_SLEEP 0x07 -* #define DATA_START_TRANSMISSION_1 0x10 -* #define DATA_STOP 0x11 -* #define DISPLAY_REFRESH 0x12 -* #define DATA_START_TRANSMISSION_2 0x13 -* #define PLL_CONTROL 0x30 -* #define TEMPERATURE_SENSOR_COMMAND 0x40 -* #define TEMPERATURE_SENSOR_CALIBRATION 0x41 -* #define TEMPERATURE_SENSOR_WRITE 0x42 -* #define TEMPERATURE_SENSOR_READ 0x43 -* #define VCOM_AND_DATA_INTERVAL_SETTING 0x50 -* #define LOW_POWER_DETECTION 0x51 -* #define TCON_SETTING 0x60 -* #define TCON_RESOLUTION 0x61 -* #define SOURCE_AND_GATE_START_SETTING 0x62 -* #define GET_STATUS 0x71 -* #define AUTO_MEASURE_VCOM 0x80 -* #define VCOM_VALUE 0x81 -* #define VCM_DC_SETTING_REGISTER 0x82 -* #define PROGRAM_MODE 0xA0 -* #define ACTIVE_PROGRAM 0xA1 -* #define READ_OTP_DATA 0xA2 -* ----------------------------------------------------------------------------- -* V2.0(2018-11-06): -* 1.Remove:ImageBuff[EPD_HEIGHT * EPD_WIDTH / 8] -* 2.Change:EPD_Display(UBYTE *Image) -* Need to pass parameters: pointer to cached data -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "EPD_2in7.h" -#include "Debug.h" - -static const unsigned char EPD_2in7_lut_vcom_dc[] = { - 0x00 ,0x00, - 0x00 ,0x08 ,0x00 ,0x00 ,0x00 ,0x02, - 0x60 ,0x28 ,0x28 ,0x00 ,0x00 ,0x01, - 0x00 ,0x14 ,0x00 ,0x00 ,0x00 ,0x01, - 0x00 ,0x12 ,0x12 ,0x00 ,0x00 ,0x01, - 0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00, - 0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00, - 0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 -}; -static const unsigned char EPD_2in7_lut_ww[] = { - 0x40 ,0x08 ,0x00 ,0x00 ,0x00 ,0x02, - 0x90 ,0x28 ,0x28 ,0x00 ,0x00 ,0x01, - 0x40 ,0x14 ,0x00 ,0x00 ,0x00 ,0x01, - 0xA0 ,0x12 ,0x12 ,0x00 ,0x00 ,0x01, - 0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00, - 0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00, - 0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00, -}; -static const unsigned char EPD_2in7_lut_bw[] = { - 0x40 ,0x08 ,0x00 ,0x00 ,0x00 ,0x02, - 0x90 ,0x28 ,0x28 ,0x00 ,0x00 ,0x01, - 0x40 ,0x14 ,0x00 ,0x00 ,0x00 ,0x01, - 0xA0 ,0x12 ,0x12 ,0x00 ,0x00 ,0x01, - 0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00, - 0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00, - 0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00, -}; -static const unsigned char EPD_2in7_lut_bb[] = { - 0x80 ,0x08 ,0x00 ,0x00 ,0x00 ,0x02, - 0x90 ,0x28 ,0x28 ,0x00 ,0x00 ,0x01, - 0x80 ,0x14 ,0x00 ,0x00 ,0x00 ,0x01, - 0x50 ,0x12 ,0x12 ,0x00 ,0x00 ,0x01, - 0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00, - 0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00, - 0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00, -}; -static const unsigned char EPD_2in7_lut_wb[] = { - 0x80 ,0x08 ,0x00 ,0x00 ,0x00 ,0x02, - 0x90 ,0x28 ,0x28 ,0x00 ,0x00 ,0x01, - 0x80 ,0x14 ,0x00 ,0x00 ,0x00 ,0x01, - 0x50 ,0x12 ,0x12 ,0x00 ,0x00 ,0x01, - 0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00, - 0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00, - 0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00, -}; - -/****************************************************************************** -function : Software reset -parameter: -******************************************************************************/ -static void EPD_2in7_Reset(void) -{ - DEV_Digital_Write(EPD_RST_PIN, 1); - DEV_Delay_ms(200); - DEV_Digital_Write(EPD_RST_PIN, 0); - DEV_Delay_ms(10); - DEV_Digital_Write(EPD_RST_PIN, 1); - DEV_Delay_ms(200); -} - -/****************************************************************************** -function : send command -parameter: - Reg : Command register -******************************************************************************/ -static void EPD_2in7_SendCommand(UBYTE Reg) -{ - DEV_Digital_Write(EPD_DC_PIN, 0); - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_SPI_WriteByte(Reg); - DEV_Digital_Write(EPD_CS_PIN, 1); -} - -/****************************************************************************** -function : send data -parameter: - Data : Write data -******************************************************************************/ -static void EPD_2in7_SendData(UBYTE Data) -{ - DEV_Digital_Write(EPD_DC_PIN, 1); - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_SPI_WriteByte(Data); - DEV_Digital_Write(EPD_CS_PIN, 1); -} - -/****************************************************************************** -function : Wait until the busy_pin goes LOW -parameter: -******************************************************************************/ -static void EPD_2in7_ReadBusy(void) -{ - Debug("e-Paper busy\r\n"); - UBYTE busy; - do { - EPD_2in7_SendCommand(0x71); - busy = DEV_Digital_Read(EPD_BUSY_PIN); - busy =!(busy & 0x01); - } while(busy); - DEV_Delay_ms(200); - Debug("e-Paper busy release\r\n"); -} - -/****************************************************************************** -function : set the look-up tables -parameter: -******************************************************************************/ -static void EPD_2in7_SetLut(void) -{ - unsigned int count; - EPD_2in7_SendCommand(0x20); //vcom - for(count = 0; count < 44; count++) { - EPD_2in7_SendData(EPD_2in7_lut_vcom_dc[count]); - } - - EPD_2in7_SendCommand(0x21); //ww -- - for(count = 0; count < 42; count++) { - EPD_2in7_SendData(EPD_2in7_lut_ww[count]); - } - - EPD_2in7_SendCommand(0x22); //bw r - for(count = 0; count < 42; count++) { - EPD_2in7_SendData(EPD_2in7_lut_bw[count]); - } - - EPD_2in7_SendCommand(0x23); //wb w - for(count = 0; count < 42; count++) { - EPD_2in7_SendData(EPD_2in7_lut_bb[count]); - } - - EPD_2in7_SendCommand(0x24); //bb b - for(count = 0; count < 42; count++) { - EPD_2in7_SendData(EPD_2in7_lut_wb[count]); - } -} - -/****************************************************************************** -function : Initialize the e-Paper register -parameter: -******************************************************************************/ -void EPD_2IN7_Init(void) -{ - EPD_2in7_Reset(); - - EPD_2in7_SendCommand(0x01); // POWER_SETTING - EPD_2in7_SendData(0x03); // VDS_EN, VDG_EN - EPD_2in7_SendData(0x00); // VCOM_HV, VGHL_LV[1], VGHL_LV[0] - EPD_2in7_SendData(0x2b); // VDH - EPD_2in7_SendData(0x2b); // VDL - EPD_2in7_SendData(0x09); // VDHR - - EPD_2in7_SendCommand(0x06); // BOOSTER_SOFT_START - EPD_2in7_SendData(0x07); - EPD_2in7_SendData(0x07); - EPD_2in7_SendData(0x17); - - // Power optimization - EPD_2in7_SendCommand(0xF8); - EPD_2in7_SendData(0x60); - EPD_2in7_SendData(0xA5); - - // Power optimization - EPD_2in7_SendCommand(0xF8); - EPD_2in7_SendData(0x89); - EPD_2in7_SendData(0xA5); - - // Power optimization - EPD_2in7_SendCommand(0xF8); - EPD_2in7_SendData(0x90); - EPD_2in7_SendData(0x00); - - // Power optimization - EPD_2in7_SendCommand(0xF8); - EPD_2in7_SendData(0x93); - EPD_2in7_SendData(0x2A); - - // Power optimization - EPD_2in7_SendCommand(0xF8); - EPD_2in7_SendData(0xA0); - EPD_2in7_SendData(0xA5); - - // Power optimization - EPD_2in7_SendCommand(0xF8); - EPD_2in7_SendData(0xA1); - EPD_2in7_SendData(0x00); - - // Power optimization - EPD_2in7_SendCommand(0xF8); - EPD_2in7_SendData(0x73); - EPD_2in7_SendData(0x41); - - EPD_2in7_SendCommand(0x16); // PARTIAL_DISPLAY_REFRESH - EPD_2in7_SendData(0x00); - - EPD_2in7_SendCommand(0x04); // POWER_ON - EPD_2in7_ReadBusy(); - - EPD_2in7_SendCommand(0x00); // PANEL_SETTING - EPD_2in7_SendData(0xAF); // KW-BF KWR-AF BWROTP 0f - EPD_2in7_SendCommand(0x30); // PLL_CONTROL - EPD_2in7_SendData(0x3A); // 3A 100HZ 29 150Hz 39 200HZ 31 171HZ - EPD_2in7_SendCommand(0x82); // VCM_DC_SETTING_REGISTER - EPD_2in7_SendData(0x12); - - EPD_2in7_SetLut(); -} - -/****************************************************************************** -function : Clear screen -parameter: -******************************************************************************/ -void EPD_2IN7_Clear(void) -{ - UWORD Width, Height; - Width = (EPD_2IN7_WIDTH % 8 == 0)? (EPD_2IN7_WIDTH / 8 ): (EPD_2IN7_WIDTH / 8 + 1); - Height = EPD_2IN7_HEIGHT; - - EPD_2in7_SendCommand(0x10); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_2in7_SendData(0XFF); - } - } - - EPD_2in7_SendCommand(0x13); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_2in7_SendData(0XFF); - } - } - - EPD_2in7_SendCommand(0x12); - EPD_2in7_ReadBusy(); -} - -/****************************************************************************** -function : Sends the image buffer in RAM to e-Paper and displays -parameter: -******************************************************************************/ -void EPD_2IN7_Display(UBYTE *Image) -{ - UWORD Width, Height; - Width = (EPD_2IN7_WIDTH % 8 == 0)? (EPD_2IN7_WIDTH / 8 ): (EPD_2IN7_WIDTH / 8 + 1); - Height = EPD_2IN7_HEIGHT; - - EPD_2in7_SendCommand(0x10); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_2in7_SendData(0XFF); - } - } - - EPD_2in7_SendCommand(0x13); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_2in7_SendData(Image[i + j * Width]); - } - } - EPD_2in7_SendCommand(0x12); - EPD_2in7_ReadBusy(); -} - -/****************************************************************************** -function : Enter sleep mode -parameter: -******************************************************************************/ -void EPD_2IN7_Sleep(void) -{ - EPD_2in7_SendCommand(0X50); - EPD_2in7_SendData(0xf7); - EPD_2in7_SendCommand(0X02); //power off - EPD_2in7_SendCommand(0X07); //deep sleep - EPD_2in7_SendData(0xA5); -} diff --git a/Raspberry Pi/c/lib/e-Paper/EPD_2in7.h b/Raspberry Pi/c/lib/e-Paper/EPD_2in7.h deleted file mode 100644 index af8ea7e..0000000 --- a/Raspberry Pi/c/lib/e-Paper/EPD_2in7.h +++ /dev/null @@ -1,96 +0,0 @@ -/***************************************************************************** -* | File : EPD_2in7.h -* | Author : Waveshare team -* | Function : 2.7inch e-paper -* | Info : -*---------------- -* | This version: V3.0 -* | Date : 2019-06-12 -* | Info : -* ----------------------------------------------------------------------------- -* V3.0(2019-06-12): -* 1.Change: -* lut_vcom_dc[] => EPD_2in7_lut_vcom_dc[] -* lut_ww[] => EPD_2in7_lut_ww[] -* lut_bw[] => EPD_2in7_lut_bw[] -* lut_bb[] => EPD_2in7_lut_bb[] -* lut_wb[] => EPD_2in7_lut_wb[] -* EPD_Reset() => EPD_2in7_Reset() -* EPD_SendCommand() => EPD_2in7_SendCommand() -* EPD_SendData() => EPD_2in7_SendData() -* EPD_WaitUntilIdle() => EPD_2in7_ReadBusy() -* EPD_SetLut() => EPD_2in7_SetLut() -* EPD_Init() => EPD_2in7_Init() -* EPD_Clear() => EPD_2in7_Clear() -* EPD_Display() => EPD_2in7_Display() -* EPD_Sleep() => EPD_2in7_Sleep() -* 2.remove commands define: -* #define PANEL_SETTING 0x00 -* #define POWER_SETTING 0x01 -* #define POWER_OFF 0x02 -* #define POWER_OFF_SEQUENCE_SETTING 0x03 -* #define POWER_ON 0x04 -* #define POWER_ON_MEASURE 0x05 -* #define BOOSTER_SOFT_START 0x06 -* #define DEEP_SLEEP 0x07 -* #define DATA_START_TRANSMISSION_1 0x10 -* #define DATA_STOP 0x11 -* #define DISPLAY_REFRESH 0x12 -* #define DATA_START_TRANSMISSION_2 0x13 -* #define PLL_CONTROL 0x30 -* #define TEMPERATURE_SENSOR_COMMAND 0x40 -* #define TEMPERATURE_SENSOR_CALIBRATION 0x41 -* #define TEMPERATURE_SENSOR_WRITE 0x42 -* #define TEMPERATURE_SENSOR_READ 0x43 -* #define VCOM_AND_DATA_INTERVAL_SETTING 0x50 -* #define LOW_POWER_DETECTION 0x51 -* #define TCON_SETTING 0x60 -* #define TCON_RESOLUTION 0x61 -* #define SOURCE_AND_GATE_START_SETTING 0x62 -* #define GET_STATUS 0x71 -* #define AUTO_MEASURE_VCOM 0x80 -* #define VCOM_VALUE 0x81 -* #define VCM_DC_SETTING_REGISTER 0x82 -* #define PROGRAM_MODE 0xA0 -* #define ACTIVE_PROGRAM 0xA1 -* #define READ_OTP_DATA 0xA2 -* ----------------------------------------------------------------------------- -* V2.0(2018-11-06): -* 1.Remove:ImageBuff[EPD_HEIGHT * EPD_WIDTH / 8] -* 2.Change:EPD_Display(UBYTE *Image) -* Need to pass parameters: pointer to cached data -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#ifndef __EPD_2IN7_H_ -#define __EPD_2IN7_H_ - -#include "DEV_Config.h" - -// Display resolution -#define EPD_2IN7_WIDTH 176 -#define EPD_2IN7_HEIGHT 264 - -void EPD_2IN7_Init(void); -void EPD_2IN7_Clear(void); -void EPD_2IN7_Display(UBYTE *Image); -void EPD_2IN7_Sleep(void); - -#endif diff --git a/Raspberry Pi/c/lib/e-Paper/EPD_2in7b.h b/Raspberry Pi/c/lib/e-Paper/EPD_2in7b.h deleted file mode 100644 index 10f8ef6..0000000 --- a/Raspberry Pi/c/lib/e-Paper/EPD_2in7b.h +++ /dev/null @@ -1,103 +0,0 @@ -/***************************************************************************** -* | File : EPD_2in7b.h -* | Author : Waveshare team -* | Function : 2.7inch e-paper b -* | Info : -*---------------- -* | This version: V3.0 -* | Date : 2019-06-12 -* | Info : -* ----------------------------------------------------------------------------- -* V3.0(2019-06-12): -* lut_vcom_dc[] => EPD_2in7B_lut_vcom_dc[] -* lut_ww[] => EPD_2in7B_lut_ww[] -* lut_bw[] => EPD_2in7B_lut_bw[] -* lut_bb[] => EPD_2in7B_lut_bb[] -* lut_wb[] => EPD_2in7B_lut_wb[] -* EPD_Reset() => EPD_2in7B_Reset() -* EPD_SendCommand() => EPD_2in7B_SendCommand() -* EPD_SendData() => EPD_2in7B_SendData() -* EPD_WaitUntilIdle() => EPD_2in7B_ReadBusy() -* EPD_SetLut() => EPD_2in7B_SetLut() -* EPD_Init() => EPD_2in7B_Init() -* EPD_Clear() => EPD_2in7B_Clear() -* EPD_Display() => EPD_2in7B_Display() -* EPD_Sleep() => EPD_2in7B_Sleep() -* 2.remove commands define: -* #define PANEL_SETTING 0x00 -* #define POWER_SETTING 0x01 -* #define POWER_OFF 0x02 -* #define POWER_OFF_SEQUENCE_SETTING 0x03 -* #define POWER_ON 0x04 -* #define POWER_ON_MEASURE 0x05 -* #define BOOSTER_SOFT_START 0x06 -* #define DEEP_SLEEP 0x07 -* #define DATA_START_TRANSMISSION_1 0x10 -* #define DATA_STOP 0x11 -* #define DISPLAY_REFRESH 0x12 -* #define DATA_START_TRANSMISSION_2 0x13 -* #define PARTIAL_DATA_START_TRANSMISSION_1 0x14 -* #define PARTIAL_DATA_START_TRANSMISSION_2 0x15 -* #define PARTIAL_DISPLAY_REFRESH 0x16 -* #define LUT_FOR_VCOM 0x20 -* #define LUT_WHITE_TO_WHITE 0x21 -* #define LUT_BLACK_TO_WHITE 0x22 -* #define LUT_WHITE_TO_BLACK 0x23 -* #define LUT_BLACK_TO_BLACK 0x24 -* #define PLL_CONTROL 0x30 -* #define TEMPERATURE_SENSOR_COMMAND 0x40 -* #define TEMPERATURE_SENSOR_CALIBRATION 0x41 -* #define TEMPERATURE_SENSOR_WRITE 0x42 -* #define TEMPERATURE_SENSOR_READ 0x43 -* #define VCOM_AND_DATA_INTERVAL_SETTING 0x50 -* #define LOW_POWER_DETECTION 0x51 -* #define TCON_SETTING 0x60 -* #define TCON_RESOLUTION 0x61 -* #define SOURCE_AND_GATE_START_SETTING 0x62 -* #define GET_STATUS 0x71 -* #define AUTO_MEASURE_VCOM 0x80 -* #define VCOM_VALUE 0x81 -* #define VCM_DC_SETTING_REGISTER 0x82 -* #define PROGRAM_MODE 0xA0 -* #define ACTIVE_PROGRAM 0xA1 -* #define READ_OTP_DATA 0xA2 -* ----------------------------------------------------------------------------- -* V2.0(2018-10-30): -* 1.Remove:ImageBuff[EPD_HEIGHT * EPD_WIDTH / 8] -* 2.Change:EPD_Display(UBYTE *Image) -* Need to pass parameters: pointer to cached data -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#ifndef __EPD_2IN7B_H_ -#define __EPD_2IN7B_H_ - -#include "DEV_Config.h" - -// Display resolution -#define EPD_2IN7B_WIDTH 176 -#define EPD_2IN7B_HEIGHT 264 - -void EPD_2IN7B_Init(void); -void EPD_2IN7B_Clear(void); -void EPD_2IN7B_Display(UBYTE *Imageblack, UBYTE *Imagered); -void EPD_2IN7B_Sleep(void); - -#endif diff --git a/Raspberry Pi/c/lib/e-Paper/EPD_2in9.h b/Raspberry Pi/c/lib/e-Paper/EPD_2in9.h deleted file mode 100644 index c409d3e..0000000 --- a/Raspberry Pi/c/lib/e-Paper/EPD_2in9.h +++ /dev/null @@ -1,96 +0,0 @@ -/***************************************************************************** -* | File : EPD_2in9.h -* | Author : Waveshare team -* | Function : 2.9inch e-paper -* | Info : -*---------------- -* | This version: V3.0 -* | Date : 2019-06-12 -* | Info : -* ----------------------------------------------------------------------------- -* V3.0(2019-06-12): -* 1.Change: -* lut_full_update[] => EPD_2IN9_lut_full_update[] -* lut_partial_update[] => EPD_2IN9_lut_partial_update[] -* EPD_Reset() => EPD_2IN9_Reset() -* EPD_SendCommand() => EPD_2IN9_SendCommand() -* EPD_SendData() => EPD_2IN9_SendData() -* EPD_WaitUntilIdle() => EPD_2IN9_ReadBusy() -* EPD_SetLut() => EPD_2IN9_SetLut() -* EPD_SetWindow() => EPD_2IN9_SetWindow() -* EPD_SetCursor() => EPD_2IN9_SetCursor() -* EPD_TurnOnDisplay() => EPD_2IN9_TurnOnDisplay() -* EPD_Init() => EPD_2IN9_Init() -* EPD_Clear() => EPD_2IN9_Clear() -* EPD_Display() => EPD_2IN9_Display() -* EPD_Sleep() => EPD_2IN9_Sleep() -* 2.remove commands define: -* #define DRIVER_OUTPUT_CONTROL 0x01 -* #define BOOSTER_SOFT_START_CONTROL 0x0C -* #define GATE_SCAN_START_POSITION 0x0F -* #define DEEP_SLEEP_MODE 0x10 -* #define DATA_ENTRY_MODE_SETTING 0x11 -* #define SW_RESET 0x12 -* #define TEMPERATURE_SENSOR_CONTROL 0x1A -* #define MASTER_ACTIVATION 0x20 -* #define DISPLAY_UPDATE_CONTROL_1 0x21 -* #define DISPLAY_UPDATE_CONTROL_2 0x22 -* #define WRITE_RAM 0x24 -* #define WRITE_VCOM_REGISTER 0x2C -* #define WRITE_LUT_REGISTER 0x32 -* #define SET_DUMMY_LINE_PERIOD 0x3A -* #define SET_GATE_TIME 0x3B -* #define BORDER_WAVEFORM_CONTROL 0x3C -* #define SET_RAM_X_ADDRESS_START_END_POSITION 0x44 -* #define SET_RAM_Y_ADDRESS_START_END_POSITION 0x45 -* #define SET_RAM_X_ADDRESS_COUNTER 0x4E -* #define SET_RAM_Y_ADDRESS_COUNTER 0x4F -* #define TERMINATE_FRAME_READ_WRITE 0xFF -* ----------------------------------------------------------------------------- -* V2.0(2018-11-06): -* 1.Remove:ImageBuff[EPD_2IN9_HEIGHT * EPD_2IN9_WIDTH / 8] -* 2.Change:EPD_Display(UBYTE *Image) -* Need to pass parameters: pointer to cached data -* 3.Change: -* EPD_RST -> EPD_RST_PIN -* EPD_DC -> EPD_DC_PIN -* EPD_CS -> EPD_CS_PIN -* EPD_BUSY -> EPD_BUSY_PIN -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#ifndef __EPD_2IN9_H_ -#define __EPD_2IN9_H_ - -#include "DEV_Config.h" - -// Display resolution -#define EPD_2IN9_WIDTH 128 -#define EPD_2IN9_HEIGHT 296 - -#define EPD_2IN9_FULL 0 -#define EPD_2IN9_PART 1 - -void EPD_2IN9_Init(UBYTE Mode); -void EPD_2IN9_Clear(void); -void EPD_2IN9_Display(UBYTE *Image); -void EPD_2IN9_Sleep(void); - -#endif diff --git a/Raspberry Pi/c/lib/e-Paper/EPD_2in9bc.c b/Raspberry Pi/c/lib/e-Paper/EPD_2in9bc.c deleted file mode 100644 index 9746e72..0000000 --- a/Raspberry Pi/c/lib/e-Paper/EPD_2in9bc.c +++ /dev/null @@ -1,240 +0,0 @@ -/***************************************************************************** -* | File : EPD_2in9bc.c -* | Author : Waveshare team -* | Function : 2.9inch e-paper b&c -* | Info : -*---------------- -* | This version: V3.0 -* | Date : 2019-06-12 -* | Info : -* ----------------------------------------------------------------------------- -* V3.0(2019-06-12): -* 1.Change: -* EPD_Reset() => EPD_2IN9BC_Reset() -* EPD_SendCommand() => EPD_2IN9BC_SendCommand() -* EPD_SendData() => EPD_2IN9BC_SendData() -* EPD_WaitUntilIdle() => EPD_2IN9BC_ReadBusy() -* EPD_Init() => EPD_2IN9BC_Init() -* EPD_Clear() => EPD_2IN9BC_Clear() -* EPD_Display() => EPD_2IN9BC_Display() -* EPD_Sleep() => EPD_2IN9BC_Sleep() -* 2.remove commands define: -* #define PANEL_SETTING 0x00 -* #define POWER_SETTING 0x01 -* #define POWER_OFF 0x02 -* #define POWER_OFF_SEQUENCE_SETTING 0x03 -* #define POWER_ON 0x04 -* #define POWER_ON_MEASURE 0x05 -* #define BOOSTER_SOFT_START 0x06 -* #define DEEP_SLEEP 0x07 -* #define DATA_START_TRANSMISSION_1 0x10 -* #define DATA_STOP 0x11 -* #define DISPLAY_REFRESH 0x12 -* #define DATA_START_TRANSMISSION_2 0x13 -* #define PLL_CONTROL 0x30 -* #define TEMPERATURE_SENSOR_COMMAND 0x40 -* #define TEMPERATURE_SENSOR_CALIBRATION 0x41 -* #define TEMPERATURE_SENSOR_WRITE 0x42 -* #define TEMPERATURE_SENSOR_READ 0x43 -* #define VCOM_AND_DATA_INTERVAL_SETTING 0x50 -* #define LOW_POWER_DETECTION 0x51 -* #define TCON_SETTING 0x60 -* #define TCON_RESOLUTION 0x61 -* #define GET_STATUS 0x71 -* #define AUTO_MEASURE_VCOM 0x80 -* #define VCOM_VALUE 0x81 -* #define VCM_DC_SETTING_REGISTER 0x82 -* #define PARTIAL_WINDOW 0x90 -* #define PARTIAL_IN 0x91 -* #define PARTIAL_OUT 0x92 -* #define PROGRAM_MODE 0xA0 -* #define ACTIVE_PROGRAM 0xA1 -* #define READ_OTP_DATA 0xA2 -* #define POWER_SAVING 0xE3 -* ----------------------------------------------------------------------------- -* V2.0(2018-11-06): -* 1.Remove:ImageBuff[EPD_HEIGHT * EPD_WIDTH / 8] -* 2.Change:EPD_Display(UBYTE *Image) -* Need to pass parameters: pointer to cached data -* 3.Change: -* EPD_RST -> EPD_RST_PIN -* EPD_DC -> EPD_DC_PIN -* EPD_CS -> EPD_CS_PIN -* EPD_BUSY -> EPD_BUSY_PIN -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "EPD_2in9bc.h" -#include "Debug.h" - -/****************************************************************************** -function : Software reset -parameter: -******************************************************************************/ -static void EPD_2IN9BC_Reset(void) -{ - DEV_Digital_Write(EPD_RST_PIN, 1); - DEV_Delay_ms(200); - DEV_Digital_Write(EPD_RST_PIN, 0); - DEV_Delay_ms(10); - DEV_Digital_Write(EPD_RST_PIN, 1); - DEV_Delay_ms(200); -} - -/****************************************************************************** -function : send command -parameter: - Reg : Command register -******************************************************************************/ -static void EPD_2IN9BC_SendCommand(UBYTE Reg) -{ - DEV_Digital_Write(EPD_DC_PIN, 0); - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_SPI_WriteByte(Reg); - DEV_Digital_Write(EPD_CS_PIN, 1); -} - -/****************************************************************************** -function : send data -parameter: - Data : Write data -******************************************************************************/ -static void EPD_2IN9BC_SendData(UBYTE Data) -{ - DEV_Digital_Write(EPD_DC_PIN, 1); - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_SPI_WriteByte(Data); - DEV_Digital_Write(EPD_CS_PIN, 1); -} - -/****************************************************************************** -function : Wait until the busy_pin goes LOW -parameter: -******************************************************************************/ -void EPD_2IN9BC_ReadBusy(void) -{ - Debug("e-Paper busy\r\n"); - while(DEV_Digital_Read(EPD_BUSY_PIN) == 0) { //LOW: idle, HIGH: busy - DEV_Delay_ms(100); - } - Debug("e-Paper busy release\r\n"); -} - -/****************************************************************************** -function : Initialize the e-Paper register -parameter: -******************************************************************************/ -void EPD_2IN9BC_Init(void) -{ - EPD_2IN9BC_Reset(); - - EPD_2IN9BC_SendCommand(0x06); // BOOSTER_SOFT_START - EPD_2IN9BC_SendData(0x17); - EPD_2IN9BC_SendData(0x17); - EPD_2IN9BC_SendData(0x17); - - EPD_2IN9BC_SendCommand(0x04); // POWER_ON - EPD_2IN9BC_ReadBusy(); - - EPD_2IN9BC_SendCommand(0x00); // PANEL_SETTING - EPD_2IN9BC_SendData(0x8F); - - EPD_2IN9BC_SendCommand(0x50); // VCOM_AND_DATA_INTERVAL_SETTING - EPD_2IN9BC_SendData(0x77); - - EPD_2IN9BC_SendCommand(0x61); // TCON_RESOLUTION - EPD_2IN9BC_SendData(0x80); - EPD_2IN9BC_SendData(0x01); - EPD_2IN9BC_SendData(0x28); - - EPD_2IN9BC_SendCommand(0x82); // VCM_DC_SETTING_REGISTER - EPD_2IN9BC_SendData(0X0A); -} - -/****************************************************************************** -function : Clear screen -parameter: -******************************************************************************/ -void EPD_2IN9BC_Clear(void) -{ - UWORD Width = (EPD_2IN9BC_WIDTH % 8 == 0)? (EPD_2IN9BC_WIDTH / 8 ): (EPD_2IN9BC_WIDTH / 8 + 1); - UWORD Height = EPD_2IN9BC_HEIGHT; - - //send black data - EPD_2IN9BC_SendCommand(0x10); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_2IN9BC_SendData(0xFF); - } - } - - //send red data - EPD_2IN9BC_SendCommand(0x13); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_2IN9BC_SendData(0xFF); - } - } - - EPD_2IN9BC_SendCommand(0x12); - EPD_2IN9BC_ReadBusy(); -} - -/****************************************************************************** -function : Sends the image buffer in RAM to e-Paper and displays -parameter: -******************************************************************************/ -void EPD_2IN9BC_Display(const UBYTE *blackimage, const UBYTE *ryimage) -{ - UWORD Width, Height; - Width = (EPD_2IN9BC_WIDTH % 8 == 0)? (EPD_2IN9BC_WIDTH / 8 ): (EPD_2IN9BC_WIDTH / 8 + 1); - Height = EPD_2IN9BC_HEIGHT; - - EPD_2IN9BC_SendCommand(0x10); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_2IN9BC_SendData(blackimage[i + j * Width]); - } - } - EPD_2IN9BC_SendCommand(0x92); - - EPD_2IN9BC_SendCommand(0x13); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_2IN9BC_SendData(ryimage[i + j * Width]); - } - } - EPD_2IN9BC_SendCommand(0x92); - - EPD_2IN9BC_SendCommand(0x12); - EPD_2IN9BC_ReadBusy(); -} - -/****************************************************************************** -function : Enter sleep mode -parameter: -******************************************************************************/ -void EPD_2IN9BC_Sleep(void) -{ - EPD_2IN9BC_SendCommand(0x02); // POWER_OFF - EPD_2IN9BC_ReadBusy(); - EPD_2IN9BC_SendCommand(0x07); // DEEP_SLEEP - EPD_2IN9BC_SendData(0xA5); // check code -} diff --git a/Raspberry Pi/c/lib/e-Paper/EPD_2in9bc.h b/Raspberry Pi/c/lib/e-Paper/EPD_2in9bc.h deleted file mode 100644 index 05a54e9..0000000 --- a/Raspberry Pi/c/lib/e-Paper/EPD_2in9bc.h +++ /dev/null @@ -1,98 +0,0 @@ -/***************************************************************************** -* | File : EPD_2in9bc.h -* | Author : Waveshare team -* | Function : 2.9inch e-paper b&c -* | Info : -*---------------- -* | This version: V3.0 -* | Date : 2019-06-12 -* | Info : -* ----------------------------------------------------------------------------- -* V3.0(2019-06-12): -* 1.Change: -* EPD_Reset() => EPD_2IN9BC_Reset() -* EPD_SendCommand() => EPD_2IN9BC_SendCommand() -* EPD_SendData() => EPD_2IN9BC_SendData() -* EPD_WaitUntilIdle() => EPD_2IN9BC_ReadBusy() -* EPD_Init() => EPD_2IN9BC_Init() -* EPD_Clear() => EPD_2IN9BC_Clear() -* EPD_Display() => EPD_2IN9BC_Display() -* EPD_Sleep() => EPD_2IN9BC_Sleep() -* 2.remove commands define: -* #define PANEL_SETTING 0x00 -* #define POWER_SETTING 0x01 -* #define POWER_OFF 0x02 -* #define POWER_OFF_SEQUENCE_SETTING 0x03 -* #define POWER_ON 0x04 -* #define POWER_ON_MEASURE 0x05 -* #define BOOSTER_SOFT_START 0x06 -* #define DEEP_SLEEP 0x07 -* #define DATA_START_TRANSMISSION_1 0x10 -* #define DATA_STOP 0x11 -* #define DISPLAY_REFRESH 0x12 -* #define DATA_START_TRANSMISSION_2 0x13 -* #define PLL_CONTROL 0x30 -* #define TEMPERATURE_SENSOR_COMMAND 0x40 -* #define TEMPERATURE_SENSOR_CALIBRATION 0x41 -* #define TEMPERATURE_SENSOR_WRITE 0x42 -* #define TEMPERATURE_SENSOR_READ 0x43 -* #define VCOM_AND_DATA_INTERVAL_SETTING 0x50 -* #define LOW_POWER_DETECTION 0x51 -* #define TCON_SETTING 0x60 -* #define TCON_RESOLUTION 0x61 -* #define GET_STATUS 0x71 -* #define AUTO_MEASURE_VCOM 0x80 -* #define VCOM_VALUE 0x81 -* #define VCM_DC_SETTING_REGISTER 0x82 -* #define PARTIAL_WINDOW 0x90 -* #define PARTIAL_IN 0x91 -* #define PARTIAL_OUT 0x92 -* #define PROGRAM_MODE 0xA0 -* #define ACTIVE_PROGRAM 0xA1 -* #define READ_OTP_DATA 0xA2 -* #define POWER_SAVING 0xE3 -* ----------------------------------------------------------------------------- -* V2.0(2018-11-06): -* 1.Remove:ImageBuff[EPD_HEIGHT * EPD_WIDTH / 8] -* 2.Change:EPD_Display(UBYTE *Image) -* Need to pass parameters: pointer to cached data -* 3.Change: -* EPD_RST -> EPD_RST_PIN -* EPD_DC -> EPD_DC_PIN -* EPD_CS -> EPD_CS_PIN -* EPD_BUSY -> EPD_BUSY_PIN -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#ifndef __EPD_2IN9BC_H_ -#define __EPD_2IN9BC_H_ - -#include "DEV_Config.h" - -// Display resolution -#define EPD_2IN9BC_WIDTH 128 -#define EPD_2IN9BC_HEIGHT 296 - -void EPD_2IN9BC_Init(void); -void EPD_2IN9BC_Clear(void); -void EPD_2IN9BC_Display(const UBYTE *blackimage, const UBYTE *ryimage); -void EPD_2IN9BC_Sleep(void); - -#endif diff --git a/Raspberry Pi/c/lib/e-Paper/EPD_2in9d.c b/Raspberry Pi/c/lib/e-Paper/EPD_2in9d.c deleted file mode 100644 index 74401c0..0000000 --- a/Raspberry Pi/c/lib/e-Paper/EPD_2in9d.c +++ /dev/null @@ -1,446 +0,0 @@ -/***************************************************************************** -* | File : EPD_2in9d.c -* | Author : Waveshare team -* | Function : 2.9inch e-paper d -* | Info : -*---------------- -* | This version: V2.0 -* | Date : 2019-06-12 -* | Info : -* ----------------------------------------------------------------------------- -* V3.0(2019-06-12): -* 1.Change: -* lut_vcomDC[] => EPD_2IN9D_lut_vcomDC[] -* lut_ww[] => EPD_2IN9D_lut_ww[] -* lut_bw[] => EPD_2IN9D_lut_bw[] -* lut_wb[] => EPD_2IN9D_lut_wb[] -* lut_bb[] => EPD_2IN9D_lut_bb[] -* lut_vcom1[] => EPD_2IN9D_lut_vcom1[] -* lut_ww1[] => EPD_2IN9D_lut_ww1[] -* lut_bw1[] => EPD_2IN9D_lut_bw1[] -* lut_wb1[] => EPD_2IN9D_lut_wb1[] -* lut_bb1[] => EPD_2IN9D_lut_bb1[] -* EPD_Reset() => EPD_2IN9D_Reset() -* EPD_SendCommand() => EPD_2IN9D_SendCommand() -* EPD_SendData() => EPD_2IN9D_SendData() -* EPD_WaitUntilIdle() => EPD_2IN9D_ReadBusy() -* EPD_SetFullReg() => EPD_2IN9D_SetFullReg() -* EPD_SetPartReg() => EPD_2IN9D_SetPartReg() -* EPD_TurnOnDisplay() => EPD_2IN9D_TurnOnDisplay() -* EPD_Init() => EPD_2IN9D_Init() -* EPD_Clear() => EPD_2IN9D_Clear() -* EPD_Display() => EPD_2IN9D_Display() -* EPD_Sleep() => EPD_2IN9D_Sleep() -* -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "EPD_2in9d.h" -#include "Debug.h" - -/** - * full screen update LUT -**/ -const unsigned char EPD_2IN9D_lut_vcomDC[] = { - 0x00, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x60, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x00, 0x14, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, -}; -const unsigned char EPD_2IN9D_lut_ww[] = { - 0x40, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x40, 0x14, 0x00, 0x00, 0x00, 0x01, - 0xA0, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -}; -const unsigned char EPD_2IN9D_lut_bw[] = { - 0x40, 0x17, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x0F, 0x0F, 0x00, 0x00, 0x03, - 0x40, 0x0A, 0x01, 0x00, 0x00, 0x01, - 0xA0, 0x0E, 0x0E, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -}; -const unsigned char EPD_2IN9D_lut_wb[] = { - 0x80, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x80, 0x14, 0x00, 0x00, 0x00, 0x01, - 0x50, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -}; -const unsigned char EPD_2IN9D_lut_bb[] = { - 0x80, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x80, 0x14, 0x00, 0x00, 0x00, 0x01, - 0x50, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -}; - - -/** - * partial screen update LUT -**/ -const unsigned char EPD_2IN9D_lut_vcom1[] = { - 0x00, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, -}; -const unsigned char EPD_2IN9D_lut_ww1[] = { - 0x00, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, -}; -const unsigned char EPD_2IN9D_lut_bw1[] = { - 0x80, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, -}; -const unsigned char EPD_2IN9D_lut_wb1[] = { - 0x40, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, -}; -const unsigned char EPD_2IN9D_lut_bb1[] = { - 0x00, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, -}; - - -/****************************************************************************** -function : Software reset -parameter: -******************************************************************************/ -static void EPD_2IN9D_Reset(void) -{ - DEV_Digital_Write(EPD_RST_PIN, 1); - DEV_Delay_ms(200); - DEV_Digital_Write(EPD_RST_PIN, 0); - DEV_Delay_ms(200); - DEV_Digital_Write(EPD_RST_PIN, 1); - DEV_Delay_ms(200); -} - -/****************************************************************************** -function : send command -parameter: - Reg : Command register -******************************************************************************/ -static void EPD_2IN9D_SendCommand(UBYTE Reg) -{ - DEV_Digital_Write(EPD_DC_PIN, 0); - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_SPI_WriteByte(Reg); - DEV_Digital_Write(EPD_CS_PIN, 1); -} - -/****************************************************************************** -function : send data -parameter: - Data : Write data -******************************************************************************/ -static void EPD_2IN9D_SendData(UBYTE Data) -{ - DEV_Digital_Write(EPD_DC_PIN, 1); - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_SPI_WriteByte(Data); - DEV_Digital_Write(EPD_CS_PIN, 1); -} - -/****************************************************************************** -function : Wait until the busy_pin goes LOW -parameter: -******************************************************************************/ -void EPD_2IN9D_ReadBusy(void) -{ - Debug("e-Paper busy\r\n"); - UBYTE busy; - do { - EPD_2IN9D_SendCommand(0x71); - busy = DEV_Digital_Read(EPD_BUSY_PIN); - busy =!(busy & 0x01); - } while(busy); - DEV_Delay_ms(200); - Debug("e-Paper busy release\r\n"); -} - -/****************************************************************************** -function : LUT download -parameter: -******************************************************************************/ -static void EPD_SetFullReg(void) -{ - EPD_2IN9D_SendCommand(0X50); //VCOM AND DATA INTERVAL SETTING - EPD_2IN9D_SendData(0xb7); //WBmode:VBDF 17|D7 VBDW 97 VBDB 57 WBRmode:VBDF F7 VBDW 77 VBDB 37 VBDR B7 - - unsigned int count; - EPD_2IN9D_SendCommand(0x20); - for(count=0; count<44; count++) { - EPD_2IN9D_SendData(EPD_2IN9D_lut_vcomDC[count]); - } - - EPD_2IN9D_SendCommand(0x21); - for(count=0; count<42; count++) { - EPD_2IN9D_SendData(EPD_2IN9D_lut_ww[count]); - } - - EPD_2IN9D_SendCommand(0x22); - for(count=0; count<42; count++) { - EPD_2IN9D_SendData(EPD_2IN9D_lut_bw[count]); - } - - EPD_2IN9D_SendCommand(0x23); - for(count=0; count<42; count++) { - EPD_2IN9D_SendData(EPD_2IN9D_lut_wb[count]); - } - - EPD_2IN9D_SendCommand(0x24); - for(count=0; count<42; count++) { - EPD_2IN9D_SendData(EPD_2IN9D_lut_bb[count]); - } -} - -/****************************************************************************** -function : LUT download -parameter: -******************************************************************************/ -static void EPD_2IN9D_SetPartReg(void) -{ - EPD_2IN9D_SendCommand(0x82); //vcom_DC setting - EPD_2IN9D_SendData(0x00); - EPD_2IN9D_SendCommand(0X50); - EPD_2IN9D_SendData(0xb7); - - unsigned int count; - EPD_2IN9D_SendCommand(0x20); - for(count=0; count<44; count++) { - EPD_2IN9D_SendData(EPD_2IN9D_lut_vcom1[count]); - } - - EPD_2IN9D_SendCommand(0x21); - for(count=0; count<42; count++) { - EPD_2IN9D_SendData(EPD_2IN9D_lut_ww1[count]); - } - - EPD_2IN9D_SendCommand(0x22); - for(count=0; count<42; count++) { - EPD_2IN9D_SendData(EPD_2IN9D_lut_bw1[count]); - } - - EPD_2IN9D_SendCommand(0x23); - for(count=0; count<42; count++) { - EPD_2IN9D_SendData(EPD_2IN9D_lut_wb1[count]); - } - - EPD_2IN9D_SendCommand(0x24); - for(count=0; count<42; count++) { - EPD_2IN9D_SendData(EPD_2IN9D_lut_bb1[count]); - } -} - -/****************************************************************************** -function : Turn On Display -parameter: -******************************************************************************/ -static void EPD_2IN9D_TurnOnDisplay(void) -{ - EPD_2IN9D_SendCommand(0x12); //DISPLAY REFRESH - DEV_Delay_ms(10); //!!!The delay here is necessary, 200uS at least!!! - - EPD_2IN9D_ReadBusy(); -} - -/****************************************************************************** -function : Initialize the e-Paper register -parameter: -******************************************************************************/ -void EPD_2IN9D_Init(void) -{ - EPD_2IN9D_Reset(); - - EPD_2IN9D_SendCommand(0x01); //POWER SETTING - EPD_2IN9D_SendData(0x03); - EPD_2IN9D_SendData(0x00); - EPD_2IN9D_SendData(0x2b); - EPD_2IN9D_SendData(0x2b); - EPD_2IN9D_SendData(0x03); - - EPD_2IN9D_SendCommand(0x06); //boost soft start - EPD_2IN9D_SendData(0x17); //A - EPD_2IN9D_SendData(0x17); //B - EPD_2IN9D_SendData(0x17); //C - - EPD_2IN9D_SendCommand(0x04); - EPD_2IN9D_ReadBusy(); - - EPD_2IN9D_SendCommand(0x00); //panel setting - EPD_2IN9D_SendData(0xbf); //LUT from OTP锛128x296 - EPD_2IN9D_SendData(0x0e); //VCOM to 0V fast - - EPD_2IN9D_SendCommand(0x30); //PLL setting - EPD_2IN9D_SendData(0x3a); // 3a 100HZ 29 150Hz 39 200HZ 31 171HZ - - EPD_2IN9D_SendCommand(0x61); //resolution setting - EPD_2IN9D_SendData(EPD_2IN9D_WIDTH); - EPD_2IN9D_SendData((EPD_2IN9D_HEIGHT >> 8) & 0xff); - EPD_2IN9D_SendData(EPD_2IN9D_HEIGHT & 0xff); - - EPD_2IN9D_SendCommand(0x82); //vcom_DC setting - EPD_2IN9D_SendData(0x28); -} - -/****************************************************************************** -function : Clear screen -parameter: -******************************************************************************/ -void EPD_2IN9D_Clear(void) -{ - UWORD Width, Height; - Width = (EPD_2IN9D_WIDTH % 8 == 0)? (EPD_2IN9D_WIDTH / 8 ): (EPD_2IN9D_WIDTH / 8 + 1); - Height = EPD_2IN9D_HEIGHT; - - EPD_2IN9D_SendCommand(0x10); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_2IN9D_SendData(0x00); - } - } - - EPD_2IN9D_SendCommand(0x13); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_2IN9D_SendData(0xFF); - } - } - - EPD_SetFullReg(); - EPD_2IN9D_TurnOnDisplay(); -} - -/****************************************************************************** -function : Sends the image buffer in RAM to e-Paper and displays -parameter: -******************************************************************************/ -void EPD_2IN9D_Display(UBYTE *Image) -{ - UWORD Width, Height; - Width = (EPD_2IN9D_WIDTH % 8 == 0)? (EPD_2IN9D_WIDTH / 8 ): (EPD_2IN9D_WIDTH / 8 + 1); - Height = EPD_2IN9D_HEIGHT; - - EPD_2IN9D_SendCommand(0x10); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_2IN9D_SendData(0x00); - } - } - // Dev_Delay_ms(10); - - EPD_2IN9D_SendCommand(0x13); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_2IN9D_SendData(Image[i + j * Width]); - } - } - // Dev_Delay_ms(10); - - EPD_SetFullReg(); - EPD_2IN9D_TurnOnDisplay(); -} - -/****************************************************************************** -function : Sends the image buffer in RAM to e-Paper and displays -parameter: -******************************************************************************/ -void EPD_2IN9D_DisplayPart(UBYTE *Image) -{ - /* Set partial Windows */ - EPD_2IN9D_SetPartReg(); - EPD_2IN9D_SendCommand(0x91); //This command makes the display enter partial mode - EPD_2IN9D_SendCommand(0x90); //resolution setting - EPD_2IN9D_SendData(0); //x-start - EPD_2IN9D_SendData(EPD_2IN9D_WIDTH - 1); //x-end - - EPD_2IN9D_SendData(0); - EPD_2IN9D_SendData(0); //y-start - EPD_2IN9D_SendData(EPD_2IN9D_HEIGHT / 256); - EPD_2IN9D_SendData(EPD_2IN9D_HEIGHT % 256 - 1); //y-end - EPD_2IN9D_SendData(0x28); - - UWORD Width; - Width = (EPD_2IN9D_WIDTH % 8 == 0)? (EPD_2IN9D_WIDTH / 8 ): (EPD_2IN9D_WIDTH / 8 + 1); - - /* send data */ - EPD_2IN9D_SendCommand(0x13); - for (UWORD j = 0; j < EPD_2IN9D_HEIGHT; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_2IN9D_SendData(Image[i + j * Width]); - } - } - - /* Set partial refresh */ - EPD_2IN9D_TurnOnDisplay(); -} - - -/****************************************************************************** -function : Enter sleep mode -parameter: -******************************************************************************/ -void EPD_2IN9D_Sleep(void) -{ - EPD_2IN9D_SendCommand(0X50); - EPD_2IN9D_SendData(0xf7); - EPD_2IN9D_SendCommand(0X02); //power off - EPD_2IN9D_ReadBusy(); - EPD_2IN9D_SendCommand(0X07); //deep sleep - EPD_2IN9D_SendData(0xA5); -} diff --git a/Raspberry Pi/c/lib/e-Paper/EPD_2in9d.h b/Raspberry Pi/c/lib/e-Paper/EPD_2in9d.h deleted file mode 100644 index 6f55528..0000000 --- a/Raspberry Pi/c/lib/e-Paper/EPD_2in9d.h +++ /dev/null @@ -1,69 +0,0 @@ -/***************************************************************************** -* | File : EPD_2in9d.c -* | Author : Waveshare team -* | Function : 2.9inch e-paper d -* | Info : -*---------------- -* | This version: V2.0 -* | Date : 2019-06-12 -* | Info : -* ----------------------------------------------------------------------------- -* V3.0(2019-06-12): -* 1.Change: -* lut_vcomDC[] => EPD_2IN9D_lut_vcomDC[] -* lut_ww[] => EPD_2IN9D_lut_ww[] -* lut_bw[] => EPD_2IN9D_lut_bw[] -* lut_wb[] => EPD_2IN9D_lut_wb[] -* lut_bb[] => EPD_2IN9D_lut_bb[] -* lut_vcom1[] => EPD_2IN9D_lut_vcom1[] -* lut_ww1[] => EPD_2IN9D_lut_ww1[] -* lut_bw1[] => EPD_2IN9D_lut_bw1[] -* lut_wb1[] => EPD_2IN9D_lut_wb1[] -* lut_bb1[] => EPD_2IN9D_lut_bb1[] -* EPD_Reset() => EPD_2IN9D_Reset() -* EPD_SendCommand() => EPD_2IN9D_SendCommand() -* EPD_SendData() => EPD_2IN9D_SendData() -* EPD_WaitUntilIdle() => EPD_2IN9D_ReadBusy() -* EPD_SetFullReg() => EPD_2IN9D_SetFullReg() -* EPD_SetPartReg() => EPD_2IN9D_SetPartReg() -* EPD_TurnOnDisplay() => EPD_2IN9D_TurnOnDisplay() -* EPD_Init() => EPD_2IN9D_Init() -* EPD_Clear() => EPD_2IN9D_Clear() -* EPD_Display() => EPD_2IN9D_Display() -* EPD_Sleep() => EPD_2IN9D_Sleep() -* -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#ifndef __EPD_2IN9D_H_ -#define __EPD_2IN9D_H_ - -#include "DEV_Config.h" - -// Display resolution -#define EPD_2IN9D_WIDTH 128 -#define EPD_2IN9D_HEIGHT 296 - -void EPD_2IN9D_Init(void); -void EPD_2IN9D_Clear(void); -void EPD_2IN9D_Display(UBYTE *Image); -void EPD_2IN9D_DisplayPart(UBYTE *Image); -void EPD_2IN9D_Sleep(void); - -#endif diff --git a/Raspberry Pi/c/lib/e-Paper/EPD_4in2.c b/Raspberry Pi/c/lib/e-Paper/EPD_4in2.c deleted file mode 100644 index 9516c1b..0000000 --- a/Raspberry Pi/c/lib/e-Paper/EPD_4in2.c +++ /dev/null @@ -1,338 +0,0 @@ -/***************************************************************************** -* | File : EPD_4in2.c -* | Author : Waveshare team -* | Function : 4.2inch e-paper -* | Info : -*---------------- -* | This version: V3.0 -* | Date : 2019-06-13 -* | Info : -* ----------------------------------------------------------------------------- -* V3.0(2019-06-13): -* 1.Change: -* lut_vcomDC[] => EPD_4IN2_lut_vcomDC[] -* lut_ww[] => EPD_4IN2_lut_ww[] -* lut_bw[] => EPD_4IN2_lut_bw[] -* lut_wb[] => EPD_4IN2_lut_wb[] -* lut_bb[] => EPD_4IN2_lut_bb[] -* EPD_Reset() => EPD_4IN2_Reset() -* EPD_SendCommand() => EPD_4IN2_SendCommand() -* EPD_SendData() => EPD_4IN2_SendData() -* EPD_WaitUntilIdle() => EPD_4IN2_ReadBusy() -* EPD_SetFullReg() => EPD_4IN2_SetFullReg() -* EPD_SetPartReg() => EPD_4IN2_SetPartReg() -* EPD_TurnOnDisplay() => EPD_4IN2_TurnOnDisplay() -* EPD_Init() => EPD_4IN2_Init() -* EPD_Clear() => EPD_4IN2_Clear() -* EPD_Display() => EPD_4IN2_Display() -* EPD_Sleep() => EPD_4IN2_Sleep() -* 2.remove commands define: -* #define PANEL_SETTING 0x00 -* #define POWER_SETTING 0x01 -* #define POWER_OFF 0x02 -* #define POWER_OFF_SEQUENCE_SETTING 0x03 -* #define POWER_ON 0x04 -* #define POWER_ON_MEASURE 0x05 -* #define BOOSTER_SOFT_START 0x06 -* #define DEEP_SLEEP 0x07 -* #define DATA_START_TRANSMISSION_1 0x10 -* #define DATA_STOP 0x11 -* #define DISPLAY_REFRESH 0x12 -* #define DATA_START_TRANSMISSION_2 0x13 -* #define VCOM_LUT 0x20 -* #define W2W_LUT 0x21 -* #define B2W_LUT 0x22 -* #define W2B_LUT 0x23 -* #define B2B_LUT 0x24 -* #define PLL_CONTROL 0x30 -* #define TEMPERATURE_SENSOR_CALIBRATION 0x40 -* #define TEMPERATURE_SENSOR_SELECTION 0x41 -* #define TEMPERATURE_SENSOR_WRITE 0x42 -* #define TEMPERATURE_SENSOR_READ 0x43 -* #define VCOM_AND_DATA_INTERVAL_SETTING 0x50 -* #define LOW_POWER_DETECTION 0x51 -* #define TCON_SETTING 0x60 -* #define RESOLUTION_SETTING 0x61 -* #define GET_STATUS 0x71 -* #define AUTO_MEASURE_VCOM 0x80 -* #define READ_VCOM_VALUE 0x81 -* #define VCM_DC_SETTING 0x82 -* #define PARTIAL_WINDOW 0x90 -* #define PARTIAL_IN 0x91 -* #define PARTIAL_OUT 0x92 -* #define PROGRAM_MODE 0xA0 -* #define ACTIVE_PROGRAM 0xA1 -* #define READ_OTP_DATA 0xA2 -* #define POWER_SAVING 0xE3 -* V2.0(2018-10-30): -* 1.Remove:ImageBuff[EPD_HEIGHT * EPD_WIDTH / 8] -* 2.Change:EPD_Display(UBYTE *Image) -* Need to pass parameters: pointer to cached data -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "EPD_4in2.h" -#include "Debug.h" - -static const unsigned char EPD_4IN2_lut_vcom0[] = { - 0x00, 0x17, 0x00, 0x00, 0x00, 0x02, - 0x00, 0x17, 0x17, 0x00, 0x00, 0x02, - 0x00, 0x0A, 0x01, 0x00, 0x00, 0x01, - 0x00, 0x0E, 0x0E, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -}; -static const unsigned char EPD_4IN2_lut_ww[] = { - 0x40, 0x17, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x17, 0x17, 0x00, 0x00, 0x02, - 0x40, 0x0A, 0x01, 0x00, 0x00, 0x01, - 0xA0, 0x0E, 0x0E, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -}; -static const unsigned char EPD_4IN2_lut_bw[] = { - 0x40, 0x17, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x17, 0x17, 0x00, 0x00, 0x02, - 0x40, 0x0A, 0x01, 0x00, 0x00, 0x01, - 0xA0, 0x0E, 0x0E, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -}; -static const unsigned char EPD_4IN2_lut_wb[] = { - 0x80, 0x17, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x17, 0x17, 0x00, 0x00, 0x02, - 0x80, 0x0A, 0x01, 0x00, 0x00, 0x01, - 0x50, 0x0E, 0x0E, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -}; -static const unsigned char EPD_4IN2_lut_bb[] = { - 0x80, 0x17, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x17, 0x17, 0x00, 0x00, 0x02, - 0x80, 0x0A, 0x01, 0x00, 0x00, 0x01, - 0x50, 0x0E, 0x0E, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -}; - -/****************************************************************************** -function : Software reset -parameter: -******************************************************************************/ -static void EPD_4IN2_Reset(void) -{ - DEV_Digital_Write(EPD_RST_PIN, 1); - DEV_Delay_ms(200); - DEV_Digital_Write(EPD_RST_PIN, 0); - DEV_Delay_ms(200); - DEV_Digital_Write(EPD_RST_PIN, 1); - DEV_Delay_ms(200); -} - -/****************************************************************************** -function : send command -parameter: - Reg : Command register -******************************************************************************/ -static void EPD_4IN2_SendCommand(UBYTE Reg) -{ - DEV_Digital_Write(EPD_DC_PIN, 0); - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_SPI_WriteByte(Reg); - DEV_Digital_Write(EPD_CS_PIN, 1); -} - -/****************************************************************************** -function : send data -parameter: - Data : Write data -******************************************************************************/ -static void EPD_4IN2_SendData(UBYTE Data) -{ - DEV_Digital_Write(EPD_DC_PIN, 1); - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_SPI_WriteByte(Data); - DEV_Digital_Write(EPD_CS_PIN, 1); -} - -/****************************************************************************** -function : Wait until the busy_pin goes LOW -parameter: -******************************************************************************/ -void EPD_4IN2_ReadBusy(void) -{ - Debug("e-Paper busy\r\n"); - while(DEV_Digital_Read(EPD_BUSY_PIN) == 0) { //LOW: idle, HIGH: busy - DEV_Delay_ms(100); - } - Debug("e-Paper busy release\r\n"); -} - -/****************************************************************************** -function : Turn On Display -parameter: -******************************************************************************/ -static void EPD_4IN2_TurnOnDisplay(void) -{ - EPD_4IN2_SendCommand(0x12); - DEV_Delay_ms(100); - EPD_4IN2_ReadBusy(); -} - -/****************************************************************************** -function : set the look-up tables -parameter: -******************************************************************************/ -static void EPD_4IN2_SetLut(void) -{ - UWORD count; - EPD_4IN2_SendCommand(0x20); //g vcom - for(count=0; count<44; count++) { - EPD_4IN2_SendData(EPD_4IN2_lut_vcom0[count]); - } - - EPD_4IN2_SendCommand(0x21); - for(count=0; count<42; count++) { - EPD_4IN2_SendData(EPD_4IN2_lut_ww[count]); - } - - EPD_4IN2_SendCommand(0x22); - for(count=0; count<42; count++) { - EPD_4IN2_SendData(EPD_4IN2_lut_bw[count]); - } - - EPD_4IN2_SendCommand(0x23); - for(count=0; count<42; count++) { - EPD_4IN2_SendData(EPD_4IN2_lut_wb[count]); - } - - EPD_4IN2_SendCommand(0x24); - for(count=0; count<42; count++) { - EPD_4IN2_SendData(EPD_4IN2_lut_bb[count]); - } -} - -/****************************************************************************** -function : Initialize the e-Paper register -parameter: -******************************************************************************/ -void EPD_4IN2_Init(void) -{ - EPD_4IN2_Reset(); - - EPD_4IN2_SendCommand(0x01); // POWER SETTING - EPD_4IN2_SendData(0x03); - EPD_4IN2_SendData(0x00); - EPD_4IN2_SendData(0x2b); - EPD_4IN2_SendData(0x2b); - - EPD_4IN2_SendCommand(0x06); // boost soft start - EPD_4IN2_SendData(0x17); //A - EPD_4IN2_SendData(0x17); //B - EPD_4IN2_SendData(0x17); //C - - EPD_4IN2_SendCommand(0x04); // POWER_ON - EPD_4IN2_ReadBusy(); - - EPD_4IN2_SendCommand(0x00); // panel setting - EPD_4IN2_SendData(0xbf); // KW-BF KWR-AF BWROTP 0f BWOTP 1f - EPD_4IN2_SendData(0x0d); - - EPD_4IN2_SendCommand(0x30); // PLL setting - EPD_4IN2_SendData(0x3C); // 3A 100HZ 29 150Hz 39 200HZ 31 171HZ - - EPD_4IN2_SendCommand(0x61); // resolution setting - EPD_4IN2_SendData(0x01); - EPD_4IN2_SendData(0x90); //128 - EPD_4IN2_SendData(0x01); // - EPD_4IN2_SendData(0x2c); - - EPD_4IN2_SendCommand(0x82); // vcom_DC setting - EPD_4IN2_SendData(0x28); - - EPD_4IN2_SendCommand(0X50); // VCOM AND DATA INTERVAL SETTING - EPD_4IN2_SendData(0x97); // 97white border 77black border VBDF 17|D7 VBDW 97 VBDB 57 VBDF F7 VBDW 77 VBDB 37 VBDR B7 - - EPD_4IN2_SetLut(); -} - -/****************************************************************************** -function : Clear screen -parameter: -******************************************************************************/ -void EPD_4IN2_Clear(void) -{ - UWORD Width, Height; - Width = (EPD_4IN2_WIDTH % 8 == 0)? (EPD_4IN2_WIDTH / 8 ): (EPD_4IN2_WIDTH / 8 + 1); - Height = EPD_4IN2_HEIGHT; - - EPD_4IN2_SendCommand(0x10); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_4IN2_SendData(0xFF); - } - } - - EPD_4IN2_SendCommand(0x13); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_4IN2_SendData(0xFF); - } - } - - EPD_4IN2_TurnOnDisplay(); -} - -/****************************************************************************** -function : Sends the image buffer in RAM to e-Paper and displays -parameter: -******************************************************************************/ -void EPD_4IN2_Display(UBYTE *Image) -{ - UWORD Width, Height; - Width = (EPD_4IN2_WIDTH % 8 == 0)? (EPD_4IN2_WIDTH / 8 ): (EPD_4IN2_WIDTH / 8 + 1); - Height = EPD_4IN2_HEIGHT; - - EPD_4IN2_SendCommand(0x13); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_4IN2_SendData(Image[i + j * Width]); - } - } - - EPD_4IN2_TurnOnDisplay(); -} - -/****************************************************************************** -function : Enter sleep mode -parameter: -******************************************************************************/ -void EPD_4IN2_Sleep(void) -{ - EPD_4IN2_SendCommand(0x02); // POWER_OFF - EPD_4IN2_ReadBusy(); - EPD_4IN2_SendCommand(0x07); // DEEP_SLEEP - EPD_4IN2_SendData(0XA5); -} diff --git a/Raspberry Pi/c/lib/e-Paper/EPD_4in2.h b/Raspberry Pi/c/lib/e-Paper/EPD_4in2.h deleted file mode 100644 index 77c0ec7..0000000 --- a/Raspberry Pi/c/lib/e-Paper/EPD_4in2.h +++ /dev/null @@ -1,105 +0,0 @@ -/***************************************************************************** -* | File : EPD_4in2.h -* | Author : Waveshare team -* | Function : 4.2inch e-paper -* | Info : -*---------------- -* | This version: V3.0 -* | Date : 2019-06-13 -* | Info : -* ----------------------------------------------------------------------------- -* V3.0(2019-06-13): -* 1.Change: -* lut_vcomDC[] => EPD_4IN2_lut_vcomDC[] -* lut_ww[] => EPD_4IN2_lut_ww[] -* lut_bw[] => EPD_4IN2_lut_bw[] -* lut_wb[] => EPD_4IN2_lut_wb[] -* lut_bb[] => EPD_4IN2_lut_bb[] -* EPD_Reset() => EPD_4IN2_Reset() -* EPD_SendCommand() => EPD_4IN2_SendCommand() -* EPD_SendData() => EPD_4IN2_SendData() -* EPD_WaitUntilIdle() => EPD_4IN2_ReadBusy() -* EPD_SetFullReg() => EPD_4IN2_SetFullReg() -* EPD_SetPartReg() => EPD_4IN2_SetPartReg() -* EPD_TurnOnDisplay() => EPD_4IN2_TurnOnDisplay() -* EPD_Init() => EPD_4IN2_Init() -* EPD_Clear() => EPD_4IN2_Clear() -* EPD_Display() => EPD_4IN2_Display() -* EPD_Sleep() => EPD_4IN2_Sleep() -* 2.remove commands define: -* #define PANEL_SETTING 0x00 -* #define POWER_SETTING 0x01 -* #define POWER_OFF 0x02 -* #define POWER_OFF_SEQUENCE_SETTING 0x03 -* #define POWER_ON 0x04 -* #define POWER_ON_MEASURE 0x05 -* #define BOOSTER_SOFT_START 0x06 -* #define DEEP_SLEEP 0x07 -* #define DATA_START_TRANSMISSION_1 0x10 -* #define DATA_STOP 0x11 -* #define DISPLAY_REFRESH 0x12 -* #define DATA_START_TRANSMISSION_2 0x13 -* #define VCOM_LUT 0x20 -* #define W2W_LUT 0x21 -* #define B2W_LUT 0x22 -* #define W2B_LUT 0x23 -* #define B2B_LUT 0x24 -* #define PLL_CONTROL 0x30 -* #define TEMPERATURE_SENSOR_CALIBRATION 0x40 -* #define TEMPERATURE_SENSOR_SELECTION 0x41 -* #define TEMPERATURE_SENSOR_WRITE 0x42 -* #define TEMPERATURE_SENSOR_READ 0x43 -* #define VCOM_AND_DATA_INTERVAL_SETTING 0x50 -* #define LOW_POWER_DETECTION 0x51 -* #define TCON_SETTING 0x60 -* #define RESOLUTION_SETTING 0x61 -* #define GET_STATUS 0x71 -* #define AUTO_MEASURE_VCOM 0x80 -* #define READ_VCOM_VALUE 0x81 -* #define VCM_DC_SETTING 0x82 -* #define PARTIAL_WINDOW 0x90 -* #define PARTIAL_IN 0x91 -* #define PARTIAL_OUT 0x92 -* #define PROGRAM_MODE 0xA0 -* #define ACTIVE_PROGRAM 0xA1 -* #define READ_OTP_DATA 0xA2 -* #define POWER_SAVING 0xE3 -* V2.0(2018-10-30): -* 1.Remove:ImageBuff[EPD_HEIGHT * EPD_WIDTH / 8] -* 2.Change:EPD_Display(UBYTE *Image) -* Need to pass parameters: pointer to cached data -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#ifndef _EPD_4IN2_H_ -#define _EPD_4IN2_H_ - -#include "DEV_Config.h" - -// Display resolution -#define EPD_4IN2_WIDTH 400 -#define EPD_4IN2_HEIGHT 300 - -void EPD_4IN2_Init(void); -void EPD_4IN2_Clear(void); -void EPD_4IN2_Display(UBYTE *Image); -void EPD_4IN2_Sleep(void); - -#endif diff --git a/Raspberry Pi/c/lib/e-Paper/EPD_4in2bc.c b/Raspberry Pi/c/lib/e-Paper/EPD_4in2bc.c deleted file mode 100644 index dc4f10d..0000000 --- a/Raspberry Pi/c/lib/e-Paper/EPD_4in2bc.c +++ /dev/null @@ -1,233 +0,0 @@ -/***************************************************************************** -* | File : EPD_4in2b.c -* | Author : Waveshare team -* | Function : 4.2inch e-paper b&c -* | Info : -*---------------- -* | This version: V3.0 -* | Date : 2019-06-13 -* | Info : -* ----------------------------------------------------------------------------- -* V3.0(2019-06-13): -* 1.Change: -* EPD_Reset() => EPD_4IN2BC_Reset() -* EPD_SendCommand() => EPD_4IN2BC_SendCommand() -* EPD_SendData() => EPD_4IN2BC_SendData() -* EPD_WaitUntilIdle() => EPD_4IN2BC_ReadBusy() -* EPD_Init() => EPD_4IN2BC_Init() -* EPD_Clear() => EPD_4IN2BC_Clear() -* EPD_Display() => EPD_4IN2BC_Display() -* EPD_Sleep() => EPD_4IN2BC_Sleep() -* 2.remove commands define: -* #define PANEL_SETTING 0x00 -* #define POWER_SETTING 0x01 -* #define POWER_OFF 0x02 -* #define POWER_OFF_SEQUENCE_SETTING 0x03 -* #define POWER_ON 0x04 -* #define POWER_ON_MEASURE 0x05 -* #define BOOSTER_SOFT_START 0x06 -* #define DEEP_SLEEP 0x07 -* #define DATA_START_TRANSMISSION_1 0x10 -* #define DATA_STOP 0x11 -* #define DISPLAY_REFRESH 0x12 -* #define DATA_START_TRANSMISSION_2 0x13 -* #define VCOM_LUT 0x20 -* #define W2W_LUT 0x21 -* #define B2W_LUT 0x22 -* #define W2B_LUT 0x23 -* #define B2B_LUT 0x24 -* #define PLL_CONTROL 0x30 -* #define TEMPERATURE_SENSOR_CALIBRATION 0x40 -* #define TEMPERATURE_SENSOR_SELECTION 0x41 -* #define TEMPERATURE_SENSOR_WRITE 0x42 -* #define TEMPERATURE_SENSOR_READ 0x43 -* #define VCOM_AND_DATA_INTERVAL_SETTING 0x50 -* #define LOW_POWER_DETECTION 0x51 -* #define TCON_SETTING 0x60 -* #define RESOLUTION_SETTING 0x61 -* #define GET_STATUS 0x71 -* #define AUTO_MEASURE_VCOM 0x80 -* #define READ_VCOM_VALUE 0x81 -* #define VCM_DC_SETTING 0x82 -* #define PARTIAL_WINDOW 0x90 -* #define PARTIAL_IN 0x91 -* #define PARTIAL_OUT 0x92 -* #define PROGRAM_MODE 0xA0 -* #define ACTIVE_PROGRAM 0xA1 -* #define READ_OTP_DATA 0xA2 -* #define POWER_SAVING 0xE3 -* ----------------------------------------------------------------------------- -* V2.0(2018-11-09): -* 1.Remove:ImageBuff[EPD_HEIGHT * EPD_WIDTH / 8] -* 2.Change:EPD_Display(UBYTE *Image) -* Need to pass parameters: pointer to cached data -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "EPD_4in2bc.h" -#include "Debug.h" - -/****************************************************************************** -function : Software reset -parameter: -******************************************************************************/ -static void EPD_4IN2BC_Reset(void) -{ - DEV_Digital_Write(EPD_RST_PIN, 1); - DEV_Delay_ms(200); - DEV_Digital_Write(EPD_RST_PIN, 0); - DEV_Delay_ms(200); - DEV_Digital_Write(EPD_RST_PIN, 1); - DEV_Delay_ms(200); -} - -/****************************************************************************** -function : send command -parameter: - Reg : Command register -******************************************************************************/ -static void EPD_4IN2BC_SendCommand(UBYTE Reg) -{ - DEV_Digital_Write(EPD_DC_PIN, 0); - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_SPI_WriteByte(Reg); - DEV_Digital_Write(EPD_CS_PIN, 1); -} - -/****************************************************************************** -function : send data -parameter: - Data : Write data -******************************************************************************/ -static void EPD_4IN2BC_SendData(UBYTE Data) -{ - DEV_Digital_Write(EPD_DC_PIN, 1); - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_SPI_WriteByte(Data); - DEV_Digital_Write(EPD_CS_PIN, 1); -} - -/****************************************************************************** -function : Wait until the busy_pin goes LOW -parameter: -******************************************************************************/ -void EPD_4IN2BC_ReadBusy(void) -{ - Debug("e-Paper busy\r\n"); - while(DEV_Digital_Read(EPD_BUSY_PIN) == 0) { //0: busy, 1: idle - DEV_Delay_ms(100); - } - Debug("e-Paper busy release\r\n"); -} - -/****************************************************************************** -function : Turn On Display -parameter: -******************************************************************************/ -static void EPD_4IN2BC_TurnOnDisplay(void) -{ - EPD_4IN2BC_SendCommand(0x12); // DISPLAY_REFRESH - DEV_Delay_ms(100); - EPD_4IN2BC_ReadBusy(); -} - -/****************************************************************************** -function : Initialize the e-Paper register -parameter: -******************************************************************************/ -void EPD_4IN2BC_Init(void) -{ - EPD_4IN2BC_Reset(); - - EPD_4IN2BC_SendCommand(0x06); // BOOSTER_SOFT_START - EPD_4IN2BC_SendData(0x17); - EPD_4IN2BC_SendData(0x17); - EPD_4IN2BC_SendData(0x17); // 07 0f 17 1f 27 2F 37 2f - EPD_4IN2BC_SendCommand(0x04); // POWER_ON - EPD_4IN2BC_ReadBusy(); - EPD_4IN2BC_SendCommand(0x00); // PANEL_SETTING - EPD_4IN2BC_SendData(0x0F); // LUT from OTP -} - -/****************************************************************************** -function : Clear screen -parameter: -******************************************************************************/ -void EPD_4IN2BC_Clear(void) -{ - UWORD Width, Height; - Width = (EPD_4IN2BC_WIDTH % 8 == 0)? (EPD_4IN2BC_WIDTH / 8 ): (EPD_4IN2BC_WIDTH / 8 + 1); - Height = EPD_4IN2BC_HEIGHT; - - EPD_4IN2BC_SendCommand(0x10); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_4IN2BC_SendData(0xFF); - } - } - - EPD_4IN2BC_SendCommand(0x13); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_4IN2BC_SendData(0xFF); - } - } - - EPD_4IN2BC_TurnOnDisplay(); -} - -/****************************************************************************** -function : Sends the image buffer in RAM to e-Paper and displays -parameter: -******************************************************************************/ -void EPD_4IN2BC_Display(const UBYTE *blackimage, const UBYTE *ryimage) -{ - UWORD Width, Height; - Width = (EPD_4IN2BC_WIDTH % 8 == 0)? (EPD_4IN2BC_WIDTH / 8 ): (EPD_4IN2BC_WIDTH / 8 + 1); - Height = EPD_4IN2BC_HEIGHT; - - EPD_4IN2BC_SendCommand(0x10); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_4IN2BC_SendData(blackimage[i + j * Width]); - } - } - - EPD_4IN2BC_SendCommand(0x13); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_4IN2BC_SendData(ryimage[i + j * Width]); - } - } - - EPD_4IN2BC_TurnOnDisplay(); -} - -/****************************************************************************** -function : Enter sleep mode -parameter: -******************************************************************************/ -void EPD_4IN2BC_Sleep(void) -{ - EPD_4IN2BC_SendCommand(0x02); // POWER_OFF - EPD_4IN2BC_ReadBusy(); - EPD_4IN2BC_SendCommand(0x07); // DEEP_SLEEP - EPD_4IN2BC_SendData(0XA5); -} diff --git a/Raspberry Pi/c/lib/e-Paper/EPD_4in2bc.h b/Raspberry Pi/c/lib/e-Paper/EPD_4in2bc.h deleted file mode 100644 index 5f0e6ac..0000000 --- a/Raspberry Pi/c/lib/e-Paper/EPD_4in2bc.h +++ /dev/null @@ -1,98 +0,0 @@ -/***************************************************************************** -* | File : EPD_4in2b.h -* | Author : Waveshare team -* | Function : 4.2inch e-paper b&c -* | Info : -*---------------- -* | This version: V3.0 -* | Date : 2019-06-13 -* | Info : -* ----------------------------------------------------------------------------- -* V3.0(2019-06-13): -* 1.Change: -* EPD_Reset() => EPD_4IN2BC_Reset() -* EPD_SendCommand() => EPD_4IN2BC_SendCommand() -* EPD_SendData() => EPD_4IN2BC_SendData() -* EPD_WaitUntilIdle() => EPD_4IN2BC_ReadBusy() -* EPD_Init() => EPD_4IN2BC_Init() -* EPD_Clear() => EPD_4IN2BC_Clear() -* EPD_Display() => EPD_4IN2BC_Display() -* EPD_Sleep() => EPD_4IN2BC_Sleep() -* 2.remove commands define: -* #define PANEL_SETTING 0x00 -* #define POWER_SETTING 0x01 -* #define POWER_OFF 0x02 -* #define POWER_OFF_SEQUENCE_SETTING 0x03 -* #define POWER_ON 0x04 -* #define POWER_ON_MEASURE 0x05 -* #define BOOSTER_SOFT_START 0x06 -* #define DEEP_SLEEP 0x07 -* #define DATA_START_TRANSMISSION_1 0x10 -* #define DATA_STOP 0x11 -* #define DISPLAY_REFRESH 0x12 -* #define DATA_START_TRANSMISSION_2 0x13 -* #define VCOM_LUT 0x20 -* #define W2W_LUT 0x21 -* #define B2W_LUT 0x22 -* #define W2B_LUT 0x23 -* #define B2B_LUT 0x24 -* #define PLL_CONTROL 0x30 -* #define TEMPERATURE_SENSOR_CALIBRATION 0x40 -* #define TEMPERATURE_SENSOR_SELECTION 0x41 -* #define TEMPERATURE_SENSOR_WRITE 0x42 -* #define TEMPERATURE_SENSOR_READ 0x43 -* #define VCOM_AND_DATA_INTERVAL_SETTING 0x50 -* #define LOW_POWER_DETECTION 0x51 -* #define TCON_SETTING 0x60 -* #define RESOLUTION_SETTING 0x61 -* #define GET_STATUS 0x71 -* #define AUTO_MEASURE_VCOM 0x80 -* #define READ_VCOM_VALUE 0x81 -* #define VCM_DC_SETTING 0x82 -* #define PARTIAL_WINDOW 0x90 -* #define PARTIAL_IN 0x91 -* #define PARTIAL_OUT 0x92 -* #define PROGRAM_MODE 0xA0 -* #define ACTIVE_PROGRAM 0xA1 -* #define READ_OTP_DATA 0xA2 -* #define POWER_SAVING 0xE3 -* ----------------------------------------------------------------------------- -* V2.0(2018-11-09): -* 1.Remove:ImageBuff[EPD_HEIGHT * EPD_WIDTH / 8] -* 2.Change:EPD_Display(UBYTE *Image) -* Need to pass parameters: pointer to cached data -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#ifndef __EPD_4IN2BC_H_ -#define __EPD_4IN2BC_H_ - -#include "DEV_Config.h" - -// Display resolution -#define EPD_4IN2BC_WIDTH 400 -#define EPD_4IN2BC_HEIGHT 300 - -void EPD_4IN2BC_Init(void); -void EPD_4IN2BC_Clear(void); -void EPD_4IN2BC_Display(const UBYTE *blackimage, const UBYTE *ryimage); -void EPD_4IN2BC_Sleep(void); - -#endif diff --git a/Raspberry Pi/c/lib/e-Paper/EPD_5in83.c b/Raspberry Pi/c/lib/e-Paper/EPD_5in83.c deleted file mode 100644 index 9d4cb8c..0000000 --- a/Raspberry Pi/c/lib/e-Paper/EPD_5in83.c +++ /dev/null @@ -1,270 +0,0 @@ -/***************************************************************************** -* | File : EPD_5in83.c -* | Author : Waveshare team -* | Function : 5.83inch e-paper -* | Info : -*---------------- -* | This version: V3.0 -* | Date : 2019-06-13 -* | Info : -* ----------------------------------------------------------------------------- -* V3.0(2019-06-13): -* 1.Change: -* EPD_Reset() => EPD_5IN83_Reset() -* EPD_SendCommand() => EPD_5IN83_SendCommand() -* EPD_SendData() => EPD_5IN83_SendData() -* EPD_WaitUntilIdle() => EPD_5IN83_ReadBusy() -* EPD_SetFullReg() => EPD_5IN83_SetFullReg() -* EPD_SetPartReg() => EPD_5IN83_SetPartReg() -* EPD_TurnOnDisplay() => EPD_5IN83_TurnOnDisplay() -* EPD_Init() => EPD_5IN83_Init() -* EPD_Clear() => EPD_5IN83_Clear() -* EPD_Display() => EPD_5IN83_Display() -* EPD_Sleep() => EPD_5IN83_Sleep() -* 2.remove commands define: -* #define PANEL_SETTING 0x00 -* #define POWER_SETTING 0x01 -* #define POWER_OFF 0x02 -* #define POWER_OFF_SEQUENCE_SETTING 0x03 -* #define POWER_ON 0x04 -* #define POWER_ON_MEASURE 0x05 -* #define BOOSTER_SOFT_START 0x06 -* #define DEEP_SLEEP 0x07 -* #define DATA_START_TRANSMISSION_1 0x10 -* #define DATA_STOP 0x11 -* #define DISPLAY_REFRESH 0x12 -* #define DATA_START_TRANSMISSION_2 0x13 -* #define VCOM_LUT 0x20 -* #define W2W_LUT 0x21 -* #define B2W_LUT 0x22 -* #define W2B_LUT 0x23 -* #define B2B_LUT 0x24 -* #define PLL_CONTROL 0x30 -* #define TEMPERATURE_SENSOR_CALIBRATION 0x40 -* #define TEMPERATURE_SENSOR_SELECTION 0x41 -* #define TEMPERATURE_SENSOR_WRITE 0x42 -* #define TEMPERATURE_SENSOR_READ 0x43 -* #define VCOM_AND_DATA_INTERVAL_SETTING 0x50 -* #define LOW_POWER_DETECTION 0x51 -* #define TCON_SETTING 0x60 -* #define RESOLUTION_SETTING 0x61 -* #define GET_STATUS 0x71 -* #define AUTO_MEASURE_VCOM 0x80 -* #define READ_VCOM_VALUE 0x81 -* #define VCM_DC_SETTING 0x82 -* #define PARTIAL_WINDOW 0x90 -* #define PARTIAL_IN 0x91 -* #define PARTIAL_OUT 0x92 -* #define PROGRAM_MODE 0xA0 -* #define ACTIVE_PROGRAM 0xA1 -* #define READ_OTP_DATA 0xA2 -* #define POWER_SAVING 0xE3 -* ----------------------------------------------------------------------------- -* V2.0(2018-11-09): -* 1.Remove:ImageBuff[EPD_HEIGHT * EPD_WIDTH / 8] -* 2.Change:EPD_Display(UBYTE *Image) -* Need to pass parameters: pointer to cached data -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "EPD_5in83.h" -#include "Debug.h" - -/****************************************************************************** -function : Software reset -parameter: -******************************************************************************/ -static void EPD_5IN83_Reset(void) -{ - DEV_Digital_Write(EPD_RST_PIN, 1); - DEV_Delay_ms(200); - DEV_Digital_Write(EPD_RST_PIN, 0); - DEV_Delay_ms(200); - DEV_Digital_Write(EPD_RST_PIN, 1); - DEV_Delay_ms(200); -} - -/****************************************************************************** -function : send command -parameter: - Reg : Command register -******************************************************************************/ -static void EPD_5IN83_SendCommand(UBYTE Reg) -{ - DEV_Digital_Write(EPD_DC_PIN, 0); - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_SPI_WriteByte(Reg); - DEV_Digital_Write(EPD_CS_PIN, 1); -} - -/****************************************************************************** -function : send data -parameter: - Data : Write data -******************************************************************************/ -static void EPD_5IN83_SendData(UBYTE Data) -{ - DEV_Digital_Write(EPD_DC_PIN, 1); - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_SPI_WriteByte(Data); - DEV_Digital_Write(EPD_CS_PIN, 1); -} - -/****************************************************************************** -function : Wait until the busy_pin goes LOW -parameter: -******************************************************************************/ -static void EPD_5IN83_ReadBusy(void) -{ - Debug("e-Paper busy\r\n"); - while(DEV_Digital_Read(EPD_BUSY_PIN) == 0) { //LOW: idle, HIGH: busy - DEV_Delay_ms(100); - } - Debug("e-Paper busy release\r\n"); -} - -/****************************************************************************** -function : Turn On Display -parameter: -******************************************************************************/ -static void EPD_5IN83_TurnOnDisplay(void) -{ - EPD_5IN83_SendCommand(0x12); // DISPLAY_REFRESH - DEV_Delay_ms(100); - EPD_5IN83_ReadBusy(); -} - -/****************************************************************************** -function : Initialize the e-Paper register -parameter: -******************************************************************************/ -void EPD_5IN83_Init(void) -{ - EPD_5IN83_Reset(); - - EPD_5IN83_SendCommand(0x01); // POWER_SETTING - EPD_5IN83_SendData(0x37); - EPD_5IN83_SendData(0x00); - - EPD_5IN83_SendCommand(0x00); // PANEL_SETTING - EPD_5IN83_SendData(0xCF); - EPD_5IN83_SendData(0x08); - - EPD_5IN83_SendCommand(0x06); // BOOSTER_SOFT_START - EPD_5IN83_SendData(0xc7); - EPD_5IN83_SendData(0xcc); - EPD_5IN83_SendData(0x28); - - EPD_5IN83_SendCommand(0x04); // POWER_ON - EPD_5IN83_ReadBusy(); - - EPD_5IN83_SendCommand(0x30); // PLL_CONTROL - EPD_5IN83_SendData(0x3c); - - EPD_5IN83_SendCommand(0x41); // TEMPERATURE_CALIBRATION - EPD_5IN83_SendData(0x00); - - EPD_5IN83_SendCommand(0x50); // VCOM_AND_DATA_INTERVAL_SETTING - EPD_5IN83_SendData(0x77); - - EPD_5IN83_SendCommand(0x60); // TCON_SETTING - EPD_5IN83_SendData(0x22); - - EPD_5IN83_SendCommand(0x61); // TCON_RESOLUTION - EPD_5IN83_SendData(EPD_5IN83_WIDTH >> 8); // source 600 - EPD_5IN83_SendData(EPD_5IN83_WIDTH & 0xff); - EPD_5IN83_SendData(EPD_5IN83_HEIGHT >> 8); // gate 448 - EPD_5IN83_SendData(EPD_5IN83_HEIGHT & 0xff); - - EPD_5IN83_SendCommand(0x82); // VCM_DC_SETTING - EPD_5IN83_SendData(0x1E); // decide by LUT file - - EPD_5IN83_SendCommand(0xe5); // FLASH MODE - EPD_5IN83_SendData(0x03); -} - -/****************************************************************************** -function : Clear screen -parameter: -******************************************************************************/ -void EPD_5IN83_Clear(void) -{ - UWORD Width, Height; - Width = (EPD_5IN83_WIDTH % 8 == 0)? (EPD_5IN83_WIDTH / 8 ): (EPD_5IN83_WIDTH / 8 + 1); - Height = EPD_5IN83_HEIGHT; - - EPD_5IN83_SendCommand(0x10); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - for(UBYTE k = 0; k < 4; k++) { - EPD_5IN83_SendData(0x33); - } - } - } - EPD_5IN83_TurnOnDisplay(); -} - -/****************************************************************************** -function : Sends the image buffer in RAM to e-Paper and displays -parameter: -******************************************************************************/ -void EPD_5IN83_Display(UBYTE *Image) -{ - UBYTE Data_Black, Data; - UWORD Width, Height; - Width = (EPD_5IN83_WIDTH % 8 == 0)? (EPD_5IN83_WIDTH / 8 ): (EPD_5IN83_WIDTH / 8 + 1); - Height = EPD_5IN83_HEIGHT; - - EPD_5IN83_SendCommand(0x10); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - Data_Black = ~Image[i + j * Width]; - for(UBYTE k = 0; k < 8; k++) { - if(Data_Black & 0x80) - Data = 0x00; - else - Data = 0x03; - Data <<= 4; - Data_Black <<= 1; - k++; - if(Data_Black & 0x80) - Data |= 0x00; - else - Data |= 0x03; - Data_Black <<= 1; - EPD_5IN83_SendData(Data); - } - } - } - EPD_5IN83_TurnOnDisplay(); -} - -/****************************************************************************** -function : Enter sleep mode -parameter: -******************************************************************************/ -void EPD_5IN83_Sleep(void) -{ - EPD_5IN83_SendCommand(0x02); // POWER_OFF - EPD_5IN83_ReadBusy(); - EPD_5IN83_SendCommand(0x07); // DEEP_SLEEP - EPD_5IN83_SendData(0XA5); -} - diff --git a/Raspberry Pi/c/lib/e-Paper/EPD_5in83.h b/Raspberry Pi/c/lib/e-Paper/EPD_5in83.h deleted file mode 100644 index c9efde7..0000000 --- a/Raspberry Pi/c/lib/e-Paper/EPD_5in83.h +++ /dev/null @@ -1,101 +0,0 @@ -/***************************************************************************** -* | File : EPD_5in83.h -* | Author : Waveshare team -* | Function : 5.83inch e-paper -* | Info : -*---------------- -* | This version: V3.0 -* | Date : 2019-06-13 -* | Info : -* ----------------------------------------------------------------------------- -* V3.0(2019-06-13): -* 1.Change: -* EPD_Reset() => EPD_5IN83_Reset() -* EPD_SendCommand() => EPD_5IN83_SendCommand() -* EPD_SendData() => EPD_5IN83_SendData() -* EPD_WaitUntilIdle() => EPD_5IN83_ReadBusy() -* EPD_SetFullReg() => EPD_5IN83_SetFullReg() -* EPD_SetPartReg() => EPD_5IN83_SetPartReg() -* EPD_TurnOnDisplay() => EPD_5IN83_TurnOnDisplay() -* EPD_Init() => EPD_5IN83_Init() -* EPD_Clear() => EPD_5IN83_Clear() -* EPD_Display() => EPD_5IN83_Display() -* EPD_Sleep() => EPD_5IN83_Sleep() -* 2.remove commands define: -* #define PANEL_SETTING 0x00 -* #define POWER_SETTING 0x01 -* #define POWER_OFF 0x02 -* #define POWER_OFF_SEQUENCE_SETTING 0x03 -* #define POWER_ON 0x04 -* #define POWER_ON_MEASURE 0x05 -* #define BOOSTER_SOFT_START 0x06 -* #define DEEP_SLEEP 0x07 -* #define DATA_START_TRANSMISSION_1 0x10 -* #define DATA_STOP 0x11 -* #define DISPLAY_REFRESH 0x12 -* #define DATA_START_TRANSMISSION_2 0x13 -* #define VCOM_LUT 0x20 -* #define W2W_LUT 0x21 -* #define B2W_LUT 0x22 -* #define W2B_LUT 0x23 -* #define B2B_LUT 0x24 -* #define PLL_CONTROL 0x30 -* #define TEMPERATURE_SENSOR_CALIBRATION 0x40 -* #define TEMPERATURE_SENSOR_SELECTION 0x41 -* #define TEMPERATURE_SENSOR_WRITE 0x42 -* #define TEMPERATURE_SENSOR_READ 0x43 -* #define VCOM_AND_DATA_INTERVAL_SETTING 0x50 -* #define LOW_POWER_DETECTION 0x51 -* #define TCON_SETTING 0x60 -* #define RESOLUTION_SETTING 0x61 -* #define GET_STATUS 0x71 -* #define AUTO_MEASURE_VCOM 0x80 -* #define READ_VCOM_VALUE 0x81 -* #define VCM_DC_SETTING 0x82 -* #define PARTIAL_WINDOW 0x90 -* #define PARTIAL_IN 0x91 -* #define PARTIAL_OUT 0x92 -* #define PROGRAM_MODE 0xA0 -* #define ACTIVE_PROGRAM 0xA1 -* #define READ_OTP_DATA 0xA2 -* #define POWER_SAVING 0xE3 -* ----------------------------------------------------------------------------- -* V2.0(2018-11-09): -* 1.Remove:ImageBuff[EPD_HEIGHT * EPD_WIDTH / 8] -* 2.Change:EPD_Display(UBYTE *Image) -* Need to pass parameters: pointer to cached data -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#ifndef __EPD_5IN83_H_ -#define __EPD_5IN83_H_ - -#include "DEV_Config.h" - -// Display resolution -#define EPD_5IN83_WIDTH 600 -#define EPD_5IN83_HEIGHT 448 - -void EPD_5IN83_Init(void); -void EPD_5IN83_Clear(void); -void EPD_5IN83_Display(UBYTE *Image); -void EPD_5IN83_Sleep(void); - -#endif diff --git a/Raspberry Pi/c/lib/e-Paper/EPD_5in83bc.c b/Raspberry Pi/c/lib/e-Paper/EPD_5in83bc.c deleted file mode 100644 index 158444c..0000000 --- a/Raspberry Pi/c/lib/e-Paper/EPD_5in83bc.c +++ /dev/null @@ -1,337 +0,0 @@ -/***************************************************************************** -* | File : EPD_5IN83BC.c -* | Author : Waveshare team -* | Function : 5.83inch e-paper b&c -* | Info : -* | This version: V3.0 -* | Date : 2019-06-13 -* | Info : -* ----------------------------------------------------------------------------- -* V3.0(2019-06-13): -* 1.Change: -* EPD_Reset() => EPD_5IN83BC_Reset() -* EPD_SendCommand() => EPD_5IN83BC_SendCommand() -* EPD_SendData() => EPD_5IN83BC_SendData() -* EPD_WaitUntilIdle() => EPD_5IN83BC_ReadBusy() -* EPD_Init() => EPD_5IN83BC_Init() -* EPD_Clear() => EPD_5IN83BC_Clear() -* EPD_Display() => EPD_5IN83BC_Display() -* EPD_Sleep() => EPD_5IN83BC_Sleep() -* 2.Remove: -* #define PANEL_SETTING 0x00 -* #define POWER_SETTING 0x01 -* #define POWER_OFF 0x02 -* #define POWER_OFF_SEQUENCE_SETTING 0x03 -* #define POWER_ON 0x04 -* #define POWER_ON_MEASURE 0x05 -* #define BOOSTER_SOFT_START 0x06 -* #define DEEP_SLEEP 0x07 -* #define DATA_START_TRANSMISSION_1 0x10 -* #define DATA_STOP 0x11 -* #define DISPLAY_REFRESH 0x12 -* #define IMAGE_PROCESS 0x13 -* #define LUT_FOR_VCOM 0x20 -* #define LUT_BLUE 0x21 -* #define LUT_WHITE 0x22 -* #define LUT_GRAY_1 0x23 -* #define LUT_GRAY_2 0x24 -* #define LUT_RED_0 0x25 -* #define LUT_RED_1 0x26 -* #define LUT_RED_2 0x27 -* #define LUT_RED_3 0x28 -* #define LUT_XON 0x29 -* #define PLL_CONTROL 0x30 -* #define TEMPERATURE_SENSOR_COMMAND 0x40 -* #define TEMPERATURE_CALIBRATION 0x41 -* #define TEMPERATURE_SENSOR_WRITE 0x42 -* #define TEMPERATURE_SENSOR_READ 0x43 -* #define VCOM_AND_DATA_INTERVAL_SETTING 0x50 -* #define LOW_POWER_DETECTION 0x51 -* #define TCON_SETTING 0x60 -* #define TCON_RESOLUTION 0x61 -* #define SPI_FLASH_CONTROL 0x65 -* #define REVISION 0x70 -* #define GET_STATUS 0x71 -* #define AUTO_MEASUREMENT_VCOM 0x80 -* #define READ_VCOM_VALUE 0x81 -* #define VCM_DC_SETTING 0x82 -* 3.add: -* EPD_5IN83BC_DisplayHalfScreen() -* ----------------------------------------------------------------------------- -* V2.0(2018-11-09): -* 1.Remove:ImageBuff[EPD_HEIGHT * EPD_WIDTH / 8] -* 2.Change:EPD_Display(UBYTE *Image) -* Need to pass parameters: pointer to cached data -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "EPD_5in83bc.h" -#include "Debug.h" - -/****************************************************************************** -function : Software reset -parameter: -******************************************************************************/ -static void EPD_5IN83BC_Reset(void) -{ - DEV_Digital_Write(EPD_RST_PIN, 1); - DEV_Delay_ms(200); - DEV_Digital_Write(EPD_RST_PIN, 0); - DEV_Delay_ms(200); - DEV_Digital_Write(EPD_RST_PIN, 1); - DEV_Delay_ms(200); -} - -/****************************************************************************** -function : send command -parameter: - Reg : Command register -******************************************************************************/ -static void EPD_5IN83BC_SendCommand(UBYTE Reg) -{ - DEV_Digital_Write(EPD_DC_PIN, 0); - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_SPI_WriteByte(Reg); - DEV_Digital_Write(EPD_CS_PIN, 1); -} - -/****************************************************************************** -function : send data -parameter: - Data : Write data -******************************************************************************/ -static void EPD_5IN83BC_SendData(UBYTE Data) -{ - DEV_Digital_Write(EPD_DC_PIN, 1); - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_SPI_WriteByte(Data); - DEV_Digital_Write(EPD_CS_PIN, 1); -} - -/****************************************************************************** -function : Wait until the busy_pin goes LOW -parameter: -******************************************************************************/ -void EPD_5IN83BC_ReadBusy(void) -{ - UBYTE busy; - Debug("e-Paper busy\r\n"); - do { - EPD_5IN83BC_SendCommand(0x71); - busy = DEV_Digital_Read(EPD_BUSY_PIN); - busy =!(busy & 0x01); - } while(busy); - Debug("e-Paper busy release\r\n"); -} - -/****************************************************************************** -function : Turn On Display -parameter: -******************************************************************************/ -static void EPD_5IN83BC_TurnOnDisplay(void) -{ - EPD_5IN83BC_SendCommand(0x04); // POWER ON - EPD_5IN83BC_ReadBusy(); - EPD_5IN83BC_SendCommand(0x12); // display refresh - DEV_Delay_ms(100); - EPD_5IN83BC_ReadBusy(); - -} - -/****************************************************************************** -function : Initialize the e-Paper register -parameter: -******************************************************************************/ -void EPD_5IN83BC_Init(void) -{ - EPD_5IN83BC_Reset(); - - EPD_5IN83BC_SendCommand(0x01); // POWER_SETTING - EPD_5IN83BC_SendData(0x37); - EPD_5IN83BC_SendData(0x00); - - EPD_5IN83BC_SendCommand(0x00); // PANEL_SETTING - EPD_5IN83BC_SendData(0xCF); - EPD_5IN83BC_SendData(0x08); - - EPD_5IN83BC_SendCommand(0x30); // PLL_CONTROL - EPD_5IN83BC_SendData(0x3A); //PLL: 0-15:0x3C, 15+:0x3A - - EPD_5IN83BC_SendCommand(0x82); // VCM_DC_SETTING - EPD_5IN83BC_SendData(0x28); //all temperature range - - EPD_5IN83BC_SendCommand(0x06); // BOOSTER_SOFT_START - EPD_5IN83BC_SendData (0xc7); - EPD_5IN83BC_SendData (0xcc); - EPD_5IN83BC_SendData (0x15); - - EPD_5IN83BC_SendCommand(0x50); // VCOM AND DATA INTERVAL SETTING - EPD_5IN83BC_SendData(0x77); - - EPD_5IN83BC_SendCommand(0x60); // TCON_SETTING - EPD_5IN83BC_SendData(0x22); - - EPD_5IN83BC_SendCommand(0x65); // FLASH CONTROL - EPD_5IN83BC_SendData(0x00); - - EPD_5IN83BC_SendCommand(0x61); // TCON_RESOLUTION - EPD_5IN83BC_SendData (0x02); // source 600 - EPD_5IN83BC_SendData (0x58); - EPD_5IN83BC_SendData (0x01); // gate 448 - EPD_5IN83BC_SendData (0xc0); - - EPD_5IN83BC_SendCommand(0xe5); // FLASH MODE - EPD_5IN83BC_SendData(0x03); - -} - -/****************************************************************************** -function : Clear screen -parameter: -******************************************************************************/ -void EPD_5IN83BC_Clear(void) -{ - UWORD Width, Height; - Width = (EPD_5IN83BC_WIDTH % 8 == 0)? (EPD_5IN83BC_WIDTH / 8): (EPD_5IN83BC_WIDTH / 8 + 1); - Height = EPD_5IN83BC_HEIGHT; - - EPD_5IN83BC_SendCommand(0x10); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - for(UBYTE k = 0; k < 4; k++) { - EPD_5IN83BC_SendData(0x33); - } - } - } - - EPD_5IN83BC_TurnOnDisplay(); -} - -/****************************************************************************** -function : Sends the image buffer in RAM to e-Paper and displays -parameter: -******************************************************************************/ -void EPD_5IN83BC_Display(const UBYTE *blackimage, const UBYTE *ryimage) -{ - UBYTE Data_Black, Data_RY, Data; - UDOUBLE i, j, Width, Height; - Width = (EPD_5IN83BC_WIDTH % 8 == 0)? (EPD_5IN83BC_WIDTH / 8 ): (EPD_5IN83BC_WIDTH / 8 + 1); - Height = EPD_5IN83BC_HEIGHT; - - EPD_5IN83BC_SendCommand(0x10); - for (j = 0; j < Height; j++) { - for (i = 0; i < Width; i++) { - Data_Black = blackimage[i + j * Width]; - Data_RY = ryimage[i + j * Width]; // red or yellow - for(UBYTE k = 0; k < 8; k++) { - if ((Data_RY & 0x80) == 0x00) { - Data = 0x04; //red - } else if ((Data_Black & 0x80) == 0x00) { - Data = 0x00; //black - } else { - Data = 0x03; //white - } - Data = (Data << 4) & 0xFF; - Data_Black = (Data_Black << 1) & 0xFF; - Data_RY = (Data_RY << 1) & 0xFF; - k += 1; - - if((Data_RY & 0x80) == 0x00) { - Data |= 0x04; //red - } else if ((Data_Black & 0x80) == 0x00) { - Data |= 0x00; //black - } else { - Data |= 0x03; //white - } - Data_Black = (Data_Black << 1) & 0xFF; - Data_RY = (Data_RY << 1) & 0xFF; - EPD_5IN83BC_SendData(Data); - } - } - } - - EPD_5IN83BC_TurnOnDisplay(); -} - -/****************************************************************************** -function : Sends the image buffer in RAM to e-Paper and displays -parameter: -******************************************************************************/ -void EPD_5IN83BC_DisplayHalfScreen(const UBYTE *blackimage, const UBYTE *ryimage) -{ - UBYTE Data_Black, Data_RY, Data; - UDOUBLE i, j, Width, Height; - Width = (EPD_5IN83BC_WIDTH % 8 == 0)? (EPD_5IN83BC_WIDTH / 8 ): (EPD_5IN83BC_WIDTH / 8 + 1); - Height = EPD_5IN83BC_HEIGHT; - - EPD_5IN83BC_SendCommand(0x10); - for (j = 0; j < Height / 2; j++) { - for (i = 0; i < Width; i++) { - Data_Black = blackimage[i + j * Width]; - Data_RY = ryimage[i + j * Width]; // red or yellow - for(UBYTE k = 0; k < 8; k++) { - if ((Data_RY & 0x80) == 0x00) { - Data = 0x04; //red - } else if ((Data_Black & 0x80) == 0x00) { - Data = 0x00; //black - } else { - Data = 0x03; //white - } - Data = (Data << 4) & 0xFF; - Data_Black = (Data_Black << 1) & 0xFF; - Data_RY = (Data_RY << 1) & 0xFF; - k += 1; - - if((Data_RY & 0x80) == 0x00) { - Data |= 0x04; //red - } else if ((Data_Black & 0x80) == 0x00) { - Data |= 0x00; //black - } else { - Data |= 0x03; //white - } - Data_Black = (Data_Black << 1) & 0xFF; - Data_RY = (Data_RY << 1) & 0xFF; - EPD_5IN83BC_SendData(Data); - } - } - } - - for (j = 0; j < Height / 2; j++) { - for (i = 0; i < Width; i++) { - for(UBYTE k = 0; k < 4; k++) { - EPD_5IN83BC_SendData(0x33); - } - } - } - - EPD_5IN83BC_TurnOnDisplay(); -} - -/****************************************************************************** -function : Enter sleep mode -parameter: -******************************************************************************/ -void EPD_5IN83BC_Sleep(void) -{ - EPD_5IN83BC_SendCommand(0x02); // POWER_OFF - EPD_5IN83BC_ReadBusy(); - EPD_5IN83BC_SendCommand(0x07); // DEEP_SLEEP - EPD_5IN83BC_SendData(0XA5); -} diff --git a/Raspberry Pi/c/lib/e-Paper/EPD_5in83bc.h b/Raspberry Pi/c/lib/e-Paper/EPD_5in83bc.h deleted file mode 100644 index c93349c..0000000 --- a/Raspberry Pi/c/lib/e-Paper/EPD_5in83bc.h +++ /dev/null @@ -1,100 +0,0 @@ -/***************************************************************************** -* | File : EPD_5IN83BC.h -* | Author : Waveshare team -* | Function : 5.83inch e-paper b&c -* | Info : -* | This version: V3.0 -* | Date : 2019-06-13 -* | Info : -* ----------------------------------------------------------------------------- -* V3.0(2019-06-13): -* 1.Change: -* EPD_Reset() => EPD_5IN83BC_Reset() -* EPD_SendCommand() => EPD_5IN83BC_SendCommand() -* EPD_SendData() => EPD_5IN83BC_SendData() -* EPD_WaitUntilIdle() => EPD_5IN83BC_ReadBusy() -* EPD_Init() => EPD_5IN83BC_Init() -* EPD_Clear() => EPD_5IN83BC_Clear() -* EPD_Display() => EPD_5IN83BC_Display() -* EPD_Sleep() => EPD_5IN83BC_Sleep() -* 2.Remove: -* #define PANEL_SETTING 0x00 -* #define POWER_SETTING 0x01 -* #define POWER_OFF 0x02 -* #define POWER_OFF_SEQUENCE_SETTING 0x03 -* #define POWER_ON 0x04 -* #define POWER_ON_MEASURE 0x05 -* #define BOOSTER_SOFT_START 0x06 -* #define DEEP_SLEEP 0x07 -* #define DATA_START_TRANSMISSION_1 0x10 -* #define DATA_STOP 0x11 -* #define DISPLAY_REFRESH 0x12 -* #define IMAGE_PROCESS 0x13 -* #define LUT_FOR_VCOM 0x20 -* #define LUT_BLUE 0x21 -* #define LUT_WHITE 0x22 -* #define LUT_GRAY_1 0x23 -* #define LUT_GRAY_2 0x24 -* #define LUT_RED_0 0x25 -* #define LUT_RED_1 0x26 -* #define LUT_RED_2 0x27 -* #define LUT_RED_3 0x28 -* #define LUT_XON 0x29 -* #define PLL_CONTROL 0x30 -* #define TEMPERATURE_SENSOR_COMMAND 0x40 -* #define TEMPERATURE_CALIBRATION 0x41 -* #define TEMPERATURE_SENSOR_WRITE 0x42 -* #define TEMPERATURE_SENSOR_READ 0x43 -* #define VCOM_AND_DATA_INTERVAL_SETTING 0x50 -* #define LOW_POWER_DETECTION 0x51 -* #define TCON_SETTING 0x60 -* #define TCON_RESOLUTION 0x61 -* #define SPI_FLASH_CONTROL 0x65 -* #define REVISION 0x70 -* #define GET_STATUS 0x71 -* #define AUTO_MEASUREMENT_VCOM 0x80 -* #define READ_VCOM_VALUE 0x81 -* #define VCM_DC_SETTING 0x82 -* 3.add: -* EPD_5IN83BC_DisplayHalfScreen() -* ----------------------------------------------------------------------------- -* V2.0(2018-11-09): -* 1.Remove:ImageBuff[EPD_HEIGHT * EPD_WIDTH / 8] -* 2.Change:EPD_Display(UBYTE *Image) -* Need to pass parameters: pointer to cached data -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#ifndef __EPD_5IN83BC_H_ -#define __EPD_5IN83BC_H_ - -#include "DEV_Config.h" - -// Display resolution -#define EPD_5IN83BC_WIDTH 600 -#define EPD_5IN83BC_HEIGHT 448 - -void EPD_5IN83BC_Init(void); -void EPD_5IN83BC_Clear(void); -void EPD_5IN83BC_Display(const UBYTE *blackimage, const UBYTE *ryimage); -void EPD_5IN83BC_DisplayHalfScreen(const UBYTE *blackimage, const UBYTE *ryimage); -void EPD_5IN83BC_Sleep(void); - -#endif diff --git a/Raspberry Pi/c/lib/e-Paper/EPD_7in5.c b/Raspberry Pi/c/lib/e-Paper/EPD_7in5.c deleted file mode 100644 index 3da6d6a..0000000 --- a/Raspberry Pi/c/lib/e-Paper/EPD_7in5.c +++ /dev/null @@ -1,271 +0,0 @@ -/***************************************************************************** -* | File : EPD_7IN5.c -* | Author : Waveshare team -* | Function : 7.5inch e-paper -* | Info : -*---------------- -* | This version: V3.0 -* | Date : 2019-06-13 -* | Info : -* ----------------------------------------------------------------------------- -* V3.0(2019-06-13): -* 1.Change: -* EPD_Reset() => EPD_7IN5_Reset() -* EPD_SendCommand() => EPD_7IN5_SendCommand() -* EPD_SendData() => EPD_7IN5_SendData() -* EPD_WaitUntilIdle() => EPD_7IN5_ReadBusy() -* EPD_SetFullReg() => EPD_7IN5_SetFullReg() -* EPD_SetPartReg() => EPD_7IN5_SetPartReg() -* EPD_TurnOnDisplay() => EPD_7IN5_TurnOnDisplay() -* EPD_Init() => EPD_7IN5_Init() -* EPD_Clear() => EPD_7IN5_Clear() -* EPD_Display() => EPD_7IN5_Display() -* EPD_Sleep() => EPD_7IN5_Sleep() -* 2.remove commands define: -* #define PANEL_SETTING 0x00 -* #define POWER_SETTING 0x01 -* #define POWER_OFF 0x02 -* #define POWER_OFF_SEQUENCE_SETTING 0x03 -* #define POWER_ON 0x04 -* #define POWER_ON_MEASURE 0x05 -* #define BOOSTER_SOFT_START 0x06 -* #define DEEP_SLEEP 0x07 -* #define DATA_START_TRANSMISSION_1 0x10 -* #define DATA_STOP 0x11 -* #define DISPLAY_REFRESH 0x12 -* #define DATA_START_TRANSMISSION_2 0x13 -* #define VCOM_LUT 0x20 -* #define W2W_LUT 0x21 -* #define B2W_LUT 0x22 -* #define W2B_LUT 0x23 -* #define B2B_LUT 0x24 -* #define PLL_CONTROL 0x30 -* #define TEMPERATURE_SENSOR_CALIBRATION 0x40 -* #define TEMPERATURE_SENSOR_SELECTION 0x41 -* #define TEMPERATURE_SENSOR_WRITE 0x42 -* #define TEMPERATURE_SENSOR_READ 0x43 -* #define VCOM_AND_DATA_INTERVAL_SETTING 0x50 -* #define LOW_POWER_DETECTION 0x51 -* #define TCON_SETTING 0x60 -* #define RESOLUTION_SETTING 0x61 -* #define GET_STATUS 0x71 -* #define AUTO_MEASURE_VCOM 0x80 -* #define READ_VCOM_VALUE 0x81 -* #define VCM_DC_SETTING 0x82 -* #define PARTIAL_WINDOW 0x90 -* #define PARTIAL_IN 0x91 -* #define PARTIAL_OUT 0x92 -* #define PROGRAM_MODE 0xA0 -* #define ACTIVE_PROGRAM 0xA1 -* #define READ_OTP_DATA 0xA2 -* #define POWER_SAVING 0xE3 -* ----------------------------------------------------------------------------- -* V2.0(2018-11-09): -* 1.Remove:ImageBuff[EPD_HEIGHT * EPD_WIDTH / 8] -* 2.Change:EPD_Display(UBYTE *Image) -* Need to pass parameters: pointer to cached data -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "EPD_7in5.h" -#include "Debug.h" - -/****************************************************************************** -function : Software reset -parameter: -******************************************************************************/ -static void EPD_7IN5_Reset(void) -{ - DEV_Digital_Write(EPD_RST_PIN, 1); - DEV_Delay_ms(200); - DEV_Digital_Write(EPD_RST_PIN, 0); - DEV_Delay_ms(200); - DEV_Digital_Write(EPD_RST_PIN, 1); - DEV_Delay_ms(200); -} - -/****************************************************************************** -function : send command -parameter: - Reg : Command register -******************************************************************************/ -static void EPD_7IN5_SendCommand(UBYTE Reg) -{ - DEV_Digital_Write(EPD_DC_PIN, 0); - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_SPI_WriteByte(Reg); - DEV_Digital_Write(EPD_CS_PIN, 1); -} - -/****************************************************************************** -function : send data -parameter: - Data : Write data -******************************************************************************/ -static void EPD_7IN5_SendData(UBYTE Data) -{ - DEV_Digital_Write(EPD_DC_PIN, 1); - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_SPI_WriteByte(Data); - DEV_Digital_Write(EPD_CS_PIN, 1); -} - -/****************************************************************************** -function : Wait until the busy_pin goes LOW -parameter: -******************************************************************************/ -void EPD_7IN5_ReadBusy(void) -{ - Debug("e-Paper busy\r\n"); - while(DEV_Digital_Read(EPD_BUSY_PIN) == 0) { //LOW: idle, HIGH: busy - DEV_Delay_ms(100); - } - Debug("e-Paper busy release\r\n"); -} - - -/****************************************************************************** -function : Turn On Display -parameter: -******************************************************************************/ -static void EPD_7IN5_TurnOnDisplay(void) -{ - EPD_7IN5_SendCommand(0x12); // DISPLAY_REFRESH - DEV_Delay_ms(100); - EPD_7IN5_ReadBusy(); -} - -/****************************************************************************** -function : Initialize the e-Paper register -parameter: -******************************************************************************/ -void EPD_7IN5_Init(void) -{ - EPD_7IN5_Reset(); - - EPD_7IN5_SendCommand(0x01); // POWER_SETTING - EPD_7IN5_SendData(0x37); - EPD_7IN5_SendData(0x00); - - EPD_7IN5_SendCommand(0x00); // PANEL_SETTING - EPD_7IN5_SendData(0xCF); - EPD_7IN5_SendData(0x08); - - EPD_7IN5_SendCommand(0x06); // BOOSTER_SOFT_START - EPD_7IN5_SendData(0xc7); - EPD_7IN5_SendData(0xcc); - EPD_7IN5_SendData(0x28); - - EPD_7IN5_SendCommand(0x04); // POWER_ON - EPD_7IN5_ReadBusy(); - - EPD_7IN5_SendCommand(0x30); // PLL_CONTROL - EPD_7IN5_SendData(0x3c); - - EPD_7IN5_SendCommand(0x41); // TEMPERATURE_CALIBRATION - EPD_7IN5_SendData(0x00); - - EPD_7IN5_SendCommand(0x50); // VCOM_AND_DATA_INTERVAL_SETTING - EPD_7IN5_SendData(0x77); - - EPD_7IN5_SendCommand(0x60); // TCON_SETTING - EPD_7IN5_SendData(0x22); - - EPD_7IN5_SendCommand(0x61); // TCON_RESOLUTION - EPD_7IN5_SendData(EPD_7IN5_WIDTH >> 8); // source 640 - EPD_7IN5_SendData(EPD_7IN5_WIDTH & 0xff); - EPD_7IN5_SendData(EPD_7IN5_HEIGHT >> 8); // gate 384 - EPD_7IN5_SendData(EPD_7IN5_HEIGHT & 0xff); - - EPD_7IN5_SendCommand(0x82); // VCM_DC_SETTING - EPD_7IN5_SendData(0x1E); // decide by LUT file - - EPD_7IN5_SendCommand(0xe5); // FLASH MODE - EPD_7IN5_SendData(0x03); - -} - -/****************************************************************************** -function : Clear screen -parameter: -******************************************************************************/ -void EPD_7IN5_Clear(void) -{ - UWORD Width, Height; - Width = (EPD_7IN5_WIDTH % 8 == 0)? (EPD_7IN5_WIDTH / 8 ): (EPD_7IN5_WIDTH / 8 + 1); - Height = EPD_7IN5_HEIGHT; - - EPD_7IN5_SendCommand(0x10); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - for(UBYTE k = 0; k < 4; k++) { - EPD_7IN5_SendData(0x33); - } - } - } - EPD_7IN5_TurnOnDisplay(); -} - -/****************************************************************************** -function : Sends the image buffer in RAM to e-Paper and displays -parameter: -******************************************************************************/ -void EPD_7IN5_Display(UBYTE *Image) -{ - UBYTE Data_Black, Data; - UWORD Width, Height; - Width = (EPD_7IN5_WIDTH % 8 == 0)? (EPD_7IN5_WIDTH / 8 ): (EPD_7IN5_WIDTH / 8 + 1); - Height = EPD_7IN5_HEIGHT; - - EPD_7IN5_SendCommand(0x10); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - Data_Black = ~Image[i + j * Width]; - for(UBYTE k = 0; k < 8; k++) { - if(Data_Black & 0x80) - Data = 0x00; - else - Data = 0x03; - Data <<= 4; - Data_Black <<= 1; - k++; - if(Data_Black & 0x80) - Data |= 0x00; - else - Data |= 0x03; - Data_Black <<= 1; - EPD_7IN5_SendData(Data); - } - } - } - EPD_7IN5_TurnOnDisplay(); -} - -/****************************************************************************** -function : Enter sleep mode -parameter: -******************************************************************************/ -void EPD_7IN5_Sleep(void) -{ - EPD_7IN5_SendCommand(0x02); // POWER_OFF - EPD_7IN5_ReadBusy(); - EPD_7IN5_SendCommand(0x07); // DEEP_SLEEP - EPD_7IN5_SendData(0XA5);; -} diff --git a/Raspberry Pi/c/lib/e-Paper/EPD_7in5.h b/Raspberry Pi/c/lib/e-Paper/EPD_7in5.h deleted file mode 100644 index 93a259a..0000000 --- a/Raspberry Pi/c/lib/e-Paper/EPD_7in5.h +++ /dev/null @@ -1,101 +0,0 @@ -/***************************************************************************** -* | File : EPD_7IN5.h -* | Author : Waveshare team -* | Function : 7.5inch e-paper -* | Info : -*---------------- -* | This version: V3.0 -* | Date : 2019-06-13 -* | Info : -* ----------------------------------------------------------------------------- -* V3.0(2019-06-13): -* 1.Change: -* EPD_Reset() => EPD_7IN5_Reset() -* EPD_SendCommand() => EPD_7IN5_SendCommand() -* EPD_SendData() => EPD_7IN5_SendData() -* EPD_WaitUntilIdle() => EPD_7IN5_ReadBusy() -* EPD_SetFullReg() => EPD_7IN5_SetFullReg() -* EPD_SetPartReg() => EPD_7IN5_SetPartReg() -* EPD_TurnOnDisplay() => EPD_7IN5_TurnOnDisplay() -* EPD_Init() => EPD_7IN5_Init() -* EPD_Clear() => EPD_7IN5_Clear() -* EPD_Display() => EPD_7IN5_Display() -* EPD_Sleep() => EPD_7IN5_Sleep() -* 2.remove commands define: -* #define PANEL_SETTING 0x00 -* #define POWER_SETTING 0x01 -* #define POWER_OFF 0x02 -* #define POWER_OFF_SEQUENCE_SETTING 0x03 -* #define POWER_ON 0x04 -* #define POWER_ON_MEASURE 0x05 -* #define BOOSTER_SOFT_START 0x06 -* #define DEEP_SLEEP 0x07 -* #define DATA_START_TRANSMISSION_1 0x10 -* #define DATA_STOP 0x11 -* #define DISPLAY_REFRESH 0x12 -* #define DATA_START_TRANSMISSION_2 0x13 -* #define VCOM_LUT 0x20 -* #define W2W_LUT 0x21 -* #define B2W_LUT 0x22 -* #define W2B_LUT 0x23 -* #define B2B_LUT 0x24 -* #define PLL_CONTROL 0x30 -* #define TEMPERATURE_SENSOR_CALIBRATION 0x40 -* #define TEMPERATURE_SENSOR_SELECTION 0x41 -* #define TEMPERATURE_SENSOR_WRITE 0x42 -* #define TEMPERATURE_SENSOR_READ 0x43 -* #define VCOM_AND_DATA_INTERVAL_SETTING 0x50 -* #define LOW_POWER_DETECTION 0x51 -* #define TCON_SETTING 0x60 -* #define RESOLUTION_SETTING 0x61 -* #define GET_STATUS 0x71 -* #define AUTO_MEASURE_VCOM 0x80 -* #define READ_VCOM_VALUE 0x81 -* #define VCM_DC_SETTING 0x82 -* #define PARTIAL_WINDOW 0x90 -* #define PARTIAL_IN 0x91 -* #define PARTIAL_OUT 0x92 -* #define PROGRAM_MODE 0xA0 -* #define ACTIVE_PROGRAM 0xA1 -* #define READ_OTP_DATA 0xA2 -* #define POWER_SAVING 0xE3 -* ----------------------------------------------------------------------------- -* V2.0(2018-11-09): -* 1.Remove:ImageBuff[EPD_HEIGHT * EPD_WIDTH / 8] -* 2.Change:EPD_Display(UBYTE *Image) -* Need to pass parameters: pointer to cached data -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#ifndef __EPD_7IN5_H_ -#define __EPD_7IN5_H_ - -#include "DEV_Config.h" - -// Display resolution -#define EPD_7IN5_WIDTH 640 -#define EPD_7IN5_HEIGHT 384 - -void EPD_7IN5_Init(void); -void EPD_7IN5_Clear(void); -void EPD_7IN5_Display(UBYTE *Image); -void EPD_7IN5_Sleep(void); - -#endif diff --git a/Raspberry Pi/c/lib/e-Paper/EPD_7in5bc.c b/Raspberry Pi/c/lib/e-Paper/EPD_7in5bc.c deleted file mode 100644 index 98ff067..0000000 --- a/Raspberry Pi/c/lib/e-Paper/EPD_7in5bc.c +++ /dev/null @@ -1,331 +0,0 @@ -/***************************************************************************** -* | File : EPD_7IN5BC.h -* | Author : Waveshare team -* | Function : 7.5inch e-paper b&c -* | Info : -* | This version: V3.0 -* | Date : 2019-06-13 -* | Info : -* ----------------------------------------------------------------------------- -* V3.0(2019-06-13): -* 1.Change: -* EPD_Reset() => EPD_7IN5BC_Reset() -* EPD_SendCommand() => EPD_7IN5BC_SendCommand() -* EPD_SendData() => EPD_7IN5BC_SendData() -* EPD_WaitUntilIdle() => EPD_7IN5BC_ReadBusy() -* EPD_Init() => EPD_7IN5BC_Init() -* EPD_Clear() => EPD_7IN5BC_Clear() -* EPD_Display() => EPD_7IN5BC_Display() -* EPD_Sleep() => EPD_7IN5BC_Sleep() -* 2.Remove: -* #define PANEL_SETTING 0x00 -* #define POWER_SETTING 0x01 -* #define POWER_OFF 0x02 -* #define POWER_OFF_SEQUENCE_SETTING 0x03 -* #define POWER_ON 0x04 -* #define POWER_ON_MEASURE 0x05 -* #define BOOSTER_SOFT_START 0x06 -* #define DEEP_SLEEP 0x07 -* #define DATA_START_TRANSMISSION_1 0x10 -* #define DATA_STOP 0x11 -* #define DISPLAY_REFRESH 0x12 -* #define IMAGE_PROCESS 0x13 -* #define LUT_FOR_VCOM 0x20 -* #define LUT_BLUE 0x21 -* #define LUT_WHITE 0x22 -* #define LUT_GRAY_1 0x23 -* #define LUT_GRAY_2 0x24 -* #define LUT_RED_0 0x25 -* #define LUT_RED_1 0x26 -* #define LUT_RED_2 0x27 -* #define LUT_RED_3 0x28 -* #define LUT_XON 0x29 -* #define PLL_CONTROL 0x30 -* #define TEMPERATURE_SENSOR_COMMAND 0x40 -* #define TEMPERATURE_CALIBRATION 0x41 -* #define TEMPERATURE_SENSOR_WRITE 0x42 -* #define TEMPERATURE_SENSOR_READ 0x43 -* #define VCOM_AND_DATA_INTERVAL_SETTING 0x50 -* #define LOW_POWER_DETECTION 0x51 -* #define TCON_SETTING 0x60 -* #define TCON_RESOLUTION 0x61 -* #define SPI_FLASH_CONTROL 0x65 -* #define REVISION 0x70 -* #define GET_STATUS 0x71 -* #define AUTO_MEASUREMENT_VCOM 0x80 -* #define READ_VCOM_VALUE 0x81 -* #define VCM_DC_SETTING 0x82 -* 3.add: -* EPD_7IN5BC_DisplayHalfScreen() -* ----------------------------------------------------------------------------- -* V2.0(2018-11-09): -* 1.Remove:ImageBuff[EPD_HEIGHT * EPD_WIDTH / 8] -* 2.Change:EPD_Display(UBYTE *Image) -* Need to pass parameters: pointer to cached data -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#include "EPD_7in5bc.h" -#include "Debug.h" - -/****************************************************************************** -function : Software reset -parameter: -******************************************************************************/ -static void EPD_7IN5BC_Reset(void) -{ - DEV_Digital_Write(EPD_RST_PIN, 1); - DEV_Delay_ms(200); - DEV_Digital_Write(EPD_RST_PIN, 0); - DEV_Delay_ms(10); - DEV_Digital_Write(EPD_RST_PIN, 1); - DEV_Delay_ms(200); -} - -/****************************************************************************** -function : send command -parameter: - Reg : Command register -******************************************************************************/ -static void EPD_7IN5BC_SendCommand(UBYTE Reg) -{ - DEV_Digital_Write(EPD_DC_PIN, 0); - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_SPI_WriteByte(Reg); - DEV_Digital_Write(EPD_CS_PIN, 1); -} - -/****************************************************************************** -function : send data -parameter: - Data : Write data -******************************************************************************/ -static void EPD_7IN5BC_SendData(UBYTE Data) -{ - DEV_Digital_Write(EPD_DC_PIN, 1); - DEV_Digital_Write(EPD_CS_PIN, 0); - DEV_SPI_WriteByte(Data); - DEV_Digital_Write(EPD_CS_PIN, 1); -} - -/****************************************************************************** -function : Wait until the busy_pin goes LOW -parameter: -******************************************************************************/ -void EPD_7IN5BC_ReadBusy(void) -{ - UBYTE busy; - Debug("e-Paper busy\r\n"); - do { - EPD_7IN5BC_SendCommand(0x71); - busy = DEV_Digital_Read(EPD_BUSY_PIN); - busy =!(busy & 0x01); - } while(busy); - Debug("e-Paper busy release\r\n"); -} - -/****************************************************************************** -function : Turn On Display -parameter: -******************************************************************************/ -static void EPD_7IN5BC_TurnOnDisplay(void) -{ - EPD_7IN5BC_SendCommand(0x04); // POWER ON - EPD_7IN5BC_ReadBusy(); - EPD_7IN5BC_SendCommand(0x12); // display refresh - DEV_Delay_ms(100); - EPD_7IN5BC_ReadBusy(); -} - -/****************************************************************************** -function : Initialize the e-Paper register -parameter: -******************************************************************************/ -void EPD_7IN5BC_Init(void) -{ - EPD_7IN5BC_Reset(); - - EPD_7IN5BC_SendCommand(0x01); // POWER_SETTING - EPD_7IN5BC_SendData(0x37); - EPD_7IN5BC_SendData(0x00); - - EPD_7IN5BC_SendCommand(0x00); // PANEL_SETTING - EPD_7IN5BC_SendData(0xCF); - EPD_7IN5BC_SendData(0x08); - - EPD_7IN5BC_SendCommand(0x30); // PLL_CONTROL - EPD_7IN5BC_SendData(0x3A); // PLL: 0-15:0x3C, 15+:0x3A - - EPD_7IN5BC_SendCommand(0x82); // VCM_DC_SETTING - EPD_7IN5BC_SendData(0x28); //all temperature range - - EPD_7IN5BC_SendCommand(0x06); // BOOSTER_SOFT_START - EPD_7IN5BC_SendData (0xc7); - EPD_7IN5BC_SendData (0xcc); - EPD_7IN5BC_SendData (0x15); - - EPD_7IN5BC_SendCommand(0x50); // VCOM AND DATA INTERVAL SETTING - EPD_7IN5BC_SendData(0x77); - - EPD_7IN5BC_SendCommand(0x60); // TCON_SETTING - EPD_7IN5BC_SendData(0x22); - - EPD_7IN5BC_SendCommand(0x65); // FLASH CONTROL - EPD_7IN5BC_SendData(0x00); - - EPD_7IN5BC_SendCommand(0x61); // TCON_RESOLUTION - EPD_7IN5BC_SendData(EPD_7IN5BC_WIDTH >> 8); // source 640 - EPD_7IN5BC_SendData(EPD_7IN5BC_WIDTH & 0xff); - EPD_7IN5BC_SendData(EPD_7IN5BC_HEIGHT >> 8); // gate 384 - EPD_7IN5BC_SendData(EPD_7IN5BC_HEIGHT & 0xff); - - EPD_7IN5BC_SendCommand(0xe5); // FLASH MODE - EPD_7IN5BC_SendData(0x03); -} - -/****************************************************************************** -function : Clear screen -parameter: -******************************************************************************/ -void EPD_7IN5BC_Clear(void) -{ - UWORD Width, Height; - Width = (EPD_7IN5BC_WIDTH % 8 == 0)? (EPD_7IN5BC_WIDTH / 8): (EPD_7IN5BC_WIDTH / 8 + 1); - Height = EPD_7IN5BC_HEIGHT; - - EPD_7IN5BC_SendCommand(0x10); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - for(UBYTE k = 0; k < 4; k++) { - EPD_7IN5BC_SendData(0x33); - } - } - } - - EPD_7IN5BC_TurnOnDisplay(); -} - -/****************************************************************************** -function : Sends the image buffer in RAM to e-Paper and displays -parameter: -******************************************************************************/ -void EPD_7IN5BC_Display(const UBYTE *blackimage, const UBYTE *ryimage) -{ - UBYTE Data_Black, Data_RY, Data; - UDOUBLE i, j, Width, Height; - Width = (EPD_7IN5BC_WIDTH % 8 == 0)? (EPD_7IN5BC_WIDTH / 8 ): (EPD_7IN5BC_WIDTH / 8 + 1); - Height = EPD_7IN5BC_HEIGHT; - - EPD_7IN5BC_SendCommand(0x10); - for (j = 0; j < Height; j++) { - for (i = 0; i < Width; i++) { - Data_Black = blackimage[i + j * Width]; - Data_RY = ryimage[i + j * Width]; // red or yellow - for(UBYTE k = 0; k < 8; k++) { - if ((Data_RY & 0x80) == 0x00) { - Data = 0x04; //red - } else if ((Data_Black & 0x80) == 0x00) { - Data = 0x00; //black - } else { - Data = 0x03; //white - } - Data = (Data << 4) & 0xFF; - Data_Black = (Data_Black << 1) & 0xFF; - Data_RY = (Data_RY << 1) & 0xFF; - k += 1; - - if((Data_RY & 0x80) == 0x00) { - Data |= 0x04; //red - } else if ((Data_Black & 0x80) == 0x00) { - Data |= 0x00; //black - } else { - Data |= 0x03; //white - } - Data_Black = (Data_Black << 1) & 0xFF; - Data_RY = (Data_RY << 1) & 0xFF; - EPD_7IN5BC_SendData(Data); - } - } - } - - EPD_7IN5BC_TurnOnDisplay(); -} - -void EPD_7IN5BC_DisplayHalfScreen(const UBYTE *blackimage, const UBYTE *ryimage) -{ - UBYTE Data_Black, Data_RY, Data; - UDOUBLE i, j, Width, Height; - Width = (EPD_7IN5BC_WIDTH % 8 == 0)? (EPD_7IN5BC_WIDTH / 8 ): (EPD_7IN5BC_WIDTH / 8 + 1); - Height = EPD_7IN5BC_HEIGHT; - - EPD_7IN5BC_SendCommand(0x10); - for (j = 0; j < Height / 2; j++) { - for (i = 0; i < Width; i++) { - Data_Black = blackimage[i + j * Width]; - Data_RY = ryimage[i + j * Width]; // red or yellow - for(UBYTE k = 0; k < 8; k++) { - if ((Data_RY & 0x80) == 0x00) { - Data = 0x04; //red - } else if ((Data_Black & 0x80) == 0x00) { - Data = 0x00; //black - } else { - Data = 0x03; //white - } - Data = (Data << 4) & 0xFF; - Data_Black = (Data_Black << 1) & 0xFF; - Data_RY = (Data_RY << 1) & 0xFF; - k += 1; - - if((Data_RY & 0x80) == 0x00) { - Data |= 0x04; //red - } else if ((Data_Black & 0x80) == 0x00) { - Data |= 0x00; //black - } else { - Data |= 0x03; //white - } - Data_Black = (Data_Black << 1) & 0xFF; - Data_RY = (Data_RY << 1) & 0xFF; - EPD_7IN5BC_SendData(Data); - } - } - } - - for (j = 0; j < Height / 2; j++) { - for (i = 0; i < Width; i++) { - for(UBYTE k = 0; k < 4; k++) { - EPD_7IN5BC_SendData(Data); - } - } - } - - EPD_7IN5BC_TurnOnDisplay(); -} - -/****************************************************************************** -function : Enter sleep mode -parameter: -******************************************************************************/ -void EPD_7IN5BC_Sleep(void) -{ - EPD_7IN5BC_SendCommand(0x02); // POWER_OFF - EPD_7IN5BC_ReadBusy(); - EPD_7IN5BC_SendCommand(0x07); // DEEP_SLEEP - EPD_7IN5BC_SendData(0XA5); -} diff --git a/Raspberry Pi/c/lib/e-Paper/EPD_7in5bc.h b/Raspberry Pi/c/lib/e-Paper/EPD_7in5bc.h deleted file mode 100644 index 594ebc2..0000000 --- a/Raspberry Pi/c/lib/e-Paper/EPD_7in5bc.h +++ /dev/null @@ -1,100 +0,0 @@ -/***************************************************************************** -* | File : EPD_7IN5BC.h -* | Author : Waveshare team -* | Function : 7.5inch e-paper b&c -* | Info : -* | This version: V3.0 -* | Date : 2019-06-13 -* | Info : -* ----------------------------------------------------------------------------- -* V3.0(2019-06-13): -* 1.Change: -* EPD_Reset() => EPD_7IN5BC_Reset() -* EPD_SendCommand() => EPD_7IN5BC_SendCommand() -* EPD_SendData() => EPD_7IN5BC_SendData() -* EPD_WaitUntilIdle() => EPD_7IN5BC_ReadBusy() -* EPD_Init() => EPD_7IN5BC_Init() -* EPD_Clear() => EPD_7IN5BC_Clear() -* EPD_Display() => EPD_7IN5BC_Display() -* EPD_Sleep() => EPD_7IN5BC_Sleep() -* 2.Remove: -* #define PANEL_SETTING 0x00 -* #define POWER_SETTING 0x01 -* #define POWER_OFF 0x02 -* #define POWER_OFF_SEQUENCE_SETTING 0x03 -* #define POWER_ON 0x04 -* #define POWER_ON_MEASURE 0x05 -* #define BOOSTER_SOFT_START 0x06 -* #define DEEP_SLEEP 0x07 -* #define DATA_START_TRANSMISSION_1 0x10 -* #define DATA_STOP 0x11 -* #define DISPLAY_REFRESH 0x12 -* #define IMAGE_PROCESS 0x13 -* #define LUT_FOR_VCOM 0x20 -* #define LUT_BLUE 0x21 -* #define LUT_WHITE 0x22 -* #define LUT_GRAY_1 0x23 -* #define LUT_GRAY_2 0x24 -* #define LUT_RED_0 0x25 -* #define LUT_RED_1 0x26 -* #define LUT_RED_2 0x27 -* #define LUT_RED_3 0x28 -* #define LUT_XON 0x29 -* #define PLL_CONTROL 0x30 -* #define TEMPERATURE_SENSOR_COMMAND 0x40 -* #define TEMPERATURE_CALIBRATION 0x41 -* #define TEMPERATURE_SENSOR_WRITE 0x42 -* #define TEMPERATURE_SENSOR_READ 0x43 -* #define VCOM_AND_DATA_INTERVAL_SETTING 0x50 -* #define LOW_POWER_DETECTION 0x51 -* #define TCON_SETTING 0x60 -* #define TCON_RESOLUTION 0x61 -* #define SPI_FLASH_CONTROL 0x65 -* #define REVISION 0x70 -* #define GET_STATUS 0x71 -* #define AUTO_MEASUREMENT_VCOM 0x80 -* #define READ_VCOM_VALUE 0x81 -* #define VCM_DC_SETTING 0x82 -* 3.add: -* EPD_7IN5BC_DisplayHalfScreen() -* ----------------------------------------------------------------------------- -* V2.0(2018-11-09): -* 1.Remove:ImageBuff[EPD_HEIGHT * EPD_WIDTH / 8] -* 2.Change:EPD_Display(UBYTE *Image) -* Need to pass parameters: pointer to cached data -# -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -******************************************************************************/ -#ifndef __EPD_7IN5BC_H_ -#define __EPD_7IN5BC_H_ - -#include "DEV_Config.h" - -// Display resolution -#define EPD_7IN5BC_WIDTH 640 -#define EPD_7IN5BC_HEIGHT 384 - -void EPD_7IN5BC_Init(void); -void EPD_7IN5BC_Clear(void); -void EPD_7IN5BC_Display(const UBYTE *blackimage, const UBYTE *ryimage); -void EPD_7IN5BC_DisplayHalfScreen(const UBYTE *blackimage, const UBYTE *ryimage); -void EPD_7IN5BC_Sleep(void); - -#endif diff --git a/Raspberry Pi/c/pic/100x100.bmp b/Raspberry Pi/c/pic/100x100.bmp deleted file mode 100644 index 70f4584..0000000 Binary files a/Raspberry Pi/c/pic/100x100.bmp and /dev/null differ diff --git a/Raspberry Pi/c/pic/1in54.bmp b/Raspberry Pi/c/pic/1in54.bmp deleted file mode 100644 index a877bfa..0000000 Binary files a/Raspberry Pi/c/pic/1in54.bmp and /dev/null differ diff --git a/Raspberry Pi/c/pic/1in54b-b.bmp b/Raspberry Pi/c/pic/1in54b-b.bmp deleted file mode 100644 index e992aea..0000000 Binary files a/Raspberry Pi/c/pic/1in54b-b.bmp and /dev/null differ diff --git a/Raspberry Pi/c/pic/1in54b-r.bmp b/Raspberry Pi/c/pic/1in54b-r.bmp deleted file mode 100644 index 68c339b..0000000 Binary files a/Raspberry Pi/c/pic/1in54b-r.bmp and /dev/null differ diff --git a/Raspberry Pi/c/pic/1in54c-b.bmp b/Raspberry Pi/c/pic/1in54c-b.bmp deleted file mode 100644 index 159795e..0000000 Binary files a/Raspberry Pi/c/pic/1in54c-b.bmp and /dev/null differ diff --git a/Raspberry Pi/c/pic/1in54c-y.bmp b/Raspberry Pi/c/pic/1in54c-y.bmp deleted file mode 100644 index fe37382..0000000 Binary files a/Raspberry Pi/c/pic/1in54c-y.bmp and /dev/null differ diff --git a/Raspberry Pi/c/pic/2in13-v2.bmp b/Raspberry Pi/c/pic/2in13-v2.bmp deleted file mode 100644 index 5156852..0000000 Binary files a/Raspberry Pi/c/pic/2in13-v2.bmp and /dev/null differ diff --git a/Raspberry Pi/c/pic/2in13.bmp b/Raspberry Pi/c/pic/2in13.bmp deleted file mode 100644 index a579e2a..0000000 Binary files a/Raspberry Pi/c/pic/2in13.bmp and /dev/null differ diff --git a/Raspberry Pi/c/pic/2in13bc-b.bmp b/Raspberry Pi/c/pic/2in13bc-b.bmp deleted file mode 100644 index 6b70b26..0000000 Binary files a/Raspberry Pi/c/pic/2in13bc-b.bmp and /dev/null differ diff --git a/Raspberry Pi/c/pic/2in13bc-ry.bmp b/Raspberry Pi/c/pic/2in13bc-ry.bmp deleted file mode 100644 index ec5cf02..0000000 Binary files a/Raspberry Pi/c/pic/2in13bc-ry.bmp and /dev/null differ diff --git a/Raspberry Pi/c/pic/2in13d.bmp b/Raspberry Pi/c/pic/2in13d.bmp deleted file mode 100644 index 6f0a83d..0000000 Binary files a/Raspberry Pi/c/pic/2in13d.bmp and /dev/null differ diff --git a/Raspberry Pi/c/pic/2in7.bmp b/Raspberry Pi/c/pic/2in7.bmp deleted file mode 100644 index 48138bb..0000000 Binary files a/Raspberry Pi/c/pic/2in7.bmp and /dev/null differ diff --git a/Raspberry Pi/c/pic/2in7b-b.bmp b/Raspberry Pi/c/pic/2in7b-b.bmp deleted file mode 100644 index d25dec3..0000000 Binary files a/Raspberry Pi/c/pic/2in7b-b.bmp and /dev/null differ diff --git a/Raspberry Pi/c/pic/2in7b-r.bmp b/Raspberry Pi/c/pic/2in7b-r.bmp deleted file mode 100644 index 66d51b1..0000000 Binary files a/Raspberry Pi/c/pic/2in7b-r.bmp and /dev/null differ diff --git a/Raspberry Pi/c/pic/2in9.bmp b/Raspberry Pi/c/pic/2in9.bmp deleted file mode 100644 index c3e0181..0000000 Binary files a/Raspberry Pi/c/pic/2in9.bmp and /dev/null differ diff --git a/Raspberry Pi/c/pic/2in9bc-b.bmp b/Raspberry Pi/c/pic/2in9bc-b.bmp deleted file mode 100644 index d45ff48..0000000 Binary files a/Raspberry Pi/c/pic/2in9bc-b.bmp and /dev/null differ diff --git a/Raspberry Pi/c/pic/2in9bc-ry.bmp b/Raspberry Pi/c/pic/2in9bc-ry.bmp deleted file mode 100644 index 402727c..0000000 Binary files a/Raspberry Pi/c/pic/2in9bc-ry.bmp and /dev/null differ diff --git a/Raspberry Pi/c/pic/2in9d.bmp b/Raspberry Pi/c/pic/2in9d.bmp deleted file mode 100644 index 61e0fd3..0000000 Binary files a/Raspberry Pi/c/pic/2in9d.bmp and /dev/null differ diff --git a/Raspberry Pi/c/pic/4in2.bmp b/Raspberry Pi/c/pic/4in2.bmp deleted file mode 100644 index b380a1c..0000000 Binary files a/Raspberry Pi/c/pic/4in2.bmp and /dev/null differ diff --git a/Raspberry Pi/c/pic/4in2b-b.bmp b/Raspberry Pi/c/pic/4in2b-b.bmp deleted file mode 100644 index 7c537a4..0000000 Binary files a/Raspberry Pi/c/pic/4in2b-b.bmp and /dev/null differ diff --git a/Raspberry Pi/c/pic/4in2b-r.bmp b/Raspberry Pi/c/pic/4in2b-r.bmp deleted file mode 100644 index 3de854c..0000000 Binary files a/Raspberry Pi/c/pic/4in2b-r.bmp and /dev/null differ diff --git a/Raspberry Pi/c/pic/4in2c-b.bmp b/Raspberry Pi/c/pic/4in2c-b.bmp deleted file mode 100644 index b380a1c..0000000 Binary files a/Raspberry Pi/c/pic/4in2c-b.bmp and /dev/null differ diff --git a/Raspberry Pi/c/pic/4in2c-y.bmp b/Raspberry Pi/c/pic/4in2c-y.bmp deleted file mode 100644 index cd5c0d6..0000000 Binary files a/Raspberry Pi/c/pic/4in2c-y.bmp and /dev/null differ diff --git a/Raspberry Pi/c/pic/5in83.bmp b/Raspberry Pi/c/pic/5in83.bmp deleted file mode 100644 index 6b8f604..0000000 Binary files a/Raspberry Pi/c/pic/5in83.bmp and /dev/null differ diff --git a/Raspberry Pi/c/pic/5in83bc-b.bmp b/Raspberry Pi/c/pic/5in83bc-b.bmp deleted file mode 100644 index 545e060..0000000 Binary files a/Raspberry Pi/c/pic/5in83bc-b.bmp and /dev/null differ diff --git a/Raspberry Pi/c/pic/5in83bc-ry.bmp b/Raspberry Pi/c/pic/5in83bc-ry.bmp deleted file mode 100644 index 41884b3..0000000 Binary files a/Raspberry Pi/c/pic/5in83bc-ry.bmp and /dev/null differ diff --git a/Raspberry Pi/c/pic/7in5.bmp b/Raspberry Pi/c/pic/7in5.bmp deleted file mode 100644 index b997800..0000000 Binary files a/Raspberry Pi/c/pic/7in5.bmp and /dev/null differ diff --git a/Raspberry Pi/c/pic/7in5b-b.bmp b/Raspberry Pi/c/pic/7in5b-b.bmp deleted file mode 100644 index 8f84025..0000000 Binary files a/Raspberry Pi/c/pic/7in5b-b.bmp and /dev/null differ diff --git a/Raspberry Pi/c/pic/7in5b-r.bmp b/Raspberry Pi/c/pic/7in5b-r.bmp deleted file mode 100644 index 3f81b2c..0000000 Binary files a/Raspberry Pi/c/pic/7in5b-r.bmp and /dev/null differ diff --git a/Raspberry Pi/c/pic/7in5c-b.bmp b/Raspberry Pi/c/pic/7in5c-b.bmp deleted file mode 100644 index a69ddbc..0000000 Binary files a/Raspberry Pi/c/pic/7in5c-b.bmp and /dev/null differ diff --git a/Raspberry Pi/c/pic/7in5c-r.bmp b/Raspberry Pi/c/pic/7in5c-r.bmp deleted file mode 100644 index be84903..0000000 Binary files a/Raspberry Pi/c/pic/7in5c-r.bmp and /dev/null differ diff --git a/Raspberry Pi/c/readme_EN.txt b/Raspberry Pi/c/readme_EN.txt deleted file mode 100644 index 57eb758..0000000 --- a/Raspberry Pi/c/readme_EN.txt +++ /dev/null @@ -1,96 +0,0 @@ -/***************************************************************************** -* | File : Readme_CN.txt -* | Author : Waveshare team -* | Function : Help with use -* | Info : -*---------------- -* | This version: V1.0 -* | Date : 2019-06-17 -* | Info : Here is an English version of the documentation for your quick use. -******************************************************************************/ -This file is to help you use this routine. -Since our ink screens are getting more and more, it is not convenient for our maintenance, so all the ink screen programs are made into one project. -A brief description of the use of this project is here: - -1. Basic information: -This routine was developed based on the jetson-nano-sd-r32.1-2019-03-18 system -image. Since the current system does not have a hardware SPI,Currently developed -with analog SPI, so the ink screen refresh rate is slower; -This routine was developed based on the Jetson Nano and the routines were -verified on the Jetson Nano; -This routine has been verified using the e-paper Driver HAT module. -You can view the corresponding test routines in the \lib\Examples\ -of the project. - -2. Pin connection: -Pin connection You can view it in DEV_Config.h in the \lib\Config\ directory, and repeat it here: -EPD => Jetson Nano/RPI(BCM) -VCC -> 3.3 -GND -> GND -DIN -> 10(SPI0_MOSI) -CLK -> 11(SPI0_SCK) -CS -> 8(SPI0_CS0) -DC -> 25 -RST -> 17 -BUSY -> 24 - -3. Basic use: -Since this project is a comprehensive project, you may need to read the following for use: -You can see the 19 functions that have been annotated in lines 19 through 43 of main.c. -Please note which ink screen you purchased. -Chestnut 1: -聽聽聽聽 If you purchased 5.83inch e-paper, then you should remove the comment for the corresponding 39 lines of code, ie: -聽聽聽聽聽聽聽聽 // EPD_5in83_test(); -聽聽聽聽 changed to: -聽聽聽聽聽聽聽聽 EPD_5in83_test(); -Chestnut 2: -聽聽聽聽 If you buy a 2.9inch e-paper (B), since the 2.9-inch Type B and Type C are common driver codes, -聽聽聽聽 Then you should remove the comment for the corresponding 28 lines of code, ie: -聽聽聽聽聽聽聽聽 // EPD_2in9bc_test(); -聽聽聽聽 changed to: -聽聽聽聽聽聽聽聽 EPD_2in9bc_test(); -Note: For EPD_1in54_V2_test() and EPD_2in13_V2_test(), please note that the V2 logo is attached to the back of your screen. - -Then you need to execute: -make -compile the program, will generate the executable file: epd -Run: -sudo ./epd -If you modify the program, you need to execute: -make clear -then: -make - -4. Directory structure (selection): -If you use our products frequently, we will be very familiar with our program directory structure. We have a copy of the specific function. -The API manual for the function, you can download it on our WIKI or request it as an after-sales customer service. Here is a brief introduction: -Config\: This directory is a hardware interface layer file. You can see many definitions in DEV_Config.c(.h), including: - type of data; - GPIO; - Read and write GPIO; - Delay: Note: This delay function does not use an oscilloscope to measure specific values. - Module Init and exit processing: - void DEV_Module_Init(void); - void DEV_Module_Exit(void); - Note: 1. Here is the processing of some GPIOs before and after using the ink screen. - 2. For the PCB with Rev2.1, the entire module will enter low power consumption after DEV_Module_Exit(). After testing, the power consumption is basically 0; - -\lib\GUI\: This directory is some basic image processing functions, in GUI_Paint.c(.h): - Common image processing: creating graphics, flipping graphics, mirroring graphics, setting pixels, clearing screens, etc. - Common drawing processing: drawing points, lines, boxes, circles, Chinese characters, English characters, numbers, etc.; - Common time display: Provide a common display time function; - Commonly used display pictures: provide a function to display bitmaps; - -\lib\Fonts\: for some commonly used fonts: - Ascii: - Font8: 5*8 - Font12: 7*12 - Font16: 11*16 - Font20: 14*20 - Font24: 17*24 - Chinese: - font12CN: 16*21 - font24CN: 32*41 - -\lib\E-paper\: This screen is the ink screen driver function; -Examples\: This is the test program for the ink screen. You can see the specific usage method in it. \ No newline at end of file diff --git a/Raspberry Pi/python2/examples/epd_1in54_V2_test.py b/Raspberry Pi/python2/examples/epd_1in54_V2_test.py deleted file mode 100644 index 2e51114..0000000 --- a/Raspberry Pi/python2/examples/epd_1in54_V2_test.py +++ /dev/null @@ -1,87 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd1in54_V2 -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd1in54_V2 Demo") - - epd = epd1in54_V2.EPD() - print("init and Clear") - epd.init() - epd.Clear(0xFF) - time.sleep(1) - - # Drawing on the image - print("1.Drawing on the image...") - image = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - - draw = ImageDraw.Draw(image) - font = ImageFont.truetype('../lib/Font.ttc', 24) - draw.rectangle((0, 10, 200, 34), fill = 0) - draw.text((8, 12), 'hello world', font = font, fill = 255) - draw.text((8, 36), u'寰洩鐢靛瓙', font = font, fill = 0) - draw.line((16, 60, 56, 60), fill = 0) - draw.line((56, 60, 56, 110), fill = 0) - draw.line((16, 110, 56, 110), fill = 0) - draw.line((16, 110, 16, 60), fill = 0) - draw.line((16, 60, 56, 110), fill = 0) - draw.line((56, 60, 16, 110), fill = 0) - draw.arc((90, 60, 150, 120), 0, 360, fill = 0) - draw.rectangle((16, 130, 56, 180), fill = 0) - draw.chord((90, 130, 150, 190), 0, 360, fill = 0) - epd.display(epd.getbuffer(image.rotate(90))) - time.sleep(2) - - # read bmp file - print("2.read bmp file...") - image = Image.open('../pic/1in54.bmp') - epd.display(epd.getbuffer(image)) - time.sleep(2) - - # read bmp file on window - print("3.read bmp file on window...") - epd.Clear(0xFF) - image1 = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') - image1.paste(bmp, (50,50)) - epd.display(epd.getbuffer(image1)) - time.sleep(2) - - # partial update - print("4.show time...") - time_image = Image.new('1', (epd.width, epd.height), 255) - epd.displayPartBaseImage(epd.getbuffer(time_image)) - - time_draw = ImageDraw.Draw(time_image) - num = 0 - while (True): - time_draw.rectangle((10, 10, 120, 50), fill = 255) - time_draw.text((10, 10), time.strftime('%H:%M:%S'), font = font, fill = 0) - newimage = time_image.crop([10, 10, 120, 50]) - time_image.paste(newimage, (10,10)) - epd.displayPart(epd.getbuffer(time_image)) - num = num + 1 - if(num == 10): - break - - print("Clear...") - epd.init() - epd.Clear(0xFF) - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() \ No newline at end of file diff --git a/Raspberry Pi/python2/examples/epd_1in54_test.py b/Raspberry Pi/python2/examples/epd_1in54_test.py deleted file mode 100644 index 92f619f..0000000 --- a/Raspberry Pi/python2/examples/epd_1in54_test.py +++ /dev/null @@ -1,86 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd1in54 -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd1in54 Demo") - - epd = epd1in54.EPD() - print("init and Clear") - epd.init(epd.lut_full_update) - epd.Clear(0xFF) - - # Drawing on the image - print("1.Drawing on the image...") - image = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - - draw = ImageDraw.Draw(image) - font = ImageFont.truetype('../lib/Font.ttc', 24) - draw.rectangle((0, 10, 200, 34), fill = 0) - draw.text((8, 12), 'hello world', font = font, fill = 255) - draw.text((8, 36), u'寰洩鐢靛瓙', font = font, fill = 0) - draw.line((16, 60, 56, 60), fill = 0) - draw.line((56, 60, 56, 110), fill = 0) - draw.line((16, 110, 56, 110), fill = 0) - draw.line((16, 110, 16, 60), fill = 0) - draw.line((16, 60, 56, 110), fill = 0) - draw.line((56, 60, 16, 110), fill = 0) - draw.arc((90, 60, 150, 120), 0, 360, fill = 0) - draw.rectangle((16, 130, 56, 180), fill = 0) - draw.chord((90, 130, 150, 190), 0, 360, fill = 0) - epd.display(epd.getbuffer(image.rotate(90))) - time.sleep(2) - - # read bmp file - print("2.read bmp file...") - image = Image.open('../pic/1in54.bmp') - epd.display(epd.getbuffer(image)) - time.sleep(2) - - # read bmp file on window - print("3.read bmp file on window...") - epd.Clear(0xFF) - image1 = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') - image1.paste(bmp, (50,50)) - epd.display(epd.getbuffer(image1)) - time.sleep(2) - - # # partial update - print("4.show time...") - epd.init(epd.lut_partial_update) - epd.Clear(0xFF) - - time_image = Image.new('1', (epd.width, epd.height), 255) - time_draw = ImageDraw.Draw(time_image) - num = 0 - while (True): - time_draw.rectangle((10, 10, 120, 50), fill = 255) - time_draw.text((10, 10), time.strftime('%H:%M:%S'), font = font, fill = 0) - newimage = time_image.crop([10, 10, 120, 50]) - time_image.paste(newimage, (10,10)) - epd.display(epd.getbuffer(time_image)) - num = num + 1 - if(num == 10): - break - - print("Clear...") - epd.Clear(0xFF) - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Raspberry Pi/python2/examples/epd_1in54b_test.py b/Raspberry Pi/python2/examples/epd_1in54b_test.py deleted file mode 100644 index d48b8e2..0000000 --- a/Raspberry Pi/python2/examples/epd_1in54b_test.py +++ /dev/null @@ -1,75 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd1in54b -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd1in54b Demo") - - epd = epd1in54b.EPD() - print("init and Clear") - epd.init() - epd.Clear() - time.sleep(1) - - # Drawing on the image - print("1.Drawing on the image...") - blackimage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - redimage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - - font = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - drawblack = ImageDraw.Draw(blackimage) - drawred = ImageDraw.Draw(redimage) - drawblack.rectangle((0, 10, 200, 34), fill = 0) - drawblack.text((8, 12), 'hello world', font = font, fill = 255) - drawblack.text((8, 36), u'寰洩鐢靛瓙', font = font18, fill = 0) - drawblack.line((16, 60, 56, 60), fill = 0) - drawblack.line((56, 60, 56, 110), fill = 0) - drawblack.line((16, 110, 56, 110), fill = 0) - drawred.line((16, 110, 16, 60), fill = 0) - drawred.line((16, 60, 56, 110), fill = 0) - drawred.line((56, 60, 16, 110), fill = 0) - drawred.arc((90, 60, 150, 120), 0, 360, fill = 0) - drawred.rectangle((16, 130, 56, 180), fill = 0) - drawred.chord((90, 130, 150, 190), 0, 360, fill = 0) - epd.display(epd.getbuffer(blackimage),epd.getbuffer(redimage)) - time.sleep(1) - - # read bmp file - print("2.read bmp file...") - blackimage = Image.open('../pic/1in54b-b.bmp') - redimage = Image.open('../pic/1in54b-r.bmp') - epd.display(epd.getbuffer(blackimage),epd.getbuffer(redimage)) - time.sleep(1) - - # read bmp file on window - print("3.read bmp file on window...") - blackimage1 = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - redimage2 = Image.new('1', (epd.width, epd.height), 255) - - newimage = Image.open('../pic/100x100.bmp') - blackimage1.paste(newimage, (50,50)) - epd.display(epd.getbuffer(blackimage1), epd.getbuffer(redimage2)) - - print("Clear...") - epd.init() - epd.Clear() - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Raspberry Pi/python2/examples/epd_1in54c_test.py b/Raspberry Pi/python2/examples/epd_1in54c_test.py deleted file mode 100644 index 7374e6d..0000000 --- a/Raspberry Pi/python2/examples/epd_1in54c_test.py +++ /dev/null @@ -1,72 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd1in54c -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd1in54c Demo") - - epd = epd1in54c.EPD() - print("init and Clear") - epd.init() - epd.Clear() - time.sleep(1) - - # Drawing on the image - print("1.Drawing on the image...") - blackimage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - yellowimage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - - font = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - drawblack = ImageDraw.Draw(blackimage) - drawyellow = ImageDraw.Draw(yellowimage) - drawblack.rectangle((0, 10, 200, 34), fill = 0) - drawblack.text((8, 12), 'hello world', font = font, fill = 255) - drawblack.text((8, 36), u'寰洩鐢靛瓙', font = font, fill = 0) - drawblack.line((10, 100, 70, 100), fill = 0) - drawblack.line((40, 70, 40, 130), fill = 0) - - drawyellow.rectangle((10, 70, 70, 130), outline = 0) - drawyellow.arc((80, 70, 140, 130), 0, 360, fill = 0) - drawyellow.chord((90, 80, 130, 120), 0, 360, fill = 0) - epd.display(epd.getbuffer(blackimage),epd.getbuffer(yellowimage)) - time.sleep(1) - - # read bmp file - print("2.read bmp file...") - blackimage = Image.open('../pic/1in54c-b.bmp') - yellowimage = Image.open('../pic/1in54c-y.bmp') - epd.display(epd.getbuffer(blackimage),epd.getbuffer(yellowimage)) - time.sleep(1) - - # read bmp file on window - print("3.read bmp file on window...") - blackimage1 = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - yellowimage2 = Image.new('1', (epd.width, epd.height), 255) - - newimage = Image.open('../pic/100x100.bmp') - blackimage1.paste(newimage, (50,50)) - epd.display(epd.getbuffer(blackimage1), epd.getbuffer(yellowimage2)) - - print("Clear...") - epd.init() - epd.Clear() - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Raspberry Pi/python2/examples/epd_2in13bc_test.py b/Raspberry Pi/python2/examples/epd_2in13bc_test.py deleted file mode 100644 index ad24c87..0000000 --- a/Raspberry Pi/python2/examples/epd_2in13bc_test.py +++ /dev/null @@ -1,91 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd2in13bc -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd2in13bc Demo") - - epd = epd2in13bc.EPD() - print("init and Clear") - epd.init() - epd.Clear() - time.sleep(1) - - # Drawing on the image - print("Drawing") - font20 = ImageFont.truetype('../lib/Font.ttc', 20) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - HBlackimage = Image.new('1', (epd.height, epd.width), 255) # 298*126 - HRYimage = Image.new('1', (epd.height, epd.width), 255) # 298*126 ryimage: red or yellow image - drawblack = ImageDraw.Draw(HBlackimage) - drawry = ImageDraw.Draw(HRYimage) - drawblack.text((10, 0), 'hello world', font = font20, fill = 0) - drawblack.text((10, 20), '2.13inch e-Paper bc', font = font20, fill = 0) - drawblack.text((120, 0), u'寰洩鐢靛瓙', font = font20, fill = 0) - drawblack.line((20, 50, 70, 100), fill = 0) - drawblack.line((70, 50, 20, 100), fill = 0) - drawblack.rectangle((20, 50, 70, 100), outline = 0) - drawry.line((165, 50, 165, 100), fill = 0) - drawry.line((140, 75, 190, 75), fill = 0) - drawry.arc((140, 50, 190, 100), 0, 360, fill = 0) - drawry.rectangle((80, 50, 130, 100), fill = 0) - drawry.chord((85, 55, 125, 95), 0, 360, fill =1) - epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRYimage)) - time.sleep(2) - - # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") - LBlackimage = Image.new('1', (epd.width, epd.height), 255) # 126*298 - LRYimage = Image.new('1', (epd.width, epd.height), 255) # 126*298 - drawblack = ImageDraw.Draw(LBlackimage) - drawry = ImageDraw.Draw(LRYimage) - - drawblack.text((2, 0), 'hello world', font = font18, fill = 0) - drawblack.text((2, 20), '2.13 epd b', font = font18, fill = 0) - drawblack.text((20, 50), u'寰洩鐢靛瓙', font = font18, fill = 0) - drawblack.line((10, 90, 60, 140), fill = 0) - drawblack.line((60, 90, 10, 140), fill = 0) - drawblack.rectangle((10, 90, 60, 140), outline = 0) - drawry.rectangle((10, 150, 60, 200), fill = 0) - drawry.arc((15, 95, 55, 135), 0, 360, fill = 0) - drawry.chord((15, 155, 55, 195), 0, 360, fill =1) - epd.display(epd.getbuffer(LBlackimage), epd.getbuffer(LRYimage)) - time.sleep(2) - - print("3.read bmp file") - HBlackimage = Image.open('../pic/2in13bc-b.bmp') - HRYimage = Image.open('../pic/2in13bc-ry.bmp') - epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRYimage)) - time.sleep(2) - - print("4.read bmp file on window") - blackimage1 = Image.new('1', (epd.height, epd.width), 255) # 298*126 - redimage1 = Image.new('1', (epd.height, epd.width), 255) # 298*126 - newimage = Image.open('../pic/100x100.bmp') - blackimage1.paste(newimage, (10,10)) - epd.display(epd.getbuffer(blackimage1), epd.getbuffer(redimage1)) - - print("Clear...") - epd.init() - epd.Clear() - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Raspberry Pi/python2/examples/epd_2in7_test.py b/Raspberry Pi/python2/examples/epd_2in7_test.py deleted file mode 100644 index 24a7c43..0000000 --- a/Raspberry Pi/python2/examples/epd_2in7_test.py +++ /dev/null @@ -1,81 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd2in7 -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd2in7 Demo") - - epd = epd2in7.EPD() - print("init and Clear") - epd.init() - epd.Clear(0xFF) - - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - Himage = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - draw = ImageDraw.Draw(Himage) - draw.text((10, 0), 'hello world', font = font24, fill = 0) - draw.text((150, 0), u'寰洩鐢靛瓙', font = font24, fill = 0) - draw.line((20, 50, 70, 100), fill = 0) - draw.line((70, 50, 20, 100), fill = 0) - draw.rectangle((20, 50, 70, 100), outline = 0) - draw.line((165, 50, 165, 100), fill = 0) - draw.line((140, 75, 190, 75), fill = 0) - draw.arc((140, 50, 190, 100), 0, 360, fill = 0) - draw.rectangle((80, 50, 130, 100), fill = 0) - draw.chord((200, 50, 250, 100), 0, 360, fill = 0) - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") - Limage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - draw = ImageDraw.Draw(Limage) - draw.text((2, 0), 'hello world', font = font18, fill = 0) - draw.text((20, 50), u'寰洩鐢靛瓙', font = font18, fill = 0) - draw.line((10, 90, 60, 140), fill = 0) - draw.line((60, 90, 10, 140), fill = 0) - draw.rectangle((10, 90, 60, 140), outline = 0) - draw.line((95, 90, 95, 140), fill = 0) - draw.line((70, 115, 120, 115), fill = 0) - draw.arc((70, 90, 120, 140), 0, 360, fill = 0) - draw.rectangle((10, 150, 60, 200), fill = 0) - draw.chord((70, 150, 120, 200), 0, 360, fill = 0) - epd.display(epd.getbuffer(Limage)) - time.sleep(2) - - print("3.read bmp file") - Himage = Image.open('../pic/2in7.bmp') - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - print("4.read bmp file on window") - Himage2 = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') - Himage2.paste(bmp, (50,10)) - epd.display(epd.getbuffer(Himage2)) - time.sleep(2) - - print("Clear...") - epd.Clear(0xFF) - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Raspberry Pi/python2/examples/epd_2in7b_test.py b/Raspberry Pi/python2/examples/epd_2in7b_test.py deleted file mode 100644 index ece7390..0000000 --- a/Raspberry Pi/python2/examples/epd_2in7b_test.py +++ /dev/null @@ -1,98 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd2in7b -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd2in7b Demo") - - epd = epd2in7b.EPD() - print("init and Clear") - epd.init() - epd.Clear() - time.sleep(1) - - # Drawing on the image - print("Drawing") - blackimage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - redimage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - HBlackimage = Image.new('1', (epd.height, epd.width), 255) # 298*126 - HRedimage = Image.new('1', (epd.height, epd.width), 255) # 298*126 - - drawblack = ImageDraw.Draw(HBlackimage) - drawred = ImageDraw.Draw(HRedimage) - drawblack.text((10, 0), 'hello world', font = font24, fill = 0) - drawblack.text((10, 20), '2.9inch e-Paper', font = font24, fill = 0) - drawblack.text((150, 0), u'寰洩鐢靛瓙', font = font24, fill = 0) - drawblack.line((20, 50, 70, 100), fill = 0) - drawblack.line((70, 50, 20, 100), fill = 0) - drawblack.rectangle((20, 50, 70, 100), outline = 0) - drawred.line((165, 50, 165, 100), fill = 0) - drawred.line((140, 75, 190, 75), fill = 0) - drawred.arc((140, 50, 190, 100), 0, 360, fill = 0) - drawred.rectangle((80, 50, 130, 100), fill = 0) - drawred.chord((200, 50, 250, 100), 0, 360, fill = 0) - epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRedimage)) - time.sleep(2) - - # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") - LBlackimage = Image.new('1', (epd.width, epd.height), 255) # 126*298 - LRedimage = Image.new('1', (epd.width, epd.height), 255) # 126*298 - drawblack = ImageDraw.Draw(LBlackimage) - drawred = ImageDraw.Draw(LRedimage) - - drawblack.text((2, 0), 'hello world', font = font18, fill = 0) - drawblack.text((2, 20), '2.9inch epd', font = font18, fill = 0) - drawblack.text((20, 50), u'寰洩鐢靛瓙', font = font18, fill = 0) - drawblack.line((10, 90, 60, 140), fill = 0) - drawblack.line((60, 90, 10, 140), fill = 0) - drawblack.rectangle((10, 90, 60, 140), outline = 0) - drawred.line((95, 90, 95, 140), fill = 0) - drawred.line((70, 115, 120, 115), fill = 0) - drawred.arc((70, 90, 120, 140), 0, 360, fill = 0) - drawred.rectangle((10, 150, 60, 200), fill = 0) - drawred.chord((70, 150, 120, 200), 0, 360, fill = 0) - epd.display(epd.getbuffer(LBlackimage), epd.getbuffer(LRedimage)) - time.sleep(2) - - print("3.read bmp file") - HBlackimage = Image.open('../pic/2in7b-b.bmp') - HRedimage = Image.open('../pic/2in7b-r.bmp') - epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRedimage)) - time.sleep(2) - - print("4.read bmp file on window") - blackimage1 = Image.new('1', (epd.height, epd.width), 255) # 298*126 - redimage1 = Image.new('1', (epd.height, epd.width), 255) # 298*126 - newimage = Image.open('../pic/100x100.bmp') - blackimage1.paste(newimage, (50,10)) - epd.display(epd.getbuffer(blackimage1), epd.getbuffer(redimage1)) - - print("Clear...") - epd.init() - epd.Clear() - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Raspberry Pi/python2/examples/epd_2in9_test.py b/Raspberry Pi/python2/examples/epd_2in9_test.py deleted file mode 100644 index 59c7ca1..0000000 --- a/Raspberry Pi/python2/examples/epd_2in9_test.py +++ /dev/null @@ -1,102 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd2in9 -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd2in9 Demo") - - epd = epd2in9.EPD() - print("init and Clear") - epd.init(epd.lut_full_update) - epd.Clear(0xFF) - - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - Himage = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - draw = ImageDraw.Draw(Himage) - draw.text((10, 0), 'hello world', font = font24, fill = 0) - draw.text((10, 20), '2.9inch e-Paper', font = font24, fill = 0) - draw.text((150, 0), u'寰洩鐢靛瓙', font = font24, fill = 0) - draw.line((20, 50, 70, 100), fill = 0) - draw.line((70, 50, 20, 100), fill = 0) - draw.rectangle((20, 50, 70, 100), outline = 0) - draw.line((165, 50, 165, 100), fill = 0) - draw.line((140, 75, 190, 75), fill = 0) - draw.arc((140, 50, 190, 100), 0, 360, fill = 0) - draw.rectangle((80, 50, 130, 100), fill = 0) - draw.chord((200, 50, 250, 100), 0, 360, fill = 0) - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") - Limage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - draw = ImageDraw.Draw(Limage) - draw.text((2, 0), 'hello world', font = font18, fill = 0) - draw.text((2, 20), '2.9inch epd', font = font18, fill = 0) - draw.text((20, 50), u'寰洩鐢靛瓙', font = font18, fill = 0) - draw.line((10, 90, 60, 140), fill = 0) - draw.line((60, 90, 10, 140), fill = 0) - draw.rectangle((10, 90, 60, 140), outline = 0) - draw.line((95, 90, 95, 140), fill = 0) - draw.line((70, 115, 120, 115), fill = 0) - draw.arc((70, 90, 120, 140), 0, 360, fill = 0) - draw.rectangle((10, 150, 60, 200), fill = 0) - draw.chord((70, 150, 120, 200), 0, 360, fill = 0) - epd.display(epd.getbuffer(Limage)) - time.sleep(2) - - print("3.read bmp file") - Himage = Image.open('../pic/2in9.bmp') - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - print("4.read bmp file on window") - Himage2 = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') - Himage2.paste(bmp, (50,10)) - epd.display(epd.getbuffer(Himage2)) - time.sleep(2) - - # partial update - print("5.show time") - epd.init(epd.lut_partial_update) - epd.Clear(0xFF) - time_image = Image.new('1', (epd.height, epd.width), 255) - time_draw = ImageDraw.Draw(time_image) - num = 0 - while (True): - time_draw.rectangle((10, 10, 120, 50), fill = 255) - time_draw.text((10, 10), time.strftime('%H:%M:%S'), font = font24, fill = 0) - newimage = time_image.crop([10, 10, 120, 50]) - time_image.paste(newimage, (10,10)) - epd.display(epd.getbuffer(time_image)) - - num = num + 1 - if(num == 10): - break - - print("Clear...") - epd.init(epd.lut_full_update) - epd.Clear(0xFF) - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Raspberry Pi/python2/examples/epd_2in9bc_test.py b/Raspberry Pi/python2/examples/epd_2in9bc_test.py deleted file mode 100644 index b16809d..0000000 --- a/Raspberry Pi/python2/examples/epd_2in9bc_test.py +++ /dev/null @@ -1,93 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd2in9bc -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd2in9bc Demo") - - epd = epd2in9bc.EPD() - print("init and Clear") - epd.init() - epd.Clear() - time.sleep(1) - - # Drawing on the image - print("Drawing") - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - HBlackimage = Image.new('1', (epd.height, epd.width), 255) # 298*126 - HRYimage = Image.new('1', (epd.height, epd.width), 255) # 298*126 ryimage: red or yellow image - drawblack = ImageDraw.Draw(HBlackimage) - drawry = ImageDraw.Draw(HRYimage) - drawblack.text((10, 0), 'hello world', font = font24, fill = 0) - drawblack.text((10, 20), '2.9inch e-Paper bc', font = font24, fill = 0) - drawblack.text((150, 0), u'寰洩鐢靛瓙', font = font24, fill = 0) - drawblack.line((20, 50, 70, 100), fill = 0) - drawblack.line((70, 50, 20, 100), fill = 0) - drawblack.rectangle((20, 50, 70, 100), outline = 0) - drawry.line((165, 50, 165, 100), fill = 0) - drawry.line((140, 75, 190, 75), fill = 0) - drawry.arc((140, 50, 190, 100), 0, 360, fill = 0) - drawry.rectangle((80, 50, 130, 100), fill = 0) - drawry.chord((200, 50, 250, 100), 0, 360, fill = 0) - epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRYimage)) - time.sleep(2) - - # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") - LBlackimage = Image.new('1', (epd.width, epd.height), 255) # 126*298 - LRYimage = Image.new('1', (epd.width, epd.height), 255) # 126*298 - drawblack = ImageDraw.Draw(LBlackimage) - drawry = ImageDraw.Draw(LRYimage) - - drawblack.text((2, 0), 'hello world', font = font18, fill = 0) - drawblack.text((2, 20), '2.9inch epd bc', font = font18, fill = 0) - drawblack.text((20, 50), u'寰洩鐢靛瓙', font = font18, fill = 0) - drawblack.line((10, 90, 60, 140), fill = 0) - drawblack.line((60, 90, 10, 140), fill = 0) - drawblack.rectangle((10, 90, 60, 140), outline = 0) - drawry.line((95, 90, 95, 140), fill = 0) - drawry.line((70, 115, 120, 115), fill = 0) - drawry.arc((70, 90, 120, 140), 0, 360, fill = 0) - drawry.rectangle((10, 150, 60, 200), fill = 0) - drawry.chord((70, 150, 120, 200), 0, 360, fill = 0) - epd.display(epd.getbuffer(LBlackimage), epd.getbuffer(LRYimage)) - time.sleep(2) - - print("3.read bmp file") - HBlackimage = Image.open('../pic/2in9bc-b.bmp') - HRYimage = Image.open('../pic/2in9bc-ry.bmp') - epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRYimage)) - time.sleep(2) - - print("4.read bmp file on window") - blackimage1 = Image.new('1', (epd.height, epd.width), 255) # 298*126 - redimage1 = Image.new('1', (epd.height, epd.width), 255) # 298*126 - newimage = Image.open('../pic/100x100.bmp') - blackimage1.paste(newimage, (50,10)) - epd.display(epd.getbuffer(blackimage1), epd.getbuffer(redimage1)) - - print("Clear...") - epd.init() - epd.Clear() - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Raspberry Pi/python2/examples/epd_5in83_test.py b/Raspberry Pi/python2/examples/epd_5in83_test.py deleted file mode 100644 index cb7858c..0000000 --- a/Raspberry Pi/python2/examples/epd_5in83_test.py +++ /dev/null @@ -1,84 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd5in83 -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd5in83 Demo") - - epd = epd5in83.EPD() - print("init and Clear") - epd.init() - epd.Clear() - - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - Himage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - draw = ImageDraw.Draw(Himage) - draw.text((10, 0), 'hello world', font = font24, fill = 0) - draw.text((10, 20), '5.83inch e-Paper', font = font24, fill = 0) - draw.text((150, 0), u'寰洩鐢靛瓙', font = font24, fill = 0) - draw.line((20, 50, 70, 100), fill = 0) - draw.line((70, 50, 20, 100), fill = 0) - draw.rectangle((20, 50, 70, 100), outline = 0) - draw.line((165, 50, 165, 100), fill = 0) - draw.line((140, 75, 190, 75), fill = 0) - draw.arc((140, 50, 190, 100), 0, 360, fill = 0) - draw.rectangle((80, 50, 130, 100), fill = 0) - draw.chord((200, 50, 250, 100), 0, 360, fill = 0) - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") - Limage = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - draw = ImageDraw.Draw(Limage) - draw.text((2, 0), 'hello world', font = font18, fill = 0) - draw.text((2, 20), '5.83inch epd', font = font18, fill = 0) - draw.text((20, 50), u'寰洩鐢靛瓙', font = font18, fill = 0) - draw.line((10, 90, 60, 140), fill = 0) - draw.line((60, 90, 10, 140), fill = 0) - draw.rectangle((10, 90, 60, 140), outline = 0) - draw.line((95, 90, 95, 140), fill = 0) - draw.line((70, 115, 120, 115), fill = 0) - draw.arc((70, 90, 120, 140), 0, 360, fill = 0) - draw.rectangle((10, 150, 60, 200), fill = 0) - draw.chord((70, 150, 120, 200), 0, 360, fill = 0) - epd.display(epd.getbuffer(Limage)) - time.sleep(2) - - print("3.read bmp file") - Himage = Image.open('../pic/5in83.bmp') - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - print("4.read bmp file on window") - Himage2 = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') - Himage2.paste(bmp, (50,10)) - epd.display(epd.getbuffer(Himage2)) - time.sleep(2) - - print("Clear...") - epd.init() - epd.Clear() - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Raspberry Pi/python2/examples/epd_5in83bc_test.py b/Raspberry Pi/python2/examples/epd_5in83bc_test.py deleted file mode 100644 index b5e3b39..0000000 --- a/Raspberry Pi/python2/examples/epd_5in83bc_test.py +++ /dev/null @@ -1,93 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd5in83bc -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd5in83bc Demo") - - epd = epd5in83bc.EPD() - print("init and Clear") - epd.init() - epd.Clear() - time.sleep(1) - - # Drawing on the image - print("Drawing") - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - HBlackimage = Image.new('1', (epd.width, epd.height), 255) # 298*126 - HRYimage = Image.new('1', (epd.width, epd.height), 255) # 298*126 ryimage: red or yellow image - drawblack = ImageDraw.Draw(HBlackimage) - drawry = ImageDraw.Draw(HRYimage) - drawblack.text((10, 0), 'hello world', font = font24, fill = 0) - drawblack.text((10, 20), '5.83inch e-Paper bc', font = font24, fill = 0) - drawblack.text((150, 0), u'寰洩鐢靛瓙', font = font24, fill = 0) - drawblack.line((20, 50, 70, 100), fill = 0) - drawblack.line((70, 50, 20, 100), fill = 0) - drawblack.rectangle((20, 50, 70, 100), outline = 0) - drawry.line((165, 50, 165, 100), fill = 0) - drawry.line((140, 75, 190, 75), fill = 0) - drawry.arc((140, 50, 190, 100), 0, 360, fill = 0) - drawry.rectangle((80, 50, 130, 100), fill = 0) - drawry.chord((200, 50, 250, 100), 0, 360, fill = 0) - epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRYimage)) - time.sleep(2) - - # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") - LBlackimage = Image.new('1', (epd.height, epd.width), 255) # 126*298 - LRYimage = Image.new('1', (epd.height, epd.width), 255) # 126*298 - drawblack = ImageDraw.Draw(LBlackimage) - drawry = ImageDraw.Draw(LRYimage) - - drawblack.text((2, 0), 'hello world', font = font18, fill = 0) - drawblack.text((2, 20), '5.83inch epd bc', font = font18, fill = 0) - drawblack.text((20, 50), u'寰洩鐢靛瓙', font = font18, fill = 0) - drawblack.line((10, 90, 60, 140), fill = 0) - drawblack.line((60, 90, 10, 140), fill = 0) - drawblack.rectangle((10, 90, 60, 140), outline = 0) - drawry.line((95, 90, 95, 140), fill = 0) - drawry.line((70, 115, 120, 115), fill = 0) - drawry.arc((70, 90, 120, 140), 0, 360, fill = 0) - drawry.rectangle((10, 150, 60, 200), fill = 0) - drawry.chord((70, 150, 120, 200), 0, 360, fill = 0) - epd.display(epd.getbuffer(LBlackimage), epd.getbuffer(LRYimage)) - time.sleep(2) - - print("3.read bmp file") - HBlackimage = Image.open('../pic/5in83bc-b.bmp') - HRYimage = Image.open('../pic/5in83bc-ry.bmp') - epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRYimage)) - time.sleep(2) - - print("4.read bmp file on window") - blackimage1 = Image.new('1', (epd.width, epd.height), 255) # 298*126 - redimage1 = Image.new('1', (epd.width, epd.height), 255) # 298*126 - newimage = Image.open('../pic/100x100.bmp') - blackimage1.paste(newimage, (50,10)) - epd.display(epd.getbuffer(blackimage1), epd.getbuffer(redimage1)) - - print("Clear...") - epd.init() - epd.Clear() - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Raspberry Pi/python2/examples/epd_7in5bc_test.py b/Raspberry Pi/python2/examples/epd_7in5bc_test.py deleted file mode 100644 index 82153b4..0000000 --- a/Raspberry Pi/python2/examples/epd_7in5bc_test.py +++ /dev/null @@ -1,95 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd7in5bc -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd7in5bc Demo") - - epd = epd7in5bc.EPD() - print("init and Clear") - epd.init() - epd.Clear() - time.sleep(1) - - # Drawing on the image - print("Drawing") - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - HBlackimage = Image.new('1', (epd.width, epd.height), 255) # 298*126 - HRYimage = Image.new('1', (epd.width, epd.height), 255) # 298*126 ryimage: red or yellow image - drawblack = ImageDraw.Draw(HBlackimage) - drawry = ImageDraw.Draw(HRYimage) - drawblack.text((10, 0), 'hello world', font = font24, fill = 0) - drawblack.text((10, 20), '7.5inch e-Paper bc', font = font24, fill = 0) - drawblack.text((150, 0), u'寰洩鐢靛瓙', font = font24, fill = 0) - drawblack.line((20, 50, 70, 100), fill = 0) - drawblack.line((70, 50, 20, 100), fill = 0) - drawblack.rectangle((20, 50, 70, 100), outline = 0) - drawry.line((165, 50, 165, 100), fill = 0) - drawry.line((140, 75, 190, 75), fill = 0) - drawry.arc((140, 50, 190, 100), 0, 360, fill = 0) - drawry.rectangle((80, 50, 130, 100), fill = 0) - drawry.chord((200, 50, 250, 100), 0, 360, fill = 0) - epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRYimage)) - time.sleep(2) - - # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") - LBlackimage = Image.new('1', (epd.height, epd.width), 255) # 126*298 - LRYimage = Image.new('1', (epd.height, epd.width), 255) # 126*298 - drawblack = ImageDraw.Draw(LBlackimage) - drawry = ImageDraw.Draw(LRYimage) - - drawblack.text((2, 0), 'hello world', font = font18, fill = 0) - drawblack.text((2, 20), '7.5inch epd bc', font = font18, fill = 0) - drawblack.text((20, 50), u'寰洩鐢靛瓙', font = font18, fill = 0) - drawblack.line((10, 90, 60, 140), fill = 0) - drawblack.line((60, 90, 10, 140), fill = 0) - drawblack.rectangle((10, 90, 60, 140), outline = 0) - drawry.line((95, 90, 95, 140), fill = 0) - drawry.line((70, 115, 120, 115), fill = 0) - drawry.arc((70, 90, 120, 140), 0, 360, fill = 0) - drawry.rectangle((10, 150, 60, 200), fill = 0) - drawry.chord((70, 150, 120, 200), 0, 360, fill = 0) - epd.display(epd.getbuffer(LBlackimage), epd.getbuffer(LRYimage)) - time.sleep(2) - - print("3.read bmp file") - HBlackimage = Image.open('../pic/7in5b-b.bmp') - HRYimage = Image.open('../pic/7in5b-r.bmp') - # HBlackimage = Image.open('../pic/7in5c-b.bmp') - # HRYimage = Image.open('../pic/7in5c-r.bmp') - epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRYimage)) - time.sleep(2) - - print("4.read bmp file on window") - blackimage1 = Image.new('1', (epd.width, epd.height), 255) # 298*126 - redimage1 = Image.new('1', (epd.width, epd.height), 255) # 298*126 - newimage = Image.open('../pic/100x100.bmp') - blackimage1.paste(newimage, (50,10)) - epd.display(epd.getbuffer(blackimage1), epd.getbuffer(redimage1)) - - print("Clear...") - epd.init() - epd.Clear() - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Raspberry Pi/python2/lib/Font.ttc b/Raspberry Pi/python2/lib/Font.ttc deleted file mode 100644 index 4cbb7c5..0000000 Binary files a/Raspberry Pi/python2/lib/Font.ttc and /dev/null differ diff --git a/Raspberry Pi/python2/lib/epd1in54.py b/Raspberry Pi/python2/lib/epd1in54.py deleted file mode 100644 index ffd2815..0000000 --- a/Raspberry Pi/python2/lib/epd1in54.py +++ /dev/null @@ -1,254 +0,0 @@ -# /***************************************************************************** -# * | File : epd1in54.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V3.1 -# * | Date : 2019-06-18 -# # | Info : python2 demo -# ----------------------------------------------------------------------------- -# V3.1(2019-06-18): -# 2.remove commands define: -# #define PANEL_SETTING 0x00 -# #define POWER_SETTING 0x01 -# #define POWER_OFF 0x02 -# #define POWER_OFF_SEQUENCE_SETTING 0x03 -# #define POWER_ON 0x04 -# #define POWER_ON_MEASURE 0x05 -# #define BOOSTER_SOFT_START 0x06 -# #define DEEP_SLEEP 0x07 -# #define DATA_START_TRANSMISSION_1 0x10 -# #define DATA_STOP 0x11 -# #define DISPLAY_REFRESH 0x12 -# #define DATA_START_TRANSMISSION_2 0x13 -# #define PLL_CONTROL 0x30 -# #define TEMPERATURE_SENSOR_COMMAND 0x40 -# #define TEMPERATURE_SENSOR_CALIBRATION 0x41 -# #define TEMPERATURE_SENSOR_WRITE 0x42 -# #define TEMPERATURE_SENSOR_READ 0x43 -# #define VCOM_AND_DATA_INTERVAL_SETTING 0x50 -# #define LOW_POWER_DETECTION 0x51 -# #define TCON_SETTING 0x60 -# #define TCON_RESOLUTION 0x61 -# #define SOURCE_AND_GATE_START_SETTING 0x62 -# #define GET_STATUS 0x71 -# #define AUTO_MEASURE_VCOM 0x80 -# #define VCOM_VALUE 0x81 -# #define VCM_DC_SETTING_REGISTER 0x82 -# #define PROGRAM_MODE 0xA0 -# #define ACTIVE_PROGRAM 0xA1 -# #define READ_OTP_DATA 0xA2 -# ----------------------------------------------------------------------------- -# V3.0(2018-11-01): -# # 1.Remove: -# digital_write(self, pin, value) -# digital_read(self, pin) -# delay_ms(self, delaytime) -# set_lut(self, lut) -# self.lut = self.lut_full_update -# * 2.Change: -# display_frame -> TurnOnDisplay -# set_memory_area -> SetWindow -# set_memory_pointer -> SetCursor -# * 3.How to use -# epd = epd1in54.EPD() -# epd.init(epd.lut_full_update) -# image = Image.new('1', (epd1in54.EPD_WIDTH, epd1in54.EPD_HEIGHT), 255) -# ... -# drawing ...... -# ... -# epd.display(getbuffer(image)) -# ******************************************************************************/ -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - -import epdconfig - -# Display resolution -EPD_WIDTH = 200 -EPD_HEIGHT = 200 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - lut_full_update = [ - 0x02, 0x02, 0x01, 0x11, 0x12, 0x12, 0x22, 0x22, - 0x66, 0x69, 0x69, 0x59, 0x58, 0x99, 0x99, 0x88, - 0x00, 0x00, 0x00, 0x00, 0xF8, 0xB4, 0x13, 0x51, - 0x35, 0x51, 0x51, 0x19, 0x01, 0x00 - ] - - lut_partial_update = [ - 0x10, 0x18, 0x18, 0x08, 0x18, 0x18, 0x08, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x13, 0x14, 0x44, 0x12, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - ] - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) # module reset - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 1): # 0: idle, 1: busy - epdconfig.delay_ms(100) - print("e-Paper busy release") - - def TurnOnDisplay(self): - self.send_command(0x22) # DISPLAY_UPDATE_CONTROL_2 - self.send_data(0xC4) - self.send_command(0x20) # MASTER_ACTIVATION - self.send_command(0xFF) # TERMINATE_FRAME_READ_WRITE - - self.ReadBusy() - - def SetWindow(self, x_start, y_start, x_end, y_end): - self.send_command(0x44) # SET_RAM_X_ADDRESS_START_END_POSITION - # x point must be the multiple of 8 or the last 3 bits will be ignored - self.send_data((x_start >> 3) & 0xFF) - self.send_data((x_end >> 3) & 0xFF) - self.send_command(0x45) # SET_RAM_Y_ADDRESS_START_END_POSITION - self.send_data(y_start & 0xFF) - self.send_data((y_start >> 8) & 0xFF) - self.send_data(y_end & 0xFF) - self.send_data((y_end >> 8) & 0xFF) - - def SetCursor(self, x, y): - self.send_command(0x4E) # SET_RAM_X_ADDRESS_COUNTER - # x point must be the multiple of 8 or the last 3 bits will be ignored - self.send_data((x >> 3) & 0xFF) - - self.send_command(0x4F) # SET_RAM_Y_ADDRESS_COUNTER - self.send_data(y & 0xFF) - self.send_data((y >> 8) & 0xFF) - # self.ReadBusy() - - def init(self, lut): - if (epdconfig.module_init() != 0): - return -1 - # EPD hardware init start - self.reset() - - self.send_command(0x01) # DRIVER_OUTPUT_CONTROL - self.send_data((EPD_HEIGHT - 1) & 0xFF) - self.send_data(((EPD_HEIGHT - 1) >> 8) & 0xFF) - self.send_data(0x00) # GD = 0 SM = 0 TB = 0 - - self.send_command(0x0C) # BOOSTER_SOFT_START_CONTROL - self.send_data(0xD7) - self.send_data(0xD6) - self.send_data(0x9D) - - self.send_command(0x2C) # WRITE_VCOM_REGISTER - self.send_data(0xA8) # VCOM 7C - - self.send_command(0x3A) # SET_DUMMY_LINE_PERIOD - self.send_data(0x1A) # 4 dummy lines per gate - - self.send_command(0x3B) # SET_GATE_TIME - self.send_data(0x08) # 2us per line - - self.send_command(0x11) # DATA_ENTRY_MODE_SETTING - self.send_data(0x03) # X increment Y increment - - # set the look-up table register - self.send_command(0x32) - for i in range(0, len(lut)): - self.send_data(lut[i]) - # EPD hardware init end - return 0 - - def getbuffer(self, image): - buf = [0xFF] * ((self.width/8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - if(imwidth == self.width and imheight == self.height): - print("Horizontal") - 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] == 0: - buf[(x + y * self.width) / 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Vertical") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) / 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, image): - if (image == None): - return - - self.SetWindow(0, 0, self.width, self.height) - for j in range(0, self.height): - self.SetCursor(0, j) - self.send_command(0x24) - for i in range(0, self.width / 8): - self.send_data(image[i + j * (self.width / 8)]) - self.TurnOnDisplay() - - def Clear(self, color): - # self.SetWindow(0, 0, self.width - 1, self.height - 1) - # send the color data - self.SetWindow(0, 0, self.width, self.height) - for j in range(0, self.height): - self.SetCursor(0, j) - self.send_command(0x24) - for i in range(0, self.width / 8): - self.send_data(color) - self.TurnOnDisplay() - - def sleep(self): - self.send_command(0x10) # DEEP_SLEEP_MODE - self.send_data(0x01) - - epdconfig.module_exit() - -### END OF FILE ### - diff --git a/Raspberry Pi/python2/lib/epd1in54_V2.py b/Raspberry Pi/python2/lib/epd1in54_V2.py deleted file mode 100644 index a940541..0000000 --- a/Raspberry Pi/python2/lib/epd1in54_V2.py +++ /dev/null @@ -1,206 +0,0 @@ -# /***************************************************************************** -# * | File : epd1in54_V2.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V1 -# * | Date : 2019-06-18 -# # | Info : python2 demo -# ******************************************************************************/ -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - -import epdconfig - -# Display resolution -EPD_WIDTH = 200 -EPD_HEIGHT = 200 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 1): - epdconfig.delay_ms(100) - print("e-Paper busy release") - - def TurnOnDisplay(self): - self.send_command(0x22) # DISPLAY_UPDATE_CONTROL_2 - self.send_data(0xF7) - self.send_command(0x20) # MASTER_ACTIVATION - - self.ReadBusy() - - def TurnOnDisplayPart(self): - self.send_command(0x22) # DISPLAY_UPDATE_CONTROL_2 - self.send_data(0xFF) - self.send_command(0x20) # MASTER_ACTIVATION - - self.ReadBusy() - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - - # EPD hardware init start - self.reset() - - self.ReadBusy() - self.send_command(0x12) # SWRESET - self.ReadBusy() - - self.send_command(0x01) # DRIVER_OUTPUT_CONTROL - self.send_data(0xC7) # (EPD_HEIGHT - 1) & 0xFF - self.send_data(0x00) # ((EPD_HEIGHT - 1) >> 8) & 0xFF - self.send_data(0x01) # GD = 0 SM = 0 TB = 0 - - self.send_command(0x11) # data entry mode - self.send_data(0x01) - - self.send_command(0x44) # set Ram-X address start/end position - self.send_data(0x00) - self.send_data(0x18) # 0x0C-->(18+1)*8=200 - - self.send_command(0x45) # set Ram-Y address start/end position - self.send_data(0xC7) # 0xC7-->(199+1)=200 - self.send_data(0x00) - self.send_data(0x00) - self.send_data(0x00) - - self.send_command(0x3C) # BorderWavefrom - self.send_data(0x01) - - self.send_command(0x18) - self.send_data(0x80) - - self.send_command(0x22) # #Load Temperature and waveform setting. - self.send_data(0XB1) - self.send_command(0x20) - - self.send_command(0x4E) # set RAM x address count to 0; - self.send_data(0x00) - self.send_command(0x4F) # set RAM y address count to 0X199; - self.send_data(0xC7) - self.send_data(0x00) - - self.ReadBusy() - - def Clear(self, color): - self.send_command(0x24) - for j in range(0, self.height): - for i in range(0, self.width / 8): - self.send_data(color) - self.TurnOnDisplay() - - def getbuffer(self, image): - buf = [0xFF] * ((self.width/8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - if(imwidth == self.width and imheight == self.height): - print("Horizontal") - 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] == 0: - buf[(x + y * self.width) / 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Vertical") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) / 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, image): - if (image == None): - return - - self.send_command(0x24) - for j in range(0, self.height): - for i in range(0, self.width / 8): - self.send_data(image[i + j * (self.width / 8)]) - self.TurnOnDisplay() - - def displayPartBaseImage(self, image): - if (image == None): - return - - self.send_command(0x24) - for j in range(0, self.height): - for i in range(0, self.width / 8): - self.send_data(image[i + j * (self.width / 8)]) - - self.send_command(0x26) - for j in range(0, self.height): - for i in range(0, self.width / 8): - self.send_data(image[i + j * (self.width / 8)]) - - self.TurnOnDisplayPart() - - def displayPart(self, image): - if (image == None): - return - - self.send_command(0x24) - for j in range(0, self.height): - for i in range(0, self.width / 8): - self.send_data(image[i + j * (self.width / 8)]) - - self.TurnOnDisplayPart() - - def sleep(self): - self.send_command(0x10) # DEEP_SLEEP_MODE - self.send_data(0x01) - - epdconfig.module_exit() - -### END OF FILE ### - diff --git a/Raspberry Pi/python2/lib/epd1in54b.py b/Raspberry Pi/python2/lib/epd1in54b.py deleted file mode 100644 index a7ac01d..0000000 --- a/Raspberry Pi/python2/lib/epd1in54b.py +++ /dev/null @@ -1,218 +0,0 @@ -# /***************************************************************************** -# * | File : epd1in54b.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-18 -# * | Info : python2 demo -# ****************************************************************************** -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - -import epdconfig - -# Display resolution -EPD_WIDTH = 200 -EPD_HEIGHT = 200 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - lut_vcom0 = [0x0E, 0x14, 0x01, 0x0A, 0x06, 0x04, 0x0A, 0x0A, 0x0F, 0x03, 0x03, 0x0C, 0x06, 0x0A, 0x00] - lut_w = [0x0E, 0x14, 0x01, 0x0A, 0x46, 0x04, 0x8A, 0x4A, 0x0F, 0x83, 0x43, 0x0C, 0x86, 0x0A, 0x04] - lut_b = [0x0E, 0x14, 0x01, 0x8A, 0x06, 0x04, 0x8A, 0x4A, 0x0F, 0x83, 0x43, 0x0C, 0x06, 0x4A, 0x04] - lut_g1 = [0x8E, 0x94, 0x01, 0x8A, 0x06, 0x04, 0x8A, 0x4A, 0x0F, 0x83, 0x43, 0x0C, 0x06, 0x0A, 0x04] - lut_g2 = [0x8E, 0x94, 0x01, 0x8A, 0x06, 0x04, 0x8A, 0x4A, 0x0F, 0x83, 0x43, 0x0C, 0x06, 0x0A, 0x04] - lut_vcom1 = [0x03, 0x1D, 0x01, 0x01, 0x08, 0x23, 0x37, 0x37, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00] - lut_red0 = [0x83, 0x5D, 0x01, 0x81, 0x48, 0x23, 0x77, 0x77, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00] - lut_red1 = [0x03, 0x1D, 0x01, 0x01, 0x08, 0x23, 0x37, 0x37, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00] - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) # module reset - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): - epdconfig.delay_ms(100) - print("e-Paper busy release") - - def set_lut_bw(self): - self.send_command(0x20) # vcom - for count in range(0, 15): - self.send_data(self.lut_vcom0[count]) - self.send_command(0x21) # ww -- - for count in range(0, 15): - self.send_data(self.lut_w[count]) - self.send_command(0x22) # bw r - for count in range(0, 15): - self.send_data(self.lut_b[count]) - self.send_command(0x23) # wb w - for count in range(0, 15): - self.send_data(self.lut_g1[count]) - self.send_command(0x24) # bb b - for count in range(0, 15): - self.send_data(self.lut_g2[count]) - - def set_lut_red(self): - self.send_command(0x25) - for count in range(0, 15): - self.send_data(self.lut_vcom1[count]) - self.send_command(0x26) - for count in range(0, 15): - self.send_data(self.lut_red0[count]) - self.send_command(0x27) - for count in range(0, 15): - self.send_data(self.lut_red1[count]) - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - # EPD hardware init start - self.reset() - - self.send_command(0x01) # POWER_SETTING - self.send_data(0x07) - self.send_data(0x00) - self.send_data(0x08) - self.send_data(0x00) - self.send_command(0x06) # BOOSTER_SOFT_START - self.send_data(0x07) - self.send_data(0x07) - self.send_data(0x07) - self.send_command(0x04) # POWER_ON - - self.ReadBusy() - - self.send_command(0X00) # PANEL_SETTING - self.send_data(0xCF) - self.send_command(0X50) # VCOM_AND_DATA_INTERVAL_SETTING - self.send_data(0x17) - self.send_command(0x30) # PLL_CONTROL - self.send_data(0x39) - self.send_command(0x61) # TCON_RESOLUTION set x and y - self.send_data(0xC8) - self.send_data(0x00) - self.send_data(0xC8) - self.send_command(0x82) # VCM_DC_SETTING_REGISTER - self.send_data(0x0E) - - self.set_lut_bw() - self.set_lut_red() - return 0 - - def getbuffer(self, image): - buf = [0xFF] * (self.width * self.height / 8) - # Set buffer to value of Python Imaging Library image. - # Image must be in mode 1. - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - if imwidth != self.width or imheight != self.height: - raise ValueError('Image must be same dimensions as display \ - ({0}x{1}).' .format(self.width, self.height)) - - pixels = image_monocolor.load() - for y in range(self.height): - for x in range(self.width): - # Set the bits for the column of pixels at the current position. - if pixels[x, y] == 0: - buf[(x + y * self.width) / 8] &= ~(0x80 >> (x % 8)) - return buf - - def display(self, blackimage, redimage): - # send black data - if (blackimage != None): - self.send_command(0x10) # DATA_START_TRANSMISSION_1 - for i in range(0, self.width * self.height / 8): - temp = 0x00 - for bit in range(0, 4): - if (blackimage[i] & (0x80 >> bit) != 0): - temp |= 0xC0 >> (bit * 2) - self.send_data(temp) - temp = 0x00 - for bit in range(4, 8): - if (blackimage[i] & (0x80 >> bit) != 0): - temp |= 0xC0 >> ((bit - 4) * 2) - self.send_data(temp) - - # send red data - if (redimage != None): - self.send_command(0x13) # DATA_START_TRANSMISSION_2 - for i in range(0, self.width * self.height / 8): - self.send_data(redimage[i]) - - self.send_command(0x12) # DISPLAY_REFRESH - self.ReadBusy() - - def Clear(self): - self.send_command(0x10) # DATA_START_TRANSMISSION_1 - for i in range(0, self.width * self.height / 8): - self.send_data(0xFF) - self.send_data(0xFF) - - self.send_command(0x13) # DATA_START_TRANSMISSION_2 - for i in range(0, self.width * self.height / 8): - self.send_data(0xFF) - - self.send_command(0x12) # DISPLAY_REFRESH - self.ReadBusy() - - def sleep(self): - self.send_command(0x50) # VCOM_AND_DATA_INTERVAL_SETTING - self.send_data(0x17) - self.send_command(0x82) # to solve Vcom drop - self.send_data(0x00) - self.send_command(0x01) # power setting - self.send_data(0x02) # gate switch to external - self.send_data(0x00) - self.send_data(0x00) - self.send_data(0x00) - self.ReadBusy() - - self.send_command(0x02) # power off - - epdconfig.module_exit() - -### END OF FILE ### - diff --git a/Raspberry Pi/python2/lib/epd1in54c.py b/Raspberry Pi/python2/lib/epd1in54c.py deleted file mode 100644 index 8231aca..0000000 --- a/Raspberry Pi/python2/lib/epd1in54c.py +++ /dev/null @@ -1,152 +0,0 @@ -# /***************************************************************************** -# * | File : epd1in54c.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-18 -# * | Info : python2 demo -# ****************************************************************************** -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# -import epdconfig - -# Display resolution -EPD_WIDTH = 152 -EPD_HEIGHT = 152 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(1) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(10) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - epdconfig.delay_ms(200) - print("e-Paper busy release") - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - # EPD hardware init start - self.reset() - - self.send_command(0x06) # boost soft start - self.send_data(0x17) - self.send_data(0x17) - self.send_data(0x17) - self.send_command(0x04) # power on - - self.ReadBusy() - - self.send_command(0x00) # panel setting - self.send_data(0x0f) # LUT from OTP,160x296 - self.send_data(0x0d) # VCOM to 0V fast - - self.send_command(0x61) # resolution setting - self.send_data(0x98) - self.send_data(0x00) - self.send_data(0x98) - - self.send_command(0x50) - self.send_data(0x77) - - def getbuffer(self, image): - buf = [0xFF] * ((self.width/8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - if(imwidth == self.width and imheight == self.height): - print("Horizontal") - 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] == 0: - buf[(x + y * self.width) / 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Vertical") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) / 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, blackimage, yellowimage): - self.send_command(0x10) - print("blackimage") - for i in range(0, self.width * self.height / 8): - self.send_data(blackimage[i]) - self.send_command(0x13) - print("yellowimage") - for i in range(0, self.width * self.height / 8): - self.send_data(yellowimage[i]) - - self.send_command(0x12) - self.ReadBusy() - - def Clear(self): - self.send_command(0x10) - for i in range(0, self.width * self.height / 8): - self.send_data(0xFF) - self.send_command(0x13) - for i in range(0, self.width * self.height / 8): - self.send_data(0xFF) - - self.send_command(0x12) - self.ReadBusy() - - # after this, call epd.init() to awaken the module - def sleep(self): - self.send_command(0X02) # power off - self.ReadBusy() - self.send_command(0X07) # deep sleep - self.send_data(0xA5) - - epdconfig.module_exit() -### END OF FILE ### - diff --git a/Raspberry Pi/python2/lib/epd2in13.py b/Raspberry Pi/python2/lib/epd2in13.py deleted file mode 100644 index 39b1914..0000000 --- a/Raspberry Pi/python2/lib/epd2in13.py +++ /dev/null @@ -1,224 +0,0 @@ -# /***************************************************************************** -# * | File : epd2in13.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-19 -# * | Info : python2 demo -# ******************************************************************************/ -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - - -import epdconfig -import numpy as np - -# Display resolution -EPD_WIDTH = 122 -EPD_HEIGHT = 250 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - lut_full_update = [ - 0x22, 0x55, 0xAA, 0x55, 0xAA, 0x55, 0xAA, 0x11, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, - 0x01, 0x00, 0x00, 0x00, 0x00, 0x00 - ] - - lut_partial_update = [ - 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x0F, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - ] - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - while(epdconfig.digital_read(self.busy_pin) == 1): # 0: idle, 1: busy - epdconfig.delay_ms(100) - - def TurnOnDisplay(self): - self.send_command(0x22) # DISPLAY_UPDATE_CONTROL_2 - self.send_data(0xC4) - self.send_command(0x20) # MASTER_ACTIVATION - self.send_command(0xFF) # TERMINATE_FRAME_READ_WRITE - - print("e-Paper busy") - self.ReadBusy() - print("e-Paper busy release") - - def init(self, lut): - if (epdconfig.module_init() != 0): - return -1 - # EPD hardware init start - self.reset() - self.send_command(0x01) # DRIVER_OUTPUT_CONTROL - self.send_data((EPD_HEIGHT - 1) & 0xFF) - self.send_data(((EPD_HEIGHT - 1) >> 8) & 0xFF) - self.send_data(0x00) # GD = 0 SM = 0 TB = 0 - - self.send_command(0x0C) # BOOSTER_SOFT_START_CONTROL - self.send_data(0xD7) - self.send_data(0xD6) - self.send_data(0x9D) - - self.send_command(0x2C) # WRITE_VCOM_REGISTER - self.send_data(0xA8) # VCOM 7C - - self.send_command(0x3A) # SET_DUMMY_LINE_PERIOD - self.send_data(0x1A) # 4 dummy lines per gate - - self.send_command(0x3B) # SET_GATE_TIME - self.send_data(0x08) # 2us per line - - self.send_command(0X3C) # BORDER_WAVEFORM_CONTROL - self.send_data(0x03) - - self.send_command(0X11) # DATA_ENTRY_MODE_SETTING - self.send_data(0x03) # X increment; Y increment - - # WRITE_LUT_REGISTER - self.send_command(0x32) - for count in range(30): - self.send_data(lut[count]) - - return 0 - -## - # @brief: specify the memory area for data R/W - ## - def SetWindows(self, x_start, y_start, x_end, y_end): - self.send_command(0x44) # SET_RAM_X_ADDRESS_START_END_POSITION - self.send_data((x_start >> 3) & 0xFF) - self.send_data((x_end >> 3) & 0xFF) - self.send_command(0x45) # SET_RAM_Y_ADDRESS_START_END_POSITION - self.send_data(y_start & 0xFF) - self.send_data((y_start >> 8) & 0xFF) - self.send_data(y_end & 0xFF) - self.send_data((y_end >> 8) & 0xFF) - -## - # @brief: specify the start point for data R/W - ## - def SetCursor(self, x, y): - self.send_command(0x4E) # SET_RAM_X_ADDRESS_COUNTER - # x point must be the multiple of 8 or the last 3 bits will be ignored - self.send_data((x >> 3) & 0xFF) - self.send_command(0x4F) # SET_RAM_Y_ADDRESS_COUNTER - self.send_data(y & 0xFF) - self.send_data((y >> 8) & 0xFF) - self.ReadBusy() - - def getbuffer(self, image): - if self.width%8 == 0: - linewidth = self.width/8 - else: - linewidth = self.width/8 + 1 - - buf = [0xFF] * (linewidth * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - - if(imwidth == self.width and imheight == self.height): - print("Vertical") - for y in range(imheight): - for x in range(imwidth): - if pixels[x, y] == 0: - # x = imwidth - x - buf[x / 8 + y * linewidth] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Horizontal") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - # newy = imwidth - newy - 1 - buf[newx / 8 + newy*linewidth] &= ~(0x80 >> (y % 8)) - return buf - - - def display(self, image): - if self.width%8 == 0: - linewidth = self.width/8 - else: - linewidth = self.width/8 + 1 - - self.SetWindows(0, 0, self.width, self.height); - for j in range(0, self.height): - self.SetCursor(0, j); - self.send_command(0x24); - for i in range(0, linewidth): - self.send_data(image[i + j * linewidth]) - self.TurnOnDisplay() - - def Clear(self, color): - if self.width%8 == 0: - linewidth = self.width/8 - else: - linewidth = self.width/8 + 1 - - self.SetWindows(0, 0, self.width, self.height); - for j in range(0, self.height): - self.SetCursor(0, j); - self.send_command(0x24); - for i in range(0, linewidth): - self.send_data(color) - self.TurnOnDisplay() - - def sleep(self): - self.send_command(0x10) #enter deep sleep - self.send_data(0x01) - epdconfig.delay_ms(100) - - epdconfig.module_exit() - -### END OF FILE ### - diff --git a/Raspberry Pi/python2/lib/epd2in13_V2.py b/Raspberry Pi/python2/lib/epd2in13_V2.py deleted file mode 100644 index aaeed0b..0000000 --- a/Raspberry Pi/python2/lib/epd2in13_V2.py +++ /dev/null @@ -1,315 +0,0 @@ -# /***************************************************************************** -# * | File : epd2in13_V2.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2018-06-20 -# * | Info : python2 demo -# ******************************************************************************/ -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - - -import epdconfig -import numpy as np - -# Display resolution -EPD_WIDTH = 122 -EPD_HEIGHT = 250 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - FULL_UPDATE = 0 - PART_UPDATE = 1 - lut_full_update= [ - 0x80,0x60,0x40,0x00,0x00,0x00,0x00, #LUT0: BB: VS 0 ~7 - 0x10,0x60,0x20,0x00,0x00,0x00,0x00, #LUT1: BW: VS 0 ~7 - 0x80,0x60,0x40,0x00,0x00,0x00,0x00, #LUT2: WB: VS 0 ~7 - 0x10,0x60,0x20,0x00,0x00,0x00,0x00, #LUT3: WW: VS 0 ~7 - 0x00,0x00,0x00,0x00,0x00,0x00,0x00, #LUT4: VCOM: VS 0 ~7 - - 0x03,0x03,0x00,0x00,0x02, # TP0 A~D RP0 - 0x09,0x09,0x00,0x00,0x02, # TP1 A~D RP1 - 0x03,0x03,0x00,0x00,0x02, # TP2 A~D RP2 - 0x00,0x00,0x00,0x00,0x00, # TP3 A~D RP3 - 0x00,0x00,0x00,0x00,0x00, # TP4 A~D RP4 - 0x00,0x00,0x00,0x00,0x00, # TP5 A~D RP5 - 0x00,0x00,0x00,0x00,0x00, # TP6 A~D RP6 - - 0x15,0x41,0xA8,0x32,0x30,0x0A, - ] - - lut_partial_update = [ #20 bytes - 0x00,0x00,0x00,0x00,0x00,0x00,0x00, #LUT0: BB: VS 0 ~7 - 0x80,0x00,0x00,0x00,0x00,0x00,0x00, #LUT1: BW: VS 0 ~7 - 0x40,0x00,0x00,0x00,0x00,0x00,0x00, #LUT2: WB: VS 0 ~7 - 0x00,0x00,0x00,0x00,0x00,0x00,0x00, #LUT3: WW: VS 0 ~7 - 0x00,0x00,0x00,0x00,0x00,0x00,0x00, #LUT4: VCOM: VS 0 ~7 - - 0x0A,0x00,0x00,0x00,0x00, # TP0 A~D RP0 - 0x00,0x00,0x00,0x00,0x00, # TP1 A~D RP1 - 0x00,0x00,0x00,0x00,0x00, # TP2 A~D RP2 - 0x00,0x00,0x00,0x00,0x00, # TP3 A~D RP3 - 0x00,0x00,0x00,0x00,0x00, # TP4 A~D RP4 - 0x00,0x00,0x00,0x00,0x00, # TP5 A~D RP5 - 0x00,0x00,0x00,0x00,0x00, # TP6 A~D RP6 - - 0x15,0x41,0xA8,0x32,0x30,0x0A, - ] - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - while(epdconfig.digital_read(self.busy_pin) == 1): # 0: idle, 1: busy - epdconfig.delay_ms(100) - - def TurnOnDisplay(self): - self.send_command(0x22) - self.send_data(0xC7) - self.send_command(0x20) - self.ReadBusy() - - def TurnOnDisplayPart(self): - self.send_command(0x22) - self.send_data(0x0c) - self.send_command(0x20) - self.ReadBusy() - - def init(self, update): - if (epdconfig.module_init() != 0): - return -1 - # EPD hardware init start - self.reset() - if(update == self.FULL_UPDATE): - self.ReadBusy() - self.send_command(0x12) # soft reset - self.ReadBusy() - - self.send_command(0x74) #set analog block control - self.send_data(0x54) - self.send_command(0x7E) #set digital block control - self.send_data(0x3B) - - self.send_command(0x01) #Driver output control - self.send_data(0xF9) - self.send_data(0x00) - self.send_data(0x00) - - self.send_command(0x11) #data entry mode - self.send_data(0x01) - - self.send_command(0x44) #set Ram-X address start/end position - self.send_data(0x00) - self.send_data(0x0F) #0x0C-->(15+1)*8=128 - - self.send_command(0x45) #set Ram-Y address start/end position - self.send_data(0xF9) #0xF9-->(249+1)=250 - self.send_data(0x00) - self.send_data(0x00) - self.send_data(0x00) - - self.send_command(0x3C) #BorderWavefrom - self.send_data(0x03) - - self.send_command(0x2C) #VCOM Voltage - self.send_data(0x55) # - - self.send_command(0x03) - self.send_data(self.lut_full_update[70]) - - self.send_command(0x04) # - self.send_data(self.lut_full_update[71]) - self.send_data(self.lut_full_update[72]) - self.send_data(self.lut_full_update[73]) - - self.send_command(0x3A) #Dummy Line - self.send_data(self.lut_full_update[74]) - self.send_command(0x3B) #Gate time - self.send_data(self.lut_full_update[75]) - - self.send_command(0x32) - for count in range(70): - self.send_data(self.lut_full_update[count]) - - self.send_command(0x4E) # set RAM x address count to 0 - self.send_data(0x00) - self.send_command(0x4F) # set RAM y address count to 0X127 - self.send_data(0xF9) - self.send_data(0x00) - self.ReadBusy() - else: - self.send_command(0x2C) #VCOM Voltage - self.send_data(0x26) - - self.ReadBusy() - - self.send_command(0x32) - for count in range(70): - self.send_data(self.lut_partial_update[count]) - - self.send_command(0x37) - self.send_data(0x00) - self.send_data(0x00) - self.send_data(0x00) - self.send_data(0x00) - self.send_data(0x40) - self.send_data(0x00) - self.send_data(0x00) - - self.send_command(0x22) - self.send_data(0xC0) - self.send_command(0x20) - self.ReadBusy() - - self.send_command(0x3C) #BorderWavefrom - self.send_data(0x01) - return 0 - - def getbuffer(self, image): - if self.width%8 == 0: - linewidth = self.width/8 - else: - linewidth = self.width/8 + 1 - - buf = [0xFF] * (linewidth * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - - if(imwidth == self.width and imheight == self.height): - print("Vertical") - for y in range(imheight): - for x in range(imwidth): - if pixels[x, y] == 0: - x = imwidth - x - buf[x / 8 + y * linewidth] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Horizontal") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - newy = imwidth - newy - 1 - buf[newx / 8 + newy*linewidth] &= ~(0x80 >> (y % 8)) - return buf - - - def display(self, image): - if self.width%8 == 0: - linewidth = self.width/8 - else: - linewidth = self.width/8 + 1 - - self.send_command(0x24) - for j in range(0, self.height): - for i in range(0, linewidth): - self.send_data(image[i + j * linewidth]) - self.TurnOnDisplay() - - def displayPartial(self, image): - if self.width%8 == 0: - linewidth = self.width/8 - else: - linewidth = self.width/8 + 1 - - self.send_command(0x24) - for j in range(0, self.height): - for i in range(0, linewidth): - self.send_data(image[i + j * linewidth]) - - - # self.send_command(0x26) - # for j in range(0, self.height): - # for i in range(0, linewidth): - # self.send_data(~image[i + j * linewidth]) - self.TurnOnDisplayPart() - - def displayPartBaseImage(self, image): - if self.width%8 == 0: - linewidth = self.width/8 - else: - linewidth = self.width/8 + 1 - - self.send_command(0x24) - for j in range(0, self.height): - for i in range(0, linewidth): - self.send_data(image[i + j * linewidth]) - - - self.send_command(0x26) - for j in range(0, self.height): - for i in range(0, linewidth): - self.send_data(image[i + j * linewidth]) - self.TurnOnDisplay() - - def Clear(self, color): - if self.width%8 == 0: - linewidth = self.width/8 - else: - linewidth = self.width/8 + 1 - # print(linewidth) - - self.send_command(0x24) - for j in range(0, self.height): - for i in range(0, linewidth): - self.send_data(color) - self.TurnOnDisplay() - - def sleep(self): - self.send_command(0x22) #POWER OFF - self.send_data(0xC3) - self.send_command(0x20) - - self.send_command(0x10) #enter deep sleep - self.send_data(0x01) - epdconfig.delay_ms(100) - - epdconfig.module_exit() - -### END OF FILE ### - diff --git a/Raspberry Pi/python2/lib/epd2in13bc.py b/Raspberry Pi/python2/lib/epd2in13bc.py deleted file mode 100644 index 04f3512..0000000 --- a/Raspberry Pi/python2/lib/epd2in13bc.py +++ /dev/null @@ -1,158 +0,0 @@ -# /***************************************************************************** -# * | File : epd2in13bc.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-20 -# * | Info : python2 demo -# ******************************************************************************/ -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - -import epdconfig - -# Display resolution -EPD_WIDTH = 104 -EPD_HEIGHT = 212 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - epdconfig.delay_ms(100) - print("e-Paper busy release") - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - - self.reset() - - self.send_command(0x06) # BOOSTER_SOFT_START - self.send_data(0x17) - self.send_data(0x17) - self.send_data(0x17) - - self.send_command(0x04) # POWER_ON - self.ReadBusy() - - self.send_command(0x00) # PANEL_SETTING - self.send_data(0x8F) - - self.send_command(0x50) # VCOM_AND_DATA_INTERVAL_SETTING - self.send_data(0xF0) - - self.send_command(0x61) # RESOLUTION_SETTING - self.send_data(self.width & 0xff) - self.send_data(self.height >> 8) - self.send_data(self.height & 0xff) - return 0 - - def getbuffer(self, image): - # print "bufsiz = ",(self.width/8) * self.height - buf = [0xFF] * ((self.width/8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight - if(imwidth == self.width and imheight == self.height): - print("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] == 0: - buf[(x + y * self.width) / 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Horizontal") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) / 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, imageblack, imagered): - self.send_command(0x10) - for i in range(0, self.width * self.height / 8): - self.send_data(imageblack[i]) - self.send_command(0x92) - - self.send_command(0x13) - for i in range(0, self.width * self.height / 8): - self.send_data(imagered[i]) - self.send_command(0x92) - - self.send_command(0x12) # REFRESH - self.ReadBusy() - - def Clear(self): - self.send_command(0x10) - for i in range(0, self.width * self.height / 8): - self.send_data(0xFF) - self.send_command(0x92) - - self.send_command(0x13) - for i in range(0, self.width * self.height / 8): - self.send_data(0xFF) - self.send_command(0x92) - - self.send_command(0x12) # REFRESH - self.ReadBusy() - - def sleep(self): - self.send_command(0x02) # POWER_OFF - self.ReadBusy() - self.send_command(0x07) # DEEP_SLEEP - self.send_data(0xA5) # check code - - epdconfig.module_exit() -### END OF FILE ### - diff --git a/Raspberry Pi/python2/lib/epd2in13d.py b/Raspberry Pi/python2/lib/epd2in13d.py deleted file mode 100644 index 30ebb77..0000000 --- a/Raspberry Pi/python2/lib/epd2in13d.py +++ /dev/null @@ -1,357 +0,0 @@ -# /***************************************************************************** -# * | File : epd2in13d.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-20 -# * | Info : python2 demo -# ******************************************************************************/ -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - - -import epdconfig -from PIL import Image -import RPi.GPIO as GPIO - -# Display resolution -EPD_WIDTH = 104 -EPD_HEIGHT = 212 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - lut_vcomDC = [ - 0x00, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x60, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x00, 0x14, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, - ] - - lut_ww = [ - 0x40, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x40, 0x14, 0x00, 0x00, 0x00, 0x01, - 0xA0, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - - lut_bw = [ - 0x40, 0x17, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x0F, 0x0F, 0x00, 0x00, 0x03, - 0x40, 0x0A, 0x01, 0x00, 0x00, 0x01, - 0xA0, 0x0E, 0x0E, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - - lut_wb = [ - 0x80, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x80, 0x14, 0x00, 0x00, 0x00, 0x01, - 0x50, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - - lut_bb = [ - 0x80, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x80, 0x14, 0x00, 0x00, 0x00, 0x01, - 0x50, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - - lut_vcom1 = [ - 0x00, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, - ] - - lut_ww1 = [ - 0x00, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, - ] - - lut_bw1 = [ - 0x80, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, - ] - - lut_wb1 = [ - 0x40, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, - ] - - lut_bb1 = [ - 0x00, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, - ] - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - self.send_command(0x71) - epdconfig.delay_ms(100) - print("e-Paper busy release") - - def TurnOnDisplay(self): - self.send_command(0x12) - epdconfig.delay_ms(10) - self.ReadBusy() - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - # EPD hardware init start - self.reset() - - self.send_command(0x01) # POWER SETTING - self.send_data(0x03) - self.send_data(0x00) - self.send_data(0x2b) - self.send_data(0x2b) - self.send_data(0x03) - - self.send_command(0x06) # boost soft start - self.send_data(0x17) # A - self.send_data(0x17) # B - self.send_data(0x17) # C - - self.send_command(0x04) - self.ReadBusy() - - self.send_command(0x00) # panel setting - self.send_data(0xbf) # LUT from OTP,128x296 - self.send_data(0x0d) # VCOM to 0V fast - - self.send_command(0x30) # PLL setting - self.send_data(0x3a) # 3a 100HZ 29 150Hz 39 200HZ 31 171HZ - - self.send_command(0x61) # resolution setting - self.send_data(self.width) - self.send_data((self.height >> 8) & 0xff) - self.send_data(self.height& 0xff) - - self.send_command(0x82) # vcom_DC setting - self.send_data(0x28) - return 0 - - def SetFullReg(self): - self.send_command(0x82) - self.send_data(0x00) - self.send_command(0X50) - self.send_data(0x97) - - self.send_command(0x20) # vcom - for count in range(0, 44): - self.send_data(self.lut_vcomDC[count]) - self.send_command(0x21) # ww -- - for count in range(0, 42): - self.send_data(self.lut_ww[count]) - self.send_command(0x22) # bw r - for count in range(0, 42): - self.send_data(self.lut_bw[count]) - self.send_command(0x23) # wb w - for count in range(0, 42): - self.send_data(self.lut_wb[count]) - self.send_command(0x24) # bb b - for count in range(0, 42): - self.send_data(self.lut_bb[count]) - - def SetPartReg(self): - self.send_command(0x82) - self.send_data(0x03) - self.send_command(0X50) - self.send_data(0x47) - - self.send_command(0x20) # vcom - for count in range(0, 44): - self.send_data(self.lut_vcom1[count]) - self.send_command(0x21) # ww -- - for count in range(0, 42): - self.send_data(self.lut_ww1[count]) - self.send_command(0x22) # bw r - for count in range(0, 42): - self.send_data(self.lut_bw1[count]) - self.send_command(0x23) # wb w - for count in range(0, 42): - self.send_data(self.lut_wb1[count]) - self.send_command(0x24) # bb b - for count in range(0, 42): - self.send_data(self.lut_bb1[count]) - - def getbuffer(self, image): - # print "bufsiz = ",(self.width/8) * self.height - buf = [0xFF] * ((self.width/8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight - if(imwidth == self.width and imheight == self.height): - print "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] == 0: - buf[(x + y * self.width) / 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print "Horizontal" - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) / 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, image): - if (Image == None): - return - - self.send_command(0x10) - for i in range(0, self.width * self.height / 8): - self.send_data(0x00) - epdconfig.delay_ms(10) - - self.send_command(0x13) - for i in range(0, self.width * self.height / 8): - self.send_data(image[i]) - epdconfig.delay_ms(10) - - self.SetFullReg() - self.TurnOnDisplay() - - def DisplayPartial(self, image): - if (Image == None): - return - - self.SetPartReg() - self.send_command(0x91) - self.send_command(0x90) - self.send_data(0) - self.send_data(self.width - 1) - - self.send_data(0) - self.send_data(0) - self.send_data(self.height / 256) - self.send_data(self.height % 256 - 1) - self.send_data(0x28) - - self.send_command(0x10) - for i in range(0, self.width * self.height / 8): - self.send_data(image[i]) - epdconfig.delay_ms(10) - - self.send_command(0x13) - for i in range(0, self.width * self.height / 8): - self.send_data(~image[i]) - epdconfig.delay_ms(10) - - self.TurnOnDisplay() - - def Clear(self, color): - self.send_command(0x10) - for i in range(0, self.width * self.height / 8): - self.send_data(0x00) - epdconfig.delay_ms(10) - - self.send_command(0x13) - for i in range(0, self.width * self.height / 8): - self.send_data(0xFF) - epdconfig.delay_ms(10) - - self.SetFullReg() - self.TurnOnDisplay() - - def sleep(self): - self.send_command(0X50) - self.send_data(0xf7) - self.send_command(0X02) # power off - self.send_command(0X07) # deep sleep - self.send_data(0xA5) - - epdconfig.module_exit() - -### END OF FILE ### - diff --git a/Raspberry Pi/python2/lib/epd2in7.py b/Raspberry Pi/python2/lib/epd2in7.py deleted file mode 100644 index 9d5fca6..0000000 --- a/Raspberry Pi/python2/lib/epd2in7.py +++ /dev/null @@ -1,258 +0,0 @@ -# /***************************************************************************** -# * | File : epd2in7.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-19 -# * | Info : python2 demo -# ******************************************************************************/ -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - -import epdconfig - -# Display resolution -EPD_WIDTH = 176 -EPD_HEIGHT = 264 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - lut_vcom_dc = [0x00, 0x00, - 0x00, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x60, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x00, 0x14, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - ] - lut_ww = [ - 0x40, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x40, 0x14, 0x00, 0x00, 0x00, 0x01, - 0xA0, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - lut_bw = [ - 0x40, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x40, 0x14, 0x00, 0x00, 0x00, 0x01, - 0xA0, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - lut_bb = [ - 0x80, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x80, 0x14, 0x00, 0x00, 0x00, 0x01, - 0x50, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - lut_wb = [ - 0x80, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x80, 0x14, 0x00, 0x00, 0x00, 0x01, - 0x50, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - epdconfig.delay_ms(200) - print("e-Paper busy release") - - def set_lut(self): - self.send_command(0x20) # vcom - for count in range(0, 44): - self.send_data(self.lut_vcom_dc[count]) - self.send_command(0x21) # ww -- - for count in range(0, 42): - self.send_data(self.lut_ww[count]) - self.send_command(0x22) # bw r - for count in range(0, 42): - self.send_data(self.lut_bw[count]) - self.send_command(0x23) # wb w - for count in range(0, 42): - self.send_data(self.lut_bb[count]) - self.send_command(0x24) # bb b - for count in range(0, 42): - self.send_data(self.lut_wb[count]) - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - - # EPD hardware init start - self.reset() - - self.send_command(0x01) # POWER_SETTING - self.send_data(0x03) # VDS_EN, VDG_EN - self.send_data(0x00) # VCOM_HV, VGHL_LV[1], VGHL_LV[0] - self.send_data(0x2b) # VDH - self.send_data(0x2b) # VDL - self.send_data(0x09) # VDHR - - self.send_command(0x06) # BOOSTER_SOFT_START - self.send_data(0x07) - self.send_data(0x07) - self.send_data(0x17) - - # Power optimization - self.send_command(0xF8) - self.send_data(0x60) - self.send_data(0xA5) - - # Power optimization - self.send_command(0xF8) - self.send_data(0x89) - self.send_data(0xA5) - - # Power optimization - self.send_command(0xF8) - self.send_data(0x90) - self.send_data(0x00) - - # Power optimization - self.send_command(0xF8) - self.send_data(0x93) - self.send_data(0x2A) - - # Power optimization - self.send_command(0xF8) - self.send_data(0xA0) - self.send_data(0xA5) - - # Power optimization - self.send_command(0xF8) - self.send_data(0xA1) - self.send_data(0x00) - - # Power optimization - self.send_command(0xF8) - self.send_data(0x73) - self.send_data(0x41) - - self.send_command(0x16) # PARTIAL_DISPLAY_REFRESH - self.send_data(0x00) - self.send_command(0x04) # POWER_ON - self.ReadBusy() - - self.send_command(0x00) # PANEL_SETTING - self.send_data(0xAF) # KW-BF KWR-AF BWROTP 0f - - self.send_command(0x30) # PLL_CONTROL - self.send_data(0x3A) # 3A 100HZ 29 150Hz 39 200HZ 31 171HZ - - self.send_command(0x82) # VCM_DC_SETTING_REGISTER - self.send_data(0x12) - self.set_lut() - return 0 - - def getbuffer(self, image): - # print "bufsiz = ",(self.width/8) * self.height - buf = [0xFF] * ((self.width/8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight - if(imwidth == self.width and imheight == self.height): - print("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] == 0: - buf[(x + y * self.width) / 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Horizontal") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) / 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, image): - self.send_command(0x10) - for i in range(0, self.width * self.height / 8): - self.send_data(0xFF) - self.send_command(0x13) - for i in range(0, self.width * self.height / 8): - self.send_data(image[i]) - self.send_command(0x12) - self.ReadBusy() - - def Clear(self, color): - self.send_command(0x10) - for i in range(0, self.width * self.height / 8): - self.send_data(0xFF) - self.send_command(0x13) - for i in range(0, self.width * self.height / 8): - self.send_data(0xFF) - self.send_command(0x12) - self.ReadBusy() - - def sleep(self): - self.send_command(0X50) - self.send_data(0xf7) - self.send_command(0X02) - self.send_command(0X07) - self.send_data(0xA5) - - epdconfig.module_exit() -### END OF FILE ### - diff --git a/Raspberry Pi/python2/lib/epd2in7b.py b/Raspberry Pi/python2/lib/epd2in7b.py deleted file mode 100644 index f8184e5..0000000 --- a/Raspberry Pi/python2/lib/epd2in7b.py +++ /dev/null @@ -1,268 +0,0 @@ -# /***************************************************************************** -# * | File : epd2in7b.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-19 -# * | Info : python2 demo -# ******************************************************************************/ -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - - -import epdconfig - -# Display resolution -EPD_WIDTH = 176 -EPD_HEIGHT = 264 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - lut_vcom_dc = [ - 0x00, 0x00, - 0x00, 0x1A, 0x1A, 0x00, 0x00, 0x01, - 0x00, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0x00, 0x0E, 0x01, 0x0E, 0x01, 0x10, - 0x00, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0x00, 0x04, 0x10, 0x00, 0x00, 0x05, - 0x00, 0x03, 0x0E, 0x00, 0x00, 0x0A, - 0x00, 0x23, 0x00, 0x00, 0x00, 0x01 - ] - - lut_ww = [ - 0x90, 0x1A, 0x1A, 0x00, 0x00, 0x01, - 0x40, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0x84, 0x0E, 0x01, 0x0E, 0x01, 0x10, - 0x80, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0x00, 0x04, 0x10, 0x00, 0x00, 0x05, - 0x00, 0x03, 0x0E, 0x00, 0x00, 0x0A, - 0x00, 0x23, 0x00, 0x00, 0x00, 0x01 - ] - - # R22H r - lut_bw = [ - 0xA0, 0x1A, 0x1A, 0x00, 0x00, 0x01, - 0x00, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0x84, 0x0E, 0x01, 0x0E, 0x01, 0x10, - 0x90, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0xB0, 0x04, 0x10, 0x00, 0x00, 0x05, - 0xB0, 0x03, 0x0E, 0x00, 0x00, 0x0A, - 0xC0, 0x23, 0x00, 0x00, 0x00, 0x01 - ] - - # R23H w - lut_bb = [ - 0x90, 0x1A, 0x1A, 0x00, 0x00, 0x01, - 0x40, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0x84, 0x0E, 0x01, 0x0E, 0x01, 0x10, - 0x80, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0x00, 0x04, 0x10, 0x00, 0x00, 0x05, - 0x00, 0x03, 0x0E, 0x00, 0x00, 0x0A, - 0x00, 0x23, 0x00, 0x00, 0x00, 0x01 - ] - # R24H b - lut_wb = [ - 0x90, 0x1A, 0x1A, 0x00, 0x00, 0x01, - 0x20, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0x84, 0x0E, 0x01, 0x0E, 0x01, 0x10, - 0x10, 0x0A, 0x0A, 0x00, 0x00, 0x08, - 0x00, 0x04, 0x10, 0x00, 0x00, 0x05, - 0x00, 0x03, 0x0E, 0x00, 0x00, 0x0A, - 0x00, 0x23, 0x00, 0x00, 0x00, 0x01 - ] - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - epdconfig.delay_ms(100) - print("e-Paper busy release") - - def set_lut(self): - self.send_command(0x20) # vcom - for count in range(0, 44): - self.send_data(self.lut_vcom_dc[count]) - self.send_command(0x21) # ww -- - for count in range(0, 42): - self.send_data(self.lut_ww[count]) - self.send_command(0x22) # bw r - for count in range(0, 42): - self.send_data(self.lut_bw[count]) - self.send_command(0x23) # wb w - for count in range(0, 42): - self.send_data(self.lut_bb[count]) - self.send_command(0x24) # bb b - for count in range(0, 42): - self.send_data(self.lut_wb[count]) - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - - self.reset() - - self.send_command(0x04) # POWER_ON - self.ReadBusy() - - self.send_command(0x00) # PANEL_SETTING - self.send_data(0xaf) #KW-BF KWR-AF BWROTP 0f - - self.send_command(0x30) # PLL_CONTROL - self.send_data(0x3a) #3A 100HZ 29 150Hz 39 200HZ 31 171HZ - - self.send_command(0x01) # POWER_SETTING - self.send_data(0x03) # VDS_EN, VDG_EN - self.send_data(0x00) # VCOM_HV, VGHL_LV[1], VGHL_LV[0] - self.send_data(0x2b) # VDH - self.send_data(0x2b) # VDL - self.send_data(0x09) # VDHR - - self.send_command(0x06) # BOOSTER_SOFT_START - self.send_data(0x07) - self.send_data(0x07) - self.send_data(0x17) - - # Power optimization - self.send_command(0xF8) - self.send_data(0x60) - self.send_data(0xA5) - - # Power optimization - self.send_command(0xF8) - self.send_data(0x89) - self.send_data(0xA5) - - # Power optimization - self.send_command(0xF8) - self.send_data(0x90) - self.send_data(0x00) - - # Power optimization - self.send_command(0xF8) - self.send_data(0x93) - self.send_data(0x2A) - - # Power optimization - self.send_command(0xF8) - self.send_data(0x73) - self.send_data(0x41) - - self.send_command(0x82) # VCM_DC_SETTING_REGISTER - self.send_data(0x12) - self.send_command(0x50) # VCOM_AND_DATA_INTERVAL_SETTING - self.send_data(0x87) # define by OTP - - self.set_lut() - - self.send_command(0x16) # PARTIAL_DISPLAY_REFRESH - self.send_data(0x00) - - return 0 - - def getbuffer(self, image): - # print "bufsiz = ",(self.width/8) * self.height - buf = [0xFF] * ((self.width/8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight - if(imwidth == self.width and imheight == self.height): - print("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] == 0: - buf[(x + y * self.width) / 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Horizontal") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) / 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, imageblack, imagered): - self.send_command(0x10) - for i in range(0, self.width * self.height / 8): - self.send_data(~imageblack[i]) - self.send_command(0x11) - - self.send_command(0x13) - for i in range(0, self.width * self.height / 8): - self.send_data(~imagered[i]) - self.send_command(0x11) - - self.send_command(0x12) - self.ReadBusy() - - def Clear(self): - self.send_command(0x10) - for i in range(0, self.width * self.height / 8): - self.send_data(0x00) - self.send_command(0x11) - - self.send_command(0x13) - for i in range(0, self.width * self.height / 8): - self.send_data(0x00) - self.send_command(0x11) - - self.send_command(0x12) - self.ReadBusy() - - def sleep(self): - self.send_command(0X50) - self.send_data(0xf7) - self.send_command(0X02) - self.send_command(0X07) - self.send_data(0xA5) - - epdconfig.module_exit() -### END OF FILE ### - diff --git a/Raspberry Pi/python2/lib/epd2in9.py b/Raspberry Pi/python2/lib/epd2in9.py deleted file mode 100644 index 9e2bd6d..0000000 --- a/Raspberry Pi/python2/lib/epd2in9.py +++ /dev/null @@ -1,200 +0,0 @@ -# /***************************************************************************** -# * | File : epd2in9.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-19 -# * | Info : python2 demo -# ******************************************************************************/ -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - -import epdconfig - -# Display resolution -EPD_WIDTH = 128 -EPD_HEIGHT = 296 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - lut_full_update = [ - 0x50, 0xAA, 0x55, 0xAA, 0x11, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0xFF, 0xFF, 0x1F, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - ] - - lut_partial_update = [ - 0x10, 0x18, 0x18, 0x08, 0x18, 0x18, - 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x13, 0x14, 0x44, 0x12, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - ] - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - while(epdconfig.digital_read(self.busy_pin) == 1): # 0: idle, 1: busy - epdconfig.delay_ms(200) - - def TurnOnDisplay(self): - self.send_command(0x22) # DISPLAY_UPDATE_CONTROL_2 - self.send_data(0xC4) - self.send_command(0x20) # MASTER_ACTIVATION - self.send_command(0xFF) # TERMINATE_FRAME_READ_WRITE - - print("e-Paper busy") - self.ReadBusy() - print("e-Paper busy release") - - def SetWindow(self, x_start, y_start, x_end, y_end): - self.send_command(0x44) # SET_RAM_X_ADDRESS_START_END_POSITION - # x point must be the multiple of 8 or the last 3 bits will be ignored - self.send_data((x_start >> 3) & 0xFF) - self.send_data((x_end >> 3) & 0xFF) - self.send_command(0x45) # SET_RAM_Y_ADDRESS_START_END_POSITION - self.send_data(y_start & 0xFF) - self.send_data((y_start >> 8) & 0xFF) - self.send_data(y_end & 0xFF) - self.send_data((y_end >> 8) & 0xFF) - - def SetCursor(self, x, y): - self.send_command(0x4E) # SET_RAM_X_ADDRESS_COUNTER - # x point must be the multiple of 8 or the last 3 bits will be ignored - self.send_data((x >> 3) & 0xFF) - self.send_command(0x4F) # SET_RAM_Y_ADDRESS_COUNTER - self.send_data(y & 0xFF) - self.send_data((y >> 8) & 0xFF) - self.ReadBusy() - - def init(self, lut): - if (epdconfig.module_init() != 0): - return -1 - # EPD hardware init start - self.reset() - - self.send_command(0x01) # DRIVER_OUTPUT_CONTROL - self.send_data((EPD_HEIGHT - 1) & 0xFF) - self.send_data(((EPD_HEIGHT - 1) >> 8) & 0xFF) - self.send_data(0x00) # GD = 0 SM = 0 TB = 0 - - self.send_command(0x0C) # BOOSTER_SOFT_START_CONTROL - self.send_data(0xD7) - self.send_data(0xD6) - self.send_data(0x9D) - - self.send_command(0x2C) # WRITE_VCOM_REGISTER - self.send_data(0xA8) # VCOM 7C - - self.send_command(0x3A) # SET_DUMMY_LINE_PERIOD - self.send_data(0x1A) # 4 dummy lines per gate - - self.send_command(0x3B) # SET_GATE_TIME - self.send_data(0x08) # 2us per line - - self.send_command(0x11) # DATA_ENTRY_MODE_SETTING - self.send_data(0x03) # X increment Y increment - - self.send_command(0x32) # WRITE_LUT_REGISTER - for i in range(0, len(lut)): - self.send_data(lut[i]) - # EPD hardware init end - return 0 - - def getbuffer(self, image): - # print "bufsiz = ",(self.width/8) * self.height - buf = [0xFF] * ((self.width/8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight - if(imwidth == self.width and imheight == self.height): - print("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] == 0: - buf[(x + y * self.width) / 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Horizontal") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) / 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, image): - if (image == None): - return - self.SetWindow(0, 0, self.width - 1, self.height - 1) - for j in range(0, self.height): - self.SetCursor(0, j) - self.send_command(0x24) # WRITE_RAM - for i in range(0, self.width / 8): - self.send_data(image[i + j * (self.width / 8)]) - self.TurnOnDisplay() - - def Clear(self, color): - self.SetWindow(0, 0, self.width - 1, self.height - 1) - for j in range(0, self.height): - self.SetCursor(0, j) - self.send_command(0x24) # WRITE_RAM - for i in range(0, self.width / 8): - self.send_data(color) - self.TurnOnDisplay() - - def sleep(self): - self.send_command(0x10) # DEEP_SLEEP_MODE - self.send_data(0x01) - - epdconfig.module_exit() -### END OF FILE ### - diff --git a/Raspberry Pi/python2/lib/epd2in9bc.py b/Raspberry Pi/python2/lib/epd2in9bc.py deleted file mode 100644 index baee127..0000000 --- a/Raspberry Pi/python2/lib/epd2in9bc.py +++ /dev/null @@ -1,154 +0,0 @@ -# /***************************************************************************** -# * | File : epd2in9bc.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-19 -# * | Info : python2 demo -# ******************************************************************************/ -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - - -import epdconfig - -# Display resolution -EPD_WIDTH = 128 -EPD_HEIGHT = 296 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - epdconfig.delay_ms(200) - print("e-Paper busy release") - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - # EPD hardware init start - self.reset() - - self.send_command(0x06) # boost - self.send_data (0x17) - self.send_data (0x17) - self.send_data (0x17) - self.send_command(0x04) # POWER_ON - self.ReadBusy() - self.send_command(0X00) # PANEL_SETTING - self.send_data(0x8F) - self.send_command(0X50) # VCOM_AND_DATA_INTERVAL_SETTING - self.send_data(0x77) - self.send_command(0x61) # TCON_RESOLUTION - self.send_data (0x80) - self.send_data (0x01) - self.send_data (0x28) - # self.send_command(VCM_DC_SETTING_REGISTER) - # self.send_data (0x0A) - - return 0 - - def getbuffer(self, image): - # print "bufsiz = ",(self.width/8) * self.height - buf = [0xFF] * ((self.width/8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight - if(imwidth == self.width and imheight == self.height): - print("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] == 0: - buf[(x + y * self.width) / 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Horizontal") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) / 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, blackimage, ryimage): # ryimage: red or yellow image - if (blackimage != None): - self.send_command(0X10) - for i in range(0, self.width * self.height / 8): - self.send_data(blackimage[i]) - if (ryimage != None): - self.send_command(0X13) - for i in range(0, self.width * self.height / 8): - self.send_data(ryimage[i]) - - self.send_command(0x12) - self.ReadBusy() - - def Clear(self): - self.send_command(0X10) - for i in range(0, self.width * self.height / 8): - self.send_data(0xff) - self.send_command(0X13) - for i in range(0, self.width * self.height / 8): - self.send_data(0xff) - - self.send_command(0x12) - self.ReadBusy() - - def sleep(self): - self.send_command(0X02) # power off - self.ReadBusy() - self.send_command(0X07) # deep sleep - self.send_data(0xA5) - - epdconfig.module_exit() -### END OF FILE ### - diff --git a/Raspberry Pi/python2/lib/epd2in9d.py b/Raspberry Pi/python2/lib/epd2in9d.py deleted file mode 100644 index ab0212c..0000000 --- a/Raspberry Pi/python2/lib/epd2in9d.py +++ /dev/null @@ -1,350 +0,0 @@ -# /***************************************************************************** -# * | File : epd2in9d.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V2.0 -# * | Date : 2019-06-19 -# * | Info : python2 demo -# ******************************************************************************/ -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - - -import epdconfig -from PIL import Image -import RPi.GPIO as GPIO - -# Display resolution -EPD_WIDTH = 128 -EPD_HEIGHT = 296 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - lut_vcomDC = [ - 0x00, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x60, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x00, 0x14, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, - ] - - lut_ww = [ - 0x40, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x40, 0x14, 0x00, 0x00, 0x00, 0x01, - 0xA0, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - - lut_bw = [ - 0x40, 0x17, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x0F, 0x0F, 0x00, 0x00, 0x03, - 0x40, 0x0A, 0x01, 0x00, 0x00, 0x01, - 0xA0, 0x0E, 0x0E, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - - lut_wb = [ - 0x80, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x80, 0x14, 0x00, 0x00, 0x00, 0x01, - 0x50, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - - lut_bb = [ - 0x80, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x80, 0x14, 0x00, 0x00, 0x00, 0x01, - 0x50, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - - lut_vcom1 = [ - 0x00, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, - ] - - lut_ww1 = [ - 0x00, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, - ] - - lut_bw1 = [ - 0x80, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, - ] - - lut_wb1 = [ - 0x40, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, - ] - - lut_bb1 = [ - 0x00, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, - ] - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - self.send_command(0x71) - epdconfig.delay_ms(100) - print("e-Paper busy release") - def TurnOnDisplay(self): - self.send_command(0x12) - epdconfig.delay_ms(10) - self.ReadBusy() - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - # EPD hardware init start - self.reset() - - self.send_command(0x01) # POWER SETTING - self.send_data(0x03) - self.send_data(0x00) - self.send_data(0x2b) - self.send_data(0x2b) - self.send_data(0x03) - - self.send_command(0x06) # boost soft start - self.send_data(0x17) # A - self.send_data(0x17) # B - self.send_data(0x17) # C - - self.send_command(0x04) - self.ReadBusy() - - self.send_command(0x00) # panel setting - self.send_data(0xbf) # LUT from OTP,128x296 - self.send_data(0x0d) # VCOM to 0V fast - - self.send_command(0x30) #PLL setting - self.send_data(0x3a) # 3a 100HZ 29 150Hz 39 200HZ 31 171HZ - - self.send_command(0x61) # resolution setting - self.send_data(self.width) - self.send_data((self.height >> 8) & 0xff) - self.send_data(self.height& 0xff) - - self.send_command(0x82) # vcom_DC setting - self.send_data(0x28) - return 0 - - def SetFullReg(self): - self.send_command(0x82) - self.send_data(0x00) - self.send_command(0X50) - self.send_data(0x97) - - self.send_command(0x20) # vcom - for count in range(0, 44): - self.send_data(self.lut_vcomDC[count]) - self.send_command(0x21) # ww -- - for count in range(0, 42): - self.send_data(self.lut_ww[count]) - self.send_command(0x22) # bw r - for count in range(0, 42): - self.send_data(self.lut_bw[count]) - self.send_command(0x23) # wb w - for count in range(0, 42): - self.send_data(self.lut_wb[count]) - self.send_command(0x24) # bb b - for count in range(0, 42): - self.send_data(self.lut_bb[count]) - - def SetPartReg(self): - self.send_command(0x82) - self.send_data(0x03) - self.send_command(0X50) - self.send_data(0x47) - - self.send_command(0x20) # vcom - for count in range(0, 44): - self.send_data(self.lut_vcom1[count]) - self.send_command(0x21) # ww -- - for count in range(0, 42): - self.send_data(self.lut_ww1[count]) - self.send_command(0x22) # bw r - for count in range(0, 42): - self.send_data(self.lut_bw1[count]) - self.send_command(0x23) # wb w - for count in range(0, 42): - self.send_data(self.lut_wb1[count]) - self.send_command(0x24) # bb b - for count in range(0, 42): - self.send_data(self.lut_bb1[count]) - - def getbuffer(self, image): - # print "bufsiz = ",(self.width/8) * self.height - buf = [0xFF] * ((self.width/8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight - if(imwidth == self.width and imheight == self.height): - print("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] == 0: - buf[(x + y * self.width) / 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Horizontal") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) / 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, image): - self.send_command(0x10) - for i in range(0, self.width * self.height / 8): - self.send_data(0x00) - epdconfig.delay_ms(10) - - self.send_command(0x13) - for i in range(0, self.width * self.height / 8): - self.send_data(image[i]) - epdconfig.delay_ms(10) - - self.SetFullReg() - self.TurnOnDisplay() - - def DisplayPartial(self, image): - self.SetPartReg() - self.send_command(0x91) - self.send_command(0x90) - self.send_data(0) - self.send_data(self.width - 1) - - self.send_data(0) - self.send_data(0) - self.send_data(self.height / 256) - self.send_data(self.height % 256 - 1) - self.send_data(0x28) - - self.send_command(0x10) - for i in range(0, self.width * self.height / 8): - self.send_data(image[i]) - epdconfig.delay_ms(10) - - self.send_command(0x13) - for i in range(0, self.width * self.height / 8): - self.send_data(~image[i]) - epdconfig.delay_ms(10) - - self.TurnOnDisplay() - - def Clear(self, color): - self.send_command(0x10) - for i in range(0, self.width * self.height / 8): - self.send_data(0x00) - epdconfig.delay_ms(10) - - self.send_command(0x13) - for i in range(0, self.width * self.height / 8): - self.send_data(0xFF) - epdconfig.delay_ms(10) - - self.SetFullReg() - self.TurnOnDisplay() - - def sleep(self): - self.send_command(0X50) - self.send_data(0xf7) - self.send_command(0X02) #power off - self.send_command(0X07) #deep sleep - self.send_data(0xA5) - - epdconfig.module_exit() - -### END OF FILE ### - diff --git a/Raspberry Pi/python2/lib/epd4in2.py b/Raspberry Pi/python2/lib/epd4in2.py deleted file mode 100644 index 36c07b1..0000000 --- a/Raspberry Pi/python2/lib/epd4in2.py +++ /dev/null @@ -1,240 +0,0 @@ -# /***************************************************************************** -# * | File : epd4in2.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-20 -# * | Info : python2 demo -# ******************************************************************************/ -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - - -import epdconfig -from PIL import Image -import RPi.GPIO as GPIO - -# Display resolution -EPD_WIDTH = 400 -EPD_HEIGHT = 300 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - lut_vcom0 = [ - 0x00, 0x17, 0x00, 0x00, 0x00, 0x02, - 0x00, 0x17, 0x17, 0x00, 0x00, 0x02, - 0x00, 0x0A, 0x01, 0x00, 0x00, 0x01, - 0x00, 0x0E, 0x0E, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - lut_ww = [ - 0x40, 0x17, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x17, 0x17, 0x00, 0x00, 0x02, - 0x40, 0x0A, 0x01, 0x00, 0x00, 0x01, - 0xA0, 0x0E, 0x0E, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - lut_bw = [ - 0x40, 0x17, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x17, 0x17, 0x00, 0x00, 0x02, - 0x40, 0x0A, 0x01, 0x00, 0x00, 0x01, - 0xA0, 0x0E, 0x0E, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - lut_wb = [ - 0x80, 0x17, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x17, 0x17, 0x00, 0x00, 0x02, - 0x80, 0x0A, 0x01, 0x00, 0x00, 0x01, - 0x50, 0x0E, 0x0E, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - lut_bb = [ - 0x80, 0x17, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x17, 0x17, 0x00, 0x00, 0x02, - 0x80, 0x0A, 0x01, 0x00, 0x00, 0x01, - 0x50, 0x0E, 0x0E, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - epdconfig.delay_ms(100) - - def set_lut(self): - self.send_command(0x20) # vcom - for count in range(0, 44): - self.send_data(self.lut_vcom0[count]) - - self.send_command(0x21) # ww -- - for count in range(0, 42): - self.send_data(self.lut_ww[count]) - - self.send_command(0x22) # bw r - for count in range(0, 42): - self.send_data(self.lut_bw[count]) - - self.send_command(0x23) # wb w - for count in range(0, 42): - self.send_data(self.lut_bb[count]) - - self.send_command(0x24) # bb b - for count in range(0, 42): - self.send_data(self.lut_wb[count]) - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - # EPD hardware init start - self.reset() - - self.send_command(0x01) # POWER SETTING - self.send_data(0x03) # VDS_EN, VDG_EN - self.send_data(0x00) # VCOM_HV, VGHL_LV[1], VGHL_LV[0] - self.send_data(0x2b) # VDH - self.send_data(0x2b) # VDL - - self.send_command(0x06) # boost soft start - self.send_data(0x17) - self.send_data(0x17) - self.send_data(0x17) - - self.send_command(0x04) # POWER_ON - self.ReadBusy() - - self.send_command(0x00) # panel setting - self.send_data(0xbf) # KW-BF KWR-AF BWROTP 0f - self.send_data(0x0d) - - self.send_command(0x30) # PLL setting - self.send_data(0x3c) # 3A 100HZ 29 150Hz 39 200HZ 31 171HZ - - self.send_command(0x61) # resolution setting - self.send_data(0x01) - self.send_data(0x90) # 128 - self.send_data(0x01) - self.send_data(0x2c) - - self.send_command(0x82) # vcom_DC setting - self.send_data(0x28) - - self.send_command(0X50) # VCOM AND DATA INTERVAL SETTING - self.send_data(0x97) # 97white border 77black border VBDF 17|D7 VBDW 97 VBDB 57 VBDF F7 VBDW 77 VBDB 37 VBDR B7 - - self.set_lut() - # EPD hardware init end - return 0 - - def getbuffer(self, image): - # print "bufsiz = ",(self.width/8) * self.height - buf = [0xFF] * ((self.width/8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight - if(imwidth == self.width and imheight == self.height): - print "Horizontal" - 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] == 0: - buf[(x + y * self.width) / 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print "Vertical" - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) / 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, image): - self.send_command(0x10) - for i in range(0, self.width * self.height / 8): - self.send_data(0xFF) - - self.send_command(0x13) - for i in range(0, self.width * self.height / 8): - self.send_data(image[i]) - - self.send_command(0x12) - self.ReadBusy() - - def Clear(self): - self.send_command(0x10) - for i in range(0, self.width * self.height / 8): - self.send_data(0xFF) - - self.send_command(0x13) - for i in range(0, self.width * self.height / 8): - self.send_data(0xFF) - - self.send_command(0x12) - self.ReadBusy() - - def sleep(self): - self.send_command(0x02) # POWER_OFF - self.ReadBusy() - self.send_command(0x07) # DEEP_SLEEP - self.send_data(0XA5) - - epdconfig.module_exit() - -### END OF FILE ### - diff --git a/Raspberry Pi/python2/lib/epd4in2bc.py b/Raspberry Pi/python2/lib/epd4in2bc.py deleted file mode 100644 index 0760c48..0000000 --- a/Raspberry Pi/python2/lib/epd4in2bc.py +++ /dev/null @@ -1,147 +0,0 @@ -# /***************************************************************************** -# * | File : epd4in2bc.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-20 -# * | Info : python2 demo -# ******************************************************************************/ -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - -import epdconfig - -# Display resolution -EPD_WIDTH = 400 -EPD_HEIGHT = 300 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - epdconfig.delay_ms(100) - print("e-Paper busy release") - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - - self.reset() - - self.send_command(0x06) # BOOSTER_SOFT_START - self.send_data (0x17) - self.send_data (0x17) - self.send_data (0x17) # 07 0f 17 1f 27 2F 37 2f - - self.send_command(0x04) # POWER_ON - self.ReadBusy() - - self.send_command(0x00) # PANEL_SETTING - self.send_data(0x0F) # LUT from OTP - - return 0 - - def getbuffer(self, image): - # print "bufsiz = ",(self.width/8) * self.height - buf = [0xFF] * ((self.width/8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight - if(imwidth == self.width and imheight == self.height): - print("Horizontal") - 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] == 0: - buf[(x + y * self.width) / 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Vertical") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) / 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, imageblack, imagered): - self.send_command(0x10) - for i in range(0, self.width * self.height / 8): - self.send_data(imageblack[i]) - - self.send_command(0x13) - for i in range(0, self.width * self.height / 8): - self.send_data(imagered[i]) - - self.send_command(0x12) - self.ReadBusy() - - def Clear(self): - self.send_command(0x10) - for i in range(0, self.width * self.height / 8): - self.send_data(0xFF) - - self.send_command(0x13) - for i in range(0, self.width * self.height / 8): - self.send_data(0xFF) - - self.send_command(0x12) - self.ReadBusy() - - def sleep(self): - self.send_command(0x02) # POWER_OFF - self.ReadBusy() - self.send_command(0x07) # DEEP_SLEEP - self.send_data(0xA5) # check code - - epdconfig.module_exit() -### END OF FILE ### - diff --git a/Raspberry Pi/python2/lib/epd5in83.py b/Raspberry Pi/python2/lib/epd5in83.py deleted file mode 100644 index e309db0..0000000 --- a/Raspberry Pi/python2/lib/epd5in83.py +++ /dev/null @@ -1,199 +0,0 @@ -# /***************************************************************************** -# * | File : epd5in83.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-20 -# * | Info : python2 demo -# ******************************************************************************/ -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - - -import epdconfig - -# Display resolution -EPD_WIDTH = 600 -EPD_HEIGHT = 448 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - epdconfig.delay_ms(100) - print("e-Paper busy release") - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - # EPD hardware init start - self.reset() - - self.send_command(0x01) # POWER_SETTING - self.send_data(0x37) - self.send_data(0x00) - - self.send_command(0x00) # PANEL_SETTING - self.send_data(0xCF) - self.send_data(0x08) - - self.send_command(0x06) # BOOSTER_SOFT_START - self.send_data(0xc7) - self.send_data(0xcc) - self.send_data(0x28) - - self.send_command(0x04) # POWER_ON - self.ReadBusy() - - self.send_command(0x30) # PLL_CONTROL - self.send_data(0x3c) - - self.send_command(0x41) # TEMPERATURE_CALIBRATION - self.send_data(0x00) - - self.send_command(0x50) # VCOM_AND_DATA_INTERVAL_SETTING - self.send_data(0x77) - - self.send_command(0x60) # TCON_SETTING - self.send_data(0x22) - - self.send_command(0x61) # TCON_RESOLUTION - self.send_data(0x02) # source 600 - self.send_data(0x58) - self.send_data(0x01) # gate 448 - self.send_data(0xC0) - - self.send_command(0x82) # VCM_DC_SETTING - self.send_data(0x1E) # decide by LUT file - - self.send_command(0xe5) # FLASH MODE - self.send_data(0x03) - - # EPD hardware init end - return 0 - - def getbuffer(self, image): - buf = [0x00] * (self.width * self.height / 4) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - print("imwidth = ", imwidth, "imheight = ", imheight) - if(imwidth == self.width and imheight == self.height): - 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] < 64: # black - buf[(x + y * self.width) / 4] &= ~(0xC0 >> (x % 4 * 2)) - elif pixels[x, y] < 192: # convert gray to red - buf[(x + y * self.width) / 4] &= ~(0xC0 >> (x % 4 * 2)) - buf[(x + y * self.width) / 4] |= 0x40 >> (x % 4 * 2) - else: # white - buf[(x + y * self.width) / 4] |= 0xC0 >> (x % 4 * 2) - elif(imwidth == self.height and imheight == self.width): - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] < 64: # black - buf[(newx + newy*self.width) / 4] &= ~(0xC0 >> (y % 4 * 2)) - elif pixels[x, y] < 192: # convert gray to red - buf[(newx + newy*self.width) / 4] &= ~(0xC0 >> (y % 4 * 2)) - buf[(newx + newy*self.width) / 4] |= 0x40 >> (y % 4 * 2) - else: # white - buf[(newx + newy*self.width) / 4] |= 0xC0 >> (y % 4 * 2) - return buf - - def display(self, image): - self.send_command(0x10) - for i in range(0, self.width / 4 * self.height): - temp1 = image[i] - j = 0 - while (j < 4): - if ((temp1 & 0xC0) == 0xC0): - temp2 = 0x03 - elif ((temp1 & 0xC0) == 0x00): - temp2 = 0x00 - else: - temp2 = 0x04 - temp2 = (temp2 << 4) & 0xFF - temp1 = (temp1 << 2) & 0xFF - j += 1 - if((temp1 & 0xC0) == 0xC0): - temp2 |= 0x03 - elif ((temp1 & 0xC0) == 0x00): - temp2 |= 0x00 - else: - temp2 |= 0x04 - temp1 = (temp1 << 2) & 0xFF - self.send_data(temp2) - j += 1 - - self.send_command(0x12) - epdconfig.delay_ms(100) - self.ReadBusy() - - def Clear(self): - self.send_command(0x10) - for i in range(0, self.width / 4 * self.height): - for j in range(0, 4): - self.send_data(0x33) - self.send_command(0x12) - self.ReadBusy() - - def sleep(self): - self.send_command(0x02) # POWER_OFF - self.ReadBusy() - self.send_command(0x07) # DEEP_SLEEP - self.send_data(0XA5) - - epdconfig.module_exit() - -### END OF FILE ### - diff --git a/Raspberry Pi/python2/lib/epd5in83bc.py b/Raspberry Pi/python2/lib/epd5in83bc.py deleted file mode 100644 index 60ef7d6..0000000 --- a/Raspberry Pi/python2/lib/epd5in83bc.py +++ /dev/null @@ -1,199 +0,0 @@ -# /***************************************************************************** -# * | File : epd5in83b.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-20 -# * | Info : python2 demo -# ******************************************************************************/ -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - - -import epdconfig - -# Display resolution -EPD_WIDTH = 600 -EPD_HEIGHT = 448 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - epdconfig.delay_ms(100) - print("e-Paper busy release") - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - - self.reset() - - self.send_command(0x01) # POWER_SETTING - self.send_data(0x37) - self.send_data(0x00) - - self.send_command(0x00) # PANEL_SETTING - self.send_data(0xCF) - self.send_data(0x08) - - self.send_command(0x30) # PLL_CONTROL - self.send_data(0x3A) # PLL: 0-15:0x3C, 15+:0x3A - self.send_command(0X82) # VCOM VOLTAGE SETTING - self.send_data(0x28) # all temperature range - - self.send_command(0x06) # boost - self.send_data(0xc7) - self.send_data(0xcc) - self.send_data(0x15) - - self.send_command(0X50) # VCOM AND DATA INTERVAL SETTING - self.send_data(0x77) - - self.send_command(0X60) # TCON SETTING - self.send_data(0x22) - - self.send_command(0X65) # FLASH CONTROL - self.send_data(0x00) - - self.send_command(0x61) # tres - self.send_data(0x02) # source 600 - self.send_data(0x58) - self.send_data(0x01) # gate 448 - self.send_data(0xc0) - - self.send_command(0xe5) # FLASH MODE - self.send_data(0x03) - self.send_data(0x03) - - return 0 - - def getbuffer(self, image): - # print "bufsiz = ",(self.width/8) * self.height - buf = [0xFF] * ((self.width/8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight - if(imwidth == self.width and imheight == self.height): - print("Horizontal") - 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] == 0: - buf[(x + y * self.width) / 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Vertical") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) / 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, imageblack, imagered): - self.send_command(0x10) - for i in range(0, self.width / 8 * self.height): - temp1 = imageblack[i] - temp2 = imagered[i] - j = 0 - while (j < 8): - if ((temp2 & 0x80) == 0x00): - temp3 = 0x04 #red - elif ((temp1 & 0x80) == 0x00): - temp3 = 0x00 #black - else: - temp3 = 0x03 #white - - temp3 = (temp3 << 4) & 0xFF - temp1 = (temp1 << 1) & 0xFF - temp2 = (temp2 << 1) & 0xFF - j += 1 - if((temp2 & 0x80) == 0x00): - temp3 |= 0x04 #red - elif ((temp1 & 0x80) == 0x00): - temp3 |= 0x00 #black - else: - temp3 |= 0x03 #white - temp1 = (temp1 << 1) & 0xFF - temp2 = (temp2 << 1) & 0xFF - self.send_data(temp3) - j += 1 - - self.send_command(0x04) # POWER ON - self.ReadBusy() - self.send_command(0x12) # display refresh - epdconfig.delay_ms(100) - self.ReadBusy() - - def Clear(self): - self.send_command(0x10) - for i in range(0, self.width / 8 * self.height): - self.send_data(0x33) - self.send_data(0x33) - self.send_data(0x33) - self.send_data(0x33) - - self.send_command(0x04) # POWER ON - self.ReadBusy() - self.send_command(0x12) # display refresh - epdconfig.delay_ms(100) - self.ReadBusy() - - def sleep(self): - self.send_command(0x02) # POWER_OFF - self.ReadBusy() - self.send_command(0x07) # DEEP_SLEEP - self.send_data(0xA5) # check code - - epdconfig.module_exit() -### END OF FILE ### - diff --git a/Raspberry Pi/python2/lib/epd7in5.py b/Raspberry Pi/python2/lib/epd7in5.py deleted file mode 100644 index 6e5a70f..0000000 --- a/Raspberry Pi/python2/lib/epd7in5.py +++ /dev/null @@ -1,200 +0,0 @@ -# /***************************************************************************** -# * | File : epd7in5.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-20 -# * | Info : python2 demo -# ******************************************************************************/ -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - - -import epdconfig - -# Display resolution -EPD_WIDTH = 640 -EPD_HEIGHT = 384 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - epdconfig.delay_ms(100) - print("e-Paper busy release") - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - # EPD hardware init start - self.reset() - - self.send_command(0x01) # POWER_SETTING - self.send_data(0x37) - self.send_data(0x00) - - self.send_command(0x00) # PANEL_SETTING - self.send_data(0xCF) - self.send_data(0x08) - - self.send_command(0x06) # BOOSTER_SOFT_START - self.send_data(0xc7) - self.send_data(0xcc) - self.send_data(0x28) - - self.send_command(0x04) # POWER_ON - self.ReadBusy() - - self.send_command(0x30) # PLL_CONTROL - self.send_data(0x3c) - - self.send_command(0x41) # TEMPERATURE_CALIBRATION - self.send_data(0x00) - - self.send_command(0x50) # VCOM_AND_DATA_INTERVAL_SETTING - self.send_data(0x77) - - self.send_command(0x60) # TCON_SETTING - self.send_data(0x22) - - self.send_command(0x61) # TCON_RESOLUTION - self.send_data(EPD_WIDTH >> 8) #source 640 - self.send_data(EPD_WIDTH & 0xff) - self.send_data(EPD_HEIGHT >> 8) #gate 384 - self.send_data(EPD_HEIGHT & 0xff) - - self.send_command(0x82) # VCM_DC_SETTING - self.send_data(0x1E) # decide by LUT file - - self.send_command(0xe5) # FLASH MODE - self.send_data(0x03) - - # EPD hardware init end - return 0 - - def getbuffer(self, image): - buf = [0x00] * (self.width * self.height / 4) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - print("imwidth = ", imwidth, "imheight = ", imheight) - if(imwidth == self.width and imheight == self.height): - 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] < 64: # black - buf[(x + y * self.width) / 4] &= ~(0xC0 >> (x % 4 * 2)) - elif pixels[x, y] < 192: # convert gray to red - buf[(x + y * self.width) / 4] &= ~(0xC0 >> (x % 4 * 2)) - buf[(x + y * self.width) / 4] |= 0x40 >> (x % 4 * 2) - else: # white - buf[(x + y * self.width) / 4] |= 0xC0 >> (x % 4 * 2) - elif(imwidth == self.height and imheight == self.width): - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] < 64: # black - buf[(newx + newy*self.width) / 4] &= ~(0xC0 >> (y % 4 * 2)) - elif pixels[x, y] < 192: # convert gray to red - buf[(newx + newy*self.width) / 4] &= ~(0xC0 >> (y % 4 * 2)) - buf[(newx + newy*self.width) / 4] |= 0x40 >> (y % 4 * 2) - else: # white - buf[(newx + newy*self.width) / 4] |= 0xC0 >> (y % 4 * 2) - return buf - - def display(self, image): - self.send_command(0x10) - for i in range(0, self.width / 4 * self.height): - temp1 = image[i] - j = 0 - while (j < 4): - if ((temp1 & 0xC0) == 0xC0): - temp2 = 0x03 - elif ((temp1 & 0xC0) == 0x00): - temp2 = 0x00 - else: - temp2 = 0x04 - temp2 = (temp2 << 4) & 0xFF - temp1 = (temp1 << 2) & 0xFF - j += 1 - if((temp1 & 0xC0) == 0xC0): - temp2 |= 0x03 - elif ((temp1 & 0xC0) == 0x00): - temp2 |= 0x00 - else: - temp2 |= 0x04 - temp1 = (temp1 << 2) & 0xFF - self.send_data(temp2) - j += 1 - - self.send_command(0x12) - epdconfig.delay_ms(100) - self.ReadBusy() - - def Clear(self): - self.send_command(0x10) - for i in range(0, self.width / 4 * self.height): - for j in range(0, 4): - self.send_data(0x33) - - self.send_command(0x12) - self.ReadBusy() - - def sleep(self): - self.send_command(0x02) # POWER_OFF - self.ReadBusy() - - self.send_command(0x07) # DEEP_SLEEP - self.send_data(0XA5) - - epdconfig.module_exit() -### END OF FILE ### - diff --git a/Raspberry Pi/python2/lib/epd7in5bc.py b/Raspberry Pi/python2/lib/epd7in5bc.py deleted file mode 100644 index 58157f8..0000000 --- a/Raspberry Pi/python2/lib/epd7in5bc.py +++ /dev/null @@ -1,200 +0,0 @@ -# /***************************************************************************** -# * | File : epd7in5bc.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-20 -# * | Info : python2 demo -# ******************************************************************************/ -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - - -import epdconfig - -# Display resolution -EPD_WIDTH = 640 -EPD_HEIGHT = 384 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - epdconfig.delay_ms(100) - print("e-Paper busy release") - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - - self.reset() - - self.send_command(0x01) # POWER_SETTING - self.send_data(0x37) - self.send_data(0x00) - - self.send_command(0x00) # PANEL_SETTING - self.send_data(0xCF) - self.send_data(0x08) - - self.send_command(0x30) # PLL_CONTROL - self.send_data(0x3A) # PLL: 0-15:0x3C, 15+:0x3A - - self.send_command(0x82) # VCM_DC_SETTING - self.send_data(0x28) #all temperature range - - self.send_command(0x06) # BOOSTER_SOFT_START - self.send_data(0xc7) - self.send_data(0xcc) - self.send_data(0x15) - - self.send_command(0x50) # VCOM AND DATA INTERVAL SETTING - self.send_data(0x77) - - self.send_command(0x60) # TCON_SETTING - self.send_data(0x22) - - self.send_command(0x65) # FLASH CONTROL - self.send_data(0x00) - - self.send_command(0x61) # TCON_RESOLUTION - self.send_data(self.width >> 8) # source 640 - self.send_data(self.width & 0xff) - self.send_data(self.height >> 8) # gate 384 - self.send_data(self.height & 0xff) - - self.send_command(0xe5) # FLASH MODE - self.send_data(0x03) - - return 0 - - def getbuffer(self, image): - # print "bufsiz = ",(self.width/8) * self.height - buf = [0xFF] * ((self.width/8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight - if(imwidth == self.width and imheight == self.height): - print("Horizontal") - 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] == 0: - buf[(x + y * self.width) / 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Vertical") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) / 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, imageblack, imagered): - self.send_command(0x10) - for i in range(0, self.width / 8 * self.height): - temp1 = imageblack[i] - temp2 = imagered[i] - j = 0 - while (j < 8): - if ((temp2 & 0x80) == 0x00): - temp3 = 0x04 #red - elif ((temp1 & 0x80) == 0x00): - temp3 = 0x00 #black - else: - temp3 = 0x03 #white - - temp3 = (temp3 << 4) & 0xFF - temp1 = (temp1 << 1) & 0xFF - temp2 = (temp2 << 1) & 0xFF - j += 1 - if((temp2 & 0x80) == 0x00): - temp3 |= 0x04 #red - elif ((temp1 & 0x80) == 0x00): - temp3 |= 0x00 #black - else: - temp3 |= 0x03 #white - temp1 = (temp1 << 1) & 0xFF - temp2 = (temp2 << 1) & 0xFF - self.send_data(temp3) - j += 1 - - self.send_command(0x04) # POWER ON - self.ReadBusy() - self.send_command(0x12) # display refresh - epdconfig.delay_ms(100) - self.ReadBusy() - - def Clear(self): - self.send_command(0x10) - for i in range(0, self.width / 8 * self.height): - self.send_data(0x33) - self.send_data(0x33) - self.send_data(0x33) - self.send_data(0x33) - - self.send_command(0x04) # POWER ON - self.ReadBusy() - self.send_command(0x12) # display refresh - epdconfig.delay_ms(100) - self.ReadBusy() - - def sleep(self): - self.send_command(0x02) # POWER_OFF - self.ReadBusy() - - self.send_command(0x07) # DEEP_SLEEP - self.send_data(0XA5) - - epdconfig.module_exit() -### END OF FILE ### - diff --git a/Raspberry Pi/python2/lib/epdconfig.py b/Raspberry Pi/python2/lib/epdconfig.py deleted file mode 100644 index 148f934..0000000 --- a/Raspberry Pi/python2/lib/epdconfig.py +++ /dev/null @@ -1,75 +0,0 @@ -# /***************************************************************************** -# * | File : epdconfig.py -# * | Author : Waveshare team -# * | Function : Hardware underlying interface -# * | Info : -# *---------------- -# * | This version: V1.0 -# * | Date : 2019-06-21 -# * | Info : -# ****************************************************************************** -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - -import spidev -import RPi.GPIO as GPIO -import time - -# Pin definition -RST_PIN = 17 -DC_PIN = 25 -CS_PIN = 8 -BUSY_PIN = 24 - -# SPI device, bus = 0, device = 0 -SPI = spidev.SpiDev(0, 0) - -def digital_write(pin, value): - GPIO.output(pin, value) - -def digital_read(pin): - return GPIO.input(BUSY_PIN) - -def delay_ms(delaytime): - time.sleep(delaytime / 1000.0) - -def spi_writebyte(data): - SPI.writebytes(data) - -def module_init(): - GPIO.setmode(GPIO.BCM) - GPIO.setwarnings(False) - GPIO.setup(RST_PIN, GPIO.OUT) - GPIO.setup(DC_PIN, GPIO.OUT) - GPIO.setup(CS_PIN, GPIO.OUT) - GPIO.setup(BUSY_PIN, GPIO.IN) - SPI.max_speed_hz = 2000000 - SPI.mode = 0b00 - return 0 - -def module_exit(): - print("spi end") - SPI.close() - - print("close 5V, Module enters 0 power consumption ...") - GPIO.output(RST_PIN, 0) - GPIO.output(DC_PIN, 0) - - GPIO.cleanup() -### END OF FILE ### diff --git a/Raspberry Pi/python2/pic/100x100.bmp b/Raspberry Pi/python2/pic/100x100.bmp deleted file mode 100644 index 70f4584..0000000 Binary files a/Raspberry Pi/python2/pic/100x100.bmp and /dev/null differ diff --git a/Raspberry Pi/python2/pic/1in54.bmp b/Raspberry Pi/python2/pic/1in54.bmp deleted file mode 100644 index a877bfa..0000000 Binary files a/Raspberry Pi/python2/pic/1in54.bmp and /dev/null differ diff --git a/Raspberry Pi/python2/pic/1in54b-b.bmp b/Raspberry Pi/python2/pic/1in54b-b.bmp deleted file mode 100644 index e992aea..0000000 Binary files a/Raspberry Pi/python2/pic/1in54b-b.bmp and /dev/null differ diff --git a/Raspberry Pi/python2/pic/1in54b-r.bmp b/Raspberry Pi/python2/pic/1in54b-r.bmp deleted file mode 100644 index 68c339b..0000000 Binary files a/Raspberry Pi/python2/pic/1in54b-r.bmp and /dev/null differ diff --git a/Raspberry Pi/python2/pic/1in54c-b.bmp b/Raspberry Pi/python2/pic/1in54c-b.bmp deleted file mode 100644 index 159795e..0000000 Binary files a/Raspberry Pi/python2/pic/1in54c-b.bmp and /dev/null differ diff --git a/Raspberry Pi/python2/pic/1in54c-y.bmp b/Raspberry Pi/python2/pic/1in54c-y.bmp deleted file mode 100644 index fe37382..0000000 Binary files a/Raspberry Pi/python2/pic/1in54c-y.bmp and /dev/null differ diff --git a/Raspberry Pi/python2/pic/2in13-v2.bmp b/Raspberry Pi/python2/pic/2in13-v2.bmp deleted file mode 100644 index 5156852..0000000 Binary files a/Raspberry Pi/python2/pic/2in13-v2.bmp and /dev/null differ diff --git a/Raspberry Pi/python2/pic/2in13.bmp b/Raspberry Pi/python2/pic/2in13.bmp deleted file mode 100644 index a579e2a..0000000 Binary files a/Raspberry Pi/python2/pic/2in13.bmp and /dev/null differ diff --git a/Raspberry Pi/python2/pic/2in13bc-b.bmp b/Raspberry Pi/python2/pic/2in13bc-b.bmp deleted file mode 100644 index 6b70b26..0000000 Binary files a/Raspberry Pi/python2/pic/2in13bc-b.bmp and /dev/null differ diff --git a/Raspberry Pi/python2/pic/2in13bc-ry.bmp b/Raspberry Pi/python2/pic/2in13bc-ry.bmp deleted file mode 100644 index ec5cf02..0000000 Binary files a/Raspberry Pi/python2/pic/2in13bc-ry.bmp and /dev/null differ diff --git a/Raspberry Pi/python2/pic/2in13d.bmp b/Raspberry Pi/python2/pic/2in13d.bmp deleted file mode 100644 index 6f0a83d..0000000 Binary files a/Raspberry Pi/python2/pic/2in13d.bmp and /dev/null differ diff --git a/Raspberry Pi/python2/pic/2in7.bmp b/Raspberry Pi/python2/pic/2in7.bmp deleted file mode 100644 index 48138bb..0000000 Binary files a/Raspberry Pi/python2/pic/2in7.bmp and /dev/null differ diff --git a/Raspberry Pi/python2/pic/2in7b-b.bmp b/Raspberry Pi/python2/pic/2in7b-b.bmp deleted file mode 100644 index d25dec3..0000000 Binary files a/Raspberry Pi/python2/pic/2in7b-b.bmp and /dev/null differ diff --git a/Raspberry Pi/python2/pic/2in7b-r.bmp b/Raspberry Pi/python2/pic/2in7b-r.bmp deleted file mode 100644 index 66d51b1..0000000 Binary files a/Raspberry Pi/python2/pic/2in7b-r.bmp and /dev/null differ diff --git a/Raspberry Pi/python2/pic/2in9.bmp b/Raspberry Pi/python2/pic/2in9.bmp deleted file mode 100644 index c3e0181..0000000 Binary files a/Raspberry Pi/python2/pic/2in9.bmp and /dev/null differ diff --git a/Raspberry Pi/python2/pic/2in9bc-b.bmp b/Raspberry Pi/python2/pic/2in9bc-b.bmp deleted file mode 100644 index d45ff48..0000000 Binary files a/Raspberry Pi/python2/pic/2in9bc-b.bmp and /dev/null differ diff --git a/Raspberry Pi/python2/pic/2in9bc-ry.bmp b/Raspberry Pi/python2/pic/2in9bc-ry.bmp deleted file mode 100644 index 402727c..0000000 Binary files a/Raspberry Pi/python2/pic/2in9bc-ry.bmp and /dev/null differ diff --git a/Raspberry Pi/python2/pic/2in9d.bmp b/Raspberry Pi/python2/pic/2in9d.bmp deleted file mode 100644 index 61e0fd3..0000000 Binary files a/Raspberry Pi/python2/pic/2in9d.bmp and /dev/null differ diff --git a/Raspberry Pi/python2/pic/4in2.bmp b/Raspberry Pi/python2/pic/4in2.bmp deleted file mode 100644 index b380a1c..0000000 Binary files a/Raspberry Pi/python2/pic/4in2.bmp and /dev/null differ diff --git a/Raspberry Pi/python2/pic/4in2b-b.bmp b/Raspberry Pi/python2/pic/4in2b-b.bmp deleted file mode 100644 index 7c537a4..0000000 Binary files a/Raspberry Pi/python2/pic/4in2b-b.bmp and /dev/null differ diff --git a/Raspberry Pi/python2/pic/4in2b-r.bmp b/Raspberry Pi/python2/pic/4in2b-r.bmp deleted file mode 100644 index 3de854c..0000000 Binary files a/Raspberry Pi/python2/pic/4in2b-r.bmp and /dev/null differ diff --git a/Raspberry Pi/python2/pic/4in2c-b.bmp b/Raspberry Pi/python2/pic/4in2c-b.bmp deleted file mode 100644 index b380a1c..0000000 Binary files a/Raspberry Pi/python2/pic/4in2c-b.bmp and /dev/null differ diff --git a/Raspberry Pi/python2/pic/4in2c-y.bmp b/Raspberry Pi/python2/pic/4in2c-y.bmp deleted file mode 100644 index cd5c0d6..0000000 Binary files a/Raspberry Pi/python2/pic/4in2c-y.bmp and /dev/null differ diff --git a/Raspberry Pi/python2/pic/5in83.bmp b/Raspberry Pi/python2/pic/5in83.bmp deleted file mode 100644 index 6b8f604..0000000 Binary files a/Raspberry Pi/python2/pic/5in83.bmp and /dev/null differ diff --git a/Raspberry Pi/python2/pic/5in83bc-b.bmp b/Raspberry Pi/python2/pic/5in83bc-b.bmp deleted file mode 100644 index 545e060..0000000 Binary files a/Raspberry Pi/python2/pic/5in83bc-b.bmp and /dev/null differ diff --git a/Raspberry Pi/python2/pic/5in83bc-ry.bmp b/Raspberry Pi/python2/pic/5in83bc-ry.bmp deleted file mode 100644 index 41884b3..0000000 Binary files a/Raspberry Pi/python2/pic/5in83bc-ry.bmp and /dev/null differ diff --git a/Raspberry Pi/python2/pic/7in5.bmp b/Raspberry Pi/python2/pic/7in5.bmp deleted file mode 100644 index b997800..0000000 Binary files a/Raspberry Pi/python2/pic/7in5.bmp and /dev/null differ diff --git a/Raspberry Pi/python2/pic/7in5b-b.bmp b/Raspberry Pi/python2/pic/7in5b-b.bmp deleted file mode 100644 index 8f84025..0000000 Binary files a/Raspberry Pi/python2/pic/7in5b-b.bmp and /dev/null differ diff --git a/Raspberry Pi/python2/pic/7in5b-r.bmp b/Raspberry Pi/python2/pic/7in5b-r.bmp deleted file mode 100644 index 3f81b2c..0000000 Binary files a/Raspberry Pi/python2/pic/7in5b-r.bmp and /dev/null differ diff --git a/Raspberry Pi/python2/pic/7in5c-b.bmp b/Raspberry Pi/python2/pic/7in5c-b.bmp deleted file mode 100644 index a69ddbc..0000000 Binary files a/Raspberry Pi/python2/pic/7in5c-b.bmp and /dev/null differ diff --git a/Raspberry Pi/python2/pic/7in5c-r.bmp b/Raspberry Pi/python2/pic/7in5c-r.bmp deleted file mode 100644 index be84903..0000000 Binary files a/Raspberry Pi/python2/pic/7in5c-r.bmp and /dev/null differ diff --git a/Raspberry Pi/python2/readme_CN.txt b/Raspberry Pi/python2/readme_CN.txt deleted file mode 100644 index e44f344..0000000 --- a/Raspberry Pi/python2/readme_CN.txt +++ /dev/null @@ -1,51 +0,0 @@ -/***************************************************************************** -* | File : Readme_CN.txt -* | Author : Waveshare team -* | Function : Help with use -* | Info : -*---------------- -* | This version: V1.0 -* | Date : 2019-06-20 -* | Info : 鍦ㄨ繖閲屾彁渚涗竴涓腑鏂囩増鏈殑浣跨敤鏂囨。锛屼互渚夸綘鐨勫揩閫熶娇鐢 -******************************************************************************/ -杩欎釜鏂囦欢鏄府鍔╂偍浣跨敤鏈緥绋嬨 -鐢变簬鎴戜滑鐨勫ⅷ姘村睆瓒婃潵瓒婂锛屼笉渚夸簬鎴戜滑鐨勭淮鎶わ紝鍥犳鎶婃墍鏈夌殑澧ㄦ按灞忕▼搴忓仛鎴愪竴涓伐绋嬨 -鍦ㄨ繖閲岀畝鐣ョ殑鎻忚堪鏈伐绋嬬殑浣跨敤锛 - -1.鍩烘湰淇℃伅锛 -鏈緥绋嬫槸鍩轰簬2019-04-08-raspbian-stretch绯荤粺闀滃儚鑰屽紑鍙戠殑锛 -鏈緥绋嬪潎鍦≧aspberry Pi 3B+涓婅繘琛屼簡楠岃瘉; -鏈緥绋嬩娇鐢╡-paper Driver HAT妯″潡杩涜浜嗛獙璇侊紝浣犲彲浠ュ湪宸ョ▼鐨別xamples\涓煡鐪嬪搴旂殑娴嬭瘯渚嬬▼; - -2.绠¤剼杩炴帴锛 -绠¤剼杩炴帴浣犲彲浠ュ湪\lib\epdconfig.py涓煡鐪嬶紝杩欓噷涔熷啀閲嶈堪涓娆★細 -EPD => Jetson Nano/RPI(BCM) -VCC -> 3.3 -GND -> GND -DIN -> 10(SPI0_MOSI) -CLK -> 11(SPI0_SCK) -CS -> 8(SPI0_CS0) -DC -> 25 -RST -> 17 -BUSY -> 24 - -3.瀹夎搴擄細 - sudo apt-get update - sudo apt-get install python-pip - sudo apt-get install python-pil - sudo apt-get install python-numpy - sudo pip install RPi.GPIO - -4.鍩烘湰浣跨敤锛 -鐢变簬鏈伐绋嬫槸涓涓患鍚堝伐绋嬶紝瀵逛簬浣跨敤鑰岃█锛屼綘鍙兘闇瑕侀槄璇讳互涓嬪唴瀹癸細 -浣犲彲浠ュ湪examples\鐩綍涓煡鐪嬫祴璇曠▼搴 -璇锋敞鎰忎綘璐拱鐨勬槸鍝竴娆剧殑澧ㄦ按灞忋 -鏍楀瓙1锛 - 濡傛灉浣犺喘涔扮殑5.83inch e-paper锛岄偅涔堜綘搴旇鎵ц鍛戒护锛 - sudo python epd_5in83_test.py -鏍楀瓙2锛 - 濡傛灉浣犺喘涔扮殑2.9inch e-paper (B)锛岀敱浜2.9瀵哥殑B鍨嬪拰C鍨嬫槸鍏敤鐨勯┍鍔ㄤ唬鐮侊紝 - 閭d箞浣犲簲璇ユ墽琛屽懡浠わ細 - sudo python epd_2in9bc_test.py - -娉ㄦ剰锛氬浜巈pd_1in54_V2_test.py鍜宔pd_2in13_V2_test.py璇锋敞鎰忎綘鐨勫睆骞曡儗闈㈡槸鍚﹁创鏈塚2鏍囪瘑銆 \ No newline at end of file diff --git a/Raspberry Pi/python2/readme_EN.txt b/Raspberry Pi/python2/readme_EN.txt deleted file mode 100644 index e83e35b..0000000 --- a/Raspberry Pi/python2/readme_EN.txt +++ /dev/null @@ -1,52 +0,0 @@ -/***************************************************************************** -* | File : Readme_CN.txt -* | Author : Waveshare team -* | Function : Help with use -* | Info : -*---------------- -* | This version: V1.0 -* | Date : 2019-06-20 -* | Info : Here is an English version of the documentation for your quick use. -******************************************************************************/ -This file is to help you use this Demo. -Since our ink screens are getting more and more, it is not convenient for our maintenance, so all the ink screen programs are made into one project. -A brief description of the use of this project is here: - -1. Basic information: -This Demo was developed based on the 2019-04-08-raspbian-stretch system image; -This Demo has been verified on the Raspberry Pi 3B+; -This Demo has been verified using the e-paper Driver HAT module. -You can view the corresponding test routines in the examples\ of the project; - -2. Pin connection: -Pin connections can be viewed in \lib\epdconfig.py and will be repeated here: -EPD => Jetson Nano/RPI(BCM) -VCC -> 3.3 -GND -> GND -DIN -> 10(SPI0_MOSI) -CLK -> 11(SPI0_SCK) -CS -> 8(SPI0_CS0) -DC -> 25 -RST -> 17 -BUSY -> 24 - -3.Installation library - sudo apt-get update - sudo apt-get install python-pip - sudo apt-get install python-pil - sudo apt-get install python-numpy - sudo pip install RPi.GPIO - -4. Basic use: -Since this project is a comprehensive project, you may need to read the following for use: -You can view the test program in the examples\ directory. -Please note which ink screen you purchased. -Chestnut 1: -聽聽聽聽 If you purchased 5.83inch e-paper, then you should execute the command: -聽聽聽聽 Sudo python epd_5in83_test.py -Chestnut 2: -聽聽聽聽 If you buy a 2.9inch e-paper (B), since the 2.9-inch Type B and Type C are common driver codes, -聽聽聽聽 Then you should execute the command: -聽聽聽聽 Sudo python epd_2in9bc_test.py -聽聽聽聽 -Note: For epd_1in54_V2_test.py and epd_2in13_V2_test.py, please note that the V2 logo is attached to the back of your screen. \ No newline at end of file diff --git a/Raspberry Pi/python3/examples/epd_1in54_V2_test.py b/Raspberry Pi/python3/examples/epd_1in54_V2_test.py deleted file mode 100644 index 2e51114..0000000 --- a/Raspberry Pi/python3/examples/epd_1in54_V2_test.py +++ /dev/null @@ -1,87 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd1in54_V2 -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd1in54_V2 Demo") - - epd = epd1in54_V2.EPD() - print("init and Clear") - epd.init() - epd.Clear(0xFF) - time.sleep(1) - - # Drawing on the image - print("1.Drawing on the image...") - image = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - - draw = ImageDraw.Draw(image) - font = ImageFont.truetype('../lib/Font.ttc', 24) - draw.rectangle((0, 10, 200, 34), fill = 0) - draw.text((8, 12), 'hello world', font = font, fill = 255) - draw.text((8, 36), u'寰洩鐢靛瓙', font = font, fill = 0) - draw.line((16, 60, 56, 60), fill = 0) - draw.line((56, 60, 56, 110), fill = 0) - draw.line((16, 110, 56, 110), fill = 0) - draw.line((16, 110, 16, 60), fill = 0) - draw.line((16, 60, 56, 110), fill = 0) - draw.line((56, 60, 16, 110), fill = 0) - draw.arc((90, 60, 150, 120), 0, 360, fill = 0) - draw.rectangle((16, 130, 56, 180), fill = 0) - draw.chord((90, 130, 150, 190), 0, 360, fill = 0) - epd.display(epd.getbuffer(image.rotate(90))) - time.sleep(2) - - # read bmp file - print("2.read bmp file...") - image = Image.open('../pic/1in54.bmp') - epd.display(epd.getbuffer(image)) - time.sleep(2) - - # read bmp file on window - print("3.read bmp file on window...") - epd.Clear(0xFF) - image1 = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') - image1.paste(bmp, (50,50)) - epd.display(epd.getbuffer(image1)) - time.sleep(2) - - # partial update - print("4.show time...") - time_image = Image.new('1', (epd.width, epd.height), 255) - epd.displayPartBaseImage(epd.getbuffer(time_image)) - - time_draw = ImageDraw.Draw(time_image) - num = 0 - while (True): - time_draw.rectangle((10, 10, 120, 50), fill = 255) - time_draw.text((10, 10), time.strftime('%H:%M:%S'), font = font, fill = 0) - newimage = time_image.crop([10, 10, 120, 50]) - time_image.paste(newimage, (10,10)) - epd.displayPart(epd.getbuffer(time_image)) - num = num + 1 - if(num == 10): - break - - print("Clear...") - epd.init() - epd.Clear(0xFF) - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() \ No newline at end of file diff --git a/Raspberry Pi/python3/examples/epd_1in54b_test.py b/Raspberry Pi/python3/examples/epd_1in54b_test.py deleted file mode 100644 index d48b8e2..0000000 --- a/Raspberry Pi/python3/examples/epd_1in54b_test.py +++ /dev/null @@ -1,75 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd1in54b -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd1in54b Demo") - - epd = epd1in54b.EPD() - print("init and Clear") - epd.init() - epd.Clear() - time.sleep(1) - - # Drawing on the image - print("1.Drawing on the image...") - blackimage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - redimage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - - font = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - drawblack = ImageDraw.Draw(blackimage) - drawred = ImageDraw.Draw(redimage) - drawblack.rectangle((0, 10, 200, 34), fill = 0) - drawblack.text((8, 12), 'hello world', font = font, fill = 255) - drawblack.text((8, 36), u'寰洩鐢靛瓙', font = font18, fill = 0) - drawblack.line((16, 60, 56, 60), fill = 0) - drawblack.line((56, 60, 56, 110), fill = 0) - drawblack.line((16, 110, 56, 110), fill = 0) - drawred.line((16, 110, 16, 60), fill = 0) - drawred.line((16, 60, 56, 110), fill = 0) - drawred.line((56, 60, 16, 110), fill = 0) - drawred.arc((90, 60, 150, 120), 0, 360, fill = 0) - drawred.rectangle((16, 130, 56, 180), fill = 0) - drawred.chord((90, 130, 150, 190), 0, 360, fill = 0) - epd.display(epd.getbuffer(blackimage),epd.getbuffer(redimage)) - time.sleep(1) - - # read bmp file - print("2.read bmp file...") - blackimage = Image.open('../pic/1in54b-b.bmp') - redimage = Image.open('../pic/1in54b-r.bmp') - epd.display(epd.getbuffer(blackimage),epd.getbuffer(redimage)) - time.sleep(1) - - # read bmp file on window - print("3.read bmp file on window...") - blackimage1 = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - redimage2 = Image.new('1', (epd.width, epd.height), 255) - - newimage = Image.open('../pic/100x100.bmp') - blackimage1.paste(newimage, (50,50)) - epd.display(epd.getbuffer(blackimage1), epd.getbuffer(redimage2)) - - print("Clear...") - epd.init() - epd.Clear() - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Raspberry Pi/python3/examples/epd_1in54c_test.py b/Raspberry Pi/python3/examples/epd_1in54c_test.py deleted file mode 100644 index 7374e6d..0000000 --- a/Raspberry Pi/python3/examples/epd_1in54c_test.py +++ /dev/null @@ -1,72 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd1in54c -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd1in54c Demo") - - epd = epd1in54c.EPD() - print("init and Clear") - epd.init() - epd.Clear() - time.sleep(1) - - # Drawing on the image - print("1.Drawing on the image...") - blackimage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - yellowimage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - - font = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - drawblack = ImageDraw.Draw(blackimage) - drawyellow = ImageDraw.Draw(yellowimage) - drawblack.rectangle((0, 10, 200, 34), fill = 0) - drawblack.text((8, 12), 'hello world', font = font, fill = 255) - drawblack.text((8, 36), u'寰洩鐢靛瓙', font = font, fill = 0) - drawblack.line((10, 100, 70, 100), fill = 0) - drawblack.line((40, 70, 40, 130), fill = 0) - - drawyellow.rectangle((10, 70, 70, 130), outline = 0) - drawyellow.arc((80, 70, 140, 130), 0, 360, fill = 0) - drawyellow.chord((90, 80, 130, 120), 0, 360, fill = 0) - epd.display(epd.getbuffer(blackimage),epd.getbuffer(yellowimage)) - time.sleep(1) - - # read bmp file - print("2.read bmp file...") - blackimage = Image.open('../pic/1in54c-b.bmp') - yellowimage = Image.open('../pic/1in54c-y.bmp') - epd.display(epd.getbuffer(blackimage),epd.getbuffer(yellowimage)) - time.sleep(1) - - # read bmp file on window - print("3.read bmp file on window...") - blackimage1 = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - yellowimage2 = Image.new('1', (epd.width, epd.height), 255) - - newimage = Image.open('../pic/100x100.bmp') - blackimage1.paste(newimage, (50,50)) - epd.display(epd.getbuffer(blackimage1), epd.getbuffer(yellowimage2)) - - print("Clear...") - epd.init() - epd.Clear() - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Raspberry Pi/python3/examples/epd_2in13_V2_test.py b/Raspberry Pi/python3/examples/epd_2in13_V2_test.py deleted file mode 100644 index 85f5ee7..0000000 --- a/Raspberry Pi/python3/examples/epd_2in13_V2_test.py +++ /dev/null @@ -1,89 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd2in13_V2 -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd2in13_V2 Demo") - - epd = epd2in13_V2.EPD() - print("init and Clear") - epd.init(epd.FULL_UPDATE) - epd.Clear(0xFF) - - # Drawing on the image - font15 = ImageFont.truetype('../lib/Font.ttc', 15) - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - - print("1.Drawing on the image...") - image = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - draw = ImageDraw.Draw(image) - - draw.rectangle([(0,0),(50,50)],outline = 0) - draw.rectangle([(55,0),(100,50)],fill = 0) - draw.line([(0,0),(50,50)], fill = 0,width = 1) - draw.line([(0,50),(50,0)], fill = 0,width = 1) - draw.chord((10, 60, 50, 100), 0, 360, fill = 0) - draw.ellipse((55, 60, 95, 100), outline = 0) - draw.pieslice((55, 60, 95, 100), 90, 180, outline = 0) - draw.pieslice((55, 60, 95, 100), 270, 360, fill = 0) - draw.polygon([(110,0),(110,50),(150,25)],outline = 0) - draw.polygon([(190,0),(190,50),(150,25)],fill = 0) - draw.text((120, 60), 'e-Paper demo', font = font15, fill = 0) - draw.text((110, 90), u'寰洩鐢靛瓙', font = font24, fill = 0) - epd.display(epd.getbuffer(image)) - time.sleep(2) - - # read bmp file - print("2.read bmp file...") - image = Image.open('../pic/2in13.bmp') - epd.display(epd.getbuffer(image)) - time.sleep(2) - - # read bmp file on window - print("3.read bmp file on window...") - # epd.Clear(0xFF) - image1 = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') - image1.paste(bmp, (2,2)) - epd.display(epd.getbuffer(image1)) - time.sleep(2) - - # # partial update - print("4.show time...") - time_image = Image.new('1', (epd.height, epd.width), 255) - time_draw = ImageDraw.Draw(time_image) - - epd.init(epd.FULL_UPDATE) - epd.displayPartBaseImage(epd.getbuffer(time_image)) - - epd.init(epd.PART_UPDATE) - num = 0 - while (True): - time_draw.rectangle((120, 80, 220, 105), fill = 255) - time_draw.text((120, 80), time.strftime('%H:%M:%S'), font = font24, fill = 0) - epd.displayPartial(epd.getbuffer(time_image)) - num = num + 1 - if(num == 10): - break - - print("Clear...") - epd.init(epd.FULL_UPDATE) - epd.Clear(0xFF) - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Raspberry Pi/python3/examples/epd_2in13_test.py b/Raspberry Pi/python3/examples/epd_2in13_test.py deleted file mode 100644 index 1081d79..0000000 --- a/Raspberry Pi/python3/examples/epd_2in13_test.py +++ /dev/null @@ -1,87 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd2in13 -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd2in13 Demo") - - epd = epd2in13.EPD() - print("init and Clear") - epd.init(epd.lut_full_update) - epd.Clear(0xFF) - - # Drawing on the image - font15 = ImageFont.truetype('../lib/Font.ttc', 15) - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - - print("1.Drawing on the image...") - image = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - draw = ImageDraw.Draw(image) - - draw.rectangle([(0,0),(50,50)],outline = 0) - draw.rectangle([(55,0),(100,50)],fill = 0) - draw.line([(0,0),(50,50)], fill = 0,width = 1) - draw.line([(0,50),(50,0)], fill = 0,width = 1) - draw.chord((10, 60, 50, 100), 0, 360, fill = 0) - draw.ellipse((55, 60, 95, 100), outline = 0) - draw.pieslice((55, 60, 95, 100), 90, 180, outline = 0) - draw.pieslice((55, 60, 95, 100), 270, 360, fill = 0) - draw.polygon([(110,0),(110,50),(150,25)],outline = 0) - draw.polygon([(190,0),(190,50),(150,25)],fill = 0) - draw.text((120, 60), 'e-Paper demo', font = font15, fill = 0) - draw.text((110, 90), u'寰洩鐢靛瓙', font = font24, fill = 0) - epd.display(epd.getbuffer(image)) - time.sleep(2) - - # read bmp file - print("2.read bmp file...") - image = Image.open('../pic/2in13.bmp') - epd.display(epd.getbuffer(image)) - time.sleep(2) - - # read bmp file on window - print("3.read bmp file on window...") - # epd.Clear(0xFF) - image1 = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') - image1.paste(bmp, (2,2)) - epd.display(epd.getbuffer(image1)) - time.sleep(2) - - # # partial update - print("4.show time...") - epd.init(epd.lut_partial_update) - epd.Clear(0xFF) - - time_image = Image.new('1', (epd.height, epd.width), 255) - time_draw = ImageDraw.Draw(time_image) - num = 0 - while (True): - time_draw.rectangle((120, 80, 220, 105), fill = 255) - time_draw.text((120, 80), time.strftime('%H:%M:%S'), font = font24, fill = 0) - epd.display(epd.getbuffer(time_image)) - num = num + 1 - if(num == 10): - break - - print("Clear...") - epd.init(epd.lut_full_update) - epd.Clear(0xFF) - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Raspberry Pi/python3/examples/epd_2in13bc_test.py b/Raspberry Pi/python3/examples/epd_2in13bc_test.py deleted file mode 100644 index ad24c87..0000000 --- a/Raspberry Pi/python3/examples/epd_2in13bc_test.py +++ /dev/null @@ -1,91 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd2in13bc -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd2in13bc Demo") - - epd = epd2in13bc.EPD() - print("init and Clear") - epd.init() - epd.Clear() - time.sleep(1) - - # Drawing on the image - print("Drawing") - font20 = ImageFont.truetype('../lib/Font.ttc', 20) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - HBlackimage = Image.new('1', (epd.height, epd.width), 255) # 298*126 - HRYimage = Image.new('1', (epd.height, epd.width), 255) # 298*126 ryimage: red or yellow image - drawblack = ImageDraw.Draw(HBlackimage) - drawry = ImageDraw.Draw(HRYimage) - drawblack.text((10, 0), 'hello world', font = font20, fill = 0) - drawblack.text((10, 20), '2.13inch e-Paper bc', font = font20, fill = 0) - drawblack.text((120, 0), u'寰洩鐢靛瓙', font = font20, fill = 0) - drawblack.line((20, 50, 70, 100), fill = 0) - drawblack.line((70, 50, 20, 100), fill = 0) - drawblack.rectangle((20, 50, 70, 100), outline = 0) - drawry.line((165, 50, 165, 100), fill = 0) - drawry.line((140, 75, 190, 75), fill = 0) - drawry.arc((140, 50, 190, 100), 0, 360, fill = 0) - drawry.rectangle((80, 50, 130, 100), fill = 0) - drawry.chord((85, 55, 125, 95), 0, 360, fill =1) - epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRYimage)) - time.sleep(2) - - # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") - LBlackimage = Image.new('1', (epd.width, epd.height), 255) # 126*298 - LRYimage = Image.new('1', (epd.width, epd.height), 255) # 126*298 - drawblack = ImageDraw.Draw(LBlackimage) - drawry = ImageDraw.Draw(LRYimage) - - drawblack.text((2, 0), 'hello world', font = font18, fill = 0) - drawblack.text((2, 20), '2.13 epd b', font = font18, fill = 0) - drawblack.text((20, 50), u'寰洩鐢靛瓙', font = font18, fill = 0) - drawblack.line((10, 90, 60, 140), fill = 0) - drawblack.line((60, 90, 10, 140), fill = 0) - drawblack.rectangle((10, 90, 60, 140), outline = 0) - drawry.rectangle((10, 150, 60, 200), fill = 0) - drawry.arc((15, 95, 55, 135), 0, 360, fill = 0) - drawry.chord((15, 155, 55, 195), 0, 360, fill =1) - epd.display(epd.getbuffer(LBlackimage), epd.getbuffer(LRYimage)) - time.sleep(2) - - print("3.read bmp file") - HBlackimage = Image.open('../pic/2in13bc-b.bmp') - HRYimage = Image.open('../pic/2in13bc-ry.bmp') - epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRYimage)) - time.sleep(2) - - print("4.read bmp file on window") - blackimage1 = Image.new('1', (epd.height, epd.width), 255) # 298*126 - redimage1 = Image.new('1', (epd.height, epd.width), 255) # 298*126 - newimage = Image.open('../pic/100x100.bmp') - blackimage1.paste(newimage, (10,10)) - epd.display(epd.getbuffer(blackimage1), epd.getbuffer(redimage1)) - - print("Clear...") - epd.init() - epd.Clear() - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Raspberry Pi/python3/examples/epd_2in13d_test.py b/Raspberry Pi/python3/examples/epd_2in13d_test.py deleted file mode 100644 index 883ccb3..0000000 --- a/Raspberry Pi/python3/examples/epd_2in13d_test.py +++ /dev/null @@ -1,83 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd2in13d -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd2in13d Demo") - - epd = epd2in13d.EPD() - print("init and Clear") - epd.init() - epd.Clear(0xFF) - - font15 = ImageFont.truetype('../lib/Font.ttc', 15) - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - Himage = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - draw = ImageDraw.Draw(Himage) - draw.rectangle([(0,0),(50,50)],outline = 0) - draw.rectangle([(55,0),(100,50)],fill = 0) - draw.line([(0,0),(50,50)], fill = 0,width = 1) - draw.line([(0,50),(50,0)], fill = 0,width = 1) - draw.chord((10, 60, 50, 100), 0, 360, fill = 0) - draw.ellipse((55, 60, 95, 100), outline = 0) - draw.pieslice((55, 60, 95, 100), 90, 180, outline = 0) - draw.pieslice((55, 60, 95, 100), 270, 360, fill = 0) - draw.polygon([(110,0),(110,50),(150,25)],outline = 0) - draw.polygon([(190,0),(190,50),(150,25)],fill = 0) - draw.text((110, 60), 'e-Paper demo', font = font15, fill = 0) - draw.text((110, 80), u'寰洩鐢靛瓙', font = font15, fill = 0) - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - print("3.read bmp file") - Himage = Image.open('../pic/2in13d.bmp') - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - print("4.read bmp file on window") - Himage2 = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') - Himage2.paste(bmp, (20,20)) - epd.display(epd.getbuffer(Himage2)) - time.sleep(2) - - # # partial update - print("5.show time...") - epd.init() - epd.Clear(0xFF) - - time_image = Image.new('1', (epd.width, epd.height), 255) - time_draw = ImageDraw.Draw(time_image) - num = 0 - while (True): - time_draw.rectangle((10, 10, 120, 50), fill = 255) - time_draw.text((10, 10), time.strftime('%H:%M:%S'), font = font24, fill = 0) - newimage = time_image.crop([10, 10, 120, 50]) - time_image.paste(newimage, (10,10)) - epd.DisplayPartial(epd.getbuffer(time_image)) - num = num + 1 - if(num == 10): - break - - print("Clear...") - epd.Clear(0xFF) - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Raspberry Pi/python3/examples/epd_2in7_test.py b/Raspberry Pi/python3/examples/epd_2in7_test.py deleted file mode 100644 index 24a7c43..0000000 --- a/Raspberry Pi/python3/examples/epd_2in7_test.py +++ /dev/null @@ -1,81 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd2in7 -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd2in7 Demo") - - epd = epd2in7.EPD() - print("init and Clear") - epd.init() - epd.Clear(0xFF) - - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - Himage = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - draw = ImageDraw.Draw(Himage) - draw.text((10, 0), 'hello world', font = font24, fill = 0) - draw.text((150, 0), u'寰洩鐢靛瓙', font = font24, fill = 0) - draw.line((20, 50, 70, 100), fill = 0) - draw.line((70, 50, 20, 100), fill = 0) - draw.rectangle((20, 50, 70, 100), outline = 0) - draw.line((165, 50, 165, 100), fill = 0) - draw.line((140, 75, 190, 75), fill = 0) - draw.arc((140, 50, 190, 100), 0, 360, fill = 0) - draw.rectangle((80, 50, 130, 100), fill = 0) - draw.chord((200, 50, 250, 100), 0, 360, fill = 0) - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") - Limage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - draw = ImageDraw.Draw(Limage) - draw.text((2, 0), 'hello world', font = font18, fill = 0) - draw.text((20, 50), u'寰洩鐢靛瓙', font = font18, fill = 0) - draw.line((10, 90, 60, 140), fill = 0) - draw.line((60, 90, 10, 140), fill = 0) - draw.rectangle((10, 90, 60, 140), outline = 0) - draw.line((95, 90, 95, 140), fill = 0) - draw.line((70, 115, 120, 115), fill = 0) - draw.arc((70, 90, 120, 140), 0, 360, fill = 0) - draw.rectangle((10, 150, 60, 200), fill = 0) - draw.chord((70, 150, 120, 200), 0, 360, fill = 0) - epd.display(epd.getbuffer(Limage)) - time.sleep(2) - - print("3.read bmp file") - Himage = Image.open('../pic/2in7.bmp') - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - print("4.read bmp file on window") - Himage2 = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') - Himage2.paste(bmp, (50,10)) - epd.display(epd.getbuffer(Himage2)) - time.sleep(2) - - print("Clear...") - epd.Clear(0xFF) - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Raspberry Pi/python3/examples/epd_2in7b_test.py b/Raspberry Pi/python3/examples/epd_2in7b_test.py deleted file mode 100644 index ece7390..0000000 --- a/Raspberry Pi/python3/examples/epd_2in7b_test.py +++ /dev/null @@ -1,98 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd2in7b -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd2in7b Demo") - - epd = epd2in7b.EPD() - print("init and Clear") - epd.init() - epd.Clear() - time.sleep(1) - - # Drawing on the image - print("Drawing") - blackimage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - redimage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - HBlackimage = Image.new('1', (epd.height, epd.width), 255) # 298*126 - HRedimage = Image.new('1', (epd.height, epd.width), 255) # 298*126 - - drawblack = ImageDraw.Draw(HBlackimage) - drawred = ImageDraw.Draw(HRedimage) - drawblack.text((10, 0), 'hello world', font = font24, fill = 0) - drawblack.text((10, 20), '2.9inch e-Paper', font = font24, fill = 0) - drawblack.text((150, 0), u'寰洩鐢靛瓙', font = font24, fill = 0) - drawblack.line((20, 50, 70, 100), fill = 0) - drawblack.line((70, 50, 20, 100), fill = 0) - drawblack.rectangle((20, 50, 70, 100), outline = 0) - drawred.line((165, 50, 165, 100), fill = 0) - drawred.line((140, 75, 190, 75), fill = 0) - drawred.arc((140, 50, 190, 100), 0, 360, fill = 0) - drawred.rectangle((80, 50, 130, 100), fill = 0) - drawred.chord((200, 50, 250, 100), 0, 360, fill = 0) - epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRedimage)) - time.sleep(2) - - # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") - LBlackimage = Image.new('1', (epd.width, epd.height), 255) # 126*298 - LRedimage = Image.new('1', (epd.width, epd.height), 255) # 126*298 - drawblack = ImageDraw.Draw(LBlackimage) - drawred = ImageDraw.Draw(LRedimage) - - drawblack.text((2, 0), 'hello world', font = font18, fill = 0) - drawblack.text((2, 20), '2.9inch epd', font = font18, fill = 0) - drawblack.text((20, 50), u'寰洩鐢靛瓙', font = font18, fill = 0) - drawblack.line((10, 90, 60, 140), fill = 0) - drawblack.line((60, 90, 10, 140), fill = 0) - drawblack.rectangle((10, 90, 60, 140), outline = 0) - drawred.line((95, 90, 95, 140), fill = 0) - drawred.line((70, 115, 120, 115), fill = 0) - drawred.arc((70, 90, 120, 140), 0, 360, fill = 0) - drawred.rectangle((10, 150, 60, 200), fill = 0) - drawred.chord((70, 150, 120, 200), 0, 360, fill = 0) - epd.display(epd.getbuffer(LBlackimage), epd.getbuffer(LRedimage)) - time.sleep(2) - - print("3.read bmp file") - HBlackimage = Image.open('../pic/2in7b-b.bmp') - HRedimage = Image.open('../pic/2in7b-r.bmp') - epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRedimage)) - time.sleep(2) - - print("4.read bmp file on window") - blackimage1 = Image.new('1', (epd.height, epd.width), 255) # 298*126 - redimage1 = Image.new('1', (epd.height, epd.width), 255) # 298*126 - newimage = Image.open('../pic/100x100.bmp') - blackimage1.paste(newimage, (50,10)) - epd.display(epd.getbuffer(blackimage1), epd.getbuffer(redimage1)) - - print("Clear...") - epd.init() - epd.Clear() - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Raspberry Pi/python3/examples/epd_2in9_test.py b/Raspberry Pi/python3/examples/epd_2in9_test.py deleted file mode 100644 index 59c7ca1..0000000 --- a/Raspberry Pi/python3/examples/epd_2in9_test.py +++ /dev/null @@ -1,102 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd2in9 -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd2in9 Demo") - - epd = epd2in9.EPD() - print("init and Clear") - epd.init(epd.lut_full_update) - epd.Clear(0xFF) - - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - Himage = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - draw = ImageDraw.Draw(Himage) - draw.text((10, 0), 'hello world', font = font24, fill = 0) - draw.text((10, 20), '2.9inch e-Paper', font = font24, fill = 0) - draw.text((150, 0), u'寰洩鐢靛瓙', font = font24, fill = 0) - draw.line((20, 50, 70, 100), fill = 0) - draw.line((70, 50, 20, 100), fill = 0) - draw.rectangle((20, 50, 70, 100), outline = 0) - draw.line((165, 50, 165, 100), fill = 0) - draw.line((140, 75, 190, 75), fill = 0) - draw.arc((140, 50, 190, 100), 0, 360, fill = 0) - draw.rectangle((80, 50, 130, 100), fill = 0) - draw.chord((200, 50, 250, 100), 0, 360, fill = 0) - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") - Limage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - draw = ImageDraw.Draw(Limage) - draw.text((2, 0), 'hello world', font = font18, fill = 0) - draw.text((2, 20), '2.9inch epd', font = font18, fill = 0) - draw.text((20, 50), u'寰洩鐢靛瓙', font = font18, fill = 0) - draw.line((10, 90, 60, 140), fill = 0) - draw.line((60, 90, 10, 140), fill = 0) - draw.rectangle((10, 90, 60, 140), outline = 0) - draw.line((95, 90, 95, 140), fill = 0) - draw.line((70, 115, 120, 115), fill = 0) - draw.arc((70, 90, 120, 140), 0, 360, fill = 0) - draw.rectangle((10, 150, 60, 200), fill = 0) - draw.chord((70, 150, 120, 200), 0, 360, fill = 0) - epd.display(epd.getbuffer(Limage)) - time.sleep(2) - - print("3.read bmp file") - Himage = Image.open('../pic/2in9.bmp') - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - print("4.read bmp file on window") - Himage2 = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') - Himage2.paste(bmp, (50,10)) - epd.display(epd.getbuffer(Himage2)) - time.sleep(2) - - # partial update - print("5.show time") - epd.init(epd.lut_partial_update) - epd.Clear(0xFF) - time_image = Image.new('1', (epd.height, epd.width), 255) - time_draw = ImageDraw.Draw(time_image) - num = 0 - while (True): - time_draw.rectangle((10, 10, 120, 50), fill = 255) - time_draw.text((10, 10), time.strftime('%H:%M:%S'), font = font24, fill = 0) - newimage = time_image.crop([10, 10, 120, 50]) - time_image.paste(newimage, (10,10)) - epd.display(epd.getbuffer(time_image)) - - num = num + 1 - if(num == 10): - break - - print("Clear...") - epd.init(epd.lut_full_update) - epd.Clear(0xFF) - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Raspberry Pi/python3/examples/epd_2in9bc_test.py b/Raspberry Pi/python3/examples/epd_2in9bc_test.py deleted file mode 100644 index b16809d..0000000 --- a/Raspberry Pi/python3/examples/epd_2in9bc_test.py +++ /dev/null @@ -1,93 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd2in9bc -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd2in9bc Demo") - - epd = epd2in9bc.EPD() - print("init and Clear") - epd.init() - epd.Clear() - time.sleep(1) - - # Drawing on the image - print("Drawing") - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - HBlackimage = Image.new('1', (epd.height, epd.width), 255) # 298*126 - HRYimage = Image.new('1', (epd.height, epd.width), 255) # 298*126 ryimage: red or yellow image - drawblack = ImageDraw.Draw(HBlackimage) - drawry = ImageDraw.Draw(HRYimage) - drawblack.text((10, 0), 'hello world', font = font24, fill = 0) - drawblack.text((10, 20), '2.9inch e-Paper bc', font = font24, fill = 0) - drawblack.text((150, 0), u'寰洩鐢靛瓙', font = font24, fill = 0) - drawblack.line((20, 50, 70, 100), fill = 0) - drawblack.line((70, 50, 20, 100), fill = 0) - drawblack.rectangle((20, 50, 70, 100), outline = 0) - drawry.line((165, 50, 165, 100), fill = 0) - drawry.line((140, 75, 190, 75), fill = 0) - drawry.arc((140, 50, 190, 100), 0, 360, fill = 0) - drawry.rectangle((80, 50, 130, 100), fill = 0) - drawry.chord((200, 50, 250, 100), 0, 360, fill = 0) - epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRYimage)) - time.sleep(2) - - # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") - LBlackimage = Image.new('1', (epd.width, epd.height), 255) # 126*298 - LRYimage = Image.new('1', (epd.width, epd.height), 255) # 126*298 - drawblack = ImageDraw.Draw(LBlackimage) - drawry = ImageDraw.Draw(LRYimage) - - drawblack.text((2, 0), 'hello world', font = font18, fill = 0) - drawblack.text((2, 20), '2.9inch epd bc', font = font18, fill = 0) - drawblack.text((20, 50), u'寰洩鐢靛瓙', font = font18, fill = 0) - drawblack.line((10, 90, 60, 140), fill = 0) - drawblack.line((60, 90, 10, 140), fill = 0) - drawblack.rectangle((10, 90, 60, 140), outline = 0) - drawry.line((95, 90, 95, 140), fill = 0) - drawry.line((70, 115, 120, 115), fill = 0) - drawry.arc((70, 90, 120, 140), 0, 360, fill = 0) - drawry.rectangle((10, 150, 60, 200), fill = 0) - drawry.chord((70, 150, 120, 200), 0, 360, fill = 0) - epd.display(epd.getbuffer(LBlackimage), epd.getbuffer(LRYimage)) - time.sleep(2) - - print("3.read bmp file") - HBlackimage = Image.open('../pic/2in9bc-b.bmp') - HRYimage = Image.open('../pic/2in9bc-ry.bmp') - epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRYimage)) - time.sleep(2) - - print("4.read bmp file on window") - blackimage1 = Image.new('1', (epd.height, epd.width), 255) # 298*126 - redimage1 = Image.new('1', (epd.height, epd.width), 255) # 298*126 - newimage = Image.open('../pic/100x100.bmp') - blackimage1.paste(newimage, (50,10)) - epd.display(epd.getbuffer(blackimage1), epd.getbuffer(redimage1)) - - print("Clear...") - epd.init() - epd.Clear() - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Raspberry Pi/python3/examples/epd_2in9d_test.py b/Raspberry Pi/python3/examples/epd_2in9d_test.py deleted file mode 100644 index 34f5f71..0000000 --- a/Raspberry Pi/python3/examples/epd_2in9d_test.py +++ /dev/null @@ -1,101 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd2in9d -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd2in9d Demo") - - epd = epd2in9d.EPD() - print("init and Clear") - epd.init() - epd.Clear(0xFF) - - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - Himage = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - draw = ImageDraw.Draw(Himage) - draw.text((10, 0), 'hello world', font = font24, fill = 0) - draw.text((10, 20), '2.9inch e-Paper d', font = font24, fill = 0) - draw.text((150, 0), u'寰洩鐢靛瓙', font = font24, fill = 0) - draw.line((20, 50, 70, 100), fill = 0) - draw.line((70, 50, 20, 100), fill = 0) - draw.rectangle((20, 50, 70, 100), outline = 0) - draw.line((165, 50, 165, 100), fill = 0) - draw.line((140, 75, 190, 75), fill = 0) - draw.arc((140, 50, 190, 100), 0, 360, fill = 0) - draw.rectangle((80, 50, 130, 100), fill = 0) - draw.chord((200, 50, 250, 100), 0, 360, fill = 0) - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") - Limage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - draw = ImageDraw.Draw(Limage) - draw.text((2, 0), 'hello world', font = font18, fill = 0) - draw.text((2, 20), '2.9inch epd d', font = font18, fill = 0) - draw.text((20, 50), u'寰洩鐢靛瓙', font = font18, fill = 0) - draw.line((10, 90, 60, 140), fill = 0) - draw.line((60, 90, 10, 140), fill = 0) - draw.rectangle((10, 90, 60, 140), outline = 0) - draw.line((95, 90, 95, 140), fill = 0) - draw.line((70, 115, 120, 115), fill = 0) - draw.arc((70, 90, 120, 140), 0, 360, fill = 0) - draw.rectangle((10, 150, 60, 200), fill = 0) - draw.chord((70, 150, 120, 200), 0, 360, fill = 0) - epd.display(epd.getbuffer(Limage)) - time.sleep(2) - - print("3.read bmp file") - Himage = Image.open('../pic/2in9d.bmp') - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - print("4.read bmp file on window") - Himage2 = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') - Himage2.paste(bmp, (50,10)) - epd.display(epd.getbuffer(Himage2)) - time.sleep(2) - - # # partial update - print("5.show time...") - epd.init() - epd.Clear(0xFF) - - time_image = Image.new('1', (epd.width, epd.height), 255) - time_draw = ImageDraw.Draw(time_image) - num = 0 - while (True): - time_draw.rectangle((10, 10, 120, 50), fill = 255) - time_draw.text((10, 10), time.strftime('%H:%M:%S'), font = font24, fill = 0) - newimage = time_image.crop([10, 10, 120, 50]) - time_image.paste(newimage, (10,10)) - epd.display(epd.getbuffer(time_image)) - num = num + 1 - if(num == 10): - break - - print("Clear...") - epd.Clear(0xFF) - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Raspberry Pi/python3/examples/epd_4in2_test.py b/Raspberry Pi/python3/examples/epd_4in2_test.py deleted file mode 100644 index 6343f58..0000000 --- a/Raspberry Pi/python3/examples/epd_4in2_test.py +++ /dev/null @@ -1,84 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd4in2 -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd4in2 Demo") - - epd = epd4in2.EPD() - print("init and Clear") - epd.init() - epd.Clear() - - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - Himage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - draw = ImageDraw.Draw(Himage) - draw.text((10, 0), 'hello world', font = font24, fill = 0) - draw.text((10, 20), '4.2inch e-Paper', font = font24, fill = 0) - draw.text((150, 0), u'寰洩鐢靛瓙', font = font24, fill = 0) - draw.line((20, 50, 70, 100), fill = 0) - draw.line((70, 50, 20, 100), fill = 0) - draw.rectangle((20, 50, 70, 100), outline = 0) - draw.line((165, 50, 165, 100), fill = 0) - draw.line((140, 75, 190, 75), fill = 0) - draw.arc((140, 50, 190, 100), 0, 360, fill = 0) - draw.rectangle((80, 50, 130, 100), fill = 0) - draw.chord((200, 50, 250, 100), 0, 360, fill = 0) - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") - Limage = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - draw = ImageDraw.Draw(Limage) - draw.text((2, 0), 'hello world', font = font18, fill = 0) - draw.text((2, 20), '4.2inch epd', font = font18, fill = 0) - draw.text((20, 50), u'寰洩鐢靛瓙', font = font18, fill = 0) - draw.line((10, 90, 60, 140), fill = 0) - draw.line((60, 90, 10, 140), fill = 0) - draw.rectangle((10, 90, 60, 140), outline = 0) - draw.line((95, 90, 95, 140), fill = 0) - draw.line((70, 115, 120, 115), fill = 0) - draw.arc((70, 90, 120, 140), 0, 360, fill = 0) - draw.rectangle((10, 150, 60, 200), fill = 0) - draw.chord((70, 150, 120, 200), 0, 360, fill = 0) - epd.display(epd.getbuffer(Limage)) - time.sleep(2) - - print("3.read bmp file") - Himage = Image.open('../pic/4in2.bmp') - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - print("4.read bmp file on window") - Himage2 = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') - Himage2.paste(bmp, (50,10)) - epd.display(epd.getbuffer(Himage2)) - time.sleep(2) - - print("Clear...") - epd.init() - epd.Clear() - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Raspberry Pi/python3/examples/epd_4in2bc_test.py b/Raspberry Pi/python3/examples/epd_4in2bc_test.py deleted file mode 100644 index ad1abda..0000000 --- a/Raspberry Pi/python3/examples/epd_4in2bc_test.py +++ /dev/null @@ -1,95 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd4in2bc -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd4in2bc Demo") - - epd = epd4in2bc.EPD() - print("init and Clear") - epd.init() - epd.Clear() - time.sleep(1) - - # Drawing on the image - print("Drawing") - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - HBlackimage = Image.new('1', (epd.width, epd.height), 255) # 298*126 - HRYimage = Image.new('1', (epd.width, epd.height), 255) # 298*126 ryimage: red or yellow image - drawblack = ImageDraw.Draw(HBlackimage) - drawry = ImageDraw.Draw(HRYimage) - drawblack.text((10, 0), 'hello world', font = font24, fill = 0) - drawblack.text((10, 20), '4.2inch e-Paper bc', font = font24, fill = 0) - drawblack.text((150, 0), u'寰洩鐢靛瓙', font = font24, fill = 0) - drawblack.line((20, 50, 70, 100), fill = 0) - drawblack.line((70, 50, 20, 100), fill = 0) - drawblack.rectangle((20, 50, 70, 100), outline = 0) - drawry.line((165, 50, 165, 100), fill = 0) - drawry.line((140, 75, 190, 75), fill = 0) - drawry.arc((140, 50, 190, 100), 0, 360, fill = 0) - drawry.rectangle((80, 50, 130, 100), fill = 0) - drawry.chord((200, 50, 250, 100), 0, 360, fill = 0) - epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRYimage)) - time.sleep(2) - - # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") - LBlackimage = Image.new('1', (epd.height, epd.width), 255) # 126*298 - LRYimage = Image.new('1', (epd.height, epd.width), 255) # 126*298 - drawblack = ImageDraw.Draw(LBlackimage) - drawry = ImageDraw.Draw(LRYimage) - - drawblack.text((2, 0), 'hello world', font = font18, fill = 0) - drawblack.text((2, 20), '4.2inch epd bc', font = font18, fill = 0) - drawblack.text((20, 50), u'寰洩鐢靛瓙', font = font18, fill = 0) - drawblack.line((10, 90, 60, 140), fill = 0) - drawblack.line((60, 90, 10, 140), fill = 0) - drawblack.rectangle((10, 90, 60, 140), outline = 0) - drawry.line((95, 90, 95, 140), fill = 0) - drawry.line((70, 115, 120, 115), fill = 0) - drawry.arc((70, 90, 120, 140), 0, 360, fill = 0) - drawry.rectangle((10, 150, 60, 200), fill = 0) - drawry.chord((70, 150, 120, 200), 0, 360, fill = 0) - epd.display(epd.getbuffer(LBlackimage), epd.getbuffer(LRYimage)) - time.sleep(2) - - print("3.read bmp file") - HBlackimage = Image.open('../pic/4in2b-b.bmp') - HRYimage = Image.open('../pic/4in2b-r.bmp') - # HBlackimage = Image.open('../pic/4in2c-b.bmp') - # HRYimage = Image.open('../pic/4in2c-y.bmp') - epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRYimage)) - time.sleep(2) - - print("4.read bmp file on window") - blackimage1 = Image.new('1', (epd.width, epd.height), 255) # 298*126 - redimage1 = Image.new('1', (epd.width, epd.height), 255) # 298*126 - newimage = Image.open('../pic/100x100.bmp') - blackimage1.paste(newimage, (50,10)) - epd.display(epd.getbuffer(blackimage1), epd.getbuffer(redimage1)) - - print("Clear...") - epd.init() - epd.Clear() - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Raspberry Pi/python3/examples/epd_5in83_test.py b/Raspberry Pi/python3/examples/epd_5in83_test.py deleted file mode 100644 index cb7858c..0000000 --- a/Raspberry Pi/python3/examples/epd_5in83_test.py +++ /dev/null @@ -1,84 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd5in83 -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd5in83 Demo") - - epd = epd5in83.EPD() - print("init and Clear") - epd.init() - epd.Clear() - - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - Himage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - draw = ImageDraw.Draw(Himage) - draw.text((10, 0), 'hello world', font = font24, fill = 0) - draw.text((10, 20), '5.83inch e-Paper', font = font24, fill = 0) - draw.text((150, 0), u'寰洩鐢靛瓙', font = font24, fill = 0) - draw.line((20, 50, 70, 100), fill = 0) - draw.line((70, 50, 20, 100), fill = 0) - draw.rectangle((20, 50, 70, 100), outline = 0) - draw.line((165, 50, 165, 100), fill = 0) - draw.line((140, 75, 190, 75), fill = 0) - draw.arc((140, 50, 190, 100), 0, 360, fill = 0) - draw.rectangle((80, 50, 130, 100), fill = 0) - draw.chord((200, 50, 250, 100), 0, 360, fill = 0) - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") - Limage = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - draw = ImageDraw.Draw(Limage) - draw.text((2, 0), 'hello world', font = font18, fill = 0) - draw.text((2, 20), '5.83inch epd', font = font18, fill = 0) - draw.text((20, 50), u'寰洩鐢靛瓙', font = font18, fill = 0) - draw.line((10, 90, 60, 140), fill = 0) - draw.line((60, 90, 10, 140), fill = 0) - draw.rectangle((10, 90, 60, 140), outline = 0) - draw.line((95, 90, 95, 140), fill = 0) - draw.line((70, 115, 120, 115), fill = 0) - draw.arc((70, 90, 120, 140), 0, 360, fill = 0) - draw.rectangle((10, 150, 60, 200), fill = 0) - draw.chord((70, 150, 120, 200), 0, 360, fill = 0) - epd.display(epd.getbuffer(Limage)) - time.sleep(2) - - print("3.read bmp file") - Himage = Image.open('../pic/5in83.bmp') - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - print("4.read bmp file on window") - Himage2 = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') - Himage2.paste(bmp, (50,10)) - epd.display(epd.getbuffer(Himage2)) - time.sleep(2) - - print("Clear...") - epd.init() - epd.Clear() - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Raspberry Pi/python3/examples/epd_5in83bc_test.py b/Raspberry Pi/python3/examples/epd_5in83bc_test.py deleted file mode 100644 index b5e3b39..0000000 --- a/Raspberry Pi/python3/examples/epd_5in83bc_test.py +++ /dev/null @@ -1,93 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd5in83bc -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd5in83bc Demo") - - epd = epd5in83bc.EPD() - print("init and Clear") - epd.init() - epd.Clear() - time.sleep(1) - - # Drawing on the image - print("Drawing") - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - HBlackimage = Image.new('1', (epd.width, epd.height), 255) # 298*126 - HRYimage = Image.new('1', (epd.width, epd.height), 255) # 298*126 ryimage: red or yellow image - drawblack = ImageDraw.Draw(HBlackimage) - drawry = ImageDraw.Draw(HRYimage) - drawblack.text((10, 0), 'hello world', font = font24, fill = 0) - drawblack.text((10, 20), '5.83inch e-Paper bc', font = font24, fill = 0) - drawblack.text((150, 0), u'寰洩鐢靛瓙', font = font24, fill = 0) - drawblack.line((20, 50, 70, 100), fill = 0) - drawblack.line((70, 50, 20, 100), fill = 0) - drawblack.rectangle((20, 50, 70, 100), outline = 0) - drawry.line((165, 50, 165, 100), fill = 0) - drawry.line((140, 75, 190, 75), fill = 0) - drawry.arc((140, 50, 190, 100), 0, 360, fill = 0) - drawry.rectangle((80, 50, 130, 100), fill = 0) - drawry.chord((200, 50, 250, 100), 0, 360, fill = 0) - epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRYimage)) - time.sleep(2) - - # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") - LBlackimage = Image.new('1', (epd.height, epd.width), 255) # 126*298 - LRYimage = Image.new('1', (epd.height, epd.width), 255) # 126*298 - drawblack = ImageDraw.Draw(LBlackimage) - drawry = ImageDraw.Draw(LRYimage) - - drawblack.text((2, 0), 'hello world', font = font18, fill = 0) - drawblack.text((2, 20), '5.83inch epd bc', font = font18, fill = 0) - drawblack.text((20, 50), u'寰洩鐢靛瓙', font = font18, fill = 0) - drawblack.line((10, 90, 60, 140), fill = 0) - drawblack.line((60, 90, 10, 140), fill = 0) - drawblack.rectangle((10, 90, 60, 140), outline = 0) - drawry.line((95, 90, 95, 140), fill = 0) - drawry.line((70, 115, 120, 115), fill = 0) - drawry.arc((70, 90, 120, 140), 0, 360, fill = 0) - drawry.rectangle((10, 150, 60, 200), fill = 0) - drawry.chord((70, 150, 120, 200), 0, 360, fill = 0) - epd.display(epd.getbuffer(LBlackimage), epd.getbuffer(LRYimage)) - time.sleep(2) - - print("3.read bmp file") - HBlackimage = Image.open('../pic/5in83bc-b.bmp') - HRYimage = Image.open('../pic/5in83bc-ry.bmp') - epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRYimage)) - time.sleep(2) - - print("4.read bmp file on window") - blackimage1 = Image.new('1', (epd.width, epd.height), 255) # 298*126 - redimage1 = Image.new('1', (epd.width, epd.height), 255) # 298*126 - newimage = Image.open('../pic/100x100.bmp') - blackimage1.paste(newimage, (50,10)) - epd.display(epd.getbuffer(blackimage1), epd.getbuffer(redimage1)) - - print("Clear...") - epd.init() - epd.Clear() - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Raspberry Pi/python3/examples/epd_7in5_test.py b/Raspberry Pi/python3/examples/epd_7in5_test.py deleted file mode 100644 index eaf11ec..0000000 --- a/Raspberry Pi/python3/examples/epd_7in5_test.py +++ /dev/null @@ -1,84 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd7in5 -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd7in5 Demo") - - epd = epd7in5.EPD() - print("init and Clear") - epd.init() - epd.Clear() - - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - Himage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - draw = ImageDraw.Draw(Himage) - draw.text((10, 0), 'hello world', font = font24, fill = 0) - draw.text((10, 20), '7.5inch e-Paper', font = font24, fill = 0) - draw.text((150, 0), u'寰洩鐢靛瓙', font = font24, fill = 0) - draw.line((20, 50, 70, 100), fill = 0) - draw.line((70, 50, 20, 100), fill = 0) - draw.rectangle((20, 50, 70, 100), outline = 0) - draw.line((165, 50, 165, 100), fill = 0) - draw.line((140, 75, 190, 75), fill = 0) - draw.arc((140, 50, 190, 100), 0, 360, fill = 0) - draw.rectangle((80, 50, 130, 100), fill = 0) - draw.chord((200, 50, 250, 100), 0, 360, fill = 0) - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") - Limage = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - draw = ImageDraw.Draw(Limage) - draw.text((2, 0), 'hello world', font = font18, fill = 0) - draw.text((2, 20), '7.5inch epd', font = font18, fill = 0) - draw.text((20, 50), u'寰洩鐢靛瓙', font = font18, fill = 0) - draw.line((10, 90, 60, 140), fill = 0) - draw.line((60, 90, 10, 140), fill = 0) - draw.rectangle((10, 90, 60, 140), outline = 0) - draw.line((95, 90, 95, 140), fill = 0) - draw.line((70, 115, 120, 115), fill = 0) - draw.arc((70, 90, 120, 140), 0, 360, fill = 0) - draw.rectangle((10, 150, 60, 200), fill = 0) - draw.chord((70, 150, 120, 200), 0, 360, fill = 0) - epd.display(epd.getbuffer(Limage)) - time.sleep(2) - - print("3.read bmp file") - Himage = Image.open('../pic/7in5.bmp') - epd.display(epd.getbuffer(Himage)) - time.sleep(2) - - print("4.read bmp file on window") - Himage2 = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') - Himage2.paste(bmp, (50,10)) - epd.display(epd.getbuffer(Himage2)) - time.sleep(2) - - print("Clear...") - epd.init() - epd.Clear() - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Raspberry Pi/python3/examples/epd_7in5bc_test.py b/Raspberry Pi/python3/examples/epd_7in5bc_test.py deleted file mode 100644 index 82153b4..0000000 --- a/Raspberry Pi/python3/examples/epd_7in5bc_test.py +++ /dev/null @@ -1,95 +0,0 @@ -#!/usr/bin/python -# -*- coding:utf-8 -*- -import sys -sys.path.append(r'../lib') - -import epd7in5bc -import epdconfig -import time -from PIL import Image,ImageDraw,ImageFont -import traceback - -try: - print("epd7in5bc Demo") - - epd = epd7in5bc.EPD() - print("init and Clear") - epd.init() - epd.Clear() - time.sleep(1) - - # Drawing on the image - print("Drawing") - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) - - # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") - HBlackimage = Image.new('1', (epd.width, epd.height), 255) # 298*126 - HRYimage = Image.new('1', (epd.width, epd.height), 255) # 298*126 ryimage: red or yellow image - drawblack = ImageDraw.Draw(HBlackimage) - drawry = ImageDraw.Draw(HRYimage) - drawblack.text((10, 0), 'hello world', font = font24, fill = 0) - drawblack.text((10, 20), '7.5inch e-Paper bc', font = font24, fill = 0) - drawblack.text((150, 0), u'寰洩鐢靛瓙', font = font24, fill = 0) - drawblack.line((20, 50, 70, 100), fill = 0) - drawblack.line((70, 50, 20, 100), fill = 0) - drawblack.rectangle((20, 50, 70, 100), outline = 0) - drawry.line((165, 50, 165, 100), fill = 0) - drawry.line((140, 75, 190, 75), fill = 0) - drawry.arc((140, 50, 190, 100), 0, 360, fill = 0) - drawry.rectangle((80, 50, 130, 100), fill = 0) - drawry.chord((200, 50, 250, 100), 0, 360, fill = 0) - epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRYimage)) - time.sleep(2) - - # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") - LBlackimage = Image.new('1', (epd.height, epd.width), 255) # 126*298 - LRYimage = Image.new('1', (epd.height, epd.width), 255) # 126*298 - drawblack = ImageDraw.Draw(LBlackimage) - drawry = ImageDraw.Draw(LRYimage) - - drawblack.text((2, 0), 'hello world', font = font18, fill = 0) - drawblack.text((2, 20), '7.5inch epd bc', font = font18, fill = 0) - drawblack.text((20, 50), u'寰洩鐢靛瓙', font = font18, fill = 0) - drawblack.line((10, 90, 60, 140), fill = 0) - drawblack.line((60, 90, 10, 140), fill = 0) - drawblack.rectangle((10, 90, 60, 140), outline = 0) - drawry.line((95, 90, 95, 140), fill = 0) - drawry.line((70, 115, 120, 115), fill = 0) - drawry.arc((70, 90, 120, 140), 0, 360, fill = 0) - drawry.rectangle((10, 150, 60, 200), fill = 0) - drawry.chord((70, 150, 120, 200), 0, 360, fill = 0) - epd.display(epd.getbuffer(LBlackimage), epd.getbuffer(LRYimage)) - time.sleep(2) - - print("3.read bmp file") - HBlackimage = Image.open('../pic/7in5b-b.bmp') - HRYimage = Image.open('../pic/7in5b-r.bmp') - # HBlackimage = Image.open('../pic/7in5c-b.bmp') - # HRYimage = Image.open('../pic/7in5c-r.bmp') - epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRYimage)) - time.sleep(2) - - print("4.read bmp file on window") - blackimage1 = Image.new('1', (epd.width, epd.height), 255) # 298*126 - redimage1 = Image.new('1', (epd.width, epd.height), 255) # 298*126 - newimage = Image.open('../pic/100x100.bmp') - blackimage1.paste(newimage, (50,10)) - epd.display(epd.getbuffer(blackimage1), epd.getbuffer(redimage1)) - - print("Clear...") - epd.init() - epd.Clear() - - print("Goto Sleep...") - epd.sleep() - -except IOError as e: - print(e) - -except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() diff --git a/Raspberry Pi/python3/lib/Font.ttc b/Raspberry Pi/python3/lib/Font.ttc deleted file mode 100644 index 4cbb7c5..0000000 Binary files a/Raspberry Pi/python3/lib/Font.ttc and /dev/null differ diff --git a/Raspberry Pi/python3/lib/epd1in54.py b/Raspberry Pi/python3/lib/epd1in54.py deleted file mode 100644 index 54a21e4..0000000 --- a/Raspberry Pi/python3/lib/epd1in54.py +++ /dev/null @@ -1,254 +0,0 @@ -# ***************************************************************************** -# * | File : epd1in54.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V3.1 -# * | Date : 2019-06-20 -# # | Info : python3 demo -# ----------------------------------------------------------------------------- -# V3.1(2019-06-18): -# 2.remove commands define: -# #define PANEL_SETTING 0x00 -# #define POWER_SETTING 0x01 -# #define POWER_OFF 0x02 -# #define POWER_OFF_SEQUENCE_SETTING 0x03 -# #define POWER_ON 0x04 -# #define POWER_ON_MEASURE 0x05 -# #define BOOSTER_SOFT_START 0x06 -# #define DEEP_SLEEP 0x07 -# #define DATA_START_TRANSMISSION_1 0x10 -# #define DATA_STOP 0x11 -# #define DISPLAY_REFRESH 0x12 -# #define DATA_START_TRANSMISSION_2 0x13 -# #define PLL_CONTROL 0x30 -# #define TEMPERATURE_SENSOR_COMMAND 0x40 -# #define TEMPERATURE_SENSOR_CALIBRATION 0x41 -# #define TEMPERATURE_SENSOR_WRITE 0x42 -# #define TEMPERATURE_SENSOR_READ 0x43 -# #define VCOM_AND_DATA_INTERVAL_SETTING 0x50 -# #define LOW_POWER_DETECTION 0x51 -# #define TCON_SETTING 0x60 -# #define TCON_RESOLUTION 0x61 -# #define SOURCE_AND_GATE_START_SETTING 0x62 -# #define GET_STATUS 0x71 -# #define AUTO_MEASURE_VCOM 0x80 -# #define VCOM_VALUE 0x81 -# #define VCM_DC_SETTING_REGISTER 0x82 -# #define PROGRAM_MODE 0xA0 -# #define ACTIVE_PROGRAM 0xA1 -# #define READ_OTP_DATA 0xA2 -# ----------------------------------------------------------------------------- -# V3.0(2018-11-01): -# # 1.Remove: -# digital_write(self, pin, value) -# digital_read(self, pin) -# delay_ms(self, delaytime) -# set_lut(self, lut) -# self.lut = self.lut_full_update -# * 2.Change: -# display_frame -> TurnOnDisplay -# set_memory_area -> SetWindow -# set_memory_pointer -> SetCursor -# * 3.How to use -# epd = epd1in54.EPD() -# epd.init(epd.lut_full_update) -# image = Image.new('1', (epd1in54.EPD_WIDTH, epd1in54.EPD_HEIGHT), 255) -# ... -# drawing ...... -# ... -# epd.display(getbuffer(image)) -# ******************************************************************************// -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and//or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - -import epdconfig - -# Display resolution -EPD_WIDTH = 200 -EPD_HEIGHT = 200 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - lut_full_update = [ - 0x02, 0x02, 0x01, 0x11, 0x12, 0x12, 0x22, 0x22, - 0x66, 0x69, 0x69, 0x59, 0x58, 0x99, 0x99, 0x88, - 0x00, 0x00, 0x00, 0x00, 0xF8, 0xB4, 0x13, 0x51, - 0x35, 0x51, 0x51, 0x19, 0x01, 0x00 - ] - - lut_partial_update = [ - 0x10, 0x18, 0x18, 0x08, 0x18, 0x18, 0x08, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x13, 0x14, 0x44, 0x12, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - ] - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) # module reset - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 1): # 0: idle, 1: busy - epdconfig.delay_ms(100) - print("e-Paper busy release") - - def TurnOnDisplay(self): - self.send_command(0x22) # DISPLAY_UPDATE_CONTROL_2 - self.send_data(0xC4) - self.send_command(0x20) # MASTER_ACTIVATION - self.send_command(0xFF) # TERMINATE_FRAME_READ_WRITE - - self.ReadBusy() - - def SetWindow(self, x_start, y_start, x_end, y_end): - self.send_command(0x44) # SET_RAM_X_ADDRESS_START_END_POSITION - # x point must be the multiple of 8 or the last 3 bits will be ignored - self.send_data((x_start >> 3) & 0xFF) - self.send_data((x_end >> 3) & 0xFF) - self.send_command(0x45) # SET_RAM_Y_ADDRESS_START_END_POSITION - self.send_data(y_start & 0xFF) - self.send_data((y_start >> 8) & 0xFF) - self.send_data(y_end & 0xFF) - self.send_data((y_end >> 8) & 0xFF) - - def SetCursor(self, x, y): - self.send_command(0x4E) # SET_RAM_X_ADDRESS_COUNTER - # x point must be the multiple of 8 or the last 3 bits will be ignored - self.send_data((x >> 3) & 0xFF) - - self.send_command(0x4F) # SET_RAM_Y_ADDRESS_COUNTER - self.send_data(y & 0xFF) - self.send_data((y >> 8) & 0xFF) - # self.ReadBusy() - - def init(self, lut): - if (epdconfig.module_init() != 0): - return -1 - # EPD hardware init start - self.reset() - - self.send_command(0x01) # DRIVER_OUTPUT_CONTROL - self.send_data((EPD_HEIGHT - 1) & 0xFF) - self.send_data(((EPD_HEIGHT - 1) >> 8) & 0xFF) - self.send_data(0x00) # GD = 0 SM = 0 TB = 0 - - self.send_command(0x0C) # BOOSTER_SOFT_START_CONTROL - self.send_data(0xD7) - self.send_data(0xD6) - self.send_data(0x9D) - - self.send_command(0x2C) # WRITE_VCOM_REGISTER - self.send_data(0xA8) # VCOM 7C - - self.send_command(0x3A) # SET_DUMMY_LINE_PERIOD - self.send_data(0x1A) # 4 dummy lines per gate - - self.send_command(0x3B) # SET_GATE_TIME - self.send_data(0x08) # 2us per line - - self.send_command(0x11) # DATA_ENTRY_MODE_SETTING - self.send_data(0x03) # X increment Y increment - - # set the look-up table register - self.send_command(0x32) - for i in range(0, len(lut)): - self.send_data(lut[i]) - # EPD hardware init end - return 0 - - def getbuffer(self, image): - buf = [0xFF] * ((self.width // 8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - if(imwidth == self.width and imheight == self.height): - print("Horizontal") - 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] == 0: - buf[(x + y * self.width) // 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Vertical") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) // 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, image): - if (image == None): - return - - self.SetWindow(0, 0, self.width, self.height) - for j in range(0, self.height): - self.SetCursor(0, j) - self.send_command(0x24) - for i in range(0, self.width // 8): - self.send_data(image[i + j * (self.width // 8)]) - self.TurnOnDisplay() - - def Clear(self, color): - # self.SetWindow(0, 0, self.width - 1, self.height - 1) - # send the color data - self.SetWindow(0, 0, self.width, self.height) - for j in range(0, self.height): - self.SetCursor(0, j) - self.send_command(0x24) - for i in range(0, self.width // 8): - self.send_data(color) - self.TurnOnDisplay() - - def sleep(self): - self.send_command(0x10) # DEEP_SLEEP_MODE - self.send_data(0x01) - - epdconfig.module_exit() - -### END OF FILE ### - diff --git a/Raspberry Pi/python3/lib/epd1in54_V2.py b/Raspberry Pi/python3/lib/epd1in54_V2.py deleted file mode 100644 index 76136ed..0000000 --- a/Raspberry Pi/python3/lib/epd1in54_V2.py +++ /dev/null @@ -1,206 +0,0 @@ -# ***************************************************************************** -# * | File : epd1in54_V2.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V1 -# * | Date : 2019-06-20 -# # | Info : python3 demo -# ----------------------------------------------------------------------------- -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and//or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - -import epdconfig - -# Display resolution -EPD_WIDTH = 200 -EPD_HEIGHT = 200 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 1): - epdconfig.delay_ms(100) - print("e-Paper busy release") - - def TurnOnDisplay(self): - self.send_command(0x22) # DISPLAY_UPDATE_CONTROL_2 - self.send_data(0xF7) - self.send_command(0x20) # MASTER_ACTIVATION - - self.ReadBusy() - - def TurnOnDisplayPart(self): - self.send_command(0x22) # DISPLAY_UPDATE_CONTROL_2 - self.send_data(0xFF) - self.send_command(0x20) # MASTER_ACTIVATION - - self.ReadBusy() - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - - # EPD hardware init start - self.reset() - - self.ReadBusy() - self.send_command(0x12) # SWRESET - self.ReadBusy() - - self.send_command(0x01) # DRIVER_OUTPUT_CONTROL - self.send_data(0xC7) # (EPD_HEIGHT - 1) & 0xFF - self.send_data(0x00) # ((EPD_HEIGHT - 1) >> 8) & 0xFF - self.send_data(0x01) # GD = 0 SM = 0 TB = 0 - - self.send_command(0x11) # data entry mode - self.send_data(0x01) - - self.send_command(0x44) # set Ram-X address start//end position - self.send_data(0x00) - self.send_data(0x18) # 0x0C-->(18+1)*8=200 - - self.send_command(0x45) # set Ram-Y address start//end position - self.send_data(0xC7) # 0xC7-->(199+1)=200 - self.send_data(0x00) - self.send_data(0x00) - self.send_data(0x00) - - self.send_command(0x3C) # BorderWavefrom - self.send_data(0x01) - - self.send_command(0x18) - self.send_data(0x80) - - self.send_command(0x22) # #Load Temperature and waveform setting. - self.send_data(0XB1) - self.send_command(0x20) - - self.send_command(0x4E) # set RAM x address count to 0; - self.send_data(0x00) - self.send_command(0x4F) # set RAM y address count to 0X199; - self.send_data(0xC7) - self.send_data(0x00) - - self.ReadBusy() - - def Clear(self, color): - self.send_command(0x24) - for j in range(0, self.height): - for i in range(0, self.width // 8): - self.send_data(color) - self.TurnOnDisplay() - - def getbuffer(self, image): - buf = [0xFF] * ((self.width//8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - if(imwidth == self.width and imheight == self.height): - print("Horizontal") - 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] == 0: - buf[(x + y * self.width) // 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Vertical") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) // 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, image): - if (image == None): - return - - self.send_command(0x24) - for j in range(0, self.height): - for i in range(0, self.width // 8): - self.send_data(image[i + j * (self.width // 8)]) - self.TurnOnDisplay() - - def displayPartBaseImage(self, image): - if (image == None): - return - - self.send_command(0x24) - for j in range(0, self.height): - for i in range(0, self.width // 8): - self.send_data(image[i + j * (self.width // 8)]) - - self.send_command(0x26) - for j in range(0, self.height): - for i in range(0, self.width // 8): - self.send_data(image[i + j * (self.width // 8)]) - - self.TurnOnDisplayPart() - - def displayPart(self, image): - if (image == None): - return - - self.send_command(0x24) - for j in range(0, self.height): - for i in range(0, self.width // 8): - self.send_data(image[i + j * (self.width // 8)]) - - self.TurnOnDisplayPart() - - def sleep(self): - self.send_command(0x10) # DEEP_SLEEP_MODE - self.send_data(0x01) - - epdconfig.module_exit() - -### END OF FILE ### - diff --git a/Raspberry Pi/python3/lib/epd1in54b.py b/Raspberry Pi/python3/lib/epd1in54b.py deleted file mode 100644 index e35014c..0000000 --- a/Raspberry Pi/python3/lib/epd1in54b.py +++ /dev/null @@ -1,218 +0,0 @@ -# ***************************************************************************** -# * | File : epd1in54b.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-20 -# # | Info : python3 demo -# ----------------------------------------------------------------------------- -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and//or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - -import epdconfig - -# Display resolution -EPD_WIDTH = 200 -EPD_HEIGHT = 200 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - lut_vcom0 = [0x0E, 0x14, 0x01, 0x0A, 0x06, 0x04, 0x0A, 0x0A, 0x0F, 0x03, 0x03, 0x0C, 0x06, 0x0A, 0x00] - lut_w = [0x0E, 0x14, 0x01, 0x0A, 0x46, 0x04, 0x8A, 0x4A, 0x0F, 0x83, 0x43, 0x0C, 0x86, 0x0A, 0x04] - lut_b = [0x0E, 0x14, 0x01, 0x8A, 0x06, 0x04, 0x8A, 0x4A, 0x0F, 0x83, 0x43, 0x0C, 0x06, 0x4A, 0x04] - lut_g1 = [0x8E, 0x94, 0x01, 0x8A, 0x06, 0x04, 0x8A, 0x4A, 0x0F, 0x83, 0x43, 0x0C, 0x06, 0x0A, 0x04] - lut_g2 = [0x8E, 0x94, 0x01, 0x8A, 0x06, 0x04, 0x8A, 0x4A, 0x0F, 0x83, 0x43, 0x0C, 0x06, 0x0A, 0x04] - lut_vcom1 = [0x03, 0x1D, 0x01, 0x01, 0x08, 0x23, 0x37, 0x37, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00] - lut_red0 = [0x83, 0x5D, 0x01, 0x81, 0x48, 0x23, 0x77, 0x77, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00] - lut_red1 = [0x03, 0x1D, 0x01, 0x01, 0x08, 0x23, 0x37, 0x37, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00] - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) # module reset - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): - epdconfig.delay_ms(100) - print("e-Paper busy release") - - def set_lut_bw(self): - self.send_command(0x20) # vcom - for count in range(0, 15): - self.send_data(self.lut_vcom0[count]) - self.send_command(0x21) # ww -- - for count in range(0, 15): - self.send_data(self.lut_w[count]) - self.send_command(0x22) # bw r - for count in range(0, 15): - self.send_data(self.lut_b[count]) - self.send_command(0x23) # wb w - for count in range(0, 15): - self.send_data(self.lut_g1[count]) - self.send_command(0x24) # bb b - for count in range(0, 15): - self.send_data(self.lut_g2[count]) - - def set_lut_red(self): - self.send_command(0x25) - for count in range(0, 15): - self.send_data(self.lut_vcom1[count]) - self.send_command(0x26) - for count in range(0, 15): - self.send_data(self.lut_red0[count]) - self.send_command(0x27) - for count in range(0, 15): - self.send_data(self.lut_red1[count]) - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - # EPD hardware init start - self.reset() - - self.send_command(0x01) # POWER_SETTING - self.send_data(0x07) - self.send_data(0x00) - self.send_data(0x08) - self.send_data(0x00) - self.send_command(0x06) # BOOSTER_SOFT_START - self.send_data(0x07) - self.send_data(0x07) - self.send_data(0x07) - self.send_command(0x04) # POWER_ON - - self.ReadBusy() - - self.send_command(0X00) # PANEL_SETTING - self.send_data(0xCF) - self.send_command(0X50) # VCOM_AND_DATA_INTERVAL_SETTING - self.send_data(0x17) - self.send_command(0x30) # PLL_CONTROL - self.send_data(0x39) - self.send_command(0x61) # TCON_RESOLUTION set x and y - self.send_data(0xC8) - self.send_data(0x00) - self.send_data(0xC8) - self.send_command(0x82) # VCM_DC_SETTING_REGISTER - self.send_data(0x0E) - - self.set_lut_bw() - self.set_lut_red() - return 0 - - def getbuffer(self, image): - buf = [0xFF] * (self.width * self.height // 8) - # Set buffer to value of Python Imaging Library image. - # Image must be in mode 1. - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - if imwidth != self.width or imheight != self.height: - raise ValueError('Image must be same dimensions as display \ - ({0}x{1}).' .format(self.width, self.height)) - - pixels = image_monocolor.load() - for y in range(self.height): - for x in range(self.width): - # Set the bits for the column of pixels at the current position. - if pixels[x, y] == 0: - buf[(x + y * self.width) // 8] &= ~(0x80 >> (x % 8)) - return buf - - def display(self, blackimage, redimage): - # send black data - if (blackimage != None): - self.send_command(0x10) # DATA_START_TRANSMISSION_1 - for i in range(0, self.width * self.height // 8): - temp = 0x00 - for bit in range(0, 4): - if (blackimage[i] & (0x80 >> bit) != 0): - temp |= 0xC0 >> (bit * 2) - self.send_data(temp) - temp = 0x00 - for bit in range(4, 8): - if (blackimage[i] & (0x80 >> bit) != 0): - temp |= 0xC0 >> ((bit - 4) * 2) - self.send_data(temp) - - # send red data - if (redimage != None): - self.send_command(0x13) # DATA_START_TRANSMISSION_2 - for i in range(0, self.width * self.height // 8): - self.send_data(redimage[i]) - - self.send_command(0x12) # DISPLAY_REFRESH - self.ReadBusy() - - def Clear(self): - self.send_command(0x10) # DATA_START_TRANSMISSION_1 - for i in range(0, self.width * self.height // 8): - self.send_data(0xFF) - self.send_data(0xFF) - - self.send_command(0x13) # DATA_START_TRANSMISSION_2 - for i in range(0, self.width * self.height // 8): - self.send_data(0xFF) - - self.send_command(0x12) # DISPLAY_REFRESH - self.ReadBusy() - - def sleep(self): - self.send_command(0x50) # VCOM_AND_DATA_INTERVAL_SETTING - self.send_data(0x17) - self.send_command(0x82) # to solve Vcom drop - self.send_data(0x00) - self.send_command(0x01) # power setting - self.send_data(0x02) # gate switch to external - self.send_data(0x00) - self.send_data(0x00) - self.send_data(0x00) - self.ReadBusy() - - self.send_command(0x02) # power off - - epdconfig.module_exit() - -### END OF FILE ### - diff --git a/Raspberry Pi/python3/lib/epd2in13.py b/Raspberry Pi/python3/lib/epd2in13.py deleted file mode 100644 index 9424d9a..0000000 --- a/Raspberry Pi/python3/lib/epd2in13.py +++ /dev/null @@ -1,224 +0,0 @@ -# ***************************************************************************** -# * | File : epd2in13.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-20 -# # | Info : python3 demo -# ----------------------------------------------------------------------------- -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and//or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - - -import epdconfig -import numpy as np - -# Display resolution -EPD_WIDTH = 122 -EPD_HEIGHT = 250 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - lut_full_update = [ - 0x22, 0x55, 0xAA, 0x55, 0xAA, 0x55, 0xAA, 0x11, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, 0x1E, - 0x01, 0x00, 0x00, 0x00, 0x00, 0x00 - ] - - lut_partial_update = [ - 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x0F, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - ] - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - while(epdconfig.digital_read(self.busy_pin) == 1): # 0: idle, 1: busy - epdconfig.delay_ms(100) - - def TurnOnDisplay(self): - self.send_command(0x22) # DISPLAY_UPDATE_CONTROL_2 - self.send_data(0xC4) - self.send_command(0x20) # MASTER_ACTIVATION - self.send_command(0xFF) # TERMINATE_FRAME_READ_WRITE - - print("e-Paper busy") - self.ReadBusy() - print("e-Paper busy release") - - def init(self, lut): - if (epdconfig.module_init() != 0): - return -1 - # EPD hardware init start - self.reset() - self.send_command(0x01) # DRIVER_OUTPUT_CONTROL - self.send_data((EPD_HEIGHT - 1) & 0xFF) - self.send_data(((EPD_HEIGHT - 1) >> 8) & 0xFF) - self.send_data(0x00) # GD = 0 SM = 0 TB = 0 - - self.send_command(0x0C) # BOOSTER_SOFT_START_CONTROL - self.send_data(0xD7) - self.send_data(0xD6) - self.send_data(0x9D) - - self.send_command(0x2C) # WRITE_VCOM_REGISTER - self.send_data(0xA8) # VCOM 7C - - self.send_command(0x3A) # SET_DUMMY_LINE_PERIOD - self.send_data(0x1A) # 4 dummy lines per gate - - self.send_command(0x3B) # SET_GATE_TIME - self.send_data(0x08) # 2us per line - - self.send_command(0X3C) # BORDER_WAVEFORM_CONTROL - self.send_data(0x03) - - self.send_command(0X11) # DATA_ENTRY_MODE_SETTING - self.send_data(0x03) # X increment; Y increment - - # WRITE_LUT_REGISTER - self.send_command(0x32) - for count in range(30): - self.send_data(lut[count]) - - return 0 - -## - # @brief: specify the memory area for data R//W - ## - def SetWindows(self, x_start, y_start, x_end, y_end): - self.send_command(0x44) # SET_RAM_X_ADDRESS_START_END_POSITION - self.send_data((x_start >> 3) & 0xFF) - self.send_data((x_end >> 3) & 0xFF) - self.send_command(0x45) # SET_RAM_Y_ADDRESS_START_END_POSITION - self.send_data(y_start & 0xFF) - self.send_data((y_start >> 8) & 0xFF) - self.send_data(y_end & 0xFF) - self.send_data((y_end >> 8) & 0xFF) - -## - # @brief: specify the start point for data R//W - ## - def SetCursor(self, x, y): - self.send_command(0x4E) # SET_RAM_X_ADDRESS_COUNTER - # x point must be the multiple of 8 or the last 3 bits will be ignored - self.send_data((x >> 3) & 0xFF) - self.send_command(0x4F) # SET_RAM_Y_ADDRESS_COUNTER - self.send_data(y & 0xFF) - self.send_data((y >> 8) & 0xFF) - self.ReadBusy() - - def getbuffer(self, image): - if self.width%8 == 0: - linewidth = self.width//8 - else: - linewidth = self.width//8 + 1 - - buf = [0xFF] * (linewidth * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - - if(imwidth == self.width and imheight == self.height): - print("Vertical") - for y in range(imheight): - for x in range(imwidth): - if pixels[x, y] == 0: - # x = imwidth - x - buf[x // 8 + y * linewidth] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Horizontal") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - # newy = imwidth - newy - 1 - buf[newx // 8 + newy*linewidth] &= ~(0x80 >> (y % 8)) - return buf - - - def display(self, image): - if self.width%8 == 0: - linewidth = self.width//8 - else: - linewidth = self.width//8 + 1 - - self.SetWindows(0, 0, self.width, self.height); - for j in range(0, self.height): - self.SetCursor(0, j); - self.send_command(0x24); - for i in range(0, linewidth): - self.send_data(image[i + j * linewidth]) - self.TurnOnDisplay() - - def Clear(self, color): - if self.width%8 == 0: - linewidth = self.width//8 - else: - linewidth = self.width//8 + 1 - - self.SetWindows(0, 0, self.width, self.height); - for j in range(0, self.height): - self.SetCursor(0, j); - self.send_command(0x24); - for i in range(0, linewidth): - self.send_data(color) - self.TurnOnDisplay() - - def sleep(self): - self.send_command(0x10) #enter deep sleep - self.send_data(0x01) - epdconfig.delay_ms(100) - - epdconfig.module_exit() - -### END OF FILE ### - diff --git a/Raspberry Pi/python3/lib/epd2in13_V2.py b/Raspberry Pi/python3/lib/epd2in13_V2.py deleted file mode 100644 index f4407ff..0000000 --- a/Raspberry Pi/python3/lib/epd2in13_V2.py +++ /dev/null @@ -1,315 +0,0 @@ -# ***************************************************************************** -# * | File : epd2in13_V2.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-20 -# # | Info : python3 demo -# ----------------------------------------------------------------------------- -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and//or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - - -import epdconfig -import numpy as np - -# Display resolution -EPD_WIDTH = 122 -EPD_HEIGHT = 250 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - FULL_UPDATE = 0 - PART_UPDATE = 1 - lut_full_update= [ - 0x80,0x60,0x40,0x00,0x00,0x00,0x00, #LUT0: BB: VS 0 ~7 - 0x10,0x60,0x20,0x00,0x00,0x00,0x00, #LUT1: BW: VS 0 ~7 - 0x80,0x60,0x40,0x00,0x00,0x00,0x00, #LUT2: WB: VS 0 ~7 - 0x10,0x60,0x20,0x00,0x00,0x00,0x00, #LUT3: WW: VS 0 ~7 - 0x00,0x00,0x00,0x00,0x00,0x00,0x00, #LUT4: VCOM: VS 0 ~7 - - 0x03,0x03,0x00,0x00,0x02, # TP0 A~D RP0 - 0x09,0x09,0x00,0x00,0x02, # TP1 A~D RP1 - 0x03,0x03,0x00,0x00,0x02, # TP2 A~D RP2 - 0x00,0x00,0x00,0x00,0x00, # TP3 A~D RP3 - 0x00,0x00,0x00,0x00,0x00, # TP4 A~D RP4 - 0x00,0x00,0x00,0x00,0x00, # TP5 A~D RP5 - 0x00,0x00,0x00,0x00,0x00, # TP6 A~D RP6 - - 0x15,0x41,0xA8,0x32,0x30,0x0A, - ] - - lut_partial_update = [ #20 bytes - 0x00,0x00,0x00,0x00,0x00,0x00,0x00, #LUT0: BB: VS 0 ~7 - 0x80,0x00,0x00,0x00,0x00,0x00,0x00, #LUT1: BW: VS 0 ~7 - 0x40,0x00,0x00,0x00,0x00,0x00,0x00, #LUT2: WB: VS 0 ~7 - 0x00,0x00,0x00,0x00,0x00,0x00,0x00, #LUT3: WW: VS 0 ~7 - 0x00,0x00,0x00,0x00,0x00,0x00,0x00, #LUT4: VCOM: VS 0 ~7 - - 0x0A,0x00,0x00,0x00,0x00, # TP0 A~D RP0 - 0x00,0x00,0x00,0x00,0x00, # TP1 A~D RP1 - 0x00,0x00,0x00,0x00,0x00, # TP2 A~D RP2 - 0x00,0x00,0x00,0x00,0x00, # TP3 A~D RP3 - 0x00,0x00,0x00,0x00,0x00, # TP4 A~D RP4 - 0x00,0x00,0x00,0x00,0x00, # TP5 A~D RP5 - 0x00,0x00,0x00,0x00,0x00, # TP6 A~D RP6 - - 0x15,0x41,0xA8,0x32,0x30,0x0A, - ] - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - while(epdconfig.digital_read(self.busy_pin) == 1): # 0: idle, 1: busy - epdconfig.delay_ms(100) - - def TurnOnDisplay(self): - self.send_command(0x22) - self.send_data(0xC7) - self.send_command(0x20) - self.ReadBusy() - - def TurnOnDisplayPart(self): - self.send_command(0x22) - self.send_data(0x0c) - self.send_command(0x20) - self.ReadBusy() - - def init(self, update): - if (epdconfig.module_init() != 0): - return -1 - # EPD hardware init start - self.reset() - if(update == self.FULL_UPDATE): - self.ReadBusy() - self.send_command(0x12) # soft reset - self.ReadBusy() - - self.send_command(0x74) #set analog block control - self.send_data(0x54) - self.send_command(0x7E) #set digital block control - self.send_data(0x3B) - - self.send_command(0x01) #Driver output control - self.send_data(0xF9) - self.send_data(0x00) - self.send_data(0x00) - - self.send_command(0x11) #data entry mode - self.send_data(0x01) - - self.send_command(0x44) #set Ram-X address start//end position - self.send_data(0x00) - self.send_data(0x0F) #0x0C-->(15+1)*8=128 - - self.send_command(0x45) #set Ram-Y address start//end position - self.send_data(0xF9) #0xF9-->(249+1)=250 - self.send_data(0x00) - self.send_data(0x00) - self.send_data(0x00) - - self.send_command(0x3C) #BorderWavefrom - self.send_data(0x03) - - self.send_command(0x2C) #VCOM Voltage - self.send_data(0x55) # - - self.send_command(0x03) - self.send_data(self.lut_full_update[70]) - - self.send_command(0x04) # - self.send_data(self.lut_full_update[71]) - self.send_data(self.lut_full_update[72]) - self.send_data(self.lut_full_update[73]) - - self.send_command(0x3A) #Dummy Line - self.send_data(self.lut_full_update[74]) - self.send_command(0x3B) #Gate time - self.send_data(self.lut_full_update[75]) - - self.send_command(0x32) - for count in range(70): - self.send_data(self.lut_full_update[count]) - - self.send_command(0x4E) # set RAM x address count to 0 - self.send_data(0x00) - self.send_command(0x4F) # set RAM y address count to 0X127 - self.send_data(0xF9) - self.send_data(0x00) - self.ReadBusy() - else: - self.send_command(0x2C) #VCOM Voltage - self.send_data(0x26) - - self.ReadBusy() - - self.send_command(0x32) - for count in range(70): - self.send_data(self.lut_partial_update[count]) - - self.send_command(0x37) - self.send_data(0x00) - self.send_data(0x00) - self.send_data(0x00) - self.send_data(0x00) - self.send_data(0x40) - self.send_data(0x00) - self.send_data(0x00) - - self.send_command(0x22) - self.send_data(0xC0) - self.send_command(0x20) - self.ReadBusy() - - self.send_command(0x3C) #BorderWavefrom - self.send_data(0x01) - return 0 - - def getbuffer(self, image): - if self.width%8 == 0: - linewidth = self.width//8 - else: - linewidth = self.width//8 + 1 - - buf = [0xFF] * (linewidth * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - - if(imwidth == self.width and imheight == self.height): - print("Vertical") - for y in range(imheight): - for x in range(imwidth): - if pixels[x, y] == 0: - x = imwidth - x - buf[x // 8 + y * linewidth] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Horizontal") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - newy = imwidth - newy - 1 - buf[newx // 8 + newy*linewidth] &= ~(0x80 >> (y % 8)) - return buf - - - def display(self, image): - if self.width%8 == 0: - linewidth = self.width//8 - else: - linewidth = self.width//8 + 1 - - self.send_command(0x24) - for j in range(0, self.height): - for i in range(0, linewidth): - self.send_data(image[i + j * linewidth]) - self.TurnOnDisplay() - - def displayPartial(self, image): - if self.width%8 == 0: - linewidth = self.width//8 - else: - linewidth = self.width//8 + 1 - - self.send_command(0x24) - for j in range(0, self.height): - for i in range(0, linewidth): - self.send_data(image[i + j * linewidth]) - - - # self.send_command(0x26) - # for j in range(0, self.height): - # for i in range(0, linewidth): - # self.send_data(~image[i + j * linewidth]) - self.TurnOnDisplayPart() - - def displayPartBaseImage(self, image): - if self.width%8 == 0: - linewidth = self.width//8 - else: - linewidth = self.width//8 + 1 - - self.send_command(0x24) - for j in range(0, self.height): - for i in range(0, linewidth): - self.send_data(image[i + j * linewidth]) - - - self.send_command(0x26) - for j in range(0, self.height): - for i in range(0, linewidth): - self.send_data(image[i + j * linewidth]) - self.TurnOnDisplay() - - def Clear(self, color): - if self.width%8 == 0: - linewidth = self.width//8 - else: - linewidth = self.width//8 + 1 - # print(linewidth) - - self.send_command(0x24) - for j in range(0, self.height): - for i in range(0, linewidth): - self.send_data(color) - self.TurnOnDisplay() - - def sleep(self): - self.send_command(0x22) #POWER OFF - self.send_data(0xC3) - self.send_command(0x20) - - self.send_command(0x10) #enter deep sleep - self.send_data(0x01) - epdconfig.delay_ms(100) - - epdconfig.module_exit() - -### END OF FILE ### - diff --git a/Raspberry Pi/python3/lib/epd2in9bc.py b/Raspberry Pi/python3/lib/epd2in9bc.py deleted file mode 100644 index fdf7817..0000000 --- a/Raspberry Pi/python3/lib/epd2in9bc.py +++ /dev/null @@ -1,154 +0,0 @@ -# ***************************************************************************** -# * | File : epd2in9bc.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-20 -# # | Info : python3 demo -# ----------------------------------------------------------------------------- -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and//or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - - -import epdconfig - -# Display resolution -EPD_WIDTH = 128 -EPD_HEIGHT = 296 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - epdconfig.delay_ms(200) - print("e-Paper busy release") - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - # EPD hardware init start - self.reset() - - self.send_command(0x06) # boost - self.send_data (0x17) - self.send_data (0x17) - self.send_data (0x17) - self.send_command(0x04) # POWER_ON - self.ReadBusy() - self.send_command(0X00) # PANEL_SETTING - self.send_data(0x8F) - self.send_command(0X50) # VCOM_AND_DATA_INTERVAL_SETTING - self.send_data(0x77) - self.send_command(0x61) # TCON_RESOLUTION - self.send_data (0x80) - self.send_data (0x01) - self.send_data (0x28) - # self.send_command(VCM_DC_SETTING_REGISTER) - # self.send_data (0x0A) - - return 0 - - def getbuffer(self, image): - # print "bufsiz = ",(self.width//8) * self.height - buf = [0xFF] * ((self.width//8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight - if(imwidth == self.width and imheight == self.height): - print("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] == 0: - buf[(x + y * self.width) // 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Horizontal") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) // 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, blackimage, ryimage): # ryimage: red or yellow image - if (blackimage != None): - self.send_command(0X10) - for i in range(0, self.width * self.height // 8): - self.send_data(blackimage[i]) - if (ryimage != None): - self.send_command(0X13) - for i in range(0, self.width * self.height // 8): - self.send_data(ryimage[i]) - - self.send_command(0x12) - self.ReadBusy() - - def Clear(self): - self.send_command(0X10) - for i in range(0, self.width * self.height // 8): - self.send_data(0xff) - self.send_command(0X13) - for i in range(0, self.width * self.height // 8): - self.send_data(0xff) - - self.send_command(0x12) - self.ReadBusy() - - def sleep(self): - self.send_command(0X02) # power off - self.ReadBusy() - self.send_command(0X07) # deep sleep - self.send_data(0xA5) - - epdconfig.module_exit() -### END OF FILE ### - diff --git a/Raspberry Pi/python3/lib/epd2in9d.py b/Raspberry Pi/python3/lib/epd2in9d.py deleted file mode 100644 index 4847b18..0000000 --- a/Raspberry Pi/python3/lib/epd2in9d.py +++ /dev/null @@ -1,350 +0,0 @@ -# ***************************************************************************** -# * | File : epd2in9d.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V2.0 -# * | Date : 2019-06-20 -# # | Info : python3 demo -# ----------------------------------------------------------------------------- -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and//or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - - -import epdconfig -from PIL import Image -import RPi.GPIO as GPIO - -# Display resolution -EPD_WIDTH = 128 -EPD_HEIGHT = 296 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - lut_vcomDC = [ - 0x00, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x60, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x00, 0x14, 0x00, 0x00, 0x00, 0x01, - 0x00, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, - ] - - lut_ww = [ - 0x40, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x40, 0x14, 0x00, 0x00, 0x00, 0x01, - 0xA0, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - - lut_bw = [ - 0x40, 0x17, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x0F, 0x0F, 0x00, 0x00, 0x03, - 0x40, 0x0A, 0x01, 0x00, 0x00, 0x01, - 0xA0, 0x0E, 0x0E, 0x00, 0x00, 0x02, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - - lut_wb = [ - 0x80, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x80, 0x14, 0x00, 0x00, 0x00, 0x01, - 0x50, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - - lut_bb = [ - 0x80, 0x08, 0x00, 0x00, 0x00, 0x02, - 0x90, 0x28, 0x28, 0x00, 0x00, 0x01, - 0x80, 0x14, 0x00, 0x00, 0x00, 0x01, - 0x50, 0x12, 0x12, 0x00, 0x00, 0x01, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - ] - - lut_vcom1 = [ - 0x00, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, - ] - - lut_ww1 = [ - 0x00, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, - ] - - lut_bw1 = [ - 0x80, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, - ] - - lut_wb1 = [ - 0x40, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, - ] - - lut_bb1 = [ - 0x00, 0x19, 0x01, 0x00, 0x00, 0x01, - 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, - ] - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - self.send_command(0x71) - epdconfig.delay_ms(100) - print("e-Paper busy release") - def TurnOnDisplay(self): - self.send_command(0x12) - epdconfig.delay_ms(10) - self.ReadBusy() - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - # EPD hardware init start - self.reset() - - self.send_command(0x01) # POWER SETTING - self.send_data(0x03) - self.send_data(0x00) - self.send_data(0x2b) - self.send_data(0x2b) - self.send_data(0x03) - - self.send_command(0x06) # boost soft start - self.send_data(0x17) # A - self.send_data(0x17) # B - self.send_data(0x17) # C - - self.send_command(0x04) - self.ReadBusy() - - self.send_command(0x00) # panel setting - self.send_data(0xbf) # LUT from OTP,128x296 - self.send_data(0x0d) # VCOM to 0V fast - - self.send_command(0x30) #PLL setting - self.send_data(0x3a) # 3a 100HZ 29 150Hz 39 200HZ 31 171HZ - - self.send_command(0x61) # resolution setting - self.send_data(self.width) - self.send_data((self.height >> 8) & 0xff) - self.send_data(self.height& 0xff) - - self.send_command(0x82) # vcom_DC setting - self.send_data(0x28) - return 0 - - def SetFullReg(self): - self.send_command(0x82) - self.send_data(0x00) - self.send_command(0X50) - self.send_data(0x97) - - self.send_command(0x20) # vcom - for count in range(0, 44): - self.send_data(self.lut_vcomDC[count]) - self.send_command(0x21) # ww -- - for count in range(0, 42): - self.send_data(self.lut_ww[count]) - self.send_command(0x22) # bw r - for count in range(0, 42): - self.send_data(self.lut_bw[count]) - self.send_command(0x23) # wb w - for count in range(0, 42): - self.send_data(self.lut_wb[count]) - self.send_command(0x24) # bb b - for count in range(0, 42): - self.send_data(self.lut_bb[count]) - - def SetPartReg(self): - self.send_command(0x82) - self.send_data(0x03) - self.send_command(0X50) - self.send_data(0x47) - - self.send_command(0x20) # vcom - for count in range(0, 44): - self.send_data(self.lut_vcom1[count]) - self.send_command(0x21) # ww -- - for count in range(0, 42): - self.send_data(self.lut_ww1[count]) - self.send_command(0x22) # bw r - for count in range(0, 42): - self.send_data(self.lut_bw1[count]) - self.send_command(0x23) # wb w - for count in range(0, 42): - self.send_data(self.lut_wb1[count]) - self.send_command(0x24) # bb b - for count in range(0, 42): - self.send_data(self.lut_bb1[count]) - - def getbuffer(self, image): - # print "bufsiz = ",(self.width//8) * self.height - buf = [0xFF] * ((self.width//8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight - if(imwidth == self.width and imheight == self.height): - print("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] == 0: - buf[(x + y * self.width) // 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Horizontal") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) // 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, image): - self.send_command(0x10) - for i in range(0, self.width * self.height // 8): - self.send_data(0x00) - epdconfig.delay_ms(10) - - self.send_command(0x13) - for i in range(0, self.width * self.height // 8): - self.send_data(image[i]) - epdconfig.delay_ms(10) - - self.SetFullReg() - self.TurnOnDisplay() - - def DisplayPartial(self, image): - self.SetPartReg() - self.send_command(0x91) - self.send_command(0x90) - self.send_data(0) - self.send_data(self.width - 1) - - self.send_data(0) - self.send_data(0) - self.send_data(self.height // 256) - self.send_data(self.height % 256 - 1) - self.send_data(0x28) - - self.send_command(0x10) - for i in range(0, self.width * self.height // 8): - self.send_data(image[i]) - epdconfig.delay_ms(10) - - self.send_command(0x13) - for i in range(0, self.width * self.height // 8): - self.send_data(~image[i]) - epdconfig.delay_ms(10) - - self.TurnOnDisplay() - - def Clear(self, color): - self.send_command(0x10) - for i in range(0, self.width * self.height // 8): - self.send_data(0x00) - epdconfig.delay_ms(10) - - self.send_command(0x13) - for i in range(0, self.width * self.height // 8): - self.send_data(0xFF) - epdconfig.delay_ms(10) - - self.SetFullReg() - self.TurnOnDisplay() - - def sleep(self): - self.send_command(0X50) - self.send_data(0xf7) - self.send_command(0X02) #power off - self.send_command(0X07) #deep sleep - self.send_data(0xA5) - - epdconfig.module_exit() - -### END OF FILE ### - diff --git a/Raspberry Pi/python3/lib/epd4in2bc.py b/Raspberry Pi/python3/lib/epd4in2bc.py deleted file mode 100644 index 637be5c..0000000 --- a/Raspberry Pi/python3/lib/epd4in2bc.py +++ /dev/null @@ -1,147 +0,0 @@ -# ***************************************************************************** -# * | File : epd4in2bc.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-20 -# # | Info : python3 demo -# ----------------------------------------------------------------------------- -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and//or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - -import epdconfig - -# Display resolution -EPD_WIDTH = 400 -EPD_HEIGHT = 300 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - epdconfig.delay_ms(100) - print("e-Paper busy release") - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - - self.reset() - - self.send_command(0x06) # BOOSTER_SOFT_START - self.send_data (0x17) - self.send_data (0x17) - self.send_data (0x17) # 07 0f 17 1f 27 2F 37 2f - - self.send_command(0x04) # POWER_ON - self.ReadBusy() - - self.send_command(0x00) # PANEL_SETTING - self.send_data(0x0F) # LUT from OTP - - return 0 - - def getbuffer(self, image): - # print "bufsiz = ",(self.width//8) * self.height - buf = [0xFF] * ((self.width//8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight - if(imwidth == self.width and imheight == self.height): - print("Horizontal") - 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] == 0: - buf[(x + y * self.width) // 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Vertical") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) // 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, imageblack, imagered): - self.send_command(0x10) - for i in range(0, self.width * self.height // 8): - self.send_data(imageblack[i]) - - self.send_command(0x13) - for i in range(0, self.width * self.height // 8): - self.send_data(imagered[i]) - - self.send_command(0x12) - self.ReadBusy() - - def Clear(self): - self.send_command(0x10) - for i in range(0, self.width * self.height // 8): - self.send_data(0xFF) - - self.send_command(0x13) - for i in range(0, self.width * self.height // 8): - self.send_data(0xFF) - - self.send_command(0x12) - self.ReadBusy() - - def sleep(self): - self.send_command(0x02) # POWER_OFF - self.ReadBusy() - self.send_command(0x07) # DEEP_SLEEP - self.send_data(0xA5) # check code - - epdconfig.module_exit() -### END OF FILE ### - diff --git a/Raspberry Pi/python3/lib/epd5in83.py b/Raspberry Pi/python3/lib/epd5in83.py deleted file mode 100644 index e108d73..0000000 --- a/Raspberry Pi/python3/lib/epd5in83.py +++ /dev/null @@ -1,199 +0,0 @@ -# ***************************************************************************** -# * | File : epd5in83.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-20 -# # | Info : python3 demo -# ----------------------------------------------------------------------------- -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and//or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - - -import epdconfig - -# Display resolution -EPD_WIDTH = 600 -EPD_HEIGHT = 448 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - epdconfig.delay_ms(100) - print("e-Paper busy release") - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - # EPD hardware init start - self.reset() - - self.send_command(0x01) # POWER_SETTING - self.send_data(0x37) - self.send_data(0x00) - - self.send_command(0x00) # PANEL_SETTING - self.send_data(0xCF) - self.send_data(0x08) - - self.send_command(0x06) # BOOSTER_SOFT_START - self.send_data(0xc7) - self.send_data(0xcc) - self.send_data(0x28) - - self.send_command(0x04) # POWER_ON - self.ReadBusy() - - self.send_command(0x30) # PLL_CONTROL - self.send_data(0x3c) - - self.send_command(0x41) # TEMPERATURE_CALIBRATION - self.send_data(0x00) - - self.send_command(0x50) # VCOM_AND_DATA_INTERVAL_SETTING - self.send_data(0x77) - - self.send_command(0x60) # TCON_SETTING - self.send_data(0x22) - - self.send_command(0x61) # TCON_RESOLUTION - self.send_data(0x02) # source 600 - self.send_data(0x58) - self.send_data(0x01) # gate 448 - self.send_data(0xC0) - - self.send_command(0x82) # VCM_DC_SETTING - self.send_data(0x1E) # decide by LUT file - - self.send_command(0xe5) # FLASH MODE - self.send_data(0x03) - - # EPD hardware init end - return 0 - - def getbuffer(self, image): - buf = [0x00] * (self.width * self.height // 4) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - print("imwidth = ", imwidth, "imheight = ", imheight) - if(imwidth == self.width and imheight == self.height): - 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] < 64: # black - buf[(x + y * self.width) // 4] &= ~(0xC0 >> (x % 4 * 2)) - elif pixels[x, y] < 192: # convert gray to red - buf[(x + y * self.width) // 4] &= ~(0xC0 >> (x % 4 * 2)) - buf[(x + y * self.width) // 4] |= 0x40 >> (x % 4 * 2) - else: # white - buf[(x + y * self.width) // 4] |= 0xC0 >> (x % 4 * 2) - elif(imwidth == self.height and imheight == self.width): - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] < 64: # black - buf[(newx + newy*self.width) // 4] &= ~(0xC0 >> (y % 4 * 2)) - elif pixels[x, y] < 192: # convert gray to red - buf[(newx + newy*self.width) // 4] &= ~(0xC0 >> (y % 4 * 2)) - buf[(newx + newy*self.width) // 4] |= 0x40 >> (y % 4 * 2) - else: # white - buf[(newx + newy*self.width) // 4] |= 0xC0 >> (y % 4 * 2) - return buf - - def display(self, image): - self.send_command(0x10) - for i in range(0, self.width // 4 * self.height): - temp1 = image[i] - j = 0 - while (j < 4): - if ((temp1 & 0xC0) == 0xC0): - temp2 = 0x03 - elif ((temp1 & 0xC0) == 0x00): - temp2 = 0x00 - else: - temp2 = 0x04 - temp2 = (temp2 << 4) & 0xFF - temp1 = (temp1 << 2) & 0xFF - j += 1 - if((temp1 & 0xC0) == 0xC0): - temp2 |= 0x03 - elif ((temp1 & 0xC0) == 0x00): - temp2 |= 0x00 - else: - temp2 |= 0x04 - temp1 = (temp1 << 2) & 0xFF - self.send_data(temp2) - j += 1 - - self.send_command(0x12) - epdconfig.delay_ms(100) - self.ReadBusy() - - def Clear(self): - self.send_command(0x10) - for i in range(0, self.width // 4 * self.height): - for j in range(0, 4): - self.send_data(0x33) - self.send_command(0x12) - self.ReadBusy() - - def sleep(self): - self.send_command(0x02) # POWER_OFF - self.ReadBusy() - self.send_command(0x07) # DEEP_SLEEP - self.send_data(0XA5) - - epdconfig.module_exit() - -### END OF FILE ### - diff --git a/Raspberry Pi/python3/lib/epd5in83bc.py b/Raspberry Pi/python3/lib/epd5in83bc.py deleted file mode 100644 index c9457d5..0000000 --- a/Raspberry Pi/python3/lib/epd5in83bc.py +++ /dev/null @@ -1,199 +0,0 @@ -# ***************************************************************************** -# * | File : epd5in83b.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-20 -# # | Info : python3 demo -# ----------------------------------------------------------------------------- -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and//or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - - -import epdconfig - -# Display resolution -EPD_WIDTH = 600 -EPD_HEIGHT = 448 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - epdconfig.delay_ms(100) - print("e-Paper busy release") - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - - self.reset() - - self.send_command(0x01) # POWER_SETTING - self.send_data(0x37) - self.send_data(0x00) - - self.send_command(0x00) # PANEL_SETTING - self.send_data(0xCF) - self.send_data(0x08) - - self.send_command(0x30) # PLL_CONTROL - self.send_data(0x3A) # PLL: 0-15:0x3C, 15+:0x3A - self.send_command(0X82) # VCOM VOLTAGE SETTING - self.send_data(0x28) # all temperature range - - self.send_command(0x06) # boost - self.send_data(0xc7) - self.send_data(0xcc) - self.send_data(0x15) - - self.send_command(0X50) # VCOM AND DATA INTERVAL SETTING - self.send_data(0x77) - - self.send_command(0X60) # TCON SETTING - self.send_data(0x22) - - self.send_command(0X65) # FLASH CONTROL - self.send_data(0x00) - - self.send_command(0x61) # tres - self.send_data(0x02) # source 600 - self.send_data(0x58) - self.send_data(0x01) # gate 448 - self.send_data(0xc0) - - self.send_command(0xe5) # FLASH MODE - self.send_data(0x03) - self.send_data(0x03) - - return 0 - - def getbuffer(self, image): - # print "bufsiz = ",(self.width//8) * self.height - buf = [0xFF] * ((self.width//8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight - if(imwidth == self.width and imheight == self.height): - print("Horizontal") - 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] == 0: - buf[(x + y * self.width) // 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Vertical") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) // 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, imageblack, imagered): - self.send_command(0x10) - for i in range(0, self.width // 8 * self.height): - temp1 = imageblack[i] - temp2 = imagered[i] - j = 0 - while (j < 8): - if ((temp2 & 0x80) == 0x00): - temp3 = 0x04 #red - elif ((temp1 & 0x80) == 0x00): - temp3 = 0x00 #black - else: - temp3 = 0x03 #white - - temp3 = (temp3 << 4) & 0xFF - temp1 = (temp1 << 1) & 0xFF - temp2 = (temp2 << 1) & 0xFF - j += 1 - if((temp2 & 0x80) == 0x00): - temp3 |= 0x04 #red - elif ((temp1 & 0x80) == 0x00): - temp3 |= 0x00 #black - else: - temp3 |= 0x03 #white - temp1 = (temp1 << 1) & 0xFF - temp2 = (temp2 << 1) & 0xFF - self.send_data(temp3) - j += 1 - - self.send_command(0x04) # POWER ON - self.ReadBusy() - self.send_command(0x12) # display refresh - epdconfig.delay_ms(100) - self.ReadBusy() - - def Clear(self): - self.send_command(0x10) - for i in range(0, self.width // 8 * self.height): - self.send_data(0x33) - self.send_data(0x33) - self.send_data(0x33) - self.send_data(0x33) - - self.send_command(0x04) # POWER ON - self.ReadBusy() - self.send_command(0x12) # display refresh - epdconfig.delay_ms(100) - self.ReadBusy() - - def sleep(self): - self.send_command(0x02) # POWER_OFF - self.ReadBusy() - self.send_command(0x07) # DEEP_SLEEP - self.send_data(0xA5) # check code - - epdconfig.module_exit() -### END OF FILE ### - diff --git a/Raspberry Pi/python3/lib/epd7in5.py b/Raspberry Pi/python3/lib/epd7in5.py deleted file mode 100644 index a03e62a..0000000 --- a/Raspberry Pi/python3/lib/epd7in5.py +++ /dev/null @@ -1,200 +0,0 @@ -# ***************************************************************************** -# * | File : epd7in5.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-20 -# # | Info : python3 demo -# ----------------------------------------------------------------------------- -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and//or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - - -import epdconfig - -# Display resolution -EPD_WIDTH = 640 -EPD_HEIGHT = 384 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - epdconfig.delay_ms(100) - print("e-Paper busy release") - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - # EPD hardware init start - self.reset() - - self.send_command(0x01) # POWER_SETTING - self.send_data(0x37) - self.send_data(0x00) - - self.send_command(0x00) # PANEL_SETTING - self.send_data(0xCF) - self.send_data(0x08) - - self.send_command(0x06) # BOOSTER_SOFT_START - self.send_data(0xc7) - self.send_data(0xcc) - self.send_data(0x28) - - self.send_command(0x04) # POWER_ON - self.ReadBusy() - - self.send_command(0x30) # PLL_CONTROL - self.send_data(0x3c) - - self.send_command(0x41) # TEMPERATURE_CALIBRATION - self.send_data(0x00) - - self.send_command(0x50) # VCOM_AND_DATA_INTERVAL_SETTING - self.send_data(0x77) - - self.send_command(0x60) # TCON_SETTING - self.send_data(0x22) - - self.send_command(0x61) # TCON_RESOLUTION - self.send_data(EPD_WIDTH >> 8) #source 640 - self.send_data(EPD_WIDTH & 0xff) - self.send_data(EPD_HEIGHT >> 8) #gate 384 - self.send_data(EPD_HEIGHT & 0xff) - - self.send_command(0x82) # VCM_DC_SETTING - self.send_data(0x1E) # decide by LUT file - - self.send_command(0xe5) # FLASH MODE - self.send_data(0x03) - - # EPD hardware init end - return 0 - - def getbuffer(self, image): - buf = [0x00] * (self.width * self.height // 4) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - print("imwidth = ", imwidth, "imheight = ", imheight) - if(imwidth == self.width and imheight == self.height): - 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] < 64: # black - buf[(x + y * self.width) // 4] &= ~(0xC0 >> (x % 4 * 2)) - elif pixels[x, y] < 192: # convert gray to red - buf[(x + y * self.width) // 4] &= ~(0xC0 >> (x % 4 * 2)) - buf[(x + y * self.width) // 4] |= 0x40 >> (x % 4 * 2) - else: # white - buf[(x + y * self.width) // 4] |= 0xC0 >> (x % 4 * 2) - elif(imwidth == self.height and imheight == self.width): - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] < 64: # black - buf[(newx + newy*self.width) // 4] &= ~(0xC0 >> (y % 4 * 2)) - elif pixels[x, y] < 192: # convert gray to red - buf[(newx + newy*self.width) // 4] &= ~(0xC0 >> (y % 4 * 2)) - buf[(newx + newy*self.width) // 4] |= 0x40 >> (y % 4 * 2) - else: # white - buf[(newx + newy*self.width) // 4] |= 0xC0 >> (y % 4 * 2) - return buf - - def display(self, image): - self.send_command(0x10) - for i in range(0, self.width // 4 * self.height): - temp1 = image[i] - j = 0 - while (j < 4): - if ((temp1 & 0xC0) == 0xC0): - temp2 = 0x03 - elif ((temp1 & 0xC0) == 0x00): - temp2 = 0x00 - else: - temp2 = 0x04 - temp2 = (temp2 << 4) & 0xFF - temp1 = (temp1 << 2) & 0xFF - j += 1 - if((temp1 & 0xC0) == 0xC0): - temp2 |= 0x03 - elif ((temp1 & 0xC0) == 0x00): - temp2 |= 0x00 - else: - temp2 |= 0x04 - temp1 = (temp1 << 2) & 0xFF - self.send_data(temp2) - j += 1 - - self.send_command(0x12) - epdconfig.delay_ms(100) - self.ReadBusy() - - def Clear(self): - self.send_command(0x10) - for i in range(0, self.width // 4 * self.height): - for j in range(0, 4): - self.send_data(0x33) - - self.send_command(0x12) - self.ReadBusy() - - def sleep(self): - self.send_command(0x02) # POWER_OFF - self.ReadBusy() - - self.send_command(0x07) # DEEP_SLEEP - self.send_data(0XA5) - - epdconfig.module_exit() -### END OF FILE ### - diff --git a/Raspberry Pi/python3/lib/epd7in5bc.py b/Raspberry Pi/python3/lib/epd7in5bc.py deleted file mode 100644 index bd7d047..0000000 --- a/Raspberry Pi/python3/lib/epd7in5bc.py +++ /dev/null @@ -1,200 +0,0 @@ -# ***************************************************************************** -# * | File : epd7in5bc.py -# * | Author : Waveshare team -# * | Function : Electronic paper driver -# * | Info : -# *---------------- -# * | This version: V4.0 -# * | Date : 2019-06-20 -# # | Info : python3 demo -# ----------------------------------------------------------------------------- -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and//or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - - -import epdconfig - -# Display resolution -EPD_WIDTH = 640 -EPD_HEIGHT = 384 - -class EPD: - def __init__(self): - self.reset_pin = epdconfig.RST_PIN - self.dc_pin = epdconfig.DC_PIN - self.busy_pin = epdconfig.BUSY_PIN - self.cs_pin = epdconfig.CS_PIN - self.width = EPD_WIDTH - self.height = EPD_HEIGHT - - # Hardware reset - def reset(self): - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - epdconfig.digital_write(self.reset_pin, 0) - epdconfig.delay_ms(10) - epdconfig.digital_write(self.reset_pin, 1) - epdconfig.delay_ms(200) - - def send_command(self, command): - epdconfig.digital_write(self.dc_pin, 0) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([command]) - epdconfig.digital_write(self.cs_pin, 1) - - def send_data(self, data): - epdconfig.digital_write(self.dc_pin, 1) - epdconfig.digital_write(self.cs_pin, 0) - epdconfig.spi_writebyte([data]) - epdconfig.digital_write(self.cs_pin, 1) - - def ReadBusy(self): - print("e-Paper busy") - while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy - epdconfig.delay_ms(100) - print("e-Paper busy release") - - def init(self): - if (epdconfig.module_init() != 0): - return -1 - - self.reset() - - self.send_command(0x01) # POWER_SETTING - self.send_data(0x37) - self.send_data(0x00) - - self.send_command(0x00) # PANEL_SETTING - self.send_data(0xCF) - self.send_data(0x08) - - self.send_command(0x30) # PLL_CONTROL - self.send_data(0x3A) # PLL: 0-15:0x3C, 15+:0x3A - - self.send_command(0x82) # VCM_DC_SETTING - self.send_data(0x28) #all temperature range - - self.send_command(0x06) # BOOSTER_SOFT_START - self.send_data(0xc7) - self.send_data(0xcc) - self.send_data(0x15) - - self.send_command(0x50) # VCOM AND DATA INTERVAL SETTING - self.send_data(0x77) - - self.send_command(0x60) # TCON_SETTING - self.send_data(0x22) - - self.send_command(0x65) # FLASH CONTROL - self.send_data(0x00) - - self.send_command(0x61) # TCON_RESOLUTION - self.send_data(self.width >> 8) # source 640 - self.send_data(self.width & 0xff) - self.send_data(self.height >> 8) # gate 384 - self.send_data(self.height & 0xff) - - self.send_command(0xe5) # FLASH MODE - self.send_data(0x03) - - return 0 - - def getbuffer(self, image): - # print "bufsiz = ",(self.width//8) * self.height - buf = [0xFF] * ((self.width//8) * self.height) - image_monocolor = image.convert('1') - imwidth, imheight = image_monocolor.size - pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight - if(imwidth == self.width and imheight == self.height): - print("Horizontal") - 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] == 0: - buf[(x + y * self.width) // 8] &= ~(0x80 >> (x % 8)) - elif(imwidth == self.height and imheight == self.width): - print("Vertical") - for y in range(imheight): - for x in range(imwidth): - newx = y - newy = self.height - x - 1 - if pixels[x, y] == 0: - buf[(newx + newy*self.width) // 8] &= ~(0x80 >> (y % 8)) - return buf - - def display(self, imageblack, imagered): - self.send_command(0x10) - for i in range(0, self.width // 8 * self.height): - temp1 = imageblack[i] - temp2 = imagered[i] - j = 0 - while (j < 8): - if ((temp2 & 0x80) == 0x00): - temp3 = 0x04 #red - elif ((temp1 & 0x80) == 0x00): - temp3 = 0x00 #black - else: - temp3 = 0x03 #white - - temp3 = (temp3 << 4) & 0xFF - temp1 = (temp1 << 1) & 0xFF - temp2 = (temp2 << 1) & 0xFF - j += 1 - if((temp2 & 0x80) == 0x00): - temp3 |= 0x04 #red - elif ((temp1 & 0x80) == 0x00): - temp3 |= 0x00 #black - else: - temp3 |= 0x03 #white - temp1 = (temp1 << 1) & 0xFF - temp2 = (temp2 << 1) & 0xFF - self.send_data(temp3) - j += 1 - - self.send_command(0x04) # POWER ON - self.ReadBusy() - self.send_command(0x12) # display refresh - epdconfig.delay_ms(100) - self.ReadBusy() - - def Clear(self): - self.send_command(0x10) - for i in range(0, self.width // 8 * self.height): - self.send_data(0x33) - self.send_data(0x33) - self.send_data(0x33) - self.send_data(0x33) - - self.send_command(0x04) # POWER ON - self.ReadBusy() - self.send_command(0x12) # display refresh - epdconfig.delay_ms(100) - self.ReadBusy() - - def sleep(self): - self.send_command(0x02) # POWER_OFF - self.ReadBusy() - - self.send_command(0x07) # DEEP_SLEEP - self.send_data(0XA5) - - epdconfig.module_exit() -### END OF FILE ### - diff --git a/Raspberry Pi/python3/lib/epdconfig.py b/Raspberry Pi/python3/lib/epdconfig.py deleted file mode 100644 index 148f934..0000000 --- a/Raspberry Pi/python3/lib/epdconfig.py +++ /dev/null @@ -1,75 +0,0 @@ -# /***************************************************************************** -# * | File : epdconfig.py -# * | Author : Waveshare team -# * | Function : Hardware underlying interface -# * | Info : -# *---------------- -# * | This version: V1.0 -# * | Date : 2019-06-21 -# * | Info : -# ****************************************************************************** -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documnetation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. -# - -import spidev -import RPi.GPIO as GPIO -import time - -# Pin definition -RST_PIN = 17 -DC_PIN = 25 -CS_PIN = 8 -BUSY_PIN = 24 - -# SPI device, bus = 0, device = 0 -SPI = spidev.SpiDev(0, 0) - -def digital_write(pin, value): - GPIO.output(pin, value) - -def digital_read(pin): - return GPIO.input(BUSY_PIN) - -def delay_ms(delaytime): - time.sleep(delaytime / 1000.0) - -def spi_writebyte(data): - SPI.writebytes(data) - -def module_init(): - GPIO.setmode(GPIO.BCM) - GPIO.setwarnings(False) - GPIO.setup(RST_PIN, GPIO.OUT) - GPIO.setup(DC_PIN, GPIO.OUT) - GPIO.setup(CS_PIN, GPIO.OUT) - GPIO.setup(BUSY_PIN, GPIO.IN) - SPI.max_speed_hz = 2000000 - SPI.mode = 0b00 - return 0 - -def module_exit(): - print("spi end") - SPI.close() - - print("close 5V, Module enters 0 power consumption ...") - GPIO.output(RST_PIN, 0) - GPIO.output(DC_PIN, 0) - - GPIO.cleanup() -### END OF FILE ### diff --git a/Raspberry Pi/python3/pic/100x100.bmp b/Raspberry Pi/python3/pic/100x100.bmp deleted file mode 100644 index 70f4584..0000000 Binary files a/Raspberry Pi/python3/pic/100x100.bmp and /dev/null differ diff --git a/Raspberry Pi/python3/pic/1in54.bmp b/Raspberry Pi/python3/pic/1in54.bmp deleted file mode 100644 index a877bfa..0000000 Binary files a/Raspberry Pi/python3/pic/1in54.bmp and /dev/null differ diff --git a/Raspberry Pi/python3/pic/1in54b-b.bmp b/Raspberry Pi/python3/pic/1in54b-b.bmp deleted file mode 100644 index e992aea..0000000 Binary files a/Raspberry Pi/python3/pic/1in54b-b.bmp and /dev/null differ diff --git a/Raspberry Pi/python3/pic/1in54b-r.bmp b/Raspberry Pi/python3/pic/1in54b-r.bmp deleted file mode 100644 index 68c339b..0000000 Binary files a/Raspberry Pi/python3/pic/1in54b-r.bmp and /dev/null differ diff --git a/Raspberry Pi/python3/pic/1in54c-b.bmp b/Raspberry Pi/python3/pic/1in54c-b.bmp deleted file mode 100644 index 159795e..0000000 Binary files a/Raspberry Pi/python3/pic/1in54c-b.bmp and /dev/null differ diff --git a/Raspberry Pi/python3/pic/1in54c-y.bmp b/Raspberry Pi/python3/pic/1in54c-y.bmp deleted file mode 100644 index fe37382..0000000 Binary files a/Raspberry Pi/python3/pic/1in54c-y.bmp and /dev/null differ diff --git a/Raspberry Pi/python3/pic/2in13-v2.bmp b/Raspberry Pi/python3/pic/2in13-v2.bmp deleted file mode 100644 index 5156852..0000000 Binary files a/Raspberry Pi/python3/pic/2in13-v2.bmp and /dev/null differ diff --git a/Raspberry Pi/python3/pic/2in13.bmp b/Raspberry Pi/python3/pic/2in13.bmp deleted file mode 100644 index a579e2a..0000000 Binary files a/Raspberry Pi/python3/pic/2in13.bmp and /dev/null differ diff --git a/Raspberry Pi/python3/pic/2in13bc-b.bmp b/Raspberry Pi/python3/pic/2in13bc-b.bmp deleted file mode 100644 index 6b70b26..0000000 Binary files a/Raspberry Pi/python3/pic/2in13bc-b.bmp and /dev/null differ diff --git a/Raspberry Pi/python3/pic/2in13bc-ry.bmp b/Raspberry Pi/python3/pic/2in13bc-ry.bmp deleted file mode 100644 index ec5cf02..0000000 Binary files a/Raspberry Pi/python3/pic/2in13bc-ry.bmp and /dev/null differ diff --git a/Raspberry Pi/python3/pic/2in13d.bmp b/Raspberry Pi/python3/pic/2in13d.bmp deleted file mode 100644 index 6f0a83d..0000000 Binary files a/Raspberry Pi/python3/pic/2in13d.bmp and /dev/null differ diff --git a/Raspberry Pi/python3/pic/2in7.bmp b/Raspberry Pi/python3/pic/2in7.bmp deleted file mode 100644 index 48138bb..0000000 Binary files a/Raspberry Pi/python3/pic/2in7.bmp and /dev/null differ diff --git a/Raspberry Pi/python3/pic/2in7b-b.bmp b/Raspberry Pi/python3/pic/2in7b-b.bmp deleted file mode 100644 index d25dec3..0000000 Binary files a/Raspberry Pi/python3/pic/2in7b-b.bmp and /dev/null differ diff --git a/Raspberry Pi/python3/pic/2in7b-r.bmp b/Raspberry Pi/python3/pic/2in7b-r.bmp deleted file mode 100644 index 66d51b1..0000000 Binary files a/Raspberry Pi/python3/pic/2in7b-r.bmp and /dev/null differ diff --git a/Raspberry Pi/python3/pic/2in9.bmp b/Raspberry Pi/python3/pic/2in9.bmp deleted file mode 100644 index c3e0181..0000000 Binary files a/Raspberry Pi/python3/pic/2in9.bmp and /dev/null differ diff --git a/Raspberry Pi/python3/pic/2in9bc-b.bmp b/Raspberry Pi/python3/pic/2in9bc-b.bmp deleted file mode 100644 index d45ff48..0000000 Binary files a/Raspberry Pi/python3/pic/2in9bc-b.bmp and /dev/null differ diff --git a/Raspberry Pi/python3/pic/2in9bc-ry.bmp b/Raspberry Pi/python3/pic/2in9bc-ry.bmp deleted file mode 100644 index 402727c..0000000 Binary files a/Raspberry Pi/python3/pic/2in9bc-ry.bmp and /dev/null differ diff --git a/Raspberry Pi/python3/pic/2in9d.bmp b/Raspberry Pi/python3/pic/2in9d.bmp deleted file mode 100644 index 61e0fd3..0000000 Binary files a/Raspberry Pi/python3/pic/2in9d.bmp and /dev/null differ diff --git a/Raspberry Pi/python3/pic/4in2.bmp b/Raspberry Pi/python3/pic/4in2.bmp deleted file mode 100644 index b380a1c..0000000 Binary files a/Raspberry Pi/python3/pic/4in2.bmp and /dev/null differ diff --git a/Raspberry Pi/python3/pic/4in2b-b.bmp b/Raspberry Pi/python3/pic/4in2b-b.bmp deleted file mode 100644 index 7c537a4..0000000 Binary files a/Raspberry Pi/python3/pic/4in2b-b.bmp and /dev/null differ diff --git a/Raspberry Pi/python3/pic/4in2b-r.bmp b/Raspberry Pi/python3/pic/4in2b-r.bmp deleted file mode 100644 index 3de854c..0000000 Binary files a/Raspberry Pi/python3/pic/4in2b-r.bmp and /dev/null differ diff --git a/Raspberry Pi/python3/pic/4in2c-b.bmp b/Raspberry Pi/python3/pic/4in2c-b.bmp deleted file mode 100644 index b380a1c..0000000 Binary files a/Raspberry Pi/python3/pic/4in2c-b.bmp and /dev/null differ diff --git a/Raspberry Pi/python3/pic/4in2c-y.bmp b/Raspberry Pi/python3/pic/4in2c-y.bmp deleted file mode 100644 index cd5c0d6..0000000 Binary files a/Raspberry Pi/python3/pic/4in2c-y.bmp and /dev/null differ diff --git a/Raspberry Pi/python3/pic/5in83.bmp b/Raspberry Pi/python3/pic/5in83.bmp deleted file mode 100644 index 6b8f604..0000000 Binary files a/Raspberry Pi/python3/pic/5in83.bmp and /dev/null differ diff --git a/Raspberry Pi/python3/pic/5in83bc-b.bmp b/Raspberry Pi/python3/pic/5in83bc-b.bmp deleted file mode 100644 index 545e060..0000000 Binary files a/Raspberry Pi/python3/pic/5in83bc-b.bmp and /dev/null differ diff --git a/Raspberry Pi/python3/pic/5in83bc-ry.bmp b/Raspberry Pi/python3/pic/5in83bc-ry.bmp deleted file mode 100644 index 41884b3..0000000 Binary files a/Raspberry Pi/python3/pic/5in83bc-ry.bmp and /dev/null differ diff --git a/Raspberry Pi/python3/pic/7in5.bmp b/Raspberry Pi/python3/pic/7in5.bmp deleted file mode 100644 index b997800..0000000 Binary files a/Raspberry Pi/python3/pic/7in5.bmp and /dev/null differ diff --git a/Raspberry Pi/python3/pic/7in5b-b.bmp b/Raspberry Pi/python3/pic/7in5b-b.bmp deleted file mode 100644 index 8f84025..0000000 Binary files a/Raspberry Pi/python3/pic/7in5b-b.bmp and /dev/null differ diff --git a/Raspberry Pi/python3/pic/7in5b-r.bmp b/Raspberry Pi/python3/pic/7in5b-r.bmp deleted file mode 100644 index 3f81b2c..0000000 Binary files a/Raspberry Pi/python3/pic/7in5b-r.bmp and /dev/null differ diff --git a/Raspberry Pi/python3/pic/7in5c-b.bmp b/Raspberry Pi/python3/pic/7in5c-b.bmp deleted file mode 100644 index a69ddbc..0000000 Binary files a/Raspberry Pi/python3/pic/7in5c-b.bmp and /dev/null differ diff --git a/Raspberry Pi/python3/pic/7in5c-r.bmp b/Raspberry Pi/python3/pic/7in5c-r.bmp deleted file mode 100644 index be84903..0000000 Binary files a/Raspberry Pi/python3/pic/7in5c-r.bmp and /dev/null differ diff --git a/RaspberryPi&JetsonNano/c/Makefile b/RaspberryPi&JetsonNano/c/Makefile new file mode 100644 index 0000000..0d3bc83 --- /dev/null +++ b/RaspberryPi&JetsonNano/c/Makefile @@ -0,0 +1,81 @@ +DIR_Config = ./lib/Config +DIR_EPD = ./lib/e-Paper +DIR_FONTS = ./lib/Fonts +DIR_GUI = ./lib/GUI +DIR_Examples = ./examples +DIR_BIN = ./bin + +OBJ_C = $(wildcard ${DIR_EPD}/*.c ${DIR_GUI}/*.c ${DIR_Examples}/*.c ${DIR_FONTS}/*.c ) +OBJ_O = $(patsubst %.c,${DIR_BIN}/%.o,$(notdir ${OBJ_C})) +RPI_DEV_C = $(wildcard $(DIR_BIN)/dev_hardware_SPI.o $(DIR_BIN)/RPI_sysfs_gpio.o $(DIR_BIN)/DEV_Config.o ) +JETSON_DEV_C = $(wildcard $(DIR_BIN)/sysfs_software_spi.o $(DIR_BIN)/sysfs_gpio.o $(DIR_BIN)/DEV_Config.o ) + + +DEBUG = -D DEBUG + +# USELIB_RPI = USE_BCM2835_LIB +# USELIB_RPI = USE_WIRINGPI_LIB +USELIB_RPI = USE_DEV_LIB + +ifeq ($(USELIB_RPI), USE_BCM2835_LIB) + LIB_RPI = -lbcm2835 -lm +else ifeq ($(USELIB_RPI), USE_WIRINGPI_LIB) + LIB_RPI = -lwiringPi -lm +else ifeq ($(USELIB_RPI), USE_DEV_LIB) + LIB_RPI = -lm +endif +DEBUG_RPI = -D $(USELIB_RPI) -D RPI + +USELIB_JETSONI = USE_DEV_LIB +# USELIB_JETSONI = USE_HARDWARE_LIB +ifeq ($(USELIB_JETSONI), USE_DEV_LIB) + LIB_JETSONI = -lm +else ifeq ($(USELIB_JETSONI), USE_HARDWARE_LIB) + LIB_JETSONI = -lm +endif +DEBUG_JETSONI = -D $(USELIB_JETSONI) -D JETSON + +.PHONY : RPI JETSON clean + +RPI:RPI_DEV RPI_epd +JETSON: JETSON_DEV JETSON_epd + +TARGET = epd +CC = gcc +MSG = -g -O0 -Wall +CFLAGS += $(MSG) + +RPI_epd:${OBJ_O} + echo $(@) + $(CC) $(CFLAGS) -D RPI $(OBJ_O) $(RPI_DEV_C) -o $(TARGET) $(LIB_RPI) $(DEBUG) + +JETSON_epd:${OBJ_O} + echo $(@) + $(CC) $(CFLAGS) $(OBJ_O) $(JETSON_DEV_C) -o $(TARGET) $(LIB_JETSONI) $(DEBUG) + +${DIR_BIN}/%.o:$(DIR_Examples)/%.c + $(CC) $(CFLAGS) -c $< -o $@ -I $(DIR_Config) -I $(DIR_GUI) -I $(DIR_EPD) $(DEBUG) + +${DIR_BIN}/%.o:$(DIR_EPD)/%.c + $(CC) $(CFLAGS) -c $< -o $@ -I $(DIR_Config) $(DEBUG) + +${DIR_BIN}/%.o:$(DIR_FONTS)/%.c + $(CC) $(CFLAGS) -c $< -o $@ $(DEBUG) + +${DIR_BIN}/%.o:$(DIR_GUI)/%.c + $(CC) $(CFLAGS) -c $< -o $@ -I $(DIR_Config) $(DEBUG) + +RPI_DEV: + $(CC) $(CFLAGS) $(DEBUG_RPI) -c $(DIR_Config)/dev_hardware_SPI.c -o $(DIR_BIN)/dev_hardware_SPI.o $(LIB_RPI) $(DEBUG) + $(CC) $(CFLAGS) $(DEBUG_RPI) -c $(DIR_Config)/RPI_sysfs_gpio.c -o $(DIR_BIN)/RPI_sysfs_gpio.o $(LIB_RPI) $(DEBUG) + $(CC) $(CFLAGS) $(DEBUG_RPI) -c $(DIR_Config)/DEV_Config.c -o $(DIR_BIN)/DEV_Config.o $(LIB_RPI) $(DEBUG) + +JETSON_DEV: + $(CC) $(CFLAGS) $(DEBUG_JETSONI) -c $(DIR_Config)/sysfs_software_spi.c -o $(DIR_BIN)/sysfs_software_spi.o $(LIB_JETSONI) $(DEBUG) + $(CC) $(CFLAGS) $(DEBUG_JETSONI) -c $(DIR_Config)/sysfs_gpio.c -o $(DIR_BIN)/sysfs_gpio.o $(LIB_JETSONI) $(DEBUG) + $(CC) $(CFLAGS) $(DEBUG_JETSONI) -c $(DIR_Config)/DEV_Config.c -o $(DIR_BIN)/DEV_Config.o $(LIB_JETSONI) $(DEBUG) + +clean : + rm $(DIR_BIN)/*.* + rm $(TARGET) + diff --git a/RaspberryPi&JetsonNano/c/bin/DEV_Config.o b/RaspberryPi&JetsonNano/c/bin/DEV_Config.o new file mode 100644 index 0000000..4d00d1a Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/DEV_Config.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/EPD_1in54.o b/RaspberryPi&JetsonNano/c/bin/EPD_1in54.o new file mode 100644 index 0000000..a7378a0 Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/EPD_1in54.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/EPD_1in54_V2.o b/RaspberryPi&JetsonNano/c/bin/EPD_1in54_V2.o new file mode 100644 index 0000000..4a9567c Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/EPD_1in54_V2.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/EPD_1in54_V2_test.o b/RaspberryPi&JetsonNano/c/bin/EPD_1in54_V2_test.o new file mode 100644 index 0000000..04fece0 Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/EPD_1in54_V2_test.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/EPD_1in54_test.o b/RaspberryPi&JetsonNano/c/bin/EPD_1in54_test.o new file mode 100644 index 0000000..aa389ac Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/EPD_1in54_test.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/EPD_1in54b.o b/RaspberryPi&JetsonNano/c/bin/EPD_1in54b.o new file mode 100644 index 0000000..47a4c41 Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/EPD_1in54b.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/EPD_1in54b_test.o b/RaspberryPi&JetsonNano/c/bin/EPD_1in54b_test.o new file mode 100644 index 0000000..d5bdb2d Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/EPD_1in54b_test.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/EPD_1in54c.o b/RaspberryPi&JetsonNano/c/bin/EPD_1in54c.o new file mode 100644 index 0000000..2ceeeee Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/EPD_1in54c.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/EPD_1in54c_test.o b/RaspberryPi&JetsonNano/c/bin/EPD_1in54c_test.o new file mode 100644 index 0000000..bcc6abf Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/EPD_1in54c_test.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/EPD_2in13.o b/RaspberryPi&JetsonNano/c/bin/EPD_2in13.o new file mode 100644 index 0000000..7578213 Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/EPD_2in13.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/EPD_2in13_V2.o b/RaspberryPi&JetsonNano/c/bin/EPD_2in13_V2.o new file mode 100644 index 0000000..5f15458 Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/EPD_2in13_V2.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/EPD_2in13_V2_test.o b/RaspberryPi&JetsonNano/c/bin/EPD_2in13_V2_test.o new file mode 100644 index 0000000..b7ae374 Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/EPD_2in13_V2_test.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/EPD_2in13_test.o b/RaspberryPi&JetsonNano/c/bin/EPD_2in13_test.o new file mode 100644 index 0000000..3572dd8 Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/EPD_2in13_test.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/EPD_2in13bc.o b/RaspberryPi&JetsonNano/c/bin/EPD_2in13bc.o new file mode 100644 index 0000000..5683538 Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/EPD_2in13bc.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/EPD_2in13bc_test.o b/RaspberryPi&JetsonNano/c/bin/EPD_2in13bc_test.o new file mode 100644 index 0000000..b6acbea Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/EPD_2in13bc_test.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/EPD_2in13d.o b/RaspberryPi&JetsonNano/c/bin/EPD_2in13d.o new file mode 100644 index 0000000..e905ade Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/EPD_2in13d.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/EPD_2in13d_test.o b/RaspberryPi&JetsonNano/c/bin/EPD_2in13d_test.o new file mode 100644 index 0000000..8d9dca4 Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/EPD_2in13d_test.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/EPD_2in7.o b/RaspberryPi&JetsonNano/c/bin/EPD_2in7.o new file mode 100644 index 0000000..562f24c Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/EPD_2in7.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/EPD_2in7_test.o b/RaspberryPi&JetsonNano/c/bin/EPD_2in7_test.o new file mode 100644 index 0000000..ae8b480 Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/EPD_2in7_test.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/EPD_2in7b.o b/RaspberryPi&JetsonNano/c/bin/EPD_2in7b.o new file mode 100644 index 0000000..ad98a19 Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/EPD_2in7b.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/EPD_2in7b_test.o b/RaspberryPi&JetsonNano/c/bin/EPD_2in7b_test.o new file mode 100644 index 0000000..c28f247 Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/EPD_2in7b_test.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/EPD_2in9.o b/RaspberryPi&JetsonNano/c/bin/EPD_2in9.o new file mode 100644 index 0000000..bfbbae7 Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/EPD_2in9.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/EPD_2in9_test.o b/RaspberryPi&JetsonNano/c/bin/EPD_2in9_test.o new file mode 100644 index 0000000..21fa33b Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/EPD_2in9_test.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/EPD_2in9bc.o b/RaspberryPi&JetsonNano/c/bin/EPD_2in9bc.o new file mode 100644 index 0000000..27b60b1 Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/EPD_2in9bc.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/EPD_2in9bc_test.o b/RaspberryPi&JetsonNano/c/bin/EPD_2in9bc_test.o new file mode 100644 index 0000000..a3e50cf Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/EPD_2in9bc_test.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/EPD_2in9d.o b/RaspberryPi&JetsonNano/c/bin/EPD_2in9d.o new file mode 100644 index 0000000..6745634 Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/EPD_2in9d.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/EPD_2in9d_test.o b/RaspberryPi&JetsonNano/c/bin/EPD_2in9d_test.o new file mode 100644 index 0000000..c41990a Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/EPD_2in9d_test.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/EPD_4in2.o b/RaspberryPi&JetsonNano/c/bin/EPD_4in2.o new file mode 100644 index 0000000..85c42f1 Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/EPD_4in2.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/EPD_4in2_test.o b/RaspberryPi&JetsonNano/c/bin/EPD_4in2_test.o new file mode 100644 index 0000000..4c596c0 Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/EPD_4in2_test.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/EPD_4in2bc.o b/RaspberryPi&JetsonNano/c/bin/EPD_4in2bc.o new file mode 100644 index 0000000..b1fc195 Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/EPD_4in2bc.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/EPD_4in2bc_test.o b/RaspberryPi&JetsonNano/c/bin/EPD_4in2bc_test.o new file mode 100644 index 0000000..1b20864 Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/EPD_4in2bc_test.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/EPD_5in83.o b/RaspberryPi&JetsonNano/c/bin/EPD_5in83.o new file mode 100644 index 0000000..ea04925 Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/EPD_5in83.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/EPD_5in83_test.o b/RaspberryPi&JetsonNano/c/bin/EPD_5in83_test.o new file mode 100644 index 0000000..8b4e32b Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/EPD_5in83_test.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/EPD_5in83bc.o b/RaspberryPi&JetsonNano/c/bin/EPD_5in83bc.o new file mode 100644 index 0000000..fef5d57 Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/EPD_5in83bc.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/EPD_5in83bc_test.o b/RaspberryPi&JetsonNano/c/bin/EPD_5in83bc_test.o new file mode 100644 index 0000000..2e69a12 Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/EPD_5in83bc_test.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/EPD_7in5.o b/RaspberryPi&JetsonNano/c/bin/EPD_7in5.o new file mode 100644 index 0000000..691ce56 Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/EPD_7in5.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/EPD_7in5_test.o b/RaspberryPi&JetsonNano/c/bin/EPD_7in5_test.o new file mode 100644 index 0000000..5fd187a Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/EPD_7in5_test.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/EPD_7in5bc.o b/RaspberryPi&JetsonNano/c/bin/EPD_7in5bc.o new file mode 100644 index 0000000..dcf5ebf Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/EPD_7in5bc.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/EPD_7in5bc_test.o b/RaspberryPi&JetsonNano/c/bin/EPD_7in5bc_test.o new file mode 100644 index 0000000..00f9499 Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/EPD_7in5bc_test.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/GUI_BMPfile.o b/RaspberryPi&JetsonNano/c/bin/GUI_BMPfile.o new file mode 100644 index 0000000..b82a2bc Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/GUI_BMPfile.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/GUI_Paint.o b/RaspberryPi&JetsonNano/c/bin/GUI_Paint.o new file mode 100644 index 0000000..ceb6b5c Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/GUI_Paint.o differ diff --git a/Raspberry Pi/c/bin/ImageData.o b/RaspberryPi&JetsonNano/c/bin/ImageData.o similarity index 99% rename from Raspberry Pi/c/bin/ImageData.o rename to RaspberryPi&JetsonNano/c/bin/ImageData.o index 6340eaf..72d7ed1 100644 Binary files a/Raspberry Pi/c/bin/ImageData.o and b/RaspberryPi&JetsonNano/c/bin/ImageData.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/RPI_sysfs_gpio.o b/RaspberryPi&JetsonNano/c/bin/RPI_sysfs_gpio.o new file mode 100644 index 0000000..a537ae8 Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/RPI_sysfs_gpio.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/dev_hardware_SPI.o b/RaspberryPi&JetsonNano/c/bin/dev_hardware_SPI.o new file mode 100644 index 0000000..0fa828e Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/dev_hardware_SPI.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/font12.o b/RaspberryPi&JetsonNano/c/bin/font12.o new file mode 100644 index 0000000..759c835 Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/font12.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/font12CN.o b/RaspberryPi&JetsonNano/c/bin/font12CN.o new file mode 100644 index 0000000..27e24b7 Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/font12CN.o differ diff --git a/Raspberry Pi/c/bin/font16.o b/RaspberryPi&JetsonNano/c/bin/font16.o similarity index 54% rename from Raspberry Pi/c/bin/font16.o rename to RaspberryPi&JetsonNano/c/bin/font16.o index a38dae8..dc62eb9 100644 Binary files a/Raspberry Pi/c/bin/font16.o and b/RaspberryPi&JetsonNano/c/bin/font16.o differ diff --git a/Raspberry Pi/c/bin/font20.o b/RaspberryPi&JetsonNano/c/bin/font20.o similarity index 59% rename from Raspberry Pi/c/bin/font20.o rename to RaspberryPi&JetsonNano/c/bin/font20.o index 5151392..7031363 100644 Binary files a/Raspberry Pi/c/bin/font20.o and b/RaspberryPi&JetsonNano/c/bin/font20.o differ diff --git a/Raspberry Pi/c/bin/font24.o b/RaspberryPi&JetsonNano/c/bin/font24.o similarity index 71% rename from Raspberry Pi/c/bin/font24.o rename to RaspberryPi&JetsonNano/c/bin/font24.o index 6afcb52..2a093f2 100644 Binary files a/Raspberry Pi/c/bin/font24.o and b/RaspberryPi&JetsonNano/c/bin/font24.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/font24CN.o b/RaspberryPi&JetsonNano/c/bin/font24CN.o new file mode 100644 index 0000000..63908ff Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/font24CN.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/font8.o b/RaspberryPi&JetsonNano/c/bin/font8.o new file mode 100644 index 0000000..f36a0fa Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/font8.o differ diff --git a/RaspberryPi&JetsonNano/c/bin/main.o b/RaspberryPi&JetsonNano/c/bin/main.o new file mode 100644 index 0000000..9231b6c Binary files /dev/null and b/RaspberryPi&JetsonNano/c/bin/main.o differ diff --git a/Raspberry Pi/c/epd b/RaspberryPi&JetsonNano/c/epd similarity index 51% rename from Raspberry Pi/c/epd rename to RaspberryPi&JetsonNano/c/epd index 70bbf5d..541a00d 100644 Binary files a/Raspberry Pi/c/epd and b/RaspberryPi&JetsonNano/c/epd differ diff --git a/Jetson Nano/c/examples/EPD_1in54_V2_test.c b/RaspberryPi&JetsonNano/c/examples/EPD_1in54_V2_test.c similarity index 99% rename from Jetson Nano/c/examples/EPD_1in54_V2_test.c rename to RaspberryPi&JetsonNano/c/examples/EPD_1in54_V2_test.c index fde950d..4718ad0 100644 --- a/Jetson Nano/c/examples/EPD_1in54_V2_test.c +++ b/RaspberryPi&JetsonNano/c/examples/EPD_1in54_V2_test.c @@ -33,7 +33,9 @@ int EPD_1in54_V2_test(void) { printf("EPD_1in54_V2_test Demo\r\n"); - DEV_Module_Init(); + if(DEV_Module_Init()!=0){ + return -1; + } printf("e-Paper Init and Clear...\r\n"); EPD_1IN54_V2_Init(); diff --git a/Raspberry Pi/c/examples/EPD_1in54_test.c b/RaspberryPi&JetsonNano/c/examples/EPD_1in54_test.c similarity index 99% rename from Raspberry Pi/c/examples/EPD_1in54_test.c rename to RaspberryPi&JetsonNano/c/examples/EPD_1in54_test.c index b99796b..d37317e 100644 --- a/Raspberry Pi/c/examples/EPD_1in54_test.c +++ b/RaspberryPi&JetsonNano/c/examples/EPD_1in54_test.c @@ -33,7 +33,9 @@ int EPD_1in54_test(void) { printf("EPD_1IN54_test Demo\r\n"); - DEV_Module_Init(); + if(DEV_Module_Init()!=0){ + return -1; + } printf("e-Paper Init and Clear...\r\n"); EPD_1IN54_Init(EPD_1IN54_FULL); diff --git a/Jetson Nano/c/examples/EPD_1in54b_test.c b/RaspberryPi&JetsonNano/c/examples/EPD_1in54b_test.c similarity index 98% rename from Jetson Nano/c/examples/EPD_1in54b_test.c rename to RaspberryPi&JetsonNano/c/examples/EPD_1in54b_test.c index bf9c9d5..0a9d7e4 100644 --- a/Jetson Nano/c/examples/EPD_1in54b_test.c +++ b/RaspberryPi&JetsonNano/c/examples/EPD_1in54b_test.c @@ -33,7 +33,9 @@ int EPD_1in54b_test(void) { printf("EPD_1in54b_test Demo\r\n"); - DEV_Module_Init(); + if(DEV_Module_Init()!=0){ + return -1; + } printf("e-Paper Init and Clear...\r\n"); EPD_1IN54B_Init(); diff --git a/Jetson Nano/c/examples/EPD_1in54c_test.c b/RaspberryPi&JetsonNano/c/examples/EPD_1in54c_test.c similarity index 98% rename from Jetson Nano/c/examples/EPD_1in54c_test.c rename to RaspberryPi&JetsonNano/c/examples/EPD_1in54c_test.c index f7e4814..3e6cb4a 100644 --- a/Jetson Nano/c/examples/EPD_1in54c_test.c +++ b/RaspberryPi&JetsonNano/c/examples/EPD_1in54c_test.c @@ -33,7 +33,9 @@ int EPD_1in54c_test(void) { printf("EPD_1IN54C_test Demo\r\n"); - DEV_Module_Init(); + if(DEV_Module_Init()!=0){ + return -1; + } printf("e-Paper Init and Clear...\r\n"); EPD_1IN54C_Init(); diff --git a/Raspberry Pi/c/examples/EPD_2in13_V2_test.c b/RaspberryPi&JetsonNano/c/examples/EPD_2in13_V2_test.c similarity index 99% rename from Raspberry Pi/c/examples/EPD_2in13_V2_test.c rename to RaspberryPi&JetsonNano/c/examples/EPD_2in13_V2_test.c index e86139c..6b8b13e 100644 --- a/Raspberry Pi/c/examples/EPD_2in13_V2_test.c +++ b/RaspberryPi&JetsonNano/c/examples/EPD_2in13_V2_test.c @@ -33,7 +33,9 @@ int EPD_2in13_V2_test(void) { printf("EPD_2IN13_V2_test Demo\r\n"); - DEV_Module_Init(); + if(DEV_Module_Init()!=0){ + return -1; + } printf("e-Paper Init and Clear...\r\n"); EPD_2IN13_V2_Init(EPD_2IN13_V2_FULL); diff --git a/Jetson Nano/c/examples/EPD_2in13_test.c b/RaspberryPi&JetsonNano/c/examples/EPD_2in13_test.c similarity index 99% rename from Jetson Nano/c/examples/EPD_2in13_test.c rename to RaspberryPi&JetsonNano/c/examples/EPD_2in13_test.c index 7bd29bb..41554bd 100644 --- a/Jetson Nano/c/examples/EPD_2in13_test.c +++ b/RaspberryPi&JetsonNano/c/examples/EPD_2in13_test.c @@ -33,7 +33,9 @@ int EPD_2in13_test(void) { printf("EPD_2IN13_test Demo\r\n"); - DEV_Module_Init(); + if(DEV_Module_Init()!=0){ + return -1; + } printf("e-Paper Init and Clear...\r\n"); EPD_2IN13_Init(EPD_2IN13_FULL); diff --git a/Jetson Nano/c/examples/EPD_2in13bc_test.c b/RaspberryPi&JetsonNano/c/examples/EPD_2in13bc_test.c similarity index 98% rename from Jetson Nano/c/examples/EPD_2in13bc_test.c rename to RaspberryPi&JetsonNano/c/examples/EPD_2in13bc_test.c index 0ff2e86..1808c01 100644 --- a/Jetson Nano/c/examples/EPD_2in13bc_test.c +++ b/RaspberryPi&JetsonNano/c/examples/EPD_2in13bc_test.c @@ -33,7 +33,9 @@ int EPD_2in13bc_test(void) { printf("EPD_2IN13BC_test Demo\r\n"); - DEV_Module_Init(); + if(DEV_Module_Init()!=0){ + return -1; + } printf("e-Paper Init and Clear...\r\n"); EPD_2IN13BC_Init(); diff --git a/Jetson Nano/c/examples/EPD_2in13d_test.c b/RaspberryPi&JetsonNano/c/examples/EPD_2in13d_test.c similarity index 99% rename from Jetson Nano/c/examples/EPD_2in13d_test.c rename to RaspberryPi&JetsonNano/c/examples/EPD_2in13d_test.c index 500c29e..b1a1f13 100644 --- a/Jetson Nano/c/examples/EPD_2in13d_test.c +++ b/RaspberryPi&JetsonNano/c/examples/EPD_2in13d_test.c @@ -33,7 +33,9 @@ int EPD_2in13d_test(void) { printf("EPD_2IN13D_test Demo\r\n"); - DEV_Module_Init(); + if(DEV_Module_Init()!=0){ + return -1; + } printf("e-Paper Init and Clear...\r\n"); EPD_2IN13D_Init(); diff --git a/Jetson Nano/c/examples/EPD_2in7_test.c b/RaspberryPi&JetsonNano/c/examples/EPD_2in7_test.c similarity index 98% rename from Jetson Nano/c/examples/EPD_2in7_test.c rename to RaspberryPi&JetsonNano/c/examples/EPD_2in7_test.c index 0a15a43..2a5f374 100644 --- a/Jetson Nano/c/examples/EPD_2in7_test.c +++ b/RaspberryPi&JetsonNano/c/examples/EPD_2in7_test.c @@ -33,7 +33,9 @@ int EPD_2in7_test(void) { printf("EPD_2IN7_test Demo\r\n"); - DEV_Module_Init(); + if(DEV_Module_Init()!=0){ + return -1; + } printf("e-Paper Init and Clear...\r\n"); EPD_2IN7_Init(); diff --git a/Jetson Nano/c/examples/EPD_2in7b_test.c b/RaspberryPi&JetsonNano/c/examples/EPD_2in7b_test.c similarity index 97% rename from Jetson Nano/c/examples/EPD_2in7b_test.c rename to RaspberryPi&JetsonNano/c/examples/EPD_2in7b_test.c index 1295b2f..17bc5b0 100644 --- a/Jetson Nano/c/examples/EPD_2in7b_test.c +++ b/RaspberryPi&JetsonNano/c/examples/EPD_2in7b_test.c @@ -33,8 +33,10 @@ int EPD_2in7b_test(void) { printf("EPD_2IN7B_test Demo\r\n"); - DEV_Module_Init(); - + if(DEV_Module_Init()!=0){ + return -1; + } + printf("e-Paper Init and Clear...\r\n"); EPD_2IN7B_Init(); EPD_2IN7B_Clear(); @@ -68,7 +70,7 @@ int EPD_2in7b_test(void) Paint_SelectImage(RedImage); Paint_Clear(WHITE); EPD_2IN7B_Display(BlackImage, RedImage); - DEV_Delay_ms(2000); + DEV_Delay_ms(4000); printf("show bmp------------------------\r\n"); Paint_SelectImage(BlackImage); @@ -76,7 +78,7 @@ int EPD_2in7b_test(void) Paint_SelectImage(RedImage); GUI_ReadBmp("./pic/2in7b-r.bmp", 0, 0); EPD_2IN7B_Display(BlackImage, RedImage); - DEV_Delay_ms(2000); + DEV_Delay_ms(4000); #endif #if 1 // show image for array @@ -86,7 +88,7 @@ int EPD_2in7b_test(void) Paint_SelectImage(RedImage); Paint_DrawBitMap(gImage_2in7b_Red); EPD_2IN7B_Display(BlackImage, RedImage); - DEV_Delay_ms(2000); + DEV_Delay_ms(4000); #endif #if 1 // Drawing on the image @@ -119,7 +121,7 @@ int EPD_2in7b_test(void) printf("EPD_Display\r\n"); EPD_2IN7B_Display(BlackImage, RedImage); - DEV_Delay_ms(2000); + DEV_Delay_ms(4000); #endif printf("Clear...\r\n"); diff --git a/Jetson Nano/c/examples/EPD_2in9_test.c b/RaspberryPi&JetsonNano/c/examples/EPD_2in9_test.c similarity index 95% rename from Jetson Nano/c/examples/EPD_2in9_test.c rename to RaspberryPi&JetsonNano/c/examples/EPD_2in9_test.c index d3414aa..04305ed 100644 --- a/Jetson Nano/c/examples/EPD_2in9_test.c +++ b/RaspberryPi&JetsonNano/c/examples/EPD_2in9_test.c @@ -33,7 +33,9 @@ int EPD_2in9_test(void) { printf("EPD_2IN9_test Demo\r\n"); - DEV_Module_Init(); + if(DEV_Module_Init()!=0){ + return -1; + } printf("e-Paper Init and Clear...\r\n"); EPD_2IN9_Init(EPD_2IN9_FULL); @@ -59,6 +61,7 @@ int EPD_2in9_test(void) EPD_2IN9_Display(BlackImage); DEV_Delay_ms(2000); + Paint_NewImage(BlackImage, EPD_2IN9_WIDTH, EPD_2IN9_HEIGHT, 0, WHITE); printf("show bmp------------------------\r\n"); Paint_SelectImage(BlackImage); GUI_ReadBmp("./pic/2in9.bmp", 0, 0); @@ -67,7 +70,8 @@ int EPD_2in9_test(void) #endif -#if 1 //show image for array +#if 1 //show image for array + Paint_NewImage(BlackImage, EPD_2IN9_WIDTH, EPD_2IN9_HEIGHT, 270, WHITE); printf("show image for array\r\n"); Paint_SelectImage(BlackImage); Paint_Clear(WHITE); diff --git a/Jetson Nano/c/examples/EPD_2in9bc_test.c b/RaspberryPi&JetsonNano/c/examples/EPD_2in9bc_test.c similarity index 98% rename from Jetson Nano/c/examples/EPD_2in9bc_test.c rename to RaspberryPi&JetsonNano/c/examples/EPD_2in9bc_test.c index 3e7a5e2..b45b225 100644 --- a/Jetson Nano/c/examples/EPD_2in9bc_test.c +++ b/RaspberryPi&JetsonNano/c/examples/EPD_2in9bc_test.c @@ -33,7 +33,9 @@ int EPD_2in9bc_test(void) { printf("EPD_2IN9BC_test Demo\r\n"); - DEV_Module_Init(); + if(DEV_Module_Init()!=0){ + return -1; + } printf("e-Paper Init and Clear...\r\n"); EPD_2IN9BC_Init(); diff --git a/Jetson Nano/c/examples/EPD_2in9d_test.c b/RaspberryPi&JetsonNano/c/examples/EPD_2in9d_test.c similarity index 99% rename from Jetson Nano/c/examples/EPD_2in9d_test.c rename to RaspberryPi&JetsonNano/c/examples/EPD_2in9d_test.c index bf7fc18..f008282 100644 --- a/Jetson Nano/c/examples/EPD_2in9d_test.c +++ b/RaspberryPi&JetsonNano/c/examples/EPD_2in9d_test.c @@ -33,7 +33,9 @@ int EPD_2in9d_test(void) { printf("EPD_2IN9D_test Demo\r\n"); - DEV_Module_Init(); + if(DEV_Module_Init()!=0){ + return -1; + } printf("e-Paper Init and Clear...\r\n"); EPD_2IN9D_Init(); diff --git a/Raspberry Pi/c/examples/EPD_4in2_test.c b/RaspberryPi&JetsonNano/c/examples/EPD_4in2_test.c similarity index 98% rename from Raspberry Pi/c/examples/EPD_4in2_test.c rename to RaspberryPi&JetsonNano/c/examples/EPD_4in2_test.c index 96d7471..b805721 100644 --- a/Raspberry Pi/c/examples/EPD_4in2_test.c +++ b/RaspberryPi&JetsonNano/c/examples/EPD_4in2_test.c @@ -33,7 +33,9 @@ int EPD_4in2_test(void) { printf("EPD_4IN2_test Demo\r\n"); - DEV_Module_Init(); + if(DEV_Module_Init()!=0){ + return -1; + } printf("e-Paper Init and Clear...\r\n"); EPD_4IN2_Init(); diff --git a/Jetson Nano/c/examples/EPD_4in2bc_test.c b/RaspberryPi&JetsonNano/c/examples/EPD_4in2bc_test.c similarity index 98% rename from Jetson Nano/c/examples/EPD_4in2bc_test.c rename to RaspberryPi&JetsonNano/c/examples/EPD_4in2bc_test.c index 09bb332..4df5377 100644 --- a/Jetson Nano/c/examples/EPD_4in2bc_test.c +++ b/RaspberryPi&JetsonNano/c/examples/EPD_4in2bc_test.c @@ -33,7 +33,9 @@ int EPD_4in2bc_test(void) { printf("EPD_4IN2BC_test Demo\r\n"); - DEV_Module_Init(); + if(DEV_Module_Init()!=0){ + return -1; + } printf("e-Paper Init and Clear...\r\n"); EPD_4IN2BC_Init(); diff --git a/Raspberry Pi/c/examples/EPD_5in83_test.c b/RaspberryPi&JetsonNano/c/examples/EPD_5in83_test.c similarity index 98% rename from Raspberry Pi/c/examples/EPD_5in83_test.c rename to RaspberryPi&JetsonNano/c/examples/EPD_5in83_test.c index 9ecfc72..d85d6f3 100644 --- a/Raspberry Pi/c/examples/EPD_5in83_test.c +++ b/RaspberryPi&JetsonNano/c/examples/EPD_5in83_test.c @@ -33,7 +33,9 @@ int EPD_5in83_test(void) { printf("EPD_5IN83_test Demo\r\n"); - DEV_Module_Init(); + if(DEV_Module_Init()!=0){ + return -1; + } printf("e-Paper Init and Clear...\r\n"); EPD_5IN83_Init(); diff --git a/Raspberry Pi/c/examples/EPD_5in83bc_test.c b/RaspberryPi&JetsonNano/c/examples/EPD_5in83bc_test.c similarity index 98% rename from Raspberry Pi/c/examples/EPD_5in83bc_test.c rename to RaspberryPi&JetsonNano/c/examples/EPD_5in83bc_test.c index 16de9cd..4c7e5c7 100644 --- a/Raspberry Pi/c/examples/EPD_5in83bc_test.c +++ b/RaspberryPi&JetsonNano/c/examples/EPD_5in83bc_test.c @@ -33,7 +33,9 @@ int EPD_5in83bc_test(void) { printf("EPD_5IN83BC_test Demo\r\n"); - DEV_Module_Init(); + if(DEV_Module_Init()!=0){ + return -1; + } printf("e-Paper Init and Clear...\r\n"); EPD_5IN83BC_Init(); diff --git a/Jetson Nano/c/examples/EPD_7in5_test.c b/RaspberryPi&JetsonNano/c/examples/EPD_7in5_test.c similarity index 98% rename from Jetson Nano/c/examples/EPD_7in5_test.c rename to RaspberryPi&JetsonNano/c/examples/EPD_7in5_test.c index 6b6d597..e843fc5 100644 --- a/Jetson Nano/c/examples/EPD_7in5_test.c +++ b/RaspberryPi&JetsonNano/c/examples/EPD_7in5_test.c @@ -33,7 +33,9 @@ int EPD_7in5_test(void) { printf("EPD_7IN5_test Demo\r\n"); - DEV_Module_Init(); + if(DEV_Module_Init()!=0){ + return -1; + } printf("e-Paper Init and Clear...\r\n"); EPD_7IN5_Init(); diff --git a/Raspberry Pi/c/examples/EPD_7in5bc_test.c b/RaspberryPi&JetsonNano/c/examples/EPD_7in5bc_test.c similarity index 98% rename from Raspberry Pi/c/examples/EPD_7in5bc_test.c rename to RaspberryPi&JetsonNano/c/examples/EPD_7in5bc_test.c index 5a092ef..20d56c9 100644 --- a/Raspberry Pi/c/examples/EPD_7in5bc_test.c +++ b/RaspberryPi&JetsonNano/c/examples/EPD_7in5bc_test.c @@ -33,7 +33,9 @@ int EPD_7in5bc_test(void) { printf("EPD_7IN5BC_test Demo\r\n"); - DEV_Module_Init(); + if(DEV_Module_Init()!=0){ + return -1; + } printf("e-Paper Init and Clear...\r\n"); EPD_7IN5BC_Init(); diff --git a/Jetson Nano/c/examples/EPD_Test.h b/RaspberryPi&JetsonNano/c/examples/EPD_Test.h similarity index 100% rename from Jetson Nano/c/examples/EPD_Test.h rename to RaspberryPi&JetsonNano/c/examples/EPD_Test.h diff --git a/Jetson Nano/c/examples/ImageData.c b/RaspberryPi&JetsonNano/c/examples/ImageData.c similarity index 100% rename from Jetson Nano/c/examples/ImageData.c rename to RaspberryPi&JetsonNano/c/examples/ImageData.c diff --git a/Jetson Nano/c/examples/ImageData.h b/RaspberryPi&JetsonNano/c/examples/ImageData.h similarity index 100% rename from Jetson Nano/c/examples/ImageData.h rename to RaspberryPi&JetsonNano/c/examples/ImageData.h diff --git a/Jetson Nano/c/examples/main.c b/RaspberryPi&JetsonNano/c/examples/main.c similarity index 96% rename from Jetson Nano/c/examples/main.c rename to RaspberryPi&JetsonNano/c/examples/main.c index 2c86d15..ac64be8 100644 --- a/Jetson Nano/c/examples/main.c +++ b/RaspberryPi&JetsonNano/c/examples/main.c @@ -28,7 +28,7 @@ int main(void) // EPD_2in9bc_test(); // EPD_2in9d_test(); - EPD_2in13_test(); + // EPD_2in13_test(); // EPD_2in13_V2_test(); // EPD_2in13bc_test(); // EPD_2in13d_test(); diff --git a/Jetson Nano/c/lib/.LCD.c.swp b/RaspberryPi&JetsonNano/c/lib/.LCD.c.swp similarity index 100% rename from Jetson Nano/c/lib/.LCD.c.swp rename to RaspberryPi&JetsonNano/c/lib/.LCD.c.swp diff --git a/RaspberryPi&JetsonNano/c/lib/Config/DEV_Config.c b/RaspberryPi&JetsonNano/c/lib/Config/DEV_Config.c new file mode 100644 index 0000000..df34633 --- /dev/null +++ b/RaspberryPi&JetsonNano/c/lib/Config/DEV_Config.c @@ -0,0 +1,385 @@ +/***************************************************************************** +* | File : DEV_Config.c +* | Author : Waveshare team +* | Function : Hardware underlying interface +* | Info : +*---------------- +* | This version: V3.0 +* | Date : 2019-07-31 +* | Info : +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documnetation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of theex Software, and to permit persons to whom the Software is +# furished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. +# +******************************************************************************/ +#include "DEV_Config.h" +#include + +/** + * GPIO +**/ +int EPD_RST_PIN; +int EPD_DC_PIN; +int EPD_CS_PIN; +int EPD_BUSY_PIN; + +/** + * GPIO read and write +**/ +void DEV_Digital_Write(UWORD Pin, UBYTE Value) +{ +#ifdef RPI +#ifdef USE_BCM2835_LIB + bcm2835_gpio_write(Pin, Value); +#elif USE_WIRINGPI_LIB + digitalWrite(Pin, Value); +#elif USE_DEV_LIB + SYSFS_GPIO_Write(Pin, Value); +#endif +#endif + +#ifdef JETSON +#ifdef USE_DEV_LIB + SYSFS_GPIO_Write(Pin, Value); +#elif USE_HARDWARE_LIB + Debug("not support"); +#endif +#endif +} + +UBYTE DEV_Digital_Read(UWORD Pin) +{ + UBYTE Read_value = 0; +#ifdef RPI +#ifdef USE_BCM2835_LIB + Read_value = bcm2835_gpio_lev(Pin); +#elif USE_WIRINGPI_LIB + Read_value = digitalRead(Pin); +#elif USE_DEV_LIB + Read_value = SYSFS_GPIO_Read(Pin); +#endif +#endif + +#ifdef JETSON +#ifdef USE_DEV_LIB + Read_value = SYSFS_GPIO_Read(Pin); +#elif USE_HARDWARE_LIB + Debug("not support"); +#endif +#endif + return Read_value; +} + +/** + * SPI +**/ +void DEV_SPI_WriteByte(uint8_t Value) +{ +#ifdef RPI +#ifdef USE_BCM2835_LIB + bcm2835_spi_transfer(Value); +#elif USE_WIRINGPI_LIB + wiringPiSPIDataRW(0,&Value,1); +#elif USE_DEV_LIB + DEV_HARDWARE_SPI_TransferByte(Value); +#endif +#endif + +#ifdef JETSON +#ifdef USE_DEV_LIB + SYSFS_software_spi_transfer(Value); +#elif USE_HARDWARE_LIB + Debug("not support"); +#endif +#endif +} + +void DEV_SPI_Write_nByte(uint8_t *pData, uint32_t Len) +{ +#ifdef RPI +#ifdef USE_BCM2835_LIB + char rData[Len]; + bcm2835_spi_transfernb(pData,rData,Len); +#elif USE_WIRINGPI_LIB + wiringPiSPIDataRW(0, pData, Len); +#elif USE_DEV_LIB + DEV_HARDWARE_SPI_Transfer(pData, Len); +#endif +#endif + +#ifdef JETSON +#ifdef USE_DEV_LIB + //JETSON nano waits for hardware SPI + Debug("not support"); +#elif USE_HARDWARE_LIB + Debug("not support"); +#endif +#endif +} + +/** + * GPIO Mode +**/ +void DEV_GPIO_Mode(UWORD Pin, UWORD Mode) +{ +#ifdef RPI +#ifdef USE_BCM2835_LIB + if(Mode == 0 || Mode == BCM2835_GPIO_FSEL_INPT) { + bcm2835_gpio_fsel(Pin, BCM2835_GPIO_FSEL_INPT); + } else { + bcm2835_gpio_fsel(Pin, BCM2835_GPIO_FSEL_OUTP); + } +#elif USE_WIRINGPI_LIB + if(Mode == 0 || Mode == INPUT) { + pinMode(Pin, INPUT); + pullUpDnControl(Pin, PUD_UP); + } else { + pinMode(Pin, OUTPUT); + // Debug (" %d OUT \r\n",Pin); + } +#elif USE_DEV_LIB + SYSFS_GPIO_Export(Pin); + if(Mode == 0 || Mode == SYSFS_GPIO_IN) { + SYSFS_GPIO_Direction(Pin, SYSFS_GPIO_IN); + // Debug("IN Pin = %d\r\n",Pin); + } else { + SYSFS_GPIO_Direction(Pin, SYSFS_GPIO_OUT); + // Debug("OUT Pin = %d\r\n",Pin); + } +#endif +#endif + +#ifdef JETSON +#ifdef USE_DEV_LIB + SYSFS_GPIO_Export(Pin); + SYSFS_GPIO_Direction(Pin, Mode); +#elif USE_HARDWARE_LIB + Debug("not support"); +#endif +#endif +} + +/** + * delay x ms +**/ +void DEV_Delay_ms(UDOUBLE xms) +{ +#ifdef RPI +#ifdef USE_BCM2835_LIB + bcm2835_delay(xms); +#elif USE_WIRINGPI_LIB + delay(xms); +#elif USE_DEV_LIB + UDOUBLE i; + for(i=0; i < xms; i++) { + usleep(1000); + } +#endif +#endif + +#ifdef JETSON + UDOUBLE i; + for(i=0; i < xms; i++) { + usleep(1000); + } +#endif +} + +static int DEV_Equipment_Testing(void) +{ + int i; + int fd; + char value_str[20]; + fd = open("/etc/issue", O_RDONLY); + printf("Currently in the Raspberry Pi environment: "); + while(1) { + if (fd < 0) { + Debug( "Read failed Pin\n"); + return -1; + } + for(i=0;; i++) { + if (read(fd, &value_str[i], 1) < 0) { + Debug( "failed to read value!\n"); + return -1; + } + if(value_str[i] ==32) { + printf("\r\n"); + break; + } + printf("%c",value_str[i]); + } + break; + } +#ifdef RPI + if(i<5) { + printf("Unrecognizable\r\n"); + } else { + char RPI_System[10] = {"Raspbian"}; + for(i=0; i<6; i++) { + if(RPI_System[i]!= value_str[i]) { + printf("Please make JETSON !!!!!!!!!!\r\n"); + return -1; + } + } + } +#endif +#ifdef JETSON + if(i<5) { + Debug("Unrecognizable\r\n"); + } else { + char JETSON_System[10]= {"Ubuntu"}; + for(i=0; i<6; i++) { + if(JETSON_System[i]!= value_str[i] ) { + printf("Please make RPI !!!!!!!!!!\r\n"); + return -1; + } + } + } +#endif + return 0; +} + + + +void DEV_GPIO_Init(void) +{ +#ifdef RPI + EPD_RST_PIN = 17; + EPD_DC_PIN = 25; + EPD_CS_PIN = 8; + EPD_BUSY_PIN = 24; +#elif JETSON + EPD_RST_PIN = GPIO17; + EPD_DC_PIN = GPIO25; + EPD_CS_PIN = SPI0_CS0; + EPD_BUSY_PIN = GPIO24; +#endif + + DEV_GPIO_Mode(EPD_RST_PIN, 1); + DEV_GPIO_Mode(EPD_DC_PIN, 1); + DEV_GPIO_Mode(EPD_CS_PIN, 1); + DEV_GPIO_Mode(EPD_BUSY_PIN, 0); + + DEV_Digital_Write(EPD_CS_PIN, 1); +} +/****************************************************************************** +function: Module Initialize, the library and initialize the pins, SPI protocol +parameter: +Info: +******************************************************************************/ +UBYTE DEV_Module_Init(void) +{ + printf("/***********************************/ \r\n"); + if(DEV_Equipment_Testing() < 0) { + return 1; + } +#ifdef RPI +#ifdef USE_BCM2835_LIB + if(!bcm2835_init()) { + printf("bcm2835 init failed !!! \r\n"); + return 1; + } else { + printf("bcm2835 init success !!! \r\n"); + } + + // GPIO Config + DEV_GPIO_Init(); + + bcm2835_spi_begin(); //Start spi interface, set spi pin for the reuse function + bcm2835_spi_setBitOrder(BCM2835_SPI_BIT_ORDER_MSBFIRST); //High first transmission + bcm2835_spi_setDataMode(BCM2835_SPI_MODE0); //spi mode 0 + bcm2835_spi_setClockDivider(BCM2835_SPI_CLOCK_DIVIDER_128); //Frequency + bcm2835_spi_chipSelect(BCM2835_SPI_CS0); //set CE0 + bcm2835_spi_setChipSelectPolarity(BCM2835_SPI_CS0, LOW); //enable cs0 + +#elif USE_WIRINGPI_LIB + //if(wiringPiSetup() < 0)//use wiringpi Pin number table + if(wiringPiSetupGpio() < 0) { //use BCM2835 Pin number table + printf("set wiringPi lib failed !!! \r\n"); + return 1; + } else { + printf("set wiringPi lib success !!! \r\n"); + } + + // GPIO Config + DEV_GPIO_Init(); + + wiringPiSPISetup(0,32000000); + // wiringPiSPISetupMode(0, 32000000, 0); +#elif USE_DEV_LIB + printf("Write and read /dev/spidev0.0 \r\n"); + DEV_GPIO_Init(); + DEV_HARDWARE_SPI_begin("/dev/spidev0.0"); +#endif + +#elif JETSON +#ifdef USE_DEV_LIB + DEV_GPIO_Init(); + printf("Software spi\r\n"); + SYSFS_software_spi_begin(); + SYSFS_software_spi_setBitOrder(SOFTWARE_SPI_MSBFIRST); + SYSFS_software_spi_setDataMode(SOFTWARE_SPI_Mode0); + SYSFS_software_spi_setClockDivider(SOFTWARE_SPI_CLOCK_DIV4); +#elif USE_HARDWARE_LIB + printf("Write and read /dev/spidev0.0 \r\n"); + DEV_GPIO_Init(); + DEV_HARDWARE_SPI_begin("/dev/spidev0.0"); +#endif + +#endif + printf("/***********************************/ \r\n"); + return 0; +} + +/****************************************************************************** +function: Module exits, closes SPI and BCM2835 library +parameter: +Info: +******************************************************************************/ +void DEV_Module_Exit(void) +{ +#ifdef RPI +#ifdef USE_BCM2835_LIB + DEV_Digital_Write(EPD_CS_PIN, LOW); + DEV_Digital_Write(EPD_DC_PIN, LOW); + DEV_Digital_Write(EPD_RST_PIN, LOW); + + bcm2835_spi_end(); + bcm2835_close(); +#elif USE_WIRINGPI_LIB + DEV_Digital_Write(EPD_CS_PIN, 0); + DEV_Digital_Write(EPD_DC_PIN, 0); + DEV_Digital_Write(EPD_RST_PIN, 0); +#elif USE_DEV_LIB + DEV_HARDWARE_SPI_end(); + DEV_Digital_Write(EPD_CS_PIN, 0); + DEV_Digital_Write(EPD_DC_PIN, 0); + DEV_Digital_Write(EPD_RST_PIN, 0); +#endif + +#elif JETSON +#ifdef USE_DEV_LIB + SYSFS_GPIO_Unexport(EPD_CS_PIN); + SYSFS_GPIO_Unexport(EPD_DC_PIN); + SYSFS_GPIO_Unexport(EPD_RST_PIN); + SYSFS_GPIO_Unexport(EPD_BUSY_PIN); +#elif USE_HARDWARE_LIB + Debug("not support"); +#endif +#endif +} diff --git a/Raspberry Pi/c/lib/Config/DEV_Config.h b/RaspberryPi&JetsonNano/c/lib/Config/DEV_Config.h similarity index 73% rename from Raspberry Pi/c/lib/Config/DEV_Config.h rename to RaspberryPi&JetsonNano/c/lib/Config/DEV_Config.h index fa9c42c..105ea19 100644 --- a/Raspberry Pi/c/lib/Config/DEV_Config.h +++ b/RaspberryPi&JetsonNano/c/lib/Config/DEV_Config.h @@ -22,8 +22,8 @@ * EPD_CS_1\EPD_CS_0 * EPD_BUSY_1\EPD_BUSY_0 * 3.add: -* #define DEV_Digital_Write(_pin, _value) bcm2835_gpio_write(_pin, _value) -* #define DEV_Digital_Read(_pin) bcm2835_gpio_lev(_pin) +* #define DEV_Digital_Write(_pin, _value) bcm2835_GPIOI_write(_pin, _value) +* #define DEV_Digital_Read(_pin) bcm2835_GPIOI_lev(_pin) * #define DEV_SPI_WriteByte(__value) bcm2835_spi_transfer(__value) # # Permission is hereby granted, free of charge, to any person obtaining a copy @@ -50,6 +50,33 @@ #include #include +#include +#include +#include +#include +#include "Debug.h" + +#ifdef RPI + #ifdef USE_BCM2835_LIB + #include + #elif USE_WIRINGPI_LIB + #include + #include + #elif USE_DEV_LIB + #include "RPI_sysfs_gpio.h" + #include "dev_hardware_SPI.h" + #endif +#endif + +#ifdef JETSON + #ifdef USE_DEV_LIB + #include "sysfs_gpio.h" + #include "sysfs_software_spi.h" + #elif USE_HARDWARE_LIB + + #endif + +#endif /** * data @@ -59,18 +86,21 @@ #define UDOUBLE uint32_t /** - * GPIO config + * GPIOI config **/ -#define EPD_RST_PIN 17 -#define EPD_DC_PIN 25 -#define EPD_CS_PIN 8 -#define EPD_BUSY_PIN 24 +extern int EPD_RST_PIN; +extern int EPD_DC_PIN; +extern int EPD_CS_PIN; +extern int EPD_BUSY_PIN; /*------------------------------------------------------------------------------------------------------*/ void DEV_Digital_Write(UWORD Pin, UBYTE Value); UBYTE DEV_Digital_Read(UWORD Pin); + void DEV_SPI_WriteByte(UBYTE Value); +void DEV_SPI_Write_nByte(uint8_t *pData, uint32_t Len); void DEV_Delay_ms(UDOUBLE xms); + UBYTE DEV_Module_Init(void); void DEV_Module_Exit(void); diff --git a/Jetson Nano/c/lib/Config/Debug.h b/RaspberryPi&JetsonNano/c/lib/Config/Debug.h similarity index 100% rename from Jetson Nano/c/lib/Config/Debug.h rename to RaspberryPi&JetsonNano/c/lib/Config/Debug.h diff --git a/RaspberryPi&JetsonNano/c/lib/Config/RPI_sysfs_gpio.c b/RaspberryPi&JetsonNano/c/lib/Config/RPI_sysfs_gpio.c new file mode 100644 index 0000000..e5905e4 --- /dev/null +++ b/RaspberryPi&JetsonNano/c/lib/Config/RPI_sysfs_gpio.c @@ -0,0 +1,152 @@ +/***************************************************************************** +* | File : SYSFS_GPIO.c +* | Author : Waveshare team +* | Function : Drive SYSFS_ GPIO +* | Info : Read and write /sys/class/gpio +*---------------- +* | This version: V1.0 +* | Date : 2019-06-04 +* | Info : Basic version +* +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documnetation files (the "Software"), to deal +# SYSFS_GPIO_IN the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furished to do so, subject to the folSYSFS_GPIO_LOWing conditions: +# +# The above copyright notice and this permission notice shall be included SYSFS_GPIO_IN +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. SYSFS_GPIO_IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY WHETHER SYSFS_GPIO_IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# SYSFS_GPIO_OUT OF OR SYSFS_GPIO_IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS SYSFS_GPIO_IN +# THE SOFTWARE. +# +******************************************************************************/ +#include "RPI_sysfs_gpio.h" +#include +#include +#include +#include +#include +#include +#include + +int SYSFS_GPIO_Export(int Pin) +{ + char buffer[NUM_MAXBUF]; + int len; + int fd; + + fd = open("/sys/class/gpio/export", O_WRONLY); + if (fd < 0) { + SYSFS_GPIO_Debug( "Export Failed: Pin%d\n", Pin); + return -1; + } + + len = snprintf(buffer, NUM_MAXBUF, "%d", Pin); + write(fd, buffer, len); + + SYSFS_GPIO_Debug( "Export: Pin%d\r\n", Pin); + + close(fd); + return 0; +} + +int SYSFS_GPIO_Unexport(int Pin) +{ + char buffer[NUM_MAXBUF]; + int len; + int fd; + + fd = open("/sys/class/gpio/unexport", O_WRONLY); + if (fd < 0) { + SYSFS_GPIO_Debug( "unexport Failed: Pin%d\n", Pin); + return -1; + } + + len = snprintf(buffer, NUM_MAXBUF, "%d", Pin); + write(fd, buffer, len); + + SYSFS_GPIO_Debug( "Unexport: Pin%d\r\n", Pin); + + close(fd); + return 0; +} + +int SYSFS_GPIO_Direction(int Pin, int Dir) +{ + const char dir_str[] = "in\0out"; + char path[DIR_MAXSIZ]; + int fd; + + snprintf(path, DIR_MAXSIZ, "/sys/class/gpio/gpio%d/direction", Pin); + fd = open(path, O_WRONLY); + if (fd < 0) { + SYSFS_GPIO_Debug( "Set Direction failed: Pin%d\n", Pin); + return -1; + } + + if (write(fd, &dir_str[Dir == SYSFS_GPIO_IN ? 0 : 3], Dir == SYSFS_GPIO_IN ? 2 : 3) < 0) { + SYSFS_GPIO_Debug("failed to set direction!\r\n"); + return -1; + } + + if(Dir == SYSFS_GPIO_IN){ + SYSFS_GPIO_Debug("Pin%d:intput\r\n", Pin); + }else{ + SYSFS_GPIO_Debug("Pin%d:Output\r\n", Pin); + } + + close(fd); + return 0; +} + +int SYSFS_GPIO_Read(int Pin) +{ + char path[DIR_MAXSIZ]; + char value_str[3]; + int fd; + + snprintf(path, DIR_MAXSIZ, "/sys/class/gpio/gpio%d/value", Pin); + fd = open(path, O_RDONLY); + if (fd < 0) { + SYSFS_GPIO_Debug( "Read failed Pin%d\n", Pin); + return -1; + } + + if (read(fd, value_str, 3) < 0) { + SYSFS_GPIO_Debug( "failed to read value!\n"); + return -1; + } + + close(fd); + return(atoi(value_str)); +} + +int SYSFS_GPIO_Write(int Pin, int value) +{ + const char s_values_str[] = "01"; + char path[DIR_MAXSIZ]; + int fd; + + snprintf(path, DIR_MAXSIZ, "/sys/class/gpio/gpio%d/value", Pin); + fd = open(path, O_WRONLY); + if (fd < 0) { + SYSFS_GPIO_Debug( "Write failed : Pin%d,value = %d\n", Pin, value); + return -1; + } + + if (write(fd, &s_values_str[value == SYSFS_GPIO_LOW ? 0 : 1], 1) < 0) { + SYSFS_GPIO_Debug( "failed to write value!\n"); + return -1; + } + + close(fd); + return 0; +} diff --git a/RaspberryPi&JetsonNano/c/lib/Config/RPI_sysfs_gpio.h b/RaspberryPi&JetsonNano/c/lib/Config/RPI_sysfs_gpio.h new file mode 100644 index 0000000..5c33a97 --- /dev/null +++ b/RaspberryPi&JetsonNano/c/lib/Config/RPI_sysfs_gpio.h @@ -0,0 +1,82 @@ +/***************************************************************************** +* | File : sysfs_gpio.h +* | Author : Waveshare team +* | Function : Drive SC16IS752 GPIO +* | Info : Read and write /sys/class/gpio +*---------------- +* | This version: V1.0 +* | Date : 2019-06-04 +* | Info : Basic version +* +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documnetation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. +# +******************************************************************************/ +#ifndef __SYSFS_GPIO_ +#define __SYSFS_GPIO_ + +#include + +#define SYSFS_GPIO_IN 0 +#define SYSFS_GPIO_OUT 1 + +#define SYSFS_GPIO_LOW 0 +#define SYSFS_GPIO_HIGH 1 + +#define NUM_MAXBUF 4 +#define DIR_MAXSIZ 60 + +#define SYSFS_GPIO_DEBUG 0 +#if SYSFS_GPIO_DEBUG + #define SYSFS_GPIO_Debug(__info,...) printf("Debug: " __info,##__VA_ARGS__) +#else + #define SYSFS_GPIO_Debug(__info,...) +#endif + +// BCM GPIO for Jetson nano +#define GPIO4 4 // 7, 4 +#define GPIO17 7 // 11, 17 +#define GPIO18 18 // 12, 18 +#define GPIO27 27 // 13, 27 +#define GPIO22 22 // 15, 22 +#define GPIO23 23 // 16, 23 +#define GPIO24 24 // 18, 24 +#define SPI0_MOSI 10 // 19, 10 +#define SPI0_MISO 9 // 21, 9 +#define GPIO25 28 // 22, 25 +#define SPI0_SCK 11 // 23, 11 +#define SPI0_CS0 8 // 24, 8 +#define SPI0_CS1 7 // 26, 7 +#define GPIO5 5 // 29, 5 +#define GPIO6 6 // 31, 6 +#define GPIO12 12 // 32, 12 +#define GPIO13 13 // 33, 13 +#define GPIO19 19 // 35, 19 +#define GPIO16 16 // 36, 16 +#define GPIO26 26 // 37, 26 +#define GPIO20 20 // 38, 20 +#define GPIO21 21 // 40, 21 + +int SYSFS_GPIO_Export(int Pin); +int SYSFS_GPIO_Unexport(int Pin); +int SYSFS_GPIO_Direction(int Pin, int Dir); +int SYSFS_GPIO_Read(int Pin); +int SYSFS_GPIO_Write(int Pin, int value); + +#endif \ No newline at end of file diff --git a/RaspberryPi&JetsonNano/c/lib/Config/dev_hardware_SPI.c b/RaspberryPi&JetsonNano/c/lib/Config/dev_hardware_SPI.c new file mode 100644 index 0000000..125fec0 --- /dev/null +++ b/RaspberryPi&JetsonNano/c/lib/Config/dev_hardware_SPI.c @@ -0,0 +1,362 @@ +/***************************************************************************** +* | File : dev_hardware_SPI.c +* | Author : Waveshare team +* | Function : Read and write /dev/SPI, hardware SPI +* | Info : +*---------------- +* | This version: V1.0 +* | Date : 2019-06-26 +* | Info : Basic version +* +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documnetation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. +# +******************************************************************************/ +#include "dev_hardware_SPI.h" + + +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +HARDWARE_SPI hardware_SPI; + +static uint8_t bits = 8; + +#define SPI_CS_HIGH 0x04 //Chip select high +#define SPI_LSB_FIRST 0x08 //LSB +#define SPI_3WIRE 0x10 //3-wire mode SI and SO same line +#define SPI_LOOP 0x20 //Loopback mode +#define SPI_NO_CS 0x40 //A single device occupies one SPI bus, so there is no chip select +#define SPI_READY 0x80 //Slave pull low to stop data transmission + +struct spi_ioc_transfer tr; + + +/****************************************************************************** +function: SPI port initialization +parameter: + SPI_device : Device name +Info: + /dev/spidev0.0 + /dev/spidev0.1 +******************************************************************************/ +void DEV_HARDWARE_SPI_begin(char *SPI_device) +{ + //device + int ret = 0; + if((hardware_SPI.fd = open(SPI_device, O_RDWR )) < 0) { + perror("Failed to open SPI device.\n"); + DEV_HARDWARE_SPI_Debug("Failed to open SPI device\r\n"); + exit(1); + } else { + DEV_HARDWARE_SPI_Debug("open : %s\r\n", SPI_device); + } + hardware_SPI.mode = 0; + + ret = ioctl(hardware_SPI.fd, SPI_IOC_WR_BITS_PER_WORD, &bits); + if (ret == -1) { + DEV_HARDWARE_SPI_Debug("can't set bits per word\r\n"); + } + + ret = ioctl(hardware_SPI.fd, SPI_IOC_RD_BITS_PER_WORD, &bits); + if (ret == -1) { + DEV_HARDWARE_SPI_Debug("can't get bits per word\r\n"); + } + tr.bits_per_word = bits; + + DEV_HARDWARE_SPI_Mode(SPI_MODE_0); + DEV_HARDWARE_SPI_ChipSelect(SPI_CS_Mode_LOW); + DEV_HARDWARE_SPI_SetBitOrder(SPI_BIT_ORDER_LSBFIRST); + DEV_HARDWARE_SPI_setSpeed(20000000); + DEV_HARDWARE_SPI_SetDataInterval(0); +} + +void DEV_HARDWARE_SPI_beginSet(char *SPI_device, SPIMode mode, uint32_t speed) +{ + //device + int ret = 0; + hardware_SPI.mode = 0; + if((hardware_SPI.fd = open(SPI_device, O_RDWR )) < 0) { + perror("Failed to open SPI device.\n"); + exit(1); + } else { + DEV_HARDWARE_SPI_Debug("open : %s\r\n", SPI_device); + } + + ret = ioctl(hardware_SPI.fd, SPI_IOC_WR_BITS_PER_WORD, &bits); + if (ret == -1) + DEV_HARDWARE_SPI_Debug("can't set bits per word\r\n"); + + ret = ioctl(hardware_SPI.fd, SPI_IOC_RD_BITS_PER_WORD, &bits); + if (ret == -1) + DEV_HARDWARE_SPI_Debug("can't get bits per word\r\n"); + + DEV_HARDWARE_SPI_Mode(mode); + DEV_HARDWARE_SPI_ChipSelect(SPI_CS_Mode_LOW); + DEV_HARDWARE_SPI_setSpeed(speed); + DEV_HARDWARE_SPI_SetDataInterval(0); +} + + +/****************************************************************************** +function: SPI device End +parameter: +Info: +******************************************************************************/ +void DEV_HARDWARE_SPI_end(void) +{ + hardware_SPI.mode = 0; + if (close(hardware_SPI.fd) != 0){ + DEV_HARDWARE_SPI_Debug("Failed to close SPI device\r\n"); + perror("Failed to close SPI device.\n"); + } +} + +/****************************************************************************** +function: Set SPI speed +parameter: +Info: Return 1 success + Return -1 failed +******************************************************************************/ +int DEV_HARDWARE_SPI_setSpeed(uint32_t speed) +{ + uint32_t speed1 = hardware_SPI.speed; + + hardware_SPI.speed = speed; + + //Write speed + if (ioctl(hardware_SPI.fd, SPI_IOC_WR_MAX_SPEED_HZ, &speed) == -1) { + DEV_HARDWARE_SPI_Debug("can't set max speed hz\r\n"); + hardware_SPI.speed = speed1;//Setting failure rate unchanged + return -1; + } + + //Read the speed of just writing + if (ioctl(hardware_SPI.fd, SPI_IOC_RD_MAX_SPEED_HZ, &speed) == -1) { + DEV_HARDWARE_SPI_Debug("can't get max speed hz\r\n"); + hardware_SPI.speed = speed1;//Setting failure rate unchanged + return -1; + } + hardware_SPI.speed = speed; + tr.speed_hz = hardware_SPI.speed; + return 1; +} + +/****************************************************************************** +function: Set SPI Mode +parameter: +Info: + SPIMode: + SPI_MODE0 + SPI_MODE1 + SPI_MODE2 + SPI_MODE3 + Return : + Return 1 success + Return -1 failed +******************************************************************************/ +int DEV_HARDWARE_SPI_Mode(SPIMode mode) +{ + hardware_SPI.mode &= 0xfC;//Clear low 2 digits + hardware_SPI.mode |= mode;//Setting mode + + //Write device + if (ioctl(hardware_SPI.fd, SPI_IOC_WR_MODE, &hardware_SPI.mode) == -1) { + DEV_HARDWARE_SPI_Debug("can't set spi mode\r\n"); + return -1; + } + return 1; +} + +/****************************************************************************** +function: Set SPI CS Enable +parameter: +Info: + EN: + DISABLE + ENABLE + Return : + Return 1 success + Return -1 failed +******************************************************************************/ +int DEV_HARDWARE_SPI_CSEN(SPICSEN EN) +{ + if(EN == ENABLE){ + hardware_SPI.mode |= SPI_NO_CS; + }else { + hardware_SPI.mode &= ~SPI_NO_CS; + } + //Write device + if (ioctl(hardware_SPI.fd, SPI_IOC_WR_MODE, &hardware_SPI.mode) == -1) { + DEV_HARDWARE_SPI_Debug("can't set spi CS EN\r\n"); + return -1; + } + return 1; +} + +/****************************************************************************** +function: Chip Select +parameter: +Info: + CS_Mode: + SPI_CS_Mode_LOW + SPI_CS_Mode_HIGH + SPI_CS_Mode_NONE + Return : + Return 1 success + Return -1 failed +******************************************************************************/ +int DEV_HARDWARE_SPI_ChipSelect(SPIChipSelect CS_Mode) +{ + if(CS_Mode == SPI_CS_Mode_HIGH){ + hardware_SPI.mode |= SPI_CS_HIGH; + hardware_SPI.mode &= ~SPI_NO_CS; + DEV_HARDWARE_SPI_Debug("CS HIGH \r\n"); + }else if(CS_Mode == SPI_CS_Mode_LOW){ + hardware_SPI.mode &= ~SPI_CS_HIGH; + hardware_SPI.mode &= ~SPI_NO_CS; + }else if(CS_Mode == SPI_CS_Mode_NONE){ + hardware_SPI.mode |= SPI_NO_CS; + } + + if (ioctl(hardware_SPI.fd, SPI_IOC_WR_MODE, &hardware_SPI.mode) == -1) { + DEV_HARDWARE_SPI_Debug("can't set spi mode\r\n"); + return -1; + } + return 1; +} + +/****************************************************************************** +function: Sets the SPI bit order +parameter: +Info: + Order: + SPI_BIT_ORDER_LSBFIRST + SPI_BIT_ORDER_MSBFIRST + Return : + Return 1 success + Return -1 failed +******************************************************************************/ +int DEV_HARDWARE_SPI_SetBitOrder(SPIBitOrder Order) +{ + if(Order == SPI_BIT_ORDER_LSBFIRST){ + hardware_SPI.mode |= SPI_LSB_FIRST; + DEV_HARDWARE_SPI_Debug("SPI_LSB_FIRST\r\n"); + }else if(Order == SPI_BIT_ORDER_MSBFIRST){ + hardware_SPI.mode &= ~SPI_LSB_FIRST; + DEV_HARDWARE_SPI_Debug("SPI_MSB_FIRST\r\n"); + } + + // DEV_HARDWARE_SPI_Debug("hardware_SPI.mode = 0x%02x\r\n", hardware_SPI.mode); + int fd = ioctl(hardware_SPI.fd, SPI_IOC_WR_MODE, &hardware_SPI.mode); + DEV_HARDWARE_SPI_Debug("fd = %d\r\n",fd); + if (fd == -1) { + DEV_HARDWARE_SPI_Debug("can't set spi SPI_LSB_FIRST\r\n"); + return -1; + } + return 1; +} + +/****************************************************************************** +function: Sets the SPI Bus Mode +parameter: +Info: + Order: + SPI_3WIRE_Mode + SPI_4WIRE_Mode + Return : + Return 1 success + Return -1 failed +******************************************************************************/ +int DEV_HARDWARE_SPI_SetBusMode(BusMode mode) +{ + if(mode == SPI_3WIRE_Mode){ + hardware_SPI.mode |= SPI_3WIRE; + }else if(mode == SPI_4WIRE_Mode){ + hardware_SPI.mode &= ~SPI_3WIRE; + } + if (ioctl(hardware_SPI.fd, SPI_IOC_WR_MODE, &hardware_SPI.mode) == -1) { + DEV_HARDWARE_SPI_Debug("can't set spi mode\r\n"); + return -1; + } + return 1; +} + +/****************************************************************************** +function: + Time interval after transmission of one byte during continuous transmission +parameter: + us : Interval time (us) +Info: +******************************************************************************/ +void DEV_HARDWARE_SPI_SetDataInterval(uint16_t us) +{ + hardware_SPI.delay = us; + tr.delay_usecs = hardware_SPI.delay; +} + +/****************************************************************************** +function: SPI port sends one byte of data +parameter: + buf : Sent data +Info: +******************************************************************************/ +uint8_t DEV_HARDWARE_SPI_TransferByte(uint8_t buf) +{ + uint8_t rbuf[1]; + tr.len = 1; + tr.tx_buf = (unsigned long)&buf; + tr.rx_buf = (unsigned long)rbuf; + + //ioctl Operation, transmission of data + if ( ioctl(hardware_SPI.fd, SPI_IOC_MESSAGE(1), &tr) < 1 ) + DEV_HARDWARE_SPI_Debug("can't send spi message\r\n"); + return rbuf[0]; +} + +/****************************************************************************** +function: The SPI port reads a byte +parameter: +Info: Return read data +******************************************************************************/ +int DEV_HARDWARE_SPI_Transfer(uint8_t *buf, uint32_t len) +{ + tr.len = len; + tr.tx_buf = (unsigned long)buf; + tr.rx_buf = (unsigned long)buf; + + //ioctl Operation, transmission of data + if (ioctl(hardware_SPI.fd, SPI_IOC_MESSAGE(1), &tr) < 1 ){ + DEV_HARDWARE_SPI_Debug("can't send spi message\r\n"); + return -1; + } + + return 1; +} + diff --git a/RaspberryPi&JetsonNano/c/lib/Config/dev_hardware_SPI.h b/RaspberryPi&JetsonNano/c/lib/Config/dev_hardware_SPI.h new file mode 100644 index 0000000..b22d195 --- /dev/null +++ b/RaspberryPi&JetsonNano/c/lib/Config/dev_hardware_SPI.h @@ -0,0 +1,120 @@ +/***************************************************************************** +* | File : dev_hardware_SPI.h +* | Author : Waveshare team +* | Function : Read and write /dev/SPI, hardware SPI +* | Info : +*---------------- +* | This version: V1.0 +* | Date : 2019-06-26 +* | Info : Basic version +* +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documnetation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. +# +******************************************************************************/ +#ifndef __DEV_HARDWARE_SPI_ +#define __DEV_HARDWARE_SPI_ + +#include + +#define DEV_HARDWARE_SPI_DEBUG 0 +#if DEV_HARDWARE_SPI_DEBUG +#define DEV_HARDWARE_SPI_Debug(__info,...) printf("Debug: " __info,##__VA_ARGS__) +#else +#define DEV_HARDWARE_SPI_Debug(__info,...) +#endif + +#define SPI_CPHA 0x01 +#define SPI_CPOL 0x02 +#define SPI_MODE_0 (0|0) +#define SPI_MODE_1 (0|SPI_CPHA) +#define SPI_MODE_2 (SPI_CPOL|0) +#define SPI_MODE_3 (SPI_CPOL|SPI_CPHA) + +typedef enum{ + SPI_MODE0 = SPI_MODE_0, /*!< CPOL = 0, CPHA = 0 */ + SPI_MODE1 = SPI_MODE_1, /*!< CPOL = 0, CPHA = 1 */ + SPI_MODE2 = SPI_MODE_2, /*!< CPOL = 1, CPHA = 0 */ + SPI_MODE3 = SPI_MODE_3 /*!< CPOL = 1, CPHA = 1 */ +}SPIMode; + +typedef enum{ + DISABLE = 0, + ENABLE = 1 +}SPICSEN; + +typedef enum{ + SPI_CS_Mode_LOW = 0, /*!< Chip Select 0 */ + SPI_CS_Mode_HIGH = 1, /*!< Chip Select 1 */ + SPI_CS_Mode_NONE = 3 /*!< No CS, control it yourself */ +}SPIChipSelect; + +typedef enum +{ + SPI_BIT_ORDER_LSBFIRST = 0, /*!< LSB First */ + SPI_BIT_ORDER_MSBFIRST = 1 /*!< MSB First */ +}SPIBitOrder; + +typedef enum +{ + SPI_3WIRE_Mode = 0, + SPI_4WIRE_Mode = 1 +}BusMode; + + +/** + * Define SPI attribute +**/ +typedef struct SPIStruct { + //GPIO + uint16_t SCLK_PIN; + uint16_t MOSI_PIN; + uint16_t MISO_PIN; + + uint16_t CS0_PIN; + uint16_t CS1_PIN; + + + uint32_t speed; + uint16_t mode; + uint16_t delay; + int fd; // +} HARDWARE_SPI; + + + + +void DEV_HARDWARE_SPI_begin(char *SPI_device); +void DEV_HARDWARE_SPI_beginSet(char *SPI_device, SPIMode mode, uint32_t speed); +void DEV_HARDWARE_SPI_end(void); + +int DEV_HARDWARE_SPI_setSpeed(uint32_t speed); + +uint8_t DEV_HARDWARE_SPI_TransferByte(uint8_t buf); +int DEV_HARDWARE_SPI_Transfer(uint8_t *buf, uint32_t len); + +void DEV_HARDWARE_SPI_SetDataInterval(uint16_t us); +int DEV_HARDWARE_SPI_SetBusMode(BusMode mode); +int DEV_HARDWARE_SPI_SetBitOrder(SPIBitOrder Order); +int DEV_HARDWARE_SPI_ChipSelect(SPIChipSelect CS_Mode); +int DEV_HARDWARE_SPI_CSEN(SPICSEN EN); +int DEV_HARDWARE_SPI_Mode(SPIMode mode); + + +#endif \ No newline at end of file diff --git a/Jetson Nano/c/lib/Config/sysfs_gpio.c b/RaspberryPi&JetsonNano/c/lib/Config/sysfs_gpio.c similarity index 100% rename from Jetson Nano/c/lib/Config/sysfs_gpio.c rename to RaspberryPi&JetsonNano/c/lib/Config/sysfs_gpio.c diff --git a/Jetson Nano/c/lib/Config/sysfs_gpio.h b/RaspberryPi&JetsonNano/c/lib/Config/sysfs_gpio.h similarity index 100% rename from Jetson Nano/c/lib/Config/sysfs_gpio.h rename to RaspberryPi&JetsonNano/c/lib/Config/sysfs_gpio.h diff --git a/Jetson Nano/c/lib/Config/sysfs_software_spi.c b/RaspberryPi&JetsonNano/c/lib/Config/sysfs_software_spi.c similarity index 100% rename from Jetson Nano/c/lib/Config/sysfs_software_spi.c rename to RaspberryPi&JetsonNano/c/lib/Config/sysfs_software_spi.c diff --git a/Jetson Nano/c/lib/Config/sysfs_software_spi.h b/RaspberryPi&JetsonNano/c/lib/Config/sysfs_software_spi.h similarity index 100% rename from Jetson Nano/c/lib/Config/sysfs_software_spi.h rename to RaspberryPi&JetsonNano/c/lib/Config/sysfs_software_spi.h diff --git a/Jetson Nano/c/lib/Fonts/font12.c b/RaspberryPi&JetsonNano/c/lib/Fonts/font12.c similarity index 100% rename from Jetson Nano/c/lib/Fonts/font12.c rename to RaspberryPi&JetsonNano/c/lib/Fonts/font12.c diff --git a/Jetson Nano/c/lib/Fonts/font12CN.c b/RaspberryPi&JetsonNano/c/lib/Fonts/font12CN.c similarity index 89% rename from Jetson Nano/c/lib/Fonts/font12CN.c rename to RaspberryPi&JetsonNano/c/lib/Fonts/font12CN.c index d743293..cf29da2 100644 --- a/Jetson Nano/c/lib/Fonts/font12CN.c +++ b/RaspberryPi&JetsonNano/c/lib/Fonts/font12CN.c @@ -47,66 +47,66 @@ const CH_CN Font12CN_Table[] = { /*-- 文字: 你 --*/ /*-- 微软雅黑12; 此字体下对应的点阵为:宽x高=16x21 --*/ -{"你", +{{"你"},{ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1D,0xC0,0x1D,0x80,0x3B,0xFF,0x3B,0x07, 0x3F,0x77,0x7E,0x76,0xF8,0x70,0xFB,0xFE,0xFB,0xFE,0x3F,0x77,0x3F,0x77,0x3E,0x73, -0x38,0x70,0x38,0x70,0x3B,0xE0,0x00,0x00,0x00,0x00}, +0x38,0x70,0x38,0x70,0x3B,0xE0,0x00,0x00,0x00,0x00}}, /*-- 文字: 好 --*/ /*-- 微软雅黑12; 此字体下对应的点阵为:宽x高=16x21 --*/ -{"好", +{{"好"},{ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x00,0x73,0xFF,0x70,0x0F,0xFE,0x1E, 0x7E,0x3C,0x6E,0x38,0xEE,0x30,0xEF,0xFF,0xFC,0x30,0x7C,0x30,0x38,0x30,0x3E,0x30, -0x7E,0x30,0xE0,0x30,0xC1,0xF0,0x00,0x00,0x00,0x00}, +0x7E,0x30,0xE0,0x30,0xC1,0xF0,0x00,0x00,0x00,0x00}}, /*-- 文字: 树 --*/ /*-- 微软雅黑12; 此字体下对应的点阵为:宽x高=16x21 --*/ -{"树", +{{"树"},{ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x0E,0x30,0x0E,0x3F,0xEE,0x30,0xEE, 0xFC,0xFF,0x76,0xCE,0x77,0xFE,0x7B,0xFE,0xFF,0xFE,0xF3,0xDE,0xF3,0xCE,0x37,0xEE, -0x3E,0x6E,0x3C,0x0E,0x30,0x3E,0x00,0x00,0x00,0x00}, +0x3E,0x6E,0x3C,0x0E,0x30,0x3E,0x00,0x00,0x00,0x00}}, /*-- 文字: 莓 --*/ /*-- 微软雅黑12; 此字体下对应的点阵为:宽x高=16x21 --*/ -{"莓", +{{"莓"},{ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x06,0x70,0xFF,0xFF,0x3E,0x70,0x38,0x00, 0x7F,0xFF,0xE0,0x00,0xFF,0xFC,0x3B,0x8C,0x39,0xCC,0xFF,0xFF,0x73,0x9C,0x71,0xDC, -0x7F,0xFF,0x00,0x1C,0x01,0xF8,0x00,0x00,0x00,0x00}, +0x7F,0xFF,0x00,0x1C,0x01,0xF8,0x00,0x00,0x00,0x00}}, /*-- 文字: 派 --*/ /*-- 微软雅黑12; 此字体下对应的点阵为:宽x高=16x21 --*/ -{"派", +{{"派"},{ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x1F,0xFF,0xF0,0x3E,0x00,0x0E,0x1F, 0xCF,0xFB,0xFF,0xF8,0x3F,0xFF,0x0F,0xFF,0x7F,0xD8,0x7F,0xDC,0x6F,0xCE,0xED,0xFF, -0xFD,0xF7,0xF9,0xC0,0x00,0x00,0x00,0x00,0x00,0x00}, +0xFD,0xF7,0xF9,0xC0,0x00,0x00,0x00,0x00,0x00,0x00}}, /*-- 文字: a --*/ /*-- 微软雅黑12; 此字体下对应的点阵为:宽x高=16x21 --*/ -{"a", +{{"a"},{ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x3E,0x00,0x67,0x00,0x07,0x80,0x0F,0x80,0x7F,0x80,0xE3,0x80,0xE7,0x80,0xE7,0x80, -0x7F,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}, +0x7F,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}}, /*-- 文字: b --*/ /*-- 微软雅黑12; 此字体下对应的点阵为:宽x高=16x21 --*/ -{"b", +{{"b"},{ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x00,0x70,0x00,0x70,0x00,0x70,0x00, 0x7F,0x00,0x7B,0x80,0x71,0xC0,0x71,0xC0,0x71,0xC0,0x71,0xC0,0x71,0xC0,0x7B,0x80, -0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}, +0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}}, /*-- 文字: c --*/ /*-- 微软雅黑12; 此字体下对应的点阵为:宽x高=16x21 --*/ -{"c", +{{"c"},{ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x3F,0x00,0x73,0x00,0xF0,0x00,0xE0,0x00,0xE0,0x00,0xE0,0x00,0xF0,0x00,0x73,0x00, -0x3F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}, +0x3F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}}, /*-- 文字: A --*/ /*-- 微软雅黑12; 此字体下对应的点阵为:宽x高=16x21 --*/ -{"A", +{{"A"},{ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0E,0x00,0x1F,0x00,0x1F,0x00, 0x1F,0x00,0x3B,0x80,0x3B,0x80,0x71,0x80,0x7F,0xC0,0x71,0xC0,0xE0,0xE0,0xE0,0xE0, -0xE0,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}, +0xE0,0xE0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}}, }; cFONT Font12CN = { diff --git a/Jetson Nano/c/lib/Fonts/font16.c b/RaspberryPi&JetsonNano/c/lib/Fonts/font16.c similarity index 100% rename from Jetson Nano/c/lib/Fonts/font16.c rename to RaspberryPi&JetsonNano/c/lib/Fonts/font16.c diff --git a/Jetson Nano/c/lib/Fonts/font20.c b/RaspberryPi&JetsonNano/c/lib/Fonts/font20.c similarity index 100% rename from Jetson Nano/c/lib/Fonts/font20.c rename to RaspberryPi&JetsonNano/c/lib/Fonts/font20.c diff --git a/Jetson Nano/c/lib/Fonts/font24.c b/RaspberryPi&JetsonNano/c/lib/Fonts/font24.c similarity index 100% rename from Jetson Nano/c/lib/Fonts/font24.c rename to RaspberryPi&JetsonNano/c/lib/Fonts/font24.c diff --git a/Raspberry Pi/c/lib/Fonts/font24CN.c b/RaspberryPi&JetsonNano/c/lib/Fonts/font24CN.c similarity index 96% rename from Raspberry Pi/c/lib/Fonts/font24CN.c rename to RaspberryPi&JetsonNano/c/lib/Fonts/font24CN.c index 9175e2d..d3c9584 100644 --- a/Raspberry Pi/c/lib/Fonts/font24CN.c +++ b/RaspberryPi&JetsonNano/c/lib/Fonts/font24CN.c @@ -47,7 +47,7 @@ const CH_CN Font24CN_Table[] = { /*-- 文字: 你 --*/ /*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"你", +{{"你"},{ 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,0x01,0xC1,0xC0,0x00, 0x01,0xE3,0xE0,0x00,0x03,0xE3,0xC0,0x00,0x03,0xC7,0x80,0x00,0x03,0xC7,0xFF,0xFF, @@ -58,11 +58,11 @@ const CH_CN Font24CN_Table[] = 0x0F,0x3C,0x1E,0x1F,0x0F,0x7C,0x1E,0x0F,0x0F,0x78,0x1E,0x0E,0x0F,0x00,0x1E,0x00, 0x0F,0x00,0x1E,0x00,0x0F,0x00,0x3C,0x00,0x0F,0x07,0xFC,0x00,0x0F,0x07,0xF8,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}}, /*-- 文字: 好 --*/ /*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"好", +{{"好"},{ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0F,0x00,0x00,0x00,0x0F,0x00,0x00,0x00, 0x0F,0x07,0xFF,0xFE,0x0F,0x07,0xFF,0xFE,0x0F,0x00,0x00,0x3E,0x1E,0x00,0x00,0xFC, @@ -73,11 +73,11 @@ const CH_CN Font24CN_Table[] = 0x07,0xE0,0x0F,0x00,0x07,0xF0,0x0F,0x00,0x0F,0xF8,0x0F,0x00,0x1E,0x7C,0x0F,0x00, 0x3C,0x38,0x0F,0x00,0x78,0x00,0x0F,0x00,0xF0,0x03,0xFF,0x00,0x60,0x01,0xFE,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}}, /*-- 文字: 微 --*/ /*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"微", +{{"微"},{ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x07,0x01,0xE0,0x07,0x87,0x01,0xE0, 0x07,0x07,0x01,0xC0,0x0F,0xF7,0x79,0xC0,0x1E,0xF7,0x7B,0xC0,0x1E,0xF7,0x7B,0x80, @@ -88,11 +88,11 @@ const CH_CN Font24CN_Table[] = 0x1E,0x78,0xEE,0xF0,0x1E,0x78,0xFF,0xF0,0x1E,0x78,0xFD,0xF8,0x1E,0x79,0xFB,0xFC, 0x1E,0xF1,0xF7,0xBC,0x1E,0xF0,0xEF,0x9E,0x1F,0xE0,0x0F,0x0F,0x1E,0xC0,0x1E,0x0F, 0x1E,0x00,0x0C,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, +0x00,0x00,0x00,0x00}}, /*-- 文字: 软 --*/ /*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"软", +{{"软"},{ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x03,0xC0,0x78,0x00,0x07,0x80,0x78,0x00,0x07,0x80,0x78,0x00, 0x07,0x80,0xF0,0x00,0x0F,0x00,0xF0,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, @@ -103,11 +103,11 @@ const CH_CN Font24CN_Table[] = 0x0F,0xFF,0x7B,0xC0,0xFF,0xF0,0x79,0xE0,0xF9,0xE0,0xF1,0xF0,0x01,0xE1,0xF0,0xF0, 0x01,0xE3,0xE0,0xF8,0x01,0xE7,0xC0,0x7C,0x01,0xFF,0x80,0x3F,0x01,0xFF,0x00,0x1F, 0x01,0xEC,0x00,0x0E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, +0x00,0x00,0x00,0x00}}, /*-- 文字: 雅 --*/ /*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"雅", +{{"雅"},{ 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,0x77,0x00,0x00,0x00,0xFF,0x00, 0x7F,0xFC,0xF7,0x80,0x7F,0xFD,0xE3,0xC0,0x01,0xC1,0xE3,0xC0,0x01,0xC3,0xC1,0x80, @@ -118,11 +118,11 @@ const CH_CN Font24CN_Table[] = 0x3D,0xC3,0x83,0x80,0x79,0xC3,0x83,0x80,0xF1,0xC3,0x83,0x80,0xF1,0xC3,0x83,0x80, 0x61,0xC3,0x83,0x80,0x01,0xC3,0xFF,0xFF,0x03,0xC3,0xFF,0xFF,0x1F,0xC3,0x80,0x00, 0x1F,0x83,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, +0x00,0x00,0x00,0x00}}, /*-- 文字: 黑 --*/ /*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"黑", +{{"黑"},{ 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, 0x1F,0xFF,0xFF,0xFC,0x1F,0xFF,0xFF,0xFC,0x1E,0x03,0xC0,0x3C,0x1E,0xC3,0xC7,0x3C, @@ -133,11 +133,11 @@ const CH_CN Font24CN_Table[] = 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00,0x1C,0x38,0x70,0x70, 0x3E,0x78,0xF8,0xF8,0x3C,0x7C,0x78,0x7C,0x7C,0x3C,0x3C,0x3E,0xF8,0x3E,0x3C,0x1F, 0xF0,0x1C,0x18,0x0E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, +0x00,0x00,0x00,0x00}}, /*-- 文字: 此 --*/ /*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"此", +{{"此"},{ 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,0x78,0x3C,0x00, 0x00,0x78,0x3C,0x00,0x00,0x78,0x3C,0x00,0x00,0x78,0x3C,0x00,0x00,0x78,0x3C,0x00, @@ -148,11 +148,11 @@ const CH_CN Font24CN_Table[] = 0x3C,0x78,0x3C,0x0F,0x3C,0x79,0xFC,0x0F,0x3C,0x7F,0xFC,0x0F,0x3F,0xFF,0x3C,0x0F, 0x3F,0xF0,0x3E,0x1E,0xFF,0x00,0x1F,0xFE,0xF0,0x00,0x0F,0xFC,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}}, /*-- 文字: 字 --*/ /*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"字", +{{"字"},{ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x03,0x80,0x00,0x00,0x07,0x80,0x00,0x00,0x03,0xC0,0x00, 0x00,0x03,0xE0,0x00,0x00,0x01,0xE0,0x00,0x7F,0xFF,0xFF,0xFE,0x7F,0xFF,0xFF,0xFE, @@ -163,11 +163,11 @@ const CH_CN Font24CN_Table[] = 0x00,0x01,0xE0,0x00,0x00,0x01,0xE0,0x00,0x00,0x01,0xE0,0x00,0x00,0x01,0xE0,0x00, 0x00,0x03,0xE0,0x00,0x00,0x03,0xC0,0x00,0x00,0xFF,0xC0,0x00,0x00,0xFF,0x80,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}}, /*-- 文字: 体 --*/ /*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"体", +{{"体"},{ 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,0x03,0xC0,0x3C,0x00, 0x03,0xC0,0x3C,0x00,0x03,0xC0,0x3C,0x00,0x07,0x80,0x3C,0x00,0x07,0x80,0x3C,0x00, @@ -178,11 +178,11 @@ const CH_CN Font24CN_Table[] = 0x0F,0xF8,0x3C,0x3E,0x0F,0xF7,0xFF,0xDF,0x0F,0xE7,0xFF,0xCF,0x0F,0xC0,0x3C,0x06, 0x0F,0x00,0x3C,0x00,0x0F,0x00,0x3C,0x00,0x0F,0x00,0x3C,0x00,0x0F,0x00,0x3C,0x00, 0x0F,0x00,0x3C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, +0x00,0x00,0x00,0x00}}, /*-- 文字: 下 --*/ /*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"下", +{{"下"},{ 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, 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x0F,0x80,0x00,0x00,0x0F,0x80,0x00, @@ -193,11 +193,11 @@ const CH_CN Font24CN_Table[] = 0x00,0x0F,0x80,0x00,0x00,0x0F,0x80,0x00,0x00,0x0F,0x80,0x00,0x00,0x0F,0x80,0x00, 0x00,0x0F,0x80,0x00,0x00,0x0F,0x80,0x00,0x00,0x0F,0x80,0x00,0x00,0x0F,0x80,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}}, /*-- 文字: 对 --*/ /*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"对", +{{"对"},{ 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,0x78, 0x00,0x00,0x00,0x78,0x00,0x00,0x00,0x78,0x7F,0xFC,0x00,0x78,0x7F,0xFC,0x00,0x78, @@ -208,11 +208,11 @@ const CH_CN Font24CN_Table[] = 0x0F,0x3E,0x00,0x78,0x1F,0x1E,0x00,0x78,0x3E,0x1F,0x00,0x78,0x7C,0x0E,0x00,0xF8, 0xF8,0x00,0x00,0xF0,0xF0,0x00,0x3F,0xF0,0x60,0x00,0x3F,0xE0,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}}, /*-- 文字: 应 --*/ /*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"应", +{{"应"},{ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x01,0xC0,0x00,0x00,0x03,0xE0,0x00,0x00,0x01,0xE0,0x00, 0x00,0x01,0xF0,0x00,0x00,0x00,0xF0,0x00,0x1F,0xFF,0xFF,0xFF,0x1F,0xFF,0xFF,0xFF, @@ -223,11 +223,11 @@ const CH_CN Font24CN_Table[] = 0x3C,0x3E,0x07,0x80,0x3C,0x1C,0x07,0x80,0x3C,0x00,0x07,0x80,0x3C,0x00,0x0F,0x00, 0x78,0x00,0x0F,0x00,0x7B,0xFF,0xFF,0xFF,0xF3,0xFF,0xFF,0xFF,0xF0,0x00,0x00,0x00, 0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, +0x00,0x00,0x00,0x00}}, /*-- 文字: 的 --*/ /*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"的", +{{"的"},{ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x80,0x3C,0x00,0x07,0xC0,0x3E,0x00, 0x07,0x80,0x3C,0x00,0x07,0x80,0x7C,0x00,0x0F,0x00,0x78,0x00,0x7F,0xFE,0x7F,0xFE, @@ -238,11 +238,11 @@ const CH_CN Font24CN_Table[] = 0x78,0x1E,0x00,0x1E,0x78,0x1E,0x00,0x3E,0x78,0x1E,0x00,0x3C,0x78,0x1E,0x00,0x3C, 0x7F,0xFE,0x00,0x3C,0x7F,0xFE,0x00,0x7C,0x78,0x1E,0x3F,0xF8,0x78,0x1E,0x3F,0xF0, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, +0x00,0x00,0x00,0x00}}, /*-- 文字: 点 --*/ /*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"点", +{{"点"},{ 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,0x03,0xC0,0x00,0x00,0x03,0xC0,0x00, 0x00,0x03,0xC0,0x00,0x00,0x03,0xC0,0x00,0x00,0x03,0xFF,0xFF,0x00,0x03,0xFF,0xFF, @@ -253,11 +253,11 @@ const CH_CN Font24CN_Table[] = 0x0C,0x38,0x38,0x30,0x1E,0x7C,0x78,0x78,0x3E,0x3C,0x78,0x78,0x3C,0x3C,0x3C,0x3C, 0x7C,0x3E,0x3C,0x3E,0xF8,0x1E,0x3C,0x1E,0xF0,0x1E,0x1E,0x1F,0x70,0x1E,0x1C,0x0E, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, +0x00,0x00,0x00,0x00}}, /*-- 文字: 阵 --*/ /*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"阵", +{{"阵"},{ 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,0x3C,0x00,0x00,0x00,0x78,0x00, 0x7F,0xF0,0x78,0x00,0x7F,0xF0,0x78,0x00,0x79,0xFF,0xFF,0xFF,0x79,0xFF,0xFF,0xFF, @@ -268,11 +268,11 @@ const CH_CN Font24CN_Table[] = 0x78,0xFF,0xFF,0xFF,0x79,0xFF,0xFF,0xFF,0x7F,0xE0,0x0F,0x80,0x7F,0xC0,0x0F,0x80, 0x78,0x00,0x0F,0x80,0x78,0x00,0x0F,0x80,0x78,0x00,0x0F,0x80,0x78,0x00,0x0F,0x80, 0x78,0x00,0x0F,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, +0x00,0x00,0x00,0x00}}, /*-- 文字: 为 --*/ /*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"为", +{{"为"},{ 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,0x07,0x80,0x00, 0x0E,0x07,0x80,0x00,0x1F,0x07,0x80,0x00,0x0F,0x87,0x80,0x00,0x07,0xC7,0x80,0x00, @@ -283,11 +283,11 @@ const CH_CN Font24CN_Table[] = 0x00,0xF8,0x06,0x3C,0x01,0xF0,0x00,0x3C,0x03,0xE0,0x00,0x7C,0x07,0xC0,0x00,0x7C, 0x0F,0x80,0x00,0x78,0x1F,0x00,0x00,0xF8,0x3E,0x00,0xFF,0xF0,0x7C,0x00,0xFF,0xE0, 0x38,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, +0x00,0x00,0x00,0x00}}, /*-- 文字: 树 --*/ /*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"树", +{{"树"},{ 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,0x0F,0x00,0x00,0x38, 0x0F,0x00,0x00,0x38,0x0F,0x00,0x00,0x38,0x0F,0x3F,0xF8,0x38,0x0F,0x3F,0xF8,0x38, @@ -298,11 +298,11 @@ const CH_CN Font24CN_Table[] = 0xCF,0x1F,0xF0,0x38,0x0F,0x1E,0x78,0x38,0x0F,0x3C,0x7C,0x38,0x0F,0x78,0x3C,0x38, 0x0F,0xF8,0x38,0x38,0x0F,0x60,0x00,0x78,0x0F,0x00,0x0F,0xF8,0x0F,0x00,0x07,0xF0, 0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, +0x00,0x00,0x00,0x00}}, /*-- 文字: 莓 --*/ /*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"莓", +{{"莓"},{ 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,0x3C,0x1E,0x00,0x00,0x3C,0x1E,0x00, 0x00,0x3C,0x1E,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x3C,0x1E,0x00, @@ -313,11 +313,11 @@ const CH_CN Font24CN_Table[] = 0x0F,0x0F,0x81,0xE0,0x0E,0x03,0xE1,0xE0,0x1E,0x01,0xC1,0xE0,0x1F,0xFF,0xFF,0xFE, 0x1F,0xFF,0xFF,0xFE,0x00,0x00,0x01,0xE0,0x00,0x00,0x03,0xC0,0x00,0x00,0xFF,0xC0, 0x00,0x00,0xFF,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, +0x00,0x00,0x00,0x00}}, /*-- 文字: 派 --*/ /*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"派", +{{"派"},{ 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,0x38,0x00,0x00,0x3E, 0x7C,0x00,0x3F,0xFE,0x3F,0x3F,0xFF,0xF0,0x1F,0xBF,0xE0,0x00,0x07,0xBC,0x00,0x00, @@ -328,12 +328,12 @@ const CH_CN Font24CN_Table[] = 0x3C,0x79,0xE0,0xF0,0x3C,0x79,0xE0,0xF8,0x3C,0xF1,0xE0,0x7C,0x3C,0xF1,0xE3,0x7C, 0x7D,0xF1,0xEF,0x3F,0x79,0xE1,0xFE,0x1F,0x7B,0xE1,0xF8,0x0E,0x7B,0xC3,0xE0,0x00, 0x79,0x81,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, +0x00,0x00,0x00,0x00}}, /*-- 文字: A --*/ /*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{ -"A", +{{ +"A"},{ 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,0x7C,0x00,0x00,0x00,0xFC,0x00,0x00,0x00,0xFE,0x00,0x00,0x00,0xFE,0x00,0x00, @@ -344,11 +344,11 @@ const CH_CN Font24CN_Table[] = 0x7C,0x00,0x7C,0x00,0x7C,0x00,0x7C,0x00,0x78,0x00,0x3C,0x00,0xF8,0x00,0x3E,0x00, 0xF8,0x00,0x3E,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}}, /*-- 文字: a --*/ /*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"a", +{{"a"},{ 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, @@ -359,11 +359,11 @@ const CH_CN Font24CN_Table[] = 0x7C,0x1F,0x00,0x00,0x7E,0x7F,0x00,0x00,0x7F,0xFF,0x00,0x00,0x3F,0xFF,0x00,0x00, 0x0F,0xCF,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}}, /*-- 文字: b --*/ /*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"b", +{{"b"},{ 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,0x3C,0x00,0x00,0x00, 0x3C,0x00,0x00,0x00,0x3C,0x00,0x00,0x00,0x3C,0x00,0x00,0x00,0x3C,0x00,0x00,0x00, @@ -374,11 +374,11 @@ const CH_CN Font24CN_Table[] = 0x3F,0x07,0xC0,0x00,0x3F,0x8F,0xC0,0x00,0x3F,0xFF,0x80,0x00,0x3F,0xFF,0x00,0x00, 0x3C,0xFC,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}}, /*-- 文字: c --*/ /*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"c", +{{"c"},{ 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, @@ -389,11 +389,11 @@ const CH_CN Font24CN_Table[] = 0x3E,0x00,0x00,0x00,0x3F,0x86,0x00,0x00,0x1F,0xFE,0x00,0x00,0x0F,0xFE,0x00,0x00, 0x03,0xFC,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}}, /*-- 文字: 微 --*/ /*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"微", +{{"微"},{ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x07,0x01,0xE0,0x07,0x87,0x01,0xE0, 0x07,0x07,0x01,0xC0,0x0F,0xF7,0x79,0xC0,0x1E,0xF7,0x7B,0xC0,0x1E,0xF7,0x7B,0x80, @@ -404,11 +404,11 @@ const CH_CN Font24CN_Table[] = 0x1E,0x78,0xEE,0xF0,0x1E,0x78,0xFF,0xF0,0x1E,0x78,0xFD,0xF8,0x1E,0x79,0xFB,0xFC, 0x1E,0xF1,0xF7,0xBC,0x1E,0xF0,0xEF,0x9E,0x1F,0xE0,0x0F,0x0F,0x1E,0xC0,0x1E,0x0F, 0x1E,0x00,0x0C,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, +0x00,0x00,0x00,0x00}}, /*-- 文字: 雪 --*/ /*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"雪", +{{"雪"},{ 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, 0x1F,0xFF,0xFF,0xF8,0x1F,0xFF,0xFF,0xF8,0x00,0x03,0xC0,0x00,0x00,0x03,0xC0,0x00, @@ -419,11 +419,11 @@ const CH_CN Font24CN_Table[] = 0x1F,0xFF,0xFF,0xF8,0x1F,0xFF,0xFF,0xF8,0x00,0x00,0x00,0x78,0x00,0x00,0x00,0x78, 0x00,0x00,0x00,0x78,0x3F,0xFF,0xFF,0xF8,0x3F,0xFF,0xFF,0xF8,0x00,0x00,0x00,0x78, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, +0x00,0x00,0x00,0x00}}, /*-- 文字: 电 --*/ /*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"电", +{{"电"},{ 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,0x07,0x80,0x00,0x00,0x07,0x80,0x00, 0x00,0x07,0x80,0x00,0x00,0x07,0x80,0x00,0x7F,0xFF,0xFF,0xF8,0x7F,0xFF,0xFF,0xF8, @@ -434,11 +434,11 @@ const CH_CN Font24CN_Table[] = 0x78,0x07,0x80,0x0E,0x78,0x07,0x80,0x0F,0x00,0x07,0x80,0x0F,0x00,0x07,0x80,0x0F, 0x00,0x07,0x80,0x1F,0x00,0x07,0x80,0x1E,0x00,0x03,0xFF,0xFE,0x00,0x01,0xFF,0xFC, 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, -0x00,0x00,0x00,0x00}, +0x00,0x00,0x00,0x00}}, /*-- 文字: 子 --*/ /*-- 微软雅黑24; 此字体下对应的点阵为:宽x高=32x41 --*/ -{"子", +{{"子"},{ 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, 0x1F,0xFF,0xFF,0xF8,0x1F,0xFF,0xFF,0xF8,0x00,0x00,0x01,0xF8,0x00,0x00,0x07,0xE0, @@ -449,7 +449,7 @@ const CH_CN Font24CN_Table[] = 0x00,0x03,0xE0,0x00,0x00,0x03,0xE0,0x00,0x00,0x03,0xE0,0x00,0x00,0x03,0xE0,0x00, 0x00,0x03,0xE0,0x00,0x00,0x03,0xC0,0x00,0x01,0xFF,0xC0,0x00,0x00,0xFF,0x80,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}}, }; diff --git a/Jetson Nano/c/lib/Fonts/font8.c b/RaspberryPi&JetsonNano/c/lib/Fonts/font8.c similarity index 100% rename from Jetson Nano/c/lib/Fonts/font8.c rename to RaspberryPi&JetsonNano/c/lib/Fonts/font8.c diff --git a/Raspberry Pi/c/lib/Fonts/fonts.h b/RaspberryPi&JetsonNano/c/lib/Fonts/fonts.h similarity index 95% rename from Raspberry Pi/c/lib/Fonts/fonts.h rename to RaspberryPi&JetsonNano/c/lib/Fonts/fonts.h index 4a6b33d..c183f04 100644 --- a/Raspberry Pi/c/lib/Fonts/fonts.h +++ b/RaspberryPi&JetsonNano/c/lib/Fonts/fonts.h @@ -64,8 +64,8 @@ typedef struct _tFont //GB2312 typedef struct // 汉字字模数据结构 { - unsigned char index[2]; // 汉字内码索引 - const char matrix[MAX_HEIGHT_FONT*MAX_WIDTH_FONT/8]; // 点阵码数据 + const char index[2]; // 汉字内码索引 + const char matrix[MAX_HEIGHT_FONT*MAX_WIDTH_FONT/8+2]; // 点阵码数据 }CH_CN; diff --git a/Raspberry Pi/c/lib/GUI/GUI_BMPfile.c b/RaspberryPi&JetsonNano/c/lib/GUI/GUI_BMPfile.c similarity index 99% rename from Raspberry Pi/c/lib/GUI/GUI_BMPfile.c rename to RaspberryPi&JetsonNano/c/lib/GUI/GUI_BMPfile.c index 914869a..877fd95 100644 --- a/Raspberry Pi/c/lib/GUI/GUI_BMPfile.c +++ b/RaspberryPi&JetsonNano/c/lib/GUI/GUI_BMPfile.c @@ -45,6 +45,7 @@ #include //exit() #include //memset() #include //memset() +#include UBYTE GUI_ReadBmp(const char *path, UWORD Xstart, UWORD Ystart) { diff --git a/Jetson Nano/c/lib/GUI/GUI_BMPfile.h b/RaspberryPi&JetsonNano/c/lib/GUI/GUI_BMPfile.h similarity index 100% rename from Jetson Nano/c/lib/GUI/GUI_BMPfile.h rename to RaspberryPi&JetsonNano/c/lib/GUI/GUI_BMPfile.h diff --git a/Jetson Nano/c/lib/GUI/GUI_Paint.c b/RaspberryPi&JetsonNano/c/lib/GUI/GUI_Paint.c similarity index 100% rename from Jetson Nano/c/lib/GUI/GUI_Paint.c rename to RaspberryPi&JetsonNano/c/lib/GUI/GUI_Paint.c diff --git a/Jetson Nano/c/lib/GUI/GUI_Paint.h b/RaspberryPi&JetsonNano/c/lib/GUI/GUI_Paint.h similarity index 100% rename from Jetson Nano/c/lib/GUI/GUI_Paint.h rename to RaspberryPi&JetsonNano/c/lib/GUI/GUI_Paint.h diff --git a/Jetson Nano/c/lib/e-Paper/EPD_1in54.c b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_1in54.c similarity index 100% rename from Jetson Nano/c/lib/e-Paper/EPD_1in54.c rename to RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_1in54.c diff --git a/Jetson Nano/c/lib/e-Paper/EPD_1in54.h b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_1in54.h similarity index 100% rename from Jetson Nano/c/lib/e-Paper/EPD_1in54.h rename to RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_1in54.h diff --git a/Jetson Nano/c/lib/e-Paper/EPD_1in54_V2.c b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_1in54_V2.c similarity index 100% rename from Jetson Nano/c/lib/e-Paper/EPD_1in54_V2.c rename to RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_1in54_V2.c diff --git a/Jetson Nano/c/lib/e-Paper/EPD_1in54_V2.h b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_1in54_V2.h similarity index 100% rename from Jetson Nano/c/lib/e-Paper/EPD_1in54_V2.h rename to RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_1in54_V2.h diff --git a/Jetson Nano/c/lib/e-Paper/EPD_1in54b.c b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_1in54b.c similarity index 100% rename from Jetson Nano/c/lib/e-Paper/EPD_1in54b.c rename to RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_1in54b.c diff --git a/Jetson Nano/c/lib/e-Paper/EPD_1in54b.h b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_1in54b.h similarity index 100% rename from Jetson Nano/c/lib/e-Paper/EPD_1in54b.h rename to RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_1in54b.h diff --git a/Jetson Nano/c/lib/e-Paper/EPD_1in54c.c b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_1in54c.c similarity index 100% rename from Jetson Nano/c/lib/e-Paper/EPD_1in54c.c rename to RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_1in54c.c diff --git a/Jetson Nano/c/lib/e-Paper/EPD_1in54c.h b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_1in54c.h similarity index 100% rename from Jetson Nano/c/lib/e-Paper/EPD_1in54c.h rename to RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_1in54c.h diff --git a/Jetson Nano/c/lib/e-Paper/EPD_2in13.c b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_2in13.c similarity index 100% rename from Jetson Nano/c/lib/e-Paper/EPD_2in13.c rename to RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_2in13.c diff --git a/Jetson Nano/c/lib/e-Paper/EPD_2in13.h b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_2in13.h similarity index 100% rename from Jetson Nano/c/lib/e-Paper/EPD_2in13.h rename to RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_2in13.h diff --git a/Jetson Nano/c/lib/e-Paper/EPD_2in13_V2.c b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_2in13_V2.c similarity index 100% rename from Jetson Nano/c/lib/e-Paper/EPD_2in13_V2.c rename to RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_2in13_V2.c diff --git a/Jetson Nano/c/lib/e-Paper/EPD_2in13_V2.h b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_2in13_V2.h similarity index 100% rename from Jetson Nano/c/lib/e-Paper/EPD_2in13_V2.h rename to RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_2in13_V2.h diff --git a/Jetson Nano/c/lib/e-Paper/EPD_2in13bc.c b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_2in13bc.c similarity index 100% rename from Jetson Nano/c/lib/e-Paper/EPD_2in13bc.c rename to RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_2in13bc.c diff --git a/Jetson Nano/c/lib/e-Paper/EPD_2in13bc.h b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_2in13bc.h similarity index 100% rename from Jetson Nano/c/lib/e-Paper/EPD_2in13bc.h rename to RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_2in13bc.h diff --git a/Jetson Nano/c/lib/e-Paper/EPD_2in13d.c b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_2in13d.c similarity index 100% rename from Jetson Nano/c/lib/e-Paper/EPD_2in13d.c rename to RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_2in13d.c diff --git a/Jetson Nano/c/lib/e-Paper/EPD_2in13d.h b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_2in13d.h similarity index 100% rename from Jetson Nano/c/lib/e-Paper/EPD_2in13d.h rename to RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_2in13d.h diff --git a/Jetson Nano/c/lib/e-Paper/EPD_2in7.c b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_2in7.c similarity index 100% rename from Jetson Nano/c/lib/e-Paper/EPD_2in7.c rename to RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_2in7.c diff --git a/Jetson Nano/c/lib/e-Paper/EPD_2in7.h b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_2in7.h similarity index 100% rename from Jetson Nano/c/lib/e-Paper/EPD_2in7.h rename to RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_2in7.h diff --git a/Raspberry Pi/c/lib/e-Paper/EPD_2in7b.c b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_2in7b.c similarity index 99% rename from Raspberry Pi/c/lib/e-Paper/EPD_2in7b.c rename to RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_2in7b.c index 4118b88..265a947 100644 --- a/Raspberry Pi/c/lib/e-Paper/EPD_2in7b.c +++ b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_2in7b.c @@ -334,7 +334,7 @@ void EPD_2IN7B_Display(UBYTE *Imageblack, UBYTE *Imagered) UWORD Width, Height; Width = (EPD_2IN7B_WIDTH % 8 == 0)? (EPD_2IN7B_WIDTH / 8 ): (EPD_2IN7B_WIDTH / 8 + 1); Height = EPD_2IN7B_HEIGHT; - + EPD_2IN7B_SendCommand(0x10); for (UWORD j = 0; j < Height; j++) { for (UWORD i = 0; i < Width; i++) { @@ -349,6 +349,7 @@ void EPD_2IN7B_Display(UBYTE *Imageblack, UBYTE *Imagered) EPD_2IN7B_SendData(~Imagered[i + j * Width]); } } + EPD_2IN7B_SendCommand(0x11); // DATA_STOP EPD_2IN7B_SendCommand(0x12); diff --git a/Jetson Nano/c/lib/e-Paper/EPD_2in7b.h b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_2in7b.h similarity index 100% rename from Jetson Nano/c/lib/e-Paper/EPD_2in7b.h rename to RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_2in7b.h diff --git a/Raspberry Pi/c/lib/e-Paper/EPD_2in9.c b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_2in9.c similarity index 100% rename from Raspberry Pi/c/lib/e-Paper/EPD_2in9.c rename to RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_2in9.c diff --git a/Jetson Nano/c/lib/e-Paper/EPD_2in9.h b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_2in9.h similarity index 100% rename from Jetson Nano/c/lib/e-Paper/EPD_2in9.h rename to RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_2in9.h diff --git a/Jetson Nano/c/lib/e-Paper/EPD_2in9bc.c b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_2in9bc.c similarity index 100% rename from Jetson Nano/c/lib/e-Paper/EPD_2in9bc.c rename to RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_2in9bc.c diff --git a/Jetson Nano/c/lib/e-Paper/EPD_2in9bc.h b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_2in9bc.h similarity index 100% rename from Jetson Nano/c/lib/e-Paper/EPD_2in9bc.h rename to RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_2in9bc.h diff --git a/Jetson Nano/c/lib/e-Paper/EPD_2in9d.c b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_2in9d.c similarity index 100% rename from Jetson Nano/c/lib/e-Paper/EPD_2in9d.c rename to RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_2in9d.c diff --git a/Jetson Nano/c/lib/e-Paper/EPD_2in9d.h b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_2in9d.h similarity index 100% rename from Jetson Nano/c/lib/e-Paper/EPD_2in9d.h rename to RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_2in9d.h diff --git a/Jetson Nano/c/lib/e-Paper/EPD_4in2.c b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_4in2.c similarity index 100% rename from Jetson Nano/c/lib/e-Paper/EPD_4in2.c rename to RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_4in2.c diff --git a/Jetson Nano/c/lib/e-Paper/EPD_4in2.h b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_4in2.h similarity index 100% rename from Jetson Nano/c/lib/e-Paper/EPD_4in2.h rename to RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_4in2.h diff --git a/Jetson Nano/c/lib/e-Paper/EPD_4in2bc.c b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_4in2bc.c similarity index 100% rename from Jetson Nano/c/lib/e-Paper/EPD_4in2bc.c rename to RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_4in2bc.c diff --git a/Jetson Nano/c/lib/e-Paper/EPD_4in2bc.h b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_4in2bc.h similarity index 100% rename from Jetson Nano/c/lib/e-Paper/EPD_4in2bc.h rename to RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_4in2bc.h diff --git a/Jetson Nano/c/lib/e-Paper/EPD_5in83.c b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_5in83.c similarity index 100% rename from Jetson Nano/c/lib/e-Paper/EPD_5in83.c rename to RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_5in83.c diff --git a/Jetson Nano/c/lib/e-Paper/EPD_5in83.h b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_5in83.h similarity index 100% rename from Jetson Nano/c/lib/e-Paper/EPD_5in83.h rename to RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_5in83.h diff --git a/Jetson Nano/c/lib/e-Paper/EPD_5in83bc.c b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_5in83bc.c similarity index 100% rename from Jetson Nano/c/lib/e-Paper/EPD_5in83bc.c rename to RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_5in83bc.c diff --git a/Jetson Nano/c/lib/e-Paper/EPD_5in83bc.h b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_5in83bc.h similarity index 100% rename from Jetson Nano/c/lib/e-Paper/EPD_5in83bc.h rename to RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_5in83bc.h diff --git a/Jetson Nano/c/lib/e-Paper/EPD_7in5.c b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_7in5.c similarity index 100% rename from Jetson Nano/c/lib/e-Paper/EPD_7in5.c rename to RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_7in5.c diff --git a/Jetson Nano/c/lib/e-Paper/EPD_7in5.h b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_7in5.h similarity index 100% rename from Jetson Nano/c/lib/e-Paper/EPD_7in5.h rename to RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_7in5.h diff --git a/Jetson Nano/c/lib/e-Paper/EPD_7in5bc.c b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_7in5bc.c similarity index 100% rename from Jetson Nano/c/lib/e-Paper/EPD_7in5bc.c rename to RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_7in5bc.c diff --git a/Jetson Nano/c/lib/e-Paper/EPD_7in5bc.h b/RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_7in5bc.h similarity index 100% rename from Jetson Nano/c/lib/e-Paper/EPD_7in5bc.h rename to RaspberryPi&JetsonNano/c/lib/e-Paper/EPD_7in5bc.h diff --git a/Jetson Nano/c/pic/100x100.bmp b/RaspberryPi&JetsonNano/c/pic/100x100.bmp similarity index 100% rename from Jetson Nano/c/pic/100x100.bmp rename to RaspberryPi&JetsonNano/c/pic/100x100.bmp diff --git a/Jetson Nano/c/pic/1in54.bmp b/RaspberryPi&JetsonNano/c/pic/1in54.bmp similarity index 100% rename from Jetson Nano/c/pic/1in54.bmp rename to RaspberryPi&JetsonNano/c/pic/1in54.bmp diff --git a/Jetson Nano/c/pic/1in54b-b.bmp b/RaspberryPi&JetsonNano/c/pic/1in54b-b.bmp similarity index 100% rename from Jetson Nano/c/pic/1in54b-b.bmp rename to RaspberryPi&JetsonNano/c/pic/1in54b-b.bmp diff --git a/Jetson Nano/c/pic/1in54b-r.bmp b/RaspberryPi&JetsonNano/c/pic/1in54b-r.bmp similarity index 100% rename from Jetson Nano/c/pic/1in54b-r.bmp rename to RaspberryPi&JetsonNano/c/pic/1in54b-r.bmp diff --git a/Jetson Nano/c/pic/1in54c-b.bmp b/RaspberryPi&JetsonNano/c/pic/1in54c-b.bmp similarity index 100% rename from Jetson Nano/c/pic/1in54c-b.bmp rename to RaspberryPi&JetsonNano/c/pic/1in54c-b.bmp diff --git a/Jetson Nano/c/pic/1in54c-y.bmp b/RaspberryPi&JetsonNano/c/pic/1in54c-y.bmp similarity index 100% rename from Jetson Nano/c/pic/1in54c-y.bmp rename to RaspberryPi&JetsonNano/c/pic/1in54c-y.bmp diff --git a/Jetson Nano/c/pic/2in13-v2.bmp b/RaspberryPi&JetsonNano/c/pic/2in13-v2.bmp similarity index 100% rename from Jetson Nano/c/pic/2in13-v2.bmp rename to RaspberryPi&JetsonNano/c/pic/2in13-v2.bmp diff --git a/Jetson Nano/c/pic/2in13.bmp b/RaspberryPi&JetsonNano/c/pic/2in13.bmp similarity index 100% rename from Jetson Nano/c/pic/2in13.bmp rename to RaspberryPi&JetsonNano/c/pic/2in13.bmp diff --git a/Jetson Nano/c/pic/2in13bc-b.bmp b/RaspberryPi&JetsonNano/c/pic/2in13bc-b.bmp similarity index 100% rename from Jetson Nano/c/pic/2in13bc-b.bmp rename to RaspberryPi&JetsonNano/c/pic/2in13bc-b.bmp diff --git a/Jetson Nano/c/pic/2in13bc-ry.bmp b/RaspberryPi&JetsonNano/c/pic/2in13bc-ry.bmp similarity index 100% rename from Jetson Nano/c/pic/2in13bc-ry.bmp rename to RaspberryPi&JetsonNano/c/pic/2in13bc-ry.bmp diff --git a/Jetson Nano/c/pic/2in13d.bmp b/RaspberryPi&JetsonNano/c/pic/2in13d.bmp similarity index 100% rename from Jetson Nano/c/pic/2in13d.bmp rename to RaspberryPi&JetsonNano/c/pic/2in13d.bmp diff --git a/Jetson Nano/c/pic/2in7.bmp b/RaspberryPi&JetsonNano/c/pic/2in7.bmp similarity index 100% rename from Jetson Nano/c/pic/2in7.bmp rename to RaspberryPi&JetsonNano/c/pic/2in7.bmp diff --git a/Jetson Nano/c/pic/2in7b-b.bmp b/RaspberryPi&JetsonNano/c/pic/2in7b-b.bmp similarity index 100% rename from Jetson Nano/c/pic/2in7b-b.bmp rename to RaspberryPi&JetsonNano/c/pic/2in7b-b.bmp diff --git a/Jetson Nano/c/pic/2in7b-r.bmp b/RaspberryPi&JetsonNano/c/pic/2in7b-r.bmp similarity index 100% rename from Jetson Nano/c/pic/2in7b-r.bmp rename to RaspberryPi&JetsonNano/c/pic/2in7b-r.bmp diff --git a/Jetson Nano/c/pic/2in9.bmp b/RaspberryPi&JetsonNano/c/pic/2in9.bmp similarity index 100% rename from Jetson Nano/c/pic/2in9.bmp rename to RaspberryPi&JetsonNano/c/pic/2in9.bmp diff --git a/Jetson Nano/c/pic/2in9bc-b.bmp b/RaspberryPi&JetsonNano/c/pic/2in9bc-b.bmp similarity index 100% rename from Jetson Nano/c/pic/2in9bc-b.bmp rename to RaspberryPi&JetsonNano/c/pic/2in9bc-b.bmp diff --git a/Jetson Nano/c/pic/2in9bc-ry.bmp b/RaspberryPi&JetsonNano/c/pic/2in9bc-ry.bmp similarity index 100% rename from Jetson Nano/c/pic/2in9bc-ry.bmp rename to RaspberryPi&JetsonNano/c/pic/2in9bc-ry.bmp diff --git a/Jetson Nano/c/pic/2in9d.bmp b/RaspberryPi&JetsonNano/c/pic/2in9d.bmp similarity index 100% rename from Jetson Nano/c/pic/2in9d.bmp rename to RaspberryPi&JetsonNano/c/pic/2in9d.bmp diff --git a/Jetson Nano/c/pic/4in2.bmp b/RaspberryPi&JetsonNano/c/pic/4in2.bmp similarity index 100% rename from Jetson Nano/c/pic/4in2.bmp rename to RaspberryPi&JetsonNano/c/pic/4in2.bmp diff --git a/Jetson Nano/c/pic/4in2b-b.bmp b/RaspberryPi&JetsonNano/c/pic/4in2b-b.bmp similarity index 100% rename from Jetson Nano/c/pic/4in2b-b.bmp rename to RaspberryPi&JetsonNano/c/pic/4in2b-b.bmp diff --git a/Jetson Nano/c/pic/4in2b-r.bmp b/RaspberryPi&JetsonNano/c/pic/4in2b-r.bmp similarity index 100% rename from Jetson Nano/c/pic/4in2b-r.bmp rename to RaspberryPi&JetsonNano/c/pic/4in2b-r.bmp diff --git a/Jetson Nano/c/pic/4in2c-b.bmp b/RaspberryPi&JetsonNano/c/pic/4in2c-b.bmp similarity index 100% rename from Jetson Nano/c/pic/4in2c-b.bmp rename to RaspberryPi&JetsonNano/c/pic/4in2c-b.bmp diff --git a/Jetson Nano/c/pic/4in2c-y.bmp b/RaspberryPi&JetsonNano/c/pic/4in2c-y.bmp similarity index 100% rename from Jetson Nano/c/pic/4in2c-y.bmp rename to RaspberryPi&JetsonNano/c/pic/4in2c-y.bmp diff --git a/Jetson Nano/c/pic/5in83.bmp b/RaspberryPi&JetsonNano/c/pic/5in83.bmp similarity index 100% rename from Jetson Nano/c/pic/5in83.bmp rename to RaspberryPi&JetsonNano/c/pic/5in83.bmp diff --git a/Jetson Nano/c/pic/5in83bc-b.bmp b/RaspberryPi&JetsonNano/c/pic/5in83bc-b.bmp similarity index 100% rename from Jetson Nano/c/pic/5in83bc-b.bmp rename to RaspberryPi&JetsonNano/c/pic/5in83bc-b.bmp diff --git a/Jetson Nano/c/pic/5in83bc-ry.bmp b/RaspberryPi&JetsonNano/c/pic/5in83bc-ry.bmp similarity index 100% rename from Jetson Nano/c/pic/5in83bc-ry.bmp rename to RaspberryPi&JetsonNano/c/pic/5in83bc-ry.bmp diff --git a/Jetson Nano/c/pic/7in5.bmp b/RaspberryPi&JetsonNano/c/pic/7in5.bmp similarity index 100% rename from Jetson Nano/c/pic/7in5.bmp rename to RaspberryPi&JetsonNano/c/pic/7in5.bmp diff --git a/Jetson Nano/c/pic/7in5b-b.bmp b/RaspberryPi&JetsonNano/c/pic/7in5b-b.bmp similarity index 100% rename from Jetson Nano/c/pic/7in5b-b.bmp rename to RaspberryPi&JetsonNano/c/pic/7in5b-b.bmp diff --git a/Jetson Nano/c/pic/7in5b-r.bmp b/RaspberryPi&JetsonNano/c/pic/7in5b-r.bmp similarity index 100% rename from Jetson Nano/c/pic/7in5b-r.bmp rename to RaspberryPi&JetsonNano/c/pic/7in5b-r.bmp diff --git a/Jetson Nano/c/pic/7in5c-b.bmp b/RaspberryPi&JetsonNano/c/pic/7in5c-b.bmp similarity index 100% rename from Jetson Nano/c/pic/7in5c-b.bmp rename to RaspberryPi&JetsonNano/c/pic/7in5c-b.bmp diff --git a/Jetson Nano/c/pic/7in5c-r.bmp b/RaspberryPi&JetsonNano/c/pic/7in5c-r.bmp similarity index 100% rename from Jetson Nano/c/pic/7in5c-r.bmp rename to RaspberryPi&JetsonNano/c/pic/7in5c-r.bmp diff --git a/Raspberry Pi/c/readme_CN.txt b/RaspberryPi&JetsonNano/c/readme_CN.txt similarity index 91% rename from Raspberry Pi/c/readme_CN.txt rename to RaspberryPi&JetsonNano/c/readme_CN.txt index 9f6db54..eb22033 100644 --- a/Raspberry Pi/c/readme_CN.txt +++ b/RaspberryPi&JetsonNano/c/readme_CN.txt @@ -4,8 +4,8 @@ * | Function : Help with use * | Info : *---------------- -* | This version: V1.0 -* | Date : 2019-06-17 +* | This version: V1.1 +* | Date : 2019-07-31 * | Info : 鍦ㄨ繖閲屾彁渚涗竴涓腑鏂囩増鏈殑浣跨敤鏂囨。锛屼互渚夸綘鐨勫揩閫熶娇鐢 ******************************************************************************/ 杩欎釜鏂囦欢鏄府鍔╂偍浣跨敤鏈緥绋嬨 @@ -13,9 +13,6 @@ 鍦ㄨ繖閲岀畝鐣ョ殑鎻忚堪鏈伐绋嬬殑浣跨敤锛 1.鍩烘湰淇℃伅锛 -鏈緥绋嬫槸鍩轰簬jetson-nano-sd-r32.1-2019-03-18绯荤粺闀滃儚鑰屽紑鍙戠殑锛岀敱浜庣洰鍓嶇殑绯荤粺鏄病鏈夌‖浠禨PI鐨勶紝 -鐩墠閲囩敤妯℃嫙SPI杩涜寮鍙戠殑锛屽洜姝ゅⅷ姘村睆鐨勫埛鏂伴熷害杈冩參; -鏈緥绋嬫槸鍩轰簬Jetson Nano杩涜寮鍙戠殑锛屼緥绋嬪潎鍦↗etson Nano涓婅繘琛屼簡楠岃瘉; 鏈緥绋嬩娇鐢╡-paper Driver HAT妯″潡杩涜浜嗛獙璇侊紝浣犲彲浠ュ湪宸ョ▼鐨凟xamples\涓煡鐪嬪搴旂殑娴嬭瘯渚嬬▼; 2.绠¤剼杩炴帴锛 diff --git a/Jetson Nano/c/readme_EN.txt b/RaspberryPi&JetsonNano/c/readme_EN.txt similarity index 91% rename from Jetson Nano/c/readme_EN.txt rename to RaspberryPi&JetsonNano/c/readme_EN.txt index 57eb758..6c8f3c5 100644 --- a/Jetson Nano/c/readme_EN.txt +++ b/RaspberryPi&JetsonNano/c/readme_EN.txt @@ -5,7 +5,7 @@ * | Info : *---------------- * | This version: V1.0 -* | Date : 2019-06-17 +* | Date : 2019-07-31 * | Info : Here is an English version of the documentation for your quick use. ******************************************************************************/ This file is to help you use this routine. @@ -13,11 +13,6 @@ Since our ink screens are getting more and more, it is not convenient for our ma A brief description of the use of this project is here: 1. Basic information: -This routine was developed based on the jetson-nano-sd-r32.1-2019-03-18 system -image. Since the current system does not have a hardware SPI,Currently developed -with analog SPI, so the ink screen refresh rate is slower; -This routine was developed based on the Jetson Nano and the routines were -verified on the Jetson Nano; This routine has been verified using the e-paper Driver HAT module. You can view the corresponding test routines in the \lib\Examples\ of the project. diff --git a/Jetson Nano/python3/examples/epd_1in54_V2_test.py b/RaspberryPi&JetsonNano/python/examples/epd_1in54_V2_test.py similarity index 68% rename from Jetson Nano/python3/examples/epd_1in54_V2_test.py rename to RaspberryPi&JetsonNano/python/examples/epd_1in54_V2_test.py index 2e51114..57125ee 100644 --- a/Jetson Nano/python3/examples/epd_1in54_V2_test.py +++ b/RaspberryPi&JetsonNano/python/examples/epd_1in54_V2_test.py @@ -1,29 +1,35 @@ #!/usr/bin/python # -*- coding:utf-8 -*- import sys -sys.path.append(r'../lib') +import os +picdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'pic') +libdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'lib') +if os.path.exists(libdir): + sys.path.append(libdir) -import epd1in54_V2 -import epdconfig +import logging +from waveshare_epd import epd1in54_V2 import time from PIL import Image,ImageDraw,ImageFont import traceback +logging.basicConfig(level=logging.DEBUG) + try: - print("epd1in54_V2 Demo") + logging.info("epd1in54_V2 Demo") epd = epd1in54_V2.EPD() - print("init and Clear") + logging.info("init and Clear") epd.init() epd.Clear(0xFF) time.sleep(1) # Drawing on the image - print("1.Drawing on the image...") + logging.info("1.Drawing on the image...") image = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame draw = ImageDraw.Draw(image) - font = ImageFont.truetype('../lib/Font.ttc', 24) + font = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 24) draw.rectangle((0, 10, 200, 34), fill = 0) draw.text((8, 12), 'hello world', font = font, fill = 255) draw.text((8, 36), u'寰洩鐢靛瓙', font = font, fill = 0) @@ -40,22 +46,22 @@ try: time.sleep(2) # read bmp file - print("2.read bmp file...") - image = Image.open('../pic/1in54.bmp') + logging.info("2.read bmp file...") + image = Image.open(os.path.join(picdir, '1in54.bmp')) epd.display(epd.getbuffer(image)) time.sleep(2) # read bmp file on window - print("3.read bmp file on window...") + logging.info("3.read bmp file on window...") epd.Clear(0xFF) image1 = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') + bmp = Image.open(os.path.join(picdir, '100x100.bmp')) image1.paste(bmp, (50,50)) epd.display(epd.getbuffer(image1)) time.sleep(2) # partial update - print("4.show time...") + logging.info("4.show time...") time_image = Image.new('1', (epd.width, epd.height), 255) epd.displayPartBaseImage(epd.getbuffer(time_image)) @@ -71,17 +77,17 @@ try: if(num == 10): break - print("Clear...") + logging.info("Clear...") epd.init() epd.Clear(0xFF) - print("Goto Sleep...") + logging.info("Goto Sleep...") epd.sleep() except IOError as e: - print(e) + logging.info(e) except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() - exit() \ No newline at end of file + logging.info("ctrl + c:") + epd1in54_V2.epdconfig.module_exit() + exit() diff --git a/Raspberry Pi/python3/examples/epd_1in54_test.py b/RaspberryPi&JetsonNano/python/examples/epd_1in54_test.py similarity index 69% rename from Raspberry Pi/python3/examples/epd_1in54_test.py rename to RaspberryPi&JetsonNano/python/examples/epd_1in54_test.py index 7844db3..76efcf7 100644 --- a/Raspberry Pi/python3/examples/epd_1in54_test.py +++ b/RaspberryPi&JetsonNano/python/examples/epd_1in54_test.py @@ -1,28 +1,34 @@ #!/usr/bin/python # -*- coding:utf-8 -*- import sys -sys.path.append(r'../lib') +import os +picdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'pic') +libdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'lib') +if os.path.exists(libdir): + sys.path.append(libdir) -import epd1in54 -import epdconfig +import logging +from waveshare_epd import epd1in54 import time from PIL import Image,ImageDraw,ImageFont import traceback +logging.basicConfig(level=logging.DEBUG) + try: - print("epd1in54 Demo") + logging.info("epd1in54 Demo") epd = epd1in54.EPD() - print("init and Clear") + logging.info("init and Clear") epd.init(epd.lut_full_update) epd.Clear(0xFF) # Drawing on the image - print("1.Drawing on the image...") + logging.info("1.Drawing on the image...") image = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame draw = ImageDraw.Draw(image) - font = ImageFont.truetype('../lib/Font.ttc', 24) + font = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 24) draw.rectangle((0, 10, 200, 34), fill = 0) draw.text((8, 12), 'hello world', font = font, fill = 255) draw.text((8, 36), u'寰洩鐢靛瓙', font = font, fill = 0) @@ -39,22 +45,22 @@ try: time.sleep(2) # read bmp file - print("2.read bmp file...") - image = Image.open('../pic/1in54.bmp') + logging.info("2.read bmp file...") + image = Image.open(os.path.join(picdir, '1in54.bmp')) epd.display(epd.getbuffer(image)) time.sleep(2) # read bmp file on window - print("3.read bmp file on window...") + logging.info("3.read bmp file on window...") epd.Clear(0xFF) image1 = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') + bmp = Image.open(os.path.join(picdir, '100x100.bmp')) image1.paste(bmp, (50,50)) epd.display(epd.getbuffer(image1)) time.sleep(2) # # partial update - print("4.show time...") + logging.info("4.show time...") epd.init(epd.lut_partial_update) epd.Clear(0xFF) @@ -71,17 +77,17 @@ try: if(num == 10): break - print("Clear...") + logging.info("Clear...") epd.init(epd.lut_full_update) epd.Clear(0xFF) - print("Goto Sleep...") + logging.info("Goto Sleep...") epd.sleep() except IOError as e: - print(e) + logging.info(e) except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() + logging.info("ctrl + c:") + epd1in54.epdconfig.module_exit() exit() diff --git a/Jetson Nano/python2/examples/epd_1in54b_test.py b/RaspberryPi&JetsonNano/python/examples/epd_1in54b_test.py similarity index 63% rename from Jetson Nano/python2/examples/epd_1in54b_test.py rename to RaspberryPi&JetsonNano/python/examples/epd_1in54b_test.py index d48b8e2..9549253 100644 --- a/Jetson Nano/python2/examples/epd_1in54b_test.py +++ b/RaspberryPi&JetsonNano/python/examples/epd_1in54b_test.py @@ -1,30 +1,36 @@ #!/usr/bin/python # -*- coding:utf-8 -*- import sys -sys.path.append(r'../lib') +import os +picdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'pic') +libdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'lib') +if os.path.exists(libdir): + sys.path.append(libdir) -import epd1in54b -import epdconfig +import logging +from waveshare_epd import epd1in54b import time from PIL import Image,ImageDraw,ImageFont import traceback +logging.basicConfig(level=logging.DEBUG) + try: - print("epd1in54b Demo") + logging.info("epd1in54b Demo") epd = epd1in54b.EPD() - print("init and Clear") + logging.info("init and Clear") epd.init() epd.Clear() time.sleep(1) # Drawing on the image - print("1.Drawing on the image...") + logging.info("1.Drawing on the image...") blackimage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame redimage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - font = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) + font = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 24) + font18 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 18) drawblack = ImageDraw.Draw(blackimage) drawred = ImageDraw.Draw(redimage) @@ -44,32 +50,32 @@ try: time.sleep(1) # read bmp file - print("2.read bmp file...") - blackimage = Image.open('../pic/1in54b-b.bmp') - redimage = Image.open('../pic/1in54b-r.bmp') + logging.info("2.read bmp file...") + blackimage = Image.open(os.path.join(picdir, '1in54b-b.bmp')) + redimage = Image.open(os.path.join(picdir, '1in54b-r.bmp')) epd.display(epd.getbuffer(blackimage),epd.getbuffer(redimage)) time.sleep(1) # read bmp file on window - print("3.read bmp file on window...") + logging.info("3.read bmp file on window...") blackimage1 = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame redimage2 = Image.new('1', (epd.width, epd.height), 255) - newimage = Image.open('../pic/100x100.bmp') + newimage = Image.open(os.path.join(picdir, '100x100.bmp')) blackimage1.paste(newimage, (50,50)) epd.display(epd.getbuffer(blackimage1), epd.getbuffer(redimage2)) - print("Clear...") + logging.info("Clear...") epd.init() epd.Clear() - print("Goto Sleep...") + logging.info("Goto Sleep...") epd.sleep() except IOError as e: - print(e) + logging.info(e) except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() + logging.info("ctrl + c:") + epd1in54b.epdconfig.module_exit() exit() diff --git a/Jetson Nano/python2/examples/epd_1in54c_test.py b/RaspberryPi&JetsonNano/python/examples/epd_1in54c_test.py similarity index 61% rename from Jetson Nano/python2/examples/epd_1in54c_test.py rename to RaspberryPi&JetsonNano/python/examples/epd_1in54c_test.py index 7374e6d..4559c9c 100644 --- a/Jetson Nano/python2/examples/epd_1in54c_test.py +++ b/RaspberryPi&JetsonNano/python/examples/epd_1in54c_test.py @@ -1,30 +1,36 @@ #!/usr/bin/python # -*- coding:utf-8 -*- import sys -sys.path.append(r'../lib') +import os +picdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'pic') +libdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'lib') +if os.path.exists(libdir): + sys.path.append(libdir) -import epd1in54c -import epdconfig +import logging +from waveshare_epd import epd1in54c import time from PIL import Image,ImageDraw,ImageFont import traceback +logging.basicConfig(level=logging.DEBUG) + try: - print("epd1in54c Demo") + logging.info("epd1in54c Demo") epd = epd1in54c.EPD() - print("init and Clear") + logging.info("init and Clear") epd.init() epd.Clear() time.sleep(1) # Drawing on the image - print("1.Drawing on the image...") + logging.info("1.Drawing on the image...") blackimage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame yellowimage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - font = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) + font = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 24) + font18 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 18) drawblack = ImageDraw.Draw(blackimage) drawyellow = ImageDraw.Draw(yellowimage) @@ -41,32 +47,32 @@ try: time.sleep(1) # read bmp file - print("2.read bmp file...") - blackimage = Image.open('../pic/1in54c-b.bmp') - yellowimage = Image.open('../pic/1in54c-y.bmp') + logging.info("2.read bmp file...") + blackimage = Image.open(os.path.join(picdir, '1in54c-b.bmp')) + yellowimage = Image.open(os.path.join(picdir, '1in54c-y.bmp')) epd.display(epd.getbuffer(blackimage),epd.getbuffer(yellowimage)) time.sleep(1) # read bmp file on window - print("3.read bmp file on window...") + logging.info("3.read bmp file on window...") blackimage1 = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame yellowimage2 = Image.new('1', (epd.width, epd.height), 255) - newimage = Image.open('../pic/100x100.bmp') + newimage = Image.open(os.path.join(picdir, '100x100.bmp')) blackimage1.paste(newimage, (50,50)) epd.display(epd.getbuffer(blackimage1), epd.getbuffer(yellowimage2)) - print("Clear...") + logging.info("Clear...") epd.init() epd.Clear() - print("Goto Sleep...") + logging.info("Goto Sleep...") epd.sleep() except IOError as e: - print(e) + logging.info(e) except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() + logging.info("ctrl + c:") + epd1in54c.epdconfig.module_exit() exit() diff --git a/Raspberry Pi/python2/examples/epd_2in13_V2_test.py b/RaspberryPi&JetsonNano/python/examples/epd_2in13_V2_test.py similarity index 67% rename from Raspberry Pi/python2/examples/epd_2in13_V2_test.py rename to RaspberryPi&JetsonNano/python/examples/epd_2in13_V2_test.py index 85f5ee7..570cb75 100644 --- a/Raspberry Pi/python2/examples/epd_2in13_V2_test.py +++ b/RaspberryPi&JetsonNano/python/examples/epd_2in13_V2_test.py @@ -1,27 +1,33 @@ #!/usr/bin/python # -*- coding:utf-8 -*- import sys -sys.path.append(r'../lib') +import os +picdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'pic') +libdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'lib') +if os.path.exists(libdir): + sys.path.append(libdir) -import epd2in13_V2 -import epdconfig +import logging +from waveshare_epd import epd2in13_V2 import time from PIL import Image,ImageDraw,ImageFont import traceback +logging.basicConfig(level=logging.DEBUG) + try: - print("epd2in13_V2 Demo") + logging.info("epd2in13_V2 Demo") epd = epd2in13_V2.EPD() - print("init and Clear") + logging.info("init and Clear") epd.init(epd.FULL_UPDATE) epd.Clear(0xFF) # Drawing on the image - font15 = ImageFont.truetype('../lib/Font.ttc', 15) - font24 = ImageFont.truetype('../lib/Font.ttc', 24) + font15 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 15) + font24 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 24) - print("1.Drawing on the image...") + logging.info("1.Drawing on the image...") image = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame draw = ImageDraw.Draw(image) @@ -41,22 +47,22 @@ try: time.sleep(2) # read bmp file - print("2.read bmp file...") - image = Image.open('../pic/2in13.bmp') + logging.info("2.read bmp file...") + image = Image.open(os.path.join(picdir, '2in13.bmp')) epd.display(epd.getbuffer(image)) time.sleep(2) # read bmp file on window - print("3.read bmp file on window...") + logging.info("3.read bmp file on window...") # epd.Clear(0xFF) image1 = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') + bmp = Image.open(os.path.join(picdir, '100x100.bmp')) image1.paste(bmp, (2,2)) epd.display(epd.getbuffer(image1)) time.sleep(2) # # partial update - print("4.show time...") + logging.info("4.show time...") time_image = Image.new('1', (epd.height, epd.width), 255) time_draw = ImageDraw.Draw(time_image) @@ -73,17 +79,17 @@ try: if(num == 10): break - print("Clear...") + logging.info("Clear...") epd.init(epd.FULL_UPDATE) epd.Clear(0xFF) - print("Goto Sleep...") + logging.info("Goto Sleep...") epd.sleep() except IOError as e: - print(e) + logging.info(e) except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() + logging.info("ctrl + c:") + epd2in13_V2.epdconfig.module_exit() exit() diff --git a/Raspberry Pi/python2/examples/epd_2in13_test.py b/RaspberryPi&JetsonNano/python/examples/epd_2in13_test.py similarity index 67% rename from Raspberry Pi/python2/examples/epd_2in13_test.py rename to RaspberryPi&JetsonNano/python/examples/epd_2in13_test.py index 1081d79..f72cf6d 100644 --- a/Raspberry Pi/python2/examples/epd_2in13_test.py +++ b/RaspberryPi&JetsonNano/python/examples/epd_2in13_test.py @@ -1,27 +1,33 @@ #!/usr/bin/python # -*- coding:utf-8 -*- import sys -sys.path.append(r'../lib') +import os +picdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'pic') +libdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'lib') +if os.path.exists(libdir): + sys.path.append(libdir) -import epd2in13 -import epdconfig +import logging +from waveshare_epd import epd2in13 import time from PIL import Image,ImageDraw,ImageFont import traceback +logging.basicConfig(level=logging.DEBUG) + try: - print("epd2in13 Demo") + logging.info("epd2in13 Demo") epd = epd2in13.EPD() - print("init and Clear") + logging.info("init and Clear") epd.init(epd.lut_full_update) epd.Clear(0xFF) # Drawing on the image - font15 = ImageFont.truetype('../lib/Font.ttc', 15) - font24 = ImageFont.truetype('../lib/Font.ttc', 24) + font15 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 15) + font24 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 24) - print("1.Drawing on the image...") + logging.info("1.Drawing on the image...") image = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame draw = ImageDraw.Draw(image) @@ -41,22 +47,22 @@ try: time.sleep(2) # read bmp file - print("2.read bmp file...") - image = Image.open('../pic/2in13.bmp') + logging.info("2.read bmp file...") + image = Image.open(os.path.join(picdir, '2in13.bmp')) epd.display(epd.getbuffer(image)) time.sleep(2) # read bmp file on window - print("3.read bmp file on window...") + logging.info("3.read bmp file on window...") # epd.Clear(0xFF) image1 = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') + bmp = Image.open(os.path.join(picdir, '100x100.bmp')) image1.paste(bmp, (2,2)) epd.display(epd.getbuffer(image1)) time.sleep(2) # # partial update - print("4.show time...") + logging.info("4.show time...") epd.init(epd.lut_partial_update) epd.Clear(0xFF) @@ -71,17 +77,17 @@ try: if(num == 10): break - print("Clear...") + logging.info("Clear...") epd.init(epd.lut_full_update) epd.Clear(0xFF) - print("Goto Sleep...") + logging.info("Goto Sleep...") epd.sleep() except IOError as e: - print(e) + logging.info(e) except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() + logging.info("ctrl + c:") + epd2in13.epdconfig.module_exit() exit() diff --git a/Jetson Nano/python3/examples/epd_2in13bc_test.py b/RaspberryPi&JetsonNano/python/examples/epd_2in13bc_test.py similarity index 69% rename from Jetson Nano/python3/examples/epd_2in13bc_test.py rename to RaspberryPi&JetsonNano/python/examples/epd_2in13bc_test.py index ad24c87..d1b74de 100644 --- a/Jetson Nano/python3/examples/epd_2in13bc_test.py +++ b/RaspberryPi&JetsonNano/python/examples/epd_2in13bc_test.py @@ -1,30 +1,36 @@ #!/usr/bin/python # -*- coding:utf-8 -*- import sys -sys.path.append(r'../lib') +import os +picdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'pic') +libdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'lib') +if os.path.exists(libdir): + sys.path.append(libdir) -import epd2in13bc -import epdconfig +import logging +from waveshare_epd import epd2in13bc import time from PIL import Image,ImageDraw,ImageFont import traceback +logging.basicConfig(level=logging.DEBUG) + try: - print("epd2in13bc Demo") + logging.info("epd2in13bc Demo") epd = epd2in13bc.EPD() - print("init and Clear") + logging.info("init and Clear") epd.init() epd.Clear() time.sleep(1) # Drawing on the image - print("Drawing") - font20 = ImageFont.truetype('../lib/Font.ttc', 20) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) + logging.info("Drawing") + font20 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 20) + font18 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 18) # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") + logging.info("1.Drawing on the Horizontal image...") HBlackimage = Image.new('1', (epd.height, epd.width), 255) # 298*126 HRYimage = Image.new('1', (epd.height, epd.width), 255) # 298*126 ryimage: red or yellow image drawblack = ImageDraw.Draw(HBlackimage) @@ -44,7 +50,7 @@ try: time.sleep(2) # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") + logging.info("2.Drawing on the Vertical image...") LBlackimage = Image.new('1', (epd.width, epd.height), 255) # 126*298 LRYimage = Image.new('1', (epd.width, epd.height), 255) # 126*298 drawblack = ImageDraw.Draw(LBlackimage) @@ -62,30 +68,30 @@ try: epd.display(epd.getbuffer(LBlackimage), epd.getbuffer(LRYimage)) time.sleep(2) - print("3.read bmp file") - HBlackimage = Image.open('../pic/2in13bc-b.bmp') - HRYimage = Image.open('../pic/2in13bc-ry.bmp') + logging.info("3.read bmp file") + HBlackimage = Image.open(os.path.join(picdir, '2in13bc-b.bmp')) + HRYimage = Image.open(os.path.join(picdir, '2in13bc-ry.bmp')) epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRYimage)) time.sleep(2) - print("4.read bmp file on window") + logging.info("4.read bmp file on window") blackimage1 = Image.new('1', (epd.height, epd.width), 255) # 298*126 redimage1 = Image.new('1', (epd.height, epd.width), 255) # 298*126 - newimage = Image.open('../pic/100x100.bmp') + newimage = Image.open(os.path.join(picdir, '100x100.bmp')) blackimage1.paste(newimage, (10,10)) epd.display(epd.getbuffer(blackimage1), epd.getbuffer(redimage1)) - print("Clear...") + logging.info("Clear...") epd.init() epd.Clear() - print("Goto Sleep...") + logging.info("Goto Sleep...") epd.sleep() except IOError as e: - print(e) + logging.info(e) except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() + logging.info("ctrl + c:") + epd2in13bc.epdconfig.module_exit() exit() diff --git a/Raspberry Pi/python2/examples/epd_2in13d_test.py b/RaspberryPi&JetsonNano/python/examples/epd_2in13d_test.py similarity index 65% rename from Raspberry Pi/python2/examples/epd_2in13d_test.py rename to RaspberryPi&JetsonNano/python/examples/epd_2in13d_test.py index 883ccb3..678c94b 100644 --- a/Raspberry Pi/python2/examples/epd_2in13d_test.py +++ b/RaspberryPi&JetsonNano/python/examples/epd_2in13d_test.py @@ -1,26 +1,33 @@ #!/usr/bin/python # -*- coding:utf-8 -*- import sys -sys.path.append(r'../lib') +import os +picdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'pic') +libdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'lib') +if os.path.exists(libdir): + sys.path.append(libdir) -import epd2in13d -import epdconfig +import logging +from waveshare_epd import epd2in13d import time from PIL import Image,ImageDraw,ImageFont import traceback +#Set output log level +logging.basicConfig(level=logging.DEBUG) + try: - print("epd2in13d Demo") + logging.info("epd2in13d Demo") epd = epd2in13d.EPD() - print("init and Clear") + logging.info("init and Clear") epd.init() epd.Clear(0xFF) - font15 = ImageFont.truetype('../lib/Font.ttc', 15) - + font15 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 15) + font24 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 24) # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") + logging.info("1.Drawing on the Horizontal image...") Himage = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame draw = ImageDraw.Draw(Himage) draw.rectangle([(0,0),(50,50)],outline = 0) @@ -38,20 +45,20 @@ try: epd.display(epd.getbuffer(Himage)) time.sleep(2) - print("3.read bmp file") - Himage = Image.open('../pic/2in13d.bmp') + logging.info("3.read bmp file") + Himage = Image.open(os.path.join(picdir, '2in13d.bmp')) epd.display(epd.getbuffer(Himage)) time.sleep(2) - print("4.read bmp file on window") + logging.info("4.read bmp file on window") Himage2 = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') - Himage2.paste(bmp, (20,20)) + bmp = Image.open(os.path.join(picdir, '100x100.bmp')) + Himage2.paste(bmp, (20,0)) epd.display(epd.getbuffer(Himage2)) time.sleep(2) # # partial update - print("5.show time...") + logging.info("5.show time...") epd.init() epd.Clear(0xFF) @@ -68,16 +75,16 @@ try: if(num == 10): break - print("Clear...") + logging.info("Clear...") epd.Clear(0xFF) - print("Goto Sleep...") + logging.info("Goto Sleep...") epd.sleep() except IOError as e: - print(e) + logging.info(e) except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() + logging.info("ctrl + c:") + epd2in13d.epdconfig.module_exit() exit() diff --git a/Jetson Nano/python3/examples/epd_2in7_test.py b/RaspberryPi&JetsonNano/python/examples/epd_2in7_test.py similarity index 66% rename from Jetson Nano/python3/examples/epd_2in7_test.py rename to RaspberryPi&JetsonNano/python/examples/epd_2in7_test.py index 24a7c43..9589ad9 100644 --- a/Jetson Nano/python3/examples/epd_2in7_test.py +++ b/RaspberryPi&JetsonNano/python/examples/epd_2in7_test.py @@ -1,27 +1,33 @@ #!/usr/bin/python # -*- coding:utf-8 -*- import sys -sys.path.append(r'../lib') +import os +picdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'pic') +libdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'lib') +if os.path.exists(libdir): + sys.path.append(libdir) -import epd2in7 -import epdconfig +import logging +from waveshare_epd import epd2in7 import time from PIL import Image,ImageDraw,ImageFont import traceback +logging.basicConfig(level=logging.DEBUG) + try: - print("epd2in7 Demo") + logging.info("epd2in7 Demo") epd = epd2in7.EPD() - print("init and Clear") + logging.info("init and Clear") epd.init() epd.Clear(0xFF) - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) + font24 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 24) + font18 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 18) # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") + logging.info("1.Drawing on the Horizontal image...") Himage = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame draw = ImageDraw.Draw(Himage) draw.text((10, 0), 'hello world', font = font24, fill = 0) @@ -38,7 +44,7 @@ try: time.sleep(2) # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") + logging.info("2.Drawing on the Vertical image...") Limage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame draw = ImageDraw.Draw(Limage) draw.text((2, 0), 'hello world', font = font18, fill = 0) @@ -54,28 +60,28 @@ try: epd.display(epd.getbuffer(Limage)) time.sleep(2) - print("3.read bmp file") - Himage = Image.open('../pic/2in7.bmp') + logging.info("3.read bmp file") + Himage = Image.open(os.path.join(picdir, '2in7.bmp')) epd.display(epd.getbuffer(Himage)) time.sleep(2) - print("4.read bmp file on window") + logging.info("4.read bmp file on window") Himage2 = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') + bmp = Image.open(os.path.join(picdir, '100x100.bmp')) Himage2.paste(bmp, (50,10)) epd.display(epd.getbuffer(Himage2)) time.sleep(2) - print("Clear...") + logging.info("Clear...") epd.Clear(0xFF) - print("Goto Sleep...") + logging.info("Goto Sleep...") epd.sleep() except IOError as e: - print(e) + logging.info(e) except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() + logging.info("ctrl + c:") + epd2in7.epdconfig.module_exit() exit() diff --git a/Jetson Nano/python3/examples/epd_2in7b_test.py b/RaspberryPi&JetsonNano/python/examples/epd_2in7b_test.py similarity index 72% rename from Jetson Nano/python3/examples/epd_2in7b_test.py rename to RaspberryPi&JetsonNano/python/examples/epd_2in7b_test.py index ece7390..0dfc8a4 100644 --- a/Jetson Nano/python3/examples/epd_2in7b_test.py +++ b/RaspberryPi&JetsonNano/python/examples/epd_2in7b_test.py @@ -1,34 +1,40 @@ #!/usr/bin/python # -*- coding:utf-8 -*- import sys -sys.path.append(r'../lib') +import os +picdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'pic') +libdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'lib') +if os.path.exists(libdir): + sys.path.append(libdir) -import epd2in7b -import epdconfig +import logging +from waveshare_epd import epd2in7b import time from PIL import Image,ImageDraw,ImageFont import traceback +logging.basicConfig(level=logging.DEBUG) + try: - print("epd2in7b Demo") + logging.info("epd2in7b Demo") epd = epd2in7b.EPD() - print("init and Clear") + logging.info("init and Clear") epd.init() epd.Clear() time.sleep(1) # Drawing on the image - print("Drawing") + logging.info("Drawing") blackimage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame redimage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) + font24 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 24) + font18 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 18) # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") + logging.info("1.Drawing on the Horizontal image...") HBlackimage = Image.new('1', (epd.height, epd.width), 255) # 298*126 HRedimage = Image.new('1', (epd.height, epd.width), 255) # 298*126 @@ -49,7 +55,7 @@ try: time.sleep(2) # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") + logging.info("2.Drawing on the Vertical image...") LBlackimage = Image.new('1', (epd.width, epd.height), 255) # 126*298 LRedimage = Image.new('1', (epd.width, epd.height), 255) # 126*298 drawblack = ImageDraw.Draw(LBlackimage) @@ -69,30 +75,30 @@ try: epd.display(epd.getbuffer(LBlackimage), epd.getbuffer(LRedimage)) time.sleep(2) - print("3.read bmp file") - HBlackimage = Image.open('../pic/2in7b-b.bmp') - HRedimage = Image.open('../pic/2in7b-r.bmp') + logging.info("3.read bmp file") + HBlackimage = Image.open(os.path.join(picdir, '2in7b-b.bmp')) + HRedimage = Image.open(os.path.join(picdir, '2in7b-r.bmp')) epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRedimage)) time.sleep(2) - print("4.read bmp file on window") + logging.info("4.read bmp file on window") blackimage1 = Image.new('1', (epd.height, epd.width), 255) # 298*126 redimage1 = Image.new('1', (epd.height, epd.width), 255) # 298*126 - newimage = Image.open('../pic/100x100.bmp') + newimage = Image.open(os.path.join(picdir, '100x100.bmp')) blackimage1.paste(newimage, (50,10)) epd.display(epd.getbuffer(blackimage1), epd.getbuffer(redimage1)) - print("Clear...") + logging.info("Clear...") epd.init() epd.Clear() - print("Goto Sleep...") + logging.info("Goto Sleep...") epd.sleep() except IOError as e: - print(e) + logging.info(e) except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() + logging.info("ctrl + c:") + epd2in7b.epdconfig.module_exit() exit() diff --git a/Jetson Nano/python3/examples/epd_2in9_test.py b/RaspberryPi&JetsonNano/python/examples/epd_2in9_test.py similarity index 72% rename from Jetson Nano/python3/examples/epd_2in9_test.py rename to RaspberryPi&JetsonNano/python/examples/epd_2in9_test.py index 59c7ca1..6ac6115 100644 --- a/Jetson Nano/python3/examples/epd_2in9_test.py +++ b/RaspberryPi&JetsonNano/python/examples/epd_2in9_test.py @@ -1,27 +1,33 @@ #!/usr/bin/python # -*- coding:utf-8 -*- import sys -sys.path.append(r'../lib') +import os +picdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'pic') +libdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'lib') +if os.path.exists(libdir): + sys.path.append(libdir) -import epd2in9 -import epdconfig +import logging +from waveshare_epd import epd2in9 import time from PIL import Image,ImageDraw,ImageFont import traceback +logging.basicConfig(level=logging.DEBUG) + try: - print("epd2in9 Demo") + logging.info("epd2in9 Demo") epd = epd2in9.EPD() - print("init and Clear") + logging.info("init and Clear") epd.init(epd.lut_full_update) epd.Clear(0xFF) - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) + font24 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 24) + font18 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 18) # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") + logging.info("1.Drawing on the Horizontal image...") Himage = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame draw = ImageDraw.Draw(Himage) draw.text((10, 0), 'hello world', font = font24, fill = 0) @@ -39,7 +45,7 @@ try: time.sleep(2) # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") + logging.info("2.Drawing on the Vertical image...") Limage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame draw = ImageDraw.Draw(Limage) draw.text((2, 0), 'hello world', font = font18, fill = 0) @@ -56,20 +62,20 @@ try: epd.display(epd.getbuffer(Limage)) time.sleep(2) - print("3.read bmp file") - Himage = Image.open('../pic/2in9.bmp') + logging.info("3.read bmp file") + Himage = Image.open(os.path.join(picdir, '2in9.bmp')) epd.display(epd.getbuffer(Himage)) time.sleep(2) - print("4.read bmp file on window") + logging.info("4.read bmp file on window") Himage2 = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') + bmp = Image.open(os.path.join(picdir, '100x100.bmp')) Himage2.paste(bmp, (50,10)) epd.display(epd.getbuffer(Himage2)) time.sleep(2) # partial update - print("5.show time") + logging.info("5.show time") epd.init(epd.lut_partial_update) epd.Clear(0xFF) time_image = Image.new('1', (epd.height, epd.width), 255) @@ -86,17 +92,17 @@ try: if(num == 10): break - print("Clear...") + logging.info("Clear...") epd.init(epd.lut_full_update) epd.Clear(0xFF) - print("Goto Sleep...") + logging.info("Goto Sleep...") epd.sleep() except IOError as e: - print(e) + logging.info(e) except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() + logging.info("ctrl + c:") + epd2in9.epdconfig.module_exit() exit() diff --git a/Jetson Nano/python3/examples/epd_2in9bc_test.py b/RaspberryPi&JetsonNano/python/examples/epd_2in9bc_test.py similarity index 70% rename from Jetson Nano/python3/examples/epd_2in9bc_test.py rename to RaspberryPi&JetsonNano/python/examples/epd_2in9bc_test.py index b16809d..1060bbf 100644 --- a/Jetson Nano/python3/examples/epd_2in9bc_test.py +++ b/RaspberryPi&JetsonNano/python/examples/epd_2in9bc_test.py @@ -1,30 +1,36 @@ #!/usr/bin/python # -*- coding:utf-8 -*- import sys -sys.path.append(r'../lib') +import os +picdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'pic') +libdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'lib') +if os.path.exists(libdir): + sys.path.append(libdir) -import epd2in9bc -import epdconfig +import logging +from waveshare_epd import epd2in9bc import time from PIL import Image,ImageDraw,ImageFont import traceback +logging.basicConfig(level=logging.DEBUG) + try: - print("epd2in9bc Demo") + logging.info("epd2in9bc Demo") epd = epd2in9bc.EPD() - print("init and Clear") + logging.info("init and Clear") epd.init() epd.Clear() time.sleep(1) # Drawing on the image - print("Drawing") - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) + logging.info("Drawing") + font24 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 24) + font18 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 18) # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") + logging.info("1.Drawing on the Horizontal image...") HBlackimage = Image.new('1', (epd.height, epd.width), 255) # 298*126 HRYimage = Image.new('1', (epd.height, epd.width), 255) # 298*126 ryimage: red or yellow image drawblack = ImageDraw.Draw(HBlackimage) @@ -44,7 +50,7 @@ try: time.sleep(2) # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") + logging.info("2.Drawing on the Vertical image...") LBlackimage = Image.new('1', (epd.width, epd.height), 255) # 126*298 LRYimage = Image.new('1', (epd.width, epd.height), 255) # 126*298 drawblack = ImageDraw.Draw(LBlackimage) @@ -64,30 +70,30 @@ try: epd.display(epd.getbuffer(LBlackimage), epd.getbuffer(LRYimage)) time.sleep(2) - print("3.read bmp file") - HBlackimage = Image.open('../pic/2in9bc-b.bmp') - HRYimage = Image.open('../pic/2in9bc-ry.bmp') + logging.info("3.read bmp file") + HBlackimage = Image.open(os.path.join(picdir, '2in9bc-b.bmp')) + HRYimage = Image.open(os.path.join(picdir, '2in9bc-ry.bmp')) epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRYimage)) time.sleep(2) - print("4.read bmp file on window") + logging.info("4.read bmp file on window") blackimage1 = Image.new('1', (epd.height, epd.width), 255) # 298*126 redimage1 = Image.new('1', (epd.height, epd.width), 255) # 298*126 - newimage = Image.open('../pic/100x100.bmp') + newimage = Image.open(os.path.join(picdir, '100x100.bmp')) blackimage1.paste(newimage, (50,10)) epd.display(epd.getbuffer(blackimage1), epd.getbuffer(redimage1)) - print("Clear...") + logging.info("Clear...") epd.init() epd.Clear() - print("Goto Sleep...") + logging.info("Goto Sleep...") epd.sleep() except IOError as e: - print(e) + logging.info(e) except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() + logging.info("ctrl + c:") + epd2in9bc.epdconfig.module_exit() exit() diff --git a/Raspberry Pi/python2/examples/epd_2in9d_test.py b/RaspberryPi&JetsonNano/python/examples/epd_2in9d_test.py similarity index 70% rename from Raspberry Pi/python2/examples/epd_2in9d_test.py rename to RaspberryPi&JetsonNano/python/examples/epd_2in9d_test.py index 34f5f71..5550032 100644 --- a/Raspberry Pi/python2/examples/epd_2in9d_test.py +++ b/RaspberryPi&JetsonNano/python/examples/epd_2in9d_test.py @@ -1,27 +1,33 @@ #!/usr/bin/python # -*- coding:utf-8 -*- import sys -sys.path.append(r'../lib') +import os +picdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'pic') +libdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'lib') +if os.path.exists(libdir): + sys.path.append(libdir) -import epd2in9d -import epdconfig +import logging +from waveshare_epd import epd2in9d import time from PIL import Image,ImageDraw,ImageFont import traceback +logging.basicConfig(level=logging.DEBUG) + try: - print("epd2in9d Demo") + logging.info("epd2in9d Demo") epd = epd2in9d.EPD() - print("init and Clear") + logging.info("init and Clear") epd.init() epd.Clear(0xFF) - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) + font24 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 24) + font18 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 18) # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") + logging.info("1.Drawing on the Horizontal image...") Himage = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame draw = ImageDraw.Draw(Himage) draw.text((10, 0), 'hello world', font = font24, fill = 0) @@ -39,7 +45,7 @@ try: time.sleep(2) # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") + logging.info("2.Drawing on the Vertical image...") Limage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame draw = ImageDraw.Draw(Limage) draw.text((2, 0), 'hello world', font = font18, fill = 0) @@ -56,20 +62,20 @@ try: epd.display(epd.getbuffer(Limage)) time.sleep(2) - print("3.read bmp file") - Himage = Image.open('../pic/2in9d.bmp') + logging.info("3.read bmp file") + Himage = Image.open(os.path.join(picdir, '2in9d.bmp')) epd.display(epd.getbuffer(Himage)) time.sleep(2) - print("4.read bmp file on window") + logging.info("4.read bmp file on window") Himage2 = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') + bmp = Image.open(os.path.join(picdir, '100x100.bmp')) Himage2.paste(bmp, (50,10)) epd.display(epd.getbuffer(Himage2)) time.sleep(2) # # partial update - print("5.show time...") + logging.info("5.show time...") epd.init() epd.Clear(0xFF) @@ -81,21 +87,21 @@ try: time_draw.text((10, 10), time.strftime('%H:%M:%S'), font = font24, fill = 0) newimage = time_image.crop([10, 10, 120, 50]) time_image.paste(newimage, (10,10)) - epd.display(epd.getbuffer(time_image)) + epd.DisplayPartial(epd.getbuffer(time_image)) num = num + 1 if(num == 10): break - print("Clear...") + logging.info("Clear...") epd.Clear(0xFF) - print("Goto Sleep...") + logging.info("Goto Sleep...") epd.sleep() except IOError as e: - print(e) + logging.info(e) except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() + logging.info("ctrl + c:") + epd2in9d.epdconfig.module_exit() exit() diff --git a/Raspberry Pi/python2/examples/epd_4in2_test.py b/RaspberryPi&JetsonNano/python/examples/epd_4in2_test.py similarity index 68% rename from Raspberry Pi/python2/examples/epd_4in2_test.py rename to RaspberryPi&JetsonNano/python/examples/epd_4in2_test.py index 6343f58..bc3bd92 100644 --- a/Raspberry Pi/python2/examples/epd_4in2_test.py +++ b/RaspberryPi&JetsonNano/python/examples/epd_4in2_test.py @@ -1,27 +1,33 @@ #!/usr/bin/python # -*- coding:utf-8 -*- import sys -sys.path.append(r'../lib') +import os +picdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'pic') +libdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'lib') +if os.path.exists(libdir): + sys.path.append(libdir) -import epd4in2 -import epdconfig +import logging +from waveshare_epd import epd4in2 import time from PIL import Image,ImageDraw,ImageFont import traceback +logging.basicConfig(level=logging.DEBUG) + try: - print("epd4in2 Demo") + logging.info("epd4in2 Demo") epd = epd4in2.EPD() - print("init and Clear") + logging.info("init and Clear") epd.init() epd.Clear() - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) + font24 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 24) + font18 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 18) # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") + logging.info("1.Drawing on the Horizontal image...") Himage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame draw = ImageDraw.Draw(Himage) draw.text((10, 0), 'hello world', font = font24, fill = 0) @@ -39,7 +45,7 @@ try: time.sleep(2) # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") + logging.info("2.Drawing on the Vertical image...") Limage = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame draw = ImageDraw.Draw(Limage) draw.text((2, 0), 'hello world', font = font18, fill = 0) @@ -56,29 +62,29 @@ try: epd.display(epd.getbuffer(Limage)) time.sleep(2) - print("3.read bmp file") - Himage = Image.open('../pic/4in2.bmp') + logging.info("3.read bmp file") + Himage = Image.open(os.path.join(picdir, '4in2.bmp')) epd.display(epd.getbuffer(Himage)) time.sleep(2) - print("4.read bmp file on window") + logging.info("4.read bmp file on window") Himage2 = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') + bmp = Image.open(os.path.join(picdir, '100x100.bmp')) Himage2.paste(bmp, (50,10)) epd.display(epd.getbuffer(Himage2)) time.sleep(2) - print("Clear...") + logging.info("Clear...") epd.init() epd.Clear() - print("Goto Sleep...") + logging.info("Goto Sleep...") epd.sleep() except IOError as e: - print(e) + logging.info(e) except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() + logging.info("ctrl + c:") + epd4in2.epdconfig.module_exit() exit() diff --git a/Raspberry Pi/python2/examples/epd_4in2bc_test.py b/RaspberryPi&JetsonNano/python/examples/epd_4in2bc_test.py similarity index 68% rename from Raspberry Pi/python2/examples/epd_4in2bc_test.py rename to RaspberryPi&JetsonNano/python/examples/epd_4in2bc_test.py index ad1abda..2e45ba3 100644 --- a/Raspberry Pi/python2/examples/epd_4in2bc_test.py +++ b/RaspberryPi&JetsonNano/python/examples/epd_4in2bc_test.py @@ -1,30 +1,36 @@ #!/usr/bin/python # -*- coding:utf-8 -*- import sys -sys.path.append(r'../lib') +import os +picdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'pic') +libdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'lib') +if os.path.exists(libdir): + sys.path.append(libdir) -import epd4in2bc -import epdconfig +import logging +from waveshare_epd import epd4in2bc import time from PIL import Image,ImageDraw,ImageFont import traceback +logging.basicConfig(level=logging.DEBUG) + try: - print("epd4in2bc Demo") + logging.info("epd4in2bc Demo") epd = epd4in2bc.EPD() - print("init and Clear") + logging.info("init and Clear") epd.init() epd.Clear() time.sleep(1) # Drawing on the image - print("Drawing") - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) + logging.info("Drawing") + font24 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 24) + font18 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 18) # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") + logging.info("1.Drawing on the Horizontal image...") HBlackimage = Image.new('1', (epd.width, epd.height), 255) # 298*126 HRYimage = Image.new('1', (epd.width, epd.height), 255) # 298*126 ryimage: red or yellow image drawblack = ImageDraw.Draw(HBlackimage) @@ -44,7 +50,7 @@ try: time.sleep(2) # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") + logging.info("2.Drawing on the Vertical image...") LBlackimage = Image.new('1', (epd.height, epd.width), 255) # 126*298 LRYimage = Image.new('1', (epd.height, epd.width), 255) # 126*298 drawblack = ImageDraw.Draw(LBlackimage) @@ -64,32 +70,32 @@ try: epd.display(epd.getbuffer(LBlackimage), epd.getbuffer(LRYimage)) time.sleep(2) - print("3.read bmp file") - HBlackimage = Image.open('../pic/4in2b-b.bmp') - HRYimage = Image.open('../pic/4in2b-r.bmp') - # HBlackimage = Image.open('../pic/4in2c-b.bmp') - # HRYimage = Image.open('../pic/4in2c-y.bmp') + logging.info("3.read bmp file") + HBlackimage = Image.open(os.path.join(picdir, '4in2b-b.bmp')) + HRYimage = Image.open(os.path.join(picdir, '4in2b-r.bmp')) + # HBlackimage = Image.open(os.path.join(picdir, '4in2c-b.bmp')) + # HRYimage = Image.open(os.path.join(picdir, '4in2c-y.bmp')) epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRYimage)) time.sleep(2) - print("4.read bmp file on window") + logging.info("4.read bmp file on window") blackimage1 = Image.new('1', (epd.width, epd.height), 255) # 298*126 redimage1 = Image.new('1', (epd.width, epd.height), 255) # 298*126 - newimage = Image.open('../pic/100x100.bmp') + newimage = Image.open(os.path.join(picdir, '100x100.bmp')) blackimage1.paste(newimage, (50,10)) epd.display(epd.getbuffer(blackimage1), epd.getbuffer(redimage1)) - print("Clear...") + logging.info("Clear...") epd.init() epd.Clear() - print("Goto Sleep...") + logging.info("Goto Sleep...") epd.sleep() except IOError as e: - print(e) + logging.info(e) except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() + logging.info("ctrl + c:") + epd4in2bc.epdconfig.module_exit() exit() diff --git a/Jetson Nano/python2/examples/epd_5in83_test.py b/RaspberryPi&JetsonNano/python/examples/epd_5in83_test.py similarity index 68% rename from Jetson Nano/python2/examples/epd_5in83_test.py rename to RaspberryPi&JetsonNano/python/examples/epd_5in83_test.py index cb7858c..ef69892 100644 --- a/Jetson Nano/python2/examples/epd_5in83_test.py +++ b/RaspberryPi&JetsonNano/python/examples/epd_5in83_test.py @@ -1,27 +1,33 @@ #!/usr/bin/python # -*- coding:utf-8 -*- import sys -sys.path.append(r'../lib') +import os +picdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'pic') +libdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'lib') +if os.path.exists(libdir): + sys.path.append(libdir) -import epd5in83 -import epdconfig +import logging +from waveshare_epd import epd5in83 import time from PIL import Image,ImageDraw,ImageFont import traceback +logging.basicConfig(level=logging.DEBUG) + try: - print("epd5in83 Demo") + logging.info("epd5in83 Demo") epd = epd5in83.EPD() - print("init and Clear") + logging.info("init and Clear") epd.init() epd.Clear() - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) + font24 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 24) + font18 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 18) # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") + logging.info("1.Drawing on the Horizontal image...") Himage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame draw = ImageDraw.Draw(Himage) draw.text((10, 0), 'hello world', font = font24, fill = 0) @@ -39,7 +45,7 @@ try: time.sleep(2) # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") + logging.info("2.Drawing on the Vertical image...") Limage = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame draw = ImageDraw.Draw(Limage) draw.text((2, 0), 'hello world', font = font18, fill = 0) @@ -56,29 +62,29 @@ try: epd.display(epd.getbuffer(Limage)) time.sleep(2) - print("3.read bmp file") - Himage = Image.open('../pic/5in83.bmp') + logging.info("3.read bmp file") + Himage = Image.open(os.path.join(picdir, '5in83.bmp')) epd.display(epd.getbuffer(Himage)) time.sleep(2) - print("4.read bmp file on window") + logging.info("4.read bmp file on window") Himage2 = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') + bmp = Image.open(os.path.join(picdir, '100x100.bmp')) Himage2.paste(bmp, (50,10)) epd.display(epd.getbuffer(Himage2)) time.sleep(2) - print("Clear...") + logging.info("Clear...") epd.init() epd.Clear() - print("Goto Sleep...") + logging.info("Goto Sleep...") epd.sleep() except IOError as e: - print(e) + logging.info(e) except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() + logging.info("ctrl + c:") + epd5in83.epdconfig.module_exit() exit() diff --git a/Jetson Nano/python2/examples/epd_5in83bc_test.py b/RaspberryPi&JetsonNano/python/examples/epd_5in83bc_test.py similarity index 70% rename from Jetson Nano/python2/examples/epd_5in83bc_test.py rename to RaspberryPi&JetsonNano/python/examples/epd_5in83bc_test.py index b5e3b39..5f12bfc 100644 --- a/Jetson Nano/python2/examples/epd_5in83bc_test.py +++ b/RaspberryPi&JetsonNano/python/examples/epd_5in83bc_test.py @@ -1,30 +1,36 @@ #!/usr/bin/python # -*- coding:utf-8 -*- import sys -sys.path.append(r'../lib') +import os +picdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'pic') +libdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'lib') +if os.path.exists(libdir): + sys.path.append(libdir) -import epd5in83bc -import epdconfig +import logging +from waveshare_epd import epd5in83bc import time from PIL import Image,ImageDraw,ImageFont import traceback +logging.basicConfig(level=logging.DEBUG) + try: - print("epd5in83bc Demo") + logging.info("epd5in83bc Demo") epd = epd5in83bc.EPD() - print("init and Clear") + logging.info("init and Clear") epd.init() epd.Clear() time.sleep(1) # Drawing on the image - print("Drawing") - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) + logging.info("Drawing") + font24 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 24) + font18 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 18) # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") + logging.info("1.Drawing on the Horizontal image...") HBlackimage = Image.new('1', (epd.width, epd.height), 255) # 298*126 HRYimage = Image.new('1', (epd.width, epd.height), 255) # 298*126 ryimage: red or yellow image drawblack = ImageDraw.Draw(HBlackimage) @@ -44,7 +50,7 @@ try: time.sleep(2) # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") + logging.info("2.Drawing on the Vertical image...") LBlackimage = Image.new('1', (epd.height, epd.width), 255) # 126*298 LRYimage = Image.new('1', (epd.height, epd.width), 255) # 126*298 drawblack = ImageDraw.Draw(LBlackimage) @@ -64,30 +70,30 @@ try: epd.display(epd.getbuffer(LBlackimage), epd.getbuffer(LRYimage)) time.sleep(2) - print("3.read bmp file") - HBlackimage = Image.open('../pic/5in83bc-b.bmp') - HRYimage = Image.open('../pic/5in83bc-ry.bmp') + logging.info("3.read bmp file") + HBlackimage = Image.open(os.path.join(picdir, '5in83bc-b.bmp')) + HRYimage = Image.open(os.path.join(picdir, '5in83bc-ry.bmp')) epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRYimage)) time.sleep(2) - print("4.read bmp file on window") + logging.info("4.read bmp file on window") blackimage1 = Image.new('1', (epd.width, epd.height), 255) # 298*126 redimage1 = Image.new('1', (epd.width, epd.height), 255) # 298*126 - newimage = Image.open('../pic/100x100.bmp') + newimage = Image.open(os.path.join(picdir, '100x100.bmp')) blackimage1.paste(newimage, (50,10)) epd.display(epd.getbuffer(blackimage1), epd.getbuffer(redimage1)) - print("Clear...") + logging.info("Clear...") epd.init() epd.Clear() - print("Goto Sleep...") + logging.info("Goto Sleep...") epd.sleep() except IOError as e: - print(e) + logging.info(e) except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() + logging.info("ctrl + c:") + epd5in83bc.epdconfig.module_exit() exit() diff --git a/Raspberry Pi/python2/examples/epd_7in5_test.py b/RaspberryPi&JetsonNano/python/examples/epd_7in5_test.py similarity index 68% rename from Raspberry Pi/python2/examples/epd_7in5_test.py rename to RaspberryPi&JetsonNano/python/examples/epd_7in5_test.py index eaf11ec..10dc1f2 100644 --- a/Raspberry Pi/python2/examples/epd_7in5_test.py +++ b/RaspberryPi&JetsonNano/python/examples/epd_7in5_test.py @@ -1,27 +1,33 @@ #!/usr/bin/python # -*- coding:utf-8 -*- import sys -sys.path.append(r'../lib') +import os +picdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'pic') +libdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'lib') +if os.path.exists(libdir): + sys.path.append(libdir) -import epd7in5 -import epdconfig +import logging +from waveshare_epd import epd7in5 import time from PIL import Image,ImageDraw,ImageFont import traceback +logging.basicConfig(level=logging.DEBUG) + try: - print("epd7in5 Demo") + logging.info("epd7in5 Demo") epd = epd7in5.EPD() - print("init and Clear") + logging.info("init and Clear") epd.init() epd.Clear() - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) + font24 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 24) + font18 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 18) # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") + logging.info("1.Drawing on the Horizontal image...") Himage = Image.new('1', (epd.width, epd.height), 255) # 255: clear the frame draw = ImageDraw.Draw(Himage) draw.text((10, 0), 'hello world', font = font24, fill = 0) @@ -39,7 +45,7 @@ try: time.sleep(2) # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") + logging.info("2.Drawing on the Vertical image...") Limage = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame draw = ImageDraw.Draw(Limage) draw.text((2, 0), 'hello world', font = font18, fill = 0) @@ -56,29 +62,29 @@ try: epd.display(epd.getbuffer(Limage)) time.sleep(2) - print("3.read bmp file") - Himage = Image.open('../pic/7in5.bmp') + logging.info("3.read bmp file") + Himage = Image.open(os.path.join(picdir, '7in5.bmp')) epd.display(epd.getbuffer(Himage)) time.sleep(2) - print("4.read bmp file on window") + logging.info("4.read bmp file on window") Himage2 = Image.new('1', (epd.height, epd.width), 255) # 255: clear the frame - bmp = Image.open('../pic/100x100.bmp') + bmp = Image.open(os.path.join(picdir, '100x100.bmp')) Himage2.paste(bmp, (50,10)) epd.display(epd.getbuffer(Himage2)) time.sleep(2) - print("Clear...") + logging.info("Clear...") epd.init() epd.Clear() - print("Goto Sleep...") + logging.info("Goto Sleep...") epd.sleep() except IOError as e: - print(e) + logging.info(e) except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() + logging.info("ctrl + c:") + epd7in5.epdconfig.module_exit() exit() diff --git a/Jetson Nano/python2/examples/epd_7in5bc_test.py b/RaspberryPi&JetsonNano/python/examples/epd_7in5bc_test.py similarity index 68% rename from Jetson Nano/python2/examples/epd_7in5bc_test.py rename to RaspberryPi&JetsonNano/python/examples/epd_7in5bc_test.py index 82153b4..bf7df7a 100644 --- a/Jetson Nano/python2/examples/epd_7in5bc_test.py +++ b/RaspberryPi&JetsonNano/python/examples/epd_7in5bc_test.py @@ -1,30 +1,36 @@ #!/usr/bin/python # -*- coding:utf-8 -*- import sys -sys.path.append(r'../lib') +import os +picdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'pic') +libdir = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), 'lib') +if os.path.exists(libdir): + sys.path.append(libdir) -import epd7in5bc -import epdconfig +import logging +from waveshare_epd import epd7in5bc import time from PIL import Image,ImageDraw,ImageFont import traceback +logging.basicConfig(level=logging.DEBUG) + try: - print("epd7in5bc Demo") + logging.info("epd7in5bc Demo") epd = epd7in5bc.EPD() - print("init and Clear") + logging.info("init and Clear") epd.init() epd.Clear() time.sleep(1) # Drawing on the image - print("Drawing") - font24 = ImageFont.truetype('../lib/Font.ttc', 24) - font18 = ImageFont.truetype('../lib/Font.ttc', 18) + logging.info("Drawing") + font24 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 24) + font18 = ImageFont.truetype(os.path.join(picdir, 'Font.ttc'), 18) # Drawing on the Horizontal image - print("1.Drawing on the Horizontal image...") + logging.info("1.Drawing on the Horizontal image...") HBlackimage = Image.new('1', (epd.width, epd.height), 255) # 298*126 HRYimage = Image.new('1', (epd.width, epd.height), 255) # 298*126 ryimage: red or yellow image drawblack = ImageDraw.Draw(HBlackimage) @@ -44,7 +50,7 @@ try: time.sleep(2) # Drawing on the Vertical image - print("2.Drawing on the Vertical image...") + logging.info("2.Drawing on the Vertical image...") LBlackimage = Image.new('1', (epd.height, epd.width), 255) # 126*298 LRYimage = Image.new('1', (epd.height, epd.width), 255) # 126*298 drawblack = ImageDraw.Draw(LBlackimage) @@ -64,32 +70,32 @@ try: epd.display(epd.getbuffer(LBlackimage), epd.getbuffer(LRYimage)) time.sleep(2) - print("3.read bmp file") - HBlackimage = Image.open('../pic/7in5b-b.bmp') - HRYimage = Image.open('../pic/7in5b-r.bmp') - # HBlackimage = Image.open('../pic/7in5c-b.bmp') - # HRYimage = Image.open('../pic/7in5c-r.bmp') + logging.info("3.read bmp file") + HBlackimage = Image.open(os.path.join(picdir, '7in5b-b.bmp')) + HRYimage = Image.open(os.path.join(picdir, '7in5b-r.bmp')) + # HBlackimage = Image.open(os.path.join(picdir, '7in5c-b.bmp')) + # HRYimage = Image.open(os.path.join(picdir, '7in5c-r.bmp')) epd.display(epd.getbuffer(HBlackimage), epd.getbuffer(HRYimage)) time.sleep(2) - print("4.read bmp file on window") + logging.info("4.read bmp file on window") blackimage1 = Image.new('1', (epd.width, epd.height), 255) # 298*126 redimage1 = Image.new('1', (epd.width, epd.height), 255) # 298*126 - newimage = Image.open('../pic/100x100.bmp') + newimage = Image.open(os.path.join(picdir, '100x100.bmp')) blackimage1.paste(newimage, (50,10)) epd.display(epd.getbuffer(blackimage1), epd.getbuffer(redimage1)) - print("Clear...") + logging.info("Clear...") epd.init() epd.Clear() - print("Goto Sleep...") + logging.info("Goto Sleep...") epd.sleep() except IOError as e: - print(e) + logging.info(e) except KeyboardInterrupt: - print("ctrl + c:") - epdconfig.module_exit() + logging.info("ctrl + c:") + epd7in5bc.epdconfig.module_exit() exit() diff --git a/RaspberryPi&JetsonNano/python/lib/waveshare_epd/__init__.py b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/Jetson Nano/python3/lib/epd1in54.py b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd1in54.py similarity index 92% rename from Jetson Nano/python3/lib/epd1in54.py rename to RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd1in54.py index 54a21e4..afed50e 100644 --- a/Jetson Nano/python3/lib/epd1in54.py +++ b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd1in54.py @@ -6,7 +6,7 @@ # *---------------- # * | This version: V3.1 # * | Date : 2019-06-20 -# # | Info : python3 demo +# # | Info : python demo # ----------------------------------------------------------------------------- # V3.1(2019-06-18): # 2.remove commands define: @@ -59,11 +59,11 @@ # drawing ...... # ... # epd.display(getbuffer(image)) -# ******************************************************************************// +# ******************************************************************************/ # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documnetation files (the "Software"), to deal # in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and//or sell +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell # copies of the Software, and to permit persons to whom the Software is # furished to do so, subject to the following conditions: # @@ -79,7 +79,8 @@ # THE SOFTWARE. # -import epdconfig +import logging +from . import epdconfig # Display resolution EPD_WIDTH = 200 @@ -130,10 +131,10 @@ class EPD: epdconfig.digital_write(self.cs_pin, 1) def ReadBusy(self): - print("e-Paper busy") + logging.debug("e-Paper busy") while(epdconfig.digital_read(self.busy_pin) == 1): # 0: idle, 1: busy epdconfig.delay_ms(100) - print("e-Paper busy release") + logging.debug("e-Paper busy release") def TurnOnDisplay(self): self.send_command(0x22) # DISPLAY_UPDATE_CONTROL_2 @@ -200,25 +201,25 @@ class EPD: return 0 def getbuffer(self, image): - buf = [0xFF] * ((self.width // 8) * self.height) + buf = [0xFF] * (int(self.width / 8) * self.height) image_monocolor = image.convert('1') imwidth, imheight = image_monocolor.size pixels = image_monocolor.load() if(imwidth == self.width and imheight == self.height): - print("Horizontal") + logging.debug("Horizontal") 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] == 0: - buf[(x + y * self.width) // 8] &= ~(0x80 >> (x % 8)) + buf[int((x + y * self.width) / 8)] &= ~(0x80 >> (x % 8)) elif(imwidth == self.height and imheight == self.width): - print("Vertical") + logging.debug("Vertical") for y in range(imheight): for x in range(imwidth): newx = y newy = self.height - x - 1 if pixels[x, y] == 0: - buf[(newx + newy*self.width) // 8] &= ~(0x80 >> (y % 8)) + buf[int((newx + newy*self.width) / 8)] &= ~(0x80 >> (y % 8)) return buf def display(self, image): @@ -229,19 +230,22 @@ class EPD: for j in range(0, self.height): self.SetCursor(0, j) self.send_command(0x24) - for i in range(0, self.width // 8): - self.send_data(image[i + j * (self.width // 8)]) + for i in range(0, int(self.width / 8)): + self.send_data(image[i + j * int(self.width / 8)]) self.TurnOnDisplay() def Clear(self, color): # self.SetWindow(0, 0, self.width - 1, self.height - 1) # send the color data self.SetWindow(0, 0, self.width, self.height) + # epdconfig.digital_write(self.dc_pin, 1) + # epdconfig.digital_write(self.cs_pin, 0) for j in range(0, self.height): self.SetCursor(0, j) self.send_command(0x24) - for i in range(0, self.width // 8): + for i in range(0, int(self.width / 8)): self.send_data(color) + # epdconfig.digital_write(self.cs_pin, 1) self.TurnOnDisplay() def sleep(self): diff --git a/Jetson Nano/python2/lib/epd1in54_V2.py b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd1in54_V2.py similarity index 85% rename from Jetson Nano/python2/lib/epd1in54_V2.py rename to RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd1in54_V2.py index a940541..8c8f09a 100644 --- a/Jetson Nano/python2/lib/epd1in54_V2.py +++ b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd1in54_V2.py @@ -1,13 +1,13 @@ -# /***************************************************************************** +# ***************************************************************************** # * | File : epd1in54_V2.py # * | Author : Waveshare team # * | Function : Electronic paper driver # * | Info : # *---------------- # * | This version: V1 -# * | Date : 2019-06-18 -# # | Info : python2 demo -# ******************************************************************************/ +# * | Date : 2019-06-20 +# # | Info : python demo +# ----------------------------------------------------------------------------- # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documnetation files (the "Software"), to deal # in the Software without restriction, including without limitation the rights @@ -27,7 +27,8 @@ # THE SOFTWARE. # -import epdconfig +import logging +from . import epdconfig # Display resolution EPD_WIDTH = 200 @@ -64,10 +65,10 @@ class EPD: epdconfig.digital_write(self.cs_pin, 1) def ReadBusy(self): - print("e-Paper busy") + logging.debug("e-Paper busy") while(epdconfig.digital_read(self.busy_pin) == 1): epdconfig.delay_ms(100) - print("e-Paper busy release") + logging.debug("e-Paper busy release") def TurnOnDisplay(self): self.send_command(0x22) # DISPLAY_UPDATE_CONTROL_2 @@ -133,30 +134,30 @@ class EPD: def Clear(self, color): self.send_command(0x24) for j in range(0, self.height): - for i in range(0, self.width / 8): + for i in range(0, int(self.width / 8)): self.send_data(color) self.TurnOnDisplay() def getbuffer(self, image): - buf = [0xFF] * ((self.width/8) * self.height) + buf = [0xFF] * (int(self.width/8) * self.height) image_monocolor = image.convert('1') imwidth, imheight = image_monocolor.size pixels = image_monocolor.load() if(imwidth == self.width and imheight == self.height): - print("Horizontal") + logging.debug("Horizontal") 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] == 0: - buf[(x + y * self.width) / 8] &= ~(0x80 >> (x % 8)) + buf[int((x + y * self.width) / 8)] &= ~(0x80 >> (x % 8)) elif(imwidth == self.height and imheight == self.width): - print("Vertical") + logging.debug("Vertical") for y in range(imheight): for x in range(imwidth): newx = y newy = self.height - x - 1 if pixels[x, y] == 0: - buf[(newx + newy*self.width) / 8] &= ~(0x80 >> (y % 8)) + buf[int((newx + newy*self.width) / 8)] &= ~(0x80 >> (y % 8)) return buf def display(self, image): @@ -165,8 +166,8 @@ class EPD: self.send_command(0x24) for j in range(0, self.height): - for i in range(0, self.width / 8): - self.send_data(image[i + j * (self.width / 8)]) + for i in range(0, int(self.width / 8)): + self.send_data(image[i + j * int(self.width / 8)]) self.TurnOnDisplay() def displayPartBaseImage(self, image): @@ -175,13 +176,13 @@ class EPD: self.send_command(0x24) for j in range(0, self.height): - for i in range(0, self.width / 8): - self.send_data(image[i + j * (self.width / 8)]) + for i in range(0, int(self.width / 8)): + self.send_data(image[i + j * int(self.width / 8)]) self.send_command(0x26) for j in range(0, self.height): for i in range(0, self.width / 8): - self.send_data(image[i + j * (self.width / 8)]) + self.send_data(image[i + j * int(self.width / 8)]) self.TurnOnDisplayPart() @@ -191,8 +192,8 @@ class EPD: self.send_command(0x24) for j in range(0, self.height): - for i in range(0, self.width / 8): - self.send_data(image[i + j * (self.width / 8)]) + for i in range(0, int(self.width / 8)): + self.send_data(image[i + j * int(self.width / 8)]) self.TurnOnDisplayPart() diff --git a/Jetson Nano/python3/lib/epd1in54b.py b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd1in54b.py similarity index 93% rename from Jetson Nano/python3/lib/epd1in54b.py rename to RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd1in54b.py index e35014c..7b241c9 100644 --- a/Jetson Nano/python3/lib/epd1in54b.py +++ b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd1in54b.py @@ -6,12 +6,12 @@ # *---------------- # * | This version: V4.0 # * | Date : 2019-06-20 -# # | Info : python3 demo +# # | Info : python demo # ----------------------------------------------------------------------------- # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documnetation files (the "Software"), to deal # in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and//or sell +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell # copies of the Software, and to permit persons to whom the Software is # furished to do so, subject to the following conditions: # @@ -27,7 +27,8 @@ # THE SOFTWARE. # -import epdconfig +import logging +from . import epdconfig # Display resolution EPD_WIDTH = 200 @@ -73,10 +74,10 @@ class EPD: epdconfig.digital_write(self.cs_pin, 1) def ReadBusy(self): - print("e-Paper busy") + logging.debug("e-Paper busy") while(epdconfig.digital_read(self.busy_pin) == 0): epdconfig.delay_ms(100) - print("e-Paper busy release") + logging.debug("e-Paper busy release") def set_lut_bw(self): self.send_command(0x20) # vcom @@ -143,7 +144,7 @@ class EPD: return 0 def getbuffer(self, image): - buf = [0xFF] * (self.width * self.height // 8) + buf = [0xFF] * int(self.width * self.height / 8) # Set buffer to value of Python Imaging Library image. # Image must be in mode 1. image_monocolor = image.convert('1') @@ -157,14 +158,14 @@ class EPD: for x in range(self.width): # Set the bits for the column of pixels at the current position. if pixels[x, y] == 0: - buf[(x + y * self.width) // 8] &= ~(0x80 >> (x % 8)) + buf[int((x + y * self.width) / 8)] &= ~(0x80 >> (x % 8)) return buf def display(self, blackimage, redimage): # send black data if (blackimage != None): self.send_command(0x10) # DATA_START_TRANSMISSION_1 - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): temp = 0x00 for bit in range(0, 4): if (blackimage[i] & (0x80 >> bit) != 0): @@ -179,7 +180,7 @@ class EPD: # send red data if (redimage != None): self.send_command(0x13) # DATA_START_TRANSMISSION_2 - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(redimage[i]) self.send_command(0x12) # DISPLAY_REFRESH @@ -187,12 +188,12 @@ class EPD: def Clear(self): self.send_command(0x10) # DATA_START_TRANSMISSION_1 - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(0xFF) self.send_data(0xFF) self.send_command(0x13) # DATA_START_TRANSMISSION_2 - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(0xFF) self.send_command(0x12) # DISPLAY_REFRESH diff --git a/Raspberry Pi/python3/lib/epd1in54c.py b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd1in54c.py similarity index 86% rename from Raspberry Pi/python3/lib/epd1in54c.py rename to RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd1in54c.py index 2880b1c..11f9c6f 100644 --- a/Raspberry Pi/python3/lib/epd1in54c.py +++ b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd1in54c.py @@ -6,12 +6,12 @@ # *---------------- # * | This version: V4.0 # * | Date : 2019-06-20 -# # | Info : python3 demo +# # | Info : python demo # ----------------------------------------------------------------------------- # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documnetation files (the "Software"), to deal # in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and//or sell +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell # copies of the Software, and to permit persons to whom the Software is # furished to do so, subject to the following conditions: # @@ -26,7 +26,8 @@ # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN # THE SOFTWARE. # -import epdconfig +import logging +from . import epdconfig # Display resolution EPD_WIDTH = 152 @@ -63,10 +64,10 @@ class EPD: epdconfig.digital_write(self.cs_pin, 1) def ReadBusy(self): - print("e-Paper busy") + logging.debug("e-Paper busy") while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy epdconfig.delay_ms(200) - print("e-Paper busy release") + logging.debug("e-Paper busy release") def init(self): if (epdconfig.module_init() != 0): @@ -95,35 +96,35 @@ class EPD: self.send_data(0x77) def getbuffer(self, image): - buf = [0xFF] * ((self.width//8) * self.height) + buf = [0xFF] * (int(self.width/8) * self.height) image_monocolor = image.convert('1') imwidth, imheight = image_monocolor.size pixels = image_monocolor.load() if(imwidth == self.width and imheight == self.height): - print("Horizontal") + logging.debug("Horizontal") 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] == 0: - buf[(x + y * self.width) // 8] &= ~(0x80 >> (x % 8)) + buf[int((x + y * self.width) / 8)] &= ~(0x80 >> (x % 8)) elif(imwidth == self.height and imheight == self.width): - print("Vertical") + logging.debug("Vertical") for y in range(imheight): for x in range(imwidth): newx = y newy = self.height - x - 1 if pixels[x, y] == 0: - buf[(newx + newy*self.width) // 8] &= ~(0x80 >> (y % 8)) + buf[int((newx + newy*self.width) / 8)] &= ~(0x80 >> (y % 8)) return buf def display(self, blackimage, yellowimage): self.send_command(0x10) - print("blackimage") - for i in range(0, self.width * self.height // 8): + logging.debug("blackimage") + for i in range(0, int(self.width * self.height / 8)): self.send_data(blackimage[i]) self.send_command(0x13) - print("yellowimage") - for i in range(0, self.width * self.height // 8): + logging.debug("yellowimage") + for i in range(0, int(self.width * self.height / 8)): self.send_data(yellowimage[i]) self.send_command(0x12) @@ -131,10 +132,10 @@ class EPD: def Clear(self): self.send_command(0x10) - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(0xFF) self.send_command(0x13) - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(0xFF) self.send_command(0x12) diff --git a/Jetson Nano/python3/lib/epd2in13.py b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd2in13.py similarity index 90% rename from Jetson Nano/python3/lib/epd2in13.py rename to RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd2in13.py index 9424d9a..3039b59 100644 --- a/Jetson Nano/python3/lib/epd2in13.py +++ b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd2in13.py @@ -6,12 +6,12 @@ # *---------------- # * | This version: V4.0 # * | Date : 2019-06-20 -# # | Info : python3 demo +# # | Info : python demo # ----------------------------------------------------------------------------- # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documnetation files (the "Software"), to deal # in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and//or sell +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell # copies of the Software, and to permit persons to whom the Software is # furished to do so, subject to the following conditions: # @@ -28,7 +28,8 @@ # -import epdconfig +import logging +from . import epdconfig import numpy as np # Display resolution @@ -89,9 +90,9 @@ class EPD: self.send_command(0x20) # MASTER_ACTIVATION self.send_command(0xFF) # TERMINATE_FRAME_READ_WRITE - print("e-Paper busy") + logging.debug("e-Paper busy") self.ReadBusy() - print("e-Paper busy release") + logging.debug("e-Paper busy release") def init(self, lut): if (epdconfig.module_init() != 0): @@ -131,7 +132,7 @@ class EPD: return 0 ## - # @brief: specify the memory area for data R//W + # @brief: specify the memory area for data R/W ## def SetWindows(self, x_start, y_start, x_end, y_end): self.send_command(0x44) # SET_RAM_X_ADDRESS_START_END_POSITION @@ -144,7 +145,7 @@ class EPD: self.send_data((y_end >> 8) & 0xFF) ## - # @brief: specify the start point for data R//W + # @brief: specify the start point for data R/W ## def SetCursor(self, x, y): self.send_command(0x4E) # SET_RAM_X_ADDRESS_COUNTER @@ -157,9 +158,9 @@ class EPD: def getbuffer(self, image): if self.width%8 == 0: - linewidth = self.width//8 + linewidth = int(self.width/8) else: - linewidth = self.width//8 + 1 + linewidth = int(self.width/8) + 1 buf = [0xFF] * (linewidth * self.height) image_monocolor = image.convert('1') @@ -167,29 +168,29 @@ class EPD: pixels = image_monocolor.load() if(imwidth == self.width and imheight == self.height): - print("Vertical") + logging.debug("Vertical") for y in range(imheight): for x in range(imwidth): if pixels[x, y] == 0: # x = imwidth - x - buf[x // 8 + y * linewidth] &= ~(0x80 >> (x % 8)) + buf[int(x / 8) + y * linewidth] &= ~(0x80 >> (x % 8)) elif(imwidth == self.height and imheight == self.width): - print("Horizontal") + logging.debug("Horizontal") for y in range(imheight): for x in range(imwidth): newx = y newy = self.height - x - 1 if pixels[x, y] == 0: # newy = imwidth - newy - 1 - buf[newx // 8 + newy*linewidth] &= ~(0x80 >> (y % 8)) + buf[int(newx / 8) + newy*linewidth] &= ~(0x80 >> (y % 8)) return buf def display(self, image): if self.width%8 == 0: - linewidth = self.width//8 + linewidth = int(self.width/8) else: - linewidth = self.width//8 + 1 + linewidth = int(self.width/8) + 1 self.SetWindows(0, 0, self.width, self.height); for j in range(0, self.height): @@ -201,9 +202,9 @@ class EPD: def Clear(self, color): if self.width%8 == 0: - linewidth = self.width//8 + linewidth = int(self.width/8) else: - linewidth = self.width//8 + 1 + linewidth = int(self.width/8) + 1 self.SetWindows(0, 0, self.width, self.height); for j in range(0, self.height): diff --git a/Jetson Nano/python2/lib/epd2in13_V2.py b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd2in13_V2.py similarity index 92% rename from Jetson Nano/python2/lib/epd2in13_V2.py rename to RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd2in13_V2.py index aaeed0b..fe532f4 100644 --- a/Jetson Nano/python2/lib/epd2in13_V2.py +++ b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd2in13_V2.py @@ -1,13 +1,13 @@ -# /***************************************************************************** +# ***************************************************************************** # * | File : epd2in13_V2.py # * | Author : Waveshare team # * | Function : Electronic paper driver # * | Info : # *---------------- # * | This version: V4.0 -# * | Date : 2018-06-20 -# * | Info : python2 demo -# ******************************************************************************/ +# * | Date : 2019-06-20 +# # | Info : python demo +# ----------------------------------------------------------------------------- # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documnetation files (the "Software"), to deal # in the Software without restriction, including without limitation the rights @@ -28,7 +28,8 @@ # -import epdconfig +import logging +from . import epdconfig import numpy as np # Display resolution @@ -211,9 +212,9 @@ class EPD: def getbuffer(self, image): if self.width%8 == 0: - linewidth = self.width/8 + linewidth = int(self.width/8) else: - linewidth = self.width/8 + 1 + linewidth = int(self.width/8) + 1 buf = [0xFF] * (linewidth * self.height) image_monocolor = image.convert('1') @@ -221,29 +222,29 @@ class EPD: pixels = image_monocolor.load() if(imwidth == self.width and imheight == self.height): - print("Vertical") + logging.debug("Vertical") for y in range(imheight): for x in range(imwidth): if pixels[x, y] == 0: x = imwidth - x - buf[x / 8 + y * linewidth] &= ~(0x80 >> (x % 8)) + buf[int(x / 8) + y * linewidth] &= ~(0x80 >> (x % 8)) elif(imwidth == self.height and imheight == self.width): - print("Horizontal") + logging.debug("Horizontal") for y in range(imheight): for x in range(imwidth): newx = y newy = self.height - x - 1 if pixels[x, y] == 0: newy = imwidth - newy - 1 - buf[newx / 8 + newy*linewidth] &= ~(0x80 >> (y % 8)) + buf[int(newx / 8) + newy*linewidth] &= ~(0x80 >> (y % 8)) return buf def display(self, image): if self.width%8 == 0: - linewidth = self.width/8 + linewidth = int(self.width/8) else: - linewidth = self.width/8 + 1 + linewidth = int(self.width/8) + 1 self.send_command(0x24) for j in range(0, self.height): @@ -253,9 +254,9 @@ class EPD: def displayPartial(self, image): if self.width%8 == 0: - linewidth = self.width/8 + linewidth = int(self.width/8) else: - linewidth = self.width/8 + 1 + linewidth = int(self.width/8) + 1 self.send_command(0x24) for j in range(0, self.height): @@ -271,9 +272,9 @@ class EPD: def displayPartBaseImage(self, image): if self.width%8 == 0: - linewidth = self.width/8 + linewidth = int(self.width/8) else: - linewidth = self.width/8 + 1 + linewidth = int(self.width/8) + 1 self.send_command(0x24) for j in range(0, self.height): @@ -289,10 +290,10 @@ class EPD: def Clear(self, color): if self.width%8 == 0: - linewidth = self.width/8 + linewidth = int(self.width/8) else: - linewidth = self.width/8 + 1 - # print(linewidth) + linewidth = int(self.width/8) + 1 + # logging.debug(linewidth) self.send_command(0x24) for j in range(0, self.height): diff --git a/Raspberry Pi/python3/lib/epd2in13bc.py b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd2in13bc.py similarity index 85% rename from Raspberry Pi/python3/lib/epd2in13bc.py rename to RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd2in13bc.py index aad8f47..864d8c5 100644 --- a/Raspberry Pi/python3/lib/epd2in13bc.py +++ b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd2in13bc.py @@ -6,12 +6,12 @@ # *---------------- # * | This version: V4.0 # * | Date : 2019-06-20 -# # | Info : python3 demo +# # | Info : python demo # ----------------------------------------------------------------------------- # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documnetation files (the "Software"), to deal # in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and//or sell +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell # copies of the Software, and to permit persons to whom the Software is # furished to do so, subject to the following conditions: # @@ -27,7 +27,8 @@ # THE SOFTWARE. # -import epdconfig +import logging +from . import epdconfig # Display resolution EPD_WIDTH = 104 @@ -64,10 +65,10 @@ class EPD: epdconfig.digital_write(self.cs_pin, 1) def ReadBusy(self): - print("e-Paper busy") + logging.debug("e-Paper busy") while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy epdconfig.delay_ms(100) - print("e-Paper busy release") + logging.debug("e-Paper busy release") def init(self): if (epdconfig.module_init() != 0): @@ -96,37 +97,37 @@ class EPD: return 0 def getbuffer(self, image): - # print "bufsiz = ",(self.width//8) * self.height - buf = [0xFF] * ((self.width//8) * self.height) + # logging.debug("bufsiz = ",int(self.width/8) * self.height) + buf = [0xFF] * (int(self.width/8) * self.height) image_monocolor = image.convert('1') imwidth, imheight = image_monocolor.size pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight + # logging.debug("imwidth = %d, imheight = %d",imwidth,imheight) if(imwidth == self.width and imheight == self.height): - print("Vertical") + logging.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] == 0: - buf[(x + y * self.width) // 8] &= ~(0x80 >> (x % 8)) + buf[int((x + y * self.width) / 8)] &= ~(0x80 >> (x % 8)) elif(imwidth == self.height and imheight == self.width): - print("Horizontal") + logging.debug("Horizontal") for y in range(imheight): for x in range(imwidth): newx = y newy = self.height - x - 1 if pixels[x, y] == 0: - buf[(newx + newy*self.width) // 8] &= ~(0x80 >> (y % 8)) + buf[int((newx + newy*self.width) / 8)] &= ~(0x80 >> (y % 8)) return buf def display(self, imageblack, imagered): self.send_command(0x10) - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(imageblack[i]) self.send_command(0x92) self.send_command(0x13) - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(imagered[i]) self.send_command(0x92) @@ -135,12 +136,12 @@ class EPD: def Clear(self): self.send_command(0x10) - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(0xFF) self.send_command(0x92) self.send_command(0x13) - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(0xFF) self.send_command(0x92) diff --git a/Raspberry Pi/python3/lib/epd2in13d.py b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd2in13d.py similarity index 91% rename from Raspberry Pi/python3/lib/epd2in13d.py rename to RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd2in13d.py index 30b4fa0..de02f86 100644 --- a/Raspberry Pi/python3/lib/epd2in13d.py +++ b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd2in13d.py @@ -6,12 +6,12 @@ # *---------------- # * | This version: V4.0 # * | Date : 2019-06-20 -# # | Info : python3 demo +# # | Info : python demo # ----------------------------------------------------------------------------- # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documnetation files (the "Software"), to deal # in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and//or sell +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell # copies of the Software, and to permit persons to whom the Software is # furished to do so, subject to the following conditions: # @@ -28,7 +28,8 @@ # -import epdconfig +import logging +from . import epdconfig from PIL import Image import RPi.GPIO as GPIO @@ -169,11 +170,11 @@ class EPD: epdconfig.digital_write(self.cs_pin, 1) def ReadBusy(self): - print("e-Paper busy") + logging.debug("e-Paper busy") while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy self.send_command(0x71) epdconfig.delay_ms(100) - print("e-Paper busy release") + logging.debug("e-Paper busy release") def TurnOnDisplay(self): self.send_command(0x12) @@ -262,40 +263,40 @@ class EPD: self.send_data(self.lut_bb1[count]) def getbuffer(self, image): - # print "bufsiz = ",(self.width//8) * self.height - buf = [0xFF] * ((self.width//8) * self.height) + # logging.debug("bufsiz = ",int(self.width/8) * self.height) + buf = [0xFF] * (int(self.width/8) * self.height) image_monocolor = image.convert('1') imwidth, imheight = image_monocolor.size pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight + # logging.debug("imwidth = %d, imheight = %d",imwidth,imheight) if(imwidth == self.width and imheight == self.height): - print "Vertical" + logging.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] == 0: - buf[(x + y * self.width) // 8] &= ~(0x80 >> (x % 8)) + buf[int((x + y * self.width) / 8)] &= ~(0x80 >> (x % 8)) elif(imwidth == self.height and imheight == self.width): - print "Horizontal" + logging.debug("Horizontal") for y in range(imheight): for x in range(imwidth): newx = y newy = self.height - x - 1 if pixels[x, y] == 0: - buf[(newx + newy*self.width) // 8] &= ~(0x80 >> (y % 8)) + buf[int((newx + newy*self.width) / 8)] &= ~(0x80 >> (y % 8)) return buf def display(self, image): if (Image == None): - return + return self.send_command(0x10) - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(0x00) epdconfig.delay_ms(10) self.send_command(0x13) - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(image[i]) epdconfig.delay_ms(10) @@ -304,7 +305,7 @@ class EPD: def DisplayPartial(self, image): if (Image == None): - return + return self.SetPartReg() self.send_command(0x91) @@ -314,17 +315,17 @@ class EPD: self.send_data(0) self.send_data(0) - self.send_data(self.height // 256) + self.send_data(int(self.height / 256)) self.send_data(self.height % 256 - 1) self.send_data(0x28) self.send_command(0x10) - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(image[i]) epdconfig.delay_ms(10) self.send_command(0x13) - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(~image[i]) epdconfig.delay_ms(10) @@ -332,12 +333,12 @@ class EPD: def Clear(self, color): self.send_command(0x10) - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(0x00) epdconfig.delay_ms(10) self.send_command(0x13) - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(0xFF) epdconfig.delay_ms(10) diff --git a/Raspberry Pi/python3/lib/epd2in7.py b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd2in7.py similarity index 90% rename from Raspberry Pi/python3/lib/epd2in7.py rename to RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd2in7.py index d958c53..e4741ca 100644 --- a/Raspberry Pi/python3/lib/epd2in7.py +++ b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd2in7.py @@ -6,12 +6,12 @@ # *---------------- # * | This version: V4.0 # * | Date : 2019-06-20 -# # | Info : python3 demo +# # | Info : python demo # ----------------------------------------------------------------------------- # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documnetation files (the "Software"), to deal # in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and//or sell +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell # copies of the Software, and to permit persons to whom the Software is # furished to do so, subject to the following conditions: # @@ -27,7 +27,8 @@ # THE SOFTWARE. # -import epdconfig +import logging +from . import epdconfig # Display resolution EPD_WIDTH = 176 @@ -110,10 +111,10 @@ class EPD: epdconfig.digital_write(self.cs_pin, 1) def ReadBusy(self): - print("e-Paper busy") + logging.debug("e-Paper busy") while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy epdconfig.delay_ms(200) - print("e-Paper busy release") + logging.debug("e-Paper busy release") def set_lut(self): self.send_command(0x20) # vcom @@ -203,45 +204,45 @@ class EPD: return 0 def getbuffer(self, image): - # print "bufsiz = ",(self.width//8) * self.height - buf = [0xFF] * ((self.width//8) * self.height) + # logging.debug("bufsiz = ",int(self.width/8) * self.height) + buf = [0xFF] * (int(self.width/8) * self.height) image_monocolor = image.convert('1') imwidth, imheight = image_monocolor.size pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight + # logging.debug("imwidth = %d, imheight = %d",imwidth,imheight) if(imwidth == self.width and imheight == self.height): - print("Vertical") + logging.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] == 0: - buf[(x + y * self.width) // 8] &= ~(0x80 >> (x % 8)) + buf[int((x + y * self.width) / 8)] &= ~(0x80 >> (x % 8)) elif(imwidth == self.height and imheight == self.width): - print("Horizontal") + logging.debug("Horizontal") for y in range(imheight): for x in range(imwidth): newx = y newy = self.height - x - 1 if pixels[x, y] == 0: - buf[(newx + newy*self.width) // 8] &= ~(0x80 >> (y % 8)) + buf[int((newx + newy*self.width) / 8)] &= ~(0x80 >> (y % 8)) return buf def display(self, image): self.send_command(0x10) - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(0xFF) self.send_command(0x13) - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(image[i]) self.send_command(0x12) self.ReadBusy() def Clear(self, color): self.send_command(0x10) - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(0xFF) self.send_command(0x13) - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(0xFF) self.send_command(0x12) self.ReadBusy() diff --git a/Raspberry Pi/python3/lib/epd2in7b.py b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd2in7b.py similarity index 90% rename from Raspberry Pi/python3/lib/epd2in7b.py rename to RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd2in7b.py index b8f6500..4e938f0 100644 --- a/Raspberry Pi/python3/lib/epd2in7b.py +++ b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd2in7b.py @@ -6,12 +6,12 @@ # *---------------- # * | This version: V4.0 # * | Date : 2019-06-20 -# # | Info : python3 demo +# # | Info : python demo # ----------------------------------------------------------------------------- # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documnetation files (the "Software"), to deal # in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and//or sell +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell # copies of the Software, and to permit persons to whom the Software is # furished to do so, subject to the following conditions: # @@ -28,7 +28,8 @@ # -import epdconfig +import logging +from . import epdconfig # Display resolution EPD_WIDTH = 176 @@ -118,10 +119,10 @@ class EPD: epdconfig.digital_write(self.cs_pin, 1) def ReadBusy(self): - print("e-Paper busy") + logging.debug("e-Paper busy") while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy epdconfig.delay_ms(100) - print("e-Paper busy release") + logging.debug("e-Paper busy release") def set_lut(self): self.send_command(0x20) # vcom @@ -205,37 +206,37 @@ class EPD: return 0 def getbuffer(self, image): - # print "bufsiz = ",(self.width//8) * self.height - buf = [0xFF] * ((self.width//8) * self.height) + # logging.debug("bufsiz = ",int(self.width/8) * self.height) + buf = [0xFF] * (int(self.width/8) * self.height) image_monocolor = image.convert('1') imwidth, imheight = image_monocolor.size pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight + # logging.debug("imwidth = %d, imheight = %d",imwidth,imheight) if(imwidth == self.width and imheight == self.height): - print("Vertical") + logging.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] == 0: - buf[(x + y * self.width) // 8] &= ~(0x80 >> (x % 8)) + buf[int((x + y * self.width) / 8)] &= ~(0x80 >> (x % 8)) elif(imwidth == self.height and imheight == self.width): - print("Horizontal") + logging.debug("Horizontal") for y in range(imheight): for x in range(imwidth): newx = y newy = self.height - x - 1 if pixels[x, y] == 0: - buf[(newx + newy*self.width) // 8] &= ~(0x80 >> (y % 8)) + buf[int((newx + newy*self.width) / 8)] &= ~(0x80 >> (y % 8)) return buf def display(self, imageblack, imagered): self.send_command(0x10) - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(~imageblack[i]) self.send_command(0x11) self.send_command(0x13) - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(~imagered[i]) self.send_command(0x11) @@ -244,12 +245,12 @@ class EPD: def Clear(self): self.send_command(0x10) - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(0x00) self.send_command(0x11) self.send_command(0x13) - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(0x00) self.send_command(0x11) diff --git a/Raspberry Pi/python3/lib/epd2in9.py b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd2in9.py similarity index 89% rename from Raspberry Pi/python3/lib/epd2in9.py rename to RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd2in9.py index 604230e..80671a4 100644 --- a/Raspberry Pi/python3/lib/epd2in9.py +++ b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd2in9.py @@ -6,12 +6,12 @@ # *---------------- # * | This version: V4.0 # * | Date : 2019-06-20 -# # | Info : python3 demo +# # | Info : python demo # ----------------------------------------------------------------------------- # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documnetation files (the "Software"), to deal # in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and//or sell +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell # copies of the Software, and to permit persons to whom the Software is # furished to do so, subject to the following conditions: # @@ -27,7 +27,8 @@ # THE SOFTWARE. # -import epdconfig +import logging +from . import epdconfig # Display resolution EPD_WIDTH = 128 @@ -89,9 +90,9 @@ class EPD: self.send_command(0x20) # MASTER_ACTIVATION self.send_command(0xFF) # TERMINATE_FRAME_READ_WRITE - print("e-Paper busy") + logging.debug("e-Paper busy") self.ReadBusy() - print("e-Paper busy release") + logging.debug("e-Paper busy release") def SetWindow(self, x_start, y_start, x_end, y_end): self.send_command(0x44) # SET_RAM_X_ADDRESS_START_END_POSITION @@ -148,27 +149,27 @@ class EPD: return 0 def getbuffer(self, image): - # print "bufsiz = ",(self.width//8) * self.height - buf = [0xFF] * ((self.width//8) * self.height) + # logging.debug("bufsiz = ",int(self.width/8) * self.height) + buf = [0xFF] * (int(self.width/8) * self.height) image_monocolor = image.convert('1') imwidth, imheight = image_monocolor.size pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight + # logging.debug("imwidth = %d, imheight = %d",imwidth,imheight) if(imwidth == self.width and imheight == self.height): - print("Vertical") + logging.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] == 0: - buf[(x + y * self.width) // 8] &= ~(0x80 >> (x % 8)) + buf[int((x + y * self.width) / 8)] &= ~(0x80 >> (x % 8)) elif(imwidth == self.height and imheight == self.width): - print("Horizontal") + logging.debug("Horizontal") for y in range(imheight): for x in range(imwidth): newx = y newy = self.height - x - 1 if pixels[x, y] == 0: - buf[(newx + newy*self.width) // 8] &= ~(0x80 >> (y % 8)) + buf[int((newx + newy*self.width) / 8)] &= ~(0x80 >> (y % 8)) return buf def display(self, image): @@ -178,8 +179,8 @@ class EPD: for j in range(0, self.height): self.SetCursor(0, j) self.send_command(0x24) # WRITE_RAM - for i in range(0, self.width // 8): - self.send_data(image[i + j * (self.width // 8)]) + for i in range(0, int(self.width / 8)): + self.send_data(image[i + j * int(self.width / 8)]) self.TurnOnDisplay() def Clear(self, color): @@ -187,7 +188,7 @@ class EPD: for j in range(0, self.height): self.SetCursor(0, j) self.send_command(0x24) # WRITE_RAM - for i in range(0, self.width // 8): + for i in range(0, int(self.width / 8)): self.send_data(color) self.TurnOnDisplay() diff --git a/Jetson Nano/python3/lib/epd2in9bc.py b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd2in9bc.py similarity index 85% rename from Jetson Nano/python3/lib/epd2in9bc.py rename to RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd2in9bc.py index fdf7817..1d116eb 100644 --- a/Jetson Nano/python3/lib/epd2in9bc.py +++ b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd2in9bc.py @@ -6,12 +6,12 @@ # *---------------- # * | This version: V4.0 # * | Date : 2019-06-20 -# # | Info : python3 demo +# # | Info : python demo # ----------------------------------------------------------------------------- # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documnetation files (the "Software"), to deal # in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and//or sell +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell # copies of the Software, and to permit persons to whom the Software is # furished to do so, subject to the following conditions: # @@ -28,7 +28,8 @@ # -import epdconfig +import logging +from . import epdconfig # Display resolution EPD_WIDTH = 128 @@ -65,10 +66,10 @@ class EPD: epdconfig.digital_write(self.cs_pin, 1) def ReadBusy(self): - print("e-Paper busy") + logging.debug("e-Paper busy") while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy epdconfig.delay_ms(200) - print("e-Paper busy release") + logging.debug("e-Paper busy release") def init(self): if (epdconfig.module_init() != 0): @@ -96,37 +97,37 @@ class EPD: return 0 def getbuffer(self, image): - # print "bufsiz = ",(self.width//8) * self.height - buf = [0xFF] * ((self.width//8) * self.height) + # logging.debug("bufsiz = ",int(self.width/8) * self.height) + buf = [0xFF] * (int(self.width/8) * self.height) image_monocolor = image.convert('1') imwidth, imheight = image_monocolor.size pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight + # logging.debug("imwidth = %d, imheight = %d",imwidth,imheight) if(imwidth == self.width and imheight == self.height): - print("Vertical") + logging.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] == 0: - buf[(x + y * self.width) // 8] &= ~(0x80 >> (x % 8)) + buf[int((x + y * self.width) / 8)] &= ~(0x80 >> (x % 8)) elif(imwidth == self.height and imheight == self.width): - print("Horizontal") + logging.debug("Horizontal") for y in range(imheight): for x in range(imwidth): newx = y newy = self.height - x - 1 if pixels[x, y] == 0: - buf[(newx + newy*self.width) // 8] &= ~(0x80 >> (y % 8)) + buf[int((newx + newy*self.width) / 8)] &= ~(0x80 >> (y % 8)) return buf def display(self, blackimage, ryimage): # ryimage: red or yellow image if (blackimage != None): self.send_command(0X10) - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(blackimage[i]) if (ryimage != None): self.send_command(0X13) - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(ryimage[i]) self.send_command(0x12) @@ -134,10 +135,10 @@ class EPD: def Clear(self): self.send_command(0X10) - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(0xff) self.send_command(0X13) - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(0xff) self.send_command(0x12) diff --git a/Jetson Nano/python3/lib/epd2in9d.py b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd2in9d.py similarity index 91% rename from Jetson Nano/python3/lib/epd2in9d.py rename to RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd2in9d.py index 4847b18..67c0a7a 100644 --- a/Jetson Nano/python3/lib/epd2in9d.py +++ b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd2in9d.py @@ -6,12 +6,12 @@ # *---------------- # * | This version: V2.0 # * | Date : 2019-06-20 -# # | Info : python3 demo +# # | Info : python demo # ----------------------------------------------------------------------------- # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documnetation files (the "Software"), to deal # in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and//or sell +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell # copies of the Software, and to permit persons to whom the Software is # furished to do so, subject to the following conditions: # @@ -28,7 +28,8 @@ # -import epdconfig +import logging +from . import epdconfig from PIL import Image import RPi.GPIO as GPIO @@ -169,11 +170,11 @@ class EPD: epdconfig.digital_write(self.cs_pin, 1) def ReadBusy(self): - print("e-Paper busy") + logging.debug("e-Paper busy") while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy self.send_command(0x71) epdconfig.delay_ms(100) - print("e-Paper busy release") + logging.debug("e-Paper busy release") def TurnOnDisplay(self): self.send_command(0x12) epdconfig.delay_ms(10) @@ -261,37 +262,37 @@ class EPD: self.send_data(self.lut_bb1[count]) def getbuffer(self, image): - # print "bufsiz = ",(self.width//8) * self.height - buf = [0xFF] * ((self.width//8) * self.height) + # logging.debug("bufsiz = ",int(self.width/8) * self.height) + buf = [0xFF] * (int(self.width/8) * self.height) image_monocolor = image.convert('1') imwidth, imheight = image_monocolor.size pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight + # logging.debug("imwidth = %d, imheight = %d",imwidth,imheight) if(imwidth == self.width and imheight == self.height): - print("Vertical") + logging.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] == 0: - buf[(x + y * self.width) // 8] &= ~(0x80 >> (x % 8)) + buf[int((x + y * self.width) / 8)] &= ~(0x80 >> (x % 8)) elif(imwidth == self.height and imheight == self.width): - print("Horizontal") + logging.debug("Horizontal") for y in range(imheight): for x in range(imwidth): newx = y newy = self.height - x - 1 if pixels[x, y] == 0: - buf[(newx + newy*self.width) // 8] &= ~(0x80 >> (y % 8)) + buf[int((newx + newy*self.width) / 8)] &= ~(0x80 >> (y % 8)) return buf def display(self, image): self.send_command(0x10) - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(0x00) epdconfig.delay_ms(10) self.send_command(0x13) - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(image[i]) epdconfig.delay_ms(10) @@ -307,17 +308,17 @@ class EPD: self.send_data(0) self.send_data(0) - self.send_data(self.height // 256) + self.send_data(int(self.height / 256)) self.send_data(self.height % 256 - 1) self.send_data(0x28) self.send_command(0x10) - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(image[i]) epdconfig.delay_ms(10) self.send_command(0x13) - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(~image[i]) epdconfig.delay_ms(10) @@ -325,12 +326,12 @@ class EPD: def Clear(self, color): self.send_command(0x10) - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(0x00) epdconfig.delay_ms(10) self.send_command(0x13) - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(0xFF) epdconfig.delay_ms(10) diff --git a/Raspberry Pi/python3/lib/epd4in2.py b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd4in2.py similarity index 91% rename from Raspberry Pi/python3/lib/epd4in2.py rename to RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd4in2.py index a748b3d..47ba04c 100644 --- a/Raspberry Pi/python3/lib/epd4in2.py +++ b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd4in2.py @@ -6,12 +6,12 @@ # *---------------- # * | This version: V4.0 # * | Date : 2019-06-20 -# # | Info : python3 demo +# # | Info : python demo # ----------------------------------------------------------------------------- # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documnetation files (the "Software"), to deal # in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and//or sell +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell # copies of the Software, and to permit persons to whom the Software is # furished to do so, subject to the following conditions: # @@ -28,7 +28,8 @@ # -import epdconfig +import logging +from . import epdconfig from PIL import Image import RPi.GPIO as GPIO @@ -181,36 +182,36 @@ class EPD: return 0 def getbuffer(self, image): - # print "bufsiz = ",(self.width//8) * self.height - buf = [0xFF] * ((self.width//8) * self.height) + # logging.debug("bufsiz = ",int(self.width/8) * self.height) + buf = [0xFF] * (int(self.width/8) * self.height) image_monocolor = image.convert('1') imwidth, imheight = image_monocolor.size pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight + # logging.debug("imwidth = %d, imheight = %d",imwidth,imheight) if(imwidth == self.width and imheight == self.height): - print("Horizontal") + logging.debug("Horizontal") 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] == 0: - buf[(x + y * self.width) // 8] &= ~(0x80 >> (x % 8)) + buf[int((x + y * self.width) / 8)] &= ~(0x80 >> (x % 8)) elif(imwidth == self.height and imheight == self.width): - print("Vertical") + logging.debug("Vertical") for y in range(imheight): for x in range(imwidth): newx = y newy = self.height - x - 1 if pixels[x, y] == 0: - buf[(newx + newy*self.width) // 8] &= ~(0x80 >> (y % 8)) + buf[int((newx + newy*self.width) / 8)] &= ~(0x80 >> (y % 8)) return buf def display(self, image): self.send_command(0x10) - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(0xFF) self.send_command(0x13) - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(image[i]) self.send_command(0x12) @@ -218,11 +219,11 @@ class EPD: def Clear(self): self.send_command(0x10) - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(0xFF) self.send_command(0x13) - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(0xFF) self.send_command(0x12) diff --git a/Jetson Nano/python3/lib/epd4in2bc.py b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd4in2bc.py similarity index 84% rename from Jetson Nano/python3/lib/epd4in2bc.py rename to RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd4in2bc.py index 637be5c..d29465a 100644 --- a/Jetson Nano/python3/lib/epd4in2bc.py +++ b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd4in2bc.py @@ -6,12 +6,12 @@ # *---------------- # * | This version: V4.0 # * | Date : 2019-06-20 -# # | Info : python3 demo +# # | Info : python demo # ----------------------------------------------------------------------------- # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documnetation files (the "Software"), to deal # in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and//or sell +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell # copies of the Software, and to permit persons to whom the Software is # furished to do so, subject to the following conditions: # @@ -27,7 +27,8 @@ # THE SOFTWARE. # -import epdconfig +import logging +from . import epdconfig # Display resolution EPD_WIDTH = 400 @@ -64,10 +65,10 @@ class EPD: epdconfig.digital_write(self.cs_pin, 1) def ReadBusy(self): - print("e-Paper busy") + logging.debug("e-Paper busy") while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy epdconfig.delay_ms(100) - print("e-Paper busy release") + logging.debug("e-Paper busy release") def init(self): if (epdconfig.module_init() != 0): @@ -89,36 +90,36 @@ class EPD: return 0 def getbuffer(self, image): - # print "bufsiz = ",(self.width//8) * self.height - buf = [0xFF] * ((self.width//8) * self.height) + # logging.debug("bufsiz = ",int(self.width/8) * self.height) + buf = [0xFF] * (int(self.width/8) * self.height) image_monocolor = image.convert('1') imwidth, imheight = image_monocolor.size pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight + # logging.debug("imwidth = %d, imheight = %d",imwidth,imheight) if(imwidth == self.width and imheight == self.height): - print("Horizontal") + logging.debug("Horizontal") 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] == 0: - buf[(x + y * self.width) // 8] &= ~(0x80 >> (x % 8)) + buf[int((x + y * self.width) / 8)] &= ~(0x80 >> (x % 8)) elif(imwidth == self.height and imheight == self.width): - print("Vertical") + logging.debug("Vertical") for y in range(imheight): for x in range(imwidth): newx = y newy = self.height - x - 1 if pixels[x, y] == 0: - buf[(newx + newy*self.width) // 8] &= ~(0x80 >> (y % 8)) + buf[int((newx + newy*self.width) / 8)] &= ~(0x80 >> (y % 8)) return buf def display(self, imageblack, imagered): self.send_command(0x10) - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(imageblack[i]) self.send_command(0x13) - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(imagered[i]) self.send_command(0x12) @@ -126,11 +127,11 @@ class EPD: def Clear(self): self.send_command(0x10) - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(0xFF) self.send_command(0x13) - for i in range(0, self.width * self.height // 8): + for i in range(0, int(self.width * self.height / 8)): self.send_data(0xFF) self.send_command(0x12) diff --git a/Jetson Nano/python3/lib/epd5in83.py b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd5in83.py similarity index 85% rename from Jetson Nano/python3/lib/epd5in83.py rename to RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd5in83.py index e108d73..a0131b7 100644 --- a/Jetson Nano/python3/lib/epd5in83.py +++ b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd5in83.py @@ -6,12 +6,12 @@ # *---------------- # * | This version: V4.0 # * | Date : 2019-06-20 -# # | Info : python3 demo +# # | Info : python demo # ----------------------------------------------------------------------------- # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documnetation files (the "Software"), to deal # in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and//or sell +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell # copies of the Software, and to permit persons to whom the Software is # furished to do so, subject to the following conditions: # @@ -28,7 +28,8 @@ # -import epdconfig +import logging +from . import epdconfig # Display resolution EPD_WIDTH = 600 @@ -65,10 +66,10 @@ class EPD: epdconfig.digital_write(self.cs_pin, 1) def ReadBusy(self): - print("e-Paper busy") + logging.debug("e-Paper busy") while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy epdconfig.delay_ms(100) - print("e-Paper busy release") + logging.debug("e-Paper busy release") def init(self): if (epdconfig.module_init() != 0): @@ -120,39 +121,39 @@ class EPD: return 0 def getbuffer(self, image): - buf = [0x00] * (self.width * self.height // 4) + buf = [0x00] * int(self.width * self.height / 4) image_monocolor = image.convert('1') imwidth, imheight = image_monocolor.size pixels = image_monocolor.load() - print("imwidth = ", imwidth, "imheight = ", imheight) + logging.debug('imwidth = %d imheight = %d ',imwidth, imheight) if(imwidth == self.width and imheight == self.height): 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] < 64: # black - buf[(x + y * self.width) // 4] &= ~(0xC0 >> (x % 4 * 2)) + buf[int((x + y * self.width) / 4)] &= ~(0xC0 >> (x % 4 * 2)) elif pixels[x, y] < 192: # convert gray to red - buf[(x + y * self.width) // 4] &= ~(0xC0 >> (x % 4 * 2)) - buf[(x + y * self.width) // 4] |= 0x40 >> (x % 4 * 2) + buf[int((x + y * self.width) / 4)] &= ~(0xC0 >> (x % 4 * 2)) + buf[int((x + y * self.width) / 4)] |= 0x40 >> (x % 4 * 2) else: # white - buf[(x + y * self.width) // 4] |= 0xC0 >> (x % 4 * 2) + buf[int((x + y * self.width) / 4)] |= 0xC0 >> (x % 4 * 2) elif(imwidth == self.height and imheight == self.width): for y in range(imheight): for x in range(imwidth): newx = y newy = self.height - x - 1 if pixels[x, y] < 64: # black - buf[(newx + newy*self.width) // 4] &= ~(0xC0 >> (y % 4 * 2)) + buf[int((newx + newy*self.width) / 4)] &= ~(0xC0 >> (y % 4 * 2)) elif pixels[x, y] < 192: # convert gray to red - buf[(newx + newy*self.width) // 4] &= ~(0xC0 >> (y % 4 * 2)) - buf[(newx + newy*self.width) // 4] |= 0x40 >> (y % 4 * 2) + buf[int((newx + newy*self.width) / 4)] &= ~(0xC0 >> (y % 4 * 2)) + buf[int((newx + newy*self.width) / 4)] |= 0x40 >> (y % 4 * 2) else: # white - buf[(newx + newy*self.width) // 4] |= 0xC0 >> (y % 4 * 2) + buf[int((newx + newy*self.width) / 4)] |= 0xC0 >> (y % 4 * 2) return buf def display(self, image): self.send_command(0x10) - for i in range(0, self.width // 4 * self.height): + for i in range(0, int(self.width / 4 * self.height)): temp1 = image[i] j = 0 while (j < 4): @@ -181,7 +182,7 @@ class EPD: def Clear(self): self.send_command(0x10) - for i in range(0, self.width // 4 * self.height): + for i in range(0, int(self.width / 4 * self.height)): for j in range(0, 4): self.send_data(0x33) self.send_command(0x12) diff --git a/Jetson Nano/python3/lib/epd5in83bc.py b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd5in83bc.py similarity index 89% rename from Jetson Nano/python3/lib/epd5in83bc.py rename to RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd5in83bc.py index c9457d5..19c8a40 100644 --- a/Jetson Nano/python3/lib/epd5in83bc.py +++ b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd5in83bc.py @@ -6,12 +6,12 @@ # *---------------- # * | This version: V4.0 # * | Date : 2019-06-20 -# # | Info : python3 demo +# # | Info : python demo # ----------------------------------------------------------------------------- # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documnetation files (the "Software"), to deal # in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and//or sell +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell # copies of the Software, and to permit persons to whom the Software is # furished to do so, subject to the following conditions: # @@ -28,7 +28,8 @@ # -import epdconfig +import logging +from . import epdconfig # Display resolution EPD_WIDTH = 600 @@ -65,10 +66,10 @@ class EPD: epdconfig.digital_write(self.cs_pin, 1) def ReadBusy(self): - print("e-Paper busy") + logging.debug("e-Paper busy") while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy epdconfig.delay_ms(100) - print("e-Paper busy release") + logging.debug("e-Paper busy release") def init(self): if (epdconfig.module_init() != 0): @@ -116,32 +117,32 @@ class EPD: return 0 def getbuffer(self, image): - # print "bufsiz = ",(self.width//8) * self.height - buf = [0xFF] * ((self.width//8) * self.height) + # logging.debug("bufsiz = ",int(self.width/8) * self.height) + buf = [0xFF] * (int(self.width/8) * self.height) image_monocolor = image.convert('1') imwidth, imheight = image_monocolor.size pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight + logging.debug('imwidth = %d imheight = %d ',imwidth, imheight) if(imwidth == self.width and imheight == self.height): - print("Horizontal") + logging.debug("Horizontal") 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] == 0: - buf[(x + y * self.width) // 8] &= ~(0x80 >> (x % 8)) + buf[int((x + y * self.width) / 8)] &= ~(0x80 >> (x % 8)) elif(imwidth == self.height and imheight == self.width): - print("Vertical") + logging.debug("Vertical") for y in range(imheight): for x in range(imwidth): newx = y newy = self.height - x - 1 if pixels[x, y] == 0: - buf[(newx + newy*self.width) // 8] &= ~(0x80 >> (y % 8)) + buf[int((newx + newy*self.width) / 8)] &= ~(0x80 >> (y % 8)) return buf def display(self, imageblack, imagered): self.send_command(0x10) - for i in range(0, self.width // 8 * self.height): + for i in range(0, int(self.width / 8 * self.height)): temp1 = imageblack[i] temp2 = imagered[i] j = 0 @@ -176,7 +177,7 @@ class EPD: def Clear(self): self.send_command(0x10) - for i in range(0, self.width // 8 * self.height): + for i in range(0, int(self.width / 8 * self.height)): self.send_data(0x33) self.send_data(0x33) self.send_data(0x33) diff --git a/Jetson Nano/python3/lib/epd7in5.py b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd7in5.py similarity index 85% rename from Jetson Nano/python3/lib/epd7in5.py rename to RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd7in5.py index a03e62a..80f488d 100644 --- a/Jetson Nano/python3/lib/epd7in5.py +++ b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd7in5.py @@ -6,12 +6,12 @@ # *---------------- # * | This version: V4.0 # * | Date : 2019-06-20 -# # | Info : python3 demo +# # | Info : python demo # ----------------------------------------------------------------------------- # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documnetation files (the "Software"), to deal # in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and//or sell +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell # copies of the Software, and to permit persons to whom the Software is # furished to do so, subject to the following conditions: # @@ -28,7 +28,8 @@ # -import epdconfig +import logging +from . import epdconfig # Display resolution EPD_WIDTH = 640 @@ -65,10 +66,10 @@ class EPD: epdconfig.digital_write(self.cs_pin, 1) def ReadBusy(self): - print("e-Paper busy") + logging.debug("e-Paper busy") while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy epdconfig.delay_ms(100) - print("e-Paper busy release") + logging.debug("e-Paper busy release") def init(self): if (epdconfig.module_init() != 0): @@ -120,39 +121,40 @@ class EPD: return 0 def getbuffer(self, image): - buf = [0x00] * (self.width * self.height // 4) + logging.debug("1234") + buf = [0x00] * int(self.width * self.height / 4) image_monocolor = image.convert('1') imwidth, imheight = image_monocolor.size pixels = image_monocolor.load() - print("imwidth = ", imwidth, "imheight = ", imheight) + logging.debug('imwidth = %d imheight = %d ',imwidth, imheight) if(imwidth == self.width and imheight == self.height): 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] < 64: # black - buf[(x + y * self.width) // 4] &= ~(0xC0 >> (x % 4 * 2)) + buf[int((x + y * self.width) / 4)] &= ~(0xC0 >> (x % 4 * 2)) elif pixels[x, y] < 192: # convert gray to red - buf[(x + y * self.width) // 4] &= ~(0xC0 >> (x % 4 * 2)) - buf[(x + y * self.width) // 4] |= 0x40 >> (x % 4 * 2) + buf[int((x + y * self.width) / 4)] &= ~(0xC0 >> (x % 4 * 2)) + buf[int((x + y * self.width) / 4)] |= 0x40 >> (x % 4 * 2) else: # white - buf[(x + y * self.width) // 4] |= 0xC0 >> (x % 4 * 2) + buf[int((x + y * self.width) / 4)] |= 0xC0 >> (x % 4 * 2) elif(imwidth == self.height and imheight == self.width): for y in range(imheight): for x in range(imwidth): newx = y newy = self.height - x - 1 if pixels[x, y] < 64: # black - buf[(newx + newy*self.width) // 4] &= ~(0xC0 >> (y % 4 * 2)) + buf[int((newx + newy*self.width) / 4)] &= ~(0xC0 >> (y % 4 * 2)) elif pixels[x, y] < 192: # convert gray to red - buf[(newx + newy*self.width) // 4] &= ~(0xC0 >> (y % 4 * 2)) - buf[(newx + newy*self.width) // 4] |= 0x40 >> (y % 4 * 2) + buf[int((newx + newy*self.width) / 4)] &= ~(0xC0 >> (y % 4 * 2)) + buf[int((newx + newy*self.width) / 4)] |= 0x40 >> (y % 4 * 2) else: # white - buf[(newx + newy*self.width) // 4] |= 0xC0 >> (y % 4 * 2) + buf[int((newx + newy*self.width) / 4)] |= 0xC0 >> (y % 4 * 2) return buf def display(self, image): self.send_command(0x10) - for i in range(0, self.width // 4 * self.height): + for i in range(0, int(self.width / 4 * self.height)): temp1 = image[i] j = 0 while (j < 4): @@ -181,7 +183,7 @@ class EPD: def Clear(self): self.send_command(0x10) - for i in range(0, self.width // 4 * self.height): + for i in range(0, int(self.width / 4 * self.height)): for j in range(0, 4): self.send_data(0x33) diff --git a/Jetson Nano/python3/lib/epd7in5bc.py b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd7in5bc.py similarity index 89% rename from Jetson Nano/python3/lib/epd7in5bc.py rename to RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd7in5bc.py index bd7d047..7ec3959 100644 --- a/Jetson Nano/python3/lib/epd7in5bc.py +++ b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epd7in5bc.py @@ -6,12 +6,12 @@ # *---------------- # * | This version: V4.0 # * | Date : 2019-06-20 -# # | Info : python3 demo +# # | Info : python demo # ----------------------------------------------------------------------------- # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documnetation files (the "Software"), to deal # in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and//or sell +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell # copies of the Software, and to permit persons to whom the Software is # furished to do so, subject to the following conditions: # @@ -28,7 +28,8 @@ # -import epdconfig +import logging +from . import epdconfig # Display resolution EPD_WIDTH = 640 @@ -65,10 +66,10 @@ class EPD: epdconfig.digital_write(self.cs_pin, 1) def ReadBusy(self): - print("e-Paper busy") + logging.debug("e-Paper busy") while(epdconfig.digital_read(self.busy_pin) == 0): # 0: idle, 1: busy epdconfig.delay_ms(100) - print("e-Paper busy release") + logging.debug("e-Paper busy release") def init(self): if (epdconfig.module_init() != 0): @@ -116,32 +117,32 @@ class EPD: return 0 def getbuffer(self, image): - # print "bufsiz = ",(self.width//8) * self.height - buf = [0xFF] * ((self.width//8) * self.height) + # logging.debug("bufsiz = ",int(self.width/8) * self.height) + buf = [0xFF] * (int(self.width/8) * self.height) image_monocolor = image.convert('1') imwidth, imheight = image_monocolor.size pixels = image_monocolor.load() - # print "imwidth = %d, imheight = %d",imwidth,imheight + logging.debug('imwidth = %d imheight = %d ',imwidth, imheight) if(imwidth == self.width and imheight == self.height): - print("Horizontal") + logging.debug("Horizontal") 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] == 0: - buf[(x + y * self.width) // 8] &= ~(0x80 >> (x % 8)) + buf[int((x + y * self.width) / 8)] &= ~(0x80 >> (x % 8)) elif(imwidth == self.height and imheight == self.width): - print("Vertical") + logging.debug("Vertical") for y in range(imheight): for x in range(imwidth): newx = y newy = self.height - x - 1 if pixels[x, y] == 0: - buf[(newx + newy*self.width) // 8] &= ~(0x80 >> (y % 8)) + buf[int((newx + newy*self.width) / 8)] &= ~(0x80 >> (y % 8)) return buf def display(self, imageblack, imagered): self.send_command(0x10) - for i in range(0, self.width // 8 * self.height): + for i in range(0, int(self.width / 8 * self.height)): temp1 = imageblack[i] temp2 = imagered[i] j = 0 @@ -176,7 +177,7 @@ class EPD: def Clear(self): self.send_command(0x10) - for i in range(0, self.width // 8 * self.height): + for i in range(0, int(self.width / 8 * self.height)): self.send_data(0x33) self.send_data(0x33) self.send_data(0x33) diff --git a/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epdconfig.py b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epdconfig.py new file mode 100644 index 0000000..76d8ca9 --- /dev/null +++ b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/epdconfig.py @@ -0,0 +1,154 @@ +# /***************************************************************************** +# * | File : epdconfig.py +# * | Author : Waveshare team +# * | Function : Hardware underlying interface +# * | Info : +# *---------------- +# * | This version: V1.0 +# * | Date : 2019-06-21 +# * | Info : +# ****************************************************************************** +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documnetation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS OR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +# THE SOFTWARE. +# + +import os +import logging +import sys +import time + + +class RaspberryPi: + # Pin definition + RST_PIN = 17 + DC_PIN = 25 + CS_PIN = 8 + BUSY_PIN = 24 + + def __init__(self): + import spidev + import RPi.GPIO + + self.GPIO = RPi.GPIO + + # SPI device, bus = 0, device = 0 + self.SPI = spidev.SpiDev(0, 0) + + def digital_write(self, pin, value): + self.GPIO.output(pin, value) + + def digital_read(self, pin): + return self.GPIO.input(self.BUSY_PIN) + + def delay_ms(self, delaytime): + time.sleep(delaytime / 1000.0) + + def spi_writebyte(self, data): + self.SPI.writebytes(data) + + def module_init(self): + self.GPIO.setmode(self.GPIO.BCM) + self.GPIO.setwarnings(False) + self.GPIO.setup(self.RST_PIN, self.GPIO.OUT) + self.GPIO.setup(self.DC_PIN, self.GPIO.OUT) + self.GPIO.setup(self.CS_PIN, self.GPIO.OUT) + self.GPIO.setup(self.BUSY_PIN, self.GPIO.IN) + self.SPI.max_speed_hz = 4000000 + self.SPI.mode = 0b00 + return 0 + + def module_exit(self): + logging.debug("spi end") + self.SPI.close() + + logging.debug("close 5V, Module enters 0 power consumption ...") + self.GPIO.output(self.RST_PIN, 0) + self.GPIO.output(self.DC_PIN, 0) + + self.GPIO.cleanup() + + +class JetsonNano: + # Pin definition + RST_PIN = 17 + DC_PIN = 25 + CS_PIN = 8 + BUSY_PIN = 24 + + def __init__(self): + import ctypes + find_dirs = [ + os.path.dirname(os.path.realpath(__file__)), + '/usr/local/lib', + '/usr/lib', + ] + self.SPI = None + for find_dir in find_dirs: + so_filename = os.path.join(find_dir, 'sysfs_software_spi.so') + if os.path.exists(so_filename): + self.SPI = ctypes.cdll.LoadLibrary(so_filename) + break + if self.SPI is None: + raise RuntimeError('Cannot find sysfs_software_spi.so') + + import Jetson.GPIO + self.GPIO = Jetson.GPIO + + def digital_write(self, pin, value): + self.GPIO.output(pin, value) + + def digital_read(self, pin): + return self.GPIO.input(self.BUSY_PIN) + + def delay_ms(self, delaytime): + time.sleep(delaytime / 1000.0) + + def spi_writebyte(self, data): + self.SPI.SYSFS_software_spi_transfer(data[0]) + + def module_init(self): + self.GPIO.setmode(self.GPIO.BCM) + self.GPIO.setwarnings(False) + self.GPIO.setup(self.RST_PIN, self.GPIO.OUT) + self.GPIO.setup(self.DC_PIN, self.GPIO.OUT) + self.GPIO.setup(self.CS_PIN, self.GPIO.OUT) + self.GPIO.setup(self.BUSY_PIN, self.GPIO.IN) + self.SPI.SYSFS_software_spi_begin() + return 0 + + def module_exit(self): + logging.debug("spi end") + self.SPI.SYSFS_software_spi_end() + + logging.debug("close 5V, Module enters 0 power consumption ...") + self.GPIO.output(self.RST_PIN, 0) + self.GPIO.output(self.DC_PIN, 0) + + self.GPIO.cleanup() + + +if os.path.exists('/sys/bus/platform/drivers/gpiomem-bcm2835'): + implementation = RaspberryPi() +else: + implementation = JetsonNano() + +for func in [x for x in dir(implementation) if not x.startswith('_')]: + setattr(sys.modules[__name__], func, getattr(implementation, func)) + + +### END OF FILE ### diff --git a/Jetson Nano/python2/lib/sysfs_gpio.so b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/sysfs_gpio.so similarity index 100% rename from Jetson Nano/python2/lib/sysfs_gpio.so rename to RaspberryPi&JetsonNano/python/lib/waveshare_epd/sysfs_gpio.so diff --git a/Jetson Nano/python2/lib/sysfs_software_spi.so b/RaspberryPi&JetsonNano/python/lib/waveshare_epd/sysfs_software_spi.so similarity index 100% rename from Jetson Nano/python2/lib/sysfs_software_spi.so rename to RaspberryPi&JetsonNano/python/lib/waveshare_epd/sysfs_software_spi.so diff --git a/Jetson Nano/python2/pic/100x100.bmp b/RaspberryPi&JetsonNano/python/pic/100x100.bmp similarity index 100% rename from Jetson Nano/python2/pic/100x100.bmp rename to RaspberryPi&JetsonNano/python/pic/100x100.bmp diff --git a/Jetson Nano/python2/pic/1in54.bmp b/RaspberryPi&JetsonNano/python/pic/1in54.bmp similarity index 100% rename from Jetson Nano/python2/pic/1in54.bmp rename to RaspberryPi&JetsonNano/python/pic/1in54.bmp diff --git a/Jetson Nano/python2/pic/1in54b-b.bmp b/RaspberryPi&JetsonNano/python/pic/1in54b-b.bmp similarity index 100% rename from Jetson Nano/python2/pic/1in54b-b.bmp rename to RaspberryPi&JetsonNano/python/pic/1in54b-b.bmp diff --git a/Jetson Nano/python2/pic/1in54b-r.bmp b/RaspberryPi&JetsonNano/python/pic/1in54b-r.bmp similarity index 100% rename from Jetson Nano/python2/pic/1in54b-r.bmp rename to RaspberryPi&JetsonNano/python/pic/1in54b-r.bmp diff --git a/Jetson Nano/python2/pic/1in54c-b.bmp b/RaspberryPi&JetsonNano/python/pic/1in54c-b.bmp similarity index 100% rename from Jetson Nano/python2/pic/1in54c-b.bmp rename to RaspberryPi&JetsonNano/python/pic/1in54c-b.bmp diff --git a/Jetson Nano/python2/pic/1in54c-y.bmp b/RaspberryPi&JetsonNano/python/pic/1in54c-y.bmp similarity index 100% rename from Jetson Nano/python2/pic/1in54c-y.bmp rename to RaspberryPi&JetsonNano/python/pic/1in54c-y.bmp diff --git a/Jetson Nano/python2/pic/2in13-v2.bmp b/RaspberryPi&JetsonNano/python/pic/2in13-v2.bmp similarity index 100% rename from Jetson Nano/python2/pic/2in13-v2.bmp rename to RaspberryPi&JetsonNano/python/pic/2in13-v2.bmp diff --git a/Jetson Nano/python2/pic/2in13.bmp b/RaspberryPi&JetsonNano/python/pic/2in13.bmp similarity index 100% rename from Jetson Nano/python2/pic/2in13.bmp rename to RaspberryPi&JetsonNano/python/pic/2in13.bmp diff --git a/Jetson Nano/python2/pic/2in13bc-b.bmp b/RaspberryPi&JetsonNano/python/pic/2in13bc-b.bmp similarity index 100% rename from Jetson Nano/python2/pic/2in13bc-b.bmp rename to RaspberryPi&JetsonNano/python/pic/2in13bc-b.bmp diff --git a/Jetson Nano/python2/pic/2in13bc-ry.bmp b/RaspberryPi&JetsonNano/python/pic/2in13bc-ry.bmp similarity index 100% rename from Jetson Nano/python2/pic/2in13bc-ry.bmp rename to RaspberryPi&JetsonNano/python/pic/2in13bc-ry.bmp diff --git a/Jetson Nano/python2/pic/2in13d.bmp b/RaspberryPi&JetsonNano/python/pic/2in13d.bmp similarity index 100% rename from Jetson Nano/python2/pic/2in13d.bmp rename to RaspberryPi&JetsonNano/python/pic/2in13d.bmp diff --git a/Jetson Nano/python2/pic/2in7.bmp b/RaspberryPi&JetsonNano/python/pic/2in7.bmp similarity index 100% rename from Jetson Nano/python2/pic/2in7.bmp rename to RaspberryPi&JetsonNano/python/pic/2in7.bmp diff --git a/Jetson Nano/python2/pic/2in7b-b.bmp b/RaspberryPi&JetsonNano/python/pic/2in7b-b.bmp similarity index 100% rename from Jetson Nano/python2/pic/2in7b-b.bmp rename to RaspberryPi&JetsonNano/python/pic/2in7b-b.bmp diff --git a/Jetson Nano/python2/pic/2in7b-r.bmp b/RaspberryPi&JetsonNano/python/pic/2in7b-r.bmp similarity index 100% rename from Jetson Nano/python2/pic/2in7b-r.bmp rename to RaspberryPi&JetsonNano/python/pic/2in7b-r.bmp diff --git a/Jetson Nano/python2/pic/2in9.bmp b/RaspberryPi&JetsonNano/python/pic/2in9.bmp similarity index 100% rename from Jetson Nano/python2/pic/2in9.bmp rename to RaspberryPi&JetsonNano/python/pic/2in9.bmp diff --git a/Jetson Nano/python2/pic/2in9bc-b.bmp b/RaspberryPi&JetsonNano/python/pic/2in9bc-b.bmp similarity index 100% rename from Jetson Nano/python2/pic/2in9bc-b.bmp rename to RaspberryPi&JetsonNano/python/pic/2in9bc-b.bmp diff --git a/Jetson Nano/python2/pic/2in9bc-ry.bmp b/RaspberryPi&JetsonNano/python/pic/2in9bc-ry.bmp similarity index 100% rename from Jetson Nano/python2/pic/2in9bc-ry.bmp rename to RaspberryPi&JetsonNano/python/pic/2in9bc-ry.bmp diff --git a/Jetson Nano/python2/pic/2in9d.bmp b/RaspberryPi&JetsonNano/python/pic/2in9d.bmp similarity index 100% rename from Jetson Nano/python2/pic/2in9d.bmp rename to RaspberryPi&JetsonNano/python/pic/2in9d.bmp diff --git a/Jetson Nano/python2/pic/4in2.bmp b/RaspberryPi&JetsonNano/python/pic/4in2.bmp similarity index 100% rename from Jetson Nano/python2/pic/4in2.bmp rename to RaspberryPi&JetsonNano/python/pic/4in2.bmp diff --git a/Jetson Nano/python2/pic/4in2b-b.bmp b/RaspberryPi&JetsonNano/python/pic/4in2b-b.bmp similarity index 100% rename from Jetson Nano/python2/pic/4in2b-b.bmp rename to RaspberryPi&JetsonNano/python/pic/4in2b-b.bmp diff --git a/Jetson Nano/python2/pic/4in2b-r.bmp b/RaspberryPi&JetsonNano/python/pic/4in2b-r.bmp similarity index 100% rename from Jetson Nano/python2/pic/4in2b-r.bmp rename to RaspberryPi&JetsonNano/python/pic/4in2b-r.bmp diff --git a/Jetson Nano/python2/pic/4in2c-b.bmp b/RaspberryPi&JetsonNano/python/pic/4in2c-b.bmp similarity index 100% rename from Jetson Nano/python2/pic/4in2c-b.bmp rename to RaspberryPi&JetsonNano/python/pic/4in2c-b.bmp diff --git a/Jetson Nano/python2/pic/4in2c-y.bmp b/RaspberryPi&JetsonNano/python/pic/4in2c-y.bmp similarity index 100% rename from Jetson Nano/python2/pic/4in2c-y.bmp rename to RaspberryPi&JetsonNano/python/pic/4in2c-y.bmp diff --git a/Jetson Nano/python2/pic/5in83.bmp b/RaspberryPi&JetsonNano/python/pic/5in83.bmp similarity index 100% rename from Jetson Nano/python2/pic/5in83.bmp rename to RaspberryPi&JetsonNano/python/pic/5in83.bmp diff --git a/Jetson Nano/python2/pic/5in83bc-b.bmp b/RaspberryPi&JetsonNano/python/pic/5in83bc-b.bmp similarity index 100% rename from Jetson Nano/python2/pic/5in83bc-b.bmp rename to RaspberryPi&JetsonNano/python/pic/5in83bc-b.bmp diff --git a/Jetson Nano/python2/pic/5in83bc-ry.bmp b/RaspberryPi&JetsonNano/python/pic/5in83bc-ry.bmp similarity index 100% rename from Jetson Nano/python2/pic/5in83bc-ry.bmp rename to RaspberryPi&JetsonNano/python/pic/5in83bc-ry.bmp diff --git a/Jetson Nano/python2/pic/7in5.bmp b/RaspberryPi&JetsonNano/python/pic/7in5.bmp similarity index 100% rename from Jetson Nano/python2/pic/7in5.bmp rename to RaspberryPi&JetsonNano/python/pic/7in5.bmp diff --git a/Jetson Nano/python2/pic/7in5b-b.bmp b/RaspberryPi&JetsonNano/python/pic/7in5b-b.bmp similarity index 100% rename from Jetson Nano/python2/pic/7in5b-b.bmp rename to RaspberryPi&JetsonNano/python/pic/7in5b-b.bmp diff --git a/Jetson Nano/python2/pic/7in5b-r.bmp b/RaspberryPi&JetsonNano/python/pic/7in5b-r.bmp similarity index 100% rename from Jetson Nano/python2/pic/7in5b-r.bmp rename to RaspberryPi&JetsonNano/python/pic/7in5b-r.bmp diff --git a/Jetson Nano/python2/pic/7in5c-b.bmp b/RaspberryPi&JetsonNano/python/pic/7in5c-b.bmp similarity index 100% rename from Jetson Nano/python2/pic/7in5c-b.bmp rename to RaspberryPi&JetsonNano/python/pic/7in5c-b.bmp diff --git a/Jetson Nano/python2/pic/7in5c-r.bmp b/RaspberryPi&JetsonNano/python/pic/7in5c-r.bmp similarity index 100% rename from Jetson Nano/python2/pic/7in5c-r.bmp rename to RaspberryPi&JetsonNano/python/pic/7in5c-r.bmp diff --git a/Jetson Nano/python2/lib/Font.ttc b/RaspberryPi&JetsonNano/python/pic/Font.ttc similarity index 100% rename from Jetson Nano/python2/lib/Font.ttc rename to RaspberryPi&JetsonNano/python/pic/Font.ttc diff --git a/Jetson Nano/python2/readme_CN.txt b/RaspberryPi&JetsonNano/python/readme_jetson_CN.txt similarity index 90% rename from Jetson Nano/python2/readme_CN.txt rename to RaspberryPi&JetsonNano/python/readme_jetson_CN.txt index 38eb743..80be97d 100644 --- a/Jetson Nano/python2/readme_CN.txt +++ b/RaspberryPi&JetsonNano/python/readme_jetson_CN.txt @@ -31,6 +31,14 @@ RST -> 17 BUSY -> 24 3.瀹夎搴擄細 + sudo apt-get update + sudo apt-get install python-pip + sudo apt-get install python-pil + sudo apt-get install python-numpy + sudo pip install Jetson.GPIO + +鎴 + sudo apt-get update sudo apt-get install python3-pip sudo apt-get install python3-pil @@ -49,4 +57,4 @@ BUSY -> 24 閭d箞浣犲簲璇ユ墽琛屽懡浠わ細 sudo python epd_2in9bc_test.py -娉ㄦ剰锛氬浜巈pd_1in54_V2_test.py鍜宔pd_2in13_V2_test.py璇锋敞鎰忎綘鐨勫睆骞曡儗闈㈡槸鍚﹁创鏈塚2鏍囪瘑銆 \ No newline at end of file +娉ㄦ剰锛氬浜巈pd_1in54_V2_test.py鍜宔pd_2in13_V2_test.py璇锋敞鎰忎綘鐨勫睆骞曡儗闈㈡槸鍚﹁创鏈塚2鏍囪瘑銆 diff --git a/Jetson Nano/python2/readme_EN.txt b/RaspberryPi&JetsonNano/python/readme_jetson_EN.txt similarity index 90% rename from Jetson Nano/python2/readme_EN.txt rename to RaspberryPi&JetsonNano/python/readme_jetson_EN.txt index 2904db3..b732211 100644 --- a/Jetson Nano/python2/readme_EN.txt +++ b/RaspberryPi&JetsonNano/python/readme_jetson_EN.txt @@ -35,6 +35,14 @@ RST -> 17 BUSY -> 24 3.Installation library + sudo apt-get update + sudo apt-get install python-pip + sudo apt-get install python-pil + sudo apt-get install python-numpy + sudo pip install Jetson.GPIO + +or + sudo apt-get update sudo apt-get install python3-pip sudo apt-get install python3-pil @@ -53,4 +61,4 @@ Chestnut 2: 聽聽聽聽 Then you should execute the command: 聽聽聽聽 Sudo python epd_2in9bc_test.py 聽聽聽聽 -Note: For epd_1in54_V2_test.py and epd_2in13_V2_test.py, please note that the V2 logo is attached to the back of your screen. \ No newline at end of file +Note: For epd_1in54_V2_test.py and epd_2in13_V2_test.py, please note that the V2 logo is attached to the back of your screen. diff --git a/Raspberry Pi/python3/readme_CN.txt b/RaspberryPi&JetsonNano/python/readme_rpi_CN.txt similarity index 90% rename from Raspberry Pi/python3/readme_CN.txt rename to RaspberryPi&JetsonNano/python/readme_rpi_CN.txt index 67ca2bc..6ed14ae 100644 --- a/Raspberry Pi/python3/readme_CN.txt +++ b/RaspberryPi&JetsonNano/python/readme_rpi_CN.txt @@ -30,6 +30,14 @@ RST -> 17 BUSY -> 24 3.瀹夎搴擄細 + sudo apt-get update + sudo apt-get install python-pip + sudo apt-get install python-pil + sudo apt-get install python-numpy + sudo pip install RPi.GPIO + +鎴 + sudo apt-get update sudo apt-get install python3-pip sudo apt-get install python3-pil @@ -48,4 +56,4 @@ BUSY -> 24 閭d箞浣犲簲璇ユ墽琛屽懡浠わ細 sudo python epd_2in9bc_test.py -娉ㄦ剰锛氬浜巈pd_1in54_V2_test.py鍜宔pd_2in13_V2_test.py璇锋敞鎰忎綘鐨勫睆骞曡儗闈㈡槸鍚﹁创鏈塚2鏍囪瘑銆 \ No newline at end of file +娉ㄦ剰锛氬浜巈pd_1in54_V2_test.py鍜宔pd_2in13_V2_test.py璇锋敞鎰忎綘鐨勫睆骞曡儗闈㈡槸鍚﹁创鏈塚2鏍囪瘑銆 diff --git a/Raspberry Pi/python3/readme_EN.txt b/RaspberryPi&JetsonNano/python/readme_rpi_EN.txt similarity index 90% rename from Raspberry Pi/python3/readme_EN.txt rename to RaspberryPi&JetsonNano/python/readme_rpi_EN.txt index 68ab9d5..659ee04 100644 --- a/Raspberry Pi/python3/readme_EN.txt +++ b/RaspberryPi&JetsonNano/python/readme_rpi_EN.txt @@ -31,6 +31,14 @@ RST -> 17 BUSY -> 24 3.Installation library + sudo apt-get update + sudo apt-get install python-pip + sudo apt-get install python-pil + sudo apt-get install python-numpy + sudo pip install RPi.GPIO + +or + sudo apt-get update sudo apt-get install python3-pip sudo apt-get install python3-pil @@ -49,4 +57,4 @@ Chestnut 2: 聽聽聽聽 Then you should execute the command: 聽聽聽聽 Sudo python epd_2in9bc_test.py 聽聽聽聽 -Note: For epd_1in54_V2_test.py and epd_2in13_V2_test.py, please note that the V2 logo is attached to the back of your screen. \ No newline at end of file +Note: For epd_1in54_V2_test.py and epd_2in13_V2_test.py, please note that the V2 logo is attached to the back of your screen. diff --git a/RaspberryPi&JetsonNano/python/setup.py b/RaspberryPi&JetsonNano/python/setup.py new file mode 100644 index 0000000..7ca1805 --- /dev/null +++ b/RaspberryPi&JetsonNano/python/setup.py @@ -0,0 +1,12 @@ +import sys +from setuptools import setup + + +setup( + name='waveshare-epd', + description='Waveshare e-Paper Display', + author='Waveshare', + package_dir={'': 'lib'}, + packages=['waveshare_epd'], +) + diff --git a/STM32/STM32-F103ZET6/MDK-ARM/epd-demo.uvguix.Ezio b/STM32/STM32-F103ZET6/MDK-ARM/epd-demo.uvguix.Ezio index 6eda792..482134d 100644 --- a/STM32/STM32-F103ZET6/MDK-ARM/epd-demo.uvguix.Ezio +++ b/STM32/STM32-F103ZET6/MDK-ARM/epd-demo.uvguix.Ezio @@ -11,7 +11,7 @@ 38003 Registers - 188 87 + 188 122 346 @@ -91,17 +91,17 @@ -1 - 97 - 42 - 1266 - 1335 + 39 + 209 + 1433 + 1406 0 - 627 - 0100000004000000010000000100000001000000010000000000000002000000000000000100000001000000000000002800000028000000010000000400000001000000010000005A473A5C4D6F646F756C655C652D50617065725C636F64655C3139303631315C652D50617065725F636F64655C53544D33325C53544D33322D463130335A4554365C557365725C652D50617065725C4550445F32696E3133642E63000000000C4550445F32696E3133642E6300000000FFDC7800FFFFFFFF58473A5C4D6F646F756C655C652D50617065725C636F64655C3139303631315C652D50617065725F636F64655C53544D33325C53544D33322D463130335A4554365C557365725C652D50617065725C4550445F37696E352E63000000000A4550445F37696E352E6300000000BECEA100FFFFFFFF5A473A5C4D6F646F756C655C652D50617065725C636F64655C3139303631315C652D50617065725F636F64655C53544D33325C53544D33322D463130335A4554365C557365725C652D50617065725C4550445F37696E3562632E63000000000C4550445F37696E3562632E6300000000F0A0A100FFFFFFFF4B473A5C4D6F646F756C655C652D50617065725C636F64655C3139303631315C652D50617065725F636F64655C53544D33325C53544D33322D463130335A4554365C5372635C6D61696E2E6300000000066D61696E2E6300000000BCA8E100FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD50001000000000000000200000053010000CF000000EA0400001C040000 + 630 + 0100000004000000010000000100000001000000010000000000000002000000000000000100000001000000000000002800000028000000010000000400000000000000010000004B473A5C4D6F646F756C655C652D50617065725C636F64655C3139303631315C652D50617065725F636F64655C53544D33325C53544D33322D463130335A4554365C5372635C6D61696E2E6300000000076D61696E2E632A00000000FFDC7800FFFFFFFF62473A5C4D6F646F756C655C652D50617065725C636F64655C3139303631315C652D50617065725F636F64655C53544D33325C53544D33322D463130335A4554365C557365725C4578616D706C65735C4550445F31696E35345F56325F746573742E6300000000134550445F31696E35345F56325F746573742E6300000000BECEA100FFFFFFFF5C473A5C4D6F646F756C655C652D50617065725C636F64655C3139303631315C652D50617065725F636F64655C53544D33325C53544D33322D463130335A4554365C557365725C652D50617065725C4550445F31696E35345F56322E63000000000E4550445F31696E35345F56322E6300000000F0A0A100FFFFFFFF4B473A5C4D6F646F756C655C652D50617065725C636F64655C3139303631315C652D50617065725F636F64655C53544D33325C53544D33322D463130335A4554365C5372635C6770696F2E6300000000066770696F2E6300000000BCA8E100FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD5000100000000000000020000001D020000950000009105000099040000 @@ -110,7 +110,7 @@ -1 -1 - 1 + 0 0 0 0 @@ -120,11 +120,11 @@ 0 16 - 000000004F0000001D0100009C030000 + 440100004F0000007007000015010000 16 - A104000097000000BE050000FE030000 + 1702000095000000430800005B010000 @@ -140,11 +140,11 @@ 0 16 - 03000000660000001A01000083030000 + 03000000660000003D0100003A040000 16 - 4106000068020000780700005E060000 + BE000000D5000000FE010000E8010000 @@ -160,11 +160,11 @@ 0 16 - 03000000660000001A01000083030000 + 03000000660000003D0100003A040000 16 - 4106000068020000780700005E060000 + BE000000D50000003A020000ED030000 @@ -184,7 +184,7 @@ 16 - D8000000EF00000090040000B5010000 + BE000000D5000000760400009B010000 @@ -204,7 +204,7 @@ 16 - D8000000EF00000090040000B5010000 + BE000000D5000000760400009B010000 @@ -224,7 +224,7 @@ 16 - D8000000EF00000090040000B5010000 + BE000000D5000000760400009B010000 @@ -244,7 +244,7 @@ 16 - D8000000EF00000090040000B5010000 + BE000000D5000000760400009B010000 @@ -264,7 +264,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -284,7 +284,7 @@ 16 - D8000000EF00000090040000B5010000 + BE000000D5000000760400009B010000 @@ -304,7 +304,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -324,7 +324,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -344,7 +344,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -364,7 +364,7 @@ 16 - D8000000EF00000090040000B5010000 + BE000000D5000000760400009B010000 @@ -384,7 +384,7 @@ 16 - D8000000EF00000090040000B5010000 + BE000000D5000000760400009B010000 @@ -404,7 +404,7 @@ 16 - D8000000EF00000090040000B5010000 + BE000000D5000000760400009B010000 @@ -424,7 +424,7 @@ 16 - D8000000EF00000090040000B5010000 + BE000000D5000000760400009B010000 @@ -440,11 +440,11 @@ 0 16 - 03000000660000001A01000083030000 + 03000000660000003D0100003A040000 16 - 4106000068020000780700005E060000 + BE000000D50000003A020000ED030000 @@ -460,11 +460,11 @@ 0 16 - 03000000660000001A01000083030000 + 03000000660000003D0100003A040000 16 - 4106000068020000780700005E060000 + BE000000D50000003A020000ED030000 @@ -480,11 +480,11 @@ 0 16 - 03000000B7030000B504000083040000 + 000000006B040000B80400001D050000 16 - D8000000EF00000090040000B5010000 + BE000000D5000000760400009B010000 @@ -504,7 +504,7 @@ 16 - D8000000EF00000090040000B5010000 + BE000000D5000000760400009B010000 @@ -520,11 +520,11 @@ 0 16 - 03000000B7030000B504000083040000 + 030000006E040000B504000004050000 16 - D8000000EF00000090040000B5010000 + BE000000D5000000760400009B010000 @@ -544,7 +544,7 @@ 16 - D8000000EF00000090040000B5010000 + BE000000D5000000760400009B010000 @@ -564,7 +564,7 @@ 16 - D8000000EF00000090040000B5010000 + BE000000D5000000760400009B010000 @@ -604,7 +604,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -624,7 +624,7 @@ 16 - D8000000EF00000090040000B5010000 + BE000000D5000000760400009B010000 @@ -644,7 +644,7 @@ 16 - D8000000EF00000090040000B5010000 + BE000000D5000000760400009B010000 @@ -664,7 +664,7 @@ 16 - D8000000EF00000090040000B5010000 + BE000000D5000000760400009B010000 @@ -684,7 +684,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -704,7 +704,7 @@ 16 - D8000000EF00000090040000B5010000 + BE000000D5000000760400009B010000 @@ -724,7 +724,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -744,7 +744,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -764,7 +764,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -784,7 +784,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -804,7 +804,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -824,7 +824,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -844,7 +844,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -864,7 +864,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -884,7 +884,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -904,7 +904,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -924,7 +924,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -944,7 +944,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -964,7 +964,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -984,7 +984,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -1004,7 +1004,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -1024,7 +1024,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -1044,7 +1044,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -1064,7 +1064,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -1084,7 +1084,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -1104,7 +1104,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -1124,7 +1124,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -1140,17 +1140,17 @@ 0 16 - 03000000660000001A0100009D030000 + 03000000660000003D0100003A040000 16 - 4106000068020000780700005E060000 + BE000000D50000003A020000ED030000 38007 38007 - 1 + 0 0 0 0 @@ -1160,11 +1160,11 @@ 0 16 - 03000000B7030000B504000083040000 + 030000006E040000B504000004050000 16 - D8000000EF00000090040000B5010000 + BE000000D5000000760400009B010000 @@ -1180,11 +1180,11 @@ 0 16 - 03000000B7030000B504000083040000 + 030000006E040000B504000004050000 16 - D8000000EF0000005402000007040000 + BE000000D50000003A020000ED030000 @@ -1204,7 +1204,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -1224,7 +1224,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -1240,11 +1240,11 @@ 0 16 - 03000000B7030000B504000083040000 + 030000006E040000B504000004050000 16 - D8000000EF0000005402000007040000 + BE000000D50000003A020000ED030000 @@ -1260,11 +1260,11 @@ 0 16 - 03000000B7030000B504000083040000 + 030000006E040000B504000004050000 16 - D8000000EF0000005402000007040000 + BE000000D50000003A020000ED030000 @@ -1284,7 +1284,7 @@ 16 - D8000000EF00000090040000B5010000 + BE000000D5000000760400009B010000 @@ -1304,7 +1304,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -1324,7 +1324,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -1344,7 +1344,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -1364,7 +1364,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -1384,7 +1384,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -1404,7 +1404,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -1424,7 +1424,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -1444,7 +1444,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -1464,7 +1464,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -1484,7 +1484,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -1504,7 +1504,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -1524,13 +1524,13 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 50012 50012 - 1 + 0 0 0 0 @@ -1540,11 +1540,11 @@ 0 16 - 47010000660000006D07000081000000 + 33060000660000006D070000E8020000 16 - 0A0000000A0000006E0000006E000000 + BE000000D5000000FE010000E8010000 @@ -1564,7 +1564,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -1584,7 +1584,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -1604,7 +1604,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -1624,7 +1624,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -1644,7 +1644,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -1664,7 +1664,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -1684,7 +1684,7 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 @@ -1720,7 +1720,7 @@ 0 16 - 000000009C040000B8040000AF040000 + 000000001D050000B804000030050000 16 @@ -1784,19 +1784,19 @@ 16 - D8000000EF0000001802000002020000 + BE000000D5000000FE010000E8010000 - 3337 - 000000000B000000000000000010000001000000FFFFFFFFFFFFFFFF1D0100004F000000210100009C03000001000000020000100400000001000000F0FEFFFFE303000000000000000000000000000001000000FFFFFFFF05000000ED0300006D000000C3000000C400000073940000FFFF02000B004354616262656450616E650010000001000000A104000097000000BE050000FE030000000000004F0000001D0100009C0300000000000040410056050000000750726F6A65637401000000ED03000001000000FFFFFFFFFFFFFFFF05426F6F6B73010000006D00000001000000FFFFFFFFFFFFFFFF0946756E6374696F6E7301000000C300000001000000FFFFFFFFFFFFFFFF0954656D706C6174657301000000C400000001000000FFFFFFFFFFFFFFFF09526567697374657273000000007394000001000000FFFFFFFFFFFFFFFF0000000000000000000000000000000000000000000000000000000001000000FFFFFFFFED03000001000000FFFFFFFFED030000000000000020000000000000FFFFFFFFFFFFFFFF44010000150100007007000019010000000000000100000004000000010000000000000000000000FFFFFFFF08000000CB00000057010000CC000000F08B00005A01000079070000D60100004589000001800020000000000000E505000097000000110C00005D010000440100004F00000070070000150100000000000040280046080000000B446973617373656D626C7900000000CB00000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A6572000000005701000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A657200000000CC00000001000000FFFFFFFFFFFFFFFF0E4C6F67696320416E616C797A657200000000F08B000001000000FFFFFFFFFFFFFFFF0D436F646520436F766572616765000000005A01000001000000FFFFFFFFFFFFFFFF11496E737472756374696F6E205472616365000000007907000001000000FFFFFFFFFFFFFFFF0F53797374656D20416E616C797A657200000000D601000001000000FFFFFFFFFFFFFFFF104576656E742053746174697374696373000000004589000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFCB00000001000000FFFFFFFFCB000000000000000040000000000000FFFFFFFFFFFFFFFF2C0600004F0000003006000001030000000000000200000004000000010000000000000000000000FFFFFFFF2B000000E2050000CA0900002D8C00002E8C00002F8C0000308C0000318C0000328C0000338C0000348C0000358C0000368C0000378C0000388C0000398C00003A8C00003B8C00003C8C00003D8C00003E8C00003F8C0000408C0000418C000050C3000051C3000052C3000053C3000054C3000055C3000056C3000057C3000058C3000059C300005AC300005BC300005CC300005DC300005EC300005FC3000060C3000061C3000062C3000063C3000001800040000000000000D10A000097000000110C000049030000300600004F000000700700000103000000000000404100462B0000000753796D626F6C7300000000E205000001000000FFFFFFFFFFFFFFFF0A5472616365204461746100000000CA09000001000000FFFFFFFFFFFFFFFF00000000002D8C000001000000FFFFFFFFFFFFFFFF00000000002E8C000001000000FFFFFFFFFFFFFFFF00000000002F8C000001000000FFFFFFFFFFFFFFFF0000000000308C000001000000FFFFFFFFFFFFFFFF0000000000318C000001000000FFFFFFFFFFFFFFFF0000000000328C000001000000FFFFFFFFFFFFFFFF0000000000338C000001000000FFFFFFFFFFFFFFFF0000000000348C000001000000FFFFFFFFFFFFFFFF0000000000358C000001000000FFFFFFFFFFFFFFFF0000000000368C000001000000FFFFFFFFFFFFFFFF0000000000378C000001000000FFFFFFFFFFFFFFFF0000000000388C000001000000FFFFFFFFFFFFFFFF0000000000398C000001000000FFFFFFFFFFFFFFFF00000000003A8C000001000000FFFFFFFFFFFFFFFF00000000003B8C000001000000FFFFFFFFFFFFFFFF00000000003C8C000001000000FFFFFFFFFFFFFFFF00000000003D8C000001000000FFFFFFFFFFFFFFFF00000000003E8C000001000000FFFFFFFFFFFFFFFF00000000003F8C000001000000FFFFFFFFFFFFFFFF0000000000408C000001000000FFFFFFFFFFFFFFFF0000000000418C000001000000FFFFFFFFFFFFFFFF000000000050C3000001000000FFFFFFFFFFFFFFFF000000000051C3000001000000FFFFFFFFFFFFFFFF000000000052C3000001000000FFFFFFFFFFFFFFFF000000000053C3000001000000FFFFFFFFFFFFFFFF000000000054C3000001000000FFFFFFFFFFFFFFFF000000000055C3000001000000FFFFFFFFFFFFFFFF000000000056C3000001000000FFFFFFFFFFFFFFFF000000000057C3000001000000FFFFFFFFFFFFFFFF000000000058C3000001000000FFFFFFFFFFFFFFFF000000000059C3000001000000FFFFFFFFFFFFFFFF00000000005AC3000001000000FFFFFFFFFFFFFFFF00000000005BC3000001000000FFFFFFFFFFFFFFFF00000000005CC3000001000000FFFFFFFFFFFFFFFF00000000005DC3000001000000FFFFFFFFFFFFFFFF00000000005EC3000001000000FFFFFFFFFFFFFFFF00000000005FC3000001000000FFFFFFFFFFFFFFFF000000000060C3000001000000FFFFFFFFFFFFFFFF000000000061C3000001000000FFFFFFFFFFFFFFFF000000000062C3000001000000FFFFFFFFFFFFFFFF000000000063C3000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFE205000001000000FFFFFFFFE2050000000000000080000000000000FFFFFFFFFFFFFFFF00000000ED02000070070000F102000000000000010000000400000001000000000000000000000000000000000000000000000001000000C6000000FFFFFFFF0F0000008F070000930700009407000095070000960700009007000091070000B5010000B801000038030000B9050000BA050000BB050000BC050000CB09000001800080000000000000A104000039030000110C00001304000000000000F102000070070000CB03000000000000404100460F0000001343616C6C20537461636B202B204C6F63616C73000000008F07000001000000FFFFFFFFFFFFFFFF0755415254202331000000009307000001000000FFFFFFFFFFFFFFFF0755415254202332000000009407000001000000FFFFFFFFFFFFFFFF0755415254202333000000009507000001000000FFFFFFFFFFFFFFFF15446562756720287072696E74662920566965776572000000009607000001000000FFFFFFFFFFFFFFFF0757617463682031000000009007000001000000FFFFFFFFFFFFFFFF0757617463682032000000009107000001000000FFFFFFFFFFFFFFFF10547261636520457863657074696F6E7300000000B501000001000000FFFFFFFFFFFFFFFF0E4576656E7420436F756E7465727300000000B801000001000000FFFFFFFFFFFFFFFF09554C494E4B706C7573000000003803000001000000FFFFFFFFFFFFFFFF084D656D6F7279203100000000B905000001000000FFFFFFFFFFFFFFFF084D656D6F7279203200000000BA05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203300000000BB05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203400000000BC05000001000000FFFFFFFFFFFFFFFF105472616365204E617669676174696F6E00000000CB09000001000000FFFFFFFFFFFFFFFFFFFFFFFF0000000001000000000000000000000001000000FFFFFFFFB8030000F1020000BC030000CB03000000000000020000000400000000000000000000000000000000000000000000000000000002000000C6000000FFFFFFFF8F07000001000000FFFFFFFF8F07000001000000C6000000000000000080000001000000FFFFFFFFFFFFFFFF000000009C030000B8040000A003000001000000010000100400000001000000D9FBFFFFC4000000FFFFFFFF06000000C5000000C7000000B4010000D2010000CF0100007794000001800080000001000000A10400000204000059090000FE04000000000000A0030000B80400009C0400000000000040820056060000000C4275696C64204F757470757401000000C500000001000000FFFFFFFFFFFFFFFF0D46696E6420496E2046696C657300000000C700000001000000FFFFFFFFFFFFFFFF0A4572726F72204C69737400000000B401000001000000FFFFFFFFFFFFFFFF0E536F757263652042726F7773657200000000D201000001000000FFFFFFFFFFFFFFFF1346696E6420416C6C205265666572656E63657300000000CF01000001000000FFFFFFFFFFFFFFFF0742726F77736572010000007794000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFC500000001000000FFFFFFFFC5000000000000000000000000000000 + 3317 + 000000000B000000000000000020000000000000FFFFFFFFFFFFFFFF44010000150100007007000019010000000000000100000004000000010000000000000000000000FFFFFFFF08000000CB00000057010000CC000000F08B00005A01000079070000D601000045890000FFFF02000B004354616262656450616E6500200000000000001702000095000000430800005B010000440100004F00000070070000150100000000000040280046080000000B446973617373656D626C7900000000CB00000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A6572000000005701000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A657200000000CC00000001000000FFFFFFFFFFFFFFFF0E4C6F67696320416E616C797A657200000000F08B000001000000FFFFFFFFFFFFFFFF0D436F646520436F766572616765000000005A01000001000000FFFFFFFFFFFFFFFF11496E737472756374696F6E205472616365000000007907000001000000FFFFFFFFFFFFFFFF0F53797374656D20416E616C797A657200000000D601000001000000FFFFFFFFFFFFFFFF104576656E742053746174697374696373000000004589000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFCB00000001000000FFFFFFFFCB000000000000000040000000000000FFFFFFFFFFFFFFFF2C0600004F0000003006000001030000000000000200000004000000010000000000000000000000FFFFFFFF2B000000E2050000CA0900002D8C00002E8C00002F8C0000308C0000318C0000328C0000338C0000348C0000358C0000368C0000378C0000388C0000398C00003A8C00003B8C00003C8C00003D8C00003E8C00003F8C0000408C0000418C000050C3000051C3000052C3000053C3000054C3000055C3000056C3000057C3000058C3000059C300005AC300005BC300005CC300005DC300005EC300005FC3000060C3000061C3000062C3000063C300000180004000000000000003070000950000004308000047030000300600004F000000700700000103000000000000404100462B0000000753796D626F6C7300000000E205000001000000FFFFFFFFFFFFFFFF0A5472616365204461746100000000CA09000001000000FFFFFFFFFFFFFFFF00000000002D8C000001000000FFFFFFFFFFFFFFFF00000000002E8C000001000000FFFFFFFFFFFFFFFF00000000002F8C000001000000FFFFFFFFFFFFFFFF0000000000308C000001000000FFFFFFFFFFFFFFFF0000000000318C000001000000FFFFFFFFFFFFFFFF0000000000328C000001000000FFFFFFFFFFFFFFFF0000000000338C000001000000FFFFFFFFFFFFFFFF0000000000348C000001000000FFFFFFFFFFFFFFFF0000000000358C000001000000FFFFFFFFFFFFFFFF0000000000368C000001000000FFFFFFFFFFFFFFFF0000000000378C000001000000FFFFFFFFFFFFFFFF0000000000388C000001000000FFFFFFFFFFFFFFFF0000000000398C000001000000FFFFFFFFFFFFFFFF00000000003A8C000001000000FFFFFFFFFFFFFFFF00000000003B8C000001000000FFFFFFFFFFFFFFFF00000000003C8C000001000000FFFFFFFFFFFFFFFF00000000003D8C000001000000FFFFFFFFFFFFFFFF00000000003E8C000001000000FFFFFFFFFFFFFFFF00000000003F8C000001000000FFFFFFFFFFFFFFFF0000000000408C000001000000FFFFFFFFFFFFFFFF0000000000418C000001000000FFFFFFFFFFFFFFFF000000000050C3000001000000FFFFFFFFFFFFFFFF000000000051C3000001000000FFFFFFFFFFFFFFFF000000000052C3000001000000FFFFFFFFFFFFFFFF000000000053C3000001000000FFFFFFFFFFFFFFFF000000000054C3000001000000FFFFFFFFFFFFFFFF000000000055C3000001000000FFFFFFFFFFFFFFFF000000000056C3000001000000FFFFFFFFFFFFFFFF000000000057C3000001000000FFFFFFFFFFFFFFFF000000000058C3000001000000FFFFFFFFFFFFFFFF000000000059C3000001000000FFFFFFFFFFFFFFFF00000000005AC3000001000000FFFFFFFFFFFFFFFF00000000005BC3000001000000FFFFFFFFFFFFFFFF00000000005CC3000001000000FFFFFFFFFFFFFFFF00000000005DC3000001000000FFFFFFFFFFFFFFFF00000000005EC3000001000000FFFFFFFFFFFFFFFF00000000005FC3000001000000FFFFFFFFFFFFFFFF000000000060C3000001000000FFFFFFFFFFFFFFFF000000000061C3000001000000FFFFFFFFFFFFFFFF000000000062C3000001000000FFFFFFFFFFFFFFFF000000000063C3000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFE205000001000000FFFFFFFFE2050000000000000010000001000000FFFFFFFFFFFFFFFF400100004F0000004401000053040000010000000200001004000000010000000000000000000000FFFFFFFF05000000ED0300006D000000C3000000C40000007394000001800010000001000000D3000000950000001302000099040000000000004F00000040010000530400000000000040410056050000000750726F6A65637401000000ED03000001000000FFFFFFFFFFFFFFFF05426F6F6B73010000006D00000001000000FFFFFFFFFFFFFFFF0946756E6374696F6E7301000000C300000001000000FFFFFFFFFFFFFFFF0954656D706C6174657301000000C400000001000000FFFFFFFFFFFFFFFF09526567697374657273000000007394000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFED03000001000000FFFFFFFFED030000000000000080000000000000FFFFFFFFFFFFFFFF00000000ED02000070070000F102000000000000010000000400000001000000000000000000000000000000000000000000000001000000C6000000FFFFFFFF0F0000008F070000930700009407000095070000960700009007000091070000B5010000B801000038030000B9050000BA050000BB050000BC050000CB09000001800080000000000000D300000037030000430800001104000000000000F102000070070000CB03000000000000404100460F0000001343616C6C20537461636B202B204C6F63616C73000000008F07000001000000FFFFFFFFFFFFFFFF0755415254202331000000009307000001000000FFFFFFFFFFFFFFFF0755415254202332000000009407000001000000FFFFFFFFFFFFFFFF0755415254202333000000009507000001000000FFFFFFFFFFFFFFFF15446562756720287072696E74662920566965776572000000009607000001000000FFFFFFFFFFFFFFFF0757617463682031000000009007000001000000FFFFFFFFFFFFFFFF0757617463682032000000009107000001000000FFFFFFFFFFFFFFFF10547261636520457863657074696F6E7300000000B501000001000000FFFFFFFFFFFFFFFF0E4576656E7420436F756E7465727300000000B801000001000000FFFFFFFFFFFFFFFF09554C494E4B706C7573000000003803000001000000FFFFFFFFFFFFFFFF084D656D6F7279203100000000B905000001000000FFFFFFFFFFFFFFFF084D656D6F7279203200000000BA05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203300000000BB05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203400000000BC05000001000000FFFFFFFFFFFFFFFF105472616365204E617669676174696F6E00000000CB09000001000000FFFFFFFFFFFFFFFFFFFFFFFF0000000001000000000000000000000001000000FFFFFFFFB8030000F1020000BC030000CB03000000000000020000000400000000000000000000000000000000000000000000000000000002000000C6000000FFFFFFFF8F07000001000000FFFFFFFF8F07000001000000C6000000000000000080000001000000FFFFFFFFFFFFFFFF0000000053040000B804000057040000010000000100001004000000010000000000000000000000FFFFFFFF06000000C5000000C7000000B4010000D2010000CF0100007794000001800080000001000000D30000009D0400008B050000630500000000000057040000B80400001D0500000000000040820056060000000C4275696C64204F757470757401000000C500000001000000FFFFFFFFFFFFFFFF0D46696E6420496E2046696C657300000000C700000001000000FFFFFFFFFFFFFFFF0A4572726F72204C69737400000000B401000001000000FFFFFFFFFFFFFFFF0E536F757263652042726F7773657200000000D201000001000000FFFFFFFFFFFFFFFF1346696E6420416C6C205265666572656E63657300000000CF01000001000000FFFFFFFFFFFFFFFF0742726F77736572000000007794000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFC500000001000000FFFFFFFFC5000000000000000000000000000000 59392 File - 2504 - 00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000000000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000004000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE80300000000000000000000000000000000000000000000000100000001000000960000000200205000000000043F3F3F3F96000000000000001400043F3F3F3F0A4550445F32494E3133440632494E313344066C75745F6262066C75745F7762096C75745F76636F6D31066C75745F6277066C75745F77770A6C75745F76636F6D4443114550445F57616974556E74696C49646C650E4550445F53657450617274526567094550445F57494454480A4550445F484549474854114550445F5475726E4F6E446973706C61790C4550445F53656E64446174610F4550445F53656E64436F6D6D616E64094550445F52657365740B4550445F35494E383342430434494E320635494E38335F0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000000160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000000180C8880000000000001700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000001000000000000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65B9030000 + 2582 + 00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000000000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000004000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE8030000000000000000000000000000000000000000000000010000000100000096000000020020500000000015736F6674776172655F7370692E4D4F53495F50494E9600000000000000140015736F6674776172655F7370692E4D4F53495F50494E15736F6674776172655F7370692E53434C4B5F50494E114550445F5732315F577269746544415441124550445F5732315F57726974654441544120104550445F5732315F5772697465434D440F4570617065725F5245414442555359114570617065725F57726974655F44617461144570617065725F57726974655F436F6D6D616E64043F3F3F3F0A4550445F32494E3133440632494E313344066C75745F6262066C75745F7762096C75745F76636F6D31066C75745F6277066C75745F77770A6C75745F76636F6D4443114550445F57616974556E74696C49646C650E4550445F53657450617274526567094550445F57494454480000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000000160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000000180C8880000000000001700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000001000000000000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65B9030000 1423 @@ -1852,39 +1852,39 @@ 0 100 - 1 - - ..\User\e-Paper\EPD_2in13d.c - 0 - 411 - 412 - 1 - - 0 - - - ..\User\e-Paper\EPD_7in5.c - 30 - 150 - 163 - 1 - - 0 - - - ..\User\e-Paper\EPD_7in5bc.c - 31 - 151 - 152 - 1 - - 0 - + 0 ../Src/main.c - 21 + 1 58 - 82 + 112 + 1 + + 0 + + + ..\User\Examples\EPD_1in54_V2_test.c + 23 + 26 + 39 + 1 + 67,99 + 0 + + + ..\User\e-Paper\EPD_1in54_V2.c + 0 + 204 + 258 + 1 + + 0 + + + ../Src/gpio.c + 47 + 1 + 5 1 0 diff --git a/STM32/STM32-F103ZET6/MDK-ARM/epd-demo.uvoptx b/STM32/STM32-F103ZET6/MDK-ARM/epd-demo.uvoptx index d884f94..47c0e17 100644 --- a/STM32/STM32-F103ZET6/MDK-ARM/epd-demo.uvoptx +++ b/STM32/STM32-F103ZET6/MDK-ARM/epd-demo.uvoptx @@ -738,7 +738,7 @@ e-Paper - 1 + 0 0 0 0 diff --git a/STM32/STM32-F103ZET6/MDK-ARM/epd-demo/epd-demo.build_log.htm b/STM32/STM32-F103ZET6/MDK-ARM/epd-demo/epd-demo.build_log.htm index 6edabfd..41cb8c1 100644 --- a/STM32/STM32-F103ZET6/MDK-ARM/epd-demo/epd-demo.build_log.htm +++ b/STM32/STM32-F103ZET6/MDK-ARM/epd-demo/epd-demo.build_log.htm @@ -27,80 +27,14 @@ Project File Date: 06/21/2019

Output:

*** Using Compiler 'V5.06 update 6 (build 750)', folder: 'E:\Keil_v5\ARM\ARMCC\Bin' Build target 'epd-demo' -compiling gpio.c... -compiling spi.c... -compiling main.c... -compiling stm32f1xx_it.c... -compiling usart.c... -compiling stm32f1xx_hal_msp.c... -compiling stm32f1xx_hal_spi_ex.c... -compiling stm32f1xx_hal_gpio_ex.c... -compiling stm32f1xx_hal_spi.c... -compiling stm32f1xx_hal_tim.c... -compiling stm32f1xx_hal_tim_ex.c... -compiling stm32f1xx_hal_uart.c... -compiling stm32f1xx_hal.c... -compiling stm32f1xx_hal_rcc_ex.c... -compiling stm32f1xx_hal_rcc.c... -compiling stm32f1xx_hal_cortex.c... -compiling stm32f1xx_hal_gpio.c... -compiling stm32f1xx_hal_dma.c... -compiling stm32f1xx_hal_pwr.c... -compiling stm32f1xx_hal_flash.c... -compiling stm32f1xx_hal_flash_ex.c... -compiling ImageData.c... -compiling system_stm32f1xx.c... -compiling EPD_1in54_test.c... compiling EPD_1in54_V2_test.c... -compiling EPD_1in54b_test.c... -compiling EPD_1in54c_test.c... -compiling EPD_2in7_test.c... -compiling EPD_2in9_test.c... -compiling EPD_2in7b_test.c... -compiling EPD_2in9bc_test.c... -compiling EPD_2in13_V2_test.c... -compiling EPD_2in9d_test.c... -compiling EPD_2in13_test.c... -compiling EPD_4in2_test.c... -compiling EPD_2in13bc_test.c... -compiling EPD_2in13d_test.c... -compiling EPD_5in83bc_test.c... -compiling EPD_5in83_test.c... -compiling EPD_4in2bc_test.c... -compiling EPD_7in5bc_test.c... -compiling EPD_7in5_test.c... -compiling EPD_1in54.c... -compiling EPD_1in54_V2.c... -compiling EPD_1in54b.c... -compiling EPD_1in54c.c... -compiling EPD_2in7b.c... -compiling EPD_2in9.c... -compiling EPD_2in7.c... -compiling EPD_2in9bc.c... -compiling EPD_2in9d.c... -compiling EPD_2in13.c... -compiling EPD_2in13_V2.c... -compiling EPD_2in13bc.c... -compiling EPD_2in13d.c... -compiling EPD_5in83.c... -compiling EPD_4in2.c... -compiling EPD_4in2bc.c... -compiling EPD_7in5bc.c... -compiling EPD_7in5.c... -compiling EPD_5in83bc.c... -compiling font8.c... -compiling font12.c... -compiling font12CN.c... -compiling font16.c... -compiling DEV_Config.c... -compiling font20.c... -compiling GUI_Paint.c... -compiling font24.c... -compiling font24CN.c... +..\User\Examples\EPD_1in54_V2_test.c(151): warning: #111-D: statement is unreachable + printf("close 5V, Module enters 0 power consumption ...\r\n"); +..\User\Examples\EPD_1in54_V2_test.c: 1 warning, 0 errors linking... -Program Size: Code=21040 RO-data=20224 RW-data=68 ZI-data=41140 +Program Size: Code=20616 RO-data=5596 RW-data=28 ZI-data=41140 FromELF: creating hex file... -"epd-demo\epd-demo.axf" - 0 Error(s), 0 Warning(s). +"epd-demo\epd-demo.axf" - 0 Error(s), 1 Warning(s).

Software Packages used:

@@ -123,7 +57,7 @@ Package Vendor: Keil

Collection of Component Files used:

* Component: ARM::CMSIS:CORE:5.1.1 -Build Time Elapsed: 00:00:41 +Build Time Elapsed: 00:00:03 diff --git a/STM32/STM32-F103ZET6/MDK-ARM/epd-demo/epd-demo.htm b/STM32/STM32-F103ZET6/MDK-ARM/epd-demo/epd-demo.htm index 4a36f04..5c308ec 100644 --- a/STM32/STM32-F103ZET6/MDK-ARM/epd-demo/epd-demo.htm +++ b/STM32/STM32-F103ZET6/MDK-ARM/epd-demo/epd-demo.htm @@ -3,11 +3,11 @@ Static Call Graph - [epd-demo\epd-demo.axf]

Static Call Graph for image epd-demo\epd-demo.axf


-

#<CALLGRAPH># ARM Linker, 5060750: Last Updated: Fri Jun 21 13:53:08 2019 +

#<CALLGRAPH># ARM Linker, 5060750: Last Updated: Fri Jul 12 11:58:23 2019

-

Maximum Stack Usage = 744 bytes + Unknown(Cycles, Untraceable Function Pointers)

+

Maximum Stack Usage = 160 bytes + Unknown(Cycles, Untraceable Function Pointers)

Call chain for Maximum Stack Depth:

-main ⇒ EPD_2in9bc_test ⇒ Paint_DrawNum ⇒ Paint_DrawString_EN ⇒ Paint_DrawChar ⇒ Paint_SetPixel ⇒ __2printf +main ⇒ EPD_1in54_V2_test ⇒ EPD_1IN54_V2_Display ⇒ EPD_1IN54_V2_TurnOnDisplay ⇒ EPD_1IN54_V2_SendData ⇒ DEV_SPI_WriteByte ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout

Mutually Recursive functions @@ -134,25 +134,25 @@ Global Symbols

__main (Thumb, 0 bytes, Stack size unknown bytes, entry.o(.ARM.Collect$$$$00000000))
[Address Reference Count : 1]

  • startup_stm32f103xe.o(.text)
-

_main_stk (Thumb, 0 bytes, Stack size unknown bytes, entry2.o(.ARM.Collect$$$$00000001)) +

_main_stk (Thumb, 0 bytes, Stack size unknown bytes, entry2.o(.ARM.Collect$$$$00000001))

_main_scatterload (Thumb, 0 bytes, Stack size unknown bytes, entry5.o(.ARM.Collect$$$$00000004))

[Calls]

  • >>   __scatterload
-

__main_after_scatterload (Thumb, 0 bytes, Stack size unknown bytes, entry5.o(.ARM.Collect$$$$00000004)) +

__main_after_scatterload (Thumb, 0 bytes, Stack size unknown bytes, entry5.o(.ARM.Collect$$$$00000004))

[Called By]

  • >>   __scatterload
-

_main_clock (Thumb, 0 bytes, Stack size unknown bytes, entry7b.o(.ARM.Collect$$$$00000008)) +

_main_clock (Thumb, 0 bytes, Stack size unknown bytes, entry7b.o(.ARM.Collect$$$$00000008)) -

_main_cpp_init (Thumb, 0 bytes, Stack size unknown bytes, entry8b.o(.ARM.Collect$$$$0000000A)) +

_main_cpp_init (Thumb, 0 bytes, Stack size unknown bytes, entry8b.o(.ARM.Collect$$$$0000000A)) -

_main_init (Thumb, 0 bytes, Stack size unknown bytes, entry9a.o(.ARM.Collect$$$$0000000B)) +

_main_init (Thumb, 0 bytes, Stack size unknown bytes, entry9a.o(.ARM.Collect$$$$0000000B)) -

__rt_final_cpp (Thumb, 0 bytes, Stack size unknown bytes, entry10a.o(.ARM.Collect$$$$0000000D)) +

__rt_final_cpp (Thumb, 0 bytes, Stack size unknown bytes, entry10a.o(.ARM.Collect$$$$0000000D)) -

__rt_final_exit (Thumb, 0 bytes, Stack size unknown bytes, entry11a.o(.ARM.Collect$$$$0000000F)) +

__rt_final_exit (Thumb, 0 bytes, Stack size unknown bytes, entry11a.o(.ARM.Collect$$$$0000000F))

Reset_Handler (Thumb, 8 bytes, Stack size 0 bytes, startup_stm32f103xe.o(.text))
[Address Reference Count : 1]

  • startup_stm32f103xe.o(RESET) @@ -363,13 +363,13 @@ Global Symbols

main (Thumb, 26 bytes, Stack size 0 bytes, main.o(.text)) -

[Stack]

  • Max Depth = 744
  • Call Chain = main ⇒ EPD_2in9bc_test ⇒ Paint_DrawNum ⇒ Paint_DrawString_EN ⇒ Paint_DrawChar ⇒ Paint_SetPixel ⇒ __2printf +

    [Stack]
    • Max Depth = 160
    • Call Chain = main ⇒ EPD_1in54_V2_test ⇒ EPD_1IN54_V2_Display ⇒ EPD_1IN54_V2_TurnOnDisplay ⇒ EPD_1IN54_V2_SendData ⇒ DEV_SPI_WriteByte ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout

    [Calls]
    • >>   MX_USART1_UART_Init
    • >>   MX_SPI1_Init
    • >>   MX_GPIO_Init
    • >>   HAL_Init -
    • >>   EPD_2in9bc_test +
    • >>   EPD_1in54_V2_test
    • >>   SystemClock_Config

    [Address Reference Count : 1]
    • entry9a.o(.ARM.Collect$$$$0000000B) @@ -507,7 +507,7 @@ Global Symbols
    • >>   SPI_CheckFlag_BSY
    • >>   SPI_WaitFlagStateUntilTimeout
    -
    [Called By]
    • >>   DEV_SPI_WriteByte +
      [Called By]
      • >>   DEV_SPI_WriteByte

      HAL_SPI_TransmitReceive (Thumb, 472 bytes, Stack size 40 bytes, stm32f1xx_hal_spi.o(.text), UNUSED) @@ -540,7 +540,7 @@ Global Symbols

    • >>   SPI_CloseTx_ISR
    -

    HAL_SPI_Transmit_IT (Thumb, 142 bytes, Stack size 12 bytes, stm32f1xx_hal_spi.o(.text), UNUSED) +

    HAL_SPI_Transmit_IT (Thumb, 142 bytes, Stack size 12 bytes, stm32f1xx_hal_spi.o(.text), UNUSED)

    HAL_SPI_RxCpltCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f1xx_hal_spi.o(.text))

    [Called By]

    • >>   SPI_DMAReceiveCplt @@ -603,9 +603,9 @@ Global Symbols
    • >>   HAL_DMA_Abort_IT
    -

    HAL_SPI_DMAPause (Thumb, 38 bytes, Stack size 0 bytes, stm32f1xx_hal_spi.o(.text), UNUSED) +

    HAL_SPI_DMAPause (Thumb, 38 bytes, Stack size 0 bytes, stm32f1xx_hal_spi.o(.text), UNUSED) -

    HAL_SPI_DMAResume (Thumb, 38 bytes, Stack size 0 bytes, stm32f1xx_hal_spi.o(.text), UNUSED) +

    HAL_SPI_DMAResume (Thumb, 38 bytes, Stack size 0 bytes, stm32f1xx_hal_spi.o(.text), UNUSED)

    HAL_SPI_DMAStop (Thumb, 40 bytes, Stack size 8 bytes, stm32f1xx_hal_spi.o(.text), UNUSED)

    [Calls]

    • >>   HAL_DMA_Abort @@ -616,11 +616,11 @@ Global Symbols
    • >>   HAL_DMA_Abort_IT
    -

    HAL_SPI_GetState (Thumb, 6 bytes, Stack size 0 bytes, stm32f1xx_hal_spi.o(.text), UNUSED) +

    HAL_SPI_GetState (Thumb, 6 bytes, Stack size 0 bytes, stm32f1xx_hal_spi.o(.text), UNUSED) -

    HAL_SPI_GetError (Thumb, 4 bytes, Stack size 0 bytes, stm32f1xx_hal_spi.o(.text), UNUSED) +

    HAL_SPI_GetError (Thumb, 4 bytes, Stack size 0 bytes, stm32f1xx_hal_spi.o(.text), UNUSED) -

    SPI_ISCRCErrorValid (Thumb, 4 bytes, Stack size 0 bytes, stm32f1xx_hal_spi.o(.text), UNUSED) +

    SPI_ISCRCErrorValid (Thumb, 4 bytes, Stack size 0 bytes, stm32f1xx_hal_spi.o(.text), UNUSED)

    HAL_SPI_Init (Thumb, 130 bytes, Stack size 16 bytes, stm32f1xx_hal_spi_ex.o(.text))

    [Stack]

    • Max Depth = 80
    • Call Chain = HAL_SPI_Init ⇒ HAL_SPI_MspInit ⇒ HAL_GPIO_Init @@ -672,9 +672,9 @@ Global Symbols
    • >>   HAL_GetTick
    -

    HAL_UART_Transmit_IT (Thumb, 62 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED) +

    HAL_UART_Transmit_IT (Thumb, 62 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED) -

    HAL_UART_Receive_IT (Thumb, 82 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED) +

    HAL_UART_Receive_IT (Thumb, 82 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED)

    HAL_UART_ErrorCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text))

    [Called By]

    • >>   HAL_UART_IRQHandler @@ -708,9 +708,9 @@ Global Symbols

      [Calls]
      • >>   HAL_DMA_Start_IT
      -

      HAL_UART_DMAPause (Thumb, 102 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED) +

      HAL_UART_DMAPause (Thumb, 102 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED) -

      HAL_UART_DMAResume (Thumb, 94 bytes, Stack size 8 bytes, stm32f1xx_hal_uart.o(.text), UNUSED) +

      HAL_UART_DMAResume (Thumb, 94 bytes, Stack size 8 bytes, stm32f1xx_hal_uart.o(.text), UNUSED)

      HAL_UART_DMAStop (Thumb, 88 bytes, Stack size 8 bytes, stm32f1xx_hal_uart.o(.text), UNUSED)

      [Calls]

      • >>   UART_EndTxTransfer @@ -770,19 +770,19 @@ Global Symbols
      • >>   HAL_DMA_Abort_IT
      -

      HAL_LIN_SendBreak (Thumb, 46 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED) +

      HAL_LIN_SendBreak (Thumb, 46 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED) -

      HAL_MultiProcessor_EnterMuteMode (Thumb, 46 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED) +

      HAL_MultiProcessor_EnterMuteMode (Thumb, 46 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED) -

      HAL_MultiProcessor_ExitMuteMode (Thumb, 46 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED) +

      HAL_MultiProcessor_ExitMuteMode (Thumb, 46 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED) -

      HAL_HalfDuplex_EnableTransmitter (Thumb, 50 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED) +

      HAL_HalfDuplex_EnableTransmitter (Thumb, 50 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED) -

      HAL_HalfDuplex_EnableReceiver (Thumb, 50 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED) +

      HAL_HalfDuplex_EnableReceiver (Thumb, 50 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED) -

      HAL_UART_GetState (Thumb, 10 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED) +

      HAL_UART_GetState (Thumb, 10 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED) -

      HAL_UART_GetError (Thumb, 4 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED) +

      HAL_UART_GetError (Thumb, 4 bytes, Stack size 0 bytes, stm32f1xx_hal_uart.o(.text), UNUSED)

      HAL_InitTick (Thumb, 54 bytes, Stack size 16 bytes, stm32f1xx_hal.o(.text))

      [Stack]

      • Max Depth = 32
      • Call Chain = HAL_InitTick ⇒ HAL_NVIC_SetPriority @@ -837,47 +837,48 @@ Global Symbols
      • >>   HAL_RCC_ClockConfig
      -

      HAL_GetTickPrio (Thumb, 6 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED) +

      HAL_GetTickPrio (Thumb, 6 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED)

      HAL_SetTickFreq (Thumb, 24 bytes, Stack size 8 bytes, stm32f1xx_hal.o(.text), UNUSED)

      [Calls]

      • >>   HAL_InitTick
      -

      HAL_GetTickFreq (Thumb, 6 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED) +

      HAL_GetTickFreq (Thumb, 6 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED)

      HAL_Delay (Thumb, 32 bytes, Stack size 16 bytes, stm32f1xx_hal.o(.text))

      [Stack]

      • Max Depth = 16
      • Call Chain = HAL_Delay

      [Calls]
      • >>   HAL_GetTick
      -
      [Called By]
      • >>   EPD_2in9bc_test -
      • >>   EPD_2IN9BC_Init -
      • >>   EPD_2IN9BC_ReadBusy +
        [Called By]
        • >>   EPD_1in54_V2_test +
        • >>   EPD_1IN54_V2_Sleep +
        • >>   EPD_1IN54_V2_Init +
        • >>   EPD_1IN54_V2_ReadBusy
        -

        HAL_SuspendTick (Thumb, 14 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED) +

        HAL_SuspendTick (Thumb, 14 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED) -

        HAL_ResumeTick (Thumb, 14 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED) +

        HAL_ResumeTick (Thumb, 14 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED) -

        HAL_GetHalVersion (Thumb, 4 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED) +

        HAL_GetHalVersion (Thumb, 4 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED) -

        HAL_GetREVID (Thumb, 8 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED) +

        HAL_GetREVID (Thumb, 8 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED) -

        HAL_GetDEVID (Thumb, 10 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED) +

        HAL_GetDEVID (Thumb, 10 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED) -

        HAL_DBGMCU_EnableDBGSleepMode (Thumb, 12 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED) +

        HAL_DBGMCU_EnableDBGSleepMode (Thumb, 12 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED) -

        HAL_DBGMCU_DisableDBGSleepMode (Thumb, 12 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED) +

        HAL_DBGMCU_DisableDBGSleepMode (Thumb, 12 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED) -

        HAL_DBGMCU_EnableDBGStopMode (Thumb, 12 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED) +

        HAL_DBGMCU_EnableDBGStopMode (Thumb, 12 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED) -

        HAL_DBGMCU_DisableDBGStopMode (Thumb, 12 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED) +

        HAL_DBGMCU_DisableDBGStopMode (Thumb, 12 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED) -

        HAL_DBGMCU_EnableDBGStandbyMode (Thumb, 12 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED) +

        HAL_DBGMCU_EnableDBGStandbyMode (Thumb, 12 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED) -

        HAL_DBGMCU_DisableDBGStandbyMode (Thumb, 12 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED) +

        HAL_DBGMCU_DisableDBGStandbyMode (Thumb, 12 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED) -

        HAL_GetUID (Thumb, 24 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED) +

        HAL_GetUID (Thumb, 24 bytes, Stack size 0 bytes, stm32f1xx_hal.o(.text), UNUSED)

        HAL_RCC_DeInit (Thumb, 202 bytes, Stack size 24 bytes, stm32f1xx_hal_rcc.o(.text), UNUSED)

        [Calls]

        • >>   HAL_InitTick @@ -912,9 +913,9 @@ Global Symbols

          [Calls]
          • >>   HAL_GPIO_Init
          -

          HAL_RCC_EnableCSS (Thumb, 8 bytes, Stack size 0 bytes, stm32f1xx_hal_rcc.o(.text), UNUSED) +

          HAL_RCC_EnableCSS (Thumb, 8 bytes, Stack size 0 bytes, stm32f1xx_hal_rcc.o(.text), UNUSED) -

          HAL_RCC_DisableCSS (Thumb, 8 bytes, Stack size 0 bytes, stm32f1xx_hal_rcc.o(.text), UNUSED) +

          HAL_RCC_DisableCSS (Thumb, 8 bytes, Stack size 0 bytes, stm32f1xx_hal_rcc.o(.text), UNUSED)

          HAL_RCC_GetHCLKFreq (Thumb, 6 bytes, Stack size 0 bytes, stm32f1xx_hal_rcc.o(.text))

          [Called By]

          • >>   SystemClock_Config @@ -928,9 +929,9 @@ Global Symbols

            [Called By]
            • >>   UART_SetConfig
            -

            HAL_RCC_GetOscConfig (Thumb, 140 bytes, Stack size 8 bytes, stm32f1xx_hal_rcc.o(.text), UNUSED) +

            HAL_RCC_GetOscConfig (Thumb, 140 bytes, Stack size 8 bytes, stm32f1xx_hal_rcc.o(.text), UNUSED) -

            HAL_RCC_GetClockConfig (Thumb, 54 bytes, Stack size 0 bytes, stm32f1xx_hal_rcc.o(.text), UNUSED) +

            HAL_RCC_GetClockConfig (Thumb, 54 bytes, Stack size 0 bytes, stm32f1xx_hal_rcc.o(.text), UNUSED)

            HAL_RCC_CSSCallback (Thumb, 2 bytes, Stack size 0 bytes, stm32f1xx_hal_rcc.o(.text), UNUSED)

            [Called By]

            • >>   HAL_RCC_NMI_IRQHandler @@ -954,22 +955,22 @@ Global Symbols
            • >>   HAL_SPI_MspDeInit
            -

            HAL_GPIO_ReadPin (Thumb, 10 bytes, Stack size 0 bytes, stm32f1xx_hal_gpio.o(.text)) -

            [Called By]

            • >>   EPD_2IN9BC_ReadBusy +

              HAL_GPIO_ReadPin (Thumb, 10 bytes, Stack size 0 bytes, stm32f1xx_hal_gpio.o(.text)) +

              [Called By]

              • >>   EPD_1IN54_V2_ReadBusy

              HAL_GPIO_WritePin (Thumb, 10 bytes, Stack size 0 bytes, stm32f1xx_hal_gpio.o(.text))

              [Called By]

              • >>   MX_GPIO_Init -
              • >>   EPD_2IN9BC_Init +
              • >>   EPD_1IN54_V2_Init
              • >>   DEV_Module_Init -
              • >>   DEV_Module_Exit -
              • >>   EPD_2IN9BC_SendData -
              • >>   EPD_2IN9BC_SendCommand +
              • >>   DEV_Module_Exit +
              • >>   EPD_1IN54_V2_SendData +
              • >>   EPD_1IN54_V2_SendCommand
              -

              HAL_GPIO_TogglePin (Thumb, 8 bytes, Stack size 0 bytes, stm32f1xx_hal_gpio.o(.text), UNUSED) +

              HAL_GPIO_TogglePin (Thumb, 8 bytes, Stack size 0 bytes, stm32f1xx_hal_gpio.o(.text), UNUSED) -

              HAL_GPIO_LockPin (Thumb, 34 bytes, Stack size 8 bytes, stm32f1xx_hal_gpio.o(.text), UNUSED) +

              HAL_GPIO_LockPin (Thumb, 34 bytes, Stack size 8 bytes, stm32f1xx_hal_gpio.o(.text), UNUSED)

              HAL_GPIO_EXTI_Callback (Thumb, 2 bytes, Stack size 0 bytes, stm32f1xx_hal_gpio.o(.text), UNUSED)

              [Called By]

              • >>   HAL_GPIO_EXTI_IRQHandler @@ -979,9 +980,9 @@ Global Symbols

                [Calls]
                • >>   HAL_GPIO_EXTI_Callback
                -

                HAL_DMA_Init (Thumb, 120 bytes, Stack size 12 bytes, stm32f1xx_hal_dma.o(.text), UNUSED) +

                HAL_DMA_Init (Thumb, 120 bytes, Stack size 12 bytes, stm32f1xx_hal_dma.o(.text), UNUSED) -

                HAL_DMA_DeInit (Thumb, 108 bytes, Stack size 8 bytes, stm32f1xx_hal_dma.o(.text), UNUSED) +

                HAL_DMA_DeInit (Thumb, 108 bytes, Stack size 8 bytes, stm32f1xx_hal_dma.o(.text), UNUSED)

                HAL_DMA_Start (Thumb, 80 bytes, Stack size 16 bytes, stm32f1xx_hal_dma.o(.text), UNUSED)

                [Calls]

                • >>   DMA_SetConfig @@ -1019,15 +1020,15 @@ Global Symbols

                  [Calls]
                  • >>   HAL_GetTick
                  -

                  HAL_DMA_IRQHandler (Thumb, 574 bytes, Stack size 40 bytes, stm32f1xx_hal_dma.o(.text), UNUSED) +

                  HAL_DMA_IRQHandler (Thumb, 574 bytes, Stack size 40 bytes, stm32f1xx_hal_dma.o(.text), UNUSED) -

                  HAL_DMA_RegisterCallback (Thumb, 74 bytes, Stack size 8 bytes, stm32f1xx_hal_dma.o(.text), UNUSED) +

                  HAL_DMA_RegisterCallback (Thumb, 74 bytes, Stack size 8 bytes, stm32f1xx_hal_dma.o(.text), UNUSED) -

                  HAL_DMA_UnRegisterCallback (Thumb, 82 bytes, Stack size 8 bytes, stm32f1xx_hal_dma.o(.text), UNUSED) +

                  HAL_DMA_UnRegisterCallback (Thumb, 82 bytes, Stack size 8 bytes, stm32f1xx_hal_dma.o(.text), UNUSED) -

                  HAL_DMA_GetState (Thumb, 6 bytes, Stack size 0 bytes, stm32f1xx_hal_dma.o(.text), UNUSED) +

                  HAL_DMA_GetState (Thumb, 6 bytes, Stack size 0 bytes, stm32f1xx_hal_dma.o(.text), UNUSED) -

                  HAL_DMA_GetError (Thumb, 4 bytes, Stack size 0 bytes, stm32f1xx_hal_dma.o(.text), UNUSED) +

                  HAL_DMA_GetError (Thumb, 4 bytes, Stack size 0 bytes, stm32f1xx_hal_dma.o(.text), UNUSED)

                  HAL_NVIC_SetPriorityGrouping (Thumb, 26 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text))

                  [Called By]

                  • >>   HAL_MspInit @@ -1044,11 +1045,11 @@ Global Symbols
                  • >>   SystemClock_Config
                  -

                  HAL_NVIC_EnableIRQ (Thumb, 22 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED) +

                  HAL_NVIC_EnableIRQ (Thumb, 22 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED) -

                  HAL_NVIC_DisableIRQ (Thumb, 22 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED) +

                  HAL_NVIC_DisableIRQ (Thumb, 22 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED) -

                  HAL_NVIC_SystemReset (Thumb, 28 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED) +

                  HAL_NVIC_SystemReset (Thumb, 28 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED)

                  HAL_SYSTICK_Config (Thumb, 40 bytes, Stack size 8 bytes, stm32f1xx_hal_cortex.o(.text))

                  [Stack]

                  • Max Depth = 8
                  • Call Chain = HAL_SYSTICK_Config @@ -1059,17 +1060,17 @@ Global Symbols
                  • >>   SystemClock_Config
                  -

                  HAL_NVIC_GetPriorityGrouping (Thumb, 10 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED) +

                  HAL_NVIC_GetPriorityGrouping (Thumb, 10 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED) -

                  HAL_NVIC_GetPriority (Thumb, 82 bytes, Stack size 16 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED) +

                  HAL_NVIC_GetPriority (Thumb, 82 bytes, Stack size 16 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED) -

                  HAL_NVIC_SetPendingIRQ (Thumb, 22 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED) +

                  HAL_NVIC_SetPendingIRQ (Thumb, 22 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED) -

                  HAL_NVIC_GetPendingIRQ (Thumb, 32 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED) +

                  HAL_NVIC_GetPendingIRQ (Thumb, 32 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED) -

                  HAL_NVIC_ClearPendingIRQ (Thumb, 22 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED) +

                  HAL_NVIC_ClearPendingIRQ (Thumb, 22 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED) -

                  HAL_NVIC_GetActive (Thumb, 32 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED) +

                  HAL_NVIC_GetActive (Thumb, 32 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text), UNUSED)

                  HAL_SYSTICK_CLKSourceConfig (Thumb, 24 bytes, Stack size 0 bytes, stm32f1xx_hal_cortex.o(.text))

                  [Called By]

                  • >>   SystemClock_Config @@ -1090,97 +1091,89 @@ Global Symbols

                    SystemInit (Thumb, 56 bytes, Stack size 0 bytes, system_stm32f1xx.o(.text))
                    [Address Reference Count : 1]

                    • startup_stm32f103xe.o(.text)
                    -

                    SystemCoreClockUpdate (Thumb, 82 bytes, Stack size 8 bytes, system_stm32f1xx.o(.text), UNUSED) +

                    SystemCoreClockUpdate (Thumb, 82 bytes, Stack size 8 bytes, system_stm32f1xx.o(.text), UNUSED) -

                    EPD_2in9bc_test (Thumb, 566 bytes, Stack size 40 bytes, epd_2in9bc_test.o(.text)) -

                    [Stack]

                    • Max Depth = 744
                    • Call Chain = EPD_2in9bc_test ⇒ Paint_DrawNum ⇒ Paint_DrawString_EN ⇒ Paint_DrawChar ⇒ Paint_SetPixel ⇒ __2printf +

                      EPD_1in54_V2_test (Thumb, 156 bytes, Stack size 24 bytes, epd_1in54_v2_test.o(.text)) +

                      [Stack]

                      • Max Depth = 160
                      • Call Chain = EPD_1in54_V2_test ⇒ EPD_1IN54_V2_Display ⇒ EPD_1IN54_V2_TurnOnDisplay ⇒ EPD_1IN54_V2_SendData ⇒ DEV_SPI_WriteByte ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout

                      [Calls]
                      • >>   HAL_Delay -
                      • >>   EPD_2IN9BC_Sleep -
                      • >>   EPD_2IN9BC_Init -
                      • >>   EPD_2IN9BC_Display -
                      • >>   EPD_2IN9BC_Clear +
                      • >>   EPD_1IN54_V2_Sleep +
                      • >>   EPD_1IN54_V2_Init +
                      • >>   EPD_1IN54_V2_Display +
                      • >>   EPD_1IN54_V2_Clear
                      • >>   Paint_SelectImage
                      • >>   Paint_NewImage -
                      • >>   Paint_DrawString_EN -
                      • >>   Paint_DrawString_CN -
                      • >>   Paint_DrawRectangle -
                      • >>   Paint_DrawPoint -
                      • >>   Paint_DrawNum -
                      • >>   Paint_DrawLine -
                      • >>   Paint_DrawCircle +
                      • >>   Paint_DrawBitMap
                      • >>   Paint_Clear
                      • >>   DEV_Module_Init -
                      • >>   DEV_Module_Exit
                      • >>   malloc -
                      • >>   free +
                      • >>   free
                      • >>   __2printf

                      [Called By]
                      • >>   main
                      -

                      EPD_2IN9BC_ReadBusy (Thumb, 40 bytes, Stack size 8 bytes, epd_2in9bc.o(.text)) -

                      [Stack]

                      • Max Depth = 32
                      • Call Chain = EPD_2IN9BC_ReadBusy ⇒ __2printf -
                      -
                      [Calls]
                      • >>   HAL_GPIO_ReadPin -
                      • >>   HAL_Delay -
                      • >>   __2printf -
                      -
                      [Called By]
                      • >>   EPD_2IN9BC_Sleep -
                      • >>   EPD_2IN9BC_Init -
                      • >>   EPD_2IN9BC_Display -
                      • >>   EPD_2IN9BC_Clear -
                      - -

                      EPD_2IN9BC_Init (Thumb, 150 bytes, Stack size 8 bytes, epd_2in9bc.o(.text)) -

                      [Stack]

                      • Max Depth = 112
                      • Call Chain = EPD_2IN9BC_Init ⇒ EPD_2IN9BC_SendData ⇒ DEV_SPI_WriteByte ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout +

                        EPD_1IN54_V2_Init (Thumb, 228 bytes, Stack size 8 bytes, epd_1in54_v2.o(.text)) +

                        [Stack]

                        • Max Depth = 112
                        • Call Chain = EPD_1IN54_V2_Init ⇒ EPD_1IN54_V2_SendData ⇒ DEV_SPI_WriteByte ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout

                        [Calls]
                        • >>   HAL_Delay
                        • >>   HAL_GPIO_WritePin -
                        • >>   EPD_2IN9BC_ReadBusy -
                        • >>   EPD_2IN9BC_SendData -
                        • >>   EPD_2IN9BC_SendCommand +
                        • >>   EPD_1IN54_V2_SendData +
                        • >>   EPD_1IN54_V2_SendCommand +
                        • >>   EPD_1IN54_V2_ReadBusy
                        -
                        [Called By]
                        • >>   EPD_2in9bc_test +
                          [Called By]
                          • >>   EPD_1in54_V2_test
                          -

                          EPD_2IN9BC_Clear (Thumb, 86 bytes, Stack size 24 bytes, epd_2in9bc.o(.text)) -

                          [Stack]

                          • Max Depth = 128
                          • Call Chain = EPD_2IN9BC_Clear ⇒ EPD_2IN9BC_SendData ⇒ DEV_SPI_WriteByte ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout +

                            EPD_1IN54_V2_Clear (Thumb, 48 bytes, Stack size 24 bytes, epd_1in54_v2.o(.text)) +

                            [Stack]

                            • Max Depth = 136
                            • Call Chain = EPD_1IN54_V2_Clear ⇒ EPD_1IN54_V2_TurnOnDisplay ⇒ EPD_1IN54_V2_SendData ⇒ DEV_SPI_WriteByte ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
                            -
                            [Calls]
                            • >>   EPD_2IN9BC_ReadBusy -
                            • >>   EPD_2IN9BC_SendData -
                            • >>   EPD_2IN9BC_SendCommand +
                              [Calls]
                              • >>   EPD_1IN54_V2_TurnOnDisplay +
                              • >>   EPD_1IN54_V2_SendData +
                              • >>   EPD_1IN54_V2_SendCommand
                              -
                              [Called By]
                              • >>   EPD_2in9bc_test +
                                [Called By]
                                • >>   EPD_1in54_V2_test
                                -

                                EPD_2IN9BC_Display (Thumb, 120 bytes, Stack size 32 bytes, epd_2in9bc.o(.text)) -

                                [Stack]

                                • Max Depth = 136
                                • Call Chain = EPD_2IN9BC_Display ⇒ EPD_2IN9BC_SendData ⇒ DEV_SPI_WriteByte ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout +

                                  EPD_1IN54_V2_Display (Thumb, 56 bytes, Stack size 24 bytes, epd_1in54_v2.o(.text)) +

                                  [Stack]

                                  • Max Depth = 136
                                  • Call Chain = EPD_1IN54_V2_Display ⇒ EPD_1IN54_V2_TurnOnDisplay ⇒ EPD_1IN54_V2_SendData ⇒ DEV_SPI_WriteByte ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
                                  -
                                  [Calls]
                                  • >>   EPD_2IN9BC_ReadBusy -
                                  • >>   EPD_2IN9BC_SendData -
                                  • >>   EPD_2IN9BC_SendCommand +
                                    [Calls]
                                    • >>   EPD_1IN54_V2_TurnOnDisplay +
                                    • >>   EPD_1IN54_V2_SendData +
                                    • >>   EPD_1IN54_V2_SendCommand
                                    -
                                    [Called By]
                                    • >>   EPD_2in9bc_test +
                                      [Called By]
                                      • >>   EPD_1in54_V2_test
                                      -

                                      EPD_2IN9BC_Sleep (Thumb, 28 bytes, Stack size 8 bytes, epd_2in9bc.o(.text)) -

                                      [Stack]

                                      • Max Depth = 112
                                      • Call Chain = EPD_2IN9BC_Sleep ⇒ EPD_2IN9BC_SendData ⇒ DEV_SPI_WriteByte ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout -
                                      -
                                      [Calls]
                                      • >>   EPD_2IN9BC_ReadBusy -
                                      • >>   EPD_2IN9BC_SendData -
                                      • >>   EPD_2IN9BC_SendCommand -
                                      -
                                      [Called By]
                                      • >>   EPD_2in9bc_test +

                                        EPD_1IN54_V2_DisplayPartBaseImage (Thumb, 94 bytes, Stack size 24 bytes, epd_1in54_v2.o(.text), UNUSED) +

                                        [Calls]

                                        • >>   EPD_1IN54_V2_TurnOnDisplayPart +
                                        • >>   EPD_1IN54_V2_SendData +
                                        • >>   EPD_1IN54_V2_SendCommand
                                        -

                                        DEV_SPI_WriteByte (Thumb, 18 bytes, Stack size 8 bytes, dev_config.o(.text)) +

                                        EPD_1IN54_V2_DisplayPart (Thumb, 58 bytes, Stack size 24 bytes, epd_1in54_v2.o(.text), UNUSED) +

                                        [Calls]

                                        • >>   EPD_1IN54_V2_TurnOnDisplayPart +
                                        • >>   EPD_1IN54_V2_SendData +
                                        • >>   EPD_1IN54_V2_SendCommand +
                                        + +

                                        EPD_1IN54_V2_Sleep (Thumb, 24 bytes, Stack size 8 bytes, epd_1in54_v2.o(.text)) +

                                        [Stack]

                                        • Max Depth = 112
                                        • Call Chain = EPD_1IN54_V2_Sleep ⇒ EPD_1IN54_V2_SendData ⇒ DEV_SPI_WriteByte ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout +
                                        +
                                        [Calls]
                                        • >>   HAL_Delay +
                                        • >>   EPD_1IN54_V2_SendData +
                                        • >>   EPD_1IN54_V2_SendCommand +
                                        +
                                        [Called By]
                                        • >>   EPD_1in54_V2_test +
                                        + +

                                        DEV_SPI_WriteByte (Thumb, 18 bytes, Stack size 8 bytes, dev_config.o(.text))

                                        [Stack]

                                        • Max Depth = 88
                                        • Call Chain = DEV_SPI_WriteByte ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout

                                        [Calls]
                                        • >>   HAL_SPI_Transmit
                                        -
                                        [Called By]
                                        • >>   EPD_2IN9BC_SendData -
                                        • >>   EPD_2IN9BC_SendCommand +
                                          [Called By]
                                          • >>   EPD_1IN54_V2_SendData +
                                          • >>   EPD_1IN54_V2_SendCommand

                                          DEV_Module_Init (Thumb, 38 bytes, Stack size 8 bytes, dev_config.o(.text)) @@ -1188,215 +1181,186 @@ Global Symbols


                                        [Calls]
                                        • >>   HAL_GPIO_WritePin
                                        -
                                        [Called By]
                                        • >>   EPD_2in9bc_test +
                                          [Called By]
                                          • >>   EPD_1in54_V2_test
                                          -

                                          DEV_Module_Exit (Thumb, 38 bytes, Stack size 8 bytes, dev_config.o(.text)) -

                                          [Stack]

                                          • Max Depth = 8
                                          • Call Chain = DEV_Module_Exit -
                                          -
                                          [Calls]
                                          • >>   HAL_GPIO_WritePin -
                                          -
                                          [Called By]
                                          • >>   EPD_2in9bc_test +

                                            DEV_Module_Exit (Thumb, 38 bytes, Stack size 8 bytes, dev_config.o(.text), UNUSED) +

                                            [Calls]

                                            • >>   HAL_GPIO_WritePin

                                            Paint_NewImage (Thumb, 52 bytes, Stack size 16 bytes, gui_paint.o(.text))

                                            [Stack]

                                            • Max Depth = 16
                                            • Call Chain = Paint_NewImage
                                            -
                                            [Called By]
                                            • >>   EPD_2in9bc_test +
                                              [Called By]
                                              • >>   EPD_1in54_V2_test

                                              Paint_SelectImage (Thumb, 6 bytes, Stack size 0 bytes, gui_paint.o(.text)) -

                                              [Called By]

                                              • >>   EPD_2in9bc_test +

                                                [Called By]
                                                • >>   EPD_1in54_V2_test
                                                -

                                                Paint_SetRotate (Thumb, 44 bytes, Stack size 8 bytes, gui_paint.o(.text), UNUSED) +

                                                Paint_SetRotate (Thumb, 44 bytes, Stack size 8 bytes, gui_paint.o(.text), UNUSED)

                                                [Calls]

                                                • >>   __2printf
                                                -

                                                Paint_SetMirroring (Thumb, 62 bytes, Stack size 8 bytes, gui_paint.o(.text), UNUSED) +

                                                Paint_SetMirroring (Thumb, 62 bytes, Stack size 8 bytes, gui_paint.o(.text), UNUSED)

                                                [Calls]

                                                • >>   __2printf
                                                -

                                                Paint_SetPixel (Thumb, 164 bytes, Stack size 16 bytes, gui_paint.o(.text)) -

                                                [Stack]

                                                • Max Depth = 40
                                                • Call Chain = Paint_SetPixel ⇒ __2printf +

                                                  Paint_SetPixel (Thumb, 164 bytes, Stack size 16 bytes, gui_paint.o(.text), UNUSED) +

                                                  [Calls]

                                                  • >>   __2printf
                                                  -
                                                  [Calls]
                                                  • >>   __2printf -
                                                  -
                                                  [Called By]
                                                  • >>   Paint_DrawString_CN -
                                                  • >>   Paint_DrawPoint -
                                                  • >>   Paint_ClearWindows -
                                                  • >>   Paint_DrawChar +
                                                    [Called By]
                                                    • >>   Paint_DrawString_CN +
                                                    • >>   Paint_DrawPoint +
                                                    • >>   Paint_ClearWindows +
                                                    • >>   Paint_DrawChar

                                                    Paint_Clear (Thumb, 46 bytes, Stack size 12 bytes, gui_paint.o(.text))

                                                    [Stack]

                                                    • Max Depth = 12
                                                    • Call Chain = Paint_Clear
                                                    -
                                                    [Called By]
                                                    • >>   EPD_2in9bc_test +
                                                      [Called By]
                                                      • >>   EPD_1in54_V2_test
                                                      -

                                                      Paint_ClearWindows (Thumb, 52 bytes, Stack size 32 bytes, gui_paint.o(.text), UNUSED) -

                                                      [Calls]

                                                      • >>   Paint_SetPixel +

                                                        Paint_ClearWindows (Thumb, 52 bytes, Stack size 32 bytes, gui_paint.o(.text), UNUSED) +

                                                        [Calls]

                                                        • >>   Paint_SetPixel
                                                        -

                                                        Paint_DrawPoint (Thumb, 160 bytes, Stack size 40 bytes, gui_paint.o(.text)) -

                                                        [Stack]

                                                        • Max Depth = 80
                                                        • Call Chain = Paint_DrawPoint ⇒ Paint_SetPixel ⇒ __2printf -
                                                        -
                                                        [Calls]
                                                        • >>   Paint_SetPixel +

                                                          Paint_DrawPoint (Thumb, 160 bytes, Stack size 40 bytes, gui_paint.o(.text), UNUSED) +

                                                          [Calls]

                                                          • >>   Paint_SetPixel
                                                          • >>   __2printf
                                                          -
                                                          [Called By]
                                                          • >>   EPD_2in9bc_test -
                                                          • >>   Paint_DrawLine -
                                                          • >>   Paint_DrawCircle +
                                                            [Called By]
                                                            • >>   Paint_DrawLine +
                                                            • >>   Paint_DrawCircle
                                                            -

                                                            Paint_DrawLine (Thumb, 198 bytes, Stack size 48 bytes, gui_paint.o(.text)) -

                                                            [Stack]

                                                            • Max Depth = 128
                                                            • Call Chain = Paint_DrawLine ⇒ Paint_DrawPoint ⇒ Paint_SetPixel ⇒ __2printf -
                                                            -
                                                            [Calls]
                                                            • >>   Paint_DrawPoint +

                                                              Paint_DrawLine (Thumb, 198 bytes, Stack size 48 bytes, gui_paint.o(.text), UNUSED) +

                                                              [Calls]

                                                              • >>   Paint_DrawPoint
                                                              • >>   __2printf
                                                              -
                                                              [Called By]
                                                              • >>   EPD_2in9bc_test -
                                                              • >>   Paint_DrawRectangle +
                                                                [Called By]
                                                                • >>   Paint_DrawRectangle
                                                                -

                                                                Paint_DrawRectangle (Thumb, 170 bytes, Stack size 48 bytes, gui_paint.o(.text)) -

                                                                [Stack]

                                                                • Max Depth = 176
                                                                • Call Chain = Paint_DrawRectangle ⇒ Paint_DrawLine ⇒ Paint_DrawPoint ⇒ Paint_SetPixel ⇒ __2printf -
                                                                -
                                                                [Calls]
                                                                • >>   Paint_DrawLine +

                                                                  Paint_DrawRectangle (Thumb, 170 bytes, Stack size 48 bytes, gui_paint.o(.text), UNUSED) +

                                                                  [Calls]

                                                                  • >>   Paint_DrawLine
                                                                  • >>   __2printf
                                                                  -
                                                                  [Called By]
                                                                  • >>   EPD_2in9bc_test -
                                                                  -

                                                                  Paint_DrawCircle (Thumb, 880 bytes, Stack size 72 bytes, gui_paint.o(.text)) -

                                                                  [Stack]

                                                                  • Max Depth = 152
                                                                  • Call Chain = Paint_DrawCircle ⇒ Paint_DrawPoint ⇒ Paint_SetPixel ⇒ __2printf -
                                                                  -
                                                                  [Calls]
                                                                  • >>   Paint_DrawPoint +

                                                                    Paint_DrawCircle (Thumb, 880 bytes, Stack size 72 bytes, gui_paint.o(.text), UNUSED) +

                                                                    [Calls]

                                                                    • >>   Paint_DrawPoint
                                                                    • >>   __2printf
                                                                    -
                                                                    [Called By]
                                                                    • >>   EPD_2in9bc_test -
                                                                    -

                                                                    Paint_DrawChar (Thumb, 172 bytes, Stack size 40 bytes, gui_paint.o(.text)) -

                                                                    [Stack]

                                                                    • Max Depth = 80
                                                                    • Call Chain = Paint_DrawChar ⇒ Paint_SetPixel ⇒ __2printf -
                                                                    -
                                                                    [Calls]
                                                                    • >>   Paint_SetPixel +

                                                                      Paint_DrawChar (Thumb, 172 bytes, Stack size 40 bytes, gui_paint.o(.text), UNUSED) +

                                                                      [Calls]

                                                                      • >>   Paint_SetPixel
                                                                      • >>   __2printf
                                                                      -
                                                                      [Called By]
                                                                      • >>   Paint_DrawTime -
                                                                      • >>   Paint_DrawString_EN +
                                                                        [Called By]
                                                                        • >>   Paint_DrawTime +
                                                                        • >>   Paint_DrawString_EN
                                                                        -

                                                                        Paint_DrawString_EN (Thumb, 116 bytes, Stack size 48 bytes, gui_paint.o(.text)) -

                                                                        [Stack]

                                                                        • Max Depth = 128
                                                                        • Call Chain = Paint_DrawString_EN ⇒ Paint_DrawChar ⇒ Paint_SetPixel ⇒ __2printf -
                                                                        -
                                                                        [Calls]
                                                                        • >>   Paint_DrawChar +

                                                                          Paint_DrawString_EN (Thumb, 116 bytes, Stack size 48 bytes, gui_paint.o(.text), UNUSED) +

                                                                          [Calls]

                                                                          • >>   Paint_DrawChar
                                                                          • >>   __2printf
                                                                          -
                                                                          [Called By]
                                                                          • >>   EPD_2in9bc_test -
                                                                          • >>   Paint_DrawNum +
                                                                            [Called By]
                                                                            • >>   Paint_DrawNum
                                                                            -

                                                                            Paint_DrawString_CN (Thumb, 394 bytes, Stack size 40 bytes, gui_paint.o(.text)) -

                                                                            [Stack]

                                                                            • Max Depth = 80
                                                                            • Call Chain = Paint_DrawString_CN ⇒ Paint_SetPixel ⇒ __2printf -
                                                                            -
                                                                            [Calls]
                                                                            • >>   Paint_SetPixel -
                                                                            -
                                                                            [Called By]
                                                                            • >>   EPD_2in9bc_test +

                                                                              Paint_DrawString_CN (Thumb, 394 bytes, Stack size 40 bytes, gui_paint.o(.text), UNUSED) +

                                                                              [Calls]

                                                                              • >>   Paint_SetPixel
                                                                              -

                                                                              Paint_DrawNum (Thumb, 140 bytes, Stack size 576 bytes, gui_paint.o(.text)) -

                                                                              [Stack]

                                                                              • Max Depth = 704
                                                                              • Call Chain = Paint_DrawNum ⇒ Paint_DrawString_EN ⇒ Paint_DrawChar ⇒ Paint_SetPixel ⇒ __2printf -
                                                                              -
                                                                              [Calls]
                                                                              • >>   Paint_DrawString_EN +

                                                                                Paint_DrawNum (Thumb, 140 bytes, Stack size 576 bytes, gui_paint.o(.text), UNUSED) +

                                                                                [Calls]

                                                                                • >>   Paint_DrawString_EN
                                                                                • >>   __2printf -
                                                                                • >>   __aeabi_memclr4 -
                                                                                -
                                                                                [Called By]
                                                                                • >>   EPD_2in9bc_test +
                                                                                • >>   __aeabi_memclr4
                                                                                -

                                                                                Paint_DrawTime (Thumb, 436 bytes, Stack size 72 bytes, gui_paint.o(.text), UNUSED) -

                                                                                [Calls]

                                                                                • >>   Paint_DrawChar +

                                                                                  Paint_DrawTime (Thumb, 436 bytes, Stack size 72 bytes, gui_paint.o(.text), UNUSED) +

                                                                                  [Calls]

                                                                                  • >>   Paint_DrawChar
                                                                                  -

                                                                                  Paint_DrawBitMap (Thumb, 44 bytes, Stack size 16 bytes, gui_paint.o(.text), UNUSED) - -

                                                                                  __aeabi_memset (Thumb, 14 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED) -

                                                                                  [Called By]

                                                                                  • >>   _memset$wrapper -
                                                                                  • >>   __aeabi_memclr +

                                                                                    Paint_DrawBitMap (Thumb, 44 bytes, Stack size 16 bytes, gui_paint.o(.text)) +

                                                                                    [Stack]

                                                                                    • Max Depth = 16
                                                                                    • Call Chain = Paint_DrawBitMap +
                                                                                    +
                                                                                    [Called By]
                                                                                    • >>   EPD_1in54_V2_test
                                                                                    -

                                                                                    __aeabi_memset4 (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED) - -

                                                                                    __aeabi_memset8 (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED) - -

                                                                                    __aeabi_memclr (Thumb, 4 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED) -

                                                                                    [Calls]

                                                                                    • >>   __aeabi_memset +

                                                                                      __aeabi_memset (Thumb, 14 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED) +

                                                                                      [Called By]

                                                                                      • >>   _memset$wrapper +
                                                                                      • >>   __aeabi_memclr
                                                                                      -

                                                                                      __aeabi_memclr4 (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text)) -

                                                                                      [Called By]

                                                                                      • >>   Paint_DrawNum +

                                                                                        __aeabi_memset4 (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED) + +

                                                                                        __aeabi_memset8 (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED) + +

                                                                                        __aeabi_memclr (Thumb, 4 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED) +

                                                                                        [Calls]

                                                                                        • >>   __aeabi_memset
                                                                                        -

                                                                                        __aeabi_memclr8 (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED) - -

                                                                                        _memset$wrapper (Thumb, 18 bytes, Stack size 8 bytes, memseta.o(.text), UNUSED) -

                                                                                        [Calls]

                                                                                        • >>   __aeabi_memset +

                                                                                          __aeabi_memclr4 (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED) +

                                                                                          [Called By]

                                                                                          • >>   Paint_DrawNum
                                                                                          -

                                                                                          __aeabi_uidiv (Thumb, 0 bytes, Stack size 12 bytes, uidiv.o(.text), UNUSED) +

                                                                                          __aeabi_memclr8 (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED) -

                                                                                          __aeabi_uidivmod (Thumb, 44 bytes, Stack size 12 bytes, uidiv.o(.text), UNUSED) -

                                                                                          [Called By]

                                                                                          • >>   _printf_core +

                                                                                            _memset$wrapper (Thumb, 18 bytes, Stack size 8 bytes, memseta.o(.text), UNUSED) +

                                                                                            [Calls]

                                                                                            • >>   __aeabi_memset +
                                                                                            + +

                                                                                            __aeabi_uidiv (Thumb, 0 bytes, Stack size 12 bytes, uidiv.o(.text), UNUSED) + +

                                                                                            __aeabi_uidivmod (Thumb, 44 bytes, Stack size 12 bytes, uidiv.o(.text), UNUSED) +

                                                                                            [Called By]

                                                                                            • >>   _printf_core

                                                                                            __scatterload (Thumb, 28 bytes, Stack size 0 bytes, init.o(.text)) -

                                                                                            [Calls]

                                                                                            • >>   __main_after_scatterload +

                                                                                              [Calls]
                                                                                              • >>   __main_after_scatterload

                                                                                              [Called By]
                                                                                              • >>   _main_scatterload
                                                                                              -

                                                                                              __scatterload_rt2 (Thumb, 0 bytes, Stack size 0 bytes, init.o(.text), UNUSED) +

                                                                                              __scatterload_rt2 (Thumb, 0 bytes, Stack size 0 bytes, init.o(.text), UNUSED) -

                                                                                              __0printf$3 (Thumb, 22 bytes, Stack size 24 bytes, printf3.o(i.__0printf$3), UNUSED) -

                                                                                              [Calls]

                                                                                              • >>   _printf_core +

                                                                                                __0printf$3 (Thumb, 22 bytes, Stack size 24 bytes, printf3.o(i.__0printf$3), UNUSED) +

                                                                                                [Calls]

                                                                                                • >>   _printf_core
                                                                                                -

                                                                                                __1printf$3 (Thumb, 0 bytes, Stack size 24 bytes, printf3.o(i.__0printf$3), UNUSED) +

                                                                                                __1printf$3 (Thumb, 0 bytes, Stack size 24 bytes, printf3.o(i.__0printf$3), UNUSED)

                                                                                                __2printf (Thumb, 0 bytes, Stack size 24 bytes, printf3.o(i.__0printf$3))

                                                                                                [Stack]

                                                                                                • Max Depth = 24
                                                                                                • Call Chain = __2printf
                                                                                                -
                                                                                                [Called By]
                                                                                                • >>   EPD_2in9bc_test -
                                                                                                • >>   Paint_SetMirroring -
                                                                                                • >>   Paint_DrawString_EN -
                                                                                                • >>   Paint_DrawRectangle -
                                                                                                • >>   Paint_DrawPoint -
                                                                                                • >>   Paint_DrawNum -
                                                                                                • >>   Paint_DrawLine -
                                                                                                • >>   Paint_DrawCircle -
                                                                                                • >>   Paint_DrawChar -
                                                                                                • >>   Paint_SetPixel -
                                                                                                • >>   Paint_SetRotate -
                                                                                                • >>   EPD_2IN9BC_ReadBusy +
                                                                                                  [Called By]
                                                                                                  • >>   EPD_1in54_V2_test +
                                                                                                  • >>   Paint_SetMirroring +
                                                                                                  • >>   Paint_DrawString_EN +
                                                                                                  • >>   Paint_DrawRectangle +
                                                                                                  • >>   Paint_DrawPoint +
                                                                                                  • >>   Paint_DrawNum +
                                                                                                  • >>   Paint_DrawLine +
                                                                                                  • >>   Paint_DrawCircle +
                                                                                                  • >>   Paint_DrawChar +
                                                                                                  • >>   Paint_SetPixel +
                                                                                                  • >>   Paint_SetRotate +
                                                                                                  • >>   EPD_1IN54_V2_ReadBusy
                                                                                                  -

                                                                                                  __scatterload_copy (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_copy), UNUSED) +

                                                                                                  __scatterload_copy (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_copy), UNUSED) -

                                                                                                  __scatterload_null (Thumb, 2 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_null), UNUSED) +

                                                                                                  __scatterload_null (Thumb, 2 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_null), UNUSED) -

                                                                                                  __scatterload_zeroinit (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_zeroinit), UNUSED) +

                                                                                                  __scatterload_zeroinit (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_zeroinit), UNUSED) -

                                                                                                  free (Thumb, 76 bytes, Stack size 8 bytes, malloc.o(i.free)) +

                                                                                                  free (Thumb, 76 bytes, Stack size 8 bytes, malloc.o(i.free))

                                                                                                  [Stack]

                                                                                                  • Max Depth = 8
                                                                                                  • Call Chain = free
                                                                                                  -
                                                                                                  [Called By]
                                                                                                  • >>   EPD_2in9bc_test +
                                                                                                    [Called By]
                                                                                                    • >>   EPD_1in54_V2_test

                                                                                                    malloc (Thumb, 92 bytes, Stack size 20 bytes, malloc.o(i.malloc))

                                                                                                    [Stack]

                                                                                                    • Max Depth = 20
                                                                                                    • Call Chain = malloc
                                                                                                    -
                                                                                                    [Called By]
                                                                                                    • >>   EPD_2in9bc_test +
                                                                                                      [Called By]
                                                                                                      • >>   EPD_1in54_V2_test

                                                                                                      @@ -1727,34 +1691,74 @@ Local Symbols
                                                                                                    • >>   HAL_NVIC_SetPriority
                                                                                                    -

                                                                                                    EPD_2IN9BC_SendCommand (Thumb, 46 bytes, Stack size 16 bytes, epd_2in9bc.o(.text)) -

                                                                                                    [Stack]

                                                                                                    • Max Depth = 104
                                                                                                    • Call Chain = EPD_2IN9BC_SendCommand ⇒ DEV_SPI_WriteByte ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout +

                                                                                                      EPD_1IN54_V2_ReadBusy (Thumb, 40 bytes, Stack size 8 bytes, epd_1in54_v2.o(.text)) +

                                                                                                      [Stack]

                                                                                                      • Max Depth = 32
                                                                                                      • Call Chain = EPD_1IN54_V2_ReadBusy ⇒ __2printf
                                                                                                      -
                                                                                                      [Calls]
                                                                                                      • >>   HAL_GPIO_WritePin -
                                                                                                      • >>   DEV_SPI_WriteByte +
                                                                                                        [Calls]
                                                                                                        • >>   HAL_GPIO_ReadPin +
                                                                                                        • >>   HAL_Delay +
                                                                                                        • >>   __2printf
                                                                                                        -
                                                                                                        [Called By]
                                                                                                        • >>   EPD_2IN9BC_Sleep -
                                                                                                        • >>   EPD_2IN9BC_Init -
                                                                                                        • >>   EPD_2IN9BC_Display -
                                                                                                        • >>   EPD_2IN9BC_Clear +
                                                                                                          [Called By]
                                                                                                          • >>   EPD_1IN54_V2_Init +
                                                                                                          • >>   EPD_1IN54_V2_TurnOnDisplayPart +
                                                                                                          • >>   EPD_1IN54_V2_TurnOnDisplay
                                                                                                          -

                                                                                                          EPD_2IN9BC_SendData (Thumb, 46 bytes, Stack size 16 bytes, epd_2in9bc.o(.text)) -

                                                                                                          [Stack]

                                                                                                          • Max Depth = 104
                                                                                                          • Call Chain = EPD_2IN9BC_SendData ⇒ DEV_SPI_WriteByte ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout +

                                                                                                            EPD_1IN54_V2_SendCommand (Thumb, 46 bytes, Stack size 16 bytes, epd_1in54_v2.o(.text)) +

                                                                                                            [Stack]

                                                                                                            • Max Depth = 104
                                                                                                            • Call Chain = EPD_1IN54_V2_SendCommand ⇒ DEV_SPI_WriteByte ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout

                                                                                                            [Calls]
                                                                                                            • >>   HAL_GPIO_WritePin -
                                                                                                            • >>   DEV_SPI_WriteByte +
                                                                                                            • >>   DEV_SPI_WriteByte
                                                                                                            -
                                                                                                            [Called By]
                                                                                                            • >>   EPD_2IN9BC_Sleep -
                                                                                                            • >>   EPD_2IN9BC_Init -
                                                                                                            • >>   EPD_2IN9BC_Display -
                                                                                                            • >>   EPD_2IN9BC_Clear +
                                                                                                              [Called By]
                                                                                                              • >>   EPD_1IN54_V2_Sleep +
                                                                                                              • >>   EPD_1IN54_V2_Init +
                                                                                                              • >>   EPD_1IN54_V2_Display +
                                                                                                              • >>   EPD_1IN54_V2_Clear +
                                                                                                              • >>   EPD_1IN54_V2_DisplayPart +
                                                                                                              • >>   EPD_1IN54_V2_DisplayPartBaseImage +
                                                                                                              • >>   EPD_1IN54_V2_TurnOnDisplayPart +
                                                                                                              • >>   EPD_1IN54_V2_TurnOnDisplay
                                                                                                              -

                                                                                                              _printf_core (Thumb, 436 bytes, Stack size 96 bytes, printf3.o(i._printf_core), UNUSED) -

                                                                                                              [Calls]

                                                                                                              • >>   __aeabi_uidivmod +

                                                                                                                EPD_1IN54_V2_SendData (Thumb, 46 bytes, Stack size 16 bytes, epd_1in54_v2.o(.text)) +

                                                                                                                [Stack]

                                                                                                                • Max Depth = 104
                                                                                                                • Call Chain = EPD_1IN54_V2_SendData ⇒ DEV_SPI_WriteByte ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout
                                                                                                                -
                                                                                                                [Called By]
                                                                                                                • >>   __0printf$3 +
                                                                                                                  [Calls]
                                                                                                                  • >>   HAL_GPIO_WritePin +
                                                                                                                  • >>   DEV_SPI_WriteByte +
                                                                                                                  +
                                                                                                                  [Called By]
                                                                                                                  • >>   EPD_1IN54_V2_Sleep +
                                                                                                                  • >>   EPD_1IN54_V2_Init +
                                                                                                                  • >>   EPD_1IN54_V2_Display +
                                                                                                                  • >>   EPD_1IN54_V2_Clear +
                                                                                                                  • >>   EPD_1IN54_V2_DisplayPart +
                                                                                                                  • >>   EPD_1IN54_V2_DisplayPartBaseImage +
                                                                                                                  • >>   EPD_1IN54_V2_TurnOnDisplayPart +
                                                                                                                  • >>   EPD_1IN54_V2_TurnOnDisplay +
                                                                                                                  + +

                                                                                                                  EPD_1IN54_V2_TurnOnDisplay (Thumb, 26 bytes, Stack size 8 bytes, epd_1in54_v2.o(.text)) +

                                                                                                                  [Stack]

                                                                                                                  • Max Depth = 112
                                                                                                                  • Call Chain = EPD_1IN54_V2_TurnOnDisplay ⇒ EPD_1IN54_V2_SendData ⇒ DEV_SPI_WriteByte ⇒ HAL_SPI_Transmit ⇒ SPI_CheckFlag_BSY ⇒ SPI_WaitFlagStateUntilTimeout +
                                                                                                                  +
                                                                                                                  [Calls]
                                                                                                                  • >>   EPD_1IN54_V2_SendData +
                                                                                                                  • >>   EPD_1IN54_V2_SendCommand +
                                                                                                                  • >>   EPD_1IN54_V2_ReadBusy +
                                                                                                                  +
                                                                                                                  [Called By]
                                                                                                                  • >>   EPD_1IN54_V2_Display +
                                                                                                                  • >>   EPD_1IN54_V2_Clear +
                                                                                                                  + +

                                                                                                                  EPD_1IN54_V2_TurnOnDisplayPart (Thumb, 26 bytes, Stack size 8 bytes, epd_1in54_v2.o(.text), UNUSED) +

                                                                                                                  [Calls]

                                                                                                                  • >>   EPD_1IN54_V2_SendData +
                                                                                                                  • >>   EPD_1IN54_V2_SendCommand +
                                                                                                                  • >>   EPD_1IN54_V2_ReadBusy +
                                                                                                                  +
                                                                                                                  [Called By]
                                                                                                                  • >>   EPD_1IN54_V2_DisplayPart +
                                                                                                                  • >>   EPD_1IN54_V2_DisplayPartBaseImage +
                                                                                                                  + +

                                                                                                                  _printf_core (Thumb, 436 bytes, Stack size 96 bytes, printf3.o(i._printf_core), UNUSED) +

                                                                                                                  [Calls]

                                                                                                                  • >>   __aeabi_uidivmod +
                                                                                                                  +
                                                                                                                  [Called By]
                                                                                                                  • >>   __0printf$3

                                                                                                                  diff --git a/STM32/STM32-F103ZET6/MDK-ARM/epd-demo/epd-demo.map b/STM32/STM32-F103ZET6/MDK-ARM/epd-demo/epd-demo.map index 069f38e..098c672 100644 --- a/STM32/STM32-F103ZET6/MDK-ARM/epd-demo/epd-demo.map +++ b/STM32/STM32-F103ZET6/MDK-ARM/epd-demo/epd-demo.map @@ -15,7 +15,7 @@ Section Cross References main.o(.text) refers to gpio.o(.text) for MX_GPIO_Init main.o(.text) refers to usart.o(.text) for MX_USART1_UART_Init main.o(.text) refers to spi.o(.text) for MX_SPI1_Init - main.o(.text) refers to epd_2in9bc_test.o(.text) for EPD_2in9bc_test + main.o(.text) refers to epd_1in54_v2_test.o(.text) for EPD_1in54_V2_test gpio.o(.text) refers to stm32f1xx_hal_gpio.o(.text) for HAL_GPIO_WritePin spi.o(.text) refers to stm32f1xx_hal_spi_ex.o(.text) for HAL_SPI_Init spi.o(.text) refers to main.o(.text) for _Error_Handler @@ -77,9 +77,6 @@ Section Cross References epd_1in54_v2_test.o(.text) refers to gui_paint.o(.text) for Paint_NewImage epd_1in54_v2_test.o(.text) refers to malloc.o(i.free) for free epd_1in54_v2_test.o(.text) refers to imagedata.o(.constdata) for gImage_1in54 - epd_1in54_v2_test.o(.text) refers to font20.o(.data) for Font20 - epd_1in54_v2_test.o(.text) refers to font12cn.o(.data) for Font12CN - epd_1in54_v2_test.o(.text) refers to font24cn.o(.data) for Font24CN epd_1in54b_test.o(.text) refers to printf3.o(i.__0printf$3) for __2printf epd_1in54b_test.o(.text) refers to dev_config.o(.text) for DEV_Module_Init epd_1in54b_test.o(.text) refers to epd_1in54b.o(.text) for EPD_1IN54B_Init @@ -188,10 +185,6 @@ Section Cross References epd_2in13_v2_test.o(.text) refers to gui_paint.o(.text) for Paint_NewImage epd_2in13_v2_test.o(.text) refers to malloc.o(i.free) for free epd_2in13_v2_test.o(.text) refers to imagedata.o(.constdata) for gImage_2in13 - epd_2in13_v2_test.o(.text) refers to font16.o(.data) for Font16 - epd_2in13_v2_test.o(.text) refers to font12cn.o(.data) for Font12CN - epd_2in13_v2_test.o(.text) refers to font24cn.o(.data) for Font24CN - epd_2in13_v2_test.o(.text) refers to font20.o(.data) for Font20 epd_2in13bc_test.o(.text) refers to printf3.o(i.__0printf$3) for __2printf epd_2in13bc_test.o(.text) refers to dev_config.o(.text) for DEV_Module_Init epd_2in13bc_test.o(.text) refers to epd_2in13bc.o(.text) for EPD_2IN13BC_Init @@ -312,7 +305,6 @@ Section Cross References epd_2in7.o(.text) refers to stm32f1xx_hal_gpio.o(.text) for HAL_GPIO_ReadPin epd_2in7.o(.text) refers to stm32f1xx_hal.o(.text) for HAL_Delay epd_2in7.o(.text) refers to dev_config.o(.text) for DEV_SPI_WriteByte - epd_2in7.o(.text) refers to epd_2in7.o(.constdata) for .constdata epd_2in7b.o(.text) refers to printf3.o(i.__0printf$3) for __2printf epd_2in7b.o(.text) refers to stm32f1xx_hal.o(.text) for HAL_Delay epd_2in7b.o(.text) refers to stm32f1xx_hal_gpio.o(.text) for HAL_GPIO_ReadPin @@ -764,13 +756,14 @@ Removing Unused input sections from the image. Removing system_stm32f1xx.o(.rrx_text), (6 bytes). Removing imagedata.o(.constdata), (5000 bytes). Removing imagedata.o(.constdata), (5000 bytes). - Removing imagedata.o(.constdata), (5000 bytes). Removing imagedata.o(.constdata), (2888 bytes). Removing imagedata.o(.constdata), (2888 bytes). Removing imagedata.o(.constdata), (5808 bytes). Removing imagedata.o(.constdata), (5808 bytes). Removing imagedata.o(.constdata), (5808 bytes). Removing imagedata.o(.constdata), (4736 bytes). + Removing imagedata.o(.constdata), (4736 bytes). + Removing imagedata.o(.constdata), (4736 bytes). Removing imagedata.o(.constdata), (4000 bytes). Removing imagedata.o(.constdata), (2756 bytes). Removing imagedata.o(.constdata), (2756 bytes). @@ -793,7 +786,6 @@ Removing Unused input sections from the image. Removing epd_1in54_v2_test.o(.rev16_text), (4 bytes). Removing epd_1in54_v2_test.o(.revsh_text), (4 bytes). Removing epd_1in54_v2_test.o(.rrx_text), (6 bytes). - Removing epd_1in54_v2_test.o(.text), (960 bytes). Removing epd_1in54b_test.o(.rev16_text), (4 bytes). Removing epd_1in54b_test.o(.revsh_text), (4 bytes). Removing epd_1in54b_test.o(.rrx_text), (6 bytes). @@ -817,6 +809,7 @@ Removing Unused input sections from the image. Removing epd_2in9bc_test.o(.rev16_text), (4 bytes). Removing epd_2in9bc_test.o(.revsh_text), (4 bytes). Removing epd_2in9bc_test.o(.rrx_text), (6 bytes). + Removing epd_2in9bc_test.o(.text), (928 bytes). Removing epd_2in9d_test.o(.rev16_text), (4 bytes). Removing epd_2in9d_test.o(.revsh_text), (4 bytes). Removing epd_2in9d_test.o(.rrx_text), (6 bytes). @@ -828,7 +821,7 @@ Removing Unused input sections from the image. Removing epd_2in13_v2_test.o(.rev16_text), (4 bytes). Removing epd_2in13_v2_test.o(.revsh_text), (4 bytes). Removing epd_2in13_v2_test.o(.rrx_text), (6 bytes). - Removing epd_2in13_v2_test.o(.text), (1012 bytes). + Removing epd_2in13_v2_test.o(.text), (424 bytes). Removing epd_2in13bc_test.o(.rev16_text), (4 bytes). Removing epd_2in13bc_test.o(.revsh_text), (4 bytes). Removing epd_2in13bc_test.o(.rrx_text), (6 bytes). @@ -869,7 +862,6 @@ Removing Unused input sections from the image. Removing epd_1in54_v2.o(.rev16_text), (4 bytes). Removing epd_1in54_v2.o(.revsh_text), (4 bytes). Removing epd_1in54_v2.o(.rrx_text), (6 bytes). - Removing epd_1in54_v2.o(.text), (752 bytes). Removing epd_1in54b.o(.rev16_text), (4 bytes). Removing epd_1in54b.o(.revsh_text), (4 bytes). Removing epd_1in54b.o(.rrx_text), (6 bytes). @@ -882,8 +874,7 @@ Removing Unused input sections from the image. Removing epd_2in7.o(.rev16_text), (4 bytes). Removing epd_2in7.o(.revsh_text), (4 bytes). Removing epd_2in7.o(.rrx_text), (6 bytes). - Removing epd_2in7.o(.text), (848 bytes). - Removing epd_2in7.o(.constdata), (212 bytes). + Removing epd_2in7.o(.text), (556 bytes). Removing epd_2in7b.o(.rev16_text), (4 bytes). Removing epd_2in7b.o(.revsh_text), (4 bytes). Removing epd_2in7b.o(.rrx_text), (6 bytes). @@ -897,6 +888,7 @@ Removing Unused input sections from the image. Removing epd_2in9bc.o(.rev16_text), (4 bytes). Removing epd_2in9bc.o(.revsh_text), (4 bytes). Removing epd_2in9bc.o(.rrx_text), (6 bytes). + Removing epd_2in9bc.o(.text), (576 bytes). Removing epd_2in9d.o(.rev16_text), (4 bytes). Removing epd_2in9d.o(.revsh_text), (4 bytes). Removing epd_2in9d.o(.rrx_text), (6 bytes). @@ -954,10 +946,18 @@ Removing Unused input sections from the image. Removing gui_paint.o(.rrx_text), (6 bytes). Removing font8.o(.constdata), (760 bytes). Removing font8.o(.data), (8 bytes). + Removing font12.o(.constdata), (1140 bytes). + Removing font12.o(.data), (8 bytes). + Removing font12cn.o(.constdata), (1494 bytes). + Removing font12cn.o(.data), (12 bytes). + Removing font16.o(.constdata), (3040 bytes). + Removing font16.o(.data), (8 bytes). Removing font20.o(.constdata), (3800 bytes). Removing font20.o(.data), (8 bytes). Removing font24.o(.constdata), (6840 bytes). Removing font24.o(.data), (8 bytes). + Removing font24cn.o(.constdata), (4482 bytes). + Removing font24cn.o(.data), (12 bytes). Removing dadd.o(.text), (334 bytes). Removing dmul.o(.text), (228 bytes). Removing ddiv.o(.text), (222 bytes). @@ -965,7 +965,7 @@ Removing Unused input sections from the image. Removing cdrcmple.o(.text), (48 bytes). Removing depilogue.o(.text), (186 bytes). -274 unused section(s) (total 347968 bytes) removed from the image. +282 unused section(s) (total 361336 bytes) removed from the image. ============================================================================== @@ -997,44 +997,44 @@ Image Symbol Table ../Src/stm32f1xx_hal_msp.c 0x00000000 Number 0 stm32f1xx_hal_msp.o ABSOLUTE ../Src/stm32f1xx_it.c 0x00000000 Number 0 stm32f1xx_it.o ABSOLUTE ../Src/usart.c 0x00000000 Number 0 usart.o ABSOLUTE - ../clib/microlib/division.c 0x00000000 Number 0 uldiv.o ABSOLUTE ../clib/microlib/division.c 0x00000000 Number 0 uidiv.o ABSOLUTE + ../clib/microlib/division.c 0x00000000 Number 0 uldiv.o ABSOLUTE + ../clib/microlib/init/entry.s 0x00000000 Number 0 entry.o ABSOLUTE ../clib/microlib/init/entry.s 0x00000000 Number 0 entry8b.o ABSOLUTE ../clib/microlib/init/entry.s 0x00000000 Number 0 entry7b.o ABSOLUTE - ../clib/microlib/init/entry.s 0x00000000 Number 0 entry7a.o ABSOLUTE - ../clib/microlib/init/entry.s 0x00000000 Number 0 entry5.o ABSOLUTE - ../clib/microlib/init/entry.s 0x00000000 Number 0 entry10a.o ABSOLUTE - ../clib/microlib/init/entry.s 0x00000000 Number 0 entry2.o ABSOLUTE - ../clib/microlib/init/entry.s 0x00000000 Number 0 entry10b.o ABSOLUTE ../clib/microlib/init/entry.s 0x00000000 Number 0 entry11a.o ABSOLUTE - ../clib/microlib/init/entry.s 0x00000000 Number 0 entry.o ABSOLUTE + ../clib/microlib/init/entry.s 0x00000000 Number 0 entry2.o ABSOLUTE + ../clib/microlib/init/entry.s 0x00000000 Number 0 entry5.o ABSOLUTE ../clib/microlib/init/entry.s 0x00000000 Number 0 entry11b.o ABSOLUTE - ../clib/microlib/init/entry.s 0x00000000 Number 0 entry9a.o ABSOLUTE + ../clib/microlib/init/entry.s 0x00000000 Number 0 entry7a.o ABSOLUTE ../clib/microlib/init/entry.s 0x00000000 Number 0 entry8a.o ABSOLUTE + ../clib/microlib/init/entry.s 0x00000000 Number 0 entry9a.o ABSOLUTE ../clib/microlib/init/entry.s 0x00000000 Number 0 entry9b.o ABSOLUTE + ../clib/microlib/init/entry.s 0x00000000 Number 0 entry10a.o ABSOLUTE + ../clib/microlib/init/entry.s 0x00000000 Number 0 entry10b.o ABSOLUTE ../clib/microlib/longlong.c 0x00000000 Number 0 llushr.o ABSOLUTE - ../clib/microlib/longlong.c 0x00000000 Number 0 llshl.o ABSOLUTE ../clib/microlib/longlong.c 0x00000000 Number 0 llsshr.o ABSOLUTE - ../clib/microlib/malloc/malloc.c 0x00000000 Number 0 mallocra.o ABSOLUTE - ../clib/microlib/malloc/malloc.c 0x00000000 Number 0 malloca.o ABSOLUTE + ../clib/microlib/longlong.c 0x00000000 Number 0 llshl.o ABSOLUTE ../clib/microlib/malloc/malloc.c 0x00000000 Number 0 mallocr.o ABSOLUTE ../clib/microlib/malloc/malloc.c 0x00000000 Number 0 malloc.o ABSOLUTE + ../clib/microlib/malloc/malloc.c 0x00000000 Number 0 mallocra.o ABSOLUTE + ../clib/microlib/malloc/malloc.c 0x00000000 Number 0 malloca.o ABSOLUTE ../clib/microlib/malloc/mvars.c 0x00000000 Number 0 mvars.o ABSOLUTE - ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf6.o ABSOLUTE - ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf1.o ABSOLUTE - ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf0.o ABSOLUTE - ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf8.o ABSOLUTE - ../clib/microlib/printf/printf.c 0x00000000 Number 0 printfb.o ABSOLUTE - ../clib/microlib/printf/printf.c 0x00000000 Number 0 printfa.o ABSOLUTE - ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf7.o ABSOLUTE - ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf5.o ABSOLUTE ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf4.o ABSOLUTE ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf3.o ABSOLUTE + ../clib/microlib/printf/printf.c 0x00000000 Number 0 printfa.o ABSOLUTE + ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf8.o ABSOLUTE + ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf7.o ABSOLUTE + ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf6.o ABSOLUTE + ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf5.o ABSOLUTE + ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf0.o ABSOLUTE + ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf1.o ABSOLUTE ../clib/microlib/printf/printf.c 0x00000000 Number 0 printf2.o ABSOLUTE + ../clib/microlib/printf/printf.c 0x00000000 Number 0 printfb.o ABSOLUTE ../clib/microlib/printf/stubs.s 0x00000000 Number 0 stubs.o ABSOLUTE ../clib/microlib/stdio/streams.c 0x00000000 Number 0 stdout.o ABSOLUTE - ../clib/microlib/string/memcpy.c 0x00000000 Number 0 memcpyb.o ABSOLUTE ../clib/microlib/string/memcpy.c 0x00000000 Number 0 memcpya.o ABSOLUTE + ../clib/microlib/string/memcpy.c 0x00000000 Number 0 memcpyb.o ABSOLUTE ../clib/microlib/string/memset.c 0x00000000 Number 0 memseta.o ABSOLUTE ../clib/microlib/stubs.s 0x00000000 Number 0 iusefp.o ABSOLUTE ../fplib/microlib/fpadd.c 0x00000000 Number 0 dadd.o ABSOLUTE @@ -1227,46 +1227,40 @@ Image Symbol Table .text 0x08003b28 Section 0 stm32f1xx_hal_cortex.o(.text) NVIC_SetPriority 0x08003cd9 Thumb Code 32 stm32f1xx_hal_cortex.o(.text) .text 0x08003d00 Section 0 system_stm32f1xx.o(.text) - .text 0x08003dac Section 0 epd_2in9bc_test.o(.text) - .text 0x0800414c Section 0 epd_2in9bc.o(.text) - EPD_2IN9BC_SendCommand 0x080042f5 Thumb Code 46 epd_2in9bc.o(.text) - EPD_2IN9BC_SendData 0x08004323 Thumb Code 46 epd_2in9bc.o(.text) - .text 0x0800438c Section 0 dev_config.o(.text) - .text 0x080043f4 Section 0 gui_paint.o(.text) - .text 0x08005038 Section 0 memseta.o(.text) - .text 0x0800505c Section 0 uidiv.o(.text) - .text 0x08005088 Section 36 init.o(.text) - i.__0printf$3 0x080050ac Section 0 printf3.o(i.__0printf$3) - i.__scatterload_copy 0x080050cc Section 14 handlers.o(i.__scatterload_copy) - i.__scatterload_null 0x080050da Section 2 handlers.o(i.__scatterload_null) - i.__scatterload_zeroinit 0x080050dc Section 14 handlers.o(i.__scatterload_zeroinit) - i._printf_core 0x080050ec Section 0 printf3.o(i._printf_core) - _printf_core 0x080050ed Thumb Code 436 printf3.o(i._printf_core) - i.free 0x080052a4 Section 0 malloc.o(i.free) - i.malloc 0x080052f4 Section 0 malloc.o(i.malloc) - .constdata 0x08005360 Section 16 system_stm32f1xx.o(.constdata) - .constdata 0x08005370 Section 8 system_stm32f1xx.o(.constdata) - .constdata 0x08005378 Section 4736 imagedata.o(.constdata) - .constdata 0x080065f8 Section 4736 imagedata.o(.constdata) - .constdata 0x08007878 Section 1140 font12.o(.constdata) - .constdata 0x08007cec Section 1494 font12cn.o(.constdata) - .constdata 0x080082c2 Section 3040 font16.o(.constdata) - .constdata 0x08008ea2 Section 4482 font24cn.o(.constdata) - .conststring 0x0800a024 Section 233 gui_paint.o(.conststring) + .text 0x08003dac Section 0 epd_1in54_v2_test.o(.text) + .text 0x08003ef4 Section 0 epd_1in54_v2.o(.text) + EPD_1IN54_V2_ReadBusy 0x08003ef5 Thumb Code 40 epd_1in54_v2.o(.text) + EPD_1IN54_V2_SendCommand 0x08004119 Thumb Code 46 epd_1in54_v2.o(.text) + EPD_1IN54_V2_SendData 0x08004147 Thumb Code 46 epd_1in54_v2.o(.text) + EPD_1IN54_V2_TurnOnDisplay 0x08004175 Thumb Code 26 epd_1in54_v2.o(.text) + EPD_1IN54_V2_TurnOnDisplayPart 0x0800418f Thumb Code 26 epd_1in54_v2.o(.text) + .text 0x080041e4 Section 0 dev_config.o(.text) + .text 0x0800424c Section 0 gui_paint.o(.text) + .text 0x08004e90 Section 0 memseta.o(.text) + .text 0x08004eb4 Section 0 uidiv.o(.text) + .text 0x08004ee0 Section 36 init.o(.text) + i.__0printf$3 0x08004f04 Section 0 printf3.o(i.__0printf$3) + i.__scatterload_copy 0x08004f24 Section 14 handlers.o(i.__scatterload_copy) + i.__scatterload_null 0x08004f32 Section 2 handlers.o(i.__scatterload_null) + i.__scatterload_zeroinit 0x08004f34 Section 14 handlers.o(i.__scatterload_zeroinit) + i._printf_core 0x08004f44 Section 0 printf3.o(i._printf_core) + _printf_core 0x08004f45 Thumb Code 436 printf3.o(i._printf_core) + i.free 0x080050fc Section 0 malloc.o(i.free) + i.malloc 0x0800514c Section 0 malloc.o(i.malloc) + .constdata 0x080051b8 Section 16 system_stm32f1xx.o(.constdata) + .constdata 0x080051c8 Section 8 system_stm32f1xx.o(.constdata) + .constdata 0x080051d0 Section 5000 imagedata.o(.constdata) + .conststring 0x08006558 Section 233 gui_paint.o(.conststring) .data 0x20000000 Section 12 stm32f1xx_hal.o(.data) .data 0x2000000c Section 4 system_stm32f1xx.o(.data) - .data 0x20000010 Section 8 font12.o(.data) - .data 0x20000018 Section 12 font12cn.o(.data) - .data 0x20000024 Section 8 font16.o(.data) - .data 0x2000002c Section 12 font24cn.o(.data) - .data 0x20000038 Section 4 stdout.o(.data) - .data 0x2000003c Section 4 mvars.o(.data) - .data 0x20000040 Section 4 mvars.o(.data) - .bss 0x20000044 Section 88 spi.o(.bss) - .bss 0x2000009c Section 64 usart.o(.bss) - .bss 0x200000dc Section 24 gui_paint.o(.bss) - HEAP 0x200000f8 Section 36864 startup_stm32f103xe.o(HEAP) - STACK 0x200090f8 Section 4096 startup_stm32f103xe.o(STACK) + .data 0x20000010 Section 4 stdout.o(.data) + .data 0x20000014 Section 4 mvars.o(.data) + .data 0x20000018 Section 4 mvars.o(.data) + .bss 0x2000001c Section 88 spi.o(.bss) + .bss 0x20000074 Section 64 usart.o(.bss) + .bss 0x200000b4 Section 24 gui_paint.o(.bss) + HEAP 0x200000d0 Section 36864 startup_stm32f103xe.o(HEAP) + STACK 0x200090d0 Section 4096 startup_stm32f103xe.o(STACK) Global Symbols @@ -1551,78 +1545,70 @@ Image Symbol Table HAL_SYSTICK_IRQHandler 0x08003cd1 Thumb Code 8 stm32f1xx_hal_cortex.o(.text) SystemInit 0x08003d01 Thumb Code 56 system_stm32f1xx.o(.text) SystemCoreClockUpdate 0x08003d39 Thumb Code 82 system_stm32f1xx.o(.text) - EPD_2in9bc_test 0x08003dad Thumb Code 566 epd_2in9bc_test.o(.text) - EPD_2IN9BC_ReadBusy 0x0800414d Thumb Code 40 epd_2in9bc.o(.text) - EPD_2IN9BC_Init 0x08004175 Thumb Code 150 epd_2in9bc.o(.text) - EPD_2IN9BC_Clear 0x0800420b Thumb Code 86 epd_2in9bc.o(.text) - EPD_2IN9BC_Display 0x08004261 Thumb Code 120 epd_2in9bc.o(.text) - EPD_2IN9BC_Sleep 0x080042d9 Thumb Code 28 epd_2in9bc.o(.text) - DEV_SPI_WriteByte 0x0800438d Thumb Code 18 dev_config.o(.text) - DEV_Module_Init 0x0800439f Thumb Code 38 dev_config.o(.text) - DEV_Module_Exit 0x080043c5 Thumb Code 38 dev_config.o(.text) - Paint_NewImage 0x080043f5 Thumb Code 52 gui_paint.o(.text) - Paint_SelectImage 0x08004429 Thumb Code 6 gui_paint.o(.text) - Paint_SetRotate 0x0800442f Thumb Code 44 gui_paint.o(.text) - Paint_SetMirroring 0x0800445b Thumb Code 62 gui_paint.o(.text) - Paint_SetPixel 0x08004499 Thumb Code 164 gui_paint.o(.text) - Paint_Clear 0x0800453d Thumb Code 46 gui_paint.o(.text) - Paint_ClearWindows 0x0800456b Thumb Code 52 gui_paint.o(.text) - Paint_DrawPoint 0x0800459f Thumb Code 160 gui_paint.o(.text) - Paint_DrawLine 0x0800463f Thumb Code 198 gui_paint.o(.text) - Paint_DrawRectangle 0x08004705 Thumb Code 170 gui_paint.o(.text) - Paint_DrawCircle 0x080047af Thumb Code 880 gui_paint.o(.text) - Paint_DrawChar 0x08004b1f Thumb Code 172 gui_paint.o(.text) - Paint_DrawString_EN 0x08004bcb Thumb Code 116 gui_paint.o(.text) - Paint_DrawString_CN 0x08004c3f Thumb Code 394 gui_paint.o(.text) - Paint_DrawNum 0x08004dc9 Thumb Code 140 gui_paint.o(.text) - Paint_DrawTime 0x08004e55 Thumb Code 436 gui_paint.o(.text) - Paint_DrawBitMap 0x08005009 Thumb Code 44 gui_paint.o(.text) - __aeabi_memset 0x08005039 Thumb Code 14 memseta.o(.text) - __aeabi_memset4 0x08005039 Thumb Code 0 memseta.o(.text) - __aeabi_memset8 0x08005039 Thumb Code 0 memseta.o(.text) - __aeabi_memclr 0x08005047 Thumb Code 4 memseta.o(.text) - __aeabi_memclr4 0x08005047 Thumb Code 0 memseta.o(.text) - __aeabi_memclr8 0x08005047 Thumb Code 0 memseta.o(.text) - _memset$wrapper 0x0800504b Thumb Code 18 memseta.o(.text) - __aeabi_uidiv 0x0800505d Thumb Code 0 uidiv.o(.text) - __aeabi_uidivmod 0x0800505d Thumb Code 44 uidiv.o(.text) - __scatterload 0x08005089 Thumb Code 28 init.o(.text) - __scatterload_rt2 0x08005089 Thumb Code 0 init.o(.text) - __0printf$3 0x080050ad Thumb Code 22 printf3.o(i.__0printf$3) - __1printf$3 0x080050ad Thumb Code 0 printf3.o(i.__0printf$3) - __2printf 0x080050ad Thumb Code 0 printf3.o(i.__0printf$3) - __scatterload_copy 0x080050cd Thumb Code 14 handlers.o(i.__scatterload_copy) - __scatterload_null 0x080050db Thumb Code 2 handlers.o(i.__scatterload_null) - __scatterload_zeroinit 0x080050dd Thumb Code 14 handlers.o(i.__scatterload_zeroinit) - free 0x080052a5 Thumb Code 76 malloc.o(i.free) - malloc 0x080052f5 Thumb Code 92 malloc.o(i.malloc) - AHBPrescTable 0x08005360 Data 16 system_stm32f1xx.o(.constdata) - APBPrescTable 0x08005370 Data 8 system_stm32f1xx.o(.constdata) - gImage_2in9bc_b 0x08005378 Data 4736 imagedata.o(.constdata) - gImage_2in9bc_ry 0x080065f8 Data 4736 imagedata.o(.constdata) - Font12_Table 0x08007878 Data 1140 font12.o(.constdata) - Font12CN_Table 0x08007cec Data 1494 font12cn.o(.constdata) - Font16_Table 0x080082c2 Data 3040 font16.o(.constdata) - Font24CN_Table 0x08008ea2 Data 4482 font24cn.o(.constdata) - Region$$Table$$Base 0x0800a110 Number 0 anon$$obj.o(Region$$Table) - Region$$Table$$Limit 0x0800a130 Number 0 anon$$obj.o(Region$$Table) + EPD_1in54_V2_test 0x08003dad Thumb Code 156 epd_1in54_v2_test.o(.text) + EPD_1IN54_V2_Init 0x08003f1d Thumb Code 228 epd_1in54_v2.o(.text) + EPD_1IN54_V2_Clear 0x08004001 Thumb Code 48 epd_1in54_v2.o(.text) + EPD_1IN54_V2_Display 0x08004031 Thumb Code 56 epd_1in54_v2.o(.text) + EPD_1IN54_V2_DisplayPartBaseImage 0x08004069 Thumb Code 94 epd_1in54_v2.o(.text) + EPD_1IN54_V2_DisplayPart 0x080040c7 Thumb Code 58 epd_1in54_v2.o(.text) + EPD_1IN54_V2_Sleep 0x08004101 Thumb Code 24 epd_1in54_v2.o(.text) + DEV_SPI_WriteByte 0x080041e5 Thumb Code 18 dev_config.o(.text) + DEV_Module_Init 0x080041f7 Thumb Code 38 dev_config.o(.text) + DEV_Module_Exit 0x0800421d Thumb Code 38 dev_config.o(.text) + Paint_NewImage 0x0800424d Thumb Code 52 gui_paint.o(.text) + Paint_SelectImage 0x08004281 Thumb Code 6 gui_paint.o(.text) + Paint_SetRotate 0x08004287 Thumb Code 44 gui_paint.o(.text) + Paint_SetMirroring 0x080042b3 Thumb Code 62 gui_paint.o(.text) + Paint_SetPixel 0x080042f1 Thumb Code 164 gui_paint.o(.text) + Paint_Clear 0x08004395 Thumb Code 46 gui_paint.o(.text) + Paint_ClearWindows 0x080043c3 Thumb Code 52 gui_paint.o(.text) + Paint_DrawPoint 0x080043f7 Thumb Code 160 gui_paint.o(.text) + Paint_DrawLine 0x08004497 Thumb Code 198 gui_paint.o(.text) + Paint_DrawRectangle 0x0800455d Thumb Code 170 gui_paint.o(.text) + Paint_DrawCircle 0x08004607 Thumb Code 880 gui_paint.o(.text) + Paint_DrawChar 0x08004977 Thumb Code 172 gui_paint.o(.text) + Paint_DrawString_EN 0x08004a23 Thumb Code 116 gui_paint.o(.text) + Paint_DrawString_CN 0x08004a97 Thumb Code 394 gui_paint.o(.text) + Paint_DrawNum 0x08004c21 Thumb Code 140 gui_paint.o(.text) + Paint_DrawTime 0x08004cad Thumb Code 436 gui_paint.o(.text) + Paint_DrawBitMap 0x08004e61 Thumb Code 44 gui_paint.o(.text) + __aeabi_memset 0x08004e91 Thumb Code 14 memseta.o(.text) + __aeabi_memset4 0x08004e91 Thumb Code 0 memseta.o(.text) + __aeabi_memset8 0x08004e91 Thumb Code 0 memseta.o(.text) + __aeabi_memclr 0x08004e9f Thumb Code 4 memseta.o(.text) + __aeabi_memclr4 0x08004e9f Thumb Code 0 memseta.o(.text) + __aeabi_memclr8 0x08004e9f Thumb Code 0 memseta.o(.text) + _memset$wrapper 0x08004ea3 Thumb Code 18 memseta.o(.text) + __aeabi_uidiv 0x08004eb5 Thumb Code 0 uidiv.o(.text) + __aeabi_uidivmod 0x08004eb5 Thumb Code 44 uidiv.o(.text) + __scatterload 0x08004ee1 Thumb Code 28 init.o(.text) + __scatterload_rt2 0x08004ee1 Thumb Code 0 init.o(.text) + __0printf$3 0x08004f05 Thumb Code 22 printf3.o(i.__0printf$3) + __1printf$3 0x08004f05 Thumb Code 0 printf3.o(i.__0printf$3) + __2printf 0x08004f05 Thumb Code 0 printf3.o(i.__0printf$3) + __scatterload_copy 0x08004f25 Thumb Code 14 handlers.o(i.__scatterload_copy) + __scatterload_null 0x08004f33 Thumb Code 2 handlers.o(i.__scatterload_null) + __scatterload_zeroinit 0x08004f35 Thumb Code 14 handlers.o(i.__scatterload_zeroinit) + free 0x080050fd Thumb Code 76 malloc.o(i.free) + malloc 0x0800514d Thumb Code 92 malloc.o(i.malloc) + AHBPrescTable 0x080051b8 Data 16 system_stm32f1xx.o(.constdata) + APBPrescTable 0x080051c8 Data 8 system_stm32f1xx.o(.constdata) + gImage_1in54 0x080051d0 Data 5000 imagedata.o(.constdata) + Region$$Table$$Base 0x08006644 Number 0 anon$$obj.o(Region$$Table) + Region$$Table$$Limit 0x08006664 Number 0 anon$$obj.o(Region$$Table) uwTickFreq 0x20000000 Data 1 stm32f1xx_hal.o(.data) uwTickPrio 0x20000004 Data 4 stm32f1xx_hal.o(.data) uwTick 0x20000008 Data 4 stm32f1xx_hal.o(.data) SystemCoreClock 0x2000000c Data 4 system_stm32f1xx.o(.data) - Font12 0x20000010 Data 8 font12.o(.data) - Font12CN 0x20000018 Data 12 font12cn.o(.data) - Font16 0x20000024 Data 8 font16.o(.data) - Font24CN 0x2000002c Data 12 font24cn.o(.data) - __stdout 0x20000038 Data 4 stdout.o(.data) - __microlib_freelist 0x2000003c Data 4 mvars.o(.data) - __microlib_freelist_initialised 0x20000040 Data 4 mvars.o(.data) - hspi1 0x20000044 Data 88 spi.o(.bss) - huart1 0x2000009c Data 64 usart.o(.bss) - Paint 0x200000dc Data 24 gui_paint.o(.bss) - __heap_base 0x200000f8 Data 0 startup_stm32f103xe.o(HEAP) - __heap_limit 0x200090f8 Data 0 startup_stm32f103xe.o(HEAP) - __initial_sp 0x2000a0f8 Data 0 startup_stm32f103xe.o(STACK) + __stdout 0x20000010 Data 4 stdout.o(.data) + __microlib_freelist 0x20000014 Data 4 mvars.o(.data) + __microlib_freelist_initialised 0x20000018 Data 4 mvars.o(.data) + hspi1 0x2000001c Data 88 spi.o(.bss) + huart1 0x20000074 Data 64 usart.o(.bss) + Paint 0x200000b4 Data 24 gui_paint.o(.bss) + __heap_base 0x200000d0 Data 0 startup_stm32f103xe.o(HEAP) + __heap_limit 0x200090d0 Data 0 startup_stm32f103xe.o(HEAP) + __initial_sp 0x2000a0d0 Data 0 startup_stm32f103xe.o(STACK) @@ -1632,22 +1618,22 @@ Memory Map of the image Image Entry point : 0x08000131 - Load Region LR_IROM1 (Base: 0x08000000, Size: 0x0000a174, Max: 0x00080000, ABSOLUTE) + Load Region LR_IROM1 (Base: 0x08000000, Size: 0x00006680, Max: 0x00080000, ABSOLUTE) - Execution Region ER_IROM1 (Exec base: 0x08000000, Load base: 0x08000000, Size: 0x0000a130, Max: 0x00080000, ABSOLUTE) + Execution Region ER_IROM1 (Exec base: 0x08000000, Load base: 0x08000000, Size: 0x00006664, Max: 0x00080000, ABSOLUTE) Exec Addr Load Addr Size Type Attr Idx E Section Name Object 0x08000000 0x08000000 0x00000130 Data RO 3 RESET startup_stm32f103xe.o - 0x08000130 0x08000130 0x00000000 Code RO 1881 * .ARM.Collect$$$$00000000 mc_w.l(entry.o) - 0x08000130 0x08000130 0x00000004 Code RO 2177 .ARM.Collect$$$$00000001 mc_w.l(entry2.o) - 0x08000134 0x08000134 0x00000004 Code RO 2180 .ARM.Collect$$$$00000004 mc_w.l(entry5.o) - 0x08000138 0x08000138 0x00000000 Code RO 2182 .ARM.Collect$$$$00000008 mc_w.l(entry7b.o) - 0x08000138 0x08000138 0x00000000 Code RO 2184 .ARM.Collect$$$$0000000A mc_w.l(entry8b.o) - 0x08000138 0x08000138 0x00000008 Code RO 2185 .ARM.Collect$$$$0000000B mc_w.l(entry9a.o) - 0x08000140 0x08000140 0x00000000 Code RO 2187 .ARM.Collect$$$$0000000D mc_w.l(entry10a.o) - 0x08000140 0x08000140 0x00000000 Code RO 2189 .ARM.Collect$$$$0000000F mc_w.l(entry11a.o) - 0x08000140 0x08000140 0x00000004 Code RO 2178 .ARM.Collect$$$$00002712 mc_w.l(entry2.o) + 0x08000130 0x08000130 0x00000000 Code RO 1879 * .ARM.Collect$$$$00000000 mc_w.l(entry.o) + 0x08000130 0x08000130 0x00000004 Code RO 2175 .ARM.Collect$$$$00000001 mc_w.l(entry2.o) + 0x08000134 0x08000134 0x00000004 Code RO 2178 .ARM.Collect$$$$00000004 mc_w.l(entry5.o) + 0x08000138 0x08000138 0x00000000 Code RO 2180 .ARM.Collect$$$$00000008 mc_w.l(entry7b.o) + 0x08000138 0x08000138 0x00000000 Code RO 2182 .ARM.Collect$$$$0000000A mc_w.l(entry8b.o) + 0x08000138 0x08000138 0x00000008 Code RO 2183 .ARM.Collect$$$$0000000B mc_w.l(entry9a.o) + 0x08000140 0x08000140 0x00000000 Code RO 2185 .ARM.Collect$$$$0000000D mc_w.l(entry10a.o) + 0x08000140 0x08000140 0x00000000 Code RO 2187 .ARM.Collect$$$$0000000F mc_w.l(entry11a.o) + 0x08000140 0x08000140 0x00000004 Code RO 2176 .ARM.Collect$$$$00002712 mc_w.l(entry2.o) 0x08000144 0x08000144 0x00000024 Code RO 4 .text startup_stm32f103xe.o 0x08000168 0x08000168 0x00000084 Code RO 13 .text main.o 0x080001ec 0x080001ec 0x00000054 Code RO 152 .text gpio.o @@ -1666,53 +1652,44 @@ Memory Map of the image 0x08003130 0x08003130 0x000009f8 Code RO 519 .text stm32f1xx_hal_dma.o 0x08003b28 0x08003b28 0x000001d8 Code RO 543 .text stm32f1xx_hal_cortex.o 0x08003d00 0x08003d00 0x000000ac Code RO 647 .text system_stm32f1xx.o - 0x08003dac 0x08003dac 0x000003a0 Code RO 905 .text epd_2in9bc_test.o - 0x0800414c 0x0800414c 0x00000240 Code RO 1412 .text epd_2in9bc.o - 0x0800438c 0x0800438c 0x00000068 Code RO 1722 .text dev_config.o - 0x080043f4 0x080043f4 0x00000c44 Code RO 1747 .text gui_paint.o - 0x08005038 0x08005038 0x00000024 Code RO 1886 .text mc_w.l(memseta.o) - 0x0800505c 0x0800505c 0x0000002c Code RO 2192 .text mc_w.l(uidiv.o) - 0x08005088 0x08005088 0x00000024 Code RO 2213 .text mc_w.l(init.o) - 0x080050ac 0x080050ac 0x00000020 Code RO 1977 i.__0printf$3 mc_w.l(printf3.o) - 0x080050cc 0x080050cc 0x0000000e Code RO 2223 i.__scatterload_copy mc_w.l(handlers.o) - 0x080050da 0x080050da 0x00000002 Code RO 2224 i.__scatterload_null mc_w.l(handlers.o) - 0x080050dc 0x080050dc 0x0000000e Code RO 2225 i.__scatterload_zeroinit mc_w.l(handlers.o) - 0x080050ea 0x080050ea 0x00000002 PAD - 0x080050ec 0x080050ec 0x000001b8 Code RO 1984 i._printf_core mc_w.l(printf3.o) - 0x080052a4 0x080052a4 0x00000050 Code RO 2149 i.free mc_w.l(malloc.o) - 0x080052f4 0x080052f4 0x0000006c Code RO 2150 i.malloc mc_w.l(malloc.o) - 0x08005360 0x08005360 0x00000010 Data RO 648 .constdata system_stm32f1xx.o - 0x08005370 0x08005370 0x00000008 Data RO 649 .constdata system_stm32f1xx.o - 0x08005378 0x08005378 0x00001280 Data RO 685 .constdata imagedata.o - 0x080065f8 0x080065f8 0x00001280 Data RO 686 .constdata imagedata.o - 0x08007878 0x08007878 0x00000474 Data RO 1797 .constdata font12.o - 0x08007cec 0x08007cec 0x000005d6 Data RO 1811 .constdata font12cn.o - 0x080082c2 0x080082c2 0x00000be0 Data RO 1825 .constdata font16.o - 0x08008ea2 0x08008ea2 0x00001182 Data RO 1867 .constdata font24cn.o - 0x0800a024 0x0800a024 0x000000e9 Data RO 1749 .conststring gui_paint.o - 0x0800a10d 0x0800a10d 0x00000003 PAD - 0x0800a110 0x0800a110 0x00000020 Data RO 2221 Region$$Table anon$$obj.o + 0x08003dac 0x08003dac 0x00000148 Code RO 743 .text epd_1in54_v2_test.o + 0x08003ef4 0x08003ef4 0x000002f0 Code RO 1255 .text epd_1in54_v2.o + 0x080041e4 0x080041e4 0x00000068 Code RO 1720 .text dev_config.o + 0x0800424c 0x0800424c 0x00000c44 Code RO 1745 .text gui_paint.o + 0x08004e90 0x08004e90 0x00000024 Code RO 1884 .text mc_w.l(memseta.o) + 0x08004eb4 0x08004eb4 0x0000002c Code RO 2190 .text mc_w.l(uidiv.o) + 0x08004ee0 0x08004ee0 0x00000024 Code RO 2211 .text mc_w.l(init.o) + 0x08004f04 0x08004f04 0x00000020 Code RO 1975 i.__0printf$3 mc_w.l(printf3.o) + 0x08004f24 0x08004f24 0x0000000e Code RO 2221 i.__scatterload_copy mc_w.l(handlers.o) + 0x08004f32 0x08004f32 0x00000002 Code RO 2222 i.__scatterload_null mc_w.l(handlers.o) + 0x08004f34 0x08004f34 0x0000000e Code RO 2223 i.__scatterload_zeroinit mc_w.l(handlers.o) + 0x08004f42 0x08004f42 0x00000002 PAD + 0x08004f44 0x08004f44 0x000001b8 Code RO 1982 i._printf_core mc_w.l(printf3.o) + 0x080050fc 0x080050fc 0x00000050 Code RO 2147 i.free mc_w.l(malloc.o) + 0x0800514c 0x0800514c 0x0000006c Code RO 2148 i.malloc mc_w.l(malloc.o) + 0x080051b8 0x080051b8 0x00000010 Data RO 648 .constdata system_stm32f1xx.o + 0x080051c8 0x080051c8 0x00000008 Data RO 649 .constdata system_stm32f1xx.o + 0x080051d0 0x080051d0 0x00001388 Data RO 676 .constdata imagedata.o + 0x08006558 0x08006558 0x000000e9 Data RO 1747 .conststring gui_paint.o + 0x08006641 0x08006641 0x00000003 PAD + 0x08006644 0x08006644 0x00000020 Data RO 2219 Region$$Table anon$$obj.o - Execution Region RW_IRAM1 (Exec base: 0x20000000, Load base: 0x0800a130, Size: 0x0000a0f8, Max: 0x00010000, ABSOLUTE) + Execution Region RW_IRAM1 (Exec base: 0x20000000, Load base: 0x08006664, Size: 0x0000a0d0, Max: 0x00010000, ABSOLUTE) Exec Addr Load Addr Size Type Attr Idx E Section Name Object - 0x20000000 0x0800a130 0x0000000c Data RW 420 .data stm32f1xx_hal.o - 0x2000000c 0x0800a13c 0x00000004 Data RW 650 .data system_stm32f1xx.o - 0x20000010 0x0800a140 0x00000008 Data RW 1798 .data font12.o - 0x20000018 0x0800a148 0x0000000c Data RW 1812 .data font12cn.o - 0x20000024 0x0800a154 0x00000008 Data RW 1826 .data font16.o - 0x2000002c 0x0800a15c 0x0000000c Data RW 1868 .data font24cn.o - 0x20000038 0x0800a168 0x00000004 Data RW 2191 .data mc_w.l(stdout.o) - 0x2000003c 0x0800a16c 0x00000004 Data RW 2200 .data mc_w.l(mvars.o) - 0x20000040 0x0800a170 0x00000004 Data RW 2201 .data mc_w.l(mvars.o) - 0x20000044 - 0x00000058 Zero RW 177 .bss spi.o - 0x2000009c - 0x00000040 Zero RW 207 .bss usart.o - 0x200000dc - 0x00000018 Zero RW 1748 .bss gui_paint.o - 0x200000f4 0x0800a174 0x00000004 PAD - 0x200000f8 - 0x00009000 Zero RW 2 HEAP startup_stm32f103xe.o - 0x200090f8 - 0x00001000 Zero RW 1 STACK startup_stm32f103xe.o + 0x20000000 0x08006664 0x0000000c Data RW 420 .data stm32f1xx_hal.o + 0x2000000c 0x08006670 0x00000004 Data RW 650 .data system_stm32f1xx.o + 0x20000010 0x08006674 0x00000004 Data RW 2189 .data mc_w.l(stdout.o) + 0x20000014 0x08006678 0x00000004 Data RW 2198 .data mc_w.l(mvars.o) + 0x20000018 0x0800667c 0x00000004 Data RW 2199 .data mc_w.l(mvars.o) + 0x2000001c - 0x00000058 Zero RW 177 .bss spi.o + 0x20000074 - 0x00000040 Zero RW 207 .bss usart.o + 0x200000b4 - 0x00000018 Zero RW 1746 .bss gui_paint.o + 0x200000cc 0x08006680 0x00000004 PAD + 0x200000d0 - 0x00009000 Zero RW 2 HEAP startup_stm32f103xe.o + 0x200090d0 - 0x00001000 Zero RW 1 STACK startup_stm32f103xe.o ============================================================================== @@ -1723,16 +1700,12 @@ Image component sizes Code (inc. data) RO Data RW Data ZI Data Debug Object Name 104 10 0 0 0 788 dev_config.o - 576 60 0 0 0 2643 epd_2in9bc.o - 928 362 0 0 0 1314 epd_2in9bc_test.o - 0 0 1140 8 0 1409 font12.o - 0 0 1494 12 0 1411 font12cn.o - 0 0 3040 8 0 1409 font16.o - 0 0 4482 12 0 1411 font24cn.o + 752 60 0 0 0 3586 epd_1in54_v2.o + 328 172 0 0 0 1096 epd_1in54_v2_test.o 84 8 0 0 0 839 gpio.o 3140 506 233 0 24 12475 gui_paint.o - 0 0 9472 0 0 2076 imagedata.o - 132 0 0 0 0 460737 main.o + 0 0 5000 0 0 2076 imagedata.o + 132 0 0 0 0 460733 main.o 180 32 0 0 88 1473 spi.o 36 8 304 0 40960 816 startup_stm32f103xe.o 376 28 0 12 0 4829 stm32f1xx_hal.o @@ -1749,7 +1722,7 @@ Image component sizes 212 34 0 0 64 1717 usart.o ---------------------------------------------------------------------- - 20212 1424 20224 56 41140 576939 Object Totals + 19788 1234 5596 16 41140 572020 Object Totals 0 0 32 0 0 0 (incl. Generated) 4 0 3 0 4 0 (incl. Padding) @@ -1794,15 +1767,15 @@ Image component sizes Code (inc. data) RO Data RW Data ZI Data Debug - 21040 1474 20224 68 41140 575299 Grand Totals - 21040 1474 20224 68 41140 575299 ELF Image Totals - 21040 1474 20224 68 0 0 ROM Totals + 20616 1284 5596 28 41140 570380 Grand Totals + 20616 1284 5596 28 41140 570380 ELF Image Totals + 20616 1284 5596 28 0 0 ROM Totals ============================================================================== - Total RO Size (Code + RO Data) 41264 ( 40.30kB) - Total RW Size (RW Data + ZI Data) 41208 ( 40.24kB) - Total ROM Size (Code + RO Data + RW Data) 41332 ( 40.36kB) + Total RO Size (Code + RO Data) 26212 ( 25.60kB) + Total RW Size (RW Data + ZI Data) 41168 ( 40.20kB) + Total ROM Size (Code + RO Data + RW Data) 26240 ( 25.63kB) ============================================================================== diff --git a/STM32/STM32-F103ZET6/Src/main.c b/STM32/STM32-F103ZET6/Src/main.c index 7d7eafb..dd72e56 100644 --- a/STM32/STM32-F103ZET6/Src/main.c +++ b/STM32/STM32-F103ZET6/Src/main.c @@ -71,7 +71,7 @@ int main(void) /* USER CODE BEGIN 2 */ // EPD_1in54_test(); -// EPD_1in54_V2_test(); + EPD_1in54_V2_test(); // EPD_1in54b_test(); // EPD_1in54c_test(); @@ -79,7 +79,7 @@ int main(void) // EPD_2in7b_test(); // EPD_2in9_test(); - EPD_2in9bc_test(); +// EPD_2in9bc_test(); // EPD_2in9d_test(); // EPD_2in13_test(); diff --git a/STM32/STM32-F103ZET6/User/Examples/EPD_1in54_V2_test.c b/STM32/STM32-F103ZET6/User/Examples/EPD_1in54_V2_test.c index 1f2183b..ac875ba 100644 --- a/STM32/STM32-F103ZET6/User/Examples/EPD_1in54_V2_test.c +++ b/STM32/STM32-F103ZET6/User/Examples/EPD_1in54_V2_test.c @@ -35,6 +35,10 @@ int EPD_1in54_V2_test(void) printf("EPD_1in54_V2_test Demo\r\n"); DEV_Module_Init(); +for(;;){ +// EPD_1IN54_V2_Init(); +// EPD_1IN54_V2_Clear(); + printf("e-Paper Init and Clear...\r\n"); EPD_1IN54_V2_Init(); EPD_1IN54_V2_Clear(); @@ -61,7 +65,7 @@ int EPD_1in54_V2_test(void) DEV_Delay_ms(2000); #endif -#if 1 // Drawing on the image +#if 0 // Drawing on the image printf("Drawing\r\n"); //1.Select Image Paint_SelectImage(BlackImage); @@ -93,7 +97,7 @@ int EPD_1in54_V2_test(void) DEV_Delay_ms(2000); #endif -#if 1 //Partial refresh, example shows time +#if 0 //Partial refresh, example shows time // The image of the previous frame must be uploaded, otherwise the // first few seconds will display an exception. @@ -142,7 +146,7 @@ int EPD_1in54_V2_test(void) EPD_1IN54_V2_Sleep(); free(BlackImage); BlackImage = NULL; - +} // close 5V printf("close 5V, Module enters 0 power consumption ...\r\n"); DEV_Module_Exit(); diff --git a/STM32/STM32-F103ZET6/User/Examples/EPD_2in13_V2_test.c b/STM32/STM32-F103ZET6/User/Examples/EPD_2in13_V2_test.c index c11418f..698cc83 100644 --- a/STM32/STM32-F103ZET6/User/Examples/EPD_2in13_V2_test.c +++ b/STM32/STM32-F103ZET6/User/Examples/EPD_2in13_V2_test.c @@ -65,7 +65,7 @@ int EPD_2in13_V2_test(void) DEV_Delay_ms(2000); #endif -#if 1 // Drawing on the image +#if 0 // Drawing on the image printf("Drawing\r\n"); //1.Select Image Paint_SelectImage(BlackImage); @@ -97,7 +97,7 @@ int EPD_2in13_V2_test(void) DEV_Delay_ms(2000); #endif -#if 1 //Partial refresh, example shows time +#if 0 //Partial refresh, example shows time printf("Partial refresh\r\n"); EPD_2IN13_V2_Init(EPD_2IN13_V2_FULL); EPD_2IN13_V2_DisplayPartBaseImage(BlackImage); diff --git a/STM32/STM32-F103ZET6/User/e-Paper/EPD_2in7.c b/STM32/STM32-F103ZET6/User/e-Paper/EPD_2in7.c index 2dbeebf..0a09003 100644 --- a/STM32/STM32-F103ZET6/User/e-Paper/EPD_2in7.c +++ b/STM32/STM32-F103ZET6/User/e-Paper/EPD_2in7.c @@ -82,53 +82,6 @@ #include "EPD_2in7.h" #include "Debug.h" -static const unsigned char EPD_2in7_lut_vcom_dc[] = { - 0x00 ,0x00, - 0x00 ,0x08 ,0x00 ,0x00 ,0x00 ,0x02, - 0x60 ,0x28 ,0x28 ,0x00 ,0x00 ,0x01, - 0x00 ,0x14 ,0x00 ,0x00 ,0x00 ,0x01, - 0x00 ,0x12 ,0x12 ,0x00 ,0x00 ,0x01, - 0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00, - 0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00, - 0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00 -}; -static const unsigned char EPD_2in7_lut_ww[] = { - 0x40 ,0x08 ,0x00 ,0x00 ,0x00 ,0x02, - 0x90 ,0x28 ,0x28 ,0x00 ,0x00 ,0x01, - 0x40 ,0x14 ,0x00 ,0x00 ,0x00 ,0x01, - 0xA0 ,0x12 ,0x12 ,0x00 ,0x00 ,0x01, - 0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00, - 0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00, - 0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00, -}; -static const unsigned char EPD_2in7_lut_bw[] = { - 0x40 ,0x08 ,0x00 ,0x00 ,0x00 ,0x02, - 0x90 ,0x28 ,0x28 ,0x00 ,0x00 ,0x01, - 0x40 ,0x14 ,0x00 ,0x00 ,0x00 ,0x01, - 0xA0 ,0x12 ,0x12 ,0x00 ,0x00 ,0x01, - 0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00, - 0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00, - 0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00, -}; -static const unsigned char EPD_2in7_lut_bb[] = { - 0x80 ,0x08 ,0x00 ,0x00 ,0x00 ,0x02, - 0x90 ,0x28 ,0x28 ,0x00 ,0x00 ,0x01, - 0x80 ,0x14 ,0x00 ,0x00 ,0x00 ,0x01, - 0x50 ,0x12 ,0x12 ,0x00 ,0x00 ,0x01, - 0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00, - 0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00, - 0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00, -}; -static const unsigned char EPD_2in7_lut_wb[] = { - 0x80 ,0x08 ,0x00 ,0x00 ,0x00 ,0x02, - 0x90 ,0x28 ,0x28 ,0x00 ,0x00 ,0x01, - 0x80 ,0x14 ,0x00 ,0x00 ,0x00 ,0x01, - 0x50 ,0x12 ,0x12 ,0x00 ,0x00 ,0x01, - 0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00, - 0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00, - 0x00 ,0x00 ,0x00 ,0x00 ,0x00 ,0x00, -}; - /****************************************************************************** function : Software reset parameter: @@ -186,39 +139,6 @@ static void EPD_2in7_ReadBusy(void) Debug("e-Paper busy release\r\n"); } -/****************************************************************************** -function : set the look-up tables -parameter: -******************************************************************************/ -static void EPD_2in7_SetLut(void) -{ - unsigned int count; - EPD_2in7_SendCommand(0x20); //vcom - for(count = 0; count < 44; count++) { - EPD_2in7_SendData(EPD_2in7_lut_vcom_dc[count]); - } - - EPD_2in7_SendCommand(0x21); //ww -- - for(count = 0; count < 42; count++) { - EPD_2in7_SendData(EPD_2in7_lut_ww[count]); - } - - EPD_2in7_SendCommand(0x22); //bw r - for(count = 0; count < 42; count++) { - EPD_2in7_SendData(EPD_2in7_lut_bw[count]); - } - - EPD_2in7_SendCommand(0x23); //wb w - for(count = 0; count < 42; count++) { - EPD_2in7_SendData(EPD_2in7_lut_bb[count]); - } - - EPD_2in7_SendCommand(0x24); //bb b - for(count = 0; count < 42; count++) { - EPD_2in7_SendData(EPD_2in7_lut_wb[count]); - } -} - /****************************************************************************** function : Initialize the e-Paper register parameter: @@ -227,67 +147,35 @@ void EPD_2IN7_Init(void) { EPD_2in7_Reset(); - EPD_2in7_SendCommand(0x01); // POWER_SETTING - EPD_2in7_SendData(0x03); // VDS_EN, VDG_EN - EPD_2in7_SendData(0x00); // VCOM_HV, VGHL_LV[1], VGHL_LV[0] - EPD_2in7_SendData(0x2b); // VDH - EPD_2in7_SendData(0x2b); // VDL - EPD_2in7_SendData(0x09); // VDHR - - EPD_2in7_SendCommand(0x06); // BOOSTER_SOFT_START - EPD_2in7_SendData(0x07); - EPD_2in7_SendData(0x07); - EPD_2in7_SendData(0x17); - - // Power optimization - EPD_2in7_SendCommand(0xF8); - EPD_2in7_SendData(0x60); - EPD_2in7_SendData(0xA5); - - // Power optimization - EPD_2in7_SendCommand(0xF8); - EPD_2in7_SendData(0x89); - EPD_2in7_SendData(0xA5); - - // Power optimization - EPD_2in7_SendCommand(0xF8); - EPD_2in7_SendData(0x90); - EPD_2in7_SendData(0x00); - - // Power optimization - EPD_2in7_SendCommand(0xF8); - EPD_2in7_SendData(0x93); - EPD_2in7_SendData(0x2A); - - // Power optimization - EPD_2in7_SendCommand(0xF8); - EPD_2in7_SendData(0xA0); - EPD_2in7_SendData(0xA5); - - // Power optimization - EPD_2in7_SendCommand(0xF8); - EPD_2in7_SendData(0xA1); - EPD_2in7_SendData(0x00); - - // Power optimization - EPD_2in7_SendCommand(0xF8); - EPD_2in7_SendData(0x73); - EPD_2in7_SendData(0x41); - - EPD_2in7_SendCommand(0x16); // PARTIAL_DISPLAY_REFRESH - EPD_2in7_SendData(0x00); - - EPD_2in7_SendCommand(0x04); // POWER_ON - EPD_2in7_ReadBusy(); + EPD_2in7_SendCommand(0x06); //boost soft start + EPD_2in7_SendData(0x07); //A + EPD_2in7_SendData(0x07); //B + EPD_2in7_SendData(0x17); //C - EPD_2in7_SendCommand(0x00); // PANEL_SETTING - EPD_2in7_SendData(0xAF); // KW-BF KWR-AF BWROTP 0f - EPD_2in7_SendCommand(0x30); // PLL_CONTROL - EPD_2in7_SendData(0x3A); // 3A 100HZ 29 150Hz 39 200HZ 31 171HZ - EPD_2in7_SendCommand(0x82); // VCM_DC_SETTING_REGISTER - EPD_2in7_SendData(0x12); + EPD_2in7_SendCommand(0x04); + EPD_2in7_ReadBusy(); + + EPD_2in7_SendCommand(0x00); //panel setting + EPD_2in7_SendData(0x1f); //LUT from OTP£?128x296 + + EPD_2in7_SendCommand(0x16); + EPD_2in7_SendData(0x00); //KW-BF KWR-AF BWROTP 0f + + EPD_2in7_SendCommand(0xF8); + EPD_2in7_SendData(0x60); + EPD_2in7_SendData(0xa5); + + EPD_2in7_SendCommand(0xF8); + EPD_2in7_SendData(0x73); + EPD_2in7_SendData(0x23); + + EPD_2in7_SendCommand(0xF8); + EPD_2in7_SendData(0x7C); + EPD_2in7_SendData(0x00); + + EPD_2in7_SendCommand(0X50); + EPD_2in7_SendData(0x97); //WBmode:VBDF 17|D7 VBDW 97 VBDB 57 WBRmode:VBDF F7 VBDW 77 VBDB 37 VBDR B7 - EPD_2in7_SetLut(); } /****************************************************************************** @@ -328,13 +216,6 @@ void EPD_2IN7_Display(UBYTE *Image) Width = (EPD_2IN7_WIDTH % 8 == 0)? (EPD_2IN7_WIDTH / 8 ): (EPD_2IN7_WIDTH / 8 + 1); Height = EPD_2IN7_HEIGHT; - EPD_2in7_SendCommand(0x10); - for (UWORD j = 0; j < Height; j++) { - for (UWORD i = 0; i < Width; i++) { - EPD_2in7_SendData(0XFF); - } - } - EPD_2in7_SendCommand(0x13); for (UWORD j = 0; j < Height; j++) { for (UWORD i = 0; i < Width; i++) { @@ -351,8 +232,6 @@ parameter: ******************************************************************************/ void EPD_2IN7_Sleep(void) { - EPD_2in7_SendCommand(0X50); - EPD_2in7_SendData(0xf7); EPD_2in7_SendCommand(0X02); //power off EPD_2in7_SendCommand(0X07); //deep sleep EPD_2in7_SendData(0xA5);