first commit
This commit is contained in:
commit
5893b00dd2
1669 changed files with 1982740 additions and 0 deletions
212
libraries/M5GFX/examples/Basic/AnalogMeter/AnalogMeter.ino
Normal file
212
libraries/M5GFX/examples/Basic/AnalogMeter/AnalogMeter.ino
Normal file
|
|
@ -0,0 +1,212 @@
|
|||
|
||||
#include <Arduino.h>
|
||||
|
||||
#include <M5GFX.h>
|
||||
M5GFX display;
|
||||
|
||||
//#include <M5UnitOLED.h>
|
||||
//M5UnitOLED display; // default setting
|
||||
//M5UnitOLED display ( 21, 22, 400000 ); // SDA, SCL, FREQ
|
||||
|
||||
//#include <M5UnitLCD.h>
|
||||
//M5UnitLCD display; // default setting
|
||||
//M5UnitLCD display ( 21, 22, 400000 ); // SDA, SCL, FREQ
|
||||
|
||||
//#include <M5UnitGLASS2.h>
|
||||
//M5UnitGLASS2 display; // default setting
|
||||
//M5UnitGLASS2 display ( 21, 22, 400000 ); // SDA, SCL, FREQ
|
||||
|
||||
//#include <M5AtomDisplay.h>
|
||||
//M5AtomDisplay display; // default setting
|
||||
//M5AtomDisplay display ( 320, 180 ); // width, height
|
||||
|
||||
|
||||
static constexpr float deg_to_rad = 0.017453292519943295769236907684886;
|
||||
static constexpr int TFT_GREY = 0x5AEB;
|
||||
static constexpr int LOOP_PERIOD = 35; // Display updates every 35 ms
|
||||
|
||||
int value[6] = {0, 0, 0, 0, 0, 0};
|
||||
int old_value[6] = { -1, -1, -1, -1, -1, -1};
|
||||
int liner_count = 6;
|
||||
int d = 0;
|
||||
|
||||
int liner_height;
|
||||
int meter_height;
|
||||
int needle_x;
|
||||
int needle_y;
|
||||
int needle_r;
|
||||
int osx, osy; // Saved x & y coords
|
||||
uint32_t updateTime = 0; // time for next update
|
||||
|
||||
void plotNeedle(int value)
|
||||
{
|
||||
float sdeg = map(value, 0, 100, -135, -45); // Map value to angle
|
||||
// Calcualte tip of needle coords
|
||||
float sx = cosf(sdeg * deg_to_rad);
|
||||
float sy = sinf(sdeg * deg_to_rad);
|
||||
|
||||
display.setClipRect(0, 0, display.width(), meter_height - 5);
|
||||
// Erase old needle image
|
||||
display.drawLine(needle_x - 1, needle_y, osx - 1, osy, TFT_WHITE);
|
||||
display.drawLine(needle_x + 1, needle_y, osx + 1, osy, TFT_WHITE);
|
||||
display.drawLine(needle_x , needle_y, osx , osy, TFT_WHITE);
|
||||
|
||||
// Re-plot text under needle
|
||||
display.setTextColor(TFT_BLACK);
|
||||
if (display.width() > 100)
|
||||
{
|
||||
display.setFont(&fonts::Font4);
|
||||
display.setTextDatum(textdatum_t::middle_center);
|
||||
display.drawString("%RH", needle_x, needle_y>>1);
|
||||
}
|
||||
|
||||
display.setFont(&fonts::Font2);
|
||||
display.setTextDatum(textdatum_t::bottom_left);
|
||||
display.drawString("%RH", display.width() - 36, meter_height - 8);
|
||||
|
||||
display.setTextColor(TFT_BLACK, TFT_WHITE);
|
||||
display.setTextDatum(textdatum_t::bottom_right);
|
||||
display.drawNumber(value, 36, meter_height - 8);
|
||||
|
||||
|
||||
// Store new needle end coords for next erase
|
||||
osx = roundf(sx * needle_r) + needle_x;
|
||||
osy = roundf(sy * needle_r) + needle_y;
|
||||
|
||||
// Draw the needle in the new postion, magenta makes needle a bit bolder
|
||||
// draws 3 lines to thicken needle
|
||||
display.drawLine(needle_x - 1, needle_y, osx - 1, osy, TFT_RED);
|
||||
display.drawLine(needle_x + 1, needle_y, osx + 1, osy, TFT_RED);
|
||||
display.drawLine(needle_x , needle_y, osx , osy, TFT_MAGENTA);
|
||||
|
||||
display.clearClipRect();
|
||||
}
|
||||
|
||||
void analogMeter()
|
||||
{
|
||||
display.fillRect(0, 0, display.width() , meter_height , TFT_WHITE);
|
||||
display.drawRect(1, 1, display.width()-2 , meter_height-2, TFT_BLACK);
|
||||
|
||||
int r3 = needle_y * 13 / 15;
|
||||
int r2 = needle_y * 12 / 15;
|
||||
int r1 = needle_y * 11 / 15;
|
||||
needle_r = r1 - 3;
|
||||
display.fillArc(needle_x, needle_y, r1, r3, 270, 292, TFT_GREEN);
|
||||
display.fillArc(needle_x, needle_y, r1, r3, 292, 315, TFT_ORANGE);
|
||||
display.fillArc(needle_x, needle_y, r1, r1, 225, 315, TFT_BLACK);
|
||||
|
||||
display.setTextColor(TFT_BLACK);
|
||||
display.setFont(&fonts::Font2);
|
||||
display.setTextDatum(textdatum_t::bottom_center);
|
||||
for (int i = 0; i <= 20; i++)
|
||||
{
|
||||
display.fillArc(needle_x, needle_y, r1, (i % 5) ? r2 : r3, 225 + i * 4.5f, 225 + i * 4.5f, TFT_BLACK);
|
||||
if (0 == (i % 5) && display.width() > 100)
|
||||
{
|
||||
display.drawNumber(i * 5, needle_x - cosf((45+i*4.5) * deg_to_rad) * r3
|
||||
, needle_y - sinf((45+i*4.5) * deg_to_rad) * r3 - 2);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void plotLinear(const char *label, int x, int y, int w, int h)
|
||||
{
|
||||
display.drawRect(x, y, w, h, TFT_GREY);
|
||||
display.fillRect(x + 2, y + 18, w - 3, h - 36, TFT_WHITE);
|
||||
display.setTextColor(TFT_CYAN, TFT_BLACK);
|
||||
display.setTextDatum(textdatum_t::middle_center);
|
||||
display.setFont(&fonts::Font2);
|
||||
display.setTextPadding(display.textWidth("100"));
|
||||
display.drawString(label, x + w / 2, y + 10);
|
||||
|
||||
int plot_height = h - (19*2);
|
||||
|
||||
for (int i = 0; i <= 10; i ++)
|
||||
{
|
||||
display.drawFastHLine(x + w/2, y + 19 + (i+1) * plot_height / 12, w*(3+(0==(i%5)))/16, TFT_BLACK);
|
||||
}
|
||||
}
|
||||
|
||||
void plotPointer(void)
|
||||
{
|
||||
display.setTextColor(TFT_GREEN, TFT_BLACK);
|
||||
display.setTextDatum(textdatum_t::middle_right);
|
||||
|
||||
int plot_height = liner_height - (19*2);
|
||||
int pw = (display.width() / liner_count) / 3;
|
||||
|
||||
for (int i = 0; i < liner_count; i++)
|
||||
{
|
||||
display.drawNumber(value[i], display.width() * (i + 0.8) / liner_count, display.height() - 10);
|
||||
int dx = display.width() * i / liner_count + 3;
|
||||
int dy = meter_height + 19 + (old_value[i]+10) * plot_height / 120;
|
||||
display.fillTriangle(dx, dy - 5, dx, dy + 5, dx + pw, dy, TFT_WHITE);
|
||||
old_value[i] = value[i];
|
||||
dy = meter_height + 19 + (old_value[i]+10) * plot_height / 120;
|
||||
display.fillTriangle(dx, dy - 5, dx, dy + 5, dx + pw, dy, TFT_RED);
|
||||
}
|
||||
}
|
||||
|
||||
void setup(void)
|
||||
{
|
||||
display.begin();
|
||||
display.setEpdMode(epd_mode_t::epd_fastest);
|
||||
if (display.width() > display.height())
|
||||
{
|
||||
display.setRotation(display.getRotation() ^ 1);
|
||||
}
|
||||
|
||||
display.startWrite();
|
||||
display.fillScreen(TFT_BLACK);
|
||||
|
||||
liner_height = display.height() * 3 / 5;
|
||||
meter_height = display.height() * 2 / 5;
|
||||
needle_x = display.width() / 2;
|
||||
needle_y = (meter_height*2 + display.width()) / 3;
|
||||
osx = needle_x;
|
||||
osy = needle_y;
|
||||
liner_count = std::min(6, display.width() / 40);
|
||||
|
||||
analogMeter(); // Draw analogue meter
|
||||
int w = display.width() / liner_count;
|
||||
char name[] = "A0";
|
||||
// Draw linear meters
|
||||
for (int i = 0; i < liner_count; i++)
|
||||
{
|
||||
name[1] = '0' + i;
|
||||
plotLinear(name, display.width() * i / liner_count, meter_height, w, liner_height);
|
||||
}
|
||||
display.endWrite();
|
||||
|
||||
updateTime = millis(); // Next update time
|
||||
}
|
||||
|
||||
void loop(void)
|
||||
{
|
||||
auto msec = millis();
|
||||
if (updateTime <= msec)
|
||||
{
|
||||
d = (msec >> 3) % 360;
|
||||
|
||||
// Create a Sine wave for testing
|
||||
value[0] = 50 + roundf(50 * sinf((d + 0) * deg_to_rad));
|
||||
value[1] = 50 + roundf(50 * sinf((d + 60) * deg_to_rad));
|
||||
value[2] = 50 + roundf(50 * sinf((d + 120) * deg_to_rad));
|
||||
value[3] = 50 + roundf(50 * sinf((d + 180) * deg_to_rad));
|
||||
value[4] = 50 + roundf(50 * sinf((d + 240) * deg_to_rad));
|
||||
value[5] = 50 + roundf(50 * sinf((d + 300) * deg_to_rad));
|
||||
|
||||
//value[0] = map(analogRead(36), 0, 4095, 0, 100); // Test with value form GPIO36
|
||||
|
||||
if (!display.displayBusy())
|
||||
{
|
||||
updateTime = msec + LOOP_PERIOD;
|
||||
//unsigned long t = millis();
|
||||
display.startWrite();
|
||||
plotPointer();
|
||||
plotNeedle(roundf(value[0]));
|
||||
display.endWrite();
|
||||
//Serial.println(millis()-t); // Print time taken for meter update
|
||||
}
|
||||
}
|
||||
}
|
||||
103
libraries/M5GFX/examples/Basic/BarGraph/BarGraph.ino
Normal file
103
libraries/M5GFX/examples/Basic/BarGraph/BarGraph.ino
Normal file
|
|
@ -0,0 +1,103 @@
|
|||
|
||||
#include <M5GFX.h>
|
||||
M5GFX display;
|
||||
|
||||
//#include <M5UnitOLED.h>
|
||||
//M5UnitOLED display; // default setting
|
||||
//M5UnitOLED display ( 21, 22, 400000 ); // SDA, SCL, FREQ
|
||||
|
||||
//#include <M5UnitLCD.h>
|
||||
//M5UnitLCD display; // default setting
|
||||
//M5UnitLCD display ( 21, 22, 400000 ); // SDA, SCL, FREQ
|
||||
|
||||
//#include <M5UnitGLASS2.h>
|
||||
//M5UnitGLASS2 display; // default setting
|
||||
//M5UnitGLASS2 display ( 21, 22, 400000 ); // SDA, SCL, FREQ
|
||||
|
||||
// #include <M5AtomDisplay.h>
|
||||
// M5AtomDisplay display;
|
||||
|
||||
static constexpr size_t BAR_COUNT = 64;
|
||||
static int max_y[BAR_COUNT];
|
||||
static int prev_y[BAR_COUNT];
|
||||
static uint32_t colors[BAR_COUNT];
|
||||
|
||||
void setup(void)
|
||||
{
|
||||
display.init();
|
||||
display.startWrite();
|
||||
display.fillScreen(TFT_BLACK);
|
||||
|
||||
if (display.isEPD())
|
||||
{
|
||||
display.setEpdMode(epd_mode_t::epd_fastest);
|
||||
}
|
||||
if (display.width() < display.height())
|
||||
{
|
||||
display.setRotation(display.getRotation() ^ 1);
|
||||
}
|
||||
|
||||
for (int x = 0; x < BAR_COUNT; ++x)
|
||||
{
|
||||
prev_y[x] = display.height();
|
||||
max_y[x] = display.height();
|
||||
int r=0,g=0,b=0;
|
||||
switch (x >> 4)
|
||||
{
|
||||
case 0:
|
||||
b = 255;
|
||||
g = x*0x11;
|
||||
break;
|
||||
case 1:
|
||||
b = 255 - (x&15)*0x11;
|
||||
g = 255;
|
||||
break;
|
||||
case 2:
|
||||
g = 255;
|
||||
r = (x&15)*0x11;
|
||||
break;
|
||||
case 3:
|
||||
r = 255;
|
||||
g = 255 - (x&15)*0x11;
|
||||
break;
|
||||
}
|
||||
colors[x] = display.color888(r,g,b);
|
||||
}
|
||||
}
|
||||
|
||||
void loop(void)
|
||||
{
|
||||
int h = display.height();
|
||||
|
||||
static int i;
|
||||
++i;
|
||||
display.waitDisplay();
|
||||
for (int x = 0; x < BAR_COUNT; ++x)
|
||||
{
|
||||
int y = (h>>1) - (sinf((float)((x-24)*i) / 3210.0f) + sinf((float)((x-40)*i) / 1234.0f)) * (h>>2);
|
||||
|
||||
int xpos = x * display.width() / BAR_COUNT;
|
||||
int w = ((x+1) * display.width() / BAR_COUNT) - xpos - 1;
|
||||
if (max_y[x]+1 >= y) { max_y[x] = y-1; }
|
||||
else
|
||||
{
|
||||
if ((i & 3) ==0 )
|
||||
{
|
||||
display.fillRect(xpos, max_y[x]-3, w, 1, TFT_BLACK);
|
||||
max_y[x]++;
|
||||
}
|
||||
}
|
||||
display.fillRect(xpos, max_y[x]-3, w, 3, TFT_WHITE);
|
||||
if (prev_y[x] < y)
|
||||
{
|
||||
display.fillRect(xpos, prev_y[x], w, y - prev_y[x], TFT_BLACK);
|
||||
}
|
||||
else
|
||||
{
|
||||
display.fillRect(xpos, y, w, prev_y[x] - y, colors[x]);
|
||||
}
|
||||
prev_y[x] = y;
|
||||
}
|
||||
display.display();
|
||||
}
|
||||
|
||||
141
libraries/M5GFX/examples/Basic/GameOfLife/GameOfLife.ino
Normal file
141
libraries/M5GFX/examples/Basic/GameOfLife/GameOfLife.ino
Normal file
|
|
@ -0,0 +1,141 @@
|
|||
//The Game of Life, also known simply as Life, is a cellular automaton
|
||||
//devised by the British mathematician John Horton Conway in 1970.
|
||||
// https://en.wikipedia.org/wiki/Conway's_Game_of_Life
|
||||
|
||||
#include <Arduino.h>
|
||||
|
||||
#include <M5GFX.h>
|
||||
M5GFX display;
|
||||
|
||||
//#include <M5UnitOLED.h>
|
||||
//M5UnitOLED display; // default setting
|
||||
//M5UnitOLED display ( 21, 22, 400000 ); // SDA, SCL, FREQ
|
||||
|
||||
//#include <M5UnitLCD.h>
|
||||
//M5UnitLCD display; // default setting
|
||||
//M5UnitLCD display ( 21, 22, 400000 ); // SDA, SCL, FREQ
|
||||
|
||||
//#include <M5UnitGLASS2.h>
|
||||
//M5UnitGLASS2 display; // default setting
|
||||
//M5UnitGLASS2 display ( 21, 22, 400000 ); // SDA, SCL, FREQ
|
||||
|
||||
//#include <M5AtomDisplay.h>
|
||||
//M5AtomDisplay display;
|
||||
|
||||
M5Canvas canvas[2];
|
||||
|
||||
void setup(void)
|
||||
{
|
||||
display.begin();
|
||||
display.setColorDepth(8);
|
||||
display.setEpdMode(epd_mode_t::epd_fastest);
|
||||
|
||||
if (display.width() < display.height())
|
||||
{
|
||||
display.setRotation(display.getRotation() ^ 1);
|
||||
display.setPivot(display.width() /2 -0.5, display.height() /2 - 0.5);
|
||||
}
|
||||
|
||||
int z = 0;
|
||||
int width;
|
||||
do
|
||||
{
|
||||
width = display.width() / ++z;
|
||||
} while (width > 192);
|
||||
|
||||
z = 0;
|
||||
int height;
|
||||
do
|
||||
{
|
||||
height = display.height() / ++z;
|
||||
} while (height > 160);
|
||||
|
||||
for (int i = 0; i < 2; i++)
|
||||
{
|
||||
canvas[i].setColorDepth(8);
|
||||
canvas[i].createSprite(width, height);
|
||||
canvas[i].createPalette();
|
||||
canvas[i].setPaletteColor(1, TFT_WHITE);
|
||||
canvas[i].setPivot(canvas[i].width() /2 -0.5, canvas[i].height() /2 - 0.5);
|
||||
}
|
||||
canvas[0].setTextColor(1);
|
||||
canvas[0].setTextDatum(textdatum_t::bottom_center);
|
||||
canvas[0].drawString("Conway's", canvas[0].width() >> 1, canvas[0].height() >> 1);
|
||||
canvas[0].setTextDatum(textdatum_t::top_center);
|
||||
canvas[0].drawString("Game of Life", canvas[0].width() >> 1, canvas[0].height() >> 1);
|
||||
canvas[0].pushRotateZoom(&display, 0, (float)display.width() / canvas[0].width(), (float)display.height() / canvas[0].height());
|
||||
delay(2000);
|
||||
display.clear();
|
||||
}
|
||||
|
||||
void loop(void)
|
||||
{
|
||||
bool flip = false;
|
||||
int width = canvas[flip].width();
|
||||
int height = canvas[flip].height();
|
||||
int xz = display.width() / width;
|
||||
int yz = display.height() / height;
|
||||
|
||||
int y = 1;
|
||||
do
|
||||
{
|
||||
int x = 1;
|
||||
do
|
||||
{
|
||||
if (random(6) == 0) { canvas[flip].drawPixel(x, y, 1); }
|
||||
} while (++x < width - 1);
|
||||
} while (++y < height - 1);
|
||||
|
||||
int diff;
|
||||
display.startWrite();
|
||||
do
|
||||
{
|
||||
flip = !flip;
|
||||
diff = 0;
|
||||
|
||||
auto old_buf = (uint8_t*)canvas[!flip].getBuffer();
|
||||
auto new_buf = (uint8_t*)canvas[ flip].getBuffer();
|
||||
int width = canvas[flip].width();
|
||||
int height = canvas[flip].height();
|
||||
int py;
|
||||
int y = height - 1;
|
||||
int ny = 0;
|
||||
do
|
||||
{
|
||||
py = y;
|
||||
y = ny;
|
||||
if (++ny == height) ny = 0;
|
||||
|
||||
int px;
|
||||
int x = width - 1;
|
||||
int nx = 0;
|
||||
do
|
||||
{
|
||||
px = x;
|
||||
x = nx;
|
||||
if (++nx == width) nx = 0;
|
||||
|
||||
int neighbors = old_buf[px + py * width]
|
||||
+ old_buf[ x + py * width]
|
||||
+ old_buf[nx + py * width]
|
||||
+ old_buf[px + y * width]
|
||||
+ old_buf[nx + y * width]
|
||||
+ old_buf[px + ny * width]
|
||||
+ old_buf[ x + ny * width]
|
||||
+ old_buf[nx + ny * width];
|
||||
int idx = x + y * width;
|
||||
bool flg = (neighbors == 3) || (neighbors == 2 && old_buf[idx]);
|
||||
if (flg != new_buf[idx])
|
||||
{
|
||||
display.fillRect(x * xz, y * yz, xz, yz, flg ? TFT_WHITE : TFT_BLACK);
|
||||
new_buf[idx] = flg;
|
||||
++diff;
|
||||
}
|
||||
} while (nx);
|
||||
} while (ny);
|
||||
|
||||
display.display();
|
||||
// canvas[flip].pushRotateZoom(&display, 0, (float)display.width() / width, (float)display.height() / height);
|
||||
} while (diff);
|
||||
display.endWrite();
|
||||
}
|
||||
|
|
@ -0,0 +1,77 @@
|
|||
|
||||
#include <M5GFX.h>
|
||||
M5GFX display;
|
||||
|
||||
//#include <M5UnitOLED.h>
|
||||
//M5UnitOLED display; // default setting
|
||||
//M5UnitOLED display ( 21, 22, 400000 ); // SDA, SCL, FREQ
|
||||
|
||||
//#include <M5UnitLCD.h>
|
||||
//M5UnitLCD display; // default setting
|
||||
//M5UnitLCD display ( 21, 22, 400000 ); // SDA, SCL, FREQ
|
||||
|
||||
//#include <M5UnitGLASS2.h>
|
||||
//M5UnitGLASS2 display; // default setting
|
||||
//M5UnitGLASS2 display ( 21, 22, 400000 ); // SDA, SCL, FREQ
|
||||
|
||||
//#include <M5AtomDisplay.h>
|
||||
//M5AtomDisplay display;
|
||||
|
||||
M5Canvas canvas(&display);
|
||||
|
||||
static constexpr char text[] = "Hello world ! こんにちは世界! this is long long string sample. 寿限無、寿限無、五劫の擦り切れ、海砂利水魚の、水行末・雲来末・風来末、喰う寝る処に住む処、藪ら柑子の藪柑子、パイポ・パイポ・パイポのシューリンガン、シューリンガンのグーリンダイ、グーリンダイのポンポコピーのポンポコナの、長久命の長助";
|
||||
static constexpr size_t textlen = sizeof(text) / sizeof(text[0]);
|
||||
int textpos = 0;
|
||||
int scrollstep = 2;
|
||||
|
||||
void setup(void)
|
||||
{
|
||||
display.begin();
|
||||
display.setColorDepth(8);
|
||||
|
||||
if (display.isEPD())
|
||||
{
|
||||
scrollstep = 16;
|
||||
display.setEpdMode(epd_mode_t::epd_fastest);
|
||||
display.invertDisplay(true);
|
||||
display.clear(TFT_BLACK);
|
||||
}
|
||||
if (display.width() < display.height())
|
||||
{
|
||||
display.setRotation(display.getRotation() ^ 1);
|
||||
}
|
||||
|
||||
canvas.setColorDepth(1); // mono color
|
||||
canvas.setFont(&fonts::lgfxJapanMinchoP_32);
|
||||
canvas.setTextWrap(false);
|
||||
canvas.setTextSize(2);
|
||||
canvas.createSprite(display.width() + 64, 72);
|
||||
}
|
||||
|
||||
void loop(void)
|
||||
{
|
||||
int32_t cursor_x = canvas.getCursorX() - scrollstep;
|
||||
if (cursor_x <= 0)
|
||||
{
|
||||
textpos = 0;
|
||||
cursor_x = display.width();
|
||||
}
|
||||
|
||||
canvas.setCursor(cursor_x, 0);
|
||||
canvas.scroll(-scrollstep, 0);
|
||||
while (textpos < textlen && cursor_x <= display.width())
|
||||
{
|
||||
canvas.print(text[textpos++]);
|
||||
cursor_x = canvas.getCursorX();
|
||||
}
|
||||
display.waitDisplay();
|
||||
int y = (display.height() - canvas.height()) >> 1;
|
||||
/*
|
||||
display.copyRect(0, y, display.width(), canvas.height(), scrollstep, y);
|
||||
display.setClipRect(display.width()-scrollstep, y, scrollstep, canvas.height());
|
||||
canvas.pushSprite(&display, 0, (display.height() - canvas.height()) >> 1);
|
||||
display.clearClipRect();
|
||||
/*/
|
||||
canvas.pushSprite(&display, 0, y);
|
||||
//*/
|
||||
}
|
||||
124
libraries/M5GFX/examples/Basic/ScrollGraph/ScrollGraph.ino
Normal file
124
libraries/M5GFX/examples/Basic/ScrollGraph/ScrollGraph.ino
Normal file
|
|
@ -0,0 +1,124 @@
|
|||
|
||||
#include <Arduino.h>
|
||||
#include <vector>
|
||||
|
||||
#include <M5GFX.h>
|
||||
M5GFX display;
|
||||
|
||||
//#include <M5UnitOLED.h>
|
||||
//M5UnitOLED display; // default setting
|
||||
//M5UnitOLED display ( 21, 22, 400000 ); // SDA, SCL, FREQ
|
||||
|
||||
//#include <M5UnitLCD.h>
|
||||
//M5UnitLCD display; // default setting
|
||||
//M5UnitLCD display ( 21, 22, 400000 ); // SDA, SCL, FREQ
|
||||
|
||||
//#include <M5UnitGLASS2.h>
|
||||
//M5UnitGLASS2 display; // default setting
|
||||
//M5UnitGLASS2 display ( 21, 22, 400000 ); // SDA, SCL, FREQ
|
||||
|
||||
//#include <M5AtomDisplay.h>
|
||||
//M5AtomDisplay display;
|
||||
|
||||
|
||||
#define LINE_COUNT 6
|
||||
|
||||
std::vector<int> points[LINE_COUNT];
|
||||
int colors[] = { TFT_RED, TFT_GREEN, TFT_BLUE, TFT_CYAN, TFT_MAGENTA, TFT_YELLOW };
|
||||
int xoffset, yoffset, point_count;
|
||||
int virtual_width;
|
||||
int virtual_height;
|
||||
int zoom = 1;
|
||||
|
||||
int getBaseColor(int x, int y)
|
||||
{
|
||||
return ((x^y)&3 || ((x-xoffset)&31 && y&31) ? TFT_BLACK : ((!y || x == xoffset) ? TFT_WHITE : TFT_DARKGREEN));
|
||||
}
|
||||
|
||||
void setup(void)
|
||||
{
|
||||
display.begin();
|
||||
|
||||
if (display.isEPD())
|
||||
{
|
||||
display.setEpdMode(epd_mode_t::epd_fastest);
|
||||
display.invertDisplay(true);
|
||||
display.clear(TFT_BLACK);
|
||||
}
|
||||
if (display.width() < display.height())
|
||||
{
|
||||
display.setRotation(display.getRotation() ^ 1);
|
||||
}
|
||||
if (display.getBoard() == m5gfx::boards::board_t::board_M5StackCoreInk)
|
||||
{
|
||||
zoom = 2;
|
||||
}
|
||||
else if (display.getBoard() == m5gfx::boards::board_t::board_M5Paper)
|
||||
{
|
||||
zoom = 3;
|
||||
}
|
||||
else
|
||||
{
|
||||
zoom = (display.width() / 480) + 1;
|
||||
}
|
||||
virtual_width = display.width() / zoom;
|
||||
virtual_height = display.height()/ zoom;
|
||||
|
||||
xoffset = virtual_width >> 1;
|
||||
yoffset = virtual_height >> 1;
|
||||
point_count = virtual_width + 1;
|
||||
|
||||
for (int i = 0; i < LINE_COUNT; i++)
|
||||
{
|
||||
points[i].resize(point_count);
|
||||
}
|
||||
|
||||
display.startWrite();
|
||||
for (int y = 0; y < virtual_height; y++)
|
||||
{
|
||||
for (int x = 0; x < virtual_width; x++)
|
||||
{
|
||||
auto color = getBaseColor(x, y - yoffset);
|
||||
if (color)
|
||||
{
|
||||
display.fillRect(x * zoom, y * zoom, zoom, zoom, color);
|
||||
}
|
||||
}
|
||||
}
|
||||
display.endWrite();
|
||||
}
|
||||
|
||||
void loop(void)
|
||||
{
|
||||
static int count;
|
||||
|
||||
for (int i = 0; i < LINE_COUNT; i++)
|
||||
{
|
||||
points[i][count % point_count] = (sinf((float)count / (10 + 30 * i))+sinf((float)count / (13 + 37 * i))) * (virtual_height >> 2);
|
||||
}
|
||||
|
||||
++count;
|
||||
display.waitDisplay();
|
||||
display.startWrite();
|
||||
int index1 = count % point_count;
|
||||
for (int x = 0; x < point_count-1; x++)
|
||||
{
|
||||
int index0 = index1;
|
||||
index1 = (index0 +1) % point_count;
|
||||
for (int i = 0; i < LINE_COUNT; i++)
|
||||
{
|
||||
int y = points[i][index0];
|
||||
if (y != points[i][index1])
|
||||
{
|
||||
display.fillRect(x * zoom, (y + yoffset) * zoom, zoom, zoom, getBaseColor(x, y));
|
||||
}
|
||||
}
|
||||
|
||||
for (int i = 0; i < LINE_COUNT; i++)
|
||||
{
|
||||
int y = points[i][index1];
|
||||
display.fillRect(x * zoom, (y + yoffset) * zoom, zoom, zoom, colors[i]);
|
||||
}
|
||||
}
|
||||
display.endWrite();
|
||||
}
|
||||
196
libraries/M5GFX/examples/Basic/SpinTile/SpinTile.ino
Normal file
196
libraries/M5GFX/examples/Basic/SpinTile/SpinTile.ino
Normal file
|
|
@ -0,0 +1,196 @@
|
|||
|
||||
#include <M5GFX.h>
|
||||
M5GFX display;
|
||||
|
||||
//#include <M5UnitOLED.h>
|
||||
//M5UnitOLED display; // default setting
|
||||
//M5UnitOLED display ( 21, 22, 400000 ); // SDA, SCL, FREQ
|
||||
|
||||
//#include <M5UnitLCD.h>
|
||||
//M5UnitLCD display; // default setting
|
||||
//M5UnitLCD display ( 21, 22, 400000 ); // SDA, SCL, FREQ
|
||||
|
||||
//#include <M5UnitGLASS2.h>
|
||||
//M5UnitGLASS2 display; // default setting
|
||||
//M5UnitGLASS2 display ( 21, 22, 400000 ); // SDA, SCL, FREQ
|
||||
|
||||
//#include <M5AtomDisplay.h>
|
||||
//M5AtomDisplay display; // default setting
|
||||
//M5AtomDisplay display ( 320, 180 ); // width, height
|
||||
|
||||
static constexpr const int qsintab[256]={
|
||||
0x8000,0x80c9,0x8192,0x825b,0x8324,0x83ee,0x84b7,0x8580,
|
||||
0x8649,0x8712,0x87db,0x88a4,0x896c,0x8a35,0x8afe,0x8bc6,
|
||||
0x8c8e,0x8d57,0x8e1f,0x8ee7,0x8fae,0x9076,0x913e,0x9205,
|
||||
0x92cc,0x9393,0x945a,0x9521,0x95e7,0x96ad,0x9773,0x9839,
|
||||
0x98fe,0x99c4,0x9a89,0x9b4d,0x9c12,0x9cd6,0x9d9a,0x9e5e,
|
||||
0x9f21,0x9fe4,0xa0a7,0xa169,0xa22b,0xa2ed,0xa3af,0xa470,
|
||||
0xa530,0xa5f1,0xa6b1,0xa770,0xa830,0xa8ef,0xa9ad,0xaa6b,
|
||||
0xab29,0xabe6,0xaca3,0xad5f,0xae1b,0xaed7,0xaf92,0xb04d,
|
||||
0xb107,0xb1c0,0xb27a,0xb332,0xb3ea,0xb4a2,0xb559,0xb610,
|
||||
0xb6c6,0xb77c,0xb831,0xb8e5,0xb999,0xba4d,0xbb00,0xbbb2,
|
||||
0xbc64,0xbd15,0xbdc6,0xbe76,0xbf25,0xbfd4,0xc082,0xc12f,
|
||||
0xc1dc,0xc288,0xc334,0xc3df,0xc489,0xc533,0xc5dc,0xc684,
|
||||
0xc72c,0xc7d3,0xc879,0xc91f,0xc9c3,0xca67,0xcb0b,0xcbae,
|
||||
0xcc4f,0xccf1,0xcd91,0xce31,0xced0,0xcf6e,0xd00b,0xd0a8,
|
||||
0xd144,0xd1df,0xd279,0xd313,0xd3ac,0xd443,0xd4db,0xd571,
|
||||
0xd606,0xd69b,0xd72f,0xd7c2,0xd854,0xd8e5,0xd975,0xda05,
|
||||
0xda93,0xdb21,0xdbae,0xdc3a,0xdcc5,0xdd4f,0xddd9,0xde61,
|
||||
0xdee9,0xdf6f,0xdff5,0xe07a,0xe0fd,0xe180,0xe202,0xe283,
|
||||
0xe303,0xe382,0xe400,0xe47d,0xe4fa,0xe575,0xe5ef,0xe668,
|
||||
0xe6e0,0xe758,0xe7ce,0xe843,0xe8b7,0xe92b,0xe99d,0xea0e,
|
||||
0xea7e,0xeaed,0xeb5b,0xebc8,0xec34,0xec9f,0xed09,0xed72,
|
||||
0xedda,0xee41,0xeea7,0xef0b,0xef6f,0xefd1,0xf033,0xf093,
|
||||
0xf0f2,0xf150,0xf1ad,0xf209,0xf264,0xf2be,0xf316,0xf36e,
|
||||
0xf3c4,0xf41a,0xf46e,0xf4c1,0xf513,0xf564,0xf5b3,0xf602,
|
||||
0xf64f,0xf69b,0xf6e6,0xf730,0xf779,0xf7c1,0xf807,0xf84d,
|
||||
0xf891,0xf8d4,0xf916,0xf956,0xf996,0xf9d4,0xfa11,0xfa4d,
|
||||
0xfa88,0xfac1,0xfafa,0xfb31,0xfb67,0xfb9c,0xfbd0,0xfc02,
|
||||
0xfc33,0xfc63,0xfc92,0xfcc0,0xfcec,0xfd17,0xfd42,0xfd6a,
|
||||
0xfd92,0xfdb8,0xfdde,0xfe01,0xfe24,0xfe46,0xfe66,0xfe85,
|
||||
0xfea3,0xfec0,0xfedb,0xfef5,0xff0e,0xff26,0xff3c,0xff52,
|
||||
0xff66,0xff79,0xff8a,0xff9b,0xffaa,0xffb8,0xffc4,0xffd0,
|
||||
0xffda,0xffe3,0xffeb,0xfff1,0xfff6,0xfffa,0xfffd,0xffff,
|
||||
};
|
||||
|
||||
static int isin(int i) {
|
||||
i=(i&1023);
|
||||
if (i>=512) return -isin(i-512);
|
||||
if (i>=256) i=(511-i);
|
||||
return qsintab[i]-0x8000;
|
||||
}
|
||||
|
||||
static int icos(int i) {
|
||||
return isin(i+256);
|
||||
}
|
||||
|
||||
|
||||
int32_t lcd_width;
|
||||
int32_t lcd_height;
|
||||
uint32_t f;
|
||||
uint8_t colors[8];
|
||||
size_t scale = 1;
|
||||
|
||||
void setup(void)
|
||||
{
|
||||
display.init();
|
||||
display.startWrite();
|
||||
display.fillScreen(TFT_BLACK);
|
||||
|
||||
if (display.isEPD())
|
||||
{
|
||||
display.setEpdMode(epd_mode_t::epd_fastest);
|
||||
}
|
||||
if (display.width() < display.height())
|
||||
{
|
||||
display.setRotation(display.getRotation() ^ 1);
|
||||
}
|
||||
if (display.width() > 800)
|
||||
{
|
||||
scale = 4;
|
||||
}
|
||||
|
||||
lcd_width = display.width() / scale;
|
||||
lcd_height = display.height() / scale;
|
||||
|
||||
display.startWrite();
|
||||
display.setColorDepth(8);
|
||||
display.fillScreen(TFT_BLACK);
|
||||
f = 0;
|
||||
|
||||
for (int i = 0; i < 8; ++i)
|
||||
{
|
||||
uint32_t p = 0;
|
||||
if (i & 1) p =0x03;
|
||||
if (i & 2) p+=0x1C;
|
||||
if (i & 4) p+=0xE0;
|
||||
colors[i] = p;
|
||||
}
|
||||
}
|
||||
|
||||
uint32_t p_dxx = 0;
|
||||
uint32_t p_dxy = 0;
|
||||
uint32_t p_dyx = 0;
|
||||
uint32_t p_dyy = 0;
|
||||
int rcos = 0;
|
||||
int rsin = 0;
|
||||
int zoom = 0;
|
||||
int px = 0;
|
||||
int py = 0;
|
||||
|
||||
void loop(void)
|
||||
{
|
||||
uint32_t p_cxx = (zoom * ((px) * rcos - (py) * rsin) ) >> (20 - 8);
|
||||
uint32_t p_cxy = (zoom * ((py) * rcos + (px) * rsin) ) >> (20 - 8);
|
||||
++f;
|
||||
rcos=icos(f*3);
|
||||
rsin=isin(f*3);
|
||||
zoom=((isin(f*5)+0x10000)>>8)+128;
|
||||
px=(isin(f)>>7)-110;
|
||||
py=(icos(f)>>7)-110;
|
||||
|
||||
uint32_t cxx = (zoom * ((px) * rcos - (py) * rsin) ) >> (20 - 8);
|
||||
uint32_t cxy = (zoom * ((py) * rcos + (px) * rsin) ) >> (20 - 8);
|
||||
uint32_t dxx = (zoom * (( 1) * rcos - ( 0) * rsin) ) >> (20 - 8);
|
||||
uint32_t dxy = (zoom * (( 0) * rcos + ( 1) * rsin) ) >> (20 - 8);
|
||||
uint32_t dyx = (zoom * (( 0) * rcos - ( 1) * rsin) ) >> (20 - 8);
|
||||
uint32_t dyy = (zoom * (( 1) * rcos + ( 0) * rsin) ) >> (20 - 8);
|
||||
|
||||
display.waitDisplay();
|
||||
for (uint32_t y = 0; y < lcd_height; y++)
|
||||
{
|
||||
uint32_t ypos = y * scale;
|
||||
p_cxx+=p_dxx;
|
||||
p_cxy+=p_dxy;
|
||||
cxx+=dxx;
|
||||
cxy+=dxy;
|
||||
uint32_t cx=cxx;
|
||||
uint32_t cy=cxy;
|
||||
uint32_t p_cx = p_cxx;
|
||||
uint32_t p_cy = p_cxy;
|
||||
uint32_t x = 0;
|
||||
uint32_t prev_x = 0;
|
||||
uint32_t prev_color = 0xAA;
|
||||
bool flg = false;
|
||||
do
|
||||
{
|
||||
p_cx+=p_dyx;
|
||||
p_cy+=p_dyy;
|
||||
cx+=dyx;
|
||||
cy+=dyy;
|
||||
auto color = ((cx^cy) >> 16) & 7;
|
||||
bool diff = color != (((p_cx ^ p_cy) >> 16) & 7);
|
||||
if (flg)
|
||||
{
|
||||
if (!diff || prev_color != color)
|
||||
{
|
||||
if (x)
|
||||
{
|
||||
display.writeFillRectPreclipped(prev_x * scale, ypos, (x - prev_x) * scale, scale, colors[prev_color]);
|
||||
}
|
||||
flg = diff;
|
||||
prev_x = x;
|
||||
prev_color = color;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (diff)
|
||||
{
|
||||
flg = true;
|
||||
prev_x = x;
|
||||
prev_color = color;
|
||||
}
|
||||
}
|
||||
} while (++x < lcd_width);
|
||||
if (flg)
|
||||
{
|
||||
display.writeFillRect(prev_x * scale, ypos, (x - prev_x) * scale, scale, colors[prev_color]);
|
||||
}
|
||||
}
|
||||
display.display();
|
||||
p_dxx = dxx;
|
||||
p_dxy = dxy;
|
||||
p_dyx = dyx;
|
||||
p_dyy = dyy;
|
||||
}
|
||||
|
|
@ -0,0 +1,764 @@
|
|||
/*
|
||||
Adapted from the Adafruit and Xark's PDQ graphicstest sketch.
|
||||
|
||||
See end of file for original header text and MIT license info.
|
||||
|
||||
This sketch uses the GLCD font only.
|
||||
|
||||
*/
|
||||
|
||||
#include <M5GFX.h>
|
||||
M5GFX tft;
|
||||
|
||||
// #include <M5AtomDisplay.h>
|
||||
// M5AtomDisplay tft(1920, 1080);
|
||||
// M5AtomDisplay tft(1280, 720);
|
||||
// M5AtomDisplay tft(960, 540);
|
||||
// M5AtomDisplay tft(640, 360);
|
||||
// M5AtomDisplay tft(480, 270);
|
||||
// M5AtomDisplay tft(320, 180);
|
||||
/*
|
||||
M5AtomDisplay tft( 240 // width
|
||||
, 360 // height
|
||||
, 60 // refresh rate
|
||||
, 1280 // output width
|
||||
, 720 // output height
|
||||
, 2 // X scaling
|
||||
, 2 // Y scaling
|
||||
);
|
||||
//*/
|
||||
|
||||
unsigned long total = 0;
|
||||
unsigned long tn = 0;
|
||||
void setup() {
|
||||
Serial.begin(115200);
|
||||
Serial.println(""); Serial.println("");
|
||||
Serial.println("M5GFX library Test!");
|
||||
|
||||
tft.init();
|
||||
//tft.setRotation(0);
|
||||
tft.startWrite();
|
||||
}
|
||||
|
||||
void loop(void)
|
||||
{
|
||||
|
||||
Serial.println(F("Benchmark Time (microseconds)"));
|
||||
|
||||
uint32_t usecHaD = testHaD();
|
||||
Serial.print(F("HaD pushColor "));
|
||||
Serial.println(usecHaD);
|
||||
delay(100);
|
||||
|
||||
uint32_t usecFillScreen = testFillScreen();
|
||||
Serial.print(F("Screen fill "));
|
||||
Serial.println(usecFillScreen);
|
||||
delay(100);
|
||||
|
||||
uint32_t usecText = testText();
|
||||
Serial.print(F("Text "));
|
||||
Serial.println(usecText);
|
||||
delay(100);
|
||||
|
||||
uint32_t usecPixels = testPixels();
|
||||
Serial.print(F("Pixels "));
|
||||
Serial.println(usecPixels);
|
||||
delay(100);
|
||||
|
||||
uint32_t usecLines = testLines(TFT_BLUE);
|
||||
Serial.print(F("Lines "));
|
||||
Serial.println(usecLines);
|
||||
delay(100);
|
||||
|
||||
uint32_t usecFastLines = testFastLines(TFT_RED, TFT_BLUE);
|
||||
Serial.print(F("Horiz/Vert Lines "));
|
||||
Serial.println(usecFastLines);
|
||||
delay(100);
|
||||
|
||||
uint32_t usecRects = testRects(TFT_GREEN);
|
||||
Serial.print(F("Rectangles (outline) "));
|
||||
Serial.println(usecRects);
|
||||
delay(100);
|
||||
|
||||
uint32_t usecFilledRects = testFilledRects(TFT_YELLOW, TFT_MAGENTA);
|
||||
Serial.print(F("Rectangles (filled) "));
|
||||
Serial.println(usecFilledRects);
|
||||
delay(100);
|
||||
|
||||
uint32_t usecFilledCircles = testFilledCircles(10, TFT_MAGENTA);
|
||||
Serial.print(F("Circles (filled) "));
|
||||
Serial.println(usecFilledCircles);
|
||||
delay(100);
|
||||
|
||||
uint32_t usecCircles = testCircles(10, TFT_WHITE);
|
||||
Serial.print(F("Circles (outline) "));
|
||||
Serial.println(usecCircles);
|
||||
delay(100);
|
||||
|
||||
uint32_t usecTriangles = testTriangles();
|
||||
Serial.print(F("Triangles (outline) "));
|
||||
Serial.println(usecTriangles);
|
||||
delay(100);
|
||||
|
||||
uint32_t usecFilledTrangles = testFilledTriangles();
|
||||
Serial.print(F("Triangles (filled) "));
|
||||
Serial.println(usecFilledTrangles);
|
||||
delay(100);
|
||||
|
||||
uint32_t usecRoundRects = testRoundRects();
|
||||
Serial.print(F("Rounded rects (outline) "));
|
||||
Serial.println(usecRoundRects);
|
||||
delay(100);
|
||||
|
||||
uint32_t usedFilledRoundRects = testFilledRoundRects();
|
||||
Serial.print(F("Rounded rects (filled) "));
|
||||
Serial.println(usedFilledRoundRects);
|
||||
delay(100);
|
||||
|
||||
Serial.println(F("Done!"));
|
||||
|
||||
uint16_t c = 4;
|
||||
int8_t d = 1;
|
||||
for (int32_t i = 0; i < tft.height(); i++)
|
||||
{
|
||||
tft.drawFastHLine(0, i, tft.width(), c);
|
||||
c += d;
|
||||
if (c <= 4 || c >= 11)
|
||||
d = -d;
|
||||
}
|
||||
|
||||
tft.setCursor(0, 0);
|
||||
tft.setTextColor(TFT_MAGENTA);
|
||||
tft.setTextSize(2);
|
||||
|
||||
tft.println(F(" M5GFX test"));
|
||||
|
||||
tft.setTextSize(1);
|
||||
tft.setTextColor(TFT_WHITE);
|
||||
tft.println(F(""));
|
||||
tft.setTextSize(1);
|
||||
tft.println(F(""));
|
||||
tft.setTextColor(tft.color565(0x80, 0x80, 0x80));
|
||||
|
||||
tft.println(F(""));
|
||||
|
||||
|
||||
tft.setTextColor(TFT_GREEN);
|
||||
tft.println(F(" Benchmark microseconds"));
|
||||
tft.println(F(""));
|
||||
tft.setTextColor(TFT_YELLOW);
|
||||
|
||||
tft.setTextColor(TFT_CYAN); tft.setTextSize(1);
|
||||
tft.print(F("HaD pushColor "));
|
||||
tft.setTextColor(TFT_YELLOW); tft.setTextSize(2);
|
||||
printnice(usecHaD);
|
||||
|
||||
tft.setTextColor(TFT_CYAN); tft.setTextSize(1);
|
||||
tft.print(F("Screen fill "));
|
||||
tft.setTextColor(TFT_YELLOW); tft.setTextSize(2);
|
||||
printnice(usecFillScreen);
|
||||
|
||||
tft.setTextColor(TFT_CYAN); tft.setTextSize(1);
|
||||
tft.print(F("Text "));
|
||||
tft.setTextColor(TFT_YELLOW); tft.setTextSize(2);
|
||||
printnice(usecText);
|
||||
|
||||
tft.setTextColor(TFT_CYAN); tft.setTextSize(1);
|
||||
tft.print(F("Pixels "));
|
||||
tft.setTextColor(TFT_YELLOW); tft.setTextSize(2);
|
||||
printnice(usecPixels);
|
||||
|
||||
tft.setTextColor(TFT_CYAN); tft.setTextSize(1);
|
||||
tft.print(F("Lines "));
|
||||
tft.setTextColor(TFT_YELLOW); tft.setTextSize(2);
|
||||
printnice(usecLines);
|
||||
|
||||
tft.setTextColor(TFT_CYAN); tft.setTextSize(1);
|
||||
tft.print(F("Horiz/Vert Lines "));
|
||||
tft.setTextColor(TFT_YELLOW); tft.setTextSize(2);
|
||||
printnice(usecFastLines);
|
||||
|
||||
tft.setTextColor(TFT_CYAN); tft.setTextSize(1);
|
||||
tft.print(F("Rectangles "));
|
||||
tft.setTextColor(TFT_YELLOW); tft.setTextSize(2);
|
||||
printnice(usecRects);
|
||||
|
||||
tft.setTextColor(TFT_CYAN); tft.setTextSize(1);
|
||||
tft.print(F("Rectangles-filled "));
|
||||
tft.setTextColor(TFT_YELLOW); tft.setTextSize(2);
|
||||
printnice(usecFilledRects);
|
||||
|
||||
tft.setTextColor(TFT_CYAN); tft.setTextSize(1);
|
||||
tft.print(F("Circles "));
|
||||
tft.setTextColor(TFT_YELLOW); tft.setTextSize(2);
|
||||
printnice(usecCircles);
|
||||
|
||||
tft.setTextColor(TFT_CYAN); tft.setTextSize(1);
|
||||
tft.print(F("Circles-filled "));
|
||||
tft.setTextColor(TFT_YELLOW); tft.setTextSize(2);
|
||||
printnice(usecFilledCircles);
|
||||
|
||||
tft.setTextColor(TFT_CYAN); tft.setTextSize(1);
|
||||
tft.print(F("Triangles "));
|
||||
tft.setTextColor(TFT_YELLOW); tft.setTextSize(2);
|
||||
printnice(usecTriangles);
|
||||
|
||||
tft.setTextColor(TFT_CYAN); tft.setTextSize(1);
|
||||
tft.print(F("Triangles-filled "));
|
||||
tft.setTextColor(TFT_YELLOW); tft.setTextSize(2);
|
||||
printnice(usecFilledTrangles);
|
||||
|
||||
tft.setTextColor(TFT_CYAN); tft.setTextSize(1);
|
||||
tft.print(F("Rounded rects "));
|
||||
tft.setTextColor(TFT_YELLOW); tft.setTextSize(2);
|
||||
printnice(usecRoundRects);
|
||||
|
||||
tft.setTextColor(TFT_CYAN); tft.setTextSize(1);
|
||||
tft.print(F("Rounded rects-fill "));
|
||||
tft.setTextColor(TFT_YELLOW); tft.setTextSize(2);
|
||||
printnice(usedFilledRoundRects);
|
||||
|
||||
tft.setTextSize(1);
|
||||
tft.println(F(""));
|
||||
tft.setTextColor(TFT_GREEN); tft.setTextSize(2);
|
||||
tft.print(F("Benchmark Complete!"));
|
||||
|
||||
delay(60 * 1000L);
|
||||
}
|
||||
|
||||
void printnice(int32_t v)
|
||||
{
|
||||
char str[32] = { 0 };
|
||||
sprintf(str, "%d", v);
|
||||
for (char *p = (str+strlen(str))-3; p > str; p -= 3)
|
||||
{
|
||||
memmove(p+1, p, strlen(p)+1);
|
||||
*p = ',';
|
||||
|
||||
}
|
||||
while (strlen(str) < 10)
|
||||
{
|
||||
memmove(str+1, str, strlen(str)+1);
|
||||
*str = ' ';
|
||||
}
|
||||
tft.println(str);
|
||||
}
|
||||
|
||||
static inline uint32_t micros_start() __attribute__ ((always_inline));
|
||||
static inline uint32_t micros_start()
|
||||
{
|
||||
uint8_t oms = millis();
|
||||
while ((uint8_t)millis() == oms)
|
||||
;
|
||||
return micros();
|
||||
}
|
||||
|
||||
uint32_t testHaD()
|
||||
{
|
||||
// pseudo-code for cheesy RLE
|
||||
// start with color1
|
||||
// while more input data remaining
|
||||
// count = 0nnnnnnn = 1 byte or 1nnnnnnn nnnnnnnn 2 bytes (0 - 32767)
|
||||
// repeat color count times
|
||||
// toggle color1/color2
|
||||
static const uint8_t HaD_240x320[] PROGMEM =
|
||||
{
|
||||
0xb9, 0x50, 0x0e, 0x80, 0x93, 0x0e, 0x41, 0x11, 0x80, 0x8d, 0x11, 0x42, 0x12, 0x80, 0x89, 0x12,
|
||||
0x45, 0x12, 0x80, 0x85, 0x12, 0x48, 0x12, 0x80, 0x83, 0x12, 0x4a, 0x13, 0x7f, 0x13, 0x4c, 0x13,
|
||||
0x7d, 0x13, 0x4e, 0x13, 0x7b, 0x13, 0x50, 0x13, 0x79, 0x13, 0x52, 0x13, 0x77, 0x13, 0x54, 0x13,
|
||||
0x75, 0x13, 0x57, 0x11, 0x75, 0x11, 0x5a, 0x11, 0x73, 0x11, 0x5c, 0x11, 0x71, 0x11, 0x5e, 0x10,
|
||||
0x71, 0x10, 0x60, 0x10, 0x6f, 0x10, 0x61, 0x10, 0x6f, 0x10, 0x60, 0x11, 0x6f, 0x11, 0x5e, 0x13,
|
||||
0x6d, 0x13, 0x5c, 0x14, 0x6d, 0x14, 0x5a, 0x15, 0x6d, 0x15, 0x58, 0x17, 0x6b, 0x17, 0x37, 0x01,
|
||||
0x1f, 0x17, 0x6b, 0x17, 0x1f, 0x01, 0x17, 0x02, 0x1d, 0x18, 0x6b, 0x18, 0x1d, 0x02, 0x17, 0x03,
|
||||
0x1b, 0x19, 0x6b, 0x19, 0x1b, 0x03, 0x17, 0x05, 0x18, 0x1a, 0x6b, 0x1a, 0x18, 0x05, 0x17, 0x06,
|
||||
0x16, 0x1b, 0x6b, 0x1b, 0x16, 0x06, 0x17, 0x07, 0x14, 0x1c, 0x6b, 0x1c, 0x14, 0x07, 0x17, 0x08,
|
||||
0x12, 0x1d, 0x6b, 0x1d, 0x12, 0x08, 0x17, 0x09, 0x10, 0x1e, 0x6b, 0x1e, 0x10, 0x09, 0x17, 0x0a,
|
||||
0x0e, 0x1f, 0x6b, 0x1f, 0x0e, 0x0a, 0x17, 0x0b, 0x0c, 0x20, 0x6b, 0x20, 0x0c, 0x0b, 0x17, 0x0c,
|
||||
0x0b, 0x21, 0x69, 0x21, 0x0b, 0x0c, 0x18, 0x0d, 0x08, 0x23, 0x67, 0x23, 0x08, 0x0d, 0x19, 0x0e,
|
||||
0x06, 0x26, 0x63, 0x26, 0x06, 0x0e, 0x19, 0x0f, 0x04, 0x28, 0x61, 0x28, 0x04, 0x0f, 0x19, 0x10,
|
||||
0x02, 0x2a, 0x5f, 0x2a, 0x02, 0x10, 0x1a, 0x3c, 0x5d, 0x3c, 0x1b, 0x3d, 0x5b, 0x3d, 0x1c, 0x3d,
|
||||
0x59, 0x3d, 0x1d, 0x3e, 0x57, 0x3e, 0x1e, 0x3e, 0x55, 0x3e, 0x1f, 0x40, 0x51, 0x40, 0x20, 0x40,
|
||||
0x4f, 0x40, 0x22, 0x40, 0x22, 0x09, 0x22, 0x40, 0x24, 0x40, 0x1a, 0x17, 0x1a, 0x40, 0x26, 0x40,
|
||||
0x16, 0x1d, 0x16, 0x40, 0x28, 0x40, 0x12, 0x23, 0x12, 0x40, 0x2a, 0x40, 0x0f, 0x27, 0x0f, 0x40,
|
||||
0x2c, 0x41, 0x0b, 0x2b, 0x0b, 0x41, 0x2f, 0x3f, 0x09, 0x2f, 0x09, 0x3f, 0x32, 0x3d, 0x08, 0x33,
|
||||
0x08, 0x3d, 0x35, 0x3a, 0x08, 0x35, 0x08, 0x3a, 0x3a, 0x36, 0x07, 0x39, 0x07, 0x36, 0x41, 0x09,
|
||||
0x05, 0x23, 0x07, 0x3b, 0x07, 0x23, 0x05, 0x09, 0x54, 0x21, 0x07, 0x3d, 0x07, 0x21, 0x64, 0x1f,
|
||||
0x06, 0x41, 0x06, 0x1f, 0x66, 0x1d, 0x06, 0x43, 0x06, 0x1d, 0x68, 0x1b, 0x06, 0x45, 0x06, 0x1b,
|
||||
0x6b, 0x18, 0x06, 0x47, 0x06, 0x18, 0x6e, 0x16, 0x06, 0x49, 0x06, 0x16, 0x70, 0x14, 0x06, 0x4b,
|
||||
0x06, 0x14, 0x72, 0x13, 0x06, 0x4b, 0x06, 0x13, 0x74, 0x11, 0x06, 0x4d, 0x06, 0x11, 0x76, 0x0f,
|
||||
0x06, 0x4f, 0x06, 0x0f, 0x78, 0x0e, 0x05, 0x51, 0x05, 0x0e, 0x7a, 0x0c, 0x06, 0x51, 0x06, 0x0c,
|
||||
0x7d, 0x09, 0x06, 0x53, 0x06, 0x09, 0x80, 0x80, 0x08, 0x05, 0x55, 0x05, 0x08, 0x80, 0x82, 0x06,
|
||||
0x05, 0x57, 0x05, 0x06, 0x80, 0x84, 0x05, 0x05, 0x57, 0x05, 0x05, 0x80, 0x86, 0x03, 0x05, 0x59,
|
||||
0x05, 0x03, 0x80, 0x88, 0x02, 0x05, 0x59, 0x05, 0x02, 0x80, 0x8f, 0x5b, 0x80, 0x95, 0x5b, 0x80,
|
||||
0x94, 0x5d, 0x80, 0x93, 0x5d, 0x80, 0x92, 0x5e, 0x80, 0x92, 0x5f, 0x80, 0x91, 0x5f, 0x80, 0x90,
|
||||
0x61, 0x80, 0x8f, 0x61, 0x80, 0x8f, 0x61, 0x80, 0x8e, 0x63, 0x80, 0x8d, 0x63, 0x80, 0x8d, 0x63,
|
||||
0x80, 0x8d, 0x63, 0x80, 0x8c, 0x19, 0x07, 0x25, 0x07, 0x19, 0x80, 0x8b, 0x16, 0x0d, 0x1f, 0x0d,
|
||||
0x16, 0x80, 0x8b, 0x14, 0x11, 0x1b, 0x11, 0x14, 0x80, 0x8b, 0x13, 0x13, 0x19, 0x13, 0x13, 0x80,
|
||||
0x8b, 0x12, 0x15, 0x17, 0x15, 0x12, 0x80, 0x8a, 0x12, 0x17, 0x15, 0x17, 0x12, 0x80, 0x89, 0x11,
|
||||
0x19, 0x13, 0x19, 0x11, 0x80, 0x89, 0x11, 0x19, 0x13, 0x19, 0x11, 0x80, 0x89, 0x10, 0x1b, 0x11,
|
||||
0x1b, 0x10, 0x80, 0x89, 0x0f, 0x1c, 0x11, 0x1c, 0x0f, 0x80, 0x89, 0x0f, 0x1c, 0x11, 0x1c, 0x0f,
|
||||
0x80, 0x89, 0x0f, 0x1c, 0x11, 0x1c, 0x0f, 0x80, 0x89, 0x0e, 0x1d, 0x11, 0x1d, 0x0e, 0x80, 0x89,
|
||||
0x0e, 0x1c, 0x13, 0x1c, 0x0e, 0x80, 0x89, 0x0e, 0x1b, 0x15, 0x1b, 0x0e, 0x80, 0x89, 0x0e, 0x1b,
|
||||
0x15, 0x1b, 0x0e, 0x80, 0x89, 0x0e, 0x1a, 0x17, 0x1a, 0x0e, 0x80, 0x89, 0x0e, 0x18, 0x1b, 0x18,
|
||||
0x0e, 0x80, 0x89, 0x0e, 0x16, 0x1f, 0x16, 0x0e, 0x80, 0x89, 0x0e, 0x14, 0x23, 0x14, 0x0e, 0x80,
|
||||
0x89, 0x0f, 0x11, 0x27, 0x11, 0x0f, 0x80, 0x89, 0x0f, 0x0e, 0x2d, 0x0e, 0x0f, 0x80, 0x89, 0x0f,
|
||||
0x0c, 0x31, 0x0c, 0x0f, 0x80, 0x89, 0x0f, 0x0b, 0x33, 0x0b, 0x0f, 0x80, 0x8a, 0x0f, 0x09, 0x35,
|
||||
0x09, 0x0f, 0x80, 0x8b, 0x10, 0x08, 0x35, 0x08, 0x10, 0x80, 0x8b, 0x10, 0x07, 0x37, 0x07, 0x10,
|
||||
0x80, 0x8b, 0x11, 0x06, 0x37, 0x06, 0x11, 0x80, 0x8b, 0x12, 0x05, 0x37, 0x05, 0x12, 0x80, 0x8c,
|
||||
0x13, 0x03, 0x1b, 0x01, 0x1b, 0x03, 0x13, 0x80, 0x8d, 0x30, 0x03, 0x30, 0x80, 0x8d, 0x30, 0x04,
|
||||
0x2f, 0x80, 0x8d, 0x2f, 0x05, 0x2f, 0x80, 0x8e, 0x2e, 0x06, 0x2d, 0x80, 0x8f, 0x2d, 0x07, 0x2d,
|
||||
0x80, 0x8f, 0x2d, 0x07, 0x2d, 0x80, 0x90, 0x2c, 0x08, 0x2b, 0x80, 0x91, 0x2b, 0x09, 0x2b, 0x80,
|
||||
0x8c, 0x01, 0x05, 0x2a, 0x09, 0x2a, 0x05, 0x01, 0x80, 0x85, 0x03, 0x05, 0x2a, 0x09, 0x2a, 0x05,
|
||||
0x03, 0x80, 0x82, 0x04, 0x05, 0x2a, 0x09, 0x2a, 0x04, 0x05, 0x80, 0x80, 0x06, 0x05, 0x29, 0x04,
|
||||
0x02, 0x03, 0x29, 0x05, 0x06, 0x7e, 0x07, 0x05, 0x29, 0x03, 0x03, 0x03, 0x29, 0x05, 0x07, 0x7c,
|
||||
0x09, 0x05, 0x28, 0x02, 0x05, 0x02, 0x28, 0x05, 0x09, 0x7a, 0x0a, 0x05, 0x28, 0x02, 0x05, 0x02,
|
||||
0x28, 0x05, 0x0a, 0x78, 0x0c, 0x05, 0x27, 0x02, 0x05, 0x02, 0x27, 0x05, 0x0c, 0x76, 0x0d, 0x06,
|
||||
0x26, 0x01, 0x07, 0x01, 0x26, 0x06, 0x0d, 0x73, 0x10, 0x05, 0x55, 0x05, 0x10, 0x70, 0x12, 0x05,
|
||||
0x53, 0x05, 0x12, 0x6e, 0x13, 0x06, 0x51, 0x06, 0x13, 0x6c, 0x15, 0x05, 0x51, 0x05, 0x15, 0x6a,
|
||||
0x16, 0x06, 0x4f, 0x06, 0x16, 0x68, 0x18, 0x06, 0x4d, 0x06, 0x18, 0x66, 0x1a, 0x06, 0x4b, 0x06,
|
||||
0x1a, 0x64, 0x1c, 0x06, 0x49, 0x06, 0x1c, 0x55, 0x07, 0x05, 0x1e, 0x06, 0x49, 0x06, 0x1e, 0x05,
|
||||
0x07, 0x42, 0x30, 0x06, 0x47, 0x06, 0x30, 0x3a, 0x34, 0x06, 0x45, 0x06, 0x34, 0x35, 0x37, 0x06,
|
||||
0x43, 0x06, 0x37, 0x32, 0x39, 0x07, 0x3f, 0x07, 0x39, 0x2f, 0x3c, 0x07, 0x3d, 0x07, 0x3c, 0x2c,
|
||||
0x3e, 0x07, 0x3b, 0x07, 0x3e, 0x2a, 0x40, 0x06, 0x3b, 0x06, 0x40, 0x28, 0x40, 0x06, 0x3c, 0x07,
|
||||
0x40, 0x26, 0x3f, 0x08, 0x3d, 0x08, 0x3f, 0x24, 0x3f, 0x09, 0x3d, 0x09, 0x3f, 0x22, 0x3f, 0x0a,
|
||||
0x14, 0x01, 0x13, 0x02, 0x13, 0x0a, 0x3f, 0x20, 0x3f, 0x0b, 0x14, 0x01, 0x13, 0x02, 0x13, 0x0b,
|
||||
0x3f, 0x1f, 0x3e, 0x0c, 0x14, 0x01, 0x13, 0x02, 0x13, 0x0c, 0x3e, 0x1e, 0x3e, 0x0d, 0x13, 0x02,
|
||||
0x13, 0x02, 0x13, 0x0d, 0x3e, 0x1d, 0x3d, 0x0e, 0x13, 0x02, 0x13, 0x02, 0x13, 0x0e, 0x3d, 0x1c,
|
||||
0x3c, 0x11, 0x11, 0x04, 0x11, 0x04, 0x11, 0x11, 0x3c, 0x1b, 0x10, 0x01, 0x2a, 0x12, 0x11, 0x04,
|
||||
0x11, 0x04, 0x11, 0x12, 0x2a, 0x01, 0x10, 0x1a, 0x0f, 0x04, 0x28, 0x14, 0x0f, 0x06, 0x0f, 0x06,
|
||||
0x0f, 0x14, 0x28, 0x04, 0x0f, 0x19, 0x0e, 0x06, 0x26, 0x16, 0x0d, 0x08, 0x0d, 0x08, 0x0d, 0x16,
|
||||
0x26, 0x06, 0x0e, 0x19, 0x0d, 0x07, 0x25, 0x18, 0x0b, 0x0a, 0x0b, 0x0a, 0x0b, 0x18, 0x25, 0x07,
|
||||
0x0d, 0x19, 0x0c, 0x09, 0x23, 0x1c, 0x06, 0x0f, 0x05, 0x10, 0x05, 0x1c, 0x23, 0x09, 0x0c, 0x18,
|
||||
0x0c, 0x0b, 0x21, 0x69, 0x21, 0x0b, 0x0c, 0x17, 0x0b, 0x0d, 0x1f, 0x6b, 0x1f, 0x0d, 0x0b, 0x17,
|
||||
0x0a, 0x0f, 0x1e, 0x6b, 0x1e, 0x0f, 0x0a, 0x17, 0x09, 0x11, 0x1d, 0x6b, 0x1d, 0x11, 0x09, 0x17,
|
||||
0x07, 0x14, 0x1c, 0x6b, 0x1c, 0x14, 0x07, 0x17, 0x06, 0x16, 0x1b, 0x6b, 0x1b, 0x16, 0x06, 0x17,
|
||||
0x05, 0x18, 0x1a, 0x6b, 0x1a, 0x18, 0x05, 0x17, 0x04, 0x1a, 0x19, 0x6b, 0x19, 0x1a, 0x04, 0x17,
|
||||
0x03, 0x1b, 0x19, 0x6b, 0x19, 0x1b, 0x03, 0x17, 0x02, 0x1d, 0x18, 0x6b, 0x18, 0x1d, 0x02, 0x37,
|
||||
0x17, 0x6b, 0x17, 0x58, 0x16, 0x6b, 0x16, 0x5a, 0x14, 0x6d, 0x14, 0x5c, 0x13, 0x6d, 0x13, 0x5e,
|
||||
0x12, 0x6d, 0x12, 0x60, 0x10, 0x6f, 0x10, 0x61, 0x10, 0x6f, 0x10, 0x60, 0x11, 0x6f, 0x11, 0x5e,
|
||||
0x11, 0x71, 0x11, 0x5c, 0x12, 0x71, 0x12, 0x5a, 0x12, 0x73, 0x12, 0x58, 0x12, 0x75, 0x12, 0x56,
|
||||
0x13, 0x75, 0x13, 0x54, 0x13, 0x77, 0x13, 0x51, 0x14, 0x79, 0x14, 0x4e, 0x14, 0x7b, 0x14, 0x4c,
|
||||
0x14, 0x7d, 0x14, 0x4a, 0x14, 0x7f, 0x14, 0x48, 0x13, 0x80, 0x83, 0x13, 0x46, 0x13, 0x80, 0x85,
|
||||
0x13, 0x44, 0x12, 0x80, 0x89, 0x12, 0x42, 0x11, 0x80, 0x8d, 0x11, 0x40, 0x0f, 0x80, 0x93, 0x0f,
|
||||
0x45, 0x04, 0x80, 0x9d, 0x04, 0xb9, 0x56,
|
||||
};
|
||||
|
||||
tft.fillScreen(TFT_BLACK);
|
||||
|
||||
uint32_t start = micros_start();
|
||||
|
||||
for (int i = 0; i < 0x10; i++)
|
||||
{
|
||||
tft.setAddrWindow(0, 0, 240, 320);
|
||||
|
||||
uint16_t cnt = 0;
|
||||
uint16_t color = tft.color565((i << 4) | i, (i << 4) | i, (i << 4) | i);
|
||||
uint16_t curcolor = 0;
|
||||
|
||||
const uint8_t *cmp = &HaD_240x320[0];
|
||||
|
||||
tft.startWrite();
|
||||
while (cmp < &HaD_240x320[sizeof(HaD_240x320)])
|
||||
{
|
||||
cnt = pgm_read_byte(cmp++);
|
||||
if (cnt & 0x80) cnt = ((cnt & 0x7f) << 8) | pgm_read_byte(cmp++);
|
||||
tft.pushBlock(curcolor, cnt); // PDQ_GFX has count
|
||||
curcolor ^= color;
|
||||
}
|
||||
tft.endWrite();
|
||||
}
|
||||
|
||||
uint32_t t = micros() - start;
|
||||
|
||||
tft.setTextColor(TFT_YELLOW);
|
||||
tft.setTextSize(2);
|
||||
tft.setCursor(8, 285);
|
||||
tft.print(F("http://hackaday.io/"));
|
||||
tft.setCursor(96, 302);
|
||||
tft.print(F("Xark"));
|
||||
|
||||
delay(3 * 1000L);
|
||||
|
||||
return t;
|
||||
}
|
||||
|
||||
uint32_t testFillScreen()
|
||||
{
|
||||
uint32_t start = micros_start();
|
||||
// Shortened this tedious test!
|
||||
tft.fillScreen(TFT_WHITE);
|
||||
tft.fillScreen(TFT_RED);
|
||||
tft.fillScreen(TFT_GREEN);
|
||||
tft.fillScreen(TFT_BLUE);
|
||||
tft.fillScreen(TFT_BLACK);
|
||||
|
||||
return (micros() - start)/5;
|
||||
}
|
||||
|
||||
uint32_t testText()
|
||||
{
|
||||
tft.fillScreen(TFT_BLACK);
|
||||
uint32_t start = micros_start();
|
||||
tft.setCursor(0, 0);
|
||||
tft.setTextColor(TFT_WHITE,TFT_BLACK); tft.setTextSize(1);
|
||||
tft.println(F("Hello World!"));
|
||||
tft.setTextSize(2);
|
||||
tft.setTextColor(tft.color565(0xff, 0x00, 0x00));
|
||||
tft.print(F("RED "));
|
||||
tft.setTextColor(tft.color565(0x00, 0xff, 0x00));
|
||||
tft.print(F("GREEN "));
|
||||
tft.setTextColor(tft.color565(0x00, 0x00, 0xff));
|
||||
tft.println(F("BLUE"));
|
||||
tft.setTextColor(TFT_YELLOW); tft.setTextSize(2);
|
||||
tft.println(1234.56);
|
||||
tft.setTextColor(TFT_RED); tft.setTextSize(3);
|
||||
tft.println(0xDEADBEEF, HEX);
|
||||
tft.println();
|
||||
tft.setTextColor(TFT_GREEN);
|
||||
tft.setTextSize(5);
|
||||
tft.println(F("Groop"));
|
||||
tft.setTextSize(2);
|
||||
tft.println(F("I implore thee,"));
|
||||
tft.setTextColor(TFT_GREEN);
|
||||
tft.setTextSize(1);
|
||||
tft.println(F("my foonting turlingdromes."));
|
||||
tft.println(F("And hooptiously drangle me"));
|
||||
tft.println(F("with crinkly bindlewurdles,"));
|
||||
tft.println(F("Or I will rend thee"));
|
||||
tft.println(F("in the gobberwarts"));
|
||||
tft.println(F("with my blurglecruncheon,"));
|
||||
tft.println(F("see if I don't!"));
|
||||
tft.println(F(""));
|
||||
tft.println(F(""));
|
||||
tft.setTextColor(TFT_MAGENTA);
|
||||
tft.setTextSize(6);
|
||||
tft.println(F("Woot!"));
|
||||
uint32_t t = micros() - start;
|
||||
delay(1000);
|
||||
return t;
|
||||
}
|
||||
|
||||
uint32_t testPixels()
|
||||
{
|
||||
int32_t w = tft.width();
|
||||
int32_t h = tft.height();
|
||||
|
||||
uint32_t start = micros_start();
|
||||
tft.startWrite();
|
||||
for (uint16_t y = 0; y < h; y++)
|
||||
{
|
||||
for (uint16_t x = 0; x < w; x++)
|
||||
{
|
||||
tft.drawPixel(x, y, tft.color565(x<<3, y<<3, x*y));
|
||||
}
|
||||
}
|
||||
tft.endWrite();
|
||||
return micros() - start;
|
||||
}
|
||||
|
||||
|
||||
uint32_t testLines(uint16_t color)
|
||||
{
|
||||
uint32_t start, t;
|
||||
int32_t x1, y1, x2, y2;
|
||||
int32_t w = tft.width();
|
||||
int32_t h = tft.height();
|
||||
|
||||
tft.fillScreen(TFT_BLACK);
|
||||
|
||||
x1 = y1 = 0;
|
||||
y2 = h - 1;
|
||||
|
||||
start = micros_start();
|
||||
|
||||
for (x2 = 0; x2 < w; x2 += 6)
|
||||
{
|
||||
tft.drawLine(x1, y1, x2, y2, color);
|
||||
}
|
||||
|
||||
x2 = w - 1;
|
||||
|
||||
for (y2 = 0; y2 < h; y2 += 6)
|
||||
{
|
||||
tft.drawLine(x1, y1, x2, y2, color);
|
||||
}
|
||||
|
||||
t = micros() - start; // fillScreen doesn't count against timing
|
||||
|
||||
tft.fillScreen(TFT_BLACK);
|
||||
|
||||
x1 = w - 1;
|
||||
y1 = 0;
|
||||
y2 = h - 1;
|
||||
|
||||
start = micros_start();
|
||||
|
||||
for (x2 = 0; x2 < w; x2 += 6)
|
||||
{
|
||||
tft.drawLine(x1, y1, x2, y2, color);
|
||||
}
|
||||
|
||||
x2 = 0;
|
||||
for (y2 = 0; y2 < h; y2 += 6)
|
||||
{
|
||||
tft.drawLine(x1, y1, x2, y2, color);
|
||||
}
|
||||
|
||||
t += micros() - start;
|
||||
|
||||
tft.fillScreen(TFT_BLACK);
|
||||
|
||||
x1 = 0;
|
||||
y1 = h - 1;
|
||||
y2 = 0;
|
||||
|
||||
start = micros_start();
|
||||
|
||||
for (x2 = 0; x2 < w; x2 += 6)
|
||||
{
|
||||
tft.drawLine(x1, y1, x2, y2, color);
|
||||
}
|
||||
x2 = w - 1;
|
||||
for (y2 = 0; y2 < h; y2 += 6)
|
||||
{
|
||||
tft.drawLine(x1, y1, x2, y2, color);
|
||||
}
|
||||
t += micros() - start;
|
||||
|
||||
tft.fillScreen(TFT_BLACK);
|
||||
|
||||
x1 = w - 1;
|
||||
y1 = h - 1;
|
||||
y2 = 0;
|
||||
|
||||
start = micros_start();
|
||||
|
||||
for (x2 = 0; x2 < w; x2 += 6)
|
||||
{
|
||||
tft.drawLine(x1, y1, x2, y2, color);
|
||||
}
|
||||
|
||||
x2 = 0;
|
||||
for (y2 = 0; y2 < h; y2 += 6)
|
||||
{
|
||||
tft.drawLine(x1, y1, x2, y2, color);
|
||||
}
|
||||
|
||||
t += micros() - start;
|
||||
|
||||
return t;
|
||||
}
|
||||
|
||||
uint32_t testFastLines(uint16_t color1, uint16_t color2)
|
||||
{
|
||||
uint32_t start;
|
||||
int32_t x, y;
|
||||
int32_t w = tft.width();
|
||||
int32_t h = tft.height();
|
||||
|
||||
tft.fillScreen(TFT_BLACK);
|
||||
|
||||
start = micros_start();
|
||||
|
||||
for (y = 0; y < h; y += 5)
|
||||
tft.drawFastHLine(0, y, w, color1);
|
||||
for (x = 0; x < w; x += 5)
|
||||
tft.drawFastVLine(x, 0, h, color2);
|
||||
|
||||
return micros() - start;
|
||||
}
|
||||
|
||||
uint32_t testRects(uint16_t color)
|
||||
{
|
||||
uint32_t start;
|
||||
int32_t n, i, i2;
|
||||
int32_t cx = tft.width() / 2;
|
||||
int32_t cy = tft.height() / 2;
|
||||
|
||||
tft.fillScreen(TFT_BLACK);
|
||||
n = min(tft.width(), tft.height());
|
||||
start = micros_start();
|
||||
for (i = 2; i < n; i += 6)
|
||||
{
|
||||
i2 = i / 2;
|
||||
tft.drawRect(cx-i2, cy-i2, i, i, color);
|
||||
}
|
||||
|
||||
return micros() - start;
|
||||
}
|
||||
|
||||
uint32_t testFilledRects(uint16_t color1, uint16_t color2)
|
||||
{
|
||||
uint32_t start, t = 0;
|
||||
int32_t n, i, i2;
|
||||
int32_t cx = tft.width() / 2 - 1;
|
||||
int32_t cy = tft.height() / 2 - 1;
|
||||
|
||||
tft.fillScreen(TFT_BLACK);
|
||||
n = min(tft.width(), tft.height());
|
||||
for (i = n; i > 0; i -= 6)
|
||||
{
|
||||
i2 = i / 2;
|
||||
|
||||
start = micros_start();
|
||||
|
||||
tft.fillRect(cx-i2, cy-i2, i, i, color1);
|
||||
|
||||
t += micros() - start;
|
||||
|
||||
// Outlines are not included in timing results
|
||||
tft.drawRect(cx-i2, cy-i2, i, i, color2);
|
||||
}
|
||||
|
||||
return t;
|
||||
}
|
||||
|
||||
uint32_t testFilledCircles(uint8_t radius, uint16_t color)
|
||||
{
|
||||
uint32_t start;
|
||||
int32_t x, y, w = tft.width(), h = tft.height(), r2 = radius * 2;
|
||||
|
||||
tft.fillScreen(TFT_BLACK);
|
||||
|
||||
start = micros_start();
|
||||
|
||||
for (x = radius; x < w; x += r2)
|
||||
{
|
||||
for (y = radius; y < h; y += r2)
|
||||
{
|
||||
tft.fillCircle(x, y, radius, color);
|
||||
}
|
||||
}
|
||||
|
||||
return micros() - start;
|
||||
}
|
||||
|
||||
uint32_t testCircles(uint8_t radius, uint16_t color)
|
||||
{
|
||||
uint32_t start;
|
||||
int32_t x, y, r2 = radius * 2;
|
||||
int32_t w = tft.width() + radius;
|
||||
int32_t h = tft.height() + radius;
|
||||
|
||||
// Screen is not cleared for this one -- this is
|
||||
// intentional and does not affect the reported time.
|
||||
start = micros_start();
|
||||
|
||||
for (x = 0; x < w; x += r2)
|
||||
{
|
||||
for (y = 0; y < h; y += r2)
|
||||
{
|
||||
tft.drawCircle(x, y, radius, color);
|
||||
}
|
||||
}
|
||||
|
||||
return micros() - start;
|
||||
}
|
||||
|
||||
uint32_t testTriangles()
|
||||
{
|
||||
uint32_t start;
|
||||
int32_t n, i;
|
||||
int32_t cx = tft.width()/ 2 - 1;
|
||||
int32_t cy = tft.height() / 2 - 1;
|
||||
|
||||
tft.fillScreen(TFT_BLACK);
|
||||
n = min(cx, cy);
|
||||
|
||||
start = micros_start();
|
||||
|
||||
for (i = 0; i < n; i += 5)
|
||||
{
|
||||
tft.drawTriangle(
|
||||
cx , cy - i, // peak
|
||||
cx - i, cy + i, // bottom left
|
||||
cx + i, cy + i, // bottom right
|
||||
tft.color565(0, 0, i));
|
||||
}
|
||||
|
||||
return micros() - start;
|
||||
}
|
||||
|
||||
uint32_t testFilledTriangles()
|
||||
{
|
||||
uint32_t start, t = 0;
|
||||
int32_t i;
|
||||
int32_t cx = tft.width() / 2 - 1;
|
||||
int32_t cy = tft.height() / 2 - 1;
|
||||
|
||||
tft.fillScreen(TFT_BLACK);
|
||||
|
||||
start = micros_start();
|
||||
|
||||
for (i = min(cx,cy); i > 10; i -= 5) {
|
||||
start = micros_start();
|
||||
tft.fillTriangle(cx, cy - i, cx - i, cy + i, cx + i, cy + i,
|
||||
tft.color565(0, i, i));
|
||||
t += micros() - start;
|
||||
tft.drawTriangle(cx, cy - i, cx - i, cy + i, cx + i, cy + i,
|
||||
tft.color565(i, i, 0));
|
||||
}
|
||||
|
||||
return t;
|
||||
}
|
||||
|
||||
uint32_t testRoundRects()
|
||||
{
|
||||
uint32_t start;
|
||||
int32_t w, i, i2;
|
||||
int32_t cx = tft.width() / 2 - 1;
|
||||
int32_t cy = tft.height() / 2 - 1;
|
||||
|
||||
tft.fillScreen(TFT_BLACK);
|
||||
|
||||
w = min(tft.width(), tft.height());
|
||||
|
||||
start = micros_start();
|
||||
|
||||
for (i = 0; i < w; i += 6)
|
||||
{
|
||||
i2 = i / 2;
|
||||
tft.drawRoundRect(cx-i2, cy-i2, i, i, i/8, tft.color565(i, 0, 0));
|
||||
}
|
||||
|
||||
return micros() - start;
|
||||
}
|
||||
|
||||
uint32_t testFilledRoundRects()
|
||||
{
|
||||
uint32_t start;
|
||||
int32_t i, i2;
|
||||
int32_t cx = tft.width() / 2 - 1;
|
||||
int32_t cy = tft.height() / 2 - 1;
|
||||
|
||||
tft.fillScreen(TFT_BLACK);
|
||||
|
||||
start = micros_start();
|
||||
|
||||
for (i = min(tft.width(), tft.height()); i > 20; i -= 6)
|
||||
{
|
||||
i2 = i / 2;
|
||||
tft.fillRoundRect(cx-i2, cy-i2, i, i, i/8, tft.color565(0, i, 0));
|
||||
}
|
||||
|
||||
return micros() - start;
|
||||
}
|
||||
|
||||
/***************************************************
|
||||
Original sketch text:
|
||||
|
||||
This is an example sketch for the Adafruit 2.2" SPI display.
|
||||
This library works with the Adafruit 2.2" TFT Breakout w/SD card
|
||||
----> http://www.adafruit.com/products/1480
|
||||
|
||||
Check out the links above for our tutorials and wiring diagrams
|
||||
These displays use SPI to communicate, 4 or 5 pins are required to
|
||||
interface (RST is optional)
|
||||
Adafruit invests time and resources providing this open source code,
|
||||
please support Adafruit and open-source hardware by purchasing
|
||||
products from Adafruit!
|
||||
|
||||
Written by Limor Fried/Ladyada for Adafruit Industries.
|
||||
MIT license, all text above must be included in any redistribution
|
||||
****************************************************/
|
||||
|
||||
|
|
@ -0,0 +1,93 @@
|
|||
|
||||
#include <M5GFX.h>
|
||||
M5GFX display;
|
||||
|
||||
//#include <M5UnitOLED.h>
|
||||
//M5UnitOLED display; // default setting
|
||||
//M5UnitOLED display ( 21, 22, 400000 ); // SDA, SCL, FREQ
|
||||
|
||||
//#include <M5UnitLCD.h>
|
||||
//M5UnitLCD display; // default setting
|
||||
//M5UnitLCD display ( 21, 22, 400000 ); // SDA, SCL, FREQ
|
||||
|
||||
//#include <M5UnitGLASS2.h>
|
||||
//M5UnitGLASS2 display; // default setting
|
||||
//M5UnitGLASS2 display ( 21, 22, 400000 ); // SDA, SCL, FREQ
|
||||
|
||||
//#include <M5AtomDisplay.h>
|
||||
//M5AtomDisplay display; // default setting
|
||||
//M5AtomDisplay display ( 320, 180 ); // width, height
|
||||
|
||||
static constexpr char text0[] = "hello world";
|
||||
static constexpr char text1[] = "this";
|
||||
static constexpr char text2[] = "is";
|
||||
static constexpr char text3[] = "text";
|
||||
static constexpr char text4[] = "log";
|
||||
static constexpr char text5[] = "vertical";
|
||||
static constexpr char text6[] = "scroll";
|
||||
static constexpr char text7[] = "sample";
|
||||
static constexpr const char* text[] = { text0, text1, text2, text3, text4, text5, text6, text7 };
|
||||
|
||||
//*
|
||||
/// Example of using canvas
|
||||
M5Canvas canvas(&display);
|
||||
void setup(void)
|
||||
{
|
||||
display.begin();
|
||||
|
||||
if (display.isEPD())
|
||||
{
|
||||
display.setEpdMode(epd_mode_t::epd_fastest);
|
||||
display.invertDisplay(true);
|
||||
display.clear(TFT_BLACK);
|
||||
}
|
||||
if (display.width() < display.height())
|
||||
{
|
||||
display.setRotation(display.getRotation() ^ 1);
|
||||
}
|
||||
|
||||
canvas.setColorDepth(1); // mono color
|
||||
canvas.createSprite(display.width(), display.height());
|
||||
canvas.setTextSize((float)canvas.width() / 160);
|
||||
canvas.setTextScroll(true);
|
||||
}
|
||||
|
||||
void loop(void)
|
||||
{
|
||||
static int count = 0;
|
||||
|
||||
canvas.printf("%04d:%s\r\n", count, text[count & 7]);
|
||||
canvas.pushSprite(0, 0);
|
||||
++count;
|
||||
}
|
||||
|
||||
/*/
|
||||
|
||||
/// Example without canvas
|
||||
void setup(void)
|
||||
{
|
||||
display.begin();
|
||||
|
||||
if (display.isEPD())
|
||||
{
|
||||
display.setEpdMode(epd_mode_t::epd_fastest);
|
||||
display.invertDisplay(true);
|
||||
display.clear(TFT_BLACK);
|
||||
}
|
||||
if (display.width() < display.height())
|
||||
{
|
||||
display.setRotation(display.getRotation() ^ 1);
|
||||
}
|
||||
|
||||
display.setTextSize((float)display.width() / 160);
|
||||
display.setTextScroll(true);
|
||||
}
|
||||
|
||||
void loop(void)
|
||||
{
|
||||
static int count = 0;
|
||||
|
||||
display.printf("%04d:%s\r\n", count, text[count & 7]);
|
||||
++count;
|
||||
}
|
||||
//*/
|
||||
73
libraries/M5GFX/examples/Basic/TouchTest/TouchTest.ino
Normal file
73
libraries/M5GFX/examples/Basic/TouchTest/TouchTest.ino
Normal file
|
|
@ -0,0 +1,73 @@
|
|||
|
||||
#include <M5GFX.h>
|
||||
|
||||
M5GFX display;
|
||||
|
||||
void setup(void)
|
||||
{
|
||||
display.init();
|
||||
display.setFont(&fonts::Font4);
|
||||
|
||||
if (!display.touch())
|
||||
{
|
||||
display.setTextDatum(textdatum_t::middle_center);
|
||||
display.drawString("Touch not found.", display.width() / 2, display.height() / 2);
|
||||
}
|
||||
|
||||
display.setEpdMode(epd_mode_t::epd_fastest);
|
||||
display.startWrite();
|
||||
}
|
||||
|
||||
void loop(void)
|
||||
{
|
||||
static bool drawed = false;
|
||||
lgfx::touch_point_t tp[3];
|
||||
|
||||
int nums = display.getTouchRaw(tp, 3);
|
||||
if (nums)
|
||||
{
|
||||
for (int i = 0; i < nums; ++i)
|
||||
{
|
||||
display.setCursor(16, 16 + i * 24);
|
||||
display.printf("Raw X:%03d Y:%03d", tp[i].x, tp[i].y);
|
||||
}
|
||||
|
||||
display.convertRawXY(tp, nums);
|
||||
|
||||
for (int i = 0; i < nums; ++i)
|
||||
{
|
||||
display.setCursor(16, 128 + i * 24);
|
||||
display.printf("Convert X:%03d Y:%03d", tp[i].x, tp[i].y);
|
||||
}
|
||||
display.display();
|
||||
|
||||
display.setColor(display.isEPD() ? TFT_BLACK : TFT_WHITE);
|
||||
for (int i = 0; i < nums; ++i)
|
||||
{
|
||||
int s = tp[i].size + 3;
|
||||
switch (tp[i].id)
|
||||
{
|
||||
case 0:
|
||||
display.fillCircle(tp[i].x, tp[i].y, s);
|
||||
break;
|
||||
case 1:
|
||||
display.drawLine(tp[i].x-s, tp[i].y-s, tp[i].x+s, tp[i].y+s);
|
||||
display.drawLine(tp[i].x-s, tp[i].y+s, tp[i].x+s, tp[i].y-s);
|
||||
break;
|
||||
default:
|
||||
display.fillTriangle(tp[i].x-s, tp[i].y +s, tp[i].x+s, tp[i].y+s, tp[i].x, tp[i].y-s);
|
||||
break;
|
||||
}
|
||||
display.display();
|
||||
}
|
||||
drawed = true;
|
||||
}
|
||||
else if (drawed)
|
||||
{
|
||||
drawed = false;
|
||||
display.waitDisplay();
|
||||
display.clear();
|
||||
display.display();
|
||||
}
|
||||
vTaskDelay(1);
|
||||
}
|
||||
55
libraries/M5GFX/examples/Basic/VlwFont/VlwFont.ino
Normal file
55
libraries/M5GFX/examples/Basic/VlwFont/VlwFont.ino
Normal file
|
|
@ -0,0 +1,55 @@
|
|||
#include <SD.h>
|
||||
#include <SPIFFS.h>
|
||||
|
||||
#include <M5GFX.h>
|
||||
|
||||
M5GFX display;
|
||||
|
||||
static constexpr const uint8_t PIN_SD_CS = GPIO_NUM_4;
|
||||
|
||||
void setup(void)
|
||||
{
|
||||
display.init();
|
||||
display.print("SD wait.\n");
|
||||
|
||||
SPIFFS.begin();
|
||||
|
||||
if (!display.loadFont(SPIFFS, "/font.vlw"))
|
||||
{
|
||||
#if defined (_SD_H_)
|
||||
while (!SD.begin(PIN_SD_CS, SPI, 25000000))
|
||||
{
|
||||
ESP_LOGD("debug","SD begin failed");
|
||||
delay(500);
|
||||
}
|
||||
if (!display.loadFont(SD, "/font.vlw"))
|
||||
#endif
|
||||
{
|
||||
display.print("Font data not found...");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void loop(void)
|
||||
{
|
||||
display.print("Hello World !");
|
||||
delay(500);
|
||||
}
|
||||
|
||||
#if !defined ( ARDUINO )
|
||||
extern "C" {
|
||||
void loopTask(void*)
|
||||
{
|
||||
setup();
|
||||
for (;;) {
|
||||
loop();
|
||||
}
|
||||
vTaskDelete(NULL);
|
||||
}
|
||||
|
||||
void app_main()
|
||||
{
|
||||
xTaskCreatePinnedToCore(loopTask, "loopTask", 8192, NULL, 1, NULL, 1);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
BIN
libraries/M5GFX/examples/Basic/VlwFont/data/font.vlw
Normal file
BIN
libraries/M5GFX/examples/Basic/VlwFont/data/font.vlw
Normal file
Binary file not shown.
1215
libraries/M5GFX/examples/Basic/drawImageData/drawImageData.ino
Normal file
1215
libraries/M5GFX/examples/Basic/drawImageData/drawImageData.ino
Normal file
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
4056
libraries/M5GFX/examples/Demo/AtomDisplay_Factory/jpg_image.h
Normal file
4056
libraries/M5GFX/examples/Demo/AtomDisplay_Factory/jpg_image.h
Normal file
File diff suppressed because it is too large
Load diff
795
libraries/M5GFX/examples/Demo/AtomDisplay_Factory/png_logo.h
Normal file
795
libraries/M5GFX/examples/Demo/AtomDisplay_Factory/png_logo.h
Normal file
|
|
@ -0,0 +1,795 @@
|
|||
static constexpr const unsigned char png_logo[12701] = {
|
||||
0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52,
|
||||
0x00, 0x00, 0x01, 0xb8, 0x00, 0x00, 0x00, 0x82, 0x08, 0x03, 0x00, 0x00, 0x00, 0x03, 0x82, 0x2d,
|
||||
0xfe, 0x00, 0x00, 0x03, 0x00, 0x50, 0x4c, 0x54, 0x45, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff,
|
||||
0xff, 0xfd, 0xfe, 0xff, 0xff, 0xfe, 0xff, 0xfe, 0xfe, 0xff, 0xfd, 0xff, 0xfe, 0xff, 0xfd, 0xff,
|
||||
0xff, 0xff, 0xfe, 0xfe, 0xff, 0xfe, 0xfd, 0xfe, 0xfe, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfd,
|
||||
0xfd, 0xfe, 0xfe, 0xfd, 0xfd, 0xfd, 0xfc, 0xfd, 0xff, 0xfc, 0xfd, 0xfd, 0xfb, 0xfd, 0xfe, 0xfd,
|
||||
0xfc, 0xfc, 0xf9, 0xfc, 0xfe, 0xfb, 0xfb, 0xfb, 0xf8, 0xfc, 0xfd, 0xf7, 0xfb, 0xfd, 0xfa, 0xfa,
|
||||
0xfa, 0xf6, 0xfa, 0xfc, 0xf9, 0xf9, 0xf8, 0xf4, 0xf9, 0xfd, 0xf8, 0xf8, 0xf7, 0xf4, 0xf9, 0xfb,
|
||||
0xf7, 0xf7, 0xf6, 0xf2, 0xf8, 0xfb, 0xf7, 0xf6, 0xf5, 0xf0, 0xf7, 0xfb, 0xf6, 0xf5, 0xf5, 0xf4,
|
||||
0xf4, 0xf3, 0xed, 0xf5, 0xfa, 0xf3, 0xf3, 0xf2, 0xeb, 0xf4, 0xf9, 0xf2, 0xf1, 0xf1, 0xe9, 0xf3,
|
||||
0xf9, 0xf1, 0xf0, 0xef, 0xe6, 0xf2, 0xf8, 0xef, 0xef, 0xee, 0xe5, 0xf1, 0xf6, 0xe4, 0xf0, 0xf8,
|
||||
0xee, 0xed, 0xed, 0xe1, 0xef, 0xf7, 0xec, 0xeb, 0xeb, 0xde, 0xed, 0xf6, 0xea, 0xe9, 0xe9, 0xdc,
|
||||
0xec, 0xf5, 0xe9, 0xe7, 0xe6, 0xd9, 0xeb, 0xf4, 0xe7, 0xe5, 0xe4, 0xd6, 0xe9, 0xf4, 0xe5, 0xe3,
|
||||
0xe3, 0xd4, 0xe8, 0xf3, 0xe3, 0xe2, 0xe1, 0xd2, 0xe7, 0xf2, 0xd1, 0xe6, 0xf3, 0xe2, 0xe0, 0xdf,
|
||||
0xcf, 0xe5, 0xf2, 0xe1, 0xdf, 0xde, 0xce, 0xe4, 0xf1, 0xdf, 0xdd, 0xdd, 0xcb, 0xe3, 0xf0, 0xc8,
|
||||
0xe2, 0xf0, 0xdd, 0xdb, 0xda, 0xdb, 0xda, 0xd9, 0xc6, 0xe0, 0xef, 0xc3, 0xdf, 0xee, 0xd9, 0xd7,
|
||||
0xd7, 0xc0, 0xdd, 0xed, 0xd7, 0xd5, 0xd4, 0xbd, 0xdc, 0xed, 0xd5, 0xd2, 0xd1, 0xba, 0xda, 0xec,
|
||||
0xd2, 0xd0, 0xcf, 0xb6, 0xd8, 0xeb, 0xd1, 0xce, 0xcd, 0xb3, 0xd6, 0xea, 0xb1, 0xd5, 0xe9, 0xce,
|
||||
0xcc, 0xcb, 0xaf, 0xd4, 0xe9, 0xcd, 0xca, 0xc9, 0xac, 0xd3, 0xe8, 0xaa, 0xd1, 0xe7, 0xca, 0xc7,
|
||||
0xc6, 0xc9, 0xc6, 0xc5, 0xa6, 0xcf, 0xe6, 0xc7, 0xc4, 0xc3, 0xc5, 0xc4, 0xc2, 0xc6, 0xc3, 0xc1,
|
||||
0xa3, 0xcd, 0xe5, 0x9f, 0xcc, 0xe4, 0xc3, 0xc0, 0xbf, 0xc2, 0xbf, 0xbd, 0x9d, 0xca, 0xe3, 0x9a,
|
||||
0xc9, 0xe3, 0xbf, 0xbc, 0xbb, 0x97, 0xc7, 0xe2, 0x94, 0xc6, 0xe1, 0xbc, 0xb9, 0xb8, 0xbb, 0xb7,
|
||||
0xb6, 0x90, 0xc4, 0xe1, 0xb9, 0xb5, 0xb4, 0x8c, 0xc1, 0xdf, 0xb6, 0xb3, 0xb1, 0x88, 0xbf, 0xde,
|
||||
0xb4, 0xb0, 0xaf, 0xb2, 0xaf, 0xad, 0x84, 0xbd, 0xdd, 0x80, 0xbb, 0xdc, 0xb0, 0xac, 0xaa, 0xaf,
|
||||
0xab, 0xaa, 0xae, 0xaa, 0xa8, 0x7c, 0xb9, 0xdb, 0xac, 0xa7, 0xa7, 0x79, 0xb7, 0xda, 0xaa, 0xa6,
|
||||
0xa5, 0x75, 0xb5, 0xd9, 0xa8, 0xa3, 0xa3, 0x71, 0xb3, 0xd8, 0xa5, 0xa1, 0x9f, 0x6d, 0xb1, 0xd6,
|
||||
0xa3, 0x9e, 0x9d, 0x69, 0xae, 0xd5, 0xa1, 0x9c, 0x9b, 0x66, 0xad, 0xd4, 0x9f, 0x9b, 0x99, 0x63,
|
||||
0xab, 0xd3, 0x9d, 0x98, 0x97, 0x60, 0xa9, 0xd3, 0x9a, 0x96, 0x94, 0x5e, 0xa8, 0xd2, 0x98, 0x93,
|
||||
0x92, 0x5a, 0xa6, 0xd1, 0x57, 0xa5, 0xd0, 0x96, 0x91, 0x90, 0x96, 0x91, 0x8f, 0x95, 0x8f, 0x8e,
|
||||
0x54, 0xa3, 0xcf, 0x94, 0x8f, 0x8e, 0x93, 0x8f, 0x8d, 0x92, 0x8d, 0x8c, 0x50, 0xa1, 0xce, 0x91,
|
||||
0x8b, 0x8a, 0x4d, 0x9f, 0xcd, 0x8f, 0x8a, 0x88, 0x8d, 0x88, 0x86, 0x49, 0x9d, 0xcc, 0x8a, 0x85,
|
||||
0x83, 0x44, 0x9a, 0xcb, 0x88, 0x82, 0x81, 0x40, 0x98, 0xca, 0x3c, 0x96, 0xc9, 0x84, 0x7e, 0x7c,
|
||||
0x39, 0x95, 0xc8, 0x82, 0x7b, 0x7a, 0x35, 0x93, 0xc7, 0x81, 0x7a, 0x79, 0x80, 0x79, 0x78, 0x33,
|
||||
0x91, 0xc6, 0x7e, 0x78, 0x76, 0x30, 0x90, 0xc5, 0x7c, 0x76, 0x74, 0x2d, 0x8e, 0xc4, 0x7a, 0x73,
|
||||
0x72, 0x29, 0x8c, 0xc3, 0x78, 0x71, 0x70, 0x25, 0x8a, 0xc2, 0x22, 0x89, 0xc1, 0x75, 0x6e, 0x6d,
|
||||
0x1f, 0x87, 0xc1, 0x1d, 0x86, 0xbf, 0x72, 0x6b, 0x6a, 0x1d, 0x85, 0xc0, 0x1b, 0x84, 0xbf, 0x70,
|
||||
0x69, 0x67, 0x17, 0x82, 0xbe, 0x6d, 0x67, 0x65, 0x15, 0x81, 0xbe, 0x6c, 0x65, 0x64, 0x12, 0x80,
|
||||
0xbc, 0x6b, 0x63, 0x61, 0x10, 0x7e, 0xbc, 0x0e, 0x7d, 0xbb, 0x68, 0x61, 0x5f, 0x0b, 0x7c, 0xbb,
|
||||
0x66, 0x5f, 0x5d, 0x09, 0x7b, 0xba, 0x64, 0x5d, 0x5c, 0x07, 0x79, 0xba, 0x06, 0x79, 0xb9, 0x63,
|
||||
0x5b, 0x59, 0x04, 0x78, 0xb9, 0x03, 0x77, 0xb8, 0x01, 0x77, 0xb9, 0x00, 0x77, 0xb8, 0x00, 0x77,
|
||||
0xb7, 0x01, 0x76, 0xb8, 0x01, 0x76, 0xb7, 0x00, 0x76, 0xb9, 0x01, 0x76, 0xb6, 0x60, 0x58, 0x57,
|
||||
0x00, 0x76, 0xb8, 0x02, 0x75, 0xb7, 0x00, 0x76, 0xb7, 0x00, 0x76, 0xb6, 0x00, 0x76, 0xb5, 0x00,
|
||||
0x75, 0xb9, 0x00, 0x75, 0xb8, 0x00, 0x75, 0xb7, 0x00, 0x75, 0xb6, 0x00, 0x75, 0xb5, 0x00, 0x74,
|
||||
0xb8, 0x5e, 0x56, 0x54, 0x5b, 0x53, 0x51, 0x57, 0x50, 0x4e, 0x55, 0x4d, 0x4b, 0x53, 0x4b, 0x49,
|
||||
0x51, 0x49, 0x47, 0x4f, 0x47, 0x45, 0x4d, 0x45, 0x43, 0x4b, 0x42, 0x40, 0x48, 0x3f, 0x3d, 0x46,
|
||||
0x3d, 0x3b, 0x44, 0x3b, 0x38, 0x41, 0x38, 0x36, 0x3f, 0x36, 0x34, 0x3d, 0x33, 0x31, 0x3b, 0x31,
|
||||
0x2f, 0x38, 0x2e, 0x2c, 0x35, 0x2b, 0x29, 0x32, 0x29, 0x26, 0x30, 0x26, 0x24, 0x2e, 0x24, 0x21,
|
||||
0x2b, 0x21, 0x1f, 0x29, 0x1f, 0x1d, 0x28, 0x1d, 0x1b, 0x26, 0x1b, 0x19, 0x24, 0x1a, 0x17, 0x24,
|
||||
0x19, 0x16, 0x23, 0x19, 0x16, 0x22, 0x19, 0x14, 0x23, 0x18, 0x16, 0x23, 0x18, 0x14, 0x24, 0x17,
|
||||
0x16, 0x22, 0x18, 0x16, 0x24, 0x17, 0x14, 0x22, 0x18, 0x14, 0x23, 0x17, 0x16, 0x23, 0x17, 0x14,
|
||||
0x22, 0x17, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa7, 0x44, 0x2e, 0xfd, 0x00, 0x00, 0x20,
|
||||
0x00, 0x49, 0x44, 0x41, 0x54, 0x78, 0xda, 0xed, 0x7d, 0x07, 0x58, 0x14, 0x57, 0xbb, 0xff, 0xcc,
|
||||
0xce, 0x30, 0xae, 0xbb, 0x86, 0x88, 0x05, 0xe5, 0x2f, 0xf1, 0x82, 0x5d, 0xa3, 0x18, 0x2b, 0xea,
|
||||
0x67, 0x2c, 0xb1, 0x1b, 0xac, 0xb1, 0x5f, 0x6b, 0xd4, 0x24, 0x76, 0x93, 0x58, 0xb1, 0x45, 0x8d,
|
||||
0x35, 0x31, 0x37, 0x96, 0xa8, 0xc1, 0x96, 0xa0, 0x41, 0xc5, 0x16, 0xc0, 0x86, 0x05, 0x45, 0xca,
|
||||
0xce, 0xec, 0x3a, 0x99, 0x91, 0x99, 0xfd, 0x3e, 0x45, 0xa3, 0xd8, 0x90, 0xb2, 0x74, 0x66, 0x1c,
|
||||
0x27, 0xee, 0xf3, 0xfc, 0xcf, 0x99, 0x05, 0x61, 0x1b, 0x2c, 0x86, 0x04, 0x73, 0xef, 0xbe, 0x2a,
|
||||
0xb2, 0x3b, 0xb3, 0x33, 0x67, 0xcf, 0xef, 0xbc, 0xfd, 0x3d, 0xef, 0x20, 0x48, 0xa5, 0x11, 0xae,
|
||||
0x42, 0x31, 0x04, 0x41, 0x51, 0x04, 0xab, 0xbc, 0x6b, 0xba, 0xe9, 0x6f, 0x20, 0x82, 0x40, 0x51,
|
||||
0x1c, 0xe0, 0x56, 0x1d, 0x55, 0xa3, 0x55, 0x3d, 0x16, 0x37, 0x55, 0x80, 0x30, 0x0c, 0xf7, 0xf0,
|
||||
0x0e, 0xe8, 0x1f, 0xd4, 0xbf, 0xa3, 0x77, 0x8d, 0xaa, 0x1e, 0x8b, 0x9b, 0x2a, 0x40, 0x28, 0xe2,
|
||||
0xd5, 0x79, 0xf5, 0x81, 0xa8, 0x0b, 0x11, 0x47, 0x56, 0x8f, 0xa9, 0x5d, 0xd5, 0x83, 0x71, 0x53,
|
||||
0xd9, 0x44, 0x00, 0x01, 0x89, 0x15, 0xe9, 0xb4, 0xda, 0xed, 0x17, 0xec, 0xbe, 0x64, 0x48, 0x4a,
|
||||
0x4a, 0xd4, 0x5f, 0x3a, 0xb6, 0x68, 0x60, 0x7d, 0x9c, 0x20, 0x4a, 0xce, 0xc3, 0x10, 0xe2, 0xf5,
|
||||
0x6e, 0xe0, 0xa6, 0xbf, 0x84, 0x50, 0xc5, 0x18, 0x21, 0x10, 0x15, 0xee, 0xdd, 0x6d, 0xd2, 0x81,
|
||||
0x18, 0x9e, 0x64, 0x39, 0x96, 0x31, 0xd2, 0x34, 0xcb, 0xc4, 0x87, 0xad, 0xec, 0xdd, 0x54, 0x0b,
|
||||
0x0e, 0xd5, 0x50, 0x6b, 0x51, 0x4c, 0x83, 0x20, 0x2a, 0x8f, 0xaa, 0x1e, 0xac, 0x9b, 0x6c, 0x09,
|
||||
0x45, 0xde, 0xee, 0x32, 0x66, 0x7b, 0x94, 0x91, 0xa3, 0x69, 0x86, 0x49, 0x4c, 0x22, 0x79, 0x3d,
|
||||
0x6d, 0x64, 0x78, 0x3e, 0x64, 0xc1, 0x07, 0x4d, 0x09, 0x1c, 0x87, 0x46, 0x26, 0x81, 0x22, 0xea,
|
||||
0xaa, 0x1e, 0xa5, 0x9b, 0x4a, 0x11, 0x8a, 0x03, 0x50, 0xf0, 0xba, 0xfd, 0x16, 0x84, 0x45, 0x73,
|
||||
0x8c, 0x9e, 0xa4, 0x79, 0x2e, 0x81, 0xa3, 0x59, 0x00, 0x1f, 0x09, 0xff, 0xc4, 0x9f, 0xd8, 0xfd,
|
||||
0x51, 0x4b, 0xcb, 0x89, 0x18, 0xa6, 0x72, 0x5b, 0x9a, 0x6f, 0x12, 0xe1, 0x28, 0xa6, 0xed, 0x3d,
|
||||
0x77, 0x5f, 0x14, 0xcf, 0x33, 0x89, 0xba, 0x5b, 0x8c, 0x91, 0xa2, 0xe3, 0xa2, 0x63, 0x69, 0x9e,
|
||||
0xd6, 0x93, 0x14, 0x43, 0xf2, 0x5c, 0x7c, 0xd8, 0xe6, 0x11, 0xcd, 0xe1, 0x79, 0x1e, 0x38, 0x82,
|
||||
0x57, 0xf5, 0x58, 0xdd, 0x54, 0x42, 0x68, 0xc3, 0x6e, 0x9f, 0xed, 0x8c, 0x23, 0xf5, 0x24, 0x93,
|
||||
0x44, 0x51, 0x0c, 0x15, 0x1f, 0xb5, 0x65, 0xc6, 0x7b, 0x0d, 0x03, 0x86, 0x6e, 0x3c, 0x12, 0x4b,
|
||||
0xd3, 0x14, 0x95, 0x40, 0x73, 0x00, 0xbf, 0x73, 0xc1, 0x23, 0x5a, 0xd7, 0x45, 0x50, 0xb7, 0x57,
|
||||
0xfe, 0xc6, 0x10, 0x8a, 0x78, 0x07, 0xcc, 0xd8, 0x76, 0x85, 0xa1, 0x28, 0xf2, 0x37, 0x8a, 0xa6,
|
||||
0xb8, 0xb8, 0x73, 0x7b, 0x17, 0xb5, 0x24, 0xa0, 0x44, 0x6c, 0x3a, 0x7c, 0x67, 0xf8, 0x75, 0x8e,
|
||||
0x4a, 0xd4, 0x19, 0xf4, 0x24, 0xc7, 0xc5, 0x9e, 0x58, 0x36, 0xa2, 0xb1, 0xc6, 0x6d, 0x55, 0x56,
|
||||
0x35, 0x69, 0xd4, 0x40, 0xea, 0xc1, 0xe0, 0x88, 0x6f, 0xbf, 0x95, 0x07, 0xae, 0x73, 0x06, 0x1d,
|
||||
0x4f, 0x1b, 0x12, 0x8c, 0x46, 0x32, 0x6a, 0xc9, 0xd0, 0xe6, 0x5e, 0x96, 0x53, 0xb4, 0x58, 0xe3,
|
||||
0xde, 0x73, 0xf7, 0xc6, 0xeb, 0x81, 0xba, 0x4b, 0x64, 0x59, 0x8e, 0xa3, 0x2e, 0x6c, 0x9f, 0xdd,
|
||||
0xbe, 0xa6, 0x0a, 0x7c, 0x16, 0xb8, 0x0e, 0xc0, 0x4b, 0x70, 0xb3, 0x5f, 0x95, 0x90, 0x1a, 0xe8,
|
||||
0x35, 0x0c, 0xd7, 0xbe, 0x17, 0x7c, 0x20, 0x5a, 0x47, 0x51, 0x1c, 0xcd, 0xeb, 0x99, 0x44, 0x2a,
|
||||
0x7a, 0xe3, 0xe4, 0x77, 0x6b, 0x6b, 0x2d, 0x80, 0xc0, 0xd0, 0x97, 0xb6, 0x69, 0xcf, 0xe0, 0xd0,
|
||||
0x38, 0x86, 0xa7, 0x58, 0x86, 0xfb, 0x0f, 0xaf, 0x8f, 0x3d, 0xbd, 0x7d, 0x76, 0x63, 0x1c, 0x1a,
|
||||
0x28, 0x6e, 0x1b, 0xa5, 0x8a, 0x08, 0x45, 0x09, 0x8c, 0xf0, 0xee, 0x37, 0x73, 0xdf, 0x15, 0x86,
|
||||
0x61, 0x19, 0x3d, 0xcd, 0xf3, 0xba, 0xb8, 0x53, 0x7b, 0x47, 0xb7, 0x06, 0x7c, 0x84, 0x57, 0x47,
|
||||
0xb5, 0x8a, 0xd5, 0x5f, 0x24, 0x16, 0xbd, 0xfb, 0x2f, 0x0c, 0xbb, 0x44, 0x27, 0x18, 0xc1, 0x69,
|
||||
0x0c, 0xc3, 0xf1, 0xe7, 0x76, 0x8e, 0xef, 0xe6, 0xa5, 0x82, 0x16, 0xa6, 0x1a, 0x75, 0xc3, 0xf7,
|
||||
0xb7, 0x13, 0x86, 0x68, 0xbd, 0x3b, 0x8f, 0x09, 0x89, 0x26, 0x19, 0x86, 0xa6, 0xf5, 0xf0, 0xc7,
|
||||
0xe9, 0xbd, 0x9f, 0x75, 0x53, 0x38, 0x09, 0x23, 0xd4, 0xc8, 0xab, 0xf8, 0x32, 0x04, 0x0f, 0xf7,
|
||||
0x1a, 0xbd, 0x3a, 0xec, 0x12, 0xc9, 0x33, 0xc0, 0x3f, 0xe0, 0x18, 0xa3, 0x31, 0x6a, 0xfb, 0xd0,
|
||||
0xf6, 0x5e, 0x28, 0xea, 0x96, 0x94, 0x55, 0x40, 0x98, 0xe6, 0xed, 0xe1, 0x2b, 0xc3, 0x2e, 0x71,
|
||||
0x80, 0xdb, 0x74, 0x00, 0x34, 0xd6, 0x70, 0xe2, 0xeb, 0x7e, 0x2d, 0x6b, 0xa0, 0x98, 0x06, 0x03,
|
||||
0xbe, 0x36, 0x86, 0x11, 0x9a, 0xe2, 0x13, 0x01, 0x3e, 0x6a, 0x0d, 0x82, 0xd6, 0x55, 0x40, 0xd6,
|
||||
0x01, 0xdb, 0x85, 0x66, 0x93, 0x80, 0xb2, 0x3b, 0xb4, 0x64, 0x30, 0x8a, 0xe0, 0xee, 0x28, 0xca,
|
||||
0xdf, 0x4d, 0x58, 0xcd, 0x9e, 0xb3, 0x8f, 0x44, 0xeb, 0x75, 0x46, 0x03, 0x07, 0x80, 0x63, 0xa9,
|
||||
0xd3, 0x9b, 0x3f, 0x6a, 0x8f, 0x41, 0x8b, 0x43, 0x0d, 0x8d, 0x0e, 0xf0, 0x4b, 0x71, 0xe0, 0x12,
|
||||
0xad, 0x8e, 0xaa, 0x55, 0x28, 0x14, 0x89, 0xde, 0xfd, 0x66, 0x84, 0x5c, 0xa2, 0x69, 0x06, 0xf2,
|
||||
0x1d, 0xcb, 0xea, 0xce, 0x1d, 0x9a, 0xd9, 0xcd, 0xcb, 0x9d, 0xf7, 0xf9, 0xcb, 0x09, 0x05, 0x7f,
|
||||
0x30, 0x68, 0x53, 0xa8, 0x11, 0x54, 0xd5, 0xb0, 0xcb, 0xc2, 0x7d, 0xb1, 0xbc, 0x9e, 0xd2, 0xd1,
|
||||
0x46, 0x8e, 0xa1, 0x62, 0x7f, 0xdd, 0x36, 0xb3, 0xa1, 0x9a, 0x40, 0x71, 0x88, 0x82, 0xa6, 0xcc,
|
||||
0xab, 0x04, 0x2c, 0xda, 0x7b, 0x2e, 0x8e, 0xa2, 0x0d, 0x14, 0x4f, 0xd3, 0xba, 0xa4, 0xeb, 0x21,
|
||||
0x0b, 0x3a, 0x37, 0x44, 0x31, 0x14, 0xf5, 0x80, 0xf2, 0xd5, 0x6d, 0xae, 0xfc, 0x05, 0x84, 0x42,
|
||||
0xcc, 0xc0, 0x4f, 0x82, 0x40, 0xd5, 0x5a, 0xdf, 0x8e, 0x1f, 0x6f, 0x89, 0xd5, 0x33, 0x06, 0x5a,
|
||||
0x4f, 0xeb, 0xb9, 0x24, 0xdd, 0x85, 0xed, 0x9f, 0xb5, 0xf6, 0x42, 0x30, 0x1c, 0xc6, 0x44, 0x08,
|
||||
0x18, 0x90, 0xac, 0xd7, 0xa6, 0x9d, 0xbf, 0xe3, 0xab, 0x00, 0x8f, 0xef, 0xfd, 0x25, 0x7b, 0xaf,
|
||||
0x00, 0xb5, 0x68, 0x30, 0xd2, 0xc0, 0x0c, 0x4d, 0xba, 0xbe, 0x65, 0x46, 0xe7, 0x86, 0xd0, 0xc6,
|
||||
0x54, 0xb9, 0x61, 0xfb, 0x4b, 0x08, 0x85, 0x4e, 0x17, 0x82, 0x54, 0xd3, 0x10, 0x1e, 0xbe, 0xbd,
|
||||
0xbf, 0x0e, 0x8b, 0xe1, 0x79, 0x8a, 0x01, 0xbe, 0xb6, 0xd1, 0x10, 0x77, 0x6a, 0xd9, 0x08, 0x3f,
|
||||
0x8d, 0x92, 0x19, 0x40, 0x08, 0x28, 0x1d, 0x89, 0x7a, 0x03, 0x0e, 0xdf, 0x4e, 0x3e, 0x3b, 0xc8,
|
||||
0x61, 0x2c, 0x59, 0xab, 0xc2, 0xb0, 0xb7, 0x5b, 0x4e, 0xfa, 0xea, 0x5c, 0xfc, 0xbf, 0xff, 0x9d,
|
||||
0xc4, 0x52, 0xc6, 0xa4, 0xa4, 0x5b, 0xb1, 0x61, 0x9b, 0xfb, 0x35, 0x24, 0x34, 0xa8, 0x0a, 0x75,
|
||||
0x43, 0xf7, 0x17, 0x10, 0x0a, 0x70, 0x53, 0x21, 0xc0, 0xe2, 0xa8, 0xdf, 0x73, 0x59, 0x48, 0x0c,
|
||||
0x4f, 0xb3, 0xc0, 0x8a, 0x64, 0x69, 0x8a, 0x8a, 0x0e, 0xfe, 0xe8, 0xdd, 0xba, 0x60, 0xce, 0x01,
|
||||
0xbb, 0xa1, 0x2a, 0x88, 0x9b, 0x4f, 0x9f, 0x1d, 0x37, 0x4d, 0x05, 0x2f, 0x73, 0x7e, 0x6c, 0xe0,
|
||||
0xf0, 0x32, 0x5a, 0xe8, 0xdc, 0x79, 0xb7, 0x9f, 0xb4, 0xee, 0x0a, 0x50, 0x75, 0x06, 0x23, 0x97,
|
||||
0x44, 0xea, 0xe9, 0x98, 0x03, 0x2b, 0xfb, 0x35, 0xd4, 0xe2, 0x6a, 0x60, 0x8c, 0x56, 0xf5, 0xd7,
|
||||
0xfc, 0x5f, 0x48, 0xc0, 0xec, 0xd0, 0x68, 0x7d, 0x7b, 0xcf, 0x3c, 0x16, 0x47, 0xd3, 0x34, 0xb4,
|
||||
0x47, 0xc0, 0x9f, 0x63, 0xdb, 0xc6, 0xb4, 0x46, 0x08, 0x8b, 0xb3, 0xad, 0x94, 0x97, 0x34, 0x18,
|
||||
0xb4, 0xf8, 0x41, 0xb6, 0x20, 0x09, 0x42, 0xf6, 0xd3, 0x2f, 0xea, 0x38, 0xbc, 0x0c, 0x70, 0xdc,
|
||||
0x80, 0xd0, 0x05, 0xb6, 0x4a, 0xfb, 0xc9, 0x3b, 0xc3, 0x29, 0x5d, 0x02, 0x03, 0xc0, 0xa7, 0x28,
|
||||
0x3a, 0xe1, 0xc4, 0xdc, 0x81, 0x8d, 0xbd, 0xc0, 0xd2, 0x70, 0x53, 0x65, 0x13, 0x98, 0xf0, 0xba,
|
||||
0xbd, 0xa7, 0x85, 0x44, 0x33, 0x2c, 0x99, 0xc8, 0x02, 0xbf, 0x8d, 0x8e, 0xff, 0x35, 0x64, 0x7c,
|
||||
0x00, 0x14, 0x91, 0x5a, 0x80, 0x04, 0xa1, 0x56, 0x69, 0x09, 0xcf, 0x01, 0xf3, 0xaf, 0x65, 0x88,
|
||||
0x66, 0x59, 0xca, 0x49, 0x3d, 0xbb, 0xc2, 0xc7, 0xc9, 0x55, 0xa0, 0x04, 0x85, 0x52, 0x17, 0xd5,
|
||||
0xb6, 0x9f, 0xbc, 0x2f, 0x22, 0x81, 0xe7, 0x38, 0x56, 0x67, 0x00, 0x2e, 0x45, 0x4c, 0xe8, 0xec,
|
||||
0x81, 0xf5, 0xab, 0xfa, 0x4b, 0xfe, 0xaf, 0x22, 0x68, 0x48, 0x42, 0x4e, 0xa8, 0x1f, 0x14, 0x1c,
|
||||
0x1e, 0x93, 0xa4, 0x67, 0x38, 0x1d, 0xab, 0x67, 0x58, 0xfa, 0x48, 0xf0, 0xc0, 0xd6, 0xa5, 0x4f,
|
||||
0xc3, 0x7c, 0xc6, 0xee, 0x78, 0x64, 0x12, 0x04, 0x51, 0x14, 0x52, 0xd7, 0x8e, 0x6c, 0xe2, 0x52,
|
||||
0x91, 0x50, 0xeb, 0xc1, 0xcb, 0x42, 0x79, 0x92, 0xe4, 0x8d, 0x0c, 0x63, 0xa4, 0xf5, 0xf1, 0x11,
|
||||
0x1b, 0xa7, 0x35, 0x56, 0xd4, 0x1c, 0xbc, 0x1f, 0x5a, 0x72, 0x7b, 0x37, 0x55, 0x8c, 0x50, 0xc5,
|
||||
0x42, 0x54, 0x34, 0x17, 0x98, 0xbd, 0xa0, 0x25, 0xa1, 0x17, 0x68, 0x96, 0x27, 0x19, 0x4a, 0x4f,
|
||||
0x32, 0x5c, 0xc4, 0x96, 0xc1, 0x01, 0x45, 0x71, 0x64, 0x65, 0x66, 0x31, 0x74, 0xd8, 0xb7, 0x77,
|
||||
0xd3, 0x25, 0x59, 0x14, 0xf2, 0xd2, 0x0e, 0xce, 0x6a, 0xe1, 0xd2, 0xf5, 0x81, 0xf9, 0x5f, 0x33,
|
||||
0x60, 0xe0, 0xe6, 0x53, 0x7a, 0xe0, 0xd6, 0x71, 0x9c, 0x0e, 0x18, 0x99, 0x31, 0xe1, 0xeb, 0x26,
|
||||
0x79, 0x23, 0xaf, 0xc2, 0x98, 0x84, 0x72, 0x92, 0x9b, 0x2a, 0x4e, 0x98, 0x1a, 0x58, 0x23, 0x28,
|
||||
0xaa, 0x6a, 0xfa, 0xc1, 0x82, 0x10, 0x63, 0x92, 0xc1, 0x40, 0x72, 0xbc, 0x81, 0xd3, 0xc7, 0x9e,
|
||||
0x5e, 0x37, 0xde, 0x8f, 0xc0, 0x4b, 0xb1, 0x44, 0x93, 0x01, 0x6b, 0x6f, 0x14, 0x08, 0x82, 0xf0,
|
||||
0x3c, 0xe7, 0xc9, 0xd5, 0x29, 0x2d, 0x5c, 0x9d, 0x6c, 0xd4, 0x82, 0x90, 0xef, 0x47, 0x2b, 0x4f,
|
||||
0xc4, 0xdc, 0x62, 0x39, 0x23, 0xcb, 0xe9, 0x75, 0x2c, 0x1b, 0xbe, 0x6e, 0x78, 0x7b, 0x4c, 0x43,
|
||||
0x00, 0xc9, 0x8c, 0x63, 0xb0, 0xcc, 0xc1, 0xcd, 0x71, 0x15, 0x26, 0x60, 0x6d, 0xa0, 0x38, 0x46,
|
||||
0xa0, 0xbe, 0x1d, 0xe7, 0xee, 0x8d, 0xa1, 0x79, 0x8e, 0x62, 0x69, 0xf6, 0x37, 0x3e, 0x36, 0x62,
|
||||
0xfb, 0xec, 0xc6, 0x30, 0x9d, 0xa3, 0xa4, 0x65, 0x20, 0xf9, 0x74, 0x5d, 0x75, 0xd1, 0x24, 0x01,
|
||||
0x6e, 0x13, 0x53, 0x6f, 0x2e, 0xef, 0x81, 0x58, 0x82, 0x94, 0x5a, 0x17, 0x6e, 0xa0, 0x05, 0xec,
|
||||
0x0c, 0x2e, 0x83, 0x36, 0x9c, 0xb1, 0xf9, 0x54, 0x6c, 0x12, 0xcd, 0x24, 0xd1, 0x14, 0xe4, 0xe9,
|
||||
0xf0, 0x75, 0xfd, 0x5a, 0xbe, 0x05, 0xf8, 0x0d, 0x1e, 0x53, 0x63, 0x6e, 0xe0, 0x2a, 0x4e, 0x8a,
|
||||
0x6f, 0xe6, 0x17, 0xb4, 0xf1, 0x48, 0x3c, 0xa5, 0x03, 0x36, 0x24, 0xc7, 0x50, 0xa4, 0xfe, 0xd4,
|
||||
0xdc, 0xfe, 0x8d, 0x35, 0x8a, 0x10, 0x2b, 0x4a, 0x88, 0x36, 0x1a, 0x75, 0xf8, 0x5e, 0x76, 0x01,
|
||||
0x80, 0xad, 0xe0, 0xc9, 0xf1, 0x61, 0x6d, 0x6b, 0x20, 0xae, 0x57, 0xdf, 0x61, 0xc0, 0xac, 0x81,
|
||||
0x66, 0x8a, 0xaa, 0xba, 0xb6, 0x61, 0xef, 0x19, 0x61, 0xb1, 0x34, 0x6d, 0xa0, 0x19, 0x1d, 0xe0,
|
||||
0x3a, 0x18, 0xac, 0xfe, 0x17, 0x4e, 0x28, 0xba, 0xce, 0x2d, 0x2a, 0x5f, 0x87, 0x08, 0xbc, 0xee,
|
||||
0xbf, 0xbe, 0x0a, 0xbd, 0xc2, 0xe9, 0xf9, 0xc4, 0x44, 0x9e, 0x61, 0xfe, 0x1d, 0x1f, 0xb1, 0x72,
|
||||
0x74, 0xd3, 0xb7, 0xc1, 0x8c, 0xc3, 0xf9, 0x56, 0xa6, 0xb4, 0x7a, 0xf7, 0xfd, 0xf7, 0x4c, 0x50,
|
||||
0x4a, 0xca, 0xcf, 0x22, 0x3f, 0xed, 0xa1, 0x56, 0x6b, 0x11, 0x0c, 0x73, 0x85, 0xd9, 0x14, 0xd2,
|
||||
0x40, 0x79, 0x08, 0x3e, 0x00, 0x99, 0xaa, 0x61, 0xd0, 0xc2, 0xb0, 0xeb, 0x3c, 0xcd, 0xd0, 0x3a,
|
||||
0x8a, 0x32, 0x18, 0xe3, 0x4e, 0xed, 0x1d, 0x1f, 0x00, 0xee, 0xa1, 0x76, 0x57, 0x61, 0xbe, 0x0e,
|
||||
0xf9, 0x0e, 0x5e, 0x10, 0x76, 0x9d, 0xe1, 0x48, 0x96, 0x85, 0xd5, 0x76, 0xb1, 0xe1, 0xdb, 0x83,
|
||||
0xfc, 0x8a, 0xc5, 0x23, 0x42, 0x00, 0x3d, 0xe4, 0x33, 0x6a, 0xcd, 0xbd, 0x2c, 0x51, 0x2e, 0x10,
|
||||
0x72, 0x9e, 0x5d, 0x5e, 0xdf, 0x0c, 0xbe, 0x8b, 0x22, 0x88, 0x25, 0xc2, 0x62, 0x4d, 0x75, 0x9a,
|
||||
0x74, 0xea, 0x31, 0xe0, 0xc3, 0x0f, 0x07, 0xf5, 0xea, 0xda, 0xa2, 0x94, 0x5b, 0xae, 0x5c, 0x8a,
|
||||
0x50, 0x3c, 0x04, 0xa8, 0xed, 0x3c, 0xea, 0x76, 0x5b, 0x7d, 0xe8, 0x4a, 0xa2, 0x81, 0xd5, 0xff,
|
||||
0xc6, 0x1b, 0x13, 0x29, 0xfa, 0xd2, 0xb6, 0xc9, 0xde, 0xb8, 0xbb, 0xae, 0xc8, 0x55, 0x52, 0x0a,
|
||||
0x5b, 0x09, 0x30, 0x9f, 0x78, 0xfd, 0xf7, 0xa7, 0x85, 0xc6, 0xe8, 0x29, 0x5a, 0xaf, 0xd3, 0x01,
|
||||
0x5b, 0xd2, 0x10, 0xbe, 0x73, 0xf2, 0x7b, 0x56, 0xab, 0xdf, 0xa7, 0xef, 0x9c, 0x64, 0x93, 0x28,
|
||||
0x02, 0xe5, 0x66, 0xba, 0xb1, 0xa9, 0x7b, 0x1d, 0xa7, 0x57, 0xf4, 0x6c, 0x3b, 0x60, 0xd6, 0xda,
|
||||
0xfd, 0xc7, 0x2f, 0xdf, 0xbc, 0x7d, 0xf5, 0xe4, 0xe1, 0x4d, 0x5f, 0x8e, 0xea, 0xd3, 0xac, 0x16,
|
||||
0x52, 0x62, 0xe5, 0xbf, 0xba, 0x24, 0xaa, 0xd6, 0x78, 0xf8, 0x0d, 0x5e, 0x77, 0x28, 0x96, 0xa5,
|
||||
0x79, 0x8a, 0x61, 0x28, 0x8e, 0xa4, 0xa3, 0x3e, 0x40, 0xd5, 0x6e, 0xe4, 0x5c, 0x24, 0x14, 0x1a,
|
||||
0x0c, 0x80, 0x0d, 0xea, 0x4e, 0x5a, 0x17, 0x7e, 0x05, 0x70, 0x1b, 0x97, 0x08, 0x0b, 0xec, 0xe2,
|
||||
0x8e, 0x04, 0xf7, 0x6c, 0x4c, 0xe0, 0xc5, 0x0a, 0x07, 0xfc, 0x5f, 0xe3, 0x93, 0xfd, 0x29, 0x99,
|
||||
0x66, 0x20, 0x22, 0x0b, 0xd2, 0x8f, 0xce, 0x6b, 0x5b, 0xc3, 0xa9, 0x09, 0x41, 0x0c, 0x5a, 0x7f,
|
||||
0xfb, 0x51, 0x56, 0x9e, 0x2c, 0x01, 0x71, 0x0a, 0x43, 0x2a, 0x39, 0xcf, 0x52, 0xae, 0xee, 0x19,
|
||||
0xd2, 0xc4, 0x3e, 0xf1, 0xad, 0xd1, 0x12, 0x88, 0x4a, 0x55, 0xbf, 0xfd, 0x67, 0xdb, 0xaf, 0x24,
|
||||
0xb2, 0xc0, 0x2d, 0xa7, 0x58, 0xe6, 0xd6, 0xec, 0xaa, 0x9e, 0x8d, 0x7f, 0x14, 0xa9, 0x80, 0x4d,
|
||||
0xe2, 0x3d, 0x70, 0xd1, 0xb1, 0x2b, 0x34, 0x74, 0xaf, 0x38, 0x96, 0xd5, 0x25, 0x1d, 0x5b, 0x19,
|
||||
0x14, 0x00, 0x0d, 0x05, 0x0b, 0x7b, 0x68, 0x11, 0x4d, 0x9d, 0x0f, 0x37, 0xa4, 0x64, 0x0a, 0xc0,
|
||||
0x8e, 0x14, 0x73, 0xce, 0x2c, 0xee, 0xde, 0x00, 0x26, 0xe1, 0x6c, 0x88, 0xb0, 0xc8, 0xd4, 0xb6,
|
||||
0x9f, 0xde, 0x7e, 0x96, 0x2b, 0xc8, 0x16, 0xdc, 0x04, 0x00, 0xb4, 0x54, 0x58, 0x98, 0x9b, 0x91,
|
||||
0xfc, 0xcb, 0xd4, 0x56, 0x48, 0xd1, 0xb5, 0x8a, 0x09, 0x28, 0x34, 0x35, 0xee, 0xa1, 0x42, 0xfd,
|
||||
0xba, 0x7d, 0xb6, 0x3d, 0xc6, 0x68, 0xe4, 0xf5, 0x86, 0xd8, 0xd0, 0x7f, 0x55, 0xf5, 0x5c, 0xfc,
|
||||
0x73, 0x08, 0x98, 0xf9, 0x9a, 0xc6, 0x3d, 0x57, 0x86, 0xe9, 0x74, 0x30, 0xd7, 0x46, 0xea, 0x59,
|
||||
0x23, 0x70, 0x8a, 0xc7, 0x7b, 0x03, 0xab, 0x1c, 0x2b, 0x16, 0x6b, 0xea, 0x46, 0x7d, 0x77, 0x24,
|
||||
0xe7, 0x00, 0x30, 0x64, 0xf9, 0xd9, 0x9d, 0x35, 0x03, 0xe0, 0x5b, 0x98, 0x43, 0xdb, 0x0f, 0x6d,
|
||||
0x35, 0xe7, 0x97, 0xf4, 0x7c, 0x59, 0x92, 0xa4, 0xb4, 0xdf, 0x4f, 0xee, 0x5a, 0x3a, 0x6b, 0xfa,
|
||||
0x9c, 0xf5, 0x3f, 0x44, 0xde, 0x49, 0x35, 0x09, 0x00, 0x46, 0x39, 0x7d, 0xd7, 0x38, 0x7f, 0x6b,
|
||||
0xbb, 0x03, 0xbc, 0x52, 0xab, 0x61, 0xb4, 0x5a, 0xad, 0x6a, 0xda, 0x2d, 0x68, 0xf4, 0xe8, 0xc1,
|
||||
0x01, 0x75, 0x61, 0xb5, 0xba, 0xdb, 0x1d, 0x70, 0x89, 0x70, 0xcc, 0xef, 0xfd, 0xd9, 0xbb, 0x59,
|
||||
0x9a, 0xe1, 0x79, 0x9e, 0xd2, 0x1b, 0xb9, 0xf8, 0xa8, 0xcd, 0xd3, 0x1a, 0x13, 0x40, 0x76, 0x56,
|
||||
0x87, 0x47, 0x35, 0x80, 0x45, 0x7c, 0x7a, 0x2c, 0x8f, 0xcc, 0x01, 0x60, 0x08, 0x62, 0xe6, 0xc3,
|
||||
0x0d, 0x43, 0x8a, 0x55, 0x9b, 0x35, 0x72, 0x00, 0x03, 0x4c, 0xeb, 0x3f, 0x6c, 0x7d, 0x2a, 0x50,
|
||||
0x80, 0x85, 0x72, 0xd6, 0xe3, 0xef, 0xc7, 0x35, 0xf1, 0x54, 0x0e, 0x68, 0x5b, 0x0c, 0x58, 0x7b,
|
||||
0xf4, 0x41, 0xba, 0x04, 0xc3, 0xd0, 0xf7, 0xbf, 0xe8, 0x6a, 0xf3, 0x31, 0x35, 0x0e, 0x5d, 0x40,
|
||||
0x1c, 0xf5, 0x80, 0xdc, 0x0a, 0x53, 0x74, 0x6e, 0x27, 0xce, 0x65, 0xf2, 0x0b, 0xda, 0x1e, 0x7e,
|
||||
0x1d, 0xf8, 0xc1, 0x46, 0x9a, 0x32, 0x32, 0x5c, 0x4c, 0xd8, 0x82, 0x20, 0x5f, 0x02, 0x53, 0x82,
|
||||
0xc8, 0xe0, 0x20, 0x70, 0xad, 0x30, 0x62, 0xce, 0xfd, 0xec, 0x17, 0xb2, 0xf0, 0xe2, 0x65, 0xea,
|
||||
0xc5, 0x39, 0x7d, 0x8a, 0x03, 0x92, 0x18, 0x62, 0xa7, 0xb3, 0x7c, 0xbe, 0x3c, 0x93, 0x9a, 0x03,
|
||||
0x98, 0x52, 0x30, 0x25, 0x2f, 0x1d, 0x54, 0xab, 0x34, 0xdf, 0xf8, 0xf4, 0x98, 0x7a, 0x36, 0x0d,
|
||||
0x48, 0x59, 0x29, 0xf3, 0xde, 0xc8, 0x52, 0x6f, 0x5b, 0xb6, 0x84, 0x60, 0x28, 0xa1, 0xb5, 0x24,
|
||||
0xd2, 0x51, 0x25, 0x6d, 0xeb, 0x46, 0xce, 0x25, 0xf2, 0xee, 0xbd, 0xfa, 0x50, 0x2c, 0x05, 0x0c,
|
||||
0x83, 0x44, 0x23, 0xcf, 0xd0, 0xfa, 0x88, 0x85, 0x41, 0x4d, 0xbd, 0x6c, 0xfc, 0x28, 0xf4, 0x5b,
|
||||
0xe1, 0x05, 0xb0, 0x24, 0x5f, 0x88, 0x17, 0x27, 0xfa, 0x38, 0xbf, 0x50, 0xbd, 0x51, 0xbb, 0x1e,
|
||||
0x67, 0x01, 0x85, 0x26, 0xcb, 0xa9, 0xeb, 0x87, 0x35, 0xb2, 0x75, 0xec, 0x6a, 0xf5, 0xfd, 0x1c,
|
||||
0xd8, 0xa3, 0x92, 0x90, 0x77, 0x63, 0x96, 0x23, 0x63, 0xd4, 0x11, 0x58, 0x9e, 0xcd, 0x5b, 0x7b,
|
||||
0xb9, 0xc5, 0xa6, 0x13, 0xc2, 0xb0, 0x65, 0x31, 0x46, 0x16, 0x70, 0x9a, 0x2e, 0x91, 0xe6, 0xe2,
|
||||
0x8e, 0x7c, 0x1d, 0xd4, 0x18, 0x73, 0x90, 0x94, 0xee, 0xb4, 0x26, 0x39, 0x4d, 0x16, 0x80, 0xac,
|
||||
0x34, 0x9d, 0x5f, 0xd1, 0xb5, 0x81, 0x12, 0x8a, 0x2e, 0xb5, 0x71, 0x0a, 0x72, 0xa6, 0x7f, 0x9f,
|
||||
0x1d, 0xf7, 0x72, 0x0b, 0x65, 0x41, 0x2c, 0x78, 0x78, 0x66, 0x62, 0x13, 0xc7, 0xf7, 0xaa, 0x35,
|
||||
0xec, 0x5e, 0x96, 0x24, 0x3d, 0x37, 0x7d, 0xdb, 0xa9, 0x8c, 0xf1, 0xe0, 0x04, 0x01, 0x4c, 0x4d,
|
||||
0x02, 0xad, 0x3f, 0x70, 0x76, 0x68, 0x4c, 0x4c, 0x68, 0x90, 0x3b, 0xeb, 0xe3, 0x8c, 0xc2, 0x8c,
|
||||
0x0c, 0xcd, 0x1b, 0x0d, 0x2c, 0x1f, 0x17, 0xbe, 0x73, 0x78, 0x73, 0x20, 0xbe, 0xaa, 0xdb, 0x6f,
|
||||
0x66, 0xc3, 0xea, 0x8d, 0xfc, 0x06, 0x58, 0x94, 0x22, 0xc0, 0xce, 0x74, 0x78, 0x7e, 0x57, 0x1f,
|
||||
0xc4, 0xe2, 0x46, 0xbf, 0x22, 0x9f, 0xae, 0x8b, 0xcf, 0xe4, 0x02, 0x56, 0x13, 0xf3, 0xd3, 0x92,
|
||||
0x67, 0xb5, 0x73, 0xec, 0x86, 0xc1, 0xd5, 0x30, 0xe5, 0x72, 0x8e, 0xf9, 0xf9, 0xf3, 0x67, 0x2b,
|
||||
0x9c, 0x47, 0x46, 0x60, 0x0d, 0x0b, 0x30, 0x96, 0xbc, 0xbb, 0x4d, 0x3a, 0x74, 0x85, 0xd3, 0x73,
|
||||
0xd4, 0xe6, 0xce, 0x55, 0x3d, 0x3f, 0x6f, 0x28, 0x55, 0x47, 0x7f, 0xe5, 0x18, 0x8e, 0x26, 0x0d,
|
||||
0x0c, 0x79, 0x69, 0x51, 0x47, 0x54, 0xa9, 0x6b, 0x45, 0x1c, 0xe4, 0xa4, 0xd1, 0x1a, 0x7d, 0x66,
|
||||
0x45, 0x3e, 0x13, 0x0a, 0x24, 0x39, 0xdf, 0x74, 0xff, 0x97, 0x41, 0x8a, 0xc4, 0xb4, 0x4c, 0x3f,
|
||||
0x86, 0x61, 0x3d, 0x7e, 0xba, 0x9f, 0x25, 0x0a, 0x05, 0xb2, 0xf4, 0xe4, 0x97, 0x89, 0x1d, 0x10,
|
||||
0xc2, 0x31, 0x2c, 0x30, 0x3e, 0x5d, 0xa3, 0xd3, 0xb5, 0x6c, 0x60, 0xba, 0x3c, 0x73, 0x9e, 0x02,
|
||||
0x52, 0xb2, 0x07, 0xb5, 0xc7, 0x7f, 0x75, 0xec, 0x0a, 0xcb, 0x33, 0x2c, 0x9f, 0x14, 0x35, 0xd4,
|
||||
0xed, 0x8d, 0x3b, 0x24, 0x14, 0x39, 0x46, 0xb2, 0xbc, 0x2e, 0x91, 0xe1, 0x13, 0x63, 0x8f, 0x6d,
|
||||
0x19, 0xe8, 0x87, 0x02, 0xe0, 0x6c, 0xed, 0x7c, 0x25, 0xbe, 0x8c, 0x21, 0xf5, 0xfa, 0xcc, 0xb9,
|
||||
0x9d, 0x01, 0x2d, 0x4b, 0xc1, 0x74, 0x7b, 0xcf, 0xa0, 0x77, 0x94, 0x43, 0x00, 0x35, 0xcf, 0x76,
|
||||
0x6b, 0x2e, 0x67, 0x9a, 0x65, 0xa1, 0x40, 0x34, 0xdd, 0xf9, 0xa4, 0x7b, 0x2d, 0xa7, 0x71, 0x46,
|
||||
0x42, 0x4d, 0xa8, 0x31, 0xcf, 0x79, 0x8f, 0x24, 0x73, 0x61, 0xde, 0x38, 0xa7, 0xe3, 0x51, 0xa9,
|
||||
0x10, 0xc5, 0x9f, 0x4c, 0xa4, 0x69, 0x8e, 0xbd, 0xc5, 0xd2, 0x17, 0x46, 0xb8, 0xe3, 0x96, 0x0e,
|
||||
0x09, 0x47, 0xc6, 0x1f, 0x8a, 0xe5, 0x80, 0xfb, 0xc6, 0xb3, 0x0c, 0x45, 0xc6, 0xc1, 0x80, 0xb2,
|
||||
0xc6, 0xb1, 0x3d, 0x00, 0xdf, 0xf4, 0x6c, 0xb7, 0xe2, 0x7c, 0x7a, 0xae, 0x28, 0x4b, 0x72, 0xee,
|
||||
0xa3, 0x35, 0x23, 0x5b, 0x78, 0x22, 0xb5, 0x02, 0xa7, 0xde, 0xc8, 0x90, 0x0a, 0x80, 0x49, 0x92,
|
||||
0x75, 0x73, 0x6b, 0x60, 0xad, 0xa2, 0xe4, 0x82, 0xc3, 0xb9, 0x56, 0x32, 0xb4, 0x88, 0xff, 0x19,
|
||||
0x11, 0x78, 0x83, 0xeb, 0x9d, 0x0d, 0x47, 0xdb, 0xb4, 0xf7, 0xca, 0xb0, 0x38, 0x9a, 0x65, 0xb9,
|
||||
0x24, 0xe0, 0x9c, 0x70, 0x0c, 0x75, 0x61, 0x78, 0x55, 0xcf, 0xd0, 0x1b, 0x4b, 0x7e, 0x41, 0xdb,
|
||||
0x8e, 0xc5, 0x73, 0x0c, 0x98, 0x25, 0x8e, 0xfc, 0x37, 0x43, 0xfe, 0x3a, 0x77, 0x60, 0xe3, 0xb7,
|
||||
0xcb, 0xd8, 0xb1, 0xdd, 0x61, 0xd7, 0xed, 0xf4, 0x5c, 0xc5, 0xe4, 0xbf, 0xbb, 0x66, 0x54, 0xe0,
|
||||
0xb8, 0xfd, 0x0f, 0x65, 0x59, 0x12, 0x85, 0xec, 0x87, 0x27, 0x07, 0xd4, 0xb1, 0x78, 0x68, 0x4e,
|
||||
0x73, 0x32, 0x8a, 0x37, 0xdf, 0xf5, 0x9a, 0x08, 0x3e, 0xbc, 0xd6, 0xea, 0x40, 0xc9, 0x26, 0x9e,
|
||||
0xc6, 0x3d, 0xe7, 0xee, 0x65, 0x68, 0x86, 0xe4, 0xa9, 0x24, 0x4e, 0xc7, 0x70, 0x0c, 0xcd, 0x5e,
|
||||
0x18, 0xfe, 0xe6, 0x70, 0x5c, 0x55, 0x8c, 0x04, 0x2b, 0x2b, 0xc5, 0xe5, 0xd7, 0x65, 0xd1, 0xbe,
|
||||
0x58, 0x8e, 0x67, 0x78, 0xca, 0xc8, 0xd3, 0xe4, 0xf5, 0x88, 0x9d, 0x73, 0x9b, 0x02, 0xc6, 0xa9,
|
||||
0x0e, 0x3c, 0x2b, 0x58, 0x6f, 0x6c, 0xfb, 0xc9, 0x3a, 0x6d, 0xa7, 0xec, 0x48, 0x03, 0x2c, 0x26,
|
||||
0x99, 0xb3, 0x53, 0xef, 0x3d, 0xcb, 0x83, 0x6e, 0x79, 0xc1, 0x8d, 0x35, 0x7d, 0xfd, 0x91, 0x72,
|
||||
0x08, 0xaa, 0xbe, 0x3a, 0x81, 0xc7, 0x33, 0x60, 0xf8, 0x65, 0x6c, 0xf1, 0x9b, 0x8a, 0xf3, 0x06,
|
||||
0x7e, 0x78, 0xa8, 0xc0, 0xf1, 0xa6, 0x43, 0x77, 0x86, 0x5f, 0x37, 0xea, 0x28, 0x20, 0xb8, 0x49,
|
||||
0x92, 0xe1, 0x78, 0x96, 0xe5, 0xd9, 0x12, 0x8e, 0x23, 0x88, 0x0f, 0x77, 0x9d, 0xdd, 0xdf, 0xd5,
|
||||
0x69, 0xfe, 0xc8, 0x67, 0xd8, 0xd1, 0xf3, 0xcb, 0x5b, 0xd9, 0xbd, 0x5d, 0x7d, 0xe2, 0xe7, 0x5f,
|
||||
0x40, 0xfa, 0xdc, 0x42, 0xe0, 0xb7, 0x59, 0x1d, 0x6a, 0x39, 0x02, 0x05, 0xf3, 0x9f, 0xb8, 0xe6,
|
||||
0x97, 0x93, 0x67, 0xcf, 0x9f, 0x3d, 0x73, 0xf4, 0xf0, 0xaa, 0x4f, 0x3a, 0xd5, 0xb3, 0x5a, 0x82,
|
||||
0x60, 0xec, 0xbd, 0x66, 0xcd, 0x9b, 0x3f, 0x7f, 0xfe, 0x3c, 0x48, 0x96, 0xff, 0x8a, 0x5e, 0x4c,
|
||||
0xef, 0xee, 0x60, 0x30, 0x0d, 0xbe, 0x3c, 0x7e, 0x72, 0x45, 0x59, 0x53, 0x02, 0x67, 0xa3, 0x5e,
|
||||
0xf7, 0x15, 0x3f, 0x1e, 0x8f, 0x3c, 0x7f, 0x3e, 0xf2, 0xf8, 0x9e, 0x15, 0xc3, 0x5a, 0x21, 0x36,
|
||||
0xc6, 0x81, 0x0a, 0xe9, 0xbe, 0x29, 0x72, 0x57, 0x3b, 0xbb, 0x52, 0xef, 0xb5, 0x67, 0x0e, 0x17,
|
||||
0x6b, 0x1a, 0x8c, 0x68, 0xde, 0x7f, 0xd1, 0x01, 0x46, 0xd9, 0x74, 0xcf, 0xd0, 0x1c, 0x19, 0x1b,
|
||||
0xf1, 0xf5, 0xa4, 0xc6, 0x98, 0x1a, 0x55, 0x43, 0xef, 0xdb, 0xc1, 0xde, 0x9a, 0x5a, 0x6d, 0xe7,
|
||||
0x1d, 0x4d, 0xcb, 0x2b, 0x50, 0x22, 0x29, 0x22, 0xb0, 0x24, 0x1f, 0xfd, 0xfc, 0x61, 0xb3, 0x72,
|
||||
0x77, 0x4e, 0x41, 0x09, 0xda, 0x6c, 0xed, 0xc5, 0x8c, 0x02, 0x00, 0xf9, 0xd3, 0x66, 0x96, 0xf7,
|
||||
0x70, 0xcb, 0xa0, 0x50, 0xa5, 0xcc, 0xbd, 0x71, 0xd0, 0xd7, 0xa1, 0xb1, 0x14, 0x05, 0x2c, 0x12,
|
||||
0x32, 0x01, 0xb8, 0x95, 0x51, 0xdb, 0x7e, 0xa5, 0xac, 0x80, 0x43, 0x88, 0x3d, 0xe9, 0x05, 0x99,
|
||||
0xdf, 0xb6, 0x2b, 0x2a, 0xc1, 0xb5, 0xa3, 0x01, 0x91, 0xd9, 0xf2, 0x83, 0x2f, 0xed, 0x96, 0xd9,
|
||||
0xac, 0xfb, 0x8f, 0x1e, 0x5b, 0xd3, 0xc3, 0xc8, 0xb1, 0x36, 0x83, 0x85, 0xb9, 0x46, 0xf5, 0x27,
|
||||
0x3f, 0xdf, 0x4f, 0xcd, 0x06, 0x6a, 0x40, 0xcc, 0xcd, 0xce, 0x4a, 0x4d, 0xb9, 0xbc, 0xa3, 0x83,
|
||||
0xf5, 0x49, 0x6d, 0xae, 0xa6, 0x3c, 0x72, 0x48, 0x29, 0x67, 0xba, 0xdb, 0x7f, 0xf7, 0x01, 0xbf,
|
||||
0xe7, 0xe4, 0x3e, 0x1c, 0xe9, 0x59, 0x16, 0x93, 0xd6, 0xe9, 0xb5, 0xe3, 0xda, 0xd3, 0xcc, 0x9c,
|
||||
0x3c, 0x51, 0xcc, 0xcb, 0xc9, 0x7c, 0x7a, 0xf7, 0xcc, 0xd4, 0x16, 0xd6, 0xfb, 0xe4, 0xd5, 0xb5,
|
||||
0xb6, 0xa6, 0xe6, 0xa5, 0x7f, 0x52, 0xcf, 0xfa, 0x53, 0xe8, 0xc8, 0xd4, 0xfc, 0xac, 0xc3, 0x25,
|
||||
0x2f, 0x3d, 0x10, 0xcd, 0xf0, 0xe0, 0x23, 0xd1, 0x24, 0x45, 0xd3, 0xc0, 0xbe, 0xa4, 0x74, 0x5c,
|
||||
0xd4, 0xf6, 0xa0, 0xf7, 0xbc, 0x60, 0xd2, 0xd3, 0xe1, 0xae, 0x00, 0x0c, 0x69, 0x31, 0xe5, 0xf2,
|
||||
0xe3, 0x1c, 0x20, 0x25, 0x73, 0x9f, 0xfd, 0xf2, 0x69, 0xa3, 0xf2, 0x7d, 0x64, 0x60, 0xc3, 0xf4,
|
||||
0x99, 0x73, 0xfe, 0x99, 0x59, 0x12, 0x04, 0x39, 0xfb, 0xc6, 0xb8, 0xe2, 0xad, 0x21, 0xca, 0xc2,
|
||||
0x42, 0x70, 0xcc, 0xab, 0xf9, 0xd0, 0x85, 0x51, 0xff, 0x26, 0x13, 0x38, 0x98, 0x55, 0xd5, 0x93,
|
||||
0xf1, 0x47, 0x36, 0x0e, 0x6f, 0xda, 0xff, 0x10, 0x63, 0x05, 0x9c, 0x96, 0x38, 0x2f, 0x89, 0xe6,
|
||||
0xac, 0xf5, 0x8a, 0xcb, 0xe0, 0x60, 0x44, 0xc7, 0x05, 0x51, 0x36, 0xfd, 0xec, 0x69, 0xf3, 0xfe,
|
||||
0x94, 0x07, 0xe2, 0x4b, 0xb0, 0xc0, 0x64, 0xc9, 0x12, 0xf1, 0x16, 0xe4, 0x42, 0xd9, 0x2c, 0xfd,
|
||||
0x68, 0xb7, 0xa8, 0x1a, 0x7c, 0x72, 0x51, 0xc9, 0x64, 0x40, 0x67, 0x15, 0x16, 0xad, 0xc9, 0xb2,
|
||||
0x39, 0xed, 0xc7, 0x46, 0xa5, 0x2e, 0x8f, 0x6e, 0x82, 0xab, 0x14, 0x10, 0x3c, 0xcb, 0xac, 0x2c,
|
||||
0x59, 0xb3, 0x0c, 0x7f, 0x01, 0xb4, 0xbe, 0x19, 0xa2, 0x46, 0xad, 0x20, 0x0a, 0x3c, 0x08, 0x25,
|
||||
0xd2, 0x8d, 0x0f, 0x9d, 0x4f, 0x88, 0xb6, 0xfb, 0xe5, 0xcc, 0x97, 0x2f, 0xc1, 0x04, 0x4a, 0x66,
|
||||
0x78, 0x4b, 0x30, 0x31, 0x79, 0xa9, 0xab, 0xac, 0xfd, 0xdb, 0x46, 0x37, 0x80, 0x9d, 0xfe, 0x7d,
|
||||
0x5b, 0xab, 0xf7, 0x7c, 0x56, 0x3c, 0x06, 0x37, 0x3c, 0x5e, 0x0c, 0x1b, 0x8a, 0x68, 0x35, 0x28,
|
||||
0xe2, 0x3b, 0x3c, 0xf8, 0x44, 0x8c, 0x4e, 0xc7, 0x91, 0x7a, 0xa5, 0x72, 0x0e, 0x66, 0x07, 0x3c,
|
||||
0x54, 0xce, 0x65, 0x6c, 0xd7, 0xcf, 0xaf, 0x3e, 0x4a, 0x4f, 0xbd, 0xb1, 0xa9, 0x45, 0xb9, 0x7d,
|
||||
0x83, 0x08, 0x2d, 0x56, 0xa7, 0xd3, 0x84, 0xc8, 0x54, 0x30, 0x48, 0x30, 0xbe, 0x47, 0x67, 0x47,
|
||||
0x16, 0x27, 0x56, 0x51, 0xd8, 0xb8, 0x0d, 0x4c, 0x8a, 0x6f, 0xd0, 0x82, 0x63, 0xd7, 0x19, 0x96,
|
||||
0xa6, 0x93, 0x12, 0xf4, 0x8c, 0x3e, 0xee, 0xc4, 0xee, 0x11, 0xcd, 0xb5, 0xda, 0xfe, 0xa1, 0xd6,
|
||||
0xa2, 0x12, 0x41, 0xcf, 0x4b, 0x80, 0xcb, 0xef, 0xd4, 0x71, 0x2c, 0xf7, 0x9b, 0xa4, 0x82, 0x19,
|
||||
0x37, 0xfd, 0x64, 0x0b, 0xdc, 0x17, 0x8f, 0xcd, 0x62, 0x5e, 0xae, 0x15, 0xe5, 0x3c, 0x59, 0x6e,
|
||||
0xfb, 0x61, 0x9f, 0x91, 0xbf, 0xe7, 0x42, 0xe0, 0x72, 0x32, 0x9e, 0x01, 0xca, 0xcc, 0x95, 0xcd,
|
||||
0x40, 0x89, 0x3f, 0xec, 0x5b, 0x1a, 0xb8, 0x2f, 0x73, 0x8a, 0x80, 0x93, 0x20, 0x26, 0x16, 0x69,
|
||||
0x03, 0x43, 0x12, 0x92, 0x60, 0xfa, 0xdc, 0xdf, 0x12, 0x92, 0x28, 0xa1, 0x51, 0xbf, 0x8b, 0xc2,
|
||||
0x1f, 0x62, 0xfa, 0x3c, 0xe7, 0xb8, 0xf5, 0xdd, 0x2f, 0x40, 0x13, 0x2f, 0xe3, 0xe1, 0xbd, 0xe4,
|
||||
0xe4, 0xe4, 0xfb, 0xe9, 0x39, 0x60, 0x6d, 0xc9, 0xcf, 0xd6, 0x5b, 0x71, 0x80, 0xff, 0xb5, 0x7c,
|
||||
0x41, 0xfa, 0x9f, 0x36, 0xa5, 0x57, 0x69, 0x9d, 0x0f, 0x1f, 0xe4, 0x09, 0xf2, 0xd3, 0xc5, 0x45,
|
||||
0x37, 0x53, 0x76, 0x66, 0xab, 0x09, 0x1c, 0xa9, 0xdd, 0xfb, 0xe3, 0x90, 0x4b, 0x3a, 0x4a, 0xcf,
|
||||
0xd3, 0x34, 0x4d, 0xf1, 0xf1, 0x51, 0x87, 0x3e, 0xee, 0xa8, 0x75, 0x18, 0xf3, 0x55, 0x8c, 0x17,
|
||||
0x6d, 0xab, 0x01, 0xe3, 0x46, 0xb6, 0xa9, 0x03, 0xbb, 0x42, 0x95, 0x89, 0x1b, 0xf8, 0xd6, 0x43,
|
||||
0x36, 0x25, 0xa7, 0xc1, 0xd5, 0x25, 0xe5, 0xde, 0xdd, 0x35, 0xa0, 0x09, 0x5e, 0x52, 0x75, 0x8e,
|
||||
0x69, 0x08, 0x4d, 0xe3, 0x8f, 0xb7, 0x44, 0xc5, 0x53, 0x2c, 0x45, 0xd1, 0x46, 0x60, 0x8d, 0x18,
|
||||
0x60, 0x63, 0x1b, 0x5c, 0x83, 0xe3, 0xfd, 0x43, 0x75, 0xd6, 0xc0, 0x21, 0xe7, 0x9f, 0x83, 0xf5,
|
||||
0x9e, 0x33, 0xca, 0x21, 0x7f, 0xab, 0x17, 0xcb, 0xf2, 0xf3, 0xe7, 0xa6, 0x83, 0xb6, 0xc0, 0x7d,
|
||||
0xf9, 0x58, 0xc8, 0x3f, 0xb3, 0x62, 0xe9, 0xe2, 0x52, 0x34, 0x7f, 0x88, 0x5d, 0x64, 0x67, 0xca,
|
||||
0xbd, 0x7c, 0x80, 0x49, 0xc6, 0xcd, 0xa5, 0x53, 0x47, 0x02, 0x9a, 0xbe, 0xe6, 0x76, 0xba, 0x24,
|
||||
0x4b, 0x0f, 0x7a, 0x95, 0x3e, 0xa5, 0xd1, 0xaa, 0x9f, 0x8e, 0x17, 0xd1, 0x8d, 0x74, 0xd1, 0x9c,
|
||||
0x71, 0xa3, 0xf8, 0xd5, 0xfe, 0xcf, 0x5b, 0xd8, 0x8d, 0x68, 0x7d, 0x36, 0xe0, 0x59, 0xb1, 0xe0,
|
||||
0xa8, 0x53, 0x51, 0xd4, 0xe3, 0x76, 0x16, 0xc0, 0xfd, 0xe9, 0x86, 0x29, 0x7d, 0x3b, 0xb5, 0x6b,
|
||||
0xd7, 0xa1, 0xfb, 0xc4, 0x55, 0x77, 0x4d, 0xb2, 0x28, 0xa4, 0x59, 0x69, 0x45, 0xff, 0x6b, 0x05,
|
||||
0x85, 0x85, 0xff, 0xd3, 0xa6, 0xf4, 0x5b, 0x63, 0x6f, 0xe7, 0x49, 0x72, 0xda, 0xac, 0x62, 0x51,
|
||||
0x00, 0x04, 0x25, 0xa2, 0x52, 0x96, 0x0c, 0xee, 0xdb, 0x7b, 0xc6, 0xb1, 0x38, 0x9a, 0x02, 0x02,
|
||||
0x8b, 0xe6, 0x81, 0xd2, 0x3b, 0xb1, 0x73, 0x5a, 0x47, 0xe7, 0xa8, 0x10, 0x96, 0x1f, 0x98, 0x92,
|
||||
0x60, 0x73, 0x2e, 0x2e, 0xf1, 0xc0, 0x2f, 0x92, 0xd3, 0xf2, 0xa0, 0xf8, 0x91, 0xef, 0xef, 0x19,
|
||||
0x0b, 0xb4, 0x2d, 0x51, 0xbc, 0x88, 0x08, 0x20, 0x89, 0x7d, 0xa7, 0x7d, 0x7d, 0x02, 0x58, 0x46,
|
||||
0x24, 0x43, 0x19, 0xf4, 0x0c, 0x93, 0x70, 0x6c, 0x75, 0xef, 0xa6, 0x1a, 0x02, 0xc7, 0x89, 0x6a,
|
||||
0xfd, 0x43, 0x69, 0x6b, 0x51, 0x89, 0x9c, 0x87, 0xb9, 0x21, 0x69, 0xcf, 0x3b, 0x8e, 0x6e, 0xd2,
|
||||
0xe9, 0xac, 0x28, 0x0b, 0xa2, 0x3d, 0x70, 0x8b, 0x9f, 0x88, 0xb9, 0xcb, 0x5b, 0x34, 0xf0, 0x69,
|
||||
0x50, 0x42, 0xf5, 0xb4, 0x76, 0x12, 0xe2, 0x64, 0x8e, 0x2c, 0xe4, 0xa7, 0xae, 0x19, 0xe2, 0xaf,
|
||||
0x7c, 0xbc, 0x56, 0x93, 0x21, 0xf3, 0xcf, 0xdc, 0xbd, 0xb9, 0xe6, 0xbf, 0xac, 0xce, 0x69, 0x12,
|
||||
0xd8, 0xa3, 0x88, 0xe6, 0xa5, 0x98, 0xe5, 0x47, 0xf3, 0x8b, 0x5f, 0x75, 0xf2, 0xb7, 0x93, 0xdc,
|
||||
0x44, 0xa4, 0xac, 0x30, 0xe7, 0x03, 0x67, 0x15, 0xc2, 0x6d, 0xd6, 0x03, 0xdc, 0xf2, 0x6e, 0x7f,
|
||||
0xd1, 0xaa, 0x68, 0xb8, 0x9e, 0x4d, 0x46, 0x7e, 0x6b, 0x02, 0x2b, 0xc7, 0x06, 0xb8, 0x7c, 0x51,
|
||||
0xb6, 0x02, 0xae, 0xce, 0xf9, 0x2c, 0x59, 0xce, 0xf8, 0xa9, 0x99, 0xc5, 0xe8, 0xc7, 0x3d, 0xac,
|
||||
0x58, 0x06, 0xf5, 0xee, 0xb6, 0x64, 0xef, 0x15, 0x9a, 0x37, 0xe8, 0xf5, 0x14, 0x0f, 0xb4, 0x5d,
|
||||
0xcc, 0xd7, 0x93, 0xdb, 0x7b, 0x23, 0xaf, 0x76, 0xee, 0xb8, 0x4a, 0xc5, 0x53, 0xe3, 0xd3, 0x75,
|
||||
0xd5, 0x65, 0x93, 0xa2, 0x5f, 0x4c, 0x0f, 0x0f, 0x7e, 0x5a, 0xc3, 0x02, 0xb0, 0xa5, 0xe6, 0x84,
|
||||
0xc0, 0x34, 0xed, 0x87, 0xaf, 0x0b, 0x07, 0xe6, 0x10, 0x4f, 0x51, 0x7a, 0x96, 0xe2, 0xae, 0x84,
|
||||
0x2f, 0x0b, 0xf2, 0x7e, 0x35, 0x8e, 0xfe, 0xa1, 0x1c, 0xcd, 0xf0, 0x17, 0x86, 0x97, 0xd4, 0x3b,
|
||||
0x9c, 0x87, 0xfa, 0x47, 0x7a, 0xba, 0x42, 0x6b, 0x7f, 0xaf, 0x7a, 0xfb, 0x33, 0x61, 0xaa, 0xdd,
|
||||
0x1e, 0xb8, 0xe5, 0x4f, 0x84, 0xdc, 0xc5, 0x0d, 0x90, 0xb2, 0x69, 0x54, 0x81, 0x64, 0x36, 0x1f,
|
||||
0xef, 0xe5, 0xea, 0x77, 0x9b, 0x70, 0x5f, 0x90, 0x52, 0xc6, 0x3a, 0x3d, 0x8c, 0x21, 0xad, 0x32,
|
||||
0x45, 0x31, 0xdb, 0x24, 0x88, 0xf9, 0xc3, 0x1c, 0x1c, 0x46, 0x71, 0x04, 0x5b, 0x63, 0x92, 0xa4,
|
||||
0x8c, 0xc3, 0xd6, 0xf1, 0xa3, 0x3e, 0x2b, 0x76, 0x4d, 0xb1, 0x7a, 0x03, 0x70, 0x9c, 0x28, 0x42,
|
||||
0xe0, 0x8a, 0xe7, 0xb2, 0xd3, 0x7e, 0x59, 0x7e, 0x91, 0x5d, 0xb4, 0x3f, 0x03, 0x85, 0xdd, 0x81,
|
||||
0x70, 0x2b, 0x44, 0xd0, 0xfa, 0x3d, 0xd7, 0x1d, 0x81, 0x55, 0x5e, 0xd0, 0xce, 0xa4, 0x38, 0xf2,
|
||||
0xdc, 0x57, 0xe3, 0x9b, 0x7b, 0x21, 0x9a, 0x72, 0x25, 0xa2, 0x85, 0x8a, 0x66, 0x55, 0xab, 0x44,
|
||||
0x33, 0x7d, 0x02, 0xe7, 0x1d, 0x36, 0x89, 0x30, 0x17, 0x9e, 0x93, 0x7a, 0x78, 0x4e, 0x13, 0xb5,
|
||||
0xc5, 0xe4, 0xc5, 0x31, 0x54, 0xad, 0x52, 0xa1, 0x6f, 0x35, 0xff, 0xe0, 0xab, 0x63, 0xf1, 0x0c,
|
||||
0xcb, 0xb2, 0x94, 0x81, 0xa2, 0xa8, 0x98, 0xf0, 0xaf, 0x27, 0xd5, 0x2f, 0xb9, 0x85, 0x23, 0xe0,
|
||||
0x14, 0xf3, 0x22, 0xfb, 0x7c, 0x33, 0xfb, 0xbb, 0x06, 0xde, 0x2b, 0x10, 0xcd, 0x92, 0xd9, 0x5e,
|
||||
0xc7, 0xad, 0x4a, 0x15, 0x72, 0xbf, 0x2c, 0x23, 0xa5, 0x01, 0xa9, 0xc6, 0x26, 0xd9, 0x2c, 0x66,
|
||||
0x8f, 0x72, 0x79, 0x59, 0x96, 0x09, 0x1c, 0xfc, 0xde, 0x63, 0x05, 0x49, 0x7c, 0x94, 0x0c, 0xc6,
|
||||
0xba, 0xc6, 0xde, 0x79, 0x81, 0x13, 0xe3, 0x79, 0x13, 0x98, 0x41, 0x57, 0x07, 0xd9, 0x1c, 0x50,
|
||||
0x57, 0xb7, 0x1e, 0xc1, 0x2b, 0xe0, 0x8a, 0x5f, 0x7f, 0xff, 0x4c, 0x90, 0x73, 0x6f, 0xfb, 0x5b,
|
||||
0xe6, 0x48, 0x0d, 0xa3, 0x56, 0x08, 0x5a, 0x6a, 0xef, 0x36, 0x94, 0x64, 0xf5, 0x3b, 0x4e, 0xdb,
|
||||
0x18, 0xcb, 0x70, 0x1c, 0xad, 0x67, 0x01, 0x3f, 0xe8, 0xaf, 0xec, 0x5d, 0xd4, 0xa5, 0x7e, 0x85,
|
||||
0x7a, 0xf6, 0x2a, 0x27, 0xd7, 0xea, 0xf3, 0xf3, 0xef, 0xa6, 0xe7, 0x2f, 0x81, 0xb0, 0x37, 0xdd,
|
||||
0x5b, 0x35, 0xca, 0xa7, 0xb8, 0x54, 0x0c, 0x51, 0x54, 0x79, 0x8d, 0x2e, 0x33, 0xf7, 0x9e, 0xe2,
|
||||
0xa0, 0xb3, 0x46, 0xf3, 0xfa, 0x04, 0x32, 0x26, 0x74, 0x5a, 0xcf, 0xfa, 0x1a, 0xac, 0x6c, 0xe0,
|
||||
0x2c, 0x06, 0x5f, 0xfa, 0x44, 0x3b, 0x3f, 0xcc, 0x7f, 0x71, 0x96, 0x20, 0x02, 0x31, 0x6a, 0xcf,
|
||||
0x71, 0x6b, 0x00, 0x70, 0x5f, 0x94, 0x03, 0x5c, 0xbb, 0x8b, 0xc0, 0xcc, 0xb8, 0xe3, 0x72, 0x81,
|
||||
0x61, 0x79, 0x1c, 0x87, 0xd4, 0xd9, 0x23, 0x4b, 0xe2, 0xc1, 0xb5, 0xb9, 0x82, 0x78, 0xb9, 0x83,
|
||||
0x5d, 0x40, 0x02, 0x02, 0xd7, 0x35, 0x1b, 0x7c, 0x8f, 0x29, 0xe5, 0x05, 0x61, 0x4b, 0x03, 0x07,
|
||||
0x06, 0xd7, 0x6c, 0x69, 0x86, 0x28, 0xe4, 0x45, 0x0e, 0x29, 0xae, 0x94, 0x23, 0x70, 0x70, 0x29,
|
||||
0xad, 0xfa, 0x95, 0xf3, 0x87, 0x12, 0x6a, 0x00, 0x24, 0xee, 0xdb, 0x71, 0xc1, 0xde, 0x18, 0x60,
|
||||
0x9a, 0xb3, 0xac, 0x9e, 0xe6, 0xa9, 0xf8, 0xa8, 0xbd, 0x8b, 0x5a, 0x62, 0x18, 0xee, 0x32, 0x76,
|
||||
0x00, 0x38, 0x9f, 0x5e, 0x5b, 0x6f, 0x64, 0xca, 0xd0, 0xdd, 0xce, 0x7b, 0xb2, 0x7e, 0x54, 0xb3,
|
||||
0xa2, 0x19, 0x45, 0x61, 0x1f, 0x4b, 0x02, 0xf5, 0x68, 0x39, 0x7a, 0xf7, 0x29, 0x58, 0x72, 0xcb,
|
||||
0xf3, 0x34, 0x6f, 0xa4, 0x62, 0x8e, 0x2c, 0x18, 0xec, 0x0b, 0x9d, 0xfd, 0x52, 0xe5, 0x28, 0xb6,
|
||||
0xc0, 0x01, 0xe3, 0x04, 0x48, 0x43, 0x51, 0x12, 0x73, 0xf7, 0x74, 0xb0, 0xbe, 0x19, 0x86, 0x0c,
|
||||
0xb8, 0x98, 0x0f, 0x8d, 0x6a, 0xc9, 0x9e, 0xe3, 0xb6, 0xa6, 0x09, 0x59, 0x73, 0xea, 0x94, 0x6d,
|
||||
0xf6, 0x7e, 0x98, 0x0c, 0x4c, 0xf2, 0xfd, 0x2e, 0xe3, 0x56, 0x0e, 0x70, 0x18, 0xd1, 0xf5, 0x5a,
|
||||
0xa1, 0x94, 0xb5, 0x74, 0x7a, 0xaa, 0x20, 0x3e, 0x98, 0x6e, 0x1f, 0x49, 0x02, 0xd3, 0xfd, 0x09,
|
||||
0xe0, 0xc8, 0x74, 0x5b, 0xb9, 0x41, 0x20, 0x36, 0xa5, 0xe0, 0x36, 0x1c, 0xf7, 0xe9, 0x03, 0xf0,
|
||||
0xf2, 0xc9, 0x84, 0x12, 0xb1, 0xef, 0xdb, 0xf3, 0xe3, 0xcf, 0xfa, 0xf9, 0x15, 0x3b, 0xd0, 0x90,
|
||||
0xfd, 0x50, 0x25, 0x27, 0x8d, 0x7b, 0x76, 0x99, 0x79, 0xe8, 0x9c, 0x8e, 0xe3, 0x38, 0x23, 0xc7,
|
||||
0x80, 0xbf, 0xd1, 0x7b, 0x27, 0xf7, 0xae, 0xeb, 0xea, 0x5e, 0xb6, 0x06, 0x83, 0xbe, 0xfc, 0x3d,
|
||||
0x0b, 0x3a, 0x4f, 0xe6, 0xec, 0xbb, 0xfb, 0x87, 0x41, 0x9d, 0x5b, 0x82, 0x09, 0x5a, 0xbb, 0xf5,
|
||||
0xe4, 0x8d, 0x17, 0x94, 0x7e, 0x1b, 0x4c, 0x12, 0x67, 0xd4, 0x5d, 0x39, 0xb4, 0xba, 0xb3, 0x17,
|
||||
0x94, 0xd9, 0xe0, 0x5f, 0x89, 0xd7, 0xe8, 0x10, 0x38, 0x21, 0xe7, 0x7e, 0xda, 0x4b, 0xd9, 0xb4,
|
||||
0xc6, 0xf6, 0x76, 0x07, 0xf3, 0x64, 0xe9, 0xc9, 0x7d, 0x47, 0xee, 0xc0, 0x8e, 0x74, 0x29, 0x73,
|
||||
0xaa, 0xd6, 0x59, 0xc6, 0xc2, 0x42, 0x53, 0x1f, 0xc8, 0x72, 0xf6, 0xf2, 0xb2, 0xcf, 0xa9, 0x00,
|
||||
0x70, 0xda, 0x0d, 0xc0, 0x5f, 0xbd, 0x3c, 0x28, 0x70, 0x7f, 0x81, 0x98, 0x75, 0xd2, 0x01, 0xb3,
|
||||
0x13, 0x3e, 0x07, 0x01, 0x87, 0x47, 0xda, 0x1f, 0xb0, 0xe1, 0x79, 0x2b, 0xe0, 0x6a, 0x0c, 0xcb,
|
||||
0x04, 0x1a, 0xe7, 0xea, 0x48, 0xcc, 0x12, 0xf0, 0x87, 0xc5, 0x1e, 0x41, 0x3b, 0x63, 0xe2, 0x43,
|
||||
0x26, 0xd5, 0x2d, 0x99, 0x1f, 0xf8, 0x36, 0x6c, 0x8b, 0x0d, 0x34, 0xd2, 0xe0, 0x25, 0x87, 0xce,
|
||||
0xe9, 0x39, 0x92, 0xe1, 0x92, 0x80, 0xc6, 0xe3, 0x2e, 0xec, 0x1e, 0xd1, 0xd1, 0xa5, 0xa6, 0xbd,
|
||||
0x9e, 0x03, 0xe6, 0x5f, 0x4d, 0x07, 0x42, 0xcd, 0x2c, 0xe7, 0x3c, 0x8c, 0x1c, 0xdb, 0xa8, 0xc4,
|
||||
0xd1, 0x83, 0x43, 0xab, 0xdd, 0x72, 0xf8, 0x92, 0x0b, 0xb4, 0xe1, 0x96, 0x1e, 0xe0, 0x42, 0x71,
|
||||
0x5c, 0x6c, 0xe8, 0xba, 0xc1, 0x7e, 0xf0, 0xeb, 0x00, 0xa5, 0x5d, 0xba, 0x37, 0xa2, 0x63, 0x8e,
|
||||
0xcb, 0xfe, 0xe1, 0x26, 0xe0, 0xe1, 0x9b, 0x36, 0xf0, 0xbc, 0xf3, 0x48, 0x90, 0xcd, 0x3f, 0x1f,
|
||||
0x96, 0xec, 0x81, 0xd3, 0x1e, 0x34, 0x09, 0x19, 0x13, 0xcb, 0x91, 0x82, 0x9f, 0x02, 0x2b, 0x31,
|
||||
0xeb, 0x0b, 0x17, 0x51, 0x2b, 0x0f, 0x38, 0x14, 0xf1, 0x8f, 0xcc, 0x91, 0xf2, 0xb6, 0xb6, 0x79,
|
||||
0xe7, 0xcb, 0x6c, 0x31, 0xff, 0xae, 0x6d, 0xce, 0x18, 0x1a, 0xe1, 0xed, 0x2e, 0xcb, 0x82, 0xb0,
|
||||
0xcb, 0xc1, 0x67, 0xad, 0xc7, 0x69, 0x05, 0x5c, 0x9f, 0x33, 0xc0, 0xbf, 0xc8, 0x9c, 0x5a, 0x12,
|
||||
0xc7, 0xd2, 0x12, 0x21, 0x14, 0xc7, 0x50, 0x47, 0xec, 0xf2, 0x95, 0x96, 0x60, 0x94, 0xd7, 0x7b,
|
||||
0x43, 0x77, 0x9e, 0xd3, 0x27, 0x32, 0xbc, 0x1e, 0x58, 0x98, 0x49, 0xf4, 0x85, 0xd0, 0x65, 0x41,
|
||||
0xb0, 0xba, 0x5f, 0x69, 0x97, 0x60, 0xe9, 0x0e, 0x8b, 0xd8, 0xed, 0x28, 0xc5, 0x5a, 0xad, 0x7a,
|
||||
0x64, 0x92, 0x80, 0x07, 0x2b, 0xe4, 0x5e, 0x5d, 0xd3, 0xb7, 0x51, 0xd1, 0x4a, 0x80, 0x85, 0xe7,
|
||||
0x90, 0x02, 0x96, 0x84, 0x5c, 0x88, 0x67, 0x38, 0x92, 0x24, 0xf5, 0xbc, 0x91, 0xbe, 0xb2, 0xf3,
|
||||
0xb3, 0xf6, 0xde, 0x8e, 0xb7, 0xc5, 0x01, 0x77, 0x80, 0xe1, 0x19, 0x2b, 0x3f, 0x4e, 0x90, 0x72,
|
||||
0xe7, 0xcf, 0x02, 0xc0, 0x65, 0x0f, 0x29, 0xbe, 0x95, 0x65, 0x5f, 0xec, 0xac, 0x3c, 0xe9, 0x0f,
|
||||
0xd3, 0x90, 0xfd, 0x85, 0x05, 0x76, 0xc0, 0x79, 0x1e, 0xcd, 0x12, 0xd2, 0xc6, 0x96, 0x63, 0x0e,
|
||||
0x4f, 0x4f, 0x01, 0xc6, 0xd3, 0xaa, 0x4a, 0x02, 0x0e, 0xcc, 0x71, 0x8a, 0x20, 0xa4, 0x4f, 0xf4,
|
||||
0x44, 0x3e, 0x7c, 0x22, 0x8b, 0xe9, 0x13, 0xb4, 0x0e, 0xe2, 0x61, 0xc9, 0xb2, 0x90, 0xb5, 0xb4,
|
||||
0xdc, 0xdb, 0x00, 0xe0, 0x04, 0xc1, 0x02, 0x1c, 0x11, 0x78, 0x2d, 0xab, 0x50, 0x4c, 0xff, 0xd6,
|
||||
0xca, 0xbd, 0x38, 0x61, 0xa4, 0x69, 0xf2, 0xd4, 0x07, 0x8e, 0x3e, 0x0a, 0xf9, 0xc4, 0xeb, 0xfd,
|
||||
0x49, 0x3b, 0x2f, 0x70, 0x54, 0x12, 0x4b, 0x72, 0x0c, 0x98, 0xed, 0x0b, 0xa1, 0x9f, 0xbd, 0x5f,
|
||||
0xb3, 0x18, 0x2a, 0x14, 0x36, 0x36, 0x51, 0xdb, 0xa5, 0x12, 0xa6, 0xdf, 0x13, 0x24, 0xb3, 0x28,
|
||||
0xe4, 0xdc, 0xdb, 0x33, 0xa8, 0x59, 0x31, 0x22, 0xa8, 0xb2, 0x9e, 0xbc, 0x5a, 0xcf, 0xdc, 0x76,
|
||||
0x2e, 0x5e, 0x0f, 0xab, 0xc9, 0x78, 0x52, 0xcf, 0x19, 0x76, 0xcf, 0x7e, 0xdf, 0xcf, 0xd9, 0xb8,
|
||||
0xfb, 0x87, 0x32, 0x0e, 0x80, 0xfb, 0xa2, 0x5d, 0x1a, 0x40, 0x6e, 0x47, 0xbd, 0xa2, 0x4c, 0x84,
|
||||
0xf2, 0xb3, 0xd5, 0xf1, 0x97, 0xf2, 0xcb, 0x9b, 0x5d, 0x7f, 0x72, 0x00, 0x5c, 0xad, 0xa3, 0xd9,
|
||||
0xe6, 0xb4, 0x51, 0x96, 0x2f, 0xe3, 0x54, 0x14, 0x4e, 0xbc, 0x2f, 0xfd, 0x91, 0xbf, 0x07, 0x81,
|
||||
0x89, 0x47, 0x97, 0x1a, 0xd9, 0x96, 0x0d, 0x9c, 0xe7, 0x94, 0x0c, 0xb3, 0x90, 0xd2, 0x0b, 0xd8,
|
||||
0x3c, 0x77, 0xf2, 0xc5, 0xdc, 0x55, 0x4d, 0x54, 0x0e, 0x3e, 0x2f, 0x49, 0x69, 0xb3, 0x2a, 0x00,
|
||||
0x1c, 0xd1, 0x6e, 0x83, 0xa9, 0xe0, 0x45, 0xce, 0xfe, 0x1e, 0xa5, 0x74, 0x35, 0x86, 0x9c, 0xa6,
|
||||
0x81, 0x1a, 0xfb, 0xd5, 0x21, 0x70, 0x18, 0xae, 0xb0, 0x14, 0xde, 0x7c, 0xc1, 0xee, 0xa8, 0x38,
|
||||
0x8a, 0xd4, 0x93, 0x2c, 0x93, 0x44, 0x71, 0xd7, 0x43, 0x16, 0x76, 0x6e, 0xa8, 0x54, 0x65, 0x29,
|
||||
0x97, 0xb1, 0xe9, 0x36, 0x03, 0xa6, 0xb2, 0xd7, 0xe1, 0x8c, 0xec, 0x8c, 0x94, 0xad, 0xc3, 0xea,
|
||||
0x59, 0x5e, 0x22, 0x2a, 0x15, 0x86, 0x6b, 0x31, 0xa4, 0x6e, 0xe7, 0x31, 0x7b, 0x2f, 0x24, 0xfd,
|
||||
0x87, 0x65, 0x60, 0x39, 0x19, 0x97, 0x14, 0xb5, 0x6f, 0x41, 0x3f, 0xd4, 0xa3, 0x86, 0x87, 0x33,
|
||||
0x7b, 0xc7, 0x31, 0x70, 0x8b, 0x1b, 0x6c, 0xc8, 0x92, 0xa4, 0xc7, 0x8b, 0x95, 0x3d, 0xe8, 0x84,
|
||||
0x22, 0x5c, 0xea, 0xfc, 0x90, 0x2e, 0x8b, 0x29, 0x53, 0x02, 0x7f, 0x2e, 0x94, 0xed, 0x80, 0xab,
|
||||
0x73, 0x3c, 0x5b, 0x78, 0x36, 0xb2, 0x38, 0x57, 0xef, 0xe4, 0x4e, 0x5d, 0x6f, 0x08, 0xa2, 0xfc,
|
||||
0xb8, 0xdc, 0xf4, 0x86, 0x6b, 0xc0, 0x69, 0x03, 0x7f, 0x82, 0x31, 0x53, 0xe0, 0x6c, 0xa9, 0xbf,
|
||||
0x49, 0x93, 0xa4, 0x64, 0x07, 0xae, 0xdc, 0xbc, 0x47, 0x92, 0x94, 0x3a, 0x05, 0x29, 0x8f, 0xfc,
|
||||
0xaf, 0x09, 0x10, 0x38, 0xb0, 0xde, 0xfc, 0x2f, 0xe6, 0xbf, 0x78, 0x91, 0xbe, 0xbf, 0x59, 0xe9,
|
||||
0x99, 0xc6, 0x31, 0x00, 0x1c, 0xed, 0x04, 0x38, 0xb8, 0x00, 0x31, 0xe8, 0xbf, 0xd5, 0xee, 0xb8,
|
||||
0x70, 0x77, 0x34, 0xa5, 0x07, 0xac, 0xc2, 0xb0, 0x34, 0xa5, 0x8b, 0xdd, 0xfc, 0x71, 0x47, 0x5f,
|
||||
0xb8, 0x8d, 0x0e, 0x77, 0x38, 0x1f, 0x68, 0x8f, 0x1f, 0x8e, 0xff, 0xf0, 0xa9, 0xe7, 0xab, 0x03,
|
||||
0x40, 0x5b, 0x6a, 0x71, 0x6d, 0xc7, 0x8f, 0x36, 0x9f, 0xd6, 0xd1, 0x7a, 0xc0, 0x6b, 0xac, 0x31,
|
||||
0xd1, 0x70, 0x29, 0x6c, 0x61, 0x7f, 0x6f, 0xdc, 0x92, 0x77, 0xad, 0x18, 0x70, 0x23, 0x93, 0x05,
|
||||
0x29, 0x2b, 0xb2, 0x24, 0x6a, 0x45, 0x74, 0xba, 0x9b, 0x5f, 0x08, 0x2c, 0x4d, 0x87, 0xc0, 0xd5,
|
||||
0x3b, 0xa9, 0x00, 0xa7, 0x9c, 0xe7, 0x74, 0x86, 0x80, 0xb1, 0x20, 0xca, 0x79, 0x13, 0x5c, 0x7e,
|
||||
0x5a, 0x42, 0x99, 0xc0, 0x61, 0xa3, 0xee, 0x89, 0xf2, 0x13, 0x28, 0x08, 0xb1, 0x29, 0x0f, 0x24,
|
||||
0x31, 0xe3, 0x73, 0xfb, 0x53, 0xe6, 0x3c, 0x92, 0x04, 0x97, 0x80, 0x53, 0x38, 0x4e, 0x8b, 0xf8,
|
||||
0x4c, 0xcf, 0x7e, 0xf1, 0x42, 0x3c, 0xd9, 0xc7, 0x26, 0xc3, 0x73, 0x2a, 0x91, 0x66, 0xe8, 0xd3,
|
||||
0x0e, 0x81, 0xb3, 0xe8, 0x30, 0x54, 0xa3, 0xc6, 0x55, 0x6f, 0x37, 0x1f, 0xb3, 0x3a, 0x22, 0x41,
|
||||
0x6f, 0x04, 0x42, 0x0e, 0xb8, 0xcb, 0xcc, 0xf5, 0xb0, 0x8d, 0xfd, 0x7c, 0x81, 0x00, 0x04, 0xd0,
|
||||
0x69, 0x1c, 0x2c, 0x64, 0x6d, 0x9d, 0x1a, 0xaf, 0xa2, 0xae, 0xc0, 0x4f, 0xc4, 0xd1, 0x9a, 0xbd,
|
||||
0xe7, 0x1e, 0x89, 0xe6, 0x60, 0x3f, 0xb6, 0x44, 0x20, 0x23, 0xe9, 0xa8, 0xed, 0x63, 0xba, 0xbc,
|
||||
0x85, 0x13, 0x36, 0x25, 0x47, 0xae, 0x01, 0xe7, 0xff, 0x65, 0x96, 0x59, 0x7c, 0x36, 0xee, 0x55,
|
||||
0x79, 0xa7, 0xcf, 0x1c, 0xa0, 0x50, 0x9f, 0x0c, 0xf1, 0x04, 0xc0, 0x89, 0x76, 0xc0, 0x35, 0x88,
|
||||
0xcc, 0x11, 0x52, 0x87, 0x01, 0x3f, 0xd5, 0xf3, 0xbf, 0x9a, 0x35, 0xf1, 0xf1, 0x74, 0x7c, 0x27,
|
||||
0xed, 0x28, 0x49, 0x94, 0x85, 0xbb, 0xb3, 0xea, 0xb8, 0xb8, 0xbf, 0xab, 0x6c, 0x8e, 0x5b, 0x9f,
|
||||
0x2d, 0x98, 0xaf, 0x75, 0x85, 0xbf, 0x36, 0x3b, 0x29, 0xc9, 0xe2, 0x49, 0x07, 0xc0, 0x3d, 0x94,
|
||||
0xa4, 0x67, 0xae, 0x01, 0x27, 0x7d, 0xd7, 0x06, 0xa9, 0xb5, 0x38, 0x45, 0x16, 0xa5, 0x14, 0x98,
|
||||
0x66, 0xb2, 0x0a, 0x65, 0x9f, 0x62, 0x78, 0x1d, 0x7f, 0xba, 0x9f, 0xd3, 0xcf, 0x17, 0x57, 0xa8,
|
||||
0x7a, 0xbf, 0x37, 0xfe, 0xab, 0x2b, 0xb0, 0x53, 0x76, 0xa2, 0x91, 0xa7, 0x58, 0x5d, 0x4c, 0x48,
|
||||
0x70, 0x6f, 0x5f, 0x18, 0x4c, 0x71, 0x28, 0x80, 0x30, 0xa8, 0x51, 0xe0, 0x11, 0x2d, 0x94, 0xb7,
|
||||
0x48, 0xcf, 0xd9, 0x21, 0x11, 0xd0, 0xd9, 0xe6, 0xa9, 0x5b, 0xc0, 0xad, 0xbf, 0x72, 0x60, 0x52,
|
||||
0xb7, 0xfa, 0x08, 0x8e, 0xc3, 0x48, 0x01, 0x8a, 0x3b, 0xab, 0x5c, 0x76, 0x06, 0x1c, 0xda, 0xf7,
|
||||
0xa1, 0x2c, 0xe6, 0x96, 0xa4, 0x3b, 0x7a, 0x1d, 0xcf, 0x37, 0x67, 0x9f, 0x6f, 0xa6, 0x56, 0x80,
|
||||
0xb3, 0x75, 0xc0, 0xdf, 0x39, 0x9b, 0x0b, 0x80, 0x43, 0x07, 0xcc, 0xdb, 0x75, 0xfc, 0x6c, 0xe4,
|
||||
0x2f, 0xdf, 0x4f, 0xed, 0xe4, 0x90, 0xad, 0x1a, 0xa5, 0x48, 0x92, 0x98, 0x7d, 0xff, 0xf3, 0xb6,
|
||||
0xae, 0x79, 0x04, 0x65, 0xeb, 0xb8, 0x48, 0xc1, 0x2c, 0xed, 0x51, 0xbc, 0x00, 0xed, 0x1a, 0x49,
|
||||
0x32, 0x3f, 0xb4, 0xcf, 0xda, 0x02, 0xe0, 0xcc, 0xae, 0x71, 0x9c, 0x24, 0x01, 0x51, 0xd9, 0xf7,
|
||||
0x6e, 0x8e, 0x5c, 0xf8, 0x74, 0x85, 0xf2, 0x5e, 0xe9, 0xf1, 0xfd, 0xaa, 0x88, 0x4a, 0x87, 0xc0,
|
||||
0xa1, 0x96, 0xfd, 0x87, 0x00, 0x01, 0xf0, 0x3f, 0x2c, 0x69, 0x0e, 0x98, 0xb4, 0x33, 0x9c, 0xe6,
|
||||
0x8c, 0x7a, 0x4a, 0x0f, 0x2d, 0xf9, 0xb8, 0xf0, 0xcf, 0x3e, 0xf0, 0x7b, 0x4b, 0x11, 0x97, 0x56,
|
||||
0x93, 0x6f, 0x29, 0x13, 0xc3, 0x8a, 0x96, 0x47, 0xc3, 0x2e, 0x33, 0xb7, 0xc7, 0x27, 0x32, 0x46,
|
||||
0x86, 0x61, 0x79, 0x9a, 0xd6, 0x47, 0xef, 0x9c, 0xfb, 0x9e, 0x97, 0xc5, 0x14, 0x55, 0x2e, 0xee,
|
||||
0xb4, 0x3f, 0x0d, 0xb0, 0x2a, 0x79, 0xce, 0x06, 0x38, 0x25, 0xee, 0xa8, 0x5e, 0x9b, 0xfa, 0x42,
|
||||
0xcc, 0x78, 0x95, 0x9a, 0xd9, 0x95, 0x23, 0x3c, 0xbf, 0x33, 0x04, 0x18, 0x5e, 0x3f, 0xcb, 0xf6,
|
||||
0xa2, 0xb2, 0xd9, 0xcd, 0x3c, 0xe1, 0xd9, 0xc1, 0x1b, 0xb9, 0xe2, 0x4b, 0xa1, 0x10, 0x98, 0xb9,
|
||||
0x42, 0xd6, 0x8d, 0x35, 0x6d, 0x1c, 0xdc, 0x6b, 0xd8, 0xd5, 0x1c, 0x59, 0x78, 0xfe, 0x22, 0x6d,
|
||||
0xcf, 0xa7, 0x5d, 0xfd, 0x6d, 0xe7, 0xa7, 0x82, 0xc0, 0xb5, 0xc9, 0x34, 0x0b, 0x79, 0x45, 0x56,
|
||||
0x6f, 0x60, 0x36, 0x60, 0xb9, 0x91, 0x76, 0x2b, 0x7b, 0xce, 0x43, 0xb3, 0xcb, 0xc0, 0x7d, 0xd7,
|
||||
0x66, 0xce, 0x03, 0x49, 0xce, 0x7d, 0x38, 0xaa, 0x0e, 0x81, 0x6a, 0x11, 0x4d, 0xe9, 0x79, 0x3e,
|
||||
0x0d, 0x14, 0x97, 0x33, 0x1d, 0x67, 0x47, 0xda, 0xf7, 0x26, 0x1f, 0x88, 0x00, 0xd6, 0x3c, 0x07,
|
||||
0xdc, 0x03, 0xe0, 0xdf, 0x5d, 0xda, 0x37, 0xa3, 0x9f, 0x37, 0xa2, 0x55, 0xca, 0x8b, 0x08, 0xcc,
|
||||
0xd2, 0xca, 0xc4, 0x12, 0x43, 0x46, 0x8b, 0xba, 0xd7, 0xd4, 0x0e, 0x98, 0xb1, 0xed, 0x12, 0x49,
|
||||
0x91, 0x06, 0x0a, 0x9c, 0x4e, 0x91, 0x97, 0x0e, 0x04, 0xb7, 0x7f, 0xdb, 0xb5, 0x5b, 0x01, 0x3f,
|
||||
0x0e, 0x30, 0xa9, 0x95, 0x1f, 0x27, 0x59, 0x02, 0xc6, 0xbd, 0xae, 0xbe, 0x78, 0x2e, 0x5d, 0xb5,
|
||||
0x40, 0x84, 0x36, 0x78, 0xf0, 0x52, 0x78, 0xbe, 0xc3, 0x87, 0x20, 0x1c, 0x72, 0x5c, 0x0b, 0x00,
|
||||
0x5c, 0x6e, 0x2e, 0x6c, 0x0c, 0x61, 0xc9, 0x9d, 0xc9, 0x42, 0xe6, 0xda, 0xae, 0xf6, 0x41, 0xd7,
|
||||
0x7a, 0x63, 0xef, 0x65, 0x09, 0xf9, 0xa2, 0x9c, 0xf3, 0xf4, 0xf0, 0xd2, 0xbe, 0x2d, 0xca, 0xf1,
|
||||
0xd7, 0x21, 0x70, 0x82, 0x53, 0xe0, 0x26, 0x48, 0xd2, 0xf3, 0xf4, 0x22, 0x0d, 0x5c, 0x0b, 0x58,
|
||||
0x21, 0x2f, 0xd6, 0xbc, 0x65, 0x0f, 0x9c, 0xe0, 0x9a, 0x8e, 0xcb, 0x97, 0xa4, 0x4d, 0xdd, 0xef,
|
||||
0x08, 0x42, 0x61, 0x1a, 0xfc, 0x82, 0xb6, 0xc7, 0x2b, 0x04, 0x1c, 0x00, 0xa5, 0xf5, 0xe0, 0xe0,
|
||||
0x23, 0x4a, 0x41, 0x88, 0x81, 0xa3, 0x79, 0x2a, 0xf6, 0xd4, 0xea, 0xd1, 0x0d, 0x6b, 0x68, 0x80,
|
||||
0x40, 0xd4, 0x60, 0x44, 0xf1, 0x16, 0xc9, 0x6a, 0xd5, 0xe0, 0x33, 0x22, 0x30, 0x14, 0x6d, 0x08,
|
||||
0xfb, 0x36, 0xd3, 0x9c, 0x9e, 0x32, 0xb0, 0x0c, 0x47, 0x25, 0x46, 0xaf, 0x1c, 0x13, 0x50, 0x57,
|
||||
0x69, 0x48, 0xfa, 0xa7, 0x80, 0x53, 0xcf, 0x02, 0x28, 0x64, 0x0d, 0x52, 0xbe, 0x8a, 0x76, 0x4a,
|
||||
0x9e, 0x2c, 0x98, 0x02, 0xc1, 0x49, 0x0e, 0x81, 0x6b, 0x97, 0x2c, 0xcb, 0x52, 0xa1, 0x9c, 0x93,
|
||||
0x7a, 0x71, 0xff, 0x37, 0xbb, 0x22, 0x81, 0xb1, 0x00, 0x2c, 0xbe, 0x1b, 0x3d, 0x70, 0xbb, 0x49,
|
||||
0xf0, 0xec, 0xb3, 0x01, 0x16, 0xc3, 0x88, 0x85, 0x85, 0xd9, 0x0f, 0xaf, 0xad, 0x1f, 0x55, 0x43,
|
||||
0xd9, 0xeb, 0xe2, 0xcc, 0xfb, 0x2b, 0x0b, 0xb8, 0x7a, 0x3f, 0x82, 0xe5, 0x71, 0xb1, 0xf8, 0xd5,
|
||||
0x61, 0x20, 0x82, 0x2f, 0x77, 0xb0, 0x3d, 0xc7, 0x65, 0xe0, 0x9e, 0x4b, 0xd2, 0xc1, 0x5f, 0x0a,
|
||||
0x44, 0x41, 0x4a, 0xdb, 0xe5, 0x63, 0xdf, 0x1a, 0xa1, 0x62, 0xc0, 0x01, 0x73, 0xa4, 0x66, 0xc0,
|
||||
0xe0, 0x2d, 0x11, 0x80, 0x89, 0x8c, 0xac, 0x9e, 0xa6, 0x19, 0xee, 0x52, 0xd8, 0xca, 0x11, 0x35,
|
||||
0xd5, 0x1a, 0x1c, 0x27, 0x2c, 0x7d, 0x0c, 0x81, 0x84, 0xd4, 0x78, 0x28, 0x65, 0xe9, 0x5e, 0x1d,
|
||||
0x61, 0xdf, 0x66, 0x25, 0x54, 0x6d, 0xa0, 0x69, 0xea, 0xd2, 0xb6, 0x19, 0x01, 0xde, 0x4a, 0x45,
|
||||
0xd7, 0x9f, 0x01, 0x0e, 0x6a, 0x8f, 0x36, 0x69, 0xb2, 0x24, 0x6e, 0xaa, 0x03, 0xb5, 0x68, 0xa3,
|
||||
0xfd, 0x60, 0xba, 0x6f, 0x42, 0x3d, 0xe2, 0x10, 0xb8, 0x0e, 0x77, 0x65, 0xf3, 0x4b, 0x31, 0x73,
|
||||
0xcf, 0xa7, 0x03, 0x3a, 0xb5, 0x6a, 0xd7, 0x77, 0xec, 0xe1, 0xa7, 0x82, 0x28, 0x66, 0xfd, 0x60,
|
||||
0x5f, 0x02, 0x8f, 0xa1, 0x6d, 0x56, 0x5d, 0xcb, 0x82, 0x7b, 0xfa, 0x24, 0x31, 0xf7, 0xd9, 0xbd,
|
||||
0x0d, 0xc3, 0xea, 0x94, 0x21, 0x2f, 0xcb, 0x02, 0xae, 0xc7, 0x4d, 0x41, 0xce, 0xfd, 0xb6, 0xf8,
|
||||
0xd5, 0x52, 0x53, 0xa1, 0x0c, 0xe3, 0x95, 0xaf, 0x09, 0x5c, 0x81, 0x59, 0x78, 0x0a, 0x5c, 0x1d,
|
||||
0xa0, 0xda, 0x1f, 0x0c, 0xd2, 0x42, 0xdc, 0xac, 0xb0, 0xab, 0x18, 0x70, 0x38, 0x06, 0x65, 0x22,
|
||||
0xe6, 0x37, 0xfe, 0xab, 0x5f, 0x63, 0x39, 0x23, 0x9b, 0xc8, 0xf0, 0x24, 0x45, 0xf1, 0xa1, 0xcb,
|
||||
0x8a, 0x3a, 0x0e, 0xc1, 0xc6, 0xbd, 0x40, 0x7f, 0xe1, 0x2a, 0xb4, 0x7e, 0xff, 0xcf, 0x0e, 0x5d,
|
||||
0x01, 0x2e, 0x3b, 0xcd, 0xea, 0x59, 0x36, 0x29, 0x21, 0x22, 0x64, 0x7c, 0x80, 0x45, 0x69, 0xa2,
|
||||
0xa8, 0x6b, 0x2d, 0x99, 0xcb, 0x00, 0x8e, 0xd8, 0x60, 0x12, 0x0a, 0x1f, 0xce, 0x03, 0x47, 0x6a,
|
||||
0x6d, 0x78, 0x26, 0xcb, 0x29, 0x13, 0x61, 0x33, 0x08, 0x47, 0xc0, 0x69, 0x7d, 0xbe, 0x7d, 0x64,
|
||||
0x7a, 0xb4, 0xa9, 0x07, 0x56, 0xbc, 0xd1, 0xaf, 0xdd, 0xd1, 0x74, 0x51, 0x2e, 0x38, 0xee, 0xd0,
|
||||
0x44, 0xd1, 0x76, 0x9a, 0x75, 0xf6, 0x7e, 0x06, 0x2c, 0x61, 0x90, 0xa4, 0x9c, 0x1b, 0x9f, 0x3b,
|
||||
0x4f, 0x29, 0x94, 0x01, 0x5c, 0x0d, 0xe0, 0xbb, 0xc9, 0x77, 0x5f, 0xf9, 0x6e, 0x03, 0xce, 0x17,
|
||||
0xca, 0x59, 0x27, 0x6d, 0xd3, 0x81, 0xae, 0x03, 0x27, 0xfd, 0x01, 0x84, 0x7b, 0x16, 0x1c, 0xd3,
|
||||
0xbd, 0xa9, 0x76, 0xc7, 0x2b, 0x06, 0x1c, 0x98, 0x02, 0x60, 0xc6, 0x03, 0x3f, 0xa1, 0xf1, 0xec,
|
||||
0xed, 0x11, 0xb1, 0x14, 0xcd, 0x50, 0xba, 0x44, 0x8a, 0xa2, 0x63, 0x0f, 0x2d, 0x79, 0xdf, 0x0f,
|
||||
0xb5, 0xd4, 0x34, 0xc0, 0x56, 0x86, 0xf0, 0x21, 0x49, 0x57, 0x98, 0x44, 0xbd, 0x9e, 0x22, 0x59,
|
||||
0x9e, 0xa7, 0x23, 0x42, 0x66, 0xf7, 0x84, 0x92, 0x14, 0xc7, 0x01, 0x53, 0xaa, 0x50, 0xcc, 0x95,
|
||||
0x24, 0x83, 0x73, 0x51, 0x09, 0x8c, 0x89, 0x3b, 0x7f, 0x14, 0x66, 0x9d, 0x04, 0x76, 0x44, 0xdb,
|
||||
0x9b, 0xb9, 0x32, 0xf0, 0xe1, 0x08, 0x27, 0xc0, 0x21, 0xda, 0x0e, 0x8b, 0x7f, 0xfa, 0xbc, 0x11,
|
||||
0x01, 0x57, 0xaa, 0xc5, 0xf9, 0xe8, 0x75, 0x1c, 0x4c, 0x45, 0x5a, 0x5b, 0x07, 0xf7, 0x83, 0x82,
|
||||
0xbe, 0xed, 0xc4, 0x3d, 0xd7, 0xd2, 0x72, 0x80, 0x6f, 0x20, 0xfc, 0xf1, 0x74, 0xe2, 0x3b, 0xce,
|
||||
0x58, 0xae, 0x0c, 0xe0, 0x1a, 0x9d, 0xcf, 0x11, 0x84, 0xfd, 0xaf, 0x38, 0xba, 0xcd, 0xd6, 0x3c,
|
||||
0xb9, 0xc0, 0x2e, 0x5e, 0x59, 0x01, 0x1d, 0xf7, 0x52, 0x94, 0xb3, 0x93, 0x0f, 0x3e, 0x15, 0x65,
|
||||
0x29, 0xb2, 0x9e, 0xed, 0xf1, 0x8a, 0x01, 0xa7, 0xd2, 0x42, 0x21, 0x48, 0x00, 0xc9, 0xf8, 0xb6,
|
||||
0x5f, 0xff, 0xd9, 0x27, 0x28, 0x1d, 0xcb, 0x30, 0x14, 0x0f, 0xf3, 0xad, 0xe1, 0xdb, 0xc6, 0xbf,
|
||||
0x0b, 0x4b, 0x7f, 0xd4, 0x1a, 0x8f, 0xda, 0x63, 0x56, 0x1f, 0xbb, 0xc2, 0x18, 0x79, 0x03, 0x0c,
|
||||
0x4d, 0x27, 0x72, 0x27, 0xbe, 0xee, 0xdf, 0xba, 0x26, 0xac, 0x53, 0x80, 0x6a, 0x0f, 0x9a, 0xff,
|
||||
0x98, 0x2b, 0xfb, 0x01, 0xca, 0xe0, 0x38, 0xac, 0xc1, 0x3c, 0x93, 0x5c, 0xf8, 0x6c, 0x54, 0x8d,
|
||||
0x7a, 0x9f, 0x66, 0xca, 0xd2, 0x93, 0x21, 0x8a, 0x04, 0x71, 0x0c, 0x1c, 0xa6, 0xb1, 0x98, 0xe3,
|
||||
0xc5, 0xdd, 0xa2, 0xf1, 0x4e, 0x19, 0x92, 0x68, 0x76, 0x12, 0x28, 0x84, 0x39, 0xce, 0x56, 0x13,
|
||||
0x56, 0xdd, 0x01, 0x17, 0x95, 0xe4, 0xc7, 0x1b, 0x9c, 0xf1, 0x9c, 0x73, 0xe0, 0xd0, 0x01, 0x0f,
|
||||
0x25, 0xd1, 0x54, 0xb2, 0x8f, 0xcc, 0x73, 0x62, 0xba, 0x2c, 0xa5, 0x4f, 0xa8, 0xfe, 0x9a, 0xc0,
|
||||
0x15, 0x48, 0x82, 0xf8, 0xf2, 0xc6, 0x90, 0x26, 0x9b, 0x80, 0xde, 0xcc, 0x99, 0x63, 0xab, 0x60,
|
||||
0x2a, 0xa8, 0xe3, 0x8a, 0xfe, 0x87, 0xa6, 0x3c, 0xde, 0xf8, 0xa3, 0xe0, 0x53, 0x71, 0x30, 0x3d,
|
||||
0x43, 0xf1, 0x34, 0x43, 0xc6, 0x1e, 0xdb, 0x36, 0xba, 0x9b, 0x5f, 0x7d, 0xbf, 0xf7, 0x46, 0x2c,
|
||||
0x0a, 0xbb, 0x04, 0x58, 0x51, 0x6f, 0x34, 0xea, 0x69, 0x23, 0x77, 0x7a, 0xf3, 0x47, 0x1d, 0x35,
|
||||
0x48, 0xc5, 0x3b, 0x8a, 0x02, 0x77, 0x80, 0xe3, 0x39, 0x2b, 0x77, 0xe0, 0x15, 0xc7, 0x21, 0xbd,
|
||||
0x52, 0x24, 0x39, 0x67, 0x53, 0x9b, 0xc0, 0xfd, 0x79, 0xe6, 0x9c, 0x8b, 0x96, 0x80, 0xa8, 0x43,
|
||||
0x07, 0xdc, 0x9e, 0xd4, 0xd7, 0x04, 0x51, 0x3e, 0xde, 0xc4, 0xa9, 0xe9, 0x41, 0x78, 0x36, 0x19,
|
||||
0xb2, 0x0a, 0x56, 0x36, 0xe5, 0xa6, 0x7c, 0xe8, 0x24, 0x96, 0x02, 0x63, 0x8d, 0x8e, 0x80, 0x43,
|
||||
0x91, 0x5a, 0xd3, 0xc1, 0xb2, 0x78, 0xf2, 0x61, 0x89, 0x40, 0xe9, 0x95, 0x22, 0x4a, 0xb9, 0xab,
|
||||
0x1a, 0x59, 0x9f, 0x67, 0x01, 0xae, 0xec, 0x6e, 0xc8, 0x48, 0x51, 0xe4, 0x44, 0xc8, 0x9e, 0x5a,
|
||||
0x0f, 0xeb, 0x94, 0x0a, 0x14, 0xdd, 0xb5, 0x21, 0x36, 0xc7, 0x2b, 0x06, 0x9c, 0x2d, 0xf9, 0xf6,
|
||||
0xdf, 0x1c, 0x16, 0x4b, 0xea, 0x13, 0x39, 0x8a, 0x35, 0xf2, 0x46, 0x86, 0x8c, 0x89, 0xba, 0x14,
|
||||
0xaf, 0xa3, 0x19, 0x60, 0xfd, 0xf3, 0x5c, 0x82, 0x3e, 0xf6, 0xd4, 0x96, 0x19, 0x0d, 0x09, 0x95,
|
||||
0xaa, 0x9a, 0xba, 0xe2, 0xdd, 0x82, 0x80, 0x03, 0x0e, 0x4c, 0x1f, 0x6b, 0xe0, 0xa4, 0x62, 0xe0,
|
||||
0xd4, 0xcb, 0x9f, 0x9a, 0xa5, 0xf4, 0xcf, 0xd7, 0x66, 0x15, 0x16, 0xdc, 0x29, 0x76, 0x9a, 0x5c,
|
||||
0x03, 0x0e, 0x99, 0x9f, 0x21, 0x4b, 0xf7, 0x27, 0x94, 0xd9, 0x0b, 0x1a, 0xed, 0xba, 0x07, 0xa6,
|
||||
0x37, 0x6e, 0x2b, 0xba, 0xca, 0x5e, 0x60, 0x3a, 0x03, 0x0e, 0x41, 0xba, 0xff, 0x22, 0x08, 0x39,
|
||||
0x67, 0x4b, 0x15, 0x19, 0xd5, 0x39, 0x6c, 0x7a, 0x29, 0xdd, 0x1b, 0x65, 0x6d, 0x10, 0xce, 0x79,
|
||||
0xe4, 0x32, 0xc7, 0x49, 0x30, 0x78, 0x46, 0x10, 0xd3, 0x1f, 0x48, 0x42, 0xde, 0xfd, 0xbe, 0xd6,
|
||||
0x5f, 0xee, 0x4f, 0x00, 0x07, 0x8d, 0x48, 0x55, 0xeb, 0xd1, 0xdb, 0x8e, 0xc5, 0x93, 0x14, 0xc3,
|
||||
0xea, 0x61, 0x15, 0x34, 0xf0, 0xcb, 0x99, 0x44, 0x9a, 0x4a, 0xd4, 0xf1, 0x06, 0x26, 0xe1, 0xdc,
|
||||
0xb6, 0xcf, 0x5a, 0xbf, 0x85, 0xe0, 0x1e, 0xd8, 0xeb, 0x34, 0x13, 0x2d, 0x13, 0x38, 0xa4, 0xeb,
|
||||
0x45, 0x41, 0x92, 0xcf, 0xde, 0x06, 0x46, 0xe2, 0x8e, 0x22, 0xe1, 0xef, 0x2a, 0x70, 0xe3, 0x1e,
|
||||
0xc2, 0x20, 0x75, 0x39, 0x27, 0xf5, 0xb8, 0x9b, 0x0b, 0x3c, 0x8e, 0x35, 0x8e, 0x0f, 0x3a, 0x07,
|
||||
0x6e, 0xdc, 0x03, 0xb3, 0x90, 0xb6, 0xb5, 0x34, 0x4c, 0x4b, 0x9f, 0xbc, 0x10, 0x33, 0xe1, 0xdd,
|
||||
0x4a, 0xe1, 0x5f, 0x01, 0x51, 0x29, 0xfd, 0x14, 0x08, 0x6b, 0xd2, 0x5a, 0xad, 0x31, 0x09, 0x52,
|
||||
0xf6, 0x56, 0x6b, 0xd5, 0xfc, 0x27, 0x80, 0xc3, 0x55, 0x1a, 0x0c, 0xc5, 0x08, 0xbf, 0x6e, 0x8b,
|
||||
0xf6, 0xc5, 0xc2, 0xa2, 0x48, 0x86, 0x06, 0x4e, 0x36, 0x43, 0xeb, 0x75, 0x14, 0x99, 0xc8, 0xc4,
|
||||
0x86, 0x2f, 0x19, 0xea, 0x07, 0x0b, 0x5a, 0x10, 0x58, 0x8c, 0xe4, 0x5a, 0xa5, 0x51, 0x69, 0x2a,
|
||||
0x1b, 0x38, 0x64, 0xba, 0x20, 0x88, 0xd9, 0xb9, 0xc2, 0x0b, 0x53, 0x60, 0xd1, 0x1b, 0xae, 0x02,
|
||||
0x37, 0xe8, 0xaa, 0x64, 0x4e, 0x5d, 0x5b, 0x8e, 0x08, 0xd0, 0x2e, 0x7e, 0x2c, 0x48, 0xe2, 0x55,
|
||||
0xc7, 0x07, 0x9d, 0x01, 0x47, 0xa8, 0x37, 0xe4, 0x48, 0xe6, 0xdb, 0x03, 0x4a, 0xfc, 0x77, 0x02,
|
||||
0xe9, 0x70, 0x59, 0x2a, 0x14, 0xce, 0x58, 0x07, 0x88, 0x2a, 0xe2, 0x0e, 0x7c, 0xd3, 0x06, 0x38,
|
||||
0x3d, 0x5a, 0xa2, 0xd5, 0x19, 0x93, 0x2c, 0xa7, 0x6f, 0xb5, 0x3a, 0xfe, 0x27, 0x80, 0xd3, 0xa0,
|
||||
0x5a, 0x0f, 0x60, 0xfe, 0xe3, 0x48, 0xcb, 0xfe, 0x4b, 0x0e, 0xfc, 0x07, 0x3e, 0x48, 0x87, 0xe7,
|
||||
0x39, 0x1e, 0x68, 0x3c, 0x86, 0x21, 0xcf, 0x2d, 0x1b, 0xd1, 0xb2, 0x2e, 0x82, 0x6a, 0xd0, 0x6a,
|
||||
0xca, 0xae, 0x0e, 0x4d, 0x65, 0x03, 0xd7, 0xe2, 0x99, 0xd2, 0x49, 0xe5, 0xe5, 0xcd, 0xe2, 0x58,
|
||||
0xa0, 0xab, 0xc0, 0xf5, 0x39, 0x23, 0x49, 0x69, 0xdf, 0xa8, 0xcb, 0x59, 0x49, 0xdd, 0xaf, 0x09,
|
||||
0x82, 0xfc, 0x08, 0x75, 0xd8, 0xa3, 0xcc, 0x29, 0xc7, 0x11, 0x17, 0x81, 0x15, 0x71, 0x77, 0xf1,
|
||||
0xbc, 0x52, 0x34, 0xff, 0x26, 0xf0, 0x0c, 0x1f, 0x97, 0x8e, 0x57, 0x6a, 0x91, 0x79, 0xae, 0x8a,
|
||||
0xca, 0x7c, 0x73, 0x51, 0x22, 0x15, 0x79, 0x6b, 0x42, 0xb2, 0x24, 0x15, 0x3e, 0xb6, 0x62, 0xb9,
|
||||
0x3f, 0x23, 0x2a, 0x31, 0x02, 0xd5, 0xa8, 0xd5, 0x04, 0x4a, 0x68, 0xab, 0x57, 0x1f, 0x1e, 0x7c,
|
||||
0xe4, 0x12, 0x4d, 0xd2, 0x8c, 0xce, 0xc8, 0xc4, 0x29, 0x0f, 0xfc, 0xd3, 0x2a, 0x09, 0x54, 0xb5,
|
||||
0xd2, 0x2b, 0x51, 0x83, 0xba, 0x5a, 0xd0, 0xf1, 0x8a, 0xca, 0x01, 0x0e, 0x81, 0xb5, 0x89, 0x22,
|
||||
0xf0, 0xe1, 0x8a, 0x01, 0x70, 0x0d, 0x38, 0x02, 0x00, 0x67, 0x96, 0x9e, 0x6d, 0x28, 0xf7, 0xf6,
|
||||
0xbb, 0x80, 0x3b, 0x97, 0x5e, 0xcf, 0x21, 0xba, 0x4e, 0x80, 0xd3, 0x62, 0x6d, 0x4d, 0x32, 0x74,
|
||||
0x25, 0x94, 0x9a, 0x6d, 0x0b, 0x0f, 0x25, 0x66, 0xe4, 0x00, 0x00, 0x0e, 0x4c, 0x49, 0x44, 0x41,
|
||||
0x54, 0x41, 0xef, 0x59, 0x92, 0x25, 0xeb, 0x93, 0x27, 0x3e, 0x10, 0x84, 0x74, 0x97, 0x12, 0xa9,
|
||||
0x30, 0xc8, 0x0c, 0x87, 0x00, 0xfe, 0x0d, 0x80, 0x1d, 0x5d, 0x2f, 0x96, 0xaa, 0x8a, 0xff, 0x93,
|
||||
0xc6, 0x09, 0x51, 0x4d, 0x5d, 0xe4, 0x50, 0xe3, 0xbe, 0x23, 0x56, 0x87, 0x47, 0xc7, 0x53, 0x71,
|
||||
0x97, 0x8e, 0xed, 0x1e, 0xdd, 0x12, 0x55, 0xf2, 0x06, 0x2a, 0xe5, 0x69, 0x9c, 0xaf, 0xd7, 0x39,
|
||||
0x01, 0x58, 0x95, 0xb4, 0x8d, 0x55, 0x29, 0x94, 0x06, 0x6e, 0xc8, 0x6d, 0x59, 0x2e, 0x5d, 0xf1,
|
||||
0xe5, 0xb2, 0xa8, 0xbc, 0x0c, 0x44, 0x65, 0x79, 0x85, 0x0a, 0x28, 0xb2, 0x4a, 0x10, 0xcc, 0xe9,
|
||||
0x8e, 0x2b, 0x69, 0x9d, 0x71, 0x1c, 0x36, 0x51, 0x2e, 0x02, 0x4e, 0xb4, 0xec, 0x30, 0x11, 0x0a,
|
||||
0xc1, 0x6f, 0x32, 0x30, 0x73, 0xd6, 0x5b, 0xb5, 0xcf, 0x1a, 0x90, 0x2c, 0x09, 0x59, 0xcb, 0x91,
|
||||
0xf2, 0x08, 0xfa, 0x71, 0xb0, 0x92, 0x59, 0x99, 0x49, 0x02, 0x3b, 0x9e, 0x2d, 0x0a, 0xe9, 0x7b,
|
||||
0x4a, 0xa5, 0x7b, 0xff, 0x1c, 0x70, 0xa5, 0x86, 0xad, 0x42, 0xbd, 0x7b, 0x0e, 0x9d, 0xf1, 0xd9,
|
||||
0xc7, 0x23, 0xfe, 0xd5, 0xf4, 0x4f, 0x5f, 0xcc, 0x52, 0x2c, 0xc4, 0x40, 0x3f, 0xae, 0xe4, 0x2d,
|
||||
0x2b, 0xe0, 0xb4, 0xc0, 0x97, 0x7b, 0x21, 0x3d, 0x19, 0xf6, 0xca, 0x64, 0x77, 0x11, 0x38, 0x62,
|
||||
0x6c, 0x8a, 0x20, 0x3d, 0x9a, 0x57, 0xee, 0xae, 0xb0, 0x55, 0xb2, 0x28, 0xa5, 0xd5, 0x73, 0x78,
|
||||
0xcc, 0x49, 0x76, 0x40, 0x53, 0xef, 0x47, 0x41, 0x7a, 0x29, 0x14, 0xef, 0x0b, 0x52, 0xf6, 0x06,
|
||||
0x29, 0x3f, 0x81, 0xb2, 0x0c, 0x2c, 0x39, 0x0d, 0x43, 0xda, 0x5e, 0x06, 0xa7, 0xec, 0x72, 0x24,
|
||||
0x82, 0xac, 0x5c, 0x35, 0x58, 0x82, 0x5e, 0xf8, 0xdd, 0xab, 0x64, 0x46, 0x9f, 0xe3, 0xf9, 0xe2,
|
||||
0x1f, 0xe9, 0xb3, 0x4a, 0x0a, 0xf0, 0x2b, 0x0b, 0x38, 0x54, 0x85, 0x63, 0xd5, 0x3d, 0xff, 0x5f,
|
||||
0x43, 0x5f, 0xaf, 0x4a, 0xe9, 0x13, 0x5a, 0x1e, 0x70, 0x08, 0xd2, 0xe9, 0x72, 0x66, 0xea, 0x8f,
|
||||
0x25, 0x99, 0x70, 0x67, 0xc0, 0xd9, 0x68, 0x29, 0x62, 0x56, 0xba, 0x20, 0xdc, 0x75, 0x54, 0x1b,
|
||||
0x6e, 0x7d, 0xda, 0x0e, 0x51, 0x16, 0x9f, 0x39, 0x76, 0xe4, 0x9c, 0xa5, 0x75, 0x7a, 0xdc, 0x10,
|
||||
0x24, 0x21, 0xf9, 0xfb, 0x1d, 0x56, 0xf4, 0x3f, 0xb7, 0x81, 0x1b, 0x9d, 0xf2, 0x49, 0xe9, 0xf3,
|
||||
0x7c, 0x0e, 0x9a, 0x25, 0x73, 0x64, 0xb9, 0xba, 0xc3, 0x06, 0x38, 0x9f, 0x89, 0xa9, 0xa2, 0x90,
|
||||
0x77, 0xa3, 0xc4, 0x9b, 0xab, 0x34, 0xe0, 0x60, 0x24, 0x0c, 0x3e, 0xf5, 0x0f, 0xad, 0x94, 0x6e,
|
||||
0xd8, 0xe5, 0x72, 0x1c, 0x82, 0x54, 0x6f, 0xd5, 0x44, 0x79, 0x2e, 0xb2, 0xe5, 0x0d, 0x17, 0x39,
|
||||
0x0e, 0x3d, 0x0a, 0x78, 0xe0, 0xf0, 0x3b, 0xe5, 0x9d, 0xd6, 0xe1, 0xb2, 0x28, 0x40, 0xab, 0xd2,
|
||||
0xb1, 0x71, 0xe2, 0x10, 0xb8, 0xb7, 0xb6, 0xa6, 0x99, 0xcd, 0xa9, 0xd3, 0x71, 0xeb, 0x5a, 0x7d,
|
||||
0x6c, 0x5c, 0x8a, 0x2c, 0x65, 0x9f, 0x29, 0xb9, 0x21, 0x41, 0x68, 0x3f, 0xfd, 0x43, 0x12, 0xd2,
|
||||
0x1d, 0x14, 0xd2, 0x5b, 0x93, 0x0d, 0x70, 0xc0, 0x1a, 0x7d, 0x00, 0x44, 0xf0, 0x83, 0x57, 0x9b,
|
||||
0x6e, 0x2b, 0x0b, 0x38, 0x30, 0x60, 0xc0, 0xe9, 0x6a, 0xa2, 0x78, 0x9b, 0xfe, 0x9f, 0xa4, 0x72,
|
||||
0x80, 0x2b, 0x9a, 0xd0, 0x52, 0x51, 0x4f, 0x17, 0x81, 0x6b, 0xf4, 0xd8, 0x2c, 0x0a, 0xe5, 0xd7,
|
||||
0xc6, 0xcd, 0x4a, 0x11, 0xc5, 0xbc, 0x3d, 0x8e, 0x8f, 0x39, 0x01, 0xce, 0xff, 0x6c, 0x8e, 0x54,
|
||||
0x70, 0x75, 0x90, 0x4d, 0xfd, 0x03, 0xd6, 0xe3, 0x38, 0x30, 0xa2, 0x7e, 0x2f, 0x91, 0x95, 0x00,
|
||||
0xd7, 0xc0, 0x6c, 0x49, 0x90, 0xa6, 0xd8, 0xef, 0xf5, 0xb5, 0xad, 0xab, 0xb4, 0x01, 0xce, 0xff,
|
||||
0x3b, 0xf1, 0x85, 0x58, 0xf8, 0xaa, 0xa0, 0xbe, 0xd2, 0x38, 0x0e, 0xa9, 0x1c, 0x56, 0x2b, 0xbe,
|
||||
0x5c, 0xb9, 0xa2, 0xd2, 0xa6, 0x6a, 0xdb, 0x35, 0xe0, 0x6a, 0xad, 0x00, 0xa6, 0x9a, 0xa9, 0x43,
|
||||
0x39, 0x67, 0x21, 0x6d, 0xaf, 0x65, 0x8b, 0xf2, 0xa3, 0xa9, 0xf0, 0xfa, 0xf6, 0x7e, 0x83, 0x13,
|
||||
0xe0, 0x06, 0x3c, 0x32, 0xcb, 0xb9, 0x6b, 0x9a, 0xd8, 0x54, 0x73, 0x60, 0x3e, 0xf3, 0xb3, 0x24,
|
||||
0x31, 0xbd, 0xa4, 0x28, 0x97, 0xc0, 0xd4, 0x35, 0x6e, 0x98, 0x0b, 0x9e, 0x5f, 0xb3, 0xdd, 0xaf,
|
||||
0xea, 0x59, 0xcb, 0x3a, 0x4c, 0x61, 0x07, 0x1c, 0xde, 0xe2, 0xbe, 0x59, 0x94, 0x1f, 0x7e, 0x59,
|
||||
0xc3, 0xb2, 0x32, 0x2a, 0x0b, 0xb8, 0xe2, 0xce, 0xf4, 0x95, 0x44, 0xae, 0x00, 0xa7, 0x6c, 0xc9,
|
||||
0x2c, 0xfe, 0xdd, 0x21, 0x70, 0xfe, 0xbd, 0xac, 0xb7, 0xf3, 0x6b, 0x3f, 0xb9, 0x2b, 0x4b, 0xe6,
|
||||
0x9b, 0x36, 0x75, 0x20, 0x75, 0x7a, 0xb5, 0xb5, 0x5e, 0xec, 0xad, 0x96, 0x67, 0xc8, 0x62, 0xfe,
|
||||
0x8f, 0x9d, 0x2c, 0x13, 0x6d, 0x3b, 0x34, 0xc7, 0xc0, 0x79, 0x4e, 0xcf, 0x90, 0x85, 0xf4, 0x29,
|
||||
0xca, 0x00, 0x4a, 0xf3, 0x9c, 0x76, 0xd8, 0x53, 0xe1, 0x8f, 0xdc, 0xb5, 0xaf, 0x24, 0x23, 0x00,
|
||||
0x8e, 0x58, 0x95, 0x59, 0x28, 0x66, 0xfc, 0x62, 0x3d, 0xb4, 0x3e, 0xeb, 0xf7, 0x4f, 0xb5, 0x1e,
|
||||
0xbb, 0x0d, 0x70, 0xe0, 0xa2, 0x2b, 0xd2, 0x44, 0x31, 0xfb, 0x76, 0xa0, 0xa5, 0x4f, 0x45, 0xa5,
|
||||
0x01, 0x57, 0xc9, 0x64, 0xe7, 0xc7, 0xe1, 0xe7, 0x05, 0xb1, 0x8c, 0xbd, 0x6e, 0x81, 0x3f, 0x17,
|
||||
0xd8, 0x95, 0xa0, 0x4f, 0xbc, 0x27, 0x64, 0xee, 0x9a, 0xd0, 0x06, 0xe2, 0x04, 0x35, 0x8f, 0xcf,
|
||||
0xd8, 0x1f, 0x33, 0x25, 0xa9, 0xe0, 0xa6, 0x4d, 0xb8, 0xb6, 0xc7, 0x19, 0x31, 0xeb, 0xce, 0x8f,
|
||||
0x63, 0x7b, 0xf9, 0xd7, 0xd0, 0x28, 0xcd, 0x10, 0x02, 0xc7, 0xdd, 0xc9, 0x95, 0xe5, 0xec, 0x9b,
|
||||
0x81, 0x4e, 0xee, 0x34, 0xe1, 0xbe, 0x28, 0xa4, 0xd8, 0xf5, 0xd8, 0xe9, 0x7e, 0x54, 0x90, 0xf2,
|
||||
0xef, 0xb4, 0xb3, 0x3f, 0xbd, 0xd1, 0xc5, 0x1c, 0xe0, 0x96, 0x8f, 0x2a, 0xfd, 0x56, 0x8b, 0x55,
|
||||
0x26, 0x49, 0x2c, 0x48, 0x5e, 0xde, 0xb6, 0x28, 0x8f, 0xe0, 0xd9, 0x6c, 0xe4, 0x37, 0xa6, 0x42,
|
||||
0x31, 0xb3, 0x24, 0xca, 0x09, 0xab, 0x29, 0x61, 0x76, 0xe0, 0x3b, 0xab, 0x12, 0x99, 0x06, 0xc0,
|
||||
0xb2, 0x92, 0x84, 0xb3, 0x83, 0xfe, 0x51, 0xc0, 0xa1, 0xaa, 0xf3, 0x72, 0x61, 0x19, 0xc0, 0x75,
|
||||
0x75, 0x90, 0xd6, 0x59, 0x0f, 0x5c, 0xf4, 0xec, 0x07, 0x9b, 0xa6, 0xf7, 0xea, 0xd0, 0xaa, 0x59,
|
||||
0xbb, 0xae, 0xc3, 0xe6, 0x25, 0x67, 0x9b, 0x05, 0x21, 0x6d, 0x8e, 0x4d, 0xed, 0xeb, 0x9c, 0x87,
|
||||
0xc0, 0xf5, 0x12, 0x1e, 0x1c, 0x5f, 0x3e, 0x7d, 0xc8, 0xa0, 0x01, 0x1f, 0x4e, 0x98, 0xb7, 0xff,
|
||||
0x3e, 0xcc, 0xa5, 0xde, 0x9f, 0xef, 0xd0, 0xa6, 0x24, 0x60, 0xe5, 0xb3, 0xa3, 0xb4, 0xce, 0x7f,
|
||||
0xa7, 0x88, 0x92, 0xe9, 0xa8, 0x03, 0x07, 0x42, 0xfd, 0x7d, 0xba, 0x68, 0x89, 0x57, 0x96, 0x50,
|
||||
0xe0, 0x8d, 0x2c, 0x59, 0xfe, 0x23, 0x6d, 0xc7, 0x27, 0x83, 0x7a, 0xb5, 0x6d, 0xd3, 0xa9, 0xcf,
|
||||
0x94, 0xb5, 0x77, 0x4d, 0x82, 0x2c, 0xa6, 0xf9, 0x97, 0xae, 0x2c, 0x81, 0x1c, 0x27, 0x5a, 0x03,
|
||||
0x87, 0xb4, 0x3d, 0x9b, 0x25, 0x48, 0xa6, 0x5d, 0xda, 0x7f, 0x12, 0x70, 0x08, 0x76, 0x5e, 0x2e,
|
||||
0x6b, 0x77, 0x69, 0xe0, 0x4f, 0x85, 0xb2, 0x2d, 0x70, 0xb3, 0x9e, 0xca, 0x72, 0x81, 0x98, 0x9b,
|
||||
0x91, 0x72, 0xf7, 0xf6, 0xed, 0xe4, 0xfb, 0x4f, 0x4d, 0xd0, 0x31, 0x4e, 0x59, 0x6a, 0x7b, 0x89,
|
||||
0x91, 0xc9, 0xb2, 0x0c, 0x5c, 0x65, 0x31, 0xc7, 0xf4, 0xf4, 0xf1, 0xa3, 0x27, 0xe9, 0x59, 0x2f,
|
||||
0x60, 0xff, 0x9d, 0xa7, 0x23, 0x1d, 0x3b, 0x71, 0x40, 0x81, 0x4d, 0xb8, 0x5f, 0x20, 0x42, 0xe0,
|
||||
0xac, 0x13, 0x33, 0xdf, 0xe6, 0xca, 0xd2, 0xc3, 0x39, 0x8e, 0x3e, 0x31, 0xea, 0x1e, 0xf0, 0xc4,
|
||||
0xcf, 0x58, 0xbd, 0x85, 0xf7, 0xfa, 0x51, 0xc8, 0x07, 0x92, 0x3f, 0xf3, 0xf1, 0x83, 0xe4, 0x3b,
|
||||
0xf7, 0x52, 0xd2, 0x73, 0xe0, 0xc6, 0xa6, 0xb4, 0x4d, 0xb8, 0xa6, 0xd4, 0xee, 0x98, 0xa2, 0xc8,
|
||||
0x49, 0xc9, 0x87, 0x60, 0x7c, 0xb5, 0xef, 0x59, 0x59, 0x12, 0x32, 0x06, 0xfd, 0x93, 0x80, 0xc3,
|
||||
0x34, 0xe7, 0x0b, 0xc4, 0xbc, 0xa5, 0xce, 0x39, 0xee, 0xb0, 0x7d, 0x25, 0x73, 0xbb, 0x35, 0x69,
|
||||
0xf9, 0x22, 0xec, 0x6f, 0xaa, 0x94, 0x78, 0x29, 0x45, 0x09, 0x69, 0xb3, 0x5a, 0xd9, 0x7a, 0x50,
|
||||
0x8d, 0xe6, 0xa5, 0x8b, 0x2f, 0x2c, 0xf5, 0x26, 0x42, 0x41, 0x81, 0x0c, 0x77, 0x19, 0xe5, 0xde,
|
||||
0xfe, 0xc2, 0x79, 0x8b, 0xf7, 0x09, 0xf7, 0x65, 0x11, 0x8a, 0x4a, 0x6b, 0xe5, 0x07, 0xb7, 0xd3,
|
||||
0xdc, 0xee, 0xe5, 0xe8, 0xfc, 0x16, 0x67, 0x0a, 0x0a, 0x5f, 0x3c, 0xb0, 0x7a, 0x8b, 0x50, 0x07,
|
||||
0x9e, 0xcd, 0x10, 0x9f, 0x3f, 0x87, 0xfb, 0x9f, 0x95, 0x06, 0x0e, 0x92, 0x94, 0x97, 0xba, 0x2a,
|
||||
0xd0, 0xea, 0x8a, 0xfe, 0x37, 0x0a, 0x64, 0xb9, 0x54, 0xbb, 0x0c, 0xc5, 0x3b, 0xaf, 0x35, 0x35,
|
||||
0x57, 0x7a, 0x21, 0x7e, 0xf9, 0x4f, 0x02, 0x0e, 0x21, 0x0e, 0x9a, 0x72, 0x9f, 0x8c, 0x75, 0x6a,
|
||||
0x36, 0x36, 0x5b, 0x9e, 0x99, 0xf7, 0x64, 0xad, 0xad, 0xdf, 0xd5, 0x6a, 0xe2, 0x2f, 0x37, 0x1f,
|
||||
0x3c, 0x4d, 0x37, 0xe5, 0xe6, 0x15, 0xe4, 0xe7, 0x9a, 0x1e, 0xdd, 0x58, 0xdc, 0x01, 0xb1, 0xef,
|
||||
0x6c, 0x8b, 0xb4, 0xfd, 0xe4, 0x97, 0xdb, 0x8f, 0xd3, 0xb2, 0x72, 0xf3, 0xc5, 0x02, 0xc8, 0x77,
|
||||
0xbf, 0xef, 0x18, 0xe7, 0xe3, 0x2c, 0x49, 0x4f, 0x20, 0x44, 0xaf, 0xc8, 0xbc, 0x9c, 0xb3, 0x03,
|
||||
0x6c, 0x37, 0x91, 0x7c, 0x9f, 0xf1, 0x3c, 0x63, 0x96, 0xe3, 0x2e, 0x68, 0x13, 0x32, 0xf2, 0xb2,
|
||||
0xec, 0x2a, 0x9a, 0x3d, 0x3b, 0xad, 0xbf, 0xf8, 0x38, 0x3d, 0x3b, 0xaf, 0x20, 0x2f, 0x2f, 0x37,
|
||||
0xed, 0x49, 0xf2, 0xc9, 0x89, 0x2d, 0xa0, 0xe1, 0x52, 0xb2, 0x8d, 0x0a, 0x81, 0x0d, 0x6a, 0xd2,
|
||||
0x3e, 0xb1, 0x49, 0xc3, 0xa3, 0xe8, 0xb7, 0x69, 0xf9, 0xd9, 0xe3, 0xfe, 0x51, 0xc0, 0x21, 0x13,
|
||||
0xf6, 0x9f, 0xd9, 0xe0, 0xbc, 0x61, 0xa2, 0xb6, 0xeb, 0x8f, 0x91, 0x9b, 0xec, 0xdb, 0x33, 0x61,
|
||||
0xef, 0xf4, 0x98, 0xba, 0x62, 0xd7, 0xc1, 0x33, 0x91, 0x91, 0x91, 0x67, 0xf6, 0xcf, 0xeb, 0x53,
|
||||
0xd3, 0x89, 0xe1, 0xeb, 0xdf, 0x77, 0xf1, 0xb7, 0x87, 0xcf, 0x9c, 0x05, 0x74, 0x72, 0xff, 0x8a,
|
||||
0x71, 0x75, 0x60, 0x2a, 0xc5, 0xb1, 0x6f, 0x03, 0x80, 0xab, 0x35, 0xf1, 0xec, 0xc9, 0x29, 0xfe,
|
||||
0xb6, 0x29, 0xd6, 0x01, 0x3f, 0x44, 0xee, 0x71, 0xe2, 0xd7, 0xbf, 0xb3, 0xe7, 0xec, 0x4f, 0xd6,
|
||||
0xc6, 0x0c, 0xec, 0x65, 0x84, 0xd4, 0xe8, 0xf0, 0xc5, 0xf7, 0xc7, 0x23, 0xcf, 0x46, 0x46, 0x9e,
|
||||
0xfc, 0x6e, 0xe9, 0xa0, 0x26, 0x6a, 0xdb, 0xb6, 0xbc, 0x48, 0x8f, 0xad, 0x91, 0x3b, 0xda, 0x96,
|
||||
0xca, 0xf8, 0x2a, 0xcd, 0x2d, 0xd0, 0xae, 0x5b, 0xcf, 0x1e, 0x55, 0x52, 0xea, 0xa7, 0x79, 0xbd,
|
||||
0x01, 0x00, 0x67, 0xe9, 0x86, 0xf0, 0x66, 0x10, 0x01, 0x0b, 0x23, 0x60, 0x90, 0x59, 0x01, 0xae,
|
||||
0x64, 0xa6, 0xcb, 0x75, 0x36, 0xaa, 0xb8, 0x0d, 0xb0, 0xd3, 0xdb, 0xa3, 0xae, 0x14, 0x24, 0xda,
|
||||
0xcd, 0x7e, 0x39, 0xdf, 0xe6, 0x14, 0x93, 0x68, 0xe0, 0x22, 0x60, 0x09, 0x3a, 0xe6, 0x62, 0xe1,
|
||||
0xdc, 0x5f, 0xfa, 0xdd, 0x2d, 0xbb, 0x52, 0x81, 0xcc, 0xe8, 0x1f, 0x4a, 0x32, 0x8c, 0xde, 0xdd,
|
||||
0xf6, 0xd0, 0x09, 0xa1, 0xe8, 0xaf, 0x0c, 0x4b, 0xf2, 0xd7, 0x27, 0xd7, 0x57, 0xfa, 0xe4, 0x55,
|
||||
0x39, 0x70, 0x08, 0x81, 0xe3, 0xb0, 0x0c, 0x1a, 0xc1, 0xa7, 0x45, 0xd3, 0x3c, 0x4d, 0xbb, 0x81,
|
||||
0x73, 0x4a, 0xa7, 0xc1, 0xba, 0xbe, 0x75, 0x6b, 0x63, 0x67, 0x05, 0x38, 0xbc, 0xca, 0x91, 0x43,
|
||||
0x61, 0xc9, 0xad, 0x0a, 0x45, 0xdf, 0xda, 0xcc, 0x73, 0xbc, 0x8e, 0xbd, 0x30, 0xbc, 0xea, 0x87,
|
||||
0xf4, 0x86, 0xd2, 0x29, 0x1d, 0x4b, 0x52, 0xe4, 0x95, 0xcd, 0xf5, 0x35, 0x1a, 0x14, 0xaf, 0xbc,
|
||||
0x58, 0xe3, 0x6b, 0x12, 0xae, 0x74, 0xb6, 0x51, 0xa1, 0xbe, 0xe3, 0x63, 0x58, 0x9e, 0x63, 0x99,
|
||||
0xe8, 0x11, 0x6e, 0xdc, 0x1c, 0x12, 0xae, 0x3e, 0xc1, 0x33, 0x7a, 0x23, 0x4b, 0x45, 0x2f, 0xe8,
|
||||
0xe9, 0xa5, 0x25, 0xca, 0x2d, 0xf6, 0xfb, 0xab, 0x09, 0xd6, 0xa8, 0x63, 0xa8, 0x57, 0xc0, 0xa2,
|
||||
0x23, 0x49, 0x3c, 0x47, 0x33, 0xcc, 0xe9, 0xa1, 0xaa, 0x2a, 0x5f, 0x4c, 0x6f, 0x24, 0xa1, 0xe8,
|
||||
0x46, 0xd2, 0xc8, 0xf3, 0x1c, 0xc7, 0xe8, 0x62, 0xf7, 0x2d, 0xec, 0xe2, 0x57, 0xd5, 0xeb, 0x5b,
|
||||
0x85, 0x23, 0xde, 0xdd, 0xc6, 0xef, 0xbb, 0x64, 0x80, 0xbb, 0x1a, 0x75, 0x94, 0x6e, 0x63, 0x47,
|
||||
0x37, 0x6e, 0x0e, 0x49, 0x4b, 0x4c, 0x3a, 0x05, 0xfb, 0x29, 0x50, 0x0c, 0xc9, 0x26, 0x5c, 0xdf,
|
||||
0x3e, 0xb3, 0x8b, 0x1f, 0x7c, 0xf7, 0x6f, 0xf6, 0x0b, 0x8a, 0xb6, 0x3d, 0xc1, 0xa7, 0x21, 0xa1,
|
||||
0x5e, 0x5d, 0xc6, 0x6c, 0x8f, 0x22, 0x49, 0x9a, 0xe1, 0x69, 0xc0, 0x72, 0xd1, 0xe3, 0xeb, 0x57,
|
||||
0xb9, 0x10, 0x78, 0x43, 0x09, 0x6b, 0x38, 0xfa, 0x44, 0x3c, 0x43, 0xea, 0x29, 0x1a, 0xd6, 0xfa,
|
||||
0x5f, 0x3f, 0xb6, 0x6d, 0x70, 0x63, 0x02, 0xa9, 0x81, 0xbc, 0x46, 0x21, 0xe4, 0x6b, 0x13, 0xa1,
|
||||
0x3c, 0x35, 0x8b, 0xd0, 0xa0, 0x08, 0x5a, 0x3f, 0x68, 0xc9, 0xb1, 0x4b, 0x7a, 0x92, 0x27, 0x39,
|
||||
0x58, 0xec, 0x47, 0x9e, 0x58, 0xe0, 0x87, 0x6a, 0xdf, 0x14, 0xef, 0xf2, 0x0d, 0x23, 0x0c, 0x6d,
|
||||
0x38, 0x66, 0xdd, 0x15, 0x30, 0x4b, 0xc6, 0xff, 0x50, 0xb0, 0xfd, 0x78, 0xec, 0xa1, 0x75, 0x03,
|
||||
0x61, 0x83, 0x28, 0x0c, 0xfb, 0xfb, 0x26, 0x8c, 0xd0, 0x7a, 0xa8, 0x09, 0x2d, 0x81, 0x56, 0x0b,
|
||||
0x5a, 0x72, 0xe8, 0x1c, 0xa3, 0x4b, 0xe2, 0x6e, 0x51, 0x49, 0xa4, 0x81, 0xbc, 0x72, 0x60, 0xcc,
|
||||
0xbb, 0xa8, 0xaa, 0x5a, 0x55, 0xcf, 0xd0, 0x9b, 0x49, 0x6a, 0x14, 0xac, 0xf5, 0x6a, 0xed, 0x27,
|
||||
0x6f, 0x0f, 0xd7, 0xe9, 0x12, 0x92, 0x78, 0x3a, 0x31, 0x81, 0x61, 0xa9, 0x88, 0x85, 0x43, 0x9b,
|
||||
0xd7, 0x24, 0x90, 0xbf, 0x55, 0x48, 0xa1, 0xcd, 0xfb, 0x2d, 0x3a, 0x60, 0x80, 0xcd, 0xbc, 0x81,
|
||||
0xe0, 0xa6, 0x19, 0xdd, 0x85, 0xed, 0xb3, 0xdb, 0xd7, 0x85, 0xf1, 0xf0, 0xaa, 0xd6, 0xba, 0x6f,
|
||||
0x28, 0xc1, 0x87, 0x8c, 0x01, 0x1d, 0xa3, 0x69, 0x3f, 0x79, 0x5f, 0x44, 0x1c, 0x47, 0xea, 0x74,
|
||||
0x24, 0x45, 0x31, 0x09, 0xb1, 0xc7, 0x16, 0x0e, 0xf5, 0x43, 0xab, 0xfd, 0x4d, 0xd2, 0x12, 0x2c,
|
||||
0x1e, 0xcc, 0xaf, 0xdb, 0xc2, 0x7d, 0xd7, 0x19, 0x06, 0xac, 0x1a, 0xde, 0xa0, 0xa3, 0xe2, 0x2f,
|
||||
0x84, 0x2c, 0x7b, 0x4f, 0xab, 0xf4, 0x65, 0x70, 0xdb, 0x26, 0x8e, 0x09, 0x6e, 0x46, 0x54, 0x03,
|
||||
0xb3, 0x80, 0x40, 0x5a, 0x0f, 0x5c, 0x72, 0x88, 0x26, 0x19, 0x46, 0xc7, 0xd0, 0x2c, 0xc3, 0xc4,
|
||||
0xc3, 0x0d, 0x1b, 0x5e, 0x7f, 0xd3, 0x18, 0xd0, 0x80, 0x31, 0xdb, 0x8e, 0xc5, 0xd3, 0x1c, 0xb8,
|
||||
0x7b, 0x12, 0xdc, 0xb5, 0x75, 0x6e, 0xd9, 0x88, 0x77, 0xeb, 0x5a, 0x3a, 0x00, 0x68, 0x2a, 0x5e,
|
||||
0xbb, 0xfe, 0x7f, 0x8e, 0x3c, 0x5b, 0xf7, 0x5f, 0x77, 0x82, 0xd6, 0xd3, 0x34, 0xc7, 0x30, 0x24,
|
||||
0xa9, 0xbf, 0x7e, 0x6a, 0xcb, 0x4c, 0x3f, 0xd4, 0xd2, 0x40, 0xed, 0x2f, 0x89, 0x85, 0xa1, 0xc5,
|
||||
0x3f, 0xfd, 0x06, 0x6f, 0x39, 0x16, 0x0b, 0x39, 0x9d, 0xd1, 0xeb, 0x39, 0x5a, 0x77, 0xe1, 0xeb,
|
||||
0x49, 0xad, 0xbd, 0xec, 0x9f, 0x60, 0xec, 0x26, 0x27, 0x04, 0x6c, 0x3a, 0x0d, 0xee, 0x3b, 0x3c,
|
||||
0x38, 0x3c, 0x86, 0xe6, 0x79, 0xfe, 0x96, 0x51, 0xaf, 0xff, 0x8d, 0x8b, 0xd8, 0x36, 0xa6, 0x8b,
|
||||
0x17, 0xa2, 0xb4, 0x06, 0xc5, 0x60, 0xc8, 0xbe, 0xf2, 0x1e, 0xd1, 0xad, 0x54, 0x5f, 0x62, 0xb8,
|
||||
0x87, 0x57, 0xcb, 0x31, 0xab, 0xa3, 0x12, 0x6e, 0xb1, 0xb4, 0x21, 0x91, 0xa4, 0x8c, 0xba, 0xd8,
|
||||
0xf0, 0x9d, 0xc3, 0x9b, 0xbe, 0x09, 0x21, 0xd3, 0x7f, 0x14, 0x61, 0x80, 0x50, 0xdf, 0xc9, 0x5f,
|
||||
0x87, 0xc7, 0x18, 0x29, 0x03, 0x4d, 0x71, 0x3c, 0x49, 0x93, 0x11, 0x5b, 0x82, 0xde, 0xf3, 0x52,
|
||||
0x1e, 0x37, 0x8d, 0x12, 0xa8, 0xcb, 0xad, 0x38, 0xcb, 0xbf, 0x15, 0xcc, 0x73, 0xa0, 0x68, 0xcd,
|
||||
0xe6, 0x41, 0x0b, 0x23, 0x18, 0x23, 0xc3, 0x1a, 0x18, 0x8a, 0xa2, 0x38, 0x2a, 0x7c, 0xe7, 0xe4,
|
||||
0xf6, 0xda, 0x6a, 0x6e, 0xbd, 0x56, 0x21, 0x42, 0x55, 0x18, 0x50, 0x77, 0x04, 0xa2, 0xf5, 0xed,
|
||||
0x09, 0x1f, 0xe2, 0x4e, 0x02, 0xb6, 0x23, 0x75, 0x2c, 0xcf, 0x9c, 0x3b, 0xb0, 0x68, 0xa0, 0x52,
|
||||
0xee, 0x00, 0x3b, 0x06, 0x55, 0x56, 0x30, 0x93, 0x20, 0x30, 0x15, 0xaa, 0x0e, 0x58, 0xb4, 0xf7,
|
||||
0x5c, 0x1c, 0xb0, 0x21, 0x29, 0x23, 0xa7, 0x67, 0xf8, 0xd8, 0x43, 0xcb, 0xde, 0x6f, 0x0c, 0x18,
|
||||
0x1b, 0x53, 0xb9, 0x19, 0xae, 0x22, 0xa4, 0x46, 0xe1, 0x43, 0x90, 0xe0, 0x84, 0x22, 0xbe, 0x03,
|
||||
0x67, 0x87, 0x5e, 0xe1, 0x19, 0x4a, 0x47, 0xd1, 0x9c, 0x91, 0x24, 0xa3, 0x0e, 0xcd, 0xec, 0x56,
|
||||
0x13, 0x57, 0xda, 0xc6, 0x56, 0xd6, 0xcd, 0x80, 0xd8, 0xad, 0xf9, 0x2e, 0xec, 0x5d, 0xa9, 0x53,
|
||||
0x9a, 0xad, 0x53, 0x7a, 0x3d, 0x73, 0x68, 0xd9, 0xc0, 0x77, 0x55, 0x35, 0x70, 0x0c, 0xc7, 0x2b,
|
||||
0xbe, 0x25, 0xeb, 0xff, 0x34, 0x41, 0xfd, 0x85, 0x03, 0x6c, 0x30, 0xa5, 0x0b, 0x8d, 0x67, 0xfb,
|
||||
0xe0, 0x7d, 0xd1, 0x09, 0x54, 0xe2, 0x2d, 0x60, 0xa1, 0xd3, 0xdc, 0x6f, 0xd7, 0x43, 0x16, 0x76,
|
||||
0x69, 0x08, 0x4f, 0xaa, 0xa4, 0x9b, 0x79, 0x77, 0x19, 0x1f, 0x12, 0xcd, 0x29, 0x76, 0x24, 0x43,
|
||||
0xf3, 0x49, 0x17, 0x8e, 0x04, 0x0f, 0xf5, 0x84, 0x21, 0x14, 0xa5, 0x69, 0x05, 0x86, 0xba, 0x65,
|
||||
0x65, 0x05, 0x08, 0x9a, 0x0b, 0x78, 0x71, 0xdd, 0x3f, 0xa1, 0x56, 0xf9, 0x7e, 0x10, 0x1c, 0x12,
|
||||
0xa3, 0x67, 0xc1, 0xd4, 0x02, 0x39, 0xc6, 0xfc, 0x16, 0xbb, 0x65, 0x46, 0xe7, 0x86, 0x2e, 0x35,
|
||||
0x28, 0x71, 0x78, 0x71, 0xab, 0x17, 0x5e, 0x5d, 0xc6, 0x6c, 0x8b, 0x20, 0x29, 0x8e, 0xa1, 0x49,
|
||||
0xbd, 0x9e, 0xa7, 0x63, 0xc2, 0x83, 0x87, 0xfb, 0x96, 0x3e, 0xc1, 0xcd, 0x71, 0x7f, 0x8a, 0xb0,
|
||||
0xba, 0xb0, 0x5b, 0xb9, 0x9e, 0x22, 0x69, 0x86, 0x83, 0xfd, 0x4c, 0x62, 0xc3, 0xb6, 0x0c, 0xf4,
|
||||
0x23, 0x50, 0x4b, 0xbf, 0xae, 0x8a, 0x5c, 0x08, 0xf0, 0x91, 0x4a, 0xa5, 0x74, 0x65, 0x23, 0x10,
|
||||
0x0f, 0x1c, 0xf3, 0x1e, 0xbc, 0x28, 0xec, 0x12, 0x79, 0x0b, 0xe8, 0x4f, 0x2e, 0x31, 0xc1, 0x90,
|
||||
0x78, 0x61, 0xf7, 0xe4, 0x9e, 0x2e, 0x77, 0x57, 0x77, 0x53, 0xf9, 0xa4, 0x06, 0x22, 0xcb, 0xb7,
|
||||
0xe3, 0xb4, 0xcd, 0x31, 0xb0, 0x59, 0x39, 0x9d, 0x98, 0x48, 0xb1, 0x6c, 0xcc, 0x81, 0xd5, 0x30,
|
||||
0x8e, 0x89, 0x62, 0x2a, 0x8c, 0x20, 0xb4, 0x2e, 0xa3, 0x47, 0x60, 0xb0, 0x93, 0x1e, 0xa6, 0x24,
|
||||
0xb7, 0xd5, 0xf8, 0xe0, 0x45, 0x07, 0xce, 0x71, 0x34, 0x6d, 0xa4, 0x18, 0x5d, 0x02, 0x43, 0xc7,
|
||||
0x1c, 0x9a, 0xd6, 0xd3, 0x17, 0xc7, 0xdc, 0x91, 0xe4, 0x4a, 0x24, 0xa5, 0x7b, 0xa1, 0x06, 0x6f,
|
||||
0x3f, 0x6d, 0xe7, 0x09, 0x8a, 0xa5, 0x92, 0x68, 0x5e, 0x9f, 0x64, 0xa0, 0x93, 0x7e, 0x5d, 0x10,
|
||||
0xd4, 0xbc, 0xa6, 0x5a, 0x5d, 0x81, 0x22, 0x07, 0xa2, 0x86, 0x4a, 0x05, 0x1f, 0x60, 0x85, 0x6a,
|
||||
0xb0, 0xe6, 0xfd, 0x16, 0x86, 0x90, 0x3c, 0xa7, 0xe3, 0x60, 0xf2, 0xd6, 0x48, 0x46, 0xef, 0x9c,
|
||||
0xdb, 0xbe, 0x36, 0x2c, 0x2c, 0xc5, 0x31, 0xb5, 0xdb, 0x92, 0xac, 0x4c, 0x22, 0x70, 0xc0, 0x56,
|
||||
0x9a, 0x8e, 0xd3, 0xf6, 0x45, 0xc4, 0xd3, 0x3c, 0x9b, 0xa0, 0x07, 0x86, 0x04, 0x1f, 0x1b, 0xb6,
|
||||
0x20, 0x48, 0x79, 0x78, 0xb1, 0xcb, 0x57, 0x81, 0x6e, 0x20, 0x58, 0x04, 0xb8, 0x5f, 0x97, 0x85,
|
||||
0x21, 0xd7, 0x75, 0x46, 0xf8, 0x70, 0x3f, 0x9a, 0xa5, 0xe3, 0xa3, 0xf7, 0x05, 0xb7, 0xf7, 0xb4,
|
||||
0x28, 0x4d, 0xc2, 0xba, 0x85, 0xa6, 0x9b, 0xfe, 0x2c, 0xa9, 0x55, 0x96, 0xbc, 0x5c, 0xeb, 0xc1,
|
||||
0xcb, 0x42, 0x49, 0x0a, 0xd8, 0x28, 0x0c, 0x65, 0xa4, 0x75, 0xf1, 0x51, 0x5b, 0x66, 0xbe, 0x5b,
|
||||
0xd3, 0xe5, 0xf8, 0x2f, 0x14, 0xad, 0xe0, 0xc7, 0xbb, 0x63, 0xb6, 0x85, 0x25, 0x24, 0xf1, 0x7a,
|
||||
0xa3, 0x41, 0x07, 0xdb, 0x5d, 0x9e, 0x5b, 0xf6, 0x51, 0xeb, 0xda, 0x38, 0x66, 0x31, 0x89, 0xaa,
|
||||
0xb9, 0x1f, 0xf6, 0x5d, 0x49, 0xf4, 0xaa, 0x81, 0xb9, 0xe5, 0x2f, 0xe1, 0xd5, 0x7a, 0xe0, 0xc6,
|
||||
0x13, 0x3a, 0xe8, 0x1a, 0xf0, 0x7a, 0x9a, 0x65, 0x94, 0x38, 0xa6, 0xcb, 0x17, 0xab, 0x86, 0xab,
|
||||
0x31, 0xbf, 0x81, 0x5b, 0xc2, 0x62, 0x21, 0xf0, 0x7a, 0xca, 0xc8, 0x18, 0xe9, 0x0b, 0x1b, 0x27,
|
||||
0xbf, 0x5b, 0xb7, 0xe8, 0xa1, 0x13, 0x8a, 0x25, 0xab, 0x76, 0x43, 0xf7, 0x57, 0x11, 0xea, 0x3b,
|
||||
0x22, 0xf8, 0x44, 0x0c, 0x49, 0xd2, 0x24, 0xec, 0xfb, 0x44, 0x25, 0x9c, 0xde, 0x32, 0xba, 0x73,
|
||||
0x4d, 0xb8, 0xbd, 0x44, 0x01, 0xd7, 0xda, 0x51, 0x80, 0x2d, 0xa0, 0x14, 0x51, 0xaa, 0x3c, 0x75,
|
||||
0xd8, 0xab, 0xf9, 0x98, 0x95, 0x11, 0x71, 0x3a, 0x1e, 0x58, 0xfe, 0x3a, 0x2a, 0x89, 0x89, 0x0d,
|
||||
0xdf, 0x39, 0xa2, 0x79, 0x75, 0x9c, 0x40, 0xdd, 0x58, 0xfd, 0x2d, 0x04, 0xcc, 0x07, 0xdf, 0x8f,
|
||||
0x37, 0x9e, 0x88, 0xd1, 0x33, 0x09, 0x14, 0x74, 0xc0, 0x0c, 0xfc, 0xe9, 0xcd, 0x41, 0x01, 0x5e,
|
||||
0x50, 0x9c, 0x22, 0x1e, 0x8e, 0x9e, 0x1f, 0x40, 0x28, 0xad, 0x91, 0x88, 0x9a, 0xcd, 0x83, 0x16,
|
||||
0x9c, 0x66, 0x48, 0x86, 0xe7, 0x68, 0x8a, 0xd3, 0xd3, 0x14, 0x7c, 0x0a, 0xa4, 0x1a, 0x16, 0x71,
|
||||
0xba, 0xdd, 0xec, 0xbf, 0x87, 0x54, 0x60, 0xb6, 0x95, 0x38, 0xe6, 0x75, 0x8e, 0x4c, 0x62, 0x0c,
|
||||
0x06, 0x86, 0x67, 0xe8, 0xa8, 0x03, 0x0b, 0xfb, 0xc3, 0x2d, 0x5d, 0x18, 0x6e, 0x53, 0x44, 0x07,
|
||||
0x1f, 0x05, 0xa1, 0x02, 0xf6, 0x08, 0x5e, 0xfd, 0xdd, 0x85, 0x7b, 0xa3, 0xe2, 0x74, 0x1c, 0xcd,
|
||||
0x1a, 0x68, 0x3d, 0xc9, 0xc5, 0x85, 0x2e, 0xeb, 0xd9, 0x14, 0x57, 0xab, 0x71, 0x77, 0x66, 0xfb,
|
||||
0x6f, 0x23, 0x0f, 0x35, 0x06, 0xab, 0xb1, 0x7c, 0x07, 0xcf, 0x3d, 0x12, 0x93, 0xc8, 0x50, 0x8c,
|
||||
0x1e, 0x30, 0x11, 0xa9, 0x8f, 0x3a, 0x34, 0xa3, 0xf3, 0xdb, 0xc0, 0xc2, 0x54, 0x59, 0xbb, 0xd0,
|
||||
0x04, 0x4c, 0x26, 0x20, 0x88, 0x57, 0xcb, 0x99, 0x5b, 0xa2, 0x12, 0x38, 0x86, 0x04, 0x76, 0x0d,
|
||||
0x14, 0xb1, 0xa1, 0xcb, 0x06, 0xb7, 0x56, 0x3a, 0xe1, 0x6b, 0xb0, 0x4a, 0xdd, 0xe9, 0xef, 0xa6,
|
||||
0x32, 0x08, 0x76, 0xe5, 0xb2, 0x74, 0x56, 0xf0, 0xea, 0x1c, 0x7c, 0x20, 0x3a, 0xde, 0x60, 0x64,
|
||||
0x68, 0x2a, 0x01, 0x58, 0x1b, 0x31, 0x7b, 0x17, 0x74, 0x69, 0x68, 0x8b, 0x02, 0xe0, 0xa8, 0xba,
|
||||
0x5d, 0xc6, 0x84, 0xc0, 0x27, 0x8b, 0xdf, 0x02, 0x1a, 0xd1, 0xc0, 0xd0, 0xd1, 0x47, 0x82, 0x87,
|
||||
0x7b, 0x29, 0x3a, 0x0f, 0x47, 0x5f, 0xab, 0x0f, 0xa2, 0x9b, 0x5e, 0x8f, 0x30, 0x8d, 0xa2, 0xc8,
|
||||
0x60, 0x04, 0x18, 0xf5, 0xed, 0xbf, 0x72, 0x5f, 0x0c, 0x09, 0x00, 0x89, 0x67, 0x79, 0x8e, 0xe7,
|
||||
0xae, 0xc3, 0x38, 0xa6, 0xf5, 0xd9, 0x84, 0x57, 0xe7, 0xd1, 0x5b, 0x4e, 0xf3, 0x3c, 0xa5, 0x03,
|
||||
0x98, 0x25, 0xe9, 0x13, 0x62, 0xc2, 0x83, 0x47, 0xf8, 0x2a, 0x7d, 0x65, 0x09, 0x0c, 0x57, 0xc3,
|
||||
0x60, 0xb5, 0xb6, 0xf2, 0xb2, 0x7b, 0x6e, 0x72, 0x81, 0x2c, 0x4f, 0x6c, 0x23, 0x6a, 0x07, 0x4c,
|
||||
0xdb, 0x1c, 0xcd, 0x2a, 0x8f, 0x9d, 0xe6, 0x28, 0x92, 0x8c, 0x0d, 0xdb, 0xdc, 0xdf, 0x0f, 0x2b,
|
||||
0x7a, 0x96, 0x1c, 0x86, 0x10, 0x75, 0xfb, 0x2f, 0x0c, 0x8b, 0x86, 0xe5, 0x23, 0x06, 0x9e, 0xe4,
|
||||
0x49, 0x3a, 0x7a, 0xef, 0xb4, 0xde, 0xb5, 0xdd, 0x5a, 0xed, 0x0d, 0x20, 0x54, 0xad, 0xf6, 0xed,
|
||||
0xf8, 0xf1, 0xc6, 0x18, 0xd8, 0xef, 0x9a, 0xe4, 0xe1, 0x53, 0x3c, 0x62, 0x0e, 0x7c, 0xf5, 0x51,
|
||||
0x47, 0x0f, 0x15, 0xa2, 0x26, 0xf0, 0xea, 0xde, 0x03, 0xe7, 0xee, 0x8b, 0xd2, 0x93, 0x06, 0x9e,
|
||||
0x4b, 0x22, 0x75, 0x1c, 0x7c, 0x70, 0x6d, 0x6f, 0x5f, 0x8f, 0xaa, 0x1e, 0xb2, 0x9b, 0x20, 0x29,
|
||||
0x0f, 0x6b, 0x44, 0xd1, 0xce, 0x1f, 0xef, 0x3e, 0x41, 0xc2, 0xfd, 0x87, 0x24, 0xc4, 0x48, 0x1f,
|
||||
0x17, 0x1e, 0xb2, 0x79, 0xdd, 0xd7, 0x5b, 0x0e, 0x45, 0x30, 0x89, 0x89, 0x89, 0x0c, 0xc3, 0xd1,
|
||||
0xb7, 0xa8, 0xdf, 0xa2, 0x77, 0x2f, 0xe8, 0xec, 0xad, 0xf5, 0xc0, 0xdd, 0x72, 0xf1, 0x8d, 0x20,
|
||||
0xa5, 0x0b, 0x3d, 0x70, 0xc6, 0xbc, 0x3a, 0xcf, 0x38, 0x10, 0x11, 0x6f, 0xe4, 0x15, 0xa3, 0x11,
|
||||
0x68, 0x3b, 0x92, 0x36, 0x50, 0x89, 0x0c, 0x4f, 0x33, 0x1c, 0xc7, 0xea, 0x78, 0x3e, 0x3e, 0xfa,
|
||||
0x40, 0x70, 0x67, 0x2f, 0xa0, 0xcc, 0xd4, 0x5a, 0xb7, 0x9c, 0x7c, 0x23, 0x48, 0x79, 0x3c, 0x0e,
|
||||
0x41, 0x00, 0xf7, 0x0d, 0x0d, 0x08, 0x0a, 0x3e, 0xc2, 0x1a, 0x7f, 0x23, 0x69, 0x96, 0x67, 0x8d,
|
||||
0x46, 0x9a, 0xa6, 0x19, 0xa3, 0x81, 0xd4, 0xb1, 0x14, 0xcd, 0xdc, 0xba, 0x10, 0x3c, 0x3a, 0xa0,
|
||||
0xae, 0xe5, 0x29, 0x73, 0x6e, 0x7a, 0x33, 0x08, 0xb3, 0xf4, 0xf6, 0x43, 0x3d, 0x70, 0x14, 0xad,
|
||||
0x19, 0x30, 0x78, 0xf3, 0x29, 0x52, 0xc7, 0x33, 0xf0, 0x31, 0xc3, 0x8c, 0x8e, 0xe6, 0x74, 0x2c,
|
||||
0x63, 0x60, 0x81, 0xfd, 0xbf, 0x71, 0x5a, 0x40, 0x5d, 0xf8, 0x68, 0x0f, 0x70, 0x9a, 0xdb, 0x30,
|
||||
0x79, 0x33, 0x08, 0xb5, 0x64, 0xc1, 0x61, 0x73, 0x73, 0x25, 0x06, 0x82, 0x37, 0xfc, 0x28, 0xf8,
|
||||
0x48, 0x44, 0x2c, 0xc9, 0xf3, 0x1c, 0xf3, 0x1b, 0x4f, 0xeb, 0xe2, 0xa2, 0xc3, 0x76, 0x7e, 0xd4,
|
||||
0x1c, 0xb1, 0x34, 0xff, 0x76, 0x63, 0xf6, 0x26, 0x13, 0x56, 0x7f, 0xe8, 0xdc, 0x6d, 0x21, 0xc7,
|
||||
0x4e, 0x44, 0x5c, 0x88, 0x3a, 0x7d, 0x2c, 0x74, 0x7b, 0xf0, 0x47, 0xef, 0xb9, 0x01, 0xfb, 0x27,
|
||||
0x10, 0xcc, 0xcc, 0x68, 0x7c, 0x9b, 0x77, 0xeb, 0xd9, 0x7f, 0xf0, 0xc0, 0x0f, 0xba, 0xb5, 0x6f,
|
||||
0xe8, 0x05, 0xb7, 0x04, 0xbb, 0xb7, 0x24, 0xbe, 0xf9, 0x44, 0x14, 0xff, 0xd0, 0x58, 0x7a, 0x76,
|
||||
0x23, 0x15, 0x2d, 0x28, 0x72, 0x53, 0x55, 0x12, 0x54, 0x7b, 0x6a, 0xb8, 0xaf, 0x4e, 0x0d, 0xb1,
|
||||
0x73, 0xe9, 0x99, 0x55, 0x6e, 0x7a, 0x3d, 0xfa, 0xff, 0x89, 0x66, 0x6b, 0x8a, 0xce, 0x58, 0xc1,
|
||||
0x98, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82, };
|
||||
114
libraries/M5GFX/examples/PlatformIO_SDL/README.md
Normal file
114
libraries/M5GFX/examples/PlatformIO_SDL/README.md
Normal file
|
|
@ -0,0 +1,114 @@
|
|||
|
||||
# Steps to run M5GFX on a PC. ( VisualStudioCode + PlatformIO + SDL2 environment. )
|
||||
|
||||
## Step 1. install Visual Studio Code and make PlatformIO ready for use.
|
||||
|
||||
https://docs.m5stack.com/ja/quick_start/m5unified/intro_vscode
|
||||
|
||||
---
|
||||
|
||||
## Step 2. PlatformIO to allow `platform = native` to be built.
|
||||
https://docs.platformio.org/en/latest/platforms/native.html#installation
|
||||
|
||||
#### for Windows
|
||||
follow the [MSYS2](https://www.msys2.org/) installation guide .
|
||||
Run the following command on msys2 to install gcc and gdb .
|
||||
``` msys2
|
||||
pacman -S mingw-w64-ucrt-x86_64-gcc mingw-w64-ucrt-x86_64-gdb
|
||||
```
|
||||
|
||||
Add the following paths to the `PATH` system environment variable:
|
||||
```
|
||||
C:\msys64\mingw64\bin
|
||||
C:\msys64\ucrt64\bin
|
||||
C:\msys64\usr\bin
|
||||
```
|
||||
|
||||
#### for Linux
|
||||
|
||||
open the system terminal and run the following commands:
|
||||
```
|
||||
sudo apt update
|
||||
sudo apt install build-essential
|
||||
```
|
||||
|
||||
#### for macOS
|
||||
|
||||
open the system terminal and install Xcode Command Line Tools
|
||||
```
|
||||
xcode-select --install
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Step 3. Enable `SDL2` on PlatformIO.
|
||||
|
||||
#### for Windows
|
||||
|
||||
Go to the [SDL repository on github and obtain the release package (SDL2-devel-x.x.x-mingw.zip).](https://github.com/libsdl-org/SDL/releases)
|
||||
|
||||
Unzip the zip file and copy the following four files to `C:\msys64\ucrt64`
|
||||
|
||||
- share
|
||||
- bin
|
||||
- include
|
||||
- lib
|
||||
|
||||
#### for Linux
|
||||
|
||||
open the system terminal and run the following commands:
|
||||
|
||||
```
|
||||
sudo apt-get install libsdl2 libsdl2-dev
|
||||
```
|
||||
|
||||
#### for macOS
|
||||
|
||||
Install `sdl2` using [Homebrew](https://brew.sh/).
|
||||
```
|
||||
brew install sdl2
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Step 4. Execute !
|
||||
|
||||
Open the `PlatformIO_SDL` folder containing this document in PlatformIO.
|
||||
|
||||
Click on the  icon on the left side of the screen.
|
||||
Click `PROJECT TASKS` -> `native` -> `General` -> `Upload`
|
||||
※ If you are using arm processor, use `native_arm` instead of `native` (e.g. M1mac)
|
||||
|
||||

|
||||
|
||||
※ The window may start up with the window hidden behind. Check the task tray.
|
||||
|
||||
---
|
||||
|
||||
## Step 5. Use debugger.
|
||||
|
||||
|
||||
#### for macOS
|
||||
|
||||
If you want to use the debugger on a mac, lldb is available.
|
||||
|
||||

|
||||
|
||||
`EXPLORER` -> `.vscode` -> `launch.json` -> `Add Configuration...` -> `C/C++: (lldb) Launch`
|
||||
|
||||

|
||||
|
||||
Rewrite the `"program"` : `"${workspaceRoot}/.pio/build/native/program"`
|
||||
|
||||
(The `native` part should match the environment name in `PlatformIO`)
|
||||
|
||||

|
||||
|
||||
Pressing the `F5` key allows debugging execution.
|
||||
|
||||
---
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
BIN
libraries/M5GFX/examples/PlatformIO_SDL/img_00.png
Normal file
BIN
libraries/M5GFX/examples/PlatformIO_SDL/img_00.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 607 KiB |
BIN
libraries/M5GFX/examples/PlatformIO_SDL/img_01.png
Normal file
BIN
libraries/M5GFX/examples/PlatformIO_SDL/img_01.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 556 KiB |
BIN
libraries/M5GFX/examples/PlatformIO_SDL/img_02.png
Normal file
BIN
libraries/M5GFX/examples/PlatformIO_SDL/img_02.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 202 KiB |
BIN
libraries/M5GFX/examples/PlatformIO_SDL/img_03.png
Normal file
BIN
libraries/M5GFX/examples/PlatformIO_SDL/img_03.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 144 KiB |
BIN
libraries/M5GFX/examples/PlatformIO_SDL/img_pio.png
Normal file
BIN
libraries/M5GFX/examples/PlatformIO_SDL/img_pio.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 961 B |
66
libraries/M5GFX/examples/PlatformIO_SDL/platformio.ini
Normal file
66
libraries/M5GFX/examples/PlatformIO_SDL/platformio.ini
Normal file
|
|
@ -0,0 +1,66 @@
|
|||
; PlatformIO Project Configuration File
|
||||
;
|
||||
; Build options: build flags, source filter
|
||||
; Upload options: custom upload port, speed and extra flags
|
||||
; Library options: dependencies, extra library storages
|
||||
; Advanced options: extra scripting
|
||||
;
|
||||
; Please visit documentation for the other options and examples
|
||||
; https://docs.platformio.org/page/projectconf.html
|
||||
|
||||
[platformio]
|
||||
default_envs = native
|
||||
|
||||
[env]
|
||||
lib_extra_dirs=../../../
|
||||
|
||||
[env:native]
|
||||
platform = native
|
||||
build_type = debug
|
||||
build_flags = -O0 -xc++ -std=c++14 -lSDL2
|
||||
-I"/usr/local/include/SDL2" ; for intel mac homebrew SDL2
|
||||
-L"/usr/local/lib" ; for intel mac homebrew SDL2
|
||||
-DM5GFX_SHOW_FRAME ; Display frame image.
|
||||
-DM5GFX_BACK_COLOR=0x222222u ; Color outside the frame image
|
||||
|
||||
[env:native_arm]
|
||||
platform = native
|
||||
build_type = debug
|
||||
build_flags = -O0 -xc++ -std=c++14 -lSDL2
|
||||
-arch arm64 ; for arm mac
|
||||
-I"${sysenv.HOMEBREW_PREFIX}/include/SDL2" ; for arm mac homebrew SDL2
|
||||
-L"${sysenv.HOMEBREW_PREFIX}/lib" ; for arm mac homebrew SDL2
|
||||
-DM5GFX_SHOW_FRAME ; Display frame image.
|
||||
-DM5GFX_BACK_COLOR=0x222222u ; Color outside the frame image
|
||||
|
||||
[env:native_StickCPlus]
|
||||
extends = native
|
||||
platform = native
|
||||
build_flags = ${env:native.build_flags}
|
||||
-DM5GFX_SCALE=2
|
||||
-DM5GFX_ROTATION=0
|
||||
-DM5GFX_BOARD=board_M5StickCPlus
|
||||
|
||||
[env:native_Paper]
|
||||
extends = native
|
||||
platform = native
|
||||
build_flags = ${env:native.build_flags}
|
||||
-DM5GFX_ROTATION=0
|
||||
-DM5GFX_BOARD=board_M5Paper
|
||||
|
||||
[esp32_base]
|
||||
build_type = debug
|
||||
platform = espressif32
|
||||
board = esp32dev
|
||||
upload_speed = 1500000
|
||||
monitor_speed = 115200
|
||||
monitor_filters = esp32_exception_decoder
|
||||
|
||||
[env:esp32_arduino]
|
||||
extends = esp32_base
|
||||
framework = arduino
|
||||
|
||||
[env:esp32_idf]
|
||||
extends = esp32_base
|
||||
framework = espidf
|
||||
|
||||
25
libraries/M5GFX/examples/PlatformIO_SDL/src/sdl_main.cpp
Normal file
25
libraries/M5GFX/examples/PlatformIO_SDL/src/sdl_main.cpp
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
#include <M5GFX.h>
|
||||
#if defined ( SDL_h_ )
|
||||
|
||||
void setup(void);
|
||||
void loop(void);
|
||||
|
||||
__attribute__((weak))
|
||||
int user_func(bool* running)
|
||||
{
|
||||
setup();
|
||||
do
|
||||
{
|
||||
loop();
|
||||
} while (*running);
|
||||
return 0;
|
||||
}
|
||||
|
||||
int main(int, char**)
|
||||
{
|
||||
// The second argument is effective for step execution with breakpoints.
|
||||
// You can specify the time in milliseconds to perform slow execution that ensures screen updates.
|
||||
return lgfx::Panel_sdl::main(user_func, 128);
|
||||
}
|
||||
|
||||
#endif
|
||||
29
libraries/M5GFX/examples/PlatformIO_SDL/src/user_code.cpp
Normal file
29
libraries/M5GFX/examples/PlatformIO_SDL/src/user_code.cpp
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
|
||||
#include <M5GFX.h>
|
||||
|
||||
static M5GFX gfx;
|
||||
|
||||
void setup(void)
|
||||
{
|
||||
gfx.init();
|
||||
}
|
||||
|
||||
void loop(void)
|
||||
{
|
||||
gfx.fillCircle(rand()%gfx.width(), rand()%gfx.height(), 16, rand());
|
||||
}
|
||||
|
||||
|
||||
|
||||
#if defined ( ESP_PLATFORM ) && !defined ( ARDUINO )
|
||||
extern "C" {
|
||||
int app_main(int, char**)
|
||||
{
|
||||
setup();
|
||||
for (;;) {
|
||||
loop();
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
Loading…
Add table
Add a link
Reference in a new issue