Change Shelly Dimmer fw upgrade

Change Shelly Dimmer fw upgrade using WebGUI Firmware Upgrade and file from folder `tools/fw_shd_stm32/`
This commit is contained in:
Theo Arends 2020-11-17 12:25:48 +01:00
parent 8fab895eca
commit 92f067af59
18 changed files with 148 additions and 6451 deletions

View File

@ -11,6 +11,7 @@ All notable changes to this project will be documented in this file.
- KNX DPT9 (16-bit float) to DPT14 (32-bit float) by Adrian Scillato (#9811, #9888) - KNX DPT9 (16-bit float) to DPT14 (32-bit float) by Adrian Scillato (#9811, #9888)
### Changed ### Changed
- Shelly Dimmer fw upgrade using WebGUI Firmware Upgrade and file from folder `tools/fw_shd_stm32/`
### Fixed ### Fixed

View File

@ -0,0 +1,64 @@
/*
stm32flash - Open Source ST STM32 flash program for Arduino
Copyright (C) 2010 Geoffrey McRae <geoff@spacevs.com>
Copyright (C) 2014-2015 Antonio Borneo <borneo.antonio@gmail.com>
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
#define SZ_128 0x00000080
#define SZ_256 0x00000100
#define SZ_1K 0x00000400
#define SZ_2K 0x00000800
#define SZ_16K 0x00004000
#define SZ_32K 0x00008000
#define SZ_64K 0x00010000
#define SZ_128K 0x00020000
#define SZ_256K 0x00040000
/*
* Page-size for page-by-page flash erase.
* Arrays are zero terminated; last non-zero value is automatically repeated
*/
/* fixed size pages */
static uint32_t p_128[] = { SZ_128, 0 };
static uint32_t p_256[] = { SZ_256, 0 };
static uint32_t p_1k[] = { SZ_1K, 0 };
static uint32_t p_2k[] = { SZ_2K, 0 };
/* F2 and F4 page size */
static uint32_t f2f4[] = { SZ_16K, SZ_16K, SZ_16K, SZ_16K, SZ_64K, SZ_128K, 0 };
/* F4 dual bank page size */
static uint32_t f4db[] = {
SZ_16K, SZ_16K, SZ_16K, SZ_16K, SZ_64K, SZ_128K, SZ_128K, SZ_128K,
SZ_16K, SZ_16K, SZ_16K, SZ_16K, SZ_64K, SZ_128K, 0
};
/* F7 page size */
static uint32_t f7[] = { SZ_32K, SZ_32K, SZ_32K, SZ_32K, SZ_128K, SZ_256K, 0 };
/*
* Device table, corresponds to the "Bootloader device-dependant parameters"
* table in ST document AN2606.
* Note that the option bytes upper range is inclusive!
*/
const stm32_dev_t devices[] = {
/* ID SRAM-address-range FLASH-address-range PPS PSize Option-byte-addr-range System-mem-addr-range Flags */
/* F0 */
// "STM32F030x8/F05xxx" = Shelly Dimmer 2
{0x440, 0x20000800, 0x20002000, 0x08000000, 0x08010000, 4, p_1k , 0x1FFFF800, 0x1FFFF80F, 0x1FFFEC00, 0x1FFFF800, 0},
// "STM32F03xx4/6" = Shelly Dimmer 1
{0x444, 0x20000800, 0x20001000, 0x08000000, 0x08008000, 4, p_1k , 0x1FFFF800, 0x1FFFF80F, 0x1FFFEC00, 0x1FFFF800, 0},
{0x0}
};

View File

@ -4,7 +4,7 @@
#define STM32_FLASH_DEBUG 0 #define STM32_FLASH_DEBUG 0
#if STM32_FLASH_DEBUG #if STM32_FLASH_DEBUG
#define DEBUG_MSG(...) AddLog_P2(LOG_LEVEL_DEBUG, __VA_ARGS__) #define DEBUG_MSG(...) AddLog_P(LOG_LEVEL_DEBUG, __VA_ARGS__)
#else #else
#define DEBUG_MSG(...) #define DEBUG_MSG(...)
#endif #endif

View File

@ -83,7 +83,7 @@ struct stm32 {
struct stm32_dev { struct stm32_dev {
uint16_t id; uint16_t id;
const char *name; // const char *name;
uint32_t ram_start, ram_end; uint32_t ram_start, ram_end;
uint32_t fl_start, fl_end; uint32_t fl_start, fl_end;
uint16_t fl_pps; // pages per sector uint16_t fl_pps; // pages per sector

View File

@ -1,108 +0,0 @@
/*
stm32flash - Open Source ST STM32 flash program for Arduino
Copyright (C) 2010 Geoffrey McRae <geoff@spacevs.com>
Copyright (C) 2014-2015 Antonio Borneo <borneo.antonio@gmail.com>
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
#define SZ_128 0x00000080
#define SZ_256 0x00000100
#define SZ_1K 0x00000400
#define SZ_2K 0x00000800
#define SZ_16K 0x00004000
#define SZ_32K 0x00008000
#define SZ_64K 0x00010000
#define SZ_128K 0x00020000
#define SZ_256K 0x00040000
/*
* Page-size for page-by-page flash erase.
* Arrays are zero terminated; last non-zero value is automatically repeated
*/
/* fixed size pages */
static uint32_t p_128[] = { SZ_128, 0 };
static uint32_t p_256[] = { SZ_256, 0 };
static uint32_t p_1k[] = { SZ_1K, 0 };
static uint32_t p_2k[] = { SZ_2K, 0 };
/* F2 and F4 page size */
static uint32_t f2f4[] = { SZ_16K, SZ_16K, SZ_16K, SZ_16K, SZ_64K, SZ_128K, 0 };
/* F4 dual bank page size */
static uint32_t f4db[] = {
SZ_16K, SZ_16K, SZ_16K, SZ_16K, SZ_64K, SZ_128K, SZ_128K, SZ_128K,
SZ_16K, SZ_16K, SZ_16K, SZ_16K, SZ_64K, SZ_128K, 0
};
/* F7 page size */
static uint32_t f7[] = { SZ_32K, SZ_32K, SZ_32K, SZ_32K, SZ_128K, SZ_256K, 0 };
/*
* Device table, corresponds to the "Bootloader device-dependant parameters"
* table in ST document AN2606.
* Note that the option bytes upper range is inclusive!
*/
const stm32_dev_t devices[] = {
/* ID "name" SRAM-address-range FLASH-address-range PPS PSize Option-byte-addr-range System-mem-addr-range Flags */
/* F0 */
{0x440, "STM32F030x8/F05xxx" , 0x20000800, 0x20002000, 0x08000000, 0x08010000, 4, p_1k , 0x1FFFF800, 0x1FFFF80F, 0x1FFFEC00, 0x1FFFF800, 0},
{0x442, "STM32F030xC/F09xxx" , 0x20001800, 0x20008000, 0x08000000, 0x08040000, 2, p_2k , 0x1FFFF800, 0x1FFFF80F, 0x1FFFC800, 0x1FFFF800, F_OBLL},
{0x444, "STM32F03xx4/6" , 0x20000800, 0x20001000, 0x08000000, 0x08008000, 4, p_1k , 0x1FFFF800, 0x1FFFF80F, 0x1FFFEC00, 0x1FFFF800, 0},
{0x445, "STM32F04xxx/F070x6" , 0x20001800, 0x20001800, 0x08000000, 0x08008000, 4, p_1k , 0x1FFFF800, 0x1FFFF80F, 0x1FFFC400, 0x1FFFF800, 0},
{0x448, "STM32F070xB/F071xx/F72xx" , 0x20001800, 0x20004000, 0x08000000, 0x08020000, 2, p_2k , 0x1FFFF800, 0x1FFFF80F, 0x1FFFC800, 0x1FFFF800, 0},
/* F1 */
{0x412, "STM32F10xxx Low-density" , 0x20000200, 0x20002800, 0x08000000, 0x08008000, 4, p_1k , 0x1FFFF800, 0x1FFFF80F, 0x1FFFF000, 0x1FFFF800, 0},
{0x410, "STM32F10xxx Medium-density" , 0x20000200, 0x20005000, 0x08000000, 0x08020000, 4, p_1k , 0x1FFFF800, 0x1FFFF80F, 0x1FFFF000, 0x1FFFF800, 0},
{0x414, "STM32F10xxx High-density" , 0x20000200, 0x20010000, 0x08000000, 0x08080000, 2, p_2k , 0x1FFFF800, 0x1FFFF80F, 0x1FFFF000, 0x1FFFF800, 0},
{0x420, "STM32F10xxx Medium-density VL" , 0x20000200, 0x20002000, 0x08000000, 0x08020000, 4, p_1k , 0x1FFFF800, 0x1FFFF80F, 0x1FFFF000, 0x1FFFF800, 0},
{0x428, "STM32F10xxx High-density VL" , 0x20000200, 0x20008000, 0x08000000, 0x08080000, 2, p_2k , 0x1FFFF800, 0x1FFFF80F, 0x1FFFF000, 0x1FFFF800, 0},
{0x418, "STM32F105xx/F107xx" , 0x20001000, 0x20010000, 0x08000000, 0x08040000, 2, p_2k , 0x1FFFF800, 0x1FFFF80F, 0x1FFFB000, 0x1FFFF800, 0},
{0x430, "STM32F10xxx XL-density" , 0x20000800, 0x20018000, 0x08000000, 0x08100000, 2, p_2k , 0x1FFFF800, 0x1FFFF80F, 0x1FFFE000, 0x1FFFF800, 0},
/* F2 */
{0x411, "STM32F2xxxx" , 0x20002000, 0x20020000, 0x08000000, 0x08100000, 1, f2f4 , 0x1FFFC000, 0x1FFFC00F, 0x1FFF0000, 0x1FFF7800, 0},
/* F3 */
{0x432, "STM32F373xx/F378xx" , 0x20001400, 0x20008000, 0x08000000, 0x08040000, 2, p_2k , 0x1FFFF800, 0x1FFFF80F, 0x1FFFD800, 0x1FFFF800, 0},
{0x422, "STM32F302xB(C)/F303xB(C)/F358xx" , 0x20001400, 0x2000A000, 0x08000000, 0x08040000, 2, p_2k , 0x1FFFF800, 0x1FFFF80F, 0x1FFFD800, 0x1FFFF800, 0},
{0x439, "STM32F301xx/F302x4(6/8)/F318xx" , 0x20001800, 0x20004000, 0x08000000, 0x08010000, 2, p_2k , 0x1FFFF800, 0x1FFFF80F, 0x1FFFD800, 0x1FFFF800, 0},
{0x438, "STM32F303x4(6/8)/F334xx/F328xx" , 0x20001800, 0x20003000, 0x08000000, 0x08010000, 2, p_2k , 0x1FFFF800, 0x1FFFF80F, 0x1FFFD800, 0x1FFFF800, 0},
{0x446, "STM32F302xD(E)/F303xD(E)/F398xx" , 0x20001800, 0x20010000, 0x08000000, 0x08080000, 2, p_2k , 0x1FFFF800, 0x1FFFF80F, 0x1FFFD800, 0x1FFFF800, 0},
/* F4 */
{0x413, "STM32F40xxx/41xxx" , 0x20003000, 0x20020000, 0x08000000, 0x08100000, 1, f2f4 , 0x1FFFC000, 0x1FFFC00F, 0x1FFF0000, 0x1FFF7800, 0},
{0x419, "STM32F42xxx/43xxx" , 0x20003000, 0x20030000, 0x08000000, 0x08200000, 1, f4db , 0x1FFEC000, 0x1FFFC00F, 0x1FFF0000, 0x1FFF7800, 0},
{0x423, "STM32F401xB(C)" , 0x20003000, 0x20010000, 0x08000000, 0x08040000, 1, f2f4 , 0x1FFFC000, 0x1FFFC00F, 0x1FFF0000, 0x1FFF7800, 0},
{0x433, "STM32F401xD(E)" , 0x20003000, 0x20018000, 0x08000000, 0x08080000, 1, f2f4 , 0x1FFFC000, 0x1FFFC00F, 0x1FFF0000, 0x1FFF7800, 0},
{0x458, "STM32F410xx" , 0x20003000, 0x20008000, 0x08000000, 0x08020000, 1, f2f4 , 0x1FFFC000, 0x1FFFC00F, 0x1FFF0000, 0x1FFF7800, 0},
{0x431, "STM32F411xx" , 0x20003000, 0x20020000, 0x08000000, 0x08080000, 1, f2f4 , 0x1FFFC000, 0x1FFFC00F, 0x1FFF0000, 0x1FFF7800, 0},
{0x421, "STM32F446xx" , 0x20003000, 0x20020000, 0x08000000, 0x08080000, 1, f2f4 , 0x1FFFC000, 0x1FFFC00F, 0x1FFF0000, 0x1FFF7800, 0},
{0x434, "STM32F469xx" , 0x20003000, 0x20060000, 0x08000000, 0x08200000, 1, f4db , 0x1FFEC000, 0x1FFFC00F, 0x1FFF0000, 0x1FFF7800, 0},
/* F7 */
{0x449, "STM32F74xxx/75xxx" , 0x20004000, 0x20050000, 0x08000000, 0x08100000, 1, f7 , 0x1FFF0000, 0x1FFF001F, 0x1FF00000, 0x1FF0EDC0, 0},
/* L0 */
{0x425, "STM32L031xx/041xx" , 0x20001000, 0x20002000, 0x08000000, 0x08008000, 32, p_128 , 0x1FF80000, 0x1FF8001F, 0x1FF00000, 0x1FF01000, 0},
{0x417, "STM32L05xxx/06xxx" , 0x20001000, 0x20002000, 0x08000000, 0x08010000, 32, p_128 , 0x1FF80000, 0x1FF8001F, 0x1FF00000, 0x1FF01000, 0},
{0x447, "STM32L07xxx/08xxx" , 0x20002000, 0x20005000, 0x08000000, 0x08030000, 32, p_128 , 0x1FF80000, 0x1FF8001F, 0x1FF00000, 0x1FF02000, 0},
/* L1 */
{0x416, "STM32L1xxx6(8/B)" , 0x20000800, 0x20004000, 0x08000000, 0x08020000, 16, p_256 , 0x1FF80000, 0x1FF8001F, 0x1FF00000, 0x1FF01000, F_NO_ME},
{0x429, "STM32L1xxx6(8/B)A" , 0x20001000, 0x20008000, 0x08000000, 0x08020000, 16, p_256 , 0x1FF80000, 0x1FF8001F, 0x1FF00000, 0x1FF01000, 0},
{0x427, "STM32L1xxxC" , 0x20001000, 0x20008000, 0x08000000, 0x08040000, 16, p_256 , 0x1FF80000, 0x1FF8001F, 0x1FF00000, 0x1FF02000, 0},
{0x436, "STM32L1xxxD" , 0x20001000, 0x2000C000, 0x08000000, 0x08060000, 16, p_256 , 0x1FF80000, 0x1FF8009F, 0x1FF00000, 0x1FF02000, 0},
{0x437, "STM32L1xxxE" , 0x20001000, 0x20014000, 0x08000000, 0x08080000, 16, p_256 , 0x1FF80000, 0x1FF8009F, 0x1FF00000, 0x1FF02000, F_NO_ME},
/* L4 */
{0x415, "STM32L476xx/486xx" , 0x20003100, 0x20018000, 0x08000000, 0x08100000, 1, p_2k , 0x1FFF7800, 0x1FFFF80F, 0x1FFF0000, 0x1FFF7000, 0},
/* These are not (yet) in AN2606: */
{0x641, "Medium_Density PL" , 0x20000200, 0x20005000, 0x08000000, 0x08020000, 4, p_1k , 0x1FFFF800, 0x1FFFF80F, 0x1FFFF000, 0x1FFFF800, 0},
{0x9a8, "STM32W-128K" , 0x20000200, 0x20002000, 0x08000000, 0x08020000, 4, p_1k , 0x08040800, 0x0804080F, 0x08040000, 0x08040800, 0},
{0x9b0, "STM32W-256K" , 0x20000200, 0x20004000, 0x08000000, 0x08040000, 4, p_2k , 0x08040800, 0x0804080F, 0x08040000, 0x08040800, 0},
{0x0}
};

View File

@ -1,905 +0,0 @@
static const uint8_t SHD_FIRMWARE_MAJOR_VERSION = 50;
static const uint8_t SHD_FIRMWARE_MINOR_VERSION = 1;
const uint8_t stm_firmware[] PROGMEM = {
0x00, 0x10, 0x00, 0x20, 0x4d, 0x10, 0x00, 0x08, 0x4b, 0x10, 0x00, 0x08,
0x49, 0x10, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4b, 0x10, 0x00, 0x08,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4b, 0x10, 0x00, 0x08,
0xe9, 0x05, 0x00, 0x08, 0x49, 0x10, 0x00, 0x08, 0x49, 0x10, 0x00, 0x08,
0x49, 0x10, 0x00, 0x08, 0x49, 0x10, 0x00, 0x08, 0x49, 0x10, 0x00, 0x08,
0x49, 0x10, 0x00, 0x08, 0x05, 0x06, 0x00, 0x08, 0x49, 0x10, 0x00, 0x08,
0x49, 0x10, 0x00, 0x08, 0x49, 0x10, 0x00, 0x08, 0x49, 0x10, 0x00, 0x08,
0x49, 0x10, 0x00, 0x08, 0x49, 0x10, 0x00, 0x08, 0x49, 0x10, 0x00, 0x08,
0x49, 0x10, 0x00, 0x08, 0xcd, 0x05, 0x00, 0x08, 0x49, 0x10, 0x00, 0x08,
0x49, 0x10, 0x00, 0x08, 0x49, 0x10, 0x00, 0x08, 0x49, 0x10, 0x00, 0x08,
0x49, 0x10, 0x00, 0x08, 0x49, 0x10, 0x00, 0x08, 0x49, 0x10, 0x00, 0x08,
0x49, 0x10, 0x00, 0x08, 0x49, 0x10, 0x00, 0x08, 0x49, 0x10, 0x00, 0x08,
0x49, 0x10, 0x00, 0x08, 0xcd, 0x00, 0x00, 0x08, 0x49, 0x10, 0x00, 0x08,
0x49, 0x10, 0x00, 0x08, 0x49, 0x10, 0x00, 0x08, 0x49, 0x10, 0x00, 0x08,
0x01, 0x4b, 0x18, 0x68, 0x70, 0x47, 0xc0, 0x46, 0x38, 0x01, 0x00, 0x20,
0x20, 0x23, 0xf0, 0xb5, 0x6d, 0x4c, 0xc5, 0xb0, 0x22, 0x68, 0x00, 0xaf,
0xfc, 0x60, 0x1a, 0x42, 0x69, 0xd0, 0x6b, 0x4a, 0x12, 0x68, 0x1a, 0x42,
0x65, 0xd0, 0x20, 0x00, 0x00, 0xf0, 0xa5, 0xff, 0x68, 0x4d, 0x69, 0x49,
0x2b, 0x78, 0xc6, 0xb2, 0xce, 0x54, 0x00, 0x2b, 0x03, 0xd1, 0x01, 0x2e,
0x22, 0xd1, 0x01, 0x33, 0x21, 0xe0, 0x03, 0x2b, 0xfb, 0xd9, 0xca, 0x78,
0xf9, 0x2a, 0x1b, 0xd8, 0x14, 0x1d, 0x9c, 0x42, 0xf5, 0xda, 0x54, 0x1d,
0xa3, 0x42, 0x18, 0xd1, 0x5f, 0x49, 0xc0, 0xb2, 0xc9, 0x5c, 0x5f, 0x4c,
0x09, 0x02, 0x01, 0x43, 0x00, 0x20, 0xb9, 0x60, 0xa4, 0x46, 0x01, 0x00,
0x03, 0x32, 0x64, 0x46, 0x66, 0x5c, 0x01, 0x31, 0x80, 0x19, 0xc9, 0xb2,
0x80, 0xb2, 0x8a, 0x42, 0xf7, 0xdc, 0xba, 0x68, 0x82, 0x42, 0xdc, 0xd0,
0x00, 0x23, 0x2b, 0x70, 0x33, 0xe0, 0x06, 0x32, 0x93, 0x42, 0xf9, 0xd1,
0x04, 0x2e, 0xf7, 0xd1, 0x4a, 0x78, 0x52, 0x4b, 0x1a, 0x70, 0x8b, 0x78,
0x51, 0x4a, 0x13, 0x70, 0x01, 0x2b, 0x1e, 0xd1, 0x4b, 0x79, 0x08, 0x79,
0x1b, 0x02, 0x18, 0x43, 0x4e, 0x4b, 0x4f, 0x49, 0x18, 0x80, 0x4f, 0x4b,
0x1b, 0x68, 0x58, 0x43, 0x01, 0xf0, 0x9e, 0xf8, 0x02, 0xf0, 0xbe, 0xfb,
0x4c, 0x4a, 0x4d, 0x4b, 0x01, 0xf0, 0x86, 0xfd, 0x01, 0xf0, 0x60, 0xf9,
0x06, 0x00, 0x02, 0x00, 0x00, 0x21, 0x4a, 0x48, 0x00, 0xf0, 0x44, 0xfe,
0x32, 0x00, 0x06, 0x21, 0x47, 0x48, 0x00, 0xf0, 0x3f, 0xfe, 0x00, 0x23,
0x2b, 0x70, 0xfb, 0x68, 0x1a, 0x68, 0x80, 0x23, 0x13, 0x43, 0xfa, 0x68,
0x13, 0x60, 0xfb, 0x68, 0x1a, 0x68, 0x80, 0x23, 0x1a, 0x42, 0x52, 0xd0,
0x33, 0x4a, 0x12, 0x68, 0x1a, 0x42, 0x4e, 0xd0, 0x00, 0x25, 0x6c, 0x3b,
0xf8, 0x18, 0xfc, 0x22, 0x29, 0x00, 0x3d, 0x61, 0x01, 0xf0, 0x14, 0xf8,
0x33, 0x4b, 0x1b, 0x78, 0x10, 0x2b, 0x49, 0xd0, 0x11, 0x2b, 0x43, 0xd0,
0x01, 0x2b, 0x38, 0xd1, 0x1d, 0x00, 0x3b, 0x74, 0x6a, 0x46, 0x69, 0x46,
0xba, 0x60, 0xea, 0x1d, 0x7a, 0x60, 0x07, 0x32, 0xd2, 0x08, 0xd2, 0x00,
0x8a, 0x1a, 0x95, 0x46, 0x01, 0x22, 0x6e, 0x46, 0x32, 0x70, 0x27, 0x4a,
0x01, 0xa8, 0x12, 0x78, 0xb3, 0x70, 0x10, 0x23, 0x72, 0x70, 0xf9, 0x18,
0x2a, 0x00, 0xf5, 0x70, 0x00, 0xf0, 0x9e, 0xff, 0x00, 0x22, 0x13, 0x00,
0x29, 0x1d, 0xe8, 0x1c, 0xf4, 0x18, 0x64, 0x78, 0x01, 0x33, 0xa4, 0x46,
0xdb, 0xb2, 0x62, 0x44, 0x92, 0xb2, 0x98, 0x42, 0xf6, 0xdc, 0x13, 0x0a,
0x73, 0x54, 0x6b, 0x1d, 0xf2, 0x54, 0x04, 0x23, 0x06, 0x35, 0x73, 0x55,
0x00, 0x25, 0x71, 0x5d, 0x10, 0x48, 0x00, 0xf0, 0xe8, 0xfe, 0x7b, 0x68,
0x01, 0x35, 0xab, 0x42, 0xf7, 0xdc, 0xbb, 0x68, 0x9d, 0x46, 0x80, 0x22,
0xfb, 0x68, 0x1b, 0x68, 0x93, 0x43, 0xfa, 0x68, 0x13, 0x60, 0xbd, 0x46,
0x45, 0xb0, 0xf0, 0xbd, 0x01, 0x22, 0x02, 0x25, 0x3a, 0x82, 0xbb, 0xe7,
0x0d, 0x4a, 0x3d, 0x82, 0x12, 0x88, 0xbd, 0x61, 0x7a, 0x82, 0x0d, 0x4a,
0x0d, 0x25, 0x12, 0x68, 0x7a, 0x61, 0x69, 0x22, 0x3a, 0x77, 0xaf, 0xe7,
0x00, 0x38, 0x01, 0x40, 0x1c, 0x38, 0x01, 0x40, 0x2a, 0x00, 0x00, 0x20,
0x35, 0x00, 0x00, 0x20, 0x34, 0x00, 0x00, 0x20, 0x36, 0x00, 0x00, 0x20,
0x34, 0x00, 0x00, 0x20, 0x2b, 0x00, 0x00, 0x20, 0x28, 0x00, 0x00, 0x20,
0x10, 0x27, 0x00, 0x00, 0x2c, 0x00, 0x00, 0x20, 0xe1, 0x7a, 0x14, 0xae,
0x47, 0xe1, 0xf2, 0x3f, 0x00, 0x2c, 0x01, 0x40, 0x10, 0xb5, 0x00, 0xf0,
0xf1, 0xfb, 0xb6, 0x48, 0x00, 0xf0, 0x20, 0xfc, 0xb5, 0x48, 0x00, 0xf0,
0x1d, 0xfc, 0xb5, 0x48, 0x00, 0xf0, 0x1a, 0xfc, 0xb4, 0x48, 0x00, 0xf0,
0x17, 0xfc, 0xe0, 0x20, 0x80, 0x00, 0x00, 0xf0, 0x13, 0xfc, 0xc0, 0x20,
0x80, 0x00, 0x00, 0xf0, 0x0f, 0xfc, 0x90, 0x23, 0x90, 0x20, 0x1b, 0x01,
0x00, 0x22, 0x02, 0x21, 0xc0, 0x05, 0x00, 0xf0, 0xda, 0xfa, 0x90, 0x22,
0x90, 0x20, 0x02, 0x21, 0x12, 0x01, 0xc0, 0x05, 0x00, 0xf0, 0xf3, 0xfa,
0x90, 0x20, 0xc0, 0x23, 0x00, 0x22, 0x01, 0x21, 0xc0, 0x05, 0x00, 0xf0,
0xcc, 0xfa, 0x90, 0x20, 0x03, 0x23, 0x00, 0x22, 0x02, 0x21, 0xc0, 0x05,
0x00, 0xf0, 0xc5, 0xfa, 0x90, 0x20, 0x03, 0x22, 0x02, 0x21, 0xc0, 0x05,
0x00, 0xf0, 0xdf, 0xfa, 0x80, 0x23, 0x00, 0x22, 0x01, 0x21, 0x9d, 0x48,
0x5b, 0x00, 0x00, 0xf0, 0xb8, 0xfa, 0x00, 0x22, 0x04, 0x23, 0x11, 0x00,
0x99, 0x48, 0x00, 0xf0, 0xb2, 0xfa, 0xc0, 0x23, 0x90, 0x20, 0xdb, 0x00,
0x00, 0x22, 0x02, 0x21, 0xc0, 0x05, 0x00, 0xf0, 0xaa, 0xfa, 0xc0, 0x22,
0x90, 0x20, 0xd2, 0x00, 0x01, 0x21, 0xc0, 0x05, 0x00, 0xf0, 0xc3, 0xfa,
0x1b, 0x20, 0x00, 0xf0, 0xd3, 0xfe, 0xe1, 0x21, 0x8f, 0x4c, 0x49, 0x02,
0x20, 0x00, 0x00, 0xf0, 0x11, 0xfe, 0x08, 0x21, 0x20, 0x00, 0x00, 0xf0,
0x19, 0xfe, 0x00, 0x21, 0x20, 0x00, 0x00, 0xf0, 0x2b, 0xfe, 0x00, 0x21,
0x20, 0x00, 0x00, 0xf0, 0x1f, 0xfe, 0x0c, 0x21, 0x20, 0x00, 0x00, 0xf0,
0x2b, 0xfe, 0x00, 0x21, 0x20, 0x00, 0x00, 0xf0, 0x2d, 0xfe, 0x20, 0x23,
0x22, 0x68, 0x20, 0x00, 0x13, 0x43, 0x23, 0x60, 0x00, 0xf0, 0x2e, 0xfe,
0x80, 0x48, 0x00, 0xf0, 0xe6, 0xfb, 0x8c, 0x20, 0xff, 0x30, 0x00, 0xf0,
0xb3, 0xfb, 0x00, 0x23, 0x7c, 0x48, 0x1a, 0x00, 0x19, 0x00, 0x00, 0xf0,
0xc1, 0xfb, 0xf0, 0x21, 0x79, 0x48, 0x49, 0x00, 0x00, 0xf0, 0xdc, 0xfb,
0x77, 0x48, 0x00, 0xf0, 0x34, 0xfd, 0x76, 0x48, 0x00, 0xf0, 0xc2, 0xfb,
0x74, 0x48, 0x00, 0xf0, 0xc4, 0xfb, 0x00, 0x21, 0x72, 0x48, 0x00, 0xf0,
0xf3, 0xfc, 0x07, 0x22, 0x00, 0x21, 0x70, 0x48, 0x00, 0xf0, 0xcc, 0xfb,
0x00, 0x21, 0x6e, 0x48, 0x00, 0xf0, 0xac, 0xfc, 0x00, 0x21, 0x6c, 0x48,
0x00, 0xf0, 0xc7, 0xfc, 0xfa, 0x22, 0x00, 0x21, 0x52, 0x00, 0x69, 0x48,
0x00, 0xf0, 0x04, 0xfd, 0x06, 0x21, 0x67, 0x48, 0x00, 0xf0, 0xdc, 0xfc,
0x07, 0x22, 0x06, 0x21, 0x64, 0x48, 0x00, 0xf0, 0xb5, 0xfb, 0x06, 0x21,
0x62, 0x48, 0x00, 0xf0, 0x95, 0xfc, 0x06, 0x21, 0x60, 0x48, 0x00, 0xf0,
0xb0, 0xfc, 0xfa, 0x22, 0x06, 0x21, 0x52, 0x00, 0x5d, 0x48, 0x00, 0xf0,
0xed, 0xfc, 0x5c, 0x48, 0x00, 0xf0, 0x98, 0xfb, 0x80, 0x20, 0xc0, 0x05,
0x00, 0xf0, 0x99, 0xfb, 0x80, 0x20, 0x80, 0x00, 0x00, 0xf0, 0x66, 0xfb,
0x0f, 0x20, 0x00, 0xf0, 0x5b, 0xfe, 0x00, 0x23, 0x80, 0x20, 0x1a, 0x00,
0x19, 0x00, 0xc0, 0x05, 0x00, 0xf0, 0x70, 0xfb, 0x80, 0x20, 0x30, 0x21,
0xc0, 0x05, 0x00, 0xf0, 0x8b, 0xfb, 0x80, 0x20, 0x04, 0x21, 0xc0, 0x05,
0x00, 0xf0, 0x7d, 0xfd, 0x80, 0x20, 0x01, 0x22, 0x00, 0x21, 0xc0, 0x05,
0x00, 0xf0, 0x3c, 0xfd, 0x01, 0x22, 0x80, 0x20, 0x11, 0x00, 0xc0, 0x05,
0x00, 0xf0, 0xde, 0xfc, 0x00, 0x22, 0x80, 0x20, 0x11, 0x00, 0xc0, 0x05,
0x00, 0xf0, 0x04, 0xfd, 0x80, 0x20, 0x50, 0x21, 0xc0, 0x05, 0x00, 0xf0,
0x6e, 0xfd, 0x80, 0x20, 0x00, 0x21, 0xc0, 0x05, 0x00, 0xf0, 0x8e, 0xfc,
0x80, 0x20, 0x00, 0x21, 0xc0, 0x05, 0x00, 0xf0, 0x27, 0xfc, 0x80, 0x20,
0x00, 0x21, 0xc0, 0x05, 0x00, 0xf0, 0x65, 0xfc, 0x80, 0x20, 0x00, 0x21,
0xc0, 0x05, 0x00, 0xf0, 0x4b, 0xfd, 0x80, 0x20, 0x02, 0x21, 0xc0, 0x05,
0x00, 0xf0, 0x32, 0xfb, 0x80, 0x20, 0x02, 0x22, 0x01, 0x21, 0xc0, 0x05,
0x00, 0xf0, 0x0c, 0xfd, 0x80, 0x20, 0x01, 0x22, 0x02, 0x21, 0xc0, 0x05,
0x00, 0xf0, 0xae, 0xfc, 0x80, 0x20, 0x00, 0x22, 0x01, 0x21, 0xc0, 0x05,
0x00, 0xf0, 0xd4, 0xfc, 0x80, 0x20, 0x50, 0x21, 0xc0, 0x05, 0x00, 0xf0,
0x3e, 0xfd, 0x80, 0x20, 0x02, 0x21, 0xc0, 0x05, 0x00, 0xf0, 0x5e, 0xfc,
0x80, 0x20, 0x02, 0x21, 0xc0, 0x05, 0x00, 0xf0, 0xf7, 0xfb, 0x80, 0x20,
0x02, 0x21, 0xc0, 0x05, 0x00, 0xf0, 0x35, 0xfc, 0x80, 0x20, 0x01, 0x21,
0xc0, 0x05, 0x00, 0xf0, 0x1b, 0xfd, 0x80, 0x20, 0x04, 0x21, 0xc0, 0x05,
0x00, 0xf0, 0x02, 0xfb, 0x80, 0x20, 0xc0, 0x05, 0x00, 0xf0, 0x18, 0xfb,
0x06, 0x20, 0x00, 0xf0, 0xe3, 0xfd, 0x04, 0x20, 0x16, 0x49, 0x00, 0xf0,
0x67, 0xf9, 0x02, 0x21, 0x04, 0x20, 0x00, 0xf0, 0x2f, 0xf9, 0x04, 0x20,
0x00, 0xf0, 0x4c, 0xf9, 0x14, 0x49, 0x01, 0x20, 0x00, 0xf0, 0x0a, 0xf9,
0x00, 0x20, 0x00, 0xf0, 0xb7, 0xfd, 0x00, 0x22, 0x11, 0x4b, 0x12, 0x49,
0x1a, 0x60, 0x12, 0x4b, 0x18, 0x68, 0x00, 0xf0, 0x99, 0xfe, 0x00, 0xf0,
0xa5, 0xfd, 0x00, 0xf0, 0xb5, 0xfd, 0x00, 0xf0, 0xbb, 0xfd, 0x80, 0x21,
0x06, 0x48, 0x49, 0x00, 0x00, 0xf0, 0x86, 0xf9, 0xfe, 0xe7, 0xc0, 0x46,
0x91, 0x02, 0x00, 0x00, 0x92, 0x02, 0x00, 0x00, 0x0e, 0x03, 0x00, 0x00,
0x0b, 0x03, 0x00, 0x00, 0x00, 0x04, 0x00, 0x48, 0x00, 0x38, 0x01, 0x40,
0x00, 0x2c, 0x01, 0x40, 0x80, 0x84, 0x1e, 0x00, 0x18, 0xe0, 0x00, 0xe0,
0x00, 0x12, 0x7a, 0x00, 0x20, 0x00, 0x00, 0x20, 0x05, 0x4b, 0x10, 0xb5,
0x1c, 0x68, 0xa3, 0x07, 0x01, 0xd5, 0x00, 0xf0, 0x3f, 0xf8, 0x63, 0x07,
0x01, 0xd5, 0x00, 0xf0, 0x27, 0xf8, 0x10, 0xbd, 0x10, 0x00, 0x00, 0x40,
0x04, 0x4a, 0x13, 0x68, 0x01, 0x33, 0x13, 0x60, 0x03, 0x4a, 0x13, 0x68,
0x01, 0x33, 0x13, 0x60, 0x70, 0x47, 0xc0, 0x46, 0x38, 0x01, 0x00, 0x20,
0x30, 0x00, 0x00, 0x20, 0x10, 0xb5, 0x00, 0x21, 0x06, 0x48, 0x00, 0xf0,
0x22, 0xfc, 0x06, 0x4b, 0x06, 0x4a, 0x19, 0x68, 0x04, 0x20, 0x11, 0x60,
0x00, 0x22, 0x1a, 0x60, 0x00, 0xf0, 0xfe, 0xf8, 0x10, 0xbd, 0xc0, 0x46,
0x00, 0x2c, 0x01, 0x40, 0x30, 0x00, 0x00, 0x20, 0x2c, 0x00, 0x00, 0x20,
0x10, 0xb5, 0xff, 0xf7, 0x45, 0xfd, 0x05, 0x4a, 0x05, 0x49, 0x13, 0x68,
0xc3, 0x1a, 0x0b, 0x60, 0x10, 0x60, 0x04, 0x4a, 0x13, 0x68, 0x01, 0x33,
0x13, 0x60, 0x10, 0xbd, 0x54, 0x01, 0x00, 0x20, 0x68, 0x01, 0x00, 0x20,
0x6c, 0x01, 0x00, 0x20, 0x70, 0xb5, 0xff, 0xf7, 0x31, 0xfd, 0x16, 0x4e,
0x16, 0x4a, 0x33, 0x68, 0x12, 0x68, 0x04, 0x00, 0x15, 0x4d, 0xc3, 0x1a,
0x93, 0x42, 0x1c, 0xd9, 0x29, 0x68, 0x32, 0x68, 0x00, 0x23, 0x91, 0x42,
0x01, 0xd0, 0x2b, 0x68, 0xc3, 0x1a, 0x11, 0x4a, 0x11, 0x48, 0x11, 0x78,
0x00, 0x78, 0x88, 0x42, 0x11, 0xd1, 0x10, 0x49, 0x0b, 0x60, 0x01, 0x23,
0x11, 0x78, 0x0f, 0x48, 0x5b, 0x1a, 0x80, 0x21, 0xdb, 0xb2, 0x13, 0x70,
0x13, 0x78, 0x49, 0x00, 0x00, 0x2b, 0x06, 0xd0, 0x00, 0xf0, 0x00, 0xf9,
0x34, 0x60, 0x2c, 0x60, 0x70, 0xbd, 0x09, 0x49, 0xec, 0xe7, 0x00, 0xf0,
0xfb, 0xf8, 0xf7, 0xe7, 0x4c, 0x01, 0x00, 0x20, 0x10, 0x00, 0x00, 0x20,
0x50, 0x01, 0x00, 0x20, 0x58, 0x01, 0x00, 0x20, 0x00, 0x00, 0x00, 0x20,
0x48, 0x01, 0x00, 0x20, 0x00, 0x04, 0x00, 0x48, 0x78, 0x01, 0x00, 0x20,
0xf8, 0xb5, 0x1f, 0x4b, 0x00, 0x20, 0x1e, 0x68, 0x5f, 0x68, 0x1e, 0x49,
0x32, 0x00, 0x3b, 0x00, 0x00, 0xf0, 0xce, 0xfe, 0x00, 0x22, 0x1c, 0x4b,
0x00, 0xf0, 0xca, 0xfe, 0x00, 0x22, 0x1b, 0x4b, 0x00, 0xf0, 0xc6, 0xfe,
0x1a, 0x4b, 0x00, 0x22, 0x18, 0x60, 0x59, 0x60, 0x19, 0x4b, 0x1c, 0x68,
0x5d, 0x68, 0x14, 0x4b, 0x29, 0x00, 0x20, 0x00, 0x01, 0xf0, 0xc0, 0xfa,
0x00, 0x22, 0x16, 0x4b, 0x01, 0xf0, 0xbc, 0xfa, 0x00, 0x22, 0x11, 0x4b,
0x00, 0xf0, 0xb2, 0xfe, 0x13, 0x4b, 0x00, 0x22, 0x18, 0x60, 0x59, 0x60,
0x29, 0x00, 0x20, 0x00, 0x11, 0x4b, 0x01, 0xf0, 0xaf, 0xfa, 0x32, 0x00,
0x3b, 0x00, 0x00, 0xf0, 0xa5, 0xfe, 0x00, 0x22, 0x0e, 0x4b, 0x00, 0xf0,
0xa1, 0xfe, 0x00, 0x22, 0x06, 0x4b, 0x00, 0xf0, 0x9d, 0xfe, 0x0c, 0x4b,
0x18, 0x60, 0x59, 0x60, 0xf8, 0xbd, 0xc0, 0x46, 0x08, 0x00, 0x00, 0x20,
0x18, 0x8a, 0xd2, 0x41, 0x00, 0x00, 0x38, 0x40, 0x3c, 0x4e, 0x4b, 0x41,
0x40, 0x01, 0x00, 0x20, 0x18, 0x00, 0x00, 0x20, 0x00, 0x00, 0xe0, 0x3f,
0x70, 0x01, 0x00, 0x20, 0x81, 0x86, 0xc6, 0x41, 0x00, 0x00, 0x48, 0x40,
0x60, 0x01, 0x00, 0x20, 0x10, 0xb5, 0x0a, 0x4b, 0x0a, 0x4c, 0x19, 0x60,
0x20, 0x70, 0xff, 0xf7, 0xa3, 0xff, 0x80, 0x21, 0x08, 0x4b, 0x22, 0x78,
0x08, 0x48, 0x1a, 0x70, 0x1b, 0x78, 0x49, 0x00, 0x00, 0x2b, 0x02, 0xd0,
0x00, 0xf0, 0x80, 0xf8, 0x10, 0xbd, 0x00, 0xf0, 0x7f, 0xf8, 0xfb, 0xe7,
0x10, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x20, 0x58, 0x01, 0x00, 0x20,
0x00, 0x04, 0x00, 0x48, 0x01, 0x29, 0x0c, 0xd0, 0x02, 0x29, 0x13, 0xd0,
0x00, 0x29, 0x07, 0xd1, 0x0a, 0x4a, 0x13, 0x68, 0x03, 0x43, 0x13, 0x60,
0x09, 0x4a, 0x13, 0x68, 0x83, 0x43, 0x13, 0x60, 0x70, 0x47, 0x06, 0x4a,
0x13, 0x68, 0x83, 0x43, 0x13, 0x60, 0x05, 0x4a, 0x13, 0x68, 0x18, 0x43,
0x10, 0x60, 0xf5, 0xe7, 0x01, 0x4a, 0x13, 0x68, 0x03, 0x43, 0xf5, 0xe7,
0x08, 0x04, 0x01, 0x40, 0x0c, 0x04, 0x01, 0x40, 0x04, 0x4a, 0x13, 0x68,
0x03, 0x43, 0x13, 0x60, 0x03, 0x4a, 0x13, 0x68, 0x18, 0x43, 0x10, 0x60,
0x70, 0x47, 0xc0, 0x46, 0x00, 0x04, 0x01, 0x40, 0x04, 0x04, 0x01, 0x40,
0x01, 0x4b, 0x18, 0x60, 0x70, 0x47, 0xc0, 0x46, 0x14, 0x04, 0x01, 0x40,
0x19, 0x4b, 0xf7, 0xb5, 0xce, 0x18, 0x73, 0x42, 0x5e, 0x41, 0x00, 0x22,
0x01, 0x90, 0x76, 0x00, 0x01, 0x24, 0x23, 0x00, 0x93, 0x40, 0x01, 0x98,
0x18, 0x42, 0x17, 0xd0, 0x13, 0x4d, 0x03, 0x23, 0xa9, 0x42, 0x05, 0xd0,
0x16, 0xd8, 0x12, 0x4d, 0x23, 0x00, 0xa9, 0x42, 0x00, 0xd0, 0x33, 0x00,
0x10, 0x48, 0x03, 0x25, 0x94, 0x08, 0x24, 0x18, 0x0f, 0x20, 0x15, 0x40,
0xad, 0x00, 0xa8, 0x40, 0xab, 0x40, 0xa4, 0x00, 0x27, 0x68, 0x87, 0x43,
0x3b, 0x43, 0x23, 0x60, 0x01, 0x32, 0x10, 0x2a, 0xde, 0xd1, 0xf7, 0xbd,
0x08, 0x4c, 0x04, 0x23, 0xa1, 0x42, 0xe9, 0xd0, 0x07, 0x4c, 0x00, 0x23,
0xa1, 0x42, 0xe5, 0xd1, 0x05, 0x33, 0xe3, 0xe7, 0x00, 0xf8, 0xff, 0xb7,
0x00, 0x0c, 0x00, 0x48, 0x00, 0x04, 0x00, 0x48, 0x02, 0x40, 0x00, 0x10,
0x00, 0x10, 0x00, 0x48, 0x00, 0x14, 0x00, 0x48, 0x81, 0x61, 0x70, 0x47,
0x09, 0x04, 0x81, 0x61, 0x70, 0x47, 0xf0, 0xb5, 0x85, 0xb0, 0x01, 0x91,
0x03, 0x27, 0x00, 0x21, 0x02, 0x92, 0x03, 0x93, 0x02, 0x68, 0xc3, 0x68,
0x03, 0x9c, 0x01, 0x25, 0x0c, 0x41, 0x2c, 0x42, 0x0a, 0xd0, 0x3d, 0x00,
0x4c, 0x00, 0xa5, 0x40, 0x01, 0x9e, 0xaa, 0x43, 0xab, 0x43, 0x02, 0x9d,
0xa6, 0x40, 0xa5, 0x40, 0x32, 0x43, 0x2b, 0x43, 0x01, 0x31, 0x10, 0x29,
0xec, 0xd1, 0x02, 0x60, 0xc3, 0x60, 0x05, 0xb0, 0xf0, 0xbd, 0xf7, 0xb5,
0x00, 0x23, 0x01, 0x26, 0x0f, 0x27, 0x04, 0x6a, 0x00, 0x91, 0x41, 0x6a,
0x01, 0x92, 0x01, 0x9d, 0x1d, 0x41, 0x35, 0x42, 0x06, 0xd0, 0x3a, 0x00,
0x9d, 0x00, 0xaa, 0x40, 0x94, 0x43, 0x00, 0x9a, 0xaa, 0x40, 0x14, 0x43,
0x01, 0x33, 0x08, 0x2b, 0xf1, 0xd1, 0x01, 0x26, 0x0f, 0x27, 0x01, 0x9a,
0x1a, 0x41, 0x32, 0x42, 0x07, 0xd0, 0x3a, 0x00, 0x9d, 0x00, 0x20, 0x3d,
0xaa, 0x40, 0x91, 0x43, 0x00, 0x9a, 0xaa, 0x40, 0x11, 0x43, 0x01, 0x33,
0x10, 0x2b, 0xf0, 0xd1, 0x04, 0x62, 0x41, 0x62, 0xf7, 0xbd, 0x00, 0x00,
0x00, 0x23, 0x00, 0xb5, 0x06, 0x28, 0x0a, 0xd8, 0x01, 0x33, 0x00, 0xf0,
0xa7, 0xfc, 0x0a, 0x0e, 0x10, 0x12, 0x18, 0x16, 0x04, 0x00, 0x0b, 0x4a,
0x10, 0x68, 0x40, 0x0c, 0x03, 0x40, 0x18, 0x00, 0x00, 0xbd, 0x08, 0x4a,
0x10, 0x68, 0x40, 0x08, 0xf8, 0xe7, 0x07, 0x4a, 0xfa, 0xe7, 0x06, 0x4a,
0xf2, 0xe7, 0x05, 0x4a, 0x10, 0x68, 0x40, 0x0e, 0xf0, 0xe7, 0x04, 0x4a,
0xf2, 0xe7, 0x04, 0x4a, 0xf0, 0xe7, 0xc0, 0x46, 0x34, 0x10, 0x02, 0x40,
0x00, 0x10, 0x02, 0x40, 0x20, 0x10, 0x02, 0x40, 0x24, 0x10, 0x02, 0x40,
0x10, 0xb5, 0x04, 0x00, 0x20, 0x00, 0xff, 0xf7, 0xd1, 0xff, 0x00, 0x28,
0xfa, 0xd0, 0x10, 0xbd, 0x00, 0xb5, 0x06, 0x28, 0x0b, 0xd8, 0x00, 0xf0,
0x77, 0xfc, 0x0b, 0x0f, 0x11, 0x17, 0x15, 0x13, 0x04, 0x00, 0x0c, 0x4a,
0x80, 0x23, 0x11, 0x68, 0x5b, 0x02, 0x0b, 0x43, 0x13, 0x60, 0x00, 0xbd,
0x08, 0x4a, 0x01, 0x23, 0x11, 0x68, 0xf8, 0xe7, 0x07, 0x4a, 0xfa, 0xe7,
0x06, 0x4a, 0xf1, 0xe7, 0x06, 0x4a, 0xf6, 0xe7, 0x06, 0x4a, 0xf4, 0xe7,
0x80, 0x23, 0x03, 0x4a, 0x5b, 0x04, 0x11, 0x68, 0xeb, 0xe7, 0xc0, 0x46,
0x34, 0x10, 0x02, 0x40, 0x00, 0x10, 0x02, 0x40, 0x20, 0x10, 0x02, 0x40,
0x24, 0x10, 0x02, 0x40, 0x01, 0x38, 0x00, 0xb5, 0x05, 0x28, 0x12, 0xd8,
0x00, 0xf0, 0x4c, 0xfc, 0x03, 0x09, 0x12, 0x11, 0x11, 0x19, 0x03, 0x21,
0x0c, 0x4a, 0x13, 0x68, 0x8b, 0x43, 0x13, 0x60, 0x07, 0xe0, 0x03, 0x22,
0x09, 0x49, 0x0b, 0x68, 0x93, 0x43, 0x1a, 0x00, 0x01, 0x23, 0x13, 0x43,
0x0b, 0x60, 0x00, 0xbd, 0x03, 0x22, 0x05, 0x49, 0x0b, 0x68, 0x93, 0x43,
0x1a, 0x00, 0x02, 0x23, 0xf5, 0xe7, 0x03, 0x23, 0x01, 0x4a, 0x11, 0x68,
0x0b, 0x43, 0xe8, 0xe7, 0x04, 0x10, 0x02, 0x40, 0x03, 0x4a, 0x04, 0x49,
0x13, 0x68, 0x0b, 0x40, 0x03, 0x43, 0x13, 0x60, 0x70, 0x47, 0xc0, 0x46,
0x04, 0x10, 0x02, 0x40, 0xff, 0xff, 0xc3, 0xff, 0x03, 0x4a, 0x04, 0x49,
0x13, 0x68, 0x00, 0x04, 0x0b, 0x40, 0x03, 0x43, 0x13, 0x60, 0x70, 0x47,
0x04, 0x10, 0x02, 0x40, 0xff, 0xff, 0xfe, 0xff, 0x03, 0x4a, 0x04, 0x49,
0x13, 0x68, 0x0b, 0x40, 0x03, 0x43, 0x13, 0x60, 0x70, 0x47, 0xc0, 0x46,
0x04, 0x10, 0x02, 0x40, 0xff, 0xf8, 0xff, 0xff, 0xf0, 0x21, 0x03, 0x4a,
0x13, 0x68, 0x8b, 0x43, 0x03, 0x43, 0x13, 0x60, 0x70, 0x47, 0xc0, 0x46,
0x04, 0x10, 0x02, 0x40, 0x10, 0xb5, 0x01, 0x20, 0xff, 0xf7, 0x7e, 0xff,
0x01, 0x20, 0xff, 0xf7, 0x73, 0xff, 0x01, 0x20, 0xff, 0xf7, 0xa2, 0xff,
0x00, 0x20, 0xff, 0xf7, 0xe9, 0xff, 0x00, 0x20, 0xff, 0xf7, 0xda, 0xff,
0x00, 0xf0, 0x32, 0xfb, 0x01, 0x20, 0x00, 0xf0, 0x37, 0xfb, 0xa0, 0x20,
0x80, 0x03, 0xff, 0xf7, 0xb9, 0xff, 0x00, 0x20, 0xff, 0xf7, 0xc2, 0xff,
0x03, 0x20, 0xff, 0xf7, 0x63, 0xff, 0x03, 0x20, 0xff, 0xf7, 0x58, 0xff,
0x03, 0x20, 0xff, 0xf7, 0x87, 0xff, 0x03, 0x4b, 0x03, 0x4a, 0x13, 0x60,
0x03, 0x4a, 0x13, 0x60, 0x10, 0xbd, 0xc0, 0x46, 0x00, 0x6c, 0xdc, 0x02,
0x24, 0x00, 0x00, 0x20, 0x20, 0x00, 0x00, 0x20, 0x05, 0x4b, 0x42, 0x09,
0xd2, 0x18, 0x1f, 0x23, 0x18, 0x40, 0x1e, 0x3b, 0x83, 0x40, 0x11, 0x68,
0x0b, 0x43, 0x13, 0x60, 0x70, 0x47, 0xc0, 0x46, 0x00, 0x10, 0x02, 0x40,
0x06, 0x4a, 0x43, 0x09, 0x9b, 0x18, 0x1f, 0x22, 0x10, 0x40, 0x1e, 0x3a,
0x82, 0x40, 0x19, 0x68, 0x11, 0x43, 0x19, 0x60, 0x19, 0x68, 0x91, 0x43,
0x19, 0x60, 0x70, 0x47, 0x00, 0x10, 0x02, 0x40, 0xc3, 0x68, 0x0b, 0x43,
0xc3, 0x60, 0x70, 0x47, 0x30, 0xb5, 0x04, 0x68, 0x03, 0x4d, 0x1a, 0x43,
0x2c, 0x40, 0x0a, 0x43, 0x22, 0x43, 0x02, 0x60, 0x30, 0xbd, 0xc0, 0x46,
0x8f, 0xfc, 0xff, 0xff, 0x80, 0x23, 0x02, 0x68, 0x13, 0x43, 0x03, 0x60,
0x70, 0x47, 0x08, 0x22, 0x03, 0x68, 0x93, 0x43, 0x03, 0x60, 0x70, 0x47,
0x01, 0x23, 0x02, 0x68, 0x13, 0x43, 0x03, 0x60, 0x70, 0x47, 0x01, 0x22,
0x03, 0x68, 0x93, 0x43, 0x03, 0x60, 0x70, 0x47, 0x81, 0x62, 0x70, 0x47,
0x03, 0x00, 0x00, 0xb5, 0x08, 0x00, 0x06, 0x29, 0x1c, 0xd8, 0x00, 0xf0,
0x81, 0xfb, 0x04, 0x1b, 0x2f, 0x1b, 0x5c, 0x1b, 0x86, 0x00, 0x03, 0x20,
0x99, 0x69, 0x81, 0x43, 0x99, 0x61, 0x99, 0x69, 0x99, 0x61, 0x70, 0x21,
0x98, 0x69, 0x88, 0x43, 0x98, 0x61, 0x07, 0x2a, 0x0a, 0xd8, 0x10, 0x00,
0x00, 0xf0, 0x6e, 0xfb, 0x2f, 0x04, 0x09, 0x0c, 0x0f, 0x12, 0x15, 0x18,
0x10, 0x22, 0x99, 0x69, 0x0a, 0x43, 0x9a, 0x61, 0x00, 0xbd, 0x20, 0x22,
0x99, 0x69, 0xf9, 0xe7, 0x30, 0x22, 0x99, 0x69, 0xf6, 0xe7, 0x40, 0x22,
0x99, 0x69, 0xf3, 0xe7, 0x50, 0x22, 0x99, 0x69, 0xf0, 0xe7, 0x60, 0x22,
0x99, 0x69, 0xed, 0xe7, 0x9a, 0x69, 0x11, 0x43, 0x99, 0x61, 0xeb, 0xe7,
0x99, 0x69, 0x42, 0x48, 0x01, 0x40, 0x99, 0x61, 0x99, 0x69, 0x41, 0x48,
0x99, 0x61, 0x99, 0x69, 0x01, 0x40, 0x99, 0x61, 0x07, 0x2a, 0xdf, 0xd8,
0x10, 0x00, 0x00, 0xf0, 0x43, 0xfb, 0x04, 0x06, 0x0a, 0x0e, 0x11, 0x15,
0x18, 0x1b, 0x9a, 0x69, 0xd5, 0xe7, 0x80, 0x22, 0x99, 0x69, 0x52, 0x01,
0xd0, 0xe7, 0x80, 0x22, 0x99, 0x69, 0x92, 0x01, 0xcc, 0xe7, 0xc0, 0x22,
0x99, 0x69, 0xfa, 0xe7, 0x80, 0x22, 0x99, 0x69, 0xd2, 0x01, 0xc5, 0xe7,
0xa0, 0x22, 0x99, 0x69, 0xfa, 0xe7, 0xc0, 0x22, 0x99, 0x69, 0xf7, 0xe7,
0xe0, 0x22, 0x99, 0x69, 0xf4, 0xe7, 0x03, 0x20, 0xd9, 0x69, 0x81, 0x43,
0xd9, 0x61, 0xd9, 0x69, 0xd9, 0x61, 0x70, 0x21, 0xd8, 0x69, 0x88, 0x43,
0xd8, 0x61, 0x07, 0x2a, 0xb2, 0xd8, 0x10, 0x00, 0x00, 0xf0, 0x16, 0xfb,
0x2f, 0x04, 0x08, 0x0b, 0x0e, 0x11, 0x14, 0x17, 0x10, 0x22, 0xd9, 0x69,
0x0a, 0x43, 0x27, 0xe0, 0x20, 0x22, 0xd9, 0x69, 0xfa, 0xe7, 0x30, 0x22,
0xd9, 0x69, 0xf7, 0xe7, 0x40, 0x22, 0xd9, 0x69, 0xf4, 0xe7, 0x50, 0x22,
0xd9, 0x69, 0xf1, 0xe7, 0x60, 0x22, 0xd9, 0x69, 0xee, 0xe7, 0xda, 0x69,
0x11, 0x43, 0xd9, 0x61, 0x94, 0xe7, 0xd9, 0x69, 0x16, 0x48, 0x01, 0x40,
0xd9, 0x61, 0xd9, 0x69, 0x15, 0x48, 0xd9, 0x61, 0xd9, 0x69, 0x01, 0x40,
0xd9, 0x61, 0x07, 0x2a, 0x00, 0xd9, 0x87, 0xe7, 0x10, 0x00, 0x00, 0xf0,
0xeb, 0xfa, 0x04, 0x07, 0x0b, 0x0f, 0x12, 0x16, 0x19, 0x1c, 0xda, 0x69,
0xda, 0x61, 0x7d, 0xe7, 0x80, 0x22, 0xd9, 0x69, 0x52, 0x01, 0xcf, 0xe7,
0x80, 0x22, 0xd9, 0x69, 0x92, 0x01, 0xcb, 0xe7, 0xc0, 0x22, 0xd9, 0x69,
0xfa, 0xe7, 0x80, 0x22, 0xd9, 0x69, 0xd2, 0x01, 0xc4, 0xe7, 0xa0, 0x22,
0xd9, 0x69, 0xfa, 0xe7, 0xc0, 0x22, 0xd9, 0x69, 0xf7, 0xe7, 0xe0, 0x22,
0xd9, 0x69, 0xf4, 0xe7, 0xff, 0xfc, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff,
0x03, 0x00, 0x00, 0xb5, 0x08, 0x00, 0x06, 0x29, 0x09, 0xd8, 0x1a, 0x6a,
0x00, 0xf0, 0xc0, 0xfa, 0x04, 0x0f, 0x08, 0x11, 0x0a, 0x13, 0x0d, 0x00,
0x02, 0x21, 0x8a, 0x43, 0x1a, 0x62, 0x00, 0xbd, 0x20, 0x21, 0xfa, 0xe7,
0x05, 0x49, 0x0a, 0x40, 0xf8, 0xe7, 0x05, 0x49, 0xfb, 0xe7, 0x08, 0x21,
0xf3, 0xe7, 0x80, 0x21, 0xf1, 0xe7, 0x03, 0x49, 0xf5, 0xe7, 0xc0, 0x46,
0xff, 0xfd, 0xff, 0xff, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xff,
0x03, 0x00, 0x00, 0xb5, 0x08, 0x00, 0x06, 0x29, 0x09, 0xd8, 0x19, 0x6a,
0x00, 0xf0, 0x9c, 0xfa, 0x04, 0x10, 0x08, 0x12, 0x0a, 0x14, 0x0d, 0x00,
0x02, 0x22, 0x0a, 0x43, 0x1a, 0x62, 0x00, 0xbd, 0x20, 0x22, 0xfa, 0xe7,
0x80, 0x22, 0x92, 0x00, 0xf7, 0xe7, 0x80, 0x22, 0x92, 0x01, 0xf4, 0xe7,
0x08, 0x22, 0xf2, 0xe7, 0x80, 0x22, 0xf0, 0xe7, 0x80, 0x22, 0x12, 0x01,
0xed, 0xe7, 0x03, 0x00, 0x00, 0xb5, 0x08, 0x00, 0x06, 0x29, 0x09, 0xd8,
0x19, 0x6a, 0x00, 0xf0, 0x7d, 0xfa, 0x04, 0x10, 0x08, 0x12, 0x0a, 0x14,
0x0d, 0x00, 0x01, 0x22, 0x0a, 0x43, 0x1a, 0x62, 0x00, 0xbd, 0x10, 0x22,
0xfa, 0xe7, 0x80, 0x22, 0x52, 0x00, 0xf7, 0xe7, 0x80, 0x22, 0x52, 0x01,
0xf4, 0xe7, 0x04, 0x22, 0xf2, 0xe7, 0x40, 0x22, 0xf0, 0xe7, 0x80, 0x22,
0xd2, 0x00, 0xed, 0xe7, 0x03, 0x00, 0x00, 0xb5, 0x08, 0x00, 0x06, 0x29,
0x09, 0xd8, 0x1a, 0x6a, 0x00, 0xf0, 0x5e, 0xfa, 0x04, 0x0f, 0x08, 0x11,
0x0a, 0x13, 0x0d, 0x00, 0x01, 0x21, 0x8a, 0x43, 0x1a, 0x62, 0x00, 0xbd,
0x10, 0x21, 0xfa, 0xe7, 0x05, 0x49, 0x0a, 0x40, 0xf8, 0xe7, 0x05, 0x49,
0xfb, 0xe7, 0x04, 0x21, 0xf3, 0xe7, 0x40, 0x21, 0xf1, 0xe7, 0x03, 0x49,
0xf5, 0xe7, 0xc0, 0x46, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff,
0xff, 0xfb, 0xff, 0xff, 0x03, 0x00, 0x00, 0xb5, 0x08, 0x00, 0x06, 0x29,
0x06, 0xd8, 0x00, 0xf0, 0x3b, 0xfa, 0x04, 0x05, 0x06, 0x05, 0x08, 0x05,
0x0a, 0x00, 0x5a, 0x63, 0x00, 0xbd, 0x9a, 0x63, 0xfc, 0xe7, 0xda, 0x63,
0xfa, 0xe7, 0x1a, 0x64, 0xf8, 0xe7, 0x80, 0x23, 0x42, 0x6c, 0x1b, 0x02,
0x13, 0x43, 0x43, 0x64, 0x70, 0x47, 0x41, 0x62, 0x70, 0x47, 0x00, 0x00,
0x03, 0x00, 0x00, 0xb5, 0x08, 0x00, 0x03, 0x29, 0x0b, 0xd8, 0x00, 0xf0,
0x1f, 0xfa, 0x02, 0x0b, 0x12, 0x1b, 0xf0, 0x20, 0x99, 0x69, 0x12, 0x01,
0x81, 0x43, 0x99, 0x61, 0x99, 0x69, 0x0a, 0x43, 0x9a, 0x61, 0x00, 0xbd,
0x99, 0x69, 0x0b, 0x48, 0x12, 0x03, 0x01, 0x40, 0x99, 0x61, 0x99, 0x69,
0xf5, 0xe7, 0xf0, 0x20, 0xd9, 0x69, 0x12, 0x01, 0x81, 0x43, 0xd9, 0x61,
0xd9, 0x69, 0x0a, 0x43, 0xda, 0x61, 0xee, 0xe7, 0xd9, 0x69, 0x03, 0x48,
0x12, 0x03, 0x01, 0x40, 0xd9, 0x61, 0xd9, 0x69, 0xf5, 0xe7, 0xc0, 0x46,
0xff, 0x0f, 0xff, 0xff, 0x03, 0x00, 0x00, 0xb5, 0x08, 0x00, 0x03, 0x29,
0x0b, 0xd8, 0x00, 0xf0, 0xf3, 0xf9, 0x02, 0x0b, 0x12, 0x1b, 0x0c, 0x20,
0x99, 0x69, 0x92, 0x00, 0x81, 0x43, 0x99, 0x61, 0x99, 0x69, 0x0a, 0x43,
0x9a, 0x61, 0x00, 0xbd, 0x99, 0x69, 0x0b, 0x48, 0x92, 0x02, 0x01, 0x40,
0x99, 0x61, 0x99, 0x69, 0xf5, 0xe7, 0x0c, 0x20, 0xd9, 0x69, 0x92, 0x00,
0x81, 0x43, 0xd9, 0x61, 0xd9, 0x69, 0x0a, 0x43, 0xda, 0x61, 0xee, 0xe7,
0xd9, 0x69, 0x03, 0x48, 0x92, 0x02, 0x01, 0x40, 0xd9, 0x61, 0xd9, 0x69,
0xf5, 0xe7, 0xc0, 0x46, 0xff, 0xf3, 0xff, 0xff, 0x03, 0x00, 0x08, 0x00,
0x30, 0xb5, 0x03, 0x21, 0x02, 0x24, 0x05, 0x00, 0x0a, 0x40, 0xa5, 0x43,
0x01, 0x2d, 0x03, 0xd1, 0x54, 0x1e, 0x01, 0x2c, 0x00, 0xd8, 0x4a, 0x40,
0x03, 0x28, 0x0a, 0xd8, 0x00, 0xf0, 0xbc, 0xf9, 0x02, 0x0a, 0x11, 0x19,
0x03, 0x20, 0x99, 0x69, 0x81, 0x43, 0x99, 0x61, 0x99, 0x69, 0x0a, 0x43,
0x9a, 0x61, 0x30, 0xbd, 0x99, 0x69, 0x0a, 0x48, 0x12, 0x02, 0x01, 0x40,
0x99, 0x61, 0x99, 0x69, 0xf5, 0xe7, 0x03, 0x20, 0xd9, 0x69, 0x81, 0x43,
0xd9, 0x61, 0xd9, 0x69, 0x0a, 0x43, 0xda, 0x61, 0xef, 0xe7, 0xd9, 0x69,
0x02, 0x48, 0x12, 0x02, 0x01, 0x40, 0xd9, 0x61, 0xd9, 0x69, 0xf5, 0xe7,
0xff, 0xfc, 0xff, 0xff, 0x01, 0x23, 0x89, 0x00, 0x8b, 0x40, 0x02, 0x6a,
0x13, 0x43, 0x03, 0x62, 0x70, 0x47, 0x07, 0x22, 0x83, 0x68, 0x93, 0x43,
0x83, 0x60, 0x83, 0x68, 0x19, 0x43, 0x81, 0x60, 0x70, 0x47, 0x70, 0x22,
0x83, 0x68, 0x93, 0x43, 0x83, 0x60, 0x83, 0x68, 0x19, 0x43, 0x81, 0x60,
0x70, 0x47, 0x00, 0x00, 0x04, 0x4b, 0x10, 0xb5, 0x1b, 0x68, 0x04, 0x00,
0x48, 0x08, 0xc0, 0x18, 0x00, 0xf0, 0x84, 0xf9, 0xe0, 0x60, 0x10, 0xbd,
0x24, 0x00, 0x00, 0x20, 0x08, 0x29, 0x04, 0xd1, 0x03, 0x68, 0x04, 0x4a,
0x13, 0x40, 0x03, 0x60, 0x70, 0x47, 0x80, 0x23, 0x02, 0x68, 0x5b, 0x01,
0x13, 0x43, 0xf8, 0xe7, 0xff, 0xef, 0xff, 0xff, 0x43, 0x68, 0x02, 0x4a,
0x13, 0x40, 0x0b, 0x43, 0x43, 0x60, 0x70, 0x47, 0xff, 0xcf, 0xff, 0xff,
0x03, 0x68, 0x02, 0x4a, 0x13, 0x40, 0x0b, 0x43, 0x03, 0x60, 0x70, 0x47,
0xff, 0xf9, 0xff, 0xff, 0x0c, 0x22, 0x03, 0x68, 0x93, 0x43, 0x0b, 0x43,
0x03, 0x60, 0x70, 0x47, 0x83, 0x68, 0x02, 0x4a, 0x13, 0x40, 0x0b, 0x43,
0x83, 0x60, 0x70, 0x47, 0xff, 0xfc, 0xff, 0xff, 0x01, 0x23, 0x02, 0x68,
0x13, 0x43, 0x03, 0x60, 0x70, 0x47, 0x70, 0xb5, 0x0d, 0x00, 0x04, 0x00,
0x00, 0xf0, 0x0d, 0xf8, 0x29, 0x00, 0x20, 0x00, 0x00, 0xf0, 0x01, 0xf8,
0x70, 0xbd, 0xc9, 0x05, 0xc9, 0x0d, 0x81, 0x62, 0x70, 0x47, 0x40, 0x6a,
0xc0, 0x05, 0xc0, 0x0d, 0x70, 0x47, 0x80, 0x23, 0xc2, 0x69, 0x1a, 0x42,
0xfc, 0xd0, 0x70, 0x47, 0xfe, 0xe7, 0x70, 0x47, 0x10, 0xb5, 0x16, 0x4b,
0x16, 0x4a, 0x17, 0x49, 0x8b, 0x42, 0x18, 0xd3, 0x00, 0x21, 0x16, 0x4a,
0x93, 0x42, 0x17, 0xd3, 0x80, 0x23, 0x15, 0x4a, 0x9b, 0x00, 0x11, 0x68,
0x14, 0x4c, 0x0b, 0x43, 0x13, 0x60, 0x14, 0x4b, 0x9c, 0x42, 0x0f, 0xd3,
0x13, 0x4c, 0x14, 0x4b, 0x9c, 0x42, 0x0e, 0xd3, 0xff, 0xf7, 0x20, 0xf9,
0x12, 0x4c, 0x13, 0x4b, 0x9c, 0x42, 0x0b, 0xd3, 0x10, 0xbd, 0x01, 0xca,
0x01, 0xc3, 0xe1, 0xe7, 0x02, 0xc3, 0xe3, 0xe7, 0x08, 0xcc, 0x98, 0x47,
0xe9, 0xe7, 0x08, 0xcc, 0x98, 0x47, 0xea, 0xe7, 0x08, 0xcc, 0x98, 0x47,
0xed, 0xe7, 0xc0, 0x46, 0x00, 0x00, 0x00, 0x20, 0x04, 0x2a, 0x00, 0x08,
0x28, 0x00, 0x00, 0x20, 0x7c, 0x01, 0x00, 0x20, 0x14, 0xed, 0x00, 0xe0,
0x04, 0x2a, 0x00, 0x08, 0x04, 0x2a, 0x00, 0x08, 0x04, 0x2a, 0x00, 0x08,
0x04, 0x2a, 0x00, 0x08, 0x04, 0x2a, 0x00, 0x08, 0x04, 0x2a, 0x00, 0x08,
0x02, 0x4b, 0x00, 0x02, 0x00, 0x0a, 0x18, 0x60, 0x70, 0x47, 0xc0, 0x46,
0x14, 0xe0, 0x00, 0xe0, 0x04, 0x21, 0x03, 0x4a, 0x08, 0x40, 0x13, 0x68,
0x8b, 0x43, 0x03, 0x43, 0x13, 0x60, 0x70, 0x47, 0x10, 0xe0, 0x00, 0xe0,
0x02, 0x23, 0x02, 0x4a, 0x11, 0x68, 0x0b, 0x43, 0x13, 0x60, 0x70, 0x47,
0x10, 0xe0, 0x00, 0xe0, 0x01, 0x23, 0x02, 0x4a, 0x11, 0x68, 0x0b, 0x43,
0x13, 0x60, 0x70, 0x47, 0x10, 0xe0, 0x00, 0xe0, 0x04, 0x4a, 0x43, 0x09,
0x9b, 0x00, 0x9b, 0x18, 0x1f, 0x22, 0x10, 0x40, 0x1e, 0x3a, 0x82, 0x40,
0x1a, 0x60, 0x70, 0x47, 0x00, 0xe1, 0x00, 0xe0, 0x10, 0x23, 0x02, 0x4a,
0x11, 0x68, 0x0b, 0x43, 0x13, 0x60, 0x70, 0x47, 0x00, 0x20, 0x02, 0x40,
0x07, 0x21, 0x03, 0x4a, 0x13, 0x68, 0x8b, 0x43, 0x03, 0x43, 0x13, 0x60,
0x70, 0x47, 0xc0, 0x46, 0x00, 0x20, 0x02, 0x40, 0xf0, 0xb5, 0xc6, 0x46,
0x00, 0xb5, 0x0f, 0x2a, 0x43, 0xd9, 0x0b, 0x00, 0x03, 0x26, 0x03, 0x43,
0x1e, 0x40, 0x0c, 0x00, 0x03, 0x00, 0x00, 0x2e, 0x40, 0xd1, 0x15, 0x00,
0x10, 0x3d, 0x2d, 0x09, 0xac, 0x46, 0x2d, 0x01, 0xa8, 0x46, 0x80, 0x44,
0x00, 0xe0, 0x3b, 0x00, 0x67, 0x68, 0x25, 0x68, 0x5f, 0x60, 0xe7, 0x68,
0x1d, 0x60, 0xdf, 0x60, 0x1f, 0x00, 0xa5, 0x68, 0x10, 0x37, 0x9d, 0x60,
0x10, 0x34, 0x43, 0x45, 0xf1, 0xd1, 0x65, 0x46, 0x0f, 0x23, 0x0c, 0x24,
0x01, 0x35, 0x2d, 0x01, 0x49, 0x19, 0x13, 0x40, 0x45, 0x19, 0x14, 0x42,
0x23, 0xd0, 0x8c, 0x59, 0xac, 0x51, 0x04, 0x36, 0x9c, 0x1b, 0x03, 0x2c,
0xf9, 0xd8, 0x03, 0x24, 0x04, 0x3b, 0x9b, 0x08, 0x01, 0x33, 0x9b, 0x00,
0x22, 0x40, 0xed, 0x18, 0xc9, 0x18, 0x56, 0x1e, 0x00, 0x2a, 0x07, 0xd0,
0x00, 0x23, 0x00, 0xe0, 0x23, 0x00, 0xca, 0x5c, 0x5c, 0x1c, 0xea, 0x54,
0x9e, 0x42, 0xf9, 0xd1, 0x04, 0xbc, 0x90, 0x46, 0xf0, 0xbd, 0x05, 0x00,
0x56, 0x1e, 0x00, 0x2a, 0xf0, 0xd1, 0xf7, 0xe7, 0x56, 0x1e, 0x05, 0x00,
0xec, 0xe7, 0x1a, 0x00, 0xf6, 0xe7, 0xc0, 0x46, 0xf0, 0xb5, 0x05, 0x00,
0x83, 0x07, 0x4a, 0xd0, 0x54, 0x1e, 0x00, 0x2a, 0x44, 0xd0, 0xce, 0xb2,
0x03, 0x00, 0x03, 0x22, 0x02, 0xe0, 0x01, 0x35, 0x01, 0x3c, 0x3d, 0xd3,
0x01, 0x33, 0x2e, 0x70, 0x13, 0x42, 0xf8, 0xd1, 0x03, 0x2c, 0x2f, 0xd9,
0xff, 0x22, 0x0a, 0x40, 0x15, 0x02, 0x15, 0x43, 0x2a, 0x04, 0x15, 0x43,
0x0f, 0x2c, 0x35, 0xd9, 0x27, 0x00, 0x10, 0x3f, 0x3f, 0x09, 0x3e, 0x01,
0xb4, 0x46, 0x1e, 0x00, 0x1a, 0x00, 0x10, 0x36, 0x66, 0x44, 0x15, 0x60,
0x55, 0x60, 0x95, 0x60, 0xd5, 0x60, 0x10, 0x32, 0xb2, 0x42, 0xf8, 0xd1,
0x0f, 0x26, 0x0c, 0x22, 0x01, 0x37, 0x3f, 0x01, 0x26, 0x40, 0xdb, 0x19,
0x37, 0x00, 0x22, 0x42, 0x17, 0xd0, 0x3e, 0x1f, 0xb6, 0x08, 0xb4, 0x00,
0xa4, 0x46, 0x1a, 0x00, 0x1c, 0x1d, 0x64, 0x44, 0x20, 0xc2, 0xa2, 0x42,
0xfc, 0xd1, 0x03, 0x24, 0x01, 0x36, 0xb6, 0x00, 0x9b, 0x19, 0x3c, 0x40,
0x00, 0x2c, 0x05, 0xd0, 0xc9, 0xb2, 0x1c, 0x19, 0x19, 0x70, 0x01, 0x33,
0x9c, 0x42, 0xfb, 0xd1, 0xf0, 0xbd, 0x34, 0x00, 0xf4, 0xe7, 0x14, 0x00,
0x03, 0x00, 0xbf, 0xe7, 0x27, 0x00, 0xe0, 0xe7, 0x02, 0xb4, 0x71, 0x46,
0x49, 0x08, 0x49, 0x00, 0x09, 0x5c, 0x49, 0x00, 0x8e, 0x44, 0x02, 0xbc,
0x70, 0x47, 0xc0, 0x46, 0x00, 0x22, 0x43, 0x08, 0x8b, 0x42, 0x74, 0xd3,
0x03, 0x09, 0x8b, 0x42, 0x5f, 0xd3, 0x03, 0x0a, 0x8b, 0x42, 0x44, 0xd3,
0x03, 0x0b, 0x8b, 0x42, 0x28, 0xd3, 0x03, 0x0c, 0x8b, 0x42, 0x0d, 0xd3,
0xff, 0x22, 0x09, 0x02, 0x12, 0xba, 0x03, 0x0c, 0x8b, 0x42, 0x02, 0xd3,
0x12, 0x12, 0x09, 0x02, 0x65, 0xd0, 0x03, 0x0b, 0x8b, 0x42, 0x19, 0xd3,
0x00, 0xe0, 0x09, 0x0a, 0xc3, 0x0b, 0x8b, 0x42, 0x01, 0xd3, 0xcb, 0x03,
0xc0, 0x1a, 0x52, 0x41, 0x83, 0x0b, 0x8b, 0x42, 0x01, 0xd3, 0x8b, 0x03,
0xc0, 0x1a, 0x52, 0x41, 0x43, 0x0b, 0x8b, 0x42, 0x01, 0xd3, 0x4b, 0x03,
0xc0, 0x1a, 0x52, 0x41, 0x03, 0x0b, 0x8b, 0x42, 0x01, 0xd3, 0x0b, 0x03,
0xc0, 0x1a, 0x52, 0x41, 0xc3, 0x0a, 0x8b, 0x42, 0x01, 0xd3, 0xcb, 0x02,
0xc0, 0x1a, 0x52, 0x41, 0x83, 0x0a, 0x8b, 0x42, 0x01, 0xd3, 0x8b, 0x02,
0xc0, 0x1a, 0x52, 0x41, 0x43, 0x0a, 0x8b, 0x42, 0x01, 0xd3, 0x4b, 0x02,
0xc0, 0x1a, 0x52, 0x41, 0x03, 0x0a, 0x8b, 0x42, 0x01, 0xd3, 0x0b, 0x02,
0xc0, 0x1a, 0x52, 0x41, 0xcd, 0xd2, 0xc3, 0x09, 0x8b, 0x42, 0x01, 0xd3,
0xcb, 0x01, 0xc0, 0x1a, 0x52, 0x41, 0x83, 0x09, 0x8b, 0x42, 0x01, 0xd3,
0x8b, 0x01, 0xc0, 0x1a, 0x52, 0x41, 0x43, 0x09, 0x8b, 0x42, 0x01, 0xd3,
0x4b, 0x01, 0xc0, 0x1a, 0x52, 0x41, 0x03, 0x09, 0x8b, 0x42, 0x01, 0xd3,
0x0b, 0x01, 0xc0, 0x1a, 0x52, 0x41, 0xc3, 0x08, 0x8b, 0x42, 0x01, 0xd3,
0xcb, 0x00, 0xc0, 0x1a, 0x52, 0x41, 0x83, 0x08, 0x8b, 0x42, 0x01, 0xd3,
0x8b, 0x00, 0xc0, 0x1a, 0x52, 0x41, 0x43, 0x08, 0x8b, 0x42, 0x01, 0xd3,
0x4b, 0x00, 0xc0, 0x1a, 0x52, 0x41, 0x41, 0x1a, 0x00, 0xd2, 0x01, 0x46,
0x52, 0x41, 0x10, 0x46, 0x70, 0x47, 0xff, 0xe7, 0x01, 0xb5, 0x00, 0x20,
0x00, 0xf0, 0x06, 0xf8, 0x02, 0xbd, 0xc0, 0x46, 0x00, 0x29, 0xf7, 0xd0,
0x76, 0xe7, 0x70, 0x47, 0x70, 0x47, 0xc0, 0x46, 0x84, 0x46, 0x10, 0x1c,
0x62, 0x46, 0x8c, 0x46, 0x19, 0x1c, 0x63, 0x46, 0x00, 0xe0, 0xc0, 0x46,
0x1f, 0xb5, 0x00, 0xf0, 0xe7, 0xfb, 0x00, 0x28, 0x01, 0xd4, 0x00, 0x21,
0xc8, 0x42, 0x1f, 0xbd, 0x10, 0xb5, 0x00, 0xf0, 0x31, 0xfb, 0x40, 0x42,
0x01, 0x30, 0x10, 0xbd, 0x10, 0xb5, 0x00, 0xf0, 0xd9, 0xfb, 0x00, 0x28,
0x01, 0xdb, 0x00, 0x20, 0x10, 0xbd, 0x01, 0x20, 0x10, 0xbd, 0xc0, 0x46,
0x10, 0xb5, 0x00, 0xf0, 0xcf, 0xfb, 0x00, 0x28, 0x01, 0xdd, 0x00, 0x20,
0x10, 0xbd, 0x01, 0x20, 0x10, 0xbd, 0xc0, 0x46, 0x10, 0xb5, 0x00, 0xf0,
0x53, 0xfb, 0x00, 0x28, 0x01, 0xdc, 0x00, 0x20, 0x10, 0xbd, 0x01, 0x20,
0x10, 0xbd, 0xc0, 0x46, 0x10, 0xb5, 0x00, 0xf0, 0x49, 0xfb, 0x00, 0x28,
0x01, 0xda, 0x00, 0x20, 0x10, 0xbd, 0x01, 0x20, 0x10, 0xbd, 0xc0, 0x46,
0x70, 0xb5, 0x00, 0x22, 0x0c, 0x4b, 0x04, 0x00, 0x0d, 0x00, 0xff, 0xf7,
0xef, 0xff, 0x00, 0x28, 0x04, 0xd1, 0x20, 0x00, 0x29, 0x00, 0x01, 0xf0,
0x15, 0xfa, 0x70, 0xbd, 0x06, 0x4b, 0x00, 0x22, 0x20, 0x00, 0x29, 0x00,
0x00, 0xf0, 0x7c, 0xfe, 0x01, 0xf0, 0x0c, 0xfa, 0x80, 0x23, 0x1b, 0x06,
0x9c, 0x46, 0x60, 0x44, 0xf1, 0xe7, 0xc0, 0x46, 0x00, 0x00, 0xe0, 0x41,
0xf0, 0xb5, 0x57, 0x46, 0x4e, 0x46, 0x45, 0x46, 0xde, 0x46, 0xe0, 0xb5,
0x81, 0x46, 0x05, 0x00, 0x0c, 0x03, 0x48, 0x00, 0x92, 0x46, 0x1f, 0x00,
0x85, 0xb0, 0x24, 0x0b, 0x40, 0x0d, 0xce, 0x0f, 0x00, 0x28, 0x59, 0xd0,
0x87, 0x4b, 0x98, 0x42, 0x00, 0xd1, 0x98, 0xe0, 0x6b, 0x0f, 0xe4, 0x00,
0x1c, 0x43, 0x80, 0x23, 0x1b, 0x04, 0x23, 0x43, 0x98, 0x46, 0x83, 0x4b,
0xed, 0x00, 0x9b, 0x46, 0x00, 0x23, 0x99, 0x46, 0x83, 0x44, 0x00, 0x93,
0x3c, 0x03, 0x7b, 0x00, 0x50, 0x46, 0x24, 0x0b, 0x5b, 0x0d, 0xff, 0x0f,
0x00, 0x2b, 0x67, 0xd0, 0x7a, 0x4a, 0x93, 0x42, 0x18, 0xd0, 0x7a, 0x49,
0x42, 0x0f, 0x8c, 0x46, 0xe4, 0x00, 0x59, 0x46, 0x14, 0x43, 0x80, 0x22,
0x63, 0x44, 0x12, 0x04, 0xcb, 0x1a, 0x14, 0x43, 0x9b, 0x46, 0xc2, 0x00,
0x00, 0x20, 0x33, 0x00, 0x7b, 0x40, 0x9a, 0x46, 0x4b, 0x46, 0x0f, 0x2b,
0x00, 0xd9, 0xef, 0xe0, 0x70, 0x49, 0x9b, 0x00, 0xcb, 0x58, 0x9f, 0x46,
0x6f, 0x4b, 0x52, 0x46, 0x9c, 0x46, 0x22, 0x43, 0xe3, 0x44, 0x00, 0x2a,
0x00, 0xd0, 0x95, 0xe0, 0x49, 0x46, 0x02, 0x23, 0x19, 0x43, 0x89, 0x46,
0x00, 0x24, 0x02, 0x20, 0xe5, 0xe7, 0x00, 0x23, 0x00, 0x24, 0x00, 0x25,
0x52, 0x46, 0x1b, 0x05, 0x23, 0x43, 0xd2, 0x07, 0x13, 0x43, 0x28, 0x00,
0x19, 0x00, 0x05, 0xb0, 0x3c, 0xbc, 0x90, 0x46, 0x99, 0x46, 0xa2, 0x46,
0xab, 0x46, 0xf0, 0xbd, 0x00, 0x24, 0x00, 0x25, 0x5b, 0x4b, 0xed, 0xe7,
0x4b, 0x46, 0x23, 0x43, 0x98, 0x46, 0x00, 0xd1, 0x89, 0xe0, 0x00, 0x2c,
0x00, 0xd1, 0xe0, 0xe1, 0x20, 0x00, 0x01, 0xf0, 0xe9, 0xf9, 0x01, 0x00,
0x02, 0x00, 0x0b, 0x39, 0x1d, 0x23, 0x5b, 0x1a, 0x49, 0x46, 0x10, 0x00,
0xd9, 0x40, 0x08, 0x38, 0x84, 0x40, 0x0b, 0x00, 0x4d, 0x46, 0x23, 0x43,
0x98, 0x46, 0x85, 0x40, 0x51, 0x48, 0x3c, 0x03, 0x83, 0x1a, 0x9b, 0x46,
0x00, 0x23, 0x99, 0x46, 0x00, 0x93, 0x7b, 0x00, 0x50, 0x46, 0x24, 0x0b,
0x5b, 0x0d, 0xff, 0x0f, 0x00, 0x2b, 0x97, 0xd1, 0x52, 0x46, 0x22, 0x43,
0x55, 0xd0, 0x00, 0x2c, 0x00, 0xd1, 0xca, 0xe1, 0x20, 0x00, 0x01, 0xf0,
0xc3, 0xf9, 0x02, 0x00, 0x0b, 0x3a, 0x1d, 0x23, 0x01, 0x00, 0x9b, 0x1a,
0x52, 0x46, 0x08, 0x39, 0xda, 0x40, 0x8c, 0x40, 0x14, 0x43, 0x52, 0x46,
0x8a, 0x40, 0x41, 0x4b, 0x58, 0x44, 0x9b, 0x46, 0x83, 0x44, 0x00, 0x20,
0x8d, 0xe7, 0x4b, 0x46, 0x23, 0x43, 0x98, 0x46, 0x40, 0xd1, 0x08, 0x23,
0x99, 0x46, 0x06, 0x3b, 0x00, 0x25, 0x83, 0x46, 0x00, 0x93, 0x69, 0xe7,
0xb2, 0x46, 0x00, 0x9b, 0x02, 0x2b, 0xa9, 0xd0, 0x03, 0x2b, 0x00, 0xd1,
0x11, 0xe2, 0x01, 0x2b, 0x93, 0xd0, 0x35, 0x4a, 0x5a, 0x44, 0x00, 0x2a,
0x00, 0xdc, 0x3c, 0xe1, 0x6b, 0x07, 0x00, 0xd0, 0xa7, 0xe1, 0xed, 0x08,
0x43, 0x46, 0xdb, 0x01, 0x06, 0xd5, 0x42, 0x46, 0x2f, 0x4b, 0x1a, 0x40,
0x90, 0x46, 0x80, 0x22, 0xd2, 0x00, 0x5a, 0x44, 0x2d, 0x4b, 0x9a, 0x42,
0x8e, 0xdc, 0x43, 0x46, 0x52, 0x05, 0x58, 0x07, 0x5c, 0x02, 0x05, 0x43,
0x24, 0x0b, 0x53, 0x0d, 0x78, 0xe7, 0xba, 0x46, 0xa0, 0x46, 0x15, 0x00,
0x00, 0x90, 0xd4, 0xe7, 0x4a, 0x46, 0x03, 0x23, 0x1a, 0x43, 0x91, 0x46,
0x03, 0x20, 0x52, 0x46, 0x4f, 0xe7, 0x49, 0x46, 0x01, 0x23, 0x19, 0x43,
0x89, 0x46, 0x00, 0x24, 0x01, 0x20, 0x48, 0xe7, 0x0c, 0x23, 0x99, 0x46,
0x09, 0x3b, 0xa0, 0x46, 0x83, 0x46, 0x00, 0x93, 0x28, 0xe7, 0x04, 0x23,
0x99, 0x46, 0x00, 0x23, 0x9b, 0x46, 0x01, 0x33, 0x00, 0x25, 0x00, 0x93,
0x20, 0xe7, 0x00, 0x23, 0x80, 0x24, 0x9a, 0x46, 0x00, 0x25, 0x0d, 0x4b,
0x24, 0x03, 0x4f, 0xe7, 0x80, 0x23, 0x41, 0x46, 0x1b, 0x03, 0x19, 0x42,
0x08, 0xd0, 0x1c, 0x42, 0x06, 0xd1, 0x1c, 0x43, 0x24, 0x03, 0xba, 0x46,
0x15, 0x00, 0x06, 0x4b, 0x24, 0x0b, 0x41, 0xe7, 0x80, 0x24, 0x43, 0x46,
0x24, 0x03, 0x1c, 0x43, 0x24, 0x03, 0xb2, 0x46, 0x01, 0x4b, 0x24, 0x0b,
0x38, 0xe7, 0xc0, 0x46, 0xff, 0x07, 0x00, 0x00, 0x01, 0xfc, 0xff, 0xff,
0x84, 0x29, 0x00, 0x08, 0x01, 0xf8, 0xff, 0xff, 0x0d, 0xfc, 0xff, 0xff,
0xf3, 0x03, 0x00, 0x00, 0xff, 0x03, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe,
0xfe, 0x07, 0x00, 0x00, 0x44, 0x45, 0x00, 0xd2, 0x16, 0xe1, 0x00, 0xd1,
0x11, 0xe1, 0x01, 0x23, 0x5b, 0x42, 0x9c, 0x46, 0x2e, 0x00, 0x40, 0x46,
0x00, 0x25, 0xe3, 0x44, 0x23, 0x02, 0x14, 0x0e, 0x1c, 0x43, 0x1b, 0x0c,
0x99, 0x46, 0x23, 0x04, 0x1f, 0x0c, 0x12, 0x02, 0x49, 0x46, 0x00, 0x92,
0x01, 0x97, 0xff, 0xf7, 0x51, 0xfe, 0x02, 0x00, 0x7a, 0x43, 0x0b, 0x04,
0x31, 0x0c, 0x80, 0x46, 0x19, 0x43, 0x8a, 0x42, 0x0b, 0xd9, 0x01, 0x23,
0x5b, 0x42, 0x9c, 0x46, 0x09, 0x19, 0xe0, 0x44, 0x8c, 0x42, 0x04, 0xd8,
0x8a, 0x42, 0x02, 0xd9, 0x83, 0x1e, 0x98, 0x46, 0x09, 0x19, 0x88, 0x1a,
0x49, 0x46, 0xff, 0xf7, 0x39, 0xfe, 0x09, 0x04, 0x8c, 0x46, 0x31, 0x04,
0x66, 0x46, 0x01, 0x9a, 0x09, 0x0c, 0x42, 0x43, 0x03, 0x00, 0x31, 0x43,
0x8a, 0x42, 0x04, 0xd9, 0x09, 0x19, 0x01, 0x3b, 0x8c, 0x42, 0x00, 0xd8,
0x11, 0xe1, 0x89, 0x1a, 0x42, 0x46, 0x00, 0x9e, 0x12, 0x04, 0x1a, 0x43,
0x33, 0x0c, 0x1f, 0x00, 0x10, 0x0c, 0x90, 0x46, 0x02, 0x93, 0x13, 0x04,
0x32, 0x04, 0x16, 0x0c, 0x32, 0x00, 0x1b, 0x0c, 0x5a, 0x43, 0x03, 0x96,
0x7b, 0x43, 0x46, 0x43, 0x78, 0x43, 0x17, 0x0c, 0xbc, 0x46, 0x9b, 0x19,
0x63, 0x44, 0x9e, 0x42, 0x03, 0xd9, 0x80, 0x26, 0x76, 0x02, 0xb4, 0x46,
0x60, 0x44, 0x1e, 0x0c, 0x30, 0x18, 0x16, 0x04, 0x1b, 0x04, 0x36, 0x0c,
0x9e, 0x19, 0x81, 0x42, 0x00, 0xd2, 0x9c, 0xe0, 0x00, 0xd1, 0x97, 0xe0,
0xae, 0x1b, 0x09, 0x1a, 0xb5, 0x42, 0x80, 0x41, 0x40, 0x42, 0x08, 0x1a,
0x84, 0x42, 0x00, 0xd1, 0x11, 0xe1, 0x49, 0x46, 0xff, 0xf7, 0xf4, 0xfd,
0x01, 0x9a, 0x0b, 0x04, 0x42, 0x43, 0x31, 0x0c, 0x05, 0x00, 0x19, 0x43,
0x8a, 0x42, 0x07, 0xd9, 0x09, 0x19, 0x01, 0x3d, 0x8c, 0x42, 0x03, 0xd8,
0x8a, 0x42, 0x01, 0xd9, 0x85, 0x1e, 0x09, 0x19, 0x88, 0x1a, 0x49, 0x46,
0xff, 0xf7, 0xe0, 0xfd, 0x09, 0x04, 0x8c, 0x46, 0x31, 0x04, 0x66, 0x46,
0x01, 0x9a, 0x09, 0x0c, 0x42, 0x43, 0x03, 0x00, 0x31, 0x43, 0x8a, 0x42,
0x07, 0xd9, 0x09, 0x19, 0x01, 0x3b, 0x8c, 0x42, 0x03, 0xd8, 0x8a, 0x42,
0x01, 0xd9, 0x83, 0x1e, 0x09, 0x19, 0x03, 0x9e, 0x89, 0x1a, 0x32, 0x00,
0x2d, 0x04, 0x1d, 0x43, 0x02, 0x9f, 0x2b, 0x04, 0x1b, 0x0c, 0x5a, 0x43,
0x7b, 0x43, 0x9c, 0x46, 0x28, 0x0c, 0x46, 0x43, 0x13, 0x0c, 0xb4, 0x44,
0x63, 0x44, 0x78, 0x43, 0x9e, 0x42, 0x03, 0xd9, 0x80, 0x26, 0x76, 0x02,
0xb4, 0x46, 0x60, 0x44, 0x1e, 0x0c, 0x12, 0x04, 0x1b, 0x04, 0x12, 0x0c,
0x30, 0x18, 0x9b, 0x18, 0x81, 0x42, 0x06, 0xd3, 0x02, 0xd0, 0x01, 0x23,
0x1d, 0x43, 0xce, 0xe6, 0x00, 0x2b, 0x00, 0xd1, 0xcb, 0xe6, 0x61, 0x18,
0x6e, 0x1e, 0xa1, 0x42, 0x00, 0xd2, 0xa4, 0xe0, 0x81, 0x42, 0x00, 0xd2,
0xc9, 0xe0, 0x00, 0xd1, 0xd9, 0xe0, 0x35, 0x00, 0xed, 0xe7, 0x01, 0x25,
0x6d, 0x42, 0x01, 0x21, 0x89, 0x1a, 0x38, 0x29, 0x00, 0xdd, 0x4c, 0xe6,
0x1f, 0x29, 0x00, 0xdc, 0x7f, 0xe0, 0x1f, 0x23, 0x5b, 0x42, 0x9a, 0x1a,
0x43, 0x46, 0xd3, 0x40, 0x20, 0x29, 0x04, 0xd0, 0x44, 0x46, 0x65, 0x4a,
0x5a, 0x44, 0x94, 0x40, 0x25, 0x43, 0x6a, 0x1e, 0x95, 0x41, 0x07, 0x22,
0x2b, 0x43, 0x15, 0x00, 0x00, 0x24, 0x1d, 0x40, 0x1a, 0x42, 0x00, 0xd1,
0xa1, 0xe0, 0x0f, 0x22, 0x00, 0x24, 0x1a, 0x40, 0x04, 0x2a, 0x00, 0xd1,
0x98, 0xe0, 0x1a, 0x1d, 0x9a, 0x42, 0x9b, 0x41, 0x5b, 0x42, 0xe4, 0x18,
0x13, 0x00, 0x22, 0x02, 0x00, 0xd4, 0x8f, 0xe0, 0x01, 0x23, 0x00, 0x24,
0x00, 0x25, 0x23, 0xe6, 0xb5, 0x42, 0x00, 0xd3, 0x64, 0xe7, 0x43, 0x46,
0x5a, 0x1e, 0x00, 0x9b, 0x9c, 0x46, 0x65, 0x44, 0x1f, 0x00, 0x9d, 0x42,
0x9b, 0x41, 0x5b, 0x42, 0x1b, 0x19, 0xc9, 0x18, 0x8c, 0x42, 0x3a, 0xd2,
0x88, 0x42, 0x63, 0xd8, 0x60, 0xd0, 0x90, 0x46, 0x52, 0xe7, 0xaa, 0x42,
0x00, 0xd9, 0xea, 0xe6, 0x43, 0x46, 0xde, 0x07, 0x58, 0x08, 0x6b, 0x08,
0x1e, 0x43, 0xed, 0x07, 0xea, 0xe6, 0x48, 0x46, 0x01, 0xf0, 0x08, 0xf8,
0x01, 0x00, 0x02, 0x00, 0x15, 0x31, 0x20, 0x32, 0x1c, 0x29, 0x00, 0xdc,
0x1a, 0xe6, 0x4b, 0x46, 0x08, 0x38, 0x83, 0x40, 0x00, 0x25, 0x98, 0x46,
0x20, 0xe6, 0x00, 0xf0, 0xf9, 0xff, 0x03, 0x00, 0x1a, 0x00, 0x15, 0x32,
0x20, 0x30, 0x1c, 0x2a, 0x00, 0xdc, 0x30, 0xe6, 0x54, 0x46, 0x08, 0x3b,
0x00, 0x22, 0x9c, 0x40, 0x35, 0xe6, 0x0f, 0x23, 0x2b, 0x40, 0x04, 0x2b,
0x00, 0xd1, 0x52, 0xe6, 0x05, 0x23, 0x5b, 0x42, 0xab, 0x42, 0x9b, 0x41,
0x04, 0x35, 0x5b, 0x42, 0xed, 0x08, 0x98, 0x44, 0x4a, 0xe6, 0x8c, 0x42,
0xc5, 0xd1, 0xaf, 0x42, 0xc0, 0xd9, 0x90, 0x46, 0x16, 0xe7, 0x8a, 0x42,
0x00, 0xd8, 0xea, 0xe6, 0x83, 0x1e, 0x09, 0x19, 0xe7, 0xe6, 0x2a, 0x4a,
0x28, 0x00, 0x5a, 0x44, 0x43, 0x46, 0x95, 0x40, 0x93, 0x40, 0xc8, 0x40,
0x6a, 0x1e, 0x95, 0x41, 0x44, 0x46, 0x03, 0x43, 0x2b, 0x43, 0xcc, 0x40,
0x5a, 0x07, 0x92, 0xd0, 0x0f, 0x22, 0x1a, 0x40, 0x04, 0x2a, 0x88, 0xd1,
0x8d, 0xe7, 0x35, 0x00, 0x81, 0x42, 0x00, 0xd0, 0x4b, 0xe7, 0x00, 0x9a,
0x93, 0x42, 0x00, 0xd0, 0x47, 0xe7, 0x18, 0xe6, 0xae, 0x42, 0x9c, 0xd9,
0x02, 0x23, 0x5b, 0x42, 0x9c, 0x46, 0x00, 0x9b, 0xe0, 0x44, 0x9c, 0x46,
0x65, 0x44, 0x9d, 0x42, 0x9b, 0x41, 0x5b, 0x42, 0x1b, 0x19, 0xc9, 0x18,
0xe4, 0xe6, 0x15, 0x4a, 0x5a, 0x44, 0x00, 0x2a, 0x00, 0xdc, 0x44, 0xe7,
0x01, 0x23, 0x00, 0x25, 0x98, 0x44, 0x09, 0xe6, 0x65, 0x07, 0x64, 0x02,
0x24, 0x0b, 0xdb, 0x08, 0x1d, 0x43, 0x00, 0x23, 0x90, 0xe5, 0x00, 0x9e,
0x02, 0x3d, 0x72, 0x00, 0xb2, 0x42, 0xbf, 0x41, 0x7f, 0x42, 0x3c, 0x19,
0x09, 0x19, 0x00, 0x92, 0xce, 0xe7, 0x80, 0x24, 0x43, 0x46, 0x24, 0x03,
0x1c, 0x43, 0x24, 0x03, 0x06, 0x4b, 0x24, 0x0b, 0x7e, 0xe5, 0x00, 0x9a,
0x9a, 0x42, 0xea, 0xd3, 0x35, 0x00, 0xc4, 0xe7, 0x3e, 0x04, 0x00, 0x00,
0x1e, 0x04, 0x00, 0x00, 0xff, 0x03, 0x00, 0x00, 0xff, 0x07, 0x00, 0x00,
0xf0, 0xb5, 0x4f, 0x46, 0x46, 0x46, 0xd6, 0x46, 0x94, 0x46, 0x91, 0x46,
0x1a, 0x03, 0x12, 0x0b, 0x18, 0x4d, 0xc0, 0xb5, 0x4c, 0x00, 0x0f, 0x03,
0x92, 0x46, 0x5a, 0x00, 0x06, 0x00, 0x80, 0x46, 0x3f, 0x0b, 0x01, 0x20,
0x64, 0x0d, 0xc9, 0x0f, 0x52, 0x0d, 0xdb, 0x0f, 0xac, 0x42, 0x0a, 0xd0,
0xaa, 0x42, 0x03, 0xd0, 0x94, 0x42, 0x01, 0xd1, 0x57, 0x45, 0x0d, 0xd0,
0x1c, 0xbc, 0x90, 0x46, 0x99, 0x46, 0xa2, 0x46, 0xf0, 0xbd, 0x3d, 0x00,
0x35, 0x43, 0xf7, 0xd1, 0xa2, 0x42, 0xf5, 0xd1, 0x52, 0x46, 0x65, 0x46,
0x2a, 0x43, 0xf1, 0xd1, 0x01, 0x20, 0xc8, 0x45, 0xee, 0xd1, 0x99, 0x42,
0x06, 0xd0, 0x00, 0x2c, 0xea, 0xd1, 0x3e, 0x43, 0x30, 0x00, 0x46, 0x1e,
0xb0, 0x41, 0xe5, 0xe7, 0x00, 0x20, 0xe3, 0xe7, 0xff, 0x07, 0x00, 0x00,
0xf0, 0xb5, 0x4e, 0x46, 0x45, 0x46, 0x57, 0x46, 0xde, 0x46, 0x04, 0x00,
0x18, 0x00, 0xe0, 0xb5, 0x16, 0x00, 0x1b, 0x03, 0x1b, 0x0b, 0x32, 0x4d,
0x0f, 0x03, 0x4a, 0x00, 0x99, 0x46, 0x43, 0x00, 0xa4, 0x46, 0xb0, 0x46,
0x3f, 0x0b, 0x52, 0x0d, 0xc9, 0x0f, 0x5b, 0x0d, 0xc0, 0x0f, 0xaa, 0x42,
0x29, 0xd0, 0xab, 0x42, 0x18, 0xd0, 0x00, 0x2a, 0x2a, 0xd1, 0x3c, 0x43,
0xa3, 0x46, 0x65, 0x42, 0x65, 0x41, 0x00, 0x2b, 0x02, 0xd1, 0x4c, 0x46,
0x26, 0x43, 0x27, 0xd0, 0x00, 0x2d, 0x15, 0xd1, 0x81, 0x42, 0x28, 0xd0,
0x02, 0x20, 0x01, 0x39, 0x08, 0x40, 0x01, 0x38, 0x3c, 0xbc, 0x90, 0x46,
0x99, 0x46, 0xa2, 0x46, 0xab, 0x46, 0xf0, 0xbd, 0x4d, 0x46, 0x2e, 0x43,
0x2f, 0xd1, 0x00, 0x2a, 0xee, 0xd1, 0x3c, 0x43, 0x65, 0x42, 0x65, 0x41,
0x00, 0x2d, 0xe9, 0xd0, 0x00, 0x28, 0xed, 0xd1, 0x01, 0x20, 0x40, 0x42,
0xea, 0xe7, 0x3d, 0x00, 0x25, 0x43, 0x20, 0xd1, 0x93, 0x42, 0xeb, 0xd0,
0x00, 0x2b, 0xdd, 0xd1, 0x4c, 0x46, 0x26, 0x43, 0xda, 0xd1, 0xdb, 0xe7,
0x5b, 0x46, 0x00, 0x20, 0x00, 0x2b, 0xdb, 0xd0, 0xd6, 0xe7, 0x9a, 0x42,
0x0a, 0xdc, 0xe7, 0xdb, 0x4f, 0x45, 0xd1, 0xd8, 0x10, 0xd0, 0x00, 0x20,
0x4f, 0x45, 0xd1, 0xd2, 0x00, 0x29, 0xe1, 0xd0, 0x08, 0x00, 0xcd, 0xe7,
0x43, 0x42, 0x58, 0x41, 0x02, 0x23, 0x40, 0x42, 0x18, 0x40, 0x01, 0x38,
0xc6, 0xe7, 0x02, 0x20, 0x40, 0x42, 0xc3, 0xe7, 0xc4, 0x45, 0xbd, 0xd8,
0x00, 0x20, 0xc4, 0x45, 0xbe, 0xd2, 0xeb, 0xe7, 0xff, 0x07, 0x00, 0x00,
0xf0, 0xb5, 0x4e, 0x46, 0x45, 0x46, 0x57, 0x46, 0xde, 0x46, 0x04, 0x00,
0x18, 0x00, 0xe0, 0xb5, 0x16, 0x00, 0x1b, 0x03, 0x1b, 0x0b, 0x31, 0x4d,
0x0f, 0x03, 0x4a, 0x00, 0x99, 0x46, 0x43, 0x00, 0xa4, 0x46, 0xb0, 0x46,
0x3f, 0x0b, 0x52, 0x0d, 0xc9, 0x0f, 0x5b, 0x0d, 0xc0, 0x0f, 0xaa, 0x42,
0x11, 0xd0, 0xab, 0x42, 0x14, 0xd0, 0x00, 0x2a, 0x2f, 0xd1, 0x3c, 0x43,
0xa3, 0x46, 0x65, 0x42, 0x65, 0x41, 0x00, 0x2b, 0x14, 0xd1, 0x4c, 0x46,
0x26, 0x43, 0x11, 0xd1, 0x5b, 0x46, 0x00, 0x20, 0x00, 0x2b, 0x17, 0xd0,
0x10, 0xe0, 0x3d, 0x00, 0x25, 0x43, 0x12, 0xd1, 0x93, 0x42, 0x1c, 0xd1,
0x4d, 0x46, 0x2e, 0x43, 0x0d, 0xd1, 0x00, 0x2a, 0x04, 0xd1, 0x3c, 0x43,
0x65, 0x42, 0x65, 0x41, 0x00, 0x2d, 0x0d, 0xd1, 0x81, 0x42, 0x16, 0xd0,
0x02, 0x20, 0x01, 0x39, 0x08, 0x40, 0x01, 0x38, 0x00, 0xe0, 0x02, 0x20,
0x3c, 0xbc, 0x90, 0x46, 0x99, 0x46, 0xa2, 0x46, 0xab, 0x46, 0xf0, 0xbd,
0x00, 0x28, 0xf7, 0xd1, 0x01, 0x20, 0x40, 0x42, 0xf4, 0xe7, 0x00, 0x2b,
0xea, 0xd1, 0x4c, 0x46, 0x26, 0x43, 0xe7, 0xd1, 0xe8, 0xe7, 0x9a, 0x42,
0x06, 0xdd, 0x43, 0x42, 0x58, 0x41, 0x02, 0x23, 0x40, 0x42, 0x18, 0x40,
0x01, 0x38, 0xe5, 0xe7, 0x9a, 0x42, 0xe9, 0xdb, 0x4f, 0x45, 0xdb, 0xd8,
0x06, 0xd0, 0x00, 0x20, 0x4f, 0x45, 0xdd, 0xd2, 0x00, 0x29, 0xe3, 0xd0,
0x08, 0x00, 0xd9, 0xe7, 0xc4, 0x45, 0xd1, 0xd8, 0x00, 0x20, 0xc4, 0x45,
0xd4, 0xd2, 0xf5, 0xe7, 0xff, 0x07, 0x00, 0x00, 0xf0, 0xb5, 0x57, 0x46,
0x4e, 0x46, 0x45, 0x46, 0xde, 0x46, 0xe0, 0xb5, 0x98, 0x46, 0x0c, 0x03,
0x4b, 0x00, 0x06, 0x00, 0x92, 0x46, 0x87, 0xb0, 0x24, 0x0b, 0x5b, 0x0d,
0xcf, 0x0f, 0x00, 0x2b, 0x6c, 0xd0, 0xdd, 0x4a, 0x93, 0x42, 0x00, 0xd1,
0x86, 0xe0, 0x42, 0x0f, 0xe4, 0x00, 0x14, 0x43, 0x80, 0x22, 0x12, 0x04,
0x14, 0x43, 0xd9, 0x4a, 0xc5, 0x00, 0x94, 0x46, 0x63, 0x44, 0x00, 0x93,
0x00, 0x23, 0x99, 0x46, 0x9b, 0x46, 0x43, 0x46, 0x42, 0x46, 0x1e, 0x03,
0xd2, 0x0f, 0x5b, 0x00, 0x50, 0x46, 0x90, 0x46, 0x36, 0x0b, 0x5b, 0x0d,
0x00, 0xd1, 0x78, 0xe0, 0xce, 0x4a, 0x93, 0x42, 0x1d, 0xd0, 0xce, 0x49,
0x42, 0x0f, 0x8c, 0x46, 0x00, 0x99, 0x63, 0x44, 0xf6, 0x00, 0x8c, 0x46,
0x16, 0x43, 0x80, 0x22, 0x9c, 0x44, 0x12, 0x04, 0x63, 0x46, 0x16, 0x43,
0xc2, 0x00, 0x00, 0x20, 0x00, 0x93, 0x00, 0x99, 0x43, 0x46, 0x01, 0x31,
0x8c, 0x46, 0x49, 0x46, 0x7b, 0x40, 0x01, 0x93, 0x0f, 0x29, 0x00, 0xd9,
0x7e, 0xe0, 0xc2, 0x4b, 0x89, 0x00, 0x59, 0x58, 0x8f, 0x46, 0x52, 0x46,
0x00, 0x9b, 0x32, 0x43, 0x00, 0xd0, 0x56, 0xe1, 0xbb, 0x49, 0x00, 0x26,
0x8c, 0x46, 0x63, 0x44, 0x49, 0x46, 0x00, 0x93, 0x02, 0x23, 0x19, 0x43,
0x89, 0x46, 0x02, 0x20, 0xe1, 0xe7, 0x43, 0x46, 0x01, 0x93, 0x34, 0x00,
0x15, 0x00, 0x83, 0x46, 0x5b, 0x46, 0x02, 0x2b, 0x5e, 0xd0, 0x03, 0x2b,
0x00, 0xd1, 0xf3, 0xe1, 0x01, 0x2b, 0x00, 0xd0, 0x18, 0xe1, 0x00, 0x22,
0x00, 0x24, 0x00, 0x25, 0x01, 0x9b, 0x12, 0x05, 0x22, 0x43, 0xdb, 0x07,
0x1a, 0x43, 0x28, 0x00, 0x11, 0x00, 0x07, 0xb0, 0x3c, 0xbc, 0x90, 0x46,
0x99, 0x46, 0xa2, 0x46, 0xab, 0x46, 0xf0, 0xbd, 0x25, 0x00, 0x05, 0x43,
0x00, 0xd1, 0x41, 0xe1, 0x00, 0x2c, 0x00, 0xd1, 0xad, 0xe1, 0x20, 0x00,
0x00, 0xf0, 0xd2, 0xfd, 0x01, 0x00, 0x02, 0x00, 0x0b, 0x39, 0x1d, 0x23,
0x10, 0x00, 0x5b, 0x1a, 0x31, 0x00, 0x35, 0x00, 0x08, 0x38, 0x84, 0x40,
0xd9, 0x40, 0x85, 0x40, 0x0c, 0x43, 0x9e, 0x48, 0x83, 0x1a, 0x00, 0x93,
0x00, 0x23, 0x99, 0x46, 0x9b, 0x46, 0x86, 0xe7, 0x05, 0x00, 0x25, 0x43,
0x00, 0xd0, 0x1c, 0xe1, 0x08, 0x22, 0x00, 0x93, 0x02, 0x23, 0x00, 0x24,
0x91, 0x46, 0x9b, 0x46, 0x7b, 0xe7, 0x52, 0x46, 0x32, 0x43, 0x00, 0xd1,
0x0a, 0xe1, 0x00, 0x2e, 0x00, 0xd1, 0x76, 0xe1, 0x30, 0x00, 0x00, 0xf0,
0xa9, 0xfd, 0x02, 0x00, 0x0b, 0x3a, 0x1d, 0x23, 0x01, 0x00, 0x9b, 0x1a,
0x52, 0x46, 0x08, 0x39, 0xda, 0x40, 0x8e, 0x40, 0x16, 0x43, 0x52, 0x46,
0x8a, 0x40, 0x00, 0x9b, 0x89, 0x49, 0x18, 0x1a, 0x03, 0x00, 0x8c, 0x46,
0x63, 0x44, 0x00, 0x20, 0x00, 0x93, 0x7a, 0xe7, 0x00, 0x24, 0x00, 0x25,
0x81, 0x4a, 0xa5, 0xe7, 0x2f, 0x0c, 0x2d, 0x04, 0x2d, 0x0c, 0x2b, 0x00,
0x11, 0x0c, 0x12, 0x04, 0x12, 0x0c, 0x53, 0x43, 0x98, 0x46, 0x13, 0x00,
0x28, 0x00, 0x7b, 0x43, 0x99, 0x46, 0x48, 0x43, 0x48, 0x44, 0x83, 0x46,
0x40, 0x46, 0x0b, 0x00, 0x00, 0x0c, 0x82, 0x46, 0x58, 0x46, 0x7b, 0x43,
0x50, 0x44, 0x02, 0x93, 0x81, 0x45, 0x06, 0xd9, 0x9a, 0x46, 0x80, 0x23,
0x5b, 0x02, 0x99, 0x46, 0xca, 0x44, 0x53, 0x46, 0x02, 0x93, 0x03, 0x0c,
0x9b, 0x46, 0x43, 0x46, 0x1b, 0x04, 0x00, 0x04, 0x1b, 0x0c, 0x98, 0x46,
0x03, 0x00, 0x43, 0x44, 0x04, 0x93, 0x33, 0x0c, 0x99, 0x46, 0x2b, 0x00,
0x36, 0x04, 0x36, 0x0c, 0x73, 0x43, 0x98, 0x46, 0x33, 0x00, 0x7b, 0x43,
0x9a, 0x46, 0x4b, 0x46, 0x5d, 0x43, 0x5f, 0x43, 0x43, 0x46, 0x55, 0x44,
0x18, 0x0c, 0x40, 0x19, 0x82, 0x45, 0x03, 0xd9, 0x80, 0x23, 0x5b, 0x02,
0x9a, 0x46, 0x57, 0x44, 0x05, 0x0c, 0xeb, 0x19, 0x05, 0x93, 0x43, 0x46,
0x1d, 0x04, 0x2d, 0x0c, 0x00, 0x04, 0x40, 0x19, 0x25, 0x0c, 0x24, 0x04,
0x24, 0x0c, 0x27, 0x00, 0x57, 0x43, 0x6a, 0x43, 0x90, 0x46, 0x2a, 0x00,
0x3b, 0x0c, 0x9a, 0x46, 0x4a, 0x43, 0x61, 0x43, 0x41, 0x44, 0x51, 0x44,
0x83, 0x44, 0x88, 0x45, 0x03, 0xd9, 0x80, 0x23, 0x5b, 0x02, 0x98, 0x46,
0x42, 0x44, 0x3f, 0x04, 0x0b, 0x0c, 0x3f, 0x0c, 0x09, 0x04, 0xc9, 0x19,
0x27, 0x00, 0x98, 0x46, 0x4b, 0x46, 0x77, 0x43, 0x5c, 0x43, 0x6e, 0x43,
0x5d, 0x43, 0x3b, 0x0c, 0x99, 0x46, 0xa4, 0x19, 0x4c, 0x44, 0x42, 0x44,
0x03, 0x95, 0xa6, 0x42, 0x04, 0xd9, 0x80, 0x23, 0x5b, 0x02, 0x98, 0x46,
0x45, 0x44, 0x03, 0x95, 0x02, 0x9b, 0x3f, 0x04, 0x5b, 0x44, 0x1e, 0x00,
0x83, 0x42, 0x80, 0x41, 0x23, 0x04, 0x98, 0x46, 0x05, 0x9b, 0x3f, 0x0c,
0x47, 0x44, 0x98, 0x46, 0x76, 0x18, 0x8e, 0x42, 0x89, 0x41, 0x47, 0x44,
0x40, 0x42, 0x3d, 0x18, 0xa8, 0x46, 0x93, 0x46, 0x49, 0x42, 0x8a, 0x46,
0xc3, 0x44, 0x9f, 0x42, 0xbf, 0x41, 0x80, 0x45, 0x80, 0x41, 0x03, 0x9b,
0xda, 0x44, 0x98, 0x46, 0x53, 0x46, 0x40, 0x42, 0x7f, 0x42, 0x07, 0x43,
0x24, 0x0c, 0x93, 0x45, 0x92, 0x41, 0x8a, 0x45, 0x89, 0x41, 0x3f, 0x19,
0xdc, 0x0d, 0x04, 0x9b, 0x75, 0x02, 0x1d, 0x43, 0x68, 0x1e, 0x85, 0x41,
0x53, 0x46, 0x52, 0x42, 0x49, 0x42, 0x0a, 0x43, 0xbf, 0x18, 0x47, 0x44,
0xf6, 0x0d, 0x7f, 0x02, 0x35, 0x43, 0x5a, 0x02, 0x3c, 0x43, 0x15, 0x43,
0xfb, 0x01, 0x00, 0xd4, 0xc1, 0xe0, 0x01, 0x21, 0x6a, 0x08, 0x0d, 0x40,
0x15, 0x43, 0xe2, 0x07, 0x15, 0x43, 0x64, 0x08, 0x26, 0x49, 0x61, 0x44,
0x00, 0x29, 0x56, 0xdd, 0x6b, 0x07, 0x09, 0xd0, 0x0f, 0x22, 0x2a, 0x40,
0x04, 0x2a, 0x05, 0xd0, 0x2a, 0x1d, 0xaa, 0x42, 0xad, 0x41, 0x6d, 0x42,
0x64, 0x19, 0x15, 0x00, 0xe3, 0x01, 0x04, 0xd5, 0x80, 0x21, 0x1e, 0x4a,
0xc9, 0x00, 0x14, 0x40, 0x61, 0x44, 0x1d, 0x4a, 0x91, 0x42, 0x00, 0xdd,
0x24, 0xe7, 0x62, 0x07, 0xed, 0x08, 0x64, 0x02, 0x49, 0x05, 0x15, 0x43,
0x24, 0x0b, 0x4a, 0x0d, 0xc6, 0xe6, 0x01, 0x97, 0xb8, 0xe6, 0x10, 0x4a,
0x03, 0x20, 0x94, 0x46, 0x63, 0x44, 0x4a, 0x46, 0x00, 0x93, 0x03, 0x23,
0x1a, 0x43, 0x91, 0x46, 0x52, 0x46, 0x8a, 0xe6, 0x49, 0x46, 0x01, 0x23,
0x19, 0x43, 0x89, 0x46, 0x00, 0x26, 0x01, 0x20, 0x83, 0xe6, 0x0c, 0x22,
0x00, 0x93, 0x03, 0x23, 0x05, 0x00, 0x91, 0x46, 0x9b, 0x46, 0x5e, 0xe6,
0x04, 0x23, 0x99, 0x46, 0x00, 0x23, 0x00, 0x93, 0x01, 0x33, 0x00, 0x24,
0x9b, 0x46, 0x56, 0xe6, 0xff, 0x07, 0x00, 0x00, 0x01, 0xfc, 0xff, 0xff,
0xc4, 0x29, 0x00, 0x08, 0x0d, 0xfc, 0xff, 0xff, 0xff, 0x03, 0x00, 0x00,
0xff, 0xff, 0xff, 0xfe, 0xfe, 0x07, 0x00, 0x00, 0x00, 0x23, 0x80, 0x24,
0x00, 0x25, 0x44, 0x4a, 0x01, 0x93, 0x24, 0x03, 0x8e, 0xe6, 0x01, 0x20,
0x40, 0x1a, 0x38, 0x28, 0x00, 0xdd, 0x86, 0xe6, 0x1f, 0x28, 0x5b, 0xdd,
0x1f, 0x22, 0x23, 0x00, 0x52, 0x42, 0x51, 0x1a, 0xcb, 0x40, 0x19, 0x00,
0x20, 0x28, 0x03, 0xd0, 0x3b, 0x4a, 0x62, 0x44, 0x94, 0x40, 0x25, 0x43,
0x6a, 0x1e, 0x95, 0x41, 0x2a, 0x00, 0x0a, 0x43, 0x07, 0x21, 0x0d, 0x00,
0x00, 0x24, 0x15, 0x40, 0x11, 0x42, 0x5b, 0xd0, 0x0f, 0x21, 0x00, 0x24,
0x11, 0x40, 0x04, 0x29, 0x53, 0xd0, 0x11, 0x1d, 0x91, 0x42, 0x92, 0x41,
0x52, 0x42, 0xa4, 0x18, 0x0a, 0x00, 0x23, 0x02, 0x4b, 0xd5, 0x01, 0x22,
0x00, 0x24, 0x00, 0x25, 0x60, 0xe6, 0x80, 0x23, 0x1b, 0x03, 0x1c, 0x42,
0x09, 0xd0, 0x1e, 0x42, 0x07, 0xd1, 0x33, 0x43, 0x1c, 0x03, 0x43, 0x46,
0x15, 0x00, 0x24, 0x0b, 0x25, 0x4a, 0x01, 0x93, 0x52, 0xe6, 0x80, 0x22,
0x12, 0x03, 0x14, 0x43, 0x24, 0x03, 0x22, 0x4a, 0x24, 0x0b, 0x01, 0x97,
0x4a, 0xe6, 0x00, 0xf0, 0x33, 0xfc, 0x03, 0x00, 0x1a, 0x00, 0x15, 0x32,
0x20, 0x30, 0x1c, 0x2a, 0x00, 0xdc, 0x84, 0xe6, 0x56, 0x46, 0x08, 0x3b,
0x00, 0x22, 0x9e, 0x40, 0x89, 0xe6, 0x00, 0xf0, 0x25, 0xfc, 0x01, 0x00,
0x02, 0x00, 0x15, 0x31, 0x20, 0x32, 0x1c, 0x29, 0x00, 0xdc, 0x4e, 0xe6,
0x34, 0x00, 0x08, 0x38, 0x00, 0x25, 0x84, 0x40, 0x53, 0xe6, 0x00, 0x9b,
0x9c, 0x46, 0x41, 0xe7, 0x12, 0x49, 0x22, 0x00, 0x61, 0x44, 0x2e, 0x00,
0x8d, 0x40, 0x8a, 0x40, 0xc6, 0x40, 0x69, 0x1e, 0x8d, 0x41, 0x32, 0x43,
0x2a, 0x43, 0xc4, 0x40, 0x53, 0x07, 0xb6, 0xd0, 0x0f, 0x21, 0x11, 0x40,
0x04, 0x29, 0xac, 0xd1, 0xb1, 0xe7, 0x65, 0x07, 0x64, 0x02, 0x24, 0x0b,
0xd2, 0x08, 0x15, 0x43, 0x00, 0x22, 0x11, 0xe6, 0x80, 0x22, 0x12, 0x03,
0x14, 0x43, 0x24, 0x03, 0x01, 0x4a, 0x24, 0x0b, 0x0a, 0xe6, 0xc0, 0x46,
0xff, 0x07, 0x00, 0x00, 0x3e, 0x04, 0x00, 0x00, 0x1e, 0x04, 0x00, 0x00,
0xf8, 0xb5, 0x57, 0x46, 0x4e, 0x46, 0x45, 0x46, 0xde, 0x46, 0x04, 0x00,
0xe0, 0xb5, 0x1f, 0x00, 0x10, 0x00, 0x0b, 0x03, 0x62, 0x0f, 0x4e, 0x00,
0xcd, 0x0f, 0x5b, 0x0a, 0x39, 0x03, 0x13, 0x43, 0x49, 0x0a, 0xe2, 0x00,
0x44, 0x0f, 0x21, 0x43, 0xc2, 0x4c, 0x91, 0x46, 0x92, 0x46, 0xc0, 0x00,
0x7a, 0x00, 0x80, 0x46, 0x76, 0x0d, 0x52, 0x0d, 0xff, 0x0f, 0xa2, 0x42,
0x00, 0xd1, 0xb4, 0xe0, 0x01, 0x24, 0x67, 0x40, 0xbb, 0x46, 0xbd, 0x42,
0x00, 0xd1, 0x88, 0xe0, 0xb4, 0x1a, 0xa4, 0x46, 0x00, 0x2c, 0x00, 0xdc,
0xb2, 0xe0, 0x00, 0x2a, 0x00, 0xd1, 0xc5, 0xe0, 0xb5, 0x4a, 0x96, 0x42,
0x00, 0xd1, 0x8b, 0xe2, 0x80, 0x22, 0x12, 0x04, 0x11, 0x43, 0x62, 0x46,
0x38, 0x2a, 0x00, 0xdd, 0xa1, 0xe1, 0x1f, 0x2a, 0x00, 0xdd, 0x16, 0xe2,
0x20, 0x27, 0x0c, 0x00, 0xbf, 0x1a, 0xbc, 0x40, 0x02, 0x00, 0xa0, 0x46,
0x64, 0x46, 0xb8, 0x40, 0xe2, 0x40, 0x44, 0x46, 0x14, 0x43, 0x02, 0x00,
0x50, 0x1e, 0x82, 0x41, 0x60, 0x46, 0xc1, 0x40, 0x22, 0x43, 0x5b, 0x1a,
0x49, 0x46, 0x8c, 0x1a, 0xa1, 0x45, 0x92, 0x41, 0x52, 0x42, 0x9b, 0x1a,
0x98, 0x46, 0x43, 0x46, 0x1b, 0x02, 0x00, 0xd4, 0x17, 0xe1, 0x43, 0x46,
0x5b, 0x02, 0x5b, 0x0a, 0x98, 0x46, 0x43, 0x46, 0x00, 0x2b, 0x00, 0xd1,
0x6c, 0xe1, 0x40, 0x46, 0x00, 0xf0, 0x8a, 0xfb, 0x02, 0x00, 0x08, 0x3a,
0x20, 0x21, 0x20, 0x00, 0x43, 0x46, 0x89, 0x1a, 0x93, 0x40, 0xc8, 0x40,
0x94, 0x40, 0x03, 0x43, 0x96, 0x42, 0x00, 0xdd, 0x57, 0xe1, 0x96, 0x1b,
0x71, 0x1c, 0x1f, 0x29, 0x00, 0xdd, 0xcb, 0xe1, 0x20, 0x22, 0x18, 0x00,
0x26, 0x00, 0x52, 0x1a, 0x94, 0x40, 0x90, 0x40, 0xce, 0x40, 0xcb, 0x40,
0x62, 0x1e, 0x94, 0x41, 0x30, 0x43, 0x98, 0x46, 0x00, 0x26, 0x04, 0x43,
0x63, 0x07, 0x09, 0xd0, 0x0f, 0x23, 0x23, 0x40, 0x04, 0x2b, 0x05, 0xd0,
0x23, 0x1d, 0xa3, 0x42, 0xa4, 0x41, 0x64, 0x42, 0xa0, 0x44, 0x1c, 0x00,
0x43, 0x46, 0x1b, 0x02, 0x00, 0xd4, 0xdf, 0xe0, 0x82, 0x4b, 0x01, 0x36,
0x9e, 0x42, 0x00, 0xd1, 0xfb, 0xe0, 0x42, 0x46, 0x80, 0x4b, 0xe4, 0x08,
0x1a, 0x40, 0x13, 0x00, 0x71, 0x05, 0x52, 0x07, 0x5b, 0x02, 0x22, 0x43,
0x1b, 0x0b, 0x49, 0x0d, 0x09, 0x05, 0xed, 0x07, 0x19, 0x43, 0x29, 0x43,
0x10, 0x00, 0x3c, 0xbc, 0x90, 0x46, 0x99, 0x46, 0xa2, 0x46, 0xab, 0x46,
0xf8, 0xbd, 0xb4, 0x1a, 0xa4, 0x46, 0x00, 0x2c, 0x58, 0xdd, 0x00, 0x2a,
0x00, 0xd1, 0x9e, 0xe0, 0x71, 0x4a, 0x96, 0x42, 0x00, 0xd1, 0x3b, 0xe1,
0x80, 0x22, 0x12, 0x04, 0x11, 0x43, 0x62, 0x46, 0x38, 0x2a, 0x00, 0xdd,
0xc1, 0xe0, 0x1f, 0x2a, 0x00, 0xdc, 0xbb, 0xe1, 0x0c, 0x00, 0x20, 0x3a,
0xd4, 0x40, 0x22, 0x00, 0x64, 0x46, 0x20, 0x2c, 0x04, 0xd0, 0x40, 0x27,
0x3f, 0x1b, 0xb9, 0x40, 0x08, 0x43, 0x80, 0x46, 0x44, 0x46, 0x61, 0x1e,
0x8c, 0x41, 0x14, 0x43, 0xb1, 0xe0, 0x0c, 0x00, 0x04, 0x43, 0x2a, 0xd0,
0xbb, 0x46, 0xbd, 0x42, 0x2d, 0xd0, 0x61, 0x4c, 0xa4, 0x46, 0xb4, 0x44,
0x64, 0x46, 0x00, 0x2c, 0x5c, 0xd0, 0x94, 0x1b, 0xa4, 0x46, 0x00, 0x2e,
0x00, 0xd0, 0x15, 0xe1, 0x4d, 0x46, 0x1d, 0x43, 0x00, 0xd1, 0xc3, 0xe1,
0x65, 0x1e, 0x01, 0x2c, 0x00, 0xd1, 0x0c, 0xe2, 0x55, 0x4e, 0xb4, 0x42,
0x00, 0xd1, 0xf8, 0xe1, 0xac, 0x46, 0x0e, 0xe1, 0x0a, 0x00, 0x02, 0x43,
0x00, 0xd1, 0x36, 0xe1, 0x22, 0x00, 0x01, 0x3a, 0x01, 0x2c, 0x00, 0xd1,
0xc6, 0xe1, 0x4e, 0x4c, 0xa4, 0x45, 0x00, 0xd1, 0xf4, 0xe0, 0x94, 0x46,
0x31, 0xe7, 0x01, 0x24, 0x67, 0x40, 0xbb, 0x46, 0xbd, 0x42, 0x00, 0xd0,
0x1c, 0xe7, 0x4a, 0x4c, 0xa4, 0x46, 0xb4, 0x44, 0x64, 0x46, 0x00, 0x2c,
0x00, 0xd1, 0xcf, 0xe0, 0x94, 0x1b, 0xa4, 0x46, 0x00, 0x2e, 0x00, 0xd1,
0x5c, 0xe1, 0x42, 0x4e, 0xb2, 0x42, 0x00, 0xd1, 0xec, 0xe1, 0x80, 0x26,
0x36, 0x04, 0x33, 0x43, 0x64, 0x46, 0x38, 0x2c, 0x00, 0xdd, 0xb3, 0xe1,
0x1f, 0x2c, 0x00, 0xdd, 0x38, 0xe2, 0x20, 0x26, 0x36, 0x1b, 0x1c, 0x00,
0xb4, 0x40, 0x4f, 0x46, 0xa0, 0x46, 0x64, 0x46, 0xe7, 0x40, 0x44, 0x46,
0x3c, 0x43, 0x4f, 0x46, 0xb7, 0x40, 0x3e, 0x00, 0x77, 0x1e, 0xbe, 0x41,
0x34, 0x43, 0x66, 0x46, 0xf3, 0x40, 0xc9, 0x18, 0x24, 0x18, 0x84, 0x42,
0x9b, 0x41, 0x5b, 0x42, 0x98, 0x46, 0x16, 0x00, 0x88, 0x44, 0x4e, 0xe0,
0x30, 0x4a, 0x74, 0x1c, 0x14, 0x42, 0x00, 0xd0, 0xd6, 0xe0, 0x4a, 0x46,
0x1a, 0x43, 0x00, 0x2e, 0x00, 0xd0, 0x5b, 0xe1, 0x00, 0x2a, 0x00, 0xd1,
0xa5, 0xe1, 0x0a, 0x00, 0x02, 0x43, 0x00, 0xd0, 0xbb, 0xe1, 0x4a, 0x46,
0x59, 0x07, 0xd2, 0x08, 0x0a, 0x43, 0xdb, 0x08, 0x27, 0xe0, 0x0a, 0x00,
0x02, 0x43, 0x00, 0xd1, 0x74, 0xe1, 0x22, 0x00, 0x01, 0x3a, 0x01, 0x2c,
0x05, 0xd0, 0x1e, 0x4c, 0xa4, 0x45, 0x00, 0xd1, 0x94, 0xe0, 0x94, 0x46,
0x59, 0xe7, 0x48, 0x44, 0x48, 0x45, 0x92, 0x41, 0x5b, 0x18, 0x98, 0x46,
0x04, 0x00, 0x52, 0x42, 0x90, 0x44, 0x43, 0x46, 0x02, 0x26, 0x1b, 0x02,
0x00, 0xd5, 0xc4, 0xe0, 0x01, 0x3e, 0x63, 0x07, 0x00, 0xd0, 0x11, 0xe7,
0x43, 0x46, 0xb4, 0x46, 0x59, 0x07, 0xe2, 0x08, 0x0a, 0x43, 0xdb, 0x08,
0x0f, 0x49, 0x8c, 0x45, 0x40, 0xd0, 0x61, 0x46, 0x1b, 0x03, 0x49, 0x05,
0x1b, 0x0b, 0x49, 0x0d, 0x20, 0xe7, 0x01, 0x43, 0x0c, 0x00, 0x61, 0x1e,
0x8c, 0x41, 0x4c, 0x44, 0x4c, 0x45, 0x92, 0x41, 0x52, 0x42, 0x90, 0x46,
0x98, 0x44, 0x43, 0x46, 0x1b, 0x02, 0xe0, 0xd5, 0x04, 0x4b, 0x01, 0x36,
0x9e, 0x42, 0x00, 0xd0, 0x9f, 0xe0, 0x31, 0x00, 0x00, 0x23, 0x00, 0x22,
0x0a, 0xe7, 0xc0, 0x46, 0xff, 0x07, 0x00, 0x00, 0xff, 0xff, 0x7f, 0xff,
0x01, 0xf8, 0xff, 0xff, 0xfe, 0x07, 0x00, 0x00, 0x00, 0x2a, 0x00, 0xd1,
0x60, 0xe1, 0x0a, 0x00, 0x02, 0x43, 0x4d, 0xd0, 0x4a, 0x46, 0x5c, 0x07,
0xd2, 0x08, 0x22, 0x43, 0x80, 0x24, 0xdb, 0x08, 0x24, 0x03, 0x23, 0x42,
0x07, 0xd0, 0xce, 0x08, 0x26, 0x42, 0x04, 0xd1, 0x5d, 0x46, 0x33, 0x00,
0xc2, 0x08, 0x49, 0x07, 0x0a, 0x43, 0x51, 0x0f, 0xd2, 0x00, 0xd2, 0x08,
0x49, 0x07, 0x0a, 0x43, 0x11, 0x00, 0x19, 0x43, 0x00, 0xd1, 0xc8, 0xe1,
0x80, 0x21, 0x09, 0x03, 0x0b, 0x43, 0x1b, 0x03, 0xd5, 0x49, 0x1b, 0x0b,
0xda, 0xe6, 0xd5, 0x49, 0xb6, 0x1a, 0x0b, 0x40, 0x98, 0x46, 0xb5, 0xe6,
0x20, 0x00, 0x00, 0xf0, 0x1d, 0xfa, 0x02, 0x00, 0x18, 0x32, 0x1f, 0x2a,
0x00, 0xdc, 0x8f, 0xe6, 0x23, 0x00, 0x08, 0x38, 0x83, 0x40, 0x00, 0x24,
0x92, 0xe6, 0x08, 0x43, 0x02, 0x00, 0x50, 0x1e, 0x82, 0x41, 0x6d, 0xe6,
0xca, 0x4c, 0x72, 0x1c, 0x22, 0x42, 0x00, 0xd0, 0xad, 0xe0, 0x4a, 0x46,
0x1a, 0x43, 0x00, 0x2e, 0xb8, 0xd1, 0x00, 0x2a, 0x00, 0xd1, 0x58, 0xe1,
0x0a, 0x00, 0x02, 0x43, 0x00, 0xd0, 0x59, 0xe1, 0x4a, 0x46, 0x59, 0x07,
0xd2, 0x08, 0x0a, 0x43, 0xdb, 0x08, 0x86, 0xe7, 0x4a, 0x46, 0x59, 0x07,
0xd2, 0x08, 0x0a, 0x43, 0xdb, 0x08, 0xc1, 0xe7, 0xba, 0x4d, 0xaa, 0x42,
0x00, 0xd1, 0x1e, 0xe1, 0x80, 0x25, 0x2d, 0x04, 0x2b, 0x43, 0x64, 0x46,
0x38, 0x2c, 0x5d, 0xdc, 0x1f, 0x2c, 0x00, 0xdd, 0xd0, 0xe0, 0x20, 0x25,
0x67, 0x46, 0x2d, 0x1b, 0x4e, 0x46, 0x1c, 0x00, 0xfe, 0x40, 0xac, 0x40,
0x34, 0x43, 0x4e, 0x46, 0xae, 0x40, 0x35, 0x00, 0xfb, 0x40, 0x6e, 0x1e,
0xb5, 0x41, 0xc9, 0x1a, 0x2c, 0x43, 0x4e, 0xe0, 0x4a, 0x46, 0x14, 0x1a,
0xa1, 0x45, 0x92, 0x41, 0x52, 0x42, 0x90, 0x46, 0x5f, 0x1a, 0x3a, 0x00,
0x47, 0x46, 0xd2, 0x1b, 0x90, 0x46, 0x12, 0x02, 0x00, 0xd5, 0x8b, 0xe0,
0x42, 0x46, 0x22, 0x43, 0x00, 0xd0, 0x30, 0xe6, 0x00, 0x23, 0x00, 0x25,
0x4d, 0xe7, 0x4a, 0x46, 0x59, 0x07, 0xd2, 0x08, 0x0a, 0x43, 0xdb, 0x08,
0x44, 0xe7, 0x42, 0x46, 0x9e, 0x4b, 0x61, 0x08, 0x1a, 0x40, 0x13, 0x00,
0x01, 0x22, 0x14, 0x40, 0x0c, 0x43, 0xda, 0x07, 0x5b, 0x08, 0x98, 0x46,
0x14, 0x43, 0x41, 0xe6, 0x1a, 0x00, 0x1f, 0x3e, 0xf2, 0x40, 0x16, 0x00,
0x20, 0x29, 0x03, 0xd0, 0x40, 0x22, 0x51, 0x1a, 0x8b, 0x40, 0x1c, 0x43,
0x62, 0x1e, 0x94, 0x41, 0x00, 0x23, 0x34, 0x43, 0x98, 0x46, 0x00, 0x26,
0x1d, 0xe7, 0x0c, 0x00, 0x20, 0x3a, 0xd4, 0x40, 0x22, 0x00, 0x64, 0x46,
0x20, 0x2c, 0x04, 0xd0, 0x40, 0x27, 0x3f, 0x1b, 0xb9, 0x40, 0x08, 0x43,
0x80, 0x46, 0x44, 0x46, 0x61, 0x1e, 0x8c, 0x41, 0x22, 0x43, 0xe9, 0xe5,
0x4c, 0x46, 0x23, 0x43, 0x1c, 0x00, 0x63, 0x1e, 0x9c, 0x41, 0x04, 0x1b,
0xa0, 0x42, 0x9b, 0x41, 0x5b, 0x42, 0xcb, 0x1a, 0x98, 0x46, 0x5d, 0x46,
0x16, 0x00, 0xe2, 0xe5, 0x4e, 0x46, 0x1e, 0x43, 0x00, 0xd1, 0xae, 0xe0,
0x66, 0x1e, 0x01, 0x2c, 0x00, 0xd1, 0xfd, 0xe0, 0x7b, 0x4f, 0xbc, 0x42,
0x00, 0xd1, 0x07, 0xe1, 0xb4, 0x46, 0x9b, 0xe6, 0x64, 0x46, 0x20, 0x22,
0x12, 0x1b, 0x0c, 0x00, 0x94, 0x40, 0x07, 0x00, 0x90, 0x40, 0xa0, 0x46,
0x64, 0x46, 0x42, 0x1e, 0x90, 0x41, 0x62, 0x46, 0xe7, 0x40, 0x44, 0x46,
0xd1, 0x40, 0x3c, 0x43, 0x04, 0x43, 0x5b, 0x18, 0xf3, 0xe6, 0x6f, 0x4c,
0xa2, 0x42, 0x00, 0xd1, 0xd5, 0xe0, 0x48, 0x44, 0x5b, 0x18, 0x48, 0x45,
0x89, 0x41, 0x49, 0x42, 0x5b, 0x18, 0xdc, 0x07, 0x40, 0x08, 0x5b, 0x08,
0x98, 0x46, 0x16, 0x00, 0x04, 0x43, 0xcc, 0xe6, 0x00, 0x2a, 0x00, 0xd0,
0x82, 0xe0, 0x0a, 0x00, 0x02, 0x43, 0x40, 0xd1, 0x80, 0x23, 0x00, 0x25,
0x1b, 0x03, 0x13, 0xe7, 0x4b, 0x07, 0xc2, 0x08, 0x1a, 0x43, 0x5d, 0x46,
0xcb, 0x08, 0xc5, 0xe6, 0x4a, 0x46, 0x84, 0x1a, 0xa0, 0x42, 0x92, 0x41,
0xcb, 0x1a, 0x52, 0x42, 0x9b, 0x1a, 0x98, 0x46, 0x5d, 0x46, 0x9e, 0xe5,
0x4a, 0x46, 0x59, 0x07, 0xd2, 0x08, 0x0a, 0x43, 0xdb, 0x08, 0xf9, 0xe6,
0x4a, 0x46, 0x14, 0x1a, 0xa1, 0x45, 0x92, 0x41, 0x5b, 0x1a, 0x52, 0x42,
0x9b, 0x1a, 0x98, 0x46, 0x01, 0x26, 0x86, 0xe5, 0x4a, 0x46, 0x59, 0x07,
0xd2, 0x08, 0x0a, 0x43, 0xdb, 0x08, 0xa5, 0xe6, 0x4c, 0x46, 0x23, 0x43,
0x1c, 0x00, 0x63, 0x1e, 0x9c, 0x41, 0x5b, 0xe6, 0x65, 0x46, 0x1e, 0x00,
0x20, 0x3d, 0xee, 0x40, 0x20, 0x2c, 0x05, 0xd0, 0x40, 0x25, 0x2d, 0x1b,
0xab, 0x40, 0x4c, 0x46, 0x1c, 0x43, 0xa2, 0x46, 0x54, 0x46, 0x63, 0x1e,
0x9c, 0x41, 0x34, 0x43, 0x7d, 0xe7, 0x4b, 0x07, 0xc2, 0x08, 0x1a, 0x43,
0x5d, 0x46, 0xcb, 0x08, 0xcc, 0xe6, 0x0a, 0x00, 0x02, 0x43, 0x00, 0xd1,
0x36, 0xe7, 0x4b, 0x07, 0xc2, 0x08, 0x1a, 0x43, 0x5d, 0x46, 0xcb, 0x08,
0x81, 0xe6, 0x4a, 0x46, 0x84, 0x1a, 0xa0, 0x42, 0x92, 0x41, 0xcb, 0x1a,
0x52, 0x42, 0x9b, 0x1a, 0x98, 0x46, 0x5d, 0x46, 0x01, 0x26, 0x4e, 0xe5,
0x4b, 0x07, 0xc2, 0x08, 0x1a, 0x43, 0xcb, 0x08, 0xb2, 0xe6, 0x4a, 0x46,
0x14, 0x1a, 0xa1, 0x45, 0x92, 0x41, 0x5f, 0x1a, 0x52, 0x42, 0xba, 0x1a,
0x90, 0x46, 0x12, 0x02, 0x6b, 0xd5, 0x4a, 0x46, 0x84, 0x1a, 0xa0, 0x42,
0x92, 0x41, 0xcb, 0x1a, 0x52, 0x42, 0x9b, 0x1a, 0x98, 0x46, 0x5d, 0x46,
0x64, 0xe5, 0x4b, 0x07, 0xc2, 0x08, 0x1a, 0x43, 0x5d, 0x46, 0xcb, 0x08,
0x98, 0xe6, 0x4b, 0x07, 0xc2, 0x08, 0x1a, 0x43, 0xcb, 0x08, 0x4f, 0xe6,
0x0a, 0x00, 0x02, 0x43, 0x90, 0xd0, 0x4a, 0x46, 0x5c, 0x07, 0xd2, 0x08,
0x14, 0x43, 0x80, 0x22, 0xdb, 0x08, 0x12, 0x03, 0x13, 0x42, 0x08, 0xd0,
0xce, 0x08, 0x16, 0x42, 0x05, 0xd1, 0xc0, 0x08, 0x49, 0x07, 0x08, 0x43,
0x04, 0x00, 0x5d, 0x46, 0x33, 0x00, 0x61, 0x0f, 0xe2, 0x00, 0x49, 0x07,
0xd2, 0x08, 0x0a, 0x43, 0x78, 0xe6, 0x4b, 0x07, 0xc2, 0x08, 0x1a, 0x43,
0xcb, 0x08, 0x32, 0xe6, 0x48, 0x44, 0x5b, 0x18, 0x48, 0x45, 0x92, 0x41,
0x98, 0x46, 0x52, 0x42, 0x90, 0x44, 0x43, 0x46, 0x04, 0x00, 0x1b, 0x02,
0x00, 0xd4, 0x1a, 0xe6, 0x42, 0x46, 0x0e, 0x4b, 0x01, 0x26, 0x1a, 0x40,
0x90, 0x46, 0x14, 0xe6, 0x66, 0x46, 0x1f, 0x00, 0x20, 0x3e, 0xf7, 0x40,
0x20, 0x2c, 0x05, 0xd0, 0x40, 0x26, 0x36, 0x1b, 0xb3, 0x40, 0x4c, 0x46,
0x1c, 0x43, 0xa2, 0x46, 0x54, 0x46, 0x63, 0x1e, 0x9c, 0x41, 0x3c, 0x43,
0xc8, 0xe5, 0x11, 0x00, 0x00, 0x23, 0x00, 0x22, 0x32, 0xe5, 0xc0, 0x46,
0xff, 0x07, 0x00, 0x00, 0xff, 0xff, 0x7f, 0xff, 0xfe, 0x07, 0x00, 0x00,
0x4a, 0x46, 0x14, 0x18, 0x84, 0x42, 0x92, 0x41, 0x5b, 0x18, 0x98, 0x46,
0x52, 0x42, 0x90, 0x44, 0xe9, 0xe5, 0x42, 0x46, 0x22, 0x43, 0x00, 0xd1,
0xa6, 0xe6, 0xea, 0xe5, 0x4b, 0x07, 0xc2, 0x08, 0x1a, 0x43, 0xcb, 0x08,
0x32, 0xe6, 0x00, 0x22, 0x01, 0x49, 0x13, 0x00, 0x14, 0xe5, 0xc0, 0x46,
0xff, 0x07, 0x00, 0x00, 0x0a, 0x00, 0x30, 0xb5, 0x13, 0x4c, 0x53, 0x00,
0x09, 0x03, 0x05, 0x00, 0x09, 0x0b, 0x00, 0x20, 0x5b, 0x0d, 0xd2, 0x0f,
0xa3, 0x42, 0x04, 0xdd, 0x0f, 0x48, 0x83, 0x42, 0x02, 0xdd, 0x0f, 0x4b,
0xd0, 0x18, 0x30, 0xbd, 0x80, 0x20, 0x40, 0x03, 0x01, 0x43, 0x0d, 0x48,
0xc0, 0x1a, 0x1f, 0x28, 0x08, 0xdd, 0x0c, 0x48, 0xc3, 0x1a, 0xd9, 0x40,
0x0b, 0x00, 0x58, 0x42, 0x00, 0x2a, 0xf0, 0xd1, 0x18, 0x00, 0xee, 0xe7,
0x08, 0x4c, 0xc5, 0x40, 0xa4, 0x46, 0x63, 0x44, 0x99, 0x40, 0x0b, 0x00,
0x2b, 0x43, 0xf2, 0xe7, 0xfe, 0x03, 0x00, 0x00, 0x1d, 0x04, 0x00, 0x00,
0xff, 0xff, 0xff, 0x7f, 0x33, 0x04, 0x00, 0x00, 0x13, 0x04, 0x00, 0x00,
0xed, 0xfb, 0xff, 0xff, 0x10, 0xb5, 0x04, 0x1e, 0x10, 0xd0, 0x00, 0xf0,
0x21, 0xf8, 0x0f, 0x4b, 0x1b, 0x1a, 0x0a, 0x28, 0x11, 0xdc, 0x0b, 0x22,
0x21, 0x00, 0x12, 0x1a, 0xd1, 0x40, 0x15, 0x30, 0x0a, 0x03, 0x5b, 0x05,
0x84, 0x40, 0x12, 0x0b, 0x5b, 0x0d, 0x01, 0xe0, 0x00, 0x23, 0x00, 0x22,
0x1b, 0x05, 0x13, 0x43, 0x20, 0x00, 0x19, 0x00, 0x10, 0xbd, 0x22, 0x00,
0x0b, 0x38, 0x82, 0x40, 0x5b, 0x05, 0x12, 0x03, 0x00, 0x24, 0x12, 0x0b,
0x5b, 0x0d, 0xf1, 0xe7, 0x1e, 0x04, 0x00, 0x00, 0x1c, 0x21, 0x01, 0x23,
0x1b, 0x04, 0x98, 0x42, 0x01, 0xd3, 0x00, 0x0c, 0x10, 0x39, 0x1b, 0x0a,
0x98, 0x42, 0x01, 0xd3, 0x00, 0x0a, 0x08, 0x39, 0x1b, 0x09, 0x98, 0x42,
0x01, 0xd3, 0x00, 0x09, 0x04, 0x39, 0x02, 0xa2, 0x10, 0x5c, 0x40, 0x18,
0x70, 0x47, 0xc0, 0x46, 0x04, 0x03, 0x02, 0x02, 0x01, 0x01, 0x01, 0x01,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x16, 0x00, 0x08,
0x58, 0x15, 0x00, 0x08, 0x36, 0x15, 0x00, 0x08, 0x4a, 0x16, 0x00, 0x08,
0x36, 0x15, 0x00, 0x08, 0x8e, 0x16, 0x00, 0x08, 0x36, 0x15, 0x00, 0x08,
0x4a, 0x16, 0x00, 0x08, 0x58, 0x15, 0x00, 0x08, 0x58, 0x15, 0x00, 0x08,
0x8e, 0x16, 0x00, 0x08, 0x4a, 0x16, 0x00, 0x08, 0xfc, 0x15, 0x00, 0x08,
0xfc, 0x15, 0x00, 0x08, 0xfc, 0x15, 0x00, 0x08, 0x9c, 0x16, 0x00, 0x08,
0x28, 0x1e, 0x00, 0x08, 0x56, 0x1d, 0x00, 0x08, 0x56, 0x1d, 0x00, 0x08,
0x52, 0x1d, 0x00, 0x08, 0x5c, 0x1d, 0x00, 0x08, 0x5c, 0x1d, 0x00, 0x08,
0x48, 0x20, 0x00, 0x08, 0x52, 0x1d, 0x00, 0x08, 0x5c, 0x1d, 0x00, 0x08,
0x48, 0x20, 0x00, 0x08, 0x5c, 0x1d, 0x00, 0x08, 0x52, 0x1d, 0x00, 0x08,
0xe6, 0x1f, 0x00, 0x08, 0xe6, 0x1f, 0x00, 0x08, 0xe6, 0x1f, 0x00, 0x08,
0xb2, 0x20, 0x00, 0x08, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0xfc, 0xa9, 0xf1, 0xd2, 0x4d, 0x62, 0x50, 0x3f, 0x80, 0x84, 0x1e, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0a, 0xa6, 0x40,
0x00, 0x12, 0x7a, 0x00, 0x00, 0x12, 0x7a, 0x00, 0x00, 0x00, 0x00, 0x00,
};

View File

@ -1,795 +0,0 @@
static const uint8_t SHD_FIRMWARE_MAJOR_VERSION = 50;
static const uint8_t SHD_FIRMWARE_MINOR_VERSION = 2;
const uint8_t stm_firmware[] PROGMEM = {
0x00, 0x10, 0x00, 0x20, 0x21, 0x11, 0x00, 0x08, 0x1d, 0x11, 0x00, 0x08,
0x1b, 0x11, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1d, 0x11, 0x00, 0x08,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1d, 0x11, 0x00, 0x08,
0xc9, 0x07, 0x00, 0x08, 0x1b, 0x11, 0x00, 0x08, 0x1b, 0x11, 0x00, 0x08,
0x1b, 0x11, 0x00, 0x08, 0x1b, 0x11, 0x00, 0x08, 0x1b, 0x11, 0x00, 0x08,
0x1b, 0x11, 0x00, 0x08, 0xd9, 0x07, 0x00, 0x08, 0x1b, 0x11, 0x00, 0x08,
0x1b, 0x11, 0x00, 0x08, 0x1b, 0x11, 0x00, 0x08, 0x1b, 0x11, 0x00, 0x08,
0x1b, 0x11, 0x00, 0x08, 0x1b, 0x11, 0x00, 0x08, 0x1b, 0x11, 0x00, 0x08,
0x1b, 0x11, 0x00, 0x08, 0xc9, 0x06, 0x00, 0x08, 0x1b, 0x11, 0x00, 0x08,
0x1b, 0x11, 0x00, 0x08, 0x1b, 0x11, 0x00, 0x08, 0x1b, 0x11, 0x00, 0x08,
0x1b, 0x11, 0x00, 0x08, 0x1b, 0x11, 0x00, 0x08, 0x1b, 0x11, 0x00, 0x08,
0x1b, 0x11, 0x00, 0x08, 0x1b, 0x11, 0x00, 0x08, 0x1b, 0x11, 0x00, 0x08,
0x1b, 0x11, 0x00, 0x08, 0x2d, 0x01, 0x00, 0x08, 0x1b, 0x11, 0x00, 0x08,
0x1b, 0x11, 0x00, 0x08, 0x1b, 0x11, 0x00, 0x08, 0x1b, 0x11, 0x00, 0x08,
0x70, 0xb5, 0x12, 0x4d, 0x12, 0x4c, 0x2b, 0x68, 0x22, 0x68, 0x9b, 0x1a,
0x11, 0x4a, 0x93, 0x42, 0x14, 0xd9, 0x11, 0x49, 0x0a, 0x78, 0x00, 0x2a,
0x11, 0xd0, 0x00, 0x20, 0x0f, 0x4b, 0x18, 0x60, 0x01, 0x23, 0x53, 0x40,
0x0b, 0x70, 0x80, 0x21, 0x0d, 0x48, 0x49, 0x00, 0x00, 0x2b, 0x09, 0xd0,
0x00, 0xf0, 0x56, 0xfc, 0x2b, 0x68, 0x0b, 0x4a, 0x23, 0x60, 0x13, 0x60,
0x70, 0xbd, 0x0a, 0x4b, 0x1a, 0x60, 0xed, 0xe7, 0x00, 0xf0, 0x4a, 0xfc,
0xf4, 0xe7, 0xc0, 0x46, 0x4c, 0x02, 0x00, 0x20, 0x28, 0x00, 0x00, 0x20,
0x10, 0x27, 0x00, 0x00, 0x19, 0x00, 0x00, 0x20, 0x1c, 0x00, 0x00, 0x20,
0x00, 0x04, 0x00, 0x48, 0x20, 0x00, 0x00, 0x20, 0x58, 0x02, 0x00, 0x20,
0x20, 0x23, 0xf0, 0xb5, 0x87, 0x4a, 0xc7, 0xb0, 0x11, 0x68, 0x00, 0xaf,
0x7a, 0x61, 0x19, 0x42, 0x33, 0xd0, 0x85, 0x4a, 0x12, 0x68, 0x1a, 0x42,
0x2f, 0xd0, 0x78, 0x69, 0x00, 0xf0, 0xe3, 0xff, 0x82, 0x4c, 0x83, 0x49,
0x23, 0x78, 0x05, 0x00, 0xc0, 0xb2, 0xc8, 0x54, 0x00, 0x2b, 0x03, 0xd1,
0x01, 0x28, 0x20, 0xd1, 0x01, 0x33, 0x1f, 0xe0, 0x03, 0x2b, 0xfb, 0xd9,
0xca, 0x78, 0xf9, 0x2a, 0x19, 0xd8, 0x16, 0x1d, 0x9e, 0x42, 0xf5, 0xda,
0x56, 0x1d, 0xb3, 0x42, 0x2c, 0xd1, 0x79, 0x49, 0xed, 0xb2, 0xc8, 0x5c,
0x78, 0x4e, 0x00, 0x02, 0x28, 0x43, 0x00, 0x25, 0xb4, 0x46, 0x29, 0x00,
0x03, 0x32, 0x66, 0x46, 0x76, 0x5c, 0x01, 0x31, 0xad, 0x19, 0xc9, 0xb2,
0xad, 0xb2, 0x8a, 0x42, 0xf7, 0xdc, 0xa8, 0x42, 0xde, 0xd0, 0x00, 0x23,
0x23, 0x70, 0x80, 0x22, 0x7b, 0x69, 0x1b, 0x68, 0x13, 0x42, 0x0e, 0xd0,
0x68, 0x4b, 0x1b, 0x68, 0x13, 0x42, 0x0a, 0xd0, 0x6b, 0x4c, 0xa3, 0x68,
0xe1, 0x68, 0x8b, 0x42, 0x00, 0xd0, 0xb8, 0xe0, 0x7b, 0x69, 0x1b, 0x68,
0x93, 0x43, 0x7a, 0x69, 0x13, 0x60, 0xbd, 0x46, 0x47, 0xb0, 0xf0, 0xbd,
0x06, 0x32, 0x93, 0x42, 0xe3, 0xd1, 0x04, 0x28, 0xe1, 0xd1, 0x4b, 0x78,
0x62, 0x4a, 0x63, 0x4d, 0x13, 0x70, 0x8b, 0x78, 0x2b, 0x70, 0x01, 0x2b,
0x08, 0xd0, 0x20, 0x2b, 0x0c, 0xd1, 0x8b, 0x79, 0x02, 0x3b, 0x5a, 0x1e,
0x93, 0x41, 0x5e, 0x4a, 0x13, 0x70, 0x05, 0xe0, 0x4a, 0x79, 0x0b, 0x79,
0x12, 0x02, 0x13, 0x43, 0x5b, 0x4a, 0x13, 0x80, 0x1c, 0x23, 0x00, 0x21,
0xf8, 0x18, 0xfc, 0x22, 0x21, 0x70, 0xb9, 0x61, 0x01, 0xf0, 0x78, 0xf8,
0xff, 0xf7, 0x50, 0xff, 0x56, 0x4b, 0x57, 0x4c, 0x1b, 0x68, 0x57, 0x4e,
0x3b, 0x61, 0x23, 0x68, 0x00, 0x2b, 0x02, 0xd0, 0xff, 0xf7, 0x46, 0xff,
0x00, 0xe0, 0x33, 0x60, 0x53, 0x4b, 0x54, 0x49, 0x1b, 0x68, 0x09, 0x68,
0x32, 0x68, 0x5b, 0x1a, 0x52, 0x49, 0x8b, 0x42, 0x01, 0xd9, 0x00, 0x23,
0x23, 0x60, 0x2b, 0x78, 0x11, 0x2b, 0x5b, 0xd0, 0x0a, 0xd8, 0x01, 0x2b,
0x0a, 0xd0, 0x10, 0x2b, 0x5a, 0xd0, 0x7b, 0x69, 0x1a, 0x68, 0x80, 0x23,
0x13, 0x43, 0x7a, 0x69, 0x13, 0x60, 0x9c, 0xe7, 0x20, 0x2b, 0xf6, 0xd1,
0x01, 0x24, 0x3c, 0x76, 0x6a, 0x46, 0x69, 0x46, 0xba, 0x60, 0xe2, 0x1d,
0x7a, 0x60, 0x07, 0x32, 0xd2, 0x08, 0xd2, 0x00, 0x8a, 0x1a, 0x95, 0x46,
0x01, 0x22, 0x6e, 0x46, 0x32, 0x70, 0x37, 0x4a, 0x01, 0xa8, 0x12, 0x78,
0xb3, 0x70, 0x18, 0x23, 0x72, 0x70, 0xf9, 0x18, 0x22, 0x00, 0xf4, 0x70,
0x00, 0xf0, 0xe0, 0xff, 0x00, 0x22, 0x13, 0x00, 0x21, 0x1d, 0xe0, 0x1c,
0xf5, 0x18, 0x6d, 0x78, 0x01, 0x33, 0x52, 0x19, 0xdb, 0xb2, 0x92, 0xb2,
0x98, 0x42, 0xf7, 0xdc, 0x13, 0x0a, 0x73, 0x54, 0x63, 0x1d, 0xf2, 0x54,
0x04, 0x23, 0x06, 0x34, 0x33, 0x55, 0x00, 0x24, 0x26, 0x4d, 0x33, 0x5d,
0x69, 0x68, 0x3b, 0x60, 0xeb, 0x68, 0x3b, 0x61, 0x01, 0x33, 0x18, 0x00,
0xfb, 0x60, 0x01, 0xf0, 0xf9, 0xf8, 0xab, 0x68, 0x99, 0x42, 0x0a, 0xd0,
0xfb, 0x68, 0x3a, 0x69, 0xeb, 0x60, 0x39, 0x68, 0x2b, 0x68, 0x99, 0x54,
0xe8, 0x68, 0x69, 0x68, 0x01, 0xf0, 0xec, 0xf8, 0xe9, 0x60, 0x7b, 0x68,
0x01, 0x34, 0xa3, 0x42, 0xe3, 0xdc, 0xbb, 0x68, 0x9d, 0x46, 0xa8, 0xe7,
0x21, 0x4a, 0x02, 0x24, 0x3a, 0x83, 0xaf, 0xe7, 0x21, 0x68, 0x00, 0x20,
0xf9, 0x61, 0x39, 0x69, 0x38, 0x83, 0x39, 0x62, 0x28, 0x21, 0x15, 0x48,
0x7a, 0x62, 0x13, 0x4a, 0x00, 0x88, 0x12, 0x78, 0x79, 0x18, 0x11, 0x24,
0x78, 0x83, 0x0a, 0x70, 0x9e, 0xe7, 0x22, 0x68, 0x58, 0x1c, 0xa0, 0x60,
0x61, 0x68, 0xd5, 0x5c, 0x01, 0xf0, 0xc8, 0xf8, 0x02, 0x48, 0xa1, 0x60,
0xa9, 0xb2, 0x00, 0xf0, 0xde, 0xfe, 0x3e, 0xe7, 0x00, 0x38, 0x01, 0x40,
0x1c, 0x38, 0x01, 0x40, 0x10, 0x00, 0x00, 0x20, 0x4c, 0x01, 0x00, 0x20,
0x4b, 0x01, 0x00, 0x20, 0x4d, 0x01, 0x00, 0x20, 0x34, 0x00, 0x00, 0x20,
0x24, 0x00, 0x00, 0x20, 0x18, 0x00, 0x00, 0x20, 0x30, 0x00, 0x00, 0x20,
0x08, 0x00, 0x00, 0x20, 0x58, 0x02, 0x00, 0x20, 0x48, 0x01, 0x00, 0x20,
0x1c, 0x00, 0x00, 0x20, 0x4c, 0x02, 0x00, 0x20, 0x2c, 0x00, 0x00, 0x20,
0x10, 0x27, 0x00, 0x00, 0x02, 0x32, 0x00, 0x00, 0x70, 0xb5, 0x00, 0xf0,
0x1d, 0xfc, 0xbf, 0x48, 0x00, 0xf0, 0x4c, 0xfc, 0xbe, 0x48, 0x00, 0xf0,
0x49, 0xfc, 0xbe, 0x48, 0x00, 0xf0, 0x46, 0xfc, 0xbd, 0x48, 0x00, 0xf0,
0x43, 0xfc, 0xe0, 0x20, 0x80, 0x00, 0x00, 0xf0, 0x3f, 0xfc, 0xc0, 0x20,
0x80, 0x00, 0x00, 0xf0, 0x3b, 0xfc, 0x90, 0x23, 0x90, 0x20, 0x1b, 0x01,
0x00, 0x22, 0x02, 0x21, 0xc0, 0x05, 0x00, 0xf0, 0xe8, 0xfa, 0x90, 0x22,
0x90, 0x20, 0x02, 0x21, 0x12, 0x01, 0xc0, 0x05, 0x00, 0xf0, 0x1f, 0xfb,
0x90, 0x20, 0xc0, 0x23, 0x00, 0x22, 0x01, 0x21, 0xc0, 0x05, 0x00, 0xf0,
0xda, 0xfa, 0x90, 0x20, 0x03, 0x23, 0x00, 0x22, 0x02, 0x21, 0xc0, 0x05,
0x00, 0xf0, 0xd3, 0xfa, 0x80, 0x24, 0x90, 0x20, 0x64, 0x00, 0x03, 0x22,
0x02, 0x21, 0xc0, 0x05, 0x00, 0xf0, 0x09, 0xfb, 0x23, 0x00, 0x00, 0x22,
0x01, 0x21, 0xa5, 0x48, 0x00, 0xf0, 0xc5, 0xfa, 0x23, 0x00, 0x00, 0x22,
0x01, 0x21, 0xa2, 0x48, 0x00, 0xf0, 0xdf, 0xfa, 0x21, 0x00, 0xa0, 0x48,
0x00, 0xf0, 0xb6, 0xfa, 0x00, 0x22, 0x04, 0x23, 0x11, 0x00, 0x9d, 0x48,
0x00, 0xf0, 0xb5, 0xfa, 0x9c, 0x4b, 0x9d, 0x4a, 0x5c, 0x60, 0x00, 0x24,
0x1a, 0x60, 0x9c, 0x60, 0xdc, 0x60, 0x90, 0x20, 0xc0, 0x23, 0x22, 0x00,
0xdb, 0x00, 0x02, 0x21, 0xc0, 0x05, 0x00, 0xf0, 0xa6, 0xfa, 0xc0, 0x22,
0x90, 0x20, 0xd2, 0x00, 0x01, 0x21, 0xc0, 0x05, 0x00, 0xf0, 0xdd, 0xfa,
0xff, 0x21, 0x1b, 0x20, 0x00, 0xf0, 0xca, 0xfe, 0x1b, 0x20, 0x00, 0xf0,
0xbb, 0xfe, 0xe1, 0x21, 0x8f, 0x4d, 0x49, 0x02, 0x28, 0x00, 0x00, 0xf0,
0x07, 0xfe, 0x08, 0x21, 0x28, 0x00, 0x00, 0xf0, 0x0f, 0xfe, 0x21, 0x00,
0x28, 0x00, 0x00, 0xf0, 0x21, 0xfe, 0x21, 0x00, 0x28, 0x00, 0x00, 0xf0,
0x15, 0xfe, 0x0c, 0x21, 0x28, 0x00, 0x00, 0xf0, 0x21, 0xfe, 0x21, 0x00,
0x28, 0x00, 0x00, 0xf0, 0x23, 0xfe, 0x20, 0x23, 0x2a, 0x68, 0x28, 0x00,
0x13, 0x43, 0x2b, 0x60, 0x00, 0xf0, 0x24, 0xfe, 0x80, 0x48, 0x00, 0xf0,
0x00, 0xfc, 0x8c, 0x20, 0xff, 0x30, 0x00, 0xf0, 0xc9, 0xfb, 0x23, 0x00,
0x22, 0x00, 0x21, 0x00, 0x7b, 0x48, 0x00, 0xf0, 0xdb, 0xfb, 0xf0, 0x21,
0x79, 0x48, 0x49, 0x00, 0x00, 0xf0, 0xf6, 0xfb, 0x77, 0x48, 0x00, 0xf0,
0x30, 0xfd, 0x76, 0x48, 0x00, 0xf0, 0xdc, 0xfb, 0x74, 0x48, 0x00, 0xf0,
0xde, 0xfb, 0x21, 0x00, 0x72, 0x48, 0x00, 0xf0, 0xef, 0xfc, 0x07, 0x22,
0x21, 0x00, 0x70, 0x48, 0x00, 0xf0, 0xe6, 0xfb, 0x21, 0x00, 0x6e, 0x48,
0x00, 0xf0, 0xa2, 0xfc, 0x21, 0x00, 0x6c, 0x48, 0x00, 0xf0, 0xc2, 0xfc,
0x01, 0x22, 0x21, 0x00, 0x52, 0x42, 0x69, 0x48, 0x00, 0xf0, 0x00, 0xfd,
0x06, 0x21, 0x67, 0x48, 0x00, 0xf0, 0xd8, 0xfc, 0x07, 0x22, 0x06, 0x21,
0x64, 0x48, 0x00, 0xf0, 0xcf, 0xfb, 0x06, 0x21, 0x62, 0x48, 0x00, 0xf0,
0x8b, 0xfc, 0x06, 0x21, 0x60, 0x48, 0x00, 0xf0, 0xab, 0xfc, 0x01, 0x22,
0x06, 0x21, 0x52, 0x42, 0x5d, 0x48, 0x00, 0xf0, 0xe9, 0xfc, 0x5c, 0x48,
0x00, 0xf0, 0xb2, 0xfb, 0x80, 0x20, 0xc0, 0x05, 0x00, 0xf0, 0xb3, 0xfb,
0x80, 0x20, 0x80, 0x00, 0x00, 0xf0, 0x7c, 0xfb, 0x0f, 0x20, 0x00, 0xf0,
0x43, 0xfe, 0x80, 0x20, 0x23, 0x00, 0x22, 0x00, 0x21, 0x00, 0xc0, 0x05,
0x00, 0xf0, 0x8a, 0xfb, 0x80, 0x20, 0x30, 0x21, 0xc0, 0x05, 0x00, 0xf0,
0xa5, 0xfb, 0x80, 0x20, 0xc0, 0x05, 0x00, 0xf0, 0x8d, 0xfb, 0x80, 0x20,
0xc0, 0x05, 0x00, 0xf0, 0x8e, 0xfb, 0x80, 0x20, 0x21, 0x00, 0xc0, 0x05,
0x00, 0xf0, 0x73, 0xfd, 0x80, 0x20, 0x01, 0x22, 0x21, 0x00, 0xc0, 0x05,
0x00, 0xf0, 0x32, 0xfd, 0x01, 0x22, 0x80, 0x20, 0x11, 0x00, 0xc0, 0x05,
0x00, 0xf0, 0xd4, 0xfc, 0x80, 0x20, 0x22, 0x00, 0x21, 0x00, 0xc0, 0x05,
0x00, 0xf0, 0xfa, 0xfc, 0x80, 0x20, 0x21, 0x00, 0xc0, 0x05, 0x00, 0xf0,
0x87, 0xfc, 0x80, 0x20, 0x21, 0x00, 0xc0, 0x05, 0x00, 0xf0, 0x3e, 0xfc,
0x80, 0x20, 0x21, 0x00, 0xc0, 0x05, 0x00, 0xf0, 0x5d, 0xfc, 0x80, 0x20,
0x21, 0x00, 0xc0, 0x05, 0x00, 0xf0, 0x46, 0xfd, 0x80, 0x20, 0x02, 0x21,
0xc0, 0x05, 0x00, 0xf0, 0x45, 0xfb, 0x80, 0x20, 0x02, 0x22, 0x01, 0x21,
0xc0, 0x05, 0x00, 0xf0, 0x07, 0xfd, 0x80, 0x20, 0x01, 0x22, 0x02, 0x21,
0xc0, 0x05, 0x00, 0xf0, 0xa9, 0xfc, 0x80, 0x20, 0x22, 0x00, 0x01, 0x21,
0xc0, 0x05, 0x00, 0xf0, 0xcf, 0xfc, 0x80, 0x20, 0x02, 0x21, 0xc0, 0x05,
0x00, 0xf0, 0x5c, 0xfc, 0x80, 0x20, 0x02, 0x21, 0xc0, 0x05, 0x00, 0xf0,
0x13, 0xfc, 0x80, 0x20, 0x02, 0x21, 0xc0, 0x05, 0x00, 0xf0, 0x32, 0xfc,
0x80, 0x20, 0x01, 0x21, 0xc0, 0x05, 0x00, 0xf0, 0x1b, 0xfd, 0x80, 0x20,
0x04, 0x21, 0xc0, 0x05, 0x00, 0xf0, 0x1a, 0xfb, 0x01, 0x21, 0x80, 0x20,
0x49, 0x42, 0xc0, 0x05, 0x00, 0xf0, 0x81, 0xfc, 0x80, 0x20, 0xc0, 0x05,
0x00, 0xf0, 0x2e, 0xfb, 0x06, 0x20, 0x00, 0xf0, 0xc7, 0xfd, 0x04, 0x20,
0x12, 0x49, 0x00, 0xf0, 0x5b, 0xf9, 0x02, 0x21, 0x04, 0x20, 0x00, 0xf0,
0x23, 0xf9, 0x04, 0x20, 0x00, 0xf0, 0x40, 0xf9, 0x20, 0x00, 0x00, 0xf0,
0x9f, 0xfd, 0xfa, 0x21, 0x10, 0x4b, 0x49, 0x01, 0x1c, 0x60, 0x10, 0x4b,
0x18, 0x68, 0x00, 0xf0, 0x9f, 0xfe, 0x00, 0xf0, 0x8d, 0xfd, 0x00, 0xf0,
0x9d, 0xfd, 0x00, 0xf0, 0xa3, 0xfd, 0xc0, 0x46, 0xfd, 0xe7, 0xc0, 0x46,
0x91, 0x02, 0x00, 0x00, 0x92, 0x02, 0x00, 0x00, 0x0e, 0x03, 0x00, 0x00,
0x0b, 0x03, 0x00, 0x00, 0x00, 0x04, 0x00, 0x48, 0x34, 0x00, 0x00, 0x20,
0x44, 0x00, 0x00, 0x20, 0x00, 0x38, 0x01, 0x40, 0x00, 0x2c, 0x01, 0x40,
0x18, 0xe0, 0x00, 0xe0, 0x00, 0x00, 0x00, 0x20, 0xf7, 0xb5, 0x2e, 0x4b,
0x1b, 0x68, 0x01, 0x93, 0x9b, 0x07, 0x38, 0xd5, 0x2c, 0x4b, 0x2d, 0x4f,
0x19, 0x68, 0x2d, 0x4b, 0x2d, 0x4e, 0x1a, 0x68, 0x2d, 0x4d, 0x19, 0x60,
0x94, 0x46, 0x2d, 0x4b, 0x38, 0x68, 0x32, 0x68, 0x1c, 0x68, 0x2b, 0x68,
0x82, 0x42, 0x09, 0xd0, 0x01, 0x2b, 0x07, 0xd9, 0x62, 0x46, 0x8a, 0x1a,
0x28, 0x49, 0x09, 0x78, 0x00, 0x29, 0x39, 0xd0, 0x27, 0x49, 0x0a, 0x60,
0x27, 0x49, 0x01, 0x33, 0x2b, 0x60, 0x20, 0x1a, 0x88, 0x42, 0x03, 0xd8,
0xfa, 0x22, 0x92, 0x00, 0x93, 0x42, 0x0e, 0xd9, 0x01, 0x23, 0x20, 0x4a,
0x22, 0x48, 0x11, 0x78, 0x4b, 0x40, 0x80, 0x21, 0x13, 0x70, 0x49, 0x00,
0x00, 0x2b, 0x25, 0xd0, 0x00, 0xf0, 0x36, 0xf9, 0x00, 0x23, 0x3c, 0x60,
0x2b, 0x60, 0x80, 0x20, 0x02, 0x21, 0xc0, 0x05, 0x34, 0x60, 0x00, 0xf0,
0x9d, 0xfa, 0x04, 0x21, 0x01, 0x9b, 0x0b, 0x42, 0x13, 0xd0, 0x18, 0x4a,
0x18, 0x4b, 0x19, 0x4c, 0x18, 0x68, 0x13, 0x68, 0x10, 0x60, 0xc3, 0x1a,
0x80, 0x20, 0x17, 0x4a, 0x23, 0x60, 0x13, 0x68, 0xc0, 0x05, 0x01, 0x33,
0x13, 0x60, 0x0c, 0x4b, 0x1a, 0x68, 0x14, 0x4b, 0x1a, 0x60, 0x00, 0xf0,
0x85, 0xfa, 0xf7, 0xbd, 0x12, 0x49, 0xc4, 0xe7, 0x00, 0xf0, 0x0e, 0xf9,
0xd8, 0xe7, 0xc0, 0x46, 0x10, 0x00, 0x00, 0x40, 0x34, 0x00, 0x00, 0x40,
0x20, 0x00, 0x00, 0x20, 0x50, 0x02, 0x00, 0x20, 0x28, 0x00, 0x00, 0x20,
0x14, 0x00, 0x00, 0x20, 0x4c, 0x02, 0x00, 0x20, 0x19, 0x00, 0x00, 0x20,
0x1c, 0x00, 0x00, 0x20, 0x10, 0x27, 0x00, 0x00, 0x00, 0x04, 0x00, 0x48,
0x54, 0x02, 0x00, 0x20, 0x38, 0x00, 0x00, 0x40, 0x48, 0x01, 0x00, 0x20,
0x44, 0x01, 0x00, 0x20, 0x2c, 0x00, 0x00, 0x20, 0x58, 0x02, 0x00, 0x20,
0x02, 0x4a, 0x13, 0x68, 0x01, 0x33, 0x13, 0x60, 0x70, 0x47, 0xc0, 0x46,
0x4c, 0x02, 0x00, 0x20, 0x70, 0xb5, 0x30, 0x48, 0x00, 0xf0, 0xb7, 0xfb,
0x2f, 0x4b, 0x30, 0x4c, 0x1d, 0x78, 0x30, 0x4e, 0x00, 0x2d, 0x3a, 0xd0,
0x00, 0x21, 0x2b, 0x48, 0x00, 0xf0, 0x70, 0xfb, 0x07, 0x22, 0x00, 0x21,
0x28, 0x48, 0x00, 0xf0, 0x67, 0xfa, 0x00, 0x21, 0x26, 0x48, 0x00, 0xf0,
0x47, 0xfb, 0x06, 0x21, 0x24, 0x48, 0x00, 0xf0, 0x63, 0xfb, 0x07, 0x22,
0x06, 0x21, 0x22, 0x48, 0x00, 0xf0, 0x5a, 0xfa, 0x06, 0x21, 0x20, 0x48,
0x00, 0xf0, 0x3a, 0xfb, 0xfa, 0x23, 0x32, 0x88, 0x9b, 0x00, 0x9b, 0x1a,
0x23, 0x60, 0x20, 0x68, 0x01, 0xf0, 0xaa, 0xfc, 0x1e, 0x4b, 0x1f, 0x4a,
0x00, 0xf0, 0x72, 0xfe, 0x00, 0xf0, 0x52, 0xfe, 0x00, 0x21, 0x02, 0x00,
0x20, 0x60, 0x16, 0x48, 0x00, 0xf0, 0x6a, 0xfb, 0x22, 0x68, 0x06, 0x21,
0x13, 0x48, 0x00, 0xf0, 0x65, 0xfb, 0x00, 0x21, 0x11, 0x48, 0x00, 0xf0,
0x7c, 0xfb, 0x04, 0x20, 0x00, 0xf0, 0x58, 0xf8, 0x70, 0xbd, 0x29, 0x00,
0x0d, 0x48, 0x00, 0xf0, 0x35, 0xfb, 0x06, 0x22, 0x29, 0x00, 0x0b, 0x48,
0x00, 0xf0, 0x2c, 0xfa, 0x29, 0x00, 0x09, 0x48, 0x00, 0xf0, 0x0c, 0xfb,
0x06, 0x21, 0x07, 0x48, 0x00, 0xf0, 0x28, 0xfb, 0x06, 0x22, 0x05, 0x48,
0x11, 0x00, 0x00, 0xf0, 0x1f, 0xfa, 0x06, 0x21, 0x02, 0x48, 0x00, 0xf0,
0xff, 0xfa, 0x33, 0x88, 0xc6, 0xe7, 0xc0, 0x46, 0x00, 0x2c, 0x01, 0x40,
0x30, 0x00, 0x00, 0x20, 0x0c, 0x00, 0x00, 0x20, 0x08, 0x00, 0x00, 0x20,
0xeb, 0x51, 0xf0, 0x3f, 0x52, 0xb8, 0x1e, 0x85, 0x01, 0x29, 0x0c, 0xd0,
0x02, 0x29, 0x13, 0xd0, 0x00, 0x29, 0x07, 0xd1, 0x0a, 0x4a, 0x13, 0x68,
0x03, 0x43, 0x13, 0x60, 0x09, 0x4a, 0x13, 0x68, 0x83, 0x43, 0x13, 0x60,
0x70, 0x47, 0x06, 0x4a, 0x13, 0x68, 0x83, 0x43, 0x13, 0x60, 0x05, 0x4a,
0x13, 0x68, 0x18, 0x43, 0x10, 0x60, 0xf5, 0xe7, 0x01, 0x4a, 0x13, 0x68,
0x03, 0x43, 0xf5, 0xe7, 0x08, 0x04, 0x01, 0x40, 0x0c, 0x04, 0x01, 0x40,
0x04, 0x4a, 0x13, 0x68, 0x03, 0x43, 0x13, 0x60, 0x03, 0x4a, 0x13, 0x68,
0x18, 0x43, 0x10, 0x60, 0x70, 0x47, 0xc0, 0x46, 0x00, 0x04, 0x01, 0x40,
0x04, 0x04, 0x01, 0x40, 0x01, 0x4b, 0x18, 0x60, 0x70, 0x47, 0xc0, 0x46,
0x14, 0x04, 0x01, 0x40, 0x19, 0x4b, 0xf7, 0xb5, 0xce, 0x18, 0x73, 0x42,
0x5e, 0x41, 0x00, 0x22, 0x01, 0x90, 0x76, 0x00, 0x01, 0x24, 0x23, 0x00,
0x93, 0x40, 0x01, 0x98, 0x18, 0x42, 0x17, 0xd0, 0x13, 0x4d, 0x03, 0x23,
0xa9, 0x42, 0x05, 0xd0, 0x16, 0xd8, 0x12, 0x4d, 0x23, 0x00, 0xa9, 0x42,
0x00, 0xd0, 0x33, 0x00, 0x10, 0x48, 0x03, 0x25, 0x94, 0x08, 0x24, 0x18,
0x0f, 0x20, 0x15, 0x40, 0xad, 0x00, 0xa8, 0x40, 0xab, 0x40, 0xa4, 0x00,
0x27, 0x68, 0x87, 0x43, 0x3b, 0x43, 0x23, 0x60, 0x01, 0x32, 0x10, 0x2a,
0xde, 0xd1, 0xf7, 0xbd, 0x08, 0x4c, 0x04, 0x23, 0xa1, 0x42, 0xe9, 0xd0,
0x07, 0x4c, 0x00, 0x23, 0xa1, 0x42, 0xe5, 0xd1, 0x05, 0x33, 0xe3, 0xe7,
0x00, 0xf8, 0xff, 0xb7, 0x00, 0x0c, 0x00, 0x48, 0x00, 0x04, 0x00, 0x48,
0x02, 0x40, 0x00, 0x10, 0x00, 0x10, 0x00, 0x48, 0x00, 0x14, 0x00, 0x48,
0x81, 0x61, 0x70, 0x47, 0x09, 0x04, 0x81, 0x61, 0x70, 0x47, 0xf0, 0xb5,
0x85, 0xb0, 0x01, 0x91, 0x03, 0x27, 0x00, 0x21, 0x02, 0x92, 0x03, 0x93,
0x02, 0x68, 0xc3, 0x68, 0x03, 0x9c, 0x01, 0x25, 0x0c, 0x41, 0x2c, 0x42,
0x0a, 0xd0, 0x3d, 0x00, 0x4c, 0x00, 0xa5, 0x40, 0x01, 0x9e, 0xaa, 0x43,
0xab, 0x43, 0x02, 0x9d, 0xa6, 0x40, 0xa5, 0x40, 0x32, 0x43, 0x2b, 0x43,
0x01, 0x31, 0x10, 0x29, 0xec, 0xd1, 0x02, 0x60, 0xc3, 0x60, 0x05, 0xb0,
0xf0, 0xbd, 0xf7, 0xb5, 0x01, 0x92, 0x01, 0x29, 0x16, 0xd1, 0x41, 0x68,
0x19, 0x43, 0x00, 0x24, 0x01, 0x26, 0x03, 0x27, 0x41, 0x60, 0x81, 0x68,
0x1d, 0x00, 0x25, 0x41, 0x35, 0x42, 0x06, 0xd0, 0x3a, 0x00, 0x65, 0x00,
0xaa, 0x40, 0x91, 0x43, 0x01, 0x9a, 0xaa, 0x40, 0x11, 0x43, 0x01, 0x34,
0x10, 0x2c, 0xf1, 0xd1, 0x81, 0x60, 0xf7, 0xbd, 0x41, 0x68, 0x99, 0x43,
0xe7, 0xe7, 0xf7, 0xb5, 0x00, 0x23, 0x01, 0x26, 0x0f, 0x27, 0x04, 0x6a,
0x00, 0x91, 0x41, 0x6a, 0x01, 0x92, 0x01, 0x9d, 0x1d, 0x41, 0x35, 0x42,
0x06, 0xd0, 0x3a, 0x00, 0x9d, 0x00, 0xaa, 0x40, 0x94, 0x43, 0x00, 0x9a,
0xaa, 0x40, 0x14, 0x43, 0x01, 0x33, 0x08, 0x2b, 0xf1, 0xd1, 0x01, 0x26,
0x0f, 0x27, 0x01, 0x9a, 0x1a, 0x41, 0x32, 0x42, 0x07, 0xd0, 0x3a, 0x00,
0x9d, 0x00, 0x20, 0x3d, 0xaa, 0x40, 0x91, 0x43, 0x00, 0x9a, 0xaa, 0x40,
0x11, 0x43, 0x01, 0x33, 0x10, 0x2b, 0xf0, 0xd1, 0x04, 0x62, 0x41, 0x62,
0xf7, 0xbd, 0x00, 0x00, 0x00, 0x23, 0x00, 0xb5, 0x06, 0x28, 0x0a, 0xd8,
0x01, 0x33, 0x00, 0xf0, 0x97, 0xfc, 0x0a, 0x0e, 0x10, 0x12, 0x18, 0x16,
0x04, 0x00, 0x0b, 0x4a, 0x10, 0x68, 0x40, 0x0c, 0x03, 0x40, 0x18, 0x00,
0x00, 0xbd, 0x08, 0x4a, 0x10, 0x68, 0x40, 0x08, 0xf8, 0xe7, 0x07, 0x4a,
0xfa, 0xe7, 0x06, 0x4a, 0xf2, 0xe7, 0x05, 0x4a, 0x10, 0x68, 0x40, 0x0e,
0xf0, 0xe7, 0x04, 0x4a, 0xf2, 0xe7, 0x04, 0x4a, 0xf0, 0xe7, 0xc0, 0x46,
0x34, 0x10, 0x02, 0x40, 0x00, 0x10, 0x02, 0x40, 0x20, 0x10, 0x02, 0x40,
0x24, 0x10, 0x02, 0x40, 0x10, 0xb5, 0x04, 0x00, 0x20, 0x00, 0xff, 0xf7,
0xd1, 0xff, 0x00, 0x28, 0xfa, 0xd0, 0x10, 0xbd, 0x00, 0xb5, 0x06, 0x28,
0x0b, 0xd8, 0x00, 0xf0, 0x67, 0xfc, 0x0b, 0x0f, 0x11, 0x17, 0x15, 0x13,
0x04, 0x00, 0x0c, 0x4a, 0x80, 0x23, 0x11, 0x68, 0x5b, 0x02, 0x0b, 0x43,
0x13, 0x60, 0x00, 0xbd, 0x08, 0x4a, 0x01, 0x23, 0x11, 0x68, 0xf8, 0xe7,
0x07, 0x4a, 0xfa, 0xe7, 0x06, 0x4a, 0xf1, 0xe7, 0x06, 0x4a, 0xf6, 0xe7,
0x06, 0x4a, 0xf4, 0xe7, 0x80, 0x23, 0x03, 0x4a, 0x5b, 0x04, 0x11, 0x68,
0xeb, 0xe7, 0xc0, 0x46, 0x34, 0x10, 0x02, 0x40, 0x00, 0x10, 0x02, 0x40,
0x20, 0x10, 0x02, 0x40, 0x24, 0x10, 0x02, 0x40, 0x01, 0x38, 0x00, 0xb5,
0x05, 0x28, 0x12, 0xd8, 0x00, 0xf0, 0x3c, 0xfc, 0x03, 0x09, 0x12, 0x11,
0x11, 0x19, 0x03, 0x21, 0x0c, 0x4a, 0x13, 0x68, 0x8b, 0x43, 0x13, 0x60,
0x07, 0xe0, 0x03, 0x22, 0x09, 0x49, 0x0b, 0x68, 0x93, 0x43, 0x1a, 0x00,
0x01, 0x23, 0x13, 0x43, 0x0b, 0x60, 0x00, 0xbd, 0x03, 0x22, 0x05, 0x49,
0x0b, 0x68, 0x93, 0x43, 0x1a, 0x00, 0x02, 0x23, 0xf5, 0xe7, 0x03, 0x23,
0x01, 0x4a, 0x11, 0x68, 0x0b, 0x43, 0xe8, 0xe7, 0x04, 0x10, 0x02, 0x40,
0x03, 0x4a, 0x04, 0x49, 0x13, 0x68, 0x0b, 0x40, 0x03, 0x43, 0x13, 0x60,
0x70, 0x47, 0xc0, 0x46, 0x04, 0x10, 0x02, 0x40, 0xff, 0xff, 0xc3, 0xff,
0x03, 0x4a, 0x04, 0x49, 0x13, 0x68, 0x00, 0x04, 0x0b, 0x40, 0x03, 0x43,
0x13, 0x60, 0x70, 0x47, 0x04, 0x10, 0x02, 0x40, 0xff, 0xff, 0xfe, 0xff,
0x03, 0x4a, 0x04, 0x49, 0x13, 0x68, 0x0b, 0x40, 0x03, 0x43, 0x13, 0x60,
0x70, 0x47, 0xc0, 0x46, 0x04, 0x10, 0x02, 0x40, 0xff, 0xf8, 0xff, 0xff,
0xf0, 0x21, 0x03, 0x4a, 0x13, 0x68, 0x8b, 0x43, 0x03, 0x43, 0x13, 0x60,
0x70, 0x47, 0xc0, 0x46, 0x04, 0x10, 0x02, 0x40, 0x10, 0xb5, 0x01, 0x20,
0xff, 0xf7, 0x7e, 0xff, 0x01, 0x20, 0xff, 0xf7, 0x73, 0xff, 0x01, 0x20,
0xff, 0xf7, 0xa2, 0xff, 0x00, 0x20, 0xff, 0xf7, 0xe9, 0xff, 0x00, 0x20,
0xff, 0xf7, 0xda, 0xff, 0x00, 0xf0, 0x22, 0xfb, 0x01, 0x20, 0x00, 0xf0,
0x27, 0xfb, 0xa0, 0x20, 0x80, 0x03, 0xff, 0xf7, 0xb9, 0xff, 0x00, 0x20,
0xff, 0xf7, 0xc2, 0xff, 0x03, 0x20, 0xff, 0xf7, 0x63, 0xff, 0x03, 0x20,
0xff, 0xf7, 0x58, 0xff, 0x03, 0x20, 0xff, 0xf7, 0x87, 0xff, 0x03, 0x4b,
0x03, 0x4a, 0x13, 0x60, 0x03, 0x4a, 0x13, 0x60, 0x10, 0xbd, 0xc0, 0x46,
0x00, 0x6c, 0xdc, 0x02, 0x04, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x20,
0x05, 0x4b, 0x42, 0x09, 0xd2, 0x18, 0x1f, 0x23, 0x18, 0x40, 0x1e, 0x3b,
0x83, 0x40, 0x11, 0x68, 0x0b, 0x43, 0x13, 0x60, 0x70, 0x47, 0xc0, 0x46,
0x00, 0x10, 0x02, 0x40, 0x06, 0x4a, 0x43, 0x09, 0x9b, 0x18, 0x1f, 0x22,
0x10, 0x40, 0x1e, 0x3a, 0x82, 0x40, 0x19, 0x68, 0x11, 0x43, 0x19, 0x60,
0x19, 0x68, 0x91, 0x43, 0x19, 0x60, 0x70, 0x47, 0x00, 0x10, 0x02, 0x40,
0xc3, 0x68, 0x0b, 0x43, 0xc3, 0x60, 0x70, 0x47, 0xc9, 0x43, 0x01, 0x61,
0x70, 0x47, 0x00, 0x00, 0x30, 0xb5, 0x04, 0x68, 0x03, 0x4d, 0x1a, 0x43,
0x2c, 0x40, 0x0a, 0x43, 0x22, 0x43, 0x02, 0x60, 0x30, 0xbd, 0xc0, 0x46,
0x8f, 0xfc, 0xff, 0xff, 0x80, 0x23, 0x02, 0x68, 0x13, 0x43, 0x03, 0x60,
0x70, 0x47, 0x08, 0x22, 0x03, 0x68, 0x93, 0x43, 0x03, 0x60, 0x70, 0x47,
0x01, 0x23, 0x02, 0x68, 0x13, 0x43, 0x03, 0x60, 0x70, 0x47, 0x01, 0x22,
0x03, 0x68, 0x93, 0x43, 0x03, 0x60, 0x70, 0x47, 0x81, 0x62, 0x70, 0x47,
0x03, 0x00, 0x00, 0xb5, 0x08, 0x00, 0x06, 0x29, 0x1c, 0xd8, 0x00, 0xf0,
0x6d, 0xfb, 0x04, 0x1b, 0x2f, 0x1b, 0x5c, 0x1b, 0x86, 0x00, 0x03, 0x20,
0x99, 0x69, 0x81, 0x43, 0x99, 0x61, 0x99, 0x69, 0x99, 0x61, 0x70, 0x21,
0x98, 0x69, 0x88, 0x43, 0x98, 0x61, 0x07, 0x2a, 0x0a, 0xd8, 0x10, 0x00,
0x00, 0xf0, 0x5a, 0xfb, 0x2f, 0x04, 0x09, 0x0c, 0x0f, 0x12, 0x15, 0x18,
0x10, 0x22, 0x99, 0x69, 0x0a, 0x43, 0x9a, 0x61, 0x00, 0xbd, 0x20, 0x22,
0x99, 0x69, 0xf9, 0xe7, 0x30, 0x22, 0x99, 0x69, 0xf6, 0xe7, 0x40, 0x22,
0x99, 0x69, 0xf3, 0xe7, 0x50, 0x22, 0x99, 0x69, 0xf0, 0xe7, 0x60, 0x22,
0x99, 0x69, 0xed, 0xe7, 0x9a, 0x69, 0x11, 0x43, 0x99, 0x61, 0xeb, 0xe7,
0x99, 0x69, 0x42, 0x48, 0x01, 0x40, 0x99, 0x61, 0x99, 0x69, 0x41, 0x48,
0x99, 0x61, 0x99, 0x69, 0x01, 0x40, 0x99, 0x61, 0x07, 0x2a, 0xdf, 0xd8,
0x10, 0x00, 0x00, 0xf0, 0x2f, 0xfb, 0x04, 0x06, 0x0a, 0x0e, 0x11, 0x15,
0x18, 0x1b, 0x9a, 0x69, 0xd5, 0xe7, 0x80, 0x22, 0x99, 0x69, 0x52, 0x01,
0xd0, 0xe7, 0x80, 0x22, 0x99, 0x69, 0x92, 0x01, 0xcc, 0xe7, 0xc0, 0x22,
0x99, 0x69, 0xfa, 0xe7, 0x80, 0x22, 0x99, 0x69, 0xd2, 0x01, 0xc5, 0xe7,
0xa0, 0x22, 0x99, 0x69, 0xfa, 0xe7, 0xc0, 0x22, 0x99, 0x69, 0xf7, 0xe7,
0xe0, 0x22, 0x99, 0x69, 0xf4, 0xe7, 0x03, 0x20, 0xd9, 0x69, 0x81, 0x43,
0xd9, 0x61, 0xd9, 0x69, 0xd9, 0x61, 0x70, 0x21, 0xd8, 0x69, 0x88, 0x43,
0xd8, 0x61, 0x07, 0x2a, 0xb2, 0xd8, 0x10, 0x00, 0x00, 0xf0, 0x02, 0xfb,
0x2f, 0x04, 0x08, 0x0b, 0x0e, 0x11, 0x14, 0x17, 0x10, 0x22, 0xd9, 0x69,
0x0a, 0x43, 0x27, 0xe0, 0x20, 0x22, 0xd9, 0x69, 0xfa, 0xe7, 0x30, 0x22,
0xd9, 0x69, 0xf7, 0xe7, 0x40, 0x22, 0xd9, 0x69, 0xf4, 0xe7, 0x50, 0x22,
0xd9, 0x69, 0xf1, 0xe7, 0x60, 0x22, 0xd9, 0x69, 0xee, 0xe7, 0xda, 0x69,
0x11, 0x43, 0xd9, 0x61, 0x94, 0xe7, 0xd9, 0x69, 0x16, 0x48, 0x01, 0x40,
0xd9, 0x61, 0xd9, 0x69, 0x15, 0x48, 0xd9, 0x61, 0xd9, 0x69, 0x01, 0x40,
0xd9, 0x61, 0x07, 0x2a, 0x00, 0xd9, 0x87, 0xe7, 0x10, 0x00, 0x00, 0xf0,
0xd7, 0xfa, 0x04, 0x07, 0x0b, 0x0f, 0x12, 0x16, 0x19, 0x1c, 0xda, 0x69,
0xda, 0x61, 0x7d, 0xe7, 0x80, 0x22, 0xd9, 0x69, 0x52, 0x01, 0xcf, 0xe7,
0x80, 0x22, 0xd9, 0x69, 0x92, 0x01, 0xcb, 0xe7, 0xc0, 0x22, 0xd9, 0x69,
0xfa, 0xe7, 0x80, 0x22, 0xd9, 0x69, 0xd2, 0x01, 0xc4, 0xe7, 0xa0, 0x22,
0xd9, 0x69, 0xfa, 0xe7, 0xc0, 0x22, 0xd9, 0x69, 0xf7, 0xe7, 0xe0, 0x22,
0xd9, 0x69, 0xf4, 0xe7, 0xff, 0xfc, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff,
0x03, 0x00, 0x00, 0xb5, 0x08, 0x00, 0x06, 0x29, 0x09, 0xd8, 0x1a, 0x6a,
0x00, 0xf0, 0xac, 0xfa, 0x04, 0x0f, 0x08, 0x11, 0x0a, 0x13, 0x0d, 0x00,
0x02, 0x21, 0x8a, 0x43, 0x1a, 0x62, 0x00, 0xbd, 0x20, 0x21, 0xfa, 0xe7,
0x05, 0x49, 0x0a, 0x40, 0xf8, 0xe7, 0x05, 0x49, 0xfb, 0xe7, 0x08, 0x21,
0xf3, 0xe7, 0x80, 0x21, 0xf1, 0xe7, 0x03, 0x49, 0xf5, 0xe7, 0xc0, 0x46,
0xff, 0xfd, 0xff, 0xff, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xff,
0x03, 0x00, 0x00, 0xb5, 0x08, 0x00, 0x06, 0x29, 0x09, 0xd8, 0x19, 0x6a,
0x00, 0xf0, 0x88, 0xfa, 0x04, 0x10, 0x08, 0x12, 0x0a, 0x14, 0x0d, 0x00,
0x01, 0x22, 0x0a, 0x43, 0x1a, 0x62, 0x00, 0xbd, 0x10, 0x22, 0xfa, 0xe7,
0x80, 0x22, 0x52, 0x00, 0xf7, 0xe7, 0x80, 0x22, 0x52, 0x01, 0xf4, 0xe7,
0x04, 0x22, 0xf2, 0xe7, 0x40, 0x22, 0xf0, 0xe7, 0x80, 0x22, 0xd2, 0x00,
0xed, 0xe7, 0x00, 0x00, 0x03, 0x00, 0x00, 0xb5, 0x08, 0x00, 0x06, 0x29,
0x09, 0xd8, 0x1a, 0x6a, 0x00, 0xf0, 0x68, 0xfa, 0x04, 0x0f, 0x08, 0x11,
0x0a, 0x13, 0x0d, 0x00, 0x01, 0x21, 0x8a, 0x43, 0x1a, 0x62, 0x00, 0xbd,
0x10, 0x21, 0xfa, 0xe7, 0x05, 0x49, 0x0a, 0x40, 0xf8, 0xe7, 0x05, 0x49,
0xfb, 0xe7, 0x04, 0x21, 0xf3, 0xe7, 0x40, 0x21, 0xf1, 0xe7, 0x03, 0x49,
0xf5, 0xe7, 0xc0, 0x46, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff,
0xff, 0xfb, 0xff, 0xff, 0x03, 0x00, 0x00, 0xb5, 0x08, 0x00, 0x06, 0x29,
0x06, 0xd8, 0x00, 0xf0, 0x45, 0xfa, 0x04, 0x05, 0x06, 0x05, 0x08, 0x05,
0x0a, 0x00, 0x5a, 0x63, 0x00, 0xbd, 0x9a, 0x63, 0xfc, 0xe7, 0xda, 0x63,
0xfa, 0xe7, 0x1a, 0x64, 0xf8, 0xe7, 0x80, 0x23, 0x42, 0x6c, 0x1b, 0x02,
0x13, 0x43, 0x43, 0x64, 0x70, 0x47, 0x40, 0x6a, 0x70, 0x47, 0x41, 0x62,
0x70, 0x47, 0x00, 0x00, 0x03, 0x00, 0x00, 0xb5, 0x08, 0x00, 0x03, 0x29,
0x0b, 0xd8, 0x00, 0xf0, 0x27, 0xfa, 0x02, 0x0b, 0x12, 0x1b, 0xf0, 0x20,
0x99, 0x69, 0x12, 0x01, 0x81, 0x43, 0x99, 0x61, 0x99, 0x69, 0x0a, 0x43,
0x9a, 0x61, 0x00, 0xbd, 0x99, 0x69, 0x0b, 0x48, 0x12, 0x03, 0x01, 0x40,
0x99, 0x61, 0x99, 0x69, 0xf5, 0xe7, 0xf0, 0x20, 0xd9, 0x69, 0x12, 0x01,
0x81, 0x43, 0xd9, 0x61, 0xd9, 0x69, 0x0a, 0x43, 0xda, 0x61, 0xee, 0xe7,
0xd9, 0x69, 0x03, 0x48, 0x12, 0x03, 0x01, 0x40, 0xd9, 0x61, 0xd9, 0x69,
0xf5, 0xe7, 0xc0, 0x46, 0xff, 0x0f, 0xff, 0xff, 0x03, 0x00, 0x00, 0xb5,
0x08, 0x00, 0x03, 0x29, 0x0b, 0xd8, 0x00, 0xf0, 0xfb, 0xf9, 0x02, 0x0b,
0x12, 0x1b, 0x0c, 0x20, 0x99, 0x69, 0x92, 0x00, 0x81, 0x43, 0x99, 0x61,
0x99, 0x69, 0x0a, 0x43, 0x9a, 0x61, 0x00, 0xbd, 0x99, 0x69, 0x0b, 0x48,
0x92, 0x02, 0x01, 0x40, 0x99, 0x61, 0x99, 0x69, 0xf5, 0xe7, 0x0c, 0x20,
0xd9, 0x69, 0x92, 0x00, 0x81, 0x43, 0xd9, 0x61, 0xd9, 0x69, 0x0a, 0x43,
0xda, 0x61, 0xee, 0xe7, 0xd9, 0x69, 0x03, 0x48, 0x92, 0x02, 0x01, 0x40,
0xd9, 0x61, 0xd9, 0x69, 0xf5, 0xe7, 0xc0, 0x46, 0xff, 0xf3, 0xff, 0xff,
0x03, 0x00, 0x08, 0x00, 0x30, 0xb5, 0x03, 0x21, 0x02, 0x24, 0x05, 0x00,
0x0a, 0x40, 0xa5, 0x43, 0x01, 0x2d, 0x03, 0xd1, 0x54, 0x1e, 0x01, 0x2c,
0x00, 0xd8, 0x4a, 0x40, 0x03, 0x28, 0x0a, 0xd8, 0x00, 0xf0, 0xc4, 0xf9,
0x02, 0x0a, 0x11, 0x19, 0x03, 0x20, 0x99, 0x69, 0x81, 0x43, 0x99, 0x61,
0x99, 0x69, 0x0a, 0x43, 0x9a, 0x61, 0x30, 0xbd, 0x99, 0x69, 0x0a, 0x48,
0x12, 0x02, 0x01, 0x40, 0x99, 0x61, 0x99, 0x69, 0xf5, 0xe7, 0x03, 0x20,
0xd9, 0x69, 0x81, 0x43, 0xd9, 0x61, 0xd9, 0x69, 0x0a, 0x43, 0xda, 0x61,
0xef, 0xe7, 0xd9, 0x69, 0x02, 0x48, 0x12, 0x02, 0x01, 0x40, 0xd9, 0x61,
0xd9, 0x69, 0xf5, 0xe7, 0xff, 0xfc, 0xff, 0xff, 0x01, 0x23, 0x89, 0x00,
0x8b, 0x40, 0x02, 0x6a, 0x13, 0x43, 0x03, 0x62, 0x70, 0x47, 0x07, 0x22,
0x83, 0x68, 0x93, 0x43, 0x83, 0x60, 0x83, 0x68, 0x19, 0x43, 0x81, 0x60,
0x70, 0x47, 0x00, 0x00, 0x04, 0x4b, 0x10, 0xb5, 0x1b, 0x68, 0x04, 0x00,
0x48, 0x08, 0xc0, 0x18, 0x00, 0xf0, 0x94, 0xf9, 0xe0, 0x60, 0x10, 0xbd,
0x04, 0x00, 0x00, 0x20, 0x08, 0x29, 0x04, 0xd1, 0x03, 0x68, 0x04, 0x4a,
0x13, 0x40, 0x03, 0x60, 0x70, 0x47, 0x80, 0x23, 0x02, 0x68, 0x5b, 0x01,
0x13, 0x43, 0xf8, 0xe7, 0xff, 0xef, 0xff, 0xff, 0x43, 0x68, 0x02, 0x4a,
0x13, 0x40, 0x0b, 0x43, 0x43, 0x60, 0x70, 0x47, 0xff, 0xcf, 0xff, 0xff,
0x03, 0x68, 0x02, 0x4a, 0x13, 0x40, 0x0b, 0x43, 0x03, 0x60, 0x70, 0x47,
0xff, 0xf9, 0xff, 0xff, 0x0c, 0x22, 0x03, 0x68, 0x93, 0x43, 0x0b, 0x43,
0x03, 0x60, 0x70, 0x47, 0x83, 0x68, 0x02, 0x4a, 0x13, 0x40, 0x0b, 0x43,
0x83, 0x60, 0x70, 0x47, 0xff, 0xfc, 0xff, 0xff, 0x01, 0x23, 0x02, 0x68,
0x13, 0x43, 0x03, 0x60, 0x70, 0x47, 0xc9, 0x05, 0xc9, 0x0d, 0x81, 0x62,
0x70, 0x47, 0x40, 0x6a, 0xc0, 0x05, 0xc0, 0x0d, 0x70, 0x47, 0xfe, 0xe7,
0x70, 0x47, 0x00, 0x00, 0x10, 0xb5, 0x16, 0x4b, 0x16, 0x4a, 0x17, 0x49,
0x8b, 0x42, 0x18, 0xd3, 0x00, 0x21, 0x16, 0x4a, 0x93, 0x42, 0x17, 0xd3,
0x80, 0x23, 0x15, 0x4a, 0x9b, 0x00, 0x11, 0x68, 0x14, 0x4c, 0x0b, 0x43,
0x13, 0x60, 0x14, 0x4b, 0x9c, 0x42, 0x0f, 0xd3, 0x13, 0x4c, 0x14, 0x4b,
0x9c, 0x42, 0x0e, 0xd3, 0xff, 0xf7, 0x22, 0xf9, 0x12, 0x4c, 0x13, 0x4b,
0x9c, 0x42, 0x0b, 0xd3, 0x10, 0xbd, 0x01, 0xca, 0x01, 0xc3, 0xe1, 0xe7,
0x02, 0xc3, 0xe3, 0xe7, 0x08, 0xcc, 0x98, 0x47, 0xe9, 0xe7, 0x08, 0xcc,
0x98, 0x47, 0xea, 0xe7, 0x08, 0xcc, 0x98, 0x47, 0xed, 0xe7, 0xc0, 0x46,
0x00, 0x00, 0x00, 0x20, 0x04, 0x25, 0x00, 0x08, 0x08, 0x00, 0x00, 0x20,
0x5c, 0x02, 0x00, 0x20, 0x14, 0xed, 0x00, 0xe0, 0x04, 0x25, 0x00, 0x08,
0x04, 0x25, 0x00, 0x08, 0x04, 0x25, 0x00, 0x08, 0x04, 0x25, 0x00, 0x08,
0x04, 0x25, 0x00, 0x08, 0x04, 0x25, 0x00, 0x08, 0x02, 0x4b, 0x00, 0x02,
0x00, 0x0a, 0x18, 0x60, 0x70, 0x47, 0xc0, 0x46, 0x14, 0xe0, 0x00, 0xe0,
0x04, 0x21, 0x03, 0x4a, 0x08, 0x40, 0x13, 0x68, 0x8b, 0x43, 0x03, 0x43,
0x13, 0x60, 0x70, 0x47, 0x10, 0xe0, 0x00, 0xe0, 0x02, 0x23, 0x02, 0x4a,
0x11, 0x68, 0x0b, 0x43, 0x13, 0x60, 0x70, 0x47, 0x10, 0xe0, 0x00, 0xe0,
0x01, 0x23, 0x02, 0x4a, 0x11, 0x68, 0x0b, 0x43, 0x13, 0x60, 0x70, 0x47,
0x10, 0xe0, 0x00, 0xe0, 0x04, 0x4a, 0x43, 0x09, 0x9b, 0x00, 0x9b, 0x18,
0x1f, 0x22, 0x10, 0x40, 0x1e, 0x3a, 0x82, 0x40, 0x1a, 0x60, 0x70, 0x47,
0x00, 0xe1, 0x00, 0xe0, 0x10, 0xb5, 0x1f, 0x28, 0x12, 0xd9, 0x0f, 0x23,
0x18, 0x40, 0x04, 0x38, 0xc0, 0xb2, 0x83, 0x08, 0x08, 0x4a, 0x9b, 0x00,
0x18, 0x24, 0xc0, 0x00, 0x20, 0x40, 0xe7, 0x34, 0x84, 0x40, 0x81, 0x40,
0x9b, 0x18, 0x1a, 0x68, 0xa2, 0x43, 0x11, 0x43, 0x19, 0x60, 0x10, 0xbd,
0x83, 0x08, 0x02, 0x4a, 0x9b, 0x00, 0xef, 0xe7, 0x18, 0xed, 0x00, 0xe0,
0x00, 0xe4, 0x00, 0xe0, 0x10, 0x23, 0x02, 0x4a, 0x11, 0x68, 0x0b, 0x43,
0x13, 0x60, 0x70, 0x47, 0x00, 0x20, 0x02, 0x40, 0x07, 0x21, 0x03, 0x4a,
0x13, 0x68, 0x8b, 0x43, 0x03, 0x43, 0x13, 0x60, 0x70, 0x47, 0xc0, 0x46,
0x00, 0x20, 0x02, 0x40, 0xf0, 0xb5, 0xc6, 0x46, 0x00, 0xb5, 0x0f, 0x2a,
0x43, 0xd9, 0x0b, 0x00, 0x03, 0x26, 0x03, 0x43, 0x1e, 0x40, 0x0c, 0x00,
0x03, 0x00, 0x00, 0x2e, 0x40, 0xd1, 0x15, 0x00, 0x10, 0x3d, 0x2d, 0x09,
0xac, 0x46, 0x2d, 0x01, 0xa8, 0x46, 0x80, 0x44, 0x00, 0xe0, 0x3b, 0x00,
0x67, 0x68, 0x25, 0x68, 0x5f, 0x60, 0xe7, 0x68, 0x1d, 0x60, 0xdf, 0x60,
0x1f, 0x00, 0xa5, 0x68, 0x10, 0x37, 0x9d, 0x60, 0x10, 0x34, 0x43, 0x45,
0xf1, 0xd1, 0x65, 0x46, 0x0f, 0x23, 0x0c, 0x24, 0x01, 0x35, 0x2d, 0x01,
0x49, 0x19, 0x13, 0x40, 0x45, 0x19, 0x14, 0x42, 0x23, 0xd0, 0x8c, 0x59,
0xac, 0x51, 0x04, 0x36, 0x9c, 0x1b, 0x03, 0x2c, 0xf9, 0xd8, 0x03, 0x24,
0x04, 0x3b, 0x9b, 0x08, 0x01, 0x33, 0x9b, 0x00, 0x22, 0x40, 0xed, 0x18,
0xc9, 0x18, 0x56, 0x1e, 0x00, 0x2a, 0x07, 0xd0, 0x00, 0x23, 0x00, 0xe0,
0x23, 0x00, 0xca, 0x5c, 0x5c, 0x1c, 0xea, 0x54, 0x9e, 0x42, 0xf9, 0xd1,
0x04, 0xbc, 0x90, 0x46, 0xf0, 0xbd, 0x05, 0x00, 0x56, 0x1e, 0x00, 0x2a,
0xf0, 0xd1, 0xf7, 0xe7, 0x56, 0x1e, 0x05, 0x00, 0xec, 0xe7, 0x1a, 0x00,
0xf6, 0xe7, 0xc0, 0x46, 0xf0, 0xb5, 0x05, 0x00, 0x83, 0x07, 0x4a, 0xd0,
0x54, 0x1e, 0x00, 0x2a, 0x44, 0xd0, 0xce, 0xb2, 0x03, 0x00, 0x03, 0x22,
0x02, 0xe0, 0x01, 0x35, 0x01, 0x3c, 0x3d, 0xd3, 0x01, 0x33, 0x2e, 0x70,
0x13, 0x42, 0xf8, 0xd1, 0x03, 0x2c, 0x2f, 0xd9, 0xff, 0x22, 0x0a, 0x40,
0x15, 0x02, 0x15, 0x43, 0x2a, 0x04, 0x15, 0x43, 0x0f, 0x2c, 0x35, 0xd9,
0x27, 0x00, 0x10, 0x3f, 0x3f, 0x09, 0x3e, 0x01, 0xb4, 0x46, 0x1e, 0x00,
0x1a, 0x00, 0x10, 0x36, 0x66, 0x44, 0x15, 0x60, 0x55, 0x60, 0x95, 0x60,
0xd5, 0x60, 0x10, 0x32, 0xb2, 0x42, 0xf8, 0xd1, 0x0f, 0x26, 0x0c, 0x22,
0x01, 0x37, 0x3f, 0x01, 0x26, 0x40, 0xdb, 0x19, 0x37, 0x00, 0x22, 0x42,
0x17, 0xd0, 0x3e, 0x1f, 0xb6, 0x08, 0xb4, 0x00, 0xa4, 0x46, 0x1a, 0x00,
0x1c, 0x1d, 0x64, 0x44, 0x20, 0xc2, 0xa2, 0x42, 0xfc, 0xd1, 0x03, 0x24,
0x01, 0x36, 0xb6, 0x00, 0x9b, 0x19, 0x3c, 0x40, 0x00, 0x2c, 0x05, 0xd0,
0xc9, 0xb2, 0x1c, 0x19, 0x19, 0x70, 0x01, 0x33, 0x9c, 0x42, 0xfb, 0xd1,
0xf0, 0xbd, 0x34, 0x00, 0xf4, 0xe7, 0x14, 0x00, 0x03, 0x00, 0xbf, 0xe7,
0x27, 0x00, 0xe0, 0xe7, 0x02, 0xb4, 0x71, 0x46, 0x49, 0x08, 0x49, 0x00,
0x09, 0x5c, 0x49, 0x00, 0x8e, 0x44, 0x02, 0xbc, 0x70, 0x47, 0xc0, 0x46,
0x00, 0x22, 0x43, 0x08, 0x8b, 0x42, 0x74, 0xd3, 0x03, 0x09, 0x8b, 0x42,
0x5f, 0xd3, 0x03, 0x0a, 0x8b, 0x42, 0x44, 0xd3, 0x03, 0x0b, 0x8b, 0x42,
0x28, 0xd3, 0x03, 0x0c, 0x8b, 0x42, 0x0d, 0xd3, 0xff, 0x22, 0x09, 0x02,
0x12, 0xba, 0x03, 0x0c, 0x8b, 0x42, 0x02, 0xd3, 0x12, 0x12, 0x09, 0x02,
0x65, 0xd0, 0x03, 0x0b, 0x8b, 0x42, 0x19, 0xd3, 0x00, 0xe0, 0x09, 0x0a,
0xc3, 0x0b, 0x8b, 0x42, 0x01, 0xd3, 0xcb, 0x03, 0xc0, 0x1a, 0x52, 0x41,
0x83, 0x0b, 0x8b, 0x42, 0x01, 0xd3, 0x8b, 0x03, 0xc0, 0x1a, 0x52, 0x41,
0x43, 0x0b, 0x8b, 0x42, 0x01, 0xd3, 0x4b, 0x03, 0xc0, 0x1a, 0x52, 0x41,
0x03, 0x0b, 0x8b, 0x42, 0x01, 0xd3, 0x0b, 0x03, 0xc0, 0x1a, 0x52, 0x41,
0xc3, 0x0a, 0x8b, 0x42, 0x01, 0xd3, 0xcb, 0x02, 0xc0, 0x1a, 0x52, 0x41,
0x83, 0x0a, 0x8b, 0x42, 0x01, 0xd3, 0x8b, 0x02, 0xc0, 0x1a, 0x52, 0x41,
0x43, 0x0a, 0x8b, 0x42, 0x01, 0xd3, 0x4b, 0x02, 0xc0, 0x1a, 0x52, 0x41,
0x03, 0x0a, 0x8b, 0x42, 0x01, 0xd3, 0x0b, 0x02, 0xc0, 0x1a, 0x52, 0x41,
0xcd, 0xd2, 0xc3, 0x09, 0x8b, 0x42, 0x01, 0xd3, 0xcb, 0x01, 0xc0, 0x1a,
0x52, 0x41, 0x83, 0x09, 0x8b, 0x42, 0x01, 0xd3, 0x8b, 0x01, 0xc0, 0x1a,
0x52, 0x41, 0x43, 0x09, 0x8b, 0x42, 0x01, 0xd3, 0x4b, 0x01, 0xc0, 0x1a,
0x52, 0x41, 0x03, 0x09, 0x8b, 0x42, 0x01, 0xd3, 0x0b, 0x01, 0xc0, 0x1a,
0x52, 0x41, 0xc3, 0x08, 0x8b, 0x42, 0x01, 0xd3, 0xcb, 0x00, 0xc0, 0x1a,
0x52, 0x41, 0x83, 0x08, 0x8b, 0x42, 0x01, 0xd3, 0x8b, 0x00, 0xc0, 0x1a,
0x52, 0x41, 0x43, 0x08, 0x8b, 0x42, 0x01, 0xd3, 0x4b, 0x00, 0xc0, 0x1a,
0x52, 0x41, 0x41, 0x1a, 0x00, 0xd2, 0x01, 0x46, 0x52, 0x41, 0x10, 0x46,
0x70, 0x47, 0xff, 0xe7, 0x01, 0xb5, 0x00, 0x20, 0x00, 0xf0, 0x06, 0xf8,
0x02, 0xbd, 0xc0, 0x46, 0x00, 0x29, 0xf7, 0xd0, 0x76, 0xe7, 0x70, 0x47,
0x70, 0x47, 0xc0, 0x46, 0x70, 0xb5, 0x00, 0x22, 0x0c, 0x4b, 0x04, 0x00,
0x0d, 0x00, 0x00, 0xf0, 0xa5, 0xfe, 0x00, 0x28, 0x04, 0xd1, 0x20, 0x00,
0x29, 0x00, 0x00, 0xf0, 0x0f, 0xfe, 0x70, 0xbd, 0x06, 0x4b, 0x00, 0x22,
0x20, 0x00, 0x29, 0x00, 0x00, 0xf0, 0x76, 0xfa, 0x00, 0xf0, 0x06, 0xfe,
0x80, 0x23, 0x1b, 0x06, 0x9c, 0x46, 0x60, 0x44, 0xf1, 0xe7, 0xc0, 0x46,
0x00, 0x00, 0xe0, 0x41, 0xf0, 0xb5, 0x57, 0x46, 0x4e, 0x46, 0x45, 0x46,
0xde, 0x46, 0xe0, 0xb5, 0x98, 0x46, 0x0c, 0x03, 0x4b, 0x00, 0x06, 0x00,
0x92, 0x46, 0x87, 0xb0, 0x24, 0x0b, 0x5b, 0x0d, 0xcf, 0x0f, 0x00, 0x2b,
0x6c, 0xd0, 0xdd, 0x4a, 0x93, 0x42, 0x00, 0xd1, 0x86, 0xe0, 0x42, 0x0f,
0xe4, 0x00, 0x14, 0x43, 0x80, 0x22, 0x12, 0x04, 0x14, 0x43, 0xd9, 0x4a,
0xc5, 0x00, 0x94, 0x46, 0x63, 0x44, 0x00, 0x93, 0x00, 0x23, 0x99, 0x46,
0x9b, 0x46, 0x43, 0x46, 0x42, 0x46, 0x1e, 0x03, 0xd2, 0x0f, 0x5b, 0x00,
0x50, 0x46, 0x90, 0x46, 0x36, 0x0b, 0x5b, 0x0d, 0x00, 0xd1, 0x78, 0xe0,
0xce, 0x4a, 0x93, 0x42, 0x1d, 0xd0, 0xce, 0x49, 0x42, 0x0f, 0x8c, 0x46,
0x00, 0x99, 0x63, 0x44, 0xf6, 0x00, 0x8c, 0x46, 0x16, 0x43, 0x80, 0x22,
0x9c, 0x44, 0x12, 0x04, 0x63, 0x46, 0x16, 0x43, 0xc2, 0x00, 0x00, 0x20,
0x00, 0x93, 0x00, 0x99, 0x43, 0x46, 0x01, 0x31, 0x8c, 0x46, 0x49, 0x46,
0x7b, 0x40, 0x01, 0x93, 0x0f, 0x29, 0x00, 0xd9, 0x7e, 0xe0, 0xc2, 0x4b,
0x89, 0x00, 0x59, 0x58, 0x8f, 0x46, 0x52, 0x46, 0x00, 0x9b, 0x32, 0x43,
0x00, 0xd0, 0x56, 0xe1, 0xbb, 0x49, 0x00, 0x26, 0x8c, 0x46, 0x63, 0x44,
0x49, 0x46, 0x00, 0x93, 0x02, 0x23, 0x19, 0x43, 0x89, 0x46, 0x02, 0x20,
0xe1, 0xe7, 0x43, 0x46, 0x01, 0x93, 0x34, 0x00, 0x15, 0x00, 0x83, 0x46,
0x5b, 0x46, 0x02, 0x2b, 0x5e, 0xd0, 0x03, 0x2b, 0x00, 0xd1, 0xf3, 0xe1,
0x01, 0x2b, 0x00, 0xd0, 0x18, 0xe1, 0x00, 0x22, 0x00, 0x24, 0x00, 0x25,
0x01, 0x9b, 0x12, 0x05, 0x22, 0x43, 0xdb, 0x07, 0x1a, 0x43, 0x28, 0x00,
0x11, 0x00, 0x07, 0xb0, 0x3c, 0xbc, 0x90, 0x46, 0x99, 0x46, 0xa2, 0x46,
0xab, 0x46, 0xf0, 0xbd, 0x25, 0x00, 0x05, 0x43, 0x00, 0xd1, 0x41, 0xe1,
0x00, 0x2c, 0x00, 0xd1, 0xad, 0xe1, 0x20, 0x00, 0x00, 0xf0, 0x10, 0xfe,
0x01, 0x00, 0x02, 0x00, 0x0b, 0x39, 0x1d, 0x23, 0x10, 0x00, 0x5b, 0x1a,
0x31, 0x00, 0x35, 0x00, 0x08, 0x38, 0x84, 0x40, 0xd9, 0x40, 0x85, 0x40,
0x0c, 0x43, 0x9e, 0x48, 0x83, 0x1a, 0x00, 0x93, 0x00, 0x23, 0x99, 0x46,
0x9b, 0x46, 0x86, 0xe7, 0x05, 0x00, 0x25, 0x43, 0x00, 0xd0, 0x1c, 0xe1,
0x08, 0x22, 0x00, 0x93, 0x02, 0x23, 0x00, 0x24, 0x91, 0x46, 0x9b, 0x46,
0x7b, 0xe7, 0x52, 0x46, 0x32, 0x43, 0x00, 0xd1, 0x0a, 0xe1, 0x00, 0x2e,
0x00, 0xd1, 0x76, 0xe1, 0x30, 0x00, 0x00, 0xf0, 0xe7, 0xfd, 0x02, 0x00,
0x0b, 0x3a, 0x1d, 0x23, 0x01, 0x00, 0x9b, 0x1a, 0x52, 0x46, 0x08, 0x39,
0xda, 0x40, 0x8e, 0x40, 0x16, 0x43, 0x52, 0x46, 0x8a, 0x40, 0x00, 0x9b,
0x89, 0x49, 0x18, 0x1a, 0x03, 0x00, 0x8c, 0x46, 0x63, 0x44, 0x00, 0x20,
0x00, 0x93, 0x7a, 0xe7, 0x00, 0x24, 0x00, 0x25, 0x81, 0x4a, 0xa5, 0xe7,
0x2f, 0x0c, 0x2d, 0x04, 0x2d, 0x0c, 0x2b, 0x00, 0x11, 0x0c, 0x12, 0x04,
0x12, 0x0c, 0x53, 0x43, 0x98, 0x46, 0x13, 0x00, 0x28, 0x00, 0x7b, 0x43,
0x99, 0x46, 0x48, 0x43, 0x48, 0x44, 0x83, 0x46, 0x40, 0x46, 0x0b, 0x00,
0x00, 0x0c, 0x82, 0x46, 0x58, 0x46, 0x7b, 0x43, 0x50, 0x44, 0x02, 0x93,
0x81, 0x45, 0x06, 0xd9, 0x9a, 0x46, 0x80, 0x23, 0x5b, 0x02, 0x99, 0x46,
0xca, 0x44, 0x53, 0x46, 0x02, 0x93, 0x03, 0x0c, 0x9b, 0x46, 0x43, 0x46,
0x1b, 0x04, 0x00, 0x04, 0x1b, 0x0c, 0x98, 0x46, 0x03, 0x00, 0x43, 0x44,
0x04, 0x93, 0x33, 0x0c, 0x99, 0x46, 0x2b, 0x00, 0x36, 0x04, 0x36, 0x0c,
0x73, 0x43, 0x98, 0x46, 0x33, 0x00, 0x7b, 0x43, 0x9a, 0x46, 0x4b, 0x46,
0x5d, 0x43, 0x5f, 0x43, 0x43, 0x46, 0x55, 0x44, 0x18, 0x0c, 0x40, 0x19,
0x82, 0x45, 0x03, 0xd9, 0x80, 0x23, 0x5b, 0x02, 0x9a, 0x46, 0x57, 0x44,
0x05, 0x0c, 0xeb, 0x19, 0x05, 0x93, 0x43, 0x46, 0x1d, 0x04, 0x2d, 0x0c,
0x00, 0x04, 0x40, 0x19, 0x25, 0x0c, 0x24, 0x04, 0x24, 0x0c, 0x27, 0x00,
0x57, 0x43, 0x6a, 0x43, 0x90, 0x46, 0x2a, 0x00, 0x3b, 0x0c, 0x9a, 0x46,
0x4a, 0x43, 0x61, 0x43, 0x41, 0x44, 0x51, 0x44, 0x83, 0x44, 0x88, 0x45,
0x03, 0xd9, 0x80, 0x23, 0x5b, 0x02, 0x98, 0x46, 0x42, 0x44, 0x3f, 0x04,
0x0b, 0x0c, 0x3f, 0x0c, 0x09, 0x04, 0xc9, 0x19, 0x27, 0x00, 0x98, 0x46,
0x4b, 0x46, 0x77, 0x43, 0x5c, 0x43, 0x6e, 0x43, 0x5d, 0x43, 0x3b, 0x0c,
0x99, 0x46, 0xa4, 0x19, 0x4c, 0x44, 0x42, 0x44, 0x03, 0x95, 0xa6, 0x42,
0x04, 0xd9, 0x80, 0x23, 0x5b, 0x02, 0x98, 0x46, 0x45, 0x44, 0x03, 0x95,
0x02, 0x9b, 0x3f, 0x04, 0x5b, 0x44, 0x1e, 0x00, 0x83, 0x42, 0x80, 0x41,
0x23, 0x04, 0x98, 0x46, 0x05, 0x9b, 0x3f, 0x0c, 0x47, 0x44, 0x98, 0x46,
0x76, 0x18, 0x8e, 0x42, 0x89, 0x41, 0x47, 0x44, 0x40, 0x42, 0x3d, 0x18,
0xa8, 0x46, 0x93, 0x46, 0x49, 0x42, 0x8a, 0x46, 0xc3, 0x44, 0x9f, 0x42,
0xbf, 0x41, 0x80, 0x45, 0x80, 0x41, 0x03, 0x9b, 0xda, 0x44, 0x98, 0x46,
0x53, 0x46, 0x40, 0x42, 0x7f, 0x42, 0x07, 0x43, 0x24, 0x0c, 0x93, 0x45,
0x92, 0x41, 0x8a, 0x45, 0x89, 0x41, 0x3f, 0x19, 0xdc, 0x0d, 0x04, 0x9b,
0x75, 0x02, 0x1d, 0x43, 0x68, 0x1e, 0x85, 0x41, 0x53, 0x46, 0x52, 0x42,
0x49, 0x42, 0x0a, 0x43, 0xbf, 0x18, 0x47, 0x44, 0xf6, 0x0d, 0x7f, 0x02,
0x35, 0x43, 0x5a, 0x02, 0x3c, 0x43, 0x15, 0x43, 0xfb, 0x01, 0x00, 0xd4,
0xc1, 0xe0, 0x01, 0x21, 0x6a, 0x08, 0x0d, 0x40, 0x15, 0x43, 0xe2, 0x07,
0x15, 0x43, 0x64, 0x08, 0x26, 0x49, 0x61, 0x44, 0x00, 0x29, 0x56, 0xdd,
0x6b, 0x07, 0x09, 0xd0, 0x0f, 0x22, 0x2a, 0x40, 0x04, 0x2a, 0x05, 0xd0,
0x2a, 0x1d, 0xaa, 0x42, 0xad, 0x41, 0x6d, 0x42, 0x64, 0x19, 0x15, 0x00,
0xe3, 0x01, 0x04, 0xd5, 0x80, 0x21, 0x1e, 0x4a, 0xc9, 0x00, 0x14, 0x40,
0x61, 0x44, 0x1d, 0x4a, 0x91, 0x42, 0x00, 0xdd, 0x24, 0xe7, 0x62, 0x07,
0xed, 0x08, 0x64, 0x02, 0x49, 0x05, 0x15, 0x43, 0x24, 0x0b, 0x4a, 0x0d,
0xc6, 0xe6, 0x01, 0x97, 0xb8, 0xe6, 0x10, 0x4a, 0x03, 0x20, 0x94, 0x46,
0x63, 0x44, 0x4a, 0x46, 0x00, 0x93, 0x03, 0x23, 0x1a, 0x43, 0x91, 0x46,
0x52, 0x46, 0x8a, 0xe6, 0x49, 0x46, 0x01, 0x23, 0x19, 0x43, 0x89, 0x46,
0x00, 0x26, 0x01, 0x20, 0x83, 0xe6, 0x0c, 0x22, 0x00, 0x93, 0x03, 0x23,
0x05, 0x00, 0x91, 0x46, 0x9b, 0x46, 0x5e, 0xe6, 0x04, 0x23, 0x99, 0x46,
0x00, 0x23, 0x00, 0x93, 0x01, 0x33, 0x00, 0x24, 0x9b, 0x46, 0x56, 0xe6,
0xff, 0x07, 0x00, 0x00, 0x01, 0xfc, 0xff, 0xff, 0xc4, 0x24, 0x00, 0x08,
0x0d, 0xfc, 0xff, 0xff, 0xff, 0x03, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe,
0xfe, 0x07, 0x00, 0x00, 0x00, 0x23, 0x80, 0x24, 0x00, 0x25, 0x44, 0x4a,
0x01, 0x93, 0x24, 0x03, 0x8e, 0xe6, 0x01, 0x20, 0x40, 0x1a, 0x38, 0x28,
0x00, 0xdd, 0x86, 0xe6, 0x1f, 0x28, 0x5b, 0xdd, 0x1f, 0x22, 0x23, 0x00,
0x52, 0x42, 0x51, 0x1a, 0xcb, 0x40, 0x19, 0x00, 0x20, 0x28, 0x03, 0xd0,
0x3b, 0x4a, 0x62, 0x44, 0x94, 0x40, 0x25, 0x43, 0x6a, 0x1e, 0x95, 0x41,
0x2a, 0x00, 0x0a, 0x43, 0x07, 0x21, 0x0d, 0x00, 0x00, 0x24, 0x15, 0x40,
0x11, 0x42, 0x5b, 0xd0, 0x0f, 0x21, 0x00, 0x24, 0x11, 0x40, 0x04, 0x29,
0x53, 0xd0, 0x11, 0x1d, 0x91, 0x42, 0x92, 0x41, 0x52, 0x42, 0xa4, 0x18,
0x0a, 0x00, 0x23, 0x02, 0x4b, 0xd5, 0x01, 0x22, 0x00, 0x24, 0x00, 0x25,
0x60, 0xe6, 0x80, 0x23, 0x1b, 0x03, 0x1c, 0x42, 0x09, 0xd0, 0x1e, 0x42,
0x07, 0xd1, 0x33, 0x43, 0x1c, 0x03, 0x43, 0x46, 0x15, 0x00, 0x24, 0x0b,
0x25, 0x4a, 0x01, 0x93, 0x52, 0xe6, 0x80, 0x22, 0x12, 0x03, 0x14, 0x43,
0x24, 0x03, 0x22, 0x4a, 0x24, 0x0b, 0x01, 0x97, 0x4a, 0xe6, 0x00, 0xf0,
0x71, 0xfc, 0x03, 0x00, 0x1a, 0x00, 0x15, 0x32, 0x20, 0x30, 0x1c, 0x2a,
0x00, 0xdc, 0x84, 0xe6, 0x56, 0x46, 0x08, 0x3b, 0x00, 0x22, 0x9e, 0x40,
0x89, 0xe6, 0x00, 0xf0, 0x63, 0xfc, 0x01, 0x00, 0x02, 0x00, 0x15, 0x31,
0x20, 0x32, 0x1c, 0x29, 0x00, 0xdc, 0x4e, 0xe6, 0x34, 0x00, 0x08, 0x38,
0x00, 0x25, 0x84, 0x40, 0x53, 0xe6, 0x00, 0x9b, 0x9c, 0x46, 0x41, 0xe7,
0x12, 0x49, 0x22, 0x00, 0x61, 0x44, 0x2e, 0x00, 0x8d, 0x40, 0x8a, 0x40,
0xc6, 0x40, 0x69, 0x1e, 0x8d, 0x41, 0x32, 0x43, 0x2a, 0x43, 0xc4, 0x40,
0x53, 0x07, 0xb6, 0xd0, 0x0f, 0x21, 0x11, 0x40, 0x04, 0x29, 0xac, 0xd1,
0xb1, 0xe7, 0x65, 0x07, 0x64, 0x02, 0x24, 0x0b, 0xd2, 0x08, 0x15, 0x43,
0x00, 0x22, 0x11, 0xe6, 0x80, 0x22, 0x12, 0x03, 0x14, 0x43, 0x24, 0x03,
0x01, 0x4a, 0x24, 0x0b, 0x0a, 0xe6, 0xc0, 0x46, 0xff, 0x07, 0x00, 0x00,
0x3e, 0x04, 0x00, 0x00, 0x1e, 0x04, 0x00, 0x00, 0xf8, 0xb5, 0x57, 0x46,
0x4e, 0x46, 0x45, 0x46, 0xde, 0x46, 0x04, 0x00, 0xe0, 0xb5, 0x1f, 0x00,
0x10, 0x00, 0x0b, 0x03, 0x62, 0x0f, 0x4e, 0x00, 0xcd, 0x0f, 0x5b, 0x0a,
0x39, 0x03, 0x13, 0x43, 0x49, 0x0a, 0xe2, 0x00, 0x44, 0x0f, 0x21, 0x43,
0xc2, 0x4c, 0x91, 0x46, 0x92, 0x46, 0xc0, 0x00, 0x7a, 0x00, 0x80, 0x46,
0x76, 0x0d, 0x52, 0x0d, 0xff, 0x0f, 0xa2, 0x42, 0x00, 0xd1, 0xb4, 0xe0,
0x01, 0x24, 0x67, 0x40, 0xbb, 0x46, 0xbd, 0x42, 0x00, 0xd1, 0x88, 0xe0,
0xb4, 0x1a, 0xa4, 0x46, 0x00, 0x2c, 0x00, 0xdc, 0xb2, 0xe0, 0x00, 0x2a,
0x00, 0xd1, 0xc5, 0xe0, 0xb5, 0x4a, 0x96, 0x42, 0x00, 0xd1, 0x8b, 0xe2,
0x80, 0x22, 0x12, 0x04, 0x11, 0x43, 0x62, 0x46, 0x38, 0x2a, 0x00, 0xdd,
0xa1, 0xe1, 0x1f, 0x2a, 0x00, 0xdd, 0x16, 0xe2, 0x20, 0x27, 0x0c, 0x00,
0xbf, 0x1a, 0xbc, 0x40, 0x02, 0x00, 0xa0, 0x46, 0x64, 0x46, 0xb8, 0x40,
0xe2, 0x40, 0x44, 0x46, 0x14, 0x43, 0x02, 0x00, 0x50, 0x1e, 0x82, 0x41,
0x60, 0x46, 0xc1, 0x40, 0x22, 0x43, 0x5b, 0x1a, 0x49, 0x46, 0x8c, 0x1a,
0xa1, 0x45, 0x92, 0x41, 0x52, 0x42, 0x9b, 0x1a, 0x98, 0x46, 0x43, 0x46,
0x1b, 0x02, 0x00, 0xd4, 0x17, 0xe1, 0x43, 0x46, 0x5b, 0x02, 0x5b, 0x0a,
0x98, 0x46, 0x43, 0x46, 0x00, 0x2b, 0x00, 0xd1, 0x6c, 0xe1, 0x40, 0x46,
0x00, 0xf0, 0xc8, 0xfb, 0x02, 0x00, 0x08, 0x3a, 0x20, 0x21, 0x20, 0x00,
0x43, 0x46, 0x89, 0x1a, 0x93, 0x40, 0xc8, 0x40, 0x94, 0x40, 0x03, 0x43,
0x96, 0x42, 0x00, 0xdd, 0x57, 0xe1, 0x96, 0x1b, 0x71, 0x1c, 0x1f, 0x29,
0x00, 0xdd, 0xcb, 0xe1, 0x20, 0x22, 0x18, 0x00, 0x26, 0x00, 0x52, 0x1a,
0x94, 0x40, 0x90, 0x40, 0xce, 0x40, 0xcb, 0x40, 0x62, 0x1e, 0x94, 0x41,
0x30, 0x43, 0x98, 0x46, 0x00, 0x26, 0x04, 0x43, 0x63, 0x07, 0x09, 0xd0,
0x0f, 0x23, 0x23, 0x40, 0x04, 0x2b, 0x05, 0xd0, 0x23, 0x1d, 0xa3, 0x42,
0xa4, 0x41, 0x64, 0x42, 0xa0, 0x44, 0x1c, 0x00, 0x43, 0x46, 0x1b, 0x02,
0x00, 0xd4, 0xdf, 0xe0, 0x82, 0x4b, 0x01, 0x36, 0x9e, 0x42, 0x00, 0xd1,
0xfb, 0xe0, 0x42, 0x46, 0x80, 0x4b, 0xe4, 0x08, 0x1a, 0x40, 0x13, 0x00,
0x71, 0x05, 0x52, 0x07, 0x5b, 0x02, 0x22, 0x43, 0x1b, 0x0b, 0x49, 0x0d,
0x09, 0x05, 0xed, 0x07, 0x19, 0x43, 0x29, 0x43, 0x10, 0x00, 0x3c, 0xbc,
0x90, 0x46, 0x99, 0x46, 0xa2, 0x46, 0xab, 0x46, 0xf8, 0xbd, 0xb4, 0x1a,
0xa4, 0x46, 0x00, 0x2c, 0x58, 0xdd, 0x00, 0x2a, 0x00, 0xd1, 0x9e, 0xe0,
0x71, 0x4a, 0x96, 0x42, 0x00, 0xd1, 0x3b, 0xe1, 0x80, 0x22, 0x12, 0x04,
0x11, 0x43, 0x62, 0x46, 0x38, 0x2a, 0x00, 0xdd, 0xc1, 0xe0, 0x1f, 0x2a,
0x00, 0xdc, 0xbb, 0xe1, 0x0c, 0x00, 0x20, 0x3a, 0xd4, 0x40, 0x22, 0x00,
0x64, 0x46, 0x20, 0x2c, 0x04, 0xd0, 0x40, 0x27, 0x3f, 0x1b, 0xb9, 0x40,
0x08, 0x43, 0x80, 0x46, 0x44, 0x46, 0x61, 0x1e, 0x8c, 0x41, 0x14, 0x43,
0xb1, 0xe0, 0x0c, 0x00, 0x04, 0x43, 0x2a, 0xd0, 0xbb, 0x46, 0xbd, 0x42,
0x2d, 0xd0, 0x61, 0x4c, 0xa4, 0x46, 0xb4, 0x44, 0x64, 0x46, 0x00, 0x2c,
0x5c, 0xd0, 0x94, 0x1b, 0xa4, 0x46, 0x00, 0x2e, 0x00, 0xd0, 0x15, 0xe1,
0x4d, 0x46, 0x1d, 0x43, 0x00, 0xd1, 0xc3, 0xe1, 0x65, 0x1e, 0x01, 0x2c,
0x00, 0xd1, 0x0c, 0xe2, 0x55, 0x4e, 0xb4, 0x42, 0x00, 0xd1, 0xf8, 0xe1,
0xac, 0x46, 0x0e, 0xe1, 0x0a, 0x00, 0x02, 0x43, 0x00, 0xd1, 0x36, 0xe1,
0x22, 0x00, 0x01, 0x3a, 0x01, 0x2c, 0x00, 0xd1, 0xc6, 0xe1, 0x4e, 0x4c,
0xa4, 0x45, 0x00, 0xd1, 0xf4, 0xe0, 0x94, 0x46, 0x31, 0xe7, 0x01, 0x24,
0x67, 0x40, 0xbb, 0x46, 0xbd, 0x42, 0x00, 0xd0, 0x1c, 0xe7, 0x4a, 0x4c,
0xa4, 0x46, 0xb4, 0x44, 0x64, 0x46, 0x00, 0x2c, 0x00, 0xd1, 0xcf, 0xe0,
0x94, 0x1b, 0xa4, 0x46, 0x00, 0x2e, 0x00, 0xd1, 0x5c, 0xe1, 0x42, 0x4e,
0xb2, 0x42, 0x00, 0xd1, 0xec, 0xe1, 0x80, 0x26, 0x36, 0x04, 0x33, 0x43,
0x64, 0x46, 0x38, 0x2c, 0x00, 0xdd, 0xb3, 0xe1, 0x1f, 0x2c, 0x00, 0xdd,
0x38, 0xe2, 0x20, 0x26, 0x36, 0x1b, 0x1c, 0x00, 0xb4, 0x40, 0x4f, 0x46,
0xa0, 0x46, 0x64, 0x46, 0xe7, 0x40, 0x44, 0x46, 0x3c, 0x43, 0x4f, 0x46,
0xb7, 0x40, 0x3e, 0x00, 0x77, 0x1e, 0xbe, 0x41, 0x34, 0x43, 0x66, 0x46,
0xf3, 0x40, 0xc9, 0x18, 0x24, 0x18, 0x84, 0x42, 0x9b, 0x41, 0x5b, 0x42,
0x98, 0x46, 0x16, 0x00, 0x88, 0x44, 0x4e, 0xe0, 0x30, 0x4a, 0x74, 0x1c,
0x14, 0x42, 0x00, 0xd0, 0xd6, 0xe0, 0x4a, 0x46, 0x1a, 0x43, 0x00, 0x2e,
0x00, 0xd0, 0x5b, 0xe1, 0x00, 0x2a, 0x00, 0xd1, 0xa5, 0xe1, 0x0a, 0x00,
0x02, 0x43, 0x00, 0xd0, 0xbb, 0xe1, 0x4a, 0x46, 0x59, 0x07, 0xd2, 0x08,
0x0a, 0x43, 0xdb, 0x08, 0x27, 0xe0, 0x0a, 0x00, 0x02, 0x43, 0x00, 0xd1,
0x74, 0xe1, 0x22, 0x00, 0x01, 0x3a, 0x01, 0x2c, 0x05, 0xd0, 0x1e, 0x4c,
0xa4, 0x45, 0x00, 0xd1, 0x94, 0xe0, 0x94, 0x46, 0x59, 0xe7, 0x48, 0x44,
0x48, 0x45, 0x92, 0x41, 0x5b, 0x18, 0x98, 0x46, 0x04, 0x00, 0x52, 0x42,
0x90, 0x44, 0x43, 0x46, 0x02, 0x26, 0x1b, 0x02, 0x00, 0xd5, 0xc4, 0xe0,
0x01, 0x3e, 0x63, 0x07, 0x00, 0xd0, 0x11, 0xe7, 0x43, 0x46, 0xb4, 0x46,
0x59, 0x07, 0xe2, 0x08, 0x0a, 0x43, 0xdb, 0x08, 0x0f, 0x49, 0x8c, 0x45,
0x40, 0xd0, 0x61, 0x46, 0x1b, 0x03, 0x49, 0x05, 0x1b, 0x0b, 0x49, 0x0d,
0x20, 0xe7, 0x01, 0x43, 0x0c, 0x00, 0x61, 0x1e, 0x8c, 0x41, 0x4c, 0x44,
0x4c, 0x45, 0x92, 0x41, 0x52, 0x42, 0x90, 0x46, 0x98, 0x44, 0x43, 0x46,
0x1b, 0x02, 0xe0, 0xd5, 0x04, 0x4b, 0x01, 0x36, 0x9e, 0x42, 0x00, 0xd0,
0x9f, 0xe0, 0x31, 0x00, 0x00, 0x23, 0x00, 0x22, 0x0a, 0xe7, 0xc0, 0x46,
0xff, 0x07, 0x00, 0x00, 0xff, 0xff, 0x7f, 0xff, 0x01, 0xf8, 0xff, 0xff,
0xfe, 0x07, 0x00, 0x00, 0x00, 0x2a, 0x00, 0xd1, 0x60, 0xe1, 0x0a, 0x00,
0x02, 0x43, 0x4d, 0xd0, 0x4a, 0x46, 0x5c, 0x07, 0xd2, 0x08, 0x22, 0x43,
0x80, 0x24, 0xdb, 0x08, 0x24, 0x03, 0x23, 0x42, 0x07, 0xd0, 0xce, 0x08,
0x26, 0x42, 0x04, 0xd1, 0x5d, 0x46, 0x33, 0x00, 0xc2, 0x08, 0x49, 0x07,
0x0a, 0x43, 0x51, 0x0f, 0xd2, 0x00, 0xd2, 0x08, 0x49, 0x07, 0x0a, 0x43,
0x11, 0x00, 0x19, 0x43, 0x00, 0xd1, 0xc8, 0xe1, 0x80, 0x21, 0x09, 0x03,
0x0b, 0x43, 0x1b, 0x03, 0xd5, 0x49, 0x1b, 0x0b, 0xda, 0xe6, 0xd5, 0x49,
0xb6, 0x1a, 0x0b, 0x40, 0x98, 0x46, 0xb5, 0xe6, 0x20, 0x00, 0x00, 0xf0,
0x5b, 0xfa, 0x02, 0x00, 0x18, 0x32, 0x1f, 0x2a, 0x00, 0xdc, 0x8f, 0xe6,
0x23, 0x00, 0x08, 0x38, 0x83, 0x40, 0x00, 0x24, 0x92, 0xe6, 0x08, 0x43,
0x02, 0x00, 0x50, 0x1e, 0x82, 0x41, 0x6d, 0xe6, 0xca, 0x4c, 0x72, 0x1c,
0x22, 0x42, 0x00, 0xd0, 0xad, 0xe0, 0x4a, 0x46, 0x1a, 0x43, 0x00, 0x2e,
0xb8, 0xd1, 0x00, 0x2a, 0x00, 0xd1, 0x58, 0xe1, 0x0a, 0x00, 0x02, 0x43,
0x00, 0xd0, 0x59, 0xe1, 0x4a, 0x46, 0x59, 0x07, 0xd2, 0x08, 0x0a, 0x43,
0xdb, 0x08, 0x86, 0xe7, 0x4a, 0x46, 0x59, 0x07, 0xd2, 0x08, 0x0a, 0x43,
0xdb, 0x08, 0xc1, 0xe7, 0xba, 0x4d, 0xaa, 0x42, 0x00, 0xd1, 0x1e, 0xe1,
0x80, 0x25, 0x2d, 0x04, 0x2b, 0x43, 0x64, 0x46, 0x38, 0x2c, 0x5d, 0xdc,
0x1f, 0x2c, 0x00, 0xdd, 0xd0, 0xe0, 0x20, 0x25, 0x67, 0x46, 0x2d, 0x1b,
0x4e, 0x46, 0x1c, 0x00, 0xfe, 0x40, 0xac, 0x40, 0x34, 0x43, 0x4e, 0x46,
0xae, 0x40, 0x35, 0x00, 0xfb, 0x40, 0x6e, 0x1e, 0xb5, 0x41, 0xc9, 0x1a,
0x2c, 0x43, 0x4e, 0xe0, 0x4a, 0x46, 0x14, 0x1a, 0xa1, 0x45, 0x92, 0x41,
0x52, 0x42, 0x90, 0x46, 0x5f, 0x1a, 0x3a, 0x00, 0x47, 0x46, 0xd2, 0x1b,
0x90, 0x46, 0x12, 0x02, 0x00, 0xd5, 0x8b, 0xe0, 0x42, 0x46, 0x22, 0x43,
0x00, 0xd0, 0x30, 0xe6, 0x00, 0x23, 0x00, 0x25, 0x4d, 0xe7, 0x4a, 0x46,
0x59, 0x07, 0xd2, 0x08, 0x0a, 0x43, 0xdb, 0x08, 0x44, 0xe7, 0x42, 0x46,
0x9e, 0x4b, 0x61, 0x08, 0x1a, 0x40, 0x13, 0x00, 0x01, 0x22, 0x14, 0x40,
0x0c, 0x43, 0xda, 0x07, 0x5b, 0x08, 0x98, 0x46, 0x14, 0x43, 0x41, 0xe6,
0x1a, 0x00, 0x1f, 0x3e, 0xf2, 0x40, 0x16, 0x00, 0x20, 0x29, 0x03, 0xd0,
0x40, 0x22, 0x51, 0x1a, 0x8b, 0x40, 0x1c, 0x43, 0x62, 0x1e, 0x94, 0x41,
0x00, 0x23, 0x34, 0x43, 0x98, 0x46, 0x00, 0x26, 0x1d, 0xe7, 0x0c, 0x00,
0x20, 0x3a, 0xd4, 0x40, 0x22, 0x00, 0x64, 0x46, 0x20, 0x2c, 0x04, 0xd0,
0x40, 0x27, 0x3f, 0x1b, 0xb9, 0x40, 0x08, 0x43, 0x80, 0x46, 0x44, 0x46,
0x61, 0x1e, 0x8c, 0x41, 0x22, 0x43, 0xe9, 0xe5, 0x4c, 0x46, 0x23, 0x43,
0x1c, 0x00, 0x63, 0x1e, 0x9c, 0x41, 0x04, 0x1b, 0xa0, 0x42, 0x9b, 0x41,
0x5b, 0x42, 0xcb, 0x1a, 0x98, 0x46, 0x5d, 0x46, 0x16, 0x00, 0xe2, 0xe5,
0x4e, 0x46, 0x1e, 0x43, 0x00, 0xd1, 0xae, 0xe0, 0x66, 0x1e, 0x01, 0x2c,
0x00, 0xd1, 0xfd, 0xe0, 0x7b, 0x4f, 0xbc, 0x42, 0x00, 0xd1, 0x07, 0xe1,
0xb4, 0x46, 0x9b, 0xe6, 0x64, 0x46, 0x20, 0x22, 0x12, 0x1b, 0x0c, 0x00,
0x94, 0x40, 0x07, 0x00, 0x90, 0x40, 0xa0, 0x46, 0x64, 0x46, 0x42, 0x1e,
0x90, 0x41, 0x62, 0x46, 0xe7, 0x40, 0x44, 0x46, 0xd1, 0x40, 0x3c, 0x43,
0x04, 0x43, 0x5b, 0x18, 0xf3, 0xe6, 0x6f, 0x4c, 0xa2, 0x42, 0x00, 0xd1,
0xd5, 0xe0, 0x48, 0x44, 0x5b, 0x18, 0x48, 0x45, 0x89, 0x41, 0x49, 0x42,
0x5b, 0x18, 0xdc, 0x07, 0x40, 0x08, 0x5b, 0x08, 0x98, 0x46, 0x16, 0x00,
0x04, 0x43, 0xcc, 0xe6, 0x00, 0x2a, 0x00, 0xd0, 0x82, 0xe0, 0x0a, 0x00,
0x02, 0x43, 0x40, 0xd1, 0x80, 0x23, 0x00, 0x25, 0x1b, 0x03, 0x13, 0xe7,
0x4b, 0x07, 0xc2, 0x08, 0x1a, 0x43, 0x5d, 0x46, 0xcb, 0x08, 0xc5, 0xe6,
0x4a, 0x46, 0x84, 0x1a, 0xa0, 0x42, 0x92, 0x41, 0xcb, 0x1a, 0x52, 0x42,
0x9b, 0x1a, 0x98, 0x46, 0x5d, 0x46, 0x9e, 0xe5, 0x4a, 0x46, 0x59, 0x07,
0xd2, 0x08, 0x0a, 0x43, 0xdb, 0x08, 0xf9, 0xe6, 0x4a, 0x46, 0x14, 0x1a,
0xa1, 0x45, 0x92, 0x41, 0x5b, 0x1a, 0x52, 0x42, 0x9b, 0x1a, 0x98, 0x46,
0x01, 0x26, 0x86, 0xe5, 0x4a, 0x46, 0x59, 0x07, 0xd2, 0x08, 0x0a, 0x43,
0xdb, 0x08, 0xa5, 0xe6, 0x4c, 0x46, 0x23, 0x43, 0x1c, 0x00, 0x63, 0x1e,
0x9c, 0x41, 0x5b, 0xe6, 0x65, 0x46, 0x1e, 0x00, 0x20, 0x3d, 0xee, 0x40,
0x20, 0x2c, 0x05, 0xd0, 0x40, 0x25, 0x2d, 0x1b, 0xab, 0x40, 0x4c, 0x46,
0x1c, 0x43, 0xa2, 0x46, 0x54, 0x46, 0x63, 0x1e, 0x9c, 0x41, 0x34, 0x43,
0x7d, 0xe7, 0x4b, 0x07, 0xc2, 0x08, 0x1a, 0x43, 0x5d, 0x46, 0xcb, 0x08,
0xcc, 0xe6, 0x0a, 0x00, 0x02, 0x43, 0x00, 0xd1, 0x36, 0xe7, 0x4b, 0x07,
0xc2, 0x08, 0x1a, 0x43, 0x5d, 0x46, 0xcb, 0x08, 0x81, 0xe6, 0x4a, 0x46,
0x84, 0x1a, 0xa0, 0x42, 0x92, 0x41, 0xcb, 0x1a, 0x52, 0x42, 0x9b, 0x1a,
0x98, 0x46, 0x5d, 0x46, 0x01, 0x26, 0x4e, 0xe5, 0x4b, 0x07, 0xc2, 0x08,
0x1a, 0x43, 0xcb, 0x08, 0xb2, 0xe6, 0x4a, 0x46, 0x14, 0x1a, 0xa1, 0x45,
0x92, 0x41, 0x5f, 0x1a, 0x52, 0x42, 0xba, 0x1a, 0x90, 0x46, 0x12, 0x02,
0x6b, 0xd5, 0x4a, 0x46, 0x84, 0x1a, 0xa0, 0x42, 0x92, 0x41, 0xcb, 0x1a,
0x52, 0x42, 0x9b, 0x1a, 0x98, 0x46, 0x5d, 0x46, 0x64, 0xe5, 0x4b, 0x07,
0xc2, 0x08, 0x1a, 0x43, 0x5d, 0x46, 0xcb, 0x08, 0x98, 0xe6, 0x4b, 0x07,
0xc2, 0x08, 0x1a, 0x43, 0xcb, 0x08, 0x4f, 0xe6, 0x0a, 0x00, 0x02, 0x43,
0x90, 0xd0, 0x4a, 0x46, 0x5c, 0x07, 0xd2, 0x08, 0x14, 0x43, 0x80, 0x22,
0xdb, 0x08, 0x12, 0x03, 0x13, 0x42, 0x08, 0xd0, 0xce, 0x08, 0x16, 0x42,
0x05, 0xd1, 0xc0, 0x08, 0x49, 0x07, 0x08, 0x43, 0x04, 0x00, 0x5d, 0x46,
0x33, 0x00, 0x61, 0x0f, 0xe2, 0x00, 0x49, 0x07, 0xd2, 0x08, 0x0a, 0x43,
0x78, 0xe6, 0x4b, 0x07, 0xc2, 0x08, 0x1a, 0x43, 0xcb, 0x08, 0x32, 0xe6,
0x48, 0x44, 0x5b, 0x18, 0x48, 0x45, 0x92, 0x41, 0x98, 0x46, 0x52, 0x42,
0x90, 0x44, 0x43, 0x46, 0x04, 0x00, 0x1b, 0x02, 0x00, 0xd4, 0x1a, 0xe6,
0x42, 0x46, 0x0e, 0x4b, 0x01, 0x26, 0x1a, 0x40, 0x90, 0x46, 0x14, 0xe6,
0x66, 0x46, 0x1f, 0x00, 0x20, 0x3e, 0xf7, 0x40, 0x20, 0x2c, 0x05, 0xd0,
0x40, 0x26, 0x36, 0x1b, 0xb3, 0x40, 0x4c, 0x46, 0x1c, 0x43, 0xa2, 0x46,
0x54, 0x46, 0x63, 0x1e, 0x9c, 0x41, 0x3c, 0x43, 0xc8, 0xe5, 0x11, 0x00,
0x00, 0x23, 0x00, 0x22, 0x32, 0xe5, 0xc0, 0x46, 0xff, 0x07, 0x00, 0x00,
0xff, 0xff, 0x7f, 0xff, 0xfe, 0x07, 0x00, 0x00, 0x4a, 0x46, 0x14, 0x18,
0x84, 0x42, 0x92, 0x41, 0x5b, 0x18, 0x98, 0x46, 0x52, 0x42, 0x90, 0x44,
0xe9, 0xe5, 0x42, 0x46, 0x22, 0x43, 0x00, 0xd1, 0xa6, 0xe6, 0xea, 0xe5,
0x4b, 0x07, 0xc2, 0x08, 0x1a, 0x43, 0xcb, 0x08, 0x32, 0xe6, 0x00, 0x22,
0x01, 0x49, 0x13, 0x00, 0x14, 0xe5, 0xc0, 0x46, 0xff, 0x07, 0x00, 0x00,
0x0a, 0x00, 0x30, 0xb5, 0x13, 0x4c, 0x53, 0x00, 0x09, 0x03, 0x05, 0x00,
0x09, 0x0b, 0x00, 0x20, 0x5b, 0x0d, 0xd2, 0x0f, 0xa3, 0x42, 0x04, 0xdd,
0x0f, 0x48, 0x83, 0x42, 0x02, 0xdd, 0x0f, 0x4b, 0xd0, 0x18, 0x30, 0xbd,
0x80, 0x20, 0x40, 0x03, 0x01, 0x43, 0x0d, 0x48, 0xc0, 0x1a, 0x1f, 0x28,
0x08, 0xdd, 0x0c, 0x48, 0xc3, 0x1a, 0xd9, 0x40, 0x0b, 0x00, 0x58, 0x42,
0x00, 0x2a, 0xf0, 0xd1, 0x18, 0x00, 0xee, 0xe7, 0x08, 0x4c, 0xc5, 0x40,
0xa4, 0x46, 0x63, 0x44, 0x99, 0x40, 0x0b, 0x00, 0x2b, 0x43, 0xf2, 0xe7,
0xfe, 0x03, 0x00, 0x00, 0x1d, 0x04, 0x00, 0x00, 0xff, 0xff, 0xff, 0x7f,
0x33, 0x04, 0x00, 0x00, 0x13, 0x04, 0x00, 0x00, 0xed, 0xfb, 0xff, 0xff,
0x10, 0xb5, 0x04, 0x1e, 0x10, 0xd0, 0x00, 0xf0, 0x5f, 0xf8, 0x0f, 0x4b,
0x1b, 0x1a, 0x0a, 0x28, 0x11, 0xdc, 0x0b, 0x22, 0x21, 0x00, 0x12, 0x1a,
0xd1, 0x40, 0x15, 0x30, 0x0a, 0x03, 0x5b, 0x05, 0x84, 0x40, 0x12, 0x0b,
0x5b, 0x0d, 0x01, 0xe0, 0x00, 0x23, 0x00, 0x22, 0x1b, 0x05, 0x13, 0x43,
0x20, 0x00, 0x19, 0x00, 0x10, 0xbd, 0x22, 0x00, 0x0b, 0x38, 0x82, 0x40,
0x5b, 0x05, 0x12, 0x03, 0x00, 0x24, 0x12, 0x0b, 0x5b, 0x0d, 0xf1, 0xe7,
0x1e, 0x04, 0x00, 0x00, 0x84, 0x46, 0x10, 0x1c, 0x62, 0x46, 0x8c, 0x46,
0x19, 0x1c, 0x63, 0x46, 0x00, 0xe0, 0xc0, 0x46, 0x1f, 0xb5, 0x00, 0xf0,
0xff, 0xf8, 0x00, 0x28, 0x01, 0xd4, 0x00, 0x21, 0xc8, 0x42, 0x1f, 0xbd,
0x10, 0xb5, 0x00, 0xf0, 0x49, 0xf8, 0x40, 0x42, 0x01, 0x30, 0x10, 0xbd,
0x10, 0xb5, 0x00, 0xf0, 0xf1, 0xf8, 0x00, 0x28, 0x01, 0xdb, 0x00, 0x20,
0x10, 0xbd, 0x01, 0x20, 0x10, 0xbd, 0xc0, 0x46, 0x10, 0xb5, 0x00, 0xf0,
0xe7, 0xf8, 0x00, 0x28, 0x01, 0xdd, 0x00, 0x20, 0x10, 0xbd, 0x01, 0x20,
0x10, 0xbd, 0xc0, 0x46, 0x10, 0xb5, 0x00, 0xf0, 0x6b, 0xf8, 0x00, 0x28,
0x01, 0xdc, 0x00, 0x20, 0x10, 0xbd, 0x01, 0x20, 0x10, 0xbd, 0xc0, 0x46,
0x10, 0xb5, 0x00, 0xf0, 0x61, 0xf8, 0x00, 0x28, 0x01, 0xda, 0x00, 0x20,
0x10, 0xbd, 0x01, 0x20, 0x10, 0xbd, 0xc0, 0x46, 0x1c, 0x21, 0x01, 0x23,
0x1b, 0x04, 0x98, 0x42, 0x01, 0xd3, 0x00, 0x0c, 0x10, 0x39, 0x1b, 0x0a,
0x98, 0x42, 0x01, 0xd3, 0x00, 0x0a, 0x08, 0x39, 0x1b, 0x09, 0x98, 0x42,
0x01, 0xd3, 0x00, 0x09, 0x04, 0x39, 0x02, 0xa2, 0x10, 0x5c, 0x40, 0x18,
0x70, 0x47, 0xc0, 0x46, 0x04, 0x03, 0x02, 0x02, 0x01, 0x01, 0x01, 0x01,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xb5, 0x4f, 0x46,
0x46, 0x46, 0xd6, 0x46, 0x94, 0x46, 0x91, 0x46, 0x1a, 0x03, 0x12, 0x0b,
0x18, 0x4d, 0xc0, 0xb5, 0x4c, 0x00, 0x0f, 0x03, 0x92, 0x46, 0x5a, 0x00,
0x06, 0x00, 0x80, 0x46, 0x3f, 0x0b, 0x01, 0x20, 0x64, 0x0d, 0xc9, 0x0f,
0x52, 0x0d, 0xdb, 0x0f, 0xac, 0x42, 0x0a, 0xd0, 0xaa, 0x42, 0x03, 0xd0,
0x94, 0x42, 0x01, 0xd1, 0x57, 0x45, 0x0d, 0xd0, 0x1c, 0xbc, 0x90, 0x46,
0x99, 0x46, 0xa2, 0x46, 0xf0, 0xbd, 0x3d, 0x00, 0x35, 0x43, 0xf7, 0xd1,
0xa2, 0x42, 0xf5, 0xd1, 0x52, 0x46, 0x65, 0x46, 0x2a, 0x43, 0xf1, 0xd1,
0x01, 0x20, 0xc8, 0x45, 0xee, 0xd1, 0x99, 0x42, 0x06, 0xd0, 0x00, 0x2c,
0xea, 0xd1, 0x3e, 0x43, 0x30, 0x00, 0x46, 0x1e, 0xb0, 0x41, 0xe5, 0xe7,
0x00, 0x20, 0xe3, 0xe7, 0xff, 0x07, 0x00, 0x00, 0xf0, 0xb5, 0x4e, 0x46,
0x45, 0x46, 0x57, 0x46, 0xde, 0x46, 0x04, 0x00, 0x18, 0x00, 0xe0, 0xb5,
0x16, 0x00, 0x1b, 0x03, 0x1b, 0x0b, 0x32, 0x4d, 0x0f, 0x03, 0x4a, 0x00,
0x99, 0x46, 0x43, 0x00, 0xa4, 0x46, 0xb0, 0x46, 0x3f, 0x0b, 0x52, 0x0d,
0xc9, 0x0f, 0x5b, 0x0d, 0xc0, 0x0f, 0xaa, 0x42, 0x29, 0xd0, 0xab, 0x42,
0x18, 0xd0, 0x00, 0x2a, 0x2a, 0xd1, 0x3c, 0x43, 0xa3, 0x46, 0x65, 0x42,
0x65, 0x41, 0x00, 0x2b, 0x02, 0xd1, 0x4c, 0x46, 0x26, 0x43, 0x27, 0xd0,
0x00, 0x2d, 0x15, 0xd1, 0x81, 0x42, 0x28, 0xd0, 0x02, 0x20, 0x01, 0x39,
0x08, 0x40, 0x01, 0x38, 0x3c, 0xbc, 0x90, 0x46, 0x99, 0x46, 0xa2, 0x46,
0xab, 0x46, 0xf0, 0xbd, 0x4d, 0x46, 0x2e, 0x43, 0x2f, 0xd1, 0x00, 0x2a,
0xee, 0xd1, 0x3c, 0x43, 0x65, 0x42, 0x65, 0x41, 0x00, 0x2d, 0xe9, 0xd0,
0x00, 0x28, 0xed, 0xd1, 0x01, 0x20, 0x40, 0x42, 0xea, 0xe7, 0x3d, 0x00,
0x25, 0x43, 0x20, 0xd1, 0x93, 0x42, 0xeb, 0xd0, 0x00, 0x2b, 0xdd, 0xd1,
0x4c, 0x46, 0x26, 0x43, 0xda, 0xd1, 0xdb, 0xe7, 0x5b, 0x46, 0x00, 0x20,
0x00, 0x2b, 0xdb, 0xd0, 0xd6, 0xe7, 0x9a, 0x42, 0x0a, 0xdc, 0xe7, 0xdb,
0x4f, 0x45, 0xd1, 0xd8, 0x10, 0xd0, 0x00, 0x20, 0x4f, 0x45, 0xd1, 0xd2,
0x00, 0x29, 0xe1, 0xd0, 0x08, 0x00, 0xcd, 0xe7, 0x43, 0x42, 0x58, 0x41,
0x02, 0x23, 0x40, 0x42, 0x18, 0x40, 0x01, 0x38, 0xc6, 0xe7, 0x02, 0x20,
0x40, 0x42, 0xc3, 0xe7, 0xc4, 0x45, 0xbd, 0xd8, 0x00, 0x20, 0xc4, 0x45,
0xbe, 0xd2, 0xeb, 0xe7, 0xff, 0x07, 0x00, 0x00, 0xf0, 0xb5, 0x4e, 0x46,
0x45, 0x46, 0x57, 0x46, 0xde, 0x46, 0x04, 0x00, 0x18, 0x00, 0xe0, 0xb5,
0x16, 0x00, 0x1b, 0x03, 0x1b, 0x0b, 0x31, 0x4d, 0x0f, 0x03, 0x4a, 0x00,
0x99, 0x46, 0x43, 0x00, 0xa4, 0x46, 0xb0, 0x46, 0x3f, 0x0b, 0x52, 0x0d,
0xc9, 0x0f, 0x5b, 0x0d, 0xc0, 0x0f, 0xaa, 0x42, 0x11, 0xd0, 0xab, 0x42,
0x14, 0xd0, 0x00, 0x2a, 0x2f, 0xd1, 0x3c, 0x43, 0xa3, 0x46, 0x65, 0x42,
0x65, 0x41, 0x00, 0x2b, 0x14, 0xd1, 0x4c, 0x46, 0x26, 0x43, 0x11, 0xd1,
0x5b, 0x46, 0x00, 0x20, 0x00, 0x2b, 0x17, 0xd0, 0x10, 0xe0, 0x3d, 0x00,
0x25, 0x43, 0x12, 0xd1, 0x93, 0x42, 0x1c, 0xd1, 0x4d, 0x46, 0x2e, 0x43,
0x0d, 0xd1, 0x00, 0x2a, 0x04, 0xd1, 0x3c, 0x43, 0x65, 0x42, 0x65, 0x41,
0x00, 0x2d, 0x0d, 0xd1, 0x81, 0x42, 0x16, 0xd0, 0x02, 0x20, 0x01, 0x39,
0x08, 0x40, 0x01, 0x38, 0x00, 0xe0, 0x02, 0x20, 0x3c, 0xbc, 0x90, 0x46,
0x99, 0x46, 0xa2, 0x46, 0xab, 0x46, 0xf0, 0xbd, 0x00, 0x28, 0xf7, 0xd1,
0x01, 0x20, 0x40, 0x42, 0xf4, 0xe7, 0x00, 0x2b, 0xea, 0xd1, 0x4c, 0x46,
0x26, 0x43, 0xe7, 0xd1, 0xe8, 0xe7, 0x9a, 0x42, 0x06, 0xdd, 0x43, 0x42,
0x58, 0x41, 0x02, 0x23, 0x40, 0x42, 0x18, 0x40, 0x01, 0x38, 0xe5, 0xe7,
0x9a, 0x42, 0xe9, 0xdb, 0x4f, 0x45, 0xdb, 0xd8, 0x06, 0xd0, 0x00, 0x20,
0x4f, 0x45, 0xdd, 0xd2, 0x00, 0x29, 0xe3, 0xd0, 0x08, 0x00, 0xd9, 0xe7,
0xc4, 0x45, 0xd1, 0xd8, 0x00, 0x20, 0xc4, 0x45, 0xd4, 0xd2, 0xf5, 0xe7,
0xff, 0x07, 0x00, 0x00, 0xb0, 0x16, 0x00, 0x08, 0xde, 0x15, 0x00, 0x08,
0xde, 0x15, 0x00, 0x08, 0xda, 0x15, 0x00, 0x08, 0xe4, 0x15, 0x00, 0x08,
0xe4, 0x15, 0x00, 0x08, 0xd0, 0x18, 0x00, 0x08, 0xda, 0x15, 0x00, 0x08,
0xe4, 0x15, 0x00, 0x08, 0xd0, 0x18, 0x00, 0x08, 0xe4, 0x15, 0x00, 0x08,
0xda, 0x15, 0x00, 0x08, 0x6e, 0x18, 0x00, 0x08, 0x6e, 0x18, 0x00, 0x08,
0x6e, 0x18, 0x00, 0x08, 0x3a, 0x19, 0x00, 0x08, 0x00, 0x12, 0x7a, 0x00,
0x00, 0x12, 0x7a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};

View File

@ -1,444 +0,0 @@
/*
* This file has been generated by the shelly-dimmer-stm32 project.
* https://github.com/jamesturton/shelly-dimmer-stm32
* Copyright (c) 2020 James Turton.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, version 3.
*
* This program is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
static const uint8_t SHD_FIRMWARE_MAJOR_VERSION = 51;
static const uint8_t SHD_FIRMWARE_MINOR_VERSION = 0;
const uint8_t stm_firmware[] PROGMEM = {
0x00, 0x10, 0x00, 0x20, 0xf5, 0x0f, 0x00, 0x08, 0xf1, 0x0f, 0x00, 0x08,
0xef, 0x0f, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf1, 0x0f, 0x00, 0x08,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf1, 0x0f, 0x00, 0x08,
0x99, 0x07, 0x00, 0x08, 0xef, 0x0f, 0x00, 0x08, 0xef, 0x0f, 0x00, 0x08,
0xef, 0x0f, 0x00, 0x08, 0xef, 0x0f, 0x00, 0x08, 0xef, 0x0f, 0x00, 0x08,
0xef, 0x0f, 0x00, 0x08, 0x31, 0x08, 0x00, 0x08, 0xef, 0x0f, 0x00, 0x08,
0xef, 0x0f, 0x00, 0x08, 0xef, 0x0f, 0x00, 0x08, 0xef, 0x0f, 0x00, 0x08,
0xef, 0x0f, 0x00, 0x08, 0xef, 0x0f, 0x00, 0x08, 0xef, 0x0f, 0x00, 0x08,
0xa9, 0x07, 0x00, 0x08, 0x95, 0x06, 0x00, 0x08, 0xef, 0x0f, 0x00, 0x08,
0xef, 0x0f, 0x00, 0x08, 0xef, 0x0f, 0x00, 0x08, 0xef, 0x0f, 0x00, 0x08,
0xef, 0x0f, 0x00, 0x08, 0xef, 0x0f, 0x00, 0x08, 0xef, 0x0f, 0x00, 0x08,
0xef, 0x0f, 0x00, 0x08, 0xef, 0x0f, 0x00, 0x08, 0xef, 0x0f, 0x00, 0x08,
0xef, 0x0f, 0x00, 0x08, 0x2d, 0x01, 0x00, 0x08, 0xef, 0x0f, 0x00, 0x08,
0xef, 0x0f, 0x00, 0x08, 0xef, 0x0f, 0x00, 0x08, 0xef, 0x0f, 0x00, 0x08,
0x70, 0xb5, 0x12, 0x4d, 0x12, 0x4c, 0x2b, 0x68, 0x22, 0x68, 0x9b, 0x1a,
0x11, 0x4a, 0x93, 0x42, 0x14, 0xd9, 0x11, 0x49, 0x0a, 0x78, 0x00, 0x2a,
0x11, 0xd0, 0x00, 0x20, 0x0f, 0x4b, 0x18, 0x60, 0x01, 0x23, 0x53, 0x40,
0x0b, 0x70, 0x80, 0x21, 0x0d, 0x48, 0x49, 0x00, 0x00, 0x2b, 0x09, 0xd0,
0x00, 0xf0, 0x76, 0xfc, 0x2b, 0x68, 0x0b, 0x4a, 0x23, 0x60, 0x13, 0x60,
0x70, 0xbd, 0x0a, 0x4b, 0x1a, 0x60, 0xed, 0xe7, 0x00, 0xf0, 0x6a, 0xfc,
0xf4, 0xe7, 0xc0, 0x46, 0x4c, 0x02, 0x00, 0x20, 0x28, 0x00, 0x00, 0x20,
0x10, 0x27, 0x00, 0x00, 0x19, 0x00, 0x00, 0x20, 0x1c, 0x00, 0x00, 0x20,
0x00, 0x04, 0x00, 0x48, 0x20, 0x00, 0x00, 0x20, 0x58, 0x02, 0x00, 0x20,
0x20, 0x23, 0xf0, 0xb5, 0x88, 0x4a, 0xc7, 0xb0, 0x11, 0x68, 0x00, 0xaf,
0x7a, 0x61, 0x19, 0x42, 0x33, 0xd0, 0x86, 0x4a, 0x12, 0x68, 0x1a, 0x42,
0x2f, 0xd0, 0x78, 0x69, 0x00, 0xf0, 0x4d, 0xff, 0x83, 0x4c, 0x84, 0x49,
0x23, 0x78, 0x05, 0x00, 0xc0, 0xb2, 0xc8, 0x54, 0x00, 0x2b, 0x03, 0xd1,
0x01, 0x28, 0x20, 0xd1, 0x01, 0x33, 0x1f, 0xe0, 0x03, 0x2b, 0xfb, 0xd9,
0xca, 0x78, 0xf9, 0x2a, 0x19, 0xd8, 0x16, 0x1d, 0x9e, 0x42, 0xf5, 0xda,
0x56, 0x1d, 0xb3, 0x42, 0x2c, 0xd1, 0x7a, 0x49, 0xed, 0xb2, 0xc8, 0x5c,
0x79, 0x4e, 0x00, 0x02, 0x28, 0x43, 0x00, 0x25, 0xb4, 0x46, 0x29, 0x00,
0x03, 0x32, 0x66, 0x46, 0x76, 0x5c, 0x01, 0x31, 0xad, 0x19, 0xc9, 0xb2,
0xad, 0xb2, 0x8a, 0x42, 0xf7, 0xdc, 0xa8, 0x42, 0xde, 0xd0, 0x00, 0x23,
0x23, 0x70, 0x80, 0x22, 0x7b, 0x69, 0x1b, 0x68, 0x13, 0x42, 0x0e, 0xd0,
0x69, 0x4b, 0x1b, 0x68, 0x13, 0x42, 0x0a, 0xd0, 0x6c, 0x4c, 0xa3, 0x68,
0xe1, 0x68, 0x8b, 0x42, 0x00, 0xd0, 0xb9, 0xe0, 0x7b, 0x69, 0x1b, 0x68,
0x93, 0x43, 0x7a, 0x69, 0x13, 0x60, 0xbd, 0x46, 0x47, 0xb0, 0xf0, 0xbd,
0x06, 0x32, 0x93, 0x42, 0xe3, 0xd1, 0x04, 0x28, 0xe1, 0xd1, 0x4b, 0x78,
0x63, 0x4a, 0x64, 0x4d, 0x13, 0x70, 0x8b, 0x78, 0x2b, 0x70, 0x01, 0x2b,
0x08, 0xd0, 0x20, 0x2b, 0x0c, 0xd1, 0x8b, 0x79, 0x02, 0x3b, 0x5a, 0x1e,
0x93, 0x41, 0x5f, 0x4a, 0x13, 0x70, 0x05, 0xe0, 0x4a, 0x79, 0x0b, 0x79,
0x12, 0x02, 0x13, 0x43, 0x5c, 0x4a, 0x13, 0x80, 0x1c, 0x23, 0x00, 0x21,
0xf8, 0x18, 0xfc, 0x22, 0x21, 0x70, 0xb9, 0x61, 0x00, 0xf0, 0xe2, 0xff,
0xff, 0xf7, 0x50, 0xff, 0x57, 0x4b, 0x58, 0x4c, 0x1b, 0x68, 0x58, 0x4e,
0x3b, 0x61, 0x23, 0x68, 0x00, 0x2b, 0x02, 0xd0, 0xff, 0xf7, 0x46, 0xff,
0x00, 0xe0, 0x33, 0x60, 0x54, 0x4b, 0x55, 0x49, 0x1b, 0x68, 0x09, 0x68,
0x32, 0x68, 0x5b, 0x1a, 0x53, 0x49, 0x8b, 0x42, 0x01, 0xd9, 0x00, 0x23,
0x23, 0x60, 0x2b, 0x78, 0x11, 0x2b, 0x5b, 0xd0, 0x0a, 0xd8, 0x01, 0x2b,
0x0a, 0xd0, 0x10, 0x2b, 0x5b, 0xd0, 0x7b, 0x69, 0x1a, 0x68, 0x80, 0x23,
0x13, 0x43, 0x7a, 0x69, 0x13, 0x60, 0x9c, 0xe7, 0x20, 0x2b, 0xf6, 0xd1,
0x01, 0x24, 0x3c, 0x76, 0x6a, 0x46, 0x69, 0x46, 0xba, 0x60, 0xe2, 0x1d,
0x7a, 0x60, 0x07, 0x32, 0xd2, 0x08, 0xd2, 0x00, 0x8a, 0x1a, 0x95, 0x46,
0x01, 0x22, 0x6e, 0x46, 0x32, 0x70, 0x38, 0x4a, 0x01, 0xa8, 0x12, 0x78,
0xb3, 0x70, 0x18, 0x23, 0x72, 0x70, 0xf9, 0x18, 0x22, 0x00, 0xf4, 0x70,
0x00, 0xf0, 0x4a, 0xff, 0x00, 0x22, 0x13, 0x00, 0x21, 0x1d, 0xe0, 0x1c,
0xf5, 0x18, 0x6d, 0x78, 0x01, 0x33, 0x52, 0x19, 0xdb, 0xb2, 0x92, 0xb2,
0x98, 0x42, 0xf7, 0xdc, 0x13, 0x0a, 0x73, 0x54, 0x63, 0x1d, 0xf2, 0x54,
0x04, 0x23, 0x06, 0x34, 0x33, 0x55, 0x00, 0x24, 0x27, 0x4d, 0x33, 0x5d,
0x69, 0x68, 0x3b, 0x60, 0xeb, 0x68, 0x3b, 0x61, 0x01, 0x33, 0x18, 0x00,
0xfb, 0x60, 0x01, 0xf0, 0x63, 0xf8, 0xab, 0x68, 0x99, 0x42, 0x0a, 0xd0,
0xfb, 0x68, 0x3a, 0x69, 0xeb, 0x60, 0x39, 0x68, 0x2b, 0x68, 0x99, 0x54,
0xe8, 0x68, 0x69, 0x68, 0x01, 0xf0, 0x56, 0xf8, 0xe9, 0x60, 0x7b, 0x68,
0x01, 0x34, 0xa3, 0x42, 0xe3, 0xdc, 0xbb, 0x68, 0x9d, 0x46, 0xa8, 0xe7,
0xcc, 0x22, 0x92, 0x01, 0x02, 0x24, 0x3a, 0x83, 0xae, 0xe7, 0x21, 0x68,
0x00, 0x20, 0xf9, 0x61, 0x39, 0x69, 0x38, 0x83, 0x39, 0x62, 0x28, 0x21,
0x15, 0x48, 0x7a, 0x62, 0x13, 0x4a, 0x00, 0x88, 0x12, 0x78, 0x79, 0x18,
0x11, 0x24, 0x78, 0x83, 0x0a, 0x70, 0x9d, 0xe7, 0x22, 0x68, 0x58, 0x1c,
0xa0, 0x60, 0x61, 0x68, 0xd5, 0x5c, 0x01, 0xf0, 0x31, 0xf8, 0x03, 0x48,
0xa1, 0x60, 0xa9, 0xb2, 0x00, 0xf0, 0x47, 0xfe, 0x3d, 0xe7, 0xc0, 0x46,
0x00, 0x38, 0x01, 0x40, 0x1c, 0x38, 0x01, 0x40, 0x12, 0x00, 0x00, 0x20,
0x4c, 0x01, 0x00, 0x20, 0x4b, 0x01, 0x00, 0x20, 0x4d, 0x01, 0x00, 0x20,
0x34, 0x00, 0x00, 0x20, 0x25, 0x00, 0x00, 0x20, 0x18, 0x00, 0x00, 0x20,
0x30, 0x00, 0x00, 0x20, 0x10, 0x00, 0x00, 0x20, 0x58, 0x02, 0x00, 0x20,
0x48, 0x01, 0x00, 0x20, 0x1c, 0x00, 0x00, 0x20, 0x4c, 0x02, 0x00, 0x20,
0x2c, 0x00, 0x00, 0x20, 0x10, 0x27, 0x00, 0x00, 0x70, 0xb5, 0x00, 0xf0,
0x3f, 0xfc, 0xb0, 0x48, 0x00, 0xf0, 0x6e, 0xfc, 0xaf, 0x48, 0x00, 0xf0,
0x6b, 0xfc, 0xaf, 0x48, 0x00, 0xf0, 0x68, 0xfc, 0xae, 0x48, 0x00, 0xf0,
0x65, 0xfc, 0xe0, 0x20, 0x80, 0x00, 0x00, 0xf0, 0x61, 0xfc, 0xc0, 0x20,
0x80, 0x00, 0x00, 0xf0, 0x5d, 0xfc, 0x00, 0x22, 0x90, 0x20, 0x11, 0x00,
0x08, 0x23, 0xc0, 0x05, 0x00, 0xf0, 0x0c, 0xfb, 0x02, 0x21, 0xa6, 0x48,
0x00, 0xf0, 0x05, 0xfb, 0xa5, 0x4b, 0x00, 0x22, 0x18, 0x70, 0xc8, 0x23,
0x90, 0x20, 0x01, 0x21, 0x5b, 0x01, 0xc0, 0x05, 0x00, 0xf0, 0xfe, 0xfa,
0x90, 0x20, 0xc0, 0x23, 0x00, 0x22, 0x01, 0x21, 0xc0, 0x05, 0x00, 0xf0,
0xf7, 0xfa, 0x90, 0x20, 0x03, 0x23, 0x00, 0x22, 0x02, 0x21, 0xc0, 0x05,
0x00, 0xf0, 0xf0, 0xfa, 0x80, 0x24, 0x90, 0x20, 0x64, 0x00, 0x03, 0x22,
0x02, 0x21, 0xc0, 0x05, 0x00, 0xf0, 0x26, 0xfb, 0x23, 0x00, 0x00, 0x22,
0x01, 0x21, 0x93, 0x48, 0x00, 0xf0, 0xe2, 0xfa, 0x23, 0x00, 0x00, 0x22,
0x01, 0x21, 0x90, 0x48, 0x00, 0xf0, 0xfc, 0xfa, 0x21, 0x00, 0x8e, 0x48,
0x00, 0xf0, 0xd0, 0xfa, 0x00, 0x22, 0x04, 0x23, 0x11, 0x00, 0x8b, 0x48,
0x00, 0xf0, 0xd2, 0xfa, 0x8b, 0x4b, 0x8c, 0x4a, 0x5c, 0x60, 0x00, 0x24,
0x1a, 0x60, 0x9c, 0x60, 0xdc, 0x60, 0x90, 0x20, 0xc0, 0x23, 0x22, 0x00,
0xdb, 0x00, 0x02, 0x21, 0xc0, 0x05, 0x00, 0xf0, 0xc3, 0xfa, 0xc0, 0x22,
0x90, 0x20, 0xd2, 0x00, 0x01, 0x21, 0xc0, 0x05, 0x00, 0xf0, 0xfa, 0xfa,
0xff, 0x21, 0x1b, 0x20, 0x00, 0xf0, 0x2e, 0xfe, 0x1b, 0x20, 0x00, 0xf0,
0x1f, 0xfe, 0xe1, 0x21, 0x7e, 0x4d, 0x49, 0x02, 0x28, 0x00, 0x00, 0xf0,
0x6b, 0xfd, 0x08, 0x21, 0x28, 0x00, 0x00, 0xf0, 0x73, 0xfd, 0x21, 0x00,
0x28, 0x00, 0x00, 0xf0, 0x85, 0xfd, 0x21, 0x00, 0x28, 0x00, 0x00, 0xf0,
0x79, 0xfd, 0x0c, 0x21, 0x28, 0x00, 0x00, 0xf0, 0x85, 0xfd, 0x21, 0x00,
0x28, 0x00, 0x00, 0xf0, 0x87, 0xfd, 0x20, 0x23, 0x2a, 0x68, 0x28, 0x00,
0x13, 0x43, 0x2b, 0x60, 0x00, 0xf0, 0x88, 0xfd, 0x6f, 0x48, 0x00, 0xf0,
0x22, 0xfc, 0x8c, 0x20, 0xff, 0x30, 0x00, 0xf0, 0xe5, 0xfb, 0x0e, 0x20,
0x00, 0xf0, 0xf4, 0xfd, 0x23, 0x00, 0x22, 0x00, 0x21, 0x00, 0x69, 0x48,
0x00, 0xf0, 0xfa, 0xfb, 0xf0, 0x21, 0x67, 0x48, 0x49, 0x00, 0x00, 0xf0,
0x15, 0xfc, 0x65, 0x48, 0x00, 0xf0, 0x91, 0xfc, 0x63, 0x48, 0x00, 0xf0,
0xfb, 0xfb, 0x62, 0x48, 0x00, 0xf0, 0xfd, 0xfb, 0x61, 0x49, 0x60, 0x48,
0x00, 0xf0, 0x0a, 0xfc, 0x02, 0x21, 0x5e, 0x48, 0x00, 0xf0, 0xd6, 0xfb,
0x5c, 0x48, 0x00, 0xf0, 0xf7, 0xfb, 0x80, 0x20, 0xc0, 0x05, 0x00, 0xf0,
0xf8, 0xfb, 0x80, 0x20, 0x80, 0x00, 0x00, 0xf0, 0xbb, 0xfb, 0x0f, 0x20,
0x00, 0xf0, 0xca, 0xfd, 0x80, 0x20, 0x23, 0x00, 0x22, 0x00, 0x21, 0x00,
0xc0, 0x05, 0x00, 0xf0, 0xcf, 0xfb, 0x80, 0x20, 0x30, 0x21, 0xc0, 0x05,
0x00, 0xf0, 0xea, 0xfb, 0x80, 0x20, 0xc0, 0x05, 0x00, 0xf0, 0xd2, 0xfb,
0x80, 0x20, 0xc0, 0x05, 0x00, 0xf0, 0xd3, 0xfb, 0x80, 0x20, 0x21, 0x00,
0xc0, 0x05, 0x00, 0xf0, 0xfa, 0xfc, 0x80, 0x20, 0x01, 0x22, 0x21, 0x00,
0xc0, 0x05, 0x00, 0xf0, 0xb9, 0xfc, 0x01, 0x22, 0x80, 0x20, 0x11, 0x00,
0xc0, 0x05, 0x00, 0xf0, 0x5b, 0xfc, 0x80, 0x20, 0x22, 0x00, 0x21, 0x00,
0xc0, 0x05, 0x00, 0xf0, 0x81, 0xfc, 0x80, 0x20, 0x21, 0x00, 0xc0, 0x05,
0x00, 0xf0, 0x0e, 0xfc, 0x80, 0x20, 0x21, 0x00, 0xc0, 0x05, 0x00, 0xf0,
0xc5, 0xfb, 0x80, 0x20, 0x21, 0x00, 0xc0, 0x05, 0x00, 0xf0, 0xe4, 0xfb,
0x80, 0x20, 0x21, 0x00, 0xc0, 0x05, 0x00, 0xf0, 0xcd, 0xfc, 0x80, 0x20,
0x02, 0x21, 0xc0, 0x05, 0x00, 0xf0, 0x84, 0xfb, 0x80, 0x20, 0x02, 0x22,
0x01, 0x21, 0xc0, 0x05, 0x00, 0xf0, 0x8e, 0xfc, 0x80, 0x20, 0x01, 0x22,
0x02, 0x21, 0xc0, 0x05, 0x00, 0xf0, 0x30, 0xfc, 0x80, 0x20, 0x22, 0x00,
0x01, 0x21, 0xc0, 0x05, 0x00, 0xf0, 0x56, 0xfc, 0x80, 0x20, 0x02, 0x21,
0xc0, 0x05, 0x00, 0xf0, 0xe3, 0xfb, 0x80, 0x20, 0x02, 0x21, 0xc0, 0x05,
0x00, 0xf0, 0x9a, 0xfb, 0x80, 0x20, 0x02, 0x21, 0xc0, 0x05, 0x00, 0xf0,
0xb9, 0xfb, 0x80, 0x20, 0x01, 0x21, 0xc0, 0x05, 0x00, 0xf0, 0xa2, 0xfc,
0x80, 0x20, 0x04, 0x21, 0xc0, 0x05, 0x00, 0xf0, 0x59, 0xfb, 0x01, 0x21,
0x80, 0x20, 0x49, 0x42, 0xc0, 0x05, 0x00, 0xf0, 0x08, 0xfc, 0x80, 0x20,
0xc0, 0x05, 0x00, 0xf0, 0x73, 0xfb, 0x06, 0x20, 0x00, 0xf0, 0x4e, 0xfd,
0x04, 0x20, 0x12, 0x49, 0x00, 0xf0, 0x98, 0xf9, 0x02, 0x21, 0x04, 0x20,
0x00, 0xf0, 0x60, 0xf9, 0x04, 0x20, 0x00, 0xf0, 0x7d, 0xf9, 0x20, 0x00,
0x00, 0xf0, 0x26, 0xfd, 0xfa, 0x21, 0x12, 0x4b, 0x49, 0x01, 0x1c, 0x60,
0x11, 0x4b, 0x18, 0x68, 0x00, 0xf0, 0x26, 0xfe, 0x00, 0xf0, 0x14, 0xfd,
0x00, 0xf0, 0x24, 0xfd, 0x00, 0xf0, 0x2a, 0xfd, 0xc0, 0x46, 0xfd, 0xe7,
0x91, 0x02, 0x00, 0x00, 0x92, 0x02, 0x00, 0x00, 0x0e, 0x03, 0x00, 0x00,
0x0b, 0x03, 0x00, 0x00, 0x00, 0x04, 0x00, 0x48, 0x24, 0x00, 0x00, 0x20,
0x34, 0x00, 0x00, 0x20, 0x44, 0x00, 0x00, 0x20, 0x00, 0x38, 0x01, 0x40,
0x00, 0x2c, 0x01, 0x40, 0xff, 0xff, 0x00, 0x00, 0x18, 0xe0, 0x00, 0xe0,
0x00, 0x00, 0x00, 0x20, 0x80, 0x20, 0xf8, 0xb5, 0x02, 0x21, 0xc0, 0x05,
0x00, 0xf0, 0x12, 0xfb, 0x00, 0x28, 0x37, 0xd0, 0x80, 0x20, 0x02, 0x21,
0xc0, 0x05, 0x00, 0xf0, 0x11, 0xfb, 0x2a, 0x4b, 0x2a, 0x4a, 0x1b, 0x68,
0x11, 0x68, 0x2a, 0x4f, 0x13, 0x60, 0x2a, 0x4e, 0x2a, 0x4a, 0x30, 0x68,
0x15, 0x68, 0x3a, 0x68, 0x29, 0x4c, 0x90, 0x42, 0x09, 0xd0, 0x20, 0x68,
0x01, 0x28, 0x06, 0xd9, 0x5b, 0x1a, 0x27, 0x49, 0x09, 0x78, 0x00, 0x29,
0x39, 0xd0, 0x26, 0x49, 0x0b, 0x60, 0x23, 0x68, 0x25, 0x49, 0x01, 0x33,
0x23, 0x60, 0xaa, 0x1a, 0x8a, 0x42, 0x03, 0xd8, 0xfa, 0x22, 0x92, 0x00,
0x93, 0x42, 0x0e, 0xd9, 0x01, 0x23, 0x1e, 0x4a, 0x20, 0x48, 0x11, 0x78,
0x4b, 0x40, 0x80, 0x21, 0x13, 0x70, 0x49, 0x00, 0x00, 0x2b, 0x24, 0xd0,
0x00, 0xf0, 0x6a, 0xf9, 0x00, 0x23, 0x3d, 0x60, 0x23, 0x60, 0x35, 0x60,
0x80, 0x20, 0x04, 0x21, 0xc0, 0x05, 0x00, 0xf0, 0xd3, 0xfa, 0x00, 0x28,
0x14, 0xd0, 0x80, 0x20, 0x04, 0x21, 0xc0, 0x05, 0x00, 0xf0, 0xd2, 0xfa,
0x14, 0x4b, 0x15, 0x4a, 0x19, 0x68, 0x13, 0x68, 0x14, 0x48, 0x11, 0x60,
0x14, 0x4a, 0xcb, 0x1a, 0x03, 0x60, 0x13, 0x68, 0x01, 0x33, 0x13, 0x60,
0x08, 0x4b, 0x1a, 0x68, 0x11, 0x4b, 0x1a, 0x60, 0xf8, 0xbd, 0x11, 0x49,
0xc4, 0xe7, 0x00, 0xf0, 0x43, 0xf9, 0xd9, 0xe7, 0x34, 0x00, 0x00, 0x40,
0x50, 0x02, 0x00, 0x20, 0x20, 0x00, 0x00, 0x20, 0x28, 0x00, 0x00, 0x20,
0x4c, 0x02, 0x00, 0x20, 0x14, 0x00, 0x00, 0x20, 0x19, 0x00, 0x00, 0x20,
0x1c, 0x00, 0x00, 0x20, 0x10, 0x27, 0x00, 0x00, 0x00, 0x04, 0x00, 0x48,
0x38, 0x00, 0x00, 0x40, 0x54, 0x02, 0x00, 0x20, 0x48, 0x01, 0x00, 0x20,
0x44, 0x01, 0x00, 0x20, 0x2c, 0x00, 0x00, 0x20, 0x58, 0x02, 0x00, 0x20,
0x02, 0x4a, 0x13, 0x68, 0x01, 0x33, 0x13, 0x60, 0x70, 0x47, 0xc0, 0x46,
0x4c, 0x02, 0x00, 0x20, 0x10, 0xb5, 0x02, 0x21, 0x1c, 0x48, 0x00, 0xf0,
0x89, 0xfa, 0x00, 0x28, 0x23, 0xd0, 0x02, 0x21, 0x19, 0x48, 0x00, 0xf0,
0x89, 0xfa, 0xfa, 0x23, 0x18, 0x4a, 0x9b, 0x00, 0x12, 0x88, 0x9a, 0x42,
0x19, 0xd0, 0x17, 0x4b, 0x80, 0x21, 0x1b, 0x78, 0x90, 0x20, 0x5a, 0x1e,
0x93, 0x41, 0x15, 0x4a, 0x49, 0x00, 0x12, 0x78, 0xc0, 0x05, 0x9a, 0x42,
0x0e, 0xd0, 0x00, 0xf0, 0xfd, 0xf8, 0x80, 0x21, 0x90, 0x20, 0x09, 0x01,
0xc0, 0x05, 0x00, 0xf0, 0xf7, 0xf8, 0x80, 0x21, 0x90, 0x20, 0x49, 0x01,
0xc0, 0x05, 0x00, 0xf0, 0xf1, 0xf8, 0x10, 0xbd, 0x00, 0xf0, 0xec, 0xf8,
0x80, 0x21, 0x90, 0x20, 0x09, 0x01, 0xc0, 0x05, 0x00, 0xf0, 0xe6, 0xf8,
0x80, 0x21, 0x90, 0x20, 0x49, 0x01, 0xc0, 0x05, 0x00, 0xf0, 0xe0, 0xf8,
0xef, 0xe7, 0xc0, 0x46, 0x00, 0x2c, 0x01, 0x40, 0x08, 0x00, 0x00, 0x20,
0x24, 0x00, 0x00, 0x20, 0x30, 0x00, 0x00, 0x20, 0x70, 0xb5, 0x04, 0x20,
0x00, 0xf0, 0x8c, 0xf8, 0x28, 0x48, 0x00, 0xf0, 0xf2, 0xfa, 0x28, 0x4c,
0x28, 0x4b, 0x22, 0x78, 0x00, 0x2a, 0x38, 0xd0, 0xfa, 0x22, 0x1b, 0x88,
0x92, 0x00, 0xd2, 0x1a, 0x92, 0xb2, 0xfa, 0x21, 0x24, 0x4d, 0x50, 0x43,
0x2a, 0x80, 0x89, 0x00, 0x00, 0xf0, 0x1e, 0xfd, 0x22, 0x4e, 0x02, 0x00,
0x00, 0x21, 0x30, 0x60, 0x1c, 0x48, 0x00, 0xf0, 0xc1, 0xfa, 0x06, 0x21,
0x32, 0x68, 0x1a, 0x48, 0x00, 0xf0, 0xbc, 0xfa, 0x00, 0x21, 0x18, 0x48,
0x00, 0xf0, 0xd3, 0xfa, 0x2b, 0x88, 0x00, 0x2b, 0x18, 0xd0, 0x1a, 0x4b,
0x80, 0x21, 0x1b, 0x78, 0x90, 0x20, 0x5a, 0x1e, 0x93, 0x41, 0x22, 0x78,
0x49, 0x00, 0xc0, 0x05, 0x9a, 0x42, 0x10, 0xd0, 0x00, 0xf0, 0x9e, 0xf8,
0x80, 0x21, 0x90, 0x20, 0x09, 0x01, 0xc0, 0x05, 0x00, 0xf0, 0x98, 0xf8,
0x80, 0x21, 0x90, 0x20, 0x49, 0x01, 0xc0, 0x05, 0x00, 0xf0, 0x92, 0xf8,
0x70, 0xbd, 0x1a, 0x88, 0xc9, 0xe7, 0x00, 0xf0, 0x8f, 0xf8, 0x80, 0x21,
0x90, 0x20, 0x09, 0x01, 0xc0, 0x05, 0x00, 0xf0, 0x89, 0xf8, 0x80, 0x21,
0x90, 0x20, 0x49, 0x01, 0xc0, 0x05, 0x00, 0xf0, 0x83, 0xf8, 0xed, 0xe7,
0x00, 0x2c, 0x01, 0x40, 0x30, 0x00, 0x00, 0x20, 0x10, 0x00, 0x00, 0x20,
0x08, 0x00, 0x00, 0x20, 0x0c, 0x00, 0x00, 0x20, 0x24, 0x00, 0x00, 0x20,
0x01, 0x29, 0x0c, 0xd0, 0x02, 0x29, 0x13, 0xd0, 0x00, 0x29, 0x07, 0xd1,
0x0a, 0x4a, 0x13, 0x68, 0x03, 0x43, 0x13, 0x60, 0x09, 0x4a, 0x13, 0x68,
0x83, 0x43, 0x13, 0x60, 0x70, 0x47, 0x06, 0x4a, 0x13, 0x68, 0x83, 0x43,
0x13, 0x60, 0x05, 0x4a, 0x13, 0x68, 0x18, 0x43, 0x10, 0x60, 0xf5, 0xe7,
0x01, 0x4a, 0x13, 0x68, 0x03, 0x43, 0xf5, 0xe7, 0x08, 0x04, 0x01, 0x40,
0x0c, 0x04, 0x01, 0x40, 0x04, 0x4a, 0x13, 0x68, 0x03, 0x43, 0x13, 0x60,
0x03, 0x4a, 0x13, 0x68, 0x18, 0x43, 0x10, 0x60, 0x70, 0x47, 0xc0, 0x46,
0x00, 0x04, 0x01, 0x40, 0x04, 0x04, 0x01, 0x40, 0x01, 0x4b, 0x18, 0x60,
0x70, 0x47, 0xc0, 0x46, 0x14, 0x04, 0x01, 0x40, 0x19, 0x4b, 0xf7, 0xb5,
0xce, 0x18, 0x73, 0x42, 0x5e, 0x41, 0x00, 0x22, 0x01, 0x90, 0x76, 0x00,
0x01, 0x24, 0x23, 0x00, 0x93, 0x40, 0x01, 0x98, 0x18, 0x42, 0x17, 0xd0,
0x13, 0x4d, 0x03, 0x23, 0xa9, 0x42, 0x05, 0xd0, 0x16, 0xd8, 0x12, 0x4d,
0x23, 0x00, 0xa9, 0x42, 0x00, 0xd0, 0x33, 0x00, 0x10, 0x48, 0x03, 0x25,
0x94, 0x08, 0x24, 0x18, 0x0f, 0x20, 0x15, 0x40, 0xad, 0x00, 0xa8, 0x40,
0xab, 0x40, 0xa4, 0x00, 0x27, 0x68, 0x87, 0x43, 0x3b, 0x43, 0x23, 0x60,
0x01, 0x32, 0x10, 0x2a, 0xde, 0xd1, 0xf7, 0xbd, 0x08, 0x4c, 0x04, 0x23,
0xa1, 0x42, 0xe9, 0xd0, 0x07, 0x4c, 0x00, 0x23, 0xa1, 0x42, 0xe5, 0xd1,
0x05, 0x33, 0xe3, 0xe7, 0x00, 0xf8, 0xff, 0xb7, 0x00, 0x0c, 0x00, 0x48,
0x00, 0x04, 0x00, 0x48, 0x02, 0x40, 0x00, 0x10, 0x00, 0x10, 0x00, 0x48,
0x00, 0x14, 0x00, 0x48, 0x81, 0x61, 0x70, 0x47, 0x09, 0x04, 0x81, 0x61,
0x70, 0x47, 0x00, 0x69, 0x08, 0x40, 0x70, 0x47, 0xf0, 0xb5, 0x85, 0xb0,
0x01, 0x91, 0x03, 0x27, 0x00, 0x21, 0x02, 0x92, 0x03, 0x93, 0x02, 0x68,
0xc3, 0x68, 0x03, 0x9c, 0x01, 0x25, 0x0c, 0x41, 0x2c, 0x42, 0x0a, 0xd0,
0x3d, 0x00, 0x4c, 0x00, 0xa5, 0x40, 0x01, 0x9e, 0xaa, 0x43, 0xab, 0x43,
0x02, 0x9d, 0xa6, 0x40, 0xa5, 0x40, 0x32, 0x43, 0x2b, 0x43, 0x01, 0x31,
0x10, 0x29, 0xec, 0xd1, 0x02, 0x60, 0xc3, 0x60, 0x05, 0xb0, 0xf0, 0xbd,
0xf7, 0xb5, 0x01, 0x92, 0x01, 0x29, 0x16, 0xd1, 0x41, 0x68, 0x19, 0x43,
0x00, 0x24, 0x01, 0x26, 0x03, 0x27, 0x41, 0x60, 0x81, 0x68, 0x1d, 0x00,
0x25, 0x41, 0x35, 0x42, 0x06, 0xd0, 0x3a, 0x00, 0x65, 0x00, 0xaa, 0x40,
0x91, 0x43, 0x01, 0x9a, 0xaa, 0x40, 0x11, 0x43, 0x01, 0x34, 0x10, 0x2c,
0xf1, 0xd1, 0x81, 0x60, 0xf7, 0xbd, 0x41, 0x68, 0x99, 0x43, 0xe7, 0xe7,
0xf7, 0xb5, 0x00, 0x23, 0x01, 0x26, 0x0f, 0x27, 0x04, 0x6a, 0x00, 0x91,
0x41, 0x6a, 0x01, 0x92, 0x01, 0x9d, 0x1d, 0x41, 0x35, 0x42, 0x06, 0xd0,
0x3a, 0x00, 0x9d, 0x00, 0xaa, 0x40, 0x94, 0x43, 0x00, 0x9a, 0xaa, 0x40,
0x14, 0x43, 0x01, 0x33, 0x08, 0x2b, 0xf1, 0xd1, 0x01, 0x26, 0x0f, 0x27,
0x01, 0x9a, 0x1a, 0x41, 0x32, 0x42, 0x07, 0xd0, 0x3a, 0x00, 0x9d, 0x00,
0x20, 0x3d, 0xaa, 0x40, 0x91, 0x43, 0x00, 0x9a, 0xaa, 0x40, 0x11, 0x43,
0x01, 0x33, 0x10, 0x2b, 0xf0, 0xd1, 0x04, 0x62, 0x41, 0x62, 0xf7, 0xbd,
0x00, 0x23, 0x00, 0xb5, 0x06, 0x28, 0x0a, 0xd8, 0x01, 0x33, 0x00, 0xf0,
0xdf, 0xfb, 0x0a, 0x0e, 0x10, 0x12, 0x18, 0x16, 0x04, 0x00, 0x0b, 0x4a,
0x10, 0x68, 0x40, 0x0c, 0x03, 0x40, 0x18, 0x00, 0x00, 0xbd, 0x08, 0x4a,
0x10, 0x68, 0x40, 0x08, 0xf8, 0xe7, 0x07, 0x4a, 0xfa, 0xe7, 0x06, 0x4a,
0xf2, 0xe7, 0x05, 0x4a, 0x10, 0x68, 0x40, 0x0e, 0xf0, 0xe7, 0x04, 0x4a,
0xf2, 0xe7, 0x04, 0x4a, 0xf0, 0xe7, 0xc0, 0x46, 0x34, 0x10, 0x02, 0x40,
0x00, 0x10, 0x02, 0x40, 0x20, 0x10, 0x02, 0x40, 0x24, 0x10, 0x02, 0x40,
0x10, 0xb5, 0x04, 0x00, 0x20, 0x00, 0xff, 0xf7, 0xd1, 0xff, 0x00, 0x28,
0xfa, 0xd0, 0x10, 0xbd, 0x00, 0xb5, 0x06, 0x28, 0x0b, 0xd8, 0x00, 0xf0,
0xaf, 0xfb, 0x0b, 0x0f, 0x11, 0x17, 0x15, 0x13, 0x04, 0x00, 0x0c, 0x4a,
0x80, 0x23, 0x11, 0x68, 0x5b, 0x02, 0x0b, 0x43, 0x13, 0x60, 0x00, 0xbd,
0x08, 0x4a, 0x01, 0x23, 0x11, 0x68, 0xf8, 0xe7, 0x07, 0x4a, 0xfa, 0xe7,
0x06, 0x4a, 0xf1, 0xe7, 0x06, 0x4a, 0xf6, 0xe7, 0x06, 0x4a, 0xf4, 0xe7,
0x80, 0x23, 0x03, 0x4a, 0x5b, 0x04, 0x11, 0x68, 0xeb, 0xe7, 0xc0, 0x46,
0x34, 0x10, 0x02, 0x40, 0x00, 0x10, 0x02, 0x40, 0x20, 0x10, 0x02, 0x40,
0x24, 0x10, 0x02, 0x40, 0x01, 0x38, 0x00, 0xb5, 0x05, 0x28, 0x12, 0xd8,
0x00, 0xf0, 0x84, 0xfb, 0x03, 0x09, 0x12, 0x11, 0x11, 0x19, 0x03, 0x21,
0x0c, 0x4a, 0x13, 0x68, 0x8b, 0x43, 0x13, 0x60, 0x07, 0xe0, 0x03, 0x22,
0x09, 0x49, 0x0b, 0x68, 0x93, 0x43, 0x1a, 0x00, 0x01, 0x23, 0x13, 0x43,
0x0b, 0x60, 0x00, 0xbd, 0x03, 0x22, 0x05, 0x49, 0x0b, 0x68, 0x93, 0x43,
0x1a, 0x00, 0x02, 0x23, 0xf5, 0xe7, 0x03, 0x23, 0x01, 0x4a, 0x11, 0x68,
0x0b, 0x43, 0xe8, 0xe7, 0x04, 0x10, 0x02, 0x40, 0x03, 0x4a, 0x04, 0x49,
0x13, 0x68, 0x0b, 0x40, 0x03, 0x43, 0x13, 0x60, 0x70, 0x47, 0xc0, 0x46,
0x04, 0x10, 0x02, 0x40, 0xff, 0xff, 0xc3, 0xff, 0x03, 0x4a, 0x04, 0x49,
0x13, 0x68, 0x00, 0x04, 0x0b, 0x40, 0x03, 0x43, 0x13, 0x60, 0x70, 0x47,
0x04, 0x10, 0x02, 0x40, 0xff, 0xff, 0xfe, 0xff, 0x03, 0x4a, 0x04, 0x49,
0x13, 0x68, 0x0b, 0x40, 0x03, 0x43, 0x13, 0x60, 0x70, 0x47, 0xc0, 0x46,
0x04, 0x10, 0x02, 0x40, 0xff, 0xf8, 0xff, 0xff, 0xf0, 0x21, 0x03, 0x4a,
0x13, 0x68, 0x8b, 0x43, 0x03, 0x43, 0x13, 0x60, 0x70, 0x47, 0xc0, 0x46,
0x04, 0x10, 0x02, 0x40, 0x10, 0xb5, 0x01, 0x20, 0xff, 0xf7, 0x7e, 0xff,
0x01, 0x20, 0xff, 0xf7, 0x73, 0xff, 0x01, 0x20, 0xff, 0xf7, 0xa2, 0xff,
0x00, 0x20, 0xff, 0xf7, 0xe9, 0xff, 0x00, 0x20, 0xff, 0xf7, 0xda, 0xff,
0x00, 0xf0, 0x6a, 0xfa, 0x01, 0x20, 0x00, 0xf0, 0x6f, 0xfa, 0xa0, 0x20,
0x80, 0x03, 0xff, 0xf7, 0xb9, 0xff, 0x00, 0x20, 0xff, 0xf7, 0xc2, 0xff,
0x03, 0x20, 0xff, 0xf7, 0x63, 0xff, 0x03, 0x20, 0xff, 0xf7, 0x58, 0xff,
0x03, 0x20, 0xff, 0xf7, 0x87, 0xff, 0x03, 0x4b, 0x03, 0x4a, 0x13, 0x60,
0x03, 0x4a, 0x13, 0x60, 0x10, 0xbd, 0xc0, 0x46, 0x00, 0x6c, 0xdc, 0x02,
0x04, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x20, 0x05, 0x4b, 0x42, 0x09,
0xd2, 0x18, 0x1f, 0x23, 0x18, 0x40, 0x1e, 0x3b, 0x83, 0x40, 0x11, 0x68,
0x0b, 0x43, 0x13, 0x60, 0x70, 0x47, 0xc0, 0x46, 0x00, 0x10, 0x02, 0x40,
0x06, 0x4a, 0x43, 0x09, 0x9b, 0x18, 0x1f, 0x22, 0x10, 0x40, 0x1e, 0x3a,
0x82, 0x40, 0x19, 0x68, 0x11, 0x43, 0x19, 0x60, 0x19, 0x68, 0x91, 0x43,
0x19, 0x60, 0x70, 0x47, 0x00, 0x10, 0x02, 0x40, 0xc3, 0x68, 0x0b, 0x43,
0xc3, 0x60, 0x70, 0x47, 0x00, 0x69, 0x08, 0x40, 0x41, 0x1e, 0x88, 0x41,
0xc0, 0xb2, 0x70, 0x47, 0xc9, 0x43, 0x01, 0x61, 0x70, 0x47, 0x00, 0x00,
0x30, 0xb5, 0x04, 0x68, 0x03, 0x4d, 0x1a, 0x43, 0x2c, 0x40, 0x0a, 0x43,
0x22, 0x43, 0x02, 0x60, 0x30, 0xbd, 0xc0, 0x46, 0x8f, 0xfc, 0xff, 0xff,
0x80, 0x23, 0x02, 0x68, 0x13, 0x43, 0x03, 0x60, 0x70, 0x47, 0x08, 0x22,
0x03, 0x68, 0x93, 0x43, 0x03, 0x60, 0x70, 0x47, 0x01, 0x23, 0x02, 0x68,
0x13, 0x43, 0x03, 0x60, 0x70, 0x47, 0x01, 0x22, 0x03, 0x68, 0x93, 0x43,
0x03, 0x60, 0x70, 0x47, 0x81, 0x62, 0x70, 0x47, 0xc1, 0x62, 0x70, 0x47,
0x03, 0x00, 0x00, 0xb5, 0x08, 0x00, 0x06, 0x29, 0x09, 0xd8, 0x1a, 0x6a,
0x00, 0xf0, 0xac, 0xfa, 0x04, 0x0f, 0x08, 0x11, 0x0a, 0x13, 0x0d, 0x00,
0x02, 0x21, 0x8a, 0x43, 0x1a, 0x62, 0x00, 0xbd, 0x20, 0x21, 0xfa, 0xe7,
0x05, 0x49, 0x0a, 0x40, 0xf8, 0xe7, 0x05, 0x49, 0xfb, 0xe7, 0x08, 0x21,
0xf3, 0xe7, 0x80, 0x21, 0xf1, 0xe7, 0x03, 0x49, 0xf5, 0xe7, 0xc0, 0x46,
0xff, 0xfd, 0xff, 0xff, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xff,
0x03, 0x00, 0x00, 0xb5, 0x08, 0x00, 0x06, 0x29, 0x09, 0xd8, 0x19, 0x6a,
0x00, 0xf0, 0x88, 0xfa, 0x04, 0x10, 0x08, 0x12, 0x0a, 0x14, 0x0d, 0x00,
0x01, 0x22, 0x0a, 0x43, 0x1a, 0x62, 0x00, 0xbd, 0x10, 0x22, 0xfa, 0xe7,
0x80, 0x22, 0x52, 0x00, 0xf7, 0xe7, 0x80, 0x22, 0x52, 0x01, 0xf4, 0xe7,
0x04, 0x22, 0xf2, 0xe7, 0x40, 0x22, 0xf0, 0xe7, 0x80, 0x22, 0xd2, 0x00,
0xed, 0xe7, 0x00, 0x00, 0x03, 0x00, 0x00, 0xb5, 0x08, 0x00, 0x06, 0x29,
0x09, 0xd8, 0x1a, 0x6a, 0x00, 0xf0, 0x68, 0xfa, 0x04, 0x0f, 0x08, 0x11,
0x0a, 0x13, 0x0d, 0x00, 0x01, 0x21, 0x8a, 0x43, 0x1a, 0x62, 0x00, 0xbd,
0x10, 0x21, 0xfa, 0xe7, 0x05, 0x49, 0x0a, 0x40, 0xf8, 0xe7, 0x05, 0x49,
0xfb, 0xe7, 0x04, 0x21, 0xf3, 0xe7, 0x40, 0x21, 0xf1, 0xe7, 0x03, 0x49,
0xf5, 0xe7, 0xc0, 0x46, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff,
0xff, 0xfb, 0xff, 0xff, 0x03, 0x00, 0x00, 0xb5, 0x08, 0x00, 0x06, 0x29,
0x06, 0xd8, 0x00, 0xf0, 0x45, 0xfa, 0x04, 0x05, 0x06, 0x05, 0x08, 0x05,
0x0a, 0x00, 0x5a, 0x63, 0x00, 0xbd, 0x9a, 0x63, 0xfc, 0xe7, 0xda, 0x63,
0xfa, 0xe7, 0x1a, 0x64, 0xf8, 0xe7, 0x80, 0x23, 0x42, 0x6c, 0x1b, 0x02,
0x13, 0x43, 0x43, 0x64, 0x70, 0x47, 0x40, 0x6a, 0x70, 0x47, 0x41, 0x62,
0x70, 0x47, 0x00, 0x00, 0x03, 0x00, 0x00, 0xb5, 0x08, 0x00, 0x03, 0x29,
0x0b, 0xd8, 0x00, 0xf0, 0x27, 0xfa, 0x02, 0x0b, 0x12, 0x1b, 0xf0, 0x20,
0x99, 0x69, 0x12, 0x01, 0x81, 0x43, 0x99, 0x61, 0x99, 0x69, 0x0a, 0x43,
0x9a, 0x61, 0x00, 0xbd, 0x99, 0x69, 0x0b, 0x48, 0x12, 0x03, 0x01, 0x40,
0x99, 0x61, 0x99, 0x69, 0xf5, 0xe7, 0xf0, 0x20, 0xd9, 0x69, 0x12, 0x01,
0x81, 0x43, 0xd9, 0x61, 0xd9, 0x69, 0x0a, 0x43, 0xda, 0x61, 0xee, 0xe7,
0xd9, 0x69, 0x03, 0x48, 0x12, 0x03, 0x01, 0x40, 0xd9, 0x61, 0xd9, 0x69,
0xf5, 0xe7, 0xc0, 0x46, 0xff, 0x0f, 0xff, 0xff, 0x03, 0x00, 0x00, 0xb5,
0x08, 0x00, 0x03, 0x29, 0x0b, 0xd8, 0x00, 0xf0, 0xfb, 0xf9, 0x02, 0x0b,
0x12, 0x1b, 0x0c, 0x20, 0x99, 0x69, 0x92, 0x00, 0x81, 0x43, 0x99, 0x61,
0x99, 0x69, 0x0a, 0x43, 0x9a, 0x61, 0x00, 0xbd, 0x99, 0x69, 0x0b, 0x48,
0x92, 0x02, 0x01, 0x40, 0x99, 0x61, 0x99, 0x69, 0xf5, 0xe7, 0x0c, 0x20,
0xd9, 0x69, 0x92, 0x00, 0x81, 0x43, 0xd9, 0x61, 0xd9, 0x69, 0x0a, 0x43,
0xda, 0x61, 0xee, 0xe7, 0xd9, 0x69, 0x03, 0x48, 0x92, 0x02, 0x01, 0x40,
0xd9, 0x61, 0xd9, 0x69, 0xf5, 0xe7, 0xc0, 0x46, 0xff, 0xf3, 0xff, 0xff,
0x03, 0x00, 0x08, 0x00, 0x30, 0xb5, 0x03, 0x21, 0x02, 0x24, 0x05, 0x00,
0x0a, 0x40, 0xa5, 0x43, 0x01, 0x2d, 0x03, 0xd1, 0x54, 0x1e, 0x01, 0x2c,
0x00, 0xd8, 0x4a, 0x40, 0x03, 0x28, 0x0a, 0xd8, 0x00, 0xf0, 0xc4, 0xf9,
0x02, 0x0a, 0x11, 0x19, 0x03, 0x20, 0x99, 0x69, 0x81, 0x43, 0x99, 0x61,
0x99, 0x69, 0x0a, 0x43, 0x9a, 0x61, 0x30, 0xbd, 0x99, 0x69, 0x0a, 0x48,
0x12, 0x02, 0x01, 0x40, 0x99, 0x61, 0x99, 0x69, 0xf5, 0xe7, 0x03, 0x20,
0xd9, 0x69, 0x81, 0x43, 0xd9, 0x61, 0xd9, 0x69, 0x0a, 0x43, 0xda, 0x61,
0xef, 0xe7, 0xd9, 0x69, 0x02, 0x48, 0x12, 0x02, 0x01, 0x40, 0xd9, 0x61,
0xd9, 0x69, 0xf5, 0xe7, 0xff, 0xfc, 0xff, 0xff, 0x01, 0x23, 0x89, 0x00,
0x8b, 0x40, 0x02, 0x6a, 0x13, 0x43, 0x03, 0x62, 0x70, 0x47, 0x07, 0x22,
0x83, 0x68, 0x93, 0x43, 0x83, 0x60, 0x83, 0x68, 0x19, 0x43, 0x81, 0x60,
0x70, 0x47, 0x00, 0x00, 0x04, 0x4b, 0x10, 0xb5, 0x1b, 0x68, 0x04, 0x00,
0x48, 0x08, 0xc0, 0x18, 0x00, 0xf0, 0x94, 0xf9, 0xe0, 0x60, 0x10, 0xbd,
0x04, 0x00, 0x00, 0x20, 0x08, 0x29, 0x04, 0xd1, 0x03, 0x68, 0x04, 0x4a,
0x13, 0x40, 0x03, 0x60, 0x70, 0x47, 0x80, 0x23, 0x02, 0x68, 0x5b, 0x01,
0x13, 0x43, 0xf8, 0xe7, 0xff, 0xef, 0xff, 0xff, 0x43, 0x68, 0x02, 0x4a,
0x13, 0x40, 0x0b, 0x43, 0x43, 0x60, 0x70, 0x47, 0xff, 0xcf, 0xff, 0xff,
0x03, 0x68, 0x02, 0x4a, 0x13, 0x40, 0x0b, 0x43, 0x03, 0x60, 0x70, 0x47,
0xff, 0xf9, 0xff, 0xff, 0x0c, 0x22, 0x03, 0x68, 0x93, 0x43, 0x0b, 0x43,
0x03, 0x60, 0x70, 0x47, 0x83, 0x68, 0x02, 0x4a, 0x13, 0x40, 0x0b, 0x43,
0x83, 0x60, 0x70, 0x47, 0xff, 0xfc, 0xff, 0xff, 0x01, 0x23, 0x02, 0x68,
0x13, 0x43, 0x03, 0x60, 0x70, 0x47, 0xc9, 0x05, 0xc9, 0x0d, 0x81, 0x62,
0x70, 0x47, 0x40, 0x6a, 0xc0, 0x05, 0xc0, 0x0d, 0x70, 0x47, 0xfe, 0xe7,
0x70, 0x47, 0x00, 0x00, 0x10, 0xb5, 0x16, 0x4b, 0x16, 0x4a, 0x17, 0x49,
0x8b, 0x42, 0x18, 0xd3, 0x00, 0x21, 0x16, 0x4a, 0x93, 0x42, 0x17, 0xd3,
0x80, 0x23, 0x15, 0x4a, 0x9b, 0x00, 0x11, 0x68, 0x14, 0x4c, 0x0b, 0x43,
0x13, 0x60, 0x14, 0x4b, 0x9c, 0x42, 0x0f, 0xd3, 0x13, 0x4c, 0x14, 0x4b,
0x9c, 0x42, 0x0e, 0xd3, 0xff, 0xf7, 0xb8, 0xf9, 0x12, 0x4c, 0x13, 0x4b,
0x9c, 0x42, 0x0b, 0xd3, 0x10, 0xbd, 0x01, 0xca, 0x01, 0xc3, 0xe1, 0xe7,
0x02, 0xc3, 0xe3, 0xe7, 0x08, 0xcc, 0x98, 0x47, 0xe9, 0xe7, 0x08, 0xcc,
0x98, 0x47, 0xea, 0xe7, 0x08, 0xcc, 0x98, 0x47, 0xed, 0xe7, 0xc0, 0x46,
0x00, 0x00, 0x00, 0x20, 0xb4, 0x13, 0x00, 0x08, 0x08, 0x00, 0x00, 0x20,
0x5c, 0x02, 0x00, 0x20, 0x14, 0xed, 0x00, 0xe0, 0xb4, 0x13, 0x00, 0x08,
0xb4, 0x13, 0x00, 0x08, 0xb4, 0x13, 0x00, 0x08, 0xb4, 0x13, 0x00, 0x08,
0xb4, 0x13, 0x00, 0x08, 0xb4, 0x13, 0x00, 0x08, 0x02, 0x4b, 0x00, 0x02,
0x00, 0x0a, 0x18, 0x60, 0x70, 0x47, 0xc0, 0x46, 0x14, 0xe0, 0x00, 0xe0,
0x04, 0x21, 0x03, 0x4a, 0x08, 0x40, 0x13, 0x68, 0x8b, 0x43, 0x03, 0x43,
0x13, 0x60, 0x70, 0x47, 0x10, 0xe0, 0x00, 0xe0, 0x02, 0x23, 0x02, 0x4a,
0x11, 0x68, 0x0b, 0x43, 0x13, 0x60, 0x70, 0x47, 0x10, 0xe0, 0x00, 0xe0,
0x01, 0x23, 0x02, 0x4a, 0x11, 0x68, 0x0b, 0x43, 0x13, 0x60, 0x70, 0x47,
0x10, 0xe0, 0x00, 0xe0, 0x04, 0x4a, 0x43, 0x09, 0x9b, 0x00, 0x9b, 0x18,
0x1f, 0x22, 0x10, 0x40, 0x1e, 0x3a, 0x82, 0x40, 0x1a, 0x60, 0x70, 0x47,
0x00, 0xe1, 0x00, 0xe0, 0x10, 0xb5, 0x1f, 0x28, 0x12, 0xd9, 0x0f, 0x23,
0x18, 0x40, 0x04, 0x38, 0xc0, 0xb2, 0x83, 0x08, 0x08, 0x4a, 0x9b, 0x00,
0x18, 0x24, 0xc0, 0x00, 0x20, 0x40, 0xe7, 0x34, 0x84, 0x40, 0x81, 0x40,
0x9b, 0x18, 0x1a, 0x68, 0xa2, 0x43, 0x11, 0x43, 0x19, 0x60, 0x10, 0xbd,
0x83, 0x08, 0x02, 0x4a, 0x9b, 0x00, 0xef, 0xe7, 0x18, 0xed, 0x00, 0xe0,
0x00, 0xe4, 0x00, 0xe0, 0x10, 0x23, 0x02, 0x4a, 0x11, 0x68, 0x0b, 0x43,
0x13, 0x60, 0x70, 0x47, 0x00, 0x20, 0x02, 0x40, 0x07, 0x21, 0x03, 0x4a,
0x13, 0x68, 0x8b, 0x43, 0x03, 0x43, 0x13, 0x60, 0x70, 0x47, 0xc0, 0x46,
0x00, 0x20, 0x02, 0x40, 0xf0, 0xb5, 0xc6, 0x46, 0x00, 0xb5, 0x0f, 0x2a,
0x43, 0xd9, 0x0b, 0x00, 0x03, 0x26, 0x03, 0x43, 0x1e, 0x40, 0x0c, 0x00,
0x03, 0x00, 0x00, 0x2e, 0x40, 0xd1, 0x15, 0x00, 0x10, 0x3d, 0x2d, 0x09,
0xac, 0x46, 0x2d, 0x01, 0xa8, 0x46, 0x80, 0x44, 0x00, 0xe0, 0x3b, 0x00,
0x67, 0x68, 0x25, 0x68, 0x5f, 0x60, 0xe7, 0x68, 0x1d, 0x60, 0xdf, 0x60,
0x1f, 0x00, 0xa5, 0x68, 0x10, 0x37, 0x9d, 0x60, 0x10, 0x34, 0x43, 0x45,
0xf1, 0xd1, 0x65, 0x46, 0x0f, 0x23, 0x0c, 0x24, 0x01, 0x35, 0x2d, 0x01,
0x49, 0x19, 0x13, 0x40, 0x45, 0x19, 0x14, 0x42, 0x23, 0xd0, 0x8c, 0x59,
0xac, 0x51, 0x04, 0x36, 0x9c, 0x1b, 0x03, 0x2c, 0xf9, 0xd8, 0x03, 0x24,
0x04, 0x3b, 0x9b, 0x08, 0x01, 0x33, 0x9b, 0x00, 0x22, 0x40, 0xed, 0x18,
0xc9, 0x18, 0x56, 0x1e, 0x00, 0x2a, 0x07, 0xd0, 0x00, 0x23, 0x00, 0xe0,
0x23, 0x00, 0xca, 0x5c, 0x5c, 0x1c, 0xea, 0x54, 0x9e, 0x42, 0xf9, 0xd1,
0x04, 0xbc, 0x90, 0x46, 0xf0, 0xbd, 0x05, 0x00, 0x56, 0x1e, 0x00, 0x2a,
0xf0, 0xd1, 0xf7, 0xe7, 0x56, 0x1e, 0x05, 0x00, 0xec, 0xe7, 0x1a, 0x00,
0xf6, 0xe7, 0xc0, 0x46, 0xf0, 0xb5, 0x05, 0x00, 0x83, 0x07, 0x4a, 0xd0,
0x54, 0x1e, 0x00, 0x2a, 0x44, 0xd0, 0xce, 0xb2, 0x03, 0x00, 0x03, 0x22,
0x02, 0xe0, 0x01, 0x35, 0x01, 0x3c, 0x3d, 0xd3, 0x01, 0x33, 0x2e, 0x70,
0x13, 0x42, 0xf8, 0xd1, 0x03, 0x2c, 0x2f, 0xd9, 0xff, 0x22, 0x0a, 0x40,
0x15, 0x02, 0x15, 0x43, 0x2a, 0x04, 0x15, 0x43, 0x0f, 0x2c, 0x35, 0xd9,
0x27, 0x00, 0x10, 0x3f, 0x3f, 0x09, 0x3e, 0x01, 0xb4, 0x46, 0x1e, 0x00,
0x1a, 0x00, 0x10, 0x36, 0x66, 0x44, 0x15, 0x60, 0x55, 0x60, 0x95, 0x60,
0xd5, 0x60, 0x10, 0x32, 0xb2, 0x42, 0xf8, 0xd1, 0x0f, 0x26, 0x0c, 0x22,
0x01, 0x37, 0x3f, 0x01, 0x26, 0x40, 0xdb, 0x19, 0x37, 0x00, 0x22, 0x42,
0x17, 0xd0, 0x3e, 0x1f, 0xb6, 0x08, 0xb4, 0x00, 0xa4, 0x46, 0x1a, 0x00,
0x1c, 0x1d, 0x64, 0x44, 0x20, 0xc2, 0xa2, 0x42, 0xfc, 0xd1, 0x03, 0x24,
0x01, 0x36, 0xb6, 0x00, 0x9b, 0x19, 0x3c, 0x40, 0x00, 0x2c, 0x05, 0xd0,
0xc9, 0xb2, 0x1c, 0x19, 0x19, 0x70, 0x01, 0x33, 0x9c, 0x42, 0xfb, 0xd1,
0xf0, 0xbd, 0x34, 0x00, 0xf4, 0xe7, 0x14, 0x00, 0x03, 0x00, 0xbf, 0xe7,
0x27, 0x00, 0xe0, 0xe7, 0x02, 0xb4, 0x71, 0x46, 0x49, 0x08, 0x49, 0x00,
0x09, 0x5c, 0x49, 0x00, 0x8e, 0x44, 0x02, 0xbc, 0x70, 0x47, 0xc0, 0x46,
0x00, 0x22, 0x43, 0x08, 0x8b, 0x42, 0x74, 0xd3, 0x03, 0x09, 0x8b, 0x42,
0x5f, 0xd3, 0x03, 0x0a, 0x8b, 0x42, 0x44, 0xd3, 0x03, 0x0b, 0x8b, 0x42,
0x28, 0xd3, 0x03, 0x0c, 0x8b, 0x42, 0x0d, 0xd3, 0xff, 0x22, 0x09, 0x02,
0x12, 0xba, 0x03, 0x0c, 0x8b, 0x42, 0x02, 0xd3, 0x12, 0x12, 0x09, 0x02,
0x65, 0xd0, 0x03, 0x0b, 0x8b, 0x42, 0x19, 0xd3, 0x00, 0xe0, 0x09, 0x0a,
0xc3, 0x0b, 0x8b, 0x42, 0x01, 0xd3, 0xcb, 0x03, 0xc0, 0x1a, 0x52, 0x41,
0x83, 0x0b, 0x8b, 0x42, 0x01, 0xd3, 0x8b, 0x03, 0xc0, 0x1a, 0x52, 0x41,
0x43, 0x0b, 0x8b, 0x42, 0x01, 0xd3, 0x4b, 0x03, 0xc0, 0x1a, 0x52, 0x41,
0x03, 0x0b, 0x8b, 0x42, 0x01, 0xd3, 0x0b, 0x03, 0xc0, 0x1a, 0x52, 0x41,
0xc3, 0x0a, 0x8b, 0x42, 0x01, 0xd3, 0xcb, 0x02, 0xc0, 0x1a, 0x52, 0x41,
0x83, 0x0a, 0x8b, 0x42, 0x01, 0xd3, 0x8b, 0x02, 0xc0, 0x1a, 0x52, 0x41,
0x43, 0x0a, 0x8b, 0x42, 0x01, 0xd3, 0x4b, 0x02, 0xc0, 0x1a, 0x52, 0x41,
0x03, 0x0a, 0x8b, 0x42, 0x01, 0xd3, 0x0b, 0x02, 0xc0, 0x1a, 0x52, 0x41,
0xcd, 0xd2, 0xc3, 0x09, 0x8b, 0x42, 0x01, 0xd3, 0xcb, 0x01, 0xc0, 0x1a,
0x52, 0x41, 0x83, 0x09, 0x8b, 0x42, 0x01, 0xd3, 0x8b, 0x01, 0xc0, 0x1a,
0x52, 0x41, 0x43, 0x09, 0x8b, 0x42, 0x01, 0xd3, 0x4b, 0x01, 0xc0, 0x1a,
0x52, 0x41, 0x03, 0x09, 0x8b, 0x42, 0x01, 0xd3, 0x0b, 0x01, 0xc0, 0x1a,
0x52, 0x41, 0xc3, 0x08, 0x8b, 0x42, 0x01, 0xd3, 0xcb, 0x00, 0xc0, 0x1a,
0x52, 0x41, 0x83, 0x08, 0x8b, 0x42, 0x01, 0xd3, 0x8b, 0x00, 0xc0, 0x1a,
0x52, 0x41, 0x43, 0x08, 0x8b, 0x42, 0x01, 0xd3, 0x4b, 0x00, 0xc0, 0x1a,
0x52, 0x41, 0x41, 0x1a, 0x00, 0xd2, 0x01, 0x46, 0x52, 0x41, 0x10, 0x46,
0x70, 0x47, 0xff, 0xe7, 0x01, 0xb5, 0x00, 0x20, 0x00, 0xf0, 0x06, 0xf8,
0x02, 0xbd, 0xc0, 0x46, 0x00, 0x29, 0xf7, 0xd0, 0x76, 0xe7, 0x70, 0x47,
0x70, 0x47, 0xc0, 0x46, 0x00, 0x12, 0x7a, 0x00, 0x00, 0x12, 0x7a, 0x00,
};

View File

@ -1,444 +0,0 @@
/*
* This file has been generated by the shelly-dimmer-stm32 project.
* https://github.com/jamesturton/shelly-dimmer-stm32
* Copyright (c) 2020 James Turton.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, version 3.
*
* This program is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
static const uint8_t SHD_FIRMWARE_MAJOR_VERSION = 51;
static const uint8_t SHD_FIRMWARE_MINOR_VERSION = 1;
const uint8_t stm_firmware[] PROGMEM = {
0x00, 0x10, 0x00, 0x20, 0xf5, 0x0f, 0x00, 0x08, 0xf1, 0x0f, 0x00, 0x08,
0xef, 0x0f, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf1, 0x0f, 0x00, 0x08,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf1, 0x0f, 0x00, 0x08,
0x99, 0x07, 0x00, 0x08, 0xef, 0x0f, 0x00, 0x08, 0xef, 0x0f, 0x00, 0x08,
0xef, 0x0f, 0x00, 0x08, 0xef, 0x0f, 0x00, 0x08, 0xef, 0x0f, 0x00, 0x08,
0xef, 0x0f, 0x00, 0x08, 0x31, 0x08, 0x00, 0x08, 0xef, 0x0f, 0x00, 0x08,
0xef, 0x0f, 0x00, 0x08, 0xef, 0x0f, 0x00, 0x08, 0xef, 0x0f, 0x00, 0x08,
0xef, 0x0f, 0x00, 0x08, 0xef, 0x0f, 0x00, 0x08, 0xef, 0x0f, 0x00, 0x08,
0xa9, 0x07, 0x00, 0x08, 0x95, 0x06, 0x00, 0x08, 0xef, 0x0f, 0x00, 0x08,
0xef, 0x0f, 0x00, 0x08, 0xef, 0x0f, 0x00, 0x08, 0xef, 0x0f, 0x00, 0x08,
0xef, 0x0f, 0x00, 0x08, 0xef, 0x0f, 0x00, 0x08, 0xef, 0x0f, 0x00, 0x08,
0xef, 0x0f, 0x00, 0x08, 0xef, 0x0f, 0x00, 0x08, 0xef, 0x0f, 0x00, 0x08,
0xef, 0x0f, 0x00, 0x08, 0x2d, 0x01, 0x00, 0x08, 0xef, 0x0f, 0x00, 0x08,
0xef, 0x0f, 0x00, 0x08, 0xef, 0x0f, 0x00, 0x08, 0xef, 0x0f, 0x00, 0x08,
0x70, 0xb5, 0x12, 0x4d, 0x12, 0x4c, 0x2b, 0x68, 0x22, 0x68, 0x9b, 0x1a,
0x11, 0x4a, 0x93, 0x42, 0x14, 0xd9, 0x11, 0x49, 0x0a, 0x78, 0x00, 0x2a,
0x11, 0xd0, 0x00, 0x20, 0x0f, 0x4b, 0x18, 0x60, 0x01, 0x23, 0x53, 0x40,
0x0b, 0x70, 0x80, 0x21, 0x0d, 0x48, 0x49, 0x00, 0x00, 0x2b, 0x09, 0xd0,
0x00, 0xf0, 0x76, 0xfc, 0x2b, 0x68, 0x0b, 0x4a, 0x23, 0x60, 0x13, 0x60,
0x70, 0xbd, 0x0a, 0x4b, 0x1a, 0x60, 0xed, 0xe7, 0x00, 0xf0, 0x6a, 0xfc,
0xf4, 0xe7, 0xc0, 0x46, 0x4c, 0x02, 0x00, 0x20, 0x28, 0x00, 0x00, 0x20,
0x10, 0x27, 0x00, 0x00, 0x19, 0x00, 0x00, 0x20, 0x1c, 0x00, 0x00, 0x20,
0x00, 0x04, 0x00, 0x48, 0x20, 0x00, 0x00, 0x20, 0x58, 0x02, 0x00, 0x20,
0x20, 0x23, 0xf0, 0xb5, 0x87, 0x4a, 0xc7, 0xb0, 0x11, 0x68, 0x00, 0xaf,
0x7a, 0x61, 0x19, 0x42, 0x33, 0xd0, 0x85, 0x4a, 0x12, 0x68, 0x1a, 0x42,
0x2f, 0xd0, 0x78, 0x69, 0x00, 0xf0, 0x4d, 0xff, 0x82, 0x4c, 0x83, 0x49,
0x23, 0x78, 0x05, 0x00, 0xc0, 0xb2, 0xc8, 0x54, 0x00, 0x2b, 0x03, 0xd1,
0x01, 0x28, 0x20, 0xd1, 0x01, 0x33, 0x1f, 0xe0, 0x03, 0x2b, 0xfb, 0xd9,
0xca, 0x78, 0xf9, 0x2a, 0x19, 0xd8, 0x16, 0x1d, 0x9e, 0x42, 0xf5, 0xda,
0x56, 0x1d, 0xb3, 0x42, 0x2c, 0xd1, 0x79, 0x49, 0xed, 0xb2, 0xc8, 0x5c,
0x78, 0x4e, 0x00, 0x02, 0x28, 0x43, 0x00, 0x25, 0xb4, 0x46, 0x29, 0x00,
0x03, 0x32, 0x66, 0x46, 0x76, 0x5c, 0x01, 0x31, 0xad, 0x19, 0xc9, 0xb2,
0xad, 0xb2, 0x8a, 0x42, 0xf7, 0xdc, 0xa8, 0x42, 0xde, 0xd0, 0x00, 0x23,
0x23, 0x70, 0x80, 0x22, 0x7b, 0x69, 0x1b, 0x68, 0x13, 0x42, 0x0e, 0xd0,
0x68, 0x4b, 0x1b, 0x68, 0x13, 0x42, 0x0a, 0xd0, 0x6b, 0x4c, 0xa3, 0x68,
0xe1, 0x68, 0x8b, 0x42, 0x00, 0xd0, 0xb8, 0xe0, 0x7b, 0x69, 0x1b, 0x68,
0x93, 0x43, 0x7a, 0x69, 0x13, 0x60, 0xbd, 0x46, 0x47, 0xb0, 0xf0, 0xbd,
0x06, 0x32, 0x93, 0x42, 0xe3, 0xd1, 0x04, 0x28, 0xe1, 0xd1, 0x4b, 0x78,
0x62, 0x4a, 0x63, 0x4d, 0x13, 0x70, 0x8b, 0x78, 0x2b, 0x70, 0x01, 0x2b,
0x08, 0xd0, 0x20, 0x2b, 0x0c, 0xd1, 0x8b, 0x79, 0x02, 0x3b, 0x5a, 0x1e,
0x93, 0x41, 0x5e, 0x4a, 0x13, 0x70, 0x05, 0xe0, 0x4a, 0x79, 0x0b, 0x79,
0x12, 0x02, 0x13, 0x43, 0x5b, 0x4a, 0x13, 0x80, 0x1c, 0x23, 0x00, 0x21,
0xf8, 0x18, 0xfc, 0x22, 0x21, 0x70, 0xb9, 0x61, 0x00, 0xf0, 0xe2, 0xff,
0xff, 0xf7, 0x50, 0xff, 0x56, 0x4b, 0x57, 0x4c, 0x1b, 0x68, 0x57, 0x4e,
0x3b, 0x61, 0x23, 0x68, 0x00, 0x2b, 0x02, 0xd0, 0xff, 0xf7, 0x46, 0xff,
0x00, 0xe0, 0x33, 0x60, 0x53, 0x4b, 0x54, 0x49, 0x1b, 0x68, 0x09, 0x68,
0x32, 0x68, 0x5b, 0x1a, 0x52, 0x49, 0x8b, 0x42, 0x01, 0xd9, 0x00, 0x23,
0x23, 0x60, 0x2b, 0x78, 0x11, 0x2b, 0x5b, 0xd0, 0x0a, 0xd8, 0x01, 0x2b,
0x0a, 0xd0, 0x10, 0x2b, 0x5a, 0xd0, 0x7b, 0x69, 0x1a, 0x68, 0x80, 0x23,
0x13, 0x43, 0x7a, 0x69, 0x13, 0x60, 0x9c, 0xe7, 0x20, 0x2b, 0xf6, 0xd1,
0x01, 0x24, 0x3c, 0x76, 0x6a, 0x46, 0x69, 0x46, 0xba, 0x60, 0xe2, 0x1d,
0x7a, 0x60, 0x07, 0x32, 0xd2, 0x08, 0xd2, 0x00, 0x8a, 0x1a, 0x95, 0x46,
0x01, 0x22, 0x6e, 0x46, 0x32, 0x70, 0x37, 0x4a, 0x01, 0xa8, 0x12, 0x78,
0xb3, 0x70, 0x18, 0x23, 0x72, 0x70, 0xf9, 0x18, 0x22, 0x00, 0xf4, 0x70,
0x00, 0xf0, 0x4a, 0xff, 0x00, 0x22, 0x13, 0x00, 0x21, 0x1d, 0xe0, 0x1c,
0xf5, 0x18, 0x6d, 0x78, 0x01, 0x33, 0x52, 0x19, 0xdb, 0xb2, 0x92, 0xb2,
0x98, 0x42, 0xf7, 0xdc, 0x13, 0x0a, 0x73, 0x54, 0x63, 0x1d, 0xf2, 0x54,
0x04, 0x23, 0x06, 0x34, 0x33, 0x55, 0x00, 0x24, 0x26, 0x4d, 0x33, 0x5d,
0x69, 0x68, 0x3b, 0x60, 0xeb, 0x68, 0x3b, 0x61, 0x01, 0x33, 0x18, 0x00,
0xfb, 0x60, 0x01, 0xf0, 0x63, 0xf8, 0xab, 0x68, 0x99, 0x42, 0x0a, 0xd0,
0xfb, 0x68, 0x3a, 0x69, 0xeb, 0x60, 0x39, 0x68, 0x2b, 0x68, 0x99, 0x54,
0xe8, 0x68, 0x69, 0x68, 0x01, 0xf0, 0x56, 0xf8, 0xe9, 0x60, 0x7b, 0x68,
0x01, 0x34, 0xa3, 0x42, 0xe3, 0xdc, 0xbb, 0x68, 0x9d, 0x46, 0xa8, 0xe7,
0x21, 0x4a, 0x02, 0x24, 0x3a, 0x83, 0xaf, 0xe7, 0x21, 0x68, 0x00, 0x20,
0xf9, 0x61, 0x39, 0x69, 0x38, 0x83, 0x39, 0x62, 0x28, 0x21, 0x15, 0x48,
0x7a, 0x62, 0x13, 0x4a, 0x00, 0x88, 0x12, 0x78, 0x79, 0x18, 0x11, 0x24,
0x78, 0x83, 0x0a, 0x70, 0x9e, 0xe7, 0x22, 0x68, 0x58, 0x1c, 0xa0, 0x60,
0x61, 0x68, 0xd5, 0x5c, 0x01, 0xf0, 0x32, 0xf8, 0x02, 0x48, 0xa1, 0x60,
0xa9, 0xb2, 0x00, 0xf0, 0x48, 0xfe, 0x3e, 0xe7, 0x00, 0x38, 0x01, 0x40,
0x1c, 0x38, 0x01, 0x40, 0x12, 0x00, 0x00, 0x20, 0x4c, 0x01, 0x00, 0x20,
0x4b, 0x01, 0x00, 0x20, 0x4d, 0x01, 0x00, 0x20, 0x34, 0x00, 0x00, 0x20,
0x25, 0x00, 0x00, 0x20, 0x18, 0x00, 0x00, 0x20, 0x30, 0x00, 0x00, 0x20,
0x10, 0x00, 0x00, 0x20, 0x58, 0x02, 0x00, 0x20, 0x48, 0x01, 0x00, 0x20,
0x1c, 0x00, 0x00, 0x20, 0x4c, 0x02, 0x00, 0x20, 0x2c, 0x00, 0x00, 0x20,
0x10, 0x27, 0x00, 0x00, 0x01, 0x33, 0x00, 0x00, 0x70, 0xb5, 0x00, 0xf0,
0x3f, 0xfc, 0xb0, 0x48, 0x00, 0xf0, 0x6e, 0xfc, 0xaf, 0x48, 0x00, 0xf0,
0x6b, 0xfc, 0xaf, 0x48, 0x00, 0xf0, 0x68, 0xfc, 0xae, 0x48, 0x00, 0xf0,
0x65, 0xfc, 0xe0, 0x20, 0x80, 0x00, 0x00, 0xf0, 0x61, 0xfc, 0xc0, 0x20,
0x80, 0x00, 0x00, 0xf0, 0x5d, 0xfc, 0x00, 0x22, 0x90, 0x20, 0x11, 0x00,
0x08, 0x23, 0xc0, 0x05, 0x00, 0xf0, 0x0c, 0xfb, 0x02, 0x21, 0xa6, 0x48,
0x00, 0xf0, 0x05, 0xfb, 0xa5, 0x4b, 0x00, 0x22, 0x18, 0x70, 0xc8, 0x23,
0x90, 0x20, 0x01, 0x21, 0x5b, 0x01, 0xc0, 0x05, 0x00, 0xf0, 0xfe, 0xfa,
0x90, 0x20, 0xc0, 0x23, 0x00, 0x22, 0x01, 0x21, 0xc0, 0x05, 0x00, 0xf0,
0xf7, 0xfa, 0x90, 0x20, 0x03, 0x23, 0x00, 0x22, 0x02, 0x21, 0xc0, 0x05,
0x00, 0xf0, 0xf0, 0xfa, 0x80, 0x24, 0x90, 0x20, 0x64, 0x00, 0x03, 0x22,
0x02, 0x21, 0xc0, 0x05, 0x00, 0xf0, 0x26, 0xfb, 0x23, 0x00, 0x00, 0x22,
0x01, 0x21, 0x93, 0x48, 0x00, 0xf0, 0xe2, 0xfa, 0x23, 0x00, 0x00, 0x22,
0x01, 0x21, 0x90, 0x48, 0x00, 0xf0, 0xfc, 0xfa, 0x21, 0x00, 0x8e, 0x48,
0x00, 0xf0, 0xd0, 0xfa, 0x00, 0x22, 0x04, 0x23, 0x11, 0x00, 0x8b, 0x48,
0x00, 0xf0, 0xd2, 0xfa, 0x8b, 0x4b, 0x8c, 0x4a, 0x5c, 0x60, 0x00, 0x24,
0x1a, 0x60, 0x9c, 0x60, 0xdc, 0x60, 0x90, 0x20, 0xc0, 0x23, 0x22, 0x00,
0xdb, 0x00, 0x02, 0x21, 0xc0, 0x05, 0x00, 0xf0, 0xc3, 0xfa, 0xc0, 0x22,
0x90, 0x20, 0xd2, 0x00, 0x01, 0x21, 0xc0, 0x05, 0x00, 0xf0, 0xfa, 0xfa,
0xff, 0x21, 0x1b, 0x20, 0x00, 0xf0, 0x2e, 0xfe, 0x1b, 0x20, 0x00, 0xf0,
0x1f, 0xfe, 0xe1, 0x21, 0x7e, 0x4d, 0x49, 0x02, 0x28, 0x00, 0x00, 0xf0,
0x6b, 0xfd, 0x08, 0x21, 0x28, 0x00, 0x00, 0xf0, 0x73, 0xfd, 0x21, 0x00,
0x28, 0x00, 0x00, 0xf0, 0x85, 0xfd, 0x21, 0x00, 0x28, 0x00, 0x00, 0xf0,
0x79, 0xfd, 0x0c, 0x21, 0x28, 0x00, 0x00, 0xf0, 0x85, 0xfd, 0x21, 0x00,
0x28, 0x00, 0x00, 0xf0, 0x87, 0xfd, 0x20, 0x23, 0x2a, 0x68, 0x28, 0x00,
0x13, 0x43, 0x2b, 0x60, 0x00, 0xf0, 0x88, 0xfd, 0x6f, 0x48, 0x00, 0xf0,
0x22, 0xfc, 0x8c, 0x20, 0xff, 0x30, 0x00, 0xf0, 0xe5, 0xfb, 0x0e, 0x20,
0x00, 0xf0, 0xf4, 0xfd, 0x23, 0x00, 0x22, 0x00, 0x21, 0x00, 0x69, 0x48,
0x00, 0xf0, 0xfa, 0xfb, 0xf0, 0x21, 0x67, 0x48, 0x49, 0x00, 0x00, 0xf0,
0x15, 0xfc, 0x65, 0x48, 0x00, 0xf0, 0x91, 0xfc, 0x63, 0x48, 0x00, 0xf0,
0xfb, 0xfb, 0x62, 0x48, 0x00, 0xf0, 0xfd, 0xfb, 0x61, 0x49, 0x60, 0x48,
0x00, 0xf0, 0x0a, 0xfc, 0x02, 0x21, 0x5e, 0x48, 0x00, 0xf0, 0xd6, 0xfb,
0x5c, 0x48, 0x00, 0xf0, 0xf7, 0xfb, 0x80, 0x20, 0xc0, 0x05, 0x00, 0xf0,
0xf8, 0xfb, 0x80, 0x20, 0x80, 0x00, 0x00, 0xf0, 0xbb, 0xfb, 0x0f, 0x20,
0x00, 0xf0, 0xca, 0xfd, 0x80, 0x20, 0x23, 0x00, 0x22, 0x00, 0x21, 0x00,
0xc0, 0x05, 0x00, 0xf0, 0xcf, 0xfb, 0x80, 0x20, 0x30, 0x21, 0xc0, 0x05,
0x00, 0xf0, 0xea, 0xfb, 0x80, 0x20, 0xc0, 0x05, 0x00, 0xf0, 0xd2, 0xfb,
0x80, 0x20, 0xc0, 0x05, 0x00, 0xf0, 0xd3, 0xfb, 0x80, 0x20, 0x21, 0x00,
0xc0, 0x05, 0x00, 0xf0, 0xfa, 0xfc, 0x80, 0x20, 0x01, 0x22, 0x21, 0x00,
0xc0, 0x05, 0x00, 0xf0, 0xb9, 0xfc, 0x01, 0x22, 0x80, 0x20, 0x11, 0x00,
0xc0, 0x05, 0x00, 0xf0, 0x5b, 0xfc, 0x80, 0x20, 0x22, 0x00, 0x21, 0x00,
0xc0, 0x05, 0x00, 0xf0, 0x81, 0xfc, 0x80, 0x20, 0x21, 0x00, 0xc0, 0x05,
0x00, 0xf0, 0x0e, 0xfc, 0x80, 0x20, 0x21, 0x00, 0xc0, 0x05, 0x00, 0xf0,
0xc5, 0xfb, 0x80, 0x20, 0x21, 0x00, 0xc0, 0x05, 0x00, 0xf0, 0xe4, 0xfb,
0x80, 0x20, 0x21, 0x00, 0xc0, 0x05, 0x00, 0xf0, 0xcd, 0xfc, 0x80, 0x20,
0x02, 0x21, 0xc0, 0x05, 0x00, 0xf0, 0x84, 0xfb, 0x80, 0x20, 0x02, 0x22,
0x01, 0x21, 0xc0, 0x05, 0x00, 0xf0, 0x8e, 0xfc, 0x80, 0x20, 0x01, 0x22,
0x02, 0x21, 0xc0, 0x05, 0x00, 0xf0, 0x30, 0xfc, 0x80, 0x20, 0x22, 0x00,
0x01, 0x21, 0xc0, 0x05, 0x00, 0xf0, 0x56, 0xfc, 0x80, 0x20, 0x02, 0x21,
0xc0, 0x05, 0x00, 0xf0, 0xe3, 0xfb, 0x80, 0x20, 0x02, 0x21, 0xc0, 0x05,
0x00, 0xf0, 0x9a, 0xfb, 0x80, 0x20, 0x02, 0x21, 0xc0, 0x05, 0x00, 0xf0,
0xb9, 0xfb, 0x80, 0x20, 0x01, 0x21, 0xc0, 0x05, 0x00, 0xf0, 0xa2, 0xfc,
0x80, 0x20, 0x04, 0x21, 0xc0, 0x05, 0x00, 0xf0, 0x59, 0xfb, 0x01, 0x21,
0x80, 0x20, 0x49, 0x42, 0xc0, 0x05, 0x00, 0xf0, 0x08, 0xfc, 0x80, 0x20,
0xc0, 0x05, 0x00, 0xf0, 0x73, 0xfb, 0x06, 0x20, 0x00, 0xf0, 0x4e, 0xfd,
0x04, 0x20, 0x12, 0x49, 0x00, 0xf0, 0x98, 0xf9, 0x02, 0x21, 0x04, 0x20,
0x00, 0xf0, 0x60, 0xf9, 0x04, 0x20, 0x00, 0xf0, 0x7d, 0xf9, 0x20, 0x00,
0x00, 0xf0, 0x26, 0xfd, 0xfa, 0x21, 0x12, 0x4b, 0x49, 0x01, 0x1c, 0x60,
0x11, 0x4b, 0x18, 0x68, 0x00, 0xf0, 0x26, 0xfe, 0x00, 0xf0, 0x14, 0xfd,
0x00, 0xf0, 0x24, 0xfd, 0x00, 0xf0, 0x2a, 0xfd, 0xc0, 0x46, 0xfd, 0xe7,
0x91, 0x02, 0x00, 0x00, 0x92, 0x02, 0x00, 0x00, 0x0e, 0x03, 0x00, 0x00,
0x0b, 0x03, 0x00, 0x00, 0x00, 0x04, 0x00, 0x48, 0x24, 0x00, 0x00, 0x20,
0x34, 0x00, 0x00, 0x20, 0x44, 0x00, 0x00, 0x20, 0x00, 0x38, 0x01, 0x40,
0x00, 0x2c, 0x01, 0x40, 0xff, 0xff, 0x00, 0x00, 0x18, 0xe0, 0x00, 0xe0,
0x00, 0x00, 0x00, 0x20, 0x80, 0x20, 0xf8, 0xb5, 0x02, 0x21, 0xc0, 0x05,
0x00, 0xf0, 0x12, 0xfb, 0x00, 0x28, 0x37, 0xd0, 0x80, 0x20, 0x02, 0x21,
0xc0, 0x05, 0x00, 0xf0, 0x11, 0xfb, 0x2a, 0x4b, 0x2a, 0x4a, 0x1b, 0x68,
0x11, 0x68, 0x2a, 0x4f, 0x13, 0x60, 0x2a, 0x4e, 0x2a, 0x4a, 0x30, 0x68,
0x15, 0x68, 0x3a, 0x68, 0x29, 0x4c, 0x90, 0x42, 0x09, 0xd0, 0x20, 0x68,
0x01, 0x28, 0x06, 0xd9, 0x5b, 0x1a, 0x27, 0x49, 0x09, 0x78, 0x00, 0x29,
0x39, 0xd0, 0x26, 0x49, 0x0b, 0x60, 0x23, 0x68, 0x25, 0x49, 0x01, 0x33,
0x23, 0x60, 0xaa, 0x1a, 0x8a, 0x42, 0x03, 0xd8, 0xfa, 0x22, 0x92, 0x00,
0x93, 0x42, 0x0e, 0xd9, 0x01, 0x23, 0x1e, 0x4a, 0x20, 0x48, 0x11, 0x78,
0x4b, 0x40, 0x80, 0x21, 0x13, 0x70, 0x49, 0x00, 0x00, 0x2b, 0x24, 0xd0,
0x00, 0xf0, 0x6a, 0xf9, 0x00, 0x23, 0x3d, 0x60, 0x23, 0x60, 0x35, 0x60,
0x80, 0x20, 0x04, 0x21, 0xc0, 0x05, 0x00, 0xf0, 0xd3, 0xfa, 0x00, 0x28,
0x14, 0xd0, 0x80, 0x20, 0x04, 0x21, 0xc0, 0x05, 0x00, 0xf0, 0xd2, 0xfa,
0x14, 0x4b, 0x15, 0x4a, 0x19, 0x68, 0x13, 0x68, 0x14, 0x48, 0x11, 0x60,
0x14, 0x4a, 0xcb, 0x1a, 0x03, 0x60, 0x13, 0x68, 0x01, 0x33, 0x13, 0x60,
0x08, 0x4b, 0x1a, 0x68, 0x11, 0x4b, 0x1a, 0x60, 0xf8, 0xbd, 0x11, 0x49,
0xc4, 0xe7, 0x00, 0xf0, 0x43, 0xf9, 0xd9, 0xe7, 0x34, 0x00, 0x00, 0x40,
0x50, 0x02, 0x00, 0x20, 0x20, 0x00, 0x00, 0x20, 0x28, 0x00, 0x00, 0x20,
0x4c, 0x02, 0x00, 0x20, 0x14, 0x00, 0x00, 0x20, 0x19, 0x00, 0x00, 0x20,
0x1c, 0x00, 0x00, 0x20, 0x10, 0x27, 0x00, 0x00, 0x00, 0x04, 0x00, 0x48,
0x38, 0x00, 0x00, 0x40, 0x54, 0x02, 0x00, 0x20, 0x48, 0x01, 0x00, 0x20,
0x44, 0x01, 0x00, 0x20, 0x2c, 0x00, 0x00, 0x20, 0x58, 0x02, 0x00, 0x20,
0x02, 0x4a, 0x13, 0x68, 0x01, 0x33, 0x13, 0x60, 0x70, 0x47, 0xc0, 0x46,
0x4c, 0x02, 0x00, 0x20, 0x10, 0xb5, 0x02, 0x21, 0x1c, 0x48, 0x00, 0xf0,
0x89, 0xfa, 0x00, 0x28, 0x23, 0xd0, 0x02, 0x21, 0x19, 0x48, 0x00, 0xf0,
0x89, 0xfa, 0xfa, 0x23, 0x18, 0x4a, 0x9b, 0x00, 0x12, 0x88, 0x9a, 0x42,
0x19, 0xd0, 0x17, 0x4b, 0x80, 0x21, 0x1b, 0x78, 0x90, 0x20, 0x5a, 0x1e,
0x93, 0x41, 0x15, 0x4a, 0x49, 0x00, 0x12, 0x78, 0xc0, 0x05, 0x9a, 0x42,
0x0e, 0xd0, 0x00, 0xf0, 0xfd, 0xf8, 0x80, 0x21, 0x90, 0x20, 0x09, 0x01,
0xc0, 0x05, 0x00, 0xf0, 0xf7, 0xf8, 0x80, 0x21, 0x90, 0x20, 0x49, 0x01,
0xc0, 0x05, 0x00, 0xf0, 0xf1, 0xf8, 0x10, 0xbd, 0x00, 0xf0, 0xec, 0xf8,
0x80, 0x21, 0x90, 0x20, 0x09, 0x01, 0xc0, 0x05, 0x00, 0xf0, 0xe6, 0xf8,
0x80, 0x21, 0x90, 0x20, 0x49, 0x01, 0xc0, 0x05, 0x00, 0xf0, 0xe0, 0xf8,
0xef, 0xe7, 0xc0, 0x46, 0x00, 0x2c, 0x01, 0x40, 0x08, 0x00, 0x00, 0x20,
0x24, 0x00, 0x00, 0x20, 0x30, 0x00, 0x00, 0x20, 0x70, 0xb5, 0x04, 0x20,
0x00, 0xf0, 0x8c, 0xf8, 0x28, 0x48, 0x00, 0xf0, 0xf2, 0xfa, 0x28, 0x4c,
0x28, 0x4b, 0x22, 0x78, 0x00, 0x2a, 0x38, 0xd0, 0xfa, 0x22, 0x1b, 0x88,
0x92, 0x00, 0xd2, 0x1a, 0x92, 0xb2, 0xfa, 0x21, 0x24, 0x4d, 0x50, 0x43,
0x2a, 0x80, 0x89, 0x00, 0x00, 0xf0, 0x1e, 0xfd, 0x22, 0x4e, 0x02, 0x00,
0x00, 0x21, 0x30, 0x60, 0x1c, 0x48, 0x00, 0xf0, 0xc1, 0xfa, 0x06, 0x21,
0x32, 0x68, 0x1a, 0x48, 0x00, 0xf0, 0xbc, 0xfa, 0x00, 0x21, 0x18, 0x48,
0x00, 0xf0, 0xd3, 0xfa, 0x2b, 0x88, 0x00, 0x2b, 0x18, 0xd0, 0x1a, 0x4b,
0x80, 0x21, 0x1b, 0x78, 0x90, 0x20, 0x5a, 0x1e, 0x93, 0x41, 0x22, 0x78,
0x49, 0x00, 0xc0, 0x05, 0x9a, 0x42, 0x10, 0xd0, 0x00, 0xf0, 0x9e, 0xf8,
0x80, 0x21, 0x90, 0x20, 0x09, 0x01, 0xc0, 0x05, 0x00, 0xf0, 0x98, 0xf8,
0x80, 0x21, 0x90, 0x20, 0x49, 0x01, 0xc0, 0x05, 0x00, 0xf0, 0x92, 0xf8,
0x70, 0xbd, 0x1a, 0x88, 0xc9, 0xe7, 0x00, 0xf0, 0x8f, 0xf8, 0x80, 0x21,
0x90, 0x20, 0x09, 0x01, 0xc0, 0x05, 0x00, 0xf0, 0x89, 0xf8, 0x80, 0x21,
0x90, 0x20, 0x49, 0x01, 0xc0, 0x05, 0x00, 0xf0, 0x83, 0xf8, 0xed, 0xe7,
0x00, 0x2c, 0x01, 0x40, 0x30, 0x00, 0x00, 0x20, 0x10, 0x00, 0x00, 0x20,
0x08, 0x00, 0x00, 0x20, 0x0c, 0x00, 0x00, 0x20, 0x24, 0x00, 0x00, 0x20,
0x01, 0x29, 0x0c, 0xd0, 0x02, 0x29, 0x13, 0xd0, 0x00, 0x29, 0x07, 0xd1,
0x0a, 0x4a, 0x13, 0x68, 0x03, 0x43, 0x13, 0x60, 0x09, 0x4a, 0x13, 0x68,
0x83, 0x43, 0x13, 0x60, 0x70, 0x47, 0x06, 0x4a, 0x13, 0x68, 0x83, 0x43,
0x13, 0x60, 0x05, 0x4a, 0x13, 0x68, 0x18, 0x43, 0x10, 0x60, 0xf5, 0xe7,
0x01, 0x4a, 0x13, 0x68, 0x03, 0x43, 0xf5, 0xe7, 0x08, 0x04, 0x01, 0x40,
0x0c, 0x04, 0x01, 0x40, 0x04, 0x4a, 0x13, 0x68, 0x03, 0x43, 0x13, 0x60,
0x03, 0x4a, 0x13, 0x68, 0x18, 0x43, 0x10, 0x60, 0x70, 0x47, 0xc0, 0x46,
0x00, 0x04, 0x01, 0x40, 0x04, 0x04, 0x01, 0x40, 0x01, 0x4b, 0x18, 0x60,
0x70, 0x47, 0xc0, 0x46, 0x14, 0x04, 0x01, 0x40, 0x19, 0x4b, 0xf7, 0xb5,
0xce, 0x18, 0x73, 0x42, 0x5e, 0x41, 0x00, 0x22, 0x01, 0x90, 0x76, 0x00,
0x01, 0x24, 0x23, 0x00, 0x93, 0x40, 0x01, 0x98, 0x18, 0x42, 0x17, 0xd0,
0x13, 0x4d, 0x03, 0x23, 0xa9, 0x42, 0x05, 0xd0, 0x16, 0xd8, 0x12, 0x4d,
0x23, 0x00, 0xa9, 0x42, 0x00, 0xd0, 0x33, 0x00, 0x10, 0x48, 0x03, 0x25,
0x94, 0x08, 0x24, 0x18, 0x0f, 0x20, 0x15, 0x40, 0xad, 0x00, 0xa8, 0x40,
0xab, 0x40, 0xa4, 0x00, 0x27, 0x68, 0x87, 0x43, 0x3b, 0x43, 0x23, 0x60,
0x01, 0x32, 0x10, 0x2a, 0xde, 0xd1, 0xf7, 0xbd, 0x08, 0x4c, 0x04, 0x23,
0xa1, 0x42, 0xe9, 0xd0, 0x07, 0x4c, 0x00, 0x23, 0xa1, 0x42, 0xe5, 0xd1,
0x05, 0x33, 0xe3, 0xe7, 0x00, 0xf8, 0xff, 0xb7, 0x00, 0x0c, 0x00, 0x48,
0x00, 0x04, 0x00, 0x48, 0x02, 0x40, 0x00, 0x10, 0x00, 0x10, 0x00, 0x48,
0x00, 0x14, 0x00, 0x48, 0x81, 0x61, 0x70, 0x47, 0x09, 0x04, 0x81, 0x61,
0x70, 0x47, 0x00, 0x69, 0x08, 0x40, 0x70, 0x47, 0xf0, 0xb5, 0x85, 0xb0,
0x01, 0x91, 0x03, 0x27, 0x00, 0x21, 0x02, 0x92, 0x03, 0x93, 0x02, 0x68,
0xc3, 0x68, 0x03, 0x9c, 0x01, 0x25, 0x0c, 0x41, 0x2c, 0x42, 0x0a, 0xd0,
0x3d, 0x00, 0x4c, 0x00, 0xa5, 0x40, 0x01, 0x9e, 0xaa, 0x43, 0xab, 0x43,
0x02, 0x9d, 0xa6, 0x40, 0xa5, 0x40, 0x32, 0x43, 0x2b, 0x43, 0x01, 0x31,
0x10, 0x29, 0xec, 0xd1, 0x02, 0x60, 0xc3, 0x60, 0x05, 0xb0, 0xf0, 0xbd,
0xf7, 0xb5, 0x01, 0x92, 0x01, 0x29, 0x16, 0xd1, 0x41, 0x68, 0x19, 0x43,
0x00, 0x24, 0x01, 0x26, 0x03, 0x27, 0x41, 0x60, 0x81, 0x68, 0x1d, 0x00,
0x25, 0x41, 0x35, 0x42, 0x06, 0xd0, 0x3a, 0x00, 0x65, 0x00, 0xaa, 0x40,
0x91, 0x43, 0x01, 0x9a, 0xaa, 0x40, 0x11, 0x43, 0x01, 0x34, 0x10, 0x2c,
0xf1, 0xd1, 0x81, 0x60, 0xf7, 0xbd, 0x41, 0x68, 0x99, 0x43, 0xe7, 0xe7,
0xf7, 0xb5, 0x00, 0x23, 0x01, 0x26, 0x0f, 0x27, 0x04, 0x6a, 0x00, 0x91,
0x41, 0x6a, 0x01, 0x92, 0x01, 0x9d, 0x1d, 0x41, 0x35, 0x42, 0x06, 0xd0,
0x3a, 0x00, 0x9d, 0x00, 0xaa, 0x40, 0x94, 0x43, 0x00, 0x9a, 0xaa, 0x40,
0x14, 0x43, 0x01, 0x33, 0x08, 0x2b, 0xf1, 0xd1, 0x01, 0x26, 0x0f, 0x27,
0x01, 0x9a, 0x1a, 0x41, 0x32, 0x42, 0x07, 0xd0, 0x3a, 0x00, 0x9d, 0x00,
0x20, 0x3d, 0xaa, 0x40, 0x91, 0x43, 0x00, 0x9a, 0xaa, 0x40, 0x11, 0x43,
0x01, 0x33, 0x10, 0x2b, 0xf0, 0xd1, 0x04, 0x62, 0x41, 0x62, 0xf7, 0xbd,
0x00, 0x23, 0x00, 0xb5, 0x06, 0x28, 0x0a, 0xd8, 0x01, 0x33, 0x00, 0xf0,
0xdf, 0xfb, 0x0a, 0x0e, 0x10, 0x12, 0x18, 0x16, 0x04, 0x00, 0x0b, 0x4a,
0x10, 0x68, 0x40, 0x0c, 0x03, 0x40, 0x18, 0x00, 0x00, 0xbd, 0x08, 0x4a,
0x10, 0x68, 0x40, 0x08, 0xf8, 0xe7, 0x07, 0x4a, 0xfa, 0xe7, 0x06, 0x4a,
0xf2, 0xe7, 0x05, 0x4a, 0x10, 0x68, 0x40, 0x0e, 0xf0, 0xe7, 0x04, 0x4a,
0xf2, 0xe7, 0x04, 0x4a, 0xf0, 0xe7, 0xc0, 0x46, 0x34, 0x10, 0x02, 0x40,
0x00, 0x10, 0x02, 0x40, 0x20, 0x10, 0x02, 0x40, 0x24, 0x10, 0x02, 0x40,
0x10, 0xb5, 0x04, 0x00, 0x20, 0x00, 0xff, 0xf7, 0xd1, 0xff, 0x00, 0x28,
0xfa, 0xd0, 0x10, 0xbd, 0x00, 0xb5, 0x06, 0x28, 0x0b, 0xd8, 0x00, 0xf0,
0xaf, 0xfb, 0x0b, 0x0f, 0x11, 0x17, 0x15, 0x13, 0x04, 0x00, 0x0c, 0x4a,
0x80, 0x23, 0x11, 0x68, 0x5b, 0x02, 0x0b, 0x43, 0x13, 0x60, 0x00, 0xbd,
0x08, 0x4a, 0x01, 0x23, 0x11, 0x68, 0xf8, 0xe7, 0x07, 0x4a, 0xfa, 0xe7,
0x06, 0x4a, 0xf1, 0xe7, 0x06, 0x4a, 0xf6, 0xe7, 0x06, 0x4a, 0xf4, 0xe7,
0x80, 0x23, 0x03, 0x4a, 0x5b, 0x04, 0x11, 0x68, 0xeb, 0xe7, 0xc0, 0x46,
0x34, 0x10, 0x02, 0x40, 0x00, 0x10, 0x02, 0x40, 0x20, 0x10, 0x02, 0x40,
0x24, 0x10, 0x02, 0x40, 0x01, 0x38, 0x00, 0xb5, 0x05, 0x28, 0x12, 0xd8,
0x00, 0xf0, 0x84, 0xfb, 0x03, 0x09, 0x12, 0x11, 0x11, 0x19, 0x03, 0x21,
0x0c, 0x4a, 0x13, 0x68, 0x8b, 0x43, 0x13, 0x60, 0x07, 0xe0, 0x03, 0x22,
0x09, 0x49, 0x0b, 0x68, 0x93, 0x43, 0x1a, 0x00, 0x01, 0x23, 0x13, 0x43,
0x0b, 0x60, 0x00, 0xbd, 0x03, 0x22, 0x05, 0x49, 0x0b, 0x68, 0x93, 0x43,
0x1a, 0x00, 0x02, 0x23, 0xf5, 0xe7, 0x03, 0x23, 0x01, 0x4a, 0x11, 0x68,
0x0b, 0x43, 0xe8, 0xe7, 0x04, 0x10, 0x02, 0x40, 0x03, 0x4a, 0x04, 0x49,
0x13, 0x68, 0x0b, 0x40, 0x03, 0x43, 0x13, 0x60, 0x70, 0x47, 0xc0, 0x46,
0x04, 0x10, 0x02, 0x40, 0xff, 0xff, 0xc3, 0xff, 0x03, 0x4a, 0x04, 0x49,
0x13, 0x68, 0x00, 0x04, 0x0b, 0x40, 0x03, 0x43, 0x13, 0x60, 0x70, 0x47,
0x04, 0x10, 0x02, 0x40, 0xff, 0xff, 0xfe, 0xff, 0x03, 0x4a, 0x04, 0x49,
0x13, 0x68, 0x0b, 0x40, 0x03, 0x43, 0x13, 0x60, 0x70, 0x47, 0xc0, 0x46,
0x04, 0x10, 0x02, 0x40, 0xff, 0xf8, 0xff, 0xff, 0xf0, 0x21, 0x03, 0x4a,
0x13, 0x68, 0x8b, 0x43, 0x03, 0x43, 0x13, 0x60, 0x70, 0x47, 0xc0, 0x46,
0x04, 0x10, 0x02, 0x40, 0x10, 0xb5, 0x01, 0x20, 0xff, 0xf7, 0x7e, 0xff,
0x01, 0x20, 0xff, 0xf7, 0x73, 0xff, 0x01, 0x20, 0xff, 0xf7, 0xa2, 0xff,
0x00, 0x20, 0xff, 0xf7, 0xe9, 0xff, 0x00, 0x20, 0xff, 0xf7, 0xda, 0xff,
0x00, 0xf0, 0x6a, 0xfa, 0x01, 0x20, 0x00, 0xf0, 0x6f, 0xfa, 0xa0, 0x20,
0x80, 0x03, 0xff, 0xf7, 0xb9, 0xff, 0x00, 0x20, 0xff, 0xf7, 0xc2, 0xff,
0x03, 0x20, 0xff, 0xf7, 0x63, 0xff, 0x03, 0x20, 0xff, 0xf7, 0x58, 0xff,
0x03, 0x20, 0xff, 0xf7, 0x87, 0xff, 0x03, 0x4b, 0x03, 0x4a, 0x13, 0x60,
0x03, 0x4a, 0x13, 0x60, 0x10, 0xbd, 0xc0, 0x46, 0x00, 0x6c, 0xdc, 0x02,
0x04, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x20, 0x05, 0x4b, 0x42, 0x09,
0xd2, 0x18, 0x1f, 0x23, 0x18, 0x40, 0x1e, 0x3b, 0x83, 0x40, 0x11, 0x68,
0x0b, 0x43, 0x13, 0x60, 0x70, 0x47, 0xc0, 0x46, 0x00, 0x10, 0x02, 0x40,
0x06, 0x4a, 0x43, 0x09, 0x9b, 0x18, 0x1f, 0x22, 0x10, 0x40, 0x1e, 0x3a,
0x82, 0x40, 0x19, 0x68, 0x11, 0x43, 0x19, 0x60, 0x19, 0x68, 0x91, 0x43,
0x19, 0x60, 0x70, 0x47, 0x00, 0x10, 0x02, 0x40, 0xc3, 0x68, 0x0b, 0x43,
0xc3, 0x60, 0x70, 0x47, 0x00, 0x69, 0x08, 0x40, 0x41, 0x1e, 0x88, 0x41,
0xc0, 0xb2, 0x70, 0x47, 0xc9, 0x43, 0x01, 0x61, 0x70, 0x47, 0x00, 0x00,
0x30, 0xb5, 0x04, 0x68, 0x03, 0x4d, 0x1a, 0x43, 0x2c, 0x40, 0x0a, 0x43,
0x22, 0x43, 0x02, 0x60, 0x30, 0xbd, 0xc0, 0x46, 0x8f, 0xfc, 0xff, 0xff,
0x80, 0x23, 0x02, 0x68, 0x13, 0x43, 0x03, 0x60, 0x70, 0x47, 0x08, 0x22,
0x03, 0x68, 0x93, 0x43, 0x03, 0x60, 0x70, 0x47, 0x01, 0x23, 0x02, 0x68,
0x13, 0x43, 0x03, 0x60, 0x70, 0x47, 0x01, 0x22, 0x03, 0x68, 0x93, 0x43,
0x03, 0x60, 0x70, 0x47, 0x81, 0x62, 0x70, 0x47, 0xc1, 0x62, 0x70, 0x47,
0x03, 0x00, 0x00, 0xb5, 0x08, 0x00, 0x06, 0x29, 0x09, 0xd8, 0x1a, 0x6a,
0x00, 0xf0, 0xac, 0xfa, 0x04, 0x0f, 0x08, 0x11, 0x0a, 0x13, 0x0d, 0x00,
0x02, 0x21, 0x8a, 0x43, 0x1a, 0x62, 0x00, 0xbd, 0x20, 0x21, 0xfa, 0xe7,
0x05, 0x49, 0x0a, 0x40, 0xf8, 0xe7, 0x05, 0x49, 0xfb, 0xe7, 0x08, 0x21,
0xf3, 0xe7, 0x80, 0x21, 0xf1, 0xe7, 0x03, 0x49, 0xf5, 0xe7, 0xc0, 0x46,
0xff, 0xfd, 0xff, 0xff, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xff,
0x03, 0x00, 0x00, 0xb5, 0x08, 0x00, 0x06, 0x29, 0x09, 0xd8, 0x19, 0x6a,
0x00, 0xf0, 0x88, 0xfa, 0x04, 0x10, 0x08, 0x12, 0x0a, 0x14, 0x0d, 0x00,
0x01, 0x22, 0x0a, 0x43, 0x1a, 0x62, 0x00, 0xbd, 0x10, 0x22, 0xfa, 0xe7,
0x80, 0x22, 0x52, 0x00, 0xf7, 0xe7, 0x80, 0x22, 0x52, 0x01, 0xf4, 0xe7,
0x04, 0x22, 0xf2, 0xe7, 0x40, 0x22, 0xf0, 0xe7, 0x80, 0x22, 0xd2, 0x00,
0xed, 0xe7, 0x00, 0x00, 0x03, 0x00, 0x00, 0xb5, 0x08, 0x00, 0x06, 0x29,
0x09, 0xd8, 0x1a, 0x6a, 0x00, 0xf0, 0x68, 0xfa, 0x04, 0x0f, 0x08, 0x11,
0x0a, 0x13, 0x0d, 0x00, 0x01, 0x21, 0x8a, 0x43, 0x1a, 0x62, 0x00, 0xbd,
0x10, 0x21, 0xfa, 0xe7, 0x05, 0x49, 0x0a, 0x40, 0xf8, 0xe7, 0x05, 0x49,
0xfb, 0xe7, 0x04, 0x21, 0xf3, 0xe7, 0x40, 0x21, 0xf1, 0xe7, 0x03, 0x49,
0xf5, 0xe7, 0xc0, 0x46, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff,
0xff, 0xfb, 0xff, 0xff, 0x03, 0x00, 0x00, 0xb5, 0x08, 0x00, 0x06, 0x29,
0x06, 0xd8, 0x00, 0xf0, 0x45, 0xfa, 0x04, 0x05, 0x06, 0x05, 0x08, 0x05,
0x0a, 0x00, 0x5a, 0x63, 0x00, 0xbd, 0x9a, 0x63, 0xfc, 0xe7, 0xda, 0x63,
0xfa, 0xe7, 0x1a, 0x64, 0xf8, 0xe7, 0x80, 0x23, 0x42, 0x6c, 0x1b, 0x02,
0x13, 0x43, 0x43, 0x64, 0x70, 0x47, 0x40, 0x6a, 0x70, 0x47, 0x41, 0x62,
0x70, 0x47, 0x00, 0x00, 0x03, 0x00, 0x00, 0xb5, 0x08, 0x00, 0x03, 0x29,
0x0b, 0xd8, 0x00, 0xf0, 0x27, 0xfa, 0x02, 0x0b, 0x12, 0x1b, 0xf0, 0x20,
0x99, 0x69, 0x12, 0x01, 0x81, 0x43, 0x99, 0x61, 0x99, 0x69, 0x0a, 0x43,
0x9a, 0x61, 0x00, 0xbd, 0x99, 0x69, 0x0b, 0x48, 0x12, 0x03, 0x01, 0x40,
0x99, 0x61, 0x99, 0x69, 0xf5, 0xe7, 0xf0, 0x20, 0xd9, 0x69, 0x12, 0x01,
0x81, 0x43, 0xd9, 0x61, 0xd9, 0x69, 0x0a, 0x43, 0xda, 0x61, 0xee, 0xe7,
0xd9, 0x69, 0x03, 0x48, 0x12, 0x03, 0x01, 0x40, 0xd9, 0x61, 0xd9, 0x69,
0xf5, 0xe7, 0xc0, 0x46, 0xff, 0x0f, 0xff, 0xff, 0x03, 0x00, 0x00, 0xb5,
0x08, 0x00, 0x03, 0x29, 0x0b, 0xd8, 0x00, 0xf0, 0xfb, 0xf9, 0x02, 0x0b,
0x12, 0x1b, 0x0c, 0x20, 0x99, 0x69, 0x92, 0x00, 0x81, 0x43, 0x99, 0x61,
0x99, 0x69, 0x0a, 0x43, 0x9a, 0x61, 0x00, 0xbd, 0x99, 0x69, 0x0b, 0x48,
0x92, 0x02, 0x01, 0x40, 0x99, 0x61, 0x99, 0x69, 0xf5, 0xe7, 0x0c, 0x20,
0xd9, 0x69, 0x92, 0x00, 0x81, 0x43, 0xd9, 0x61, 0xd9, 0x69, 0x0a, 0x43,
0xda, 0x61, 0xee, 0xe7, 0xd9, 0x69, 0x03, 0x48, 0x92, 0x02, 0x01, 0x40,
0xd9, 0x61, 0xd9, 0x69, 0xf5, 0xe7, 0xc0, 0x46, 0xff, 0xf3, 0xff, 0xff,
0x03, 0x00, 0x08, 0x00, 0x30, 0xb5, 0x03, 0x21, 0x02, 0x24, 0x05, 0x00,
0x0a, 0x40, 0xa5, 0x43, 0x01, 0x2d, 0x03, 0xd1, 0x54, 0x1e, 0x01, 0x2c,
0x00, 0xd8, 0x4a, 0x40, 0x03, 0x28, 0x0a, 0xd8, 0x00, 0xf0, 0xc4, 0xf9,
0x02, 0x0a, 0x11, 0x19, 0x03, 0x20, 0x99, 0x69, 0x81, 0x43, 0x99, 0x61,
0x99, 0x69, 0x0a, 0x43, 0x9a, 0x61, 0x30, 0xbd, 0x99, 0x69, 0x0a, 0x48,
0x12, 0x02, 0x01, 0x40, 0x99, 0x61, 0x99, 0x69, 0xf5, 0xe7, 0x03, 0x20,
0xd9, 0x69, 0x81, 0x43, 0xd9, 0x61, 0xd9, 0x69, 0x0a, 0x43, 0xda, 0x61,
0xef, 0xe7, 0xd9, 0x69, 0x02, 0x48, 0x12, 0x02, 0x01, 0x40, 0xd9, 0x61,
0xd9, 0x69, 0xf5, 0xe7, 0xff, 0xfc, 0xff, 0xff, 0x01, 0x23, 0x89, 0x00,
0x8b, 0x40, 0x02, 0x6a, 0x13, 0x43, 0x03, 0x62, 0x70, 0x47, 0x07, 0x22,
0x83, 0x68, 0x93, 0x43, 0x83, 0x60, 0x83, 0x68, 0x19, 0x43, 0x81, 0x60,
0x70, 0x47, 0x00, 0x00, 0x04, 0x4b, 0x10, 0xb5, 0x1b, 0x68, 0x04, 0x00,
0x48, 0x08, 0xc0, 0x18, 0x00, 0xf0, 0x94, 0xf9, 0xe0, 0x60, 0x10, 0xbd,
0x04, 0x00, 0x00, 0x20, 0x08, 0x29, 0x04, 0xd1, 0x03, 0x68, 0x04, 0x4a,
0x13, 0x40, 0x03, 0x60, 0x70, 0x47, 0x80, 0x23, 0x02, 0x68, 0x5b, 0x01,
0x13, 0x43, 0xf8, 0xe7, 0xff, 0xef, 0xff, 0xff, 0x43, 0x68, 0x02, 0x4a,
0x13, 0x40, 0x0b, 0x43, 0x43, 0x60, 0x70, 0x47, 0xff, 0xcf, 0xff, 0xff,
0x03, 0x68, 0x02, 0x4a, 0x13, 0x40, 0x0b, 0x43, 0x03, 0x60, 0x70, 0x47,
0xff, 0xf9, 0xff, 0xff, 0x0c, 0x22, 0x03, 0x68, 0x93, 0x43, 0x0b, 0x43,
0x03, 0x60, 0x70, 0x47, 0x83, 0x68, 0x02, 0x4a, 0x13, 0x40, 0x0b, 0x43,
0x83, 0x60, 0x70, 0x47, 0xff, 0xfc, 0xff, 0xff, 0x01, 0x23, 0x02, 0x68,
0x13, 0x43, 0x03, 0x60, 0x70, 0x47, 0xc9, 0x05, 0xc9, 0x0d, 0x81, 0x62,
0x70, 0x47, 0x40, 0x6a, 0xc0, 0x05, 0xc0, 0x0d, 0x70, 0x47, 0xfe, 0xe7,
0x70, 0x47, 0x00, 0x00, 0x10, 0xb5, 0x16, 0x4b, 0x16, 0x4a, 0x17, 0x49,
0x8b, 0x42, 0x18, 0xd3, 0x00, 0x21, 0x16, 0x4a, 0x93, 0x42, 0x17, 0xd3,
0x80, 0x23, 0x15, 0x4a, 0x9b, 0x00, 0x11, 0x68, 0x14, 0x4c, 0x0b, 0x43,
0x13, 0x60, 0x14, 0x4b, 0x9c, 0x42, 0x0f, 0xd3, 0x13, 0x4c, 0x14, 0x4b,
0x9c, 0x42, 0x0e, 0xd3, 0xff, 0xf7, 0xb8, 0xf9, 0x12, 0x4c, 0x13, 0x4b,
0x9c, 0x42, 0x0b, 0xd3, 0x10, 0xbd, 0x01, 0xca, 0x01, 0xc3, 0xe1, 0xe7,
0x02, 0xc3, 0xe3, 0xe7, 0x08, 0xcc, 0x98, 0x47, 0xe9, 0xe7, 0x08, 0xcc,
0x98, 0x47, 0xea, 0xe7, 0x08, 0xcc, 0x98, 0x47, 0xed, 0xe7, 0xc0, 0x46,
0x00, 0x00, 0x00, 0x20, 0xb4, 0x13, 0x00, 0x08, 0x08, 0x00, 0x00, 0x20,
0x5c, 0x02, 0x00, 0x20, 0x14, 0xed, 0x00, 0xe0, 0xb4, 0x13, 0x00, 0x08,
0xb4, 0x13, 0x00, 0x08, 0xb4, 0x13, 0x00, 0x08, 0xb4, 0x13, 0x00, 0x08,
0xb4, 0x13, 0x00, 0x08, 0xb4, 0x13, 0x00, 0x08, 0x02, 0x4b, 0x00, 0x02,
0x00, 0x0a, 0x18, 0x60, 0x70, 0x47, 0xc0, 0x46, 0x14, 0xe0, 0x00, 0xe0,
0x04, 0x21, 0x03, 0x4a, 0x08, 0x40, 0x13, 0x68, 0x8b, 0x43, 0x03, 0x43,
0x13, 0x60, 0x70, 0x47, 0x10, 0xe0, 0x00, 0xe0, 0x02, 0x23, 0x02, 0x4a,
0x11, 0x68, 0x0b, 0x43, 0x13, 0x60, 0x70, 0x47, 0x10, 0xe0, 0x00, 0xe0,
0x01, 0x23, 0x02, 0x4a, 0x11, 0x68, 0x0b, 0x43, 0x13, 0x60, 0x70, 0x47,
0x10, 0xe0, 0x00, 0xe0, 0x04, 0x4a, 0x43, 0x09, 0x9b, 0x00, 0x9b, 0x18,
0x1f, 0x22, 0x10, 0x40, 0x1e, 0x3a, 0x82, 0x40, 0x1a, 0x60, 0x70, 0x47,
0x00, 0xe1, 0x00, 0xe0, 0x10, 0xb5, 0x1f, 0x28, 0x12, 0xd9, 0x0f, 0x23,
0x18, 0x40, 0x04, 0x38, 0xc0, 0xb2, 0x83, 0x08, 0x08, 0x4a, 0x9b, 0x00,
0x18, 0x24, 0xc0, 0x00, 0x20, 0x40, 0xe7, 0x34, 0x84, 0x40, 0x81, 0x40,
0x9b, 0x18, 0x1a, 0x68, 0xa2, 0x43, 0x11, 0x43, 0x19, 0x60, 0x10, 0xbd,
0x83, 0x08, 0x02, 0x4a, 0x9b, 0x00, 0xef, 0xe7, 0x18, 0xed, 0x00, 0xe0,
0x00, 0xe4, 0x00, 0xe0, 0x10, 0x23, 0x02, 0x4a, 0x11, 0x68, 0x0b, 0x43,
0x13, 0x60, 0x70, 0x47, 0x00, 0x20, 0x02, 0x40, 0x07, 0x21, 0x03, 0x4a,
0x13, 0x68, 0x8b, 0x43, 0x03, 0x43, 0x13, 0x60, 0x70, 0x47, 0xc0, 0x46,
0x00, 0x20, 0x02, 0x40, 0xf0, 0xb5, 0xc6, 0x46, 0x00, 0xb5, 0x0f, 0x2a,
0x43, 0xd9, 0x0b, 0x00, 0x03, 0x26, 0x03, 0x43, 0x1e, 0x40, 0x0c, 0x00,
0x03, 0x00, 0x00, 0x2e, 0x40, 0xd1, 0x15, 0x00, 0x10, 0x3d, 0x2d, 0x09,
0xac, 0x46, 0x2d, 0x01, 0xa8, 0x46, 0x80, 0x44, 0x00, 0xe0, 0x3b, 0x00,
0x67, 0x68, 0x25, 0x68, 0x5f, 0x60, 0xe7, 0x68, 0x1d, 0x60, 0xdf, 0x60,
0x1f, 0x00, 0xa5, 0x68, 0x10, 0x37, 0x9d, 0x60, 0x10, 0x34, 0x43, 0x45,
0xf1, 0xd1, 0x65, 0x46, 0x0f, 0x23, 0x0c, 0x24, 0x01, 0x35, 0x2d, 0x01,
0x49, 0x19, 0x13, 0x40, 0x45, 0x19, 0x14, 0x42, 0x23, 0xd0, 0x8c, 0x59,
0xac, 0x51, 0x04, 0x36, 0x9c, 0x1b, 0x03, 0x2c, 0xf9, 0xd8, 0x03, 0x24,
0x04, 0x3b, 0x9b, 0x08, 0x01, 0x33, 0x9b, 0x00, 0x22, 0x40, 0xed, 0x18,
0xc9, 0x18, 0x56, 0x1e, 0x00, 0x2a, 0x07, 0xd0, 0x00, 0x23, 0x00, 0xe0,
0x23, 0x00, 0xca, 0x5c, 0x5c, 0x1c, 0xea, 0x54, 0x9e, 0x42, 0xf9, 0xd1,
0x04, 0xbc, 0x90, 0x46, 0xf0, 0xbd, 0x05, 0x00, 0x56, 0x1e, 0x00, 0x2a,
0xf0, 0xd1, 0xf7, 0xe7, 0x56, 0x1e, 0x05, 0x00, 0xec, 0xe7, 0x1a, 0x00,
0xf6, 0xe7, 0xc0, 0x46, 0xf0, 0xb5, 0x05, 0x00, 0x83, 0x07, 0x4a, 0xd0,
0x54, 0x1e, 0x00, 0x2a, 0x44, 0xd0, 0xce, 0xb2, 0x03, 0x00, 0x03, 0x22,
0x02, 0xe0, 0x01, 0x35, 0x01, 0x3c, 0x3d, 0xd3, 0x01, 0x33, 0x2e, 0x70,
0x13, 0x42, 0xf8, 0xd1, 0x03, 0x2c, 0x2f, 0xd9, 0xff, 0x22, 0x0a, 0x40,
0x15, 0x02, 0x15, 0x43, 0x2a, 0x04, 0x15, 0x43, 0x0f, 0x2c, 0x35, 0xd9,
0x27, 0x00, 0x10, 0x3f, 0x3f, 0x09, 0x3e, 0x01, 0xb4, 0x46, 0x1e, 0x00,
0x1a, 0x00, 0x10, 0x36, 0x66, 0x44, 0x15, 0x60, 0x55, 0x60, 0x95, 0x60,
0xd5, 0x60, 0x10, 0x32, 0xb2, 0x42, 0xf8, 0xd1, 0x0f, 0x26, 0x0c, 0x22,
0x01, 0x37, 0x3f, 0x01, 0x26, 0x40, 0xdb, 0x19, 0x37, 0x00, 0x22, 0x42,
0x17, 0xd0, 0x3e, 0x1f, 0xb6, 0x08, 0xb4, 0x00, 0xa4, 0x46, 0x1a, 0x00,
0x1c, 0x1d, 0x64, 0x44, 0x20, 0xc2, 0xa2, 0x42, 0xfc, 0xd1, 0x03, 0x24,
0x01, 0x36, 0xb6, 0x00, 0x9b, 0x19, 0x3c, 0x40, 0x00, 0x2c, 0x05, 0xd0,
0xc9, 0xb2, 0x1c, 0x19, 0x19, 0x70, 0x01, 0x33, 0x9c, 0x42, 0xfb, 0xd1,
0xf0, 0xbd, 0x34, 0x00, 0xf4, 0xe7, 0x14, 0x00, 0x03, 0x00, 0xbf, 0xe7,
0x27, 0x00, 0xe0, 0xe7, 0x02, 0xb4, 0x71, 0x46, 0x49, 0x08, 0x49, 0x00,
0x09, 0x5c, 0x49, 0x00, 0x8e, 0x44, 0x02, 0xbc, 0x70, 0x47, 0xc0, 0x46,
0x00, 0x22, 0x43, 0x08, 0x8b, 0x42, 0x74, 0xd3, 0x03, 0x09, 0x8b, 0x42,
0x5f, 0xd3, 0x03, 0x0a, 0x8b, 0x42, 0x44, 0xd3, 0x03, 0x0b, 0x8b, 0x42,
0x28, 0xd3, 0x03, 0x0c, 0x8b, 0x42, 0x0d, 0xd3, 0xff, 0x22, 0x09, 0x02,
0x12, 0xba, 0x03, 0x0c, 0x8b, 0x42, 0x02, 0xd3, 0x12, 0x12, 0x09, 0x02,
0x65, 0xd0, 0x03, 0x0b, 0x8b, 0x42, 0x19, 0xd3, 0x00, 0xe0, 0x09, 0x0a,
0xc3, 0x0b, 0x8b, 0x42, 0x01, 0xd3, 0xcb, 0x03, 0xc0, 0x1a, 0x52, 0x41,
0x83, 0x0b, 0x8b, 0x42, 0x01, 0xd3, 0x8b, 0x03, 0xc0, 0x1a, 0x52, 0x41,
0x43, 0x0b, 0x8b, 0x42, 0x01, 0xd3, 0x4b, 0x03, 0xc0, 0x1a, 0x52, 0x41,
0x03, 0x0b, 0x8b, 0x42, 0x01, 0xd3, 0x0b, 0x03, 0xc0, 0x1a, 0x52, 0x41,
0xc3, 0x0a, 0x8b, 0x42, 0x01, 0xd3, 0xcb, 0x02, 0xc0, 0x1a, 0x52, 0x41,
0x83, 0x0a, 0x8b, 0x42, 0x01, 0xd3, 0x8b, 0x02, 0xc0, 0x1a, 0x52, 0x41,
0x43, 0x0a, 0x8b, 0x42, 0x01, 0xd3, 0x4b, 0x02, 0xc0, 0x1a, 0x52, 0x41,
0x03, 0x0a, 0x8b, 0x42, 0x01, 0xd3, 0x0b, 0x02, 0xc0, 0x1a, 0x52, 0x41,
0xcd, 0xd2, 0xc3, 0x09, 0x8b, 0x42, 0x01, 0xd3, 0xcb, 0x01, 0xc0, 0x1a,
0x52, 0x41, 0x83, 0x09, 0x8b, 0x42, 0x01, 0xd3, 0x8b, 0x01, 0xc0, 0x1a,
0x52, 0x41, 0x43, 0x09, 0x8b, 0x42, 0x01, 0xd3, 0x4b, 0x01, 0xc0, 0x1a,
0x52, 0x41, 0x03, 0x09, 0x8b, 0x42, 0x01, 0xd3, 0x0b, 0x01, 0xc0, 0x1a,
0x52, 0x41, 0xc3, 0x08, 0x8b, 0x42, 0x01, 0xd3, 0xcb, 0x00, 0xc0, 0x1a,
0x52, 0x41, 0x83, 0x08, 0x8b, 0x42, 0x01, 0xd3, 0x8b, 0x00, 0xc0, 0x1a,
0x52, 0x41, 0x43, 0x08, 0x8b, 0x42, 0x01, 0xd3, 0x4b, 0x00, 0xc0, 0x1a,
0x52, 0x41, 0x41, 0x1a, 0x00, 0xd2, 0x01, 0x46, 0x52, 0x41, 0x10, 0x46,
0x70, 0x47, 0xff, 0xe7, 0x01, 0xb5, 0x00, 0x20, 0x00, 0xf0, 0x06, 0xf8,
0x02, 0xbd, 0xc0, 0x46, 0x00, 0x29, 0xf7, 0xd0, 0x76, 0xe7, 0x70, 0x47,
0x70, 0x47, 0xc0, 0x46, 0x00, 0x12, 0x7a, 0x00, 0x00, 0x12, 0x7a, 0x00,
};

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -473,10 +473,10 @@
#define USE_PWM_DIMMER_REMOTE // Add support for remote switches to PWM Dimmer (requires USE_DEVICE_GROUPS) (+0k6 code) #define USE_PWM_DIMMER_REMOTE // Add support for remote switches to PWM Dimmer (requires USE_DEVICE_GROUPS) (+0k6 code)
//#define USE_KEELOQ // Add support for Jarolift rollers by Keeloq algorithm (+4k5 code) //#define USE_KEELOQ // Add support for Jarolift rollers by Keeloq algorithm (+4k5 code)
#define USE_SONOFF_D1 // Add support for Sonoff D1 Dimmer (+0k7 code) #define USE_SONOFF_D1 // Add support for Sonoff D1 Dimmer (+0k7 code)
//#define USE_SHELLY_DIMMER // Add support for Shelly Dimmer (+2k2 code) #define USE_SHELLY_DIMMER // Add support for Shelly Dimmer (+3k code)
// #define SHELLY_CMDS // Add command to send co-processor commands (+0k4 code) #define SHELLY_CMDS // Add command to send co-processor commands (+0k3 code)
// #define SHELLY_FW_UPGRADE // Add firmware upgrade option for co-processor (+30k code, +5k mem) #define SHELLY_FW_UPGRADE // Add firmware upgrade option for co-processor (+3k4 code)
// #define SHELLY_VOLTAGE_MON // Add support for reading voltage and current measurment (+?? code) #define SHELLY_VOLTAGE_MON // Add support for reading voltage and current measurment (-0k0 code)
// -- Optional light modules ---------------------- // -- Optional light modules ----------------------
#define USE_WS2812 // WS2812 Led string using library NeoPixelBus (+5k code, +1k mem, 232 iram) - Disable by // #define USE_WS2812 // WS2812 Led string using library NeoPixelBus (+5k code, +1k mem, 232 iram) - Disable by //

View File

@ -54,7 +54,7 @@
#undef USE_PWM_DIMMER // Disable support for MJ-SD01/acenx/NTONPOWER PWM dimmers (+4k5 code) #undef USE_PWM_DIMMER // Disable support for MJ-SD01/acenx/NTONPOWER PWM dimmers (+4k5 code)
#undef USE_KEELOQ // Disable support for Jarolift rollers by Keeloq algorithm (+4k5 code) #undef USE_KEELOQ // Disable support for Jarolift rollers by Keeloq algorithm (+4k5 code)
#undef USE_SONOFF_D1 // Disable support for Sonoff D1 Dimmer (+0k7 code) #undef USE_SONOFF_D1 // Disable support for Sonoff D1 Dimmer (+0k7 code)
#undef USE_SHELLY_DIMMER // Disable support for Shelly Dimmer (+2k4 code) #undef USE_SHELLY_DIMMER // Disable support for Shelly Dimmer (+3k code)
// -- Optional light modules ---------------------- // -- Optional light modules ----------------------
#define USE_LIGHT // Add Dimmer/Light support #define USE_LIGHT // Add Dimmer/Light support
@ -271,7 +271,7 @@
#undef USE_PWM_DIMMER_REMOTE // Disbale support for remote switches to PWM Dimmer #undef USE_PWM_DIMMER_REMOTE // Disbale support for remote switches to PWM Dimmer
#undef USE_KEELOQ // Disable support for Jarolift rollers by Keeloq algorithm (+4k5 code) #undef USE_KEELOQ // Disable support for Jarolift rollers by Keeloq algorithm (+4k5 code)
#undef USE_SONOFF_D1 // Disable support for Sonoff D1 Dimmer (+0k7 code) #undef USE_SONOFF_D1 // Disable support for Sonoff D1 Dimmer (+0k7 code)
#undef USE_SHELLY_DIMMER // Disable support for Shelly Dimmer (+2k4 code) #undef USE_SHELLY_DIMMER // Disable support for Shelly Dimmer (+3k code)
#undef USE_ENERGY_SENSOR // Disable energy sensors (-14k code) #undef USE_ENERGY_SENSOR // Disable energy sensors (-14k code)
#undef USE_PZEM004T // Disable PZEM004T energy sensor #undef USE_PZEM004T // Disable PZEM004T energy sensor
@ -365,7 +365,7 @@
#undef USE_SONOFF_L1 // Disable support for Sonoff L1 led control #undef USE_SONOFF_L1 // Disable support for Sonoff L1 led control
#undef USE_ELECTRIQ_MOODL // Disable support for ElectriQ iQ-wifiMOODL RGBW LED controller #undef USE_ELECTRIQ_MOODL // Disable support for ElectriQ iQ-wifiMOODL RGBW LED controller
#undef USE_LIGHT_PALETTE // Disable support for color palette (+0k9 code) #undef USE_LIGHT_PALETTE // Disable support for color palette (+0k9 code)
#undef USE_SHELLY_DIMMER // Disable support for Shelly Dimmer (+2k4 code) #undef USE_SHELLY_DIMMER // Disable support for Shelly Dimmer (+3k code)
#undef USE_COUNTER // Disable counters #undef USE_COUNTER // Disable counters
#define USE_ADC_VCC // Display Vcc in Power status. Disable for use as Analog input on selected devices #define USE_ADC_VCC // Display Vcc in Power status. Disable for use as Analog input on selected devices
@ -509,7 +509,7 @@
#undef USE_SONOFF_L1 // Disable support for Sonoff L1 led control #undef USE_SONOFF_L1 // Disable support for Sonoff L1 led control
#undef USE_ELECTRIQ_MOODL // Disable support for ElectriQ iQ-wifiMOODL RGBW LED controller #undef USE_ELECTRIQ_MOODL // Disable support for ElectriQ iQ-wifiMOODL RGBW LED controller
#undef USE_LIGHT_PALETTE // Disable support for color palette (+0k9 code) #undef USE_LIGHT_PALETTE // Disable support for color palette (+0k9 code)
#undef USE_SHELLY_DIMMER // Disable support for Shelly Dimmer (+2k4 code) #undef USE_SHELLY_DIMMER // Disable support for Shelly Dimmer (+3k code)
#undef USE_COUNTER // Disable counters #undef USE_COUNTER // Disable counters
#define USE_ADC_VCC // Display Vcc in Power status. Disable for use as Analog input on selected devices #define USE_ADC_VCC // Display Vcc in Power status. Disable for use as Analog input on selected devices
@ -582,111 +582,6 @@
#endif // SONOFF_ZIGBEEBRIDGE ****************************************************************** #endif // SONOFF_ZIGBEEBRIDGE ******************************************************************
/*********************************************************************************************\
* [tasmota-shelly-dimmer.bin]
* Provide a dedicated Shelly Dimmer image allowing enough code and memory space
\*********************************************************************************************/
#ifdef FIRMWARE_SHELLY_DIMMER
#undef CODE_IMAGE_STR
#define CODE_IMAGE_STR "shelly-dimmer"
#define USE_SHELLY_DIMMER // Add support for Shelly Dimmer (+2k2 code)
#define SHELLY_CMDS // Add command to send co-processor commands (+0k4 code)
#define SHELLY_FW_UPGRADE // Add firmware upgrade option for co-processor (+30k code, +5k mem)
#define SHELLY_DIMMER_DEBUG
// #define SHELLY_VOLTAGE_MON // Add support for reading voltage and current measurment (+?? code)
#define USE_LIGHT // Add Dimmer/Light support
#define USE_ENERGY_SENSOR // Add energy sensors (-14k code)
// -- Optional modules ----------------------------
#undef ROTARY_V1 // Disable support for MI Desk Lamp
#undef USE_SONOFF_RF // Disable support for Sonoff Rf Bridge (+3k2 code)
#undef USE_RF_FLASH // Disable support for flashing the EFM8BB1 chip on the Sonoff RF Bridge. C2CK must be connected to GPIO4, C2D to GPIO5 on the PCB
#undef USE_SONOFF_SC // Disable support for Sonoff Sc (+1k1 code)
#undef USE_TUYA_MCU // Disable support for Tuya Serial MCU
#undef USE_ARMTRONIX_DIMMERS // Disable support for Armtronix Dimmers (+1k4 code)
#undef USE_PS_16_DZ // Disable support for PS-16-DZ Dimmer and Sonoff L1 (+2k code)
#undef USE_SONOFF_IFAN // Disable support for Sonoff iFan02 and iFan03 (+2k code)
#undef USE_ARILUX_RF // Disable support for Arilux RF remote controller
#undef USE_SHUTTER // Disable Shutter support for up to 4 shutter with different motortypes (+6k code)
#undef USE_EXS_DIMMER // Disable support for EX-Store WiFi Dimmer
#undef USE_PWM_DIMMER // Disable support for MJ-SD01/acenx/NTONPOWER PWM dimmers (+4k5 code)
#undef USE_PWM_DIMMER_REMOTE // Disbale support for remote switches to PWM Dimmer
#undef USE_KEELOQ // Disable support for Jarolift rollers by Keeloq algorithm (+4k5 code)
#undef USE_SONOFF_D1 // Disable support for Sonoff D1 Dimmer (+0k7 code)
// -- Optional light modules ----------------------
#undef USE_WS2812 // Disable WS2812 Led string using library NeoPixelBus (+5k code, +1k mem, 232 iram) - Disable by //
#undef USE_MY92X1 // Disable support for MY92X1 RGBCW led controller as used in Sonoff B1, Ailight and Lohas
#undef USE_SM16716 // Disable support for SM16716 RGB LED controller (+0k7 code)
#undef USE_SM2135 // Disable support for SM2135 RGBCW led control as used in Action LSC (+0k6 code)
#undef USE_SONOFF_L1 // Disable support for Sonoff L1 led control
#undef USE_ELECTRIQ_MOODL // Disable support for ElectriQ iQ-wifiMOODL RGBW LED controller
#undef USE_LIGHT_PALETTE // Disable support for color palette (+0k9 code)
#undef USE_DGR_LIGHT_SEQUENCE // Disable support for device group light sequencing (requires USE_DEVICE_GROUPS) (+0k2 code)
#undef USE_I2C // Disable all I2C sensors and devices
#undef USE_SPI // Disable all SPI devices
#undef USE_DISPLAY // Disable Display support
#undef USE_MHZ19 // Disable support for MH-Z19 CO2 sensor
#undef USE_SENSEAIR // Disable support for SenseAir K30, K70 and S8 CO2 sensor
#undef USE_PMS5003 // Disable support for PMS5003 and PMS7003 particle concentration sensor
#undef USE_NOVA_SDS // Disable support for SDS011 and SDS021 particle concentration sensor
#undef USE_HPMA // Disable support for Honeywell HPMA115S0 particle concentration sensor
#undef USE_SR04 // Disable support for HC-SR04 ultrasonic devices (+1k code)
#undef USE_DYP // Disable support for DYP ME-007 ultrasonic distance sensor, serial port version (+0k5 code)
#undef USE_MP3_PLAYER // Disable DFPlayer Mini MP3 Player RB-DFR-562 commands: play, volume and stop
#undef USE_AZ7798 // Disable support for AZ-Instrument 7798 CO2 datalogger
#undef USE_PN532_HSU // Disable support for PN532 using HSU (Serial) interface (+1k8 code, 140 bytes mem)
#undef USE_ZIGBEE // Disable serial communication with Zigbee CC2530 flashed with ZNP
#undef USE_RDM6300 // Disable support for RDM6300 125kHz RFID Reader (+0k8)
#undef USE_IBEACON // Disable support for bluetooth LE passive scan of ibeacon devices (uses HM17 module)
#undef USE_GPS // Disable support for GPS and NTP Server for becoming Stratus 1 Time Source (+ 3.1kb flash, +132 bytes RAM)
#undef USE_HM10 // (ESP8266 only) Disable support for HM-10 as a BLE-bridge for the LYWSD03 (+5k1 code)
#undef USE_MI_ESP32 // (ESP32 only) Disable support for ESP32 as a BLE-bridge (+9k2 mem, +292k flash)
#undef USE_HRXL // Disable support for MaxBotix HRXL-MaxSonar ultrasonic range finders (+0k7)
#undef USE_TASMOTA_CLIENT // Disable support for Arduino Uno/Pro Mini via serial interface including flashing (+2k3 code, 44 mem)
#undef USE_OPENTHERM // Disable support for OpenTherm (+15k code)
#undef USE_MIEL_HVAC // Disable support for Mitsubishi Electric HVAC serial interface (+5k code)
#undef USE_PZEM004T // Disable PZEM004T energy sensor
#undef USE_PZEM_AC // Disable PZEM014,016 Energy monitor
#undef USE_PZEM_DC // Disable PZEM003,017 Energy monitor
#undef USE_MCP39F501 // Disable MCP39F501 Energy monitor as used in Shelly 2
#undef USE_SDM120 // Disable support for Eastron SDM120-Modbus energy meter
#undef USE_SDM630 // Disable support for Eastron SDM630-Modbus energy monitor (+0k6 code)
#undef USE_DDS2382 // Disable support for Hiking DDS2382 Modbus energy monitor (+0k6 code)
#undef USE_DDSU666 // Disable support for Chint DDSU666 Modbus energy monitor (+0k6 code)
#undef USE_SOLAX_X1 // Disable support for Solax X1 series Modbus log info (+3k1 code)
#undef USE_LE01MR // Disable support for F&F LE-01MR Modbus energy meter (+2k code)
#undef USE_BL0940 // Disable support for BL0940 Energy monitor as used in Blitzwolf SHP-10 (+1k6 code)
#undef USE_TELEINFO // Disable support for French Energy Provider metering telemetry
#undef USE_IEM3000 // Disable support for Schneider Electric iEM3000-Modbus series energy monitor (+0k8 code)
#undef USE_WE517 // Disable support for Orno WE517-Modbus energy monitor (+1k code)
#undef USE_DHT // Disable support for DHT11, AM2301 (DHT21, DHT22, AM2302, AM2321) and SI7021 Temperature and Humidity sensor
#undef USE_MAX31855 // Disable MAX31855 K-Type thermocouple sensor using softSPI
#undef USE_MAX31865 // Disable support for MAX31865 RTD sensors using softSPI
#undef USE_LMT01 // Disable support for TI LMT01 temperature sensor, count pulses on single GPIO (+0k5 code)
#undef USE_IR_REMOTE // Disable IR driver
#undef USE_TM1638 // Disable support for TM1638 switches copying Switch1 .. Switch8
#undef USE_HX711 // Disable support for HX711 load cell
#undef USE_TX20_WIND_SENSOR // Disable support for La Crosse TX20 anemometer
#undef USE_TX23_WIND_SENSOR // Disable support for La Crosse TX23 anemometer
#undef USE_WINDMETER // Disable support for analog anemometer (+2k2 code)
#undef USE_RC_SWITCH // Disable support for RF transceiver using library RcSwitch
#undef USE_RF_SENSOR // Disable support for RF sensor receiver (434MHz or 868MHz) (+0k8 code)
#undef USE_HRE // Disable support for Badger HR-E Water Meter (+1k4 code)
#undef USE_A4988_STEPPER // Disable support for A4988_Stepper
#undef DEBUG_THEO // Disable debug code
#undef USE_DEBUG_DRIVER // Disable debug code
#endif // FIRMWARE_SHELLY_DIMMER
/*********************************************************************************************\ /*********************************************************************************************\
* [tasmota-lite.bin] * [tasmota-lite.bin]
@ -749,7 +644,7 @@
#undef USE_SONOFF_L1 // Disable support for Sonoff L1 led control #undef USE_SONOFF_L1 // Disable support for Sonoff L1 led control
#undef USE_ELECTRIQ_MOODL // Disable support for ElectriQ iQ-wifiMOODL RGBW LED controller #undef USE_ELECTRIQ_MOODL // Disable support for ElectriQ iQ-wifiMOODL RGBW LED controller
#undef USE_LIGHT_PALETTE // Disable support for color palette (+0k9 code) #undef USE_LIGHT_PALETTE // Disable support for color palette (+0k9 code)
#undef USE_SHELLY_DIMMER // Disable support for Shelly Dimmer (+2k4 code) #undef USE_SHELLY_DIMMER // Disable support for Shelly Dimmer (+3k code)
#undef USE_COUNTER // Disable counters #undef USE_COUNTER // Disable counters
#define USE_ADC_VCC // Display Vcc in Power status. Disable for use as Analog input on selected devices #define USE_ADC_VCC // Display Vcc in Power status. Disable for use as Analog input on selected devices
@ -882,7 +777,7 @@
#undef USE_ELECTRIQ_MOODL // Disable support for ElectriQ iQ-wifiMOODL RGBW LED controller #undef USE_ELECTRIQ_MOODL // Disable support for ElectriQ iQ-wifiMOODL RGBW LED controller
#undef USE_LIGHT_PALETTE // Disable support for color palette (+0k9 code) #undef USE_LIGHT_PALETTE // Disable support for color palette (+0k9 code)
#undef USE_DGR_LIGHT_SEQUENCE // Disable support for device group light sequencing (requires USE_DEVICE_GROUPS) (+0k2 code) #undef USE_DGR_LIGHT_SEQUENCE // Disable support for device group light sequencing (requires USE_DEVICE_GROUPS) (+0k2 code)
#undef USE_SHELLY_DIMMER // Disable support for Shelly Dimmer (+2k4 code) #undef USE_SHELLY_DIMMER // Disable support for Shelly Dimmer (+3k code)
#undef USE_COUNTER // Disable counters #undef USE_COUNTER // Disable counters
#define USE_ADC_VCC // Display Vcc in Power status. Disable for use as Analog input on selected devices #define USE_ADC_VCC // Display Vcc in Power status. Disable for use as Analog input on selected devices

View File

@ -90,6 +90,13 @@ String EthernetMacAddress(void);
#undef USE_RF_FLASH // Disable RF firmware flash when Sonoff Rf is disabled #undef USE_RF_FLASH // Disable RF firmware flash when Sonoff Rf is disabled
#endif #endif
#ifndef USE_LIGHT
#undef SHELLY_FW_UPGRADE // Disable Shelly Dimmer firmware flash when lights are disabled
#endif
#ifndef USE_SHELLY_DIMMER
#undef SHELLY_FW_UPGRADE // Disable Shelly Dimmer firmware flash when Shelly Dimmer is disabled
#endif
#ifndef APP_INTERLOCK_MODE #ifndef APP_INTERLOCK_MODE
#define APP_INTERLOCK_MODE false // [Interlock] Relay interlock mode #define APP_INTERLOCK_MODE false // [Interlock] Relay interlock mode
#endif #endif

View File

@ -2569,7 +2569,7 @@ void HandleInformation(void)
/*-------------------------------------------------------------------------------------------*/ /*-------------------------------------------------------------------------------------------*/
#if defined(SHELLY_FW_UPGRADE2) #if defined(SHELLY_FW_UPGRADE)
struct { struct {
size_t spi_hex_size; size_t spi_hex_size;
@ -2603,7 +2603,7 @@ void BUploadWriteBuffer(uint8_t *buf, size_t size) {
} }
} }
#endif // USE_TASMOTA_CLIENT or SHELLY_FW_UPGRADE2 #endif // USE_TASMOTA_CLIENT or SHELLY_FW_UPGRADE
void HandleUpgradeFirmware(void) void HandleUpgradeFirmware(void)
{ {
@ -2705,12 +2705,12 @@ void HandleUploadDone(void)
WSContentSend_P(PSTR("%06x'>" D_SUCCESSFUL "</font></b><br>"), WebColor(COL_TEXT_SUCCESS)); WSContentSend_P(PSTR("%06x'>" D_SUCCESSFUL "</font></b><br>"), WebColor(COL_TEXT_SUCCESS));
TasmotaGlobal.restart_flag = 2; // Always restart to re-enable disabled features during update TasmotaGlobal.restart_flag = 2; // Always restart to re-enable disabled features during update
#ifdef SHELLY_FW_UPGRADE2 #ifdef SHELLY_FW_UPGRADE
if (BUpload.ready) { if (BUpload.ready) {
WSContentSend_P(PSTR("<br><div style='text-align:center;'><b>" D_TRANSFER_STARTED " ...</b></div>")); WSContentSend_P(PSTR("<br><div style='text-align:center;'><b>" D_TRANSFER_STARTED " ...</b></div>"));
TasmotaGlobal.restart_flag = 0; // Hold restart as code still needs to be transferred to STM TasmotaGlobal.restart_flag = 0; // Hold restart as code still needs to be transferred to STM
} }
#endif // SHELLY_FW_UPGRADE2 #endif // SHELLY_FW_UPGRADE
#ifdef USE_TASMOTA_CLIENT #ifdef USE_TASMOTA_CLIENT
if (TasmotaClient_GetFlagFlashing()) { if (TasmotaClient_GetFlagFlashing()) {
@ -2729,11 +2729,11 @@ void HandleUploadDone(void)
WSContentSpaceButton(BUTTON_MAIN); WSContentSpaceButton(BUTTON_MAIN);
WSContentStop(); WSContentStop();
#ifdef SHELLY_FW_UPGRADE2 #ifdef SHELLY_FW_UPGRADE
if (BUpload.ready) { if (BUpload.ready) {
ShdFlash(BUploadStartSector() * SPI_FLASH_SEC_SIZE, BUpload.spi_hex_size); ShdFlash(BUploadStartSector() * SPI_FLASH_SEC_SIZE, BUpload.spi_hex_size);
} }
#endif // SHELLY_FW_UPGRADE2 #endif // SHELLY_FW_UPGRADE
#ifdef USE_TASMOTA_CLIENT #ifdef USE_TASMOTA_CLIENT
if (TasmotaClient_GetFlagFlashing()) { if (TasmotaClient_GetFlagFlashing()) {
@ -2827,7 +2827,7 @@ void HandleUploadLoop(void)
if (Web.upload_error != 0) { return; } if (Web.upload_error != 0) { return; }
} else } else
#endif // USE_RF_FLASH #endif // USE_RF_FLASH
#ifdef SHELLY_FW_UPGRADE2 #ifdef SHELLY_FW_UPGRADE
if (ShdPresent() && (0x00 == upload.buf[0]) && (0x10 == upload.buf[1])) { if (ShdPresent() && (0x00 == upload.buf[0]) && (0x10 == upload.buf[1])) {
Update.end(); // End esp8266 update session Update.end(); // End esp8266 update session
Web.upload_file_type = UPL_SHD; Web.upload_file_type = UPL_SHD;
@ -2835,7 +2835,7 @@ void HandleUploadLoop(void)
Web.upload_error = BUploadInit(); Web.upload_error = BUploadInit();
if (Web.upload_error != 0) { return; } if (Web.upload_error != 0) { return; }
} else } else
#endif // SHELLY_FW_UPGRADE2 #endif // SHELLY_FW_UPGRADE
#ifdef USE_TASMOTA_CLIENT #ifdef USE_TASMOTA_CLIENT
if (TasmotaClient_Available() && (upload.buf[0] == ':')) { // Check if this is a ARDUINO CLIENT hex file if (TasmotaClient_Available() && (upload.buf[0] == ':')) { // Check if this is a ARDUINO CLIENT hex file
Update.end(); // End esp8266 update session Update.end(); // End esp8266 update session
@ -2915,12 +2915,12 @@ void HandleUploadLoop(void)
} }
} }
#endif // USE_RF_FLASH #endif // USE_RF_FLASH
#ifdef SHELLY_FW_UPGRADE2 #ifdef SHELLY_FW_UPGRADE
else if (UPL_SHD == Web.upload_file_type) { else if (UPL_SHD == Web.upload_file_type) {
// Write a block // Write a block
BUploadWriteBuffer(upload.buf, upload.currentSize); BUploadWriteBuffer(upload.buf, upload.currentSize);
} }
#endif // SHELLY_FW_UPGRADE2 #endif // SHELLY_FW_UPGRADE
#ifdef USE_TASMOTA_CLIENT #ifdef USE_TASMOTA_CLIENT
else if (UPL_TASMOTACLIENT == Web.upload_file_type) { else if (UPL_TASMOTACLIENT == Web.upload_file_type) {
TasmotaClient_WriteBuffer(upload.buf, upload.currentSize); TasmotaClient_WriteBuffer(upload.buf, upload.currentSize);
@ -2997,13 +2997,13 @@ void HandleUploadLoop(void)
Web.upload_file_type = UPL_TASMOTA; Web.upload_file_type = UPL_TASMOTA;
} }
#endif // USE_RF_FLASH #endif // USE_RF_FLASH
#ifdef SHELLY_FW_UPGRADE2 #ifdef SHELLY_FW_UPGRADE
else if (UPL_SHD == Web.upload_file_type) { else if (UPL_SHD == Web.upload_file_type) {
// Done writing the hex to SPI flash // Done writing the hex to SPI flash
BUpload.ready = true; // So we know on upload success page if it needs to flash hex or do a normal restart BUpload.ready = true; // So we know on upload success page if it needs to flash hex or do a normal restart
Web.upload_file_type = UPL_TASMOTA; Web.upload_file_type = UPL_TASMOTA;
} }
#endif // SHELLY_FW_UPGRADE2 #endif // SHELLY_FW_UPGRADE
#ifdef USE_TASMOTA_CLIENT #ifdef USE_TASMOTA_CLIENT
else if (UPL_TASMOTACLIENT == Web.upload_file_type) { else if (UPL_TASMOTACLIENT == Web.upload_file_type) {
// Done writing the hex to SPI flash // Done writing the hex to SPI flash

View File

@ -29,14 +29,11 @@
* https://shelly.cloud/products/shelly-dimmer-2-smart-home-light-controller/ * https://shelly.cloud/products/shelly-dimmer-2-smart-home-light-controller/
\*********************************************************************************************/ \*********************************************************************************************/
// #define SHELLY_DIMMER_DEBUG
// #define SHELLY_HW_DIMMING
#define XDRV_45 45 #define XDRV_45 45
#define XNRG_31 31 #define XNRG_31 31
#define SHD_DRIVER_MAJOR_VERSION 1 // #define SHELLY_DIMMER_DEBUG
#define SHD_DRIVER_MINOR_VERSION 4 // #define SHELLY_HW_DIMMING
#define SHD_LOGNAME "SHD: " #define SHD_LOGNAME "SHD: "
@ -70,13 +67,8 @@
#ifdef SHELLY_FW_UPGRADE #ifdef SHELLY_FW_UPGRADE
#include <stm32flash.h> #include <stm32flash.h>
#include <fw/shelly/dimmer/stm_v51.4.h>
#endif // SHELLY_FW_UPGRADE #endif // SHELLY_FW_UPGRADE
#ifdef SHELLY_FW_UPGRADE2
#include <stm32flash.h>
#endif // SHELLY_FW_UPGRADE2
#include <TasmotaSerial.h> #include <TasmotaSerial.h>
TasmotaSerial *ShdSerial = nullptr; TasmotaSerial *ShdSerial = nullptr;
@ -111,14 +103,16 @@ struct SHD
} Shd; } Shd;
/*********************************************************************************************\ /*********************************************************************************************\
* SHD firmware update Functions - James * SHD firmware update Functions
\*********************************************************************************************/ \*********************************************************************************************/
#if defined(SHELLY_FW_UPGRADE) || defined(SHELLY_FW_UPGRADE2) #ifdef SHELLY_FW_UPGRADE
void ShdResetToDFUMode() void ShdResetToDFUMode()
{ {
#ifdef SHELLY_DIMMER_DEBUG
AddLog_P(LOG_LEVEL_DEBUG, PSTR(SHD_LOGNAME "Request co-processor reset in dfu mode")); AddLog_P(LOG_LEVEL_DEBUG, PSTR(SHD_LOGNAME "Request co-processor reset in dfu mode"));
#endif // SHELLY_DIMMER_DEBUG
pinMode(Pin(GPIO_SHELLY_DIMMER_RST_INV), OUTPUT); pinMode(Pin(GPIO_SHELLY_DIMMER_RST_INV), OUTPUT);
digitalWrite(Pin(GPIO_SHELLY_DIMMER_RST_INV), LOW); digitalWrite(Pin(GPIO_SHELLY_DIMMER_RST_INV), LOW);
@ -138,7 +132,10 @@ void ShdResetToDFUMode()
bool ShdUpdateFirmware(const uint8_t data[], unsigned int size) bool ShdUpdateFirmware(const uint8_t data[], unsigned int size)
{ {
#ifdef SHELLY_DIMMER_DEBUG
AddLog_P(LOG_LEVEL_DEBUG, PSTR(SHD_LOGNAME "Update firmware")); AddLog_P(LOG_LEVEL_DEBUG, PSTR(SHD_LOGNAME "Update firmware"));
#endif // SHELLY_DIMMER_DEBUG
bool ret = true; bool ret = true;
stm32_t *stm = stm32_init(&Serial, STREAM_SERIAL, 1); stm32_t *stm = stm32_init(&Serial, STREAM_SERIAL, 1);
if (stm) if (stm)
@ -150,7 +147,9 @@ bool ShdUpdateFirmware(const uint8_t data[], unsigned int size)
uint32_t addr, start, end; uint32_t addr, start, end;
stm32_err_t s_err; stm32_err_t s_err;
#ifdef SHELLY_DIMMER_DEBUG
AddLog_P(LOG_LEVEL_DEBUG, PSTR(SHD_LOGNAME "STM32 erase memory")); AddLog_P(LOG_LEVEL_DEBUG, PSTR(SHD_LOGNAME "STM32 erase memory"));
#endif // SHELLY_DIMMER_DEBUG
stm32_erase_memory(stm, 0, STM32_MASS_ERASE); stm32_erase_memory(stm, 0, STM32_MASS_ERASE);
@ -167,8 +166,6 @@ bool ShdUpdateFirmware(const uint8_t data[], unsigned int size)
break; break;
} }
// memcpy(buffer, p_st, len);
// p_st += len;
memcpy(buffer, p_st, sizeof(buffer)); // We need 4-byte bounadry flash access memcpy(buffer, p_st, sizeof(buffer)); // We need 4-byte bounadry flash access
p_st += sizeof(buffer); p_st += sizeof(buffer);
@ -187,21 +184,14 @@ bool ShdUpdateFirmware(const uint8_t data[], unsigned int size)
return ret; return ret;
} }
#endif // SHELLY_FW_UPGRADE
/*********************************************************************************************\
* SHD firmware update Functions - Theo
\*********************************************************************************************/
#ifdef SHELLY_FW_UPGRADE2
bool ShdPresent(void) { bool ShdPresent(void) {
return Shd.present; return Shd.present;
} }
void ShdFlash(uint32_t data, size_t size) { void ShdFlash(uint32_t data, size_t size) {
AddLog_P(LOG_LEVEL_INFO, PSTR(SHD_LOGNAME "Updating firmware v%u.%u with %u bytes"), #ifdef SHELLY_DIMMER_DEBUG
Shd.dimmer.version_major, Shd.dimmer.version_minor, size); AddLog_P(LOG_LEVEL_INFO, PSTR(SHD_LOGNAME "Updating firmware v%u.%u with %u bytes"), Shd.dimmer.version_major, Shd.dimmer.version_minor, size);
#endif // SHELLY_DIMMER_DEBUG
Serial.end(); Serial.end();
Serial.begin(115200, SERIAL_8E1); Serial.begin(115200, SERIAL_8E1);
@ -219,7 +209,7 @@ void ShdFlash(uint32_t data, size_t size) {
TasmotaGlobal.restart_flag = 2; // Restart to re-init stopped services TasmotaGlobal.restart_flag = 2; // Restart to re-init stopped services
} }
#endif // SHELLY_FW_UPGRADE2 #endif // SHELLY_FW_UPGRADE
/*********************************************************************************************\ /*********************************************************************************************\
* Helper Functions * Helper Functions
@ -572,12 +562,9 @@ bool ShdPacketProcess(void)
break; break;
case SHD_VERSION_CMD: case SHD_VERSION_CMD:
{ {
#ifdef SHELLY_FW_UPGRADE #ifdef SHELLY_DIMMER_DEBUG
ret = Shd.buffer[pos] == SHD_FIRMWARE_MINOR_VERSION &&
Shd.buffer[pos + 1] == SHD_FIRMWARE_MAJOR_VERSION;
#endif // SHELLY_FW_UPGRADE
AddLog_P(LOG_LEVEL_DEBUG, PSTR(SHD_LOGNAME "ShdPacketProcess: Version: %u.%u"), Shd.buffer[pos + 1], Shd.buffer[pos]); AddLog_P(LOG_LEVEL_DEBUG, PSTR(SHD_LOGNAME "ShdPacketProcess: Version: %u.%u"), Shd.buffer[pos + 1], Shd.buffer[pos]);
#endif // SHELLY_DIMMER_DEBUG
Shd.dimmer.version_minor = Shd.buffer[pos]; Shd.dimmer.version_minor = Shd.buffer[pos];
Shd.dimmer.version_major = Shd.buffer[pos + 1]; Shd.dimmer.version_major = Shd.buffer[pos + 1];
} }
@ -599,7 +586,9 @@ bool ShdPacketProcess(void)
void ShdResetToAppMode() void ShdResetToAppMode()
{ {
#ifdef SHELLY_DIMMER_DEBUG
AddLog_P(LOG_LEVEL_DEBUG, PSTR(SHD_LOGNAME "Request co-processor reset in app mode")); AddLog_P(LOG_LEVEL_DEBUG, PSTR(SHD_LOGNAME "Request co-processor reset in app mode"));
#endif // SHELLY_DIMMER_DEBUG
pinMode(Pin(GPIO_SHELLY_DIMMER_RST_INV), OUTPUT); pinMode(Pin(GPIO_SHELLY_DIMMER_RST_INV), OUTPUT);
digitalWrite(Pin(GPIO_SHELLY_DIMMER_RST_INV), LOW); digitalWrite(Pin(GPIO_SHELLY_DIMMER_RST_INV), LOW);
@ -669,9 +658,8 @@ void ShdSaveSettings(void)
void ShdInit(void) void ShdInit(void)
{ {
AddLog_P(LOG_LEVEL_INFO, PSTR(SHD_LOGNAME "Shelly Dimmer Driver v%u.%u"), SHD_DRIVER_MAJOR_VERSION, SHD_DRIVER_MINOR_VERSION);
#ifdef SHELLY_DIMMER_DEBUG #ifdef SHELLY_DIMMER_DEBUG
AddLog_P(LOG_LEVEL_INFO, PSTR(SHD_LOGNAME "Starting Tx %d Rx %d"), Pin(GPIO_TXD), Pin(GPIO_RXD)); AddLog_P(LOG_LEVEL_INFO, PSTR(SHD_LOGNAME "Shelly Dimmer Driver Starting Tx %d Rx %d"), Pin(GPIO_TXD), Pin(GPIO_RXD));
#endif // SHELLY_DIMMER_DEBUG #endif // SHELLY_DIMMER_DEBUG
Shd.buffer = (uint8_t *)malloc(SHD_BUFFER_SIZE); Shd.buffer = (uint8_t *)malloc(SHD_BUFFER_SIZE);
@ -688,25 +676,6 @@ void ShdInit(void)
ShdResetToAppMode(); ShdResetToAppMode();
bool got_version = ShdSendVersion(); bool got_version = ShdSendVersion();
AddLog_P(LOG_LEVEL_INFO, PSTR(SHD_LOGNAME "Shelly Dimmer Co-processor Version v%u.%u"), Shd.dimmer.version_major, Shd.dimmer.version_minor); AddLog_P(LOG_LEVEL_INFO, PSTR(SHD_LOGNAME "Shelly Dimmer Co-processor Version v%u.%u"), Shd.dimmer.version_major, Shd.dimmer.version_minor);
#ifdef SHELLY_FW_UPGRADE
if (!got_version || (got_version &&
(Shd.dimmer.version_minor != SHD_FIRMWARE_MINOR_VERSION ||
Shd.dimmer.version_major != SHD_FIRMWARE_MAJOR_VERSION)))
{
AddLog_P(LOG_LEVEL_INFO, PSTR(SHD_LOGNAME "Updating firmware from v%u.%u to v%u.%u with %u bytes"), Shd.dimmer.version_major, Shd.dimmer.version_minor, SHD_FIRMWARE_MAJOR_VERSION, SHD_FIRMWARE_MINOR_VERSION, sizeof(stm_firmware));
Serial.end();
Serial.begin(115200, SERIAL_8E1);
ShdResetToDFUMode();
ShdUpdateFirmware(stm_firmware, sizeof(stm_firmware));
Serial.end();
ShdResetToAppMode();
Serial.begin(115200, SERIAL_8N1);
ShdSendVersion();
}
#endif // SHELLY_FW_UPGRADE
ShdGetSettings(); ShdGetSettings();
ShdSaveSettings(); ShdSaveSettings();
@ -745,12 +714,14 @@ bool ShdSerialInput(void)
else if (check == 0) else if (check == 0)
{ {
// wrong data // wrong data
#ifdef SHELLY_DIMMER_DEBUG
AddLog_P(LOG_LEVEL_DEBUG, PSTR(SHD_LOGNAME "Byte %i of received data frame is invalid"), Shd.byte_counter); AddLog_P(LOG_LEVEL_DEBUG, PSTR(SHD_LOGNAME "Byte %i of received data frame is invalid"), Shd.byte_counter);
Shd.byte_counter++; Shd.byte_counter++;
snprintf_P(TasmotaGlobal.log_data, sizeof(TasmotaGlobal.log_data), PSTR(SHD_LOGNAME "RX Packet:")); snprintf_P(TasmotaGlobal.log_data, sizeof(TasmotaGlobal.log_data), PSTR(SHD_LOGNAME "RX Packet:"));
for (uint32_t i = 0; i < Shd.byte_counter; i++) for (uint32_t i = 0; i < Shd.byte_counter; i++)
snprintf_P(TasmotaGlobal.log_data, sizeof(TasmotaGlobal.log_data), PSTR("%s %02x"), TasmotaGlobal.log_data, Shd.buffer[i]); snprintf_P(TasmotaGlobal.log_data, sizeof(TasmotaGlobal.log_data), PSTR("%s %02x"), TasmotaGlobal.log_data, Shd.buffer[i]);
AddLog(LOG_LEVEL_DEBUG_MORE); AddLog(LOG_LEVEL_DEBUG_MORE);
#endif // SHELLY_DIMMER_DEBUG
Shd.byte_counter = 0; Shd.byte_counter = 0;
} }
else else
@ -799,7 +770,9 @@ bool ShdSetChannels(void)
bool ShdSetPower(void) bool ShdSetPower(void)
{ {
#ifdef SHELLY_DIMMER_DEBUG
AddLog_P(LOG_LEVEL_INFO, PSTR(SHD_LOGNAME "Set Power, Power 0x%02x"), XdrvMailbox.index); AddLog_P(LOG_LEVEL_INFO, PSTR(SHD_LOGNAME "Set Power, Power 0x%02x"), XdrvMailbox.index);
#endif // SHELLY_DIMMER_DEBUG
Shd.req_on = (bool)XdrvMailbox.index; Shd.req_on = (bool)XdrvMailbox.index;
return ShdSyncState(); return ShdSyncState();
@ -823,10 +796,12 @@ void CmndShdLeadingEdge(void)
{ {
Shd.leading_edge = 2 - XdrvMailbox.payload; Shd.leading_edge = 2 - XdrvMailbox.payload;
Settings.shd_leading_edge = XdrvMailbox.payload; Settings.shd_leading_edge = XdrvMailbox.payload;
#ifdef SHELLY_DIMMER_DEBUG
if (Shd.leading_edge == 1) if (Shd.leading_edge == 1)
AddLog_P(LOG_LEVEL_DEBUG, PSTR(SHD_LOGNAME "Set to trailing edge")); AddLog_P(LOG_LEVEL_DEBUG, PSTR(SHD_LOGNAME "Set to trailing edge"));
else else
AddLog_P(LOG_LEVEL_DEBUG, PSTR(SHD_LOGNAME "Set to leading edge")); AddLog_P(LOG_LEVEL_DEBUG, PSTR(SHD_LOGNAME "Set to leading edge"));
#endif // SHELLY_DIMMER_DEBUG
ShdSendSettings(); ShdSendSettings();
} }
ShdSaveSettings(); ShdSaveSettings();
@ -839,7 +814,9 @@ void CmndShdWarmupBrightness(void)
{ {
Shd.warmup_brightness = XdrvMailbox.payload * 10; Shd.warmup_brightness = XdrvMailbox.payload * 10;
Settings.shd_warmup_brightness = XdrvMailbox.payload; Settings.shd_warmup_brightness = XdrvMailbox.payload;
#ifdef SHELLY_DIMMER_DEBUG
AddLog_P(LOG_LEVEL_DEBUG, PSTR(SHD_LOGNAME "Set warmup brightness to %d%%"), XdrvMailbox.payload); AddLog_P(LOG_LEVEL_DEBUG, PSTR(SHD_LOGNAME "Set warmup brightness to %d%%"), XdrvMailbox.payload);
#endif // SHELLY_DIMMER_DEBUG
ShdSendSettings(); ShdSendSettings();
} }
ShdSaveSettings(); ShdSaveSettings();
@ -852,7 +829,9 @@ void CmndShdWarmupTime(void)
{ {
Shd.warmup_time = XdrvMailbox.payload; Shd.warmup_time = XdrvMailbox.payload;
Settings.shd_warmup_time = XdrvMailbox.payload; Settings.shd_warmup_time = XdrvMailbox.payload;
#ifdef SHELLY_DIMMER_DEBUG
AddLog_P(LOG_LEVEL_DEBUG, PSTR(SHD_LOGNAME "Set warmup time to %dms"), XdrvMailbox.payload); AddLog_P(LOG_LEVEL_DEBUG, PSTR(SHD_LOGNAME "Set warmup time to %dms"), XdrvMailbox.payload);
#endif // SHELLY_DIMMER_DEBUG
ShdSendSettings(); ShdSendSettings();
} }
ShdSaveSettings(); ShdSaveSettings();