├── LICENSE ├── README.md └── src ├── PageDefault.hpp ├── PageGPIO.hpp ├── PageI2C.hpp ├── PagePWR.hpp ├── PageRTC.hpp ├── PageTF.hpp ├── PageTOUCH.hpp ├── PageUART.hpp ├── PageWiFi.hpp ├── ft6336_fw_updater.cpp ├── ft6336_fw_v17_app.h ├── main.hpp ├── src.ino ├── src ├── img │ ├── ScanWiFi.c │ ├── arrow.c │ ├── batteryDirection.c │ ├── blankBk.c │ ├── core2Tools.c │ ├── fun_sel.c │ ├── fun_unsel.c │ ├── gpioPage.c │ ├── pleaseSelect.c │ ├── pwrBattery.c │ ├── pwrBk.c │ ├── pwrCore2Switch.c │ ├── pwrInOut.c │ ├── pwrLcdHolder.c │ ├── pwrNumber.c │ ├── rtcBk.c │ ├── rtcLock.c │ ├── rtcNumber.c │ ├── rtcNumberGray.c │ ├── rtcSetTimer.c │ ├── rtcSetTimerDisable.c │ ├── sleepBk.c │ ├── slideBack1.c │ ├── slideGreen.c │ ├── slideRed.c │ ├── toughTools.c │ ├── uartBk.c │ ├── uartBps.c │ ├── uartPort.c │ └── uartStopStart.c └── wav │ ├── click.c │ └── error.c ├── tlsc6x_boot.h └── tlsc6x_updater.cpp /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2021 M5Stack 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # M5Tools 2 | ### M5Stack Tough and Core2 tools . 3 | 4 | # Support framework 5 | - Arduino for ESP32 1.0.6 6 | 7 | # Support device 8 | - M5Stack Core2 / Tough 9 | 10 | # License 11 | - [MIT](LICENSE) 12 | 13 | -------------------------------------------------------------------------------- /src/PageDefault.hpp: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include "main.hpp" 4 | 5 | extern const unsigned char gImage_arrow[]; 6 | extern const unsigned char gImage_pleaseSelect[]; 7 | 8 | struct PageDefault : public PageBase 9 | { 10 | void setup(void) override 11 | { 12 | M5.Lcd.pushImage(37, 96, 246, 25, (m5gfx::rgb565_t*)gImage_pleaseSelect); 13 | } 14 | 15 | void loop(void) override 16 | { 17 | float f = abs((int)(loopCount & 255) - 128); 18 | M5.Lcd.pushImageRotateZoom(160, 160 - (f / 6.0), 14, 0, 0, f / 24.0, 1, 28, 40, (m5gfx::rgb565_t*)gImage_arrow); 19 | } 20 | 21 | void end(void) override 22 | { 23 | } 24 | }; 25 | -------------------------------------------------------------------------------- /src/PageGPIO.hpp: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include "main.hpp" 4 | 5 | extern const unsigned char gImage_gpioPage[]; 6 | extern const unsigned char gImage_slideBack1[]; 7 | extern const unsigned char gImage_slideGreen[]; 8 | extern const unsigned char gImage_slideRed[]; 9 | 10 | struct PageGPIO : public PageBase 11 | { 12 | void setup(void) override 13 | { 14 | M5.Lcd.pushImage(17, 32, 286, 172, (m5gfx::rgb565_t*)gImage_gpioPage); 15 | M5.Lcd.pushImage(36, 56, 8, 136, (m5gfx::rgb565_t*)gImage_slideBack1); 16 | M5.Lcd.pushImage(76, 56, 8, 136, (m5gfx::rgb565_t*)gImage_slideBack1); 17 | pinMode(35, ANALOG); 18 | pinMode(36, ANALOG); 19 | setGpio(0, _gpioOut[0]); 20 | setGpio(1, _gpioOut[1]); 21 | for (int i = 0; i < 2; ++i) 22 | { 23 | prev[i] = 128 - (analogRead(35 + i) >> 5); 24 | } 25 | } 26 | void loop(void) override 27 | { 28 | if (justTouch) 29 | { 30 | _editIdx = -1; 31 | if (tp[0].x > 32 && tp[0].x < 104 && tp[0].y >= 56 && tp[0].y < 200) 32 | { 33 | clickSound(); 34 | _editIdx = tp[0].x < 64 ? 0 : 1; 35 | } 36 | } 37 | if (_editIdx >= 0) 38 | { 39 | if (touchPoints == 0) 40 | { 41 | _editIdx = -1; 42 | } 43 | else 44 | { 45 | int val = (128 - (tp[0].y - 64)) * 2; 46 | if (val < 0) val = 0; 47 | else if (val > 255) val = 255; 48 | if (val != _gpioOut[_editIdx]) 49 | { 50 | setGpio(_editIdx, val); 51 | } 52 | } 53 | } 54 | 55 | M5.Lcd.copyRect(118, 53, 173, 130, 119, 53); 56 | uint16_t buf[130]; 57 | for (int y = 0; y < 130; ++y) 58 | { 59 | buf[y] = (uint16_t)(((loopCount) & 15) && ((y - 1) & 15) ? TFT_WHITE : TFT_LIGHTGRAY); 60 | } 61 | for (int i = 0; i < 2; ++i) 62 | { 63 | int pos = 128 - (analogRead(35 + i) >> 5); 64 | int maxpos = prev[i]; 65 | prev[i] = pos; 66 | if (maxpos < pos) { std::swap(pos, maxpos); } 67 | buf[pos -1] &= i ? 0xFAE7 : 0x1BFF; 68 | buf[maxpos+1] &= i ? 0xFAE7 : 0x1BFF; 69 | for (int y = pos; y <= maxpos; ++y) 70 | { 71 | buf[y] &= i ? 0xF8E3 : 0x18FF; 72 | // RRRR Rggg GGGb bbBB 73 | // rrrR Rggg GGGB BBBB 74 | // RRRR RGGG GGGB BBBB 75 | } 76 | } 77 | M5.Lcd.pushImage(291, 53, 1, 130, (m5gfx::rgb565_t*)buf); 78 | /* 79 | M5.Lcd.drawFastVLine(291, 54, 128, loopCount & 15 ? TFT_WHITE : TFT_LIGHTGRAY); 80 | if (loopCount & 15) 81 | { 82 | for (int y = 0; y < 128; y += 16) 83 | { 84 | M5.Lcd.writePixel(291, 54 + y, TFT_LIGHTGRAY); 85 | } 86 | } 87 | for (int i = 0; i < 2; ++i) 88 | { 89 | static int prev[2]; 90 | int pos = analogRead(35 + i) >> 5; 91 | int maxpos = prev[i] < pos ? pos : prev[i]; 92 | int minpos = prev[i] > pos ? pos : prev[i]; 93 | prev[i] = pos; 94 | M5.Lcd.writeFastVLine(291, 181 - (maxpos), (maxpos - minpos) + 1 , i ? TFT_RED : TFT_BLUE); 95 | M5.Lcd.writePixel(291, 180 - (maxpos), i ? 0xFFCF00u : 0x00CFFFu); 96 | M5.Lcd.writePixel(291, 182 - (minpos)); 97 | } 98 | */ 99 | } 100 | void end(void) override 101 | { 102 | } 103 | 104 | private: 105 | 106 | int _gpioOut[2] = {0}; 107 | int _editIdx = -1; 108 | int prev[2]; 109 | 110 | void setGpio(int index, int value) 111 | { 112 | int x = 24 + index * 40; 113 | 114 | M5.Lcd.setClipRect(x, 174 - (_gpioOut[index] >> 1), 32, 16); 115 | M5.Lcd.fillScreen(TFT_WHITE); 116 | M5.Lcd.pushImage(36 + index * 40, 56, 8, 136, (m5gfx::rgb565_t*)gImage_slideBack1); 117 | M5.Lcd.clearClipRect(); 118 | 119 | _gpioOut[index] = value; 120 | 121 | M5.Lcd.pushImage(x, 174 - (value >> 1), 32, 16, (m5gfx::rgb565_t*)(index ? gImage_slideRed : gImage_slideGreen)); 122 | 123 | /* 124 | M5.Lcd.fillRect(x, 179 - (_gpioOut[index] >> 1), 32, 9, TFT_WHITE); 125 | M5.Lcd.drawRect(x+15, 55, 4, 130, TFT_BLACK); 126 | _gpioOut[index] = value; 127 | M5.Lcd.fillRect(x+1, 180 - (value >> 1), 30, 7, TFT_BLACK); 128 | M5.Lcd.drawFastHLine(x+1, 183 - (value >> 1), 30, TFT_WHITE); 129 | M5.Lcd.drawRect(x, 179 - (value >> 1), 32, 9, TFT_DARKGRAY); 130 | //*/ 131 | dacWrite(index ? 26 : 25, value); 132 | } 133 | 134 | }; 135 | -------------------------------------------------------------------------------- /src/PageI2C.hpp: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include "main.hpp" 4 | 5 | struct PageI2C : public PageBase 6 | { 7 | void setup(void) override 8 | { 9 | M5.Lcd.setTextColor(TFT_LIGHTGRAY); 10 | M5.Lcd.setColor(TFT_LIGHTGRAY); 11 | // for (int i = 0x00; i < 0x80; ++i) 12 | // { 13 | // std::size_t y = i >> 4; 14 | // std::size_t x = i & 15; 15 | // M5.Lcd.drawRect(24 + x * 17, 40 + y * 12, 16, 11); 16 | // } 17 | for (int i = 0; i < 9; ++i) 18 | { 19 | M5.Lcd.drawFastHLine(24, 40 + i * 12, 272); 20 | } 21 | for (int i = 0; i < 17; ++i) 22 | { 23 | M5.Lcd.drawFastVLine(24 + i * 17, 40, 96); 24 | } 25 | 26 | M5.Lcd.setFont(&fonts::Font2); 27 | M5.Lcd.setTextColor(TFT_BLACK, TFT_WHITE); 28 | M5.Lcd.drawString(" External" , 64, 144); 29 | M5.Lcd.drawString("I2C0(Wire)" , 64, 160); 30 | M5.Lcd.drawString("G33 / G32" , 64, 176); 31 | M5.Lcd.drawString(" Internal" , 192, 144); 32 | M5.Lcd.drawString("I2C1(Wire1)", 192, 160); 33 | M5.Lcd.drawString("G22 / G21" , 192, 176); 34 | 35 | M5.Lcd.drawCircle(52,166,6,TFT_BLACK); 36 | M5.Lcd.drawCircle(180,166,6,TFT_BLACK); 37 | M5.Lcd.fillCircle( 52, 166, 4, i2cScanSource == 0 ? TFT_BLACK : TFT_WHITE); 38 | M5.Lcd.fillCircle(180, 166, 4, i2cScanSource == 1 ? TFT_BLACK : TFT_WHITE); 39 | if (i2cScanSource) 40 | { 41 | M5.In_I2C.begin(I2C_NUM_1, 21, 22); 42 | } 43 | else 44 | { 45 | M5.Ex_I2C.begin(I2C_NUM_0, 32, 33); 46 | } 47 | } 48 | void loop(void) override 49 | { 50 | if (justTouch && (tp[0].x > 50 && tp[0].x < 280 && tp[0].y > 144 && tp[0].y < 184)) 51 | { 52 | int tmp = tp[0].x < 160 ? 0 : 1; 53 | if (i2cScanSource != tmp) 54 | { 55 | i2cScanSource = tmp; 56 | clickSound(); 57 | setup(); 58 | } 59 | } 60 | { 61 | M5.Lcd.setFont(&fonts::Font0); 62 | bool result[0x80]; 63 | auto scanWire = i2cScanSource ? &M5.In_I2C : &M5.Ex_I2C; 64 | scanWire->scanID(result); 65 | for (int i = 0x08; i < 0x78; ++i) 66 | { 67 | bool hit = result[i]; 68 | std::size_t y = i >> 4; 69 | std::size_t x = i & 15; 70 | M5.Lcd.setCursor(28 + x * 17, 43 + y * 12); 71 | M5.Lcd.setTextColor(hit ? TFT_BLACK : TFT_LIGHTGRAY , hit ? TFT_GREEN : TFT_WHITE); 72 | M5.Lcd.printf("%02x", i); 73 | } 74 | M5.Lcd.setFont(&fonts::Font2); 75 | M5.Lcd.setTextColor(TFT_BLACK, TFT_WHITE); 76 | } 77 | } 78 | void end(void) override 79 | { 80 | } 81 | private: 82 | int i2cScanSource = 0; 83 | 84 | }; 85 | -------------------------------------------------------------------------------- /src/PagePWR.hpp: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include "main.hpp" 4 | 5 | extern const unsigned char gImage_pwrBk[]; 6 | extern const unsigned char gImage_pwrNumber[]; // '0123456789 .-' w=8 : h=12 * 13char 7 | extern const unsigned char gImage_pwrInOut[]; // w:60 / h:40 / 2 img 8 | extern const unsigned char gImage_pwrBattery[]; 9 | extern const unsigned char gImage_pwrLcdHolder[]; // w:20 / h:20 10 | extern const unsigned char gImage_batteryDirection[]; // w:9 / h:48 / 2 img 11 | extern const unsigned char gImage_pwrCore2Switch[]; // w:44 / h:20 / 2 img 12 | 13 | struct PagePWR : public PageBase 14 | { 15 | bool exten = true; 16 | bool flickBr = false; 17 | int slider_level; 18 | int batlevel; 19 | int chargeDirection = -1; 20 | bool flgMotor = false; 21 | 22 | int posToBrightness(int y) 23 | { 24 | int br = (127 - (tp[0].y - 64)); 25 | if (br < 0) br = 0; 26 | else if (br > 127) br = 127; 27 | 28 | br = ((br * (1000-300)) / 127) + 300; 29 | br = br * 255 / 1000; 30 | return br; 31 | } 32 | int BrightnessToPos(int brightness) 33 | { 34 | int y = brightness * 1000 / 255; 35 | y = std::max(0, std::min(128, (y - 300) * 127 / (1000-300))); 36 | return 191 - y; 37 | } 38 | 39 | void setExtEn(bool flg) 40 | { 41 | exten = flg; 42 | M5.Power.setExtPower(flg); 43 | M5.Lcd.pushImage(145, 123, 60, 40 , (m5gfx::rgb565_t*)gImage_pwrInOut + flg * 60 * 40); 44 | } 45 | 46 | void setMotorLcdSwitch(bool motor) 47 | { 48 | if (M5.getBoard() != m5::board_t::board_M5StackCore2) { return; } 49 | 50 | flgMotor = motor; 51 | M5.Lcd.pushImage(20, 34, 44, 20, (m5gfx::rgb565_t*)gImage_pwrCore2Switch + motor * 44 * 20); 52 | } 53 | 54 | void drawSlider(int level) 55 | { 56 | int y = BrightnessToPos(slider_level) - 10; 57 | M5.Lcd.setClipRect(27, y, 20, 20); 58 | M5.Lcd.pushImage(16, 34, 288, 168 , (m5gfx::rgb565_t*)gImage_pwrBk); 59 | M5.Lcd.clearClipRect(); 60 | 61 | slider_level = level; 62 | y = BrightnessToPos(level) - 10; 63 | M5.Lcd.pushImage(27, y, 20, 20, (m5gfx::rgb565_t*)gImage_pwrLcdHolder); 64 | } 65 | 66 | void setMotor(int level) 67 | { 68 | if (M5.getBoard() != m5::board_t::board_M5StackCore2) { return; } 69 | drawSlider(level); 70 | M5.Power.Axp192.setLDO3(1300 + level * 6); 71 | } 72 | 73 | void setBrightness(int br) 74 | { 75 | drawSlider(br); 76 | M5.Lcd.setBrightness(br); 77 | } 78 | 79 | void drawFloat(int x, int y, float value, int int_digit, int fraction_digit) 80 | { 81 | x -= 8; 82 | for (int i = 0; i < fraction_digit; ++i) 83 | { 84 | value *= 10.0f; 85 | ++int_digit; 86 | } 87 | int val = value; 88 | 89 | // 低い桁から順に描画 90 | do 91 | { 92 | int num = (val % 10); 93 | if (!val && fraction_digit < 0) 94 | { 95 | num = 10; 96 | } 97 | M5.Lcd.pushImage(x, y, 8, 12, (m5gfx::rgb565_t*)gImage_pwrNumber + 8 * 12 * num); 98 | x -= 8; 99 | if (0 == --fraction_digit) 100 | { 101 | M5.Lcd.pushImage(x, y, 8, 12, (m5gfx::rgb565_t*)gImage_pwrNumber + 8 * 12 * (11)); 102 | x -= 8; 103 | } 104 | val = val / 10; 105 | } while (--int_digit > 0 || val); 106 | } 107 | 108 | void setup(void) override 109 | { 110 | M5.Lcd.pushImage(16, 34, 288, 168 , (m5gfx::rgb565_t*)gImage_pwrBk); 111 | 112 | M5.Power.Axp192.bitOn(0x82, 0xFF); // ADC enable 113 | 114 | setBrightness(M5.Lcd.getBrightness()); 115 | 116 | setExtEn(M5.Power.Axp192.getEXTEN()); 117 | 118 | batlevel = -1; 119 | 120 | if (M5.getBoard() == m5::board_t::board_M5StackCore2) 121 | { 122 | M5.Lcd.fillRect(18, 36, 54, 12, TFT_WHITE); 123 | setMotorLcdSwitch(false); 124 | } 125 | } 126 | 127 | void end(void) override 128 | { 129 | setMotor(0); 130 | } 131 | 132 | void loop(void) override 133 | { 134 | if (justTouch) 135 | { 136 | if (tp[0].x >= 145 && tp[0].x < 205 && tp[0].y >= 123 && tp[0].y < 163) 137 | { 138 | clickSound(); 139 | setExtEn(!exten); 140 | } 141 | else 142 | if (tp[0].x < 80 && tp[0].y > 56 && tp[0].y < 200) 143 | { 144 | clickSound(); 145 | flickBr = true; 146 | } 147 | else 148 | if (M5.getBoard() == m5::board_t::board_M5StackCore2 149 | && tp[0].x < 80 && tp[0].y > 20 && tp[0].y < 56) 150 | { 151 | clickSound(); 152 | setMotorLcdSwitch(!flgMotor); 153 | setMotor(0); 154 | if (!flgMotor) 155 | { 156 | setBrightness(M5.Lcd.getBrightness()); 157 | } 158 | } 159 | } 160 | if (flickBr) 161 | { 162 | if (!touchPoints) 163 | { 164 | flickBr = false; 165 | } 166 | else 167 | { 168 | int val = posToBrightness(tp[0].y); 169 | if (!flgMotor) 170 | { 171 | if (val != slider_level) 172 | { 173 | setBrightness(val); 174 | } 175 | } 176 | else 177 | { 178 | setMotor(val); 179 | } 180 | } 181 | } 182 | 183 | float batVolt = M5.Power.Axp192.getBatteryVoltage(); 184 | 185 | int level = std::max(0, std::min(100, (batVolt - 3.2f) * 100)); 186 | if (batlevel != level) 187 | { 188 | batlevel = level; 189 | if (M5.Power.Axp192.getBatState()) 190 | { 191 | int w = level * 46 / 100; 192 | M5.Lcd.setClipRect(238, 169, w, 17); 193 | M5.Lcd.pushImage(238, 169, 46, 17 , (m5gfx::rgb565_t*)gImage_pwrBattery); 194 | M5.Lcd.setClipRect(238 + w, 169, 46 - w, 17); 195 | M5.Lcd.pushImage(238, 169, 46, 17 , (m5gfx::rgb565_t*)gImage_pwrBattery + 46 * 17); 196 | M5.Lcd.clearClipRect(); 197 | } 198 | else 199 | { // no battery 200 | M5.Lcd.pushImage(238, 169, 46, 17 , (m5gfx::rgb565_t*)gImage_pwrBattery + 46 * 17); 201 | M5.Lcd.drawLine(238 + 28, 169, 238 + 16, 169 + 16, TFT_BLACK); 202 | } 203 | } 204 | 205 | drawFloat(277, 36, M5.Power.Axp192.getInternalTemperature(), 2, 1); 206 | 207 | bool dir = M5.Power.Axp192.isCharging(); 208 | if (chargeDirection != dir) 209 | { 210 | chargeDirection = dir; 211 | M5.Lcd.pushImage(252, 118, 9, 48 , (m5gfx::rgb565_t*)gImage_batteryDirection + dir * 9 * 48); 212 | } 213 | float batCurrent = dir 214 | ? M5.Power.Axp192.getBatteryChargeCurrent() 215 | : M5.Power.Axp192.getBatteryDischargeCurrent(); 216 | drawFloat(282, 135, batCurrent, 3, 0); 217 | 218 | drawFloat(277, 189, batVolt, 1, 2); 219 | 220 | drawFloat(191, 39, M5.Power.Axp192.getACINCurrent(), 4, 1); 221 | drawFloat(122, 66, M5.Power.Axp192.getACINVolatge(), 1, 2); 222 | drawFloat(191, 78, M5.Power.Axp192.getVBUSCurrent(), 4, 1); 223 | drawFloat(122, 112, M5.Power.Axp192.getVBUSVoltage(), 1, 2); 224 | drawFloat(122, 188, M5.Power.Axp192.getAPSVoltage(), 1, 2); 225 | /* 226 | M5.Lcd.setFont(&fonts::Font2); 227 | M5.Lcd.setTextColor(TFT_BLACK, TFT_WHITE); 228 | 229 | M5.Lcd.setCursor(100, 40); M5.Lcd.printf("bat power: %f", M5.Power.Axp192.getBatteryPower()); 230 | M5.Lcd.setCursor(100, 60); M5.Lcd.printf("bat volt: %f", M5.Power.Axp192.getBatteryVoltage()); 231 | M5.Lcd.setCursor(100, 80); M5.Lcd.printf("vbus current: %f", M5.Power.Axp192.getVbusCurrent()); 232 | M5.Lcd.setCursor(100, 100); M5.Lcd.printf("vbus volt: %f", M5.Power.Axp192.getVbusVoltage()); 233 | M5.Lcd.setCursor(100, 120); M5.Lcd.printf("acin current: %f", M5.Power.Axp192.getAcinCurrent()); 234 | M5.Lcd.setCursor(100, 140); M5.Lcd.printf("acin volt: %f", M5.Power.Axp192.getAcinVolatge()); 235 | M5.Lcd.setCursor(100, 160); M5.Lcd.printf("aps volt: %f", M5.Power.Axp192.getApsVoltage()); 236 | //*/ 237 | } 238 | }; 239 | -------------------------------------------------------------------------------- /src/PageRTC.hpp: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include "main.hpp" 4 | 5 | extern const unsigned char gImage_rtcBk[]; // w:288 / h:168 6 | extern const unsigned char gImage_rtcLock[]; // w:25 / h:24 / 2 item 7 | extern const unsigned char gImage_rtcNumber[]; // w:12 / h:20 / 11 item 8 | extern const unsigned char gImage_rtcNumberGray[]; // w:12 / h:20 / 11 item 9 | extern const unsigned char gImage_rtcSetTimer[]; // w:62 / h:40 10 | extern const unsigned char gImage_rtcSetTimerDisable[]; // w:62 / h:40 11 | 12 | static constexpr const char weekdays[7][4] = { "sun", "mon", "tue", "wed", "thu", "fri", "sat" }; 13 | 14 | struct PageRTC : public PageBase 15 | { 16 | PageRTC(void) 17 | { 18 | _wake_timer.hours = 0; 19 | _wake_timer.minutes = 0; 20 | _wake_timer.seconds = 0; 21 | } 22 | 23 | void setLock(bool lock) 24 | { 25 | _lock = lock; 26 | M5.Lcd.pushImage(16, 88, 25, 24 , (m5gfx::rgb565_t*)gImage_rtcLock + (!lock) * 25 * 24); 27 | } 28 | 29 | void shakeLock(void) 30 | { 31 | for (int i = 0; i < 22; ++i) 32 | { 33 | int x = abs((i&7)-3)-2; 34 | M5.Lcd.pushImage(16+x, 88, 25, 24 , (m5gfx::rgb565_t*)gImage_rtcLock); 35 | delay(15); 36 | } 37 | } 38 | 39 | void setup(void) override 40 | { 41 | M5.Lcd.pushImage(16, 34, 288, 168 , (m5gfx::rgb565_t*)gImage_rtcBk); 42 | 43 | M5.Lcd.pushImage(29, 158, 62, 40 , (m5gfx::rgb565_t*)gImage_rtcSetTimerDisable, TFT_WHITE); 44 | 45 | _canvas_base.createSprite(268, 40); 46 | 47 | setLock(true); 48 | _prev_x = -1; 49 | } 50 | 51 | void loop(void) override 52 | { 53 | if (_editIdx < 0 || _editIdx >= 6) 54 | { 55 | _date = M5.Rtc.getDate(); 56 | _time = M5.Rtc.getTime(); 57 | } 58 | if (justTouch) 59 | { 60 | if (contain(0, 72, 64, 56)) 61 | { 62 | clickSound(); 63 | setLock(!_lock); 64 | } 65 | else 66 | { 67 | if ( contain( 92, 48, 80, 54)) { _editIdx = 0; _editVal = _date.year ; _editMin = 1900; _editMax = 2099; } 68 | else if (contain(175, 48, 56, 54)) { _editIdx = 1; _editVal = _date.month ; _editMin = 1; _editMax = 12; } 69 | else if (contain(235, 48, 56, 54)) { _editIdx = 2; _editVal = _date.date ; _editMin = 1; _editMax = 31; } 70 | else if (contain( 95, 101, 56, 54)) { _editIdx = 3; _editVal = _time.hours ; _editMin = 0; _editMax = 23; } 71 | else if (contain(165, 101, 56, 54)) { _editIdx = 4; _editVal = _time.minutes; _editMin = 0; _editMax = 59; } 72 | else if (contain(235, 101, 56, 54)) { _editIdx = 5; _editVal = _time.seconds; _editMin = 0; _editMax = 59; } 73 | else if (contain( 95, 152, 56, 54)) { _editIdx = 6; _editVal = _wake_timer.hours ; _editMin = 0; _editMax = 4; } 74 | else if (contain(165, 152, 56, 54)) { _editIdx = 7; _editVal = _wake_timer.minutes; _editMin = 0; _editMax = 59; } 75 | else if (contain(235, 152, 56, 54)) { _editIdx = 8; _editVal = _wake_timer.seconds; _editMin = 0; _editMax = 59; } 76 | if (_editIdx >= 0) 77 | { 78 | if (_lock && _editIdx <= 5) 79 | { 80 | errorSound(); 81 | _editIdx = -1; 82 | shakeLock(); 83 | } 84 | else 85 | { 86 | clickSound(); 87 | } 88 | } 89 | } 90 | } 91 | if (_editIdx >= 0) 92 | { 93 | bool res = flickValue(); 94 | switch (_editIdx) 95 | { 96 | case 0: _date.year = _editVal; break; 97 | case 1: _date.month = _editVal; break; 98 | case 2: _date.date = _editVal; break; 99 | case 3: _time.hours = _editVal; break; 100 | case 4: _time.minutes = _editVal; break; 101 | case 5: _time.seconds = _editVal; break; 102 | case 6: _wake_timer.hours = _editVal; break; 103 | case 7: _wake_timer.minutes = _editVal; break; 104 | case 8: _wake_timer.seconds = _editVal; break; 105 | default: break; 106 | } 107 | if (!res) 108 | { 109 | if (_editIdx < 6) 110 | { 111 | M5.Rtc.setDate(_date); 112 | M5.Rtc.setTime(_time); 113 | } 114 | _editIdx = -1; 115 | } 116 | } 117 | 118 | auto img = (const m5gfx::rgb565_t*)gImage_rtcNumber; 119 | drawNumber(&M5.Lcd, img, 156, 65, _date.year, 4); 120 | drawNumber(&M5.Lcd, img, 215, 65, _date.month, 2); 121 | drawNumber(&M5.Lcd, img, 275, 65, _date.date, 2); 122 | drawNumber(&M5.Lcd, img, 135, 117, _time.hours, 2); 123 | drawNumber(&M5.Lcd, img, 205, 117, _time.minutes, 2); 124 | drawNumber(&M5.Lcd, img, 275, 117, _time.seconds, 2); 125 | 126 | bool slider_enabled = _wake_timer.hours || _wake_timer.minutes || _wake_timer.seconds; 127 | 128 | if (_prev_x != _slide_x || _editIdx >= 6) 129 | { 130 | _prev_x = _slide_x; 131 | _canvas_base.pushImage(-13, -124, 288, 168, (m5gfx::rgb565_t*)gImage_rtcBk); 132 | auto img = (const m5gfx::rgb565_t*)gImage_rtcNumberGray; 133 | drawNumber(&_canvas_base, img, 106, 11, _wake_timer.hours, 2); 134 | drawNumber(&_canvas_base, img, 176, 11, _wake_timer.minutes, 2); 135 | drawNumber(&_canvas_base, img, 246, 11, _wake_timer.seconds, 2); 136 | if (_slide_x > 62) 137 | { 138 | _canvas_base.fillRect(16+62, 0, _slide_x-62, 40, 0xE73C); 139 | } 140 | 141 | _canvas_base.pushImage(_slide_x, 0, 62, 40, (m5gfx::rgb565_t*)(slider_enabled ? gImage_rtcSetTimer : gImage_rtcSetTimerDisable), TFT_WHITE); 142 | _canvas_base.pushSprite(&M5.Lcd, 29, 158); 143 | } 144 | if (!touchPoints) 145 | { 146 | _hold = false; 147 | } 148 | else 149 | if (justTouch) 150 | { 151 | if (tp[0].y > 158 && tp[0].y < 198 && tp[0].x > 29 + _slide_x && tp[0].x < 29 + 62 + _slide_x) 152 | { 153 | if (slider_enabled) 154 | { 155 | clickSound(); 156 | _hold = true; 157 | } 158 | else 159 | { 160 | errorSound(); 161 | } 162 | } 163 | } 164 | if (_hold) 165 | { 166 | _slide_x = std::max(0, std::min(206, tp[0].x - 60)); 167 | } 168 | else 169 | if (_slide_x == 206) 170 | { 171 | int timer = _wake_timer.hours * 3600 + _wake_timer.minutes * 60 + _wake_timer.seconds; 172 | M5.Power.timerSleep(timer); 173 | } 174 | else 175 | { 176 | _slide_x = _slide_x * 7 >> 3; 177 | } 178 | } 179 | void end(void) override 180 | { 181 | _canvas_base.deleteSprite(); 182 | } 183 | 184 | private: 185 | M5Canvas _canvas_base; 186 | int _slide_x = 0; 187 | int _prev_x = -1; 188 | bool _hold = false; 189 | 190 | bool _lock; 191 | m5::rtc_date_t _date; 192 | m5::rtc_time_t _time; 193 | int _editIdx = -1; 194 | int _editVal = -1; 195 | int _editMin = -1; 196 | int _editMax = -1; 197 | 198 | m5::rtc_time_t _wake_timer; 199 | 200 | void drawNumber(LovyanGFX* gfx, const m5gfx::rgb565_t* img, int x, int y, size_t val, int int_digit) 201 | { 202 | do 203 | { // 低い桁から順に描画 204 | x -= 12; 205 | size_t num = (val % 10); 206 | gfx->pushImage(x, y, 12, 20, img + 12 * 20 * num); 207 | val = val / 10; 208 | } while (--int_digit > 0 || val); 209 | } 210 | 211 | bool flickValue(void) 212 | { 213 | if (!updateTouch()) 214 | { 215 | return false; 216 | } 217 | int tmp = _editVal; 218 | if (flickDiffY < -10) 219 | { 220 | flickDiffY += 10; 221 | if (++tmp > _editMax) 222 | { 223 | tmp = _editMin; 224 | } 225 | } 226 | else if (flickDiffY > 10) 227 | { 228 | flickDiffY -= 10; 229 | if (--tmp < _editMin) 230 | { 231 | tmp = _editMax; 232 | } 233 | } 234 | if (_editVal != tmp) 235 | { 236 | _editVal = tmp; 237 | clickSound(); 238 | } 239 | return true; 240 | } 241 | }; 242 | -------------------------------------------------------------------------------- /src/PageTF.hpp: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include "main.hpp" 4 | 5 | #define CONFIG_TF_SS_PIN 4 6 | 7 | struct PageTF : public PageBase 8 | { 9 | void setup(void) override 10 | { 11 | M5.Lcd.setTextDatum(textdatum_t::middle_center); 12 | M5.Lcd.drawString("Tap to scan TF.", 160, 120, &fonts::Font4); 13 | M5.Lcd.setTextDatum(textdatum_t::top_left); 14 | } 15 | void loop(void) override 16 | { 17 | if (justTouch) 18 | { 19 | M5.Lcd.endWrite(); 20 | M5.Lcd.setFont(&fonts::Font2); 21 | M5.Lcd.setTextColor(TFT_BLACK); 22 | M5.Lcd.setTextScroll(true); 23 | M5.Lcd.fillRect(20, 36, 280, 160, TFT_WHITE); 24 | M5.Lcd.setScrollRect(20, 36, 280, 160, TFT_WHITE); 25 | M5.Lcd.setCursor(20, 36); 26 | M5.Lcd.println("TF card open..."); 27 | int retry = 5; 28 | do 29 | { 30 | SD.end(); 31 | } while (!SD.begin(CONFIG_TF_SS_PIN, SPI, 25000000) && --retry); 32 | if (retry) 33 | { 34 | auto root = SD.open("/"); 35 | if (!showFiles(root)) 36 | { 37 | M5.Lcd.println("\r\n break !"); 38 | } 39 | root.close(); 40 | } 41 | else 42 | { 43 | M5.Lcd.println("TF card open failure ."); 44 | } 45 | M5.Lcd.clearScrollRect(); 46 | M5.Lcd.setTextScroll(false); 47 | M5.Lcd.startWrite(); 48 | } 49 | } 50 | void end(void) override 51 | { 52 | } 53 | private: 54 | bool showFiles(File dir) 55 | { 56 | File fp = dir.openNextFile(); 57 | bool abort = false; 58 | while ((bool)(fp = dir.openNextFile())) 59 | { 60 | updateTouch(); 61 | abort = (prev_touchPoints < touchPoints); 62 | if (abort) break; 63 | M5.Lcd.print(fp.name()); 64 | if (fp.isDirectory()) 65 | { 66 | M5.Lcd.println("/"); 67 | if (!showFiles(fp)) 68 | { 69 | abort = true; 70 | break; 71 | } 72 | } 73 | else 74 | { 75 | M5.Lcd.println(); 76 | } 77 | } 78 | dir.rewindDirectory(); 79 | return !abort; 80 | } 81 | 82 | }; 83 | -------------------------------------------------------------------------------- /src/PageTOUCH.hpp: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include "main.hpp" 4 | 5 | #include 6 | 7 | static constexpr uint32_t dummy_prefix = 0xABEC1DEB; 8 | static constexpr int packetlen = 4 + sizeof(m5gfx::touch_point_t); 9 | static constexpr int peerMax = 8; 10 | static constexpr int peerColor[] = { TFT_RED, TFT_DARKGREEN, TFT_DARKCYAN, TFT_PURPLE, TFT_OLIVE, TFT_BROWN, TFT_MAGENTA, TFT_LIGHTGRAY }; 11 | 12 | struct peer_touch_t 13 | { 14 | m5gfx::touch_point_t tp; 15 | uint8_t mac[6]; 16 | bool recv = false; 17 | }; 18 | peer_touch_t peer[peerMax]; 19 | int peerCount = 0; 20 | 21 | struct PageTOUCH : public PageBase 22 | { 23 | m5gfx::touch_point_t last_tp; 24 | esp_now_peer_info_t slave; 25 | 26 | // 受信時コールバック 27 | static void OnDataRecv(const uint8_t *mac, const uint8_t *data, int data_len) 28 | { 29 | if (memcmp(data, &dummy_prefix, 4)) 30 | { 31 | return; 32 | } 33 | size_t idx = 0; 34 | for (; idx < peerCount; ++idx) 35 | { 36 | if (0 == memcmp(mac, peer[idx].mac, 6)) break; 37 | } 38 | if (idx == peerCount) 39 | { 40 | if (idx == peerMax) return; 41 | ++peerCount; 42 | memcpy(peer[idx].mac, mac, 6); 43 | } 44 | peer[idx].tp = *(const m5gfx::touch_point_t*)&data[4]; 45 | peer[idx].recv = true; 46 | // ESP_LOGI("recv", "%x:%x:%x:%x:%x:%x", mac[0], mac[1], mac[2], mac[3], mac[4], mac[5]); 47 | } 48 | 49 | void startEspNow(void) 50 | { 51 | WiFi.mode(WIFI_STA); 52 | WiFi.disconnect(); 53 | if (esp_now_init() == ESP_OK) { ESP_LOGI("main", "ESPNow Init Success"); } 54 | esp_now_register_recv_cb(OnDataRecv); 55 | 56 | memset(&slave, 0, sizeof(slave)); 57 | memset(slave.peer_addr, 0xFF, 6); 58 | slave.channel = 1; 59 | if (!esp_now_is_peer_exist((const uint8_t*)slave.peer_addr)) { 60 | esp_now_add_peer((const esp_now_peer_info_t*)&slave); 61 | } 62 | } 63 | 64 | void setup(void) override 65 | { 66 | startEspNow(); 67 | prevPeerCount = 0; 68 | } 69 | void loop(void) override 70 | { 71 | M5.Lcd.setClipRect(17, 32, 286, 172); 72 | if (touchPoints) 73 | { 74 | if (justTouch) 75 | { 76 | clickSound(); 77 | } 78 | if (memcmp(&last_tp, tp, sizeof(m5gfx::touch_point_t))) 79 | { 80 | last_tp = tp[0]; 81 | M5.Lcd.fillRect(tp[0].x - 1, tp[0].y - 1, 3, 3, TFT_BLUE); 82 | sendTouchPos(tp); 83 | } 84 | } 85 | if (prevPeerCount != peerCount) 86 | { 87 | M5.Lcd.setTextSize(1); 88 | M5.Lcd.setFont(&fonts::Font0); 89 | for (int idx = prevPeerCount; idx < peerCount; ++idx) 90 | { 91 | M5.Lcd.setCursor(17, 32 + idx * 8); 92 | M5.Lcd.setTextColor(peerColor[idx], TFT_WHITE); 93 | M5.Lcd.printf("%02x:%02x:%02x:%02x:%02x:%02x", peer[idx].mac[0], peer[idx].mac[1], peer[idx].mac[2], peer[idx].mac[3], peer[idx].mac[4], peer[idx].mac[5]); 94 | } 95 | prevPeerCount = peerCount; 96 | } 97 | for (int idx = 0; idx < peerCount; ++idx) 98 | { 99 | if (!peer[idx].recv) continue; 100 | peer[idx].recv = false; 101 | M5.Lcd.fillRect(peer[idx].tp.x - 1, peer[idx].tp.y - 1, 3, 3, peerColor[idx]); 102 | } 103 | M5.Lcd.clearClipRect(); 104 | } 105 | void end(void) override 106 | { 107 | esp_now_del_peer(slave.peer_addr); 108 | esp_now_unregister_recv_cb(); 109 | esp_now_deinit(); 110 | WiFi.disconnect(true); 111 | } 112 | 113 | private: 114 | int prevPeerCount; 115 | 116 | void sendTouchPos(m5gfx::touch_point_t* tp) 117 | { 118 | auto buf = (uint8_t*)alloca(packetlen); 119 | memcpy(buf, &dummy_prefix, 4); 120 | memcpy(&buf[4], tp, sizeof(m5gfx::touch_point_t)); 121 | esp_now_send(slave.peer_addr, buf, packetlen); 122 | } 123 | }; 124 | -------------------------------------------------------------------------------- /src/PageUART.hpp: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include "main.hpp" 4 | 5 | #include 6 | #include 7 | #include 8 | #include 9 | #include 10 | #include 11 | #include 12 | #if __has_include() 13 | #include 14 | #endif 15 | 16 | BluetoothSerial SerialBT; 17 | 18 | extern const unsigned char gImage_uartBk[]; 19 | extern const unsigned char gImage_uartBps[]; 20 | extern const unsigned char gImage_uartPort[]; 21 | extern const unsigned char gImage_uartStopStart[]; 22 | 23 | static constexpr int bpsListMax = 12; 24 | static constexpr int bpsUARTList[bpsListMax] = { 1200,2400,4800,9600,19200,38400,57600,115200,256000,512000,750000,921600 }; 25 | 26 | enum serialSource 27 | { ss_usb = 0 28 | , ss_porta 29 | , ss_portb 30 | , ss_portc 31 | , ss_rs485 32 | , ss_ble 33 | , ss_bt 34 | , ss_espnow 35 | }; 36 | // 0:USB / 1:PortA / 2:PortB / 3:PortC / 4:RS485 / 5:BLE / 6:BT / 7:ESPNOW 37 | static constexpr int serialSourceMax = 8; 38 | static constexpr int8_t sourceUARTList[serialSourceMax][2] = { { 1, 3 }, { 32, 33 }, { 26, 36 }, { 14, 13 }, { 19, 27 }, {-1, -1}, {-1, -1} }; // tx,rx 39 | 40 | class ringbuf_t 41 | { 42 | public: 43 | virtual ~ringbuf_t(void) 44 | { 45 | release(); 46 | } 47 | void release(void) 48 | { 49 | if (_buffer) 50 | { 51 | free(_buffer); 52 | _buffer = nullptr; 53 | _buflen = 0; 54 | } 55 | } 56 | void init(size_t buflen) 57 | { 58 | release(); 59 | _buflen = buflen; 60 | _buffer = (uint8_t*)malloc(buflen); 61 | _writeindex = 0; 62 | _readindex = 0; 63 | } 64 | 65 | size_t available(void) 66 | { 67 | return (_writeindex - _readindex) & (_buflen - 1); 68 | } 69 | 70 | void read(uint8_t* buf, size_t len) 71 | { 72 | do 73 | { 74 | size_t l = std::min(len, _buflen - _readindex); 75 | memcpy(buf, &_buffer[_readindex], l); 76 | _readindex += l; 77 | if (_readindex == _buflen) 78 | { 79 | _readindex = 0; 80 | buf += l; 81 | } 82 | len -= l; 83 | } while (len); 84 | } 85 | 86 | void write(const uint8_t* buf, size_t len) 87 | { 88 | do 89 | { 90 | size_t l = std::min(len, _buflen - _writeindex); 91 | memcpy(&_buffer[_writeindex], buf, l); 92 | _writeindex += l; 93 | if (_writeindex == _buflen) 94 | { 95 | _writeindex = 0; 96 | buf += l; 97 | } 98 | len -= l; 99 | } while (len); 100 | } 101 | 102 | private: 103 | uint8_t* _buffer = nullptr; 104 | size_t _buflen; 105 | size_t _writeindex; 106 | size_t _readindex; 107 | }; 108 | 109 | ringbuf_t _ringbuf_espnow; 110 | ringbuf_t _ringbuf_ble; 111 | bool deviceConnected = false; 112 | bool oldDeviceConnected = false; 113 | 114 | struct PageUART : public PageBase 115 | { 116 | static constexpr int bpsX = 211; 117 | static constexpr int bpsWidth = 64; 118 | static constexpr int bpsHeight = 18; 119 | static constexpr int sourceX = 104; 120 | static constexpr int sourceWidth = 98; 121 | static constexpr int sourceHeight = 18; 122 | static constexpr int colorLogBk = 0xE73C; 123 | 124 | M5Canvas _canvas_source; 125 | 126 | void drawBps(int y, int bpsIdx, bool visible, bool& prevVisible) 127 | { 128 | if (prevVisible != visible) 129 | { 130 | prevVisible = visible; 131 | int x = bpsX; 132 | int tx = bpsX + bpsWidth; 133 | if (visible) std::swap(x, tx); 134 | M5.Lcd.setClipRect(bpsX, y, bpsWidth, bpsHeight); 135 | do 136 | { 137 | x = x + (x < tx ? 1 : -1); 138 | M5.Lcd.pushImage(x, y, bpsWidth, bpsHeight, (m5gfx::rgb565_t*)gImage_uartBps + (bpsIdx * bpsWidth * bpsHeight)); 139 | delay(1); 140 | } while (x != tx); 141 | M5.Lcd.clearClipRect(); 142 | } 143 | if (visible) 144 | { 145 | M5.Lcd.pushImage(bpsX, y, bpsWidth, bpsHeight, (m5gfx::rgb565_t*)gImage_uartBps + (bpsIdx * bpsWidth * bpsHeight)); 146 | } 147 | else 148 | { 149 | M5.Lcd.fillRect(bpsX, y, bpsWidth, bpsHeight, TFT_WHITE); 150 | } 151 | } 152 | 153 | void drawBps(void) 154 | { 155 | drawBps( 98, bpsUART1, sourceUART1 < ss_ble, visibleBps1); 156 | drawBps(120, bpsUART2, sourceUART2 < ss_ble, visibleBps2); 157 | 158 | // if (sourceUART2 >= ss_ble) 159 | // { 160 | // M5.Lcd.fillRect(bpsX, 120, bpsWidth, bpsHeight, TFT_WHITE); 161 | // } 162 | // else 163 | // { 164 | // M5.Lcd.pushImage(bpsX, 120, bpsWidth, bpsHeight, (m5gfx::rgb565_t*)gImage_uartBps + (bpsUART2 * bpsWidth * bpsHeight)); 165 | // } 166 | } 167 | void setup(void) override 168 | { 169 | static constexpr char format[] = "%02x%02x%02x%02x%02x%02x"; 170 | uint8_t mac[6]; 171 | esp_read_mac(mac, ESP_MAC_BT); 172 | _canvas_source.setPsram(true); 173 | _canvas_source.createSprite(sourceWidth, sourceHeight * serialSourceMax); 174 | _canvas_source.pushImage(0, 0, sourceWidth, sourceHeight * serialSourceMax, (m5gfx::swap565_t*)gImage_uartPort); 175 | _canvas_source.setTextSize(1,2); 176 | _canvas_source.setTextColor(TFT_BLACK, TFT_WHITE); 177 | _canvas_source.setCursor(24, sourceHeight * ss_ble + 2); 178 | _canvas_source.printf(format, mac[0], mac[1], mac[2], mac[3], mac[4], mac[5]); 179 | _canvas_source.setCursor(24, sourceHeight * ss_bt + 2); 180 | _canvas_source.printf(format, mac[0], mac[1], mac[2], mac[3], mac[4], mac[5]); 181 | _canvas_source.setCursor(24, sourceHeight * ss_espnow + 2); 182 | esp_read_mac(mac, ESP_MAC_WIFI_STA); 183 | _canvas_source.printf(format, mac[0], mac[1], mac[2], mac[3], mac[4], mac[5]); 184 | 185 | M5.Lcd.pushImage(17, 34, 286, 168 , (m5gfx::rgb565_t*)gImage_uartBk); 186 | M5.Lcd.pushImage(sourceX, 98, sourceWidth, sourceHeight, (m5gfx::rgb565_t*)_canvas_source.getBuffer() + (sourceUART1 * sourceWidth * sourceHeight)); 187 | M5.Lcd.pushImage(sourceX, 120, sourceWidth, sourceHeight, (m5gfx::rgb565_t*)_canvas_source.getBuffer() + (sourceUART2 * sourceWidth * sourceHeight)); 188 | drawBps(); 189 | setEnable(false); 190 | serialMon1.init( 38); 191 | serialMon2.init(140); 192 | } 193 | void end(void) override 194 | { 195 | serialMon1.release(); 196 | serialMon2.release(); 197 | _seri1.reset(nullptr); 198 | _seri2.reset(nullptr); 199 | _canvas_source.deletePalette(); 200 | _canvas_source.deleteSprite(); 201 | } 202 | void loop(void) override 203 | { 204 | if (enableUART) 205 | { 206 | if (justTouch) 207 | { 208 | if ((tp[0].x > 20) && (tp[0].x < sourceX) && (tp[0].y > 98) && (tp[0].y < 136)) 209 | { 210 | clickSound(); 211 | setEnable(false); 212 | return; 213 | } 214 | } 215 | bool s1, s2; 216 | do 217 | { 218 | s1 = serialMon1.update(); 219 | s2 = serialMon2.update(); 220 | } while (s1 || s2); 221 | } 222 | else 223 | { 224 | if (justTouch) 225 | { 226 | if ((tp[0].y > 118 - 56) && (tp[0].y < 118 + 56)) 227 | { 228 | if (tp[0].x > bpsX) 229 | { 230 | if (tp[0].y < 118) 231 | { 232 | if (visibleBps1) 233 | { 234 | flickSelect((m5gfx::rgb565_t*)gImage_uartBps, bpsUART1, bpsX, 98, bpsWidth, bpsHeight, bpsListMax); 235 | } 236 | } 237 | else 238 | { 239 | if (visibleBps2) 240 | { 241 | flickSelect((m5gfx::rgb565_t*)gImage_uartBps, bpsUART2, bpsX, 120, bpsWidth, bpsHeight, bpsListMax); 242 | } 243 | } 244 | } 245 | else 246 | if (tp[0].x > sourceX) 247 | { 248 | if (tp[0].y < 118) 249 | { 250 | flickSelect((m5gfx::rgb565_t*)_canvas_source.getBuffer(), sourceUART1, sourceX, 98, sourceWidth, sourceHeight, serialSourceMax, sourceUART2); 251 | } 252 | else 253 | { 254 | flickSelect((m5gfx::rgb565_t*)_canvas_source.getBuffer(), sourceUART2, sourceX, 120, sourceWidth, sourceHeight, serialSourceMax, sourceUART1); 255 | } 256 | drawBps(); 257 | } 258 | else 259 | { 260 | if (sourceUART1 != sourceUART2) 261 | { 262 | clickSound(); 263 | M5.Lcd.fillRect(20, 36, 280, 60, colorLogBk); 264 | M5.Lcd.fillRect(20, 140, 280, 60, colorLogBk); 265 | setEnable(true); 266 | } 267 | else 268 | { 269 | errorSound(); 270 | } 271 | } 272 | } 273 | } 274 | } 275 | } 276 | 277 | private: 278 | 279 | struct ISerial 280 | { 281 | virtual ~ISerial() { release(); } 282 | virtual void release(void) {}; 283 | virtual int available(void) = 0; 284 | virtual void read(uint8_t*, size_t) = 0; 285 | virtual void write(const uint8_t*, size_t) = 0; 286 | }; 287 | 288 | struct HwSerial : public ISerial 289 | { 290 | HwSerial(HardwareSerial* seri, int baudrate, int rx, int tx) 291 | : _seri { seri } 292 | { 293 | seri->begin(baudrate, SERIAL_8N1, rx, tx); 294 | } 295 | void release(void) override 296 | { 297 | _seri->end(); 298 | } 299 | int available(void) override 300 | { 301 | return _seri->available(); 302 | } 303 | void read(uint8_t* buf, size_t len) override 304 | { 305 | #if defined ( ARDUINO_ESP32_RELEASE_1_0_4 ) 306 | do 307 | { 308 | *buf++ = _seri->read(); 309 | } while (--len); 310 | #else 311 | _seri->read(buf, len); 312 | #endif 313 | } 314 | void write(const uint8_t* buf, size_t len) override 315 | { 316 | _seri->write(buf, len); 317 | } 318 | private: 319 | HardwareSerial* _seri; 320 | }; 321 | 322 | struct ESPNOWSerial : public ISerial 323 | { 324 | esp_now_peer_info_t slave; 325 | 326 | static void OnDataRecv(const uint8_t *mac, const uint8_t *data, int len) 327 | { 328 | _ringbuf_espnow.write(data, len); 329 | } 330 | 331 | ESPNOWSerial(void) 332 | { 333 | _ringbuf_espnow.init(512); 334 | WiFi.mode(WIFI_STA); 335 | WiFi.disconnect(); 336 | if (esp_now_init() == ESP_OK) { ESP_LOGI("main", "ESPNow Init Success"); } 337 | esp_now_register_recv_cb(OnDataRecv); 338 | 339 | memset(&slave, 0, sizeof(slave)); 340 | memset(slave.peer_addr, 0xFF, 6); 341 | slave.channel = 1; 342 | if (!esp_now_is_peer_exist((const uint8_t*)slave.peer_addr)) { 343 | esp_now_add_peer((const esp_now_peer_info_t*)&slave); 344 | } 345 | } 346 | void release(void) override 347 | { 348 | esp_now_del_peer(slave.peer_addr); 349 | esp_now_unregister_recv_cb(); 350 | esp_now_deinit(); 351 | WiFi.disconnect(true); 352 | _ringbuf_espnow.release(); 353 | } 354 | 355 | int available(void) override 356 | { 357 | return _ringbuf_espnow.available(); 358 | } 359 | 360 | void read(uint8_t* buf, size_t len) override 361 | { 362 | _ringbuf_espnow.read(buf, len); 363 | } 364 | 365 | void write(const uint8_t* buf, size_t len) override 366 | { 367 | esp_now_send(slave.peer_addr, buf, len); 368 | } 369 | }; 370 | 371 | struct BTSerial : public ISerial 372 | { 373 | BTSerial() 374 | { 375 | SerialBT.begin(); 376 | } 377 | void release(void) override 378 | { 379 | SerialBT.disconnect(); 380 | SerialBT.end(); 381 | } 382 | int available(void) override 383 | { 384 | return SerialBT.available(); 385 | } 386 | void read(uint8_t* buf, size_t len) override 387 | { 388 | SerialBT.readBytes(buf, len); 389 | } 390 | void write(const uint8_t* buf, size_t len) override 391 | { 392 | SerialBT.write(buf, len); 393 | SerialBT.flush(); 394 | } 395 | }; 396 | 397 | struct BLESerial : public ISerial 398 | { 399 | BLEServer *pServer = NULL; 400 | BLECharacteristic * pTxCharacteristic; 401 | uint8_t txValue = 0; 402 | 403 | #define SERVICE_UUID "6E400001-B5A3-F393-E0A9-E50E24DCCA9E" // UART service UUID 404 | #define CHARACTERISTIC_UUID_RX "6E400002-B5A3-F393-E0A9-E50E24DCCA9E" 405 | #define CHARACTERISTIC_UUID_TX "6E400003-B5A3-F393-E0A9-E50E24DCCA9E" 406 | 407 | class MyServerCallbacks: public BLEServerCallbacks { 408 | void onConnect(BLEServer* pServer) { 409 | deviceConnected = true; 410 | }; 411 | 412 | void onDisconnect(BLEServer* pServer) { 413 | deviceConnected = false; 414 | } 415 | }; 416 | 417 | class MyCallbacks: public BLECharacteristicCallbacks { 418 | void onWrite(BLECharacteristic *pCharacteristic) { 419 | std::string rxValue = pCharacteristic->getValue(); 420 | size_t len = rxValue.size(); 421 | if (len) 422 | { 423 | _ringbuf_ble.write((uint8_t*)rxValue.c_str(), len); 424 | } 425 | } 426 | }; 427 | 428 | BLESerial() 429 | { 430 | // Create the BLE Device 431 | BLEDevice::init("UART Service"); 432 | 433 | // Create the BLE Server 434 | pServer = BLEDevice::createServer(); 435 | pServer->setCallbacks(new MyServerCallbacks()); 436 | 437 | // Create the BLE Service 438 | BLEService *pService = pServer->createService(SERVICE_UUID); 439 | 440 | // Create a BLE Characteristic 441 | pTxCharacteristic = pService->createCharacteristic( 442 | CHARACTERISTIC_UUID_TX, 443 | BLECharacteristic::PROPERTY_NOTIFY 444 | ); 445 | 446 | pTxCharacteristic->addDescriptor(new BLE2902()); 447 | 448 | BLECharacteristic * pRxCharacteristic = pService->createCharacteristic( 449 | CHARACTERISTIC_UUID_RX, 450 | BLECharacteristic::PROPERTY_WRITE 451 | ); 452 | 453 | pRxCharacteristic->setCallbacks(new MyCallbacks()); 454 | 455 | // Start the service 456 | pService->start(); 457 | 458 | // Start advertising 459 | pServer->getAdvertising()->start(); 460 | // Serial.println("Waiting a client connection to notify..."); 461 | 462 | _ringbuf_ble.init(256); 463 | } 464 | 465 | void release(void) override 466 | { 467 | _ringbuf_ble.release(); 468 | } 469 | 470 | int available(void) override 471 | { 472 | if (oldDeviceConnected != deviceConnected) { 473 | oldDeviceConnected = deviceConnected; 474 | // disconnecting 475 | if (!deviceConnected) { 476 | // delay(500); // give the bluetooth stack the chance to get things ready 477 | pServer->startAdvertising(); // restart advertising 478 | // Serial.println("start advertising"); 479 | } 480 | else 481 | { // connecting 482 | // do stuff here on connecting 483 | } 484 | } 485 | return _ringbuf_ble.available(); 486 | // return blespp_buflen[blespp_readindex]; 487 | } 488 | 489 | void read(uint8_t* buf, size_t len) override 490 | { 491 | _ringbuf_ble.read(buf, len); 492 | } 493 | 494 | void write(const uint8_t* buf, size_t len) override 495 | { 496 | if (!deviceConnected) { return; } 497 | 498 | do 499 | { 500 | size_t sendlen = std::min(20u, len); 501 | pTxCharacteristic->setValue((uint8_t*)buf, len); 502 | pTxCharacteristic->notify(); 503 | buf += sendlen; 504 | len -= sendlen; 505 | } while (len); 506 | } 507 | }; 508 | 509 | struct serial_monitor_t 510 | { 511 | void init(int ypos) 512 | { 513 | _ypos = ypos; 514 | _canvas.setColorDepth(8); 515 | _canvas.createSprite(280, 58); 516 | _canvas.createPalette(); 517 | _canvas.setPaletteColor(1, colorLogBk); 518 | _canvas.setTextColor(0, 1); 519 | } 520 | void release(void) 521 | { 522 | _canvas.deleteSprite(); 523 | } 524 | void setBridge(ISerial* in, ISerial* out) 525 | { 526 | _seri_in = in; 527 | _seri_out = out; 528 | _xcount = 0; 529 | _canvas.clear(1); 530 | } 531 | bool update(void) 532 | { 533 | static constexpr char hex[] = "0123456789ABCDEF"; 534 | static constexpr int bufferlen = ESP_NOW_MAX_DATA_LEN; 535 | 536 | int len = _seri_in->available(); 537 | if (len) 538 | { 539 | uint8_t buf[bufferlen]; 540 | len = std::min(len, bufferlen); 541 | _seri_in->read(buf, len); 542 | _seri_out->write(buf, len); 543 | for (int i = 0; i < len; ++i) 544 | { 545 | if (_xcount == 0) 546 | { 547 | _canvas.scroll(0, - 10); 548 | } 549 | int x = _xcount * 14 + (_xcount >> 2); 550 | _canvas.drawChar(hex[buf[i] >> 4], x , 51); 551 | _canvas.drawChar(hex[buf[i] & 15], x+6, 51); 552 | _canvas.drawChar(buf[i], 181 + _xcount * 8 + ((_xcount >> 2) << 1), 51); 553 | 554 | ++_xcount; 555 | if (_xcount == 12) 556 | { 557 | _xcount = 0; 558 | } 559 | } 560 | _mod = true; 561 | return true; 562 | } 563 | 564 | if (_mod) 565 | { 566 | _mod = false; 567 | _canvas.pushSprite(&M5.Lcd, 20, _ypos); 568 | } 569 | return false; 570 | } 571 | 572 | private: 573 | int _xcount; 574 | int _ypos; 575 | bool _mod; 576 | ISerial* _seri_in; 577 | ISerial* _seri_out; 578 | M5Canvas _canvas; 579 | }; 580 | 581 | serial_monitor_t serialMon1; 582 | serial_monitor_t serialMon2; 583 | std::unique_ptr _seri1; 584 | std::unique_ptr _seri2; 585 | int bpsUART1 = 7; // 115200 586 | int bpsUART2 = 7; // 115200 587 | int sourceUART1 = serialSource::ss_usb; 588 | int sourceUART2 = serialSource::ss_porta; 589 | bool visibleBps1 = true; 590 | bool visibleBps2 = true; 591 | bool enableUART = false; 592 | 593 | void setEnable(bool enable) 594 | { 595 | // M5.Lcd.pushImage(46,88,60,60, (m5gfx::rgb565_t*)( enable ? gImage_UARTon : gImage_UARToff)); 596 | M5.Lcd.pushImage(18, 101, 80, 34, (m5gfx::rgb565_t*)gImage_uartStopStart + (enable * 80 * 34)); 597 | if (enableUART != enable) 598 | { 599 | enableUART = enable; 600 | if (enable) 601 | { 602 | switch (sourceUART1) 603 | { 604 | case ss_espnow: 605 | _seri1.reset(new ESPNOWSerial()); 606 | break; 607 | case ss_bt: 608 | _seri1.reset(new BTSerial()); 609 | break; 610 | case ss_ble: 611 | _seri1.reset(new BLESerial()); 612 | break; 613 | default: 614 | _seri1.reset(new HwSerial(&Serial1, bpsUARTList[bpsUART1], sourceUARTList[sourceUART1][1], sourceUARTList[sourceUART1][0])); 615 | break; 616 | } 617 | 618 | switch (sourceUART2) 619 | { 620 | case ss_espnow: 621 | _seri2.reset(new ESPNOWSerial()); 622 | break; 623 | case ss_bt: 624 | _seri2.reset(new BTSerial()); 625 | break; 626 | case ss_ble: 627 | _seri2.reset(new BLESerial()); 628 | break; 629 | default: 630 | _seri2.reset(new HwSerial(&Serial2, bpsUARTList[bpsUART2], sourceUARTList[sourceUART2][1], sourceUARTList[sourceUART2][0])); 631 | break; 632 | } 633 | // _seri_in->begin(bpsUARTList[bps], SERIAL_8N1, sourceUARTList[source][1], sourceUARTList[source][0]); 634 | 635 | serialMon1.setBridge(_seri1.get(), _seri2.get()); 636 | serialMon2.setBridge(_seri2.get(), _seri1.get()); 637 | } 638 | else 639 | { 640 | serialMon1.setBridge(nullptr, nullptr); 641 | serialMon2.setBridge(nullptr, nullptr); 642 | 643 | _seri1.reset(nullptr); 644 | _seri2.reset(nullptr); 645 | // if (_seri1.get()) { _seri1->release(); } 646 | // if (_seri2.get()) { _seri2->release(); } 647 | Serial.begin(115200); 648 | } 649 | } 650 | } 651 | 652 | void flickSelect(m5gfx::rgb565_t* srcimg, int &source, int x, int y, int width, int height, int itemCount, int noselectindex = -1) 653 | { 654 | const int totalHeight = height * itemCount; 655 | 656 | int prev_source = -1; 657 | int pos = source * height; 658 | M5.Lcd.setClipRect(x, y, width, height); 659 | while (updateTouch()) 660 | { 661 | pos -= flickDiffY; 662 | flickDiffY = 0; 663 | if ((uint32_t)pos >= totalHeight) 664 | { 665 | pos += (pos < 0) ? totalHeight : -totalHeight; 666 | } 667 | M5.Lcd.pushImage(x, y - pos , width, totalHeight, srcimg); 668 | M5.Lcd.pushImage(x, y - pos + totalHeight, width, totalHeight, srcimg); 669 | 670 | source = ((pos + (height >> 1)) / height) % itemCount; 671 | if (source == noselectindex) 672 | { 673 | source += (source * height <= pos && pos < (source + 1) * height) ? 1 : -1; 674 | source = (source + itemCount) % itemCount; 675 | } 676 | if (prev_source != source) 677 | { 678 | prev_source = source; 679 | clickSound(); 680 | } 681 | } 682 | 683 | int py = source * height; 684 | if (abs(pos - py) > abs(pos - (py + totalHeight))) 685 | { 686 | py += totalHeight; 687 | } 688 | 689 | int add = (pos < py) ? 1 : -1; 690 | 691 | while (pos != py) 692 | { 693 | pos += add; 694 | M5.Lcd.pushImage(x, y - pos , width, totalHeight, srcimg); 695 | M5.Lcd.pushImage(x, y - pos + totalHeight, width, totalHeight, srcimg); 696 | delay(10); 697 | } 698 | M5.Lcd.clearClipRect(); 699 | } 700 | 701 | }; 702 | -------------------------------------------------------------------------------- /src/PageWiFi.hpp: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include "main.hpp" 4 | 5 | extern const unsigned char gImage_ScanWiFi[]; 6 | 7 | struct PageWiFi : public PageBase 8 | { 9 | void setup(void) override 10 | { 11 | M5.Lcd.pushImage(220, 120, 80, 80 , (m5gfx::rgb565_t*)gImage_ScanWiFi); 12 | } 13 | void loop(void) override 14 | { 15 | if (justTouch && (tp[0].y > 120) && (tp[0].y < 200) && (tp[0].x > 220) && (tp[0].x < 320)) 16 | { 17 | clickSound(); 18 | M5.Lcd.setFont(&fonts::Font2); 19 | M5.Lcd.fillRect(20, 35, 200, 165, TFT_WHITE); 20 | M5.Lcd.setTextColor(TFT_BLACK, TFT_WHITE); 21 | M5.Lcd.setCursor(20, 32); 22 | M5.Lcd.printf("Scanning ......"); 23 | 24 | WiFi.mode(WIFI_STA); 25 | WiFi.disconnect(); 26 | int n = WiFi.scanNetworks(); 27 | M5.Lcd.setCursor(20, 32); 28 | M5.Lcd.printf("Total : %d found.", n); 29 | for (int i = 0; i < 10; i++) 30 | { 31 | M5.Lcd.setCursor(20, 50 + 15 * i); 32 | M5.Lcd.setTextColor((WiFi.RSSI(i) > -70) ? TFT_BLUE : TFT_RED, TFT_WHITE); 33 | M5.Lcd.printf("%d. %s : (%d)", i + 1, WiFi.SSID(i).c_str(), WiFi.RSSI(i)); 34 | } 35 | } 36 | } 37 | void end(void) override 38 | { 39 | } 40 | }; 41 | -------------------------------------------------------------------------------- /src/ft6336_fw_updater.cpp: -------------------------------------------------------------------------------- 1 | 2 | #include 3 | 4 | static constexpr int i2c_addr = 0x38; 5 | static constexpr int i2c_freq = 400000; 6 | 7 | #include "ft6336_fw_v17_app.h" 8 | #define OLD_FIRMWARE_VERSION 16 9 | 10 | #define FT6336U_ID 0x64 11 | #define ID_G_CIPHER 0xa3 12 | #define ID_G_FIRMID 0xa6 13 | #define ID_G_VENDID 0xa8 14 | #define FT_REG_RESET_FW 0x07 15 | #define FT_ERASE_APP_REG 0x61 16 | #define FT_READ_ID_REG 0x90 17 | #define FT_FW_START_REG 0xbf 18 | #define FT_RST_CMD_REG2 0xbc 19 | #define FT_UPGRADE_AA 0xAA 20 | #define FT_UPGRADE_55 0x55 21 | #define FT_FW_PKT_LEN 128 22 | #define FT_FW_PKT_DLY_MS 10 23 | 24 | #define DELAY_AA 100 25 | #define DELAY_55 30 26 | #define DELAY_READID 100 27 | 28 | #define UPGRADE_ID_1 0x79 29 | #define UPGRADE_ID_2 0x1C 30 | 31 | #define LOG(fmt, arg...) ESP_LOGI("FT6336_FW", "[%s]: " fmt , __func__ , ## arg) 32 | #define ERR(fmt, arg...) ESP_LOGE("FT6336_FW", "[%s]: " fmt , __func__ , ## arg) 33 | #ifndef DEBUG 34 | #define DBG(fmt, arg...) {} 35 | #else 36 | #define DBG(fmt, arg...) ESP_LOGD("FT6336_FW", "[%s]: " fmt "\n" , __func__ , ## arg) 37 | #endif 38 | 39 | static bool i2c_read(const uint8_t *wrbuf, int wrlen, uint8_t *rdbuf, int rdlen) 40 | { 41 | if (wrlen > 0) 42 | { 43 | if (!M5.In_I2C.start(i2c_addr, false, i2c_freq) 44 | || !M5.In_I2C.write(wrbuf, wrlen) 45 | || !M5.In_I2C.restart(i2c_addr, true, i2c_freq)) 46 | { 47 | ERR("I2C write error"); 48 | return false; 49 | } 50 | } 51 | else 52 | { 53 | if (!M5.In_I2C.start(i2c_addr, true, i2c_freq)) 54 | { 55 | ERR("I2C read error"); 56 | return false; 57 | } 58 | } 59 | if (!M5.In_I2C.read(rdbuf, rdlen) 60 | || !M5.In_I2C.stop()) 61 | { 62 | ERR("I2C read error: request:%d", rdlen); 63 | return false; 64 | } 65 | return true; 66 | } 67 | 68 | static bool i2c_write(const uint8_t *buf, int len) 69 | { 70 | if (!M5.In_I2C.start(i2c_addr, false, i2c_freq) 71 | || !M5.In_I2C.write(buf, len) 72 | || !M5.In_I2C.stop()) 73 | { 74 | ERR("I2C write error"); 75 | return false; 76 | } 77 | return true; 78 | } 79 | 80 | static bool read_id(void) 81 | { 82 | uint8_t reg_val[2] = {0}; 83 | uint8_t packet_buf[4]; 84 | 85 | delay(DELAY_READID); 86 | packet_buf[0] = FT_READ_ID_REG; 87 | packet_buf[1] = packet_buf[2] = packet_buf[3] = 0x00; 88 | 89 | i2c_read(packet_buf, 4, reg_val, 2); 90 | if (reg_val[0] != UPGRADE_ID_1 91 | || reg_val[1] != UPGRADE_ID_2) { 92 | ERR("READ-ID not ok: %x %x", reg_val[0], reg_val[1]); 93 | return false; 94 | } 95 | 96 | return true; 97 | } 98 | 99 | static void ft6x36_fw_upgrade(const uint8_t *data, uint32_t data_len) 100 | { 101 | int i; 102 | uint8_t buf[6 + FT_FW_PKT_LEN]; 103 | 104 | size_t retry = 16; 105 | do 106 | { 107 | LOG("Reset CTPM"); 108 | buf[0] = FT_RST_CMD_REG2; 109 | buf[1] = FT_UPGRADE_AA; 110 | i2c_write(buf, 2); 111 | delay(DELAY_AA); 112 | buf[1] = FT_UPGRADE_55; 113 | i2c_write(buf, 2); 114 | delay(DELAY_55); 115 | 116 | LOG("Enter upgrade mode"); 117 | buf[0] = FT_UPGRADE_55; 118 | buf[1] = FT_UPGRADE_AA; 119 | if (!i2c_write(buf, 2)) 120 | { 121 | ERR("failed to enter upgrade mode"); 122 | continue; 123 | } 124 | LOG("Check READ-ID"); 125 | } while (!read_id() && --retry); 126 | 127 | if (retry == 0) 128 | { 129 | return; 130 | } 131 | 132 | M5.Display.fillScreen(TFT_WHITE); 133 | M5.Display.setCursor(0, 0); 134 | M5.Display.setFont(&fonts::Font4); 135 | M5.Display.setTextColor(TFT_BLACK, TFT_WHITE); 136 | M5.Display.drawString("Core2 Touch Firmware", 0, 0); 137 | M5.Display.fillRect(10, 112, M5.Display.width() - 20, 17, TFT_BLACK); 138 | M5.Display.fillCircle( 10, 120, 8, TFT_BLACK); 139 | M5.Display.fillCircle( M5.Display.width() - 10, 120, 8, TFT_BLACK); 140 | 141 | 142 | LOG("Erase current app"); 143 | M5.Display.drawString("Erase", 0, 28); 144 | buf[0] = FT_ERASE_APP_REG; 145 | if (!i2c_write(buf, 1)) 146 | { 147 | ERR("Couldn't Erase"); 148 | return; 149 | } 150 | 151 | for (i = 0; i < 200; ++i) { 152 | M5.Display.fillCircle( 10 + (M5.Display.width() - 20) * i / 200, 120, 4, TFT_BLUE ); 153 | delay(5); 154 | } 155 | 156 | M5.Display.drawString("Write ", 0, 28); 157 | LOG("Write firmware to CTPM flash"); 158 | buf[0] = FT_FW_START_REG; 159 | buf[1] = 0x00; 160 | bool fail = false; 161 | for (i = 0; i < data_len; i += FT_FW_PKT_LEN) { 162 | uint32_t length = data_len - i; 163 | if (length > FT_FW_PKT_LEN) { length = FT_FW_PKT_LEN; } 164 | 165 | buf[2] = (uint8_t) (i >> 8); 166 | buf[3] = (uint8_t) i; 167 | buf[4] = (uint8_t) (length >> 8); 168 | buf[5] = (uint8_t) length; 169 | memcpy(&buf[6], &data[i], length); 170 | if (!i2c_write(buf, length + 6)) 171 | { 172 | fail = true; 173 | ERR("Couldn't Write"); 174 | break; 175 | } 176 | delay(FT_FW_PKT_DLY_MS); 177 | M5.Display.fillCircle( 10 + (M5.Display.width() - 20) * i / data_len, 120, 4, TFT_GREEN ); 178 | } 179 | if (fail) 180 | { 181 | ERR("Failed to flash FW"); 182 | M5.Display.drawString("fail", 0, 56); 183 | } 184 | else 185 | { 186 | LOG("Success to flash FW"); 187 | M5.Display.drawString("success", 0, 56); 188 | } 189 | delay(50); 190 | 191 | buf[0] = FT_REG_RESET_FW; 192 | i2c_write(buf, 1); 193 | delay(1000); 194 | 195 | M5.Display.clear(); 196 | } 197 | 198 | void ft6336_fw_updater(void) 199 | { 200 | uint8_t wbuf; 201 | 202 | wbuf = ID_G_CIPHER; 203 | size_t retry = 8; 204 | 205 | uint8_t cipher = 0; 206 | do 207 | { 208 | delay(128); 209 | if (i2c_read(&wbuf, 1, &cipher, 1)) { break; } 210 | LOG("wait CTPM response"); 211 | } while (--retry); 212 | LOG("ChipVendorID: %02x", cipher); 213 | 214 | /* Get vendor ID */ 215 | uint8_t vendid = 0; 216 | { 217 | wbuf = ID_G_VENDID; 218 | i2c_read(&wbuf, 1, &vendid, 1); 219 | LOG("Vendor ID: %02x", vendid); 220 | } 221 | 222 | /* Get current firmware version */ 223 | uint8_t fw_ver = 0; 224 | { 225 | wbuf = ID_G_FIRMID; 226 | i2c_read(&wbuf, 1, &fw_ver, 1); 227 | LOG("Firmware version: %d", fw_ver); 228 | } 229 | 230 | if ((cipher == FT6336U_ID && vendid == 0x11 && fw_ver == OLD_FIRMWARE_VERSION) 231 | || (0 == (cipher | vendid | fw_ver))) // For determining recovery in case of firmware corruption; 232 | { 233 | auto &bin = firmware_v17; 234 | LOG("FW length is %ld", sizeof(bin)); 235 | ft6x36_fw_upgrade(bin, sizeof(bin)); 236 | } 237 | } 238 | -------------------------------------------------------------------------------- /src/main.hpp: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include 4 | #include 5 | #include 6 | #include 7 | #include 8 | 9 | #if __has_include () 10 | #include 11 | #if ESP_IDF_VERSION >= ESP_IDF_VERSION_VAL(4, 0, 0) 12 | #define M5TOOLS_I2S_COMM_FORMAT I2S_COMM_FORMAT_STAND_I2S 13 | #endif 14 | #endif 15 | #ifndef M5TOOLS_I2S_COMM_FORMAT 16 | #define M5TOOLS_I2S_COMM_FORMAT I2S_COMM_FORMAT_I2S 17 | #endif 18 | 19 | extern const unsigned char gWav_Click[]; 20 | extern const unsigned char gWav_Error[]; 21 | 22 | m5gfx::touch_point_t prev_tp[2]; 23 | m5gfx::touch_point_t tp[2]; 24 | uint32_t loopCount = 0; 25 | int touchPoints, prev_touchPoints; 26 | bool justTouch; 27 | int flickDiffX, flickDiffY; 28 | 29 | 30 | #define CONFIG_I2S_BCK_PIN 12 31 | #define CONFIG_I2S_LRCK_PIN 0 32 | #define CONFIG_I2S_DATA_PIN 2 33 | #define CONFIG_I2S_DATA_IN_PIN 34 34 | 35 | #define Speak_I2S_NUMBER I2S_NUM_0 36 | #define MODE_MIC 0 37 | #define MODE_SPK 1 38 | #define I2S_DATA_LEN 60 39 | 40 | void setSpeaker(int sampleRate = 16000) 41 | { 42 | i2s_driver_uninstall(Speak_I2S_NUMBER); 43 | 44 | i2s_config_t i2s_config = { 45 | .mode = (i2s_mode_t)(I2S_MODE_MASTER | I2S_MODE_TX), 46 | .sample_rate = sampleRate, 47 | .bits_per_sample = I2S_BITS_PER_SAMPLE_16BIT, 48 | .channel_format = I2S_CHANNEL_FMT_ALL_RIGHT, 49 | .communication_format = M5TOOLS_I2S_COMM_FORMAT, 50 | .intr_alloc_flags = ESP_INTR_FLAG_LEVEL1, 51 | .dma_buf_count = 2, 52 | .dma_buf_len = I2S_DATA_LEN, 53 | .use_apll = false, 54 | .tx_desc_auto_clear = true, 55 | .fixed_mclk = 0 56 | }; 57 | 58 | auto res = i2s_driver_install(Speak_I2S_NUMBER, &i2s_config, 0, nullptr); 59 | ESP_LOGI("main", "i2s_driver_install:%d", res); 60 | 61 | i2s_pin_config_t tx_pin_config = { 62 | .bck_io_num = CONFIG_I2S_BCK_PIN, 63 | .ws_io_num = CONFIG_I2S_LRCK_PIN, 64 | .data_out_num = CONFIG_I2S_DATA_PIN, 65 | .data_in_num = CONFIG_I2S_DATA_IN_PIN, 66 | }; 67 | res = i2s_set_pin(Speak_I2S_NUMBER, &tx_pin_config); 68 | ESP_LOGI("main", "i2s_set_pin:%d", res); 69 | res = i2s_set_clk(Speak_I2S_NUMBER, sampleRate, I2S_BITS_PER_SAMPLE_16BIT, I2S_CHANNEL_MONO); 70 | ESP_LOGI("main", "i2s_set_clk:%d", res); 71 | res = i2s_zero_dma_buffer(Speak_I2S_NUMBER); 72 | ESP_LOGI("main", "i2s_zero_dma_buffer:%d", res); 73 | } 74 | 75 | struct sound_param_t 76 | { 77 | xTaskHandle handle = nullptr; 78 | const uint8_t* data = nullptr; 79 | size_t len = 0; 80 | size_t rate = 0; 81 | }; 82 | sound_param_t soundParam; 83 | 84 | static void IRAM_ATTR soundTask(void* sound_param) 85 | { 86 | auto param = (sound_param_t*)sound_param; 87 | param->rate = 16000; 88 | int prevSampleRate = 0; 89 | // I2S 90 | int16_t data[I2S_DATA_LEN]; 91 | for (;;) 92 | { 93 | sound_param_t p = *param; 94 | // play(param->data, param->len, param->rate); 95 | 96 | if (prevSampleRate != p.rate) 97 | { 98 | prevSampleRate = p.rate; 99 | setSpeaker(p.rate); 100 | M5.Power.Axp192.bitOn(0x94, 0x04); // speaker on 101 | } 102 | 103 | // Write Speaker 104 | size_t bytes_written = 0; 105 | 106 | int index = 0; 107 | 108 | // i2s_zero_dma_buffer(Speak_I2S_NUMBER); 109 | memset(data, 0, I2S_DATA_LEN << 1); 110 | for (int i = 0; i < 2; ++i) 111 | { 112 | i2s_write(Speak_I2S_NUMBER, data, I2S_DATA_LEN*2, &bytes_written, portMAX_DELAY); 113 | } 114 | for (int i = 0; i < p.len; i++) 115 | { 116 | int16_t val = p.data[i]; 117 | data[index] = (val - 128) * 64; 118 | index += 1; 119 | if (I2S_DATA_LEN <= index) 120 | { 121 | index = 0; 122 | i2s_write(Speak_I2S_NUMBER, data, I2S_DATA_LEN*2, &bytes_written, portMAX_DELAY); 123 | } 124 | } 125 | memset(&data[index], 0, (I2S_DATA_LEN - index) * 2); 126 | i2s_write(Speak_I2S_NUMBER, data, I2S_DATA_LEN * 2, &bytes_written, portMAX_DELAY); 127 | if (index <= I2S_DATA_LEN) 128 | { 129 | memset(data, 0, index * 2); 130 | } 131 | 132 | for (int i = 0; i < 4; ++i) 133 | { 134 | i2s_write(Speak_I2S_NUMBER, data, I2S_DATA_LEN*2, &bytes_written, portMAX_DELAY); 135 | } 136 | ulTaskNotifyTake( pdTRUE, portMAX_DELAY ); 137 | } 138 | } 139 | 140 | void clickSound(void) 141 | { 142 | // play(gWavClick, 112, 16000); 143 | //play(wav, 16538, 16000, 16); 144 | soundParam.data = gWav_Click; 145 | soundParam.len = 112; 146 | soundParam.rate = 16000; 147 | 148 | // soundParam.data = himehinaWav; 149 | // soundParam.len = 63667; 150 | // soundParam.rate = 16000; 151 | 152 | xTaskNotifyGive(soundParam.handle); 153 | } 154 | 155 | void errorSound(void) 156 | { 157 | soundParam.data = gWav_Error; 158 | soundParam.len = 3584; 159 | soundParam.rate = 16000; 160 | 161 | xTaskNotifyGive(soundParam.handle); 162 | } 163 | 164 | int updateTouch(void) 165 | { 166 | if (touchPoints) 167 | { 168 | memcpy(prev_tp, tp, sizeof(m5gfx::touch_point_t) * touchPoints); 169 | } 170 | prev_touchPoints = touchPoints; 171 | touchPoints = M5.Lcd.getTouch(tp, 2); 172 | justTouch = (prev_touchPoints == 0 && touchPoints != 0); 173 | if (touchPoints) 174 | { 175 | if (justTouch) 176 | { 177 | flickDiffX = 0; 178 | flickDiffY = 0; 179 | } 180 | else 181 | { 182 | flickDiffX += tp[0].x - prev_tp[0].x; 183 | flickDiffY += tp[0].y - prev_tp[0].y; 184 | } 185 | } 186 | 187 | return touchPoints; 188 | } 189 | 190 | bool contain(int x, int y, int w, int h) 191 | { 192 | return x <= tp->x && tp->x < (x + w) 193 | && y <= tp->y && tp->y < (y + h); 194 | } 195 | 196 | struct PageBase 197 | { 198 | virtual void setup(void) {} 199 | virtual void loop(void) {} 200 | virtual void end(void) {} 201 | }; 202 | 203 | -------------------------------------------------------------------------------- /src/src.ino: -------------------------------------------------------------------------------- 1 | 2 | #include "main.hpp" 3 | 4 | #include 5 | #include 6 | 7 | #include "PageDefault.hpp" 8 | #include "PageWiFi.hpp" 9 | #include "PageTOUCH.hpp" 10 | #include "PageI2C.hpp" 11 | #include "PageGPIO.hpp" 12 | #include "PageUART.hpp" 13 | #include "PageTF.hpp" 14 | #include "PageRTC.hpp" 15 | #include "PagePWR.hpp" 16 | 17 | extern const unsigned char gImage_blankBk[]; 18 | extern const unsigned char gImage_fun_unsel[]; 19 | extern const unsigned char gImage_fun_sel[]; 20 | extern const unsigned char gImage_sleepBk[]; 21 | extern const unsigned char gImage_core2Tools[]; 22 | extern const unsigned char gImage_toughTools[]; 23 | 24 | PageWiFi page0; 25 | PageTOUCH page1; 26 | PageI2C page2; 27 | PageGPIO page3; 28 | PageUART page4; 29 | PageTF page5; 30 | PageRTC page6; 31 | PagePWR page7; 32 | static constexpr uint32_t pageListMax = 8; 33 | PageBase* pageList[pageListMax] = { &page0, &page1, &page2, &page3, &page4, &page5, &page6, &page7 }; 34 | PageDefault pageDefault; 35 | PageBase* selectedPage; 36 | 37 | uint32_t prevSel, currentSel; 38 | 39 | int tlsc6x_tp_dect(void); // M5Tough TouchPanel updater 40 | void ft6336_fw_updater(void); // M5Core2 TouchPanel updater 41 | 42 | void drawBackground(void) 43 | { 44 | prevSel = -1; 45 | currentSel = -1; 46 | 47 | M5.Lcd.pushImage(0, 0, 320, 240, (m5gfx::rgb565_t*)gImage_blankBk); 48 | auto logo = (m5gfx::rgb565_t*)(M5.getBoard() == m5::board_t::board_M5StackCore2 49 | ? gImage_core2Tools 50 | : gImage_toughTools); 51 | M5.Lcd.pushImage(8, 0, 170, 26, logo); 52 | for (int i = 0; i < 8; i++) 53 | { 54 | M5.Lcd.pushImage(i * 40 + 1, 208, 38, 28, (m5gfx::rgb565_t*)gImage_fun_unsel + (i * 38 * 28)); 55 | } 56 | if (selectedPage) 57 | { 58 | selectedPage->end(); 59 | } 60 | selectedPage = &pageDefault; 61 | selectedPage->setup(); 62 | } 63 | 64 | void setup(void) 65 | { 66 | //bool LCDEnable, bool SDEnable, bool SerialEnable, bool I2CEnable, mbus_mode_t mode 67 | //M5.begin(true, true, true, false, kMBusModeOutput);// 68 | M5.begin();// 69 | 70 | if (M5.getBoard() == m5::board_t::board_M5Tough) 71 | { 72 | tlsc6x_tp_dect(); 73 | } 74 | else if (M5.getBoard() == m5::board_t::board_M5StackCore2) 75 | { 76 | ft6336_fw_updater(); 77 | } 78 | 79 | M5.Lcd.setFont(&fonts::Font2); 80 | M5.Lcd.setBaseColor(TFT_WHITE); 81 | M5.Lcd.setTextColor(TFT_BLACK, TFT_WHITE); 82 | 83 | xTaskCreatePinnedToCore(soundTask, "soundTask", 4096, &soundParam, 0, &soundParam.handle, 0); 84 | 85 | M5.Lcd.startWrite(); 86 | 87 | drawBackground(); 88 | } 89 | 90 | void loop(void) 91 | { 92 | /* 93 | for (int i = 0; i < 100; ++i) 94 | { 95 | Serial.printf("count:%d : ", i); 96 | delay(50); 97 | Serial.print("1 begin /"); 98 | Serial1.begin(115200, SERIAL_8N1, 33, 32); 99 | delay(50); 100 | Serial.print("2 begin /"); 101 | Serial2.begin(115200, SERIAL_8N1, 36, 26); 102 | delay(50); 103 | Serial.print("1 end /"); 104 | //Serial1.end(); 105 | delay(50); 106 | Serial.print("2 end /"); 107 | //Serial2.end(); 108 | Serial.print(" done \r\n"); 109 | } 110 | Serial.print("done"); 111 | //*/ 112 | delay(1); 113 | ++loopCount; 114 | updateTouch(); 115 | /* 116 | if (touchPoints) 117 | { 118 | M5.Lcd.setCursor(30, 30); 119 | M5.Lcd.printf("Convert X:%03d Y:%03d", tp[0].x, tp[0].y); 120 | M5.Lcd.fillRect(tp[0].x-2, tp[0].y-2, 5, 5, random(65536)); 121 | } 122 | //*/ 123 | 124 | if (justTouch) 125 | { 126 | if (tp[0].y > 200) 127 | { /// select function. 128 | uint32_t index = (tp[0].x / 40); 129 | if (prevSel != index && index < pageListMax) 130 | { 131 | currentSel = index; 132 | clickSound(); 133 | M5.Lcd.pushImage(currentSel * 40 + 1, 208, 38, 28, (m5gfx::rgb565_t*)gImage_fun_sel + (currentSel * 38 * 28)); 134 | if (prevSel < pageListMax) 135 | M5.Lcd.pushImage(prevSel * 40 + 1, 208, 38, 28, (m5gfx::rgb565_t*)gImage_fun_unsel + (prevSel * 38 * 28)); 136 | prevSel = currentSel; 137 | 138 | selectedPage->end(); 139 | selectedPage = pageList[currentSel]; 140 | M5.Lcd.fillRect(17, 32, 286, 172, TFT_WHITE); 141 | selectedPage->setup(); 142 | return; 143 | } 144 | } 145 | if ((tp[0].x - tp[0].y) > 240) 146 | { 147 | static constexpr int slide_back_color = 0xCE79; 148 | clickSound(); 149 | M5.Lcd.pushImage(0, 0, 320, 240, (m5gfx::rgb565_t*)gImage_sleepBk); 150 | auto logo = (m5gfx::rgb565_t*)(M5.getBoard() == m5::board_t::board_M5StackCore2 151 | ? gImage_core2Tools 152 | : gImage_toughTools); 153 | M5.Lcd.pushImage(75, 26, 170, 26, logo); 154 | 155 | M5Canvas _canvas_base, _canvas_bk, _canvas_slide; 156 | _canvas_slide.createSprite(56, 56); 157 | _canvas_bk.createSprite(28, 56); 158 | _canvas_bk.pushImage(-32, -80, 320, 240, (m5gfx::rgb565_t*)gImage_sleepBk); 159 | 160 | float affine[6] = { 0.25f, 0.0f, 0.0f, 0.0f, 0.25f, 0.0f}; 161 | 162 | /// make slider UI 163 | _canvas_base.setColorDepth(2); 164 | _canvas_base.createSprite(56*4, 56*4); 165 | _canvas_base.setPaletteColor(0, slide_back_color); 166 | _canvas_base.fillCircle(112, 112, 112, 1); 167 | _canvas_base.pushAffineWithAA(&_canvas_bk, affine, 0); 168 | _canvas_base.fillCircle(112, 112, 100, 3); 169 | _canvas_base.fillCircle(112, 112, 40, 1); 170 | _canvas_base.fillCircle(112, 112, 32, 3); 171 | _canvas_base.fillRect( 92, 112 - 40, 39, 24, 3); 172 | _canvas_base.fillRect(107, 112 - 50, 9, 45, 1); 173 | _canvas_base.pushAffineWithAA(&_canvas_slide, affine); 174 | _canvas_slide.fillArc(28, 28, 28, 29, 94, 266, slide_back_color); 175 | _canvas_base.deleteSprite(); 176 | _canvas_base.deletePalette(); 177 | _canvas_base.setColorDepth(16); 178 | _canvas_base.createSprite(256, 56); 179 | 180 | int slide_x = 0; 181 | int prev_x = -1; 182 | bool hold = false; 183 | for (;;) 184 | { 185 | if (prev_x != slide_x) 186 | { 187 | prev_x = slide_x; 188 | _canvas_base.pushImage(-32, -80, 320, 240, (m5gfx::rgb565_t*)gImage_sleepBk); 189 | _canvas_bk.pushSprite(&_canvas_base, 0, 0); 190 | _canvas_base.fillRect(28, 0, slide_x, 56, 0x555555u); 191 | _canvas_slide.pushSprite(&_canvas_base, slide_x, 0, slide_back_color); 192 | _canvas_base.pushSprite(&M5.Lcd, 32, 80); 193 | } 194 | if (!updateTouch()) 195 | { 196 | hold = false; 197 | } 198 | else 199 | if (justTouch) 200 | { 201 | if (tp[0].x > 110 && tp[0].x < 220 && tp[0].y > 200 && tp[0].y < 240) 202 | { 203 | clickSound(); 204 | drawBackground(); 205 | break; 206 | } 207 | if (tp[0].y > 80 && tp[0].y < 136 && tp[0].x > 32 + slide_x && tp[0].x < 32 + 56 + slide_x) 208 | { 209 | clickSound(); 210 | hold = true; 211 | } 212 | } 213 | if (hold) 214 | { 215 | slide_x = std::max(0, std::min(200, tp[0].x - 60)); 216 | } 217 | else if (slide_x == 200) 218 | { 219 | esp_sleep_enable_ext0_wakeup(GPIO_NUM_39, 0); // gpio39 == touch INT 220 | delay(100); 221 | M5.Lcd.fillScreen(TFT_BLACK); 222 | M5.Lcd.sleep(); 223 | M5.Lcd.waitDisplay(); 224 | esp_deep_sleep_start(); 225 | } 226 | else 227 | { 228 | slide_x = slide_x * 7 >> 3; 229 | } 230 | } 231 | } 232 | } 233 | selectedPage->loop(); 234 | } 235 | -------------------------------------------------------------------------------- /src/src/img/arrow.c: -------------------------------------------------------------------------------- 1 | const unsigned char gImage_arrow[2240] = { /* 0X00,0X10,0X1C,0X00,0X28,0X00,0X01,0X1B, */ 2 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 3 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 4 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 5 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 6 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 7 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 8 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 9 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 10 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 11 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 12 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 13 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0XF7,0XFF,0XF7,0XFF,0XF7, 14 | 0XFF,0XF7,0XFF,0XF7,0XFF,0XF7,0XFF,0XF7,0XFF,0XF7,0XFF,0XF7,0XFF,0XF7,0XFF,0XF7, 15 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 16 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7, 17 | 0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF, 18 | 0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XEF,0XFF,0XF7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 19 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 20 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XEF,0XDF,0XE7,0XDF,0XE7,0XDF,0XE7,0XDF,0XE7, 21 | 0XDF,0XE7,0XDF,0XE7,0XDF,0XE7,0XDF,0XE7,0XDF,0XE7,0XDF,0XE7,0XDF,0XE7,0XDF,0XE7, 22 | 0XFF,0XEF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 23 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XE7, 24 | 0XDF,0XDF,0XDF,0XDF,0XDF,0XDF,0XDF,0XDF,0XDF,0XDF,0XDF,0XDF,0XDF,0XDF,0XDF,0XDF, 25 | 0XDF,0XDF,0XDF,0XDF,0XDF,0XDF,0XDF,0XDF,0XDF,0XE7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 26 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 27 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XE7,0XDF,0XDF,0XDF,0XDF,0XDF,0XDF,0XDF,0XDF, 28 | 0XDF,0XDF,0XDF,0XDF,0XDF,0XDF,0XDF,0XDF,0XDF,0XDF,0XDF,0XDF,0XDF,0XDF,0XDF,0XDF, 29 | 0XDF,0XE7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 30 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XDF, 31 | 0XBF,0XD7,0XBF,0XD7,0XBF,0XD7,0XBF,0XD7,0XBF,0XD7,0XBF,0XD7,0XBF,0XD7,0XBF,0XD7, 32 | 0XBF,0XD7,0XBF,0XD7,0XBF,0XD7,0XBF,0XD7,0XDF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 33 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 34 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XDF,0XBF,0XCF,0XBF,0XCF,0XBF,0XCF,0XBF,0XCF, 35 | 0XBF,0XCF,0XBF,0XCF,0XBF,0XCF,0XBF,0XCF,0XBF,0XCF,0XBF,0XCF,0XBF,0XCF,0XBF,0XCF, 36 | 0XDF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 37 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBF,0XD7, 38 | 0X9F,0XC7,0X9F,0XC7,0X9F,0XC7,0X9F,0XC7,0X9F,0XC7,0X9F,0XC7,0X9F,0XC7,0X9F,0XC7, 39 | 0X9F,0XC7,0X9F,0XC7,0X9F,0XC7,0X9F,0XC7,0XBF,0XD7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 40 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 41 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBF,0XCF,0X9F,0XBF,0X9F,0XBF,0X9F,0XBF,0X9F,0XBF, 42 | 0X9F,0XBF,0X9F,0XBF,0X9F,0XBF,0X9F,0XBF,0X9F,0XBF,0X9F,0XBF,0X9F,0XBF,0X9F,0XBF, 43 | 0XBF,0XCF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 44 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBF,0XCF, 45 | 0X9F,0XB7,0X9F,0XB7,0X9F,0XB7,0X9F,0XB7,0X9F,0XB7,0X9F,0XB7,0X9F,0XB7,0X9F,0XB7, 46 | 0X9F,0XB7,0X9F,0XB7,0X9F,0XB7,0X9F,0XB7,0XBF,0XCF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 47 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 48 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X9F,0XC7,0X7F,0XAF,0X7F,0XAF,0X7F,0XAF,0X7F,0XAF, 49 | 0X7F,0XAF,0X7F,0XAF,0X7F,0XAF,0X7F,0XAF,0X7F,0XAF,0X7F,0XAF,0X7F,0XAF,0X7F,0XAF, 50 | 0X9F,0XC7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 51 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X9F,0XBF, 52 | 0X7F,0XA7,0X7F,0XA7,0X7F,0XA7,0X7F,0XA7,0X7F,0XA7,0X7F,0XA7,0X7F,0XA7,0X7F,0XA7, 53 | 0X7F,0XA7,0X7F,0XA7,0X7F,0XA7,0X7F,0XA7,0X9F,0XBF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 54 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 55 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X9F,0XB7,0X7F,0X9F,0X7F,0X9F,0X7F,0X9F,0X7F,0X9F, 56 | 0X7F,0X9F,0X7F,0X9F,0X7F,0X9F,0X7F,0X9F,0X7F,0X9F,0X7F,0X9F,0X7F,0X9F,0X7F,0X9F, 57 | 0X9F,0XB7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 58 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X9F,0XB7, 59 | 0X5F,0X9F,0X5F,0X9F,0X5F,0X9F,0X5F,0X9F,0X5F,0X9F,0X5F,0X9F,0X5F,0X9F,0X5F,0X9F, 60 | 0X5F,0X9F,0X5F,0X9F,0X5F,0X9F,0X5F,0X9F,0X9F,0XB7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 61 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 62 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X7F,0XAF,0X5F,0X97,0X5F,0X97,0X5F,0X97,0X5F,0X97, 63 | 0X5F,0X97,0X5F,0X97,0X5F,0X97,0X5F,0X97,0X5F,0X97,0X5F,0X97,0X5F,0X97,0X5F,0X97, 64 | 0X7F,0XAF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 65 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X7F,0XA7, 66 | 0X5F,0X8F,0X5F,0X8F,0X5F,0X8F,0X5F,0X8F,0X5F,0X8F,0X5F,0X8F,0X5F,0X8F,0X5F,0X8F, 67 | 0X5F,0X8F,0X5F,0X8F,0X5F,0X8F,0X5F,0X8F,0X7F,0XA7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 68 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 69 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X7F,0XA7,0X3F,0X87,0X3F,0X87,0X3F,0X87,0X3F,0X87, 70 | 0X3F,0X87,0X3F,0X87,0X3F,0X87,0X3F,0X87,0X3F,0X87,0X3F,0X87,0X3F,0X87,0X3F,0X87, 71 | 0X7F,0XA7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 72 | 0XDF,0XEF,0X5F,0X8F,0X5F,0X8F,0X5F,0X8F,0X5F,0X8F,0X5F,0X8F,0X5F,0X8F,0X3F,0X7F, 73 | 0X3F,0X7F,0X3F,0X7F,0X3F,0X7F,0X3F,0X7F,0X3F,0X7F,0X3F,0X7F,0X3F,0X7F,0X3F,0X7F, 74 | 0X3F,0X7F,0X3F,0X7F,0X3F,0X7F,0X3F,0X7F,0X3F,0X7F,0X5F,0X8F,0X5F,0X8F,0X5F,0X8F, 75 | 0X5F,0X8F,0X5F,0X8F,0X5F,0X8F,0XDF,0XEF,0XFF,0XFF,0X9F,0XC7,0X1F,0X77,0X1F,0X77, 76 | 0X1F,0X77,0X1F,0X77,0X1F,0X77,0X1F,0X77,0X1F,0X77,0X1F,0X77,0X1F,0X77,0X1F,0X77, 77 | 0X1F,0X77,0X1F,0X77,0X1F,0X77,0X1F,0X77,0X1F,0X77,0X1F,0X77,0X1F,0X77,0X1F,0X77, 78 | 0X1F,0X77,0X1F,0X77,0X1F,0X77,0X1F,0X77,0X1F,0X77,0X1F,0X77,0X9F,0XC7,0XFF,0XFF, 79 | 0XFF,0XFF,0XFF,0XFF,0X7F,0X9F,0X1F,0X6F,0X1F,0X6F,0X1F,0X6F,0X1F,0X6F,0X1F,0X6F, 80 | 0X1F,0X6F,0X1F,0X6F,0X1F,0X6F,0X1F,0X6F,0X1F,0X6F,0X1F,0X6F,0X1F,0X6F,0X1F,0X6F, 81 | 0X1F,0X6F,0X1F,0X6F,0X1F,0X6F,0X1F,0X6F,0X1F,0X6F,0X1F,0X6F,0X1F,0X6F,0X1F,0X6F, 82 | 0X1F,0X6F,0X7F,0X9F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X3F,0X7F, 83 | 0X1F,0X67,0X1F,0X67,0X1F,0X67,0X1F,0X67,0X1F,0X67,0X1F,0X67,0X1F,0X67,0X1F,0X67, 84 | 0X1F,0X67,0X1F,0X67,0X1F,0X67,0X1F,0X67,0X1F,0X67,0X1F,0X67,0X1F,0X67,0X1F,0X67, 85 | 0X1F,0X67,0X1F,0X67,0X1F,0X67,0X1F,0X67,0X3F,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 86 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XEF,0X1F,0X67,0XFF,0X5E,0XFF,0X5E,0XFF,0X5E, 87 | 0XFF,0X5E,0XFF,0X5E,0XFF,0X5E,0XFF,0X5E,0XFF,0X5E,0XFF,0X5E,0XFF,0X5E,0XFF,0X5E, 88 | 0XFF,0X5E,0XFF,0X5E,0XFF,0X5E,0XFF,0X5E,0XFF,0X5E,0XFF,0X5E,0XFF,0X5E,0X1F,0X67, 89 | 0XDF,0XEF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 90 | 0XBF,0XCF,0XFF,0X56,0XFF,0X56,0XFF,0X56,0XFF,0X56,0XFF,0X56,0XFF,0X56,0XFF,0X56, 91 | 0XFF,0X56,0XFF,0X56,0XFF,0X56,0XFF,0X56,0XFF,0X56,0XFF,0X56,0XFF,0X56,0XFF,0X56, 92 | 0XFF,0X56,0XFF,0X56,0XFF,0X56,0XBF,0XCF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 93 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X7F,0XA7,0XDF,0X4E,0XDF,0X4E, 94 | 0XDF,0X4E,0XDF,0X4E,0XDF,0X4E,0XDF,0X4E,0XDF,0X4E,0XDF,0X4E,0XDF,0X4E,0XDF,0X4E, 95 | 0XDF,0X4E,0XDF,0X4E,0XDF,0X4E,0XDF,0X4E,0XDF,0X4E,0XDF,0X4E,0X7F,0XA7,0XFF,0XFF, 96 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 97 | 0XFF,0XFF,0XFF,0XFF,0X3F,0X7F,0XDF,0X46,0XDF,0X46,0XDF,0X46,0XDF,0X46,0XDF,0X46, 98 | 0XDF,0X46,0XDF,0X46,0XDF,0X46,0XDF,0X46,0XDF,0X46,0XDF,0X46,0XDF,0X46,0XDF,0X46, 99 | 0XDF,0X46,0X3F,0X7F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 100 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF7,0XFF,0X56, 101 | 0XDF,0X3E,0XDF,0X3E,0XDF,0X3E,0XDF,0X3E,0XDF,0X3E,0XDF,0X3E,0XDF,0X3E,0XDF,0X3E, 102 | 0XDF,0X3E,0XDF,0X3E,0XDF,0X3E,0XDF,0X3E,0XFF,0X56,0XFF,0XF7,0XFF,0XFF,0XFF,0XFF, 103 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 104 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XDF,0XDF,0X3E,0XBF,0X36,0XBF,0X36,0XBF,0X36, 105 | 0XBF,0X36,0XBF,0X36,0XBF,0X36,0XBF,0X36,0XBF,0X36,0XBF,0X36,0XBF,0X36,0XDF,0X3E, 106 | 0XDF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 107 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 108 | 0X9F,0XB7,0XBF,0X2E,0XBF,0X2E,0XBF,0X2E,0XBF,0X2E,0XBF,0X2E,0XBF,0X2E,0XBF,0X2E, 109 | 0XBF,0X2E,0XBF,0X2E,0XBF,0X2E,0X9F,0XB7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 110 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 111 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X3F,0X7F,0XBF,0X26,0XBF,0X26, 112 | 0XBF,0X26,0XBF,0X26,0XBF,0X26,0XBF,0X26,0XBF,0X26,0XBF,0X26,0X3F,0X7F,0XFF,0XFF, 113 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 114 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 115 | 0XFF,0XFF,0XFF,0XFF,0XFF,0X4E,0X9F,0X1E,0X9F,0X1E,0X9F,0X1E,0X9F,0X1E,0X9F,0X1E, 116 | 0X9F,0X1E,0XFF,0X4E,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 117 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 118 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XE7,0XBF,0X2E, 119 | 0X9F,0X16,0X9F,0X16,0X9F,0X16,0X9F,0X16,0XBF,0X2E,0XDF,0XE7,0XFF,0XFF,0XFF,0XFF, 120 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 121 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 122 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X9F,0XC7,0X7F,0X0E,0X7F,0X0E,0X7F,0X0E,0X7F,0X0E, 123 | 0X9F,0XC7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 124 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 125 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 126 | 0X5F,0X8F,0X7F,0X06,0X7F,0X06,0X5F,0X8F,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 127 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 128 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 129 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X56,0XFF,0X56,0XFF,0XFF, 130 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 131 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 132 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 133 | 0XFF,0XFF,0XFF,0XF7,0XFF,0XF7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 134 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 135 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 136 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 137 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 138 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 139 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 140 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 141 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 142 | }; 143 | -------------------------------------------------------------------------------- /src/src/img/batteryDirection.c: -------------------------------------------------------------------------------- 1 | const unsigned char gImage_batteryDirection[1728] = { /* 0X00,0X10,0X09,0X00,0X60,0X00,0X01,0X1B, */ 2 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 3 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X45,0X29,0XFF,0XFF,0XFF,0XFF, 4 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X9A,0XD6,0XC3,0X18,0X9A,0XD6, 5 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X0C,0X63,0XC3,0X18, 6 | 0X0C,0X63,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X9A,0XD6,0XC3,0X18, 7 | 0XC3,0X18,0XC3,0X18,0X9A,0XD6,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X59,0XCE, 8 | 0XD3,0X9C,0XC3,0X18,0XD3,0X9C,0X59,0XCE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 9 | 0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 10 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 11 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 12 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF, 13 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF, 14 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18, 15 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 16 | 0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 17 | 0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 18 | 0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 19 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 20 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 21 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF, 22 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF, 23 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18, 24 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 25 | 0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 26 | 0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 27 | 0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 28 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 29 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 30 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF, 31 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF, 32 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18, 33 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 34 | 0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 35 | 0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 36 | 0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 37 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 38 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 39 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF, 40 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF, 41 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18, 42 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 43 | 0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 44 | 0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 45 | 0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 46 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 47 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 48 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF, 49 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF, 50 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18, 51 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 52 | 0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 53 | 0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 54 | 0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 55 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X55,0XAD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 56 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X55,0XAD,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 57 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF, 58 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF, 59 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18, 60 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 61 | 0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 62 | 0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 63 | 0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 64 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 65 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 66 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF, 67 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF, 68 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18, 69 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 70 | 0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 71 | 0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 72 | 0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 73 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 74 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 75 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF, 76 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF, 77 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18, 78 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 79 | 0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 80 | 0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 81 | 0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 82 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 83 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 84 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF, 85 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF, 86 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18, 87 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 88 | 0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 89 | 0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 90 | 0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 91 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 92 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 93 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF, 94 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF, 95 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18, 96 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 97 | 0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 98 | 0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 99 | 0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 100 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 101 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 102 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC3,0X18,0XFF,0XFF,0XFF,0XFF, 103 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X59,0XCE,0XD3,0X9C,0XC3,0X18,0XD3,0X9C, 104 | 0X59,0XCE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X9A,0XD6,0XC3,0X18,0XC3,0X18, 105 | 0XC3,0X18,0X9A,0XD6,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X0C,0X63, 106 | 0XC3,0X18,0X0C,0X63,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 107 | 0X9A,0XD6,0XC3,0X18,0X9A,0XD6,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 108 | 0XFF,0XFF,0XFF,0XFF,0X45,0X29,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 109 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 110 | }; 111 | -------------------------------------------------------------------------------- /src/src/img/pwrBattery.c: -------------------------------------------------------------------------------- 1 | const unsigned char gImage_pwrBattery[3128] = { /* 0X00,0X10,0X2E,0X00,0X22,0X00,0X01,0X1B, */ 2 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 3 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 4 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 5 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 6 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 7 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0XE4, 8 | 0XC1,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 9 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 10 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 11 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 12 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X02,0XD2,0X16,0XF6,0XFF,0XFF,0XFF,0XFF, 13 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC1,0XC9,0X80,0XC9,0X80,0XC9, 14 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 15 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 16 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 17 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 18 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X28,0XDB,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 19 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 20 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 21 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 22 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 23 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 24 | 0X80,0XC9,0X07,0XDB,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 25 | 0XFF,0XFF,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 26 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 27 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 28 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 29 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X07,0XDB, 30 | 0XFF,0XFF,0XFF,0XFF,0XF0,0XE4,0XF0,0XE4,0XF0,0XE4,0XFF,0XFF,0XFF,0XFF,0X80,0XC9, 31 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 32 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 33 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 34 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 35 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X07,0XDB,0XFF,0XFF,0XDF,0XFF, 36 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0XFF,0XFF,0XFF,0XFF,0X80,0XC9,0X80,0XC9,0X80,0XC9, 37 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 38 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 39 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 40 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 41 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X07,0XDB,0XFF,0XFF,0XDF,0XFF,0X80,0XC9,0X80,0XC9, 42 | 0X80,0XC9,0XFF,0XFF,0XFF,0XFF,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 43 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 44 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 45 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 46 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 47 | 0X80,0XC9,0X07,0XDB,0XFF,0XFF,0XDF,0XFF,0X80,0XC9,0X80,0XC9,0X80,0XC9,0XFF,0XFF, 48 | 0XFF,0XFF,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 49 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 50 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 51 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 52 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X07,0XDB, 53 | 0XFF,0XFF,0XDF,0XFF,0X80,0XC9,0X80,0XC9,0X80,0XC9,0XFF,0XFF,0XFF,0XFF,0X80,0XC9, 54 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 55 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 56 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 57 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 58 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X07,0XDB,0XFF,0XFF,0XDF,0XFF, 59 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0XFF,0XFF,0XFF,0XFF,0X80,0XC9,0X80,0XC9,0X80,0XC9, 60 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 61 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 62 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 63 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 64 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X07,0XDB,0XFF,0XFF,0XDF,0XFF,0X80,0XC9,0X80,0XC9, 65 | 0X80,0XC9,0XFF,0XFF,0XFF,0XFF,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 66 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 67 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 68 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 69 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 70 | 0X80,0XC9,0X07,0XDB,0XFF,0XFF,0XDF,0XFF,0X80,0XC9,0X80,0XC9,0X80,0XC9,0XFF,0XFF, 71 | 0XFF,0XFF,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 72 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 73 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 74 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 75 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X07,0XDB, 76 | 0XFF,0XFF,0XFF,0XFF,0XF0,0XE4,0XF0,0XE4,0XF0,0XE4,0XFF,0XFF,0XFF,0XFF,0X80,0XC9, 77 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 78 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 79 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 80 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 81 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X07,0XDB,0XFF,0XFF,0XFF,0XFF, 82 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XC1,0XC9,0X80,0XC9,0X80,0XC9, 83 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 84 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 85 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 86 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 87 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X28,0XDB,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 88 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF0,0XE4,0XC1,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 89 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 90 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 91 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 92 | 0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9,0X80,0XC9, 93 | 0X02,0XD2,0X16,0XF6,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 94 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 95 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 96 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 97 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 98 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 99 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 100 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 101 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 102 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 103 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 104 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 105 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X3C,0XE7,0X79,0XCE,0X79,0XCE, 106 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 107 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 108 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 109 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 110 | 0X79,0XCE,0X79,0XCE,0X9A,0XD6,0X9E,0XF7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 111 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 112 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 113 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 114 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 115 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 116 | 0X79,0XCE,0XDB,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 117 | 0XFF,0XFF,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 118 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 119 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 120 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 121 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0XDB,0XDE, 122 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X79,0XCE, 123 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 124 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 125 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 126 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 127 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0XDB,0XDE,0XFF,0XFF,0XFF,0XFF, 128 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0XFF,0XFF,0XFF,0XFF,0X79,0XCE,0X79,0XCE,0X79,0XCE, 129 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 130 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 131 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 132 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 133 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0XDB,0XDE,0XFF,0XFF,0XFF,0XFF,0X79,0XCE,0X79,0XCE, 134 | 0X79,0XCE,0XFF,0XFF,0XFF,0XFF,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 135 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 136 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 137 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 138 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 139 | 0X79,0XCE,0XDB,0XDE,0XFF,0XFF,0XFF,0XFF,0X79,0XCE,0X79,0XCE,0X79,0XCE,0XFF,0XFF, 140 | 0XFF,0XFF,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 141 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 142 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 143 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 144 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0XDB,0XDE, 145 | 0XFF,0XFF,0XFF,0XFF,0X79,0XCE,0X79,0XCE,0X79,0XCE,0XFF,0XFF,0XFF,0XFF,0X79,0XCE, 146 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 147 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 148 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 149 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 150 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0XDB,0XDE,0XFF,0XFF,0XFF,0XFF, 151 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0XFF,0XFF,0XFF,0XFF,0X79,0XCE,0X79,0XCE,0X79,0XCE, 152 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 153 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 154 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 155 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 156 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0XDB,0XDE,0XFF,0XFF,0XFF,0XFF,0X79,0XCE,0X79,0XCE, 157 | 0X79,0XCE,0XFF,0XFF,0XFF,0XFF,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 158 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 159 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 160 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 161 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 162 | 0X79,0XCE,0XDB,0XDE,0XFF,0XFF,0XFF,0XFF,0X79,0XCE,0X79,0XCE,0X79,0XCE,0XFF,0XFF, 163 | 0XFF,0XFF,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 164 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 165 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 166 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 167 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0XDB,0XDE, 168 | 0XFF,0XFF,0XFF,0XFF,0X79,0XCE,0X79,0XCE,0X79,0XCE,0XFF,0XFF,0XFF,0XFF,0X79,0XCE, 169 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 170 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 171 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 172 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 173 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0XDB,0XDE,0XFF,0XFF,0XFF,0XFF, 174 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0XFF,0XFF,0XFF,0XFF,0X79,0XCE,0X79,0XCE,0X79,0XCE, 175 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 176 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 177 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 178 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 179 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0XDB,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 180 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 181 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 182 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 183 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 184 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 185 | 0X79,0XCE,0XDB,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 186 | 0XFF,0XFF,0X3C,0XE7,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 187 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 188 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 189 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE, 190 | 0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X79,0XCE,0X9A,0XD6,0X9E,0XF7, 191 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 192 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 193 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 194 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 195 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 196 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 197 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,}; 198 | -------------------------------------------------------------------------------- /src/src/img/pwrCore2Switch.c: -------------------------------------------------------------------------------- 1 | const unsigned char gImage_pwrCore2Switch[3520] = { /* 0X00,0X10,0X2C,0X00,0X28,0X00,0X01,0X1B, */ 2 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 3 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 4 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 5 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 6 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 7 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 8 | 0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0X9E,0XF7,0X5D,0XEF,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 9 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 10 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 11 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X5D,0XEF, 12 | 0X9E,0XF7,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 13 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X7D,0XEF,0X3C,0XE7,0X3C,0XE7, 14 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 15 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 16 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 17 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X7D,0XEF,0XFF,0XFF, 18 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF, 19 | 0X5D,0XEF,0X3C,0XE7,0X9B,0XEE,0X74,0XF3,0X2F,0XF9,0X2D,0XF8,0X2D,0XF8,0X2F,0XF9, 20 | 0X74,0XF3,0X9B,0XEE,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 21 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 22 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 23 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X5D,0XEF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 24 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X5D,0XEF,0X3C,0XE7,0XB7,0XEC,0X6D,0XF8,0X0C,0XF8, 25 | 0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X6D,0XF8,0XB7,0XEC,0X3C,0XE7, 26 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X45,0X29,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 27 | 0X3C,0XE7,0X3C,0XE7,0X59,0XCE,0X45,0X29,0X28,0X42,0XC7,0X39,0XF3,0X9C,0X3C,0XE7, 28 | 0X3C,0XE7,0X00,0X00,0X28,0X42,0X28,0X42,0XC7,0X39,0X59,0XCE,0X3C,0XE7,0X3C,0XE7, 29 | 0X5D,0XEF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X7D,0XEF,0X3C,0XE7, 30 | 0XB7,0XEC,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8, 31 | 0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0XB7,0XEC,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 32 | 0X00,0X00,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X45,0X29,0X3C,0XE7, 33 | 0X3C,0XE7,0X3C,0XE7,0X75,0XAD,0X3C,0XE7,0X3C,0XE7,0X00,0X00,0X3C,0XE7,0X3C,0XE7, 34 | 0X3C,0XE7,0XC7,0X39,0XDB,0XDE,0X3C,0XE7,0X3C,0XE7,0X7D,0XEF,0XFF,0XFF,0XFF,0XFF, 35 | 0XFF,0XFF,0XDF,0XFF,0X3C,0XE7,0X7B,0XEE,0X4D,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8, 36 | 0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X4D,0XF8, 37 | 0X7B,0XEE,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X00,0X00,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 38 | 0X3C,0XE7,0XD7,0XBD,0X8E,0X73,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 39 | 0X3C,0XE7,0X00,0X00,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0XF3,0X9C,0X10,0X84,0X3C,0XE7, 40 | 0X3C,0XE7,0X3C,0XE7,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0X9E,0XF7,0X3C,0XE7,0X74,0XF3, 41 | 0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8, 42 | 0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X74,0XF3,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 43 | 0X00,0X00,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0XD7,0XBD,0X10,0X84,0X3C,0XE7, 44 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X00,0X00,0X3C,0XE7,0X3C,0XE7, 45 | 0X3C,0XE7,0XD7,0XBD,0X10,0X84,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X9E,0XF7,0XFF,0XFF, 46 | 0XFF,0XFF,0X5D,0XEF,0X3C,0XE7,0X4F,0XF9,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8, 47 | 0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8, 48 | 0X4F,0XF9,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X00,0X00,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 49 | 0X3C,0XE7,0XD7,0XBD,0X10,0X84,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 50 | 0X3C,0XE7,0X00,0X00,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0XD7,0XBD,0X10,0X84,0X3C,0XE7, 51 | 0X3C,0XE7,0X3C,0XE7,0X5D,0XEF,0XFF,0XFF,0XFF,0XFF,0X3C,0XE7,0X3C,0XE7,0X2D,0XF8, 52 | 0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8, 53 | 0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X2D,0XF8,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 54 | 0X00,0X00,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0XD7,0XBD,0X10,0X84,0X3C,0XE7, 55 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X00,0X00,0X3C,0XE7,0X3C,0XE7, 56 | 0X3C,0XE7,0XD7,0XBD,0X10,0X84,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0XFF,0XFF, 57 | 0XFF,0XFF,0X3C,0XE7,0X3C,0XE7,0X2D,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8, 58 | 0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8, 59 | 0X2D,0XF8,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X00,0X00,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 60 | 0X3C,0XE7,0XD7,0XBD,0X10,0X84,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 61 | 0X3C,0XE7,0X00,0X00,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0XD7,0XBD,0X10,0X84,0X3C,0XE7, 62 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0XFF,0XFF,0XFF,0XFF,0X5D,0XEF,0X3C,0XE7,0X4F,0XF9, 63 | 0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8, 64 | 0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X4F,0XF9,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 65 | 0X00,0X00,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0XD7,0XBD,0X8E,0X73,0X3C,0XE7, 66 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X00,0X00,0X3C,0XE7,0X3C,0XE7, 67 | 0X3C,0XE7,0XF3,0X9C,0X71,0X8C,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X5D,0XEF,0XFF,0XFF, 68 | 0XFF,0XFF,0X9E,0XF7,0X3C,0XE7,0X74,0XF3,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8, 69 | 0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8, 70 | 0X74,0XF3,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X00,0X00,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 71 | 0X3C,0XE7,0X3C,0XE7,0X45,0X29,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X75,0XAD,0X3C,0XE7, 72 | 0X3C,0XE7,0X00,0X00,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0XC7,0X39,0XDB,0XDE,0X3C,0XE7, 73 | 0X3C,0XE7,0X3C,0XE7,0X9E,0XF7,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0X3C,0XE7,0X7B,0XEE, 74 | 0X4D,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8, 75 | 0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X4D,0XF8,0X7B,0XEE,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 76 | 0X00,0X00,0X28,0X42,0X28,0X42,0X28,0X42,0X71,0X8C,0X3C,0XE7,0X59,0XCE,0X45,0X29, 77 | 0X28,0X42,0XC7,0X39,0XF3,0X9C,0X3C,0XE7,0X3C,0XE7,0X00,0X00,0X28,0X42,0X28,0X42, 78 | 0X28,0X42,0X59,0XCE,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0XDF,0XFF,0XFF,0XFF, 79 | 0XFF,0XFF,0XFF,0XFF,0X7D,0XEF,0X3C,0XE7,0XB7,0XEC,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8, 80 | 0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0XB7,0XEC, 81 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 82 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 83 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 84 | 0X3C,0XE7,0X7D,0XEF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X5D,0XEF, 85 | 0X3C,0XE7,0XB7,0XEC,0X6D,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8,0X0C,0XF8, 86 | 0X0C,0XF8,0X6D,0XF8,0XB7,0XEC,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 87 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 88 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 89 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X5D,0XEF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 90 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0X5D,0XEF,0X3C,0XE7,0X9B,0XEE,0X74,0XF3, 91 | 0X2F,0XF9,0X2D,0XF8,0X2D,0XF8,0X2F,0XF9,0X74,0XF3,0X9B,0XEE,0X3C,0XE7,0X3C,0XE7, 92 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 93 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 94 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X5D,0XEF, 95 | 0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 96 | 0XFF,0XFF,0X7D,0XEF,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 97 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 98 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 99 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 100 | 0X3C,0XE7,0X3C,0XE7,0X7D,0XEF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 101 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0X9E,0XF7, 102 | 0X5D,0XEF,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 103 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 104 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 105 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X5D,0XEF,0X9E,0XF7,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF, 106 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 107 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 108 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 109 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 110 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 111 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 112 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 113 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 114 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 115 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 116 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 117 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 118 | 0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0X9E,0XF7,0X5D,0XEF,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 119 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 120 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 121 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X5D,0XEF, 122 | 0X9E,0XF7,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 123 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X7D,0XEF,0X3C,0XE7,0X3C,0XE7, 124 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 125 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 126 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 127 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X7D,0XEF,0XFF,0XFF, 128 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF, 129 | 0X5D,0XEF,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 130 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 131 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 132 | 0X3C,0XE7,0X3C,0XE7,0X3D,0XD7,0XDE,0X6E,0X9F,0X26,0X7F,0X06,0X7F,0X06,0X9F,0X26, 133 | 0XDE,0X6E,0X3D,0XD7,0X3C,0XE7,0X5D,0XEF,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 134 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X5D,0XEF,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 135 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 136 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 137 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0XFD,0X96,0X7F,0X0E,0X7F,0X06, 138 | 0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X0E,0XFD,0X96,0X3C,0XE7, 139 | 0X5D,0XEF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X7D,0XEF,0X3C,0XE7, 140 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 141 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 142 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 143 | 0XFD,0X96,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06, 144 | 0X7F,0X06,0X7F,0X06,0X7F,0X06,0XFD,0X96,0X3C,0XE7,0X7D,0XEF,0XFF,0XFF,0XFF,0XFF, 145 | 0XFF,0XFF,0XDF,0XFF,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 146 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 147 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 148 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3D,0XCF,0X7F,0X0E,0X7F,0X06,0X7F,0X06,0X7F,0X06, 149 | 0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X0E, 150 | 0X3D,0XCF,0X3C,0XE7,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0X9E,0XF7,0X3C,0XE7,0X3C,0XE7, 151 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 152 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 153 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0XDE,0X6E, 154 | 0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06, 155 | 0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0XDE,0X6E,0X3C,0XE7,0X9E,0XF7,0XFF,0XFF, 156 | 0XFF,0XFF,0X5D,0XEF,0X3C,0XE7,0X71,0X8C,0XF3,0X9C,0X3C,0XE7,0X3C,0XE7,0X28,0X42, 157 | 0X3C,0XE7,0X59,0XCE,0X8E,0X73,0X10,0X84,0X71,0X8C,0XF3,0X9C,0X2C,0X63,0X2C,0X63, 158 | 0X75,0XAD,0X59,0XCE,0X8E,0X73,0X10,0X84,0X71,0X8C,0X71,0X8C,0X2C,0X63,0X10,0X84, 159 | 0X2C,0X63,0X3C,0XE7,0X3C,0XE7,0X9F,0X2E,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06, 160 | 0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06, 161 | 0X9F,0X2E,0X3C,0XE7,0X5D,0XEF,0XFF,0XFF,0XFF,0XFF,0X3C,0XE7,0X3C,0XE7,0X10,0X84, 162 | 0X28,0X42,0X3C,0XE7,0XD7,0XBD,0XC7,0X39,0X3C,0XE7,0X10,0X84,0X3C,0XE7,0X3C,0XE7, 163 | 0X10,0X84,0X3C,0XE7,0XD7,0XBD,0XD7,0XBD,0X3C,0XE7,0X10,0X84,0X3C,0XE7,0X3C,0XE7, 164 | 0X10,0X84,0X10,0X84,0XD7,0XBD,0X3C,0XE7,0X10,0X84,0X3C,0XE7,0X3C,0XE7,0X7F,0X06, 165 | 0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06, 166 | 0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X3C,0XE7,0X3C,0XE7,0XFF,0XFF, 167 | 0XFF,0XFF,0X3C,0XE7,0X3C,0XE7,0X10,0X84,0XF3,0X9C,0X10,0X84,0X10,0X84,0X10,0X84, 168 | 0X3C,0XE7,0X10,0X84,0X3C,0XE7,0X3C,0XE7,0X10,0X84,0X3C,0XE7,0XD7,0XBD,0XD7,0XBD, 169 | 0X3C,0XE7,0X10,0X84,0X3C,0XE7,0X3C,0XE7,0X10,0X84,0X10,0X84,0X2C,0X63,0XAA,0X52, 170 | 0XF3,0X9C,0X3C,0XE7,0X3C,0XE7,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06, 171 | 0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06, 172 | 0X7F,0X06,0X3C,0XE7,0X3C,0XE7,0XFF,0XFF,0XFF,0XFF,0X5D,0XEF,0X3C,0XE7,0X10,0X84, 173 | 0XD7,0XBD,0X8E,0X73,0XD7,0XBD,0X10,0X84,0X3C,0XE7,0X10,0X84,0X3C,0XE7,0X3C,0XE7, 174 | 0X10,0X84,0X3C,0XE7,0XD7,0XBD,0XD7,0XBD,0X3C,0XE7,0X10,0X84,0X3C,0XE7,0X3C,0XE7, 175 | 0X10,0X84,0X10,0X84,0XD7,0XBD,0XD7,0XBD,0X75,0XAD,0X3C,0XE7,0X3C,0XE7,0X9F,0X2E, 176 | 0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06, 177 | 0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X9F,0X2E,0X3C,0XE7,0X5D,0XEF,0XFF,0XFF, 178 | 0XFF,0XFF,0X9E,0XF7,0X3C,0XE7,0X10,0X84,0X59,0XCE,0X3C,0XE7,0X3C,0XE7,0X10,0X84, 179 | 0X3C,0XE7,0X59,0XCE,0X8E,0X73,0X8E,0X73,0X71,0X8C,0X3C,0XE7,0XD7,0XBD,0XD7,0XBD, 180 | 0X3C,0XE7,0X59,0XCE,0X8E,0X73,0X8E,0X73,0X71,0X8C,0X71,0X8C,0X59,0XCE,0X3C,0XE7, 181 | 0X10,0X84,0X3C,0XE7,0X3C,0XE7,0XDE,0X6E,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06, 182 | 0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06, 183 | 0XDE,0X6E,0X3C,0XE7,0X9E,0XF7,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0X3C,0XE7,0X3C,0XE7, 184 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 185 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 186 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3D,0XCF, 187 | 0X7F,0X0E,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06, 188 | 0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X0E,0X3D,0XCF,0X3C,0XE7,0XDF,0XFF,0XFF,0XFF, 189 | 0XFF,0XFF,0XFF,0XFF,0X7D,0XEF,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 190 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 191 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 192 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0XFD,0X96,0X7F,0X06,0X7F,0X06,0X7F,0X06, 193 | 0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0XFD,0X96, 194 | 0X3C,0XE7,0X7D,0XEF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X5D,0XEF, 195 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 196 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 197 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 198 | 0X3C,0XE7,0XFD,0X96,0X7F,0X0E,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06,0X7F,0X06, 199 | 0X7F,0X06,0X7F,0X0E,0XFD,0X96,0X3C,0XE7,0X5D,0XEF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 200 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0X5D,0XEF,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 201 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 202 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 203 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3D,0XD7,0XDE,0X6E, 204 | 0X9F,0X26,0X7F,0X06,0X7F,0X06,0X9F,0X26,0XDE,0X6E,0X3D,0XD7,0X3C,0XE7,0X5D,0XEF, 205 | 0XDF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 206 | 0XFF,0XFF,0X7D,0XEF,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 207 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 208 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 209 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 210 | 0X3C,0XE7,0X3C,0XE7,0X7D,0XEF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 211 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0X9E,0XF7, 212 | 0X5D,0XEF,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 213 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 214 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X3C,0XE7, 215 | 0X3C,0XE7,0X3C,0XE7,0X3C,0XE7,0X5D,0XEF,0X9E,0XF7,0XDF,0XFF,0XFF,0XFF,0XFF,0XFF, 216 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 217 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 218 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 219 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 220 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 221 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 222 | }; 223 | -------------------------------------------------------------------------------- /src/src/img/pwrLcdHolder.c: -------------------------------------------------------------------------------- 1 | const unsigned char gImage_pwrLcdHolder[800] = { /* 0X00,0X10,0X14,0X00,0X14,0X00,0X01,0X1B, */ 2 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X96,0XB5, 3 | 0X96,0XB5,0X96,0XB5,0X96,0XB5,0X96,0XB5,0X96,0XB5,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 4 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 5 | 0XFF,0XFF,0XFF,0XFF,0XB8,0XFE,0X0C,0XE4,0X88,0XF3,0X46,0XFB,0X46,0XFB,0X88,0XF3, 6 | 0X0C,0XE4,0XB8,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 7 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X3B,0XFF,0X4C,0XFC,0X26,0XFB,0X26,0XFB, 8 | 0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X4C,0XFC,0X3B,0XFF, 9 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XD9,0XFE, 10 | 0X67,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB, 11 | 0X26,0XFB,0X26,0XFB,0X26,0XFB,0X67,0XFB,0XD9,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 12 | 0XFF,0XFF,0XFF,0XFF,0X3B,0XFF,0X67,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB, 13 | 0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB, 14 | 0X67,0XFB,0X3B,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X4C,0XFC,0X26,0XFB, 15 | 0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB, 16 | 0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X4C,0XFC,0XFF,0XFF,0XFF,0XFF, 17 | 0XFF,0XFF,0XB8,0XFE,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB, 18 | 0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB, 19 | 0X26,0XFB,0X26,0XFB,0XB8,0XFE,0XFF,0XFF,0XFF,0XFF,0XEF,0XFC,0X26,0XFB,0X26,0XFB, 20 | 0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB, 21 | 0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0XEF,0XFC,0XFF,0XFF, 22 | 0XFF,0XFF,0XC9,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB, 23 | 0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB, 24 | 0X26,0XFB,0X26,0XFB,0XC9,0XFB,0XFF,0XFF,0XFF,0XFF,0X47,0XFB,0X26,0XFB,0X26,0XFB, 25 | 0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB, 26 | 0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X47,0XFB,0XFF,0XFF, 27 | 0XFF,0XFF,0X47,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB, 28 | 0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB, 29 | 0X26,0XFB,0X26,0XFB,0X47,0XFB,0XFF,0XFF,0XFF,0XFF,0XC9,0XFB,0X26,0XFB,0X26,0XFB, 30 | 0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB, 31 | 0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0XC9,0XFB,0XFF,0XFF, 32 | 0XFF,0XFF,0XEF,0XFC,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB, 33 | 0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB, 34 | 0X26,0XFB,0X26,0XFB,0XEF,0XFC,0XFF,0XFF,0XFF,0XFF,0XB8,0XFE,0X26,0XFB,0X26,0XFB, 35 | 0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB, 36 | 0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0XB8,0XFE,0XFF,0XFF, 37 | 0XFF,0XFF,0XFF,0XFF,0X4C,0XFC,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB, 38 | 0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB, 39 | 0X26,0XFB,0X4C,0XFC,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X3B,0XFF,0X67,0XFB, 40 | 0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB, 41 | 0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X67,0XFB,0X3B,0XFF,0XFF,0XFF,0XFF,0XFF, 42 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XD9,0XFE,0X67,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB, 43 | 0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X67,0XFB, 44 | 0XD9,0XFE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 45 | 0X3B,0XFF,0X4C,0XFC,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB,0X26,0XFB, 46 | 0X26,0XFB,0X26,0XFB,0X4C,0XFC,0X3B,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 47 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XB8,0XFE,0X0C,0XE4, 48 | 0X88,0XF3,0X46,0XFB,0X46,0XFB,0X88,0XF3,0X0C,0XE4,0XB8,0XFE,0XFF,0XFF,0XFF,0XFF, 49 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 50 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X96,0XB5,0X96,0XB5,0X96,0XB5,0X96,0XB5,0X96,0XB5, 51 | 0X96,0XB5,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 52 | }; 53 | -------------------------------------------------------------------------------- /src/src/img/pwrNumber.c: -------------------------------------------------------------------------------- 1 | const unsigned char gImage_pwrNumber[2496] = { /* 0X00,0X10,0X08,0X00,0X9C,0X00,0X01,0X1B, */ 2 | 0XFF,0XFF,0XFB,0XDE,0XE7,0X39,0X00,0X00,0X65,0X29,0XFB,0XDE,0XFF,0XFF,0XFF,0XFF, 3 | 0XFF,0XFF,0X65,0X29,0XFB,0XDE,0XFF,0XFF,0XFB,0XDE,0X00,0X00,0XFF,0XFF,0XFF,0XFF, 4 | 0XFB,0XDE,0X69,0X4A,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X69,0X4A,0X79,0XCE,0XFF,0XFF, 5 | 0X79,0XCE,0X69,0X4A,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X69,0X4A,0X79,0XCE,0XFF,0XFF, 6 | 0X79,0XCE,0X69,0X4A,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X69,0X4A,0X79,0XCE,0XFF,0XFF, 7 | 0X79,0XCE,0X69,0X4A,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X69,0X4A,0X79,0XCE,0XFF,0XFF, 8 | 0X79,0XCE,0X69,0X4A,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X69,0X4A,0X79,0XCE,0XFF,0XFF, 9 | 0X79,0XCE,0X69,0X4A,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X69,0X4A,0X79,0XCE,0XFF,0XFF, 10 | 0X79,0XCE,0X69,0X4A,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X69,0X4A,0X79,0XCE,0XFF,0XFF, 11 | 0XFF,0XFF,0X65,0X29,0XFB,0XDE,0XFF,0XFF,0XFB,0XDE,0X65,0X29,0XFF,0XFF,0XFF,0XFF, 12 | 0XFF,0XFF,0XFB,0XDE,0XE7,0X39,0X00,0X00,0X65,0X29,0XFB,0XDE,0XFF,0XFF,0XFF,0XFF, 13 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 14 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X71,0X8C,0X65,0X29,0XFF,0XFF,0XFF,0XFF, 15 | 0XFF,0XFF,0XFF,0XFF,0X7D,0XEF,0XE7,0X39,0X6D,0X6B,0X00,0X00,0XFF,0XFF,0XFF,0XFF, 16 | 0XFF,0XFF,0XFF,0XFF,0XE7,0X39,0XF7,0XBD,0XFF,0XFF,0X00,0X00,0XFF,0XFF,0XFF,0XFF, 17 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0XFF,0XFF,0XFF,0XFF, 18 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0XFF,0XFF,0XFF,0XFF, 19 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0XFF,0XFF,0XFF,0XFF, 20 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0XFF,0XFF,0XFF,0XFF, 21 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0XFF,0XFF,0XFF,0XFF, 22 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0XFF,0XFF,0XFF,0XFF, 23 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X00,0X00,0XFF,0XFF,0XFF,0XFF, 24 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X65,0X29,0XFF,0XFF,0XFF,0XFF, 25 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 26 | 0XFF,0XFF,0X71,0X8C,0X65,0X29,0X00,0X00,0X65,0X29,0XFB,0XDE,0XFF,0XFF,0XFF,0XFF, 27 | 0XFF,0XFF,0X71,0X8C,0XFF,0XFF,0XFF,0XFF,0XFB,0XDE,0X65,0X29,0XFF,0XFF,0XFF,0XFF, 28 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X69,0X4A,0X79,0XCE,0XFF,0XFF, 29 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X69,0X4A,0X79,0XCE,0XFF,0XFF, 30 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X65,0X29,0XFF,0XFF,0XFF,0XFF, 31 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0X39,0X75,0XAD,0XFF,0XFF,0XFF,0XFF, 32 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X6D,0X6B,0X6D,0X6B,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 33 | 0XFF,0XFF,0XFF,0XFF,0X6D,0X6B,0X6D,0X6B,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 34 | 0XFF,0XFF,0XF3,0X9C,0X69,0X4A,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 35 | 0XFF,0XFF,0X00,0X00,0X7D,0XEF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 36 | 0X79,0XCE,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFB,0XDE,0XFF,0XFF, 37 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 38 | 0XFF,0XFF,0X65,0X29,0X00,0X00,0X00,0X00,0X00,0X00,0X65,0X29,0XFF,0XFF,0XFF,0XFF, 39 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X6D,0X6B,0XF7,0XBD,0XFF,0XFF,0XFF,0XFF, 40 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X75,0XAD,0X71,0X8C,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 41 | 0XFF,0XFF,0XFF,0XFF,0XFB,0XDE,0XEB,0X5A,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 42 | 0XFF,0XFF,0XFF,0XFF,0XE7,0X39,0X00,0X00,0XEB,0X5A,0X7D,0XEF,0XFF,0XFF,0XFF,0XFF, 43 | 0XFF,0XFF,0XFF,0XFF,0X7D,0XEF,0XFF,0XFF,0X75,0XAD,0XE7,0X39,0XFF,0XFF,0XFF,0XFF, 44 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X69,0X4A,0XFB,0XDE,0XFF,0XFF, 45 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X69,0X4A,0X79,0XCE,0XFF,0XFF, 46 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0X39,0X7D,0XEF,0XFF,0XFF, 47 | 0XFF,0XFF,0XF3,0X9C,0XFF,0XFF,0XFF,0XFF,0X75,0XAD,0X69,0X4A,0XFF,0XFF,0XFF,0XFF, 48 | 0XFF,0XFF,0X6D,0X6B,0X00,0X00,0X00,0X00,0X69,0X4A,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 49 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 50 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X6D,0X6B,0XFB,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 51 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X65,0X29,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 52 | 0XFF,0XFF,0XFF,0XFF,0X75,0XAD,0X6D,0X6B,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 53 | 0XFF,0XFF,0XFF,0XFF,0XEB,0X5A,0X79,0XCE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 54 | 0XFF,0XFF,0XFF,0XFF,0X65,0X29,0XFF,0XFF,0XFB,0XDE,0X6D,0X6B,0XFF,0XFF,0XFF,0XFF, 55 | 0XFF,0XFF,0XF3,0X9C,0XEF,0X7B,0XFF,0XFF,0X79,0XCE,0X69,0X4A,0XFF,0XFF,0XFF,0XFF, 56 | 0XFF,0XFF,0XE7,0X39,0X7D,0XEF,0XFF,0XFF,0X79,0XCE,0X69,0X4A,0XFF,0XFF,0XFF,0XFF, 57 | 0X7D,0XEF,0XE7,0X39,0XFF,0XFF,0XFF,0XFF,0X79,0XCE,0X69,0X4A,0XFF,0XFF,0XFF,0XFF, 58 | 0X75,0XAD,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X6D,0X6B,0XFF,0XFF, 59 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X79,0XCE,0X69,0X4A,0XFF,0XFF,0XFF,0XFF, 60 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X79,0XCE,0X6D,0X6B,0XFF,0XFF,0XFF,0XFF, 61 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 62 | 0XFF,0XFF,0XEB,0X5A,0X00,0X00,0X00,0X00,0X00,0X00,0XEB,0X5A,0XFF,0XFF,0XFF,0XFF, 63 | 0XFF,0XFF,0X69,0X4A,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 64 | 0XFF,0XFF,0X69,0X4A,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 65 | 0XFF,0XFF,0X69,0X4A,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 66 | 0XFF,0XFF,0X69,0X4A,0X69,0X4A,0X00,0X00,0X69,0X4A,0XFB,0XDE,0XFF,0XFF,0XFF,0XFF, 67 | 0XFF,0XFF,0XEF,0X7B,0XFB,0XDE,0XFF,0XFF,0X75,0XAD,0X65,0X29,0XFF,0XFF,0XFF,0XFF, 68 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0X39,0XFB,0XDE,0XFF,0XFF, 69 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X69,0X4A,0X79,0XCE,0XFF,0XFF, 70 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0X39,0X7D,0XEF,0XFF,0XFF, 71 | 0XFF,0XFF,0X75,0XAD,0XFF,0XFF,0XFF,0XFF,0X75,0XAD,0X69,0X4A,0XFF,0XFF,0XFF,0XFF, 72 | 0XFF,0XFF,0X6D,0X6B,0X00,0X00,0X00,0X00,0X69,0X4A,0XFB,0XDE,0XFF,0XFF,0XFF,0XFF, 73 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 74 | 0XFF,0XFF,0XFF,0XFF,0XEB,0X5A,0X00,0X00,0X00,0X00,0X71,0X8C,0XFF,0XFF,0XFF,0XFF, 75 | 0XFF,0XFF,0X6D,0X6B,0XF3,0X9C,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 76 | 0XFF,0XFF,0XE7,0X39,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 77 | 0X79,0XCE,0X69,0X4A,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 78 | 0X79,0XCE,0XEB,0X5A,0XEB,0X5A,0X00,0X00,0XE7,0X39,0XFB,0XDE,0XFF,0XFF,0XFF,0XFF, 79 | 0X79,0XCE,0X00,0X00,0X79,0XCE,0XFF,0XFF,0XFB,0XDE,0X65,0X29,0XFF,0XFF,0XFF,0XFF, 80 | 0X79,0XCE,0X71,0X8C,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XEF,0X7B,0XF7,0XBD,0XFF,0XFF, 81 | 0X79,0XCE,0X6D,0X6B,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X71,0X8C,0X71,0X8C,0XFF,0XFF, 82 | 0X7D,0XEF,0XE7,0X39,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X6D,0X6B,0X79,0XCE,0XFF,0XFF, 83 | 0XFF,0XFF,0X69,0X4A,0X75,0XAD,0XFF,0XFF,0XFB,0XDE,0X65,0X29,0XFF,0XFF,0XFF,0XFF, 84 | 0XFF,0XFF,0XFB,0XDE,0X69,0X4A,0X00,0X00,0X65,0X29,0XFB,0XDE,0XFF,0XFF,0XFF,0XFF, 85 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 86 | 0X7D,0XEF,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00,0XFB,0XDE,0XFF,0XFF, 87 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X65,0X29,0XFF,0XFF,0XFF,0XFF, 88 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X75,0XAD,0X6D,0X6B,0XFF,0XFF,0XFF,0XFF, 89 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XEB,0X5A,0XF7,0XBD,0XFF,0XFF,0XFF,0XFF, 90 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X65,0X29,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 91 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF3,0X9C,0XEF,0X7B,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 92 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0X39,0XFB,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 93 | 0XFF,0XFF,0XFF,0XFF,0X7D,0XEF,0XE7,0X39,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 94 | 0XFF,0XFF,0XFF,0XFF,0XEF,0X7B,0XF3,0X9C,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 95 | 0XFF,0XFF,0XFF,0XFF,0X65,0X29,0X7D,0XEF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 96 | 0XFF,0XFF,0X7D,0XEF,0X69,0X4A,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 97 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 98 | 0XFF,0XFF,0XFB,0XDE,0XE7,0X39,0X00,0X00,0X65,0X29,0XFB,0XDE,0XFF,0XFF,0XFF,0XFF, 99 | 0XFF,0XFF,0X65,0X29,0X79,0XCE,0XFF,0XFF,0XFB,0XDE,0X65,0X29,0XFF,0XFF,0XFF,0XFF, 100 | 0XFB,0XDE,0X69,0X4A,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X69,0X4A,0X79,0XCE,0XFF,0XFF, 101 | 0XFF,0XFF,0X65,0X29,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X65,0X29,0XFF,0XFF,0XFF,0XFF, 102 | 0XFF,0XFF,0X71,0X8C,0X69,0X4A,0XF7,0XBD,0XEB,0X5A,0X75,0XAD,0XFF,0XFF,0XFF,0XFF, 103 | 0XFF,0XFF,0XFB,0XDE,0XE7,0X39,0X69,0X4A,0X65,0X29,0XF7,0XBD,0XFF,0XFF,0XFF,0XFF, 104 | 0X7D,0XEF,0XE7,0X39,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0X39,0X7D,0XEF,0XFF,0XFF, 105 | 0X71,0X8C,0X71,0X8C,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X75,0XAD,0X71,0X8C,0XFF,0XFF, 106 | 0X71,0X8C,0X71,0X8C,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X75,0XAD,0X71,0X8C,0XFF,0XFF, 107 | 0X7D,0XEF,0X65,0X29,0X7D,0XEF,0XFF,0XFF,0X7D,0XEF,0X65,0X29,0X7D,0XEF,0XFF,0XFF, 108 | 0XFF,0XFF,0XF7,0XBD,0X65,0X29,0X00,0X00,0X65,0X29,0XF7,0XBD,0XFF,0XFF,0XFF,0XFF, 109 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 110 | 0XFF,0XFF,0XFB,0XDE,0X65,0X29,0X00,0X00,0X69,0X4A,0XFB,0XDE,0XFF,0XFF,0XFF,0XFF, 111 | 0XFF,0XFF,0X65,0X29,0XFB,0XDE,0XFF,0XFF,0X75,0XAD,0X69,0X4A,0XFF,0XFF,0XFF,0XFF, 112 | 0X79,0XCE,0XEB,0X5A,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0X39,0X7D,0XEF,0XFF,0XFF, 113 | 0X79,0XCE,0X71,0X8C,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X71,0X8C,0X79,0XCE,0XFF,0XFF, 114 | 0X79,0XCE,0XEB,0X5A,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X71,0X8C,0XF3,0X9C,0XFF,0XFF, 115 | 0XFF,0XFF,0X65,0X29,0X79,0XCE,0XFF,0XFF,0X7D,0XEF,0XE7,0X39,0X71,0X8C,0XFF,0XFF, 116 | 0XFF,0XFF,0XFB,0XDE,0XE7,0X39,0X00,0X00,0XEB,0X5A,0XEB,0X5A,0X75,0XAD,0XFF,0XFF, 117 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X6D,0X6B,0X79,0XCE,0XFF,0XFF, 118 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XE7,0X39,0XFF,0XFF,0XFF,0XFF, 119 | 0XFF,0XFF,0X7D,0XEF,0XFF,0XFF,0XFF,0XFF,0X75,0XAD,0XEB,0X5A,0XFF,0XFF,0XFF,0XFF, 120 | 0XFF,0XFF,0X71,0X8C,0X00,0X00,0X00,0X00,0X69,0X4A,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 121 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 122 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 123 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 124 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 125 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 126 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 127 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 128 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 129 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 130 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 131 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 132 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 133 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 134 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 135 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 136 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 137 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 138 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 139 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 140 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 141 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 142 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XF3,0X9C,0XF3,0X9C,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 143 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X96,0XB5,0X96,0XB5,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 144 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 145 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 146 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 147 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 148 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 149 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 150 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 151 | 0XFF,0XFF,0X9E,0XF7,0XB2,0X94,0X92,0X94,0X92,0X94,0XB2,0X94,0X9E,0XF7,0XFF,0XFF, 152 | 0XFF,0XFF,0X9E,0XF7,0XB2,0X94,0X92,0X94,0X92,0X94,0XB2,0X94,0X9E,0XF7,0XFF,0XFF, 153 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 154 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 155 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 156 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 157 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 158 | }; 159 | -------------------------------------------------------------------------------- /src/src/img/rtcLock.c: -------------------------------------------------------------------------------- 1 | const unsigned char gImage_rtcLock[2400] = { /* 0X00,0X10,0X19,0X00,0X30,0X00,0X01,0X1B, */ 2 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 3 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 4 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 5 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 6 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 7 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 8 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 9 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X18,0XC6, 10 | 0X51,0X8C,0X6D,0X6B,0X6D,0X6B,0X51,0X8C,0X18,0XC6,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 11 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 12 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBE,0XF7,0X51,0X8C, 13 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X51,0X8C,0XBE,0XF7, 14 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 15 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X71,0X8C, 16 | 0X2C,0X63,0X2C,0X63,0X4D,0X6B,0X51,0X8C,0X51,0X8C,0X4D,0X6B,0X2C,0X63,0X2C,0X63, 17 | 0X71,0X8C,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 18 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X79,0XCE, 19 | 0X2C,0X63,0X2C,0X63,0XEF,0X7B,0X5D,0XEF,0XFF,0XFF,0XFF,0XFF,0X5D,0XEF,0XEF,0X7B, 20 | 0X2C,0X63,0X2C,0X63,0X79,0XCE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 21 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 22 | 0XD3,0X9C,0X2C,0X63,0X2C,0X63,0X3C,0XE7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 23 | 0X3C,0XE7,0X2C,0X63,0X2C,0X63,0XD3,0X9C,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 24 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 25 | 0XFF,0XFF,0X10,0X84,0X2C,0X63,0XEF,0X7B,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 26 | 0XFF,0XFF,0XFF,0XFF,0XEF,0X7B,0X2C,0X63,0X10,0X84,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 27 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 28 | 0XFF,0XFF,0XFF,0XFF,0XCF,0X7B,0X2C,0X63,0X30,0X84,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 29 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X30,0X84,0X2C,0X63,0XCF,0X7B,0XFF,0XFF,0XFF,0XFF, 30 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 31 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XCF,0X7B,0X2C,0X63,0X30,0X84,0XFF,0XFF,0XFF,0XFF, 32 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X30,0X84,0X2C,0X63,0XCF,0X7B,0XFF,0XFF, 33 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 34 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XCF,0X7B,0X2C,0X63,0X30,0X84,0XFF,0XFF, 35 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X30,0X84,0X2C,0X63,0XCF,0X7B, 36 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 37 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X10,0X84,0X10,0X84,0X4D,0X6B,0X2C,0X63,0X6D,0X6B, 38 | 0X10,0X84,0X10,0X84,0X10,0X84,0X10,0X84,0X10,0X84,0X10,0X84,0X6D,0X6B,0X2C,0X63, 39 | 0X4D,0X6B,0X10,0X84,0X10,0X84,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 40 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63, 41 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63, 42 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 43 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X2C,0X63,0X2C,0X63,0X2C,0X63, 44 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63, 45 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 46 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X2C,0X63,0X2C,0X63, 47 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63, 48 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0XFF,0XFF,0XFF,0XFF, 49 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X2C,0X63, 50 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63, 51 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0XFF,0XFF, 52 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 53 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63, 54 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63, 55 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 56 | 0XFF,0XFF,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63, 57 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63, 58 | 0X2C,0X63,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 59 | 0XFF,0XFF,0XFF,0XFF,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63, 60 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63, 61 | 0X2C,0X63,0X2C,0X63,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 62 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63, 63 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63, 64 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 65 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63, 66 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63, 67 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 68 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X2C,0X63,0X2C,0X63,0X2C,0X63, 69 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63, 70 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 71 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 72 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 73 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 74 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 75 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 76 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 77 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 78 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 79 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 80 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 81 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 82 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 83 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDF,0XFF,0XF7,0XBD,0X30,0X84, 84 | 0X6D,0X6B,0X6D,0X6B,0X71,0X8C,0X38,0XC6,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 85 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 86 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X9E,0XF7,0X30,0X84,0X2C,0X63, 87 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X92,0X94,0XDF,0XFF,0XFF,0XFF, 88 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 89 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X30,0X84,0X2C,0X63, 90 | 0X2C,0X63,0X4D,0X6B,0X51,0X8C,0X51,0X8C,0X4D,0X6B,0X2C,0X63,0X2C,0X63,0XD3,0X9C, 91 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 92 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X38,0XC6,0X2C,0X63, 93 | 0X2C,0X63,0X30,0X84,0X7D,0XEF,0XFF,0XFF,0XFF,0XFF,0X3C,0XE7,0XCF,0X7B,0X2C,0X63, 94 | 0X2C,0X63,0XDB,0XDE,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 95 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X71,0X8C, 96 | 0X2C,0X63,0X4D,0X6B,0X7D,0XEF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDB,0XDE, 97 | 0X2C,0X63,0X2C,0X63,0X34,0XA5,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 98 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 99 | 0XAE,0X73,0X2C,0X63,0X30,0X84,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 100 | 0XFF,0XFF,0X8E,0X73,0X2C,0X63,0X71,0X8C,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 101 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 102 | 0XFF,0XFF,0X8E,0X73,0X2C,0X63,0X71,0X8C,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 103 | 0XFF,0XFF,0XFF,0XFF,0XCF,0X7B,0X2C,0X63,0X30,0X84,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 104 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 105 | 0XFF,0XFF,0XFF,0XFF,0X8E,0X73,0X2C,0X63,0X71,0X8C,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 106 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XCF,0X7B,0X2C,0X63,0X30,0X84,0XFF,0XFF,0XFF,0XFF, 107 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 108 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X8E,0X73,0X2C,0X63,0X71,0X8C,0XFF,0XFF,0XFF,0XFF, 109 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XCF,0X7B,0X2C,0X63,0X30,0X84,0XFF,0XFF, 110 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 111 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X3C,0XE7,0X1C,0XE7,0X5D,0XEF,0XFF,0XFF, 112 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X10,0X84,0X10,0X84,0XEF,0X7B,0XEF,0X7B,0XEF,0X7B, 113 | 0X10,0X84,0X10,0X84,0X10,0X84,0X10,0X84,0X10,0X84,0X10,0X84,0X10,0X84,0X10,0X84, 114 | 0X10,0X84,0X10,0X84,0X10,0X84,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 115 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63, 116 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63, 117 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 118 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X2C,0X63,0X2C,0X63,0X2C,0X63, 119 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63, 120 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 121 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X2C,0X63,0X2C,0X63, 122 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63, 123 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0XFF,0XFF,0XFF,0XFF, 124 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X2C,0X63, 125 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63, 126 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0XFF,0XFF, 127 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 128 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63, 129 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63, 130 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 131 | 0XFF,0XFF,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63, 132 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63, 133 | 0X2C,0X63,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 134 | 0XFF,0XFF,0XFF,0XFF,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63, 135 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63, 136 | 0X2C,0X63,0X2C,0X63,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 137 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63, 138 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63, 139 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 140 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63, 141 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63, 142 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 143 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X2C,0X63,0X2C,0X63,0X2C,0X63, 144 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63, 145 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 146 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 147 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 148 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 149 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 150 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 151 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 152 | }; 153 | -------------------------------------------------------------------------------- /src/src/img/rtcSetTimer.c: -------------------------------------------------------------------------------- 1 | const unsigned char gImage_rtcSetTimer[4960] = { /* 0X00,0X10,0X3E,0X00,0X28,0X00,0X01,0X1B, */ 2 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XEF,0X39,0X97,0XB5,0X56,0X73,0X3E,0X73,0X36, 3 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 4 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 5 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 6 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 7 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 8 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X3E, 9 | 0XB5,0X56,0X39,0X97,0XDE,0XEF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 10 | 0X7B,0XB7,0X73,0X3E,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 11 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 12 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 13 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 14 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 15 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 16 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 17 | 0X73,0X3E,0X7B,0XB7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X7B,0XB7,0X73,0X36,0X73,0X36, 18 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 19 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X90,0X2D,0X50,0X2D,0X50,0X2D, 20 | 0X32,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X50,0X2D, 21 | 0X50,0X2D,0X50,0X2D,0X50,0X2D,0X50,0X2D,0X50,0X2D,0X50,0X2D,0X50,0X2D,0X32,0X36, 22 | 0X32,0X36,0X50,0X2D,0X50,0X2D,0X50,0X2D,0X50,0X2D,0X50,0X2D,0X50,0X2D,0X50,0X2D, 23 | 0X50,0X2D,0X50,0X2D,0X50,0X2D,0X90,0X2D,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 24 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 25 | 0X7B,0XB7,0XFF,0XFF,0XDE,0XEF,0X73,0X3E,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 26 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 27 | 0X32,0X36,0X4A,0X23,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0X27,0X22, 28 | 0XEF,0X2C,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0XC3,0X18,0XC3,0X18,0XC3,0X18, 29 | 0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0X50,0X2D,0X50,0X2D,0XC3,0X18, 30 | 0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18, 31 | 0XC3,0X18,0X88,0X22,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 32 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X3E,0XDE,0XEF, 33 | 0X39,0X97,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 34 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X27,0X22,0XC3,0X18, 35 | 0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0X0C,0X2C, 36 | 0X73,0X36,0X73,0X36,0X73,0X36,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18, 37 | 0XC3,0X18,0XC3,0X18,0XC3,0X18,0X50,0X2D,0X50,0X2D,0XC3,0X18,0XC3,0X18,0XC3,0X18, 38 | 0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0X88,0X22, 39 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 40 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X39,0X97,0XB5,0X56,0X73,0X36, 41 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 42 | 0X73,0X36,0X73,0X36,0X73,0X36,0XAE,0X2C,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18, 43 | 0XA5,0X19,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0X73,0X36,0X73,0X36, 44 | 0X73,0X36,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18, 45 | 0XC3,0X18,0X50,0X2D,0X50,0X2D,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18, 46 | 0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0X88,0X22,0X73,0X36,0X73,0X36, 47 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 48 | 0X73,0X36,0X73,0X36,0X73,0X36,0XB5,0X56,0X73,0X3E,0X73,0X36,0X73,0X36,0X73,0X36, 49 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 50 | 0X73,0X36,0X0C,0X2C,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0X32,0X36,0X0C,0X2C, 51 | 0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XD1,0X35,0X73,0X36,0X73,0X36,0XC3,0X18, 52 | 0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0X88,0X22,0X88,0X22,0X88,0X22,0X90,0X2D, 53 | 0X90,0X2D,0X88,0X22,0X88,0X22,0X27,0X22,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18, 54 | 0XC3,0X18,0X88,0X22,0X88,0X22,0XAB,0X23,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 55 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 56 | 0X73,0X36,0X73,0X3E,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 57 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X0C,0X2C, 58 | 0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0X73,0X36,0X0C,0X2C,0XC3,0X18,0XC3,0X18, 59 | 0XC3,0X18,0XC3,0X18,0X50,0X2D,0X73,0X36,0X73,0X36,0XC3,0X18,0XC3,0X18,0XC3,0X18, 60 | 0XC3,0X18,0XC3,0X18,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 61 | 0X73,0X36,0X50,0X2D,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0X88,0X22,0X73,0X36, 62 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 63 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 64 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 65 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X0C,0X2C,0XC3,0X18,0XC3,0X18, 66 | 0XC3,0X18,0XC3,0X18,0X50,0X2D,0XAE,0X2C,0X88,0X22,0X88,0X22,0X88,0X22,0X88,0X22, 67 | 0X90,0X2D,0X73,0X36,0X73,0X36,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18, 68 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X50,0X2D, 69 | 0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0X88,0X22,0X73,0X36,0X73,0X36,0X73,0X36, 70 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 71 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 72 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 73 | 0X73,0X36,0X73,0X36,0X73,0X36,0X0C,0X2C,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18, 74 | 0XC3,0X18,0XAE,0X2C,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 75 | 0X73,0X36,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0X50,0X2D,0X50,0X2D, 76 | 0X50,0X2D,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X50,0X2D,0XC3,0X18,0XC3,0X18, 77 | 0XC3,0X18,0XC3,0X18,0X88,0X22,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 78 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 79 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 80 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 81 | 0X73,0X36,0XD1,0X35,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18, 82 | 0X27,0X22,0X90,0X2D,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0XC3,0X18, 83 | 0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0X73,0X36, 84 | 0X73,0X36,0X73,0X36,0X73,0X36,0X50,0X2D,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18, 85 | 0X88,0X22,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 86 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 87 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 88 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 89 | 0XAB,0X23,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18, 90 | 0X6D,0X2C,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0XC3,0X18,0XC3,0X18,0XC3,0X18, 91 | 0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0X73,0X36,0X73,0X36,0X73,0X36, 92 | 0X73,0X36,0X50,0X2D,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0X88,0X22,0X73,0X36, 93 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 94 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 95 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 96 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0XEF,0X2C, 97 | 0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XAB,0X23, 98 | 0X73,0X36,0X73,0X36,0X73,0X36,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18, 99 | 0XC3,0X18,0XC3,0X18,0XC3,0X18,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X50,0X2D, 100 | 0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0X88,0X22,0X73,0X36,0X73,0X36,0X73,0X36, 101 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 102 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 103 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 104 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X32,0X36,0XE9,0X22, 105 | 0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XD1,0X35,0X73,0X36, 106 | 0X73,0X36,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0X88,0X22,0X88,0X22, 107 | 0X88,0X22,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X50,0X2D,0XC3,0X18,0XC3,0X18, 108 | 0XC3,0X18,0XC3,0X18,0X88,0X22,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 109 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 110 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 111 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 112 | 0X73,0X36,0XD1,0X35,0X50,0X2D,0X50,0X2D,0X50,0X2D,0X50,0X2D,0XAE,0X2C,0XC3,0X18, 113 | 0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0X6D,0X2C,0X73,0X36,0X73,0X36,0XC3,0X18, 114 | 0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 115 | 0X73,0X36,0X73,0X36,0X73,0X36,0X50,0X2D,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18, 116 | 0X88,0X22,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 117 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 118 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 119 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X0C,0X2C, 120 | 0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0X73,0X36,0XEF,0X2C,0XC3,0X18,0XC3,0X18, 121 | 0XC3,0X18,0XC3,0X18,0X0C,0X2C,0X73,0X36,0X73,0X36,0XC3,0X18,0XC3,0X18,0XC3,0X18, 122 | 0XC3,0X18,0XC3,0X18,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 123 | 0X73,0X36,0X50,0X2D,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0X88,0X22,0X73,0X36, 124 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 125 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 126 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 127 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X0C,0X2C,0XC3,0X18,0XC3,0X18, 128 | 0XC3,0X18,0XC3,0X18,0X73,0X36,0X32,0X36,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18, 129 | 0X0C,0X2C,0X73,0X36,0X73,0X36,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18, 130 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X50,0X2D, 131 | 0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0X88,0X22,0X73,0X36,0X73,0X36,0X73,0X36, 132 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 133 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 134 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 135 | 0X73,0X36,0X73,0X36,0X73,0X36,0X0C,0X2C,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18, 136 | 0X73,0X36,0X73,0X36,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0X0C,0X2C,0X73,0X36, 137 | 0X73,0X36,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0X50,0X2D,0X50,0X2D, 138 | 0X50,0X2D,0XD1,0X35,0X73,0X36,0X73,0X36,0X73,0X36,0X50,0X2D,0XC3,0X18,0XC3,0X18, 139 | 0XC3,0X18,0XC3,0X18,0X88,0X22,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 140 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 141 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 142 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 143 | 0X73,0X36,0X50,0X2D,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0X0C,0X2C,0X0C,0X2C, 144 | 0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0X0C,0X2C,0X73,0X36,0X73,0X36,0XC3,0X18, 145 | 0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0X0C,0X2C, 146 | 0X73,0X36,0X73,0X36,0X73,0X36,0X50,0X2D,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18, 147 | 0X88,0X22,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 148 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 149 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 150 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 151 | 0XA5,0X19,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18, 152 | 0XC3,0X18,0XC3,0X18,0XD1,0X35,0X73,0X36,0X73,0X36,0XC3,0X18,0XC3,0X18,0XC3,0X18, 153 | 0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0X0C,0X2C,0X73,0X36,0X73,0X36, 154 | 0X73,0X36,0X50,0X2D,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0X88,0X22,0X73,0X36, 155 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 156 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 157 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 158 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X90,0X2D,0XA5,0X19, 159 | 0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XAE,0X2C, 160 | 0X73,0X36,0X73,0X36,0X73,0X36,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18, 161 | 0XC3,0X18,0XC3,0X18,0XC3,0X18,0X0C,0X2C,0X73,0X36,0X73,0X36,0X73,0X36,0X50,0X2D, 162 | 0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0X88,0X22,0X73,0X36,0X73,0X36,0X73,0X36, 163 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 164 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 165 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 166 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0XAE,0X2C,0X4A,0X23, 167 | 0X88,0X22,0X88,0X22,0XE9,0X22,0X6D,0X2C,0X32,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 168 | 0X73,0X36,0X88,0X22,0X88,0X22,0X88,0X22,0X88,0X22,0X88,0X22,0X88,0X22,0X88,0X22, 169 | 0X88,0X22,0XAE,0X2C,0X73,0X36,0X73,0X36,0X73,0X36,0X90,0X2D,0X88,0X22,0X88,0X22, 170 | 0X88,0X22,0X88,0X22,0XAB,0X23,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 171 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 172 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 173 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 174 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 175 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 176 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 177 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 178 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 179 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 180 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 181 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 182 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 183 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 184 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 185 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 186 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 187 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 188 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 189 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 190 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 191 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 192 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 193 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 194 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 195 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 196 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 197 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 198 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 199 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 200 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 201 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 202 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 203 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 204 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0XAE,0X2C,0XC3,0X18, 205 | 0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XB1,0X35,0X73,0X36,0X73,0X36, 206 | 0XE9,0X22,0X50,0X2D,0X73,0X36,0X73,0X36,0X88,0X22,0XAE,0X2C,0X73,0X36,0X73,0X36, 207 | 0X73,0X36,0X73,0X36,0X73,0X36,0X12,0X36,0XC3,0X18,0X73,0X36,0X73,0X36,0X73,0X36, 208 | 0XE9,0X22,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XE9,0X22,0X73,0X36,0X73,0X36, 209 | 0X73,0X36,0XE9,0X22,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XE9,0X22,0X12,0X36, 210 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 211 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 212 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X88,0X22, 213 | 0XEC,0X2B,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X88,0X22,0X50,0X2D, 214 | 0X73,0X36,0X73,0X36,0X88,0X22,0XC6,0X19,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 215 | 0X73,0X36,0X2A,0X23,0XC3,0X18,0X73,0X36,0X73,0X36,0X73,0X36,0X88,0X22,0X50,0X2D, 216 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X88,0X22, 217 | 0X50,0X2D,0X73,0X36,0X73,0X36,0X73,0X36,0XEC,0X2B,0X27,0X22,0X73,0X36,0X73,0X36, 218 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 219 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 220 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X88,0X22,0XEC,0X2B,0X73,0X36, 221 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X88,0X22,0X50,0X2D,0X73,0X36,0X73,0X36, 222 | 0X88,0X22,0XC3,0X18,0XAE,0X2C,0X73,0X36,0X73,0X36,0X73,0X36,0X12,0X36,0XC3,0X18, 223 | 0XC3,0X18,0X73,0X36,0X73,0X36,0X73,0X36,0X88,0X22,0X50,0X2D,0X73,0X36,0X73,0X36, 224 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X88,0X22,0X50,0X2D,0X73,0X36, 225 | 0X73,0X36,0X73,0X36,0X73,0X36,0XC3,0X18,0X12,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 226 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 227 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 228 | 0X73,0X36,0X73,0X36,0X73,0X36,0X88,0X22,0XEC,0X2B,0X73,0X36,0X73,0X36,0X73,0X36, 229 | 0X73,0X36,0X73,0X36,0X88,0X22,0X50,0X2D,0X73,0X36,0X73,0X36,0X88,0X22,0XEC,0X2B, 230 | 0XC6,0X19,0X73,0X36,0X73,0X36,0X73,0X36,0X2A,0X23,0XEC,0X2B,0XC3,0X18,0X73,0X36, 231 | 0X73,0X36,0X73,0X36,0X88,0X22,0X50,0X2D,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 232 | 0X73,0X36,0X73,0X36,0X73,0X36,0X88,0X22,0X50,0X2D,0X73,0X36,0X73,0X36,0X73,0X36, 233 | 0X73,0X36,0XC3,0X18,0X12,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 234 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 235 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 236 | 0X73,0X36,0X88,0X22,0XEC,0X2B,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 237 | 0X88,0X22,0X50,0X2D,0X73,0X36,0X73,0X36,0X88,0X22,0X50,0X2D,0X88,0X22,0XAE,0X2C, 238 | 0X73,0X36,0X12,0X36,0XC3,0X18,0X73,0X36,0XC3,0X18,0X73,0X36,0X73,0X36,0X73,0X36, 239 | 0X88,0X22,0X50,0X2D,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 240 | 0X73,0X36,0X88,0X22,0X50,0X2D,0X73,0X36,0X73,0X36,0X73,0X36,0XEC,0X2B,0X27,0X22, 241 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 242 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 243 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X88,0X22, 244 | 0XEC,0X2B,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X88,0X22,0X50,0X2D, 245 | 0X73,0X36,0X73,0X36,0X88,0X22,0X50,0X2D,0X50,0X2D,0XC6,0X19,0X73,0X36,0X2A,0X23, 246 | 0XEC,0X2B,0X73,0X36,0XC3,0X18,0X73,0X36,0X73,0X36,0X73,0X36,0X88,0X22,0XC3,0X18, 247 | 0XC3,0X18,0XC3,0X18,0XC3,0X18,0XAE,0X2C,0X73,0X36,0X73,0X36,0X73,0X36,0X88,0X22, 248 | 0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0X2A,0X23,0X73,0X36,0X73,0X36,0X73,0X36, 249 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 250 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 251 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X88,0X22,0XEC,0X2B,0X73,0X36, 252 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X88,0X22,0X50,0X2D,0X73,0X36,0X73,0X36, 253 | 0X88,0X22,0X50,0X2D,0X73,0X36,0X88,0X22,0XEC,0X2B,0XC3,0X18,0X73,0X36,0X73,0X36, 254 | 0XC3,0X18,0X73,0X36,0X73,0X36,0X73,0X36,0X88,0X22,0X50,0X2D,0X73,0X36,0X73,0X36, 255 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X88,0X22,0X50,0X2D,0X73,0X36, 256 | 0X50,0X2D,0XC6,0X19,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 257 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X3E,0X73,0X36, 258 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 259 | 0X73,0X36,0X73,0X36,0X73,0X36,0X88,0X22,0XEC,0X2B,0X73,0X36,0X73,0X36,0X73,0X36, 260 | 0X73,0X36,0X73,0X36,0X88,0X22,0X50,0X2D,0X73,0X36,0X73,0X36,0X88,0X22,0X50,0X2D, 261 | 0X73,0X36,0X50,0X2D,0XC3,0X18,0XEC,0X2B,0X73,0X36,0X73,0X36,0XC3,0X18,0X73,0X36, 262 | 0X73,0X36,0X73,0X36,0X88,0X22,0X50,0X2D,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 263 | 0X73,0X36,0X73,0X36,0X73,0X36,0X88,0X22,0X50,0X2D,0X73,0X36,0X73,0X36,0XE9,0X22, 264 | 0X8B,0X23,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 265 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X3E,0XB5,0X56,0X73,0X36,0X73,0X36,0X73,0X36, 266 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 267 | 0X73,0X36,0X88,0X22,0XEC,0X2B,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 268 | 0X88,0X22,0X50,0X2D,0X73,0X36,0X73,0X36,0X88,0X22,0X50,0X2D,0X73,0X36,0X73,0X36, 269 | 0X4D,0X2C,0X73,0X36,0X73,0X36,0X73,0X36,0XC3,0X18,0X73,0X36,0X73,0X36,0X73,0X36, 270 | 0X88,0X22,0X50,0X2D,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 271 | 0X73,0X36,0X88,0X22,0X50,0X2D,0X73,0X36,0X73,0X36,0X73,0X36,0XC3,0X18,0XB1,0X35, 272 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 273 | 0X73,0X36,0XB5,0X56,0X39,0X97,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 274 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X88,0X22, 275 | 0XEC,0X2B,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X88,0X22,0X50,0X2D, 276 | 0X73,0X36,0X73,0X36,0X88,0X22,0X50,0X2D,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 277 | 0X73,0X36,0X73,0X36,0XC3,0X18,0X73,0X36,0X73,0X36,0X73,0X36,0X88,0X22,0X50,0X2D, 278 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X88,0X22, 279 | 0X50,0X2D,0X73,0X36,0X73,0X36,0X73,0X36,0X4D,0X2C,0X27,0X22,0X73,0X36,0X73,0X36, 280 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X39,0X97, 281 | 0XDE,0XEF,0X73,0X3E,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 282 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X2A,0X23,0X4D,0X2C,0X73,0X36, 283 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0XE9,0X22,0X50,0X2D,0X73,0X36,0X73,0X36, 284 | 0X88,0X22,0XB1,0X35,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 285 | 0XC3,0X18,0X73,0X36,0X73,0X36,0X73,0X36,0XE9,0X22,0XC3,0X18,0XC3,0X18,0XC3,0X18, 286 | 0XC3,0X18,0XC3,0X18,0X73,0X36,0X73,0X36,0X73,0X36,0XE9,0X22,0X50,0X2D,0X73,0X36, 287 | 0X73,0X36,0X73,0X36,0X73,0X36,0X27,0X22,0XB1,0X35,0X73,0X36,0X73,0X36,0X73,0X36, 288 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X3E,0XDE,0XEF,0XFF,0XFF,0X7B,0XB7, 289 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 290 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 291 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 292 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 293 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 294 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 295 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 296 | 0X73,0X36,0X73,0X36,0X7B,0XB7,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0X7B,0XB7,0X73,0X3E, 297 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 298 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 299 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 300 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 301 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 302 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 303 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X3E,0X7B,0XB7, 304 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XDE,0XEF,0X39,0X97,0XB5,0X56, 305 | 0X73,0X3E,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 306 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 307 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 308 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 309 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 310 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 311 | 0X73,0X36,0X73,0X3E,0XB5,0X56,0X39,0X97,0XDE,0XEF,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 312 | }; 313 | -------------------------------------------------------------------------------- /src/src/img/slideBack1.c: -------------------------------------------------------------------------------- 1 | const unsigned char gImage_slideBack1[2176] = { /* 0X00,0X10,0X08,0X00,0X88,0X00,0X01,0X1B, */ 2 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63, 3 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63, 4 | 0X2C,0X63,0X2C,0X63,0XAA,0X52,0XAA,0X52,0XAA,0X52,0XAA,0X52,0X2C,0X63,0X2C,0X63, 5 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 6 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 7 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 8 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 9 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 10 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 11 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 12 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 13 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 14 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 15 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 16 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 17 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 18 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 19 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 20 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 21 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 22 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 23 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 24 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 25 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 26 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 27 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 28 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 29 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 30 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 31 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 32 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 33 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 34 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 35 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 36 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 37 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 38 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 39 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 40 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 41 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 42 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 43 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 44 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 45 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 46 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 47 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 48 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 49 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 50 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 51 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 52 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 53 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 54 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 55 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 56 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 57 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 58 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 59 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 60 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 61 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 62 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 63 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 64 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 65 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 66 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 67 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 68 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 69 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 70 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 71 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 72 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 73 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 74 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 75 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 76 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 77 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 78 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 79 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 80 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 81 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 82 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 83 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 84 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 85 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 86 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 87 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 88 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 89 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 90 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 91 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 92 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 93 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 94 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 95 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 96 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 97 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 98 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 99 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 100 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 101 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 102 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 103 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 104 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 105 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 106 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 107 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 108 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 109 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 110 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 111 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 112 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 113 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 114 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 115 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 116 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 117 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 118 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 119 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 120 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 121 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 122 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 123 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 124 | 0X2C,0X63,0XEB,0X5A,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XC3,0X18,0XEB,0X5A,0X2C,0X63, 125 | 0X2C,0X63,0X2C,0X63,0X69,0X4A,0X69,0X4A,0X69,0X4A,0X69,0X4A,0X2C,0X63,0X2C,0X63, 126 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63, 127 | 0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63,0X2C,0X63, 128 | 0X7D,0XEF,0X7D,0XEF,0X7D,0XEF,0X3C,0XE7,0X3C,0XE7,0X7D,0XEF,0X7D,0XEF,0X7D,0XEF, 129 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBA,0XD6,0XBA,0XD6,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 130 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBA,0XD6,0XBA,0XD6,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 131 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBA,0XD6,0XBA,0XD6,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 132 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBA,0XD6,0XBA,0XD6,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 133 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBA,0XD6,0XBA,0XD6,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 134 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBA,0XD6,0XBA,0XD6,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 135 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBA,0XD6,0XBA,0XD6,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 136 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBA,0XD6,0XBA,0XD6,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 137 | 0XFF,0XFF,0XFF,0XFF,0XFF,0XFF,0XBA,0XD6,0XBA,0XD6,0XFF,0XFF,0XFF,0XFF,0XFF,0XFF, 138 | }; 139 | -------------------------------------------------------------------------------- /src/src/img/slideGreen.c: -------------------------------------------------------------------------------- 1 | const unsigned char gImage_slideGreen[1024] = { /* 0X00,0X10,0X20,0X00,0X10,0X00,0X01,0X1B, */ 2 | 0XFF,0XFF,0X31,0X6E,0X08,0X15,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04, 3 | 0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04, 4 | 0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04, 5 | 0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0X08,0X15,0X31,0X6E,0XFF,0XFF, 6 | 0X31,0X6E,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04, 7 | 0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04, 8 | 0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04, 9 | 0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0X31,0X6E, 10 | 0X08,0X15,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04, 11 | 0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04, 12 | 0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04, 13 | 0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0X08,0X15, 14 | 0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04, 15 | 0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04, 16 | 0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04, 17 | 0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04, 18 | 0XC6,0X04,0XC6,0X04,0X08,0X05,0X6B,0X15,0X6B,0X15,0X6B,0X15,0X6B,0X15,0X6B,0X15, 19 | 0X6B,0X15,0X6B,0X15,0X6B,0X15,0X6B,0X15,0X6B,0X15,0X6B,0X15,0X6B,0X15,0X6B,0X15, 20 | 0X6B,0X15,0X6B,0X15,0X6B,0X15,0X6B,0X15,0X6B,0X15,0X6B,0X15,0X6B,0X15,0X6B,0X15, 21 | 0X6B,0X15,0X6B,0X15,0X6B,0X15,0X6B,0X15,0X6B,0X15,0X08,0X05,0XC6,0X04,0XC6,0X04, 22 | 0XC6,0X04,0XC6,0X04,0X31,0X2E,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 23 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 24 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 25 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X31,0X2E,0XC6,0X04,0XC6,0X04, 26 | 0XC6,0X04,0XC6,0X04,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 27 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 28 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 29 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0XC6,0X04,0XC6,0X04, 30 | 0XC6,0X04,0XC6,0X04,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 31 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 32 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 33 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0XC6,0X04,0XC6,0X04, 34 | 0XC6,0X04,0XC6,0X04,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 35 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 36 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 37 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0XC6,0X04,0XC6,0X04, 38 | 0XC6,0X04,0XC6,0X04,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 39 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 40 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 41 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0XC6,0X04,0XC6,0X04, 42 | 0XC6,0X04,0XC6,0X04,0X31,0X2E,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 43 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 44 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36, 45 | 0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X73,0X36,0X31,0X2E,0XC6,0X04,0XC6,0X04, 46 | 0XC6,0X04,0XC6,0X04,0X08,0X05,0X6B,0X15,0X6B,0X15,0X6B,0X15,0X6B,0X15,0X6B,0X15, 47 | 0X6B,0X15,0X6B,0X15,0X6B,0X15,0X6B,0X15,0X6B,0X15,0X6B,0X15,0X6B,0X15,0X6B,0X15, 48 | 0X6B,0X15,0X6B,0X15,0X6B,0X15,0X6B,0X15,0X6B,0X15,0X6B,0X15,0X6B,0X15,0X6B,0X15, 49 | 0X6B,0X15,0X6B,0X15,0X6B,0X15,0X6B,0X15,0X6B,0X15,0X08,0X05,0XC6,0X04,0XC6,0X04, 50 | 0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04, 51 | 0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04, 52 | 0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04, 53 | 0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04, 54 | 0X08,0X15,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04, 55 | 0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04, 56 | 0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04, 57 | 0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0X08,0X15, 58 | 0X31,0X6E,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04, 59 | 0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04, 60 | 0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04, 61 | 0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0X31,0X6E, 62 | 0XFF,0XFF,0X31,0X6E,0X08,0X15,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04, 63 | 0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04, 64 | 0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04, 65 | 0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0XC6,0X04,0X08,0X15,0X31,0X6E,0XFF,0XFF, 66 | }; 67 | -------------------------------------------------------------------------------- /src/src/img/slideRed.c: -------------------------------------------------------------------------------- 1 | const unsigned char gImage_slideRed[1024] = { /* 0X00,0X10,0X20,0X00,0X10,0X00,0X01,0X1B, */ 2 | 0XDE,0XFF,0X8E,0XC4,0X4C,0XF3,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB, 3 | 0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB, 4 | 0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB, 5 | 0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X4C,0XF3,0X8E,0XC4,0XDE,0XFF, 6 | 0X8E,0XC4,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB, 7 | 0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB, 8 | 0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB, 9 | 0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X8E,0XC4, 10 | 0X4C,0XF3,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB, 11 | 0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB, 12 | 0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB, 13 | 0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X4C,0XF3, 14 | 0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB, 15 | 0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB, 16 | 0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB, 17 | 0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB, 18 | 0X2C,0XFB,0X2C,0XFB,0XCE,0XEB,0X90,0XD4,0X90,0XCC,0X90,0XCC,0X90,0XCC,0X90,0XCC, 19 | 0X90,0XCC,0X90,0XCC,0X90,0XCC,0X90,0XCC,0X90,0XCC,0X90,0XCC,0X90,0XCC,0X90,0XCC, 20 | 0X90,0XCC,0X90,0XCC,0X90,0XCC,0X90,0XCC,0X90,0XCC,0X90,0XCC,0X90,0XCC,0X90,0XCC, 21 | 0X90,0XCC,0X90,0XCC,0X90,0XCC,0X90,0XCC,0X90,0XD4,0XCE,0XEB,0X2C,0XFB,0X2C,0XFB, 22 | 0X2C,0XFB,0X2C,0XFB,0XF3,0XEC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC, 23 | 0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC, 24 | 0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC, 25 | 0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XF3,0XEC,0X2C,0XFB,0X2C,0XFB, 26 | 0X2C,0XFB,0X2C,0XFB,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC, 27 | 0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC, 28 | 0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC, 29 | 0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0X2C,0XFB,0X2C,0XFB, 30 | 0X2C,0XFB,0X2C,0XFB,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC, 31 | 0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC, 32 | 0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC, 33 | 0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0X2C,0XFB,0X2C,0XFB, 34 | 0X2C,0XFB,0X2C,0XFB,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC, 35 | 0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC, 36 | 0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC, 37 | 0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0X2C,0XFB,0X2C,0XFB, 38 | 0X2C,0XFB,0X2C,0XFB,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC, 39 | 0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC, 40 | 0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC, 41 | 0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0X2C,0XFB,0X2C,0XFB, 42 | 0X2C,0XFB,0X2C,0XFB,0XF3,0XEC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC, 43 | 0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC, 44 | 0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC, 45 | 0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XD3,0XFC,0XF3,0XEC,0X2C,0XFB,0X2C,0XFB, 46 | 0X2C,0XFB,0X2C,0XFB,0XCE,0XEB,0X90,0XD4,0X90,0XCC,0X90,0XCC,0X90,0XCC,0X90,0XCC, 47 | 0X90,0XCC,0X90,0XCC,0X90,0XCC,0X90,0XCC,0X90,0XCC,0X90,0XCC,0X90,0XCC,0X90,0XCC, 48 | 0X90,0XCC,0X90,0XCC,0X90,0XCC,0X90,0XCC,0X90,0XCC,0X90,0XCC,0X90,0XCC,0X90,0XCC, 49 | 0X90,0XCC,0X90,0XCC,0X90,0XCC,0X90,0XCC,0X90,0XD4,0XCE,0XEB,0X2C,0XFB,0X2C,0XFB, 50 | 0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB, 51 | 0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB, 52 | 0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB, 53 | 0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB, 54 | 0X4C,0XF3,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB, 55 | 0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB, 56 | 0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB, 57 | 0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X4C,0XF3, 58 | 0X8E,0XC4,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB, 59 | 0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB, 60 | 0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB, 61 | 0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X8E,0XC4, 62 | 0XDE,0XFF,0X8E,0XC4,0X4C,0XF3,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB, 63 | 0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB, 64 | 0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB, 65 | 0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X2C,0XFB,0X4C,0XF3,0X8E,0XC4,0XDE,0XFF, 66 | }; 67 | -------------------------------------------------------------------------------- /src/src/wav/click.c: -------------------------------------------------------------------------------- 1 | const unsigned char gWav_Click[112] = { 2 | 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 3 | 0x7f, 0x7e, 0x7f, 0x80, 0x81, 0x81, 0x81, 0x80, 0x80, 0x7e, 0x80, 0x7f, 0x80, 0x80, 0x83, 0x80, 4 | 0x7f, 0x4b, 0x01, 0x25, 0x73, 0xc0, 0xe8, 0xdd, 0xa8, 0x66, 0x37, 0x31, 0x4f, 0x79, 0xa5, 0xbf, 5 | 0xb7, 0x96, 0x6d, 0x52, 0x4b, 0x5d, 0x82, 0xa4, 0xb3, 0xaa, 0x91, 0x72, 0x5b, 0x56, 0x67, 0x7f, 6 | 0x96, 0xa1, 0x9d, 0x8b, 0x75, 0x64, 0x61, 0x6e, 0x80, 0x93, 0x9b, 0x93, 0x80, 0x6f, 0x67, 0x6d, 7 | 0x7c, 0x8a, 0x91, 0x8e, 0x83, 0x7a, 0x74, 0x75, 0x7b, 0x80, 0x85, 0x85, 0x82, 0x80, 0x7e, 0x7e, 8 | 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 9 | }; 10 | -------------------------------------------------------------------------------- /src/src/wav/error.c: -------------------------------------------------------------------------------- 1 | const unsigned char gWav_Error[3584] = { 2 | 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x81, 0x81, 0x81, 0x81, 0x81, 0x80, 0x80, 0x80, 0x7f, 3 | 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x81, 0x82, 0x82, 0x82, 0x82, 0x82, 0x80, 4 | 0x80, 0x7f, 0x7e, 0x7f, 0x80, 0x7d, 0x7f, 0x80, 0x7c, 0x7f, 0x7f, 0x7f, 0x81, 0x82, 0x84, 0x84, 5 | 0x84, 0x84, 0x80, 0x80, 0x80, 0x7d, 0x7e, 0x80, 0x7d, 0x80, 0x80, 0x7e, 0x7d, 0x7d, 0x7e, 0x7f, 6 | 0x80, 0x81, 0x87, 0x86, 0x85, 0x84, 0x81, 0x80, 0x7f, 0x7c, 0x7c, 0x7c, 0x82, 0x80, 0x7d, 0x80, 7 | 0x7e, 0x7e, 0x81, 0x7d, 0x7d, 0x88, 0x86, 0x85, 0x81, 0x85, 0x82, 0x7e, 0x7d, 0x7c, 0x7c, 0x82, 8 | 0x80, 0x7e, 0x81, 0x7e, 0x7d, 0x80, 0x7a, 0x7c, 0x81, 0x87, 0x85, 0x80, 0x84, 0x82, 0x81, 0x7a, 9 | 0x7c, 0x7e, 0x84, 0x7f, 0x80, 0x89, 0x80, 0x7e, 0x7b, 0x80, 0x7d, 0x79, 0x81, 0x84, 0x86, 0x80, 10 | 0x82, 0x80, 0x80, 0x7a, 0x7c, 0x80, 0x81, 0x83, 0x81, 0x89, 0x80, 0x7a, 0x80, 0x80, 0x7f, 0x72, 11 | 0x82, 0x87, 0x82, 0x7d, 0x7d, 0x80, 0x81, 0x7d, 0x73, 0x8b, 0x88, 0x86, 0x7e, 0x88, 0x8a, 0x75, 12 | 0x7e, 0x7c, 0x7c, 0x78, 0x7f, 0x8a, 0x7c, 0x7d, 0x7d, 0x82, 0x7c, 0x78, 0x80, 0x88, 0x8c, 0x80, 13 | 0x87, 0x89, 0x94, 0x6e, 0x71, 0x87, 0x7b, 0x78, 0x72, 0x8e, 0x80, 0x7a, 0x7c, 0x7f, 0x80, 0x83, 14 | 0x79, 0x7f, 0x97, 0x7f, 0x84, 0x8d, 0x85, 0x7b, 0x71, 0x8f, 0x79, 0x6f, 0x7d, 0x82, 0x82, 0x6f, 15 | 0x7f, 0x83, 0x8f, 0x73, 0x7f, 0x8d, 0x90, 0x81, 0x74, 0x8c, 0x87, 0x84, 0x65, 0x8c, 0x8a, 0x70, 16 | 0x78, 0x7d, 0x87, 0x71, 0x7b, 0x85, 0x7d, 0x83, 0x88, 0x81, 0x8a, 0x8a, 0x6f, 0x91, 0x89, 0x6b, 17 | 0x7f, 0x84, 0x93, 0x63, 0x7a, 0x8a, 0x85, 0x78, 0x72, 0x86, 0x8a, 0x87, 0x64, 0x90, 0x8c, 0x7d, 18 | 0x79, 0x80, 0x88, 0x7f, 0x7e, 0x7c, 0x8e, 0x7a, 0x75, 0x86, 0x80, 0x7f, 0x70, 0x92, 0x87, 0x6b, 19 | 0x86, 0x82, 0x81, 0x7b, 0x79, 0x78, 0xa0, 0x75, 0x71, 0x91, 0x8e, 0x84, 0x62, 0x93, 0x88, 0x79, 20 | 0x7a, 0x7f, 0x81, 0x86, 0x73, 0x6c, 0x95, 0x72, 0x74, 0x8d, 0x83, 0x82, 0x7e, 0x8c, 0x87, 0x80, 21 | 0x7e, 0x85, 0x89, 0x80, 0x79, 0x77, 0x9c, 0x64, 0x66, 0x8c, 0x75, 0x76, 0x74, 0x87, 0x8c, 0x92, 22 | 0x72, 0x8c, 0x94, 0x89, 0x76, 0x77, 0xa0, 0x78, 0x77, 0x81, 0x79, 0x79, 0x79, 0x6b, 0x75, 0x80, 23 | 0x6c, 0x8b, 0x95, 0x78, 0x8d, 0x8f, 0x9b, 0x7c, 0x80, 0x8a, 0x89, 0x7e, 0x72, 0x6f, 0x80, 0x8a, 24 | 0x4d, 0x7d, 0x85, 0x6f, 0x80, 0x83, 0x87, 0x8b, 0x8a, 0x87, 0x96, 0x8d, 0x87, 0x7e, 0x8a, 0x8c, 25 | 0x5b, 0x81, 0x80, 0x5f, 0x74, 0x75, 0x75, 0x80, 0x80, 0x7b, 0x96, 0x87, 0x80, 0x96, 0x93, 0x90, 26 | 0x74, 0x91, 0x8d, 0x75, 0x78, 0x72, 0x6b, 0x7c, 0x6c, 0x5a, 0x91, 0x7c, 0x77, 0x8d, 0x8b, 0x8e, 27 | 0x8d, 0x91, 0x8f, 0x85, 0x89, 0x84, 0x7b, 0x80, 0x70, 0x64, 0x88, 0x69, 0x62, 0x88, 0x78, 0x7c, 28 | 0x87, 0x81, 0x86, 0x96, 0x7e, 0x86, 0x90, 0x95, 0x84, 0x76, 0x93, 0x70, 0x6b, 0x84, 0x6b, 0x6e, 29 | 0x83, 0x68, 0x78, 0x94, 0x78, 0x86, 0x98, 0x86, 0x84, 0x86, 0x9e, 0x7e, 0x75, 0x94, 0x74, 0x6f, 30 | 0x7c, 0x6d, 0x77, 0x84, 0x70, 0x7d, 0x86, 0x77, 0x81, 0x8b, 0x86, 0x8c, 0x8a, 0x8e, 0x86, 0x7f, 31 | 0x88, 0x7a, 0x79, 0x80, 0x6d, 0x7d, 0x82, 0x6c, 0x88, 0x86, 0x6d, 0x85, 0x83, 0x76, 0x89, 0x8b, 32 | 0x87, 0x86, 0x8c, 0x90, 0x6a, 0x7f, 0x86, 0x64, 0x7f, 0x80, 0x72, 0x86, 0x83, 0x81, 0x80, 0x80, 33 | 0x81, 0x80, 0x80, 0x80, 0x86, 0x88, 0x85, 0x7c, 0x80, 0x7f, 0x7e, 0x7e, 0x7f, 0x7e, 0x88, 0x80, 34 | 0x75, 0x8a, 0x77, 0x73, 0x8d, 0x7b, 0x7b, 0x8c, 0x81, 0x80, 0x82, 0x85, 0x7f, 0x77, 0x89, 0x7e, 35 | 0x73, 0xa1, 0x80, 0x70, 0x8e, 0x79, 0x77, 0x79, 0x81, 0x83, 0x82, 0x85, 0x82, 0x7f, 0x84, 0x7b, 36 | 0x75, 0x84, 0x7b, 0x7e, 0x91, 0x84, 0x82, 0x87, 0x81, 0x7f, 0x80, 0x70, 0x7b, 0x86, 0x79, 0x80, 37 | 0x7e, 0x87, 0x79, 0x75, 0x81, 0x80, 0x87, 0x90, 0x88, 0x8b, 0x92, 0x71, 0x7d, 0x84, 0x71, 0x76, 38 | 0x79, 0x83, 0x7d, 0x7c, 0x84, 0x7d, 0x7d, 0x80, 0x7e, 0x80, 0x86, 0x83, 0x90, 0x92, 0x7a, 0x7f, 39 | 0x7c, 0x81, 0x71, 0x75, 0x7c, 0x8e, 0x85, 0x74, 0x7c, 0x7f, 0x85, 0x75, 0x80, 0x84, 0x89, 0x89, 40 | 0x88, 0x81, 0x87, 0x83, 0x7f, 0x7b, 0x75, 0x72, 0x88, 0x83, 0x7e, 0x75, 0x81, 0x82, 0x75, 0x78, 41 | 0x80, 0x98, 0x87, 0x86, 0x80, 0x8b, 0x80, 0x76, 0x7d, 0x7d, 0x7f, 0x7e, 0x7e, 0x80, 0x8a, 0x7d, 42 | 0x7b, 0x7a, 0x79, 0x7b, 0x80, 0x87, 0x8a, 0x89, 0x8f, 0x80, 0x77, 0x79, 0x7d, 0x80, 0x7b, 0x7f, 43 | 0x84, 0x8f, 0x7b, 0x7b, 0x77, 0x8c, 0x7b, 0x71, 0x79, 0x89, 0x91, 0x7d, 0x86, 0x84, 0x80, 0x76, 44 | 0x77, 0x73, 0x85, 0x8a, 0x8b, 0x7c, 0x83, 0x86, 0x81, 0x7b, 0x7b, 0x7c, 0x84, 0x81, 0x72, 0x7f, 45 | 0x82, 0x88, 0x77, 0x7a, 0x77, 0x92, 0x83, 0x81, 0x88, 0x96, 0x8d, 0x72, 0x75, 0x76, 0x7b, 0x7f, 46 | 0x7b, 0x6e, 0x8c, 0x80, 0x7e, 0x77, 0x82, 0x85, 0x8a, 0x80, 0x80, 0x85, 0x92, 0x87, 0x73, 0x85, 47 | 0x80, 0x7f, 0x70, 0x76, 0x78, 0x8a, 0x7c, 0x7a, 0x7b, 0x80, 0x7f, 0x79, 0x7c, 0x89, 0x96, 0x84, 48 | 0x86, 0x83, 0x8b, 0x85, 0x81, 0x77, 0x78, 0x78, 0x85, 0x5c, 0x6b, 0x8a, 0x78, 0x7a, 0x79, 0x8a, 49 | 0x90, 0x94, 0x85, 0x8e, 0x91, 0xa2, 0x74, 0x71, 0x81, 0x6e, 0x70, 0x70, 0x70, 0x77, 0x7e, 0x7b, 50 | 0x79, 0x7f, 0x99, 0x90, 0x8c, 0x80, 0x8c, 0x8b, 0x8b, 0x79, 0x81, 0x86, 0x8a, 0x6f, 0x5b, 0x7d, 51 | 0x80, 0x80, 0x5b, 0x89, 0x8d, 0x7e, 0x80, 0x84, 0x85, 0x99, 0x8a, 0x7b, 0x83, 0x8b, 0x90, 0x79, 52 | 0x85, 0x81, 0x6c, 0x7c, 0x6f, 0x50, 0x7b, 0x82, 0x8a, 0x77, 0x8a, 0x93, 0x96, 0x87, 0x81, 0x90, 53 | 0x96, 0x8f, 0x60, 0x82, 0x80, 0x7b, 0x61, 0x6f, 0x7f, 0x75, 0x6e, 0x71, 0x94, 0x8d, 0x8e, 0x90, 54 | 0x89, 0x85, 0x8a, 0x80, 0x80, 0x7b, 0x8a, 0x83, 0x7b, 0x6c, 0x72, 0x76, 0x93, 0x69, 0x6b, 0x95, 55 | 0x8e, 0x86, 0x63, 0x93, 0x93, 0x93, 0x6c, 0x7f, 0x8c, 0x90, 0x78, 0x73, 0x91, 0x7e, 0x76, 0x6e, 56 | 0x71, 0x76, 0x80, 0x84, 0x86, 0x82, 0x82, 0x89, 0x8e, 0x78, 0x86, 0x8a, 0x98, 0x73, 0x74, 0x80, 57 | 0x87, 0x7d, 0x64, 0x82, 0x85, 0x8b, 0x58, 0x83, 0x96, 0x8f, 0x76, 0x75, 0x95, 0x81, 0x7d, 0x71, 58 | 0x8e, 0x89, 0x81, 0x7a, 0x7c, 0x7e, 0x7a, 0x81, 0x82, 0x77, 0x84, 0x87, 0x8c, 0x70, 0x7a, 0x86, 59 | 0x95, 0x7c, 0x62, 0x8b, 0x8a, 0x8f, 0x61, 0x8c, 0x91, 0x8f, 0x69, 0x6f, 0x90, 0x87, 0x7d, 0x69, 60 | 0x8e, 0x86, 0x81, 0x71, 0x80, 0x82, 0x80, 0x7e, 0x7e, 0x80, 0x80, 0x86, 0x94, 0x78, 0x84, 0x8d, 61 | 0x92, 0x75, 0x63, 0x80, 0x87, 0x89, 0x5e, 0x82, 0x87, 0x97, 0x5f, 0x76, 0x99, 0x8a, 0x7d, 0x6d, 62 | 0x92, 0x8a, 0x89, 0x74, 0x86, 0x86, 0x7b, 0x72, 0x75, 0x7e, 0x7c, 0x81, 0x89, 0x76, 0x7d, 0x82, 63 | 0x87, 0x7a, 0x7a, 0x88, 0x94, 0x8d, 0x63, 0x8f, 0x8d, 0x8f, 0x61, 0x76, 0x8a, 0x83, 0x71, 0x68, 64 | 0x8e, 0x87, 0x84, 0x5c, 0x86, 0x8a, 0x85, 0x81, 0x88, 0x91, 0x8d, 0x82, 0x7a, 0x7b, 0x78, 0x79, 65 | 0x84, 0x70, 0x70, 0x87, 0x8c, 0x84, 0x67, 0x90, 0x86, 0x83, 0x73, 0x82, 0x8d, 0xa6, 0x73, 0x64, 66 | 0x93, 0x80, 0x7a, 0x60, 0x8d, 0x8a, 0x85, 0x7a, 0x7c, 0x7f, 0x8e, 0x79, 0x6f, 0x82, 0x7f, 0x83, 67 | 0x8e, 0x7e, 0x80, 0x8a, 0x82, 0x77, 0x6a, 0x80, 0x8b, 0x99, 0x6f, 0x86, 0x89, 0x89, 0x69, 0x68, 68 | 0x8c, 0x7c, 0x80, 0x83, 0x7e, 0x88, 0x9d, 0x5e, 0x7f, 0x8d, 0x75, 0x79, 0x80, 0x95, 0x88, 0x87, 69 | 0x92, 0x6d, 0x74, 0x90, 0x5e, 0x73, 0x88, 0x7d, 0x89, 0x8c, 0x6a, 0x82, 0x86, 0x8c, 0x6e, 0x79, 70 | 0x9f, 0x8b, 0x85, 0x7d, 0x85, 0x84, 0x86, 0x5b, 0x75, 0x80, 0x80, 0x7c, 0x7c, 0x75, 0x8e, 0x85, 71 | 0x71, 0x85, 0x85, 0x8d, 0x92, 0x8b, 0x85, 0x87, 0x86, 0x7f, 0x58, 0x82, 0x80, 0x6a, 0x7f, 0x7c, 72 | 0x72, 0x8e, 0x7c, 0x6c, 0x8e, 0x88, 0x8c, 0x7f, 0x99, 0x9b, 0x87, 0x87, 0x7d, 0x69, 0x84, 0x75, 73 | 0x5e, 0x7f, 0x7c, 0x7c, 0x81, 0x78, 0x79, 0x98, 0x81, 0x83, 0x88, 0x94, 0x91, 0x8b, 0x81, 0x7e, 74 | 0x7c, 0x8a, 0x6a, 0x56, 0x91, 0x71, 0x6b, 0x82, 0x77, 0x7d, 0x98, 0x76, 0x80, 0x9b, 0x91, 0x8b, 75 | 0x8c, 0x8b, 0x85, 0x82, 0x82, 0x66, 0x65, 0x97, 0x63, 0x65, 0x7e, 0x7a, 0x80, 0x8a, 0x6a, 0x89, 76 | 0xa3, 0x86, 0x88, 0x89, 0x9e, 0x89, 0x80, 0x7e, 0x6d, 0x78, 0x8b, 0x59, 0x6a, 0x81, 0x6f, 0x80, 77 | 0x85, 0x6c, 0x91, 0x9c, 0x88, 0x84, 0x89, 0xa2, 0x81, 0x7f, 0x7a, 0x7d, 0x80, 0x7f, 0x5c, 0x7c, 78 | 0x88, 0x66, 0x7a, 0x7b, 0x7a, 0x87, 0x89, 0x7d, 0x96, 0x93, 0x8e, 0x87, 0x85, 0x82, 0x79, 0x81, 79 | 0x7e, 0x60, 0x87, 0x85, 0x68, 0x7c, 0x7b, 0x7c, 0x86, 0x7b, 0x70, 0x9b, 0x8d, 0x88, 0x7f, 0x93, 80 | 0x92, 0x74, 0x80, 0x7c, 0x78, 0x80, 0x78, 0x6b, 0x89, 0x7a, 0x73, 0x88, 0x7c, 0x7d, 0x8d, 0x84, 81 | 0x83, 0x83, 0x8a, 0x87, 0x80, 0x7d, 0x7f, 0x83, 0x87, 0x72, 0x6b, 0x99, 0x77, 0x71, 0x7f, 0x7e, 82 | 0x82, 0x85, 0x78, 0x81, 0x92, 0x81, 0x7f, 0x7b, 0x88, 0x7f, 0x7d, 0x8c, 0x7a, 0x7a, 0x8d, 0x7f, 83 | 0x7c, 0x81, 0x75, 0x7f, 0x89, 0x6f, 0x7f, 0x88, 0x80, 0x7d, 0x7b, 0x89, 0x80, 0x7e, 0x86, 0x7e, 84 | 0x84, 0x8b, 0x76, 0x85, 0x92, 0x6a, 0x7e, 0x84, 0x80, 0x7b, 0x77, 0x80, 0x7c, 0x7d, 0x82, 0x7b, 85 | 0x81, 0x8d, 0x80, 0x89, 0x8a, 0x7d, 0x86, 0x88, 0x79, 0x78, 0x7a, 0x83, 0x7c, 0x77, 0x72, 0x84, 86 | 0x80, 0x78, 0x7d, 0x7f, 0x86, 0x86, 0x85, 0x87, 0x83, 0x8c, 0x89, 0x7b, 0x88, 0x80, 0x75, 0x88, 87 | 0x77, 0x6c, 0x7c, 0x7b, 0x7e, 0x72, 0x83, 0x8b, 0x7f, 0x8c, 0x87, 0x7f, 0x8d, 0x84, 0x80, 0x81, 88 | 0x81, 0x81, 0x7c, 0x7e, 0x7d, 0x6f, 0x79, 0x79, 0x73, 0x7d, 0x83, 0x8d, 0x83, 0x8a, 0x92, 0x85, 89 | 0x85, 0x82, 0x80, 0x7f, 0x80, 0x7c, 0x7c, 0x7e, 0x82, 0x70, 0x77, 0x83, 0x87, 0x80, 0x7d, 0x80, 90 | 0x84, 0x8b, 0x78, 0x77, 0x7b, 0x83, 0x7e, 0x7d, 0x6c, 0x8f, 0x88, 0x82, 0x74, 0x84, 0x94, 0x79, 91 | 0x7d, 0x7e, 0x87, 0x88, 0x86, 0x72, 0x83, 0x80, 0x7c, 0x72, 0x77, 0x7f, 0x7d, 0x85, 0x84, 0x76, 92 | 0x88, 0x8b, 0x80, 0x7f, 0x80, 0x92, 0x83, 0x84, 0x7d, 0x89, 0x80, 0x74, 0x6b, 0x78, 0x7c, 0x79, 93 | 0x7b, 0x7d, 0x98, 0x80, 0x80, 0x7e, 0x8b, 0x85, 0x7c, 0x88, 0x88, 0x84, 0x93, 0x7d, 0x6e, 0x7f, 94 | 0x73, 0x70, 0x75, 0x73, 0x80, 0x8e, 0x90, 0x83, 0x73, 0x9f, 0x81, 0x74, 0x7a, 0x87, 0x8d, 0x8b, 95 | 0x7c, 0x78, 0x89, 0x78, 0x6e, 0x6a, 0x7d, 0x7d, 0x83, 0x82, 0x86, 0x8b, 0x86, 0x87, 0x83, 0x7f, 96 | 0x7f, 0x86, 0x93, 0x74, 0x7f, 0x91, 0x70, 0x70, 0x74, 0x75, 0x7e, 0x82, 0x77, 0x8a, 0x91, 0x8b, 97 | 0x73, 0x80, 0x9c, 0x6b, 0x7f, 0x8d, 0x7f, 0x85, 0x87, 0x6f, 0x7b, 0x80, 0x74, 0x77, 0x7f, 0x86, 98 | 0x81, 0x8e, 0x92, 0x75, 0x82, 0x8c, 0x71, 0x7a, 0x7e, 0x80, 0x8b, 0x84, 0x6a, 0x89, 0x85, 0x75, 99 | 0x77, 0x7f, 0x87, 0x81, 0x87, 0x85, 0x83, 0x87, 0x82, 0x6c, 0x86, 0x82, 0x6d, 0x8c, 0x83, 0x73, 100 | 0x89, 0x83, 0x7b, 0x7c, 0x80, 0x84, 0x86, 0x87, 0x83, 0x83, 0x8a, 0x7e, 0x66, 0x87, 0x7d, 0x6b, 101 | 0x83, 0x7c, 0x7a, 0x8e, 0x7e, 0x78, 0x8f, 0x80, 0x80, 0x88, 0x8a, 0x87, 0x80, 0x91, 0x7f, 0x6c, 102 | 0x88, 0x73, 0x68, 0x84, 0x71, 0x76, 0x91, 0x7a, 0x7e, 0x94, 0x87, 0x84, 0x84, 0x8e, 0x84, 0x7d, 103 | 0x8a, 0x7a, 0x77, 0x85, 0x70, 0x6f, 0x82, 0x6d, 0x74, 0x87, 0x72, 0x82, 0x95, 0x84, 0x8c, 0x90, 104 | 0x8c, 0x8c, 0x8a, 0x80, 0x7b, 0x7b, 0x82, 0x64, 0x71, 0x89, 0x64, 0x77, 0x87, 0x69, 0x84, 0x91, 105 | 0x7c, 0x8f, 0x95, 0x89, 0x8e, 0x8d, 0x88, 0x77, 0x7d, 0x8c, 0x5b, 0x75, 0x84, 0x64, 0x77, 0x7f, 106 | 0x71, 0x89, 0x8a, 0x72, 0x97, 0x96, 0x8c, 0x87, 0x8c, 0x94, 0x75, 0x80, 0x82, 0x68, 0x7d, 0x7c, 107 | 0x65, 0x7a, 0x79, 0x69, 0x8a, 0x80, 0x72, 0x92, 0x93, 0x94, 0x84, 0x91, 0x91, 0x8c, 0x7e, 0x74, 108 | 0x72, 0x83, 0x79, 0x59, 0x86, 0x7b, 0x6c, 0x80, 0x7d, 0x7e, 0x8e, 0x85, 0x87, 0x9e, 0x86, 0x87, 109 | 0x8e, 0x87, 0x7b, 0x65, 0x8d, 0x78, 0x61, 0x87, 0x76, 0x72, 0x81, 0x76, 0x7c, 0x97, 0x75, 0x80, 110 | 0x99, 0x94, 0x88, 0x6f, 0x9e, 0x83, 0x72, 0x75, 0x7c, 0x81, 0x81, 0x6d, 0x72, 0x91, 0x74, 0x78, 111 | 0x81, 0x7d, 0x81, 0x87, 0x8d, 0x8a, 0x86, 0x80, 0x8d, 0x8b, 0x6b, 0x78, 0x7f, 0x97, 0x5e, 0x71, 112 | 0x96, 0x7c, 0x7c, 0x7a, 0x7a, 0x8a, 0x90, 0x66, 0x8d, 0x90, 0x83, 0x77, 0x7f, 0x9c, 0x6a, 0x7a, 113 | 0x8f, 0x76, 0x7d, 0x80, 0x7c, 0x84, 0x83, 0x6f, 0x8a, 0x89, 0x77, 0x7a, 0x82, 0x94, 0x6b, 0x79, 114 | 0x8a, 0x8e, 0x7b, 0x72, 0x8f, 0x8e, 0x87, 0x60, 0x91, 0x8c, 0x72, 0x78, 0x7b, 0x86, 0x7e, 0x78, 115 | 0x75, 0x8f, 0x7c, 0x78, 0x80, 0x8c, 0x88, 0x6c, 0x99, 0x8e, 0x6e, 0x87, 0x87, 0x88, 0x75, 0x77, 116 | 0x7d, 0x8d, 0x71, 0x6a, 0x80, 0x89, 0x84, 0x5e, 0x95, 0x92, 0x84, 0x77, 0x86, 0x94, 0x82, 0x7b, 117 | 0x79, 0x92, 0x78, 0x76, 0x7e, 0x7d, 0x7a, 0x6d, 0x80, 0x80, 0x7b, 0x79, 0x8a, 0x96, 0x7e, 0x80, 118 | 0x85, 0xa0, 0x76, 0x73, 0x8b, 0x89, 0x80, 0x64, 0x80, 0x80, 0x7f, 0x60, 0x7c, 0x8d, 0x81, 0x7c, 119 | 0x7d, 0x9c, 0x82, 0x80, 0x81, 0x8c, 0x84, 0x79, 0x84, 0x85, 0x82, 0x6c, 0x80, 0x86, 0x67, 0x71, 120 | 0x7b, 0x92, 0x79, 0x7c, 0x8f, 0x96, 0x87, 0x72, 0x87, 0x8a, 0x8a, 0x65, 0x82, 0x8a, 0x81, 0x74, 121 | 0x74, 0x8a, 0x76, 0x75, 0x76, 0x8a, 0x84, 0x80, 0x86, 0x8b, 0x8a, 0x7d, 0x85, 0x85, 0x7e, 0x77, 122 | 0x7c, 0x8f, 0x73, 0x73, 0x7d, 0x8d, 0x7b, 0x6c, 0x8d, 0x8d, 0x89, 0x6d, 0x85, 0x8b, 0x89, 0x71, 123 | 0x76, 0x8b, 0x83, 0x7f, 0x77, 0x89, 0x7f, 0x79, 0x7c, 0x80, 0x81, 0x7b, 0x8a, 0x8c, 0x80, 0x7d, 124 | 0x82, 0x8c, 0x72, 0x73, 0x7b, 0x86, 0x7f, 0x78, 0x80, 0x87, 0x86, 0x6e, 0x82, 0x88, 0x86, 0x7b, 125 | 0x84, 0x92, 0x84, 0x7e, 0x78, 0x81, 0x7b, 0x79, 0x6a, 0x83, 0x87, 0x76, 0x83, 0x85, 0x7f, 0x84, 126 | 0x86, 0x8b, 0x80, 0x88, 0x91, 0x87, 0x7e, 0x75, 0x72, 0x80, 0x79, 0x59, 0x80, 0x84, 0x83, 0x7b, 127 | 0x81, 0x8b, 0x87, 0x84, 0x85, 0x83, 0x91, 0x90, 0x80, 0x88, 0x80, 0x74, 0x77, 0x72, 0x6e, 0x6e, 128 | 0x7b, 0x85, 0x7e, 0x81, 0x85, 0x91, 0x82, 0x80, 0x90, 0x8a, 0x89, 0x85, 0x86, 0x83, 0x79, 0x75, 129 | 0x6e, 0x6d, 0x7a, 0x6d, 0x72, 0x90, 0x7c, 0x7f, 0x8c, 0x85, 0x89, 0x88, 0x94, 0x8e, 0x83, 0x95, 130 | 0x82, 0x77, 0x7d, 0x6b, 0x6b, 0x76, 0x6d, 0x74, 0x80, 0x86, 0x86, 0x7d, 0x8c, 0x88, 0x84, 0x86, 131 | 0x8b, 0x8e, 0x86, 0x87, 0x82, 0x7c, 0x76, 0x71, 0x71, 0x6f, 0x76, 0x7d, 0x7f, 0x88, 0x89, 0x80, 132 | 0x8f, 0x8e, 0x7a, 0x89, 0x87, 0x89, 0x7e, 0x80, 0x89, 0x76, 0x78, 0x78, 0x6f, 0x7a, 0x7e, 0x77, 133 | 0x81, 0x84, 0x81, 0x86, 0x85, 0x89, 0x81, 0x83, 0x8d, 0x7f, 0x80, 0x81, 0x81, 0x7a, 0x77, 0x75, 134 | 0x7c, 0x7e, 0x79, 0x80, 0x82, 0x88, 0x81, 0x81, 0x86, 0x85, 0x80, 0x80, 0x84, 0x81, 0x81, 0x7e, 135 | 0x7e, 0x7d, 0x77, 0x80, 0x7d, 0x7a, 0x7f, 0x81, 0x86, 0x82, 0x82, 0x82, 0x87, 0x80, 0x7f, 0x7b, 136 | 0x85, 0x85, 0x7a, 0x80, 0x81, 0x80, 0x7d, 0x7e, 0x7d, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x82, 0x80, 137 | 0x83, 0x83, 0x79, 0x82, 0x81, 0x7e, 0x7e, 0x81, 0x82, 0x80, 0x80, 0x7e, 0x83, 0x7f, 0x80, 0x7e, 138 | 0x85, 0x83, 0x79, 0x83, 0x82, 0x7e, 0x7c, 0x7f, 0x7f, 0x82, 0x80, 0x80, 0x81, 0x85, 0x82, 0x80, 139 | 0x80, 0x80, 0x7c, 0x82, 0x80, 0x7b, 0x80, 0x81, 0x7f, 0x7c, 0x7d, 0x7e, 0x87, 0x80, 0x80, 0x81, 140 | 0x89, 0x85, 0x80, 0x80, 0x80, 0x80, 0x7d, 0x7c, 0x7b, 0x81, 0x7e, 0x7c, 0x81, 0x7e, 0x7e, 0x84, 141 | 0x7f, 0x80, 0x83, 0x86, 0x83, 0x81, 0x82, 0x80, 0x80, 0x80, 0x7b, 0x7b, 0x85, 0x78, 0x7a, 0x80, 142 | 0x80, 0x7f, 0x80, 0x80, 0x82, 0x85, 0x82, 0x83, 0x83, 0x87, 0x80, 0x7f, 0x81, 0x7b, 0x7c, 0x80, 143 | 0x79, 0x7c, 0x7f, 0x7f, 0x7f, 0x80, 0x7f, 0x84, 0x87, 0x80, 0x84, 0x86, 0x88, 0x80, 0x81, 0x80, 144 | 0x7e, 0x7c, 0x7b, 0x76, 0x7e, 0x81, 0x77, 0x81, 0x84, 0x7f, 0x84, 0x84, 0x80, 0x84, 0x86, 0x84, 145 | 0x7f, 0x83, 0x83, 0x7c, 0x7e, 0x7e, 0x74, 0x80, 0x80, 0x75, 0x80, 0x82, 0x83, 0x81, 0x82, 0x82, 146 | 0x86, 0x83, 0x81, 0x80, 0x85, 0x84, 0x7b, 0x80, 0x7e, 0x7a, 0x7d, 0x7b, 0x78, 0x81, 0x80, 0x7f, 147 | 0x81, 0x82, 0x81, 0x88, 0x82, 0x80, 0x83, 0x86, 0x82, 0x7c, 0x81, 0x7f, 0x7e, 0x7c, 0x79, 0x77, 148 | 0x85, 0x7d, 0x7c, 0x84, 0x83, 0x82, 0x82, 0x80, 0x80, 0x83, 0x85, 0x81, 0x7d, 0x83, 0x7f, 0x7d, 149 | 0x7e, 0x7b, 0x7c, 0x83, 0x7b, 0x7d, 0x83, 0x84, 0x82, 0x80, 0x81, 0x81, 0x83, 0x7e, 0x80, 0x81, 150 | 0x85, 0x7d, 0x7e, 0x80, 0x7e, 0x7e, 0x7f, 0x7c, 0x80, 0x85, 0x7e, 0x7f, 0x80, 0x81, 0x82, 0x81, 151 | 0x7b, 0x80, 0x83, 0x85, 0x7c, 0x80, 0x83, 0x81, 0x7e, 0x7b, 0x7d, 0x84, 0x87, 0x78, 0x81, 0x82, 152 | 0x81, 0x7f, 0x7f, 0x7e, 0x81, 0x80, 0x80, 0x7e, 0x80, 0x85, 0x7f, 0x80, 0x80, 0x7d, 0x84, 0x83, 153 | 0x7a, 0x83, 0x84, 0x82, 0x7c, 0x7d, 0x80, 0x80, 0x7d, 0x7c, 0x80, 0x83, 0x83, 0x79, 0x84, 0x84, 154 | 0x84, 0x80, 0x80, 0x82, 0x83, 0x7f, 0x7c, 0x7f, 0x7e, 0x7f, 0x7d, 0x7d, 0x7d, 0x82, 0x83, 0x80, 155 | 0x7c, 0x83, 0x83, 0x83, 0x7e, 0x80, 0x84, 0x89, 0x7d, 0x78, 0x82, 0x81, 0x7e, 0x76, 0x80, 0x80, 156 | 0x82, 0x7c, 0x7f, 0x82, 0x85, 0x80, 0x7e, 0x83, 0x82, 0x83, 0x83, 0x80, 0x80, 0x81, 0x80, 0x7d, 157 | 0x78, 0x7d, 0x80, 0x80, 0x7a, 0x7f, 0x83, 0x87, 0x7e, 0x7e, 0x86, 0x87, 0x83, 0x7b, 0x82, 0x83, 158 | 0x82, 0x77, 0x7c, 0x80, 0x7f, 0x7c, 0x7c, 0x80, 0x81, 0x82, 0x80, 0x81, 0x81, 0x81, 0x82, 0x81, 159 | 0x80, 0x81, 0x83, 0x82, 0x7a, 0x7e, 0x80, 0x81, 0x7a, 0x7b, 0x81, 0x84, 0x80, 0x7a, 0x83, 0x84, 160 | 0x84, 0x78, 0x81, 0x85, 0x83, 0x7f, 0x7e, 0x83, 0x80, 0x7f, 0x7b, 0x7e, 0x7f, 0x80, 0x7f, 0x80, 161 | 0x80, 0x80, 0x82, 0x82, 0x7d, 0x80, 0x84, 0x88, 0x7c, 0x7c, 0x83, 0x83, 0x7d, 0x77, 0x80, 0x81, 162 | 0x82, 0x79, 0x81, 0x85, 0x86, 0x7c, 0x7d, 0x83, 0x80, 0x7f, 0x7d, 0x81, 0x80, 0x81, 0x80, 0x7f, 163 | 0x7e, 0x80, 0x80, 0x80, 0x7e, 0x81, 0x83, 0x85, 0x7e, 0x7e, 0x80, 0x86, 0x7d, 0x77, 0x80, 0x83, 164 | 0x83, 0x77, 0x82, 0x84, 0x82, 0x7e, 0x7f, 0x82, 0x83, 0x80, 0x7e, 0x82, 0x81, 0x80, 0x7c, 0x80, 165 | 0x80, 0x7c, 0x80, 0x80, 0x7c, 0x80, 0x80, 0x81, 0x7e, 0x81, 0x84, 0x85, 0x80, 0x7f, 0x83, 0x85, 166 | 0x82, 0x77, 0x80, 0x81, 0x80, 0x76, 0x7b, 0x81, 0x81, 0x7d, 0x7b, 0x84, 0x84, 0x83, 0x81, 0x83, 167 | 0x83, 0x84, 0x80, 0x7f, 0x7e, 0x80, 0x7f, 0x7e, 0x7b, 0x7b, 0x7e, 0x83, 0x7c, 0x7c, 0x84, 0x86, 168 | 0x84, 0x7f, 0x84, 0x85, 0x86, 0x7d, 0x7f, 0x81, 0x82, 0x7c, 0x79, 0x80, 0x7f, 0x7d, 0x7b, 0x7f, 169 | 0x80, 0x81, 0x7f, 0x82, 0x85, 0x84, 0x84, 0x83, 0x80, 0x81, 0x81, 0x82, 0x7c, 0x7c, 0x80, 0x7f, 170 | 0x7c, 0x78, 0x7f, 0x80, 0x82, 0x7b, 0x81, 0x86, 0x87, 0x81, 0x80, 0x85, 0x83, 0x80, 0x7b, 0x80, 171 | 0x80, 0x80, 0x7c, 0x7d, 0x7d, 0x7e, 0x7e, 0x7e, 0x7e, 0x82, 0x84, 0x83, 0x82, 0x82, 0x83, 0x84, 172 | 0x80, 0x7b, 0x81, 0x81, 0x80, 0x79, 0x80, 0x81, 0x7f, 0x7c, 0x7c, 0x7f, 0x82, 0x80, 0x7e, 0x85, 173 | 0x85, 0x85, 0x80, 0x80, 0x81, 0x80, 0x80, 0x7f, 0x7c, 0x80, 0x80, 0x7e, 0x7e, 0x7f, 0x80, 0x80, 174 | 0x7f, 0x7f, 0x83, 0x83, 0x82, 0x7e, 0x82, 0x83, 0x81, 0x7d, 0x7e, 0x81, 0x80, 0x7f, 0x7c, 0x80, 175 | 0x80, 0x80, 0x7e, 0x80, 0x80, 0x83, 0x80, 0x80, 0x80, 0x82, 0x81, 0x80, 0x7e, 0x80, 0x82, 0x80, 176 | 0x7f, 0x7e, 0x83, 0x80, 0x7f, 0x7d, 0x80, 0x81, 0x80, 0x7d, 0x7f, 0x81, 0x81, 0x80, 0x7e, 0x81, 177 | 0x81, 0x81, 0x7f, 0x80, 0x81, 0x82, 0x80, 0x80, 0x80, 0x81, 0x80, 0x7e, 0x7e, 0x80, 0x80, 0x80, 178 | 0x7e, 0x7e, 0x83, 0x81, 0x80, 0x7e, 0x83, 0x82, 0x80, 0x80, 0x80, 0x81, 0x81, 0x80, 0x7e, 0x80, 179 | 0x80, 0x7f, 0x7d, 0x7f, 0x7f, 0x80, 0x81, 0x80, 0x80, 0x83, 0x82, 0x81, 0x80, 0x82, 0x82, 0x80, 180 | 0x80, 0x80, 0x80, 0x7e, 0x7d, 0x7b, 0x7f, 0x7f, 0x80, 0x7f, 0x82, 0x84, 0x80, 0x81, 0x80, 0x83, 181 | 0x80, 0x80, 0x81, 0x80, 0x81, 0x82, 0x7d, 0x7d, 0x7f, 0x7d, 0x7d, 0x7e, 0x7e, 0x81, 0x83, 0x84, 182 | 0x80, 0x81, 0x86, 0x80, 0x7e, 0x7f, 0x82, 0x81, 0x81, 0x7e, 0x80, 0x80, 0x7e, 0x7b, 0x7c, 0x80, 183 | 0x80, 0x81, 0x80, 0x82, 0x83, 0x82, 0x82, 0x80, 0x80, 0x80, 0x81, 0x80, 0x7d, 0x81, 0x80, 0x7c, 184 | 0x7d, 0x7d, 0x7e, 0x80, 0x80, 0x80, 0x84, 0x83, 0x82, 0x7e, 0x83, 0x82, 0x7d, 0x81, 0x80, 0x80, 185 | 0x81, 0x80, 0x7d, 0x80, 0x7f, 0x7e, 0x7e, 0x80, 0x81, 0x81, 0x83, 0x82, 0x7f, 0x82, 0x80, 0x7e, 186 | 0x7f, 0x80, 0x80, 0x81, 0x7f, 0x7e, 0x82, 0x7f, 0x7e, 0x7e, 0x80, 0x80, 0x80, 0x81, 0x81, 0x81, 187 | 0x82, 0x7f, 0x7e, 0x81, 0x7f, 0x7f, 0x82, 0x7f, 0x80, 0x82, 0x80, 0x7f, 0x7f, 0x80, 0x80, 0x80, 188 | 0x80, 0x81, 0x81, 0x81, 0x7e, 0x7d, 0x81, 0x7e, 0x7e, 0x80, 0x7f, 0x80, 0x82, 0x7f, 0x80, 0x81, 189 | 0x80, 0x81, 0x81, 0x81, 0x80, 0x81, 0x82, 0x7e, 0x7e, 0x81, 0x7c, 0x7d, 0x80, 0x7e, 0x81, 0x83, 190 | 0x80, 0x82, 0x83, 0x80, 0x80, 0x81, 0x82, 0x80, 0x80, 0x80, 0x7e, 0x7f, 0x80, 0x7d, 0x7f, 0x80, 191 | 0x7d, 0x80, 0x80, 0x7f, 0x83, 0x83, 0x81, 0x82, 0x82, 0x82, 0x82, 0x80, 0x80, 0x7f, 0x7f, 0x7e, 192 | 0x7a, 0x80, 0x80, 0x7c, 0x81, 0x80, 0x7e, 0x83, 0x81, 0x80, 0x84, 0x83, 0x82, 0x82, 0x81, 0x80, 193 | 0x7d, 0x80, 0x7e, 0x79, 0x80, 0x7f, 0x7c, 0x80, 0x80, 0x80, 0x84, 0x80, 0x80, 0x85, 0x83, 0x81, 194 | 0x80, 0x83, 0x81, 0x7e, 0x80, 0x7e, 0x7c, 0x80, 0x7e, 0x7d, 0x80, 0x7e, 0x7f, 0x83, 0x7f, 0x80, 195 | 0x83, 0x84, 0x82, 0x81, 0x83, 0x82, 0x81, 0x7e, 0x7d, 0x7e, 0x80, 0x7b, 0x7c, 0x81, 0x7e, 0x7f, 196 | 0x81, 0x80, 0x81, 0x82, 0x80, 0x83, 0x84, 0x80, 0x81, 0x81, 0x80, 0x7c, 0x7d, 0x81, 0x7c, 0x7e, 197 | 0x81, 0x7e, 0x80, 0x80, 0x7f, 0x81, 0x82, 0x7e, 0x82, 0x84, 0x83, 0x7f, 0x80, 0x84, 0x7f, 0x7e, 198 | 0x7e, 0x80, 0x80, 0x80, 0x7d, 0x80, 0x82, 0x7e, 0x80, 0x80, 0x80, 0x80, 0x81, 0x82, 0x81, 0x80, 199 | 0x80, 0x83, 0x7f, 0x7d, 0x7f, 0x81, 0x80, 0x79, 0x81, 0x82, 0x80, 0x80, 0x80, 0x80, 0x83, 0x80, 200 | 0x7d, 0x83, 0x81, 0x80, 0x7e, 0x82, 0x81, 0x7c, 0x81, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x81, 0x80, 201 | 0x7f, 0x82, 0x80, 0x7f, 0x7f, 0x81, 0x80, 0x7d, 0x80, 0x82, 0x82, 0x7e, 0x80, 0x83, 0x83, 0x7f, 202 | 0x7d, 0x84, 0x80, 0x7e, 0x7e, 0x80, 0x80, 0x80, 0x7e, 0x80, 0x82, 0x7f, 0x80, 0x81, 0x82, 0x80, 203 | 0x80, 0x85, 0x80, 0x7f, 0x81, 0x80, 0x80, 0x7e, 0x7f, 0x80, 0x81, 0x7d, 0x7f, 0x80, 0x82, 0x7e, 204 | 0x7e, 0x84, 0x82, 0x80, 0x7f, 0x82, 0x82, 0x80, 0x7f, 0x80, 0x81, 0x7e, 0x7f, 0x7f, 0x80, 0x7e, 205 | 0x7f, 0x80, 0x80, 0x80, 0x80, 0x83, 0x82, 0x80, 0x81, 0x83, 0x83, 0x7d, 0x80, 0x81, 0x80, 0x7d, 206 | 0x7d, 0x80, 0x80, 0x7f, 0x7c, 0x81, 0x81, 0x80, 0x80, 0x82, 0x83, 0x80, 0x80, 0x80, 0x81, 0x7f, 207 | 0x7f, 0x80, 0x80, 0x7f, 0x7e, 0x81, 0x80, 0x7d, 0x7f, 0x81, 0x81, 0x7f, 0x81, 0x83, 0x83, 0x80, 208 | 0x80, 0x81, 0x81, 0x7f, 0x7d, 0x81, 0x80, 0x80, 0x7e, 0x80, 0x80, 0x7e, 0x7f, 0x80, 0x81, 0x80, 209 | 0x80, 0x81, 0x82, 0x81, 0x80, 0x80, 0x80, 0x7f, 0x7e, 0x80, 0x80, 0x7d, 0x7f, 0x80, 0x81, 0x7e, 210 | 0x80, 0x82, 0x82, 0x80, 0x7f, 0x82, 0x81, 0x80, 0x7d, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x81, 0x80, 211 | 0x80, 0x80, 0x80, 0x80, 0x80, 0x82, 0x81, 0x80, 0x80, 0x81, 0x80, 0x7e, 0x7f, 0x80, 0x80, 0x7f, 212 | 0x80, 0x80, 0x81, 0x80, 0x7f, 0x81, 0x80, 0x80, 0x80, 0x81, 0x81, 0x80, 0x7f, 0x80, 0x80, 0x80, 213 | 0x7e, 0x7e, 0x81, 0x80, 0x80, 0x81, 0x80, 0x80, 0x81, 0x81, 0x80, 0x80, 0x82, 0x82, 0x80, 0x7f, 214 | 0x7f, 0x7f, 0x80, 0x7d, 0x7c, 0x80, 0x80, 0x80, 0x80, 0x81, 0x82, 0x81, 0x81, 0x80, 0x81, 0x82, 215 | 0x81, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7e, 0x7e, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x81, 0x82, 0x80, 216 | 0x81, 0x82, 0x81, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7e, 0x7e, 0x7f, 0x7f, 0x7d, 0x80, 0x82, 0x80, 217 | 0x81, 0x82, 0x81, 0x81, 0x81, 0x82, 0x81, 0x81, 0x82, 0x80, 0x7f, 0x7f, 0x7d, 0x7e, 0x7e, 0x7e, 218 | 0x80, 0x81, 0x81, 0x80, 0x80, 0x82, 0x81, 0x80, 0x80, 0x81, 0x81, 0x80, 0x80, 0x80, 0x80, 0x7e, 219 | 0x7e, 0x7e, 0x7e, 0x80, 0x80, 0x80, 0x82, 0x81, 0x80, 0x83, 0x80, 0x80, 0x81, 0x80, 0x80, 0x80, 220 | 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x7f, 0x81, 0x81, 0x80, 0x81, 0x80, 0x81, 0x80, 221 | 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x7f, 0x7f, 0x80, 0x80, 0x80, 0x80, 0x81, 0x81, 0x80, 222 | 0x80, 0x81, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x7f, 0x80, 0x80, 0x80, 0x80, 223 | 0x80, 0x80, 0x81, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 224 | 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 225 | 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 226 | }; 227 | --------------------------------------------------------------------------------