Compare commits

..

No commits in common. "master" and "91247717a07392197a71df8f6740a62562670fca" have entirely different histories.

190 changed files with 18463 additions and 21194 deletions

5
.gitignore vendored
View file

@ -3,7 +3,6 @@ build
.dep .dep
.cproject .cproject
.project .project
.vscode
*.sublime* *.sublime*
*.stackdump *.stackdump
*.lst *.lst
@ -16,7 +15,3 @@ docs/html
docs/html.zip docs/html.zip
docs/*.db docs/*.db
docs/*.tmp docs/*.tmp
# CLion
.idea/
cmake-build-*/

View file

@ -1773,7 +1773,7 @@ COMPACT_LATEX = NO
# The default value is: a4. # The default value is: a4.
# This tag requires that the tag GENERATE_LATEX is set to YES. # This tag requires that the tag GENERATE_LATEX is set to YES.
PAPER_TYPE = a4 PAPER_TYPE = a4wide
# The EXTRA_PACKAGES tag can be used to specify one or more LaTeX package names # The EXTRA_PACKAGES tag can be used to specify one or more LaTeX package names
# that should be included in the LaTeX output. The package can be specified just # that should be included in the LaTeX output. The package can be specified just

View file

@ -1,92 +0,0 @@
#pragma once
#include <stm32f4xx_hal.h>
#include <string.h>
// The command byte to put on the front of each page line
#define SSD1312_PAGE_PREFIX 0x40 // Co = 0, D/C = 1
static I2C_HandleTypeDef i2cHandle;
static GFXINLINE void init_board(GDisplay *g)
{
(void) g;
// GPIO
{
GPIO_InitTypeDef GPIO_InitStruct = {0};
__HAL_RCC_GPIOB_CLK_ENABLE();
// I2C SCL
GPIO_InitStruct.Pin = GPIO_PIN_8;
GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
GPIO_InitStruct.Pull = GPIO_PULLUP;
GPIO_InitStruct.Speed = GPIO_SPEED_FAST;
GPIO_InitStruct.Alternate = GPIO_AF4_I2C1;
HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
// I2C SDA
GPIO_InitStruct.Pin = GPIO_PIN_9;
GPIO_InitStruct.Mode = GPIO_MODE_AF_OD;
GPIO_InitStruct.Pull = GPIO_PULLUP;
GPIO_InitStruct.Speed = GPIO_SPEED_FAST;
GPIO_InitStruct.Alternate = GPIO_AF4_I2C1;
HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
}
// I2C1
{
__HAL_RCC_I2C1_CLK_ENABLE();
i2cHandle.Instance = I2C1;
i2cHandle.Init.AddressingMode = I2C_ADDRESSINGMODE_7BIT;
i2cHandle.Init.ClockSpeed = 400000;
i2cHandle.Init.DualAddressMode = I2C_DUALADDRESS_DISABLE;
i2cHandle.Init.DutyCycle = I2C_DUTYCYCLE_2;
i2cHandle.Init.GeneralCallMode = I2C_GENERALCALL_DISABLE;
i2cHandle.Init.NoStretchMode = I2C_NOSTRETCH_DISABLE;
if (HAL_I2C_Init(&i2cHandle) != HAL_OK)
gfxHalt("I2C HAL init error");
}
}
static GFXINLINE void post_init_board(GDisplay *g)
{
(void) g;
}
static GFXINLINE void setpin_reset(GDisplay *g, gBool state)
{
(void) g;
(void) state;
}
static GFXINLINE void acquire_bus(GDisplay *g)
{
(void) g;
}
static GFXINLINE void release_bus(GDisplay *g)
{
(void) g;
}
static GFXINLINE void write_cmd(GDisplay *g, gU8 *data, gU16 length)
{
(void) g;
gU8 buf[4]; // length is always <= 3
buf[0] = 0x00;
memcpy(buf+1, data, length);
HAL_I2C_Master_Transmit(&i2cHandle, (0x3c << 1), buf, length+1, 10000);
}
static GFXINLINE void write_data(GDisplay *g, gU8 *data, gU16 length)
{
(void) g;
HAL_I2C_Master_Transmit(&i2cHandle, (0x3c << 1), data, length, 10000);
}

View file

@ -1,6 +0,0 @@
GFXINC +=
GFXSRC +=
GFXDEFS += -DGFX_USE_OS_FREEBSD=GFXON
GFXLIBS += rt
include $(GFXLIB)/drivers/multiple/SDL/driver.mk

View file

@ -1,52 +0,0 @@
# Possible Targets: all clean Debug cleanDebug Release cleanRelease
##############################################################################################
# Settings
#
# General settings
# See $(GFXLIB)/tools/gmake_scripts/readme.txt for the list of variables
OPT_OS = freebsd
OPT_LINK_OPTIMIZE = yes
# Change this next setting (or add the explicit compiler flags) if you are not compiling for x86 linux
OPT_CPU = x64
# uGFX settings
# See $(GFXLIB)/tools/gmake_scripts/library_ugfx.mk for the list of variables
GFXLIB = ../uGFX
GFXBOARD = FreeBSD-SDL
GFXDEMO = modules/gdisp/basics
# Linux settings
# See $(GFXLIB)/tools/gmake_scripts/os_linux.mk for the list of variables
##############################################################################################
# Set these for your project
#
ARCH =
XCC = gcc10
XAS = gcc10
XLD = gcc10
SRCFLAGS = -ggdb -O0
CFLAGS = `sdl2-config --libs --cflags`
CXXFLAGS =
ASFLAGS =
LDFLAGS =
SRC =
OBJS =
DEFS =
LIBS =
INCPATH =
LIBPATH =
##############################################################################################
# These should be at the end
#
include $(GFXLIB)/tools/gmake_scripts/library_ugfx.mk
include $(GFXLIB)/tools/gmake_scripts/os_$(OPT_OS).mk
include $(GFXLIB)/tools/gmake_scripts/compiler_gcc.mk
# *** EOF ***

View file

@ -1,22 +0,0 @@
This directory contains the interface for FreeBSD using SDL.
As of today, this is simply a wrapper around the Linux drivers/support.
On this board uGFX currently supports:
- GDISP via the SDL driver
- GINPUT-touch via the SDL driver
- GINPUT-keyboard via the SDL driver
The folowing packages are required to run uGFX using this driver on
a 64-bit FreeBSD system using SDL:
+ devel/gcc10
+ devel/sdl2
The following should be added to the CFLAGS of the target makefile:
CFLAGS = `sdl2-config --libs --cflags`
There is an example Makefile and project in the examples directory.

View file

@ -23,6 +23,10 @@ static const SPIConfig spi_cfg = {
((1 << 3) & SPI_CR1_BR) | SPI_CR1_SSM | SPI_CR1_SSI | SPI_CR1_MSTR ((1 << 3) & SPI_CR1_BR) | SPI_CR1_SSM | SPI_CR1_SSI | SPI_CR1_MSTR
}; };
#define LTDC_USE_DMA2D GFXON
#define LTDC_USE_2ND_LAYER GFXON
#define LTDC_DMA_CACHE_FLUSH GFXOFF // This will be turned on automatically on certain systems/platforms
static const ltdcConfig driverCfg = { static const ltdcConfig driverCfg = {
240, 320, 240, 320,
10, 2, 10, 2,
@ -45,7 +49,7 @@ static const ltdcConfig driverCfg = {
0xFF, // alpha 0xFF, // alpha
LTDC_LEF_ENABLE // flags LTDC_LEF_ENABLE // flags
}, },
#if STM32LTDC_USE_LAYER2 || STM32LTDC_USE_DOUBLEBUFFERING #if LTDC_USE_2ND_LAYER
{ // Foreground layer config (if turned on) { // Foreground layer config (if turned on)
(LLDCOLOR_TYPE *)(SDRAM_BANK_ADDR+(240 * 320 * LTDC_PIXELBYTES)), // Frame buffer address (LLDCOLOR_TYPE *)(SDRAM_BANK_ADDR+(240 * 320 * LTDC_PIXELBYTES)), // Frame buffer address
240, 320, // width, height 240, 320, // width, height

View file

@ -19,6 +19,10 @@
#include "stm32f4xx_hal.h" #include "stm32f4xx_hal.h"
#include "stm324x9i_eval_sdram.h" #include "stm324x9i_eval_sdram.h"
#define LTDC_USE_DMA2D GFXON
#define LTDC_USE_2ND_LAYER GFXON
#define LTDC_DMA_CACHE_FLUSH GFXOFF // This will be turned on automatically on certain systems/platforms
// Panel parameters // Panel parameters
// This panel is a AMPIRE640480 panel. // This panel is a AMPIRE640480 panel.
@ -46,7 +50,7 @@ static const ltdcConfig driverCfg = {
LTDC_LEF_ENABLE // Layer configuration flags LTDC_LEF_ENABLE // Layer configuration flags
}, },
#if STM32LTDC_USE_LAYER2 || STM32LTDC_USE_DOUBLEBUFFERING #if LTDC_USE_2ND_LAYER
{ // Foreground layer config (if turned on) { // Foreground layer config (if turned on)
(LLDCOLOR_TYPE *)(SDRAM_DEVICE_ADDR+(640 * 480 * LTDC_PIXELBYTES)), // Frame buffer address (LLDCOLOR_TYPE *)(SDRAM_DEVICE_ADDR+(640 * 480 * LTDC_PIXELBYTES)), // Frame buffer address
640, 480, // Width, Height (pixels) 640, 480, // Width, Height (pixels)

View file

@ -8,6 +8,10 @@
#ifndef _GDISP_LLD_BOARD_H #ifndef _GDISP_LLD_BOARD_H
#define _GDISP_LLD_BOARD_H #define _GDISP_LLD_BOARD_H
#define LTDC_USE_DMA2D GFXON
#define LTDC_USE_2ND_LAYER GFXON
#define LTDC_DMA_CACHE_FLUSH GFXOFF // This will be turned on automatically on certain systems/platforms
/* Avoid naming collisions with CubeHAL. */ /* Avoid naming collisions with CubeHAL. */
#if GFX_COMPAT_V2 && GFX_COMPAT_OLDCOLORS #if GFX_COMPAT_V2 && GFX_COMPAT_OLDCOLORS
#undef Red #undef Red

View file

@ -36,6 +36,10 @@
#define AFRH AFR[1] #define AFRH AFR[1]
#endif #endif
#define LTDC_USE_DMA2D GFXON
#define LTDC_USE_2ND_LAYER GFXON
#define LTDC_DMA_CACHE_FLUSH GFXOFF // This will be turned on automatically on certain systems/platforms
static const ltdcConfig driverCfg = { static const ltdcConfig driverCfg = {
480, 272, // Width, Height (pixels) 480, 272, // Width, Height (pixels)
41, 10, // Horizontal, Vertical sync (pixels) 41, 10, // Horizontal, Vertical sync (pixels)
@ -60,7 +64,7 @@ static const ltdcConfig driverCfg = {
LTDC_LEF_ENABLE // Layer configuration flags LTDC_LEF_ENABLE // Layer configuration flags
}, },
#if STM32LTDC_USE_LAYER2 || STM32LTDC_USE_DOUBLEBUFFERING #if LTDC_USE_2ND_LAYER
{ // Foreground layer config (if turned on) { // Foreground layer config (if turned on)
(LLDCOLOR_TYPE *)(SDRAM_DEVICE_ADDR+(480 * 272 * LTDC_PIXELBYTES)), // Frame buffer address (LLDCOLOR_TYPE *)(SDRAM_DEVICE_ADDR+(480 * 272 * LTDC_PIXELBYTES)), // Frame buffer address
480, 272, // Width, Height (pixels) 480, 272, // Width, Height (pixels)
@ -404,7 +408,7 @@ static GFXINLINE void init_ltdc_clock(void)
RCC->APB2ENR |= RCC_APB2ENR_LTDCEN; RCC->APB2ENR |= RCC_APB2ENR_LTDCEN;
} }
#if STM32LTDC_USE_DMA2D #if LTDC_USE_DMA2D
static GFXINLINE void init_dma2d_clock(void) static GFXINLINE void init_dma2d_clock(void)
{ {
// Enable DMA2D clock // Enable DMA2D clock

View file

@ -3,38 +3,12 @@
***************************************************************************** *****************************************************************************
*** After Release 2.9 *** *** After Release 2.9 ***
CHANGE: Added type gImage to replace V2.x gdispImage. CHANGE: Added type gImage to replace V2.x gdispImage
FIX: Fixed GWIN console widget scroll. FIX: Fixed GWIN console widget scroll
FIX: A warning and adjustment is made if GDISP_IMAGE_BMP_BLIT_BUFFER_SIZE is less than 40 bytes. FIX: A warning and adjusted is made if GDISP_IMAGE_BMP_BLIT_BUFFER_SIZE is less than 40 bytes.
FIX: Prevent compiler warnings on duplicate const specifiers. FIX: Prevent compiler warnings on duplicate const specifiers.
FEATURE: Added support for ChibiOS 6.x kernel. FEATURE: Added support for ChibiOS 6.x kernel.
FEATURE: Added support for ChibiOS 7.x kernel. CHANGE: Refactor STM32LTDC driver to outsource hardware specifics such as clock setup to the board file.
CHANGE: STM32LTDC driver: Refactor to outsource clock setup for LTDC & DMA2D peripherals to the board file.
CHANGE: STM32LTDC driver: Remove obsolete LTDC_NO_CLOCK_INIT macro as this clock setup is now outsourced to the board file.
CHANGE: STM32LTDC driver: Automatically enable DMA cache flushing on STM32H7 platforms.
CHANGE: STM32LTDC driver: Rename LTDC_USE_DMA2D to STM32LTDC_USE_DMA2D.
CHANGE: STM32LTDC driver: Rename ALLOW_2ND_LAYER to STM32LTDC_USE_LAYER2.
CHANGE: STM32LTDC driver: Rename LTDC_DMA_CACHE_FLUSH to STM32LTDC_DMA_CACHE_FLUSH.
CHANGE: STM32LTDC driver: Rename GDISP_LTDC_USE_RGB565 to STM32LTDC_USE_RGB565.
FEATURE: STM32LTDC driver: Support double buffering. This introduces STM32LTDC_USE_DOUBLEBUFFERING.
FIX: STM32LTDC driver: Fix bug in gdisp_lld_blit_area() which affected blits with source coordinates other than (0, 0).
FIX: Improve /demos/benchmarks/rectangles.
FIX: Win32 driver: Fix buffer position calculation in gdisp_lld_blit_area().
FIX: Win32 driver: Fix memory leak / invalid pointer to free() when re-calculating buffer position in a specific situation.
FIX: Prevent const qualifier being discarded in vfnprintg().
FIX: Fix missing return value in gfxQueueFSyncPut().
FIX: Fix missing return value in gfxQueueFSyncPush().
FIX: Fix missing return value in gfxQueueFSyncInsert().
FEATURE: Adding support for FreeBSD.
FIX: Fix incorrect calls to mmap() and sem_open() in SDL2 driver (lax operating systems such as Linux & MacOS were silently tolerating these).
FIX: Minor code improvements
FEATURE: Add cmake support
FIX: Add missing driver.mk to SSD1322 driver.
FEATURE: LGDP4532 driver improvements.
FIX: Win32 Keyboard driver now retrieves lock key states on window activate
FEATURE: Add SSD1312 GDISP driver
FEATURE: Add CH1115 GDISP driver
FIX: Fix multiple redraws of GWIN windows (thanks to Sergey Kushnir)
*** Release 2.9 *** *** Release 2.9 ***

View file

@ -1,78 +0,0 @@
# Define UGFX_ROOT
set(UGFX_ROOT ${CMAKE_CURRENT_LIST_DIR}/..)
# Ensure that UGFX_ROOT is set
if(NOT UGFX_ROOT)
message(FATAL_ERROR "No UGFX_ROOT specified")
endif()
# Assemble list of components
list(APPEND ugfx_COMPONENTS_BUILTIN
gadc
gaudio
gdisp
gdriver
gevent
gfile
ginput
gmisc
gos
gqueue
gtimer
gtrans
gwin
)
# Core sources
list(APPEND ugfx_SOURCES
${UGFX_ROOT}/src/gfx.c
)
# Core include directories
list(APPEND ugfx_INCLUDE_DIRS
${UGFX_ROOT}
${UGFX_ROOT}/src
)
# Include each built-in component
foreach(component ${ugfx_COMPONENTS_BUILTIN})
include(${UGFX_ROOT}/src/${component}/${component}.cmake)
endforeach()
# Include each component
foreach(component ${ugfx_FIND_COMPONENTS})
include(${UGFX_ROOT}/${component}/driver.cmake)
endforeach()
# Remove duplicates from non-cached variables
list(REMOVE_DUPLICATES ugfx_SOURCES)
list(REMOVE_DUPLICATES ugfx_INCLUDE_DIRS)
# Outsource heavy-lifting to cmake
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(ugfx DEFAULT_MSG UGFX_ROOT ugfx_SOURCES ugfx_INCLUDE_DIRS)
# Create the target
if(NOT TARGET ugfx)
add_library(ugfx INTERFACE IMPORTED)
endif()
target_include_directories(
ugfx
INTERFACE
${ugfx_INCLUDE_DIRS}
)
target_sources(
ugfx
INTERFACE
${ugfx_SOURCES}
)
target_compile_definitions(
ugfx
INTERFACE
${ugfx_DEFS}
)
target_link_libraries(
ugfx
INTERFACE
${ugfx_LIBS}
)

View file

@ -48,10 +48,5 @@
/* Builtin Fonts */ /* Builtin Fonts */
#define GDISP_INCLUDE_FONT_UI2 GFXON #define GDISP_INCLUDE_FONT_UI2 GFXON
/* GFILE */
#define GFX_USE_GFILE GFXON
#define GFILE_NEED_PRINTG GFXON
#define GFILE_NEED_STRINGS GFXON
#endif /* _GFXCONF_H */ #endif /* _GFXCONF_H */

View file

@ -1,6 +1,6 @@
/* /*
* Copyright (c) 2012 - 2021, Joel Bodenmann aka Tectu <joel@ugfx.io> * Copyright (c) 2012, 2013, Joel Bodenmann aka Tectu <joel@unormal.org>
* Copyright (c) 2012 - 2021, Andrew Hannam aka inmarket <inmarket@ugfx.io> * Copyright (c) 2012, 2013, Andrew Hannam aka inmarket
* *
* All rights reserved. * All rights reserved.
* *
@ -31,33 +31,87 @@
#include "string.h" #include "string.h"
#include "gfx.h" #include "gfx.h"
#define RESULT_STR_LENGTH 32 #define SCB_DEMCR (*(volatile unsigned *)0xE000EDFC)
#define CPU_RESET_CYCLECOUNTER do { SCB_DEMCR = SCB_DEMCR | 0x01000000; \
DWT_CYCCNT = 0; \
DWT_CTRL = DWT_CTRL | 1 ; } while(0)
void benchmark(void) static int uitoa(unsigned int value, char * buf, int max) {
{ int n = 0;
int i = 0;
unsigned int tmp = 0;
if (!buf)
return -3;
if (2 > max)
return -4;
i=1;
tmp = value;
if (0 > tmp) {
tmp *= -1;
i++;
}
for (;;) {
tmp /= 10;
if (0 >= tmp)
break;
i++;
}
if (i >= max) {
buf[0] = '?';
buf[1] = 0x0;
return 2;
}
n = i;
tmp = value;
if (0 > tmp) {
tmp *= -1;
}
buf[i--] = 0x0;
for (;;) {
buf[i--] = (tmp % 10) + '0';
tmp /= 10;
if (0 >= tmp) {
break;
}
}
if (-1 != i) {
buf[i--] = '-';
}
return n;
}
void benchmark(void) {
gU32 i, pixels, ms, pps;
char pps_str[25];
gCoord height, width, rx, ry, rcx, rcy; gCoord height, width, rx, ry, rcx, rcy;
gColor random_color; gColor random_color;
gCoord fontHeight;
gFont font; gFont font;
// Prepare resources gdispSetOrientation(gOrientation90);
width = gdispGetWidth(); width = gdispGetWidth();
height = gdispGetHeight(); height = gdispGetHeight();
font = gdispOpenFont("*"); font = gdispOpenFont("UI2 Double");
fontHeight = gdispGetFontMetric(font, gFontHeight);
// Show intro message
gdispDrawStringBox(0, 0, width, 30, "uGFX - Benchmark", font, GFX_WHITE, gJustifyCenter); gdispDrawStringBox(0, 0, width, 30, "uGFX - Benchmark", font, GFX_WHITE, gJustifyCenter);
font = gdispOpenFont("UI2");
gdispDrawStringBox(0, height/2, width, 30, "5000 random rectangles", font, GFX_WHITE, gJustifyCenter); gdispDrawStringBox(0, height/2, width, 30, "5000 random rectangles", font, GFX_WHITE, gJustifyCenter);
gfxSleepMilliseconds(3000); gfxSleepMilliseconds(3000);
// Seed RNG /* seed for the rand() */
srand(0); srand(DWT_CYCCNT);
pixels = 0;
// Render rectangles and count ticks & pixels CPU_RESET_CYCLECOUNTER;
gU64 pixels = 0;
const gTicks ticksStart = gfxSystemTicks(); for (i = 0; i < 5000; i++) {
for (gU32 i = 0; i < 5000; i++) {
random_color = (rand() % 65535); random_color = (rand() % 65535);
rx = (rand() % (width-10)); rx = (rand() % (width-10));
ry = (rand() % (height-10)); ry = (rand() % (height-10));
@ -67,33 +121,19 @@ void benchmark(void)
gdispFillArea(rx, ry, rcx, rcy, random_color); gdispFillArea(rx, ry, rcx, rcy, random_color);
pixels += (rcx+1)*(rcy+1); pixels += (rcx+1)*(rcy+1);
} }
const gTicks ticksEnd = gfxSystemTicks();
// Calculate result ms = DWT_CYCCNT / 168000;
char str_ticks[RESULT_STR_LENGTH]; pps = (float)pixels/((float)ms/1000.0f);
char str_seconds[RESULT_STR_LENGTH];
char str_pps[RESULT_STR_LENGTH];
{
// Figure out how many ticks are 1 second
const gTicks ticksPerSecond = gfxMillisecondsToTicks(1000);
const gTicks ticksElapsed = ticksEnd - ticksStart; memset (pps_str, 0, sizeof(pps_str));
const float secondsElapsed = (float)ticksElapsed / (float)ticksPerSecond; uitoa(pps, pps_str, sizeof(pps_str));
gU32 pps = (float)pixels / secondsElapsed; strcat(pps_str, " Pixels/s");
// Produce strings font = gdispOpenFont("UI2 Double");
memset(str_ticks, 0, RESULT_STR_LENGTH);
memset(str_seconds, 0, RESULT_STR_LENGTH);
memset(str_pps, 0, RESULT_STR_LENGTH);
snprintg(str_ticks, RESULT_STR_LENGTH, "%d ticks", ticksElapsed);
snprintg(str_pps, RESULT_STR_LENGTH, "%d pixels/s", pps);
}
// Show result
gdispClear(GFX_BLACK); gdispClear(GFX_BLACK);
gdispDrawStringBox(0, 0, width, 30, "uGFX - Benchmark", font, GFX_WHITE, gJustifyCenter); gdispDrawStringBox(0, 0, width, 30, "ChibiOS/GFX - Benchmark", font, GFX_WHITE, gJustifyCenter);
gdispDrawStringBox(0, height/2+0*(fontHeight+10), width, 30, str_ticks, font, GFX_WHITE, gJustifyCenter); gdispDrawStringBox(0, height/2, width, 30, pps_str, font, GFX_WHITE, gJustifyCenter);
gdispDrawStringBox(0, height/2+1*(fontHeight+10), width, 30, str_pps, font, GFX_WHITE, gJustifyCenter); //gdispDrawString(20, height/2, pps_str, font, GFX_WHITE);
} }
int main(void) { int main(void) {
@ -101,8 +141,9 @@ int main(void) {
benchmark(); benchmark();
while (gTrue) while(1) {
gfxSleepMilliseconds(500); gfxSleepMilliseconds(500);
}
return 0; return 0;
} }

View file

@ -42,6 +42,7 @@
#define GDISP_NEED_VALIDATION GFXON #define GDISP_NEED_VALIDATION GFXON
#define GDISP_NEED_CLIP GFXON #define GDISP_NEED_CLIP GFXON
#define GDISP_NEED_TEXT GFXON #define GDISP_NEED_TEXT GFXON
#define GDISP_NEED_ANTIALIAS GFXON
#define GDISP_NEED_UTF8 GFXON #define GDISP_NEED_UTF8 GFXON
#define GDISP_NEED_TEXT_KERNING GFXON #define GDISP_NEED_TEXT_KERNING GFXON

View file

@ -62,7 +62,7 @@ static const char* FrenchStrings[] = {
}; };
static const transTable FrenchTranslation = { sizeof(FrenchStrings)/sizeof(FrenchStrings[0]), FrenchStrings }; static const transTable FrenchTranslation = { sizeof(FrenchStrings)/sizeof(FrenchStrings[0]), FrenchStrings };
void updateText(void) void updateText()
{ {
gCoord width = 400; gCoord width = 400;
gCoord height = 30; gCoord height = 30;

View file

@ -1,59 +0,0 @@
/*
* This file is subject to the terms of the GFX License. If a copy of
* the license was not distributed with this file, you can obtain one at:
*
* http://ugfx.io/license.html
*/
#pragma once
/**
* The command byte to put in front of each page line.
*
* If this is defined, each page line is prefixed with the specified value in the locally
* maintained framebuffer.
*
* This can be omitted and handled inside of write_data() manually instead.
*/
#define CH1115_PAGE_PREFIX 0x40 // Co = 0, D/C = 1
static GFXINLINE void init_board(GDisplay *g)
{
(void) g;
}
static GFXINLINE void post_init_board(GDisplay *g)
{
(void) g;
}
static GFXINLINE void setpin_reset(GDisplay *g, gBool state)
{
(void) g;
(void) state;
}
static GFXINLINE void acquire_bus(GDisplay *g)
{
(void) g;
}
static GFXINLINE void release_bus(GDisplay *g)
{
(void) g;
}
static GFXINLINE void write_cmd(GDisplay *g, gU8 *data, gU16 length)
{
(void) g;
(void) data;
(void) length;
}
static GFXINLINE void write_data(GDisplay *g, gU8 *data, gU16 length)
{
(void) g;
(void) data;
(void) length;
}

View file

@ -1,8 +0,0 @@
list(APPEND ugfx_INCLUDE_DIRS
${CMAKE_CURRENT_LIST_DIR}
)
list(APPEND ugfx_SOURCES
${CMAKE_CURRENT_LIST_DIR}/gdisp_lld_CH1115.c
)

View file

@ -1,3 +0,0 @@
GFXINC += $(GFXLIB)/drivers/gdisp/CH1115
GFXSRC += $(GFXLIB)/drivers/gdisp/CH1115/gdisp_lld_CH1115.c

View file

@ -1,391 +0,0 @@
/*
* This file is subject to the terms of the GFX License. If a copy of
* the license was not distributed with this file, you can obtain one at:
*
* http://ugfx.io/license.html
*/
#include "gfx.h"
#if GFX_USE_GDISP
#define GDISP_DRIVER_VMT GDISPVMT_CH1115
#include "gdisp_lld_config.h"
#include "../../../src/gdisp/gdisp_driver.h"
#include "board_CH1115.h"
/*===========================================================================*/
/* Driver local definitions. */
/*===========================================================================*/
#ifndef GDISP_SCREEN_HEIGHT
#define GDISP_SCREEN_HEIGHT 32 // This controller should also support 64 (untested)
#endif
#ifndef GDISP_SCREEN_WIDTH
#define GDISP_SCREEN_WIDTH 128
#endif
#ifndef GDISP_INITIAL_CONTRAST
#define GDISP_INITIAL_CONTRAST 100
#endif
#ifndef GDISP_INITIAL_BACKLIGHT
#define GDISP_INITIAL_BACKLIGHT 100
#endif
#ifdef CH1115_PAGE_PREFIX
#define CH1115_PAGE_WIDTH (GDISP_SCREEN_WIDTH+1)
#define CH1115_PAGE_OFFSET 1
#else
#define CH1115_PAGE_WIDTH GDISP_SCREEN_WIDTH
#define CH1115_PAGE_OFFSET 0
#endif
#define GDISP_FLG_NEEDFLUSH (GDISP_FLG_DRIVER<<0)
/*===========================================================================*/
/* Driver local functions. */
/*===========================================================================*/
// Some common routines and macros
#define RAM(g) ((gU8 *)g->priv)
#define xyaddr(x, y) (CH1115_PAGE_OFFSET + (x) + ((y)>>3)*CH1115_PAGE_WIDTH)
#define xybit(y) (1<<((y)&7))
#define write_cmd_1(g, a) { gU8 cmd[1]; cmd[0] = a; write_cmd(g, cmd, 1); }
#define write_cmd_2(g, a, b) { gU8 cmd[2]; cmd[0] = a; cmd[1] = b; write_cmd(g, cmd, 2); }
/*===========================================================================*/
/* Driver exported functions. */
/*===========================================================================*/
/**
* As this controller can't update on a pixel boundary we need to maintain the
* the entire display surface in memory so that we can do the necessary bit
* operations. Fortunately it is a small monochrome display.
* 64 * 128 / 8 = 1024 bytes.
*/
LLDSPEC gBool gdisp_lld_init(GDisplay *g)
{
// The private area is the display surface.
g->priv = gfxAlloc(GDISP_SCREEN_HEIGHT/8 * CH1115_PAGE_WIDTH);
if (!g->priv)
return gFalse;
// Fill in the prefix command byte on each page line of the display buffer
// We can do this during initialisation as we're being careful that this byte is never overwritten.
#ifdef CH1115_PAGE_PREFIX
for (unsigned i = 0; i < GDISP_SCREEN_HEIGHT/8 * CH1115_PAGE_WIDTH; i += CH1115_PAGE_WIDTH)
RAM(g)[i] = CH1115_PAGE_PREFIX;
#endif
// Initialise the board interface
init_board(g);
// Hardware reset
setpin_reset(g, gTrue);
gfxSleepMilliseconds(20);
setpin_reset(g, gFalse);
gfxSleepMilliseconds(200);
acquire_bus(g);
// Configuration
// This might require display module vendor specific changes
{
// Display off
write_cmd_1(g, 0xAE);
// Clock divider
write_cmd_2(g, 0xD5, 0x80);
// Multiplex ratio
write_cmd_2(g, 0xA8, 0x1F);
// Display offset
write_cmd_2(g, 0xD3, 0x30);
// Display start line
write_cmd_1(g, 0x40);
// Charge pump
write_cmd_2(g, 0x8D, 0x72); // 0x10 if Vcc externally supplied
// Segment re-map
write_cmd_1(g, 0xA1);
// COM output scan direction
write_cmd_1(g, 0xC0);
// COM pin hardware configuration
write_cmd_2(g, 0xDA, 0x10);
// Set internal/external current reference
write_cmd_2(g, 0xAD, 0x50);
// Set contract
write_cmd_2(g, 0x81, 0x17);
// Set pre-charge period
write_cmd_2(g, 0xD9, 0xF1);
// Set VCOMH select level
write_cmd_2(g, 0xDB, 0x30);
// Set entire display on/off
write_cmd_1(g, 0xA4);
// Set normal/inverse display
write_cmd_1(g, 0xA6);
// Page addressing mode
write_cmd_2(g, 0x20, 0x02);
// Display on
write_cmd_1(g, 0xAF);
}
release_bus(g);
// Finish Init
post_init_board(g);
// Initialise the GDISP structure
g->g.Width = GDISP_SCREEN_WIDTH;
g->g.Height = GDISP_SCREEN_HEIGHT;
g->g.Orientation = gOrientation0;
g->g.Powermode = gPowerOn;
g->g.Backlight = GDISP_INITIAL_BACKLIGHT;
g->g.Contrast = GDISP_INITIAL_CONTRAST;
return gTrue;
}
#if GDISP_HARDWARE_FLUSH
LLDSPEC void gdisp_lld_flush(GDisplay *g)
{
gU8 * ram;
unsigned pages;
// Only flush if necessary
if (!(g->flags & GDISP_FLG_NEEDFLUSH))
return;
ram = RAM(g);
pages = GDISP_SCREEN_HEIGHT/8;
acquire_bus(g);
write_cmd_1(g, 0x40 | 0);
while (pages--) {
write_cmd_1(g, 0xB0 + (((GDISP_SCREEN_HEIGHT/8)-1)-pages));
write_cmd_1(g, 0x00);
write_cmd_1(g, 0x10);
write_data(g, ram, CH1115_PAGE_WIDTH);
ram += CH1115_PAGE_WIDTH;
}
release_bus(g);
g->flags &= ~GDISP_FLG_NEEDFLUSH;
}
#endif
#if GDISP_HARDWARE_DRAWPIXEL
LLDSPEC void gdisp_lld_draw_pixel(GDisplay *g)
{
gCoord x, y;
switch(g->g.Orientation) {
default:
case gOrientation0:
x = g->p.x;
y = g->p.y;
break;
case gOrientation90:
x = g->p.y;
y = GDISP_SCREEN_HEIGHT-1 - g->p.x;
break;
case gOrientation180:
x = GDISP_SCREEN_WIDTH-1 - g->p.x;
y = GDISP_SCREEN_HEIGHT-1 - g->p.y;
break;
case gOrientation270:
x = GDISP_SCREEN_WIDTH-1 - g->p.y;
y = g->p.x;
break;
}
if (gdispColor2Native(g->p.color) != gdispColor2Native(GFX_BLACK))
RAM(g)[xyaddr(x, y)] |= xybit(y);
else
RAM(g)[xyaddr(x, y)] &= ~xybit(y);
g->flags |= GDISP_FLG_NEEDFLUSH;
}
#endif
#if GDISP_HARDWARE_PIXELREAD
LLDSPEC gColor gdisp_lld_get_pixel_color(GDisplay *g)
{
gCoord x, y;
switch(g->g.Orientation) {
default:
case gOrientation0:
x = g->p.x;
y = g->p.y;
break;
case gOrientation90:
x = g->p.y;
y = GDISP_SCREEN_HEIGHT-1 - g->p.x;
break;
case gOrientation180:
x = GDISP_SCREEN_WIDTH-1 - g->p.x;
y = GDISP_SCREEN_HEIGHT-1 - g->p.y;
break;
case gOrientation270:
x = GDISP_SCREEN_WIDTH-1 - g->p.y;
y = g->p.x;
break;
}
return (RAM(g)[xyaddr(x, y)] & xybit(y)) ? GFX_WHITE : GFX_BLACK;
}
#endif
#if GDISP_HARDWARE_FILLS
LLDSPEC void gdisp_lld_fill_area(GDisplay *g)
{
gCoord sy, ey;
gCoord sx, ex;
gCoord col;
unsigned spage, zpages;
gU8 * base;
gU8 mask;
switch(g->g.Orientation) {
default:
case gOrientation0:
sx = g->p.x;
ex = g->p.x + g->p.cx - 1;
sy = g->p.y;
ey = sy + g->p.cy - 1;
break;
case gOrientation90:
sx = g->p.y;
ex = g->p.y + g->p.cy - 1;
sy = GDISP_SCREEN_HEIGHT - g->p.x - g->p.cx;
ey = GDISP_SCREEN_HEIGHT-1 - g->p.x;
break;
case gOrientation180:
sx = GDISP_SCREEN_WIDTH - g->p.x - g->p.cx;
ex = GDISP_SCREEN_WIDTH-1 - g->p.x;
sy = GDISP_SCREEN_HEIGHT - g->p.y - g->p.cy;
ey = GDISP_SCREEN_HEIGHT-1 - g->p.y;
break;
case gOrientation270:
sx = GDISP_SCREEN_WIDTH - g->p.y - g->p.cy;
ex = GDISP_SCREEN_WIDTH-1 - g->p.y;
sy = g->p.x;
ey = g->p.x + g->p.cx - 1;
break;
}
spage = sy / 8;
base = RAM(g) + CH1115_PAGE_OFFSET + CH1115_PAGE_WIDTH * spage;
mask = 0xff << (sy&7);
zpages = (ey / 8) - spage;
if (gdispColor2Native(g->p.color) == gdispColor2Native(GFX_BLACK)) {
while (zpages--) {
for (col = sx; col <= ex; col++)
base[col] &= ~mask;
mask = 0xff;
base += CH1115_PAGE_WIDTH;
}
mask &= (0xff >> (7 - (ey&7)));
for (col = sx; col <= ex; col++)
base[col] &= ~mask;
}
else {
while (zpages--) {
for (col = sx; col <= ex; col++)
base[col] |= mask;
mask = 0xff;
base += CH1115_PAGE_WIDTH;
}
mask &= (0xff >> (7 - (ey&7)));
for (col = sx; col <= ex; col++)
base[col] |= mask;
}
g->flags |= GDISP_FLG_NEEDFLUSH;
}
#endif
#if GDISP_NEED_CONTROL && GDISP_HARDWARE_CONTROL
LLDSPEC void gdisp_lld_control(GDisplay *g)
{
switch(g->p.x) {
case GDISP_CONTROL_POWER:
if (g->g.Powermode == (gPowermode)g->p.ptr)
return;
switch((gPowermode)g->p.ptr) {
case gPowerOff:
case gPowerSleep:
case gPowerDeepSleep:
acquire_bus(g);
write_cmd_1(g, 0xAE);
release_bus(g);
break;
case gPowerOn:
acquire_bus(g);
write_cmd_1(g, 0xAF);
release_bus(g);
break;
default:
return;
}
g->g.Powermode = (gPowermode)g->p.ptr;
return;
case GDISP_CONTROL_ORIENTATION:
if (g->g.Orientation == (gOrientation)g->p.ptr)
return;
switch((gOrientation)g->p.ptr) {
// Rotation is handled by the drawing routines
case gOrientation0:
case gOrientation180:
g->g.Height = GDISP_SCREEN_HEIGHT;
g->g.Width = GDISP_SCREEN_WIDTH;
break;
case gOrientation90:
case gOrientation270:
g->g.Height = GDISP_SCREEN_WIDTH;
g->g.Width = GDISP_SCREEN_HEIGHT;
break;
default:
return;
}
g->g.Orientation = (gOrientation)g->p.ptr;
return;
case GDISP_CONTROL_CONTRAST:
if ((unsigned)g->p.ptr > 100)
g->p.ptr = (void *)100;
acquire_bus(g);
write_cmd_2(g, 0x81, (((unsigned)g->p.ptr)<<8)/101);
release_bus(g);
g->g.Contrast = (unsigned)g->p.ptr;
return;
// Our own special controller code to inverse the display
// 0 = normal, 1 = inverse
case GDISP_CONTROL_INVERSE:
acquire_bus(g);
write_cmd_1(g, g->p.ptr ? 0xA7: 0xA6);
release_bus(g);
return;
}
}
#endif // GDISP_NEED_CONTROL
#endif // GFX_USE_GDISP

View file

@ -1,31 +0,0 @@
/*
* This file is subject to the terms of the GFX License. If a copy of
* the license was not distributed with this file, you can obtain one at:
*
* http://ugfx.io/license.html
*/
#ifndef _GDISP_LLD_CONFIG_H
#define _GDISP_LLD_CONFIG_H
#if GFX_USE_GDISP
/*===========================================================================*/
/* Driver hardware support. */
/*===========================================================================*/
#define GDISP_HARDWARE_FLUSH GFXON // This controller requires flushing
#define GDISP_HARDWARE_DRAWPIXEL GFXON
#define GDISP_HARDWARE_PIXELREAD GFXON
#define GDISP_HARDWARE_CONTROL GFXON
#define GDISP_HARDWARE_FILLS GFXON
#define GDISP_LLD_PIXELFORMAT GDISP_PIXELFORMAT_MONO
// This controller supports a special gdispControl() to inverse the display.
// Pass a parameter of 1 for inverse and 0 for normal.
#define GDISP_CONTROL_INVERSE (GDISP_CONTROL_LLD+0)
#endif // GFX_USE_GDISP
#endif // _GDISP_LLD_CONFIG_H

View file

@ -55,12 +55,6 @@
#define dummy_read(g) { volatile gU16 dummy; dummy = read_data(g); (void) dummy; } #define dummy_read(g) { volatile gU16 dummy; dummy = read_data(g); (void) dummy; }
#define write_reg(g, reg, data) { write_index(g, reg); write_data(g, data); } #define write_reg(g, reg, data) { write_index(g, reg); write_data(g, data); }
// Serial write data for fast fill.
#ifndef write_data_repeat
#define write_data_repeat(g, data, count) { int i; for (i = 0; i < count; ++i) write_data (g, data) }
/* TODO: should use DMA mem2mem */
#endif
static void set_cursor(GDisplay *g) { static void set_cursor(GDisplay *g) {
switch(g->g.Orientation) { switch(g->g.Orientation) {
default: default:
@ -84,18 +78,18 @@ static void set_viewport(GDisplay* g) {
default: default:
case gOrientation0: case gOrientation0:
case gOrientation180: case gOrientation180:
write_reg(g, LGDP4532_HORIZONTAL_WINDOW_ADDR1, g->p.x); write_reg(g, 0x50, g->p.x);
write_reg(g, LGDP4532_HORIZONTAL_WINDOW_ADDR2, g->p.x + g->p.cx - 1); write_reg(g, 0x51, g->p.x + g->p.cx - 1);
write_reg(g, LGDP4532_VERTICAL_WINDOW_ADDR1, g->p.y); write_reg(g, 0x52, g->p.y);
write_reg(g, LGDP4532_VERTICAL_WINDOW_ADDR2, g->p.y + g->p.cy - 1); write_reg(g, 0x53, g->p.y + g->p.cy - 1);
break; break;
case gOrientation90: case gOrientation90:
case gOrientation270: case gOrientation270:
write_reg(g, LGDP4532_HORIZONTAL_WINDOW_ADDR1, g->p.y); write_reg(g, 0x50, g->p.y);
write_reg(g, LGDP4532_HORIZONTAL_WINDOW_ADDR2, g->p.y + g->p.cy - 1); write_reg(g, 0x51, g->p.y + g->p.cy - 1);
write_reg(g, LGDP4532_VERTICAL_WINDOW_ADDR1, g->p.x); write_reg(g, 0x52, g->p.x);
write_reg(g, LGDP4532_VERTICAL_WINDOW_ADDR2, g->p.x + g->p.cx - 1); write_reg(g, 0x53, g->p.x + g->p.cx - 1);
break; break;
} }
} }
@ -116,6 +110,8 @@ LLDSPEC gBool gdisp_lld_init(GDisplay *g) {
acquire_bus(g); acquire_bus(g);
setwritemode(g); setwritemode(g);
// chinese code starts here
//############# void Power_Set(void) ################//
write_reg(g, 0x00, 0x0001); write_reg(g, 0x00, 0x0001);
gfxSleepMilliseconds(10); gfxSleepMilliseconds(10);
@ -128,24 +124,25 @@ LLDSPEC gBool gdisp_lld_init(GDisplay *g) {
write_reg(g, 0x12, 0x0010); write_reg(g, 0x12, 0x0010);
gfxSleepMilliseconds(10); gfxSleepMilliseconds(10);
write_reg(g, 0x10, 0x2620); write_reg(g, 0x10, 0x2620);
write_reg(g, 0x13, 0x344d); write_reg(g, 0x13, 0x344d); //304d
gfxSleepMilliseconds(10); gfxSleepMilliseconds(10);
write_reg(g, 0x01, 0x0100); write_reg(g, 0x01, 0x0100);
write_reg(g, 0x02, 0x0300); write_reg(g, 0x02, 0x0300);
write_reg(g, 0x03, 0x1030); write_reg(g, 0x03, 0x1038);//0x1030
write_reg(g, 0x08, 0x0604); write_reg(g, 0x08, 0x0604);
write_reg(g, 0x09, 0x0000); write_reg(g, 0x09, 0x0000);
write_reg(g, 0x0A, 0x0008); write_reg(g, 0x0A, 0x0008);
write_reg(g, 0x41, 0x0002); write_reg(g, 0x41, 0x0002);
write_reg(g, 0x60, 0x2700); write_reg(g, 0x60, 0xA700);
write_reg(g, 0x61, 0x0001); write_reg(g, 0x61, 0x0001);
write_reg(g, 0x90, 0x0182); write_reg(g, 0x90, 0x0182);
write_reg(g, 0x93, 0x0001); write_reg(g, 0x93, 0x0001);
write_reg(g, 0xa3, 0x0010); write_reg(g, 0xa3, 0x0010);
gfxSleepMilliseconds(10); gfxSleepMilliseconds(10);
//################# void Gamma_Set(void) ####################//
write_reg(g, 0x30, 0x0000); write_reg(g, 0x30, 0x0000);
write_reg(g, 0x31, 0x0502); write_reg(g, 0x31, 0x0502);
write_reg(g, 0x32, 0x0307); write_reg(g, 0x32, 0x0307);
@ -158,6 +155,7 @@ LLDSPEC gBool gdisp_lld_init(GDisplay *g) {
write_reg(g, 0x39, 0x1505); write_reg(g, 0x39, 0x1505);
gfxSleepMilliseconds(10); gfxSleepMilliseconds(10);
//################## void Display_ON(void) ####################//
write_reg(g, 0x07, 0x0001); write_reg(g, 0x07, 0x0001);
gfxSleepMilliseconds(10); gfxSleepMilliseconds(10);
write_reg(g, 0x07, 0x0021); write_reg(g, 0x07, 0x0021);
@ -166,6 +164,7 @@ LLDSPEC gBool gdisp_lld_init(GDisplay *g) {
write_reg(g, 0x07, 0x0033); write_reg(g, 0x07, 0x0033);
gfxSleepMilliseconds(10); gfxSleepMilliseconds(10);
write_reg(g, 0x07, 0x0133); write_reg(g, 0x07, 0x0133);
// chinese code ends here
// Finish Init // Finish Init
post_init_board(g); post_init_board(g);
@ -358,36 +357,4 @@ LLDSPEC gBool gdisp_lld_init(GDisplay *g) {
} }
#endif #endif
LLDSPEC void gdisp_lld_draw_pixel(GDisplay *g) {
set_cursor(g);
gdisp_lld_write_color (g);
}
#if GDISP_HARDWARE_FILLS
LLDSPEC void gdisp_lld_fill_area(GDisplay *g) {
LLDCOLOR_TYPE c = gdispColor2Native(g->p.color);
acquire_bus(g);
// Set view port if drawing more than 1 line, or write not started
if (g->p.cy != 1 || !ws) {
set_viewport(g);
}
set_cursor(g);
write_data_repeat (g,c,g->p.cx*g->p.cy);
// Restore view port if write started and drawed more than 1 line
if (g->p.cy != 1 && ws)
{
write_reg(g, LGDP4532_HORIZONTAL_WINDOW_ADDR2, svx);
write_reg(g, LGDP4532_HORIZONTAL_WINDOW_ADDR1, svx + svcx - 1);
write_reg(g, LGDP4532_VERTICAL_WINDOW_ADDR2, svy);
write_reg(g, LGDP4532_VERTICAL_WINDOW_ADDR1, svy + svcy - 1);
}
release_bus(g);
}
#endif // GDISP_HARDWARE_FILLS
#endif /* GFX_USE_GDISP */ #endif /* GFX_USE_GDISP */

View file

@ -14,18 +14,8 @@
#define GDISP_HARDWARE_STREAM_READ GFXON #define GDISP_HARDWARE_STREAM_READ GFXON
#define GDISP_HARDWARE_STREAM_POS GFXON #define GDISP_HARDWARE_STREAM_POS GFXON
#define GDISP_HARDWARE_CONTROL GFXON #define GDISP_HARDWARE_CONTROL GFXON
#define GDISP_HARDWARE_FILLS GFXON
#define GDISP_LLD_PIXELFORMAT GDISP_PIXELFORMAT_RGB565 #define GDISP_LLD_PIXELFORMAT GDISP_PIXELFORMAT_RGB565
/* Horizontal Address Start Position */
#define LGDP4532_HORIZONTAL_WINDOW_ADDR1 (0x50u)
/* Horizontal Address End Position */
#define LGDP4532_HORIZONTAL_WINDOW_ADDR2 (0x51u)
/* Vertical Address Start Position */
#define LGDP4532_VERTICAL_WINDOW_ADDR1 (0x52u)
/* Vertical Address End Position */
#define LGDP4532_VERTICAL_WINDOW_ADDR2 (0x53u)
#endif /* GFX_USE_GDISP */ #endif /* GFX_USE_GDISP */
#endif /* _GDISP_LLD_CONFIG_H */ #endif /* _GDISP_LLD_CONFIG_H */

View file

@ -1,6 +1,6 @@
Description: Description:
Driver for OLED with 4-wire serial interface and I2C/SPI interface Driver for OLED with 4-wire serial interface and I²C/SPI interface
Know restictions: Know restictions:
- Driver works only with SSD1306 hooked up over I2C or SPI (include corresponding header) - Driver works only with SSD1306 hooked up over I2C or SPI (include corresponding header)

View file

@ -1,58 +0,0 @@
/*
* This file is subject to the terms of the GFX License. If a copy of
* the license was not distributed with this file, you can obtain one at:
*
* http://ugfx.io/license.html
*/
#pragma once
/**
* The command byte to put in front of each page line.
*
* If this is defined, each page line is prefixed with the specified value in the locally
* maintained framebuffer.
*
* This can be omitted and handled inside of write_data() manually instead.
*/
#define SSD1312_PAGE_PREFIX 0x40 // Co = 0, D/C = 1
static GFXINLINE void init_board(GDisplay *g)
{
(void) g;
}
static GFXINLINE void post_init_board(GDisplay *g)
{
(void) g;
}
static GFXINLINE void setpin_reset(GDisplay *g, gBool state)
{
(void) g;
(void) state;
}
static GFXINLINE void acquire_bus(GDisplay *g)
{
(void) g;
}
static GFXINLINE void release_bus(GDisplay *g)
{
(void) g;
}
static GFXINLINE void write_cmd(GDisplay *g, gU8 *data, gU16 length)
{
(void) g;
(void) data;
(void) length;
}
static GFXINLINE void write_data(GDisplay *g, gU8 *data, gU16 length)
{
(void) g;
(void) data;
(void) length;
}

View file

@ -1,8 +0,0 @@
list(APPEND ugfx_INCLUDE_DIRS
${CMAKE_CURRENT_LIST_DIR}
)
list(APPEND ugfx_SOURCES
${CMAKE_CURRENT_LIST_DIR}/gdisp_lld_SSD1312.c
)

View file

@ -1,3 +0,0 @@
GFXINC += $(GFXLIB)/drivers/gdisp/SSD1312
GFXSRC += $(GFXLIB)/drivers/gdisp/SSD1312/gdisp_lld_SSD1312.c

View file

@ -1,391 +0,0 @@
/*
* This file is subject to the terms of the GFX License. If a copy of
* the license was not distributed with this file, you can obtain one at:
*
* http://ugfx.io/license.html
*/
#include "gfx.h"
#if GFX_USE_GDISP
#define GDISP_DRIVER_VMT GDISPVMT_SSD1312
#include "gdisp_lld_config.h"
#include "../../../src/gdisp/gdisp_driver.h"
#include "board_SSD1312.h"
/*===========================================================================*/
/* Driver local definitions. */
/*===========================================================================*/
#ifndef GDISP_SCREEN_HEIGHT
#define GDISP_SCREEN_HEIGHT 32 // This controller should also support 64 (untested)
#endif
#ifndef GDISP_SCREEN_WIDTH
#define GDISP_SCREEN_WIDTH 128
#endif
#ifndef GDISP_INITIAL_CONTRAST
#define GDISP_INITIAL_CONTRAST 100
#endif
#ifndef GDISP_INITIAL_BACKLIGHT
#define GDISP_INITIAL_BACKLIGHT 100
#endif
#ifdef SSD1312_PAGE_PREFIX
#define SSD1312_PAGE_WIDTH (GDISP_SCREEN_WIDTH+1)
#define SSD1312_PAGE_OFFSET 1
#else
#define SSD1312_PAGE_WIDTH GDISP_SCREEN_WIDTH
#define SSD1312_PAGE_OFFSET 0
#endif
#define GDISP_FLG_NEEDFLUSH (GDISP_FLG_DRIVER<<0)
/*===========================================================================*/
/* Driver local functions. */
/*===========================================================================*/
// Some common routines and macros
#define RAM(g) ((gU8 *)g->priv)
#define xyaddr(x, y) (SSD1312_PAGE_OFFSET + (x) + ((y)>>3)*SSD1312_PAGE_WIDTH)
#define xybit(y) (1<<((y)&7))
#define write_cmd_1(g, a) { gU8 cmd[1]; cmd[0] = a; write_cmd(g, cmd, 1); }
#define write_cmd_2(g, a, b) { gU8 cmd[2]; cmd[0] = a; cmd[1] = b; write_cmd(g, cmd, 2); }
/*===========================================================================*/
/* Driver exported functions. */
/*===========================================================================*/
/**
* As this controller can't update on a pixel boundary we need to maintain the
* the entire display surface in memory so that we can do the necessary bit
* operations. Fortunately it is a small monochrome display.
* 64 * 128 / 8 = 1024 bytes.
*/
LLDSPEC gBool gdisp_lld_init(GDisplay *g)
{
// The private area is the display surface.
g->priv = gfxAlloc(GDISP_SCREEN_HEIGHT/8 * SSD1312_PAGE_WIDTH);
if (!g->priv)
return gFalse;
// Fill in the prefix command byte on each page line of the display buffer
// We can do this during initialisation as we're being careful that this byte is never overwritten.
#ifdef SSD1312_PAGE_PREFIX
for (unsigned i = 0; i < GDISP_SCREEN_HEIGHT/8 * SSD1312_PAGE_WIDTH; i += SSD1312_PAGE_WIDTH)
RAM(g)[i] = SSD1312_PAGE_PREFIX;
#endif
// Initialise the board interface
init_board(g);
// Hardware reset
setpin_reset(g, gTrue);
gfxSleepMilliseconds(20);
setpin_reset(g, gFalse);
gfxSleepMilliseconds(200);
acquire_bus(g);
// Configuration
// This might require display module vendor specific changes
{
// Display off
write_cmd_1(g, 0xAE);
// Clock divider
write_cmd_2(g, 0xD5, 0x80);
// Multiplex ratio
write_cmd_2(g, 0xA8, 0x1F);
// Display offset
write_cmd_2(g, 0xD3, 0x30);
// Display start line
write_cmd_1(g, 0x40);
// Charge pump
write_cmd_2(g, 0x8D, 0x72); // 0x10 if Vcc externally supplied
// Segment re-map
write_cmd_1(g, 0xA1);
// COM output scan direction
write_cmd_1(g, 0xC0);
// COM pin hardware configuration
write_cmd_2(g, 0xDA, 0x10);
// Set internal/external current reference
write_cmd_2(g, 0xAD, 0x50);
// Set contract
write_cmd_2(g, 0x81, 0x17);
// Set pre-charge period
write_cmd_2(g, 0xD9, 0xF1);
// Set VCOMH select level
write_cmd_2(g, 0xDB, 0x30);
// Set entire display on/off
write_cmd_1(g, 0xA4);
// Set normal/inverse display
write_cmd_1(g, 0xA6);
// Page addressing mode
write_cmd_2(g, 0x20, 0x02);
// Display on
write_cmd_1(g, 0xAF);
}
release_bus(g);
// Finish Init
post_init_board(g);
// Initialise the GDISP structure
g->g.Width = GDISP_SCREEN_WIDTH;
g->g.Height = GDISP_SCREEN_HEIGHT;
g->g.Orientation = gOrientation0;
g->g.Powermode = gPowerOn;
g->g.Backlight = GDISP_INITIAL_BACKLIGHT;
g->g.Contrast = GDISP_INITIAL_CONTRAST;
return gTrue;
}
#if GDISP_HARDWARE_FLUSH
LLDSPEC void gdisp_lld_flush(GDisplay *g)
{
gU8 * ram;
unsigned pages;
// Only flush if necessary
if (!(g->flags & GDISP_FLG_NEEDFLUSH))
return;
ram = RAM(g);
pages = GDISP_SCREEN_HEIGHT/8;
acquire_bus(g);
write_cmd_1(g, 0x40 | 0);
while (pages--) {
write_cmd_1(g, 0xB0 + (((GDISP_SCREEN_HEIGHT/8)-1)-pages));
write_cmd_1(g, 0x00);
write_cmd_1(g, 0x10);
write_data(g, ram, SSD1312_PAGE_WIDTH);
ram += SSD1312_PAGE_WIDTH;
}
release_bus(g);
g->flags &= ~GDISP_FLG_NEEDFLUSH;
}
#endif
#if GDISP_HARDWARE_DRAWPIXEL
LLDSPEC void gdisp_lld_draw_pixel(GDisplay *g)
{
gCoord x, y;
switch(g->g.Orientation) {
default:
case gOrientation0:
x = g->p.x;
y = g->p.y;
break;
case gOrientation90:
x = g->p.y;
y = GDISP_SCREEN_HEIGHT-1 - g->p.x;
break;
case gOrientation180:
x = GDISP_SCREEN_WIDTH-1 - g->p.x;
y = GDISP_SCREEN_HEIGHT-1 - g->p.y;
break;
case gOrientation270:
x = GDISP_SCREEN_WIDTH-1 - g->p.y;
y = g->p.x;
break;
}
if (gdispColor2Native(g->p.color) != gdispColor2Native(GFX_BLACK))
RAM(g)[xyaddr(x, y)] |= xybit(y);
else
RAM(g)[xyaddr(x, y)] &= ~xybit(y);
g->flags |= GDISP_FLG_NEEDFLUSH;
}
#endif
#if GDISP_HARDWARE_PIXELREAD
LLDSPEC gColor gdisp_lld_get_pixel_color(GDisplay *g)
{
gCoord x, y;
switch(g->g.Orientation) {
default:
case gOrientation0:
x = g->p.x;
y = g->p.y;
break;
case gOrientation90:
x = g->p.y;
y = GDISP_SCREEN_HEIGHT-1 - g->p.x;
break;
case gOrientation180:
x = GDISP_SCREEN_WIDTH-1 - g->p.x;
y = GDISP_SCREEN_HEIGHT-1 - g->p.y;
break;
case gOrientation270:
x = GDISP_SCREEN_WIDTH-1 - g->p.y;
y = g->p.x;
break;
}
return (RAM(g)[xyaddr(x, y)] & xybit(y)) ? GFX_WHITE : GFX_BLACK;
}
#endif
#if GDISP_HARDWARE_FILLS
LLDSPEC void gdisp_lld_fill_area(GDisplay *g)
{
gCoord sy, ey;
gCoord sx, ex;
gCoord col;
unsigned spage, zpages;
gU8 * base;
gU8 mask;
switch(g->g.Orientation) {
default:
case gOrientation0:
sx = g->p.x;
ex = g->p.x + g->p.cx - 1;
sy = g->p.y;
ey = sy + g->p.cy - 1;
break;
case gOrientation90:
sx = g->p.y;
ex = g->p.y + g->p.cy - 1;
sy = GDISP_SCREEN_HEIGHT - g->p.x - g->p.cx;
ey = GDISP_SCREEN_HEIGHT-1 - g->p.x;
break;
case gOrientation180:
sx = GDISP_SCREEN_WIDTH - g->p.x - g->p.cx;
ex = GDISP_SCREEN_WIDTH-1 - g->p.x;
sy = GDISP_SCREEN_HEIGHT - g->p.y - g->p.cy;
ey = GDISP_SCREEN_HEIGHT-1 - g->p.y;
break;
case gOrientation270:
sx = GDISP_SCREEN_WIDTH - g->p.y - g->p.cy;
ex = GDISP_SCREEN_WIDTH-1 - g->p.y;
sy = g->p.x;
ey = g->p.x + g->p.cx - 1;
break;
}
spage = sy / 8;
base = RAM(g) + SSD1312_PAGE_OFFSET + SSD1312_PAGE_WIDTH * spage;
mask = 0xff << (sy&7);
zpages = (ey / 8) - spage;
if (gdispColor2Native(g->p.color) == gdispColor2Native(GFX_BLACK)) {
while (zpages--) {
for (col = sx; col <= ex; col++)
base[col] &= ~mask;
mask = 0xff;
base += SSD1312_PAGE_WIDTH;
}
mask &= (0xff >> (7 - (ey&7)));
for (col = sx; col <= ex; col++)
base[col] &= ~mask;
}
else {
while (zpages--) {
for (col = sx; col <= ex; col++)
base[col] |= mask;
mask = 0xff;
base += SSD1312_PAGE_WIDTH;
}
mask &= (0xff >> (7 - (ey&7)));
for (col = sx; col <= ex; col++)
base[col] |= mask;
}
g->flags |= GDISP_FLG_NEEDFLUSH;
}
#endif
#if GDISP_NEED_CONTROL && GDISP_HARDWARE_CONTROL
LLDSPEC void gdisp_lld_control(GDisplay *g)
{
switch(g->p.x) {
case GDISP_CONTROL_POWER:
if (g->g.Powermode == (gPowermode)g->p.ptr)
return;
switch((gPowermode)g->p.ptr) {
case gPowerOff:
case gPowerSleep:
case gPowerDeepSleep:
acquire_bus(g);
write_cmd_1(g, 0xAE);
release_bus(g);
break;
case gPowerOn:
acquire_bus(g);
write_cmd_1(g, 0xAF);
release_bus(g);
break;
default:
return;
}
g->g.Powermode = (gPowermode)g->p.ptr;
return;
case GDISP_CONTROL_ORIENTATION:
if (g->g.Orientation == (gOrientation)g->p.ptr)
return;
switch((gOrientation)g->p.ptr) {
// Rotation is handled by the drawing routines
case gOrientation0:
case gOrientation180:
g->g.Height = GDISP_SCREEN_HEIGHT;
g->g.Width = GDISP_SCREEN_WIDTH;
break;
case gOrientation90:
case gOrientation270:
g->g.Height = GDISP_SCREEN_WIDTH;
g->g.Width = GDISP_SCREEN_HEIGHT;
break;
default:
return;
}
g->g.Orientation = (gOrientation)g->p.ptr;
return;
case GDISP_CONTROL_CONTRAST:
if ((unsigned)g->p.ptr > 100)
g->p.ptr = (void *)100;
acquire_bus(g);
write_cmd_2(g, 0x81, (((unsigned)g->p.ptr)<<8)/101);
release_bus(g);
g->g.Contrast = (unsigned)g->p.ptr;
return;
// Our own special controller code to inverse the display
// 0 = normal, 1 = inverse
case GDISP_CONTROL_INVERSE:
acquire_bus(g);
write_cmd_1(g, g->p.ptr ? 0xA7: 0xA6);
release_bus(g);
return;
}
}
#endif // GDISP_NEED_CONTROL
#endif // GFX_USE_GDISP

View file

@ -1,31 +0,0 @@
/*
* This file is subject to the terms of the GFX License. If a copy of
* the license was not distributed with this file, you can obtain one at:
*
* http://ugfx.io/license.html
*/
#ifndef _GDISP_LLD_CONFIG_H
#define _GDISP_LLD_CONFIG_H
#if GFX_USE_GDISP
/*===========================================================================*/
/* Driver hardware support. */
/*===========================================================================*/
#define GDISP_HARDWARE_FLUSH GFXON // This controller requires flushing
#define GDISP_HARDWARE_DRAWPIXEL GFXON
#define GDISP_HARDWARE_PIXELREAD GFXON
#define GDISP_HARDWARE_CONTROL GFXON
#define GDISP_HARDWARE_FILLS GFXON
#define GDISP_LLD_PIXELFORMAT GDISP_PIXELFORMAT_MONO
// This controller supports a special gdispControl() to inverse the display.
// Pass a parameter of 1 for inverse and 0 for normal.
#define GDISP_CONTROL_INVERSE (GDISP_CONTROL_LLD+0)
#endif // GFX_USE_GDISP
#endif // _GDISP_LLD_CONFIG_H

View file

@ -1,3 +0,0 @@
GFXINC += $(GFXLIB)/drivers/gdisp/SSD1322
GFXSRC += $(GFXLIB)/drivers/gdisp/SSD1322/gdisp_lld_SSD1322.c

View file

@ -8,6 +8,10 @@
#ifndef _GDISP_LLD_BOARD_H #ifndef _GDISP_LLD_BOARD_H
#define _GDISP_LLD_BOARD_H #define _GDISP_LLD_BOARD_H
#define LTDC_USE_DMA2D GFXON
#define LTDC_USE_2ND_LAYER GFXOFF
#define LTDC_DMA_CACHE_FLUSH GFXOFF // This will be turned on automatically on certain systems/platforms
static const ltdcConfig driverCfg = { static const ltdcConfig driverCfg = {
480, 272, // Width, Height (pixels) 480, 272, // Width, Height (pixels)
41, 10, // Horizontal, Vertical sync (pixels) 41, 10, // Horizontal, Vertical sync (pixels)
@ -32,7 +36,7 @@ static const ltdcConfig driverCfg = {
LTDC_LEF_ENABLE // Layer configuration flags LTDC_LEF_ENABLE // Layer configuration flags
}, },
#if STM32LTDC_USE_LAYER2 || STM32LTDC_USE_DOUBLEBUFFERING #if LTDC_USE_2ND_LAYER
{ // Foreground layer config (if turned on) { // Foreground layer config (if turned on)
(LLDCOLOR_TYPE *)(SDRAM_DEVICE_ADDR+(480 * 272 * LTDC_PIXELBYTES)), // Frame buffer address (LLDCOLOR_TYPE *)(SDRAM_DEVICE_ADDR+(480 * 272 * LTDC_PIXELBYTES)), // Frame buffer address
480, 272, // Width, Height (pixels) 480, 272, // Width, Height (pixels)
@ -58,7 +62,7 @@ static GFXINLINE void init_ltdc_clock(void)
// Setup LTDC clock and enable the peripheral // Setup LTDC clock and enable the peripheral
} }
#if STM32LTDC_USE_DMA2D #if LTDC_USE_DMA2D
static GFXINLINE void init_dma2d_clock(void) static GFXINLINE void init_dma2d_clock(void)
{ {
// Setup DMA2D clock and enable the peripheral // Setup DMA2D clock and enable the peripheral

View file

@ -1,7 +0,0 @@
list(APPEND ugfx_INCLUDE_DIRS
${CMAKE_CURRENT_LIST_DIR}
)
list(APPEND ugfx_SOURCES
${CMAKE_CURRENT_LIST_DIR}/gdisp_lld_STM32LTDC.c
)

View file

@ -13,7 +13,7 @@
#include "gdisp_lld_config.h" #include "gdisp_lld_config.h"
#include "../../../src/gdisp/gdisp_driver.h" #include "../../../src/gdisp/gdisp_driver.h"
#include "stm32_ltdc.h" #include "stm32_ltdc.h"
#if STM32LTDC_USE_DMA2D #if LTDC_USE_DMA2D
#include "stm32_dma2d.h" #include "stm32_dma2d.h"
#endif #endif
@ -27,38 +27,6 @@
#undef GDISP_SCREEN_HEIGHT #undef GDISP_SCREEN_HEIGHT
#endif #endif
#ifndef STM32LTDC_DMA_CACHE_FLUSH
#define STM32LTDC_DMA_CACHE_FLUSH GFXOFF
#endif
#ifndef STM32LTDC_USE_DMA2D
#define STM32LTDC_USE_DMA2D GFXOFF
#endif
#ifndef STM32LTDC_USE_LAYER2
#define STM32LTDC_USE_LAYER2 GFXOFF
#endif
#ifndef STM32LTDC_USE_RGB565
#define STM32LTDC_USE_RGB565 GFXOFF
#endif
// Prevent usage of 2nd layer and double buffering at the same time.
// See readme.md for more inforamtion.
#if STM32LTDC_USE_LAYER2 && STM32LTDC_USE_DOUBLEBUFFERING
#error "GDISP - STM32LTDC: Cannot use 2nd LTDC layer and double buffering at the same time. See the driver's readme.md for more information."
#endif
// Double buffering requires GDISP_NEED_CONTROL for the buffer swap command
#if STM32LTDC_USE_DOUBLEBUFFERING && !GDISP_NEED_CONTROL
#error "GDISP - STM32LTDC: Double buffering requires GDISP_NEED_CONTROL."
#endif
// Force DMA cache flushing on certain platforms/systems.
#if STM32LTDC_USE_DMA2D
#if defined(STM32F7) || defined(STM32H7) || defined(STM32F746xx)
#undef STM32LTDC_DMA_CACHE_FLUSH
#define STM32LTDC_DMA_CACHE_FLUSH GFXON
#endif
#endif
typedef struct ltdcLayerConfig { typedef struct ltdcLayerConfig {
// Frame // Frame
LLDCOLOR_TYPE* frame; // Frame buffer address LLDCOLOR_TYPE* frame; // Frame buffer address
@ -84,8 +52,8 @@ typedef struct ltdcConfig {
gCoord hsync, vsync; // Horizontal and Vertical sync pixels gCoord hsync, vsync; // Horizontal and Vertical sync pixels
gCoord hbackporch, vbackporch; // Horizontal and Vertical back porch pixels gCoord hbackporch, vbackporch; // Horizontal and Vertical back porch pixels
gCoord hfrontporch, vfrontporch; // Horizontal and Vertical front porch pixels gCoord hfrontporch, vfrontporch; // Horizontal and Vertical front porch pixels
gU32 syncflags; // Sync flags gU32 syncflags; // Sync flags
gU32 bgcolor; // Clear screen color RGB888 gU32 bgcolor; // Clear screen color RGB888
ltdcLayerConfig bglayer; // Background layer config ltdcLayerConfig bglayer; // Background layer config
ltdcLayerConfig fglayer; // Foreground layer config ltdcLayerConfig fglayer; // Foreground layer config
@ -107,6 +75,20 @@ typedef struct ltdcConfig {
#include "board_STM32LTDC.h" #include "board_STM32LTDC.h"
#ifndef LTDC_USE_DMA2D
#define LTDC_USE_DMA2D GFXOFF
#endif
#ifndef LTDC_DMA_CACHE_FLUSH
#define LTDC_DMA_CACHE_FLUSH GFXOFF
#endif
#if LTDC_USE_DMA2D
#if defined(STM32F7) || defined(STM32H7) || defined(STM32F746xx)
#undef LTDC_DMA_CACHE_FLUSH
#define LTDC_DMA_CACHE_FLUSH GFXON
#endif
#endif
/*===========================================================================*/ /*===========================================================================*/
/* Driver local definitions. */ /* Driver local definitions. */
/*===========================================================================*/ /*===========================================================================*/
@ -122,7 +104,7 @@ typedef struct ltdcConfig {
/* Driver local routines. */ /* Driver local routines. */
/*===========================================================================*/ /*===========================================================================*/
#define PIXEL_POS(g, x, y) ((y) * ((ltdcLayerConfig *)g->priv)->pitch + (x) * LTDC_PIXELBYTES) #define PIXIL_POS(g, x, y) ((y) * ((ltdcLayerConfig *)g->priv)->pitch + (x) * LTDC_PIXELBYTES)
#define PIXEL_ADDR(g, pos) ((LLDCOLOR_TYPE *)((gU8 *)((ltdcLayerConfig *)g->priv)->frame+pos)) #define PIXEL_ADDR(g, pos) ((LLDCOLOR_TYPE *)((gU8 *)((ltdcLayerConfig *)g->priv)->frame+pos))
/*===========================================================================*/ /*===========================================================================*/
@ -236,8 +218,7 @@ LLDSPEC gBool gdisp_lld_init(GDisplay* g) {
g->board = 0; g->board = 0;
switch(g->controllerdisplay) { switch(g->controllerdisplay) {
// Display 0 is the background layer case 0: // Display 0 is the background layer
case 0:
// Init the board // Init the board
init_board(g); init_board(g);
@ -245,7 +226,7 @@ LLDSPEC gBool gdisp_lld_init(GDisplay* g) {
_ltdc_init(); _ltdc_init();
// Initialise DMA2D // Initialise DMA2D
#if STM32LTDC_USE_DMA2D #if LTDC_USE_DMA2D
dma2d_init(); dma2d_init();
#endif #endif
@ -262,26 +243,23 @@ LLDSPEC gBool gdisp_lld_init(GDisplay* g) {
break; break;
// Display 1 is the foreground layer or the 2nd buffer for double buffering case 1: // Display 1 is the foreground layer
case 1:
if (!(driverCfg.fglayer.layerflags & LTDC_LEF_ENABLE))
return gFalse;
// Load the foreground layer
_ltdc_layer_init(LTDC_Layer2, &driverCfg.fglayer);
_ltdc_reload();
g->priv = (void *)&driverCfg.fglayer; g->priv = (void *)&driverCfg.fglayer;
#if STM32LTDC_USE_LAYER2 // Finish Init the board
if (!(driverCfg.fglayer.layerflags & LTDC_LEF_ENABLE)) post_init_board(g);
return gFalse;
// Load the foreground layer
_ltdc_layer_init(LTDC_Layer2, &driverCfg.fglayer);
_ltdc_reload();
// Finish Init the board
post_init_board(g);
#endif
break; break;
// There is only 1 LTDC in the CPU and only the 2 layers in the LTDC. default: // There is only 1 LTDC in the CPU and only the 2 layers in the LTDC.
default:
return gFalse; return gFalse;
} }
@ -301,27 +279,25 @@ LLDSPEC void gdisp_lld_draw_pixel(GDisplay* g) {
#if GDISP_NEED_CONTROL #if GDISP_NEED_CONTROL
switch(g->g.Orientation) { switch(g->g.Orientation) {
case gOrientationPortrait:
case gOrientationLandscape:
case gOrientation0: case gOrientation0:
default: default:
pos = PIXEL_POS(g, g->p.x, g->p.y); pos = PIXIL_POS(g, g->p.x, g->p.y);
break; break;
case gOrientation90: case gOrientation90:
pos = PIXEL_POS(g, g->p.y, g->g.Width-g->p.x-1); pos = PIXIL_POS(g, g->p.y, g->g.Width-g->p.x-1);
break; break;
case gOrientation180: case gOrientation180:
pos = PIXEL_POS(g, g->g.Width-g->p.x-1, g->g.Height-g->p.y-1); pos = PIXIL_POS(g, g->g.Width-g->p.x-1, g->g.Height-g->p.y-1);
break; break;
case gOrientation270: case gOrientation270:
pos = PIXEL_POS(g, g->g.Height-g->p.y-1, g->p.x); pos = PIXIL_POS(g, g->g.Height-g->p.y-1, g->p.x);
break; break;
} }
#else #else
pos = PIXEL_POS(g, g->p.x, g->p.y); pos = PIXIL_POS(g, g->p.x, g->p.y);
#endif #endif
#if STM32LTDC_USE_DMA2D #if LTDC_USE_DMA2D
while(DMA2D->CR & DMA2D_CR_START); while(DMA2D->CR & DMA2D_CR_START);
#endif #endif
@ -341,27 +317,25 @@ LLDSPEC gColor gdisp_lld_get_pixel_color(GDisplay* g) {
#if GDISP_NEED_CONTROL #if GDISP_NEED_CONTROL
switch(g->g.Orientation) { switch(g->g.Orientation) {
case gOrientationPortrait:
case gOrientationLandscape:
case gOrientation0: case gOrientation0:
default: default:
pos = PIXEL_POS(g, g->p.x, g->p.y); pos = PIXIL_POS(g, g->p.x, g->p.y);
break; break;
case gOrientation90: case gOrientation90:
pos = PIXEL_POS(g, g->p.y, g->g.Width-g->p.x-1); pos = PIXIL_POS(g, g->p.y, g->g.Width-g->p.x-1);
break; break;
case gOrientation180: case gOrientation180:
pos = PIXEL_POS(g, g->g.Width-g->p.x-1, g->g.Height-g->p.y-1); pos = PIXIL_POS(g, g->g.Width-g->p.x-1, g->g.Height-g->p.y-1);
break; break;
case gOrientation270: case gOrientation270:
pos = PIXEL_POS(g, g->g.Height-g->p.y-1, g->p.x); pos = PIXIL_POS(g, g->g.Height-g->p.y-1, g->p.x);
break; break;
} }
#else #else
pos = PIXEL_POS(g, g->p.x, g->p.y); pos = PIXIL_POS(g, g->p.x, g->p.y);
#endif #endif
#if STM32LTDC_USE_DMA2D #if LTDC_USE_DMA2D
while(DMA2D->CR & DMA2D_CR_START); while(DMA2D->CR & DMA2D_CR_START);
#endif #endif
@ -404,8 +378,6 @@ LLDSPEC gColor gdisp_lld_get_pixel_color(GDisplay* g) {
g->g.Height = tmp; g->g.Height = tmp;
} }
break; break;
case gOrientationPortrait:
case gOrientationLandscape:
default: default:
return; return;
} }
@ -417,33 +389,12 @@ LLDSPEC gColor gdisp_lld_get_pixel_color(GDisplay* g) {
set_backlight(g, (unsigned)g->p.ptr); set_backlight(g, (unsigned)g->p.ptr);
g->g.Backlight = (unsigned)g->p.ptr; g->g.Backlight = (unsigned)g->p.ptr;
return; return;
#if STM32LTDC_USE_DOUBLEBUFFERING
case STM32LTDC_CONTROL_SHOW_BUFFER:
{
// Wait for end-of-line interrupt
// We use simple polling here as end-of-line interrupts are very frequent and usually happen in sub-millisecond intervals.
while (LTDC->ISR & LTDC_ISR_LIF);
// Update framebuffer address in LTDC register
// As we currently only support one layer when doublebuffering is enabled, this change happens only to layer 1.
LTDC_Layer1->CFBAR = (gU32)(((ltdcLayerConfig*)g->priv)->frame) & LTDC_LxCFBAR_CFBADD;
// Reload after LTDC config register modifications
_ltdc_reload();
return;
}
#endif
default:
return;
} }
} }
#endif #endif
#if STM32LTDC_USE_DMA2D #if LTDC_USE_DMA2D
#if STM32LTDC_DMA_CACHE_FLUSH #if LTDC_DMA_CACHE_FLUSH
#if defined(__CC_ARM) #if defined(__CC_ARM)
#define __ugfxDSB() __dsb(0xF) #define __ugfxDSB() __dsb(0xF)
#else // GCC like #else // GCC like
@ -480,37 +431,35 @@ LLDSPEC gColor gdisp_lld_get_pixel_color(GDisplay* g) {
#if GDISP_NEED_CONTROL #if GDISP_NEED_CONTROL
switch(g->g.Orientation) { switch(g->g.Orientation) {
case gOrientationPortrait:
case gOrientationLandscape:
case gOrientation0: case gOrientation0:
default: default:
pos = PIXEL_POS(g, g->p.x, g->p.y); pos = PIXIL_POS(g, g->p.x, g->p.y);
lineadd = g->g.Width - g->p.cx; lineadd = g->g.Width - g->p.cx;
shape = (g->p.cx << 16) | (g->p.cy); shape = (g->p.cx << 16) | (g->p.cy);
break; break;
case gOrientation90: case gOrientation90:
pos = PIXEL_POS(g, g->p.y, g->g.Width-g->p.x-g->p.cx); pos = PIXIL_POS(g, g->p.y, g->g.Width-g->p.x-g->p.cx);
lineadd = g->g.Height - g->p.cy; lineadd = g->g.Height - g->p.cy;
shape = (g->p.cy << 16) | (g->p.cx); shape = (g->p.cy << 16) | (g->p.cx);
break; break;
case gOrientation180: case gOrientation180:
pos = PIXEL_POS(g, g->g.Width-g->p.x-g->p.cx, g->g.Height-g->p.y-g->p.cy); pos = PIXIL_POS(g, g->g.Width-g->p.x-g->p.cx, g->g.Height-g->p.y-g->p.cy);
lineadd = g->g.Width - g->p.cx; lineadd = g->g.Width - g->p.cx;
shape = (g->p.cx << 16) | (g->p.cy); shape = (g->p.cx << 16) | (g->p.cy);
break; break;
case gOrientation270: case gOrientation270:
pos = PIXEL_POS(g, g->g.Height-g->p.y-g->p.cy, g->p.x); pos = PIXIL_POS(g, g->g.Height-g->p.y-g->p.cy, g->p.x);
lineadd = g->g.Height - g->p.cy; lineadd = g->g.Height - g->p.cy;
shape = (g->p.cy << 16) | (g->p.cx); shape = (g->p.cy << 16) | (g->p.cx);
break; break;
} }
#else #else
pos = PIXEL_POS(g, g->p.x, g->p.y); pos = PIXIL_POS(g, g->p.x, g->p.y);
lineadd = g->g.Width - g->p.cx; lineadd = g->g.Width - g->p.cx;
shape = (g->p.cx << 16) | (g->p.cy); shape = (g->p.cx << 16) | (g->p.cy);
#endif #endif
#if STM32LTDC_DMA_CACHE_FLUSH #if LTDC_DMA_CACHE_FLUSH
{ {
// This is slightly less than optimal as we flush the whole line in the source and destination image // This is slightly less than optimal as we flush the whole line in the source and destination image
// instead of just the cx portion but this saves us having to iterate over each line. // instead of just the cx portion but this saves us having to iterate over each line.
@ -572,10 +521,10 @@ LLDSPEC gColor gdisp_lld_get_pixel_color(GDisplay* g) {
LLDSPEC void gdisp_lld_blit_area(GDisplay* g) { LLDSPEC void gdisp_lld_blit_area(GDisplay* g) {
gU32 srcstart, dststart; gU32 srcstart, dststart;
srcstart = LTDC_PIXELBYTES * ((gU32)g->p.x2 * g->p.y1 + g->p.x1) + (gU32)g->p.ptr; srcstart = LTDC_PIXELBYTES * ((gU32)g->p.x2 * g->p.y1 * + g->p.x1) + (gU32)g->p.ptr;
dststart = (gU32)PIXEL_ADDR(g, PIXEL_POS(g, g->p.x, g->p.y)); dststart = (gU32)PIXEL_ADDR(g, PIXIL_POS(g, g->p.x, g->p.y));
#if STM32LTDC_DMA_CACHE_FLUSH #if LTDC_DMA_CACHE_FLUSH
{ {
// This is slightly less than optimal as we flush the whole line in the source and destination image // This is slightly less than optimal as we flush the whole line in the source and destination image
// instead of just the cx portion but this saves us having to iterate over each line. // instead of just the cx portion but this saves us having to iterate over each line.
@ -618,6 +567,6 @@ LLDSPEC gColor gdisp_lld_get_pixel_color(GDisplay* g) {
} }
#endif #endif
#endif /* STM32LTDC_USE_DMA2D */ #endif /* LTDC_USE_DMA2D */
#endif /* GFX_USE_GDISP */ #endif /* GFX_USE_GDISP */

View file

@ -14,32 +14,29 @@
/* Driver hardware support. */ /* Driver hardware support. */
/*===========================================================================*/ /*===========================================================================*/
#define LTDC_USE_DMA2D GFXON
#define GDISP_HARDWARE_DRAWPIXEL GFXON #define GDISP_HARDWARE_DRAWPIXEL GFXON
#define GDISP_HARDWARE_PIXELREAD GFXON #define GDISP_HARDWARE_PIXELREAD GFXON
#define GDISP_HARDWARE_CONTROL GFXON #define GDISP_HARDWARE_CONTROL GFXON
// Both these pixel formats are supported - pick one. // Both these pixel formats are supported - pick one.
// RGB565 obviously is faster and uses less RAM but with lower color resolution than RGB888 // RGB565 obviously is faster and uses less RAM but with lower color resolution than RGB888
#if defined(STM32LTDC_USE_RGB565) && STM32LTDC_USE_RGB565
#if defined(GDISP_LTDC_USE_RGB565) && GDISP_LTDC_USE_RGB565
#define GDISP_LLD_PIXELFORMAT GDISP_PIXELFORMAT_RGB565 #define GDISP_LLD_PIXELFORMAT GDISP_PIXELFORMAT_RGB565
#if defined(STM32LTDC_USE_LAYER2) && STM32LTDC_USE_LAYER2 #if GDISP_TOTAL_DISPLAYS > 1
#error "GDISP - STM32LTDC: You must use RGB888 pixel format with LTDC when using both layers as only RGB888 currently supports using alpha." #error "LTDC: You must use RGB888 pixel format with LTDC when using dual layers as only RGB888 currently supports using alpha"
#endif #endif
#else #else
#define GDISP_LLD_PIXELFORMAT GDISP_PIXELFORMAT_RGB888 #define GDISP_LLD_PIXELFORMAT GDISP_PIXELFORMAT_RGB888
#endif #endif
/*===========================================================================*/ /*===========================================================================*/
/* Don't change stuff below this line. Please. */ /* Don't change stuff below this line. Please. */
/*===========================================================================*/ /*===========================================================================*/
// LLD command to swap buffers if double buffering is enabled. #if LTDC_USE_DMA2D
#if STM32LTDC_USE_DOUBLEBUFFERING
#define STM32LTDC_CONTROL_SHOW_BUFFER (GDISP_CONTROL_LLD+0)
#endif
// Adjust driver config if DMA2D is enabled.
#if STM32LTDC_USE_DMA2D
// DMA2D supports accelerated fills // DMA2D supports accelerated fills
#define GDISP_HARDWARE_FILLS GFXON #define GDISP_HARDWARE_FILLS GFXON

View file

@ -13,79 +13,13 @@ To use this driver:
3. Add a `board_STM32LTDC.h` to you project directory (or board directory) 3. Add a `board_STM32LTDC.h` to you project directory (or board directory)
based on one of the templates. based on one of the templates.
# Configuration
Configuration options available in `gfxconf.h`:
| Option | Default | Description |
|---------------------------------|----------|------------------------------------------------------------------------------------------------------------------------|
| `STM32LTDC_DMA_CACHE_FLUSH` | `GFXOFF` | Whether to flush the DMA cache on DMA2D operations. This will be turned on automatically on certian platforms/systems. |
| `STM32LTDC_USE_DMA2D` | `GFXON` | Whether to use the DMA2D peripheral for hardware acceleration. |
| `STM32LTDC_USE_LAYER2` | `GFXOFF` | Whether to use the 2nd LTDC layer. See the corresponding section below. |
| `STM32LTDC_USE_DOUBLEBUFFERING` | `GFXOFF` | Whether to use double buffering. See the corresponding section below. |
| `STM32LTDC_USE_RGB565` | `GFXOFF` | Whether to use RGB565 instead of RGB888. |
# 2nd layer # 2nd layer
To use the 2nd LTDC layer: Two things need to happen in order to use the 2nd LTDC layer:
- set `STM32LTDC_USE_LAYER2` to `GFXON` in `gfxconf.h`. - Set `LTDC_USE_2ND_LAYER` to `GFXON` in the board file.
- set `GDISP_TOTAL_DISPLAYS` to `2` in `gfxconf.h`. - Set `GDISP_TOTAL_DISPLAYS` to `2` in `gfxconf.h`.
The 2nd layer is exposed as a separate display. Use `gdispGetDisplay()` to retrieve the individual layers. The 2nd layer is exposed as a separate display. Use `gdispGetDisplay()` to retrieve the individual layers.
For more information, see: For more information, see:
- https://wiki.ugfx.io/index.php/Multiple_displays#Example_-_Same_controller - https://wiki.ugfx.io/index.php/Multiple_displays#Example_-_Same_controller
- https://wiki.ugfx.io/index.php/Multiple_displays#Access_the_displays - https://wiki.ugfx.io/index.php/Multiple_displays#Access_the_displays
# Double buffering
To use double buffering:
- set `STM32LTDC_USE_DOUBLEBUFFERING` to `GFXON` in `gfxconf.h`.
- set `GDISP_TOTAL_DISPLAYS` to `2` in `gfxconf.h`.
When double buffering is enabled, the 2nd LTDC layer cannot be used. While this limitation is easy to remove from a software perspective, there is little benefit in doing so. Double buffering requires, as the name implies, twice the memory. If the 2nd layer would be used together with double buffering strategy, a total of four full framebuffers would be required. Years of real-world experience shows that there's practically never enough memory bandwidth available to do this.
To use double buffering in an application, retrieve the two buffers via `gdispGetDisplay()`.
Whenever a buffer swap is necessary, use `gdispGControl(g, STM32LTDC_CONTROL_SHOW_BUFFER, NULL);` where `g` is the buffer to be shown.
Simple example:
```c
#include "gfx.h"
static GDisplay* _display1;
static GDisplay* _display2;
// Requests a buffer swap on the driver level
static void _setActiveBuffer(GDisplay* g)
{
gdispGControl(g, STM32LTDC_CONTROL_SHOW_BUFFER, NULL);
}
int main(void)
{
// Initialize uGFX library
gfxInit();
// Get the two buffers
_display1 = gdispGetDisplay(0);
if (!_display1)
gfxHalt("could not get display 1");
_display2 = gdispGetDisplay(1);
if (!_display2)
gfxHalt("could not get display 2");
// Render to each buffer
gdispGClear(_display1, GFX_BLUE);
gdispGClear(_display2, GFX_RED);
// Switch between buffers
while (gTrue) {
gfxSleepMilliseconds(800);
_setActiveBuffer(_display1);
gfxSleepMilliseconds(800);
_setActiveBuffer(_display2);
}
return 0;
}
```

View file

@ -1,8 +0,0 @@
list(APPEND ugfx_INCLUDE_DIRS
${CMAKE_CURRENT_LIST_DIR}
)
list(APPEND ugfx_SOURCES
${CMAKE_CURRENT_LIST_DIR}/gdisp_lld_framebuffer.c
)

View file

@ -24,7 +24,6 @@ S6D1121 - Mid-sized color LCD displays eg RGB565 320x240
SPFD54124B - Mid-sized color LCD displays eg RGB565 320x240 SPFD54124B - Mid-sized color LCD displays eg RGB565 320x240
SSD1289 - Mid-sized color LCD displays eg RGB565 320x240 SSD1289 - Mid-sized color LCD displays eg RGB565 320x240
SSD1306 - Small monochrome LCD SSD1306 - Small monochrome LCD
SSD1312 - Small monochrome LCD (usually 128x32 or 128x64 OLED)
SSD1322 - Small 16 level grayscale LCD SSD1322 - Small 16 level grayscale LCD
SSD1331 - Small hardware accelerated OLED display RGB565 96x64 SSD1331 - Small hardware accelerated OLED display RGB565 96x64
SSD1351 - Mid-sized color LCD displays eg RGB565 320x240 SSD1351 - Mid-sized color LCD displays eg RGB565 320x240

View file

@ -1,8 +0,0 @@
list(APPEND ugfx_INCLUDE_DIRS
${CMAKE_CURRENT_LIST_DIR}
)
list(APPEND ugfx_SOURCES
${CMAKE_CURRENT_LIST_DIR}/gmouse_lld_linux_event.c
)

View file

@ -1,48 +0,0 @@
set(ROOT_PATH ${UGFX_ROOT}/drivers/multiple/SDL)
# Defaults
if (NOT UGFX_DEPENDENCY_SDL2_DOWNLOAD)
set(UGFX_DEPENDENCY_SDL2_DOWNLOAD OFF)
endif()
# Get or find SDL2
if (UGFX_DEPENDENCY_SDL2_DOWNLOAD)
include(FetchContent)
FetchContent_Declare(
SDL2
GIT_REPOSITORY https://github.com/libsdl-org/SDL
GIT_TAG release-2.26.5
)
FetchContent_MakeAvailable(SDL2)
if (NOT UGFX_DEPENDENCY_SDL2_TARGET)
set(UGFX_DEPENDENCY_SDL2_TARGET SDL2-static)
endif()
else()
find_package(
SDL2
REQUIRED
)
if (NOT UGFX_DEPENDENCY_SDL2_TARGET)
set(UGFX_DEPENDENCY_SDL2_TARGET SDL2::SDL2)
endif()
endif()
list(APPEND ugfx_INCLUDE_DIRS
${ROOT_PATH}
)
list(APPEND ugfx_SOURCES
${ROOT_PATH}/gdisp_lld_SDL.c
)
list(APPEND ugfx_DEFS
GFX_OS_PRE_INIT_FUNCTION=sdl_driver_init
)
list(APPEND ugfx_LIBS
${UGFX_DEPENDENCY_SDL2_TARGET}
)

View file

@ -174,8 +174,8 @@ static struct SDL_UGFXContext *context;
static sem_t *ctx_mutex; static sem_t *ctx_mutex;
static sem_t *input_event; static sem_t *input_event;
#define CTX_MUTEX_NAME "/ugfx_ctx_mutex" #define CTX_MUTEX_NAME "ugfx_ctx_mutex"
#define INPUT_EVENT_NAME "/ugfx_input_event" #define INPUT_EVENT_NAME "ugfx_input_event"
static int SDL_loop (void) { static int SDL_loop (void) {
@ -311,12 +311,12 @@ static void *SDL_input_event_loop (void *arg) {
// Must be executed on early stage of initialization: before threads and timer // Must be executed on early stage of initialization: before threads and timer
void sdl_driver_init (void) { void sdl_driver_init (void) {
if (SDL_Init(SDL_INIT_VIDEO | SDL_INIT_EVENTS) != 0){ if (SDL_Init(SDL_INIT_EVERYTHING) != 0){
fprintf(stderr, "Unable to initialize SDL: %s\n", SDL_GetError()); fprintf(stderr, "Unable to initialize SDL: %s\n", SDL_GetError());
exit (1) ; exit (1) ;
} }
if ((context = (struct SDL_UGFXContext*) mmap (0, sizeof(struct SDL_UGFXContext), PROT_WRITE|PROT_READ, (MAP_ANONYMOUS | MAP_SHARED), -1, 0)) == MAP_FAILED) { if ((context = (struct SDL_UGFXContext*) mmap (0,sizeof (struct SDL_UGFXContext ),PROT_WRITE|PROT_READ,(MAP_ANONYMOUS | MAP_SHARED),0,0)) ==MAP_FAILED) {
perror("Failed to allocate shared memory"); perror("Failed to allocate shared memory");
exit(1); exit(1);
} }

View file

@ -24,4 +24,3 @@ and a touchscreen driver.
4. Modify your makefile to add `sdl2-config --libs --cflags` to the CFLAGS line. i.e. 4. Modify your makefile to add `sdl2-config --libs --cflags` to the CFLAGS line. i.e.
CFLAGS = `sdl2-config --libs --cflags` CFLAGS = `sdl2-config --libs --cflags`

View file

@ -1,13 +0,0 @@
set(ROOT_PATH ${UGFX_ROOT}/drivers/multiple/Win32)
list(APPEND ugfx_INCLUDE_DIRS
${ROOT_PATH}
)
list(APPEND ugfx_SOURCES
${ROOT_PATH}/gdisp_lld_Win32.c
)
list(APPEND ugfx_LIBS
gdi32
)

View file

@ -647,30 +647,12 @@ static LRESULT myWindowProc(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam)
#endif #endif
#if GFX_USE_GINPUT && GINPUT_NEED_KEYBOARD #if GFX_USE_GINPUT && GINPUT_NEED_KEYBOARD
case WM_ACTIVATE:
// Copy the lock key states into the uGFX keyboard as it might have changed while we were away
// For simplicity we do this on both activate and deactivate.
if (keyboard && keyboard->pLayout) {
if (GetKeyState(VK_NUMLOCK) & 1)
keyboard->keystate |= GKEYSTATE_NUMLOCK;
else
keyboard->keystate &= ~GKEYSTATE_NUMLOCK;
if (GetKeyState(VK_CAPITAL) & 1)
keyboard->keystate |= GKEYSTATE_CAPSLOCK;
else
keyboard->keystate &= ~GKEYSTATE_CAPSLOCK;
if (GetKeyState(VK_SCROLL) & 1)
keyboard->keystate |= GKEYSTATE_SCROLLLOCK;
else
keyboard->keystate &= ~GKEYSTATE_SCROLLLOCK;
}
break;
case WM_SYSKEYDOWN: case WM_SYSKEYDOWN:
case WM_SYSKEYUP: case WM_SYSKEYUP:
case WM_KEYDOWN: case WM_KEYDOWN:
case WM_KEYUP: case WM_KEYUP:
// A layout is being used: Send scan codes to the keyboard buffer // A layout is being used: Send scan codes to the keyboard buffer
if (keyboard && keyboard->pLayout && keypos < (int)sizeof(keybuffer)-1 && (wParam & 0xFF) >= VK_BACK) { if (keyboard && keyboard->pLayout && keypos < (int)sizeof(keybuffer)-1 && (wParam & 0xFF) > 0x01) {
if (Msg == WM_KEYUP || Msg == WM_SYSKEYUP) if (Msg == WM_KEYUP || Msg == WM_SYSKEYUP)
keybuffer[keypos++] = 0x00; // Keyup keybuffer[keypos++] = 0x00; // Keyup
else if (HIWORD(lParam) & KF_REPEAT) else if (HIWORD(lParam) & KF_REPEAT)
@ -1297,17 +1279,11 @@ LLDSPEC gBool gdisp_lld_init(GDisplay *g) {
gPixel * buffer; gPixel * buffer;
RECT rect; RECT rect;
BITMAPV4HEADER bmpInfo; BITMAPV4HEADER bmpInfo;
#if GDISP_NEED_CONTROL
gPixel* bufferBase;
#endif
// Make everything relative to the start of the line // Make everything relative to the start of the line
priv = g->priv; priv = g->priv;
buffer = g->p.ptr; buffer = g->p.ptr;
buffer += g->p.x2 * g->p.y1 + g->p.x1; buffer += g->p.x2*g->p.y1;
#if GDISP_NEED_CONTROL
bufferBase = buffer; // Keep pointer to original buffer for correct free()-ing later on
#endif
memset(&bmpInfo, 0, sizeof(bmpInfo)); memset(&bmpInfo, 0, sizeof(bmpInfo));
bmpInfo.bV4Size = sizeof(bmpInfo); bmpInfo.bV4Size = sizeof(bmpInfo);
@ -1393,7 +1369,7 @@ LLDSPEC gBool gdisp_lld_init(GDisplay *g) {
#endif #endif
#if GDISP_NEED_CONTROL #if GDISP_NEED_CONTROL
if (bufferBase != buffer) if (buffer != (gPixel *)g->p.ptr)
free(buffer); free(buffer);
#endif #endif
} }

View file

@ -1,14 +0,0 @@
set(ROOT_PATH ${UGFX_ROOT}/drivers/multiple/X)
list(APPEND ugfx_INCLUDE_DIRS
${ROOT_PATH}
)
list(APPEND ugfx_SOURCES
${ROOT_PATH}/gdisp_lld_X.c
)
list(APPEND ugfx_LIBS
X11
)

View file

@ -36,7 +36,6 @@
// #define GFX_FREERTOS_USE_TRACE GFXOFF // #define GFX_FREERTOS_USE_TRACE GFXOFF
//#define GFX_USE_OS_WIN32 GFXOFF //#define GFX_USE_OS_WIN32 GFXOFF
//#define GFX_USE_OS_LINUX GFXOFF //#define GFX_USE_OS_LINUX GFXOFF
//#define GFX_USE_OS_FREEBSD GFXOFF
//#define GFX_USE_OS_OSX GFXOFF //#define GFX_USE_OS_OSX GFXOFF
//#define GFX_USE_OS_ECOS GFXOFF //#define GFX_USE_OS_ECOS GFXOFF
//#define GFX_USE_OS_RAWRTOS GFXOFF //#define GFX_USE_OS_RAWRTOS GFXOFF

View file

@ -1,4 +1,5 @@
Homepage: https://ugfx.io Homepage: http://ugfx.io
Documentation: https://wiki.ugfx.io Documentation: http://wiki.ugfx.io
API-Reference: https://api.ugfx.io API-Reference: http://api.ugfx.io
Forum: https://community.ugfx.io Forum: http://community.ugfx.io
uGFX-Studio: http://studio.ugfx.io

View file

@ -1,9 +0,0 @@
set(ROOT_PATH ${UGFX_ROOT}/src/gadc)
list(APPEND ugfx_INCLUDE_DIRS
${ROOT_PATH}
)
list(APPEND ugfx_SOURCES
${ROOT_PATH}/gadc.c
)

View file

@ -1,9 +0,0 @@
set(ROOT_PATH ${UGFX_ROOT}/src/gaudio)
list(APPEND ugfx_INCLUDE_DIRS
${ROOT_PATH}
)
list(APPEND ugfx_SOURCES
${ROOT_PATH}/gaudio.c
)

View file

@ -11,7 +11,7 @@
#error The font file is not compatible with this version of mcufont. #error The font file is not compatible with this version of mcufont.
#endif #endif
static const gU8 mf_bwfont_DejaVuSans10_glyph_data_0[1222] PROGMEM = { static const gU8 mf_bwfont_DejaVuSans10_glyph_data_0[1222] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xbe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xbe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00,
0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0xe8, 0x00, 0x3e, 0x00, 0x28, 0x00, 0xf8, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0xe8, 0x00, 0x3e, 0x00, 0x28, 0x00, 0xf8, 0x00,
0x2e, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x98, 0x00, 0x94, 0x00, 0xfe, 0x01, 0xa4, 0x00, 0x2e, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x98, 0x00, 0x94, 0x00, 0xfe, 0x01, 0xa4, 0x00,
@ -91,7 +91,7 @@ static const gU8 mf_bwfont_DejaVuSans10_glyph_data_0[1222] PROGMEM = {
0x20, 0x00, 0x20, 0x00, 0x10, 0x00, 0x20, 0x00, 0x20, 0x00, 0x10, 0x00,
}; };
static const gU16 mf_bwfont_DejaVuSans10_glyph_offsets_0[96] PROGMEM = { static const gU16 mf_bwfont_DejaVuSans10_glyph_offsets_0[96] = {
0x0000, 0x0000, 0x0004, 0x0009, 0x0012, 0x0019, 0x0023, 0x002c, 0x0000, 0x0000, 0x0004, 0x0009, 0x0012, 0x0019, 0x0023, 0x002c,
0x002f, 0x0033, 0x0037, 0x003d, 0x0046, 0x0049, 0x004e, 0x0051, 0x002f, 0x0033, 0x0037, 0x003d, 0x0046, 0x0049, 0x004e, 0x0051,
0x0055, 0x005c, 0x0063, 0x006a, 0x0071, 0x0078, 0x007f, 0x0086, 0x0055, 0x005c, 0x0063, 0x006a, 0x0071, 0x0078, 0x007f, 0x0086,
@ -106,7 +106,7 @@ static const gU16 mf_bwfont_DejaVuSans10_glyph_offsets_0[96] PROGMEM = {
0x0238, 0x023f, 0x0246, 0x024c, 0x0252, 0x0255, 0x025b, 0x0263, 0x0238, 0x023f, 0x0246, 0x024c, 0x0252, 0x0255, 0x025b, 0x0263,
}; };
static const gU8 mf_bwfont_DejaVuSans10_glyph_widths_0[95] PROGMEM = { static const gU8 mf_bwfont_DejaVuSans10_glyph_widths_0[95] = {
0x03, 0x04, 0x05, 0x08, 0x06, 0x0a, 0x09, 0x03, 0x04, 0x04, 0x05, 0x08, 0x03, 0x04, 0x03, 0x03, 0x03, 0x04, 0x05, 0x08, 0x06, 0x0a, 0x09, 0x03, 0x04, 0x04, 0x05, 0x08, 0x03, 0x04, 0x03, 0x03,
0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x03, 0x03, 0x08, 0x08, 0x08, 0x05, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x03, 0x03, 0x08, 0x08, 0x08, 0x05,
0x0b, 0x07, 0x07, 0x08, 0x08, 0x07, 0x06, 0x08, 0x08, 0x03, 0x03, 0x07, 0x06, 0x09, 0x08, 0x08, 0x0b, 0x07, 0x07, 0x08, 0x08, 0x07, 0x06, 0x08, 0x08, 0x03, 0x03, 0x07, 0x06, 0x09, 0x08, 0x08,

View file

@ -11,7 +11,7 @@
#error The font file is not compatible with this version of mcufont. #error The font file is not compatible with this version of mcufont.
#endif #endif
static const gU8 mf_bwfont_DejaVuSans12_glyph_data_0[1372] PROGMEM = { static const gU8 mf_bwfont_DejaVuSans12_glyph_data_0[1372] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0x03, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0x03, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00,
0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x90, 0x02, 0xf0, 0x01, 0x9c, 0x00, 0x90, 0x03, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x90, 0x02, 0xf0, 0x01, 0x9c, 0x00, 0x90, 0x03,
0xf8, 0x00, 0x94, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x01, 0x24, 0x02, 0xf8, 0x00, 0x94, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x01, 0x24, 0x02,
@ -100,7 +100,7 @@ static const gU8 mf_bwfont_DejaVuSans12_glyph_data_0[1372] PROGMEM = {
0x20, 0x00, 0x20, 0x00, 0x40, 0x00, 0x40, 0x00, 0x40, 0x00, 0x20, 0x00, 0x20, 0x00, 0x20, 0x00, 0x40, 0x00, 0x40, 0x00, 0x40, 0x00, 0x20, 0x00,
}; };
static const gU16 mf_bwfont_DejaVuSans12_glyph_offsets_0[96] PROGMEM = { static const gU16 mf_bwfont_DejaVuSans12_glyph_offsets_0[96] = {
0x0000, 0x0000, 0x0004, 0x0009, 0x0013, 0x001b, 0x0026, 0x0030, 0x0000, 0x0000, 0x0004, 0x0009, 0x0013, 0x001b, 0x0026, 0x0030,
0x0033, 0x0038, 0x003d, 0x0044, 0x004d, 0x0050, 0x0055, 0x0058, 0x0033, 0x0038, 0x003d, 0x0044, 0x004d, 0x0050, 0x0055, 0x0058,
0x005d, 0x0065, 0x006c, 0x0074, 0x007c, 0x0084, 0x008c, 0x0094, 0x005d, 0x0065, 0x006c, 0x0074, 0x007c, 0x0084, 0x008c, 0x0094,
@ -115,7 +115,7 @@ static const gU16 mf_bwfont_DejaVuSans12_glyph_offsets_0[96] PROGMEM = {
0x027d, 0x0284, 0x028b, 0x0291, 0x0299, 0x029d, 0x02a4, 0x02ae, 0x027d, 0x0284, 0x028b, 0x0291, 0x0299, 0x029d, 0x02a4, 0x02ae,
}; };
static const gU8 mf_bwfont_DejaVuSans12_glyph_widths_0[95] PROGMEM = { static const gU8 mf_bwfont_DejaVuSans12_glyph_widths_0[95] = {
0x04, 0x05, 0x05, 0x0a, 0x08, 0x0b, 0x0a, 0x03, 0x05, 0x05, 0x06, 0x0a, 0x04, 0x04, 0x04, 0x04, 0x04, 0x05, 0x05, 0x0a, 0x08, 0x0b, 0x0a, 0x03, 0x05, 0x05, 0x06, 0x0a, 0x04, 0x04, 0x04, 0x04,
0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x0a, 0x0a, 0x0a, 0x06, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x04, 0x04, 0x0a, 0x0a, 0x0a, 0x06,
0x0d, 0x08, 0x08, 0x08, 0x09, 0x08, 0x07, 0x09, 0x09, 0x03, 0x03, 0x07, 0x06, 0x0a, 0x09, 0x09, 0x0d, 0x08, 0x08, 0x08, 0x09, 0x08, 0x07, 0x09, 0x09, 0x03, 0x03, 0x07, 0x06, 0x0a, 0x09, 0x09,

View file

@ -11,197 +11,195 @@
#error The font file is not compatible with this version of mcufont. #error The font file is not compatible with this version of mcufont.
#endif #endif
static const gU8 mf_rlefont_DejaVuSans12_aa_dictionary_data[295] PROGMEM = { static const gU8 mf_rlefont_DejaVuSans12_aa_dictionary_data[329] = {
0x2a, 0xce, 0xc1, 0x09, 0x07, 0x80, 0x04, 0x80, 0x01, 0x0a, 0x1f, 0xcc, 0x07, 0x08, 0x10, 0x04, 0x27, 0x02, 0x0b, 0x80, 0x01, 0x80, 0x07, 0x80, 0x04, 0x80, 0x02, 0x80, 0x06, 0x04, 0x80, 0x02,
0x40, 0x1e, 0x86, 0xcb, 0xc8, 0x80, 0x05, 0x80, 0x02, 0x05, 0x02, 0xc1, 0x0b, 0x80, 0x07, 0x80, 0x0e, 0xc9, 0xde, 0xc7, 0x0a, 0x06, 0x2a, 0x10, 0x84, 0x07, 0x80, 0x02, 0x80, 0x0c, 0x80, 0x0c,
0x0b, 0x29, 0x81, 0x02, 0xc3, 0x80, 0xc6, 0xc3, 0xc8, 0xcd, 0xc8, 0xc3, 0xcb, 0xc4, 0xca, 0xc3, 0x0f, 0x80, 0x08, 0xcd, 0xc3, 0x86, 0x0d, 0x0c, 0xc2, 0xca, 0x29, 0xc8, 0xcb, 0xc4, 0xcc, 0xce,
0xc4, 0xcb, 0xc7, 0xcb, 0x06, 0x07, 0xcd, 0x80, 0xc7, 0xc8, 0xc9, 0xc6, 0xcd, 0xc4, 0x01, 0xc2, 0xc7, 0xcc, 0xc6, 0xcd, 0xc8, 0xcd, 0xc2, 0x01, 0xde, 0xc4, 0xce, 0xcd, 0xc4, 0xc3, 0xce, 0xc7,
0xcd, 0xc5, 0x80, 0x0c, 0x80, 0x05, 0x80, 0xc1, 0xcc, 0xc3, 0xc3, 0xcc, 0x80, 0x04, 0x03, 0xcd, 0xcb, 0xc5, 0xcb, 0x06, 0x80, 0x02, 0xc5, 0xcd, 0x07, 0xc6, 0xcd, 0xc5, 0xcc, 0x82, 0xc7, 0xcc,
0xc2, 0xc5, 0xcd, 0xc2, 0xca, 0x84, 0xc7, 0xc9, 0xc9, 0xce, 0xcc, 0xc6, 0xca, 0xc6, 0x02, 0xc1, 0xc3, 0xcd, 0x09, 0xc6, 0x0b, 0xc6, 0xca, 0xd1, 0xc1, 0xcd, 0xc8, 0xcd, 0xca, 0xc6, 0xce, 0xc2,
0xcd, 0xcb, 0xc2, 0xcd, 0xce, 0xd1, 0xc2, 0xce, 0xce, 0xc3, 0xc3, 0xcd, 0xc2, 0xcd, 0xc4, 0xcc, 0x01, 0xc3, 0x40, 0x03, 0xcc, 0xc3, 0x03, 0x80, 0xc1, 0x02, 0xc7, 0xce, 0x08, 0xca, 0xc4, 0x01,
0x05, 0x80, 0xca, 0xc4, 0xce, 0xc5, 0xc1, 0xce, 0xce, 0xc6, 0xcb, 0xc5, 0x80, 0x01, 0x0e, 0xc8, 0xc2, 0xc7, 0xc9, 0xc2, 0xce, 0xce, 0xc9, 0x01, 0x80, 0xc9, 0xc7, 0x01, 0x80, 0xce, 0xd2, 0xcb,
0xd1, 0xc8, 0x80, 0xcc, 0x01, 0xc6, 0xc9, 0xc7, 0xc4, 0xce, 0x01, 0xc1, 0xc4, 0xcd, 0x0c, 0x80, 0xc4, 0xca, 0xc5, 0xc1, 0x05, 0xc9, 0xc1, 0xcc, 0xc4, 0xcc, 0xc2, 0xc7, 0xc8, 0xca, 0xc2, 0xce,
0xc2, 0xc5, 0xcc, 0xce, 0xc2, 0xc1, 0xde, 0xc5, 0xcb, 0xcd, 0xc3, 0xc9, 0xc1, 0x0f, 0x02, 0x80, 0xc1, 0x81, 0x80, 0xc2, 0xcb, 0xc4, 0xcb, 0xc5, 0xca, 0xc7, 0x80, 0x07, 0xc4, 0xcb, 0xc2, 0xc1,
0xc6, 0xcc, 0xca, 0xc7, 0xce, 0xc2, 0x82, 0xdd, 0x0f, 0x4d, 0x02, 0x0b, 0x07, 0x37, 0x0f, 0x05, 0xc2, 0xcd, 0xce, 0xcb, 0xcb, 0xce, 0xc3, 0xcc, 0xc4, 0xcd, 0x80, 0xcc, 0xc1, 0xce, 0xcd, 0xc6,
0x4e, 0x40, 0x26, 0x55, 0xf6, 0x64, 0x3e, 0x37, 0x0d, 0x1b, 0x36, 0x65, 0x26, 0x53, 0x26, 0x55, 0x28, 0x28, 0x28, 0x28, 0x0f, 0x2e, 0x28, 0x02, 0x45, 0x2e, 0xbc, 0x6f, 0x02, 0x27, 0x01, 0x19,
0x4d, 0x02, 0xa5, 0x1b, 0x36, 0xa5, 0x1b, 0x04, 0x0a, 0x37, 0x04, 0x51, 0x36, 0x4b, 0x5f, 0x0a, 0x07, 0x0a, 0x23, 0x03, 0x45, 0x1f, 0xc6, 0xc5, 0x95, 0xc8, 0x00, 0x01, 0x19, 0x32, 0x3f, 0x0f,
0x36, 0x44, 0x4d, 0x02, 0x0b, 0x2a, 0x44, 0x2e, 0x2a, 0x42, 0x2a, 0x44, 0x2e, 0x2a, 0x08, 0x0c, 0x52, 0x58, 0x50, 0xa4, 0x0b, 0x5c, 0x07, 0x3f, 0x67, 0x19, 0x44, 0x3f, 0xc5, 0x6b, 0x67, 0x19,
0x04, 0x0a, 0x67, 0x07, 0x1e, 0x3f, 0x26, 0x58, 0x37, 0x2f, 0x4e, 0x09, 0x03, 0x0b, 0x3e, 0x26, 0x6e, 0x19, 0xa4, 0x0b, 0x5c, 0x08, 0x19, 0xa4, 0x23, 0xc6, 0x74, 0x27, 0x01, 0x08, 0x0c, 0x21,
0x55, 0x64, 0x07, 0x0a, 0x43, 0x94, 0x3e, 0x37, 0x3e, 0x37, 0x02, 0x1c, 0x0d, 0x06, 0x29, 0x58, 0x6b, 0x31, 0x5c, 0x6b, 0x36, 0x4d, 0x1c, 0x5f, 0x36, 0x4d, 0x6b, 0x31, 0x5c, 0x2a, 0x40, 0x0f,
0x37, 0x1a, 0x3c, 0x25, 0x36, 0x25, 0x36, 0x4d, 0x02, 0x0b, 0x0f, 0x1f, 0x53, 0x36, 0x25, 0x36, 0x4f, 0x19, 0xa4, 0x0a, 0x6d, 0x43, 0x3f, 0x51, 0x74, 0x3f, 0xc5, 0x1c, 0x23, 0xa4, 0x2e, 0x3a,
0x44, 0x1c, 0x5f, 0x36, 0x55, 0x64, 0x0f, 0x1c, 0x21, 0x2e, 0x0e, 0x04, 0x01, 0x04, 0x51, 0x37, 0x5e, 0x38, 0x03, 0x23, 0x4b, 0x50, 0x47, 0x23, 0x36, 0x19, 0x6e, 0x3d, 0x50, 0x1d, 0xcc, 0xa4,
0x05, 0x19, 0x26, 0x58, 0x37, 0x26, 0xc8, 0x5f, 0x1d, 0x4b, 0x50, 0x47, 0x23, 0x3a, 0x04, 0x01, 0x38, 0x03, 0x3f, 0x0f, 0x1a, 0x72, 0x39,
0x0f, 0x22, 0x19, 0x1c, 0x5f, 0x28, 0x28, 0x37, 0x08, 0x53, 0x2e, 0x24, 0x28, 0x22, 0x25, 0x0a,
0x45, 0x0f, 0x45, 0x0c, 0x08, 0x48, 0x08, 0x0c, 0x3f,
}; };
static const gU16 mf_rlefont_DejaVuSans12_aa_dictionary_offsets[122] PROGMEM = { static const gU16 mf_rlefont_DejaVuSans12_aa_dictionary_offsets[122] = {
0x0000, 0x0001, 0x0003, 0x0004, 0x0009, 0x000a, 0x000b, 0x000d, 0x0000, 0x0001, 0x0002, 0x0003, 0x0005, 0x000b, 0x000d, 0x000e,
0x000e, 0x000f, 0x0010, 0x0012, 0x0013, 0x0015, 0x0018, 0x0019, 0x0010, 0x0011, 0x0014, 0x0015, 0x0016, 0x0017, 0x0018, 0x0019,
0x001a, 0x001c, 0x001d, 0x001f, 0x0021, 0x0022, 0x0023, 0x0025, 0x001c, 0x0020, 0x0021, 0x0023, 0x0025, 0x0026, 0x0027, 0x0028,
0x0027, 0x002a, 0x002c, 0x002e, 0x0030, 0x0032, 0x0034, 0x0035, 0x002a, 0x002b, 0x002d, 0x002f, 0x0031, 0x0033, 0x0035, 0x0038,
0x0036, 0x0038, 0x003a, 0x003c, 0x003e, 0x0040, 0x0042, 0x0046, 0x0039, 0x003b, 0x003d, 0x003f, 0x0041, 0x0043, 0x0046, 0x0048,
0x0048, 0x004a, 0x004c, 0x004e, 0x004f, 0x0051, 0x0053, 0x0055, 0x0049, 0x004b, 0x004d, 0x004e, 0x0050, 0x0052, 0x0053, 0x0055,
0x0056, 0x0058, 0x005a, 0x005c, 0x005f, 0x0061, 0x0063, 0x0065, 0x0057, 0x0058, 0x005a, 0x005c, 0x005e, 0x0060, 0x0062, 0x0064,
0x0066, 0x0068, 0x006a, 0x006c, 0x006e, 0x0070, 0x0072, 0x0074, 0x0066, 0x0067, 0x006a, 0x006c, 0x006d, 0x006f, 0x0071, 0x0073,
0x0076, 0x0078, 0x007a, 0x007c, 0x007e, 0x007f, 0x0082, 0x0084, 0x0075, 0x0077, 0x0079, 0x007c, 0x007e, 0x0080, 0x0082, 0x0084,
0x0086, 0x0088, 0x008a, 0x008c, 0x008e, 0x008f, 0x0091, 0x0094, 0x0085, 0x0087, 0x0089, 0x008b, 0x008d, 0x008f, 0x0091, 0x0092,
0x0096, 0x0097, 0x0099, 0x009b, 0x009d, 0x009e, 0x00a0, 0x00a2, 0x0094, 0x0096, 0x0098, 0x009a, 0x009c, 0x009e, 0x00a0, 0x00a2,
0x00a4, 0x00a6, 0x00a7, 0x00a8, 0x00ae, 0x00b4, 0x00b5, 0x00b8, 0x00a4, 0x00a6, 0x00a8, 0x00aa, 0x00ac, 0x00ae, 0x00b0, 0x00b4,
0x00c2, 0x00c7, 0x00ca, 0x00d2, 0x00df, 0x00e1, 0x00e9, 0x00ec, 0x00b7, 0x00b9, 0x00bf, 0x00c3, 0x00c5, 0x00ca, 0x00cc, 0x00cf,
0x00ee, 0x00f2, 0x00f4, 0x00f6, 0x00fa, 0x00fc, 0x00fe, 0x0101, 0x00e8, 0x00ef, 0x00fe, 0x010c, 0x010f, 0x011e, 0x0122, 0x012c,
0x0103, 0x0107, 0x010c, 0x0111, 0x0113, 0x0116, 0x0118, 0x0121, 0x012e, 0x0130, 0x0132, 0x0135, 0x0137, 0x013a, 0x013f, 0x0141,
0x0125, 0x0127, 0x0143, 0x0149,
}; };
static const gU8 mf_rlefont_DejaVuSans12_aa_glyph_data_0[2136] PROGMEM = { static const gU8 mf_rlefont_DejaVuSans12_aa_glyph_data_0[2069] = {
0x04, 0x00, 0x10, 0x05, 0x20, 0x83, 0x0e, 0x64, 0x0d, 0x5c, 0x8c, 0x0f, 0x10, 0x05, 0x1c, 0x55, 0x04, 0x00, 0x10, 0x05, 0x25, 0x8b, 0x0e, 0x2e, 0x0d, 0x20, 0x83, 0x0f, 0x10, 0x05, 0x1a, 0x94,
0xc6, 0x82, 0x2a, 0xac, 0x10, 0x0a, 0x1d, 0x0d, 0x01, 0x79, 0x3c, 0x0c, 0x00, 0x08, 0x05, 0x36, 0x1d, 0x94, 0x6b, 0xac, 0x10, 0x0a, 0x29, 0x25, 0x0d, 0x01, 0x5d, 0x3f, 0x55, 0x0c, 0x00, 0x08,
0x05, 0xc3, 0x2a, 0x56, 0x4c, 0x1a, 0x0d, 0x01, 0x79, 0x23, 0x05, 0x36, 0x05, 0x09, 0x00, 0x4d, 0x06, 0x23, 0x05, 0xc3, 0x6b, 0x0a, 0x05, 0x49, 0x45, 0x0d, 0x01, 0x5d, 0x3f, 0x2c, 0x05, 0x23,
0x1f, 0x56, 0x4c, 0x10, 0x08, 0x26, 0x20, 0x8d, 0x04, 0x38, 0x3d, 0x1f, 0x3d, 0x0f, 0x46, 0x1f, 0x05, 0x09, 0x00, 0x0b, 0x02, 0x53, 0x54, 0x49, 0x10, 0x08, 0x19, 0x25, 0x89, 0x72, 0x0f, 0x0d,
0x19, 0x8d, 0x09, 0x38, 0x05, 0x1c, 0x04, 0x0f, 0x0b, 0x0a, 0x27, 0x55, 0x58, 0x1f, 0x09, 0x02, 0x05, 0x53, 0x39, 0x0f, 0x2f, 0x53, 0x65, 0x89, 0x09, 0x0c, 0x0f, 0x05, 0x22, 0x04, 0x0f, 0x0b,
0x0f, 0x45, 0x37, 0x5f, 0x38, 0x3b, 0x1c, 0x3e, 0x10, 0x0b, 0x5c, 0x63, 0x3b, 0x26, 0x63, 0x27, 0x8e, 0x59, 0x74, 0x53, 0x60, 0x0f, 0x72, 0x53, 0x40, 0x0f, 0x39, 0x22, 0x28, 0x10, 0x0b, 0x20,
0x7c, 0x05, 0x0c, 0x26, 0x3d, 0x43, 0xa8, 0x5f, 0x0b, 0x36, 0x3b, 0x54, 0x01, 0x51, 0x36, 0x63, 0x88, 0x19, 0x72, 0x5f, 0x61, 0x41, 0x19, 0x0d, 0x05, 0x1e, 0x96, 0x06, 0x0b, 0x23, 0x39, 0x32,
0x3b, 0x09, 0x09, 0x63, 0x3b, 0x21, 0x2e, 0x19, 0x3b, 0x54, 0x36, 0x0b, 0x06, 0xd6, 0x27, 0x05, 0x74, 0x03, 0x23, 0x88, 0x09, 0x09, 0x88, 0x5f, 0x4d, 0x65, 0x39, 0x32, 0x23, 0x0b, 0x06, 0xd6,
0x0c, 0x26, 0x3b, 0x54, 0x27, 0x3b, 0x26, 0x63, 0x3b, 0x10, 0x0a, 0x20, 0x63, 0x59, 0x1a, 0x3d, 0x5f, 0x41, 0x19, 0x39, 0x32, 0x5f, 0x39, 0x19, 0x88, 0x10, 0x0a, 0x25, 0x72, 0x33, 0x45, 0x0d,
0x01, 0x09, 0x1a, 0x70, 0x29, 0x0b, 0x0b, 0x01, 0x1a, 0x35, 0x34, 0x01, 0x00, 0x53, 0x27, 0x6a, 0x5e, 0x09, 0x45, 0x4c, 0x1a, 0x0b, 0x0b, 0x01, 0x45, 0x3b, 0x6c, 0x01, 0x00, 0x6e, 0x5f, 0x2b,
0x00, 0x54, 0x01, 0x48, 0x27, 0x70, 0x26, 0x05, 0x0c, 0x44, 0x27, 0x09, 0x0b, 0x67, 0x06, 0x0d, 0x00, 0x32, 0x01, 0x56, 0x5f, 0x4c, 0x19, 0x41, 0x36, 0x1e, 0x09, 0x0b, 0x6d, 0x06, 0x35, 0x5f,
0x08, 0x21, 0x28, 0x09, 0x68, 0x0a, 0x41, 0x08, 0x10, 0x03, 0x6c, 0x80, 0x10, 0x05, 0x43, 0x08, 0x7d, 0x09, 0x37, 0x0a, 0x71, 0x08, 0x10, 0x03, 0x29, 0x77, 0x10, 0x05, 0x50, 0x08, 0x8e, 0x7d,
0x0a, 0x1c, 0x58, 0x84, 0x48, 0x29, 0x32, 0x29, 0x19, 0x8c, 0x19, 0x29, 0x32, 0x29, 0x48, 0x1a, 0x4c, 0x22, 0x56, 0x1a, 0x68, 0x1a, 0x65, 0x83, 0x65, 0x1a, 0x68, 0x1a, 0x56, 0x1a, 0x74, 0x78,
0x28, 0x70, 0x29, 0x81, 0x10, 0x05, 0x26, 0x6f, 0x00, 0x87, 0x19, 0x29, 0x3a, 0x29, 0x34, 0x86, 0x7a, 0x10, 0x05, 0x19, 0x6a, 0x22, 0x55, 0x65, 0x1a, 0x09, 0x46, 0x6c, 0x1a, 0x74, 0x2e, 0x87,
0x55, 0x86, 0x21, 0x34, 0x29, 0x3a, 0x87, 0x19, 0x1c, 0x6f, 0x10, 0x06, 0x00, 0x20, 0x8d, 0x09, 0x74, 0x1a, 0x6c, 0x1a, 0x09, 0x06, 0x45, 0x55, 0x65, 0x22, 0x6a, 0x10, 0x06, 0x00, 0x25, 0x89,
0x02, 0x65, 0x09, 0x1f, 0x46, 0x0f, 0x0a, 0x02, 0x1f, 0x46, 0x0f, 0x0a, 0x02, 0x1f, 0x09, 0x02, 0x09, 0x02, 0x67, 0x09, 0x53, 0x2f, 0x0f, 0x64, 0x53, 0x2f, 0x0f, 0x64, 0x53, 0x09, 0x02, 0x67,
0x65, 0x09, 0x27, 0x55, 0x10, 0x0a, 0x00, 0x1d, 0x76, 0x0f, 0x1a, 0x23, 0x1a, 0x80, 0x10, 0x04, 0x09, 0x5f, 0xa4, 0x10, 0x0a, 0x19, 0x24, 0x28, 0x8f, 0xc3, 0x8f, 0x77, 0x10, 0x04, 0x18, 0x4e,
0x22, 0x76, 0x0f, 0x10, 0x04, 0x21, 0x1d, 0x18, 0xbc, 0x10, 0x04, 0x22, 0x76, 0x10, 0x04, 0x20, 0x77, 0x10, 0x04, 0x22, 0x4e, 0xbc, 0x10, 0x04, 0x18, 0x4e, 0x28, 0x10, 0x04, 0x25, 0x44, 0x1a,
0x52, 0x29, 0x39, 0x29, 0x7c, 0x1c, 0x58, 0x8b, 0x0a, 0x29, 0x4b, 0x1a, 0x19, 0x1c, 0x54, 0x29, 0x63, 0x1a, 0x61, 0x22, 0x74, 0x1a, 0x47, 0x1a, 0x0a, 0x46, 0x65, 0x22, 0x32, 0x1a, 0x08, 0x07,
0x08, 0x07, 0x29, 0x6a, 0x10, 0x08, 0x20, 0x08, 0x68, 0x08, 0x1f, 0x6e, 0x02, 0x02, 0x4a, 0x37, 0x1a, 0x2b, 0x10, 0x08, 0x25, 0x08, 0x8c, 0x06, 0x62, 0x02, 0x34, 0x3f, 0x61, 0x7e, 0x65, 0x19,
0x7c, 0x26, 0x04, 0x1e, 0x8f, 0x42, 0x2a, 0x8f, 0x7c, 0x26, 0x04, 0x1e, 0x6e, 0x02, 0x02, 0x4a, 0x74, 0x3f, 0xc5, 0x6b, 0x65, 0x19, 0x74, 0x3f, 0x61, 0x7e, 0x06, 0x62, 0x02, 0x34, 0x53, 0x08,
0x1f, 0x08, 0x68, 0x08, 0x10, 0x08, 0x29, 0xb4, 0x80, 0x83, 0x8d, 0x47, 0x10, 0x08, 0x6c, 0x34, 0x8c, 0x10, 0x08, 0x1a, 0xb4, 0x77, 0x8b, 0x8f, 0xc2, 0x10, 0x08, 0x29, 0x6c, 0x5b, 0x60, 0x3f,
0x68, 0x6b, 0x37, 0x5a, 0x4f, 0x09, 0x0b, 0x86, 0x21, 0x69, 0x1f, 0x2e, 0x44, 0x1a, 0x04, 0x6a, 0x68, 0x48, 0x09, 0x0b, 0x1a, 0x74, 0x1a, 0x3c, 0x22, 0x44, 0x78, 0x72, 0x7b, 0x3e, 0x7b, 0x07,
0x1a, 0x05, 0x6a, 0x1a, 0x07, 0x44, 0x1a, 0xc2, 0x3f, 0x10, 0x08, 0x6c, 0x34, 0x68, 0x6b, 0x37, 0x36, 0x45, 0xc3, 0x01, 0x10, 0x08, 0x29, 0x6c, 0x5b, 0x60, 0x3f, 0x69, 0x48, 0x3b, 0x1a, 0x74,
0x5a, 0x67, 0x35, 0x86, 0x00, 0x28, 0x35, 0x27, 0xb4, 0x70, 0x1f, 0x28, 0x08, 0x0b, 0x86, 0x33, 0x45, 0x7d, 0x3b, 0x1e, 0xa4, 0x5b, 0x78, 0x7d, 0x31, 0x1a, 0x74, 0x3f, 0x64, 0x55, 0x09, 0x0b,
0x3c, 0x09, 0x0b, 0x37, 0x66, 0x0d, 0x6b, 0x10, 0x08, 0x26, 0x20, 0x0b, 0x8d, 0x6e, 0x2a, 0x28, 0x3f, 0x41, 0x0f, 0x0d, 0x60, 0x10, 0x08, 0x19, 0x25, 0x0b, 0x89, 0x06, 0x0c, 0x8f, 0x49, 0x02,
0x44, 0x0f, 0x1a, 0x60, 0xfe, 0x1f, 0x41, 0x6d, 0x1f, 0x0c, 0x02, 0x6d, 0x1f, 0xc3, 0x8c, 0x0f, 0x8f, 0x5a, 0x2a, 0x71, 0x19, 0x2a, 0x62, 0x19, 0x2a, 0xc3, 0x83, 0x0f, 0x10, 0x08, 0x2d, 0xc0,
0x10, 0x08, 0x6c, 0xa3, 0x82, 0x8c, 0x0f, 0x68, 0x4a, 0x29, 0x41, 0x08, 0x29, 0x50, 0x29, 0x50, 0x2a, 0x28, 0x0f, 0x37, 0x0c, 0x46, 0x71, 0x08, 0x1a, 0x57, 0x1a, 0x57, 0x3f, 0x0a, 0x03, 0x55,
0x37, 0x33, 0x01, 0x02, 0x0b, 0x09, 0x37, 0x66, 0x0d, 0x08, 0x10, 0x08, 0x20, 0x7f, 0x0e, 0x3d, 0x0b, 0x09, 0x3f, 0x41, 0x0f, 0x35, 0x10, 0x08, 0x29, 0x4d, 0x70, 0x75, 0x3f, 0x6e, 0x5e, 0x2f,
0x36, 0x3c, 0x3d, 0x01, 0x46, 0x37, 0x4b, 0x1a, 0x0e, 0x07, 0x68, 0x6b, 0x26, 0x55, 0x0a, 0x4f, 0x3f, 0x0a, 0x46, 0x0e, 0x08, 0x37, 0x60, 0x19, 0xa4, 0x0a, 0x48, 0x0a, 0x09, 0x3f, 0x65, 0x19,
0x0a, 0x09, 0x37, 0x8f, 0x0b, 0x01, 0x26, 0x58, 0x36, 0x5f, 0x0a, 0x4f, 0x0a, 0x09, 0x1f, 0x08, 0x74, 0x3f, 0x0b, 0x01, 0x19, 0x74, 0x3f, 0x47, 0x48, 0x0a, 0x09, 0x53, 0x08, 0x37, 0x0a, 0x01,
0x68, 0x0a, 0x01, 0x10, 0x08, 0x5c, 0xc2, 0x0e, 0x29, 0x05, 0x08, 0x29, 0x0c, 0x84, 0x05, 0x09, 0x10, 0x08, 0x2d, 0xc0, 0x5b, 0x1a, 0x05, 0x08, 0x1a, 0x62, 0x22, 0x05, 0x09, 0x1a, 0x62, 0x22,
0x29, 0x0c, 0x84, 0x79, 0x21, 0x40, 0x1c, 0x54, 0x29, 0x5a, 0x10, 0x08, 0x27, 0x87, 0x0b, 0x68, 0x5d, 0x1a, 0x4f, 0x22, 0x32, 0x1a, 0x69, 0x10, 0x08, 0x20, 0x55, 0x70, 0x6f, 0x02, 0x3f, 0x90,
0x4d, 0x37, 0x0c, 0x5d, 0x1e, 0x8f, 0x0a, 0x5d, 0x0a, 0x37, 0x53, 0x2d, 0x44, 0x37, 0x0b, 0x5d, 0x65, 0x19, 0x74, 0x3f, 0x0a, 0x08, 0x48, 0x08, 0x0a, 0x3f, 0x6e, 0x66, 0x36, 0x23, 0x0b, 0x08,
0x0b, 0x37, 0x8f, 0x0c, 0x5d, 0x1e, 0x02, 0x0b, 0x68, 0x4d, 0x10, 0x08, 0x5c, 0x62, 0x09, 0x68, 0x48, 0x31, 0x3f, 0x65, 0x19, 0x74, 0x3f, 0x90, 0x02, 0x70, 0x6f, 0x02, 0x10, 0x08, 0x20, 0x7d,
0x08, 0x1f, 0x09, 0x0a, 0x4f, 0x4b, 0x27, 0x19, 0x28, 0x0b, 0x37, 0x8f, 0x0a, 0x0a, 0x4f, 0x0a, 0x09, 0x8c, 0x09, 0x0a, 0x48, 0x4b, 0x3f, 0x65, 0x00, 0x7d, 0x0b, 0x3f, 0x65, 0x19, 0x74, 0x3f,
0x2a, 0x01, 0x0a, 0x68, 0x07, 0x0e, 0x8b, 0x0a, 0x37, 0x0a, 0x67, 0x05, 0x44, 0x37, 0x05, 0x4e, 0x0a, 0x0a, 0x48, 0x0a, 0x1d, 0x7d, 0x0a, 0x37, 0x52, 0x1a, 0x47, 0x3f, 0x0a, 0x6d, 0x3e, 0x02,
0x0b, 0x03, 0x10, 0x04, 0x18, 0x76, 0x5c, 0x76, 0x10, 0x04, 0x18, 0x76, 0x5c, 0x76, 0x0f, 0x10, 0x3f, 0x40, 0x6f, 0x03, 0x10, 0x04, 0x8d, 0x28, 0x10, 0x04, 0x8d, 0x77, 0x10, 0x0a, 0x50, 0x24,
0x0a, 0x21, 0x18, 0x30, 0x37, 0x04, 0x08, 0x72, 0x31, 0x27, 0x49, 0x0c, 0x07, 0x02, 0x1f, 0x49, 0x4d, 0x4a, 0x3f, 0x04, 0x09, 0x0d, 0x35, 0x03, 0x5f, 0x09, 0x0e, 0x0c, 0x07, 0x02, 0x53, 0x09,
0x0c, 0x07, 0x84, 0x04, 0x09, 0x72, 0x31, 0x1c, 0x30, 0x10, 0x0a, 0x1d, 0x1d, 0x55, 0x23, 0x5c, 0x0e, 0x0c, 0x07, 0x02, 0x22, 0x04, 0x09, 0x0d, 0x35, 0x7b, 0x4d, 0x4a, 0x10, 0x0a, 0x4e, 0x0f,
0xd4, 0x23, 0x10, 0x0a, 0x2c, 0x0d, 0x31, 0x1c, 0x30, 0x0d, 0x08, 0x04, 0x1f, 0x2e, 0x07, 0x0c, 0x2c, 0x2d, 0xa4, 0x2c, 0x10, 0x0a, 0x30, 0x35, 0x7b, 0x4d, 0x4a, 0x35, 0x04, 0x45, 0x4d, 0x43,
0x0e, 0x09, 0x37, 0x3c, 0x07, 0x0c, 0x0e, 0x09, 0x27, 0x30, 0x0d, 0x09, 0x04, 0x37, 0x0d, 0x31, 0x58, 0x3f, 0x55, 0x43, 0x58, 0x1e, 0x4d, 0x4a, 0x0d, 0x09, 0x04, 0x3f, 0x35, 0x03, 0x10, 0x06,
0x10, 0x06, 0x5c, 0x66, 0x40, 0x1f, 0x0b, 0x03, 0x00, 0x45, 0x29, 0x53, 0x87, 0x3d, 0x1c, 0x0c, 0x20, 0x3e, 0x0f, 0x4f, 0x53, 0x0b, 0x03, 0x00, 0x3e, 0x1a, 0x6e, 0x22, 0x6e, 0x05, 0x22, 0x0c,
0x05, 0x8c, 0x00, 0x76, 0x10, 0x0d, 0x37, 0x87, 0x08, 0x38, 0x0e, 0x56, 0x27, 0x61, 0x31, 0x4f, 0x05, 0x83, 0x2d, 0x28, 0x10, 0x0d, 0x25, 0x55, 0x4a, 0x5b, 0x54, 0x5f, 0x38, 0x08, 0x03, 0x48,
0x45, 0x08, 0x43, 0x50, 0x04, 0x43, 0x28, 0x0c, 0x05, 0x26, 0x60, 0x00, 0x03, 0x4e, 0x07, 0x5b, 0x05, 0x35, 0x50, 0x57, 0x04, 0x1e, 0x7d, 0x0c, 0x05, 0x19, 0x5a, 0x44, 0x33, 0x1b, 0x32, 0x19,
0x54, 0x26, 0x44, 0x00, 0x4a, 0x01, 0x06, 0x5b, 0x58, 0xc8, 0x19, 0x62, 0x5b, 0x52, 0x26, 0x44, 0x36, 0x34, 0x01, 0x06, 0x0f, 0x7d, 0x0f, 0xc8, 0x65, 0x7d, 0x1b, 0x44, 0x19, 0x36, 0x34, 0x01,
0x00, 0x4a, 0x01, 0x06, 0x65, 0x4a, 0x26, 0x60, 0x00, 0x03, 0x4e, 0x07, 0x0e, 0x5a, 0x26, 0x3c, 0x06, 0x67, 0x34, 0x19, 0x5a, 0x44, 0x0e, 0x52, 0x69, 0x50, 0x57, 0x03, 0x1a, 0x05, 0x33, 0x02,
0x51, 0x29, 0x05, 0x0e, 0x07, 0x02, 0x3c, 0x81, 0x27, 0x3c, 0x09, 0x38, 0x0d, 0x56, 0x10, 0x08, 0x55, 0x07, 0x0a, 0x5f, 0x55, 0x09, 0x0d, 0x5b, 0x54, 0x10, 0x08, 0x00, 0x25, 0x0d, 0x0d, 0x22,
0x00, 0x20, 0x72, 0x1c, 0x52, 0x6a, 0x1a, 0x60, 0x48, 0x1a, 0x70, 0x50, 0x1f, 0x69, 0x26, 0x5a, 0x44, 0x0d, 0x7b, 0x09, 0x07, 0x56, 0x45, 0x4c, 0x57, 0x53, 0x3c, 0x19, 0x69, 0x3f, 0x69, 0x19,
0x37, 0x5a, 0x26, 0x69, 0x21, 0x28, 0x47, 0x3f, 0x27, 0x48, 0x21, 0x60, 0x27, 0x7c, 0x21, 0x54, 0x3c, 0x5f, 0x7d, 0xc3, 0x01, 0x5f, 0x56, 0x1e, 0x5a, 0x1e, 0x61, 0x1e, 0x32, 0x10, 0x08, 0x79,
0x10, 0x08, 0x64, 0xbc, 0x0e, 0x4d, 0x82, 0x62, 0x07, 0x0c, 0x82, 0x28, 0xf5, 0x55, 0x28, 0x35, 0x43, 0x27, 0x7d, 0xe5, 0x94, 0x7d, 0x3b, 0x1e, 0xbc, 0x5b, 0x03, 0x27, 0x01, 0x3b, 0x23, 0xc6,
0x27, 0xc0, 0x51, 0x82, 0x62, 0x35, 0x36, 0xc6, 0x58, 0x82, 0x62, 0x07, 0x1e, 0x71, 0x0e, 0x40, 0x74, 0x27, 0x01, 0x43, 0x50, 0xb4, 0x5b, 0x4f, 0x10, 0x08, 0x25, 0x32, 0x0f, 0x75, 0x3f, 0x3a,
0x10, 0x08, 0x20, 0x54, 0x5e, 0x05, 0x27, 0x2e, 0x57, 0x01, 0x03, 0x0a, 0x37, 0x4b, 0x1a, 0x44, 0x5e, 0x02, 0x09, 0x3f, 0x0a, 0x46, 0x0d, 0x02, 0x83, 0x36, 0x22, 0x0a, 0x46, 0x3a, 0x5e, 0x02,
0x8c, 0x44, 0x29, 0x4b, 0x37, 0x2e, 0x57, 0x01, 0x03, 0x0a, 0x1f, 0x54, 0x5e, 0x05, 0x10, 0x09, 0x09, 0x53, 0x32, 0x0f, 0x75, 0x10, 0x09, 0x2e, 0xbc, 0x0d, 0x0a, 0x03, 0x27, 0x02, 0x52, 0x03,
0x64, 0xbc, 0x0d, 0x33, 0x82, 0x3c, 0x07, 0x51, 0x36, 0x42, 0x81, 0x36, 0x42, 0x50, 0x26, 0x90, 0x3d, 0x7a, 0xc5, 0x57, 0x5f, 0xc6, 0x7d, 0x1d, 0xc5, 0x57, 0x3d, 0x7a, 0x1b, 0x55, 0x52, 0x03,
0x28, 0x0f, 0x36, 0x42, 0x50, 0x36, 0x42, 0x81, 0x26, 0x94, 0x3c, 0x07, 0x51, 0x43, 0xbc, 0x0e, 0x19, 0xb4, 0x5b, 0x0a, 0x03, 0x10, 0x08, 0x20, 0xc2, 0x6b, 0x77, 0x26, 0x6b, 0x77, 0xc3, 0x10,
0x33, 0x10, 0x08, 0x5c, 0xc2, 0x2a, 0x80, 0x47, 0x2a, 0x80, 0xc3, 0x10, 0x07, 0x5c, 0xc2, 0x1f, 0x07, 0x2d, 0xc0, 0x2a, 0x77, 0xf3, 0x2a, 0x8b, 0x10, 0x09, 0x29, 0x4d, 0x70, 0x73, 0x05, 0x23,
0x80, 0x47, 0x1f, 0x83, 0x10, 0x09, 0x20, 0x7f, 0x68, 0x32, 0x21, 0x2e, 0x59, 0x67, 0x34, 0x36, 0x3a, 0x06, 0x02, 0x4d, 0x0a, 0x23, 0x6a, 0x1a, 0x4c, 0x1a, 0xb5, 0x1d, 0x4c, 0x1e, 0x1d, 0x6a,
0x6f, 0x29, 0x70, 0x36, 0x55, 0xbc, 0x36, 0x70, 0xd4, 0x36, 0x6f, 0x21, 0x42, 0x2e, 0x59, 0x4f, 0x1e, 0x1d, 0x3a, 0x06, 0x48, 0x04, 0x1d, 0x4d, 0x0b, 0x37, 0x68, 0x10, 0x09, 0x53, 0x27, 0x85,
0x04, 0x2a, 0x7f, 0x68, 0x32, 0x10, 0x09, 0x6c, 0x88, 0x88, 0x23, 0x36, 0x88, 0x88, 0x10, 0x03, 0x1f, 0x85, 0x2c, 0x3d, 0x85, 0x1f, 0x85, 0x10, 0x03, 0x29, 0x76, 0x0f, 0x10, 0x03, 0x29, 0x77,
0x6c, 0x83, 0x83, 0x0f, 0x10, 0x03, 0x6c, 0x80, 0x83, 0x2b, 0x58, 0x8b, 0x0b, 0x27, 0x55, 0x40, 0x8b, 0x87, 0x74, 0x1a, 0x06, 0x0b, 0x5f, 0xa4, 0x4f, 0x10, 0x07, 0x53, 0x27, 0x55, 0x39, 0x3d,
0x10, 0x07, 0x29, 0x90, 0x3c, 0x3b, 0x00, 0x55, 0x2e, 0x6a, 0x82, 0x05, 0x6a, 0x1f, 0x2f, 0x44, 0x03, 0x2b, 0x50, 0x94, 0x05, 0x2b, 0x50, 0xa4, 0x40, 0x78, 0x66, 0x04, 0x5f, 0xa4, 0x40, 0x78,
0x27, 0xb4, 0x04, 0x1c, 0x2f, 0x44, 0x21, 0x55, 0x5f, 0x51, 0x21, 0x90, 0x05, 0x51, 0x36, 0xc6, 0x1b, 0x06, 0x0e, 0x03, 0x00, 0x27, 0x05, 0x0e, 0x03, 0x23, 0xc6, 0x05, 0x0e, 0x04, 0x10, 0x06,
0x05, 0x0e, 0x04, 0x10, 0x06, 0x6c, 0x83, 0x83, 0x47, 0x10, 0x0a, 0x6c, 0x2f, 0x21, 0x04, 0x25, 0x29, 0x76, 0x26, 0x10, 0x0a, 0x22, 0xa4, 0x06, 0x1e, 0x04, 0x0f, 0x5f, 0x73, 0x1e, 0x0b, 0x0f,
0x0c, 0x21, 0x0b, 0x25, 0x08, 0x05, 0x26, 0x04, 0x09, 0x25, 0x02, 0x0c, 0x26, 0x0c, 0x02, 0x5b, 0xa4, 0x08, 0x05, 0x19, 0x04, 0x09, 0x0f, 0x5f, 0x67, 0x0c, 0x19, 0x62, 0x1b, 0x94, 0x0a, 0x05,
0x94, 0x0a, 0x05, 0x69, 0xf6, 0x94, 0x54, 0x7c, 0xf6, 0x90, 0x72, 0x26, 0x88, 0x0f, 0x10, 0x09, 0x3c, 0xf6, 0x94, 0x32, 0x61, 0xc6, 0xc8, 0x0d, 0x0d, 0xc8, 0x85, 0x0f, 0x10, 0x09, 0x29, 0x73,
0x6c, 0x5e, 0x94, 0x55, 0x5a, 0xcc, 0x55, 0x52, 0x00, 0xc8, 0x94, 0x60, 0xc8, 0x94, 0x4c, 0x01, 0x94, 0xa4, 0x69, 0xcc, 0xa4, 0x44, 0x00, 0xc8, 0x94, 0x5a, 0xe6, 0x94, 0x49, 0x01, 0x59, 0x3d,
0xe6, 0x90, 0x39, 0xf6, 0x55, 0x28, 0x44, 0x0f, 0x27, 0xc6, 0x05, 0x0a, 0x0f, 0x36, 0x42, 0x0c, 0x63, 0x59, 0x3d, 0x49, 0x02, 0x1d, 0xe5, 0x05, 0x0a, 0x1d, 0xc5, 0x0c, 0x0f, 0x10, 0x09, 0x25,
0x0f, 0x10, 0x09, 0x20, 0x54, 0x0f, 0x7c, 0x27, 0x2e, 0x57, 0x01, 0x7a, 0x43, 0x8a, 0x43, 0x53, 0x32, 0x0f, 0x61, 0x3f, 0x84, 0x36, 0x19, 0x6e, 0x23, 0x86, 0x3e, 0x0f, 0x0d, 0x05, 0x10, 0x08,
0x36, 0x4b, 0x5f, 0x0a, 0x8e, 0x38, 0x3d, 0x10, 0x08, 0x64, 0xbc, 0x0e, 0x0a, 0x02, 0x82, 0x62, 0x1a, 0xb4, 0x5b, 0x64, 0x27, 0x01, 0x31, 0x80, 0x1e, 0xbc, 0x6f, 0x02, 0x3f, 0x8b, 0x10, 0x09,
0x08, 0x0b, 0x36, 0xc6, 0x58, 0x82, 0x62, 0x08, 0x1e, 0x71, 0x0e, 0x4d, 0x37, 0x83, 0x10, 0x09, 0x25, 0x32, 0x73, 0x05, 0x3f, 0x84, 0x36, 0x19, 0x57, 0x23, 0x86, 0x3e, 0x66, 0x05, 0x1a, 0x6a,
0x20, 0x54, 0x5e, 0x05, 0x27, 0x2e, 0x57, 0x01, 0x7a, 0x43, 0x8a, 0x43, 0x50, 0x36, 0x4b, 0x5f, 0x22, 0x55, 0x65, 0x10, 0x08, 0x79, 0x08, 0x0c, 0x80, 0x5f, 0xc0, 0x4c, 0x27, 0x02, 0x69, 0x27,
0x0a, 0x8e, 0x0d, 0x2d, 0x05, 0x29, 0x6f, 0x00, 0x87, 0x19, 0x10, 0x08, 0x64, 0xbc, 0x0e, 0x4d, 0x55, 0x65, 0x23, 0xc5, 0x4b, 0x3d, 0x7e, 0x10, 0x08, 0x20, 0x7d, 0x0a, 0x0e, 0x0f, 0x68, 0x3f,
0x82, 0x62, 0x08, 0x1e, 0xe5, 0x58, 0x82, 0x62, 0x08, 0x1e, 0xf3, 0x70, 0x82, 0x3c, 0x5a, 0x43, 0x0b, 0x08, 0x01, 0x00, 0x6c, 0x3f, 0x65, 0x1a, 0x0b, 0x09, 0x78, 0x7d, 0x09, 0x0d, 0x0e, 0x0a,
0x90, 0x3c, 0x19, 0x36, 0x42, 0x4b, 0x21, 0x42, 0x54, 0x10, 0x08, 0x5c, 0x62, 0x0a, 0x68, 0x32, 0x78, 0x7d, 0x31, 0x1a, 0x74, 0x3f, 0x68, 0x7d, 0x31, 0x3f, 0x6c, 0x5b, 0x64, 0x10, 0x07, 0x20,
0x37, 0x24, 0x4f, 0x34, 0x37, 0x19, 0x29, 0x0b, 0x09, 0x84, 0x01, 0x09, 0x4e, 0x0a, 0x84, 0x01, 0xc3, 0x8f, 0x76, 0x10, 0x09, 0x53, 0x27, 0x85, 0x1f, 0x85, 0x1f, 0x85, 0x2b, 0x50, 0x44, 0x23,
0x08, 0x0b, 0x86, 0x32, 0x4f, 0x08, 0x0b, 0x37, 0x34, 0x68, 0x0a, 0x02, 0x10, 0x07, 0x5c, 0x23, 0x3b, 0x03, 0x4d, 0x0b, 0x07, 0x3f, 0x07, 0x0d, 0x0f, 0x0d, 0x07, 0x10, 0x08, 0x2d, 0x47, 0x23,
0x1a, 0x83, 0x83, 0x10, 0x09, 0x6c, 0x88, 0x88, 0x88, 0x6a, 0x43, 0x52, 0x36, 0x35, 0x03, 0x00, 0x4b, 0x1e, 0x4c, 0x1e, 0x57, 0x5f, 0x63, 0x1e, 0x08, 0x07, 0x1e, 0x7d, 0x65, 0x00, 0x7d, 0x65,
0x7f, 0x07, 0x37, 0x07, 0x38, 0x0d, 0x07, 0x10, 0x08, 0x26, 0x8b, 0x0a, 0x36, 0x4b, 0x26, 0x70, 0x23, 0x5a, 0x00, 0x56, 0x3f, 0x6e, 0x19, 0x36, 0x3f, 0x0a, 0x05, 0x05, 0x8e, 0x71, 0x4f, 0x22,
0x21, 0x53, 0x27, 0x39, 0x21, 0x08, 0x07, 0x43, 0x28, 0x19, 0x28, 0x19, 0x36, 0x60, 0x26, 0x48, 0x0c, 0x0c, 0x10, 0x0b, 0x20, 0x4f, 0x50, 0x0e, 0x50, 0x71, 0x19, 0x56, 0x00, 0x4d, 0x0f, 0x03,
0x37, 0x53, 0x26, 0x44, 0x1f, 0x0a, 0x05, 0x05, 0x0a, 0x1a, 0x41, 0x40, 0x1c, 0x0c, 0x0c, 0x10, 0x19, 0x5a, 0x00, 0x57, 0x19, 0x07, 0x0f, 0x07, 0x19, 0x4c, 0x50, 0x61, 0x00, 0x0a, 0x09, 0x0a,
0x0b, 0x5c, 0x40, 0x43, 0x0e, 0x43, 0x41, 0x26, 0x48, 0x2e, 0x0f, 0x03, 0x26, 0x60, 0x26, 0x50, 0x00, 0x6c, 0x1e, 0x47, 0x00, 0x0d, 0x6e, 0x00, 0x4b, 0x1e, 0x74, 0x71, 0x00, 0x4f, 0x65, 0x5f,
0x26, 0x07, 0x0f, 0x07, 0x26, 0x70, 0x43, 0x7c, 0x00, 0x0a, 0x09, 0x0a, 0x00, 0x34, 0x43, 0x5f, 0x0b, 0x0b, 0x08, 0x00, 0x31, 0x0a, 0x23, 0x05, 0x0f, 0x04, 0x00, 0x04, 0x0f, 0x05, 0x5f, 0x7d,
0x0a, 0x00, 0x0d, 0x53, 0x00, 0x4b, 0x26, 0x58, 0x41, 0x00, 0x40, 0x19, 0x27, 0x0b, 0x24, 0x00, 0x65, 0x7d, 0x65, 0x10, 0x07, 0x20, 0x0a, 0x08, 0x50, 0x08, 0x0a, 0x23, 0x74, 0x03, 0x4d, 0x65,
0x08, 0x0b, 0x0a, 0x36, 0x05, 0x0f, 0x04, 0x00, 0x04, 0x0f, 0x05, 0x21, 0x28, 0x19, 0x62, 0x19, 0x3f, 0x06, 0x0c, 0x00, 0x34, 0x45, 0x0b, 0x0c, 0x0b, 0x22, 0x04, 0x0f, 0x04, 0x22, 0x0b, 0x0b,
0x10, 0x07, 0x5c, 0x0a, 0x08, 0x43, 0x08, 0x0a, 0x21, 0x28, 0x51, 0x00, 0x03, 0x19, 0x37, 0x6e, 0x0b, 0x45, 0x06, 0x0c, 0x00, 0x34, 0x23, 0x7d, 0x4c, 0x55, 0x65, 0x23, 0x6a, 0x00, 0x7a, 0x10,
0x00, 0x4a, 0x1a, 0x0b, 0x0c, 0x0b, 0x1c, 0x04, 0x0f, 0x04, 0x1c, 0x0b, 0x0b, 0x0b, 0x1a, 0x6e, 0x07, 0x20, 0x69, 0x50, 0x3c, 0x23, 0x71, 0x50, 0x4f, 0x3f, 0x54, 0x00, 0x5d, 0x3f, 0x4d, 0x0b,
0x00, 0x4a, 0x27, 0x28, 0x70, 0x3c, 0x19, 0x36, 0x6f, 0x43, 0x81, 0x10, 0x07, 0x5c, 0x5a, 0x43, 0x00, 0x0b, 0x7b, 0x0a, 0x08, 0x8e, 0x55, 0x67, 0x1a, 0x77, 0x10, 0x09, 0x29, 0xc3, 0x87, 0x63,
0x69, 0x36, 0x41, 0x43, 0x40, 0x37, 0x56, 0x00, 0x79, 0x00, 0x7f, 0x00, 0x0b, 0x03, 0x1a, 0x0a, 0x22, 0x05, 0x8e, 0x4d, 0x0b, 0x45, 0x55, 0x0c, 0x01, 0x53, 0x7d, 0x62, 0x22, 0x68, 0x22, 0x09,
0x08, 0x0a, 0x87, 0x65, 0x8c, 0x3e, 0x10, 0x09, 0x6c, 0xc3, 0x2b, 0x39, 0x1c, 0x05, 0x0a, 0x1c, 0x46, 0x2c, 0x10, 0x05, 0x2e, 0xb4, 0x83, 0x76, 0x66, 0x10, 0x04, 0x20, 0x2b, 0x1a, 0x08, 0x07,
0x7f, 0x87, 0x0c, 0x01, 0x37, 0x28, 0x0c, 0x84, 0x32, 0x1c, 0x3a, 0x29, 0x23, 0x10, 0x05, 0x64, 0x1a, 0x32, 0x2e, 0x65, 0x1a, 0x0a, 0x46, 0x47, 0x1a, 0x74, 0x2e, 0x61, 0x1a, 0x63, 0x1a, 0x44,
0xb4, 0x8c, 0x83, 0x83, 0x2d, 0x10, 0x04, 0x5c, 0x6a, 0x29, 0x08, 0x07, 0x29, 0x54, 0x64, 0x19, 0x10, 0x05, 0x1a, 0xb4, 0x2e, 0x76, 0x6b, 0xb4, 0x10, 0x0a, 0x00, 0x25, 0x04, 0x37, 0x04, 0x53,
0x29, 0x0a, 0x06, 0x8b, 0x0a, 0x86, 0x27, 0x7c, 0x29, 0x39, 0x29, 0x52, 0x10, 0x05, 0x29, 0xb4, 0x05, 0x39, 0x72, 0x05, 0x23, 0x07, 0x62, 0x00, 0x55, 0x0c, 0x07, 0x10, 0x06, 0x3f, 0x25, 0x4e,
0x64, 0x83, 0x83, 0x2a, 0xb4, 0x10, 0x0a, 0x00, 0x20, 0x04, 0x68, 0x04, 0x1f, 0x05, 0x3b, 0x04, 0x4e, 0xc3, 0x10, 0x06, 0x7a, 0x23, 0x63, 0x10, 0x08, 0x30, 0x2f, 0x37, 0x0a, 0x01, 0x3f, 0x61,
0x3d, 0x36, 0x07, 0x0c, 0x02, 0x00, 0x3c, 0x0c, 0x07, 0x10, 0x06, 0x27, 0x20, 0x18, 0x22, 0xc3, 0x48, 0x09, 0x09, 0x1a, 0x49, 0x23, 0x4d, 0x70, 0x66, 0x6b, 0x75, 0x01, 0x7d, 0x6b, 0x0e, 0x05,
0x10, 0x06, 0x26, 0x81, 0x64, 0x39, 0x10, 0x08, 0x2c, 0x46, 0x68, 0x0a, 0x01, 0x37, 0x7c, 0x4f, 0x00, 0x2f, 0x6b, 0x72, 0x0f, 0x75, 0x0f, 0x10, 0x08, 0x19, 0x77, 0x7f, 0x52, 0x58, 0x10, 0x07,
0x09, 0x09, 0x29, 0x4c, 0x37, 0x7f, 0x0e, 0x2d, 0x2a, 0x85, 0x01, 0x62, 0x2a, 0x57, 0x00, 0x46, 0x24, 0x4a, 0x33, 0x53, 0x3b, 0x6d, 0x08, 0x53, 0x2b, 0x83, 0x2b, 0x1a, 0x3b, 0x6d, 0x08, 0x45,
0x2a, 0x04, 0x38, 0x85, 0x0f, 0x10, 0x08, 0x26, 0x80, 0x7e, 0x1f, 0x73, 0x65, 0x2e, 0x77, 0x24, 0x4a, 0x33, 0x10, 0x08, 0x3f, 0x28, 0x2a, 0x81, 0x21, 0x0f, 0x10, 0x08, 0x24, 0x07, 0x0d, 0x0e,
0x37, 0x7e, 0x10, 0x07, 0x18, 0x08, 0x0d, 0x59, 0x1f, 0x35, 0x67, 0x09, 0x1f, 0x6a, 0x8c, 0x6a, 0x60, 0x3f, 0x3b, 0x6d, 0x0a, 0x08, 0x3f, 0x36, 0x00, 0x49, 0x3f, 0x0e, 0xf3, 0x6b, 0x36, 0x22,
0x29, 0x35, 0x67, 0x09, 0x1a, 0x08, 0x0d, 0x59, 0x10, 0x08, 0x82, 0x8c, 0x0f, 0x1f, 0x49, 0x85, 0x3b, 0x02, 0x4d, 0x0a, 0x53, 0x40, 0x73, 0x05, 0x10, 0x04, 0x19, 0x3e, 0x89, 0x2b, 0x1a, 0x2a,
0x2a, 0x08, 0x7b, 0x89, 0x49, 0x85, 0x0f, 0x10, 0x08, 0x18, 0x07, 0x4e, 0x6b, 0x37, 0x35, 0x67, 0xbc, 0x89, 0x28, 0x8b, 0x10, 0x08, 0x24, 0x21, 0x6b, 0x31, 0x5c, 0x6b, 0x36, 0x55, 0x1c, 0x5f,
0x0a, 0x08, 0x37, 0x44, 0x26, 0x4c, 0x37, 0x0e, 0xf3, 0x2a, 0x44, 0x29, 0x35, 0x67, 0x03, 0x0a, 0x36, 0x55, 0x6b, 0x31, 0x5c, 0x2a, 0x21, 0x87, 0x44, 0x53, 0x08, 0x01, 0x02, 0x0b, 0x08, 0x53,
0x37, 0x5f, 0x4e, 0x0c, 0x05, 0x10, 0x04, 0x26, 0x45, 0x8d, 0x6a, 0x29, 0x8d, 0xf2, 0x8d, 0x83, 0x07, 0x0d, 0x0e, 0x60, 0x10, 0x08, 0x19, 0x77, 0x0f, 0x82, 0x5f, 0xc5, 0x1c, 0x10, 0x03, 0x29,
0x3e, 0x10, 0x08, 0x18, 0x49, 0x85, 0x2a, 0x08, 0x4d, 0x02, 0x0b, 0x2a, 0x44, 0x00, 0x3c, 0x2a, 0x8f, 0x25, 0x77, 0x8b, 0x10, 0x03, 0x29, 0x8f, 0x25, 0x77, 0x8b, 0x87, 0x44, 0x1a, 0x0e, 0x06,
0x42, 0x2a, 0x44, 0x00, 0x3c, 0x2a, 0x08, 0x89, 0x49, 0x0d, 0x07, 0x2b, 0x52, 0x1f, 0x08, 0x01, 0x10, 0x07, 0x19, 0x77, 0x1f, 0x44, 0x07, 0x50, 0x94, 0x38, 0x05, 0x50, 0xa4, 0x40, 0x7b, 0x0f,
0x02, 0x24, 0x1f, 0x07, 0x4e, 0x6b, 0x10, 0x08, 0x26, 0x80, 0x74, 0x7d, 0x78, 0x10, 0x03, 0x6c, 0x35, 0x5f, 0xa4, 0x6e, 0x07, 0x5f, 0x94, 0x6e, 0x07, 0x00, 0x27, 0x49, 0x07, 0x10, 0x03, 0x19,
0x8d, 0x6c, 0x80, 0x83, 0x10, 0x03, 0x6c, 0x8d, 0x6c, 0x80, 0x83, 0x2b, 0x52, 0x29, 0x59, 0x10, 0x28, 0x76, 0x10, 0x0b, 0x18, 0xf8, 0x07, 0x37, 0x05, 0x52, 0x39, 0xd4, 0x60, 0x06, 0x0e, 0x60,
0x07, 0x26, 0x80, 0xf5, 0x52, 0x07, 0x82, 0x04, 0x57, 0x1f, 0x2f, 0x6a, 0x21, 0x55, 0x0d, 0x08, 0x06, 0x0c, 0x1e, 0x51, 0x51, 0xc5, 0x7c, 0x19, 0x7c, 0x10, 0x08, 0x18, 0xf8, 0x82, 0x5f, 0xc5,
0x27, 0x55, 0x53, 0x07, 0x26, 0x82, 0x53, 0x07, 0x21, 0x90, 0x4c, 0x07, 0x10, 0x03, 0x26, 0x83, 0x1c, 0x10, 0x08, 0x24, 0x08, 0x8c, 0x31, 0x5c, 0x08, 0x3f, 0x36, 0x00, 0x44, 0x3f, 0xc5, 0x6b,
0x83, 0x3e, 0x10, 0x0b, 0x2c, 0x0f, 0x07, 0x0d, 0x57, 0x07, 0x0e, 0x3b, 0xd4, 0x6b, 0x06, 0x0e, 0x36, 0x00, 0x44, 0x3f, 0x31, 0x5c, 0x08, 0x53, 0x09, 0x0e, 0x58, 0x10, 0x08, 0x30, 0x7f, 0x52,
0x6b, 0x6e, 0x21, 0x3f, 0x26, 0x3f, 0x6d, 0x90, 0xa6, 0x90, 0xa6, 0x90, 0xa6, 0x90, 0xa6, 0x10, 0x58, 0x53, 0x28, 0x89, 0x08, 0x24, 0x81, 0x21, 0x77, 0x0f, 0x10, 0x05, 0x18, 0xf8, 0x07, 0x0d,
0x08, 0x2c, 0x74, 0x7d, 0x78, 0x10, 0x08, 0x18, 0x08, 0x68, 0x08, 0x1f, 0x08, 0x4d, 0x02, 0x24, 0xc5, 0xa4, 0x64, 0x22, 0x67, 0x1a, 0x8b, 0x10, 0x07, 0x30, 0x32, 0x0f, 0x75, 0x53, 0x0e, 0x05,
0x37, 0x44, 0x26, 0x52, 0x1b, 0x36, 0x44, 0x26, 0x52, 0x37, 0x08, 0x4d, 0x02, 0x24, 0x1f, 0x09, 0x55, 0x09, 0x53, 0x75, 0x78, 0x4d, 0x0a, 0x0e, 0x39, 0x1a, 0x38, 0x53, 0x64, 0x00, 0x72, 0x53,
0x68, 0x09, 0x10, 0x08, 0x2c, 0x7e, 0x1f, 0x73, 0x65, 0x2e, 0x77, 0x24, 0x37, 0x7e, 0x1f, 0x3e, 0x3e, 0x0f, 0x61, 0x10, 0x05, 0x1e, 0x83, 0x2a, 0xbc, 0x89, 0x8b, 0x4c, 0x1a, 0x52, 0x0f, 0x10,
0x82, 0x10, 0x08, 0x18, 0x49, 0x85, 0x2a, 0x08, 0x7b, 0x89, 0x49, 0x85, 0x80, 0x0f, 0x10, 0x05, 0x08, 0x18, 0xc8, 0x8a, 0x1f, 0x8a, 0x51, 0x01, 0x6b, 0x0c, 0x07, 0x01, 0x2f, 0x6b, 0x71, 0x0f,
0x2c, 0x2f, 0x0d, 0x42, 0x55, 0x0a, 0x84, 0x65, 0x29, 0x83, 0x10, 0x07, 0x2c, 0x54, 0x0e, 0x3d, 0x75, 0x0f, 0x10, 0x06, 0x18, 0x44, 0x1e, 0x2b, 0x23, 0x61, 0x7e, 0x47, 0x19, 0x4b, 0x3f, 0x74,
0x1f, 0x57, 0x00, 0x46, 0x1f, 0x85, 0x84, 0x03, 0x0a, 0x0e, 0x3b, 0x29, 0x61, 0x1f, 0x33, 0x00, 0x48, 0x65, 0x53, 0x6a, 0x07, 0x8e, 0x88, 0x22, 0x0d, 0x0d, 0x10, 0x09, 0x00, 0x18, 0x36, 0x02,
0x61, 0x1f, 0x66, 0x7c, 0x10, 0x05, 0x6c, 0x3e, 0x43, 0xbc, 0x8d, 0x83, 0x70, 0x29, 0x07, 0x0e, 0x67, 0x00, 0x6e, 0x1e, 0x09, 0x06, 0x00, 0x06, 0x0f, 0x06, 0x00, 0x06, 0x09, 0x1e, 0x5d, 0x00,
0x0f, 0x10, 0x08, 0x2c, 0x78, 0x36, 0x3f, 0x28, 0x2a, 0x0c, 0x07, 0x01, 0x46, 0x2a, 0x41, 0x0e, 0x0b, 0x31, 0x00, 0x54, 0x1e, 0x49, 0x74, 0x74, 0x49, 0x23, 0x0b, 0x3b, 0x00, 0x0b, 0x3b, 0x23,
0x3d, 0x0f, 0x10, 0x06, 0x1f, 0x1d, 0x52, 0x21, 0x6a, 0x36, 0x7c, 0x26, 0x54, 0x36, 0x5f, 0x0a, 0x06, 0x33, 0x00, 0x52, 0x06, 0x5f, 0x55, 0x0f, 0x03, 0x4d, 0x67, 0x10, 0x06, 0x00, 0x18, 0x68,
0x26, 0x4b, 0x27, 0x58, 0x4f, 0x19, 0x1f, 0x6f, 0x81, 0x1a, 0x63, 0x3b, 0x1c, 0x72, 0x10, 0x09, 0x19, 0x6c, 0x3f, 0x44, 0x19, 0x62, 0x53, 0x6a, 0x63, 0x45, 0x3e, 0x0d, 0x78, 0x0b, 0x06, 0x06,
0x1a, 0x1d, 0x44, 0x3c, 0x65, 0x00, 0x53, 0x21, 0x3a, 0x5f, 0x2f, 0x5f, 0x09, 0x21, 0x04, 0x0a, 0x09, 0x53, 0x72, 0x19, 0x4f, 0x3f, 0x69, 0x19, 0x6c, 0x10, 0x06, 0x18, 0x01, 0x65, 0x50, 0x65,
0x00, 0x24, 0x0b, 0x00, 0x56, 0x21, 0x4c, 0x58, 0x58, 0x4c, 0x01, 0x27, 0x0b, 0x35, 0x00, 0x0b, 0x23, 0x5a, 0x00, 0x6c, 0x3f, 0x6e, 0x19, 0x09, 0x05, 0x53, 0x0a, 0x05, 0x00, 0x0d, 0x01, 0x3f,
0x35, 0x27, 0x5f, 0x0e, 0x07, 0x00, 0x07, 0x59, 0x27, 0x3c, 0x0f, 0x03, 0x00, 0x03, 0x65, 0x10, 0x4d, 0x4f, 0x09, 0x22, 0x0b, 0x68, 0x22, 0x3e, 0x1a, 0x06, 0x08, 0x22, 0x49, 0x78, 0x66, 0x06,
0x06, 0x1a, 0x1d, 0x32, 0x26, 0x34, 0x37, 0x52, 0x26, 0x0c, 0x02, 0x1f, 0x6f, 0x39, 0x1a, 0x45, 0x10, 0x05, 0x18, 0xe2, 0x87, 0x06, 0x09, 0x45, 0x4d, 0x0b, 0x45, 0x55, 0x62, 0x22, 0x0b, 0x03,
0x44, 0x1a, 0x0b, 0x06, 0x06, 0x09, 0x1f, 0x63, 0x26, 0x40, 0x37, 0x5a, 0x26, 0x34, 0x10, 0x06, 0x22, 0x09, 0x46, 0x26, 0x10, 0x08, 0x19, 0x25, 0x40, 0x89, 0x0e, 0x04, 0x83, 0x87, 0x3e, 0x23,
0x36, 0x1d, 0x28, 0x19, 0x43, 0x19, 0x36, 0x60, 0x26, 0x34, 0x37, 0x53, 0x26, 0x09, 0x05, 0x1f, 0xb4, 0x46, 0x3e, 0x2e, 0x28, 0x0e, 0x03, 0x1a, 0x40, 0x0f, 0x10, 0x04, 0x25, 0x77, 0x76, 0x8f,
0x0a, 0x05, 0x00, 0x0d, 0x01, 0x36, 0x2e, 0x40, 0x09, 0x1c, 0x0b, 0x32, 0x1c, 0x45, 0x8b, 0x08, 0x08, 0x29, 0x5b, 0x46, 0x38, 0x2e, 0x28, 0x0d, 0x05, 0x1a, 0x06, 0x0f, 0x89, 0x0d, 0x05, 0x83,
0x1f, 0x28, 0x44, 0x21, 0x55, 0x2f, 0x10, 0x05, 0x1f, 0x1d, 0xc2, 0x8b, 0x09, 0x1c, 0x7f, 0x87, 0x87, 0x38, 0x22, 0x5b, 0x06, 0x10, 0x0a, 0x4e, 0x41, 0x6f, 0x5e, 0x02, 0x0b, 0x5f, 0x09, 0x6d,
0x0c, 0x84, 0x0b, 0x03, 0x1c, 0x3a, 0x1c, 0xc2, 0x10, 0x08, 0x37, 0x8b, 0x0d, 0x8d, 0x0e, 0x04, 0x05, 0x70, 0x0c, 0x05, 0x10,
0x8c, 0x2b, 0x45, 0x27, 0x55, 0x2f, 0x29, 0x45, 0x76, 0x51, 0x8b, 0x38, 0x10, 0x04, 0x20, 0x80,
0x83, 0x83, 0x0f, 0x10, 0x08, 0x1c, 0x55, 0x59, 0x29, 0x61, 0x76, 0x3d, 0x8b, 0x0f, 0x8d, 0x3d,
0x8c, 0x2b, 0x61, 0x27, 0x55, 0x59, 0x10, 0x0a, 0x1a, 0x20, 0x18, 0x66, 0x5a, 0x01, 0x02, 0x0b,
0x27, 0x09, 0x67, 0x69, 0x0e, 0x0c, 0x05, 0x10,
}; };
static const gU16 mf_rlefont_DejaVuSans12_aa_glyph_offsets_0[95] PROGMEM = { static const gU16 mf_rlefont_DejaVuSans12_aa_glyph_offsets_0[95] = {
0x0000, 0x0003, 0x000d, 0x0015, 0x0034, 0x0059, 0x008a, 0x00b9, 0x0000, 0x0003, 0x000d, 0x0015, 0x0039, 0x005e, 0x008a, 0x00b7,
0x00bd, 0x00d5, 0x00eb, 0x0105, 0x010f, 0x0114, 0x011a, 0x011e, 0x00bb, 0x00d2, 0x00ec, 0x0104, 0x010d, 0x0112, 0x0117, 0x011c,
0x0135, 0x0155, 0x015d, 0x017a, 0x0198, 0x01b1, 0x01cb, 0x01f4, 0x0133, 0x0152, 0x015a, 0x0175, 0x0196, 0x01ad, 0x01c7, 0x01f1,
0x020b, 0x022b, 0x0253, 0x0259, 0x0260, 0x027a, 0x0283, 0x02a1, 0x0208, 0x022d, 0x0255, 0x0259, 0x025d, 0x027d, 0x0285, 0x029f,
0x02b5, 0x02ff, 0x0321, 0x0341, 0x035f, 0x0382, 0x038c, 0x0395, 0x02b5, 0x02fa, 0x031e, 0x0339, 0x0356, 0x0376, 0x0380, 0x0389,
0x03b6, 0x03bf, 0x03c5, 0x03d1, 0x03f4, 0x03fa, 0x041f, 0x0442, 0x03ac, 0x03b8, 0x03bd, 0x03ca, 0x03ef, 0x03f4, 0x041d, 0x043e,
0x0458, 0x046f, 0x048b, 0x04aa, 0x04cd, 0x04d4, 0x04e8, 0x0510, 0x044f, 0x045f, 0x0474, 0x0488, 0x04ae, 0x04b4, 0x04cc, 0x04f3,
0x0551, 0x057c, 0x0597, 0x05ae, 0x05b6, 0x05cd, 0x05d6, 0x05ea, 0x0534, 0x0560, 0x057b, 0x0593, 0x059a, 0x05b1, 0x05b9, 0x05cc,
0x05f1, 0x05f7, 0x0616, 0x0623, 0x0639, 0x0648, 0x0666, 0x0672, 0x05d3, 0x05d8, 0x05f8, 0x05ff, 0x0613, 0x061b, 0x0639, 0x0645,
0x0697, 0x069e, 0x06a5, 0x06b0, 0x06cd, 0x06d3, 0x06f0, 0x06f6, 0x0665, 0x066e, 0x0675, 0x0681, 0x069e, 0x06a3, 0x06ba, 0x06c2,
0x0713, 0x0722, 0x072f, 0x073b, 0x0755, 0x0762, 0x0773, 0x078f, 0x06dc, 0x06e4, 0x06eb, 0x06f8, 0x0714, 0x0720, 0x0733, 0x074b,
0x07c0, 0x07df, 0x0807, 0x0819, 0x082d, 0x0834, 0x0847, 0x077c, 0x079a, 0x07c1, 0x07d5, 0x07eb, 0x07f0, 0x0806,
}; };
static const struct mf_rlefont_char_range_s mf_rlefont_DejaVuSans12_aa_char_ranges[] = { static const struct mf_rlefont_char_range_s mf_rlefont_DejaVuSans12_aa_char_ranges[] = {
@ -227,7 +225,7 @@ const struct mf_rlefont_s mf_rlefont_DejaVuSans12_aa = {
4, /* version */ 4, /* version */
mf_rlefont_DejaVuSans12_aa_dictionary_data, mf_rlefont_DejaVuSans12_aa_dictionary_data,
mf_rlefont_DejaVuSans12_aa_dictionary_offsets, mf_rlefont_DejaVuSans12_aa_dictionary_offsets,
91, /* rle dict count */ 94, /* rle dict count */
121, /* total dict count */ 121, /* total dict count */
1, /* char range count */ 1, /* char range count */
mf_rlefont_DejaVuSans12_aa_char_ranges, mf_rlefont_DejaVuSans12_aa_char_ranges,

View file

@ -11,128 +11,128 @@
#error The font file is not compatible with this version of mcufont. #error The font file is not compatible with this version of mcufont.
#endif #endif
static const gU8 mf_rlefont_DejaVuSans16_dictionary_data[249] PROGMEM = { static const gU8 mf_rlefont_DejaVuSans16_dictionary_data[247] = {
0x10, 0x80, 0x10, 0x80, 0x84, 0x80, 0x07, 0x80, 0x40, 0x06, 0x11, 0x0a, 0x06, 0x80, 0x09, 0x15, 0x0f, 0x15, 0x83, 0x0a, 0x41, 0x2f, 0x06, 0x0a, 0x80, 0x01, 0x0b, 0x83, 0x01, 0x3d, 0x05, 0x80,
0x80, 0x10, 0x80, 0x05, 0x80, 0x04, 0x0e, 0x03, 0x80, 0x0a, 0x83, 0x0b, 0x08, 0x80, 0x09, 0x80, 0x09, 0x80, 0x06, 0x80, 0x09, 0x80, 0x06, 0x80, 0x09, 0x80, 0x01, 0x05, 0x80, 0x03, 0x0a, 0x81,
0x06, 0x80, 0x09, 0x80, 0x0d, 0x80, 0x04, 0x09, 0x80, 0x04, 0x0b, 0x80, 0x80, 0x0a, 0x13, 0x80, 0x0e, 0x80, 0x0d, 0x03, 0x80, 0x01, 0x0f, 0x80, 0x10, 0x80, 0x10, 0x80, 0x01, 0x09, 0x80, 0x01,
0x0f, 0x0c, 0x80, 0x41, 0x3e, 0x82, 0x0c, 0x40, 0x08, 0x17, 0x07, 0x80, 0x10, 0x80, 0x01, 0x07, 0x04, 0x07, 0x80, 0x07, 0x80, 0x08, 0x80, 0x0b, 0x08, 0x80, 0x01, 0x0f, 0x80, 0x10, 0x80, 0x01,
0x80, 0x05, 0x05, 0x81, 0x07, 0x80, 0x08, 0x01, 0x81, 0x02, 0x80, 0x16, 0x03, 0x14, 0x32, 0x82, 0x0d, 0x80, 0x01, 0x80, 0x03, 0x80, 0x07, 0x80, 0x01, 0x13, 0x02, 0x80, 0x06, 0x80, 0x01, 0x03,
0x01, 0x80, 0x01, 0x12, 0x04, 0x80, 0x01, 0x85, 0x03, 0x03, 0x80, 0x82, 0x0b, 0x81, 0x01, 0x80, 0x81, 0x01, 0x03, 0x84, 0x13, 0x87, 0x07, 0x81, 0x01, 0x80, 0x0c, 0x04, 0x80, 0x0a, 0x10, 0x14,
0x04, 0x80, 0x80, 0x01, 0x80, 0x26, 0x18, 0x44, 0x27, 0x3c, 0x24, 0x1f, 0xc2, 0x1b, 0xc1, 0x1f, 0x04, 0x80, 0x01, 0x80, 0x01, 0x81, 0x01, 0x80, 0x01, 0x84, 0x82, 0x85, 0xa4, 0xb4, 0x26, 0xa4,
0xd0, 0x24, 0x2e, 0x21, 0x00, 0x2c, 0xa6, 0x2f, 0x24, 0xac, 0xff, 0xa3, 0xf5, 0x8c, 0x26, 0x3c, 0x26, 0x20, 0x21, 0x27, 0xf4, 0x2c, 0x1d, 0xc8, 0x1d, 0x00, 0x25, 0xb4, 0x22, 0x3f, 0xd4, 0x1d,
0x42, 0x95, 0x85, 0xac, 0xac, 0x2a, 0xe6, 0x26, 0x19, 0x2b, 0xcc, 0x42, 0x42, 0x2b, 0x2e, 0x2c, 0xf5, 0xac, 0x30, 0x31, 0x2d, 0x32, 0x22, 0xcf, 0x2b, 0x25, 0x00, 0x1d, 0xd4, 0x1d, 0x37, 0x29,
0x22, 0x2b, 0x47, 0x2c, 0x39, 0xc5, 0x8c, 0x88, 0x1a, 0xa4, 0x21, 0x35, 0xe8, 0x1d, 0xa8, 0x18, 0xd0, 0x2e, 0x28, 0x2e, 0x28, 0xf2, 0x29, 0x2f, 0x83, 0x1d, 0x3b, 0xa4, 0x26, 0x20, 0x21, 0x3c,
0x18, 0x18, 0xfc, 0x42, 0xa6, 0xd7, 0x2f, 0xcc, 0x1d, 0xb6, 0x40, 0x24, 0x40, 0x42, 0xa6, 0x1d, 0x1c, 0x22, 0x0f, 0x26, 0x21, 0x1c, 0x2c, 0x36, 0xfa, 0xc6, 0x1d, 0x36, 0xd4, 0xa4, 0x3a, 0x2a,
0x47, 0x2f, 0x31, 0x2e, 0x2c, 0x27, 0x1e, 0x2a, 0x3d, 0x80, 0x2b, 0xa4, 0x2a, 0x3c, 0x1a, 0x27, 0xf4, 0x8c, 0x20, 0x20, 0x31, 0x31, 0x2a, 0x29, 0x2a, 0x1f, 0x26, 0x3b, 0x25, 0xfe, 0x3a, 0xf4,
0x1e, 0x27, 0x1e, 0x27, 0x34, 0x34, 0x2a, 0x35, 0x23, 0x46, 0x28, 0x1b, 0xf0, 0x8f, 0x26, 0xb4, 0x29, 0x36, 0x0f, 0xa3, 0x1d, 0xc4, 0x74, 0x83, 0x1c, 0x32, 0x36, 0x95, 0x24, 0x23, 0x00, 0x29,
0x27, 0x1e, 0x27, 0x1e, 0x1f, 0xe5, 0x24, 0x47, 0x2c, 0xa2, 0x0f, 0x1e, 0x27, 0x1e, 0x27, 0x3c, 0x31, 0xd0, 0xd8, 0x2a, 0xd5, 0x86, 0xa4, 0xa4, 0x1d, 0x37, 0x2d, 0x29, 0x2d, 0xd3, 0x22, 0x37,
0x26, 0x34, 0x26, 0x38, 0x1a, 0x18, 0x35, 0x23, 0xf0, 0x21, 0x18, 0xc9, 0x1d, 0xa6, 0x2f, 0x24, 0x37, 0x31, 0x19, 0x1a, 0xc2, 0x29, 0x30, 0x2e, 0xb4, 0x26, 0xd4, 0x1c, 0x2d, 0xa4, 0x26, 0xc4,
0x2d, 0x18, 0x35, 0x00, 0x88, 0x20, 0x25, 0xfc, 0x86, 0xc0, 0xc4, 0x2d, 0x2d, 0x23, 0xfc, 0x36,
}; };
static const gU16 mf_rlefont_DejaVuSans16_dictionary_offsets[89] PROGMEM = { static const gU16 mf_rlefont_DejaVuSans16_dictionary_offsets[88] = {
0x0000, 0x0004, 0x0005, 0x0008, 0x000a, 0x000b, 0x000c, 0x000e, 0x0000, 0x0001, 0x0002, 0x0004, 0x0006, 0x0007, 0x000a, 0x000d,
0x000f, 0x0010, 0x0013, 0x0016, 0x0017, 0x001a, 0x001c, 0x001e, 0x000e, 0x001b, 0x001e, 0x0020, 0x0023, 0x0026, 0x002d, 0x0030,
0x0024, 0x0026, 0x0027, 0x002a, 0x002c, 0x002e, 0x0030, 0x0031, 0x0031, 0x0037, 0x0038, 0x003b, 0x0040, 0x0042, 0x0046, 0x0049,
0x0033, 0x0035, 0x0037, 0x0039, 0x003a, 0x003c, 0x003f, 0x0042, 0x004a, 0x004c, 0x004f, 0x0052, 0x0054, 0x0056, 0x0058, 0x005b,
0x0044, 0x0047, 0x0049, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, 0x005e, 0x005f, 0x0060, 0x0063, 0x0065, 0x0066, 0x0069, 0x006a,
0x0050, 0x0053, 0x0054, 0x0057, 0x0059, 0x005b, 0x005d, 0x005f, 0x006b, 0x0074, 0x0076, 0x0079, 0x007b, 0x007e, 0x0080, 0x0082,
0x0062, 0x0065, 0x0067, 0x006b, 0x006d, 0x0072, 0x0074, 0x007a, 0x0085, 0x0088, 0x008a, 0x008c, 0x008f, 0x0091, 0x0095, 0x0097,
0x007c, 0x007f, 0x0088, 0x008a, 0x008d, 0x0092, 0x0095, 0x009a, 0x009a, 0x009f, 0x00a2, 0x00a6, 0x00a8, 0x00a9, 0x00ac, 0x00af,
0x009c, 0x009f, 0x00a2, 0x00a5, 0x00aa, 0x00ac, 0x00ae, 0x00af, 0x00b7, 0x00b9, 0x00bb, 0x00bd, 0x00bf, 0x00c2, 0x00c5, 0x00cc,
0x00b3, 0x00b5, 0x00b8, 0x00c7, 0x00c9, 0x00cb, 0x00da, 0x00e0, 0x00cf, 0x00d1, 0x00d2, 0x00da, 0x00dd, 0x00e0, 0x00e2, 0x00e4,
0x00e5, 0x00e7, 0x00e9, 0x00eb, 0x00f0, 0x00f3, 0x00f5, 0x00f7, 0x00e6, 0x00e8, 0x00ea, 0x00ed, 0x00f0, 0x00f1, 0x00f4, 0x00f7,
0x00f9,
}; };
static const gU8 mf_rlefont_DejaVuSans16_glyph_data_0[1152] PROGMEM = { static const gU8 mf_rlefont_DejaVuSans16_glyph_data_0[1166] = {
0x05, 0x00, 0x10, 0x06, 0x29, 0x18, 0x59, 0x3e, 0x21, 0x10, 0x06, 0x2d, 0x58, 0x28, 0x58, 0x10, 0x05, 0x00, 0x10, 0x06, 0x27, 0x43, 0x49, 0x18, 0x2f, 0x2b, 0x10, 0x06, 0x58, 0x55, 0x3d, 0x55,
0x0d, 0x1c, 0x33, 0x5b, 0xc4, 0x74, 0x83, 0x1f, 0x5b, 0xc4, 0x74, 0x83, 0x1f, 0x5b, 0x10, 0x0a, 0x10, 0x0d, 0xf4, 0x19, 0x41, 0x8d, 0x42, 0xfa, 0x5e, 0x29, 0xdd, 0x5e, 0x29, 0xdd, 0x10, 0x0a,
0x33, 0x21, 0x23, 0x52, 0xfd, 0x8d, 0x26, 0x58, 0x1f, 0x37, 0x21, 0x64, 0x58, 0x84, 0x42, 0x9e, 0x2f, 0x65, 0x2c, 0x1a, 0xfe, 0xa9, 0x1d, 0x55, 0xe0, 0x38, 0x8b, 0x4a, 0x36, 0xd6, 0x1d, 0xde,
0x4b, 0x23, 0x21, 0x10, 0x0f, 0x29, 0x69, 0x85, 0x1a, 0x6f, 0x1a, 0x6d, 0x85, 0x8c, 0xb6, 0x26, 0x29, 0x3e, 0x6e, 0x10, 0x0f, 0x2f, 0xd2, 0x6a, 0x6a, 0xf4, 0x85, 0x8c, 0xb6, 0x2a, 0xa8, 0x22,
0x8c, 0x2c, 0xab, 0x35, 0x92, 0x26, 0x88, 0x85, 0x9c, 0xa6, 0x26, 0x6d, 0x56, 0xff, 0x10, 0x0c, 0xed, 0x18, 0x76, 0x1d, 0xc6, 0x85, 0x32, 0x2d, 0x2a, 0xe8, 0x68, 0x24, 0x68, 0x74, 0x10, 0x0c,
0x6e, 0x00, 0xa7, 0x2b, 0x35, 0x63, 0x48, 0x28, 0x6f, 0x56, 0xc8, 0x22, 0xd0, 0x26, 0x37, 0x4b, 0x66, 0xfc, 0xa7, 0x4a, 0x5c, 0xfc, 0x8c, 0x53, 0xc6, 0xa5, 0x1c, 0x5b, 0x68, 0x3a, 0x86, 0x8c,
0x3a, 0x10, 0x03, 0x6c, 0x10, 0x06, 0x20, 0x64, 0xf5, 0x28, 0x35, 0x84, 0x49, 0x68, 0x18, 0x69, 0x69, 0x44, 0x30, 0x10, 0x03, 0x2f, 0x5a, 0x10, 0x06, 0x2f, 0xd0, 0x4c, 0x6e, 0x24, 0x49, 0x41,
0x69, 0x10, 0x06, 0x2d, 0x21, 0x57, 0x59, 0x4d, 0x2e, 0x64, 0x0f, 0x10, 0x08, 0x84, 0x18, 0x28, 0x41, 0x38, 0x51, 0x10, 0x06, 0x2f, 0x51, 0x41, 0x41, 0x60, 0x49, 0x6e, 0x32, 0x4c, 0x10, 0x08,
0xa8, 0x2b, 0x25, 0xe0, 0x2f, 0xb9, 0x28, 0x35, 0x10, 0x0d, 0x84, 0x3e, 0x6c, 0x1d, 0x82, 0x31, 0xfc, 0x1c, 0x6e, 0x96, 0x86, 0x1c, 0x67, 0xa0, 0x29, 0x6f, 0x2c, 0x41, 0x10, 0x0d, 0x1f, 0x23,
0x6a, 0x10, 0x05, 0x30, 0x57, 0x00, 0x28, 0x10, 0x06, 0x2e, 0x3e, 0x1b, 0x7c, 0x10, 0x05, 0x30, 0x8c, 0x6e, 0xf3, 0xa3, 0x29, 0x5a, 0x10, 0x05, 0x1b, 0x25, 0x23, 0x10, 0x06, 0x18, 0x1f, 0x1f,
0x21, 0x10, 0x05, 0x84, 0x18, 0x4d, 0x63, 0x57, 0x84, 0x49, 0x23, 0xca, 0x28, 0x10, 0x0a, 0x6e, 0xe2, 0x10, 0x05, 0x1b, 0x2b, 0x10, 0x05, 0x1c, 0x41, 0x41, 0x25, 0x6e, 0xd4, 0x25, 0x27, 0x22,
0x5c, 0x5c, 0x66, 0x44, 0x2a, 0xc8, 0x26, 0x42, 0x5f, 0x10, 0x0a, 0x20, 0x45, 0xd0, 0x6a, 0x59, 0x5c, 0x10, 0x0a, 0x66, 0x30, 0x37, 0xfe, 0x45, 0x20, 0x6b, 0x52, 0xfe, 0x37, 0x5b, 0x1e, 0x10,
0x28, 0xc3, 0x10, 0x0a, 0x3d, 0x25, 0x39, 0x24, 0x5d, 0x4d, 0x84, 0x2a, 0x54, 0x4d, 0xc3, 0x10, 0x0a, 0x2f, 0xe0, 0x4c, 0x5a, 0x49, 0x00, 0x23, 0x83, 0x10, 0x0a, 0x2f, 0xa2, 0x29, 0xa7, 0x4a,
0x0a, 0x3d, 0x52, 0x37, 0x18, 0x23, 0xea, 0x1d, 0x25, 0x1e, 0x6a, 0x2a, 0x40, 0x4b, 0x10, 0x0a, 0x65, 0x5c, 0x5f, 0x36, 0x5f, 0xfe, 0x38, 0x83, 0x10, 0x0a, 0x2f, 0x67, 0xe5, 0x90, 0x6e, 0xdc,
0x33, 0x8a, 0x1d, 0x8e, 0x1d, 0x98, 0x1d, 0xa8, 0x2f, 0x24, 0x5c, 0x5c, 0x50, 0xc3, 0x64, 0x18, 0x1e, 0x41, 0x5a, 0x2a, 0x37, 0xc2, 0x10, 0x0a, 0x29, 0x4c, 0x53, 0x30, 0x55, 0xd5, 0x29, 0xa5,
0x10, 0x0a, 0x3d, 0x43, 0x49, 0x69, 0x31, 0x47, 0x1c, 0x6a, 0x2a, 0x40, 0x4b, 0x10, 0x0a, 0x3b, 0x1c, 0xa4, 0x4b, 0x3c, 0x83, 0x6e, 0xd4, 0x10, 0x0a, 0x39, 0x5d, 0x5c, 0xd4, 0x18, 0x67, 0x5b,
0x31, 0xa7, 0x2b, 0x4d, 0xe2, 0x84, 0x37, 0x42, 0x27, 0x1e, 0x27, 0x1e, 0x5f, 0x10, 0x0a, 0x2d, 0x38, 0x5a, 0x2a, 0x37, 0xc2, 0x10, 0x0a, 0x39, 0xa0, 0x29, 0xa7, 0x1c, 0xa4, 0x2b, 0x64, 0x3b,
0xc3, 0x21, 0x4d, 0x4d, 0x4d, 0x63, 0x21, 0x60, 0x10, 0x0a, 0x6e, 0x46, 0x9c, 0x26, 0x1e, 0x27, 0x20, 0x21, 0x1c, 0x5b, 0x1e, 0x10, 0x0a, 0x34, 0x41, 0x2b, 0x23, 0xec, 0x25, 0x6e, 0xec, 0x10,
0x55, 0xff, 0x84, 0x37, 0xb4, 0x61, 0x3a, 0x5f, 0x10, 0x0a, 0x6e, 0x5c, 0x50, 0x3c, 0x4a, 0x55, 0x0a, 0x66, 0xfa, 0x69, 0x6b, 0xf5, 0x35, 0xb4, 0x1e, 0x22, 0x69, 0x6b, 0x52, 0x5b, 0x1e, 0x10,
0x46, 0x21, 0x60, 0xa6, 0x2c, 0xe0, 0x10, 0x05, 0x32, 0x18, 0x41, 0x3e, 0x18, 0x10, 0x05, 0x32, 0x0a, 0x66, 0x30, 0x45, 0x45, 0x6b, 0x52, 0x3d, 0x48, 0x5c, 0xec, 0x4a, 0x90, 0x1c, 0x74, 0x10,
0x63, 0x86, 0x32, 0x49, 0x60, 0x10, 0x0d, 0xc4, 0x32, 0x6d, 0x1d, 0x45, 0x31, 0x45, 0xe8, 0x69, 0x05, 0x29, 0x1f, 0x41, 0x41, 0x2f, 0x1f, 0x65, 0x10, 0x05, 0x00, 0x29, 0x1f, 0x2b, 0x1c, 0x1f,
0x21, 0x87, 0x28, 0x87, 0x28, 0x10, 0x0d, 0x33, 0x32, 0x4b, 0x19, 0x23, 0x33, 0x74, 0x83, 0x10, 0x43, 0x23, 0x10, 0x0d, 0x27, 0x1f, 0x5c, 0x4e, 0x3f, 0x29, 0x92, 0x4a, 0x41, 0x51, 0x0f, 0x18,
0x0d, 0xc4, 0x3e, 0x63, 0xa0, 0x69, 0x21, 0xe7, 0x60, 0x3c, 0x31, 0x45, 0x3f, 0x28, 0x10, 0x09, 0xa0, 0x41, 0x10, 0x0d, 0x39, 0x19, 0x1f, 0x33, 0xa3, 0x19, 0x34, 0x3c, 0x10, 0x0d, 0x00, 0x59,
0x3d, 0x25, 0x86, 0x21, 0x63, 0x64, 0x2c, 0xb4, 0x4d, 0x1c, 0x18, 0x10, 0x10, 0x20, 0x80, 0x85, 0x18, 0xd2, 0x41, 0x51, 0xf5, 0x5c, 0x4e, 0x4e, 0x3f, 0x2c, 0x10, 0x09, 0x2f, 0xa2, 0x4a, 0x8c,
0x37, 0xa4, 0x1a, 0x26, 0x85, 0x75, 0x99, 0x9c, 0x86, 0x97, 0xa8, 0x5a, 0x3a, 0x5a, 0x3a, 0x5a, 0x6e, 0x32, 0x4c, 0x4c, 0x6e, 0x1c, 0x2b, 0x10, 0x10, 0x38, 0x35, 0x1a, 0xf7, 0xb4, 0x2e, 0x35,
0x3a, 0x5a, 0x8d, 0xb0, 0xa4, 0x7c, 0x8a, 0x42, 0x69, 0x37, 0x1f, 0x82, 0x10, 0x0b, 0x33, 0x21, 0x21, 0xb3, 0x86, 0x97, 0x32, 0x2d, 0x47, 0x47, 0x47, 0x47, 0x8d, 0xb0, 0x21, 0x73, 0x1c, 0x86,
0x23, 0xee, 0x23, 0x6b, 0xe6, 0x24, 0x50, 0x43, 0x1e, 0x38, 0x1a, 0x36, 0xd4, 0x10, 0x0b, 0x2d, 0x4c, 0x44, 0x0f, 0x10, 0x0b, 0x39, 0x8c, 0x23, 0x98, 0x53, 0x63, 0x4a, 0x4b, 0x3f, 0x93, 0x28,
0x43, 0x36, 0x39, 0x26, 0x36, 0x8c, 0x22, 0x42, 0x37, 0x26, 0x83, 0x2a, 0xf0, 0x67, 0x26, 0x1e, 0xc4, 0x68, 0x2a, 0x10, 0x0b, 0x4f, 0xfc, 0x32, 0x28, 0xfc, 0x21, 0x21, 0x32, 0x1c, 0x82, 0x87,
0x1f, 0x83, 0x10, 0x0b, 0x3b, 0x52, 0xb4, 0x2a, 0x3c, 0x49, 0x68, 0x35, 0x35, 0x9c, 0x4b, 0x10, 0x21, 0x32, 0x28, 0x2e, 0x28, 0x00, 0x21, 0x1c, 0x83, 0x10, 0x0b, 0x19, 0x67, 0x0f, 0x69, 0xf4,
0x0c, 0x2d, 0x43, 0x34, 0x37, 0x1f, 0x1a, 0x26, 0x67, 0x67, 0x34, 0x26, 0x37, 0x1f, 0x83, 0x10, 0x4a, 0x49, 0x41, 0x60, 0xdc, 0x29, 0x3e, 0x10, 0x0c, 0x4f, 0x69, 0x31, 0x2e, 0x28, 0x4d, 0x28,
0x0a, 0x2d, 0x4f, 0x49, 0x18, 0x83, 0x1f, 0x6a, 0x18, 0x83, 0x10, 0x09, 0x41, 0x82, 0x2c, 0x6a, 0x27, 0x8a, 0x1c, 0x83, 0x10, 0x0a, 0x34, 0x26, 0x25, 0x18, 0x83, 0x85, 0x65, 0x25, 0xfc, 0x2c,
0x69, 0x25, 0x6a, 0x18, 0x10, 0x0c, 0x3b, 0x43, 0x36, 0xc7, 0x22, 0xcc, 0x84, 0x6a, 0xfc, 0x7c, 0x83, 0x10, 0x09, 0x4f, 0x25, 0x18, 0x5d, 0x49, 0x10, 0x0c, 0x19, 0x82, 0x1d, 0xb4, 0x1c, 0x68,
0x38, 0x1a, 0x26, 0x26, 0x38, 0xc6, 0x24, 0xc3, 0x10, 0x0c, 0x2d, 0x67, 0x26, 0x36, 0x8c, 0x37, 0x1c, 0x5a, 0x00, 0x7c, 0x2e, 0x28, 0x2a, 0x1c, 0x52, 0x82, 0x10, 0x0c, 0x2f, 0xe5, 0xa4, 0x4d,
0x83, 0x1a, 0x26, 0x38, 0x1a, 0x67, 0x26, 0x10, 0x05, 0x29, 0x59, 0x59, 0x10, 0x05, 0x29, 0x18, 0xf4, 0x74, 0x83, 0x2e, 0x28, 0x4d, 0x10, 0x05, 0xc4, 0x2b, 0x49, 0x49, 0x10, 0x05, 0x39, 0x5a,
0x59, 0x59, 0x1f, 0x37, 0x10, 0x0a, 0x1d, 0x27, 0xa4, 0x1f, 0x5c, 0xa6, 0x2f, 0x88, 0x1d, 0x45, 0x49, 0x49, 0x4c, 0x10, 0x0a, 0x58, 0xa4, 0x26, 0x45, 0x24, 0x42, 0x36, 0xd2, 0x53, 0x30, 0x88,
0xac, 0x23, 0x8d, 0x1d, 0xa6, 0x2f, 0x42, 0x1d, 0x50, 0x1e, 0x10, 0x09, 0x3c, 0x59, 0x59, 0xc3, 0x42, 0xec, 0x4a, 0x45, 0xa4, 0x10, 0x09, 0x58, 0x49, 0x49, 0x18, 0x83, 0x10, 0x0d, 0xf4, 0x41,
0x10, 0x0d, 0x2d, 0x1a, 0xc5, 0x90, 0x37, 0x1e, 0x5d, 0x85, 0x8e, 0xac, 0x1e, 0x5d, 0x85, 0x96, 0x85, 0x90, 0xb4, 0x35, 0x31, 0x46, 0x31, 0x46, 0x31, 0x46, 0x31, 0x2d, 0x47, 0x30, 0x6d, 0x6d,
0xa8, 0x5a, 0xfc, 0x85, 0xa6, 0xa6, 0x84, 0x95, 0x95, 0x22, 0x47, 0x1e, 0x27, 0x10, 0x0c, 0x1c, 0x00, 0x21, 0x5b, 0x6b, 0xc5, 0xa4, 0x10, 0x0c, 0x2f, 0x87, 0x8c, 0xa4, 0x86, 0x68, 0xc5, 0x68,
0x90, 0x22, 0xac, 0x84, 0x85, 0x98, 0x22, 0x8c, 0x85, 0x1a, 0x6f, 0x1a, 0x6f, 0x56, 0x3a, 0x36, 0x3d, 0x6a, 0x6a, 0xd4, 0x1c, 0x5b, 0x68, 0xd4, 0x68, 0xd4, 0x68, 0xf4, 0x98, 0x1c, 0x85, 0x8e,
0x8d, 0x22, 0xd8, 0x36, 0x8e, 0x22, 0xdc, 0x10, 0x0d, 0x62, 0x40, 0x4b, 0x10, 0x0a, 0x1f, 0x4b, 0xa4, 0x35, 0x10, 0x0d, 0x2f, 0x33, 0x4a, 0x3a, 0x57, 0x37, 0xc2, 0x10, 0x0a, 0x2f, 0x5d, 0x45,
0x2c, 0x5d, 0x61, 0xc8, 0x36, 0x2c, 0x43, 0x49, 0x18, 0x10, 0x0d, 0x62, 0x39, 0x4b, 0x23, 0x6f, 0x20, 0x37, 0x5d, 0x18, 0x5a, 0x10, 0x0d, 0x2f, 0x33, 0x4a, 0x3a, 0x57, 0x44, 0x60, 0x41, 0x10,
0x28, 0x10, 0x0b, 0x3c, 0x69, 0x25, 0x50, 0x1e, 0x61, 0xfe, 0x1f, 0x82, 0x2c, 0x50, 0x1e, 0x27, 0x0b, 0x2f, 0x5d, 0x45, 0x20, 0x37, 0x83, 0x1d, 0x45, 0x6b, 0xf5, 0x28, 0x2e, 0x10, 0x0a, 0x66,
0x38, 0x1a, 0x10, 0x0a, 0x6e, 0x46, 0x90, 0x49, 0x1c, 0x31, 0x74, 0x21, 0x21, 0x27, 0x0f, 0xb4, 0xfe, 0xb5, 0x1d, 0x2b, 0x41, 0x51, 0x51, 0x38, 0x52, 0x3c, 0x44, 0x10, 0x09, 0x18, 0x7c, 0xa3,
0x4b, 0x10, 0x09, 0x41, 0x83, 0x87, 0x49, 0x18, 0x59, 0x10, 0x0c, 0x2d, 0x67, 0x67, 0x67, 0x26, 0x4a, 0x49, 0x49, 0x10, 0x0c, 0x58, 0x28, 0x4d, 0x4d, 0x2a, 0x21, 0x1c, 0x82, 0x10, 0x0b, 0xfc,
0x26, 0x1e, 0x1f, 0x82, 0x10, 0x0b, 0xc4, 0x28, 0x27, 0x34, 0x38, 0x1a, 0x1f, 0x50, 0xa4, 0x2b, 0x38, 0x52, 0x0f, 0x28, 0x2e, 0x2a, 0x4b, 0x2d, 0x29, 0x63, 0x53, 0xd8, 0x5c, 0x10, 0x11, 0x58,
0xcc, 0x1d, 0xa6, 0x2f, 0x24, 0xac, 0x23, 0xc9, 0x28, 0x10, 0x11, 0x3c, 0x35, 0x22, 0xa8, 0x84, 0xc4, 0x85, 0x96, 0xa4, 0x31, 0x88, 0x8e, 0x88, 0x86, 0x89, 0x86, 0xa5, 0x5b, 0x3a, 0x98, 0x47,
0x85, 0xa6, 0x42, 0x47, 0x42, 0xac, 0x42, 0x8c, 0x98, 0x6f, 0xa6, 0xa6, 0x5a, 0x3a, 0x5a, 0x3a, 0x47, 0x68, 0x3b, 0x62, 0x10, 0x0b, 0x1c, 0x4c, 0x69, 0x37, 0x63, 0x29, 0x98, 0x23, 0x8c, 0x53,
0x51, 0xa4, 0x10, 0x0b, 0x3c, 0x69, 0x37, 0x2a, 0x4e, 0x4d, 0x2e, 0x6b, 0x5d, 0x26, 0x34, 0x10, 0x63, 0x1c, 0xa4, 0x6b, 0xfe, 0x10, 0x09, 0x38, 0x68, 0x2a, 0x37, 0x63, 0x29, 0xd8, 0x2b, 0x49,
0x09, 0x41, 0x1a, 0x2a, 0x4e, 0xfc, 0x28, 0x59, 0x10, 0x0c, 0x41, 0x82, 0x25, 0x22, 0x54, 0x29, 0x10, 0x0c, 0x34, 0xf7, 0x5c, 0x5f, 0x36, 0x5f, 0x36, 0x5f, 0x36, 0x74, 0x83, 0x10, 0x06, 0x2f,
0x54, 0x4d, 0xff, 0x83, 0x10, 0x06, 0x2d, 0x64, 0x59, 0x59, 0xff, 0x10, 0x05, 0xc4, 0x28, 0x69, 0x8b, 0x4a, 0x49, 0x49, 0x5c, 0x74, 0x10, 0x05, 0xfc, 0x41, 0x41, 0x5a, 0x43, 0x43, 0x41, 0x41,
0x68, 0x68, 0x68, 0x18, 0x10, 0x06, 0x1c, 0xbc, 0x59, 0x59, 0x1d, 0x74, 0x10, 0x0d, 0x3d, 0xb4, 0x10, 0x06, 0x2f, 0xd2, 0x49, 0x49, 0x5c, 0x37, 0x74, 0x10, 0x0d, 0xfc, 0x19, 0x8a, 0x1e, 0x1c,
0x23, 0x25, 0x5c, 0x0f, 0x1e, 0x10, 0x08, 0x1b, 0x30, 0x28, 0x83, 0x10, 0x08, 0xf0, 0x69, 0x69, 0xa4, 0x45, 0xa4, 0x10, 0x08, 0xfc, 0x38, 0x1f, 0x1b, 0x34, 0x10, 0x08, 0xf0, 0x38, 0x51, 0x10,
0x10, 0x09, 0x32, 0x25, 0xa6, 0x21, 0x2b, 0xa3, 0x84, 0x9c, 0x24, 0xf5, 0x24, 0x50, 0xb5, 0x2b, 0x09, 0x1f, 0x1e, 0x4a, 0xd0, 0x29, 0x37, 0x82, 0x22, 0x45, 0x4b, 0x3c, 0x48, 0x10, 0x0a, 0x2f,
0xdb, 0x10, 0x0a, 0x6c, 0x25, 0x46, 0x24, 0x66, 0xcc, 0x26, 0x47, 0x1f, 0x7e, 0x10, 0x09, 0x32, 0x5a, 0x64, 0x50, 0xfc, 0xb4, 0x37, 0xc1, 0x10, 0x09, 0x1f, 0x1e, 0x1c, 0xa4, 0x45, 0x18, 0x5a,
0x25, 0x5c, 0x21, 0x68, 0x84, 0x5f, 0x10, 0x0a, 0x41, 0x49, 0x2b, 0x9b, 0x2a, 0xff, 0x1f, 0x66, 0x41, 0x37, 0xc0, 0x10, 0x0a, 0x29, 0x25, 0x22, 0xf7, 0x40, 0x24, 0x48, 0x10, 0x09, 0x29, 0x1f,
0x24, 0x55, 0xef, 0x10, 0x09, 0x32, 0x31, 0xa6, 0x1f, 0xc8, 0x24, 0x50, 0x43, 0x34, 0x35, 0x84, 0xeb, 0x29, 0x2d, 0x4a, 0x4b, 0x83, 0x1c, 0x65, 0x41, 0x37, 0xc0, 0x10, 0x06, 0x39, 0x92, 0x4a,
0x5f, 0x10, 0x06, 0x1c, 0x74, 0x28, 0x63, 0xf3, 0x23, 0x21, 0x59, 0x10, 0x0a, 0x65, 0x21, 0x5f, 0x5c, 0x7c, 0x6e, 0x3a, 0x49, 0x10, 0x0a, 0x1f, 0x1e, 0x40, 0x24, 0x48, 0x29, 0x45, 0x24, 0x1e,
0x10, 0x0a, 0x6c, 0x25, 0x46, 0x24, 0x66, 0x4a, 0x10, 0x03, 0x2d, 0x63, 0x1d, 0x49, 0x59, 0x10, 0x10, 0x0a, 0x2f, 0x5a, 0x64, 0x3b, 0x20, 0x20, 0xa4, 0x10, 0x03, 0xc4, 0x6e, 0x19, 0x5a, 0x49,
0x03, 0x2d, 0x63, 0x1d, 0x49, 0x18, 0x59, 0x1f, 0x37, 0x10, 0x09, 0x6c, 0x00, 0x24, 0x47, 0x2b, 0x10, 0x03, 0xc4, 0x6e, 0x1c, 0x49, 0x49, 0x5c, 0xf0, 0x10, 0x09, 0x2f, 0x5a, 0x45, 0x24, 0x42,
0x24, 0xa8, 0x28, 0x64, 0x88, 0x1d, 0x95, 0x1d, 0x5c, 0x5d, 0x10, 0x03, 0x3c, 0x59, 0x59, 0x10, 0x36, 0xd2, 0x2c, 0x88, 0x42, 0xec, 0x4a, 0xd4, 0x10, 0x03, 0x27, 0x2b, 0x49, 0x49, 0x10, 0x0f,
0x0f, 0x1b, 0xe1, 0x7d, 0xa4, 0x75, 0x9c, 0x53, 0x53, 0x53, 0x53, 0x53, 0x53, 0x53, 0x10, 0x0a, 0x59, 0x3f, 0x7d, 0xa4, 0xb5, 0xb5, 0x3a, 0x56, 0x56, 0x56, 0x56, 0x56, 0x56, 0xd4, 0xa4, 0x10,
0x4c, 0x66, 0x4a, 0x10, 0x0a, 0x32, 0x25, 0x5c, 0x66, 0x44, 0x5f, 0x10, 0x0a, 0x4c, 0x66, 0x6f, 0x0a, 0x59, 0x64, 0x3b, 0x20, 0x20, 0xa4, 0x10, 0x0a, 0x1f, 0x1e, 0x1c, 0xa4, 0x37, 0x50, 0x1c,
0x37, 0x42, 0x84, 0xac, 0x8b, 0x49, 0x10, 0x0a, 0x65, 0x6a, 0x10, 0x07, 0x1b, 0xf1, 0x2c, 0x90, 0x5b, 0x1e, 0x10, 0x0a, 0x59, 0x64, 0x50, 0xfc, 0xb4, 0x37, 0xc1, 0x4a, 0x2b, 0x10, 0x0a, 0x1f,
0x28, 0x59, 0x10, 0x09, 0x1b, 0xfe, 0x25, 0x50, 0x69, 0x69, 0x87, 0x28, 0x21, 0x1f, 0x5d, 0x4b, 0x1e, 0x40, 0x24, 0x48, 0x25, 0x10, 0x07, 0x59, 0xcb, 0x22, 0x2b, 0x49, 0x10, 0x09, 0x1f, 0x22,
0x10, 0x06, 0x3d, 0x18, 0xc4, 0x4b, 0x28, 0x59, 0x23, 0xbc, 0x10, 0x0a, 0x1b, 0x66, 0x4a, 0x55, 0x3f, 0x4a, 0x45, 0x18, 0x51, 0x87, 0x4c, 0x29, 0x4b, 0xc2, 0x10, 0x06, 0x00, 0x19, 0x6e, 0x33,
0xef, 0x10, 0x09, 0x3e, 0x2d, 0x34, 0x26, 0x38, 0x5d, 0x2a, 0x4e, 0x23, 0xcb, 0x28, 0x10, 0x0d, 0x2c, 0x43, 0x25, 0x18, 0xf2, 0x10, 0x0a, 0x59, 0x20, 0x20, 0x00, 0x45, 0x48, 0x10, 0x09, 0x00,
0x00, 0x2e, 0x3e, 0x53, 0x53, 0xd4, 0xac, 0x6d, 0x6d, 0x89, 0x85, 0x96, 0xa8, 0x51, 0xa4, 0x10, 0x1f, 0x28, 0x2e, 0x2a, 0x4b, 0x63, 0x53, 0xe0, 0x5c, 0x10, 0x0d, 0x1f, 0x2a, 0x56, 0xf4, 0x86,
0x0a, 0x1b, 0x0f, 0x47, 0x2c, 0x47, 0x2f, 0x58, 0x23, 0x64, 0x58, 0x3c, 0x2a, 0x85, 0x37, 0xb4, 0x86, 0x2d, 0x2d, 0x31, 0x98, 0x47, 0x68, 0x3b, 0x62, 0x10, 0x0a, 0xfc, 0x1f, 0x35, 0xb4, 0x1d,
0x10, 0x09, 0x3e, 0x2d, 0x38, 0x5d, 0x2a, 0xe6, 0x84, 0x6d, 0x4e, 0x1d, 0x42, 0x2c, 0x37, 0x4d, 0x24, 0x4a, 0x55, 0x00, 0x8a, 0x4a, 0x55, 0xa5, 0x22, 0xb4, 0x10, 0x09, 0x1c, 0x1f, 0x68, 0x2a,
0x1f, 0x74, 0x10, 0x09, 0x1b, 0x4f, 0x60, 0x22, 0x54, 0x4d, 0xc3, 0x10, 0x0a, 0x33, 0x64, 0x18, 0x4b, 0xfe, 0x37, 0x63, 0x53, 0x00, 0x8e, 0x4c, 0x6e, 0xf2, 0x10, 0x09, 0xfc, 0x1f, 0x35, 0xa3,
0x68, 0x1d, 0x9c, 0x59, 0x00, 0x69, 0x10, 0x05, 0x3d, 0x6a, 0x59, 0x59, 0x10, 0x0a, 0x1c, 0x9c, 0x5c, 0x5f, 0x36, 0x5f, 0xfe, 0x38, 0x83, 0x10, 0x0a, 0x00, 0x19, 0x8a, 0x4a, 0x49, 0x4c, 0x43,
0x59, 0x1c, 0x64, 0x68, 0x4d, 0x1f, 0x37, 0x10, 0x0d, 0x3e, 0x32, 0xa2, 0x6d, 0x42, 0x7c, 0x10, 0x25, 0x1c, 0x22, 0x10, 0x05, 0x00, 0x58, 0x49, 0x49, 0x49, 0x10, 0x0a, 0x38, 0xb4, 0x60, 0x49,
0x18, 0x8a, 0x4a, 0x49, 0x4c, 0x10, 0x0d, 0x00, 0x1f, 0x1f, 0x93, 0x68, 0x7c, 0x10,
}; };
static const gU16 mf_rlefont_DejaVuSans16_glyph_offsets_0[95] PROGMEM = { static const gU16 mf_rlefont_DejaVuSans16_glyph_offsets_0[95] = {
0x0000, 0x0003, 0x000a, 0x0010, 0x001f, 0x0034, 0x004f, 0x0062, 0x0000, 0x0003, 0x000b, 0x0011, 0x001f, 0x0034, 0x004f, 0x0064,
0x0065, 0x0072, 0x007c, 0x0089, 0x0092, 0x0098, 0x009e, 0x00a2, 0x0068, 0x0074, 0x007f, 0x008d, 0x0097, 0x009c, 0x00a2, 0x00a6,
0x00ae, 0x00ba, 0x00c3, 0x00d0, 0x00df, 0x00f1, 0x00fe, 0x010e, 0x00b2, 0x00c0, 0x00ca, 0x00d9, 0x00e7, 0x00f8, 0x0106, 0x0116,
0x0119, 0x0129, 0x0137, 0x013e, 0x0146, 0x0156, 0x0160, 0x016f, 0x0120, 0x0130, 0x0140, 0x0149, 0x0153, 0x0163, 0x016d, 0x017b,
0x017c, 0x019d, 0x01ae, 0x01c3, 0x01d0, 0x01e0, 0x01eb, 0x01f5, 0x0188, 0x01a4, 0x01b4, 0x01ca, 0x01d8, 0x01e5, 0x01f2, 0x01f9,
0x0209, 0x0218, 0x021d, 0x0225, 0x023b, 0x0241, 0x025e, 0x0278, 0x020b, 0x0217, 0x021d, 0x0224, 0x0236, 0x023d, 0x0257, 0x0273,
0x027d, 0x028a, 0x0292, 0x02a3, 0x02b2, 0x02ba, 0x02c5, 0x02da, 0x027c, 0x0286, 0x0290, 0x029e, 0x02ac, 0x02b4, 0x02be, 0x02ce,
0x02f3, 0x0300, 0x0309, 0x0315, 0x031c, 0x0325, 0x032d, 0x0336, 0x02e5, 0x02f6, 0x0301, 0x030e, 0x0317, 0x0321, 0x032a, 0x0334,
0x033c, 0x0341, 0x0352, 0x035e, 0x0367, 0x0374, 0x0382, 0x038c, 0x033b, 0x0340, 0x034e, 0x0358, 0x0364, 0x036d, 0x037c, 0x0386,
0x0391, 0x0399, 0x03a0, 0x03aa, 0x03bb, 0x03c0, 0x03cf, 0x03d4, 0x0391, 0x039a, 0x03a1, 0x03aa, 0x03b9, 0x03bf, 0x03d0, 0x03d8,
0x03dc, 0x03e7, 0x03eb, 0x03f3, 0x0401, 0x040b, 0x0412, 0x041f, 0x03e3, 0x03ee, 0x03f6, 0x03fd, 0x040b, 0x0416, 0x041e, 0x042a,
0x0430, 0x0441, 0x0453, 0x045c, 0x0467, 0x046d, 0x0478, 0x043a, 0x044b, 0x045b, 0x0468, 0x0474, 0x047b, 0x0486,
}; };
static const struct mf_rlefont_char_range_s mf_rlefont_DejaVuSans16_char_ranges[] = { static const struct mf_rlefont_char_range_s mf_rlefont_DejaVuSans16_char_ranges[] = {
@ -158,8 +158,8 @@ const struct mf_rlefont_s mf_rlefont_DejaVuSans16 = {
4, /* version */ 4, /* version */
mf_rlefont_DejaVuSans16_dictionary_data, mf_rlefont_DejaVuSans16_dictionary_data,
mf_rlefont_DejaVuSans16_dictionary_offsets, mf_rlefont_DejaVuSans16_dictionary_offsets,
49, /* rle dict count */ 40, /* rle dict count */
88, /* total dict count */ 87, /* total dict count */
1, /* char range count */ 1, /* char range count */
mf_rlefont_DejaVuSans16_char_ranges, mf_rlefont_DejaVuSans16_char_ranges,
}; };

View file

@ -11,249 +11,252 @@
#error The font file is not compatible with this version of mcufont. #error The font file is not compatible with this version of mcufont.
#endif #endif
static const gU8 mf_rlefont_DejaVuSans16_aa_dictionary_data[423] PROGMEM = { static const gU8 mf_rlefont_DejaVuSans16_aa_dictionary_data[425] = {
0x11, 0x80, 0x11, 0x80, 0x41, 0x0f, 0xc6, 0xd1, 0xc6, 0xc3, 0xcd, 0xc9, 0xde, 0x29, 0x07, 0x80, 0x02, 0x07, 0x05, 0x16, 0x0a, 0x80, 0x02, 0x09, 0x04, 0x11, 0x10, 0x0a, 0x08, 0x01, 0x80, 0x04,
0x86, 0x03, 0x16, 0x0a, 0x0b, 0x11, 0x80, 0x0f, 0x04, 0x80, 0x08, 0x80, 0x08, 0x80, 0x08, 0x80, 0x80, 0x08, 0x80, 0x40, 0x08, 0x86, 0x14, 0x80, 0x01, 0x80, 0x11, 0x80, 0x11, 0x80, 0xc1, 0x80,
0xc1, 0xce, 0x11, 0x01, 0xc2, 0xc6, 0xcb, 0x0e, 0x80, 0x11, 0x80, 0x87, 0xca, 0xc7, 0x09, 0x80, 0xc3, 0xcb, 0xde, 0x88, 0x85, 0x80, 0x0e, 0x01, 0xc1, 0x07, 0xc7, 0xc9, 0x07, 0x80, 0x03, 0xca,
0x04, 0xc3, 0xca, 0x81, 0x07, 0xc9, 0xc7, 0xc7, 0xc2, 0x40, 0x08, 0xca, 0xc8, 0xce, 0xc2, 0x01, 0xc7, 0xcc, 0xc4, 0x01, 0xc7, 0xc8, 0xcb, 0xc4, 0xcd, 0xc8, 0xce, 0xc2, 0xcd, 0xc2, 0xca, 0xc6,
0x09, 0x01, 0x80, 0x01, 0x05, 0xc4, 0xcb, 0xc1, 0xc2, 0x80, 0xc1, 0xc6, 0x80, 0xc6, 0xcc, 0x0a, 0xc3, 0xca, 0xc5, 0xcc, 0xc7, 0xca, 0xcc, 0xc1, 0xca, 0xc2, 0xce, 0xc5, 0x81, 0xc7, 0xcd, 0xc9,
0x80, 0xcb, 0xc5, 0xc9, 0xcd, 0x10, 0xcd, 0xc3, 0xc6, 0xca, 0xcd, 0xc5, 0xc5, 0xcc, 0xcb, 0xc7, 0xc5, 0x02, 0x80, 0xd1, 0xc6, 0xc8, 0xca, 0xc5, 0xcd, 0x0c, 0x80, 0xcd, 0xc2, 0x80, 0xce, 0x80,
0xc2, 0xcd, 0xc5, 0xce, 0x82, 0xc8, 0xce, 0xcc, 0xc4, 0x0d, 0x05, 0x80, 0xce, 0x80, 0xc8, 0xca, 0xc6, 0xcd, 0xc9, 0xcd, 0x80, 0xc2, 0x82, 0xcb, 0xc6, 0xc3, 0xcd, 0xc4, 0xca, 0xce, 0x0f, 0xce,
0x83, 0xc4, 0xca, 0xc9, 0xc6, 0xc3, 0xcb, 0x0c, 0xcb, 0xc4, 0xcc, 0xc5, 0xc7, 0xc9, 0xc4, 0xce, 0xc3, 0xcc, 0xc5, 0x01, 0xc6, 0xca, 0x80, 0x02, 0xc1, 0xcd, 0x0e, 0xc4, 0xcc, 0xcc, 0xc3, 0x01,
0xd1, 0xce, 0xc1, 0x01, 0xc8, 0xc9, 0x01, 0xc7, 0x15, 0xc9, 0xca, 0xc2, 0xce, 0xcc, 0xc7, 0xc7, 0xc7, 0x80, 0x80, 0xc1, 0xc8, 0xc9, 0x80, 0xce, 0xc6, 0xcc, 0x80, 0x11, 0x80, 0xca, 0xc4, 0x80,
0xca, 0x14, 0xcc, 0xc6, 0xcd, 0xc1, 0xc3, 0xcc, 0xcc, 0xc1, 0xcb, 0xc6, 0x01, 0xc1, 0x80, 0x0b, 0xc7, 0xc2, 0xce, 0x01, 0xc2, 0xce, 0xc6, 0xc2, 0xcd, 0xc4, 0xcb, 0x28, 0x15, 0xd1, 0xc9, 0xc7,
0x80, 0xcb, 0xc3, 0xcd, 0xce, 0x02, 0x80, 0xc2, 0x80, 0xce, 0xcb, 0x08, 0xc6, 0xce, 0x01, 0xc1, 0xcc, 0xc7, 0x14, 0x80, 0xd8, 0xc9, 0xca, 0xcd, 0xc3, 0xcd, 0xc4, 0xc6, 0x80, 0xc6, 0xc1, 0xc2,
0xcd, 0xc2, 0x80, 0x0a, 0xcc, 0xc3, 0xc9, 0xc5, 0xc6, 0xc9, 0xc4, 0xcd, 0xc5, 0xcd, 0x02, 0x80, 0xcc, 0xc6, 0xc7, 0x01, 0xc7, 0xc6, 0xc9, 0x03, 0xc8, 0xcd, 0xce, 0xc1, 0xc5, 0xcb, 0xde, 0xca,
0xce, 0xca, 0xc4, 0xc5, 0xcb, 0x02, 0xde, 0xc9, 0xc1, 0xcd, 0xc3, 0xce, 0xde, 0xca, 0xc3, 0xc4, 0xc8, 0xcb, 0xc5, 0x0b, 0xc6, 0xcb, 0xce, 0xcb, 0x0d, 0xc3, 0xcc, 0xc7, 0xcc, 0xc4, 0xcd, 0x05,
0xcc, 0x80, 0xcd, 0xcd, 0xc8, 0x38, 0x7c, 0x2a, 0x76, 0x2f, 0x20, 0x5f, 0x76, 0x62, 0x1a, 0x0a, 0x80, 0xc1, 0xce, 0x80, 0x0a, 0x2a, 0x1f, 0x2a, 0x1e, 0x87, 0x1d, 0x26, 0x44, 0x38, 0x19, 0x6c,
0x0f, 0x23, 0x56, 0x80, 0x6b, 0x01, 0x1c, 0x6d, 0x6c, 0x2f, 0x5c, 0x07, 0x0e, 0x02, 0x41, 0x07, 0x31, 0x71, 0x19, 0x51, 0x18, 0x86, 0x22, 0x87, 0x18, 0x86, 0x22, 0x87, 0x19, 0x71, 0x19, 0x51,
0x26, 0x64, 0x41, 0x02, 0x26, 0x62, 0x41, 0x3b, 0x6b, 0x41, 0x02, 0x26, 0x62, 0x41, 0x07, 0x26, 0x19, 0x6c, 0x25, 0x25, 0x25, 0x25, 0x23, 0x1c, 0x1e, 0x88, 0x1b, 0x3b, 0x0e, 0x5f, 0x0a, 0x03,
0x64, 0x41, 0x0a, 0x1a, 0x38, 0x39, 0x3e, 0x05, 0x72, 0x62, 0x03, 0x3b, 0x82, 0x02, 0x33, 0x34, 0x21, 0x05, 0x0e, 0x07, 0x02, 0x65, 0x06, 0x40, 0x19, 0x65, 0x54, 0x1a, 0x7f, 0x09, 0x1d, 0x25,
0x33, 0x5a, 0x33, 0x45, 0x33, 0x1b, 0x1e, 0x72, 0x28, 0x1e, 0x72, 0x28, 0x33, 0x45, 0x33, 0x1b, 0x1f, 0x2a, 0x01, 0x7a, 0x00, 0x09, 0x01, 0x88, 0x64, 0x07, 0x6b, 0x3d, 0x88, 0x33, 0x1e, 0x08,
0x33, 0x34, 0x33, 0x5a, 0x33, 0x62, 0x03, 0x3a, 0x30, 0xe8, 0x30, 0x6f, 0x07, 0x5c, 0x64, 0x76, 0x88, 0x38, 0x78, 0x65, 0x88, 0xc5, 0x30, 0x88, 0x38, 0x78, 0x65, 0x88, 0x33, 0x1e, 0x5c, 0x1d,
0x2f, 0x26, 0x08, 0x76, 0x38, 0x20, 0x70, 0x41, 0x3b, 0x06, 0x6c, 0x09, 0x08, 0x02, 0x01, 0x04, 0x65, 0x66, 0x6b, 0x56, 0x0f, 0x7f, 0x2c, 0x09, 0x01, 0x57, 0x00, 0xc8, 0x05, 0x18, 0x25, 0x08,
0x47, 0x41, 0x08, 0x26, 0x85, 0x41, 0x02, 0x26, 0x28, 0x39, 0xc6, 0xcc, 0x30, 0x6f, 0x41, 0x0e, 0x1e, 0x5a, 0x21, 0x4e, 0x1e, 0x87, 0x1c, 0x24, 0x1c, 0x24, 0x1c, 0x24, 0x1c, 0x24, 0x1c, 0x24,
0x84, 0x22, 0x4b, 0x35, 0x2a, 0x73, 0x27, 0x72, 0x27, 0x72, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x26, 0x6e, 0x1f, 0x2a, 0x86, 0x86, 0x86, 0x00, 0x42, 0x49, 0x06, 0x78, 0x25, 0x09, 0x08, 0x02,
0x50, 0x3b, 0x66, 0x39, 0xc8, 0x74, 0x7b, 0x08, 0x44, 0x24, 0x18, 0x18, 0x00, 0x1e, 0x36, 0x6f, 0x01, 0x85, 0x1f, 0x61, 0x78, 0x09, 0x0e, 0x81, 0x03, 0x78, 0x25, 0x33, 0x6b, 0x07, 0x38, 0x21,
0x2d, 0x18, 0x18, 0x18, 0x18, 0x18, 0x2d, 0x18, 0x02, 0x2c, 0x30, 0x7c, 0x18, 0x18, 0x25, 0x5f, 0x63, 0x1e, 0x3d, 0x21, 0x4e, 0x1e, 0x64, 0x21, 0xc5, 0x30, 0x88, 0x4e, 0x1e, 0x64, 0x21, 0x63,
0x22, 0x06, 0x47, 0x5c, 0x31, 0x0f, 0x3b, 0x6b, 0x41, 0x3b, 0x7a, 0x39, 0xc6, 0x09, 0x00, 0x70, 0x1e, 0x3d, 0x18, 0x25, 0x3a, 0x45, 0x38, 0x21, 0x5d, 0x09, 0x0e, 0x81, 0x03, 0x7f, 0x87, 0x20,
0x02, 0x57, 0x0e, 0x5d, 0x20, 0x28, 0x22, 0xed, 0x2c, 0x20, 0x36, 0x56, 0x80, 0x01, 0x76, 0x44, 0x1d, 0x25, 0x20, 0x1c, 0x78, 0x85, 0x59, 0x30, 0x19, 0xc8, 0x1f, 0xbc, 0x5f, 0x75, 0x00, 0x1c,
0x2d, 0x44, 0x28, 0x0a, 0x06, 0x02, 0x00, 0x30, 0x47, 0x05, 0x66, 0x02, 0x65, 0x06, 0x02, 0x00,
}; };
static const gU16 mf_rlefont_DejaVuSans16_aa_dictionary_offsets[143] PROGMEM = { static const gU16 mf_rlefont_DejaVuSans16_aa_dictionary_offsets[140] = {
0x0000, 0x0004, 0x0006, 0x0009, 0x000b, 0x000d, 0x000e, 0x0010, 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0007, 0x0008, 0x0009,
0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0017, 0x0018, 0x0019, 0x000a, 0x000b, 0x000c, 0x000d, 0x000f, 0x0011, 0x0013, 0x0015,
0x0020, 0x0022, 0x0023, 0x0025, 0x0027, 0x0028, 0x002b, 0x002c, 0x0016, 0x0017, 0x0019, 0x001e, 0x0020, 0x0023, 0x0024, 0x0025,
0x002e, 0x0031, 0x0033, 0x0034, 0x0035, 0x0037, 0x0039, 0x003b, 0x0027, 0x0029, 0x002d, 0x002f, 0x0031, 0x0034, 0x0036, 0x0038,
0x003d, 0x0040, 0x0041, 0x0044, 0x0045, 0x0047, 0x0049, 0x004b, 0x003a, 0x003c, 0x003e, 0x0040, 0x0042, 0x0044, 0x0046, 0x0048,
0x004d, 0x004f, 0x0051, 0x0053, 0x0055, 0x0056, 0x0058, 0x005a, 0x004a, 0x004c, 0x004d, 0x004f, 0x0051, 0x0053, 0x0055, 0x0057,
0x005c, 0x005e, 0x0060, 0x0062, 0x0064, 0x0065, 0x0067, 0x0069, 0x0059, 0x005a, 0x005c, 0x005e, 0x0060, 0x0062, 0x0064, 0x0066,
0x006a, 0x006c, 0x006e, 0x0070, 0x0071, 0x0073, 0x0075, 0x0077, 0x0067, 0x0069, 0x006b, 0x006e, 0x006f, 0x0071, 0x0074, 0x0076,
0x0078, 0x007a, 0x007c, 0x007e, 0x0080, 0x0081, 0x0084, 0x0086, 0x0078, 0x007a, 0x007b, 0x007d, 0x0080, 0x0082, 0x0084, 0x0086,
0x0088, 0x0089, 0x008b, 0x008d, 0x008f, 0x0091, 0x0092, 0x0094, 0x0088, 0x008a, 0x008d, 0x008f, 0x0091, 0x0093, 0x0095, 0x0097,
0x0096, 0x0098, 0x009a, 0x009d, 0x009f, 0x00a1, 0x00a3, 0x00a5, 0x0099, 0x009b, 0x009c, 0x009d, 0x009e, 0x00a0, 0x00a2, 0x00a4,
0x00a7, 0x00a9, 0x00ab, 0x00ac, 0x00ae, 0x00b0, 0x00b2, 0x00b4, 0x00a5, 0x00a7, 0x00a9, 0x00ab, 0x00ae, 0x00b0, 0x00b2, 0x00b5,
0x00b6, 0x00b8, 0x00ba, 0x00bc, 0x00be, 0x00bf, 0x00c1, 0x00c3, 0x00b7, 0x00b8, 0x00ba, 0x00bc, 0x00be, 0x00bf, 0x00c1, 0x00c3,
0x00c6, 0x00c8, 0x00ca, 0x00cc, 0x00cd, 0x00cf, 0x00d1, 0x00d3, 0x00c4, 0x00c6, 0x00c8, 0x00c9, 0x00cb, 0x00cd, 0x00cf, 0x00d1,
0x00d5, 0x00e5, 0x0107, 0x0127, 0x012c, 0x0139, 0x014f, 0x0156, 0x00d3, 0x00d5, 0x00d8, 0x00db, 0x00dd, 0x00f2, 0x00f6, 0x00fa,
0x015a, 0x0162, 0x0167, 0x0169, 0x016c, 0x016e, 0x0170, 0x0176, 0x010c, 0x010e, 0x0112, 0x0115, 0x013a, 0x013c, 0x0151, 0x0154,
0x0178, 0x017a, 0x017c, 0x017e, 0x0180, 0x0186, 0x018d, 0x0193, 0x0157, 0x0162, 0x0165, 0x018e, 0x0190, 0x0193, 0x0196, 0x0198,
0x0197, 0x0199, 0x019f, 0x01a1, 0x01a3, 0x01a5, 0x01a7, 0x019a, 0x01a2, 0x01a7, 0x01a9,
}; };
static const gU8 mf_rlefont_DejaVuSans16_aa_glyph_data_0[2802] PROGMEM = { static const gU8 mf_rlefont_DejaVuSans16_aa_glyph_data_0[2853] = {
0x05, 0x00, 0x10, 0x06, 0x26, 0x24, 0x93, 0x29, 0x0e, 0x29, 0x0d, 0x2c, 0x21, 0x18, 0x10, 0x06, 0x05, 0x00, 0x10, 0x06, 0x6a, 0x89, 0x1f, 0x0e, 0x1f, 0x0d, 0x82, 0x69, 0x61, 0x10, 0x06, 0x28,
0x65, 0xa0, 0xa0, 0xa0, 0xed, 0x10, 0x0d, 0x00, 0x1d, 0x61, 0x00, 0x6b, 0x03, 0x57, 0x0d, 0x06, 0xed, 0x48, 0xa8, 0x48, 0xa8, 0x48, 0xa8, 0x10, 0x0d, 0x18, 0x69, 0x70, 0x00, 0x2b, 0x03, 0x48,
0x00, 0x4b, 0x57, 0x70, 0xa5, 0x61, 0x39, 0x70, 0x2e, 0x76, 0x0a, 0x9e, 0x05, 0x00, 0x4b, 0x57, 0x0d, 0x06, 0x00, 0x05, 0x0e, 0x48, 0x4a, 0xa2, 0x70, 0x22, 0x65, 0x2d, 0x88, 0x0a, 0x09, 0x65,
0x70, 0xa5, 0x08, 0x0b, 0x41, 0x2e, 0x3e, 0x39, 0x0a, 0x9e, 0x05, 0x00, 0x06, 0x0d, 0x57, 0x03, 0x4e, 0x48, 0x40, 0x00, 0x05, 0x0e, 0x48, 0x4a, 0xa2, 0x08, 0x0b, 0x21, 0x2d, 0x5d, 0x1d, 0x0a,
0x3e, 0x00, 0x0a, 0x09, 0x10, 0x0a, 0x33, 0x18, 0x4f, 0x74, 0x43, 0x7d, 0x7e, 0x23, 0x0a, 0x0a, 0x09, 0x65, 0x4e, 0x48, 0x40, 0x00, 0x4c, 0x48, 0x03, 0x5d, 0x00, 0x0a, 0x09, 0x10, 0x0a, 0x19,
0x02, 0x3e, 0x7f, 0x39, 0x5d, 0x0f, 0x2c, 0x45, 0xfe, 0x2c, 0x4b, 0x08, 0x0f, 0x98, 0x02, 0x07, 0x99, 0x21, 0x30, 0x4d, 0x5f, 0x62, 0x7f, 0x0a, 0x3f, 0x5d, 0x7b, 0x7f, 0x7a, 0x00, 0x2f, 0x71,
0x86, 0x77, 0x23, 0xcc, 0x40, 0x23, 0xcc, 0x28, 0x23, 0x58, 0x6b, 0x02, 0x61, 0x23, 0x54, 0x0e, 0x00, 0x2f, 0x05, 0x0e, 0x08, 0x4e, 0x82, 0x65, 0x07, 0x49, 0x5b, 0x21, 0xcc, 0x60, 0x7f, 0xcc,
0x86, 0x09, 0x01, 0x2c, 0x2d, 0x10, 0x0f, 0x65, 0x02, 0x0b, 0x71, 0x02, 0x26, 0x49, 0x33, 0x37, 0x87, 0x7f, 0x36, 0x01, 0x4e, 0x70, 0x7f, 0x52, 0x49, 0x09, 0x01, 0x59, 0x61, 0x10, 0x0f, 0x28,
0x01, 0x52, 0x20, 0x48, 0x72, 0x5d, 0x28, 0x7c, 0x81, 0x04, 0x72, 0x5d, 0x28, 0x7c, 0x5e, 0x39, 0x02, 0x0b, 0x81, 0x02, 0x1e, 0x0b, 0x07, 0x19, 0x7d, 0x01, 0x46, 0x78, 0x3c, 0x22, 0x7a, 0x00,
0x37, 0x01, 0x52, 0x00, 0x82, 0x01, 0x72, 0x2a, 0x0b, 0x71, 0xa5, 0x66, 0x25, 0x40, 0x2a, 0x0b, 0x87, 0x00, 0x30, 0x72, 0x22, 0x7a, 0x00, 0x87, 0x18, 0x5e, 0x1d, 0x7d, 0x01, 0x46, 0x00, 0x03,
0x71, 0x02, 0x39, 0x28, 0x03, 0x00, 0x37, 0x01, 0x52, 0x39, 0x09, 0x08, 0x7c, 0x5d, 0x28, 0x72, 0x7a, 0x22, 0x65, 0x0b, 0x81, 0xa2, 0x75, 0x53, 0x60, 0x65, 0x0b, 0x81, 0x02, 0x22, 0x30, 0x54,
0x03, 0x67, 0x7c, 0x5d, 0x28, 0x72, 0x59, 0x20, 0x37, 0x01, 0x52, 0x33, 0x07, 0x0b, 0x20, 0x2a, 0x00, 0x7d, 0x01, 0x46, 0x1d, 0x09, 0x08, 0x18, 0x7a, 0x00, 0x87, 0x22, 0x51, 0x01, 0x18, 0x7a,
0x0b, 0x71, 0x02, 0x10, 0x0c, 0x21, 0x08, 0x6e, 0x58, 0x57, 0x61, 0x02, 0x01, 0x3c, 0x57, 0x5d, 0x00, 0x87, 0x22, 0x55, 0x18, 0x7d, 0x01, 0x46, 0x19, 0x07, 0x0b, 0x78, 0x65, 0x0b, 0x81, 0x02,
0x25, 0x45, 0x9b, 0x69, 0x25, 0x37, 0x0b, 0x01, 0x4f, 0x08, 0x08, 0x00, 0x68, 0x02, 0x7c, 0x28, 0x10, 0x0c, 0x1b, 0x79, 0x0f, 0x55, 0x90, 0x3f, 0x01, 0x68, 0x48, 0x7a, 0x20, 0x71, 0x20, 0x06,
0x72, 0x75, 0x7c, 0x1b, 0x04, 0x00, 0x4a, 0x72, 0x3e, 0x20, 0x82, 0x05, 0x64, 0x72, 0x59, 0x26, 0x3e, 0x53, 0x7d, 0x0b, 0x01, 0x82, 0x6f, 0x00, 0x83, 0x02, 0x18, 0x87, 0x22, 0x39, 0x18, 0x03,
0x82, 0x38, 0x33, 0x5b, 0x06, 0x01, 0x7c, 0x48, 0x0f, 0x07, 0x39, 0x56, 0x83, 0x0d, 0x0a, 0x05, 0x72, 0x00, 0x67, 0x22, 0x5d, 0x78, 0x03, 0x40, 0x3d, 0x22, 0x55, 0x78, 0x03, 0x0e, 0x38, 0x22,
0x4a, 0x07, 0x10, 0x03, 0x20, 0x9a, 0x10, 0x06, 0x60, 0x70, 0x09, 0x25, 0x09, 0x67, 0x2c, 0x6b, 0x04, 0x66, 0x01, 0x18, 0x3c, 0x63, 0x1d, 0x2c, 0x0d, 0x0a, 0x05, 0x67, 0x07, 0x10, 0x03, 0x96,
0x04, 0x2c, 0x5f, 0x0b, 0x44, 0xa4, 0x44, 0x75, 0x44, 0x5d, 0x25, 0x5d, 0x25, 0x75, 0x44, 0xa4, 0x10, 0x06, 0x6a, 0x4a, 0x09, 0x53, 0x4d, 0x01, 0x59, 0x2b, 0x04, 0x53, 0x07, 0x0b, 0x20, 0x3a,
0x44, 0x2b, 0x44, 0x6b, 0x04, 0x44, 0x09, 0x69, 0x25, 0x70, 0x09, 0x10, 0x06, 0x65, 0x09, 0x0f, 0x20, 0x39, 0x20, 0x7a, 0x20, 0x7a, 0x20, 0x39, 0x20, 0x3a, 0x20, 0x80, 0x20, 0x2b, 0x04, 0x1a,
0x02, 0x25, 0x81, 0x09, 0x44, 0x04, 0x3e, 0x44, 0x66, 0x44, 0x46, 0x44, 0x4a, 0xa3, 0xa3, 0x44, 0x90, 0x3e, 0x53, 0x4a, 0x09, 0x10, 0x06, 0x1d, 0x90, 0x4e, 0x53, 0x58, 0x09, 0x20, 0x04, 0x5d,
0x4a, 0x44, 0x46, 0x44, 0x66, 0x25, 0x04, 0x3e, 0x2c, 0x81, 0x09, 0x25, 0x09, 0x0f, 0x02, 0x10, 0x20, 0x75, 0x20, 0x56, 0x20, 0x67, 0x20, 0x9b, 0x9b, 0x67, 0x20, 0x56, 0x20, 0x75, 0x53, 0x04,
0x08, 0x33, 0xa2, 0x2c, 0xa4, 0x3a, 0x46, 0x57, 0x2b, 0x0f, 0x6a, 0x57, 0x2b, 0x0f, 0x6a, 0x23, 0x5d, 0x59, 0x58, 0x09, 0x1e, 0x90, 0x4e, 0x10, 0x08, 0x78, 0x6e, 0x1f, 0x2f, 0x3a, 0xf6, 0x56,
0xa4, 0x3a, 0x46, 0x2c, 0x2d, 0x10, 0x0d, 0x60, 0x1d, 0x9a, 0x7c, 0x6c, 0x2e, 0x4f, 0x97, 0x10, 0x48, 0x80, 0x0f, 0x50, 0x82, 0x80, 0x0f, 0x50, 0x48, 0x3a, 0xf6, 0x56, 0x59, 0x61, 0x10, 0x0d,
0x05, 0x1d, 0x19, 0x24, 0xa3, 0x44, 0x79, 0x44, 0x77, 0x10, 0x06, 0x00, 0x19, 0xc0, 0x10, 0x05, 0x1b, 0x69, 0x91, 0x82, 0x2d, 0x82, 0x61, 0x99, 0x10, 0x05, 0x69, 0x26, 0x26, 0x9c, 0x9b, 0x77,
0x1d, 0x19, 0x18, 0x10, 0x05, 0x21, 0x1b, 0x9b, 0x92, 0x4e, 0x25, 0x62, 0x44, 0x79, 0x44, 0x42, 0x20, 0x5b, 0x10, 0x06, 0x26, 0x26, 0xc0, 0x10, 0x05, 0x69, 0x26, 0x26, 0x99, 0x10, 0x05, 0x1b,
0x25, 0x28, 0x01, 0x25, 0x7f, 0x2c, 0x55, 0x44, 0x38, 0x2c, 0x85, 0x44, 0x08, 0x92, 0x45, 0x10, 0x51, 0x20, 0x35, 0x20, 0x34, 0x59, 0x64, 0x20, 0x77, 0x20, 0x7e, 0x9e, 0x7a, 0x53, 0x7b, 0x1a,
0x0a, 0x65, 0x2a, 0x0a, 0x83, 0x0a, 0x02, 0x23, 0x81, 0x07, 0x5c, 0x07, 0x67, 0x22, 0x64, 0x26, 0x90, 0x06, 0x20, 0x38, 0x53, 0x5a, 0x20, 0x6f, 0x20, 0x71, 0x10, 0x0a, 0x28, 0x65, 0x0a, 0x7c,
0xa4, 0x22, 0x58, 0x26, 0x3c, 0x22, 0x9f, 0xe5, 0xcc, 0x99, 0x76, 0x9f, 0x58, 0x26, 0x3c, 0x22, 0x3f, 0x7f, 0x58, 0x07, 0x6b, 0x42, 0x01, 0x21, 0x3d, 0x1e, 0x3a, 0x21, 0x36, 0x1e, 0x68, 0x21,
0x64, 0x26, 0x2f, 0x22, 0x81, 0x07, 0x5c, 0x07, 0x67, 0x22, 0x2a, 0x0a, 0x83, 0x0a, 0x02, 0x10, 0x7a, 0x8a, 0x23, 0x1a, 0x8e, 0x7a, 0x8a, 0x00, 0x36, 0x1e, 0x68, 0x21, 0x3d, 0x1e, 0x33, 0x21,
0x0a, 0x60, 0x03, 0x09, 0x51, 0x2c, 0x87, 0x70, 0x9a, 0x93, 0x2c, 0x1f, 0x10, 0x0a, 0x65, 0x31, 0x58, 0x07, 0x6b, 0x42, 0x01, 0x21, 0x65, 0x0a, 0x7c, 0x3f, 0x10, 0x0a, 0x6a, 0x03, 0x09, 0x0e,
0x6e, 0x59, 0x00, 0x6c, 0x6d, 0x01, 0x03, 0x66, 0x23, 0x08, 0x26, 0x1b, 0x44, 0x6b, 0x44, 0x48, 0x2f, 0x37, 0x03, 0x89, 0x91, 0x59, 0x27, 0x10, 0x0a, 0x28, 0x52, 0x0e, 0x55, 0x78, 0x25, 0x0b,
0x25, 0x81, 0x04, 0x4f, 0x74, 0x58, 0x4f, 0x2a, 0x4e, 0x4f, 0x2a, 0x4e, 0x4f, 0x74, 0x4e, 0x25, 0x03, 0x01, 0x03, 0x75, 0x7f, 0x08, 0x1e, 0x51, 0x20, 0x2b, 0x20, 0x3c, 0x9e, 0x72, 0x82, 0x30,
0x59, 0x44, 0xc3, 0x3e, 0x10, 0x0a, 0x65, 0x03, 0x43, 0x83, 0x42, 0x23, 0x66, 0x03, 0x5c, 0x85, 0x36, 0x82, 0x65, 0x34, 0x48, 0x65, 0x34, 0x48, 0x30, 0x34, 0x59, 0x55, 0x53, 0x2e, 0x5d, 0x10,
0x92, 0x62, 0x44, 0x62, 0x4f, 0x74, 0x85, 0x08, 0x22, 0xc0, 0x0b, 0x2c, 0x74, 0x7b, 0x07, 0x44, 0x0a, 0x28, 0x03, 0x4d, 0x5f, 0x7e, 0x7f, 0x75, 0x02, 0x30, 0x5a, 0x08, 0x20, 0x64, 0x20, 0x64,
0x7a, 0x44, 0x6b, 0x44, 0x85, 0x22, 0x59, 0x02, 0x2a, 0x06, 0x0d, 0x04, 0x22, 0x31, 0x0d, 0x7d, 0x82, 0x30, 0x5a, 0x08, 0x21, 0xc0, 0x0b, 0x9e, 0x47, 0x07, 0x20, 0x85, 0x20, 0x2b, 0x20, 0x5a,
0x84, 0x10, 0x0a, 0x7c, 0x21, 0x81, 0x0f, 0x25, 0x42, 0x0f, 0x2c, 0x64, 0xfe, 0x4f, 0x03, 0x67, 0x21, 0x7e, 0x01, 0x65, 0x06, 0x72, 0x21, 0x52, 0x5f, 0x0a, 0x03, 0x10, 0x0a, 0x18, 0x1b, 0x58,
0xfe, 0x23, 0x74, 0x77, 0x6f, 0x57, 0x34, 0xec, 0x23, 0x7f, 0x6f, 0x23, 0x75, 0xd4, 0x23, 0x2e, 0x0f, 0x53, 0x7e, 0x2f, 0x3d, 0x23, 0x82, 0x51, 0x01, 0x23, 0x7f, 0x30, 0x5b, 0x23, 0x48, 0x6c,
0xc5, 0x6c, 0x18, 0x10, 0x0a, 0x60, 0xc3, 0x57, 0x97, 0x0e, 0x7d, 0x0a, 0x02, 0x57, 0x7e, 0x3d, 0xec, 0x7f, 0x7b, 0x24, 0x7f, 0x39, 0x24, 0x7f, 0x2d, 0x53, 0x2a, 0x10, 0x0a, 0x6a, 0x2e, 0x48,
0x07, 0x0e, 0x03, 0x44, 0x2b, 0xa3, 0xa3, 0x44, 0x2b, 0x22, 0x59, 0x02, 0x2a, 0x07, 0x0e, 0x03, 0x2a, 0x1f, 0x5f, 0x5f, 0x3f, 0x48, 0x62, 0x65, 0x07, 0x54, 0x20, 0x80, 0x20, 0x9b, 0x9b, 0x80,
0x22, 0x31, 0x0d, 0x86, 0x0a, 0x02, 0x10, 0x0a, 0x21, 0x06, 0x6e, 0x59, 0x57, 0x09, 0x09, 0xa5, 0x21, 0x7e, 0x01, 0x65, 0x07, 0x54, 0x21, 0x52, 0x49, 0x3f, 0x10, 0x0a, 0x1b, 0x4c, 0x0f, 0x55,
0x56, 0x23, 0x3c, 0x44, 0x7e, 0x44, 0x47, 0x0b, 0x83, 0x6d, 0x23, 0x7d, 0x1a, 0x0e, 0x04, 0x41, 0x90, 0x09, 0xa2, 0x03, 0x0b, 0x7f, 0x68, 0x20, 0x62, 0x20, 0x0d, 0x7b, 0x0e, 0x81, 0x03, 0x78,
0x06, 0x26, 0x2b, 0x22, 0x9f, 0x0b, 0x01, 0x26, 0x28, 0x22, 0x06, 0x06, 0x26, 0x2b, 0x23, 0x66, 0x25, 0x66, 0x45, 0x0e, 0x04, 0x18, 0x25, 0x06, 0x1e, 0x80, 0x21, 0x7a, 0x8a, 0x00, 0x0b, 0x01,
0x5c, 0x73, 0x04, 0x22, 0x74, 0x0a, 0x51, 0x4e, 0x10, 0x0a, 0x65, 0x2e, 0x44, 0x64, 0x44, 0x45, 0x8a, 0x00, 0x06, 0x06, 0x1e, 0x80, 0x7f, 0x75, 0x45, 0x0e, 0x04, 0x21, 0x30, 0x0a, 0x4b, 0x34,
0x25, 0x48, 0x44, 0x42, 0x25, 0x1b, 0x44, 0x34, 0x25, 0x28, 0x01, 0x25, 0x5a, 0x44, 0x45, 0x25, 0x10, 0x0a, 0x6e, 0x27, 0x20, 0x3d, 0x20, 0x71, 0x53, 0x3c, 0x20, 0x7e, 0x53, 0x51, 0x20, 0x6c,
0x7f, 0x2c, 0x4e, 0x10, 0x0a, 0x60, 0x40, 0x83, 0x66, 0x23, 0x09, 0x4e, 0x5c, 0x85, 0x09, 0x22, 0x9e, 0x7a, 0x22, 0x31, 0x1d, 0x39, 0x53, 0x7b, 0x20, 0x34, 0x10, 0x0a, 0x6a, 0x60, 0x7c, 0x75,
0x38, 0x20, 0x62, 0x22, 0x38, 0x20, 0x62, 0x39, 0x5f, 0x4e, 0x5c, 0x04, 0x63, 0x23, 0x0a, 0x53, 0x90, 0x0c, 0x04, 0x6b, 0x5a, 0x09, 0x21, 0x38, 0x1e, 0x64, 0x21, 0x38, 0x1e, 0x64, 0x21, 0x84,
0x0a, 0x22, 0x5f, 0x47, 0x5c, 0x7b, 0x07, 0x22, 0x0d, 0x04, 0x26, 0x7a, 0x22, 0x3e, 0x20, 0x74, 0x04, 0x6b, 0x04, 0x6d, 0x7f, 0x0a, 0xf3, 0x0a, 0x7f, 0x42, 0x05, 0x6b, 0x47, 0x07, 0x21, 0x72,
0x76, 0x0d, 0x04, 0x26, 0x7a, 0x22, 0x06, 0x47, 0x5c, 0x7b, 0x06, 0x23, 0x48, 0x83, 0x59, 0x10, 0x1e, 0x85, 0x21, 0x5d, 0x78, 0x30, 0x88, 0x72, 0x1e, 0x85, 0x21, 0x4c, 0x05, 0x6b, 0x47, 0x06,
0x0a, 0x60, 0x85, 0x7d, 0x0a, 0x01, 0x23, 0x5b, 0x1a, 0x0c, 0x23, 0x6a, 0x20, 0x06, 0x06, 0x22, 0x7f, 0x3c, 0x7c, 0x55, 0x10, 0x0a, 0x6a, 0x5a, 0x5f, 0x0a, 0x01, 0x7f, 0x04, 0x66, 0x6b, 0x60,
0x5d, 0x7c, 0x74, 0x0b, 0x22, 0x9f, 0x6a, 0x20, 0x06, 0x76, 0x5b, 0x1a, 0x51, 0x23, 0x3c, 0x83, 0x7f, 0x50, 0x1e, 0x06, 0x06, 0x21, 0x7a, 0x78, 0x30, 0x0b, 0x21, 0x7a, 0x8a, 0x00, 0x50, 0x1e,
0x0c, 0x7b, 0x44, 0x54, 0x44, 0x7e, 0x23, 0x6d, 0x3d, 0x09, 0x09, 0x57, 0x48, 0x86, 0x07, 0x10, 0x06, 0x88, 0x04, 0x66, 0x45, 0x4b, 0x7f, 0x68, 0x7c, 0x0c, 0x47, 0x20, 0x04, 0x0a, 0x20, 0x62,
0x05, 0x26, 0x36, 0x18, 0x36, 0x18, 0x10, 0x05, 0x26, 0x36, 0x18, 0x25, 0x95, 0xa3, 0x44, 0x79, 0x7f, 0x0b, 0x03, 0x65, 0x09, 0x09, 0x48, 0x47, 0x49, 0x07, 0x10, 0x05, 0x6a, 0x26, 0x61, 0x26,
0x44, 0x77, 0x10, 0x0d, 0x39, 0x36, 0x74, 0x40, 0x4f, 0x54, 0x0e, 0x7e, 0x39, 0x2a, 0x08, 0x0d, 0x99, 0x10, 0x05, 0x6a, 0x26, 0x61, 0x26, 0x9c, 0x9b, 0x77, 0x20, 0x5b, 0x10, 0x0d, 0x1d, 0x26,
0x66, 0x01, 0x22, 0x2b, 0x0e, 0x08, 0x02, 0x7c, 0x6c, 0x09, 0x01, 0x25, 0x2b, 0x0e, 0x08, 0x98, 0x30, 0x60, 0x82, 0x52, 0x62, 0x1d, 0x65, 0x79, 0x75, 0x01, 0x21, 0x80, 0x0e, 0x08, 0x02, 0x1a,
0x2a, 0x08, 0x0d, 0x66, 0x01, 0x25, 0x54, 0x0e, 0x7e, 0x2c, 0x74, 0x40, 0x10, 0x0d, 0x4f, 0x21, 0x25, 0x09, 0x01, 0x53, 0x80, 0x0e, 0x08, 0x02, 0x59, 0x65, 0x79, 0x75, 0x01, 0x53, 0x52, 0x62,
0x36, 0xb4, 0x2e, 0x1d, 0xdc, 0x2e, 0x10, 0x0d, 0x20, 0x36, 0x66, 0x01, 0x25, 0x54, 0x0e, 0x7e, 0x9e, 0x60, 0x10, 0x0d, 0x53, 0x1b, 0x8b, 0x2d, 0x69, 0x24, 0x2d, 0x10, 0x0d, 0x78, 0x26, 0x75,
0x2c, 0x74, 0x40, 0x87, 0x98, 0x2a, 0x4d, 0x6a, 0x4f, 0x74, 0x09, 0x0f, 0x57, 0x2a, 0x4d, 0x6a, 0x01, 0x53, 0x52, 0x62, 0x9e, 0x60, 0x37, 0x02, 0x59, 0x65, 0x08, 0x0e, 0x50, 0x9e, 0x09, 0x0f,
0x72, 0x74, 0x40, 0x87, 0x02, 0x22, 0x54, 0x0e, 0x7e, 0x4f, 0x66, 0x01, 0x10, 0x09, 0x65, 0x3c, 0x48, 0x65, 0x08, 0x0e, 0x50, 0x1d, 0x30, 0x60, 0x37, 0x02, 0x21, 0x52, 0x62, 0x82, 0x75, 0x01,
0x80, 0x01, 0x57, 0x59, 0x5c, 0x61, 0xa3, 0x9b, 0x0d, 0x2c, 0x5f, 0x0f, 0x07, 0x2c, 0x3f, 0x09, 0x10, 0x09, 0x28, 0x7b, 0x7c, 0x09, 0x01, 0x48, 0x0c, 0x05, 0x6b, 0x70, 0x20, 0x9b, 0x42, 0x53,
0x25, 0x87, 0xa2, 0x00, 0x29, 0x18, 0x10, 0x10, 0x21, 0x74, 0x07, 0x0c, 0x0e, 0x86, 0x09, 0x03, 0x07, 0x63, 0x59, 0x06, 0x0f, 0x09, 0x53, 0x37, 0x20, 0x61, 0x82, 0x1b, 0x61, 0x10, 0x10, 0x22,
0x39, 0x5b, 0x09, 0x04, 0x01, 0x2a, 0x07, 0x87, 0x33, 0x4b, 0x03, 0x3b, 0x74, 0x0b, 0x09, 0x3b, 0x9e, 0x84, 0x0e, 0x49, 0x09, 0x03, 0x1d, 0x04, 0x0e, 0x09, 0x04, 0x01, 0x65, 0x07, 0x37, 0x19,
0x28, 0x03, 0x00, 0x85, 0x7d, 0x58, 0x0f, 0x81, 0x04, 0x26, 0x5e, 0x00, 0x5b, 0x1a, 0x0e, 0xfd, 0x05, 0x54, 0x1a, 0x30, 0x0b, 0x09, 0x1e, 0x30, 0x54, 0x00, 0x5a, 0x5f, 0x36, 0x5d, 0x72, 0x1e,
0x46, 0x26, 0x77, 0x00, 0x6a, 0x20, 0x06, 0xfd, 0x28, 0x26, 0x5d, 0x5d, 0x7c, 0x74, 0xf5, 0xc5, 0x5e, 0x00, 0x04, 0x66, 0x45, 0x0e, 0x29, 0x56, 0x1e, 0x5b, 0x50, 0x1e, 0x06, 0x29, 0x87, 0x1e,
0x5d, 0x5d, 0x7c, 0x74, 0xfd, 0x4a, 0x26, 0x77, 0x00, 0x6a, 0x20, 0x06, 0xfd, 0x79, 0x26, 0x5e, 0x7a, 0x00, 0x7a, 0x78, 0x30, 0x57, 0xc5, 0x7a, 0x00, 0x7a, 0x78, 0x30, 0x29, 0x67, 0x1e, 0x5b,
0x00, 0x5b, 0x1a, 0x51, 0x03, 0x75, 0x26, 0x28, 0x03, 0x00, 0x85, 0x0f, 0x71, 0x5b, 0x0a, 0xa5, 0x50, 0x1e, 0x06, 0x29, 0x77, 0x1e, 0x5e, 0x00, 0x04, 0x66, 0x45, 0x4b, 0x03, 0x39, 0x78, 0x30,
0x3b, 0x4b, 0x03, 0x44, 0x5b, 0x09, 0x04, 0x01, 0x2a, 0x04, 0x61, 0x72, 0x74, 0x07, 0x0c, 0x0e, 0x54, 0x00, 0x5a, 0x5f, 0x36, 0x0e, 0x0a, 0xa2, 0x1a, 0x05, 0x54, 0x20, 0x04, 0x0e, 0x09, 0x04,
0x86, 0x0c, 0x08, 0x03, 0x10, 0x0b, 0x21, 0x74, 0x0c, 0x9b, 0x0e, 0x05, 0x25, 0x0d, 0x85, 0x2c, 0x01, 0x30, 0x04, 0x09, 0x0b, 0x22, 0x30, 0x84, 0x0e, 0x5f, 0x0c, 0x08, 0x03, 0x10, 0x0b, 0x22,
0x05, 0x0a, 0x00, 0x6d, 0x4f, 0x58, 0x00, 0x05, 0x0a, 0x57, 0x68, 0x20, 0x75, 0x23, 0x55, 0x7c, 0x9e, 0x0c, 0x20, 0x07, 0x40, 0x53, 0x0d, 0x5a, 0x59, 0x05, 0x0a, 0x00, 0x0b, 0x03, 0x82, 0x36,
0x5f, 0x08, 0x22, 0x81, 0x26, 0x28, 0x01, 0x72, 0x5f, 0x1f, 0x07, 0x39, 0x75, 0x3b, 0x4a, 0x72, 0x00, 0x05, 0x0a, 0x48, 0x83, 0x78, 0x39, 0x90, 0x06, 0x78, 0x35, 0x21, 0x58, 0x1e, 0x92, 0x22,
0x05, 0x0a, 0x33, 0x42, 0x33, 0x4e, 0x33, 0x85, 0x10, 0x0b, 0x65, 0x53, 0x7d, 0x66, 0x39, 0xc6, 0x07, 0x2e, 0x63, 0x1d, 0x39, 0x1a, 0x67, 0x22, 0x05, 0x0a, 0x19, 0x7e, 0x19, 0x0c, 0x04, 0x19,
0x74, 0x85, 0x09, 0x99, 0x62, 0x99, 0x62, 0x30, 0x01, 0x85, 0x09, 0x39, 0x1f, 0x69, 0x30, 0x01, 0x5a, 0x10, 0x0b, 0x28, 0xf3, 0x5f, 0x75, 0x1d, 0xc6, 0x30, 0x5a, 0x09, 0x9f, 0x1e, 0x64, 0x9f,
0x04, 0x87, 0x99, 0x1b, 0x99, 0x6b, 0x99, 0x1b, 0x30, 0x01, 0x7a, 0x07, 0x33, 0xc0, 0x7d, 0x59, 0x1e, 0x64, 0x22, 0xc6, 0x30, 0x5a, 0x09, 0x1d, 0x27, 0x3e, 0x22, 0xc6, 0x30, 0x04, 0x37, 0x9f,
0x10, 0x0b, 0x21, 0x31, 0x0e, 0x86, 0x84, 0x9c, 0x39, 0x03, 0x67, 0x26, 0x5f, 0x39, 0x55, 0x44, 0x1e, 0x51, 0x9f, 0x1e, 0x2b, 0x9f, 0x1e, 0x51, 0x22, 0xc6, 0x30, 0x85, 0x07, 0x19, 0xc0, 0x5f,
0x75, 0xa2, 0x29, 0x75, 0x44, 0x55, 0x44, 0x03, 0x67, 0x26, 0x5f, 0x9c, 0x23, 0x31, 0x0e, 0x86, 0x55, 0x10, 0x0b, 0x1b, 0x3b, 0x0e, 0x5f, 0x62, 0x21, 0x4c, 0x05, 0x6b, 0x3b, 0x0f, 0x1d, 0x51,
0x84, 0x10, 0x0c, 0x65, 0x53, 0x71, 0x35, 0x72, 0xc8, 0x74, 0x03, 0x4d, 0x05, 0x99, 0x82, 0x03, 0x01, 0x1a, 0x07, 0x1d, 0x09, 0x06, 0x20, 0x39, 0x20, 0x61, 0x1f, 0x39, 0x1a, 0x90, 0x06, 0x20,
0x94, 0x33, 0x5a, 0x94, 0x33, 0x4a, 0x94, 0x33, 0x28, 0x94, 0x33, 0x28, 0x94, 0x33, 0x4a, 0x94, 0x51, 0x01, 0x1a, 0x07, 0x21, 0x4c, 0x05, 0x6b, 0x3b, 0x0f, 0x7f, 0x3b, 0x0e, 0x5f, 0x62, 0x10,
0x33, 0x5a, 0x3b, 0xcc, 0x3b, 0x03, 0x38, 0x3b, 0xc8, 0x74, 0x03, 0x4d, 0x05, 0x33, 0xc0, 0x71, 0x0c, 0x28, 0xf3, 0x81, 0x07, 0x02, 0x1c, 0x30, 0x03, 0x08, 0x40, 0x9f, 0x1e, 0x03, 0x54, 0x25,
0x35, 0x10, 0x0a, 0x65, 0x2e, 0x41, 0x9a, 0x1f, 0x41, 0x93, 0x1f, 0x10, 0x09, 0x65, 0x1f, 0x6c, 0x31, 0x23, 0x19, 0x67, 0x25, 0x22, 0x0e, 0x25, 0x19, 0x87, 0x25, 0x19, 0x67, 0x25, 0x31, 0xf6,
0x9a, 0x0f, 0xd3, 0x6c, 0x93, 0x10, 0x0c, 0x60, 0x2a, 0x43, 0x7d, 0x0c, 0x09, 0x03, 0x39, 0x7b, 0x1a, 0x03, 0x38, 0x1a, 0x94, 0x30, 0x03, 0x08, 0x40, 0x19, 0xc0, 0x81, 0x07, 0x02, 0x10, 0x0a,
0x06, 0x02, 0x74, 0x48, 0x0f, 0x72, 0x4a, 0xa5, 0x3b, 0x08, 0x72, 0x55, 0x44, 0x75, 0xa2, 0x20, 0x28, 0xe3, 0xcb, 0x25, 0x91, 0x2e, 0x88, 0x89, 0x27, 0x10, 0x09, 0x28, 0xe3, 0xc7, 0x25, 0x91,
0xc0, 0x72, 0x75, 0x1e, 0x72, 0x34, 0x1e, 0x33, 0x2a, 0x38, 0x50, 0x39, 0x73, 0x07, 0xa5, 0x3d, 0xe3, 0x48, 0x89, 0x10, 0x0c, 0x6a, 0x65, 0x4d, 0x0f, 0x49, 0x09, 0x04, 0x1d, 0x47, 0x06, 0x02,
0x07, 0x76, 0x31, 0x0d, 0x7d, 0x0c, 0x08, 0x03, 0x10, 0x0c, 0x65, 0x8f, 0x0f, 0x94, 0x94, 0x2e, 0x30, 0x3c, 0x0f, 0x22, 0x67, 0xa2, 0x1a, 0x08, 0x22, 0x09, 0x06, 0x20, 0x39, 0x20, 0x61, 0x78,
0x8f, 0x27, 0x94, 0x10, 0x05, 0x60, 0x96, 0x10, 0x05, 0x60, 0x96, 0x44, 0x62, 0x2c, 0x74, 0x52, 0xc0, 0x22, 0x39, 0x18, 0x86, 0x22, 0x6c, 0x18, 0x86, 0x22, 0x64, 0xa2, 0x86, 0x1d, 0x06, 0x0e,
0x26, 0x6c, 0x0b, 0x02, 0x10, 0x0a, 0x20, 0x24, 0x3b, 0x1b, 0x07, 0x30, 0x82, 0x05, 0x39, 0xc6, 0x07, 0xa2, 0x74, 0x07, 0x88, 0x3b, 0x0d, 0x5f, 0x37, 0x03, 0x10, 0x0c, 0x6e, 0x25, 0x25, 0x8d,
0x04, 0x45, 0x39, 0xc8, 0x7b, 0xa5, 0x6c, 0x5f, 0x69, 0x7c, 0x6c, 0x05, 0x69, 0x2c, 0x3e, 0x59, 0x8d, 0x2d, 0x8d, 0x8d, 0x8d, 0x10, 0x05, 0x6a, 0x89, 0x1f, 0x89, 0x10, 0x05, 0x6a, 0x2a, 0x91,
0x20, 0x6c, 0x74, 0x59, 0x22, 0xcc, 0x74, 0x66, 0x22, 0xc8, 0x74, 0x66, 0x22, 0xc6, 0x74, 0x63, 0x91, 0x9c, 0x64, 0x9e, 0x46, 0x19, 0x25, 0x0b, 0x02, 0x10, 0x0a, 0x6e, 0x1a, 0x51, 0x07, 0x1d,
0x00, 0x30, 0x74, 0x63, 0x10, 0x09, 0x65, 0x96, 0xc3, 0x10, 0x0d, 0x20, 0x24, 0x0a, 0x33, 0x0a, 0xc5, 0x03, 0x40, 0x1d, 0xc6, 0x04, 0x71, 0x00, 0x1c, 0x05, 0x39, 0x1d, 0xcc, 0x07, 0x3e, 0x1a,
0x0f, 0x1e, 0x75, 0x26, 0x2a, 0x0c, 0x0f, 0x1e, 0x07, 0x08, 0x3b, 0x09, 0x3f, 0x1e, 0x28, 0x01, 0x25, 0x05, 0x3e, 0x59, 0x5d, 0x55, 0x1a, 0x25, 0x30, 0x55, 0x1d, 0xcc, 0x30, 0x75, 0x18, 0x1c,
0x20, 0x81, 0x00, 0xc5, 0xcc, 0x34, 0x7c, 0x5f, 0x08, 0x00, 0xc5, 0xcc, 0x4a, 0x20, 0x75, 0xfe, 0x30, 0x75, 0x21, 0xc6, 0x30, 0x6d, 0x21, 0xc5, 0x30, 0x6d, 0x10, 0x09, 0x96, 0x91, 0x91, 0x2e,
0x3b, 0xc8, 0x42, 0x00, 0x46, 0x6f, 0x3b, 0xc8, 0x85, 0x00, 0x4e, 0xe8, 0x3b, 0xc6, 0x87, 0x0c, 0x10, 0x0d, 0x6e, 0x0a, 0x19, 0x0a, 0x57, 0x86, 0x39, 0x1e, 0x65, 0x0c, 0x57, 0x86, 0x35, 0x1a,
0xcc, 0x3b, 0xc6, 0x3f, 0x06, 0xec, 0x1e, 0x30, 0xcc, 0x94, 0x10, 0x0c, 0x20, 0x24, 0x38, 0x50, 0x09, 0x06, 0x57, 0x86, 0x92, 0x18, 0x58, 0x00, 0xc5, 0xcc, 0x6c, 0x78, 0x35, 0x00, 0xc5, 0xcc,
0x94, 0x2b, 0x00, 0x50, 0x3b, 0xcc, 0x6a, 0xd4, 0x94, 0x2a, 0x67, 0xd4, 0x33, 0xe6, 0x64, 0xd4, 0x67, 0x78, 0x0d, 0xa2, 0xc5, 0x94, 0x7e, 0x00, 0x56, 0x18, 0xc5, 0x94, 0x5a, 0x00, 0x34, 0xf6,
0x33, 0xc6, 0x4e, 0xec, 0x33, 0xc6, 0x03, 0x67, 0x6f, 0x72, 0xc5, 0x08, 0x08, 0x6f, 0x94, 0x3b, 0x1a, 0xc6, 0x37, 0x0c, 0xcc, 0x1a, 0xc6, 0x73, 0x94, 0x86, 0x9f, 0x86, 0x9f, 0x10, 0x0c, 0x28,
0x77, 0xfe, 0x94, 0x3b, 0x68, 0xfe, 0x3b, 0xcc, 0x3b, 0x08, 0x3f, 0x94, 0x3b, 0x74, 0x0c, 0x0f, 0x5f, 0xa2, 0x86, 0x25, 0x80, 0x00, 0x86, 0x1a, 0xcc, 0x50, 0x86, 0x1a, 0xcc, 0x67, 0x01, 0x24,
0x10, 0x0d, 0x21, 0x31, 0x51, 0x8e, 0x8a, 0x3b, 0x82, 0x02, 0x72, 0x4b, 0x06, 0x02, 0x2a, 0x73, 0x1a, 0x94, 0x3d, 0x24, 0x19, 0xc6, 0x34, 0x44, 0x19, 0xc6, 0x51, 0x01, 0x44, 0x22, 0xc5, 0x6f,
0x05, 0x22, 0x31, 0x0e, 0x7d, 0x84, 0x10, 0x0a, 0x29, 0xbc, 0x7d, 0x91, 0x06, 0x41, 0x3b, 0x7a, 0x44, 0x25, 0x1a, 0x5b, 0x0f, 0x25, 0x1a, 0x83, 0x23, 0x1a, 0xcc, 0x1a, 0x08, 0x06, 0x0f, 0x25,
0x41, 0x9d, 0x01, 0x7b, 0x07, 0x33, 0xbc, 0x7d, 0x66, 0x6c, 0x9a, 0x10, 0x0d, 0x21, 0x31, 0x51, 0x1a, 0x30, 0x0c, 0x0f, 0x10, 0x0d, 0x8f, 0x03, 0x8c, 0x31, 0x02, 0x54, 0x1a, 0x03, 0x38, 0x22,
0x8e, 0x8a, 0x3b, 0x82, 0x04, 0x72, 0x4b, 0x06, 0x02, 0x2a, 0x73, 0x08, 0x22, 0x31, 0x0d, 0x4c, 0xa1, 0x40, 0x21, 0x3b, 0x0e, 0x5f, 0x0a, 0x03, 0x10, 0x0a, 0xa0, 0x06, 0x9d, 0x1c, 0x78, 0x2b,
0x92, 0x06, 0x67, 0x9b, 0x69, 0x10, 0x0b, 0x29, 0xbc, 0x7d, 0x91, 0x07, 0x41, 0x3b, 0x1b, 0x41, 0x9d, 0x1c, 0x30, 0x47, 0x07, 0x19, 0xbc, 0x5f, 0x75, 0x78, 0x25, 0x91, 0x10, 0x0d, 0x8f, 0x03,
0x9d, 0x01, 0x7b, 0x06, 0x22, 0xc3, 0x0c, 0x39, 0xc8, 0x74, 0x4b, 0x05, 0x41, 0x3b, 0x7b, 0x00, 0x8c, 0x31, 0x02, 0x54, 0x1a, 0x03, 0x0e, 0x04, 0x22, 0xa1, 0x0e, 0x08, 0x21, 0x3b, 0x0d, 0x4f,
0x99, 0x59, 0x99, 0x7b, 0x30, 0x20, 0x66, 0x10, 0x0a, 0x60, 0x40, 0x0e, 0x0d, 0x84, 0x22, 0x5f, 0x08, 0x20, 0x4c, 0x01, 0x20, 0x07, 0x3e, 0x10, 0x0b, 0xa0, 0x07, 0x1c, 0x78, 0x51, 0x1c, 0x78,
0x77, 0x01, 0x31, 0x0f, 0x23, 0x75, 0x26, 0x08, 0x23, 0x5d, 0x25, 0x49, 0x44, 0x4a, 0x0c, 0x08, 0x2b, 0x9d, 0x1c, 0x30, 0x47, 0x06, 0x21, 0x2e, 0x0c, 0x00, 0x1c, 0x30, 0x05, 0x40, 0x1c, 0x78,
0x05, 0x98, 0x04, 0x52, 0x71, 0x01, 0x44, 0x61, 0xa3, 0x22, 0x09, 0x3b, 0x1b, 0x41, 0x59, 0x5c, 0x47, 0x1c, 0x1e, 0x55, 0x1a, 0xcc, 0x1a, 0x47, 0x9f, 0x1a, 0x75, 0x10, 0x0a, 0x6a, 0x60, 0x7c,
0x04, 0x63, 0x22, 0x03, 0x43, 0x7d, 0x66, 0x10, 0x09, 0x7c, 0x29, 0xc3, 0xcb, 0x6c, 0x93, 0x93, 0x62, 0x7f, 0x84, 0x03, 0x01, 0x3b, 0x0f, 0x7f, 0x39, 0x1e, 0x08, 0x7f, 0x7a, 0x20, 0x0b, 0x07,
0x10, 0x0c, 0x65, 0x8f, 0x8f, 0x38, 0x3b, 0x62, 0x72, 0x2f, 0x00, 0x3b, 0x64, 0x33, 0x2a, 0x87, 0x20, 0x67, 0x0c, 0x08, 0x05, 0x02, 0x59, 0x04, 0x46, 0x81, 0x01, 0x20, 0x70, 0x20, 0x87, 0x21,
0xa5, 0x2a, 0x08, 0x75, 0x72, 0x2a, 0x43, 0x0f, 0x86, 0x09, 0x02, 0x10, 0x0b, 0x29, 0x74, 0x5d, 0x09, 0x1a, 0x51, 0x18, 0x25, 0x0c, 0x05, 0x6b, 0x04, 0x6d, 0x21, 0x03, 0x4d, 0x5f, 0x75, 0x10,
0x3b, 0x74, 0x5d, 0x3b, 0x34, 0x33, 0x5a, 0x33, 0x1b, 0x33, 0x45, 0x72, 0x42, 0x3b, 0x7f, 0x33, 0x09, 0x18, 0x1f, 0x2d, 0x82, 0x2a, 0x91, 0x91, 0x10, 0x0c, 0x48, 0x8d, 0x8d, 0x8d, 0x8d, 0x22,
0x7f, 0x20, 0x58, 0x22, 0x45, 0x20, 0x1b, 0x23, 0x5a, 0x20, 0x55, 0x22, 0x74, 0x5d, 0x28, 0x01, 0x0e, 0xa2, 0x1a, 0x64, 0x22, 0x33, 0x00, 0x1a, 0x3d, 0x19, 0x65, 0x37, 0xa2, 0x65, 0x08, 0x39,
0x57, 0x34, 0x5f, 0x08, 0x4f, 0x4a, 0x81, 0x98, 0x0b, 0x0a, 0x0a, 0x25, 0x04, 0x0f, 0x04, 0x10, 0x22, 0x65, 0x4d, 0x0f, 0x49, 0x09, 0x02, 0x10, 0x0b, 0x78, 0x9e, 0x7a, 0x19, 0x92, 0x1a, 0x6c,
0x11, 0x65, 0x0d, 0x3b, 0x70, 0x02, 0x3b, 0x5d, 0x00, 0x78, 0x26, 0x73, 0x06, 0x26, 0x7f, 0x00, 0x31, 0x51, 0x19, 0x71, 0x22, 0x7e, 0x1a, 0x7b, 0x1d, 0x68, 0x1a, 0x36, 0x21, 0x71, 0x78, 0x51,
0x54, 0x26, 0x09, 0x52, 0x26, 0x0a, 0x05, 0x26, 0x67, 0x20, 0x0d, 0x4a, 0x20, 0x28, 0x01, 0x26, 0x7f, 0x77, 0x78, 0x09, 0x06, 0x7f, 0x92, 0x92, 0x7f, 0x08, 0x76, 0x08, 0x82, 0x67, 0x01, 0x39,
0x08, 0x06, 0x00, 0x74, 0x0c, 0x00, 0x0c, 0x02, 0x7c, 0x79, 0x3b, 0x56, 0x7c, 0x05, 0x08, 0x00, 0x59, 0x0a, 0x0a, 0x0a, 0x53, 0x04, 0x0f, 0x04, 0x10, 0x11, 0x28, 0x0d, 0x1e, 0x65, 0x4e, 0x1a,
0x08, 0x05, 0x7c, 0x4e, 0x00, 0x3b, 0x0c, 0xa5, 0x78, 0x00, 0x05, 0x09, 0x00, 0x4a, 0x33, 0x07, 0x7a, 0x18, 0x43, 0x1e, 0x06, 0x66, 0x1e, 0x7b, 0x78, 0x04, 0x0a, 0x1e, 0x09, 0x46, 0x1e, 0x0a,
0x07, 0x00, 0x69, 0x00, 0x81, 0x5f, 0x08, 0x33, 0x02, 0x69, 0x0c, 0x20, 0x69, 0x45, 0x72, 0x0c, 0x05, 0x1e, 0x0d, 0x01, 0x78, 0x0d, 0x67, 0x78, 0x92, 0x78, 0x08, 0x06, 0x00, 0x30, 0x0c, 0x00,
0x5a, 0x20, 0x09, 0x08, 0x0c, 0x72, 0x5f, 0x0e, 0x05, 0x20, 0x05, 0x0f, 0x07, 0x39, 0x6b, 0x02, 0x0c, 0x02, 0x18, 0x77, 0x1a, 0x03, 0x0b, 0x18, 0x05, 0x08, 0x00, 0x08, 0x05, 0x18, 0x34, 0x1a,
0x7c, 0x2a, 0x3e, 0x10, 0x0b, 0x65, 0x37, 0x3b, 0x52, 0x39, 0x28, 0x03, 0x20, 0x82, 0x01, 0x22, 0x0c, 0xa2, 0x43, 0x00, 0x05, 0x09, 0x00, 0x67, 0x19, 0x07, 0x07, 0x00, 0x3e, 0x00, 0x58, 0x00,
0x40, 0x20, 0x59, 0x57, 0x49, 0x5f, 0x0b, 0x4f, 0x62, 0x5b, 0x98, 0x3f, 0x06, 0x25, 0x3f, 0x06, 0x35, 0x19, 0x02, 0x3e, 0x0c, 0x78, 0x3e, 0x71, 0x22, 0x6d, 0x09, 0x78, 0x09, 0x08, 0x0c, 0x1d,
0x2c, 0x62, 0x5b, 0x02, 0x4f, 0x49, 0x5f, 0x0b, 0x57, 0x40, 0x20, 0x66, 0x22, 0x28, 0x02, 0x20, 0x07, 0x40, 0x78, 0x05, 0x63, 0x22, 0x30, 0x4e, 0x18, 0x65, 0x5d, 0x10, 0x0b, 0x28, 0x7d, 0x1a,
0x82, 0x01, 0x39, 0x2f, 0x3b, 0x64, 0x10, 0x09, 0x7c, 0x29, 0x2f, 0x3b, 0x46, 0x39, 0x62, 0x02, 0x46, 0x22, 0x30, 0x54, 0x78, 0x03, 0x7a, 0x21, 0x60, 0x78, 0x55, 0x7f, 0x0b, 0x76, 0x0b, 0x82,
0x7c, 0x2a, 0x75, 0x22, 0x2b, 0x20, 0x6a, 0x23, 0x66, 0x00, 0x2b, 0x4f, 0x62, 0x82, 0x98, 0x07, 0x64, 0x04, 0x38, 0x59, 0x73, 0x53, 0x73, 0x59, 0x64, 0x04, 0x38, 0x82, 0x0b, 0x76, 0x0b, 0x48,
0x0f, 0x07, 0xa2, 0x9a, 0x10, 0x0c, 0x44, 0xb4, 0x2e, 0x44, 0x2b, 0x25, 0x05, 0x69, 0x2c, 0x04, 0x60, 0x78, 0x75, 0x1d, 0x30, 0x38, 0x78, 0x03, 0x7a, 0x1d, 0x33, 0x1a, 0x3d, 0x10, 0x09, 0x18,
0x69, 0x2c, 0x7a, 0x98, 0x1b, 0x98, 0x02, 0x45, 0x2c, 0x4a, 0x04, 0x4f, 0x74, 0x47, 0x4f, 0x74, 0x1f, 0x33, 0x1a, 0x56, 0x22, 0x65, 0x38, 0x18, 0x65, 0x39, 0x21, 0x80, 0x78, 0x50, 0x48, 0x75,
0x66, 0x25, 0x49, 0x57, 0xb4, 0x2e, 0x10, 0x06, 0x29, 0xbc, 0x25, 0x96, 0x2c, 0xbc, 0x10, 0x05, 0x00, 0x80, 0x48, 0x65, 0x54, 0x38, 0x59, 0x07, 0x63, 0x20, 0x89, 0x10, 0x0c, 0x6e, 0x2d, 0x20,
0x7c, 0x29, 0x45, 0x44, 0x08, 0x92, 0x85, 0x29, 0x38, 0x25, 0x55, 0x44, 0x05, 0x0b, 0xa3, 0x01, 0x80, 0x53, 0x05, 0x3e, 0x59, 0x85, 0x01, 0x59, 0x04, 0x39, 0x59, 0x03, 0x39, 0x82, 0x65, 0x71,
0x44, 0x42, 0x44, 0x79, 0x44, 0x62, 0x29, 0x4e, 0x9b, 0x92, 0x1b, 0x10, 0x06, 0x65, 0xf2, 0x29, 0x82, 0x65, 0x72, 0x82, 0x30, 0x55, 0x48, 0x30, 0x75, 0x53, 0x0b, 0x07, 0x22, 0x25, 0x2d, 0x10,
0x96, 0x57, 0xbc, 0x10, 0x0d, 0x7c, 0x21, 0x05, 0x32, 0x05, 0x4f, 0x3f, 0x09, 0x09, 0x0f, 0x05, 0x06, 0x1f, 0xbc, 0x53, 0x89, 0x1f, 0x89, 0x59, 0xbc, 0x10, 0x05, 0x18, 0x1f, 0x71, 0x20, 0x6f,
0x23, 0x3f, 0x06, 0x7c, 0x3f, 0x06, 0x72, 0x5f, 0x0e, 0x04, 0x26, 0x5b, 0x07, 0x10, 0x08, 0x20, 0x20, 0x5a, 0x1f, 0x38, 0x1a, 0x90, 0x06, 0x20, 0x7b, 0x20, 0x92, 0x53, 0x7e, 0x20, 0x77, 0x20,
0x19, 0x19, 0x2e, 0x10, 0x08, 0x7c, 0x4d, 0x02, 0x44, 0x0a, 0x0c, 0x29, 0x0b, 0x09, 0x10, 0x09, 0x64, 0x1f, 0x34, 0x53, 0x35, 0x20, 0x51, 0x10, 0x06, 0x28, 0xf2, 0x91, 0x91, 0x91, 0x48, 0xbc,
0x7c, 0x36, 0x2a, 0x09, 0x0e, 0x87, 0x4f, 0x0d, 0x06, 0x3d, 0x0a, 0x92, 0x81, 0x23, 0x5f, 0x6e, 0x10, 0x0d, 0x18, 0x1b, 0x05, 0x41, 0x05, 0x82, 0x06, 0x0f, 0x09, 0x09, 0x0f, 0x06, 0x7f, 0x73,
0x4c, 0x23, 0x08, 0x6d, 0x01, 0x6f, 0x23, 0x75, 0x20, 0x70, 0x23, 0x5d, 0x7c, 0x08, 0x0f, 0x23, 0x18, 0x73, 0x1d, 0x07, 0x0e, 0x04, 0x1e, 0x04, 0x0e, 0x07, 0x10, 0x08, 0x26, 0x26, 0x26, 0x26,
0x0a, 0x0a, 0x5c, 0x64, 0x76, 0x74, 0x0a, 0x80, 0x6b, 0x10, 0x0a, 0x20, 0x9a, 0x89, 0x1c, 0x6d, 0x23, 0x27, 0x10, 0x08, 0x18, 0x08, 0x38, 0x20, 0x0a, 0x0c, 0x1f, 0x0b, 0x09, 0x10, 0x09, 0x18,
0x10, 0x09, 0x7c, 0x36, 0x2a, 0x1c, 0x59, 0x23, 0x4a, 0x35, 0x01, 0x3c, 0x23, 0x09, 0x92, 0x38, 0x26, 0x65, 0x09, 0x0e, 0x37, 0x82, 0x0d, 0x06, 0x74, 0x7d, 0x20, 0x58, 0x48, 0x42, 0x0e, 0x4f,
0x25, 0x3e, 0x44, 0x38, 0x25, 0x09, 0x92, 0x4a, 0x35, 0x01, 0x3c, 0x23, 0x2a, 0x0a, 0x83, 0x4e, 0x7f, 0x08, 0x0b, 0x03, 0x01, 0x44, 0x7f, 0x39, 0x78, 0x4a, 0x7f, 0x7a, 0x78, 0x08, 0x0f, 0x7f,
0x10, 0x0a, 0x22, 0x24, 0x18, 0x23, 0x56, 0x80, 0x01, 0x76, 0x62, 0x8c, 0x01, 0x76, 0x88, 0x10, 0x0a, 0x0a, 0x6b, 0x3d, 0x88, 0x30, 0x0a, 0x7c, 0x09, 0x2b, 0x10, 0x0a, 0x96, 0x01, 0x9a, 0x10,
0x09, 0x20, 0x36, 0x85, 0x86, 0x06, 0x57, 0x62, 0x05, 0x01, 0x1b, 0x04, 0x23, 0x2f, 0x20, 0x7f, 0x09, 0x18, 0x26, 0x65, 0x09, 0x4b, 0x55, 0x21, 0x67, 0x07, 0xa2, 0x3b, 0x90, 0x08, 0x20, 0x38,
0x39, 0x75, 0x20, 0x81, 0x23, 0x1f, 0x23, 0x5d, 0x25, 0xa4, 0x44, 0x82, 0x06, 0x5c, 0x3c, 0x57, 0x20, 0x5d, 0x20, 0x38, 0x1a, 0x90, 0x08, 0x20, 0x67, 0x07, 0xa2, 0x3b, 0x7f, 0x65, 0x0a, 0x4b,
0x56, 0x83, 0x58, 0x10, 0x06, 0x60, 0x7b, 0x32, 0x2c, 0x45, 0x3b, 0x6c, 0x2c, 0xc0, 0x25, 0x97, 0x55, 0x10, 0x0a, 0x1a, 0x1b, 0x2a, 0x7f, 0x2c, 0x93, 0x10, 0x09, 0x78, 0x26, 0x5a, 0x49, 0x06,
0x9a, 0x10, 0x0a, 0xa1, 0x62, 0x1a, 0x0a, 0x76, 0x2f, 0x20, 0x5f, 0x76, 0x38, 0x7c, 0x2a, 0xfd, 0x7f, 0x65, 0x40, 0x01, 0x03, 0x72, 0x7f, 0x33, 0x78, 0x7b, 0x7f, 0x39, 0x78, 0x58, 0x7f, 0x27,
0x30, 0x74, 0x76, 0x88, 0x44, 0x85, 0x23, 0x7e, 0x5c, 0x7b, 0x06, 0x23, 0x48, 0x83, 0x59, 0x10, 0x7f, 0x7a, 0x20, 0x3a, 0x20, 0x03, 0x66, 0x6b, 0x68, 0x48, 0x2c, 0x36, 0x10, 0x06, 0x6a, 0x47,
0x0a, 0x20, 0x9a, 0x5f, 0x0d, 0x86, 0x8d, 0x3b, 0x8b, 0x10, 0x03, 0x20, 0x18, 0x00, 0x29, 0x9a, 0x0f, 0x2f, 0x71, 0x20, 0x2f, 0xc0, 0x53, 0x89, 0x99, 0x10, 0x0a, 0x78, 0x26, 0x2c, 0x09, 0x2b,
0x93, 0x10, 0x03, 0x20, 0x18, 0x00, 0x29, 0x9a, 0x93, 0x29, 0x0e, 0x44, 0x85, 0x26, 0x6c, 0x45, 0x1d, 0x65, 0x66, 0x6b, 0x56, 0x88, 0x33, 0x1e, 0x07, 0x88, 0x38, 0x78, 0x65, 0x88, 0xc5, 0x30,
0x10, 0x09, 0x20, 0x9a, 0x26, 0x82, 0x06, 0x39, 0xc6, 0x7a, 0x04, 0x39, 0xc8, 0x40, 0x02, 0x39, 0x88, 0x38, 0x78, 0x65, 0x88, 0x33, 0x1e, 0x5c, 0x1d, 0x65, 0x66, 0x6b, 0x56, 0x0f, 0x7f, 0x2c,
0xcc, 0x64, 0x01, 0x22, 0xcc, 0x5d, 0x22, 0xcc, 0x06, 0x75, 0x23, 0xc8, 0x7a, 0x04, 0x23, 0xc6, 0x09, 0x2b, 0x20, 0x5a, 0x7f, 0x62, 0x6b, 0x47, 0x06, 0x7f, 0x3c, 0x7c, 0x55, 0x10, 0x0a, 0x96,
0x03, 0x47, 0x7c, 0x30, 0x4a, 0x07, 0x10, 0x03, 0x65, 0x96, 0x10, 0x0f, 0x95, 0x01, 0x1c, 0x08, 0x98, 0x95, 0x10, 0x03, 0x28, 0x61, 0x53, 0x6e, 0x91, 0x91, 0x10, 0x03, 0x28, 0x61, 0x53, 0x6e,
0x74, 0x09, 0x80, 0x00, 0x50, 0x55, 0x3d, 0x63, 0x55, 0x3d, 0x66, 0x50, 0x06, 0x20, 0x82, 0x06, 0x91, 0x91, 0x1f, 0x0e, 0x20, 0x5a, 0x19, 0x25, 0x5b, 0x10, 0x09, 0x96, 0x1e, 0x03, 0x66, 0x1d,
0x20, 0x68, 0x50, 0x02, 0x20, 0x6b, 0x02, 0x20, 0x28, 0x90, 0x0f, 0x90, 0x10, 0x0a, 0x95, 0x5f, 0xc6, 0x04, 0x72, 0x00, 0x1c, 0x60, 0x02, 0x1d, 0xcc, 0x3d, 0x01, 0x21, 0xcc, 0x7a, 0x7f, 0xcc,
0x0d, 0x86, 0x8d, 0x3b, 0x8b, 0x10, 0x0a, 0x20, 0x36, 0x48, 0x83, 0x4e, 0x23, 0x82, 0x05, 0x5c, 0x06, 0x39, 0x78, 0x1c, 0x04, 0x72, 0x7f, 0xc6, 0x51, 0x05, 0x7f, 0xc5, 0x67, 0x07, 0x10, 0x03,
0x4b, 0x03, 0x22, 0xa4, 0x26, 0x46, 0x22, 0x75, 0x26, 0x4a, 0x00, 0x99, 0x76, 0x75, 0x26, 0x4a, 0x96, 0x91, 0x91, 0x10, 0x0f, 0x8b, 0x01, 0x09, 0x7c, 0x08, 0x30, 0x09, 0x7c, 0x09, 0x00, 0x86,
0x22, 0xa4, 0x26, 0x46, 0x22, 0x82, 0x05, 0x5c, 0x4b, 0x03, 0x23, 0x48, 0x83, 0x59, 0x10, 0x0a, 0x09, 0x06, 0x74, 0x6d, 0x09, 0x06, 0x74, 0x75, 0x86, 0x06, 0x78, 0x03, 0x66, 0x78, 0x83, 0x1a,
0x95, 0x89, 0x1c, 0x6d, 0x6c, 0x18, 0x10, 0x0a, 0xa1, 0x62, 0x8c, 0x01, 0x76, 0x88, 0x24, 0x18, 0x4e, 0x18, 0x30, 0x4e, 0x78, 0x87, 0x97, 0x97, 0x97, 0x97, 0x97, 0x10, 0x0a, 0x8b, 0x98, 0x95,
0x10, 0x07, 0x95, 0x01, 0x09, 0x0e, 0xf5, 0x6c, 0x78, 0x01, 0x20, 0x6c, 0x07, 0x3b, 0x6c, 0x98, 0x10, 0x0a, 0x78, 0x26, 0x3c, 0x7c, 0x34, 0x21, 0x03, 0x40, 0x6b, 0x05, 0x54, 0x21, 0x3a, 0x1e,
0x6f, 0x9a, 0x10, 0x09, 0x00, 0x36, 0x74, 0x08, 0x6e, 0x0d, 0x58, 0x23, 0x37, 0x02, 0x2a, 0x48, 0x56, 0x21, 0x39, 0x1e, 0x67, 0x1c, 0x1e, 0x88, 0x39, 0x1e, 0x67, 0x21, 0x3a, 0x1e, 0x56, 0x21,
0x23, 0x5d, 0x25, 0x0c, 0x09, 0x98, 0x2a, 0x0a, 0x0e, 0x0d, 0x78, 0x25, 0x03, 0x40, 0x09, 0xa3, 0x03, 0x40, 0x6b, 0x05, 0x54, 0x7f, 0x3c, 0x7c, 0x55, 0x10, 0x0a, 0x8b, 0x01, 0x9a, 0x2a, 0x10,
0x23, 0x66, 0x02, 0x74, 0x08, 0x0b, 0x23, 0x31, 0x6e, 0x87, 0x01, 0x10, 0x06, 0x60, 0x18, 0x4f, 0x0a, 0x78, 0x26, 0x2c, 0x93, 0x53, 0x2a, 0x10, 0x07, 0x8b, 0x01, 0x09, 0x4b, 0x1a, 0x25, 0x43,
0xbc, 0xc7, 0x6c, 0x93, 0x29, 0x59, 0x44, 0x7a, 0x32, 0x10, 0x0a, 0x95, 0x3b, 0x8b, 0x39, 0xc6, 0x01, 0x59, 0x63, 0x20, 0x4e, 0x22, 0x25, 0x91, 0x10, 0x09, 0x00, 0x26, 0x30, 0x79, 0x7c, 0x36,
0xcc, 0x99, 0x76, 0x5d, 0x7c, 0x2a, 0x76, 0x4e, 0x26, 0x08, 0x76, 0x7b, 0x04, 0x3d, 0x5e, 0x0f, 0x7f, 0x7d, 0x02, 0x30, 0x68, 0x7f, 0x7a, 0x20, 0x0c, 0x09, 0x02, 0x59, 0x65, 0x0a, 0x49, 0x43,
0x23, 0x06, 0x0d, 0x86, 0x07, 0xfe, 0x10, 0x09, 0x36, 0x02, 0x0c, 0x33, 0x0d, 0x04, 0x72, 0xa4, 0x53, 0x03, 0x60, 0x09, 0x20, 0x87, 0x7f, 0x7e, 0x02, 0x30, 0x08, 0x0b, 0x7f, 0x52, 0x0f, 0x37,
0x3b, 0x40, 0x39, 0x1b, 0x3b, 0x0d, 0x04, 0x22, 0x49, 0x7c, 0x5f, 0x0c, 0x23, 0x04, 0x5d, 0x28, 0x01, 0x10, 0x06, 0x6a, 0x99, 0x7f, 0xc0, 0x2f, 0x89, 0x1f, 0x55, 0x53, 0x85, 0x41, 0x10, 0x0a,
0x05, 0x57, 0x63, 0x00, 0x08, 0x0d, 0x4f, 0x4b, 0x62, 0x05, 0x2c, 0x6e, 0x0d, 0x25, 0x3f, 0x06, 0x8b, 0x1a, 0x8e, 0x32, 0x94, 0x25, 0x1a, 0x8e, 0x7a, 0x78, 0x65, 0x88, 0x34, 0x78, 0x08, 0x88,
0x10, 0x0d, 0x36, 0x1b, 0x26, 0x81, 0x3b, 0x45, 0x26, 0x4e, 0x20, 0x73, 0x05, 0x20, 0x85, 0x3b, 0x05, 0x72, 0x74, 0x5e, 0x0f, 0x7f, 0x4c, 0x49, 0x07, 0x23, 0x10, 0x09, 0x26, 0x02, 0x0c, 0x19,
0x46, 0x20, 0x0c, 0x2b, 0x20, 0xa4, 0x26, 0x74, 0x5d, 0x68, 0x00, 0x0c, 0x02, 0x74, 0x5d, 0x3b, 0x34, 0x19, 0x3a, 0x1a, 0x60, 0x1d, 0x51, 0x1a, 0x72, 0x21, 0x0b, 0x07, 0x78, 0x84, 0x7f, 0x04,
0x2f, 0x00, 0x08, 0x07, 0x5f, 0x07, 0x00, 0x5a, 0x33, 0x85, 0x00, 0x38, 0x4a, 0x00, 0x77, 0x72, 0x7a, 0x30, 0x40, 0x48, 0x6d, 0x00, 0x79, 0x82, 0x05, 0x38, 0x40, 0x59, 0x0d, 0x0e, 0x0d, 0x53,
0x87, 0x0b, 0x20, 0x0b, 0x08, 0x0c, 0x72, 0x5f, 0x0f, 0x06, 0x20, 0x3f, 0x06, 0x39, 0x62, 0x01, 0x73, 0x10, 0x0d, 0x26, 0x51, 0x1e, 0x58, 0x1a, 0x71, 0x1e, 0x34, 0x18, 0x06, 0x40, 0x78, 0x5a,
0x20, 0x28, 0x01, 0x10, 0x0a, 0x7c, 0x36, 0x37, 0x26, 0x52, 0x39, 0x74, 0x45, 0x7c, 0x82, 0x01, 0x1a, 0x56, 0x78, 0x0c, 0x80, 0x78, 0x3a, 0x1a, 0x92, 0x83, 0x00, 0x0c, 0xa2, 0x92, 0x1a, 0x33,
0x23, 0x48, 0x7c, 0x59, 0x4f, 0x34, 0x07, 0x0b, 0x4f, 0x74, 0x0c, 0x0d, 0x98, 0x78, 0x79, 0x4f, 0x00, 0x08, 0x76, 0x76, 0x09, 0x19, 0x5a, 0x00, 0x0e, 0xa2, 0x67, 0x00, 0x5b, 0x19, 0x37, 0x0b,
0x3c, 0x7c, 0x58, 0x23, 0x81, 0xa5, 0x2a, 0x67, 0x22, 0x37, 0x26, 0x52, 0x10, 0x09, 0x00, 0x36, 0x78, 0x0b, 0x08, 0x0c, 0x1d, 0x5c, 0x06, 0x78, 0x73, 0x22, 0x65, 0x7a, 0x78, 0x92, 0x10, 0x0a,
0x4e, 0x3b, 0x1b, 0x39, 0x7f, 0x20, 0x34, 0x22, 0x45, 0x20, 0x28, 0x01, 0x22, 0x5a, 0x20, 0x64, 0x18, 0x26, 0x7d, 0x1e, 0x46, 0x1d, 0x30, 0x71, 0x18, 0x03, 0x7a, 0x7f, 0x3c, 0x18, 0x55, 0x48,
0x23, 0x28, 0x01, 0x7c, 0x45, 0x57, 0x34, 0x00, 0x48, 0x4f, 0x1b, 0x00, 0x42, 0x2c, 0x0b, 0x4d, 0x6c, 0x07, 0x0b, 0x82, 0x30, 0x0c, 0x39, 0x59, 0x43, 0x77, 0x82, 0x68, 0x18, 0x36, 0x21, 0x30,
0x25, 0x05, 0x0f, 0x08, 0x25, 0x6b, 0x98, 0x01, 0x5e, 0x2c, 0x7d, 0x0a, 0x01, 0x10, 0x09, 0x95, 0x39, 0x18, 0x67, 0x01, 0x21, 0x7d, 0x1e, 0x46, 0x10, 0x09, 0x00, 0x26, 0x34, 0x1e, 0x51, 0x1d,
0xc3, 0x9b, 0x0c, 0x25, 0x7b, 0x98, 0x5b, 0x98, 0x82, 0x03, 0x2c, 0x62, 0x04, 0x4f, 0x2a, 0x47, 0x7b, 0x1a, 0x6c, 0x21, 0x71, 0x78, 0x92, 0x1d, 0x07, 0x09, 0x78, 0x3d, 0x7f, 0x92, 0x00, 0x71,
0x25, 0x63, 0x44, 0x1f, 0x10, 0x0a, 0x00, 0x21, 0x7b, 0x0f, 0x25, 0x47, 0xa2, 0x24, 0x44, 0x6b, 0x48, 0x6c, 0x00, 0x3c, 0x82, 0x51, 0x00, 0x7e, 0x59, 0x0b, 0x08, 0x0e, 0x53, 0x05, 0x0f, 0x08,
0x9b, 0x0c, 0x23, 0xb4, 0x04, 0x44, 0x40, 0xa3, 0x24, 0x18, 0x29, 0x47, 0x44, 0x7b, 0x0f, 0x10, 0x9e, 0x4e, 0x82, 0x30, 0x5e, 0x59, 0x5f, 0x0a, 0x01, 0x10, 0x09, 0x8b, 0x2e, 0x20, 0x84, 0x53,
0x05, 0x60, 0x96, 0x9a, 0x10, 0x0a, 0x26, 0x24, 0x47, 0x44, 0x7b, 0x9a, 0x01, 0x44, 0x63, 0x44, 0x05, 0x39, 0x59, 0x04, 0x38, 0x59, 0x03, 0x54, 0x59, 0x64, 0x04, 0x59, 0x67, 0x05, 0x53, 0x6d,
0x04, 0x32, 0x25, 0x66, 0x44, 0x3e, 0xa2, 0x24, 0x44, 0x7b, 0x26, 0x6c, 0x47, 0x10, 0x0d, 0x44, 0x20, 0x27, 0x10, 0x0a, 0x00, 0x1b, 0x47, 0x0f, 0x53, 0x0d, 0x05, 0x20, 0x61, 0x9c, 0x2b, 0x20,
0x1d, 0x36, 0x3c, 0x0e, 0x71, 0x06, 0x02, 0x01, 0x85, 0x72, 0x47, 0x3d, 0x2b, 0x83, 0x58, 0x33, 0x84, 0x7f, 0xb4, 0x04, 0x20, 0x60, 0x20, 0x87, 0x1f, 0x2a, 0x1f, 0x0d, 0x05, 0x20, 0x47, 0x0f,
0x74, 0x10, 0x10, 0x05, 0x6a, 0x89, 0x91, 0x1f, 0x89, 0x10, 0x0a, 0x6a, 0x49, 0x05, 0x20, 0x47, 0x91, 0x01,
0x20, 0x6d, 0x20, 0x04, 0x41, 0x53, 0x75, 0x20, 0x5d, 0x20, 0x61, 0x9c, 0x47, 0x53, 0x49, 0x05,
0x10, 0x0d, 0x1f, 0x69, 0x26, 0x68, 0x7c, 0x50, 0x02, 0x01, 0x5a, 0x22, 0x0d, 0x05, 0x74, 0x80,
0x7c, 0x36, 0x19, 0x30, 0x10,
}; };
static const gU16 mf_rlefont_DejaVuSans16_aa_glyph_offsets_0[95] PROGMEM = { static const gU16 mf_rlefont_DejaVuSans16_aa_glyph_offsets_0[95] = {
0x0000, 0x0003, 0x000f, 0x0016, 0x0045, 0x0076, 0x00c4, 0x0103, 0x0000, 0x0003, 0x000e, 0x0018, 0x004e, 0x007e, 0x00d1, 0x010e,
0x0107, 0x012c, 0x0150, 0x0166, 0x0170, 0x017a, 0x017f, 0x0184, 0x0111, 0x0136, 0x0158, 0x016f, 0x0179, 0x0183, 0x0188, 0x018e,
0x01a0, 0x01d0, 0x01dd, 0x0205, 0x0232, 0x0254, 0x0277, 0x02a9, 0x01ab, 0x01db, 0x01e8, 0x0210, 0x023c, 0x025c, 0x027b, 0x02b1,
0x02c4, 0x0300, 0x0330, 0x0337, 0x0343, 0x036d, 0x0377, 0x039d, 0x02cb, 0x0305, 0x033b, 0x0342, 0x034d, 0x0373, 0x037c, 0x03a1,
0x03b7, 0x0425, 0x0459, 0x0481, 0x04a2, 0x04d2, 0x04dc, 0x04e6, 0x03be, 0x042e, 0x0462, 0x0492, 0x04c0, 0x04ef, 0x04fa, 0x0504,
0x0519, 0x0524, 0x0528, 0x0535, 0x0565, 0x056a, 0x05ab, 0x05e1, 0x053b, 0x0546, 0x054c, 0x055a, 0x058b, 0x0591, 0x05ce, 0x0605,
0x05f7, 0x060c, 0x0626, 0x0648, 0x0678, 0x0681, 0x069c, 0x06d0, 0x0619, 0x062d, 0x0648, 0x066c, 0x06a0, 0x06a9, 0x06c8, 0x06f9,
0x0734, 0x0767, 0x0785, 0x07a7, 0x07af, 0x07cc, 0x07d4, 0x07ee, 0x075c, 0x078e, 0x07ac, 0x07d0, 0x07da, 0x07f8, 0x0801, 0x081b,
0x07f4, 0x07ff, 0x082a, 0x0831, 0x0851, 0x0860, 0x0884, 0x0892, 0x0823, 0x082e, 0x085b, 0x0860, 0x0882, 0x088a, 0x08ad, 0x08ba,
0x08b0, 0x08ba, 0x08c2, 0x08d1, 0x08f7, 0x08fb, 0x091d, 0x0926, 0x08ee, 0x08f3, 0x08fb, 0x090a, 0x092f, 0x0934, 0x095c, 0x0961,
0x094f, 0x0957, 0x0961, 0x0973, 0x099c, 0x09aa, 0x09c7, 0x09f1, 0x098a, 0x0990, 0x0998, 0x09a9, 0x09d2, 0x09df, 0x09fb, 0x0a22,
0x0a34, 0x0a5d, 0x0a8e, 0x0aa5, 0x0ac0, 0x0ac5, 0x0ade, 0x0a5f, 0x0a89, 0x0aba, 0x0ad3, 0x0af1, 0x0af8, 0x0b11,
}; };
static const struct mf_rlefont_char_range_s mf_rlefont_DejaVuSans16_aa_char_ranges[] = { static const struct mf_rlefont_char_range_s mf_rlefont_DejaVuSans16_aa_char_ranges[] = {
@ -279,8 +282,8 @@ const struct mf_rlefont_s mf_rlefont_DejaVuSans16_aa = {
4, /* version */ 4, /* version */
mf_rlefont_DejaVuSans16_aa_dictionary_data, mf_rlefont_DejaVuSans16_aa_dictionary_data,
mf_rlefont_DejaVuSans16_aa_dictionary_offsets, mf_rlefont_DejaVuSans16_aa_dictionary_offsets,
112, /* rle dict count */ 113, /* rle dict count */
142, /* total dict count */ 139, /* total dict count */
1, /* char range count */ 1, /* char range count */
mf_rlefont_DejaVuSans16_aa_char_ranges, mf_rlefont_DejaVuSans16_aa_char_ranges,
}; };

View file

@ -11,159 +11,160 @@
#error The font file is not compatible with this version of mcufont. #error The font file is not compatible with this version of mcufont.
#endif #endif
static const gU8 mf_rlefont_DejaVuSans20_dictionary_data[309] PROGMEM = { static const gU8 mf_rlefont_DejaVuSans20_dictionary_data[320] = {
0x86, 0x0b, 0x88, 0x0f, 0x81, 0x08, 0x0c, 0x81, 0x0d, 0x28, 0x07, 0x81, 0x12, 0x81, 0x83, 0x04, 0x05, 0x0a, 0x81, 0x03, 0x17, 0x05, 0x81, 0x0b, 0x81, 0x84, 0x0b, 0x04, 0x83, 0x03, 0x82, 0x0b,
0x08, 0x81, 0x11, 0x85, 0x80, 0x12, 0x81, 0x85, 0x40, 0x25, 0x0a, 0x86, 0x81, 0x0a, 0x81, 0x06, 0x81, 0x02, 0x81, 0x02, 0x85, 0x12, 0x81, 0x0a, 0x80, 0x01, 0x80, 0x40, 0x18, 0x01, 0x87, 0x0b,
0x81, 0x0a, 0x81, 0x06, 0x12, 0x81, 0x12, 0x81, 0x12, 0x81, 0x12, 0x81, 0x81, 0x01, 0x81, 0x0e, 0x12, 0x81, 0x12, 0x81, 0x12, 0x81, 0x12, 0x81, 0x10, 0x04, 0x81, 0x1e, 0x11, 0x06, 0x81, 0x83,
0x81, 0x84, 0x02, 0x03, 0x82, 0x03, 0x04, 0x81, 0x04, 0x10, 0x82, 0x0f, 0x17, 0x81, 0x01, 0x81, 0x0c, 0x87, 0x0b, 0x03, 0x81, 0x03, 0x88, 0x0b, 0x88, 0x0f, 0x01, 0x88, 0x09, 0x0e, 0x81, 0x8a,
0x07, 0x81, 0x08, 0x05, 0x81, 0x0b, 0x87, 0x0a, 0x01, 0x88, 0x06, 0x8a, 0x08, 0x01, 0x81, 0x82, 0x01, 0x81, 0x04, 0x82, 0x0b, 0x87, 0x08, 0x81, 0x03, 0x0b, 0x09, 0x81, 0x80, 0x0c, 0x12, 0x81,
0x0b, 0x0b, 0x1a, 0x88, 0x16, 0x0b, 0x81, 0x40, 0x3d, 0x03, 0x0a, 0x82, 0x04, 0x05, 0x80, 0x12, 0x12, 0x81, 0x11, 0x12, 0x80, 0x0a, 0x0a, 0x07, 0x80, 0x02, 0x13, 0x81, 0x88, 0x05, 0x81, 0x03,
0x81, 0x12, 0x81, 0x0b, 0x10, 0x06, 0x82, 0x01, 0x81, 0x41, 0x36, 0x01, 0x80, 0x01, 0x80, 0x01, 0x0d, 0x80, 0x06, 0x81, 0x0a, 0x81, 0x06, 0x81, 0x0a, 0x81, 0x06, 0x82, 0x80, 0x0f, 0x81, 0x01,
0x03, 0x81, 0x01, 0x02, 0x81, 0x01, 0x80, 0x02, 0x02, 0x80, 0x05, 0x82, 0x21, 0x38, 0xc7, 0x38, 0x81, 0x09, 0x81, 0x07, 0x81, 0x11, 0x82, 0x10, 0x11, 0x81, 0x11, 0x05, 0x83, 0x01, 0x1b, 0x84,
0xfe, 0xbd, 0x1c, 0xbf, 0x1c, 0xc2, 0xf7, 0xb4, 0x3d, 0x33, 0x42, 0x21, 0x4a, 0x42, 0xfc, 0xb4, 0x02, 0x80, 0x19, 0x01, 0x80, 0x01, 0x41, 0x0a, 0x07, 0x81, 0x04, 0x82, 0x06, 0x82, 0x81, 0x3a,
0x42, 0xfc, 0xb4, 0x1c, 0xbf, 0x2c, 0xa0, 0x1b, 0x2e, 0x44, 0x4a, 0x2e, 0x3d, 0x33, 0x46, 0x33, 0x25, 0xca, 0xa0, 0x19, 0xdd, 0x2a, 0x3b, 0x4f, 0x24, 0x36, 0x55, 0x28, 0x1f, 0x45, 0x45, 0x2b,
0xdc, 0x4a, 0x3f, 0x90, 0xf7, 0x1c, 0xc0, 0x43, 0x92, 0x87, 0x38, 0x34, 0xf0, 0x44, 0x29, 0x29, 0x3e, 0x26, 0x26, 0xdc, 0x20, 0x37, 0x44, 0xb3, 0x3d, 0x31, 0x20, 0xa0, 0x39, 0x45, 0x45, 0x00,
0xf7, 0x44, 0x2f, 0x38, 0x3b, 0x1b, 0xa5, 0x00, 0xba, 0x00, 0xc0, 0x35, 0x4e, 0xb4, 0x3d, 0x44, 0x1b, 0x35, 0xfd, 0x1f, 0xbb, 0xfd, 0x18, 0x44, 0xfc, 0x94, 0x4e, 0x3a, 0x45, 0x2b, 0x19, 0x1e,
0x29, 0x29, 0x46, 0x40, 0x46, 0x44, 0x41, 0x34, 0xba, 0x32, 0x32, 0x32, 0xa1, 0x1c, 0x9f, 0x1c, 0x3f, 0x92, 0x43, 0x43, 0x46, 0x28, 0x3d, 0x42, 0x92, 0x54, 0x27, 0x8b, 0x32, 0x41, 0x22, 0x36,
0xba, 0x30, 0xe0, 0x0f, 0x24, 0xcb, 0x22, 0x4b, 0xb4, 0x44, 0x23, 0x1c, 0x34, 0x4d, 0xf0, 0x44, 0x3f, 0x8c, 0x53, 0xd4, 0x2d, 0x44, 0xdf, 0x3a, 0xb0, 0x47, 0x3e, 0x46, 0x49, 0x22, 0x36, 0x26,
0x37, 0x85, 0x1c, 0x92, 0x2a, 0x2a, 0x2a, 0x4b, 0x1b, 0x21, 0xa0, 0x44, 0x25, 0x1b, 0x46, 0x3d, 0xea, 0x92, 0x1f, 0x92, 0x38, 0xc2, 0x30, 0x2c, 0x48, 0x48, 0x48, 0x48, 0x40, 0x1e, 0x1b, 0x1b,
0x2f, 0xcc, 0xe5, 0x41, 0xc4, 0x93, 0x43, 0x8a, 0x1c, 0x34, 0xfc, 0x8b, 0x1f, 0x2a, 0x27, 0x41, 0x1b, 0x43, 0xf0, 0x1f, 0x1b, 0x54, 0x28, 0x38, 0x42, 0x1f, 0xc2, 0x30, 0xf7, 0xe4, 0x41, 0x26,
0x0f, 0x24, 0x1f, 0x20, 0x38, 0x87, 0x20, 0x3b, 0x1e, 0x46, 0x44, 0x29, 0x29, 0xe7, 0x22, 0x20, 0x55, 0x52, 0x55, 0x3b, 0x55, 0x3b, 0x55, 0x3b, 0x22, 0x36, 0x3b, 0x34, 0xc5, 0x32, 0x1c, 0xc0,
0x2c, 0x48, 0x1c, 0x41, 0x44, 0x29, 0x8b, 0x4e, 0x21, 0x4a, 0x22, 0x1e, 0x4c, 0x19, 0x37, 0x4a, 0x2c, 0x2b, 0x3f, 0x9c, 0x1b, 0x28, 0x21, 0x2a, 0x21, 0x2a, 0x21, 0x2c, 0xc0, 0xf0, 0x43, 0x38,
0xdc, 0x1b, 0x25, 0x1c, 0x2d, 0x3c, 0x4d, 0xa3, 0x1b, 0x21, 0x2d, 0xa3, 0x1b, 0x25, 0x1a, 0x2f, 0xc0, 0x2c, 0x30, 0x1c, 0xe6, 0x9c, 0x1f, 0x21, 0x44, 0x2c, 0x55, 0x32, 0x34, 0x2c, 0x9d, 0x18,
0x38, 0xfc, 0x19, 0x1c, 0x41, 0xaa, 0x34, 0x1c, 0x34, 0x9c, 0x38, 0x20, 0x37, 0xba, 0x34, 0x28, 0x34, 0x3b, 0x34, 0x39, 0x40,
}; };
static const gU16 mf_rlefont_DejaVuSans20_dictionary_offsets[110] PROGMEM = { static const gU16 mf_rlefont_DejaVuSans20_dictionary_offsets[110] = {
0x0000, 0x0003, 0x0005, 0x0006, 0x0008, 0x0009, 0x000a, 0x000c, 0x0000, 0x0001, 0x0004, 0x0005, 0x0009, 0x000b, 0x000d, 0x000f,
0x000e, 0x000f, 0x0010, 0x0012, 0x0014, 0x0017, 0x0018, 0x001a, 0x0011, 0x0014, 0x0015, 0x0018, 0x001b, 0x001d, 0x0020, 0x0028,
0x001b, 0x001c, 0x0024, 0x002c, 0x002f, 0x0031, 0x0033, 0x0036, 0x0029, 0x002b, 0x002c, 0x002d, 0x002f, 0x0031, 0x0033, 0x0036,
0x0039, 0x003c, 0x003e, 0x0043, 0x0046, 0x0048, 0x004b, 0x004d, 0x0039, 0x003a, 0x003d, 0x003f, 0x0040, 0x0042, 0x0046, 0x0048,
0x004f, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0057, 0x0059, 0x0049, 0x004a, 0x004c, 0x004e, 0x0053, 0x0054, 0x0056, 0x0057,
0x005a, 0x005d, 0x005f, 0x0064, 0x0065, 0x0066, 0x0068, 0x0069, 0x0058, 0x005a, 0x005c, 0x005d, 0x0060, 0x0062, 0x006a, 0x006c,
0x006b, 0x006e, 0x0070, 0x0073, 0x0076, 0x0078, 0x007a, 0x007c, 0x0071, 0x0075, 0x0078, 0x007b, 0x007e, 0x007f, 0x0080, 0x0082,
0x0086, 0x008a, 0x008d, 0x0093, 0x009c, 0x00a0, 0x00a2, 0x00a4, 0x0083, 0x0086, 0x0088, 0x008a, 0x008d, 0x008e, 0x008f, 0x0094,
0x00a7, 0x00a9, 0x00ad, 0x00b6, 0x00b7, 0x00b9, 0x00bb, 0x00c9, 0x0095, 0x009a, 0x00a1, 0x00a3, 0x00a5, 0x00b5, 0x00b8, 0x00ba,
0x00cc, 0x00d3, 0x00d5, 0x00d7, 0x00d9, 0x00de, 0x00e0, 0x00e2, 0x00bc, 0x00c8, 0x00c9, 0x00cd, 0x00d5, 0x00dd, 0x00e0, 0x00e8,
0x00e4, 0x00e7, 0x00e9, 0x00ec, 0x00ee, 0x00f1, 0x00f2, 0x00f4, 0x00ec, 0x00ee, 0x00f2, 0x00f5, 0x00fb, 0x00fd, 0x0100, 0x0102,
0x00f6, 0x00f8, 0x00fc, 0x00fe, 0x0100, 0x0103, 0x0106, 0x0109, 0x0108, 0x010a, 0x010c, 0x010e, 0x0111, 0x0116, 0x011b, 0x011d,
0x010f, 0x0111, 0x0114, 0x0116, 0x0118, 0x011c, 0x011e, 0x0120, 0x011f, 0x0122, 0x0124, 0x012a, 0x012c, 0x012e, 0x0131, 0x0133,
0x0125, 0x0127, 0x0129, 0x012b, 0x0131, 0x0135, 0x0135, 0x0137, 0x0139, 0x013b, 0x013e, 0x0140,
}; };
static const gU8 mf_rlefont_DejaVuSans20_glyph_data_0[1544] PROGMEM = { static const gU8 mf_rlefont_DejaVuSans20_glyph_data_0[1558] = {
0x06, 0x00, 0x10, 0x08, 0x00, 0x31, 0x72, 0x72, 0x1d, 0x42, 0x10, 0x0a, 0x31, 0xf0, 0x2c, 0x4b, 0x06, 0x00, 0x10, 0x08, 0x1a, 0x83, 0x65, 0x22, 0x29, 0x70, 0x10, 0x0a, 0x3e, 0x80, 0x7b, 0xd0,
0x1c, 0xb7, 0x2c, 0x4b, 0x1c, 0xb7, 0x10, 0x11, 0x3a, 0xcc, 0x69, 0x00, 0x69, 0xcc, 0x1c, 0xb5, 0x80, 0x7b, 0x5f, 0xfc, 0xb7, 0x10, 0x11, 0x1a, 0x5e, 0x5f, 0xea, 0x20, 0x1f, 0x8c, 0x38, 0xa6,
0x27, 0x76, 0xfb, 0x34, 0xa7, 0x2c, 0x4b, 0x1c, 0xb5, 0x27, 0x76, 0xfb, 0x34, 0xa7, 0x27, 0x94, 0x3d, 0x33, 0x6e, 0x33, 0x3e, 0xa7, 0x38, 0x5b, 0x38, 0xa6, 0x3d, 0x33, 0x6e, 0x33, 0x19, 0x3d,
0x69, 0xdc, 0x1c, 0xa7, 0x10, 0x0d, 0x3a, 0x79, 0x43, 0xc2, 0x27, 0xd4, 0x6b, 0xa9, 0x1b, 0xe8, 0x94, 0x5f, 0xea, 0x20, 0x38, 0xa7, 0x10, 0x0d, 0x4c, 0x5d, 0x38, 0x46, 0x7b, 0xa3, 0x1f, 0xa9,
0x1c, 0xaa, 0x43, 0xa3, 0x73, 0xa3, 0x73, 0x92, 0x1c, 0x9d, 0x1c, 0xb6, 0x39, 0x95, 0x38, 0x34, 0x38, 0xaa, 0x30, 0x97, 0x79, 0xe4, 0x7c, 0x94, 0x8b, 0x38, 0xb6, 0x30, 0x9d, 0x3f, 0x8c, 0xbe,
0xec, 0xa3, 0x1c, 0x8c, 0x43, 0x79, 0x10, 0x13, 0x00, 0x43, 0x6a, 0x6e, 0x91, 0x94, 0x44, 0xa7, 0x1f, 0x21, 0x44, 0x1c, 0x5e, 0x3c, 0x5d, 0x10, 0x13, 0x1a, 0xcb, 0xa4, 0x36, 0x8a, 0x8c, 0x43,
0xa5, 0x22, 0x55, 0x21, 0x4a, 0x90, 0x86, 0x56, 0xaa, 0x1a, 0x4a, 0xa7, 0x1b, 0xd5, 0xbc, 0x1a, 0xe7, 0x88, 0xa4, 0xb5, 0x2e, 0x43, 0xa7, 0x3f, 0x20, 0xaa, 0x1f, 0x8a, 0x3a, 0x8b, 0xb5, 0x3d,
0x94, 0x5c, 0x39, 0x9d, 0x65, 0xec, 0x55, 0x1e, 0x55, 0x3f, 0x94, 0x4a, 0x65, 0x86, 0xb0, 0x85, 0xe8, 0xb0, 0x85, 0x5e, 0x7f, 0x18, 0x8c, 0x7f, 0x18, 0x20, 0x7f, 0x18, 0x88, 0x7f, 0x5e, 0xa4,
0x8c, 0x4e, 0x10, 0x0f, 0x3a, 0x20, 0x73, 0x81, 0xd5, 0x1c, 0x74, 0x7d, 0x46, 0x73, 0x2d, 0x90, 0x91, 0x5e, 0x46, 0x10, 0x0f, 0x4f, 0xa2, 0x32, 0x2c, 0xf2, 0x8c, 0x1f, 0x70, 0x3a, 0x4b, 0x32,
0x4e, 0xa0, 0x92, 0x56, 0xa0, 0x87, 0x2f, 0xc2, 0x22, 0x6a, 0x2e, 0xa3, 0x22, 0x25, 0x66, 0x6f, 0xd3, 0x9c, 0x46, 0xa0, 0x92, 0xa4, 0xa5, 0x9f, 0x3f, 0x87, 0xc2, 0x36, 0x2b, 0x3d, 0x8b, 0xa3,
0xe0, 0x10, 0x06, 0xc4, 0x72, 0x10, 0x08, 0x1a, 0x84, 0x43, 0x4b, 0x84, 0x72, 0x51, 0x51, 0x43, 0x3f, 0xc2, 0xbb, 0x85, 0x4b, 0x1e, 0x10, 0x06, 0x6d, 0x10, 0x08, 0x1a, 0x4e, 0x85, 0x44, 0x3b,
0xe8, 0x1f, 0x10, 0x08, 0x31, 0x43, 0xcc, 0x42, 0x21, 0x94, 0x2a, 0x2a, 0x84, 0x49, 0x84, 0x1f, 0xfe, 0x5a, 0x41, 0x3b, 0x4e, 0x41, 0x10, 0x08, 0x3e, 0x80, 0x38, 0x5e, 0x3b, 0xe8, 0x5a, 0x37,
0x10, 0x0a, 0xfc, 0x3c, 0x79, 0x1c, 0xc8, 0xa6, 0x1b, 0x9e, 0x67, 0x27, 0x4e, 0x73, 0xb9, 0x27, 0x32, 0x70, 0x3c, 0x72, 0x10, 0x0a, 0x4f, 0x5d, 0x38, 0x94, 0x88, 0x3a, 0xaf, 0x3a, 0x1e, 0x38,
0x88, 0x95, 0x1c, 0x79, 0x10, 0x11, 0x21, 0x3a, 0x1d, 0x72, 0x1a, 0x41, 0x36, 0x28, 0x81, 0x2a, 0x46, 0x6c, 0x91, 0x3f, 0x8c, 0xa6, 0x30, 0x5d, 0x10, 0x11, 0x24, 0x55, 0x26, 0x44, 0x33, 0x36,
0x10, 0x06, 0x26, 0x47, 0x74, 0x84, 0x10, 0x07, 0x47, 0xa3, 0x1c, 0xc2, 0x10, 0x06, 0x26, 0x47, 0x21, 0x93, 0x1f, 0x26, 0x10, 0x06, 0x51, 0x51, 0x52, 0x70, 0x4a, 0xfe, 0x10, 0x07, 0x27, 0x4c,
0x61, 0x10, 0x07, 0xfc, 0x80, 0x7d, 0x7d, 0x52, 0x52, 0x7d, 0x10, 0x0d, 0x3c, 0x5d, 0x73, 0x81, 0x51, 0xc2, 0x79, 0x10, 0x06, 0x51, 0x51, 0x52, 0x22, 0x10, 0x07, 0x3f, 0x41, 0x49, 0x34, 0x3b,
0xb4, 0x1b, 0xb4, 0x3d, 0x7a, 0x29, 0x29, 0x6c, 0x3f, 0x56, 0x69, 0xd3, 0x39, 0x5d, 0x10, 0x0d, 0x6f, 0x8b, 0x32, 0x10, 0x0d, 0x1a, 0xc0, 0x30, 0x21, 0x80, 0x5f, 0x59, 0x55, 0x74, 0x38, 0x82,
0x3f, 0x3c, 0x78, 0x78, 0xf0, 0x72, 0x72, 0x19, 0x6b, 0x25, 0x10, 0x0d, 0x64, 0x4e, 0x51, 0x30, 0x44, 0x1c, 0x1d, 0x10, 0x0d, 0x4f, 0x76, 0x7b, 0xf0, 0x70, 0x5a, 0x30, 0x2d, 0x25, 0x10, 0x0d,
0xd2, 0x19, 0x7d, 0x30, 0xd2, 0x19, 0x7d, 0x18, 0x10, 0x0d, 0x64, 0x41, 0x74, 0x58, 0x1b, 0x57, 0x3e, 0x44, 0x73, 0x68, 0x71, 0x4a, 0x62, 0x3f, 0x84, 0x32, 0x3d, 0x46, 0x2a, 0x2f, 0x10, 0x0d,
0x4c, 0x70, 0x43, 0x74, 0x27, 0x85, 0x66, 0x4e, 0x6b, 0x20, 0x10, 0x0d, 0x21, 0x80, 0x57, 0x43, 0x3e, 0x44, 0x73, 0x68, 0x3b, 0xcb, 0x3f, 0x4b, 0x79, 0x36, 0x63, 0x7c, 0x10, 0x0d, 0x38, 0x49,
0x91, 0x1c, 0x9f, 0x1c, 0xb6, 0x2c, 0x69, 0xdc, 0x1a, 0x41, 0xb4, 0x1b, 0xb4, 0x3d, 0x33, 0x36, 0x93, 0x38, 0xac, 0x47, 0x30, 0x40, 0x7b, 0x5f, 0x7f, 0x3e, 0xc8, 0x5f, 0xe7, 0x6a, 0x42, 0x39,
0x37, 0x3b, 0x43, 0x74, 0x10, 0x0d, 0x31, 0x81, 0x81, 0x42, 0x1e, 0x78, 0xe3, 0x1c, 0xa5, 0x74, 0x4d, 0x93, 0x32, 0x70, 0x10, 0x0d, 0x1a, 0x21, 0x3d, 0x1e, 0x2c, 0x83, 0x76, 0x54, 0x3f, 0x5e,
0x42, 0x4c, 0x7f, 0x10, 0x0d, 0x3a, 0x78, 0xe3, 0x1b, 0xa5, 0x1b, 0x58, 0x73, 0x24, 0xc0, 0x27, 0x1e, 0x71, 0x22, 0x7a, 0x10, 0x0d, 0x3f, 0x41, 0x7b, 0x1c, 0xf2, 0x94, 0x1f, 0x49, 0xfe, 0x72,
0xc0, 0xa3, 0x40, 0x62, 0x7a, 0xf7, 0x44, 0x2f, 0x38, 0x34, 0x82, 0x10, 0x0d, 0x21, 0x1f, 0x34, 0xc0, 0x38, 0x31, 0xe0, 0x53, 0x28, 0x45, 0x00, 0x1b, 0x35, 0x32, 0x54, 0x10, 0x0d, 0xe4, 0x3c,
0x3b, 0x7d, 0x52, 0x52, 0x10, 0x0d, 0x80, 0x81, 0x25, 0x3d, 0xa5, 0x29, 0x6c, 0x21, 0x41, 0x81, 0x42, 0x3d, 0x42, 0xe5, 0x32, 0x3b, 0x6f, 0x55, 0x10, 0x0d, 0x1a, 0x7c, 0x25, 0xcb, 0xa0, 0x39,
0x6b, 0xb4, 0x3d, 0x7a, 0x46, 0x40, 0x38, 0x34, 0x3f, 0x25, 0x10, 0x0d, 0x80, 0x78, 0x25, 0x44, 0x74, 0x44, 0x73, 0x55, 0x28, 0x1f, 0x45, 0x2b, 0xe4, 0x46, 0x35, 0x44, 0x4d, 0x10, 0x0d, 0x38,
0x4e, 0xb4, 0x3d, 0x7a, 0x46, 0x40, 0x38, 0xfb, 0x6b, 0xe7, 0x61, 0x58, 0x27, 0x33, 0x86, 0x38, 0x44, 0x76, 0x93, 0x84, 0xf0, 0x1f, 0x45, 0x2b, 0xe4, 0x46, 0x35, 0x3d, 0xe0, 0x9d, 0x4a, 0x8b,
0xe2, 0x38, 0x5d, 0x10, 0x07, 0x3c, 0x26, 0x61, 0x1c, 0x3e, 0x61, 0x10, 0x07, 0x3c, 0x26, 0x61, 0x32, 0x3f, 0xa4, 0x53, 0x46, 0x76, 0x10, 0x07, 0x24, 0x58, 0x22, 0x10, 0x07, 0x24, 0x58, 0x70,
0x1c, 0x3e, 0x74, 0x84, 0x10, 0x11, 0x1d, 0x1d, 0x73, 0x1c, 0x5d, 0x1a, 0x4e, 0x38, 0x25, 0x3d, 0x4a, 0xfe, 0x10, 0x11, 0x3f, 0x24, 0x3a, 0x1d, 0x44, 0x1c, 0x21, 0x1f, 0x76, 0x27, 0x75, 0x38,
0x78, 0x57, 0x46, 0x23, 0x43, 0xc2, 0x7d, 0x87, 0x73, 0x10, 0x11, 0xfc, 0x43, 0x3e, 0x76, 0x36, 0x46, 0x5d, 0x10, 0x11, 0x18, 0x51, 0x33, 0x6e, 0x33, 0x2a, 0x29, 0x33, 0x6e, 0x33, 0x10, 0x11,
0x1c, 0x3a, 0x76, 0x36, 0x10, 0x11, 0x1d, 0x1d, 0xec, 0x43, 0x5d, 0x23, 0x23, 0x23, 0x43, 0x78, 0x1a, 0x29, 0x29, 0x5d, 0x54, 0x2a, 0x75, 0x27, 0x76, 0xf7, 0x18, 0xa4, 0x1c, 0x21, 0x44, 0x8b,
0x0f, 0x38, 0x25, 0x3d, 0xd3, 0x39, 0xa2, 0x73, 0x10, 0x0b, 0x31, 0x45, 0x1c, 0x28, 0x1c, 0xa5, 0x44, 0x10, 0x0b, 0x1a, 0x1c, 0xfc, 0x7e, 0xe8, 0x1e, 0x70, 0x49, 0x54, 0x27, 0x62, 0x3b, 0x37,
0x74, 0x58, 0x67, 0x67, 0x2c, 0x7d, 0x42, 0x00, 0x3a, 0x61, 0x10, 0x14, 0xfc, 0x3a, 0x6b, 0x25, 0x70, 0x10, 0x14, 0x4c, 0x7c, 0x42, 0xc7, 0x4b, 0x1d, 0x46, 0x84, 0xa0, 0x19, 0x82, 0xf1, 0x5b,
0x8b, 0x6f, 0x5d, 0x6a, 0xf0, 0xa5, 0x6c, 0xfb, 0x8a, 0xb7, 0xb4, 0x2d, 0xaa, 0xb5, 0xbd, 0x4a, 0xe0, 0x93, 0xaa, 0xb5, 0xbd, 0x5b, 0x82, 0x5b, 0x82, 0xf0, 0x9d, 0xa0, 0xb2, 0xa7, 0xa5, 0x42,
0x7e, 0x55, 0x8a, 0x87, 0xb7, 0x9d, 0xa0, 0xb2, 0xa7, 0xa5, 0x3b, 0x56, 0xe0, 0x92, 0x41, 0x61, 0x43, 0xb2, 0x6e, 0x72, 0xe5, 0xa4, 0x84, 0xdc, 0x3d, 0x4d, 0x2c, 0xc2, 0x10, 0x0e, 0x1a, 0x1e,
0x6e, 0x1a, 0x66, 0x62, 0x28, 0x1c, 0xe3, 0x10, 0x0e, 0x27, 0x30, 0xa0, 0x30, 0xba, 0x1c, 0x5c, 0x49, 0x34, 0x3a, 0x81, 0x6c, 0x7b, 0xe1, 0x44, 0xb5, 0x80, 0xca, 0x19, 0x6a, 0x21, 0x3d, 0x33,
0x2c, 0xa1, 0x1b, 0xdc, 0x27, 0x55, 0x54, 0x0f, 0x34, 0x36, 0x32, 0x32, 0xf7, 0x22, 0x10, 0x0e, 0x48, 0x48, 0x36, 0x39, 0x10, 0x0e, 0x1a, 0x21, 0x56, 0x6a, 0x35, 0x38, 0x25, 0x34, 0x1b, 0x45,
0x31, 0x83, 0x50, 0x59, 0x6b, 0x33, 0x46, 0x7a, 0xe7, 0x22, 0x4e, 0x27, 0x3b, 0x3d, 0x25, 0x10, 0x2b, 0x19, 0xf0, 0x3d, 0x42, 0x1f, 0x21, 0x10, 0x0e, 0x4f, 0x7e, 0x42, 0x3d, 0xeb, 0xa4, 0x39,
0x0e, 0x3a, 0x18, 0x0f, 0x40, 0xe8, 0x22, 0x58, 0x19, 0x72, 0x24, 0x43, 0x2e, 0x8c, 0x22, 0x34, 0x49, 0x83, 0x70, 0x72, 0x27, 0x1e, 0x5e, 0x39, 0x2d, 0x7e, 0x10, 0x0f, 0x3e, 0x78, 0x42, 0x3d,
0xfc, 0x28, 0x10, 0x0f, 0x31, 0x6b, 0x34, 0x87, 0xa2, 0x22, 0x7c, 0x6e, 0x6e, 0x6e, 0x6e, 0x6e, 0xf7, 0x1d, 0x48, 0x48, 0xe5, 0x43, 0x43, 0x43, 0x43, 0x43, 0x43, 0x43, 0x43, 0x43, 0x43, 0x43,
0x6e, 0x6e, 0x6e, 0x6e, 0x6e, 0x85, 0x4a, 0x6a, 0x32, 0x37, 0x6f, 0x1e, 0x34, 0x34, 0x10, 0x0d, 0x53, 0xfc, 0x6e, 0x39, 0x4b, 0x3f, 0xc2, 0xa3, 0x39, 0x21, 0x10, 0x0d, 0x1a, 0x2f, 0x3e, 0x83,
0x31, 0x18, 0x3d, 0x2a, 0x18, 0x3d, 0x72, 0x18, 0x10, 0x0c, 0x31, 0x6b, 0x6b, 0x2a, 0x81, 0x81, 0x3c, 0x2f, 0x1f, 0x26, 0x3c, 0x2f, 0x10, 0x0c, 0x1a, 0x2d, 0x25, 0x83, 0x2a, 0x7e, 0xe0, 0x93,
0x1f, 0x72, 0x10, 0x10, 0x3a, 0x18, 0xc5, 0x6f, 0x94, 0x22, 0x58, 0x73, 0x24, 0x1c, 0x56, 0x82, 0x1f, 0x65, 0x10, 0x10, 0x4f, 0x7e, 0x42, 0xc5, 0x4b, 0xa4, 0x39, 0x49, 0x34, 0x70, 0x46, 0x6e,
0x41, 0x85, 0xc2, 0x7c, 0x0f, 0x44, 0x65, 0x65, 0x65, 0x2e, 0x4a, 0x1a, 0x35, 0x44, 0x25, 0x10, 0x46, 0x6e, 0x48, 0x0f, 0x36, 0x36, 0x36, 0x84, 0xd4, 0x3d, 0x4d, 0x2c, 0x21, 0x10, 0x0f, 0x1a,
0x0f, 0x3c, 0x5f, 0x5f, 0x00, 0x36, 0x00, 0x36, 0x32, 0x5f, 0x5f, 0x10, 0x06, 0xc4, 0x68, 0x51, 0x6e, 0x48, 0x67, 0x39, 0x42, 0x39, 0x42, 0x48, 0x48, 0x48, 0x67, 0x10, 0x06, 0x6d, 0x70, 0x5a,
0x10, 0x06, 0x31, 0x68, 0x51, 0x30, 0x93, 0x67, 0x10, 0x0d, 0x31, 0xc4, 0x62, 0x4f, 0x19, 0x57, 0x10, 0x06, 0x18, 0x5a, 0x5a, 0x38, 0x46, 0x30, 0x2c, 0x53, 0x10, 0x0d, 0x3e, 0x44, 0x68, 0x19,
0x43, 0x2d, 0x53, 0x22, 0xc4, 0x62, 0x6a, 0x10, 0x0b, 0x31, 0x1f, 0x68, 0x18, 0x10, 0x11, 0x3c, 0xf2, 0x1f, 0x1e, 0x38, 0x66, 0x37, 0xa2, 0x79, 0xd4, 0xa1, 0x44, 0xbd, 0x80, 0x92, 0x19, 0xd2,
0xe2, 0x6f, 0x6f, 0x5d, 0x1e, 0x87, 0xa2, 0x44, 0x9f, 0x5c, 0x1e, 0x7e, 0x87, 0x4a, 0xa7, 0x91, 0x19, 0xa0, 0x39, 0x46, 0x10, 0x0b, 0x6d, 0x5a, 0x3c, 0x2f, 0x10, 0x11, 0x1a, 0xf3, 0x4b, 0x46,
0x41, 0x9d, 0xb7, 0x1e, 0x5c, 0x90, 0x41, 0x9d, 0xb7, 0x1e, 0x2e, 0x87, 0x4a, 0xa0, 0x90, 0x56, 0x85, 0x93, 0x4b, 0x28, 0x6e, 0x7f, 0x6e, 0x7f, 0x6e, 0x7f, 0x6e, 0xb0, 0x7d, 0x23, 0x7d, 0xf1,
0x92, 0x5f, 0x37, 0x10, 0x0f, 0x44, 0x58, 0xb4, 0x1a, 0xa2, 0x2f, 0x6f, 0x4a, 0x1a, 0xa3, 0x4a, 0x20, 0x43, 0x8b, 0x87, 0x9c, 0xa0, 0x20, 0x43, 0x8b, 0x6e, 0x48, 0x48, 0x39, 0x10, 0x0f, 0x1a,
0x44, 0x5c, 0x2f, 0x41, 0xa1, 0x65, 0x4a, 0x7e, 0x22, 0xe0, 0x65, 0x4a, 0x90, 0x87, 0x56, 0xb2, 0xeb, 0x43, 0x46, 0x85, 0x87, 0x4b, 0x28, 0x39, 0x54, 0x28, 0x39, 0x82, 0x39, 0xf2, 0x9c, 0x18,
0x85, 0x2f, 0x9f, 0x22, 0x82, 0x1e, 0x6f, 0x1e, 0x6a, 0x4b, 0x4e, 0x10, 0x10, 0x3a, 0x6b, 0x34, 0x9c, 0x7f, 0x3f, 0xaa, 0xb7, 0x39, 0x5b, 0xfc, 0x43, 0xbb, 0x39, 0x81, 0x39, 0x1d, 0xc5, 0x43,
0xcb, 0xa0, 0x22, 0x22, 0x1e, 0x6e, 0x77, 0x6a, 0x66, 0x65, 0x65, 0xec, 0x87, 0x62, 0x34, 0xfc, 0xc0, 0x39, 0x46, 0x39, 0x46, 0x10, 0x10, 0x4f, 0x7c, 0x42, 0xc5, 0x46, 0x53, 0x2e, 0x43, 0x53,
0x25, 0x10, 0x0c, 0x31, 0x83, 0xf7, 0xb4, 0x54, 0x59, 0x81, 0x72, 0x10, 0x10, 0x3a, 0x6b, 0x34, 0xe0, 0x45, 0x60, 0x3a, 0x21, 0x10, 0x0c, 0x1a, 0x21, 0x56, 0x6a, 0x1b, 0x35, 0x38, 0x7e, 0x4e,
0x45, 0x5d, 0x22, 0x22, 0x1e, 0x6e, 0x77, 0x6a, 0x66, 0x65, 0x65, 0x2e, 0x66, 0x41, 0x34, 0x5d, 0x72, 0x26, 0x10, 0x10, 0x4f, 0x7c, 0x42, 0xc5, 0x46, 0x1d, 0x36, 0x36, 0x3f, 0xcb, 0x46, 0x45,
0x61, 0x24, 0x24, 0x10, 0x0e, 0x31, 0x83, 0x50, 0x59, 0x81, 0x2e, 0x44, 0x4a, 0xbc, 0x54, 0x46, 0x60, 0x44, 0xf3, 0x72, 0x72, 0x72, 0x10, 0x0e, 0x1a, 0x21, 0x56, 0x6a, 0x35, 0x38, 0x7e, 0x20,
0x7a, 0x37, 0x10, 0x0d, 0x80, 0x81, 0x25, 0x44, 0x4e, 0x41, 0x39, 0x74, 0x24, 0x0f, 0x57, 0x61, 0x92, 0x19, 0xd2, 0x19, 0x6a, 0x45, 0x52, 0x10, 0x0d, 0x1a, 0x7c, 0x25, 0x54, 0xa4, 0x1f, 0x70,
0x49, 0x51, 0x21, 0x41, 0x6a, 0xbc, 0x6b, 0xe3, 0x10, 0x0c, 0x44, 0x73, 0x36, 0x28, 0x81, 0x68, 0x72, 0x54, 0x30, 0x7c, 0x46, 0x63, 0x7e, 0x10, 0x0c, 0x27, 0xa4, 0x33, 0x36, 0x21, 0x93, 0x1f,
0x10, 0x0f, 0x3c, 0x32, 0x32, 0x5f, 0x5f, 0x5f, 0x66, 0x62, 0x33, 0x3b, 0x1c, 0xe3, 0x10, 0x0e, 0x26, 0x5a, 0x10, 0x0f, 0x1a, 0x6e, 0x48, 0x48, 0x67, 0x67, 0x39, 0x68, 0x19, 0x4e, 0x3d, 0xc2,
0x3f, 0x43, 0x65, 0x4a, 0x44, 0x5f, 0x63, 0x54, 0x7e, 0x27, 0x4b, 0x69, 0x60, 0x58, 0x10, 0x14, 0x2c, 0xc2, 0x10, 0x0e, 0xfc, 0x41, 0x39, 0x36, 0x52, 0x48, 0x48, 0x19, 0x6a, 0x43, 0x39, 0xdc,
0x21, 0x1f, 0x4e, 0x85, 0xb7, 0x6f, 0x55, 0x5d, 0x2f, 0xc7, 0xa2, 0x4a, 0x55, 0x7e, 0x55, 0xea, 0x44, 0xb5, 0x64, 0xf2, 0x10, 0x14, 0x2a, 0xa4, 0x68, 0x85, 0xb7, 0x4b, 0x28, 0x2e, 0xa2, 0x2e,
0x90, 0x4a, 0xaa, 0x9d, 0x56, 0xb7, 0x65, 0x9f, 0x4a, 0x87, 0x5c, 0xb4, 0x8a, 0x5d, 0xa5, 0x7b, 0x82, 0xc7, 0x82, 0x5b, 0x82, 0x5b, 0xca, 0x5b, 0xf7, 0x8a, 0x5b, 0xb7, 0x2b, 0x82, 0xca, 0x81,
0xa5, 0x7b, 0xa5, 0x7b, 0x6a, 0xd2, 0x4e, 0x10, 0x0e, 0x3c, 0x66, 0x62, 0x33, 0x45, 0x69, 0xa0, 0x81, 0x46, 0x87, 0x93, 0x46, 0xa5, 0x8b, 0x4b, 0xdc, 0x87, 0x53, 0xcb, 0x46, 0x46, 0x10, 0x0e,
0x39, 0x5c, 0x27, 0x6f, 0x1c, 0xa0, 0x30, 0xa2, 0x73, 0x78, 0x69, 0xb5, 0x1a, 0x2f, 0x62, 0x21, 0x1a, 0x8b, 0xa0, 0x39, 0x1b, 0xb5, 0x44, 0xdd, 0x3d, 0x81, 0x38, 0x1d, 0x49, 0xf2, 0x38, 0x4b,
0x65, 0x2e, 0xbc, 0x10, 0x0c, 0x43, 0x4e, 0x6a, 0x65, 0x6c, 0x22, 0xbd, 0x1c, 0xb7, 0x2c, 0xd3, 0x79, 0x5b, 0x1f, 0xb5, 0x38, 0x82, 0x3d, 0xf7, 0x43, 0x46, 0x46, 0x10, 0x0c, 0x30, 0x46, 0x46,
0x1c, 0xa2, 0x43, 0x74, 0x72, 0x10, 0x0e, 0x3c, 0x3b, 0x7b, 0x3b, 0x70, 0x2c, 0x58, 0x67, 0x67, 0x39, 0x2b, 0x3e, 0xea, 0x9c, 0x1f, 0xbd, 0x80, 0x7b, 0xcb, 0x32, 0x87, 0x44, 0x72, 0x65, 0x10,
0x73, 0x7d, 0x58, 0x2c, 0x7d, 0x70, 0x2c, 0x28, 0x7b, 0x3b, 0x10, 0x08, 0x31, 0x57, 0x43, 0x74, 0x0e, 0x2a, 0xa4, 0x33, 0x36, 0x21, 0x2c, 0x43, 0x32, 0x49, 0x62, 0x4a, 0x62, 0x4a, 0x42, 0x8b,
0x68, 0x57, 0x10, 0x07, 0x21, 0x84, 0x46, 0x51, 0x51, 0x51, 0x2a, 0x24, 0x10, 0x08, 0x31, 0x57, 0xa4, 0x33, 0x10, 0x08, 0x1a, 0x2c, 0x1d, 0x30, 0x83, 0x70, 0x5a, 0x3c, 0x2c, 0x1d, 0x10, 0x07,
0x68, 0x42, 0x00, 0xb4, 0x57, 0x10, 0x11, 0x3a, 0xa0, 0x1c, 0x5c, 0x2c, 0xdc, 0x1b, 0x56, 0x22, 0xe4, 0x4a, 0xf2, 0x3b, 0xea, 0x3b, 0xea, 0x3b, 0xea, 0x26, 0x72, 0x10, 0x08, 0x1a, 0x2c, 0x1d,
0x1e, 0x10, 0x0a, 0x47, 0x47, 0x23, 0xfb, 0x85, 0x41, 0x3b, 0x10, 0x0a, 0x4b, 0x1f, 0x43, 0x4a, 0x65, 0x5a, 0x27, 0x2c, 0x1d, 0x10, 0x11, 0x38, 0x49, 0x9f, 0x80, 0xca, 0x19, 0xd0, 0x48, 0x10,
0x1f, 0x10, 0x0c, 0x26, 0xec, 0x78, 0xe3, 0x1c, 0xa5, 0x61, 0x1a, 0x41, 0x6b, 0x25, 0x54, 0x87, 0x0a, 0x2a, 0x24, 0x51, 0x51, 0x42, 0x85, 0xa4, 0x42, 0x10, 0x0a, 0xf0, 0x41, 0x41, 0x41, 0x10,
0x38, 0xfb, 0x6b, 0xbb, 0x10, 0x0d, 0xc4, 0x72, 0x37, 0x38, 0x5e, 0xfb, 0x10, 0x0b, 0x3f, 0x26, 0x0c, 0x00, 0x24, 0x79, 0xfc, 0x7e, 0xe8, 0x1e, 0x27, 0x5f, 0x7e, 0x25, 0xc7, 0x6a, 0x35, 0xfd,
0xc2, 0x71, 0x48, 0x40, 0x1c, 0x74, 0x1f, 0x24, 0xa5, 0x1b, 0x25, 0x1c, 0xc2, 0x10, 0x0d, 0x00, 0x1f, 0xbb, 0x10, 0x0d, 0x6d, 0x00, 0x1c, 0x31, 0x4e, 0x59, 0x6b, 0x10, 0x0b, 0x2a, 0x24, 0x73,
0x39, 0x2a, 0x1b, 0xbb, 0x3d, 0x75, 0x62, 0x5a, 0xbb, 0x10, 0x0c, 0x21, 0x26, 0x81, 0x6b, 0x3f, 0x0f, 0x87, 0x85, 0x46, 0x27, 0x83, 0x72, 0xa5, 0x38, 0x25, 0xfc, 0xc2, 0x10, 0x0d, 0x00, 0x38,
0x66, 0x56, 0xb4, 0x27, 0x28, 0x62, 0x34, 0x61, 0x43, 0xbc, 0x41, 0x1b, 0x25, 0x1c, 0x25, 0x10, 0x26, 0x3f, 0xa4, 0xb3, 0x3d, 0x31, 0x20, 0xa0, 0x39, 0x45, 0x45, 0x00, 0x1b, 0x35, 0xfd, 0x1f,
0x07, 0x80, 0x38, 0x82, 0x1c, 0x61, 0x43, 0x28, 0x1c, 0x28, 0x19, 0x2a, 0x2a, 0x10, 0x0d, 0x26, 0xbb, 0x10, 0x0c, 0x2a, 0x24, 0x73, 0xf7, 0x1e, 0x19, 0xec, 0x3d, 0x42, 0x3d, 0x42, 0x3d, 0xf7,
0xdc, 0xbb, 0x3d, 0x75, 0x62, 0x5a, 0x45, 0x61, 0x1a, 0x8c, 0x7f, 0x10, 0x0d, 0xc4, 0x72, 0xe2, 0x4a, 0xe0, 0xa4, 0x38, 0x25, 0xfc, 0x21, 0x10, 0x07, 0x1a, 0xe2, 0x79, 0x28, 0x22, 0x46, 0x2c,
0x71, 0xfb, 0x54, 0x50, 0x50, 0x50, 0x10, 0x06, 0x31, 0x1f, 0x1d, 0x1f, 0x72, 0x72, 0x10, 0x06, 0x7e, 0x28, 0x5a, 0x10, 0x0d, 0x24, 0x5c, 0x22, 0x7a, 0x10, 0x0d, 0x6d, 0xe2, 0x78, 0x54, 0x1e,
0x31, 0x1f, 0x1d, 0x1f, 0x68, 0x30, 0xe0, 0x10, 0x0c, 0xc4, 0x72, 0x4f, 0x19, 0x57, 0x4c, 0x53, 0x1f, 0x69, 0x36, 0x69, 0x10, 0x06, 0x18, 0x3b, 0x1a, 0x71, 0x5a, 0x10, 0x06, 0x18, 0x3b, 0x1a,
0x10, 0x14, 0x26, 0x5c, 0xa7, 0x8b, 0x5d, 0xb3, 0x2d, 0x2e, 0x93, 0x92, 0x63, 0x56, 0x63, 0x56, 0x26, 0x5a, 0x22, 0x46, 0x49, 0x10, 0x0c, 0x6d, 0x53, 0x43, 0x54, 0x38, 0x66, 0x1d, 0x47, 0xfd,
0x63, 0x56, 0x63, 0x56, 0x63, 0x56, 0x63, 0x56, 0x63, 0x56, 0x63, 0x56, 0x10, 0x0d, 0x26, 0x4d, 0x44, 0xbd, 0x80, 0x92, 0x19, 0xf2, 0x10, 0x14, 0x24, 0x6c, 0xd3, 0xc0, 0x2b, 0x21, 0xc2, 0x85,
0xc1, 0x71, 0xfb, 0x54, 0x50, 0x50, 0x50, 0x10, 0x0c, 0x21, 0x26, 0x78, 0x6b, 0xb4, 0x3d, 0x7a, 0x8b, 0x93, 0x92, 0x77, 0x20, 0x77, 0x20, 0x77, 0x20, 0x77, 0x20, 0x77, 0x20, 0x77, 0x20, 0x77,
0x29, 0x6c, 0x1a, 0xe3, 0x38, 0x5d, 0x10, 0x0d, 0x26, 0x5c, 0x38, 0x5e, 0xfb, 0x1b, 0x51, 0x10, 0x20, 0x77, 0xf0, 0x10, 0x0d, 0x24, 0x6c, 0x2c, 0x25, 0xf2, 0x1e, 0x1f, 0x69, 0x36, 0x69, 0x10,
0x0d, 0x26, 0xdc, 0xbb, 0x3d, 0x75, 0x62, 0x5a, 0xbb, 0x2a, 0x10, 0x08, 0xfc, 0x26, 0xbf, 0x2c, 0x0c, 0x27, 0x24, 0xa2, 0x78, 0x59, 0x82, 0x3e, 0xc0, 0x76, 0x10, 0x0d, 0x24, 0x6c, 0x1c, 0x31,
0x78, 0x7d, 0x2a, 0x51, 0x10, 0x0a, 0x3f, 0x26, 0x81, 0x6b, 0x41, 0x1b, 0x43, 0xc0, 0x57, 0x24, 0x4e, 0x59, 0x6b, 0x38, 0x83, 0x10, 0x0d, 0x24, 0x5c, 0x26, 0x10, 0x08, 0x24, 0x6c, 0xeb, 0x44,
0x24, 0x27, 0xc8, 0x7f, 0x10, 0x08, 0x1d, 0x4a, 0x84, 0x7d, 0x81, 0xa3, 0x1c, 0x74, 0x72, 0xd3, 0x1c, 0x1e, 0x4a, 0x34, 0x65, 0x10, 0x0a, 0x27, 0x24, 0x73, 0xf7, 0x94, 0x1f, 0x2a, 0x7c, 0x1d,
0x1c, 0xc2, 0x10, 0x0d, 0xfc, 0x26, 0x50, 0x50, 0x50, 0x50, 0x8b, 0x38, 0xf2, 0x81, 0x2b, 0x10, 0x72, 0x72, 0x38, 0x7a, 0x10, 0x08, 0x4f, 0x71, 0x38, 0x46, 0x2c, 0xc2, 0x7b, 0x65, 0x3c, 0x21,
0x0b, 0x26, 0x46, 0x1e, 0x1a, 0x63, 0x54, 0x7e, 0x39, 0x7e, 0x39, 0x5c, 0x1c, 0x5c, 0x1c, 0x5c, 0x79, 0x10, 0x0d, 0x00, 0x24, 0x32, 0x69, 0x36, 0x69, 0x36, 0xb5, 0x3a, 0x2d, 0x4e, 0xbb, 0x10,
0x30, 0xe0, 0x10, 0x11, 0x26, 0xea, 0xbc, 0xb4, 0x56, 0xa0, 0x4a, 0x41, 0x95, 0xb5, 0x1e, 0x5c, 0x0b, 0xe4, 0x24, 0x48, 0x19, 0x6a, 0x43, 0x39, 0x2e, 0x19, 0x7b, 0xfe, 0x47, 0x30, 0xef, 0x3d,
0x90, 0x41, 0x9d, 0xb7, 0x1e, 0x5c, 0x65, 0x4b, 0x95, 0x87, 0x6f, 0xe2, 0x44, 0x5d, 0x5d, 0x27, 0x46, 0x49, 0x10, 0x11, 0xe4, 0x24, 0x19, 0x92, 0x77, 0xd2, 0x9c, 0x43, 0x89, 0x6e, 0xb0, 0x7d,
0x50, 0x10, 0x0b, 0x26, 0x0f, 0x87, 0x66, 0x4e, 0xbc, 0x1b, 0xa1, 0x1c, 0x9f, 0x1c, 0xa0, 0x30, 0x91, 0x6e, 0xd0, 0xb7, 0x36, 0xa6, 0x8a, 0x46, 0xb5, 0x87, 0x4b, 0xc0, 0x19, 0xd0, 0x19, 0xf0,
0xc2, 0x1c, 0x5c, 0x2c, 0xdc, 0x39, 0x92, 0x66, 0x4e, 0x4e, 0x10, 0x0b, 0x26, 0x46, 0x1e, 0x27, 0x10, 0x0b, 0x24, 0x44, 0xc7, 0xa0, 0x39, 0xb5, 0x3a, 0xbb, 0x3a, 0xb0, 0x3d, 0x46, 0x49, 0x4d,
0x50, 0x45, 0x69, 0x00, 0x69, 0x60, 0x84, 0x49, 0x30, 0x93, 0x67, 0x10, 0x0b, 0x26, 0x37, 0x18, 0x6c, 0x7b, 0x2e, 0x84, 0xd2, 0x39, 0x68, 0x10, 0x0b, 0xe4, 0x24, 0x48, 0x19, 0x6a, 0xb5, 0x44,
0x70, 0x2c, 0x58, 0x67, 0x2c, 0x7d, 0x58, 0x2c, 0x18, 0x10, 0x0d, 0x3a, 0xc0, 0x73, 0x20, 0x19, 0xb5, 0x64, 0xea, 0x4a, 0x54, 0x30, 0x2c, 0x53, 0x10, 0x0b, 0x37, 0x38, 0x24, 0x2f, 0x4a, 0x55,
0x72, 0x19, 0x57, 0x1f, 0x24, 0x72, 0x0f, 0x57, 0x10, 0x07, 0x44, 0x2a, 0x2a, 0x68, 0x10, 0x0d, 0x49, 0x62, 0x49, 0x2f, 0x10, 0x0d, 0x4c, 0xe2, 0x79, 0x28, 0x26, 0x22, 0x4b, 0x30, 0x2c, 0x46,
0x31, 0x57, 0x24, 0x72, 0x00, 0x1f, 0x57, 0x19, 0x7d, 0x2a, 0x73, 0xd3, 0x39, 0x5d, 0x10, 0x11, 0x65, 0x55, 0x3a, 0x1d, 0x10, 0x07, 0x1a, 0x83, 0x5a, 0x5a, 0x10, 0x0d, 0x1a, 0xf3, 0x30, 0xc2,
0x1d, 0x3e, 0xa3, 0x94, 0x44, 0x76, 0x82, 0x10, 0x65, 0x30, 0x1d, 0x27, 0x2c, 0x1e, 0x4a, 0x83, 0x79, 0x1d, 0x10, 0x11, 0x4c, 0x51, 0x4d, 0xa4,
0x3f, 0x42, 0x93, 0x43, 0xc2, 0x10,
}; };
static const gU16 mf_rlefont_DejaVuSans20_glyph_offsets_0[95] PROGMEM = { static const gU16 mf_rlefont_DejaVuSans20_glyph_offsets_0[95] = {
0x0000, 0x0003, 0x000b, 0x0017, 0x0035, 0x0057, 0x0083, 0x00a2, 0x0000, 0x0003, 0x000b, 0x0016, 0x0037, 0x0058, 0x0084, 0x00a7,
0x00a6, 0x00b3, 0x00c1, 0x00d5, 0x00e1, 0x00e7, 0x00ed, 0x00f2, 0x00aa, 0x00b7, 0x00c5, 0x00d9, 0x00e5, 0x00ed, 0x00f4, 0x00fa,
0x00fb, 0x010f, 0x011b, 0x0129, 0x013b, 0x0155, 0x0164, 0x017c, 0x0104, 0x0114, 0x011f, 0x012f, 0x013d, 0x0155, 0x0165, 0x017d,
0x0185, 0x019b, 0x01b4, 0x01bc, 0x01c5, 0x01da, 0x01e5, 0x01f9, 0x0189, 0x019e, 0x01b7, 0x01bc, 0x01c3, 0x01d3, 0x01df, 0x01f2,
0x020b, 0x0238, 0x024f, 0x0260, 0x0273, 0x028f, 0x0299, 0x02a3, 0x0202, 0x022d, 0x0245, 0x0258, 0x026b, 0x028b, 0x0297, 0x02a3,
0x02c0, 0x02cc, 0x02d1, 0x02d9, 0x02e8, 0x02ee, 0x0314, 0x033c, 0x02be, 0x02cc, 0x02d1, 0x02db, 0x02f5, 0x02fb, 0x031e, 0x0346,
0x0352, 0x035c, 0x0374, 0x0383, 0x0399, 0x03a1, 0x03af, 0x03bf, 0x0356, 0x0363, 0x0377, 0x0388, 0x0398, 0x03a3, 0x03b3, 0x03c5,
0x03e8, 0x0404, 0x0416, 0x042b, 0x0433, 0x043d, 0x0446, 0x0452, 0x03ef, 0x040c, 0x0420, 0x0433, 0x043f, 0x044c, 0x0456, 0x0460,
0x045b, 0x0462, 0x0475, 0x047d, 0x048e, 0x049a, 0x04b0, 0x04be, 0x046a, 0x0470, 0x0483, 0x048c, 0x049d, 0x04b2, 0x04c8, 0x04d4,
0x04cc, 0x04d7, 0x04df, 0x04e8, 0x02cc, 0x04f1, 0x050d, 0x0518, 0x04da, 0x04e5, 0x04ec, 0x04f6, 0x02cc, 0x0507, 0x0524, 0x0530,
0x0527, 0x0530, 0x053b, 0x0545, 0x0555, 0x0563, 0x0570, 0x0583, 0x053b, 0x0546, 0x054b, 0x0556, 0x0565, 0x0572, 0x0580, 0x0593,
0x05a2, 0x05bb, 0x05cc, 0x05da, 0x05e9, 0x05ef, 0x05ff, 0x05b1, 0x05c8, 0x05d9, 0x05e5, 0x05f5, 0x05fb, 0x060b,
}; };
static const struct mf_rlefont_char_range_s mf_rlefont_DejaVuSans20_char_ranges[] = { static const struct mf_rlefont_char_range_s mf_rlefont_DejaVuSans20_char_ranges[] = {
@ -189,7 +190,7 @@ const struct mf_rlefont_s mf_rlefont_DejaVuSans20 = {
4, /* version */ 4, /* version */
mf_rlefont_DejaVuSans20_dictionary_data, mf_rlefont_DejaVuSans20_dictionary_data,
mf_rlefont_DejaVuSans20_dictionary_offsets, mf_rlefont_DejaVuSans20_dictionary_offsets,
55, /* rle dict count */ 62, /* rle dict count */
109, /* total dict count */ 109, /* total dict count */
1, /* char range count */ 1, /* char range count */
mf_rlefont_DejaVuSans20_char_ranges, mf_rlefont_DejaVuSans20_char_ranges,

View file

@ -1,5 +1,4 @@
/* Start of automatically generated font definition for DejaVuSans20_aa. */ /* Start of automatically generated font definition for DejaVuSans20_aa. */
#ifndef MF_RLEFONT_INTERNALS #ifndef MF_RLEFONT_INTERNALS
@ -11,327 +10,328 @@
#error The font file is not compatible with this version of mcufont. #error The font file is not compatible with this version of mcufont.
#endif #endif
static const gU8 mf_rlefont_DejaVuSans20_aa_dictionary_data[471] PROGMEM = { static const gU8 mf_rlefont_DejaVuSans20_aa_dictionary_data[486] = {
0x04, 0xc2, 0x80, 0x07, 0x81, 0x12, 0x81, 0x04, 0x41, 0x32, 0x40, 0x25, 0x19, 0x17, 0x83, 0x82, 0x05, 0x0b, 0x09, 0x81, 0x12, 0x81, 0x81, 0x05, 0x81, 0x0b, 0x0d, 0x17, 0x10, 0x28, 0x0b, 0x86,
0x08, 0x89, 0x0c, 0x12, 0x81, 0x12, 0x81, 0x0b, 0x80, 0xc4, 0x0d, 0x10, 0x83, 0x09, 0x81, 0x86, 0x12, 0x81, 0x12, 0x81, 0x08, 0x0e, 0x06, 0x84, 0x40, 0x1d, 0x80, 0xce, 0x8b, 0x08, 0x8b, 0x15,
0xc8, 0xcd, 0x0a, 0xde, 0xca, 0xc5, 0x05, 0x84, 0x0b, 0x81, 0x01, 0x15, 0xcd, 0x80, 0xd1, 0x10, 0x80, 0xc3, 0x80, 0xcb, 0xca, 0x81, 0x12, 0x0a, 0x02, 0x81, 0xc7, 0x41, 0x3e, 0x01, 0xc9, 0x80,
0x01, 0x81, 0x01, 0xc2, 0x83, 0x12, 0x07, 0xcb, 0xc5, 0x87, 0x01, 0x8a, 0xc5, 0x80, 0x85, 0xcd, 0x80, 0xc5, 0x87, 0x83, 0x0c, 0x07, 0xc1, 0x81, 0x0a, 0xce, 0x80, 0xc2, 0x04, 0xc2, 0x81, 0x0a,
0xce, 0x0b, 0x88, 0xc8, 0xc1, 0x0a, 0x81, 0xc9, 0x81, 0x11, 0x0c, 0x81, 0xcd, 0xc6, 0xcd, 0xc1, 0xcb, 0x80, 0xc7, 0x04, 0xc2, 0x04, 0x0f, 0xcb, 0xc6, 0xde, 0x0a, 0x81, 0x03, 0xc2, 0xcb, 0xc3,
0x01, 0xc8, 0xcc, 0x16, 0x8b, 0x08, 0x8b, 0x0d, 0x81, 0xc3, 0xce, 0xcc, 0xc5, 0x0a, 0xce, 0x80, 0x80, 0x80, 0xca, 0x81, 0x01, 0xc1, 0xc3, 0xc2, 0x01, 0xc8, 0x80, 0xc4, 0xcb, 0xce, 0x80, 0xdc,
0xcb, 0xc7, 0x17, 0x0a, 0xcb, 0x80, 0xcd, 0xc5, 0x80, 0xc1, 0xca, 0x80, 0x80, 0xc8, 0x02, 0xce, 0x81, 0xc2, 0x02, 0x01, 0x81, 0x82, 0x81, 0x03, 0xc3, 0xc9, 0xcd, 0x80, 0xce, 0xc2, 0x19, 0x01,
0x80, 0xce, 0xc1, 0x80, 0xc6, 0x80, 0xce, 0x04, 0x81, 0x0b, 0xc3, 0x80, 0xcc, 0xc7, 0x01, 0xc1, 0xc1, 0x81, 0x81, 0xc1, 0x80, 0xc7, 0x03, 0x80, 0xc9, 0xcc, 0xc7, 0x01, 0xc3, 0xc2, 0x81, 0x03,
0xc1, 0x81, 0xca, 0xc1, 0xcc, 0xc6, 0x80, 0xcb, 0xc6, 0x80, 0xc1, 0xce, 0x0f, 0xc1, 0xc5, 0xca, 0xc3, 0xce, 0x01, 0xce, 0x80, 0xc2, 0xcd, 0xc9, 0x85, 0x06, 0xca, 0xc4, 0xc6, 0x80, 0xce, 0xc1,
0xc2, 0xc7, 0x80, 0xcc, 0xc8, 0xcd, 0xc7, 0xc2, 0xce, 0x80, 0xc5, 0xcc, 0xc1, 0x03, 0xc4, 0x81, 0x80, 0xcd, 0xc2, 0xce, 0x11, 0xcd, 0xc8, 0xd1, 0xc7, 0x81, 0x80, 0xcc, 0x81, 0x09, 0xc1, 0x01,
0x09, 0x81, 0xc1, 0xc2, 0xc5, 0xcb, 0xc2, 0x80, 0xc5, 0xca, 0x80, 0xc3, 0x01, 0xc9, 0x80, 0xce, 0x01, 0x80, 0xc1, 0xc5, 0xc5, 0xc1, 0x80, 0xc4, 0xcc, 0xc6, 0x80, 0xc8, 0x04, 0xcd, 0xc7, 0xcc,
0xcd, 0xc1, 0xc4, 0xc1, 0x80, 0xce, 0xc7, 0xcc, 0xc8, 0x01, 0x80, 0xc7, 0x80, 0xcc, 0xc8, 0x80, 0xc8, 0x81, 0x16, 0xc1, 0xc6, 0xcb, 0xcb, 0xc4, 0xc3, 0xc8, 0xcb, 0xc5, 0x80, 0xc6, 0x01, 0xc3,
0xc4, 0xc1, 0xcb, 0x80, 0xce, 0xc5, 0xdc, 0xc9, 0xc3, 0x06, 0xc5, 0xcc, 0x0e, 0xc4, 0x80, 0x01, 0xcb, 0xc2, 0x80, 0xce, 0x32, 0x8c, 0x07, 0x8c, 0x2f, 0x8c, 0x07, 0x8c, 0x41, 0xcd, 0xc5, 0xc7,
0x80, 0xc3, 0xc9, 0x80, 0xc2, 0x01, 0xc3, 0xce, 0xc2, 0xcc, 0x80, 0x2e, 0x1b, 0x1d, 0x24, 0x00, 0xcc, 0x04, 0x81, 0x02, 0xc1, 0xce, 0x01, 0xc8, 0xcd, 0xc6, 0x1f, 0xd0, 0x73, 0x22, 0x22, 0x22,
0x39, 0x1d, 0x24, 0x1a, 0x24, 0x0f, 0xc5, 0xca, 0xdc, 0x07, 0x20, 0x51, 0x07, 0x1b, 0x08, 0x71, 0x22, 0x6a, 0x41, 0x36, 0x41, 0x38, 0xd4, 0x31, 0x65, 0x66, 0x05, 0x2f, 0x31, 0x70, 0x07, 0x2c,
0x4e, 0x02, 0x18, 0x0f, 0x43, 0x2f, 0x5f, 0x4e, 0x02, 0x18, 0x0f, 0x51, 0x07, 0x1b, 0x07, 0x71, 0x25, 0xb4, 0x3a, 0x7b, 0x3e, 0x00, 0x51, 0x25, 0xb4, 0x3a, 0x7b, 0x2f, 0x31, 0x70, 0x07, 0x2c,
0x2c, 0x3e, 0x59, 0x34, 0x06, 0x20, 0x25, 0x0a, 0x30, 0x0a, 0x71, 0x23, 0x07, 0x33, 0x0d, 0x08, 0x38, 0xbc, 0x06, 0x65, 0x5f, 0x71, 0x4a, 0x19, 0x0a, 0x26, 0x2d, 0x2f, 0x05, 0x31, 0x65, 0x07,
0xe7, 0xdc, 0x31, 0x5b, 0x2f, 0x46, 0x6e, 0xdc, 0x43, 0x85, 0x0e, 0x53, 0x21, 0x7a, 0x85, 0x0c, 0x4b, 0x2f, 0x0b, 0x53, 0x81, 0x73, 0x2f, 0x47, 0x3a, 0x57, 0x3e, 0x30, 0x39, 0x66, 0x2f, 0x05,
0x26, 0x21, 0x88, 0x65, 0x37, 0x01, 0x35, 0x06, 0x62, 0x45, 0x09, 0x45, 0x35, 0x8c, 0x55, 0x45, 0x73, 0x06, 0x65, 0x06, 0x4b, 0x19, 0x0a, 0x26, 0x2d, 0x37, 0x07, 0x4e, 0x52, 0x1f, 0x06, 0x2c,
0x2b, 0x01, 0x45, 0x52, 0x6e, 0x31, 0x71, 0x19, 0x29, 0x19, 0x29, 0x19, 0x70, 0x07, 0x33, 0x6a, 0x63, 0x1f, 0x56, 0x6f, 0x1f, 0x81, 0x22, 0x22, 0x22, 0x26, 0x4c, 0x09, 0x0f, 0x4e, 0x7d, 0x23,
0x36, 0x25, 0x0a, 0x30, 0x0a, 0x71, 0x2c, 0x3e, 0x24, 0x24, 0x33, 0x52, 0x46, 0x09, 0x38, 0x26, 0xd4, 0x54, 0x36, 0x6d, 0x38, 0xd4, 0x28, 0x6c, 0x3f, 0x0c, 0x0e, 0x25, 0xd4, 0x41, 0x36, 0x41,
0x00, 0x43, 0x82, 0x72, 0x0b, 0x62, 0x3a, 0xd4, 0x6c, 0x56, 0x8c, 0x5a, 0x3a, 0xd4, 0x53, 0x5b, 0x38, 0xb4, 0x81, 0x42, 0xb4, 0xb4, 0x18, 0x57, 0x06, 0x25, 0x5f, 0x5b, 0x18, 0x81, 0x41, 0x23,
0x1a, 0x24, 0x24, 0x24, 0x0d, 0x09, 0x21, 0xc7, 0x2f, 0x1a, 0x24, 0x24, 0x0e, 0x53, 0x6a, 0x46, 0x0a, 0x6f, 0x25, 0x0c, 0x6d, 0x23, 0x04, 0x67, 0x25, 0x47, 0x01, 0x23, 0x01, 0x28, 0x25, 0x68,
0x0a, 0x30, 0x0a, 0x00, 0x43, 0x7d, 0x34, 0x68, 0x6c, 0x43, 0x07, 0x1b, 0x07, 0x62, 0x43, 0x02, 0x4a, 0x25, 0x47, 0x01, 0x23, 0x01, 0x28, 0x25, 0x0c, 0x6d, 0x23, 0x04, 0x67, 0x18, 0x81, 0x41,
0x18, 0x0e, 0x43, 0x2f, 0x5f, 0x43, 0x02, 0x18, 0x0e, 0x43, 0x07, 0x1b, 0x07, 0x62, 0x43, 0x59, 0x23, 0x0a, 0x70, 0xb4, 0x2c, 0x38, 0xd4, 0x34, 0x30, 0x56, 0x28, 0x19, 0x52, 0xb4, 0x19, 0x1c,
0x34, 0x63, 0x6c, 0x43, 0x0a, 0x30, 0x0a, 0x31, 0x08, 0x0c, 0x45, 0x27, 0x77, 0x7c, 0x7f, 0x09, 0x1c, 0x1c, 0x1c, 0x0a, 0x4b, 0x63, 0x0c, 0x34, 0x1f, 0x24, 0xb7, 0x24, 0xb7, 0x0d, 0x41, 0x70,
0x27, 0x71, 0x1a, 0x65, 0x1e, 0x0a, 0x07, 0xc8, 0x07, 0x0a, 0x25, 0x88, 0x0d, 0x21, 0x25, 0x2a, 0x68, 0x4c, 0xb4, 0x18, 0xb4, 0x38, 0x68, 0x00, 0x3e, 0x18, 0x1b, 0x2a, 0xc0, 0x0d, 0x69, 0x63,
0x45, 0x5c, 0x01, 0x6e, 0x35, 0x5e, 0x0f, 0x01, 0x33, 0x6e, 0x46, 0xd0, 0x07, 0x07, 0x71, 0x09, 0x04, 0x61, 0x63, 0x45, 0x0a, 0x47, 0x63, 0x01, 0x4e, 0x07, 0x04, 0x70, 0x04, 0x61, 0x23, 0x0b,
0x80, 0x37, 0x03, 0x7b, 0x29, 0x19, 0x29, 0x19, 0x29, 0x19, 0x0e, 0x71, 0x65, 0x5e, 0x68, 0x56, 0x2b, 0x0f, 0x64, 0x69, 0x18, 0x22, 0x22, 0x1f, 0xd0, 0x0f, 0x6d, 0x66, 0x09, 0x4e, 0x71, 0x19,
0x77, 0x0e, 0x5a, 0x0b, 0x59, 0x25, 0xc7, 0x01, 0x63, 0x04, 0x41, 0x01, 0x2f, 0x35, 0x18, 0xd4, 0x35, 0x0d, 0x54, 0x05, 0x2c, 0x0f, 0x69,
0x0f, 0x60, 0x08, 0x4e, 0x0d, 0x28,
}; };
static const gU16 mf_rlefont_DejaVuSans20_aa_dictionary_offsets[163] PROGMEM = { static const gU16 mf_rlefont_DejaVuSans20_aa_dictionary_offsets[156] = {
0x0000, 0x0003, 0x0005, 0x0007, 0x0008, 0x000a, 0x000c, 0x000d, 0x0000, 0x0001, 0x0002, 0x0003, 0x0006, 0x000a, 0x000b, 0x000c,
0x000f, 0x0010, 0x0011, 0x0012, 0x0013, 0x0017, 0x0018, 0x001a, 0x000d, 0x000e, 0x0010, 0x0014, 0x0015, 0x0016, 0x0017, 0x0018,
0x001b, 0x001d, 0x001f, 0x0020, 0x0022, 0x0023, 0x0024, 0x0026, 0x001a, 0x001c, 0x001f, 0x0020, 0x0022, 0x0024, 0x0026, 0x0027,
0x0027, 0x0028, 0x002b, 0x002c, 0x002e, 0x002f, 0x0030, 0x0032, 0x0028, 0x0029, 0x002b, 0x002d, 0x0030, 0x0032, 0x0033, 0x0034,
0x0034, 0x0035, 0x0036, 0x0037, 0x0039, 0x003b, 0x003c, 0x003e, 0x0035, 0x0036, 0x0044, 0x0046, 0x0047, 0x0049, 0x004a, 0x004d,
0x003f, 0x0041, 0x0043, 0x0045, 0x0047, 0x0049, 0x004a, 0x004c, 0x004f, 0x0051, 0x0053, 0x0055, 0x0057, 0x0059, 0x005b, 0x005d,
0x004e, 0x0051, 0x0053, 0x0054, 0x0059, 0x005b, 0x005d, 0x0060, 0x005f, 0x0060, 0x0063, 0x0065, 0x0066, 0x0068, 0x006a, 0x006c,
0x0062, 0x0063, 0x0066, 0x0068, 0x006a, 0x006c, 0x006e, 0x006f, 0x006e, 0x006f, 0x0072, 0x0074, 0x0077, 0x0079, 0x007b, 0x007d,
0x0071, 0x0073, 0x0075, 0x0077, 0x007a, 0x007c, 0x007e, 0x0080, 0x007f, 0x0080, 0x0082, 0x0084, 0x0086, 0x0088, 0x008a, 0x008c,
0x0082, 0x0084, 0x0086, 0x0088, 0x008a, 0x008c, 0x008d, 0x008f, 0x008e, 0x0090, 0x0092, 0x0094, 0x0095, 0x0097, 0x0098, 0x009a,
0x0091, 0x0093, 0x0095, 0x0097, 0x0099, 0x009b, 0x009d, 0x009e, 0x009c, 0x009e, 0x00a0, 0x00a2, 0x00a4, 0x00a6, 0x00a8, 0x00aa,
0x00a0, 0x00a1, 0x00a2, 0x00a4, 0x00a6, 0x00a8, 0x00aa, 0x00ad, 0x00ac, 0x00ad, 0x00af, 0x00b1, 0x00b2, 0x00b3, 0x00b6, 0x00b8,
0x00af, 0x00b1, 0x00b3, 0x00b6, 0x00b8, 0x00ba, 0x00bc, 0x00be, 0x00ba, 0x00bc, 0x00bf, 0x00c1, 0x00c4, 0x00cd, 0x00cf, 0x00d1,
0x00c0, 0x00c2, 0x00c4, 0x00c6, 0x00c7, 0x00c9, 0x00ca, 0x00cc, 0x00d4, 0x00d6, 0x00d8, 0x00da, 0x00dc, 0x00df, 0x00e1, 0x0105,
0x00cd, 0x00cf, 0x00d1, 0x00d3, 0x00d5, 0x00d7, 0x00d9, 0x00db, 0x012c, 0x0131, 0x0136, 0x0139, 0x013b, 0x013d, 0x0149, 0x014b,
0x00dc, 0x00e3, 0x00e5, 0x00e9, 0x0110, 0x0114, 0x0116, 0x0123, 0x0153, 0x0157, 0x0182, 0x0184, 0x0193, 0x0195, 0x0199, 0x019d,
0x0125, 0x012a, 0x012c, 0x0134, 0x0136, 0x013d, 0x0148, 0x014a, 0x019f, 0x01a7, 0x01a9, 0x01ab, 0x01ad, 0x01af, 0x01b2, 0x01b4,
0x0160, 0x0164, 0x0166, 0x0168, 0x016c, 0x016e, 0x0199, 0x019b, 0x01b6, 0x01b8, 0x01ba, 0x01bf, 0x01c1, 0x01c4, 0x01c9, 0x01cb,
0x01a1, 0x01a5, 0x01ab, 0x01ae, 0x01b0, 0x01b2, 0x01b4, 0x01b7, 0x01cd, 0x01d0, 0x01d2, 0x01d5, 0x01d7, 0x01da, 0x01dc, 0x01de,
0x01b9, 0x01bb, 0x01bd, 0x01c4, 0x01ca, 0x01cc, 0x01cf, 0x01d1, 0x01e0, 0x01e2, 0x01e4, 0x01e6,
0x01d3, 0x01d5, 0x01d7,
}; };
static const gU8 mf_rlefont_DejaVuSans20_aa_glyph_data_0[3953] PROGMEM = { static const gU8 mf_rlefont_DejaVuSans20_aa_glyph_data_0[3979] = {
0x06, 0x00, 0x10, 0x08, 0x85, 0x1a, 0xa0, 0x39, 0x2d, 0x39, 0x0d, 0x0d, 0x39, 0x83, 0x65, 0x1e, 0x06, 0x00, 0x10, 0x08, 0x25, 0x22, 0x8a, 0x2e, 0x3d, 0x2e, 0x0d, 0x0d, 0x2e, 0x48, 0x20, 0x22,
0x24, 0x10, 0x0a, 0x32, 0xf8, 0xdd, 0x9b, 0xca, 0x46, 0xf0, 0x9b, 0xca, 0x46, 0xf0, 0x10, 0x11, 0x10, 0x0a, 0x1e, 0xb7, 0x96, 0x96, 0x10, 0x11, 0x58, 0x50, 0x05, 0x6d, 0x30, 0x48, 0x1d, 0x09,
0x6e, 0x1e, 0x05, 0x26, 0x56, 0x83, 0x27, 0x09, 0xfd, 0x5e, 0x55, 0x27, 0x0d, 0x0b, 0x56, 0x05, 0xf5, 0x01, 0x6f, 0x1d, 0x0d, 0x0b, 0x30, 0x05, 0x6d, 0x37, 0x02, 0x0f, 0x07, 0x00, 0x33, 0x2f,
0x26, 0x25, 0x37, 0x7d, 0xb6, 0x2c, 0x33, 0x3d, 0x3a, 0x33, 0x3d, 0x2c, 0x83, 0x56, 0x04, 0x6c, 0x0d, 0x36, 0x35, 0x38, 0x0d, 0x36, 0x35, 0x2f, 0x48, 0x30, 0x04, 0x34, 0x37, 0x01, 0x6f, 0x30,
0x25, 0x5e, 0x55, 0x56, 0x08, 0x53, 0x23, 0x05, 0x26, 0x56, 0x83, 0x43, 0x22, 0x0d, 0x19, 0x22, 0x45, 0x01, 0x37, 0x05, 0x6d, 0x30, 0x48, 0xab, 0x4b, 0x61, 0x70, 0xbc, 0x35, 0x61, 0x1a, 0x5a,
0x0d, 0x2c, 0x0e, 0x09, 0x56, 0x07, 0x8b, 0x23, 0x04, 0x6c, 0x56, 0x0b, 0x0d, 0x27, 0x08, 0x8b, 0x09, 0x30, 0x07, 0x5b, 0x37, 0x04, 0x34, 0x30, 0x0b, 0x0d, 0x1d, 0x45, 0x44, 0x5a, 0x0a, 0x1d,
0x56, 0x0e, 0x0a, 0x27, 0x0b, 0x0d, 0x00, 0x8c, 0x59, 0x10, 0x0d, 0x50, 0xd4, 0x65, 0xd4, 0x65, 0x0b, 0x0d, 0x30, 0x40, 0x06, 0x10, 0x0d, 0x1e, 0xd4, 0x3b, 0xd4, 0x3b, 0x56, 0x9f, 0x0e, 0x5e,
0x8c, 0x0a, 0xb7, 0x0a, 0x04, 0x23, 0x05, 0x2a, 0x23, 0x8e, 0x67, 0x53, 0x73, 0x46, 0x01, 0x89, 0x37, 0x05, 0x8b, 0x1a, 0x0c, 0x41, 0x02, 0x0f, 0x6b, 0x0b, 0x37, 0x52, 0x6a, 0x3b, 0x4e, 0x06,
0x65, 0x0d, 0x59, 0x89, 0x65, 0x63, 0x5a, 0x55, 0x03, 0x87, 0x86, 0x20, 0x62, 0x01, 0x27, 0x5e, 0x6a, 0x3b, 0x5f, 0x28, 0x6f, 0x03, 0x24, 0x05, 0x0c, 0x4b, 0x2c, 0x01, 0x24, 0x01, 0x6f, 0x0e,
0x55, 0x57, 0x09, 0x23, 0xcc, 0x5c, 0x0d, 0x23, 0xcc, 0x5f, 0x25, 0x61, 0x01, 0x00, 0x8b, 0x0a, 0x54, 0x19, 0xd4, 0x56, 0x61, 0x19, 0xd4, 0x51, 0x19, 0x6e, 0x69, 0x5b, 0x0a, 0x67, 0x21, 0x34,
0x7e, 0xab, 0x6c, 0x2c, 0x8c, 0x49, 0x57, 0x0d, 0x0a, 0x03, 0x23, 0xd4, 0x65, 0xd4, 0x65, 0xd4, 0x19, 0x77, 0x8e, 0x61, 0x0a, 0x03, 0x37, 0xd4, 0x3b, 0xd4, 0x3b, 0xd4, 0x10, 0x13, 0x74, 0x06,
0x10, 0x13, 0x4a, 0x06, 0x33, 0x47, 0x85, 0x4f, 0x85, 0x88, 0x60, 0x0a, 0x26, 0x1b, 0x86, 0x3a, 0x4e, 0x82, 0x25, 0x0b, 0x07, 0x25, 0xaa, 0x0a, 0x6d, 0x70, 0x05, 0x0c, 0x38, 0xa3, 0x56, 0x2c,
0x81, 0x03, 0x8c, 0x62, 0x6e, 0x64, 0x03, 0x3a, 0xa4, 0x00, 0x7a, 0x6e, 0x09, 0x09, 0x21, 0xa4, 0x58, 0x80, 0x03, 0x25, 0x5a, 0xaf, 0x01, 0x28, 0x58, 0x09, 0x09, 0x38, 0x5a, 0xaf, 0x01, 0x28,
0x00, 0x7a, 0x00, 0x8c, 0x48, 0x3a, 0x81, 0x03, 0x8c, 0x62, 0x56, 0x4d, 0x70, 0x88, 0x60, 0x0a, 0x00, 0x56, 0x9c, 0x38, 0xa3, 0x56, 0x2c, 0x30, 0x0c, 0x05, 0x1a, 0xaa, 0x0a, 0x6d, 0x00, 0x07,
0x26, 0x00, 0x07, 0x0b, 0x25, 0x06, 0x33, 0x47, 0x37, 0x8d, 0x00, 0x06, 0x33, 0x52, 0x25, 0x4f, 0x0b, 0x19, 0x06, 0x4e, 0x82, 0x00, 0x62, 0x44, 0x06, 0x4e, 0x7d, 0x19, 0x0b, 0x07, 0x00, 0xaa,
0x00, 0x88, 0x60, 0x0a, 0x26, 0x70, 0x86, 0x56, 0x81, 0x03, 0x8c, 0x62, 0x3a, 0x5e, 0x0d, 0x03, 0x0a, 0x6d, 0x1a, 0x05, 0x0c, 0x30, 0xa3, 0x56, 0x2c, 0x23, 0x01, 0x0d, 0x03, 0x00, 0x5a, 0xaf,
0x56, 0xa4, 0x00, 0x7a, 0x21, 0x09, 0x09, 0x6e, 0xa4, 0x00, 0x7a, 0x3a, 0x4c, 0xad, 0x81, 0x03, 0x01, 0x28, 0x23, 0x09, 0x09, 0x30, 0x5a, 0xaf, 0x01, 0x28, 0x25, 0x56, 0x60, 0x58, 0xa3, 0x56,
0x8c, 0x62, 0x3a, 0x4d, 0x1b, 0x88, 0x60, 0x0a, 0x26, 0x85, 0x07, 0x0b, 0x85, 0x06, 0x33, 0x47, 0x2c, 0x38, 0x0c, 0x05, 0x70, 0xaa, 0x0a, 0x6d, 0x25, 0x07, 0x0b, 0x25, 0x06, 0x4e, 0x82, 0x10,
0x10, 0x0f, 0x1e, 0x04, 0x0c, 0x78, 0x0a, 0x04, 0x27, 0x05, 0x3f, 0x27, 0x33, 0x67, 0x79, 0x0b, 0x0f, 0x50, 0x04, 0x0c, 0x3d, 0x5e, 0x1d, 0x05, 0xc3, 0x1d, 0x97, 0x02, 0x01, 0x46, 0x1d, 0x52,
0x70, 0xd4, 0x53, 0x35, 0x5f, 0x03, 0x45, 0x54, 0x6d, 0x87, 0x5e, 0x0c, 0x71, 0x6d, 0x23, 0x5e, 0x3b, 0x51, 0x03, 0x63, 0x0a, 0x67, 0x01, 0x3b, 0x01, 0x0c, 0x0f, 0x67, 0x01, 0x1d, 0x01, 0x0c,
0x8e, 0x0d, 0x33, 0x6d, 0x00, 0x8c, 0x5a, 0x3a, 0x7f, 0x0d, 0x72, 0x0d, 0x62, 0x01, 0x00, 0x7f, 0x61, 0x0d, 0x67, 0x69, 0x56, 0x28, 0x25, 0x81, 0x61, 0x01, 0x02, 0x0d, 0x2c, 0x01, 0x81, 0x41,
0x0a, 0x3a, 0x33, 0x03, 0x56, 0x6b, 0x62, 0x03, 0x71, 0x03, 0x19, 0xad, 0x4c, 0x20, 0x0a, 0x21, 0x38, 0x0d, 0x2b, 0x30, 0x62, 0x2c, 0x40, 0x2b, 0x38, 0x52, 0x58, 0x59, 0x73, 0x41, 0x23, 0xa1,
0x0d, 0x7d, 0x1b, 0x07, 0x71, 0x58, 0x21, 0x07, 0x71, 0x84, 0x01, 0x06, 0x0e, 0x20, 0x09, 0x70, 0x70, 0x66, 0x60, 0x23, 0xa7, 0x03, 0x01, 0x06, 0x0e, 0x73, 0x54, 0x1a, 0x0a, 0x26, 0x54, 0x04,
0x0a, 0x3f, 0x09, 0x6f, 0x09, 0x70, 0x73, 0x57, 0x61, 0x56, 0x88, 0x55, 0x10, 0x06, 0xa3, 0x10, 0x0f, 0x54, 0x1a, 0x05, 0x0b, 0x47, 0x6e, 0x30, 0x04, 0x0f, 0x6f, 0x10, 0x06, 0xa5, 0x10, 0x08,
0x08, 0x1e, 0x07, 0xa6, 0x64, 0x06, 0x45, 0x08, 0x53, 0x45, 0x0d, 0x0b, 0x45, 0x04, 0x7d, 0x45, 0x50, 0x7e, 0x63, 0x80, 0x06, 0x9e, 0xa9, 0x0d, 0x0b, 0x63, 0x04, 0x53, 0x1d, 0x81, 0x34, 0x63,
0x08, 0x6c, 0x45, 0x0b, 0x8b, 0x45, 0x0d, 0x53, 0x3a, 0x4e, 0x21, 0x4e, 0x39, 0x0d, 0x53, 0x3a, 0x0b, 0x5b, 0x63, 0x4e, 0xa9, 0x47, 0x2e, 0x47, 0x2e, 0x4e, 0xa9, 0xa3, 0x9e, 0x05, 0x63, 0x04,
0x51, 0x03, 0x45, 0x08, 0x6c, 0x45, 0x04, 0x55, 0x39, 0x0d, 0x0c, 0x39, 0x08, 0x53, 0x45, 0x64, 0x6f, 0x2e, 0x0d, 0x0c, 0x00, 0x9e, 0xa9, 0x80, 0x06, 0x2e, 0x7e, 0x10, 0x08, 0x1e, 0x55, 0x2e,
0x06, 0x39, 0x7b, 0x10, 0x08, 0x50, 0x5d, 0x39, 0x06, 0x58, 0xae, 0x08, 0x39, 0x0c, 0x0d, 0x39, 0x06, 0x60, 0xa0, 0x6f, 0x2e, 0x0c, 0x0d, 0x63, 0x81, 0x6d, 0x63, 0x05, 0x6f, 0x63, 0x02, 0x2c,
0x08, 0x26, 0x45, 0x3e, 0x7c, 0x97, 0x62, 0xae, 0x0d, 0x39, 0x5a, 0x39, 0x5a, 0xae, 0x0d, 0xac, 0xa0, 0x61, 0x2e, 0x28, 0x2e, 0x28, 0xa0, 0x61, 0x1f, 0x56, 0x2c, 0x63, 0x05, 0x6f, 0x9e, 0x04,
0x0b, 0x45, 0x05, 0x55, 0x45, 0x08, 0x26, 0x45, 0x0c, 0x0d, 0xae, 0x08, 0x45, 0x06, 0x58, 0x45, 0x63, 0x0c, 0x0d, 0xa0, 0x6f, 0x63, 0x06, 0x0e, 0xa9, 0x55, 0x10, 0x0a, 0x2a, 0xd4, 0x3b, 0xd4,
0x5d, 0x10, 0x0a, 0x32, 0xd4, 0x65, 0xd4, 0x65, 0xa9, 0x04, 0x83, 0x5c, 0x03, 0x83, 0x04, 0x27, 0x3b, 0x0a, 0x07, 0xc8, 0x07, 0x0a, 0x19, 0x04, 0x48, 0x03, 0x2b, 0x48, 0x04, 0x1d, 0x06, 0x4e,
0x06, 0x33, 0x47, 0x65, 0x06, 0x33, 0x47, 0x27, 0x04, 0x83, 0x5c, 0x03, 0x83, 0x04, 0x25, 0xa9, 0x82, 0x3b, 0x06, 0x4e, 0x82, 0x1d, 0x04, 0x48, 0x03, 0x2b, 0x48, 0x04, 0x19, 0x0a, 0x07, 0xc8,
0xd4, 0x65, 0xd4, 0x10, 0x11, 0x00, 0x39, 0x8f, 0xa3, 0x27, 0x4b, 0x9e, 0x10, 0x06, 0x1d, 0x1c, 0x07, 0x0a, 0x19, 0xd4, 0x3b, 0xd4, 0x10, 0x11, 0x50, 0x20, 0xa5, 0x37, 0x29, 0x1d, 0x84, 0x10,
0x5b, 0x19, 0x9a, 0x10, 0x07, 0x6e, 0x1c, 0xc2, 0x87, 0xc2, 0x10, 0x06, 0x1d, 0x1c, 0x5b, 0x19, 0x06, 0x27, 0x32, 0x1b, 0x89, 0x0d, 0xa9, 0x7d, 0x10, 0x07, 0x23, 0x20, 0x20, 0x27, 0xc2, 0x24,
0x10, 0x07, 0x1e, 0xaa, 0x70, 0x08, 0x55, 0x45, 0x0d, 0x26, 0x65, 0x8c, 0x5a, 0x45, 0x68, 0x99, 0xc2, 0x10, 0x06, 0x27, 0x32, 0x1b, 0x10, 0x07, 0x23, 0x9d, 0x9e, 0x08, 0x63, 0x0d, 0x6d, 0x3b,
0x0c, 0x6c, 0x35, 0x5f, 0x98, 0xb8, 0x35, 0x5f, 0x01, 0x35, 0x3e, 0xa6, 0x09, 0x7d, 0x3a, 0x4e, 0x56, 0x28, 0x63, 0x07, 0x54, 0x95, 0x01, 0x88, 0x0b, 0x79, 0x3b, 0x01, 0x52, 0x1f, 0x05, 0x67,
0x03, 0x35, 0xaa, 0x70, 0x7f, 0x99, 0x0d, 0x26, 0x10, 0x0d, 0x00, 0x50, 0x04, 0x0b, 0x2d, 0x0b, 0x1f, 0x33, 0x07, 0x1f, 0x5a, 0x2b, 0x1f, 0x04, 0x61, 0x9e, 0x09, 0x63, 0x0d, 0x6d, 0x10, 0x0d,
0x04, 0x27, 0x05, 0x30, 0x6c, 0x25, 0x64, 0x55, 0x34, 0x7f, 0x58, 0x2c, 0x07, 0x62, 0x1b, 0x0b, 0x00, 0x1e, 0x46, 0x3d, 0x76, 0x1d, 0x05, 0x26, 0x34, 0x19, 0x80, 0x6f, 0x65, 0x08, 0xb0, 0x2f,
0x7d, 0x51, 0x05, 0x1b, 0x05, 0x62, 0x2c, 0x0d, 0x8b, 0x18, 0x0d, 0x2c, 0xa4, 0x1b, 0x7a, 0x56, 0x07, 0x2c, 0x70, 0x0b, 0x53, 0x38, 0x0b, 0x34, 0x70, 0xae, 0x2f, 0x4e, 0x3a, 0x02, 0x61, 0x2f,
0xa2, 0xdc, 0x2c, 0xa4, 0x1b, 0x7a, 0x2c, 0x0d, 0x8b, 0x18, 0x0d, 0x51, 0x05, 0x1b, 0x05, 0x62, 0x47, 0x01, 0x70, 0x01, 0x28, 0x3e, 0xdc, 0x2f, 0x47, 0x01, 0x70, 0x01, 0x28, 0x2f, 0x4e, 0x3a,
0x2c, 0x07, 0x62, 0x1b, 0x0b, 0x7d, 0x2c, 0x64, 0x55, 0x34, 0x7f, 0x58, 0x25, 0x05, 0x30, 0x6c, 0x02, 0x61, 0x2f, 0x0b, 0x34, 0x70, 0xae, 0x2f, 0x07, 0x2c, 0x70, 0x0b, 0x53, 0x38, 0x80, 0x6f,
0x27, 0x04, 0x0b, 0x2d, 0x0b, 0x04, 0x10, 0x0d, 0x3a, 0x97, 0x06, 0x0a, 0xb4, 0x87, 0x3f, 0x87, 0x65, 0x08, 0xb0, 0x19, 0x05, 0x26, 0x34, 0x1d, 0x46, 0x3d, 0x76, 0x10, 0x0d, 0x1e, 0x02, 0x06,
0xa1, 0x06, 0x02, 0x71, 0x91, 0xa0, 0xb0, 0x3f, 0x46, 0x3f, 0x10, 0x0d, 0x32, 0x8c, 0x49, 0x57, 0x9f, 0x0f, 0x24, 0xc3, 0x24, 0x5c, 0x06, 0x02, 0x84, 0x8a, 0x24, 0xc2, 0xcb, 0xab, 0x10, 0x0d,
0x0d, 0x42, 0x00, 0xab, 0x0d, 0x02, 0x25, 0x5d, 0x03, 0x01, 0x66, 0x57, 0x0a, 0x45, 0x04, 0x5a, 0x74, 0x77, 0x8e, 0xa4, 0x21, 0x0d, 0x02, 0x19, 0x55, 0x03, 0x01, 0x6b, 0x0e, 0x41, 0x63, 0x04,
0x45, 0x5f, 0xac, 0x0d, 0x3a, 0x51, 0x09, 0x87, 0xb6, 0x8d, 0x65, 0x08, 0x5a, 0x03, 0x65, 0x07, 0x28, 0xa0, 0x28, 0x1f, 0x56, 0x67, 0x63, 0x0b, 0x34, 0x1f, 0x09, 0x2c, 0x1f, 0x45, 0x9c, 0x24,
0x5a, 0x04, 0x65, 0x7f, 0x26, 0x65, 0x7f, 0x26, 0x65, 0x7f, 0x6c, 0x28, 0x38, 0x53, 0x43, 0x3f, 0x07, 0x0f, 0x4f, 0x24, 0x81, 0x28, 0x04, 0x24, 0x81, 0xa6, 0x3b, 0x45, 0x34, 0x25, 0xab, 0xaf,
0x53, 0x10, 0x0d, 0x32, 0x8c, 0x49, 0x57, 0xa1, 0x02, 0x23, 0x3f, 0x5a, 0x03, 0x25, 0x5d, 0x04, 0xac, 0x01, 0x10, 0x0d, 0x74, 0x77, 0x0c, 0x47, 0x5c, 0x44, 0x21, 0x0e, 0x03, 0x19, 0x55, 0x04,
0x02, 0x8c, 0x0b, 0x62, 0x00, 0x97, 0x5a, 0xae, 0x0d, 0x97, 0x0b, 0x7d, 0x25, 0xbc, 0x47, 0x23, 0x69, 0x7a, 0x2c, 0x63, 0x7b, 0xa0, 0x61, 0x1f, 0x3f, 0x53, 0x23, 0xbc, 0x82, 0x37, 0xbc, 0x2c,
0xbc, 0x62, 0x03, 0x97, 0x06, 0x0e, 0x26, 0x45, 0x88, 0xa6, 0x7a, 0x45, 0xaa, 0x56, 0x61, 0x03, 0x03, 0x1f, 0x02, 0x06, 0x0e, 0x6d, 0x63, 0x04, 0x67, 0xa0, 0x28, 0x9d, 0x2f, 0x3c, 0x44, 0x01,
0x01, 0x72, 0x07, 0x0e, 0x55, 0x2c, 0x2a, 0x62, 0x01, 0x70, 0x8c, 0x49, 0xb7, 0x3b, 0x10, 0x0d, 0x02, 0x07, 0x0e, 0x6f, 0xab, 0x0b, 0x01, 0x2f, 0x4d, 0x8e, 0x28, 0x78, 0x10, 0x0d, 0x2f, 0xa0,
0x56, 0x1e, 0xaf, 0x0f, 0x35, 0x09, 0xb4, 0x87, 0x8c, 0x7d, 0x71, 0x65, 0x0d, 0x0c, 0x36, 0x87, 0x0d, 0x73, 0x1f, 0x09, 0x0e, 0x73, 0x3b, 0x40, 0x66, 0x3b, 0x0d, 0x0c, 0x4a, 0x1d, 0x81, 0x2b,
0x7f, 0x03, 0x36, 0x70, 0x18, 0x09, 0xf0, 0x27, 0x0c, 0x48, 0x36, 0x23, 0x06, 0x6c, 0xdc, 0x25, 0x4a, 0x1d, 0x02, 0x54, 0xf0, 0x1d, 0x0c, 0x9c, 0x4a, 0x37, 0x06, 0x34, 0xdc, 0x19, 0x62, 0x0b,
0x6b, 0x0b, 0x5b, 0x0b, 0x8d, 0x5b, 0x3d, 0x85, 0xbc, 0x3c, 0xb0, 0x24, 0x10, 0x0d, 0x1f, 0xcb, 0xb4, 0x19, 0x0b, 0x4f, 0x7f, 0xac, 0x68, 0x4b, 0x35, 0x23, 0x92, 0x22, 0x10, 0x0d, 0x9b, 0xcb,
0xab, 0x00, 0x46, 0x91, 0x8e, 0x0d, 0x42, 0x27, 0x3f, 0x6d, 0x23, 0x0a, 0x04, 0x72, 0x07, 0x0e, 0x21, 0x23, 0x9a, 0x22, 0x0c, 0xa4, 0x19, 0xc2, 0x67, 0x01, 0x37, 0x5e, 0x00, 0x02, 0x07, 0x47,
0x7d, 0x45, 0x63, 0xa6, 0x7a, 0x45, 0x7a, 0x45, 0x06, 0x7e, 0x25, 0x4d, 0x02, 0x37, 0x68, 0x7d, 0x07, 0x63, 0x06, 0x67, 0xa0, 0x28, 0xa0, 0x28, 0x63, 0x06, 0x67, 0x19, 0x78, 0x69, 0x02, 0x07,
0xab, 0x0b, 0x23, 0x8a, 0x0d, 0x5a, 0x61, 0x10, 0x0d, 0x1e, 0x7b, 0x2d, 0x0a, 0x04, 0x25, 0x5e, 0x31, 0x21, 0x0b, 0x37, 0x4d, 0xb2, 0x6e, 0x10, 0x0d, 0x50, 0x7e, 0x3d, 0x76, 0x37, 0x01, 0x0c,
0x0c, 0x3f, 0x23, 0x54, 0x82, 0x01, 0x79, 0x0b, 0x25, 0x5c, 0x76, 0x27, 0xb6, 0x0a, 0x45, 0x0c, 0xc3, 0x37, 0x0a, 0x28, 0x05, 0x65, 0x46, 0x19, 0x40, 0x2b, 0x1f, 0x09, 0x41, 0x95, 0x5a, 0x5b,
0x6c, 0x45, 0x0e, 0x8b, 0x07, 0x33, 0xa1, 0x01, 0x00, 0x43, 0x09, 0x30, 0x0d, 0x01, 0x4e, 0x52, 0x07, 0x4e, 0x5c, 0x01, 0x38, 0xd4, 0x54, 0x26, 0x9c, 0x23, 0x5a, 0x61, 0x6c, 0x6b, 0xad, 0x2f,
0x01, 0x66, 0x33, 0x09, 0x4e, 0x04, 0x1b, 0xaa, 0x56, 0x0c, 0x53, 0x1b, 0x5f, 0x2c, 0x09, 0x26, 0x47, 0xa2, 0x30, 0x0c, 0xaf, 0x58, 0x01, 0x68, 0x33, 0xa2, 0x00, 0x56, 0x61, 0x6c, 0x6b, 0x0d,
0x1b, 0xaa, 0x56, 0x5c, 0x52, 0x01, 0x66, 0x0d, 0x55, 0x25, 0x09, 0x3f, 0x6d, 0x23, 0x86, 0x57, 0x6f, 0x19, 0x09, 0x26, 0x67, 0x01, 0x37, 0x05, 0x8e, 0xa4, 0x10, 0x0d, 0x24, 0x92, 0x35, 0xab,
0x0d, 0x42, 0x10, 0x0d, 0x4a, 0x22, 0x43, 0x2a, 0xa6, 0x0a, 0x7d, 0x35, 0x5f, 0x98, 0xb8, 0x35, 0x67, 0x63, 0x0a, 0x53, 0x1d, 0x01, 0x88, 0x0b, 0x79, 0x3b, 0x01, 0x88, 0x0b, 0x79, 0x3b, 0x02,
0x5f, 0x98, 0xb8, 0x23, 0x18, 0x53, 0x35, 0x68, 0x0a, 0x45, 0x0c, 0x6c, 0x23, 0x18, 0x58, 0x35, 0x52, 0x1f, 0x07, 0x41, 0x95, 0x02, 0xb0, 0x1f, 0x07, 0x41, 0x95, 0x10, 0x0d, 0x1e, 0x02, 0x08,
0x68, 0x0a, 0x45, 0x0c, 0x6c, 0x10, 0x0d, 0x3a, 0x97, 0x49, 0x57, 0xa1, 0x02, 0x25, 0x4c, 0x30, 0x0c, 0x47, 0x5c, 0x02, 0x19, 0x59, 0x26, 0x28, 0x03, 0x2f, 0x0c, 0x67, 0x04, 0x65, 0x04, 0x0c,
0x5a, 0x03, 0x2c, 0x0c, 0x7e, 0x80, 0x79, 0x0c, 0x7e, 0x43, 0x02, 0x18, 0x0f, 0x2c, 0x0d, 0x8b, 0x67, 0x30, 0x92, 0x3a, 0x57, 0x2f, 0x4e, 0x3a, 0x02, 0x61, 0x2f, 0x06, 0x67, 0x04, 0x65, 0x04,
0x18, 0x0d, 0x2c, 0x06, 0x7e, 0x80, 0x79, 0x0c, 0x59, 0x25, 0x86, 0x38, 0x4d, 0x23, 0x07, 0x0e, 0x0c, 0x79, 0x2f, 0x05, 0x0c, 0x4b, 0x67, 0x05, 0x37, 0x07, 0x0e, 0x4b, 0x28, 0x07, 0x19, 0x06,
0x20, 0x5a, 0x07, 0x25, 0x63, 0x52, 0x01, 0x66, 0x0d, 0x59, 0x2c, 0x0c, 0x26, 0x1b, 0x04, 0x7e, 0x61, 0x6c, 0x6b, 0x4e, 0x06, 0x2f, 0x0c, 0x6d, 0x70, 0x04, 0x67, 0x2f, 0x52, 0x70, 0x01, 0x68,
0x43, 0x01, 0x1b, 0x5f, 0x4e, 0x04, 0x1b, 0x04, 0x5a, 0x2c, 0x54, 0x52, 0x01, 0x66, 0x33, 0x09, 0x5a, 0x6d, 0x70, 0x04, 0x28, 0x2f, 0x0a, 0x61, 0x6c, 0x6b, 0xad, 0x2f, 0x02, 0x0d, 0x26, 0x61,
0x70, 0x37, 0x0d, 0x3f, 0x0d, 0x02, 0x2c, 0x5e, 0x2b, 0x71, 0x0d, 0x42, 0x10, 0x0d, 0x4a, 0x5e, 0x02, 0x19, 0x01, 0xb1, 0xa4, 0x10, 0x0d, 0x25, 0xa0, 0x08, 0xb2, 0x78, 0x37, 0x01, 0x0d, 0x26,
0x2b, 0x5a, 0x3b, 0x23, 0xaf, 0x38, 0x55, 0x70, 0xb6, 0x52, 0x01, 0x66, 0x33, 0x03, 0x2c, 0x0d, 0x6f, 0x19, 0x09, 0x61, 0x6c, 0x6b, 0x0d, 0x2b, 0x2f, 0x0d, 0x6d, 0x70, 0x04, 0x6f, 0x2f, 0x52,
0x26, 0x1b, 0x04, 0x55, 0x43, 0xad, 0x5e, 0x62, 0x4e, 0x04, 0x1b, 0xaa, 0xb6, 0x52, 0x01, 0x66, 0x70, 0x01, 0x2c, 0x2f, 0x47, 0xa2, 0x30, 0x09, 0x61, 0x6c, 0x6b, 0xb2, 0x2f, 0x01, 0x0d, 0x36,
0x0d, 0x5a, 0x2c, 0xaf, 0x38, 0x44, 0x2c, 0x5e, 0x09, 0x33, 0x6a, 0x03, 0x5a, 0x45, 0x3e, 0xa6, 0x54, 0x73, 0x19, 0x01, 0x09, 0x4e, 0x71, 0x03, 0x28, 0x63, 0x05, 0x67, 0x63, 0x0a, 0x54, 0x1f,
0x54, 0x09, 0x35, 0x5c, 0x76, 0x2c, 0x0b, 0x80, 0x66, 0x57, 0x0a, 0x23, 0x3f, 0x6d, 0x23, 0x04, 0x40, 0x2b, 0x19, 0x76, 0x01, 0x6b, 0x0e, 0x41, 0x19, 0xc2, 0x67, 0x01, 0x37, 0x46, 0x3d, 0x55,
0x0a, 0x2d, 0x5d, 0x10, 0x07, 0x90, 0x10, 0x07, 0x90, 0x9a, 0x10, 0x11, 0x8f, 0x8f, 0x37, 0x7b, 0x10, 0x07, 0x37, 0x27, 0x22, 0x20, 0x27, 0x9a, 0x10, 0x07, 0x37, 0x27, 0x22, 0x20, 0x27, 0x9a,
0x27, 0x5e, 0x06, 0x0b, 0x20, 0x23, 0x75, 0x38, 0x2e, 0x70, 0x8a, 0xb4, 0x62, 0x06, 0x01, 0x70, 0x89, 0x0d, 0xa9, 0x7d, 0x10, 0x11, 0x27, 0x02, 0x7e, 0x24, 0x75, 0x4b, 0x37, 0x05, 0x94, 0x41,
0x2b, 0x20, 0x5d, 0x02, 0x70, 0xbc, 0x82, 0x65, 0x2b, 0x20, 0x5d, 0x02, 0x87, 0x8a, 0xb4, 0x62, 0x05, 0x1a, 0x4d, 0x0e, 0x4b, 0x3c, 0x01, 0x1a, 0xb1, 0x73, 0x55, 0x3a, 0x92, 0x28, 0x05, 0x3b,
0x06, 0x01, 0x87, 0x75, 0x71, 0x5a, 0x2e, 0x27, 0x5e, 0x06, 0x0b, 0xeb, 0x97, 0x7b, 0x10, 0x11, 0xb1, 0x73, 0x55, 0x02, 0x24, 0x4d, 0x0e, 0x4b, 0x3c, 0x01, 0x24, 0x05, 0x2d, 0x28, 0x0a, 0x05,
0x1e, 0x1d, 0x95, 0x3d, 0x19, 0x3d, 0x8f, 0x36, 0x3d, 0x19, 0x3d, 0x10, 0x11, 0x23, 0x1e, 0x8f, 0x24, 0x75, 0x4b, 0x63, 0x02, 0x7e, 0x10, 0x11, 0x27, 0x7c, 0x10, 0x11, 0x58, 0x20, 0x20, 0x55,
0x5d, 0x02, 0x95, 0x62, 0x06, 0x01, 0x87, 0x75, 0x38, 0x2e, 0x27, 0x5e, 0x06, 0x0b, 0x71, 0x5a, 0x02, 0x24, 0xbc, 0x3c, 0x01, 0x24, 0x05, 0x94, 0x41, 0x05, 0x24, 0x75, 0x73, 0x28, 0x09, 0x03,
0x84, 0x27, 0x37, 0x7b, 0x20, 0x0d, 0x08, 0x65, 0x06, 0x0e, 0x20, 0x25, 0x37, 0x7b, 0x20, 0x0d, 0x24, 0x02, 0x7e, 0x4b, 0x64, 0x3b, 0x06, 0x0e, 0x4b, 0x37, 0x02, 0x7e, 0x4b, 0x64, 0x1a, 0x75,
0x08, 0x21, 0x5e, 0x06, 0x0b, 0x71, 0x5a, 0x84, 0x70, 0x75, 0x38, 0x2e, 0x46, 0x62, 0x06, 0x01, 0x73, 0x28, 0x09, 0x03, 0x1a, 0x05, 0x94, 0x41, 0x05, 0x1a, 0xbc, 0x3c, 0x01, 0x24, 0x55, 0x02,
0x87, 0x5d, 0x02, 0x10, 0x0b, 0x4a, 0x8a, 0x0c, 0x2d, 0x0b, 0x04, 0x27, 0x3f, 0x26, 0x23, 0x61, 0x10, 0x0b, 0x74, 0x4d, 0xb2, 0x76, 0x37, 0xc2, 0xa6, 0x37, 0x6e, 0x44, 0x3f, 0x67, 0x63, 0x57,
0x02, 0x8c, 0x81, 0xa6, 0x02, 0x71, 0xac, 0x0d, 0x97, 0x0d, 0x7d, 0x65, 0x4c, 0x62, 0x87, 0x37, 0x1f, 0x56, 0x61, 0x1f, 0x02, 0xa1, 0x3b, 0x59, 0x2c, 0x3b, 0x62, 0x41, 0x1f, 0x0a, 0x41, 0x63,
0x57, 0x0a, 0x35, 0x54, 0x0a, 0x45, 0xa4, 0x95, 0x45, 0xca, 0x39, 0x24, 0x10, 0x14, 0x00, 0x1e, 0x47, 0xa9, 0x1b, 0x30, 0x2e, 0x22, 0x10, 0x14, 0x30, 0x50, 0x77, 0x8e, 0x61, 0x3c, 0x01, 0x1a,
0x8c, 0x49, 0x57, 0x0d, 0x0b, 0x06, 0x01, 0x21, 0x37, 0x0b, 0x2a, 0x5a, 0x07, 0x85, 0x8c, 0xb7, 0x3f, 0x35, 0x0e, 0x07, 0x38, 0x59, 0x28, 0x08, 0x03, 0x69, 0x02, 0x05, 0x2d, 0x0a, 0x18, 0x62,
0x08, 0x03, 0x01, 0x37, 0x75, 0x71, 0x0a, 0x2f, 0x6b, 0x62, 0x01, 0x85, 0x8c, 0x33, 0x09, 0x1b, 0x2c, 0x01, 0x25, 0x56, 0xad, 0x70, 0x0b, 0x41, 0x2f, 0x62, 0x6d, 0x30, 0x04, 0xb0, 0x30, 0x06,
0x81, 0x0a, 0x2c, 0x6b, 0x26, 0x56, 0x88, 0x58, 0x56, 0x06, 0x40, 0x60, 0xe7, 0x63, 0x0a, 0xb6, 0x0d, 0x0e, 0x0a, 0x01, 0xe7, 0x06, 0x41, 0x30, 0x09, 0x6f, 0x30, 0x04, 0x4b, 0x41, 0xe7, 0x02,
0x08, 0x56, 0x04, 0x38, 0x0a, 0xe7, 0x74, 0x0d, 0x56, 0x33, 0x03, 0x56, 0x81, 0x0a, 0x34, 0x0a, 0x61, 0x30, 0x0d, 0x2b, 0x30, 0x0b, 0x41, 0x65, 0x0a, 0x42, 0xd0, 0x5a, 0xaf, 0x5a, 0xaf, 0x51,
0xe7, 0xca, 0xa4, 0x56, 0xa4, 0x00, 0x5e, 0xe7, 0x74, 0x0d, 0x56, 0xa4, 0x56, 0xa4, 0x56, 0x5f, 0x30, 0x02, 0x61, 0x00, 0x5a, 0xaf, 0x5a, 0xaf, 0x51, 0x30, 0x09, 0x54, 0x30, 0x0d, 0x2b, 0x30,
0xb6, 0x09, 0x56, 0x33, 0x03, 0x56, 0x81, 0x0a, 0x34, 0x54, 0x8b, 0x77, 0x8d, 0x56, 0x0a, 0x7d, 0x0b, 0x41, 0x65, 0x2d, 0x02, 0x8c, 0x4f, 0x30, 0x0a, 0x0f, 0x07, 0x30, 0x04, 0x36, 0x94, 0x61,
0x56, 0x04, 0x38, 0x0a, 0x38, 0x0d, 0x03, 0x6e, 0x3e, 0x48, 0x00, 0x06, 0x40, 0x60, 0x78, 0x0a, 0x03, 0x58, 0x05, 0x61, 0x01, 0x30, 0x06, 0x0d, 0x0e, 0x0a, 0x80, 0x0d, 0x0a, 0x06, 0x25, 0x0c,
0x06, 0x85, 0x8e, 0x0a, 0xac, 0x0f, 0x60, 0x2f, 0x37, 0x0b, 0x03, 0x3a, 0x3e, 0x5a, 0x07, 0x03, 0x41, 0x63, 0x40, 0x41, 0x01, 0x25, 0x3f, 0x03, 0x38, 0x05, 0x0f, 0x28, 0x07, 0x03, 0x65, 0x77,
0x34, 0x03, 0x08, 0x78, 0x02, 0x3a, 0x8c, 0x0c, 0x3f, 0x7e, 0x02, 0x25, 0x75, 0x0d, 0x2d, 0x0b, 0x0e, 0x0d, 0x02, 0x38, 0x56, 0x0c, 0xc3, 0x67, 0x02, 0x19, 0x05, 0x0a, 0x0d, 0x3d, 0x3c, 0x10,
0x06, 0x10, 0x0e, 0x35, 0x51, 0x0c, 0x97, 0x71, 0x8b, 0x65, 0x07, 0x71, 0x7d, 0x65, 0x33, 0x7f, 0x0e, 0x00, 0x50, 0x0b, 0x67, 0x1f, 0x57, 0x5b, 0x3b, 0x66, 0x53, 0x37, 0x0d, 0x6f, 0x61, 0x1d,
0x0d, 0x27, 0x8c, 0x5a, 0x00, 0x57, 0x03, 0xa7, 0x57, 0x03, 0x8c, 0x5a, 0x23, 0x88, 0x0d, 0x6e, 0x56, 0x28, 0x5a, 0x2b, 0x1d, 0x09, 0x6f, 0x81, 0x54, 0x37, 0x5a, 0x2b, 0x56, 0x28, 0x37, 0x04,
0x0c, 0x26, 0x25, 0x0a, 0x7d, 0x6e, 0x68, 0x0a, 0x2c, 0x64, 0x8b, 0x6e, 0x74, 0x58, 0x70, 0x63, 0x61, 0x58, 0x0c, 0x6d, 0x19, 0x0a, 0x53, 0x07, 0x41, 0x2f, 0x80, 0x5b, 0x58, 0x02, 0xb0, 0x1a,
0x2a, 0x59, 0x70, 0x81, 0x2a, 0x62, 0x1b, 0x18, 0x53, 0x2f, 0x5f, 0x02, 0x3a, 0x68, 0x0a, 0x3a, 0x5f, 0x35, 0x06, 0x1a, 0x0b, 0x35, 0x2c, 0x23, 0x02, 0x52, 0x70, 0x51, 0x02, 0x38, 0x07, 0x41,
0x0a, 0x7d, 0x3a, 0x0c, 0x6c, 0x3a, 0x05, 0x7e, 0x10, 0x0e, 0x4a, 0xc2, 0x0d, 0x0b, 0x03, 0x00, 0x38, 0x0a, 0x53, 0x70, 0x0c, 0x34, 0x38, 0x05, 0x67, 0x10, 0x0e, 0x9b, 0x61, 0x0b, 0x03, 0x00,
0xab, 0x6c, 0xb9, 0x02, 0x0a, 0x7e, 0x31, 0x6e, 0x5f, 0xb9, 0x5e, 0x0f, 0x0d, 0xb9, 0x02, 0x0a, 0x21, 0x34, 0x99, 0x02, 0x0a, 0x67, 0x99, 0x51, 0x99, 0x00, 0x01, 0x61, 0x99, 0x02, 0x0a, 0x6f,
0x55, 0x2c, 0xc2, 0x5a, 0x7c, 0xab, 0x0c, 0x04, 0xb9, 0x66, 0x0d, 0x26, 0x43, 0x1b, 0x8c, 0x62, 0x2f, 0xc2, 0x28, 0x08, 0x37, 0xc3, 0x67, 0x04, 0x99, 0x6b, 0x0d, 0x6d, 0x3e, 0x00, 0x56, 0x2c,
0x43, 0x2f, 0x7a, 0x43, 0x1b, 0x8c, 0x5a, 0x56, 0xa2, 0x66, 0x33, 0x0a, 0x43, 0x3f, 0x8d, 0x70, 0x3e, 0x30, 0x01, 0x28, 0x3e, 0x00, 0x56, 0x28, 0x3e, 0x6b, 0x97, 0xab, 0x4f, 0x23, 0xc0, 0x28,
0xc2, 0x78, 0x42, 0x10, 0x0e, 0x70, 0x97, 0x49, 0x57, 0x0d, 0x69, 0x03, 0x2c, 0x68, 0x3c, 0x21, 0x64, 0x01, 0x10, 0x0e, 0x50, 0x02, 0x08, 0x8e, 0x28, 0x72, 0x03, 0x2f, 0x66, 0x26, 0x68, 0xa7,
0xb2, 0x1b, 0x18, 0x6c, 0x35, 0x7f, 0x0a, 0x45, 0x0c, 0x26, 0x45, 0xa4, 0x95, 0x39, 0xa4, 0x45, 0x04, 0x69, 0x43, 0x7e, 0x23, 0x57, 0x05, 0x3b, 0x81, 0x41, 0x63, 0x0c, 0x6d, 0x63, 0x47, 0xa9,
0x0c, 0x26, 0x45, 0x7f, 0x0a, 0x27, 0x18, 0x6c, 0x45, 0xb2, 0x2c, 0x68, 0x3c, 0x70, 0x37, 0x49, 0x73, 0x2e, 0x47, 0xa9, 0x0c, 0x6d, 0x9e, 0x0a, 0x63, 0x57, 0x05, 0x63, 0xa7, 0x04, 0x69, 0x43,
0x57, 0x0d, 0x69, 0x02, 0x10, 0x0f, 0x1f, 0x5a, 0x69, 0x03, 0x41, 0x09, 0x56, 0xa2, 0x79, 0x44, 0x7e, 0x2f, 0x66, 0x8b, 0x23, 0x02, 0x08, 0x8e, 0x28, 0x72, 0x03, 0x10, 0x0f, 0x9b, 0x28, 0x72,
0x09, 0x29, 0x85, 0x88, 0x76, 0x19, 0x2f, 0xb6, 0x09, 0xa2, 0x1b, 0x04, 0x7e, 0xa2, 0x1b, 0x7a, 0x03, 0x00, 0xab, 0x54, 0x3e, 0x01, 0x04, 0x8c, 0x54, 0x00, 0x92, 0x25, 0x04, 0x0f, 0x2b, 0x92,
0xa2, 0x6e, 0xd0, 0x19, 0x3a, 0x7a, 0xa2, 0x1b, 0x04, 0x7e, 0xa2, 0x56, 0xb6, 0x09, 0xa2, 0x6e, 0x38, 0x09, 0x54, 0x92, 0x38, 0x04, 0x67, 0x92, 0x38, 0x01, 0x28, 0x92, 0x92, 0x92, 0x38, 0x01,
0x6f, 0x03, 0xa2, 0x79, 0x44, 0x09, 0x29, 0x2a, 0x09, 0x21, 0xc0, 0x5a, 0x69, 0x03, 0x10, 0x0d, 0x28, 0x92, 0x38, 0x04, 0x67, 0x92, 0x38, 0x09, 0x54, 0x92, 0x25, 0x04, 0x0f, 0x2b, 0x23, 0x4c,
0x23, 0x41, 0xab, 0xf7, 0x43, 0x9e, 0x2a, 0x41, 0x31, 0x95, 0x9e, 0x2a, 0x41, 0x10, 0x0c, 0x1f, 0x01, 0x04, 0x8c, 0x54, 0xac, 0x09, 0x23, 0xc0, 0x28, 0x72, 0x03, 0x10, 0x0d, 0x1e, 0xc3, 0xcb,
0x38, 0x46, 0x3f, 0x46, 0x9e, 0x30, 0x2c, 0xbc, 0xd3, 0x46, 0x24, 0x9e, 0x10, 0x10, 0x1e, 0x8a, 0xac, 0x19, 0x84, 0x36, 0xcb, 0xac, 0x19, 0x84, 0x2e, 0xc3, 0xcb, 0xac, 0x10, 0x0c, 0x74, 0xc2,
0x40, 0x78, 0x4f, 0x02, 0x2c, 0x7f, 0x3c, 0x21, 0x7f, 0x55, 0x03, 0x01, 0x37, 0x04, 0x2b, 0x1b, 0xcb, 0xab, 0x37, 0x84, 0x73, 0xcb, 0x21, 0x18, 0x92, 0x8a, 0x10, 0x10, 0x50, 0x4d, 0x0d, 0x0e,
0x18, 0x26, 0x35, 0x7f, 0x99, 0x0c, 0x26, 0x45, 0xa4, 0x95, 0x2f, 0xc2, 0x3a, 0xa4, 0x1b, 0xc2, 0x28, 0x72, 0x03, 0x2f, 0x45, 0xc3, 0x68, 0x45, 0x6f, 0x03, 0x69, 0x43, 0x7e, 0x23, 0x02, 0xa6,
0x3a, 0x0c, 0x26, 0xa2, 0x1b, 0x7f, 0x09, 0xa2, 0x18, 0x6c, 0x19, 0x21, 0x07, 0x71, 0x09, 0x80, 0x3b, 0x81, 0x54, 0x63, 0x0c, 0x6d, 0x63, 0x47, 0xa9, 0x73, 0x18, 0xc2, 0x38, 0x47, 0x01, 0x70,
0x5e, 0x03, 0x07, 0x71, 0x70, 0x68, 0x2a, 0x82, 0x70, 0x37, 0x49, 0xb7, 0x4f, 0x01, 0x10, 0x0f, 0xc2, 0x38, 0x0c, 0x6d, 0x92, 0x25, 0x81, 0x54, 0x92, 0x38, 0x57, 0x05, 0x58, 0xb4, 0x23, 0xa7,
0x50, 0x9c, 0x9c, 0x3d, 0x70, 0x3d, 0x29, 0x19, 0xb3, 0xb3, 0x10, 0x06, 0xa3, 0x91, 0xa0, 0x10, 0x04, 0x69, 0x43, 0x07, 0x68, 0x66, 0x26, 0x28, 0x05, 0x2f, 0x02, 0x08, 0x8e, 0x28, 0x0b, 0x07,
0x06, 0x2f, 0xa0, 0xa0, 0x45, 0x7a, 0xac, 0x0d, 0x97, 0x8e, 0x09, 0x23, 0xbc, 0x8d, 0x65, 0x5a, 0x01, 0x10, 0x0f, 0x37, 0x99, 0x98, 0x4c, 0x98, 0x4b, 0x35, 0xac, 0x68, 0x4c, 0x98, 0x4c, 0x98,
0x0b, 0x03, 0x10, 0x0d, 0x23, 0xb9, 0xb6, 0x7d, 0x21, 0xca, 0xb6, 0x7d, 0x21, 0xd0, 0xb6, 0x7d, 0x4c, 0xb4, 0x10, 0x06, 0x1e, 0x84, 0x85, 0x8a, 0x10, 0x06, 0x18, 0x22, 0x8a, 0x8a, 0xa0, 0x28,
0x2c, 0xca, 0x7f, 0x59, 0x00, 0x31, 0x7f, 0x59, 0x00, 0x46, 0x7f, 0x59, 0x25, 0xbc, 0x6c, 0x23, 0x1f, 0x56, 0x61, 0x1f, 0x02, 0x0c, 0x54, 0x37, 0xbc, 0x4f, 0x3b, 0x28, 0x0b, 0x03, 0x10, 0x0d,
0xbc, 0x6c, 0xb0, 0x7f, 0x59, 0x9b, 0x7f, 0x59, 0x00, 0x46, 0xb6, 0x59, 0x00, 0x31, 0xb6, 0x59, 0x3b, 0x92, 0x18, 0x09, 0x31, 0x18, 0xd4, 0xc5, 0x09, 0x31, 0x3e, 0x09, 0x31, 0x38, 0x7f, 0x45,
0x31, 0x6e, 0x54, 0x7d, 0x43, 0x2f, 0x54, 0x7d, 0x29, 0x85, 0x54, 0x7d, 0x10, 0x0b, 0x2f, 0xa0, 0x79, 0x1a, 0xd0, 0x45, 0x79, 0x70, 0x92, 0x45, 0x79, 0x2f, 0xbc, 0x34, 0x37, 0xbc, 0x34, 0x38,
0xa0, 0x2a, 0x41, 0x10, 0x11, 0x32, 0xe0, 0x0a, 0x2f, 0x0a, 0x20, 0x19, 0x5a, 0xad, 0x64, 0x20, 0x92, 0x45, 0x79, 0x19, 0xd0, 0x45, 0x79, 0x2f, 0xd0, 0x33, 0x79, 0x99, 0x8c, 0x79, 0x3e, 0x00,
0x19, 0x0b, 0x6c, 0x6e, 0x05, 0x62, 0xc7, 0xd4, 0x59, 0x62, 0x6e, 0xb8, 0x71, 0x19, 0x5f, 0x01, 0x0a, 0x31, 0x3e, 0x30, 0x0a, 0x31, 0x00, 0x92, 0x25, 0x0a, 0x31, 0x10, 0x0b, 0x18, 0x22, 0x8a,
0x00, 0x5f, 0x5f, 0x2f, 0xd0, 0xb8, 0x00, 0x06, 0x62, 0x36, 0x2f, 0xd0, 0x05, 0x62, 0x00, 0x0b, 0x8a, 0x36, 0xcb, 0xac, 0x10, 0x11, 0x3b, 0x92, 0x41, 0x18, 0x2d, 0xe5, 0xb4, 0xb0, 0x58, 0x01,
0x6c, 0x36, 0x19, 0x5e, 0x57, 0x5c, 0x58, 0x36, 0x85, 0xca, 0x54, 0x33, 0x0a, 0xf0, 0x85, 0xca, 0x47, 0x4c, 0xd4, 0x2c, 0x34, 0x58, 0xae, 0x4c, 0xb4, 0x06, 0x2c, 0x58, 0x0b, 0x0f, 0x06, 0x73,
0x05, 0x71, 0x6c, 0xf0, 0x3a, 0xc7, 0xb7, 0xdc, 0x2f, 0xd0, 0xb6, 0x09, 0x6e, 0x9c, 0x71, 0x10, 0x38, 0x52, 0x52, 0x51, 0x01, 0x73, 0x18, 0xd0, 0x0b, 0x79, 0x06, 0x2c, 0x4a, 0x18, 0xd0, 0xae,
0x0f, 0x2f, 0x1a, 0x58, 0x56, 0xdc, 0x29, 0x55, 0x56, 0xdc, 0x29, 0x5a, 0xad, 0x36, 0x29, 0x81, 0x00, 0x0b, 0x34, 0x4a, 0x18, 0xd0, 0x80, 0x2b, 0x28, 0x69, 0x4c, 0x7f, 0x0a, 0x0f, 0x97, 0x30,
0x7c, 0xdc, 0x29, 0x5c, 0x8b, 0xdc, 0x3a, 0xd0, 0x54, 0x09, 0xdc, 0x3a, 0xd0, 0x74, 0x8b, 0xf0, 0x4c, 0x7f, 0x05, 0x73, 0x34, 0x30, 0x4c, 0x7f, 0x5a, 0x28, 0xdc, 0x38, 0x4c, 0x09, 0x54, 0x58,
0x29, 0xb6, 0x0a, 0xf0, 0x21, 0xca, 0x74, 0x76, 0xf7, 0xa2, 0x09, 0x62, 0xea, 0xa2, 0x01, 0x57, 0x4c, 0x98, 0x73, 0x10, 0x0f, 0x2a, 0xf8, 0xb0, 0x58, 0xd0, 0x92, 0x6f, 0x58, 0xd0, 0x92, 0xb0,
0x6f, 0x29, 0x1b, 0x08, 0x62, 0x71, 0x29, 0x1b, 0x64, 0x20, 0x29, 0x2f, 0x08, 0x20, 0x29, 0x1b, 0xb4, 0x18, 0xd4, 0x2c, 0x6f, 0x30, 0xd0, 0x92, 0x40, 0x5b, 0xdc, 0x38, 0xd0, 0x0a, 0x54, 0xdc,
0x5e, 0xb4, 0x10, 0x10, 0x70, 0x97, 0x09, 0x0d, 0x2d, 0xa1, 0x02, 0x25, 0x07, 0x2a, 0x7d, 0x70, 0x38, 0xd0, 0x02, 0x49, 0x68, 0xe7, 0x09, 0x41, 0xf0, 0x18, 0x7f, 0x57, 0x03, 0x00, 0x68, 0x4c,
0x07, 0x71, 0x84, 0x34, 0x03, 0x77, 0x59, 0x6e, 0x18, 0x59, 0x85, 0x63, 0x8b, 0x85, 0x7f, 0x0a, 0x09, 0x2c, 0x00, 0x68, 0x4c, 0x80, 0x6d, 0x68, 0x4c, 0x81, 0x2c, 0x68, 0x0f, 0xc5, 0x80, 0xeb,
0x21, 0x0a, 0x55, 0x85, 0x0c, 0x26, 0x21, 0x04, 0x7e, 0x85, 0xa4, 0x21, 0x7a, 0x96, 0x0c, 0x85, 0x92, 0x70, 0x81, 0xeb, 0x92, 0x18, 0x80, 0x73, 0x10, 0x10, 0x50, 0x02, 0x09, 0x0d, 0x3d, 0x5c,
0x7f, 0x0a, 0x21, 0x0a, 0x55, 0x56, 0x18, 0x6c, 0x85, 0x63, 0x8b, 0x3a, 0x07, 0x71, 0x84, 0x34, 0x02, 0x19, 0x07, 0xc3, 0x31, 0x1a, 0xa7, 0x03, 0x65, 0x4d, 0x73, 0x06, 0x38, 0x91, 0x6f, 0x25,
0x03, 0x77, 0x7d, 0x70, 0x07, 0x2a, 0x7d, 0x25, 0x8a, 0x40, 0x78, 0x84, 0x10, 0x0c, 0x4a, 0xc2, 0x57, 0x05, 0x25, 0x5f, 0x5b, 0x38, 0xa7, 0x03, 0x65, 0x4d, 0x31, 0x1a, 0x07, 0xc3, 0x31, 0x19,
0xa1, 0x02, 0x00, 0xab, 0x8d, 0xb9, 0x04, 0x33, 0x0a, 0xb9, 0x8c, 0x5a, 0x31, 0x6e, 0x5f, 0xb9, 0x4d, 0x0d, 0x3d, 0x5c, 0x03, 0x10, 0x0c, 0x74, 0xc2, 0x5c, 0x44, 0x21, 0x4f, 0x99, 0x04, 0x97,
0x8c, 0x5a, 0xb9, 0x03, 0x8e, 0x0a, 0xab, 0x8d, 0x2c, 0xc2, 0x0d, 0x67, 0x46, 0x1a, 0x9e, 0x10, 0x99, 0x56, 0x28, 0x99, 0x51, 0x99, 0x56, 0x28, 0x99, 0x03, 0x0c, 0x41, 0x21, 0x4f, 0x1a, 0xc0,
0x10, 0x70, 0x97, 0x09, 0x40, 0x78, 0x84, 0x25, 0x07, 0x2a, 0x7d, 0x70, 0x07, 0x71, 0x84, 0x34, 0x61, 0x0a, 0x3a, 0x92, 0x2e, 0x84, 0x10, 0x10, 0x50, 0x02, 0x09, 0x0d, 0x3d, 0x5c, 0x03, 0x19,
0x03, 0x77, 0x7d, 0x6e, 0x18, 0x59, 0x85, 0x63, 0x8b, 0x85, 0x7f, 0x0a, 0x21, 0x0a, 0x55, 0x85, 0x07, 0xc3, 0x31, 0x1a, 0xa7, 0x03, 0x65, 0x4d, 0x31, 0x38, 0x91, 0x53, 0x58, 0x57, 0x05, 0x25,
0x0c, 0x26, 0x21, 0x04, 0x7e, 0x85, 0xa4, 0x21, 0x7a, 0x96, 0x0c, 0x85, 0x7f, 0x0a, 0x21, 0x0a, 0x06, 0xb0, 0x38, 0xa7, 0x03, 0x01, 0x43, 0x8c, 0x34, 0x1a, 0x07, 0xc3, 0x28, 0x05, 0x19, 0x02,
0x7d, 0x56, 0x18, 0x6c, 0x85, 0x63, 0x58, 0x3a, 0x07, 0x71, 0x84, 0x34, 0x03, 0x77, 0x6c, 0x70, 0x09, 0x0d, 0x0e, 0x73, 0x2b, 0x63, 0x0a, 0x67, 0xa0, 0xad, 0x63, 0x40, 0x34, 0x10, 0x0e, 0x9b,
0x07, 0x2a, 0x82, 0x2c, 0x37, 0x09, 0x40, 0x20, 0x03, 0x45, 0x54, 0xa6, 0xaf, 0x09, 0xac, 0x6c, 0x28, 0x5e, 0x37, 0xc3, 0xa6, 0x99, 0x7a, 0x67, 0x99, 0x00, 0x57, 0x99, 0x00, 0x7b, 0x99, 0x7a,
0x10, 0x0e, 0x1f, 0x5a, 0x0a, 0x04, 0x00, 0xab, 0x26, 0xb9, 0x03, 0x0b, 0x7e, 0xb9, 0x37, 0x71, 0x41, 0x21, 0x0b, 0x01, 0x2f, 0xc2, 0x28, 0x03, 0x23, 0x7f, 0x02, 0x0a, 0x61, 0x01, 0x99, 0x00,
0xb9, 0x37, 0x5a, 0xb9, 0x03, 0x81, 0x0a, 0xab, 0x0b, 0x01, 0x2c, 0xc2, 0x5a, 0x03, 0x00, 0x31, 0x0c, 0x53, 0x92, 0x70, 0x04, 0x28, 0x99, 0x30, 0x0c, 0x79, 0x00, 0x92, 0x18, 0x05, 0x61, 0x3e,
0x37, 0x54, 0x48, 0x43, 0x1b, 0x0c, 0x7d, 0x31, 0x6e, 0x04, 0x5a, 0x31, 0x1b, 0x0c, 0x59, 0x43, 0x58, 0x0d, 0x34, 0x00, 0x92, 0x25, 0x06, 0x67, 0x10, 0x0d, 0x25, 0xa0, 0x09, 0xb2, 0x0c, 0x09,
0x2f, 0x3e, 0x0d, 0x43, 0x85, 0x0d, 0x6c, 0x29, 0x85, 0x06, 0x7e, 0x10, 0x0d, 0x4a, 0x5e, 0x09, 0x03, 0x19, 0x62, 0x8b, 0x23, 0x0a, 0x61, 0x04, 0x69, 0x02, 0x06, 0x0c, 0x2f, 0x5a, 0x2b, 0x63,
0x0d, 0x5a, 0x69, 0x03, 0x25, 0x6b, 0x2a, 0x25, 0x54, 0x0d, 0x04, 0x34, 0x03, 0x7b, 0x00, 0x4e, 0x47, 0xa9, 0x0b, 0x54, 0x01, 0x1f, 0x04, 0x73, 0x67, 0x09, 0x6c, 0x1d, 0x7a, 0x4b, 0x28, 0x07,
0x03, 0x45, 0xa4, 0x3a, 0x51, 0x09, 0x01, 0x35, 0x6f, 0x7e, 0x09, 0x05, 0x01, 0x23, 0x8c, 0x0b, 0x24, 0x01, 0x04, 0x7e, 0x73, 0x06, 0x63, 0x07, 0x67, 0x1f, 0x51, 0x1f, 0x56, 0x28, 0x2f, 0x55,
0x20, 0x5a, 0x07, 0x87, 0x79, 0x07, 0x8e, 0x59, 0x45, 0x68, 0xa6, 0x5f, 0xac, 0x0e, 0x2c, 0x0d, 0x03, 0x69, 0x6b, 0x97, 0xab, 0x0d, 0x02, 0x2f, 0x77, 0x8e, 0x28, 0x72, 0x01, 0x10, 0x0c, 0x2a,
0x08, 0x04, 0x02, 0x00, 0x66, 0x33, 0x0a, 0x43, 0x3f, 0x0d, 0x02, 0x70, 0x37, 0x07, 0x0b, 0x0d, 0x29, 0x18, 0x92, 0x8a, 0x8a, 0x10, 0x0f, 0x37, 0x99, 0x98, 0x4c, 0x98, 0x4c, 0x98, 0x52, 0x18,
0x5a, 0x0c, 0x42, 0x10, 0x0c, 0x32, 0x4b, 0x1a, 0x9e, 0xa0, 0x10, 0x0f, 0x50, 0x9c, 0x9c, 0x9c, 0x01, 0x28, 0x1a, 0x0d, 0x2b, 0x70, 0x56, 0x61, 0x1a, 0x0a, 0x6f, 0x70, 0x81, 0x41, 0x1a, 0x04,
0x0f, 0x53, 0x2f, 0x7a, 0x70, 0x33, 0x03, 0x2f, 0x5c, 0x0d, 0x70, 0x0a, 0x55, 0x2f, 0x7f, 0x0a, 0x31, 0x44, 0x02, 0x07, 0xa6, 0x1a, 0x81, 0xc3, 0x6f, 0x37, 0x05, 0x0b, 0x0e, 0x28, 0x78, 0x10,
0x70, 0x88, 0x7d, 0x02, 0x37, 0x68, 0x26, 0x2c, 0x08, 0x3f, 0x55, 0x23, 0x73, 0xb7, 0x3b, 0x10, 0x0e, 0x2a, 0x0c, 0x34, 0x38, 0x05, 0x67, 0x38, 0x07, 0x41, 0x38, 0x0a, 0x53, 0x70, 0x02, 0x52,
0x0e, 0x32, 0x0c, 0x6c, 0x3a, 0x05, 0x7e, 0x3a, 0x68, 0x0a, 0x3a, 0x0a, 0x7d, 0x6e, 0x18, 0x53, 0x70, 0x51, 0x02, 0x23, 0x0b, 0x79, 0x70, 0x06, 0x2c, 0x1a, 0x06, 0x2c, 0x18, 0x0b, 0x79, 0x23,
0x2f, 0x5f, 0x02, 0x21, 0xb8, 0x2f, 0x06, 0x62, 0x70, 0x06, 0x62, 0x2f, 0xb8, 0x70, 0x64, 0x8b, 0x80, 0x5b, 0x58, 0x02, 0xb0, 0x2f, 0x0a, 0x53, 0x07, 0x41, 0x19, 0x04, 0x61, 0x58, 0x0d, 0x6d,
0x6e, 0x74, 0x58, 0x2c, 0x0a, 0x7d, 0x6e, 0x68, 0x0a, 0x25, 0x88, 0x0d, 0x6e, 0x0d, 0x26, 0x56, 0x19, 0x5a, 0x2b, 0x56, 0x28, 0x1d, 0x09, 0x6f, 0x81, 0x54, 0x37, 0x56, 0x28, 0x5a, 0x2b, 0x24,
0x4e, 0x03, 0x8c, 0x5a, 0xa7, 0x03, 0x5a, 0x00, 0x57, 0x03, 0x87, 0x33, 0x7f, 0x0d, 0x65, 0x07, 0x0d, 0x6f, 0x61, 0x3b, 0x66, 0x53, 0x37, 0x57, 0x5b, 0x1f, 0x0b, 0x67, 0x10, 0x14, 0x74, 0x4e,
0x71, 0x7d, 0x87, 0x37, 0x71, 0x8b, 0x35, 0x0b, 0x7e, 0x10, 0x14, 0x4a, 0x0d, 0x8b, 0x1b, 0x54, 0x3a, 0x2d, 0x0b, 0x58, 0x56, 0x61, 0x30, 0x0a, 0x79, 0x58, 0x47, 0x28, 0x70, 0x06, 0x41, 0x30,
0x62, 0x1b, 0x5c, 0x0d, 0x56, 0x0a, 0x59, 0x1b, 0x57, 0x5a, 0x1b, 0x63, 0x0a, 0x56, 0x63, 0x0a, 0x06, 0x41, 0x58, 0x02, 0x61, 0x0d, 0x2b, 0x58, 0x0a, 0x79, 0x56, 0x61, 0x58, 0x06, 0x41, 0x0a,
0x6e, 0x74, 0x0d, 0x33, 0x03, 0x6e, 0x0a, 0x59, 0x56, 0x5c, 0x0d, 0x6e, 0x63, 0x0a, 0x0a, 0x59, 0x79, 0x30, 0x0d, 0x5b, 0x58, 0x47, 0x44, 0x33, 0x06, 0x06, 0x41, 0x30, 0x7b, 0x70, 0x0a, 0x34,
0x6e, 0x0d, 0x8b, 0x6e, 0x0e, 0x8b, 0xb6, 0x06, 0x63, 0x0a, 0x00, 0x37, 0x5a, 0x1b, 0x0a, 0x6c, 0x30, 0x0d, 0x2b, 0x03, 0x61, 0x30, 0x06, 0x41, 0x70, 0x07, 0x54, 0x00, 0x01, 0x28, 0x30, 0x47,
0x56, 0x33, 0x03, 0x5c, 0x0d, 0x56, 0x63, 0x0a, 0x1b, 0x68, 0x09, 0x00, 0x7a, 0x56, 0x0e, 0x8b, 0x44, 0x09, 0x53, 0x56, 0x67, 0x00, 0xae, 0x30, 0x0b, 0x34, 0x00, 0x0d, 0x2b, 0x18, 0x47, 0x01,
0x00, 0x09, 0x7d, 0x6e, 0x8c, 0x7e, 0x00, 0x05, 0x62, 0x56, 0x0b, 0x6c, 0x00, 0x33, 0x03, 0x2f, 0x45, 0x07, 0x30, 0x07, 0x54, 0x01, 0x28, 0x25, 0x0b, 0x34, 0x0c, 0x6d, 0x30, 0x04, 0x67, 0xae,
0xa4, 0x08, 0x7d, 0x56, 0x68, 0x09, 0x7a, 0x85, 0x81, 0x86, 0x26, 0x56, 0x88, 0x4d, 0x62, 0x85, 0x25, 0x45, 0x8c, 0xaf, 0x51, 0x8c, 0x07, 0x25, 0x04, 0x28, 0x67, 0x70, 0x0c, 0x0f, 0xa6, 0x18,
0x7f, 0x77, 0x53, 0x56, 0x5f, 0x09, 0x7d, 0x85, 0x04, 0x5a, 0x7e, 0x1b, 0x0c, 0x71, 0x26, 0x85, 0x51, 0x6f, 0x70, 0x45, 0x52, 0x38, 0x0c, 0x0f, 0x34, 0x70, 0x05, 0x0f, 0x67, 0x38, 0x81, 0x52,
0x5f, 0x55, 0x1b, 0x08, 0x71, 0x53, 0x3a, 0x8e, 0x6c, 0x1b, 0x3e, 0x7e, 0x21, 0x7f, 0x53, 0x18, 0x70, 0x57, 0x08, 0x10, 0x0e, 0x1e, 0x0b, 0x41, 0x18, 0x0b, 0x41, 0x1a, 0x02, 0xa6, 0x58, 0x05,
0x55, 0x10, 0x0e, 0x27, 0x51, 0x0a, 0x2f, 0x81, 0x0a, 0x2f, 0x18, 0x26, 0x6e, 0x3e, 0x8d, 0x2c, 0xb0, 0x1a, 0x81, 0x67, 0x30, 0x80, 0x79, 0x2f, 0x80, 0x79, 0x0a, 0x2c, 0x1d, 0x06, 0x28, 0x05,
0x08, 0x7e, 0x56, 0x64, 0x59, 0x25, 0x64, 0x59, 0x00, 0x0a, 0x62, 0x27, 0x06, 0x5a, 0x3e, 0x8b, 0x49, 0x37, 0x0c, 0x0f, 0x31, 0x3b, 0x04, 0x0f, 0x67, 0x1f, 0x40, 0x2c, 0x1f, 0x0c, 0x0f, 0xa6,
0x87, 0x0c, 0x71, 0x7d, 0x65, 0x88, 0x7e, 0x35, 0x5c, 0x62, 0x35, 0x0c, 0x71, 0x26, 0x87, 0x68, 0x24, 0x07, 0x0f, 0x5c, 0x67, 0x1d, 0x02, 0xa6, 0x01, 0x4e, 0x06, 0x37, 0x0b, 0x41, 0x30, 0x06,
0xa1, 0x7e, 0x70, 0x18, 0x26, 0xaf, 0x06, 0x56, 0x51, 0x0a, 0x56, 0x63, 0x58, 0x2c, 0x06, 0x5a, 0xb0, 0x2f, 0x06, 0xb0, 0x58, 0x0c, 0x6f, 0x1a, 0x62, 0x79, 0x58, 0x40, 0x5b, 0x23, 0x0a, 0x2c,
0xad, 0x0c, 0x55, 0x70, 0x6b, 0x59, 0x1b, 0x5c, 0x8b, 0x21, 0x0a, 0x62, 0x85, 0x0a, 0x62, 0x10, 0x25, 0x0a, 0x2c, 0x10, 0x0c, 0x2a, 0x0a, 0x41, 0x25, 0x0a, 0x41, 0x23, 0x62, 0x34, 0x70, 0x05,
0x0c, 0x32, 0x54, 0x0a, 0x85, 0x54, 0x0a, 0x21, 0x6b, 0x6c, 0x1b, 0x3e, 0x8d, 0x70, 0x63, 0x58, 0x0f, 0x4f, 0x1a, 0x06, 0xb0, 0x30, 0x80, 0x79, 0x2f, 0x0c, 0x54, 0x30, 0x09, 0x67, 0x37, 0x02,
0x56, 0x64, 0x59, 0x25, 0x8e, 0x09, 0xb6, 0x0c, 0x21, 0x18, 0x26, 0x88, 0x8b, 0x27, 0x7f, 0x0d, 0xa6, 0x04, 0x49, 0x2f, 0x81, 0x61, 0xa1, 0x3b, 0x4e, 0x61, 0x1f, 0x04, 0x0f, 0x2b, 0x1a, 0x92,
0x0d, 0x7d, 0x65, 0x0d, 0x71, 0x0d, 0x35, 0x6f, 0x03, 0x95, 0x24, 0x9e, 0x10, 0x0e, 0x39, 0xd4, 0x8a, 0x10, 0x0e, 0x2a, 0xe2, 0x35, 0x92, 0x35, 0x28, 0x1f, 0x06, 0xa6, 0x3b, 0x40, 0x79, 0x24,
0x3d, 0x21, 0x22, 0x5a, 0x35, 0x63, 0x26, 0x65, 0x5c, 0x59, 0x65, 0xaf, 0x0a, 0x85, 0x51, 0x6d, 0x01, 0x97, 0x1f, 0x0b, 0x67, 0x01, 0x3b, 0x45, 0x4f, 0x3b, 0x05, 0xa6, 0x3b, 0x62, 0x53, 0x37,
0x65, 0x7f, 0x8d, 0x65, 0x3e, 0x26, 0x65, 0x6b, 0x7d, 0x65, 0xaf, 0x0a, 0x35, 0x54, 0x48, 0x87, 0x01, 0x97, 0x1f, 0x0a, 0x61, 0x01, 0x3b, 0x07, 0x0f, 0x4f, 0x3b, 0x04, 0x0f, 0x34, 0x3b, 0x5a,
0x68, 0x8d, 0x65, 0x88, 0x6c, 0x35, 0x0e, 0x22, 0xc5, 0xd4, 0x3d, 0x10, 0x08, 0x1f, 0x35, 0xd3, 0x26, 0x5d, 0xc0, 0x35, 0x10, 0x08, 0x9b, 0x24, 0xc0, 0x1f, 0x84, 0x85, 0x8a, 0x73, 0x24, 0xc0,
0xb0, 0xa0, 0xa0, 0x71, 0x28, 0x10, 0x07, 0x32, 0x0d, 0x26, 0x45, 0x7f, 0x99, 0xaa, 0x4e, 0x03, 0x10, 0x07, 0x2a, 0x0d, 0x6d, 0x9e, 0x09, 0x9d, 0x63, 0x5a, 0x2b, 0x1f, 0x33, 0x07, 0x63, 0x05,
0x45, 0x09, 0x7d, 0x45, 0x05, 0x7e, 0xae, 0x53, 0x45, 0xb8, 0x45, 0x06, 0x62, 0xae, 0x53, 0x45, 0x67, 0x1f, 0x51, 0xa9, 0x0b, 0x79, 0x1f, 0x06, 0x2c, 0xa0, 0x52, 0x95, 0x00, 0x07, 0x54, 0x1f,
0x0c, 0x6c, 0x45, 0x68, 0x99, 0x03, 0x5a, 0x39, 0x0d, 0x26, 0x45, 0x08, 0x55, 0x45, 0xaa, 0x10, 0x56, 0x28, 0x2e, 0x0d, 0x6d, 0x9e, 0x08, 0x9d, 0x10, 0x08, 0x9b, 0x24, 0xc0, 0x22, 0x8a, 0x8a,
0x08, 0x1f, 0x28, 0xa0, 0xa0, 0x28, 0x28, 0x10, 0x11, 0x25, 0x97, 0x33, 0x0d, 0x02, 0x27, 0x8c, 0x24, 0xc0, 0x24, 0xc0, 0x10, 0x11, 0x30, 0x50, 0x02, 0x0d, 0x61, 0x02, 0x24, 0x59, 0x41, 0x28,
0x57, 0x0a, 0x5a, 0x03, 0x23, 0x04, 0x2d, 0x04, 0x00, 0x04, 0x2d, 0x04, 0x2c, 0x06, 0x7e, 0x02, 0x03, 0x37, 0x04, 0x3d, 0x04, 0x00, 0x04, 0x3d, 0x04, 0x2f, 0x06, 0x67, 0x02, 0x58, 0x02, 0x0c,
0x56, 0x37, 0x0c, 0x6c, 0x21, 0x68, 0x09, 0x3a, 0x09, 0x7d, 0x10, 0x0a, 0x1e, 0x1c, 0x1c, 0x22, 0x34, 0x23, 0x07, 0x54, 0x25, 0x33, 0x07, 0x10, 0x0a, 0x32, 0x32, 0x4a, 0x35, 0xab, 0x68, 0x0a,
0x2c, 0x22, 0x10, 0x0a, 0xb6, 0x06, 0x21, 0x51, 0x03, 0x35, 0x5e, 0x0c, 0x48, 0x35, 0x6b, 0x09, 0x00, 0x33, 0x06, 0x2e, 0xa3, 0xa0, 0x0c, 0x0d, 0xa9, 0x62, 0x0a, 0x10, 0x0c, 0x2f, 0x27, 0x04,
0x10, 0x0c, 0x56, 0x1d, 0x8a, 0x0d, 0x5a, 0x67, 0x27, 0x3f, 0x8d, 0x23, 0x3b, 0x02, 0x01, 0x03, 0x0a, 0xb2, 0x0a, 0x02, 0x1d, 0xc3, 0x4f, 0x37, 0x76, 0x65, 0x7a, 0x54, 0xa0, 0x61, 0x37, 0x04,
0x81, 0x09, 0xae, 0x0d, 0x23, 0x04, 0x0a, 0x0e, 0x30, 0x25, 0x3e, 0x2a, 0x25, 0x33, 0x09, 0x02, 0x9f, 0x36, 0x19, 0x05, 0x35, 0x19, 0xad, 0x44, 0x51, 0x19, 0x52, 0x58, 0x05, 0x73, 0x19, 0x0d,
0x00, 0x5e, 0xf7, 0x43, 0xad, 0x05, 0x71, 0x25, 0x33, 0x42, 0x66, 0xb4, 0x25, 0x07, 0x30, 0x44, 0x6f, 0x01, 0x6b, 0x0e, 0x73, 0x19, 0x07, 0x36, 0x54, 0x73, 0x37, 0x07, 0x4e, 0x71, 0x4a, 0x10,
0x23, 0x07, 0x33, 0x6a, 0x36, 0x10, 0x0d, 0xa3, 0x00, 0x07, 0x33, 0xa5, 0x33, 0x6a, 0x10, 0x0b, 0x0d, 0xa5, 0x07, 0xa8, 0x86, 0x34, 0x8f, 0xa8, 0x10, 0x0b, 0x2f, 0x27, 0x56, 0x0a, 0xb2, 0x76,
0x56, 0x1d, 0x8c, 0x0a, 0x33, 0x0d, 0x0a, 0x04, 0x23, 0x07, 0x2a, 0x25, 0x6f, 0x0a, 0x03, 0x72, 0x37, 0x66, 0x26, 0x19, 0x04, 0x0f, 0x41, 0x03, 0x65, 0x46, 0x19, 0x0a, 0x54, 0x1f, 0x5a, 0x2b,
0x73, 0x25, 0x54, 0x99, 0x57, 0x03, 0x95, 0x01, 0x3a, 0x4e, 0x03, 0x45, 0x54, 0x99, 0x6f, 0x0a, 0x63, 0x52, 0x1f, 0x5a, 0x2b, 0x63, 0x0a, 0x54, 0x63, 0x04, 0x0f, 0x41, 0x03, 0x65, 0x46, 0x37,
0x03, 0x72, 0x73, 0x23, 0x07, 0x2a, 0x27, 0x04, 0x0a, 0x57, 0x0d, 0x0a, 0x03, 0x10, 0x0d, 0x23, 0x66, 0x26, 0x1d, 0x04, 0x9f, 0x0e, 0x5e, 0x10, 0x0d, 0x37, 0x85, 0x37, 0x07, 0x4e, 0x87, 0x64,
0x9e, 0x23, 0x9d, 0x7d, 0x34, 0x93, 0x36, 0x10, 0x0c, 0x6e, 0x1d, 0x04, 0x0b, 0x57, 0x0d, 0x42, 0x4a, 0x10, 0x0c, 0x19, 0x27, 0x46, 0x0e, 0xa4, 0x2f, 0x81, 0x26, 0x67, 0x01, 0x2f, 0x04, 0x61,
0x23, 0x08, 0x3f, 0x6d, 0x2c, 0x88, 0x52, 0x34, 0x03, 0x0c, 0x55, 0x2c, 0x0a, 0x26, 0x18, 0x0d, 0x6c, 0x43, 0x0c, 0x6f, 0x2f, 0x0a, 0x6d, 0x70, 0x02, 0x61, 0x2f, 0x47, 0x35, 0xab, 0x68, 0x5a,
0x4e, 0x3c, 0x70, 0x22, 0x4e, 0x02, 0x45, 0x0a, 0x55, 0x45, 0x6f, 0x84, 0x34, 0x03, 0x06, 0x0c, 0x5b, 0x63, 0x0a, 0x6f, 0x63, 0x04, 0x0f, 0x54, 0x03, 0x69, 0x02, 0x06, 0x0c, 0x19, 0x07, 0x35,
0x25, 0x68, 0x2a, 0x25, 0x8c, 0x0a, 0x0d, 0x5a, 0x69, 0x03, 0x10, 0x07, 0x00, 0x50, 0x2b, 0x71, 0x19, 0x56, 0x0a, 0xb2, 0x72, 0x03, 0x10, 0x07, 0x1e, 0x81, 0x0d, 0x73, 0x24, 0x81, 0x36, 0x3b,
0x65, 0x08, 0x38, 0x65, 0x0d, 0x6c, 0x95, 0x28, 0xcb, 0xab, 0xb0, 0x1a, 0xa0, 0x10, 0x0d, 0x6e, 0x0d, 0x34, 0x1a, 0x92, 0x24, 0xc0, 0xcb, 0x21, 0x3b, 0x84, 0x85, 0x10, 0x0d, 0x19, 0x27, 0xb1,
0x1d, 0x08, 0x33, 0x6a, 0xea, 0x51, 0x38, 0x44, 0x2c, 0x05, 0x5a, 0x06, 0x34, 0x06, 0x20, 0x51, 0x71, 0x4a, 0x19, 0x0b, 0x36, 0x54, 0x73, 0x2f, 0x05, 0x28, 0x06, 0x65, 0x06, 0x4b, 0x2f, 0x0b,
0x07, 0x1b, 0x07, 0x71, 0x4e, 0x02, 0x18, 0x0f, 0x43, 0x2f, 0x5f, 0x4e, 0x02, 0x18, 0x0f, 0x51, 0x53, 0x00, 0x66, 0x2f, 0x47, 0x3a, 0x57, 0x3e, 0x30, 0x39, 0x66, 0x2f, 0x06, 0x28, 0x06, 0x65,
0x07, 0x1b, 0x07, 0x71, 0x2c, 0x06, 0x5a, 0x06, 0x34, 0x06, 0xb4, 0x25, 0x0b, 0x30, 0x0a, 0x71, 0x06, 0x0e, 0x73, 0x19, 0x0b, 0x26, 0x2d, 0x37, 0xb1, 0x71, 0x7b, 0x63, 0x07, 0x2c, 0x19, 0x78,
0x23, 0x08, 0x33, 0x6a, 0x02, 0x5a, 0x45, 0x07, 0x62, 0x25, 0x3b, 0x02, 0x72, 0x7f, 0x6c, 0xab, 0x02, 0x01, 0x02, 0x45, 0x34, 0x21, 0x0a, 0x37, 0x04, 0x0a, 0xb2, 0x6e, 0x10, 0x0d, 0xa5, 0x07,
0x0a, 0x23, 0x04, 0x0a, 0x0d, 0x5a, 0x61, 0x10, 0x0d, 0xa3, 0x00, 0x07, 0x9f, 0x94, 0x94, 0x94, 0x8d, 0x93, 0x1c, 0x1c, 0x10, 0x06, 0x18, 0x22, 0x2e, 0x20, 0x84, 0x8a, 0x10, 0x06, 0x18, 0x22,
0x10, 0x06, 0x50, 0xa8, 0x9e, 0xa0, 0x10, 0x06, 0x50, 0xa8, 0x9e, 0xa0, 0x45, 0x7a, 0xb5, 0x0c, 0x2e, 0x20, 0x84, 0x8a, 0xa0, 0x28, 0x1f, 0x01, 0x07, 0x67, 0x37, 0xd4, 0x31, 0x1f, 0x28, 0x08,
0x00, 0xb0, 0x7d, 0x35, 0x5a, 0x08, 0x10, 0x0c, 0xa3, 0x1b, 0x54, 0x59, 0x21, 0xd0, 0x5e, 0x0c, 0x10, 0x0c, 0xa5, 0x58, 0x2d, 0x06, 0x25, 0x7f, 0x01, 0x0c, 0x28, 0x04, 0x58, 0x92, 0x56, 0x0d,
0x5a, 0x04, 0x31, 0x03, 0x33, 0x0d, 0x03, 0x46, 0x04, 0x57, 0x6d, 0x25, 0xc0, 0x0a, 0x23, 0xbc, 0x61, 0x03, 0x37, 0xa6, 0x0e, 0x67, 0x01, 0x2f, 0xbc, 0x41, 0x37, 0xbc, 0x34, 0x38, 0x92, 0x8c,
0x6c, 0xb0, 0x77, 0x6c, 0x9b, 0x77, 0x59, 0x00, 0x46, 0xb6, 0x59, 0x00, 0x31, 0xb6, 0x7d, 0x2c, 0x34, 0x25, 0x92, 0x33, 0x79, 0x2f, 0xd0, 0x33, 0x79, 0x99, 0x09, 0x31, 0x99, 0x33, 0x53, 0x10,
0xca, 0xb6, 0x7d, 0x10, 0x14, 0x1d, 0xb1, 0x33, 0x4d, 0x56, 0x07, 0x33, 0x52, 0x56, 0xdc, 0x09, 0x14, 0x23, 0x27, 0xd0, 0x07, 0x0d, 0x67, 0x05, 0x30, 0x07, 0x4e, 0x7d, 0x00, 0xd4, 0x54, 0x36,
0x30, 0x03, 0x0a, 0x38, 0x76, 0xdc, 0x82, 0x72, 0x0b, 0x5a, 0x82, 0x72, 0x81, 0x0a, 0xd4, 0x6c, 0x2b, 0x0a, 0x36, 0x2b, 0xd4, 0x28, 0x6c, 0x3f, 0x0f, 0x3d, 0x6c, 0x3f, 0x41, 0xd4, 0x34, 0x58,
0x6e, 0x5c, 0x6c, 0x6e, 0x5c, 0x0d, 0xd4, 0x53, 0xd4, 0x53, 0xd4, 0xc5, 0x92, 0x1b, 0x92, 0x1b, 0x40, 0x34, 0x30, 0x56, 0x61, 0x70, 0x52, 0x70, 0x52, 0xb4, 0xb4, 0x18, 0x90, 0x90, 0x90, 0x90,
0x92, 0x1b, 0x92, 0x1b, 0x92, 0x1b, 0x92, 0x10, 0x0d, 0x1d, 0xb1, 0x9f, 0x94, 0x94, 0x94, 0x10, 0x90, 0x1c, 0x10, 0x0d, 0x23, 0x27, 0xd0, 0x07, 0x8d, 0x93, 0x1c, 0x1c, 0x10, 0x0c, 0x19, 0x27,
0x0c, 0x6e, 0x1d, 0x06, 0x0c, 0x2d, 0x61, 0x27, 0x0a, 0x3f, 0x0a, 0x25, 0x3e, 0x7d, 0x34, 0x68, 0x06, 0x0c, 0x3d, 0x6e, 0x1d, 0x0a, 0x26, 0x41, 0x19, 0x05, 0x31, 0x65, 0x66, 0x05, 0x2f, 0x0b,
0x6c, 0x51, 0x07, 0x1b, 0x08, 0x62, 0x4e, 0x02, 0x18, 0x0e, 0x43, 0x2f, 0x5f, 0x4e, 0x02, 0x18, 0x53, 0x81, 0x2c, 0x2f, 0x47, 0x3a, 0x7b, 0x3e, 0x00, 0x51, 0x2f, 0x47, 0x3a, 0x7b, 0x2f, 0x0b,
0x0e, 0x51, 0x07, 0x1b, 0x08, 0x62, 0x2c, 0x3e, 0x7d, 0x34, 0x68, 0x6c, 0x25, 0x0a, 0x3f, 0x0a, 0x53, 0x81, 0x2c, 0x2f, 0x05, 0x31, 0x65, 0x66, 0x05, 0x19, 0x0a, 0x26, 0x41, 0x1d, 0x06, 0x0c,
0x27, 0x06, 0x0c, 0x2d, 0x61, 0x10, 0x0d, 0x1d, 0xb1, 0x33, 0xa5, 0x33, 0x6a, 0x46, 0x91, 0x10, 0x3d, 0x6e, 0x10, 0x0d, 0x23, 0x27, 0xd0, 0x07, 0xa8, 0x86, 0x34, 0x8f, 0xa8, 0x00, 0x1b, 0x22,
0x0d, 0x6e, 0x1d, 0x9d, 0x7d, 0x34, 0x93, 0x36, 0x9e, 0x10, 0x08, 0x1d, 0xf8, 0x53, 0x09, 0x0e, 0x10, 0x0d, 0x19, 0x27, 0x07, 0x4e, 0x87, 0x64, 0x00, 0x84, 0x10, 0x08, 0x2f, 0x27, 0x52, 0x09,
0xf5, 0x46, 0x0a, 0xcb, 0x46, 0x82, 0x01, 0xb0, 0x06, 0x95, 0x02, 0x95, 0x1a, 0x9e, 0x10, 0x0a, 0x47, 0x25, 0x92, 0x94, 0x2f, 0xd4, 0x28, 0x6c, 0x38, 0x92, 0x06, 0x63, 0x49, 0x2f, 0x9a, 0x85,
0x56, 0x1d, 0x73, 0x57, 0x0d, 0x0a, 0x03, 0x23, 0x08, 0x2a, 0x23, 0x0e, 0x55, 0x02, 0x37, 0x86, 0x10, 0x0a, 0x2f, 0x27, 0x05, 0x0b, 0x0e, 0x28, 0x5e, 0x37, 0x45, 0xc3, 0x19, 0x5a, 0x6f, 0x44,
0x23, 0x0e, 0x26, 0x65, 0xb6, 0x5a, 0x4f, 0x02, 0x87, 0x7b, 0x71, 0x5a, 0x04, 0x65, 0x66, 0x81, 0x01, 0x46, 0x19, 0x5a, 0x6d, 0x1f, 0x33, 0x28, 0x0b, 0x07, 0x02, 0x24, 0x7e, 0x73, 0x28, 0x04,
0xa6, 0x7a, 0x23, 0x61, 0x02, 0x5e, 0x08, 0x5a, 0x23, 0x3f, 0x7d, 0x23, 0x8a, 0x0d, 0x2d, 0x3b, 0x3b, 0x6b, 0x0b, 0x67, 0xa0, 0x28, 0x37, 0x78, 0x44, 0x01, 0x08, 0x28, 0x19, 0xc2, 0x31, 0x37,
0x10, 0x08, 0x1e, 0x91, 0x00, 0x28, 0xcb, 0xab, 0x9b, 0x95, 0x9e, 0x39, 0x0d, 0x59, 0x01, 0x35, 0x4d, 0xb2, 0x78, 0x10, 0x08, 0x20, 0xdc, 0x22, 0x25, 0x21, 0x1d, 0x8b, 0x99, 0x3b, 0x84, 0x2e,
0x09, 0x30, 0x27, 0x5e, 0x2b, 0x20, 0x10, 0x0d, 0x56, 0x1d, 0x94, 0x94, 0x94, 0xc7, 0x5e, 0xf7, 0x4e, 0x06, 0x01, 0x1f, 0x09, 0x26, 0x24, 0x01, 0xb1, 0x73, 0x10, 0x0d, 0x2f, 0x27, 0x1c, 0x1c,
0x4e, 0x03, 0x6e, 0x05, 0xf7, 0x51, 0x0b, 0x02, 0x66, 0xb4, 0x25, 0x04, 0x30, 0x44, 0x23, 0x05, 0x1c, 0x1c, 0x1c, 0x1c, 0x4c, 0x51, 0x2f, 0x5a, 0x2b, 0x58, 0x05, 0x73, 0x19, 0x0b, 0x2c, 0x02,
0x33, 0x6a, 0x36, 0x10, 0x0b, 0x1d, 0x0c, 0x6c, 0x2f, 0x05, 0x7e, 0x70, 0x06, 0x62, 0x2f, 0xb8, 0x6b, 0x0e, 0x73, 0x19, 0x04, 0x36, 0x54, 0x73, 0x37, 0x05, 0x4e, 0x71, 0x4a, 0x10, 0x0b, 0x23,
0x70, 0x5f, 0x02, 0x6e, 0x74, 0x53, 0x2c, 0x0a, 0x7d, 0x6e, 0x68, 0x0a, 0x25, 0x88, 0x0d, 0x6e, 0x27, 0x0c, 0x34, 0x18, 0x05, 0x67, 0x1a, 0x06, 0x2c, 0x18, 0x0b, 0x79, 0x38, 0x51, 0x02, 0x58,
0x0d, 0x26, 0x23, 0x0d, 0x26, 0x00, 0xaa, 0x2f, 0x7f, 0x0a, 0x00, 0x0a, 0x7d, 0x23, 0x37, 0x5a, 0x02, 0x52, 0x2f, 0x0a, 0x53, 0x07, 0x41, 0x19, 0x04, 0x61, 0x58, 0x0d, 0x6d, 0x37, 0x0d, 0x6d,
0x6b, 0x8b, 0x87, 0x0b, 0x7e, 0x62, 0x65, 0x05, 0x71, 0x6c, 0x35, 0xb7, 0x10, 0x11, 0x00, 0x1d, 0x00, 0x04, 0x61, 0x37, 0x81, 0x41, 0x00, 0x0a, 0x53, 0x2f, 0x7b, 0x62, 0x5b, 0x24, 0x0b, 0x67,
0x33, 0x03, 0xdc, 0x0d, 0x6e, 0x5c, 0x0d, 0x2f, 0x09, 0x59, 0x00, 0x8c, 0x71, 0x8b, 0x56, 0x63, 0x2c, 0x3b, 0x05, 0x73, 0x34, 0x3b, 0x5a, 0x28, 0x10, 0x11, 0x1a, 0x27, 0x0d, 0x2b, 0xec, 0x61,
0x09, 0x2f, 0x3e, 0x0a, 0x56, 0x68, 0xb8, 0x56, 0x0a, 0x6c, 0x2f, 0x7a, 0x56, 0x54, 0x5c, 0x0a, 0x30, 0x56, 0x61, 0x70, 0x33, 0x06, 0x30, 0x40, 0x49, 0x06, 0x54, 0x18, 0x05, 0x41, 0x30, 0x07,
0x56, 0x0d, 0x53, 0x85, 0x0c, 0x8b, 0x00, 0x0e, 0x0c, 0x00, 0x0c, 0x0e, 0x5e, 0x7e, 0x3a, 0x08, 0x2c, 0x79, 0x00, 0x0a, 0x34, 0x18, 0x01, 0x28, 0x30, 0x0a, 0x2b, 0x41, 0x30, 0x4e, 0x01, 0x25,
0x59, 0x74, 0x7c, 0x7f, 0x03, 0x05, 0x55, 0x3a, 0x88, 0x2e, 0x26, 0x00, 0x04, 0x59, 0x08, 0x26, 0x0c, 0x5b, 0x5a, 0x0c, 0x00, 0x8e, 0x00, 0x01, 0x67, 0x38, 0x45, 0x06, 0x02, 0x6f, 0x81, 0x2b,
0x85, 0x5e, 0x0f, 0xa1, 0x53, 0x56, 0x0e, 0x0a, 0x0c, 0x53, 0x21, 0x0b, 0x5a, 0x0b, 0x6e, 0x0a, 0x05, 0x6f, 0x38, 0x04, 0x41, 0x05, 0x6d, 0x00, 0x04, 0x0f, 0x06, 0x08, 0x6d, 0x38, 0x01, 0x0f,
0x0e, 0x62, 0x70, 0x68, 0x7d, 0x6e, 0x63, 0x7d, 0x70, 0x5c, 0x76, 0x56, 0x74, 0x76, 0x10, 0x0b, 0x5c, 0xaf, 0x5a, 0x0a, 0x0c, 0xaf, 0x38, 0x0b, 0x28, 0x0b, 0x58, 0x9f, 0x0b, 0x1a, 0x07, 0x0f,
0x1d, 0x77, 0x0d, 0xad, 0xaf, 0x09, 0x51, 0x0b, 0x6e, 0x0b, 0x62, 0x25, 0xaf, 0x09, 0x00, 0x77, 0x53, 0x06, 0x31, 0x1a, 0x40, 0x2b, 0x58, 0x57, 0x03, 0x10, 0x0b, 0x38, 0x27, 0x33, 0x9c, 0x30,
0x48, 0x2c, 0x8c, 0x57, 0x54, 0x76, 0x27, 0x05, 0x71, 0x6c, 0x87, 0x5e, 0x57, 0x0d, 0x35, 0x0a, 0x01, 0xad, 0x2f, 0x0b, 0x2c, 0x58, 0x0b, 0x2c, 0x19, 0x01, 0xad, 0x33, 0x9c, 0x19, 0x59, 0x41,
0x71, 0x55, 0x87, 0x06, 0x5a, 0x63, 0x6c, 0x23, 0x5c, 0x6c, 0x00, 0x68, 0x8d, 0x2c, 0xaf, 0x09, 0x0f, 0x2b, 0x24, 0x05, 0x73, 0x34, 0x3b, 0x80, 0x61, 0x1f, 0x2d, 0x6f, 0x24, 0x06, 0x28, 0x5f,
0x6e, 0x0a, 0x7e, 0x2c, 0x09, 0x7e, 0x1b, 0xaf, 0x09, 0x10, 0x0b, 0x1d, 0x0c, 0x59, 0x2f, 0x06, 0x34, 0x37, 0x40, 0x34, 0x00, 0x07, 0x0f, 0x4f, 0x2f, 0x01, 0xad, 0x58, 0x0a, 0x67, 0x2f, 0x09,
0x7e, 0x70, 0x05, 0x7e, 0x2f, 0x0c, 0x6c, 0x4e, 0x04, 0x6e, 0xaa, 0x6e, 0x7f, 0x0a, 0x6e, 0x0b, 0x67, 0x70, 0x01, 0xad, 0x10, 0x0b, 0x23, 0x27, 0x0c, 0x79, 0x70, 0x06, 0x67, 0x1a, 0x05, 0x67,
0x7d, 0x25, 0x5f, 0x02, 0x00, 0x74, 0x53, 0x23, 0x54, 0x7c, 0x77, 0x09, 0x27, 0x5c, 0x58, 0x57, 0x18, 0x0c, 0x34, 0x1a, 0x5a, 0x6d, 0x58, 0x04, 0x61, 0x2f, 0x81, 0x41, 0x58, 0x0b, 0x53, 0x38,
0x03, 0x87, 0x0c, 0x7e, 0x62, 0x65, 0x06, 0x71, 0x6c, 0x85, 0x4e, 0x0d, 0x45, 0x0b, 0x7d, 0x35, 0x51, 0x44, 0x02, 0x52, 0x37, 0x0a, 0x6f, 0x33, 0x09, 0x37, 0x56, 0x28, 0x80, 0x2b, 0x24, 0x0c,
0x88, 0x58, 0x65, 0x06, 0x71, 0x09, 0x23, 0xbc, 0x8b, 0xb0, 0x0c, 0x04, 0x10, 0x0b, 0x1d, 0x36, 0x67, 0x2c, 0x3b, 0x06, 0x73, 0x34, 0x3b, 0x5a, 0x61, 0x63, 0x0b, 0x53, 0x1d, 0x04, 0xb0, 0x3b,
0x2a, 0xab, 0x5a, 0x35, 0x3e, 0x26, 0x65, 0x4c, 0x7d, 0x65, 0xaf, 0x0a, 0x85, 0x51, 0x48, 0x23, 0x5f, 0x54, 0x37, 0xbc, 0x5b, 0x19, 0xd4, 0x67, 0x04, 0x10, 0x0b, 0x27, 0xac, 0x21, 0x28, 0x1f,
0xb6, 0x8d, 0x65, 0x63, 0x6c, 0x65, 0x88, 0x55, 0x85, 0x4e, 0x2a, 0x41, 0x10, 0x0d, 0x00, 0x1e, 0x05, 0xa6, 0x3b, 0x59, 0x53, 0x37, 0x01, 0x97, 0x1f, 0x0b, 0x61, 0x01, 0x24, 0x33, 0x4f, 0x3b,
0x5e, 0x2b, 0x57, 0x65, 0x09, 0x38, 0x65, 0x0d, 0x7d, 0x01, 0x23, 0xd4, 0x53, 0x95, 0x1a, 0x45, 0x5f, 0x34, 0x3b, 0x04, 0x0f, 0x6f, 0x3b, 0x5a, 0x26, 0xcb, 0xac, 0x10, 0x0d, 0x2f, 0xa0, 0x08,
0x7a, 0x97, 0x09, 0x62, 0xb0, 0x7e, 0x02, 0xb0, 0x62, 0x02, 0x97, 0x0a, 0x62, 0x00, 0x97, 0x5a, 0x0d, 0x47, 0x3b, 0x09, 0x36, 0x3b, 0xa1, 0x01, 0x1f, 0x52, 0x37, 0x9a, 0xa0, 0x28, 0x1f, 0x02,
0x91, 0x01, 0x45, 0x0d, 0x7d, 0x01, 0x35, 0x09, 0x38, 0x87, 0x5e, 0x09, 0x0d, 0x71, 0x10, 0x07, 0x09, 0x2c, 0x38, 0x92, 0x67, 0x02, 0x38, 0x92, 0x2c, 0x02, 0x1f, 0x02, 0x0a, 0x2c, 0x63, 0x7b,
0x85, 0x24, 0x9e, 0xa0, 0xa0, 0x10, 0x0d, 0x32, 0xf8, 0x78, 0x42, 0x27, 0xc0, 0x09, 0xb5, 0x0d, 0x2f, 0x92, 0x22, 0xa9, 0xa1, 0x01, 0x1f, 0x09, 0x36, 0x3b, 0x01, 0x09, 0x0d, 0x73, 0x10, 0x07,
0x45, 0x5f, 0x24, 0x39, 0xa4, 0x3a, 0x51, 0x09, 0x02, 0x97, 0x0c, 0x20, 0x87, 0x37, 0x0b, 0x20, 0x25, 0x22, 0x8a, 0x8a, 0x8a, 0x10, 0x0d, 0x1e, 0x28, 0x64, 0x01, 0x37, 0xbc, 0x54, 0x1f, 0x01,
0x2f, 0x51, 0x67, 0x35, 0x0e, 0x8b, 0x95, 0x1a, 0x45, 0x5f, 0xb5, 0x0d, 0x27, 0xc0, 0x09, 0xb0, 0x07, 0x61, 0x1f, 0x51, 0x22, 0x2e, 0x47, 0xa9, 0x0b, 0x54, 0x02, 0x1f, 0x02, 0x0c, 0x4b, 0x3b,
0xa1, 0x01, 0x10, 0x11, 0x3a, 0x8f, 0x1d, 0x5e, 0x85, 0x5e, 0x7b, 0x5a, 0x69, 0x80, 0x37, 0x07, 0x3f, 0x4b, 0x3b, 0x0b, 0x41, 0x02, 0x3b, 0x5a, 0x5b, 0x37, 0x9a, 0x1f, 0x51, 0x1f, 0x01, 0x07,
0x0e, 0x3a, 0x0d, 0x3d, 0x0d, 0x6e, 0xd4, 0x84, 0x00, 0x79, 0x49, 0x57, 0x5d, 0x01, 0x85, 0x8c, 0x61, 0x37, 0xbc, 0x54, 0x38, 0x92, 0x5c, 0x01, 0x10, 0x11, 0x18, 0x20, 0x27, 0xa0, 0x38, 0x01,
0x10, 0x7e, 0x28, 0x72, 0x04, 0x69, 0x02, 0x07, 0x0e, 0x38, 0x0d, 0x73, 0x35, 0x61, 0x38, 0x54, 0x03,
0x00, 0x01, 0x04, 0x08, 0x0c, 0x47, 0x55, 0x01, 0x25, 0x56, 0x10,
}; };
static const gU16 mf_rlefont_DejaVuSans20_aa_glyph_offsets_0[95] PROGMEM = { static const gU16 mf_rlefont_DejaVuSans20_aa_glyph_offsets_0[95] = {
0x0000, 0x0003, 0x0012, 0x001f, 0x006a, 0x00b1, 0x0121, 0x017d, 0x0000, 0x0003, 0x0011, 0x0017, 0x0066, 0x00ad, 0x0120, 0x017c,
0x0180, 0x01b4, 0x01e2, 0x0204, 0x020d, 0x0214, 0x021b, 0x0221, 0x017f, 0x01ac, 0x01db, 0x0207, 0x0210, 0x0219, 0x0222, 0x0227,
0x0249, 0x0297, 0x02ab, 0x02e2, 0x031f, 0x034d, 0x0378, 0x03c3, 0x024f, 0x029c, 0x02af, 0x02e3, 0x031d, 0x034d, 0x0378, 0x03bb,
0x03e6, 0x043d, 0x0484, 0x0487, 0x048b, 0x04bf, 0x04cc, 0x0504, 0x03dc, 0x0436, 0x0481, 0x0489, 0x0495, 0x04c7, 0x04cb, 0x0501,
0x052d, 0x05c2, 0x0609, 0x0644, 0x0675, 0x06af, 0x06be, 0x06cd, 0x0527, 0x05c0, 0x060a, 0x0643, 0x067c, 0x06bc, 0x06cd, 0x06db,
0x070f, 0x071b, 0x0720, 0x0733, 0x076d, 0x0774, 0x07c0, 0x0803, 0x0722, 0x0733, 0x0739, 0x074f, 0x078c, 0x0795, 0x07e4, 0x0829,
0x084d, 0x0870, 0x08c1, 0x08fc, 0x0944, 0x094b, 0x0970, 0x09ba, 0x0856, 0x0877, 0x08ae, 0x08e9, 0x092e, 0x0936, 0x0960, 0x09ad,
0x0a42, 0x0a90, 0x0abd, 0x0aec, 0x0af6, 0x0b20, 0x0b28, 0x0b4b, 0x0a34, 0x0a84, 0x0ab2, 0x0ae5, 0x0af1, 0x0b19, 0x0b25, 0x0b48,
0x0b53, 0x0b61, 0x0b96, 0x0b9f, 0x0bce, 0x0bd8, 0x0c0b, 0x0c1e, 0x0b4f, 0x0b5c, 0x0b90, 0x0b99, 0x0bc8, 0x0bd2, 0x0c07, 0x0c1c,
0x0c68, 0x0c71, 0x0c77, 0x0c87, 0x071b, 0x0cb4, 0x0ce8, 0x0cf0, 0x0c5d, 0x0c65, 0x0c6d, 0x0c81, 0x0733, 0x0cb0, 0x0ce3, 0x0ced,
0x0d26, 0x0d30, 0x0d3a, 0x0d4f, 0x0d81, 0x0d97, 0x0db4, 0x0ded, 0x0d23, 0x0d31, 0x0d3b, 0x0d51, 0x0d84, 0x0d9b, 0x0dbe, 0x0df9,
0x0e4f, 0x0e8a, 0x0ecd, 0x0eed, 0x0f1f, 0x0f26, 0x0f53, 0x0e5a, 0x0e95, 0x0eda, 0x0efc, 0x0f2f, 0x0f36, 0x0f69,
}; };
static const struct mf_rlefont_char_range_s mf_rlefont_DejaVuSans20_aa_char_ranges[] = { static const struct mf_rlefont_char_range_s mf_rlefont_DejaVuSans20_aa_char_ranges[] = {
@ -357,8 +357,8 @@ const struct mf_rlefont_s mf_rlefont_DejaVuSans20_aa = {
4, /* version */ 4, /* version */
mf_rlefont_DejaVuSans20_aa_dictionary_data, mf_rlefont_DejaVuSans20_aa_dictionary_data,
mf_rlefont_DejaVuSans20_aa_dictionary_offsets, mf_rlefont_DejaVuSans20_aa_dictionary_offsets,
120, /* rle dict count */ 107, /* rle dict count */
162, /* total dict count */ 155, /* total dict count */
1, /* char range count */ 1, /* char range count */
mf_rlefont_DejaVuSans20_aa_char_ranges, mf_rlefont_DejaVuSans20_aa_char_ranges,
}; };
@ -375,4 +375,3 @@ static const struct mf_font_list_s mf_rlefont_DejaVuSans20_aa_listentry = {
/* End of automatically generated font definition for DejaVuSans20_aa. */ /* End of automatically generated font definition for DejaVuSans20_aa. */

View file

@ -11,186 +11,186 @@
#error The font file is not compatible with this version of mcufont. #error The font file is not compatible with this version of mcufont.
#endif #endif
static const gU8 mf_rlefont_DejaVuSans24_dictionary_data[415] PROGMEM = { static const gU8 mf_rlefont_DejaVuSans24_dictionary_data[395] = {
0x01, 0x81, 0x17, 0x81, 0x17, 0x81, 0x17, 0x15, 0x80, 0x15, 0x85, 0x81, 0x16, 0x02, 0x83, 0x40, 0x80, 0x0a, 0x80, 0x3d, 0x81, 0x02, 0x81, 0x81, 0x09, 0x81, 0x0c, 0x81, 0x09, 0x81, 0x0c, 0x81,
0x15, 0x83, 0x0d, 0x82, 0x11, 0x07, 0x81, 0x0e, 0x81, 0x88, 0x0b, 0x81, 0x0a, 0x81, 0x84, 0x11, 0x09, 0x81, 0x08, 0x16, 0x81, 0x01, 0x82, 0x0e, 0x84, 0x01, 0x07, 0x87, 0x01, 0x86, 0x0d, 0x85,
0x03, 0x81, 0x80, 0x0f, 0x80, 0x17, 0x16, 0x81, 0x02, 0x80, 0x01, 0x81, 0x17, 0x81, 0x14, 0x02, 0x80, 0x0c, 0x83, 0x0f, 0x89, 0x0f, 0x82, 0x07, 0x0b, 0x81, 0x09, 0x81, 0x0c, 0x13, 0x81, 0x16,
0x81, 0x0d, 0x81, 0x04, 0x81, 0x80, 0x06, 0x81, 0x0e, 0x0f, 0x89, 0x81, 0x13, 0x81, 0x80, 0x04, 0x80, 0x15, 0x04, 0x82, 0x0e, 0x0a, 0x80, 0x81, 0x0a, 0x80, 0x05, 0x82, 0x0a, 0x81, 0x0e, 0x81,
0x80, 0x08, 0x81, 0x0c, 0x81, 0x01, 0x05, 0x81, 0x01, 0x08, 0x81, 0x01, 0x0c, 0x87, 0x11, 0x01, 0x07, 0x81, 0x0d, 0x02, 0x82, 0x01, 0x0b, 0x81, 0x08, 0x81, 0x0d, 0x04, 0x85, 0x09, 0x80, 0x05,
0x81, 0x83, 0x02, 0x09, 0x03, 0x84, 0x80, 0x11, 0x12, 0x81, 0x05, 0x82, 0x0d, 0x0d, 0x0a, 0x81, 0x81, 0x45, 0x15, 0x83, 0x01, 0x81, 0x01, 0x82, 0x12, 0x10, 0x81, 0x83, 0x0c, 0x0d, 0x85, 0x02,
0x02, 0x86, 0x0c, 0x81, 0x08, 0x81, 0x0d, 0x81, 0x01, 0x0b, 0x81, 0x01, 0x8a, 0x0a, 0x82, 0x02, 0x81, 0x07, 0x06, 0x82, 0x82, 0x10, 0x85, 0x02, 0x80, 0x15, 0x82, 0x0e, 0x81, 0x0c, 0x81, 0x26,
0x01, 0x80, 0x01, 0x81, 0x0e, 0x0b, 0x80, 0x05, 0x81, 0x80, 0x02, 0x10, 0x80, 0x32, 0x80, 0x01, 0x0c, 0x07, 0x82, 0x0e, 0x82, 0x15, 0x81, 0x01, 0x16, 0x81, 0x17, 0x81, 0x01, 0x80, 0x0b, 0x84,
0x80, 0x08, 0x82, 0x80, 0x0d, 0x07, 0x04, 0x43, 0x81, 0x01, 0x1e, 0x1d, 0x03, 0x80, 0x08, 0x41, 0x12, 0x87, 0x10, 0x82, 0x08, 0x8b, 0x1d, 0x11, 0x1e, 0x80, 0x02, 0x0f, 0x04, 0x06, 0x81, 0x01,
0x19, 0xf0, 0x33, 0xc4, 0xca, 0xa4, 0x48, 0x4f, 0xc7, 0xb4, 0xc4, 0xc7, 0xb4, 0xc4, 0x32, 0x32, 0x12, 0x17, 0x0d, 0x82, 0x01, 0x80, 0x01, 0x17, 0x81, 0x15, 0x03, 0x41, 0x0e, 0x00, 0xbc, 0x56,
0x32, 0xfc, 0xa4, 0x47, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0x22, 0xf4, 0xb4, 0x1c, 0x18, 0x1c, 0x31, 0x31, 0x31, 0x31, 0x31, 0x37, 0x3d, 0x45, 0x47, 0x47, 0x47, 0x47, 0x47, 0x1d, 0x36, 0x2d,
0x18, 0xfc, 0xa3, 0x2f, 0xc4, 0x3f, 0x2d, 0xc5, 0x3f, 0x2e, 0x52, 0x54, 0x36, 0x23, 0xc5, 0x42, 0x2f, 0x44, 0x30, 0x2c, 0x18, 0x2c, 0x1b, 0x51, 0x1b, 0xd4, 0xc5, 0x2d, 0x25, 0x9c, 0x4a, 0x4a,
0x3d, 0x37, 0x22, 0x22, 0x22, 0x22, 0x00, 0xa4, 0xc4, 0x4a, 0xc7, 0x3c, 0x1a, 0x50, 0xb7, 0x56, 0x3b, 0x29, 0x36, 0xc7, 0x27, 0x47, 0x47, 0x47, 0x5a, 0x27, 0x47, 0x37, 0x1f, 0x2e, 0x31, 0xeb,
0xaa, 0x31, 0x9d, 0x00, 0x30, 0xd0, 0x21, 0xca, 0x46, 0x47, 0x29, 0x38, 0x2f, 0x47, 0xbc, 0x48, 0xa4, 0x23, 0xc0, 0x2a, 0x36, 0x22, 0x50, 0x1a, 0x1d, 0x27, 0xd0, 0x54, 0x1a, 0x4d, 0x31, 0x00,
0xc5, 0x4d, 0x4d, 0x24, 0x44, 0x4f, 0xd2, 0x32, 0x32, 0x32, 0x32, 0x32, 0x32, 0x4d, 0x44, 0x34, 0xc7, 0x9c, 0x43, 0x3c, 0x2e, 0x37, 0x1f, 0x2e, 0x00, 0xc7, 0x9c, 0x45, 0x47, 0x29, 0xca, 0x54,
0x39, 0xc7, 0x4d, 0x4d, 0x47, 0xd2, 0x3d, 0x37, 0x36, 0x1b, 0x1c, 0x18, 0x22, 0x00, 0xa4, 0x27, 0x00, 0x9c, 0x4a, 0x41, 0x33, 0x48, 0x53, 0x47, 0x47, 0x47, 0x2c, 0x48, 0x2c, 0x48, 0xb4, 0xc4,
0x56, 0xc7, 0x42, 0x3d, 0x92, 0x1d, 0x2f, 0x4a, 0x38, 0x1c, 0xd0, 0x29, 0x28, 0xea, 0xa4, 0x4f, 0x90, 0x34, 0x34, 0xc4, 0x3c, 0xc7, 0x90, 0x5a, 0x3b, 0x3a, 0xdc, 0x53, 0x47, 0x46, 0x40, 0x44,
0xa0, 0x1f, 0x4d, 0x1c, 0x2b, 0xd0, 0x92, 0x4a, 0xb5, 0x3b, 0x2d, 0x4e, 0x26, 0x3d, 0xd0, 0xc4, 0x1c, 0x4a, 0xc7, 0xa2, 0x9c, 0x9c, 0x52, 0x3a, 0x51, 0x1b, 0x56, 0x31, 0x31, 0x31, 0x31, 0x37,
0x52, 0x41, 0xfc, 0x33, 0x41, 0xf4, 0xb4, 0x35, 0x20, 0xc4, 0x4d, 0x00, 0x53, 0x23, 0x46, 0x23, 0x00, 0x1c, 0x47, 0xea, 0x2b, 0xc7, 0x2d, 0x2f, 0x2d, 0xb4, 0x20, 0x39, 0x51, 0x24, 0xf2, 0x1a,
0x53, 0x1d, 0xfc, 0x23, 0xc5, 0x3f, 0x31, 0x2e, 0x20, 0x31, 0x46, 0x23, 0x27, 0xbd, 0xc7, 0x3e, 0x55, 0x00, 0x9c, 0x5a, 0x9c, 0x56, 0x31, 0x31, 0x31, 0x31, 0xfe, 0xc5, 0x9c, 0x2a, 0xc0, 0x93,
0x0f, 0xb5, 0x31, 0x46, 0xd0, 0xa0, 0x4a, 0xbd, 0x3c, 0xf2, 0x47, 0x4d, 0x52, 0x29, 0x28, 0x22, 0x39, 0xb4, 0x90, 0x27, 0x25, 0x1d, 0x3c, 0x39, 0xd3, 0x39, 0x3a, 0xe3, 0x45, 0x20, 0x2a, 0xfc,
0x00, 0x3d, 0x92, 0x1d, 0x2f, 0x4a, 0xe3, 0x1f, 0x1c, 0x18, 0x1c, 0x18, 0x1c, 0x18, 0x3e, 0x4b, 0xc7, 0x1d, 0x9c, 0x38, 0xbf, 0x27, 0x5a, 0x3a, 0x43, 0x9c, 0xbc, 0x25, 0x2b, 0x22, 0x1c, 0x47,
0x1e, 0x51, 0x18, 0x00, 0x42, 0xfc, 0x9f, 0x21, 0xb0, 0xc5, 0x4a, 0xfc, 0x21, 0x25, 0xb5, 0x39, 0xc2, 0x39, 0xe3, 0x1d, 0xa2, 0xbc, 0x45, 0x1f, 0x45, 0x1c, 0xfd, 0x55, 0x0f, 0xb5, 0x27, 0xca,
0xf4, 0xbc, 0xc5, 0x3c, 0x26, 0x26, 0x28, 0x1c, 0x2b, 0x55, 0x3b, 0x35, 0x42, 0x29, 0x29, 0x29, 0x54, 0x9f, 0x90, 0x00, 0x27, 0x22, 0x4d, 0x20, 0x43, 0x5b, 0x1a, 0x3e, 0x36, 0x50, 0x56, 0x5b,
0x29, 0x54, 0x1c, 0x18, 0x50, 0xbc, 0x25, 0xf4, 0x25, 0x52, 0x29, 0x4f, 0xa4, 0x20, 0x29, 0x57, 0xc2, 0x90, 0x3b, 0x3a, 0x2a, 0xf0, 0x2d, 0x34, 0x3d, 0xf0, 0x54,
0x37, 0x55, 0x25, 0x29, 0x1a, 0x46, 0xf0, 0x1b, 0x3d, 0x2a, 0x46, 0x26, 0x50, 0x2c, 0x37,
}; };
static const gU16 mf_rlefont_DejaVuSans24_dictionary_offsets[122] PROGMEM = { static const gU16 mf_rlefont_DejaVuSans24_dictionary_offsets[119] = {
0x0000, 0x0007, 0x0008, 0x000a, 0x000b, 0x000d, 0x000f, 0x0011, 0x0000, 0x0003, 0x0004, 0x0007, 0x0013, 0x0016, 0x0018, 0x001a,
0x0013, 0x0014, 0x0015, 0x0019, 0x001a, 0x001e, 0x0020, 0x0022, 0x001b, 0x001d, 0x001f, 0x0020, 0x0022, 0x0026, 0x0028, 0x002d,
0x0025, 0x0026, 0x0028, 0x002a, 0x002f, 0x0032, 0x0035, 0x0039, 0x002f, 0x0031, 0x0032, 0x0035, 0x0037, 0x003a, 0x003d, 0x0043,
0x003b, 0x003e, 0x0041, 0x0046, 0x0049, 0x004c, 0x004d, 0x004f, 0x0046, 0x0047, 0x004b, 0x004d, 0x004f, 0x0051, 0x0053, 0x0054,
0x0051, 0x0053, 0x0054, 0x0056, 0x0058, 0x005a, 0x005d, 0x005e, 0x0056, 0x0059, 0x005b, 0x005d, 0x005f, 0x0062, 0x0064, 0x0067,
0x0060, 0x0062, 0x0069, 0x006c, 0x006d, 0x0070, 0x0073, 0x0075, 0x0069, 0x006c, 0x006f, 0x0070, 0x0071, 0x0073, 0x0075, 0x0078,
0x0076, 0x0079, 0x007b, 0x007d, 0x007e, 0x0081, 0x0083, 0x0085, 0x007d, 0x007f, 0x0084, 0x0085, 0x0086, 0x0087, 0x0088, 0x0089,
0x0086, 0x0087, 0x0088, 0x008a, 0x008b, 0x008c, 0x008e, 0x008f, 0x008b, 0x008c, 0x008d, 0x008e, 0x0090, 0x0091, 0x0092, 0x0093,
0x0091, 0x009e, 0x00a1, 0x00a4, 0x00ad, 0x00b1, 0x00bb, 0x00c8, 0x0094, 0x0097, 0x009a, 0x009b, 0x009d, 0x00a8, 0x00ad, 0x00bf,
0x00cd, 0x00d3, 0x00d9, 0x00fa, 0x00fc, 0x0100, 0x010a, 0x010d, 0x00c5, 0x00c8, 0x00cb, 0x00ce, 0x00d9, 0x00de, 0x00e2, 0x00ec,
0x010f, 0x0111, 0x0113, 0x0115, 0x0120, 0x0128, 0x012b, 0x012d, 0x00f0, 0x00f6, 0x00fa, 0x00fe, 0x0107, 0x010b, 0x010d, 0x0111,
0x0130, 0x0132, 0x0137, 0x0140, 0x0142, 0x014c, 0x014f, 0x0156, 0x0115, 0x0116, 0x0118, 0x011a, 0x0120, 0x0123, 0x012c, 0x0131,
0x0158, 0x015e, 0x0163, 0x0165, 0x016b, 0x016e, 0x0170, 0x0173, 0x0133, 0x013a, 0x013d, 0x0141, 0x0143, 0x0145, 0x0148, 0x014b,
0x0175, 0x0177, 0x017b, 0x017f, 0x0181, 0x0184, 0x0186, 0x0189, 0x014e, 0x0156, 0x0158, 0x015a, 0x015e, 0x0167, 0x016a, 0x016c,
0x018b, 0x018d, 0x018f, 0x0191, 0x0193, 0x0195, 0x0198, 0x019a, 0x0172, 0x0173, 0x0178, 0x017e, 0x0184, 0x0189, 0x018b,
0x019c, 0x019f,
}; };
static const gU8 mf_rlefont_DejaVuSans24_glyph_data_0[1849] PROGMEM = { static const gU8 mf_rlefont_DejaVuSans24_glyph_data_0[1873] = {
0x08, 0x00, 0x10, 0x0a, 0x6e, 0x78, 0x28, 0x4b, 0x66, 0xff, 0x10, 0x0b, 0x21, 0x7a, 0x61, 0x33, 0x08, 0x00, 0x10, 0x0a, 0x00, 0x4a, 0x47, 0x5d, 0x56, 0x19, 0x74, 0x10, 0x0b, 0x4c, 0x1a, 0x64,
0x61, 0xc4, 0xb7, 0x10, 0x14, 0x28, 0x88, 0x31, 0x7f, 0x7f, 0x7f, 0x21, 0xe6, 0x2c, 0xf3, 0x43, 0xfc, 0x1a, 0x64, 0xfc, 0x1a, 0x10, 0x14, 0xc4, 0x4e, 0xc7, 0xc6, 0x82, 0x8d, 0xc7, 0xc7, 0x82,
0x3f, 0x43, 0x46, 0xc7, 0x46, 0x94, 0x9c, 0x4a, 0x31, 0x7f, 0x35, 0x1d, 0x43, 0x3f, 0x23, 0xd3, 0x8d, 0xc5, 0xc7, 0x2b, 0x4b, 0x2c, 0x4b, 0xe7, 0x4a, 0x77, 0x8d, 0x4f, 0x3c, 0x2b, 0xa5, 0x4a,
0x88, 0x31, 0x7f, 0x7f, 0x7f, 0xfc, 0x4a, 0xb4, 0x10, 0x0f, 0x53, 0x94, 0x28, 0x3b, 0x5a, 0x56, 0x2b, 0xb5, 0x45, 0x4b, 0xc4, 0x34, 0x22, 0x21, 0xc7, 0xc6, 0x82, 0x8d, 0xc7, 0xc7, 0x82, 0x8d,
0x8b, 0x77, 0xa0, 0xc6, 0x27, 0x95, 0x3c, 0x55, 0x39, 0x44, 0xc5, 0x4a, 0x69, 0x38, 0x7c, 0xcc, 0x0f, 0xb4, 0x10, 0x0f, 0x4e, 0x94, 0x29, 0xc8, 0x28, 0x28, 0x1e, 0x39, 0x21, 0x2f, 0xa6, 0x82,
0x92, 0x21, 0x7d, 0x4f, 0xcc, 0x2c, 0xc6, 0xb6, 0xc5, 0x3f, 0x36, 0xf3, 0x1c, 0x1a, 0xcc, 0x28, 0xe8, 0x54, 0xa7, 0x27, 0xcd, 0x7c, 0x45, 0x93, 0x7c, 0x56, 0xbd, 0x50, 0x94, 0x8d, 0xfe, 0x9c,
0x1a, 0x55, 0x10, 0x17, 0x54, 0xe2, 0x34, 0x56, 0xaa, 0xc5, 0xa0, 0x34, 0x55, 0x48, 0x3f, 0x50, 0x56, 0xa5, 0x2f, 0x3b, 0x7e, 0x2b, 0x29, 0xcc, 0x29, 0xc8, 0x28, 0x10, 0x17, 0x4c, 0xe2, 0x4a,
0x2d, 0x42, 0x9c, 0xa0, 0x3f, 0x50, 0x73, 0x88, 0x31, 0xbd, 0x35, 0x2d, 0x2c, 0xaa, 0x9d, 0x1d, 0x2c, 0xdd, 0x3d, 0x33, 0xc5, 0xc7, 0x3c, 0xdc, 0xb4, 0xb4, 0x52, 0x34, 0x77, 0x2f, 0x2b, 0xc5,
0xc4, 0xb4, 0xc7, 0xb7, 0x2c, 0xca, 0xc7, 0xca, 0x44, 0x2d, 0x7a, 0xd0, 0x9c, 0x44, 0xea, 0x9c, 0xa7, 0x23, 0xc7, 0xaa, 0x41, 0x7b, 0x30, 0xaa, 0x9d, 0xc0, 0x4a, 0xa2, 0x90, 0x1a, 0x56, 0xaa,
0x3f, 0x50, 0x2d, 0x3f, 0xc4, 0x2d, 0x68, 0x33, 0xca, 0x34, 0xc4, 0x1d, 0x10, 0x13, 0x70, 0xff, 0xa5, 0x23, 0xab, 0xc5, 0x41, 0xdc, 0x77, 0x2b, 0xa7, 0xa5, 0x48, 0xe7, 0x90, 0x3c, 0xdc, 0x34,
0x3c, 0x1b, 0x4a, 0xc7, 0xc8, 0x3e, 0x18, 0xeb, 0x8c, 0x25, 0xfc, 0xbb, 0x48, 0x3f, 0xd5, 0x2d, 0xb4, 0x4a, 0x92, 0x7b, 0x52, 0x3c, 0xe2, 0x10, 0x13, 0x55, 0x33, 0x49, 0xa4, 0x39, 0x59, 0x8d,
0x3f, 0xa4, 0xb7, 0x42, 0xc4, 0xbb, 0x42, 0x7e, 0x4d, 0x4f, 0x6d, 0xb4, 0x1f, 0xe3, 0xab, 0x46, 0x2d, 0x43, 0x92, 0x7c, 0x30, 0xb2, 0xc7, 0x3c, 0xbc, 0xbc, 0xb4, 0x4a, 0x90, 0xbc, 0x3c, 0xb4,
0xa3, 0xbc, 0x10, 0x07, 0x84, 0x6a, 0x10, 0x09, 0x19, 0x42, 0x39, 0x7a, 0x83, 0x82, 0x28, 0x5c, 0x52, 0xbb, 0x1f, 0x77, 0x71, 0x25, 0x25, 0x3d, 0x32, 0x3b, 0xe7, 0x1d, 0x1e, 0xbc, 0x10, 0x07,
0x18, 0x2b, 0xb4, 0x10, 0x09, 0x54, 0x1c, 0x66, 0x18, 0x00, 0x5c, 0x1c, 0x6a, 0xd0, 0x83, 0x10, 0x4c, 0x69, 0x10, 0x09, 0x56, 0x27, 0x1c, 0x61, 0x61, 0x1c, 0x60, 0x74, 0x59, 0x90, 0x1c, 0x10,
0x0c, 0x54, 0x55, 0x28, 0xc6, 0x4a, 0x95, 0x2c, 0xa0, 0xa1, 0x21, 0x86, 0xfe, 0xaf, 0x46, 0xca, 0x09, 0x4c, 0xe7, 0x47, 0x74, 0x55, 0x86, 0x69, 0x61, 0x61, 0x46, 0x10, 0x0c, 0x4e, 0xc8, 0x28,
0xc6, 0xc7, 0x4a, 0x56, 0x4a, 0x10, 0x14, 0x1e, 0x66, 0x63, 0x46, 0x40, 0x23, 0x4f, 0x40, 0x77, 0x27, 0xec, 0x9c, 0x56, 0xb2, 0x38, 0x1e, 0x7c, 0x30, 0x9b, 0x1d, 0xfe, 0x95, 0x8d, 0xe6, 0x28,
0x80, 0x63, 0x87, 0x10, 0x08, 0x79, 0x1c, 0x87, 0x10, 0x09, 0x51, 0x29, 0x38, 0x21, 0x1b, 0x10, 0x10, 0x14, 0x5a, 0x55, 0x19, 0x69, 0x50, 0x4b, 0x93, 0x44, 0xe3, 0x20, 0x50, 0x69, 0x10, 0x08,
0x08, 0x79, 0x10, 0x08, 0xfc, 0x6e, 0x1c, 0x89, 0x82, 0x82, 0x1a, 0x2b, 0x2a, 0x1c, 0x6a, 0x66, 0x35, 0x6d, 0x61, 0x10, 0x09, 0x00, 0x19, 0x19, 0x5b, 0x3b, 0x52, 0x3b, 0x10, 0x08, 0x35, 0x6d,
0x1c, 0x89, 0x10, 0x0f, 0x47, 0x29, 0x30, 0x1b, 0x4a, 0x2d, 0x27, 0x2e, 0x37, 0x90, 0x56, 0x6c, 0x10, 0x08, 0x30, 0x1c, 0x85, 0x47, 0x29, 0x6d, 0x85, 0x1c, 0x85, 0x47, 0x29, 0x6d, 0x85, 0x10,
0x37, 0x34, 0x41, 0x64, 0x2e, 0x37, 0x31, 0x8d, 0x21, 0x1d, 0x10, 0x0f, 0x70, 0x21, 0x1d, 0x30, 0x0f, 0x4e, 0x81, 0x52, 0xc2, 0x1d, 0x2f, 0xbc, 0x82, 0xa4, 0x48, 0xb4, 0x78, 0x31, 0x31, 0x31,
0xfc, 0x78, 0x87, 0x50, 0x2f, 0x2f, 0x10, 0x0f, 0xc4, 0x28, 0x8b, 0x23, 0x27, 0xe5, 0xa0, 0x8c, 0x65, 0x43, 0x90, 0x77, 0x45, 0x2a, 0x3f, 0x21, 0x71, 0x10, 0x0f, 0x4e, 0xc0, 0x27, 0xd3, 0x54,
0x66, 0x1c, 0x46, 0x4d, 0x83, 0x83, 0x83, 0x19, 0x89, 0x77, 0x00, 0x43, 0x10, 0x0f, 0x54, 0x2a, 0x1a, 0x74, 0x5d, 0xfc, 0x6c, 0x20, 0x10, 0x0f, 0xc4, 0x55, 0x83, 0xff, 0x39, 0x2d, 0x52, 0x44,
0xa3, 0x21, 0x77, 0xcc, 0x33, 0x28, 0x81, 0xa4, 0x3b, 0xe2, 0x30, 0xa3, 0x8c, 0xe0, 0x82, 0x4e, 0x74, 0x46, 0x85, 0x46, 0x46, 0x46, 0x46, 0x46, 0x46, 0x4a, 0x3b, 0x7f, 0x10, 0x0f, 0x54, 0x3b,
0x49, 0x3d, 0xfe, 0x77, 0xfc, 0x40, 0x10, 0x0f, 0x53, 0x3d, 0x4d, 0x1a, 0x91, 0x3c, 0x61, 0xb4, 0x4a, 0x2b, 0x20, 0x50, 0xc5, 0x92, 0x1c, 0x67, 0x8d, 0x22, 0x27, 0xe3, 0x29, 0x2f, 0x74, 0x28,
0x9c, 0x4a, 0xa7, 0x3b, 0x2d, 0x4a, 0x48, 0x35, 0xb4, 0xa4, 0x27, 0x2e, 0x37, 0x43, 0x35, 0x43, 0x48, 0xc8, 0x2d, 0x32, 0x7e, 0x10, 0x0f, 0x29, 0x45, 0x29, 0x93, 0x54, 0x9e, 0x54, 0xba, 0x64,
0xc7, 0x21, 0x81, 0x10, 0x0f, 0x53, 0x77, 0x3a, 0x38, 0x3e, 0x18, 0x87, 0xa3, 0x21, 0x36, 0x48, 0x00, 0xc7, 0xc7, 0x45, 0x9c, 0x39, 0xb4, 0x39, 0x34, 0x39, 0x34, 0x82, 0x34, 0x50, 0x4b, 0x48,
0x1a, 0xe0, 0x28, 0x81, 0x3d, 0x45, 0x8e, 0x36, 0x1b, 0x10, 0x0f, 0x6e, 0x3a, 0x3c, 0x1b, 0x56, 0xc2, 0x20, 0x27, 0x74, 0x10, 0x0f, 0x4d, 0x3b, 0x3e, 0x7d, 0x59, 0xf0, 0x55, 0x21, 0xa4, 0x21,
0x4d, 0xc4, 0x27, 0x1c, 0x1c, 0x87, 0xe0, 0x46, 0xb0, 0x1b, 0x35, 0x3a, 0xbc, 0x35, 0x1d, 0x3d, 0x94, 0x2a, 0x33, 0x6d, 0x47, 0x40, 0x4f, 0x2a, 0xc2, 0x7e, 0x10, 0x0f, 0x51, 0x4e, 0x49, 0x00,
0xcb, 0x33, 0x88, 0xc7, 0xb4, 0xc4, 0x4d, 0x22, 0x22, 0x48, 0xc5, 0x3f, 0xa7, 0x8d, 0x7c, 0x10, 0x94, 0x45, 0x61, 0x00, 0x1e, 0x82, 0x21, 0xc0, 0xb5, 0x23, 0xc0, 0x34, 0x23, 0x92, 0xa4, 0x23,
0x0f, 0x54, 0x6f, 0x1c, 0x87, 0x8c, 0x2b, 0xfc, 0x87, 0x8c, 0x2b, 0xd0, 0x83, 0x3b, 0x33, 0x83, 0x92, 0x34, 0x56, 0x25, 0x2e, 0xd2, 0x2a, 0x36, 0xbc, 0x39, 0x22, 0x7c, 0x10, 0x0f, 0x4c, 0x22,
0x10, 0x0f, 0x54, 0x8b, 0x23, 0x27, 0xc7, 0x92, 0x41, 0xfc, 0x33, 0x41, 0x22, 0x31, 0x8d, 0x4f, 0x7f, 0x46, 0x1c, 0x85, 0x61, 0x85, 0x61, 0x85, 0x1c, 0x46, 0x10, 0x0f, 0x4c, 0x83, 0x1d, 0x92,
0x3f, 0x1b, 0x4a, 0xc7, 0x92, 0x41, 0xfc, 0x33, 0x41, 0x22, 0x31, 0x46, 0x37, 0x36, 0x1b, 0x10, 0x2f, 0x73, 0x2d, 0x52, 0x20, 0x39, 0x22, 0x50, 0x92, 0x2f, 0x73, 0xe5, 0x92, 0x3b, 0x7e, 0x10,
0x0f, 0x54, 0xbc, 0x30, 0x1b, 0x4a, 0xc7, 0x1f, 0xf2, 0x3d, 0x37, 0x22, 0x85, 0x35, 0xca, 0x3d, 0x0f, 0x56, 0x7c, 0x30, 0xc2, 0x1d, 0x2f, 0xc0, 0x45, 0xa4, 0x2e, 0xca, 0x2d, 0xdc, 0x44, 0x30,
0xff, 0x4f, 0x6d, 0xc4, 0x38, 0x88, 0xa7, 0x1f, 0x1d, 0xbb, 0x4a, 0x38, 0x87, 0x83, 0x27, 0x3d, 0x90, 0x34, 0x23, 0x92, 0x81, 0x3f, 0xa7, 0x93, 0x3b, 0x91, 0x45, 0x1a, 0x59, 0xea, 0x40, 0x58,
0xf4, 0x36, 0xc2, 0x10, 0x08, 0x50, 0x28, 0x57, 0x6a, 0x57, 0x6a, 0x10, 0x08, 0x50, 0x28, 0x57, 0x7a, 0x57, 0x10, 0x08, 0x50, 0x5b, 0x74, 0x1f, 0x5b, 0x74, 0x10, 0x08, 0x50, 0x5b, 0x74, 0x1f,
0x6a, 0x57, 0x81, 0xc4, 0x87, 0x10, 0x14, 0x39, 0x4b, 0x1e, 0x1a, 0xf3, 0x3c, 0x1f, 0x8b, 0xff, 0x5b, 0x74, 0x61, 0x10, 0x14, 0x5b, 0x3f, 0x50, 0x71, 0x3d, 0x3e, 0x5a, 0x45, 0x3e, 0xc4, 0x45,
0x1f, 0x8b, 0x2a, 0x46, 0x4d, 0x89, 0x69, 0x89, 0x0f, 0x89, 0x1c, 0x2a, 0x10, 0x14, 0x4b, 0x57, 0x28, 0x1e, 0x5f, 0xd3, 0x29, 0x93, 0x28, 0x10, 0x14, 0x19, 0x5b, 0x3f, 0x4b, 0x2c, 0x4b, 0xe7,
0x1d, 0x43, 0x3f, 0x43, 0xc7, 0x4b, 0x70, 0x43, 0x56, 0x1d, 0x43, 0x10, 0x14, 0x35, 0x6e, 0x1e, 0x19, 0x28, 0x4b, 0xc7, 0x44, 0x4b, 0x10, 0x14, 0x4a, 0x19, 0x19, 0x86, 0x36, 0x28, 0x1e, 0x5f,
0xc8, 0x29, 0x46, 0x4d, 0x89, 0x69, 0x89, 0x1f, 0x68, 0x3c, 0x1f, 0x8b, 0xff, 0x1f, 0x8b, 0xe2, 0xd3, 0x40, 0x00, 0x32, 0x39, 0x7e, 0xb4, 0x3a, 0x71, 0x33, 0x10, 0x0d, 0x4e, 0xc2, 0x27, 0x1e,
0xc4, 0x4a, 0x10, 0x0d, 0x28, 0x4d, 0x30, 0x25, 0x2d, 0xe5, 0x3e, 0xc5, 0x66, 0x1c, 0x46, 0x4d, 0x39, 0x2a, 0x3f, 0x52, 0x6d, 0x46, 0x40, 0x44, 0x85, 0x47, 0x30, 0x42, 0x74, 0x10, 0x18, 0x19,
0x5f, 0x18, 0x4b, 0x6a, 0x10, 0x18, 0x53, 0x70, 0x8d, 0x6d, 0xc5, 0x1d, 0x44, 0x4d, 0x56, 0xc7, 0xf2, 0x3e, 0x0f, 0x3a, 0xa2, 0x34, 0x2c, 0x2c, 0xc7, 0x2d, 0x2f, 0x34, 0xa5, 0xab, 0x9d, 0x34,
0x44, 0xb4, 0x31, 0xab, 0x9d, 0x33, 0x40, 0xab, 0x2d, 0xd5, 0x73, 0xc7, 0xc7, 0xca, 0x67, 0xa7, 0xbc, 0x22, 0xbd, 0xb4, 0xb5, 0xb5, 0xa7, 0xc5, 0xa7, 0xc7, 0x2f, 0x90, 0x90, 0x79, 0x90, 0x90,
0xc5, 0x73, 0x4f, 0xa7, 0xc5, 0x73, 0x4f, 0xa7, 0xc5, 0x73, 0x4f, 0xa7, 0xc5, 0xa7, 0xc5, 0xa0, 0x79, 0x90, 0x90, 0x79, 0xf0, 0xb4, 0x9c, 0xa4, 0x1a, 0x34, 0xb5, 0xb4, 0xbf, 0x52, 0xa7, 0x4b,
0xca, 0xbc, 0xbc, 0xbc, 0xa1, 0xc4, 0x73, 0x43, 0x4f, 0xcb, 0x1d, 0xa0, 0x68, 0x29, 0xe5, 0x5a, 0x52, 0x92, 0xc0, 0x2f, 0x4a, 0x38, 0x2d, 0x48, 0xe2, 0x3d, 0x3b, 0xe3, 0x39, 0xe3, 0x10, 0x10,
0xa2, 0x3d, 0x23, 0x46, 0x40, 0x10, 0x10, 0x53, 0xbc, 0x1a, 0x69, 0x3b, 0x8b, 0x00, 0xca, 0x30, 0x4e, 0x81, 0x5a, 0x71, 0x33, 0x25, 0x3b, 0x64, 0x37, 0x77, 0x39, 0x77, 0x39, 0x77, 0x82, 0x34,
0x2c, 0x33, 0x9c, 0x4a, 0x31, 0x3b, 0x2d, 0x4a, 0x2e, 0x67, 0x4e, 0xd2, 0x3d, 0x23, 0x6d, 0xf3, 0x82, 0x34, 0x45, 0x3d, 0x56, 0x4b, 0x3b, 0xff, 0x3a, 0x6a, 0x2c, 0x4f, 0x4a, 0x41, 0x10, 0x10,
0xa3, 0x24, 0x24, 0x24, 0xfc, 0x32, 0x10, 0x10, 0x5e, 0x4e, 0x40, 0x8d, 0x46, 0x37, 0x22, 0x34, 0x4c, 0x20, 0x6c, 0x3d, 0x66, 0x22, 0x6c, 0x00, 0x78, 0xc7, 0x77, 0x3b, 0xe3, 0x45, 0x22, 0x10,
0x41, 0xfc, 0x33, 0x41, 0x00, 0xc4, 0x46, 0x6f, 0x10, 0x11, 0x47, 0x29, 0x38, 0x2f, 0x56, 0x7e, 0x11, 0x4e, 0x83, 0x1d, 0x36, 0x2d, 0xe0, 0x33, 0x4a, 0x77, 0x85, 0x47, 0x67, 0xbc, 0x59, 0x2f,
0x92, 0x44, 0x5a, 0x37, 0x8c, 0x18, 0x6a, 0x55, 0x75, 0xcb, 0x5a, 0x1d, 0x3d, 0x37, 0x36, 0x1b, 0x4a, 0x48, 0xc0, 0x2d, 0x32, 0x7e, 0x10, 0x12, 0x4c, 0x22, 0x3e, 0xe3, 0x48, 0xd0, 0x71, 0xe7,
0x10, 0x12, 0x54, 0x77, 0xbc, 0x77, 0x52, 0x7e, 0x34, 0x4d, 0x24, 0x24, 0x0f, 0x3f, 0x24, 0x24, 0x44, 0x30, 0x2c, 0x48, 0x2c, 0x6a, 0x6a, 0x6a, 0x2c, 0x18, 0x2c, 0x18, 0x48, 0x53, 0x4a, 0x25,
0x24, 0x24, 0x24, 0x24, 0xfc, 0x4d, 0x3f, 0x3f, 0x42, 0x4d, 0x42, 0x7e, 0x4d, 0x77, 0x23, 0x10, 0x77, 0x71, 0x4b, 0x3b, 0x57, 0x10, 0x0f, 0x4c, 0x22, 0x7f, 0x56, 0x6d, 0x67, 0x5a, 0x22, 0x24,
0x0f, 0x54, 0x6f, 0x46, 0x75, 0x63, 0x23, 0x27, 0x77, 0x66, 0x63, 0x6f, 0xff, 0x10, 0x0e, 0x54, 0x6d, 0x67, 0x5a, 0x22, 0x7f, 0x10, 0x0e, 0x4c, 0x22, 0x24, 0x6d, 0x67, 0x5a, 0x22, 0x3e, 0x7d,
0x23, 0x27, 0x77, 0x66, 0x63, 0x77, 0xf4, 0x77, 0xf4, 0x5c, 0x10, 0x13, 0x53, 0x8b, 0x0f, 0x77, 0x00, 0x60, 0x10, 0x13, 0x4e, 0x83, 0x1d, 0xeb, 0x2d, 0xe0, 0x33, 0x4a, 0x77, 0x85, 0x47, 0x3d,
0xf2, 0xc4, 0x92, 0x44, 0x5a, 0x37, 0x8c, 0x2b, 0x26, 0x4f, 0x1b, 0x3f, 0x4f, 0x1b, 0x3f, 0x24, 0x25, 0xdc, 0xc4, 0xc0, 0x6a, 0x2c, 0x6a, 0x25, 0x90, 0x4a, 0xc0, 0x3d, 0x3b, 0xe3, 0x39, 0xe3,
0x24, 0x0f, 0x3f, 0x24, 0xfc, 0x68, 0x34, 0x47, 0xd3, 0x3d, 0x23, 0x46, 0x40, 0x10, 0x12, 0x21, 0x10, 0x12, 0x4c, 0x1b, 0x72, 0x68, 0xf2, 0x22, 0x3a, 0x4b, 0x23, 0x1b, 0x72, 0x68, 0x10, 0x07,
0x7a, 0x32, 0x59, 0x59, 0x34, 0x47, 0x23, 0x38, 0x3f, 0x43, 0x7a, 0x32, 0x59, 0x59, 0x34, 0x10, 0x1f, 0x47, 0x60, 0x5d, 0x10, 0x07, 0x1f, 0x5d, 0x5d, 0x46, 0x7c, 0x30, 0xc0, 0x10, 0x10, 0x4c,
0x07, 0x84, 0x78, 0x87, 0x10, 0x07, 0x84, 0x78, 0x81, 0x33, 0x7c, 0x00, 0x1d, 0x10, 0x10, 0x54, 0xe7, 0x2d, 0x9c, 0x2d, 0xb4, 0x2d, 0x34, 0x80, 0x1d, 0x71, 0x33, 0xd1, 0x54, 0xaa, 0xc7, 0x82,
0xe7, 0x3d, 0x52, 0x3d, 0x37, 0x8e, 0x74, 0xe7, 0x21, 0xa2, 0x21, 0x8b, 0x6b, 0xff, 0x4e, 0xca, 0x2f, 0x39, 0x8c, 0x30, 0xdc, 0x44, 0x56, 0xc7, 0x2d, 0x90, 0x44, 0x10, 0x0d, 0x1f, 0x60, 0x5d,
0x3d, 0xff, 0x4d, 0x7a, 0x4d, 0x10, 0x0d, 0x84, 0x78, 0x6f, 0xff, 0x10, 0x15, 0x54, 0xcb, 0x4d, 0x54, 0x32, 0x7f, 0x10, 0x15, 0x4c, 0x25, 0xbc, 0x33, 0x25, 0xe2, 0x33, 0x25, 0xe2, 0x4a, 0xc2,
0x39, 0x38, 0x7e, 0xf4, 0x1d, 0x4f, 0xa2, 0x4d, 0xc7, 0x3a, 0x56, 0xba, 0xc4, 0xba, 0x56, 0xba, 0xc4, 0xc2, 0x4a, 0xba, 0xc4, 0xba, 0x4a, 0xba, 0x52, 0x9f, 0x4a, 0x1a, 0x7b, 0x1f, 0x1a, 0x7b,
0xc4, 0xba, 0x39, 0xb7, 0x60, 0x4f, 0xaa, 0xc5, 0xb7, 0x56, 0xca, 0xaa, 0x7d, 0xe7, 0xaa, 0x7d, 0x1f, 0x1a, 0x7b, 0x1f, 0xa7, 0x9d, 0x3c, 0x90, 0xaa, 0xb5, 0x33, 0xe5, 0x22, 0x9c, 0x6f, 0x6f,
0xff, 0x3a, 0x7d, 0x2d, 0x2d, 0x39, 0x2d, 0x2d, 0x50, 0xa4, 0x48, 0x33, 0x59, 0x10, 0x12, 0x19, 0x51, 0x77, 0x77, 0x72, 0xb4, 0x10, 0x12, 0x4c, 0x25, 0xca, 0x2b, 0x25, 0x41, 0xe7, 0xa4, 0x23,
0x4d, 0x34, 0x47, 0x38, 0x33, 0xc4, 0x7e, 0x26, 0x88, 0x38, 0xb4, 0x88, 0x91, 0xb4, 0x47, 0xaa, 0x1e, 0xa4, 0x23, 0x9f, 0xa4, 0x23, 0x1a, 0xa4, 0x23, 0x1a, 0xa4, 0x23, 0xa7, 0xa5, 0x23, 0xa7,
0x48, 0x47, 0xaa, 0x48, 0x35, 0xc7, 0x2d, 0x35, 0xc7, 0x2d, 0x88, 0xc5, 0x73, 0x88, 0x31, 0x7d, 0xc5, 0x41, 0x77, 0x90, 0x2b, 0xc5, 0xc7, 0x41, 0xc4, 0x1a, 0x4a, 0x77, 0x7b, 0x2b, 0xc5, 0xb0,
0x26, 0x33, 0xca, 0x3f, 0xc4, 0xb7, 0x47, 0x67, 0x91, 0x3f, 0xc4, 0xba, 0x7a, 0x7e, 0x34, 0x7e, 0x48, 0xca, 0x77, 0x41, 0x44, 0x48, 0xea, 0x71, 0x53, 0x44, 0x10, 0x13, 0x4e, 0x83, 0x5e, 0x75,
0x34, 0x85, 0x10, 0x13, 0x62, 0x10, 0x0e, 0x54, 0x36, 0x23, 0x27, 0x2e, 0x37, 0x22, 0x22, 0x22, 0x36, 0x10, 0x0e, 0x4c, 0x20, 0x6c, 0xfc, 0x77, 0x66, 0x21, 0xfc, 0x20, 0x39, 0x55, 0x69, 0x10,
0x64, 0x77, 0xfc, 0x36, 0x5c, 0x10, 0x13, 0x62, 0x1a, 0x2a, 0x75, 0x37, 0x10, 0x11, 0x5e, 0x27, 0x13, 0x4e, 0x83, 0x5e, 0x75, 0x1e, 0x4a, 0x45, 0x59, 0xdc, 0x10, 0x11, 0x4c, 0x20, 0x6c, 0xfc,
0x77, 0xfc, 0x77, 0x26, 0x8e, 0x2e, 0x37, 0x22, 0x22, 0x85, 0xf4, 0x3f, 0x34, 0x41, 0x34, 0x10, 0x77, 0x66, 0x21, 0x3f, 0x20, 0x82, 0x2a, 0xca, 0x77, 0x56, 0x62, 0x37, 0x44, 0x56, 0x31, 0x31,
0x0f, 0x70, 0xeb, 0x2f, 0x4f, 0x4d, 0xc4, 0x46, 0x81, 0x4f, 0x89, 0x25, 0x3a, 0x1c, 0xd3, 0x8c, 0x0f, 0xc5, 0x34, 0x10, 0x0f, 0x4c, 0x83, 0xeb, 0x45, 0xa4, 0x48, 0x9c, 0x67, 0x2a, 0x4a, 0x21,
0x66, 0xff, 0x35, 0x67, 0x46, 0x23, 0x46, 0x40, 0x10, 0x0f, 0x35, 0x2f, 0xf3, 0x47, 0x1b, 0x36, 0x44, 0x36, 0x29, 0xa2, 0x28, 0x6d, 0x28, 0x48, 0x90, 0x2a, 0x36, 0x21, 0xec, 0x22, 0x10, 0x0f,
0x78, 0x81, 0x10, 0x12, 0x21, 0x7a, 0x32, 0x59, 0x59, 0x59, 0x59, 0x34, 0x7a, 0x90, 0x0f, 0x8e, 0x55, 0x32, 0xe3, 0x25, 0x32, 0x20, 0x39, 0x74, 0x47, 0x5d, 0x10, 0x12, 0x4c, 0x1b, 0x72, 0x72,
0x36, 0x0f, 0x1b, 0x10, 0x10, 0xfc, 0x3e, 0x7a, 0x24, 0x3f, 0x24, 0x24, 0x41, 0xc4, 0x2c, 0xeb, 0x72, 0x68, 0x90, 0x34, 0x45, 0x2d, 0x34, 0x21, 0x51, 0xc2, 0x10, 0x10, 0xc4, 0x28, 0x48, 0xca,
0x3d, 0x67, 0x27, 0x2e, 0xd0, 0x9c, 0x4a, 0x31, 0x3b, 0x2d, 0x3c, 0xd0, 0x21, 0xca, 0x30, 0x1f, 0x4a, 0x6a, 0x2c, 0x23, 0x31, 0x31, 0xeb, 0x2d, 0x77, 0x34, 0x82, 0x34, 0x39, 0x77, 0x39, 0xb4,
0x4f, 0x69, 0x1a, 0xf3, 0x10, 0x18, 0x21, 0x42, 0x7e, 0x26, 0x9c, 0x7e, 0xf4, 0x2d, 0x7e, 0x2a, 0x50, 0x90, 0x8d, 0x1a, 0x27, 0x8d, 0xf2, 0x1d, 0x71, 0x4a, 0xa2, 0x54, 0xc0, 0x10, 0x18, 0x43,
0x48, 0x7e, 0x2a, 0x48, 0xc4, 0xbb, 0xa4, 0x48, 0xc4, 0xb7, 0x33, 0xc4, 0xc7, 0xca, 0x2d, 0x4f, 0x39, 0x44, 0xe5, 0x77, 0x3c, 0x93, 0x34, 0xb4, 0xc4, 0xa2, 0x34, 0x34, 0xc4, 0xa2, 0x34, 0x34,
0xc7, 0xca, 0x2d, 0x4f, 0xc7, 0xab, 0x73, 0x4f, 0xa7, 0xc5, 0x73, 0x56, 0xb7, 0x60, 0x4f, 0xaa, 0xa4, 0x9f, 0x77, 0x77, 0x7b, 0x9c, 0x34, 0x7b, 0x3c, 0xe7, 0x90, 0xc7, 0x79, 0x2f, 0x92, 0x79,
0xc5, 0xb7, 0x4f, 0xb0, 0xc5, 0xb0, 0xc5, 0x7e, 0x1d, 0xc4, 0x7e, 0x1d, 0x39, 0x1d, 0x7e, 0x85, 0xf0, 0x77, 0x3c, 0xaa, 0xa5, 0x9d, 0x4a, 0x1a, 0x7b, 0x1f, 0x1a, 0x7b, 0x52, 0xba, 0xc4, 0xba,
0x4d, 0x10, 0x11, 0x19, 0x4d, 0x4d, 0x7a, 0x64, 0x2d, 0xc5, 0x7a, 0xa0, 0x21, 0xb7, 0x7c, 0x50, 0x4a, 0xc0, 0x3d, 0x48, 0x36, 0x3d, 0x48, 0x36, 0x3d, 0x48, 0xeb, 0x44, 0x10, 0x11, 0x4c, 0x25,
0x69, 0x19, 0xa2, 0x7c, 0xf4, 0xbf, 0x7f, 0x4f, 0x44, 0x2c, 0xe0, 0x3d, 0xca, 0x33, 0x7a, 0x34, 0x37, 0x23, 0x65, 0x45, 0x2a, 0x90, 0x38, 0x1a, 0x7c, 0x43, 0xc0, 0x40, 0x4a, 0x93, 0x54, 0x1e,
0x44, 0x85, 0x10, 0x0f, 0xfc, 0x21, 0x4d, 0x4d, 0x7a, 0x64, 0x52, 0xbc, 0x4a, 0xc5, 0x8f, 0xbd, 0x27, 0x38, 0xc7, 0xc7, 0x45, 0x77, 0x45, 0xa4, 0x2e, 0xff, 0x33, 0x48, 0xcb, 0x44, 0x10, 0x0f,
0x3c, 0x1f, 0x4f, 0x69, 0x1a, 0x18, 0x63, 0x87, 0x10, 0x10, 0x19, 0x85, 0x43, 0x47, 0x43, 0x89, 0xc4, 0x28, 0xc7, 0x34, 0x23, 0x65, 0x45, 0x2a, 0x90, 0x3c, 0x2b, 0x1a, 0xc5, 0x45, 0x1d, 0x71,
0x8c, 0x89, 0x83, 0x8c, 0x89, 0x83, 0x8c, 0x20, 0x83, 0x43, 0xe5, 0x4d, 0x43, 0x10, 0x09, 0x54, 0x1f, 0xc0, 0x60, 0x67, 0x10, 0x10, 0x50, 0x3b, 0xe3, 0x25, 0x32, 0x20, 0x6e, 0x46, 0x6e, 0x46,
0x86, 0x80, 0x63, 0x78, 0x86, 0x10, 0x08, 0xc4, 0x29, 0x4f, 0x4a, 0x63, 0x18, 0x00, 0x63, 0x18, 0x6e, 0xfc, 0x27, 0x4b, 0x52, 0x34, 0x4b, 0x10, 0x09, 0x4c, 0x1e, 0x7c, 0x56, 0x69, 0x5d, 0x28,
0x18, 0x0f, 0x87, 0x10, 0x09, 0x54, 0x86, 0x50, 0x66, 0x78, 0x6a, 0x86, 0x10, 0x14, 0x6e, 0x3d, 0xd3, 0x7c, 0x10, 0x08, 0x51, 0x59, 0xe0, 0x74, 0x74, 0x74, 0x1c, 0x74, 0x74, 0x29, 0x38, 0x34,
0x4d, 0x30, 0xa1, 0x4a, 0x73, 0x4e, 0xe0, 0x3d, 0xeb, 0xc4, 0x92, 0x68, 0x4d, 0x10, 0x0c, 0x4b, 0x10, 0x09, 0x4c, 0x1e, 0x7c, 0x39, 0x74, 0x5d, 0x67, 0x1e, 0x7c, 0x10, 0x14, 0x50, 0x40, 0x52,
0x51, 0x51, 0x2f, 0x52, 0x88, 0x43, 0x10, 0x0c, 0xb4, 0x1a, 0x80, 0xca, 0x29, 0x10, 0x0e, 0x57, 0xc2, 0x27, 0xe1, 0x50, 0x2f, 0x2f, 0x45, 0x34, 0x23, 0x92, 0x2d, 0x92, 0x44, 0x10, 0x0c, 0x4c,
0x2a, 0xa3, 0x21, 0x77, 0xcc, 0xa4, 0x1a, 0x80, 0x8f, 0x1b, 0x2f, 0x4f, 0x85, 0x90, 0x76, 0xff, 0x5b, 0x35, 0xc2, 0x21, 0x4b, 0x10, 0x0c, 0x5a, 0x92, 0x1c, 0x59, 0xdc, 0x10, 0x0e, 0x5b, 0x3b,
0xb7, 0x10, 0x0f, 0x84, 0x87, 0x5d, 0x4f, 0x6c, 0x37, 0x72, 0x10, 0x0d, 0x50, 0x57, 0x25, 0xe2, 0xc4, 0x3b, 0x1d, 0xc8, 0x77, 0x59, 0x3c, 0x2b, 0x21, 0xc0, 0x22, 0x45, 0x52, 0x2e, 0x37, 0x3d,
0x1f, 0xbc, 0xa4, 0x4a, 0x1a, 0x18, 0x75, 0xca, 0x3e, 0x4d, 0xc4, 0x3b, 0x36, 0x00, 0x1b, 0x10, 0x45, 0x76, 0x10, 0x0f, 0x52, 0x74, 0x84, 0x78, 0x63, 0x10, 0x0d, 0x50, 0x5b, 0x49, 0xa4, 0x39,
0x0f, 0x39, 0x84, 0x0f, 0x4e, 0x3a, 0x2c, 0x71, 0xff, 0x4e, 0x67, 0x6c, 0x37, 0x65, 0x10, 0x0e, 0x1c, 0x47, 0x47, 0x59, 0x2f, 0x94, 0x39, 0x22, 0xc4, 0x3b, 0x10, 0x0f, 0x50, 0x74, 0x47, 0x50,
0x50, 0x57, 0x25, 0xe2, 0x1f, 0x26, 0x31, 0x46, 0xca, 0x33, 0x7a, 0xc4, 0x2c, 0x23, 0x6d, 0x77, 0xe3, 0x90, 0x3b, 0x3a, 0x2f, 0x81, 0x90, 0x5c, 0x76, 0x10, 0x0e, 0x50, 0x5b, 0x49, 0x2a, 0x79,
0x75, 0x00, 0x46, 0x68, 0xa4, 0x4a, 0x36, 0x00, 0x1b, 0x10, 0x08, 0x6e, 0xa2, 0x7c, 0x66, 0x0f, 0x43, 0x31, 0x4b, 0x3b, 0xe3, 0x48, 0xd0, 0x1c, 0x59, 0xe0, 0xc4, 0xc6, 0x3b, 0x1d, 0x32, 0x10,
0x1a, 0x36, 0x36, 0x66, 0x5c, 0xff, 0x10, 0x0f, 0x57, 0x3a, 0x2c, 0x71, 0x6d, 0x00, 0x3d, 0xff, 0x08, 0x4c, 0x81, 0x4a, 0x1e, 0x54, 0x6d, 0x89, 0x5a, 0x82, 0x5d, 0x10, 0x0f, 0x8b, 0x2f, 0x81,
0x56, 0x6c, 0xd2, 0x3d, 0x92, 0x1d, 0x2f, 0x4a, 0x38, 0x87, 0x21, 0x8e, 0xa4, 0x8d, 0x3c, 0xf3, 0x92, 0x5c, 0x76, 0x53, 0x40, 0x58, 0x7a, 0x36, 0x10, 0x0f, 0x52, 0x74, 0x84, 0x52, 0x2e, 0x62,
0x10, 0x0f, 0x84, 0x87, 0x5d, 0x90, 0x5b, 0x10, 0x07, 0x54, 0x6a, 0x4b, 0x80, 0x78, 0x10, 0x07, 0x62, 0x62, 0x62, 0x10, 0x07, 0x1f, 0x67, 0x4e, 0x74, 0x5d, 0x10, 0x07, 0x1f, 0x67, 0x4e, 0x74,
0x54, 0x6a, 0x4b, 0x80, 0x78, 0x6a, 0x69, 0x10, 0x0e, 0x84, 0x87, 0x8e, 0x74, 0x52, 0x7c, 0xfc, 0x5d, 0x67, 0x36, 0x40, 0x10, 0x0e, 0x1f, 0x60, 0x2a, 0x37, 0x80, 0xcb, 0x54, 0x1e, 0x27, 0x38,
0xba, 0x3b, 0x6b, 0x20, 0x10, 0x06, 0x84, 0x78, 0x87, 0x10, 0x18, 0x57, 0xca, 0xa3, 0x3a, 0xc4, 0xaa, 0xc7, 0x82, 0x2f, 0x39, 0x8c, 0x10, 0x06, 0x1f, 0x47, 0x60, 0x5d, 0x10, 0x18, 0x1f, 0x5b,
0x40, 0xbb, 0x1b, 0x7e, 0x20, 0x2d, 0xc5, 0x92, 0xb4, 0xc5, 0x58, 0x58, 0x58, 0xf0, 0x10, 0x0f, 0x34, 0xc0, 0xa5, 0x93, 0x34, 0x20, 0x20, 0x51, 0xa2, 0xbc, 0xc7, 0x92, 0xbc, 0xc4, 0x92, 0x77,
0x8a, 0x5d, 0x90, 0x5b, 0x10, 0x0e, 0x57, 0x8b, 0x37, 0x1b, 0x4a, 0x2d, 0x4e, 0xf2, 0x90, 0x56, 0x6b, 0x51, 0x79, 0x6b, 0x51, 0x79, 0x6b, 0x51, 0x79, 0x10, 0x0f, 0x8a, 0xd3, 0xbc, 0x45, 0x52,
0x6c, 0x37, 0x2e, 0x37, 0x31, 0x8d, 0x3c, 0xf3, 0x10, 0x0f, 0x8a, 0x5d, 0x4f, 0x6c, 0x37, 0x72, 0x2e, 0x62, 0x62, 0x62, 0x62, 0x10, 0x0e, 0x51, 0x5b, 0x2b, 0x49, 0x2a, 0x57, 0x78, 0x31, 0xcb,
0x63, 0xff, 0x10, 0x0f, 0x57, 0x3a, 0x2c, 0x71, 0xff, 0x4e, 0x67, 0x6c, 0x37, 0x65, 0x18, 0x87, 0x77, 0x45, 0x7a, 0x36, 0x10, 0x0f, 0x8a, 0xd3, 0xbc, 0x45, 0x78, 0x63, 0xd0, 0x67, 0xdc, 0x10,
0x10, 0x0a, 0x8a, 0xe0, 0x3b, 0x36, 0x69, 0x29, 0x28, 0x5c, 0x10, 0x0c, 0x57, 0x2a, 0x25, 0xe2, 0x0f, 0x8b, 0x2f, 0x81, 0x90, 0x5c, 0x76, 0x6d, 0x47, 0x10, 0x0a, 0x4a, 0x5b, 0x77, 0xa2, 0x39,
0x1f, 0xbc, 0xc4, 0x4e, 0x80, 0x87, 0x69, 0x69, 0x75, 0x46, 0x45, 0x8e, 0x36, 0x0f, 0x1b, 0x10, 0x22, 0x50, 0xc0, 0x85, 0x47, 0x60, 0x10, 0x0c, 0x5a, 0x5b, 0x2b, 0x49, 0xa4, 0x39, 0x29, 0x90,
0x09, 0x50, 0x4b, 0x81, 0x50, 0x36, 0x36, 0x66, 0x63, 0x6a, 0x8b, 0x3a, 0x10, 0x0f, 0x8a, 0x5b, 0x5f, 0x0f, 0x6d, 0x43, 0xc8, 0x2a, 0xc2, 0x3a, 0xa4, 0x22, 0x10, 0x09, 0x42, 0x39, 0x74, 0x89,
0x50, 0x3f, 0x76, 0xff, 0xb7, 0x10, 0x0f, 0x57, 0x52, 0x34, 0x7a, 0x90, 0x22, 0x00, 0x8e, 0x48, 0x54, 0x6d, 0x60, 0x28, 0x1e, 0x7c, 0x10, 0x0f, 0x30, 0x5b, 0x62, 0x62, 0x62, 0x62, 0x79, 0x4a,
0x4a, 0x48, 0x21, 0x73, 0x3b, 0x73, 0x7f, 0x21, 0x7b, 0x69, 0x10, 0x14, 0x57, 0xc7, 0x1d, 0x33, 0x34, 0x3d, 0x45, 0x76, 0x10, 0x0f, 0x5b, 0x26, 0x62, 0xea, 0x2d, 0x34, 0x34, 0x39, 0x34, 0x50,
0xc4, 0xca, 0xbc, 0x48, 0x56, 0x2d, 0x2d, 0x39, 0x2d, 0x2d, 0x56, 0xca, 0xaa, 0x7d, 0xab, 0x9d, 0x90, 0x92, 0x82, 0x8d, 0x87, 0x7c, 0x45, 0x10, 0x14, 0x52, 0x5b, 0x34, 0x34, 0xc7, 0x3c, 0xc7,
0x92, 0x34, 0xca, 0xb7, 0x42, 0xaa, 0x9d, 0x3f, 0xca, 0xb0, 0xc5, 0x4d, 0x31, 0x6d, 0x31, 0x6d, 0xc0, 0x34, 0x6f, 0x6f, 0x4a, 0xa7, 0x9d, 0x3c, 0x2f, 0xaa, 0xbd, 0x4a, 0x90, 0x1a, 0x3c, 0x7b,
0x31, 0x6d, 0xf4, 0xbc, 0x10, 0x0f, 0x57, 0x20, 0x4f, 0x6d, 0x8e, 0x73, 0x3b, 0xc7, 0x30, 0xea, 0xd7, 0x48, 0xdf, 0x77, 0x41, 0x53, 0x81, 0xa2, 0x81, 0xa2, 0x81, 0xf2, 0x3d, 0x10, 0x0f, 0x30,
0x7c, 0xf4, 0x92, 0x7c, 0x2a, 0xbf, 0x7f, 0x21, 0xc7, 0x2c, 0xe0, 0xc4, 0x6d, 0x85, 0x10, 0x0f, 0x5b, 0x25, 0x25, 0x3d, 0x2d, 0x5a, 0x2f, 0x2f, 0x39, 0x9c, 0x54, 0x9f, 0x7c, 0x45, 0x29, 0xe3,
0x57, 0x52, 0x34, 0x7a, 0x90, 0x22, 0x0f, 0x8e, 0x48, 0x4a, 0x31, 0x8f, 0x26, 0x7f, 0x21, 0x7b, 0x54, 0xb2, 0xc7, 0x82, 0x90, 0x82, 0x77, 0x45, 0x2d, 0xbc, 0x44, 0x10, 0x0f, 0x5b, 0x26, 0x62,
0x69, 0x8c, 0x2b, 0xd0, 0x7c, 0x00, 0x1d, 0x10, 0x0d, 0x57, 0x6f, 0x1c, 0x46, 0x4d, 0x5f, 0x20, 0xf2, 0x2d, 0x34, 0x34, 0x39, 0x2a, 0x9c, 0x8d, 0x87, 0x7c, 0x45, 0x4a, 0x45, 0x47, 0x46, 0x7c,
0x5f, 0x20, 0x83, 0x77, 0x00, 0x43, 0x10, 0x0f, 0x54, 0x7e, 0x4a, 0x1f, 0x4f, 0x63, 0x6a, 0xe0, 0x30, 0xc0, 0x10, 0x0d, 0x1f, 0x5b, 0x32, 0x7f, 0x46, 0x40, 0x44, 0x40, 0x44, 0x40, 0x44, 0x85,
0x7c, 0x3a, 0x4f, 0x4a, 0x5c, 0x25, 0xfc, 0x1d, 0x10, 0x08, 0x53, 0x5c, 0x78, 0x81, 0x10, 0x0f, 0x4a, 0x3b, 0x7f, 0x10, 0x0f, 0x51, 0x4e, 0xa2, 0x7c, 0x56, 0x69, 0x40, 0xc4, 0x1e, 0x7c, 0xfc,
0x53, 0x69, 0x5c, 0x20, 0x28, 0x86, 0x2a, 0x1c, 0x63, 0x6a, 0xa3, 0x21, 0x1d, 0x10, 0x14, 0x51, 0x45, 0x55, 0x69, 0x28, 0xd3, 0x54, 0xc0, 0x10, 0x08, 0x4a, 0x5d, 0x5d, 0x67, 0xdc, 0x10, 0x0f,
0xc2, 0x5a, 0x1b, 0x2d, 0x3f, 0xb4, 0x1b, 0x7c, 0x10, 0x4e, 0x93, 0x7c, 0x39, 0x74, 0x67, 0xbc, 0x55, 0x1e, 0x7c, 0x30, 0xd2, 0x29, 0x69, 0x7c, 0x30,
0xc0, 0x10, 0x14, 0xc4, 0x4e, 0x19, 0x5b, 0x7c, 0x48, 0x20, 0x5a, 0x2c, 0xc5, 0x20, 0x4d, 0xc2,
0x10,
}; };
static const gU16 mf_rlefont_DejaVuSans24_glyph_offsets_0[95] PROGMEM = { static const gU16 mf_rlefont_DejaVuSans24_glyph_offsets_0[95] = {
0x0000, 0x0003, 0x000b, 0x0014, 0x0039, 0x0063, 0x009d, 0x00c3, 0x0000, 0x0003, 0x000c, 0x0016, 0x0043, 0x006c, 0x00a8, 0x00cf,
0x00c7, 0x00d4, 0x00e0, 0x00f6, 0x0104, 0x0109, 0x0110, 0x0113, 0x00d3, 0x00e0, 0x00ec, 0x0101, 0x010f, 0x0114, 0x011d, 0x0121,
0x0123, 0x013b, 0x0147, 0x015d, 0x0177, 0x0194, 0x01aa, 0x01d0, 0x0130, 0x014a, 0x0157, 0x016d, 0x0186, 0x01a5, 0x01bb, 0x01dd,
0x01e1, 0x0200, 0x0224, 0x022c, 0x0236, 0x024d, 0x025c, 0x0273, 0x01eb, 0x0200, 0x0223, 0x022b, 0x0234, 0x0248, 0x0257, 0x026b,
0x0285, 0x02c6, 0x02e7, 0x02f9, 0x0311, 0x0330, 0x033e, 0x034b, 0x027e, 0x02bf, 0x02df, 0x02f0, 0x0307, 0x0326, 0x0336, 0x0343,
0x036e, 0x0380, 0x0385, 0x038e, 0x03a6, 0x03ac, 0x03de, 0x0413, 0x0361, 0x036f, 0x0375, 0x037e, 0x039c, 0x03a4, 0x03d6, 0x040b,
0x0416, 0x0426, 0x042d, 0x0440, 0x0459, 0x0463, 0x0474, 0x0495, 0x0412, 0x0420, 0x042b, 0x0444, 0x045f, 0x046b, 0x047b, 0x049e,
0x04d2, 0x04f3, 0x0509, 0x051e, 0x0526, 0x0534, 0x053d, 0x054e, 0x04dd, 0x04ff, 0x0515, 0x0528, 0x0533, 0x0541, 0x054c, 0x055e,
0x0557, 0x055e, 0x0572, 0x057b, 0x0590, 0x059f, 0x05ba, 0x05c7, 0x0566, 0x056d, 0x0583, 0x058a, 0x059b, 0x05aa, 0x05c0, 0x05cc,
0x05e1, 0x05e8, 0x05ef, 0x05f8, 0x0605, 0x060a, 0x061f, 0x0625, 0x05d9, 0x05e4, 0x05eb, 0x05f5, 0x0607, 0x060d, 0x062a, 0x0636,
0x0639, 0x0643, 0x0651, 0x065b, 0x0670, 0x067d, 0x0686, 0x069b, 0x0645, 0x0650, 0x065a, 0x0667, 0x067b, 0x0687, 0x0695, 0x06a8,
0x06c5, 0x06df, 0x06f8, 0x0707, 0x0719, 0x071f, 0x072e, 0x06ce, 0x06ec, 0x0703, 0x0714, 0x0728, 0x072f, 0x0742,
}; };
static const struct mf_rlefont_char_range_s mf_rlefont_DejaVuSans24_char_ranges[] = { static const struct mf_rlefont_char_range_s mf_rlefont_DejaVuSans24_char_ranges[] = {
@ -216,8 +216,8 @@ const struct mf_rlefont_s mf_rlefont_DejaVuSans24 = {
4, /* version */ 4, /* version */
mf_rlefont_DejaVuSans24_dictionary_data, mf_rlefont_DejaVuSans24_dictionary_data,
mf_rlefont_DejaVuSans24_dictionary_offsets, mf_rlefont_DejaVuSans24_dictionary_offsets,
64, /* rle dict count */ 68, /* rle dict count */
121, /* total dict count */ 118, /* total dict count */
1, /* char range count */ 1, /* char range count */
mf_rlefont_DejaVuSans24_char_ranges, mf_rlefont_DejaVuSans24_char_ranges,
}; };

View file

@ -11,384 +11,388 @@
#error The font file is not compatible with this version of mcufont. #error The font file is not compatible with this version of mcufont.
#endif #endif
static const gU8 mf_rlefont_DejaVuSans24_aa_dictionary_data[616] PROGMEM = { static const gU8 mf_rlefont_DejaVuSans24_aa_dictionary_data[596] = {
0x8c, 0x81, 0x0e, 0x80, 0x0f, 0x89, 0x03, 0x20, 0x11, 0x81, 0x17, 0x81, 0x01, 0xc4, 0xd1, 0xc4, 0x20, 0x0f, 0x04, 0x81, 0x05, 0x1e, 0x11, 0x0c, 0x81, 0x01, 0x81, 0x0e, 0x81, 0x07, 0x81, 0x0e,
0xcc, 0x80, 0xcd, 0xc1, 0xc7, 0x80, 0x81, 0x17, 0x81, 0x17, 0x81, 0x17, 0x81, 0x17, 0x02, 0x1d, 0x10, 0xc8, 0x80, 0xce, 0xc5, 0xd1, 0x04, 0x0b, 0x84, 0x09, 0x17, 0x81, 0x17, 0x81, 0x06, 0x88,
0x80, 0xce, 0x80, 0xca, 0x08, 0x81, 0x02, 0xcd, 0x80, 0x84, 0x04, 0xca, 0x80, 0x17, 0x88, 0x16, 0x0e, 0x15, 0x12, 0x0a, 0x17, 0x81, 0x02, 0x09, 0x81, 0xce, 0x85, 0x0c, 0x83, 0x85, 0x06, 0xc2,
0x86, 0x01, 0xc2, 0x08, 0x41, 0x1a, 0x01, 0xc1, 0x81, 0x07, 0x81, 0x07, 0x81, 0x05, 0x81, 0x07, 0xc7, 0x03, 0x81, 0x01, 0xc2, 0xcb, 0x80, 0xc8, 0x02, 0x09, 0x81, 0x0c, 0x81, 0x09, 0x81, 0x80,
0x81, 0x06, 0xcb, 0x80, 0xc5, 0x02, 0xc1, 0xc2, 0x0c, 0x8d, 0x0b, 0x8d, 0x11, 0x07, 0x81, 0x0c, 0xcc, 0x03, 0x80, 0xca, 0x14, 0x0d, 0x80, 0x18, 0x05, 0x81, 0x07, 0x81, 0x86, 0x0d, 0x81, 0x01,
0x06, 0x81, 0xc1, 0x01, 0x14, 0xc6, 0x80, 0x82, 0x0b, 0x81, 0x09, 0xc2, 0x80, 0xcd, 0x1f, 0xc7, 0xcd, 0x80, 0x45, 0x07, 0xc1, 0x01, 0xce, 0xc8, 0x80, 0xc6, 0xc1, 0x80, 0xce, 0xc9, 0x80, 0x80,
0xcb, 0x45, 0x15, 0x80, 0xc7, 0x05, 0xc4, 0xc9, 0xc6, 0xc1, 0x87, 0xce, 0xc8, 0xc3, 0xd1, 0xc3, 0xc2, 0x80, 0xcd, 0x1f, 0x1d, 0x81, 0xc3, 0xc1, 0xc6, 0xc1, 0xc1, 0xce, 0x02, 0x81, 0x89, 0xc8,
0xc8, 0xc1, 0x80, 0xce, 0x15, 0xcc, 0xce, 0xc4, 0xc1, 0x0a, 0x81, 0x01, 0xcd, 0xc1, 0x01, 0x81, 0x80, 0x80, 0xc7, 0xc5, 0x02, 0xc5, 0x80, 0xc4, 0xc1, 0x06, 0xc1, 0x81, 0xc4, 0x01, 0xce, 0x80,
0x01, 0x0a, 0x80, 0xcd, 0xce, 0xc4, 0xc9, 0x80, 0xc4, 0xca, 0xc7, 0xcc, 0x8e, 0x0a, 0xc1, 0x81, 0x80, 0xc5, 0x01, 0x80, 0xc8, 0x8c, 0x80, 0xce, 0x1b, 0xcd, 0xca, 0xc9, 0xc4, 0xc1, 0xc4, 0xcb,
0xc3, 0xce, 0xc1, 0x02, 0xc3, 0xca, 0x0f, 0xc1, 0xcd, 0xc8, 0xc1, 0xcd, 0xce, 0xc3, 0xc1, 0xc7, 0xc5, 0x08, 0xc1, 0xcd, 0x0d, 0x81, 0x08, 0x81, 0x0d, 0xce, 0x80, 0xc3, 0xce, 0xcc, 0xc8, 0xcd,
0xc1, 0x80, 0xc8, 0x0b, 0xc1, 0xc3, 0x80, 0xcc, 0x12, 0x80, 0x02, 0x07, 0xce, 0xc5, 0xc1, 0xce, 0xc8, 0xc4, 0xc1, 0x0e, 0x81, 0xc9, 0x41, 0x17, 0xcc, 0x80, 0xc2, 0xc9, 0x01, 0x81, 0xcc, 0xc1,
0x1b, 0x41, 0x19, 0xc8, 0xc2, 0x80, 0xcb, 0xce, 0xc1, 0xce, 0xcc, 0x0e, 0xcb, 0x80, 0x81, 0xcc, 0xc7, 0x80, 0xcd, 0xc9, 0xc2, 0xcd, 0x16, 0xcc, 0xc7, 0xc1, 0xcc, 0x80, 0x01, 0xc4, 0xc5, 0x81,
0x80, 0xc5, 0xcd, 0xc9, 0xcc, 0xc1, 0xc4, 0xcc, 0x80, 0xc5, 0xc2, 0xc6, 0x81, 0xce, 0xc9, 0xc2, 0xc2, 0x01, 0xcd, 0xc1, 0x82, 0xc2, 0xc1, 0xcc, 0x81, 0x80, 0xcb, 0x17, 0x13, 0xc1, 0xc3, 0x32,
0x81, 0xd9, 0xc8, 0x80, 0xce, 0xc2, 0x81, 0x01, 0xc1, 0xc5, 0xc2, 0x01, 0xce, 0x80, 0x10, 0x0d, 0xcd, 0xc2, 0xc2, 0xce, 0x80, 0xc6, 0xcc, 0x80, 0xc9, 0x81, 0x0e, 0x81, 0xc4, 0x81, 0xc1, 0x81,
0xc4, 0x80, 0xc2, 0xcd, 0xc1, 0xca, 0x03, 0x13, 0x15, 0xcd, 0xc2, 0xcc, 0x80, 0xce, 0x80, 0xc1, 0xde, 0xc3, 0x81, 0xc1, 0xc5, 0xc9, 0xc2, 0xc2, 0xc8, 0xcd, 0xc1, 0xc7, 0xc4, 0xc9, 0x6b, 0x34,
0x80, 0xc3, 0xc6, 0xcc, 0x33, 0x08, 0x4f, 0xd4, 0x24, 0x44, 0x06, 0x63, 0x86, 0x3d, 0x02, 0x28, 0x27, 0x1f, 0x86, 0x27, 0x1f, 0x86, 0x27, 0x1f, 0x86, 0x27, 0x1f, 0x58, 0x01, 0x22, 0x35, 0x86,
0x31, 0x23, 0x86, 0x3d, 0x37, 0xf0, 0x37, 0x00, 0x09, 0x0d, 0x23, 0x03, 0x86, 0x3d, 0x63, 0x1e, 0x69, 0x6c, 0x05, 0x1b, 0x0a, 0x86, 0x69, 0x21, 0x04, 0x0b, 0x7a, 0x69, 0x63, 0x24, 0x73, 0x47,
0x21, 0x3d, 0x74, 0x28, 0x5b, 0x43, 0x3e, 0xd4, 0x76, 0x38, 0x05, 0x6c, 0x82, 0x39, 0x28, 0x31, 0x73, 0x0f, 0xdd, 0x19, 0xd4, 0xdd, 0x7f, 0x4a, 0x73, 0x63, 0x39, 0x68, 0x60, 0x0c, 0x7a, 0x3d,
0x23, 0x21, 0x3d, 0x25, 0x3d, 0x01, 0x44, 0x31, 0x23, 0x3e, 0xd4, 0x76, 0x38, 0x05, 0x6c, 0x3e, 0x70, 0x6f, 0x22, 0x63, 0x86, 0x3d, 0x36, 0x05, 0x27, 0x77, 0x3d, 0x58, 0x56, 0x64, 0x0f, 0x56,
0xd4, 0x63, 0x28, 0x31, 0x0c, 0x43, 0x21, 0x3d, 0x63, 0x1e, 0x3e, 0xd4, 0x60, 0x27, 0x23, 0x03, 0x3d, 0x36, 0x05, 0x27, 0x77, 0x3d, 0x07, 0x39, 0x1b, 0x01, 0x7c, 0x3d, 0x63, 0x39, 0x68, 0x60,
0x28, 0x4c, 0x05, 0x0b, 0x4c, 0x3e, 0x3c, 0x82, 0x1f, 0x74, 0x28, 0x5b, 0x71, 0x82, 0x33, 0x28, 0x0c, 0x7a, 0x86, 0x05, 0x27, 0x05, 0x7d, 0x25, 0xd4, 0x39, 0x1b, 0x75, 0x07, 0x00, 0x1e, 0x39,
0x05, 0x71, 0x82, 0x8b, 0x44, 0x31, 0xe7, 0x3d, 0x25, 0x61, 0x8b, 0x38, 0x56, 0x82, 0x26, 0x04, 0x68, 0x60, 0x6c, 0x79, 0x25, 0xd4, 0x5a, 0x24, 0x5c, 0x0f, 0x6f, 0x3c, 0x07, 0x5c, 0x02, 0x3c,
0x1d, 0x88, 0x3f, 0x2c, 0x05, 0x24, 0x2c, 0x52, 0x06, 0x2c, 0x26, 0x02, 0x88, 0x8e, 0xfa, 0x5a, 0x88, 0x04, 0x3c, 0x83, 0x07, 0x1d, 0x4c, 0x26, 0x3b, 0x73, 0x09, 0x46, 0x73, 0x0d, 0x49, 0x0e,
0xd4, 0xdd, 0x87, 0x70, 0x58, 0x52, 0x04, 0x1c, 0x50, 0x86, 0x8a, 0x01, 0x81, 0x33, 0x28, 0x05, 0x61, 0x6e, 0x69, 0x03, 0x2f, 0x08, 0x86, 0x44, 0x87, 0x08, 0xc3, 0x79, 0x87, 0x7d, 0x68, 0x8c,
0x71, 0x82, 0x07, 0x63, 0x28, 0x31, 0x0c, 0x71, 0x82, 0x5b, 0x63, 0x4b, 0x01, 0x04, 0x8a, 0x19, 0x0e, 0x5a, 0x87, 0x0a, 0x1b, 0x06, 0x39, 0x69, 0x87, 0x27, 0x47, 0x87, 0x27, 0x7d, 0x73, 0x0f,
0x57, 0x27, 0x71, 0x2a, 0x1d, 0x0f, 0x09, 0x0f, 0x06, 0x28, 0x25, 0x4c, 0x25, 0x4c, 0x25, 0x4c, 0x51, 0x2c, 0x26, 0x05, 0x2b, 0x05, 0x7d, 0x25, 0x0d, 0x49, 0x87, 0x27, 0x07, 0x39, 0x87, 0x27,
0x25, 0x4c, 0x25, 0x4c, 0x4d, 0x86, 0x3d, 0x6c, 0x4b, 0x7e, 0x80, 0x8b, 0x44, 0x31, 0x23, 0x21, 0x44, 0x87, 0x08, 0x24, 0x5c, 0x03, 0x87, 0x39, 0x68, 0x60, 0x0c, 0x4a, 0x44, 0x1e, 0x6f, 0x22,
0x3d, 0x25, 0x61, 0x03, 0x23, 0x0b, 0x80, 0x73, 0x01, 0x28, 0x3d, 0x7b, 0x27, 0x70, 0x06, 0x0d, 0x63, 0x53, 0x00, 0x1e, 0x05, 0x27, 0x05, 0x7d, 0x00, 0x1e, 0x01, 0x27, 0x47, 0x41, 0x1b, 0xd0,
0x8c, 0x00, 0x86, 0x3d, 0x38, 0x07, 0x63, 0x28, 0x4c, 0x80, 0x73, 0x02, 0x5a, 0x0f, 0x04, 0x01, 0x1e, 0x44, 0x1b, 0x47, 0x86, 0x26, 0x26, 0x26, 0x01, 0x09, 0x42, 0x69, 0x03, 0x2f, 0x08, 0x86,
0x8d, 0x71, 0x50, 0x20, 0x20, 0x02, 0x08, 0x26, 0x86, 0x3d, 0x44, 0x31, 0x79, 0x03, 0x2f, 0x03, 0x19, 0x6d, 0x0d, 0x5c, 0x08, 0x01, 0x29, 0x58, 0x01, 0x62, 0x87, 0x73, 0x36, 0x06, 0x39, 0x0a,
0x71, 0x02, 0x3e, 0x07, 0x24, 0x4f, 0x0a, 0x43, 0x3e, 0x33, 0x2f, 0x05, 0x6c, 0x3e, 0x26, 0x02, 0x86, 0x5c, 0x5f, 0x7f, 0x01, 0x84, 0x7a, 0x67, 0x02, 0x7f, 0x8e, 0x86, 0x39, 0x4e, 0x7f, 0x90,
0x4f, 0x3f, 0x21, 0x37, 0x0f, 0x0f, 0x63, 0x46, 0x0f, 0x6e, 0x22, 0x20, 0x20, 0x20, 0x20, 0x2b, 0x0e, 0x7a, 0x70, 0x79, 0x07, 0x3b, 0x2b, 0x0a, 0x0b, 0x58, 0x71, 0x2c, 0x26, 0x26, 0x26, 0x2d,
0x19, 0x2b, 0x19, 0x0f, 0x87, 0x05, 0x63, 0x44, 0x89, 0x84, 0x6d, 0x05, 0x00, 0x19, 0x57, 0x27, 0x06, 0x3a, 0xd4, 0xc5, 0xca, 0x3f, 0x3f, 0x45, 0x4d, 0x80, 0x08, 0x0e, 0x39, 0x30, 0x48, 0x0e,
0x60, 0x71, 0x82, 0x5b, 0x72, 0x38, 0x05, 0x21, 0x3d, 0x28, 0x71, 0x02, 0x4f, 0x6f, 0x2e, 0x8a, 0x74, 0x19, 0x03, 0x86, 0x39, 0x4e, 0x3d, 0x01, 0x84, 0x7a, 0x67, 0x78, 0x26, 0x26, 0x18, 0x90,
0x09, 0x2c, 0x49, 0x00, 0x61, 0x3d, 0x88, 0x47, 0x1c, 0x47, 0x87, 0x1d, 0x61, 0x3d, 0x2a, 0x20, 0x0d, 0x8a, 0x0d, 0x5f, 0x19, 0x01, 0x0a, 0x40, 0x3b, 0x62, 0x35, 0x0f, 0x65, 0x62, 0x8b, 0x02,
0x04, 0x63, 0x0e, 0x43, 0x87, 0x31, 0x0c, 0x24, 0x88, 0x29, 0x6a, 0x4e, 0x08, 0x38, 0x7b, 0x09, 0x2b, 0x02, 0x1b, 0x47, 0x87, 0x27, 0x1f, 0x86, 0x27, 0x1f, 0x86, 0x27, 0x1f, 0x86, 0x27, 0x29,
0x82, 0x04, 0x5a, 0x85, 0x2d, 0x24, 0x01, 0x82, 0x8a, 0x48, 0x0e, 0x63, 0x35, 0x52, 0x89, 0x05, 0x42, 0x00, 0x27, 0x0e, 0x49, 0x09, 0x73, 0x0c, 0x58, 0x5c, 0x01, 0x2d, 0x2e, 0x1e, 0x38, 0x1e,
0x6c, 0x3e, 0x07, 0x24, 0x62, 0x52, 0x71, 0x37, 0xf0, 0x37, 0xf0, 0x37, 0xf0, 0x37, 0xf0, 0x28, 0x38, 0x30, 0x0d, 0x65,
0xdc, 0x66, 0x06, 0x6c, 0x0e, 0x23, 0x04, 0x50,
}; };
static const gU16 mf_rlefont_DejaVuSans24_aa_dictionary_offsets[175] PROGMEM = { static const gU16 mf_rlefont_DejaVuSans24_aa_dictionary_offsets[170] = {
0x0000, 0x0001, 0x0003, 0x0007, 0x0008, 0x0009, 0x000d, 0x0014, 0x0000, 0x0001, 0x0002, 0x0004, 0x0005, 0x0006, 0x0007, 0x0009,
0x0016, 0x001e, 0x001f, 0x0020, 0x0022, 0x0024, 0x0027, 0x0029, 0x0010, 0x0011, 0x0016, 0x0017, 0x0018, 0x0019, 0x001a, 0x001e,
0x002a, 0x002b, 0x002d, 0x002e, 0x002f, 0x0030, 0x0031, 0x0033, 0x001f, 0x0021, 0x0022, 0x0023, 0x0024, 0x0026, 0x0027, 0x0029,
0x0034, 0x0036, 0x0038, 0x0042, 0x0046, 0x0048, 0x0049, 0x004d, 0x002b, 0x002c, 0x002d, 0x002f, 0x0031, 0x0033, 0x0035, 0x0037,
0x0050, 0x0051, 0x0054, 0x0055, 0x0057, 0x0058, 0x005a, 0x005b, 0x0039, 0x003f, 0x0041, 0x0042, 0x0044, 0x0045, 0x0046, 0x0048,
0x005e, 0x005f, 0x0061, 0x0063, 0x0065, 0x0066, 0x0068, 0x006a, 0x004c, 0x004d, 0x0050, 0x0052, 0x0054, 0x0056, 0x0058, 0x005a,
0x006b, 0x0071, 0x0075, 0x0077, 0x0079, 0x007c, 0x007e, 0x0081, 0x005d, 0x005f, 0x0061, 0x0063, 0x0064, 0x0066, 0x0068, 0x006a,
0x0082, 0x0084, 0x0086, 0x0088, 0x008a, 0x008c, 0x008e, 0x0090, 0x006c, 0x006e, 0x006f, 0x0071, 0x0073, 0x0076, 0x0078, 0x007c,
0x0092, 0x0094, 0x0096, 0x0097, 0x0099, 0x009b, 0x009d, 0x009f, 0x007e, 0x0080, 0x0083, 0x0085, 0x0086, 0x0088, 0x0089, 0x008b,
0x00a1, 0x00a3, 0x00a4, 0x00a6, 0x00a8, 0x00a9, 0x00ab, 0x00ac, 0x008d, 0x008f, 0x0091, 0x0092, 0x0094, 0x009a, 0x009c, 0x009f,
0x00ae, 0x00b0, 0x00b1, 0x00b3, 0x00b5, 0x00b7, 0x00b9, 0x00bb, 0x00a1, 0x00a3, 0x00a4, 0x00a6, 0x00a8, 0x00aa, 0x00ac, 0x00ae,
0x00bc, 0x00be, 0x00bf, 0x00c2, 0x00c4, 0x00c6, 0x00c8, 0x00ca, 0x00b0, 0x00b2, 0x00b4, 0x00b6, 0x00b7, 0x00b9, 0x00bc, 0x00be,
0x00cc, 0x00cf, 0x00d1, 0x00d2, 0x00d4, 0x00d6, 0x00d8, 0x00da, 0x00c0, 0x00c2, 0x00c4, 0x00c5, 0x00c7, 0x00c9, 0x00cb, 0x00cc,
0x00dc, 0x00de, 0x00df, 0x00e0, 0x00e2, 0x00e4, 0x00e6, 0x00e7, 0x00cd, 0x00cf, 0x00d0, 0x00d2, 0x00d5, 0x00d7, 0x00d9, 0x00da,
0x00e8, 0x00e9, 0x00eb, 0x00ed, 0x00f0, 0x00f2, 0x00f4, 0x00f5, 0x00dc, 0x00de, 0x00e0, 0x00e1, 0x00e3, 0x00e5, 0x00e7, 0x00ea,
0x0108, 0x010b, 0x0144, 0x0146, 0x015e, 0x0160, 0x016c, 0x016e, 0x00ec, 0x00ee, 0x010e, 0x0111, 0x0117, 0x0119, 0x0142, 0x0159,
0x0173, 0x017d, 0x0192, 0x0195, 0x0197, 0x019a, 0x01a4, 0x01ab, 0x0166, 0x0168, 0x016f, 0x0177, 0x0188, 0x018d, 0x018f, 0x0191,
0x01b3, 0x01b5, 0x01bd, 0x01bf, 0x01c2, 0x01c9, 0x01cd, 0x01cf, 0x0193, 0x019a, 0x01a0, 0x01c2, 0x01c4, 0x01c8, 0x01cb, 0x01d4,
0x01d3, 0x01d5, 0x01d8, 0x01dc, 0x01f5, 0x01f8, 0x01fa, 0x01ff, 0x01db, 0x01dd, 0x01df, 0x01f2, 0x01f4, 0x01f8, 0x01fb, 0x01ff,
0x0203, 0x0205, 0x0208, 0x020b, 0x0214, 0x0217, 0x021a, 0x021d, 0x0201, 0x0207, 0x020f, 0x0211, 0x0213, 0x021c, 0x021e, 0x0229,
0x021f, 0x0221, 0x0224, 0x0230, 0x0232, 0x023a, 0x023c, 0x0241, 0x0231, 0x023f, 0x0241, 0x0243, 0x0245, 0x0247, 0x0249, 0x024c,
0x024f, 0x0254, 0x0256, 0x0262, 0x0264, 0x0266, 0x0268, 0x0252, 0x0254,
}; };
static const gU8 mf_rlefont_DejaVuSans24_aa_glyph_data_0[4716] PROGMEM = { static const gU8 mf_rlefont_DejaVuSans24_aa_glyph_data_0[4800] = {
0x08, 0x00, 0x10, 0x0a, 0x40, 0xa8, 0x23, 0x2a, 0x0e, 0x0e, 0x2a, 0x0d, 0x0d, 0x2a, 0x0c, 0x0c, 0x08, 0x00, 0x10, 0x0a, 0x2d, 0x4c, 0xae, 0x7e, 0x5c, 0x7e, 0x8a, 0x7e, 0x0d, 0x0d, 0x7e, 0x0c,
0x86, 0x2a, 0x96, 0x9a, 0x10, 0x0b, 0x87, 0x4c, 0x97, 0x7d, 0x97, 0x7d, 0x97, 0x0f, 0xdd, 0x10, 0x0c, 0x7f, 0x81, 0x98, 0x10, 0x0b, 0x4c, 0x50, 0x7f, 0x93, 0x93, 0x93, 0x10, 0x14, 0x3a, 0x18,
0x14, 0x86, 0x1b, 0x08, 0x76, 0x21, 0x05, 0x43, 0x1c, 0x98, 0x03, 0x9b, 0x00, 0x31, 0x63, 0x1c, 0x52, 0x54, 0x53, 0x1d, 0x36, 0x01, 0x2d, 0x09, 0x55, 0x1d, 0x4a, 0x3a, 0x6c, 0x44, 0xb3, 0x85,
0x1f, 0x06, 0x21, 0x04, 0x60, 0x82, 0x70, 0x18, 0x4f, 0x70, 0x18, 0x35, 0x2e, 0x6c, 0x86, 0x0e, 0x2d, 0x01, 0x39, 0x1d, 0x07, 0x46, 0x00, 0x76, 0x5a, 0x3d, 0x36, 0x5b, 0x2b, 0x36, 0x5b, 0x30,
0x0d, 0x1c, 0x06, 0x43, 0x21, 0x03, 0x24, 0x1c, 0x09, 0x8c, 0x21, 0x1f, 0x06, 0x1c, 0x0d, 0xe5, 0x35, 0x7d, 0x3a, 0x0e, 0x0d, 0x19, 0xaf, 0x53, 0x2d, 0x03, 0x3b, 0x1d, 0x09, 0x65, 0xaf, 0x46,
0x0a, 0x8c, 0x82, 0x18, 0x24, 0x4f, 0x18, 0x24, 0x82, 0x08, 0x76, 0x21, 0x05, 0x43, 0x1c, 0x98, 0x1d, 0x0d, 0xe5, 0x0a, 0x65, 0x3d, 0x5b, 0x3b, 0x2b, 0x5b, 0x3b, 0x3d, 0x52, 0x54, 0x53, 0x1d,
0x04, 0x9b, 0x00, 0x31, 0x63, 0x1c, 0x07, 0x76, 0x21, 0x04, 0x60, 0x10, 0x0f, 0x40, 0xec, 0x88, 0x36, 0x01, 0x2d, 0x09, 0x55, 0x1d, 0x4a, 0x3a, 0x6c, 0x01, 0x19, 0x76, 0x85, 0x2d, 0x01, 0x39,
0xcc, 0x2a, 0xb0, 0x31, 0x07, 0x4a, 0xad, 0x08, 0x03, 0x5a, 0x5b, 0x47, 0x5a, 0x09, 0x50, 0x05, 0x1d, 0x07, 0x46, 0x00, 0x76, 0x5a, 0x10, 0x0f, 0x2d, 0x18, 0x3e, 0x3e, 0x0f, 0x3c, 0x8f, 0xbd,
0x01, 0x0f, 0x62, 0x54, 0x5a, 0x0e, 0x8c, 0xf8, 0x2f, 0x3d, 0x58, 0xb0, 0xb8, 0x01, 0x00, 0xb0, 0x66, 0x03, 0x19, 0x01, 0x42, 0x40, 0x19, 0x09, 0x4a, 0x05, 0x01, 0x0f, 0x80, 0x07, 0x0c, 0x19,
0x83, 0x23, 0x0b, 0x76, 0x01, 0x64, 0x03, 0x0b, 0xf3, 0x6c, 0x03, 0x64, 0x7e, 0x6c, 0x80, 0xa6, 0x0e, 0x65, 0xf8, 0x1b, 0x87, 0x01, 0xf8, 0x7f, 0x0c, 0x85, 0x01, 0xfe, 0x7f, 0x88, 0x0e, 0x36,
0x81, 0xcc, 0x85, 0x63, 0x1c, 0xc8, 0x56, 0x1c, 0xc8, 0xa0, 0x6f, 0x0d, 0x08, 0x5e, 0xfe, 0x77, 0x05, 0x01, 0x3a, 0xb3, 0x0b, 0x31, 0x7d, 0x03, 0x2a, 0x8c, 0x7d, 0x58, 0x55, 0x20, 0xcc, 0x01,
0x0d, 0x9b, 0x35, 0xe0, 0x23, 0xf3, 0x4d, 0x82, 0x2e, 0x41, 0x0d, 0xc4, 0x0b, 0x46, 0x81, 0xd4, 0x0a, 0x39, 0x1d, 0xc8, 0x89, 0x1d, 0xc8, 0x03, 0x5c, 0x69, 0x67, 0x03, 0x44, 0x49, 0x06, 0x0d,
0x3a, 0xd4, 0x3a, 0xd4, 0x3a, 0xd4, 0x10, 0x17, 0x6f, 0xb7, 0x0a, 0x0e, 0x0e, 0x0a, 0x02, 0x38, 0x85, 0x30, 0xe0, 0x5c, 0x31, 0x79, 0x69, 0x33, 0x0b, 0x0d, 0x0e, 0x5c, 0x0b, 0x4e, 0x3c, 0x3e,
0x83, 0x6d, 0x2f, 0x68, 0xb2, 0x44, 0x0c, 0x43, 0x3e, 0x7b, 0x06, 0x21, 0x06, 0x60, 0x28, 0x06, 0x3e, 0x3e, 0x0f, 0x10, 0x17, 0x00, 0x5d, 0x35, 0x0a, 0x8a, 0x0a, 0x02, 0x1b, 0x76, 0x5c, 0x02,
0x50, 0x4f, 0x26, 0x02, 0x21, 0x3f, 0x86, 0x68, 0x76, 0x4f, 0x39, 0x31, 0xc7, 0x08, 0x6c, 0x61, 0x62, 0x4f, 0x82, 0x72, 0x0e, 0x01, 0x1b, 0x0c, 0x53, 0x25, 0x08, 0x46, 0xaf, 0x0f, 0x37, 0xaf,
0x39, 0x31, 0xe7, 0x79, 0x03, 0x61, 0x26, 0x02, 0x21, 0x3f, 0x21, 0x0b, 0x9b, 0x35, 0x52, 0x06, 0x4a, 0x2b, 0x42, 0x78, 0x35, 0x4a, 0x3a, 0x4f, 0x59, 0x2e, 0x01, 0x2d, 0x01, 0xc7, 0x08, 0x7d,
0x21, 0x06, 0x60, 0x00, 0x83, 0x6d, 0x35, 0x68, 0xb2, 0x00, 0x0d, 0x43, 0x2e, 0x0a, 0x0e, 0x0e, 0x2d, 0x2e, 0x01, 0x2d, 0x01, 0xf7, 0x35, 0x0f, 0x65, 0x23, 0x42, 0x78, 0x35, 0x4a, 0x2d, 0x0b,
0x0a, 0x02, 0x38, 0x2e, 0x0b, 0x0e, 0x0e, 0x0a, 0x7f, 0x07, 0x50, 0x00, 0x68, 0xb2, 0x35, 0x68, 0x85, 0x30, 0x09, 0x46, 0xaf, 0x5a, 0x76, 0xbe, 0x2b, 0x4f, 0x82, 0x72, 0x0e, 0x44, 0x0d, 0x53,
0xa6, 0x00, 0x7b, 0x06, 0x21, 0x06, 0x60, 0x35, 0x09, 0x6c, 0x21, 0x26, 0x02, 0x21, 0x3f, 0x61, 0x35, 0x0a, 0x8a, 0x0a, 0x02, 0x27, 0x35, 0x0b, 0x8a, 0x0a, 0x78, 0x07, 0x4a, 0x00, 0x4f, 0x82,
0x03, 0x71, 0x02, 0xf0, 0x58, 0x56, 0x61, 0x0b, 0x9b, 0xdc, 0x58, 0x56, 0x4f, 0x05, 0x0f, 0x6d, 0x72, 0x0e, 0x01, 0x30, 0x01, 0x58, 0x57, 0x08, 0x46, 0xaf, 0x5a, 0x30, 0x09, 0x7d, 0x2d, 0x42,
0x86, 0x26, 0x02, 0x21, 0x3f, 0x4f, 0x0d, 0x9c, 0x7b, 0x06, 0x21, 0x06, 0x60, 0x3e, 0x07, 0x63, 0x78, 0x35, 0x4a, 0x23, 0x8b, 0x02, 0x50, 0x01, 0x2d, 0x89, 0x23, 0x0b, 0x85, 0x34, 0x01, 0x2d,
0x44, 0x68, 0xb2, 0x66, 0x2e, 0x0e, 0xa6, 0x44, 0x2e, 0x0a, 0x0e, 0x0e, 0x0a, 0x02, 0x10, 0x13, 0x89, 0x2b, 0x05, 0xbe, 0x00, 0x42, 0x78, 0x35, 0x4a, 0x2b, 0x0d, 0x46, 0x22, 0x08, 0x46, 0xaf,
0x40, 0x01, 0x54, 0xad, 0x08, 0x03, 0x5a, 0x31, 0x0c, 0x2d, 0x81, 0x7b, 0x67, 0x01, 0x62, 0x54, 0x5a, 0x25, 0x07, 0x39, 0x1b, 0x4f, 0x82, 0x72, 0x0e, 0x01, 0x62, 0x83, 0x04, 0x1b, 0x35, 0x0a,
0x81, 0x94, 0x2c, 0x39, 0x88, 0x94, 0x2c, 0x1f, 0x4d, 0x88, 0x56, 0x74, 0x87, 0x03, 0x0d, 0x3c, 0x8a, 0x0a, 0x02, 0x10, 0x13, 0x4b, 0x8f, 0x7c, 0x71, 0x03, 0x20, 0x75, 0xc3, 0x20, 0x21, 0x03,
0x74, 0x1c, 0x5b, 0x63, 0x04, 0x26, 0x89, 0x21, 0x2e, 0x23, 0x4f, 0x7b, 0x4d, 0x2e, 0x26, 0x89, 0x07, 0x0c, 0x20, 0x0d, 0x55, 0x62, 0x87, 0x44, 0xb9, 0x04, 0x73, 0xab, 0x29, 0x89, 0x6f, 0x22,
0x21, 0xc3, 0x4f, 0x0d, 0x76, 0x21, 0x2e, 0xc4, 0x03, 0x00, 0x8a, 0x06, 0x4f, 0x39, 0x21, 0x2e, 0xb3, 0x0d, 0x7a, 0x6f, 0x1d, 0x63, 0x39, 0x04, 0x42, 0x82, 0x2d, 0x35, 0x5c, 0x2b, 0x52, 0x79,
0xc4, 0x7b, 0x6d, 0x4f, 0x0e, 0x8c, 0x44, 0x57, 0x3c, 0x06, 0x61, 0x52, 0x74, 0x44, 0x08, 0x71, 0x35, 0x42, 0x82, 0xaf, 0x7d, 0x2b, 0x42, 0x05, 0x3a, 0x83, 0x0e, 0x03, 0x00, 0x0c, 0x46, 0x00,
0x6d, 0x4f, 0x2e, 0x0e, 0x50, 0x06, 0x7f, 0x03, 0x09, 0x3c, 0x6c, 0x35, 0x03, 0x26, 0x27, 0x43, 0x2e, 0x01, 0x22, 0x83, 0x45, 0xbe, 0x62, 0x0e, 0x65, 0x1b, 0x03, 0x0e, 0x86, 0x46, 0x23, 0x48,
0x83, 0x24, 0x61, 0x31, 0x54, 0x80, 0x73, 0x03, 0x21, 0x83, 0x60, 0x10, 0x07, 0x22, 0x20, 0x9a, 0x6f, 0x1b, 0x52, 0xbe, 0x25, 0x83, 0x0d, 0x06, 0x78, 0x03, 0x09, 0x7a, 0x7d, 0x30, 0x03, 0x0d,
0x10, 0x09, 0x81, 0xb7, 0x6c, 0x2c, 0x09, 0xa6, 0x38, 0xb7, 0x6c, 0x2c, 0x08, 0x76, 0x2c, 0x0d, 0xc3, 0x53, 0x88, 0x0a, 0x30, 0x8f, 0xbd, 0x71, 0x03, 0x2d, 0x88, 0x08, 0x10, 0x07, 0x27, 0xae,
0x6d, 0x88, 0x04, 0x24, 0x2c, 0x07, 0x43, 0x2c, 0x0b, 0xa6, 0x2c, 0x26, 0x02, 0x2c, 0x8b, 0x61, 0x10, 0x09, 0x1c, 0x35, 0x9d, 0x09, 0x55, 0x3c, 0x35, 0x9d, 0x52, 0x05, 0x73, 0x0d, 0x0e, 0x01,
0x3d, 0x2a, 0x8b, 0x2c, 0x26, 0x02, 0x2c, 0x0b, 0xa6, 0x2c, 0x07, 0x43, 0x2c, 0x04, 0x24, 0x2a, 0x3c, 0x76, 0x3b, 0x73, 0x07, 0x53, 0xa8, 0x57, 0xb9, 0x02, 0x73, 0x58, 0x01, 0x62, 0x87, 0x7e,
0x0d, 0x6d, 0x2c, 0x08, 0x76, 0x66, 0xb7, 0x6c, 0x2a, 0x09, 0xa6, 0x66, 0xb7, 0x6c, 0x10, 0x09, 0x58, 0x44, 0xb9, 0x02, 0xa8, 0x04, 0x73, 0x07, 0x53, 0x29, 0x76, 0x3b, 0x7e, 0x0d, 0x0e, 0x01,
0x22, 0x70, 0x02, 0x2c, 0x04, 0x9b, 0x2a, 0x70, 0x02, 0x2c, 0x06, 0x60, 0x2c, 0x68, 0x0d, 0x2a, 0x73, 0x52, 0x05, 0x29, 0x35, 0x7d, 0x7e, 0x09, 0x55, 0x29, 0x35, 0x7d, 0x10, 0x09, 0xba, 0xa8,
0x0a, 0x8c, 0x2c, 0x07, 0x43, 0x2c, 0x04, 0x6c, 0x2c, 0x3f, 0xb9, 0xfa, 0xb9, 0x3f, 0x2c, 0x04, 0x02, 0x29, 0x76, 0x85, 0x7e, 0x0b, 0x49, 0x3c, 0xaf, 0x5a, 0x73, 0x4f, 0x0d, 0x7e, 0x0a, 0x65,
0x6c, 0x2c, 0x07, 0x43, 0x2c, 0x0b, 0xa6, 0x88, 0x68, 0x0d, 0x2c, 0x06, 0x60, 0x2c, 0x70, 0x02, 0x73, 0x07, 0x53, 0x29, 0x76, 0x9d, 0x02, 0x94, 0x47, 0x2c, 0x92, 0x02, 0x94, 0x04, 0x9d, 0x07,
0x88, 0x04, 0x9b, 0x2c, 0x70, 0x02, 0x10, 0x0c, 0x22, 0xcc, 0x2a, 0xb0, 0x7a, 0x02, 0xe8, 0x2e, 0x53, 0xa8, 0x04, 0x29, 0x4f, 0x0d, 0x3c, 0xaf, 0x5a, 0xa8, 0x02, 0x3c, 0x76, 0x85, 0xa8, 0x02,
0x7a, 0x6f, 0x59, 0x24, 0x03, 0x0f, 0x59, 0x24, 0x04, 0x00, 0xb7, 0x08, 0xc4, 0x6b, 0x86, 0xb7, 0x10, 0x0c, 0x18, 0x3e, 0x0f, 0x7f, 0x09, 0x8d, 0xc8, 0x6d, 0x09, 0x69, 0x03, 0x0a, 0x3b, 0x03,
0x08, 0xc4, 0x6b, 0x81, 0x59, 0x24, 0x03, 0x0f, 0x59, 0x24, 0x03, 0x6f, 0x7a, 0x02, 0xe8, 0x2e, 0x65, 0x0a, 0x3b, 0x03, 0x19, 0x35, 0x08, 0x58, 0x45, 0x02, 0x1d, 0x35, 0x08, 0x58, 0x45, 0x78,
0x7a, 0x5a, 0xd4, 0x3a, 0xd4, 0x10, 0x14, 0x5a, 0x96, 0x20, 0x9a, 0x82, 0xe0, 0x18, 0x66, 0xe0, 0xb3, 0x0a, 0x3b, 0x03, 0x65, 0x0a, 0x3b, 0x03, 0x69, 0x09, 0x8d, 0xc8, 0x6d, 0x09, 0x7f, 0x3e,
0x18, 0x81, 0x20, 0x9a, 0x10, 0x08, 0x42, 0x95, 0x10, 0x09, 0x8e, 0x96, 0x6a, 0xf8, 0x27, 0x5a, 0x0f, 0x10, 0x14, 0x69, 0x81, 0xae, 0x69, 0xe0, 0x5b, 0xba, 0xe0, 0x5b, 0x20, 0xa4, 0x10, 0x08,
0xd4, 0x27, 0x10, 0x08, 0x42, 0x9a, 0x10, 0x08, 0x1b, 0x03, 0x50, 0x2c, 0x08, 0x60, 0x2c, 0x0c, 0x43, 0x87, 0x2c, 0x29, 0x35, 0x94, 0x05, 0x99, 0x10, 0x09, 0x5d, 0x81, 0x81, 0x6b, 0xc3, 0x7f,
0xa6, 0x38, 0xb7, 0x23, 0x2c, 0x06, 0x24, 0x2c, 0xa2, 0x3a, 0x31, 0x8b, 0x88, 0xb1, 0x1c, 0x09, 0xc3, 0x10, 0x08, 0x43, 0x87, 0x26, 0x10, 0x08, 0x1d, 0xb3, 0x94, 0x08, 0x5a, 0x73, 0x0c, 0x55,
0x43, 0x2c, 0xa3, 0x3a, 0x03, 0x50, 0x2c, 0x07, 0x9b, 0x2c, 0x0c, 0xa6, 0x3a, 0x31, 0x0f, 0x6d, 0x3c, 0x35, 0x5c, 0x3c, 0xaf, 0x3b, 0xa8, 0x06, 0x29, 0x01, 0x58, 0x01, 0x29, 0x05, 0x39, 0x73,
0x88, 0xc3, 0x2c, 0x29, 0x06, 0x2c, 0x80, 0x02, 0x88, 0xbb, 0x2c, 0x08, 0x60, 0x2c, 0xa3, 0x10, 0x09, 0x53, 0x73, 0xc0, 0x27, 0xb3, 0x94, 0x70, 0xbc, 0x0c, 0x55, 0x20, 0xa3, 0x01, 0x7f, 0xaf,
0x0f, 0x1b, 0x06, 0x4a, 0x6e, 0x06, 0x64, 0x0b, 0x27, 0x6c, 0x81, 0x7b, 0x67, 0x01, 0x7e, 0x0e, 0x9d, 0x0a, 0x46, 0x73, 0xbb, 0x3c, 0x76, 0x39, 0x73, 0x08, 0x5a, 0x73, 0xc0, 0x10, 0x0f, 0x18,
0x60, 0x6f, 0x79, 0x03, 0x28, 0x03, 0x39, 0x35, 0x06, 0x24, 0x38, 0x29, 0x06, 0x82, 0x0a, 0x76, 0x84, 0x8a, 0x0c, 0x06, 0x2a, 0x0b, 0x24, 0x7d, 0x20, 0x21, 0x05, 0x0e, 0x5a, 0x3d, 0x35, 0x0f,
0x38, 0x05, 0x24, 0x82, 0xa3, 0x44, 0x03, 0x63, 0x82, 0x9f, 0x71, 0x25, 0x61, 0x8b, 0x44, 0x31, 0x65, 0x22, 0x8b, 0x01, 0x23, 0xaf, 0x3b, 0x27, 0x0a, 0x46, 0x3d, 0x0a, 0x59, 0x1b, 0x05, 0x3b,
0x23, 0x82, 0xa3, 0x44, 0x03, 0x63, 0x82, 0x0a, 0x76, 0x38, 0x05, 0x24, 0x82, 0x06, 0x24, 0x38, 0x3d, 0xc0, 0x27, 0x03, 0x39, 0x3d, 0x58, 0x44, 0xa3, 0x41, 0x3a, 0x1a, 0x64, 0x0f, 0x44, 0xa3,
0x29, 0x06, 0x82, 0x79, 0x03, 0x28, 0x03, 0x39, 0x82, 0x7b, 0x67, 0x01, 0x7e, 0x0e, 0x60, 0x81, 0x3d, 0xc0, 0x27, 0x03, 0x39, 0x3d, 0x0a, 0x59, 0x1b, 0x05, 0x3b, 0x23, 0xaf, 0x3b, 0x27, 0x0a,
0x0b, 0x27, 0x6c, 0x64, 0x06, 0x4a, 0x6e, 0x06, 0x10, 0x0f, 0x00, 0x22, 0x77, 0x0a, 0x80, 0xb0, 0x46, 0x30, 0x35, 0x0f, 0x65, 0x22, 0x8b, 0x01, 0x69, 0x21, 0x05, 0x0e, 0x5a, 0x20, 0x0b, 0x24,
0x27, 0xb0, 0x73, 0x06, 0x02, 0x20, 0xa8, 0x1d, 0x64, 0x2b, 0x1a, 0x10, 0x0f, 0x22, 0x77, 0x0a, 0x7d, 0x2a, 0x84, 0x8a, 0x0c, 0x06, 0x10, 0x0f, 0x1c, 0x02, 0x06, 0x0a, 0x0e, 0x86, 0x7f, 0xc3,
0x5d, 0x0e, 0x73, 0x03, 0x81, 0x47, 0x43, 0x5a, 0x73, 0x05, 0x5e, 0xc1, 0xa6, 0x2c, 0x08, 0x6c, 0x7f, 0x71, 0x06, 0x02, 0xa4, 0xae, 0x7f, 0x51, 0x19, 0x51, 0x10, 0x0f, 0x2d, 0x5d, 0x33, 0x0b,
0xb9, 0x49, 0x00, 0xbb, 0x2c, 0x0c, 0x43, 0x88, 0x52, 0x4d, 0x3a, 0x07, 0x23, 0x03, 0x3a, 0x1f, 0x0d, 0x5c, 0x71, 0x03, 0x30, 0xd4, 0x40, 0x53, 0x19, 0x67, 0x05, 0x7b, 0x80, 0x48, 0x55, 0x73,
0xa6, 0x3a, 0x1f, 0xa6, 0x3a, 0x1f, 0x76, 0x3a, 0x1f, 0x76, 0x3a, 0x1f, 0x76, 0x3a, 0x1f, 0x76, 0x08, 0x9d, 0x47, 0x92, 0x04, 0x39, 0x73, 0x0c, 0x53, 0x29, 0x48, 0x79, 0x3c, 0x07, 0x5c, 0x03,
0x88, 0x2b, 0x39, 0x35, 0x2b, 0x39, 0x10, 0x0f, 0x5a, 0xb7, 0x41, 0x0d, 0x23, 0x0b, 0x05, 0x1c, 0x3c, 0x70, 0x55, 0x3c, 0x70, 0x55, 0x3c, 0x70, 0x59, 0x7f, 0x70, 0x59, 0x7f, 0x70, 0x59, 0x7f,
0x2d, 0x24, 0x81, 0x0c, 0x07, 0x5e, 0x62, 0x7b, 0x9c, 0x64, 0x07, 0x63, 0x2c, 0x79, 0xb9, 0x06, 0x70, 0x59, 0x3c, 0x9e, 0x01, 0x3d, 0x9e, 0x01, 0x10, 0x0f, 0x19, 0xb3, 0x08, 0x0b, 0x0e, 0x5c,
0x24, 0x44, 0xb7, 0x07, 0x23, 0x03, 0x81, 0xe2, 0x6c, 0x03, 0x81, 0xe0, 0x78, 0x01, 0x87, 0x31, 0x61, 0x1d, 0x40, 0x3b, 0x20, 0x74, 0x4d, 0x80, 0x52, 0x46, 0x73, 0x07, 0x39, 0x29, 0x35, 0x86,
0x04, 0x29, 0x7c, 0x2c, 0x08, 0x6c, 0xb9, 0x49, 0x00, 0x08, 0x6c, 0x82, 0x0d, 0x08, 0x04, 0x02, 0x92, 0x06, 0x3b, 0x3c, 0x33, 0x5c, 0x03, 0x20, 0xe2, 0x7d, 0x03, 0x1d, 0xe2, 0x5c, 0x09, 0x01,
0x01, 0x31, 0x04, 0x29, 0xa6, 0x82, 0x2b, 0x67, 0x82, 0x2e, 0x41, 0x0d, 0xc4, 0x0b, 0x5f, 0x10, 0x3c, 0x60, 0x0a, 0x5c, 0x02, 0x73, 0x08, 0x9d, 0x47, 0x92, 0x08, 0x7d, 0x3d, 0x74, 0x4d, 0x2d,
0x0f, 0x21, 0x1b, 0x03, 0x3c, 0x88, 0x4a, 0x71, 0x3a, 0x1f, 0x1f, 0xb0, 0x68, 0x0d, 0xfe, 0xb0, 0x60, 0x0a, 0x86, 0x57, 0x1e, 0xc3, 0x5c, 0x05, 0x69, 0x03, 0x07, 0x0b, 0x58, 0x5c, 0x0b, 0x07,
0x0a, 0xa6, 0xfa, 0x64, 0x04, 0x6c, 0xf0, 0x64, 0x26, 0x02, 0xf0, 0x1c, 0x07, 0x60, 0xdc, 0x81, 0x01, 0x10, 0x0f, 0x7f, 0xb3, 0x7a, 0x29, 0xbd, 0x0f, 0x3c, 0x07, 0x53, 0x86, 0x7f, 0x4f, 0x0d,
0x3f, 0x01, 0xdc, 0x81, 0x33, 0xf0, 0x5a, 0x05, 0x6c, 0x21, 0xdc, 0x5a, 0xa3, 0x00, 0xdc, 0x5a, 0x6e, 0x7f, 0x0a, 0x55, 0x6e, 0x1d, 0x76, 0x7d, 0x50, 0x2a, 0x0d, 0x49, 0x50, 0x1d, 0x07, 0x5a,
0x18, 0x35, 0x18, 0x3a, 0x20, 0x10, 0x0f, 0x00, 0x22, 0x2b, 0x81, 0x2b, 0x81, 0x20, 0x71, 0x4a, 0x34, 0x19, 0x35, 0x0f, 0x79, 0x34, 0x20, 0x36, 0x05, 0x1a, 0x19, 0x05, 0x7d, 0x00, 0x1a, 0x19,
0x0e, 0x0d, 0x6b, 0x1c, 0x2d, 0x51, 0x81, 0x0b, 0x06, 0x02, 0x01, 0x7e, 0x8a, 0x7c, 0x2c, 0x0c, 0xc0, 0x00, 0x1a, 0x19, 0x5b, 0x30, 0x40, 0x32, 0x87, 0x9f, 0x10, 0x0f, 0x1c, 0x28, 0x2d, 0x28,
0x60, 0x2c, 0xc5, 0xb9, 0x49, 0x00, 0xc5, 0x3a, 0x31, 0x0c, 0x60, 0x6f, 0x0c, 0x07, 0x03, 0x7f, 0x50, 0xb5, 0x0c, 0x8a, 0x67, 0x02, 0x1d, 0xc3, 0x5c, 0x04, 0x20, 0x0b, 0x06, 0x78, 0x8c, 0x0c,
0x7e, 0x8a, 0x6d, 0x6f, 0x2d, 0x23, 0x03, 0xb7, 0x41, 0x0d, 0xad, 0x5f, 0x10, 0x0f, 0x00, 0x1b, 0x5c, 0x02, 0x73, 0x0c, 0x5a, 0x29, 0x76, 0x94, 0x47, 0x92, 0x04, 0x4a, 0x29, 0x75, 0x08, 0x69,
0x07, 0x4a, 0x6e, 0x09, 0x03, 0x81, 0x84, 0x2d, 0xb7, 0x0e, 0x6c, 0x4b, 0x2e, 0x8d, 0x5a, 0x0b, 0x74, 0x03, 0x44, 0x8c, 0x0c, 0xbe, 0x30, 0x40, 0x5c, 0x03, 0xb3, 0x08, 0xbd, 0xb2, 0x01, 0x10,
0x9b, 0x88, 0x03, 0x50, 0x2c, 0x08, 0x43, 0x2c, 0x0b, 0x8c, 0x59, 0xa5, 0x80, 0x1f, 0x27, 0x51, 0x0f, 0x00, 0x18, 0x07, 0xbd, 0x71, 0x03, 0x20, 0x72, 0x40, 0x19, 0x83, 0x0b, 0x68, 0x35, 0x84,
0x35, 0xe0, 0x9b, 0x02, 0x2e, 0x52, 0x7c, 0x21, 0x3d, 0x6c, 0x44, 0x0b, 0x9b, 0x82, 0x80, 0xa6, 0x19, 0x0b, 0x85, 0x27, 0xb3, 0x94, 0x08, 0x53, 0xa8, 0x03, 0x03, 0x0a, 0x0e, 0x4a, 0x8d, 0x19,
0x44, 0xc5, 0x82, 0x0c, 0x39, 0x86, 0x31, 0x23, 0x82, 0x0a, 0x39, 0x86, 0x31, 0x23, 0x82, 0x3b, 0x0e, 0x53, 0x24, 0x5c, 0x04, 0x87, 0x6a, 0x78, 0x6d, 0x5c, 0x78, 0x1e, 0x7d, 0x1b, 0x0b, 0x85,
0xa6, 0x44, 0xc5, 0x82, 0x68, 0x6c, 0x44, 0x0b, 0x60, 0x6f, 0x7b, 0x9b, 0x02, 0x2e, 0x52, 0x7c, 0x3d, 0x58, 0x55, 0x22, 0x76, 0x4a, 0x3d, 0x7c, 0x01, 0xa3, 0x3d, 0x0a, 0x86, 0x01, 0xa3, 0x23,
0x5a, 0x29, 0x27, 0x51, 0x1c, 0x05, 0x0b, 0xa5, 0x10, 0x0f, 0x22, 0x2b, 0x19, 0x2b, 0x63, 0x2c, 0xaf, 0x0f, 0x55, 0x22, 0x76, 0x4a, 0x3d, 0x4f, 0x7d, 0x1b, 0x0b, 0x5a, 0x69, 0x08, 0x6a, 0x78,
0xa2, 0x38, 0xb7, 0x0f, 0x6d, 0x88, 0x08, 0x9b, 0x2c, 0x0e, 0x8c, 0x88, 0xb1, 0x1c, 0x8a, 0x06, 0x6d, 0x5c, 0x02, 0x19, 0x0a, 0x24, 0x5c, 0x04, 0x1d, 0x05, 0xad, 0x02, 0x10, 0x0f, 0x4c, 0x28,
0x88, 0xa0, 0x01, 0x88, 0x09, 0x9b, 0x88, 0x68, 0x8c, 0x88, 0x06, 0x63, 0x2c, 0x72, 0x88, 0xa0, 0x51, 0x0c, 0xa8, 0x06, 0x3c, 0x35, 0xbe, 0x7f, 0x52, 0xbc, 0x0e, 0x65, 0x29, 0x05, 0x39, 0x73,
0x2c, 0x09, 0x60, 0x3a, 0x31, 0x80, 0x02, 0x88, 0xc3, 0x2c, 0x72, 0x10, 0x0f, 0x40, 0x53, 0x26, 0x0c, 0x46, 0x27, 0xb3, 0xbe, 0x7f, 0x09, 0x85, 0x29, 0x4f, 0x65, 0x29, 0xa9, 0x73, 0x6c, 0x05,
0x50, 0x0a, 0x04, 0x81, 0x09, 0x2d, 0x9b, 0x6f, 0x3b, 0x9b, 0x5e, 0xc1, 0x9c, 0x3e, 0x0c, 0x43, 0x27, 0xb3, 0x5c, 0x73, 0x09, 0x5a, 0x29, 0x01, 0xbb, 0x7f, 0xaf, 0x9d, 0x6c, 0x05, 0x10, 0x0f,
0x38, 0x07, 0x63, 0x82, 0x39, 0x44, 0x56, 0x82, 0x8b, 0x44, 0x31, 0x50, 0x82, 0x29, 0x06, 0x38, 0x1c, 0x76, 0x0a, 0x0d, 0x86, 0x5e, 0x04, 0x20, 0x09, 0xc3, 0x6a, 0x30, 0xaf, 0x6a, 0x4d, 0x80,
0x07, 0x24, 0x35, 0x2e, 0x0e, 0x9b, 0x5e, 0xc1, 0x7c, 0x82, 0x2e, 0x0a, 0x27, 0x24, 0x02, 0x5a, 0x48, 0x46, 0x3d, 0x0c, 0x53, 0x27, 0x07, 0x39, 0x00, 0x1e, 0x56, 0x3d, 0x58, 0x01, 0x27, 0x01,
0x75, 0x27, 0x63, 0x04, 0x6f, 0x03, 0x0f, 0x9b, 0x5e, 0xc1, 0x8c, 0x82, 0x0b, 0x43, 0x38, 0x07, 0x4a, 0x3d, 0x0a, 0x46, 0x27, 0x07, 0x3b, 0x3d, 0x83, 0x09, 0x4d, 0x80, 0x09, 0x5c, 0x02, 0x3d,
0x6c, 0x82, 0x8b, 0x44, 0x31, 0x23, 0x82, 0x8b, 0x44, 0x31, 0x23, 0x82, 0x0c, 0x43, 0x38, 0x07, 0x35, 0x0a, 0x24, 0x3b, 0x02, 0x69, 0x76, 0x0c, 0x24, 0x39, 0x04, 0x69, 0x03, 0x6a, 0x4d, 0x80,
0x63, 0x82, 0x3b, 0x9b, 0x5e, 0xc1, 0x9c, 0x4f, 0x09, 0x2d, 0x9b, 0x81, 0x53, 0x26, 0x50, 0x0a, 0x48, 0x65, 0x3d, 0x0b, 0x53, 0x27, 0x07, 0x7d, 0x3d, 0x58, 0x44, 0xa3, 0x3d, 0x58, 0x44, 0xa3,
0x04, 0x10, 0x0f, 0x81, 0xb7, 0x90, 0x0b, 0x05, 0x1c, 0x04, 0x0e, 0x27, 0x24, 0xb7, 0x0e, 0x9b, 0x3d, 0x0c, 0x53, 0x27, 0x07, 0x39, 0x23, 0xaf, 0x6a, 0x4d, 0x80, 0x48, 0x46, 0x69, 0x09, 0xc3,
0x02, 0x2e, 0x52, 0x43, 0x6f, 0x08, 0x6c, 0x44, 0x70, 0x6d, 0x82, 0x94, 0x44, 0x83, 0x9c, 0x3e, 0x6a, 0x19, 0x76, 0x0a, 0x0d, 0x86, 0x5e, 0x04, 0x10, 0x0f, 0x4b, 0x6d, 0x0d, 0x5c, 0x61, 0x20,
0x8b, 0x44, 0x56, 0x0a, 0x82, 0x39, 0x28, 0x56, 0x0c, 0x82, 0xa3, 0x28, 0x83, 0x23, 0x82, 0x09, 0x76, 0x2f, 0x0a, 0x19, 0x83, 0x8d, 0x35, 0x48, 0x53, 0x69, 0x08, 0x7d, 0x1b, 0x0b, 0xbe, 0x23,
0x24, 0x44, 0x0b, 0x3c, 0x35, 0x2e, 0x0e, 0x9b, 0x02, 0x2e, 0x09, 0x71, 0x19, 0x05, 0x2d, 0x07, 0x0d, 0x55, 0x1b, 0x88, 0x06, 0x3d, 0x58, 0x01, 0x1b, 0x89, 0x0a, 0x00, 0x1e, 0x01, 0x1b, 0x89,
0x23, 0xb7, 0x90, 0x0a, 0x03, 0x03, 0x6c, 0x2c, 0x07, 0x60, 0x2c, 0xa3, 0x3a, 0x09, 0x6c, 0x5a, 0x0c, 0x3d, 0xc0, 0x1b, 0x88, 0x0e, 0x3d, 0x09, 0x3b, 0x1b, 0x0b, 0x7a, 0x3d, 0x83, 0x09, 0x78,
0x0c, 0x06, 0x5e, 0x01, 0x04, 0x70, 0x7c, 0x5a, 0x2d, 0x89, 0x81, 0x03, 0x09, 0x5d, 0x6e, 0x5f, 0x6d, 0x31, 0x69, 0x05, 0xc3, 0x53, 0x5c, 0x19, 0x6d, 0x0d, 0x5c, 0x0a, 0x03, 0x03, 0x9d, 0x07,
0x10, 0x08, 0x69, 0x6a, 0x9a, 0x64, 0x30, 0x9a, 0x10, 0x08, 0x69, 0x6a, 0x9a, 0x64, 0x30, 0x95, 0x5a, 0x73, 0xc0, 0x29, 0x09, 0x7d, 0x19, 0x0c, 0x06, 0x78, 0x60, 0x0b, 0x5c, 0x02, 0x19, 0xc3,
0x10, 0x14, 0x64, 0x8e, 0x96, 0x31, 0x54, 0x87, 0x7e, 0x0b, 0x3c, 0x1c, 0x45, 0x0e, 0x71, 0x24, 0x4a, 0x78, 0xb3, 0x09, 0x42, 0xb2, 0x01, 0x10, 0x08, 0x6b, 0x98, 0x81, 0x81, 0x81, 0x9f, 0x10,
0x05, 0x6f, 0xa9, 0xac, 0x82, 0xa7, 0x6b, 0x5a, 0x29, 0x78, 0x04, 0x66, 0x3d, 0x6c, 0x01, 0x3a, 0x08, 0x6b, 0x98, 0x81, 0x81, 0x81, 0x26, 0x29, 0x35, 0x94, 0x05, 0x99, 0x10, 0x14, 0x2b, 0x18,
0x29, 0x78, 0x04, 0x87, 0xa7, 0x6b, 0x87, 0xa9, 0xac, 0x87, 0x45, 0x0e, 0x71, 0x24, 0x05, 0x87, 0x81, 0x81, 0x8f, 0x0c, 0x7f, 0x8c, 0x0b, 0x7a, 0x1d, 0x90, 0x0e, 0x86, 0x3b, 0x05, 0x69, 0x8e,
0x7e, 0x0b, 0x3c, 0x88, 0x31, 0x54, 0x10, 0x14, 0x8e, 0x30, 0x55, 0x55, 0x86, 0x96, 0x55, 0x55, 0xb4, 0x69, 0x0a, 0x86, 0x5c, 0x5f, 0x22, 0x87, 0x7d, 0x01, 0x3c, 0xaa, 0x0a, 0x05, 0x7f, 0x8c,
0x10, 0x14, 0x66, 0x8e, 0x96, 0x0c, 0x5f, 0x61, 0x3d, 0x6c, 0x05, 0x3a, 0x05, 0x29, 0x78, 0x04, 0x0b, 0x7a, 0x73, 0x8f, 0x0c, 0x10, 0x14, 0x4b, 0x6b, 0x2c, 0x5b, 0x2b, 0x5b, 0xc7, 0x18, 0x81,
0x87, 0xa7, 0x6b, 0x87, 0xa9, 0xac, 0x87, 0x45, 0x0e, 0x71, 0x24, 0x87, 0x31, 0x0b, 0x3c, 0x64, 0x9e, 0xd3, 0x2e, 0x5b, 0x10, 0x14, 0x1c, 0x81, 0x81, 0x74, 0x01, 0x3c, 0xe0, 0x61, 0x3c, 0x05,
0x45, 0x0e, 0x71, 0x24, 0x5a, 0xa9, 0xac, 0x82, 0xa7, 0x6b, 0x6f, 0x05, 0x29, 0x78, 0x04, 0x38, 0xaa, 0x0a, 0x3c, 0x01, 0x0b, 0x7a, 0x2a, 0x90, 0x0e, 0x86, 0x3b, 0x19, 0x8e, 0xb4, 0x3d, 0x05,
0x3d, 0x6c, 0x05, 0x01, 0x87, 0x0c, 0x5f, 0x10, 0x0d, 0x5a, 0xb7, 0x09, 0x26, 0x73, 0x01, 0x1c, 0x0a, 0x86, 0x5c, 0x5f, 0x19, 0xe0, 0x61, 0x01, 0x7f, 0x74, 0x01, 0x10, 0x0d, 0x1c, 0x6d, 0x42,
0x3b, 0x27, 0x89, 0x81, 0x50, 0x46, 0x01, 0x04, 0x0d, 0x24, 0x81, 0x09, 0x01, 0x28, 0x04, 0x23, 0x71, 0x01, 0x19, 0xaf, 0xc3, 0x82, 0x20, 0x4a, 0x4e, 0x60, 0x0d, 0x3b, 0x20, 0x09, 0x01, 0x3a,
0x2c, 0x56, 0x2c, 0xb1, 0x81, 0x57, 0x76, 0x3a, 0x57, 0x24, 0x44, 0xb7, 0x0e, 0x24, 0x88, 0x0a, 0x76, 0x5c, 0x73, 0x89, 0x73, 0x05, 0x39, 0x27, 0xb3, 0x58, 0x05, 0x1b, 0xb3, 0x0e, 0x3b, 0x3c,
0x24, 0x2c, 0x8b, 0x2c, 0x1d, 0x96, 0x9a, 0x10, 0x18, 0x82, 0x1b, 0xb7, 0x41, 0x5d, 0x50, 0x0a, 0x83, 0x0a, 0x29, 0x0a, 0x3b, 0x73, 0x58, 0x01, 0x62, 0x87, 0x2c, 0x81, 0x9f, 0x10, 0x18, 0x2b,
0x46, 0x35, 0x2e, 0x09, 0x47, 0x23, 0x06, 0x61, 0x04, 0x80, 0x24, 0x05, 0x02, 0x31, 0x77, 0x70, 0x81, 0x33, 0x0b, 0x0d, 0x58, 0x5e, 0x4e, 0x30, 0x35, 0x48, 0x40, 0x5c, 0x06, 0x2b, 0x76, 0x58,
0x6c, 0x3e, 0x83, 0x6c, 0x02, 0x2f, 0x04, 0x0d, 0x6c, 0x38, 0x2e, 0x0e, 0x60, 0x61, 0x84, 0x60, 0x3b, 0x05, 0x78, 0x01, 0x02, 0x06, 0x36, 0x7d, 0x25, 0x88, 0x0b, 0x02, 0xba, 0x76, 0x0d, 0x7d,
0x38, 0x0a, 0x6c, 0x86, 0x05, 0x4a, 0x0e, 0x0b, 0x05, 0x4e, 0x79, 0x02, 0x28, 0xa0, 0x58, 0x08, 0xba, 0x83, 0x08, 0x23, 0x72, 0x5a, 0x27, 0x0a, 0x7d, 0x3a, 0x05, 0x0c, 0x8a, 0x61, 0x6e, 0x35,
0x27, 0x43, 0xe7, 0x09, 0x60, 0x28, 0x08, 0x60, 0x21, 0x83, 0x9b, 0x02, 0xc1, 0xe7, 0xbb, 0x28, 0x0f, 0x49, 0x22, 0x03, 0xbe, 0x08, 0x24, 0x53, 0xe7, 0x09, 0x5a, 0x22, 0x52, 0x37, 0x88, 0x8d,
0x0c, 0xa6, 0x21, 0x0b, 0x9b, 0x44, 0x09, 0x7d, 0x31, 0x23, 0x28, 0x80, 0x58, 0x80, 0x02, 0x44, 0x80, 0x09, 0xeb, 0x76, 0x39, 0x22, 0x0c, 0x55, 0x2d, 0x0b, 0x85, 0x1b, 0x09, 0xe7, 0x47, 0x22,
0x79, 0xdc, 0x28, 0xc7, 0x39, 0x86, 0x31, 0xe7, 0x3f, 0x28, 0x80, 0x58, 0x80, 0x02, 0x28, 0x2e, 0x58, 0x01, 0x2d, 0xbb, 0x22, 0x35, 0x86, 0x34, 0x1a, 0x34, 0x01, 0x1b, 0x01, 0xf7, 0x35, 0x4a,
0xe7, 0x06, 0x24, 0x28, 0x0c, 0xa6, 0x21, 0x0b, 0x9b, 0x44, 0x09, 0x71, 0x31, 0x0c, 0xa6, 0x28, 0x22, 0x58, 0x01, 0x2d, 0xbb, 0x22, 0x35, 0x86, 0xaf, 0x3b, 0x22, 0x0c, 0x55, 0x2d, 0x0b, 0x85,
0x08, 0x9b, 0x21, 0x83, 0x9b, 0x02, 0x34, 0x09, 0x71, 0x8c, 0x0b, 0x24, 0x44, 0xa0, 0x58, 0x08, 0x1b, 0x09, 0xf7, 0x75, 0x04, 0x22, 0x08, 0x85, 0x00, 0x76, 0x6a, 0x7b, 0x6d, 0x86, 0x65, 0x0b,
0x27, 0x43, 0x3c, 0x9b, 0x01, 0x38, 0x0b, 0x24, 0x86, 0x05, 0x4a, 0x0e, 0x0b, 0x05, 0x00, 0x0e, 0x3b, 0x1b, 0x03, 0xbe, 0x08, 0x24, 0x53, 0x86, 0x6a, 0x01, 0x27, 0x0b, 0x3b, 0x3a, 0x05, 0x0c,
0x73, 0x03, 0x2f, 0x57, 0x9b, 0x2c, 0x05, 0x0f, 0x6c, 0x02, 0x2f, 0x75, 0x03, 0x4f, 0x05, 0x80, 0x8a, 0x61, 0x00, 0x0e, 0x71, 0x03, 0x62, 0x03, 0x58, 0xbc, 0x77, 0x0b, 0x02, 0xba, 0x76, 0x0c,
0x24, 0x05, 0x02, 0x01, 0x01, 0x77, 0x0b, 0x63, 0x02, 0x4f, 0x2e, 0x0a, 0x2b, 0x5c, 0x6f, 0x03, 0x03, 0x2b, 0x05, 0x58, 0x3b, 0x05, 0x7b, 0x01, 0x02, 0x06, 0x0b, 0x39, 0x02, 0x2b, 0x35, 0x0a,
0x41, 0x0d, 0xad, 0x07, 0x02, 0x10, 0x10, 0x00, 0x1b, 0x7b, 0x60, 0x88, 0x26, 0x50, 0x3a, 0xc5, 0x0f, 0x40, 0x5a, 0x01, 0x69, 0x03, 0x07, 0x0b, 0x42, 0xb2, 0x02, 0x10, 0x10, 0x00, 0x18, 0x52,
0x94, 0x87, 0x09, 0x60, 0x08, 0x24, 0x1c, 0x31, 0x80, 0x02, 0x02, 0x0f, 0x6d, 0x1c, 0xc3, 0x21, 0x5a, 0xb9, 0x4a, 0x7f, 0x76, 0x4a, 0x0d, 0x55, 0x7f, 0x09, 0x5a, 0x08, 0x3b, 0x2a, 0x01, 0xbb,
0xa2, 0x1c, 0xa2, 0x21, 0xc3, 0x00, 0xb7, 0x23, 0x58, 0x01, 0x80, 0x02, 0x5a, 0x07, 0x24, 0x28, 0x02, 0xbe, 0x3d, 0xaf, 0x7d, 0x2d, 0x0b, 0x46, 0x1d, 0x0b, 0x46, 0xaf, 0x7d, 0x19, 0x35, 0xbe,
0x0a, 0x43, 0x5a, 0x94, 0x28, 0xc5, 0x6f, 0xa0, 0x38, 0xa3, 0x35, 0x52, 0xbe, 0x0e, 0x2b, 0x23, 0x01, 0xbb, 0x19, 0x07, 0x3b, 0x22, 0x0a, 0x53, 0x19, 0x0d, 0x55, 0x3a, 0x76, 0x4a, 0x69, 0x03,
0x35, 0x05, 0x71, 0x2b, 0x76, 0x61, 0xa2, 0x2f, 0xc3, 0x4f, 0x56, 0x01, 0x2f, 0x56, 0x01, 0x3e, 0x5c, 0x27, 0xc0, 0x3d, 0x09, 0x5a, 0x27, 0x08, 0x85, 0x3d, 0x2f, 0x7a, 0x5c, 0x30, 0x77, 0x51,
0x07, 0x24, 0x4f, 0x0a, 0x43, 0x3e, 0x72, 0x4f, 0xb1, 0x10, 0x10, 0x22, 0x27, 0xad, 0x07, 0x81, 0x05, 0x23, 0x0b, 0x46, 0x27, 0xaf, 0x7d, 0x2b, 0x89, 0x01, 0x62, 0x89, 0x01, 0x25, 0xac, 0x53,
0x2b, 0x74, 0x00, 0xb5, 0x77, 0x0e, 0x60, 0x86, 0x3d, 0x38, 0x06, 0x50, 0xaa, 0x71, 0xaa, 0x23, 0x25, 0x6c, 0x05, 0x2b, 0x05, 0x39, 0x10, 0x10, 0x4c, 0x31, 0xb2, 0x2d, 0x87, 0x40, 0x6f, 0x69,
0x86, 0x3d, 0x38, 0x05, 0x6c, 0x00, 0xb5, 0x77, 0x0e, 0x76, 0x6f, 0x2d, 0x50, 0x06, 0x5a, 0x47, 0xc7, 0x35, 0x06, 0x0e, 0x5a, 0x87, 0x22, 0xaf, 0x4a, 0x87, 0x27, 0x89, 0x9c, 0x05, 0x7d, 0x69,
0x6c, 0x7f, 0xb5, 0x34, 0x1f, 0x7c, 0xb5, 0x86, 0x06, 0x24, 0xb5, 0x21, 0x31, 0x50, 0xb5, 0x86, 0xc7, 0x35, 0x06, 0x58, 0x05, 0x69, 0x40, 0x4a, 0x06, 0x23, 0xd4, 0x40, 0x7d, 0x02, 0x87, 0x22,
0x56, 0xb5, 0x86, 0x06, 0x50, 0xb5, 0x2e, 0x1f, 0x43, 0x82, 0x2b, 0x24, 0x6f, 0x2d, 0x0d, 0x0a, 0x01, 0x33, 0x5c, 0x78, 0x1e, 0x1b, 0xaf, 0x3b, 0x41, 0x27, 0x01, 0x4a, 0x41, 0x27, 0x89, 0x41,
0x05, 0x10, 0x11, 0x1b, 0x03, 0x08, 0x0c, 0xc4, 0x0b, 0x5f, 0x5a, 0x09, 0x47, 0x67, 0x82, 0x0b, 0x22, 0xaf, 0x4a, 0x41, 0x3a, 0x35, 0x70, 0x53, 0x3d, 0x51, 0x0a, 0x69, 0x40, 0x5e, 0x05, 0x10,
0x23, 0x08, 0x5e, 0x31, 0x45, 0x80, 0x35, 0x7b, 0x89, 0x66, 0x85, 0x61, 0x79, 0x03, 0x88, 0x07, 0x11, 0x1d, 0xb3, 0x08, 0xbd, 0x0e, 0x0b, 0x07, 0x01, 0x19, 0x09, 0x40, 0x5c, 0x05, 0x3d, 0x36,
0x9b, 0x2c, 0x0b, 0xa6, 0x2c, 0x26, 0x02, 0x2c, 0x1d, 0x2c, 0x26, 0x02, 0x2c, 0x0b, 0xa6, 0x2c, 0x45, 0x03, 0x44, 0x01, 0x90, 0x58, 0x30, 0x52, 0x82, 0xba, 0x01, 0x0a, 0x2b, 0x35, 0x0f, 0x65,
0x07, 0x9b, 0x2c, 0x79, 0x03, 0x2c, 0x7b, 0x89, 0x66, 0x85, 0x82, 0x0b, 0x23, 0x08, 0x5e, 0x31, 0x29, 0x07, 0x85, 0xa8, 0x57, 0xb9, 0x02, 0x62, 0x87, 0x2c, 0x7e, 0x0d, 0x49, 0xa8, 0x04, 0x73,
0x45, 0x80, 0x6f, 0x09, 0x47, 0x67, 0x5a, 0x03, 0x08, 0x0c, 0xc4, 0x0b, 0x5f, 0x10, 0x12, 0x22, 0x70, 0xbc, 0x02, 0x0f, 0x65, 0x73, 0x52, 0x82, 0xba, 0x01, 0x0a, 0x3d, 0x36, 0x45, 0x03, 0x44,
0xf3, 0x23, 0x6e, 0x09, 0x46, 0x6f, 0x2b, 0x23, 0x08, 0xb5, 0x62, 0x06, 0x70, 0x6c, 0x00, 0x3d, 0x01, 0x90, 0x58, 0x69, 0x09, 0x40, 0x5c, 0x05, 0xb3, 0x08, 0xbd, 0x0e, 0x0b, 0x07, 0x01, 0x10,
0x2f, 0x04, 0x0e, 0x9b, 0x3d, 0x3e, 0x03, 0x71, 0x02, 0x92, 0x0a, 0x60, 0x92, 0x05, 0x6c, 0x92, 0x12, 0x4c, 0x7a, 0x8a, 0x0c, 0x09, 0x4e, 0x69, 0x51, 0x45, 0x41, 0x3a, 0x80, 0x06, 0x36, 0x7d,
0x3f, 0x92, 0x01, 0x23, 0x92, 0x01, 0x23, 0x92, 0x3f, 0x92, 0x05, 0x6c, 0x92, 0x0a, 0x60, 0x4c, 0x1e, 0xba, 0x76, 0x0e, 0x85, 0x2d, 0x2e, 0x25, 0x8b, 0x78, 0x2e, 0x2b, 0x0a, 0x5a, 0x00, 0x2e,
0x2f, 0x03, 0xb6, 0x71, 0x2f, 0x04, 0x0e, 0x9b, 0x3d, 0x28, 0x62, 0x06, 0x70, 0x6c, 0x35, 0x2b, 0x2b, 0x05, 0x7d, 0x00, 0x2e, 0x25, 0x35, 0x4a, 0x00, 0x2e, 0x1b, 0xa3, 0x00, 0x2e, 0x1b, 0xa3,
0x23, 0x08, 0x82, 0x27, 0xad, 0x09, 0x46, 0x10, 0x0f, 0x22, 0xaf, 0x1d, 0x2c, 0x20, 0x2b, 0x1a, 0x00, 0x2e, 0x25, 0x35, 0x4a, 0x00, 0x2e, 0x2b, 0x05, 0x7d, 0x00, 0x2e, 0x2b, 0x0a, 0x5a, 0x00,
0x35, 0x1d, 0x2c, 0x20, 0xaf, 0x10, 0x0e, 0x22, 0x2b, 0x1a, 0x35, 0x1d, 0x2c, 0x20, 0x2b, 0x81, 0x2e, 0x25, 0x8b, 0x78, 0x2e, 0xba, 0x76, 0x0e, 0x85, 0xba, 0xd4, 0xc5, 0x80, 0x06, 0x36, 0x7d,
0x2b, 0x81, 0xa8, 0x10, 0x13, 0x1b, 0x45, 0x5d, 0x50, 0x0a, 0x46, 0x6f, 0x85, 0x47, 0x67, 0x61, 0x30, 0x51, 0x45, 0x30, 0xc2, 0x5c, 0x0c, 0x09, 0x4e, 0x10, 0x0f, 0x4c, 0x28, 0x86, 0x28, 0xa4,
0x31, 0x0c, 0x23, 0x07, 0x5e, 0x2e, 0x05, 0x09, 0x71, 0x35, 0x52, 0x74, 0x66, 0x85, 0x4f, 0x2e, 0x0f, 0x40, 0x19, 0x51, 0x19, 0xa4, 0x28, 0x9e, 0x10, 0x0e, 0x2d, 0x5d, 0x51, 0x19, 0x51, 0x19,
0x0f, 0x7c, 0x88, 0x08, 0x9b, 0x2c, 0x0b, 0xa6, 0x2c, 0x8b, 0x2c, 0xc7, 0xd4, 0x27, 0x4f, 0xc7, 0xa4, 0x40, 0x20, 0x28, 0x50, 0xae, 0x10, 0x13, 0x18, 0x90, 0x0d, 0x58, 0x5e, 0x4e, 0x69, 0x01,
0xd4, 0x27, 0x4f, 0x80, 0x02, 0x92, 0x0b, 0xa6, 0x92, 0x07, 0x9b, 0x92, 0x79, 0x7f, 0x25, 0x3e, 0x0a, 0x40, 0x5c, 0x05, 0x30, 0x75, 0x0e, 0x07, 0x4d, 0x35, 0x05, 0x09, 0x86, 0x30, 0x48, 0x6f,
0x09, 0x50, 0x7f, 0x37, 0x0c, 0x23, 0x09, 0x04, 0x58, 0x77, 0x0b, 0x71, 0x82, 0x09, 0x47, 0x50, 0xba, 0x01, 0x0a, 0x2b, 0x35, 0x5c, 0x02, 0x29, 0x52, 0xbc, 0x0b, 0x55, 0x73, 0x58, 0x01, 0x1d,
0x04, 0x6f, 0x03, 0x08, 0x4a, 0xad, 0x09, 0x04, 0x10, 0x12, 0x87, 0x4c, 0x25, 0x4c, 0x9d, 0x25, 0x3f, 0xd3, 0x2e, 0xba, 0xc3, 0x2b, 0x58, 0x78, 0x2e, 0x2b, 0x36, 0x57, 0x2e, 0x2b, 0x07, 0x85,
0x21, 0x25, 0x37, 0x18, 0x35, 0x18, 0x21, 0x4c, 0x25, 0x4c, 0x25, 0x4c, 0x9d, 0x25, 0x10, 0x07, 0x00, 0x2e, 0x25, 0x35, 0x0f, 0x49, 0x2e, 0x23, 0x48, 0x82, 0x22, 0x1a, 0x30, 0x0c, 0x5c, 0x5f,
0xae, 0x1d, 0x10, 0x07, 0xae, 0x1d, 0x88, 0x3f, 0x2c, 0xc3, 0x3a, 0x7e, 0x80, 0x06, 0x1c, 0xe0, 0x44, 0x35, 0x05, 0x0b, 0x86, 0x3d, 0x48, 0x40, 0x4a, 0x04, 0x69, 0x03, 0x08, 0xbd, 0x0e, 0x0c,
0x63, 0x81, 0xd4, 0x50, 0x5c, 0x10, 0x10, 0x64, 0x3d, 0x66, 0x7b, 0x43, 0x00, 0x3d, 0x38, 0x7b, 0x5f, 0x10, 0x12, 0x4c, 0x2e, 0x1e, 0x38, 0x1e, 0xbf, 0x5b, 0x30, 0x5b, 0x1e, 0xbf, 0x86, 0x2e,
0x43, 0xb5, 0x00, 0x52, 0x9c, 0x4c, 0x86, 0x52, 0x9c, 0x61, 0xc7, 0x52, 0x9c, 0x28, 0x25, 0x29, 0x1e, 0x38, 0x10, 0x07, 0x27, 0xb5, 0xae, 0xae, 0x10, 0x07, 0x27, 0xb5, 0xae, 0xae, 0x29, 0x35,
0x76, 0x66, 0x4c, 0x29, 0x76, 0x66, 0x3d, 0x70, 0x76, 0x1c, 0xe0, 0x9b, 0x3e, 0x3d, 0x1f, 0x43, 0x94, 0x06, 0x7d, 0x3c, 0x8c, 0x0e, 0x46, 0x1d, 0xe0, 0x39, 0x27, 0x87, 0x67, 0x01, 0x10, 0x10,
0x3e, 0x4c, 0x1f, 0x60, 0x4f, 0x25, 0x1f, 0x60, 0x1c, 0xc7, 0x1f, 0x9b, 0x86, 0xb5, 0x3b, 0x9b, 0x4c, 0xba, 0x52, 0x53, 0x1e, 0x27, 0x52, 0x53, 0x41, 0x22, 0x48, 0x46, 0x87, 0x22, 0x48, 0x46,
0x28, 0x3d, 0x44, 0x3b, 0x24, 0x86, 0x3d, 0x38, 0x3b, 0x24, 0xb5, 0x86, 0x3b, 0x24, 0x00, 0x3d, 0x19, 0xc7, 0x48, 0x46, 0x19, 0xca, 0x0a, 0x86, 0x05, 0x22, 0x41, 0x0a, 0x86, 0x05, 0x22, 0x87,
0x2f, 0x05, 0x0f, 0x6c, 0x10, 0x0d, 0xae, 0xaf, 0x10, 0x15, 0x64, 0x3d, 0x43, 0x2f, 0x07, 0x3c, 0x36, 0x59, 0x22, 0x87, 0x6a, 0x27, 0x87, 0x70, 0x53, 0x27, 0x41, 0x70, 0x5a, 0x1d, 0xca, 0x70,
0x38, 0xdc, 0x50, 0x2f, 0x0d, 0x3c, 0x44, 0xd4, 0x23, 0x8c, 0x38, 0xa0, 0x71, 0x44, 0xd4, 0x60, 0x5a, 0x1d, 0xc7, 0x07, 0x6a, 0x19, 0xca, 0xaf, 0x6a, 0x19, 0xc7, 0xaf, 0x6a, 0x87, 0x22, 0xaf,
0x9b, 0x38, 0x09, 0x60, 0x71, 0x38, 0xdc, 0xa0, 0x38, 0x80, 0x79, 0x66, 0xd0, 0x72, 0x28, 0x05, 0x0f, 0x3b, 0x41, 0x22, 0xaf, 0x0f, 0x3b, 0x1e, 0x62, 0x77, 0x0b, 0x10, 0x0d, 0x98, 0xae, 0xae,
0x63, 0xfa, 0x66, 0xd0, 0xc3, 0x28, 0xa2, 0xfa, 0x66, 0xd0, 0x56, 0x58, 0x56, 0x01, 0x4e, 0x25, 0x28, 0x9e, 0x10, 0x15, 0x4c, 0x53, 0x62, 0x07, 0x7a, 0x2e, 0x4a, 0x62, 0x0d, 0x7a, 0x2e, 0x0e,
0x0a, 0x43, 0x21, 0x07, 0x24, 0xd0, 0x25, 0x05, 0x63, 0x21, 0x0c, 0xa6, 0xf0, 0x3e, 0xc7, 0x0e, 0x65, 0x27, 0x03, 0x4a, 0x86, 0x2e, 0x08, 0x85, 0x27, 0x09, 0x5a, 0x86, 0x2e, 0x03, 0x5c, 0x27,
0x8c, 0xa0, 0xdc, 0x3e, 0xc7, 0x7b, 0x7a, 0x60, 0xdc, 0x3e, 0xc7, 0xa0, 0x0e, 0x8c, 0xdc, 0x38, 0xbb, 0x86, 0xba, 0xd0, 0x6c, 0x05, 0x22, 0x05, 0x39, 0x6e, 0xba, 0xd0, 0x06, 0x7d, 0x22, 0x0b,
0xdc, 0x28, 0x8a, 0x63, 0x21, 0xd0, 0x25, 0x21, 0x1f, 0x43, 0x86, 0xca, 0x37, 0xe7, 0x37, 0xe7, 0x46, 0x6e, 0xba, 0xd0, 0x89, 0x01, 0x2d, 0x89, 0x01, 0x6e, 0x62, 0xca, 0x0a, 0x53, 0x2d, 0x07,
0x37, 0x71, 0x10, 0x12, 0x64, 0x3d, 0x8c, 0x37, 0x71, 0x6c, 0x37, 0x0f, 0x23, 0x8c, 0x28, 0xd0, 0x3b, 0x50, 0x62, 0xca, 0x05, 0x39, 0x2d, 0x0c, 0x55, 0x50, 0x25, 0xc7, 0x0e, 0x65, 0x03, 0x5c,
0x3d, 0x08, 0x6c, 0x28, 0xd0, 0x3d, 0x68, 0xa6, 0x28, 0xca, 0x4c, 0x07, 0x63, 0x28, 0xca, 0x4c, 0x34, 0x25, 0xc7, 0x08, 0x85, 0x09, 0x5a, 0x34, 0x25, 0xc7, 0x03, 0x0f, 0x8a, 0x65, 0x34, 0x2e,
0x68, 0x76, 0x00, 0xdc, 0x28, 0x25, 0x06, 0x63, 0x00, 0xdc, 0x35, 0xc7, 0x0d, 0x76, 0xdc, 0x35, 0x22, 0x6c, 0x39, 0x1a, 0x2e, 0x22, 0x70, 0x53, 0x1a, 0x2e, 0x1e, 0x38, 0x1e, 0x10, 0x12, 0x4c,
0xc7, 0x06, 0x50, 0x00, 0xd0, 0x3d, 0x28, 0x26, 0x06, 0xd0, 0x3d, 0x28, 0x05, 0x50, 0xd0, 0x3d, 0x65, 0x3a, 0x1a, 0x1e, 0x7d, 0x3a, 0x1a, 0x1e, 0x0e, 0x65, 0x2d, 0x1a, 0x1e, 0x08, 0x7d, 0x2d,
0x44, 0x0c, 0x43, 0x4e, 0x3d, 0x44, 0x83, 0x6d, 0x7d, 0x3d, 0x38, 0x0b, 0x43, 0x7d, 0x3d, 0x38, 0x1a, 0x1e, 0x01, 0x58, 0x57, 0x1a, 0x2b, 0xd0, 0x07, 0x39, 0x00, 0x1a, 0x2b, 0xd0, 0x4f, 0x59,
0xa0, 0x7d, 0x3d, 0x66, 0x0b, 0xeb, 0x3d, 0x66, 0x03, 0x3c, 0x10, 0x13, 0x1b, 0x45, 0x5d, 0x0e, 0x34, 0x23, 0xca, 0xa9, 0x1a, 0x30, 0xc7, 0x42, 0x05, 0x34, 0x2b, 0xd0, 0xaf, 0x4a, 0x34, 0x1e,
0x73, 0xbf, 0x38, 0x84, 0x60, 0x4f, 0xab, 0x65, 0x37, 0x23, 0x3e, 0x80, 0x02, 0x4f, 0x3f, 0x3e, 0x22, 0x0d, 0x46, 0x50, 0x1e, 0x22, 0x05, 0x4a, 0x50, 0x1e, 0x1b, 0x0c, 0x53, 0x6e, 0x1e, 0x22,
0x33, 0x2f, 0xc0, 0x4f, 0x0a, 0x43, 0x3e, 0x79, 0x03, 0x2f, 0x03, 0xb6, 0x52, 0x89, 0x38, 0x84, 0x76, 0x5c, 0x89, 0x1e, 0x27, 0x0b, 0x53, 0x86, 0x1e, 0x27, 0x03, 0x5c, 0x86, 0x1e, 0xba, 0x0b,
0x9b, 0x4f, 0x31, 0x8a, 0x48, 0x0e, 0x63, 0x82, 0x85, 0x2d, 0x24, 0x01, 0x5a, 0x45, 0x5d, 0x0e, 0x7a, 0x1e, 0xba, 0x03, 0x7a, 0x10, 0x13, 0xb6, 0x01, 0x3d, 0x6c, 0xb1, 0x82, 0x27, 0x72, 0x5a,
0x73, 0x04, 0x10, 0x0e, 0x22, 0x27, 0x23, 0x0b, 0x05, 0x81, 0x47, 0x24, 0x5a, 0xc7, 0x34, 0x7b, 0x25, 0x35, 0x0f, 0x65, 0x62, 0x8b, 0x02, 0x25, 0xac, 0x53, 0x25, 0x36, 0xa0, 0x25, 0x35, 0x4a,
0x43, 0xa4, 0x28, 0x31, 0x23, 0xaa, 0x23, 0xa4, 0x21, 0x34, 0x7b, 0x43, 0x6f, 0x47, 0x6c, 0x5a, 0x38, 0x1e, 0x25, 0xbb, 0x25, 0x35, 0x4a, 0x25, 0x36, 0x05, 0x2b, 0x05, 0x7d, 0x25, 0xac, 0x53,
0x27, 0x23, 0x0b, 0x05, 0x81, 0xa8, 0x10, 0x13, 0x1b, 0x45, 0x5d, 0x0e, 0x73, 0xbf, 0x38, 0x84, 0xb7, 0x48, 0x82, 0x27, 0x72, 0x85, 0x23, 0x75, 0x45, 0x4d, 0x80, 0x08, 0x0e, 0x39, 0x3d, 0x01,
0x9b, 0x4f, 0xab, 0x65, 0x37, 0x71, 0x3e, 0x26, 0x02, 0x3e, 0x2e, 0x23, 0x3e, 0x33, 0x2f, 0xc0, 0x0a, 0x40, 0x3b, 0x01, 0x19, 0x90, 0x0d, 0x8a, 0x0d, 0x5f, 0x10, 0x0e, 0x4c, 0x7a, 0x5c, 0x61,
0x4f, 0x0a, 0x60, 0x3e, 0x79, 0x03, 0x2f, 0x03, 0xb6, 0x7b, 0x89, 0x38, 0x84, 0x24, 0x35, 0x8a, 0x30, 0xd4, 0x40, 0x3b, 0x19, 0xc7, 0x01, 0x02, 0x52, 0x53, 0xa1, 0x47, 0x9c, 0x07, 0x39, 0x69,
0x48, 0x80, 0x4d, 0x35, 0x85, 0x2d, 0x6c, 0x01, 0x5a, 0x45, 0x5d, 0x71, 0x50, 0x66, 0xb7, 0x0e, 0xc7, 0x01, 0x02, 0x52, 0x53, 0x87, 0xc3, 0x7d, 0x69, 0xc2, 0x5c, 0x61, 0x2d, 0x87, 0xae, 0x10,
0x60, 0x2c, 0x03, 0x71, 0x06, 0x2c, 0x05, 0x0f, 0xa6, 0x10, 0x11, 0x22, 0x27, 0x23, 0x0b, 0x06, 0x13, 0xb6, 0x01, 0x3d, 0x6c, 0xb1, 0x82, 0x27, 0x72, 0x85, 0x25, 0x35, 0x0f, 0x65, 0x62, 0x8b,
0x81, 0x47, 0x6c, 0x5a, 0xc7, 0x2e, 0x07, 0x0e, 0x43, 0x86, 0x3d, 0x38, 0x06, 0x63, 0xaa, 0x23, 0x02, 0x25, 0xac, 0x53, 0x25, 0x36, 0xa0, 0x25, 0x35, 0x4a, 0x38, 0x1e, 0x25, 0x0d, 0x49, 0x25,
0xaa, 0x23, 0x86, 0x3d, 0x38, 0x06, 0x63, 0x6f, 0xc7, 0x2e, 0x1f, 0x9c, 0x4f, 0x47, 0x60, 0x5a, 0x35, 0x5c, 0x25, 0x36, 0x05, 0x2b, 0x05, 0x7d, 0x25, 0xac, 0x5a, 0xb7, 0x52, 0x82, 0x27, 0x72,
0x47, 0x74, 0x5a, 0xc7, 0x7e, 0x0d, 0x6c, 0x21, 0xb5, 0x2e, 0x0e, 0x76, 0xa4, 0x38, 0x0e, 0x8c, 0x3b, 0x30, 0x6c, 0x45, 0x4d, 0x80, 0x08, 0x58, 0x79, 0x30, 0x01, 0x0a, 0x40, 0x7d, 0x01, 0x19,
0xb5, 0x86, 0x08, 0x9b, 0xb5, 0x21, 0x2e, 0x23, 0x58, 0x4c, 0x66, 0xa2, 0x00, 0x3d, 0x2f, 0xb1, 0x90, 0x0d, 0x0e, 0x86, 0x39, 0x73, 0x83, 0x08, 0x73, 0x8b, 0x06, 0x73, 0x77, 0x04, 0x10, 0x11,
0x10, 0x0f, 0x40, 0x59, 0x0d, 0x23, 0x0d, 0x0b, 0x07, 0x02, 0x5a, 0x08, 0x2d, 0x19, 0x05, 0x0f, 0x4c, 0x7a, 0x5c, 0x0b, 0x06, 0x30, 0xd4, 0x40, 0x7d, 0x23, 0xd4, 0xc5, 0x33, 0x0e, 0x53, 0x87,
0x60, 0x5e, 0x34, 0x45, 0x0d, 0x6f, 0xa2, 0x2c, 0x8b, 0x2c, 0x39, 0x88, 0x8a, 0x06, 0x2c, 0x3b, 0x27, 0xa9, 0x00, 0x41, 0xa3, 0x9c, 0xa9, 0x69, 0xc7, 0x35, 0x70, 0x46, 0x87, 0xc3, 0x5a, 0x23,
0x9b, 0x03, 0x88, 0x08, 0x3c, 0x63, 0x09, 0x05, 0x64, 0xa9, 0x71, 0x50, 0x04, 0x64, 0x31, 0x04, 0xd4, 0x40, 0x6f, 0x19, 0xc7, 0x8c, 0x0d, 0x7d, 0x00, 0x87, 0x1b, 0x83, 0x05, 0xa1, 0x00, 0x0e,
0x07, 0x26, 0x8c, 0x2c, 0x0a, 0x6c, 0x66, 0xb7, 0x23, 0xb9, 0x06, 0x63, 0x82, 0x73, 0x05, 0x03, 0x65, 0x41, 0x27, 0x08, 0x85, 0x41, 0x1b, 0x35, 0x5c, 0x01, 0x1e, 0x62, 0x0b, 0x46, 0x1e, 0x62,
0x7f, 0xc1, 0x76, 0x82, 0x2b, 0x60, 0x6f, 0x77, 0x0a, 0x4a, 0xad, 0x09, 0x03, 0x10, 0x0f, 0x69, 0x05, 0x39, 0x10, 0x0f, 0x20, 0xb3, 0x0a, 0x42, 0x4a, 0x0b, 0x07, 0x03, 0x19, 0x08, 0x28, 0x77,
0x36, 0xa8, 0xa8, 0x10, 0x12, 0x87, 0x4c, 0x9d, 0x9d, 0x00, 0x37, 0x39, 0x38, 0x56, 0x35, 0x26, 0x08, 0x4d, 0x35, 0x04, 0x08, 0x0d, 0x69, 0x0b, 0x46, 0x73, 0x58, 0x01, 0x62, 0x87, 0x01, 0x73,
0x02, 0x66, 0x3f, 0x35, 0xa2, 0x66, 0xc3, 0x35, 0x3b, 0x4d, 0x44, 0x5b, 0x9c, 0x3e, 0x0d, 0x63, 0x0c, 0x46, 0x3c, 0xaf, 0x6a, 0x03, 0x29, 0x08, 0x7a, 0x39, 0x09, 0x05, 0x2a, 0x8e, 0x7a, 0x4a,
0x05, 0x01, 0x00, 0x7e, 0x0c, 0x50, 0x6f, 0x84, 0x2d, 0x89, 0x6f, 0x31, 0x07, 0x4a, 0xad, 0x5f, 0x04, 0x7f, 0x60, 0x07, 0x42, 0x65, 0x73, 0x0a, 0x9d, 0x02, 0x5c, 0x92, 0xa9, 0x3d, 0x67, 0x05,
0x10, 0x10, 0x69, 0x72, 0x4f, 0xb1, 0x28, 0x07, 0x24, 0x4f, 0x0a, 0x43, 0x3e, 0x56, 0x01, 0x2f, 0x02, 0x44, 0x80, 0x48, 0x59, 0x1e, 0x40, 0x5a, 0x69, 0x33, 0x0a, 0x0d, 0x0e, 0x5c, 0x0c, 0x09,
0x56, 0x01, 0x4f, 0x0b, 0x43, 0x2f, 0xc3, 0x61, 0xb1, 0x86, 0x72, 0x35, 0x0e, 0x8c, 0x44, 0x2e, 0x03, 0x10, 0x0f, 0x5d, 0x9e, 0xcb, 0x2e, 0x51, 0xc7, 0x87, 0x2c, 0xae, 0xae, 0x10, 0x12, 0x4c,
0x23, 0x82, 0x52, 0xbe, 0xa0, 0x38, 0xa3, 0x82, 0x94, 0x28, 0xc5, 0x5a, 0x07, 0x24, 0x28, 0x0a, 0xbf, 0x86, 0xbf, 0x86, 0x2e, 0x1e, 0x01, 0xba, 0x89, 0x30, 0x0d, 0x49, 0x27, 0x35, 0x4a, 0x30,
0x43, 0xb7, 0x39, 0x31, 0x80, 0x02, 0x81, 0xa2, 0x21, 0xc3, 0x1c, 0x06, 0x63, 0x21, 0xa2, 0x81, 0x0b, 0x46, 0x1b, 0xaf, 0x7d, 0x2b, 0xaf, 0x0f, 0x79, 0x1b, 0x63, 0x46, 0x3d, 0x0d, 0x39, 0x05,
0x31, 0x80, 0x02, 0x02, 0x0f, 0x6d, 0x64, 0x09, 0x60, 0x07, 0x24, 0x87, 0xc5, 0x94, 0x3a, 0x26, 0x44, 0x8c, 0x0c, 0x4a, 0x69, 0x72, 0x40, 0x82, 0x19, 0x8f, 0xbd, 0xb2, 0x01, 0x10, 0x10, 0x5d,
0x50, 0x88, 0x7b, 0x60, 0x10, 0x18, 0x00, 0x69, 0x26, 0x02, 0x38, 0x52, 0x9b, 0x38, 0x03, 0x50, 0x6c, 0x05, 0x2b, 0x05, 0x39, 0x25, 0xac, 0x53, 0x25, 0x89, 0x01, 0x62, 0x89, 0x01, 0x2b, 0x0b,
0x86, 0x29, 0x06, 0x38, 0x8a, 0x50, 0x38, 0x06, 0x24, 0x86, 0x06, 0x24, 0x28, 0x31, 0x23, 0x80, 0x53, 0x27, 0xaf, 0x7d, 0x23, 0x05, 0x39, 0x62, 0x6c, 0x05, 0x30, 0x0e, 0x65, 0x27, 0x03, 0x5c,
0x02, 0x44, 0x29, 0x06, 0x86, 0x3f, 0x44, 0x05, 0x6c, 0x33, 0x86, 0x26, 0x02, 0x28, 0x80, 0x02, 0x3d, 0x09, 0x5a, 0x27, 0x08, 0x85, 0x3d, 0x03, 0x5c, 0x27, 0xc0, 0x69, 0x0d, 0x55, 0x3a, 0x76,
0x28, 0x08, 0x60, 0x07, 0x9b, 0x86, 0x2e, 0x23, 0x44, 0x0a, 0x9c, 0x0c, 0xa6, 0xbb, 0x28, 0x06, 0x4a, 0x19, 0x07, 0x3b, 0x22, 0x0a, 0x53, 0x69, 0x35, 0x86, 0x01, 0x2d, 0x01, 0xbb, 0x20, 0x0b,
0x24, 0x44, 0x06, 0x9b, 0x86, 0x56, 0x01, 0x56, 0x01, 0x86, 0x52, 0x06, 0x44, 0x03, 0x50, 0x86, 0x46, 0xaf, 0x7d, 0x1d, 0xa9, 0x2d, 0x0b, 0x46, 0x1d, 0x01, 0xbb, 0x02, 0xbe, 0x20, 0x09, 0x5a,
0xbb, 0x21, 0x0c, 0xa6, 0x86, 0xa3, 0x44, 0x80, 0x02, 0x21, 0x07, 0x60, 0x21, 0x08, 0x60, 0x00, 0x07, 0x3b, 0x2a, 0x76, 0x4a, 0x0d, 0x55, 0x3c, 0x42, 0x4a, 0x29, 0x52, 0x5a, 0x10, 0x18, 0x00,
0x2e, 0x23, 0x66, 0x33, 0x33, 0x05, 0x6c, 0x21, 0x05, 0x24, 0x66, 0x07, 0x9b, 0x21, 0x8b, 0x00, 0x5d, 0xc0, 0x27, 0x48, 0x3b, 0x27, 0x03, 0x4a, 0x3a, 0x0a, 0x46, 0x27, 0x6c, 0x4a, 0x22, 0xaf,
0x31, 0x23, 0x21, 0x09, 0x43, 0x66, 0x03, 0x50, 0x00, 0x03, 0x50, 0x28, 0xa3, 0xa3, 0x66, 0x8b, 0x3b, 0x00, 0xaf, 0x3b, 0xa3, 0xbb, 0x1b, 0x0a, 0x46, 0x2d, 0x35, 0x4a, 0x1b, 0x05, 0x7d, 0x36,
0x07, 0x9b, 0x28, 0x52, 0x5f, 0x23, 0x3e, 0x0b, 0x76, 0x0a, 0x9c, 0x06, 0x24, 0x05, 0x6c, 0x3e, 0x05, 0x1b, 0x0d, 0x49, 0x22, 0xbb, 0x22, 0x08, 0x5a, 0x07, 0x85, 0x3a, 0x35, 0x5c, 0x1b, 0x0a,
0x07, 0x9b, 0x80, 0x02, 0x86, 0x2e, 0x23, 0x09, 0x43, 0x3e, 0x83, 0xc4, 0x38, 0xc4, 0xa6, 0x66, 0x46, 0x22, 0x0c, 0x55, 0x04, 0x39, 0x2d, 0xaf, 0x3b, 0x3a, 0xaf, 0x85, 0x3a, 0x89, 0x01, 0x89,
0xdc, 0x24, 0x38, 0x0a, 0x3c, 0x61, 0x70, 0x9c, 0x21, 0x1f, 0x6c, 0x10, 0x11, 0x22, 0x0a, 0x6c, 0x01, 0x3a, 0x09, 0x46, 0x1b, 0x03, 0x4a, 0x2d, 0x76, 0x39, 0x2d, 0x0c, 0x55, 0x3a, 0xc0, 0x27,
0x2f, 0x0b, 0x24, 0x61, 0x68, 0x76, 0x38, 0x1f, 0x4d, 0x35, 0x3b, 0x6d, 0x28, 0x03, 0x0f, 0xa6, 0xbb, 0x2d, 0x70, 0x37, 0x52, 0x37, 0x02, 0x5c, 0xba, 0x36, 0x05, 0x2d, 0x36, 0x54, 0x7d, 0x2d,
0x6f, 0x0b, 0x24, 0x28, 0x0c, 0x60, 0xb7, 0x0e, 0xa6, 0x21, 0x08, 0x63, 0x1c, 0x1f, 0x4d, 0x83, 0x05, 0x7d, 0xba, 0x07, 0x85, 0x2d, 0x58, 0x01, 0x2d, 0x47, 0x2d, 0x09, 0x53, 0xba, 0x03, 0x4a,
0x8c, 0x64, 0xb8, 0x0d, 0x43, 0x87, 0x79, 0x6c, 0x88, 0x09, 0xb6, 0x3e, 0x2e, 0x80, 0x60, 0x3a, 0x00, 0x03, 0x4a, 0x22, 0xc0, 0x00, 0xc0, 0x62, 0x58, 0x8f, 0x85, 0x22, 0x09, 0x53, 0x47, 0x25,
0x70, 0x70, 0x8c, 0x64, 0x1f, 0x4d, 0x08, 0x63, 0x1c, 0x03, 0x0f, 0xa6, 0x00, 0x5b, 0x43, 0x81, 0x36, 0x05, 0x0a, 0x46, 0x2d, 0xaf, 0x3b, 0x05, 0x7d, 0x25, 0x07, 0x85, 0xbb, 0x3a, 0x35, 0x5c,
0x0c, 0x60, 0x86, 0x83, 0x7c, 0x6f, 0x08, 0x63, 0x44, 0x09, 0x6c, 0x82, 0x83, 0x8c, 0x44, 0x5b, 0x09, 0x53, 0x62, 0x76, 0x5c, 0x5c, 0x27, 0x58, 0x58, 0x57, 0x2e, 0x3b, 0x27, 0x0a, 0x7a, 0x23,
0x9c, 0x66, 0x5b, 0x43, 0x66, 0x05, 0x0f, 0x6d, 0x4f, 0x0a, 0x6c, 0x3e, 0x0a, 0x24, 0x10, 0x0f, 0x36, 0x46, 0x27, 0x70, 0x7d, 0x10, 0x11, 0x2d, 0x5d, 0x0a, 0x7d, 0x62, 0x0b, 0x3b, 0x23, 0x4f,
0x69, 0x0a, 0x24, 0x2f, 0x0a, 0x24, 0x4f, 0x2e, 0x0e, 0x76, 0x38, 0x05, 0x0f, 0x7c, 0x35, 0x3b, 0x59, 0x1b, 0xab, 0x2b, 0xaf, 0xbe, 0x2d, 0x8b, 0x04, 0x69, 0x0b, 0x3b, 0x22, 0x0c, 0x5a, 0x19,
0x6d, 0x28, 0x68, 0x9c, 0x4f, 0xb8, 0x28, 0x09, 0x6c, 0xb7, 0x0f, 0xa6, 0x21, 0x04, 0xb6, 0x38, 0x83, 0x04, 0x2d, 0x08, 0x39, 0x1d, 0xab, 0x88, 0x03, 0x2a, 0x0c, 0x85, 0x0d, 0x53, 0x2a, 0x35,
0x07, 0x50, 0x21, 0x0d, 0x43, 0x64, 0x0d, 0x60, 0x08, 0x50, 0x87, 0x03, 0x3c, 0x8c, 0x3a, 0x52, 0x86, 0x7d, 0x29, 0x48, 0x49, 0x3c, 0x83, 0x5a, 0x3c, 0x36, 0x36, 0x65, 0x2a, 0xab, 0x08, 0x39,
0x9b, 0x88, 0x56, 0x01, 0x2c, 0xa8, 0x10, 0x10, 0x00, 0x69, 0x36, 0x86, 0x2e, 0xbc, 0x4d, 0x3a, 0x1d, 0x8b, 0x57, 0x63, 0x53, 0x20, 0x6c, 0x37, 0x76, 0x5c, 0x02, 0x69, 0x08, 0x39, 0x1b, 0x09,
0x1f, 0x7c, 0x3a, 0x83, 0xa6, 0x44, 0xb7, 0xbc, 0x74, 0x3a, 0x1f, 0x7c, 0x3a, 0x83, 0xa6, 0x44, 0x7d, 0x3d, 0x88, 0x03, 0x1b, 0x63, 0x46, 0x23, 0x63, 0x53, 0xba, 0x05, 0xbe, 0x62, 0x0a, 0x7d,
0xb7, 0x0e, 0x43, 0x3a, 0x5b, 0x24, 0x88, 0x29, 0x74, 0x3a, 0x1f, 0x7c, 0x88, 0x36, 0x10, 0x09, 0x25, 0x0a, 0x3b, 0x10, 0x0f, 0x5d, 0x0a, 0x3b, 0x62, 0x0a, 0x3b, 0x23, 0x83, 0x05, 0x27, 0x05,
0x22, 0x27, 0x3a, 0x27, 0x3e, 0x3d, 0x2a, 0xa8, 0xa8, 0x27, 0x3a, 0x27, 0x10, 0x08, 0x69, 0xa3, 0x5c, 0x02, 0x2b, 0xaf, 0xbe, 0x2d, 0x4f, 0x46, 0x69, 0x0c, 0x85, 0x22, 0x09, 0x7d, 0x69, 0x35,
0x88, 0x08, 0x60, 0x2c, 0xbb, 0x2a, 0x80, 0x02, 0x2c, 0x29, 0x06, 0x2c, 0xc3, 0x88, 0x31, 0x0f, 0x86, 0x57, 0x76, 0x0f, 0x49, 0x20, 0x07, 0x4a, 0x2d, 0x0d, 0x53, 0x2a, 0x0d, 0x5a, 0x08, 0x4a,
0x6d, 0x2c, 0x0c, 0xa6, 0x2c, 0x07, 0x9b, 0x2c, 0x03, 0x50, 0x2a, 0xa3, 0x88, 0x09, 0x43, 0x2c, 0x22, 0xb3, 0x7a, 0x65, 0x3c, 0x09, 0x6a, 0x29, 0x89, 0x01, 0x62, 0x87, 0xae, 0x10, 0x10, 0x5d,
0xb1, 0x81, 0x31, 0x8b, 0x2c, 0xa2, 0x2c, 0x06, 0x24, 0x66, 0xb7, 0x23, 0x2a, 0x0c, 0xa6, 0x2c, 0xfe, 0x5b, 0xba, 0xd4, 0x5b, 0x29, 0x83, 0x07, 0x3c, 0x75, 0x0a, 0x29, 0x0a, 0x97, 0x3a, 0x75,
0x08, 0x60, 0x2c, 0x03, 0x50, 0x10, 0x09, 0x22, 0x27, 0x64, 0xe0, 0xa8, 0xa8, 0x1d, 0x87, 0x27, 0x0a, 0x29, 0x0a, 0x97, 0x3a, 0x63, 0x3b, 0x29, 0x0a, 0x0f, 0x6f, 0x3c, 0x07, 0x5c, 0x02, 0x1d,
0x3a, 0x27, 0x10, 0x14, 0x3a, 0xb7, 0x80, 0x7c, 0x87, 0x84, 0x3c, 0x89, 0x1c, 0x5b, 0x50, 0x04, 0xd4, 0x5b, 0xba, 0xd4, 0x5b, 0x10, 0x09, 0x4c, 0x7a, 0x7f, 0xc2, 0x3c, 0xa4, 0xb5, 0xae, 0x7a,
0x26, 0x4d, 0x6f, 0x31, 0x8a, 0x89, 0x2e, 0x26, 0x74, 0x6f, 0x70, 0x89, 0x86, 0x84, 0x6c, 0x82, 0x7f, 0xc2, 0x10, 0x08, 0x5d, 0xc0, 0x73, 0x08, 0x5a, 0x29, 0x76, 0x39, 0x7e, 0xbb, 0x73, 0x0a,
0x52, 0x74, 0x28, 0x31, 0xb8, 0x61, 0x7b, 0x74, 0x38, 0x31, 0x0c, 0x60, 0x10, 0x0c, 0x81, 0x30, 0x46, 0x3c, 0xaf, 0x9d, 0x47, 0x01, 0x73, 0x0c, 0x55, 0x73, 0x70, 0xbc, 0x03, 0x4a, 0x7e, 0xc0,
0x42, 0xe0, 0x2b, 0x61, 0xe0, 0x2b, 0x10, 0x0c, 0x28, 0x1f, 0x4d, 0x2c, 0x07, 0x6c, 0x2a, 0x07, 0x73, 0x09, 0x53, 0x73, 0x05, 0x39, 0x73, 0x89, 0x01, 0xa8, 0x06, 0x3c, 0xaf, 0x3b, 0x29, 0x35,
0x24, 0x2a, 0x07, 0x60, 0x10, 0x0e, 0x6a, 0x2e, 0x54, 0x0d, 0x23, 0x0b, 0x05, 0x1c, 0x2d, 0x60, 0x5c, 0x7e, 0x0c, 0x55, 0x73, 0x08, 0x5a, 0xba, 0xb3, 0x4a, 0x10, 0x09, 0x4c, 0x7a, 0x7f, 0xc2,
0x81, 0x0c, 0x07, 0x5e, 0x34, 0x1f, 0xa6, 0x2c, 0x06, 0x24, 0x88, 0x31, 0x50, 0x6f, 0x31, 0x41, 0x9f, 0xae, 0xae, 0x7f, 0xc2, 0x7f, 0xc2, 0x10, 0x14, 0x3a, 0x18, 0x83, 0x0e, 0x02, 0x7f, 0x72,
0x0e, 0xf3, 0x19, 0x84, 0x2d, 0x19, 0x0a, 0x63, 0x05, 0x02, 0x01, 0x86, 0x19, 0x80, 0x02, 0x44, 0x7a, 0x82, 0x1d, 0x63, 0x4a, 0x04, 0x42, 0x79, 0x19, 0x75, 0x82, 0x35, 0x42, 0x6f, 0x69, 0x36,
0x03, 0xc7, 0x3d, 0x02, 0x44, 0x0a, 0x19, 0x0b, 0x63, 0x5e, 0x01, 0x04, 0x70, 0x19, 0x03, 0x2d, 0x82, 0x3a, 0x72, 0x7d, 0x3d, 0x0a, 0x0f, 0x6f, 0x1b, 0x75, 0x09, 0x23, 0x52, 0x6f, 0xba, 0x75,
0x08, 0x71, 0x5a, 0x59, 0xc4, 0x0b, 0x04, 0xfa, 0x10, 0x0f, 0x22, 0x20, 0x1d, 0x05, 0xa1, 0x0e, 0x08, 0x10, 0x0c, 0x4b, 0x6b, 0x43, 0xd4, 0x9e, 0x25, 0xd4, 0x9e, 0x10, 0x0c, 0x22, 0xab, 0x73,
0x91, 0xa5, 0x10, 0x0d, 0x30, 0x31, 0x54, 0x80, 0x73, 0x03, 0x81, 0x84, 0x2d, 0x5a, 0x5b, 0x50, 0x07, 0x7d, 0x7e, 0x07, 0x3b, 0x7e, 0x07, 0x5a, 0x10, 0x0e, 0x3a, 0x6b, 0x03, 0x08, 0xbd, 0x0e,
0x05, 0x01, 0x2e, 0x8d, 0x5a, 0x1f, 0x4d, 0x88, 0x33, 0x3a, 0x8b, 0x61, 0x3d, 0x2a, 0x8b, 0x2c, 0x61, 0x1d, 0x40, 0x5a, 0x20, 0x0c, 0x06, 0x4d, 0x35, 0x70, 0x55, 0x3c, 0xaf, 0x3b, 0x73, 0x01,
0x33, 0x3a, 0x3b, 0x4d, 0x88, 0x5b, 0x50, 0x05, 0x01, 0x2e, 0x8d, 0x81, 0x84, 0x2d, 0x81, 0x31, 0x4a, 0x19, 0x8f, 0x0b, 0x2f, 0x69, 0x72, 0x28, 0x0a, 0x39, 0x05, 0x7b, 0x34, 0x69, 0xbb, 0x1b,
0x07, 0x4a, 0x0e, 0x73, 0x03, 0x10, 0x0f, 0x38, 0x1b, 0x20, 0x19, 0x31, 0x90, 0x0b, 0xb3, 0x63, 0x8b, 0x87, 0x02, 0x1b, 0x0a, 0x86, 0x69, 0x0b, 0x39, 0x4d, 0x60, 0x0b, 0x7a, 0x69, 0x03, 0xc3,
0x4b, 0x01, 0x75, 0x93, 0x99, 0x60, 0x71, 0xb7, 0x90, 0x0b, 0x05, 0xfa, 0x10, 0x0e, 0x21, 0x30, 0x5a, 0x86, 0xb3, 0x0a, 0x0e, 0x5c, 0x0b, 0x04, 0x6e, 0x10, 0x0f, 0x98, 0x9f, 0x00, 0x05, 0xad,
0x06, 0x0b, 0x0e, 0x50, 0x0a, 0x03, 0x00, 0xb7, 0x0c, 0x2d, 0x06, 0x5a, 0x0c, 0x6c, 0x04, 0x02, 0xa2, 0xa3, 0x3d, 0x96, 0x03, 0x00, 0x41, 0x05, 0xad, 0x02, 0x10, 0x0d, 0x22, 0x6b, 0x8f, 0xbd,
0x34, 0x7b, 0x8c, 0x82, 0xc3, 0x38, 0x08, 0x9b, 0x82, 0x0b, 0xa6, 0x38, 0x3f, 0x82, 0x0e, 0x71, 0x5e, 0x04, 0x20, 0x72, 0x40, 0x19, 0x63, 0x4a, 0x05, 0x01, 0x35, 0x05, 0x0b, 0x19, 0xab, 0x29,
0x2b, 0x61, 0xe0, 0x2b, 0x82, 0x80, 0x02, 0x2c, 0x72, 0x2c, 0x1f, 0x4d, 0x88, 0x5b, 0x63, 0x05, 0x36, 0x05, 0x73, 0x58, 0x01, 0x62, 0x87, 0x7e, 0x58, 0x01, 0xa8, 0x05, 0x3c, 0xaf, 0x0f, 0x79,
0x01, 0x2e, 0x03, 0x54, 0x5a, 0x84, 0x47, 0x5a, 0x31, 0x41, 0x0e, 0x50, 0x0c, 0x6b, 0x10, 0x08, 0x29, 0x63, 0x4a, 0x05, 0x01, 0x35, 0x05, 0x0b, 0x20, 0x72, 0x40, 0x1d, 0x8f, 0xbd, 0x5e, 0x04,
0x40, 0x05, 0x0b, 0x80, 0xb0, 0x05, 0xf3, 0xb0, 0x8a, 0x5c, 0x88, 0x8b, 0xba, 0x20, 0x10, 0x0f, 0x10, 0x0f, 0x25, 0x4c, 0xb5, 0x19, 0xa5, 0x9a, 0x3d, 0x95, 0xa6, 0x61, 0x6e, 0x10, 0x0e, 0x3a,
0x30, 0x2e, 0x90, 0x0b, 0xb3, 0x63, 0x4b, 0x01, 0x75, 0x3c, 0x82, 0x07, 0x63, 0x38, 0x0c, 0x71, 0x6b, 0xaf, 0x0b, 0x58, 0x5e, 0x03, 0x19, 0x35, 0x0c, 0xc3, 0x46, 0x19, 0x0c, 0x7d, 0x04, 0x7b,
0x82, 0xb4, 0x71, 0x82, 0x8b, 0x38, 0x56, 0xb5, 0x00, 0xdc, 0x82, 0x8b, 0x38, 0x56, 0x82, 0xb4, 0x02, 0x52, 0x65, 0x23, 0xaf, 0x7d, 0x27, 0x08, 0x85, 0x3d, 0x0b, 0x55, 0x1b, 0x35, 0x4a, 0x3d,
0x71, 0x82, 0x07, 0x63, 0x38, 0x0c, 0x71, 0x82, 0x68, 0x63, 0x4b, 0x01, 0x04, 0x8a, 0x19, 0x57, 0x0e, 0x9e, 0x25, 0xd4, 0x9e, 0x3d, 0xbb, 0x73, 0x6c, 0x05, 0x73, 0xab, 0x29, 0x63, 0x39, 0x05,
0x27, 0x60, 0x71, 0xb7, 0x90, 0x0b, 0x05, 0x49, 0x00, 0xbb, 0x2c, 0x0b, 0x60, 0x5a, 0x0b, 0x05, 0x44, 0x80, 0x07, 0x0c, 0x69, 0x35, 0x42, 0x40, 0x20, 0x8f, 0x0b, 0x58, 0x66, 0x03, 0x10, 0x08,
0x02, 0x01, 0x01, 0x04, 0x70, 0x7c, 0x5a, 0x2d, 0x76, 0x81, 0x45, 0x0d, 0x80, 0x73, 0x03, 0x10, 0x4b, 0x05, 0x0b, 0x0e, 0x86, 0x7f, 0x05, 0x24, 0x7f, 0x6c, 0xa7, 0x29, 0xc3, 0xc7, 0x87, 0xc3,
0x0f, 0x22, 0x20, 0x1d, 0x04, 0xa1, 0x9e, 0x8f, 0xfa, 0x66, 0x19, 0xc2, 0x10, 0x07, 0x22, 0x9a, 0x7f, 0xa4, 0xb5, 0x10, 0x0f, 0x22, 0x6b, 0x6d, 0x42, 0x9a, 0x3d, 0x63, 0x39, 0x68, 0x60, 0x0c,
0x96, 0x20, 0xa8, 0x71, 0x10, 0x07, 0x22, 0x9a, 0x96, 0x20, 0xa8, 0x1d, 0x88, 0x49, 0x01, 0x08, 0x7a, 0x3d, 0x07, 0x39, 0x27, 0x7c, 0x3d, 0x6c, 0x05, 0x27, 0x77, 0x3d, 0x58, 0x56, 0x64, 0x0f,
0x24, 0x64, 0xe0, 0xa6, 0x3a, 0xad, 0x04, 0x10, 0x0e, 0x22, 0x20, 0x1d, 0x21, 0x31, 0x8a, 0x76, 0x56, 0x3d, 0x6c, 0x05, 0x27, 0x77, 0x3d, 0x07, 0x39, 0x27, 0x7c, 0x3d, 0x4f, 0x39, 0x68, 0x60,
0x38, 0x25, 0x31, 0x8a, 0x76, 0x44, 0x4c, 0x31, 0x8a, 0x51, 0x38, 0x4c, 0x84, 0x23, 0x03, 0x38, 0x0c, 0x7a, 0xa6, 0x61, 0x47, 0x29, 0x76, 0x39, 0xa8, 0x08, 0x19, 0x61, 0x7b, 0x60, 0x0b, 0x5c,
0x3d, 0x84, 0x23, 0x03, 0x66, 0x3d, 0x26, 0x89, 0x2f, 0x3d, 0x80, 0x74, 0x2f, 0x3d, 0x02, 0x26, 0x78, 0x87, 0xc3, 0x05, 0x20, 0x90, 0x0d, 0x58, 0x71, 0x03, 0x10, 0x0f, 0x98, 0x9f, 0x76, 0xad,
0x89, 0x66, 0x3d, 0x31, 0x0c, 0x50, 0x03, 0x66, 0x4c, 0x31, 0x0b, 0x23, 0x03, 0x86, 0xb5, 0x29, 0x9b, 0x86, 0xb8, 0x1f, 0x10, 0x07, 0x98, 0x81, 0x26, 0xb5, 0xae, 0x10, 0x07, 0x98, 0x81, 0xae,
0x51, 0x28, 0x3d, 0x44, 0x52, 0x9c, 0x4c, 0x44, 0x7b, 0x43, 0x10, 0x06, 0xae, 0x1d, 0x10, 0x18, 0xae, 0x1d, 0xa3, 0x29, 0x01, 0x08, 0x3b, 0x2a, 0xe0, 0x55, 0x3c, 0x5c, 0x0c, 0x04, 0x10, 0x0e,
0xbd, 0x04, 0x0b, 0x80, 0x73, 0x02, 0x21, 0x53, 0x80, 0x73, 0x01, 0x86, 0xdc, 0x7b, 0x27, 0x7c, 0x98, 0x9f, 0x22, 0x75, 0x59, 0x3d, 0xc7, 0x75, 0x59, 0x3d, 0xca, 0x75, 0x0e, 0x04, 0x3a, 0x41,
0x07, 0x27, 0x50, 0x58, 0xdc, 0x6c, 0x4b, 0x7e, 0x0e, 0x63, 0x6c, 0x4b, 0x7e, 0x0e, 0x60, 0x00, 0x72, 0x5c, 0x03, 0x3a, 0x87, 0x72, 0x5c, 0x03, 0x22, 0x87, 0x42, 0x82, 0x1b, 0x87, 0x58, 0x6f,
0xd4, 0x24, 0x44, 0x05, 0x0f, 0x24, 0x44, 0xb1, 0x0f, 0x8c, 0x44, 0x56, 0x03, 0x28, 0x31, 0x23, 0x19, 0xd4, 0x49, 0x42, 0x82, 0x1b, 0x41, 0x75, 0x0d, 0x03, 0x20, 0xca, 0x01, 0x0b, 0x5c, 0x03,
0x44, 0x32, 0xfa, 0x44, 0x32, 0xfa, 0x44, 0x32, 0xfa, 0x44, 0x32, 0xfa, 0x10, 0x0f, 0xbd, 0x04, 0x30, 0xd4, 0xc5, 0x0a, 0x5c, 0x57, 0x87, 0x1b, 0x48, 0x46, 0x87, 0x27, 0x52, 0x53, 0x10, 0x06,
0xa1, 0x9e, 0x8f, 0xfa, 0x66, 0x19, 0xc2, 0x10, 0x0e, 0x30, 0x31, 0x08, 0x4a, 0x6e, 0x5c, 0x81, 0x27, 0xb5, 0xae, 0xae, 0x10, 0x18, 0x6b, 0x34, 0x76, 0xad, 0x78, 0x76, 0x0a, 0x58, 0x71, 0x01,
0x57, 0x27, 0x23, 0x03, 0x6f, 0x5b, 0x63, 0x1e, 0x82, 0x1f, 0x4d, 0x28, 0x5b, 0x43, 0x82, 0xb4, 0x2d, 0xd4, 0x5a, 0x24, 0x5c, 0x33, 0x24, 0x4a, 0x44, 0x1a, 0x7d, 0x68, 0x8c, 0x0e, 0x4a, 0x7d,
0x6c, 0x82, 0x9f, 0x8b, 0x44, 0x31, 0x23, 0x82, 0xb4, 0x63, 0x82, 0x1f, 0x74, 0x28, 0x5b, 0x43, 0x68, 0x8c, 0x58, 0x37, 0xec, 0x3b, 0x1b, 0x77, 0x0a, 0x1b, 0x05, 0x39, 0x00, 0xd4, 0x65, 0x1b,
0x82, 0x68, 0x63, 0x1e, 0x6f, 0x57, 0x27, 0x23, 0x03, 0x5a, 0x31, 0x08, 0x5d, 0x0e, 0x0d, 0x5c, 0x89, 0x03, 0xa3, 0x3f, 0xb0, 0xb0, 0xb0, 0x3a, 0xd4, 0xc5, 0xca, 0x3f, 0x10, 0x0f, 0x6b, 0x34,
0x10, 0x0f, 0xbd, 0x05, 0xa1, 0x0e, 0x91, 0xa5, 0x20, 0x71, 0x10, 0x0f, 0x30, 0x31, 0x90, 0x0b, 0x76, 0xad, 0x9b, 0x86, 0xb8, 0x1f, 0x10, 0x0e, 0x22, 0x6b, 0x01, 0x08, 0x0c, 0x0e, 0x66, 0x44,
0xb3, 0x63, 0x4b, 0x01, 0x75, 0x93, 0x99, 0x60, 0x71, 0xb7, 0x90, 0x0b, 0x05, 0x00, 0x20, 0x1d, 0xb3, 0x2f, 0x0e, 0x03, 0x69, 0x63, 0x39, 0x68, 0x60, 0x6c, 0x79, 0x3d, 0xab, 0x22, 0x63, 0x53,
0x10, 0x0a, 0xbd, 0x53, 0x0d, 0x19, 0xec, 0x60, 0x27, 0x38, 0x3d, 0x6c, 0x4b, 0x5a, 0xd4, 0x6c, 0x3d, 0x6c, 0x05, 0x27, 0x05, 0x7d, 0x3d, 0x58, 0x44, 0xa3, 0x64, 0x0f, 0x44, 0xa3, 0x3d, 0x6c,
0x64, 0xd4, 0xa6, 0x2c, 0x39, 0x88, 0x20, 0x9a, 0x10, 0x0c, 0x30, 0x59, 0x0d, 0xad, 0x09, 0x03, 0x05, 0x27, 0x05, 0x39, 0x3d, 0x70, 0x6f, 0x22, 0x63, 0x53, 0x3d, 0x4f, 0x39, 0x68, 0x60, 0x6c,
0x81, 0x04, 0x47, 0x81, 0x0c, 0x6c, 0x5e, 0x62, 0x8d, 0x81, 0x39, 0x88, 0x0d, 0x43, 0x2c, 0x1f, 0x79, 0x69, 0x03, 0x2f, 0x0e, 0x03, 0x20, 0x01, 0x08, 0x0d, 0x8a, 0x67, 0x01, 0x10, 0x0f, 0x00,
0x23, 0x0b, 0x08, 0x04, 0x87, 0x06, 0x0d, 0x3c, 0x23, 0x07, 0x28, 0xb7, 0x05, 0x08, 0x8a, 0x43, 0x6b, 0xd0, 0x05, 0xad, 0xa2, 0xa3, 0x3d, 0x96, 0x03, 0x00, 0x41, 0x05, 0xad, 0x78, 0x87, 0xb5,
0x2c, 0x05, 0x50, 0x88, 0x31, 0x23, 0x5a, 0x0d, 0x08, 0x04, 0x7f, 0x62, 0x0b, 0x63, 0x5a, 0x2d, 0x10, 0x0f, 0x22, 0x6b, 0xa5, 0x9a, 0x3d, 0x95, 0xa6, 0x61, 0x6e, 0x2c, 0xb5, 0x10, 0x0a, 0x6b,
0x23, 0x03, 0xb7, 0x41, 0x0d, 0xad, 0x5c, 0x10, 0x09, 0x86, 0x8e, 0x9a, 0xba, 0x8b, 0x2c, 0x8a, 0x34, 0x76, 0x0a, 0x0d, 0xc7, 0x87, 0x08, 0x7a, 0xc7, 0x87, 0x7d, 0x68, 0x19, 0xd4, 0x9d, 0x0f,
0x5f, 0x88, 0x07, 0x27, 0x3a, 0x07, 0x0d, 0x3c, 0x10, 0x0f, 0xbd, 0x38, 0x19, 0xc2, 0x28, 0xdc, 0x55, 0x62, 0x87, 0x01, 0x73, 0xa4, 0x10, 0x0c, 0x3a, 0x6b, 0x03, 0x0a, 0x42, 0x4a, 0x5f, 0x20,
0x37, 0xf0, 0x66, 0x19, 0x8b, 0x28, 0x2e, 0x19, 0x72, 0x44, 0x0a, 0x19, 0x7b, 0x67, 0x01, 0x01, 0x88, 0xc3, 0x20, 0x0c, 0x7d, 0x4d, 0x35, 0x06, 0x0b, 0x2d, 0x87, 0x44, 0xb9, 0x07, 0x73, 0x70,
0x04, 0x70, 0x19, 0x5b, 0x27, 0x60, 0x19, 0x31, 0x90, 0x0b, 0x04, 0xfa, 0x10, 0x0f, 0x6a, 0x72, 0x5c, 0x0b, 0x08, 0x04, 0x1d, 0xaf, 0x0d, 0x7a, 0x5c, 0x07, 0x2a, 0x35, 0x05, 0x08, 0x6c, 0x53,
0x66, 0xb1, 0x66, 0xc3, 0x66, 0xa2, 0x35, 0x56, 0x02, 0x44, 0x79, 0x01, 0x82, 0x0a, 0x43, 0x44, 0x73, 0x05, 0x94, 0x47, 0x19, 0x74, 0x04, 0x44, 0x80, 0x0b, 0x39, 0x19, 0x40, 0x5c, 0x03, 0xb3,
0x07, 0x24, 0x6f, 0xc5, 0x44, 0x94, 0x5a, 0x94, 0x86, 0xc5, 0x81, 0x07, 0x24, 0x86, 0x0a, 0x43, 0x08, 0x0b, 0x58, 0x66, 0x01, 0x10, 0x09, 0x4b, 0xb5, 0x29, 0xc3, 0xc7, 0x87, 0xc3, 0x7f, 0xa4,
0x00, 0xb7, 0x39, 0x56, 0x02, 0x1c, 0xa2, 0x00, 0xc3, 0x64, 0x05, 0x63, 0x00, 0x72, 0x87, 0x80, 0x7e, 0x58, 0x01, 0x73, 0x0c, 0x53, 0x01, 0x29, 0x07, 0x24, 0x3c, 0x07, 0x0d, 0x7a, 0x10, 0x0f,
0x06, 0x23, 0x3a, 0x08, 0x23, 0x60, 0x3a, 0x03, 0x71, 0x8c, 0x10, 0x14, 0x6a, 0xa3, 0x86, 0x52, 0x91, 0x5a, 0x86, 0x19, 0xa5, 0x0e, 0x0b, 0x04, 0x6e, 0x10, 0x0f, 0x2d, 0x6b, 0x6c, 0x05, 0xba,
0x9b, 0x28, 0x03, 0x50, 0x66, 0x09, 0x43, 0x28, 0x26, 0x50, 0x28, 0x07, 0x9b, 0x66, 0x05, 0x6c, 0x05, 0x39, 0x2b, 0xaf, 0x7d, 0xba, 0x0b, 0x46, 0x30, 0x89, 0x02, 0x22, 0x35, 0x86, 0x01, 0x3d,
0x21, 0x2e, 0x23, 0x80, 0x02, 0x86, 0x33, 0x44, 0x56, 0x58, 0x06, 0x24, 0x29, 0x06, 0x21, 0x56, 0x0a, 0x53, 0x1b, 0x07, 0x3b, 0x3d, 0x76, 0x4a, 0x1b, 0x0d, 0x55, 0x19, 0x0d, 0x55, 0x2d, 0x76,
0x01, 0x2f, 0x0c, 0xa6, 0x21, 0x29, 0x06, 0x06, 0x24, 0x21, 0xbb, 0x3e, 0x08, 0x60, 0x21, 0x80, 0x4a, 0x20, 0x07, 0x3b, 0x3a, 0x0a, 0x53, 0x19, 0x35, 0x86, 0x44, 0x89, 0x02, 0x1d, 0x0b, 0x46,
0x02, 0x02, 0x23, 0x21, 0x08, 0x60, 0x3e, 0xbb, 0x00, 0x03, 0x50, 0x21, 0xa3, 0x0c, 0xa6, 0x4f, 0x00, 0x06, 0x7d, 0x2a, 0x05, 0x39, 0x00, 0x6c, 0x05, 0x7f, 0x0e, 0x46, 0x5c, 0x3c, 0x08, 0x5c,
0x8b, 0x07, 0x9b, 0x21, 0x52, 0x5f, 0x23, 0x61, 0x0b, 0x76, 0x33, 0x05, 0x6c, 0x05, 0x6c, 0x61, 0x5a, 0x3c, 0x8b, 0x65, 0x10, 0x14, 0x2d, 0x6b, 0xc0, 0x22, 0x09, 0x6a, 0x22, 0x03, 0x4a, 0xba,
0x06, 0x24, 0x71, 0x58, 0x56, 0x29, 0x06, 0x61, 0x79, 0x63, 0x28, 0x8a, 0xb6, 0x21, 0x26, 0x60, 0x09, 0x53, 0x22, 0x42, 0x4a, 0x22, 0x07, 0x85, 0xba, 0x05, 0x7d, 0x2d, 0x35, 0x5c, 0xbb, 0x3a,
0x28, 0x7b, 0x50, 0x82, 0x52, 0xa6, 0x28, 0x83, 0x9b, 0x10, 0x0f, 0x6a, 0x52, 0x4d, 0x44, 0x5b, 0x36, 0x05, 0xba, 0x89, 0x01, 0xaf, 0x3b, 0x0a, 0x46, 0x2d, 0x89, 0x01, 0x62, 0x0c, 0x55, 0x2d,
0x9b, 0x82, 0x0b, 0x6c, 0x44, 0x0b, 0x6c, 0x6f, 0x5b, 0x9b, 0x86, 0x52, 0x4d, 0x5a, 0x03, 0x80, 0x0a, 0x46, 0x06, 0x3b, 0x00, 0x76, 0x39, 0x25, 0x52, 0x37, 0xbb, 0x02, 0x5c, 0x2d, 0x08, 0x5a,
0x06, 0x00, 0x06, 0x23, 0x03, 0x1c, 0x05, 0x71, 0x1f, 0x76, 0x87, 0x08, 0x71, 0x60, 0x3a, 0x03, 0x62, 0x76, 0x39, 0x00, 0x03, 0x4a, 0x2d, 0xc0, 0x00, 0x0c, 0x55, 0x2b, 0x58, 0x8f, 0x85, 0x2d,
0x3c, 0x02, 0x87, 0x5b, 0x23, 0x6c, 0x87, 0x0a, 0x63, 0x84, 0x60, 0x1c, 0x06, 0x23, 0x7f, 0x03, 0x09, 0x53, 0x47, 0x23, 0x36, 0x05, 0x36, 0x54, 0x0f, 0x61, 0x7d, 0x25, 0xaf, 0x3b, 0x86, 0x01,
0x0f, 0x76, 0x5a, 0x03, 0x0f, 0x76, 0x86, 0x1f, 0x7c, 0x82, 0x5b, 0x9b, 0x44, 0x0a, 0x63, 0x82, 0x2d, 0x89, 0x0a, 0x46, 0x2b, 0x35, 0x86, 0x39, 0x22, 0x7c, 0x49, 0x30, 0x42, 0x5a, 0x22, 0x52,
0x09, 0x63, 0x38, 0x5b, 0x9b, 0x10, 0x0f, 0x6a, 0x72, 0x66, 0x06, 0x63, 0x35, 0x06, 0x63, 0x66, 0x4a, 0x3d, 0x48, 0x55, 0x3a, 0x76, 0x6a, 0x10, 0x0f, 0x2d, 0x6b, 0x48, 0x79, 0x1b, 0x63, 0x85,
0x72, 0x35, 0x68, 0x8c, 0x44, 0x04, 0x23, 0x6f, 0x08, 0x9b, 0x44, 0x0a, 0x60, 0x82, 0x2e, 0x23, 0x3d, 0x0b, 0x7d, 0x1b, 0x0b, 0x7d, 0x69, 0x63, 0x85, 0x3a, 0x48, 0x79, 0xb3, 0x0e, 0x46, 0x00,
0x58, 0x31, 0xb6, 0x44, 0xa2, 0x86, 0x08, 0x24, 0x81, 0x05, 0x50, 0x86, 0x0e, 0xa6, 0x1c, 0x94, 0x06, 0x5c, 0x03, 0x1d, 0x77, 0x70, 0x59, 0x2a, 0x08, 0x86, 0x5a, 0x3c, 0x8b, 0x49, 0x7f, 0x63,
0x00, 0xb1, 0x82, 0x07, 0x24, 0x00, 0x8a, 0x06, 0x64, 0x79, 0x83, 0x6d, 0x87, 0x0a, 0x23, 0x60, 0x5c, 0x7d, 0x7f, 0x0a, 0x39, 0x72, 0x5a, 0x19, 0xaf, 0x5c, 0x78, 0x8b, 0x05, 0x19, 0x8b, 0x05,
0x3a, 0x83, 0xb6, 0x61, 0x0d, 0x24, 0x2c, 0x94, 0x88, 0xc5, 0x88, 0x03, 0x8a, 0x06, 0x1c, 0xe0, 0x3a, 0x07, 0x5c, 0x02, 0x3d, 0x63, 0x85, 0x1b, 0x0a, 0x39, 0x3d, 0x09, 0x39, 0x27, 0x63, 0x85,
0x63, 0x3a, 0x78, 0x01, 0x10, 0x0d, 0x6a, 0xaf, 0x66, 0x83, 0x43, 0x3a, 0x57, 0x60, 0x44, 0xb7, 0x10, 0x0f, 0x2d, 0x6b, 0x6c, 0x05, 0xba, 0xa9, 0x30, 0xa9, 0xba, 0x6c, 0x05, 0x30, 0x4f, 0x65,
0x0e, 0x24, 0x3a, 0x5b, 0x6c, 0x87, 0x31, 0x8a, 0x74, 0x3a, 0x70, 0x4d, 0x3a, 0x29, 0x7c, 0x3a, 0x22, 0x76, 0x5c, 0x69, 0x08, 0x85, 0x1b, 0x0a, 0x5a, 0x3d, 0x35, 0xbe, 0x00, 0x89, 0x02, 0x19,
0x08, 0x23, 0x03, 0x3a, 0x1f, 0xa6, 0x88, 0xaf, 0x10, 0x0f, 0x86, 0x1b, 0x54, 0x80, 0x3a, 0x07, 0x0b, 0x46, 0x3a, 0x08, 0x3b, 0x20, 0x05, 0x4a, 0x3a, 0x0e, 0x55, 0x1d, 0x42, 0x57, 0x05, 0x39,
0xf3, 0x3a, 0x8a, 0x5c, 0x88, 0x8b, 0x2c, 0x9a, 0x88, 0x56, 0x2c, 0xc5, 0x3a, 0x62, 0xb8, 0x1c, 0x2a, 0x07, 0x3b, 0x00, 0x0c, 0x46, 0x1d, 0x35, 0x0f, 0x55, 0xbe, 0x1d, 0x0a, 0x5c, 0x5a, 0x3c,
0xe0, 0x6c, 0x01, 0x1c, 0xe0, 0x24, 0x01, 0x87, 0x31, 0x04, 0xb8, 0x2c, 0x03, 0x50, 0x2a, 0x20, 0x88, 0x49, 0xb9, 0x0a, 0x73, 0x0d, 0x55, 0x3c, 0x76, 0x4a, 0x27, 0xb3, 0x0c, 0x46, 0x1d, 0xe0,
0x8b, 0x2c, 0x8a, 0x5c, 0x88, 0x07, 0xf3, 0x88, 0x54, 0x80, 0x10, 0x08, 0x00, 0xae, 0x20, 0x9a, 0x39, 0x20, 0xd4, 0x5c, 0x09, 0x01, 0x10, 0x0d, 0x6b, 0x50, 0x28, 0x9e, 0x29, 0x88, 0x07, 0x1b,
0x61, 0x3d, 0x10, 0x0f, 0x00, 0x22, 0xad, 0x07, 0x87, 0xe0, 0x43, 0x3a, 0x31, 0x08, 0x63, 0xb9, 0xb3, 0x0e, 0x5a, 0x3c, 0x83, 0x0a, 0x3c, 0x63, 0x7d, 0x3c, 0x75, 0x6f, 0x3c, 0x36, 0x79, 0x3c,
0x00, 0x9a, 0x2c, 0x39, 0x88, 0xa3, 0x88, 0x0a, 0x63, 0x5e, 0x3a, 0x85, 0x3c, 0xb0, 0x85, 0x3c, 0x0a, 0x5c, 0x02, 0x3c, 0x08, 0x5c, 0x03, 0x3c, 0x70, 0x55, 0xba, 0x87, 0x28, 0x9e, 0x10, 0x0f,
0xb0, 0x09, 0x63, 0x4b, 0x3a, 0xa3, 0x88, 0x9a, 0x61, 0x3d, 0x2c, 0x49, 0x01, 0x08, 0x63, 0x64, 0x3a, 0x18, 0x07, 0xbd, 0x3c, 0x07, 0x31, 0x3c, 0x6c, 0xa7, 0x26, 0x73, 0x89, 0x29, 0x76, 0x4a,
0xe0, 0x43, 0x3a, 0xad, 0x07, 0x10, 0x14, 0x1c, 0x96, 0x30, 0x31, 0x4f, 0x2e, 0x09, 0x0d, 0x50, 0x3c, 0x80, 0x0c, 0x85, 0x1d, 0xe0, 0x7d, 0x01, 0x1d, 0xe0, 0x3b, 0x01, 0x3c, 0x60, 0x6c, 0xbc,
0x6b, 0x28, 0x31, 0x0c, 0x4f, 0x06, 0x0e, 0x27, 0x24, 0x4b, 0x01, 0x06, 0x80, 0x4f, 0x63, 0x05, 0x03, 0x4a, 0xb5, 0x7e, 0x58, 0x01, 0x73, 0x0c, 0x5a, 0x01, 0x29, 0x07, 0x31, 0x29, 0x07, 0xbd,
0x01, 0x01, 0x53, 0x2d, 0x06, 0x4f, 0x07, 0x38, 0xa9, 0x73, 0x02, 0x10, 0x10, 0x08, 0x00, 0x98, 0xae, 0xae, 0xae, 0x10, 0x0f, 0x5d, 0xec, 0xb2, 0x7f, 0xe0, 0x53, 0x29,
0x01, 0x08, 0x39, 0x1d, 0xa3, 0xb5, 0x01, 0x73, 0xc0, 0x73, 0x0a, 0x39, 0x4d, 0x3c, 0x01, 0x0a,
0x31, 0x7f, 0x01, 0x0a, 0x31, 0x7f, 0x09, 0x39, 0x68, 0x3c, 0xc0, 0x62, 0x87, 0x9f, 0x1d, 0xa3,
0x29, 0x01, 0x08, 0x39, 0x2a, 0xe0, 0x53, 0x20, 0xd4, 0xb2, 0x10, 0x14, 0x23, 0x18, 0x81, 0x6b,
0x01, 0x23, 0x6d, 0x42, 0x67, 0x02, 0x1b, 0x01, 0x0c, 0x62, 0xaf, 0x2f, 0x0a, 0x68, 0x01, 0x06,
0x58, 0x2b, 0x39, 0x05, 0x01, 0x60, 0x0a, 0xc3, 0x46, 0x2b, 0x07, 0x27, 0x8e, 0x4a, 0x8d, 0x10,
}; };
static const gU16 mf_rlefont_DejaVuSans24_aa_glyph_offsets_0[95] PROGMEM = { static const gU16 mf_rlefont_DejaVuSans24_aa_glyph_offsets_0[95] = {
0x0000, 0x0003, 0x0015, 0x0020, 0x006c, 0x00c7, 0x015f, 0x01cc, 0x0000, 0x0003, 0x0015, 0x001d, 0x0077, 0x00d4, 0x0174, 0x01dd,
0x01d1, 0x020f, 0x0247, 0x0276, 0x0285, 0x0289, 0x0293, 0x0297, 0x01e1, 0x021d, 0x0251, 0x0282, 0x028f, 0x0299, 0x02a2, 0x02a7,
0x02d0, 0x0329, 0x033c, 0x0377, 0x03c0, 0x03f6, 0x042d, 0x0489, 0x02de, 0x0337, 0x034b, 0x0389, 0x03d2, 0x040b, 0x0440, 0x049d,
0x04bc, 0x0522, 0x0581, 0x0589, 0x0591, 0x05c7, 0x05d1, 0x0608, 0x04cf, 0x0539, 0x0598, 0x05a0, 0x05ad, 0x05d6, 0x05e5, 0x060c,
0x0638, 0x06f6, 0x074a, 0x0792, 0x07de, 0x0828, 0x0836, 0x0844, 0x063e, 0x06fc, 0x0757, 0x07a0, 0x07f0, 0x084a, 0x0859, 0x0867,
0x0899, 0x08af, 0x08b3, 0x08c6, 0x0915, 0x0919, 0x0983, 0x09db, 0x08c2, 0x08d3, 0x08d9, 0x08ef, 0x093c, 0x0943, 0x09ae, 0x0a06,
0x0a13, 0x0a37, 0x0a7a, 0x0ac1, 0x0b0e, 0x0b14, 0x0b41, 0x0b95, 0x0a4b, 0x0a70, 0x0abf, 0x0b03, 0x0b52, 0x0b5e, 0x0b8e, 0x0bee,
0x0c3c, 0x0c9f, 0x0cd7, 0x0cff, 0x0d0d, 0x0d46, 0x0d53, 0x0d7d, 0x0c96, 0x0cf4, 0x0d2e, 0x0d56, 0x0d63, 0x0d9b, 0x0da8, 0x0dd2,
0x0d87, 0x0d95, 0x0dd9, 0x0de3, 0x0e16, 0x0e2d, 0x0e6f, 0x0e7f, 0x0ddc, 0x0de9, 0x0e2a, 0x0e3b, 0x0e71, 0x0e7e, 0x0ebf, 0x0ed4,
0x0ed0, 0x0edd, 0x0ee5, 0x0ef8, 0x0f3b, 0x0f3f, 0x0f7d, 0x0f88, 0x0f1b, 0x0f25, 0x0f2c, 0x0f3f, 0x0f7f, 0x0f85, 0x0fbd, 0x0fc7,
0x0fc1, 0x0fcb, 0x0fe1, 0x0ff9, 0x1038, 0x1049, 0x106d, 0x10ab, 0x100e, 0x1021, 0x102e, 0x1047, 0x1086, 0x109f, 0x10aa, 0x10f5,
0x111a, 0x1166, 0x11b5, 0x11d9, 0x120b, 0x1213, 0x1246, 0x1168, 0x11b1, 0x1207, 0x122f, 0x1261, 0x1268, 0x129b,
}; };
static const struct mf_rlefont_char_range_s mf_rlefont_DejaVuSans24_aa_char_ranges[] = { static const struct mf_rlefont_char_range_s mf_rlefont_DejaVuSans24_aa_char_ranges[] = {
@ -414,8 +418,8 @@ const struct mf_rlefont_s mf_rlefont_DejaVuSans24_aa = {
4, /* version */ 4, /* version */
mf_rlefont_DejaVuSans24_aa_dictionary_data, mf_rlefont_DejaVuSans24_aa_dictionary_data,
mf_rlefont_DejaVuSans24_aa_dictionary_offsets, mf_rlefont_DejaVuSans24_aa_dictionary_offsets,
119, /* rle dict count */ 121, /* rle dict count */
174, /* total dict count */ 169, /* total dict count */
1, /* char range count */ 1, /* char range count */
mf_rlefont_DejaVuSans24_aa_char_ranges, mf_rlefont_DejaVuSans24_aa_char_ranges,
}; };

View file

@ -11,248 +11,240 @@
#error The font file is not compatible with this version of mcufont. #error The font file is not compatible with this version of mcufont.
#endif #endif
static const gU8 mf_rlefont_DejaVuSans32_dictionary_data[470] PROGMEM = { static const gU8 mf_rlefont_DejaVuSans32_dictionary_data[578] = {
0x07, 0x80, 0x1e, 0x82, 0x1e, 0x82, 0x1d, 0x0a, 0x82, 0x11, 0x82, 0x0a, 0x82, 0x11, 0x0d, 0x42, 0x06, 0x83, 0x1e, 0x82, 0x03, 0x0c, 0x80, 0x09, 0x8b, 0x84, 0x0e, 0x80, 0x82, 0x0c, 0x80, 0x05,
0x39, 0x82, 0x1e, 0x82, 0x1e, 0x81, 0x83, 0x02, 0x11, 0x82, 0x0a, 0x82, 0x11, 0x82, 0x01, 0x82, 0x83, 0x16, 0x83, 0x93, 0x0d, 0x87, 0x83, 0x11, 0x81, 0x1c, 0x87, 0x17, 0x80, 0x01, 0x1e, 0x82,
0x0b, 0x82, 0x10, 0x82, 0x04, 0x18, 0x13, 0x1c, 0x86, 0x12, 0x88, 0x01, 0x83, 0x04, 0x82, 0x09, 0x1e, 0x82, 0x1b, 0x81, 0x07, 0x82, 0x06, 0x06, 0x82, 0x03, 0x0b, 0x82, 0x08, 0x03, 0x82, 0x85,
0x82, 0x0f, 0x02, 0x82, 0x1d, 0x08, 0x81, 0x85, 0x01, 0x87, 0x82, 0x0f, 0x81, 0x14, 0x06, 0x82, 0x08, 0x11, 0x83, 0x05, 0x11, 0x8f, 0x11, 0x80, 0x01, 0x82, 0x91, 0x0e, 0x92, 0x16, 0x1a, 0x82,
0x04, 0x83, 0x1c, 0x83, 0x15, 0x12, 0x8d, 0x02, 0x83, 0x43, 0x0d, 0x0c, 0x82, 0x80, 0x1e, 0x84, 0x10, 0x82, 0x80, 0x12, 0x04, 0x83, 0x8f, 0x18, 0x82, 0x11, 0x82, 0x0a, 0x82, 0x11, 0x82, 0x0a,
0x11, 0x12, 0x02, 0x82, 0x04, 0x1f, 0x81, 0x82, 0x1c, 0x8b, 0x05, 0x81, 0x04, 0x83, 0x12, 0x87, 0x82, 0x11, 0x82, 0x0a, 0x82, 0x15, 0x0f, 0x0a, 0x83, 0x12, 0x0d, 0x82, 0x03, 0x08, 0x83, 0x05,
0x8e, 0x12, 0x8e, 0x10, 0x8a, 0x14, 0x85, 0x13, 0x80, 0x1e, 0x82, 0x1d, 0x04, 0x82, 0x04, 0x84, 0x40, 0x07, 0x1e, 0x83, 0x11, 0x82, 0x05, 0x46, 0x05, 0x82, 0x0f, 0x04, 0x82, 0x0b, 0x8e, 0x0f,
0x08, 0x83, 0x01, 0x11, 0x8f, 0x0a, 0x01, 0x82, 0x1e, 0x82, 0x1e, 0x82, 0x1e, 0x82, 0x1e, 0x82, 0x0b, 0x81, 0x1a, 0x83, 0x87, 0x1f, 0x81, 0x13, 0x88, 0x0d, 0x07, 0x83, 0x14, 0x83, 0x14, 0x82,
0x89, 0x10, 0x05, 0x82, 0x04, 0x93, 0x0d, 0x93, 0x0d, 0x8e, 0x82, 0x03, 0x82, 0x18, 0x82, 0x03, 0x81, 0x19, 0x89, 0x16, 0x89, 0x80, 0x14, 0x82, 0x81, 0x01, 0x82, 0x08, 0x82, 0x02, 0x80, 0x1f,
0x82, 0x18, 0x82, 0x03, 0x82, 0x18, 0x35, 0x15, 0x0f, 0x83, 0x09, 0x81, 0x4a, 0x1b, 0x0b, 0x82, 0x82, 0x0d, 0x82, 0x0e, 0x82, 0x0d, 0x82, 0x0e, 0x80, 0x16, 0x82, 0x04, 0x04, 0x82, 0x81, 0x13,
0x11, 0x01, 0x8d, 0x13, 0x40, 0x23, 0x0d, 0x82, 0x1a, 0x8d, 0x13, 0x8b, 0x81, 0x01, 0x03, 0x01, 0x8c, 0x8a, 0x01, 0x01, 0x83, 0x17, 0x18, 0x8a, 0x16, 0x8b, 0x15, 0x81, 0x05, 0x13, 0x83, 0x17,
0x81, 0x06, 0x01, 0x80, 0x02, 0x80, 0x40, 0x28, 0x80, 0x02, 0x80, 0x01, 0x80, 0x10, 0xe1, 0x44, 0x01, 0x81, 0x41, 0x17, 0x1d, 0x19, 0x43, 0x08, 0x08, 0x82, 0x06, 0x81, 0x0f, 0x82, 0x0c, 0x82,
0x29, 0xe5, 0x00, 0x3b, 0x26, 0x4a, 0xbc, 0x22, 0x2b, 0xa1, 0x32, 0x5b, 0x51, 0xa5, 0x37, 0xd2, 0x0f, 0x82, 0x0c, 0x82, 0x0f, 0x82, 0x0a, 0x81, 0x14, 0x08, 0x82, 0x02, 0x86, 0x04, 0x80, 0x02,
0x18, 0x1e, 0x51, 0x18, 0x26, 0x57, 0x1a, 0x4a, 0x1a, 0x4a, 0x1a, 0xf3, 0x46, 0x1b, 0x44, 0x3e, 0x82, 0x80, 0x01, 0x80, 0x40, 0x28, 0x27, 0x27, 0x27, 0x27, 0x18, 0xd3, 0x21, 0x6a, 0x51, 0x5a,
0xf3, 0xc5, 0x2a, 0x38, 0x2c, 0x29, 0x4c, 0x38, 0xca, 0x9c, 0x47, 0x1e, 0x48, 0x2b, 0x3c, 0x5c, 0x24, 0xeb, 0xa4, 0xd3, 0x3f, 0x3b, 0x3b, 0x1e, 0xcb, 0x3b, 0x56, 0x52, 0x2b, 0x64, 0x44, 0x30,
0x36, 0x00, 0x30, 0x0f, 0x36, 0x5d, 0x23, 0x1d, 0x43, 0x23, 0x34, 0x49, 0x51, 0x0f, 0x5d, 0x37, 0x2b, 0x64, 0x44, 0x30, 0x2b, 0x64, 0x44, 0x30, 0x2b, 0x64, 0x2a, 0x2b, 0x69, 0x68, 0xa7, 0x66,
0x55, 0x2b, 0xd3, 0x4a, 0x42, 0x55, 0x45, 0xc5, 0x37, 0x26, 0xd4, 0xc7, 0x51, 0x5d, 0x33, 0x1f, 0x1d, 0xb3, 0x59, 0x34, 0x1d, 0x58, 0xcb, 0x33, 0x3e, 0x1b, 0x3e, 0x3e, 0x38, 0x38, 0x2e, 0x2c,
0x1a, 0x4a, 0x1a, 0x0f, 0x5b, 0x27, 0x5b, 0x27, 0x5b, 0x27, 0x5b, 0x27, 0x5b, 0x27, 0x5b, 0x27, 0x34, 0x53, 0x34, 0x1d, 0x35, 0x59, 0x51, 0x23, 0xbf, 0x39, 0xc2, 0x2c, 0x39, 0x1c, 0x4d, 0xf4,
0x5b, 0x27, 0x5b, 0x27, 0x5b, 0x27, 0x5b, 0x27, 0x5b, 0x27, 0x5b, 0x27, 0x5b, 0x27, 0xbc, 0x46, 0x33, 0xff, 0x3f, 0x41, 0x41, 0xf4, 0x32, 0x27, 0x61, 0x32, 0xeb, 0x48, 0x68, 0x67, 0xd2, 0x42,
0x2f, 0x57, 0xc4, 0x33, 0x22, 0x4a, 0xbc, 0x2d, 0xa0, 0xbc, 0x1b, 0x5b, 0x31, 0xcb, 0x3e, 0xe0, 0xb4, 0x34, 0x67, 0x63, 0x55, 0x27, 0x19, 0x61, 0x63, 0x55, 0x27, 0x19, 0x66, 0x2b, 0x27, 0x27,
0xc4, 0x33, 0x22, 0xcb, 0x2e, 0xff, 0x43, 0x49, 0x1d, 0x19, 0x30, 0x30, 0x30, 0x30, 0x26, 0x37, 0x27, 0x19, 0x40, 0x68, 0x27, 0x19, 0x40, 0x57, 0x32, 0x00, 0xc0, 0x2e, 0xdc, 0x34, 0xc3, 0x35,
0x52, 0x37, 0xff, 0x43, 0x49, 0xf0, 0x19, 0x52, 0x61, 0x51, 0x46, 0x63, 0x1e, 0x2e, 0x38, 0x45, 0xc5, 0x1e, 0x1c, 0x34, 0xd2, 0x6a, 0x66, 0xcb, 0xc2, 0x37, 0x2c, 0x37, 0x2c, 0xcb, 0x62, 0xc2,
0xc5, 0x37, 0x55, 0xbb, 0x24, 0x5f, 0xc7, 0x37, 0x26, 0x33, 0x48, 0x46, 0x18, 0x1e, 0x39, 0x29, 0x27, 0x27, 0x27, 0x0f, 0xc5, 0x32, 0x30, 0x2c, 0x67, 0x53, 0x67, 0x53, 0x67, 0x53, 0x67, 0x53,
0x61, 0x57, 0x35, 0x1b, 0x2e, 0x29, 0xe5, 0x4c, 0x44, 0x44, 0xb4, 0x35, 0x1b, 0xcb, 0x5f, 0x25, 0x67, 0x53, 0xd2, 0x2a, 0x42, 0x6c, 0x4e, 0x20, 0xe4, 0x42, 0xcb, 0x4f, 0x69, 0xd2, 0x3d, 0x3b,
0x0f, 0xa7, 0x37, 0xd4, 0xbf, 0x42, 0x4a, 0x4c, 0x5c, 0x19, 0x49, 0x1d, 0x19, 0x0f, 0x38, 0x00, 0x67, 0x58, 0xc5, 0x3b, 0x3b, 0x3a, 0xc2, 0x18, 0x34, 0x1c, 0x66, 0x1c, 0x32, 0x5b, 0x6c, 0xc0,
0x46, 0x49, 0x1d, 0x00, 0xcb, 0x27, 0x44, 0xbc, 0x18, 0x57, 0xc4, 0x57, 0xc5, 0x46, 0x3e, 0x5c, 0x37, 0xdc, 0xc7, 0x4f, 0x35, 0xff, 0x5a, 0x3c, 0xc3, 0x35, 0x5d, 0x4d, 0x67, 0x3b, 0x64, 0x00,
0xc7, 0x3e, 0x1e, 0x2e, 0x38, 0x27, 0xe0, 0xc4, 0xcb, 0x2f, 0xa2, 0x63, 0x5c, 0x43, 0x2a, 0x42, 0x2b, 0xd2, 0x42, 0x58, 0x69, 0xc2, 0x39, 0xd2, 0x49, 0x51, 0x5a, 0x3c, 0xc3, 0x35, 0xc5, 0x1e,
0x38, 0x1d, 0x43, 0x1b, 0x4f, 0x48, 0xcb, 0x31, 0xec, 0xc7, 0x31, 0x39, 0x18, 0x1e, 0x48, 0x4c, 0x53, 0x67, 0x3b, 0x67, 0x27, 0x19, 0xff, 0x3f, 0x3b, 0x27, 0x27, 0x00, 0x39, 0x45, 0x1a, 0xc5,
0x50, 0x2b, 0x41, 0xf0, 0x41, 0xf3, 0x4b, 0xbc, 0xc4, 0x33, 0x22, 0xcb, 0x2e, 0x4a, 0x35, 0xfc, 0xd2, 0x3f, 0x24, 0xa4, 0x34, 0x22, 0x1c, 0x4c, 0x4b, 0x23, 0xbf, 0x39, 0xc3, 0x2c, 0x25, 0x1a,
0x52, 0x38, 0xa4, 0x38, 0x4c, 0xb4, 0x52, 0xd2, 0xb4, 0xbd, 0xf4, 0x2d, 0x28, 0x1d, 0x68, 0x27, 0x27, 0x27, 0x27, 0xe4, 0x1f, 0xc7,
0xd2, 0x6c, 0x34, 0x1d, 0x58, 0xc7, 0x33, 0x64, 0x3d, 0x44, 0x58, 0x64, 0x4c, 0x53, 0x4f, 0x20,
0x21, 0x2d, 0x24, 0xd3, 0x5e, 0x1c, 0x4e, 0x18, 0x67, 0x2b, 0xeb, 0x38, 0x42, 0x44, 0xc0, 0x67,
0xd3, 0x2e, 0x30, 0x34, 0x1f, 0x65, 0x6c, 0x3a, 0x51, 0x58, 0x66, 0xd2, 0xc0, 0x34, 0xb4, 0xbd,
0xc7, 0x4f, 0x25, 0xc3, 0x62, 0xc2, 0xcb, 0x21, 0xc3, 0x37, 0xd3, 0x28, 0xe7, 0x62, 0x5b, 0xa4,
0xcb, 0x48, 0xdc, 0x1c, 0x34, 0x46, 0x2c, 0x69, 0x5b, 0x32, 0x23, 0x3f, 0x66, 0x00, 0x1a, 0xbf,
0x2d, 0x5f, 0x58, 0xf4, 0xd2, 0xb4, 0xc5, 0xcb, 0x3f, 0x52, 0x48, 0xb4, 0xa5, 0xc7, 0xd2, 0x25,
0xd2, 0x5e,
}; };
static const gU16 mf_rlefont_DejaVuSans32_dictionary_offsets[127] PROGMEM = { static const gU16 mf_rlefont_DejaVuSans32_dictionary_offsets[141] = {
0x0000, 0x0001, 0x0007, 0x000e, 0x000f, 0x0011, 0x0016, 0x0018, 0x0000, 0x0002, 0x0005, 0x0007, 0x0008, 0x0009, 0x000a, 0x000c,
0x001e, 0x0025, 0x0026, 0x0027, 0x0028, 0x002a, 0x002b, 0x002e, 0x000f, 0x0011, 0x0013, 0x0016, 0x0017, 0x0019, 0x001a, 0x001e,
0x0032, 0x0035, 0x0037, 0x0038, 0x003a, 0x003c, 0x003e, 0x0040, 0x0022, 0x0024, 0x0027, 0x002a, 0x002d, 0x002f, 0x0031, 0x0034,
0x0041, 0x0043, 0x0045, 0x0047, 0x0049, 0x004b, 0x004d, 0x004f, 0x0038, 0x003a, 0x003e, 0x0040, 0x0042, 0x0044, 0x0046, 0x0047,
0x0051, 0x0052, 0x0055, 0x0057, 0x0059, 0x005a, 0x005c, 0x005f, 0x0049, 0x0055, 0x0056, 0x0057, 0x0059, 0x005a, 0x005d, 0x005f,
0x0060, 0x0064, 0x0066, 0x0068, 0x006c, 0x006f, 0x0070, 0x0073, 0x0060, 0x0062, 0x0064, 0x0067, 0x0068, 0x006b, 0x006e, 0x0070,
0x0075, 0x0076, 0x007f, 0x0080, 0x0082, 0x0085, 0x008a, 0x0096, 0x0072, 0x0074, 0x0075, 0x0078, 0x0079, 0x007a, 0x007c, 0x007e,
0x0097, 0x0098, 0x009a, 0x009c, 0x009e, 0x00a1, 0x00a4, 0x00a6, 0x0080, 0x0085, 0x0088, 0x008a, 0x008d, 0x008f, 0x0091, 0x0099,
0x00a8, 0x00a9, 0x00ac, 0x00ae, 0x00af, 0x00b1, 0x00b2, 0x00b4, 0x009c, 0x009e, 0x00a1, 0x00a3, 0x00a6, 0x00ad, 0x00af, 0x00b0,
0x00b6, 0x00b8, 0x00ba, 0x00bd, 0x00be, 0x00c2, 0x00c5, 0x00e4, 0x00b2, 0x00b4, 0x00b5, 0x00b6, 0x00b8, 0x00bb, 0x00c7, 0x00c9,
0x00ef, 0x00f1, 0x00f3, 0x00f5, 0x00fc, 0x0103, 0x0114, 0x0129, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00cf, 0x00d1, 0x00d4, 0x00d6,
0x0135, 0x0139, 0x013b, 0x0145, 0x014a, 0x014f, 0x0152, 0x0155, 0x00da, 0x00fd, 0x011c, 0x011e, 0x0121, 0x0123, 0x0125, 0x0129,
0x0157, 0x0168, 0x016e, 0x0174, 0x017b, 0x017e, 0x0180, 0x0186, 0x012c, 0x0132, 0x013c, 0x013e, 0x0142, 0x0149, 0x0159, 0x015d,
0x0188, 0x018d, 0x018f, 0x0191, 0x0193, 0x0195, 0x019b, 0x019e, 0x0160, 0x0163, 0x0166, 0x0168, 0x0172, 0x017c, 0x018c, 0x0195,
0x01a6, 0x01a9, 0x01ac, 0x01ae, 0x01b0, 0x01b5, 0x01bc, 0x01c0, 0x01a4, 0x01b4, 0x01b6, 0x01b9, 0x01bd, 0x01c9, 0x01cf, 0x01d4,
0x01c2, 0x01cd, 0x01cf, 0x01d1, 0x01d3, 0x01d5, 0x01d6, 0x01d6, 0x01d8, 0x01dd, 0x01e1, 0x01e3, 0x0204, 0x0208, 0x0212,
0x0218, 0x021a, 0x0222, 0x0227, 0x0229, 0x022b, 0x022d, 0x0231,
0x0233, 0x0239, 0x023b, 0x023f, 0x0242,
}; };
static const gU8 mf_rlefont_DejaVuSans32_glyph_data_0[2769] PROGMEM = { static const gU8 mf_rlefont_DejaVuSans32_glyph_data_0[2504] = {
0x0a, 0x00, 0x10, 0x0d, 0x60, 0x77, 0x80, 0x23, 0x60, 0x49, 0x10, 0x0f, 0x60, 0x4e, 0x4e, 0x4e, 0x0a, 0x00, 0x10, 0x0d, 0x6e, 0x6c, 0x80, 0x6f, 0x25, 0x6e, 0x8b, 0x10, 0x0f, 0x6e, 0x68, 0x2c,
0x10, 0x1b, 0x60, 0x29, 0x4c, 0x48, 0x52, 0x3d, 0x94, 0x5c, 0x94, 0x67, 0x57, 0x3c, 0x37, 0x5c, 0x7e, 0x7e, 0x7e, 0x7e, 0x10, 0x1b, 0x67, 0x6e, 0x52, 0x58, 0x5e, 0x74, 0xc7, 0x4f, 0x9d, 0x2c,
0x3d, 0x94, 0x5c, 0x94, 0x67, 0x57, 0x3c, 0x37, 0x5c, 0x3d, 0x1b, 0x92, 0x3d, 0x94, 0x4a, 0x94, 0x8c, 0x5a, 0x24, 0x9d, 0x2c, 0x9d, 0x2c, 0x8c, 0x5a, 0x24, 0x9d, 0xb4, 0x9d, 0xdc, 0xa5, 0xc7,
0x2c, 0x29, 0x3d, 0x94, 0x5c, 0x10, 0x14, 0x1b, 0x3a, 0x3a, 0x3a, 0x3a, 0x23, 0x25, 0x8f, 0xa3, 0x4f, 0x58, 0x5e, 0xc7, 0xd0, 0x57, 0x5f, 0x10, 0x14, 0x4c, 0x4a, 0x1a, 0xc5, 0x28, 0x4a, 0x1b,
0x32, 0x18, 0x92, 0xab, 0xc5, 0xc7, 0x51, 0x9c, 0x94, 0x5a, 0x94, 0x2d, 0xb4, 0xc7, 0x2d, 0x3d, 0x4b, 0x21, 0x6a, 0x59, 0xfd, 0x24, 0xcb, 0xc7, 0xca, 0x33, 0xb5, 0x37, 0xb4, 0x37, 0xb4, 0x37,
0xbb, 0x48, 0x51, 0x42, 0x2e, 0x24, 0x29, 0x24, 0x2f, 0x9c, 0xa2, 0x21, 0xc7, 0x31, 0x9c, 0x71, 0xe5, 0xc7, 0x21, 0xd1, 0x37, 0x6a, 0x62, 0x49, 0xc7, 0x21, 0x2d, 0x24, 0xc0, 0x67, 0x24, 0x9b,
0x92, 0x44, 0x38, 0xd0, 0x71, 0xb4, 0xc4, 0xb7, 0x2c, 0x7d, 0x37, 0x55, 0x33, 0x42, 0x52, 0x3a, 0x9f, 0x5e, 0x9f, 0x5e, 0x9f, 0x24, 0x3f, 0xb7, 0xcb, 0x3a, 0x46, 0x2c, 0x5a, 0x4f, 0x6a, 0x5e,
0x3a, 0x3a, 0x3a, 0x10, 0x1e, 0x00, 0x60, 0xc2, 0x48, 0x84, 0x92, 0xa3, 0x52, 0x57, 0xbc, 0x29, 0x9d, 0x47, 0x4a, 0x1a, 0xc5, 0x28, 0x10, 0x1e, 0x00, 0x6e, 0xc2, 0x2b, 0xa4, 0x2d, 0xf0, 0x3d,
0x57, 0xb4, 0xc7, 0x71, 0x7f, 0xd0, 0x1b, 0x7f, 0xca, 0x1b, 0x7f, 0x2c, 0x7f, 0x5a, 0x1b, 0x88, 0xcb, 0x3f, 0xca, 0x47, 0xa7, 0xcb, 0x58, 0x3d, 0xf0, 0xc5, 0xd0, 0x3d, 0xf0, 0xc5, 0xca, 0x1b,
0xd2, 0x1b, 0xa0, 0xbc, 0xb5, 0x1b, 0xa4, 0xa7, 0xc7, 0xc7, 0xc2, 0x48, 0xc2, 0xa7, 0xa7, 0x2a, 0xa0, 0x67, 0xeb, 0x58, 0xb4, 0x33, 0xe4, 0x82, 0x33, 0xb4, 0xc7, 0x74, 0x3d, 0xcb, 0x9f, 0x52,
0x48, 0xc2, 0xb4, 0xbc, 0x71, 0xa4, 0xb5, 0xa7, 0x2c, 0xd2, 0x88, 0x1b, 0xca, 0x88, 0x57, 0x2f, 0x3b, 0xcb, 0x82, 0xd3, 0x3b, 0xa5, 0xb5, 0xb5, 0x34, 0xa7, 0xcb, 0xd2, 0x3a, 0x82, 0x44, 0x9f,
0x7f, 0x92, 0x4c, 0xd2, 0x48, 0x9c, 0x4c, 0xf2, 0x57, 0x2e, 0xe5, 0x1e, 0x48, 0xca, 0x2e, 0x71, 0x44, 0x68, 0x58, 0x44, 0x74, 0xeb, 0x45, 0xdc, 0x2a, 0x6c, 0x3d, 0x2c, 0xb5, 0xc7, 0x1b, 0xca,
0x5a, 0x52, 0x45, 0x57, 0x48, 0xc2, 0x10, 0x19, 0x60, 0x3d, 0xa3, 0x21, 0x4b, 0x5d, 0x41, 0xa2, 0x2a, 0xcb, 0x47, 0x3b, 0xcb, 0x2b, 0x69, 0xc2, 0x10, 0x19, 0x6e, 0x18, 0x50, 0xc5, 0x2e, 0xea,
0x3d, 0x22, 0x77, 0x28, 0x69, 0x2a, 0x21, 0x33, 0xa3, 0x2e, 0x57, 0xbd, 0xc7, 0x71, 0xcb, 0x33, 0x4f, 0x27, 0x55, 0x41, 0x25, 0xc3, 0x9c, 0xc7, 0x45, 0xf0, 0xb7, 0xcb, 0x58, 0x3d, 0xc2, 0x35,
0xa5, 0x91, 0xc5, 0xc2, 0xbc, 0x57, 0xc4, 0x33, 0xc1, 0x57, 0x18, 0x2b, 0x48, 0x44, 0xa4, 0x2a, 0x67, 0x58, 0xc5, 0xc2, 0x2c, 0x3d, 0x35, 0xc1, 0x3d, 0x20, 0xd3, 0x3d, 0x18, 0xff, 0xc5, 0x3b,
0x1b, 0xe2, 0x52, 0x2c, 0x26, 0xec, 0xa3, 0x51, 0xc5, 0x2b, 0x63, 0x25, 0xbb, 0x2c, 0x2b, 0xc7, 0x67, 0xc2, 0x33, 0xc5, 0x8f, 0x67, 0x1d, 0x20, 0xd3, 0x3a, 0x1c, 0xc2, 0x33, 0xc3, 0xb5, 0xcb,
0x37, 0x2a, 0xc5, 0xc2, 0x10, 0x09, 0x60, 0x76, 0x1d, 0x0f, 0x10, 0x0c, 0x50, 0x4f, 0x68, 0x6a, 0x3a, 0xc3, 0xc5, 0xc2, 0x10, 0x09, 0x6e, 0x91, 0x10, 0x0c, 0x40, 0x6b, 0xc7, 0x28, 0x19, 0x28,
0x3b, 0x5f, 0x19, 0xff, 0x19, 0x5e, 0x19, 0x83, 0xe5, 0x23, 0x6a, 0x8a, 0x68, 0x8a, 0xd0, 0x23, 0x27, 0x76, 0x5f, 0x27, 0x7b, 0x25, 0xe7, 0x76, 0x6c, 0x19, 0x25, 0x7a, 0x5e, 0x7a, 0x10, 0x0c,
0x28, 0x5f, 0x81, 0x57, 0x10, 0x0c, 0xc4, 0x4f, 0x57, 0x3a, 0x3a, 0xe5, 0x23, 0x6a, 0x8a, 0x77, 0x40, 0xcb, 0x61, 0x7a, 0x39, 0xd0, 0x27, 0x69, 0x76, 0xd0, 0x27, 0x7b, 0x28, 0x89, 0x32, 0x19,
0xd0, 0x23, 0x77, 0x83, 0x23, 0x77, 0x1d, 0x23, 0x28, 0x5e, 0x43, 0x10, 0x10, 0x56, 0x52, 0x3a, 0x28, 0x19, 0x28, 0x19, 0x10, 0x10, 0x6e, 0xb4, 0x61, 0xd0, 0x62, 0xa5, 0xc5, 0x51, 0xec, 0xb5,
0x58, 0xa5, 0xa5, 0x63, 0xd4, 0xc7, 0xa7, 0x2d, 0xb3, 0xc1, 0x93, 0x24, 0x82, 0x23, 0x31, 0x2e, 0x51, 0xf1, 0x5b, 0x49, 0x28, 0xc7, 0x48, 0x90, 0xe5, 0x4f, 0xb1, 0xcb, 0x3f, 0x3d, 0xa7, 0x66,
0x37, 0x2e, 0xb1, 0x2c, 0xa4, 0xc7, 0xa7, 0x2d, 0xa5, 0xc5, 0x81, 0x29, 0x3a, 0x10, 0x1b, 0x50, 0xa5, 0xa5, 0x39, 0x9d, 0x47, 0x10, 0x1b, 0x25, 0x60, 0x91, 0x72, 0x1d, 0xd3, 0x47, 0x36, 0x1f,
0x4f, 0x60, 0x8a, 0x83, 0xe5, 0x32, 0xf3, 0x91, 0x2a, 0x3c, 0x48, 0x7d, 0x41, 0x83, 0x19, 0x10, 0x23, 0x36, 0x39, 0x91, 0x10, 0x0a, 0x63, 0x43, 0x4f, 0x89, 0x28, 0x27, 0xf4, 0x28, 0x10, 0x0c,
0x0a, 0x53, 0x49, 0x6a, 0x1d, 0x10, 0x0c, 0x1b, 0x1c, 0x34, 0x2b, 0x5b, 0x8f, 0x5b, 0x8f, 0x10, 0x4c, 0x40, 0x43, 0x49, 0x62, 0x49, 0x62, 0x49, 0x10, 0x0a, 0x63, 0x43, 0x4f, 0x89, 0x10, 0x0b,
0x0a, 0x53, 0x49, 0x10, 0x0b, 0x60, 0xa4, 0x2d, 0x82, 0x58, 0x77, 0x1d, 0xfd, 0x58, 0x77, 0x30, 0x67, 0x40, 0x19, 0x48, 0x76, 0x68, 0x27, 0x76, 0x23, 0xa3, 0x2a, 0x48, 0x76, 0x0f, 0x81, 0x19,
0x8a, 0x30, 0x8a, 0xd2, 0x58, 0x77, 0x30, 0x8a, 0x30, 0xf2, 0x10, 0x14, 0x60, 0xd4, 0xa3, 0x21, 0x48, 0xa3, 0x2a, 0x48, 0xa3, 0x10, 0x14, 0x6e, 0x35, 0x50, 0x52, 0x4e, 0x35, 0x4e, 0x18, 0xf4,
0x4b, 0x5d, 0x8b, 0x33, 0xb4, 0x2d, 0x1e, 0x3e, 0x84, 0x2e, 0x5d, 0x57, 0x5d, 0xa0, 0x1f, 0x1a, 0x33, 0x64, 0x3d, 0xe4, 0xd2, 0x38, 0x38, 0x38, 0x3c, 0x53, 0x00, 0x3c, 0x53, 0x5d, 0x18, 0x4e,
0x4a, 0x1a, 0x4a, 0x1a, 0x4a, 0x1a, 0x84, 0x2e, 0x5d, 0x57, 0x29, 0x81, 0x26, 0x33, 0x22, 0x26, 0x35, 0x72, 0x21, 0xc3, 0x62, 0xc3, 0x10, 0x14, 0xf4, 0x6e, 0x98, 0x98, 0x98, 0xf4, 0x91, 0x6f,
0x31, 0x3c, 0x8f, 0x5a, 0x21, 0x2a, 0x10, 0x14, 0x56, 0x29, 0x1e, 0x8f, 0x61, 0x8f, 0x61, 0x50, 0xe4, 0x72, 0x51, 0x23, 0x2d, 0x1a, 0x1c, 0x10, 0x14, 0x6e, 0xc2, 0xcb, 0x72, 0x72, 0xe7, 0x24,
0x84, 0x80, 0x49, 0xcb, 0x93, 0x8b, 0xf2, 0x4b, 0xd4, 0x3c, 0x10, 0x14, 0x60, 0x2b, 0x93, 0x41, 0x3e, 0x41, 0x8b, 0x29, 0x5e, 0x99, 0x25, 0x99, 0x62, 0x9a, 0x1c, 0x10, 0x14, 0x67, 0x40, 0x90,
0x55, 0xc7, 0x89, 0x57, 0x19, 0x8a, 0x3b, 0x69, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x5c, 0xc2, 0x8b, 0x18, 0x37, 0x1d, 0x62, 0xc3, 0x90, 0xc7, 0x32, 0x81, 0x00, 0x8b, 0x3f, 0x93,
0x30, 0x40, 0xe0, 0x3c, 0x10, 0x14, 0x60, 0x5f, 0x2a, 0x21, 0x41, 0xf0, 0x4b, 0xa4, 0xc5, 0x33, 0xc7, 0x58, 0x59, 0x4f, 0x4b, 0x5e, 0x49, 0x10, 0x14, 0x25, 0x40, 0x1e, 0x7f, 0x28, 0x23, 0x28,
0x19, 0x68, 0x3b, 0x1e, 0x8f, 0x63, 0x52, 0xa3, 0x21, 0xc2, 0x30, 0xe2, 0x43, 0x77, 0x65, 0x1b, 0x30, 0x32, 0xd2, 0x37, 0x6c, 0x62, 0xa7, 0x66, 0x6b, 0xa7, 0xc7, 0x4f, 0x58, 0x5e, 0x74, 0xcb,
0xca, 0x3d, 0x2c, 0xd4, 0x8b, 0x2b, 0xd3, 0x8f, 0x10, 0x14, 0x1b, 0x56, 0x69, 0xa3, 0x58, 0x42, 0x4f, 0x44, 0x2a, 0x2c, 0x39, 0xc7, 0xb4, 0x51, 0x29, 0x3d, 0x44, 0xb4, 0x46, 0x5f, 0x46, 0x5f,
0x29, 0xd2, 0x21, 0xb2, 0x2d, 0x3d, 0xbd, 0x21, 0xea, 0xa0, 0x48, 0x57, 0xbc, 0x94, 0x2c, 0x29, 0x46, 0x1a, 0x81, 0x89, 0x10, 0x14, 0x6e, 0x1c, 0x72, 0x72, 0x00, 0x4f, 0x8b, 0x67, 0x4b, 0x5c,
0xa4, 0x2d, 0x88, 0x5d, 0x57, 0x2e, 0x48, 0x92, 0x18, 0x2c, 0x4c, 0x71, 0x2e, 0x5d, 0xa0, 0x32, 0x30, 0x81, 0x41, 0x8b, 0x29, 0x4c, 0xc7, 0x58, 0x59, 0x4f, 0x4b, 0x5e, 0x49, 0x10, 0x14, 0x6e,
0x2c, 0x5c, 0x3c, 0x2c, 0xc2, 0x3c, 0x58, 0x49, 0x4a, 0x10, 0x14, 0x56, 0xa4, 0x41, 0x2b, 0x31, 0xa4, 0x98, 0x68, 0xd3, 0x39, 0x5a, 0x4f, 0xc7, 0xcc, 0x4f, 0x25, 0x5b, 0x2a, 0x48, 0xa3, 0x2a,
0x8b, 0x28, 0x49, 0x25, 0x21, 0x41, 0xf0, 0x4b, 0xa4, 0xc5, 0x33, 0x43, 0x77, 0x8a, 0x2c, 0xb4, 0x2d, 0x9e, 0x1a, 0x49, 0x2d, 0x3b, 0xc7, 0x93, 0x1d, 0x4d, 0x2e, 0x58, 0x2e, 0xb4, 0x34, 0x78,
0x18, 0x37, 0x5f, 0x8b, 0x2b, 0xd3, 0x8f, 0x10, 0x14, 0xc4, 0x60, 0x24, 0x2e, 0x24, 0xd4, 0x2a, 0x23, 0x73, 0xfd, 0xb4, 0x66, 0x1c, 0x21, 0xc3, 0x62, 0xc3, 0x10, 0x14, 0x61, 0x40, 0x9a, 0x1c,
0x31, 0xa3, 0xa4, 0x50, 0x3b, 0x69, 0x65, 0x21, 0x68, 0x7e, 0x2b, 0x24, 0x2a, 0x89, 0x5e, 0x1e, 0xa3, 0x20, 0xa3, 0x2a, 0x48, 0xa3, 0x20, 0xa3, 0x2a, 0x48, 0xa3, 0x20, 0xa3, 0x2a, 0x32, 0x19,
0x89, 0x0f, 0x27, 0x33, 0x52, 0x81, 0x27, 0xbc, 0x52, 0x81, 0x1e, 0x89, 0x33, 0x3d, 0x2d, 0x3c, 0x48, 0xa3, 0x2a, 0x32, 0x10, 0x14, 0x6e, 0x35, 0x50, 0x66, 0x94, 0x00, 0x1c, 0x66, 0x1c, 0x5e,
0x8f, 0xe7, 0x93, 0x2a, 0x10, 0x14, 0x2f, 0x56, 0x40, 0x7d, 0xa3, 0x23, 0x3b, 0x69, 0x8a, 0x30, 0x49, 0x10, 0x14, 0xe4, 0x6e, 0xc3, 0x62, 0xc3, 0xcb, 0x72, 0x4e, 0xa4, 0xcb, 0x2e, 0x93, 0x78,
0x65, 0x21, 0x8a, 0x30, 0x65, 0x21, 0x68, 0x3b, 0x8a, 0x30, 0x8a, 0x4a, 0x10, 0x14, 0x60, 0xd4, 0xeb, 0x3e, 0x42, 0x35, 0x2e, 0x54, 0xd3, 0x2e, 0x1d, 0x34, 0x46, 0x35, 0x8d, 0x5b, 0x18, 0xa3,
0xa3, 0x21, 0x4b, 0x5d, 0x8b, 0xe2, 0xc5, 0x37, 0xe0, 0x29, 0x81, 0x84, 0x2e, 0x5d, 0x57, 0x29, 0x20, 0x61, 0xcb, 0x3f, 0x1e, 0x18, 0xc5, 0x24, 0x4b, 0x21, 0x98, 0x23, 0x10, 0x0b, 0x79, 0x10,
0x81, 0x84, 0x2e, 0x22, 0x26, 0x31, 0xc2, 0xa3, 0x21, 0x2a, 0x21, 0x8b, 0xa2, 0x89, 0xe0, 0xc4, 0x0b, 0x79, 0x28, 0x27, 0xf4, 0x28, 0x10, 0x1b, 0x6e, 0x60, 0xe5, 0x48, 0x9c, 0x5e, 0x4b, 0x21,
0x71, 0x4c, 0x2e, 0x1f, 0x1a, 0x4a, 0xc5, 0x3e, 0x1e, 0x3e, 0x55, 0x2b, 0xd3, 0x8f, 0x10, 0x14, 0xd3, 0x39, 0x4b, 0x39, 0x4b, 0x21, 0xd3, 0x5e, 0xc2, 0x25, 0x49, 0x90, 0xa1, 0x1d, 0x28, 0xc3,
0x60, 0xd4, 0x37, 0x29, 0x24, 0xc4, 0x8b, 0xe2, 0x89, 0xf0, 0xc7, 0x3e, 0x27, 0x5b, 0x27, 0xfc, 0x90, 0xa1, 0xcb, 0x62, 0x93, 0x1e, 0x10, 0x1b, 0x6e, 0x63, 0x22, 0x1c, 0x4c, 0x1d, 0x46, 0x6e,
0x84, 0x8e, 0x89, 0xd3, 0x2e, 0xc7, 0x51, 0xa4, 0x37, 0x2b, 0x24, 0x2b, 0xbf, 0x5d, 0x51, 0xc7, 0x48, 0x36, 0x4c, 0x22, 0x1c, 0x10, 0x1b, 0x25, 0x6e, 0x6e, 0x34, 0x1e, 0xcb, 0x90, 0x90, 0xa1,
0x3b, 0x69, 0x69, 0x65, 0x63, 0x52, 0x81, 0xcc, 0xa4, 0x31, 0x41, 0x7d, 0x21, 0x24, 0x10, 0x0b, 0x23, 0x90, 0xa1, 0x1d, 0x28, 0x68, 0x7f, 0x62, 0x49, 0x21, 0x1d, 0x39, 0x4b, 0x21, 0xd3, 0x39,
0x34, 0x6b, 0x10, 0x0b, 0x34, 0x6b, 0x6a, 0x1d, 0x10, 0x1b, 0x5d, 0x1c, 0x81, 0x92, 0x2d, 0x2e, 0x4b, 0x5e, 0x6a, 0x48, 0x3a, 0x1e, 0x10, 0x11, 0x69, 0x6e, 0xc3, 0x62, 0x4b, 0x5e, 0x49, 0xcb,
0x1e, 0x50, 0x25, 0x8f, 0x50, 0xc2, 0x31, 0x25, 0x8f, 0x21, 0xc2, 0x5d, 0x8f, 0x63, 0x92, 0x24, 0x4f, 0x20, 0x39, 0xc5, 0x58, 0x89, 0x32, 0xa3, 0x44, 0x00, 0x3d, 0x48, 0x76, 0xd2, 0x40, 0x37,
0x52, 0x24, 0x52, 0x42, 0x29, 0xf3, 0x2c, 0x35, 0x30, 0x69, 0xd4, 0x10, 0x1b, 0x56, 0x34, 0x4d, 0x89, 0x10, 0x20, 0x6e, 0x3b, 0xcb, 0x72, 0xfd, 0x24, 0x46, 0xc3, 0x4d, 0xc7, 0x1b, 0xc2, 0x47,
0x37, 0x21, 0x60, 0x4d, 0x45, 0x10, 0x1b, 0x58, 0x60, 0x60, 0xc8, 0x50, 0x82, 0x23, 0x24, 0x52, 0xeb, 0x3b, 0x3a, 0xd3, 0x3e, 0x42, 0x58, 0x18, 0xec, 0xa7, 0xc7, 0x58, 0x20, 0xb3, 0xa7, 0xc7,
0x24, 0x52, 0x42, 0x29, 0x24, 0x52, 0x24, 0x18, 0x33, 0x30, 0x45, 0x48, 0x51, 0x31, 0xc2, 0x31, 0xb4, 0xa5, 0x1c, 0x58, 0x20, 0x35, 0x58, 0xc7, 0xd2, 0x58, 0x35, 0x18, 0xa0, 0x30, 0xa0, 0x30,
0x25, 0x8f, 0x8f, 0x81, 0x3d, 0x37, 0x82, 0xc4, 0x93, 0x10, 0x11, 0x60, 0x33, 0xc7, 0x8f, 0x61, 0xa0, 0x30, 0xa0, 0x82, 0x2a, 0xe2, 0x18, 0x2c, 0x18, 0x58, 0xa5, 0xb3, 0x53, 0x58, 0x1c, 0x74,
0x50, 0x41, 0xa0, 0x3e, 0xcc, 0x18, 0x3b, 0x77, 0xeb, 0x58, 0x28, 0x3b, 0x65, 0x18, 0x8c, 0x49, 0x58, 0x20, 0xd3, 0xc3, 0x3b, 0x18, 0xdc, 0xc7, 0x3b, 0x41, 0x1e, 0x3a, 0x1d, 0x2b, 0x4d, 0xc7,
0x10, 0x20, 0x56, 0x51, 0x4a, 0x93, 0x3c, 0x32, 0x2c, 0x2a, 0x18, 0x2a, 0x1b, 0x45, 0x48, 0xc2, 0xb4, 0xcb, 0x1e, 0x1c, 0x66, 0x1c, 0x5e, 0x6a, 0x10, 0x16, 0x6e, 0x2a, 0x1b, 0x24, 0x7f, 0x90,
0x5d, 0xa4, 0x2c, 0x1e, 0x8e, 0x4c, 0xfc, 0x1e, 0x84, 0x84, 0x4c, 0x2b, 0x84, 0x84, 0x3d, 0xa5, 0x32, 0x30, 0x32, 0xd2, 0x37, 0xbd, 0x37, 0x69, 0xd2, 0x21, 0x2c, 0x5e, 0xeb, 0x58, 0x57, 0xd2,
0x3c, 0x44, 0xa2, 0xbc, 0xa5, 0x1e, 0x88, 0x33, 0x5d, 0x1e, 0x88, 0x39, 0x44, 0x7f, 0xcb, 0x2e, 0x4e, 0x20, 0x4f, 0x29, 0x1e, 0xe7, 0x44, 0xb4, 0x1c, 0x34, 0x46, 0x54, 0x36, 0x33, 0x2b, 0x64,
0x44, 0xf2, 0x44, 0x44, 0x7f, 0xcb, 0x2e, 0xbc, 0x2e, 0x5b, 0x26, 0x33, 0xbc, 0x2e, 0xe5, 0x26, 0x44, 0xd3, 0x3b, 0x1e, 0x74, 0x64, 0x64, 0x29, 0xf4, 0x45, 0x58, 0x10, 0x16, 0x6e, 0x1c, 0x72,
0x45, 0x26, 0x44, 0x45, 0x3c, 0x52, 0xe5, 0x33, 0xb3, 0xa3, 0x82, 0x3d, 0xc7, 0x1e, 0x92, 0x6a, 0x59, 0x74, 0x3d, 0xe4, 0xc2, 0x38, 0x42, 0x44, 0x69, 0x53, 0x34, 0x1c, 0x59, 0x4e, 0x5a, 0x42,
0x1e, 0x48, 0xc8, 0x1b, 0xa3, 0x48, 0x2c, 0x2a, 0x18, 0xa3, 0x51, 0x41, 0x3c, 0x93, 0x2a, 0x10, 0x35, 0x42, 0x44, 0x6c, 0x2b, 0x64, 0x44, 0x30, 0x2b, 0x64, 0x44, 0x30, 0x3b, 0x3a, 0xd2, 0x3e,
0x16, 0x60, 0x2e, 0x5d, 0x93, 0x30, 0xa3, 0x58, 0x24, 0x29, 0xa1, 0x21, 0xb2, 0x2d, 0x3d, 0xb7, 0x2f, 0x0f, 0x1c, 0x34, 0x1c, 0x10, 0x16, 0x6e, 0x4d, 0xcb, 0x72, 0xe5, 0x33, 0x1c, 0x24, 0xcb,
0x81, 0x2e, 0xbc, 0x48, 0x57, 0xb5, 0x2d, 0x88, 0x38, 0x88, 0x48, 0x82, 0x3e, 0x39, 0xdc, 0x81, 0xa4, 0xcb, 0x1e, 0x1f, 0x3f, 0x3b, 0xa3, 0x2a, 0x32, 0x80, 0x00, 0x27, 0x75, 0x1a, 0x24, 0x68,
0xa0, 0x2e, 0x22, 0x40, 0x5c, 0x3c, 0x2c, 0x20, 0x18, 0x2c, 0xd3, 0x48, 0x1e, 0x7c, 0x48, 0xa0, 0x4d, 0xe4, 0x1e, 0x1c, 0x59, 0x5e, 0x6a, 0x10, 0x19, 0x6e, 0x1c, 0x72, 0xeb, 0x2f, 0x74, 0x8f,
0x7c, 0x57, 0x10, 0x16, 0x60, 0x3f, 0x31, 0x59, 0x2c, 0xbc, 0x18, 0xc2, 0x1f, 0x1a, 0x4a, 0x18, 0x64, 0x20, 0x3a, 0x1f, 0xeb, 0x3d, 0x1b, 0xd2, 0x3d, 0x3b, 0x56, 0xff, 0x56, 0xff, 0x56, 0x74,
0x71, 0x44, 0x3e, 0x59, 0x81, 0x7d, 0x37, 0x84, 0x8e, 0x2e, 0x63, 0x20, 0x18, 0x2c, 0x20, 0x18, 0x64, 0x64, 0x29, 0x4d, 0x3d, 0x69, 0x64, 0x64, 0x18, 0x4c, 0xd2, 0x3b, 0x67, 0x29, 0xec, 0xd3,
0x2c, 0xd2, 0x82, 0x48, 0x4c, 0x89, 0x2a, 0x4b, 0x2b, 0x24, 0x3c, 0x10, 0x16, 0x56, 0x35, 0x37, 0x3a, 0x36, 0x24, 0x1c, 0x34, 0x1c, 0x10, 0x14, 0x6e, 0x46, 0x9a, 0x80, 0x5a, 0x3c, 0x1c, 0x59,
0xa4, 0x8b, 0x45, 0x4b, 0xc2, 0x5d, 0xa2, 0x51, 0x48, 0xe8, 0x1b, 0x69, 0x65, 0x21, 0x68, 0x76, 0xe5, 0x33, 0x7b, 0x00, 0x5e, 0x9a, 0x1c, 0x10, 0x12, 0x6e, 0x1c, 0x51, 0x49, 0x66, 0x1c, 0x51,
0x0f, 0x1d, 0x6a, 0x1e, 0x48, 0xc5, 0x57, 0xe7, 0x89, 0x5e, 0x59, 0x0f, 0x8f, 0x10, 0x19, 0x60, 0x80, 0x4b, 0x72, 0x72, 0x39, 0x91, 0x27, 0x10, 0x19, 0x6e, 0x18, 0xd3, 0x21, 0x6a, 0x59, 0xff,
0x8b, 0x7d, 0xa3, 0x47, 0x63, 0x84, 0x2e, 0x2c, 0x84, 0x82, 0x1b, 0x84, 0x48, 0x1e, 0x7c, 0x35, 0x24, 0xcb, 0xa4, 0xcb, 0x1e, 0x1f, 0x3f, 0x3b, 0xa3, 0x20, 0xf4, 0x32, 0x27, 0x1b, 0x49, 0x3d,
0x1b, 0x1e, 0x48, 0x84, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, 0xfc, 0x82, 0x7c, 0x35, 0x5b, 0x18, 0x23, 0x3d, 0x18, 0x23, 0x56, 0xc7, 0x3b, 0x56, 0x1f, 0x8a, 0x2b, 0x3e, 0xe5, 0x58, 0xc7,
0x82, 0x57, 0x48, 0x26, 0x92, 0xe5, 0x2e, 0x2c, 0x2a, 0x4b, 0x2b, 0x24, 0x3c, 0x10, 0x14, 0x60, 0x1e, 0x1c, 0x59, 0x21, 0x23, 0x10, 0x18, 0x6e, 0x95, 0x95, 0x1f, 0x8a, 0x1c, 0x8a, 0x1c, 0x8a,
0x40, 0x7d, 0x37, 0x83, 0x8b, 0x59, 0x0f, 0x81, 0x83, 0x43, 0x2b, 0x24, 0x40, 0x10, 0x12, 0x60, 0x1c, 0x65, 0x6c, 0x3a, 0x95, 0x95, 0x10, 0x09, 0x6e, 0x91, 0x80, 0x6f, 0x10, 0x09, 0x6e, 0x91,
0x2a, 0x24, 0x7d, 0x2c, 0xa4, 0x8b, 0x83, 0x4b, 0xa4, 0x41, 0x2b, 0x31, 0x73, 0x10, 0x19, 0xc4, 0x6f, 0x7b, 0x32, 0xf5, 0x48, 0x9c, 0x77, 0x10, 0x15, 0x6e, 0x68, 0x3b, 0x3a, 0xd2, 0x3e, 0x42,
0x60, 0x2b, 0x93, 0x8b, 0x45, 0x4b, 0xc2, 0x5d, 0xa2, 0x51, 0x48, 0xe8, 0x1b, 0x69, 0x65, 0x21, 0xec, 0xcb, 0x33, 0x73, 0x20, 0x96, 0xc2, 0x37, 0x23, 0x77, 0x68, 0x86, 0x57, 0xe2, 0x39, 0xcb,
0x8a, 0xd2, 0x18, 0x2b, 0x57, 0x52, 0x2a, 0x57, 0x52, 0x2a, 0x1b, 0xcb, 0x7c, 0x35, 0x1b, 0x1e, 0x58, 0x51, 0x73, 0x3e, 0x3c, 0xeb, 0x3e, 0x42, 0x20, 0x3a, 0xd2, 0x3b, 0x10, 0x12, 0x6e, 0x91,
0x48, 0x84, 0x7c, 0x18, 0xa4, 0x91, 0x51, 0x92, 0xe5, 0x57, 0xe7, 0x3d, 0x2c, 0x5f, 0x59, 0x0f, 0x6f, 0x89, 0x00, 0x5e, 0x9a, 0x1c, 0x10, 0x1c, 0x6e, 0x1d, 0x47, 0x1f, 0x1d, 0x1b, 0x2d, 0x35,
0x8f, 0x10, 0x18, 0x60, 0x91, 0x1b, 0x7a, 0x7a, 0x7a, 0x7a, 0x7d, 0x3f, 0x51, 0x3c, 0xe7, 0x57, 0x74, 0x58, 0x1f, 0x1d, 0x1b, 0x2d, 0x58, 0xd2, 0x3f, 0xd2, 0x1f, 0xef, 0xc7, 0x58, 0xd2, 0x47,
0x3c, 0x2c, 0x91, 0x1b, 0x7a, 0x7a, 0x7a, 0x7a, 0x7a, 0x10, 0x09, 0x60, 0x73, 0x80, 0x10, 0x09, 0xc1, 0x20, 0x30, 0x8e, 0x8e, 0x1a, 0xb7, 0xa7, 0xcb, 0x1f, 0xa7, 0xa7, 0xc7, 0x1f, 0xa7, 0xc7,
0x2f, 0x56, 0x80, 0x80, 0x30, 0x31, 0xa4, 0x2a, 0x58, 0x42, 0x46, 0x10, 0x15, 0x60, 0x4a, 0xc4, 0xcb, 0xd2, 0x47, 0xa5, 0xbf, 0x92, 0x68, 0x92, 0x68, 0x45, 0x30, 0xa4, 0xd3, 0x45, 0x30, 0xa4,
0xa4, 0x2c, 0x84, 0x8e, 0x3e, 0xcb, 0x89, 0xe0, 0x3d, 0x2c, 0x3d, 0xa5, 0x31, 0x70, 0x5e, 0x31, 0xd3, 0x45, 0xd2, 0x58, 0x74, 0x1f, 0x74, 0xd2, 0x3f, 0x95, 0x68, 0x10, 0x18, 0x6e, 0x68, 0x74,
0xa0, 0xa3, 0x93, 0x2a, 0x58, 0x42, 0x29, 0xa3, 0x21, 0xb2, 0x2c, 0x8d, 0x31, 0x84, 0x72, 0x81, 0x44, 0x68, 0x74, 0x44, 0x2d, 0xfe, 0x8a, 0x74, 0x6b, 0x8a, 0x53, 0x3a, 0xdb, 0xc7, 0x44, 0xdb,
0xcb, 0x8e, 0x2e, 0xe5, 0x57, 0x48, 0xe2, 0x10, 0x12, 0x60, 0x73, 0x83, 0x19, 0x2b, 0x24, 0x40, 0xcb, 0x44, 0xcb, 0xcb, 0x44, 0xcb, 0xd2, 0x44, 0xeb, 0xc0, 0x44, 0x68, 0x58, 0x44, 0x68, 0x35,
0x10, 0x1c, 0x60, 0x45, 0x92, 0x91, 0x4a, 0x52, 0xd3, 0x92, 0x1e, 0x18, 0x2a, 0x48, 0x33, 0xc7, 0x45, 0xa0, 0xe4, 0x58, 0x20, 0x2c, 0x4c, 0x6c, 0x2a, 0xcb, 0x3d, 0xb4, 0xbd, 0x3a, 0xcb, 0xa4,
0x2e, 0x91, 0x84, 0x3d, 0xa1, 0x92, 0xe1, 0xc4, 0xa0, 0x91, 0x26, 0xa2, 0x91, 0x88, 0x91, 0x88, 0xbb, 0xc5, 0x2b, 0xeb, 0xcb, 0x3d, 0xa4, 0x2d, 0x29, 0x8f, 0x29, 0x8f, 0x29, 0x35, 0xc5, 0x2b,
0x91, 0xf0, 0xc7, 0x1e, 0x91, 0xec, 0xa7, 0xc7, 0x91, 0xec, 0xa7, 0xc7, 0x91, 0xb4, 0x64, 0x5c, 0x00, 0xc2, 0x10, 0x19, 0x6e, 0x70, 0x85, 0x5e, 0x49, 0x10, 0x13, 0x6e, 0x5a, 0x72, 0x51, 0x4b,
0x64, 0x5c, 0x64, 0xf0, 0x7f, 0x5b, 0x4c, 0xc2, 0xc4, 0x91, 0x3d, 0x7f, 0x5d, 0xa0, 0x4c, 0x7a, 0xc7, 0x33, 0x73, 0x3e, 0x3c, 0x78, 0x78, 0x53, 0xf5, 0x33, 0x73, 0x4b, 0x59, 0x69, 0x3c, 0x5a,
0x7a, 0xe0, 0x10, 0x18, 0x60, 0x45, 0x48, 0x2c, 0x45, 0x48, 0xcb, 0x57, 0x27, 0x4a, 0x27, 0x45, 0x39, 0x91, 0x10, 0x19, 0x6e, 0x70, 0x85, 0x5e, 0x4b, 0x75, 0x75, 0x10, 0x16, 0x6e, 0x5a, 0x72,
0xc7, 0x4c, 0x92, 0xe1, 0x18, 0x84, 0x57, 0x26, 0x71, 0xe0, 0x39, 0x71, 0xa0, 0xa0, 0x4c, 0x92, 0x51, 0x4b, 0xc7, 0x33, 0x73, 0x67, 0xd3, 0x42, 0xb4, 0x34, 0x78, 0x53, 0xf5, 0x33, 0x73, 0x5a,
0xd5, 0x7f, 0x5d, 0x4c, 0x7f, 0x92, 0xe5, 0x26, 0x2c, 0x7f, 0xcb, 0x57, 0xc4, 0x1e, 0x84, 0x57, 0x3c, 0x1c, 0x72, 0x39, 0xcb, 0x58, 0x51, 0x73, 0x64, 0x3d, 0x2a, 0xe4, 0x2b, 0xd2, 0x38, 0x0f,
0x2e, 0x71, 0xe0, 0xc4, 0xa0, 0x84, 0x57, 0xc4, 0x33, 0x84, 0x57, 0x29, 0xa1, 0x1b, 0x84, 0x2e, 0x33, 0x2b, 0x64, 0x20, 0x10, 0x14, 0xe4, 0x6e, 0x49, 0x21, 0x6a, 0x59, 0xf5, 0x2e, 0xdc, 0x67,
0x1e, 0x57, 0x52, 0x1e, 0x57, 0x52, 0x1e, 0x57, 0x48, 0xa3, 0x1b, 0x84, 0x18, 0xc2, 0x10, 0x19, 0x3b, 0x76, 0x5f, 0x81, 0xe7, 0x90, 0x66, 0xa4, 0x4b, 0x9c, 0xe5, 0x32, 0x81, 0xfd, 0x76, 0xd3,
0x60, 0x2e, 0xa3, 0x8f, 0x1e, 0x32, 0x38, 0xa3, 0x3d, 0x2c, 0xa2, 0x82, 0x86, 0x35, 0x48, 0x44, 0x3a, 0xca, 0x3f, 0x93, 0x46, 0xdc, 0x1c, 0x39, 0x4b, 0x10, 0x14, 0xe4, 0x40, 0x32, 0x36, 0x1e,
0x46, 0x1b, 0x91, 0x63, 0xeb, 0x48, 0x2c, 0x20, 0x18, 0x2c, 0x20, 0x18, 0x2c, 0x20, 0x18, 0x84, 0x31, 0x91, 0x6f, 0x89, 0x10, 0x17, 0x6e, 0x95, 0x95, 0x95, 0x95, 0x1f, 0x8a, 0x3b, 0x33, 0x1b,
0x7c, 0x35, 0x86, 0x2f, 0x82, 0x82, 0x6c, 0x8f, 0x10, 0x13, 0x60, 0x90, 0x81, 0x27, 0x5b, 0x6f, 0xd2, 0x3a, 0xc2, 0x18, 0x34, 0x1c, 0x66, 0x1c, 0x5e, 0x49, 0x10, 0x16, 0x40, 0x19, 0x67, 0x45,
0x59, 0x81, 0x5f, 0x2a, 0x31, 0x83, 0x19, 0x10, 0x19, 0x60, 0x2e, 0xa3, 0x8f, 0x1e, 0x32, 0x38, 0x6c, 0x56, 0xeb, 0x3b, 0x4c, 0x6c, 0x2b, 0x64, 0x44, 0x30, 0xc5, 0xa4, 0xcb, 0x3a, 0x78, 0x84,
0xa3, 0x3d, 0x2c, 0xa2, 0x82, 0x86, 0x35, 0x48, 0x44, 0x46, 0x2f, 0x82, 0x48, 0x2c, 0x20, 0x18, 0x44, 0x69, 0x2a, 0xd3, 0x39, 0x82, 0x5e, 0x82, 0x4c, 0x1a, 0xbf, 0x32, 0x30, 0x9c, 0x28, 0x7f,
0x2c, 0x20, 0x18, 0x2c, 0x20, 0x18, 0x2c, 0xd2, 0x48, 0x84, 0x7c, 0x35, 0x86, 0x2f, 0x82, 0x82, 0xa3, 0x10, 0x20, 0x40, 0x55, 0x3b, 0x1b, 0x82, 0x3f, 0x58, 0x53, 0xc5, 0x53, 0x53, 0x3f, 0x53,
0x6c, 0x8f, 0x36, 0x31, 0x82, 0x23, 0x69, 0x33, 0x10, 0x16, 0x60, 0x90, 0x81, 0x6f, 0x59, 0x50, 0x53, 0x3f, 0x53, 0x53, 0xa4, 0xcb, 0xb4, 0xbd, 0x18, 0x2a, 0xf4, 0xcb, 0xcb, 0x58, 0x29, 0xcb,
0x8b, 0xa0, 0x89, 0xec, 0xc7, 0x3e, 0x84, 0x2e, 0x22, 0x27, 0x5b, 0x27, 0xbc, 0x1a, 0x4a, 0xc4, 0xcb, 0x58, 0x29, 0xcb, 0xcb, 0x58, 0x4d, 0x58, 0xb4, 0xa5, 0x53, 0xa2, 0xe4, 0xa2, 0xec, 0x74,
0xa4, 0x2c, 0x20, 0xc4, 0x33, 0x10, 0x14, 0x5b, 0x60, 0x2b, 0x8f, 0xa3, 0x32, 0x38, 0x26, 0xd4, 0x58, 0xa2, 0x3e, 0x69, 0xcb, 0x58, 0xc0, 0x1b, 0xd2, 0xd2, 0x3f, 0xcb, 0xcb, 0x1b, 0xab, 0x74,
0x81, 0x30, 0x68, 0x1d, 0x6a, 0x37, 0x35, 0x42, 0x2e, 0x24, 0x18, 0xc2, 0x30, 0x37, 0x57, 0x19, 0xd2, 0xd2, 0x1b, 0xb2, 0xcb, 0xb4, 0xbd, 0x1b, 0x8f, 0x2d, 0x20, 0x74, 0x8f, 0x20, 0x74, 0x8f,
0x65, 0x48, 0xec, 0xc5, 0x89, 0xc2, 0x4b, 0x7d, 0x31, 0x25, 0x10, 0x14, 0x56, 0x7d, 0x3f, 0xe5, 0x20, 0x74, 0x8f, 0x18, 0x67, 0xf0, 0x8a, 0x3b, 0x10, 0x16, 0x69, 0x40, 0x41, 0x3b, 0x33, 0xfd,
0x92, 0x3c, 0xa3, 0x57, 0x3c, 0x31, 0x83, 0x43, 0x80, 0x10, 0x17, 0x60, 0x91, 0x1b, 0x7a, 0x7a, 0x3f, 0x93, 0x53, 0x5d, 0x18, 0x4e, 0x35, 0x57, 0xeb, 0x21, 0xc0, 0x37, 0x1d, 0x77, 0xe7, 0x48,
0x7a, 0x7a, 0x7a, 0x7a, 0x7a, 0x7a, 0x33, 0xc4, 0xa4, 0x2c, 0x84, 0x18, 0x84, 0x6c, 0x8f, 0x10, 0x61, 0xd3, 0x28, 0xd3, 0x62, 0x49, 0x62, 0xcb, 0xcb, 0x21, 0xc0, 0x21, 0x35, 0x39, 0xcb, 0x58,
0x16, 0x56, 0xe0, 0x1b, 0xa0, 0x7c, 0x7c, 0x35, 0x61, 0x82, 0x1b, 0x20, 0x18, 0x2c, 0x26, 0x89, 0x4e, 0x18, 0x67, 0x3b, 0x3e, 0x42, 0x44, 0xe2, 0x3b, 0x1e, 0xcb, 0x3b, 0x10, 0x14, 0x40, 0x41,
0x27, 0x5b, 0x85, 0xe0, 0xc4, 0x51, 0x89, 0x44, 0xf2, 0x50, 0x84, 0xbc, 0x93, 0xc7, 0x31, 0xa0, 0x47, 0x8a, 0x00, 0x3e, 0x42, 0x45, 0x4d, 0x73, 0xe5, 0x93, 0x2c, 0x44, 0x4d, 0x9b, 0x23, 0x5b,
0xa0, 0x48, 0x57, 0xbc, 0x21, 0xb2, 0xc7, 0x93, 0xbf, 0x58, 0x24, 0x52, 0x3b, 0x37, 0x35, 0x10, 0x54, 0xbf, 0x9c, 0x28, 0x68, 0x76, 0x00, 0x91, 0x10, 0x16, 0x40, 0x55, 0x36, 0x1e, 0x31, 0x18,
0x20, 0x56, 0xbc, 0x48, 0x1e, 0x18, 0x84, 0x84, 0x18, 0x2a, 0x46, 0xbc, 0x29, 0xf3, 0x5d, 0x88, 0x25, 0xd3, 0x28, 0xc7, 0x48, 0x25, 0x99, 0x61, 0x99, 0x25, 0x5b, 0x20, 0x25, 0xd3, 0x90, 0x1c,
0x5d, 0x2a, 0x5d, 0x88, 0x5d, 0x2a, 0x29, 0xe5, 0x33, 0x2e, 0x39, 0x33, 0x2e, 0x2e, 0x39, 0xa0, 0x1e, 0x31, 0x10, 0x0c, 0x40, 0x6a, 0x9c, 0x9c, 0x32, 0x80, 0x6f, 0x6f, 0xf4, 0x90, 0x9c, 0x9c,
0x2e, 0x2e, 0x39, 0xa0, 0x2e, 0x2e, 0xe0, 0x2e, 0x5d, 0xa2, 0xbc, 0x44, 0x1e, 0x2e, 0x44, 0x4a, 0x10, 0x0b, 0x40, 0x27, 0x0f, 0x27, 0x41, 0x89, 0x69, 0x32, 0x27, 0x41, 0x27, 0x41, 0x89, 0x69,
0x44, 0x4c, 0xeb, 0xbc, 0x44, 0x4c, 0xcb, 0xa0, 0xbc, 0x18, 0x33, 0x39, 0xa0, 0x26, 0x2e, 0xa0, 0x32, 0x27, 0x00, 0x89, 0x28, 0x81, 0x10, 0x0c, 0x40, 0x6a, 0x9c, 0x48, 0x91, 0x6f, 0x7b, 0x5e,
0x3d, 0xbd, 0x92, 0xbd, 0x2e, 0xe0, 0x92, 0xc1, 0x2e, 0xa0, 0x92, 0xf3, 0x29, 0x1e, 0x92, 0xd3, 0x6a, 0x9c, 0x9c, 0x10, 0x1b, 0x6e, 0x3e, 0x97, 0xc0, 0x21, 0x35, 0x4e, 0x18, 0x67, 0x3b, 0x3e,
0x18, 0x2a, 0x1b, 0x2a, 0x29, 0x1e, 0x92, 0xd3, 0x18, 0x2a, 0xc4, 0x82, 0x82, 0xc4, 0x82, 0x82, 0x67, 0x3e, 0x3b, 0x1e, 0xcb, 0x3b, 0x10, 0x10, 0x62, 0x6e, 0x43, 0x43, 0x36, 0x2f, 0x46, 0x10,
0x10, 0x16, 0x5b, 0x56, 0xa2, 0x82, 0x51, 0x5b, 0x89, 0x84, 0x2e, 0x22, 0x1e, 0x3e, 0x33, 0x3e, 0x44, 0x33, 0x55, 0x4a, 0x4c, 0x7a, 0x10, 0x14, 0x63, 0x4d, 0x68, 0x5c, 0xc0, 0x61, 0xd2, 0x27,
0x44, 0xcb, 0x50, 0x1e, 0x1e, 0x8f, 0x58, 0x42, 0x29, 0x30, 0x30, 0x69, 0x45, 0xc5, 0x8f, 0x21, 0x21, 0xc3, 0x51, 0x49, 0x59, 0xf5, 0x33, 0xc7, 0xb4, 0x34, 0x78, 0x53, 0x34, 0x23, 0x20, 0x59,
0x84, 0x2c, 0x82, 0xe2, 0x18, 0x51, 0x3e, 0xbc, 0x2e, 0x22, 0x79, 0x48, 0x4c, 0x2e, 0x18, 0x82, 0x51, 0x8d, 0x10, 0x14, 0x40, 0x68, 0x80, 0x88, 0x23, 0x38, 0x38, 0x2e, 0x7d, 0x10, 0x12, 0x63,
0x82, 0x86, 0x10, 0x14, 0x56, 0x33, 0x5d, 0xa4, 0x2c, 0x1e, 0x8e, 0x3d, 0x81, 0x1e, 0x89, 0x33, 0x3b, 0xeb, 0x21, 0x6a, 0x72, 0x4f, 0xe7, 0xa4, 0x4e, 0xa3, 0xa4, 0x81, 0x8b, 0xf4, 0x2a, 0x28,
0x89, 0x44, 0xd2, 0x50, 0x1e, 0xa2, 0x1b, 0x82, 0x1e, 0x93, 0xbf, 0x58, 0x24, 0x52, 0x3b, 0x80, 0xe7, 0x28, 0xcb, 0xb4, 0x72, 0x21, 0x6a, 0x62, 0x6a, 0x10, 0x14, 0x62, 0x25, 0x27, 0x8b, 0x71,
0x10, 0x16, 0x56, 0xdc, 0x3c, 0xa3, 0x57, 0x3c, 0xd3, 0x57, 0x3c, 0x74, 0x21, 0x30, 0x74, 0x21, 0x10, 0x14, 0x00, 0x63, 0x3e, 0x50, 0x66, 0x1d, 0x20, 0x67, 0x2b, 0xcb, 0x42, 0x58, 0x42, 0x44,
0x74, 0x21, 0x30, 0x30, 0x45, 0x3c, 0xc7, 0x92, 0x3c, 0xa3, 0x57, 0xf3, 0x3c, 0x10, 0x0c, 0x38, 0x69, 0x36, 0x2f, 0x46, 0x6c, 0x27, 0xfd, 0x3c, 0x2b, 0xc8, 0x24, 0xeb, 0x44, 0xa4, 0x1c, 0x39,
0x4f, 0x24, 0x29, 0x75, 0x18, 0x77, 0x8a, 0x80, 0x83, 0x75, 0x52, 0x45, 0x10, 0x0b, 0x56, 0x28, 0x5a, 0x5e, 0x6a, 0x10, 0x0b, 0x40, 0x8f, 0x24, 0x98, 0x98, 0x34, 0x2b, 0x57, 0x5e, 0x5a, 0x39,
0xf2, 0x19, 0x69, 0x77, 0x77, 0xf2, 0x19, 0x69, 0x77, 0x77, 0x77, 0x69, 0xe0, 0x10, 0x0c, 0x63, 0x5a, 0x39, 0x5a, 0x37, 0x80, 0x6f, 0x10, 0x14, 0x1b, 0x63, 0x71, 0x19, 0x48, 0x39, 0x64, 0x1e,
0x21, 0x3a, 0x75, 0x18, 0x33, 0x73, 0x80, 0xf2, 0x58, 0x24, 0x29, 0x75, 0x10, 0x1b, 0x60, 0x46, 0x4d, 0x51, 0x4b, 0x39, 0x5a, 0x5e, 0x6a, 0x10, 0x14, 0x40, 0x68, 0x80, 0x8f, 0x9e, 0x1a, 0x87,
0x58, 0xc2, 0xc5, 0x8f, 0x21, 0x1e, 0x31, 0x26, 0xf3, 0x22, 0x79, 0xc4, 0x82, 0x82, 0x86, 0x10, 0x3c, 0x78, 0x78, 0x78, 0x78, 0x78, 0x10, 0x09, 0x7c, 0x6f, 0x6f, 0x10, 0x09, 0x7c, 0x80, 0x80,
0x10, 0x23, 0x1c, 0x53, 0x47, 0x47, 0x47, 0x10, 0x10, 0x5b, 0x28, 0x28, 0x28, 0xd0, 0x3a, 0x38, 0x7b, 0x48, 0x77, 0xa1, 0x10, 0x13, 0x4c, 0x25, 0x7b, 0xa4, 0xcb, 0x33, 0x73, 0x20, 0x96, 0xe2,
0x57, 0x10, 0x14, 0x1c, 0x8f, 0x93, 0x4b, 0x5d, 0x8b, 0xd0, 0x2e, 0x43, 0x28, 0xd2, 0x50, 0x41, 0x62, 0x6a, 0x77, 0x68, 0x86, 0x57, 0xe2, 0x39, 0xcb, 0x58, 0x51, 0x73, 0x67, 0x1d, 0x10, 0x09,
0x3f, 0xa3, 0x32, 0x38, 0xa3, 0x2e, 0x38, 0x27, 0x5b, 0x27, 0xec, 0xc7, 0x89, 0x26, 0xc2, 0x81, 0x40, 0x91, 0x6f, 0x7b, 0x10, 0x1f, 0xe4, 0x63, 0x82, 0x74, 0xc2, 0x47, 0xc1, 0xd3, 0xc0, 0xd3,
0x55, 0x2b, 0xe1, 0x50, 0x2a, 0xbc, 0x10, 0x14, 0x38, 0x4f, 0x76, 0x70, 0x6d, 0x5a, 0x78, 0x10, 0x1b, 0x1c, 0xc1, 0x2d, 0xc2, 0x35, 0x9f, 0xfd, 0x3e, 0x18, 0xfd, 0xa4, 0x53, 0x67, 0x53, 0x67,
0x12, 0x34, 0xa4, 0x2a, 0x93, 0x4b, 0xa4, 0x41, 0xa3, 0x3d, 0x22, 0x69, 0x30, 0x83, 0x6a, 0xd3, 0x53, 0x67, 0x53, 0x67, 0x53, 0x83, 0x83, 0x83, 0x10, 0x14, 0x00, 0x63, 0x58, 0x8f, 0x9e, 0x1a,
0x23, 0xa3, 0x3d, 0x50, 0x3c, 0x8f, 0xcb, 0x93, 0x2a, 0x10, 0x14, 0x23, 0x4f, 0x77, 0x8a, 0xd2, 0x87, 0x3c, 0x78, 0x78, 0x78, 0x78, 0x78, 0x10, 0x14, 0x00, 0x63, 0x3e, 0x50, 0xff, 0x4e, 0xa5,
0x48, 0x92, 0x66, 0x55, 0x2b, 0xe1, 0x50, 0xc2, 0xbc, 0x10, 0x14, 0x2f, 0x34, 0x42, 0x2e, 0x24, 0xd3, 0x3c, 0x53, 0x67, 0x3b, 0x3e, 0x38, 0x38, 0x2e, 0x00, 0x93, 0x53, 0x3c, 0xc2, 0x58, 0x66,
0xd4, 0x41, 0xa3, 0x3e, 0x84, 0x2e, 0x22, 0x27, 0x39, 0x2e, 0x47, 0x47, 0x47, 0x63, 0x8a, 0x69, 0x1c, 0x21, 0xc3, 0x62, 0xc3, 0x10, 0x14, 0x00, 0x63, 0x58, 0x88, 0x23, 0x38, 0x38, 0x2e, 0x7d,
0xe0, 0x48, 0x81, 0xc2, 0x5d, 0x2c, 0x3d, 0x41, 0x2b, 0xeb, 0x93, 0x2a, 0x10, 0x0b, 0x5d, 0x4f, 0x69, 0x4f, 0x80, 0x10, 0x14, 0x1b, 0x63, 0x71, 0x7b, 0x10, 0x0d, 0x00, 0x63, 0x58, 0x9b, 0xbb,
0x51, 0xc7, 0x8f, 0x21, 0x25, 0x21, 0x30, 0x68, 0xeb, 0x58, 0x41, 0xf0, 0x25, 0x8f, 0xcb, 0x50, 0xd3, 0x21, 0xc3, 0x5e, 0xc3, 0x28, 0xc7, 0x48, 0x76, 0x00, 0x91, 0x10, 0x11, 0x63, 0x4d, 0x23,
0x77, 0x80, 0x10, 0x14, 0x34, 0xb4, 0x66, 0x55, 0x2b, 0xa1, 0x63, 0xa4, 0x1e, 0x8a, 0x30, 0x84, 0x5e, 0x5a, 0x39, 0x5a, 0x4f, 0xc5, 0xcc, 0x4f, 0x27, 0x7f, 0x23, 0x62, 0x4b, 0x90, 0x41, 0x27,
0x18, 0x92, 0x2e, 0x2d, 0x8b, 0x7d, 0xfd, 0x8f, 0x10, 0x14, 0x38, 0x4f, 0x76, 0x7e, 0x55, 0x2a, 0x3c, 0xe8, 0x64, 0x1e, 0xe7, 0xb4, 0x66, 0x1c, 0x21, 0xc3, 0x62, 0xc3, 0x10, 0x0d, 0x6e, 0x68,
0x87, 0x6e, 0x27, 0x10, 0x09, 0x4f, 0x8c, 0x68, 0x76, 0x73, 0x10, 0x09, 0x4f, 0x8c, 0x83, 0x19, 0x8b, 0x18, 0x6a, 0x21, 0x6a, 0x39, 0xc2, 0x98, 0x27, 0x6f, 0x75, 0x23, 0x62, 0x49, 0x28, 0x23,
0x80, 0x31, 0xa4, 0xa3, 0x58, 0x42, 0x46, 0x10, 0x13, 0x38, 0x4f, 0x76, 0x0f, 0xc7, 0x89, 0x84, 0x10, 0x14, 0x3f, 0x63, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0x53, 0x34, 0x23, 0x4d, 0x5d, 0x35,
0x89, 0xe0, 0x3d, 0x2c, 0x3d, 0xa5, 0x31, 0x70, 0x5e, 0x31, 0xa0, 0x1e, 0x93, 0x2a, 0x58, 0x42, 0x59, 0x51, 0x8d, 0x10, 0x13, 0x63, 0x2c, 0x67, 0x2c, 0x42, 0xb4, 0x34, 0x78, 0x84, 0x44, 0x4d,
0x29, 0xa3, 0x21, 0xb2, 0x2c, 0x8d, 0x31, 0x84, 0x72, 0xff, 0x10, 0x09, 0x38, 0x4f, 0x73, 0x80, 0x9b, 0x68, 0x2c, 0x5e, 0x82, 0x4c, 0x1a, 0xbf, 0x32, 0x30, 0x32, 0x30, 0x28, 0xeb, 0x28, 0x7f,
0xf2, 0x10, 0x1f, 0x34, 0xcb, 0xc2, 0xc4, 0xc2, 0x92, 0xc1, 0x1e, 0x2b, 0x48, 0x25, 0xb3, 0x25, 0x10, 0x1a, 0x63, 0xec, 0x74, 0xc2, 0x2a, 0x29, 0x1d, 0x2a, 0xe4, 0x58, 0xa4, 0xd3, 0x92, 0x68,
0x52, 0xcb, 0x33, 0xca, 0x33, 0x82, 0x5b, 0x33, 0xc5, 0x33, 0x46, 0xc4, 0xa2, 0x7b, 0x61, 0x7b, 0x92, 0x68, 0x92, 0x68, 0x45, 0x00, 0x82, 0x82, 0x1e, 0xb7, 0xb5, 0xbd, 0x1e, 0xb7, 0xb5, 0xbd,
0x61, 0x7b, 0x61, 0x7b, 0x61, 0x7b, 0x61, 0x7b, 0x61, 0x2e, 0x10, 0x14, 0x34, 0x7e, 0x55, 0x2a, 0x1e, 0xb7, 0xb5, 0xbd, 0x3a, 0xdb, 0xa7, 0xbf, 0x33, 0xcb, 0x8f, 0x3e, 0x74, 0xc3, 0x33, 0xcb,
0x87, 0x6e, 0x27, 0x10, 0x14, 0x34, 0xd4, 0xa3, 0x21, 0x4b, 0x5d, 0x8b, 0xc2, 0xb4, 0x2c, 0x44, 0x8f, 0x67, 0xc2, 0xa4, 0xd3, 0x2e, 0x93, 0x23, 0x4d, 0x67, 0x3b, 0x4d, 0x10, 0x13, 0x63, 0x35,
0x44, 0xc4, 0x82, 0x8e, 0x2e, 0x1f, 0x1a, 0x4a, 0x1a, 0xff, 0xc7, 0x89, 0x84, 0x2e, 0x22, 0xa3, 0x3e, 0x67, 0x3b, 0x18, 0x4e, 0x35, 0x57, 0x23, 0x21, 0xc0, 0x37, 0x1d, 0x77, 0x52, 0x4c, 0x1e,
0xbc, 0x2d, 0x3c, 0x8f, 0x5a, 0x21, 0x2a, 0x10, 0x14, 0x34, 0x70, 0x6d, 0x5a, 0x78, 0xc4, 0x76, 0x7f, 0x97, 0x6c, 0x5e, 0xd3, 0xc0, 0x57, 0x30, 0x51, 0xf5, 0x58, 0x5d, 0x4d, 0x2e, 0x35, 0x10,
0x4a, 0x10, 0x14, 0x34, 0xb4, 0x66, 0x55, 0x2b, 0xa1, 0x50, 0xa3, 0x77, 0x49, 0x4a, 0x10, 0x0d, 0x13, 0x63, 0x2c, 0x2b, 0x1b, 0x78, 0x23, 0x73, 0x29, 0x1e, 0xeb, 0x44, 0x2a, 0x93, 0x2c, 0x44,
0x34, 0xcb, 0x26, 0x22, 0xbb, 0x31, 0x7d, 0x93, 0x45, 0x58, 0x69, 0x69, 0x80, 0x10, 0x11, 0x1c, 0x69, 0x2a, 0xd3, 0x39, 0x82, 0x37, 0xbd, 0x62, 0xeb, 0xd3, 0x37, 0xd2, 0x77, 0xf5, 0x32, 0xc7,
0x8f, 0x93, 0x4b, 0x5d, 0x41, 0x26, 0xec, 0x50, 0x1d, 0x30, 0x25, 0x21, 0xc2, 0x31, 0x2e, 0x30, 0x48, 0xa3, 0x2a, 0x32, 0x19, 0x48, 0x77, 0xa1, 0x10, 0x11, 0x63, 0x2c, 0x5a, 0x3c, 0x1c, 0x59,
0x5f, 0x1d, 0x81, 0x5f, 0x52, 0x81, 0xa0, 0x3d, 0x2d, 0x3c, 0x8f, 0x5a, 0x21, 0x2a, 0x10, 0x0d, 0xf5, 0x48, 0x61, 0x99, 0x61, 0x99, 0xf4, 0x48, 0x25, 0x1c, 0x59, 0xf5, 0x24, 0x1c, 0x10, 0x14,
0x2f, 0x56, 0x49, 0x3b, 0x41, 0x33, 0x24, 0xb4, 0x25, 0x21, 0x73, 0x69, 0xf0, 0x42, 0x2e, 0xa3, 0x67, 0x40, 0xc2, 0x9c, 0x9c, 0x67, 0x2e, 0x37, 0x7b, 0x48, 0x62, 0x6a, 0x32, 0x52, 0x90, 0x19,
0x58, 0x2a, 0x10, 0x14, 0x34, 0x27, 0x6e, 0x27, 0x00, 0x39, 0x3e, 0x1e, 0x89, 0xf0, 0xc7, 0xc2, 0x25, 0x91, 0x75, 0x68, 0x48, 0x7f, 0x10, 0x0b, 0x4c, 0x61, 0x6f, 0x6f, 0x6f, 0x6f, 0x10, 0x14,
0x81, 0x55, 0x2b, 0xe1, 0x50, 0x2a, 0xbc, 0x10, 0x13, 0xc4, 0x1c, 0x57, 0x54, 0x27, 0xbc, 0x52, 0x40, 0xfe, 0xd3, 0x90, 0x9c, 0x41, 0x6f, 0x75, 0x7f, 0x9c, 0x32, 0x61, 0x91, 0xf4, 0x48, 0x62,
0x81, 0x85, 0xe0, 0xc4, 0x51, 0x89, 0x44, 0xd2, 0x50, 0x7f, 0x38, 0x1e, 0xa2, 0x50, 0x84, 0x84, 0x6a, 0x9c, 0x62, 0xc2, 0x10, 0x1b, 0x60, 0x63, 0x21, 0xe7, 0x3f, 0xcc, 0x4c, 0x5a, 0x45, 0xc0,
0x50, 0x84, 0x84, 0x93, 0xbf, 0x21, 0xa0, 0x2c, 0x92, 0xa1, 0x58, 0x37, 0x92, 0x3b, 0x45, 0x10, 0x36, 0x3d, 0xf0, 0x4b, 0x1e, 0x3b, 0xff, 0x10,
0x1a, 0xc4, 0x1c, 0x57, 0x5d, 0xa3, 0x4c, 0x2e, 0xc4, 0xc2, 0x2e, 0x5d, 0x4c, 0xc2, 0xc4, 0x91,
0xb4, 0x64, 0x5c, 0x64, 0x5c, 0xa1, 0x71, 0xcb, 0xb2, 0xa7, 0xc7, 0x92, 0xbd, 0xbc, 0xa0, 0x57,
0xe0, 0xbc, 0xa0, 0x57, 0xe0, 0xbc, 0xa0, 0x1b, 0xb2, 0xa7, 0xbf, 0x63, 0x2a, 0xc4, 0x2a, 0x63,
0x2a, 0xc4, 0x2a, 0x63, 0x2a, 0xa4, 0x37, 0x45, 0x3d, 0x2c, 0xdc, 0xc7, 0x3e, 0x1e, 0x89, 0xe2,
0xc4, 0x33, 0x10, 0x13, 0x38, 0x1c, 0x26, 0x3e, 0x1e, 0x3e, 0x33, 0x3e, 0x44, 0xd3, 0x50, 0x1e,
0x1e, 0x8f, 0x58, 0x42, 0x29, 0x30, 0x30, 0x37, 0x92, 0x31, 0xa4, 0x24, 0x2e, 0xbd, 0x48, 0x57,
0xb5, 0x2d, 0xa0, 0x3e, 0x33, 0x2e, 0x22, 0x1e, 0x89, 0xf3, 0x82, 0x10, 0x13, 0xc4, 0x1c, 0x57,
0x54, 0x27, 0xbc, 0x52, 0x81, 0x1e, 0x89, 0xa0, 0x2e, 0x22, 0x26, 0xa0, 0x18, 0x57, 0x89, 0x44,
0xf2, 0x93, 0xc7, 0x31, 0xa0, 0xa0, 0x93, 0xab, 0x2d, 0x3d, 0xc1, 0x63, 0x52, 0xa1, 0x58, 0x42,
0x29, 0x3b, 0x0f, 0x30, 0x69, 0x68, 0x3b, 0x8a, 0x31, 0xa4, 0xa3, 0x58, 0x42, 0x46, 0x10, 0x11,
0x1c, 0x32, 0x22, 0x59, 0x5a, 0x58, 0x69, 0x69, 0x74, 0x21, 0x74, 0x21, 0x59, 0x5a, 0x32, 0x10,
0x14, 0x00, 0x58, 0x4f, 0x75, 0x52, 0x45, 0x21, 0x69, 0x83, 0x43, 0x31, 0xb4, 0x37, 0x52, 0x3b,
0x2a, 0x43, 0x77, 0x83, 0x6a, 0xff, 0x75, 0x48, 0xc2, 0x10, 0x0b, 0x38, 0x4f, 0x80, 0x80, 0x83,
0x81, 0x35, 0x10, 0x14, 0x22, 0x4f, 0x37, 0x92, 0x75, 0x57, 0x19, 0x83, 0x6a, 0x4a, 0x30, 0x75,
0xfc, 0x18, 0x3b, 0x83, 0x19, 0x31, 0xb4, 0x75, 0x52, 0x4a, 0x10, 0x1b, 0x4f, 0x60, 0x1c, 0x3a,
0x1e, 0x18, 0xc6, 0x92, 0x45, 0x1e, 0x71, 0x3f, 0x3c, 0x57, 0x3d, 0x25, 0x48, 0xd4, 0x48, 0x2a,
0x10,
}; };
static const gU16 mf_rlefont_DejaVuSans32_glyph_offsets_0[95] PROGMEM = { static const gU16 mf_rlefont_DejaVuSans32_glyph_offsets_0[95] = {
0x0000, 0x0003, 0x000b, 0x0011, 0x0036, 0x0074, 0x00c7, 0x0105, 0x0000, 0x0003, 0x000c, 0x0015, 0x0038, 0x0077, 0x00c9, 0x0105,
0x010b, 0x0125, 0x013c, 0x015e, 0x0170, 0x0176, 0x0180, 0x0184, 0x0109, 0x011f, 0x0135, 0x0156, 0x0165, 0x016f, 0x0179, 0x017f,
0x019b, 0x01c7, 0x01db, 0x01f5, 0x0219, 0x024a, 0x0268, 0x0295, 0x0196, 0x01b7, 0x01c8, 0x01dc, 0x01f8, 0x0225, 0x023e, 0x026b,
0x02ad, 0x02df, 0x030f, 0x0313, 0x0319, 0x033c, 0x0346, 0x036a, 0x0285, 0x0292, 0x02bd, 0x02c0, 0x02c7, 0x02e7, 0x02f6, 0x0317,
0x0381, 0x03e0, 0x0413, 0x043c, 0x045e, 0x048e, 0x049e, 0x04ae, 0x0332, 0x0389, 0x03bc, 0x03e6, 0x0408, 0x0437, 0x0448, 0x0458,
0x04e2, 0x04fa, 0x04ff, 0x050c, 0x0538, 0x0541, 0x0583, 0x05cf, 0x0486, 0x0497, 0x049d, 0x04a8, 0x04cd, 0x04d7, 0x051c, 0x0563,
0x05f9, 0x0608, 0x0639, 0x0656, 0x067b, 0x068a, 0x06a0, 0x06d0, 0x056a, 0x0583, 0x058c, 0x05b5, 0x05da, 0x05e5, 0x05fb, 0x0622,
0x0731, 0x0763, 0x0781, 0x079e, 0x07ad, 0x07be, 0x07cd, 0x07e0, 0x0679, 0x06ad, 0x06c9, 0x06e3, 0x06f1, 0x0707, 0x0714, 0x0727,
0x07e8, 0x07f2, 0x0817, 0x0820, 0x083a, 0x084a, 0x086d, 0x0883, 0x072f, 0x0737, 0x0753, 0x075e, 0x077a, 0x0781, 0x07a4, 0x07b7,
0x0899, 0x08a4, 0x08ab, 0x08b8, 0x08db, 0x08e2, 0x090b, 0x0914, 0x07c8, 0x07d7, 0x07dc, 0x07e5, 0x07ff, 0x0805, 0x0829, 0x0838,
0x0938, 0x0942, 0x094f, 0x095e, 0x097f, 0x0993, 0x09a8, 0x09d0, 0x0856, 0x0864, 0x086a, 0x087c, 0x089d, 0x08b1, 0x08c4, 0x08e1,
0x0a13, 0x0a3c, 0x0a6f, 0x0a80, 0x0a9a, 0x0aa3, 0x0abb, 0x091d, 0x0940, 0x0969, 0x097f, 0x0997, 0x099f, 0x09b5,
}; };
static const struct mf_rlefont_char_range_s mf_rlefont_DejaVuSans32_char_ranges[] = { static const struct mf_rlefont_char_range_s mf_rlefont_DejaVuSans32_char_ranges[] = {
@ -278,8 +270,8 @@ const struct mf_rlefont_s mf_rlefont_DejaVuSans32 = {
4, /* version */ 4, /* version */
mf_rlefont_DejaVuSans32_dictionary_data, mf_rlefont_DejaVuSans32_dictionary_data,
mf_rlefont_DejaVuSans32_dictionary_offsets, mf_rlefont_DejaVuSans32_dictionary_offsets,
76, /* rle dict count */ 87, /* rle dict count */
126, /* total dict count */ 140, /* total dict count */
1, /* char range count */ 1, /* char range count */
mf_rlefont_DejaVuSans32_char_ranges, mf_rlefont_DejaVuSans32_char_ranges,
}; };

File diff suppressed because it is too large Load diff

View file

@ -11,7 +11,7 @@
#error The font file is not compatible with this version of mcufont. #error The font file is not compatible with this version of mcufont.
#endif #endif
static const gU8 mf_bwfont_DejaVuSansBold12_glyph_data_0[1540] PROGMEM = { static const gU8 mf_bwfont_DejaVuSansBold12_glyph_data_0[1540] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0x03, 0x7e, 0x03, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7e, 0x03, 0x7e, 0x03, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x00,
0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0xc8, 0x03, 0xf8, 0x01, 0x4e, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0xc8, 0x03, 0xf8, 0x01, 0x4e, 0x00,
0xc8, 0x03, 0x7c, 0x00, 0x4e, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x02, 0x7c, 0x02, 0xc8, 0x03, 0x7c, 0x00, 0x4e, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x02, 0x7c, 0x02,
@ -111,7 +111,7 @@ static const gU8 mf_bwfont_DejaVuSansBold12_glyph_data_0[1540] PROGMEM = {
0x40, 0x00, 0x20, 0x00, 0x40, 0x00, 0x20, 0x00,
}; };
static const gU16 mf_bwfont_DejaVuSansBold12_glyph_offsets_0[96] PROGMEM = { static const gU16 mf_bwfont_DejaVuSansBold12_glyph_offsets_0[96] = {
0x0000, 0x0000, 0x0005, 0x000a, 0x0014, 0x001d, 0x002a, 0x0035, 0x0000, 0x0000, 0x0005, 0x000a, 0x0014, 0x001d, 0x002a, 0x0035,
0x0038, 0x003e, 0x0043, 0x004a, 0x0053, 0x0057, 0x005d, 0x0061, 0x0038, 0x003e, 0x0043, 0x004a, 0x0053, 0x0057, 0x005d, 0x0061,
0x0066, 0x006f, 0x0077, 0x0080, 0x0089, 0x0092, 0x009b, 0x00a4, 0x0066, 0x006f, 0x0077, 0x0080, 0x0089, 0x0092, 0x009b, 0x00a4,
@ -126,7 +126,7 @@ static const gU16 mf_bwfont_DejaVuSansBold12_glyph_offsets_0[96] PROGMEM = {
0x02cc, 0x02d4, 0x02dc, 0x02e4, 0x02ec, 0x02f0, 0x02f8, 0x0302, 0x02cc, 0x02d4, 0x02dc, 0x02e4, 0x02ec, 0x02f0, 0x02f8, 0x0302,
}; };
static const gU8 mf_bwfont_DejaVuSansBold12_glyph_widths_0[95] PROGMEM = { static const gU8 mf_bwfont_DejaVuSansBold12_glyph_widths_0[95] = {
0x04, 0x05, 0x06, 0x0a, 0x08, 0x0c, 0x0a, 0x04, 0x05, 0x05, 0x06, 0x0a, 0x05, 0x05, 0x05, 0x04, 0x04, 0x05, 0x06, 0x0a, 0x08, 0x0c, 0x0a, 0x04, 0x05, 0x05, 0x06, 0x0a, 0x05, 0x05, 0x05, 0x04,
0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x05, 0x05, 0x0a, 0x0a, 0x0a, 0x07, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x05, 0x05, 0x0a, 0x0a, 0x0a, 0x07,
0x0c, 0x09, 0x09, 0x09, 0x0a, 0x08, 0x08, 0x0a, 0x0a, 0x04, 0x04, 0x09, 0x08, 0x0c, 0x0a, 0x0b, 0x0c, 0x09, 0x09, 0x09, 0x0a, 0x08, 0x08, 0x0a, 0x0a, 0x04, 0x04, 0x09, 0x08, 0x0c, 0x0a, 0x0b,

View file

@ -11,206 +11,206 @@
#error The font file is not compatible with this version of mcufont. #error The font file is not compatible with this version of mcufont.
#endif #endif
static const gU8 mf_rlefont_DejaVuSansBold12_aa_dictionary_data[319] PROGMEM = { static const gU8 mf_rlefont_DejaVuSansBold12_aa_dictionary_data[295] = {
0xc2, 0xde, 0xc4, 0x0c, 0x07, 0xc7, 0x80, 0xc8, 0xc1, 0xc9, 0x0a, 0x2c, 0x85, 0x11, 0x84, 0x0b, 0x09, 0x06, 0xce, 0x80, 0xc2, 0x02, 0x11, 0x80, 0xc5, 0x07, 0x0a, 0x03, 0x0b, 0x02, 0x01, 0xc2,
0x1a, 0x10, 0x03, 0x81, 0x05, 0x2d, 0x07, 0x09, 0x06, 0x08, 0x02, 0x81, 0xc6, 0xce, 0xc4, 0xce, 0x06, 0x81, 0x81, 0x0c, 0x81, 0x86, 0x04, 0x81, 0x2c, 0x83, 0x05, 0x2b, 0x80, 0xc3, 0x80, 0xcb,
0x06, 0x81, 0x81, 0x07, 0xcd, 0xd1, 0x0a, 0x81, 0xce, 0x80, 0xce, 0xc1, 0x80, 0xc5, 0x01, 0xc4, 0x0f, 0x40, 0x07, 0xce, 0xcb, 0x80, 0xc6, 0x0c, 0xd9, 0x0c, 0x01, 0xca, 0x84, 0x1a, 0xc5, 0xc1,
0x80, 0x04, 0x05, 0xc1, 0xc3, 0xca, 0xce, 0xc2, 0xde, 0x80, 0xc2, 0x01, 0x02, 0xca, 0x80, 0xc2, 0xcb, 0x80, 0x2d, 0xc7, 0x80, 0xc8, 0xc2, 0x01, 0x0b, 0xc5, 0x07, 0x81, 0x02, 0x01, 0x80, 0x10,
0xc9, 0x82, 0xcd, 0xc5, 0xc1, 0x01, 0x01, 0x81, 0xc5, 0x80, 0xc3, 0x80, 0xcd, 0xc4, 0xc6, 0x80, 0xc4, 0xce, 0xc3, 0x80, 0x80, 0xca, 0xc3, 0xca, 0x04, 0x80, 0xcc, 0xce, 0xca, 0x07, 0x81, 0xc5,
0xcb, 0x80, 0xc7, 0xcd, 0x80, 0x80, 0xcc, 0xc7, 0x80, 0xcd, 0xc1, 0xd9, 0xc1, 0x08, 0x07, 0x81, 0xcd, 0xc3, 0xcc, 0xc2, 0x81, 0xce, 0x80, 0x80, 0xc2, 0x01, 0x81, 0x82, 0x80, 0xce, 0xc1, 0xc5,
0x80, 0x01, 0x80, 0xc1, 0xce, 0x04, 0x81, 0xc8, 0xc1, 0xc1, 0x80, 0xce, 0x80, 0xcd, 0x0f, 0xc5, 0x80, 0xc9, 0x0c, 0x01, 0xc5, 0x80, 0x08, 0xcd, 0x80, 0xcd, 0xc9, 0x80, 0xc7, 0x85, 0x08, 0xce,
0xcd, 0x0c, 0x81, 0x0c, 0x81, 0x0c, 0xc6, 0x80, 0x01, 0xc1, 0x03, 0xc5, 0xcc, 0xce, 0xcc, 0xc6, 0xc9, 0xd1, 0xc1, 0x01, 0xce, 0x81, 0xc1, 0xc6, 0x80, 0xc4, 0xcc, 0xc6, 0xc3, 0xce, 0x07, 0xcd,
0xc5, 0xc1, 0xc3, 0xcc, 0x40, 0x06, 0x80, 0xc6, 0xc9, 0xc1, 0x80, 0x02, 0x01, 0xca, 0x80, 0xce, 0x80, 0xce, 0xc1, 0x81, 0xde, 0x80, 0xcd, 0xce, 0xcd, 0xc4, 0xcb, 0xc1, 0xc9, 0xc5, 0xcc, 0x80,
0x80, 0xc3, 0x01, 0xc2, 0xc6, 0xcc, 0xce, 0xcc, 0x20, 0xa4, 0xa3, 0x4e, 0x57, 0x1d, 0x29, 0x0b, 0xc8, 0xcd, 0xc5, 0xc2, 0xc9, 0x0e, 0x0c, 0x06, 0x2c, 0x24, 0x50, 0x24, 0x05, 0x0f, 0x45, 0xdc,
0x60, 0x01, 0x46, 0x26, 0x2e, 0x57, 0x3f, 0x64, 0x09, 0x00, 0x4e, 0x61, 0x09, 0x47, 0x4e, 0x02, 0x1a, 0x18, 0x0f, 0x52, 0xa4, 0x18, 0x94, 0x42, 0x09, 0x30, 0x1f, 0x06, 0x4f, 0x29, 0x1a, 0x22,
0x66, 0x54, 0x26, 0xc7, 0x64, 0x4e, 0x02, 0x66, 0x54, 0x4e, 0x61, 0x09, 0x47, 0x36, 0xbc, 0x64, 0x63, 0x21, 0x9c, 0x26, 0x29, 0x1a, 0x22, 0x4d, 0x29, 0x09, 0x30, 0x1f, 0x06, 0x0f, 0x4f, 0x66,
0x09, 0x00, 0x3b, 0x02, 0xe7, 0xa4, 0xb5, 0x2f, 0x3b, 0x02, 0x2e, 0x1a, 0x0c, 0x03, 0x4e, 0x61, 0x55, 0x45, 0x02, 0x22, 0x63, 0x19, 0x8a, 0x4d, 0x45, 0x02, 0x22, 0x63, 0x45, 0x09, 0x66, 0x55,
0x05, 0x54, 0x3c, 0xa4, 0x3b, 0x07, 0x20, 0x08, 0x0f, 0x28, 0xa4, 0x20, 0xc8, 0x0e, 0x0d, 0x0f, 0x29, 0xc0, 0x57, 0x00, 0x01, 0x01, 0x20, 0x24, 0x50, 0x24, 0x50, 0x24, 0x50, 0x24, 0x50, 0x09,
0x0a, 0x24, 0x90, 0x53, 0x4e, 0xe7, 0x31, 0x57, 0x28, 0xc7, 0x23, 0x4e, 0x23, 0x4e, 0x23, 0x4e, 0x0e, 0x28, 0x1d, 0x38, 0x66, 0x61, 0x5f, 0x39, 0x48, 0x45, 0xdc, 0x5f, 0x39, 0x48, 0x1d, 0x38,
0x93, 0xe7, 0x31, 0x1b, 0x19, 0x4c, 0x19, 0x32, 0x02, 0x20, 0x01, 0x2c, 0x39, 0x24, 0x42, 0x2d, 0x66, 0x61, 0x52, 0x09, 0x0c, 0x03, 0x45, 0x09, 0x4e, 0x63, 0x45, 0x24, 0x20, 0x02, 0x62, 0x04,
0x51, 0x28, 0x09, 0x0e, 0xf3, 0x0b, 0x28, 0x5a, 0x37, 0x20, 0x53, 0x4a, 0x0a, 0x5a, 0x02, 0x1b, 0x01, 0x01, 0x4d, 0x21, 0x90, 0xb7, 0x5f, 0x39, 0x01, 0x63, 0x2a, 0x24, 0x3a, 0x1c, 0x20, 0x0c,
0x0f, 0x04, 0x2e, 0x51, 0x28, 0xc7, 0x0a, 0x0e, 0x64, 0x0a, 0x02, 0x26, 0x00, 0x43, 0x06, 0x1b, 0x07, 0x26, 0x23, 0x02, 0x1e, 0x1e, 0x01, 0x07, 0x20, 0x51, 0x0a, 0x1d, 0x0f, 0x1c, 0x18, 0x1d,
0x32, 0x41, 0x31, 0x57, 0x2e, 0x57, 0x58, 0x0a, 0x09, 0x60, 0x5a, 0x58, 0x09, 0x24, 0x32, 0x02, 0x36, 0x0b, 0x1c, 0x0d, 0x63, 0x0a, 0x49,
0x3c, 0x66, 0x54, 0x3c, 0x9c, 0x51, 0x24, 0x32, 0x02, 0x3c, 0x66, 0x64, 0x24, 0x09, 0x60,
}; };
static const gU16 mf_rlefont_DejaVuSansBold12_aa_dictionary_offsets[118] PROGMEM = { static const gU16 mf_rlefont_DejaVuSansBold12_aa_dictionary_offsets[115] = {
0x0000, 0x0003, 0x0004, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x0000, 0x0001, 0x0002, 0x0006, 0x0007, 0x0009, 0x000a, 0x000b,
0x000f, 0x0010, 0x0011, 0x0012, 0x0014, 0x0015, 0x0016, 0x0017, 0x000c, 0x000d, 0x000e, 0x0010, 0x0012, 0x0015, 0x0016, 0x0018,
0x0018, 0x0019, 0x001a, 0x001c, 0x001e, 0x0020, 0x0022, 0x0023, 0x0019, 0x001a, 0x001b, 0x001c, 0x001e, 0x0020, 0x0021, 0x0023,
0x0025, 0x0026, 0x0028, 0x002a, 0x002c, 0x002f, 0x0031, 0x0032, 0x0025, 0x0027, 0x002a, 0x002c, 0x002d, 0x002e, 0x0030, 0x0032,
0x0034, 0x0036, 0x0038, 0x0039, 0x003c, 0x003d, 0x003f, 0x0041, 0x0033, 0x0036, 0x0038, 0x003a, 0x003d, 0x003f, 0x0040, 0x0042,
0x0042, 0x0044, 0x0046, 0x0048, 0x004a, 0x004c, 0x004e, 0x0051, 0x0044, 0x0046, 0x0048, 0x0049, 0x004b, 0x004d, 0x004f, 0x0051,
0x0053, 0x0055, 0x0057, 0x0059, 0x005b, 0x005c, 0x005e, 0x0060, 0x0053, 0x0055, 0x0057, 0x0059, 0x005b, 0x005c, 0x005e, 0x0060,
0x0063, 0x0065, 0x0067, 0x0069, 0x006c, 0x006e, 0x006f, 0x0071, 0x0062, 0x0063, 0x0066, 0x0067, 0x0069, 0x006b, 0x006d, 0x006f,
0x0076, 0x0078, 0x007a, 0x007b, 0x007e, 0x0080, 0x0082, 0x0084, 0x0071, 0x0072, 0x0074, 0x0076, 0x0078, 0x007a, 0x007c, 0x007e,
0x0086, 0x0088, 0x008a, 0x008c, 0x008e, 0x0090, 0x0092, 0x0094, 0x0081, 0x0083, 0x0084, 0x0085, 0x0087, 0x0089, 0x008b, 0x008d,
0x0096, 0x0098, 0x009f, 0x00a4, 0x00a6, 0x00c2, 0x00cc, 0x00d5, 0x008f, 0x0091, 0x0093, 0x0095, 0x0097, 0x0099, 0x009c, 0x009e,
0x00d7, 0x00d9, 0x00dd, 0x00df, 0x00e1, 0x00e5, 0x00e8, 0x00ea, 0x00a0, 0x00a2, 0x00a7, 0x00bd, 0x00d3, 0x00d5, 0x00d7, 0x00df,
0x00f0, 0x00f1, 0x00f4, 0x00f7, 0x00fa, 0x00fe, 0x0102, 0x0105, 0x00f4, 0x00fb, 0x00fd, 0x0101, 0x0103, 0x0106, 0x0108, 0x010a,
0x0107, 0x0109, 0x010b, 0x010e, 0x0110, 0x0112, 0x0116, 0x011c, 0x0111, 0x0113, 0x0115, 0x0117, 0x0119, 0x011c, 0x011f, 0x0121,
0x011e, 0x0120, 0x0122, 0x0126, 0x0128, 0x013f, 0x0123, 0x0125, 0x0127,
}; };
static const gU8 mf_rlefont_DejaVuSansBold12_aa_glyph_data_0[2284] PROGMEM = { static const gU8 mf_rlefont_DejaVuSansBold12_aa_glyph_data_0[2289] = {
0x04, 0x00, 0x10, 0x05, 0x1e, 0x75, 0x0d, 0x0d, 0x19, 0x0c, 0x0c, 0x21, 0x79, 0x10, 0x06, 0x55, 0x04, 0x00, 0x10, 0x05, 0x1b, 0x6d, 0x50, 0x0d, 0x0d, 0x50, 0x0c, 0x0c, 0x34, 0x24, 0x10, 0x06,
0xee, 0x29, 0xac, 0x29, 0xac, 0x10, 0x0a, 0x1b, 0x80, 0x0f, 0x02, 0x06, 0x0d, 0x27, 0x56, 0x63, 0x2d, 0xee, 0x52, 0xac, 0x52, 0xac, 0x10, 0x0a, 0x52, 0x82, 0x4a, 0x06, 0x0d, 0x18, 0x46, 0x32,
0x09, 0x28, 0x87, 0x1d, 0x29, 0x40, 0x44, 0x01, 0x80, 0x0f, 0x02, 0x06, 0x0d, 0x29, 0x1d, 0x34, 0x09, 0x19, 0x51, 0x56, 0x69, 0x3f, 0x01, 0x1d, 0x74, 0x4a, 0x06, 0x0d, 0x52, 0xc3, 0x1c, 0x1d,
0x28, 0x08, 0x0b, 0x00, 0x5c, 0x27, 0x0b, 0x08, 0x00, 0x65, 0x27, 0x40, 0x44, 0x01, 0x10, 0x08, 0x08, 0x0b, 0x00, 0x5d, 0x18, 0x0b, 0x08, 0x00, 0x2b, 0x18, 0x69, 0x3f, 0x01, 0x10, 0x08, 0x2d,
0x1e, 0xc8, 0x80, 0x0a, 0x0e, 0x3f, 0x29, 0x0b, 0x0f, 0x44, 0x1b, 0x32, 0x3d, 0x01, 0x27, 0x0c, 0xd4, 0x82, 0x89, 0xf7, 0x86, 0x3f, 0x1e, 0x0e, 0x4f, 0x0f, 0x01, 0x18, 0x0c, 0x4c, 0x43, 0x03,
0x3f, 0x49, 0x03, 0x26, 0x03, 0x0d, 0x3f, 0x49, 0x27, 0x44, 0x0b, 0x64, 0x24, 0xa4, 0x44, 0x7f, 0x1d, 0x03, 0x0d, 0x4c, 0x43, 0x18, 0x03, 0x2c, 0x4d, 0x1e, 0x4a, 0x2c, 0x29, 0xc0, 0x44, 0x81,
0xf2, 0x64, 0x0a, 0x83, 0x0f, 0x29, 0xa4, 0x10, 0x0c, 0x22, 0x5e, 0x68, 0x03, 0x3c, 0x0c, 0x05, 0x0f, 0x52, 0xa4, 0x10, 0x0c, 0x3d, 0x47, 0x6b, 0x03, 0x21, 0x0c, 0x05, 0x29, 0x5d, 0x5b, 0x0c,
0x24, 0x5c, 0x01, 0x67, 0x00, 0x06, 0x7f, 0x33, 0x59, 0x33, 0x0d, 0x03, 0x28, 0x5c, 0x01, 0x67, 0x00, 0x06, 0x0b, 0x19, 0x60, 0x74, 0x60, 0x0d, 0x03, 0x19, 0x5d, 0x5b, 0x0c, 0x08, 0x09, 0x1d,
0x08, 0x09, 0x26, 0x5e, 0x68, 0x2c, 0x04, 0x0c, 0x68, 0x03, 0x28, 0x63, 0x08, 0x5c, 0x01, 0x67, 0x47, 0x6b, 0x3e, 0x04, 0x0c, 0x6b, 0x03, 0x19, 0x32, 0x08, 0x5d, 0x5b, 0x0c, 0x19, 0x03, 0x0d,
0x28, 0x03, 0x0d, 0x50, 0x41, 0x50, 0x28, 0x0b, 0x06, 0x00, 0x5c, 0x01, 0x67, 0x24, 0x05, 0x0c, 0x01, 0x60, 0x74, 0x0e, 0x19, 0x0b, 0x06, 0x00, 0x5d, 0x5b, 0x0c, 0x29, 0x67, 0x21, 0x47, 0x6b,
0x3c, 0x5e, 0x68, 0x03, 0x10, 0x0a, 0x1e, 0x5e, 0x72, 0x06, 0x3c, 0x2f, 0x65, 0x3e, 0x27, 0x0e, 0x03, 0x10, 0x0a, 0x1b, 0x47, 0x64, 0x06, 0x18, 0x0d, 0x2b, 0x6a, 0x18, 0x0e, 0x5c, 0x20, 0x09,
0x84, 0x20, 0x09, 0x0f, 0x4b, 0x27, 0x06, 0x3f, 0x0b, 0x66, 0x64, 0x24, 0x48, 0x05, 0x32, 0x08, 0x63, 0x01, 0x18, 0x06, 0x61, 0x2c, 0x22, 0x4d, 0x29, 0x0d, 0x1c, 0x0e, 0x68, 0x08, 0x40, 0x29,
0x08, 0x73, 0x24, 0x32, 0x01, 0x04, 0x3f, 0x84, 0x24, 0x09, 0x0f, 0x52, 0x3d, 0x49, 0x00, 0x37, 0x49, 0x01, 0x04, 0x4c, 0x5c, 0x29, 0x09, 0x68, 0x01, 0x0a, 0x0f, 0x43, 0x29, 0x74, 0x08, 0x88,
0x08, 0x0d, 0x54, 0x0a, 0x2b, 0x08, 0x10, 0x04, 0x55, 0xe6, 0x71, 0x10, 0x05, 0x5a, 0x08, 0x73, 0x0a, 0x06, 0x0e, 0x08, 0x10, 0x04, 0x3d, 0x71, 0x10, 0x05, 0x1f, 0x08, 0x40, 0x82, 0x49, 0x81,
0x3c, 0x80, 0x32, 0x83, 0x8b, 0x20, 0x0b, 0x34, 0x1b, 0x89, 0x31, 0x19, 0x89, 0x1b, 0x0b, 0x34, 0x06, 0x40, 0x20, 0x87, 0x20, 0x49, 0x75, 0x61, 0x50, 0x49, 0x75, 0x87, 0x20, 0x07, 0x40, 0x00,
0x1b, 0x82, 0x80, 0x7b, 0x08, 0x73, 0x10, 0x05, 0x63, 0x47, 0x1b, 0x66, 0x0f, 0x33, 0x20, 0x3d, 0x82, 0x70, 0x08, 0x40, 0x10, 0x05, 0x32, 0x68, 0x1e, 0x22, 0x4d, 0x75, 0x0a, 0x30, 0x3a, 0x2c,
0x88, 0x87, 0x0b, 0x81, 0x3c, 0x31, 0x81, 0x1b, 0x87, 0x0b, 0x20, 0x3d, 0x88, 0x02, 0x0f, 0x33, 0x20, 0x7b, 0x29, 0x45, 0x20, 0x7b, 0x3a, 0x2c, 0x1e, 0x32, 0x30, 0x18, 0x22, 0x0f, 0x60, 0x18,
0x1b, 0x3d, 0x08, 0x10, 0x06, 0x55, 0xec, 0x1b, 0x63, 0x44, 0x38, 0x27, 0x04, 0x48, 0x45, 0x27, 0x32, 0x68, 0x10, 0x06, 0x2d, 0xec, 0x1e, 0x32, 0x3f, 0x41, 0x18, 0x04, 0x88, 0x04, 0x18, 0x04,
0x04, 0x48, 0x45, 0x29, 0x63, 0x44, 0x38, 0x28, 0xa4, 0x10, 0x0a, 0x25, 0xc8, 0x71, 0x5a, 0xa4, 0x88, 0x04, 0x52, 0x32, 0x3f, 0x41, 0x19, 0xa4, 0x10, 0x0a, 0x21, 0x37, 0x71, 0x18, 0x25, 0x1e,
0x1d, 0x29, 0xc8, 0x71, 0x10, 0x05, 0x1c, 0x5f, 0x79, 0x87, 0x05, 0x20, 0x0c, 0x07, 0x10, 0x05, 0x71, 0x10, 0x05, 0x2e, 0x7f, 0x10, 0x05, 0x2d, 0x2e, 0x28, 0x52, 0xc0, 0x10, 0x05, 0x2a, 0x2e,
0x55, 0x5f, 0xe2, 0x29, 0xc0, 0x10, 0x05, 0x1c, 0x5f, 0x79, 0x10, 0x04, 0x1e, 0x56, 0x7a, 0x45, 0x24, 0x10, 0x04, 0x1b, 0x46, 0x31, 0x0d, 0x04, 0x20, 0x3f, 0x75, 0x07, 0x0b, 0x50, 0x0b, 0x83,
0x20, 0x44, 0x01, 0x20, 0x07, 0x0b, 0x19, 0x0b, 0x6f, 0x01, 0x65, 0x20, 0x56, 0x7a, 0x40, 0x10, 0x01, 0x2b, 0x20, 0x04, 0x0d, 0x31, 0x69, 0x10, 0x08, 0x19, 0x3a, 0x53, 0x69, 0x52, 0x04, 0x4f,
0x08, 0x1e, 0x05, 0x48, 0x40, 0x29, 0x35, 0x61, 0x09, 0x65, 0x26, 0x0b, 0x3b, 0x02, 0x73, 0x2f, 0x66, 0x2b, 0x86, 0x02, 0x22, 0x40, 0x5f, 0x21, 0x7e, 0x6f, 0x5f, 0x21, 0x7e, 0x86, 0x02, 0x22,
0xfd, 0x59, 0x54, 0x4e, 0x23, 0x2f, 0xfd, 0x59, 0x54, 0x26, 0x0b, 0x3b, 0x02, 0x73, 0x26, 0x35, 0x40, 0x1d, 0x04, 0x4f, 0x66, 0x5c, 0x52, 0x05, 0x53, 0x69, 0x10, 0x08, 0x18, 0x45, 0x6d, 0x50,
0x61, 0x09, 0x84, 0x29, 0x05, 0x48, 0x40, 0x10, 0x08, 0x28, 0x31, 0x6b, 0x6b, 0x79, 0x1d, 0x10, 0x6d, 0x1e, 0xc3, 0x10, 0x08, 0x3d, 0x41, 0x0e, 0x63, 0x08, 0x01, 0x1d, 0x0b, 0x05, 0x58, 0x08,
0x08, 0x22, 0x38, 0x0e, 0x54, 0x52, 0x26, 0x0c, 0x05, 0x02, 0x01, 0x70, 0x09, 0x81, 0x20, 0x04, 0x4f, 0x20, 0x7b, 0x20, 0x04, 0x63, 0x1e, 0x5e, 0x1c, 0x18, 0x3e, 0x30, 0x18, 0x05, 0x85, 0x07,
0x54, 0x1b, 0x03, 0x32, 0x05, 0x27, 0x2c, 0x60, 0x29, 0x87, 0x34, 0x29, 0x07, 0x64, 0x04, 0x31, 0x4d, 0x04, 0x1e, 0x25, 0x10, 0x08, 0x3d, 0x65, 0x62, 0x54, 0x01, 0x1d, 0x0b, 0x04, 0x58, 0x08,
0x1f, 0x10, 0x08, 0x22, 0x04, 0x0a, 0x0e, 0x72, 0x61, 0x26, 0x0b, 0x04, 0x30, 0x70, 0x0b, 0x81, 0x2c, 0x20, 0x7b, 0x82, 0x07, 0x40, 0x21, 0x45, 0x63, 0x02, 0x82, 0x07, 0x2c, 0x00, 0x82, 0x61,
0x3c, 0x80, 0x82, 0x2d, 0x54, 0x83, 0x01, 0x4a, 0x7f, 0x37, 0x2e, 0x26, 0x0b, 0x04, 0x30, 0x70, 0x1d, 0x0b, 0x04, 0x58, 0x08, 0x2c, 0x1d, 0x05, 0x36, 0x64, 0x08, 0x01, 0x10, 0x08, 0x21, 0x1b,
0x0b, 0x26, 0x04, 0x0b, 0x0e, 0x72, 0x52, 0x10, 0x08, 0x3c, 0x1e, 0x0c, 0x2e, 0x1b, 0x08, 0x0a, 0x0c, 0x61, 0x1e, 0x08, 0x0a, 0x61, 0x18, 0x03, 0x60, 0x61, 0x1d, 0x74, 0x69, 0x4b, 0x52, 0x09,
0x2e, 0x27, 0x03, 0x33, 0x2e, 0x80, 0x40, 0x42, 0x29, 0x4c, 0x2a, 0x29, 0x4b, 0xd0, 0x4e, 0x1f, 0x09, 0xf0, 0x52, 0x0d, 0x01, 0xf0, 0x52, 0x25, 0x20, 0x24, 0x10, 0x08, 0x3d, 0x56, 0x79, 0x3c,
0x20, 0x79, 0x10, 0x08, 0x22, 0x1d, 0x29, 0x79, 0xf8, 0x64, 0x68, 0x6f, 0x02, 0x3d, 0x08, 0x81, 0x4d, 0x6b, 0x83, 0x02, 0x0a, 0x68, 0x20, 0x7b, 0x20, 0x7b, 0x82, 0x0a, 0x68, 0x45, 0x4d, 0x5d,
0x81, 0x3c, 0x80, 0x3d, 0x08, 0x4e, 0x64, 0x5c, 0x10, 0x08, 0x1e, 0x03, 0x0b, 0x3f, 0x29, 0x44, 0x10, 0x08, 0x1b, 0x03, 0x0b, 0x4c, 0x52, 0x03, 0x2c, 0x81, 0x0a, 0x2b, 0x20, 0x0e, 0x43, 0x0e,
0x0b, 0x83, 0x0a, 0x65, 0x20, 0x0e, 0x49, 0x3a, 0x61, 0x4e, 0x07, 0x01, 0x4a, 0x09, 0x26, 0x48, 0x57, 0x01, 0x45, 0x07, 0x01, 0x07, 0x4f, 0x5f, 0x59, 0x7b, 0x86, 0x59, 0x7e, 0x1d, 0x04, 0x55,
0x41, 0x53, 0x26, 0x0b, 0x0f, 0x01, 0x59, 0x54, 0x26, 0x04, 0x47, 0x01, 0x4a, 0x08, 0x29, 0x56, 0x01, 0x38, 0x52, 0x05, 0x88, 0x07, 0x10, 0x08, 0x3d, 0x25, 0x20, 0x04, 0x63, 0x20, 0x0c, 0x30,
0x54, 0x07, 0x10, 0x08, 0x20, 0xa4, 0x1d, 0x20, 0x05, 0x54, 0x20, 0x0c, 0x0f, 0x88, 0x04, 0x54, 0x1e, 0x04, 0x63, 0x20, 0x87, 0x1e, 0x03, 0x43, 0x1e, 0x32, 0x5c, 0x18, 0x22, 0x43, 0x20, 0x09,
0x20, 0x0b, 0x34, 0x27, 0x03, 0x49, 0x1b, 0x63, 0x84, 0x27, 0x66, 0x49, 0x20, 0x09, 0x84, 0x10, 0x5c, 0x10, 0x08, 0x2d, 0x22, 0x89, 0x44, 0x02, 0x86, 0x06, 0x01, 0x6c, 0x1d, 0x49, 0x59, 0x7b,
0x08, 0x55, 0x66, 0x86, 0x6a, 0x89, 0x53, 0x28, 0x63, 0x60, 0x01, 0x8b, 0x3c, 0x37, 0x0c, 0x2e, 0x19, 0x32, 0x30, 0x5b, 0x40, 0x19, 0x74, 0x0c, 0x61, 0x43, 0x01, 0x86, 0x06, 0x01, 0x6c, 0x1d,
0x49, 0x01, 0x26, 0x6a, 0x89, 0x53, 0x26, 0x6a, 0x02, 0x86, 0x10, 0x08, 0x1e, 0x07, 0x0d, 0x49, 0x49, 0x59, 0x7b, 0x86, 0x06, 0x01, 0x6c, 0x19, 0x22, 0x89, 0x44, 0x02, 0x10, 0x08, 0x1b, 0x07,
0x05, 0x29, 0x08, 0x47, 0x01, 0x07, 0x65, 0x26, 0x48, 0x01, 0x59, 0x0f, 0x0b, 0x26, 0x89, 0x01, 0x0d, 0x43, 0x05, 0x52, 0x08, 0x55, 0x01, 0x07, 0x2b, 0x5f, 0x01, 0x74, 0x2c, 0x1d, 0x49, 0x59,
0x54, 0x26, 0x09, 0x47, 0x01, 0x07, 0xe7, 0x37, 0x09, 0x0e, 0x68, 0x64, 0x20, 0x03, 0x73, 0x27, 0x7e, 0x1d, 0x09, 0x55, 0x01, 0x07, 0x61, 0x1d, 0x66, 0x0e, 0x6b, 0x4d, 0x20, 0x03, 0x40, 0x18,
0x66, 0x0b, 0x65, 0x24, 0xbc, 0x0b, 0x03, 0x10, 0x05, 0x1c, 0x79, 0x1c, 0x79, 0x10, 0x05, 0x1c, 0x22, 0x0b, 0x2b, 0x00, 0x45, 0x2c, 0x03, 0x10, 0x05, 0x27, 0x79, 0x2a, 0x24, 0x10, 0x05, 0x27,
0x79, 0x1c, 0x79, 0x87, 0x05, 0x20, 0x0c, 0x07, 0x10, 0x0a, 0x5a, 0x25, 0x66, 0x07, 0x0c, 0x80, 0x79, 0x7f, 0x10, 0x0a, 0x1f, 0x37, 0x22, 0x07, 0x0c, 0x52, 0x5b, 0x0c, 0x0f, 0x44, 0x19, 0x06,
0x67, 0x64, 0x0a, 0x28, 0x06, 0x0b, 0x64, 0x0a, 0x5d, 0x4e, 0x0a, 0x01, 0x1b, 0x06, 0x0b, 0x64, 0x36, 0x44, 0x35, 0x45, 0x0a, 0x01, 0x1e, 0x06, 0x36, 0x44, 0x35, 0x18, 0x5b, 0x0c, 0x0f, 0x44,
0x0a, 0x05, 0x41, 0x80, 0x67, 0x64, 0x0a, 0x1b, 0x66, 0x07, 0x0c, 0x10, 0x0a, 0x5f, 0x2a, 0x1d, 0x1e, 0x22, 0x07, 0x0c, 0x10, 0x0a, 0x2e, 0x3c, 0x25, 0x2d, 0xa4, 0x25, 0x10, 0x0a, 0x27, 0x0c,
0x1b, 0x31, 0x1d, 0x10, 0x0a, 0x1c, 0x0c, 0x07, 0x83, 0x63, 0x32, 0x5c, 0x41, 0x80, 0x05, 0x0a, 0x07, 0x02, 0x20, 0x89, 0x5d, 0x01, 0x18, 0x4e, 0x89, 0x0b, 0x06, 0x82, 0x0a, 0x61, 0x1d, 0x4e,
0x32, 0x0b, 0x88, 0x01, 0x0a, 0xe7, 0x37, 0x05, 0x0a, 0x32, 0x0b, 0x06, 0x24, 0x63, 0x32, 0x5c, 0x89, 0x0b, 0x06, 0x19, 0x89, 0x5d, 0x01, 0x52, 0x0c, 0x07, 0x02, 0x10, 0x07, 0x18, 0x45, 0x43,
0x4d, 0x0c, 0x07, 0x02, 0x10, 0x07, 0x28, 0x31, 0x49, 0x04, 0x20, 0x03, 0x54, 0x20, 0x07, 0x54, 0x04, 0x20, 0x03, 0x63, 0x20, 0x07, 0x63, 0x1e, 0x04, 0x0f, 0x5c, 0x1e, 0x0c, 0x30, 0x42, 0x45,
0x1b, 0x35, 0x84, 0x1b, 0x0c, 0x60, 0x00, 0x31, 0x4d, 0x1e, 0x79, 0x10, 0x0c, 0x00, 0x1e, 0x38, 0x01, 0x52, 0x1b, 0x24, 0x10, 0x0c, 0x00, 0x1b, 0x41, 0x62, 0x5d, 0x1d, 0x06, 0x0e, 0x06, 0x02,
0x3a, 0x5c, 0x26, 0x2b, 0x06, 0x02, 0x01, 0x04, 0x0b, 0x0a, 0x24, 0x03, 0x39, 0x24, 0x0b, 0x06, 0x01, 0x65, 0x0a, 0x29, 0x5e, 0x02, 0x29, 0x0b, 0x06, 0x1f, 0x32, 0x07, 0x00, 0x04, 0x44, 0xfd,
0x5a, 0x63, 0x07, 0x00, 0x2c, 0x0a, 0xfd, 0x5e, 0x36, 0x39, 0x00, 0x45, 0x05, 0xfd, 0x50, 0xd4, 0x47, 0x42, 0x0e, 0x39, 0x0d, 0x04, 0x6e, 0x74, 0x0e, 0xd4, 0xa8, 0x22, 0x0d, 0x42, 0x0d, 0x39,
0xa8, 0x66, 0x0d, 0x36, 0x0d, 0x02, 0x00, 0x45, 0x43, 0x02, 0x0b, 0x07, 0x36, 0x09, 0x07, 0x00, 0x0d, 0x04, 0x05, 0x4a, 0x0b, 0x07, 0x42, 0x09, 0x06, 0x00, 0x04, 0x2f, 0x63, 0x07, 0x42, 0x22,
0x2c, 0x0b, 0x54, 0x07, 0x36, 0x66, 0x39, 0x19, 0x05, 0x40, 0x30, 0x05, 0x5c, 0x26, 0x3e, 0x0d, 0x0d, 0x02, 0x50, 0x46, 0x35, 0x4e, 0x5d, 0x1d, 0x6a, 0x53, 0x44, 0x03, 0x10, 0x09, 0x1d, 0x82,
0x64, 0x0a, 0x03, 0x10, 0x09, 0x1e, 0x50, 0x64, 0x4d, 0x87, 0x2e, 0x05, 0x27, 0x0b, 0x49, 0x73, 0x49, 0x60, 0x52, 0x51, 0x85, 0x0b, 0x43, 0x40, 0x1d, 0x74, 0x61, 0x48, 0x01, 0x1d, 0x06, 0x40,
0x80, 0x2e, 0x02, 0x2e, 0x01, 0x26, 0x8b, 0x00, 0x0b, 0x60, 0x26, 0x0b, 0x34, 0x43, 0x7f, 0x02, 0x00, 0x0b, 0x30, 0x1d, 0x87, 0x51, 0x0b, 0x29, 0x22, 0xc3, 0x4a, 0x29, 0x07, 0x40, 0x21, 0x32,
0x1d, 0x3b, 0x36, 0x82, 0x0a, 0x47, 0x24, 0x0c, 0x84, 0x5a, 0x05, 0x49, 0x10, 0x09, 0x55, 0xf2, 0x55, 0x29, 0x0c, 0x1c, 0x1f, 0x05, 0x43, 0x10, 0x09, 0x2d, 0xe2, 0x44, 0x02, 0x3b, 0x6c, 0x3b,
0x64, 0x0a, 0x02, 0x24, 0x90, 0x46, 0x74, 0x3c, 0x58, 0x7f, 0xc2, 0x65, 0x24, 0x90, 0x05, 0x49, 0x7b, 0x3b, 0x6c, 0x19, 0xc2, 0x2b, 0x3b, 0x05, 0x43, 0x6f, 0x3b, 0x05, 0x43, 0x29, 0xc0, 0x2f,
0x4e, 0x23, 0x24, 0x90, 0x05, 0x49, 0x36, 0xbc, 0x64, 0x0b, 0x03, 0x10, 0x09, 0x1e, 0x3e, 0x0e, 0x03, 0x10, 0x09, 0x1b, 0x6a, 0x49, 0x2f, 0x19, 0x22, 0x62, 0x35, 0x41, 0x1d, 0x09, 0x30, 0x20,
0x64, 0x7f, 0x66, 0x3a, 0x5d, 0x38, 0x26, 0x09, 0x60, 0x20, 0x7b, 0x2e, 0x19, 0x7b, 0x09, 0x60, 0x70, 0x61, 0x50, 0x70, 0x09, 0x30, 0x20, 0x7a, 0x41, 0x52, 0x6a, 0x49, 0x2f, 0x10, 0x0a, 0x2d,
0x20, 0x18, 0x01, 0x38, 0x29, 0x3e, 0x0e, 0x64, 0x0b, 0x10, 0x0a, 0x55, 0xf2, 0x68, 0x52, 0x4e, 0xf2, 0x6b, 0x08, 0x01, 0x45, 0x22, 0x06, 0x64, 0x01, 0x29, 0x8a, 0x07, 0x4f, 0x42, 0x90, 0x22,
0x66, 0x2b, 0x4b, 0x76, 0x4a, 0x09, 0x76, 0x02, 0x54, 0x28, 0x85, 0x02, 0x54, 0x76, 0x4a, 0x09, 0x63, 0x23, 0x80, 0x21, 0x22, 0x63, 0x29, 0x8a, 0x07, 0x4f, 0x1f, 0x9c, 0x5b, 0x64, 0x01, 0x1f,
0x2d, 0x59, 0x2b, 0x4b, 0x5a, 0xbc, 0x68, 0x52, 0x10, 0x08, 0x69, 0x6b, 0x1d, 0x10, 0x08, 0x69, 0xbc, 0x6b, 0x08, 0x01, 0x10, 0x08, 0x3d, 0x56, 0x6d, 0x28, 0x52, 0x6d, 0x28, 0x10, 0x08, 0x3d,
0x75, 0x10, 0x0a, 0x27, 0x80, 0x08, 0x48, 0x72, 0x7f, 0x01, 0x0d, 0x0e, 0x06, 0x30, 0x05, 0x7f, 0x56, 0x6d, 0x28, 0x52, 0x6d, 0x10, 0x0a, 0x1d, 0x82, 0x08, 0x53, 0x64, 0x0b, 0x29, 0x74, 0x0d,
0x09, 0x47, 0x36, 0x2f, 0x3b, 0x31, 0xbc, 0x28, 0x32, 0x02, 0x23, 0x28, 0x09, 0x60, 0x23, 0x24, 0x0e, 0x06, 0x58, 0x65, 0x19, 0x09, 0x55, 0x42, 0x7d, 0x1f, 0x45, 0xbc, 0x19, 0x1a, 0x4b, 0x19,
0x66, 0x3a, 0x5d, 0x02, 0x2e, 0x26, 0x3e, 0x48, 0x68, 0x09, 0x10, 0x0a, 0x22, 0x85, 0x7d, 0x2e, 0x09, 0x30, 0xdc, 0x29, 0x22, 0x62, 0x35, 0x48, 0x1d, 0x6a, 0x53, 0x6b, 0x09, 0x10, 0x0a, 0x18,
0x51, 0x2d, 0x1d, 0x76, 0x7d, 0x85, 0x42, 0x10, 0x04, 0x28, 0x8a, 0x6b, 0x10, 0x04, 0x22, 0x75, 0x45, 0x80, 0x80, 0x80, 0x80, 0xc3, 0x23, 0x80, 0x80, 0x80, 0x26, 0x10, 0x04, 0x3d, 0x76, 0x61,
0x75, 0x64, 0x20, 0x4a, 0x0b, 0x1b, 0x54, 0x61, 0x10, 0x09, 0x1b, 0x76, 0x03, 0x0d, 0x60, 0x5a, 0x10, 0x04, 0x3d, 0x76, 0x4d, 0x20, 0x07, 0x2c, 0x29, 0xa4, 0x54, 0x01, 0x10, 0x09, 0x2d, 0x8a,
0x90, 0x04, 0x3a, 0x04, 0x2d, 0x87, 0x0d, 0x03, 0x4e, 0x06, 0x49, 0x4d, 0xf3, 0x05, 0x3c, 0x4e, 0x03, 0x0d, 0x30, 0x1f, 0x90, 0x04, 0x62, 0x04, 0x23, 0x51, 0x0d, 0x03, 0x45, 0x06, 0x43, 0x59,
0x58, 0x34, 0x4e, 0x87, 0x34, 0x36, 0x90, 0x2c, 0x60, 0x76, 0x2c, 0x47, 0x10, 0x08, 0x22, 0x75, 0x45, 0x85, 0x0f, 0x30, 0x0f, 0x1c, 0x00, 0x45, 0x51, 0x1c, 0x3b, 0x3e, 0x30, 0x29, 0x8a, 0x3e,
0x75, 0x1d, 0x10, 0x0c, 0x28, 0x31, 0x09, 0x36, 0x09, 0x2e, 0x51, 0x3b, 0x66, 0x2e, 0xa5, 0x54, 0x55, 0x10, 0x08, 0x3d, 0x76, 0xc3, 0x10, 0x0c, 0x20, 0xa4, 0x4f, 0x42, 0x09, 0xf7, 0xbc, 0x39,
0x09, 0x3c, 0x09, 0x0d, 0x2e, 0x51, 0x4a, 0x02, 0x02, 0x47, 0x2e, 0x51, 0x50, 0x4c, 0x33, 0xf7, 0x22, 0x4c, 0x26, 0x54, 0x21, 0x09, 0x53, 0xa5, 0x55, 0x4a, 0x02, 0x55, 0x61, 0x26, 0x01, 0x57,
0x9c, 0x4a, 0x47, 0x42, 0x51, 0x59, 0x3a, 0x41, 0x85, 0x42, 0x2d, 0x10, 0x0a, 0x20, 0xa4, 0x49, 0x09, 0x60, 0xf7, 0x9c, 0x07, 0x0f, 0x55, 0x4b, 0x26, 0x74, 0x0e, 0x60, 0x4b, 0x80, 0x80, 0x10,
0x23, 0x2d, 0x84, 0xd0, 0xa4, 0x49, 0x0c, 0xd0, 0xa4, 0x84, 0x34, 0xc7, 0x9c, 0x0b, 0x0c, 0x00, 0x0a, 0x20, 0xa4, 0x43, 0xdc, 0x23, 0x5c, 0xd0, 0xa4, 0x43, 0x0c, 0xd0, 0xa4, 0x5c, 0x1c, 0x8a,
0xc7, 0x9c, 0x35, 0x43, 0xc5, 0x90, 0x0b, 0x0c, 0x0f, 0xc5, 0x90, 0x03, 0x3f, 0x76, 0x0a, 0x2e, 0x9c, 0x0b, 0x0c, 0x8a, 0x9c, 0x04, 0x0f, 0x6e, 0xc5, 0x90, 0x0b, 0x0c, 0x0f, 0xc5, 0x90, 0x03,
0x10, 0x0b, 0x1e, 0x3e, 0x0e, 0x54, 0x09, 0x02, 0x28, 0x18, 0x7c, 0x8c, 0x5a, 0x58, 0x09, 0x24, 0x61, 0xc5, 0x90, 0x32, 0x61, 0x10, 0x0b, 0x1b, 0x6a, 0x49, 0x54, 0x02, 0x19, 0x7a, 0x04, 0x62,
0x18, 0x7c, 0x00, 0x3e, 0x0e, 0x64, 0x09, 0x02, 0x10, 0x09, 0x55, 0xf2, 0x54, 0x61, 0x24, 0x90, 0x39, 0x72, 0x4f, 0x29, 0x7a, 0x04, 0x62, 0x02, 0x19, 0x6a, 0x49, 0x57, 0x02, 0x10, 0x09, 0x2d,
0x70, 0x09, 0x74, 0x3c, 0x53, 0x24, 0x90, 0x70, 0x09, 0x36, 0xbc, 0x54, 0x61, 0x26, 0x6b, 0x10, 0xe2, 0x54, 0x01, 0x3b, 0x08, 0x4f, 0x3b, 0x7b, 0x3b, 0x7b, 0x3b, 0x08, 0x4f, 0x29, 0xc0, 0x54,
0x0a, 0x1e, 0x3e, 0x0e, 0x64, 0x09, 0x02, 0x28, 0x18, 0x7c, 0x8c, 0x5a, 0x8b, 0x24, 0x18, 0x01, 0x01, 0x45, 0x50, 0x24, 0x10, 0x0a, 0x1b, 0x6a, 0x49, 0x57, 0x02, 0x19, 0x7a, 0x04, 0x62, 0x39,
0x2c, 0x65, 0x28, 0x3e, 0x0d, 0x2e, 0x84, 0x3c, 0x80, 0x0d, 0x60, 0x20, 0x44, 0x39, 0x10, 0x09, 0x72, 0x40, 0x29, 0x7a, 0x3e, 0x2b, 0x19, 0x6a, 0x0d, 0x61, 0x5c, 0x82, 0x0d, 0x30, 0x20, 0x03,
0x55, 0xf2, 0x64, 0x0b, 0x02, 0x24, 0x90, 0x06, 0x49, 0x74, 0x3c, 0x58, 0x7f, 0xc2, 0x4b, 0x4e, 0x4d, 0x02, 0x10, 0x09, 0x2d, 0xe2, 0x2f, 0x02, 0x3b, 0x06, 0x43, 0x3b, 0x7b, 0x3b, 0x6c, 0x29,
0x66, 0x0b, 0x60, 0x36, 0x9c, 0x59, 0x54, 0x00, 0x76, 0x3d, 0x05, 0x76, 0x05, 0x49, 0x10, 0x09, 0xc0, 0x63, 0x01, 0x45, 0x22, 0x0b, 0x30, 0x3b, 0x7e, 0x3b, 0x32, 0x1c, 0x29, 0x8a, 0x05, 0x43,
0x29, 0x80, 0x0a, 0x32, 0x68, 0x29, 0x3d, 0x5d, 0x03, 0x0b, 0x29, 0x7b, 0x0d, 0x64, 0x09, 0x06, 0x10, 0x09, 0x19, 0x82, 0x89, 0x6b, 0x1d, 0x32, 0x1c, 0x00, 0x41, 0x52, 0x70, 0x53, 0x57, 0x06,
0x4d, 0x04, 0x0d, 0xf3, 0x05, 0x27, 0x03, 0x07, 0x0d, 0x54, 0x1b, 0x66, 0x64, 0x26, 0x0c, 0x05, 0x01, 0x52, 0x04, 0x0d, 0x61, 0x85, 0x03, 0x07, 0x88, 0x1e, 0x22, 0x4d, 0x1d, 0x0b, 0x35, 0x84,
0x02, 0x87, 0x0a, 0x28, 0x63, 0x0d, 0x0e, 0x54, 0x61, 0x10, 0x08, 0x24, 0x31, 0x1d, 0x27, 0x75, 0x0a, 0x0d, 0x49, 0x54, 0x01, 0x10, 0x08, 0x1e, 0xa4, 0x25, 0x18, 0x76, 0x10, 0x0a, 0x18, 0x45,
0x75, 0x10, 0x0a, 0x22, 0x85, 0x7d, 0x85, 0x7d, 0x48, 0x41, 0x59, 0x54, 0x28, 0x70, 0x09, 0x30, 0x80, 0x80, 0x80, 0x80, 0x80, 0x26, 0x19, 0x53, 0x01, 0x21, 0x7e, 0x19, 0x08, 0x4f, 0x01, 0x66,
0x09, 0x0f, 0x08, 0x26, 0x07, 0x48, 0x54, 0x07, 0x10, 0x09, 0x55, 0x0c, 0x84, 0x5a, 0x05, 0x49, 0x68, 0x1d, 0x07, 0x53, 0x63, 0x07, 0x10, 0x09, 0x2d, 0x0c, 0x1c, 0x1f, 0x05, 0x43, 0x29, 0x07,
0x24, 0x82, 0x0a, 0x47, 0x36, 0x66, 0x64, 0x41, 0x50, 0x3b, 0x24, 0x0b, 0x34, 0x43, 0x0b, 0x26, 0x40, 0x21, 0x32, 0x55, 0x42, 0x22, 0x0f, 0x60, 0x74, 0x1a, 0x42, 0x87, 0x51, 0x0b, 0x1d, 0x6c,
0x46, 0x00, 0x0b, 0x60, 0x3c, 0x37, 0x0f, 0x65, 0x2e, 0x4d, 0x0b, 0x49, 0x73, 0x27, 0x05, 0x2e, 0x00, 0x0b, 0x30, 0x19, 0x74, 0x0f, 0x2b, 0x61, 0x59, 0x86, 0x0c, 0x40, 0x52, 0x51, 0x85, 0x01,
0x34, 0x80, 0x32, 0x33, 0x10, 0x0e, 0x27, 0x2f, 0x65, 0x59, 0x2e, 0x41, 0x03, 0x54, 0x00, 0x63, 0x49, 0x60, 0x10, 0x0e, 0x3d, 0x0d, 0x2b, 0x74, 0x61, 0x59, 0x03, 0x63, 0x00, 0x32, 0x55, 0x51,
0x47, 0x87, 0x34, 0x07, 0x73, 0x3c, 0x8b, 0x00, 0x09, 0x3a, 0x0a, 0x63, 0x60, 0x00, 0x66, 0x64, 0x1c, 0x00, 0x07, 0x40, 0x21, 0x06, 0x40, 0x00, 0x09, 0x0e, 0x44, 0x32, 0x30, 0x00, 0x22, 0x4d,
0x00, 0x0e, 0x4c, 0x0e, 0x00, 0x32, 0x02, 0x5a, 0x32, 0x58, 0x05, 0x05, 0x60, 0x64, 0x36, 0x3d, 0x00, 0x57, 0x09, 0x0e, 0x00, 0x1a, 0x00, 0x0e, 0x30, 0x1c, 0x05, 0x30, 0x4d, 0x1f, 0x32, 0x0f,
0x32, 0x01, 0x53, 0x73, 0x36, 0x07, 0x2e, 0x0b, 0x3c, 0x0b, 0x0f, 0x47, 0x36, 0x44, 0x47, 0x3c, 0x49, 0x01, 0x7b, 0x40, 0x42, 0x07, 0x0f, 0x2c, 0x21, 0x36, 0x55, 0x42, 0x3f, 0x55, 0x21, 0x06,
0x58, 0x65, 0x24, 0x0e, 0x3b, 0x66, 0x64, 0x10, 0x09, 0x55, 0x0a, 0x60, 0x5a, 0x8b, 0x37, 0x0d, 0x0f, 0x2b, 0x29, 0x1a, 0x02, 0x4d, 0x10, 0x09, 0x2d, 0x0a, 0x30, 0x1f, 0x06, 0x40, 0x42, 0x74,
0x39, 0x66, 0x0e, 0x4b, 0x28, 0x35, 0x0b, 0x00, 0x0b, 0x84, 0x29, 0x08, 0x49, 0x0f, 0x08, 0x29, 0x0d, 0x0e, 0x02, 0x22, 0x64, 0x01, 0x19, 0x04, 0x2c, 0x00, 0x0b, 0x5c, 0x52, 0x08, 0x43, 0x68,
0x66, 0x3f, 0x02, 0x27, 0x3d, 0x09, 0x73, 0x29, 0x05, 0x73, 0x63, 0x34, 0x37, 0x3a, 0x41, 0x50, 0x18, 0x48, 0x4a, 0x52, 0x32, 0x4f, 0x40, 0x52, 0x05, 0x40, 0x32, 0x1c, 0x29, 0x74, 0x0e, 0x60,
0x33, 0x24, 0x3d, 0x05, 0x5a, 0x05, 0x73, 0x10, 0x08, 0x55, 0x0b, 0x65, 0x3c, 0x44, 0x7f, 0x02, 0x74, 0x0e, 0x60, 0x42, 0x32, 0x1c, 0x21, 0x84, 0x10, 0x08, 0x2d, 0x0b, 0x2b, 0x21, 0x03, 0x2c,
0x0f, 0x0b, 0x3c, 0x0b, 0x3b, 0x28, 0x08, 0x84, 0x35, 0x08, 0x80, 0x68, 0x0c, 0x33, 0x27, 0x58, 0x29, 0x22, 0x2c, 0x21, 0x0b, 0x4a, 0x1d, 0x08, 0x5c, 0x04, 0x68, 0x1d, 0x74, 0x6b, 0x0c, 0x60,
0x60, 0x20, 0x75, 0x10, 0x0a, 0x28, 0x31, 0x1d, 0x20, 0x05, 0x64, 0x1b, 0x05, 0x64, 0x03, 0x27, 0x18, 0x06, 0x0f, 0x30, 0x20, 0x6d, 0x10, 0x0a, 0x20, 0xa4, 0x25, 0x3a, 0x4d, 0x1e, 0x05, 0x4d,
0x04, 0x64, 0x03, 0x27, 0x03, 0x0e, 0x84, 0x27, 0x03, 0x32, 0x05, 0x27, 0x03, 0x32, 0x88, 0x32, 0x03, 0x18, 0x04, 0x4d, 0x03, 0x18, 0x5e, 0x5c, 0x18, 0x5e, 0x1c, 0x18, 0x5e, 0x30, 0x1e, 0x49,
0x6f, 0x2e, 0x1d, 0x10, 0x05, 0xc0, 0x8a, 0x6b, 0xf3, 0x10, 0x04, 0x55, 0x40, 0x7a, 0x56, 0x36, 0x83, 0x0f, 0x25, 0x10, 0x05, 0xc0, 0x1e, 0x76, 0x24, 0x61, 0x10, 0x04, 0x2d, 0x69, 0x31, 0x04,
0x80, 0x65, 0x19, 0x0b, 0x07, 0x19, 0x07, 0x0b, 0x19, 0x44, 0x01, 0x19, 0x45, 0x7a, 0x56, 0x10, 0x0d, 0x21, 0x82, 0x2b, 0x50, 0x0b, 0x07, 0x50, 0x07, 0x0b, 0x50, 0x3f, 0x01, 0x50, 0x0d, 0x04,
0x05, 0x42, 0x75, 0x75, 0x79, 0xf3, 0x10, 0x0a, 0x1e, 0x87, 0x34, 0x29, 0x8b, 0x0a, 0x60, 0x26, 0x31, 0x46, 0x10, 0x05, 0x4b, 0x76, 0x24, 0x52, 0xc0, 0x10, 0x0a, 0x1d, 0x3a, 0x85, 0x06, 0x40,
0x07, 0x0e, 0x05, 0x3c, 0x05, 0x0e, 0x07, 0x10, 0x06, 0x5a, 0x21, 0x5f, 0x5f, 0x1d, 0x10, 0x06, 0x0a, 0x30, 0x1d, 0x07, 0x0e, 0x05, 0x21, 0x05, 0x0e, 0x07, 0x10, 0x06, 0x00, 0x34, 0x2e, 0x2e,
0x3c, 0x08, 0x0c, 0x01, 0x19, 0x08, 0x09, 0x10, 0x09, 0x25, 0x4a, 0x64, 0x09, 0x4d, 0x08, 0x03, 0xc3, 0x10, 0x06, 0x21, 0x08, 0x0d, 0x01, 0x50, 0x08, 0x09, 0x10, 0x09, 0x37, 0x07, 0x61, 0x57,
0x00, 0x58, 0x09, 0x19, 0x54, 0x26, 0x03, 0x0b, 0x0e, 0xf3, 0x2f, 0x84, 0x59, 0x2e, 0x2f, 0x84, 0x01, 0x52, 0x08, 0x03, 0x00, 0x06, 0x4f, 0x50, 0x63, 0x1d, 0x03, 0x0b, 0x0e, 0x28, 0x5f, 0x04,
0x01, 0x09, 0x2e, 0x26, 0x04, 0x0c, 0x1f, 0x10, 0x09, 0x3c, 0x6b, 0x6c, 0x10, 0x07, 0x25, 0x5b, 0x74, 0x61, 0x5f, 0x04, 0x66, 0x61, 0x1d, 0x04, 0x0c, 0x33, 0x10, 0x09, 0x21, 0x6d, 0x61, 0x57,
0x40, 0x29, 0x46, 0x02, 0x3e, 0x00, 0x2f, 0x3b, 0x31, 0x19, 0x48, 0x02, 0x20, 0x46, 0x02, 0x3e, 0x52, 0x73, 0x10, 0x07, 0x37, 0x67, 0x64, 0x06, 0x52, 0x6c, 0x02, 0x66, 0x00, 0x7d, 0x1f, 0x45,
0x27, 0x5b, 0x40, 0x10, 0x09, 0x26, 0x79, 0x2a, 0x29, 0x7e, 0x1a, 0x2e, 0x2f, 0x6d, 0x2e, 0x29, 0x29, 0x7d, 0x1e, 0x6c, 0x02, 0x01, 0x08, 0x18, 0x67, 0x64, 0x06, 0x10, 0x09, 0x45, 0x50, 0x24,
0x7e, 0x10, 0x09, 0x25, 0x67, 0x72, 0x06, 0x29, 0x8b, 0x01, 0x08, 0x60, 0x2f, 0x3b, 0x01, 0x54, 0x52, 0x77, 0x0e, 0x28, 0x10, 0x09, 0x37, 0x06, 0x0c, 0x64, 0x06, 0x52, 0x06, 0x40, 0x01, 0x08,
0x4e, 0x1f, 0x2f, 0x3b, 0x1b, 0x07, 0x73, 0x30, 0x05, 0x0b, 0x29, 0x5b, 0x0e, 0x0a, 0x04, 0x10, 0x30, 0x7d, 0x7e, 0x1d, 0x25, 0x7d, 0x1e, 0x07, 0x40, 0x58, 0x65, 0x52, 0x67, 0x0e, 0x2f, 0x04,
0x05, 0x3c, 0x56, 0xc7, 0x2f, 0x65, 0x00, 0x31, 0x1b, 0xc2, 0x8a, 0x10, 0x09, 0x25, 0x08, 0x0e, 0x10, 0x05, 0x21, 0x46, 0xc7, 0x5f, 0x03, 0x42, 0x45, 0x1e, 0xc2, 0x1e, 0x24, 0x50, 0x6d, 0x10,
0xf3, 0x26, 0x4a, 0x61, 0x09, 0x2e, 0x2f, 0x6d, 0x2e, 0x29, 0x08, 0x0e, 0xf3, 0x81, 0x26, 0x63, 0x09, 0x37, 0x08, 0x0e, 0x28, 0x1d, 0x07, 0x4f, 0x66, 0x61, 0x7d, 0x48, 0x6f, 0x7d, 0x48, 0x1d,
0x02, 0x01, 0x70, 0x09, 0x29, 0x56, 0x72, 0x07, 0x10, 0x09, 0x3c, 0x6b, 0x1f, 0x6e, 0x42, 0x4e, 0x38, 0x66, 0x61, 0x52, 0x08, 0x0e, 0x28, 0x20, 0x7b, 0x52, 0x09, 0x02, 0x01, 0x08, 0x4f, 0x52,
0x77, 0x23, 0x10, 0x04, 0x90, 0x31, 0x22, 0x8a, 0x2e, 0x10, 0x04, 0x90, 0x31, 0x22, 0x8a, 0x79, 0x06, 0x88, 0x07, 0x10, 0x09, 0x21, 0x6d, 0x4c, 0x78, 0x02, 0xf0, 0x6f, 0x6f, 0x6f, 0x6f, 0x10,
0x66, 0x49, 0x28, 0xa4, 0x45, 0x10, 0x08, 0x3c, 0x6b, 0x2e, 0x66, 0x0d, 0x47, 0x4e, 0x02, 0x0d, 0x04, 0x21, 0x24, 0x34, 0x79, 0x4b, 0x50, 0x6d, 0x10, 0x04, 0x21, 0x24, 0x34, 0x6d, 0x50, 0x6d,
0x47, 0x5a, 0xa4, 0x54, 0x47, 0x3c, 0x4e, 0x3a, 0x4d, 0xfe, 0x84, 0x49, 0x4d, 0xf7, 0x05, 0x73, 0x1e, 0x22, 0x43, 0x20, 0x63, 0x04, 0x10, 0x08, 0x21, 0x6d, 0x22, 0x0d, 0x55, 0x45, 0x02, 0x0d,
0x28, 0x90, 0x4a, 0x08, 0x10, 0x04, 0x90, 0x8a, 0x6b, 0x10, 0x0c, 0x1c, 0xf3, 0x68, 0x48, 0x45, 0x55, 0x1f, 0xa4, 0x63, 0x55, 0x42, 0xa4, 0x4d, 0x60, 0x42, 0xa4, 0x5c, 0x43, 0x59, 0x45, 0x84,
0xd4, 0x47, 0x44, 0x47, 0x03, 0x54, 0x51, 0x01, 0x42, 0x41, 0xc7, 0xaa, 0x9d, 0x9c, 0xaa, 0xc5, 0xca, 0x38, 0x10, 0x04, 0x21, 0x76, 0x24, 0x10, 0x0c, 0x2a, 0xe2, 0x6b, 0x88, 0x04, 0xd4, 0x55,
0xb7, 0x90, 0x90, 0xb7, 0x10, 0x09, 0x1c, 0x1f, 0x6e, 0x42, 0x4e, 0x77, 0x23, 0x10, 0x09, 0x25, 0x3f, 0x55, 0x03, 0x63, 0x26, 0x01, 0x4b, 0x01, 0x4b, 0x7c, 0x7c, 0x7c, 0x7c, 0x10, 0x09, 0x2a,
0x06, 0x0d, 0x72, 0x06, 0x00, 0x1a, 0x60, 0x2f, 0x3b, 0x02, 0x54, 0x26, 0x0e, 0xe5, 0x64, 0x2f, 0xc2, 0x78, 0x02, 0xf0, 0x6f, 0x6f, 0x6f, 0x6f, 0x10, 0x09, 0x37, 0x06, 0x0d, 0x64, 0x06, 0x52,
0x3b, 0x02, 0x54, 0x1a, 0x47, 0x29, 0x07, 0x0d, 0x72, 0x07, 0x10, 0x09, 0x1c, 0x6c, 0x4e, 0x19, 0x38, 0x66, 0x30, 0x7d, 0x02, 0x63, 0x1d, 0x0e, 0xe5, 0x4d, 0x7d, 0x02, 0x63, 0x1d, 0x38, 0x66,
0x79, 0x09, 0x25, 0x7e, 0x1a, 0x2e, 0x2f, 0x6d, 0x2e, 0x29, 0x7e, 0x57, 0x2e, 0x10, 0x06, 0x1c, 0x55, 0x52, 0x07, 0x0d, 0x64, 0x07, 0x10, 0x09, 0x2a, 0xe2, 0x57, 0x52, 0x73, 0x52, 0x79, 0x4b,
0x0f, 0x93, 0x4e, 0x61, 0x31, 0x01, 0x20, 0x75, 0x10, 0x08, 0x1c, 0x03, 0x0b, 0x3a, 0x0b, 0x04, 0x10, 0x09, 0x37, 0x77, 0x5a, 0x6d, 0x10, 0x06, 0x2a, 0xe2, 0xc5, 0xa4, 0x4f, 0x01, 0x1f, 0x45,
0x29, 0x48, 0x5d, 0x04, 0x0b, 0x29, 0x32, 0x05, 0x83, 0x2b, 0x2e, 0x40, 0x1b, 0x03, 0x07, 0x54, 0x75, 0x6d, 0x10, 0x08, 0x27, 0x03, 0x0b, 0x0e, 0x2f, 0x04, 0x00, 0x5f, 0x35, 0x65, 0x52, 0x0e,
0x29, 0x0b, 0x04, 0x01, 0x03, 0x54, 0x29, 0x04, 0x0b, 0x3a, 0x0b, 0x03, 0x10, 0x06, 0x22, 0x79, 0x1c, 0x81, 0x06, 0x5a, 0x69, 0x1e, 0x03, 0x07, 0x63, 0x1d, 0x32, 0x03, 0x00, 0x03, 0x63, 0x52,
0xc2, 0x1b, 0x75, 0x7b, 0x2b, 0x2e, 0x10, 0x09, 0x1c, 0x2e, 0x77, 0xec, 0xc5, 0x9c, 0x66, 0x2e, 0x65, 0x0e, 0x2f, 0x03, 0x10, 0x06, 0x3d, 0x79, 0x33, 0x1e, 0x6d, 0x50, 0x70, 0x06, 0x5a, 0x10,
0x26, 0x48, 0x5d, 0x09, 0x2e, 0x26, 0x5e, 0x1f, 0x10, 0x07, 0x29, 0x21, 0x80, 0x49, 0x00, 0x59, 0x09, 0x20, 0x34, 0x6f, 0x6f, 0x6f, 0x6f, 0x3b, 0x48, 0x5f, 0x05, 0x66, 0x61, 0x1d, 0x47, 0x33,
0x2e, 0x01, 0x24, 0x63, 0x65, 0x87, 0x0a, 0x26, 0x35, 0x08, 0x63, 0x84, 0x29, 0x3a, 0x53, 0x27, 0x10, 0x07, 0x19, 0x34, 0x82, 0x43, 0x00, 0x74, 0x61, 0x01, 0x29, 0x32, 0x2b, 0x84, 0x04, 0x68,
0x70, 0x3d, 0x08, 0x29, 0x66, 0x3f, 0x83, 0x0c, 0x49, 0x10, 0x0c, 0x1e, 0x21, 0x03, 0x49, 0x59, 0x32, 0x5c, 0x52, 0x62, 0x7b, 0x18, 0x08, 0x40, 0x68, 0x52, 0x22, 0x4c, 0x81, 0x0c, 0x43, 0x10,
0x2e, 0x41, 0x0c, 0x65, 0x5a, 0x32, 0x87, 0x34, 0x64, 0x36, 0x09, 0x0f, 0x38, 0x0c, 0x0c, 0x09, 0x0c, 0x2a, 0x03, 0x43, 0x74, 0x61, 0x59, 0x0c, 0x2b, 0x1f, 0x62, 0x51, 0x1c, 0x00, 0x4d, 0x42,
0x44, 0x09, 0x36, 0x35, 0x2b, 0x08, 0x08, 0x0e, 0x06, 0x84, 0x24, 0x68, 0x84, 0x04, 0x49, 0x0e, 0x09, 0x0f, 0x41, 0x0c, 0x0c, 0x09, 0x03, 0x4f, 0x42, 0x04, 0x30, 0x0e, 0x08, 0x08, 0x0e, 0x06,
0x24, 0x63, 0x2e, 0x30, 0x0f, 0x73, 0x24, 0x87, 0x0b, 0x3c, 0x0b, 0x34, 0x10, 0x07, 0x22, 0x21, 0x5c, 0x29, 0x6b, 0x5c, 0x04, 0x43, 0x0e, 0x29, 0x32, 0x61, 0x58, 0x0f, 0x40, 0x19, 0x05, 0x2c,
0x63, 0x84, 0x00, 0x04, 0x73, 0x26, 0x50, 0x39, 0x3a, 0x4d, 0x05, 0x3f, 0x05, 0x5a, 0x2f, 0x54, 0x21, 0x87, 0x10, 0x07, 0x2a, 0x0a, 0x5c, 0x00, 0x04, 0x40, 0x19, 0x74, 0x62, 0x02, 0x0e, 0x60,
0x1b, 0x06, 0x64, 0x60, 0x29, 0x50, 0x4b, 0x0d, 0x33, 0x28, 0x63, 0x84, 0x00, 0x03, 0x73, 0x10, 0x1d, 0x51, 0x85, 0x00, 0x88, 0x1e, 0x06, 0x4d, 0x30, 0x1d, 0x74, 0x64, 0x01, 0x0d, 0x60, 0x19,
0x08, 0x55, 0x21, 0x66, 0x0f, 0x33, 0x66, 0x54, 0x26, 0x0b, 0x47, 0x00, 0x4a, 0x08, 0x26, 0x04, 0x32, 0x5c, 0x00, 0x03, 0x40, 0x10, 0x08, 0x2d, 0x34, 0x22, 0x0f, 0x60, 0x22, 0x63, 0x86, 0x07,
0x54, 0x00, 0x0c, 0x65, 0x29, 0x0c, 0x0f, 0x08, 0x64, 0x27, 0x05, 0x3f, 0x09, 0x1b, 0x48, 0x84, 0x00, 0x38, 0x1d, 0x04, 0x63, 0x00, 0x0c, 0x2b, 0x52, 0x0c, 0x68, 0x4d, 0x18, 0x05, 0x61, 0x4f,
0x1b, 0x07, 0x64, 0x20, 0x03, 0x73, 0x3c, 0x80, 0x0c, 0x84, 0x1b, 0x64, 0x06, 0x10, 0x08, 0x1c, 0x1f, 0x5f, 0x5c, 0x1e, 0x07, 0x4d, 0x20, 0x03, 0x40, 0x82, 0x0c, 0x5c, 0x1e, 0x4d, 0x06, 0x10,
0x1d, 0x20, 0x05, 0x2e, 0x27, 0x87, 0x84, 0x27, 0x35, 0x34, 0x29, 0x35, 0x60, 0x31, 0x6f, 0x1d, 0x08, 0x27, 0xc3, 0x3a, 0x61, 0x18, 0x51, 0x5c, 0x18, 0x04, 0x85, 0x04, 0x0f, 0x30, 0x1f, 0x45,
0x10, 0x09, 0x36, 0x56, 0x2e, 0x1b, 0x0e, 0x84, 0x20, 0x79, 0x00, 0x06, 0x54, 0x31, 0x34, 0x1b, 0x83, 0xc3, 0x10, 0x09, 0x42, 0x46, 0x61, 0x1e, 0x0e, 0x5c, 0x20, 0x79, 0x06, 0x63, 0x1f, 0x45,
0x07, 0x54, 0x5a, 0x80, 0x79, 0x3c, 0x0e, 0x84, 0x20, 0x56, 0x2e, 0x10, 0x04, 0x28, 0x71, 0x71, 0x1c, 0x20, 0x07, 0x63, 0x00, 0x82, 0x24, 0x50, 0x0e, 0x5c, 0x20, 0x46, 0x61, 0x10, 0x04, 0x1b,
0x71, 0x71, 0x71, 0x71, 0x10, 0x09, 0x2a, 0x40, 0x20, 0x04, 0x64, 0x57, 0x48, 0x88, 0x87, 0xc7, 0x71, 0x50, 0x71, 0x50, 0x71, 0x50, 0x71, 0x10, 0x09, 0xf0, 0x69, 0x20, 0x04, 0x4d, 0x50, 0x24,
0x2f, 0x47, 0x00, 0x31, 0x41, 0x31, 0x20, 0x04, 0x64, 0x31, 0x40, 0x10, 0x0a, 0x3c, 0x5f, 0x5b, 0x50, 0x0d, 0x30, 0x3a, 0x8b, 0x5f, 0x83, 0x61, 0x75, 0x61, 0x20, 0x04, 0x4d, 0x1f, 0x45, 0x69,
0x0b, 0x5d, 0x02, 0x7f, 0x09, 0x02, 0x01, 0x05, 0x0b, 0x68, 0x05, 0x10, 0x10, 0x0a, 0x00, 0x2e, 0x67, 0x2f, 0x35, 0x02, 0x0b, 0x19, 0x09, 0x02, 0x4e, 0x0b, 0x6b, 0x05,
0x10,
}; };
static const gU16 mf_rlefont_DejaVuSansBold12_aa_glyph_offsets_0[95] PROGMEM = { static const gU16 mf_rlefont_DejaVuSansBold12_aa_glyph_offsets_0[95] = {
0x0000, 0x0003, 0x000e, 0x0016, 0x003f, 0x0068, 0x00a5, 0x00d7, 0x0000, 0x0003, 0x000f, 0x0017, 0x003e, 0x0064, 0x00a2, 0x00d5,
0x00dc, 0x00f7, 0x0114, 0x012a, 0x0135, 0x013f, 0x0146, 0x014b, 0x00d9, 0x00f5, 0x0113, 0x0129, 0x0132, 0x0136, 0x013d, 0x0142,
0x0160, 0x0188, 0x0190, 0x01b2, 0x01d8, 0x01f3, 0x0209, 0x0233, 0x0158, 0x017b, 0x0184, 0x01a5, 0x01cd, 0x01eb, 0x0201, 0x0227,
0x0250, 0x026b, 0x0298, 0x029e, 0x02a9, 0x02cc, 0x02d4, 0x02f5, 0x0242, 0x026d, 0x0298, 0x029e, 0x02a3, 0x02c5, 0x02cd, 0x02ec,
0x030c, 0x0354, 0x037d, 0x039c, 0x03ba, 0x03d9, 0x03de, 0x03e2, 0x0305, 0x034d, 0x0378, 0x0392, 0x03ae, 0x03d5, 0x03de, 0x03e6,
0x040b, 0x0418, 0x041d, 0x0429, 0x044d, 0x0453, 0x047c, 0x04a1, 0x040e, 0x041c, 0x0421, 0x042d, 0x0452, 0x0457, 0x0480, 0x04a6,
0x04b9, 0x04d0, 0x04ef, 0x050f, 0x053a, 0x0542, 0x0559, 0x0585, 0x04be, 0x04d5, 0x04f3, 0x0511, 0x0536, 0x053d, 0x0557, 0x0583,
0x05c8, 0x05f8, 0x0614, 0x0634, 0x063a, 0x0650, 0x0657, 0x0668, 0x05c7, 0x05f9, 0x0617, 0x0634, 0x063b, 0x0653, 0x065a, 0x066b,
0x066f, 0x0678, 0x0698, 0x069d, 0x06b4, 0x06c2, 0x06e0, 0x06ec, 0x0672, 0x067b, 0x069b, 0x06a3, 0x06bc, 0x06c5, 0x06e1, 0x06f0,
0x0709, 0x0713, 0x071a, 0x0726, 0x0745, 0x074a, 0x0765, 0x076e, 0x0714, 0x0720, 0x0729, 0x0737, 0x0753, 0x0758, 0x076e, 0x0779,
0x078b, 0x0791, 0x079e, 0x07a9, 0x07cd, 0x07d7, 0x07e9, 0x080a, 0x0797, 0x07a1, 0x07a7, 0x07b3, 0x07d5, 0x07e0, 0x07f1, 0x0810,
0x083d, 0x0860, 0x088e, 0x08a1, 0x08bc, 0x08c5, 0x08dc, 0x0843, 0x0866, 0x0890, 0x08a3, 0x08be, 0x08c8, 0x08e1,
}; };
static const struct mf_rlefont_char_range_s mf_rlefont_DejaVuSansBold12_aa_char_ranges[] = { static const struct mf_rlefont_char_range_s mf_rlefont_DejaVuSansBold12_aa_char_ranges[] = {
@ -236,8 +236,8 @@ const struct mf_rlefont_s mf_rlefont_DejaVuSansBold12_aa = {
4, /* version */ 4, /* version */
mf_rlefont_DejaVuSansBold12_aa_dictionary_data, mf_rlefont_DejaVuSansBold12_aa_dictionary_data,
mf_rlefont_DejaVuSansBold12_aa_dictionary_offsets, mf_rlefont_DejaVuSansBold12_aa_dictionary_offsets,
81, /* rle dict count */ 83, /* rle dict count */
117, /* total dict count */ 114, /* total dict count */
1, /* char range count */ 1, /* char range count */
mf_rlefont_DejaVuSansBold12_aa_char_ranges, mf_rlefont_DejaVuSansBold12_aa_char_ranges,
}; };

View file

@ -11,82 +11,76 @@
#error The font file is not compatible with this version of mcufont. #error The font file is not compatible with this version of mcufont.
#endif #endif
static const gU8 mf_rlefont_LargeNumbers_dictionary_data[386] PROGMEM = { static const gU8 mf_rlefont_LargeNumbers_dictionary_data[141] = {
0x08, 0x02, 0x16, 0x81, 0x16, 0x15, 0x82, 0x15, 0x82, 0x0a, 0x83, 0x04, 0x83, 0x0b, 0x12, 0x1a, 0x82, 0x11, 0x85, 0x11, 0x82, 0x0f, 0x10, 0x82, 0x02, 0x82, 0x10, 0x82, 0x02, 0x82, 0x16, 0x0d,
0x83, 0x0b, 0x81, 0x06, 0x84, 0x0b, 0x8b, 0x0c, 0x89, 0x10, 0x09, 0x83, 0x14, 0x83, 0x14, 0x82, 0x04, 0x15, 0x81, 0x8c, 0x0b, 0x8c, 0x03, 0x86, 0x11, 0x86, 0x80, 0x14, 0x82, 0x84, 0x0a, 0x1a,
0x02, 0x82, 0x10, 0x82, 0x02, 0x82, 0x10, 0x83, 0x14, 0x82, 0x14, 0x40, 0x30, 0x85, 0x0e, 0x09, 0x82, 0x08, 0x03, 0x81, 0x89, 0x80, 0x0c, 0x44, 0x10, 0x09, 0x82, 0x81, 0x13, 0x83, 0x13, 0x84,
0x8e, 0x20, 0x82, 0x03, 0x82, 0x0f, 0x82, 0x03, 0x82, 0x0f, 0x82, 0x03, 0x81, 0x10, 0x81, 0x03, 0x13, 0x83, 0x13, 0x84, 0x13, 0x83, 0x14, 0x83, 0x13, 0x82, 0x05, 0x82, 0x81, 0x0b, 0x8b, 0x0c,
0x82, 0x0f, 0x82, 0x03, 0x82, 0x0b, 0x8f, 0x08, 0x8f, 0x08, 0x8f, 0x0c, 0x81, 0x03, 0x82, 0x0f, 0x8a, 0x0f, 0x81, 0x09, 0x8e, 0x04, 0x84, 0x03, 0x82, 0x02, 0x80, 0x8f, 0x08, 0x8f, 0x08, 0x85,
0x82, 0x03, 0x82, 0x0f, 0x82, 0x03, 0x81, 0x0c, 0x8f, 0x08, 0x8f, 0x08, 0x8f, 0x0b, 0x82, 0x03, 0x01, 0x81, 0x83, 0x01, 0x0b, 0x1d, 0x14, 0x82, 0x11, 0x40, 0x01, 0x82, 0x81, 0x0c, 0x83, 0x0d,
0x82, 0x0f, 0x82, 0x03, 0x81, 0x10, 0x81, 0x03, 0x82, 0x0f, 0x82, 0x03, 0x82, 0x3f, 0x88, 0x81, 0x89, 0x3d, 0x75, 0x84, 0x2c, 0x1f, 0xfd, 0x39, 0x9c, 0x19, 0x67, 0x2a, 0x28, 0x75, 0xc7, 0x2c,
0x13, 0x83, 0x13, 0x84, 0x13, 0x83, 0x13, 0x84, 0x13, 0x83, 0x14, 0x82, 0x83, 0x02, 0x86, 0x0e, 0x33, 0x83, 0x23, 0x23, 0x23, 0x23, 0x0f, 0x00, 0x2c, 0x85, 0xa2, 0x27, 0xa2, 0x64, 0x00, 0x83,
0x0c, 0x82, 0x03, 0x82, 0x15, 0x09, 0x8c, 0x0b, 0x8c, 0x13, 0x11, 0x1c, 0x01, 0x87, 0x0e, 0x8b, 0x3c, 0x65, 0x39, 0x23, 0x23, 0x00, 0x2e, 0x25, 0x2c, 0x3d, 0x2a, 0x23, 0x0f,
0x0c, 0x8b, 0x0b, 0x84, 0x01, 0x81, 0x03, 0x81, 0x0b, 0x83, 0x02, 0x81, 0x10, 0x83, 0x02, 0x81,
0x10, 0x88, 0x10, 0x8a, 0x0e, 0x8a, 0x10, 0x88, 0x10, 0x81, 0x01, 0x84, 0x10, 0x81, 0x02, 0x83,
0x0a, 0x81, 0x04, 0x81, 0x02, 0x83, 0x0a, 0x8c, 0x0b, 0x88, 0x04, 0x80, 0x0c, 0x83, 0x13, 0x83,
0x14, 0x83, 0x01, 0x85, 0x0d, 0x8b, 0x0c, 0x8c, 0x0b, 0x84, 0x04, 0x84, 0x0a, 0x83, 0x06, 0x83,
0x0a, 0x83, 0x06, 0x83, 0x0a, 0x83, 0x06, 0x83, 0x0b, 0x82, 0x06, 0x83, 0x0b, 0x83, 0x04, 0x83,
0x0d, 0x8a, 0x0e, 0x88, 0x02, 0x80, 0x01, 0x87, 0x1c, 0x87, 0x0e, 0x8b, 0x0b, 0x8d, 0x0a, 0x84,
0x04, 0x84, 0x0a, 0x83, 0x06, 0x83, 0x0a, 0x83, 0x06, 0x83, 0x0a, 0x84, 0x04, 0x83, 0x0c, 0x8b,
0x0e, 0x87, 0x0e, 0x8b, 0x0c, 0x83, 0x04, 0x83, 0x0b, 0x83, 0x06, 0x83, 0x0a, 0x83, 0x06, 0x83,
0x0a, 0x83, 0x06, 0x83, 0x0a, 0x84, 0x04, 0x84, 0x0b, 0x8b, 0x0d, 0x89, 0x0f, 0x87, 0x40, 0x16,
0x0d, 0x81, 0x14, 0x07, 0x0b, 0x08, 0x83, 0x06, 0x83, 0x0a, 0x83, 0x06, 0x83, 0x0a, 0x83, 0x06,
0x83, 0x0a, 0x83, 0x06, 0x83, 0x0a, 0x83, 0x06, 0x83, 0x0a, 0x83, 0x06, 0x83, 0x0a, 0x83, 0x06,
0x83, 0x04, 0x81, 0x0d, 0x83, 0x04, 0x83, 0x0b, 0x83, 0x06, 0x82, 0x0b, 0x83, 0x06, 0x83, 0x0a,
0x83, 0x06, 0x83, 0x0a, 0x83, 0x06, 0x83, 0x0a, 0x84, 0x04, 0x84, 0x0b, 0x8c, 0x0c, 0x8b, 0x0d,
0x85, 0x01, 0x83, 0x14, 0x82, 0x14, 0x83, 0x0c, 0x80, 0x06, 0x84, 0x0c, 0x8a, 0x0d, 0x89, 0x0f,
0x86, 0x40, 0x2e, 0x82, 0xf3, 0x20, 0xf3, 0x3b, 0x22, 0x82, 0x00, 0x74, 0x20, 0x64, 0x1b, 0x20,
0x64, 0x1b,
}; };
static const gU16 mf_rlefont_LargeNumbers_dictionary_offsets[47] PROGMEM = { static const gU16 mf_rlefont_LargeNumbers_dictionary_offsets[55] = {
0x0000, 0x0001, 0x0002, 0x0005, 0x0009, 0x000e, 0x000f, 0x0010, 0x0000, 0x0005, 0x0006, 0x000c, 0x000e, 0x000f, 0x0010, 0x0011,
0x0019, 0x001a, 0x001b, 0x001f, 0x0027, 0x002b, 0x002d, 0x002e, 0x0013, 0x0016, 0x0018, 0x001a, 0x001d, 0x001e, 0x001f, 0x0021,
0x002f, 0x0031, 0x006e, 0x006f, 0x007c, 0x007e, 0x0080, 0x0082, 0x0022, 0x0024, 0x0025, 0x0027, 0x0029, 0x002b, 0x003a, 0x003c,
0x0084, 0x0085, 0x008a, 0x008b, 0x008c, 0x00ba, 0x00e5, 0x00e7, 0x0043, 0x0045, 0x0047, 0x0049, 0x004b, 0x0050, 0x0052, 0x0054,
0x00e8, 0x0120, 0x0121, 0x0122, 0x0123, 0x0124, 0x0125, 0x0142, 0x0055, 0x0056, 0x0058, 0x0059, 0x005b, 0x005c, 0x005d, 0x005e,
0x0173, 0x0174, 0x0176, 0x0179, 0x017a, 0x017c, 0x0182, 0x0061, 0x0065, 0x0068, 0x006e, 0x0070, 0x0072, 0x0077, 0x007e,
0x0080, 0x0082, 0x0085, 0x0087, 0x0089, 0x008b, 0x008d,
}; };
static const gU8 mf_rlefont_LargeNumbers_glyph_data_0[491] PROGMEM = { static const gU8 mf_rlefont_LargeNumbers_glyph_data_0[630] = {
0x08, 0x00, 0x10, 0x0b, 0x00, 0x1e, 0x42, 0x42, 0x42, 0x42, 0x3b, 0x33, 0x42, 0xf3, 0x10, 0x0d, 0x08, 0x00, 0x10, 0x0b, 0x00, 0x26, 0x45, 0x49, 0x45, 0x3b, 0x7c, 0x49, 0x0f, 0x10, 0x0d, 0x26,
0x1e, 0x23, 0x23, 0x23, 0x0f, 0x77, 0x10, 0x14, 0x29, 0x10, 0x11, 0x19, 0x64, 0x1a, 0x3a, 0x1d, 0x1b, 0x1a, 0x1b, 0x1a, 0x1b, 0x1a, 0x1b, 0x10, 0x14, 0x37, 0x1f, 0x75, 0x19, 0x40, 0x42, 0x37,
0x34, 0xf3, 0x18, 0x64, 0x2d, 0x64, 0x1a, 0x3a, 0x32, 0x64, 0x10, 0x18, 0x1e, 0xf2, 0x87, 0x64, 0x34, 0x29, 0x27, 0xd4, 0x75, 0x19, 0x40, 0xec, 0x2a, 0x34, 0x29, 0x37, 0x40, 0x42, 0x10, 0x11,
0x84, 0x82, 0x85, 0x90, 0x64, 0x7f, 0x44, 0x3c, 0x4b, 0x87, 0x8a, 0xa4, 0x67, 0x65, 0x21, 0x8b, 0x1e, 0x9c, 0x1f, 0x1c, 0xe7, 0x22, 0x2a, 0xf0, 0x29, 0x25, 0x44, 0x93, 0x2c, 0x9f, 0x90, 0x2c,
0x4b, 0x87, 0x64, 0x75, 0x9c, 0x21, 0x73, 0x77, 0x3d, 0x83, 0x9c, 0x80, 0xa4, 0x2c, 0x8a, 0x83, 0x9d, 0x19, 0x53, 0x2a, 0x31, 0x36, 0x1d, 0x44, 0x4c, 0x44, 0x4c, 0x31, 0x36, 0x1d, 0x70, 0x4c,
0x84, 0x64, 0x7d, 0xa2, 0x21, 0x67, 0x75, 0x21, 0x8b, 0x8b, 0x8b, 0x64, 0x65, 0x75, 0x18, 0x87, 0xd4, 0x7d, 0x25, 0x87, 0x77, 0x85, 0x64, 0x83, 0xa3, 0x2c, 0x29, 0x25, 0x7c, 0xa3, 0x19, 0x9c,
0x92, 0x92, 0x44, 0xa4, 0x7b, 0x85, 0x90, 0x44, 0x2c, 0x64, 0x3c, 0x80, 0x10, 0x15, 0x1e, 0x64, 0x1f, 0x1c, 0xf7, 0x1f, 0x10, 0x18, 0x00, 0x1c, 0x31, 0x27, 0x8a, 0x31, 0x87, 0x9c, 0x84, 0x73,
0x41, 0xe3, 0x2c, 0x2e, 0x2d, 0xf3, 0xa4, 0x27, 0x22, 0xe3, 0x1d, 0x82, 0x32, 0x37, 0x7c, 0x18, 0x87, 0x92, 0xa4, 0xa7, 0x87, 0x8a, 0xa4, 0x67, 0x65, 0x2c, 0x28, 0x75, 0x2c, 0xec, 0x67, 0x25,
0x2a, 0x7d, 0x3c, 0x63, 0xa3, 0x8b, 0xa4, 0x8b, 0x2a, 0x18, 0x2c, 0x80, 0x87, 0x64, 0x87, 0x82, 0x73, 0x77, 0x27, 0x21, 0x9c, 0x80, 0x2e, 0x67, 0x21, 0x37, 0x6b, 0x7f, 0x25, 0x67, 0x75, 0x2c,
0x84, 0x7c, 0x85, 0xa3, 0x28, 0x00, 0x28, 0x84, 0xa4, 0xa3, 0x82, 0x10, 0x07, 0x27, 0x2e, 0x1b, 0xf4, 0x8b, 0x8b, 0x64, 0x65, 0x75, 0x27, 0x87, 0x92, 0x92, 0x64, 0x85, 0x73, 0x87, 0x9c, 0x4a,
0x1b, 0x1b, 0x10, 0x0b, 0x00, 0x33, 0x24, 0x24, 0xf3, 0x3b, 0x24, 0x42, 0x42, 0x41, 0x44, 0x30, 0x93, 0xa4, 0x85, 0x31, 0x10, 0x15, 0xc4, 0x26, 0x4c, 0x31, 0x36, 0x1d, 0x29, 0xc4, 0x2c, 0x85,
0x22, 0xf2, 0x1d, 0x7c, 0x1b, 0x0f, 0x10, 0x0b, 0x1e, 0xf3, 0x1b, 0x0f, 0x1b, 0x0f, 0x3b, 0x41, 0x85, 0x2c, 0x23, 0x23, 0xf7, 0x3a, 0x82, 0x22, 0x75, 0x85, 0x21, 0xab, 0x8b, 0x31, 0x82, 0x92,
0x44, 0x30, 0x42, 0x42, 0x24, 0xf3, 0x3b, 0x24, 0x24, 0xf3, 0x10, 0x0d, 0x3c, 0x1a, 0x3a, 0x20, 0x4a, 0xb5, 0x83, 0x27, 0x36, 0x21, 0x2c, 0xc5, 0x82, 0x2c, 0xf7, 0x31, 0x25, 0x29, 0xa3, 0x30,
0x48, 0x95, 0x3d, 0xa2, 0x7f, 0x27, 0x37, 0x1d, 0x41, 0xf8, 0x2d, 0x73, 0xa2, 0x21, 0x8c, 0x4a, 0x84, 0xa4, 0xa3, 0x82, 0x10, 0x07, 0x26, 0x41, 0x41, 0x41, 0x10, 0x0b, 0xf4, 0x26, 0x23, 0x39,
0x39, 0x64, 0x1a, 0x10, 0x14, 0x33, 0x33, 0x33, 0x1b, 0x1b, 0x1b, 0x84, 0x28, 0x28, 0x28, 0xf4, 0x23, 0x49, 0x49, 0x45, 0x41, 0x4d, 0x41, 0x0f, 0x41, 0x0f, 0x10, 0x0b, 0x26, 0x0f, 0x41, 0x0f,
0x2e, 0x21, 0x2e, 0x1b, 0x1b, 0x10, 0x09, 0x25, 0x25, 0x25, 0xc0, 0x3b, 0x42, 0x24, 0x24, 0x10, 0x41, 0x4d, 0x41, 0x45, 0x49, 0x49, 0x39, 0x23, 0x3a, 0x7c, 0x10, 0x0d, 0x38, 0xf7, 0x1f, 0x3a,
0x0a, 0x32, 0x25, 0x25, 0x83, 0x32, 0x83, 0x32, 0x83, 0x10, 0x09, 0x19, 0x25, 0x25, 0x25, 0x22, 0xc6, 0xa7, 0x27, 0x64, 0x5f, 0x4c, 0x44, 0x3a, 0xa2, 0x22, 0x2a, 0xf0, 0x5f, 0x4c, 0xc6, 0xa7,
0x42, 0x10, 0x09, 0x21, 0x1b, 0x45, 0x45, 0x45, 0x10, 0x11, 0x33, 0x82, 0x32, 0x37, 0x39, 0x80, 0x19, 0x9c, 0x1f, 0x10, 0x14, 0xfc, 0x3a, 0x3b, 0x41, 0x41, 0x41, 0x84, 0x30, 0x30, 0x30, 0x1d,
0xa3, 0x2e, 0xc5, 0x2c, 0x1c, 0xf3, 0x84, 0x2c, 0x3e, 0x19, 0x64, 0x87, 0x2c, 0x1c, 0xe0, 0x2d, 0xa0, 0x39, 0x41, 0x41, 0x10, 0x09, 0x2b, 0x1b, 0x45, 0x39, 0x39, 0x23, 0x10, 0x0a, 0x38, 0x3b,
0xe2, 0x41, 0x82, 0x10, 0x11, 0x1e, 0xdc, 0x41, 0x37, 0x3d, 0xa4, 0x2d, 0x90, 0x22, 0x42, 0x42, 0x3b, 0x3b, 0x22, 0x22, 0x22, 0x10, 0x09, 0x2b, 0x1b, 0x45, 0x10, 0x09, 0x00, 0x27, 0x41, 0x1f,
0x42, 0x41, 0x40, 0x2a, 0x2e, 0x2a, 0x2e, 0x2a, 0x10, 0x11, 0x33, 0x2d, 0x82, 0xa3, 0x2e, 0x2a, 0x41, 0x1f, 0x41, 0x1f, 0x41, 0x1f, 0x41, 0x1f, 0x41, 0x1f, 0x41, 0x10, 0x11, 0x38, 0xc3, 0x19,
0x2e, 0xf4, 0x80, 0x84, 0xa4, 0x18, 0x42, 0x41, 0xec, 0x41, 0xf8, 0x41, 0x82, 0x39, 0xb4, 0x41, 0x44, 0x19, 0x29, 0x1d, 0x48, 0x43, 0xe5, 0xa2, 0x46, 0x3d, 0x46, 0x3d, 0x46, 0x3d, 0x46, 0x3d,
0x82, 0x39, 0xb4, 0x41, 0x82, 0x32, 0x2a, 0x2c, 0x31, 0x10, 0x11, 0x33, 0x2d, 0x82, 0xa3, 0x2e, 0x37, 0x48, 0x43, 0xc5, 0x3f, 0x1d, 0x44, 0x3a, 0xc3, 0x10, 0x11, 0xf4, 0x26, 0x4c, 0x31, 0x4c,
0x2a, 0x18, 0x94, 0xa4, 0x22, 0x41, 0x7c, 0x3d, 0xd4, 0x2d, 0xf8, 0x2d, 0x80, 0x41, 0xd4, 0x42, 0x74, 0xa3, 0x19, 0x77, 0x45, 0x49, 0x45, 0x00, 0x19, 0x29, 0x43, 0xc3, 0x4c, 0x3d, 0x29, 0x10,
0x1f, 0x0f, 0x27, 0x37, 0x10, 0x11, 0x19, 0x33, 0x80, 0x32, 0x82, 0x32, 0x83, 0x32, 0x2d, 0xf8, 0x11, 0x37, 0x22, 0x3e, 0x21, 0x3f, 0x43, 0x00, 0x31, 0x37, 0x85, 0x7c, 0x49, 0x0f, 0x19, 0x31,
0x2d, 0x62, 0x8b, 0x2e, 0xc0, 0x27, 0x2c, 0x2c, 0x2e, 0x7c, 0x18, 0xa4, 0x8b, 0x2c, 0x1c, 0xf2, 0x1d, 0x64, 0x18, 0x18, 0x18, 0x29, 0x37, 0x20, 0x10, 0x11, 0x37, 0x22, 0x3e, 0x21, 0x3f, 0x3d,
0xa4, 0x8b, 0x28, 0x28, 0x28, 0x32, 0x42, 0x10, 0x11, 0x1e, 0x82, 0xa3, 0x2e, 0x37, 0x18, 0x64, 0x25, 0x88, 0x7c, 0x23, 0x4d, 0x4b, 0x2a, 0x21, 0x2a, 0x74, 0xa3, 0x1d, 0x44, 0x4d, 0x23, 0x23,
0x2a, 0x39, 0x42, 0x26, 0x8b, 0x2e, 0x2d, 0x26, 0xa3, 0x3d, 0x86, 0x80, 0x3b, 0x42, 0x1f, 0x36, 0x4d, 0x84, 0x64, 0x4a, 0x2f, 0x24, 0x10, 0x11, 0x84, 0x1c, 0x31, 0x3a, 0x82, 0x22, 0x22, 0x3e,
0x27, 0x83, 0x10, 0x11, 0x19, 0x33, 0x2d, 0xc2, 0xa3, 0x2e, 0x37, 0x2e, 0xe7, 0x35, 0x39, 0x82, 0x31, 0x4c, 0x7c, 0xa2, 0x1d, 0x52, 0x4c, 0xf0, 0x77, 0x85, 0x2c, 0x7c, 0x27, 0x64, 0xa7, 0x4c,
0x10, 0x11, 0x1e, 0x2a, 0x2c, 0x31, 0x40, 0x2b, 0x0f, 0x3c, 0x2e, 0x2b, 0x0f, 0x32, 0x80, 0x10, 0x48, 0x43, 0xa4, 0x8b, 0x30, 0x30, 0x30, 0x27, 0x2c, 0x23, 0x4d, 0x10, 0x11, 0x25, 0x22, 0x3f,
0x11, 0x38, 0x10, 0x11, 0x33, 0x82, 0x3d, 0x64, 0x2d, 0x2a, 0x3f, 0x2a, 0xfe, 0x29, 0x25, 0x7c, 0x49, 0x3c, 0x4c, 0x21, 0x4c, 0x44, 0x4c, 0xc6, 0x7c, 0x45, 0x84,
0x64, 0x4a, 0x2f, 0x24, 0x10, 0x11, 0x1d, 0x22, 0x19, 0xc3, 0x3f, 0xe5, 0x2c, 0x87, 0x88, 0x2c,
0x23, 0x39, 0xf1, 0x3f, 0x43, 0x29, 0x25, 0xc2, 0x31, 0x46, 0xf7, 0x2c, 0xe5, 0x7c, 0x37, 0x8b,
0x7c, 0x84, 0x64, 0x87, 0x3f, 0x2a, 0xf0, 0x83, 0x19, 0x82, 0x10, 0x11, 0x26, 0x29, 0x37, 0x20,
0x4b, 0x2d, 0x2d, 0x3d, 0x10, 0x11, 0x37, 0x22, 0x2a, 0xf0, 0x29, 0x27, 0x7c, 0x29, 0x84, 0x31,
0x31, 0x46, 0xe7, 0x2c, 0xa5, 0x93, 0x2c, 0xc3, 0x4c, 0x1b, 0xa3, 0x1d, 0x29, 0x43, 0xe5, 0xa2,
0x46, 0xf7, 0x2c, 0x85, 0xa2, 0x2c, 0x87, 0xa3, 0x27, 0x44, 0x3f, 0x1d, 0x44, 0x10, 0x11, 0x38,
0xc3, 0x19, 0x82, 0x4c, 0x44, 0x4c, 0xa2, 0x7c, 0x84, 0x64, 0x87, 0xa0, 0x46, 0xf7, 0x2c, 0xe5,
0x7c, 0x84, 0x31, 0x31, 0x37, 0x29, 0x4c, 0x29, 0x87, 0x2c, 0x7b, 0x23, 0x39, 0x2a, 0xf5, 0x31,
0x37, 0x47, 0x3f, 0x3e, 0x21, 0x10,
}; };
static const gU16 mf_rlefont_LargeNumbers_glyph_offsets_0[26] PROGMEM = { static const gU16 mf_rlefont_LargeNumbers_glyph_offsets_0[26] = {
0x0000, 0x0003, 0x000f, 0x0017, 0x001a, 0x002b, 0x006d, 0x009c, 0x0000, 0x0003, 0x000e, 0x0018, 0x002f, 0x0065, 0x00a5, 0x00d5,
0x00a3, 0x00b7, 0x00cb, 0x00e4, 0x00f6, 0x0100, 0x010a, 0x0112, 0x00db, 0x00eb, 0x00fb, 0x0114, 0x0125, 0x012d, 0x0136, 0x013b,
0x0119, 0x0134, 0x0149, 0x016a, 0x0185, 0x01a8, 0x01c3, 0x01d1, 0x014c, 0x016a, 0x0180, 0x0199, 0x01b7, 0x01dc, 0x01f5, 0x021b,
0x01e0, 0x01e3, 0x0225, 0x024e,
}; };
static const struct mf_rlefont_char_range_s mf_rlefont_LargeNumbers_char_ranges[] = { static const struct mf_rlefont_char_range_s mf_rlefont_LargeNumbers_char_ranges[] = {
@ -112,8 +106,8 @@ const struct mf_rlefont_s mf_rlefont_LargeNumbers = {
4, /* version */ 4, /* version */
mf_rlefont_LargeNumbers_dictionary_data, mf_rlefont_LargeNumbers_dictionary_data,
mf_rlefont_LargeNumbers_dictionary_offsets, mf_rlefont_LargeNumbers_dictionary_offsets,
41, /* rle dict count */ 40, /* rle dict count */
46, /* total dict count */ 54, /* total dict count */
1, /* char range count */ 1, /* char range count */
mf_rlefont_LargeNumbers_char_ranges, mf_rlefont_LargeNumbers_char_ranges,
}; };

View file

@ -11,7 +11,7 @@
#error The font file is not compatible with this version of mcufont. #error The font file is not compatible with this version of mcufont.
#endif #endif
static const gU8 mf_bwfont_fixed_10x20_glyph_data_0[2193] PROGMEM = { static const gU8 mf_bwfont_fixed_10x20_glyph_data_0[2193] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x1b, 0x00, 0xff, 0x1b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x1b, 0x00, 0xff, 0x1b, 0x00, 0x00,
0x00, 0x00, 0x07, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x00,
0x00, 0x07, 0x00, 0x00, 0x00, 0x01, 0x00, 0x10, 0x0f, 0x00, 0xf0, 0x0f, 0x00, 0xfe, 0x01, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x01, 0x00, 0x10, 0x0f, 0x00, 0xf0, 0x0f, 0x00, 0xfe, 0x01, 0x00,
@ -152,7 +152,7 @@ static const gU8 mf_bwfont_fixed_10x20_glyph_data_0[2193] PROGMEM = {
0x00, 0x00,
}; };
static const gU16 mf_bwfont_fixed_10x20_glyph_offsets_0[96] PROGMEM = { static const gU16 mf_bwfont_fixed_10x20_glyph_offsets_0[96] = {
0x0000, 0x0000, 0x0005, 0x000c, 0x0015, 0x001d, 0x0026, 0x002f, 0x0000, 0x0000, 0x0005, 0x000c, 0x0015, 0x001d, 0x0026, 0x002f,
0x0034, 0x003b, 0x0041, 0x0049, 0x0051, 0x0057, 0x005f, 0x0065, 0x0034, 0x003b, 0x0041, 0x0049, 0x0051, 0x0057, 0x005f, 0x0065,
0x006d, 0x0075, 0x007d, 0x0085, 0x008d, 0x0095, 0x009d, 0x00a5, 0x006d, 0x0075, 0x007d, 0x0085, 0x008d, 0x0095, 0x009d, 0x00a5,
@ -167,7 +167,7 @@ static const gU16 mf_bwfont_fixed_10x20_glyph_offsets_0[96] PROGMEM = {
0x02a6, 0x02ae, 0x02b6, 0x02be, 0x02c6, 0x02cb, 0x02d3, 0x02db, 0x02a6, 0x02ae, 0x02b6, 0x02be, 0x02c6, 0x02cb, 0x02d3, 0x02db,
}; };
static const gU8 mf_bwfont_fixed_10x20_glyph_widths_0[95] PROGMEM = { static const gU8 mf_bwfont_fixed_10x20_glyph_widths_0[95] = {
0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a,
0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a,
0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a, 0x0a,

View file

@ -11,7 +11,7 @@
#error The font file is not compatible with this version of mcufont. #error The font file is not compatible with this version of mcufont.
#endif #endif
static const gU8 mf_bwfont_fixed_5x8_glyph_data_0[475] PROGMEM = { static const gU8 mf_bwfont_fixed_5x8_glyph_data_0[475] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5e, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x0e, 0x00, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5e, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x0e, 0x00, 0x14,
0x7f, 0x14, 0x7f, 0x14, 0x04, 0x2a, 0x7f, 0x2a, 0x10, 0x00, 0x16, 0x08, 0x34, 0x00, 0x36, 0x49, 0x7f, 0x14, 0x7f, 0x14, 0x04, 0x2a, 0x7f, 0x2a, 0x10, 0x00, 0x16, 0x08, 0x34, 0x00, 0x36, 0x49,
0x36, 0x40, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x3c, 0x42, 0x00, 0x00, 0x00, 0x42, 0x3c, 0x36, 0x40, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x3c, 0x42, 0x00, 0x00, 0x00, 0x42, 0x3c,

View file

@ -11,7 +11,7 @@
#error The font file is not compatible with this version of mcufont. #error The font file is not compatible with this version of mcufont.
#endif #endif
static const gU8 mf_bwfont_fixed_7x14_glyph_data_0[1330] PROGMEM = { static const gU8 mf_bwfont_fixed_7x14_glyph_data_0[1330] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0xfe, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x0f, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, 0x00, 0xfe, 0x07, 0x0f, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, 0x00, 0xfe, 0x07,

View file

@ -5,19 +5,14 @@
#include "DejaVuSans10.c" #include "DejaVuSans10.c"
#endif #endif
#if defined(GDISP_INCLUDE_FONT_DEJAVUSANS12) && GDISP_INCLUDE_FONT_DEJAVUSANS12
#define GDISP_FONT_FOUND
#include "DejaVuSans12.c"
#endif
#if defined(GDISP_INCLUDE_FONT_DEJAVUSANS12_AA) && GDISP_INCLUDE_FONT_DEJAVUSANS12_AA #if defined(GDISP_INCLUDE_FONT_DEJAVUSANS12_AA) && GDISP_INCLUDE_FONT_DEJAVUSANS12_AA
#define GDISP_FONT_FOUND #define GDISP_FONT_FOUND
#include "DejaVuSans12_aa.c" #include "DejaVuSans12_aa.c"
#endif #endif
#if defined(GDISP_INCLUDE_FONT_DEJAVUSANS16) && GDISP_INCLUDE_FONT_DEJAVUSANS16 #if defined(GDISP_INCLUDE_FONT_DEJAVUSANS12) && GDISP_INCLUDE_FONT_DEJAVUSANS12
#define GDISP_FONT_FOUND #define GDISP_FONT_FOUND
#include "DejaVuSans16.c" #include "DejaVuSans12.c"
#endif #endif
#if defined(GDISP_INCLUDE_FONT_DEJAVUSANS16_AA) && GDISP_INCLUDE_FONT_DEJAVUSANS16_AA #if defined(GDISP_INCLUDE_FONT_DEJAVUSANS16_AA) && GDISP_INCLUDE_FONT_DEJAVUSANS16_AA
@ -25,9 +20,9 @@
#include "DejaVuSans16_aa.c" #include "DejaVuSans16_aa.c"
#endif #endif
#if defined(GDISP_INCLUDE_FONT_DEJAVUSANS20) && GDISP_INCLUDE_FONT_DEJAVUSANS20 #if defined(GDISP_INCLUDE_FONT_DEJAVUSANS16) && GDISP_INCLUDE_FONT_DEJAVUSANS16
#define GDISP_FONT_FOUND #define GDISP_FONT_FOUND
#include "DejaVuSans20.c" #include "DejaVuSans16.c"
#endif #endif
#if defined(GDISP_INCLUDE_FONT_DEJAVUSANS20_AA) && GDISP_INCLUDE_FONT_DEJAVUSANS20_AA #if defined(GDISP_INCLUDE_FONT_DEJAVUSANS20_AA) && GDISP_INCLUDE_FONT_DEJAVUSANS20_AA
@ -35,9 +30,9 @@
#include "DejaVuSans20_aa.c" #include "DejaVuSans20_aa.c"
#endif #endif
#if defined(GDISP_INCLUDE_FONT_DEJAVUSANS24) && GDISP_INCLUDE_FONT_DEJAVUSANS24 #if defined(GDISP_INCLUDE_FONT_DEJAVUSANS20) && GDISP_INCLUDE_FONT_DEJAVUSANS20
#define GDISP_FONT_FOUND #define GDISP_FONT_FOUND
#include "DejaVuSans24.c" #include "DejaVuSans20.c"
#endif #endif
#if defined(GDISP_INCLUDE_FONT_DEJAVUSANS24_AA) && GDISP_INCLUDE_FONT_DEJAVUSANS24_AA #if defined(GDISP_INCLUDE_FONT_DEJAVUSANS24_AA) && GDISP_INCLUDE_FONT_DEJAVUSANS24_AA
@ -45,9 +40,9 @@
#include "DejaVuSans24_aa.c" #include "DejaVuSans24_aa.c"
#endif #endif
#if defined(GDISP_INCLUDE_FONT_DEJAVUSANS32) && GDISP_INCLUDE_FONT_DEJAVUSANS32 #if defined(GDISP_INCLUDE_FONT_DEJAVUSANS24) && GDISP_INCLUDE_FONT_DEJAVUSANS24
#define GDISP_FONT_FOUND #define GDISP_FONT_FOUND
#include "DejaVuSans32.c" #include "DejaVuSans24.c"
#endif #endif
#if defined(GDISP_INCLUDE_FONT_DEJAVUSANS32_AA) && GDISP_INCLUDE_FONT_DEJAVUSANS32_AA #if defined(GDISP_INCLUDE_FONT_DEJAVUSANS32_AA) && GDISP_INCLUDE_FONT_DEJAVUSANS32_AA
@ -55,9 +50,9 @@
#include "DejaVuSans32_aa.c" #include "DejaVuSans32_aa.c"
#endif #endif
#if defined(GDISP_INCLUDE_FONT_DEJAVUSANSBOLD12) && GDISP_INCLUDE_FONT_DEJAVUSANSBOLD12 #if defined(GDISP_INCLUDE_FONT_DEJAVUSANS32) && GDISP_INCLUDE_FONT_DEJAVUSANS32
#define GDISP_FONT_FOUND #define GDISP_FONT_FOUND
#include "DejaVuSansBold12.c" #include "DejaVuSans32.c"
#endif #endif
#if defined(GDISP_INCLUDE_FONT_DEJAVUSANSBOLD12_AA) && GDISP_INCLUDE_FONT_DEJAVUSANSBOLD12_AA #if defined(GDISP_INCLUDE_FONT_DEJAVUSANSBOLD12_AA) && GDISP_INCLUDE_FONT_DEJAVUSANSBOLD12_AA
@ -65,9 +60,9 @@
#include "DejaVuSansBold12_aa.c" #include "DejaVuSansBold12_aa.c"
#endif #endif
#if defined(GDISP_INCLUDE_FONT_LARGENUMBERS) && GDISP_INCLUDE_FONT_LARGENUMBERS #if defined(GDISP_INCLUDE_FONT_DEJAVUSANSBOLD12) && GDISP_INCLUDE_FONT_DEJAVUSANSBOLD12
#define GDISP_FONT_FOUND #define GDISP_FONT_FOUND
#include "LargeNumbers.c" #include "DejaVuSansBold12.c"
#endif #endif
#if defined(GDISP_INCLUDE_FONT_FIXED_10X20) && GDISP_INCLUDE_FONT_FIXED_10X20 #if defined(GDISP_INCLUDE_FONT_FIXED_10X20) && GDISP_INCLUDE_FONT_FIXED_10X20
@ -85,6 +80,11 @@
#include "fixed_7x14.c" #include "fixed_7x14.c"
#endif #endif
#if defined(GDISP_INCLUDE_FONT_LARGENUMBERS) && GDISP_INCLUDE_FONT_LARGENUMBERS
#define GDISP_FONT_FOUND
#include "LargeNumbers.c"
#endif
#if defined(GDISP_INCLUDE_FONT_UI1) && GDISP_INCLUDE_FONT_UI1 #if defined(GDISP_INCLUDE_FONT_UI1) && GDISP_INCLUDE_FONT_UI1
#define GDISP_FONT_FOUND #define GDISP_FONT_FOUND
#include "UI1.c" #include "UI1.c"

View file

@ -47,21 +47,21 @@ GDisplay *GDISP;
#if !NEED_CLIPPING #if !NEED_CLIPPING
#define TEST_CLIP_AREA(g) #define TEST_CLIP_AREA(g)
#elif GDISP_HARDWARE_CLIP == HARDWARE_AUTODETECT #elif GDISP_HARDWARE_CLIP == HARDWARE_AUTODETECT
#define TEST_CLIP_AREA(g) \
if (!gvmt(g)->setclip) { \
if ((g)->p.x < (g)->clipx0) { (g)->p.cx -= (g)->clipx0 - (g)->p.x; (g)->p.x = (g)->clipx0; } \
if ((g)->p.y < (g)->clipy0) { (g)->p.cy -= (g)->clipy0 - (g)->p.y; (g)->p.y = (g)->clipy0; } \
if ((g)->p.x + (g)->p.cx > (g)->clipx1) (g)->p.cx = (g)->clipx1 - (g)->p.x; \
if ((g)->p.y + (g)->p.cy > (g)->clipy1) (g)->p.cy = (g)->clipy1 - (g)->p.y; \
} \
if ((g)->p.cx > 0 && (g)->p.cy > 0)
#else
#define TEST_CLIP_AREA(g) \ #define TEST_CLIP_AREA(g) \
if (!gvmt(g)->setclip) { \
if ((g)->p.x < (g)->clipx0) { (g)->p.cx -= (g)->clipx0 - (g)->p.x; (g)->p.x = (g)->clipx0; } \ if ((g)->p.x < (g)->clipx0) { (g)->p.cx -= (g)->clipx0 - (g)->p.x; (g)->p.x = (g)->clipx0; } \
if ((g)->p.y < (g)->clipy0) { (g)->p.cy -= (g)->clipy0 - (g)->p.y; (g)->p.y = (g)->clipy0; } \ if ((g)->p.y < (g)->clipy0) { (g)->p.cy -= (g)->clipy0 - (g)->p.y; (g)->p.y = (g)->clipy0; } \
if ((g)->p.x + (g)->p.cx > (g)->clipx1) (g)->p.cx = (g)->clipx1 - (g)->p.x; \ if ((g)->p.x + (g)->p.cx > (g)->clipx1) (g)->p.cx = (g)->clipx1 - (g)->p.x; \
if ((g)->p.y + (g)->p.cy > (g)->clipy1) (g)->p.cy = (g)->clipy1 - (g)->p.y; \ if ((g)->p.y + (g)->p.cy > (g)->clipy1) (g)->p.cy = (g)->clipy1 - (g)->p.y; \
} \ if ((g)->p.cx > 0 && (g)->p.cy > 0)
if ((g)->p.cx > 0 && (g)->p.cy > 0)
#else
#define TEST_CLIP_AREA(g) \
if ((g)->p.x < (g)->clipx0) { (g)->p.cx -= (g)->clipx0 - (g)->p.x; (g)->p.x = (g)->clipx0; } \
if ((g)->p.y < (g)->clipy0) { (g)->p.cy -= (g)->clipy0 - (g)->p.y; (g)->p.y = (g)->clipy0; } \
if ((g)->p.x + (g)->p.cx > (g)->clipx1) (g)->p.cx = (g)->clipx1 - (g)->p.x; \
if ((g)->p.y + (g)->p.cy > (g)->clipy1) (g)->p.cy = (g)->clipy1 - (g)->p.y; \
if ((g)->p.cx > 0 && (g)->p.cy > 0)
#endif #endif
/*==========================================================================*/ /*==========================================================================*/
@ -89,14 +89,14 @@ GDisplay *GDISP;
#endif #endif
#if GDISP_HARDWARE_STREAM_POS && GDISP_HARDWARE_STREAM_WRITE #if GDISP_HARDWARE_STREAM_POS && GDISP_HARDWARE_STREAM_WRITE
#define autoflush(g) \ #define autoflush(g) \
{ \ { \
if ((g->flags & GDISP_FLG_SCRSTREAM)) { \ if ((g->flags & GDISP_FLG_SCRSTREAM)) { \
gdisp_lld_write_stop(g); \ gdisp_lld_write_stop(g); \
g->flags &= ~GDISP_FLG_SCRSTREAM; \ g->flags &= ~GDISP_FLG_SCRSTREAM; \
} \ } \
autoflush_stopdone(g); \ autoflush_stopdone(g); \
} }
#else #else
#define autoflush(g) autoflush_stopdone(g) #define autoflush(g) autoflush_stopdone(g)
#endif #endif
@ -569,9 +569,9 @@ void _gdispInit(void)
#if defined(GDISP_DRIVER_LIST) #if defined(GDISP_DRIVER_LIST)
{ {
unsigned i; unsigned i;
typedef const GDISPVMT GDISPVMTLIST[1]; typedef const GDISPVMT const GDISPVMTLIST[1];
static const GDISPVMT* dclist[] = { GDISP_DRIVER_LIST }; static const GDISPVMT * const dclist[] = {GDISP_DRIVER_LIST};
for(i = 0; i < sizeof(dclist)/sizeof(dclist[0]); i++) { for(i = 0; i < sizeof(dclist)/sizeof(dclist[0]); i++) {
if (!(dclist[i]->d.flags & GDISP_VFLG_DYNAMICONLY)) if (!(dclist[i]->d.flags & GDISP_VFLG_DYNAMICONLY))
@ -2885,10 +2885,6 @@ void gdispGBlitArea(GDisplay *g, gCoord x, gCoord y, gCoord cx, gCoord cy, gCoor
case gOrientationPortrait: case gOrientationPortrait:
g->p.ptr = g->g.Width >= g->g.Height ? (void *)gOrientation90 : (void *)gOrientation0; g->p.ptr = g->g.Width >= g->g.Height ? (void *)gOrientation90 : (void *)gOrientation0;
break; break;
case gOrientation0:
case gOrientation90:
case gOrientation180:
case gOrientation270:
default: default:
break; break;
} }

View file

@ -1,27 +0,0 @@
set(ROOT_PATH ${UGFX_ROOT}/src/gdisp)
list(APPEND ugfx_INCLUDE_DIRS
${ROOT_PATH}
${ROOT_PATH}/mcufont
)
list(APPEND ugfx_SOURCES
${ROOT_PATH}/gdisp.c
${ROOT_PATH}/gdisp_fonts.c
${ROOT_PATH}/gdisp_pixmap.c
${ROOT_PATH}/gdisp_image.c
${ROOT_PATH}/gdisp_image_native.c
${ROOT_PATH}/gdisp_image_gif.c
${ROOT_PATH}/gdisp_image_bmp.c
${ROOT_PATH}/gdisp_image_jpg.c
${ROOT_PATH}/gdisp_image_png.c
${ROOT_PATH}/mcufont/mf_encoding.c
${ROOT_PATH}/mcufont/mf_font.c
${ROOT_PATH}/mcufont/mf_justify.c
${ROOT_PATH}/mcufont/mf_kerning.c
${ROOT_PATH}/mcufont/mf_rlefont.c
${ROOT_PATH}/mcufont/mf_bwfont.c
${ROOT_PATH}/mcufont/mf_scaledfont.c
${ROOT_PATH}/mcufont/mf_wordwrap.c
)

View file

@ -43,18 +43,8 @@
#define MF_USE_KERNING GDISP_NEED_TEXT_KERNING #define MF_USE_KERNING GDISP_NEED_TEXT_KERNING
#define MF_FONT_FILE_NAME "src/gdisp/fonts/fonts.h" #define MF_FONT_FILE_NAME "src/gdisp/fonts/fonts.h"
/* These are not used for now */
#ifdef __AVR__ #define MF_USE_JUSTIFY 0
#include <avr/pgmspace.h>
#elif defined(ARDUINO_ARCH_ESP8266) || defined(ARDUINO_ARCH_ESP32)
#include <pgmspace.h>
#else
#include <stdint.h>
#define PROGMEM
#define pgm_read_byte(addr) (*(const unsigned char *)(addr))
#define pgm_read_word(addr) (*(const gU16 *)(addr))
#endif /* __AVR__ */
/******************************************************* /*******************************************************
* Configuration settings related to build environment * * Configuration settings related to build environment *
@ -178,7 +168,7 @@
#ifdef __cplusplus #ifdef __cplusplus
#define MF_EXTERN extern "C" #define MF_EXTERN extern "C"
#else #else
#define MF_EXTERN extern #define MF_EXTERN
#endif #endif
#endif #endif

View file

@ -87,7 +87,7 @@ mf_char mf_getchar(mf_str *str)
void mf_rewind(mf_str *str) void mf_rewind(mf_str *str)
{ {
(*str)--; (*str)--;
} }
#endif #endif

View file

@ -5,14 +5,14 @@
* http://ugfx.io/license.html * http://ugfx.io/license.html
*/ */
#include "mf_config.h"
#ifndef MF_NO_COMPILE #ifndef MF_NO_COMPILE
#define MF_BWFONT_INTERNALS #define MF_BWFONT_INTERNALS
#define MF_RLEFONT_INTERNALS #define MF_RLEFONT_INTERNALS
#define MF_SCALEDFONT_INTERNALS
#include "mf_font.h" #include "mf_font.h"
#include "mf_bwfont.h"
#include "mf_rlefont.h" #include "mf_rlefont.h"
#include "mf_bwfont.h" #include "mf_bwfont.h"
#include "mf_scaledfont.h" #include "mf_scaledfont.h"
@ -33,7 +33,7 @@ gU8 mf_render_character(const struct mf_font_s *font,
void *state) void *state)
{ {
gU8 width; gU8 width;
width = font->render_character(font, x0, y0, character, callback, state); width = font->render_character(font, x0, y0, MFCHAR2UINT16(character), callback, state);
if (!width) if (!width)
{ {
@ -48,7 +48,7 @@ gU8 mf_character_width(const struct mf_font_s *font,
mf_char character) mf_char character)
{ {
gU8 width; gU8 width;
width = font->character_width(font, character); width = font->character_width(font, MFCHAR2UINT16(character));
if (!width) if (!width)
{ {
@ -58,51 +58,6 @@ gU8 mf_character_width(const struct mf_font_s *font,
return width; return width;
} }
struct whitespace_state
{
gU8 min_x, min_y;
gU8 max_x, max_y;
};
static void whitespace_callback(int16_t x, int16_t y, gU8 count,
gU8 alpha, void *state)
{
struct whitespace_state *s = state;
if (alpha > 7)
{
if (s->min_x > x) s->min_x = x;
if (s->min_y > y) s->min_y = y;
x += count - 1;
if (s->max_x < x) s->max_x = x;
if (s->max_y < y) s->max_y = y;
}
}
MF_EXTERN void mf_character_whitespace(const struct mf_font_s *font,
mf_char character,
gU8 *left, gU8 *top,
gU8 *right, gU8 *bottom)
{
struct whitespace_state state = {255, 255, 0, 0};
mf_render_character(font, 0, 0, character, whitespace_callback, &state);
if (state.min_x == 255 && state.min_y == 255)
{
/* Character is whitespace */
if (left) *left = font->width;
if (top) *top = font->height;
if (right) *right = 0;
if (bottom) *bottom = 0;
}
else
{
if (left) *left = state.min_x;
if (top) *top = state.min_y;
if (right) *right = font->width - state.max_x - 1;
if (bottom) *bottom = font->height - state.max_y - 1;
}
}
/* Avoids a dependency on libc */ /* Avoids a dependency on libc */
static bool strequals(const char *a, const char *b) static bool strequals(const char *a, const char *b)
{ {
@ -133,7 +88,7 @@ const struct mf_font_s *mf_find_font(const char *name)
return 0; return 0;
} }
const struct mf_font_list_s *mf_get_font_list(void) const struct mf_font_list_s *mf_get_font_list()
{ {
return MF_INCLUDED_FONTS; return MF_INCLUDED_FONTS;
} }

View file

@ -57,13 +57,13 @@ struct mf_font_s
/* Function to get character width. Should return 0 if character is /* Function to get character width. Should return 0 if character is
* not found. */ * not found. */
gU8 (*character_width)(const struct mf_font_s *font, mf_char character); gU8 (*character_width)(const struct mf_font_s *font, gU16 character);
/* Function to render a character. Returns the character width or 0 if /* Function to render a character. Returns the character width or 0 if
* character is not found. */ * character is not found. */
gU8 (*render_character)(const struct mf_font_s *font, gU8 (*render_character)(const struct mf_font_s *font,
gI16 x0, gI16 y0, gI16 x0, gI16 y0,
mf_char character, gU16 character,
mf_pixel_callback_t callback, mf_pixel_callback_t callback,
void *state); void *state);
}; };
@ -101,32 +101,13 @@ MF_EXTERN gU8 mf_render_character(const struct mf_font_s *font,
* data, but rather the tracking width. * data, but rather the tracking width.
* *
* font: Pointer to the font definition. * font: Pointer to the font definition.
* character: The character code (unicode) to check width of. * character: The character code (unicode) to render.
* *
* Returns width of the character in pixels. * Returns width of the character in pixels.
*/ */
MF_EXTERN gU8 mf_character_width(const struct mf_font_s *font, MF_EXTERN gU8 mf_character_width(const struct mf_font_s *font,
mf_char character); mf_char character);
/* Count the amount of white space at the borders of a character.
*
* E.g. if the font->width and font->height are 10x20, but the character
* is only a thin line at the very left edge, this function will return
* (0, 0, 9, 0). If the character is fully whitespace, the function will
* return (10, 20, 0, 0).
*
* font: Pointer to the font definition.
* character: The character code (unicode) to check white space of.
* left: Number of empty rows at left edge. Can be NULL.
* top: Number of empty rows at top edge. Can be NULL.
* right: Number of empty rows at right edge. Can be NULL.
* bottom: Number of empty rows at bottom edge. Can be NULL.
*/
MF_EXTERN void mf_character_whitespace(const struct mf_font_s *font,
mf_char character,
gU8 *left, gU8 *top,
gU8 *right, gU8 *bottom);
/* Find a font based on name. The name can be either short name or full name. /* Find a font based on name. The name can be either short name or full name.
* Note: You can pass MF_INCLUDED_FONTS to search among all the included .h * Note: You can pass MF_INCLUDED_FONTS to search among all the included .h
* files. * files.

View file

@ -247,6 +247,7 @@ void mf_render_justified(const struct mf_font_s *font,
mf_character_callback_t callback, mf_character_callback_t callback,
void *state) void *state)
{ {
(void) width;
mf_render_aligned(font, x0, y0, MF_ALIGN_LEFT, text, count, callback, state); mf_render_aligned(font, x0, y0, MF_ALIGN_LEFT, text, count, callback, state);
} }

View file

@ -28,7 +28,7 @@
MF_EXTERN gI8 mf_compute_kerning(const struct mf_font_s *font, MF_EXTERN gI8 mf_compute_kerning(const struct mf_font_s *font,
mf_char c1, mf_char c2); mf_char c1, mf_char c2);
#else #else
#define mf_compute_kerning(f,c1,c2) (0) #define mf_compute_kerning(font, c1, c2) 0
#endif #endif
#endif #endif

View file

@ -46,7 +46,7 @@ static const gU8 *find_glyph(const struct mf_rlefont_s *font,
index = character - range->first_char; index = character - range->first_char;
if (character >= range->first_char && index < range->char_count) if (character >= range->first_char && index < range->char_count)
{ {
gU16 offset = pgm_read_word(range->glyph_offsets + index); unsigned offset = range->glyph_offsets[index];
return &range->glyph_data[offset]; return &range->glyph_data[offset];
} }
} }
@ -75,7 +75,7 @@ static void write_pixels(struct renderstate_r *rstate, gU16 count,
gU8 rowlen; gU8 rowlen;
/* Write row-by-row if the run spans multiple rows. */ /* Write row-by-row if the run spans multiple rows. */
while ((int32_t)rstate->x + count >= rstate->x_end) while (rstate->x + count >= rstate->x_end)
{ {
rowlen = rstate->x_end - rstate->x; rowlen = rstate->x_end - rstate->x;
rstate->callback(rstate->x, rstate->y, rowlen, alpha, rstate->state); rstate->callback(rstate->x, rstate->y, rowlen, alpha, rstate->state);
@ -108,13 +108,13 @@ static void write_rle_dictentry(const struct mf_rlefont_s *font,
struct renderstate_r *rstate, struct renderstate_r *rstate,
gU8 index) gU8 index)
{ {
gU16 offset = pgm_read_word(font->dictionary_offsets + index); gU16 offset = font->dictionary_offsets[index];
gU16 length = pgm_read_word(font->dictionary_offsets + index + 1) - offset; gU16 length = font->dictionary_offsets[index + 1] - offset;
gU16 i; gU16 i;
for (i = 0; i < length; i++) for (i = 0; i < length; i++)
{ {
gU8 code = pgm_read_byte(font->dictionary_data + offset + i); gU8 code = font->dictionary_data[offset + i];
if ((code & RLE_CODEMASK) == RLE_ZEROS) if ((code & RLE_CODEMASK) == RLE_ZEROS)
{ {
skip_pixels(rstate, code & RLE_VALMASK); skip_pixels(rstate, code & RLE_VALMASK);
@ -159,10 +159,10 @@ static void write_bin_codeword(const struct mf_rlefont_s *font,
struct renderstate_r *rstate, struct renderstate_r *rstate,
gU8 code) gU8 code)
{ {
(void)font;
gU8 bitcount = fillentry_bitcount(code); gU8 bitcount = fillentry_bitcount(code);
gU8 byte = code - DICT_START7BIT; gU8 byte = code - DICT_START7BIT;
gU8 runlen = 0; gU8 runlen = 0;
(void) font;
while (bitcount--) while (bitcount--)
{ {
@ -193,11 +193,7 @@ static void write_ref_codeword(const struct mf_rlefont_s *font,
struct renderstate_r *rstate, struct renderstate_r *rstate,
gU8 code) gU8 code)
{ {
if (code == 0) if (code <= 15)
{
skip_pixels(rstate, 1);
}
else if (code <= 15)
{ {
write_pixels(rstate, 1, 0x11 * code); write_pixels(rstate, 1, 0x11 * code);
} }
@ -225,13 +221,13 @@ static void write_ref_dictentry(const struct mf_rlefont_s *font,
struct renderstate_r *rstate, struct renderstate_r *rstate,
gU8 index) gU8 index)
{ {
gU16 offset = pgm_read_word(font->dictionary_offsets + index); gU16 offset = font->dictionary_offsets[index];
gU16 length = pgm_read_word(font->dictionary_offsets + index + 1) - offset; gU16 length = font->dictionary_offsets[index + 1] - offset;
gU16 i; gU16 i;
for (i = 0; i < length; i++) for (i = 0; i < length; i++)
{ {
gU8 code = pgm_read_byte(font->dictionary_data + offset + i); gU8 code = font->dictionary_data[offset + i];
write_ref_codeword(font, rstate, code); write_ref_codeword(font, rstate, code);
} }
} }
@ -254,7 +250,7 @@ static void write_glyph_codeword(const struct mf_rlefont_s *font,
gU8 mf_rlefont_render_character(const struct mf_font_s *font, gU8 mf_rlefont_render_character(const struct mf_font_s *font,
int16_t x0, int16_t y0, gI16 x0, gI16 y0,
gU16 character, gU16 character,
mf_pixel_callback_t callback, mf_pixel_callback_t callback,
void *state) void *state)
@ -271,14 +267,14 @@ gU8 mf_rlefont_render_character(const struct mf_font_s *font,
rstate.callback = callback; rstate.callback = callback;
rstate.state = state; rstate.state = state;
p = find_glyph((struct mf_rlefont_s*)font, character); p = find_glyph((struct mf_rlefont_s*)font, character);
if (!p) if (!p)
return 0; return 0;
width = pgm_read_byte(p++); width = *p++;
while (rstate.y < rstate.y_end) while (rstate.y < rstate.y_end)
{ {
write_glyph_codeword((struct mf_rlefont_s*)font, &rstate, pgm_read_byte(p++)); write_glyph_codeword((struct mf_rlefont_s*)font, &rstate, *p++);
} }
return width; return width;
@ -292,6 +288,7 @@ gU8 mf_rlefont_character_width(const struct mf_font_s *font,
if (!p) if (!p)
return 0; return 0;
#endif //MF_NO_COMPILE return *p;
return pgm_read_byte(p);
} }
#endif //MF_NO_COMPILE

View file

@ -36,7 +36,7 @@ static void scaled_pixel_callback(gI16 x, gI16 y, gU8 count,
} }
gU8 mf_scaled_character_width(const struct mf_font_s *font, gU8 mf_scaled_character_width(const struct mf_font_s *font,
mf_char character) gU16 character)
{ {
struct mf_scaledfont_s *sfont = (struct mf_scaledfont_s*)font; struct mf_scaledfont_s *sfont = (struct mf_scaledfont_s*)font;
gU8 basewidth; gU8 basewidth;
@ -47,8 +47,8 @@ gU8 mf_scaled_character_width(const struct mf_font_s *font,
} }
gU8 mf_scaled_render_character(const struct mf_font_s *font, gU8 mf_scaled_render_character(const struct mf_font_s *font,
int16_t x0, int16_t y0, gI16 x0, gI16 y0,
mf_char character, gU16 character,
mf_pixel_callback_t callback, mf_pixel_callback_t callback,
void *state) void *state)
{ {

View file

@ -27,14 +27,16 @@ MF_EXTERN void mf_scale_font(struct mf_scaledfont_s *newfont,
const struct mf_font_s *basefont, const struct mf_font_s *basefont,
gU8 x_scale, gU8 y_scale); gU8 x_scale, gU8 y_scale);
#ifdef MF_SCALEDFONT_INTERNALS
/* Internal functions, don't use these directly. */
MF_EXTERN gU8 mf_scaled_render_character(const struct mf_font_s *font,
gI16 x0, gI16 y0,
gU16 character,
mf_pixel_callback_t callback,
void *state);
MF_EXTERN gU8 mf_scaled_character_width(const struct mf_font_s *font, MF_EXTERN gU8 mf_scaled_character_width(const struct mf_font_s *font,
mf_char character); gU16 character);
#endif
MF_EXTERN gU8 mf_scaled_render_character(const struct mf_font_s *font,
int16_t x0, int16_t y0,
mf_char character,
mf_pixel_callback_t callback,
void *state);
#endif #endif

View file

@ -43,7 +43,7 @@ static bool get_wordlen(const struct mf_font_s *font, mf_str *text,
result->chars++; result->chars++;
result->word += mf_character_width(font, c); result->word += mf_character_width(font, c);
prev = *text; prev = *text;
c = mf_getchar(text); c = mf_getchar(text);
} }
@ -56,10 +56,10 @@ static bool get_wordlen(const struct mf_font_s *font, mf_str *text,
else if (c == '\t') else if (c == '\t')
result->space += mf_character_width(font, 'm') * MF_TABSIZE; result->space += mf_character_width(font, 'm') * MF_TABSIZE;
else if (c == '\n') { else if (c == '\n') {
/* Special case for newlines, skip the character then break. */ /* Special case for newlines, skip the character then break. */
prev = *text; prev = *text;
break; break;
} }
prev = *text; prev = *text;
c = mf_getchar(text); c = mf_getchar(text);
@ -239,7 +239,6 @@ void mf_wordwrap(const struct mf_font_s *font, gI16 width,
void mf_wordwrap(const struct mf_font_s *font, gI16 width, void mf_wordwrap(const struct mf_font_s *font, gI16 width,
mf_str text, mf_line_callback_t callback, void *state) mf_str text, mf_line_callback_t callback, void *state)
{ {
mf_str orig = text;
mf_str linestart; mf_str linestart;
/* Current line width and character count */ /* Current line width and character count */

View file

@ -1,9 +0,0 @@
set(ROOT_PATH ${UGFX_ROOT}/src/gdriver)
list(APPEND ugfx_INCLUDE_DIRS
${ROOT_PATH}
)
list(APPEND ugfx_SOURCES
${ROOT_PATH}/gdriver.c
)

View file

@ -1,9 +0,0 @@
set(ROOT_PATH ${UGFX_ROOT}/src/gevent)
list(APPEND ugfx_INCLUDE_DIRS
${ROOT_PATH}
)
list(APPEND ugfx_SOURCES
${ROOT_PATH}/gevent.c
)

View file

@ -1,24 +0,0 @@
set(ROOT_PATH ${UGFX_ROOT}/src/gfile)
list(APPEND ugfx_INCLUDE_DIRS
${ROOT_PATH}
)
list(APPEND ugfx_SOURCES
${ROOT_PATH}/gfile.c
${ROOT_PATH}/gfile_fs_native.c
${ROOT_PATH}/gfile_fs_ram.c
${ROOT_PATH}/gfile_fs_rom.c
${ROOT_PATH}/gfile_fs_fatfs.c
${ROOT_PATH}/gfile_fs_petitfs.c
${ROOT_PATH}/gfile_fs_mem.c
${ROOT_PATH}/gfile_fs_chibios.c
${ROOT_PATH}/gfile_fs_strings.c
${ROOT_PATH}/gfile_printg.c
${ROOT_PATH}/gfile_scang.c
${ROOT_PATH}/gfile_stdio.c
${ROOT_PATH}/gfile_fatfs_wrapper.c
${ROOT_PATH}/gfile_fatfs_diskio_chibios.c
${ROOT_PATH}/gfile_petitfs_wrapper.c
${ROOT_PATH}/gfile_petitfs_diskio_chibios.c
)

View file

@ -54,8 +54,7 @@ static char *ltoa_wd(char *p, long num, unsigned radix, long divisor) {
int vfnprintg(GFILE *f, int maxlen, const char *fmt, va_list arg) { int vfnprintg(GFILE *f, int maxlen, const char *fmt, va_list arg) {
int ret; int ret;
char *p, c, filler; char *p, *s, c, filler;
const char *s;
int i, precision, width; int i, precision, width;
gBool is_long, left_align; gBool is_long, left_align;
long l; long l;
@ -81,7 +80,7 @@ int vfnprintg(GFILE *f, int maxlen, const char *fmt, va_list arg) {
} }
fmt++; fmt++;
s = p = tmpbuf; p = s = tmpbuf;
left_align = gFalse; left_align = gFalse;
filler = ' '; filler = ' ';
width = 0; width = 0;
@ -141,7 +140,7 @@ int vfnprintg(GFILE *f, int maxlen, const char *fmt, va_list arg) {
s = "(null)"; s = "(null)";
if (precision == 0) if (precision == 0)
precision = 32767; precision = 32767;
for (p = (char*)s; *p && (--precision >= 0); p++); for (p = s; *p && (--precision >= 0); p++);
break; break;
case 'D': case 'D':
case 'd': case 'd':

View file

@ -1,14 +0,0 @@
set(ROOT_PATH ${UGFX_ROOT}/src/ginput)
list(APPEND ugfx_INCLUDE_DIRS
${ROOT_PATH}
)
list(APPEND ugfx_SOURCES
${ROOT_PATH}/ginput.c
${ROOT_PATH}/ginput_mouse.c
${ROOT_PATH}/ginput_keyboard.c
${ROOT_PATH}/ginput_keyboard_microcode.c
${ROOT_PATH}/ginput_toggle.c
${ROOT_PATH}/ginput_dial.c
)

View file

@ -1,13 +0,0 @@
set(ROOT_PATH ${UGFX_ROOT}/src/gmisc)
list(APPEND ugfx_INCLUDE_DIRS
${ROOT_PATH}
)
list(APPEND ugfx_SOURCES
${ROOT_PATH}/gmisc.c
${ROOT_PATH}/gmisc_arrayops.c
${ROOT_PATH}/gmisc_matrix2d.c
${ROOT_PATH}/gmisc_trig.c
${ROOT_PATH}/gmisc_hittest.c
)

View file

@ -1,22 +0,0 @@
set(ROOT_PATH ${UGFX_ROOT}/src/gos)
list(APPEND ugfx_INCLUDE_DIRS
${ROOT_PATH}
)
list(APPEND ugfx_SOURCES
${ROOT_PATH}/gos_chibios.c
${ROOT_PATH}/gos_freertos.c
${ROOT_PATH}/gos_win32.c
${ROOT_PATH}/gos_linux.c
${ROOT_PATH}/gos_osx.c
${ROOT_PATH}/gos_raw32.c
${ROOT_PATH}/gos_ecos.c
${ROOT_PATH}/gos_rawrtos.c
${ROOT_PATH}/gos_arduino.c
${ROOT_PATH}/gos_cmsis.c
${ROOT_PATH}/gos_nios.c
${ROOT_PATH}/gos_zephyr.c
${ROOT_PATH}/gos_x_threads.c
${ROOT_PATH}/gos_x_heap.c
)

View file

@ -468,8 +468,6 @@
#include "gos_win32.h" #include "gos_win32.h"
#elif GFX_USE_OS_LINUX #elif GFX_USE_OS_LINUX
#include "gos_linux.h" #include "gos_linux.h"
#elif GFX_USE_OS_FREEBSD
#include "gos_linux.h"
#elif GFX_USE_OS_OSX #elif GFX_USE_OS_OSX
#include "gos_osx.h" #include "gos_osx.h"
#elif GFX_USE_OS_RAW32 #elif GFX_USE_OS_RAW32

View file

@ -11,7 +11,7 @@
#include <string.h> #include <string.h>
#if CH_KERNEL_MAJOR < 2 || CH_KERNEL_MAJOR > 7 #if CH_KERNEL_MAJOR < 2 || CH_KERNEL_MAJOR > 6
#error "GOS: Unsupported version of ChibiOS" #error "GOS: Unsupported version of ChibiOS"
#endif #endif

View file

@ -49,12 +49,7 @@ typedef tprio_t gThreadpriority;
#define GFX_THREAD_STACK(name, sz) WORKING_AREA(name, sz) #define GFX_THREAD_STACK(name, sz) WORKING_AREA(name, sz)
#define GFX_THREAD_FUNCTION(fnName, param) gThreadreturn fnName(void *param) #define GFX_THREAD_FUNCTION(fnName, param) gThreadreturn fnName(void *param)
#define gfxThreadReturn(retval) return retval
#if CH_KERNEL_MAJOR >= 6
#define gfxThreadReturn(retval) return
#else
#define gfxThreadReturn(retval) return retval
#endif
#if CH_KERNEL_MAJOR <= 2 #if CH_KERNEL_MAJOR <= 2
typedef struct { typedef struct {

View file

@ -10,7 +10,7 @@
#include "../../gfx.h" #include "../../gfx.h"
#if GFX_USE_OS_LINUX || GFX_USE_OS_FREEBSD #if GFX_USE_OS_LINUX
// Linux seems to have deprecated pthread_yield() and now says to use sched_yield() // Linux seems to have deprecated pthread_yield() and now says to use sched_yield()
#define USE_SCHED_NOT_PTHREAD_YIELD GFXON #define USE_SCHED_NOT_PTHREAD_YIELD GFXON
@ -238,4 +238,4 @@ gThreadreturn gfxThreadWait(gThread thread) {
} }
#endif // GFX_USE_POSIX_SEMAPHORES #endif // GFX_USE_POSIX_SEMAPHORES
#endif /* GFX_USE_OS_LINUX || GFX_USE_OS_FREEBSD */ #endif /* GFX_USE_OS_LINUX */

View file

@ -8,7 +8,7 @@
#ifndef _GOS_LINUX_H #ifndef _GOS_LINUX_H
#define _GOS_LINUX_H #define _GOS_LINUX_H
#if GFX_USE_OS_LINUX || GFX_USE_OS_FREEBSD #if GFX_USE_OS_LINUX
// We don't put this in the general sys_options.h as it is Linux specific. // We don't put this in the general sys_options.h as it is Linux specific.
#ifndef GFX_USE_POSIX_SEMAPHORES #ifndef GFX_USE_POSIX_SEMAPHORES
@ -88,6 +88,6 @@ void gfxSemSignal(gSem *psem);
gThread gfxThreadCreate(void *stackarea, gMemSize stacksz, gThreadpriority prio, GFX_THREAD_FUNCTION((*fn),p), void *param); gThread gfxThreadCreate(void *stackarea, gMemSize stacksz, gThreadpriority prio, GFX_THREAD_FUNCTION((*fn),p), void *param);
gThreadreturn gfxThreadWait(gThread thread); gThreadreturn gfxThreadWait(gThread thread);
#endif /* GFX_USE_OS_LINUX || GFX_USE_OS_FREEBSD */ #endif /* GFX_USE_OS_LINUX */
#endif /* _GOS_LINUX_H */ #endif /* _GOS_LINUX_H */

View file

@ -48,13 +48,6 @@
#ifndef GFX_USE_OS_LINUX #ifndef GFX_USE_OS_LINUX
#define GFX_USE_OS_LINUX GFXOFF #define GFX_USE_OS_LINUX GFXOFF
#endif #endif
/**
* @brief Use a FreeBSD based system running X11
* @details Defaults to GFXOFF
*/
#ifndef GFX_USE_OS_FREEBSD
#define GFX_USE_OS_FREEBSD GFXOFF
#endif
/** /**
* @brief Use a Mac OS-X based system * @brief Use a Mac OS-X based system
* @details Defaults to GFXOFF * @details Defaults to GFXOFF

View file

@ -16,11 +16,11 @@
#ifndef _GOS_RULES_H #ifndef _GOS_RULES_H
#define _GOS_RULES_H #define _GOS_RULES_H
#if !GFX_USE_OS_CHIBIOS && !GFX_USE_OS_WIN32 && !GFX_USE_OS_LINUX && !GFX_USE_OS_FREEBSD && !GFX_USE_OS_OSX && !GFX_USE_OS_RAW32 && !GFX_USE_OS_FREERTOS && !GFX_USE_OS_ECOS && !GFX_USE_OS_RAWRTOS && !GFX_USE_OS_ARDUINO && !GFX_USE_OS_CMSIS && !GFX_USE_OS_CMSIS2 && !GFX_USE_OS_KEIL && !GFX_USE_OS_RTX5 && !GFX_USE_OS_NIOS && !GFX_USE_OS_ZEPHYR && !GFX_USE_OS_QT #if !GFX_USE_OS_CHIBIOS && !GFX_USE_OS_WIN32 && !GFX_USE_OS_LINUX && !GFX_USE_OS_OSX && !GFX_USE_OS_RAW32 && !GFX_USE_OS_FREERTOS && !GFX_USE_OS_ECOS && !GFX_USE_OS_RAWRTOS && !GFX_USE_OS_ARDUINO && !GFX_USE_OS_CMSIS && !GFX_USE_OS_CMSIS2 && !GFX_USE_OS_KEIL && !GFX_USE_OS_RTX5 && !GFX_USE_OS_NIOS && !GFX_USE_OS_ZEPHYR && !GFX_USE_OS_QT
#error "GOS: No operating system has been defined." #error "GOS: No operating system has been defined."
#endif #endif
#if GFX_USE_OS_CHIBIOS + GFX_USE_OS_WIN32 + GFX_USE_OS_LINUX + GFX_USE_OS_FREEBSD + GFX_USE_OS_OSX + GFX_USE_OS_RAW32 + GFX_USE_OS_FREERTOS + GFX_USE_OS_ECOS + GFX_USE_OS_RAWRTOS + GFX_USE_OS_ARDUINO + GFX_USE_OS_CMSIS + GFX_USE_OS_CMSIS2 + GFX_USE_OS_KEIL + GFX_USE_OS_RTX5 + GFX_USE_OS_NIOS + GFX_USE_OS_ZEPHYR + GFX_USE_OS_QT != 1 * GFXON #if GFX_USE_OS_CHIBIOS + GFX_USE_OS_WIN32 + GFX_USE_OS_LINUX + GFX_USE_OS_OSX + GFX_USE_OS_RAW32 + GFX_USE_OS_FREERTOS + GFX_USE_OS_ECOS + GFX_USE_OS_RAWRTOS + GFX_USE_OS_ARDUINO + GFX_USE_OS_CMSIS + GFX_USE_OS_CMSIS2 + GFX_USE_OS_KEIL + GFX_USE_OS_RTX5 + GFX_USE_OS_NIOS + GFX_USE_OS_ZEPHYR + GFX_USE_OS_QT != 1 * GFXON
#error "GOS: More than one operation system has been defined as GFXON." #error "GOS: More than one operation system has been defined as GFXON."
#endif #endif
@ -33,7 +33,7 @@
#endif #endif
#if GFX_EMULATE_MALLOC #if GFX_EMULATE_MALLOC
#if GFX_USE_OS_WIN32 || GFX_USE_OS_LINUX || GFX_USE_OS_FREEBSD || GFX_USE_OS_OSX || GFX_USE_OS_ECOS || \ #if GFX_USE_OS_WIN32 || GFX_USE_OS_LINUX || GFX_USE_OS_OSX || GFX_USE_OS_ECOS || \
(GFX_OS_HEAP_SIZE == 0 && (GFX_USE_OS_RAW32 || GFX_USE_OS_ARDUINO || GFX_USE_OS_CMSIS || GFX_USE_OS_CMSIS2 || GFX_USE_OS_KEIL || GFX_USE_OS_RTX5)) (GFX_OS_HEAP_SIZE == 0 && (GFX_USE_OS_RAW32 || GFX_USE_OS_ARDUINO || GFX_USE_OS_CMSIS || GFX_USE_OS_CMSIS2 || GFX_USE_OS_KEIL || GFX_USE_OS_RTX5))
#if GFX_DISPLAY_RULE_WARNINGS #if GFX_DISPLAY_RULE_WARNINGS
#if GFX_COMPILER_WARNING_TYPE == GFX_COMPILER_WARNING_DIRECT #if GFX_COMPILER_WARNING_TYPE == GFX_COMPILER_WARNING_DIRECT

View file

@ -6,7 +6,7 @@
*/ */
/** /**
* @file src/gos/gos_zephyr.h * @file src/gos/gos_zepyhr.h
* @brief GOS - Operating System Support header file for Zephyr RTOS. * @brief GOS - Operating System Support header file for Zephyr RTOS.
* Zephyr SDK 0.9.1 * Zephyr SDK 0.9.1
*/ */

View file

@ -321,7 +321,7 @@ void _gqueueDeinit(void)
} }
gBool gfxQueueFSyncPut(gfxQueueFSync *pqueue, gfxQueueFSyncItem *pitem, gDelay ms) { gBool gfxQueueFSyncPut(gfxQueueFSync *pqueue, gfxQueueFSyncItem *pitem, gDelay ms) {
if (!pitem) return gFalse; // Safety if (!pitem) return; // Safety
gfxSemInit(&pitem->sem, 0, 1); gfxSemInit(&pitem->sem, 0, 1);
pitem->next = 0; pitem->next = 0;
@ -340,7 +340,7 @@ void _gqueueDeinit(void)
} }
gBool gfxQueueFSyncPush(gfxQueueFSync *pqueue, gfxQueueFSyncItem *pitem, gDelay ms) { gBool gfxQueueFSyncPush(gfxQueueFSync *pqueue, gfxQueueFSyncItem *pitem, gDelay ms) {
if (!pitem) return gFalse; // Safety if (!pitem) return; // Safety
gfxSemInit(&pitem->sem, 0, 1); gfxSemInit(&pitem->sem, 0, 1);
gfxSystemLock(); gfxSystemLock();
@ -356,7 +356,7 @@ void _gqueueDeinit(void)
} }
gBool gfxQueueFSyncInsert(gfxQueueFSync *pqueue, gfxQueueFSyncItem *pitem, gfxQueueFSyncItem *pafter, gDelay ms) { gBool gfxQueueFSyncInsert(gfxQueueFSync *pqueue, gfxQueueFSyncItem *pitem, gfxQueueFSyncItem *pafter, gDelay ms) {
if (!pitem) return gFalse; // Safety if (!pitem) return; // Safety
gfxSemInit(&pitem->sem, 0, 1); gfxSemInit(&pitem->sem, 0, 1);
gfxSystemLock(); gfxSystemLock();

View file

@ -1,9 +0,0 @@
set(ROOT_PATH ${UGFX_ROOT}/src/gqueue)
list(APPEND ugfx_INCLUDE_DIRS
${ROOT_PATH}
)
list(APPEND ugfx_SOURCES
${ROOT_PATH}/gqueue.c
)

View file

@ -1,9 +0,0 @@
set(ROOT_PATH ${UGFX_ROOT}/src/gtimer)
list(APPEND ugfx_INCLUDE_DIRS
${ROOT_PATH}
)
list(APPEND ugfx_SOURCES
${ROOT_PATH}/gtimer.c
)

View file

@ -51,7 +51,7 @@ const char* gtransString(const char* string)
return _languageCurrent->strings[i]; return _languageCurrent->strings[i];
} }
const char* gtransIndex(gU32 index) const char* gtransIndex(unsigned index)
{ {
if (!_languageCurrent) { if (!_languageCurrent) {
return 0; return 0;

View file

@ -1,9 +0,0 @@
set(ROOT_PATH ${UGFX_ROOT}/src/gtrans)
list(APPEND ugfx_INCLUDE_DIRS
${ROOT_PATH}
)
list(APPEND ugfx_SOURCES
${ROOT_PATH}/gtrans.c
)

View file

@ -27,7 +27,7 @@
* @brief A table containing translated strings. * @brief A table containing translated strings.
*/ */
typedef struct transTable { typedef struct transTable {
gU32 numEntries; /**< The number of strings that this table contains */ unsigned numEntries; /**< The number of strings that this table contains */
const char** strings; /**< The translated strings */ const char** strings; /**< The translated strings */
} transTable; } transTable;
@ -59,7 +59,7 @@ const char* gtransString(const char* string);
* *
* @return The string at the given index of the current language or 0 if it doesn't exist. * @return The string at the given index of the current language or 0 if it doesn't exist.
*/ */
const char* gtransIndex(gU32 index); const char* gtransIndex(unsigned index);
/** /**
* @brief Set the base language. * @brief Set the base language.

Some files were not shown because too many files have changed in this diff Show more