Instantly share code, notes, and snippets.
Created
March 14, 2019 18:25
-
Star
(0)
0
You must be signed in to star a gist -
Fork
(0)
0
You must be signed in to fork a gist
-
Save Bolukan/1f2fb0019b8270b20eda04caeb3c2e73 to your computer and use it in GitHub Desktop.
David Watts - ESP-12 Social Media Counter Update - https://www.youtube.com/watch?v=m92fLt6ndIQ
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/************************************************************************************ | |
GxEPD_SPI_TestExample : test example for e-Paper displays from Dalian Good Display Co., Ltd.: www.good-display.com | |
based on Demo Example from Good Display, now available on http://www.good-display.com/download_list/downloadcategoryid=34&isMode=false.html | |
Author : J-M Zingg | |
modified by : | |
Version : 2.0 | |
Support: limited, provided as example, no claim to be fit for serious use | |
connection to the e-Paper display is through DESTM32-S2 connection board, available from Good Display | |
DESTM32-S2 pinout (top, component side view): | |
|------------------------------------------------- | |
| VCC |o o| VCC 5V, not needed | |
| GND |o o| GND | |
| 3.3 |o o| 3.3V | |
| nc |o o| nc | |
| nc |o o| nc | |
| nc |o o| nc | |
| MOSI |o o| CLK=SCK | |
| SS=DC |o o| D/C=RS // Slave Select = Device Connect |o o| Data/Command = Register Select | |
| RST |o o| BUSY | |
| nc |o o| BS, connect to GND | |
|------------------------------------------------- | |
*/ | |
//50x50 pixels | |
#define yt3_width 100 | |
#define yt3_height 61 | |
static unsigned char youtube[112] = { /* 0X00,0X01,0X20,0X00,0X1C,0X00, */ | |
0XFF, 0XF8, 0X0F, 0XFF, 0XFF, 0XC0, 0X03, 0XFF, 0XFF, 0X00, 0X00, 0XFF, 0XFE, 0X00, 0X00, 0X7F, | |
0XFC, 0X00, 0X00, 0X3F, 0XF8, 0X00, 0X00, 0X1F, 0XF0, 0X00, 0X00, 0X0F, 0XF0, 0X00, 0X00, 0X07, | |
0XE0, 0X7F, 0XFF, 0X07, 0XE0, 0XFF, 0XFF, 0X87, 0XC1, 0XFF, 0X3F, 0XC3, 0XC1, 0XFE, 0X3F, 0XC3, | |
0XC1, 0XFC, 0X3F, 0XC3, 0XC1, 0XF8, 0X3F, 0XC3, 0XC1, 0XF8, 0X3F, 0XC3, 0XC1, 0XFC, 0X3F, 0XC3, | |
0XC1, 0XFE, 0X3F, 0XC3, 0XE1, 0XFF, 0X3F, 0XC3, 0XE0, 0XFF, 0XFF, 0X87, 0XE0, 0X7F, 0XFF, 0X07, | |
0XE0, 0X00, 0X00, 0X07, 0XF0, 0X00, 0X00, 0X0F, 0XF8, 0X00, 0X00, 0X1F, 0XFC, 0X00, 0X00, 0X3F, | |
0XFE, 0X00, 0X00, 0X7F, 0XFF, 0X00, 0X00, 0XFF, 0XFF, 0XC0, 0X03, 0XFF, 0XFF, 0XF8, 0X0F, 0XFF, | |
}; | |
const unsigned char insta[112] = { /* 0X00,0X01,0X20,0X00,0X1C,0X00, */ | |
0XFF, 0XF8, 0X0F, 0XFF, 0XFF, 0XE0, 0X03, 0XFF, 0XFF, 0X80, 0X00, 0XFF, 0XFF, 0X00, 0X00, 0X7F, | |
0XFE, 0X00, 0X00, 0X3F, 0XFC, 0X00, 0X00, 0X1F, 0XF8, 0X1F, 0X8C, 0X0F, 0XF8, 0X7F, 0XFF, 0X0F, | |
0XF0, 0X47, 0XFF, 0X07, 0XE0, 0X47, 0XFF, 0X07, 0XE0, 0X47, 0XFF, 0X07, 0XE0, 0X7E, 0X3B, 0X03, | |
0XE0, 0X6C, 0X11, 0X03, 0XE0, 0X4C, 0X11, 0X03, 0XE0, 0X4C, 0X11, 0X03, 0XE0, 0X4C, 0X11, 0X03, | |
0XE0, 0X46, 0X31, 0X03, 0XE0, 0X43, 0XE1, 0X07, 0XF0, 0X40, 0X01, 0X07, 0XF0, 0X40, 0X03, 0X07, | |
0XF0, 0X7F, 0XFE, 0X0F, 0XF8, 0X3F, 0XFC, 0X1F, 0XFC, 0X00, 0X00, 0X1F, 0XFE, 0X00, 0X00, 0X3F, | |
0XFE, 0X00, 0X00, 0X7F, 0XFF, 0X80, 0X00, 0XFF, 0XFF, 0XE0, 0X03, 0XFF, 0XFF, 0XF8, 0X0F, 0XFF, | |
}; | |
const unsigned char twitter[112] = { /* 0X00,0X01,0X20,0X00,0X1C,0X00, */ | |
0XFF, 0XF8, 0X0F, 0XFF, 0XFF, 0XC0, 0X03, 0XFF, 0XFF, 0X00, 0X00, 0XFF, 0XFE, 0X00, 0X00, 0X7F, | |
0XFC, 0X00, 0X00, 0X3F, 0XF8, 0X00, 0X00, 0X1F, 0XF0, 0X3C, 0X00, 0X0F, 0XE1, 0XFF, 0X00, 0X8F, | |
0XE1, 0XFF, 0X03, 0X87, 0XE1, 0XFF, 0X07, 0X87, 0XC0, 0XFF, 0X3F, 0X83, 0XC0, 0XFF, 0XFF, 0X03, | |
0XC0, 0XFF, 0XFF, 0X83, 0XC0, 0XFF, 0XFF, 0X83, 0XC0, 0X7F, 0XFF, 0X03, 0XC0, 0X7F, 0XFE, 0X03, | |
0XC0, 0X3F, 0XFE, 0X03, 0XE0, 0X3F, 0XFE, 0X07, 0XE0, 0X1F, 0XF8, 0X07, 0XE0, 0X0F, 0XF8, 0X07, | |
0XF0, 0X03, 0XFF, 0X8F, 0XF0, 0X00, 0XFF, 0X0F, 0XF8, 0X00, 0X00, 0X1F, 0XF8, 0X00, 0X00, 0X3F, | |
0XFE, 0X00, 0X00, 0X3F, 0XFF, 0X00, 0X00, 0XFF, 0XFF, 0XC0, 0X03, 0XFF, 0XFF, 0XF8, 0X2F, 0XFF, | |
}; | |
const unsigned char david[5000] = { /* 0X00,0X01,0XC8,0X00,0XC8,0X00, */ | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFD, 0XB5, 0XD5, 0X55, 0X55, 0X57, 0X55, 0X50, 0X03, 0X55, | |
0X56, 0XDB, 0XB6, 0XEF, 0X7B, 0X6D, 0XED, 0X55, 0X55, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0X6A, 0XAA, 0XAA, 0XAE, 0XAC, 0X80, 0X00, 0X01, 0X6A, 0XAD, 0XB5, 0X6D, 0X5A, 0XD6, 0XDB, 0X5A, | |
0XAA, 0XD5, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFA, 0XB5, 0XD5, 0X55, 0X53, 0X40, 0X04, 0X08, | |
0X00, 0XB5, 0XFA, 0XDA, 0XB6, 0XED, 0X6B, 0X6D, 0XAB, 0X55, 0X2A, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XDA, 0XAA, 0XAA, 0XA8, 0X00, 0X00, 0X00, 0X82, 0X0A, 0X07, 0X6D, 0XDB, 0X56, 0XB5, | |
0XB6, 0XD5, 0XAA, 0XD5, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0X55, 0X55, 0X55, 0X50, 0X00, | |
0X02, 0X80, 0X00, 0X00, 0X00, 0XDA, 0XB6, 0XAD, 0X6B, 0X6A, 0XAA, 0X55, 0X2A, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFE, 0XEA, 0XEA, 0XAB, 0XA0, 0X00, 0X00, 0X10, 0X1E, 0X00, 0X40, 0XB7, 0X6D, | |
0X7B, 0XD6, 0XD5, 0X55, 0XAA, 0XD5, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XB5, 0X55, 0X55, | |
0X00, 0X00, 0X28, 0X45, 0X42, 0XAA, 0X14, 0X2D, 0XB6, 0XAD, 0X6B, 0X6A, 0XAA, 0XD5, 0X2A, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFB, 0XDA, 0XAA, 0XAA, 0X00, 0X03, 0X01, 0X20, 0X28, 0X09, 0X02, | |
0X16, 0XDB, 0X56, 0XB5, 0XB5, 0X55, 0X55, 0XAB, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XB5, | |
0X75, 0X54, 0X00, 0X00, 0X00, 0X10, 0X00, 0X04, 0XE0, 0X81, 0XB6, 0XEB, 0X6B, 0X6A, 0XAA, 0XAA, | |
0X54, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XD6, 0XAA, 0XB0, 0X00, 0X00, 0X00, 0X00, 0X00, | |
0X01, 0X18, 0X28, 0X6D, 0X56, 0XD6, 0XD5, 0X55, 0XAA, 0XD5, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFD, 0X6A, 0XD5, 0X40, 0X00, 0X20, 0X00, 0X00, 0X00, 0X2A, 0X54, 0X00, 0XB6, 0XBB, 0X6B, 0X6A, | |
0XAA, 0X55, 0X2A, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XB5, 0X6A, 0X80, 0X00, 0X00, 0X00, | |
0X00, 0X00, 0X01, 0X4F, 0X00, 0X1B, 0X55, 0XB5, 0XB5, 0X55, 0XAA, 0XD5, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XEB, 0X55, 0X44, 0X80, 0X00, 0X00, 0X00, 0X00, 0X00, 0X11, 0XD0, 0X0E, 0XAB, | |
0X6A, 0XAA, 0XAB, 0X55, 0X2A, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XDA, 0XAD, 0X09, 0X10, | |
0X00, 0X00, 0X00, 0X00, 0X00, 0X20, 0X28, 0X05, 0X76, 0XD5, 0X55, 0X5A, 0X55, 0X55, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0X6A, 0XD8, 0X20, 0X00, 0X00, 0X00, 0X00, 0X00, 0X00, 0X40, 0X04, | |
0X06, 0XAB, 0X6E, 0XAA, 0XA5, 0XAA, 0XAA, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XF5, 0X68, | |
0X80, 0X00, 0X15, 0X74, 0X00, 0X00, 0X00, 0X00, 0X02, 0X03, 0XDD, 0XB3, 0X55, 0X5A, 0XAA, 0XAB, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFA, 0XB0, 0X00, 0X04, 0X00, 0X8B, 0XF0, 0X01, 0X00, | |
0X01, 0X01, 0X40, 0XAB, 0X6E, 0XAA, 0XD5, 0X55, 0X54, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XD5, 0X60, 0X00, 0X10, 0X00, 0X52, 0XAE, 0X00, 0X11, 0X48, 0X40, 0X90, 0X76, 0XD5, 0X55, 0XAA, | |
0XAA, 0XAB, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0X7A, 0X80, 0X00, 0X00, 0X01, 0X29, 0X54, | |
0X00, 0X06, 0X81, 0X30, 0X00, 0X5B, 0X6A, 0XAA, 0X55, 0X55, 0X55, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XED, 0X10, 0X04, 0X00, 0X00, 0X34, 0X03, 0X00, 0X90, 0X00, 0X00, 0X20, 0X2D, 0XB5, | |
0X55, 0XAA, 0XAA, 0XAA, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFE, 0X80, 0X00, 0X00, 0X02, | |
0X05, 0X40, 0XC0, 0X0A, 0X50, 0X04, 0X8A, 0X1B, 0X6E, 0XAB, 0X55, 0X55, 0X55, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XF4, 0X10, 0X00, 0X02, 0XAC, 0X04, 0X00, 0X01, 0X50, 0X00, 0X02, 0X00, | |
0X06, 0XD5, 0XD6, 0XAA, 0XAA, 0XAB, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0X78, 0X40, 0X00, | |
0X00, 0X00, 0X00, 0X00, 0X00, 0XA0, 0X00, 0X00, 0X20, 0X8D, 0X6A, 0XAB, 0X55, 0X55, 0X55, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFC, 0X00, 0X00, 0X00, 0X00, 0X00, 0X00, 0X03, 0X48, 0X00, | |
0X01, 0X00, 0X06, 0XB7, 0X55, 0XAA, 0XAA, 0XAA, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XF0, | |
0X80, 0X00, 0X4A, 0X00, 0X00, 0X00, 0X02, 0X00, 0X00, 0X08, 0X00, 0X03, 0X6A, 0XAB, 0X55, 0X5D, | |
0XDD, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XF5, 0X00, 0X00, 0X00, 0X00, 0X00, 0X00, 0X0C, | |
0X20, 0X00, 0X02, 0X00, 0X06, 0XDD, 0X76, 0XAE, 0XAA, 0XAB, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0X48, 0X00, 0X00, 0X02, 0X00, 0X00, 0X00, 0X30, 0X00, 0X00, 0X14, 0X00, 0X01, 0X6B, 0XAB, | |
0X55, 0XD5, 0X75, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XE0, 0X00, 0X00, 0X00, 0X00, 0X00, | |
0X00, 0X00, 0X80, 0X00, 0X4A, 0X80, 0X01, 0XB5, 0X5D, 0XBA, 0XBB, 0XAE, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFD, 0X92, 0X00, 0X00, 0X00, 0X00, 0X00, 0X00, 0X01, 0X00, 0X01, 0X15, 0X20, 0X00, | |
0XEA, 0XEB, 0X55, 0X55, 0X55, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0X20, 0X00, 0X00, 0X00, | |
0X00, 0X00, 0X00, 0X02, 0X00, 0X02, 0X69, 0X40, 0X00, 0XD7, 0X56, 0XEE, 0XEE, 0XFB, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFE, 0X40, 0X00, 0X00, 0X00, 0X00, 0X00, 0X00, 0X00, 0X01, 0X29, 0X14, | |
0XB0, 0X00, 0X6A, 0XBB, 0X55, 0X55, 0XAE, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0X00, 0X00, | |
0X00, 0X00, 0X00, 0X00, 0X00, 0X00, 0XA8, 0X84, 0XD6, 0X94, 0X00, 0X3D, 0XD5, 0XBB, 0XBA, 0XD5, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFE, 0X80, 0X00, 0X00, 0X00, 0X00, 0X00, 0X00, 0X12, 0X15, | |
0X6B, 0X2D, 0X68, 0X00, 0X16, 0XAB, 0X55, 0X57, 0XBF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0X00, 0X00, 0X00, 0X10, 0X00, 0X00, 0X04, 0X22, 0XE5, 0X4A, 0X5A, 0X9A, 0X00, 0X2D, 0X76, 0XEE, | |
0XFD, 0X75, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFC, 0X00, 0X00, 0X00, 0X00, 0X00, 0X00, 0X49, | |
0X4D, 0X1A, 0XB5, 0XA7, 0X6C, 0X00, 0X1B, 0XAD, 0XBB, 0XAB, 0XDF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFE, 0X00, 0X00, 0X00, 0X00, 0X00, 0X00, 0X24, 0XA5, 0XD5, 0XDE, 0XDB, 0XB7, 0X00, 0X0D, | |
0XF6, 0XDD, 0XFD, 0X6B, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFE, 0X00, 0X00, 0X00, 0X00, 0X00, | |
0X02, 0X93, 0X5A, 0X2B, 0X6B, 0X76, 0XDA, 0XC0, 0X07, 0X5B, 0X6B, 0X57, 0XBD, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFC, 0X00, 0X00, 0X00, 0X00, 0X00, 0X14, 0X26, 0X55, 0XDE, 0XDE, 0XED, 0XB7, | |
0X88, 0X06, 0XF6, 0XDE, 0XFD, 0X6B, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFC, 0X00, 0X00, 0X00, | |
0X00, 0X01, 0X41, 0XD9, 0XAA, 0XB5, 0XF7, 0XBB, 0X6D, 0X52, 0X03, 0XAD, 0XB5, 0XAB, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XF8, 0X00, 0X00, 0X00, 0X00, 0X04, 0X2A, 0X56, 0XDF, 0XDF, 0X7D, | |
0XED, 0XBF, 0XA1, 0X03, 0XF6, 0XFF, 0XFF, 0X6D, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFC, 0X00, | |
0X00, 0X00, 0X44, 0X52, 0X95, 0XAD, 0X75, 0X77, 0XFF, 0X7F, 0XDA, 0XD9, 0X00, 0XDF, 0XD5, 0X55, | |
0XB7, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XF8, 0X00, 0X00, 0X00, 0X88, 0X84, 0X25, 0X7B, 0XEF, | |
0XFF, 0XFF, 0XF7, 0X7F, 0XD0, 0X81, 0XBA, 0XBF, 0XFF, 0X7F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XF8, 0X00, 0X00, 0X2A, 0X22, 0X29, 0XDB, 0XD6, 0XBF, 0XFF, 0XFE, 0XFE, 0XD6, 0XAC, 0X80, 0XEF, | |
0XEA, 0XAB, 0XED, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XF8, 0X00, 0X02, 0X01, 0X11, 0X54, 0X55, | |
0X7F, 0XFF, 0XBF, 0XFF, 0XB7, 0XFF, 0XF6, 0X40, 0X75, 0X7F, 0XFD, 0X77, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XF8, 0X00, 0X00, 0XAA, 0XA4, 0XAB, 0XAF, 0XF7, 0XFE, 0XEF, 0XFF, 0XFB, 0XB5, 0XA9, | |
0X24, 0X5F, 0XD5, 0X57, 0XDF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XF0, 0X00, 0X15, 0X45, 0X49, | |
0X2A, 0X7A, 0XDE, 0XFF, 0XFF, 0XFE, 0XEE, 0XFF, 0X7B, 0X40, 0XFA, 0XBF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XF0, 0X00, 0X40, 0XAA, 0X95, 0X55, 0XD7, 0XFF, 0XBB, 0XFF, 0XFF, 0XFF, | |
0XED, 0XD0, 0X10, 0X57, 0XED, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XF2, 0X40, 0X2A, | |
0X55, 0X4A, 0XAE, 0XFF, 0XBB, 0XFF, 0XFF, 0XFF, 0XFB, 0X7F, 0X7D, 0X08, 0X3F, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XF0, 0X01, 0X55, 0XAA, 0XB5, 0X5B, 0X5E, 0XED, 0XFF, 0XFF, | |
0XFD, 0XFF, 0XDB, 0XEA, 0X84, 0X1F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XF2, | |
0X00, 0X55, 0X2A, 0XAA, 0XB6, 0XFF, 0XFF, 0XFF, 0XFF, 0XEF, 0X6E, 0XF7, 0XB4, 0X00, 0X3F, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XE4, 0X01, 0XAA, 0XD5, 0X55, 0X6D, 0XDF, 0XFF, | |
0X6F, 0XF6, 0XFF, 0XDB, 0XBD, 0XEA, 0X94, 0X5F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XE0, 0X00, 0XAA, 0X55, 0X6A, 0XB6, 0XF6, 0XFF, 0XFB, 0XBF, 0XBD, 0XFE, 0XEF, 0X7A, 0X40, | |
0X3F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XE0, 0X01, 0X55, 0XAA, 0XD5, 0XDB, | |
0XDF, 0XBF, 0XFF, 0XFF, 0XFF, 0XF7, 0XBB, 0XAD, 0X14, 0X0F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XC0, 0X02, 0XAB, 0X2A, 0XAB, 0XB7, 0X7B, 0XF5, 0XFF, 0XFF, 0XFB, 0XBE, 0XEF, | |
0XFA, 0XA0, 0X3F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0X82, 0X05, 0X54, 0XD5, | |
0X56, 0XED, 0XDE, 0XDF, 0XFF, 0XF6, 0XFF, 0X7F, 0XDD, 0X55, 0X0A, 0X1F, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XC0, 0X02, 0XAB, 0X55, 0XAB, 0X77, 0X6F, 0X7F, 0XFE, 0XFF, 0XFF, | |
0XDB, 0X7F, 0XFE, 0XA0, 0X9F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0X82, 0X01, | |
0X56, 0XAA, 0X5D, 0XDD, 0XFF, 0XF6, 0XDF, 0XBD, 0XD5, 0XFF, 0XF7, 0XAA, 0X8A, 0X2F, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XC0, 0X0A, 0XAD, 0X55, 0XAB, 0XB7, 0X5B, 0XDF, 0XFD, | |
0XEB, 0X7F, 0XB6, 0XDE, 0XFD, 0X20, 0X1F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0X80, 0X02, 0XD2, 0XAA, 0XDE, 0XFD, 0XFF, 0X7D, 0XF7, 0X7F, 0XFF, 0XFD, 0XB7, 0XAA, 0X85, 0X3F, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0X80, 0X09, 0X6D, 0X55, 0X6B, 0X56, 0XAF, | |
0XF7, 0X5D, 0XFF, 0XFB, 0X7F, 0XFF, 0XFE, 0XA0, 0X1F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0X80, 0X02, 0X9A, 0XAA, 0X9D, 0XFB, 0XFD, 0XFB, 0XF7, 0XFF, 0XFF, 0XF6, 0XF6, 0XD5, | |
0X4A, 0X9F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0X80, 0X05, 0X75, 0X55, 0X6B, | |
0X56, 0XB7, 0X57, 0X5F, 0XFF, 0XDF, 0XFF, 0XAF, 0XBE, 0X90, 0X3F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0X80, 0X09, 0X4A, 0XAA, 0XB6, 0XFD, 0XED, 0XFD, 0XFF, 0XFF, 0XFF, 0XDD, | |
0XFD, 0XEB, 0X44, 0X3F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0X80, 0X05, 0X6B, | |
0X55, 0X5B, 0X56, 0XBE, 0XAF, 0XFF, 0XFF, 0XFD, 0XF7, 0XBF, 0X7D, 0X22, 0X1F, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XC0, 0X01, 0X54, 0XAA, 0XAA, 0XFB, 0XEB, 0XFF, 0X77, 0XFF, | |
0XEF, 0XFE, 0XDB, 0XB7, 0XC8, 0X9F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0X80, | |
0X0A, 0XAB, 0X55, 0X57, 0XAF, 0XBF, 0XFB, 0XFF, 0XB7, 0XFB, 0XAD, 0XFE, 0XED, 0X12, 0X1F, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0X80, 0X11, 0X54, 0XAA, 0XAD, 0X7E, 0XFD, 0XBF, | |
0XDD, 0XFF, 0X7F, 0XFF, 0XBB, 0XFB, 0XC0, 0XBF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XC0, 0X0A, 0XAA, 0XAB, 0XF7, 0XAF, 0XDF, 0XED, 0X76, 0XDD, 0XDF, 0XFF, 0XFE, 0XBD, 0X54, | |
0X1F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XC0, 0X01, 0X55, 0X5A, 0X5A, 0XFB, | |
0X77, 0XFF, 0XDF, 0X77, 0XFD, 0XFF, 0XFF, 0XF7, 0XA2, 0X5F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0X80, 0X05, 0X55, 0X55, 0XB7, 0X57, 0XFE, 0XBB, 0X7B, 0XDF, 0XFF, 0XFF, 0XFF, | |
0XDD, 0X44, 0X1F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0X80, 0X12, 0XAA, 0XAA, | |
0XD5, 0XFE, 0XF7, 0XF6, 0XDE, 0XFD, 0XF7, 0XDD, 0XFF, 0X77, 0XA8, 0X3F, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XC0, 0X09, 0X55, 0X55, 0X6A, 0XAB, 0XBE, 0XDF, 0X6F, 0X57, 0X7D, | |
0XFF, 0XFF, 0XFA, 0XD2, 0X9F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XE8, 0X02, | |
0XAA, 0XAA, 0X95, 0X76, 0XFB, 0X7B, 0XF5, 0XFD, 0XEF, 0XFF, 0XFF, 0XDF, 0X68, 0X5F, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XE0, 0X05, 0X55, 0X55, 0X6A, 0XAD, 0XAF, 0XEE, 0XDF, | |
0XAB, 0XBB, 0X6F, 0XFF, 0XFA, 0XD2, 0X3F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XE0, 0X12, 0XAA, 0XAA, 0XBD, 0XFB, 0XFF, 0X7F, 0XB5, 0X7E, 0XEF, 0XFF, 0XFF, 0XD7, 0XB0, 0XBF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XE0, 0X09, 0X55, 0X55, 0X56, 0XAD, 0X55, | |
0XFA, 0XDF, 0XAB, 0X7A, 0XBF, 0XFF, 0XFA, 0XE8, 0X3F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XF8, 0X02, 0XAA, 0XAA, 0XAD, 0X76, 0XFF, 0XAF, 0X6A, 0XFD, 0XAF, 0XD5, 0XFF, 0XFF, | |
0XB1, 0X1F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XF0, 0X05, 0X55, 0X55, 0X5A, | |
0XAD, 0X55, 0X7E, 0XDD, 0XAB, 0X7D, 0X7F, 0X5F, 0XF5, 0X74, 0X3F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XF8, 0X2A, 0XAA, 0XAA, 0XAB, 0X56, 0XBF, 0XD5, 0XB7, 0X5D, 0XD7, 0XD5, | |
0XFF, 0XDF, 0XF1, 0X7F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XF0, 0X02, 0XAA, | |
0XD5, 0X55, 0X6B, 0X55, 0X7E, 0XDA, 0XEA, 0XBA, 0XBE, 0XAB, 0XFA, 0XB8, 0X3F, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFC, 0X09, 0X55, 0X2A, 0XAA, 0X94, 0XAA, 0XAB, 0XB7, 0XB5, | |
0X57, 0X63, 0XFE, 0XFF, 0XDA, 0X97, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XF8, | |
0X02, 0XAA, 0XD5, 0XAA, 0XB5, 0X55, 0X5E, 0XAD, 0X6A, 0XD4, 0X4D, 0X57, 0XFE, 0XB4, 0X3F, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XF9, 0X15, 0X55, 0X6A, 0X55, 0X4A, 0XAA, 0XAB, | |
0X56, 0XAA, 0XA2, 0XB2, 0XED, 0XBB, 0XF9, 0X5F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFC, 0X05, 0X5A, 0XB5, 0XAA, 0XAA, 0XAA, 0XD5, 0XAB, 0X55, 0X10, 0X09, 0X56, 0XDE, 0XBC, | |
0X36, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFE, 0X0A, 0XA5, 0X6B, 0X55, 0X55, | |
0X55, 0X2B, 0X56, 0XA8, 0X80, 0X04, 0X15, 0X6B, 0XED, 0X5D, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFC, 0X15, 0X5A, 0XD6, 0XAA, 0XAA, 0X25, 0X55, 0X55, 0X50, 0X00, 0X00, 0XA5, | |
0X5F, 0X5A, 0X39, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFE, 0X0A, 0XA5, 0X7B, | |
0X55, 0X55, 0X4A, 0XAA, 0XAA, 0XA4, 0X00, 0XAA, 0X55, 0X55, 0XFC, 0XA3, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFE, 0X0D, 0X5A, 0XAD, 0XAA, 0XA0, 0XA1, 0X55, 0X55, 0X52, 0X42, | |
0X01, 0X2A, 0XAA, 0XBE, 0X67, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0X82, | |
0XA5, 0X55, 0X55, 0X0A, 0X14, 0X2A, 0XAB, 0X48, 0X00, 0X00, 0X95, 0X55, 0XED, 0X33, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0X0D, 0X5A, 0XEA, 0XA8, 0X20, 0X41, 0X55, 0X55, | |
0X50, 0X00, 0X00, 0X02, 0X2B, 0X5E, 0X77, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0X86, 0XA5, 0X55, 0X52, 0X80, 0X02, 0X0A, 0XFE, 0X80, 0X00, 0X00, 0X05, 0X55, 0XFD, 0X5B, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0X85, 0X5A, 0XAA, 0XA8, 0X00, 0X08, | |
0XAB, 0X57, 0X50, 0X00, 0X00, 0X00, 0X8A, 0XAE, 0XBF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XC2, 0XA5, 0X55, 0X40, 0X00, 0X00, 0X05, 0XFD, 0XA0, 0X00, 0X20, 0XC0, 0X25, | |
0XFF, 0X6B, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0X87, 0X5A, 0XA8, 0X90, | |
0X00, 0X00, 0X2A, 0XB7, 0X40, 0X00, 0X00, 0X20, 0X15, 0X57, 0X5F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XC2, 0XAD, 0X52, 0X20, 0X08, 0X00, 0X15, 0XFF, 0X90, 0X00, 0X02, | |
0XC4, 0X4B, 0XFE, 0XAF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFE, 0X43, 0X55, | |
0X49, 0X11, 0X00, 0X00, 0X0A, 0XFF, 0XC0, 0X08, 0X00, 0XAA, 0X2A, 0XAF, 0X5F, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFD, 0X82, 0XAA, 0X94, 0X44, 0X00, 0X00, 0X03, 0X7F, 0XA4, | |
0X08, 0X00, 0XD5, 0XD5, 0XFB, 0XCF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFD, | |
0X25, 0X55, 0X20, 0X90, 0X00, 0X00, 0X06, 0XFF, 0XC1, 0X00, 0X01, 0XAA, 0XAF, 0XAF, 0X9F, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFA, 0X82, 0XAA, 0X95, 0X00, 0X00, 0X00, 0X0B, | |
0XFF, 0XAA, 0X02, 0X2F, 0X55, 0X7A, 0XFD, 0X7F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFD, 0X69, 0X55, 0X48, 0X80, 0X00, 0X00, 0X01, 0X7F, 0XC5, 0X09, 0XD5, 0XAB, 0XAF, 0X57, | |
0XBF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFE, 0X91, 0XAA, 0XA2, 0X00, 0X00, | |
0X00, 0X05, 0XFF, 0XF2, 0XA4, 0X02, 0X56, 0XFD, 0XFF, 0XDF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0X29, 0X55, 0X04, 0X00, 0X00, 0X21, 0X01, 0XFF, 0XE5, 0X40, 0XAA, 0XAD, | |
0XAF, 0X55, 0X7B, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0X91, 0XAA, 0X50, | |
0X0C, 0X00, 0X40, 0X07, 0X7F, 0XDA, 0X02, 0X05, 0X57, 0X7F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XC8, 0XA9, 0X08, 0X04, 0X00, 0X01, 0X41, 0XFF, 0XED, 0X50, | |
0XA0, 0XAB, 0XFF, 0XEB, 0X7F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XD4, | |
0XD4, 0XA0, 0X02, 0X00, 0X00, 0X2A, 0XBF, 0XF6, 0XA8, 0X15, 0X5E, 0XDF, 0X7D, 0XBF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XE4, 0XA9, 0X00, 0X20, 0X05, 0X0A, 0X45, 0XFF, | |
0XED, 0X6A, 0XA2, 0XBB, 0XFF, 0XFB, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XD9, 0X54, 0X40, 0X8A, 0XB8, 0X00, 0X12, 0XFF, 0XDB, 0XDD, 0X5D, 0XEF, 0XFF, 0XD6, 0XBF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XE8, 0XAA, 0XA2, 0X50, 0X01, 0X01, | |
0X4B, 0X7F, 0XFD, 0X6A, 0XEE, 0XBF, 0XFF, 0XFB, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XF5, 0X55, 0X09, 0X0A, 0X80, 0X04, 0X25, 0XDF, 0XF7, 0XBF, 0XBB, 0XFF, 0XFF, | |
0XEE, 0XBF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XF8, 0X6A, 0X52, 0X54, | |
0X14, 0X29, 0X49, 0X7F, 0XEE, 0XFB, 0X77, 0XFF, 0XFF, 0XFD, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XF2, 0XAA, 0XA5, 0X21, 0X41, 0X44, 0XA6, 0XFF, 0XFB, 0XFF, 0XEF, | |
0X7F, 0XFF, 0XD7, 0X7F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XF8, 0XD5, | |
0X52, 0X94, 0XA8, 0X36, 0X92, 0XBF, 0XDD, 0X6F, 0XFF, 0XFF, 0XFF, 0XFB, 0XBF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFA, 0X2A, 0XAA, 0XAA, 0X05, 0X49, 0X6A, 0XFF, 0XF7, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XEE, 0XDF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFC, 0XD5, 0X55, 0X50, 0XA9, 0X5B, 0X55, 0X5F, 0XFE, 0XBF, 0XFF, 0XFF, 0XBF, 0XBD, 0XBF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFA, 0X6A, 0XAA, 0XAD, 0X56, 0XA4, 0XAA, | |
0XFF, 0XEB, 0XFF, 0XFF, 0XFF, 0XFF, 0XEB, 0X7F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFD, 0X2A, 0XAA, 0XA5, 0X52, 0XDB, 0X55, 0X7F, 0XFE, 0XF7, 0XFF, 0XFF, 0XFE, 0XFD, | |
0XDF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFE, 0XB5, 0X55, 0X5A, 0XAD, | |
0X76, 0XAA, 0XDF, 0XF7, 0XDF, 0XFF, 0XFF, 0XFF, 0XB7, 0X7F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFE, 0XAA, 0XAD, 0X55, 0X5B, 0XED, 0X55, 0XBF, 0XFD, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XEE, 0XDF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XF5, 0X55, 0X55, | |
0XAA, 0XAE, 0XBA, 0XAA, 0XFF, 0XF7, 0XB7, 0XFF, 0XFF, 0XFE, 0XDB, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFE, 0XAA, 0XAA, 0XD7, 0X57, 0XD5, 0X55, 0X5F, 0XFF, 0XFD, | |
0XFF, 0XFF, 0XFF, 0XFD, 0X5F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0X55, 0X55, 0XBA, 0XFD, 0X7A, 0XAA, 0XFF, 0XFA, 0XEF, 0XFF, 0XFF, 0XFE, 0XD7, 0XEF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFE, 0XAA, 0XAB, 0X65, 0XAB, 0XD5, 0X55, 0XDF, | |
0XFF, 0XDF, 0XFF, 0XFF, 0XFF, 0XFD, 0X5F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XF7, 0XDA, 0XAD, 0XBF, 0X76, 0XBA, 0XAB, 0X7F, 0XFF, 0X77, 0XFF, 0XFF, 0XFF, 0XBB, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFD, 0X4A, 0XA4, 0XD5, 0XBB, 0XD5, | |
0X55, 0XAF, 0XFF, 0XDD, 0XFF, 0XFF, 0XFE, 0XDE, 0XAF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XB5, 0X5B, 0XAA, 0XED, 0X7A, 0XAA, 0XFF, 0XFF, 0X76, 0XFF, 0XFF, 0XFF, | |
0XEB, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0X65, 0X55, 0X5F, | |
0XDB, 0XD6, 0XAB, 0XEF, 0XFF, 0XEF, 0XFF, 0XFF, 0XFF, 0XBE, 0XAF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFB, 0X9A, 0XAA, 0XAA, 0XB6, 0XB9, 0X56, 0XDF, 0XFE, 0XFB, 0XFF, | |
0XFF, 0XFD, 0XF7, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFE, 0XE5, | |
0X55, 0X7F, 0XDF, 0XD5, 0X2B, 0X7F, 0XFF, 0XFE, 0XDF, 0XFF, 0XFF, 0X7A, 0XDF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0X5A, 0XAA, 0XD5, 0X75, 0X6D, 0X55, 0XBF, 0XFF, | |
0X7B, 0X7D, 0XFF, 0XFF, 0XEF, 0X6F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFD, 0XF5, 0X55, 0XBF, 0XEF, 0XDA, 0XAB, 0XEF, 0XFE, 0XF7, 0XF7, 0XFF, 0XFD, 0XBD, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0X4A, 0XAA, 0XD5, 0X5A, 0XA5, 0X2E, | |
0XBF, 0XFF, 0XFD, 0XDF, 0XFF, 0XFF, 0XF7, 0XAF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFB, 0XF5, 0X55, 0X6F, 0XEF, 0XDA, 0XA3, 0X7F, 0XFE, 0XBF, 0X6B, 0XFF, 0XFE, 0XFD, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0X5A, 0XAB, 0X5A, 0XB5, | |
0X75, 0X5A, 0XDF, 0XFB, 0XFD, 0XFE, 0XFF, 0XFF, 0XF7, 0X57, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFD, 0XFA, 0XAA, 0XB7, 0XEF, 0XAA, 0X95, 0XBF, 0XFF, 0XBB, 0XDB, 0XFF, | |
0XFB, 0XDE, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XF7, 0X55, 0X55, | |
0X5D, 0X5A, 0XD5, 0X6A, 0XEF, 0XFA, 0XEE, 0XF6, 0XFF, 0XFF, 0XF5, 0XAF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFA, 0XAA, 0XAB, 0XEF, 0X55, 0X2B, 0X7F, 0XFF, 0X77, | |
0XFB, 0X5F, 0XFD, 0XFE, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFD, | |
0XAD, 0X55, 0X56, 0XB5, 0XAA, 0XD4, 0XAF, 0XF6, 0XAB, 0XDD, 0XEF, 0XFF, 0XDB, 0XD7, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0X7A, 0XAA, 0XAD, 0X6F, 0X6A, 0XAB, 0XFD, | |
0XFD, 0X56, 0XFF, 0XBF, 0XFF, 0XFF, 0X7F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFB, 0XD5, 0X55, 0X56, 0XBA, 0X95, 0X55, 0X57, 0XF6, 0X1F, 0XF6, 0XED, 0XEF, 0XB5, 0XDF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFE, 0XFA, 0XAA, 0XAB, 0X55, 0X55, | |
0X4A, 0XBA, 0XF8, 0X0D, 0XFB, 0X77, 0XBE, 0XFF, 0X6F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XAD, 0X55, 0X56, 0XEA, 0XAA, 0XA1, 0X55, 0XAC, 0X3E, 0XFF, 0XDA, 0XFF, | |
0XED, 0XBF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFE, 0XFD, 0X55, 0X55, | |
0X95, 0X55, 0X48, 0XAD, 0X58, 0XAB, 0XFE, 0XF7, 0XED, 0XBB, 0XEF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFB, 0XAA, 0XAA, 0XAA, 0X6A, 0XAA, 0XA0, 0X52, 0XA2, 0XBE, 0XFF, | |
0XAD, 0X7F, 0XEE, 0XBF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFE, 0XFD, | |
0X55, 0X55, 0XAA, 0X55, 0X54, 0X2A, 0XA9, 0X57, 0XAE, 0XFF, 0XB6, 0XF7, 0XDF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XD6, 0XAA, 0XAA, 0X55, 0X55, 0X42, 0X15, 0X45, | |
0X5A, 0XFB, 0XDA, 0XFF, 0XDD, 0X7F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFD, 0XBE, 0XAA, 0XAA, 0XD5, 0X55, 0X54, 0X00, 0X0A, 0XB5, 0XB6, 0XF7, 0XAD, 0XB7, 0XDF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XF7, 0X6A, 0XAA, 0XAA, 0XAA, 0XAA, 0XA0, | |
0X00, 0X05, 0X4A, 0XDD, 0XDE, 0XFF, 0X7D, 0X7F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFD, 0X55, 0X55, 0X55, 0X55, 0X14, 0X00, 0X15, 0X6E, 0XAE, 0XEF, 0X5B, 0XB7, | |
0XBF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFD, 0X56, 0XAA, 0XAA, 0XAA, | |
0XAA, 0XA1, 0X00, 0X0A, 0X93, 0X55, 0X5B, 0XED, 0XDE, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFD, 0X55, 0X55, 0X55, 0X50, 0X08, 0X00, 0X15, 0X76, 0XAA, 0XF7, | |
0X5B, 0X75, 0XBF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XF5, 0X56, 0XAA, | |
0XAA, 0XAA, 0XA5, 0X42, 0X88, 0X82, 0X8A, 0XDD, 0X2D, 0XF6, 0XDF, 0X7F, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFB, 0X55, 0X55, 0X55, 0X50, 0X28, 0X04, 0X2A, 0XD5, | |
0X55, 0XB6, 0XDF, 0X6B, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFE, | |
0XAE, 0XAA, 0XAA, 0XAA, 0X09, 0X05, 0X52, 0X85, 0X2A, 0XAA, 0XAB, 0X75, 0XBE, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFD, 0XFD, 0X55, 0X55, 0X55, 0X52, 0X28, 0X04, | |
0X29, 0X55, 0XD5, 0X56, 0XDF, 0X75, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XF7, 0X56, 0XAA, 0XAA, 0XAA, 0X04, 0X82, 0XAA, 0X85, 0X5B, 0X68, 0X2B, 0XF5, 0XDF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFD, 0XFB, 0X55, 0X55, 0X55, 0X50, | |
0X54, 0X15, 0X75, 0X6D, 0XA0, 0X0D, 0X7E, 0XF5, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XAE, 0XAA, 0XAA, 0XAA, 0X05, 0X09, 0X55, 0XAA, 0X92, 0X02, 0X92, 0XEB, | |
0X5F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFD, 0X7D, 0X55, 0X55, | |
0X54, 0XA9, 0X52, 0XAB, 0X7A, 0XA0, 0X0D, 0X37, 0XDE, 0XF5, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XF7, 0XD6, 0XA5, 0X52, 0XAA, 0X00, 0X0A, 0X54, 0X80, 0X00, 0X7A, | |
0XD5, 0X75, 0XBF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFD, 0X7B, | |
0X52, 0XAA, 0XA9, 0X40, 0X00, 0X02, 0X40, 0X03, 0XAF, 0XFF, 0XBF, 0XD7, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XAE, 0XA9, 0X55, 0X55, 0X00, 0X00, 0X00, 0X00, | |
0XAA, 0XF6, 0XEA, 0XEA, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XF5, 0X7D, 0X52, 0XAA, 0XAA, 0XA5, 0X50, 0X00, 0X05, 0X2F, 0XDF, 0XBF, 0XDF, 0XD7, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XD6, 0XA8, 0XAA, 0XAA, 0X48, 0X0A, | |
0X92, 0XAA, 0XDA, 0XBF, 0XEA, 0XB5, 0XBF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XF5, 0X7B, 0X44, 0XAA, 0XAB, 0X6E, 0XA5, 0X48, 0X55, 0X6F, 0XD6, 0XFF, 0XDF, 0XEF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XD6, 0XAA, 0X55, 0X54, | |
0X91, 0X49, 0X32, 0XAB, 0X55, 0X7F, 0XD5, 0X76, 0XB7, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFA, 0XBD, 0X50, 0XD5, 0X55, 0XB6, 0X92, 0X65, 0X54, 0XAB, 0XD5, 0XBF, | |
0XED, 0XEF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XB7, 0XEA, 0XAA, | |
0XAA, 0XAA, 0X49, 0X6A, 0X94, 0X01, 0X55, 0X7F, 0X6A, 0XBB, 0X5F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFD, 0X7D, 0X40, 0XE5, 0X55, 0X6D, 0X29, 0X4A, 0XA8, 0XAA, | |
0XAB, 0XFF, 0XDF, 0XED, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFE, 0XF7, | |
0XD6, 0XAA, 0X22, 0XAA, 0X92, 0XD6, 0XA0, 0X02, 0X15, 0XFE, 0XAD, 0X6A, 0XBF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XDE, 0XBD, 0X50, 0XE1, 0XAA, 0XB6, 0XA9, 0X0A, | |
0XA8, 0XAB, 0X55, 0XFB, 0XDF, 0XEF, 0XFF, 0XBF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFD, 0XB5, 0XEA, 0XAA, 0XA2, 0X55, 0X49, 0X56, 0XD0, 0X02, 0X55, 0XFF, 0X6F, 0X75, 0X7D, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFE, 0XFE, 0XB5, 0X50, 0XE1, 0X55, 0X6D, | |
0X52, 0X4A, 0XA9, 0X2E, 0XAB, 0XFB, 0XDF, 0XBF, 0XF9, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XEF, 0XDB, 0XDE, 0XAA, 0X32, 0XAA, 0X92, 0XAD, 0XB4, 0X02, 0XDB, 0XFE, 0XDF, 0X6A, | |
0XEF, 0XFE, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFE, 0XB6, 0XB5, 0X50, 0XE1, | |
0X2A, 0XB6, 0XA9, 0X29, 0X56, 0XB7, 0X7F, 0XF6, 0XFD, 0XBF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFD, 0XFD, 0XED, 0X4A, 0X42, 0X55, 0X49, 0X56, 0XD4, 0X8B, 0XFF, 0XFB, | |
0X7D, 0XAB, 0XFF, 0XFF, 0XFF, 0XFB, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0X56, 0XB6, | |
0XA1, 0X6B, 0X15, 0X6D, 0X52, 0X6A, 0XFD, 0XFF, 0XFF, 0XDF, 0XFD, 0X6F, 0XFF, 0XFF, 0XFE, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XEF, 0XFB, 0XDD, 0X54, 0X51, 0X4A, 0X92, 0XAD, 0X9F, 0X57, | |
0X7F, 0XFF, 0XFD, 0X57, 0XBF, 0XFF, 0XFF, 0XFF, 0XDF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFA, | |
0XAE, 0XBA, 0XA9, 0X6A, 0X92, 0XB6, 0XAB, 0X7A, 0XFF, 0XFF, 0XFF, 0XFB, 0XED, 0X7F, 0XFF, 0XFF, | |
0XFF, 0XF7, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XDF, 0XFB, 0XED, 0X52, 0X45, 0X45, 0X49, 0X55, | |
0XD7, 0XB7, 0XFF, 0XFF, 0XF6, 0XBB, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFB, 0XAD, 0X76, 0XA9, 0X2A, 0XA1, 0X6E, 0XAA, 0XFA, 0XFF, 0XFF, 0XFF, 0XDB, 0XDE, 0XDF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFE, 0XF7, 0XDD, 0X46, 0XD5, 0X14, | |
0X91, 0X57, 0XAF, 0XFF, 0XFF, 0XFF, 0XFE, 0XAB, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XDB, 0XDE, 0XBA, 0X9D, 0X29, 0X68, 0X36, 0XAD, 0X7A, 0XDD, 0XFF, 0XFF, 0XF5, | |
0XBF, 0XBF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFE, 0XB5, 0XED, 0X75, | |
0X56, 0X82, 0XA9, 0X57, 0XD7, 0XBF, 0XFF, 0XFE, 0XAE, 0X6D, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XF7, 0XFE, 0XB5, 0XD5, 0X49, 0X51, 0X15, 0X6A, 0XFA, 0XEA, 0XBD, | |
0XD7, 0XF5, 0XBF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFD, 0XAB, | |
0XDD, 0XDA, 0XB2, 0XA4, 0X8A, 0X95, 0XAF, 0XBF, 0XEF, 0XFD, 0X5A, 0XEB, 0X7F, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0X7E, 0XB3, 0X96, 0XA5, 0X49, 0X22, 0XAB, 0X5D, | |
0X75, 0X5D, 0XAA, 0XB5, 0XDF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XEB, 0XD5, 0XEF, 0XB9, 0X5A, 0XA4, 0X85, 0X54, 0XAA, 0XDA, 0XF7, 0X7F, 0X6B, 0X7B, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFE, 0XFE, 0XBF, 0XAE, 0XA5, 0X52, 0X51, | |
0X56, 0XAF, 0X6D, 0X2B, 0XA9, 0X25, 0XAF, 0X7F, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XAB, 0XFF, 0XD5, 0X5A, 0XAD, 0X08, 0XA9, 0X52, 0XDA, 0XD5, 0X76, 0XD6, 0XFB, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XED, 0XFF, 0XFF, 0XDA, 0XA5, | |
0X50, 0X52, 0X4B, 0X56, 0X95, 0X2A, 0XD4, 0XAD, 0XEF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0X57, 0XFF, 0XED, 0X5A, 0XAD, 0X04, 0X14, 0XA9, 0X6A, 0XAA, 0XAB, | |
0X5B, 0X7B, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XEE, 0XAA, 0XA2, 0XA2, 0X8A, 0X94, 0XAA, 0XAA, 0XA8, 0XAD, 0XBF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XDD, 0XDF, 0XFF, 0XF3, 0X55, 0X5D, 0X08, 0X25, 0X4B, 0X55, | |
0X55, 0X55, 0X77, 0XEE, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XF7, | |
0XBF, 0XFF, 0XFE, 0XB5, 0X52, 0X51, 0X40, 0X52, 0XAA, 0X95, 0X22, 0XAD, 0X5F, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XDF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0X7F, 0XFF, 0XFB, 0X4A, 0XAD, 0XAA, 0X08, | |
0X2C, 0X55, 0X4A, 0X55, 0X7B, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFB, 0XFF, 0XFF, 0XFD, 0XB5, 0X54, 0X45, 0X42, 0X82, 0XA0, 0XA1, 0X2A, 0XAE, 0XBB, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFD, 0XFF, 0XFF, 0XFE, 0XEA, 0XAB, | |
0X90, 0X28, 0X50, 0X15, 0X14, 0XD5, 0X7B, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XDF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XDF, 0XFF, 0XFF, 0XFF, 0X56, 0XAA, 0X25, 0X41, 0X05, 0X42, 0XA5, 0XAA, 0XD7, | |
0X77, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XF7, 0XFF, 0XFF, 0XFF, | |
0XB9, 0X55, 0XD2, 0X14, 0X50, 0X15, 0X5A, 0X55, 0X7D, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, 0XD6, 0XAA, 0X55, 0X42, 0X0A, 0XAA, 0XA5, | |
0X55, 0XAF, 0XBB, 0XFF, 0XFF, 0XFF, 0XFF, 0XFF, | |
}; | |
// include library, include base class, make path known | |
#include <FS.h> | |
#include <GxEPD.h> | |
#include <time.h> | |
#define min(a,b) ((a)<(b)?(a):(b)) | |
//#include "IMG_0001.h" | |
// select the display class to use, only one | |
#include <GxGDEP015OC1/GxGDEP015OC1.cpp> | |
// uncomment next line for drawBitmap() test, (consumes RAM on ESP8266) | |
//#include GxEPD_BitmapExamples | |
// FreeFonts from Adafruit_GFX | |
#include <Fonts/FreeSans9pt7b.h> | |
#include <Fonts/FreeMonoBold12pt7b.h> | |
#include <Fonts/FreeMonoBold18pt7b.h> | |
#include <Fonts/FreeMonoBold24pt7b.h> | |
#include <GxIO/GxIO_SPI/GxIO_SPI.cpp> | |
#include <GxIO/GxIO.cpp> | |
#if defined(ESP8266) | |
// generic/common.h | |
//static const uint8_t SS = 15; | |
//static const uint8_t MOSI = 13; | |
//static const uint8_t MISO = 12; | |
//static const uint8_t SCK = 14; | |
// pins_arduino.h | |
//static const uint8_t D8 = 15; | |
//static const uint8_t D7 = 13; | |
//static const uint8_t D6 = 12; | |
//static const uint8_t D5 = 14; | |
// GxIO_SPI(SPIClass& spi, int8_t cs, int8_t dc, int8_t rst = -1, int8_t bl = -1); | |
GxIO_Class io(SPI, SS, D3, D4); // arbitrary selection of D3, D4 selected for default of GxEPD_Class | |
// GxGDEP015OC1(GxIO& io, uint8_t rst = D4, uint8_t busy = D2); | |
GxEPD_Class display(io); // default selection of D4, D2 | |
// my IoT connection, busy on MISO | |
//GxEPD_Class display(io, D4, D0); | |
#endif | |
const char* host = "davidjwatts.com"; | |
String channelNameTW = "mrdavidjwatts"; | |
bool haveBearerToken = false; | |
String channelNameIS = "davidjwatts"; | |
const char* channelName = "mrdavidjwatts"; | |
#define CHANNEL_ID "UCLhStqjQbgTyphK0dsXi0ZQ" | |
String countReturn; | |
boolean started = false; | |
boolean started2 = false; | |
boolean started3 = false; | |
boolean started4 = false; | |
String subsCount = ""; | |
int instagram = 0; | |
String tempInsta = ""; | |
String timeReturn; | |
int tempSubs = 0; | |
int tempFollowers = 0; | |
int followers = 0; | |
int firstInsta = 0; | |
int firstTwit = 0; | |
int firstYT = 0; | |
String firstTimeVal; | |
boolean firstTime = true; | |
boolean displayIncDec = false; | |
#include "InstagramStats.h" | |
#include <TwitterApi.h> | |
#include <YoutubeApi.h> | |
#define BEARER_TOKEN "Grrrr" | |
#define API_KEY "API KEY" | |
#include <ESP8266WiFi.h> | |
#include "JsonStreamingParser.h" | |
#include <WiFiClientSecure.h> | |
#include <ESP8266WiFiMulti.h> | |
#include <ESP8266HTTPClient.h> | |
//needed for library | |
#include <DNSServer.h> | |
#include <ESP8266WebServer.h> | |
#include <WiFiManager.h> //https://github.com/tzapu/WiFiManager | |
ESP8266WiFiMulti WiFiMulti; | |
WiFiClientSecure client; | |
YoutubeApi api(API_KEY, client); | |
InstagramStats instaStats(client); | |
TwitterApi api2(client); | |
HTTPClient http; //Declare an object of class HTTPClient | |
unsigned long api_mtbs = 600000; //mean time between api requests | |
unsigned long api_lasttime = 0; //last time api request has been done | |
unsigned long previousMillis = 0; // will store last time LED was updated | |
// constants won't change: | |
const long interval = 10000; // interval at which to blink (milliseconds) | |
void setup() | |
{ | |
// put your setup code here, to run once: | |
Serial.begin(115200); | |
delay(10); | |
display.init(); | |
display.setRotation(0); | |
WiFiManager wifiManager; | |
wifiManager.setTimeout(180); | |
delay(100); | |
//WiFiMulti.addAP(ssidWifi, passwordWifi); | |
if(!wifiManager.autoConnect("Social_Counter")) { | |
Serial.println("failed to connect and hit timeout"); | |
delay(3000); | |
//reset and try again, or maybe put it to deep sleep | |
ESP.reset(); | |
delay(5000); | |
} | |
//if you get here you have connected to the WiFi | |
Serial.println("connected...yeey :)"); | |
Serial.println(); | |
Serial.println(); | |
Serial.print("Wait for WiFi... "); | |
Serial.println(""); | |
Serial.println("WiFi connected"); | |
Serial.println("IP address: "); | |
Serial.println(WiFi.localIP()); | |
api2.setBearerToken(BEARER_TOKEN); | |
haveBearerToken = true; | |
} | |
void loop() | |
{ | |
countReturn = ""; | |
timeReturn = ""; | |
tempSubs = 0; | |
tempFollowers = 0; | |
http.begin("http://davidjwatts.com/youtube/subcount/time.php"); //Specify request destination | |
int httpCode = http.GET(); //Send the request | |
if (httpCode > 0) { //Check the returning code | |
timeReturn = http.getString(); //Get the request response payload | |
Serial.println(timeReturn); //Print the response payload | |
} | |
http.end(); //Close connection | |
getInstagramStatsForUser(); | |
getTwitterStats(channelNameTW); | |
if(api.getChannelStatistics(CHANNEL_ID)) | |
{ | |
subsCount = api.channelStats.subscriberCount; | |
Serial.print("Subscriber Count: "); | |
Serial.println(subsCount); | |
//Serial.println(api.channelStats.subscriberCount); | |
//Serial.print("View Count: "); | |
//Serial.println(api.channelStats.viewCount); | |
// Serial.print("Comment Count: "); | |
//Serial.println(api.channelStats.commentCount); | |
//Serial.print("Video Count: "); | |
//Serial.println(api.channelStats.videoCount); | |
// Probably not needed :) | |
//Serial.print("hiddenSubscriberCount: "); | |
//Serial.println(api.channelStats.hiddenSubscriberCount); | |
//Serial.println("------------------------"); | |
} | |
//digitalWrite(D8, LOW); | |
//showInterwebs(); | |
showFace(); | |
delay(1000); | |
// | |
if(displayIncDec == false){ | |
showSubs(); | |
displayIncDec = true; | |
} | |
else{ | |
showIncDec(); | |
displayIncDec = false; | |
} | |
//showSubs(); | |
if(firstTime == true){ | |
if(instagram > 0 && subsCount.toInt() > 0 && tempFollowers > 0){ | |
firstInsta = instagram; | |
firstTwit = tempFollowers; | |
firstYT = subsCount.toInt(); | |
firstTimeVal = timeReturn; | |
firstTime = false; | |
} | |
} | |
Serial.println(instagram - firstInsta); | |
Serial.println(subsCount.toInt() - firstYT); | |
Serial.println(tempFollowers - firstTwit); | |
//ESP.deepSleep(SLEEP_LENGTH * 60*1000*100); | |
delay(300000); | |
} | |
void showSubs() { | |
display.fillScreen(GxEPD_WHITE); | |
//display.update(); | |
display.setTextColor(GxEPD_BLACK); | |
display.setFont(&FreeSans9pt7b); | |
display.drawBitmap(youtube, 5, 15, 32, 28, GxEPD_BLACK); | |
display.setCursor(41, 18); | |
//display.drawBitmap(youtube, 0, 0, 50, 50, GxEPD_BLACK); | |
//display.drawBitmap(youtube, 0, 0, 50, 50, GxEPD_BLACK); // new signature | |
//display.println("Youtube"); | |
//display.setCursor(41, 100); | |
display.drawBitmap(insta, 5, 60, 32, 28, GxEPD_BLACK); | |
display.drawBitmap(twitter, 5, 110, 32, 28, GxEPD_BLACK); | |
//display.println("Twitter"); | |
display.setFont(&FreeMonoBold24pt7b); | |
display.setCursor(40, 88); | |
//display.println(); | |
display.println(instagram); | |
display.setCursor(40, 43); | |
//display.println(); | |
display.println(subsCount); | |
display.setCursor(40, 138); | |
display.println(tempFollowers); | |
//display.fillRect(0, 75, 200, 3, GxEPD_BLACK); | |
display.fillRect(0, 160, 200, 3, GxEPD_BLACK); | |
display.setFont(&FreeSans9pt7b); | |
display.setCursor(5, 185); | |
display.println(timeReturn); | |
display.update(); | |
} | |
void showIncDec() { | |
display.fillScreen(GxEPD_WHITE); | |
//display.update(); | |
display.setTextColor(GxEPD_BLACK); | |
display.setFont(&FreeSans9pt7b); | |
display.drawBitmap(youtube, 5, 15, 32, 28, GxEPD_BLACK); | |
display.setCursor(41, 18); | |
//display.drawBitmap(youtube, 0, 0, 50, 50, GxEPD_BLACK); | |
//display.drawBitmap(youtube, 0, 0, 50, 50, GxEPD_BLACK); // new signature | |
//display.println("Youtube"); | |
//display.setCursor(41, 100); | |
display.drawBitmap(insta, 5, 60, 32, 28, GxEPD_BLACK); | |
display.drawBitmap(twitter, 5, 110, 32, 28, GxEPD_BLACK); | |
//display.println("Twitter"); | |
display.setFont(&FreeMonoBold24pt7b); | |
display.setCursor(40, 88); | |
//display.println(); | |
display.println(instagram - firstInsta); | |
display.setCursor(40, 43); | |
//display.println(); | |
display.println(subsCount.toInt() - firstYT); | |
display.setCursor(40, 138); | |
display.println(tempFollowers - firstTwit); | |
//display.fillRect(0, 75, 200, 3, GxEPD_BLACK); | |
display.fillRect(0, 160, 200, 3, GxEPD_BLACK); | |
display.setFont(&FreeSans9pt7b); | |
display.setCursor(5, 185); | |
display.println(firstTimeVal); | |
display.update(); | |
} | |
void showFace() { | |
display.fillScreen(GxEPD_WHITE); | |
display.update(); | |
display.drawBitmap(david, 0, 0, 200, 200, GxEPD_BLACK); | |
// display.drawBitmap(dmu, 0, 0, 200, 200, GxEPD_BLACK); | |
display.update(); | |
} | |
void getInstagramStatsForUser() { | |
//Serial.println("Getting instagram user stats for " + channelNameIS ); | |
InstagramUserStats response = instaStats.getUserStats(channelNameIS); | |
//Serial.println("Response:"); | |
Serial.print("Instagram: "); | |
Serial.println(response.followedByCount); | |
instagram = response.followedByCount; | |
} | |
void getTwitterStats(String name) { | |
//Serial.println("Getting twitter stats for " + name); | |
String responseString = api2.getUserStatistics(name); | |
//Serial.println(responseString); | |
DynamicJsonBuffer jsonBuffer; | |
JsonObject& response = jsonBuffer.parseObject(responseString); | |
if (response.success()) { | |
//Serial.println("parsed Json"); | |
tempFollowers = response["followers_count"]; | |
Serial.print("Twitter: "); | |
Serial.println(tempFollowers); | |
// Use Arduino Json to parse the data | |
} else { | |
Serial.println("Failed to parse Json"); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment