diff --git a/Kconfig b/Kconfig index 5496d5920a0..d2157939e8f 100644 --- a/Kconfig +++ b/Kconfig @@ -313,6 +313,25 @@ config UIMAGE_ENTRY_POINT hex "uImage entry point" default 0x0 +endif + +menuconfig DFU_BINARY + bool "DFU binary format" + select RAW_BINARY + ---help--- + Create the dfu binary used with dfu-utils. + +if DFU_BINARY + +config DFU_BASE + hex "Address DFU image is loaded to" + +config DFU_VID + hex "VID to use for DFU image" + +config DFU_PID + hex "PID to use for DFU image" + endif endmenu # Binary Output Formats diff --git a/arch/arm/include/stm32l4/chip.h b/arch/arm/include/stm32l4/chip.h index 52c5ccae69c..7cd275e2806 100644 --- a/arch/arm/include/stm32l4/chip.h +++ b/arch/arm/include/stm32l4/chip.h @@ -108,8 +108,12 @@ # define STM32L4_NSAI 2 /* SAI1-2 */ # define STM32L4_NSDMMC 1 /* SDMMC interface */ # define STM32L4_NDMA 2 /* DMA1-2 */ +#if defined(CONFIG_STM32L4_STM32L496XX) +# define STM32L4_NPORTS 9 /* 9 GPIO ports, GPIOA-I */ +#else # define STM32L4_NPORTS 8 /* 8 GPIO ports, GPIOA-H */ -# define STM32L4_NADC 3 /* 12-bit ADC1-3, 24 channels (except V series) */ +#endif +# define STM32L4_NADC 3 /* 12-bit ADC1-3, upto 24 channels */ # define STM32L4_NDAC 2 /* 12-bit DAC1-2 */ # define STM32L4_NCRC 1 /* CRC */ # define STM32L4_NCOMP 2 /* Comparators */ diff --git a/arch/arm/src/stm32/Make.defs b/arch/arm/src/stm32/Make.defs index 970ce3ba0c0..3429ba88a4f 100644 --- a/arch/arm/src/stm32/Make.defs +++ b/arch/arm/src/stm32/Make.defs @@ -221,6 +221,10 @@ ifeq ($(CONFIG_COMP),y) CHIP_CSRCS += stm32_comp.c endif +ifeq ($(CONFIG_OPAMP),y) +CHIP_CSRCS += stm32_opamp.c +endif + ifeq ($(CONFIG_STM32_1WIREDRIVER),y) CHIP_CSRCS += stm32_1wire.c endif diff --git a/arch/arm/src/stm32/chip/stm32f33xxx_opamp.h b/arch/arm/src/stm32/chip/stm32f33xxx_opamp.h index a6940bb0550..3a254af3a80 100644 --- a/arch/arm/src/stm32/chip/stm32f33xxx_opamp.h +++ b/arch/arm/src/stm32/chip/stm32f33xxx_opamp.h @@ -54,7 +54,7 @@ /* Register Addresses *******************************************************************************/ -#define STM32_OPAMP2_CSR (STM32_OPAMP2_BASE+STM32_OPAMP2_CSR_OFFSET) +#define STM32_OPAMP2_CSR (STM32_OPAMP_BASE+STM32_OPAMP2_CSR_OFFSET) /* Register Bitfield Definitions ****************************************************/ @@ -66,7 +66,7 @@ #define OPAMP_CSR_VPSEL_SHIFT (3) /* Bits 2-3: OPAMP non inverting input selection */ #define OPAMP_CSR_VPSEL_MASK (3 << OPAMP_CSR_VPSEL_SHIFT) /* 00: Reserved */ -# define OPAMP_CSR_VPSEL_PB13 (1 << OPAMP_CSR_VPSEL_SHIFT) /* 01: PB14 */ +# define OPAMP_CSR_VPSEL_PB14 (1 << OPAMP_CSR_VPSEL_SHIFT) /* 01: PB14 */ # define OPAMP_CSR_VPSEL_PB0 (2 << OPAMP_CSR_VPSEL_SHIFT) /* 10: PB0 */ # define OPAMP_CSR_VPSEL_PA7 (3 << OPAMP_CSR_VPSEL_SHIFT) /* 11: PA7 */ /* Bit 4: Reserved */ @@ -74,7 +74,7 @@ #define OPAMP_CSR_VMSEL_MASK (3 << OPAMP_CSR_VMSEL_SHIFT) # define OPAMP_CSR_VMSEL_PC5 (0 << OPAMP_CSR_VMSEL_SHIFT) /* 00: PC5 */ # define OPAMP_CSR_VMSEL_PA5 (1 << OPAMP_CSR_VMSEL_SHIFT) /* 01: PA5 */ -# define OPAMP_CSR_VMSEL_RESISTOR (2 << OPAMP_CSR_VMSEL_SHIFT) /* 10: Resistor feedback output */ +# define OPAMP_CSR_VMSEL_PGA (2 << OPAMP_CSR_VMSEL_SHIFT) /* 10: Resistor feedback output (PGA mode)*/ # define OPAMP_CSR_VMSEL_FOLLOWER (3 << OPAMP_CSR_VMSEL_SHIFT) /* 11: Follower mode */ #define OPAMP_CSR_TCMEN (1 << 7) /* Bit 7: Timer controlled Mux mode enable */ #define OPAMP_CSR_VMSSEL (1 << 8) /* Bit 8: OPAMP inverting input secondary selection */ diff --git a/arch/arm/src/stm32/chip/stm32f33xxx_pinmap.h b/arch/arm/src/stm32/chip/stm32f33xxx_pinmap.h index b5b97c88da0..e0ad65fc1af 100644 --- a/arch/arm/src/stm32/chip/stm32f33xxx_pinmap.h +++ b/arch/arm/src/stm32/chip/stm32f33xxx_pinmap.h @@ -337,9 +337,10 @@ #define GPIO_OPAMP2_VINM_1 (GPIO_ANALOG|GPIO_PORTA|GPIO_PIN5) #define GPIO_OPAMP2_VINM_2 (GPIO_ANALOG|GPIO_PORTC|GPIO_PIN5) #define GPIO_OPAMP2_VOUT (GPIO_ANALOG|GPIO_PORTA|GPIO_PIN6) -#define GPIO_OPAMP2_VINP_1 (GPIO_ANALOG|GPIO_PORTA|GPIO_PIN7) -#define GPIO_OPAMP2_VINP_2 (GPIO_ANALOG|GPIO_PORTB|GPIO_PIN0) -#define GPIO_OPAMP2_VINP_3 (GPIO_ANALOG|GPIO_PORTB|GPIO_PIN14) +#undef GPIO_OPAMP2_VINP_1 /* not supported in F33XX */ +#define GPIO_OPAMP2_VINP_2 (GPIO_ANALOG|GPIO_PORTA|GPIO_PIN7) +#define GPIO_OPAMP2_VINP_3 (GPIO_ANALOG|GPIO_PORTB|GPIO_PIN0) +#define GPIO_OPAMP2_VINP_4 (GPIO_ANALOG|GPIO_PORTB|GPIO_PIN14) /* TSC */ diff --git a/arch/arm/src/stm32/stm32.h b/arch/arm/src/stm32/stm32.h index 534d30246c0..56225ee211d 100644 --- a/arch/arm/src/stm32/stm32.h +++ b/arch/arm/src/stm32/stm32.h @@ -69,6 +69,7 @@ #include "stm32_gpio.h" #include "stm32_i2c.h" #include "stm32_ltdc.h" +#include "stm32_opamp.h" #include "stm32_pwr.h" #include "stm32_rcc.h" #include "stm32_rtc.h" diff --git a/arch/arm/src/stm32/stm32_i2c.c b/arch/arm/src/stm32/stm32_i2c.c index f754a6ad185..5f3e1c2c5c9 100644 --- a/arch/arm/src/stm32/stm32_i2c.c +++ b/arch/arm/src/stm32/stm32_i2c.c @@ -1454,8 +1454,8 @@ static int stm32_i2c_isr_process(struct stm32_i2c_priv_s *priv) * ************************************************************************************/ -#ifdef CONFIG_I2C_POLLED -static int stm32_i2c2_isr(int irq, void *context, FAR void *arg) +#ifndef CONFIG_I2C_POLLED +static int stm32_i2c_isr(int irq, void *context, FAR void *arg) { struct stm32_i2c_priv_s *priv = (struct stm32_i2c_priv_s *)arg; diff --git a/arch/arm/src/stm32/stm32_opamp.c b/arch/arm/src/stm32/stm32_opamp.c new file mode 100644 index 00000000000..e79e8ed8068 --- /dev/null +++ b/arch/arm/src/stm32/stm32_opamp.c @@ -0,0 +1,1418 @@ +/**************************************************************************** + * arch/arm/src/stm32/stm32_opamp.c + * + * Copyright (C) 2017 Gregory Nutt. All rights reserved. + * Author: Mateusz Szafoni + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + +/**************************************************************************** + * Included Files + ****************************************************************************/ + +#include + +#include +#include +#include +#include + +#include +#include +#include + +#include "chip.h" +#include "stm32_gpio.h" +#include "stm32_opamp.h" + +/* OPAMP "upper half" support must be enabled */ + +#ifdef CONFIG_STM32_OPAMP + +/* Some OPAMP peripheral must be enabled */ +/* Up to 4 OPAMPs in STM32F3 Series */ + +#if defined(CONFIG_STM32_OPAMP1) || defined(CONFIG_STM32_OPAMP2) || \ + defined(CONFIG_STM32_OPAMP3) || defined(CONFIG_STM32_OPAMP4) + +#ifndef CONFIG_STM32_SYSCFG +# error "SYSCFG clock enable must be set" +#endif + +/* @TODO: support for STM32F30XX opamps */ + +#if defined(CONFIG_STM32_STM32F30XX) || defined(CONFIG_STM32_STM32F33XX) + +/* Currently only STM32F33XX supported */ + +#if defined(CONFIG_STM32_STM32F30XX) +# error "Not supported yet" +#endif + +#if defined(CONFIG_STM32_STM32F33XX) +# if defined(CONFIG_STM32_OPAMP1) || defined(CONFIG_STM32_OPAMP3) || \ + defined(CONFIG_STM32_OPAMP4) +# error "STM32F33 supports only OPAMP2" +# endif +#endif + +/**************************************************************************** + * Pre-processor Definitions + ****************************************************************************/ + +/* OPAMPs default configuration *********************************************/ + +#ifdef CONFIG_STM32_OPAMP1 +# ifndef OPAMP1_MODE +# define OPAMP1_MODE OPAMP_MODE_DEFAULT +# endif +# ifndef OPAMP1_MUX +# define OPAMP1_MUX OPAMP_MUX_DEFAULT +# endif +# ifndef OPAMP1_USERCAL +# define OPAMP1_USERCAL OPAMP_USERCAL_DEFAULT +# endif +# ifndef OPAMP1_LOCK +# define OPAMP1_LOCK OPAMP_LOCK_DEFAULT +# endif +# ifndef OPAMP1_GAIN +# define OPAMP1_GAIN OPAMP_GAIN_DEFAULT +# endif +#endif +#ifdef CONFIG_STM32_OPAMP2 +# ifndef OPAMP2_MODE +# define OPAMP2_MODE OPAMP_MODE_DEFAULT +# endif +# ifndef OPAMP2_MUX +# define OPAMP2_MUX OPAMP_MUX_DEFAULT +# endif +# ifndef OPAMP2_USERCAL +# define OPAMP2_USERCAL OPAMP_USERCAL_DEFAULT +# endif +# ifndef OPAMP2_LOCK +# define OPAMP2_LOCK OPAMP_LOCK_DEFAULT +# endif +# ifndef OPAMP2_GAIN +# define OPAMP2_GAIN OPAMP_GAIN_DEFAULT +# endif +#endif +#ifdef CONFIG_STM32_OPAMP3 +# ifndef OPAMP3_MODE +# define OPAMP3_MODE OPAMP_MODE_DEFAULT +# endif +# ifndef OPAMP3_MUX +# define OPAMP3_MUX OPAMP_MUX_DEFAULT +# endif +# ifndef OPAMP3_USERCAL +# define OPAMP3_USERCAL OPAMP_USERCAL_DEFAULT +# endif +# ifndef OPAMP3_LOCK +# define OPAMP3_LOCK OPAMP_LOCK_DEFAULT +# endif +# ifndef OPAMP3_GAIN +# define OPAMP3_GAIN OPAMP_GAIN_DEFAULT +# endif +#endif +#ifdef CONFIG_STM32_OPAMP4 +# ifndef OPAMP4_MODE +# define OPAMP4_MODE OPAMP_MODE_DEFAULT +# endif +# ifndef OPAMP4_MUX +# define OPAMP4_MUX OPAMP_MUX_DEFAULT +# endif +# ifndef OPAMP4_USERCAL +# define OPAMP4_USERCAL OPAMP_USERCAL_DEFAULT +# endif +# ifndef OPAMP4_LOCK +# define OPAMP4_LOCK OPAMP_LOCK_DEFAULT +# endif +# ifndef OPAMP4_GAIN +# define OPAMP4_GAIN OPAMP_GAIN_DEFAULT +# endif +#endif + +/* Some assertions *******************************************************/ + +/* Check OPAMPs inputs selection */ + +#ifdef CONFIG_STM32_OPAMP1 +# if (OPAMP1_MODE == OPAMP_MODE_FOLLOWER) +# define OPAMP1_VMSEL OPAMP1_VMSEL_FOLLOWER +# endif +# if (OPAMP1_MODE == OPAMP_MODE_PGA) +# define OPAMP1_VMSEL OPAMP1_VMSEL_PGA +# endif +# if (OPAMP1_MODE == OPAMP_MODE_STANDALONE) +# ifndef OPAMP1_VMSEL +# error "OPAMP1_VMSEL must be selected in standalone mode!" +# endif +# endif +# ifndef OPAMP1_VPSEL +# error "OPAMP1_VPSEL must be slected in standalone mode!" +# endif +#endif +#ifdef CONFIG_STM32_OPAMP2 +# if (OPAMP2_MODE == OPAMP_MODE_FOLLOWER) +# define OPAMP2_VMSEL OPAMP2_VMSEL_FOLLOWER +# endif +# if (OPAMP2_MODE == OPAMP_MODE_PGA) +# define OPAMP2_VMSEL OPAMP2_VMSEL_PGA +# endif +# if (OPAMP2_MODE == OPAMP_MODE_STANDALONE) +# ifndef OPAMP2_VMSEL +# error "OPAMP2_VMSEL must be selected in standalone mode!" +# endif +# endif +# ifndef OPAMP2_VPSEL +# error "OPAMP2_VPSEL must be slected in standalone mode!" +# endif +#endif +#ifdef CONFIG_STM32_OPAMP3 +# if (OPAMP3_MODE == OPAMP_MODE_FOLLOWER) +# define OPAMP3_VMSEL OPAMP3_VMSEL_FOLLOWER +# endif +# if (OPAMP3_MODE == OPAMP_MODE_PGA) +# define OPAMP3_VMSEL OPAMP3_VMSEL_PGA +# endif +# if (OPAMP3_MODE == OPAMP_MODE_STANDALONE) +# ifndef OPAMP3_VMSEL +# error "OPAMP3_VMSEL must be selected in standalone mode!" +# endif +# endif +# ifndef OPAMP3_VPSEL +# error "OPAMP3_VPSEL must be slected in standalone mode!" +# endif +#endif +#ifdef CONFIG_STM32_OPAMP4 +# if (OPAMP4_MODE == OPAMP_MODE_FOLLOWER) +# define OPAMP4_VMSEL OPAMP4_VMSEL_FOLLOWER +# endif +# if (OPAMP4_MODE == OPAMP_MODE_PGA) +# define OPAMP4_VMSEL OPAMP4_VMSEL_PGA +# endif +# if (OPAMP4_MODE == OPAMP_MODE_STANDALONE) +# ifndef OPAMP4_VMSEL +# error "OPAMP4_VMSEL must be selected in standalone mode!" +# endif +# endif +# ifndef OPAMP4_VPSEL +# error "OPAMP4_VPSEL must be slected in standalone mode!" +# endif +#endif + +/* When OPAMP MUX enabled, make sure that secondary selection inputs are configured */ + +#ifdef CONFIG_STM32_OPAMP1 +# if (OPAMP1_MUX == OPAMP_MUX_ENABLE) +# if !defined(OPAMP1_VMSSEL) || !defined(OPAMP1_VPSSEL) +# error "OPAMP1_VMSSEL and OPAMP1_VPSSEL must be selected when OPAMP1 MUX enabled!" +# endif +# endif +#endif +#ifdef CONFIG_STM32_OPAMP2 +# if (OPAMP2_MUX == OPAMP_MUX_ENABLE) +# if !defined(OPAMP2_VMSSEL) || !defined(OPAMP2_VPSSEL) +# error "OPAMP2_VMSSEL and OPAMP2_VPSSEL must be selected when OPAMP2 MUX enabled!" +# endif +# endif +#endif +#ifdef CONFIG_STM32_OPAMP3 +# if (OPAMP3_MUX == OPAMP_MUX_ENABLE) +# if !defined(OPAMP3_VMSSEL) || !defined(OPAMP3_VPSSEL) +# error "OPAMP3_VMSSEL and OPAMP3_VPSSEL must be selected when OPAMP3 MUX enabled!" +# endif +# endif +#endif +#ifdef CONFIG_STM32_OPAMP4 +# if (OPAMP4_MUX == OPAMP_MUX_ENABLE) +# if !defined(OPAMP4_VMSSEL) || !defined(OPAMP4_VPSSEL) +# error "OPAMP4_VMSSEL and OPAMP4_VPSSEL must be selected when OPAMP4 MUX enabled!" +# endif +# endif +#endif + +/**************************************************************************** + * Private Types + ****************************************************************************/ + +/* This structure describes the configuration of one OPAMP device */ + +struct stm32_opamp_s +{ + uint32_t csr; /* Control and status register */ + + uint8_t lock:1; /* OPAMP lock */ + uint8_t mux:1; /* Timer controlled MUX mode */ + uint8_t mode:2; /* OPAMP mode */ + uint8_t gain:4; /* OPAMP gain in PGA mode */ + + uint8_t vm_sel:2; /* Inverting input selection */ + uint8_t vp_sel:2; /* Non inverting input selection */ + uint8_t vms_sel:2; /* Inverting input secondary selection (MUX mode) */ + uint8_t vps_sel:2; /* Non inverting input secondary selection (Mux mode) */ + + uint16_t trim_n:5; /* Offset trimming value (NMOS) */ + uint16_t trim_p:5; /* Offset trimming value (PMOS) */ + uint16_t _reserved:6; /* reserved for calibration */ +}; + +/**************************************************************************** + * Private Function Prototypes + ****************************************************************************/ + +/* OPAMP Register access */ + +static inline void opamp_modify_csr(FAR struct stm32_opamp_s *priv, + uint32_t clearbits, uint32_t setbits); +static inline uint32_t opamp_getreg_csr(FAR struct stm32_opamp_s* priv); +static inline void opamp_putreg_csr(FAR struct stm32_opamp_s* priv, + uint32_t value); +static bool stm32_opamplock_get(FAR struct stm32_opamp_s *priv); +static int stm32_opamplock(FAR struct stm32_opamp_s *priv, bool lock); + +/* Initialization */ + +static int stm32_opampconfig(FAR struct stm32_opamp_s *priv); +static int stm32_opampenable(FAR struct stm32_opamp_s *priv, bool enable); +static int stm32_opampgain_set(FAR struct stm32_opamp_s *priv, uint8_t gain); +#if 0 +static int stm32_opampcalibrate(FAR struct stm32_opamp_s *priv); +#endif + +/* OPAMP Driver Methods */ + +static void opamp_shutdown(FAR struct opamp_dev_s *dev); +static int opamp_setup(FAR struct opamp_dev_s *dev); +static int opamp_ioctl(FAR struct opamp_dev_s *dev, int cmd, unsigned long arg); + +/**************************************************************************** + * Private Data + ****************************************************************************/ + +static const struct opamp_ops_s g_opampops = +{ + .ao_shutdown = opamp_shutdown, + .ao_setup = opamp_setup, + .ao_ioctl = opamp_ioctl +}; + +#ifdef CONFIG_STM32_OPAMP1 +static struct stm32_opamp_s g_opamp1priv = +{ + .csr = STM32_OPAMP1_CSR, + .lock = OPAMP1_LOCK, + .mux = OPAMP1_MUX, + .mode = OPAMP1_MODE, + .vm_sel = OPAMP1_VMSEL, + .vp_sel = OPAMP1_VPSEL, +#if OPAMP1_MUX == OPAMP_MUX_ENABLE + .vms_sel = OPAMP1_VMSSEL, + .vps_sel = OPAMP1_VPSSEL, +#endif + .gain = OPAMP1_GAIN +}; + +static struct opamp_dev_s g_opamp1dev = +{ + .ad_ops = &g_opampops, + .ad_priv = &g_opamp1priv +}; +#endif + +#ifdef CONFIG_STM32_OPAMP2 +static struct stm32_opamp_s g_opamp2priv = +{ + .csr = STM32_OPAMP2_CSR, + .lock = OPAMP2_LOCK, + .mux = OPAMP2_MUX, + .mode = OPAMP2_MODE, + .vm_sel = OPAMP2_VMSEL, + .vp_sel = OPAMP2_VPSEL, +#if OPAMP2_MUX == OPAMP_MUX_ENABLE + .vms_sel = OPAMP2_VMSSEL, + .vps_sel = OPAMP2_VPSSEL, +#endif + .gain = OPAMP2_GAIN +}; + +static struct opamp_dev_s g_opamp2dev = + { + .ad_ops = &g_opampops, + .ad_priv = &g_opamp2priv + }; +#endif + +#ifdef CONFIG_STM32_OPAMP3 +static struct stm32_opamp_s g_opamp3priv = +{ + .csr = STM32_OPAMP3_CSR, + .lock = OPAMP3_LOCK, + .mux = OPAMP3_MUX, + .mode = OPAMP3_MODE, + .vm_sel = OPAMP3_VMSEL, + .vp_sel = OPAMP3_VPSEL, +#if OPAMP3_MUX == OPAMP_MUX_ENABLE + .vms_sel = OPAMP3_VMSSEL, + .vps_sel = OPAMP3_VPSSEL, +#endif + .gain = OPAMP3_GAIN +}; + +static struct opamp_dev_s g_opamp3dev = +{ + .ad_ops = &g_opampops, + .ad_priv = &g_opamp3priv +}; +#endif + +#ifdef CONFIG_STM32_OPAMP4 +static struct stm32_opamp_s g_opamp4priv = +{ + .csr = STM32_OPAMP4_CSR, + .lock = OPAMP4_LOCK, + .mux = OPAMP4_MUX, + .mode = OPAMP4_MODE, + .vm_sel = OPAMP4_VMSEL, + .vp_sel = OPAMP4_VPSEL, +#if OPAMP4_MUX == OPAMP_MUX_ENABLE + .vms_sel = OPAMP4_VMSSEL, + .vps_sel = OPAMP4_VPSSEL, +#endif + .gain = OPAMP4_GAIN +}; + +static struct opamp_dev_s g_opamp4dev = +{ + .ad_ops = &g_opampops, + .ad_priv = &g_opamp4priv +}; +#endif + +/**************************************************************************** + * Private Functions + ****************************************************************************/ + +/**************************************************************************** + * Name: opamp_modify_csr + * + * Description: + * Modify the value of a 32-bit OPAMP CSR register (not atomic). + * + * Input Parameters: + * priv - A reference to the OPAMP structure + * clrbits - The bits to clear + * setbits - The bits to set + * + * Returned Value: + * None + * + ****************************************************************************/ + +static inline void opamp_modify_csr(FAR struct stm32_opamp_s *priv, + uint32_t clearbits, uint32_t setbits) +{ + uint32_t csr = priv->csr; + + modifyreg32(csr, clearbits, setbits); +} + +/**************************************************************************** + * Name: opamp_getreg_csr + * + * Description: + * Read the value of an OPAMP CSR register + * + * Input Parameters: + * priv - A reference to the OPAMP structure + * + * Returned Value: + * The current contents of the OPAMP CSR register + * + ****************************************************************************/ + +static inline uint32_t opamp_getreg_csr(FAR struct stm32_opamp_s *priv) +{ + uint32_t csr = priv->csr; + + return getreg32(csr); +} + +/**************************************************************************** + * Name: opamp_putreg_csr + * + * Description: + * Write a value to an OPAMP register. + * + * Input Parameters: + * priv - A reference to the OPAMP structure + * value - The value to write to the OPAMP CSR register + * + * Returned Value: + * None + * + ****************************************************************************/ + +static inline void opamp_putreg_csr(FAR struct stm32_opamp_s *priv, + uint32_t value) +{ + uint32_t csr = priv->csr; + + putreg32(value, csr); +} + +/**************************************************************************** + * Name: stm32_opamp_opamplock_get + * + * Description: + * Get OPAMP lock bit state + * + * Input Parameters: + * priv - A reference to the OPAMP structure + * + * Returned Value: + * True if OPAMP locked, false if not locked + * + ****************************************************************************/ + +static bool stm32_opamplock_get(FAR struct stm32_opamp_s *priv) +{ + uint32_t regval; + + regval = opamp_getreg_csr(priv); + + return (((regval & OPAMP_CSR_LOCK) == 0) ? false : true); +} + +/**************************************************************************** + * Name: stm32_opamplock + * + * Description: + * Lock OPAMP CSR register + * + * Input Parameters: + * priv - A reference to the OPAMP structure + * enable - lock flag + * + * Returned Value: + * 0 on success, a negated errno value on failure + * + ****************************************************************************/ + +static int stm32_opamplock(FAR struct stm32_opamp_s *priv, bool lock) +{ + bool current; + + current = stm32_opamplock_get(priv); + + if (current) + { + if (lock == false) + { + aerr("ERROR: OPAMP LOCK can be cleared only by a system reset\n"); + + return -EPERM; + } + } + else + { + if (lock == true) + { + opamp_modify_csr(priv, 0, OPAMP_CSR_LOCK); + + priv->lock = OPAMP_LOCK_RO; + } + } + + return OK; +} + +/**************************************************************************** + * Name: stm32_opampconfig + * + * Description: + * Configure OPAMP and used I/Os + * + * Input Parameters: + * priv - A reference to the OPAMP structure + * + * Returned Value: + * 0 on success, a negated errno value on failure + * + ****************************************************************************/ + +static int stm32_opampconfig(FAR struct stm32_opamp_s *priv) +{ + uint32_t regval = 0; + int index; + + /* Get OPAMP index */ + + switch (priv->csr) + { +#ifdef CONFIG_STM32_OPAMP1 + case STM32_OPAMP1_CSR: + index = 1; + break; +#endif + +#ifdef CONFIG_STM32_OPAMP2 + case STM32_OPAMP2_CSR: + index = 2; + break; +#endif + +#ifdef CONFIG_STM32_OPAMP3 + case STM32_OPAMP3_CSR: + index = 3; + break; +#endif + +#ifdef CONFIG_STM32_OPAMP4 + case STM32_OPAMP4_CSR: + index = 4; + break; +#endif + + default: + return -EINVAL; + } + + /* Configure non inverting input */ + + switch (index) + { +#ifdef CONFIG_STM32_OPAMP1 + case 1: + { + switch (priv->vp_sel) + { + case OPAMP1_VPSEL_PA7: + stm32_configgpio(GPIO_OPAMP1_VINP_1); + regval |= OPAMP_CSR_VPSEL_PA7; + break; + + case OPAMP1_VPSEL_PA5: + stm32_configgpio(GPIO_OPAMP1_VINP_2); + regval |= OPAMP_CSR_VPSEL_PA5; + break; + + case OPAMP1_VPSEL_PA3: + stm32_configgpio(GPIO_OPAMP1_VINP_3); + regval |= OPAMP_CSR_VPSEL_PA3; + break; + + case OPAMP1_VPSEL_PA1: + stm32_configgpio(GPIO_OPAMP1_VINP_4); + regval |= OPAMP_CSR_VPSEL_PA1; + break; + + default: + return -EINVAL; + } + break; + } +#endif + +#ifdef CONFIG_STM32_OPAMP2 + case 2: + { + switch (priv->vp_sel) + { +#ifndef CONFIG_STM32_STM32F33XX + case OPAMP2_VPSEL_PD14: + stm32_configgpio(GPIO_OPAMP2_VINP_1); + regval |= OPAMP_CSR_VPSEL_PD14; + break; +#endif + case OPAMP2_VPSEL_PB14: + stm32_configgpio(GPIO_OPAMP2_VINP_2); + regval |= OPAMP_CSR_VPSEL_PB14; + break; + + case OPAMP2_VPSEL_PB0: + stm32_configgpio(GPIO_OPAMP2_VINP_3); + regval |= OPAMP_CSR_VPSEL_PB0; + break; + + case OPAMP2_VPSEL_PA7: + stm32_configgpio(GPIO_OPAMP2_VINP_4); + regval |= OPAMP_CSR_VPSEL_PA7; + break; + + default: + return -EINVAL; + } + break; + } +#endif + +#ifdef CONFIG_STM32_OPAMP3 + case 3: + { + switch (priv->vp_sel) + { + case OPAMP3_VPSEL_PB13: + stm32_configgpio(GPIO_OPAMP3_VINP_1); + regval |= OPAMP_CSR_VPSEL_PB13; + break; + + case OPAMP3_VPSEL_PA5: + stm32_configgpio(GPIO_OPAMP3_VINP_2); + regval |= OPAMP_CSR_VPSEL_PA5; + break; + + case OPAMP3_VPSEL_PA1: + stm32_configgpio(GPIO_OPAMP3_VINP_3); + regval |= OPAMP_CSR_VPSEL_PA1; + break; + + case OPAMP3_VPSEL_PB0: + stm32_configgpio(GPIO_OPAMP3_VINP_4); + regval |= OPAMP_CSR_VPSEL_PB0; + break; + + default: + return -EINVAL; + } + break; + } +#endif + +#ifdef CONFIG_STM32_OPAMP4 + case 4: + { + switch (priv->vp_sel) + { + case OPAMP4_VPSEL_PD11: + stm32_configgpio(GPIO_OPAMP4_VINP_1); + regval |= OPAMP_CSR_VPSEL_PD11; + break; + + case OPAMP4_VPSEL_PB11: + stm32_configgpio(GPIO_OPAMP4_VINP_2); + regval |= OPAMP_CSR_VPSEL_PB11; + break; + + case OPAMP4_VPSEL_PA4: + stm32_configgpio(GPIO_OPAMP4_VINP_3); + regval |= OPAMP_CSR_VPSEL_PA4; + break; + + case OPAMP4_VPSEL_PB13: + stm32_configgpio(GPIO_OPAMP4_VINP_4; + regval |= OPAMP_CSR_VPSEL_PB13; + break; + + default: + return -EINVAL; + } + break; + } +#endif + + default: + return -EINVAL; + } + + /* Configure inverting input */ + + switch (index) + { +#ifdef CONFIG_STM32_OPAMP1 + case 1: + { + switch (priv->vm_sel) + { + case OPAMP1_VSEL_PC5: + stm32_configgpio(GPIO_OPAMP1_VINM_1); + regval |= OPAMP_CSR_VMSEL_PC5; + break; + + case OPAMP1_VMSEL_PA3: + stm32_configgpio(GPIO_OPAMP1_VINM_2); + regval |= OPAMP_CSR_VMSEL_PA3; + break; + + case OPAMP1_VMSEL_PGAMODE: + regval |= OPAMP_CSR_VMSEL_PGA; + break; + + case OPAMP1_VMSEL_FOLLOWER: + regval |= OPAMP_CSR_VMSEL_FOLLOWER; + break; + + default: + return -EINVAL; + } + break; + } +#endif + +#ifdef CONFIG_STM32_OPAMP2 + case 2: + { + switch (priv->vm_sel) + { + case OPAMP2_VMSEL_PC5: + stm32_configgpio(GPIO_OPAMP2_VINM_1); + regval |= OPAMP_CSR_VMSEL_PC5; + break; + + case OPAMP2_VMSEL_PA5: + stm32_configgpio(GPIO_OPAMP2_VINM_2); + regval |= OPAMP_CSR_VMSEL_PA5; + break; + + case OPAMP2_VMSEL_PGAMODE: + regval |= OPAMP_CSR_VMSEL_PGA; + break; + + case OPAMP2_VMSEL_FOLLOWER: + regval |= OPAMP_CSR_VMSEL_FOLLOWER; + break; + + default: + return -EINVAL; + } + break; + } +#endif + +#ifdef CONFIG_STM32_OPAMP3 + case 3: + { + switch (priv->vm_sel) + { + case OPAMP3_VMSEL_PB10: + stm32_configgpio(GPIO_OPAMP3_VINM_1); + regval |= OPAMP_CSR_VMSEL_PB10; + break; + + case OPAMP3_VMSEL_PB2: + stm32_configgpio(GPIO_OPAMP3_VINM_2); + regval |= OPAMP_CSR_VMSEL_PB2; + break; + + case OPAMP3_VMSEL_PGAMODE: + regval |= OPAMP_CSR_VMSEL_PGA; + break; + + case OPAMP3_VMSEL_FOLLOWER: + regval |= OPAMP_CSR_VMSEL_FOLLOWER; + break; + + default: + return -EINVAL; + } + break; + } +#endif + +#ifdef CONFIG_STM32_OPAMP4 + case 4: + { + switch (priv->vm_sel) + { + case OPAMP4_VMSEL_PB10: + stm32_configgpio(GPIO_OPAMP4_VINM_1); + regval |= OPAMP_CSR_VMSEL_PB10; + break; + + case OPAMP4_VMSEL_PD8: + stm32_configgpio(GPIO_OPAMP4_VINM_2); + regval |= OPAMP_CSR_VMSEL_PD8; + break; + + case OPAMP4_VMSEL_PGAMODE: + regval |= OPAMP_CSR_VMSEL_PGA; + break; + + case OPAMP4_VMSEL_FOLLOWER: + regval |= OPAMP_CSR_VMSEL_FOLLOWER; + break; + + default: + return -EINVAL; + } + break; + } +#endif + + default: + return -EINVAL; + } + + if (priv->mux == 1) + { + /* Enable Timer controled Mux mode */ + + regval |= OPAMP_CSR_TCMEN; + + /* Configure non inverting secondary input */ + + switch (index) + { +#ifdef CONFIG_STM32_OPAMP1 + case 1: + { + switch (priv->vps_sel) + { + case OPAMP1_VPSEL_PA7: + stm32_configgpio(GPIO_OPAMP1_VINP_1); + regval |= OPAMP_CSR_VPSSEL_PA7; + break; + + case OPAMP1_VPSEL_PA5: + stm32_configgpio(GPIO_OPAMP1_VINP_2); + regval |= OPAMP_CSR_VPSSEL_PA5; + break; + + case OPAMP1_VPSEL_PA3: + stm32_configgpio(GPIO_OPAMP1_VINP_3); + regval |= OPAMP_CSR_VPSSEL_PA3; + break; + + case OPAMP1_VPSEL_PA1: + stm32_configgpio(GPIO_OPAMP1_VINP_4); + regval |= OPAMP_CSR_VPSSEL_PA1; + break; + + default: + return -EINVAL; + } + break; + } +#endif + +#ifdef CONFIG_STM32_OPAMP2 + case 2: + { + switch (priv->vps_sel) + { +#ifndef CONFIG_STM32_STM32F33XX + case OPAMP2_VPSEL_PD14: + stm32_configgpio(GPIO_OPAMP2_VINP_1); + regval |= OPAMP_CSR_VPSSEL_PD14; + break; +#endif + case OPAMP2_VPSEL_PB14: + stm32_configgpio(GPIO_OPAMP2_VINP_2); + regval |= OPAMP_CSR_VPSSEL_PB14; + break; + + case OPAMP2_VPSEL_PB0: + stm32_configgpio(GPIO_OPAMP2_VINP_3); + regval |= OPAMP_CSR_VPSSEL_PB0; + break; + + case OPAMP2_VPSEL_PA7: + stm32_configgpio(GPIO_OPAMP2_VINP_4); + regval |= OPAMP_CSR_VPSSEL_PA7; + break; + + default: + return -EINVAL; + } + break; + } +#endif + +#ifdef CONFIG_STM32_OPAMP3 + case 3: + { + switch (priv->vps_sel) + { + case OPAMP3_VPSEL_PB13: + stm32_configgpio(GPIO_OPAMP3_VINP_1); + regval |= OPAMP_CSR_VPSSEL_PB13; + break; + + case OPAMP3_VPSEL_PA5: + stm32_configgpio(GPIO_OPAMP3_VINP_2); + regval |= OPAMP_CSR_VPSSEL_PA5; + break; + + case OPAMP3_VPSEL_PA1: + stm32_configgpio(GPIO_OPAMP3_VINP_3); + regval |= OPAMP_CSR_VPSSEL_PA1; + break; + + case OPAMP3_VPSEL_PB0: + stm32_configgpio(GPIO_OPAMP3_VINP_4); + regval |= OPAMP_CSR_VPSSEL_PB0; + break; + + default: + return -EINVAL; + } + break; + } +#endif + +#ifdef CONFIG_STM32_OPAMP4 + case 4: + { + switch (priv->vps_sel) + { + case OPAMP4_VPSEL_PD11: + stm32_configgpio(GPIO_OPAMP4_VINP_1); + regval |= OPAMP_CSR_VPSSEL_PD11; + break; + + case OPAMP4_VPSEL_PB11: + stm32_configgpio(GPIO_OPAMP4_VINP_2); + regval |= OPAMP_CSR_VPSSEL_PB11; + break; + + case OPAMP4_VPSEL_PA4: + stm32_configgpio(GPIO_OPAMP4_VINP_3); + regval |= OPAMP_CSR_VPSSEL_PA4; + break; + + case OPAMP4_VPSEL_PB13: + stm32_configgpio(GPIO_OPAMP4_VINP_4); + regval |= OPAMP_CSR_VPSSEL_PB13; + break; + + default: + return -EINVAL; + } + break; + } +#endif + + default: + return -EINVAL; + } + + /* Configure inverting secondary input */ + + switch (index) + { +#ifdef CONFIG_STM32_OPAMP1 + case 1: + { + switch (priv->vms_sel) + { + case OPAMP1_VSEL_PC5: + stm32_configgpio(GPIO_OPAMP1_VINM_1); + regval &= ~OPAMP_CSR_VMSSEL; + break; + + case OPAMP1_VMSEL_PA3: + stm32_configgpio(GPIO_OPAMP1_VINM_2); + regval |= OPAMP_CSR_VMSSEL; + break; + + default: + return -EINVAL; + } + break; + } +#endif + +#ifdef CONFIG_STM32_OPAMP2 + case 2: + { + switch (priv->vms_sel) + { + case OPAMP2_VMSEL_PC5: + stm32_configgpio(GPIO_OPAMP2_VINM_1); + regval &= ~OPAMP_CSR_VMSSEL; + break; + + case OPAMP2_VMSEL_PA5: + stm32_configgpio(GPIO_OPAMP2_VINM_2); + regval |= OPAMP_CSR_VMSSEL; + break; + + default: + return -EINVAL; + } + break; + } +#endif + +#ifdef CONFIG_STM32_OPAMP3 + case 3: + { + switch (priv->vms_sel) + { + case OPAMP3_VMSEL_PB10: + stm32_configgpio(GPIO_OPAMP3_VINM_1); + regval &= ~OPAMP_CSR_VMSSEL; + break; + + case OPAMP3_VMSEL_PB2: + stm32_configgpio(GPIO_OPAMP3_VINM_2); + regval |= OPAMP_CSR_VMSSEL; + break; + + default: + return -EINVAL; + } + break; + } +#endif + +#ifdef CONFIG_STM32_OPAMP4 + case 4: + { + switch (priv->vms_sel) + { + case OPAMP4_VMSEL_PB10: + stm32_configgpio(GPIO_OPAMP4_VINM_1); + regval &= ~OPAMP_CSR_VMSSEL; + break; + + case OPAMP4_VMSEL_PD8: + stm32_configgpio(GPIO_OPAMP4_VINM_2); + regval |= OPAMP_CSR_VMSSEL; + break; + + default: + return -EINVAL; + } + break; + } +#endif + + default: + return -EINVAL; + } + } + + /* Save CSR register */ + + opamp_putreg_csr(priv, regval); + + /* Configure defaul gain in PGA mode */ + + stm32_opampgain_set(priv, priv->gain); + + /* Enable OPAMP */ + + stm32_opampenable(priv, true); + + /* TODO: OPAMP user calibration */ + /* stm32_opampcalibrate(priv); */ + + + /* Lock OPAMP if needed */ + + if (priv->lock == OPAMP_LOCK_RO) + { + stm32_opamplock(priv, true); + } + + return OK; +} + +/**************************************************************************** + * Name: stm32_opampenable + * + * Description: + * Enable/disable OPAMP + * + * Input Parameters: + * priv - A reference to the OPAMP structure + * enable - enable/disable flag + * + * Returned Value: + * 0 on success, a negated errno value on failure + * + ****************************************************************************/ + +static int stm32_opampenable(FAR struct stm32_opamp_s *priv, bool enable) +{ + bool lock; + + ainfo("enable: %d\n", enable ? 1 : 0); + + lock = stm32_opamplock_get(priv); + + if (lock) + { + aerr("ERROR: OPAMP locked!\n"); + + return -EPERM; + } + else + { + if (enable) + { + /* Enable the OPAMP */ + + opamp_modify_csr(priv, 0, OPAMP_CSR_OPAMPEN); + } + else + { + /* Disable the OPAMP */ + + opamp_modify_csr(priv, OPAMP_CSR_OPAMPEN, 0); + } + } + + return OK; +} + +/**************************************************************************** + * Name: stm32_opampgain_set + * + * Description: + * Set OPAMP gain + * + * Input Parameters: + * priv - A reference to the OPAMP structure + * gain - OPAMP gain + * + * Returned Value: + * 0 on success, a negated errno value on failure + * + ****************************************************************************/ + +static int stm32_opampgain_set(FAR struct stm32_opamp_s *priv, uint8_t gain) +{ + bool lock; + uint32_t regval = 0; + + lock = stm32_opamplock_get(priv); + + if (lock) + { + aerr("ERROR: OPAMP locked!\n"); + return -EPERM; + } + + regval = opamp_getreg_csr(priv); + + switch (gain) + { + case OPAMP_GAIN_2: + regval |= OPAMP_CSR_PGAGAIN_2; + break; + case OPAMP_GAIN_4: + regval |= OPAMP_CSR_PGAGAIN_4; + break; + case OPAMP_GAIN_8: + regval |= OPAMP_CSR_PGAGAIN_8; + break; + case OPAMP_GAIN_2_VM0: + regval |= OPAMP_CSR_PGAGAIN_2VM0; + break; + case OPAMP_GAIN_4_VM0: + regval |= OPAMP_CSR_PGAGAIN_4VM0; + break; + case OPAMP_GAIN_8_VM0: + regval |= OPAMP_CSR_PGAGAIN_8VM0; + break; + case OPAMP_GAIN_16_VM0: + regval |= OPAMP_CSR_PGAGAIN_16VM0; + break; + case OPAMP_GAIN_2_VM1: + regval |= OPAMP_CSR_PGAGAIN_2VM1; + break; + case OPAMP_GAIN_4_VM1: + regval |= OPAMP_CSR_PGAGAIN_4VM1; + break; + case OPAMP_GAIN_8_VM1: + regval |= OPAMP_CSR_PGAGAIN_8VM1; + break; + case OPAMP_GAIN_16_VM1: + regval |= OPAMP_CSR_PGAGAIN_16VM1; + break; + default: + aerr("ERROR: Unsupported OPAMP gain\n"); + return -EINVAL; + } + + /* Update gain in OPAMP device structure */ + + priv->gain = gain; + + return OK; + +} + +#if 0 +static int stm32_opampcalibrate(FAR struct stm32_opamp_s *priv) +{ +#warning "Missing logic" + return OK; +} +#endif + +/**************************************************************************** + * Name: opamp_shutdown + * + * Description: + * Disable the OPAMP. This method is called when the OPAMP device is closed. + * This method reverses the operation the setup method. + * Works only if OPAMP device is not locked. + * + * Input Parameters: + * + * Returned Value: + * None + * + ****************************************************************************/ + +static void opamp_shutdown(FAR struct opamp_dev_s *dev) +{ +#warning "Missing logic" +} + +/**************************************************************************** + * Name: opamp_setup + * + * Description: + * Configure the OPAMP. This method is called the first time that the OPAMP + * device is opened. This will occur when the port is first opened. + * This setup includes configuring and attaching OPAMP interrupts. + * Interrupts are all disabled upon return. + * + * Input Parameters: + * + * Returned Value: + * + ****************************************************************************/ + +static int opamp_setup(FAR struct opamp_dev_s *dev) +{ +#warning "Missing logic" + return OK; +} + +/**************************************************************************** + * Name: opamp_ioctl + * + * Description: + * All ioctl calls will be routed through this method. + * + * Input Parameters: + * dev - pointer to device structure used by the driver + * cmd - command + * arg - arguments passed with command + * + * Returned Value: + * + ****************************************************************************/ + +static int opamp_ioctl(FAR struct opamp_dev_s* dev, int cmd, unsigned long arg) +{ +#warning "Missing logic" + return -ENOTTY; +} + +/**************************************************************************** + * Public Functions + ****************************************************************************/ + +/**************************************************************************** + * Name: stm32_opampinitialize + * + * Description: + * Initialize the OPAMP. + * + * Input Parameters: + * intf - The OPAMP interface number. + * + * Returned Value: + * Valid OPAMP device structure reference on succcess; a NULL on failure. + * + * Assumptions: + * 1. Clock to the OPAMP block has enabled, + * 2. Board-specific logic has already configured + * + ****************************************************************************/ + +FAR struct opamp_dev_s* stm32_opampinitialize(int intf) +{ + FAR struct opamp_dev_s *dev; + FAR struct stm32_opamp_s *opamp; + int ret; + + switch (intf) + { +#ifdef CONFIG_STM32_OPAMP1 + case 1: + ainfo("OPAMP1 selected\n"); + dev = &g_opamp1dev; + break; +#endif + +#ifdef CONFIG_STM32_OPAMP2 + case 2: + ainfo("OPAMP2 selected\n"); + dev = &g_opamp2dev; + break; +#endif + +#ifdef CONFIG_STM32_OPAMP3 + case 3: + ainfo("OPAMP3 selected\n"); + dev = &g_opamp3dev; + break; +#endif + +#ifdef CONFIG_STM32_OPAMP4 + case 4: + ainfo("OPAMP4 selected\n"); + dev = &g_opamp4dev; + break; +#endif + + default: + aerr("ERROR: No OPAMP interface defined\n"); + return NULL; + } + + /* Configure selected OPAMP */ + + opamp = dev->ad_priv; + + ret = stm32_opampconfig(opamp); + if (ret < 0) + { + aerr("ERROR: Failed to initialize OPAMP%d: %d\n", intf, ret); + errno = -ret; + return NULL; + } + + return dev; +} + +#endif /* CONFIG_STM32_STM32F30XX || CONFIG_STM32_STM32F33XX*/ + +#endif /* CONFIG_STM32_OPAMP1 || CONFIG_STM32_OPAMP2 || + * CONFIG_STM32_OPAMP3 || CONFIG_STM32_OPAMP4 + */ + +#endif /* CONFIG_STM32_OPAMP */ diff --git a/arch/arm/src/stm32/stm32_opamp.h b/arch/arm/src/stm32/stm32_opamp.h new file mode 100644 index 00000000000..94af6990f9c --- /dev/null +++ b/arch/arm/src/stm32/stm32_opamp.h @@ -0,0 +1,231 @@ +/************************************************************************************ + * arch/arm/src/stm32/stm32_opamp.h + * + * Copyright (C) 2017 Gregory Nutt. All rights reserved. + * Author: Mateusz Szafoni + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ************************************************************************************/ + +#ifndef __ARCH_ARM_SRC_STM32_STM32_OPAMP_H +#define __ARCH_ARM_SRC_STM32_STM32_OPAMP_H + +/************************************************************************************ + * Included Files + ************************************************************************************/ + +#include + +#include "chip.h" + +#ifdef CONFIG_STM32_OPAMP + +#if defined(CONFIG_STM32_STM32F30XX) +# error "OPAMP support for STM32F30XX not implemented yet" +#elif defined(CONFIG_STM32_STM32F33XX) +# include "chip/stm32f33xxx_opamp.h" +#endif + +#include + +/************************************************************************************ + * Pre-processor definitions + ************************************************************************************/ + +/* OPAMP operation mode */ + +#define OPAMP_MODE_STANDALONE 0 +#define OPAMP_MODE_FOLLOWER 1 +#define OPAMP_MODE_PGA 2 + +/* Timer controlled Mux mode */ + +#define OPAMP_MUX_DISABLE 0 +#define OPAMP_MUX_ENABLE 1 + +/* User callibration */ + +#define OPAMP_USERCAL_DISABLE 0 +#define OPAMP_USERCAL_ENABLE 1 + +/* Default configuration */ + +#define OPAMP_MODE_DEFAULT OPAMP_MODE_STANDALONE /* Standalone mode */ +#define OPAMP_MUX_DEFAULT OPAMP_MUX_DISABLE /* MUX disabled */ +#define OPAMP_USERCAL_DEFAULT OPAMP_USERCAL_DISABLE /* User calibration disabled */ +#define OPAMP_GAIN_DEFAULT OPAMP_GAIN_2 /* Gain in PGA mode = 2 */ +#define OPAMP_LOCK_DEFAULT OPAMP_LOCK_RW /* Do not lock CSR register */ + +/************************************************************************************ + * Public Types + ************************************************************************************/ + +/* CSR register lock state */ + +enum stm32_opamp_lock_e +{ + OPAMP_LOCK_RW, + OPAMP_LOCK_RO +}; + +/* Gain in PGA mode */ + +enum stm32_opamp_gain_e +{ + OPAMP_GAIN_2, + OPAMP_GAIN_4, + OPAMP_GAIN_8, + OPAMP_GAIN_2_VM0, + OPAMP_GAIN_4_VM0, + OPAMP_GAIN_8_VM0, + OPAMP_GAIN_16_VM0, + OPAMP_GAIN_2_VM1, + OPAMP_GAIN_4_VM1, + OPAMP_GAIN_8_VM1, + OPAMP_GAIN_16_VM1 +}; + +/* Input selection and secondary input selection use the same GPIOs */ + +#ifdef CONFIG_STM32_OPAMP1 +enum stm32_opamp1_vpsel_e +{ + OPAMP1_VPSEL_PA7, + OPAMP1_VPSEL_PA5, + OPAMP1_VPSEL_PA3, + OPAMP1_VPSEL_PA1 +}; + +enum stm32_opamp1_vmsel_e +{ + OPAMP1_VMSEL_PC5, + OPAMP1_VMSEL_PA3, + OPAMP1_VMSEL_PGAMODE, + OPAMP1_VMSEL_FOLLOWER, +}; +#endif + +#ifdef CONFIG_STM32_OPAMP2 +enum stm32_opamp2_vpsel_e +{ +#ifndef CONFIG_STM32_STM32F33XX + /* TODO: STM32F303xB/C and STM32F358C devices only */ + OPAMP2_VPSEL_PD14, +#endif + OPAMP2_VPSEL_PB14, + OPAMP2_VPSEL_PB0, + OPAMP2_VPSEL_PA7 +}; + +enum stm32_opamp2_vmsel_e +{ + OPAMP2_VMSEL_PC5, + OPAMP2_VMSEL_PA5, + OPAMP2_VMSEL_PGAMODE, + OPAMP2_VMSEL_FOLLOWER +}; +#endif + +#ifdef CONFIG_STM32_OPAMP3 +enum stm32_opamp3_vpsel_e +{ + OPAMP3_VPSEL_PB13, + OPAMP3_VPSEL_PA5, + OPAMP3_VPSEL_PA1, + OPAMP3_VPSEL_PB0 +}; + +enum stm32_opamp3_vmsel_e +{ + OPAMP3_VMSEL_PB10, + OPAMP3_VMSEL_PB2, + OPAMP3_VMSEL_PGAMODE, + OPAMP3_VMSEL_FOLLOWER +}; +#endif + +#ifdef CONFIG_STM32_OPAMP4 +enum stm32_opamp4_vpsel_e +{ + OPAMP4_VPSEL_PD11, + OPAMP4_VPSEL_PB11, + OPAMP4_VPSEL_PA4, + OPAMP4_VPSEL_PB13 +}; + +enum stm32_opamp4_vmsel_e +{ + OPAMP4_VMSEL_PB10, + OPAMP4_VMSEL_PD8, + OPAMP4_VMSEL_PGAMODE, + OPAMP4_VMSEL_FOLLOWER +}; +#endif + +/************************************************************************************ + * Public Function Prototypes + ************************************************************************************/ + +#ifndef __ASSEMBLY__ +#ifdef __cplusplus +#define EXTERN extern "C" +extern "C" +{ +#else +#define EXTERN extern +#endif + +/**************************************************************************** +* Name: stm32_opampinitialize +* +* Description: +* Initialize the OPAMP. +* +* Input Parameters: +* intf - The OPAMP interface number. +* +* Returned Value: +* Valid OPAMP device structure reference on succcess; a NULL on failure. +* +* Assumptions: +* 1. Clock to the OPAMP block has enabled, +* 2. Board-specific logic has already configured +* +****************************************************************************/ + +FAR struct opamp_dev_s* stm32_opampinitialize(int intf); + +#undef EXTERN +#ifdef __cplusplus +} +#endif +#endif /* __ASSEMBLY__ */ + +#endif /* CONFIG_STM32_OPAMP */ +#endif /* __ARCH_ARM_SRC_STM32_STM32_OPAMP_H */ diff --git a/arch/arm/src/stm32/stm32_sdio.c b/arch/arm/src/stm32/stm32_sdio.c index 01d533ba704..db95c008e91 100644 --- a/arch/arm/src/stm32/stm32_sdio.c +++ b/arch/arm/src/stm32/stm32_sdio.c @@ -300,6 +300,8 @@ # endif #endif +#define STM32_SDIO_USE_DEFAULT_BLOCKSIZE ((uint8_t)-1) + /**************************************************************************** * Private Types ****************************************************************************/ @@ -333,6 +335,12 @@ struct stm32_dev_s size_t remaining; /* Number of bytes remaining in the transfer */ uint32_t xfrmask; /* Interrupt enables for data transfer */ + /* Fixed transfer block size support */ + +#ifdef CONFIG_SDIO_BLOCKSETUP + uint8_t block_size; +#endif + /* DMA data transfer support */ bool widebus; /* Required for DMA support */ @@ -443,6 +451,10 @@ static int stm32_attach(FAR struct sdio_dev_s *dev); static int stm32_sendcmd(FAR struct sdio_dev_s *dev, uint32_t cmd, uint32_t arg); +#ifdef CONFIG_SDIO_BLOCKSETUP +static void stm32_blocksetup(FAR struct sdio_dev_s *dev, + unsigned int blocklen, unsigned int nblocks); +#endif static int stm32_recvsetup(FAR struct sdio_dev_s *dev, FAR uint8_t *buffer, size_t nbytes); static int stm32_sendsetup(FAR struct sdio_dev_s *dev, @@ -456,8 +468,6 @@ static int stm32_recvlong(FAR struct sdio_dev_s *dev, uint32_t cmd, uint32_t rlong[4]); static int stm32_recvshort(FAR struct sdio_dev_s *dev, uint32_t cmd, uint32_t *rshort); -static int stm32_recvnotimpl(FAR struct sdio_dev_s *dev, uint32_t cmd, - uint32_t *rnotimpl); /* EVENT handler */ @@ -507,7 +517,7 @@ struct stm32_dev_s g_sdiodev = .attach = stm32_attach, .sendcmd = stm32_sendcmd, #ifdef CONFIG_SDIO_BLOCKSETUP - .blocksetup = stm32_blocksetup, /* Not implemented yet */ + .blocksetup = stm32_blocksetup, #endif .recvsetup = stm32_recvsetup, .sendsetup = stm32_sendsetup, @@ -516,8 +526,8 @@ struct stm32_dev_s g_sdiodev = .recvR1 = stm32_recvshortcrc, .recvR2 = stm32_recvlong, .recvR3 = stm32_recvshort, - .recvR4 = stm32_recvnotimpl, - .recvR5 = stm32_recvnotimpl, + .recvR4 = stm32_recvshort, + .recvR5 = stm32_recvshortcrc, .recvR6 = stm32_recvshortcrc, .recvR7 = stm32_recvshort, .waitenable = stm32_waitenable, @@ -1015,7 +1025,7 @@ static void stm32_dataconfig(uint32_t timeout, uint32_t dlen, uint32_t dctrl) regval = getreg32(STM32_SDIO_DCTRL); regval &= ~(SDIO_DCTRL_DTDIR | SDIO_DCTRL_DTMODE | SDIO_DCTRL_DBLOCKSIZE_MASK); dctrl &= (SDIO_DCTRL_DTDIR | SDIO_DCTRL_DTMODE | SDIO_DCTRL_DBLOCKSIZE_MASK); - regval |= (dctrl | SDIO_DCTRL_DTEN); + regval |= (dctrl | SDIO_DCTRL_DTEN | SDIO_DCTRL_SDIOEN); putreg32(regval, STM32_SDIO_DCTRL); } @@ -1865,6 +1875,34 @@ static int stm32_sendcmd(FAR struct sdio_dev_s *dev, uint32_t cmd, uint32_t arg) return OK; } +/**************************************************************************** + * Name: stm32_blocksetup + * + * Description: + * Configure block size and the number of blocks for next transfer + * + * Input Parameters: + * dev - An instance of the SDIO device interface + * blocklen - The selected block size. + * nblocklen - The number of blocks to transfer + * + * Returned Value: + * None + * + ****************************************************************************/ + +#ifdef CONFIG_SDIO_BLOCKSETUP +static void stm32_blocksetup(FAR struct sdio_dev_s *dev, + unsigned int blocklen, unsigned int nblocks) +{ + struct stm32_dev_s *priv = (struct stm32_dev_s *)dev; + + /* Configure block size for next transfer */ + + priv->block_size = stm32_log2(blocklen); +} +#endif + /**************************************************************************** * Name: stm32_recvsetup * @@ -1911,7 +1949,17 @@ static int stm32_recvsetup(FAR struct sdio_dev_s *dev, FAR uint8_t *buffer, /* Then set up the SDIO data path */ - dblocksize = stm32_log2(nbytes) << SDIO_DCTRL_DBLOCKSIZE_SHIFT; +#ifdef CONFIG_SDIO_BLOCKSETUP + if (priv->block_size != STM32_SDIO_USE_DEFAULT_BLOCKSIZE) + { + dblocksize = priv->block_size << SDIO_DCTRL_DBLOCKSIZE_SHIFT; + } + else +#endif + { + dblocksize = stm32_log2(nbytes) << SDIO_DCTRL_DBLOCKSIZE_SHIFT; + } + stm32_dataconfig(SDIO_DTIMER_DATATIMEOUT, nbytes, dblocksize | SDIO_DCTRL_DTDIR); /* And enable interrupts */ @@ -1965,7 +2013,17 @@ static int stm32_sendsetup(FAR struct sdio_dev_s *dev, FAR const uint8_t *buffer /* Then set up the SDIO data path */ - dblocksize = stm32_log2(nbytes) << SDIO_DCTRL_DBLOCKSIZE_SHIFT; +#ifdef CONFIG_SDIO_BLOCKSETUP + if (priv->block_size != STM32_SDIO_USE_DEFAULT_BLOCKSIZE) + { + dblocksize = priv->block_size << SDIO_DCTRL_DBLOCKSIZE_SHIFT; + } + else +#endif + { + dblocksize = stm32_log2(nbytes) << SDIO_DCTRL_DBLOCKSIZE_SHIFT; + } + stm32_dataconfig(SDIO_DTIMER_DATATIMEOUT, nbytes, dblocksize); /* Enable TX interrupts */ @@ -2061,15 +2119,13 @@ static int stm32_waitresponse(FAR struct sdio_dev_s *dev, uint32_t cmd) case MMCSD_R1_RESPONSE: case MMCSD_R1B_RESPONSE: case MMCSD_R2_RESPONSE: + case MMCSD_R4_RESPONSE: + case MMCSD_R5_RESPONSE: case MMCSD_R6_RESPONSE: events = SDIO_RESPDONE_STA; timeout = SDIO_LONGTIMEOUT; break; - case MMCSD_R4_RESPONSE: - case MMCSD_R5_RESPONSE: - return -ENOSYS; - case MMCSD_R3_RESPONSE: case MMCSD_R7_RESPONSE: events = SDIO_RESPDONE_STA; @@ -2161,6 +2217,7 @@ static int stm32_recvshortcrc(FAR struct sdio_dev_s *dev, uint32_t cmd, uint32_t else if ((cmd & MMCSD_RESPONSE_MASK) != MMCSD_R1_RESPONSE && (cmd & MMCSD_RESPONSE_MASK) != MMCSD_R1B_RESPONSE && + (cmd & MMCSD_RESPONSE_MASK) != MMCSD_R5_RESPONSE && (cmd & MMCSD_RESPONSE_MASK) != MMCSD_R6_RESPONSE) { mcerr("ERROR: Wrong response CMD=%08x\n", cmd); @@ -2276,6 +2333,7 @@ static int stm32_recvshort(FAR struct sdio_dev_s *dev, uint32_t cmd, uint32_t *r #ifdef CONFIG_DEBUG_MEMCARD_INFO if ((cmd & MMCSD_RESPONSE_MASK) != MMCSD_R3_RESPONSE && + (cmd & MMCSD_RESPONSE_MASK) != MMCSD_R4_RESPONSE && (cmd & MMCSD_RESPONSE_MASK) != MMCSD_R7_RESPONSE) { mcerr("ERROR: Wrong response CMD=%08x\n", cmd); @@ -2301,17 +2359,10 @@ static int stm32_recvshort(FAR struct sdio_dev_s *dev, uint32_t cmd, uint32_t *r { *rshort = getreg32(STM32_SDIO_RESP1); } + return ret; } -/* MMC responses not supported */ - -static int stm32_recvnotimpl(FAR struct sdio_dev_s *dev, uint32_t cmd, uint32_t *rnotimpl) -{ - putreg32(SDIO_RESPDONE_ICR | SDIO_CMDDONE_ICR, STM32_SDIO_ICR); - return -ENOSYS; -} - /**************************************************************************** * Name: stm32_waitenable * @@ -2670,7 +2721,17 @@ static int stm32_dmarecvsetup(FAR struct sdio_dev_s *dev, FAR uint8_t *buffer, /* Then set up the SDIO data path */ - dblocksize = stm32_log2(buflen) << SDIO_DCTRL_DBLOCKSIZE_SHIFT; +#ifdef CONFIG_SDIO_BLOCKSETUP + if (priv->block_size != STM32_SDIO_USE_DEFAULT_BLOCKSIZE) + { + dblocksize = priv->block_size << SDIO_DCTRL_DBLOCKSIZE_SHIFT; + } + else +#endif + { + dblocksize = stm32_log2(buflen) << SDIO_DCTRL_DBLOCKSIZE_SHIFT; + } + stm32_dataconfig(SDIO_DTIMER_DATATIMEOUT, buflen, dblocksize | SDIO_DCTRL_DTDIR); /* Configure the RX DMA */ @@ -2739,7 +2800,17 @@ static int stm32_dmasendsetup(FAR struct sdio_dev_s *dev, /* Then set up the SDIO data path */ - dblocksize = stm32_log2(buflen) << SDIO_DCTRL_DBLOCKSIZE_SHIFT; +#ifdef CONFIG_SDIO_BLOCKSETUP + if (priv->block_size != STM32_SDIO_USE_DEFAULT_BLOCKSIZE) + { + dblocksize = priv->block_size << SDIO_DCTRL_DBLOCKSIZE_SHIFT; + } + else +#endif + { + dblocksize = stm32_log2(buflen) << SDIO_DCTRL_DBLOCKSIZE_SHIFT; + } + stm32_dataconfig(SDIO_DTIMER_DATATIMEOUT, buflen, dblocksize); /* Configure the TX DMA */ diff --git a/arch/arm/src/stm32f7/Kconfig b/arch/arm/src/stm32f7/Kconfig index ae131dd2f19..123277ba133 100644 --- a/arch/arm/src/stm32f7/Kconfig +++ b/arch/arm/src/stm32f7/Kconfig @@ -26,7 +26,7 @@ config ARCH_CHIP_STM32F745VE select STM32F7_FLASH_CONFIG_E select STM32F7_IO_CONFIG_V ---help--- - STM32 F7 Cortex M7, 512 320K FLASH, 320K (240+16+64) Kb SRAM + STM32 F7 Cortex M7, 512 FLASH, 320K (240+16+64) Kb SRAM config ARCH_CHIP_STM32F745IG bool "STM32F745IG" @@ -835,7 +835,7 @@ config STM32F7_FLASH_CONFIG_E bool default n -config STM32F7_FLASH_CONFIG_I +config STM32F7_FLASH_CONFIG_G bool default n @@ -844,7 +844,7 @@ config STM32F7_FLASH_CONFIG_I default n choice - prompt "Overrdide Flash Size Designator" + prompt "Override Flash Size Designator" depends on ARCH_CHIP_STM32F7 default STM32F7_FLASH_OVERRIDE_DEFAULT ---help--- @@ -862,7 +862,7 @@ choice Examples: If the STM32F745VE is chosen, the Flash configuration would be 'E', if a variant of - the part with a 2048 KiB Flash is released in the future one could simply select + the part with a 2048 KiB Flash is released in the future one could simply select the 'I' designator here. If an STM32F7xxx Series parts is chosen the default Flash configuration will be set @@ -880,7 +880,7 @@ config STM32F7_FLASH_OVERRIDE_G config STM32F7_FLASH_OVERRIDE_I bool "I 2048KiB" -endchoice # "Overrdide Flash Size Designator" +endchoice # "Override Flash Size Designator" menu "STM32 Peripheral Support" @@ -895,7 +895,6 @@ config STM32F7_HAVE_FSMC bool default n - config STM32F7_HAVE_ETHRNET bool default n @@ -928,7 +927,6 @@ config STM32F7_HAVE_ADC3_DMA bool default n - config STM32F7_HAVE_CAN3 bool default n @@ -966,7 +964,7 @@ config STM32F7_HAVE_DFSDM1 default n # These "hidden" settings are the OR of individual peripheral selections -# indicating that the general capabilitiy is required. +# indicating that the general capability is required. config STM32F7_ADC bool @@ -1616,6 +1614,18 @@ config UART8_RXDMA ---help--- In high data rate usage, Rx DMA may eliminate Rx overrun errors +config STM32F7_SERIAL_RXDMA_BUFFER_SIZE + int "Rx DMA buffer size" + default 32 + depends on USART1_RXDMA || USART2_RXDMA || USART3_RXDMA || UART4_RXDMA || UART5_RXDMA || USART6_RXDMA || UART7_RXDMA || UART8_RXDMA + ---help--- + The DMA buffer size when using RX DMA to emulate a FIFO. + + When streaming data, the generic serial layer will be called + every time the FIFO receives half this number of bytes. + + Value given here will be rounded up to next multiple of 32 bytes. + config SERIAL_DISABLE_REORDERING bool "Disable reordering of ttySx devices." depends on STM32F7_USART1 || STM32F7_USART2 || STM32F7_USART3 || STM32F7_UART4 || STM32F7_UART5 || STM32F7_USART6 || STM32F7_UART7 || STM32F7_UART8 diff --git a/arch/arm/src/stm32f7/chip/stm32f74xx75xx_flash.h b/arch/arm/src/stm32f7/chip/stm32f74xx75xx_flash.h index 74c2759fc94..a7624471d06 100644 --- a/arch/arm/src/stm32f7/chip/stm32f74xx75xx_flash.h +++ b/arch/arm/src/stm32f7/chip/stm32f74xx75xx_flash.h @@ -56,13 +56,11 @@ #define _K(x) ((x)*1024) #if !defined(CONFIG_STM32F7_FLASH_OVERRIDE_DEFAULT) && \ - !defined(CONFIG_STM32_FLASH_OVERRIDE_E) && \ - !defined(CONFIG_STM32_FLASH_OVERRIDE_F) && \ - !defined(CONFIG_STM32_FLASH_OVERRIDE_G) && \ - !defined(CONFIG_STM32_FLASH_CONFIG_E) && \ - !defined(CONFIG_STM32_FLASH_CONFIG_F) && \ - !defined(CONFIG_STM32_FLASH_CONFIG_G) -# define CONFIG_STM32_FLASH_OVERRIDE_E + !defined(CONFIG_STM32F7_FLASH_OVERRIDE_E) && \ + !defined(CONFIG_STM32F7_FLASH_OVERRIDE_G) && \ + !defined(CONFIG_STM32F7_FLASH_CONFIG_E) && \ + !defined(CONFIG_STM32F7_FLASH_CONFIG_G) +# define CONFIG_STM32F7_FLASH_OVERRIDE_E # warning "Flash size not defined defaulting to 512KiB (E)" #endif @@ -82,14 +80,14 @@ # endif #endif -#if defined(CONFIG_STM32_FLASH_CONFIG_E) +#if defined(CONFIG_STM32F7_FLASH_CONFIG_E) # define STM32_FLASH_NPAGES 6 # define STM32_FLASH_SIZE _K((4 * 32) + (1 * 128) + (1 * 256)) # define STM32_FLASH_SIZES {_K(32), _K(32), _K(32), _K(32), \ _K(128), _K(256)} -#elif defined(CONFIG_STM32_FLASH_CONFIG_G) +#elif defined(CONFIG_STM32F7_FLASH_CONFIG_G) # define STM32_FLASH_NPAGES 8 # define STM32_FLASH_SIZE _K((4 * 32) + (1 * 128) + (3 * 256)) diff --git a/arch/arm/src/stm32f7/chip/stm32f76xx77xx_flash.h b/arch/arm/src/stm32f7/chip/stm32f76xx77xx_flash.h index 0b6f764c365..9ceeff02214 100644 --- a/arch/arm/src/stm32f7/chip/stm32f76xx77xx_flash.h +++ b/arch/arm/src/stm32f7/chip/stm32f76xx77xx_flash.h @@ -56,15 +56,13 @@ #define _K(x) ((x)*1024) #if !defined(CONFIG_STM32F7_FLASH_OVERRIDE_DEFAULT) && \ - !defined(CONFIG_STM32_FLASH_OVERRIDE_E) && \ - !defined(CONFIG_STM32_FLASH_OVERRIDE_F) && \ - !defined(CONFIG_STM32_FLASH_OVERRIDE_G) && \ - !defined(CONFIG_STM32_FLASH_OVERRIDE_I) && \ - !defined(CONFIG_STM32_FLASH_CONFIG_E) && \ - !defined(CONFIG_STM32_FLASH_CONFIG_F) && \ - !defined(CONFIG_STM32_FLASH_CONFIG_G) && \ - !defined(CONFIG_STM32_FLASH_CONFIG_I) -# define CONFIG_STM32_FLASH_OVERRIDE_E + !defined(CONFIG_STM32F7_FLASH_OVERRIDE_E) && \ + !defined(CONFIG_STM32F7_FLASH_OVERRIDE_G) && \ + !defined(CONFIG_STM32F7_FLASH_OVERRIDE_I) && \ + !defined(CONFIG_STM32F7_FLASH_CONFIG_E) && \ + !defined(CONFIG_STM32F7_FLASH_CONFIG_G) && \ + !defined(CONFIG_STM32F7_FLASH_CONFIG_I) +# define CONFIG_STM32F7_FLASH_OVERRIDE_E # warning "Flash size not defined defaulting to 512KiB (E)" #endif @@ -89,21 +87,21 @@ # endif #endif -#if defined(CONFIG_STM32_FLASH_CONFIG_E) +#if defined(CONFIG_STM32F7_FLASH_CONFIG_E) # define STM32_FLASH_NPAGES 6 # define STM32_FLASH_SIZE _K((4 * 32) + (1 * 128) + (1 * 256)) # define STM32_FLASH_SIZES {_K(32), _K(32), _K(32), _K(32), \ _K(128), _K(256)} -#elif defined(CONFIG_STM32_FLASH_CONFIG_G) +#elif defined(CONFIG_STM32F7_FLASH_CONFIG_G) # define STM32_FLASH_NPAGES 8 # define STM32_FLASH_SIZE _K((4 * 32) + (1 * 128) + (3 * 256)) # define STM32_FLASH_SIZES {_K(32), _K(32), _K(32), _K(32), \ _K(128), _K(256), _K(256), _K(256)} -#elif defined(CONFIG_STM32_FLASH_CONFIG_I) +#elif defined(CONFIG_STM32F7_FLASH_CONFIG_I) # define STM32_FLASH_NPAGES 12 # define STM32_FLASH_SIZE _K((4 * 32) + (1 * 128) + (7 * 256)) diff --git a/arch/arm/src/stm32f7/stm32_i2c.c b/arch/arm/src/stm32f7/stm32_i2c.c index be3122ea4e2..38c1f08268a 100644 --- a/arch/arm/src/stm32f7/stm32_i2c.c +++ b/arch/arm/src/stm32f7/stm32_i2c.c @@ -2141,7 +2141,7 @@ static int stm32_i2c_isr(int irq, void *context, FAR void *arg) struct stm32_i2c_priv_s *priv = (struct stm32_i2c_priv_s *)arg; DEBUGASSERT(priv != NULL); - return stm32_i2c_isr_process(&stm32_i2c1_priv); + return stm32_i2c_isr_process(priv); } #endif @@ -2189,7 +2189,7 @@ static int stm32_i2c_init(FAR struct stm32_i2c_priv_s *priv) * - Provide means to set peripheral clock source via RCC_CFGR3_I2CxSW * - Set to HSI by default, make Kconfig option */ - + /* Force a frequency update */ priv->frequency = 0; diff --git a/arch/arm/src/stm32f7/stm32_serial.c b/arch/arm/src/stm32f7/stm32_serial.c index 5c2b8b74bcc..ce6e7db9a72 100644 --- a/arch/arm/src/stm32f7/stm32_serial.c +++ b/arch/arm/src/stm32f7/stm32_serial.c @@ -159,15 +159,30 @@ /* The DMA buffer size when using RX DMA to emulate a FIFO. * - * When streaming data, the generic serial layer will be called - * every time the FIFO receives half this number of bytes. + * When streaming data, the generic serial layer will be called every time + * the FIFO receives half this number of bytes. * - * This buffer size should be an even multiple of the Cortex-M7 - * D-Cache line size so that it can be individually invalidated. + * This buffer size should be an even multiple of the Cortex-M7 D-Cache line + * size, ARMV7M_DCACHE_LINESIZE, so that it can be individually invalidated. + * + * Should there be a Cortex-M7 without a D-Cache, ARMV7M_DCACHE_LINESIZE + * would be zero! */ +# if !defined(ARMV7M_DCACHE_LINESIZE) || ARMV7M_DCACHE_LINESIZE == 0 +# undef ARMV7M_DCACHE_LINESIZE +# define ARMV7M_DCACHE_LINESIZE 32 +# endif + +# if !defined(CONFIG_STM32F7_SERIAL_RXDMA_BUFFER_SIZE) || \ + (CONFIG_STM32F7_SERIAL_RXDMA_BUFFER_SIZE < ARMV7M_DCACHE_LINESIZE) +# undef CONFIG_STM32F7_SERIAL_RXDMA_BUFFER_SIZE +# define CONFIG_STM32F7_SERIAL_RXDMA_BUFFER_SIZE ARMV7M_DCACHE_LINESIZE +# endif + # define RXDMA_BUFFER_MASK (ARMV7M_DCACHE_LINESIZE - 1) -# define RXDMA_BUFFER_SIZE ((32 + RXDMA_BUFFER_MASK) & ~RXDMA_BUFFER_MASK) +# define RXDMA_BUFFER_SIZE ((CONFIG_STM32F7_SERIAL_RXDMA_BUFFER_SIZE \ + + RXDMA_BUFFER_MASK) & ~RXDMA_BUFFER_MASK) /* DMA priority */ diff --git a/arch/arm/src/stm32l4/Kconfig b/arch/arm/src/stm32l4/Kconfig index 5af9603644a..28be165f448 100644 --- a/arch/arm/src/stm32l4/Kconfig +++ b/arch/arm/src/stm32l4/Kconfig @@ -61,6 +61,18 @@ endchoice # STM32 L4 Chip Selection # Chip families config STM32L4_STM32L4X3 + bool + default n + select STM32L4_HAVE_USART1 + select STM32L4_HAVE_USART2 + select STM32L4_HAVE_USART3 if !(STM32L4_L432XX || STM32L4_L442XX) + select STM32L4_HAVE_LPTIM1 + select STM32L4_HAVE_LPTIM2 + select STM32L4_HAVE_COMP + select STM32L4_HAVE_SAI1 + select STM32L4_HAVE_LCD if !(STM32L4_STM32L4X1 || STM32L4_STM32L4X2) + +config STM32L4_STM32L4X5 bool default n select STM32L4_HAVE_USART1 @@ -91,18 +103,12 @@ config STM32L4_STM32L476XX default n select STM32L4_STM32L4X6 select ARCH_HAVE_FPU - select ARCH_HAVE_DPFPU # REVISIT - select ARMV7M_HAVE_ITCM - select ARMV7M_HAVE_DTCM config STM32L4_STM32L486XX bool default n select STM32L4_STM32L4X6 select ARCH_HAVE_FPU - select ARCH_HAVE_DPFPU # REVISIT - select ARMV7M_HAVE_ITCM - select ARMV7M_HAVE_DTCM select STM32L4_FLASH_1024KB config STM32L4_STM32L496XX @@ -110,9 +116,6 @@ config STM32L4_STM32L496XX default n select STM32L4_STM32L4X6 select ARCH_HAVE_FPU - select ARCH_HAVE_DPFPU # REVISIT - select ARMV7M_HAVE_ITCM - select ARMV7M_HAVE_DTCM select STM32L4_HAVE_I2C4 select STM32L4_HAVE_CAN2 select STM32L4_HAVE_DCMI diff --git a/arch/arm/src/stm32l4/Make.defs b/arch/arm/src/stm32l4/Make.defs index 359875b63c7..49ee9725394 100644 --- a/arch/arm/src/stm32l4/Make.defs +++ b/arch/arm/src/stm32l4/Make.defs @@ -127,13 +127,6 @@ ifeq ($(CONFIG_BUILD_PROTECTED),y) CHIP_CSRCS += stm32l4_userspace.c stm32l4_mpuinit.c endif -ifeq ($(CONFIG_ARMV7M_DTCM),y) -CHIP_CSRCS += stm32l4_dtcm.c -ifeq ($(CONFIG_STM32L4_DTCM_PROCFS),y) -CHIP_CSRCS += stm32l4_procfs_dtcm.c -endif -endif - ifeq ($(CONFIG_STM32L4_DMA),y) CHIP_CSRCS += stm32l4_dma.c endif diff --git a/arch/arm/src/stm32l4/chip/stm32l4x6xx_gpio.h b/arch/arm/src/stm32l4/chip/stm32l4x6xx_gpio.h index 2e72915e82b..f4f32e7f926 100644 --- a/arch/arm/src/stm32l4/chip/stm32l4x6xx_gpio.h +++ b/arch/arm/src/stm32l4/chip/stm32l4x6xx_gpio.h @@ -166,6 +166,19 @@ # define STM32L4_GPIOH_AFRH (STM32L4_GPIOH_BASE+STM32L4_GPIO_AFRH_OFFSET) #endif +#if STM32L4_NPORTS > 8 +# define STM32L4_GPIOI_MODER (STM32L4_GPIOI_BASE+STM32L4_GPIO_MODER_OFFSET) +# define STM32L4_GPIOI_OTYPER (STM32L4_GPIOI_BASE+STM32L4_GPIO_OTYPER_OFFSET) +# define STM32L4_GPIOI_OSPEED (STM32L4_GPIOI_BASE+STM32L4_GPIO_OSPEED_OFFSET) +# define STM32L4_GPIOI_PUPDR (STM32L4_GPIOI_BASE+STM32L4_GPIO_PUPDR_OFFSET) +# define STM32L4_GPIOI_IDR (STM32L4_GPIOI_BASE+STM32L4_GPIO_IDR_OFFSET) +# define STM32L4_GPIOI_ODR (STM32L4_GPIOI_BASE+STM32L4_GPIO_ODR_OFFSET) +# define STM32L4_GPIOI_BSRR (STM32L4_GPIOI_BASE+STM32L4_GPIO_BSRR_OFFSET) +# define STM32L4_GPIOI_LCKR (STM32L4_GPIOI_BASE+STM32L4_GPIO_LCKR_OFFSET) +# define STM32L4_GPIOI_AFRL (STM32L4_GPIOI_BASE+STM32L4_GPIO_AFRL_OFFSET) +# define STM32L4_GPIOI_AFRH (STM32L4_GPIOI_BASE+STM32L4_GPIO_AFRH_OFFSET) +#endif + /* Register Bitfield Definitions ****************************************************/ /* GPIO port mode register */ diff --git a/arch/arm/src/stm32l4/chip/stm32l4x6xx_pinmap.h b/arch/arm/src/stm32l4/chip/stm32l4x6xx_pinmap.h index 19f90a0148e..4fd685b7176 100644 --- a/arch/arm/src/stm32l4/chip/stm32l4x6xx_pinmap.h +++ b/arch/arm/src/stm32l4/chip/stm32l4x6xx_pinmap.h @@ -163,7 +163,36 @@ #define GPIO_DCMI_HSYNC_1 (GPIO_ALT|GPIO_AF10|GPIO_PORTA|GPIO_PIN4) #define GPIO_DCMI_HSYNC_2 (GPIO_ALT|GPIO_AF10|GPIO_PORTD|GPIO_PIN8) #define GPIO_DCMI_VSYNC_1 (GPIO_ALT|GPIO_AF10|GPIO_PORTB|GPIO_PIN7) -/* TODO: DCMI data pins missing */ +#define GPIO_DCMI_VSYNC_2 (GPIO_ALT|GPIO_AF10|GPIO_PORTI|GPIO_PIN5) + +#define GPIO_DCMI_D0_1 (GPIO_ALT|GPIO_AF5|GPIO_PORTA|GPIO_PIN9) +#define GPIO_DCMI_D0_2 (GPIO_ALT|GPIO_AF10|GPIO_PORTC|GPIO_PIN6) +#define GPIO_DCMI_D1_1 (GPIO_ALT|GPIO_AF5|GPIO_PORTA|GPIO_PIN10) +#define GPIO_DCMI_D1_2 (GPIO_ALT|GPIO_AF10|GPIO_PORTC|GPIO_PIN7) +#define GPIO_DCMI_D2_1 (GPIO_ALT|GPIO_AF10|GPIO_PORTC|GPIO_PIN8) +#define GPIO_DCMI_D2_2 (GPIO_ALT|GPIO_AF10|GPIO_PORTE|GPIO_PIN0) +#define GPIO_DCMI_D3_1 (GPIO_ALT|GPIO_AF4|GPIO_PORTC|GPIO_PIN9) +#define GPIO_DCMI_D3_2 (GPIO_ALT|GPIO_AF10|GPIO_PORTE|GPIO_PIN1) +#define GPIO_DCMI_D4_1 (GPIO_ALT|GPIO_AF10|GPIO_PORTC|GPIO_PIN11) +#define GPIO_DCMI_D4_2 (GPIO_ALT|GPIO_AF10|GPIO_PORTE|GPIO_PIN4) +#define GPIO_DCMI_D5_1 (GPIO_ALT|GPIO_AF4|GPIO_PORTD|GPIO_PIN3) +#define GPIO_DCMI_D5_2 (GPIO_ALT|GPIO_AF10|GPIO_PORTB|GPIO_PIN6) +#define GPIO_DCMI_D6_1 (GPIO_ALT|GPIO_AF10|GPIO_PORTB|GPIO_PIN8) +#define GPIO_DCMI_D6_2 (GPIO_ALT|GPIO_AF10|GPIO_PORTE|GPIO_PIN5) +#define GPIO_DCMI_D7_1 (GPIO_ALT|GPIO_AF10|GPIO_PORTB|GPIO_PIN9) +#define GPIO_DCMI_D7_2 (GPIO_ALT|GPIO_AF10|GPIO_PORTE|GPIO_PIN6) +#define GPIO_DCMI_D8_1 (GPIO_ALT|GPIO_AF10|GPIO_PORTC|GPIO_PIN10) +#define GPIO_DCMI_D8_2 (GPIO_ALT|GPIO_AF10|GPIO_PORTH|GPIO_PIN6) +#define GPIO_DCMI_D9_1 (GPIO_ALT|GPIO_AF10|GPIO_PORTC|GPIO_PIN12) +#define GPIO_DCMI_D9_2 (GPIO_ALT|GPIO_AF10|GPIO_PORTH|GPIO_PIN7) +#define GPIO_DCMI_D10_1 (GPIO_ALT|GPIO_AF4|GPIO_PORTD|GPIO_PIN6) +#define GPIO_DCMI_D10_2 (GPIO_ALT|GPIO_AF10|GPIO_PORTB|GPIO_PIN5) +#define GPIO_DCMI_D11_1 (GPIO_ALT|GPIO_AF10|GPIO_PORTD|GPIO_PIN2) +#define GPIO_DCMI_D11_2 (GPIO_ALT|GPIO_AF10|GPIO_PORTF|GPIO_PIN10) +#define GPIO_DCMI_D12_1 (GPIO_ALT|GPIO_AF10|GPIO_PORTB|GPIO_PIN4) +#define GPIO_DCMI_D12_2 (GPIO_ALT|GPIO_AF10|GPIO_PORTF|GPIO_PIN11) +#define GPIO_DCMI_D13_1 (GPIO_ALT|GPIO_AF10|GPIO_PORTG|GPIO_PIN15) +#define GPIO_DCMI_D13_2 (GPIO_ALT|GPIO_AF10|GPIO_PORTI|GPIO_PIN0) /* Digital Filter for Sigma-Delta Modulators (DFSDM) */ @@ -300,14 +329,15 @@ #define GPIO_I2C4_SDA_2 (GPIO_ALT|GPIO_AF3 |GPIO_PORTB|GPIO_PIN11) #define GPIO_I2C4_SDA_3 (GPIO_ALT|GPIO_AF2 |GPIO_PORTC|GPIO_PIN1) #define GPIO_I2C4_SDA_4 (GPIO_ALT|GPIO_AF4 |GPIO_PORTD|GPIO_PIN13) +#define GPIO_I2C4_SDA_5 (GPIO_ALT|GPIO_AF4 |GPIO_PORTF|GPIO_PIN15) #define GPIO_I2C4_SCL_1 (GPIO_ALT|GPIO_AF5 |GPIO_PORTB|GPIO_PIN6) #define GPIO_I2C4_SCL_2 (GPIO_ALT|GPIO_AF3 |GPIO_PORTB|GPIO_PIN10) #define GPIO_I2C4_SCL_3 (GPIO_ALT|GPIO_AF2 |GPIO_PORTC|GPIO_PIN0) #define GPIO_I2C4_SCL_4 (GPIO_ALT|GPIO_AF4 |GPIO_PORTD|GPIO_PIN12) +#define GPIO_I2C4_SCL_5 (GPIO_ALT|GPIO_AF4 |GPIO_PORTF|GPIO_PIN14) #define GPIO_I2C4_SMBA_1 (GPIO_ALT|GPIO_AF5 |GPIO_PORTA|GPIO_PIN14) #define GPIO_I2C4_SMBA_2 (GPIO_ALT|GPIO_AF4 |GPIO_PORTD|GPIO_PIN11) -#define GPIO_I2C4_SMBA_3 (GPIO_ALT|GPIO_AF4 |GPIO_PORTD|GPIO_PIN11) -#define GPIO_I2C4_SMBA_4 (GPIO_ALT|GPIO_AF4 |GPIO_PORTF|GPIO_PIN13) +#define GPIO_I2C4_SMBA_3 (GPIO_ALT|GPIO_AF4 |GPIO_PORTF|GPIO_PIN13) /* JTAG */ diff --git a/arch/arm/src/stm32l4/stm32l4_dtcm.c b/arch/arm/src/stm32l4/stm32l4_dtcm.c deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/arch/arm/src/stm32l4/stm32l4_gpio.c b/arch/arm/src/stm32l4/stm32l4_gpio.c index 007c3b85148..049c40fd2cf 100644 --- a/arch/arm/src/stm32l4/stm32l4_gpio.c +++ b/arch/arm/src/stm32l4/stm32l4_gpio.c @@ -88,6 +88,9 @@ const uint32_t g_gpiobase[STM32L4_NPORTS] = #if STM32L4_NPORTS > 7 STM32L4_GPIOH_BASE, #endif +#if STM32L4_NPORTS > 8 + STM32L4_GPIOI_BASE, +#endif }; /**************************************************************************** diff --git a/arch/arm/src/stm32l4/stm32l4_gpio.h b/arch/arm/src/stm32l4/stm32l4_gpio.h index f4175d817e9..57076a83ed5 100644 --- a/arch/arm/src/stm32l4/stm32l4_gpio.h +++ b/arch/arm/src/stm32l4/stm32l4_gpio.h @@ -212,6 +212,7 @@ # define GPIO_PORTF (5 << GPIO_PORT_SHIFT) /* GPIOF */ # define GPIO_PORTG (6 << GPIO_PORT_SHIFT) /* GPIOG */ # define GPIO_PORTH (7 << GPIO_PORT_SHIFT) /* GPIOH */ +# define GPIO_PORTI (8 << GPIO_PORT_SHIFT) /* GPIOI */ /* This identifies the bit in the port: * diff --git a/arch/arm/src/stm32l4/stm32l4_i2c.c b/arch/arm/src/stm32l4/stm32l4_i2c.c index 9be4419de44..58c2fa780f8 100644 --- a/arch/arm/src/stm32l4/stm32l4_i2c.c +++ b/arch/arm/src/stm32l4/stm32l4_i2c.c @@ -1535,7 +1535,7 @@ static int stm32l4_i2c_isr_process(struct stm32l4_i2c_priv_s *priv) #ifdef CONFIG_STM32L4_I2C2 static int stm32l4_i2c_isr(int irq, void *context, FAR void *arg) { - struct stm32l4_i2c_priv_s *priv = (struct stm32l4_i2c_priv_s *priv)arg; + struct stm32l4_i2c_priv_s *priv = (struct stm32l4_i2c_priv_s *)arg; DEBUGASSERT(priv != NULL); return stm32l4_i2c_isr_process(priv); diff --git a/arch/arm/src/stm32l4/stm32l4_procfs_dtcm.c b/arch/arm/src/stm32l4/stm32l4_procfs_dtcm.c deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/arch/arm/src/stm32l4/stm32l4x6xx_rcc.c b/arch/arm/src/stm32l4/stm32l4x6xx_rcc.c index c043c100fa5..08344fa0ba6 100644 --- a/arch/arm/src/stm32l4/stm32l4x6xx_rcc.c +++ b/arch/arm/src/stm32l4/stm32l4x6xx_rcc.c @@ -210,6 +210,9 @@ static inline void rcc_enableahb2(void) #endif #if STM32L4_NPORTS > 7 | RCC_AHB2ENR_GPIOHEN +#endif +#if STM32L4_NPORTS > 8 + | RCC_AHB2ENR_GPIOIEN #endif ); #endif diff --git a/binfmt/libelf/libelf_sections.c b/binfmt/libelf/libelf_sections.c index 8f4369d367d..6f58b4a3181 100644 --- a/binfmt/libelf/libelf_sections.c +++ b/binfmt/libelf/libelf_sections.c @@ -114,7 +114,6 @@ static inline int elf_sectname(FAR struct elf_loadinfo_s *loadinfo, /* Loop until we get the entire section name into memory */ - buffer = loadinfo->iobuffer; bytesread = 0; for (; ; ) @@ -136,7 +135,7 @@ static inline int elf_sectname(FAR struct elf_loadinfo_s *loadinfo, /* Read that number of bytes into the array */ buffer = &loadinfo->iobuffer[bytesread]; - ret = elf_read(loadinfo, buffer, readlen, offset); + ret = elf_read(loadinfo, buffer, readlen, offset + bytesread); if (ret < 0) { berr("Failed to read section name\n"); diff --git a/configs/Kconfig b/configs/Kconfig index 24632785d38..6daffc80e0a 100644 --- a/configs/Kconfig +++ b/configs/Kconfig @@ -708,7 +708,7 @@ config ARCH_BOARD_NUCLEO_144 select ARCH_HAVE_IRQBUTTONS ---help--- STMicro Nucleo-144 development board featuring STMicroelectronics - F2, F3, F4 and F7 MCU families. The board is a "Hardware pattern" + F2, F3, F4, F7 and L4 MCU families. The board is a "Hardware pattern" that can be populated with the 144 pin package of the following MCUs: Target STM32 Order code @@ -716,14 +716,44 @@ config ARCH_BOARD_NUCLEO_144 STM32F303ZET6 NUCLEO-F303ZE STM32F429ZIT6 NUCLEO-F429ZI STM32F446ZET6 NUCLEO-F446ZE + STM32F746ZGT6 NUCLEO-F746ZG + STM32F767ZIT6 NUCLEO-F767ZI + STM32L496ZGT6 NUCLEO-L496ZG + STM32L496ZGT6P NUCLEO-L496ZG-P - Supported in this release are: + Supported in this configuration are: - NUCLEO-F746ZG - STM32F746ZGT6 a 216MHz Cortex-M7, w/FPU - 1024KiB - Flash memory and 320KiB SRAM. + NUCLEO-F746ZG - STM32F746ZGT6 a 216MHz Cortex-M7, w/FPU - + 1024KiB Flash memory and 320KiB SRAM. NUCLEO-F767ZI - STM32F767ZIT6 a 216MHz Cortex-M7, w/DPFPU - 2048KiB Flash memory and 512KiB SRAM. +config ARCH_BOARD_NUCLEO_L496ZG + bool "STM32L496 Nucleo L496ZG" + depends on ARCH_CHIP_STM32L496ZG + select ARCH_HAVE_LEDS + select ARCH_HAVE_BUTTONS + select ARCH_HAVE_IRQBUTTONS + ---help--- + STMicro Nucleo-144 development board featuring STMicroelectronics + F2, F3, F4, F7 and L4 MCU families. The board is a "Hardware pattern" + that can be populated with the 144 pin package of the following MCUs: + + Target STM32 Order code + STM32F207ZGT6 NUCLEO-F207ZG + STM32F303ZET6 NUCLEO-F303ZE + STM32F429ZIT6 NUCLEO-F429ZI + STM32F446ZET6 NUCLEO-F446ZE + STM32F746ZGT6 NUCLEO-F746ZG + STM32F767ZIT6 NUCLEO-F767ZI + STM32L496ZGT6 NUCLEO-L496ZG + STM32L496ZGT6P NUCLEO-L496ZG-P + + Supported in this configuration are: + + NUCLEO-L496ZG - STM32L496ZGT6 a 80MHz Cortex-M4, w/FPU - + 1024KiB Flash memory and 320KiB SRAM. + config ARCH_BOARD_NUCLEO_F072RB bool "STM32F072 Nucleo F072RB" depends on ARCH_CHIP_STM32F072RB @@ -733,6 +763,15 @@ config ARCH_BOARD_NUCLEO_F072RB ---help--- STMicro Nucleo F072RB board based on the STMicro STM32F072RBT6 MCU. +config ARCH_BOARD_NUCLEO_F091RC + bool "STM32F091 Nucleo F091RC" + depends on ARCH_CHIP_STM32F091RC + select ARCH_HAVE_LEDS + select ARCH_HAVE_BUTTONS + select ARCH_HAVE_IRQBUTTONS + ---help--- + STMicro Nucleo F091RC board based on the STMicro STM32F091RCT6 MCU. + config ARCH_BOARD_NUCLEO_F303RE bool "STM32F303 Nucleo F303RE" depends on ARCH_CHIP_STM32F303RE @@ -1514,10 +1553,12 @@ config ARCH_BOARD default "pic32mz-starterkit" if ARCH_BOARD_PIC32MZ_STARTERKIT default "nucleo-144" if ARCH_BOARD_NUCLEO_144 default "nucleo-f072rb" if ARCH_BOARD_NUCLEO_F072RB + default "nucleo-f091rc" if ARCH_BOARD_NUCLEO_F091RC default "nucleo-f303re" if ARCH_BOARD_NUCLEO_F303RE default "nucleo-f334r8" if ARCH_BOARD_NUCLEO_F334R8 default "nucleo-f4x1re" if ARCH_BOARD_NUCLEO_F401RE || ARCH_BOARD_NUCLEO_F411RE default "nucleo-l476rg" if ARCH_BOARD_NUCLEO_L476RG + default "nucleo-l496zg" if ARCH_BOARD_NUCLEO_L496ZG default "qemu-i486" if ARCH_BOARD_QEMU_I486 default "sabre-6quad" if ARCH_BOARD_SABRE_6QUAD default "sama5d2-xult" if ARCH_BOARD_SAMA5D2_XULT @@ -1823,6 +1864,9 @@ endif if ARCH_BOARD_NUCLEO_F072RB source "configs/nucleo-f072rb/Kconfig" endif +if ARCH_BOARD_NUCLEO_F091RC +source "configs/nucleo-f091rc/Kconfig" +endif if ARCH_BOARD_NUCLEO_F303RE source "configs/nucleo-f303re/Kconfig" endif @@ -1835,6 +1879,9 @@ endif if ARCH_BOARD_NUCLEO_L476RG source "configs/nucleo-l476rg/Kconfig" endif +if ARCH_BOARD_NUCLEO_L496ZG +source "configs/nucleo-l496zg/Kconfig" +endif if ARCH_BOARD_QEMU_I486 source "configs/qemu-i486/Kconfig" endif diff --git a/configs/nucleo-144/README.txt b/configs/nucleo-144/README.txt index db816dd5c68..51edb92e350 100644 --- a/configs/nucleo-144/README.txt +++ b/configs/nucleo-144/README.txt @@ -32,14 +32,17 @@ Nucleo-144 Boards: The Nucleo-144 is a standard board for use with several STM32 parts in the LQFP144 package. Variants include - STM32 Part Board Variant Name - ------------- ------------------ - STM32F207ZGT6 NUCLEO-F207ZG - STM32F303ZET6 NUCLEO-F303ZE - STM32F429ZIT6 NUCLEO-F429ZI - STM32F446ZET6 NUCLEO-F446ZE - STM32F746ZGT6 NUCLEO-F746ZG - STM32F767ZIT6 NUCLEO-F767ZI + STM32 Part Board Variant Name + ------------- ------------------ + STM32F207ZGT6 NUCLEO-F207ZG + STM32F303ZET6 NUCLEO-F303ZE + STM32F429ZIT6 NUCLEO-F429ZI + STM32F446ZET6 NUCLEO-F446ZE + STM32F746ZGT6 NUCLEO-F746ZG + STM32F767ZIT6 NUCLEO-F767ZI + STM32L496ZGT6 NUCLEO-L496ZG + STM32L496ZGT6P NUCLEO-L496ZG-P + ------------- ------------------ This directory is intended to support all Nucleo-144 variants since the @@ -48,9 +51,10 @@ board design provides uniformity in the documentation from ST and should allow us to quickly change configurations by just cloning a configuration and changing the CPU choice and board initialization. Unfortunately for the developer, the CPU specific information must be extracted from the -common information in the documentation. +common information in the documentation. The exception are the STM32L496ZG +boards, which are supported by configs/nucleo-l496zg -Please read the User Manaul UM1727: Getting started with STM32 Nucleo board +Please read the User Manual UM1727: Getting started with STM32 Nucleo board software development tools and take note of the Powering options for the board (6.3 Power supply and power selection) and the Solder bridges based hardware configuration changes that are configurable (6.11 Solder bridges). diff --git a/configs/nucleo-144/src/stm32_appinitialize.c b/configs/nucleo-144/src/stm32_appinitialize.c index 86febc3e851..a4ad8423bdb 100644 --- a/configs/nucleo-144/src/stm32_appinitialize.c +++ b/configs/nucleo-144/src/stm32_appinitialize.c @@ -1,5 +1,5 @@ /**************************************************************************** - * config/nucleo-144/src/stm32_appinitilaize.c + * config/nucleo-144/src/stm32_appinitialize.c * * Copyright (C) 2016 Gregory Nutt. All rights reserved. * Authors: Gregory Nutt @@ -42,6 +42,7 @@ #include #include +#include #include #include diff --git a/configs/nucleo-f091rc/Kconfig b/configs/nucleo-f091rc/Kconfig new file mode 100644 index 00000000000..0c1fe76f6c6 --- /dev/null +++ b/configs/nucleo-f091rc/Kconfig @@ -0,0 +1,8 @@ +# +# For a description of the syntax of this configuration file, +# see the file kconfig-language.txt in the NuttX tools repository. +# + +if ARCH_BOARD_NUCLEO_F091RC + +endif diff --git a/configs/nucleo-f091rc/README.txt b/configs/nucleo-f091rc/README.txt new file mode 100644 index 00000000000..86b60014f7d --- /dev/null +++ b/configs/nucleo-f091rc/README.txt @@ -0,0 +1,319 @@ +Nucleo-F091RC README +==================== + + This README file discusess the port of NuttX to the STMicro Nucleo-F091RC + board. That board features the STM32F091RCT6 MCU with 256KiB of FLASH + and 32KiB of SRAM. + +Contents +======== + + - Nucleo-64 Boards + - LEDs + - Buttons + - Serial Console + - Configurations + +Nucleo-64 Boards +================ + + The Nucleo-F091RC is a member of the Nucleo-64 board family. The Nucleo-64 + is a standard board for use with several STM32 parts in the LQFP64 package. + Variants including: + + Order code Targeted STM32 + ------------- -------------- + NUCLEO-F030R8 STM32F030R8T6 + NUCLEO-F070RB STM32F070RBT6 + NUCLEO-F072RB STM32F072RBT6 + NUCLEO-F091RC STM32F091RCT6 + NUCLEO-F103RB STM32F103RBT6 + NUCLEO-F302R8 STM32F302R8T6 + NUCLEO-F303RE STM32F303RET6 + NUCLEO-F334R8 STM32F334R8T6 + NUCLEO-F401RE STM32F401RET6 + NUCLEO-F410RB STM32F410RBT6 + NUCLEO-F411RE STM32F411RET6 + NUCLEO-F446RE STM32F446RET6 + NUCLEO-L053R8 STM32L053R8T6 + NUCLEO-L073RZ STM32L073RZT6 + NUCLEO-L152RE STM32L152RET6 + NUCLEO-L452RE STM32L452RET6 + NUCLEO-L476RG STM32L476RGT6 + +LEDs +==== + + The Nucleo-64 board has one user controlable LED, User LD2. This green + LED is a user LED connected to Arduino signal D13 corresponding to STM32 + I/O PA5 (PB13 on other some other Nucleo-64 boards). + + - When the I/O is HIGH value, the LED is on + - When the I/O is LOW, the LED is off + + These LEDs are not used by the board port unless CONFIG_ARCH_LEDS is + defined. In that case, the usage by the board port is defined in + include/board.h and src/stm32_autoleds.c. The LEDs are used to encode + OS-related events as follows when the red LED (PE24) is available: + + SYMBOL Meaning LD2 + ------------------- ----------------------- ----------- + LED_STARTED NuttX has been started OFF + LED_HEAPALLOCATE Heap has been allocated OFF + LED_IRQSENABLED Interrupts enabled OFF + LED_STACKCREATED Idle stack created ON + LED_INIRQ In an interrupt No change + LED_SIGNAL In a signal handler No change + LED_ASSERTION An assertion failed No change + LED_PANIC The system has crashed Blinking + LED_IDLE MCU is is sleep mode Not used + + Thus if LD2, NuttX has successfully booted and is, apparently, running + normally. If LD2 is flashing at approximately 2Hz, then a fatal error + has been detected and the system has halted. + +Buttons +======= + + B1 USER: the user button is connected to the I/O PC13 (pin 2) of the STM32 + microcontroller. + +Serial Console +============== + + USART1 + ------ + Pins and Connectors: + + RXD: PA10 D3 CN9 pin 3, CN10 pin 33 + PB7 CN7 pin 21 + TXD: PA9 D8 CN5 pin 1, CN10 pin 21 + PB6 D10 CN5 pin 3, CN10 pin 17 + + NOTE: You may need to edit the include/board.h to select different USART1 + pin selections. + + TTL to RS-232 converter connection: + + Nucleo CN10 STM32F072RB + ----------- ------------ + Pin 21 PA9 USART1_TX *Warning you make need to reverse RX/TX on + Pin 33 PA10 USART1_RX some RS-232 converters + Pin 20 GND + Pin 8 U5V + + To configure USART1 as the console: + + CONFIG_STM32_USART1=y + CONFIG_USART1_SERIALDRIVER=y + CONFIG_USART1_SERIAL_CONSOLE=y + CONFIG_USART1_RXBUFSIZE=256 + CONFIG_USART1_TXBUFSIZE=256 + CONFIG_USART1_BAUD=115200 + CONFIG_USART1_BITS=8 + CONFIG_USART1_PARITY=0 + CONFIG_USART1_2STOP=0 + + USART2 + ------ + Pins and Connectors: + + RXD: PA3 To be provided + PA15 + PD6 + TXD: PA2 + PA14 + PD5 + + USART3 + ------ + Pins and Connectors: + + RXD: PB11 To be provided + PC5 + PC11 + D9 + TXD: PB10 + PC4 + PC10 + D8 + + See "Virtual COM Port" and "RS-232 Shield" below. + + USART3 + ------ + Pins and Connectors: + + RXD: PA1 To be provided + PC11 + TXD: PA0 + PC10 + + Virtual COM Port + ---------------- + Yet another option is to use UART2 and the USB virtual COM port. This + option may be more convenient for long term development, but is painful + to use during board bring-up. + + Solder Bridges. This configuration requires: + + - SB62 and SB63 Open: PA2 and PA3 on STM32 MCU are disconnected to D1 + and D0 (pin 7 and pin 8) on Arduino connector CN9 and ST Morpho + connector CN10. + + - SB13 and SB14 Closed: PA2 and PA3 on STM32F103C8T6 (ST-LINK MCU) are + connected to PA3 and PA2 on STM32 MCU to have USART communication + between them. Thus SB61, SB62 and SB63 should be OFF. + + Configuring USART2 is the same as given above. + + Question: What BAUD should be configure to interface with the Virtual + COM port? 115200 8N1? + + Default + ------- + As shipped, SB62 and SB63 are open and SB13 and SB14 closed, so the + virtual COM port is enabled. + + RS-232 Shield + ------------- + Supports a single RS-232 connected via + + Nucleo STM32F4x1RE Shield + --------- --------------- -------- + CN9 Pin 1 PA3 USART2_RXD RXD + CN9 Pin 2 PA2 USART2_TXD TXD + + Support for this shield is enabled by selecting USART2 and configuring + SB13, 14, 62, and 63 as described above under "Virtual COM Port" + +Configurations +============== + + Information Common to All Configurations + ---------------------------------------- + Each configuration is maintained in a sub-directory and can be + selected as follow: + + cd tools + ./configure.sh nucleo-f091rc/ + cd - + + Before building, make sure the PATH environment variable includes the + correct path to the directory than holds your toolchain binaries. + + And then build NuttX by simply typing the following. At the conclusion of + the make, the nuttx binary will reside in an ELF file called, simply, nuttx. + + make oldconfig + make + + The that is provided above as an argument to the tools/configure.sh + must be is one of the following. + + NOTES: + + 1. These configurations use the mconf-based configuration tool. To + change any of these configurations using that tool, you should: + + a. Build and install the kconfig-mconf tool. See nuttx/README.txt + see additional README.txt files in the NuttX tools repository. + + b. Execute 'make menuconfig' in nuttx/ in order to start the + reconfiguration process. + + 2. Unless stated otherwise, all configurations generate console + output on USART2, as described above under "Serial Console". The + elevant configuration settings are listed below: + + CONFIG_STM32_USART2=y + CONFIG_STM32_USART2_SERIALDRIVER=y + CONFIG_STM32_USART=y + + CONFIG_USART2_SERIALDRIVER=y + CONFIG_USART2_SERIAL_CONSOLE=y + + CONFIG_USART2_RXBUFSIZE=256 + CONFIG_USART2_TXBUFSIZE=256 + CONFIG_USART2_BAUD=115200 + CONFIG_USART2_BITS=8 + CONFIG_USART2_PARITY=0 + CONFIG_USART2_2STOP=0 + + 3. All of these configurations are set up to build under Linux using the + "GNU Tools for ARM Embedded Processors" that is maintained by ARM + (unless stated otherwise in the description of the configuration). + + https://launchpad.net/gcc-arm-embedded + + That toolchain selection can easily be reconfigured using + 'make menuconfig'. Here are the relevant current settings: + + Build Setup: + CONFIG_HOST_LINUX=y : Linux environment + + System Type -> Toolchain: + CONFIG_ARMV7M_TOOLCHAIN_GNU_EABIL=y : GNU ARM EABI toolchain + + Configuration sub-directories + ----------------------------- + + nsh: + + Configures the NuttShell (nsh) located at examples/nsh. This + configuration is focused on low level, command-line driver testing. + + NOTES: + + 1. This initial release of this configuration was very minimal, but + also very small: + + $ size nuttx + text data bss dec hex filename + 32000 92 1172 33264 81f0 nuttx + + The current version, additional features have been enabled: board + bring-up initialization, button support, the procfs file system, + and NSH built-in application support. The size increased as follows: + + $ size nuttx + text data bss dec hex filename + 40231 92 1208 41531 a23b nuttx + + Those additional features cost about 8KiB FLASH. I believe that is a + good use of the STM32F072RB's FLASH, but if you interested in the + more minimal configuration, here is what was changed: + + Removed + + CONFIG_BINFMT_DISABLE=y + CONFIG_DISABLE_MOUNTPOINT=y + CONFIG_NSH_DISABLE_CD=y + + Added: + + CONFIG_ARCH_BUTTONS=y + CONFIG_ARCH_IRQBUTTONS=y + + CONFIG_BUILTIN=y + CONFIG_BUILTIN_PROXY_STACKSIZE=1024 + + CONFIG_FS_PROCFS=y + CONFIG_NSH_PROC_MOUNTPOINT="/proc" + + CONFIG_LIB_BOARDCTL=y + CONFIG_NSH_ARCHINIT=y + CONFIG_NSH_BUILTIN_APPS=y + + Support for NSH built-in applications is enabled for future use. + However, no built applications are enabled in this base configuration. + + 2. C++ support for applications is NOT enabled. That could be enabled + with the following configuration changes: + + CONFIG_HAVE_CXX=y + CONFIG_HAVE_CXXINITIALIZE=y + CONFIG_EXAMPLES_NSH_CXXINITIALIZE=y + + And also support fo C++ constructors under + apps/platform/nucleo-stm32f072rb. diff --git a/configs/nucleo-f091rc/include/board.h b/configs/nucleo-f091rc/include/board.h new file mode 100644 index 00000000000..be7e3f5a9e6 --- /dev/null +++ b/configs/nucleo-f091rc/include/board.h @@ -0,0 +1,241 @@ +/************************************************************************************ + * configs/nucleo-f091rc/include/board.h + * + * Copyright (C) 2017 Gregory Nutt. All rights reserved. + * Author: Gregory Nutt + * Alan Carvalho de Assis + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ************************************************************************************/ + +#ifndef __CONFIG_NUCLEO_F091RC_INCLUDE_BOARD_H +#define __CONFIG_NUCLEO_F091RC_INCLUDE_BOARD_H + +/************************************************************************************ + * Included Files + ************************************************************************************/ + +#include + +#ifndef __ASSEMBLY__ +# include +#endif + +/************************************************************************************ + * Pre-processor Definitions + ************************************************************************************/ + +/* Clocking *************************************************************************/ +/* Four different clock sources can be used to drive the system clock (SYSCLK): + * + * - HSI high-speed internal oscillator clock + * Generated from an internal 8 MHz RC oscillator + * - HSE high-speed external oscillator clock + * Normally driven by an external crystal (X3). However, this crystal is not + * fitted on the Nucleo-F091RC board. + * - PLL clock + * - MSI multispeed internal oscillator clock + * The MSI clock signal is generated from an internal RC oscillator. Seven frequency + * ranges are available: 65.536 kHz, 131.072 kHz, 262.144 kHz, 524.288 kHz, 1.048 MHz, + * 2.097 MHz (default value) and 4.194 MHz. + * + * The devices have the following two secondary clock sources + * - LSI low-speed internal RC clock + * Drives the watchdog and RTC. Approximately 37KHz + * - LSE low-speed external oscillator clock + * Driven by 32.768KHz crystal (X2) on the OSC32_IN and OSC32_OUT pins. + */ + +#define STM32F0_BOARD_XTAL 8000000ul /* X3 on board (not fitted)*/ + +#define STM32F0_HSI_FREQUENCY 8000000ul /* Approximately 8MHz */ +#define STM32F0_HSI14_FREQUENCY 14000000ul /* HSI14 for ADC */ +#define STM32F0_HSI48_FREQUENCY 48000000ul /* HSI48 for USB, only some STM32F0xx */ +#define STM32F0_HSE_FREQUENCY STM32F0_BOARD_XTAL +#define STM32F0_LSI_FREQUENCY 40000 /* Approximately 40KHz */ +#define STM32F0_LSE_FREQUENCY 32768 /* X2 on board */ + +/* PLL Configuration + * + * - PLL source is HSI -> 8MHz input (nominal) + * - PLL source predivider 2 -> 4MHz divided down PLL VCO clock output + * - PLL multipler is 12 -> 48MHz PLL VCO clock output (for USB) + * + * Resulting SYSCLK frequency is 8MHz x 12 / 2 = 48MHz + * + * USB: + * If the USB interface is used in the application, it requires a precise + * 48MHz clock which can be generated from either the (1) the internal + * main PLL with the HSE clock source using an HSE crystal oscillator. In + * this case, the PLL VCO clock (defined by STM32F0_CFGR_PLLMUL) must be + * programmed to output a 96 MHz frequency. This is required to provide a + * 48MHz clock to the (USBCLK = PLLVCO/2). Or (2) by using the internal + * 48MHz oscillator in automatic trimming mode. The synchronization for + * this oscillator can be taken from the USB data stream itself (SOF + * signalization) which allows crystal-less operation. + * SYSCLK + * The system clock is derived from the PLL VCO divided by the output + * division factor. + * Limitations: + * - 96 MHz as PLLVCO when the product is in range 1 (1.8V), + * - 48 MHz as PLLVCO when the product is in range 2 (1.5V), + * - 24 MHz when the product is in range 3 (1.2V). + * - Output division to avoid exceeding 32 MHz as SYSCLK. + * - The minimum input clock frequency for PLL is 2 MHz (when using HSE as + * PLL source). + */ + +#define STM32F0_CFGR_PLLSRC RCC_CFGR_PLLSRC_HSId2 /* Source is HSI/2 */ +#define STM32F0_PLLSRC_FREQUENCY (STM32F0_HSI_FREQUENCY/2) /* 8MHz / 2 = 4MHz */ +#ifdef CONFIG_STM32F0_USB +# undef STM32F0_CFGR2_PREDIV /* Not used with source HSI/2 */ +# define STM32F0_CFGR_PLLMUL RCC_CFGR_PLLMUL_CLKx12 /* PLLMUL = 12 */ +# define STM32F0_PLL_FREQUENCY (12*STM32F0_PLLSRC_FREQUENCY) /* PLL VCO Frequency is 48MHz */ +#else +# undef STM32F0_CFGR2_PREDIV /* Not used with source HSI/2 */ +# define STM32F0_CFGR_PLLMUL RCC_CFGR_PLLMUL_CLKx12 /* PLLMUL = 12 */ +# define STM32F0_PLL_FREQUENCY (12*STM32F0_PLLSRC_FREQUENCY) /* PLL VCO Frequency is 48MHz */ +#endif + +/* Use the PLL and set the SYSCLK source to be the divided down PLL VCO output + * frequency (STM32F0_PLL_FREQUENCY divided by the PLLDIV value). + */ + +#define STM32F0_SYSCLK_SW RCC_CFGR_SW_PLL /* Use the PLL as the SYSCLK */ +#define STM32F0_SYSCLK_SWS RCC_CFGR_SWS_PLL +#ifdef CONFIG_STM32F0_USB +# define STM32F0_SYSCLK_FREQUENCY STM32F0_PLL_FREQUENCY /* SYSCLK frequency is PLL VCO = 48MHz */ +#else +# define STM32F0_SYSCLK_FREQUENCY STM32F0_PLL_FREQUENCY /* SYSCLK frequency is PLL VCO = 48MHz */ +#endif + +#define STM32F0_RCC_CFGR_HPRE RCC_CFGR_HPRE_SYSCLK +#define STM32F0_HCLK_FREQUENCY STM32F0_SYSCLK_FREQUENCY +#define STM32F0_BOARD_HCLK STM32F0_HCLK_FREQUENCY /* Same as above, to satisfy compiler */ + +/* APB1 clock (PCLK1) is HCLK (48MHz) */ + +#define STM32F0_RCC_CFGR_PPRE1 RCC_CFGR_PPRE1_HCLK +#define STM32F0_PCLK1_FREQUENCY (STM32F0_HCLK_FREQUENCY) + +/* APB2 clock (PCLK2) is HCLK (48MHz) */ + +#define STM32F0_RCC_CFGR_PPRE2 RCC_CFGR_PPRE2_HCLK +#define STM32F0_PCLK2_FREQUENCY STM32F0_HCLK_FREQUENCY +#define STM32F0_APB2_CLKIN (STM32F0_PCLK2_FREQUENCY) + +/* APB1 timers 1-3, 6-7, and 14-17 will receive PCLK1 */ + +#define STM32F0_APB1_TIM1_CLKIN (STM32F0_PCLK1_FREQUENCY) +#define STM32F0_APB1_TIM2_CLKIN (STM32F0_PCLK1_FREQUENCY) +#define STM32F0_APB1_TIM3_CLKIN (STM32F0_PCLK1_FREQUENCY) + +#define STM32F0_APB1_TIM6_CLKIN (STM32F0_PCLK1_FREQUENCY) +#define STM32F0_APB1_TIM7_CLKIN (STM32F0_PCLK1_FREQUENCY) + +#define STM32F0_APB1_TIM14_CLKIN (STM32F0_PCLK1_FREQUENCY) +#define STM32F0_APB1_TIM15_CLKIN (STM32F0_PCLK1_FREQUENCY) +#define STM32F0_APB1_TIM16_CLKIN (STM32F0_PCLK1_FREQUENCY) +#define STM32F0_APB1_TIM17_CLKIN (STM32F0_PCLK1_FREQUENCY) + +/* LED definitions ******************************************************************/ +/* LEDs + * + * The Nucleo-64 board has one user controlable LED, User LD2. This green + * LED is a user LED connected to Arduino signal D13 corresponding to STM32 + * I/O PA5 (PB13 on other some other Nucleo-64 boards). + * + * - When the I/O is HIGH value, the LED is on + * - When the I/O is LOW, the LED is off + */ + +/* LED index values for use with board_userled() */ + +#define BOARD_LD2 0 +#define BOARD_NLEDS 1 + +/* LED bits for use with board_userled_all() */ + +#define BOARD_LD2_BIT (1 << BOARD_LD2) + +/* These LEDs are not used by the board port unless CONFIG_ARCH_LEDS is + * defined. In that case, the usage by the board port is defined in + * include/board.h and src/sam_leds.c. The LEDs are used to encode OS-related + * events as follows when the red LED (PE24) is available: + * + * SYMBOL Meaning LD2 + * ------------------- ----------------------- ----------- + * LED_STARTED NuttX has been started OFF + * LED_HEAPALLOCATE Heap has been allocated OFF + * LED_IRQSENABLED Interrupts enabled OFF + * LED_STACKCREATED Idle stack created ON + * LED_INIRQ In an interrupt No change + * LED_SIGNAL In a signal handler No change + * LED_ASSERTION An assertion failed No change + * LED_PANIC The system has crashed Blinking + * LED_IDLE MCU is is sleep mode Not used + * + * Thus if LD2, NuttX has successfully booted and is, apparently, running + * normally. If LD2 is flashing at approximately 2Hz, then a fatal error + * has been detected and the system has halted. + */ + +#define LED_STARTED 0 +#define LED_HEAPALLOCATE 0 +#define LED_IRQSENABLED 0 +#define LED_STACKCREATED 1 +#define LED_INIRQ 2 +#define LED_SIGNAL 2 +#define LED_ASSERTION 2 +#define LED_PANIC 1 + +/* Button definitions ***************************************************************/ +/* Buttons + * + * B1 USER: the user button is connected to the I/O PC13 (pin 2) of the STM32 + * microcontroller. + */ + +#define BUTTON_USER 0 +#define NUM_BUTTONS 1 + +#define BUTTON_USER_BIT (1 << BUTTON_USER) + +/* Alternate Pin Functions **********************************************************/ +/* USART 1 */ + +#define GPIO_USART1_TX GPIO_USART1_TX_2 +#define GPIO_USART1_RX GPIO_USART1_RX_2 + +/* USART 2 */ + +#define GPIO_USART2_TX GPIO_USART2_TX_3 +#define GPIO_USART2_RX GPIO_USART2_RX_3 + +#endif /* __CONFIG_NUCLEO_F091RC_INCLUDE_BOARD_H */ diff --git a/configs/nucleo-f091rc/nsh/Make.defs b/configs/nucleo-f091rc/nsh/Make.defs new file mode 100644 index 00000000000..eb0863ab3dd --- /dev/null +++ b/configs/nucleo-f091rc/nsh/Make.defs @@ -0,0 +1,113 @@ +############################################################################ +# configs/nucleo-f091rc/nsh/Make.defs +# +# Copyright (C) 2017 Gregory Nutt. All rights reserved. +# Author: Gregory Nutt +# Alan Carvalho de Assis +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in +# the documentation and/or other materials provided with the +# distribution. +# 3. Neither the name NuttX nor the names of its contributors may be +# used to endorse or promote products derived from this software +# without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE +# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS +# OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +# AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN +# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +# POSSIBILITY OF SUCH DAMAGE. +# +############################################################################ + +include ${TOPDIR}/.config +include ${TOPDIR}/tools/Config.mk +include ${TOPDIR}/arch/arm/src/armv6-m/Toolchain.defs + +LDSCRIPT = flash.ld + +ifeq ($(WINTOOL),y) + # Windows-native toolchains + DIRLINK = $(TOPDIR)/tools/copydir.sh + DIRUNLINK = $(TOPDIR)/tools/unlink.sh + MKDEP = $(TOPDIR)/tools/mkwindeps.sh + ARCHINCLUDES = -I. -isystem "${shell cygpath -w $(TOPDIR)/include}" + ARCHXXINCLUDES = -I. -isystem "${shell cygpath -w $(TOPDIR)/include}" -isystem "${shell cygpath -w $(TOPDIR)/include/cxx}" + ARCHSCRIPT = -T "${shell cygpath -w $(TOPDIR)/configs/$(CONFIG_ARCH_BOARD)/scripts/$(LDSCRIPT)}" +else + # Linux/Cygwin-native toolchain + MKDEP = $(TOPDIR)/tools/mkdeps$(HOSTEXEEXT) + ARCHINCLUDES = -I. -isystem $(TOPDIR)/include + ARCHXXINCLUDES = -I. -isystem $(TOPDIR)/include -isystem $(TOPDIR)/include/cxx + ARCHSCRIPT = -T$(TOPDIR)/configs/$(CONFIG_ARCH_BOARD)/scripts/$(LDSCRIPT) +endif + +CC = $(CROSSDEV)gcc +CXX = $(CROSSDEV)g++ +CPP = $(CROSSDEV)gcc -E +LD = $(CROSSDEV)ld +AR = $(ARCROSSDEV)ar rcs +NM = $(ARCROSSDEV)nm +OBJCOPY = $(CROSSDEV)objcopy +OBJDUMP = $(CROSSDEV)objdump + +ARCHCCVERSION = ${shell $(CC) -v 2>&1 | sed -n '/^gcc version/p' | sed -e 's/^gcc version \([0-9\.]\)/\1/g' -e 's/[-\ ].*//g' -e '1q'} +ARCHCCMAJOR = ${shell echo $(ARCHCCVERSION) | cut -d'.' -f1} + +ifeq ($(CONFIG_DEBUG_SYMBOLS),y) + ARCHOPTIMIZATION = -g +endif + +ifneq ($(CONFIG_DEBUG_NOOPT),y) + ARCHOPTIMIZATION += $(MAXOPTIMIZATION) -fno-strict-aliasing -fno-strength-reduce -fomit-frame-pointer +endif + +ARCHCFLAGS = -fno-builtin +ARCHCXXFLAGS = -fno-builtin -fno-exceptions -fcheck-new -fno-rtti +ARCHWARNINGS = -Wall -Wstrict-prototypes -Wshadow -Wundef +ARCHWARNINGSXX = -Wall -Wshadow -Wundef +ARCHDEFINES = +ARCHPICFLAGS = -fpic -msingle-pic-base -mpic-register=r10 + +CFLAGS = $(ARCHCFLAGS) $(ARCHWARNINGS) $(ARCHOPTIMIZATION) $(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES) -pipe +CPICFLAGS = $(ARCHPICFLAGS) $(CFLAGS) +CXXFLAGS = $(ARCHCXXFLAGS) $(ARCHWARNINGSXX) $(ARCHOPTIMIZATION) $(ARCHCPUFLAGS) $(ARCHXXINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES) -pipe +CXXPICFLAGS = $(ARCHPICFLAGS) $(CXXFLAGS) +CPPFLAGS = $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES) +AFLAGS = $(CFLAGS) -D__ASSEMBLY__ + +NXFLATLDFLAGS1 = -r -d -warn-common +NXFLATLDFLAGS2 = $(NXFLATLDFLAGS1) -T$(TOPDIR)/binfmt/libnxflat/gnu-nxflat-pcrel.ld -no-check-sections +LDNXFLATFLAGS = -e main -s 2048 + +ASMEXT = .S +OBJEXT = .o +LIBEXT = .a +EXEEXT = + +ifneq ($(CROSSDEV),arm-nuttx-elf-) + LDFLAGS += -nostartfiles -nodefaultlibs +endif +ifeq ($(CONFIG_DEBUG_SYMBOLS),y) + LDFLAGS += -g +endif + + +HOSTCC = gcc +HOSTINCLUDES = -I. +HOSTCFLAGS = -Wall -Wstrict-prototypes -Wshadow -Wundef -g -pipe +HOSTLDFLAGS = diff --git a/configs/nucleo-f091rc/nsh/defconfig b/configs/nucleo-f091rc/nsh/defconfig new file mode 100644 index 00000000000..54bf325dcaf --- /dev/null +++ b/configs/nucleo-f091rc/nsh/defconfig @@ -0,0 +1,1118 @@ +# +# Automatically generated file; DO NOT EDIT. +# Nuttx/ Configuration +# + +# +# Build Setup +# +# CONFIG_EXPERIMENTAL is not set +CONFIG_DEFAULT_SMALL=y +CONFIG_HOST_LINUX=y +# CONFIG_HOST_OSX is not set +# CONFIG_HOST_WINDOWS is not set +# CONFIG_HOST_OTHER is not set + +# +# Build Configuration +# +CONFIG_APPS_DIR="../apps" +CONFIG_BUILD_FLAT=y +# CONFIG_BUILD_2PASS is not set + +# +# Binary Output Formats +# +# CONFIG_RRLOAD_BINARY is not set +# CONFIG_INTELHEX_BINARY is not set +# CONFIG_MOTOROLA_SREC is not set +CONFIG_RAW_BINARY=y +# CONFIG_UBOOT_UIMAGE is not set + +# +# Customize Header Files +# +# CONFIG_ARCH_STDINT_H is not set +# CONFIG_ARCH_STDBOOL_H is not set +# CONFIG_ARCH_MATH_H is not set +# CONFIG_ARCH_FLOAT_H is not set +# CONFIG_ARCH_STDARG_H is not set +# CONFIG_ARCH_DEBUG_H is not set + +# +# Debug Options +# +CONFIG_DEBUG_ALERT=y +CONFIG_DEBUG_FEATURES=y + +# +# Debug SYSLOG Output Controls +# +CONFIG_DEBUG_ERROR=y +CONFIG_DEBUG_WARN=y +CONFIG_DEBUG_INFO=y +CONFIG_DEBUG_ASSERTIONS=y + +# +# Subsystem Debug Options +# +# CONFIG_DEBUG_BINFMT is not set +# CONFIG_DEBUG_FS is not set +# CONFIG_DEBUG_GRAPHICS is not set +# CONFIG_DEBUG_LIB is not set +# CONFIG_DEBUG_MM is not set +# CONFIG_DEBUG_SCHED is not set + +# +# OS Function Debug Options +# +# CONFIG_DEBUG_IRQ is not set + +# +# Driver Debug Options +# +# CONFIG_DEBUG_LEDS is not set +# CONFIG_DEBUG_GPIO is not set +# CONFIG_DEBUG_TIMER is not set +CONFIG_ARCH_HAVE_STACKCHECK=y +# CONFIG_STACK_COLORATION is not set +# CONFIG_ARCH_HAVE_HEAPCHECK is not set +CONFIG_DEBUG_SYMBOLS=y +CONFIG_ARCH_HAVE_CUSTOMOPT=y +# CONFIG_DEBUG_NOOPT is not set +# CONFIG_DEBUG_CUSTOMOPT is not set +CONFIG_DEBUG_FULLOPT=y + +# +# System Type +# +CONFIG_ARCH_ARM=y +# CONFIG_ARCH_AVR is not set +# CONFIG_ARCH_HC is not set +# CONFIG_ARCH_MIPS is not set +# CONFIG_ARCH_MISOC is not set +# CONFIG_ARCH_RENESAS is not set +# CONFIG_ARCH_RISCV is not set +# CONFIG_ARCH_SIM is not set +# CONFIG_ARCH_X86 is not set +# CONFIG_ARCH_XTENSA is not set +# CONFIG_ARCH_Z16 is not set +# CONFIG_ARCH_Z80 is not set +CONFIG_ARCH="arm" + +# +# ARM Options +# +# CONFIG_ARCH_CHIP_A1X is not set +# CONFIG_ARCH_CHIP_C5471 is not set +# CONFIG_ARCH_CHIP_DM320 is not set +# CONFIG_ARCH_CHIP_EFM32 is not set +# CONFIG_ARCH_CHIP_IMX1 is not set +# CONFIG_ARCH_CHIP_IMX6 is not set +# CONFIG_ARCH_CHIP_KINETIS is not set +# CONFIG_ARCH_CHIP_KL is not set +# CONFIG_ARCH_CHIP_LM is not set +# CONFIG_ARCH_CHIP_TIVA is not set +# CONFIG_ARCH_CHIP_LPC11XX is not set +# CONFIG_ARCH_CHIP_LPC17XX is not set +# CONFIG_ARCH_CHIP_LPC214X is not set +# CONFIG_ARCH_CHIP_LPC2378 is not set +# CONFIG_ARCH_CHIP_LPC31XX is not set +# CONFIG_ARCH_CHIP_LPC43XX is not set +# CONFIG_ARCH_CHIP_MOXART is not set +# CONFIG_ARCH_CHIP_NUC1XX is not set +# CONFIG_ARCH_CHIP_SAMA5 is not set +# CONFIG_ARCH_CHIP_SAMD is not set +# CONFIG_ARCH_CHIP_SAML is not set +# CONFIG_ARCH_CHIP_SAM34 is not set +# CONFIG_ARCH_CHIP_SAMV7 is not set +# CONFIG_ARCH_CHIP_STM32 is not set +CONFIG_ARCH_CHIP_STM32F0=y +# CONFIG_ARCH_CHIP_STM32F7 is not set +# CONFIG_ARCH_CHIP_STM32L4 is not set +# CONFIG_ARCH_CHIP_STR71X is not set +# CONFIG_ARCH_CHIP_TMS570 is not set +# CONFIG_ARCH_CHIP_XMC4 is not set +# CONFIG_ARCH_ARM7TDMI is not set +# CONFIG_ARCH_ARM926EJS is not set +# CONFIG_ARCH_ARM920T is not set +CONFIG_ARCH_CORTEXM0=y +# CONFIG_ARCH_CORTEXM23 is not set +# CONFIG_ARCH_CORTEXM3 is not set +# CONFIG_ARCH_CORTEXM33 is not set +# CONFIG_ARCH_CORTEXM4 is not set +# CONFIG_ARCH_CORTEXM7 is not set +# CONFIG_ARCH_CORTEXA5 is not set +# CONFIG_ARCH_CORTEXA8 is not set +# CONFIG_ARCH_CORTEXA9 is not set +# CONFIG_ARCH_CORTEXR4 is not set +# CONFIG_ARCH_CORTEXR4F is not set +# CONFIG_ARCH_CORTEXR5 is not set +# CONFIG_ARCH_CORTEX5F is not set +# CONFIG_ARCH_CORTEXR7 is not set +# CONFIG_ARCH_CORTEXR7F is not set +CONFIG_ARCH_FAMILY="armv6-m" +CONFIG_ARCH_CHIP="stm32f0" +# CONFIG_ARM_TOOLCHAIN_IAR is not set +# CONFIG_ARM_TOOLCHAIN_GNU is not set +CONFIG_ARCH_HAVE_CMNVECTOR=y +# CONFIG_ARMV7M_CMNVECTOR is not set +# CONFIG_ARMV7M_LAZYFPU is not set +# CONFIG_ARCH_HAVE_FPU is not set +# CONFIG_ARCH_HAVE_DPFPU is not set +# CONFIG_ARCH_HAVE_TRUSTZONE is not set +# CONFIG_ARM_HAVE_MPU_UNIFIED is not set + +# +# ARMV6M Configuration Options +# +# CONFIG_ARMV6M_TOOLCHAIN_BUILDROOT is not set +# CONFIG_ARMV6M_TOOLCHAIN_CODEREDL is not set +# CONFIG_ARMV6M_TOOLCHAIN_CODESOURCERYL is not set +CONFIG_ARMV6M_TOOLCHAIN_GNU_EABIL=y +# CONFIG_SERIAL_TERMIOS is not set +# CONFIG_USART2_RS485 is not set + +# +# STM32F0xx Configuration Options +# +# CONFIG_ARCH_CHIP_STM32F030C6 is not set +# CONFIG_ARCH_CHIP_STM32F030C8 is not set +# CONFIG_ARCH_CHIP_STM32F030CC is not set +# CONFIG_ARCH_CHIP_STM32F030F4 is not set +# CONFIG_ARCH_CHIP_STM32F030K6 is not set +# CONFIG_ARCH_CHIP_STM32F030R8 is not set +# CONFIG_ARCH_CHIP_STM32F030RC is not set +# CONFIG_ARCH_CHIP_STM32F031C4 is not set +# CONFIG_ARCH_CHIP_STM32F031C6 is not set +# CONFIG_ARCH_CHIP_STM32F031E6 is not set +# CONFIG_ARCH_CHIP_STM32F031F4 is not set +# CONFIG_ARCH_CHIP_STM32F031F6 is not set +# CONFIG_ARCH_CHIP_STM32F031G4 is not set +# CONFIG_ARCH_CHIP_STM32F031G6 is not set +# CONFIG_ARCH_CHIP_STM32F031K4 is not set +# CONFIG_ARCH_CHIP_STM32F031K6 is not set +# CONFIG_ARCH_CHIP_STM32F038C6 is not set +# CONFIG_ARCH_CHIP_STM32F038E6 is not set +# CONFIG_ARCH_CHIP_STM32F038F6 is not set +# CONFIG_ARCH_CHIP_STM32F038G6 is not set +# CONFIG_ARCH_CHIP_STM32F038K6 is not set +# CONFIG_ARCH_CHIP_STM32F042C4 is not set +# CONFIG_ARCH_CHIP_STM32F042C6 is not set +# CONFIG_ARCH_CHIP_STM32F042F4 is not set +# CONFIG_ARCH_CHIP_STM32F042F6 is not set +# CONFIG_ARCH_CHIP_STM32F042G4 is not set +# CONFIG_ARCH_CHIP_STM32F042G6 is not set +# CONFIG_ARCH_CHIP_STM32F042K4 is not set +# CONFIG_ARCH_CHIP_STM32F042K6 is not set +# CONFIG_ARCH_CHIP_STM32F042T6 is not set +# CONFIG_ARCH_CHIP_STM32F048C6 is not set +# CONFIG_ARCH_CHIP_STM32F048G6 is not set +# CONFIG_ARCH_CHIP_STM32F048T6 is not set +# CONFIG_ARCH_CHIP_STM32F051C4 is not set +# CONFIG_ARCH_CHIP_STM32F051C6 is not set +# CONFIG_ARCH_CHIP_STM32F051C8 is not set +# CONFIG_ARCH_CHIP_STM32F051K4 is not set +# CONFIG_ARCH_CHIP_STM32F051K6 is not set +# CONFIG_ARCH_CHIP_STM32F051K8 is not set +# CONFIG_ARCH_CHIP_STM32F051R4 is not set +# CONFIG_ARCH_CHIP_STM32F051R6 is not set +# CONFIG_ARCH_CHIP_STM32F051R8 is not set +# CONFIG_ARCH_CHIP_STM32F051T8 is not set +# CONFIG_ARCH_CHIP_STM32F058C8 is not set +# CONFIG_ARCH_CHIP_STM32F058R8 is not set +# CONFIG_ARCH_CHIP_STM32F058T8 is not set +# CONFIG_ARCH_CHIP_STM32F070C6 is not set +# CONFIG_ARCH_CHIP_STM32F070CB is not set +# CONFIG_ARCH_CHIP_STM32F070F6 is not set +# CONFIG_ARCH_CHIP_STM32F070RB is not set +# CONFIG_ARCH_CHIP_STM32F071C8 is not set +# CONFIG_ARCH_CHIP_STM32F071CB is not set +# CONFIG_ARCH_CHIP_STM32F071RB is not set +# CONFIG_ARCH_CHIP_STM32F071V8 is not set +# CONFIG_ARCH_CHIP_STM32F071VB is not set +# CONFIG_ARCH_CHIP_STM32F072C8 is not set +# CONFIG_ARCH_CHIP_STM32F072CB is not set +# CONFIG_ARCH_CHIP_STM32F072R8 is not set +# CONFIG_ARCH_CHIP_STM32F072RB is not set +# CONFIG_ARCH_CHIP_STM32F072V8 is not set +# CONFIG_ARCH_CHIP_STM32F072VB is not set +# CONFIG_ARCH_CHIP_STM32F078CB is not set +# CONFIG_ARCH_CHIP_STM32F078RB is not set +# CONFIG_ARCH_CHIP_STM32F078VB is not set +# CONFIG_ARCH_CHIP_STM32F091CB is not set +# CONFIG_ARCH_CHIP_STM32F091CC is not set +# CONFIG_ARCH_CHIP_STM32F091RB is not set +CONFIG_ARCH_CHIP_STM32F091RC=y +# CONFIG_ARCH_CHIP_STM32F091VB is not set +# CONFIG_ARCH_CHIP_STM32F091VC is not set +# CONFIG_ARCH_CHIP_STM32F098CC is not set +# CONFIG_ARCH_CHIP_STM32F098RC is not set +# CONFIG_ARCH_CHIP_STM32F098VC is not set +# CONFIG_STM32F0_STM32F03X is not set +# CONFIG_STM32F0_STM32F04X is not set +# CONFIG_STM32F0_STM32F05X is not set +# CONFIG_STM32F0_STM32F07X is not set +CONFIG_STM32F0_STM32F09X=y +# CONFIG_STM32F0_VALUELINE is not set +CONFIG_STM32F0_ACCESSLINE=y +# CONFIG_STM32F0_LOWVOLTLINE is not set +# CONFIG_STM32F0_USBLINE is not set +# CONFIG_STM32F0_DFU is not set +CONFIG_STM32F0_SYSTICK_CORECLK=y +# CONFIG_STM32F0_SYSTICK_CORECLK_DIV16 is not set + +# +# STM32 Peripheral Support +# +# CONFIG_STM32F0_HAVE_CCM is not set +CONFIG_STM32F0_HAVE_HSI48=y +# CONFIG_STM32F0_HAVE_USBDEV is not set +# CONFIG_STM32F0_HAVE_FSMC is not set +# CONFIG_STM32F0_HAVE_HRTIM1 is not set +CONFIG_STM32F0_HAVE_USART3=y +CONFIG_STM32F0_HAVE_USART4=y +CONFIG_STM32F0_HAVE_USART5=y +# CONFIG_STM32F0_HAVE_USART6 is not set +# CONFIG_STM32F0_HAVE_USART7 is not set +# CONFIG_STM32F0_HAVE_USART8 is not set +CONFIG_STM32F0_HAVE_TIM1=y +CONFIG_STM32F0_HAVE_TIM2=y +CONFIG_STM32F0_HAVE_TIM3=y +CONFIG_STM32F0_HAVE_TIM6=y +CONFIG_STM32F0_HAVE_TIM7=y +CONFIG_STM32F0_HAVE_TIM14=y +CONFIG_STM32F0_HAVE_TIM15=y +CONFIG_STM32F0_HAVE_TIM16=y +CONFIG_STM32F0_HAVE_TIM17=y +# CONFIG_STM32F0_HAVE_TSC is not set +CONFIG_STM32F0_HAVE_ADC2=y +# CONFIG_STM32F0_HAVE_ADC3 is not set +# CONFIG_STM32F0_HAVE_ADC4 is not set +# CONFIG_STM32F0_HAVE_ADC1_DMA is not set +# CONFIG_STM32F0_HAVE_ADC2_DMA is not set +# CONFIG_STM32F0_HAVE_ADC3_DMA is not set +# CONFIG_STM32F0_HAVE_ADC4_DMA is not set +# CONFIG_STM32F0_HAVE_SDADC1 is not set +# CONFIG_STM32F0_HAVE_SDADC2 is not set +# CONFIG_STM32F0_HAVE_SDADC3 is not set +# CONFIG_STM32F0_HAVE_SDADC1_DMA is not set +# CONFIG_STM32F0_HAVE_SDADC2_DMA is not set +# CONFIG_STM32F0_HAVE_SDADC3_DMA is not set +CONFIG_STM32F0_HAVE_CAN1=y +# CONFIG_STM32F0_HAVE_COMP1 is not set +# CONFIG_STM32F0_HAVE_COMP2 is not set +# CONFIG_STM32F0_HAVE_COMP3 is not set +# CONFIG_STM32F0_HAVE_COMP4 is not set +# CONFIG_STM32F0_HAVE_COMP5 is not set +# CONFIG_STM32F0_HAVE_COMP6 is not set +# CONFIG_STM32F0_HAVE_COMP7 is not set +# CONFIG_STM32F0_HAVE_DAC1 is not set +# CONFIG_STM32F0_HAVE_DAC2 is not set +# CONFIG_STM32F0_HAVE_RNG is not set +# CONFIG_STM32F0_HAVE_I2C2 is not set +# CONFIG_STM32F0_HAVE_I2C3 is not set +CONFIG_STM32F0_HAVE_SPI2=y +CONFIG_STM32F0_HAVE_SPI3=y +# CONFIG_STM32F0_HAVE_SPI4 is not set +# CONFIG_STM32F0_HAVE_SPI5 is not set +# CONFIG_STM32F0_HAVE_SPI6 is not set +# CONFIG_STM32F0_HAVE_SAIPLL is not set +# CONFIG_STM32F0_HAVE_I2SPLL is not set +# CONFIG_STM32F0_HAVE_OPAMP1 is not set +# CONFIG_STM32F0_HAVE_OPAMP2 is not set +# CONFIG_STM32F0_HAVE_OPAMP3 is not set +# CONFIG_STM32F0_HAVE_OPAMP4 is not set +# CONFIG_STM32F0_ADC1 is not set +# CONFIG_STM32F0_ADC2 is not set +# CONFIG_STM32F0_COMP is not set +# CONFIG_STM32F0_BKP is not set +# CONFIG_STM32F0_BKPSRAM is not set +# CONFIG_STM32F0_CAN1 is not set +# CONFIG_STM32F0_CRC is not set +# CONFIG_STM32F0_DMA1 is not set +# CONFIG_STM32F0_DMA2 is not set +# CONFIG_STM32F0_I2C1 is not set +CONFIG_STM32F0_PWR=y +# CONFIG_STM32F0_SDIO is not set +# CONFIG_STM32F0_SPI1 is not set +# CONFIG_STM32F0_SPI2 is not set +# CONFIG_STM32F0_SPI3 is not set +CONFIG_STM32F0_SYSCFG=y +# CONFIG_STM32F0_TIM1 is not set +# CONFIG_STM32F0_TIM2 is not set +# CONFIG_STM32F0_TIM3 is not set +# CONFIG_STM32F0_TIM6 is not set +# CONFIG_STM32F0_TIM7 is not set +# CONFIG_STM32F0_TIM14 is not set +# CONFIG_STM32F0_TIM15 is not set +# CONFIG_STM32F0_TIM16 is not set +# CONFIG_STM32F0_TIM17 is not set +# CONFIG_STM32F0_USART1 is not set +CONFIG_STM32F0_USART2=y +# CONFIG_STM32F0_USART3 is not set +# CONFIG_STM32F0_USART4 is not set +# CONFIG_STM32F0_USART5 is not set +# CONFIG_STM32F0_IWDG is not set +# CONFIG_STM32F0_WWDG is not set +CONFIG_STM32F0_USART=y +CONFIG_STM32F0_SERIALDRIVER=y + +# +# U[S]ART Configuration +# + +# +# U[S]ART Device Configuration +# +CONFIG_STM32F0_USART2_SERIALDRIVER=y +# CONFIG_STM32F0_USART2_1WIREDRIVER is not set + +# +# Architecture Options +# +# CONFIG_ARCH_NOINTC is not set +# CONFIG_ARCH_VECNOTIRQ is not set +# CONFIG_ARCH_DMA is not set +CONFIG_ARCH_HAVE_IRQPRIO=y +# CONFIG_ARCH_L2CACHE is not set +# CONFIG_ARCH_HAVE_COHERENT_DCACHE is not set +# CONFIG_ARCH_HAVE_ADDRENV is not set +# CONFIG_ARCH_NEED_ADDRENV_MAPPING is not set +# CONFIG_ARCH_HAVE_MULTICPU is not set +CONFIG_ARCH_HAVE_VFORK=y +# CONFIG_ARCH_HAVE_MMU is not set +# CONFIG_ARCH_HAVE_MPU is not set +# CONFIG_ARCH_NAND_HWECC is not set +# CONFIG_ARCH_HAVE_EXTCLK is not set +# CONFIG_ARCH_HAVE_POWEROFF is not set +CONFIG_ARCH_HAVE_RESET=y +# CONFIG_ARCH_IRQPRIO is not set +CONFIG_ARCH_STACKDUMP=y +# CONFIG_ENDIAN_BIG is not set +# CONFIG_ARCH_IDLE_CUSTOM is not set +# CONFIG_ARCH_HAVE_RAMFUNCS is not set +# CONFIG_ARCH_HAVE_RAMVECTORS is not set +# CONFIG_ARCH_MINIMAL_VECTORTABLE is not set + +# +# Board Settings +# +CONFIG_BOARD_LOOPSPERMSEC=2796 +# CONFIG_ARCH_CALIBRATION is not set + +# +# Interrupt options +# +CONFIG_ARCH_HAVE_INTERRUPTSTACK=y +CONFIG_ARCH_INTERRUPTSTACK=0 +# CONFIG_ARCH_HAVE_HIPRI_INTERRUPT is not set + +# +# Boot options +# +# CONFIG_BOOT_RUNFROMEXTSRAM is not set +CONFIG_BOOT_RUNFROMFLASH=y +# CONFIG_BOOT_RUNFROMISRAM is not set +# CONFIG_BOOT_RUNFROMSDRAM is not set +# CONFIG_BOOT_COPYTORAM is not set + +# +# Boot Memory Configuration +# +CONFIG_RAM_START=0x20000000 +CONFIG_RAM_SIZE=32768 +# CONFIG_ARCH_HAVE_SDRAM is not set + +# +# Board Selection +# +CONFIG_ARCH_BOARD_NUCLEO_F091RC=y +# CONFIG_ARCH_BOARD_CUSTOM is not set +CONFIG_ARCH_BOARD="nucleo-f091rc" + +# +# Common Board Options +# +CONFIG_ARCH_HAVE_LEDS=y +CONFIG_ARCH_LEDS=y +CONFIG_ARCH_HAVE_BUTTONS=y +CONFIG_ARCH_BUTTONS=y +CONFIG_ARCH_HAVE_IRQBUTTONS=y +CONFIG_ARCH_IRQBUTTONS=y + +# +# Board-Specific Options +# +# CONFIG_BOARD_CRASHDUMP is not set +CONFIG_LIB_BOARDCTL=y +# CONFIG_BOARDCTL_RESET is not set +# CONFIG_BOARDCTL_UNIQUEID is not set +# CONFIG_BOARDCTL_TSCTEST is not set +# CONFIG_BOARDCTL_GRAPHICS is not set +# CONFIG_BOARDCTL_IOCTL is not set + +# +# RTOS Features +# +CONFIG_DISABLE_OS_API=y +CONFIG_DISABLE_POSIX_TIMERS=y +# CONFIG_DISABLE_PTHREAD is not set +# CONFIG_DISABLE_SIGNALS is not set +CONFIG_DISABLE_MQUEUE=y +CONFIG_DISABLE_ENVIRON=y + +# +# Clocks and Timers +# +CONFIG_USEC_PER_TICK=10000 +# CONFIG_SYSTEM_TIME64 is not set +# CONFIG_CLOCK_MONOTONIC is not set +# CONFIG_ARCH_HAVE_TIMEKEEPING is not set +# CONFIG_JULIAN_TIME is not set +CONFIG_START_YEAR=2013 +CONFIG_START_MONTH=5 +CONFIG_START_DAY=19 +CONFIG_MAX_WDOGPARMS=2 +CONFIG_PREALLOC_WDOGS=4 +CONFIG_WDOG_INTRESERVE=0 +CONFIG_PREALLOC_TIMERS=0 + +# +# Tasks and Scheduling +# +# CONFIG_SPINLOCK is not set +# CONFIG_INIT_NONE is not set +CONFIG_INIT_ENTRYPOINT=y +# CONFIG_INIT_FILEPATH is not set +CONFIG_USER_ENTRYPOINT="nsh_main" +CONFIG_RR_INTERVAL=200 +# CONFIG_SCHED_SPORADIC is not set +CONFIG_TASK_NAME_SIZE=0 +CONFIG_MAX_TASKS=8 +# CONFIG_SCHED_HAVE_PARENT is not set +CONFIG_SCHED_WAITPID=y + +# +# Pthread Options +# +# CONFIG_PTHREAD_MUTEX_TYPES is not set +CONFIG_PTHREAD_MUTEX_ROBUST=y +# CONFIG_PTHREAD_MUTEX_UNSAFE is not set +# CONFIG_PTHREAD_MUTEX_BOTH is not set +CONFIG_NPTHREAD_KEYS=0 +# CONFIG_PTHREAD_CLEANUP is not set +# CONFIG_CANCELLATION_POINTS is not set + +# +# Performance Monitoring +# +# CONFIG_SCHED_CPULOAD is not set +# CONFIG_SCHED_INSTRUMENTATION is not set + +# +# Files and I/O +# +CONFIG_DEV_CONSOLE=y +# CONFIG_FDCLONE_DISABLE is not set +# CONFIG_FDCLONE_STDIO is not set +CONFIG_SDCLONE_DISABLE=y +CONFIG_NFILE_DESCRIPTORS=6 +CONFIG_NFILE_STREAMS=6 +CONFIG_NAME_MAX=32 +# CONFIG_PRIORITY_INHERITANCE is not set + +# +# RTOS hooks +# +# CONFIG_BOARD_INITIALIZE is not set +# CONFIG_SCHED_STARTHOOK is not set +# CONFIG_SCHED_ATEXIT is not set +# CONFIG_SCHED_ONEXIT is not set + +# +# Signal Numbers +# +CONFIG_SIG_SIGUSR1=1 +CONFIG_SIG_SIGUSR2=2 +CONFIG_SIG_SIGALARM=3 +CONFIG_SIG_SIGCONDTIMEDOUT=16 +# CONFIG_MODULE is not set + +# +# Work queue support +# +# CONFIG_SCHED_WORKQUEUE is not set +# CONFIG_SCHED_HPWORK is not set +# CONFIG_SCHED_LPWORK is not set + +# +# Stack and heap information +# +CONFIG_IDLETHREAD_STACKSIZE=1024 +CONFIG_USERMAIN_STACKSIZE=1536 +CONFIG_PTHREAD_STACK_MIN=256 +CONFIG_PTHREAD_STACK_DEFAULT=1536 +# CONFIG_LIB_SYSCALL is not set + +# +# Device Drivers +# +CONFIG_DISABLE_POLL=y +CONFIG_DEV_NULL=y +# CONFIG_DEV_ZERO is not set +# CONFIG_DEV_URANDOM is not set +# CONFIG_DEV_LOOP is not set + +# +# Buffering +# + +# +# Common I/O Buffer Support +# +# CONFIG_DRIVERS_IOB is not set +# CONFIG_DRVR_WRITEBUFFER is not set +# CONFIG_DRVR_READAHEAD is not set +# CONFIG_RAMDISK is not set +# CONFIG_CAN is not set +# CONFIG_ARCH_HAVE_PWM_PULSECOUNT is not set +# CONFIG_ARCH_HAVE_PWM_MULTICHAN is not set +# CONFIG_PWM is not set +# CONFIG_ARCH_HAVE_I2CRESET is not set +# CONFIG_I2C is not set +# CONFIG_ARCH_HAVE_SPI_CRCGENERATION is not set +# CONFIG_ARCH_HAVE_SPI_CS_CONTROL is not set +# CONFIG_ARCH_HAVE_SPI_BITORDER is not set +# CONFIG_SPI is not set +# CONFIG_I2S is not set + +# +# Timer Driver Support +# +# CONFIG_TIMER is not set +# CONFIG_ONESHOT is not set +# CONFIG_RTC is not set +# CONFIG_WATCHDOG is not set +# CONFIG_ANALOG is not set +# CONFIG_AUDIO_DEVICES is not set +# CONFIG_VIDEO_DEVICES is not set +# CONFIG_BCH is not set +# CONFIG_INPUT is not set + +# +# IO Expander/GPIO Support +# +# CONFIG_IOEXPANDER is not set +# CONFIG_DEV_GPIO is not set + +# +# LCD Driver Support +# +# CONFIG_LCD is not set +# CONFIG_SLCD is not set + +# +# LED Support +# +# CONFIG_USERLED is not set +# CONFIG_RGBLED is not set +# CONFIG_PCA9635PW is not set +# CONFIG_NCP5623C is not set +# CONFIG_MMCSD is not set +# CONFIG_MODEM is not set +# CONFIG_MTD is not set +# CONFIG_EEPROM is not set +# CONFIG_PIPES is not set +# CONFIG_PM is not set +# CONFIG_POWER is not set +# CONFIG_SENSORS is not set +CONFIG_SERIAL=y +# CONFIG_DEV_LOWCONSOLE is not set +# CONFIG_SERIAL_REMOVABLE is not set +CONFIG_SERIAL_CONSOLE=y +# CONFIG_16550_UART is not set +# CONFIG_UART_SERIALDRIVER is not set +# CONFIG_UART0_SERIALDRIVER is not set +# CONFIG_UART1_SERIALDRIVER is not set +# CONFIG_UART2_SERIALDRIVER is not set +# CONFIG_UART3_SERIALDRIVER is not set +# CONFIG_UART4_SERIALDRIVER is not set +# CONFIG_UART5_SERIALDRIVER is not set +# CONFIG_UART6_SERIALDRIVER is not set +# CONFIG_UART7_SERIALDRIVER is not set +# CONFIG_UART8_SERIALDRIVER is not set +# CONFIG_SCI0_SERIALDRIVER is not set +# CONFIG_SCI1_SERIALDRIVER is not set +# CONFIG_USART0_SERIALDRIVER is not set +# CONFIG_USART1_SERIALDRIVER is not set +CONFIG_USART2_SERIALDRIVER=y +# CONFIG_USART3_SERIALDRIVER is not set +# CONFIG_USART4_SERIALDRIVER is not set +# CONFIG_USART5_SERIALDRIVER is not set +# CONFIG_USART6_SERIALDRIVER is not set +# CONFIG_USART7_SERIALDRIVER is not set +# CONFIG_USART8_SERIALDRIVER is not set +# CONFIG_OTHER_UART_SERIALDRIVER is not set +CONFIG_MCU_SERIAL=y +CONFIG_STANDARD_SERIAL=y +# CONFIG_SERIAL_IFLOWCONTROL is not set +# CONFIG_SERIAL_OFLOWCONTROL is not set +# CONFIG_SERIAL_DMA is not set +# CONFIG_SERIAL_TIOCSERGSTRUCT is not set +CONFIG_ARCH_HAVE_SERIAL_TERMIOS=y +CONFIG_USART2_SERIAL_CONSOLE=y +# CONFIG_OTHER_SERIAL_CONSOLE is not set +# CONFIG_NO_SERIAL_CONSOLE is not set + +# +# USART2 Configuration +# +CONFIG_USART2_RXBUFSIZE=256 +CONFIG_USART2_TXBUFSIZE=256 +CONFIG_USART2_BAUD=115200 +CONFIG_USART2_BITS=8 +CONFIG_USART2_PARITY=0 +CONFIG_USART2_2STOP=0 +# CONFIG_USART2_IFLOWCONTROL is not set +# CONFIG_USART2_OFLOWCONTROL is not set +# CONFIG_USART2_DMA is not set +# CONFIG_PSEUDOTERM is not set +# CONFIG_USBDEV is not set +# CONFIG_USBHOST is not set +# CONFIG_USBMISC is not set +# CONFIG_HAVE_USBTRACE is not set +# CONFIG_DRIVERS_WIRELESS is not set +# CONFIG_DRIVERS_CONTACTLESS is not set + +# +# System Logging +# +# CONFIG_ARCH_SYSLOG is not set +# CONFIG_RAMLOG is not set +# CONFIG_SYSLOG_INTBUFFER is not set +# CONFIG_SYSLOG_TIMESTAMP is not set +CONFIG_SYSLOG_SERIAL_CONSOLE=y +# CONFIG_SYSLOG_CHAR is not set +CONFIG_SYSLOG_CONSOLE=y +# CONFIG_SYSLOG_NONE is not set +# CONFIG_SYSLOG_FILE is not set +# CONFIG_SYSLOG_CHARDEV is not set + +# +# Networking Support +# +# CONFIG_ARCH_HAVE_NET is not set +# CONFIG_ARCH_HAVE_PHY is not set +# CONFIG_NET is not set + +# +# Crypto API +# +# CONFIG_CRYPTO is not set + +# +# File Systems +# + +# +# File system configuration +# +# CONFIG_DISABLE_MOUNTPOINT is not set +# CONFIG_FS_AUTOMOUNTER is not set +CONFIG_DISABLE_PSEUDOFS_OPERATIONS=y +CONFIG_FS_READABLE=y +# CONFIG_FS_WRITABLE is not set +# CONFIG_FS_NAMED_SEMAPHORES is not set +# CONFIG_FS_RAMMAP is not set +# CONFIG_FS_FAT is not set +# CONFIG_FS_NXFFS is not set +# CONFIG_FS_ROMFS is not set +# CONFIG_FS_TMPFS is not set +# CONFIG_FS_SMARTFS is not set +# CONFIG_FS_BINFS is not set +CONFIG_FS_PROCFS=y +# CONFIG_FS_PROCFS_REGISTER is not set + +# +# Exclude individual procfs entries +# +# CONFIG_FS_PROCFS_EXCLUDE_PROCESS is not set +# CONFIG_FS_PROCFS_EXCLUDE_UPTIME is not set +# CONFIG_FS_PROCFS_EXCLUDE_MOUNTS is not set +# CONFIG_FS_UNIONFS is not set + +# +# Graphics Support +# +# CONFIG_NX is not set + +# +# Memory Management +# +CONFIG_MM_SMALL=y +CONFIG_MM_REGIONS=1 +# CONFIG_ARCH_HAVE_HEAP2 is not set +# CONFIG_GRAN is not set + +# +# Audio Support +# +# CONFIG_AUDIO is not set + +# +# Wireless Support +# + +# +# Binary Loader +# +# CONFIG_BINFMT_DISABLE is not set +# CONFIG_NXFLAT is not set +# CONFIG_ELF is not set +CONFIG_BUILTIN=y +# CONFIG_PIC is not set +# CONFIG_SYMTAB_ORDEREDBYNAME is not set + +# +# Library Routines +# + +# +# Standard C Library Options +# + +# +# Standard C I/O +# +CONFIG_STDIO_DISABLE_BUFFERING=y +CONFIG_NUNGET_CHARS=0 +# CONFIG_NOPRINTF_FIELDWIDTH is not set +# CONFIG_LIBC_FLOATINGPOINT is not set +# CONFIG_LIBC_LONG_LONG is not set +# CONFIG_LIBC_SCANSET is not set +# CONFIG_EOL_IS_CR is not set +# CONFIG_EOL_IS_LF is not set +# CONFIG_EOL_IS_BOTH_CRLF is not set +CONFIG_EOL_IS_EITHER_CRLF=y +# CONFIG_MEMCPY_VIK is not set +# CONFIG_LIBM is not set + +# +# Architecture-Specific Support +# +CONFIG_ARCH_LOWPUTC=y +# CONFIG_ARCH_ROMGETC is not set +# CONFIG_LIBC_ARCH_MEMCPY is not set +# CONFIG_LIBC_ARCH_MEMCMP is not set +# CONFIG_LIBC_ARCH_MEMMOVE is not set +# CONFIG_LIBC_ARCH_MEMSET is not set +# CONFIG_LIBC_ARCH_STRCHR is not set +# CONFIG_LIBC_ARCH_STRCMP is not set +# CONFIG_LIBC_ARCH_STRCPY is not set +# CONFIG_LIBC_ARCH_STRNCPY is not set +# CONFIG_LIBC_ARCH_STRLEN is not set +# CONFIG_LIBC_ARCH_STRNLEN is not set +# CONFIG_LIBC_ARCH_ELF is not set + +# +# stdlib Options +# +CONFIG_LIB_RAND_ORDER=1 + +# +# Program Execution Options +# +# CONFIG_LIBC_EXECFUNCS is not set +CONFIG_POSIX_SPAWN_PROXY_STACKSIZE=1024 +CONFIG_TASK_SPAWN_DEFAULT_STACKSIZE=1536 + +# +# errno Decode Support +# +# CONFIG_LIBC_STRERROR is not set +# CONFIG_LIBC_PERROR_STDOUT is not set + +# +# memcpy/memset Options +# +# CONFIG_MEMSET_OPTSPEED is not set +# CONFIG_LIBC_DLLFCN is not set +# CONFIG_LIBC_MODLIB is not set +# CONFIG_LIBC_WCHAR is not set +# CONFIG_LIBC_LOCALE is not set + +# +# Time/Time Zone Support +# +# CONFIG_TIME_EXTENDED is not set +CONFIG_ARCH_HAVE_TLS=y + +# +# Thread Local Storage (TLS) +# +# CONFIG_TLS is not set + +# +# Network-Related Options +# +# CONFIG_LIBC_IPv4_ADDRCONV is not set +# CONFIG_LIBC_IPv6_ADDRCONV is not set +# CONFIG_LIBC_NETDB is not set + +# +# NETDB Support +# +# CONFIG_NETDB_HOSTFILE is not set +# CONFIG_LIBC_IOCTL_VARIADIC is not set +CONFIG_LIB_SENDFILE_BUFSIZE=512 + +# +# Non-standard Library Support +# +# CONFIG_LIB_CRC64_FAST is not set +# CONFIG_LIB_KBDCODEC is not set +# CONFIG_LIB_SLCDCODEC is not set +# CONFIG_LIB_HEX2BIN is not set + +# +# Basic CXX Support +# +# CONFIG_C99_BOOL8 is not set +# CONFIG_HAVE_CXX is not set + +# +# Application Configuration +# + +# +# Built-In Applications +# +CONFIG_BUILTIN_PROXY_STACKSIZE=1024 + +# +# CAN Utilities +# + +# +# Examples +# +# CONFIG_EXAMPLES_BUTTONS is not set +# CONFIG_EXAMPLES_CCTYPE is not set +# CONFIG_EXAMPLES_CHAT is not set +# CONFIG_EXAMPLES_CONFIGDATA is not set +# CONFIG_EXAMPLES_DHCPD is not set +# CONFIG_EXAMPLES_ELF is not set +# CONFIG_EXAMPLES_FTPC is not set +# CONFIG_EXAMPLES_FTPD is not set +# CONFIG_EXAMPLES_HELLO is not set +# CONFIG_EXAMPLES_HIDKBD is not set +# CONFIG_EXAMPLES_IGMP is not set +# CONFIG_EXAMPLES_JSON is not set +# CONFIG_EXAMPLES_KEYPADTEST is not set +# CONFIG_EXAMPLES_MEDIA is not set +# CONFIG_EXAMPLES_MM is not set +# CONFIG_EXAMPLES_MODBUS is not set +# CONFIG_EXAMPLES_MOUNT is not set +CONFIG_EXAMPLES_NSH=y +# CONFIG_EXAMPLES_NULL is not set +# CONFIG_EXAMPLES_NXFFS is not set +# CONFIG_EXAMPLES_NXHELLO is not set +# CONFIG_EXAMPLES_NXIMAGE is not set +# CONFIG_EXAMPLES_NX is not set +# CONFIG_EXAMPLES_NXLINES is not set +# CONFIG_EXAMPLES_NXTERM is not set +# CONFIG_EXAMPLES_NXTEXT is not set +# CONFIG_EXAMPLES_OSTEST is not set +# CONFIG_EXAMPLES_PCA9635 is not set +# CONFIG_EXAMPLES_POSIXSPAWN is not set +# CONFIG_EXAMPLES_PPPD is not set +# CONFIG_EXAMPLES_RFID_READUID is not set +# CONFIG_EXAMPLES_RGBLED is not set +# CONFIG_EXAMPLES_SENDMAIL is not set +# CONFIG_EXAMPLES_SERIALBLASTER is not set +# CONFIG_EXAMPLES_SERIALRX is not set +# CONFIG_EXAMPLES_SERLOOP is not set +# CONFIG_EXAMPLES_SLCD is not set +# CONFIG_EXAMPLES_SMART is not set +# CONFIG_EXAMPLES_SMART_TEST is not set +# CONFIG_EXAMPLES_SMP is not set +# CONFIG_EXAMPLES_STAT is not set +# CONFIG_EXAMPLES_TCPECHO is not set +# CONFIG_EXAMPLES_TELNETD is not set +# CONFIG_EXAMPLES_TIFF is not set +# CONFIG_EXAMPLES_TOUCHSCREEN is not set +# CONFIG_EXAMPLES_USBSERIAL is not set +# CONFIG_EXAMPLES_WATCHDOG is not set +# CONFIG_EXAMPLES_WEBSERVER is not set +# CONFIG_EXAMPLES_XBC_TEST is not set + +# +# File System Utilities +# +# CONFIG_FSUTILS_INIFILE is not set +# CONFIG_FSUTILS_PASSWD is not set + +# +# GPS Utilities +# +# CONFIG_GPSUTILS_MINMEA_LIB is not set + +# +# Graphics Support +# +# CONFIG_TIFF is not set +# CONFIG_GRAPHICS_TRAVELER is not set + +# +# Interpreters +# +# CONFIG_INTERPRETERS_BAS is not set +# CONFIG_INTERPRETERS_FICL is not set +# CONFIG_INTERPRETERS_MICROPYTHON is not set +# CONFIG_INTERPRETERS_MINIBASIC is not set +# CONFIG_INTERPRETERS_PCODE is not set + +# +# FreeModBus +# +# CONFIG_MODBUS is not set + +# +# Network Utilities +# +# CONFIG_NETUTILS_CODECS is not set +# CONFIG_NETUTILS_ESP8266 is not set +# CONFIG_NETUTILS_FTPC is not set +# CONFIG_NETUTILS_JSON is not set +# CONFIG_NETUTILS_SMTP is not set + +# +# NSH Library +# +CONFIG_NSH_LIBRARY=y +# CONFIG_NSH_MOTD is not set + +# +# Command Line Configuration +# +CONFIG_NSH_READLINE=y +# CONFIG_NSH_CLE is not set +CONFIG_NSH_LINELEN=64 +CONFIG_NSH_DISABLE_SEMICOLON=y +# CONFIG_NSH_CMDPARMS is not set +CONFIG_NSH_MAXARGUMENTS=6 +# CONFIG_NSH_ARGCAT is not set +CONFIG_NSH_NESTDEPTH=3 +# CONFIG_NSH_DISABLEBG is not set +CONFIG_NSH_BUILTIN_APPS=y + +# +# Disable Individual commands +# +CONFIG_NSH_DISABLE_ADDROUTE=y +CONFIG_NSH_DISABLE_BASENAME=y +# CONFIG_NSH_DISABLE_CAT is not set +# CONFIG_NSH_DISABLE_CD is not set +CONFIG_NSH_DISABLE_CP=y +CONFIG_NSH_DISABLE_CMP=y +CONFIG_NSH_DISABLE_DATE=y +CONFIG_NSH_DISABLE_DD=y +CONFIG_NSH_DISABLE_DF=y +CONFIG_NSH_DISABLE_DELROUTE=y +CONFIG_NSH_DISABLE_DIRNAME=y +# CONFIG_NSH_DISABLE_ECHO is not set +# CONFIG_NSH_DISABLE_EXEC is not set +# CONFIG_NSH_DISABLE_EXIT is not set +# CONFIG_NSH_DISABLE_FREE is not set +CONFIG_NSH_DISABLE_GET=y +# CONFIG_NSH_DISABLE_HELP is not set +# CONFIG_NSH_DISABLE_HEXDUMP is not set +CONFIG_NSH_DISABLE_IFCONFIG=y +CONFIG_NSH_DISABLE_IFUPDOWN=y +# CONFIG_NSH_DISABLE_KILL is not set +CONFIG_NSH_DISABLE_LOSETUP=y +CONFIG_NSH_DISABLE_LOSMART=y +# CONFIG_NSH_DISABLE_LS is not set +# CONFIG_NSH_DISABLE_MB is not set +CONFIG_NSH_DISABLE_MKDIR=y +CONFIG_NSH_DISABLE_MKRD=y +# CONFIG_NSH_DISABLE_MH is not set +CONFIG_NSH_DISABLE_MOUNT=y +# CONFIG_NSH_DISABLE_MV is not set +# CONFIG_NSH_DISABLE_MW is not set +CONFIG_NSH_DISABLE_PRINTF=y +# CONFIG_NSH_DISABLE_PS is not set +CONFIG_NSH_DISABLE_PUT=y +# CONFIG_NSH_DISABLE_PWD is not set +CONFIG_NSH_DISABLE_RM=y +CONFIG_NSH_DISABLE_RMDIR=y +# CONFIG_NSH_DISABLE_SET is not set +# CONFIG_NSH_DISABLE_SH is not set +# CONFIG_NSH_DISABLE_SLEEP is not set +CONFIG_NSH_DISABLE_TIME=y +# CONFIG_NSH_DISABLE_TEST is not set +CONFIG_NSH_DISABLE_UMOUNT=y +CONFIG_NSH_DISABLE_UNAME=y +# CONFIG_NSH_DISABLE_UNSET is not set +# CONFIG_NSH_DISABLE_USLEEP is not set +CONFIG_NSH_DISABLE_WGET=y +# CONFIG_NSH_DISABLE_XD is not set +CONFIG_NSH_MMCSDMINOR=0 + +# +# Configure Command Options +# +CONFIG_NSH_CODECS_BUFSIZE=128 +# CONFIG_NSH_CMDOPT_HEXDUMP is not set +CONFIG_NSH_PROC_MOUNTPOINT="/proc" +CONFIG_NSH_FILEIOSIZE=64 + +# +# Scripting Support +# +CONFIG_NSH_DISABLESCRIPT=y + +# +# Console Configuration +# +CONFIG_NSH_CONSOLE=y +# CONFIG_NSH_ALTCONDEV is not set +CONFIG_NSH_ARCHINIT=y +# CONFIG_NSH_LOGIN is not set +# CONFIG_NSH_CONSOLE_LOGIN is not set + +# +# NxWidgets/NxWM +# + +# +# Platform-specific Support +# +# CONFIG_PLATFORM_CONFIGDATA is not set + +# +# System Libraries and NSH Add-Ons +# +# CONFIG_SYSTEM_CLE is not set +# CONFIG_SYSTEM_CUTERM is not set +# CONFIG_SYSTEM_FREE is not set +# CONFIG_SYSTEM_HEX2BIN is not set +# CONFIG_SYSTEM_HEXED is not set +# CONFIG_SYSTEM_INSTALL is not set +# CONFIG_SYSTEM_RAMTEST is not set +CONFIG_READLINE_HAVE_EXTMATCH=y +CONFIG_SYSTEM_READLINE=y +CONFIG_READLINE_ECHO=y +# CONFIG_READLINE_TABCOMPLETION is not set +# CONFIG_READLINE_CMD_HISTORY is not set +# CONFIG_SYSTEM_SUDOKU is not set +# CONFIG_SYSTEM_SYSTEM is not set +# CONFIG_SYSTEM_TEE is not set +# CONFIG_SYSTEM_UBLOXMODEM is not set +# CONFIG_SYSTEM_VI is not set +# CONFIG_SYSTEM_ZMODEM is not set + +# +# Wireless Libraries and NSH Add-Ons +# diff --git a/configs/nucleo-f091rc/scripts/flash.ld b/configs/nucleo-f091rc/scripts/flash.ld new file mode 100644 index 00000000000..35bd797b0f1 --- /dev/null +++ b/configs/nucleo-f091rc/scripts/flash.ld @@ -0,0 +1,127 @@ +/**************************************************************************** + * configs/nucleo-f091rc/scripts/flash.ld + * + * Copyright (C) 2017 Gregory Nutt. All rights reserved. + * Author: Gregory Nutt + * Alan Carvalho de Assis + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + +/* The STM32F091RCT6 has 256Kb of FLASH beginning at address 0x0800:0000 and + * 32Kb of SRAM at address 0x20000000. + * + * When booting from FLASH, FLASH memory is aliased to address 0x0000:0000 + * where the code expects to begin execution by jumping to the entry point in + * the 0x0800:0000 address range. + */ + +MEMORY +{ + flash (rx) : ORIGIN = 0x08000000, LENGTH = 256K + sram (rwx) : ORIGIN = 0x20000000, LENGTH = 32K +} + +OUTPUT_ARCH(arm) +EXTERN(_vectors) +ENTRY(_stext) + +SECTIONS +{ + .text : + { + _stext = ABSOLUTE(.); + *(.vectors) + *(.text .text.*) + *(.fixup) + *(.gnu.warning) + *(.rodata .rodata.*) + *(.gnu.linkonce.t.*) + *(.glue_7) + *(.glue_7t) + *(.got) + *(.gcc_except_table) + *(.gnu.linkonce.r.*) + _etext = ABSOLUTE(.); + } > flash + + .init_section : + { + _sinit = ABSOLUTE(.); + *(.init_array .init_array.*) + _einit = ABSOLUTE(.); + } > flash + + .ARM.extab : + { + *(.ARM.extab*) + } > flash + + __exidx_start = ABSOLUTE(.); + .ARM.exidx : + { + *(.ARM.exidx*) + } > flash + __exidx_end = ABSOLUTE(.); + + _eronly = ABSOLUTE(.); + + .data : + { + _sdata = ABSOLUTE(.); + *(.data .data.*) + *(.gnu.linkonce.d.*) + CONSTRUCTORS + _edata = ABSOLUTE(.); + } > sram AT > flash + + .bss : + { + _sbss = ABSOLUTE(.); + *(.bss .bss.*) + *(.gnu.linkonce.b.*) + *(COMMON) + _ebss = ABSOLUTE(.); + } > sram + + /* Stabs debugging sections. */ + + .stab 0 : { *(.stab) } + .stabstr 0 : { *(.stabstr) } + .stab.excl 0 : { *(.stab.excl) } + .stab.exclstr 0 : { *(.stab.exclstr) } + .stab.index 0 : { *(.stab.index) } + .stab.indexstr 0 : { *(.stab.indexstr) } + .comment 0 : { *(.comment) } + .debug_abbrev 0 : { *(.debug_abbrev) } + .debug_info 0 : { *(.debug_info) } + .debug_line 0 : { *(.debug_line) } + .debug_pubnames 0 : { *(.debug_pubnames) } + .debug_aranges 0 : { *(.debug_aranges) } +} diff --git a/configs/nucleo-f091rc/src/.gitignore b/configs/nucleo-f091rc/src/.gitignore new file mode 100644 index 00000000000..726d936e1e3 --- /dev/null +++ b/configs/nucleo-f091rc/src/.gitignore @@ -0,0 +1,2 @@ +/.depend +/Make.dep diff --git a/configs/nucleo-f091rc/src/Makefile b/configs/nucleo-f091rc/src/Makefile new file mode 100644 index 00000000000..03c9119f06d --- /dev/null +++ b/configs/nucleo-f091rc/src/Makefile @@ -0,0 +1,56 @@ +############################################################################ +# configs/nucleo-f091rc/src/Makefile +# +# Copyright (C) 2017 Gregory Nutt. All rights reserved. +# Author: Gregory Nutt +# Alan Carvalho de Assis +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in +# the documentation and/or other materials provided with the +# distribution. +# 3. Neither the name NuttX nor the names of its contributors may be +# used to endorse or promote products derived from this software +# without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE +# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS +# OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +# AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN +# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +# POSSIBILITY OF SUCH DAMAGE. +# +############################################################################ + +-include $(TOPDIR)/Make.defs + +ASRCS = +CSRCS = stm32_boot.c stm32_bringup.c + +ifeq ($(CONFIG_ARCH_LEDS),y) +CSRCS += stm32_autoleds.c +else +CSRCS += stm32_userleds.c +endif + +ifeq ($(CONFIG_ARCH_BUTTONS),y) +CSRCS += stm32_buttons.c +endif + +ifeq ($(CONFIG_LIB_BOARDCTL),y) +CSRCS += stm32_appinit.c +endif + +include $(TOPDIR)/configs/Board.mk diff --git a/configs/nucleo-f091rc/src/nucleo-f091rc.h b/configs/nucleo-f091rc/src/nucleo-f091rc.h new file mode 100644 index 00000000000..4cd683af249 --- /dev/null +++ b/configs/nucleo-f091rc/src/nucleo-f091rc.h @@ -0,0 +1,123 @@ +/**************************************************************************** + * configs/nucleo-f091rc/src/nucleo-f091rc.h + * + * Copyright (C) 2017 Gregory Nutt. All rights reserved. + * Author: Gregory Nutt + * Alan Carvalho de Assis + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + +#ifndef __CONFIGS_NUCLEO_F091RC_SRC_NUCLEO_F091RC_H +#define __CONFIGS_NUCLEO_F091RC_SRC_NUCLEO_F091RC_H + +/**************************************************************************** + * Included Files + ****************************************************************************/ + +#include +#include +#include + +#include "stm32f0_gpio.h" + +/**************************************************************************** + * Pre-processor Definitions + ****************************************************************************/ + +/* Configuration ************************************************************/ +/* How many SPI modules does this chip support? */ + +#if STM32F0_NSPI < 1 +# undef CONFIG_STM32F0_SPI1 +# undef CONFIG_STM32F0_SPI2 +# undef CONFIG_STM32F0_SPI3 +#elif STM32F0_NSPI < 2 +# undef CONFIG_STM32F0_SPI2 +# undef CONFIG_STM32F0_SPI3 +#elif STM32F0_NSPI < 3 +# undef CONFIG_STM32F0_SPI3 +#endif + +/* Nucleo-F091RC GPIOs ******************************************************/ +/* LED. User LD2: the green LED is a user LED connected to Arduino signal + * D13 corresponding to MCU I/O PA5 (pin 21) or PB13 (pin 34) depending on + * the STM32 target. + * + * - When the I/O is HIGH value, the LED is on. + * - When the I/O is LOW, the LED is off. + */ + +#define GPIO_LD2 (GPIO_OUTPUT | GPIO_PUSHPULL | GPIO_SPEED_10MHz | \ + GPIO_OUTPUT_CLEAR | GPIO_PORTA | GPIO_PIN5) + +/* Button definitions *******************************************************/ +/* B1 USER: the user button is connected to the I/O PC13 (pin 2) of the STM32 + * microcontroller. + */ + +#define MIN_IRQBUTTON BUTTON_USER +#define MAX_IRQBUTTON BUTTON_USER +#define NUM_IRQBUTTONS 1 + +#define GPIO_BTN_USER (GPIO_INPUT | GPIO_FLOAT | GPIO_EXTI | \ + GPIO_PORTC | GPIO_PIN13) + +/**************************************************************************** + * Public Types + ****************************************************************************/ + +/**************************************************************************** + * Public data + ****************************************************************************/ + +#ifndef __ASSEMBLY__ + +/**************************************************************************** + * Public Functions + ****************************************************************************/ + +/**************************************************************************** + * Name: stm32_bringup + * + * Description: + * Perform architecture-specific initialization + * + * CONFIG_BOARD_INITIALIZE=y : + * Called from board_initialize(). + * + * CONFIG_BOARD_INITIALIZE=n && CONFIG_LIB_BOARDCTL=y : + * Called from the NSH library + * + ****************************************************************************/ + +int stm32_bringup(void); + +#endif /* __ASSEMBLY__ */ +#endif /* __CONFIGS_NUCLEO_F091RC_SRC_NUCLEO_F091RC_H */ diff --git a/configs/nucleo-f091rc/src/stm32_appinit.c b/configs/nucleo-f091rc/src/stm32_appinit.c new file mode 100644 index 00000000000..784c155b6b4 --- /dev/null +++ b/configs/nucleo-f091rc/src/stm32_appinit.c @@ -0,0 +1,87 @@ +/**************************************************************************** + * config/nucleo-f091rc/src/stm32_appinit.c + * + * Copyright (C) 2017 Gregory Nutt. All rights reserved. + * Author: Gregory Nutt + * Alan Carvalho de Assis + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + +/**************************************************************************** + * Included Files + ****************************************************************************/ + +#include + +#include + +#include + +#include "nucleo-f091rc.h" + +/**************************************************************************** + * Public Functions + ****************************************************************************/ + +/**************************************************************************** + * Name: board_app_initialize + * + * Description: + * Perform application specific initialization. This function is never + * called directly from application code, but only indirectly via the + * (non-standard) boardctl() interface using the command BOARDIOC_INIT. + * + * Input Parameters: + * arg - The boardctl() argument is passed to the board_app_initialize() + * implementation without modification. The argument has no + * meaning to NuttX; the meaning of the argument is a contract + * between the board-specific initalization logic and the the + * matching application logic. The value cold be such things as a + * mode enumeration value, a set of DIP switch switch settings, a + * pointer to configuration data read from a file or serial FLASH, + * or whatever you would like to do with it. Every implementation + * should accept zero/NULL as a default configuration. + * + * Returned Value: + * Zero (OK) is returned on success; a negated errno value is returned on + * any failure to indicate the nature of the failure. + * + ****************************************************************************/ + +int board_app_initialize(uintptr_t arg) +{ + /* Did we already initialize via board_initialize()? */ + +#ifndef CONFIG_BOARD_INITIALIZE + return stm32_bringup(); +#else + return OK; +#endif +} diff --git a/configs/nucleo-f091rc/src/stm32_autoleds.c b/configs/nucleo-f091rc/src/stm32_autoleds.c new file mode 100644 index 00000000000..1f093e4c8ef --- /dev/null +++ b/configs/nucleo-f091rc/src/stm32_autoleds.c @@ -0,0 +1,96 @@ +/**************************************************************************** + * configs/nucleo-f091rc/src/stm32_autoleds.c + * + * Copyright (C) 2017 Gregory Nutt. All rights reserved. + * Author: Gregory Nutt + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + +/**************************************************************************** + * Included Files + ****************************************************************************/ + +#include + +#include +#include +#include + +#include +#include + +#include "chip.h" +#include "up_arch.h" +#include "up_internal.h" +#include "stm32f0_gpio.h" +#include "nucleo-f091rc.h" + +#ifdef CONFIG_ARCH_LEDS + +/**************************************************************************** + * Public Functions + ****************************************************************************/ + +/**************************************************************************** + * Name: board_autoled_initialize + ****************************************************************************/ + +void board_autoled_initialize(void) +{ + /* Configure LD2 GPIO for output */ + + stm32f0_configgpio(GPIO_LD2); +} + +/**************************************************************************** + * Name: board_autoled_on + ****************************************************************************/ + +void board_autoled_on(int led) +{ + if (led == 1) + { + stm32f0_gpiowrite(GPIO_LD2, true); + } +} + +/**************************************************************************** + * Name: board_autoled_off + ****************************************************************************/ + +void board_autoled_off(int led) +{ + if (led == 1) + { + stm32f0_gpiowrite(GPIO_LD2, false); + } +} + +#endif /* CONFIG_ARCH_LEDS */ diff --git a/configs/nucleo-f091rc/src/stm32_boot.c b/configs/nucleo-f091rc/src/stm32_boot.c new file mode 100644 index 00000000000..5e50fcabba7 --- /dev/null +++ b/configs/nucleo-f091rc/src/stm32_boot.c @@ -0,0 +1,94 @@ +/************************************************************************************ + * configs/nucleo-f091rc/src/stm32f0_boot.c + * + * Copyright (C) 2017 Gregory Nutt. All rights reserved. + * Author: Gregory Nutt + * Alan Carvalho de Assis + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ************************************************************************************/ + +/************************************************************************************ + * Included Files + ************************************************************************************/ + +#include + +#include + +#include +#include + +#include "up_arch.h" +#include "nucleo-f091rc.h" + +/************************************************************************************ + * Public Functions + ************************************************************************************/ + +/************************************************************************************ + * Name: stm32f0_boardinitialize + * + * Description: + * All STM32 architectures must provide the following entry point. This entry point + * is called early in the intitialization -- after all memory has been configured + * and mapped but before any devices have been initialized. + * + ************************************************************************************/ + +void stm32f0_boardinitialize(void) +{ +#ifdef CONFIG_ARCH_LEDS + /* Configure on-board LEDs if LED support has been selected. */ + + board_autoled_initialize(); +#endif +} + +/**************************************************************************** + * Name: board_initialize + * + * Description: + * If CONFIG_BOARD_INITIALIZE is selected, then an additional + * initialization call will be performed in the boot-up sequence to a + * function called board_initialize(). board_initialize() will be + * called immediately after up_initialize() is called and just before the + * initial application is started. This additional initialization phase + * may be used, for example, to initialize board-specific device drivers. + * + ****************************************************************************/ + +#ifdef CONFIG_BOARD_INITIALIZE +void board_initialize(void) +{ + /* Perform board-specific initialization here if so configured */ + + (void)stm32_bringup(); +} +#endif diff --git a/configs/nucleo-f091rc/src/stm32_bringup.c b/configs/nucleo-f091rc/src/stm32_bringup.c new file mode 100644 index 00000000000..bae9f6aa2c8 --- /dev/null +++ b/configs/nucleo-f091rc/src/stm32_bringup.c @@ -0,0 +1,82 @@ +/**************************************************************************** + * config/nucleo-f091rc/src/stm32_bringup.c + * + * Copyright (C) 2017 Gregory Nutt. All rights reserved. + * Author: Gregory Nutt + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + +/**************************************************************************** + * Included Files + ****************************************************************************/ + +#include + +#include +#include +#include + +#include "nucleo-f091rc.h" + +/**************************************************************************** + * Public Functions + ****************************************************************************/ + +/**************************************************************************** + * Name: stm32_bringup + * + * Description: + * Perform architecture-specific initialization + * + * CONFIG_BOARD_INITIALIZE=y : + * Called from board_initialize(). + * + * CONFIG_BOARD_INITIALIZE=n && CONFIG_LIB_BOARDCTL=y : + * Called from the NSH library + * + ****************************************************************************/ + +int stm32_bringup(void) +{ + int ret; + +#ifdef CONFIG_FS_PROCFS + /* Mount the procfs file system */ + + ret = mount(NULL, "/proc", "procfs", 0, NULL); + if (ret < 0) + { + ferr("ERROR: Failed to mount procfs at /proc: %d\n", ret); + } +#endif + + UNUSED(ret); + return OK; +} diff --git a/configs/nucleo-f091rc/src/stm32_buttons.c b/configs/nucleo-f091rc/src/stm32_buttons.c new file mode 100644 index 00000000000..53ada3736b0 --- /dev/null +++ b/configs/nucleo-f091rc/src/stm32_buttons.c @@ -0,0 +1,128 @@ +/**************************************************************************** + * configs/nucleo-f091rc/src/stm32_buttons.c + * + * Copyright (C) 2017 Gregory Nutt. All rights reserved. + * Author: Gregory Nutt + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + +/**************************************************************************** + * Included Files + ****************************************************************************/ + +#include + +#include +#include +#include + +#include +#include +#include + +#include "stm32f0_gpio.h" +#include "nucleo-f091rc.h" + +#ifdef CONFIG_ARCH_BUTTONS + +/**************************************************************************** + * Public Functions + ****************************************************************************/ + +/**************************************************************************** + * Name: board_button_initialize + * + * Description: + * board_button_initialize() must be called to initialize button resources. + * After that, board_buttons() may be called to collect the current state + * of all buttons or board_button_irq() may be called to register button + * interrupt handlers. + * + ****************************************************************************/ + +void board_button_initialize(void) +{ + /* Configure the single button as an input. NOTE that EXTI interrupts are + * also configured for the pin. + */ + + stm32f0_configgpio(GPIO_BTN_USER); +} + +/**************************************************************************** + * Name: board_buttons + ****************************************************************************/ + +uint32_t board_buttons(void) +{ + /* Check that state of each USER button. A LOW value means that the key is + * pressed. + */ + + bool released = stm32f0_gpioread(GPIO_BTN_USER); + return !released; +} + +/************************************************************************************ + * Button support. + * + * Description: + * board_button_initialize() must be called to initialize button resources. After + * that, board_buttons() may be called to collect the current state of all + * buttons or board_button_irq() may be called to register button interrupt + * handlers. + * + * After board_button_initialize() has been called, board_buttons() may be called to + * collect the state of all buttons. board_buttons() returns an 32-bit bit set + * with each bit associated with a button. See the BUTTON_*_BIT + * definitions in board.h for the meaning of each bit. + * + * board_button_irq() may be called to register an interrupt handler that will + * be called when a button is depressed or released. The ID value is a + * button enumeration value that uniquely identifies a button resource. See the + * BUTTON_* definitions in board.h for the meaning of enumeration + * value. + * + ************************************************************************************/ + +#ifdef CONFIG_ARCH_IRQBUTTONS +int board_button_irq(int id, xcpt_t irqhandler, FAR void *arg) +{ + int ret = -EINVAL; + + if (id == BUTTON_USER) + { + ret = stm32f0_gpiosetevent(GPIO_BTN_USER, true, true, true, irqhandler, arg); + } + + return ret; +} +#endif +#endif /* CONFIG_ARCH_BUTTONS */ diff --git a/configs/nucleo-f091rc/src/stm32_userleds.c b/configs/nucleo-f091rc/src/stm32_userleds.c new file mode 100644 index 00000000000..b13c1882b73 --- /dev/null +++ b/configs/nucleo-f091rc/src/stm32_userleds.c @@ -0,0 +1,217 @@ +/**************************************************************************** + * configs/nucleo-f091rc/src/stm32_userleds.c + * + * Copyright (C) 2017 Gregory Nutt. All rights reserved. + * Author: Gregory Nutt + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + +/**************************************************************************** + * Included Files + ****************************************************************************/ + +#include + +#include +#include +#include + +#include +#include + +#include "chip.h" +#include "up_arch.h" +#include "up_internal.h" +#include "stm32f0_gpio.h" +#include "nucleo-f091rc.h" + +#ifndef CONFIG_ARCH_LEDS + +/**************************************************************************** + * Private Function Prototypes + ****************************************************************************/ + +/* LED Power Management */ + +#ifdef CONFIG_PM +static void led_pm_notify(struct pm_callback_s *cb, int domain, + enum pm_state_e pmstate); +static int led_pm_prepare(struct pm_callback_s *cb, int domain, + enum pm_state_e pmstate); +#endif + +/**************************************************************************** + * Private Data + ****************************************************************************/ + +#ifdef CONFIG_PM +static struct pm_callback_s g_ledscb = +{ + .notify = led_pm_notify, + .prepare = led_pm_prepare, +}; +#endif + +/**************************************************************************** + * Private Functions + ****************************************************************************/ + +/**************************************************************************** + * Name: led_pm_notify + * + * Description: + * Notify the driver of new power state. This callback is called after + * all drivers have had the opportunity to prepare for the new power state. + * + ****************************************************************************/ + +#ifdef CONFIG_PM +static void led_pm_notify(struct pm_callback_s *cb, int domain, + enum pm_state_e pmstate) +{ + switch (pmstate) + { + case(PM_NORMAL): + { + /* Restore normal LEDs operation */ + + } + break; + + case(PM_IDLE): + { + /* Entering IDLE mode - Turn leds off */ + + } + break; + + case(PM_STANDBY): + { + /* Entering STANDBY mode - Logic for PM_STANDBY goes here */ + + } + break; + + case(PM_SLEEP): + { + /* Entering SLEEP mode - Logic for PM_SLEEP goes here */ + + } + break; + + default: + { + /* Should not get here */ + + } + break; + } +} +#endif + +/**************************************************************************** + * Name: led_pm_prepare + * + * Description: + * Request the driver to prepare for a new power state. This is a warning + * that the system is about to enter into a new power state. The driver + * should begin whatever operations that may be required to enter power + * state. The driver may abort the state change mode by returning a + * non-zero value from the callback function. + * + ****************************************************************************/ + +#ifdef CONFIG_PM +static int led_pm_prepare(struct pm_callback_s *cb, int domain, + enum pm_state_e pmstate) +{ + /* No preparation to change power modes is required by the LEDs driver. + * We always accept the state change by returning OK. + */ + + return OK; +} +#endif + +/**************************************************************************** + * Public Functions + ****************************************************************************/ + +/**************************************************************************** + * Name: board_userled_initialize + ****************************************************************************/ + +void board_userled_initialize(void) +{ + /* Configure LD2 GPIO for output */ + + stm32f0_configgpio(GPIO_LD2); +} + +/**************************************************************************** + * Name: board_userled + ****************************************************************************/ + +void board_userled(int led, bool ledon) +{ + if (led == 1) + { + stm32f0_gpiowrite(GPIO_LD2, ldeon); + } +} + +/**************************************************************************** + * Name: board_userled_all + ****************************************************************************/ + +void board_userled_all(uint8_t ledset) +{ + if (led == 1) + { + stm32f0_gpiowrite(GPIO_LD2, (ledset & BOARD_LD2_BIT) != 0); + } +} + +/**************************************************************************** + * Name: stm32f0_led_pminitialize + ****************************************************************************/ + +#ifdef CONFIG_PM +void stm32f0_led_pminitialize(void) +{ + /* Register to receive power management callbacks */ + + int ret = pm_register(&g_ledscb); + DEBUGASSERT(ret == OK); + UNUSED(ret); +} +#endif /* CONFIG_PM */ + +#endif /* !CONFIG_ARCH_LEDS */ diff --git a/configs/nucleo-f334r8/include/board.h b/configs/nucleo-f334r8/include/board.h index 8d5ce807dcc..ecbb7eafefd 100644 --- a/configs/nucleo-f334r8/include/board.h +++ b/configs/nucleo-f334r8/include/board.h @@ -237,8 +237,14 @@ #define GPIO_USART1_RX GPIO_USART1_RX_1 /* PA10 */ #define GPIO_USART1_TX GPIO_USART1_TX_1 /* PA9 */ -/* HRTIM */ +/* COMP */ +/* OPAMP */ + +#define OPAMP2_VMSEL OPAMP2_VMSEL_PC5 +#define OPAMP2_VPSEL OPAMP2_VPSEL_PB14 + +/* HRTIM */ /* DMA channels *************************************************************/ /* ADC */ diff --git a/configs/nucleo-f334r8/src/nucleo-f334r8.h b/configs/nucleo-f334r8/src/nucleo-f334r8.h index 20b2dbbd5b4..6d7d41d330b 100644 --- a/configs/nucleo-f334r8/src/nucleo-f334r8.h +++ b/configs/nucleo-f334r8/src/nucleo-f334r8.h @@ -202,4 +202,16 @@ int stm32_can_setup(void); int stm32_comp_setup(void); #endif +/**************************************************************************** + * Name: stm32_opamp_setup + * + * Description: + * Initialize OPAMP peripheral for the board. + * + ****************************************************************************/ + +#ifdef CONFIG_OPAMP +int stm32_opamp_setup(void); +#endif + #endif /* __CONFIGS_NUCLEO_F334R8_SRC_NUCLEO_F334R8_H */ diff --git a/configs/nucleo-f334r8/src/stm32_appinit.c b/configs/nucleo-f334r8/src/stm32_appinit.c index 2eb43b85b08..3d1d8410924 100644 --- a/configs/nucleo-f334r8/src/stm32_appinit.c +++ b/configs/nucleo-f334r8/src/stm32_appinit.c @@ -137,6 +137,16 @@ int board_app_initialize(uintptr_t arg) } #endif +#ifdef CONFIG_OPAMP + /* Initialize OPAMP and register the OPAMP driver. */ + + ret = stm32_opamp_setup(); + if (ret < 0) + { + syslog(LOG_ERR, "ERROR: stm32_opamp_setup failed: %d\n", ret); + } +#endif + UNUSED(ret); return OK; } diff --git a/configs/nucleo-f334r8/src/stm32_opamp.c b/configs/nucleo-f334r8/src/stm32_opamp.c index e69de29bb2d..42d2ce370ef 100644 --- a/configs/nucleo-f334r8/src/stm32_opamp.c +++ b/configs/nucleo-f334r8/src/stm32_opamp.c @@ -0,0 +1,99 @@ +/**************************************************************************** + * configs/nucleo-f334r8/src/stm32_opamp.c + * + * Copyright (C) 2017 Gregory Nutt. All rights reserved. + * Author: Mateusz Szafoni + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + +/**************************************************************************** + * Included Files + ****************************************************************************/ + +#include + +#include +#include +#include + +#include +#include + +#include "stm32.h" + +#if defined(CONFIG_OPAMP) && defined(CONFIG_STM32_OPAMP2) + +/**************************************************************************** + * Public Functions + ****************************************************************************/ + +/**************************************************************************** + * Name: stm32_opamp_setup + * + * Description: + * Initialize OPAMP + * + ****************************************************************************/ + +int stm32_opamp_setup(void) +{ + static bool initialized = false; + struct opamp_dev_s* opamp = NULL; + int ret; + + if (!initialized) + { + /* Get the OPAMP interface */ + +#ifdef CONFIG_STM32_OPAMP2 + opamp = stm32_opampinitialize(2); + if (opamp == NULL) + { + aerr("ERROR: Failed to get OPAMP%d interface\n", 2); + return -ENODEV; + } +#endif + + /* Register the OPAMP character driver at /dev/opamp0 */ + + ret = opamp_register("/dev/opamp0", opamp); + if (ret < 0) + { + aerr("ERROR: opamp_register failed: %d\n", ret); + return ret; + } + + initialized = true; + } + + return OK; +} + +#endif /* CONFIG_OPAMP && CONFIG_STM32_OPAMP2 */ diff --git a/configs/nucleo-l476rg/README.txt b/configs/nucleo-l476rg/README.txt index f216b93cf7c..d3312ff3548 100644 --- a/configs/nucleo-l476rg/README.txt +++ b/configs/nucleo-l476rg/README.txt @@ -6,9 +6,9 @@ NucleoL476RG board from ST Micro. See http://www.st.com/nucleo-l476rg -NucleoF476RG: +NucleoL476RG: - Microprocessor: 32-bit ARM Cortex M4 at 80MHz STM32F476RGT6 + Microprocessor: 32-bit ARM Cortex M4 at 80MHz STM32L476RGT6 Memory: 1024 KB Flash and 96+32 KB SRAM ADC: 2×12-bit, 2.4 MSPS A/D converter: up to 24 channels DMA: 16-stream DMA controllers with FIFOs and burst support diff --git a/configs/nucleo-l476rg/scripts/l476rg.ld b/configs/nucleo-l476rg/scripts/l476rg.ld index 94c512fec54..eba5e9c65a5 100644 --- a/configs/nucleo-l476rg/scripts/l476rg.ld +++ b/configs/nucleo-l476rg/scripts/l476rg.ld @@ -34,7 +34,7 @@ * ****************************************************************************/ -/* The STM32F411RE has 512Kb of FLASH beginning at address 0x0800:0000 and +/* The STM32L476RG has 512Kb of FLASH beginning at address 0x0800:0000 and * 128Kb of SRAM beginning at address 0x2000:0000. When booting from FLASH, * FLASH memory is aliased to address 0x0000:0000 where the code expects to * begin execution by jumping to the entry point in the 0x0800:0000 address diff --git a/configs/nucleo-l496zg/Kconfig b/configs/nucleo-l496zg/Kconfig new file mode 100644 index 00000000000..af61775c0bb --- /dev/null +++ b/configs/nucleo-l496zg/Kconfig @@ -0,0 +1,223 @@ +# +# For a description of the syntax of this configuration file, +# see the file kconfig-language.txt in the NuttX tools repository. +# + +if ARCH_BOARD_NUCLEO_144 + +choice + prompt "Select Console wiring." + default NUCLEO_ARDUINO + ---help--- + Select where you will connect the console. + + Virtual COM Port: + + Advantage: Use the ST-Link as a console. No Extra wiring + neded. + + Disdvantage: Not the best choice for initial bring up. + + ARDUINO Connector: + + Advantage: You have a shield so it is + easy. + + Disdvantage: You loose the use of the + other functions on PC6, PC7 + + STM32F7 + ARDUIONO FUNCTION GPIO + -- ----- --------- ---- + DO RX USART6_RX PG9 + D1 TX USART6_TX PG14 + -- ----- --------- --- + + OR + + Morpho Connector: + + STM32F7 + MORPHO FUNCTION GPIO + -------- --------- ----- + CN12-64 USART8_RX PE0 + CN11-61 USART8_TX PE1 + -------- --------- ----- + +config NUCLEO_CONSOLE_ARDUINO + bool "ARDUINO Connector" + select STM32F7_USART6 + select USART6_SERIALDRIVER + select USART6_SERIAL_CONSOLE + +config NUCLEO_CONSOLE_VIRTUAL + bool "Virtual Comport" + select STM32F7_USART3 + select USART3_SERIALDRIVER + select USART3_SERIAL_CONSOLE + +config NUCLEO_CONSOLE_MORPHO + bool "Morpho Connector" + select STM32F7_UART8 + select UART8_SERIALDRIVER + select UART8_SERIAL_CONSOLE + +config NUCLEO_CONSOLE_NONE + bool "No Console" + +endchoice # "Select Console wiring" + +config NUCLEO_SPI_TEST + bool "Enable SPI test" + default n + ---help--- + Enable Spi test - initalize and configure SPI to send + NUCLEO_SPI_TEST_MESSAGE text. The text is sent on the + selected SPI Buses with the configured parameters. + Note the CS lines will not be asserted. + +if NUCLEO_SPI_TEST + +config NUCLEO_SPI_TEST_MESSAGE + string "Text to Send on SPI Bus(es)" + default "Hello World" + depends on NUCLEO_SPI_TEST + ---help--- + Text to sent on SPI bus(es) + +config NUCLEO_SPI1_TEST + bool "Test SPI bus 1" + default n + depends on NUCLEO_SPI_TEST + ---help--- + Enable Spi test - on SPI BUS 1 + +if NUCLEO_SPI1_TEST + +config NUCLEO_SPI1_TEST_FREQ + int "SPI 1 Clock Freq in Hz" + default 1000000 + depends on NUCLEO_SPI1_TEST + ---help--- + Sets SPI 1 Clock Freq + +config NUCLEO_SPI1_TEST_BITS + int "SPI 1 number of bits" + default 8 + depends on NUCLEO_SPI1_TEST + ---help--- + Sets SPI 1 bit length + +choice + prompt "SPI BUS 1 Clock Mode" + default NUCLEO_SPI1_TEST_MODE3 + ---help--- + Sets SPI 1 clock mode + +config NUCLEO_SPI1_TEST_MODE0 + bool "CPOL=0 CHPHA=0" + +config NUCLEO_SPI1_TEST_MODE1 + bool "CPOL=0 CHPHA=1" + +config NUCLEO_SPI1_TEST_MODE2 + bool "CPOL=1 CHPHA=0" + +config NUCLEO_SPI1_TEST_MODE3 + bool "CPOL=1 CHPHA=1" + +endchoice # "SPI BUS 1 Clock Mode" + +endif # NUCLEO_SPI1_TEST + +config NUCLEO_SPI2_TEST + bool "Test SPI bus 2" + default n + depends on NUCLEO_SPI_TEST + ---help--- + Enable Spi test - on SPI BUS 2 + +if NUCLEO_SPI2_TEST + +config NUCLEO_SPI2_TEST_FREQ + int "SPI 2 Clock Freq in Hz" + default 12000000 + depends on NUCLEO_SPI2_TEST + ---help--- + Sets SPI 2 Clock Freq + +config NUCLEO_SPI2_TEST_BITS + int "SPI 2 number of bits" + default 8 + depends on NUCLEO_SPI2_TEST + ---help--- + Sets SPI 2 bit length + +choice + prompt "SPI BUS 2 Clock Mode" + default NUCLEO_SPI2_TEST_MODE3 + ---help--- + Sets SPI 2 clock mode + +config NUCLEO_SPI2_TEST_MODE0 + bool "CPOL=0 CHPHA=0" + +config NUCLEO_SPI2_TEST_MODE1 + bool "CPOL=0 CHPHA=1" + +config NUCLEO_SPI2_TEST_MODE2 + bool "CPOL=1 CHPHA=0" + +config NUCLEO_SPI2_TEST_MODE3 + bool "CPOL=1 CHPHA=1" + +endchoice # "SPI BUS 2 Clock Mode" + +endif # NUCLEO_SPI2_TEST + +config NUCLEO_SPI3_TEST + bool "Test SPI bus 3" + default n + depends on NUCLEO_SPI_TEST + ---help--- + Enable Spi test - on SPI BUS 3 + +if NUCLEO_SPI3_TEST + +config NUCLEO_SPI3_TEST_FREQ + int "SPI 3 Clock Freq in Hz" + default 40000000 + depends on NUCLEO_SPI3_TEST + ---help--- + Sets SPI 3 Clock Freq + +config NUCLEO_SPI3_TEST_BITS + int "SPI 3 number of bits" + default 8 + depends on NUCLEO_SPI3_TEST + ---help--- + Sets SPI 3 bit length + +choice + prompt "SPI BUS 3 Clock Mode" + default NUCLEO_SPI3_TEST_MODE3 + ---help--- + Sets SPI 3 clock mode + +config NUCLEO_SPI3_TEST_MODE0 + bool "CPOL=0 CHPHA=0" + +config NUCLEO_SPI3_TEST_MODE1 + bool "CPOL=0 CHPHA=1" + +config NUCLEO_SPI3_TEST_MODE2 + bool "CPOL=1 CHPHA=0" + +config NUCLEO_SPI3_TEST_MODE3 + bool "CPOL=1 CHPHA=1" + +endchoice # "SPI BUS 3 Clock Mode" + +endif # NUCLEO_SPI3_TEST +endif # NUCLEO_SPI_TEST +endif # ARCH_BOARD_NUCLEO_144 diff --git a/configs/nucleo-l496zg/README.txt b/configs/nucleo-l496zg/README.txt new file mode 100644 index 00000000000..0dffae0c61c --- /dev/null +++ b/configs/nucleo-l496zg/README.txt @@ -0,0 +1,378 @@ +README +====== + +This README discusses issues unique to NuttX configurations for the STMicro +Nucleo-144 board. See + +http://www.st.com/content/ccc/resource/technical/document/data_brief/group0/7b/df/1d/e9/64/55/43/8d/DM00247910/files/DM00247910.pdf/jcr:content/translations/en.DM00247910.pdf + +Contents +======== + + - Nucleo-144 Boards + - Nucleo L496ZG + - Hardware + - Button + - LED + - U[S]ARTs and Serial Consoles + - SPI + - SDIO - MMC + - SPI Test + - Configurations + nsh + +Nucleo-144 Boards: +================= + +The Nucleo-144 is a standard board for use with several STM32 parts in the +LQFP144 package. Variants include + + STM32 Part Board Variant Name + ------------- ------------------ + STM32F207ZGT6 NUCLEO-F207ZG + STM32F303ZET6 NUCLEO-F303ZE + STM32F429ZIT6 NUCLEO-F429ZI + STM32F446ZET6 NUCLEO-F446ZE + STM32F746ZGT6 NUCLEO-F746ZG + STM32F767ZIT6 NUCLEO-F767ZI + STM32L496ZGT6 NUCLEO-L496ZG + STM32L496ZGT6P NUCLEO-L496ZG-P + + ------------- ------------------ + +This directory supports the L4 variants of Nucleo-144 + +Please read the User Manual UM2179: Getting started with STM32 Nucleo board +software development tools and take note of the Powering options for the +board (6.3 Power supply and power selection) and the Solder bridges based +hardware configuration changes that are configurable (6.11 Solder bridges). + +Also note that UM1727 is not valid for L4 Nucleo-144 boards! + +Common Board Features: +--------------------- + + Peripherals: 8 leds, 2 push button (3 LEDs, 1 button) under software + control + Debug: STLINK/V2-1 debugger/programmer Uses a STM32F103CB to + provide a ST-Link for programming, debug similar to the + OpenOcd FTDI function - USB to JTAG front-end. + + Expansion I/F: ST Zio and Extended Ardino and Morpho Headers + +Nucleo L496ZG +============= + +ST Nucleo L496ZG board from ST Micro is supported. See + +http://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-eval-tools/stm32-mcu-eval-tools/stm32-mcu-nucleo/nucleo-l496zg.html + +The Nucleo L496ZG order part number is NUCLEO-L496ZG. It is one member of +the STM32 Nucleo-144 board family. + +NUCLEO-L496ZG Features: +---------------------- + + Microprocessor: STM32L496ZGT6 Core: ARM 32-bit Cortex®-M4 CPU with FPU, + 80 MHz, MPU, and DSP instructions. + Memory: 1024 KB Flash 320KB of SRAM (including 64KB of SRAM2) + ADC: 3×12-bit: up to 24 channels + DMA: 2 X 7-stream DMA controllers with FIFOs and burst support + Timers: Up to 13 timers: (2x 16-bit lowpower), two 32-bit timers, + 2x watchdogs, SysTick + GPIO: 114 I/O ports with interrupt capability + LCD: LCD-TFT Controller, Parallel interface + I2C: 4 × I2C interfaces (SMBus/PMBus) + U[S]ARTs: 3 USARTs, 2 UARTs (27 Mbit/s, ISO7816 interface, LIN, IrDA, + modem control) + SPI/12Ss: 6/3 (simplex) (up to 50 Mbit/s), 3 with muxed simplex I2S + for audio class accuracy via internal audio PLL or external + clock + QSPI: Dual mode Quad-SPI + SAIs: 2 Serial Audio Interfaces + CAN: 2 X CAN interface + SDMMC interface + USB: USB 2.0 full-speed device/host/OTG controller with on-chip + PHY + Camera Interface: 8/14 Bit + CRC calculation unit + TRG: True random number generator + RTC + +See https://developer.mbed.org/platforms/ST-Nucleo-L496ZG for additional +information about this board. + +Hardware +======== +< Section needs updating > + + GPIO - there are 144 I/O lines on the STM32L4xxZx with various pins pined out + on the Nucleo 144. + + Keep in mind that: + 1) The I/O is 3.3 Volt not 5 Volt like on the Arduino products. + 2) The Nucleo-144 board family has 3 pages of Solder Bridges AKA Solder + Blobs (SB) that can alter the factory configuration. We will note SB + in effect but will assume the facitory defualt settings. + + Our main concern is establishing a console and LED utilization for + debugging. Because so many pins can be multiplexed with so many functions, + the above mentioned graphic may be helpful in indentifying a serial port. + + There are 4 choices that can be made from the menuconfig: + + CONFIG_NUCLEO_CONSOLE_ARDUINO or CONFIG_NUCLEO_CONSOLE_MORPHO or + CONFIG_NUCLEO_CONSOLE_VIRTUAL or CONFIG_NUCLEO_CONSOLE_NONE + + The CONFIG_NUCLEO_CONSOLE_NONE makes no preset for the console. You should still visit + the U[S]ART selection and Device Drivers to disable any U[S]ART reamaing. + + The CONFIG_NUCLEO_CONSOLE_ARDUINO configurations assume that you are using a + standard Arduio RS-232 shield with the serial interface with RX on pin D0 and + TX on pin D1 from USART6: + + -------- --------------- + STM32F7 + ARDUIONO FUNCTION GPIO + -- ----- --------- ----- + DO RX USART6_RX PG9 + D1 TX USART6_TX PG14 + -- ----- --------- ----- + + The CONFIG_NUCLEO_CONSOLE_MORPHO configurations uses Serial Port 8 (USART8) + with TX on PE1 and RX on PE0. + Serial + ------ + SERIAL_RX PE_0 + SERIAL_TX PE_1 + + The CONFIG_NUCLEO_CONSOLE_VIRTUAL configurations uses Serial Port 3 (USART3) + with TX on PD8 and RX on PD9. + Serial + ------ + SERIAL_RX PD9 + SERIAL_TX PD8 + + These signals are internally connected to the on board ST-Link + + Of course if your design has used those pins you can choose a completely + different U[S]ART to use as the console. In that Case, you will need to edit + the include/board.h to select different U[S]ART and / or pin selections. + + Buttons + ------- + B1 USER: the user button is connected to the I/O PC13 (Tamper support, SB173 + ON and SB180 OFF) + + LEDs + ---- + The Board provides a 3 user LEDs, LD1-LD3 + LED1 (Green) PB_0 (SB120 ON and SB119 OFF) + LED2 (Blue) PB_7 (SB139 ON) + LED3 (Red) PB_14 (SP118 ON) + + - When the I/O is HIGH value, the LEDs are on. + - When the I/O is LOW, the LEDs are off. + + These LEDs are not used by the board port unless CONFIG_ARCH_LEDS is + defined. In that case, the usage by the board port is defined in + include/board.h and src/stm32_autoleds.c. The LEDs are used to encode OS + related events as follows when the LEDs are available: + + SYMBOL Meaning RED GREEN BLUE + ------------------- ----------------------- --- ----- ---- + + LED_STARTED NuttX has been started OFF OFF OFF + LED_HEAPALLOCATE Heap has been allocated OFF OFF ON + LED_IRQSENABLED Interrupts enabled OFF ON OFF + LED_STACKCREATED Idle stack created OFF ON ON + LED_INIRQ In an interrupt NC NC ON (momentary) + LED_SIGNAL In a signal handler NC ON OFF (momentary) + LED_ASSERTION An assertion failed ON NC ON (momentary) + LED_PANIC The system has crashed ON OFF OFF (flashing 2Hz) + LED_IDLE MCU is is sleep mode ON OFF OFF + + +OFF - means that the OS is still initializing. Initialization is very fast + so if you see this at all, it probably means that the system is + hanging up somewhere in the initialization phases. + +GREEN - This means that the OS completed initialization. + +BLUE - Whenever and interrupt or signal handler is entered, the BLUE LED is + illuminated and extinguished when the interrupt or signal handler + exits. + +VIOLET - If a recovered assertion occurs, the RED and blue LED will be + illuminated briefly while the assertion is handled. You will + probably never see this. + +Flashing RED - In the event of a fatal crash, all other LEDs will be + extinguished and RED LED will FLASH at a 2Hz rate. + + + Thus if the GREEN LED is lit, NuttX has successfully booted and is, + apparently, running normally. If the RED LED is flashing at + approximately 2Hz, then a fatal error has been detected and the system has + halted. + +Serial Consoles +=============== +< Section needs updating > + + USART6 (CONFIG_NUCLEO_CONSOLE_ARDUINO) + ------ + STM32F7 + ARDUIONO FUNCTION GPIO + -- ----- --------- ----- + DO RX USART6_RX PG9 + D1 TX USART6_TX PG14 + -- ----- --------- ----- + + You must use a 3.3 TTL to RS-232 converter or a USB to 3.3V TTL + + Nucleo 144 FTDI TTL-232R-3V3 + ------------- ------------------- + TXD - D1-TXD - RXD - Pin 5 (Yellow) + RXD - D0-RXD - TXD - Pin 4 (Orange) + GND GND - GND Pin 1 (Black) + ------------- ------------------- + + *Note you will be reverse RX/TX + + Use make menuconfig to configure USART6 as the console: + + CONFIG_STM32F7_USART6=y + CONFIG_USARTs_SERIALDRIVER=y + CONFIG_USARTS_SERIAL_CONSOLE=y + CONFIG_USART6_RXBUFSIZE=256 + CONFIG_USART6_TXBUFSIZE=256 + CONFIG_USART6_BAUD=115200 + CONFIG_USART6_BITS=8 + CONFIG_USART6_PARITY=0 + CONFIG_USART6_2STOP=0 + + USART8 (CONFIG_NUCLEO_CONSOLE_MORPHO) + ------ + + Pins and Connectors: + FUNC GPIO Connector + Pin NAME + ---- --- ------- ---- + TXD: PE1 CN11-61, PE1 + RXD: PE0 CN12-64, PE0 + CN10-33, D34 + ---- --- ------- ---- + + + You must use a 3.3 TTL to RS-232 converter or a USB to 3.3V TTL + + Nucleo 144 FTDI TTL-232R-3V3 + ------------- ------------------- + TXD - CN11-61 - RXD - Pin 5 (Yellow) + RXD - CN12-64 - TXD - Pin 4 (Orange) + GND CN12-63 - GND Pin 1 (Black) + ------------- ------------------- + + *Note you will be reverse RX/TX + + Use make menuconfig to configure USART8 as the console: + + CONFIG_STM32L4_UART8=y + CONFIG_UART8_SERIALDRIVER=y + CONFIG_UART8_SERIAL_CONSOLE=y + CONFIG_UART8_RXBUFSIZE=256 + CONFIG_UART8_TXBUFSIZE=256 + CONFIG_UART8_BAUD=115200 + CONFIG_UART8_BITS=8 + CONFIG_UART8_PARITY=0 + CONFIG_UART8_2STOP=0 + + Virtual COM Port (CONFIG_NUCLEO_CONSOLE_VIRTUAL) + ---------------- + Yet another option is to use USART3 and the USB virtual COM port. This + option may be more convenient for long term development, but is painful + to use during board bring-up. + + Solder Bridges. This configuration requires: + + PD8 USART3 TX SB5 ON and SB7 OFF (Default) + PD9 USART3 RX SB6 ON and SB4 OFF (Default) + + Configuring USART3 is the same as given above but add the S and #3. + + Question: What BAUD should be configure to interface with the Virtual + COM port? 115200 8N1? + + Default + ------- + As shipped, SB4 and SB7 are open and SB5 and SB6 closed, so the + virtual COM port is enabled. + + +SPI +--- + Since this board is so generic, having a quick way to vet the SPI + configuration seams in order. So the board provides a quick test + that can be selected vi CONFIG_NUCLEO_SPI_TEST that will initalise + the selected buses (SPI1-SPI3) and send some text on the bus at + application initalization time board_app_initialize. + +SDIO +---- + To test the SD performace one can use a SparkFun microSD Sniffer + from https://www.sparkfun.com/products/9419 or similar board + and connect it as follows: + + VCC V3.3 CN11 16 + GND GND CN11-8 + CMD PD2 CN11-4 + CLK PC12 CN11-3 + DAT0 - PC8 CN12-2 + DAT1 - PC9 CN12-1 + DAT2 PC10 CN11-1 + CD PC11 CN11-2 + +Configurations +============== + +nsh: +---- + Configures the NuttShell (nsh) located at apps/examples/nsh for the + Nucleo-144 boards. The Configuration enables the serial interfaces + on USART6. Support for builtin applications is enabled, but in the base + configuration no builtin applications are selected (see NOTES below). + + NOTES: + + 1. This configuration uses the mconf-based configuration tool. To + change this configuration using that tool, you should: + + a. Build and install the kconfig-mconf tool. See nuttx/README.txt + see additional README.txt files in the NuttX tools repository. + + b. If this is the intall configuration then Execute + 'cd tools && ./configure.sh nucleo-144/nsh && cd ..' + in nuttx/ in order to start configuration process. + Caution: Doing this step more than once will overwrite .config with + the contents of the nucleo-144/nsh/defconfig file. + + c. Execute 'make oldconfig' in nuttx/ in order to refresh the + configuration. + + d. Execute 'make menuconfig' in nuttx/ in order to start the + reconfiguration process. + + e. Save the .config file to reuse it in the future starting at step d. + + 2. By default, this configuration uses the ARM GNU toolchain + for Linux. That can easily be reconfigured, of course. + + CONFIG_HOST_LINUX=y : Builds under Linux + CONFIG_ARMV7M_TOOLCHAIN_GNU_EABIL=y : ARM GNU for Linux + + 3. Although the default console is USART3 (which would correspond to + the Virtual COM port) I have done all testing with the console + device configured for UART8 (see instruction above under "Serial + Consoles). + diff --git a/configs/nucleo-l496zg/include/board.h b/configs/nucleo-l496zg/include/board.h new file mode 100644 index 00000000000..7f4bc3b5afe --- /dev/null +++ b/configs/nucleo-l496zg/include/board.h @@ -0,0 +1,458 @@ +/************************************************************************************ + * configs/nucleo-l496zg/include/board.h + * + * Copyright (C) 2016 Gregory Nutt. All rights reserved. + * Authors: Gregory Nutt + * Mark Olsson + * David Sidrane + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ************************************************************************************/ + +#ifndef __CONFIG_NUCLEO_L496ZG_INCLUDE_BOARD_H +#define __CONFIG_NUCLEO_L496ZG_INCLUDE_BOARD_H + +/************************************************************************************ + * Included Files + ************************************************************************************/ + +#include + +#ifndef __ASSEMBLY__ +# include +#endif + +#ifdef __KERNEL__ +#include "stm32l4_rcc.h" +#ifdef CONFIG_STM32L4_SDMMC1 +# include "stm32l4_sdmmc.h" +#endif +#endif + +/************************************************************************************ + * Pre-processor Definitions + ************************************************************************************/ + +/* Clocking *************************************************************************/ +/* The Nucleo-144 board provides the following clock sources: + * + * MCO: 8 MHz from MCO output of ST-LINK is used as input clock + * X2: 32.768 KHz crystal for LSE + * X3: HSE crystal oscillator (not provided) + * + * So we have these clock source available within the STM32 + * + * HSI: 16 MHz RC factory-trimmed + * LSI: 32 KHz RC + * HSE: 8 MHz from MCO output of ST-LINK + * LSE: 32.768 kHz + */ + + +#define STM32_BOARD_XTAL 8000000ul + +#define STM32_HSI_FREQUENCY 16000000ul +#define STM32_LSI_FREQUENCY 32000 +#define STM32_HSE_FREQUENCY STM32_BOARD_XTAL +#define STM32_LSE_FREQUENCY 32768 + +#define HSI_CLOCK_CONFIG + +#if defined(HSI_CLOCK_CONFIG) + +#define STM32L4_BOARD_USEHSI + +/* Prescaler common to all PLL inputs; will be 1 */ + +#define STM32L4_PLLCFG_PLLM RCC_PLLCFG_PLLM(1) + +/* 'main' PLL config; we use this to generate our system clock via the R + * output. We set it up as 16 MHz / 1 * 10 / 2 = 80 MHz + * + * XXX NOTE: currently the main PLL is implicitly turned on and is implicitly + * the system clock; this should be configurable since not all applications may + * want things done this way. + */ + +#define STM32L4_PLLCFG_PLLN RCC_PLLCFG_PLLN(10) +#define STM32L4_PLLCFG_PLLP 0 +#undef STM32L4_PLLCFG_PLLP_ENABLED +#define STM32L4_PLLCFG_PLLQ RCC_PLLCFG_PLLQ_2 +#define STM32L4_PLLCFG_PLLQ_ENABLED +#define STM32L4_PLLCFG_PLLR RCC_PLLCFG_PLLR_2 +#define STM32L4_PLLCFG_PLLR_ENABLED + +/* 'SAIPLL1' is used to generate the 48 MHz clock, since we can't + * do that with the main PLL's N value. We set N = 13, and enable + * the Q output (ultimately for CLK48) with /4. So, + * 16 MHz / 1 * 12 / 4 = 48 MHz + * + * XXX NOTE: currently the SAIPLL /must/ be explicitly selected in the + * menuconfig, or else all this is a moot point, and the various 48 MHz + * peripherals will not work (RNG at present). I would suggest removing + * that option from Kconfig altogether, and simply making it an option + * that is selected via a #define here, like all these other params. + */ + +#define STM32L4_PLLSAI1CFG_PLLN RCC_PLLSAI1CFG_PLLN(12) +#define STM32L4_PLLSAI1CFG_PLLP 0 +#undef STM32L4_PLLSAI1CFG_PLLP_ENABLED +#define STM32L4_PLLSAI1CFG_PLLQ RCC_PLLSAI1CFG_PLLQ_4 +#define STM32L4_PLLSAI1CFG_PLLQ_ENABLED +#define STM32L4_PLLSAI1CFG_PLLR 0 +#undef STM32L4_PLLSAI1CFG_PLLR_ENABLED + +/* 'SAIPLL2' is not used in this application */ + +#define STM32L4_PLLSAI2CFG_PLLN RCC_PLLSAI2CFG_PLLN(8) +#define STM32L4_PLLSAI2CFG_PLLP 0 +#undef STM32L4_PLLSAI2CFG_PLLP_ENABLED +#define STM32L4_PLLSAI2CFG_PLLR 0 +#undef STM32L4_PLLSAI2CFG_PLLR_ENABLED + +#define STM32L4_SYSCLK_FREQUENCY 80000000ul + +/* CLK48 will come from PLLSAI1 (implicitly Q) */ + +#define STM32L4_USE_CLK48 1 +#define STM32L4_CLK48_SEL RCC_CCIPR_CLK48SEL_PLLSAI1 + +/* Enable the LSE oscillator, used automatically trim the MSI, and for RTC */ + +#define STM32L4_USE_LSE 1 + +/* AHB clock (HCLK) is SYSCLK (80MHz) */ + +#define STM32L4_RCC_CFGR_HPRE RCC_CFGR_HPRE_SYSCLK /* HCLK = SYSCLK / 1 */ +#define STM32L4_HCLK_FREQUENCY STM32L4_SYSCLK_FREQUENCY +#define STM32L4_BOARD_HCLK STM32L4_HCLK_FREQUENCY /* Same as above, to satisfy compiler */ + +/* APB1 clock (PCLK1) is HCLK/1 (80MHz) */ + +#define STM32L4_RCC_CFGR_PPRE1 RCC_CFGR_PPRE1_HCLK /* PCLK1 = HCLK / 1 */ +#define STM32L4_PCLK1_FREQUENCY (STM32L4_HCLK_FREQUENCY/1) + +/* Timers driven from APB1 will be twice PCLK1 */ +/* REVISIT : this can be configured */ + +#define STM32L4_APB1_TIM2_CLKIN (2*STM32L4_PCLK1_FREQUENCY) +#define STM32L4_APB1_TIM3_CLKIN (2*STM32L4_PCLK1_FREQUENCY) +#define STM32L4_APB1_TIM4_CLKIN (2*STM32L4_PCLK1_FREQUENCY) +#define STM32L4_APB1_TIM5_CLKIN (2*STM32L4_PCLK1_FREQUENCY) +#define STM32L4_APB1_TIM6_CLKIN (2*STM32L4_PCLK1_FREQUENCY) +#define STM32L4_APB1_TIM7_CLKIN (2*STM32L4_PCLK1_FREQUENCY) + +/* APB2 clock (PCLK2) is HCLK (80MHz) */ + +#define STM32L4_RCC_CFGR_PPRE2 RCC_CFGR_PPRE2_HCLK /* PCLK2 = HCLK / 1 */ +#define STM32L4_PCLK2_FREQUENCY (STM32L4_HCLK_FREQUENCY/1) + +/* Timers driven from APB2 will be twice PCLK2 */ +/* REVISIT : this can be configured */ + +#define STM32L4_APB2_TIM1_CLKIN (2*STM32L4_PCLK2_FREQUENCY) +#define STM32L4_APB2_TIM8_CLKIN (2*STM32L4_PCLK2_FREQUENCY) + +/* Timer Frequencies, if APBx is set to 1, frequency is same to APBx + * otherwise frequency is 2xAPBx. + * Note: TIM1,8 are on APB2, others on APB1 + */ +/* REVISIT : this can be configured */ + +#elif defined(HSE_CLOCK_CONFIG) + +# error "Not implemented" + +#endif + +/* SDMMC dividers. Note that slower clocking is required when DMA is disabled + * in order to avoid RX overrun/TX underrun errors due to delayed responses + * to service FIFOs in interrupt driven mode. These values have not been + * tuned!!! + * + * SDMMCCLK=48MHz, SDMMC_CK=SDMMCCLK/(118+2)=400 KHz + */ + +#define STM32_SDMMC_INIT_CLKDIV (118 << STM32_SDMMC_CLKCR_CLKDIV_SHIFT) + +/* DMA ON: SDMMCCLK=48MHz, SDMMC_CK=SDMMCCLK/(1+2)=16 MHz + * DMA OFF: SDMMCCLK=48MHz, SDMMC_CK=SDMMCCLK/(2+2)=12 MHz + */ + +#ifdef CONFIG_SDIO_DMA +# define STM32_SDMMC_MMCXFR_CLKDIV (1 << STM32_SDMMC_CLKCR_CLKDIV_SHIFT) +#else +# define STM32_SDMMC_MMCXFR_CLKDIV (2 << STM32_SDMMC_CLKCR_CLKDIV_SHIFT) +#endif + +/* DMA ON: SDMMCCLK=48MHz, SDMMC_CK=SDMMCCLK/(1+2)=16 MHz + * DMA OFF: SDMMCCLK=48MHz, SDMMC_CK=SDMMCCLK/(2+2)=12 MHz + */ + +#ifdef CONFIG_SDIO_DMA +# define STM32_SDMMC_SDXFR_CLKDIV (1 << STM32_SDMMC_CLKCR_CLKDIV_SHIFT) +#else +# define STM32_SDMMC_SDXFR_CLKDIV (2 << STM32_SDMMC_CLKCR_CLKDIV_SHIFT) +#endif + +#if defined(CONFIG_STM32L4_SDMMC2) +# define GPIO_SDMMC2_D0 GPIO_SDMMC2_D0_1 +# define GPIO_SDMMC2_D1 GPIO_SDMMC2_D1_1 +# define GPIO_SDMMC2_D2 GPIO_SDMMC2_D2_1 +# define GPIO_SDMMC2_D3 GPIO_SDMMC2_D3_1 +#endif + +/* DMA Channel/Stream Selections *****************************************************/ +/* Stream selections are arbitrary for now but might become important in the future + * if we set aside more DMA channels/streams. + * + * SDMMC DMA is on DMA2 + * + * SDMMC1 DMA + * DMAMAP_SDMMC1_1 = Channel 4, Stream 3 + * DMAMAP_SDMMC1_2 = Channel 4, Stream 6 + * + * SDMMC2 DMA + * DMAMAP_SDMMC2_1 = Channel 11, Stream 0 + * DMAMAP_SDMMC3_2 = Channel 11, Stream 5 + */ + +#define DMAMAP_SDMMC1 DMAMAP_SDMMC1_1 +#define DMAMAP_SDMMC2 DMAMAP_SDMMC2_1 + + +/* FLASH wait states + * + * --------- ---------- ----------- + * VDD MAX SYSCLK WAIT STATES + * --------- ---------- ----------- + * 1.7-2.1 V 180 MHz 8 + * 2.1-2.4 V 216 MHz 9 + * 2.4-2.7 V 216 MHz 8 + * 2.7-3.6 V 216 MHz 7 + * --------- ---------- ----------- + */ + +#define BOARD_FLASH_WAITSTATES 7 + +/* LED definitions ******************************************************************/ +/* The Nucleo-144 board has numerous LEDs but only three, LD1 a Green LED, LD2 a Blue + * LED and LD3 a Red LED, that can be controlled by software. The following + * definitions assume the default Solder Bridges are installed. + * + * If CONFIG_ARCH_LEDS is not defined, then the user can control the LEDs in any way. + * The following definitions are used to access individual LEDs. + */ + +/* LED index values for use with board_userled() */ + +#define BOARD_LED1 0 +#define BOARD_LED2 1 +#define BOARD_LED3 2 +#define BOARD_NLEDS 3 + +#define BOARD_LED_GREEN BOARD_LED1 +#define BOARD_LED_BLUE BOARD_LED2 +#define BOARD_LED_RED BOARD_LED3 + +/* LED bits for use with board_userled_all() */ + +#define BOARD_LED1_BIT (1 << BOARD_LED1) +#define BOARD_LED2_BIT (1 << BOARD_LED2) +#define BOARD_LED3_BIT (1 << BOARD_LED3) + +/* If CONFIG_ARCH_LEDS is defined, the usage by the board port is defined in + * include/board.h and src/stm32_autoleds.c. The LEDs are used to encode OS-related + * events as follows: + * + * + * SYMBOL Meaning LED state + * Red Green Blue + * ---------------------- -------------------------- ------ ------ ----*/ + +#define LED_STARTED 0 /* NuttX has been started OFF OFF OFF */ +#define LED_HEAPALLOCATE 1 /* Heap has been allocated OFF OFF ON */ +#define LED_IRQSENABLED 2 /* Interrupts enabled OFF ON OFF */ +#define LED_STACKCREATED 3 /* Idle stack created OFF ON ON */ +#define LED_INIRQ 4 /* In an interrupt N/C N/C GLOW */ +#define LED_SIGNAL 5 /* In a signal handler N/C GLOW N/C */ +#define LED_ASSERTION 6 /* An assertion failed GLOW N/C GLOW */ +#define LED_PANIC 7 /* The system has crashed Blink OFF N/C */ +#define LED_IDLE 8 /* MCU is is sleep mode ON OFF OFF */ + +/* Thus if the Green LED is statically on, NuttX has successfully booted and + * is, apparently, running normally. If the Red LED is flashing at + * approximately 2Hz, then a fatal error has been detected and the system + * has halted. + */ + +/* Button definitions ***************************************************************/ +/* The Nucleo-L496ZG supports one button: Pushbutton B1, labeled "User", is + * connected to GPIO PC13. A high value will be sensed when the button is depressed. + */ + +#define BUTTON_USER 0 +#define NUM_BUTTONS 1 +#define BUTTON_USER_BIT (1 << BUTTON_USER) + +/* Alternate function pin selections ************************************************/ + +#define GPIO_USART2_TX GPIO_USART2_TX_2 +#define GPIO_USART2_RX GPIO_USART2_RX_2 +#define GPIO_USART3_TX GPIO_USART3_TX_2 +#define GPIO_USART3_RX GPIO_USART3_RX_2 + +#if defined(CONFIG_NUCLEO_CONSOLE_ARDUINO) +/* USART6: + * + * These configurations assume that you are using a standard Arduio RS-232 shield + * with the serial interface with RX on pin D0 and TX on pin D1: + * + * -------- --------------- + * STM32F7 + * ARDUIONO FUNCTION GPIO + * -- ----- --------- ----- + * DO RX USART6_RX PG9 + * D1 TX USART6_TX PG14 + * -- ----- --------- ----- + */ + + # define GPIO_USART6_RX GPIO_USART6_RX_2 + # define GPIO_USART6_TX GPIO_USART6_TX_2 +#endif + +/* USART3: + * Use USART3 and the USB virtual COM port +*/ + +#if defined(CONFIG_NUCLEO_CONSOLE_VIRTUAL) +/* LPUART1 is connector to Virtual COM port PG6 and PG7, but there is no lpserial. */ +//#define GPIO_USART2_TX GPIO_LPUART1_TX_3 +//#define GPIO_USART2_RX GPIO_LPUART1_RX_3 +# error "No Nucleo virtual console before lpserial is unimplemented" +#endif + +/* DMA channels *************************************************************/ +/* ADC */ + +#define ADC1_DMA_CHAN DMAMAP_ADC1_1 +#define ADC2_DMA_CHAN DMAMAP_ADC2_1 +#define ADC3_DMA_CHAN DMAMAP_ADC3_1 + +/* SPI + * + * + * PA6 SPI1_MISO CN12-13 + * PA7 SPI1_MOSI CN12-15 + * PA5 SPI1_SCK CN12-11 + * + * PB14 SPI2_MISO CN12-28 + * PB15 SPI2_MOSI CN12-26 + * PB13 SPI2_SCK CN12-30 + * + * PB4 SPI3_MISO CN12-27 + * PB5 SPI3_MOSI CN12-29 + * PB3 SPI3_SCK CN12-31 + */ + +#define GPIO_SPI1_MISO GPIO_SPI1_MISO_1 +#define GPIO_SPI1_MOSI GPIO_SPI1_MOSI_1 +#define GPIO_SPI1_SCK GPIO_SPI1_SCK_1 + +#define GPIO_SPI2_MISO GPIO_SPI2_MISO_1 +#define GPIO_SPI2_MOSI GPIO_SPI2_MOSI_1 +#define GPIO_SPI2_SCK GPIO_SPI2_SCK_3 + +#define GPIO_SPI3_MISO GPIO_SPI3_MISO_1 +#define GPIO_SPI3_MOSI GPIO_SPI3_MOSI_2 +#define GPIO_SPI3_SCK GPIO_SPI3_SCK_1 + +/* I2C + * + * + * PB8 I2C1_SCL CN12-3 + * PB9 I2C1_SDA CN12-5 + + * PB10 I2C2_SCL CN11-51 + * PB11 I2C2_SDA CN12-18 + * + * PA8 I2C3_SCL CN12-23 + * PC9 I2C3_SDA CN12-1 + * + */ + +#define GPIO_I2C1_SCL GPIO_I2C1_SCL_2 +#define GPIO_I2C1_SDA GPIO_I2C1_SDA_2 + +#define GPIO_I2C2_SCL GPIO_I2C2_SCL_1 +#define GPIO_I2C2_SDA GPIO_I2C2_SDA_1 + +#define GPIO_I2C3_SCL GPIO_I2C3_SCL_1 +#define GPIO_I2C3_SDA GPIO_I2C3_SDA_1 + +#define GPIO_I2C4_SCL GPIO_I2C4_SCL_1 +#define GPIO_I2C4_SDA GPIO_I2C4_SDA_1 + +/************************************************************************************ + * Public Data + ************************************************************************************/ +#ifndef __ASSEMBLY__ + +#undef EXTERN +#if defined(__cplusplus) +#define EXTERN extern "C" +extern "C" +{ +#else +#define EXTERN extern +#endif + +/************************************************************************************ + * Public Function Prototypes + ************************************************************************************/ + +/************************************************************************************ + * Name: stm32l4_boardinitialize + * + * Description: + * All STM32 architectures must provide the following entry point. This entry point + * is called early in the initialization -- after all memory has been configured + * and mapped but before any devices have been initialized. + * + ************************************************************************************/ + +void stm32l4_boardinitialize(void); + +#undef EXTERN +#if defined(__cplusplus) +} +#endif + +#endif /* __ASSEMBLY__ */ +#endif /* __CONFIG_NUCLEO_L496ZG_INCLUDE_BOARD_H */ diff --git a/configs/nucleo-l496zg/nsh/Make.defs b/configs/nucleo-l496zg/nsh/Make.defs new file mode 100644 index 00000000000..95317b930cb --- /dev/null +++ b/configs/nucleo-l496zg/nsh/Make.defs @@ -0,0 +1,112 @@ +############################################################################ +# configs/nucleo-144/l496-nsh/Make.defs +# +# Copyright (C) 2014 Gregory Nutt. All rights reserved. +# Author: Gregory Nutt +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in +# the documentation and/or other materials provided with the +# distribution. +# 3. Neither the name NuttX nor the names of its contributors may be +# used to endorse or promote products derived from this software +# without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE +# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS +# OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +# AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN +# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +# POSSIBILITY OF SUCH DAMAGE. +# +############################################################################ + +include ${TOPDIR}/.config +include ${TOPDIR}/tools/Config.mk +include ${TOPDIR}/arch/arm/src/armv7-m/Toolchain.defs + +LDSCRIPT = l496zg-flash.ld + +ifeq ($(WINTOOL),y) + # Windows-native toolchains + DIRLINK = $(TOPDIR)/tools/copydir.sh + DIRUNLINK = $(TOPDIR)/tools/unlink.sh + MKDEP = $(TOPDIR)/tools/mknulldeps.sh + ARCHINCLUDES = -I. -isystem "${shell cygpath -w $(TOPDIR)/include}" + ARCHXXINCLUDES = -I. -isystem "${shell cygpath -w $(TOPDIR)/include}" -isystem "${shell cygpath -w $(TOPDIR)/include/cxx}" + ARCHSCRIPT = -T "${shell cygpath -w $(TOPDIR)/configs/$(CONFIG_ARCH_BOARD)/scripts/$(LDSCRIPT)}" +else + # Linux/Cygwin-native toolchain + MKDEP = $(TOPDIR)/tools/mkdeps$(HOSTEXEEXT) + ARCHINCLUDES = -I. -isystem $(TOPDIR)/include + ARCHXXINCLUDES = -I. -isystem $(TOPDIR)/include -isystem $(TOPDIR)/include/cxx + ARCHSCRIPT = -T$(TOPDIR)/configs/$(CONFIG_ARCH_BOARD)/scripts/$(LDSCRIPT) +endif + +CC = $(CROSSDEV)gcc +CXX = $(CROSSDEV)g++ +CPP = $(CROSSDEV)gcc -E +LD = $(CROSSDEV)ld +AR = $(ARCROSSDEV)ar rcs +NM = $(ARCROSSDEV)nm +OBJCOPY = $(CROSSDEV)objcopy +OBJDUMP = $(CROSSDEV)objdump + +ARCHCCVERSION = ${shell $(CC) -v 2>&1 | sed -n '/^gcc version/p' | sed -e 's/^gcc version \([0-9\.]\)/\1/g' -e 's/[-\ ].*//g' -e '1q'} +ARCHCCMAJOR = ${shell echo $(ARCHCCVERSION) | cut -d'.' -f1} + +ifeq ($(CONFIG_DEBUG_SYMBOLS),y) + ARCHOPTIMIZATION = -g +endif + +ifneq ($(CONFIG_DEBUG_NOOPT),y) + ARCHOPTIMIZATION += $(MAXOPTIMIZATION) -fno-strict-aliasing -fno-strength-reduce -fomit-frame-pointer +endif + +ARCHCFLAGS = -fno-builtin +ARCHCXXFLAGS = -fno-builtin -fno-exceptions -fcheck-new -fno-rtti +ARCHWARNINGS = -Wall -Wstrict-prototypes -Wshadow -Wundef +ARCHWARNINGSXX = -Wall -Wshadow -Wundef +ARCHDEFINES = +ARCHPICFLAGS = -fpic -msingle-pic-base -mpic-register=r10 + +CFLAGS = $(ARCHCFLAGS) $(ARCHWARNINGS) $(ARCHOPTIMIZATION) $(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES) -pipe +CPICFLAGS = $(ARCHPICFLAGS) $(CFLAGS) +CXXFLAGS = $(ARCHCXXFLAGS) $(ARCHWARNINGSXX) $(ARCHOPTIMIZATION) $(ARCHCPUFLAGS) $(ARCHXXINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES) -pipe +CXXPICFLAGS = $(ARCHPICFLAGS) $(CXXFLAGS) +CPPFLAGS = $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES) +AFLAGS = $(CFLAGS) -D__ASSEMBLY__ + +NXFLATLDFLAGS1 = -r -d -warn-common +NXFLATLDFLAGS2 = $(NXFLATLDFLAGS1) -T$(TOPDIR)/binfmt/libnxflat/gnu-nxflat-pcrel.ld -no-check-sections +LDNXFLATFLAGS = -e main -s 2048 + +ASMEXT = .S +OBJEXT = .o +LIBEXT = .a +EXEEXT = + +ifneq ($(CROSSDEV),arm-nuttx-elf-) + LDFLAGS += -nostartfiles -nodefaultlibs +endif +ifeq ($(CONFIG_DEBUG_SYMBOLS),y) + LDFLAGS += -g +endif + +HOSTCC = gcc +HOSTINCLUDES = -I. +HOSTCFLAGS = -Wall -Wstrict-prototypes -Wshadow -Wundef -g -pipe +HOSTLDFLAGS = + diff --git a/configs/nucleo-l496zg/nsh/defconfig b/configs/nucleo-l496zg/nsh/defconfig new file mode 100644 index 00000000000..3808958bd41 --- /dev/null +++ b/configs/nucleo-l496zg/nsh/defconfig @@ -0,0 +1,1294 @@ +# +# Automatically generated file; DO NOT EDIT. +# Nuttx/ Configuration +# + +# +# Build Setup +# +# CONFIG_EXPERIMENTAL is not set +# CONFIG_DEFAULT_SMALL is not set +CONFIG_HOST_LINUX=y +# CONFIG_HOST_OSX is not set +# CONFIG_HOST_WINDOWS is not set +# CONFIG_HOST_OTHER is not set + +# +# Build Configuration +# +CONFIG_APPS_DIR="../apps" +CONFIG_BUILD_FLAT=y +# CONFIG_BUILD_2PASS is not set + +# +# Binary Output Formats +# +# CONFIG_RRLOAD_BINARY is not set +# CONFIG_INTELHEX_BINARY is not set +# CONFIG_MOTOROLA_SREC is not set +CONFIG_RAW_BINARY=y +# CONFIG_UBOOT_UIMAGE is not set + +# +# Customize Header Files +# +# CONFIG_ARCH_STDINT_H is not set +# CONFIG_ARCH_STDBOOL_H is not set +# CONFIG_ARCH_MATH_H is not set +# CONFIG_ARCH_FLOAT_H is not set +# CONFIG_ARCH_STDARG_H is not set +# CONFIG_ARCH_DEBUG_H is not set + +# +# Debug Options +# +CONFIG_DEBUG_ALERT=y +CONFIG_DEBUG_FEATURES=y + +# +# Debug SYSLOG Output Controls +# +CONFIG_DEBUG_ERROR=y +CONFIG_DEBUG_WARN=y +CONFIG_DEBUG_INFO=y +CONFIG_DEBUG_ASSERTIONS=y + +# +# Subsystem Debug Options +# +# CONFIG_DEBUG_BINFMT is not set +# CONFIG_DEBUG_FS is not set +# CONFIG_DEBUG_GRAPHICS is not set +# CONFIG_DEBUG_LIB is not set +# CONFIG_DEBUG_MM is not set +# CONFIG_DEBUG_SCHED is not set + +# +# OS Function Debug Options +# +# CONFIG_DEBUG_DMA is not set +# CONFIG_DEBUG_IRQ is not set + +# +# Driver Debug Options +# +# CONFIG_DEBUG_LEDS is not set +# CONFIG_DEBUG_ANALOG is not set +# CONFIG_DEBUG_GPIO is not set +# CONFIG_DEBUG_I2C is not set +# CONFIG_DEBUG_RTC is not set +# CONFIG_DEBUG_SPI is not set +# CONFIG_DEBUG_TIMER is not set +CONFIG_ARCH_HAVE_STACKCHECK=y +CONFIG_STACK_COLORATION=y +CONFIG_ARCH_HAVE_HEAPCHECK=y +# CONFIG_HEAP_COLORATION is not set +CONFIG_DEBUG_SYMBOLS=y +CONFIG_ARCH_HAVE_CUSTOMOPT=y +CONFIG_DEBUG_NOOPT=y +# CONFIG_DEBUG_CUSTOMOPT is not set +# CONFIG_DEBUG_FULLOPT is not set + +# +# System Type +# +CONFIG_ARCH_ARM=y +# CONFIG_ARCH_AVR is not set +# CONFIG_ARCH_HC is not set +# CONFIG_ARCH_MIPS is not set +# CONFIG_ARCH_MISOC is not set +# CONFIG_ARCH_RENESAS is not set +# CONFIG_ARCH_RISCV is not set +# CONFIG_ARCH_SIM is not set +# CONFIG_ARCH_X86 is not set +# CONFIG_ARCH_XTENSA is not set +# CONFIG_ARCH_Z16 is not set +# CONFIG_ARCH_Z80 is not set +CONFIG_ARCH="arm" + +# +# ARM Options +# +# CONFIG_ARCH_CHIP_A1X is not set +# CONFIG_ARCH_CHIP_C5471 is not set +# CONFIG_ARCH_CHIP_DM320 is not set +# CONFIG_ARCH_CHIP_EFM32 is not set +# CONFIG_ARCH_CHIP_IMX1 is not set +# CONFIG_ARCH_CHIP_IMX6 is not set +# CONFIG_ARCH_CHIP_KINETIS is not set +# CONFIG_ARCH_CHIP_KL is not set +# CONFIG_ARCH_CHIP_LM is not set +# CONFIG_ARCH_CHIP_TIVA is not set +# CONFIG_ARCH_CHIP_LPC11XX is not set +# CONFIG_ARCH_CHIP_LPC17XX is not set +# CONFIG_ARCH_CHIP_LPC214X is not set +# CONFIG_ARCH_CHIP_LPC2378 is not set +# CONFIG_ARCH_CHIP_LPC31XX is not set +# CONFIG_ARCH_CHIP_LPC43XX is not set +# CONFIG_ARCH_CHIP_MOXART is not set +# CONFIG_ARCH_CHIP_NUC1XX is not set +# CONFIG_ARCH_CHIP_SAMA5 is not set +# CONFIG_ARCH_CHIP_SAMD is not set +# CONFIG_ARCH_CHIP_SAML is not set +# CONFIG_ARCH_CHIP_SAM34 is not set +# CONFIG_ARCH_CHIP_SAMV7 is not set +# CONFIG_ARCH_CHIP_STM32 is not set +# CONFIG_ARCH_CHIP_STM32F0 is not set +# CONFIG_ARCH_CHIP_STM32F7 is not set +CONFIG_ARCH_CHIP_STM32L4=y +# CONFIG_ARCH_CHIP_STR71X is not set +# CONFIG_ARCH_CHIP_TMS570 is not set +# CONFIG_ARCH_CHIP_XMC4 is not set +# CONFIG_ARCH_ARM7TDMI is not set +# CONFIG_ARCH_ARM926EJS is not set +# CONFIG_ARCH_ARM920T is not set +# CONFIG_ARCH_CORTEXM0 is not set +# CONFIG_ARCH_CORTEXM23 is not set +# CONFIG_ARCH_CORTEXM3 is not set +# CONFIG_ARCH_CORTEXM33 is not set +CONFIG_ARCH_CORTEXM4=y +# CONFIG_ARCH_CORTEXM7 is not set +# CONFIG_ARCH_CORTEXA5 is not set +# CONFIG_ARCH_CORTEXA8 is not set +# CONFIG_ARCH_CORTEXA9 is not set +# CONFIG_ARCH_CORTEXR4 is not set +# CONFIG_ARCH_CORTEXR4F is not set +# CONFIG_ARCH_CORTEXR5 is not set +# CONFIG_ARCH_CORTEX5F is not set +# CONFIG_ARCH_CORTEXR7 is not set +# CONFIG_ARCH_CORTEXR7F is not set +CONFIG_ARCH_FAMILY="armv7-m" +CONFIG_ARCH_CHIP="stm32l4" +# CONFIG_ARM_TOOLCHAIN_IAR is not set +CONFIG_ARM_TOOLCHAIN_GNU=y +# CONFIG_ARMV7M_USEBASEPRI is not set +CONFIG_ARCH_HAVE_CMNVECTOR=y +CONFIG_ARMV7M_CMNVECTOR=y +# CONFIG_ARMV7M_LAZYFPU is not set +CONFIG_ARCH_HAVE_FPU=y +CONFIG_ARCH_HAVE_DPFPU=y +# CONFIG_ARCH_FPU is not set +# CONFIG_ARCH_HAVE_TRUSTZONE is not set +CONFIG_ARM_HAVE_MPU_UNIFIED=y +# CONFIG_ARM_MPU is not set +# CONFIG_DEBUG_HARDFAULT is not set + +# +# ARMV7M Configuration Options +# +# CONFIG_ARMV7M_HAVE_ICACHE is not set +# CONFIG_ARMV7M_HAVE_DCACHE is not set +CONFIG_ARMV7M_HAVE_ITCM=y +CONFIG_ARMV7M_HAVE_DTCM=y +# CONFIG_ARMV7M_ITCM is not set +# CONFIG_ARMV7M_DTCM is not set +# CONFIG_ARMV7M_TOOLCHAIN_IARL is not set +# CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT is not set +# CONFIG_ARMV7M_TOOLCHAIN_CODEREDL is not set +CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYL=y +# CONFIG_ARMV7M_TOOLCHAIN_GNU_EABIL is not set +CONFIG_ARMV7M_HAVE_STACKCHECK=y +CONFIG_ARMV7M_STACKCHECK=y +# CONFIG_ARMV7M_ITMSYSLOG is not set +CONFIG_SERIAL_TERMIOS=y +# CONFIG_USART2_RS485 is not set +# CONFIG_USART2_RXDMA is not set +# CONFIG_USART3_RS485 is not set +# CONFIG_USART3_RXDMA is not set +# CONFIG_SERIAL_DISABLE_REORDERING is not set + +# +# STM32L4 Configuration Options +# +# CONFIG_ARCH_CHIP_STM32L432KB is not set +# CONFIG_ARCH_CHIP_STM32L432KC is not set +# CONFIG_ARCH_CHIP_STM32L442KC is not set +# CONFIG_ARCH_CHIP_STM32L451CC is not set +# CONFIG_ARCH_CHIP_STM32L451CE is not set +# CONFIG_ARCH_CHIP_STM32L451RC is not set +# CONFIG_ARCH_CHIP_STM32L451RE is not set +# CONFIG_ARCH_CHIP_STM32L451VC is not set +# CONFIG_ARCH_CHIP_STM32L451VE is not set +# CONFIG_ARCH_CHIP_STM32L452CC is not set +# CONFIG_ARCH_CHIP_STM32L452CE is not set +# CONFIG_ARCH_CHIP_STM32L452RC is not set +# CONFIG_ARCH_CHIP_STM32L452RE is not set +# CONFIG_ARCH_CHIP_STM32L452VC is not set +# CONFIG_ARCH_CHIP_STM32L452VE is not set +# CONFIG_ARCH_CHIP_STM32L462CE is not set +# CONFIG_ARCH_CHIP_STM32L462RE is not set +# CONFIG_ARCH_CHIP_STM32L462VE is not set +# CONFIG_ARCH_CHIP_STM32L476RG is not set +# CONFIG_ARCH_CHIP_STM32L476RE is not set +# CONFIG_ARCH_CHIP_STM32L486 is not set +# CONFIG_ARCH_CHIP_STM32L496ZE is not set +CONFIG_ARCH_CHIP_STM32L496ZG=y +# CONFIG_ARCH_CHIP_STM32L4A6 is not set +# CONFIG_STM32L4_STM32L4X1 is not set +# CONFIG_STM32L4_STM32L4X2 is not set +# CONFIG_STM32L4_STM32L4X3 is not set +# CONFIG_STM32L4_STM32L4X5 is not set +CONFIG_STM32L4_STM32L4X6=y +# CONFIG_STM32L4_STM32L431XX is not set +# CONFIG_STM32L4_STM32L432XX is not set +# CONFIG_STM32L4_STM32L433XX is not set +# CONFIG_STM32L4_STM32L442XX is not set +# CONFIG_STM32L4_STM32L443XX is not set +# CONFIG_STM32L4_STM32L451XX is not set +# CONFIG_STM32L4_STM32L452XX is not set +# CONFIG_STM32L4_STM32L462XX is not set +# CONFIG_STM32L4_STM32L471XX is not set +# CONFIG_STM32L4_STM32L476XX is not set +# CONFIG_STM32L4_STM32L486XX is not set +CONFIG_STM32L4_STM32L496XX=y +# CONFIG_STM32L4_STM32L4A6XX is not set +CONFIG_STM32L4_FLASH_OVERRIDE_DEFAULT=y +# CONFIG_STM32L4_FLASH_OVERRIDE_B is not set +# CONFIG_STM32L4_FLASH_OVERRIDE_C is not set +# CONFIG_STM32L4_FLASH_OVERRIDE_E is not set +# CONFIG_STM32L4_FLASH_OVERRIDE_G is not set +# CONFIG_STM32L4_FLASH_CONFIG_E is not set +CONFIG_STM32L4_FLASH_CONFIG_G=y +# CONFIG_STM32L4_IO_CONFIG_K is not set +# CONFIG_STM32L4_IO_CONFIG_C is not set +# CONFIG_STM32L4_IO_CONFIG_R is not set +# CONFIG_STM32L4_IO_CONFIG_J is not set +# CONFIG_STM32L4_IO_CONFIG_M is not set +# CONFIG_STM32L4_IO_CONFIG_V is not set +# CONFIG_STM32L4_IO_CONFIG_Q is not set +CONFIG_STM32L4_IO_CONFIG_Z=y +# CONFIG_STM32L4_IO_CONFIG_A is not set + +# +# STM32L4 SRAM2 Options +# +CONFIG_STM32L4_SRAM2_HEAP=y +CONFIG_STM32L4_SRAM2_INIT=y + +# +# STM32L4 Peripherals +# + +# +# STM32L4 Peripheral Support +# +CONFIG_STM32L4_HAVE_ADC2=y +CONFIG_STM32L4_HAVE_ADC3=y +# CONFIG_STM32L4_HAVE_AES is not set +CONFIG_STM32L4_HAVE_CAN2=y +CONFIG_STM32L4_HAVE_COMP=y +CONFIG_STM32L4_HAVE_DAC2=y +CONFIG_STM32L4_HAVE_DCMI=y +CONFIG_STM32L4_HAVE_DFSDM1=y +CONFIG_STM32L4_HAVE_DMA2D=y +# CONFIG_STM32L4_HAVE_HASH is not set +CONFIG_STM32L4_HAVE_I2C4=y +CONFIG_STM32L4_HAVE_LCD=y +# CONFIG_STM32L4_HAVE_LTDC is not set +CONFIG_STM32L4_HAVE_LPTIM1=y +CONFIG_STM32L4_HAVE_LPTIM2=y +CONFIG_STM32L4_HAVE_OTGFS=y +CONFIG_STM32L4_HAVE_SAI1=y +CONFIG_STM32L4_HAVE_SAI2=y +CONFIG_STM32L4_HAVE_SDMMC1=y +CONFIG_STM32L4_HAVE_TIM3=y +CONFIG_STM32L4_HAVE_TIM7=y +CONFIG_STM32L4_ADC=y +# CONFIG_STM32L4_CAN is not set +# CONFIG_STM32L4_DAC is not set +CONFIG_STM32L4_DMA=y +CONFIG_STM32L4_I2C=y +# CONFIG_STM32L4_SAI is not set +CONFIG_STM32L4_SPI=y +CONFIG_STM32L4_USART=y +# CONFIG_STM32L4_LPTIM is not set + +# +# AHB1 Peripherals +# +CONFIG_STM32L4_DMA1=y +CONFIG_STM32L4_DMA2=y +# CONFIG_STM32L4_CRC is not set +# CONFIG_STM32L4_TSC is not set + +# +# AHB2 Peripherals +# +CONFIG_STM32L4_OTGFS=y +CONFIG_STM32L4_ADC1=y +# CONFIG_STM32L4_ADC2 is not set +# CONFIG_STM32L4_ADC3 is not set +# CONFIG_STM32L4_DCMI is not set +# CONFIG_STM32L4_DMA2D is not set +CONFIG_STM32L4_RNG=y +# CONFIG_STM32L4_SAI1_A is not set +# CONFIG_STM32L4_SAI1_B is not set +# CONFIG_STM32L4_SAI2_A is not set +# CONFIG_STM32L4_SAI2_B is not set + +# +# AHB3 Peripherals +# +# CONFIG_STM32L4_FMC is not set +# CONFIG_STM32L4_QSPI is not set + +# +# APB1 Peripherals +# +CONFIG_STM32L4_PWR=y +# CONFIG_STM32L4_TIM2 is not set +# CONFIG_STM32L4_TIM3 is not set +# CONFIG_STM32L4_TIM4 is not set +# CONFIG_STM32L4_TIM5 is not set +# CONFIG_STM32L4_TIM6 is not set +# CONFIG_STM32L4_TIM7 is not set +# CONFIG_STM32L4_LCD is not set +CONFIG_STM32L4_SPI2=y +CONFIG_STM32L4_SPI3=y +# CONFIG_STM32L4_USART1 is not set +CONFIG_STM32L4_USART2=y +CONFIG_STM32L4_USART3=y +# CONFIG_STM32L4_UART4 is not set +# CONFIG_STM32L4_UART5 is not set +CONFIG_STM32L4_I2C1=y +CONFIG_STM32L4_I2C2=y +CONFIG_STM32L4_I2C3=y +CONFIG_STM32L4_I2C4=y +# CONFIG_STM32L4_CAN1 is not set +# CONFIG_STM32L4_CAN2 is not set +# CONFIG_STM32L4_DAC1 is not set +# CONFIG_STM32L4_DAC2 is not set +# CONFIG_STM32L4_OPAMP is not set +# CONFIG_STM32L4_LPTIM1 is not set +CONFIG_STM32L4_LPUART1=y +# CONFIG_STM32L4_SWPMI is not set +# CONFIG_STM32L4_LPTIM2 is not set + +# +# APB2 Peripherals +# +CONFIG_STM32L4_SYSCFG=y +CONFIG_STM32L4_FIREWALL=y +# CONFIG_STM32L4_SDMMC1 is not set +# CONFIG_STM32L4_TIM1 is not set +CONFIG_STM32L4_SPI1=y +# CONFIG_STM32L4_TIM8 is not set +# CONFIG_STM32L4_TIM15 is not set +# CONFIG_STM32L4_TIM16 is not set +# CONFIG_STM32L4_TIM17 is not set +# CONFIG_STM32L4_COMP is not set +# CONFIG_STM32L4_SAI1 is not set +# CONFIG_STM32L4_SAI2 is not set +# CONFIG_STM32L4_DFSDM1 is not set + +# +# Other Peripherals +# +# CONFIG_STM32L4_BKPSRAM is not set +# CONFIG_STM32L4_IWDG is not set +# CONFIG_STM32L4_WWDG is not set +CONFIG_STM32L4_FLASH_PREFETCH=y +CONFIG_STM32L4_DISABLE_IDLE_SLEEP_DURING_DEBUG=y +# CONFIG_ARCH_BOARD_STM32L4_CUSTOM_CLOCKCONFIG is not set +CONFIG_STM32L4_RTC_LSECLOCK=y +# CONFIG_STM32L4_RTC_LSICLOCK is not set +# CONFIG_STM32L4_RTC_HSECLOCK is not set +CONFIG_STM32L4_SAI1PLL=y +# CONFIG_STM32L4_SAI2PLL is not set + +# +# Timer Configuration +# +# CONFIG_STM32L4_ONESHOT is not set +# CONFIG_STM32L4_FREERUN is not set +# CONFIG_STM32L4_TIM3_CAP is not set + +# +# ADC Configuration +# +CONFIG_STM32L4_HAVE_USART1=y +CONFIG_STM32L4_HAVE_USART2=y +CONFIG_STM32L4_HAVE_USART3=y +CONFIG_STM32L4_HAVE_UART4=y +CONFIG_STM32L4_HAVE_UART5=y + +# +# U[S]ART Configuration +# +# CONFIG_STM32L4_FLOWCONTROL_BROKEN is not set +# CONFIG_STM32L4_USART_BREAKS is not set + +# +# SPI Configuration +# +# CONFIG_STM32L4_SPI_INTERRUPTS is not set +# CONFIG_STM32L4_SPI_DMA is not set + +# +# I2C Configuration +# +# CONFIG_STM32L4_I2C_DYNTIMEO is not set +CONFIG_STM32L4_I2CTIMEOSEC=0 +CONFIG_STM32L4_I2CTIMEOMS=500 +CONFIG_STM32L4_I2CTIMEOTICKS=500 +# CONFIG_STM32L4_I2C_DUTY16_9 is not set + +# +# Architecture Options +# +# CONFIG_ARCH_NOINTC is not set +# CONFIG_ARCH_VECNOTIRQ is not set +CONFIG_ARCH_DMA=y +CONFIG_ARCH_HAVE_IRQPRIO=y +# CONFIG_ARCH_L2CACHE is not set +# CONFIG_ARCH_HAVE_COHERENT_DCACHE is not set +# CONFIG_ARCH_HAVE_ADDRENV is not set +# CONFIG_ARCH_NEED_ADDRENV_MAPPING is not set +# CONFIG_ARCH_HAVE_MULTICPU is not set +CONFIG_ARCH_HAVE_VFORK=y +# CONFIG_ARCH_HAVE_MMU is not set +CONFIG_ARCH_HAVE_MPU=y +# CONFIG_ARCH_NAND_HWECC is not set +# CONFIG_ARCH_HAVE_EXTCLK is not set +# CONFIG_ARCH_HAVE_POWEROFF is not set +CONFIG_ARCH_HAVE_RESET=y +# CONFIG_ARCH_HAVE_RTC_SUBSECONDS is not set +# CONFIG_ARCH_USE_MPU is not set +# CONFIG_ARCH_IRQPRIO is not set +CONFIG_ARCH_STACKDUMP=y +# CONFIG_ENDIAN_BIG is not set +# CONFIG_ARCH_IDLE_CUSTOM is not set +# CONFIG_ARCH_HAVE_RAMFUNCS is not set +CONFIG_ARCH_HAVE_RAMVECTORS=y +# CONFIG_ARCH_RAMVECTORS is not set +# CONFIG_ARCH_MINIMAL_VECTORTABLE is not set + +# +# Board Settings +# +CONFIG_BOARD_LOOPSPERMSEC=8499 +# CONFIG_ARCH_CALIBRATION is not set + +# +# Interrupt options +# +CONFIG_ARCH_HAVE_INTERRUPTSTACK=y +CONFIG_ARCH_INTERRUPTSTACK=2048 +CONFIG_ARCH_HAVE_HIPRI_INTERRUPT=y +# CONFIG_ARCH_HIPRI_INTERRUPT is not set + +# +# Boot options +# +# CONFIG_BOOT_RUNFROMEXTSRAM is not set +CONFIG_BOOT_RUNFROMFLASH=y +# CONFIG_BOOT_RUNFROMISRAM is not set +# CONFIG_BOOT_RUNFROMSDRAM is not set +# CONFIG_BOOT_COPYTORAM is not set + +# +# Boot Memory Configuration +# +CONFIG_RAM_START=0x20000000 +CONFIG_RAM_SIZE=98304 +# CONFIG_ARCH_HAVE_SDRAM is not set + +# +# Board Selection +# +CONFIG_ARCH_BOARD_NUCLEO_L496ZG=y +# CONFIG_ARCH_BOARD_CUSTOM is not set +CONFIG_ARCH_BOARD="nucleo-l496zg" + +# +# Common Board Options +# +CONFIG_ARCH_HAVE_LEDS=y +CONFIG_ARCH_LEDS=y +CONFIG_ARCH_HAVE_BUTTONS=y +CONFIG_ARCH_BUTTONS=y +CONFIG_ARCH_HAVE_IRQBUTTONS=y +CONFIG_ARCH_IRQBUTTONS=y + +# +# Board-Specific Options +# +# CONFIG_BOARD_CRASHDUMP is not set +CONFIG_LIB_BOARDCTL=y +# CONFIG_BOARDCTL_RESET is not set +# CONFIG_BOARDCTL_UNIQUEID is not set +# CONFIG_BOARDCTL_TSCTEST is not set +# CONFIG_BOARDCTL_GRAPHICS is not set +# CONFIG_BOARDCTL_IOCTL is not set + +# +# RTOS Features +# +CONFIG_DISABLE_OS_API=y +# CONFIG_DISABLE_POSIX_TIMERS is not set +# CONFIG_DISABLE_PTHREAD is not set +# CONFIG_DISABLE_SIGNALS is not set +# CONFIG_DISABLE_MQUEUE is not set +# CONFIG_DISABLE_ENVIRON is not set + +# +# Clocks and Timers +# +CONFIG_ARCH_HAVE_TICKLESS=y +# CONFIG_SCHED_TICKLESS is not set +CONFIG_USEC_PER_TICK=10000 +# CONFIG_SYSTEM_TIME64 is not set +# CONFIG_CLOCK_MONOTONIC is not set +# CONFIG_ARCH_HAVE_TIMEKEEPING is not set +# CONFIG_JULIAN_TIME is not set +CONFIG_START_YEAR=2017 +CONFIG_START_MONTH=1 +CONFIG_START_DAY=1 +CONFIG_MAX_WDOGPARMS=2 +CONFIG_PREALLOC_WDOGS=8 +CONFIG_WDOG_INTRESERVE=1 +CONFIG_PREALLOC_TIMERS=4 + +# +# Tasks and Scheduling +# +# CONFIG_SPINLOCK is not set +# CONFIG_INIT_NONE is not set +CONFIG_INIT_ENTRYPOINT=y +# CONFIG_INIT_FILEPATH is not set +CONFIG_USER_ENTRYPOINT="nsh_main" +CONFIG_RR_INTERVAL=200 +# CONFIG_SCHED_SPORADIC is not set +CONFIG_TASK_NAME_SIZE=0 +CONFIG_MAX_TASKS=16 +# CONFIG_SCHED_HAVE_PARENT is not set +CONFIG_SCHED_WAITPID=y + +# +# Pthread Options +# +# CONFIG_PTHREAD_MUTEX_TYPES is not set +CONFIG_PTHREAD_MUTEX_ROBUST=y +# CONFIG_PTHREAD_MUTEX_UNSAFE is not set +# CONFIG_PTHREAD_MUTEX_BOTH is not set +CONFIG_NPTHREAD_KEYS=4 +# CONFIG_PTHREAD_CLEANUP is not set +# CONFIG_CANCELLATION_POINTS is not set + +# +# Performance Monitoring +# +# CONFIG_SCHED_CPULOAD is not set +# CONFIG_SCHED_INSTRUMENTATION is not set + +# +# Files and I/O +# +CONFIG_DEV_CONSOLE=y +# CONFIG_FDCLONE_DISABLE is not set +# CONFIG_FDCLONE_STDIO is not set +CONFIG_SDCLONE_DISABLE=y +CONFIG_NFILE_DESCRIPTORS=8 +CONFIG_NFILE_STREAMS=8 +CONFIG_NAME_MAX=32 +# CONFIG_PRIORITY_INHERITANCE is not set + +# +# RTOS hooks +# +# CONFIG_BOARD_INITIALIZE is not set +# CONFIG_SCHED_STARTHOOK is not set +# CONFIG_SCHED_ATEXIT is not set +# CONFIG_SCHED_ONEXIT is not set + +# +# Signal Numbers +# +CONFIG_SIG_SIGUSR1=1 +CONFIG_SIG_SIGUSR2=2 +CONFIG_SIG_SIGALARM=3 +CONFIG_SIG_SIGCONDTIMEDOUT=16 + +# +# POSIX Message Queue Options +# +CONFIG_PREALLOC_MQ_MSGS=4 +CONFIG_MQ_MAXMSGSIZE=32 +# CONFIG_MODULE is not set + +# +# Work queue support +# +# CONFIG_SCHED_WORKQUEUE is not set +# CONFIG_SCHED_HPWORK is not set +# CONFIG_SCHED_LPWORK is not set + +# +# Stack and heap information +# +CONFIG_IDLETHREAD_STACKSIZE=1024 +CONFIG_USERMAIN_STACKSIZE=2048 +CONFIG_PTHREAD_STACK_MIN=256 +CONFIG_PTHREAD_STACK_DEFAULT=2048 +# CONFIG_LIB_SYSCALL is not set + +# +# Device Drivers +# +CONFIG_DISABLE_POLL=y +CONFIG_DEV_NULL=y +# CONFIG_DEV_ZERO is not set +CONFIG_ARCH_HAVE_RNG=y +CONFIG_DEV_RANDOM=y +# CONFIG_DEV_URANDOM is not set +# CONFIG_DEV_LOOP is not set + +# +# Buffering +# + +# +# Common I/O Buffer Support +# +# CONFIG_DRIVERS_IOB is not set +# CONFIG_DRVR_WRITEBUFFER is not set +# CONFIG_DRVR_READAHEAD is not set +# CONFIG_RAMDISK is not set +# CONFIG_CAN is not set +# CONFIG_ARCH_HAVE_PWM_PULSECOUNT is not set +# CONFIG_ARCH_HAVE_PWM_MULTICHAN is not set +# CONFIG_PWM is not set +CONFIG_ARCH_HAVE_I2CRESET=y +CONFIG_I2C=y +# CONFIG_I2C_SLAVE is not set +# CONFIG_I2C_POLLED is not set +CONFIG_I2C_RESET=y +# CONFIG_I2C_TRACE is not set +CONFIG_I2C_DRIVER=y +# CONFIG_ARCH_HAVE_SPI_CRCGENERATION is not set +# CONFIG_ARCH_HAVE_SPI_CS_CONTROL is not set +CONFIG_ARCH_HAVE_SPI_BITORDER=y +CONFIG_SPI=y +# CONFIG_SPI_SLAVE is not set +CONFIG_SPI_EXCHANGE=y +# CONFIG_SPI_CMDDATA is not set +# CONFIG_SPI_CALLBACK is not set +# CONFIG_SPI_HWFEATURES is not set +# CONFIG_SPI_BITORDER is not set +# CONFIG_SPI_CS_DELAY_CONTROL is not set +# CONFIG_SPI_DRIVER is not set +# CONFIG_SPI_BITBANG is not set +# CONFIG_I2S is not set + +# +# Timer Driver Support +# +# CONFIG_TIMER is not set +# CONFIG_ONESHOT is not set +CONFIG_RTC=y +CONFIG_RTC_DATETIME=y +CONFIG_RTC_ALARM=y +CONFIG_RTC_NALARMS=2 +CONFIG_RTC_DRIVER=y +CONFIG_RTC_IOCTL=y +# CONFIG_RTC_EXTERNAL is not set +# CONFIG_WATCHDOG is not set +# CONFIG_TIMERS_CS2100CP is not set +CONFIG_ANALOG=y +# CONFIG_ADC is not set +# CONFIG_COMP is not set +# CONFIG_DAC is not set +# CONFIG_AUDIO_DEVICES is not set +# CONFIG_VIDEO_DEVICES is not set +# CONFIG_BCH is not set +# CONFIG_INPUT is not set + +# +# IO Expander/GPIO Support +# +# CONFIG_IOEXPANDER is not set +# CONFIG_DEV_GPIO is not set + +# +# LCD Driver Support +# +# CONFIG_LCD is not set +# CONFIG_SLCD is not set + +# +# LED Support +# +# CONFIG_USERLED is not set +# CONFIG_RGBLED is not set +# CONFIG_PCA9635PW is not set +# CONFIG_NCP5623C is not set +# CONFIG_MMCSD is not set +# CONFIG_MODEM is not set +# CONFIG_MTD is not set +# CONFIG_EEPROM is not set +# CONFIG_PIPES is not set +# CONFIG_PM is not set +# CONFIG_POWER is not set +# CONFIG_SENSORS is not set +CONFIG_SERIAL=y +# CONFIG_DEV_LOWCONSOLE is not set +# CONFIG_SERIAL_REMOVABLE is not set +CONFIG_SERIAL_CONSOLE=y +# CONFIG_16550_UART is not set +# CONFIG_UART_SERIALDRIVER is not set +# CONFIG_UART0_SERIALDRIVER is not set +# CONFIG_UART1_SERIALDRIVER is not set +# CONFIG_UART2_SERIALDRIVER is not set +# CONFIG_UART3_SERIALDRIVER is not set +# CONFIG_UART4_SERIALDRIVER is not set +# CONFIG_UART5_SERIALDRIVER is not set +# CONFIG_UART6_SERIALDRIVER is not set +# CONFIG_UART7_SERIALDRIVER is not set +# CONFIG_UART8_SERIALDRIVER is not set +# CONFIG_SCI0_SERIALDRIVER is not set +# CONFIG_SCI1_SERIALDRIVER is not set +# CONFIG_USART0_SERIALDRIVER is not set +# CONFIG_USART1_SERIALDRIVER is not set +CONFIG_USART2_SERIALDRIVER=y +CONFIG_USART3_SERIALDRIVER=y +# CONFIG_USART4_SERIALDRIVER is not set +# CONFIG_USART5_SERIALDRIVER is not set +# CONFIG_USART6_SERIALDRIVER is not set +# CONFIG_USART7_SERIALDRIVER is not set +# CONFIG_USART8_SERIALDRIVER is not set +# CONFIG_OTHER_UART_SERIALDRIVER is not set +CONFIG_MCU_SERIAL=y +CONFIG_STANDARD_SERIAL=y +# CONFIG_SERIAL_IFLOWCONTROL is not set +# CONFIG_SERIAL_OFLOWCONTROL is not set +# CONFIG_SERIAL_DMA is not set +# CONFIG_SERIAL_TIOCSERGSTRUCT is not set +CONFIG_ARCH_HAVE_SERIAL_TERMIOS=y +# CONFIG_USART2_SERIAL_CONSOLE is not set +CONFIG_USART3_SERIAL_CONSOLE=y +# CONFIG_OTHER_SERIAL_CONSOLE is not set +# CONFIG_NO_SERIAL_CONSOLE is not set + +# +# USART2 Configuration +# +CONFIG_USART2_RXBUFSIZE=256 +CONFIG_USART2_TXBUFSIZE=256 +CONFIG_USART2_BAUD=115200 +CONFIG_USART2_BITS=8 +CONFIG_USART2_PARITY=0 +CONFIG_USART2_2STOP=0 +# CONFIG_USART2_IFLOWCONTROL is not set +# CONFIG_USART2_OFLOWCONTROL is not set +# CONFIG_USART2_DMA is not set + +# +# USART3 Configuration +# +CONFIG_USART3_RXBUFSIZE=256 +CONFIG_USART3_TXBUFSIZE=256 +CONFIG_USART3_BAUD=115200 +CONFIG_USART3_BITS=8 +CONFIG_USART3_PARITY=0 +CONFIG_USART3_2STOP=0 +# CONFIG_USART3_IFLOWCONTROL is not set +# CONFIG_USART3_OFLOWCONTROL is not set +# CONFIG_USART3_DMA is not set +# CONFIG_PSEUDOTERM is not set +# CONFIG_USBDEV is not set +# CONFIG_USBHOST is not set +# CONFIG_USBMISC is not set +# CONFIG_HAVE_USBTRACE is not set +# CONFIG_DRIVERS_WIRELESS is not set +# CONFIG_DRIVERS_CONTACTLESS is not set + +# +# System Logging +# +# CONFIG_ARCH_SYSLOG is not set +# CONFIG_RAMLOG is not set +# CONFIG_SYSLOG_INTBUFFER is not set +# CONFIG_SYSLOG_TIMESTAMP is not set +CONFIG_SYSLOG_SERIAL_CONSOLE=y +# CONFIG_SYSLOG_CHAR is not set +CONFIG_SYSLOG_CONSOLE=y +# CONFIG_SYSLOG_NONE is not set +# CONFIG_SYSLOG_FILE is not set +# CONFIG_SYSLOG_CHARDEV is not set + +# +# Networking Support +# +# CONFIG_ARCH_HAVE_NET is not set +# CONFIG_ARCH_HAVE_PHY is not set +# CONFIG_NET is not set + +# +# Crypto API +# +# CONFIG_CRYPTO is not set + +# +# File Systems +# + +# +# File system configuration +# +# CONFIG_DISABLE_MOUNTPOINT is not set +# CONFIG_FS_AUTOMOUNTER is not set +# CONFIG_DISABLE_PSEUDOFS_OPERATIONS is not set +# CONFIG_PSEUDOFS_SOFTLINKS is not set +CONFIG_FS_READABLE=y +# CONFIG_FS_WRITABLE is not set +# CONFIG_FS_NAMED_SEMAPHORES is not set +CONFIG_FS_MQUEUE_MPATH="/var/mqueue" +# CONFIG_FS_RAMMAP is not set +# CONFIG_FS_FAT is not set +# CONFIG_FS_NXFFS is not set +# CONFIG_FS_ROMFS is not set +# CONFIG_FS_TMPFS is not set +# CONFIG_FS_SMARTFS is not set +# CONFIG_FS_BINFS is not set +CONFIG_FS_PROCFS=y +CONFIG_FS_PROCFS_REGISTER=y + +# +# Exclude individual procfs entries +# +# CONFIG_FS_PROCFS_EXCLUDE_PROCESS is not set +# CONFIG_FS_PROCFS_EXCLUDE_UPTIME is not set +# CONFIG_FS_PROCFS_EXCLUDE_MOUNTS is not set +# CONFIG_FS_UNIONFS is not set + +# +# Graphics Support +# +# CONFIG_NX is not set + +# +# Memory Management +# +# CONFIG_MM_SMALL is not set +CONFIG_MM_REGIONS=2 +# CONFIG_ARCH_HAVE_HEAP2 is not set +# CONFIG_GRAN is not set + +# +# Audio Support +# +# CONFIG_AUDIO is not set + +# +# Wireless Support +# + +# +# Binary Loader +# +# CONFIG_BINFMT_DISABLE is not set +# CONFIG_BINFMT_EXEPATH is not set +# CONFIG_NXFLAT is not set +# CONFIG_ELF is not set +CONFIG_BUILTIN=y +# CONFIG_PIC is not set +# CONFIG_SYMTAB_ORDEREDBYNAME is not set + +# +# Library Routines +# + +# +# Standard C Library Options +# + +# +# Standard C I/O +# +# CONFIG_STDIO_DISABLE_BUFFERING is not set +CONFIG_STDIO_BUFFER_SIZE=64 +CONFIG_STDIO_LINEBUFFER=y +CONFIG_NUNGET_CHARS=2 +# CONFIG_NOPRINTF_FIELDWIDTH is not set +# CONFIG_LIBC_FLOATINGPOINT is not set +CONFIG_LIBC_LONG_LONG=y +# CONFIG_LIBC_SCANSET is not set +# CONFIG_EOL_IS_CR is not set +# CONFIG_EOL_IS_LF is not set +# CONFIG_EOL_IS_BOTH_CRLF is not set +CONFIG_EOL_IS_EITHER_CRLF=y +# CONFIG_MEMCPY_VIK is not set +# CONFIG_LIBM is not set + +# +# Architecture-Specific Support +# +CONFIG_ARCH_LOWPUTC=y +# CONFIG_ARCH_ROMGETC is not set +# CONFIG_LIBC_ARCH_MEMCPY is not set +# CONFIG_LIBC_ARCH_MEMCMP is not set +# CONFIG_LIBC_ARCH_MEMMOVE is not set +# CONFIG_LIBC_ARCH_MEMSET is not set +# CONFIG_LIBC_ARCH_STRCHR is not set +# CONFIG_LIBC_ARCH_STRCMP is not set +# CONFIG_LIBC_ARCH_STRCPY is not set +# CONFIG_LIBC_ARCH_STRNCPY is not set +# CONFIG_LIBC_ARCH_STRLEN is not set +# CONFIG_LIBC_ARCH_STRNLEN is not set +# CONFIG_LIBC_ARCH_ELF is not set +# CONFIG_ARMV7M_MEMCPY is not set + +# +# stdlib Options +# +CONFIG_LIB_RAND_ORDER=1 +CONFIG_LIB_HOMEDIR="/" + +# +# Program Execution Options +# +# CONFIG_LIBC_EXECFUNCS is not set +CONFIG_POSIX_SPAWN_PROXY_STACKSIZE=1024 +CONFIG_TASK_SPAWN_DEFAULT_STACKSIZE=2048 + +# +# errno Decode Support +# +# CONFIG_LIBC_STRERROR is not set +# CONFIG_LIBC_PERROR_STDOUT is not set + +# +# memcpy/memset Options +# +# CONFIG_MEMSET_OPTSPEED is not set +# CONFIG_LIBC_DLLFCN is not set +# CONFIG_LIBC_MODLIB is not set +# CONFIG_LIBC_WCHAR is not set +# CONFIG_LIBC_LOCALE is not set + +# +# Time/Time Zone Support +# +# CONFIG_LIBC_LOCALTIME is not set +# CONFIG_TIME_EXTENDED is not set +CONFIG_ARCH_HAVE_TLS=y + +# +# Thread Local Storage (TLS) +# +# CONFIG_TLS is not set + +# +# Network-Related Options +# +# CONFIG_LIBC_IPv4_ADDRCONV is not set +# CONFIG_LIBC_IPv6_ADDRCONV is not set +# CONFIG_LIBC_NETDB is not set + +# +# NETDB Support +# +# CONFIG_NETDB_HOSTFILE is not set +# CONFIG_LIBC_IOCTL_VARIADIC is not set +CONFIG_LIB_SENDFILE_BUFSIZE=512 + +# +# Non-standard Library Support +# +# CONFIG_LIB_CRC64_FAST is not set +# CONFIG_LIB_KBDCODEC is not set +# CONFIG_LIB_SLCDCODEC is not set +# CONFIG_LIB_HEX2BIN is not set + +# +# Basic CXX Support +# +# CONFIG_C99_BOOL8 is not set +CONFIG_HAVE_CXX=y +CONFIG_HAVE_CXXINITIALIZE=y +# CONFIG_CXX_NEWLONG is not set + +# +# LLVM C++ Library (libcxx) +# +# CONFIG_LIBCXX is not set + +# +# uClibc++ Standard C++ Library +# +# CONFIG_UCLIBCXX is not set + +# +# Application Configuration +# + +# +# Built-In Applications +# +CONFIG_BUILTIN_PROXY_STACKSIZE=1024 + +# +# CAN Utilities +# + +# +# Examples +# +CONFIG_EXAMPLES_ALARM=y +CONFIG_EXAMPLES_ALARM_PRIORITY=100 +CONFIG_EXAMPLES_ALARM_STACKSIZE=2048 +CONFIG_EXAMPLES_ALARM_DEVPATH="/dev/rtc0" +CONFIG_EXAMPLES_ALARM_SIGNO=1 +# CONFIG_EXAMPLES_BUTTONS is not set +# CONFIG_EXAMPLES_CCTYPE is not set +# CONFIG_EXAMPLES_CHAT is not set +# CONFIG_EXAMPLES_CONFIGDATA is not set +# CONFIG_EXAMPLES_CXXTEST is not set +# CONFIG_EXAMPLES_DHCPD is not set +# CONFIG_EXAMPLES_ELF is not set +# CONFIG_EXAMPLES_FTPC is not set +# CONFIG_EXAMPLES_FTPD is not set +# CONFIG_EXAMPLES_HELLO is not set +# CONFIG_EXAMPLES_HELLOXX is not set +# CONFIG_EXAMPLES_HIDKBD is not set +# CONFIG_EXAMPLES_IGMP is not set +# CONFIG_EXAMPLES_JSON is not set +# CONFIG_EXAMPLES_KEYPADTEST is not set +# CONFIG_EXAMPLES_MEDIA is not set +# CONFIG_EXAMPLES_MM is not set +# CONFIG_EXAMPLES_MODBUS is not set +# CONFIG_EXAMPLES_MOUNT is not set +CONFIG_EXAMPLES_NSH=y +CONFIG_EXAMPLES_NSH_CXXINITIALIZE=y +# CONFIG_EXAMPLES_NULL is not set +# CONFIG_EXAMPLES_NXFFS is not set +# CONFIG_EXAMPLES_NXHELLO is not set +# CONFIG_EXAMPLES_NXIMAGE is not set +# CONFIG_EXAMPLES_NX is not set +# CONFIG_EXAMPLES_NXLINES is not set +# CONFIG_EXAMPLES_NXTERM is not set +# CONFIG_EXAMPLES_NXTEXT is not set +CONFIG_EXAMPLES_OSTEST=y +CONFIG_EXAMPLES_OSTEST_LOOPS=1 +CONFIG_EXAMPLES_OSTEST_STACKSIZE=8192 +CONFIG_EXAMPLES_OSTEST_NBARRIER_THREADS=8 +CONFIG_EXAMPLES_OSTEST_RR_RANGE=10000 +CONFIG_EXAMPLES_OSTEST_RR_RUNS=10 +CONFIG_EXAMPLES_OSTEST_WAITRESULT=y +# CONFIG_EXAMPLES_PCA9635 is not set +# CONFIG_EXAMPLES_POSIXSPAWN is not set +# CONFIG_EXAMPLES_PPPD is not set +CONFIG_EXAMPLES_RANDOM=y +CONFIG_EXAMPLES_MAXSAMPLES=64 +CONFIG_EXAMPLES_NSAMPLES=8 +# CONFIG_EXAMPLES_RFID_READUID is not set +# CONFIG_EXAMPLES_RGBLED is not set +# CONFIG_EXAMPLES_SENDMAIL is not set +# CONFIG_EXAMPLES_SERIALBLASTER is not set +# CONFIG_EXAMPLES_SERIALRX is not set +# CONFIG_EXAMPLES_SERLOOP is not set +# CONFIG_EXAMPLES_SLCD is not set +# CONFIG_EXAMPLES_SMART is not set +# CONFIG_EXAMPLES_SMART_TEST is not set +# CONFIG_EXAMPLES_SMP is not set +# CONFIG_EXAMPLES_STAT is not set +# CONFIG_EXAMPLES_TCPECHO is not set +# CONFIG_EXAMPLES_TELNETD is not set +# CONFIG_EXAMPLES_TIFF is not set +# CONFIG_EXAMPLES_TOUCHSCREEN is not set +# CONFIG_EXAMPLES_USBSERIAL is not set +# CONFIG_EXAMPLES_WATCHDOG is not set +# CONFIG_EXAMPLES_WEBSERVER is not set +# CONFIG_EXAMPLES_XBC_TEST is not set + +# +# File System Utilities +# +# CONFIG_FSUTILS_INIFILE is not set +# CONFIG_FSUTILS_PASSWD is not set + +# +# GPS Utilities +# +# CONFIG_GPSUTILS_MINMEA_LIB is not set + +# +# Graphics Support +# +# CONFIG_TIFF is not set +# CONFIG_GRAPHICS_TRAVELER is not set + +# +# Interpreters +# +# CONFIG_INTERPRETERS_BAS is not set +# CONFIG_INTERPRETERS_FICL is not set +# CONFIG_INTERPRETERS_MICROPYTHON is not set +# CONFIG_INTERPRETERS_MINIBASIC is not set +# CONFIG_INTERPRETERS_PCODE is not set + +# +# FreeModBus +# +# CONFIG_MODBUS is not set + +# +# Network Utilities +# +# CONFIG_NETUTILS_CODECS is not set +# CONFIG_NETUTILS_ESP8266 is not set +# CONFIG_NETUTILS_FTPC is not set +# CONFIG_NETUTILS_JSON is not set +# CONFIG_NETUTILS_SMTP is not set + +# +# NSH Library +# +CONFIG_NSH_LIBRARY=y +# CONFIG_NSH_MOTD is not set + +# +# Command Line Configuration +# +CONFIG_NSH_READLINE=y +# CONFIG_NSH_CLE is not set +CONFIG_NSH_LINELEN=64 +# CONFIG_NSH_DISABLE_SEMICOLON is not set +# CONFIG_NSH_CMDPARMS is not set +CONFIG_NSH_MAXARGUMENTS=6 +# CONFIG_NSH_ARGCAT is not set +CONFIG_NSH_NESTDEPTH=3 +# CONFIG_NSH_DISABLEBG is not set +CONFIG_NSH_BUILTIN_APPS=y + +# +# Disable Individual commands +# +# CONFIG_NSH_DISABLE_ADDROUTE is not set +# CONFIG_NSH_DISABLE_BASENAME is not set +# CONFIG_NSH_DISABLE_CAT is not set +# CONFIG_NSH_DISABLE_CD is not set +# CONFIG_NSH_DISABLE_CP is not set +# CONFIG_NSH_DISABLE_CMP is not set +# CONFIG_NSH_DISABLE_DATE is not set +# CONFIG_NSH_DISABLE_DD is not set +# CONFIG_NSH_DISABLE_DF is not set +# CONFIG_NSH_DISABLE_DELROUTE is not set +# CONFIG_NSH_DISABLE_DIRNAME is not set +# CONFIG_NSH_DISABLE_ECHO is not set +# CONFIG_NSH_DISABLE_EXEC is not set +# CONFIG_NSH_DISABLE_EXIT is not set +# CONFIG_NSH_DISABLE_FREE is not set +# CONFIG_NSH_DISABLE_GET is not set +# CONFIG_NSH_DISABLE_HELP is not set +# CONFIG_NSH_DISABLE_HEXDUMP is not set +# CONFIG_NSH_DISABLE_IFCONFIG is not set +CONFIG_NSH_DISABLE_IFUPDOWN=y +# CONFIG_NSH_DISABLE_KILL is not set +# CONFIG_NSH_DISABLE_LOSETUP is not set +CONFIG_NSH_DISABLE_LOSMART=y +# CONFIG_NSH_DISABLE_LS is not set +# CONFIG_NSH_DISABLE_MB is not set +# CONFIG_NSH_DISABLE_MKDIR is not set +# CONFIG_NSH_DISABLE_MKRD is not set +# CONFIG_NSH_DISABLE_MH is not set +# CONFIG_NSH_DISABLE_MOUNT is not set +# CONFIG_NSH_DISABLE_MV is not set +# CONFIG_NSH_DISABLE_MW is not set +CONFIG_NSH_DISABLE_PRINTF=y +# CONFIG_NSH_DISABLE_PS is not set +# CONFIG_NSH_DISABLE_PSSTACKUSAGE is not set +# CONFIG_NSH_DISABLE_PUT is not set +# CONFIG_NSH_DISABLE_PWD is not set +# CONFIG_NSH_DISABLE_RM is not set +# CONFIG_NSH_DISABLE_RMDIR is not set +# CONFIG_NSH_DISABLE_SET is not set +# CONFIG_NSH_DISABLE_SH is not set +# CONFIG_NSH_DISABLE_SLEEP is not set +# CONFIG_NSH_DISABLE_TIME is not set +# CONFIG_NSH_DISABLE_TEST is not set +# CONFIG_NSH_DISABLE_UMOUNT is not set +# CONFIG_NSH_DISABLE_UNAME is not set +# CONFIG_NSH_DISABLE_UNSET is not set +# CONFIG_NSH_DISABLE_USLEEP is not set +# CONFIG_NSH_DISABLE_WGET is not set +# CONFIG_NSH_DISABLE_XD is not set +CONFIG_NSH_MMCSDMINOR=0 + +# +# Configure Command Options +# +# CONFIG_NSH_CMDOPT_DF_H is not set +# CONFIG_NSH_CMDOPT_DD_STATS is not set +CONFIG_NSH_CODECS_BUFSIZE=128 +CONFIG_NSH_CMDOPT_HEXDUMP=y +CONFIG_NSH_PROC_MOUNTPOINT="/proc" +CONFIG_NSH_FILEIOSIZE=512 + +# +# Scripting Support +# +# CONFIG_NSH_DISABLESCRIPT is not set +# CONFIG_NSH_DISABLE_ITEF is not set +# CONFIG_NSH_DISABLE_LOOPS is not set + +# +# Console Configuration +# +CONFIG_NSH_CONSOLE=y +# CONFIG_NSH_ALTCONDEV is not set +CONFIG_NSH_ARCHINIT=y +# CONFIG_NSH_LOGIN is not set +# CONFIG_NSH_CONSOLE_LOGIN is not set + +# +# NxWidgets/NxWM +# + +# +# Platform-specific Support +# +# CONFIG_PLATFORM_CONFIGDATA is not set + +# +# System Libraries and NSH Add-Ons +# +# CONFIG_SYSTEM_CLE is not set +# CONFIG_SYSTEM_CUTERM is not set +# CONFIG_SYSTEM_FREE is not set +# CONFIG_SYSTEM_HEX2BIN is not set +# CONFIG_SYSTEM_HEXED is not set +CONFIG_SYSTEM_I2CTOOL=y +CONFIG_I2CTOOL_MINBUS=0 +CONFIG_I2CTOOL_MAXBUS=3 +CONFIG_I2CTOOL_MINADDR=0x03 +CONFIG_I2CTOOL_MAXADDR=0x77 +CONFIG_I2CTOOL_MAXREGADDR=0xff +CONFIG_I2CTOOL_DEFFREQ=400000 +# CONFIG_SYSTEM_INSTALL is not set +# CONFIG_SYSTEM_RAMTEST is not set +CONFIG_READLINE_HAVE_EXTMATCH=y +CONFIG_SYSTEM_READLINE=y +CONFIG_READLINE_ECHO=y +CONFIG_READLINE_TABCOMPLETION=y +CONFIG_READLINE_MAX_BUILTINS=64 +CONFIG_READLINE_MAX_EXTCMDS=64 +CONFIG_READLINE_CMD_HISTORY=y +CONFIG_READLINE_CMD_HISTORY_LINELEN=80 +CONFIG_READLINE_CMD_HISTORY_LEN=16 +CONFIG_SYSTEM_STACKMONITOR=y +CONFIG_SYSTEM_STACKMONITOR_STACKSIZE=2048 +CONFIG_SYSTEM_STACKMONITOR_PRIORITY=50 +CONFIG_SYSTEM_STACKMONITOR_INTERVAL=2 +# CONFIG_SYSTEM_SUDOKU is not set +# CONFIG_SYSTEM_SYSTEM is not set +CONFIG_SYSTEM_TEE=y +CONFIG_SYSTEM_TEE_STACKSIZE=1536 +CONFIG_SYSTEM_TEE_PRIORITY=100 +# CONFIG_SYSTEM_UBLOXMODEM is not set +# CONFIG_SYSTEM_VI is not set +# CONFIG_SYSTEM_ZMODEM is not set + +# +# Wireless Libraries and NSH Add-Ons +# diff --git a/configs/nucleo-l496zg/scripts/kernel-space.ld b/configs/nucleo-l496zg/scripts/kernel-space.ld new file mode 100644 index 00000000000..166d4f0bbcd --- /dev/null +++ b/configs/nucleo-l496zg/scripts/kernel-space.ld @@ -0,0 +1,109 @@ +/**************************************************************************** + * configs/nucleo-144/scripts/kernel-space.ld + * + * Copyright (C) 2016 Gregory Nutt. All rights reserved. + * Author: Gregory Nutt + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + +/* NOTE: This depends on the memory.ld script having been included prior to + * this script. + */ + +OUTPUT_ARCH(arm) +ENTRY(_stext) +SECTIONS +{ + .text : { + _stext = ABSOLUTE(.); + *(.vectors) + *(.text .text.*) + *(.fixup) + *(.gnu.warning) + *(.rodata .rodata.*) + *(.gnu.linkonce.t.*) + *(.glue_7) + *(.glue_7t) + *(.got) + *(.gcc_except_table) + *(.gnu.linkonce.r.*) + _etext = ABSOLUTE(.); + } > kflash + + .init_section : { + _sinit = ABSOLUTE(.); + *(.init_array .init_array.*) + _einit = ABSOLUTE(.); + } > kflash + + .ARM.extab : { + *(.ARM.extab*) + } > kflash + + __exidx_start = ABSOLUTE(.); + .ARM.exidx : { + *(.ARM.exidx*) + } > kflash + + __exidx_end = ABSOLUTE(.); + + _eronly = ABSOLUTE(.); + + .data : { + _sdata = ABSOLUTE(.); + *(.data .data.*) + *(.gnu.linkonce.d.*) + CONSTRUCTORS + _edata = ABSOLUTE(.); + } > ksram AT > kflash + + .bss : { + _sbss = ABSOLUTE(.); + *(.bss .bss.*) + *(.gnu.linkonce.b.*) + *(COMMON) + _ebss = ABSOLUTE(.); + } > ksram + + /* Stabs debugging sections */ + + .stab 0 : { *(.stab) } + .stabstr 0 : { *(.stabstr) } + .stab.excl 0 : { *(.stab.excl) } + .stab.exclstr 0 : { *(.stab.exclstr) } + .stab.index 0 : { *(.stab.index) } + .stab.indexstr 0 : { *(.stab.indexstr) } + .comment 0 : { *(.comment) } + .debug_abbrev 0 : { *(.debug_abbrev) } + .debug_info 0 : { *(.debug_info) } + .debug_line 0 : { *(.debug_line) } + .debug_pubnames 0 : { *(.debug_pubnames) } + .debug_aranges 0 : { *(.debug_aranges) } +} diff --git a/configs/nucleo-l496zg/scripts/l496zg-flash.ld b/configs/nucleo-l496zg/scripts/l496zg-flash.ld new file mode 100644 index 00000000000..e4ccd435c71 --- /dev/null +++ b/configs/nucleo-l496zg/scripts/l496zg-flash.ld @@ -0,0 +1,119 @@ +/**************************************************************************** + * configs/nucleo-l496zg/scripts/l496zg-flash.ld + * + * Copyright (C) 2014 Gregory Nutt. All rights reserved. + * Author: Gregory Nutt + * Sebastien Lorquet + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + +/* The STM32L496ZG has 1024Kb of FLASH beginning at address 0x0800:0000 and + * 256Kb of SRAM beginning at address 0x2000:0000. When booting from FLASH, + * FLASH memory is aliased to address 0x0000:0000 where the code expects to + * begin execution by jumping to the entry point in the 0x0800:0000 address + * range. + */ + +MEMORY +{ + flash (rx) : ORIGIN = 0x08000000, LENGTH = 1024K + sram (rwx) : ORIGIN = 0x20000000, LENGTH = 256K +} + +OUTPUT_ARCH(arm) +ENTRY(_stext) +SECTIONS +{ + .text : { + _stext = ABSOLUTE(.); + *(.vectors) + *(.text .text.*) + *(.fixup) + *(.gnu.warning) + *(.rodata .rodata.*) + *(.gnu.linkonce.t.*) + *(.glue_7) + *(.glue_7t) + *(.got) + *(.gcc_except_table) + *(.gnu.linkonce.r.*) + _etext = ABSOLUTE(.); + } > flash + + .init_section : { + _sinit = ABSOLUTE(.); + *(.init_array .init_array.*) + _einit = ABSOLUTE(.); + } > flash + + .ARM.extab : { + *(.ARM.extab*) + } > flash + + __exidx_start = ABSOLUTE(.); + .ARM.exidx : { + *(.ARM.exidx*) + } > flash + __exidx_end = ABSOLUTE(.); + + _eronly = ABSOLUTE(.); + + /* The STM32L496ZG has 256Kb of SRAM beginning at the following address */ + + .data : { + _sdata = ABSOLUTE(.); + *(.data .data.*) + *(.gnu.linkonce.d.*) + CONSTRUCTORS + _edata = ABSOLUTE(.); + } > sram AT > flash + + .bss : { + _sbss = ABSOLUTE(.); + *(.bss .bss.*) + *(.gnu.linkonce.b.*) + *(COMMON) + _ebss = ABSOLUTE(.); + } > sram + + /* Stabs debugging sections. */ + .stab 0 : { *(.stab) } + .stabstr 0 : { *(.stabstr) } + .stab.excl 0 : { *(.stab.excl) } + .stab.exclstr 0 : { *(.stab.exclstr) } + .stab.index 0 : { *(.stab.index) } + .stab.indexstr 0 : { *(.stab.indexstr) } + .comment 0 : { *(.comment) } + .debug_abbrev 0 : { *(.debug_abbrev) } + .debug_info 0 : { *(.debug_info) } + .debug_line 0 : { *(.debug_line) } + .debug_pubnames 0 : { *(.debug_pubnames) } + .debug_aranges 0 : { *(.debug_aranges) } +} diff --git a/configs/nucleo-l496zg/scripts/memory.ld b/configs/nucleo-l496zg/scripts/memory.ld new file mode 100644 index 00000000000..2308c38ec87 --- /dev/null +++ b/configs/nucleo-l496zg/scripts/memory.ld @@ -0,0 +1,129 @@ +/**************************************************************************** + * configs/nucleo-144/scripts/memory.ld + * + * Copyright (C) 2016 Gregory Nutt. All rights reserved. + * Author: Gregory Nutt + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + +/* The STM32F746NGH6 has 1024Kb of main FLASH memory. This FLASH memory can + * be accessed from either the AXIM interface at address 0x0800:0000 or from + * the ITCM interface at address 0x0020:0000. + * + * Additional information, including the option bytes, is available at at + * FLASH at address 0x1ff0:0000 (AXIM) or 0x0010:0000 (ITCM). + * + * In the STM32F746NGH6, two different boot spaces can be selected through + * the BOOT pin and the boot base address programmed in the BOOT_ADD0 and + * BOOT_ADD1 option bytes: + * + * 1) BOOT=0: Boot address defined by user option byte BOOT_ADD0[15:0]. + * ST programmed value: Flash on ITCM at 0x0020:0000 + * 2) BOOT=1: Boot address defined by user option byte BOOT_ADD1[15:0]. + * ST programmed value: System bootloader at 0x0010:0000 + * + * NuttX does not modify these option byes. On the unmodified STM32F746G + * DISCO board, the BOOT0 pin is at ground so by default, the STM32 will boot + * to address 0x0020:0000 in ITCM FLASH. + * + * The STM32F746NGH6 also has 320Kb of data SRAM (in addition to ITCM SRAM). + * SRAM is split up into three blocks: + * + * 1) 64Kb of DTCM SRM beginning at address 0x2000:0000 + * 2) 240Kb of SRAM1 beginning at address 0x2001:0000 + * 3) 16Kb of SRAM2 beginning at address 0x2004:c000 + * + * When booting from FLASH, FLASH memory is aliased to address 0x0000:0000 + * where the code expects to begin execution by jumping to the entry point in + * the 0x0800:0000 address range. + * + * For MPU support, the kernel-mode NuttX section is assumed to be 128Kb of + * FLASH and 4Kb of SRAM. That is an excessive amount for the kernel which + * should fit into 64KB and, of course, can be optimized as needed (See + * also configs/stm32f746g-disco/scripts/kernel-space.ld). Allowing the + * additional does permit addition debug instrumentation to be added to the + * kernel space without overflowing the partition. + * + * Alignment of the user space FLASH partition is also a critical factor: + * The user space FLASH partition will be spanned with a single region of + * size 2**n bytes. The alignment of the user-space region must be the same. + * As a consequence, as the user-space increases in size, the alignment + * requirement also increases. + * + * This alignment requirement means that the largest user space FLASH region + * you can have will be 512KB at it would have to be positioned at + * 0x08800000. If you change this address, don't forget to change the + * CONFIG_NUTTX_USERSPACE configuration setting to match and to modify + * the check in kernel/userspace.c. + * + * For the same reasons, the maximum size of the SRAM mapping is limited to + * 4KB. Both of these alignment limitations could be reduced by using + * multiple regions to map the FLASH/SDRAM range or perhaps with some + * clever use of subregions. + * + * A detailed memory map for the 112KB SRAM region is as follows: + * + * 0x20001 0000: Kernel .data region. Typical size: 0.1KB + * ------- ---- Kernel .bss region. Typical size: 1.8KB + * 0x20001 0800: Kernel IDLE thread stack (approximate). Size is + * determined by CONFIG_IDLETHREAD_STACKSIZE and + * adjustments for alignment. Typical is 1KB. + * ------- ---- Padded to 4KB + * 0x20001 1000: User .data region. Size is variable. + * ------- ---- User .bss region Size is variable. + * 0x20001 2000: Beginning of kernel heap. Size determined by + * CONFIG_MM_KERNEL_HEAPSIZE. + * ------- ---- Beginning of user heap. Can vary with other settings. + * 0x20004 c000: End+1 of SRAM1 + */ + +MEMORY +{ + /* ITCM boot address */ + + itcm (rwx) : ORIGIN = 0x00200000, LENGTH = 1024K + + /* 1024KB FLASH */ + + kflash (rx) : ORIGIN = 0x08000000, LENGTH = 128K + uflash (rx) : ORIGIN = 0x08020000, LENGTH = 128K + xflash (rx) : ORIGIN = 0x08040000, LENGTH = 768K + + /* 240KB of contiguous SRAM1 */ + + ksram (rwx) : ORIGIN = 0x20010000, LENGTH = 4K + usram (rwx) : ORIGIN = 0x20011000, LENGTH = 4K + xsram (rwx) : ORIGIN = 0x20012000, LENGTH = 240K - 8K + + /* DTCM SRAM */ + + dtcm (rwx) : ORIGIN = 0x20000000, LENGTH = 64K + sram2 (rwx) : ORIGIN = 0x2004c000, LENGTH = 16K +} diff --git a/configs/nucleo-l496zg/scripts/user-space.ld b/configs/nucleo-l496zg/scripts/user-space.ld new file mode 100644 index 00000000000..871d8e055f8 --- /dev/null +++ b/configs/nucleo-l496zg/scripts/user-space.ld @@ -0,0 +1,111 @@ +/**************************************************************************** + * configs/nucleo-144/scripts/user-space.ld + * + * Copyright (C) 2016 Gregory Nutt. All rights reserved. + * Author: Gregory Nutt + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + +/* NOTE: This depends on the memory.ld script having been included prior to + * this script. + */ + +OUTPUT_ARCH(arm) +SECTIONS +{ + .userspace : { + *(.userspace) + } > uflash + + .text : { + _stext = ABSOLUTE(.); + *(.text .text.*) + *(.fixup) + *(.gnu.warning) + *(.rodata .rodata.*) + *(.gnu.linkonce.t.*) + *(.glue_7) + *(.glue_7t) + *(.got) + *(.gcc_except_table) + *(.gnu.linkonce.r.*) + _etext = ABSOLUTE(.); + } > uflash + + .init_section : { + _sinit = ABSOLUTE(.); + *(.init_array .init_array.*) + _einit = ABSOLUTE(.); + } > uflash + + .ARM.extab : { + *(.ARM.extab*) + } > uflash + + __exidx_start = ABSOLUTE(.); + .ARM.exidx : { + *(.ARM.exidx*) + } > uflash + + __exidx_end = ABSOLUTE(.); + + _eronly = ABSOLUTE(.); + + .data : { + _sdata = ABSOLUTE(.); + *(.data .data.*) + *(.gnu.linkonce.d.*) + CONSTRUCTORS + _edata = ABSOLUTE(.); + } > usram AT > uflash + + .bss : { + _sbss = ABSOLUTE(.); + *(.bss .bss.*) + *(.gnu.linkonce.b.*) + *(COMMON) + _ebss = ABSOLUTE(.); + } > usram + + /* Stabs debugging sections */ + + .stab 0 : { *(.stab) } + .stabstr 0 : { *(.stabstr) } + .stab.excl 0 : { *(.stab.excl) } + .stab.exclstr 0 : { *(.stab.exclstr) } + .stab.index 0 : { *(.stab.index) } + .stab.indexstr 0 : { *(.stab.indexstr) } + .comment 0 : { *(.comment) } + .debug_abbrev 0 : { *(.debug_abbrev) } + .debug_info 0 : { *(.debug_info) } + .debug_line 0 : { *(.debug_line) } + .debug_pubnames 0 : { *(.debug_pubnames) } + .debug_aranges 0 : { *(.debug_aranges) } +} diff --git a/configs/nucleo-l496zg/src/.gitignore b/configs/nucleo-l496zg/src/.gitignore new file mode 100644 index 00000000000..726d936e1e3 --- /dev/null +++ b/configs/nucleo-l496zg/src/.gitignore @@ -0,0 +1,2 @@ +/.depend +/Make.dep diff --git a/configs/nucleo-l496zg/src/Makefile b/configs/nucleo-l496zg/src/Makefile new file mode 100644 index 00000000000..d30f3bc75e0 --- /dev/null +++ b/configs/nucleo-l496zg/src/Makefile @@ -0,0 +1,72 @@ +############################################################################ +# configs/nucleo-l496zg/src/Makefile +# +# Copyright (C) 2015 Gregory Nutt. All rights reserved. +# Author: Gregory Nutt +# David Sidrane +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in +# the documentation and/or other materials provided with the +# distribution. +# 3. Neither the name NuttX nor the names of its contributors may be +# used to endorse or promote products derived from this software +# without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE +# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS +# OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +# AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN +# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +# POSSIBILITY OF SUCH DAMAGE. +# +############################################################################ + +-include $(TOPDIR)/Make.defs + +ASRCS = +CSRCS = stm32_boot.c + +ifeq ($(CONFIG_ARCH_LEDS),y) +CSRCS += stm32_autoleds.c +else +CSRCS += stm32_userleds.c +endif + +ifeq ($(CONFIG_ARCH_BUTTONS),y) +CSRCS += stm32_buttons.c +endif + +ifeq ($(CONFIG_LIB_BOARDCTL),y) +CSRCS += stm32_appinitialize.c +endif + +ifeq ($(CONFIG_SPI),y) +CSRCS += stm32_spi.c +endif + +ifeq ($(CONFIG_ADC),y) +CSRCS += stm32_adc.c +endif + +ifeq ($(CONFIG_MMCSD),y) +CSRCS += stm32_sdio.c +endif + +ifeq ($(CONFIG_STM32L4_OTGFS),y) +CSRCS += stm32_usb.c +endif + +include $(TOPDIR)/configs/Board.mk diff --git a/configs/nucleo-l496zg/src/nucleo-144.h b/configs/nucleo-l496zg/src/nucleo-144.h new file mode 100644 index 00000000000..fc4bc9381c3 --- /dev/null +++ b/configs/nucleo-l496zg/src/nucleo-144.h @@ -0,0 +1,285 @@ +/************************************************************************************ + * configs/nucleo-l496zg/src/nucleo-144.h + * + * Copyright (C) 2016 Gregory Nutt. All rights reserved. + * Authors: Gregory Nutt + * Mark Olsson + * David Sidrane + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ************************************************************************************/ + +#ifndef __CONFIGS_NUCLEO_L496ZG_SRC_NUCLEO_144_H +#define __CONFIGS_NUCLEO_L496ZG_SRC_NUCLEO_144_H + +/************************************************************************************ + * Included Files + ************************************************************************************/ + +#include +#include +#include + +/************************************************************************************ + * Pre-processor Definitions + ************************************************************************************/ + +/* Configuration ********************************************************************/ + +/* procfs File System */ + +#ifdef CONFIG_FS_PROCFS +# ifdef CONFIG_NSH_PROC_MOUNTPOINT +# define STM32_PROCFS_MOUNTPOINT CONFIG_NSH_PROC_MOUNTPOINT +# else +# define STM32_PROCFS_MOUNTPOINT "/proc" +# endif +#endif + +/* Nucleo-144 GPIO Pin Definitions **************************************************/ +/* LED + * + * The Nucleo-144 board has numerous LEDs but only three, LD1 a Green LED, LD2 a + * Blue LED and LD3 a Red LED, that can be controlled by software. The following definitions assume + * the default Solder Bridges are installed. + */ + +#define GPIO_LD1 (GPIO_OUTPUT | GPIO_PUSHPULL | GPIO_SPEED_50MHz | GPIO_OUTPUT_CLEAR | \ + GPIO_PORTC | GPIO_PIN7) +#define GPIO_LD2 (GPIO_OUTPUT | GPIO_PUSHPULL | GPIO_SPEED_50MHz | GPIO_OUTPUT_CLEAR | \ + GPIO_PORTB | GPIO_PIN7) +#define GPIO_LD3 (GPIO_OUTPUT | GPIO_PUSHPULL | GPIO_SPEED_50MHz | GPIO_OUTPUT_CLEAR | \ + GPIO_PORTB | GPIO_PIN14) + +#define GPIO_LED_GREEN GPIO_LD1 +#define GPIO_LED_BLUE GPIO_LD2 +#define GPIO_LED_RED GPIO_LD3 + +#define LED_DRIVER_PATH "/dev/userleds" + +/* BUTTONS + * + * The Blue pushbutton B1, labeled "User", is connected to GPIO PC13. A high value + * will be sensed when the button is depressed. + * Note: + * 1) That the EXTI is included in the definition to enable an interrupt on this + * IO. + * 2) The following definitions assume the default Solder Bridges are installed. + */ + +#define GPIO_BTN_USER (GPIO_INPUT | GPIO_FLOAT | GPIO_EXTI | GPIO_PORTC | GPIO_PIN13) + +/* SPI ***************************************************************************/ + +#define GPIO_SPI_CS (GPIO_OUTPUT | GPIO_PUSHPULL | GPIO_SPEED_50MHz | \ + GPIO_OUTPUT_SET) + +#define GPIO_SPI1_CS0 (GPIO_SPI_CS | GPIO_PORTD | GPIO_PIN14) +#define GPIO_SPI1_CS1 (GPIO_SPI_CS | GPIO_PORTC | GPIO_PIN15) +#define GPIO_SPI1_CS2 (GPIO_SPI_CS | GPIO_PORTC | GPIO_PIN14) +#define GPIO_SPI1_CS3 (GPIO_SPI_CS | GPIO_PORTC | GPIO_PIN2) +#define GPIO_SPI2_CS0 (GPIO_SPI_CS | GPIO_PORTD | GPIO_PIN7) +#define GPIO_SPI2_CS1 (GPIO_SPI_CS | GPIO_PORTG | GPIO_PIN1) +#define GPIO_SPI2_CS2 (GPIO_SPI_CS | GPIO_PORTG | GPIO_PIN2) +#define GPIO_SPI2_CS3 (GPIO_SPI_CS | GPIO_PORTG | GPIO_PIN3) +#define GPIO_SPI3_CS0 (GPIO_SPI_CS | GPIO_PORTG | GPIO_PIN4) +#define GPIO_SPI3_CS1 (GPIO_SPI_CS | GPIO_PORTG | GPIO_PIN5) +#define GPIO_SPI3_CS2 (GPIO_SPI_CS | GPIO_PORTG | GPIO_PIN6) +#define GPIO_SPI3_CS3 (GPIO_SPI_CS | GPIO_PORTG | GPIO_PIN7) + +/* Logical SPI Chip Selects used to index */ + +#define NUCLEO_SPI_BUS1_CS0 0 +#define NUCLEO_SPI_BUS1_CS1 1 +#define NUCLEO_SPI_BUS1_CS2 2 +#define NUCLEO_SPI_BUS1_CS3 3 +#define NUCLEO_SPI_BUS2_CS0 4 +#define NUCLEO_SPI_BUS2_CS1 5 +#define NUCLEO_SPI_BUS2_CS2 6 +#define NUCLEO_SPI_BUS2_CS3 7 +#define NUCLEO_SPI_BUS3_CS0 8 +#define NUCLEO_SPI_BUS3_CS1 9 +#define NUCLEO_SPI_BUS3_CS2 10 +#define NUCLEO_SPI_BUS3_CS3 11 + +#if defined(CONFIG_STM32L4_SDMMC1) || defined(CONFIG_STM32L4_SDMMC2) +# define HAVE_SDIO +#endif + +#if defined(CONFIG_DISABLE_MOUNTPOINT) || !defined(CONFIG_MMCSD_SDIO) +# undef HAVE_SDIO +#endif + +#define SDIO_SLOTNO 0 /* Only one slot */ + +#ifdef HAVE_SDIO + +# if defined(CONFIG_STM32L4_SDMMC1) +# define GPIO_SDMMC1_NCD (GPIO_INPUT|GPIO_FLOAT|GPIO_EXTI | GPIO_PORTC | GPIO_PIN6) +# endif + +# if defined(CONFIG_NSH_MMCSDSLOTNO) && (CONFIG_NSH_MMCSDSLOTNO != 0) +# warning "Only one MMC/SD slot, slot 0" +# define CONFIG_NSH_MMCSDSLOTNO SDIO_SLOTNO +# endif + +# if defined(CONFIG_NSH_MMCSDMINOR) +# define SDIO_MINOR CONFIG_NSH_MMCSDMINOR +# else +# define SDIO_MINOR 0 +# endif + + /* SD card bringup does not work if performed on the IDLE thread because it + * will cause waiting. Use either: + * + * CONFIG_LIB_BOARDCTL=y, OR + * CONFIG_BOARD_INITIALIZE=y && CONFIG_BOARD_INITTHREAD=y + */ + +# if defined(CONFIG_BOARD_INITIALIZE) && !defined(CONFIG_LIB_BOARDCTL) && \ + !defined(CONFIG_BOARD_INITTHREAD) +# warning SDIO initialization cannot be perfomed on the IDLE thread +# undef HAVE_SDIO +# endif +#endif + +/* USB OTG FS + * + * PA9 OTG_FS_VBUS VBUS sensing (also connected to the green LED) + * PG6 OTG_FS_PowerSwitchOn + * PG5 OTG_FS_Overcurrent + */ + +#define GPIO_OTGFS_VBUS (GPIO_INPUT|GPIO_FLOAT|GPIO_SPEED_100MHz|\ + GPIO_OPENDRAIN|GPIO_PORTA|GPIO_PIN9) + +#define GPIO_OTGFS_PWRON (GPIO_OUTPUT|GPIO_FLOAT|GPIO_SPEED_100MHz|\ + GPIO_PUSHPULL|GPIO_PORTG|GPIO_PIN6) + +#ifdef CONFIG_USBHOST +# define GPIO_OTGFS_OVER (GPIO_INPUT|GPIO_EXTI|GPIO_FLOAT|\ + GPIO_SPEED_100MHz|GPIO_PUSHPULL|\ + GPIO_PORTG|GPIO_PIN5) + +#else +# define GPIO_OTGFS_OVER (GPIO_INPUT|GPIO_FLOAT|GPIO_SPEED_100MHz|\ + GPIO_PUSHPULL|GPIO_PORTG|GPIO_PIN5) +#endif + +/************************************************************************************ + * Public data + ************************************************************************************/ + +#ifndef __ASSEMBLY__ + +/************************************************************************************ + * Public Functions + ************************************************************************************/ + +/************************************************************************************ + * Name: stm32_spidev_initialize + * + * Description: + * Called to configure SPI chip select GPIO pins for the Nucleo-144 board. + * + ************************************************************************************/ + +#if defined(CONFIG_SPI) +void stm32_spidev_initialize(void); +#endif + +/************************************************************************************ + * Name: stm32_spidev_bus_test + * + * Description: + * Called to create the defined SPI buses and test them by initializing them + * and sending the NUCLEO_SPI_TEST (no chip select). + * + ************************************************************************************/ + +#if defined(CONFIG_NUCLEO_SPI_TEST) +int stm32_spidev_bus_test(void); +#endif + +/************************************************************************************ + * Name: stm32_dma_alloc_init + * + * Description: + * Called to create a FAT DMA allocator + * + * Returned Value: + * 0 on success or -ENOMEM + * + ************************************************************************************/ + +void stm32_dma_alloc_init(void); + +#if defined (CONFIG_FAT_DMAMEMORY) +int stm32_dma_alloc_init(void); +#endif + +/**************************************************************************** + * Name: stm32_sdio_initialize + * + * Description: + * Called at application startup time to initialize the SCMMC functionality. + * + ****************************************************************************/ + +#ifdef CONFIG_MMCSD +int stm32_sdio_initialize(void); +#endif + +/************************************************************************************ + * Name: stm32_usbinitialize + * + * Description: + * Called from stm32_usbinitialize very early in inialization to setup USB-related + * GPIO pins for the nucleo-144 board. + * + ************************************************************************************/ + +#ifdef CONFIG_STM32L4_OTGFS +void stm32_usbinitialize(void); +#endif + +/************************************************************************************ + * Name: stm32_adc_setup + * + * Description: + * Initialize ADC and register the ADC driver. + * + ************************************************************************************/ + +#ifdef CONFIG_ADC +int stm32_adc_setup(void); +#endif + +#endif /* __ASSEMBLY__ */ +#endif /* __CONFIGS_NUCLEO_L496ZG_SRC_NUCLEO_144_H */ diff --git a/configs/nucleo-l496zg/src/stm32_adc.c b/configs/nucleo-l496zg/src/stm32_adc.c new file mode 100644 index 00000000000..250cd58defa --- /dev/null +++ b/configs/nucleo-l496zg/src/stm32_adc.c @@ -0,0 +1,174 @@ +/************************************************************************************ + * configs/nucleo-144/src/stm32_adc.c + * + * Copyright (C) 2016 Gregory Nutt. All rights reserved. + * Author: Gregory Nutt + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ************************************************************************************/ + +/************************************************************************************ + * Included Files + ************************************************************************************/ + +#include + +#include +#include + +#include +#include +#include + +#include "chip.h" +#include "stm32l4_gpio.h" +#include "stm32l4_adc.h" +#include "nucleo-144.h" + +#ifdef CONFIG_ADC + +/************************************************************************************ + * Pre-processor Definitions + ************************************************************************************/ + +/* Configuration ********************************************************************/ +/* Up to 3 ADC interfaces are supported */ + +#if STM32L4_NADC < 3 +# undef CONFIG_STM32L4_ADC3 +#endif + +#if STM32L4_NADC < 2 +# undef CONFIG_STM32L4_ADC2 +#endif + +#if STM32L4_NADC < 1 +# undef CONFIG_STM32L4_ADC1 +#endif + +#if defined(CONFIG_STM32L4_ADC1) || defined(CONFIG_STM32L4_ADC2) || defined(CONFIG_STM32L4_ADC3) +#ifndef CONFIG_STM32L4_ADC1 +# warning "Channel information only available for ADC1" +#endif + +/* The number of ADC channels in the conversion list */ + +#define ADC1_NCHANNELS 1 + +/************************************************************************************ + * Private Data + ************************************************************************************/ + +/* Identifying number of each ADC channel: Variable Resistor. + * + * {1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 15}; + */ + +#ifdef CONFIG_STM32L4_ADC1 +static const uint8_t g_chanlist[ADC1_NCHANNELS] = {3}; + +/* Configurations of pins used byte each ADC channels + * + * {GPIO_ADC1_IN1, GPIO_ADC1_IN2, GPIO_ADC1_IN3, GPIO_ADC1_IN4, GPIO_ADC1_IN5, + * GPIO_ADC1_IN6, GPIO_ADC1_IN7, GPIO_ADC1_IN8, GPIO_ADC1_IN9, GPIO_ADC1_IN10, + * GPIO_ADC1_IN11, GPIO_ADC1_IN12, GPIO_ADC1_IN13, GPIO_ADC1_IN15}; + */ + +static const uint32_t g_pinlist[ADC1_NCHANNELS] = {GPIO_ADC1_IN3}; +#endif + +/************************************************************************************ + * Private Functions + ************************************************************************************/ + +/************************************************************************************ + * Public Functions + ************************************************************************************/ + +/************************************************************************************ + * Name: stm32_adc_setup + * + * Description: + * Initialize ADC and register the ADC driver. + * + ************************************************************************************/ + +int stm32_adc_setup(void) +{ +#ifdef CONFIG_STM32L4_ADC1 + static bool initialized = false; + struct adc_dev_s *adc; + int ret; + int i; + + /* Check if we have already initialized */ + + if (!initialized) + { + /* Configure the pins as analog inputs for the selected channels */ + + for (i = 0; i < ADC1_NCHANNELS; i++) + { + if (g_pinlist[i] != 0) + { + stm32l4_configgpio(g_pinlist[i]); + } + } + + /* Call stm32_adcinitialize() to get an instance of the ADC interface */ + + adc = stm32l4_adc_initialize(1, g_chanlist, ADC1_NCHANNELS); + if (adc == NULL) + { + aerr("ERROR: Failed to get ADC interface\n"); + return -ENODEV; + } + + /* Register the ADC driver at "/dev/adc0" */ + + ret = adc_register("/dev/adc0", adc); + if (ret < 0) + { + aerr("ERROR: adc_register failed: %d\n", ret); + return ret; + } + + /* Now we are initialized */ + + initialized = true; + } + + return OK; +#else + return -ENOSYS; +#endif +} + +#endif /* CONFIG_STM32L4_ADC1 || CONFIG_STM32L4_ADC2 || CONFIG_STM32L4_ADC3 */ +#endif /* CONFIG_ADC */ diff --git a/configs/nucleo-l496zg/src/stm32_appinitialize.c b/configs/nucleo-l496zg/src/stm32_appinitialize.c new file mode 100644 index 00000000000..677f184b61b --- /dev/null +++ b/configs/nucleo-l496zg/src/stm32_appinitialize.c @@ -0,0 +1,200 @@ +/**************************************************************************** + * config/nucleo-144/src/stm32_appinitialize.c + * + * Copyright (C) 2016 Gregory Nutt. All rights reserved. + * Authors: Gregory Nutt + * Mark Olsson + * David Sidrane + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + +/**************************************************************************** + * Included Files + ****************************************************************************/ + +#include + +#include +#include +#include +#include + +#include "nucleo-144.h" +#include + +#include "stm32l4_i2c.h" + +/**************************************************************************** + * Private Data + ***************************************************************************/ + +#if defined(CONFIG_STM32L4_I2C1) +struct i2c_master_s* i2c1; +#endif +#if defined(CONFIG_STM32L4_I2C2) +struct i2c_master_s* i2c2; +#endif +#if defined(CONFIG_STM32L4_I2C3) +struct i2c_master_s* i2c3; +#endif +#if defined(CONFIG_STM32L4_I2C4) +struct i2c_master_s* i2c4; +#endif + +/**************************************************************************** + * Public Functions + ****************************************************************************/ + +/**************************************************************************** + * Name: board_app_initialize + * + * Description: + * Perform application specific initialization. This function is never + * called directly from application code, but only indirectly via the + * (non-standard) boardctl() interface using the command BOARDIOC_INIT. + * + * Input Parameters: + * arg - The boardctl() argument is passed to the board_app_initialize() + * implementation without modification. The argument has no + * meaning to NuttX; the meaning of the argument is a contract + * between the board-specific initalization logic and the the + * matching application logic. The value cold be such things as a + * mode enumeration value, a set of DIP switch switch settings, a + * pointer to configuration data read from a file or serial FLASH, + * or whatever you would like to do with it. Every implementation + * should accept zero/NULL as a default configuration. + * + * Returned Value: + * Zero (OK) is returned on success; a negated errno value is returned on + * any failure to indicate the nature of the failure. + * + ****************************************************************************/ + +int board_app_initialize(uintptr_t arg) +{ + int ret; + +#ifdef CONFIG_FS_PROCFS + /* Mount the procfs file system */ + + ret = mount(NULL, STM32_PROCFS_MOUNTPOINT, "procfs", 0, NULL); + if (ret < 0) + { + syslog(LOG_ERR, "ERROR: Failed to mount procfs at %s: %d\n", + STM32_PROCFS_MOUNTPOINT, ret); + } +#endif + +#if !defined(CONFIG_ARCH_LEDS) && defined(CONFIG_USERLED_LOWER) + /* Register the LED driver */ + + ret = userled_lower_initialize(LED_DRIVER_PATH); + if (ret < 0) + { + syslog(LOG_ERR, "ERROR: userled_lower_initialize() failed: %d\n", ret); + } +#endif + +#ifdef CONFIG_ADC + /* Initialize ADC and register the ADC driver. */ + + ret = stm32_adc_setup(); + if (ret < 0) + { + syslog(LOG_ERR, "ERROR: stm32_adc_setup failed: %d\n", ret); + } +#endif + +#if defined(CONFIG_FAT_DMAMEMORY) + if (stm32_dma_alloc_init() < 0) + { + syslog(LOG_ERR, "DMA alloc FAILED"); + } +#endif + +#if defined(CONFIG_NUCLEO_SPI_TEST) + /* Create SPI interfaces */ + + ret = stm32_spidev_bus_test(); + if (ret != OK) + { + syslog(LOG_ERR, "ERROR: Failed to initialize SPI interfaces: %d\n", ret); + return ret; + } +#endif + +#if defined(CONFIG_MMCSD) + /* Configure SDIO */ + /* Initialize the SDIO block driver */ + + ret = stm32l4_sdio_initialize(); + if (ret != OK) + { + ferr("ERROR: Failed to initialize MMC/SD driver: %d\n", ret); + return ret; + } +#endif + +#if defined(CONFIG_I2C) + /* Configure I2C */ + + /* REVISIT: this is ugly! */ + +#if defined(CONFIG_STM32L4_I2C1) + i2c1 = stm32l4_i2cbus_initialize(1); +#endif +#if defined(CONFIG_STM32L4_I2C2) + i2c2 = stm32l4_i2cbus_initialize(2); +#endif +#if defined(CONFIG_STM32L4_I2C3) + i2c3 = stm32l4_i2cbus_initialize(3); +#endif +#if defined(CONFIG_STM32L4_I2C4) + i2c4 = stm32l4_i2cbus_initialize(4); +#endif +#ifdef CONFIG_I2C_DRIVER +#if defined(CONFIG_STM32L4_I2C1) + i2c_register(i2c1, 1); +#endif +#if defined(CONFIG_STM32L4_I2C2) + i2c_register(i2c2, 2); +#endif +#if defined(CONFIG_STM32L4_I2C3) + i2c_register(i2c3, 3); +#endif +#if defined(CONFIG_STM32L4_I2C4) + i2c_register(i2c4, 4); +#endif +#endif +#endif /* CONFIG_I2C */ + + UNUSED(ret); + return OK; +} diff --git a/configs/nucleo-l496zg/src/stm32_autoleds.c b/configs/nucleo-l496zg/src/stm32_autoleds.c new file mode 100644 index 00000000000..f92b9da8555 --- /dev/null +++ b/configs/nucleo-l496zg/src/stm32_autoleds.c @@ -0,0 +1,188 @@ +/**************************************************************************** + * configs/nucleo-144/src/stm32_autoleds.c + * + * Copyright (C) 2016 Gregory Nutt. All rights reserved. + * Authors: Gregory Nutt + * David Sidrane + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + +/**************************************************************************** + * Included Files + ****************************************************************************/ + +#include + +#include +#include + +#include +#include + +#include "stm32l4_gpio.h" +#include "nucleo-144.h" +#ifdef CONFIG_ARCH_LEDS + +/**************************************************************************** + * Pre-processor Definitions + ****************************************************************************/ + +#define ARRAYSIZE(x) (sizeof((x)) / sizeof((x)[0])) + +/**************************************************************************** + * Private Data + ****************************************************************************/ + +/* Indexed by BOARD_LED_ */ + +static const uint32_t g_ledmap[BOARD_NLEDS] = +{ + GPIO_LED_GREEN, + GPIO_LED_BLUE, + GPIO_LED_RED, +}; + +static bool g_initialized; + +/**************************************************************************** + * Private Functions + ****************************************************************************/ + +static void phy_set_led(int led, bool state) +{ + /* Active High */ + + stm32l4_gpiowrite(g_ledmap[led], state); +} + +/**************************************************************************** + * Public Functions + ****************************************************************************/ + +/**************************************************************************** + * Name: board_autoled_initialize + ****************************************************************************/ + +void board_autoled_initialize(void) +{ + int i; + + /* Configure the LD1 GPIO for output. Initial state is OFF */ + + for (i = 0; i < ARRAYSIZE(g_ledmap); i++) + { + stm32l4_configgpio(g_ledmap[i]); + } +} + +/**************************************************************************** + * Name: board_autoled_on + ****************************************************************************/ + +void board_autoled_on(int led) +{ + switch (led) + { + default: + break; + + case LED_HEAPALLOCATE: + phy_set_led(BOARD_LED_BLUE, true); + break; + + case LED_IRQSENABLED: + phy_set_led(BOARD_LED_BLUE, false); + phy_set_led(BOARD_LED_GREEN, true); + break; + + case LED_STACKCREATED: + phy_set_led(BOARD_LED_GREEN, true); + phy_set_led(BOARD_LED_BLUE, true); + g_initialized = true; + break; + + case LED_INIRQ: + phy_set_led(BOARD_LED_BLUE, true); + break; + + case LED_SIGNAL: + phy_set_led(BOARD_LED_GREEN, true); + break; + + case LED_ASSERTION: + phy_set_led(BOARD_LED_RED, true); + phy_set_led(BOARD_LED_BLUE, true); + break; + + case LED_PANIC: + phy_set_led(BOARD_LED_RED, true); + break; + + case LED_IDLE : /* IDLE */ + phy_set_led(BOARD_LED_RED, true); + break; + } +} + +/**************************************************************************** + * Name: board_autoled_off + ****************************************************************************/ + +void board_autoled_off(int led) +{ + switch (led) + { + default: + break; + + case LED_SIGNAL: + phy_set_led(BOARD_LED_GREEN, false); + break; + + case LED_INIRQ: + phy_set_led(BOARD_LED_BLUE, false); + break; + + case LED_ASSERTION: + phy_set_led(BOARD_LED_RED, false); + phy_set_led(BOARD_LED_BLUE, false); + break; + + case LED_PANIC: + phy_set_led(BOARD_LED_RED, false); + break; + + case LED_IDLE : /* IDLE */ + phy_set_led(BOARD_LED_RED, false); + break; + } +} + +#endif /* CONFIG_ARCH_LEDS */ diff --git a/configs/nucleo-l496zg/src/stm32_boot.c b/configs/nucleo-l496zg/src/stm32_boot.c new file mode 100644 index 00000000000..5cf32fbb227 --- /dev/null +++ b/configs/nucleo-l496zg/src/stm32_boot.c @@ -0,0 +1,109 @@ +/************************************************************************************ + * configs/nucleo-144/src/stm32_boot.c + * + * Copyright (C) 2016 Gregory Nutt. All rights reserved. + * Authors: Gregory Nutt + * David Sidrane + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ************************************************************************************/ + +/************************************************************************************ + * Included Files + ************************************************************************************/ + +#include + +#include + +#include +#include + +#include "up_arch.h" +#include "nucleo-144.h" + +/************************************************************************************ + * Public Functions + ************************************************************************************/ + +/************************************************************************************ + * Name: stm32l4_boardinitialize + * + * Description: + * All STM32 architectures must provide the following entry point. This entry point + * is called early in the initialization -- after all memory has been configured + * and mapped but before any devices have been initialized. + * + ************************************************************************************/ + +void stm32l4_boardinitialize(void) +{ +#ifdef CONFIG_ARCH_LEDS + /* Configure on-board LEDs if LED support has been selected. */ + + board_autoled_initialize(); +#endif + +#if defined(CONFIG_STM32L4_OTGFS) || defined(CONFIG_STM32L4_HOST) + stm32_usbinitialize(); +#endif + +#if defined(CONFIG_SPI) + /* Configure SPI chip selects */ + + stm32_spidev_initialize(); +#endif +} + +/************************************************************************************ + * Name: board_initialize + * + * Description: + * If CONFIG_BOARD_INITIALIZE is selected, then an additional initialization call + * will be performed in the boot-up sequence to a function called + * board_initialize(). board_initialize() will be called immediately after + * up_initialize() is called and just before the initial application is started. + * This additional initialization phase may be used, for example, to initialize + * board-specific device drivers. + * + ************************************************************************************/ + +#ifdef CONFIG_BOARD_INITIALIZE +void board_initialize(void) +{ +#if defined(CONFIG_NSH_LIBRARY) && !defined(CONFIG_LIB_BOARDCTL) + /* Perform NSH initialization here instead of from the NSH. This + * alternative NSH initialization is necessary when NSH is ran in user-space + * but the initialization function must run in kernel space. + */ + + (void)board_app_initialize(0); +#endif +} +#endif diff --git a/configs/nucleo-l496zg/src/stm32_buttons.c b/configs/nucleo-l496zg/src/stm32_buttons.c new file mode 100644 index 00000000000..46f7392ddba --- /dev/null +++ b/configs/nucleo-l496zg/src/stm32_buttons.c @@ -0,0 +1,120 @@ +/**************************************************************************** + * configs/nucleo-144/src/stm32_buttons.c + * + * Copyright (C) 2016-2017 Gregory Nutt. All rights reserved. + * Authors: Gregory Nutt + * David Sidrane + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + +/**************************************************************************** + * Included Files + ****************************************************************************/ + +#include + +#include +#include + +#include +#include + +#include + +#include "stm32l4_gpio.h" +#include "nucleo-144.h" + +#ifdef CONFIG_ARCH_BUTTONS + +/**************************************************************************** + * Public Functions + ****************************************************************************/ + +/**************************************************************************** + * Name: board_button_initialize + * + * Description: + * board_button_initialize() must be called to initialize button resources. + * After that, board_buttons() may be called to collect the current state + * of all buttons or board_button_irq() may be called to register button + * interrupt handlers. + * + ****************************************************************************/ + +void board_button_initialize(void) +{ + stm32l4_configgpio(GPIO_BTN_USER); +} + +/**************************************************************************** + * Name: board_buttons + ****************************************************************************/ + +uint32_t board_buttons(void) +{ + return stm32l4_gpioread(GPIO_BTN_USER) ? 1 : 0; +} + +/************************************************************************************ + * Button support. + * + * Description: + * board_button_initialize() must be called to initialize button resources. After + * that, board_buttons() may be called to collect the current state of all + * buttons or board_button_irq() may be called to register button interrupt + * handlers. + * + * After board_button_initialize() has been called, board_buttons() may be called to + * collect the state of all buttons. board_buttons() returns an 32-bit bit set + * with each bit associated with a button. See the BUTTON_*_BIT + * definitions in board.h for the meaning of each bit. + * + * board_button_irq() may be called to register an interrupt handler that will + * be called when a button is depressed or released. The ID value is a + * button enumeration value that uniquely identifies a button resource. See the + * BUTTON_* definitions in board.h for the meaning of enumeration + * value. + * + ************************************************************************************/ + +#ifdef CONFIG_ARCH_IRQBUTTONS +int board_button_irq(int id, xcpt_t irqhandler, FAR void *arg) +{ + int ret = -EINVAL; + + if (id == BUTTON_USER) + { + ret = stm32l4_gpiosetevent(GPIO_BTN_USER, true, true, true, irqhandler, arg); + } + + return ret; +} +#endif +#endif /* CONFIG_ARCH_BUTTONS */ diff --git a/configs/nucleo-l496zg/src/stm32_dma_alloc.c b/configs/nucleo-l496zg/src/stm32_dma_alloc.c new file mode 100644 index 00000000000..7ce0af1790d --- /dev/null +++ b/configs/nucleo-l496zg/src/stm32_dma_alloc.c @@ -0,0 +1,117 @@ +/**************************************************************************** + * configs/nucleo-144/stc/stm32_dma_alloc.c + * + * Copyright (C) 2016 PX4 Development Team. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name PX4 nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + +/************************************************************************************ + * Included Files + ************************************************************************************/ + +#include +#include +#include +#include +#include + +#include "nucleo-144.h" + +#if defined(CONFIG_FAT_DMAMEMORY) + +/************************************************************************************ + * Pre-processor Definitions + ************************************************************************************/ + +#if !defined(CONFIG_GRAN) +# error microSD DMA support requires CONFIG_GRAN +#endif + +#define BOARD_DMA_ALLOC_POOL_SIZE (8*512) + +/************************************************************************************ + * Private Data + ************************************************************************************/ + +static GRAN_HANDLE dma_allocator; + +/* The DMA heap size constrains the total number of things that can be + * ready to do DMA at a time. + * + * For example, FAT DMA depends on one sector-sized buffer per filesystem plus + * one sector-sized buffer per file. + * + * We use a fundamental alignment / granule size of 64B; this is sufficient + * to guarantee alignment for the largest STM32 DMA burst (16 beats x 32bits). + */ + +static uint8_t g_dma_heap[BOARD_DMA_ALLOC_POOL_SIZE] __attribute__((aligned(64))); + +/************************************************************************************ + * Public Functions + ************************************************************************************/ + +/************************************************************************************ + * Name: stm32_dma_alloc_init + * + * Description: + * All boards may optionally provide this API to instantiate a pool of + * memory for uses with FAST FS DMA operations. + * + ************************************************************************************/ + +int stm32_dma_alloc_init(void) +{ + dma_allocator = gran_initialize(g_dma_heap, + sizeof(g_dma_heap), + 7, /* 128B granule - must be > alignment (XXX bug?) */ + 6); /* 64B alignment */ + + if (dma_allocator == NULL) + { + return -ENOMEM; + } + + return OK; +} + +/* DMA-aware allocator stubs for the FAT filesystem. */ + +void *fat_dma_alloc(size_t size) +{ + return gran_alloc(dma_allocator, size); +} + +void fat_dma_free(FAR void *memory, size_t size) +{ + gran_free(dma_allocator, memory, size); +} + +#endif /* CONFIG_FAT_DMAMEMORY */ diff --git a/configs/nucleo-l496zg/src/stm32_sdio.c b/configs/nucleo-l496zg/src/stm32_sdio.c new file mode 100644 index 00000000000..6a0a21dffbe --- /dev/null +++ b/configs/nucleo-l496zg/src/stm32_sdio.c @@ -0,0 +1,180 @@ +/**************************************************************************** + * config/nucleo-144/src/stm32_sdio.c + * + * Copyright (C) 2014, 2016-2017 Gregory Nutt. All rights reserved. + * Author: Gregory Nutt + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + +/**************************************************************************** + * Included Files + ****************************************************************************/ + +#include + +#include +#include +#include +#include + +#include +#include + +#include "chip.h" +#include "nucleo-144.h" +#include "stm32l4_gpio.h" +#include "stm32l4_sdmmc.h" + +#ifdef CONFIG_MMCSD + + +/**************************************************************************** + * Pre-processor Definitions + ****************************************************************************/ + +/* Configuration ************************************************************/ + +/* Card detections requires card support and a card detection GPIO */ + +#define HAVE_NCD 1 +#if !defined(GPIO_SDMMC1_NCD) +# undef HAVE_NCD +#endif + +/**************************************************************************** + * Private Data + ****************************************************************************/ + +static FAR struct sdio_dev_s *g_sdio_dev; +#ifdef HAVE_NCD +static bool g_sd_inserted = 0xff; /* Impossible value */ +#endif + +/**************************************************************************** + * Private Functions + ****************************************************************************/ + +/**************************************************************************** + * Name: stm32_ncd_interrupt + * + * Description: + * Card detect interrupt handler. + * + ****************************************************************************/ + +#ifdef HAVE_NCD +static int stm32_ncd_interrupt(int irq, FAR void *context) +{ + bool present; + + present = !stm32_gpioread(GPIO_SDMMC1_NCD); + if (g_sdio_dev && present != g_sd_inserted) + { + sdio_mediachange(g_sdio_dev, present); + g_sd_inserted = present; + } + + return OK; +} +#endif + +/**************************************************************************** + * Public Functions + ****************************************************************************/ + +/**************************************************************************** + * Name: stm32_sdio_initialize + * + * Description: + * Initialize SDIO-based MMC/SD card support + * + ****************************************************************************/ + +int stm32_sdio_initialize(void) +{ + int ret; + +#ifdef HAVE_NCD + /* Card detect */ + + bool cd_status; + + /* Configure the card detect GPIO */ + + stm32_configgpio(GPIO_SDMMC1_NCD); + + /* Register an interrupt handler for the card detect pin */ + + (void)stm32_gpiosetevent(GPIO_SDMMC1_NCD, true, true, true, + stm32_ncd_interrupt, NULL); +#endif + + /* Mount the SDIO-based MMC/SD block driver */ + /* First, get an instance of the SDIO interface */ + + finfo("Initializing SDIO slot %d\n", SDIO_SLOTNO); + + g_sdio_dev = sdio_initialize(SDIO_SLOTNO); + if (!g_sdio_dev) + { + ferr("ERROR: Failed to initialize SDIO slot %d\n", SDIO_SLOTNO); + return -ENODEV; + } + + /* Now bind the SDIO interface to the MMC/SD driver */ + + finfo("Bind SDIO to the MMC/SD driver, minor=%d\n", SDIO_MINOR); + + ret = mmcsd_slotinitialize(SDIO_MINOR, g_sdio_dev); + if (ret != OK) + { + ferr("ERROR: Failed to bind SDIO to the MMC/SD driver: %d\n", ret); + return ret; + } + + finfo("Successfully bound SDIO to the MMC/SD driver\n"); + +#ifdef HAVE_NCD + /* Use SD card detect pin to check if a card is g_sd_inserted */ + + cd_status = !stm32_gpioread(GPIO_SDMMC1_NCD); + finfo("Card detect : %d\n", cd_status); + + sdio_mediachange(g_sdio_dev, cd_status); +#else + /* Assume that the SD card is inserted. What choice do we have? */ + + sdio_mediachange(g_sdio_dev, true); +#endif + + return OK; +} + +#endif /* HAVE_SDIO */ diff --git a/configs/nucleo-l496zg/src/stm32_spi.c b/configs/nucleo-l496zg/src/stm32_spi.c new file mode 100644 index 00000000000..ce8af8151f0 --- /dev/null +++ b/configs/nucleo-l496zg/src/stm32_spi.c @@ -0,0 +1,362 @@ +/************************************************************************************ + * configs/nucleo-144/src/stm32_spi.c + * + * Copyright (C) 2016 Gregory Nutt. All rights reserved. + * Authors: Gregory Nutt + * David Sidrane + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ************************************************************************************/ + +/************************************************************************************ + * Included Files + ************************************************************************************/ + +#include + +#include +#include +#include +#include + +#include +#include + +#include "up_arch.h" +#include "chip.h" +#include "stm32l4_gpio.h" +#include "stm32l4_spi.h" + +#include "nucleo-144.h" + +#if defined(CONFIG_SPI) + +/************************************************************************************ + * Pre-processor Definitions + ************************************************************************************/ + +#define ARRAYSIZE(x) (sizeof((x)) / sizeof((x)[0])) + +#if defined(CONFIG_NUCLEO_SPI1_TEST) +# if defined(CONFIG_NUCLEO_SPI1_TEST_MODE0) +# define CONFIG_NUCLEO_SPI1_TEST_MODE SPIDEV_MODE0 +# elif defined(CONFIG_NUCLEO_SPI1_TEST_MODE1) +# define CONFIG_NUCLEO_SPI1_TEST_MODE SPIDEV_MODE1 +# elif defined(CONFIG_NUCLEO_SPI1_TEST_MODE2) +# define CONFIG_NUCLEO_SPI1_TEST_MODE SPIDEV_MODE2 +# elif defined(CONFIG_NUCLEO_SPI1_TEST_MODE3) +# define CONFIG_NUCLEO_SPI1_TEST_MODE SPIDEV_MODE3 +# else +# error "No CONFIG_NUCLEO_SPI1_TEST_MODEx defined" +# endif +#endif + +#if defined(CONFIG_NUCLEO_SPI2_TEST) +# if defined(CONFIG_NUCLEO_SPI2_TEST_MODE0) +# define CONFIG_NUCLEO_SPI2_TEST_MODE SPIDEV_MODE0 +# elif defined(CONFIG_NUCLEO_SPI2_TEST_MODE1) +# define CONFIG_NUCLEO_SPI2_TEST_MODE SPIDEV_MODE1 +# elif defined(CONFIG_NUCLEO_SPI2_TEST_MODE2) +# define CONFIG_NUCLEO_SPI2_TEST_MODE SPIDEV_MODE2 +# elif defined(CONFIG_NUCLEO_SPI2_TEST_MODE3) +# define CONFIG_NUCLEO_SPI2_TEST_MODE SPIDEV_MODE3 +# else +# error "No CONFIG_NUCLEO_SPI2_TEST_MODEx defined" +# endif +#endif + +#if defined(CONFIG_NUCLEO_SPI3_TEST) +# if defined(CONFIG_NUCLEO_SPI3_TEST_MODE0) +# define CONFIG_NUCLEO_SPI3_TEST_MODE SPIDEV_MODE0 +# elif defined(CONFIG_NUCLEO_SPI3_TEST_MODE1) +# define CONFIG_NUCLEO_SPI3_TEST_MODE SPIDEV_MODE1 +# elif defined(CONFIG_NUCLEO_SPI3_TEST_MODE2) +# define CONFIG_NUCLEO_SPI3_TEST_MODE SPIDEV_MODE2 +# elif defined(CONFIG_NUCLEO_SPI3_TEST_MODE3) +# define CONFIG_NUCLEO_SPI3_TEST_MODE SPIDEV_MODE3 +# else +# error "No CONFIG_NUCLEO_SPI3_TEST_MODEx defined" +# endif +#endif + +/************************************************************************************ + * Private Data + ************************************************************************************/ + +/* Indexed by NUCLEO_SPI_BUSx_CSx */ + +static const uint32_t g_spigpio[] = +{ +#if defined(GPIO_SPI1_CS0) + GPIO_SPI1_CS0, +#endif +#if defined(GPIO_SPI1_CS1) + GPIO_SPI1_CS1, +#endif +#if defined(GPIO_SPI1_CS2) + GPIO_SPI1_CS2, +#endif +#if defined(GPIO_SPI1_CS3) + GPIO_SPI1_CS3, +#endif +#if defined(GPIO_SPI2_CS0) + GPIO_SPI2_CS0, +#endif +#if defined(GPIO_SPI2_CS1) + GPIO_SPI2_CS1, +#endif +#if defined(GPIO_SPI2_CS2) + GPIO_SPI2_CS2, +#endif +#if defined(GPIO_SPI2_CS3) + GPIO_SPI2_CS3, +#endif +#if defined(GPIO_SPI3_CS0) + GPIO_SPI3_CS0, +#endif +#if defined(GPIO_SPI3_CS1) + GPIO_SPI3_CS1, +#endif +#if defined(GPIO_SPI3_CS2) + GPIO_SPI3_CS2, +#endif +#if defined(GPIO_SPI3_CS3) + GPIO_SPI3_CS3, +#endif +}; + +#if defined(CONFIG_NUCLEO_SPI_TEST) +# if defined(CONFIG_STM32L4_SPI1) +struct spi_dev_s *spi1; +# endif +# if defined(CONFIG_STM32L4_SPI2) +struct spi_dev_s *spi2; +# endif +# if defined(CONFIG_STM32L4_SPI3) +struct spi_dev_s *spi3; +# endif +#endif + +/************************************************************************************ + * Public Functions + ************************************************************************************/ + +/************************************************************************************ + * Name: stm32_spidev_initialize + * + * Description: + * Called to configure SPI chip select GPIO pins for the Nucleo-144 board. + * + ************************************************************************************/ + +void weak_function stm32_spidev_initialize(void) +{ + int i; + + /* Configure SPI CS GPIO for output */ + + for (i = 0; i < ARRAYSIZE(g_spigpio); i++) + { + stm32l4_configgpio(g_spigpio[i]); + } +} + +/**************************************************************************** + * Name: stm32_spi1/2/3/4/5select and stm32_spi1/2/3/4/5status + * + * Description: + * The external functions, stm32_spi1/2/3select and stm32_spi1/2/3status must be + * provided by board-specific logic. They are implementations of the select + * and status methods of the SPI interface defined by struct spi_ops_s (see + * include/nuttx/spi/spi.h). All other methods (including stm32_spibus_initialize()) + * are provided by common STM32 logic. To use this common SPI logic on your + * board: + * + * 1. Provide logic in stm32_boardinitialize() to configure SPI chip select + * pins. + * 2. Provide stm32_spi1/2/3select() and stm32_spi1/2/3status() functions in your + * board-specific logic. These functions will perform chip selection and + * status operations using GPIOs in the way your board is configured. + * 3. Add a calls to stm32_spibus_initialize() in your low level application + * initialization logic + * 4. The handle returned by stm32_spibus_initialize() may then be used to bind the + * SPI driver to higher level logic (e.g., calling + * mmcsd_spislotinitialize(), for example, will bind the SPI driver to + * the SPI MMC/SD driver). + * + ****************************************************************************/ + +#ifdef CONFIG_STM32L4_SPI1 +void stm32_spi1select(FAR struct spi_dev_s *dev, uint32_t devid, bool selected) +{ + spiinfo("devid: %d CS: %s\n", (int)devid, selected ? "assert" : "de-assert"); + stm32l4_gpiowrite(g_spigpio[devid], !selected); +} + +uint8_t stm32_spi1status(FAR struct spi_dev_s *dev, uint32_t devid) +{ + return 0; +} +#endif + +#ifdef CONFIG_STM32L4_SPI2 +void stm32_spi2select(FAR struct spi_dev_s *dev, uint32_t devid, bool selected) +{ + spiinfo("devid: %d CS: %s\n", (int)devid, selected ? "assert" : "de-assert"); + stm32l4_gpiowrite(g_spigpio[devid], !selected); +} + +uint8_t stm32_spi2status(FAR struct spi_dev_s *dev, uint32_t devid) +{ + return 0; +} +#endif + +#ifdef CONFIG_STM32L4_SPI3 +void stm32_spi3select(FAR struct spi_dev_s *dev, uint32_t devid, bool selected) +{ + spiinfo("devid: %d CS: %s\n", (int)devid, selected ? "assert" : "de-assert"); + stm32l4_gpiowrite(g_spigpio[devid], !selected); +} + +uint8_t stm32_spi3status(FAR struct spi_dev_s *dev, uint32_t devid) +{ + return 0; +} +#endif + +/**************************************************************************** + * Name: stm32_spi1cmddata + * + * Description: + * Set or clear the SH1101A A0 or SD1306 D/C n bit to select data (true) + * or command (false). This function must be provided by platform-specific + * logic. This is an implementation of the cmddata method of the SPI + * interface defined by struct spi_ops_s (see include/nuttx/spi/spi.h). + * + * Input Parameters: + * + * spi - SPI device that controls the bus the device that requires the CMD/ + * DATA selection. + * devid - If there are multiple devices on the bus, this selects which one + * to select cmd or data. NOTE: This design restricts, for example, + * one one SPI display per SPI bus. + * cmd - true: select command; false: select data + * + * Returned Value: + * None + * + ****************************************************************************/ + +#ifdef CONFIG_SPI_CMDDATA +#ifdef CONFIG_STM32L4_SPI1 +int stm32_spi1cmddata(FAR struct spi_dev_s *dev, uint32_t devid, bool cmd) +{ + return -ENODEV; +} +#endif + +#ifdef CONFIG_STM32L4_SPI2 +int stm32_spi2cmddata(FAR struct spi_dev_s *dev, uint32_t devid, bool cmd) +{ + return -ENODEV; +} +#endif + +#ifdef CONFIG_STM32L4_SPI3 +int stm32_spi3cmddata(FAR struct spi_dev_s *dev, uint32_t devid, bool cmd) +{ + return -ENODEV; +} +#endif + +#endif /* CONFIG_SPI_CMDDATA */ + +#if defined(CONFIG_NUCLEO_SPI_TEST) +int stm32_spidev_bus_test(void) +{ + /* Configure and test SPI-*/ + + uint8_t *tx = (uint8_t *)CONFIG_NUCLEO_SPI_TEST_MESSAGE; + +#if defined(CONFIG_NUCLEO_SPI1_TEST) + spi1 = stm32l3_spibus_initialize(1); + + if (!spi1) + { + syslog(LOG_ERR, "ERROR Failed to initialize SPI port 1\n"); + return -ENODEV; + } + + /* Default SPI1 to NUCLEO_SPI1_FREQ and mode */ + + SPI_SETFREQUENCY(spi1, CONFIG_NUCLEO_SPI1_TEST_FREQ); + SPI_SETBITS(spi1, CONFIG_NUCLEO_SPI1_TEST_BITS); + SPI_SETMODE(spi1, CONFIG_NUCLEO_SPI1_TEST_MODE); + SPI_EXCHANGE(spi1, tx, NULL, ARRAYSIZE(CONFIG_NUCLEO_SPI_TEST_MESSAGE)); +#endif + +#if defined(CONFIG_NUCLEO_SPI2_TEST) + spi2 = stm32l4_spibus_initialize(2); + + if (!spi2) + { + syslog(LOG_ERR, "ERROR Failed to initialize SPI port 2\n"); + return -ENODEV; + } + + /* Default SPI2 to NUCLEO_SPI2_FREQ and mode */ + + SPI_SETFREQUENCY(spi2, CONFIG_NUCLEO_SPI2_TEST_FREQ); + SPI_SETBITS(spi2, CONFIG_NUCLEO_SPI2_TEST_BITS); + SPI_SETMODE(spi2, CONFIG_NUCLEO_SPI2_TEST_MODE); + SPI_EXCHANGE(spi2, tx, NULL, ARRAYSIZE(CONFIG_NUCLEO_SPI_TEST_MESSAGE)); +#endif + +#if defined(CONFIG_NUCLEO_SPI3_TEST) + spi3 = stm32l4_spibus_initialize(3); + + if (!spi3) + { + syslog(LOG_ERR, "ERROR Failed to initialize SPI port 2\n"); + return -ENODEV; + } + + /* Default SPI3 to NUCLEO_SPI3_FREQ and mode */ + + SPI_SETFREQUENCY(spi3, CONFIG_NUCLEO_SPI3_TEST_FREQ); + SPI_SETBITS(spi3, CONFIG_NUCLEO_SPI3_TEST_BITS); + SPI_SETMODE(spi3, CONFIG_NUCLEO_SPI3_TEST_MODE); + SPI_EXCHANGE(spi3, tx, NULL, ARRAYSIZE(CONFIG_NUCLEO_SPI_TEST_MESSAGE)); +#endif + + return OK; +} +#endif /* NUCLEO_SPI_TEST */ +#endif /* defined(CONFIG_SPI) */ diff --git a/configs/nucleo-l496zg/src/stm32_usb.c b/configs/nucleo-l496zg/src/stm32_usb.c new file mode 100644 index 00000000000..74d8d46d25c --- /dev/null +++ b/configs/nucleo-l496zg/src/stm32_usb.c @@ -0,0 +1,331 @@ +/************************************************************************************ + * configs//nucleo-144/src/stm32_usb.c + * + * Copyright (C) 2016-2017 Gregory Nutt. All rights reserved. + * Authors: Gregory Nutt + * David Sidrane + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ************************************************************************************/ + +/************************************************************************************ + * Included Files + ************************************************************************************/ + +#include + +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include + +#include "up_arch.h" +#include "chip.h" +#include "stm32l4_gpio.h" +#include "stm32l4_otgfs.h" +#include "nucleo-144.h" + +#ifdef CONFIG_STM32L4_OTGFS + +/************************************************************************************ + * Pre-processor Definitions + ************************************************************************************/ + +#if defined(CONFIG_USBDEV) || defined(CONFIG_USBHOST) +# define HAVE_USB 1 +#else +# warning "CONFIG_STM32_OTGFS is enabled but neither CONFIG_USBDEV nor CONFIG_USBHOST" +# undef HAVE_USB +#endif + +#ifndef CONFIG_NUCLEO144_USBHOST_PRIO +# define CONFIG_NUCLEO144_USBHOST_PRIO 100 +#endif + +#ifndef CONFIG_NUCLEO_USBHOST_STACKSIZE +# define CONFIG_NUCLEO_USBHOST_STACKSIZE 1024 +#endif + +/************************************************************************************ + * Private Data + ************************************************************************************/ + +#ifdef CONFIG_USBHOST +static struct usbhost_connection_s *g_usbconn; +#endif + +/************************************************************************************ + * Private Functions + ************************************************************************************/ + +/************************************************************************************ + * Name: usbhost_waiter + * + * Description: + * Wait for USB devices to be connected. + * + ************************************************************************************/ + +#ifdef CONFIG_USBHOST +static int usbhost_waiter(int argc, char *argv[]) +{ + struct usbhost_hubport_s *hport; + + uinfo("Running\n"); + for (;;) + { + /* Wait for the device to change state */ + + DEBUGVERIFY(CONN_WAIT(g_usbconn, &hport)); + uinfo("%s\n", hport->connected ? "connected" : "disconnected"); + + /* Did we just become connected? */ + + if (hport->connected) + { + /* Yes.. enumerate the newly connected device */ + + (void)CONN_ENUMERATE(g_usbconn, hport); + } + } + + /* Keep the compiler from complaining */ + + return 0; +} +#endif + +/************************************************************************************ + * Public Functions + ************************************************************************************/ + +/************************************************************************************ + * Name: stm32_usbinitialize + * + * Description: + * Called from stm32_usbinitialize very early in inialization to setup USB-related + * GPIO pins for the nucleo-144 board. + * + ************************************************************************************/ + +void stm32_usbinitialize(void) +{ + /* The OTG FS has an internal soft pull-up. No GPIO configuration is required */ + + /* Configure the OTG FS VBUS sensing GPIO, Power On, and Overcurrent GPIOs */ + +#ifdef CONFIG_STM32L4_OTGFS + stm32l4_configgpio(GPIO_OTGFS_VBUS); + stm32l4_configgpio(GPIO_OTGFS_PWRON); + stm32l4_configgpio(GPIO_OTGFS_OVER); +#endif +} + +/*********************************************************************************** + * Name: stm32_usbhost_initialize + * + * Description: + * Called at application startup time to initialize the USB host functionality. + * This function will start a thread that will monitor for device + * connection/disconnection events. + * + ***********************************************************************************/ + +#ifdef CONFIG_USBHOST +int stm32_usbhost_initialize(void) +{ + int pid; +#if defined(CONFIG_USBHOST_HUB) || defined(CONFIG_USBHOST_MSC) || \ + defined(CONFIG_USBHOST_HIDKBD) || defined(CONFIG_USBHOST_HIDMOUSE) + int ret; +#endif + + /* First, register all of the class drivers needed to support the drivers + * that we care about: + */ + + uinfo("Register class drivers\n"); + +#ifdef CONFIG_USBHOST_HUB + /* Initialize USB hub class support */ + + ret = usbhost_hub_initialize(); + if (ret < 0) + { + uerr("ERROR: usbhost_hub_initialize failed: %d\n", ret); + } +#endif + +#ifdef CONFIG_USBHOST_MSC + /* Register the USB mass storage class class */ + + ret = usbhost_msc_initialize(); + if (ret != OK) + { + uerr("ERROR: Failed to register the mass storage class: %d\n", ret); + } +#endif + +#ifdef CONFIG_USBHOST_CDCACM + /* Register the CDC/ACM serial class */ + + ret = usbhost_cdcacm_initialize(); + if (ret != OK) + { + uerr("ERROR: Failed to register the CDC/ACM serial class: %d\n", ret); + } +#endif + +#ifdef CONFIG_USBHOST_HIDKBD + /* Initialize the HID keyboard class */ + + ret = usbhost_kbdinit(); + if (ret != OK) + { + uerr("ERROR: Failed to register the HID keyboard class\n"); + } +#endif + +#ifdef CONFIG_USBHOST_HIDMOUSE + /* Initialize the HID mouse class */ + + ret = usbhost_mouse_init(); + if (ret != OK) + { + uerr("ERROR: Failed to register the HID mouse class\n"); + } +#endif + + /* Then get an instance of the USB host interface */ + + uinfo("Initialize USB host\n"); + g_usbconn = stm32l4_otgfshost_initialize(0); + if (g_usbconn) + { + /* Start a thread to handle device connection. */ + + uinfo("Start usbhost_waiter\n"); + + pid = task_create("usbhost", CONFIG_STM32F4DISCO_USBHOST_PRIO, + CONFIG_STM32F4DISCO_USBHOST_STACKSIZE, + (main_t)usbhost_waiter, (FAR char * const *)NULL); + return pid < 0 ? -ENOEXEC : OK; + } + + return -ENODEV; +} +#endif + +/*********************************************************************************** + * Name: stm32_usbhost_vbusdrive + * + * Description: + * Enable/disable driving of VBUS 5V output. This function must be provided be + * each platform that implements the STM32 OTG FS host interface + * + * "On-chip 5 V VBUS generation is not supported. For this reason, a charge pump + * or, if 5 V are available on the application board, a basic power switch, must + * be added externally to drive the 5 V VBUS line. The external charge pump can + * be driven by any GPIO output. When the application decides to power on VBUS + * using the chosen GPIO, it must also set the port power bit in the host port + * control and status register (PPWR bit in OTG_FS_HPRT). + * + * "The application uses this field to control power to this port, and the core + * clears this bit on an overcurrent condition." + * + * Input Parameters: + * iface - For future growth to handle multiple USB host interface. Should be zero. + * enable - true: enable VBUS power; false: disable VBUS power + * + * Returned Value: + * None + * + ***********************************************************************************/ + +#ifdef CONFIG_USBHOST +void stm32_usbhost_vbusdrive(int iface, bool enable) +{ + DEBUGASSERT(iface == 0); + + /* Set the Power Switch by driving the active low enable pin */ + + stm32l4_gpiowrite(GPIO_OTGFS_PWRON, !enable); +} +#endif + +/************************************************************************************ + * Name: stm32_setup_overcurrent + * + * Description: + * Setup to receive an interrupt-level callback if an overcurrent condition is + * detected. + * + * Input Parameter: + * handler - New overcurrent interrupt handler + * arg - The argument provided for the interrupt handler + * + * Returned value: + * Zero (OK) is returned on success. Otherwise, a negated errno value is returned + * to indicate the nature of the failure. + * + ************************************************************************************/ + +#ifdef CONFIG_USBHOST +int stm32_setup_overcurrent(xcpt_t handler, void *arg) +{ + return stm32l4_gpiosetevent(GPIO_OTGFS_OVER, true, true, true, handler, arg); +} +#endif + +/************************************************************************************ + * Name: stm32_usbsuspend + * + * Description: + * Board logic must provide the stm32_usbsuspend logic if the USBDEV driver is + * used. This function is called whenever the USB enters or leaves suspend mode. + * This is an opportunity for the board logic to shutdown clocks, power, etc. + * while the USB is suspended. + * + ************************************************************************************/ + +#ifdef CONFIG_USBDEV +void stm32_usbsuspend(FAR struct usbdev_s *dev, bool resume) +{ + uinfo("resume: %d\n", resume); +} +#endif + +#endif /* CONFIG_STM32_OTGFS */ diff --git a/configs/nucleo-l496zg/src/stm32_userleds.c b/configs/nucleo-l496zg/src/stm32_userleds.c new file mode 100644 index 00000000000..e2a91a52161 --- /dev/null +++ b/configs/nucleo-l496zg/src/stm32_userleds.c @@ -0,0 +1,144 @@ +/**************************************************************************** + * configs/nucleo-144/src/stm32_userleds.c + * + * Copyright (C) 2016 Gregory Nutt. All rights reserved. + * Authors: Gregory Nutt + * Mark Olsson + * David Sidrane + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + +/**************************************************************************** + * Included Files + ****************************************************************************/ + +#include + +#include +#include + +#include +#include + +#include "stm32l4_gpio.h" +#include "nucleo-144.h" + +#ifndef CONFIG_ARCH_LEDS + +/**************************************************************************** + * Pre-processor Definitions + ****************************************************************************/ + +#define ARRAYSIZE(x) (sizeof((x)) / sizeof((x)[0])) + +/**************************************************************************** + * Private Data + ****************************************************************************/ + +/* This array maps an LED number to GPIO pin configuration and is indexed by + * BOARD_LED_ + */ + +static const uint32_t g_ledcfg[BOARD_NLEDS] = +{ + GPIO_LED_GREEN, + GPIO_LED_BLUE, + GPIO_LED_RED, +}; + +/**************************************************************************** + * Public Functions + ****************************************************************************/ + +/**************************************************************************** + * Name: board_userled_initialize + * + * Description: + * If CONFIG_ARCH_LEDS is defined, then NuttX will control the on-board + * LEDs. If CONFIG_ARCH_LEDS is not defined, then the + * board_userled_initialize() is available to initialize the LED from user + * application logic. + * + ****************************************************************************/ + +void board_userled_initialize(void) +{ + int i; + + /* Configure LED1-3 GPIOs for output */ + + for (i = 0; i < ARRAYSIZE(g_ledcfg); i++) + { + stm32l4_configgpio(g_ledcfg[i]); + } +} + +/**************************************************************************** + * Name: board_userled + * + * Description: + * If CONFIG_ARCH_LEDS is defined, then NuttX will control the on-board + * LEDs. If CONFIG_ARCH_LEDS is not defined, then the board_userled() is + * available to control the LED from user application logic. + * + ****************************************************************************/ + +void board_userled(int led, bool ledon) +{ + if ((unsigned)led < ARRAYSIZE(g_ledcfg)) + { + stm32l4_gpiowrite(g_ledcfg[led], ledon); + } +} + +/**************************************************************************** + * Name: board_userled_all + * + * Description: + * If CONFIG_ARCH_LEDS is defined, then NuttX will control the on-board + * LEDs. If CONFIG_ARCH_LEDS is not defined, then the board_userled_all() is + * available to control the LED from user application logic. NOTE: since + * there is only a single LED on-board, this is function is not very useful. + * + ****************************************************************************/ + +void board_userled_all(uint8_t ledset) +{ + int i; + + /* Configure LED1-3 GPIOs for output */ + + for (i = 0; i < ARRAYSIZE(g_ledcfg); i++) + { + stm32l4_gpiowrite(g_ledcfg[i], (ledset & (1 << i)) != 0); + } +} + +#endif /* !CONFIG_ARCH_LEDS */ diff --git a/configs/photon/include/board.h b/configs/photon/include/board.h index 96115ca57f0..119c90a3228 100644 --- a/configs/photon/include/board.h +++ b/configs/photon/include/board.h @@ -237,6 +237,17 @@ # define SDIO_SDXFR_CLKDIV (2 << SDIO_CLKCR_CLKDIV_SHIFT) #endif +/* DMA Channl/Stream Selections *****************************************************/ +/* Stream selections are arbitrary for now but might become important in the future + * if we set aside more DMA channels/streams. + * + * SDIO DMA + * DMAMAP_SDIO_1 = Channel 4, Stream 3 + * DMAMAP_SDIO_2 = Channel 4, Stream 6 + */ + +#define DMAMAP_SDIO DMAMAP_SDIO_1 + /************************************************************************************ * Public Data ************************************************************************************/ diff --git a/configs/photon/nsh/Make.defs b/configs/photon/nsh/Make.defs index b6f58f29439..71af0ab67b9 100644 --- a/configs/photon/nsh/Make.defs +++ b/configs/photon/nsh/Make.defs @@ -40,7 +40,7 @@ include ${TOPDIR}/arch/arm/src/armv7-m/Toolchain.defs ifeq ($(CONFIG_PHOTON_DFU_BOOTLOADER),y) LDSCRIPT = photon_dfu.ld else -LDSCRIPT = ld.script +LDSCRIPT = photon_jtag.ld endif ifeq ($(WINTOOL),y) @@ -68,6 +68,11 @@ NM = $(ARCROSSDEV)nm OBJCOPY = $(CROSSDEV)objcopy OBJDUMP = $(CROSSDEV)objdump +# See http://dfu-util.sourceforge.net/ + +DFUSUFFIX = dfu-suffix +DFUUTIL = dfu-util + ARCHCCVERSION = ${shell $(CC) -v 2>&1 | sed -n '/^gcc version/p' | sed -e 's/^gcc version \([0-9\.]\)/\1/g' -e 's/[-\ ].*//g' -e '1q'} ARCHCCMAJOR = ${shell echo $(ARCHCCVERSION) | cut -d'.' -f1} @@ -114,3 +119,21 @@ HOSTCC = gcc HOSTINCLUDES = -I. HOSTCFLAGS = -Wall -Wstrict-prototypes -Wshadow -Wundef -g -pipe HOSTLDFLAGS = + +ifeq ($(CONFIG_DFU_BINARY),y) + +define DOWNLOAD + $(Q) echo "DFUSUFFIX: $(1).dfu" + $(Q) $(OBJCOPY) $(OBJCOPYARGS) -O binary $(1) $(1).dfu + $(Q) $(DFUSUFFIX) -v $(subst 0x,,$(CONFIG_DFU_VID)) -p $(subst 0x,,$(CONFIG_DFU_PID)) -a $(1).dfu + $(Q) $(DFUUTIL) -d $(CONFIG_DFU_VID):$(CONFIG_DFU_PID) -a 0 -s $(CONFIG_DFU_BASE) -D $(1).dfu +endef + +else + +define DOWNLOAD + $(Q) $(ECHO) "Photon firmware upload through JTAG is not supported" +endef + +endif + diff --git a/configs/photon/scripts/photon_dfu.ld b/configs/photon/scripts/photon_dfu.ld index e59f501210c..1c86142e068 100644 --- a/configs/photon/scripts/photon_dfu.ld +++ b/configs/photon/scripts/photon_dfu.ld @@ -33,7 +33,7 @@ ****************************************************************************/ /* The STM32F205RG has 1024Kb of FLASH beginning at address 0x0800:0000 and - * 112Kb of SRAM. + * 112Kb of SRAM in main SRAM1 and 16 Kb in auxiliary SRAM2. * * Bootloader jumps at 0x0802:0000. */ @@ -61,6 +61,16 @@ SECTIONS *(.text .text.*) *(.fixup) *(.gnu.warning) + + . = ALIGN(0x4); + wlan_firmware_image_location = .; + *(.wlan_firmware_image .wlan_firmware_image.*) + wlan_firmware_image_end = .; + . = ALIGN(0x4); + wlan_nvram_image_location = .; + *(.wlan_nvram_image .wlan_nvram_image.*) + wlan_nvram_image_end = .; + *(.rodata .rodata.*) *(.gnu.linkonce.t.*) *(.glue_7) diff --git a/configs/photon/scripts/ld.script b/configs/photon/scripts/photon_jtag.ld similarity index 97% rename from configs/photon/scripts/ld.script rename to configs/photon/scripts/photon_jtag.ld index 01309314fef..da1c9fa7549 100644 --- a/configs/photon/scripts/ld.script +++ b/configs/photon/scripts/photon_jtag.ld @@ -1,5 +1,5 @@ /**************************************************************************** - * configs/photon/scripts/ld.script + * configs/photon/scripts/photon_jtag.ld * * Copyright (C) 2017 Gregory Nutt. All rights reserved. * @@ -33,7 +33,7 @@ ****************************************************************************/ /* The STM32F205RG has 1024Kb of FLASH beginning at address 0x0800:0000 and - * 112Kb of SRAM. + * 112Kb of SRAM in main SRAM1 and 16 Kb in auxiliary SRAM2. * * When booting from FLASH, FLASH memory is aliased to address 0x0000:0000 * where the code expects to begin execution by jumping to the entry point in diff --git a/configs/photon/src/Makefile b/configs/photon/src/Makefile index 23f31b44899..512b83a9b5c 100644 --- a/configs/photon/src/Makefile +++ b/configs/photon/src/Makefile @@ -61,6 +61,7 @@ endif ifeq ($(CONFIG_PHOTON_WLAN),y) CSRCS += stm32_wlan.c +CSRCS += stm32_wlan_firmware.c endif ifeq ($(CONFIG_STM32_OTGHS),y) diff --git a/configs/photon/src/stm32_wlan.c b/configs/photon/src/stm32_wlan.c index 068561d63a4..9e886807e00 100644 --- a/configs/photon/src/stm32_wlan.c +++ b/configs/photon/src/stm32_wlan.c @@ -98,6 +98,24 @@ void bcmf_board_initialize(int minor) bcmf_board_reset(minor, true); } +/**************************************************************************** + * Name: bcmf_board_setup_oob_irq + ****************************************************************************/ + +void bcmf_board_setup_oob_irq(int minor, xcpt_t func, void *arg) +{ + if (minor != SDIO_WLAN0_MINOR) + { + return; + } + + /* Configure interrupt pin */ + + stm32_configgpio(GPIO_WLAN0_OOB_INT); + + stm32_gpiosetevent(GPIO_WLAN0_OOB_INT, true, false, false, func, arg); +} + /**************************************************************************** * Name: photon_wlan_initialize ****************************************************************************/ diff --git a/configs/photon/src/stm32_wlan_firmware.c b/configs/photon/src/stm32_wlan_firmware.c new file mode 100644 index 00000000000..a1290ad162e --- /dev/null +++ b/configs/photon/src/stm32_wlan_firmware.c @@ -0,0 +1,17650 @@ +/* + * Copyright (c) 2015 Broadcom + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this + * list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this + * list of conditions and the following disclaimer in the documentation and/or + * other materials provided with the distribution. + * + * 3. Neither the name of Broadcom nor the names of other contributors to this + * software may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * 4. This software may not be used as a standalone product, and may only be used as + * incorporated in your product or device that incorporates Broadcom wireless connectivity + * products and solely for the purpose of enabling the functionalities of such Broadcom products. + * + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY WARRANTIES OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT, ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/** @file + * + * BCM43362 NVRAM variables for WM-N-BM-09 USI SiP + * + */ + +#include + +/** + * Character array of NVRAM image + */ + +const char __attribute__((section(".wlan_nvram_image"))) bcm43362_nvram_image[] = + "manfid=0x2d0" "\x00" + "prodid=0x492" "\x00" + "vendid=0x14e4" "\x00" + "devid=0x4343" "\x00" + "boardtype=0x0636" "\x00" + "boardrev=0x1201" "\x00" + "boardnum=777" "\x00" + "xtalfreq=26000" "\x00" + "boardflags=0xa00" "\x00" + "sromrev=3" "\x00" + "wl0id=0x431b" "\x00" + "macaddr=02:0A:F7:e0:ae:ce" "\x00" + "aa2g=3" "\x00" + "ag0=2" "\x00" + "maxp2ga0=74" "\x00" + "ofdm2gpo=0x44111111" "\x00" + "mcs2gpo0=0x4444" "\x00" + "mcs2gpo1=0x6444" "\x00" + "pa0maxpwr=80" "\x00" + "pa0b0=5264" "\x00" /*PA params*/ + "pa0b1=64897" "\x00" + "pa0b2=65359" "\x00" + "pa0itssit=62" "\x00" + "pa1itssit=62" "\x00" + "temp_based_dutycy_en=1" "\x00" + "tx_duty_cycle_ofdm=100" "\x00" + "tx_duty_cycle_cck=100" "\x00" + "tx_ofdm_temp_0=115" "\x00" + "tx_cck_temp_0=115" "\x00" + "tx_ofdm_dutycy_0=40" "\x00" + "tx_cck_dutycy_0=40" "\x00" + "tx_ofdm_temp_1=255" "\x00" + "tx_cck_temp_1=255" "\x00" + "tx_ofdm_dutycy_1=40" "\x00" + "tx_cck_dutycy_1=40" "\x00" + "tx_tone_power_index=40" "\x00" + "tx_tone_power_index.fab.3=48" "\x00" + "cckPwrOffset=0" "\x00" + "ccode=0" "\x00" + "rssismf2g=0xa" "\x00" + "rssismc2g=0x3" "\x00" + "rssisav2g=0x7" "\x00" + "triso2g=0" "\x00" + "noise_cal_enable_2g=0" "\x00" + "noise_cal_po_2g=0" "\x00" + "noise_cal_po_2g.fab.3=-2" "\x00" + "swctrlmap_2g=0x0a030a03,0x0c050c05,0x0c050c05,0x0,0x1ff" "\x00" + "temp_add=29767" "\x00" + "temp_mult=425" "\x00" + "temp_q=10" "\x00" + "initxidx2g=45" "\x00" + "tssitime=1" "\x00" + "rfreg033=0x19" "\x00" + "rfreg033_cck=0x1f" "\x00" + "cckPwrIdxCorr=-8" "\x00" + "spuravoid_enable2g=1" "\x00" + "edonthd=-70" "\x00" + "edoffthd=-76" "\x00" + "\x00\x00"; + +const unsigned int bcm43362_nvram_image_len = sizeof(bcm43362_nvram_image); + +const uint8_t +__attribute__((section(".wlan_firmware_image"))) bcm43362_firmware_image[] = { + 0x00, 0x00, 0x00, 0x00, 0xcd, 0xc2, 0x00, 0x00, 0x91, 0xc1, 0x00, 0x00, + 0x91, 0xc1, 0x00, 0x00, 0x91, 0xc1, 0x00, 0x00, 0x91, 0xc1, 0x00, 0x00, + 0x91, 0xc1, 0x00, 0x00, 0x91, 0xc1, 0x00, 0x00, 0x91, 0xc1, 0x00, 0x00, + 0x91, 0xc1, 0x00, 0x00, 0x91, 0xc1, 0x00, 0x00, 0x91, 0xc1, 0x00, 0x00, + 0x91, 0xc1, 0x00, 0x00, 0x91, 0xc1, 0x00, 0x00, 0x91, 0xc1, 0x00, 0x00, + 0x91, 0xc1, 0x00, 0x00, 0x91, 0xc1, 0x00, 0x00, 0x91, 0xc1, 0x00, 0x00, + 0x91, 0xc1, 0x00, 0x00, 0x91, 0xc1, 0x00, 0x00, 0x91, 0xc1, 0x00, 0x00, + 0x91, 0xc1, 0x00, 0x00, 0x91, 0xc1, 0x00, 0x00, 0x91, 0xc1, 0x00, 0x00, + 0x91, 0xc1, 0x00, 0x00, 0x91, 0xc1, 0x00, 0x00, 0x91, 0xc1, 0x00, 0x00, + 0x91, 0xc1, 0x00, 0x00, 0x91, 0xc1, 0x00, 0x00, 0x91, 0xc1, 0x00, 0x00, + 0x91, 0xc1, 0x00, 0x00, 0x91, 0xc1, 0x00, 0x00, 0x00, 0x48, 0x00, 0x47, + 0xcd, 0xc2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xd1, 0x1e, 0x80, 0x00, 0xb5, 0x22, 0x80, 0x00, + 0xbd, 0x24, 0x80, 0x00, 0x49, 0x1f, 0x80, 0x00, 0xf9, 0x21, 0x80, 0x00, + 0xe5, 0xf7, 0x00, 0x00, 0xf1, 0x20, 0x80, 0x00, 0xd1, 0x20, 0x80, 0x00, + 0x59, 0x48, 0x80, 0x00, 0x69, 0x48, 0x80, 0x00, 0x15, 0x64, 0x80, 0x00, + 0xe1, 0x62, 0x80, 0x00, 0x29, 0x62, 0x80, 0x00, 0x3d, 0x65, 0x80, 0x00, + 0x8d, 0x62, 0x80, 0x00, 0xc5, 0x62, 0x80, 0x00, 0x59, 0x63, 0x80, 0x00, + 0x5d, 0x65, 0x80, 0x00, 0x7d, 0x63, 0x80, 0x00, 0x9d, 0x63, 0x80, 0x00, + 0x0d, 0x66, 0x80, 0x00, 0xa9, 0x61, 0x80, 0x00, 0x61, 0x61, 0x80, 0x00, + 0x75, 0x60, 0x80, 0x00, 0x95, 0x60, 0x80, 0x00, 0xdd, 0x63, 0x80, 0x00, + 0x9d, 0x65, 0x80, 0x00, 0x29, 0x66, 0x80, 0x00, 0xfd, 0x61, 0x80, 0x00, + 0xb9, 0x65, 0x80, 0x00, 0x1d, 0x61, 0x80, 0x00, 0xf1, 0x65, 0x80, 0x00, + 0x9d, 0x66, 0x80, 0x00, 0x6d, 0x65, 0x80, 0x00, 0x91, 0x6c, 0x80, 0x00, + 0xcd, 0x6b, 0x80, 0x00, 0x31, 0x6c, 0x80, 0x00, 0x8d, 0x6b, 0x80, 0x00, + 0x55, 0x6c, 0x80, 0x00, 0xad, 0x6a, 0x80, 0x00, 0xc1, 0x6a, 0x80, 0x00, + 0xd5, 0x6a, 0x80, 0x00, 0x49, 0x6b, 0x80, 0x00, 0x1d, 0x6a, 0x80, 0x00, + 0xfd, 0x6a, 0x80, 0x00, 0xad, 0x68, 0x80, 0x00, 0xc1, 0x69, 0x80, 0x00, + 0xd1, 0x68, 0x80, 0x00, 0x35, 0x6b, 0x80, 0x00, 0xb1, 0x69, 0x80, 0x00, + 0xa1, 0xc9, 0x00, 0x00, 0xd1, 0x66, 0x80, 0x00, 0xe1, 0x67, 0x80, 0x00, + 0x8d, 0x67, 0x80, 0x00, 0xcd, 0x67, 0x80, 0x00, 0x9d, 0x68, 0x80, 0x00, + 0xed, 0x67, 0x80, 0x00, 0xbd, 0x67, 0x80, 0x00, 0xa1, 0x67, 0x80, 0x00, + 0xed, 0x66, 0x80, 0x00, 0x09, 0x67, 0x80, 0x00, 0x61, 0x67, 0x80, 0x00, + 0x4d, 0x48, 0x80, 0x00, 0x1d, 0x48, 0x80, 0x00, 0x85, 0x98, 0x80, 0x00, + 0xdd, 0x96, 0x80, 0x00, 0x51, 0x94, 0x80, 0x00, 0xb1, 0x9b, 0x80, 0x00, + 0x39, 0x94, 0x80, 0x00, 0x05, 0x98, 0x80, 0x00, 0x19, 0x98, 0x80, 0x00, + 0x2d, 0x98, 0x80, 0x00, 0xc5, 0x9b, 0x80, 0x00, 0xd1, 0x9a, 0x80, 0x00, + 0x89, 0x9d, 0x80, 0x00, 0xd1, 0x93, 0x80, 0x00, 0xd9, 0x91, 0x80, 0x00, + 0xed, 0x9a, 0x80, 0x00, 0x01, 0x29, 0x00, 0x00, 0x79, 0xf7, 0x00, 0x00, + 0x51, 0x29, 0x00, 0x00, 0x55, 0xf7, 0x00, 0x00, 0x51, 0x9b, 0x80, 0x00, + 0x79, 0x29, 0x00, 0x00, 0x49, 0xa9, 0x80, 0x00, 0x99, 0x98, 0x80, 0x00, + 0xb1, 0x29, 0x00, 0x00, 0x31, 0xa8, 0x80, 0x00, 0x05, 0xa7, 0x80, 0x00, + 0x21, 0xa2, 0x80, 0x00, 0xbd, 0x93, 0x80, 0x00, 0xdd, 0x93, 0x80, 0x00, + 0x19, 0x9e, 0x80, 0x00, 0x7d, 0x93, 0x80, 0x00, 0x45, 0x98, 0x80, 0x00, + 0xe5, 0x9b, 0x80, 0x00, 0x6d, 0xa6, 0x80, 0x00, 0xc1, 0x9c, 0x80, 0x00, + 0xc5, 0x9f, 0x80, 0x00, 0xa1, 0x9d, 0x80, 0x00, 0xad, 0x2a, 0x00, 0x00, + 0xa1, 0xf7, 0x00, 0x00, 0xb5, 0xf7, 0x00, 0x00, 0x29, 0xaa, 0x80, 0x00, + 0xb9, 0xa9, 0x80, 0x00, 0x75, 0xaa, 0x80, 0x00, 0xe1, 0xa9, 0x80, 0x00, + 0x39, 0xaa, 0x80, 0x00, 0x8d, 0xaa, 0x80, 0x00, 0x5d, 0xaa, 0x80, 0x00, + 0x0d, 0xaa, 0x80, 0x00, 0xc5, 0xa9, 0x80, 0x00, 0x9d, 0xa9, 0x80, 0x00, + 0xa9, 0x0c, 0x80, 0x00, 0x85, 0x0d, 0x80, 0x00, 0xc1, 0x06, 0x80, 0x00, + 0x29, 0x08, 0x80, 0x00, 0x69, 0x46, 0x80, 0x00, 0x4d, 0x46, 0x80, 0x00, + 0xd9, 0x44, 0x80, 0x00, 0x41, 0x46, 0x80, 0x00, 0x21, 0x44, 0x80, 0x00, + 0xf5, 0x43, 0x80, 0x00, 0x15, 0x44, 0x80, 0x00, 0xe1, 0x43, 0x80, 0x00, + 0xe1, 0x42, 0x80, 0x00, 0x85, 0x46, 0x80, 0x00, 0x75, 0x44, 0x80, 0x00, + 0x2d, 0x44, 0x80, 0x00, 0xa9, 0x42, 0x80, 0x00, 0xf9, 0x42, 0x80, 0x00, + 0xcd, 0x43, 0x80, 0x00, 0xb9, 0x45, 0x80, 0x00, 0xf5, 0x44, 0x80, 0x00, + 0x39, 0x45, 0x80, 0x00, 0x09, 0x00, 0x80, 0x00, 0x3d, 0x00, 0x80, 0x00, + 0x49, 0x01, 0x80, 0x00, 0xd1, 0x04, 0x80, 0x00, 0x0d, 0x04, 0x80, 0x00, + 0x91, 0x03, 0x80, 0x00, 0x4d, 0x03, 0x80, 0x00, 0xe5, 0x03, 0x80, 0x00, + 0x35, 0x03, 0x80, 0x00, 0x65, 0x03, 0x80, 0x00, 0x29, 0x02, 0x80, 0x00, + 0xcd, 0x02, 0x80, 0x00, 0x51, 0x02, 0x80, 0x00, 0x85, 0x02, 0x80, 0x00, + 0xf5, 0x02, 0x80, 0x00, 0x95, 0x06, 0x80, 0x00, 0x39, 0x06, 0x80, 0x00, + 0x81, 0x05, 0x80, 0x00, 0x05, 0x06, 0x80, 0x00, 0xfd, 0x04, 0x80, 0x00, + 0x69, 0x0f, 0x80, 0x00, 0x25, 0x16, 0x80, 0x00, 0x15, 0x16, 0x80, 0x00, + 0x45, 0x13, 0x80, 0x00, 0x15, 0x13, 0x80, 0x00, 0x25, 0x13, 0x80, 0x00, + 0x09, 0x13, 0x80, 0x00, 0x35, 0x13, 0x80, 0x00, 0x0d, 0x1e, 0x80, 0x00, + 0xf9, 0x1d, 0x80, 0x00, 0x29, 0x1d, 0x80, 0x00, 0x1d, 0x1c, 0x80, 0x00, + 0x39, 0x1c, 0x80, 0x00, 0x31, 0x16, 0x80, 0x00, 0x59, 0x13, 0x80, 0x00, + 0x65, 0x0e, 0x80, 0x00, 0x95, 0x13, 0x80, 0x00, 0xb9, 0x1c, 0x80, 0x00, + 0x73, 0x28, 0x00, 0x00, 0x7d, 0x0c, 0x02, 0x00, 0x75, 0x1d, 0x80, 0x00, + 0xbd, 0x04, 0x01, 0x00, 0x3d, 0x1d, 0x80, 0x00, 0x0d, 0x1b, 0x80, 0x00, + 0xe9, 0x10, 0x80, 0x00, 0x79, 0x0f, 0x80, 0x00, 0xa9, 0x16, 0x80, 0x00, + 0x31, 0x14, 0x80, 0x00, 0x2d, 0x11, 0x80, 0x00, 0xa5, 0x1e, 0x80, 0x00, + 0xb1, 0x1e, 0x80, 0x00, 0xbd, 0x1e, 0x80, 0x00, 0x69, 0x2b, 0x80, 0x00, + 0xad, 0x28, 0x80, 0x00, 0x11, 0x29, 0x80, 0x00, 0x89, 0x2b, 0x80, 0x00, + 0xfd, 0x2b, 0x80, 0x00, 0xe1, 0x28, 0x80, 0x00, 0x65, 0x28, 0x80, 0x00, + 0xb5, 0x2c, 0x80, 0x00, 0x91, 0x2c, 0x80, 0x00, 0x1d, 0x2b, 0x80, 0x00, + 0x75, 0x2d, 0x80, 0x00, 0x25, 0x2c, 0x80, 0x00, 0x4d, 0x30, 0x80, 0x00, + 0xdd, 0x2d, 0x80, 0x00, 0x59, 0x27, 0x80, 0x00, 0x31, 0x31, 0x80, 0x00, + 0x01, 0xf7, 0x00, 0x00, 0x8d, 0x26, 0x80, 0x00, 0xc5, 0x26, 0x80, 0x00, + 0xe5, 0x24, 0x80, 0x00, 0xfd, 0x26, 0x80, 0x00, 0x21, 0x25, 0x80, 0x00, + 0xb1, 0x2a, 0x80, 0x00, 0x65, 0x25, 0x80, 0x00, 0x25, 0x28, 0x80, 0x00, + 0x61, 0x29, 0x80, 0x00, 0x41, 0x29, 0x80, 0x00, 0xd9, 0x29, 0x80, 0x00, + 0x9d, 0x29, 0x80, 0x00, 0x81, 0x29, 0x80, 0x00, 0x89, 0x30, 0x80, 0x00, + 0x4d, 0x2e, 0x80, 0x00, 0xb1, 0x2b, 0x80, 0x00, 0x31, 0x2c, 0x80, 0x00, + 0xe1, 0x2c, 0x80, 0x00, 0x61, 0x32, 0x80, 0x00, 0x2d, 0x32, 0x80, 0x00, + 0xc9, 0x33, 0x80, 0x00, 0x4d, 0x36, 0x80, 0x00, 0x69, 0x3a, 0x80, 0x00, + 0xb5, 0x35, 0x80, 0x00, 0xf9, 0x34, 0x80, 0x00, 0xa9, 0x34, 0x80, 0x00, + 0x3d, 0x33, 0x80, 0x00, 0x9d, 0x33, 0x80, 0x00, 0x01, 0x34, 0x80, 0x00, + 0x35, 0x36, 0x80, 0x00, 0x31, 0x38, 0x80, 0x00, 0x35, 0x3a, 0x80, 0x00, + 0x21, 0x3a, 0x80, 0x00, 0xad, 0x32, 0x80, 0x00, 0x0d, 0x33, 0x80, 0x00, + 0xdd, 0x32, 0x80, 0x00, 0x95, 0x3a, 0x80, 0x00, 0xd9, 0x37, 0x80, 0x00, + 0x99, 0x36, 0x80, 0x00, 0x19, 0x37, 0x80, 0x00, 0x59, 0x38, 0x80, 0x00, + 0x49, 0x38, 0x80, 0x00, 0x19, 0x39, 0x80, 0x00, 0x31, 0x3d, 0x80, 0x00, + 0xd5, 0x3a, 0x80, 0x00, 0xc9, 0x3c, 0x80, 0x00, 0xe1, 0x3b, 0x80, 0x00, + 0x51, 0x3d, 0x80, 0x00, 0xd9, 0x3d, 0x80, 0x00, 0xad, 0x3e, 0x80, 0x00, + 0x59, 0x3f, 0x80, 0x00, 0x99, 0x41, 0x80, 0x00, 0x41, 0x47, 0x80, 0x00, + 0xcd, 0x5b, 0x80, 0x00, 0x89, 0x53, 0x80, 0x00, 0x2d, 0x4d, 0x80, 0x00, + 0xa9, 0x4c, 0x80, 0x00, 0xe1, 0x4d, 0x80, 0x00, 0xe9, 0x4f, 0x80, 0x00, + 0xb1, 0x4f, 0x80, 0x00, 0xc9, 0x4e, 0x80, 0x00, 0x8d, 0x4e, 0x80, 0x00, + 0xf1, 0x51, 0x80, 0x00, 0x5d, 0x52, 0x80, 0x00, 0xd1, 0x51, 0x80, 0x00, + 0x2d, 0x52, 0x80, 0x00, 0x01, 0x52, 0x80, 0x00, 0xc9, 0x4f, 0x80, 0x00, + 0x59, 0x4c, 0x80, 0x00, 0x6d, 0x4c, 0x80, 0x00, 0x45, 0x5b, 0x80, 0x00, + 0x39, 0x56, 0x80, 0x00, 0x15, 0x5a, 0x80, 0x00, 0xc9, 0x58, 0x80, 0x00, + 0x31, 0x5a, 0x80, 0x00, 0x81, 0x57, 0x80, 0x00, 0xf9, 0x59, 0x80, 0x00, + 0x1d, 0x56, 0x80, 0x00, 0xad, 0x55, 0x80, 0x00, 0x91, 0x55, 0x80, 0x00, + 0x4d, 0x5a, 0x80, 0x00, 0x2d, 0x55, 0x80, 0x00, 0x71, 0x4b, 0x80, 0x00, + 0x71, 0x54, 0x80, 0x00, 0x09, 0x54, 0x80, 0x00, 0xf5, 0x4d, 0x80, 0x00, + 0x1d, 0x4c, 0x80, 0x00, 0xf9, 0x4b, 0x80, 0x00, 0x09, 0x4c, 0x80, 0x00, + 0x11, 0x4e, 0x80, 0x00, 0x15, 0x58, 0x80, 0x00, 0x0d, 0x03, 0x01, 0x00, + 0x2d, 0x50, 0x80, 0x00, 0xe5, 0x58, 0x80, 0x00, 0x55, 0x56, 0x80, 0x00, + 0x7d, 0x5a, 0x80, 0x00, 0x05, 0x4f, 0x80, 0x00, 0x35, 0x4e, 0x80, 0x00, + 0xd9, 0x55, 0x80, 0x00, 0x51, 0x58, 0x80, 0x00, 0x9d, 0x57, 0x80, 0x00, + 0x59, 0x51, 0x80, 0x00, 0x61, 0x4d, 0x80, 0x00, 0xb1, 0x48, 0x80, 0x00, + 0x5d, 0x5b, 0x80, 0x00, 0x81, 0x52, 0x80, 0x00, 0x49, 0x4c, 0x80, 0x00, + 0x51, 0xfe, 0x00, 0x00, 0xf1, 0x5b, 0x80, 0x00, 0xe5, 0x5c, 0x80, 0x00, + 0xe1, 0x5f, 0x80, 0x00, 0xa5, 0x5e, 0x80, 0x00, 0x7d, 0x5e, 0x80, 0x00, + 0x8d, 0x5c, 0x80, 0x00, 0x01, 0x5c, 0x80, 0x00, 0xa1, 0x5f, 0x80, 0x00, + 0x89, 0x5d, 0x80, 0x00, 0x05, 0x60, 0x80, 0x00, 0x39, 0x5d, 0x80, 0x00, + 0xd1, 0x5e, 0x80, 0x00, 0x49, 0x5e, 0x80, 0x00, 0xed, 0x6c, 0x80, 0x00, + 0x65, 0x6d, 0x80, 0x00, 0xdd, 0x6d, 0x80, 0x00, 0x0d, 0x6d, 0x80, 0x00, + 0x29, 0x6d, 0x80, 0x00, 0x89, 0x6d, 0x80, 0x00, 0xf9, 0x6c, 0x80, 0x00, + 0xd9, 0x6c, 0x80, 0x00, 0x3d, 0x6e, 0x80, 0x00, 0x61, 0x6f, 0x80, 0x00, + 0x75, 0x6e, 0x80, 0x00, 0x05, 0x6e, 0x80, 0x00, 0xa9, 0x74, 0x80, 0x00, + 0x55, 0x75, 0x80, 0x00, 0xd5, 0x74, 0x80, 0x00, 0x05, 0x74, 0x80, 0x00, + 0xd1, 0x7c, 0x80, 0x00, 0x45, 0x7d, 0x80, 0x00, 0x75, 0x7c, 0x80, 0x00, + 0x11, 0x7e, 0x80, 0x00, 0x89, 0x7e, 0x80, 0x00, 0xe9, 0x7e, 0x80, 0x00, + 0x91, 0x7d, 0x80, 0x00, 0x3d, 0x7e, 0x80, 0x00, 0x51, 0x7f, 0x80, 0x00, + 0xa5, 0x81, 0x80, 0x00, 0x65, 0x84, 0x80, 0x00, 0x41, 0x84, 0x80, 0x00, + 0x8d, 0x83, 0x80, 0x00, 0x65, 0x83, 0x80, 0x00, 0x35, 0x85, 0x80, 0x00, + 0xe5, 0x84, 0x80, 0x00, 0x9d, 0x84, 0x80, 0x00, 0x21, 0x85, 0x80, 0x00, + 0x75, 0x84, 0x80, 0x00, 0xbd, 0x83, 0x80, 0x00, 0x5d, 0x85, 0x80, 0x00, + 0xbd, 0x85, 0x80, 0x00, 0x15, 0x8f, 0x80, 0x00, 0x91, 0x8d, 0x80, 0x00, + 0xd5, 0x89, 0x80, 0x00, 0x19, 0x86, 0x80, 0x00, 0x19, 0xab, 0x80, 0x00, + 0x5d, 0xac, 0x80, 0x00, 0xa1, 0xaa, 0x80, 0x00, 0xb5, 0xab, 0x80, 0x00, + 0x5d, 0xab, 0x80, 0x00, 0xfd, 0xb0, 0x80, 0x00, 0x7d, 0xb1, 0x80, 0x00, + 0x65, 0xb0, 0x80, 0x00, 0x6d, 0xae, 0x80, 0x00, 0x85, 0xae, 0x80, 0x00, + 0xed, 0xad, 0x80, 0x00, 0x41, 0xaf, 0x80, 0x00, 0x1d, 0xae, 0x80, 0x00, + 0x31, 0xb1, 0x80, 0x00, 0x3d, 0xb1, 0x80, 0x00, 0xb9, 0xae, 0x80, 0x00, + 0xf5, 0xb1, 0x80, 0x00, 0x79, 0xb0, 0x80, 0x00, 0xfd, 0xad, 0x80, 0x00, + 0x09, 0xb1, 0x80, 0x00, 0x8d, 0xb0, 0x80, 0x00, 0x49, 0xb1, 0x80, 0x00, + 0x69, 0xb1, 0x80, 0x00, 0x4d, 0xae, 0x80, 0x00, 0x3d, 0xae, 0x80, 0x00, + 0x95, 0xae, 0x80, 0x00, 0x29, 0xb3, 0x80, 0x00, 0xc9, 0xae, 0x80, 0x00, + 0xcd, 0xaf, 0x80, 0x00, 0xe5, 0xaf, 0x80, 0x00, 0x25, 0xb0, 0x80, 0x00, + 0x8d, 0xaf, 0x80, 0x00, 0xb5, 0xb2, 0x80, 0x00, 0xfd, 0xb2, 0x80, 0x00, + 0x19, 0xb3, 0x80, 0x00, 0xed, 0xb0, 0x80, 0x00, 0x5d, 0xae, 0x80, 0x00, + 0x2d, 0xae, 0x80, 0x00, 0x29, 0xb2, 0x80, 0x00, 0xa9, 0xb0, 0x80, 0x00, + 0xa1, 0xb1, 0x80, 0x00, 0x05, 0xb2, 0x80, 0x00, 0x39, 0xb2, 0x80, 0x00, + 0xa9, 0xae, 0x80, 0x00, 0x7d, 0xaf, 0x80, 0x00, 0xad, 0xb3, 0x80, 0x00, + 0xa9, 0xbd, 0x80, 0x00, 0x9d, 0xc1, 0x80, 0x00, 0x25, 0xc7, 0x80, 0x00, + 0xdd, 0xc8, 0x80, 0x00, 0x65, 0xca, 0x80, 0x00, 0xe1, 0xcb, 0x80, 0x00, + 0xdd, 0xce, 0x80, 0x00, 0x19, 0xce, 0x80, 0x00, 0x99, 0xce, 0x80, 0x00, + 0x15, 0xcf, 0x80, 0x00, 0xc1, 0x2d, 0x00, 0x00, 0x0d, 0xd8, 0x80, 0x00, + 0xdd, 0xd7, 0x80, 0x00, 0x91, 0xd7, 0x80, 0x00, 0x2d, 0x04, 0x01, 0x00, + 0xb1, 0x2c, 0x00, 0x00, 0x69, 0xd8, 0x80, 0x00, 0x7d, 0xcf, 0x80, 0x00, + 0x45, 0xd9, 0x80, 0x00, 0xf5, 0x03, 0x01, 0x00, 0x99, 0xd1, 0x80, 0x00, + 0x49, 0x03, 0x01, 0x00, 0xf9, 0xe0, 0x80, 0x00, 0x71, 0xf5, 0x80, 0x00, + 0xab, 0x2f, 0x00, 0x00, 0xd1, 0xde, 0x80, 0x00, 0x33, 0xf1, 0x00, 0x00, + 0x09, 0xea, 0x80, 0x00, 0xa1, 0xe4, 0x80, 0x00, 0xf1, 0xf1, 0x00, 0x00, + 0xe1, 0xec, 0x80, 0x00, 0x11, 0xe3, 0x80, 0x00, 0x39, 0xea, 0x80, 0x00, + 0x39, 0xe3, 0x80, 0x00, 0x99, 0xe3, 0x80, 0x00, 0x29, 0xdf, 0x80, 0x00, + 0xeb, 0xf0, 0x00, 0x00, 0x99, 0xf0, 0x00, 0x00, 0x29, 0xf0, 0x00, 0x00, + 0x5d, 0xef, 0x00, 0x00, 0x27, 0xef, 0x00, 0x00, 0xbd, 0xeb, 0x80, 0x00, + 0xb9, 0x2e, 0x00, 0x00, 0x31, 0x2f, 0x00, 0x00, 0x45, 0xf0, 0x00, 0x00, + 0x93, 0xef, 0x00, 0x00, 0xff, 0xf0, 0x00, 0x00, 0xe1, 0xe1, 0x80, 0x00, + 0xa9, 0xe9, 0x80, 0x00, 0x69, 0xf1, 0x00, 0x00, 0x75, 0xf1, 0x00, 0x00, + 0xed, 0xf5, 0x80, 0x00, 0xd9, 0x00, 0x81, 0x00, 0x9d, 0xf6, 0x80, 0x00, + 0xc5, 0xf7, 0x80, 0x00, 0x85, 0xff, 0x80, 0x00, 0x45, 0x01, 0x81, 0x00, + 0xd5, 0x02, 0x81, 0x00, 0x4d, 0x03, 0x81, 0x00, 0xe5, 0x00, 0x81, 0x00, + 0x7d, 0xf6, 0x80, 0x00, 0x81, 0xf7, 0x80, 0x00, 0xd5, 0xf5, 0x80, 0x00, + 0x51, 0xf9, 0x80, 0x00, 0x31, 0xfb, 0x80, 0x00, 0xf1, 0xf6, 0x80, 0x00, + 0xf9, 0xf5, 0x80, 0x00, 0x41, 0xff, 0x80, 0x00, 0xd9, 0xf9, 0x80, 0x00, + 0xdd, 0xfc, 0x80, 0x00, 0xa9, 0xf7, 0x80, 0x00, 0xc9, 0x2f, 0x00, 0x00, + 0x59, 0xfb, 0x80, 0x00, 0x8d, 0xf7, 0x80, 0x00, 0xa5, 0xf9, 0x80, 0x00, + 0x9d, 0x04, 0x01, 0x00, 0x29, 0xf6, 0x80, 0x00, 0xa1, 0xf8, 0x80, 0x00, + 0x5d, 0xf7, 0x80, 0x00, 0x65, 0xf6, 0x80, 0x00, 0x95, 0xfd, 0x80, 0x00, + 0x09, 0x31, 0x00, 0x00, 0xf5, 0x02, 0x81, 0x00, 0x2d, 0x02, 0x81, 0x00, + 0x89, 0x01, 0x81, 0x00, 0x05, 0x01, 0x81, 0x00, 0x21, 0x32, 0x00, 0x00, + 0x99, 0xff, 0x80, 0x00, 0x19, 0xf7, 0x80, 0x00, 0x89, 0xf6, 0x80, 0x00, + 0xc1, 0xf6, 0x80, 0x00, 0x79, 0x04, 0x01, 0x00, 0x85, 0xf5, 0x80, 0x00, + 0x05, 0xf7, 0x80, 0x00, 0xdd, 0xf6, 0x80, 0x00, 0xb1, 0xf6, 0x80, 0x00, + 0xad, 0x6a, 0x81, 0x00, 0xbd, 0x6a, 0x81, 0x00, 0xdd, 0x2f, 0x81, 0x00, + 0xe1, 0x57, 0x81, 0x00, 0xf5, 0x6d, 0x82, 0x00, 0xa9, 0x8d, 0x82, 0x00, + 0x09, 0x25, 0x82, 0x00, 0x19, 0x6e, 0x82, 0x00, 0x01, 0xaa, 0x81, 0x00, + 0x5d, 0x60, 0x82, 0x00, 0xa5, 0x37, 0x82, 0x00, 0xed, 0x69, 0x81, 0x00, + 0x79, 0x59, 0x82, 0x00, 0xe5, 0x58, 0x82, 0x00, 0x1d, 0x59, 0x82, 0x00, + 0xfd, 0x6d, 0x81, 0x00, 0x49, 0x3a, 0x81, 0x00, 0x41, 0xbc, 0x82, 0x00, + 0xe9, 0x5a, 0x82, 0x00, 0xcd, 0x60, 0x81, 0x00, 0xd5, 0x96, 0x81, 0x00, + 0x1d, 0x61, 0x81, 0x00, 0x29, 0x61, 0x81, 0x00, 0x89, 0xbf, 0x81, 0x00, + 0x1d, 0xab, 0x81, 0x00, 0xa9, 0x32, 0x82, 0x00, 0x67, 0x36, 0x00, 0x00, + 0x25, 0x69, 0x81, 0x00, 0x05, 0xa6, 0x81, 0x00, 0x21, 0xad, 0x82, 0x00, + 0x29, 0x58, 0x81, 0x00, 0xbd, 0x3e, 0x81, 0x00, 0xa5, 0x40, 0x81, 0x00, + 0x35, 0x95, 0x81, 0x00, 0x59, 0x9b, 0x81, 0x00, 0x3d, 0x36, 0x82, 0x00, + 0x1d, 0x45, 0x82, 0x00, 0x09, 0x28, 0x81, 0x00, 0x99, 0xa0, 0x81, 0x00, + 0xd1, 0x28, 0x81, 0x00, 0xe9, 0x3b, 0x81, 0x00, 0x8d, 0x28, 0x81, 0x00, + 0x41, 0x6e, 0x82, 0x00, 0x85, 0x9b, 0x81, 0x00, 0x29, 0x5d, 0x81, 0x00, + 0x6d, 0x39, 0x82, 0x00, 0xfd, 0x39, 0x82, 0x00, 0x25, 0x3a, 0x82, 0x00, + 0x95, 0x69, 0x81, 0x00, 0xc9, 0x7a, 0x81, 0x00, 0x91, 0x57, 0x81, 0x00, + 0x5d, 0x57, 0x81, 0x00, 0x75, 0x30, 0x82, 0x00, 0x85, 0x2f, 0x82, 0x00, + 0x35, 0x57, 0x81, 0x00, 0xd1, 0x2f, 0x82, 0x00, 0x21, 0x57, 0x81, 0x00, + 0x49, 0x57, 0x81, 0x00, 0xf5, 0x28, 0x81, 0x00, 0x95, 0xa8, 0x82, 0x00, + 0x2d, 0xa2, 0x82, 0x00, 0x89, 0xd3, 0x81, 0x00, 0xd5, 0x6b, 0x81, 0x00, + 0x59, 0x59, 0x81, 0x00, 0x75, 0x59, 0x81, 0x00, 0xf5, 0x5a, 0x82, 0x00, + 0x05, 0xad, 0x81, 0x00, 0xf1, 0xd2, 0x81, 0x00, 0x39, 0x37, 0x81, 0x00, + 0xed, 0x71, 0x81, 0x00, 0xc5, 0x96, 0x81, 0x00, 0x89, 0x57, 0x82, 0x00, + 0x91, 0x61, 0x82, 0x00, 0xcd, 0x61, 0x82, 0x00, 0xa9, 0x58, 0x81, 0x00, + 0x1d, 0x27, 0x82, 0x00, 0x45, 0x43, 0x82, 0x00, 0x01, 0x44, 0x82, 0x00, + 0x15, 0x6a, 0x81, 0x00, 0x61, 0x4a, 0x81, 0x00, 0xed, 0x4e, 0x81, 0x00, + 0x71, 0x22, 0x82, 0x00, 0x05, 0x5a, 0x81, 0x00, 0x4d, 0x8a, 0x81, 0x00, + 0x75, 0x49, 0x81, 0x00, 0x71, 0x24, 0x82, 0x00, 0xb1, 0x49, 0x81, 0x00, + 0xb1, 0x44, 0x81, 0x00, 0x75, 0xac, 0x82, 0x00, 0x29, 0x2b, 0x82, 0x00, + 0x59, 0x52, 0x81, 0x00, 0xe1, 0x2a, 0x82, 0x00, 0xb5, 0x29, 0x82, 0x00, + 0x71, 0xa7, 0x81, 0x00, 0x35, 0xa7, 0x81, 0x00, 0x01, 0xd4, 0x81, 0x00, + 0xf5, 0xbe, 0x81, 0x00, 0x55, 0xb4, 0x81, 0x00, 0xd1, 0x6a, 0x82, 0x00, + 0xd1, 0x9c, 0x81, 0x00, 0x9d, 0x9c, 0x81, 0x00, 0x95, 0x9b, 0x81, 0x00, + 0xb5, 0x9d, 0x81, 0x00, 0x45, 0x9d, 0x81, 0x00, 0xc5, 0x9d, 0x81, 0x00, + 0x61, 0x70, 0x82, 0x00, 0x09, 0x35, 0x81, 0x00, 0xa1, 0xab, 0x82, 0x00, + 0x8d, 0xab, 0x82, 0x00, 0x75, 0xab, 0x82, 0x00, 0xf1, 0x93, 0x81, 0x00, + 0x99, 0x68, 0x81, 0x00, 0x15, 0xd7, 0x81, 0x00, 0x71, 0xc1, 0x82, 0x00, + 0x7d, 0x2b, 0x81, 0x00, 0xe9, 0x2f, 0x81, 0x00, 0x0d, 0xb6, 0x81, 0x00, + 0x25, 0xbd, 0x82, 0x00, 0x8d, 0x4f, 0x81, 0x00, 0x0d, 0x50, 0x81, 0x00, + 0x85, 0x43, 0x82, 0x00, 0x31, 0xd7, 0x81, 0x00, 0xb1, 0xbd, 0x82, 0x00, + 0x95, 0xc1, 0x82, 0x00, 0x5d, 0xb3, 0x82, 0x00, 0x5f, 0x08, 0x01, 0x00, + 0x8d, 0xd1, 0x81, 0x00, 0xa9, 0x36, 0x81, 0x00, 0xe9, 0xbc, 0x82, 0x00, + 0x29, 0x37, 0x81, 0x00, 0xe9, 0x36, 0x81, 0x00, 0xa1, 0xd6, 0x81, 0x00, + 0xa5, 0x3b, 0x81, 0x00, 0x6d, 0xab, 0x81, 0x00, 0x41, 0xb0, 0x81, 0x00, + 0xd9, 0xf2, 0x00, 0x00, 0x8f, 0xf2, 0x00, 0x00, 0x41, 0xbd, 0x82, 0x00, + 0x95, 0xbe, 0x82, 0x00, 0xcd, 0x2e, 0x82, 0x00, 0x9d, 0x6b, 0x81, 0x00, + 0xcd, 0x45, 0x82, 0x00, 0x45, 0x39, 0x81, 0x00, 0x35, 0x3b, 0x81, 0x00, + 0xbd, 0x3a, 0x81, 0x00, 0xf1, 0xd5, 0x81, 0x00, 0x41, 0x9f, 0x81, 0x00, + 0x11, 0x9f, 0x81, 0x00, 0x71, 0xa4, 0x82, 0x00, 0xad, 0xd5, 0x81, 0x00, + 0xc1, 0x30, 0x81, 0x00, 0xa1, 0x39, 0x82, 0x00, 0x4d, 0x61, 0x81, 0x00, + 0x99, 0x5b, 0x81, 0x00, 0xa5, 0x72, 0x81, 0x00, 0x89, 0xda, 0x81, 0x00, + 0x61, 0xbf, 0x81, 0x00, 0x61, 0x57, 0x82, 0x00, 0x81, 0x21, 0x82, 0x00, + 0xa9, 0x21, 0x82, 0x00, 0xd1, 0xad, 0x82, 0x00, 0x09, 0xbc, 0x82, 0x00, + 0xb5, 0xa1, 0x81, 0x00, 0x9d, 0xca, 0x81, 0x00, 0xb9, 0x2f, 0x82, 0x00, + 0xd9, 0xbb, 0x82, 0x00, 0x11, 0x30, 0x82, 0x00, 0x7d, 0xad, 0x82, 0x00, + 0xcd, 0xa4, 0x81, 0x00, 0x99, 0xa4, 0x81, 0x00, 0xcd, 0xab, 0x82, 0x00, + 0x15, 0xab, 0x82, 0x00, 0xc1, 0xaa, 0x82, 0x00, 0xb9, 0x98, 0x81, 0x00, + 0x81, 0xa5, 0x81, 0x00, 0xd9, 0xd0, 0x81, 0x00, 0xa9, 0xcf, 0x81, 0x00, + 0xe9, 0x3b, 0x82, 0x00, 0xed, 0xcf, 0x81, 0x00, 0x65, 0xd1, 0x81, 0x00, + 0x79, 0xd1, 0x81, 0x00, 0x51, 0xd0, 0x81, 0x00, 0x65, 0xd0, 0x81, 0x00, + 0xe5, 0x21, 0x82, 0x00, 0x11, 0x22, 0x82, 0x00, 0xbb, 0x52, 0x00, 0x00, + 0x19, 0x53, 0x00, 0x00, 0xfd, 0x9c, 0x81, 0x00, 0x91, 0x45, 0x82, 0x00, + 0x55, 0xae, 0x82, 0x00, 0x41, 0xb4, 0x81, 0x00, 0x95, 0xbd, 0x81, 0x00, + 0xf1, 0x8a, 0x82, 0x00, 0x09, 0x8b, 0x82, 0x00, 0x79, 0xd9, 0x81, 0x00, + 0x7d, 0x61, 0x82, 0x00, 0xcd, 0xa4, 0x82, 0x00, 0x41, 0x91, 0x81, 0x00, + 0xa1, 0x3f, 0x82, 0x00, 0x35, 0x94, 0x82, 0x00, 0x49, 0x94, 0x82, 0x00, + 0x89, 0x89, 0x82, 0x00, 0x5d, 0xc1, 0x82, 0x00, 0xf1, 0xc1, 0x82, 0x00, + 0xd1, 0x3b, 0x82, 0x00, 0xd5, 0x95, 0x82, 0x00, 0xe5, 0x60, 0x81, 0x00, + 0x09, 0x20, 0x82, 0x00, 0x39, 0xf7, 0x00, 0x00, 0xbd, 0x3b, 0x82, 0x00, + 0x75, 0xa1, 0x82, 0x00, 0x25, 0xa5, 0x82, 0x00, 0x25, 0x3b, 0x82, 0x00, + 0xe9, 0x3a, 0x82, 0x00, 0x75, 0x3a, 0x82, 0x00, 0xf1, 0x30, 0x82, 0x00, + 0xb1, 0x30, 0x82, 0x00, 0x71, 0xd7, 0x81, 0x00, 0x45, 0x99, 0x82, 0x00, + 0x91, 0xd7, 0x81, 0x00, 0x89, 0x94, 0x82, 0x00, 0xdd, 0xc1, 0x82, 0x00, + 0xa9, 0x6a, 0x82, 0x00, 0x25, 0x6b, 0x82, 0x00, 0xc9, 0x44, 0x81, 0x00, + 0x29, 0x45, 0x81, 0x00, 0x59, 0x6b, 0x81, 0x00, 0x59, 0x49, 0x81, 0x00, + 0xed, 0xaa, 0x81, 0x00, 0x69, 0x61, 0x82, 0x00, 0xad, 0x24, 0x82, 0x00, + 0x05, 0x36, 0x81, 0x00, 0xd5, 0x35, 0x81, 0x00, 0x79, 0xd0, 0x81, 0x00, + 0xa5, 0xd0, 0x81, 0x00, 0x71, 0x5c, 0x81, 0x00, 0xe1, 0xad, 0x81, 0x00, + 0xed, 0xd0, 0x81, 0x00, 0x49, 0xc9, 0x81, 0x00, 0x4d, 0xd8, 0x81, 0x00, + 0x89, 0x3d, 0x82, 0x00, 0x49, 0x20, 0x82, 0x00, 0x65, 0x96, 0x82, 0x00, + 0xf9, 0x25, 0x82, 0x00, 0x89, 0xcf, 0x81, 0x00, 0x85, 0x6a, 0x82, 0x00, + 0x15, 0x93, 0x82, 0x00, 0x2d, 0x5d, 0x82, 0x00, 0xe9, 0xca, 0x81, 0x00, + 0x6d, 0x40, 0x82, 0x00, 0x61, 0x30, 0x82, 0x00, 0x15, 0x48, 0x82, 0x00, + 0x31, 0x3c, 0x81, 0x00, 0x61, 0xd6, 0x81, 0x00, 0x11, 0x4e, 0x81, 0x00, + 0x91, 0x33, 0x00, 0x00, 0x41, 0xa1, 0x81, 0x00, 0x15, 0xa6, 0x81, 0x00, + 0x09, 0x99, 0x82, 0x00, 0xe5, 0xc9, 0x81, 0x00, 0xb1, 0xd7, 0x81, 0x00, + 0x35, 0xc0, 0x82, 0x00, 0x29, 0x4a, 0x81, 0x00, 0x41, 0xad, 0x81, 0x00, + 0xed, 0xbe, 0x82, 0x00, 0x2d, 0xbe, 0x82, 0x00, 0x05, 0xbe, 0x82, 0x00, + 0x79, 0xbe, 0x82, 0x00, 0x55, 0x32, 0x81, 0x00, 0xa5, 0x95, 0x81, 0x00, + 0xb1, 0x59, 0x81, 0x00, 0xe5, 0x47, 0x81, 0x00, 0x91, 0x52, 0x81, 0x00, + 0x15, 0x63, 0x81, 0x00, 0x95, 0x64, 0x81, 0x00, 0x8d, 0x66, 0x81, 0x00, + 0x59, 0x2c, 0x81, 0x00, 0x39, 0x2c, 0x81, 0x00, 0x21, 0x2e, 0x81, 0x00, + 0x65, 0x35, 0x82, 0x00, 0xd5, 0x57, 0x82, 0x00, 0x35, 0x2b, 0x82, 0x00, + 0x99, 0x60, 0x82, 0x00, 0x01, 0x61, 0x82, 0x00, 0x1d, 0x40, 0x82, 0x00, + 0x1d, 0x20, 0x82, 0x00, 0x1d, 0xd8, 0x81, 0x00, 0xa9, 0xac, 0x82, 0x00, + 0xf1, 0xab, 0x82, 0x00, 0xf5, 0x2b, 0x82, 0x00, 0x41, 0xae, 0x82, 0x00, + 0xf9, 0x02, 0x01, 0x00, 0x35, 0x6a, 0x81, 0x00, 0x09, 0xae, 0x82, 0x00, + 0x69, 0x6d, 0x82, 0x00, 0x09, 0x8c, 0x81, 0x00, 0xd5, 0x8b, 0x81, 0x00, + 0x11, 0x6f, 0x81, 0x00, 0x81, 0x90, 0x81, 0x00, 0x29, 0x6c, 0x82, 0x00, + 0xdd, 0xa1, 0x81, 0x00, 0xe9, 0x2b, 0x81, 0x00, 0x55, 0x2f, 0x82, 0x00, + 0x39, 0x8c, 0x81, 0x00, 0xa5, 0x5a, 0x82, 0x00, 0x35, 0x5c, 0x82, 0x00, + 0x45, 0xbb, 0x82, 0x00, 0x91, 0xbe, 0x81, 0x00, 0x2d, 0x6e, 0x81, 0x00, + 0x11, 0x5c, 0x82, 0x00, 0x25, 0x8a, 0x81, 0x00, 0x4d, 0x93, 0x81, 0x00, + 0x89, 0x38, 0x82, 0x00, 0xd5, 0x37, 0x82, 0x00, 0x55, 0x5a, 0x81, 0x00, + 0x01, 0x38, 0x82, 0x00, 0x8d, 0x03, 0x81, 0x00, 0xe9, 0x20, 0x82, 0x00, + 0xe1, 0x3e, 0x82, 0x00, 0x91, 0x45, 0x81, 0x00, 0x2d, 0x6d, 0x81, 0x00, + 0x0d, 0x58, 0x82, 0x00, 0x21, 0x47, 0x82, 0x00, 0xfd, 0xce, 0x81, 0x00, + 0x11, 0xca, 0x81, 0x00, 0x59, 0x36, 0x82, 0x00, 0x9f, 0x4b, 0x00, 0x00, + 0x25, 0xcb, 0x81, 0x00, 0x91, 0x2e, 0x81, 0x00, 0x2d, 0x2f, 0x81, 0x00, + 0xb9, 0x3a, 0x82, 0x00, 0x8d, 0xf2, 0x00, 0x00, 0xdd, 0xa9, 0x81, 0x00, + 0x31, 0xd4, 0x81, 0x00, 0xd1, 0xb3, 0x82, 0x00, 0xad, 0xa9, 0x81, 0x00, + 0xd5, 0x38, 0x82, 0x00, 0x8d, 0xd8, 0x81, 0x00, 0x55, 0x5e, 0x82, 0x00, + 0x71, 0x9a, 0x81, 0x00, 0x15, 0x41, 0x82, 0x00, 0x35, 0xda, 0x81, 0x00, + 0x19, 0x25, 0x82, 0x00, 0x69, 0x26, 0x82, 0x00, 0x35, 0x35, 0x81, 0x00, + 0x41, 0x08, 0x01, 0x00, 0x3d, 0x71, 0x81, 0x00, 0x01, 0x2d, 0x81, 0x00, + 0x09, 0xa2, 0x82, 0x00, 0x0d, 0x23, 0x82, 0x00, 0xfd, 0x71, 0x81, 0x00, + 0xd9, 0x60, 0x82, 0x00, 0x51, 0x72, 0x81, 0x00, 0x41, 0x61, 0x82, 0x00, + 0x45, 0x28, 0x81, 0x00, 0xc1, 0x23, 0x82, 0x00, 0x8d, 0x6c, 0x81, 0x00, + 0x6d, 0x23, 0x82, 0x00, 0x95, 0x47, 0x81, 0x00, 0xb9, 0xd9, 0x81, 0x00, + 0xb5, 0x34, 0x81, 0x00, 0x75, 0xc9, 0x81, 0x00, 0xf1, 0x34, 0x81, 0x00, + 0x2d, 0xbf, 0x81, 0x00, 0x59, 0xaf, 0x82, 0x00, 0xd9, 0x3c, 0x81, 0x00, + 0x49, 0x4f, 0x81, 0x00, 0xe5, 0xab, 0x81, 0x00, 0x35, 0xfd, 0x00, 0x00, + 0x79, 0x31, 0x81, 0x00, 0x05, 0x95, 0x82, 0x00, 0x61, 0x4c, 0x00, 0x00, + 0xdd, 0x93, 0x82, 0x00, 0xa5, 0x66, 0x82, 0x00, 0x0d, 0xc8, 0x81, 0x00, + 0x09, 0x5e, 0x81, 0x00, 0x7d, 0x75, 0x81, 0x00, 0x15, 0x62, 0x81, 0x00, + 0x91, 0x59, 0x81, 0x00, 0x51, 0x4f, 0x00, 0x00, 0x11, 0x49, 0x81, 0x00, + 0xc1, 0x48, 0x81, 0x00, 0xb9, 0xbf, 0x81, 0x00, 0xa5, 0x45, 0x82, 0x00, + 0xf5, 0x59, 0x82, 0x00, 0xf1, 0xa9, 0x82, 0x00, 0x41, 0xa6, 0x82, 0x00, + 0x39, 0x58, 0x82, 0x00, 0xbd, 0x42, 0x82, 0x00, 0xbd, 0xa7, 0x82, 0x00, + 0x4d, 0x22, 0x82, 0x00, 0x71, 0xa7, 0x82, 0x00, 0xa5, 0xa7, 0x82, 0x00, + 0xe1, 0x5c, 0x81, 0x00, 0xed, 0x41, 0x82, 0x00, 0xd1, 0xa7, 0x82, 0x00, + 0xd1, 0x68, 0x81, 0x00, 0xb5, 0xcc, 0x81, 0x00, 0x15, 0xaf, 0x82, 0x00, + 0x95, 0x41, 0x81, 0x00, 0xe1, 0xc8, 0x81, 0x00, 0x89, 0xaa, 0x81, 0x00, + 0xe9, 0x96, 0x81, 0x00, 0x7d, 0x2f, 0x81, 0x00, 0x39, 0x39, 0x00, 0x00, + 0x49, 0x42, 0x82, 0x00, 0x59, 0x44, 0x82, 0x00, 0xfd, 0x07, 0x01, 0x00, + 0x31, 0x31, 0x82, 0x00, 0x61, 0x49, 0x82, 0x00, 0x4d, 0x49, 0x82, 0x00, + 0x0d, 0xa5, 0x81, 0x00, 0x09, 0x5e, 0x82, 0x00, 0x25, 0x3e, 0x82, 0x00, + 0xcd, 0xcd, 0x81, 0x00, 0x29, 0xb3, 0x82, 0x00, 0x21, 0x51, 0x81, 0x00, + 0x45, 0xb1, 0x82, 0x00, 0xa9, 0x1d, 0x82, 0x00, 0x79, 0xbc, 0x82, 0x00, + 0xd1, 0x56, 0x81, 0x00, 0x59, 0x9d, 0x81, 0x00, 0x99, 0x9d, 0x81, 0x00, + 0x19, 0x1c, 0x82, 0x00, 0x51, 0x3f, 0x82, 0x00, 0x1d, 0x30, 0x81, 0x00, + 0xc9, 0xbd, 0x81, 0x00, 0x15, 0x38, 0x81, 0x00, 0x79, 0x4a, 0x81, 0x00, + 0xdd, 0x9b, 0x81, 0x00, 0x19, 0x9e, 0x81, 0x00, 0x69, 0x61, 0x81, 0x00, + 0x89, 0x6e, 0x81, 0x00, 0xb5, 0x70, 0x81, 0x00, 0xd1, 0x32, 0x82, 0x00, + 0xf1, 0x57, 0x81, 0x00, 0xa9, 0x33, 0x82, 0x00, 0x9d, 0x5a, 0x81, 0x00, + 0x3d, 0x35, 0x82, 0x00, 0x89, 0x33, 0x82, 0x00, 0xd9, 0x6e, 0x81, 0x00, + 0x45, 0x70, 0x81, 0x00, 0xfd, 0x61, 0x81, 0x00, 0x59, 0x4b, 0x81, 0x00, + 0x0d, 0x9c, 0x81, 0x00, 0x55, 0x8b, 0x82, 0x00, 0xf1, 0x8e, 0x82, 0x00, + 0xe5, 0x9a, 0x81, 0x00, 0xbd, 0x35, 0x82, 0x00, 0x49, 0x36, 0x81, 0x00, + 0x29, 0x1f, 0x82, 0x00, 0x65, 0x5c, 0x82, 0x00, 0x91, 0xfe, 0x00, 0x00, + 0x51, 0x6f, 0x81, 0x00, 0x29, 0x9b, 0x81, 0x00, 0xa5, 0x6d, 0x81, 0x00, + 0xb5, 0xa2, 0x82, 0x00, 0xe1, 0xaf, 0x82, 0x00, 0xa9, 0x56, 0x82, 0x00, + 0x89, 0x44, 0x81, 0x00, 0x3d, 0x57, 0x82, 0x00, 0xe1, 0x6f, 0x82, 0x00, + 0x01, 0x6f, 0x82, 0x00, 0xdd, 0x72, 0x82, 0x00, 0xe5, 0x3e, 0x81, 0x00, + 0x95, 0x51, 0x81, 0x00, 0xfd, 0xd4, 0x81, 0x00, 0xf5, 0xbc, 0x81, 0x00, + 0x81, 0xb4, 0x81, 0x00, 0xf1, 0x99, 0x81, 0x00, 0x19, 0x31, 0x81, 0x00, + 0x35, 0x8a, 0x82, 0x00, 0xdd, 0xda, 0x81, 0x00, 0x41, 0x3d, 0x81, 0x00, + 0x2d, 0x3e, 0x81, 0x00, 0xe9, 0x89, 0x82, 0x00, 0xc1, 0xd4, 0x81, 0x00, + 0xfd, 0x8d, 0x82, 0x00, 0x99, 0xb6, 0x81, 0x00, 0xbd, 0xa7, 0x81, 0x00, + 0x3d, 0x9f, 0x82, 0x00, 0x5d, 0x03, 0x81, 0x00, 0x6d, 0x92, 0x82, 0x00, + 0x21, 0x8b, 0x82, 0x00, 0x59, 0x9a, 0x81, 0x00, 0xed, 0x27, 0x81, 0x00, + 0xed, 0x94, 0x82, 0x00, 0xfd, 0x8a, 0x81, 0x00, 0x9d, 0x8a, 0x81, 0x00, + 0x41, 0x6b, 0x81, 0x00, 0xe1, 0x6f, 0x81, 0x00, 0x5d, 0x46, 0x82, 0x00, + 0xa1, 0x94, 0x82, 0x00, 0x9d, 0x89, 0x82, 0x00, 0xc9, 0x92, 0x82, 0x00, + 0x79, 0x99, 0x81, 0x00, 0xb1, 0x90, 0x82, 0x00, 0x21, 0x91, 0x82, 0x00, + 0x1d, 0x34, 0x81, 0x00, 0x99, 0xb2, 0x82, 0x00, 0xdd, 0x6a, 0x82, 0x00, + 0x8d, 0xc9, 0x81, 0x00, 0x59, 0x27, 0x82, 0x00, 0xe3, 0x02, 0x01, 0x00, + 0xd9, 0x90, 0x81, 0x00, 0xa5, 0x6b, 0x82, 0x00, 0x6d, 0x3c, 0x82, 0x00, + 0xe5, 0x6d, 0x82, 0x00, 0x05, 0xc2, 0x82, 0x00, 0xc9, 0x6a, 0x81, 0x00, + 0xed, 0x45, 0x82, 0x00, 0x81, 0x6b, 0x81, 0x00, 0x35, 0x3f, 0x82, 0x00, + 0xfd, 0x90, 0x82, 0x00, 0x71, 0xbc, 0x81, 0x00, 0xf1, 0x6b, 0x81, 0x00, + 0x3d, 0x4e, 0x82, 0x00, 0x51, 0x4a, 0x82, 0x00, 0x3d, 0xa2, 0x81, 0x00, + 0x85, 0x06, 0x01, 0x00, 0xd5, 0x54, 0x00, 0x00, 0xb9, 0x7e, 0x82, 0x00, + 0x69, 0x88, 0x82, 0x00, 0x69, 0x5a, 0x82, 0x00, 0xdd, 0x2e, 0x81, 0x00, + 0x15, 0x13, 0x82, 0x00, 0x11, 0x73, 0x81, 0x00, 0x69, 0x80, 0x82, 0x00, + 0x9d, 0x91, 0x81, 0x00, 0x5d, 0x8b, 0x81, 0x00, 0x81, 0x6c, 0x82, 0x00, + 0x8d, 0x8f, 0x81, 0x00, 0x4d, 0x8f, 0x81, 0x00, 0x09, 0x88, 0x81, 0x00, + 0xbd, 0x6d, 0x82, 0x00, 0x01, 0x8e, 0x81, 0x00, 0x1d, 0x5e, 0x82, 0x00, + 0x91, 0x71, 0x81, 0x00, 0xc1, 0x27, 0x81, 0x00, 0x79, 0x75, 0x82, 0x00, + 0x2d, 0xbe, 0x81, 0x00, 0x2d, 0x5b, 0x82, 0x00, 0xe9, 0xa5, 0x82, 0x00, + 0xb5, 0x72, 0x82, 0x00, 0x05, 0x61, 0x00, 0x00, 0x21, 0x7d, 0x82, 0x00, + 0x4d, 0x80, 0x82, 0x00, 0x8d, 0x7f, 0x82, 0x00, 0x01, 0xa0, 0x81, 0x00, + 0xed, 0x7f, 0x82, 0x00, 0x2d, 0x41, 0x81, 0x00, 0xf9, 0x84, 0x81, 0x00, + 0x61, 0x85, 0x82, 0x00, 0x45, 0x72, 0x82, 0x00, 0xf9, 0x54, 0x81, 0x00, + 0x69, 0x2b, 0x82, 0x00, 0x69, 0x51, 0x81, 0x00, 0xc5, 0x55, 0x81, 0x00, + 0x31, 0x56, 0x81, 0x00, 0xa1, 0xa6, 0x81, 0x00, 0x71, 0x50, 0x81, 0x00, + 0x39, 0x2a, 0x82, 0x00, 0x61, 0x53, 0x81, 0x00, 0xc5, 0x73, 0x81, 0x00, + 0xd5, 0x6a, 0x00, 0x00, 0xf1, 0x97, 0x81, 0x00, 0xa9, 0x9b, 0x81, 0x00, + 0xfd, 0x3b, 0x82, 0x00, 0x25, 0xa0, 0x82, 0x00, 0xdd, 0x39, 0x81, 0x00, + 0x71, 0x5d, 0x81, 0x00, 0xbf, 0xfe, 0x00, 0x00, 0x49, 0x95, 0x81, 0x00, + 0x09, 0xcc, 0x81, 0x00, 0x21, 0xa3, 0x82, 0x00, 0x45, 0xaa, 0x81, 0x00, + 0xad, 0x81, 0x82, 0x00, 0x91, 0x67, 0x82, 0x00, 0xbd, 0x85, 0x00, 0x00, + 0x7d, 0x70, 0x82, 0x00, 0xe1, 0x2f, 0x82, 0x00, 0xe9, 0x03, 0x81, 0x00, + 0x81, 0xdb, 0x81, 0x00, 0x95, 0x24, 0x82, 0x00, 0x69, 0x89, 0x82, 0x00, + 0x89, 0xc3, 0x82, 0x00, 0xc5, 0xc4, 0x82, 0x00, 0xbd, 0xf6, 0x00, 0x00, + 0xb1, 0xeb, 0x82, 0x00, 0x09, 0xcb, 0x82, 0x00, 0x0d, 0xcc, 0x82, 0x00, + 0x59, 0xeb, 0x82, 0x00, 0x61, 0xe9, 0x82, 0x00, 0x15, 0xf1, 0x82, 0x00, + 0xe9, 0xcd, 0x82, 0x00, 0x45, 0xdf, 0x82, 0x00, 0x09, 0xf1, 0x82, 0x00, + 0x8d, 0xf7, 0x82, 0x00, 0x8d, 0xca, 0x82, 0x00, 0x89, 0xf3, 0x82, 0x00, + 0xd5, 0xca, 0x82, 0x00, 0xa1, 0x09, 0x83, 0x00, 0xc9, 0xf7, 0x82, 0x00, + 0xfd, 0xef, 0x82, 0x00, 0x99, 0xf8, 0x82, 0x00, 0x25, 0xf9, 0x82, 0x00, + 0x39, 0xfa, 0x82, 0x00, 0x89, 0xed, 0x82, 0x00, 0xc9, 0x88, 0x00, 0x00, + 0xad, 0xe5, 0x82, 0x00, 0x65, 0xda, 0x82, 0x00, 0x7d, 0xc5, 0x82, 0x00, + 0x2d, 0xe6, 0x82, 0x00, 0xb1, 0x89, 0x00, 0x00, 0x31, 0xe4, 0x82, 0x00, + 0xe5, 0xf1, 0x82, 0x00, 0x9d, 0xc8, 0x82, 0x00, 0x55, 0xf3, 0x82, 0x00, + 0x37, 0xfe, 0x00, 0x00, 0x61, 0xc7, 0x82, 0x00, 0xcd, 0xe1, 0x82, 0x00, + 0x6d, 0xe1, 0x82, 0x00, 0xa5, 0xe2, 0x82, 0x00, 0x59, 0xdf, 0x82, 0x00, + 0x29, 0xf4, 0x82, 0x00, 0x09, 0xc7, 0x82, 0x00, 0x55, 0xef, 0x82, 0x00, + 0xe9, 0xec, 0x82, 0x00, 0xd9, 0x07, 0x01, 0x00, 0xbd, 0xdd, 0x82, 0x00, + 0xe1, 0xc5, 0x82, 0x00, 0x4d, 0xe5, 0x82, 0x00, 0x05, 0xe0, 0x82, 0x00, + 0xa5, 0xf9, 0x82, 0x00, 0x0d, 0xc5, 0x82, 0x00, 0x51, 0x8f, 0x00, 0x00, + 0xd9, 0x8a, 0x00, 0x00, 0xad, 0x8b, 0x00, 0x00, 0x91, 0xe6, 0x82, 0x00, + 0xbd, 0xcc, 0x82, 0x00, 0xfd, 0xe9, 0x82, 0x00, 0x8d, 0xd1, 0x82, 0x00, + 0x2d, 0xf1, 0x82, 0x00, 0x2d, 0xf7, 0x82, 0x00, 0x95, 0xfb, 0x82, 0x00, + 0x69, 0xce, 0x82, 0x00, 0xa1, 0xf0, 0x82, 0x00, 0xd5, 0xf0, 0x82, 0x00, + 0xf5, 0xcc, 0x82, 0x00, 0x5f, 0x8c, 0x00, 0x00, 0x81, 0xd9, 0x82, 0x00, + 0x45, 0xc5, 0x82, 0x00, 0xfd, 0xcb, 0x82, 0x00, 0x25, 0xcb, 0x82, 0x00, + 0xbd, 0xeb, 0x82, 0x00, 0x1d, 0xdb, 0x82, 0x00, 0x15, 0xcd, 0x82, 0x00, + 0xf1, 0x8c, 0x00, 0x00, 0xcd, 0xe6, 0x82, 0x00, 0x4d, 0xcf, 0x82, 0x00, + 0x9d, 0xcb, 0x82, 0x00, 0x45, 0x0c, 0x83, 0x00, 0xe5, 0x0d, 0x83, 0x00, + 0x59, 0x0e, 0x83, 0x00, 0x41, 0x0e, 0x83, 0x00, 0x01, 0x0b, 0x83, 0x00, + 0x4d, 0x0a, 0x83, 0x00, 0xd1, 0x0d, 0x83, 0x00, 0x31, 0x0c, 0x83, 0x00, + 0x59, 0x0c, 0x83, 0x00, 0x71, 0x0a, 0x83, 0x00, 0x65, 0x0e, 0x83, 0x00, + 0xf1, 0x0d, 0x83, 0x00, 0x41, 0x0b, 0x83, 0x00, 0xa1, 0x1e, 0x83, 0x00, + 0xb1, 0x1e, 0x83, 0x00, 0x01, 0x2b, 0x83, 0x00, 0xf5, 0x4e, 0x83, 0x00, + 0x11, 0x2b, 0x83, 0x00, 0xb1, 0x27, 0x83, 0x00, 0x99, 0x23, 0x83, 0x00, + 0x01, 0x4a, 0x83, 0x00, 0xed, 0x49, 0x83, 0x00, 0xfd, 0x47, 0x83, 0x00, + 0xcd, 0x4c, 0x83, 0x00, 0xbd, 0x4c, 0x83, 0x00, 0x71, 0x4c, 0x83, 0x00, + 0xd5, 0x27, 0x83, 0x00, 0x4d, 0x25, 0x83, 0x00, 0x95, 0x25, 0x83, 0x00, + 0xe1, 0x4c, 0x83, 0x00, 0x41, 0x4c, 0x83, 0x00, 0x05, 0x03, 0x01, 0x00, + 0x65, 0x11, 0x83, 0x00, 0xe1, 0x44, 0x83, 0x00, 0x21, 0x28, 0x83, 0x00, + 0xbd, 0x28, 0x83, 0x00, 0x79, 0x29, 0x83, 0x00, 0x65, 0x28, 0x83, 0x00, + 0x65, 0x2b, 0x83, 0x00, 0x41, 0x45, 0x83, 0x00, 0xd5, 0x29, 0x83, 0x00, + 0x49, 0x1d, 0x83, 0x00, 0xa1, 0x2a, 0x83, 0x00, 0x5d, 0x30, 0x83, 0x00, + 0x51, 0x48, 0x83, 0x00, 0xe5, 0x48, 0x83, 0x00, 0x29, 0x48, 0x83, 0x00, + 0xf5, 0x23, 0x83, 0x00, 0x11, 0x4a, 0x83, 0x00, 0x79, 0x34, 0x83, 0x00, + 0x91, 0x18, 0x83, 0x00, 0xa5, 0x33, 0x83, 0x00, 0xed, 0x34, 0x83, 0x00, + 0x1d, 0x11, 0x83, 0x00, 0x9d, 0x4e, 0x83, 0x00, 0x95, 0x4d, 0x83, 0x00, + 0xb5, 0x1a, 0x83, 0x00, 0x61, 0x47, 0x83, 0x00, 0x1d, 0x4d, 0x83, 0x00, + 0xed, 0x10, 0x83, 0x00, 0x0d, 0x45, 0x83, 0x00, 0xc1, 0x1e, 0x83, 0x00, + 0x01, 0x20, 0x83, 0x00, 0xe9, 0x21, 0x83, 0x00, 0xf1, 0x25, 0x83, 0x00, + 0xf9, 0x1d, 0x83, 0x00, 0x85, 0x00, 0x01, 0x00, 0xc7, 0x95, 0x00, 0x00, + 0x49, 0x10, 0x83, 0x00, 0xc1, 0x0f, 0x83, 0x00, 0x21, 0x24, 0x83, 0x00, + 0xa5, 0x24, 0x83, 0x00, 0xb9, 0x4a, 0x83, 0x00, 0xb5, 0x2f, 0x83, 0x00, + 0xc1, 0x45, 0x83, 0x00, 0xfd, 0x1c, 0x83, 0x00, 0x71, 0x1d, 0x83, 0x00, + 0xf5, 0x18, 0x83, 0x00, 0x59, 0x19, 0x83, 0x00, 0xf1, 0x19, 0x83, 0x00, + 0xeb, 0x05, 0x01, 0x00, 0x49, 0x2a, 0x83, 0x00, 0xa5, 0x11, 0x83, 0x00, + 0xb9, 0x57, 0x83, 0x00, 0x29, 0x57, 0x83, 0x00, 0x65, 0x4f, 0x83, 0x00, + 0x01, 0x60, 0x83, 0x00, 0xe5, 0x59, 0x83, 0x00, 0x39, 0x51, 0x83, 0x00, + 0xf5, 0x4f, 0x83, 0x00, 0x55, 0x54, 0x83, 0x00, 0x1d, 0x5e, 0x83, 0x00, + 0x21, 0x52, 0x83, 0x00, 0x65, 0x59, 0x83, 0x00, 0x79, 0x50, 0x83, 0x00, + 0x71, 0x4f, 0x83, 0x00, 0x09, 0x59, 0x83, 0x00, 0x3d, 0x63, 0x83, 0x00, + 0xc5, 0x57, 0x83, 0x00, 0x81, 0x5c, 0x83, 0x00, 0xb1, 0x5b, 0x83, 0x00, + 0xdd, 0x53, 0x83, 0x00, 0x11, 0x53, 0x83, 0x00, 0x9d, 0x4f, 0x83, 0x00, + 0x29, 0x50, 0x83, 0x00, 0x25, 0x4f, 0x83, 0x00, 0xd5, 0x58, 0x83, 0x00, + 0xcd, 0x62, 0x83, 0x00, 0x39, 0x60, 0x83, 0x00, 0xf9, 0x5c, 0x83, 0x00, + 0x4d, 0x61, 0x83, 0x00, 0x5d, 0x5f, 0x83, 0x00, 0x2d, 0x54, 0x83, 0x00, + 0xdd, 0x50, 0x83, 0x00, 0x39, 0x57, 0x83, 0x00, 0xa5, 0x55, 0x83, 0x00, + 0x91, 0x63, 0x83, 0x00, 0xa1, 0x62, 0x83, 0x00, 0xc1, 0x5d, 0x83, 0x00, + 0x2d, 0x5e, 0x83, 0x00, 0x45, 0x5f, 0x83, 0x00, 0xa1, 0x51, 0x83, 0x00, + 0x17, 0x08, 0x01, 0x00, 0x19, 0x5b, 0x83, 0x00, 0x6d, 0x5a, 0x83, 0x00, + 0xa9, 0x56, 0x83, 0x00, 0xa5, 0x50, 0x83, 0x00, 0x09, 0x57, 0x83, 0x00, + 0x0d, 0x74, 0x83, 0x00, 0xdd, 0x63, 0x83, 0x00, 0x29, 0x7a, 0x83, 0x00, + 0x01, 0x66, 0x83, 0x00, 0xb9, 0xb2, 0x83, 0x00, 0xd5, 0xa7, 0x83, 0x00, + 0x7d, 0x84, 0x83, 0x00, 0x81, 0x93, 0x83, 0x00, 0x5d, 0xb3, 0x83, 0x00, + 0xa1, 0x93, 0x83, 0x00, 0xe9, 0x93, 0x83, 0x00, 0x45, 0x06, 0x01, 0x00, + 0x21, 0x97, 0x00, 0x00, 0x05, 0xa0, 0x00, 0x00, 0x71, 0x7a, 0x83, 0x00, + 0x5d, 0x67, 0x83, 0x00, 0x51, 0x66, 0x83, 0x00, 0xcd, 0x70, 0x83, 0x00, + 0x55, 0x71, 0x83, 0x00, 0xdd, 0x74, 0x83, 0x00, 0x8d, 0xaa, 0x83, 0x00, + 0x51, 0xa8, 0x83, 0x00, 0xa9, 0xb1, 0x83, 0x00, 0x9d, 0x91, 0x83, 0x00, + 0xd1, 0x84, 0x83, 0x00, 0x2b, 0x96, 0x00, 0x00, 0x61, 0x84, 0x83, 0x00, + 0xad, 0x77, 0x83, 0x00, 0x81, 0x81, 0x83, 0x00, 0x15, 0x82, 0x83, 0x00, + 0xb1, 0x80, 0x83, 0x00, 0xe5, 0xb5, 0x83, 0x00, 0x6d, 0x7e, 0x83, 0x00, + 0xb5, 0x79, 0x83, 0x00, 0x61, 0x97, 0x00, 0x00, 0x91, 0x6e, 0x83, 0x00, + 0x75, 0x8f, 0x83, 0x00, 0x55, 0x87, 0x83, 0x00, 0x59, 0x01, 0x01, 0x00, + 0xf5, 0x9b, 0x00, 0x00, 0x25, 0x67, 0x83, 0x00, 0xc1, 0x88, 0x83, 0x00, + 0xd9, 0x8f, 0x83, 0x00, 0xf5, 0xac, 0x83, 0x00, 0xe9, 0x77, 0x83, 0x00, + 0x9d, 0x6d, 0x83, 0x00, 0xa1, 0xa7, 0x83, 0x00, 0x79, 0x08, 0x01, 0x00, + 0xc9, 0xa4, 0x83, 0x00, 0xfd, 0x9e, 0x00, 0x00, 0x55, 0x8b, 0x83, 0x00, + 0xe5, 0x8a, 0x83, 0x00, 0xcd, 0x6a, 0x83, 0x00, 0xf5, 0x86, 0x83, 0x00, + 0x59, 0x6a, 0x83, 0x00, 0xb9, 0xaa, 0x83, 0x00, 0x15, 0x66, 0x83, 0x00, + 0x51, 0xb2, 0x83, 0x00, 0x9d, 0xb3, 0x83, 0x00, 0xd9, 0xb6, 0x83, 0x00, + 0x59, 0xb1, 0x83, 0x00, 0x91, 0x82, 0x83, 0x00, 0xd5, 0xb0, 0x83, 0x00, + 0x81, 0x86, 0x83, 0x00, 0xc9, 0x7a, 0x83, 0x00, 0x05, 0x85, 0x83, 0x00, + 0x79, 0x7c, 0x83, 0x00, 0x89, 0x65, 0x83, 0x00, 0x55, 0xa5, 0x83, 0x00, + 0xc9, 0xaf, 0x83, 0x00, 0xd5, 0xfd, 0x00, 0x00, 0x79, 0x99, 0x83, 0x00, + 0x91, 0x89, 0x83, 0x00, 0xc5, 0xb5, 0x83, 0x00, 0x0d, 0xb8, 0x83, 0x00, + 0x99, 0xd4, 0x83, 0x00, 0x2d, 0xc0, 0x83, 0x00, 0x9d, 0xc2, 0x83, 0x00, + 0xad, 0xc3, 0x83, 0x00, 0xa1, 0xc6, 0x83, 0x00, 0xb1, 0xc6, 0x83, 0x00, + 0xc5, 0xc2, 0x83, 0x00, 0xa9, 0xd0, 0x83, 0x00, 0x55, 0xbf, 0x83, 0x00, + 0xf9, 0xcf, 0x83, 0x00, 0x29, 0xbf, 0x83, 0x00, 0xc5, 0xe1, 0x83, 0x00, + 0xc1, 0xc0, 0x83, 0x00, 0x95, 0xc0, 0x83, 0x00, 0x4d, 0xd8, 0x83, 0x00, + 0x0d, 0xd7, 0x83, 0x00, 0x15, 0xd8, 0x83, 0x00, 0xf1, 0xd7, 0x83, 0x00, + 0x79, 0xbd, 0x83, 0x00, 0xa1, 0xe1, 0x83, 0x00, 0x35, 0xc2, 0x83, 0x00, + 0xc5, 0xe0, 0x83, 0x00, 0xdd, 0xe0, 0x83, 0x00, 0xc5, 0xdc, 0x83, 0x00, + 0x99, 0xda, 0x83, 0x00, 0x01, 0xda, 0x83, 0x00, 0x4d, 0xb8, 0x83, 0x00, + 0x75, 0xc0, 0x83, 0x00, 0x19, 0xc2, 0x83, 0x00, 0xf9, 0xc9, 0x83, 0x00, + 0x3d, 0xd6, 0x83, 0x00, 0x15, 0xbe, 0x83, 0x00, 0xc9, 0xd6, 0x83, 0x00, + 0x5d, 0xba, 0x83, 0x00, 0x29, 0xd6, 0x83, 0x00, 0x31, 0xb9, 0x83, 0x00, + 0x35, 0xbc, 0x83, 0x00, 0x9d, 0xd8, 0x83, 0x00, 0x5d, 0xdc, 0x83, 0x00, + 0x29, 0xc1, 0x83, 0x00, 0xa9, 0xc2, 0x83, 0x00, 0xe5, 0xc0, 0x83, 0x00, + 0x25, 0xdb, 0x83, 0x00, 0x75, 0xc2, 0x83, 0x00, 0x1d, 0xd0, 0x83, 0x00, + 0x5d, 0xbc, 0x83, 0x00, 0x61, 0xc6, 0x83, 0x00, 0xd5, 0xc2, 0x83, 0x00, + 0x05, 0xbc, 0x83, 0x00, 0x01, 0xc9, 0x83, 0x00, 0xb5, 0xc8, 0x83, 0x00, + 0xed, 0xc8, 0x83, 0x00, 0x55, 0xd6, 0x83, 0x00, 0x15, 0xd9, 0x83, 0x00, + 0xa5, 0xd1, 0x83, 0x00, 0xf1, 0xd5, 0x83, 0x00, 0x01, 0xd9, 0x83, 0x00, + 0x81, 0xb8, 0x83, 0x00, 0x89, 0xe0, 0x83, 0x00, 0xe1, 0xbc, 0x83, 0x00, + 0xa5, 0xdb, 0x83, 0x00, 0xed, 0xe1, 0x83, 0x00, 0x71, 0xc1, 0x83, 0x00, + 0xe9, 0xb7, 0x83, 0x00, 0x6d, 0xc7, 0x83, 0x00, 0x8d, 0xc1, 0x83, 0x00, + 0x1d, 0xc8, 0x83, 0x00, 0xb5, 0xd1, 0x83, 0x00, 0x71, 0xdc, 0x83, 0x00, + 0xe1, 0xc1, 0x83, 0x00, 0xa9, 0xc1, 0x83, 0x00, 0x19, 0xdc, 0x83, 0x00, + 0x39, 0xd8, 0x83, 0x00, 0x4d, 0xcb, 0x83, 0x00, 0xa5, 0xb7, 0x83, 0x00, + 0x69, 0xcb, 0x83, 0x00, 0x8d, 0xc9, 0x83, 0x00, 0xc9, 0xd4, 0x83, 0x00, + 0x11, 0xa9, 0x00, 0x00, 0x99, 0xd6, 0x83, 0x00, 0xe5, 0xdc, 0x83, 0x00, + 0x4d, 0xd4, 0x83, 0x00, 0x1d, 0xc3, 0x83, 0x00, 0x21, 0xdd, 0x83, 0x00, + 0x45, 0xd9, 0x83, 0x00, 0x7d, 0xd3, 0x83, 0x00, 0x3d, 0xd2, 0x83, 0x00, + 0x41, 0xda, 0x83, 0x00, 0xcd, 0xd8, 0x83, 0x00, 0xd9, 0xbf, 0x83, 0x00, + 0x95, 0xbd, 0x83, 0x00, 0xed, 0xbd, 0x83, 0x00, 0x51, 0xc0, 0x83, 0x00, + 0x2d, 0xb8, 0x83, 0x00, 0x49, 0xbb, 0x83, 0x00, 0x31, 0xbb, 0x83, 0x00, + 0xcd, 0xda, 0x83, 0x00, 0xd5, 0xd0, 0x83, 0x00, 0x49, 0xca, 0x83, 0x00, + 0x9d, 0xd5, 0x83, 0x00, 0x81, 0xbf, 0x83, 0x00, 0xd5, 0xcf, 0x83, 0x00, + 0x3d, 0xc9, 0x83, 0x00, 0xdd, 0xd1, 0x83, 0x00, 0xb9, 0xd7, 0x83, 0x00, + 0x25, 0xc7, 0x83, 0x00, 0xe5, 0xa4, 0x00, 0x00, 0x5d, 0xbe, 0x83, 0x00, + 0x21, 0xe1, 0x83, 0x00, 0xf9, 0xe0, 0x83, 0x00, 0x71, 0xb9, 0x83, 0x00, + 0x8d, 0xe1, 0x83, 0x00, 0x25, 0xd9, 0x83, 0x00, 0x49, 0xd7, 0x83, 0x00, + 0xdd, 0xdb, 0x83, 0x00, 0xa9, 0xb9, 0x83, 0x00, 0x55, 0xa1, 0x00, 0x00, + 0x91, 0x07, 0x01, 0x00, 0x59, 0xeb, 0x83, 0x00, 0xc5, 0xe7, 0x83, 0x00, + 0x41, 0xe2, 0x83, 0x00, 0x25, 0xe2, 0x83, 0x00, 0x6d, 0xf5, 0x83, 0x00, + 0x65, 0xeb, 0x83, 0x00, 0x85, 0xf2, 0x83, 0x00, 0x89, 0xf7, 0x83, 0x00, + 0xb1, 0xf2, 0x83, 0x00, 0xa9, 0xf5, 0x83, 0x00, 0xad, 0x00, 0x84, 0x00, + 0xe1, 0x00, 0x84, 0x00, 0x19, 0xfd, 0x83, 0x00, 0x35, 0xee, 0x83, 0x00, + 0xfd, 0xf3, 0x83, 0x00, 0x9d, 0xae, 0x00, 0x00, 0x89, 0xfb, 0x83, 0x00, + 0xb9, 0xfa, 0x83, 0x00, 0x21, 0xf9, 0x83, 0x00, 0xf1, 0xfa, 0x83, 0x00, + 0xd9, 0xf8, 0x83, 0x00, 0xd9, 0xf9, 0x83, 0x00, 0x31, 0x00, 0x84, 0x00, + 0xc5, 0xfe, 0x83, 0x00, 0x49, 0xe7, 0x83, 0x00, 0x05, 0x00, 0x84, 0x00, + 0x4d, 0xff, 0x83, 0x00, 0x6d, 0xf3, 0x83, 0x00, 0x59, 0xfe, 0x83, 0x00, + 0x01, 0xfe, 0x83, 0x00, 0x25, 0xeb, 0x83, 0x00, 0x0d, 0xeb, 0x83, 0x00, + 0x33, 0xae, 0x00, 0x00, 0x35, 0xfd, 0x83, 0x00, 0x81, 0xeb, 0x83, 0x00, + 0x59, 0xfd, 0x83, 0x00, 0x11, 0xf8, 0x83, 0x00, 0xfd, 0xf7, 0x83, 0x00, + 0xc5, 0xed, 0x83, 0x00, 0xad, 0xed, 0x83, 0x00, 0xa1, 0x01, 0x84, 0x00, + 0xe9, 0xe7, 0x83, 0x00, 0xb1, 0xf3, 0x83, 0x00, 0xdd, 0xf2, 0x83, 0x00, + 0x25, 0xf3, 0x83, 0x00, 0xf9, 0xe6, 0x83, 0x00, 0xe5, 0xe2, 0x83, 0x00, + 0x51, 0x02, 0x01, 0x00, 0xa5, 0xe9, 0x83, 0x00, 0x8d, 0xf5, 0x83, 0x00, + 0x51, 0xee, 0x83, 0x00, 0x79, 0xf8, 0x83, 0x00, 0x71, 0xe2, 0x83, 0x00, + 0xf1, 0xe8, 0x83, 0x00, 0x45, 0xe6, 0x83, 0x00, 0x99, 0xf7, 0x83, 0x00, + 0x6d, 0xee, 0x83, 0x00, 0x41, 0xf4, 0x83, 0x00, 0xb9, 0xeb, 0x83, 0x00, + 0x75, 0xe7, 0x83, 0x00, 0xb1, 0xe8, 0x83, 0x00, 0xc5, 0xac, 0x00, 0x00, + 0x61, 0xf1, 0x83, 0x00, 0x1d, 0xf7, 0x00, 0x00, 0x89, 0xee, 0x83, 0x00, + 0xf5, 0xad, 0x00, 0x00, 0xfd, 0xe5, 0x83, 0x00, 0xa9, 0xfd, 0x83, 0x00, + 0x35, 0x02, 0x01, 0x00, 0xb5, 0xfb, 0x83, 0x00, 0xf1, 0xf1, 0x83, 0x00, + 0x2d, 0x10, 0x84, 0x00, 0xe1, 0x15, 0x84, 0x00, 0xb1, 0x19, 0x84, 0x00, + 0xc5, 0x15, 0x84, 0x00, 0xd9, 0x0f, 0x84, 0x00, 0xcd, 0x21, 0x84, 0x00, + 0x49, 0x1e, 0x84, 0x00, 0x4d, 0x1f, 0x84, 0x00, 0xe1, 0x12, 0x84, 0x00, + 0xed, 0x08, 0x84, 0x00, 0xf1, 0x01, 0x84, 0x00, 0x2d, 0x0f, 0x84, 0x00, + 0xed, 0x23, 0x84, 0x00, 0xf5, 0x1e, 0x84, 0x00, 0xe5, 0x20, 0x84, 0x00, + 0x49, 0x20, 0x84, 0x00, 0xad, 0x12, 0x84, 0x00, 0xf1, 0x1a, 0x84, 0x00, + 0x71, 0x1f, 0x84, 0x00, 0xc9, 0x19, 0x84, 0x00, 0xad, 0x18, 0x84, 0x00, + 0x45, 0x0b, 0x84, 0x00, 0x91, 0x0b, 0x84, 0x00, 0x0d, 0x24, 0x84, 0x00, + 0x8d, 0x23, 0x84, 0x00, 0x0d, 0x18, 0x84, 0x00, 0x21, 0x06, 0x84, 0x00, + 0x8d, 0x16, 0x84, 0x00, 0x31, 0x03, 0x84, 0x00, 0x69, 0x09, 0x84, 0x00, + 0xfd, 0x15, 0x84, 0x00, 0xe9, 0x02, 0x84, 0x00, 0x01, 0x02, 0x84, 0x00, + 0xa9, 0x09, 0x84, 0x00, 0x8d, 0x14, 0x84, 0x00, 0x81, 0x1e, 0x84, 0x00, + 0xe1, 0x0b, 0x84, 0x00, 0x75, 0x1c, 0x84, 0x00, 0xad, 0x0a, 0x84, 0x00, + 0x49, 0x10, 0x84, 0x00, 0x71, 0x20, 0x84, 0x00, 0x01, 0x21, 0x84, 0x00, + 0x85, 0x0a, 0x84, 0x00, 0x29, 0x1d, 0x84, 0x00, 0x45, 0x07, 0x84, 0x00, + 0x39, 0x0c, 0x84, 0x00, 0x29, 0x19, 0x84, 0x00, 0x55, 0x1e, 0x84, 0x00, + 0x89, 0x03, 0x84, 0x00, 0xe5, 0x1d, 0x84, 0x00, 0x21, 0x25, 0x84, 0x00, + 0x49, 0x13, 0x84, 0x00, 0x29, 0x1a, 0x84, 0x00, 0x65, 0x02, 0x01, 0x00, + 0xed, 0x12, 0x84, 0x00, 0x45, 0x06, 0x84, 0x00, 0x01, 0x0d, 0x84, 0x00, + 0x89, 0x43, 0x84, 0x00, 0x6d, 0x2a, 0x84, 0x00, 0x01, 0x4d, 0x84, 0x00, + 0x15, 0x28, 0x84, 0x00, 0x69, 0x28, 0x84, 0x00, 0x7d, 0xed, 0x00, 0x00, + 0x09, 0x40, 0x84, 0x00, 0x11, 0x2c, 0x84, 0x00, 0xf9, 0x27, 0x84, 0x00, + 0x91, 0x2d, 0x84, 0x00, 0x79, 0x4c, 0x84, 0x00, 0x89, 0x34, 0x84, 0x00, + 0x19, 0x33, 0x84, 0x00, 0x6d, 0x2f, 0x84, 0x00, 0xc9, 0x2d, 0x84, 0x00, + 0xf1, 0x2e, 0x84, 0x00, 0x7d, 0x2e, 0x84, 0x00, 0x65, 0x25, 0x84, 0x00, + 0xdd, 0x34, 0x84, 0x00, 0xfd, 0x25, 0x84, 0x00, 0x19, 0x29, 0x84, 0x00, + 0xb5, 0x40, 0x84, 0x00, 0xd9, 0x44, 0x84, 0x00, 0x79, 0x29, 0x84, 0x00, + 0xb9, 0x2b, 0x84, 0x00, 0x3d, 0x45, 0x84, 0x00, 0x95, 0x32, 0x84, 0x00, + 0xb9, 0x28, 0x84, 0x00, 0xd1, 0x38, 0x84, 0x00, 0x31, 0x48, 0x84, 0x00, + 0xa9, 0x30, 0x84, 0x00, 0x6d, 0x2c, 0x84, 0x00, 0x99, 0x43, 0x84, 0x00, + 0xd1, 0x32, 0x84, 0x00, 0x6d, 0x33, 0x84, 0x00, 0xfd, 0x2f, 0x84, 0x00, + 0x5d, 0x45, 0x84, 0x00, 0x11, 0x34, 0x84, 0x00, 0xb5, 0x4a, 0x84, 0x00, + 0x75, 0x48, 0x84, 0x00, 0xc5, 0x48, 0x84, 0x00, 0xb1, 0x27, 0x84, 0x00, + 0x31, 0x4a, 0x84, 0x00, 0xd9, 0x49, 0x84, 0x00, 0x59, 0x32, 0x84, 0x00, + 0x01, 0x4c, 0x84, 0x00, 0x39, 0x38, 0x84, 0x00, 0x31, 0x4d, 0x84, 0x00, + 0x55, 0x44, 0x84, 0x00, 0xd9, 0x3d, 0x84, 0x00, 0x55, 0x43, 0x84, 0x00, + 0x51, 0x3c, 0x84, 0x00, 0x91, 0x39, 0x84, 0x00, 0x95, 0x36, 0x84, 0x00, + 0x91, 0x37, 0x84, 0x00, 0xf5, 0x36, 0x84, 0x00, 0xe1, 0x47, 0x84, 0x00, + 0x15, 0x47, 0x84, 0x00, 0xcd, 0x4c, 0x84, 0x00, 0xf5, 0x2b, 0x84, 0x00, + 0x25, 0x46, 0x84, 0x00, 0xe5, 0x3a, 0x84, 0x00, 0xc9, 0x37, 0x84, 0x00, + 0x49, 0x42, 0x84, 0x00, 0x29, 0x2a, 0x84, 0x00, 0xa5, 0x3f, 0x84, 0x00, + 0x59, 0x26, 0x84, 0x00, 0x95, 0x2a, 0x84, 0x00, 0x45, 0x2b, 0x84, 0x00, + 0xc9, 0x5d, 0x84, 0x00, 0xd5, 0x08, 0x01, 0x00, 0xa1, 0x56, 0x84, 0x00, + 0x95, 0x56, 0x84, 0x00, 0x19, 0x57, 0x84, 0x00, 0xe9, 0x56, 0x84, 0x00, + 0x05, 0x57, 0x84, 0x00, 0x35, 0x5f, 0x84, 0x00, 0x1d, 0x62, 0x84, 0x00, + 0xb5, 0x57, 0x84, 0x00, 0x65, 0x63, 0x84, 0x00, 0xed, 0x62, 0x84, 0x00, + 0x21, 0x63, 0x84, 0x00, 0xbd, 0x62, 0x84, 0x00, 0x19, 0x4e, 0x84, 0x00, + 0xb9, 0x53, 0x84, 0x00, 0xb1, 0x5d, 0x84, 0x00, 0xb5, 0x51, 0x84, 0x00, + 0xd5, 0x5f, 0x84, 0x00, 0xf9, 0x55, 0x84, 0x00, 0x65, 0x60, 0x84, 0x00, + 0x59, 0x53, 0x84, 0x00, 0xe5, 0x53, 0x84, 0x00, 0xe9, 0x4d, 0x84, 0x00, + 0x05, 0x09, 0x01, 0x00, 0xe1, 0x5f, 0x84, 0x00, 0xd9, 0x08, 0x01, 0x00, + 0xa9, 0x08, 0x01, 0x00, 0xb5, 0x5b, 0x84, 0x00, 0x31, 0x56, 0x84, 0x00, + 0xa5, 0x63, 0x84, 0x00, 0xcd, 0x60, 0x84, 0x00, 0x91, 0x63, 0x84, 0x00, + 0xed, 0x50, 0x84, 0x00, 0x2d, 0x5e, 0x84, 0x00, 0x31, 0x51, 0x84, 0x00, + 0x15, 0x5c, 0x84, 0x00, 0x61, 0x54, 0x84, 0x00, 0xf5, 0x5e, 0x84, 0x00, + 0xf1, 0x5d, 0x84, 0x00, 0xe1, 0x09, 0x01, 0x00, 0x71, 0x52, 0x84, 0x00, + 0x59, 0x58, 0x84, 0x00, 0x81, 0x5c, 0x84, 0x00, 0x71, 0x57, 0x84, 0x00, + 0x25, 0x57, 0x84, 0x00, 0x71, 0x58, 0x84, 0x00, 0xad, 0x56, 0x84, 0x00, + 0x41, 0x59, 0x84, 0x00, 0x6d, 0x4f, 0x84, 0x00, 0x29, 0x50, 0x84, 0x00, + 0xe1, 0x54, 0x84, 0x00, 0xbd, 0x61, 0x84, 0x00, 0x6d, 0x61, 0x84, 0x00, + 0x05, 0x59, 0x84, 0x00, 0xa5, 0x66, 0x84, 0x00, 0xd9, 0x67, 0x84, 0x00, + 0x45, 0x66, 0x84, 0x00, 0x0d, 0x65, 0x84, 0x00, 0x91, 0x67, 0x84, 0x00, + 0xb9, 0x63, 0x84, 0x00, 0x5d, 0x67, 0x84, 0x00, 0x79, 0x67, 0x84, 0x00, + 0xf9, 0x66, 0x84, 0x00, 0x21, 0x65, 0x84, 0x00, 0x21, 0x67, 0x84, 0x00, + 0xc5, 0x66, 0x84, 0x00, 0x8d, 0x66, 0x84, 0x00, 0x65, 0x66, 0x84, 0x00, + 0x11, 0x68, 0x84, 0x00, 0x51, 0x6c, 0x84, 0x00, 0xad, 0x6e, 0x84, 0x00, + 0x01, 0x6e, 0x84, 0x00, 0xf9, 0x70, 0x84, 0x00, 0x4d, 0x7f, 0x84, 0x00, + 0x7d, 0x6c, 0x84, 0x00, 0x2d, 0x74, 0x84, 0x00, 0x45, 0x6a, 0x84, 0x00, + 0x0d, 0x7b, 0x84, 0x00, 0x09, 0x03, 0x01, 0x00, 0x15, 0x6e, 0x84, 0x00, + 0x45, 0x7a, 0x84, 0x00, 0xe5, 0x6c, 0x84, 0x00, 0x45, 0x6f, 0x84, 0x00, + 0xdd, 0xed, 0x00, 0x00, 0x29, 0x7e, 0x84, 0x00, 0x75, 0x6d, 0x84, 0x00, + 0x95, 0x6b, 0x84, 0x00, 0xb5, 0x6d, 0x84, 0x00, 0x7d, 0x7d, 0x84, 0x00, + 0x5d, 0x6b, 0x84, 0x00, 0xd5, 0x6a, 0x84, 0x00, 0x81, 0x6a, 0x84, 0x00, + 0x85, 0x74, 0x84, 0x00, 0xb1, 0x80, 0x84, 0x00, 0x85, 0x7e, 0x84, 0x00, + 0xcd, 0x7f, 0x84, 0x00, 0x49, 0x81, 0x84, 0x00, 0x69, 0x81, 0x84, 0x00, + 0xed, 0x89, 0x84, 0x00, 0x6d, 0x8a, 0x84, 0x00, 0xfd, 0x89, 0x84, 0x00, + 0x8d, 0x89, 0x84, 0x00, 0x9d, 0x89, 0x84, 0x00, 0xe9, 0x85, 0x84, 0x00, + 0xf9, 0x82, 0x84, 0x00, 0x25, 0x85, 0x84, 0x00, 0x51, 0x8a, 0x84, 0x00, + 0x75, 0x85, 0x84, 0x00, 0x95, 0x84, 0x84, 0x00, 0x81, 0x81, 0x84, 0x00, + 0x71, 0x83, 0x84, 0x00, 0xc1, 0x89, 0x84, 0x00, 0x5d, 0x89, 0x84, 0x00, + 0xd5, 0x89, 0x84, 0x00, 0x6d, 0x89, 0x84, 0x00, 0x7d, 0x89, 0x84, 0x00, + 0x0d, 0x8a, 0x84, 0x00, 0x09, 0x86, 0x84, 0x00, 0x79, 0x8c, 0x84, 0x00, + 0x7d, 0x8a, 0x84, 0x00, 0x0d, 0x8b, 0x84, 0x00, 0x49, 0x94, 0x84, 0x00, + 0x8d, 0x92, 0x84, 0x00, 0xe9, 0x8d, 0x84, 0x00, 0x9d, 0x8b, 0x84, 0x00, + 0xfd, 0x8c, 0x84, 0x00, 0x79, 0x90, 0x84, 0x00, 0x0d, 0x8c, 0x84, 0x00, + 0x45, 0x8c, 0x84, 0x00, 0xe9, 0xa6, 0x84, 0x00, 0xa5, 0xad, 0x84, 0x00, + 0x29, 0x96, 0x84, 0x00, 0xc5, 0x98, 0x84, 0x00, 0x15, 0xc1, 0x84, 0x00, + 0x09, 0xa9, 0x84, 0x00, 0x99, 0xc2, 0x84, 0x00, 0x45, 0xb7, 0x84, 0x00, + 0x31, 0xc1, 0x84, 0x00, 0xd1, 0xb8, 0x84, 0x00, 0x8d, 0x99, 0x84, 0x00, + 0xb9, 0x9a, 0x84, 0x00, 0x25, 0xac, 0x84, 0x00, 0xd9, 0xbf, 0x84, 0x00, + 0xc9, 0xbe, 0x84, 0x00, 0xa1, 0x96, 0x84, 0x00, 0x25, 0xb1, 0x84, 0x00, + 0x51, 0x9b, 0x84, 0x00, 0x91, 0x98, 0x84, 0x00, 0x4d, 0x97, 0x84, 0x00, + 0x1d, 0x97, 0x84, 0x00, 0x7d, 0xa6, 0x84, 0x00, 0xd1, 0xb7, 0x84, 0x00, + 0x2d, 0xab, 0x84, 0x00, 0x85, 0x95, 0x84, 0x00, 0x19, 0xb0, 0x84, 0x00, + 0xf5, 0xad, 0x84, 0x00, 0x29, 0xa9, 0x84, 0x00, 0xc1, 0xa9, 0x84, 0x00, + 0x21, 0x9f, 0x84, 0x00, 0x25, 0xa2, 0x84, 0x00, 0xb1, 0xae, 0x84, 0x00, + 0xc1, 0xaf, 0x84, 0x00, 0xd5, 0xa3, 0x84, 0x00, 0x75, 0xb7, 0x84, 0x00, + 0x41, 0xa2, 0x84, 0x00, 0xe1, 0xbc, 0x84, 0x00, 0x6d, 0xa8, 0x84, 0x00, + 0xbd, 0x9d, 0x84, 0x00, 0x95, 0xb8, 0x84, 0x00, 0x5d, 0x95, 0x84, 0x00, + 0x75, 0xbe, 0x84, 0x00, 0x51, 0xb9, 0x84, 0x00, 0xa9, 0x95, 0x84, 0x00, + 0xc5, 0xc1, 0x84, 0x00, 0x59, 0x9a, 0x84, 0x00, 0x41, 0x96, 0x84, 0x00, + 0x3d, 0xb8, 0x84, 0x00, 0x9d, 0xa8, 0x84, 0x00, 0xe5, 0xa8, 0x84, 0x00, + 0xa5, 0x9b, 0x84, 0x00, 0xf5, 0xa6, 0x84, 0x00, 0x3d, 0xaf, 0x84, 0x00, + 0x15, 0x9a, 0x84, 0x00, 0xf9, 0x98, 0x84, 0x00, 0xed, 0xa9, 0x84, 0x00, + 0x6d, 0xb1, 0x84, 0x00, 0xfd, 0xf0, 0x84, 0x00, 0x25, 0xdf, 0x84, 0x00, + 0x25, 0xed, 0x84, 0x00, 0xe5, 0xd0, 0x84, 0x00, 0xcd, 0xf1, 0x84, 0x00, + 0x09, 0xf2, 0x84, 0x00, 0x35, 0xf2, 0x84, 0x00, 0x55, 0xf2, 0x84, 0x00, + 0xcd, 0xf2, 0x84, 0x00, 0xb1, 0xd3, 0x84, 0x00, 0xf5, 0xd3, 0x84, 0x00, + 0x2d, 0xd4, 0x84, 0x00, 0xc1, 0xd4, 0x84, 0x00, 0xa5, 0x04, 0x85, 0x00, + 0xf9, 0x05, 0x85, 0x00, 0x6d, 0x05, 0x85, 0x00, 0x99, 0x04, 0x85, 0x00, + 0x8d, 0x04, 0x85, 0x00, 0x79, 0xd4, 0x84, 0x00, 0x45, 0xe8, 0x84, 0x00, + 0xb1, 0xc5, 0x84, 0x00, 0x95, 0xdf, 0x84, 0x00, 0x31, 0xdf, 0x84, 0x00, + 0x75, 0xe4, 0x84, 0x00, 0x1d, 0xe0, 0x84, 0x00, 0xbd, 0xc9, 0x84, 0x00, + 0x05, 0xed, 0x84, 0x00, 0xa5, 0x00, 0x85, 0x00, 0x91, 0xfb, 0x84, 0x00, + 0xf9, 0xed, 0x84, 0x00, 0x91, 0xef, 0x84, 0x00, 0x9d, 0xfb, 0x84, 0x00, + 0x81, 0xea, 0x84, 0x00, 0x79, 0xe2, 0x84, 0x00, 0x59, 0xc6, 0x84, 0x00, + 0x61, 0xeb, 0x84, 0x00, 0xa1, 0xeb, 0x84, 0x00, 0xd1, 0xe4, 0x84, 0x00, + 0x9d, 0x02, 0x85, 0x00, 0xa1, 0xf3, 0x84, 0x00, 0x15, 0xcc, 0x84, 0x00, + 0x5d, 0xfb, 0x84, 0x00, 0x81, 0xc5, 0x84, 0x00, 0x15, 0xd5, 0x84, 0x00, + 0x99, 0xd6, 0x84, 0x00, 0x35, 0xe7, 0x84, 0x00, 0xb9, 0xdf, 0x84, 0x00, + 0x45, 0xf4, 0x84, 0x00, 0xb9, 0xc7, 0x84, 0x00, 0x01, 0xdf, 0x84, 0x00, + 0x2d, 0x01, 0x85, 0x00, 0xe1, 0xc7, 0x84, 0x00, 0x25, 0xd1, 0x84, 0x00, + 0xcf, 0xee, 0x00, 0x00, 0xbd, 0xdd, 0x84, 0x00, 0x4d, 0xf3, 0x84, 0x00, + 0xe1, 0xc9, 0x84, 0x00, 0x41, 0xe0, 0x84, 0x00, 0x2d, 0xca, 0x84, 0x00, + 0x9d, 0xd4, 0x84, 0x00, 0x05, 0xeb, 0x84, 0x00, 0xd9, 0x00, 0x85, 0x00, + 0x79, 0xcb, 0x84, 0x00, 0x21, 0xfc, 0x84, 0x00, 0xb9, 0xe8, 0x84, 0x00, + 0xb5, 0xd8, 0x84, 0x00, 0x31, 0xfd, 0x84, 0x00, 0xbd, 0xfb, 0x84, 0x00, + 0x1d, 0x04, 0x85, 0x00, 0x5d, 0x04, 0x85, 0x00, 0x31, 0xed, 0x84, 0x00, + 0x45, 0x06, 0x85, 0x00, 0x5d, 0xec, 0x84, 0x00, 0x25, 0xc3, 0x84, 0x00, + 0x1d, 0xf3, 0x84, 0x00, 0xd9, 0xc6, 0x84, 0x00, 0x2d, 0xec, 0x84, 0x00, + 0xf1, 0xc5, 0x84, 0x00, 0x59, 0xe9, 0x84, 0x00, 0x19, 0xc8, 0x84, 0x00, + 0xb1, 0xef, 0x84, 0x00, 0xb1, 0x00, 0x85, 0x00, 0x49, 0xd3, 0x84, 0x00, + 0x01, 0xc9, 0x84, 0x00, 0xe1, 0xd2, 0x84, 0x00, 0x8d, 0xcb, 0x84, 0x00, + 0xdd, 0xeb, 0x84, 0x00, 0x11, 0xf4, 0x84, 0x00, 0x09, 0xfc, 0x84, 0x00, + 0xd9, 0xf3, 0x84, 0x00, 0x69, 0xc3, 0x84, 0x00, 0xa1, 0xc8, 0x84, 0x00, + 0x2d, 0xee, 0x84, 0x00, 0x71, 0xd6, 0x84, 0x00, 0x79, 0x01, 0x85, 0x00, + 0xbd, 0xee, 0x84, 0x00, 0x25, 0xd8, 0x84, 0x00, 0xdd, 0xf9, 0x84, 0x00, + 0x09, 0xf0, 0x84, 0x00, 0x35, 0xf7, 0x84, 0x00, 0xc9, 0xee, 0x00, 0x00, + 0xd9, 0xfc, 0x84, 0x00, 0x15, 0xd7, 0x84, 0x00, 0xdd, 0xd5, 0x84, 0x00, + 0x1d, 0xde, 0x84, 0x00, 0xd9, 0xf5, 0x84, 0x00, 0x19, 0xf1, 0x84, 0x00, + 0x99, 0xf1, 0x84, 0x00, 0x49, 0xf1, 0x84, 0x00, 0xf1, 0xf4, 0x84, 0x00, + 0xa1, 0xf4, 0x84, 0x00, 0xf1, 0xd0, 0x84, 0x00, 0x3d, 0xcc, 0x84, 0x00, + 0x69, 0xd2, 0x84, 0x00, 0x89, 0xe9, 0x84, 0x00, 0x71, 0xcd, 0x84, 0x00, + 0xc9, 0xd3, 0x84, 0x00, 0x85, 0x06, 0x85, 0x00, 0x89, 0x07, 0x85, 0x00, + 0xe9, 0x06, 0x85, 0x00, 0x4d, 0x07, 0x85, 0x00, 0x11, 0x07, 0x85, 0x00, + 0x25, 0x07, 0x85, 0x00, 0x71, 0x06, 0x85, 0x00, 0x95, 0x06, 0x85, 0x00, + 0xbd, 0x06, 0x85, 0x00, 0x75, 0x07, 0x85, 0x00, 0xb1, 0x07, 0x85, 0x00, + 0x9d, 0x07, 0x85, 0x00, 0xa9, 0x06, 0x85, 0x00, 0xd1, 0x06, 0x85, 0x00, + 0xfd, 0x06, 0x85, 0x00, 0x39, 0x07, 0x85, 0x00, 0x61, 0x07, 0x85, 0x00, + 0x5d, 0x06, 0x85, 0x00, 0x15, 0x09, 0x85, 0x00, 0x79, 0x09, 0x85, 0x00, + 0x35, 0x0a, 0x85, 0x00, 0xbd, 0x09, 0x85, 0x00, 0x0d, 0x0a, 0x85, 0x00, + 0xcd, 0xc0, 0x00, 0x00, 0x7b, 0x02, 0x01, 0x00, 0x4d, 0x0a, 0x85, 0x00, + 0xa9, 0x09, 0x85, 0x00, 0x25, 0x09, 0x85, 0x00, 0xdd, 0x0a, 0x85, 0x00, + 0x6d, 0x0a, 0x85, 0x00, 0x81, 0x08, 0x85, 0x00, 0xc5, 0x07, 0x85, 0x00, + 0x0d, 0x0b, 0x85, 0x00, 0x59, 0x0f, 0x85, 0x00, 0xed, 0x11, 0x85, 0x00, + 0xc9, 0x12, 0x85, 0x00, 0x21, 0x10, 0x85, 0x00, 0xf9, 0x0d, 0x85, 0x00, + 0xd5, 0x11, 0x85, 0x00, 0x51, 0x10, 0x85, 0x00, 0xad, 0x11, 0x85, 0x00, + 0x01, 0x11, 0x85, 0x00, 0x6d, 0x10, 0x85, 0x00, 0x21, 0xb4, 0x01, 0x00, + 0x85, 0x0f, 0x85, 0x00, 0x85, 0x10, 0x85, 0x00, 0x99, 0x0d, 0x85, 0x00, + 0x11, 0x12, 0x85, 0x00, 0x0d, 0x22, 0x85, 0x00, 0x41, 0x17, 0x85, 0x00, + 0xd9, 0x17, 0x85, 0x00, 0x75, 0x20, 0x85, 0x00, 0x7d, 0x2c, 0x85, 0x00, + 0x35, 0x2f, 0x85, 0x00, 0xb9, 0x22, 0x85, 0x00, 0x2d, 0x25, 0x85, 0x00, + 0x9d, 0x23, 0x85, 0x00, 0x61, 0x2f, 0x85, 0x00, 0xa5, 0x27, 0x85, 0x00, + 0xc9, 0x2a, 0x85, 0x00, 0x6d, 0x29, 0x85, 0x00, 0x9d, 0x22, 0x85, 0x00, + 0x31, 0x22, 0x85, 0x00, 0xa5, 0x24, 0x85, 0x00, 0xe1, 0x23, 0x85, 0x00, + 0xb1, 0x2f, 0x85, 0x00, 0xbd, 0x2c, 0x85, 0x00, 0x59, 0x14, 0x85, 0x00, + 0xc9, 0x13, 0x85, 0x00, 0xa1, 0x1c, 0x85, 0x00, 0x45, 0x2c, 0x85, 0x00, + 0xa9, 0x17, 0x85, 0x00, 0xb1, 0x20, 0x85, 0x00, 0x31, 0x1a, 0x85, 0x00, + 0xfd, 0x17, 0x85, 0x00, 0x29, 0x1d, 0x85, 0x00, 0x21, 0x14, 0x85, 0x00, + 0xad, 0x21, 0x85, 0x00, 0xb5, 0x30, 0x85, 0x00, 0x45, 0x31, 0x85, 0x00, + 0x35, 0x27, 0x85, 0x00, 0xd1, 0x31, 0x85, 0x00, 0xc5, 0x14, 0x85, 0x00, + 0xbd, 0x2d, 0x85, 0x00, 0x2d, 0x23, 0x85, 0x00, 0x59, 0x23, 0x85, 0x00, + 0x89, 0x14, 0x85, 0x00, 0x4d, 0x46, 0x85, 0x00, 0x65, 0x47, 0x85, 0x00, + 0x25, 0x36, 0x85, 0x00, 0x51, 0x47, 0x85, 0x00, 0x3d, 0x46, 0x85, 0x00, + 0x8d, 0x3c, 0x85, 0x00, 0x51, 0x4a, 0x85, 0x00, 0x99, 0x4a, 0x85, 0x00, + 0x75, 0x47, 0x85, 0x00, 0x1d, 0x47, 0x85, 0x00, 0x55, 0x36, 0x85, 0x00, + 0x5d, 0x46, 0x85, 0x00, 0xd5, 0x3b, 0x85, 0x00, 0x49, 0x49, 0x85, 0x00, + 0xd5, 0x3a, 0x85, 0x00, 0xe1, 0x39, 0x85, 0x00, 0x41, 0x39, 0x85, 0x00, + 0xe5, 0x38, 0x85, 0x00, 0x09, 0x37, 0x85, 0x00, 0x45, 0x35, 0x85, 0x00, + 0xc9, 0x3c, 0x85, 0x00, 0x75, 0x4b, 0x85, 0x00, 0xb9, 0x45, 0x85, 0x00, + 0xed, 0x48, 0x85, 0x00, 0x21, 0x46, 0x85, 0x00, 0x21, 0x3a, 0x85, 0x00, + 0xa9, 0x40, 0x85, 0x00, 0x01, 0x32, 0x85, 0x00, 0xf5, 0x32, 0x85, 0x00, + 0xfd, 0x37, 0x85, 0x00, 0x89, 0x4e, 0x85, 0x00, 0xdd, 0x50, 0x85, 0x00, + 0xed, 0x50, 0x85, 0x00, 0x5d, 0x57, 0x85, 0x00, 0x09, 0x55, 0x85, 0x00, + 0x49, 0x50, 0x85, 0x00, 0x5d, 0x50, 0x85, 0x00, 0xd1, 0x52, 0x85, 0x00, + 0xf5, 0x52, 0x85, 0x00, 0xe5, 0x4e, 0x85, 0x00, 0xc9, 0x55, 0x85, 0x00, + 0x65, 0x56, 0x85, 0x00, 0xc9, 0x50, 0x85, 0x00, 0x09, 0x4f, 0x85, 0x00, + 0xd7, 0xb4, 0x01, 0x00, 0x9d, 0x55, 0x85, 0x00, 0x0d, 0x53, 0x85, 0x00, + 0xa9, 0x4c, 0x85, 0x00, 0xb9, 0x57, 0x85, 0x00, 0xa5, 0x57, 0x85, 0x00, + 0x0d, 0x51, 0x85, 0x00, 0xfd, 0x5a, 0x85, 0x00, 0xd5, 0x51, 0x85, 0x00, + 0xa9, 0x51, 0x85, 0x00, 0xb1, 0x52, 0x85, 0x00, 0x9d, 0x53, 0x85, 0x00, + 0x39, 0x55, 0x85, 0x00, 0x9d, 0x4e, 0x85, 0x00, 0xc9, 0x57, 0x85, 0x00, + 0x6d, 0x57, 0x85, 0x00, 0x95, 0x4c, 0x85, 0x00, 0x09, 0x57, 0x85, 0x00, + 0x8d, 0x4f, 0x85, 0x00, 0x0f, 0xb5, 0x01, 0x00, 0xfd, 0x59, 0x85, 0x00, + 0x01, 0x4d, 0x85, 0x00, 0xed, 0x59, 0x85, 0x00, 0xd9, 0x59, 0x85, 0x00, + 0x19, 0x4c, 0x85, 0x00, 0x75, 0x6c, 0x85, 0x00, 0x81, 0x6e, 0x85, 0x00, + 0x51, 0x6c, 0x85, 0x00, 0x29, 0x5c, 0x85, 0x00, 0x41, 0x6e, 0x85, 0x00, + 0x79, 0x5e, 0x85, 0x00, 0x9b, 0x05, 0x01, 0x00, 0xad, 0x6e, 0x85, 0x00, + 0xb5, 0x6c, 0x85, 0x00, 0x6d, 0x65, 0x85, 0x00, 0x1d, 0x5f, 0x85, 0x00, + 0x19, 0x6b, 0x85, 0x00, 0x85, 0x79, 0x85, 0x00, 0x71, 0x73, 0x85, 0x00, + 0xb5, 0x8e, 0x85, 0x00, 0xe1, 0x95, 0x85, 0x00, 0x01, 0x82, 0x85, 0x00, + 0x51, 0x90, 0x85, 0x00, 0x2d, 0x82, 0x85, 0x00, 0xd1, 0x90, 0x85, 0x00, + 0xfd, 0x90, 0x85, 0x00, 0xbd, 0x92, 0x85, 0x00, 0x6d, 0x8f, 0x85, 0x00, + 0xcd, 0x92, 0x85, 0x00, 0x55, 0x96, 0x85, 0x00, 0xc5, 0x8e, 0x85, 0x00, + 0x85, 0x72, 0x85, 0x00, 0x5d, 0x8d, 0x85, 0x00, 0x01, 0x83, 0x85, 0x00, + 0xc1, 0x91, 0x85, 0x00, 0x25, 0x70, 0x85, 0x00, 0x0d, 0x91, 0x85, 0x00, + 0xc1, 0x76, 0x85, 0x00, 0x69, 0x71, 0x85, 0x00, 0x41, 0x71, 0x85, 0x00, + 0xf9, 0x7f, 0x85, 0x00, 0x79, 0x70, 0x85, 0x00, 0xf1, 0x93, 0x85, 0x00, + 0x9d, 0x95, 0x85, 0x00, 0xf5, 0x74, 0x85, 0x00, 0x49, 0x74, 0x85, 0x00, + 0x6d, 0x78, 0x85, 0x00, 0xbd, 0x72, 0x85, 0x00, 0xed, 0x8a, 0x85, 0x00, + 0xc9, 0x8c, 0x85, 0x00, 0x99, 0x91, 0x85, 0x00, 0x59, 0x7d, 0x85, 0x00, + 0xbd, 0x71, 0x85, 0x00, 0x75, 0x81, 0x85, 0x00, 0x0d, 0x81, 0x85, 0x00, + 0xa9, 0x79, 0x85, 0x00, 0x21, 0x77, 0x85, 0x00, 0x21, 0x93, 0x85, 0x00, + 0x89, 0x92, 0x85, 0x00, 0xd1, 0x94, 0x85, 0x00, 0x95, 0x96, 0x85, 0x00, + 0x65, 0x83, 0x85, 0x00, 0xd9, 0x73, 0x85, 0x00, 0x65, 0x82, 0x85, 0x00, + 0xdd, 0xb5, 0x01, 0x00, 0x59, 0x75, 0x85, 0x00, 0x21, 0x76, 0x85, 0x00, + 0x55, 0x6f, 0x85, 0x00, 0x6d, 0x95, 0x85, 0x00, 0xe5, 0x83, 0x85, 0x00, + 0x29, 0x84, 0x85, 0x00, 0xad, 0x8f, 0x85, 0x00, 0xf1, 0x6e, 0x85, 0x00, + 0xef, 0x1f, 0x01, 0x00, 0x19, 0x10, 0x01, 0x00, 0x7b, 0x1c, 0x01, 0x00, + 0x87, 0x1c, 0x01, 0x00, 0x8d, 0x1a, 0x01, 0x00, 0xb5, 0x14, 0x01, 0x00, + 0x7d, 0x15, 0x01, 0x00, 0x25, 0x15, 0x01, 0x00, 0xed, 0x14, 0x01, 0x00, + 0xc1, 0x14, 0x01, 0x00, 0xbb, 0x14, 0x01, 0x00, 0x65, 0x22, 0x01, 0x00, + 0xdd, 0x1e, 0x01, 0x00, 0xdd, 0x13, 0x01, 0x00, 0x35, 0x10, 0x01, 0x00, + 0x25, 0x22, 0x01, 0x00, 0x2d, 0x22, 0x01, 0x00, 0x91, 0x13, 0x01, 0x00, + 0x67, 0x10, 0x01, 0x00, 0x21, 0x1d, 0x01, 0x00, 0x65, 0x10, 0x01, 0x00, + 0xab, 0x24, 0x01, 0x00, 0x1d, 0x27, 0x01, 0x00, 0x17, 0x1a, 0x01, 0x00, + 0xa5, 0x13, 0x01, 0x00, 0xb7, 0x1e, 0x01, 0x00, 0xb3, 0x1e, 0x01, 0x00, + 0x9d, 0x1e, 0x01, 0x00, 0x87, 0x1a, 0x01, 0x00, 0x5f, 0x10, 0x01, 0x00, + 0x59, 0x10, 0x01, 0x00, 0x0d, 0x22, 0x01, 0x00, 0x6d, 0x2a, 0x01, 0x00, + 0xd7, 0x1e, 0x01, 0x00, 0x05, 0x22, 0x01, 0x00, 0x1d, 0x14, 0x01, 0x00, + 0x3d, 0x22, 0x01, 0x00, 0xe1, 0x1f, 0x01, 0x00, 0xb3, 0x16, 0x01, 0x00, + 0xc9, 0x15, 0x01, 0x00, 0x9d, 0x1b, 0x01, 0x00, 0xb5, 0x16, 0x01, 0x00, + 0x7d, 0x1b, 0x01, 0x00, 0x83, 0x1b, 0x01, 0x00, 0x43, 0x22, 0x01, 0x00, + 0x25, 0x1a, 0x01, 0x00, 0xab, 0x18, 0x01, 0x00, 0x55, 0x16, 0x01, 0x00, + 0x11, 0x1a, 0x01, 0x00, 0xdf, 0x1e, 0x01, 0x00, 0xd9, 0xc1, 0x00, 0x00, + 0x15, 0xc2, 0x00, 0x00, 0x51, 0xc2, 0x00, 0x00, 0x7d, 0xc5, 0x00, 0x00, + 0x95, 0xca, 0x00, 0x00, 0x19, 0x0c, 0x02, 0x00, 0xfd, 0xca, 0x00, 0x00, + 0x05, 0xcb, 0x00, 0x00, 0x07, 0xd1, 0x00, 0x00, 0xa7, 0xce, 0x00, 0x00, + 0xa3, 0xcf, 0x00, 0x00, 0x1b, 0xcf, 0x00, 0x00, 0x89, 0x32, 0x00, 0x00, + 0xd1, 0x30, 0x00, 0x00, 0xa1, 0x30, 0x00, 0x00, 0xc3, 0x30, 0x00, 0x00, + 0x5d, 0x30, 0x00, 0x00, 0x49, 0x30, 0x00, 0x00, 0x4d, 0x07, 0x01, 0x00, + 0x51, 0x07, 0x01, 0x00, 0xeb, 0x32, 0x00, 0x00, 0x3b, 0x33, 0x00, 0x00, + 0x2d, 0x4b, 0x00, 0x00, 0x6d, 0xf2, 0x00, 0x00, 0x59, 0x3a, 0x00, 0x00, + 0x6b, 0xf2, 0x00, 0x00, 0x41, 0x56, 0x00, 0x00, 0xa9, 0x73, 0x00, 0x00, + 0x8d, 0x7d, 0x00, 0x00, 0xa1, 0x6a, 0x00, 0x00, 0xad, 0xea, 0x00, 0x00, + 0xd9, 0xea, 0x00, 0x00, 0xeb, 0xea, 0x00, 0x00, 0xbd, 0xeb, 0x00, 0x00, + 0x3f, 0x08, 0x01, 0x00, 0xed, 0xa1, 0x00, 0x00, 0x5d, 0xf2, 0x00, 0x00, + 0x59, 0xf2, 0x00, 0x00, 0x4d, 0xf2, 0x00, 0x00, 0x53, 0xf2, 0x00, 0x00, + 0x7b, 0xed, 0x00, 0x00, 0x65, 0xf2, 0x00, 0x00, 0x63, 0xf2, 0x00, 0x00, + 0x67, 0xf2, 0x00, 0x00, 0x69, 0xf2, 0x00, 0x00, 0x4b, 0xf2, 0x00, 0x00, + 0x51, 0xf2, 0x00, 0x00, 0x57, 0xf2, 0x00, 0x00, 0x5f, 0xf2, 0x00, 0x00, + 0x17, 0xb0, 0x00, 0x00, 0x03, 0xb0, 0x00, 0x00, 0x09, 0xb0, 0x00, 0x00, + 0x0d, 0xb0, 0x00, 0x00, 0x21, 0xb0, 0x00, 0x00, 0x6d, 0x07, 0x01, 0x00, + 0x73, 0x07, 0x01, 0x00, 0x85, 0x07, 0x01, 0x00, 0x7f, 0x07, 0x01, 0x00, + 0x83, 0x07, 0x01, 0x00, 0x71, 0x07, 0x01, 0x00, 0x89, 0x07, 0x01, 0x00, + 0x8b, 0x07, 0x01, 0x00, 0x87, 0x07, 0x01, 0x00, 0x79, 0x07, 0x01, 0x00, + 0x77, 0x07, 0x01, 0x00, 0x7b, 0x07, 0x01, 0x00, 0xa1, 0xee, 0x00, 0x00, + 0x53, 0x07, 0x01, 0x00, 0x57, 0x07, 0x01, 0x00, 0x59, 0x07, 0x01, 0x00, + 0x5d, 0x07, 0x01, 0x00, 0x5f, 0x07, 0x01, 0x00, 0x61, 0x07, 0x01, 0x00, + 0x63, 0x07, 0x01, 0x00, 0x65, 0x07, 0x01, 0x00, 0x69, 0x07, 0x01, 0x00, + 0x87, 0xf2, 0x00, 0x00, 0x83, 0xf2, 0x00, 0x00, 0x7b, 0xf2, 0x00, 0x00, + 0x89, 0xf2, 0x00, 0x00, 0x79, 0xf2, 0x00, 0x00, 0x71, 0xf2, 0x00, 0x00, + 0x7f, 0xf2, 0x00, 0x00, 0x6f, 0xf2, 0x00, 0x00, 0x73, 0xf2, 0x00, 0x00, + 0x85, 0xf2, 0x00, 0x00, 0xa7, 0xee, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x20, 0x00, 0x00, 0x00, 0x1f, 0x00, 0x00, 0x00, 0x50, 0x00, 0x00, 0x00, + 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x66, 0xb7, 0x01, 0x00, + 0x0a, 0x07, 0x08, 0x00, 0xb5, 0x12, 0x02, 0x00, 0x51, 0xfb, 0x80, 0x00, + 0xc3, 0x30, 0x00, 0x00, 0xc9, 0x2f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xd1, 0xf9, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x29, 0xfb, 0x80, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0x18, 0x00, 0x40, + 0x96, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xaa, 0xaa, + 0x03, 0x00, 0x40, 0x96, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x2d, 0xe9, 0xf7, 0x4f, 0xb1, 0xf1, 0x00, 0x0b, + 0x04, 0x46, 0x15, 0x46, 0x9a, 0x46, 0x4a, 0xdb, 0x43, 0x8a, 0x81, 0x8a, + 0x5a, 0x44, 0x4b, 0x43, 0x9a, 0x42, 0x44, 0xda, 0x80, 0x68, 0x08, 0xf0, + 0x4b, 0xdb, 0x00, 0x21, 0x01, 0x90, 0xa0, 0x68, 0x08, 0xf0, 0x18, 0xdd, + 0x43, 0x69, 0x06, 0x46, 0x43, 0xf0, 0x00, 0x43, 0x43, 0x61, 0x00, 0x27, + 0x1d, 0xe0, 0x1a, 0xf8, 0x01, 0x9b, 0x4f, 0xf0, 0x08, 0x08, 0x01, 0xe0, + 0xaf, 0x42, 0x18, 0xd0, 0x19, 0xf0, 0x01, 0x0f, 0x0d, 0xd0, 0x20, 0x46, + 0x31, 0x46, 0x07, 0xeb, 0x0b, 0x02, 0xfe, 0xf3, 0x05, 0xf7, 0x30, 0xb1, + 0x73, 0x69, 0x4f, 0xf0, 0xff, 0x30, 0x23, 0xf0, 0x00, 0x43, 0x73, 0x61, + 0x1f, 0xe0, 0x01, 0x37, 0xb8, 0xf1, 0x01, 0x08, 0x4f, 0xea, 0x59, 0x09, + 0xe6, 0xd1, 0xaf, 0x42, 0xdf, 0xdb, 0x73, 0x69, 0xa0, 0x68, 0x23, 0xf0, + 0x00, 0x43, 0x73, 0x61, 0x00, 0x21, 0x08, 0xf0, 0x59, 0xdc, 0xa0, 0x68, + 0x01, 0x21, 0x08, 0xf0, 0x55, 0xdc, 0x20, 0x46, 0x31, 0x46, 0xfe, 0xf3, + 0xff, 0xf2, 0xa0, 0x68, 0x01, 0x99, 0x08, 0xf0, 0xdd, 0xdc, 0x00, 0x20, + 0x01, 0xe0, 0x6f, 0xf0, 0x1c, 0x00, 0xbd, 0xe8, 0xfe, 0x8f, 0x2d, 0xe9, + 0xf0, 0x41, 0x1e, 0x46, 0x05, 0x46, 0x88, 0x46, 0x17, 0x46, 0x1e, 0xf0, + 0xcb, 0xf9, 0x43, 0x68, 0x41, 0x46, 0x9c, 0x69, 0x28, 0x46, 0x3a, 0x46, + 0x33, 0x46, 0xa0, 0x47, 0xbd, 0xe8, 0xf0, 0x81, 0x40, 0x7c, 0x70, 0x47, + 0x13, 0xb5, 0x00, 0xf0, 0x99, 0xd8, 0x78, 0xb1, 0x00, 0x24, 0x09, 0xe0, + 0x00, 0x22, 0x01, 0xa9, 0xff, 0xf3, 0x52, 0xf7, 0x01, 0x98, 0x03, 0x78, + 0x2c, 0x2b, 0x08, 0xbf, 0x01, 0x30, 0x01, 0x34, 0x03, 0x78, 0x00, 0x2b, + 0xf2, 0xd1, 0x00, 0xe0, 0x04, 0x46, 0x20, 0x46, 0x1c, 0xbd, 0x38, 0xb5, + 0xb0, 0xf8, 0x42, 0x30, 0x05, 0x46, 0xb3, 0xb1, 0x40, 0xf2, 0xe9, 0x34, + 0x02, 0xe0, 0x0a, 0x20, 0x03, 0xf0, 0x3e, 0xdf, 0x2b, 0x6b, 0x1a, 0x69, + 0x02, 0xf0, 0x70, 0x42, 0xb2, 0xf1, 0x00, 0x5f, 0x05, 0xd0, 0xb2, 0xf1, + 0x40, 0x5f, 0x02, 0xd0, 0x0a, 0xb1, 0x01, 0x3c, 0xef, 0xd1, 0x1a, 0x68, + 0x22, 0xf0, 0x10, 0x02, 0x1a, 0x60, 0x38, 0xbd, 0x70, 0xb5, 0x90, 0xf8, + 0x78, 0x31, 0x04, 0x46, 0xff, 0x2b, 0x1c, 0xd0, 0x0e, 0x4d, 0x40, 0x6a, + 0xeb, 0x6e, 0x98, 0x47, 0xd5, 0xf8, 0x9c, 0x50, 0x60, 0x6a, 0xa8, 0x47, + 0x01, 0x28, 0x0b, 0xd8, 0x94, 0xf8, 0x14, 0x12, 0x41, 0xb9, 0x0b, 0x46, + 0x20, 0x46, 0x08, 0x4a, 0x03, 0xf0, 0x40, 0xde, 0x01, 0x23, 0x84, 0xf8, + 0x14, 0x32, 0x70, 0xbd, 0x60, 0x6a, 0x94, 0xf8, 0x05, 0x61, 0xa8, 0x47, + 0x30, 0x18, 0x84, 0xf8, 0x06, 0x01, 0x70, 0xbd, 0xe0, 0xa6, 0x85, 0x00, + 0x3d, 0x98, 0x80, 0x00, 0x71, 0xb1, 0x91, 0xf8, 0x08, 0x32, 0x01, 0x2b, + 0x0a, 0xd0, 0x91, 0xf8, 0x75, 0x31, 0x3b, 0xb1, 0x4b, 0x69, 0x1a, 0x6a, + 0x03, 0x4b, 0x13, 0x40, 0x13, 0xb1, 0x08, 0x46, 0x0c, 0xf0, 0x04, 0xbf, + 0x70, 0x47, 0x00, 0xbf, 0x00, 0xfc, 0x01, 0x01, 0xd0, 0xf8, 0x80, 0x11, + 0x10, 0xb5, 0x04, 0x46, 0x99, 0xb1, 0x02, 0x23, 0xc0, 0x68, 0xd4, 0xf8, + 0x84, 0x21, 0x08, 0xf0, 0x27, 0xdb, 0x07, 0x4b, 0x1b, 0x68, 0x53, 0xb9, + 0xd4, 0xf8, 0x80, 0x11, 0xd4, 0xf8, 0x84, 0x21, 0xe0, 0x68, 0x4a, 0x40, + 0x02, 0x23, 0xbd, 0xe8, 0x10, 0x40, 0x08, 0xf0, 0x19, 0x9b, 0x10, 0xbd, + 0xa0, 0x07, 0x02, 0x00, 0xf8, 0xb5, 0x90, 0xf8, 0x17, 0x32, 0x04, 0x46, + 0x01, 0x2b, 0x74, 0xd0, 0x01, 0x23, 0x80, 0xf8, 0x17, 0x32, 0x00, 0x27, + 0x42, 0xe0, 0xa0, 0x68, 0x31, 0x46, 0x00, 0xf0, 0xa5, 0xdb, 0xd4, 0xf8, + 0xf0, 0x30, 0x1b, 0x68, 0x98, 0x42, 0x05, 0xd9, 0x28, 0x46, 0x00, 0x21, + 0x32, 0x46, 0x00, 0xf0, 0x31, 0xdb, 0x41, 0xe0, 0x20, 0x46, 0xff, 0xf7, + 0x8b, 0xff, 0x35, 0x69, 0x00, 0x23, 0xab, 0x71, 0x94, 0xf8, 0x78, 0x31, + 0x31, 0x46, 0x2b, 0x72, 0x94, 0xf8, 0x06, 0x31, 0x84, 0xf8, 0x07, 0x31, + 0x6b, 0x72, 0xd4, 0xf8, 0xfc, 0x31, 0x60, 0x6a, 0x01, 0x33, 0xc4, 0xf8, + 0xfc, 0x31, 0x6a, 0x79, 0x25, 0x4b, 0x82, 0xf0, 0x80, 0x02, 0xd2, 0x09, + 0x5b, 0x6a, 0x98, 0x47, 0xb0, 0xb9, 0xd4, 0xf8, 0xf8, 0x20, 0x6b, 0x79, + 0x7a, 0xb1, 0x18, 0x07, 0x0d, 0xd0, 0x69, 0x78, 0x2b, 0x78, 0x12, 0x69, + 0x43, 0xea, 0x01, 0x23, 0x0f, 0x33, 0x1b, 0x09, 0x19, 0x0a, 0x18, 0xbf, + 0x00, 0x23, 0x93, 0x71, 0x94, 0xf8, 0x78, 0x31, 0x13, 0x72, 0xc4, 0xf8, + 0xf8, 0x60, 0x01, 0x27, 0xd4, 0xf8, 0xf0, 0x30, 0x1b, 0x68, 0x01, 0x2b, + 0x08, 0xd9, 0x04, 0xf1, 0x28, 0x05, 0x28, 0x46, 0x00, 0x21, 0x00, 0xf0, + 0x73, 0xda, 0x06, 0x46, 0x00, 0x28, 0xae, 0xd1, 0x00, 0x23, 0x84, 0xf8, + 0x17, 0x32, 0xc4, 0xf8, 0xf8, 0x30, 0x2f, 0xb1, 0x63, 0x69, 0x04, 0x22, + 0x5a, 0x64, 0x20, 0x46, 0x07, 0xf0, 0x60, 0xdf, 0xe3, 0x8d, 0xd4, 0xf8, + 0xc8, 0x21, 0x93, 0x42, 0x04, 0xd9, 0x20, 0x69, 0xbd, 0xe8, 0xf8, 0x40, + 0x01, 0xf0, 0xe6, 0x9d, 0xd4, 0xf8, 0xcc, 0x21, 0x93, 0x42, 0x04, 0xd2, + 0x20, 0x69, 0xbd, 0xe8, 0xf8, 0x40, 0x01, 0xf0, 0xcf, 0x9d, 0xf8, 0xbd, + 0xe0, 0xa6, 0x85, 0x00, 0x11, 0xf4, 0x7c, 0x4f, 0x2d, 0xe9, 0xf0, 0x41, + 0x04, 0x46, 0x0d, 0x46, 0x56, 0x4e, 0x66, 0xd0, 0x11, 0xf4, 0x80, 0x68, + 0x0e, 0xd0, 0xf3, 0x6d, 0x40, 0x6a, 0x98, 0x47, 0x33, 0x6b, 0x07, 0x1c, + 0x60, 0x6a, 0x18, 0xbf, 0x01, 0x27, 0x98, 0x47, 0x10, 0xf1, 0x00, 0x08, + 0x18, 0xbf, 0x4f, 0xf0, 0x01, 0x08, 0x00, 0xe0, 0x47, 0x46, 0x2a, 0x05, + 0x0c, 0xd5, 0xf3, 0x6d, 0x60, 0x6a, 0x98, 0x47, 0x33, 0x6b, 0x00, 0x28, + 0x18, 0xbf, 0x01, 0x27, 0x60, 0x6a, 0x98, 0x47, 0x00, 0x28, 0x18, 0xbf, + 0x4f, 0xf0, 0x01, 0x08, 0xeb, 0x04, 0x0c, 0xd5, 0xf3, 0x6d, 0x60, 0x6a, + 0x98, 0x47, 0x33, 0x6b, 0x00, 0x28, 0x18, 0xbf, 0x01, 0x27, 0x60, 0x6a, + 0x98, 0x47, 0x00, 0x28, 0x18, 0xbf, 0x4f, 0xf0, 0x01, 0x08, 0xa8, 0x04, + 0x04, 0xd5, 0xd4, 0xf8, 0x38, 0x31, 0x01, 0x33, 0xc4, 0xf8, 0x38, 0x31, + 0x69, 0x04, 0x09, 0xd5, 0xd4, 0xf8, 0x3c, 0x31, 0x01, 0x27, 0x01, 0x33, + 0xc4, 0xf8, 0x3c, 0x31, 0xd4, 0xf8, 0x3c, 0x31, 0xd4, 0xf8, 0x38, 0x31, + 0x2a, 0x04, 0x10, 0xd5, 0xd4, 0xf8, 0x40, 0x31, 0xd4, 0xf8, 0xf4, 0x10, + 0x01, 0x33, 0xc4, 0xf8, 0x40, 0x31, 0x31, 0xb1, 0xa0, 0x68, 0x01, 0x22, + 0x04, 0xf0, 0xe0, 0xd8, 0x00, 0x23, 0xc4, 0xf8, 0xf4, 0x30, 0x4f, 0xf0, + 0x01, 0x08, 0x1f, 0xb9, 0xb8, 0xf1, 0x00, 0x0f, 0x03, 0xd1, 0x0a, 0xe0, + 0xb8, 0xf1, 0x00, 0x0f, 0x04, 0xd0, 0x20, 0x46, 0x00, 0x21, 0x07, 0xf0, + 0xbd, 0xdd, 0x17, 0xb1, 0x20, 0x46, 0x07, 0xf0, 0x07, 0xd9, 0xeb, 0x01, + 0x02, 0xd5, 0x20, 0x46, 0x0c, 0xf0, 0xf2, 0xfd, 0x15, 0xf4, 0x90, 0x3f, + 0x12, 0xd1, 0xb3, 0x6f, 0x60, 0x6a, 0x98, 0x47, 0x70, 0xb9, 0x05, 0x46, + 0x2d, 0xe0, 0x20, 0x46, 0x07, 0xf0, 0x08, 0xda, 0xd4, 0xf8, 0xd8, 0x31, + 0x01, 0x35, 0x9d, 0x42, 0x05, 0xd3, 0x23, 0x6a, 0x43, 0xf4, 0x80, 0x33, + 0x23, 0x62, 0x06, 0xe0, 0x00, 0x25, 0xb3, 0x6e, 0x60, 0x6a, 0x98, 0x47, + 0x01, 0x46, 0x00, 0x28, 0xeb, 0xd1, 0xd4, 0xf8, 0x0c, 0x02, 0x20, 0xb1, + 0x03, 0x78, 0x13, 0xb1, 0x00, 0x21, 0x00, 0xf0, 0x1f, 0xd8, 0x20, 0x46, + 0xff, 0xf7, 0x8e, 0xfe, 0x94, 0xf8, 0x07, 0x31, 0x94, 0xf8, 0x06, 0x21, + 0x9a, 0x42, 0x08, 0xd0, 0x94, 0xf8, 0x05, 0x21, 0x9b, 0x1a, 0xdb, 0xb2, + 0x02, 0x2b, 0x02, 0xd8, 0x20, 0x46, 0x07, 0xf0, 0x07, 0xd9, 0xd4, 0xf8, + 0xd8, 0x01, 0x85, 0x42, 0x34, 0xbf, 0x00, 0x20, 0x01, 0x20, 0xbd, 0xe8, + 0xf0, 0x81, 0x00, 0xbf, 0xe0, 0xa6, 0x85, 0x00, 0x2d, 0xe9, 0xf0, 0x41, + 0x04, 0x46, 0x0d, 0x46, 0x16, 0x46, 0x98, 0x46, 0x40, 0xf2, 0xe9, 0x37, + 0x02, 0xe0, 0x0a, 0x20, 0x03, 0xf0, 0x94, 0xdd, 0x63, 0x69, 0x1a, 0x6d, + 0x00, 0x2a, 0x04, 0xda, 0x01, 0x3f, 0xf6, 0xd1, 0x38, 0x46, 0xbd, 0xe8, + 0xf0, 0x81, 0x06, 0x9a, 0x46, 0x44, 0x36, 0x02, 0xb2, 0xf1, 0x80, 0x7f, + 0x46, 0xf0, 0x00, 0x46, 0x03, 0xd1, 0x2a, 0x78, 0x42, 0xf0, 0x80, 0x72, + 0xb6, 0x18, 0x1e, 0x65, 0x40, 0xf2, 0xe9, 0x36, 0x02, 0xe0, 0x0a, 0x20, + 0x03, 0xf0, 0x78, 0xdd, 0x63, 0x69, 0x1b, 0x6d, 0x00, 0x2b, 0x03, 0xdb, + 0x2b, 0x70, 0x01, 0x20, 0xbd, 0xe8, 0xf0, 0x81, 0x01, 0x3e, 0xf2, 0xd1, + 0x30, 0x46, 0xbd, 0xe8, 0xf0, 0x81, 0xd0, 0xf8, 0x94, 0x31, 0x10, 0xb5, + 0x99, 0x42, 0x04, 0x46, 0x03, 0xd8, 0x0c, 0xf0, 0x73, 0xfd, 0xe0, 0x8d, + 0x10, 0xbd, 0x00, 0x20, 0x10, 0xbd, 0x00, 0x23, 0xc2, 0x6b, 0x0a, 0xb1, + 0x01, 0x3a, 0xc2, 0x63, 0x01, 0x33, 0xdb, 0xb2, 0x10, 0x30, 0x10, 0x2b, + 0xf6, 0xd1, 0x70, 0x47, 0x03, 0x68, 0x2d, 0xe9, 0xf7, 0x4f, 0x01, 0x2a, + 0x14, 0xbf, 0x4f, 0xf0, 0x2a, 0x08, 0x4f, 0xf0, 0x32, 0x08, 0x05, 0x46, + 0x0e, 0x46, 0x58, 0x68, 0x41, 0x46, 0x91, 0x46, 0x04, 0xf0, 0x58, 0xd8, + 0x07, 0x46, 0x48, 0xb9, 0x2b, 0x68, 0x4f, 0xf0, 0xff, 0x30, 0x1b, 0x68, + 0xd3, 0xf8, 0x8c, 0x30, 0x1a, 0x6d, 0x01, 0x32, 0x1a, 0x65, 0x64, 0xe0, + 0x06, 0xf1, 0x0e, 0x0b, 0x59, 0x46, 0x04, 0x69, 0x04, 0x22, 0x01, 0xa8, + 0xff, 0xf3, 0x40, 0xf1, 0x01, 0x9a, 0x4a, 0xf6, 0xfe, 0x13, 0x12, 0xba, + 0xb3, 0xeb, 0x12, 0x4f, 0x0c, 0xbf, 0x2c, 0x49, 0x06, 0xf1, 0x08, 0x01, + 0x20, 0x46, 0x06, 0x22, 0x05, 0xf1, 0x28, 0x0a, 0xff, 0xf3, 0x30, 0xf1, + 0xa0, 0x1d, 0x51, 0x46, 0x06, 0x22, 0xff, 0xf3, 0x2b, 0xf1, 0xb9, 0xf1, + 0x00, 0x0f, 0x0e, 0xd0, 0x00, 0x23, 0x23, 0x73, 0x84, 0xf8, 0x0d, 0x80, + 0x04, 0xf1, 0x0e, 0x00, 0x21, 0x49, 0x06, 0x22, 0xff, 0xf3, 0x1e, 0xf1, + 0x08, 0x23, 0x23, 0x75, 0x06, 0x23, 0x63, 0x75, 0x03, 0xe0, 0x08, 0x23, + 0x23, 0x73, 0x06, 0x23, 0x63, 0x73, 0xa8, 0xf1, 0x1c, 0x08, 0x44, 0x44, + 0x31, 0x46, 0x06, 0x22, 0x20, 0x46, 0xff, 0xf3, 0x0d, 0xf1, 0x00, 0x23, + 0xa3, 0x71, 0x02, 0x23, 0xe3, 0x71, 0x51, 0x46, 0x06, 0x22, 0x04, 0xf1, + 0x08, 0x00, 0xff, 0xf3, 0x03, 0xf1, 0x06, 0xf1, 0x18, 0x01, 0x04, 0x22, + 0x04, 0xf1, 0x0e, 0x00, 0xff, 0xf3, 0xfc, 0xf0, 0x06, 0xf1, 0x08, 0x01, + 0x06, 0x22, 0x04, 0xf1, 0x12, 0x00, 0xff, 0xf3, 0xf5, 0xf0, 0x59, 0x46, + 0x04, 0x22, 0x04, 0xf1, 0x18, 0x00, 0xff, 0xf3, 0xef, 0xf0, 0xd5, 0xf8, + 0x5c, 0x31, 0x28, 0x68, 0x01, 0x33, 0xc5, 0xf8, 0x5c, 0x31, 0x39, 0x46, + 0xd5, 0xf8, 0x68, 0x21, 0x25, 0xf0, 0xfa, 0xd9, 0x01, 0x20, 0xbd, 0xe8, + 0xfe, 0x8f, 0x00, 0xbf, 0x2c, 0x9e, 0x85, 0x00, 0x14, 0xd2, 0x85, 0x00, + 0x10, 0xb5, 0x03, 0x68, 0xd3, 0xf8, 0x00, 0x48, 0x1b, 0x68, 0x93, 0xf8, + 0xab, 0x30, 0x6b, 0xb1, 0xff, 0xf7, 0x63, 0xff, 0x08, 0xe0, 0xa1, 0x68, + 0x29, 0xb1, 0x01, 0x20, 0x00, 0xf0, 0x80, 0xfa, 0x08, 0xb1, 0xff, 0xf7, + 0x5a, 0xff, 0x24, 0x68, 0x00, 0x2c, 0xf4, 0xd1, 0x00, 0x20, 0x10, 0xbd, + 0xf8, 0xb5, 0x06, 0x68, 0x05, 0x46, 0x0f, 0x46, 0x70, 0x68, 0x4f, 0xf4, + 0xbc, 0x71, 0x03, 0xf0, 0x67, 0xdf, 0x04, 0x46, 0x88, 0xb1, 0x00, 0x21, + 0x4f, 0xf4, 0xbc, 0x72, 0xff, 0xf3, 0x18, 0xf1, 0xd5, 0xf8, 0x60, 0x31, + 0x26, 0x60, 0xc4, 0xf8, 0x60, 0x31, 0x95, 0xf8, 0x64, 0x31, 0xc4, 0xf8, + 0x68, 0x71, 0x84, 0xf8, 0x64, 0x31, 0x6b, 0x68, 0x63, 0x60, 0x20, 0x46, + 0xf8, 0xbd, 0x01, 0x46, 0x28, 0xb1, 0x03, 0x68, 0x4f, 0xf4, 0xbc, 0x72, + 0x58, 0x68, 0x03, 0xf0, 0x59, 0x9f, 0x70, 0x47, 0xf8, 0xb5, 0xc3, 0x68, + 0x05, 0x46, 0x0e, 0x46, 0x58, 0x68, 0x38, 0x21, 0x17, 0x46, 0x03, 0xf0, + 0x3f, 0xdf, 0x04, 0x46, 0x00, 0x28, 0x2b, 0xd0, 0x00, 0x21, 0x38, 0x22, + 0xff, 0xf3, 0xf0, 0xf0, 0x01, 0x23, 0x31, 0x46, 0x23, 0x60, 0x63, 0x60, + 0xa3, 0x60, 0x06, 0x22, 0x04, 0xf1, 0x0c, 0x00, 0xff, 0xf3, 0x82, 0xf0, + 0x73, 0x8e, 0x06, 0xf1, 0x09, 0x01, 0xa3, 0x74, 0x33, 0x7a, 0x04, 0xf1, + 0x14, 0x00, 0xe3, 0x74, 0x32, 0x7a, 0xff, 0xf3, 0x77, 0xf0, 0x76, 0x8d, + 0x28, 0x46, 0xa6, 0x86, 0xe7, 0x86, 0x21, 0x46, 0x38, 0x22, 0x21, 0x23, + 0x0b, 0xf0, 0x82, 0xdd, 0x50, 0xb1, 0xeb, 0x68, 0x21, 0x46, 0x58, 0x68, + 0x38, 0x22, 0x03, 0xf0, 0x23, 0xdf, 0x4f, 0xf0, 0xff, 0x30, 0xf8, 0xbd, + 0x6f, 0xf0, 0x1a, 0x00, 0xf8, 0xbd, 0x00, 0x00, 0x70, 0xb5, 0x0d, 0x46, + 0x03, 0x80, 0x19, 0x46, 0x90, 0xf8, 0xcf, 0x30, 0x90, 0xb0, 0x14, 0x46, + 0x17, 0x4e, 0x4f, 0xf0, 0xff, 0x32, 0x00, 0x95, 0x7b, 0xb9, 0x02, 0x92, + 0x03, 0x92, 0x04, 0x92, 0x05, 0x92, 0x0c, 0x22, 0x01, 0x93, 0x06, 0x93, + 0x07, 0x93, 0x08, 0x93, 0x09, 0x93, 0x0a, 0x96, 0x0b, 0x90, 0x0c, 0x92, + 0x0d, 0x93, 0x0e, 0x93, 0x12, 0xe0, 0x5b, 0xb2, 0x00, 0x25, 0x02, 0x92, + 0x03, 0x92, 0x04, 0x92, 0x05, 0x92, 0x07, 0x93, 0x00, 0xf1, 0xd0, 0x02, + 0x0c, 0x23, 0x01, 0x95, 0x06, 0x92, 0x08, 0x95, 0x09, 0x95, 0x0a, 0x96, + 0x0b, 0x90, 0x0c, 0x93, 0x0d, 0x95, 0x0e, 0x95, 0x04, 0x4a, 0x23, 0x46, + 0xc0, 0x68, 0x23, 0xf0, 0xeb, 0xdf, 0x10, 0xb0, 0x70, 0xbd, 0x00, 0xbf, + 0x75, 0xf1, 0x00, 0x00, 0x2c, 0x9e, 0x85, 0x00, 0x1f, 0xb5, 0x83, 0x6d, + 0x04, 0x46, 0x01, 0x2b, 0x16, 0xd1, 0xb0, 0xf8, 0x58, 0x31, 0xdb, 0x07, + 0x12, 0xd4, 0xc3, 0x68, 0x93, 0xf8, 0x70, 0x32, 0x73, 0xb9, 0x02, 0xaa, + 0x03, 0xa9, 0x01, 0xab, 0x0c, 0xf0, 0xcb, 0xf8, 0x02, 0x9a, 0x3a, 0xb1, + 0x20, 0x46, 0x03, 0x99, 0x01, 0x9b, 0xff, 0xf7, 0xab, 0xff, 0x08, 0xb9, + 0x02, 0x23, 0xa3, 0x65, 0x1f, 0xbd, 0x08, 0xb5, 0xb0, 0xf8, 0x58, 0x21, + 0x69, 0xb1, 0x42, 0xf0, 0x01, 0x02, 0xa0, 0xf8, 0x58, 0x21, 0x82, 0x6d, + 0x02, 0x2a, 0x12, 0xd1, 0xc3, 0x68, 0x0c, 0x21, 0xd3, 0xf8, 0x68, 0x01, + 0x51, 0xf0, 0x12, 0xdb, 0x0b, 0xe0, 0xd1, 0x07, 0x09, 0xd5, 0x22, 0xf0, + 0x01, 0x02, 0xa0, 0xf8, 0x58, 0x21, 0x82, 0x6d, 0x1a, 0xb1, 0x01, 0x22, + 0x82, 0x65, 0xff, 0xf7, 0xc5, 0xff, 0x00, 0x20, 0x08, 0xbd, 0x70, 0x47, + 0x10, 0xb5, 0x0c, 0x46, 0x41, 0xb1, 0x8b, 0x68, 0x23, 0xb9, 0xc0, 0x6f, + 0x09, 0x68, 0xff, 0xf7, 0x19, 0xff, 0xa0, 0x60, 0xa0, 0x68, 0x10, 0xbd, + 0xc0, 0x6f, 0x10, 0xbd, 0xf8, 0xb5, 0x8c, 0x69, 0x0b, 0x46, 0x21, 0x69, + 0x8b, 0x42, 0x03, 0xd0, 0xdd, 0x6a, 0x15, 0xb1, 0x2f, 0x68, 0x01, 0xe0, + 0x00, 0x25, 0x2f, 0x46, 0x63, 0x68, 0x11, 0x46, 0xd8, 0x68, 0x03, 0xf0, + 0xb9, 0xde, 0xa3, 0x68, 0x06, 0x46, 0x1b, 0x68, 0x93, 0xf8, 0x95, 0x30, + 0x1b, 0xb1, 0xc3, 0x8a, 0x43, 0xf0, 0x80, 0x03, 0xc3, 0x82, 0x63, 0x68, + 0x93, 0xf8, 0xab, 0x30, 0x8b, 0xb1, 0x20, 0x46, 0x29, 0x46, 0xff, 0xf7, + 0xcf, 0xff, 0x60, 0xb1, 0x31, 0x46, 0x0a, 0xf0, 0xbd, 0xd8, 0x02, 0x28, + 0x07, 0xd1, 0x63, 0x68, 0x31, 0x46, 0xd8, 0x68, 0x01, 0x22, 0x03, 0xf0, + 0x7d, 0xde, 0x01, 0x20, 0xf8, 0xbd, 0xa0, 0x68, 0x31, 0x46, 0x3a, 0x46, + 0x25, 0xf0, 0xb8, 0xd8, 0x00, 0x30, 0x18, 0xbf, 0x01, 0x20, 0xf8, 0xbd, + 0x08, 0xb5, 0x80, 0x68, 0x00, 0xf0, 0x62, 0xfc, 0x00, 0x20, 0x08, 0xbd, + 0x10, 0xb5, 0x04, 0x46, 0xff, 0xf7, 0xf6, 0xff, 0xa0, 0x68, 0xbd, 0xe8, + 0x10, 0x40, 0x03, 0xf0, 0xc1, 0xbb, 0x00, 0x00, 0x38, 0xb5, 0x05, 0x46, + 0x6b, 0x68, 0x80, 0x68, 0x1b, 0x7e, 0xb3, 0xb9, 0x02, 0xf0, 0x6d, 0xf9, + 0x04, 0x46, 0x20, 0xb9, 0xd5, 0xf8, 0x80, 0x00, 0x0a, 0xf0, 0xf4, 0xf9, + 0x04, 0x46, 0x09, 0xf0, 0x51, 0xfc, 0x6b, 0x68, 0xd3, 0xf8, 0x9c, 0x10, + 0x41, 0xb1, 0x0b, 0x78, 0x33, 0xb1, 0x04, 0x4b, 0x00, 0x22, 0x18, 0x68, + 0xff, 0xf3, 0xca, 0xf5, 0x00, 0xe0, 0x00, 0x24, 0x20, 0x46, 0x38, 0xbd, + 0x20, 0x08, 0x02, 0x00, 0x10, 0xb5, 0x43, 0x68, 0x04, 0x46, 0x1b, 0x7e, + 0x53, 0xb1, 0xd0, 0xf8, 0x80, 0x00, 0x0a, 0xf0, 0xec, 0xf9, 0xa0, 0x68, + 0x05, 0xf0, 0x03, 0xfb, 0x63, 0x68, 0x00, 0x22, 0x83, 0xf8, 0x20, 0x20, + 0x10, 0xbd, 0x08, 0xb5, 0x80, 0x69, 0xff, 0xf7, 0xeb, 0xff, 0x00, 0x20, + 0x08, 0xbd, 0x00, 0x00, 0x1f, 0xb5, 0x08, 0x4a, 0x03, 0x46, 0x00, 0x92, + 0x07, 0x4a, 0x08, 0x46, 0x01, 0x92, 0x07, 0x4a, 0x07, 0x49, 0xd2, 0x69, + 0x02, 0x92, 0x1a, 0x68, 0x06, 0x4b, 0xff, 0xf3, 0x15, 0xf2, 0x05, 0xb0, + 0x00, 0xbd, 0x00, 0xbf, 0xf7, 0xba, 0x01, 0x00, 0xbc, 0xba, 0x01, 0x00, + 0xfc, 0x07, 0x02, 0x00, 0xc8, 0xba, 0x01, 0x00, 0xeb, 0xba, 0x01, 0x00, + 0x2d, 0xe9, 0xf8, 0x43, 0x04, 0x46, 0x08, 0x46, 0x15, 0x46, 0x0d, 0xf0, + 0x81, 0xf9, 0x01, 0x46, 0x10, 0xb9, 0xd4, 0xf8, 0x10, 0x90, 0x01, 0xe0, + 0xd0, 0xf8, 0x04, 0x90, 0xa2, 0x68, 0xd9, 0xf8, 0x24, 0x70, 0x12, 0x68, + 0x2b, 0x69, 0x92, 0xf8, 0x95, 0x20, 0x1a, 0xb1, 0xee, 0x8a, 0xc6, 0xf3, + 0xc0, 0x26, 0x09, 0xe0, 0x1e, 0x7b, 0x5b, 0x7b, 0x43, 0xea, 0x06, 0x26, + 0x48, 0xf6, 0x6c, 0x03, 0xf3, 0x1a, 0x5e, 0x42, 0x46, 0xeb, 0x03, 0x06, + 0xd6, 0xb9, 0x63, 0x68, 0x93, 0xf8, 0xab, 0x30, 0xcb, 0xb1, 0x20, 0x46, + 0xff, 0xf7, 0x26, 0xff, 0xa8, 0xb1, 0x29, 0x46, 0x09, 0xf0, 0x06, 0xdf, + 0x04, 0x28, 0x01, 0xd0, 0x01, 0x28, 0x04, 0xd1, 0x63, 0x68, 0x29, 0x46, + 0xd8, 0x68, 0x00, 0x22, 0x4c, 0xe0, 0xa0, 0xf1, 0x05, 0x0c, 0xdc, 0xf1, + 0x00, 0x08, 0x48, 0xeb, 0x0c, 0x08, 0x03, 0xe0, 0x4f, 0xf0, 0x00, 0x08, + 0x00, 0xe0, 0xb0, 0x46, 0x63, 0x68, 0x93, 0xf8, 0x95, 0x30, 0x1b, 0xb1, + 0x16, 0xb9, 0xab, 0x8a, 0x2d, 0x33, 0xab, 0x82, 0x00, 0x2f, 0x33, 0xd0, + 0x06, 0xbb, 0xfb, 0x69, 0xd8, 0x07, 0x0b, 0xd5, 0x63, 0x7d, 0x4b, 0xb1, + 0x20, 0x46, 0x29, 0x46, 0x0c, 0xf0, 0xf2, 0xdb, 0x20, 0xb9, 0x63, 0x68, + 0x29, 0x46, 0xd8, 0x68, 0x32, 0x46, 0x27, 0xe0, 0xb8, 0xf1, 0x00, 0x0f, + 0x0e, 0xd1, 0x63, 0x68, 0x93, 0xf8, 0x96, 0x30, 0x53, 0xb1, 0xd4, 0xf8, + 0x84, 0x00, 0x29, 0x46, 0x0d, 0xf0, 0x4f, 0xf8, 0x20, 0xb9, 0x63, 0x68, + 0x29, 0x46, 0xd8, 0x68, 0x42, 0x46, 0x15, 0xe0, 0x63, 0x68, 0x29, 0x46, + 0xd8, 0x68, 0x03, 0xf0, 0xf1, 0xdd, 0x3b, 0x69, 0x04, 0x46, 0xdb, 0x68, + 0x48, 0x46, 0x39, 0x46, 0x22, 0x46, 0x98, 0x47, 0x60, 0xb1, 0x20, 0x46, + 0xbd, 0xe8, 0xf8, 0x43, 0x03, 0xf0, 0x20, 0x9d, 0x63, 0x68, 0x29, 0x46, + 0xd8, 0x68, 0x3a, 0x46, 0xbd, 0xe8, 0xf8, 0x43, 0x03, 0xf0, 0x82, 0x9d, + 0xbd, 0xe8, 0xf8, 0x83, 0x4a, 0x6a, 0x08, 0xb5, 0x42, 0xf4, 0x80, 0x12, + 0x91, 0xf8, 0x43, 0x30, 0x4a, 0x62, 0xd0, 0xf8, 0x88, 0x20, 0x03, 0xf0, + 0x07, 0x03, 0xd3, 0x18, 0x93, 0xf8, 0x80, 0x20, 0x01, 0x32, 0x83, 0xf8, + 0x80, 0x20, 0xd0, 0xf8, 0x88, 0x30, 0x01, 0x22, 0x83, 0xf8, 0x86, 0x20, + 0xd0, 0xf8, 0x88, 0x30, 0x93, 0xf8, 0x81, 0x10, 0x93, 0xf8, 0x7b, 0x20, + 0x91, 0x42, 0x11, 0xd2, 0x93, 0xf8, 0x80, 0x10, 0x93, 0xf8, 0x7a, 0x20, + 0x91, 0x42, 0x0b, 0xd2, 0x93, 0xf8, 0x82, 0x10, 0x93, 0xf8, 0x7c, 0x20, + 0x91, 0x42, 0x05, 0xd2, 0x93, 0xf8, 0x83, 0x20, 0x93, 0xf8, 0x7d, 0x30, + 0x9a, 0x42, 0x01, 0xd3, 0x0d, 0xf0, 0x34, 0xd8, 0x00, 0x20, 0x08, 0xbd, + 0x73, 0xb5, 0x14, 0x46, 0x05, 0x46, 0x11, 0x46, 0x40, 0x6f, 0xff, 0xf7, + 0x8a, 0xfe, 0x63, 0x68, 0x11, 0x2b, 0x08, 0xd0, 0x12, 0x2b, 0x01, 0xd0, + 0x10, 0x2b, 0x1c, 0xd1, 0xa3, 0x78, 0x03, 0xf0, 0x01, 0x03, 0x2b, 0x75, + 0x17, 0xe0, 0x02, 0xaa, 0x00, 0x23, 0x42, 0xf8, 0x04, 0x3d, 0xa8, 0x68, + 0x94, 0xf8, 0x2f, 0x10, 0x3b, 0xf0, 0xde, 0xdf, 0x06, 0x46, 0x60, 0xb1, + 0x83, 0x79, 0x23, 0xb9, 0x61, 0x88, 0xc1, 0xf3, 0x80, 0x01, 0x26, 0xf0, + 0x97, 0xdf, 0xb3, 0x79, 0x1b, 0xb1, 0xa8, 0x68, 0x31, 0x46, 0x0b, 0xf0, + 0x1e, 0xfd, 0x7c, 0xbd, 0x01, 0x28, 0x0c, 0xbf, 0x88, 0x68, 0x00, 0x20, + 0x70, 0x47, 0x64, 0x29, 0x11, 0xdc, 0x63, 0x29, 0x1e, 0xda, 0x4a, 0x29, + 0x1c, 0xd0, 0x06, 0xdc, 0x07, 0x29, 0x1c, 0xdb, 0x08, 0x29, 0x17, 0xdd, + 0x3c, 0x29, 0x18, 0xd1, 0x14, 0xe0, 0x50, 0x29, 0x12, 0xd0, 0x14, 0xdb, + 0x5c, 0x39, 0x03, 0x29, 0x0d, 0xe0, 0xc3, 0x29, 0x04, 0xdc, 0xc2, 0x29, + 0x0a, 0xda, 0xa8, 0x39, 0x02, 0x29, 0x06, 0xe0, 0xb1, 0xf5, 0x84, 0x7f, + 0x04, 0xd0, 0x06, 0xdb, 0xa1, 0xf5, 0x89, 0x71, 0x01, 0x29, 0x02, 0xd8, + 0x6f, 0xf0, 0x16, 0x00, 0x70, 0x47, 0x00, 0x20, 0x70, 0x47, 0xc8, 0x88, + 0x10, 0xf0, 0x08, 0x00, 0x18, 0xbf, 0x6f, 0xf0, 0x16, 0x00, 0x70, 0x47, + 0x4f, 0xf0, 0xff, 0x33, 0x10, 0xb5, 0xa0, 0xf8, 0x3c, 0x32, 0x04, 0x46, + 0x00, 0xf5, 0x0e, 0x70, 0x06, 0x30, 0x00, 0x21, 0x0c, 0x22, 0xfe, 0xf3, + 0x6f, 0xf6, 0x23, 0x68, 0x5b, 0x6b, 0x23, 0xb9, 0x4f, 0xf0, 0xff, 0x33, + 0xa4, 0xf8, 0x40, 0x32, 0x0b, 0xe0, 0x0f, 0x23, 0xa4, 0xf8, 0x3e, 0x32, + 0xf0, 0x23, 0xa4, 0xf8, 0x40, 0x32, 0x4f, 0xf4, 0x70, 0x63, 0xa4, 0xf8, + 0x42, 0x32, 0x4f, 0xf2, 0x00, 0x03, 0xa4, 0xf8, 0x44, 0x32, 0x10, 0xbd, + 0x2d, 0xe9, 0xf0, 0x4f, 0x87, 0xb0, 0x17, 0x46, 0x03, 0x93, 0xd2, 0xf8, + 0x10, 0x80, 0x69, 0x4b, 0x52, 0x68, 0xdd, 0xf8, 0x40, 0xa0, 0x13, 0x40, + 0x83, 0x46, 0x0d, 0x46, 0x0e, 0x69, 0x00, 0x2b, 0x14, 0xbf, 0x4f, 0xf0, + 0x0c, 0x09, 0x4f, 0xf0, 0x0a, 0x09, 0xba, 0xf1, 0x00, 0x0f, 0x04, 0xd0, + 0x9a, 0xf9, 0x0e, 0x30, 0x99, 0x44, 0x1f, 0xfa, 0x89, 0xf9, 0xab, 0x8a, + 0xc9, 0xeb, 0x06, 0x04, 0x4b, 0x44, 0xab, 0x82, 0x4a, 0x46, 0x2c, 0x61, + 0x20, 0x46, 0x00, 0x21, 0xfe, 0xf3, 0x30, 0xf6, 0x12, 0x9b, 0x09, 0xf1, + 0x0e, 0x09, 0xa3, 0xf8, 0x00, 0x90, 0x98, 0xf8, 0x06, 0x30, 0xfb, 0xb1, + 0x31, 0x46, 0x06, 0x22, 0x20, 0x1d, 0xfe, 0xf3, 0xbf, 0xf5, 0x04, 0xf1, + 0x0a, 0x00, 0x08, 0xf1, 0xbc, 0x01, 0x06, 0x22, 0xfe, 0xf3, 0xb8, 0xf5, + 0xba, 0xf1, 0x00, 0x0f, 0x04, 0xd1, 0x7a, 0x68, 0x4c, 0x4b, 0x13, 0x40, + 0x00, 0x2b, 0x3f, 0xd0, 0xb1, 0x1d, 0x06, 0x22, 0x04, 0xa8, 0xfe, 0xf3, + 0xab, 0xf5, 0x04, 0xf1, 0x10, 0x00, 0x04, 0xa9, 0x06, 0x22, 0xfe, 0xf3, + 0xa5, 0xf5, 0x33, 0xe0, 0x98, 0xf8, 0x12, 0x30, 0x20, 0x1d, 0xe3, 0xb1, + 0xd8, 0xf8, 0xcc, 0x30, 0x1b, 0x06, 0x18, 0xd4, 0x08, 0xf1, 0xbc, 0x01, + 0x06, 0x22, 0xfe, 0xf3, 0x97, 0xf5, 0x31, 0x46, 0x06, 0x22, 0x04, 0xa8, + 0xfe, 0xf3, 0x92, 0xf5, 0xb1, 0x1d, 0x06, 0x22, 0x04, 0xf1, 0x0a, 0x00, + 0xfe, 0xf3, 0x8c, 0xf5, 0x04, 0xf1, 0x10, 0x00, 0x04, 0xa9, 0x06, 0x22, + 0xfe, 0xf3, 0x86, 0xf5, 0x4f, 0xf4, 0x80, 0x76, 0x14, 0xe0, 0x31, 0x46, + 0x06, 0x22, 0xfe, 0xf3, 0x7f, 0xf5, 0xb1, 0x1d, 0x06, 0x22, 0x04, 0xf1, + 0x0a, 0x00, 0xfe, 0xf3, 0x79, 0xf5, 0x04, 0xf1, 0x10, 0x00, 0x08, 0xf1, + 0xbc, 0x01, 0x06, 0x22, 0xfe, 0xf3, 0x72, 0xf5, 0x00, 0x26, 0x01, 0xe0, + 0x4f, 0xf4, 0x00, 0x76, 0x7a, 0x68, 0x29, 0x4b, 0x13, 0x40, 0x53, 0xb3, + 0x9d, 0xf8, 0x44, 0x30, 0x69, 0x6a, 0x03, 0xf0, 0x07, 0x03, 0x48, 0x05, + 0xad, 0xf8, 0x16, 0x30, 0x0f, 0xd4, 0x9b, 0xf8, 0xf8, 0x21, 0x01, 0x2a, + 0x05, 0xd1, 0x41, 0xf4, 0x80, 0x21, 0x69, 0x62, 0x43, 0xf0, 0x20, 0x03, + 0x03, 0xe0, 0x52, 0x01, 0x02, 0xf0, 0x60, 0x02, 0x13, 0x43, 0xad, 0xf8, + 0x16, 0x30, 0x6b, 0x6a, 0x59, 0x06, 0x05, 0xd5, 0xbd, 0xf8, 0x16, 0x30, + 0x43, 0xf0, 0x80, 0x03, 0xad, 0xf8, 0x16, 0x30, 0x04, 0xf1, 0x18, 0x00, + 0x0d, 0xf1, 0x16, 0x01, 0x02, 0x22, 0xfe, 0xf3, 0x41, 0xf5, 0x46, 0xf0, + 0x80, 0x06, 0xba, 0xf1, 0x00, 0x0f, 0x0f, 0xd0, 0x7a, 0x68, 0x10, 0x4b, + 0x13, 0x40, 0x13, 0xb9, 0x04, 0xf1, 0x18, 0x03, 0x01, 0xe0, 0x04, 0xf1, + 0x1a, 0x03, 0x01, 0x22, 0x00, 0x92, 0x58, 0x46, 0x41, 0x46, 0x52, 0x46, + 0x44, 0xf0, 0xf2, 0xda, 0x03, 0x9b, 0x46, 0xf0, 0x08, 0x06, 0x13, 0xb1, + 0x46, 0xf4, 0x80, 0x66, 0xb6, 0xb2, 0xba, 0xf1, 0x00, 0x0f, 0x01, 0xd0, + 0x46, 0xf4, 0x80, 0x46, 0x26, 0x80, 0x20, 0x46, 0x07, 0xb0, 0xbd, 0xe8, + 0xf0, 0x8f, 0x00, 0xbf, 0x40, 0x00, 0x01, 0x80, 0x38, 0xb5, 0x04, 0x46, + 0xd4, 0xf8, 0x74, 0x15, 0x80, 0x68, 0x0c, 0xf0, 0x83, 0xd8, 0xd4, 0xf8, + 0xf8, 0x16, 0xd0, 0xf1, 0x01, 0x05, 0xa0, 0x68, 0x38, 0xbf, 0x00, 0x25, + 0x0c, 0xf0, 0x7a, 0xd8, 0x00, 0xb9, 0x01, 0x35, 0xa0, 0x68, 0xd4, 0xf8, + 0xfc, 0x16, 0x0c, 0xf0, 0x73, 0xd8, 0x00, 0xb9, 0x01, 0x35, 0xd4, 0xf8, + 0xe0, 0x36, 0xa0, 0x68, 0x19, 0x6a, 0x0c, 0xf0, 0x6b, 0xd8, 0x00, 0xb9, + 0x01, 0x35, 0xd4, 0xf8, 0xe0, 0x36, 0x00, 0x22, 0xda, 0x60, 0xa0, 0x68, + 0xd4, 0xf8, 0x3c, 0x15, 0x0c, 0xf0, 0x60, 0xd8, 0x00, 0xb9, 0x01, 0x35, + 0xa0, 0x68, 0xd4, 0xf8, 0x94, 0x17, 0x0c, 0xf0, 0x59, 0xd8, 0x00, 0xb9, + 0x01, 0x35, 0x28, 0x46, 0x38, 0xbd, 0xd0, 0xf8, 0x40, 0x35, 0x70, 0xb5, + 0x5c, 0x8e, 0x05, 0x46, 0x04, 0xf4, 0x40, 0x63, 0xb3, 0xf5, 0x40, 0x6f, + 0x21, 0xd1, 0x03, 0x68, 0x93, 0xf8, 0x46, 0x30, 0x9a, 0x07, 0x0b, 0xd0, + 0x04, 0xf4, 0x70, 0x41, 0xa1, 0xf5, 0x80, 0x53, 0x59, 0x42, 0x41, 0xeb, + 0x03, 0x01, 0xd0, 0xf8, 0x5c, 0x01, 0x42, 0xf0, 0x67, 0xde, 0x80, 0xb9, + 0x20, 0x46, 0xff, 0xf3, 0x1b, 0xf6, 0x40, 0xf4, 0x30, 0x60, 0x86, 0xb2, + 0x20, 0x46, 0xff, 0xf3, 0x15, 0xf6, 0x0e, 0x28, 0x8c, 0xbf, 0x4f, 0xf4, + 0x80, 0x50, 0x4f, 0xf4, 0x00, 0x50, 0x46, 0xea, 0x00, 0x04, 0x04, 0xf4, + 0x70, 0x42, 0x2b, 0x6b, 0xa2, 0xf5, 0x80, 0x5c, 0xdc, 0xf1, 0x00, 0x02, + 0x5b, 0x68, 0x42, 0xeb, 0x0c, 0x02, 0x9a, 0x42, 0x05, 0xd0, 0xd5, 0xf8, + 0x5c, 0x01, 0x01, 0x21, 0x42, 0xf0, 0x68, 0xd9, 0x04, 0x46, 0xd5, 0xf8, + 0x5c, 0x01, 0x21, 0x46, 0x42, 0xf0, 0xb2, 0xde, 0x98, 0xb9, 0x04, 0xf4, + 0x70, 0x44, 0xa4, 0xf5, 0x80, 0x5e, 0xde, 0xf1, 0x00, 0x04, 0x44, 0xeb, + 0x0e, 0x04, 0x0e, 0x34, 0x55, 0xf8, 0x24, 0x30, 0x2e, 0x6b, 0xd5, 0xf8, + 0x5c, 0x01, 0x2b, 0x63, 0x01, 0x21, 0x42, 0xf0, 0x4f, 0xd9, 0x2e, 0x63, + 0x04, 0x46, 0x20, 0x46, 0x70, 0xbd, 0x07, 0x2a, 0x01, 0xdd, 0x4a, 0x68, + 0x0a, 0xb9, 0x02, 0x6b, 0x12, 0x68, 0x03, 0x2a, 0x06, 0xd0, 0x51, 0x1e, + 0x01, 0x29, 0x0d, 0xd8, 0x01, 0x6b, 0x09, 0x68, 0x8a, 0x42, 0x09, 0xd1, + 0x9d, 0xf8, 0x00, 0x10, 0x11, 0xb1, 0x90, 0xf8, 0x29, 0x10, 0x31, 0xb1, + 0x43, 0xb1, 0x1a, 0x60, 0x00, 0x20, 0x70, 0x47, 0x6f, 0xf0, 0x0c, 0x00, + 0x70, 0x47, 0x6f, 0xf0, 0x0a, 0x00, 0x70, 0x47, 0x18, 0x46, 0x70, 0x47, + 0x2d, 0xe9, 0xf0, 0x4f, 0x89, 0xb0, 0x00, 0x23, 0x0f, 0x46, 0x17, 0x99, + 0x05, 0x46, 0x05, 0x92, 0x14, 0x9c, 0x15, 0x9e, 0x06, 0x93, 0x07, 0x93, + 0xdd, 0xf8, 0x48, 0xb0, 0xdd, 0xf8, 0x4c, 0xa0, 0x3b, 0xf0, 0x94, 0xde, + 0x05, 0x99, 0x04, 0x90, 0x01, 0xf0, 0x01, 0x08, 0x28, 0x68, 0x39, 0x46, + 0x22, 0x46, 0x33, 0x46, 0xcd, 0xf8, 0x00, 0x80, 0x1f, 0xf0, 0xf2, 0xdd, + 0x81, 0x46, 0x00, 0x28, 0x40, 0xf0, 0xdc, 0x80, 0xb7, 0xf9, 0x06, 0x30, + 0x00, 0x2b, 0x1b, 0xda, 0xb9, 0x88, 0x3a, 0x89, 0xb8, 0xf1, 0x00, 0x0f, + 0x09, 0xd0, 0x16, 0x9b, 0x49, 0x00, 0x03, 0x93, 0x00, 0x96, 0x01, 0x94, + 0x02, 0x96, 0x28, 0x69, 0x01, 0x31, 0x23, 0x46, 0x08, 0xe0, 0x16, 0x9b, + 0x28, 0x69, 0x03, 0x93, 0xcd, 0xf8, 0x00, 0xa0, 0x01, 0x94, 0x02, 0x96, + 0x49, 0x00, 0x5b, 0x46, 0x39, 0xf0, 0x1c, 0xda, 0x81, 0x46, 0xbb, 0xe0, + 0xba, 0xf1, 0x03, 0x0f, 0x0d, 0xd9, 0x04, 0x22, 0x06, 0xa8, 0x59, 0x46, + 0xfe, 0xf3, 0x1e, 0xf4, 0xba, 0xf1, 0x07, 0x0f, 0x05, 0xd9, 0x07, 0xa8, + 0x0b, 0xf1, 0x04, 0x01, 0x04, 0x22, 0xfe, 0xf3, 0x15, 0xf4, 0x05, 0x99, + 0x06, 0x9b, 0x8a, 0x1e, 0x1f, 0x2a, 0x00, 0xf2, 0x9d, 0x80, 0xdf, 0xe8, + 0x12, 0xf0, 0x20, 0x00, 0x22, 0x00, 0x24, 0x00, 0x28, 0x00, 0x2c, 0x00, + 0x2e, 0x00, 0x36, 0x00, 0x38, 0x00, 0x4a, 0x00, 0x4c, 0x00, 0x51, 0x00, + 0x53, 0x00, 0x55, 0x00, 0x57, 0x00, 0x59, 0x00, 0x5b, 0x00, 0x5d, 0x00, + 0x9b, 0x00, 0x9b, 0x00, 0x9b, 0x00, 0x63, 0x00, 0x65, 0x00, 0x76, 0x00, + 0x78, 0x00, 0x7c, 0x00, 0x7e, 0x00, 0x83, 0x00, 0x85, 0x00, 0x8a, 0x00, + 0x9b, 0x00, 0x95, 0x00, 0x8c, 0x00, 0x43, 0x4b, 0x02, 0xe0, 0x42, 0x4a, + 0x63, 0xe0, 0x42, 0x4b, 0x1b, 0x68, 0x23, 0x60, 0x7a, 0xe0, 0x00, 0x2b, + 0x73, 0xdc, 0x3f, 0x4a, 0x04, 0xe0, 0x3f, 0x4b, 0xf6, 0xe7, 0x00, 0x2b, + 0x6d, 0xdb, 0x3d, 0x4a, 0x13, 0x60, 0x3d, 0x4b, 0x00, 0x22, 0x1a, 0x60, + 0x6c, 0xe0, 0x3c, 0x4b, 0xec, 0xe7, 0x1b, 0xb1, 0x3b, 0x4a, 0x12, 0x68, + 0x00, 0x2a, 0x60, 0xd0, 0x38, 0x4a, 0x13, 0x60, 0x39, 0x4a, 0x00, 0x23, + 0x13, 0x60, 0x39, 0x4a, 0x13, 0x60, 0x39, 0x4a, 0x13, 0x60, 0x4f, 0xf0, + 0xff, 0x32, 0x38, 0x4b, 0xe9, 0xe7, 0x33, 0x4b, 0xd8, 0xe7, 0x32, 0x4a, + 0x11, 0x68, 0x00, 0x29, 0x37, 0xdc, 0x4c, 0xe0, 0x34, 0x4b, 0xd1, 0xe7, + 0x33, 0x4a, 0x32, 0xe0, 0x33, 0x4b, 0xcd, 0xe7, 0x32, 0x4a, 0x2e, 0xe0, + 0x2c, 0x4b, 0xc9, 0xe7, 0x2b, 0x4a, 0x2a, 0xe0, 0xd5, 0xf8, 0x6c, 0x32, + 0xd3, 0xf8, 0xd8, 0x32, 0x9b, 0x68, 0xc2, 0xe7, 0x2d, 0x4b, 0xbf, 0xe7, + 0x2c, 0x4a, 0x13, 0x60, 0x00, 0x2b, 0x39, 0xd0, 0x2b, 0x4a, 0x00, 0x23, + 0x2b, 0x49, 0x13, 0x60, 0x4f, 0xf0, 0xff, 0x32, 0x0a, 0x60, 0x2a, 0x49, + 0x0a, 0x60, 0x2a, 0x4a, 0x13, 0x60, 0x2a, 0x4a, 0x11, 0xe0, 0x2a, 0x4b, + 0xac, 0xe7, 0x00, 0x2b, 0x23, 0xdd, 0x28, 0x4a, 0x0b, 0xe0, 0x28, 0x4b, + 0xa6, 0xe7, 0x5a, 0x1e, 0x09, 0x2a, 0x1c, 0xd8, 0x25, 0x4a, 0x04, 0xe0, + 0x25, 0x4b, 0x9f, 0xe7, 0x00, 0x2b, 0x16, 0xdd, 0x23, 0x4a, 0x13, 0x60, + 0x18, 0xe0, 0x23, 0x4b, 0x98, 0xe7, 0x04, 0x99, 0x8a, 0x79, 0x8a, 0xb9, + 0x00, 0x33, 0x21, 0x4a, 0x18, 0xbf, 0x01, 0x23, 0x13, 0x70, 0x0d, 0xe0, + 0x04, 0x9a, 0x93, 0x79, 0x43, 0xb9, 0x1d, 0x4b, 0x1b, 0x78, 0x8a, 0xe7, + 0x6f, 0xf0, 0x16, 0x09, 0x04, 0xe0, 0x6f, 0xf0, 0x1c, 0x09, 0x01, 0xe0, + 0x6f, 0xf0, 0x06, 0x09, 0x48, 0x46, 0x09, 0xb0, 0xbd, 0xe8, 0xf0, 0x8f, + 0xe0, 0x07, 0x02, 0x00, 0xcc, 0x07, 0x02, 0x00, 0xd4, 0x07, 0x02, 0x00, + 0xa8, 0x07, 0x02, 0x00, 0xb4, 0x07, 0x02, 0x00, 0x2c, 0xfe, 0x01, 0x00, + 0xc8, 0x07, 0x02, 0x00, 0xc4, 0x07, 0x02, 0x00, 0xc0, 0x07, 0x02, 0x00, + 0xac, 0x07, 0x02, 0x00, 0x18, 0xfe, 0x01, 0x00, 0x30, 0xfe, 0x01, 0x00, + 0xb0, 0x07, 0x02, 0x00, 0xd8, 0x07, 0x02, 0x00, 0x14, 0xfe, 0x01, 0x00, + 0x20, 0xfe, 0x01, 0x00, 0xbc, 0x07, 0x02, 0x00, 0xd0, 0x07, 0x02, 0x00, + 0x1c, 0xfe, 0x01, 0x00, 0x28, 0xfe, 0x01, 0x00, 0x10, 0xfe, 0x01, 0x00, + 0xb8, 0x07, 0x02, 0x00, 0xa4, 0x07, 0x02, 0x00, 0x38, 0xb5, 0x00, 0x25, + 0x04, 0x46, 0x80, 0xf8, 0xe8, 0x51, 0x26, 0xf0, 0x13, 0xd8, 0xe3, 0x6a, + 0x29, 0x46, 0x98, 0x6a, 0x80, 0x22, 0xfe, 0xf3, 0x8f, 0xf3, 0x20, 0x69, + 0x06, 0xf0, 0xc8, 0xfc, 0xd4, 0xf8, 0x40, 0x01, 0x2b, 0xf0, 0xfa, 0xde, + 0xc4, 0xf8, 0x88, 0x56, 0x38, 0xbd, 0x00, 0x00, 0x2d, 0xe9, 0xf8, 0x43, + 0x98, 0x46, 0x53, 0x6a, 0x0e, 0x46, 0x99, 0x05, 0x04, 0x46, 0x15, 0x46, + 0x9d, 0xf9, 0x20, 0x90, 0x17, 0x69, 0x09, 0xd5, 0x13, 0x6b, 0xa7, 0xf8, + 0x42, 0x30, 0x1b, 0x0c, 0xa7, 0xf8, 0x44, 0x30, 0x3b, 0x88, 0x43, 0xf4, + 0x00, 0x53, 0x3b, 0x80, 0x22, 0x68, 0x6b, 0x6b, 0x92, 0xf8, 0x44, 0x20, + 0x9a, 0xb1, 0xe2, 0x6a, 0x02, 0xeb, 0x46, 0x02, 0xb2, 0xf9, 0x1c, 0x20, + 0x6a, 0xb9, 0x63, 0xb1, 0x1a, 0x69, 0xd2, 0xf8, 0xd4, 0x22, 0x92, 0xf8, + 0x9d, 0x20, 0x03, 0x2a, 0x05, 0xd9, 0xd4, 0xf8, 0x64, 0x01, 0x31, 0x46, + 0x2a, 0x46, 0x3e, 0xf0, 0xf7, 0xdc, 0x04, 0x2e, 0x1d, 0xd1, 0x23, 0x68, + 0xb7, 0xf8, 0x4c, 0x70, 0x93, 0xf8, 0x38, 0x30, 0x3a, 0x46, 0xc3, 0xb1, + 0x28, 0x46, 0x13, 0xf0, 0x7b, 0xd8, 0x04, 0xeb, 0x80, 0x00, 0xd0, 0xf8, + 0x4c, 0x32, 0xd3, 0xf8, 0x58, 0x25, 0xa3, 0xf8, 0xc8, 0x70, 0x01, 0x32, + 0xc3, 0xf8, 0x58, 0x25, 0xd3, 0xf8, 0x60, 0x35, 0xd9, 0x69, 0x8a, 0x42, + 0x88, 0xbf, 0xda, 0x61, 0x1a, 0x6a, 0x01, 0x32, 0x1a, 0x62, 0x4f, 0xf6, + 0xff, 0x72, 0xb8, 0xf1, 0x00, 0x0f, 0x07, 0xd0, 0xe3, 0x6a, 0x06, 0xf1, + 0x0c, 0x01, 0x03, 0xeb, 0x41, 0x03, 0x99, 0x88, 0x49, 0x44, 0x99, 0x80, + 0x4f, 0xf6, 0xff, 0x73, 0x9a, 0x42, 0x03, 0xd0, 0x20, 0x69, 0xa8, 0x21, + 0x3a, 0xf0, 0x2a, 0xd9, 0x23, 0x69, 0x29, 0x46, 0x03, 0xeb, 0x86, 0x03, + 0xd8, 0x68, 0x0d, 0x4b, 0x42, 0x46, 0x5b, 0x6a, 0x98, 0x47, 0x00, 0x28, + 0x12, 0xda, 0x0b, 0x48, 0x0b, 0xf0, 0xe4, 0xfe, 0x0a, 0x4b, 0x1a, 0x68, + 0x01, 0x32, 0x1a, 0x60, 0xb8, 0xf1, 0x00, 0x0f, 0x08, 0xd0, 0xe3, 0x6a, + 0x0c, 0x36, 0x03, 0xeb, 0x46, 0x06, 0xb3, 0x88, 0xc9, 0xeb, 0x03, 0x09, + 0xa6, 0xf8, 0x04, 0x90, 0xbd, 0xe8, 0xf8, 0x83, 0xe0, 0xa6, 0x85, 0x00, + 0xbc, 0x56, 0x86, 0x00, 0xdc, 0x07, 0x02, 0x00, 0x19, 0xb1, 0x40, 0x68, + 0x30, 0x22, 0x03, 0xf0, 0x4d, 0x99, 0x70, 0x47, 0x2d, 0xe9, 0xf0, 0x4f, + 0x0e, 0x46, 0x04, 0x46, 0x11, 0x69, 0xd2, 0xf8, 0x7c, 0x01, 0x9f, 0xb0, + 0xd6, 0xf8, 0x10, 0xb0, 0x13, 0x93, 0x07, 0x90, 0x0c, 0x91, 0x91, 0x46, + 0xbb, 0xf8, 0x00, 0x20, 0x60, 0x68, 0x02, 0xf0, 0x0c, 0x03, 0x9b, 0x08, + 0x02, 0x2b, 0x0f, 0x93, 0x0c, 0xbf, 0xc2, 0xf3, 0xc0, 0x13, 0x00, 0x23, + 0xdb, 0xb2, 0x31, 0x46, 0x2c, 0x9f, 0xdd, 0xf8, 0xb4, 0x80, 0x0e, 0x92, + 0x14, 0x93, 0xff, 0xf3, 0xbb, 0xf3, 0x04, 0x30, 0x0a, 0x90, 0x87, 0xb1, + 0x3b, 0x7a, 0x0b, 0x2b, 0x08, 0xd1, 0x94, 0xf8, 0xf0, 0x37, 0x53, 0xb1, + 0x94, 0xf8, 0xf1, 0x37, 0x3b, 0xb1, 0xbb, 0x79, 0x07, 0x2b, 0x04, 0xd8, + 0x0a, 0x98, 0x97, 0xf9, 0x0f, 0x30, 0xc0, 0x18, 0x0a, 0x90, 0xd4, 0xf8, + 0x88, 0x31, 0x00, 0x2b, 0x19, 0xda, 0xdf, 0xb1, 0x3b, 0x7a, 0x02, 0x2b, + 0x1a, 0xd1, 0x94, 0xf8, 0xa0, 0x24, 0xd2, 0xb9, 0x0c, 0x99, 0x8b, 0x6d, + 0x13, 0xf0, 0x08, 0x03, 0x16, 0xd1, 0xba, 0x79, 0x29, 0x2a, 0x15, 0xd8, + 0x03, 0x2a, 0x13, 0xd9, 0x0b, 0x2a, 0x11, 0xd8, 0x29, 0x9a, 0x01, 0x2a, + 0x0e, 0xd1, 0x0a, 0x9b, 0x08, 0x33, 0x0a, 0x93, 0x08, 0xe0, 0x00, 0x20, + 0x08, 0x90, 0x08, 0xe0, 0x08, 0x97, 0x06, 0xe0, 0x00, 0x21, 0x08, 0x91, + 0x03, 0xe0, 0x00, 0x22, 0x08, 0x92, 0x00, 0xe0, 0x08, 0x93, 0x35, 0x69, + 0x00, 0x21, 0xab, 0x1f, 0x15, 0x93, 0xb3, 0x8a, 0xa5, 0xf1, 0x76, 0x00, + 0x76, 0x33, 0xb3, 0x82, 0x70, 0x22, 0x30, 0x61, 0x12, 0x90, 0xfe, 0xf3, + 0x85, 0xf2, 0x73, 0x6a, 0x5b, 0x05, 0x01, 0xd5, 0x33, 0x8d, 0x22, 0xe0, + 0xd9, 0xf8, 0x04, 0x20, 0x94, 0x4b, 0x13, 0x40, 0xbb, 0xb1, 0x0e, 0x99, + 0x01, 0xf0, 0xfc, 0x03, 0x88, 0x2b, 0x12, 0xd1, 0x9b, 0xf8, 0x04, 0x30, + 0xd8, 0x07, 0x0e, 0xd4, 0x29, 0x98, 0xf2, 0x8a, 0x41, 0x1e, 0x02, 0xf0, + 0x07, 0x02, 0x28, 0x98, 0x5c, 0x32, 0x09, 0xeb, 0x42, 0x02, 0x88, 0x42, + 0xd3, 0x88, 0x08, 0xd1, 0x59, 0x1c, 0xd1, 0x80, 0x05, 0xe0, 0x0f, 0x99, + 0x01, 0x29, 0x08, 0xd1, 0x4f, 0xf0, 0x00, 0x0a, 0x10, 0xe0, 0x0f, 0x9a, + 0x4f, 0xf0, 0x00, 0x0a, 0x01, 0x2a, 0x03, 0xd1, 0x0a, 0xe0, 0x4f, 0xf0, + 0x10, 0x0a, 0x00, 0x23, 0x28, 0x98, 0x1b, 0x01, 0x9b, 0xb2, 0x00, 0xf0, + 0x0f, 0x02, 0x13, 0x43, 0xab, 0xf8, 0x16, 0x30, 0x2a, 0x99, 0x04, 0x29, + 0x07, 0xd1, 0x20, 0x46, 0x0c, 0x99, 0x12, 0x9a, 0x0e, 0xf0, 0x24, 0xde, + 0xad, 0xf8, 0x72, 0x00, 0x19, 0xe0, 0x28, 0x98, 0xb4, 0xf8, 0x46, 0x35, + 0x00, 0xf0, 0x0f, 0x02, 0x29, 0x98, 0x42, 0xea, 0x03, 0x12, 0x41, 0x1e, + 0x28, 0x98, 0x92, 0xb2, 0x88, 0x42, 0x02, 0xd1, 0x01, 0x33, 0xa4, 0xf8, + 0x46, 0x35, 0x2a, 0x99, 0x52, 0x01, 0x47, 0xf6, 0xe0, 0x73, 0x13, 0x40, + 0x01, 0xf0, 0x07, 0x02, 0x13, 0x43, 0xad, 0xf8, 0x72, 0x30, 0x99, 0xf8, + 0xdf, 0x30, 0x23, 0xb9, 0x0e, 0x9a, 0x02, 0xf0, 0xfc, 0x03, 0x80, 0x2b, + 0x01, 0xd1, 0x4a, 0xf0, 0x20, 0x0a, 0x65, 0x4b, 0x08, 0xea, 0x03, 0x03, + 0x23, 0xb1, 0xcd, 0xf8, 0x6c, 0x80, 0xcd, 0xf8, 0x68, 0x80, 0x0e, 0xe0, + 0x0f, 0x9b, 0x01, 0x2b, 0x05, 0xd9, 0x73, 0x6a, 0x00, 0x2b, 0x02, 0xdb, + 0x13, 0xf0, 0x10, 0x03, 0x07, 0xd0, 0x99, 0xf8, 0x48, 0x30, 0x03, 0xf0, + 0x7f, 0x03, 0x1b, 0x93, 0x1a, 0x93, 0x00, 0x23, 0x38, 0xe0, 0x20, 0x6b, + 0x57, 0x49, 0x82, 0x6c, 0x11, 0x40, 0x19, 0xb1, 0x9b, 0xf8, 0x04, 0x10, + 0xc9, 0x07, 0x08, 0xd4, 0x9b, 0xf8, 0x04, 0x30, 0x13, 0xf0, 0x01, 0x03, + 0xe9, 0xd1, 0x42, 0x6c, 0x50, 0x49, 0x11, 0x40, 0x11, 0xb1, 0x1b, 0x92, + 0x1a, 0x92, 0x23, 0xe0, 0x1b, 0xab, 0x00, 0x93, 0x0d, 0xf1, 0x76, 0x03, + 0x01, 0x93, 0x0d, 0xf1, 0x77, 0x03, 0x02, 0x93, 0x1d, 0xab, 0x03, 0x93, + 0x49, 0x46, 0x0d, 0xf1, 0x72, 0x02, 0x1a, 0xab, 0xd4, 0xf8, 0x60, 0x01, + 0x4f, 0xf0, 0x16, 0xd8, 0x73, 0x6a, 0x43, 0xf0, 0x00, 0x62, 0x72, 0x62, + 0xbd, 0xf8, 0x74, 0x20, 0xd1, 0x07, 0x04, 0xd5, 0x43, 0xf0, 0x00, 0x63, + 0x43, 0xf4, 0x00, 0x53, 0x73, 0x62, 0x28, 0x98, 0xd0, 0xf1, 0x01, 0x03, + 0x38, 0xbf, 0x00, 0x23, 0x22, 0x68, 0xd4, 0xf8, 0x60, 0x06, 0x92, 0xf8, + 0x46, 0x20, 0x90, 0xf8, 0x0a, 0xc0, 0x12, 0xf0, 0x03, 0x02, 0x1a, 0x99, + 0x00, 0xf0, 0x32, 0x81, 0x11, 0xf0, 0x00, 0x6f, 0x01, 0xf0, 0x7f, 0x02, + 0x04, 0xd0, 0x07, 0x2a, 0x08, 0xd9, 0x20, 0x2a, 0x2b, 0xd1, 0x05, 0xe0, + 0xdf, 0xf8, 0xc4, 0xe0, 0x1e, 0xf9, 0x02, 0x20, 0x00, 0x2a, 0x24, 0xda, + 0x4a, 0x00, 0x01, 0xd4, 0x00, 0x29, 0x20, 0xdb, 0x21, 0xf4, 0x40, 0x12, + 0x22, 0xf4, 0x60, 0x52, 0x09, 0x01, 0x1a, 0x92, 0x16, 0xd5, 0x81, 0x78, + 0x01, 0x29, 0x13, 0xd9, 0x21, 0x6b, 0x91, 0xf9, 0x4d, 0x10, 0x01, 0x29, + 0x09, 0xd0, 0xd9, 0xf8, 0x04, 0xe0, 0x1e, 0xf0, 0x80, 0x4f, 0x09, 0xd0, + 0x01, 0x31, 0x07, 0xd1, 0x01, 0x7b, 0x49, 0x07, 0x04, 0xd5, 0x42, 0xf4, + 0x80, 0x12, 0x42, 0xf4, 0x80, 0x52, 0x01, 0xe0, 0x42, 0xea, 0xcc, 0x22, + 0x1a, 0x92, 0x1b, 0x99, 0x11, 0xf0, 0x00, 0x6f, 0x01, 0xf0, 0x7f, 0x02, + 0x04, 0xd0, 0x07, 0x2a, 0x06, 0xd9, 0x20, 0x2a, 0x33, 0xd1, 0x03, 0xe0, + 0x16, 0x48, 0x82, 0x56, 0x00, 0x2a, 0x2e, 0xda, 0x1a, 0x9a, 0x50, 0x00, + 0x01, 0xd4, 0x00, 0x2a, 0x29, 0xdb, 0x21, 0xf4, 0x40, 0x12, 0x22, 0xf4, + 0x60, 0x52, 0x09, 0x01, 0x1b, 0x92, 0x1f, 0xd5, 0xd4, 0xf8, 0x60, 0x16, + 0x88, 0x78, 0x01, 0x28, 0x1a, 0xd9, 0x20, 0x6b, 0x90, 0xf9, 0x4d, 0x00, + 0x01, 0x28, 0x09, 0xd0, 0xd9, 0xf8, 0x04, 0xe0, 0x1e, 0xf0, 0x80, 0x4f, + 0x10, 0xd0, 0x01, 0x30, 0x0e, 0xd1, 0x09, 0x7b, 0x48, 0x07, 0x0b, 0xd5, + 0x42, 0xf4, 0x80, 0x12, 0x42, 0xf4, 0x80, 0x52, 0x08, 0xe0, 0x00, 0xbf, + 0x40, 0x00, 0x01, 0x80, 0x7f, 0x00, 0x00, 0x08, 0x40, 0x1b, 0x86, 0x00, + 0x42, 0xea, 0xcc, 0x22, 0x1b, 0x92, 0xb4, 0xf8, 0x28, 0x26, 0x02, 0xf4, + 0x40, 0x62, 0xb2, 0xf5, 0x40, 0x6f, 0x2d, 0xd1, 0x22, 0x6b, 0x10, 0x69, + 0x05, 0x93, 0x0d, 0xf0, 0x7f, 0xfb, 0x1a, 0x9a, 0x00, 0xf4, 0x40, 0x70, + 0xb0, 0xf5, 0x00, 0x7f, 0x14, 0xbf, 0x02, 0x20, 0x03, 0x20, 0x12, 0xf0, + 0x00, 0x6f, 0x05, 0x9b, 0x02, 0xf0, 0x7f, 0x02, 0x0d, 0xd0, 0x20, 0x2a, + 0x29, 0xd0, 0x94, 0xf9, 0xca, 0x24, 0x51, 0x1c, 0x01, 0xd0, 0x06, 0x90, + 0x10, 0xe0, 0xd9, 0xf8, 0x04, 0x20, 0x06, 0x90, 0x12, 0x03, 0x21, 0xd4, + 0x24, 0xe0, 0x9e, 0x49, 0x06, 0x90, 0x8a, 0x56, 0x00, 0x2a, 0xb4, 0xbf, + 0x94, 0xf9, 0xc9, 0x24, 0x94, 0xf9, 0xc8, 0x24, 0x51, 0x1c, 0x19, 0xd0, + 0x90, 0xb2, 0x17, 0xe0, 0x1a, 0x9a, 0x02, 0xf0, 0x7f, 0x02, 0x20, 0x2a, + 0x04, 0xbf, 0x4f, 0xf0, 0x00, 0x62, 0x1a, 0x92, 0x1b, 0x9a, 0x02, 0xf0, + 0x7f, 0x02, 0x20, 0x2a, 0x08, 0xd1, 0x4f, 0xf0, 0x00, 0x62, 0x1b, 0x92, + 0x04, 0xe0, 0x06, 0x90, 0x05, 0x20, 0x03, 0xe0, 0x04, 0x20, 0x01, 0xe0, + 0x02, 0x20, 0x06, 0x90, 0xdd, 0xf8, 0x6c, 0xe0, 0x1a, 0x9a, 0x00, 0x02, + 0x22, 0xf4, 0xe0, 0x62, 0x1e, 0xf0, 0x00, 0x6f, 0x40, 0xea, 0x02, 0x02, + 0x08, 0xbf, 0x06, 0x98, 0x2e, 0xf4, 0xe0, 0x61, 0x14, 0xbf, 0x01, 0x43, + 0x41, 0xea, 0x00, 0x21, 0x12, 0xf0, 0x00, 0x6f, 0x1b, 0x91, 0x1a, 0x92, + 0x94, 0xf8, 0xdc, 0x11, 0x04, 0xd0, 0x01, 0x29, 0x02, 0xd1, 0x42, 0xf4, + 0x00, 0x02, 0x02, 0xe0, 0x11, 0xb9, 0x22, 0xf4, 0x00, 0x02, 0x1a, 0x92, + 0x1b, 0x9a, 0x94, 0xf8, 0xdc, 0x11, 0x12, 0xf0, 0x00, 0x6f, 0x04, 0xd0, + 0x01, 0x29, 0x02, 0xd1, 0x42, 0xf4, 0x00, 0x02, 0x02, 0xe0, 0x11, 0xb9, + 0x22, 0xf4, 0x00, 0x02, 0x1b, 0x92, 0x49, 0x46, 0x20, 0x46, 0x05, 0x93, + 0x11, 0xf0, 0x38, 0xdf, 0x1a, 0x9a, 0x05, 0x9b, 0x12, 0xf0, 0x00, 0x61, + 0x21, 0xd0, 0xd4, 0xf8, 0x58, 0x16, 0x91, 0xf9, 0x05, 0x10, 0x02, 0x29, + 0x0d, 0xd1, 0x02, 0xf4, 0xe0, 0x68, 0x4f, 0xea, 0x18, 0x28, 0xa8, 0xf1, + 0x04, 0x08, 0xb8, 0xf1, 0x01, 0x0f, 0x8c, 0xbf, 0x4f, 0xf0, 0x00, 0x08, + 0x4f, 0xf0, 0x01, 0x08, 0x01, 0xe0, 0x4f, 0xf0, 0x00, 0x08, 0x11, 0x02, + 0x0c, 0xd5, 0x02, 0xf0, 0x7f, 0x02, 0x07, 0x2a, 0x0a, 0xd9, 0x20, 0x2a, + 0x14, 0xbf, 0x02, 0x46, 0x04, 0x22, 0x09, 0x92, 0x06, 0xe0, 0x09, 0x91, + 0x88, 0x46, 0x03, 0xe0, 0x09, 0x90, 0x01, 0xe0, 0x04, 0x21, 0x09, 0x91, + 0x1b, 0x9a, 0x12, 0xf0, 0x00, 0x61, 0x1d, 0xd0, 0x11, 0x02, 0x18, 0xd5, + 0x02, 0xf0, 0x7f, 0x02, 0x07, 0x2a, 0x16, 0xd9, 0x20, 0x2a, 0x08, 0xbf, + 0x04, 0x20, 0x10, 0xe0, 0x1b, 0x98, 0x21, 0xf4, 0xe0, 0x61, 0x20, 0xf4, + 0xe0, 0x60, 0x40, 0xf4, 0x00, 0x70, 0x41, 0xf4, 0x00, 0x71, 0x1b, 0x90, + 0x02, 0x20, 0x1a, 0x91, 0x06, 0x90, 0x0d, 0x92, 0x09, 0x92, 0x90, 0x46, + 0x03, 0xe0, 0x0d, 0x90, 0x01, 0xe0, 0x04, 0x21, 0x0d, 0x91, 0x8b, 0xb1, + 0x0c, 0x9a, 0x1a, 0x99, 0xd2, 0xf8, 0x10, 0x33, 0x29, 0x98, 0x02, 0xeb, + 0xc3, 0x02, 0xc2, 0xf8, 0x14, 0x13, 0xc1, 0xb2, 0xc2, 0xf8, 0x18, 0x13, + 0x01, 0x33, 0x0c, 0x99, 0x03, 0xf0, 0x3f, 0x03, 0xc1, 0xf8, 0x10, 0x33, + 0x07, 0x9a, 0x00, 0x2a, 0x3f, 0xd0, 0xd4, 0xf8, 0x0c, 0xe0, 0xd2, 0xf8, + 0x04, 0x34, 0x07, 0x99, 0xde, 0xf8, 0x80, 0x21, 0x03, 0xf1, 0x40, 0x00, + 0x01, 0xeb, 0xc0, 0x00, 0xde, 0xf8, 0x84, 0xc1, 0x42, 0x60, 0x01, 0xeb, + 0xc3, 0x02, 0xc2, 0xf8, 0x08, 0xc2, 0xf2, 0x8a, 0x34, 0x49, 0x02, 0xf0, + 0x07, 0x02, 0x8a, 0x5c, 0x02, 0x2a, 0x14, 0xd1, 0x07, 0x9a, 0x41, 0x68, + 0xd2, 0xf8, 0x00, 0xe0, 0x29, 0x98, 0x02, 0xeb, 0xce, 0x02, 0xc2, 0xf8, + 0x04, 0x11, 0x1a, 0x99, 0x0e, 0xf1, 0x01, 0x0e, 0x51, 0x60, 0xc1, 0xb2, + 0x91, 0x60, 0x07, 0x99, 0xc2, 0xf8, 0x08, 0xc1, 0x0e, 0xf0, 0x1f, 0x02, + 0x0a, 0x60, 0x1a, 0x99, 0x07, 0x98, 0x03, 0xf1, 0x81, 0x02, 0x40, 0xf8, + 0x32, 0x10, 0x00, 0xeb, 0xc3, 0x02, 0x29, 0x98, 0x01, 0x33, 0xc1, 0xb2, + 0xc2, 0xf8, 0x0c, 0x14, 0x07, 0x99, 0x03, 0xf0, 0x3f, 0x03, 0xc1, 0xf8, + 0x04, 0x34, 0x1a, 0x9b, 0x13, 0xf0, 0x00, 0x6e, 0x1f, 0xd0, 0x03, 0xf4, + 0xe0, 0x60, 0x4f, 0xea, 0x10, 0x20, 0x13, 0xf4, 0x00, 0x0f, 0x1a, 0x4a, + 0x03, 0xf0, 0x7f, 0x01, 0xa0, 0xf1, 0x04, 0x00, 0x08, 0xd0, 0x01, 0x28, + 0x4f, 0xf0, 0x14, 0x00, 0x00, 0xfb, 0x01, 0x22, 0x94, 0xbf, 0xd2, 0x68, + 0x92, 0x68, 0x0c, 0xe0, 0x01, 0x28, 0x4f, 0xf0, 0x14, 0x00, 0x03, 0xd8, + 0x00, 0xfb, 0x01, 0x22, 0x52, 0x68, 0x04, 0xe0, 0x41, 0x43, 0x52, 0x58, + 0x01, 0xe0, 0x03, 0xf0, 0x7f, 0x02, 0x0f, 0x98, 0x11, 0x92, 0x02, 0x28, + 0x00, 0xd0, 0xa8, 0xb9, 0xb4, 0xf8, 0x38, 0x26, 0x0a, 0x99, 0x91, 0x42, + 0x03, 0xdc, 0x72, 0x6a, 0x12, 0xf0, 0x80, 0x62, 0x0d, 0xd0, 0x9b, 0xf8, + 0x04, 0x20, 0x02, 0xf0, 0x01, 0x02, 0x82, 0xf0, 0x01, 0x02, 0x06, 0xe0, + 0x40, 0x1b, 0x86, 0x00, 0xc4, 0xd2, 0x85, 0x00, 0x84, 0x18, 0x86, 0x00, + 0x00, 0x22, 0x10, 0x92, 0x22, 0x6b, 0x52, 0x7d, 0x62, 0xb1, 0xd4, 0xf8, + 0x58, 0x16, 0x09, 0x78, 0x41, 0xb1, 0xbe, 0xf1, 0x00, 0x0f, 0x05, 0xd1, + 0x94, 0x48, 0x03, 0xf0, 0x7f, 0x01, 0x41, 0x56, 0x00, 0x29, 0x0c, 0xdb, + 0x21, 0x68, 0x91, 0xf8, 0x46, 0x10, 0x89, 0x07, 0x2e, 0xd0, 0xbe, 0xf1, + 0x00, 0x0f, 0x2b, 0xd0, 0xd4, 0xf8, 0x58, 0x16, 0x91, 0xf9, 0x05, 0x10, + 0x31, 0xb3, 0x29, 0x98, 0x01, 0x28, 0x12, 0xd9, 0xd4, 0xf8, 0x58, 0x36, + 0x1b, 0x78, 0x0b, 0xb1, 0x16, 0x23, 0x00, 0xe0, 0x30, 0x23, 0x1b, 0x93, + 0x73, 0x6a, 0x06, 0x99, 0x23, 0xf0, 0x00, 0x63, 0x73, 0x62, 0x1b, 0x9b, + 0x43, 0xea, 0x01, 0x23, 0x1b, 0x93, 0x1a, 0x93, 0x10, 0xe0, 0x7a, 0xb1, + 0xd4, 0xf8, 0x58, 0x26, 0x12, 0x78, 0x5a, 0xb1, 0xbe, 0xf1, 0x00, 0x0f, + 0x08, 0xd1, 0x7c, 0x4a, 0x03, 0xf0, 0x7f, 0x03, 0xd3, 0x56, 0x38, 0xea, + 0x23, 0x08, 0x28, 0xbf, 0x4f, 0xf0, 0x01, 0x08, 0x1a, 0x99, 0x11, 0xf0, + 0x00, 0x63, 0x15, 0xd1, 0x01, 0xf0, 0x7f, 0x02, 0x16, 0x2a, 0x11, 0xd8, + 0x74, 0x48, 0x90, 0x40, 0x0e, 0xd5, 0x13, 0x98, 0x40, 0xb1, 0x02, 0x2a, + 0x09, 0xd0, 0x94, 0xf9, 0x5c, 0x26, 0x12, 0xf1, 0xff, 0x32, 0x18, 0xbf, + 0x01, 0x22, 0x00, 0xe0, 0x13, 0x9a, 0x09, 0x92, 0x00, 0xe0, 0x09, 0x93, + 0x1b, 0x9a, 0x12, 0xf0, 0x00, 0x6e, 0x16, 0xd1, 0x02, 0xf0, 0x7f, 0x02, + 0x16, 0x2a, 0x12, 0xd8, 0x67, 0x48, 0x90, 0x40, 0x0f, 0xd5, 0x13, 0x98, + 0x40, 0xb1, 0x02, 0x2a, 0x09, 0xd0, 0x94, 0xf9, 0x5c, 0x26, 0x12, 0xf1, + 0xff, 0x32, 0x18, 0xbf, 0x01, 0x22, 0x00, 0xe0, 0x13, 0x9a, 0x0d, 0x92, + 0x01, 0xe0, 0xcd, 0xf8, 0x34, 0xe0, 0x0f, 0x98, 0xd9, 0xf8, 0x04, 0x20, + 0x02, 0x28, 0x08, 0xbf, 0xc9, 0xf8, 0x60, 0x11, 0x12, 0xf4, 0x80, 0x32, + 0x31, 0xd0, 0x94, 0xf8, 0xce, 0x21, 0x72, 0xb3, 0x94, 0xf8, 0xd1, 0x21, + 0x5a, 0xb3, 0xd4, 0xf8, 0x58, 0x26, 0x92, 0xf9, 0x05, 0x20, 0x03, 0x2a, + 0x27, 0xd0, 0x4b, 0xb9, 0x01, 0xf0, 0x7f, 0x02, 0x02, 0x2a, 0x27, 0xd0, + 0x04, 0x2a, 0x25, 0xd0, 0x0b, 0x2a, 0x23, 0xd0, 0x16, 0x2a, 0x21, 0xd0, + 0x9b, 0xf8, 0x04, 0x30, 0x13, 0xf0, 0x01, 0x03, 0x19, 0xd1, 0x0e, 0x98, + 0x00, 0xf0, 0xfc, 0x02, 0x88, 0x2a, 0x17, 0xd1, 0x73, 0x6a, 0x4a, 0xf4, + 0xa0, 0x4a, 0x43, 0xf4, 0x80, 0x53, 0x73, 0x62, 0xbb, 0xf8, 0x18, 0x30, + 0x01, 0x22, 0x23, 0xf0, 0x60, 0x03, 0x1b, 0x04, 0x1b, 0x0c, 0x43, 0xf0, + 0x20, 0x03, 0xab, 0xf8, 0x18, 0x30, 0x07, 0x92, 0x05, 0xe0, 0x00, 0x23, + 0x02, 0xe0, 0x00, 0x20, 0x07, 0x90, 0x00, 0xe0, 0x07, 0x93, 0x20, 0x46, + 0x0a, 0x9a, 0x15, 0x9b, 0x19, 0xf0, 0x28, 0xda, 0x16, 0xab, 0x20, 0x46, + 0x1b, 0x99, 0x0a, 0x9a, 0x19, 0xf0, 0x22, 0xda, 0x06, 0x22, 0xa5, 0xf1, + 0x40, 0x00, 0x16, 0xa9, 0xfd, 0xf3, 0xac, 0xf6, 0x1b, 0x9b, 0x18, 0x01, + 0x0c, 0xd4, 0x03, 0xf0, 0x7f, 0x03, 0x16, 0x2b, 0x08, 0xd8, 0x30, 0x4a, + 0x9a, 0x40, 0x05, 0xd5, 0x0a, 0x99, 0x0b, 0x0a, 0x05, 0xf8, 0x3c, 0x1c, + 0x05, 0xf8, 0x3b, 0x3c, 0x73, 0x6a, 0x59, 0x05, 0x10, 0xd5, 0x1a, 0x9a, + 0x12, 0x01, 0x0d, 0xd5, 0x17, 0xb1, 0x3a, 0x7a, 0x04, 0x2a, 0x09, 0xd1, + 0x43, 0xf4, 0x00, 0x63, 0x73, 0x62, 0x10, 0x9a, 0x94, 0xf8, 0xc3, 0x34, + 0x00, 0x2b, 0x18, 0xbf, 0x01, 0x22, 0x10, 0x92, 0x1a, 0x99, 0x0b, 0x01, + 0x0a, 0xd4, 0x1f, 0x4a, 0x01, 0xf0, 0x7f, 0x03, 0xd3, 0x56, 0x00, 0x2b, + 0x04, 0xda, 0x15, 0xf8, 0x06, 0x3c, 0x03, 0xf0, 0x0f, 0x03, 0x01, 0xe0, + 0x15, 0xf8, 0x06, 0x3c, 0x0e, 0x98, 0x0b, 0x93, 0xa4, 0x28, 0x0d, 0xd0, + 0x9b, 0xf8, 0x04, 0x30, 0xd8, 0x07, 0x09, 0xd4, 0x07, 0x9a, 0x4a, 0xb9, + 0x09, 0x9a, 0x2b, 0x9b, 0x20, 0x46, 0x0f, 0xf0, 0x7b, 0xdc, 0xab, 0xf8, + 0x02, 0x00, 0x13, 0xe0, 0x07, 0x9b, 0x4b, 0xb1, 0x09, 0x9a, 0x20, 0x46, + 0x40, 0xf6, 0x2a, 0x13, 0x18, 0xf0, 0x64, 0xdf, 0x80, 0xb2, 0x02, 0x30, + 0xab, 0xf8, 0x02, 0x00, 0x0e, 0x98, 0xa4, 0x28, 0x04, 0xd1, 0xbb, 0xf8, + 0x02, 0x30, 0x25, 0xf8, 0x3a, 0x3c, 0x17, 0xe0, 0x9b, 0xf8, 0x04, 0x30, + 0xd9, 0x07, 0x01, 0xd4, 0x07, 0x99, 0x49, 0xb1, 0x00, 0x23, 0x05, 0xf8, + 0x3a, 0x3c, 0x05, 0xf8, 0x39, 0x3c, 0x0b, 0xe0, 0x40, 0x1b, 0x86, 0x00, + 0x00, 0x02, 0x10, 0x28, 0x1b, 0x99, 0x0d, 0x9a, 0x2b, 0x9b, 0x20, 0x46, + 0x0f, 0xf0, 0x4e, 0xdc, 0x25, 0xf8, 0x3a, 0x0c, 0x73, 0x6a, 0x9a, 0x05, + 0x07, 0xd5, 0x32, 0x6b, 0x4a, 0xf4, 0x00, 0x5a, 0x25, 0xf8, 0x34, 0x2c, + 0x12, 0x0c, 0x25, 0xf8, 0x32, 0x2c, 0x28, 0x9a, 0x0a, 0xb9, 0x4a, 0xf0, + 0x08, 0x0a, 0x9b, 0xf8, 0x04, 0x20, 0xd0, 0x07, 0x0f, 0xd4, 0xd9, 0x04, + 0x0d, 0xd4, 0x94, 0xf8, 0xd0, 0x21, 0x0a, 0xb1, 0x5a, 0x06, 0x08, 0xd4, + 0x58, 0x05, 0x04, 0xd4, 0x14, 0x98, 0x10, 0xb1, 0x94, 0xf8, 0xf8, 0x21, + 0x0a, 0xb9, 0x4a, 0xf0, 0x01, 0x0a, 0x0f, 0x99, 0x02, 0x29, 0x11, 0xd1, + 0x94, 0xf8, 0xce, 0x21, 0x72, 0xb1, 0x11, 0x9a, 0x04, 0x2a, 0x0b, 0xd9, + 0xa4, 0x4a, 0x2a, 0x98, 0x12, 0x5c, 0x04, 0xeb, 0x42, 0x02, 0xb2, 0xf8, + 0xfe, 0x21, 0x0a, 0xb1, 0x59, 0x05, 0x01, 0xd5, 0x4a, 0xf4, 0x80, 0x5a, + 0x23, 0x6b, 0x18, 0x69, 0x0d, 0xf0, 0xa2, 0xf8, 0x08, 0x99, 0x00, 0xf4, + 0x40, 0x60, 0xb0, 0xf5, 0x40, 0x6f, 0x08, 0xbf, 0x4a, 0xf4, 0x80, 0x7a, + 0x09, 0xb1, 0x4a, 0xf4, 0x00, 0x4a, 0x25, 0xf8, 0x76, 0xac, 0xef, 0xb1, + 0x94, 0xf8, 0xa0, 0x34, 0x03, 0xbb, 0x0c, 0x98, 0x82, 0x6d, 0x12, 0xf0, + 0x08, 0x02, 0x17, 0xd1, 0x3b, 0x7a, 0x0b, 0x2b, 0x08, 0xd1, 0x94, 0xf8, + 0xf0, 0x37, 0x8b, 0xb1, 0x94, 0xf8, 0xf1, 0x37, 0x73, 0xb1, 0xbb, 0x79, + 0x07, 0x2b, 0x0d, 0xd8, 0xbb, 0x79, 0x29, 0x2b, 0x0c, 0xd8, 0x97, 0xf8, + 0x0c, 0xa0, 0x0a, 0xf0, 0x07, 0x0a, 0x4a, 0xea, 0x03, 0x1a, 0x07, 0xe0, + 0xba, 0x46, 0x05, 0xe0, 0x9a, 0x46, 0x03, 0xe0, 0x92, 0x46, 0x01, 0xe0, + 0x4f, 0xf0, 0x00, 0x0a, 0x73, 0x6a, 0x0d, 0x99, 0x9a, 0x00, 0x44, 0xbf, + 0x4a, 0xf0, 0x08, 0x0a, 0x1f, 0xfa, 0x8a, 0xfa, 0x4b, 0x1e, 0xdb, 0xb2, + 0x01, 0x2b, 0x9c, 0xbf, 0x4a, 0xf4, 0x00, 0x5a, 0x1f, 0xfa, 0x8a, 0xfa, + 0xa5, 0xf1, 0x72, 0x00, 0x59, 0x46, 0x02, 0x22, 0xfd, 0xf3, 0xb4, 0xf5, + 0x00, 0x23, 0x05, 0xf8, 0x70, 0x3c, 0x05, 0xf8, 0x6f, 0x3c, 0x05, 0xf8, + 0x4a, 0x3c, 0x05, 0xf8, 0x49, 0x3c, 0x00, 0x2f, 0x43, 0xd0, 0x94, 0xf8, + 0xa0, 0x34, 0x00, 0x2b, 0x3f, 0xd1, 0x0c, 0x9a, 0x93, 0x6d, 0x1b, 0x07, + 0x3b, 0xd4, 0x3b, 0x7a, 0x0b, 0x2b, 0x0a, 0xd1, 0x94, 0xf8, 0xf0, 0x27, + 0x00, 0x2a, 0x34, 0xd0, 0x94, 0xf8, 0xf1, 0x27, 0x00, 0x2a, 0x30, 0xd0, + 0xba, 0x79, 0x07, 0x2a, 0x2d, 0xd8, 0xba, 0x79, 0x29, 0x2a, 0x2a, 0xd8, + 0x0e, 0x98, 0x00, 0xf4, 0x40, 0x72, 0xb2, 0xf5, 0x40, 0x7f, 0x14, 0x9a, + 0x14, 0xbf, 0x0b, 0xf1, 0x18, 0x01, 0x0b, 0xf1, 0x1e, 0x01, 0x02, 0xb1, + 0x02, 0x31, 0x02, 0x2b, 0x10, 0xd1, 0x12, 0x9b, 0x00, 0x20, 0x3a, 0x18, + 0xb2, 0xf8, 0xbc, 0x20, 0x02, 0x30, 0x9a, 0x75, 0xc2, 0xf3, 0x07, 0x22, + 0xda, 0x75, 0x02, 0x33, 0x0a, 0x28, 0xf4, 0xd1, 0xa5, 0xf1, 0x56, 0x00, + 0x03, 0x22, 0x08, 0xe0, 0x0b, 0x2b, 0xa5, 0xf1, 0x60, 0x00, 0x02, 0xd1, + 0x02, 0x31, 0x10, 0x22, 0x01, 0xe0, 0x97, 0xf9, 0x0e, 0x20, 0xfd, 0xf3, + 0x65, 0xf5, 0x0b, 0xf1, 0x04, 0x03, 0x19, 0x46, 0xa5, 0xf1, 0x50, 0x00, + 0x06, 0x22, 0x0f, 0x93, 0xfd, 0xf3, 0x5c, 0xf5, 0xbd, 0xf8, 0x72, 0x30, + 0x25, 0xf8, 0x2a, 0x3c, 0x00, 0x23, 0x05, 0xf8, 0x28, 0x3c, 0x05, 0xf8, + 0x27, 0x3c, 0x05, 0xf8, 0x26, 0x3c, 0x05, 0xf8, 0x25, 0x3c, 0x05, 0xf8, + 0x24, 0x3c, 0x05, 0xf8, 0x23, 0x3c, 0x05, 0xf8, 0x22, 0x3c, 0x05, 0xf8, + 0x21, 0x3c, 0x05, 0xf8, 0x20, 0x3c, 0x05, 0xf8, 0x1f, 0x3c, 0x10, 0x98, + 0x18, 0xb9, 0xb8, 0xf1, 0x00, 0x0f, 0x01, 0xd1, 0x0b, 0xe1, 0x98, 0x46, + 0x00, 0x22, 0x06, 0x9b, 0x1a, 0x99, 0x20, 0x46, 0x22, 0xf0, 0x96, 0xdc, + 0x1b, 0x99, 0x08, 0x90, 0x00, 0x22, 0x06, 0x9b, 0x20, 0x46, 0x22, 0xf0, + 0x8f, 0xdc, 0x08, 0x99, 0x06, 0x90, 0x11, 0xf0, 0x00, 0x61, 0x11, 0x91, + 0x07, 0xd1, 0x08, 0x9a, 0x02, 0xf0, 0x7f, 0x03, 0x31, 0x4a, 0xd2, 0x56, + 0x00, 0x2a, 0x21, 0xda, 0x2d, 0xe0, 0x08, 0x98, 0x08, 0x9b, 0x00, 0xf4, + 0xe0, 0x61, 0x13, 0xf4, 0x00, 0x0f, 0x4f, 0xea, 0x11, 0x21, 0x2c, 0x4b, + 0x00, 0xf0, 0x7f, 0x02, 0xa1, 0xf1, 0x04, 0x01, 0x08, 0xd0, 0x01, 0x29, + 0x4f, 0xf0, 0x14, 0x01, 0x01, 0xfb, 0x02, 0x33, 0x94, 0xbf, 0xdb, 0x68, + 0x9b, 0x68, 0x09, 0xe0, 0x01, 0x29, 0x4f, 0xf0, 0x14, 0x01, 0x03, 0xd8, + 0x01, 0xfb, 0x02, 0x33, 0x5b, 0x68, 0x01, 0xe0, 0x4a, 0x43, 0x9b, 0x58, + 0x02, 0x3b, 0x18, 0xbf, 0x01, 0x23, 0x53, 0xb1, 0x94, 0xf9, 0x5c, 0x36, + 0x01, 0x2b, 0x08, 0xd0, 0x4a, 0xf4, 0x80, 0x4a, 0x1f, 0xfa, 0x8a, 0xfa, + 0x01, 0x21, 0x0c, 0x91, 0x03, 0xe0, 0x0c, 0x93, 0x01, 0xe0, 0x00, 0x22, + 0x0c, 0x92, 0x06, 0x9b, 0x13, 0xf0, 0x00, 0x62, 0x06, 0xd1, 0x13, 0x49, + 0x03, 0xf0, 0x7f, 0x03, 0xc9, 0x56, 0x00, 0x29, 0x26, 0xda, 0x39, 0xe0, + 0x06, 0x98, 0x10, 0x4b, 0x00, 0xf4, 0xe0, 0x61, 0x4f, 0xea, 0x11, 0x21, + 0x10, 0xf4, 0x00, 0x0f, 0x00, 0xf0, 0x7f, 0x02, 0xa1, 0xf1, 0x04, 0x01, + 0x08, 0xd0, 0x01, 0x29, 0x4f, 0xf0, 0x14, 0x01, 0x01, 0xfb, 0x02, 0x33, + 0x94, 0xbf, 0xdb, 0x68, 0x9b, 0x68, 0x0f, 0xe0, 0x01, 0x29, 0x4f, 0xf0, + 0x14, 0x01, 0x09, 0xd8, 0x01, 0xfb, 0x02, 0x33, 0x5b, 0x68, 0x07, 0xe0, + 0x98, 0xe0, 0x85, 0x00, 0x40, 0x1b, 0x86, 0x00, 0x84, 0x18, 0x86, 0x00, + 0x4a, 0x43, 0x9b, 0x58, 0x02, 0x3b, 0x18, 0xbf, 0x01, 0x23, 0x63, 0xb1, + 0x94, 0xf9, 0x5c, 0x36, 0x01, 0x2b, 0x0a, 0xd0, 0x6f, 0xea, 0x4a, 0x4a, + 0x6f, 0xea, 0x5a, 0x4a, 0x01, 0x21, 0x1f, 0xfa, 0x8a, 0xfa, 0x0e, 0x91, + 0x03, 0xe0, 0x0e, 0x93, 0x01, 0xe0, 0x00, 0x22, 0x0e, 0x92, 0x35, 0xf8, + 0x76, 0x3c, 0xb8, 0xf1, 0x00, 0x0f, 0x02, 0xd0, 0x43, 0xf4, 0x00, 0x63, + 0x01, 0xe0, 0x43, 0xf0, 0x06, 0x03, 0x25, 0xf8, 0x76, 0x3c, 0xb8, 0xf1, + 0x00, 0x0f, 0x0c, 0xbf, 0x14, 0x27, 0x0e, 0x27, 0x3a, 0x46, 0x20, 0x46, + 0x08, 0x99, 0xa5, 0xf1, 0x1e, 0x03, 0x18, 0xf0, 0xff, 0xdf, 0x3a, 0x46, + 0x18, 0xab, 0x20, 0x46, 0x06, 0x99, 0x18, 0xf0, 0xf9, 0xdf, 0x18, 0xa9, + 0x06, 0x22, 0xa5, 0xf1, 0x48, 0x00, 0xfd, 0xf3, 0x83, 0xf4, 0x0c, 0x9b, + 0x09, 0x98, 0x0a, 0x99, 0x00, 0x22, 0x00, 0x93, 0x01, 0x90, 0x1a, 0x9b, + 0x02, 0x91, 0x03, 0x92, 0x41, 0x46, 0x08, 0x9a, 0x20, 0x46, 0x19, 0xf0, + 0x05, 0xd8, 0x25, 0xf8, 0x16, 0x0c, 0x0e, 0x9b, 0x0d, 0x98, 0x0a, 0x99, + 0x00, 0x22, 0x00, 0x93, 0x01, 0x90, 0x02, 0x91, 0x03, 0x92, 0x1b, 0x9b, + 0x06, 0x9a, 0x20, 0x46, 0x41, 0x46, 0x18, 0xf0, 0xf5, 0xdf, 0xa5, 0xf1, + 0x18, 0x07, 0x25, 0xf8, 0x42, 0x0c, 0xa5, 0xf1, 0x14, 0x00, 0xb8, 0xf1, + 0x00, 0x0f, 0x0a, 0xd0, 0x6f, 0xf0, 0x3b, 0x03, 0x05, 0xf8, 0x18, 0x3c, + 0x00, 0x23, 0x05, 0xf8, 0x17, 0x3c, 0x0b, 0xf1, 0x0a, 0x01, 0x06, 0x22, + 0x07, 0xe0, 0x6f, 0xf0, 0x4b, 0x03, 0x05, 0xf8, 0x18, 0x3c, 0x05, 0xf8, + 0x17, 0x8c, 0x0f, 0x99, 0x0c, 0x22, 0xfd, 0xf3, 0x47, 0xf4, 0x0b, 0x98, + 0x11, 0x9a, 0x81, 0xb2, 0x5a, 0xb9, 0x08, 0x98, 0xa0, 0x4a, 0x00, 0xf0, + 0x7f, 0x03, 0xd3, 0x56, 0x00, 0x2b, 0x04, 0xda, 0x15, 0xf8, 0x1e, 0x3c, + 0x03, 0xf0, 0x0f, 0x03, 0x01, 0xe0, 0x15, 0xf8, 0x1e, 0x3c, 0x1b, 0x02, + 0x19, 0x43, 0x0b, 0x91, 0x1e, 0xe0, 0x41, 0x46, 0x06, 0x22, 0xa5, 0xf1, + 0x1e, 0x00, 0xfd, 0xf3, 0x8f, 0xf4, 0x41, 0x46, 0x10, 0x22, 0xa5, 0xf1, + 0x18, 0x00, 0xfd, 0xf3, 0x89, 0xf4, 0xa5, 0xf1, 0x48, 0x00, 0x41, 0x46, + 0x06, 0x22, 0xfd, 0xf3, 0x83, 0xf4, 0x47, 0x46, 0x05, 0xf8, 0x42, 0x8c, + 0x05, 0xf8, 0x41, 0x8c, 0xcd, 0xf8, 0x18, 0x80, 0xcd, 0xf8, 0x20, 0x80, + 0xcd, 0xf8, 0x38, 0x80, 0xcd, 0xf8, 0x30, 0x80, 0x73, 0x6a, 0x58, 0x05, + 0x0a, 0xd5, 0x1a, 0x9a, 0x11, 0x01, 0x07, 0xd5, 0xd4, 0xf8, 0x40, 0x01, + 0x49, 0x46, 0x0a, 0x9b, 0x2a, 0xf0, 0x0a, 0xde, 0x05, 0xf8, 0x43, 0x0c, + 0x25, 0xf8, 0x74, 0xac, 0x0b, 0x99, 0x25, 0xf8, 0x64, 0x1c, 0x1b, 0x9b, + 0x13, 0xf0, 0x00, 0x61, 0x02, 0xd0, 0x94, 0xf8, 0xc0, 0x14, 0x07, 0xe0, + 0x03, 0xf0, 0x7f, 0x03, 0x16, 0x2b, 0x02, 0xd8, 0x7a, 0x4a, 0x9a, 0x40, + 0x00, 0xd4, 0x01, 0x21, 0x08, 0x9a, 0x89, 0xb2, 0x12, 0xf0, 0x00, 0x6a, + 0x04, 0xd0, 0x94, 0xf8, 0xc0, 0xa4, 0x4f, 0xea, 0x8a, 0x0a, 0x0d, 0xe0, + 0x08, 0x98, 0x00, 0xf0, 0x7f, 0x03, 0x16, 0x2b, 0x02, 0xd8, 0x71, 0x4a, + 0x9a, 0x40, 0x01, 0xd4, 0x4f, 0xf0, 0x01, 0x0a, 0x4f, 0xea, 0x8a, 0x0a, + 0x1f, 0xfa, 0x8a, 0xfa, 0x06, 0x9a, 0x4a, 0xea, 0x01, 0x01, 0x12, 0xf0, + 0x00, 0x6a, 0x04, 0xd0, 0x94, 0xf8, 0xc0, 0xa4, 0x4f, 0xea, 0x0a, 0x1a, + 0x0d, 0xe0, 0x06, 0x98, 0x00, 0xf0, 0x7f, 0x03, 0x16, 0x2b, 0x02, 0xd8, + 0x64, 0x4a, 0x9a, 0x40, 0x01, 0xd4, 0x4f, 0xf0, 0x01, 0x0a, 0x4f, 0xea, + 0x0a, 0x1a, 0x1f, 0xfa, 0x8a, 0xfa, 0x23, 0x6b, 0x41, 0xea, 0x0a, 0x0a, + 0x18, 0x69, 0x0c, 0xf0, 0x5d, 0xfe, 0xc0, 0xb2, 0x4a, 0xea, 0x00, 0x2a, + 0x25, 0xf8, 0x62, 0xac, 0xdd, 0xf8, 0x68, 0xb0, 0x1b, 0xf0, 0x00, 0x6a, + 0x02, 0xd0, 0x94, 0xf8, 0xc0, 0xa4, 0x0a, 0xe0, 0x0b, 0xf0, 0x7f, 0x03, + 0x16, 0x2b, 0x02, 0xd8, 0x54, 0x4a, 0x9a, 0x40, 0x01, 0xd4, 0x4f, 0xf0, + 0x01, 0x0a, 0x1f, 0xfa, 0x8a, 0xfa, 0x09, 0x99, 0x4b, 0x1e, 0xdb, 0xb2, + 0x01, 0x2b, 0x07, 0xd8, 0x23, 0x68, 0x4a, 0xf0, 0x10, 0x0a, 0xd3, 0xf8, + 0x8c, 0x30, 0x9a, 0x69, 0x01, 0x32, 0x9a, 0x61, 0x59, 0x46, 0x20, 0x46, + 0x15, 0xf0, 0x92, 0xd9, 0x40, 0xea, 0x0a, 0x00, 0x25, 0xf8, 0x6e, 0x0c, + 0x59, 0x46, 0x20, 0x46, 0x1f, 0xf0, 0xbe, 0xdc, 0x25, 0xf8, 0x6c, 0x0c, + 0x1b, 0x99, 0x20, 0x46, 0x1f, 0xf0, 0xb8, 0xdc, 0x25, 0xf8, 0x6a, 0x0c, + 0x10, 0x9a, 0x12, 0xb9, 0xb8, 0xf1, 0x00, 0x0f, 0x0b, 0xd0, 0x08, 0x99, + 0x20, 0x46, 0x1f, 0xf0, 0xad, 0xdc, 0x25, 0xf8, 0x68, 0x0c, 0x06, 0x99, + 0x20, 0x46, 0x1f, 0xf0, 0xa7, 0xdc, 0x25, 0xf8, 0x66, 0x0c, 0x1a, 0x99, + 0x0b, 0x01, 0x08, 0xd5, 0x09, 0x9b, 0x04, 0x2b, 0x05, 0xd1, 0x0a, 0x9a, + 0x20, 0x46, 0x18, 0xf0, 0x1d, 0xdd, 0x25, 0xf8, 0x38, 0x0c, 0x1b, 0x99, + 0x08, 0x01, 0x08, 0xd5, 0x0d, 0x98, 0x04, 0x28, 0x05, 0xd1, 0x0a, 0x9a, + 0x20, 0x46, 0x18, 0xf0, 0x11, 0xdd, 0x25, 0xf8, 0x36, 0x0c, 0xd9, 0xf8, + 0x04, 0x30, 0x5a, 0x06, 0x40, 0xf1, 0xb9, 0x80, 0x14, 0x99, 0x00, 0x29, + 0x00, 0xf0, 0xb5, 0x80, 0x28, 0x4b, 0x2a, 0x9a, 0x9b, 0x5c, 0x0f, 0x93, + 0x04, 0xeb, 0x43, 0x03, 0xb3, 0xf8, 0xfe, 0xb1, 0xbb, 0xf1, 0x00, 0x0f, + 0x00, 0xf0, 0xa9, 0x80, 0x73, 0x6a, 0x10, 0x93, 0x5b, 0x05, 0x7e, 0xd4, + 0x28, 0x98, 0x00, 0x28, 0x7b, 0xd1, 0x1a, 0x99, 0x20, 0x46, 0x09, 0x9a, + 0x0a, 0x9b, 0x0b, 0x91, 0x18, 0xf0, 0x3a, 0xdc, 0x82, 0x46, 0x97, 0xb1, + 0x08, 0x99, 0x0c, 0x9a, 0x20, 0x46, 0x0e, 0xf0, 0x01, 0xdf, 0x06, 0x99, + 0x03, 0x46, 0x0e, 0x9a, 0x20, 0x46, 0x05, 0x93, 0x0e, 0xf0, 0xfa, 0xde, + 0xb7, 0xf8, 0x02, 0x80, 0x05, 0x9b, 0x35, 0xf8, 0x42, 0x7c, 0x98, 0x44, + 0x1c, 0xe0, 0x07, 0x9a, 0x12, 0xbb, 0x0b, 0x99, 0x09, 0x9a, 0x07, 0x9b, + 0x20, 0x46, 0x0f, 0xf0, 0x29, 0xd9, 0xdd, 0xf8, 0x6c, 0xc0, 0x0d, 0x9a, + 0x61, 0x46, 0x0a, 0x9b, 0x00, 0xeb, 0x0a, 0x08, 0x20, 0x46, 0xcd, 0xf8, + 0x14, 0xc0, 0x18, 0xf0, 0x11, 0xdc, 0xdd, 0xf8, 0x14, 0xc0, 0x07, 0x46, + 0x61, 0x46, 0x20, 0x46, 0x0d, 0x9a, 0x07, 0x9b, 0x0f, 0xf0, 0x14, 0xd9, + 0xc7, 0x19, 0x06, 0xe0, 0x40, 0x1b, 0x86, 0x00, 0x00, 0x02, 0x10, 0x28, + 0x98, 0xe0, 0x85, 0x00, 0x80, 0x46, 0xca, 0xeb, 0x08, 0x03, 0x9b, 0x45, + 0x25, 0xf8, 0x70, 0x8c, 0x25, 0xf8, 0x4a, 0x7c, 0x24, 0xd3, 0x10, 0x9b, + 0x58, 0x06, 0x02, 0xd5, 0x2a, 0x98, 0x01, 0x28, 0x1e, 0xd0, 0xda, 0x44, + 0x20, 0x46, 0x0b, 0x99, 0x09, 0x9a, 0xc8, 0xeb, 0x0a, 0x03, 0x0e, 0xf0, + 0xbf, 0xde, 0xff, 0x28, 0x05, 0xd9, 0xb4, 0xf8, 0x2a, 0x36, 0x98, 0x42, + 0x28, 0xbf, 0x18, 0x46, 0x01, 0xe0, 0x4f, 0xf4, 0x80, 0x70, 0x2a, 0x99, + 0x80, 0xb2, 0x01, 0xf5, 0x45, 0x73, 0x04, 0xeb, 0x43, 0x03, 0x9a, 0x88, + 0x82, 0x42, 0x03, 0xd0, 0x98, 0x80, 0x20, 0x46, 0x25, 0xf0, 0x56, 0xdf, + 0x23, 0x68, 0x93, 0xf8, 0x44, 0x30, 0x00, 0x2b, 0x2d, 0xd0, 0x2a, 0x9a, + 0x03, 0x2a, 0x2a, 0xd8, 0xd4, 0xf8, 0x64, 0x01, 0x0f, 0x99, 0x42, 0x46, + 0x22, 0xe0, 0x23, 0x68, 0x93, 0xf8, 0x44, 0x30, 0x0b, 0xb3, 0x2a, 0x9b, + 0x03, 0x2b, 0x1e, 0xd8, 0x3f, 0xb1, 0x0c, 0x9a, 0x20, 0x46, 0x08, 0x99, + 0x0e, 0xf0, 0x86, 0xde, 0x7a, 0x88, 0x82, 0x18, 0x0f, 0xe0, 0xdd, 0xf8, + 0x68, 0x80, 0x09, 0x9a, 0x41, 0x46, 0x0a, 0x9b, 0x20, 0x46, 0x18, 0xf0, + 0xad, 0xdb, 0x09, 0x9a, 0x05, 0x46, 0x41, 0x46, 0x20, 0x46, 0x3b, 0x46, + 0x0f, 0xf0, 0xb2, 0xd8, 0x42, 0x19, 0xd4, 0xf8, 0x64, 0x01, 0x0f, 0x99, + 0x4b, 0x46, 0x3d, 0xf0, 0xbf, 0xdb, 0x73, 0x6a, 0xbd, 0xf8, 0x72, 0x00, + 0x43, 0xf0, 0x84, 0x03, 0x73, 0x62, 0x1f, 0xb0, 0xbd, 0xe8, 0xf0, 0x8f, + 0x38, 0xb5, 0xd1, 0xf8, 0xd8, 0x32, 0x04, 0x46, 0x1d, 0x8c, 0x05, 0xbb, + 0x8b, 0x6d, 0x40, 0xf2, 0x37, 0x15, 0x1d, 0x40, 0x03, 0x6b, 0x00, 0x2d, + 0x14, 0xbf, 0x11, 0x25, 0x01, 0x25, 0x19, 0x68, 0x02, 0x29, 0x07, 0xd1, + 0x90, 0xf8, 0x5c, 0x16, 0x01, 0x31, 0xc9, 0xb2, 0x01, 0x29, 0x98, 0xbf, + 0x45, 0xf0, 0x20, 0x05, 0x5b, 0x7d, 0x53, 0xb1, 0x90, 0x6b, 0x02, 0xf1, + 0x3c, 0x01, 0x21, 0xf0, 0xdd, 0xda, 0x20, 0xb1, 0x94, 0xf9, 0x47, 0x36, + 0x0b, 0xb1, 0x45, 0xf4, 0x80, 0x65, 0x28, 0x46, 0x38, 0xbd, 0x4b, 0x78, + 0x30, 0xb5, 0x01, 0x2b, 0x35, 0xdd, 0xc8, 0x78, 0x8a, 0x78, 0x42, 0xea, + 0x00, 0x22, 0x01, 0x2a, 0x2f, 0xd1, 0x07, 0x2b, 0x30, 0xdd, 0x0a, 0x7a, + 0x4c, 0x7a, 0xa3, 0xf1, 0x08, 0x00, 0x42, 0xea, 0x04, 0x24, 0x00, 0x22, + 0x01, 0xe0, 0x01, 0x32, 0x04, 0x38, 0xa2, 0x42, 0x01, 0xda, 0x04, 0x28, + 0xf9, 0xdc, 0x12, 0x1b, 0x00, 0xeb, 0x82, 0x02, 0x01, 0x2a, 0x1d, 0xdd, + 0x01, 0xf1, 0x08, 0x00, 0x00, 0xeb, 0x84, 0x04, 0xa0, 0x78, 0xe5, 0x78, + 0x02, 0x3a, 0x40, 0xea, 0x05, 0x24, 0x00, 0x20, 0x01, 0xe0, 0x01, 0x30, + 0x04, 0x3a, 0xa0, 0x42, 0x01, 0xda, 0x03, 0x2a, 0xf9, 0xdc, 0x00, 0x1b, + 0x02, 0xeb, 0x80, 0x02, 0x01, 0x2a, 0x09, 0xdd, 0x90, 0x1e, 0x08, 0xd0, + 0x18, 0x1a, 0x48, 0x70, 0x02, 0xe0, 0x6f, 0xf0, 0x16, 0x00, 0x30, 0xbd, + 0x00, 0x20, 0x30, 0xbd, 0x00, 0x20, 0x30, 0xbd, 0x2f, 0x2a, 0x70, 0xb5, + 0x30, 0xd9, 0xb0, 0xf8, 0x80, 0x31, 0x04, 0x6b, 0x0b, 0x60, 0xb0, 0xf8, + 0x82, 0x31, 0xa5, 0x89, 0x4b, 0x60, 0xe3, 0x89, 0x1b, 0x07, 0x43, 0xea, + 0x05, 0x33, 0x05, 0x68, 0x8b, 0x60, 0x2b, 0x69, 0xd0, 0xf8, 0x84, 0x01, + 0xde, 0x6b, 0x3b, 0x2a, 0xce, 0x60, 0xae, 0x68, 0x0e, 0x61, 0x9e, 0x6a, + 0x4e, 0x61, 0xde, 0x6a, 0x8e, 0x61, 0xb5, 0xf8, 0x7a, 0x60, 0x48, 0x62, + 0xd5, 0xf8, 0xb0, 0x00, 0xce, 0x61, 0x08, 0x62, 0x58, 0x68, 0x88, 0x62, + 0x98, 0x6b, 0xc8, 0x62, 0x0d, 0xd9, 0x20, 0x89, 0x08, 0x63, 0x60, 0x89, + 0x48, 0x63, 0x00, 0x20, 0x3f, 0x2a, 0x88, 0x63, 0x06, 0xd9, 0x1b, 0x6c, + 0xcb, 0x63, 0x70, 0xbd, 0x6f, 0xf0, 0x0d, 0x00, 0x70, 0xbd, 0x00, 0x20, + 0x70, 0xbd, 0x2d, 0xe9, 0xf0, 0x4f, 0x85, 0xb0, 0x03, 0x91, 0x01, 0x68, + 0x91, 0x46, 0x91, 0xf8, 0x2f, 0x10, 0x0e, 0xaa, 0x1f, 0x46, 0x05, 0x46, + 0x92, 0xe8, 0x0c, 0x08, 0x11, 0x9e, 0xdd, 0xf8, 0x48, 0xa0, 0xdd, 0xf8, + 0x4c, 0x80, 0x11, 0xb1, 0xb9, 0xf1, 0x14, 0x0f, 0x47, 0xd0, 0xd5, 0xf8, + 0x7c, 0x02, 0x02, 0x92, 0x01, 0x93, 0x41, 0xf0, 0x43, 0xdd, 0x02, 0x9a, + 0x04, 0x46, 0x01, 0x9b, 0x00, 0x28, 0x3c, 0xd0, 0xc0, 0xf8, 0x04, 0x90, + 0x82, 0x60, 0xc3, 0x60, 0xc0, 0xf8, 0x10, 0xb0, 0xb8, 0xf1, 0x00, 0x0f, + 0x01, 0xd0, 0x0a, 0xf1, 0x10, 0x0a, 0xc4, 0xf8, 0x14, 0xa0, 0xba, 0xf1, + 0x00, 0x0f, 0x1f, 0xd0, 0xf6, 0xb1, 0x68, 0x68, 0x51, 0x46, 0x02, 0xf0, + 0x63, 0xd8, 0xe0, 0x63, 0x38, 0xb9, 0xd5, 0xf8, 0x7c, 0x02, 0x21, 0x46, + 0x05, 0xb0, 0xbd, 0xe8, 0xf0, 0x4f, 0x41, 0xf0, 0x33, 0x9d, 0xb8, 0xf1, + 0x00, 0x0f, 0x09, 0xd0, 0x41, 0x46, 0x10, 0x22, 0xfd, 0xf3, 0xa6, 0xf1, + 0xe0, 0x6b, 0x62, 0x69, 0x10, 0x30, 0x31, 0x46, 0x10, 0x3a, 0x01, 0xe0, + 0x62, 0x69, 0x31, 0x46, 0xfd, 0xf3, 0x9c, 0xf1, 0x28, 0x46, 0x03, 0x99, + 0x22, 0x46, 0x3b, 0x46, 0x1d, 0xf0, 0x4a, 0xda, 0x28, 0x46, 0x21, 0x46, + 0x05, 0xb0, 0xbd, 0xe8, 0xf0, 0x4f, 0x20, 0xf0, 0xd5, 0x9d, 0x05, 0xb0, + 0xbd, 0xe8, 0xf0, 0x8f, 0x2d, 0xe9, 0xf0, 0x4f, 0x87, 0xb0, 0x8a, 0x46, + 0x11, 0x99, 0x05, 0x46, 0x0b, 0x29, 0x93, 0x46, 0x03, 0x93, 0xdd, 0xf8, + 0x40, 0x90, 0x12, 0x9c, 0x40, 0xf2, 0x63, 0x81, 0xba, 0xf8, 0x16, 0x30, + 0xa1, 0xf1, 0x0c, 0x06, 0x09, 0xf1, 0x0c, 0x07, 0x03, 0xf4, 0xff, 0x63, + 0xdb, 0x08, 0x38, 0x46, 0x31, 0x46, 0x03, 0x22, 0x02, 0x93, 0xfd, 0xf3, + 0x11, 0xf5, 0xb0, 0xb1, 0x90, 0xf8, 0x02, 0x80, 0xd5, 0xf8, 0x5c, 0x01, + 0x48, 0xf4, 0x30, 0x61, 0xb8, 0xf1, 0x0e, 0x0f, 0x8c, 0xbf, 0x4f, 0xf4, + 0x80, 0x53, 0x4f, 0xf4, 0x00, 0x53, 0x19, 0x43, 0x41, 0xf0, 0x70, 0xdb, + 0x38, 0xb9, 0xd5, 0xf8, 0x68, 0x31, 0x9b, 0x88, 0x99, 0x05, 0x02, 0xd4, + 0x3b, 0xe1, 0xdd, 0xf8, 0x08, 0x80, 0x00, 0x21, 0xac, 0x22, 0x20, 0x46, + 0xfd, 0xf3, 0xb4, 0xf1, 0x59, 0x46, 0x06, 0x22, 0x20, 0x46, 0xfd, 0xf3, + 0x4b, 0xf1, 0x99, 0xf8, 0x0a, 0x30, 0x99, 0xf8, 0x0b, 0xb0, 0x03, 0x99, + 0x43, 0xea, 0x0b, 0x2b, 0x0b, 0xf0, 0x03, 0x03, 0x01, 0x2b, 0x08, 0xbf, + 0x84, 0xf8, 0x34, 0x30, 0xe3, 0x88, 0x00, 0x29, 0x14, 0xbf, 0x4f, 0xf4, + 0x80, 0x72, 0x00, 0x22, 0x13, 0x43, 0xe3, 0x80, 0x51, 0x46, 0xa4, 0xf8, + 0x62, 0xb0, 0x28, 0x46, 0x1e, 0xf0, 0x40, 0xde, 0x51, 0x46, 0x60, 0x85, + 0x28, 0x46, 0x12, 0xf0, 0xcf, 0xde, 0x02, 0x9b, 0xa0, 0x85, 0x43, 0x45, + 0x03, 0xd1, 0xe3, 0x88, 0x43, 0xf0, 0x02, 0x03, 0xe3, 0x80, 0x05, 0xeb, + 0x08, 0x03, 0x93, 0xf8, 0x4c, 0x30, 0x31, 0x46, 0x84, 0xf8, 0x61, 0x30, + 0x99, 0xf8, 0x09, 0x20, 0x99, 0xf8, 0x08, 0x30, 0x38, 0x46, 0x43, 0xea, + 0x02, 0x23, 0xe3, 0x85, 0x00, 0x22, 0xfd, 0xf3, 0xb3, 0xf4, 0x01, 0x46, + 0x48, 0xb1, 0x42, 0x78, 0x20, 0x2a, 0x06, 0xd8, 0x22, 0x72, 0x04, 0xf1, + 0x09, 0x00, 0x02, 0x31, 0xfd, 0xf3, 0x06, 0xf1, 0x01, 0xe0, 0x00, 0x23, + 0x23, 0x72, 0x00, 0x23, 0x00, 0x93, 0x28, 0x46, 0x39, 0x46, 0x32, 0x46, + 0x23, 0x46, 0x1f, 0xf0, 0xc5, 0xd9, 0x00, 0x28, 0x40, 0xf0, 0xdd, 0x80, + 0x38, 0x46, 0x31, 0x46, 0x01, 0x22, 0xfd, 0xf3, 0x95, 0xf4, 0x30, 0xb1, + 0x43, 0x78, 0x08, 0x2b, 0x03, 0xd9, 0xe3, 0x88, 0x43, 0xf0, 0x01, 0x03, + 0xe3, 0x80, 0x48, 0xf4, 0x30, 0x63, 0xb8, 0xf1, 0x0e, 0x0f, 0x8c, 0xbf, + 0x4f, 0xf4, 0x80, 0x58, 0x4f, 0xf4, 0x00, 0x58, 0x43, 0xea, 0x08, 0x08, + 0x1b, 0xf0, 0x02, 0x0f, 0xa4, 0xf8, 0x32, 0x80, 0x0d, 0xd0, 0x38, 0x46, + 0x31, 0x46, 0x06, 0x22, 0xfd, 0xf3, 0x78, 0xf4, 0x38, 0xb1, 0x43, 0x78, + 0x01, 0x2b, 0x04, 0xd9, 0xc2, 0x78, 0x83, 0x78, 0x43, 0xea, 0x02, 0x23, + 0x23, 0x86, 0xd5, 0xf8, 0x68, 0x01, 0x83, 0x79, 0x5b, 0xb1, 0x11, 0x99, + 0x22, 0x46, 0x01, 0x91, 0x53, 0x46, 0x03, 0x99, 0xcd, 0xf8, 0x00, 0x90, + 0x4f, 0xf0, 0x28, 0xde, 0x00, 0x28, 0x00, 0xf0, 0xa2, 0x80, 0x31, 0x46, + 0x38, 0x46, 0x30, 0x22, 0xfd, 0xf3, 0x5a, 0xf4, 0x01, 0x46, 0x18, 0xb1, + 0x28, 0x46, 0x22, 0x46, 0x11, 0xf0, 0x3c, 0xdb, 0x31, 0x46, 0x38, 0x46, + 0x44, 0x22, 0xfd, 0xf3, 0x4f, 0xf4, 0x01, 0x46, 0x18, 0xb1, 0x28, 0x46, + 0x22, 0x46, 0x11, 0xf0, 0x71, 0xda, 0x31, 0x46, 0x38, 0x46, 0x04, 0x97, + 0x05, 0x96, 0xfe, 0xf3, 0x4f, 0xf2, 0x01, 0x46, 0x18, 0xb1, 0x28, 0x46, + 0x22, 0x46, 0x11, 0xf0, 0x21, 0xdc, 0x2b, 0x68, 0x5b, 0x6b, 0xd3, 0xb1, + 0x04, 0x97, 0x05, 0x96, 0x06, 0xe0, 0x28, 0x46, 0x41, 0x46, 0x04, 0xaa, + 0x05, 0xab, 0x1e, 0xf0, 0x81, 0xdb, 0x40, 0xb9, 0x04, 0x98, 0x05, 0x99, + 0xdd, 0x22, 0xfd, 0xf3, 0x2b, 0xf4, 0x80, 0x46, 0x00, 0x28, 0xf0, 0xd1, + 0x07, 0xe0, 0xe3, 0x88, 0x43, 0xf0, 0x04, 0x03, 0xe3, 0x80, 0x98, 0xf8, + 0x08, 0x30, 0x84, 0xf8, 0x6a, 0x30, 0x00, 0x23, 0x38, 0x46, 0x31, 0x46, + 0x31, 0x4a, 0x00, 0x93, 0x1d, 0xf0, 0x3c, 0xda, 0x18, 0xb1, 0xe3, 0x88, + 0x43, 0xf0, 0x08, 0x03, 0xe3, 0x80, 0xe3, 0x88, 0x28, 0x46, 0x23, 0xf4, + 0x66, 0x63, 0xe3, 0x80, 0x39, 0x46, 0x32, 0x46, 0x21, 0xf0, 0x48, 0xd9, + 0x81, 0x46, 0x00, 0x28, 0x4b, 0xd0, 0x03, 0x78, 0x90, 0xf8, 0x01, 0x80, + 0x43, 0xea, 0x08, 0x28, 0xe3, 0x88, 0x18, 0xf4, 0x80, 0x4f, 0x43, 0xf0, + 0x20, 0x03, 0x9b, 0xb2, 0xe3, 0x80, 0x0d, 0xd0, 0x43, 0xf4, 0x00, 0x73, + 0xe3, 0x80, 0x2b, 0x68, 0x93, 0xf8, 0x2f, 0x30, 0x33, 0xb1, 0xd5, 0xf8, + 0xfc, 0x34, 0x1b, 0x78, 0x13, 0xb1, 0x28, 0x46, 0x2f, 0xf0, 0x9e, 0xdc, + 0x18, 0xf0, 0x20, 0x0f, 0x03, 0xd0, 0xe3, 0x88, 0x43, 0xf4, 0x80, 0x63, + 0xe3, 0x80, 0x18, 0xf0, 0x40, 0x0f, 0x03, 0xd0, 0xe3, 0x88, 0x43, 0xf4, + 0x00, 0x63, 0xe3, 0x80, 0x09, 0xf1, 0x03, 0x01, 0x10, 0x22, 0x04, 0xf1, + 0x4d, 0x00, 0xfd, 0xf3, 0x35, 0xf0, 0x32, 0x46, 0x28, 0x46, 0x39, 0x46, + 0x21, 0xf0, 0xdc, 0xd8, 0x06, 0x46, 0xa0, 0xb1, 0x31, 0x78, 0x72, 0x78, + 0x28, 0x46, 0x10, 0xf0, 0x2f, 0xd8, 0x60, 0x86, 0x18, 0xf0, 0x02, 0x00, + 0x0b, 0xd0, 0x70, 0x78, 0x10, 0xf0, 0x04, 0x00, 0x07, 0xd0, 0xe3, 0x88, + 0x00, 0x20, 0x43, 0xf0, 0x40, 0x03, 0xe3, 0x80, 0x01, 0xe0, 0x4f, 0xf0, + 0xff, 0x30, 0x07, 0xb0, 0xbd, 0xe8, 0xf0, 0x8f, 0xc5, 0xb6, 0x01, 0x00, + 0x2d, 0xe9, 0xf0, 0x4f, 0xd0, 0xf8, 0x68, 0x61, 0xb5, 0xb0, 0x1d, 0x46, + 0xdd, 0xf8, 0xf8, 0xb0, 0xb3, 0x79, 0x07, 0x91, 0x04, 0x46, 0x3f, 0x9f, + 0xbb, 0xf8, 0x0a, 0xa0, 0x13, 0xb1, 0x30, 0x46, 0x4f, 0xf0, 0x60, 0xdb, + 0xb5, 0xf8, 0x00, 0x80, 0x08, 0xf0, 0xfc, 0x08, 0xa8, 0xf1, 0x80, 0x00, + 0xd0, 0xf1, 0x00, 0x08, 0x48, 0xeb, 0x00, 0x08, 0xb8, 0xf1, 0x00, 0x0f, + 0x11, 0xd0, 0xb3, 0x88, 0x59, 0x07, 0x10, 0xd4, 0x07, 0x9a, 0xd4, 0xf8, + 0x5c, 0x01, 0xd1, 0x8a, 0x01, 0xf4, 0xff, 0x61, 0xc9, 0x08, 0x40, 0xf0, + 0xc3, 0xdf, 0xd0, 0xf1, 0x01, 0x09, 0x38, 0xbf, 0x4f, 0xf0, 0x00, 0x09, + 0x03, 0xe0, 0xc1, 0x46, 0x01, 0xe0, 0x4f, 0xf0, 0x00, 0x09, 0xa7, 0xf1, + 0x0c, 0x01, 0x00, 0x22, 0x0b, 0xf1, 0x0c, 0x00, 0xfd, 0xf3, 0x7a, 0xf3, + 0xb3, 0x68, 0x01, 0x46, 0x02, 0x2b, 0x0a, 0xd0, 0x13, 0xb9, 0x1a, 0xf0, + 0x01, 0x0f, 0x04, 0xe0, 0x01, 0x2b, 0x40, 0xf0, 0x60, 0x81, 0x1a, 0xf0, + 0x02, 0x0f, 0x00, 0xf0, 0x5c, 0x81, 0x30, 0x46, 0x4a, 0x46, 0x4f, 0xf0, + 0x51, 0xdd, 0x00, 0x28, 0x00, 0xf0, 0x55, 0x81, 0x73, 0x7b, 0xda, 0x07, + 0x09, 0xd4, 0x06, 0xf1, 0x0d, 0x00, 0x05, 0xf1, 0x10, 0x01, 0x06, 0x22, + 0xfc, 0xf3, 0x9c, 0xf7, 0x00, 0x28, 0x40, 0xf0, 0x48, 0x81, 0x09, 0xab, + 0x05, 0xf1, 0x10, 0x0a, 0x02, 0x93, 0x20, 0x46, 0x07, 0x99, 0x52, 0x46, + 0x43, 0x46, 0xcd, 0xf8, 0x00, 0xb0, 0x01, 0x97, 0xff, 0xf7, 0x1c, 0xfe, + 0x00, 0x28, 0x40, 0xf0, 0x38, 0x81, 0x9d, 0xf8, 0x2c, 0x30, 0xbd, 0xf8, + 0x56, 0x20, 0x00, 0x93, 0x20, 0x46, 0x51, 0x46, 0x0d, 0xf1, 0x2d, 0x03, + 0x0d, 0xf0, 0xea, 0xde, 0x05, 0x46, 0x30, 0xb1, 0xb8, 0xf1, 0x00, 0x0f, + 0x03, 0xd0, 0xc3, 0x88, 0xdb, 0x05, 0x40, 0xf1, 0x24, 0x81, 0x93, 0x4a, + 0xbd, 0xf8, 0x4e, 0x30, 0x12, 0x68, 0x19, 0xb2, 0xd1, 0x42, 0x44, 0xbf, + 0xd3, 0x18, 0xad, 0xf8, 0x4e, 0x30, 0xe5, 0xb1, 0xea, 0x88, 0xbd, 0xf8, + 0x2a, 0x30, 0x83, 0xea, 0x02, 0x01, 0x88, 0x07, 0x09, 0xd4, 0xb5, 0xf9, + 0x2a, 0x20, 0xbd, 0xf9, 0x4e, 0x30, 0x9a, 0x42, 0xa8, 0xbf, 0x13, 0x46, + 0xad, 0xf8, 0x4e, 0x30, 0x14, 0xe0, 0x91, 0x07, 0x12, 0xd5, 0x9a, 0x07, + 0x10, 0xd4, 0x6a, 0x8d, 0x43, 0xf0, 0x02, 0x03, 0xad, 0xf8, 0x4e, 0x20, + 0xad, 0xf8, 0x2a, 0x30, 0x08, 0xe0, 0xd4, 0xf8, 0x1c, 0x35, 0x2b, 0xb1, + 0xbd, 0xf9, 0x4e, 0x20, 0x1b, 0xb2, 0x9a, 0x42, 0xc0, 0xf2, 0xf3, 0x80, + 0x94, 0xf8, 0xf4, 0x37, 0xd8, 0x07, 0x5d, 0xd5, 0x00, 0x23, 0xad, 0xf8, + 0x8c, 0x30, 0xb3, 0x88, 0x99, 0x07, 0x0b, 0xd5, 0x60, 0x68, 0x39, 0x46, + 0x01, 0xf0, 0xfe, 0xdd, 0x22, 0x90, 0xa8, 0xb1, 0x59, 0x46, 0x3a, 0x46, + 0xfc, 0xf3, 0x4c, 0xf7, 0xad, 0xf8, 0x8c, 0x70, 0xbd, 0xf8, 0x8c, 0x10, + 0x60, 0x68, 0x8c, 0x31, 0x01, 0xf0, 0xf0, 0xdd, 0xbd, 0xf8, 0x8c, 0x30, + 0x05, 0x46, 0x58, 0xb9, 0x23, 0xb1, 0x60, 0x68, 0x22, 0x99, 0x1a, 0x46, + 0x01, 0xf0, 0xf6, 0xdd, 0xd4, 0xf8, 0x68, 0x01, 0x04, 0x21, 0x4f, 0xf0, + 0x51, 0xda, 0xc6, 0xe0, 0x01, 0x26, 0x20, 0x46, 0x09, 0xa9, 0x05, 0xf1, + 0x0c, 0x02, 0x80, 0x33, 0x00, 0x96, 0x0e, 0xf0, 0x95, 0xd8, 0x07, 0x46, + 0xc8, 0xb9, 0x6d, 0x23, 0xb4, 0xf8, 0xf6, 0x27, 0x6b, 0x60, 0x2b, 0x69, + 0x2a, 0x81, 0x0c, 0x33, 0x2b, 0x60, 0x6e, 0x81, 0xd4, 0xf8, 0x68, 0x01, + 0x4f, 0xf0, 0x7a, 0xda, 0x08, 0x23, 0x8d, 0xe8, 0x88, 0x00, 0x02, 0x97, + 0x03, 0x95, 0x2b, 0x68, 0x01, 0x46, 0x04, 0x93, 0x20, 0x46, 0x45, 0x22, + 0x3b, 0x46, 0x17, 0xf0, 0xe1, 0xdc, 0xbd, 0xf8, 0x8c, 0x20, 0x60, 0x68, + 0x8c, 0x32, 0x29, 0x46, 0x01, 0xf0, 0xc4, 0xdd, 0xbd, 0xf8, 0x8c, 0x20, + 0x00, 0x2a, 0x00, 0xf0, 0x96, 0x80, 0x60, 0x68, 0x22, 0x99, 0x01, 0xf0, + 0xbb, 0xdd, 0x90, 0xe0, 0xd4, 0xf8, 0x18, 0x08, 0x0a, 0xf0, 0xf2, 0xd9, + 0x28, 0xb1, 0xd4, 0xf8, 0x18, 0x08, 0x09, 0xa9, 0x0a, 0xf0, 0x30, 0xf8, + 0x85, 0xe0, 0xe5, 0xb9, 0xd4, 0xf8, 0x28, 0x35, 0x02, 0x2b, 0x1a, 0xd1, + 0x07, 0x9b, 0x20, 0x46, 0xb3, 0xf8, 0x16, 0x90, 0xbd, 0xf8, 0x56, 0x30, + 0x09, 0xf4, 0xff, 0x69, 0x23, 0xf0, 0xff, 0x03, 0x43, 0xea, 0xd9, 0x09, + 0x9d, 0xf8, 0x2c, 0x30, 0x1f, 0xfa, 0x89, 0xf9, 0x00, 0x93, 0x51, 0x46, + 0x4a, 0x46, 0x0d, 0xf1, 0x2d, 0x03, 0x0d, 0xf0, 0x33, 0xdd, 0x18, 0xb1, + 0x67, 0xe0, 0x81, 0x46, 0x00, 0xe0, 0xa9, 0x46, 0xb6, 0xf8, 0x04, 0x80, + 0x18, 0xf0, 0x02, 0x08, 0x06, 0xd0, 0x60, 0x68, 0x39, 0x46, 0x01, 0xf0, + 0x75, 0xdd, 0x80, 0x46, 0x00, 0x28, 0x58, 0xd0, 0x9d, 0xb9, 0x20, 0x46, + 0x0d, 0xf0, 0xf6, 0xdc, 0x05, 0x46, 0x00, 0x28, 0x4d, 0xd0, 0xd4, 0xf8, + 0x28, 0x35, 0x02, 0x2b, 0x09, 0xd1, 0x9d, 0xf8, 0x2c, 0x30, 0x20, 0x46, + 0x00, 0x93, 0x51, 0x46, 0x4a, 0x46, 0x0d, 0xf1, 0x2d, 0x03, 0x0d, 0xf0, + 0xaf, 0xdc, 0x69, 0x6e, 0x41, 0xb1, 0x60, 0x68, 0xb5, 0xf8, 0x68, 0x20, + 0x01, 0xf0, 0x66, 0xdd, 0x00, 0x23, 0x6b, 0x66, 0xa5, 0xf8, 0x68, 0x30, + 0xac, 0x22, 0x28, 0x46, 0x09, 0xa9, 0xfc, 0xf3, 0xa1, 0xf6, 0xb3, 0x88, + 0x9a, 0x07, 0x08, 0xd5, 0xc5, 0xf8, 0x64, 0x80, 0x40, 0x46, 0x59, 0x46, + 0x3a, 0x46, 0xfc, 0xf3, 0x97, 0xf6, 0xa5, 0xf8, 0x68, 0x70, 0xd4, 0xf8, + 0x68, 0x01, 0x43, 0x7b, 0xdb, 0x07, 0x22, 0xd4, 0x0d, 0x30, 0xfd, 0xf3, + 0x7d, 0xf3, 0x05, 0x46, 0xe8, 0xb9, 0xd4, 0xf8, 0x68, 0x01, 0x4f, 0xf0, + 0xed, 0xd9, 0x01, 0x28, 0x17, 0xd1, 0xd4, 0xf8, 0x68, 0x01, 0x29, 0x46, + 0x0c, 0xe0, 0x60, 0x68, 0x41, 0x46, 0x3a, 0x46, 0x01, 0xf0, 0x38, 0xdd, + 0xd4, 0xf8, 0x28, 0x35, 0x30, 0x46, 0x02, 0x2b, 0x08, 0xbf, 0xa4, 0xf8, + 0x38, 0x95, 0x08, 0x21, 0x4f, 0xf0, 0x6c, 0xdc, 0x03, 0xe0, 0xb8, 0xf1, + 0x00, 0x0f, 0xec, 0xd1, 0xf0, 0xe7, 0x35, 0xb0, 0xbd, 0xe8, 0xf0, 0x8f, + 0xe0, 0x07, 0x02, 0x00, 0x10, 0xb5, 0x04, 0x46, 0x24, 0xf0, 0x92, 0xd8, + 0x20, 0x46, 0xbd, 0xe8, 0x10, 0x40, 0x15, 0xf0, 0xa9, 0x99, 0x38, 0xb5, + 0xd0, 0xf8, 0x60, 0x36, 0xda, 0x7a, 0x9c, 0x7a, 0x92, 0xb1, 0x9d, 0x89, + 0x4f, 0xf6, 0xff, 0x72, 0x95, 0x42, 0x0d, 0xd0, 0x99, 0x7b, 0x41, 0xb9, + 0x9a, 0x78, 0x01, 0x2a, 0x06, 0xd0, 0x19, 0x7b, 0x01, 0xf0, 0x01, 0x01, + 0x81, 0xf0, 0x01, 0x01, 0x00, 0xe0, 0x00, 0x21, 0xc9, 0xb2, 0x0d, 0xe0, + 0x02, 0x6b, 0x8a, 0x42, 0x10, 0xd1, 0x9a, 0x7b, 0x2a, 0xb9, 0x9d, 0x78, + 0x01, 0x2d, 0x04, 0xd0, 0x91, 0xf8, 0x4c, 0x10, 0x02, 0xe0, 0x00, 0x21, + 0x00, 0xe0, 0x11, 0x46, 0x8c, 0x42, 0x03, 0xd0, 0x99, 0x72, 0x00, 0x69, + 0x36, 0xf0, 0xc6, 0xdf, 0x00, 0x20, 0x38, 0xbd, 0x38, 0xb5, 0x0d, 0x46, + 0xd0, 0xf8, 0x60, 0x16, 0x04, 0x46, 0xcb, 0x7a, 0xab, 0x42, 0x0c, 0xd0, + 0x25, 0xb1, 0x0c, 0x31, 0xb0, 0xf8, 0x28, 0x26, 0x14, 0xf0, 0x68, 0xdc, + 0xd4, 0xf8, 0x60, 0x36, 0x20, 0x46, 0xdd, 0x72, 0x21, 0x6b, 0xff, 0xf7, + 0xbc, 0xff, 0x00, 0x20, 0x38, 0xbd, 0x73, 0xb5, 0x03, 0x68, 0x04, 0x46, + 0x5b, 0x7e, 0x00, 0x2b, 0x40, 0xf0, 0xbd, 0x80, 0x03, 0x69, 0x93, 0xf8, + 0xea, 0x20, 0x4a, 0xb1, 0xdb, 0x6e, 0xd3, 0xf8, 0x20, 0x21, 0x40, 0xf2, + 0x04, 0x43, 0x13, 0x40, 0xb3, 0xf5, 0x80, 0x6f, 0x06, 0xd0, 0xae, 0xe0, + 0x18, 0x6e, 0x07, 0xf0, 0xc8, 0xfe, 0x00, 0x28, 0x40, 0xf0, 0xa9, 0x80, + 0x23, 0x68, 0x93, 0xf8, 0x20, 0x30, 0x33, 0xb9, 0x20, 0x69, 0x05, 0xf0, + 0x19, 0xf8, 0x23, 0x68, 0x01, 0x22, 0x83, 0xf8, 0x20, 0x20, 0x23, 0x68, + 0x1b, 0x6f, 0xeb, 0xb9, 0x20, 0x69, 0x05, 0xf0, 0x37, 0xf8, 0x09, 0x30, + 0x18, 0xd1, 0x23, 0x68, 0x1a, 0x6f, 0x91, 0x07, 0x14, 0xd4, 0x42, 0xf0, + 0x02, 0x02, 0x1a, 0x67, 0x25, 0x46, 0x04, 0xf1, 0x20, 0x06, 0xd5, 0xf8, + 0x4c, 0x12, 0x41, 0xb1, 0x8b, 0x79, 0x33, 0xb9, 0x4b, 0x79, 0x23, 0xb1, + 0x8b, 0x7c, 0x13, 0xb1, 0x20, 0x46, 0x39, 0xf0, 0x59, 0xdd, 0x04, 0x35, + 0xb5, 0x42, 0xf0, 0xd1, 0x23, 0x68, 0x1d, 0x6f, 0x1d, 0xb1, 0x20, 0x46, + 0x11, 0xf0, 0x94, 0xdd, 0x73, 0xe0, 0x01, 0x23, 0x84, 0xf8, 0x29, 0x30, + 0x20, 0x46, 0x20, 0xf0, 0x1f, 0xdc, 0x23, 0x68, 0x20, 0x46, 0x59, 0x6b, + 0x03, 0x23, 0x00, 0x93, 0x21, 0xb1, 0x4f, 0xf4, 0x80, 0x72, 0x29, 0x46, + 0x13, 0x46, 0x02, 0xe0, 0x4f, 0xf4, 0x80, 0x72, 0x0b, 0x46, 0x1e, 0xf0, + 0xdd, 0xdb, 0xa0, 0x68, 0x0a, 0xf0, 0x4a, 0xd9, 0x23, 0x68, 0x01, 0x22, + 0x1a, 0x76, 0x94, 0xf8, 0x9d, 0x31, 0x73, 0xb1, 0x20, 0x46, 0x0a, 0xf0, + 0x89, 0xf9, 0xd4, 0xf8, 0x40, 0x35, 0x20, 0x46, 0x59, 0x8e, 0x23, 0xf0, + 0xfd, 0xda, 0x00, 0x23, 0x84, 0xf8, 0x9d, 0x31, 0x20, 0x46, 0x1c, 0xf0, + 0xe1, 0xdd, 0xb4, 0xf8, 0x5c, 0x17, 0x20, 0x46, 0x21, 0xf0, 0x6a, 0xdb, + 0x20, 0x69, 0x04, 0xf0, 0x54, 0xfe, 0x23, 0x68, 0x93, 0xf8, 0x2f, 0x30, + 0x1b, 0xb1, 0xd4, 0xf8, 0x34, 0x07, 0x2f, 0xf0, 0x5b, 0xdc, 0x23, 0x68, + 0x93, 0xf8, 0x31, 0x30, 0x7b, 0xb1, 0x25, 0x46, 0x04, 0xf1, 0x20, 0x06, + 0xd5, 0xf8, 0x4c, 0x12, 0x31, 0xb1, 0x8b, 0x79, 0x23, 0xb9, 0x4b, 0x79, + 0x13, 0xb1, 0x20, 0x46, 0x35, 0xf0, 0x18, 0xdb, 0x04, 0x35, 0xb5, 0x42, + 0xf2, 0xd1, 0x20, 0x46, 0x15, 0xf0, 0x2c, 0xdb, 0x20, 0x46, 0x16, 0xf0, + 0x5e, 0xf8, 0x01, 0x25, 0xd4, 0xf8, 0xac, 0x11, 0x4f, 0xf4, 0x7a, 0x72, + 0x01, 0x23, 0xa0, 0x68, 0x0a, 0xf0, 0x94, 0xd8, 0x20, 0x46, 0x84, 0xf8, + 0xf1, 0x51, 0x25, 0xf0, 0xef, 0xd9, 0x20, 0x46, 0x14, 0xf0, 0x90, 0xdb, + 0x20, 0x46, 0x25, 0xf0, 0x4b, 0xdd, 0x50, 0xb1, 0x20, 0x46, 0x25, 0xf0, + 0x25, 0xdd, 0x20, 0x46, 0x29, 0x46, 0x25, 0xf0, 0x2b, 0xdf, 0x00, 0x20, + 0x01, 0xe0, 0x6f, 0xf0, 0x08, 0x00, 0x7c, 0xbd, 0x2d, 0xe9, 0xf0, 0x4f, + 0x90, 0xf8, 0x75, 0x32, 0x97, 0xb0, 0xdb, 0x06, 0x04, 0x46, 0x0e, 0x46, + 0x01, 0xf1, 0x04, 0x09, 0x00, 0xf1, 0xa5, 0x80, 0xd0, 0xf8, 0x04, 0x38, + 0x99, 0x42, 0x40, 0xf0, 0xa0, 0x80, 0x51, 0x4b, 0x1a, 0x78, 0x9a, 0x46, + 0x00, 0x2a, 0x40, 0xf0, 0x9a, 0x80, 0x01, 0x23, 0x8a, 0xf8, 0x00, 0x30, + 0xb0, 0xf8, 0x3c, 0x52, 0x81, 0xe0, 0x11, 0xf0, 0xd1, 0xda, 0x01, 0x69, + 0xd1, 0xf8, 0xcc, 0x30, 0x98, 0x03, 0x0d, 0xd5, 0x20, 0x46, 0x3a, 0x46, + 0x13, 0x9b, 0x3a, 0xf0, 0x2d, 0xdb, 0x00, 0x28, 0x73, 0xd0, 0x23, 0x68, + 0x03, 0x99, 0xd8, 0x68, 0x01, 0x22, 0x01, 0xf0, 0xf5, 0xdb, 0x6c, 0xe0, + 0x7b, 0x6a, 0x5a, 0x05, 0x07, 0xd5, 0xd4, 0xf8, 0x40, 0x01, 0x31, 0x46, + 0x03, 0xaa, 0x13, 0x9b, 0x2a, 0xf0, 0x20, 0xdb, 0x43, 0xe0, 0x58, 0x07, + 0x07, 0xd5, 0x01, 0x23, 0x20, 0x46, 0x39, 0x46, 0x15, 0xaa, 0x14, 0x93, + 0x1f, 0xf0, 0x6a, 0xdc, 0x05, 0xe0, 0x20, 0x46, 0x03, 0xa9, 0x14, 0xaa, + 0x15, 0xab, 0x0b, 0xf0, 0x8b, 0xf8, 0x00, 0x28, 0x31, 0xd1, 0x23, 0x68, + 0x93, 0xf8, 0xa1, 0x30, 0x01, 0x2b, 0x07, 0xd1, 0x15, 0x99, 0x03, 0x29, + 0x04, 0xd8, 0xd4, 0xf8, 0x40, 0x01, 0x03, 0x22, 0x29, 0xf0, 0xc0, 0xdd, + 0x02, 0xaf, 0x4f, 0xf0, 0x00, 0x08, 0x1c, 0xe0, 0x78, 0x68, 0x03, 0x69, + 0xb3, 0xf8, 0x4c, 0x30, 0x1f, 0xfa, 0x83, 0xfb, 0x1b, 0xb2, 0x00, 0x2b, + 0x09, 0xda, 0x11, 0xf0, 0x85, 0xda, 0x00, 0x23, 0x01, 0x46, 0x5a, 0x46, + 0xd4, 0xf8, 0x60, 0x01, 0x00, 0x93, 0x4d, 0xf0, 0xcf, 0xdc, 0x01, 0x23, + 0x00, 0x93, 0x20, 0x46, 0x15, 0x99, 0x57, 0xf8, 0x04, 0x2f, 0xfe, 0xf7, + 0xb7, 0xf9, 0x08, 0xf1, 0x01, 0x08, 0x14, 0x9b, 0x98, 0x45, 0xdf, 0xdb, + 0x1d, 0xe0, 0x10, 0x30, 0x1b, 0xd1, 0x48, 0x46, 0x13, 0x99, 0x03, 0x9a, + 0xfd, 0xf3, 0x30, 0xf5, 0x94, 0xf8, 0x75, 0x32, 0x73, 0xb1, 0x23, 0x68, + 0x93, 0xf8, 0xb5, 0x30, 0xd9, 0x07, 0x09, 0xd5, 0xb4, 0xf8, 0x3c, 0x32, + 0x01, 0x22, 0x1d, 0x40, 0x13, 0x9b, 0x12, 0xfa, 0x03, 0xf3, 0x25, 0xea, + 0x03, 0x05, 0x04, 0xe0, 0xb4, 0xf8, 0x3c, 0x32, 0x9d, 0x42, 0x0b, 0xd0, + 0x1d, 0x46, 0x4d, 0xb1, 0x48, 0x46, 0x29, 0x46, 0x13, 0xaa, 0xfd, 0xf3, + 0x47, 0xf4, 0x07, 0x46, 0x03, 0x90, 0x00, 0x28, 0x7f, 0xf4, 0x73, 0xaf, + 0x20, 0x46, 0x31, 0x46, 0x14, 0xf0, 0x40, 0xd9, 0x00, 0x23, 0x8a, 0xf8, + 0x00, 0x30, 0x17, 0xb0, 0xbd, 0xe8, 0xf0, 0x8f, 0x7c, 0x27, 0x00, 0x00, + 0x2d, 0xe9, 0xf0, 0x4f, 0x9d, 0xb0, 0x27, 0x9f, 0x12, 0x93, 0x0e, 0x92, + 0x7f, 0x89, 0x04, 0x46, 0x11, 0x97, 0x27, 0x9f, 0x10, 0x46, 0x0c, 0x37, + 0x0b, 0x97, 0x28, 0x9f, 0x0d, 0x46, 0x0c, 0x3f, 0x0c, 0x97, 0xb2, 0xf8, + 0x16, 0x90, 0x19, 0x46, 0x09, 0xf4, 0xff, 0x69, 0x4f, 0xea, 0xd9, 0x09, + 0xb9, 0xf1, 0x0e, 0x0f, 0x94, 0xbf, 0x00, 0x27, 0x01, 0x27, 0x10, 0x97, + 0x97, 0x88, 0x0d, 0xf1, 0x70, 0x08, 0x14, 0x97, 0x15, 0xf0, 0xcc, 0xfe, + 0x26, 0x9f, 0x15, 0x90, 0x0a, 0x37, 0x39, 0x46, 0x10, 0x9a, 0x20, 0x46, + 0x13, 0x97, 0x50, 0xf0, 0x8b, 0xd8, 0x00, 0x23, 0x48, 0xf8, 0x10, 0x3d, + 0x06, 0x46, 0x19, 0x93, 0x19, 0xaf, 0x20, 0x46, 0x27, 0x99, 0x28, 0x9a, + 0x43, 0x46, 0x00, 0x97, 0x1c, 0xf0, 0xb0, 0xdc, 0x30, 0xb9, 0x20, 0x46, + 0x27, 0x99, 0x28, 0x9a, 0x43, 0x46, 0x00, 0x97, 0x1e, 0xf0, 0xa8, 0xdc, + 0x16, 0xb1, 0x73, 0x68, 0xdb, 0x07, 0x26, 0xd4, 0x0c, 0x99, 0x0b, 0x98, + 0x32, 0x22, 0xfc, 0xf3, 0xf3, 0xf7, 0x01, 0x46, 0x20, 0xb1, 0x40, 0x78, + 0x02, 0x31, 0x20, 0xf0, 0xb9, 0xdc, 0x70, 0xb9, 0x0c, 0x99, 0x0b, 0x98, + 0x01, 0x22, 0xfc, 0xf3, 0xe7, 0xf7, 0x01, 0x46, 0x50, 0xb1, 0x02, 0x31, + 0x40, 0x78, 0x20, 0xf0, 0xad, 0xdc, 0x00, 0x30, 0x18, 0xbf, 0x01, 0x20, + 0x02, 0xe0, 0x01, 0x27, 0x0d, 0x97, 0x00, 0xe0, 0x0d, 0x90, 0x56, 0xb1, + 0x0d, 0x9f, 0x37, 0xb9, 0x73, 0x68, 0x43, 0xf0, 0x01, 0x03, 0x73, 0x60, + 0x03, 0xe0, 0x00, 0x27, 0x00, 0xe0, 0x01, 0x27, 0x0d, 0x97, 0x0b, 0x98, + 0x0c, 0x99, 0x03, 0x22, 0xfc, 0xf3, 0xc8, 0xf7, 0x23, 0x68, 0x07, 0x46, + 0x08, 0xb1, 0x42, 0x78, 0xaa, 0xb9, 0x93, 0xf8, 0x3f, 0x00, 0x70, 0xb1, + 0xb4, 0xf8, 0x26, 0x06, 0xc3, 0xb2, 0x4b, 0x45, 0x08, 0xd0, 0xfd, 0xf3, + 0x6d, 0xf5, 0xc9, 0xeb, 0x00, 0x0e, 0xde, 0xf1, 0x00, 0x00, 0x40, 0xeb, + 0x0e, 0x00, 0x00, 0xe0, 0x01, 0x20, 0xc0, 0xb2, 0x0f, 0x90, 0x00, 0x27, + 0x10, 0xe0, 0x93, 0xf8, 0x3f, 0x00, 0x50, 0xb1, 0xb4, 0xf8, 0x26, 0x06, + 0xfd, 0xf3, 0x5a, 0xf5, 0x97, 0xf8, 0x02, 0x90, 0xc0, 0xeb, 0x09, 0x07, + 0x78, 0x42, 0x40, 0xeb, 0x07, 0x00, 0xc0, 0xb2, 0x0f, 0x90, 0x07, 0x46, + 0x0f, 0x99, 0x29, 0xb1, 0x15, 0xf1, 0x00, 0x08, 0x18, 0xbf, 0x4f, 0xf0, + 0x01, 0x08, 0x01, 0xe0, 0xdd, 0xf8, 0x3c, 0x80, 0x23, 0x68, 0x5f, 0xfa, + 0x88, 0xf8, 0x93, 0xf8, 0x46, 0x90, 0x19, 0xf0, 0x03, 0x09, 0x23, 0xd0, + 0x94, 0xf8, 0x72, 0x32, 0x4b, 0xb9, 0xb8, 0xf1, 0x00, 0x0f, 0x06, 0xd0, + 0xd5, 0xf8, 0xd4, 0x32, 0xb3, 0xf8, 0x06, 0x90, 0x19, 0xf0, 0x20, 0x09, + 0x1f, 0xd0, 0x0b, 0x99, 0x0c, 0x9a, 0x20, 0x46, 0x20, 0xf0, 0xb6, 0xdc, + 0x0b, 0x99, 0x83, 0x46, 0x0c, 0x9a, 0x20, 0x46, 0x20, 0xf0, 0x7c, 0xdc, + 0x23, 0x68, 0x07, 0x90, 0x93, 0xf9, 0x4c, 0x30, 0x53, 0xb1, 0x20, 0x46, + 0x0b, 0x99, 0x0c, 0x9a, 0x1d, 0xf0, 0xa0, 0xd9, 0x81, 0x46, 0x04, 0xe0, + 0xcb, 0x46, 0xcd, 0xf8, 0x1c, 0x90, 0x00, 0xe0, 0x99, 0x46, 0xb8, 0xf1, + 0x00, 0x0f, 0x6c, 0xd0, 0x02, 0xe0, 0xcb, 0x46, 0xcd, 0xf8, 0x1c, 0x90, + 0x23, 0x68, 0x93, 0xf8, 0x46, 0xa0, 0x1a, 0xf0, 0x03, 0x0a, 0x6c, 0xd0, + 0x07, 0x9a, 0x00, 0x2a, 0x61, 0xd0, 0xbb, 0xf1, 0x00, 0x0f, 0x61, 0xd0, + 0x11, 0x78, 0x20, 0x46, 0x52, 0x78, 0x0f, 0xf0, 0xad, 0xdb, 0xb4, 0xf8, + 0x26, 0xc6, 0x03, 0x46, 0x0c, 0xf4, 0x70, 0x42, 0xb2, 0xf5, 0x00, 0x52, + 0x18, 0xbf, 0x01, 0x22, 0x0e, 0x32, 0x54, 0xf8, 0x22, 0x80, 0x0c, 0xf4, + 0x40, 0x6c, 0xd8, 0xf8, 0x04, 0x10, 0xd4, 0xf8, 0x5c, 0x01, 0x08, 0x93, + 0xcd, 0xf8, 0x24, 0xc0, 0x3f, 0xf0, 0x52, 0xdf, 0x10, 0xf0, 0x08, 0x0f, + 0x08, 0x9b, 0xdd, 0xf8, 0x24, 0xc0, 0x07, 0xd1, 0x98, 0xf8, 0xec, 0xa0, + 0x1a, 0xf1, 0x00, 0x0a, 0x18, 0xbf, 0x4f, 0xf0, 0x01, 0x0a, 0x01, 0xe0, + 0x4f, 0xf0, 0x00, 0x0a, 0x9b, 0xf8, 0x00, 0x20, 0x12, 0xf0, 0x02, 0x02, + 0x03, 0xd0, 0x07, 0x99, 0x4a, 0x78, 0xc2, 0xf3, 0x80, 0x02, 0xbc, 0xf5, + 0x40, 0x6f, 0x05, 0xd1, 0xb4, 0xf8, 0x26, 0x26, 0x9a, 0x42, 0x0b, 0xd1, + 0x00, 0xf0, 0x13, 0xbc, 0xba, 0xf1, 0x00, 0x0f, 0x25, 0xd0, 0x0a, 0xb3, + 0x03, 0xf4, 0x40, 0x62, 0xb2, 0xf5, 0x40, 0x6f, 0x40, 0xf0, 0x09, 0x84, + 0x22, 0x68, 0x92, 0xf8, 0x2f, 0xa0, 0xba, 0xf1, 0x00, 0x0f, 0x40, 0xf0, + 0x05, 0x84, 0x18, 0x46, 0x08, 0x93, 0xfd, 0xf3, 0xaf, 0xf4, 0x80, 0x46, + 0xb4, 0xf8, 0x26, 0x06, 0xfd, 0xf3, 0xaa, 0xf4, 0x80, 0x45, 0x08, 0x9b, + 0x40, 0xf0, 0xfa, 0x83, 0x08, 0xe0, 0xc2, 0x46, 0x09, 0xe0, 0xdd, 0xf8, + 0x1c, 0xa0, 0x04, 0xe0, 0xda, 0x46, 0x02, 0xe0, 0x92, 0x46, 0x00, 0xe0, + 0x9a, 0x46, 0x4f, 0xf0, 0x01, 0x08, 0x23, 0x6b, 0x5b, 0x7d, 0x00, 0x2b, + 0x37, 0xd0, 0x0f, 0x9a, 0x00, 0x2a, 0x34, 0xd0, 0x94, 0xf8, 0x72, 0x32, + 0x33, 0xb9, 0x94, 0xf8, 0x74, 0x32, 0x00, 0x2b, 0x2d, 0xd0, 0xb8, 0xf1, + 0x00, 0x0f, 0x2a, 0xd1, 0x94, 0xf8, 0x49, 0x36, 0x53, 0xb1, 0x19, 0x9b, + 0x00, 0x2b, 0x07, 0xdd, 0x18, 0x9b, 0x1b, 0x78, 0x58, 0x07, 0x03, 0xd5, + 0xd4, 0xf8, 0x58, 0x36, 0x04, 0x22, 0x1a, 0x61, 0x94, 0xf8, 0x49, 0x36, + 0x4b, 0xb1, 0x0d, 0x9b, 0x4b, 0xb9, 0x11, 0x99, 0x89, 0x06, 0x0d, 0xd4, + 0xd4, 0xf8, 0x58, 0x36, 0x04, 0x22, 0xda, 0x60, 0x08, 0xe0, 0x0d, 0x9a, + 0x32, 0xb1, 0x19, 0x9b, 0x00, 0x2b, 0x07, 0xdd, 0x18, 0x9b, 0x1b, 0x78, + 0xda, 0x07, 0x03, 0xd5, 0xd4, 0xf8, 0x58, 0x36, 0x04, 0x22, 0x1a, 0x62, + 0x20, 0x46, 0x25, 0xf0, 0x37, 0xdb, 0x23, 0x68, 0x93, 0xf8, 0x46, 0x30, + 0x9b, 0x07, 0x47, 0xd0, 0x0f, 0x9b, 0x00, 0x2b, 0x44, 0xd0, 0x94, 0xf8, + 0x72, 0x32, 0x33, 0xb9, 0x94, 0xf8, 0x74, 0x32, 0x00, 0x2b, 0x3d, 0xd0, + 0xb8, 0xf1, 0x00, 0x0f, 0x3a, 0xd1, 0xb4, 0xf8, 0x26, 0x36, 0x07, 0x99, + 0x03, 0xf4, 0x40, 0x63, 0xa3, 0xf5, 0x40, 0x60, 0x43, 0x42, 0x43, 0xeb, + 0x00, 0x03, 0x11, 0xb9, 0x0d, 0x9a, 0x32, 0xb9, 0x16, 0xe0, 0x07, 0x99, + 0x8a, 0x78, 0x02, 0xf0, 0x03, 0x02, 0x03, 0x2a, 0x05, 0xd1, 0xd4, 0xf8, + 0x58, 0x26, 0x04, 0x21, 0x91, 0x61, 0x07, 0x9a, 0x52, 0xb1, 0x07, 0x99, + 0x8a, 0x78, 0x02, 0xf0, 0x03, 0x02, 0x02, 0x2a, 0x04, 0xd1, 0x1b, 0xb1, + 0xd4, 0xf8, 0x58, 0x26, 0x04, 0x21, 0xd1, 0x62, 0xbb, 0xf1, 0x00, 0x0f, + 0x0f, 0xd0, 0x07, 0x9a, 0x6a, 0xb1, 0x9b, 0xf8, 0x00, 0x10, 0x52, 0x78, + 0x89, 0x07, 0x08, 0xd4, 0x02, 0xf0, 0x04, 0x02, 0xd2, 0xb2, 0x22, 0xb1, + 0x1b, 0xb1, 0xd4, 0xf8, 0x58, 0x36, 0x04, 0x22, 0xda, 0x62, 0x20, 0x46, + 0x25, 0xf0, 0x9c, 0xdb, 0x23, 0x68, 0x93, 0xf8, 0x2f, 0x30, 0xdb, 0xb1, + 0xd4, 0xf8, 0xfc, 0x34, 0x1b, 0x78, 0xbb, 0xb1, 0xb7, 0xb9, 0x20, 0x46, + 0x59, 0x46, 0x2e, 0xf0, 0xeb, 0xde, 0x88, 0xb1, 0x20, 0x46, 0x39, 0x46, + 0x2e, 0xf0, 0xe8, 0xdf, 0x20, 0x46, 0x2e, 0xf0, 0xdb, 0xdf, 0xb4, 0xf8, + 0x26, 0x36, 0x03, 0xf4, 0x40, 0x63, 0xb3, 0xf5, 0x40, 0x6f, 0x03, 0xd1, + 0x20, 0x46, 0x01, 0x21, 0x2e, 0xf0, 0x4c, 0xdf, 0x94, 0xf8, 0x70, 0x32, + 0x00, 0x2b, 0x00, 0xf0, 0x55, 0x83, 0x1d, 0xb1, 0xd5, 0xf8, 0xdc, 0x72, + 0x0a, 0x97, 0x00, 0xe0, 0x0a, 0x95, 0xb8, 0xf1, 0x00, 0x0f, 0x7c, 0xd0, + 0x23, 0x68, 0x93, 0xf8, 0x46, 0x30, 0x9b, 0x07, 0x2e, 0xd0, 0xab, 0x7c, + 0x33, 0xb9, 0x36, 0xb9, 0x20, 0x46, 0x13, 0x99, 0x10, 0x9a, 0x4f, 0xf0, + 0xb5, 0xdf, 0x06, 0x46, 0x26, 0xb3, 0xbb, 0xf1, 0x00, 0x0f, 0x0e, 0xd0, + 0x07, 0x9b, 0x20, 0x46, 0x31, 0x46, 0x5a, 0x46, 0xcd, 0xf8, 0x00, 0x90, + 0x1d, 0xf0, 0xac, 0xd8, 0xb5, 0xf8, 0x34, 0x35, 0x23, 0xf0, 0x20, 0x03, + 0xa5, 0xf8, 0x34, 0x35, 0x0c, 0xe0, 0xab, 0x7c, 0x53, 0xb9, 0x73, 0x68, + 0xdf, 0x03, 0x07, 0xd5, 0x20, 0x46, 0x31, 0x46, 0x5a, 0x46, 0x5b, 0x46, + 0xcd, 0xf8, 0x00, 0xb0, 0x1d, 0xf0, 0x98, 0xd8, 0x20, 0x46, 0x0b, 0x99, + 0x0c, 0x9a, 0x33, 0x46, 0x1f, 0xf0, 0x82, 0xde, 0x0e, 0x99, 0x20, 0x46, + 0x1d, 0xf0, 0x64, 0xdf, 0x01, 0x46, 0x28, 0x46, 0x1d, 0xf0, 0xa2, 0xdf, + 0x28, 0x46, 0x1d, 0xf0, 0xf7, 0xde, 0x0e, 0x99, 0x20, 0x46, 0x11, 0xf0, + 0xed, 0xdf, 0x01, 0x46, 0x28, 0x46, 0x10, 0xf0, 0x4f, 0xdf, 0xab, 0x79, + 0x83, 0xb9, 0xd5, 0xf8, 0xe0, 0x22, 0xd5, 0xf8, 0xd4, 0x32, 0x11, 0x8a, + 0x92, 0x8a, 0x0a, 0x9f, 0x59, 0x85, 0x9a, 0x85, 0x7b, 0x79, 0x2b, 0xb9, + 0xab, 0x7c, 0x1b, 0xb1, 0x28, 0x46, 0x01, 0x21, 0x35, 0xf0, 0x40, 0xdc, + 0x0a, 0x9f, 0x00, 0x23, 0xbb, 0x71, 0xfb, 0x71, 0x95, 0xf8, 0x12, 0x90, + 0xb9, 0xf1, 0x00, 0x0f, 0x19, 0xd1, 0x97, 0xf8, 0x85, 0x30, 0x01, 0x2b, + 0x15, 0xd1, 0x87, 0xf8, 0x85, 0x90, 0xd4, 0xf8, 0x40, 0x01, 0x26, 0xf0, + 0x01, 0xdd, 0x20, 0x46, 0x29, 0x46, 0x0f, 0x22, 0x4b, 0x46, 0xcd, 0xf8, + 0x00, 0x90, 0xcd, 0xf8, 0x04, 0x90, 0xcd, 0xf8, 0x08, 0x90, 0xcd, 0xf8, + 0x0c, 0x90, 0xcd, 0xf8, 0x10, 0x90, 0x16, 0xf0, 0xe1, 0xdf, 0x00, 0x2d, + 0x59, 0xd0, 0xab, 0x79, 0x00, 0x2b, 0x56, 0xd1, 0xab, 0x7c, 0x00, 0x2b, + 0x53, 0xd0, 0x27, 0x9f, 0xbb, 0x78, 0x7a, 0x78, 0x1b, 0x04, 0x43, 0xea, + 0x02, 0x23, 0x3a, 0x78, 0x13, 0x43, 0xfa, 0x78, 0x43, 0xea, 0x02, 0x62, + 0xbb, 0x79, 0x10, 0x92, 0x7a, 0x79, 0x1b, 0x04, 0x43, 0xea, 0x02, 0x23, + 0x3a, 0x79, 0x13, 0x43, 0xfa, 0x79, 0x0a, 0x9f, 0x43, 0xea, 0x02, 0x69, + 0xfb, 0x69, 0x13, 0xb9, 0x3a, 0x6a, 0x12, 0xb9, 0x32, 0xe0, 0x99, 0x45, + 0x06, 0xd3, 0x99, 0x45, 0x2e, 0xd1, 0x0a, 0x9f, 0x3b, 0x6a, 0x10, 0x9f, + 0x9f, 0x42, 0x29, 0xd2, 0x26, 0x9f, 0x00, 0x23, 0x00, 0x93, 0x01, 0x93, + 0x02, 0x93, 0x03, 0x93, 0x04, 0x93, 0x20, 0x46, 0x07, 0xf1, 0x10, 0x03, + 0x29, 0x46, 0x16, 0x22, 0x16, 0xf0, 0xa6, 0xdf, 0x28, 0x46, 0x0e, 0x99, + 0x12, 0x9a, 0x27, 0x9b, 0x24, 0xf0, 0xa0, 0xdc, 0x0f, 0x9f, 0x9f, 0xb1, + 0xeb, 0x79, 0x4b, 0xb1, 0xab, 0x7c, 0x23, 0xb1, 0x05, 0xf1, 0xbc, 0x00, + 0xfc, 0xf3, 0xb4, 0xf6, 0x10, 0xb9, 0x05, 0xf1, 0xbc, 0x01, 0x01, 0xe0, + 0x05, 0xf1, 0xd6, 0x01, 0x00, 0x22, 0x20, 0x46, 0x13, 0x46, 0x00, 0x92, + 0x22, 0xf0, 0x2c, 0xda, 0x0a, 0x99, 0x10, 0x9f, 0xc1, 0xf8, 0x1c, 0x90, + 0x0f, 0x62, 0xb8, 0xf1, 0x00, 0x0f, 0x00, 0xf0, 0x0d, 0x82, 0xaa, 0x79, + 0xab, 0x7c, 0x00, 0x2a, 0x40, 0xf0, 0x8d, 0x81, 0x00, 0x2b, 0x00, 0xf0, + 0x8a, 0x81, 0x1a, 0xab, 0x00, 0x93, 0x28, 0x9a, 0x28, 0x46, 0x27, 0x99, + 0x0d, 0xf1, 0x6f, 0x03, 0x16, 0xf0, 0x16, 0xd8, 0xbd, 0xf8, 0x68, 0x20, + 0xd5, 0xf8, 0xe4, 0x82, 0xa5, 0xf8, 0x20, 0x25, 0x94, 0xf8, 0xeb, 0x91, + 0xb9, 0xf1, 0x00, 0x0f, 0x67, 0xd1, 0x00, 0x28, 0x4d, 0xd0, 0x98, 0xf8, + 0x00, 0x30, 0x02, 0x2b, 0x1a, 0xd1, 0x28, 0x46, 0x49, 0x46, 0xb8, 0xf8, + 0x26, 0xb0, 0x0a, 0xf0, 0x3c, 0xfb, 0xb4, 0xf8, 0x30, 0x38, 0x84, 0xf8, + 0x32, 0x98, 0x0b, 0xb1, 0xa8, 0xf8, 0x26, 0x30, 0x28, 0x46, 0x1e, 0xf0, + 0xa3, 0xdc, 0xd5, 0xf8, 0xe4, 0x32, 0xa8, 0xf8, 0x26, 0xb0, 0x5b, 0x8b, + 0x00, 0x2b, 0x4a, 0xd0, 0x28, 0x46, 0x10, 0xf0, 0x5f, 0xdf, 0x46, 0xe0, + 0x23, 0x68, 0x5b, 0x6b, 0x3b, 0xb1, 0x94, 0xf8, 0xfa, 0x31, 0x23, 0xb1, + 0xae, 0xb1, 0x96, 0xf8, 0xd2, 0x30, 0x0f, 0x2b, 0x11, 0xd0, 0x98, 0xf8, + 0x02, 0x20, 0x22, 0xb1, 0x20, 0x46, 0x29, 0x46, 0x22, 0xf0, 0xd4, 0xdd, + 0x33, 0xe0, 0x4f, 0xf0, 0xff, 0x33, 0x00, 0x93, 0x20, 0x46, 0x05, 0xf1, + 0xbc, 0x01, 0x13, 0x46, 0x22, 0xf0, 0xca, 0xd9, 0x29, 0xe0, 0x94, 0xf8, + 0x0d, 0x37, 0x33, 0xb3, 0x98, 0xf8, 0x02, 0x30, 0x3b, 0xb1, 0x1e, 0xb1, + 0x73, 0x68, 0x23, 0xf0, 0x00, 0x63, 0x73, 0x60, 0x28, 0x46, 0x16, 0xf0, + 0x9d, 0xd8, 0x28, 0x46, 0x23, 0xf0, 0xba, 0xda, 0x17, 0xe0, 0x98, 0xf8, + 0x08, 0x30, 0x2b, 0xb1, 0xb8, 0xf8, 0x0a, 0x10, 0x11, 0xb9, 0x28, 0x46, + 0x23, 0xf0, 0xde, 0xda, 0xd5, 0xf8, 0xe4, 0x32, 0x5b, 0x8b, 0x53, 0xb1, + 0x98, 0xf8, 0x00, 0x30, 0x02, 0x2b, 0x06, 0xd1, 0xd8, 0xf8, 0x20, 0x30, + 0x01, 0x2b, 0x02, 0xd1, 0x28, 0x46, 0x1e, 0xf0, 0x3d, 0xdc, 0x98, 0xf8, + 0x03, 0x30, 0x1b, 0xb1, 0x28, 0x46, 0x00, 0x21, 0x23, 0xf0, 0xbc, 0xd9, + 0x98, 0xf8, 0x09, 0x30, 0x3b, 0xb9, 0x28, 0x46, 0x0d, 0xf0, 0x82, 0xde, + 0x18, 0xb1, 0x28, 0x46, 0x01, 0x21, 0x23, 0xf0, 0xa9, 0xdb, 0x98, 0xf8, + 0x09, 0x30, 0x5b, 0xb1, 0x14, 0x9f, 0x28, 0x46, 0xc7, 0xf3, 0xc0, 0x11, + 0x15, 0x9a, 0x27, 0x9b, 0x24, 0xf0, 0x86, 0xdb, 0x28, 0x46, 0x00, 0x21, + 0x23, 0xf0, 0x9a, 0xdb, 0x23, 0x6b, 0x5b, 0x7d, 0x00, 0x2b, 0x38, 0xd0, + 0x11, 0x9f, 0x20, 0x46, 0xc7, 0xf3, 0x80, 0x21, 0x24, 0xf0, 0x9a, 0xda, + 0x18, 0x9a, 0x00, 0x2a, 0x2f, 0xd0, 0x19, 0x9b, 0x00, 0x2b, 0x2c, 0xdd, + 0xd4, 0xf8, 0x58, 0x36, 0x93, 0xf9, 0x01, 0x10, 0x01, 0x31, 0x09, 0xd1, + 0x12, 0x78, 0x1b, 0x78, 0xc2, 0xf3, 0x40, 0x02, 0x93, 0x42, 0x03, 0xd0, + 0x20, 0x46, 0x01, 0x21, 0x1f, 0xf0, 0xe6, 0xdd, 0x18, 0x9b, 0x1b, 0x78, + 0xc3, 0xf3, 0x80, 0x03, 0x84, 0xf8, 0x46, 0x36, 0x3b, 0xb9, 0xd4, 0xf8, + 0x58, 0x36, 0x1b, 0x69, 0xd3, 0xf1, 0x01, 0x03, 0x38, 0xbf, 0x00, 0x23, + 0x00, 0xe0, 0x00, 0x23, 0x84, 0xf8, 0x42, 0x36, 0x4e, 0xb1, 0x73, 0x68, + 0x23, 0xf0, 0x04, 0x03, 0x73, 0x60, 0x94, 0xf9, 0x46, 0x26, 0x12, 0xb9, + 0x43, 0xf0, 0x04, 0x03, 0x73, 0x60, 0x23, 0x68, 0x93, 0xf8, 0x46, 0x30, + 0x98, 0x07, 0x33, 0xd0, 0x07, 0x9f, 0x00, 0x2f, 0x30, 0xd0, 0xd4, 0xf8, + 0x58, 0x36, 0x93, 0xf9, 0x06, 0x20, 0x51, 0x1c, 0x25, 0xd1, 0xba, 0x78, + 0x93, 0xf9, 0x05, 0x30, 0x02, 0xf0, 0x03, 0x02, 0x93, 0x42, 0x03, 0xd0, + 0x20, 0x46, 0x0b, 0x21, 0x1f, 0xf0, 0xb0, 0xdd, 0x07, 0x9f, 0xd4, 0xf8, + 0x58, 0x36, 0xba, 0x78, 0xdb, 0x79, 0xc2, 0xf3, 0x80, 0x02, 0x93, 0x42, + 0x03, 0xd0, 0x20, 0x46, 0x0d, 0x21, 0x1f, 0xf0, 0xa3, 0xdd, 0x07, 0x9f, + 0xd4, 0xf8, 0x58, 0x36, 0xba, 0x78, 0x9b, 0x7a, 0xc2, 0xf3, 0x00, 0x12, + 0x93, 0x42, 0x09, 0xd0, 0x20, 0x46, 0x10, 0x21, 0x1f, 0xf0, 0x96, 0xdd, + 0x04, 0xe0, 0x01, 0x2a, 0x0c, 0xbf, 0x03, 0x22, 0x00, 0x22, 0x5a, 0x71, + 0xd4, 0xf8, 0x5c, 0x01, 0xb4, 0xf8, 0x26, 0x16, 0x40, 0xf0, 0x68, 0xd8, + 0x90, 0xb1, 0xd4, 0xf8, 0x5c, 0x01, 0xb4, 0xf8, 0x26, 0x16, 0x3f, 0xf0, + 0xa1, 0xdc, 0x23, 0x6b, 0x18, 0x69, 0x0b, 0xf0, 0x27, 0xfb, 0xb4, 0xf8, + 0x26, 0x36, 0x83, 0x42, 0x04, 0xd1, 0x00, 0x21, 0x20, 0x46, 0x0a, 0x46, + 0x1e, 0xf0, 0x8a, 0xd8, 0x00, 0x2e, 0x42, 0xd0, 0x73, 0x68, 0x5b, 0x06, + 0x40, 0xf1, 0x27, 0x81, 0x0b, 0x9f, 0x16, 0x97, 0x0c, 0x9f, 0x17, 0x97, + 0x06, 0xe0, 0x20, 0x46, 0x39, 0x46, 0x16, 0xaa, 0x17, 0xab, 0x1d, 0xf0, + 0x5b, 0xdb, 0x40, 0xb9, 0x16, 0x98, 0x17, 0x99, 0xdd, 0x22, 0xfc, 0xf3, + 0x05, 0xf4, 0x07, 0x46, 0x00, 0x28, 0xf0, 0xd1, 0x0a, 0xe1, 0xbb, 0x79, + 0x01, 0x2b, 0x40, 0xf0, 0x0e, 0x81, 0x94, 0xf8, 0x0c, 0x22, 0x3b, 0x7a, + 0x53, 0x40, 0x18, 0x07, 0x00, 0xf0, 0x07, 0x81, 0x04, 0xf5, 0x00, 0x79, + 0x09, 0xf1, 0x06, 0x08, 0x40, 0x46, 0xb9, 0x1c, 0x18, 0x22, 0xfc, 0xf3, + 0x4b, 0xf0, 0x23, 0x68, 0x93, 0xf8, 0x30, 0x30, 0x00, 0x2b, 0x00, 0xf0, + 0xf4, 0x80, 0xd4, 0xf8, 0x34, 0x77, 0x43, 0x46, 0x07, 0xf5, 0x63, 0x77, + 0x09, 0xf1, 0x1e, 0x09, 0x18, 0x68, 0x59, 0x68, 0x3a, 0x46, 0x03, 0xc2, + 0x08, 0x33, 0x4b, 0x45, 0x17, 0x46, 0xf7, 0xd1, 0xe3, 0xe0, 0x20, 0x46, + 0x0b, 0x99, 0x0c, 0x9a, 0x10, 0xf0, 0x7a, 0xd9, 0x01, 0x28, 0x02, 0xd1, + 0x20, 0x46, 0x0d, 0xf0, 0x0b, 0xdf, 0xba, 0xf1, 0x00, 0x0f, 0x00, 0xf0, + 0xe7, 0x80, 0x94, 0xf8, 0x6d, 0x35, 0x00, 0x2b, 0x40, 0xf0, 0xe2, 0x80, + 0x20, 0x46, 0x51, 0x46, 0x17, 0xf0, 0xcc, 0xdd, 0xdc, 0xe0, 0x00, 0x2b, + 0x78, 0xd1, 0x0d, 0x9f, 0x1f, 0xb9, 0x11, 0x9f, 0xc7, 0xf3, 0x40, 0x15, + 0x00, 0xe0, 0x01, 0x25, 0xed, 0xb2, 0x9e, 0xb1, 0x73, 0x68, 0x15, 0xb1, + 0x43, 0xf0, 0x04, 0x03, 0x01, 0xe0, 0x23, 0xf0, 0x04, 0x03, 0x73, 0x60, + 0x0c, 0x99, 0x00, 0x23, 0x65, 0x4a, 0x0b, 0x98, 0x00, 0x93, 0x1c, 0xf0, + 0xc9, 0xd9, 0x31, 0x46, 0x02, 0x46, 0x20, 0x46, 0x1f, 0xf0, 0x02, 0xdc, + 0x23, 0x6b, 0x5b, 0x7d, 0xfb, 0xb1, 0x19, 0x9b, 0x00, 0x2b, 0x0e, 0xdd, + 0x18, 0x9b, 0x1a, 0x78, 0x51, 0x07, 0x03, 0xd5, 0xd4, 0xf8, 0x58, 0x26, + 0x04, 0x21, 0x11, 0x61, 0x1b, 0x78, 0x9a, 0x07, 0x03, 0xd5, 0xd4, 0xf8, + 0x58, 0x36, 0x04, 0x22, 0x5a, 0x62, 0x0d, 0x9f, 0x1f, 0xb9, 0xd4, 0xf8, + 0x58, 0x36, 0x04, 0x22, 0xda, 0x61, 0x1d, 0xb9, 0xd4, 0xf8, 0x58, 0x36, + 0x04, 0x22, 0xda, 0x60, 0x20, 0x46, 0x25, 0xf0, 0x0b, 0xd8, 0x23, 0x68, + 0x93, 0xf8, 0x46, 0x30, 0x9b, 0x07, 0x00, 0xf0, 0x95, 0x80, 0x07, 0x9f, + 0x47, 0xb1, 0xbb, 0x78, 0x03, 0xf0, 0x03, 0x03, 0x03, 0x2b, 0x03, 0xd1, + 0xd4, 0xf8, 0x58, 0x36, 0x04, 0x22, 0x9a, 0x62, 0xbb, 0xf1, 0x00, 0x0f, + 0x18, 0xd0, 0x9b, 0xf8, 0x01, 0x10, 0x9b, 0xf8, 0x00, 0x30, 0xb4, 0xf8, + 0x26, 0x26, 0x43, 0xea, 0x01, 0x23, 0xdf, 0x06, 0x03, 0xd4, 0xd4, 0xf8, + 0x58, 0x16, 0x04, 0x20, 0x48, 0x63, 0x98, 0x07, 0x08, 0xd4, 0x02, 0xf4, + 0x40, 0x63, 0xb3, 0xf5, 0x40, 0x6f, 0x03, 0xd1, 0xd4, 0xf8, 0x58, 0x36, + 0x04, 0x22, 0x1a, 0x63, 0x07, 0x9f, 0x2f, 0xb9, 0x0d, 0x9f, 0x1f, 0xb1, + 0xd4, 0xf8, 0x58, 0x36, 0x04, 0x22, 0x5a, 0x61, 0x20, 0x46, 0x25, 0xf0, + 0x85, 0xd8, 0x61, 0xe0, 0x94, 0xf8, 0x57, 0x35, 0x00, 0x2b, 0x5d, 0xd0, + 0x0f, 0x9f, 0x00, 0x2f, 0x5a, 0xd0, 0x11, 0x9f, 0xb9, 0x07, 0x57, 0xd5, + 0x0b, 0x98, 0x0c, 0x99, 0x00, 0x22, 0xfc, 0xf3, 0x35, 0xf3, 0x03, 0x46, + 0x00, 0x28, 0x4f, 0xd0, 0x20, 0x46, 0x99, 0x1c, 0x5a, 0x78, 0x39, 0xf0, + 0x81, 0xd9, 0x05, 0x46, 0x00, 0x28, 0x47, 0xd0, 0x83, 0x7c, 0x00, 0x2b, + 0x44, 0xd1, 0x0e, 0x99, 0x12, 0x9a, 0x16, 0xf0, 0xc7, 0xdb, 0x00, 0x28, + 0x3e, 0xd0, 0x27, 0x9f, 0xd5, 0xf8, 0xd0, 0x62, 0x00, 0x97, 0x28, 0x9f, + 0x20, 0x46, 0x01, 0x97, 0x26, 0x9f, 0x0e, 0x99, 0x07, 0xf1, 0x10, 0x02, + 0x01, 0x23, 0x02, 0x96, 0xfe, 0xf7, 0xe4, 0xfd, 0x02, 0x46, 0x00, 0x28, + 0x2c, 0xd1, 0x21, 0x6b, 0xd4, 0xf8, 0x60, 0x36, 0x50, 0x31, 0x06, 0xf1, + 0x38, 0x00, 0x9b, 0x78, 0x4a, 0xf0, 0x66, 0xdf, 0x28, 0x9f, 0x28, 0x46, + 0x0e, 0x99, 0x12, 0x9a, 0x27, 0x9b, 0x00, 0x97, 0x34, 0xf0, 0x46, 0xda, + 0x1a, 0xe0, 0x4f, 0xf0, 0x00, 0x0a, 0x12, 0xe4, 0x4f, 0xf0, 0x00, 0x0a, + 0xd0, 0x46, 0x10, 0xe4, 0x02, 0x23, 0x84, 0xf8, 0x0e, 0x32, 0x28, 0x46, + 0x01, 0x21, 0x1b, 0xf0, 0x61, 0xde, 0x00, 0x23, 0x0c, 0x99, 0x0b, 0x98, + 0x06, 0x4a, 0x00, 0x93, 0x1c, 0xf0, 0x0c, 0xd9, 0x31, 0x46, 0x02, 0x46, + 0x20, 0x46, 0x1f, 0xf0, 0x45, 0xdb, 0x0a, 0xe7, 0x1d, 0xb0, 0xbd, 0xe8, + 0xf0, 0x8f, 0x00, 0xbf, 0xc5, 0xb6, 0x01, 0x00, 0x2d, 0xe9, 0xf0, 0x4f, + 0x17, 0x69, 0xc1, 0xb0, 0xd7, 0xf8, 0xd8, 0x82, 0x04, 0x46, 0x8b, 0x46, + 0x92, 0x46, 0xd8, 0xf8, 0x2c, 0x00, 0xd8, 0xf8, 0x30, 0x10, 0x00, 0x22, + 0x0f, 0x93, 0xfc, 0xf3, 0xcb, 0xf2, 0x20, 0xb1, 0x81, 0x1c, 0x40, 0x78, + 0x10, 0x91, 0x0d, 0x90, 0x05, 0xe0, 0x9b, 0xf8, 0x08, 0x30, 0x0b, 0xf1, + 0x09, 0x02, 0x10, 0x92, 0x0d, 0x93, 0x00, 0x21, 0x28, 0x22, 0x22, 0xa8, + 0xfb, 0xf3, 0x7c, 0xf7, 0x00, 0x21, 0x28, 0x22, 0x2c, 0xa8, 0xfb, 0xf3, + 0x77, 0xf7, 0xd8, 0xf8, 0x30, 0x10, 0x01, 0x22, 0xd8, 0xf8, 0x2c, 0x00, + 0xfc, 0xf3, 0xae, 0xf2, 0xd8, 0xf8, 0x30, 0x10, 0x05, 0x46, 0x32, 0x22, + 0xd8, 0xf8, 0x2c, 0x00, 0xfc, 0xf3, 0xa6, 0xf2, 0x06, 0x46, 0x3d, 0xb1, + 0x6a, 0x78, 0x10, 0x2a, 0x04, 0xd8, 0x23, 0xa8, 0xa9, 0x1c, 0x22, 0x92, + 0xfb, 0xf3, 0xfa, 0xf6, 0x3e, 0xb1, 0x72, 0x78, 0x10, 0x2a, 0x04, 0xd8, + 0x2d, 0xa8, 0xb1, 0x1c, 0x2c, 0x92, 0xfb, 0xf3, 0xf1, 0xf6, 0xbb, 0xf8, + 0x06, 0x30, 0xd9, 0x07, 0x0b, 0xd5, 0x21, 0x6b, 0x4b, 0x7d, 0x43, 0xb1, + 0x0a, 0x6d, 0x23, 0xa8, 0x54, 0x31, 0x22, 0x92, 0xfb, 0xf3, 0xe4, 0xf6, + 0x00, 0x23, 0x2c, 0x93, 0x08, 0xe0, 0x2c, 0xab, 0x00, 0x93, 0x20, 0x46, + 0x39, 0x46, 0x0b, 0xf1, 0x38, 0x02, 0x22, 0xab, 0x1f, 0xf0, 0x42, 0xde, + 0xb7, 0xf8, 0x62, 0x50, 0xd8, 0xf8, 0x2c, 0x60, 0xb5, 0xf5, 0x80, 0x6f, + 0xd8, 0xf8, 0x30, 0x90, 0x5e, 0xd0, 0xb5, 0xf5, 0x00, 0x6f, 0x5b, 0xd0, + 0x30, 0x46, 0x49, 0x46, 0xfd, 0xf3, 0x76, 0xf0, 0x09, 0x90, 0x18, 0xb1, + 0x41, 0x78, 0x00, 0x26, 0x08, 0x91, 0x0a, 0xe0, 0x30, 0x46, 0x49, 0x46, + 0x30, 0x22, 0xfc, 0xf3, 0x5f, 0xf2, 0x06, 0x46, 0x10, 0xb1, 0x42, 0x78, + 0x08, 0x92, 0x00, 0xe0, 0x08, 0x90, 0x80, 0x2d, 0x0a, 0xd0, 0x03, 0xd8, + 0x10, 0x2d, 0x07, 0xd0, 0x40, 0x2d, 0x04, 0xe0, 0xb5, 0xf5, 0x80, 0x7f, + 0x02, 0xd0, 0xb5, 0xf5, 0x00, 0x7f, 0x37, 0xd1, 0xba, 0x6d, 0x40, 0xf2, + 0x37, 0x13, 0x13, 0x40, 0x00, 0x2b, 0x36, 0xd0, 0x08, 0x9b, 0x00, 0x2e, + 0x08, 0xbf, 0x14, 0x23, 0x40, 0x2d, 0x08, 0x93, 0x1c, 0xd0, 0x00, 0x21, + 0x07, 0x91, 0x3a, 0xe0, 0x16, 0x26, 0x06, 0xfb, 0x05, 0x76, 0x06, 0xf5, + 0xb4, 0x76, 0x58, 0x46, 0x31, 0x1d, 0x06, 0x22, 0xcd, 0xf8, 0x18, 0xc0, + 0xfb, 0xf3, 0x72, 0xf6, 0xdd, 0xf8, 0x18, 0xc0, 0x40, 0xb9, 0x07, 0x9b, + 0x40, 0xa9, 0x01, 0xeb, 0x83, 0x02, 0x0a, 0x36, 0x01, 0x33, 0x42, 0xf8, + 0xb8, 0x6c, 0x07, 0x93, 0x01, 0x35, 0x05, 0xe0, 0x00, 0x23, 0xc1, 0x46, + 0x07, 0x93, 0xa8, 0x46, 0xb4, 0x46, 0x1d, 0x46, 0xd7, 0xf8, 0xcc, 0x22, + 0x95, 0x42, 0xdb, 0xd3, 0x45, 0x46, 0x66, 0x46, 0xc8, 0x46, 0x12, 0xe0, + 0x85, 0xb1, 0x02, 0xe0, 0x00, 0x26, 0x09, 0x96, 0x08, 0x96, 0xba, 0x6d, + 0x40, 0xf2, 0x37, 0x13, 0x13, 0x40, 0x08, 0x9a, 0x00, 0x2b, 0x18, 0xbf, + 0x00, 0x23, 0x18, 0xbf, 0x18, 0x22, 0x07, 0x93, 0x08, 0x92, 0x00, 0xe0, + 0x07, 0x95, 0x40, 0xf2, 0xee, 0x53, 0x01, 0x93, 0x3f, 0xab, 0x02, 0x93, + 0x0f, 0x9b, 0x20, 0x46, 0x00, 0x2b, 0x14, 0xbf, 0x20, 0x21, 0x00, 0x21, + 0x5a, 0x46, 0x07, 0xf1, 0xc2, 0x03, 0xcd, 0xf8, 0x00, 0xb0, 0x1c, 0xf0, + 0x6d, 0xd8, 0x0a, 0x90, 0x30, 0xb9, 0x20, 0x46, 0x0a, 0x99, 0xb7, 0xf8, + 0x0c, 0x23, 0x32, 0xf0, 0xf7, 0xdb, 0x6f, 0xe2, 0x3f, 0x99, 0x20, 0x46, + 0x01, 0xf5, 0xbc, 0x62, 0x0e, 0x32, 0xa1, 0xf1, 0x18, 0x03, 0x0b, 0x91, + 0x0c, 0x92, 0x39, 0x46, 0x5a, 0x46, 0x11, 0x93, 0xfe, 0xf7, 0xa6, 0xfb, + 0x0b, 0x99, 0x08, 0x80, 0xb8, 0xf8, 0x22, 0x30, 0x4b, 0x80, 0x0f, 0x9a, + 0x0b, 0x1d, 0x3f, 0x93, 0x8a, 0xb1, 0x08, 0xf1, 0x24, 0x09, 0x48, 0x46, + 0xfc, 0xf3, 0x18, 0xf3, 0x10, 0xb9, 0x3f, 0x98, 0x49, 0x46, 0x02, 0xe0, + 0x3f, 0x98, 0x07, 0xf1, 0xd6, 0x01, 0x06, 0x22, 0xfb, 0xf3, 0x1e, 0xf6, + 0x3f, 0x9b, 0x06, 0x33, 0x3f, 0x93, 0x3f, 0x9b, 0x00, 0x21, 0x0e, 0x93, + 0x18, 0x46, 0x0d, 0x9a, 0x10, 0x9b, 0x25, 0xf0, 0x0b, 0xdf, 0x01, 0x21, + 0x22, 0x9a, 0x23, 0xab, 0x3f, 0x90, 0x25, 0xf0, 0x05, 0xdf, 0x08, 0x99, + 0x81, 0x46, 0x3f, 0x90, 0x00, 0x29, 0x00, 0xf0, 0x84, 0x80, 0x86, 0xb1, + 0x07, 0x9a, 0x1a, 0xb1, 0x20, 0x46, 0x31, 0x46, 0xfe, 0xf7, 0x99, 0xfb, + 0xdd, 0xf8, 0xfc, 0x90, 0x31, 0x46, 0x48, 0x46, 0x17, 0xf0, 0xc4, 0xd9, + 0x3f, 0x90, 0x73, 0x78, 0x89, 0xf8, 0x01, 0x30, 0x19, 0xe0, 0x80, 0x2d, + 0x0a, 0xd0, 0x03, 0xd8, 0x10, 0x2d, 0x07, 0xd0, 0x40, 0x2d, 0x04, 0xe0, + 0xb5, 0xf5, 0x80, 0x7f, 0x02, 0xd0, 0xb5, 0xf5, 0x00, 0x7f, 0x0d, 0xd1, + 0x90, 0x49, 0x48, 0x46, 0x17, 0xf0, 0xae, 0xd9, 0x39, 0x46, 0x3f, 0x90, + 0x0b, 0xf1, 0x7b, 0x02, 0x20, 0x46, 0x09, 0xf1, 0x04, 0x03, 0x13, 0xf0, + 0x13, 0xd8, 0x4e, 0x46, 0x80, 0x2d, 0x0a, 0xd0, 0x03, 0xd8, 0x10, 0x2d, + 0x07, 0xd0, 0x40, 0x2d, 0x04, 0xe0, 0xb5, 0xf5, 0x80, 0x7f, 0x02, 0xd0, + 0xb5, 0xf5, 0x00, 0x7f, 0x49, 0xd1, 0x07, 0x9b, 0x00, 0x2b, 0x2e, 0xd0, + 0x73, 0x78, 0x07, 0x9a, 0xf3, 0x18, 0x9a, 0x70, 0x99, 0x1c, 0x13, 0x0a, + 0x4b, 0x70, 0x73, 0x78, 0x0d, 0xf1, 0x44, 0x0c, 0x02, 0x33, 0x73, 0x70, + 0x3f, 0x9b, 0x0d, 0x91, 0x02, 0x33, 0x3f, 0x93, 0x4f, 0xf0, 0x00, 0x09, + 0x3b, 0x46, 0x2f, 0x46, 0x65, 0x46, 0x12, 0xe0, 0x0d, 0x99, 0x10, 0x22, + 0x01, 0xeb, 0x09, 0x10, 0x02, 0x30, 0x55, 0xf8, 0x04, 0x1f, 0x06, 0x93, + 0xfb, 0xf3, 0xaa, 0xf5, 0x72, 0x78, 0x09, 0xf1, 0x01, 0x09, 0x10, 0x32, + 0x72, 0x70, 0x3f, 0x9a, 0x06, 0x9b, 0x10, 0x32, 0x3f, 0x92, 0x07, 0x9a, + 0x91, 0x45, 0xe9, 0xd1, 0x3d, 0x46, 0x1f, 0x46, 0x01, 0xe0, 0xdd, 0xf8, + 0x1c, 0x90, 0xd4, 0xf8, 0x6c, 0x32, 0xd3, 0xf8, 0xd8, 0x32, 0x5b, 0x68, + 0x02, 0x2b, 0x0e, 0xd1, 0xb9, 0xf1, 0x00, 0x0f, 0x0b, 0xd0, 0x00, 0x22, + 0x00, 0x92, 0x01, 0x92, 0x02, 0x96, 0x73, 0x78, 0x20, 0x46, 0x02, 0x33, + 0x03, 0x93, 0x57, 0x21, 0x13, 0x46, 0x1d, 0xf0, 0x1f, 0xdb, 0x2c, 0x9a, + 0x2a, 0xb1, 0x3f, 0x98, 0x32, 0x21, 0x2d, 0xab, 0x25, 0xf0, 0x74, 0xde, + 0x3f, 0x90, 0x43, 0x46, 0xd8, 0xf8, 0x2c, 0x60, 0xb8, 0x46, 0x1f, 0x46, + 0x1a, 0xe0, 0x72, 0x78, 0x71, 0x1a, 0x02, 0x31, 0x89, 0x18, 0x99, 0x42, + 0x1a, 0xd8, 0x09, 0x9b, 0xb3, 0x42, 0x17, 0xd0, 0x33, 0x78, 0x01, 0x2b, + 0x0b, 0xd9, 0x30, 0x2b, 0x09, 0xd0, 0x02, 0x32, 0x3f, 0x98, 0x31, 0x46, + 0xfb, 0xf3, 0x62, 0xf5, 0x73, 0x78, 0x3f, 0x9a, 0x02, 0x33, 0xd3, 0x18, + 0x3f, 0x93, 0x73, 0x78, 0x02, 0x33, 0xf6, 0x18, 0x26, 0xb1, 0xf9, 0x6a, + 0x3b, 0x6b, 0xca, 0x18, 0x96, 0x42, 0xde, 0xd3, 0x3b, 0x46, 0x47, 0x46, + 0x98, 0x46, 0x23, 0x68, 0x93, 0xf8, 0x46, 0x30, 0x9a, 0x07, 0x17, 0xd0, + 0xda, 0xf8, 0x04, 0x30, 0xdb, 0x03, 0x13, 0xd5, 0x22, 0x6b, 0x38, 0x46, + 0x13, 0x68, 0x65, 0x32, 0xa3, 0xf1, 0x02, 0x0e, 0xde, 0xf1, 0x00, 0x03, + 0x43, 0xeb, 0x0e, 0x03, 0x36, 0xa9, 0x25, 0xf0, 0x95, 0xdd, 0x3f, 0x98, + 0x2d, 0x21, 0x1a, 0x22, 0x36, 0xab, 0x25, 0xf0, 0x2d, 0xde, 0x3f, 0x90, + 0x94, 0xf8, 0x65, 0x36, 0x33, 0xb1, 0x04, 0xf5, 0xcc, 0x61, 0x3f, 0x98, + 0x04, 0x31, 0x17, 0xf0, 0xf5, 0xd8, 0x3f, 0x90, 0x23, 0x68, 0x93, 0xf8, + 0x46, 0x30, 0x9a, 0x07, 0x1d, 0xd0, 0xda, 0xf8, 0x04, 0x30, 0xdb, 0x03, + 0x19, 0xd5, 0x22, 0x6b, 0x38, 0x46, 0x13, 0x68, 0x65, 0x32, 0xa3, 0xf1, + 0x02, 0x0e, 0xde, 0xf1, 0x00, 0x03, 0x43, 0xeb, 0x0e, 0x03, 0x36, 0xa9, + 0x25, 0xf0, 0x6e, 0xdd, 0x0c, 0x9a, 0x3f, 0x99, 0x20, 0x46, 0x8a, 0x42, + 0x28, 0xbf, 0xc1, 0xeb, 0x02, 0x02, 0x36, 0xab, 0x38, 0xbf, 0x00, 0x22, + 0x25, 0xf0, 0x20, 0xdc, 0x3f, 0x90, 0x23, 0x68, 0x5b, 0x6b, 0x2b, 0xb3, + 0xbb, 0xf8, 0x06, 0x30, 0x5b, 0x07, 0x21, 0xd5, 0x03, 0x22, 0x3d, 0xa8, + 0x1c, 0x49, 0xfb, 0xf3, 0xfb, 0xf4, 0x01, 0x22, 0x02, 0x23, 0x8d, 0xf8, + 0xf9, 0x20, 0x94, 0xf8, 0xfa, 0x21, 0x8d, 0xf8, 0xf7, 0x30, 0x00, 0x23, + 0x8d, 0xf8, 0xf8, 0x30, 0x32, 0xb1, 0x9b, 0xf9, 0x6a, 0x20, 0x9a, 0x42, + 0x03, 0xda, 0x94, 0xf8, 0x0a, 0x37, 0x00, 0xe0, 0x13, 0x46, 0x8d, 0xf8, + 0xfa, 0x30, 0x3f, 0x98, 0xdd, 0x21, 0x07, 0x22, 0x3d, 0xab, 0x25, 0xf0, + 0xd7, 0xdd, 0x3f, 0x90, 0xb5, 0xf5, 0x80, 0x6f, 0x02, 0xd0, 0xb5, 0xf5, + 0x00, 0x6f, 0x07, 0xd1, 0xd7, 0xf8, 0x2c, 0x35, 0x00, 0x2b, 0x2b, 0xd0, + 0x3f, 0x98, 0xd7, 0xf8, 0x28, 0x15, 0x04, 0xe0, 0x08, 0x9b, 0x2b, 0xb3, + 0x09, 0x99, 0x49, 0xb1, 0x3f, 0x98, 0x17, 0xf0, 0x93, 0xd8, 0x3f, 0x90, + 0x1e, 0xe0, 0x00, 0xbf, 0xcc, 0xd2, 0x85, 0x00, 0xd1, 0xb6, 0x01, 0x00, + 0x40, 0x2d, 0x17, 0xd0, 0x80, 0x2d, 0x15, 0xd0, 0x10, 0x2d, 0x13, 0xd0, + 0xb5, 0xf5, 0x80, 0x7f, 0x10, 0xd0, 0xb5, 0xf5, 0x00, 0x7f, 0x0d, 0xd0, + 0x3f, 0x9e, 0x72, 0x49, 0x30, 0x46, 0x17, 0xf0, 0x7b, 0xd8, 0x39, 0x46, + 0x3f, 0x90, 0x0b, 0xf1, 0x6b, 0x02, 0x20, 0x46, 0x06, 0xf1, 0x08, 0x03, + 0x12, 0xf0, 0xe0, 0xde, 0x6b, 0x1e, 0x9b, 0xb2, 0x01, 0x2b, 0x03, 0xd9, + 0x04, 0x2d, 0x01, 0xd0, 0x08, 0x2d, 0x0a, 0xd1, 0xdb, 0xf8, 0x64, 0x00, + 0x00, 0x28, 0x33, 0xd0, 0xbb, 0xf8, 0x68, 0x10, 0x0c, 0x30, 0x0c, 0x39, + 0xfc, 0xf3, 0x44, 0xf6, 0x16, 0xe0, 0x80, 0x2d, 0x0a, 0xd0, 0x03, 0xd8, + 0x10, 0x2d, 0x07, 0xd0, 0x40, 0x2d, 0x04, 0xe0, 0xb5, 0xf5, 0x80, 0x7f, + 0x02, 0xd0, 0xb5, 0xf5, 0x00, 0x7f, 0x1f, 0xd1, 0xdb, 0xf8, 0x64, 0x00, + 0xe0, 0xb1, 0xbb, 0xf8, 0x68, 0x10, 0x0c, 0x30, 0x0c, 0x39, 0x30, 0x22, + 0xfc, 0xf3, 0x20, 0xf0, 0xa0, 0xb1, 0xd4, 0xf8, 0x6c, 0x32, 0xd3, 0xf8, + 0xd8, 0x32, 0x5b, 0x68, 0x02, 0x2b, 0x0d, 0xd1, 0x43, 0x78, 0x10, 0x2b, + 0x0a, 0xd9, 0x02, 0x33, 0x00, 0x22, 0x02, 0x90, 0x03, 0x93, 0x20, 0x46, + 0x57, 0x21, 0x01, 0x23, 0x00, 0x92, 0x01, 0x92, 0x1d, 0xf0, 0x04, 0xda, + 0xbb, 0x6d, 0x58, 0x07, 0x01, 0xd5, 0x04, 0x23, 0x0c, 0xe0, 0x99, 0x07, + 0x01, 0xd5, 0x02, 0x23, 0x08, 0xe0, 0xda, 0x07, 0x01, 0xd5, 0x01, 0x23, + 0x04, 0xe0, 0x13, 0xf4, 0x80, 0x73, 0x18, 0xbf, 0x4f, 0xf4, 0x80, 0x73, + 0xca, 0xf8, 0x40, 0x30, 0x23, 0x68, 0x93, 0xf8, 0x46, 0x30, 0x9d, 0x07, + 0x2a, 0xd0, 0xda, 0xf8, 0x40, 0x30, 0x01, 0x3b, 0x01, 0x2b, 0x09, 0xd8, + 0xda, 0xf8, 0x04, 0x30, 0x58, 0x03, 0x05, 0xd5, 0x20, 0x46, 0x51, 0x46, + 0x06, 0x22, 0x24, 0xf0, 0xd5, 0xda, 0x1b, 0xe0, 0xda, 0xf8, 0x04, 0x30, + 0x59, 0x03, 0x17, 0xd5, 0x51, 0x46, 0x06, 0x22, 0x20, 0x46, 0x24, 0xf0, + 0x6f, 0xda, 0x20, 0x46, 0x16, 0xf0, 0x9c, 0xdc, 0x01, 0x28, 0x01, 0x46, + 0x0c, 0xd1, 0xd4, 0xf8, 0xf8, 0x37, 0x20, 0x46, 0x1a, 0x88, 0x42, 0xf2, + 0x0e, 0x73, 0x01, 0x3a, 0x92, 0xb2, 0x9a, 0x42, 0x98, 0xbf, 0x00, 0x21, + 0x28, 0xf0, 0xce, 0xdc, 0x0c, 0x9a, 0x3f, 0x9b, 0x38, 0x46, 0x9a, 0x42, + 0x2c, 0xbf, 0xc3, 0xeb, 0x02, 0x02, 0x00, 0x22, 0x00, 0x92, 0x20, 0x22, + 0x01, 0x92, 0x00, 0x21, 0x4f, 0xf0, 0xff, 0x32, 0x04, 0xf0, 0x71, 0xfb, + 0x0e, 0x99, 0x3f, 0x90, 0x40, 0x1a, 0x00, 0x23, 0x03, 0x91, 0x04, 0x90, + 0x39, 0x46, 0x55, 0x22, 0x20, 0x46, 0x00, 0x93, 0x01, 0x93, 0x02, 0x93, + 0x16, 0xf0, 0xd8, 0xd9, 0x3f, 0x9d, 0x11, 0x9a, 0x0a, 0x9b, 0xd8, 0xf8, + 0x34, 0x10, 0xad, 0x1a, 0x9d, 0x82, 0x21, 0xb1, 0x60, 0x68, 0xd8, 0xf8, + 0x38, 0x20, 0x00, 0xf0, 0xb5, 0xda, 0x18, 0x3d, 0x60, 0x68, 0x29, 0x46, + 0x00, 0xf0, 0xa0, 0xda, 0xc8, 0xf8, 0x34, 0x00, 0x40, 0xb1, 0x0f, 0x99, + 0xc8, 0xf8, 0x38, 0x50, 0x88, 0xf8, 0x3c, 0x10, 0x2a, 0x46, 0x0b, 0x99, + 0xfb, 0xf3, 0xe8, 0xf3, 0xbb, 0xf8, 0x62, 0x30, 0x20, 0x46, 0xc3, 0xf3, + 0x40, 0x13, 0x00, 0x93, 0x00, 0x23, 0x01, 0x93, 0x02, 0x93, 0xd4, 0xf8, + 0x04, 0x28, 0x0a, 0x99, 0x53, 0x46, 0x1f, 0xf0, 0xaf, 0xd9, 0x0a, 0x9a, + 0x00, 0x28, 0x08, 0xbf, 0x00, 0x22, 0x0a, 0x92, 0x0a, 0x98, 0x41, 0xb0, + 0xbd, 0xe8, 0xf0, 0x8f, 0xe2, 0xd2, 0x85, 0x00, 0x2d, 0xe9, 0xf0, 0x41, + 0x03, 0x68, 0x04, 0x46, 0x93, 0xf8, 0x3f, 0x30, 0xc5, 0x68, 0x13, 0xb1, + 0xb0, 0xf8, 0x26, 0x66, 0x02, 0xe0, 0xfc, 0xf7, 0xde, 0xfe, 0x06, 0x46, + 0x00, 0x22, 0x20, 0x69, 0x31, 0x46, 0x04, 0xf0, 0x19, 0xfa, 0x56, 0x21, + 0x20, 0x69, 0x36, 0xf0, 0x0b, 0xdf, 0xd4, 0xf8, 0x88, 0x31, 0x40, 0x00, + 0x00, 0x2b, 0xc4, 0xf8, 0x04, 0x05, 0x06, 0xda, 0x20, 0x69, 0xb2, 0x21, + 0x36, 0xf0, 0x00, 0xdf, 0x40, 0x00, 0xc4, 0xf8, 0x08, 0x05, 0xa2, 0x21, + 0x20, 0x69, 0x36, 0xf0, 0xf9, 0xde, 0x40, 0x00, 0xc4, 0xf8, 0xec, 0x07, + 0x20, 0x46, 0x15, 0xf0, 0xbb, 0xdb, 0x94, 0xf8, 0xcd, 0x31, 0x33, 0xb9, + 0x20, 0x69, 0x4c, 0x21, 0x36, 0xf0, 0xec, 0xde, 0xc0, 0x09, 0x84, 0xf8, + 0xcd, 0x01, 0x20, 0x46, 0x20, 0xf0, 0x14, 0xd9, 0x20, 0x46, 0x40, 0xf0, + 0xe5, 0xdd, 0x00, 0x27, 0xe3, 0x19, 0xd3, 0xf8, 0x4c, 0x82, 0xb8, 0xf1, + 0x00, 0x0f, 0x05, 0xd0, 0x40, 0x46, 0x22, 0xf0, 0xc3, 0xda, 0x40, 0x46, + 0x22, 0xf0, 0xb6, 0xd8, 0x04, 0x37, 0x20, 0x2f, 0xf0, 0xd1, 0x23, 0x68, + 0x93, 0xf8, 0x3f, 0x30, 0x93, 0xb1, 0x00, 0x23, 0xe2, 0x18, 0xd2, 0xf8, + 0x4c, 0x02, 0x50, 0xb1, 0x02, 0x79, 0x42, 0xb1, 0xd0, 0xf8, 0xd4, 0x32, + 0xdb, 0x8d, 0x1b, 0x04, 0xc5, 0xf8, 0x88, 0x31, 0x22, 0xf0, 0xe2, 0xdc, + 0x02, 0xe0, 0x04, 0x33, 0x20, 0x2b, 0xed, 0xd1, 0x20, 0x46, 0x31, 0x46, + 0x0c, 0xf0, 0x30, 0xdc, 0x20, 0x46, 0x74, 0x21, 0xb4, 0xf8, 0x7a, 0x25, + 0x25, 0xf0, 0x8c, 0xdc, 0x94, 0xf8, 0xd1, 0x21, 0x42, 0xf2, 0x10, 0x73, + 0x00, 0x2a, 0x0c, 0xbf, 0x1a, 0x46, 0x4f, 0xf4, 0xbc, 0x62, 0x20, 0x46, + 0x82, 0x21, 0x25, 0xf0, 0x7f, 0xdc, 0x23, 0x6b, 0x94, 0xf8, 0xd1, 0x11, + 0x18, 0x69, 0x0b, 0xf0, 0xad, 0xfc, 0x01, 0x22, 0x13, 0x46, 0xb4, 0xf8, + 0x78, 0x17, 0x20, 0x46, 0x0d, 0xf0, 0xe8, 0xdd, 0x01, 0x23, 0xb4, 0xf8, + 0x7a, 0x17, 0x00, 0x22, 0x20, 0x46, 0x0d, 0xf0, 0xe1, 0xdd, 0xd4, 0xf8, + 0x40, 0x01, 0x28, 0xf0, 0x5d, 0xdf, 0x20, 0x46, 0xfe, 0xf7, 0xce, 0xfc, + 0x23, 0x68, 0x5b, 0x6b, 0x5b, 0xb1, 0xb5, 0xf8, 0x88, 0x36, 0xd4, 0xf8, + 0x6c, 0x02, 0x9b, 0xb2, 0x43, 0xf0, 0x04, 0x03, 0xa5, 0xf8, 0x88, 0x36, + 0x00, 0x21, 0x1b, 0xf0, 0x3b, 0xda, 0x20, 0x46, 0xfc, 0xf7, 0x0c, 0xfd, + 0xd4, 0xf8, 0x84, 0x11, 0x61, 0xb9, 0x20, 0x46, 0x1f, 0xf0, 0x12, 0xdc, + 0x05, 0x04, 0xc4, 0xf8, 0x84, 0x51, 0x20, 0x46, 0x02, 0x21, 0x1f, 0xf0, + 0x0b, 0xdc, 0x28, 0x43, 0xc4, 0xf8, 0x84, 0x01, 0x23, 0x68, 0x93, 0xf8, + 0xa1, 0x30, 0x01, 0x2b, 0x03, 0xd1, 0xd4, 0xf8, 0x40, 0x01, 0x2a, 0xf0, + 0x1b, 0xd8, 0x20, 0x46, 0x1b, 0xf0, 0x4c, 0xdb, 0x20, 0x46, 0x0b, 0xf0, + 0x3b, 0xdf, 0xb4, 0xf8, 0x5c, 0x17, 0x20, 0x46, 0x20, 0xf0, 0xd2, 0xd8, + 0x20, 0x46, 0x13, 0xf0, 0x89, 0xdd, 0x00, 0x23, 0x84, 0xf8, 0x44, 0x30, + 0x45, 0x4a, 0xe3, 0x68, 0xc3, 0xf8, 0xdc, 0x23, 0x01, 0x23, 0x84, 0xf8, + 0xa8, 0x31, 0x84, 0xf8, 0xaa, 0x31, 0x23, 0x68, 0x93, 0xf8, 0x38, 0x30, + 0x1b, 0xb9, 0x25, 0x46, 0x26, 0x46, 0x00, 0x27, 0x11, 0xe0, 0xff, 0x23, + 0x84, 0xf8, 0x95, 0x38, 0x84, 0xf8, 0x96, 0x38, 0x84, 0xf8, 0x97, 0x38, + 0x84, 0xf8, 0x98, 0x38, 0x84, 0xf8, 0x99, 0x38, 0x84, 0xf8, 0x9a, 0x38, + 0x84, 0xf8, 0x9b, 0x38, 0x84, 0xf8, 0x9c, 0x38, 0xe9, 0xe7, 0x07, 0xf5, + 0x40, 0x71, 0x20, 0x46, 0x1f, 0xf0, 0xc6, 0xdb, 0xb6, 0xf8, 0x20, 0x32, + 0x19, 0x07, 0x06, 0xd1, 0x23, 0xf0, 0x0f, 0x03, 0x00, 0xf0, 0x0f, 0x02, + 0x13, 0x43, 0xa6, 0xf8, 0x20, 0x32, 0xb6, 0xf8, 0x20, 0x32, 0x13, 0xf0, + 0xf0, 0x0f, 0x06, 0xd1, 0x23, 0xf0, 0xf0, 0x03, 0x00, 0xf0, 0xf0, 0x02, + 0x13, 0x43, 0xa6, 0xf8, 0x20, 0x32, 0xb6, 0xf8, 0x20, 0x32, 0x13, 0xf4, + 0x70, 0x6f, 0x06, 0xd1, 0x23, 0xf4, 0x70, 0x63, 0x00, 0xf4, 0x70, 0x62, + 0x13, 0x43, 0xa6, 0xf8, 0x20, 0x32, 0xb6, 0xf8, 0x20, 0x32, 0x1a, 0x0b, + 0x08, 0xd1, 0x1b, 0x05, 0x20, 0xf4, 0x7e, 0x60, 0x1b, 0x0d, 0x20, 0xf0, + 0x1f, 0x00, 0x18, 0x43, 0xa6, 0xf8, 0x20, 0x02, 0x02, 0x37, 0x02, 0x36, + 0x08, 0x2f, 0xc6, 0xd1, 0x23, 0x68, 0x20, 0x46, 0x93, 0xf9, 0x4c, 0x10, + 0x0e, 0xf0, 0xf0, 0xdd, 0x23, 0x68, 0x1a, 0x7e, 0xfa, 0xb1, 0x93, 0xf8, + 0x2f, 0x30, 0xe3, 0xb1, 0x04, 0xf1, 0x20, 0x07, 0xd5, 0xf8, 0x4c, 0x62, + 0x6e, 0xb1, 0xb3, 0x79, 0x5b, 0xb1, 0x23, 0x68, 0x93, 0xf8, 0x38, 0x30, + 0x2b, 0xb1, 0x20, 0x46, 0xd6, 0xf8, 0x4c, 0x15, 0x00, 0x22, 0x39, 0xf0, + 0x6d, 0xd9, 0x00, 0x23, 0xf3, 0x71, 0x04, 0x35, 0xbd, 0x42, 0xeb, 0xd1, + 0x00, 0x23, 0x84, 0xf8, 0x72, 0x32, 0xd4, 0xf8, 0x34, 0x07, 0x2e, 0xf0, + 0x43, 0xd9, 0xd4, 0xf8, 0x68, 0x01, 0x04, 0x21, 0xbd, 0xe8, 0xf0, 0x41, + 0x4d, 0xf0, 0x8a, 0x9d, 0x80, 0x96, 0x98, 0x00, 0x2d, 0xe9, 0xf3, 0x41, + 0x08, 0x9c, 0x07, 0x46, 0x0e, 0x46, 0x15, 0x46, 0x98, 0x46, 0x00, 0x94, + 0x08, 0xf0, 0xc2, 0xfe, 0x10, 0xf1, 0x17, 0x0f, 0x09, 0xd1, 0x38, 0x46, + 0x31, 0x46, 0x2a, 0x46, 0x43, 0x46, 0x08, 0x94, 0x02, 0xb0, 0xbd, 0xe8, + 0xf0, 0x41, 0x09, 0xf0, 0x89, 0x9c, 0x02, 0xb0, 0xbd, 0xe8, 0xf0, 0x81, + 0x2d, 0xe9, 0xf0, 0x4f, 0x1e, 0x69, 0x95, 0xb0, 0x11, 0x91, 0x9a, 0x46, + 0xf3, 0x88, 0xc0, 0xf8, 0x78, 0x28, 0x9d, 0xb2, 0x06, 0x95, 0x05, 0xf0, + 0x0c, 0x08, 0x95, 0x88, 0x93, 0x46, 0x05, 0xf0, 0x03, 0x02, 0x02, 0x2a, + 0x04, 0x46, 0x4f, 0xea, 0x98, 0x08, 0x0d, 0x95, 0x07, 0xd1, 0x1b, 0xb2, + 0x00, 0x2b, 0x04, 0xda, 0xd8, 0xf1, 0x01, 0x03, 0x38, 0xbf, 0x00, 0x23, + 0x00, 0xe0, 0x00, 0x23, 0xba, 0xf8, 0x14, 0x90, 0xdb, 0xb2, 0x0c, 0x93, + 0xa9, 0xf1, 0x0a, 0x09, 0x9b, 0x00, 0xb8, 0xf1, 0x00, 0x0f, 0x03, 0xd1, + 0x17, 0x33, 0x4b, 0x45, 0x80, 0xf2, 0xa4, 0x81, 0x06, 0x9d, 0x05, 0xf0, + 0xfc, 0x07, 0x94, 0x2f, 0x03, 0xd0, 0xa4, 0x2f, 0x01, 0xd0, 0x84, 0x2f, + 0x03, 0xd1, 0xb9, 0xf1, 0x0f, 0x0f, 0x40, 0xf3, 0x97, 0x81, 0xb3, 0x7a, + 0x13, 0xf0, 0x01, 0x03, 0x0a, 0x93, 0x09, 0xd1, 0x20, 0x46, 0x06, 0xf1, + 0x0a, 0x01, 0x38, 0xf0, 0xdf, 0xdb, 0x05, 0x1c, 0x09, 0x90, 0x18, 0xbf, + 0x01, 0x25, 0x01, 0xe0, 0x00, 0x25, 0x09, 0x95, 0x08, 0x95, 0xb8, 0xf1, + 0x00, 0x0f, 0x0e, 0xd1, 0x06, 0xf1, 0x16, 0x05, 0x20, 0x46, 0x29, 0x46, + 0x38, 0xf0, 0xaa, 0xdb, 0x07, 0x90, 0x50, 0xb9, 0x29, 0x46, 0x20, 0x46, + 0x38, 0xf0, 0x0e, 0xdc, 0x0b, 0x90, 0x05, 0x46, 0x06, 0xe0, 0x00, 0x25, + 0x0b, 0x95, 0x07, 0x95, 0x02, 0xe0, 0x07, 0x9d, 0xcd, 0xf8, 0x2c, 0x80, + 0x94, 0xf8, 0xc8, 0x31, 0x23, 0xb9, 0x23, 0x68, 0x93, 0xf8, 0x2c, 0x20, + 0x32, 0xb9, 0x26, 0xe0, 0x20, 0x46, 0x59, 0x46, 0x52, 0x46, 0x00, 0x23, + 0x0f, 0xf0, 0x22, 0xd9, 0x94, 0x2f, 0x03, 0xd0, 0xa4, 0x2f, 0x01, 0xd0, + 0x84, 0x2f, 0x02, 0xd1, 0x08, 0x99, 0x59, 0xbb, 0x03, 0xe0, 0x80, 0x2f, + 0x28, 0xd0, 0x50, 0x2f, 0x26, 0xd0, 0xb8, 0xf1, 0x00, 0x0f, 0x40, 0xf0, + 0xd5, 0x83, 0x08, 0x9a, 0x02, 0xbb, 0x06, 0xf1, 0x0a, 0x00, 0xfb, 0xf3, + 0xa7, 0xf6, 0x00, 0x28, 0x00, 0xf0, 0xcc, 0x83, 0xc5, 0xb9, 0x06, 0xf1, + 0x16, 0x00, 0xfb, 0xf3, 0x9f, 0xf6, 0x98, 0xb9, 0xc4, 0xe3, 0x0a, 0x99, + 0x81, 0xb9, 0x08, 0x9a, 0x42, 0xb1, 0x93, 0xf8, 0x38, 0x20, 0x5a, 0xb1, + 0xb8, 0xf1, 0x00, 0x0f, 0x08, 0xd1, 0x3d, 0xb9, 0x09, 0x99, 0x29, 0xb9, + 0xd3, 0xf8, 0x8c, 0x30, 0x9a, 0x6f, 0x01, 0x32, 0x9a, 0x67, 0xb1, 0xe3, + 0x94, 0xf8, 0xc8, 0x31, 0x6b, 0xb9, 0x15, 0xb9, 0xd4, 0xf8, 0x6c, 0x32, + 0x00, 0xe0, 0x2b, 0x46, 0x93, 0xf8, 0xe5, 0x20, 0x2a, 0xb1, 0x20, 0x46, + 0x59, 0x46, 0x52, 0x46, 0x9b, 0x68, 0x0f, 0xf0, 0xdd, 0xd8, 0xb8, 0xf1, + 0x01, 0x0f, 0x0e, 0xd1, 0xc4, 0x2f, 0x0c, 0xd0, 0xd4, 0x2f, 0x0a, 0xd0, + 0x06, 0xf1, 0x10, 0x00, 0xfb, 0xf3, 0x7e, 0xf6, 0x00, 0x28, 0x40, 0xf0, + 0x93, 0x83, 0x33, 0x7c, 0xd8, 0x07, 0x00, 0xf1, 0x8f, 0x83, 0xda, 0xf8, + 0x10, 0x30, 0xb2, 0x1d, 0x06, 0x33, 0xca, 0xf8, 0x10, 0x30, 0x23, 0x68, + 0x05, 0x92, 0xd3, 0xf8, 0x8c, 0x30, 0x1f, 0xfa, 0x89, 0xf1, 0xda, 0x6c, + 0xaa, 0xf8, 0x14, 0x10, 0x01, 0x32, 0xda, 0x64, 0x20, 0x46, 0x00, 0x91, + 0x5a, 0x46, 0x05, 0x99, 0x13, 0xab, 0x11, 0xf0, 0x2b, 0xdc, 0x30, 0xb1, + 0x23, 0x68, 0xd3, 0xf8, 0x8c, 0x30, 0xda, 0x6f, 0x01, 0x32, 0xda, 0x67, + 0x6e, 0xe3, 0x13, 0x99, 0x11, 0xb1, 0x23, 0x68, 0x9b, 0x6a, 0x0b, 0x62, + 0xb8, 0xf1, 0x01, 0x0f, 0x38, 0xd1, 0xba, 0xf8, 0x14, 0x30, 0xda, 0xf8, + 0x10, 0x00, 0xa3, 0xf1, 0x10, 0x05, 0xaa, 0xf8, 0x14, 0x50, 0x0c, 0x9d, + 0x00, 0xf1, 0x10, 0x02, 0xca, 0xf8, 0x10, 0x20, 0x35, 0xb1, 0x00, 0xf1, + 0x14, 0x02, 0x14, 0x3b, 0xca, 0xf8, 0x10, 0x20, 0xaa, 0xf8, 0x14, 0x30, + 0xa4, 0x2f, 0xba, 0xf8, 0x14, 0x30, 0x0e, 0xd1, 0x0b, 0x69, 0x9b, 0x79, + 0x00, 0x2b, 0x00, 0xf0, 0x49, 0x83, 0x91, 0xf8, 0xdf, 0x30, 0x00, 0x2b, + 0x00, 0xf0, 0x44, 0x83, 0x20, 0x46, 0x06, 0x9a, 0x2f, 0xf0, 0x94, 0xd9, + 0x3e, 0xe3, 0x20, 0x68, 0x90, 0xf8, 0x42, 0x00, 0x00, 0x28, 0x00, 0xf0, + 0x39, 0x83, 0x84, 0x2f, 0x02, 0xd0, 0x94, 0x2f, 0x40, 0xf0, 0x34, 0x83, + 0xd4, 0xf8, 0x40, 0x01, 0x00, 0x97, 0x28, 0xf0, 0x7b, 0xdb, 0x2d, 0xe3, + 0xbb, 0xf8, 0x16, 0x30, 0x0a, 0x9a, 0x03, 0xf4, 0xff, 0x63, 0x70, 0x2b, + 0x94, 0xbf, 0x00, 0x23, 0x01, 0x23, 0x0e, 0x93, 0x00, 0x2a, 0x6b, 0xd1, + 0xb3, 0x8b, 0xad, 0xf8, 0x28, 0x30, 0x9b, 0xb2, 0x0f, 0x93, 0x31, 0xb9, + 0x20, 0x46, 0x06, 0xf1, 0x10, 0x01, 0x0e, 0x9a, 0x4e, 0xf0, 0x2a, 0xdd, + 0x13, 0x90, 0x06, 0x9b, 0x13, 0xf4, 0x00, 0x63, 0x10, 0x93, 0x13, 0x9b, + 0x05, 0xd0, 0x23, 0xb1, 0xb3, 0xf8, 0xbc, 0x20, 0x0f, 0x99, 0x8a, 0x42, + 0x2a, 0xd0, 0xc3, 0xb1, 0xbd, 0xf8, 0x28, 0x20, 0xa3, 0xf8, 0xbc, 0x20, + 0x4c, 0xe0, 0x09, 0xf1, 0xf3, 0x08, 0x04, 0xeb, 0xc8, 0x08, 0x40, 0x46, + 0xfb, 0xf3, 0xe4, 0xf5, 0x80, 0xb9, 0x06, 0xf1, 0x10, 0x00, 0x41, 0x46, + 0x06, 0x22, 0xfb, 0xf3, 0xd1, 0xf0, 0x58, 0xb1, 0x09, 0xf1, 0x01, 0x09, + 0x5f, 0xfa, 0x89, 0xf9, 0x00, 0xe0, 0x99, 0x46, 0x94, 0xf8, 0xe8, 0x37, + 0x4b, 0x45, 0xe6, 0xd2, 0x4f, 0xf0, 0x00, 0x08, 0x10, 0x9b, 0x83, 0xb1, + 0xb8, 0xf1, 0x00, 0x0f, 0x10, 0xd0, 0xb8, 0xf8, 0x06, 0x30, 0x0f, 0x99, + 0x8b, 0x42, 0x23, 0xd1, 0x23, 0x68, 0xd3, 0xf8, 0x8c, 0x30, 0xd3, 0xf8, + 0xbc, 0x21, 0x01, 0x32, 0xc3, 0xf8, 0xbc, 0x21, 0xd4, 0xe2, 0xb8, 0xf1, + 0x00, 0x0f, 0x17, 0xd1, 0x94, 0xf8, 0xe8, 0x37, 0x06, 0xf1, 0x10, 0x01, + 0x03, 0xf1, 0xf3, 0x08, 0x04, 0xeb, 0xc8, 0x08, 0x01, 0x33, 0x84, 0xf8, + 0xe8, 0x37, 0x06, 0x22, 0x40, 0x46, 0xfb, 0xf3, 0xbb, 0xf0, 0x94, 0xf8, + 0xe8, 0x27, 0x0a, 0x23, 0xb2, 0xfb, 0xf3, 0xf1, 0x03, 0xfb, 0x11, 0x23, + 0x84, 0xf8, 0xe8, 0x37, 0xbd, 0xf8, 0x28, 0x30, 0xa8, 0xf8, 0x06, 0x30, + 0x08, 0x99, 0x59, 0xb1, 0x07, 0x9a, 0x4a, 0xb1, 0xab, 0x79, 0x3b, 0xb9, + 0xd5, 0xf8, 0xe4, 0x32, 0x1b, 0x7a, 0x1b, 0xb1, 0x28, 0x46, 0x06, 0x99, + 0x10, 0xf0, 0x68, 0xda, 0xba, 0xf8, 0x14, 0x10, 0xda, 0xf8, 0x10, 0x30, + 0xa1, 0xf1, 0x18, 0x02, 0xaa, 0xf8, 0x14, 0x20, 0x0c, 0x9a, 0x03, 0xf1, + 0x18, 0x09, 0xca, 0xf8, 0x10, 0x90, 0x32, 0xb1, 0x03, 0xf1, 0x1c, 0x09, + 0x1c, 0x39, 0xca, 0xf8, 0x10, 0x90, 0xaa, 0xf8, 0x14, 0x10, 0x0d, 0x99, + 0x06, 0x9a, 0xc1, 0xf3, 0xc0, 0x13, 0x51, 0x04, 0xba, 0xf8, 0x14, 0x80, + 0x0d, 0xd5, 0xb8, 0xf1, 0x07, 0x0f, 0x06, 0xdc, 0x23, 0x68, 0xd3, 0xf8, + 0x8c, 0x30, 0x5a, 0x6e, 0x01, 0x32, 0x5a, 0x66, 0x80, 0xe2, 0xb0, 0x2f, + 0x40, 0xf0, 0x7e, 0x82, 0x27, 0xe0, 0x50, 0x2f, 0x79, 0xd0, 0x10, 0xd8, + 0x20, 0x2f, 0x00, 0xf0, 0x48, 0x82, 0x06, 0xd8, 0x00, 0x2f, 0x00, 0xf0, + 0x44, 0x82, 0x10, 0x2f, 0x40, 0xf0, 0x70, 0x82, 0x41, 0xe0, 0x30, 0x2f, + 0x3f, 0xd0, 0x40, 0x2f, 0x40, 0xf0, 0x6a, 0x82, 0x4f, 0xe0, 0xb0, 0x2f, + 0x0d, 0xd0, 0x05, 0xd8, 0x80, 0x2f, 0x7b, 0xd0, 0xa0, 0x2f, 0x40, 0xf0, + 0x61, 0x82, 0x3f, 0xe1, 0xc0, 0x2f, 0x00, 0xf0, 0x93, 0x81, 0xd0, 0x2f, + 0x40, 0xf0, 0x5a, 0x82, 0x48, 0xe2, 0xb8, 0xf1, 0x05, 0x0f, 0x40, 0xf3, + 0x4f, 0x82, 0x00, 0x2d, 0x00, 0xf0, 0x52, 0x82, 0xaa, 0x79, 0x9a, 0xb1, + 0x2a, 0x79, 0x00, 0x2a, 0x00, 0xf0, 0x4c, 0x82, 0xcd, 0xf8, 0x00, 0x80, + 0x01, 0x93, 0xbb, 0xf8, 0x10, 0x30, 0xd4, 0xf8, 0x34, 0x07, 0x03, 0xf0, + 0x08, 0x03, 0x02, 0x93, 0x29, 0x46, 0x05, 0x9a, 0x4b, 0x46, 0x02, 0xf0, + 0x5c, 0xfb, 0x3b, 0xe2, 0xd4, 0xf8, 0x40, 0x25, 0x92, 0xf9, 0x34, 0x20, + 0x00, 0x2a, 0x00, 0xf0, 0x35, 0x82, 0x00, 0x93, 0x28, 0x46, 0x05, 0x99, + 0x4a, 0x46, 0x43, 0x46, 0x32, 0xf0, 0x52, 0xd8, 0x2c, 0xe2, 0xb8, 0xf1, + 0x05, 0x0f, 0x40, 0xf3, 0x23, 0x82, 0x00, 0x2d, 0x00, 0xf0, 0x26, 0x82, + 0xab, 0x79, 0x00, 0x2b, 0x40, 0xf0, 0x22, 0x82, 0x13, 0x9b, 0x28, 0x46, + 0x00, 0x93, 0x05, 0x99, 0x4a, 0x46, 0x43, 0x46, 0x31, 0xf0, 0xfc, 0xdd, + 0x18, 0xe2, 0x23, 0x68, 0x93, 0xf8, 0x95, 0x30, 0x23, 0xb9, 0x94, 0xf8, + 0x72, 0x32, 0x00, 0x2b, 0x00, 0xf0, 0x10, 0x82, 0x08, 0xf1, 0x18, 0x02, + 0x05, 0x9d, 0x00, 0x23, 0x03, 0x92, 0x20, 0x46, 0x2c, 0x21, 0x06, 0xf1, + 0x10, 0x02, 0x00, 0x93, 0x01, 0x93, 0x02, 0x95, 0x1c, 0xf0, 0x96, 0xdd, + 0x00, 0xe2, 0xb8, 0xf1, 0x0b, 0x0f, 0x40, 0xf3, 0xf7, 0x81, 0xd4, 0xf8, + 0x68, 0x31, 0x9b, 0x79, 0x00, 0x2b, 0x00, 0xf0, 0xf7, 0x81, 0x08, 0x9d, + 0x00, 0x2d, 0x00, 0xf0, 0xf3, 0x81, 0x20, 0x46, 0x59, 0x46, 0x32, 0x46, + 0x05, 0x9b, 0xcd, 0xf8, 0x00, 0x90, 0xcd, 0xf8, 0x04, 0x80, 0xfd, 0xf7, + 0xcd, 0xff, 0xe7, 0xe1, 0xb8, 0xf1, 0x0b, 0x0f, 0x40, 0xf3, 0xde, 0x81, + 0x05, 0x99, 0x33, 0x46, 0x8d, 0xe8, 0x02, 0x02, 0x20, 0x46, 0x07, 0x99, + 0x5a, 0x46, 0xcd, 0xf8, 0x08, 0x80, 0xfe, 0xf7, 0x35, 0xfb, 0xd4, 0xf8, + 0x68, 0x31, 0x9b, 0x79, 0x4b, 0xb1, 0x20, 0x46, 0x59, 0x46, 0x32, 0x46, + 0x05, 0x9b, 0xcd, 0xf8, 0x00, 0x90, 0xcd, 0xf8, 0x04, 0x80, 0xfd, 0xf7, + 0xaf, 0xff, 0x94, 0xf8, 0x72, 0x32, 0x5b, 0xbb, 0xb9, 0xf8, 0x0a, 0x30, + 0xda, 0x07, 0x27, 0xd5, 0x20, 0x46, 0x49, 0x46, 0x42, 0x46, 0x16, 0xf0, + 0x05, 0xdc, 0x08, 0xbb, 0xbb, 0xf8, 0x16, 0x70, 0x07, 0xf4, 0xff, 0x67, + 0xff, 0x08, 0x0e, 0x2f, 0x00, 0xf2, 0xbe, 0x81, 0x09, 0xf1, 0x0c, 0x00, + 0xa8, 0xf1, 0x0c, 0x01, 0x03, 0x22, 0xfb, 0xf3, 0x49, 0xf3, 0x88, 0xb1, + 0x43, 0x78, 0x7b, 0xb1, 0x83, 0x78, 0xbb, 0x42, 0x0c, 0xd1, 0x22, 0x6b, + 0x10, 0x69, 0x04, 0x93, 0x0a, 0xf0, 0x40, 0xfa, 0x04, 0x9b, 0xc0, 0xb2, + 0x83, 0x42, 0x03, 0xd1, 0xd4, 0xf8, 0x68, 0x01, 0x4d, 0xf0, 0x78, 0xdc, + 0x0b, 0x9a, 0x3a, 0xb9, 0x20, 0x46, 0x06, 0xf1, 0x16, 0x01, 0x38, 0xf0, + 0xa5, 0xd9, 0x07, 0x46, 0x08, 0xb9, 0x4d, 0xe0, 0x0b, 0x9f, 0xba, 0x79, + 0x00, 0x2a, 0x49, 0xd1, 0xd7, 0xf8, 0xdc, 0x12, 0xd7, 0xf8, 0xd8, 0x32, + 0x05, 0x91, 0x09, 0xf1, 0x0c, 0x00, 0xa8, 0xf1, 0x0c, 0x01, 0x04, 0x93, + 0xfb, 0xf3, 0x1c, 0xf3, 0x04, 0x9b, 0x06, 0x90, 0x9b, 0x68, 0x0b, 0x2b, + 0x08, 0xd1, 0x38, 0x46, 0x59, 0x46, 0x32, 0x46, 0x4b, 0x46, 0xcd, 0xf8, + 0x00, 0x80, 0x33, 0xf0, 0x57, 0xda, 0x0d, 0xe0, 0x22, 0x68, 0x92, 0xf8, + 0x31, 0x20, 0x4a, 0xb1, 0x0f, 0x2b, 0x07, 0xd1, 0x38, 0x46, 0x59, 0x46, + 0x32, 0x46, 0x4b, 0x46, 0xcd, 0xf8, 0x00, 0x80, 0x33, 0xf0, 0x18, 0xde, + 0xbb, 0x7c, 0xfb, 0xb1, 0x05, 0x9a, 0x92, 0xf8, 0x5a, 0x30, 0xdb, 0xb1, + 0xd4, 0xf8, 0x68, 0x01, 0x06, 0x99, 0x01, 0x22, 0x4d, 0xf0, 0xde, 0xdc, + 0x38, 0xb1, 0x05, 0x99, 0x91, 0xf8, 0x59, 0x30, 0x1b, 0xb9, 0x01, 0x23, + 0x81, 0xf8, 0x59, 0x30, 0x0c, 0xe0, 0xd4, 0xf8, 0x68, 0x01, 0x06, 0x99, + 0x01, 0x22, 0x4d, 0xf0, 0xcf, 0xdc, 0x28, 0xb9, 0x05, 0x9a, 0x92, 0xf8, + 0x59, 0x30, 0x0b, 0xb1, 0x82, 0xf8, 0x59, 0x00, 0x07, 0x9b, 0x00, 0x2b, + 0x00, 0xf0, 0x40, 0x81, 0xd5, 0xf8, 0xd8, 0x32, 0x9b, 0x68, 0x0c, 0x2b, + 0x40, 0xf0, 0x3a, 0x81, 0x4b, 0x46, 0x28, 0x46, 0x59, 0x46, 0x32, 0x46, + 0x23, 0xf0, 0xfe, 0xd9, 0x28, 0x46, 0x00, 0x21, 0x31, 0xf0, 0xc8, 0xdb, + 0x23, 0x68, 0x93, 0xf8, 0x2f, 0x30, 0x23, 0xb1, 0xd4, 0xf8, 0x34, 0x07, + 0x2d, 0xf0, 0xee, 0xdd, 0x26, 0xe1, 0xd5, 0xf8, 0xe4, 0x32, 0x28, 0x46, + 0x99, 0x78, 0x09, 0xf0, 0xce, 0xf8, 0x1f, 0xe1, 0xb8, 0xf1, 0x01, 0x0f, + 0x40, 0xf3, 0x16, 0x81, 0x00, 0x2d, 0x00, 0xf0, 0x19, 0x81, 0xab, 0x79, + 0xb9, 0xf8, 0x00, 0x70, 0x4b, 0xbb, 0x20, 0x46, 0x13, 0x99, 0x1f, 0xf0, + 0x39, 0xdf, 0x13, 0x98, 0x03, 0x7e, 0x9b, 0x07, 0x13, 0xd5, 0x02, 0x21, + 0x4d, 0xf0, 0x66, 0xdf, 0x13, 0x9b, 0x1a, 0x7e, 0x12, 0xf0, 0x08, 0x02, + 0x0b, 0xd1, 0x20, 0x46, 0x29, 0x46, 0x06, 0xf1, 0x10, 0x03, 0x00, 0x97, + 0x01, 0x92, 0xcd, 0xf8, 0x08, 0x90, 0xcd, 0xf8, 0x0c, 0x80, 0x09, 0xf0, + 0x57, 0xfa, 0x07, 0x99, 0x00, 0x29, 0x00, 0xf0, 0xf5, 0x80, 0xd5, 0xf8, + 0xd8, 0x32, 0x9b, 0x68, 0x13, 0xb1, 0x28, 0x46, 0x31, 0xf0, 0xd0, 0xda, + 0x28, 0x46, 0x03, 0x21, 0x9d, 0xe0, 0x13, 0x99, 0x0b, 0x69, 0xab, 0x42, + 0x40, 0xf0, 0xe6, 0x80, 0x20, 0x46, 0x1f, 0xf0, 0x0b, 0xdf, 0x13, 0x98, + 0x03, 0x7e, 0x99, 0x07, 0x10, 0xd5, 0x12, 0x21, 0x4d, 0xf0, 0x38, 0xdf, + 0x00, 0x22, 0x20, 0x46, 0x29, 0x46, 0x06, 0xf1, 0x10, 0x03, 0x00, 0x97, + 0x01, 0x92, 0xcd, 0xf8, 0x08, 0x90, 0xcd, 0xf8, 0x0c, 0x80, 0x09, 0xf0, + 0x2d, 0xfa, 0x99, 0xe0, 0x10, 0x21, 0x4d, 0xf0, 0x27, 0xdf, 0xc9, 0xe0, + 0xb8, 0xf1, 0x01, 0x0f, 0x40, 0xf3, 0xc0, 0x80, 0x2d, 0xb9, 0x09, 0x9a, + 0x00, 0x2a, 0x00, 0xf0, 0xc1, 0x80, 0x17, 0x46, 0x00, 0xe0, 0x2f, 0x46, + 0xd4, 0xf8, 0x6c, 0x12, 0x06, 0xf1, 0x16, 0x00, 0xbc, 0x31, 0x06, 0x22, + 0xfa, 0xf3, 0x92, 0xf6, 0x00, 0x28, 0x40, 0xf0, 0xb3, 0x80, 0x13, 0x9b, + 0xb9, 0xf8, 0x00, 0xb0, 0x33, 0xb9, 0x20, 0x46, 0x06, 0xf1, 0x10, 0x01, + 0x0e, 0x9a, 0x4e, 0xf0, 0xbd, 0xda, 0x13, 0x90, 0x13, 0x99, 0x11, 0xb1, + 0x20, 0x46, 0x1f, 0xf0, 0xcb, 0xde, 0xbb, 0x79, 0x13, 0x98, 0x00, 0x2b, + 0x54, 0xd1, 0x00, 0x28, 0x3b, 0xd0, 0x12, 0x21, 0x4d, 0xf0, 0xf6, 0xde, + 0x13, 0x98, 0x03, 0x7e, 0xda, 0x07, 0x02, 0xd4, 0x43, 0x68, 0x9b, 0x00, + 0x31, 0xd5, 0x01, 0x21, 0x4d, 0xf0, 0xec, 0xde, 0xab, 0xf1, 0x0d, 0x03, + 0x9b, 0xb2, 0x09, 0x2b, 0x07, 0xd8, 0x23, 0x68, 0xd3, 0xf8, 0x8c, 0x30, + 0xd3, 0xf8, 0xf8, 0x21, 0x01, 0x32, 0xc3, 0xf8, 0xf8, 0x21, 0x97, 0xf9, + 0x10, 0x30, 0x02, 0x2b, 0x03, 0xd1, 0xf8, 0x68, 0x0e, 0x21, 0x52, 0xf0, + 0x69, 0xd9, 0x13, 0x9b, 0x1a, 0x7e, 0x12, 0xf0, 0x04, 0x02, 0x0f, 0xd1, + 0xcd, 0xf8, 0x00, 0xb0, 0x5b, 0x68, 0x20, 0x46, 0xc3, 0xf3, 0x40, 0x73, + 0x01, 0x93, 0x39, 0x46, 0x06, 0xf1, 0x10, 0x03, 0xcd, 0xf8, 0x08, 0x90, + 0xcd, 0xf8, 0x0c, 0x80, 0x32, 0xf0, 0x92, 0xd8, 0x13, 0x9b, 0x5a, 0x68, + 0x22, 0xf0, 0x00, 0x52, 0x5a, 0x60, 0x07, 0x9b, 0x00, 0x2b, 0x5d, 0xd0, + 0xab, 0x7c, 0x00, 0x2b, 0x5a, 0xd0, 0xd5, 0xf8, 0xd8, 0x32, 0x5a, 0x68, + 0x9b, 0x68, 0x02, 0x2a, 0x01, 0xd1, 0x08, 0x2b, 0x52, 0xd8, 0x13, 0xb1, + 0x28, 0x46, 0x31, 0xf0, 0x31, 0xda, 0x28, 0x46, 0x02, 0x21, 0x34, 0xf0, + 0x51, 0xd8, 0x49, 0xe0, 0x00, 0x28, 0x47, 0xd0, 0x03, 0x69, 0xbb, 0x42, + 0x44, 0xd1, 0x03, 0x7e, 0xd8, 0x07, 0x41, 0xd5, 0x00, 0x22, 0x20, 0x46, + 0x39, 0x46, 0x06, 0xf1, 0x10, 0x03, 0xcd, 0xf8, 0x00, 0xb0, 0x01, 0x92, + 0xcd, 0xf8, 0x08, 0x90, 0xcd, 0xf8, 0x0c, 0x80, 0x32, 0xf0, 0x60, 0xd8, + 0x20, 0x46, 0x13, 0x99, 0x4e, 0xf0, 0x4c, 0xda, 0x2e, 0xe0, 0xb8, 0xf1, + 0x03, 0x0f, 0x25, 0xdd, 0x55, 0xb3, 0x2a, 0x79, 0x42, 0xb3, 0xaa, 0x79, + 0x32, 0xb3, 0x06, 0xf1, 0x16, 0x00, 0x05, 0xf1, 0xbc, 0x01, 0x06, 0x22, + 0x04, 0x93, 0xfa, 0xf3, 0xfb, 0xf5, 0x04, 0x9b, 0xe0, 0xb9, 0x13, 0x9a, + 0x02, 0x93, 0x01, 0x92, 0xd4, 0xf8, 0x34, 0x07, 0x29, 0x46, 0x05, 0x9a, + 0x4b, 0x46, 0xcd, 0xf8, 0x00, 0x80, 0x08, 0xf0, 0x8f, 0xfe, 0x0f, 0xe0, + 0x20, 0x46, 0x13, 0x99, 0x05, 0x9a, 0x4b, 0x46, 0x8d, 0xe8, 0x00, 0x09, + 0x02, 0x96, 0x10, 0xf0, 0x21, 0xd8, 0x05, 0xe0, 0x23, 0x68, 0xd3, 0xf8, + 0x8c, 0x30, 0x1a, 0x6f, 0x01, 0x32, 0x1a, 0x67, 0x11, 0x98, 0x51, 0x46, + 0x00, 0x22, 0xff, 0xf3, 0xc7, 0xf4, 0x15, 0xb0, 0xbd, 0xe8, 0xf0, 0x8f, + 0x23, 0x6b, 0x18, 0x69, 0x0a, 0xf0, 0x90, 0xf8, 0xc0, 0xb2, 0x87, 0x42, + 0x4f, 0xe6, 0x00, 0x00, 0x2d, 0xe9, 0xf0, 0x4f, 0x06, 0x46, 0x92, 0xf8, + 0x2a, 0x30, 0x10, 0x68, 0x0d, 0x46, 0x9b, 0xb0, 0x14, 0x46, 0x91, 0x8b, + 0x05, 0x90, 0xd6, 0xf8, 0x04, 0xa0, 0x2f, 0x69, 0x13, 0xb1, 0x92, 0xf8, + 0x22, 0x80, 0x00, 0xe0, 0x98, 0x46, 0x94, 0xf8, 0x2c, 0x30, 0x9b, 0xb9, + 0x0a, 0x05, 0x11, 0xd5, 0x05, 0xeb, 0x48, 0x02, 0xb2, 0xf8, 0xac, 0x00, + 0xb4, 0xf8, 0x7e, 0x20, 0x90, 0x42, 0x09, 0xd1, 0x33, 0x68, 0xd3, 0xf8, + 0x8c, 0x30, 0xd3, 0xf8, 0xbc, 0x21, 0x01, 0x32, 0xc3, 0xf8, 0xbc, 0x21, + 0x00, 0xf0, 0x79, 0xbc, 0xba, 0x79, 0xc1, 0xf3, 0x80, 0x2b, 0x12, 0xbb, + 0xd7, 0xf8, 0xe4, 0x92, 0x99, 0xf8, 0x08, 0x20, 0x6a, 0xb1, 0x63, 0xb9, + 0xbb, 0xf1, 0x00, 0x0f, 0x09, 0xd1, 0x95, 0xf8, 0xd2, 0x20, 0x63, 0x6a, + 0x52, 0xfa, 0x03, 0xf3, 0xd8, 0x07, 0x02, 0xd4, 0x38, 0x46, 0x0f, 0xf0, + 0x6f, 0xdf, 0x33, 0x68, 0x5b, 0x6b, 0x63, 0xb1, 0x99, 0xf8, 0x18, 0x30, + 0x4b, 0xb1, 0x94, 0xf8, 0x2a, 0x30, 0x33, 0xb1, 0x94, 0xf8, 0x28, 0x30, + 0x1b, 0xb1, 0x38, 0x46, 0x00, 0x21, 0x21, 0xf0, 0xa5, 0xda, 0x23, 0x8c, + 0x5a, 0x07, 0x00, 0xf1, 0x4e, 0x84, 0xa3, 0x8b, 0x03, 0xf4, 0x80, 0x43, + 0x63, 0x63, 0x63, 0xb9, 0xbb, 0x6d, 0x40, 0xf2, 0x37, 0x19, 0x03, 0xea, + 0x09, 0x09, 0xb9, 0xf1, 0x00, 0x0f, 0x27, 0xd0, 0x97, 0xf8, 0x60, 0x90, + 0xb9, 0xf1, 0x00, 0x0f, 0x22, 0xd0, 0x4f, 0xf0, 0x00, 0x09, 0xc4, 0xf8, + 0x38, 0x90, 0x30, 0x46, 0x51, 0x46, 0x2a, 0x46, 0x23, 0x46, 0xcd, 0xf8, + 0x00, 0x80, 0x4f, 0xf0, 0x41, 0xdb, 0x70, 0xb9, 0x63, 0x6b, 0x23, 0xb1, + 0xd5, 0xf8, 0x6c, 0x31, 0x01, 0x33, 0xc5, 0xf8, 0x6c, 0x31, 0x33, 0x68, + 0x93, 0xf8, 0x95, 0x30, 0x00, 0x2b, 0x00, 0xf0, 0x22, 0x84, 0x4f, 0xf0, + 0x01, 0x09, 0x63, 0x6b, 0x23, 0xb1, 0xd5, 0xf8, 0x68, 0x31, 0x01, 0x33, + 0xc5, 0xf8, 0x68, 0x31, 0x94, 0xf8, 0x2c, 0x30, 0x43, 0xb9, 0x08, 0xf1, + 0x54, 0x03, 0xb4, 0xf8, 0x7e, 0x10, 0x05, 0xeb, 0x43, 0x03, 0x9a, 0x88, + 0x99, 0x80, 0x00, 0xe0, 0x00, 0x22, 0x33, 0x68, 0x02, 0x93, 0x93, 0xf8, + 0x95, 0x30, 0x1b, 0xb1, 0xb9, 0xf1, 0x00, 0x0f, 0x40, 0xf0, 0x03, 0x84, + 0x94, 0xf8, 0x2c, 0x30, 0x00, 0x2b, 0x40, 0xf0, 0x29, 0x81, 0xb4, 0xf8, + 0x7e, 0xc0, 0x08, 0xf1, 0x1a, 0x09, 0x1c, 0xf0, 0x0f, 0x03, 0x40, 0xf0, + 0x8a, 0x80, 0x05, 0xeb, 0x89, 0x09, 0xd9, 0xf8, 0x04, 0x10, 0x79, 0xb1, + 0x1a, 0x46, 0x50, 0x46, 0x03, 0x93, 0xff, 0xf3, 0x05, 0xf4, 0x03, 0x9b, + 0x05, 0xeb, 0x88, 0x02, 0xc2, 0xf8, 0x8c, 0x30, 0x08, 0xf1, 0x4c, 0x02, + 0xc9, 0xf8, 0x04, 0x30, 0x45, 0xf8, 0x22, 0x30, 0xbb, 0xf1, 0x00, 0x0f, + 0x00, 0xf0, 0x08, 0x81, 0xe3, 0x68, 0x08, 0xf1, 0x1a, 0x09, 0x04, 0x93, + 0x63, 0x69, 0x05, 0xeb, 0x89, 0x09, 0xc9, 0xf8, 0x04, 0x30, 0x18, 0x69, + 0x9a, 0x8a, 0x31, 0x68, 0xd3, 0xf8, 0x0c, 0xc0, 0x9b, 0x68, 0x00, 0xeb, + 0x02, 0x0e, 0xc9, 0x69, 0xce, 0xeb, 0x0c, 0x0e, 0xc0, 0x1a, 0x89, 0x68, + 0x86, 0x44, 0x72, 0x44, 0x8a, 0x42, 0x22, 0xda, 0x50, 0x46, 0xff, 0xf3, + 0x09, 0xf4, 0xc9, 0xf8, 0x04, 0x00, 0x00, 0x28, 0x00, 0xf0, 0xbb, 0x83, + 0x63, 0x69, 0x00, 0x69, 0x99, 0x68, 0x1a, 0x69, 0x9b, 0x8a, 0x52, 0x1a, + 0xd2, 0x18, 0xfa, 0xf3, 0xf7, 0xf4, 0x61, 0x69, 0x0a, 0x69, 0x8b, 0x68, + 0xd2, 0x1a, 0xd9, 0xf8, 0x04, 0x30, 0x18, 0x69, 0x80, 0x18, 0x18, 0x61, + 0x98, 0x8a, 0x82, 0x1a, 0x9a, 0x82, 0x88, 0x8a, 0x00, 0x22, 0x98, 0x82, + 0x50, 0x46, 0xff, 0xf3, 0xb9, 0xf3, 0x32, 0x68, 0x04, 0x99, 0xd2, 0x69, + 0x05, 0xeb, 0x88, 0x03, 0x92, 0x68, 0xa4, 0x48, 0x52, 0x1a, 0xd6, 0xf8, + 0x28, 0x18, 0x06, 0x3a, 0x52, 0x1a, 0xc3, 0xf8, 0x8c, 0x20, 0x61, 0x68, + 0x08, 0x22, 0xfa, 0xf3, 0xb7, 0xf4, 0x50, 0xb1, 0x9e, 0x48, 0x61, 0x68, + 0x06, 0x22, 0xfa, 0xf3, 0xb1, 0xf4, 0x40, 0xb9, 0x63, 0x68, 0xdb, 0x88, + 0xb3, 0xf5, 0x40, 0x7f, 0x03, 0xd1, 0x6b, 0x68, 0x43, 0xf0, 0x08, 0x03, + 0x02, 0xe0, 0x6b, 0x68, 0x23, 0xf0, 0x08, 0x03, 0x6b, 0x60, 0x96, 0x48, + 0x61, 0x68, 0x08, 0x22, 0xfa, 0xf3, 0x9e, 0xf4, 0xab, 0x68, 0x10, 0xb9, + 0x43, 0xf0, 0x20, 0x03, 0x01, 0xe0, 0x23, 0xf0, 0x20, 0x03, 0xab, 0x60, + 0x96, 0xe0, 0x05, 0xeb, 0x89, 0x00, 0x41, 0x68, 0x04, 0x90, 0x19, 0xb9, + 0x02, 0x99, 0xd1, 0xf8, 0x8c, 0x30, 0x1f, 0xe0, 0x82, 0xea, 0x0c, 0x0c, + 0x3c, 0xf0, 0x0f, 0x0c, 0x04, 0xd1, 0x02, 0xf0, 0x0f, 0x02, 0x01, 0x32, + 0x93, 0x42, 0x19, 0xd0, 0x00, 0x22, 0x50, 0x46, 0xff, 0xf3, 0x6e, 0xf3, + 0x08, 0xf1, 0x1a, 0x02, 0x00, 0x23, 0x05, 0xeb, 0x82, 0x02, 0x53, 0x60, + 0x08, 0xf1, 0x22, 0x02, 0x05, 0xeb, 0x82, 0x02, 0x08, 0xf1, 0x4c, 0x08, + 0x53, 0x60, 0x45, 0xf8, 0x28, 0x30, 0x33, 0x68, 0xd3, 0xf8, 0x8c, 0x30, + 0x1a, 0x6e, 0x01, 0x32, 0x1a, 0x66, 0x3e, 0xe3, 0x08, 0xf1, 0x22, 0x09, + 0x05, 0xeb, 0x89, 0x09, 0xa3, 0x68, 0xd9, 0xf8, 0x04, 0x20, 0x93, 0x42, + 0x11, 0xd9, 0x62, 0x46, 0x50, 0x46, 0xcd, 0xf8, 0x0c, 0xc0, 0xff, 0xf3, + 0x49, 0xf3, 0xdd, 0xf8, 0x0c, 0xc0, 0x04, 0x9a, 0x08, 0xf1, 0x4c, 0x08, + 0xc2, 0xf8, 0x04, 0xc0, 0xc9, 0xf8, 0x04, 0xc0, 0x45, 0xf8, 0x28, 0xc0, + 0xdd, 0xe7, 0x8d, 0xe8, 0x08, 0x04, 0x30, 0x46, 0x09, 0xf1, 0x04, 0x02, + 0x63, 0x68, 0xcd, 0xf8, 0x0c, 0xc0, 0x0b, 0xf0, 0x93, 0xdc, 0xdd, 0xf8, + 0x0c, 0xc0, 0x50, 0x46, 0x61, 0x69, 0x62, 0x46, 0xff, 0xf3, 0x2c, 0xf3, + 0xbb, 0xf1, 0x00, 0x0f, 0x3a, 0xd1, 0x04, 0x9b, 0x5a, 0x68, 0x62, 0x61, + 0xc3, 0xf8, 0x04, 0xb0, 0x08, 0xf1, 0x4c, 0x03, 0x45, 0xf8, 0x23, 0xb0, + 0x13, 0x69, 0x92, 0x8a, 0x03, 0xf1, 0x18, 0x01, 0xc9, 0xf8, 0x04, 0xb0, + 0x61, 0x60, 0xa2, 0xf1, 0x18, 0x01, 0xa1, 0x60, 0x94, 0xf8, 0x29, 0x10, + 0x23, 0x60, 0xe2, 0x60, 0x21, 0xb1, 0x03, 0xf1, 0x1e, 0x01, 0x1e, 0x3a, + 0x61, 0x60, 0xa2, 0x60, 0x94, 0xf8, 0x2a, 0x20, 0x3a, 0xb1, 0x62, 0x68, + 0x84, 0xf8, 0x22, 0x80, 0x02, 0x32, 0x62, 0x60, 0xa2, 0x68, 0x02, 0x3a, + 0xa2, 0x60, 0x1a, 0x78, 0x5b, 0x78, 0x42, 0xea, 0x03, 0x23, 0xa3, 0x83, + 0x63, 0x6b, 0x5b, 0xb1, 0xa3, 0x6b, 0x4b, 0xb1, 0x93, 0xf9, 0x0e, 0x20, + 0x61, 0x68, 0x8a, 0x18, 0x62, 0x60, 0x93, 0xf9, 0x0e, 0x30, 0xa2, 0x68, + 0xd3, 0x1a, 0xa3, 0x60, 0xa3, 0x6b, 0x73, 0xb1, 0x1b, 0x7a, 0x04, 0x2b, + 0x03, 0xd1, 0x30, 0x46, 0x21, 0x46, 0x4f, 0xf0, 0x8b, 0xda, 0xa3, 0x6b, + 0x1b, 0x7a, 0x0b, 0x2b, 0x03, 0xd1, 0x30, 0x46, 0x21, 0x46, 0x4f, 0xf0, + 0x9f, 0xdb, 0xbb, 0xf1, 0x00, 0x0f, 0x40, 0xf0, 0x01, 0x83, 0x33, 0x68, + 0x93, 0xf8, 0x95, 0x30, 0x00, 0x2b, 0x52, 0xd0, 0xbb, 0x68, 0x9b, 0x79, + 0xdb, 0x07, 0x00, 0xf1, 0xd5, 0x82, 0x4c, 0xe0, 0x00, 0xf4, 0xe0, 0x62, + 0x10, 0xf4, 0x00, 0x0f, 0x4f, 0xea, 0x12, 0x22, 0x31, 0x4b, 0x00, 0xf0, + 0x7f, 0x00, 0xa2, 0xf1, 0x04, 0x02, 0x08, 0xd0, 0x01, 0x2a, 0x4f, 0xf0, + 0x14, 0x02, 0x02, 0xfb, 0x00, 0x30, 0x94, 0xbf, 0xc0, 0x68, 0x80, 0x68, + 0x09, 0xe0, 0x01, 0x2a, 0x4f, 0xf0, 0x14, 0x02, 0x03, 0xd8, 0x02, 0xfb, + 0x00, 0x30, 0x40, 0x68, 0x01, 0xe0, 0x50, 0x43, 0x18, 0x58, 0x4f, 0xf4, + 0xfa, 0x73, 0x04, 0xe0, 0x00, 0xf0, 0x7f, 0x00, 0x4f, 0xf4, 0xfa, 0x73, + 0x58, 0x43, 0xb0, 0xfb, 0xf3, 0xf0, 0xcd, 0xf8, 0x21, 0x00, 0x4f, 0xf0, + 0x01, 0x0b, 0x0d, 0xf1, 0x27, 0x00, 0x21, 0x68, 0x18, 0x22, 0x8d, 0xf8, + 0x26, 0xb0, 0xfa, 0xf3, 0xc5, 0xf3, 0x94, 0xf8, 0x2f, 0x30, 0xa3, 0xb1, + 0xbd, 0xf8, 0x27, 0x30, 0x0d, 0xf1, 0x31, 0x01, 0x43, 0xf4, 0x00, 0x73, + 0x06, 0x22, 0x0d, 0xf1, 0x37, 0x00, 0xad, 0xf8, 0x27, 0x30, 0xfa, 0xf3, + 0xb5, 0xf3, 0xd6, 0xf8, 0x6c, 0x12, 0x0d, 0xf1, 0x31, 0x00, 0xbc, 0x31, + 0x06, 0x22, 0xfa, 0xf3, 0xad, 0xf3, 0x33, 0x68, 0x93, 0xf8, 0x95, 0x20, + 0x0a, 0xb9, 0x13, 0x46, 0x01, 0xe0, 0x2d, 0x22, 0x06, 0xab, 0x61, 0x69, + 0x49, 0x6a, 0x48, 0x06, 0x12, 0xd5, 0x09, 0x06, 0x40, 0xf1, 0x59, 0x82, + 0x00, 0x92, 0xd6, 0xf8, 0x3c, 0x01, 0x29, 0x46, 0x22, 0x46, 0x29, 0xf0, + 0x03, 0xda, 0x91, 0xe2, 0x40, 0x1e, 0x86, 0x00, 0xee, 0xb6, 0x01, 0x00, + 0x48, 0x1e, 0x86, 0x00, 0x84, 0x18, 0x86, 0x00, 0x21, 0x68, 0x06, 0x22, + 0x04, 0x31, 0x12, 0xa8, 0xfa, 0xf3, 0x88, 0xf3, 0x21, 0x68, 0x06, 0x22, + 0x0a, 0x31, 0x14, 0xa8, 0xfa, 0xf3, 0x82, 0xf3, 0x21, 0x68, 0x16, 0xa8, + 0x10, 0x31, 0x06, 0x22, 0xfa, 0xf3, 0x7c, 0xf3, 0x94, 0xf8, 0x29, 0x30, + 0x2b, 0xb1, 0x21, 0x68, 0x18, 0xa8, 0x18, 0x31, 0x06, 0x22, 0xfa, 0xf3, + 0x73, 0xf3, 0xa3, 0x8b, 0x13, 0xf4, 0x80, 0x7f, 0x03, 0xf4, 0x00, 0x73, + 0x04, 0xd1, 0x12, 0xaa, 0x62, 0x67, 0x23, 0xb1, 0x16, 0xab, 0x05, 0xe0, + 0x16, 0xaa, 0x62, 0x67, 0x0b, 0xb9, 0x14, 0xab, 0x00, 0xe0, 0x18, 0xab, + 0x23, 0x67, 0xd4, 0xf8, 0x04, 0x90, 0xbb, 0xf1, 0x00, 0x0f, 0x00, 0xf0, + 0x00, 0x81, 0x23, 0x68, 0xe3, 0x66, 0x99, 0xf8, 0x00, 0x30, 0xaa, 0x2b, + 0x30, 0xd1, 0x99, 0xf8, 0x01, 0x30, 0xaa, 0x2b, 0x2c, 0xd1, 0x99, 0xf8, + 0x02, 0x30, 0x03, 0x2b, 0x28, 0xd1, 0x99, 0xf8, 0x03, 0x30, 0x2b, 0xbb, + 0x99, 0xf8, 0x04, 0x30, 0x13, 0xbb, 0x99, 0xf8, 0x05, 0x30, 0x53, 0xb9, + 0xb9, 0xf8, 0x06, 0x30, 0x30, 0x46, 0x19, 0x0a, 0x41, 0xea, 0x03, 0x21, + 0x89, 0xb2, 0x0a, 0xf0, 0xe3, 0xdf, 0x60, 0xb1, 0x14, 0xe0, 0xf8, 0x2b, + 0x12, 0xd1, 0xb9, 0xf8, 0x06, 0x30, 0x30, 0x46, 0x19, 0x0a, 0x41, 0xea, + 0x03, 0x21, 0x89, 0xb2, 0x0a, 0xf0, 0xd6, 0xdf, 0x40, 0xb1, 0xb9, 0xf8, + 0x06, 0x30, 0x4f, 0xea, 0x13, 0x29, 0x49, 0xea, 0x03, 0x29, 0x1f, 0xfa, + 0x89, 0xf9, 0x01, 0xe0, 0xb4, 0xf8, 0x08, 0x90, 0x33, 0x68, 0x93, 0xf8, + 0x95, 0x30, 0xcb, 0xb1, 0xd7, 0xf8, 0xe0, 0x30, 0x4b, 0xb9, 0x63, 0x6b, + 0xa3, 0xb9, 0xba, 0x6d, 0x40, 0xf2, 0x37, 0x13, 0x13, 0x40, 0x7b, 0xb1, + 0x97, 0xf8, 0x60, 0x30, 0x63, 0xb1, 0x30, 0x46, 0x29, 0x46, 0x3a, 0x46, + 0x23, 0x46, 0xcd, 0xf8, 0x00, 0x90, 0xcd, 0xf8, 0x04, 0x80, 0x0c, 0xf0, + 0x0f, 0xde, 0x00, 0x28, 0x40, 0xf0, 0xbf, 0x81, 0xa3, 0x6b, 0x6b, 0xb1, + 0x1b, 0x7a, 0x01, 0x2b, 0x0a, 0xd0, 0x03, 0x2b, 0x08, 0xd0, 0x30, 0x46, + 0x51, 0x46, 0x2a, 0x46, 0x23, 0x46, 0x08, 0xf0, 0x08, 0xfe, 0x00, 0x28, + 0x00, 0xf0, 0xaf, 0x81, 0x63, 0x6f, 0x1b, 0x78, 0xd8, 0x07, 0x07, 0xd5, + 0x33, 0x68, 0xd3, 0xf8, 0x8c, 0x30, 0xd3, 0xf8, 0xd0, 0x21, 0x01, 0x32, + 0xc3, 0xf8, 0xd0, 0x21, 0xa3, 0x6b, 0x33, 0xb1, 0x1b, 0x7a, 0x02, 0x2b, + 0x03, 0xd1, 0x30, 0x46, 0x21, 0x46, 0x4f, 0xf0, 0x59, 0xd9, 0x63, 0x6b, + 0x1b, 0xb9, 0x94, 0xf8, 0x2a, 0x20, 0x1a, 0xb9, 0x21, 0xe0, 0xa3, 0x6b, + 0x93, 0xf9, 0x0e, 0x30, 0x94, 0xf8, 0x2a, 0x20, 0x3a, 0xb1, 0x21, 0x68, + 0x02, 0x33, 0x0a, 0x88, 0x22, 0xf0, 0x80, 0x02, 0x12, 0x04, 0x12, 0x0c, + 0x0a, 0x80, 0x61, 0x68, 0x05, 0xe0, 0xca, 0x1a, 0x12, 0xf8, 0x01, 0x2c, + 0x01, 0xf8, 0x01, 0x2c, 0x71, 0x46, 0x62, 0x69, 0x01, 0xf1, 0xff, 0x3e, + 0x10, 0x69, 0x70, 0x45, 0xf3, 0xd9, 0xc1, 0x18, 0x90, 0x8a, 0x11, 0x61, + 0xc3, 0x1a, 0x93, 0x82, 0x21, 0x60, 0x94, 0xf8, 0x2f, 0x30, 0x93, 0xb1, + 0x20, 0x68, 0x06, 0x22, 0x03, 0x88, 0x80, 0x46, 0x43, 0xf4, 0x00, 0x73, + 0x28, 0xf8, 0x0a, 0x3b, 0x41, 0x46, 0x10, 0x30, 0xfa, 0xf3, 0xa8, 0xf2, + 0xd6, 0xf8, 0x6c, 0x12, 0x40, 0x46, 0xbc, 0x31, 0x06, 0x22, 0xfa, 0xf3, + 0xa1, 0xf2, 0x97, 0xf9, 0x10, 0x30, 0x8b, 0xb1, 0x48, 0xf6, 0x8e, 0x03, + 0x99, 0x45, 0x0d, 0xd1, 0x21, 0x68, 0x62, 0x6b, 0x12, 0x31, 0x00, 0x32, + 0x18, 0xbf, 0x01, 0x22, 0xf8, 0x68, 0x07, 0xf1, 0x18, 0x03, 0x51, 0xf0, + 0xa5, 0xda, 0x00, 0x28, 0x40, 0xf0, 0x47, 0x81, 0x97, 0xf8, 0x30, 0x35, + 0x83, 0xb1, 0x48, 0xf6, 0x8e, 0x03, 0x99, 0x45, 0x0c, 0xd1, 0x21, 0x68, + 0x62, 0x6b, 0x12, 0x31, 0x00, 0x32, 0x18, 0xbf, 0x01, 0x22, 0x78, 0x69, + 0x2b, 0x46, 0x07, 0xf0, 0x88, 0xf8, 0x00, 0x28, 0x40, 0xf0, 0x33, 0x81, + 0x63, 0x69, 0x9a, 0x8a, 0x18, 0x69, 0xdb, 0x68, 0x80, 0x18, 0x1b, 0x1a, + 0x2c, 0x2b, 0x40, 0xf2, 0x2a, 0x81, 0x00, 0x23, 0x06, 0xa9, 0x2d, 0x22, + 0x8d, 0xf8, 0x26, 0x30, 0xfa, 0xf3, 0x68, 0xf2, 0x63, 0x69, 0x94, 0xf8, + 0x22, 0x10, 0xda, 0x8a, 0x01, 0xf0, 0x07, 0x01, 0x22, 0xf0, 0x07, 0x02, + 0x0a, 0x43, 0xda, 0x82, 0x94, 0xf8, 0x29, 0x20, 0x0e, 0xe1, 0xd4, 0xf8, + 0x14, 0xb0, 0x99, 0xf8, 0x00, 0x30, 0xdb, 0xf8, 0x10, 0x20, 0xaa, 0x2b, + 0x04, 0x92, 0xc2, 0xeb, 0x09, 0x08, 0x36, 0xd1, 0x99, 0xf8, 0x01, 0x30, + 0xaa, 0x2b, 0x32, 0xd1, 0x99, 0xf8, 0x02, 0x30, 0x03, 0x2b, 0x2e, 0xd1, + 0x99, 0xf8, 0x03, 0x30, 0x5b, 0xbb, 0x99, 0xf8, 0x04, 0x30, 0x43, 0xbb, + 0x99, 0xf8, 0x05, 0x30, 0x53, 0xb9, 0xb9, 0xf8, 0x06, 0x30, 0x30, 0x46, + 0x19, 0x0a, 0x41, 0xea, 0x03, 0x21, 0x89, 0xb2, 0x0a, 0xf0, 0xde, 0xde, + 0x60, 0xb1, 0x1a, 0xe0, 0xf8, 0x2b, 0x18, 0xd1, 0xb9, 0xf8, 0x06, 0x30, + 0x30, 0x46, 0x19, 0x0a, 0x41, 0xea, 0x03, 0x21, 0x89, 0xb2, 0x0a, 0xf0, + 0xd1, 0xde, 0x70, 0xb1, 0x04, 0x9a, 0xa8, 0xf1, 0x06, 0x08, 0x02, 0xeb, + 0x08, 0x03, 0xbb, 0xf8, 0x14, 0x20, 0xcb, 0xf8, 0x10, 0x30, 0xc8, 0xeb, + 0x02, 0x08, 0xab, 0xf8, 0x14, 0x80, 0xe3, 0x66, 0x26, 0xe0, 0xbb, 0x6d, + 0x99, 0x06, 0x12, 0xd5, 0x48, 0x46, 0x8a, 0x49, 0x08, 0x22, 0xfa, 0xf3, + 0xf5, 0xf1, 0x60, 0xb9, 0x63, 0x69, 0x08, 0xf1, 0x04, 0x08, 0x1a, 0x69, + 0x99, 0x8a, 0x42, 0x44, 0xc8, 0xeb, 0x01, 0x08, 0x1a, 0x61, 0xa3, 0xf8, + 0x14, 0x80, 0xe2, 0x66, 0x10, 0xe0, 0x63, 0x69, 0xa8, 0xf1, 0x0e, 0x08, + 0x99, 0x8a, 0x1a, 0x69, 0x42, 0x44, 0xc8, 0xeb, 0x01, 0x08, 0x1a, 0x61, + 0xa3, 0xf8, 0x14, 0x80, 0x23, 0x89, 0xe2, 0x66, 0x19, 0x0a, 0x41, 0xea, + 0x03, 0x23, 0x93, 0x81, 0xa3, 0x6b, 0x6b, 0xb1, 0x1b, 0x7a, 0x01, 0x2b, + 0x0a, 0xd0, 0x03, 0x2b, 0x08, 0xd0, 0x30, 0x46, 0x51, 0x46, 0x2a, 0x46, + 0x23, 0x46, 0x08, 0xf0, 0xf6, 0xfc, 0x00, 0x28, 0x00, 0xf0, 0x9d, 0x80, + 0xa3, 0x6b, 0x33, 0xb1, 0x1b, 0x7a, 0x02, 0x2b, 0x03, 0xd1, 0x30, 0x46, + 0x21, 0x46, 0x4f, 0xf0, 0x53, 0xd8, 0x06, 0x22, 0x61, 0x6f, 0xe0, 0x6e, + 0xfa, 0xf3, 0xd4, 0xf1, 0xe0, 0x6e, 0x06, 0x22, 0x06, 0x30, 0x21, 0x6f, + 0xfa, 0xf3, 0xce, 0xf1, 0x63, 0x69, 0x94, 0xf8, 0x22, 0x10, 0xda, 0x8a, + 0x01, 0xf0, 0x07, 0x01, 0x22, 0xf0, 0x07, 0x02, 0x0a, 0x43, 0xda, 0x82, + 0x62, 0x6f, 0x12, 0x78, 0xd2, 0x07, 0x07, 0xd5, 0x32, 0x68, 0xd2, 0xf8, + 0x8c, 0x20, 0xd2, 0xf8, 0xd0, 0x11, 0x01, 0x31, 0xc2, 0xf8, 0xd0, 0x11, + 0x97, 0xf8, 0x61, 0x20, 0x72, 0xb1, 0x2a, 0x7e, 0xd0, 0x06, 0x0b, 0xd4, + 0xe2, 0x6e, 0x92, 0x89, 0x11, 0x0a, 0x41, 0xea, 0x02, 0x22, 0x57, 0x49, + 0x12, 0xb2, 0x8a, 0x42, 0x02, 0xd0, 0x5a, 0x6a, 0xd1, 0x06, 0x60, 0xd5, + 0x97, 0xf8, 0x65, 0x20, 0x9a, 0xb1, 0x2a, 0x7e, 0xd2, 0x06, 0x10, 0xd4, + 0xe2, 0x6e, 0x92, 0x89, 0x11, 0x0a, 0x41, 0xea, 0x02, 0x22, 0x4f, 0x49, + 0x12, 0xb2, 0x8a, 0x42, 0x07, 0xd0, 0x26, 0x39, 0x8a, 0x42, 0x04, 0xd0, + 0x5b, 0x6a, 0x00, 0x2b, 0x01, 0xdb, 0xd8, 0x06, 0x49, 0xd5, 0xbb, 0x79, + 0x23, 0xb9, 0xd7, 0xf8, 0xe4, 0x32, 0x01, 0x22, 0x83, 0xf8, 0x2a, 0x20, + 0x96, 0xf8, 0x32, 0x38, 0x01, 0x33, 0x86, 0xf8, 0x32, 0x38, 0x97, 0xf9, + 0x10, 0x30, 0xdb, 0xb1, 0xe1, 0x6e, 0x8b, 0x89, 0x1a, 0x0a, 0x42, 0xea, + 0x03, 0x23, 0x3e, 0x4a, 0x1b, 0xb2, 0x93, 0x42, 0x12, 0xd1, 0x0b, 0x8a, + 0x1a, 0x0a, 0x42, 0xea, 0x03, 0x23, 0xa2, 0x68, 0x9b, 0xb2, 0x0c, 0x3a, + 0x93, 0x42, 0x28, 0xd8, 0x62, 0x6b, 0xf8, 0x68, 0x00, 0x32, 0x18, 0xbf, + 0x01, 0x22, 0x07, 0xf1, 0x18, 0x03, 0x51, 0xf0, 0x7b, 0xd9, 0xf0, 0xb9, + 0x97, 0xf8, 0x30, 0x35, 0x8b, 0xb1, 0xe1, 0x6e, 0x8b, 0x89, 0x1a, 0x0a, + 0x42, 0xea, 0x03, 0x23, 0x2e, 0x4a, 0x1b, 0xb2, 0x93, 0x42, 0x08, 0xd1, + 0x62, 0x6b, 0x78, 0x69, 0x00, 0x32, 0x18, 0xbf, 0x01, 0x22, 0x2b, 0x46, + 0x06, 0xf0, 0x5d, 0xff, 0x48, 0xb9, 0x94, 0xf8, 0x29, 0x20, 0x63, 0x69, + 0x00, 0x93, 0x30, 0x46, 0x29, 0x46, 0x63, 0x6f, 0x1e, 0xf0, 0x4e, 0xdd, + 0x40, 0xe0, 0x33, 0x68, 0x5a, 0x6b, 0xaa, 0xb1, 0x61, 0x69, 0x23, 0x48, + 0xca, 0x8a, 0xd3, 0xf8, 0x90, 0x30, 0x02, 0xf0, 0x07, 0x02, 0x82, 0x5c, + 0x20, 0x48, 0x85, 0x5c, 0x50, 0x46, 0x0c, 0x35, 0x03, 0xeb, 0xc5, 0x05, + 0x6b, 0x68, 0xae, 0x68, 0x01, 0x33, 0x6b, 0x60, 0xfb, 0xf3, 0x7c, 0xf2, + 0x80, 0x19, 0xa8, 0x60, 0x50, 0x46, 0x61, 0x69, 0x00, 0x22, 0xfe, 0xf3, + 0xfb, 0xf7, 0x21, 0xe0, 0x33, 0x6b, 0xd4, 0xf8, 0x80, 0x10, 0x1b, 0x89, + 0x30, 0x46, 0x06, 0x93, 0xa3, 0x69, 0xdb, 0x8a, 0xdb, 0x08, 0x8d, 0xf8, + 0x1c, 0x30, 0x05, 0xeb, 0x48, 0x03, 0x93, 0xf8, 0xac, 0x30, 0x03, 0xf0, + 0x0f, 0x03, 0x01, 0x33, 0x8d, 0xf8, 0x25, 0x30, 0x1b, 0xf0, 0x20, 0xde, + 0x05, 0x9b, 0xcd, 0xf8, 0x1d, 0x00, 0x99, 0x1f, 0xd4, 0xf8, 0x80, 0x00, + 0x13, 0xf0, 0x5c, 0xfb, 0x01, 0x01, 0x3f, 0xf5, 0x0b, 0xad, 0x2b, 0xe5, + 0x1b, 0xb0, 0xbd, 0xe8, 0xf0, 0x8f, 0x00, 0xbf, 0xf7, 0xe3, 0x85, 0x00, + 0x8e, 0x88, 0xff, 0xff, 0xb4, 0x88, 0xff, 0xff, 0xc4, 0xd2, 0x85, 0x00, + 0x98, 0xe0, 0x85, 0x00, 0x2d, 0xe9, 0xf0, 0x4f, 0xa7, 0xb0, 0x9a, 0x46, + 0x09, 0x93, 0x9b, 0x8a, 0x00, 0x26, 0x21, 0x2b, 0x04, 0x46, 0x8b, 0x46, + 0x17, 0x46, 0x25, 0x96, 0x12, 0x96, 0x8d, 0xf8, 0x32, 0x60, 0x0d, 0x96, + 0x8d, 0xf8, 0x3b, 0x60, 0x8d, 0xf8, 0x38, 0x60, 0x8d, 0xf8, 0x70, 0x60, + 0x8d, 0xf8, 0x3f, 0x60, 0x0a, 0x92, 0x24, 0x92, 0x1b, 0x96, 0x01, 0xd8, + 0x03, 0x68, 0x46, 0xe0, 0xda, 0xf8, 0x10, 0x50, 0x10, 0x46, 0x29, 0x46, + 0x13, 0xf0, 0x26, 0xfb, 0xab, 0x1d, 0x02, 0x90, 0x04, 0x93, 0xea, 0x88, + 0x93, 0xb2, 0x03, 0xf4, 0x40, 0x71, 0xad, 0xf8, 0x2c, 0x20, 0xa1, 0xf5, + 0x40, 0x7c, 0x10, 0x46, 0x03, 0xf0, 0x0c, 0x0e, 0x03, 0xf0, 0xf0, 0x02, + 0x4f, 0xea, 0x9e, 0x0e, 0x12, 0x09, 0xdc, 0xf1, 0x00, 0x01, 0x41, 0xeb, + 0x0c, 0x01, 0xbe, 0xf1, 0x02, 0x0f, 0x08, 0xbf, 0xd6, 0x08, 0xf6, 0xb2, + 0xad, 0xf8, 0x2e, 0xe0, 0xad, 0xf8, 0x30, 0x20, 0x8d, 0xf8, 0x39, 0x10, + 0x8d, 0xf8, 0x3a, 0x60, 0xb7, 0xf8, 0x04, 0xe0, 0x0e, 0xf0, 0x03, 0x0e, + 0xbe, 0xf1, 0x02, 0x0f, 0x04, 0xd1, 0x00, 0xb2, 0x00, 0x28, 0x01, 0xda, + 0xd2, 0x08, 0x00, 0xe0, 0x00, 0x22, 0xd0, 0xb2, 0x8d, 0xf8, 0x3b, 0x00, + 0x00, 0x29, 0x14, 0xbf, 0x28, 0x22, 0x22, 0x22, 0x06, 0xb1, 0x02, 0x32, + 0x00, 0xb1, 0x04, 0x32, 0x09, 0x98, 0x80, 0x8a, 0x90, 0x42, 0x06, 0xd2, + 0x23, 0x68, 0xd3, 0xf8, 0x8c, 0x30, 0x5a, 0x6e, 0x01, 0x32, 0x5a, 0x66, + 0x77, 0xe3, 0xaa, 0x7a, 0x02, 0xf0, 0x01, 0x02, 0x8d, 0xf8, 0x3c, 0x20, + 0x21, 0xb1, 0x4f, 0xf0, 0x00, 0x08, 0x8d, 0xf8, 0x40, 0x80, 0x13, 0xe0, + 0xd8, 0x05, 0x02, 0xd5, 0x05, 0xf1, 0x0a, 0x01, 0x05, 0xe0, 0x99, 0x05, + 0x4c, 0xbf, 0x05, 0xf1, 0x10, 0x01, 0x05, 0xf1, 0x16, 0x01, 0x20, 0x46, + 0x37, 0xf0, 0x20, 0xda, 0x03, 0x1c, 0x18, 0xbf, 0x01, 0x23, 0x80, 0x46, + 0x8d, 0xf8, 0x40, 0x30, 0x9d, 0xf8, 0x3c, 0x30, 0x43, 0xb9, 0x04, 0x99, + 0x20, 0x46, 0x04, 0x31, 0x37, 0xf0, 0x36, 0xda, 0x06, 0x1c, 0x18, 0xbf, + 0x01, 0x26, 0x00, 0xe0, 0x00, 0x26, 0x94, 0xf8, 0xc8, 0x31, 0x23, 0xb9, + 0x23, 0x68, 0x93, 0xf8, 0x2c, 0x30, 0x33, 0xb9, 0x2d, 0xe0, 0x20, 0x46, + 0x39, 0x46, 0x09, 0x9a, 0x00, 0x23, 0x0d, 0xf0, 0x95, 0xdf, 0x23, 0x68, + 0x93, 0xf8, 0x3f, 0x20, 0x0a, 0xb9, 0x8d, 0xf8, 0x40, 0x20, 0x46, 0xbb, + 0xbd, 0xf8, 0x2c, 0x20, 0xd2, 0x05, 0x05, 0xd4, 0x9d, 0xf8, 0x3c, 0x20, + 0x12, 0xb1, 0x9d, 0xf8, 0x40, 0x20, 0x42, 0xbb, 0x9d, 0xf8, 0x39, 0x20, + 0x12, 0xb1, 0x9d, 0xf8, 0x3c, 0x20, 0x0a, 0xbb, 0x93, 0xf8, 0x2c, 0x30, + 0x00, 0x2b, 0x00, 0xf0, 0x22, 0x83, 0x9d, 0xf8, 0x40, 0x30, 0x00, 0x2b, + 0x00, 0xf0, 0x1d, 0x83, 0x98, 0xf8, 0x06, 0x30, 0x00, 0x2b, 0x40, 0xf0, + 0x18, 0x83, 0x01, 0x26, 0x11, 0xe0, 0x9d, 0xf8, 0x3c, 0x30, 0x1b, 0xb9, + 0x00, 0x2e, 0x00, 0xf0, 0x10, 0x83, 0x00, 0xe0, 0x4e, 0xb1, 0x9d, 0xf8, + 0x39, 0x60, 0x2e, 0xb9, 0x9d, 0xf8, 0x40, 0x30, 0x00, 0x2b, 0x00, 0xf0, + 0x06, 0x83, 0x00, 0xe0, 0x00, 0x26, 0x23, 0x68, 0x93, 0xf8, 0x95, 0x30, + 0x5b, 0xb3, 0xb8, 0xf1, 0x00, 0x0f, 0x28, 0xd0, 0x9d, 0xf8, 0x3c, 0x30, + 0xd8, 0xf8, 0xdc, 0x90, 0x5b, 0xb9, 0x19, 0xf0, 0x01, 0x0f, 0x00, 0xf0, + 0xf4, 0x82, 0x04, 0x98, 0x08, 0xf1, 0xc2, 0x01, 0x04, 0x30, 0x06, 0x22, + 0xf9, 0xf3, 0xe4, 0xf7, 0x14, 0xe0, 0x04, 0x98, 0x04, 0x30, 0xfa, 0xf3, + 0xdb, 0xf4, 0x20, 0xb1, 0x19, 0xf0, 0x08, 0x0f, 0x00, 0xf0, 0xe3, 0x82, + 0x0d, 0xe0, 0x19, 0xf0, 0x04, 0x0f, 0x0a, 0xd1, 0x19, 0xf0, 0x02, 0x0f, + 0x00, 0xf0, 0xdb, 0x82, 0x20, 0x46, 0x04, 0x99, 0x0d, 0xf0, 0x9a, 0xde, + 0x00, 0x28, 0x40, 0xf0, 0xd4, 0x82, 0x09, 0x99, 0x0b, 0x69, 0x06, 0x33, + 0x0b, 0x61, 0x8b, 0x8a, 0x06, 0x3b, 0x8b, 0x82, 0x04, 0x9b, 0x03, 0xf1, + 0x18, 0x02, 0x05, 0x92, 0x9d, 0xf8, 0x39, 0x20, 0x0a, 0xb1, 0x1e, 0x33, + 0x05, 0x93, 0x00, 0x23, 0x8d, 0xf8, 0x3d, 0x30, 0x9d, 0xf8, 0x3a, 0x30, + 0x83, 0xb3, 0x05, 0x9a, 0x13, 0x78, 0x50, 0x78, 0x43, 0xea, 0x00, 0x20, + 0xdb, 0x09, 0x8d, 0xf8, 0x3d, 0x30, 0x83, 0xb1, 0xb8, 0xf1, 0x00, 0x0f, + 0x04, 0xd0, 0x98, 0xf8, 0x19, 0x35, 0x00, 0x2b, 0x40, 0xf0, 0xad, 0x82, + 0x94, 0xf8, 0xcf, 0x31, 0x00, 0x2b, 0x00, 0xf0, 0xa8, 0x82, 0x4b, 0x6a, + 0x43, 0xf0, 0x40, 0x03, 0x4b, 0x62, 0xdf, 0xf8, 0xa8, 0xe5, 0x00, 0xf0, + 0x07, 0x03, 0x1e, 0xf8, 0x03, 0xe0, 0xdf, 0xf8, 0xa0, 0xc5, 0x00, 0xf0, + 0x10, 0x00, 0x1c, 0xf8, 0x0e, 0xe0, 0x00, 0x11, 0x02, 0x32, 0x8d, 0xf8, + 0x32, 0x30, 0xcd, 0xf8, 0x34, 0xe0, 0x8d, 0xf8, 0x38, 0x00, 0x05, 0x92, + 0x8d, 0xf8, 0x70, 0x30, 0x9d, 0xf8, 0x3d, 0x30, 0x1b, 0xb9, 0x8b, 0x8a, + 0x04, 0x3b, 0x8b, 0x82, 0x05, 0xe0, 0x58, 0x46, 0xfa, 0xf3, 0x5c, 0xf5, + 0x83, 0x8a, 0x04, 0x3b, 0x83, 0x82, 0x09, 0x9a, 0x05, 0x99, 0x93, 0x8a, + 0x12, 0x69, 0x07, 0x93, 0xc2, 0xeb, 0x01, 0x08, 0xc8, 0xeb, 0x03, 0x03, + 0x51, 0x46, 0x58, 0x46, 0x06, 0x93, 0xfb, 0xf3, 0xd3, 0xf0, 0x04, 0x99, + 0xc8, 0xeb, 0x00, 0x00, 0x08, 0x90, 0x8b, 0x7d, 0xca, 0x7d, 0x43, 0xea, + 0x02, 0x23, 0xad, 0xf8, 0x8e, 0x30, 0x3e, 0xbb, 0x07, 0x9b, 0x20, 0x46, + 0x00, 0x93, 0x3a, 0x46, 0x25, 0xab, 0x10, 0xf0, 0x2f, 0xda, 0x00, 0x28, + 0x40, 0xf0, 0x5d, 0x82, 0x7d, 0xe2, 0xfa, 0x8a, 0x04, 0x99, 0x02, 0xf4, + 0xff, 0x62, 0x0a, 0x31, 0x70, 0x2a, 0x20, 0x46, 0x94, 0xbf, 0x00, 0x22, + 0x01, 0x22, 0x4d, 0xf0, 0x99, 0xdc, 0x25, 0x90, 0x30, 0xb9, 0x23, 0x68, + 0xd3, 0xf8, 0x8c, 0x30, 0xda, 0x6e, 0x01, 0x32, 0xda, 0x66, 0x46, 0xe2, + 0x03, 0x69, 0xd3, 0xf8, 0xcc, 0x30, 0xc3, 0xf3, 0xc0, 0x13, 0x8d, 0xf8, + 0x3f, 0x30, 0x18, 0xe0, 0xbd, 0xf8, 0x2c, 0x30, 0x13, 0xf4, 0x40, 0x7f, + 0x13, 0xd0, 0x9d, 0xf8, 0x39, 0x30, 0x83, 0xb9, 0x25, 0x9b, 0x73, 0xb9, + 0xfa, 0x8a, 0x0a, 0x31, 0x02, 0xf4, 0xff, 0x62, 0x70, 0x2a, 0x20, 0x46, + 0x94, 0xbf, 0x00, 0x22, 0x01, 0x22, 0x4d, 0xf0, 0x73, 0xdc, 0x25, 0x90, + 0x00, 0x28, 0x00, 0xf0, 0x26, 0x82, 0x25, 0x9b, 0xd3, 0xf8, 0x10, 0x80, + 0xd8, 0xf8, 0xdc, 0x32, 0x03, 0x93, 0x1e, 0xbb, 0x9d, 0xf8, 0x39, 0x30, + 0x03, 0xbb, 0x9d, 0xf8, 0x3c, 0x30, 0x1b, 0xb1, 0xbd, 0xf8, 0x2c, 0x30, + 0xd8, 0x05, 0x12, 0xd4, 0x98, 0xf8, 0x06, 0x20, 0xbd, 0xf8, 0x2c, 0x30, + 0x12, 0xb1, 0xd9, 0x05, 0x0b, 0xd5, 0x11, 0xe0, 0x98, 0xf8, 0x12, 0x20, + 0x03, 0xf4, 0x40, 0x73, 0x00, 0x2a, 0x14, 0xbf, 0x4f, 0xf4, 0x00, 0x72, + 0x00, 0x22, 0x93, 0x42, 0x06, 0xd0, 0x23, 0x68, 0xd3, 0xf8, 0x8c, 0x30, + 0x9a, 0x6d, 0x01, 0x32, 0x9a, 0x65, 0xfa, 0xe1, 0x94, 0xf8, 0x2d, 0x37, + 0x2b, 0xb9, 0x9d, 0xf8, 0x3f, 0x30, 0x13, 0xb9, 0x98, 0xf8, 0x06, 0x20, + 0x42, 0xb9, 0x20, 0x46, 0x39, 0x46, 0x1b, 0xf0, 0x11, 0xdc, 0x81, 0x46, + 0x18, 0xb1, 0x8a, 0xf8, 0x2d, 0x00, 0x00, 0xe0, 0x99, 0x46, 0x98, 0xf8, + 0x06, 0x30, 0x0b, 0xbb, 0x9d, 0xf8, 0x3f, 0x30, 0xf3, 0xb9, 0x49, 0x46, + 0x40, 0x46, 0x1b, 0xf0, 0x43, 0xdc, 0x40, 0x46, 0x1b, 0xf0, 0x98, 0xdb, + 0x39, 0x46, 0x20, 0x46, 0x0f, 0xf0, 0x8e, 0xdc, 0x01, 0x46, 0x40, 0x46, + 0x0e, 0xf0, 0xf0, 0xdb, 0x9d, 0xf8, 0x40, 0x30, 0x63, 0xb1, 0x98, 0xf8, + 0x12, 0x30, 0x4b, 0xb1, 0x98, 0xf8, 0x07, 0x30, 0x33, 0xb1, 0x03, 0x98, + 0x43, 0x79, 0x1b, 0xb9, 0x40, 0x46, 0x01, 0x21, 0x33, 0xf0, 0xe4, 0xd8, + 0x94, 0xf8, 0x2d, 0x37, 0x33, 0xb9, 0x9d, 0xf8, 0x3f, 0x30, 0x1b, 0xb9, + 0x25, 0x9b, 0xd3, 0xf8, 0xfc, 0x30, 0x83, 0xb1, 0xb9, 0xf1, 0x00, 0x0f, + 0x0d, 0xd0, 0x25, 0x9b, 0xd3, 0xf8, 0xf8, 0x10, 0xd3, 0xf8, 0xf4, 0x20, + 0x42, 0xf8, 0x21, 0x90, 0xd3, 0xf8, 0xf8, 0x20, 0x01, 0x32, 0x02, 0xf0, + 0x07, 0x02, 0xc3, 0xf8, 0xf8, 0x20, 0x9d, 0xf8, 0x39, 0x30, 0x23, 0xb1, + 0xb8, 0xf8, 0x62, 0x20, 0xad, 0xf8, 0x78, 0x20, 0x36, 0xe0, 0x98, 0xf8, + 0x06, 0x30, 0x25, 0x99, 0x00, 0x2b, 0x2e, 0xd0, 0x8b, 0x8f, 0xad, 0xf8, + 0x78, 0x30, 0x4b, 0x68, 0x5a, 0x06, 0x1b, 0xd5, 0x9d, 0xf8, 0x3a, 0x20, + 0xc2, 0xb1, 0x04, 0x9a, 0xd2, 0x8a, 0x10, 0x07, 0x14, 0xd1, 0x91, 0xf8, + 0xdf, 0x20, 0x8a, 0xb1, 0x8a, 0x7e, 0xd2, 0x07, 0x0e, 0xd4, 0xbd, 0xf8, + 0x2c, 0x20, 0xd0, 0x04, 0x0a, 0xd5, 0x9a, 0x03, 0x08, 0xd5, 0x0d, 0x9a, + 0x91, 0xf8, 0xd1, 0x30, 0x13, 0x41, 0xdb, 0x07, 0x02, 0xd5, 0x20, 0x46, + 0x2d, 0xf0, 0x36, 0xdb, 0xbd, 0xf8, 0x2c, 0x30, 0x13, 0xf4, 0x80, 0x5f, + 0x25, 0x9b, 0x5a, 0x68, 0x14, 0xbf, 0x42, 0xf4, 0x00, 0x32, 0x22, 0xf4, + 0x00, 0x32, 0x5a, 0x60, 0x02, 0xe0, 0x89, 0x8f, 0xad, 0xf8, 0x78, 0x10, + 0x94, 0xf8, 0x2d, 0x37, 0x1b, 0xb9, 0x25, 0x9b, 0xd3, 0xf8, 0xfc, 0x30, + 0x83, 0xb1, 0xb9, 0xf1, 0x00, 0x0f, 0x0d, 0xd0, 0x25, 0x9b, 0xd3, 0xf8, + 0xf8, 0x10, 0xd3, 0xf8, 0xf4, 0x20, 0x42, 0xf8, 0x21, 0x90, 0xd3, 0xf8, + 0xf8, 0x20, 0x01, 0x32, 0x02, 0xf0, 0x07, 0x02, 0xc3, 0xf8, 0xf8, 0x20, + 0x25, 0x9b, 0xd3, 0xf8, 0x7c, 0x31, 0x5b, 0xb1, 0xd3, 0xf8, 0x08, 0x26, + 0x02, 0x98, 0x03, 0xeb, 0x82, 0x01, 0x01, 0x32, 0x02, 0xf0, 0x3f, 0x02, + 0xc1, 0xf8, 0x0c, 0x06, 0xc3, 0xf8, 0x08, 0x26, 0x98, 0xf8, 0x06, 0x30, + 0x4b, 0xb9, 0x98, 0xf8, 0x12, 0x30, 0x33, 0xb1, 0x9d, 0xf8, 0x3c, 0x30, + 0x1b, 0xb9, 0x16, 0xb9, 0x03, 0x9b, 0x9e, 0x71, 0xde, 0x71, 0x9d, 0xf8, + 0x3c, 0x30, 0x0b, 0xb3, 0x98, 0xf8, 0x06, 0x30, 0x00, 0x2b, 0x40, 0xf0, + 0x2c, 0x81, 0x98, 0xf8, 0x12, 0x30, 0x4b, 0xb1, 0x21, 0x68, 0x04, 0x98, + 0x4e, 0x31, 0x10, 0x30, 0x06, 0x22, 0xf9, 0xf3, 0x19, 0xf6, 0x00, 0x28, + 0x00, 0xf0, 0x1f, 0x81, 0x04, 0x98, 0x04, 0x30, 0xfa, 0xf3, 0x0e, 0xf3, + 0x50, 0xb9, 0x23, 0x68, 0x93, 0xf8, 0x3e, 0x30, 0x33, 0xb9, 0x20, 0x46, + 0x04, 0x99, 0x0d, 0xf0, 0xd5, 0xdc, 0x00, 0x28, 0x40, 0xf0, 0x0f, 0x81, + 0x02, 0x98, 0x9d, 0xf8, 0x3c, 0x30, 0xca, 0xf8, 0x38, 0x00, 0x5b, 0xb9, + 0x2b, 0x78, 0x6a, 0x78, 0x1a, 0x43, 0xab, 0x78, 0x13, 0x43, 0x05, 0xd0, + 0xd4, 0xf8, 0x60, 0x01, 0x02, 0x99, 0x7a, 0x8a, 0x4a, 0xf0, 0x28, 0xde, + 0xda, 0xf8, 0x38, 0x20, 0x12, 0xf0, 0x00, 0x67, 0x1f, 0xd0, 0x02, 0xf4, + 0xe0, 0x60, 0x4f, 0xea, 0x10, 0x20, 0x12, 0xf4, 0x00, 0x0f, 0x8f, 0x4b, + 0x02, 0xf0, 0x7f, 0x01, 0xa0, 0xf1, 0x04, 0x00, 0x08, 0xd0, 0x01, 0x28, + 0x4f, 0xf0, 0x14, 0x00, 0x00, 0xfb, 0x01, 0x33, 0x94, 0xbf, 0xdb, 0x68, + 0x9b, 0x68, 0x0c, 0xe0, 0x01, 0x28, 0x4f, 0xf0, 0x14, 0x00, 0x03, 0xd8, + 0x00, 0xfb, 0x01, 0x33, 0x5b, 0x68, 0x04, 0xe0, 0x41, 0x43, 0x5b, 0x58, + 0x01, 0xe0, 0x02, 0xf0, 0x7f, 0x03, 0x82, 0x49, 0x0b, 0x60, 0x95, 0xf9, + 0x03, 0x30, 0x00, 0x2b, 0x07, 0xda, 0x23, 0x68, 0xd3, 0xf8, 0x8c, 0x30, + 0xd3, 0xf8, 0xd8, 0x12, 0x01, 0x31, 0xc3, 0xf8, 0xd8, 0x12, 0xeb, 0x78, + 0x03, 0xf0, 0x30, 0x03, 0x10, 0x2b, 0x07, 0xd1, 0x23, 0x68, 0xd3, 0xf8, + 0x8c, 0x30, 0xd3, 0xf8, 0xe0, 0x12, 0x01, 0x31, 0xc3, 0xf8, 0xe0, 0x12, + 0x9d, 0xf8, 0x3c, 0x30, 0x00, 0x2b, 0x40, 0xf0, 0x8c, 0x80, 0x23, 0x68, + 0xd3, 0xf8, 0x8c, 0x30, 0xff, 0xb1, 0x02, 0xf4, 0xe0, 0x60, 0x12, 0xf4, + 0x00, 0x0f, 0x4f, 0xea, 0x10, 0x20, 0x6c, 0x49, 0x02, 0xf0, 0x7f, 0x02, + 0xa0, 0xf1, 0x04, 0x00, 0x08, 0xd0, 0x01, 0x28, 0x4f, 0xf0, 0x14, 0x00, + 0x00, 0xfb, 0x02, 0x12, 0x94, 0xbf, 0xd2, 0x68, 0x92, 0x68, 0x0c, 0xe0, + 0x01, 0x28, 0x4f, 0xf0, 0x14, 0x00, 0x03, 0xd8, 0x00, 0xfb, 0x02, 0x12, + 0x52, 0x68, 0x04, 0xe0, 0x42, 0x43, 0x8a, 0x58, 0x01, 0xe0, 0x02, 0xf0, + 0x7f, 0x02, 0x16, 0x2a, 0x3a, 0xd0, 0x0c, 0xd8, 0x0b, 0x2a, 0x25, 0xd0, + 0x04, 0xd8, 0x02, 0x2a, 0x16, 0xd0, 0x04, 0x2a, 0x5b, 0xd1, 0x19, 0xe0, + 0x0c, 0x2a, 0x23, 0xd0, 0x12, 0x2a, 0x56, 0xd1, 0x26, 0xe0, 0x30, 0x2a, + 0x3c, 0xd0, 0x04, 0xd8, 0x18, 0x2a, 0x2d, 0xd0, 0x24, 0x2a, 0x4e, 0xd1, + 0x30, 0xe0, 0x60, 0x2a, 0x40, 0xd0, 0x6c, 0x2a, 0x44, 0xd0, 0x48, 0x2a, + 0x47, 0xd1, 0x35, 0xe0, 0xd3, 0xf8, 0x70, 0x22, 0x01, 0x32, 0xc3, 0xf8, + 0x70, 0x22, 0x40, 0xe0, 0xd3, 0xf8, 0x74, 0x22, 0x01, 0x32, 0xc3, 0xf8, + 0x74, 0x22, 0x3a, 0xe0, 0xd3, 0xf8, 0x78, 0x22, 0x01, 0x32, 0xc3, 0xf8, + 0x78, 0x22, 0x34, 0xe0, 0xd3, 0xf8, 0x7c, 0x22, 0x01, 0x32, 0xc3, 0xf8, + 0x7c, 0x22, 0x2e, 0xe0, 0xd3, 0xf8, 0x80, 0x22, 0x01, 0x32, 0xc3, 0xf8, + 0x80, 0x22, 0x28, 0xe0, 0xd3, 0xf8, 0x84, 0x22, 0x01, 0x32, 0xc3, 0xf8, + 0x84, 0x22, 0x22, 0xe0, 0xd3, 0xf8, 0x88, 0x22, 0x01, 0x32, 0xc3, 0xf8, + 0x88, 0x22, 0x1c, 0xe0, 0xd3, 0xf8, 0x8c, 0x22, 0x01, 0x32, 0xc3, 0xf8, + 0x8c, 0x22, 0x16, 0xe0, 0xd3, 0xf8, 0x90, 0x22, 0x01, 0x32, 0xc3, 0xf8, + 0x90, 0x22, 0x10, 0xe0, 0xd3, 0xf8, 0x94, 0x22, 0x01, 0x32, 0xc3, 0xf8, + 0x94, 0x22, 0x0a, 0xe0, 0xd3, 0xf8, 0x98, 0x22, 0x01, 0x32, 0xc3, 0xf8, + 0x98, 0x22, 0x04, 0xe0, 0xd3, 0xf8, 0x9c, 0x22, 0x01, 0x32, 0xc3, 0xf8, + 0x9c, 0x22, 0x25, 0x99, 0x4b, 0x68, 0x58, 0x03, 0x09, 0xd5, 0x9d, 0xf8, + 0x3c, 0x30, 0x33, 0xb9, 0x2e, 0xb9, 0xd4, 0xf8, 0x40, 0x01, 0x04, 0xaa, + 0x00, 0xf0, 0x1c, 0xfd, 0x03, 0xe0, 0x20, 0x46, 0x04, 0xaa, 0xfe, 0xf7, + 0x43, 0xff, 0x04, 0x9b, 0x1a, 0x7c, 0xd1, 0x07, 0x05, 0xd4, 0x25, 0x9a, + 0xd2, 0xf8, 0x58, 0x11, 0x01, 0x31, 0xc2, 0xf8, 0x58, 0x11, 0x1b, 0x7c, + 0x13, 0xf0, 0x01, 0x0f, 0x25, 0x9b, 0x04, 0xd0, 0xd3, 0xf8, 0x5c, 0x21, + 0x01, 0x32, 0xc3, 0xf8, 0x5c, 0x21, 0x02, 0x9a, 0xc3, 0xf8, 0x64, 0x21, + 0x28, 0xe0, 0x23, 0x68, 0x5a, 0x6b, 0xc2, 0xb1, 0x9d, 0xf8, 0x3c, 0x20, + 0xaa, 0xb9, 0x09, 0x99, 0x14, 0x48, 0xca, 0x8a, 0xd3, 0xf8, 0x90, 0x30, + 0x02, 0xf0, 0x07, 0x02, 0x82, 0x5c, 0x12, 0x48, 0x84, 0x5c, 0x58, 0x46, + 0x0c, 0x34, 0x03, 0xeb, 0xc4, 0x04, 0x63, 0x68, 0xa5, 0x68, 0x01, 0x33, + 0x63, 0x60, 0xfa, 0xf3, 0x47, 0xf6, 0x40, 0x19, 0xa0, 0x60, 0x58, 0x46, + 0x09, 0x99, 0x00, 0x22, 0xfe, 0xf3, 0xc6, 0xf3, 0x06, 0xe0, 0xbd, 0xf8, + 0x2c, 0x30, 0x13, 0xf4, 0x40, 0x7f, 0x7f, 0xf4, 0xb2, 0xad, 0x7a, 0xe5, + 0x27, 0xb0, 0xbd, 0xe8, 0xf0, 0x8f, 0x00, 0xbf, 0x84, 0x18, 0x86, 0x00, + 0xb8, 0x07, 0x02, 0x00, 0xc4, 0xd2, 0x85, 0x00, 0x98, 0xe0, 0x85, 0x00, + 0x2d, 0xe9, 0xf0, 0x47, 0xd0, 0xf8, 0x28, 0x38, 0x0e, 0x69, 0x0c, 0x46, + 0xf2, 0x18, 0xd0, 0xf8, 0x04, 0x80, 0x0a, 0x61, 0x89, 0x8a, 0x05, 0x46, + 0xcb, 0x1a, 0x9b, 0xb2, 0xa3, 0x82, 0x31, 0x8a, 0x49, 0x07, 0x07, 0xd5, + 0x01, 0x2b, 0x01, 0xd8, 0x03, 0x68, 0x0f, 0xe0, 0x02, 0x32, 0x02, 0x3b, + 0x22, 0x61, 0xa3, 0x82, 0xa3, 0x8a, 0xd4, 0xf8, 0x10, 0x90, 0x07, 0x2b, + 0x2b, 0x68, 0x05, 0xd9, 0x93, 0xf8, 0x2f, 0x30, 0xb9, 0xf8, 0x06, 0x70, + 0x33, 0xb9, 0x07, 0xe0, 0xd3, 0xf8, 0x8c, 0x30, 0x5a, 0x6e, 0x01, 0x32, + 0x5a, 0x66, 0x4d, 0xe0, 0x40, 0x2f, 0x4b, 0xd0, 0x73, 0x8a, 0xda, 0x07, + 0x24, 0xd4, 0x07, 0xf0, 0x0c, 0x07, 0xbf, 0x10, 0x02, 0x2f, 0x00, 0xd0, + 0xbf, 0xb9, 0x09, 0xf1, 0x10, 0x00, 0xfa, 0xf3, 0x93, 0xf1, 0x18, 0xb9, + 0x99, 0xf8, 0x10, 0x30, 0xdb, 0x07, 0x06, 0xd5, 0x2b, 0x68, 0xd3, 0xf8, + 0x8c, 0x30, 0x5a, 0x6f, 0x01, 0x32, 0x5a, 0x67, 0x32, 0xe0, 0x2b, 0x68, + 0xd3, 0xf8, 0x8c, 0x30, 0xd3, 0xf8, 0xcc, 0x21, 0x01, 0x32, 0xc3, 0xf8, + 0xcc, 0x21, 0xd5, 0xf8, 0x3c, 0x01, 0x28, 0xf0, 0xb3, 0xdb, 0x02, 0x2f, + 0x14, 0xd1, 0x0b, 0xe0, 0x95, 0xf8, 0xcf, 0x31, 0x00, 0x2b, 0x1f, 0xd0, + 0xd5, 0xf8, 0x3c, 0x01, 0x31, 0x46, 0x22, 0x46, 0xbd, 0xe8, 0xf0, 0x47, + 0x28, 0xf0, 0xee, 0x9b, 0x28, 0x46, 0x41, 0x46, 0x32, 0x46, 0x23, 0x46, + 0xbd, 0xe8, 0xf0, 0x47, 0xff, 0xf7, 0x7e, 0xbb, 0x01, 0x2f, 0x07, 0xd8, + 0x28, 0x46, 0x41, 0x46, 0x32, 0x46, 0x23, 0x46, 0xbd, 0xe8, 0xf0, 0x47, + 0xfe, 0xf7, 0x18, 0xba, 0x2b, 0x68, 0xd3, 0xf8, 0x8c, 0x30, 0x1a, 0x6f, + 0x01, 0x32, 0x1a, 0x67, 0x40, 0x46, 0x21, 0x46, 0x00, 0x22, 0xbd, 0xe8, + 0xf0, 0x47, 0xfe, 0xf3, 0x31, 0xb3, 0x2d, 0xe9, 0xf0, 0x47, 0x90, 0xf8, + 0xa0, 0x31, 0x86, 0xb0, 0x04, 0x46, 0x00, 0x2b, 0x40, 0xf0, 0xeb, 0x80, + 0x03, 0x68, 0x18, 0x7e, 0x00, 0x28, 0x00, 0xf0, 0xe7, 0x80, 0x01, 0x23, + 0x84, 0xf8, 0xa0, 0x31, 0x20, 0x69, 0x01, 0xf0, 0x19, 0xfe, 0x23, 0x69, + 0x05, 0x46, 0x93, 0xf8, 0xea, 0x20, 0x52, 0xb1, 0xdb, 0x6e, 0x40, 0xf2, + 0x04, 0x40, 0xd3, 0xf8, 0x20, 0x31, 0x18, 0x40, 0xb0, 0xf5, 0x80, 0x60, + 0x18, 0xbf, 0x01, 0x20, 0x02, 0xe0, 0x18, 0x6e, 0x04, 0xf0, 0xfd, 0xfc, + 0x08, 0xb1, 0x00, 0x26, 0x6d, 0xe0, 0xd4, 0xf8, 0x68, 0x01, 0x04, 0x21, + 0x4b, 0xf0, 0x4a, 0xdf, 0x20, 0x46, 0x1e, 0xf0, 0x3d, 0xda, 0x00, 0xb9, + 0x01, 0x35, 0x26, 0x46, 0x04, 0xf1, 0x20, 0x07, 0xd6, 0xf8, 0x4c, 0x82, + 0xb8, 0xf1, 0x00, 0x0f, 0x57, 0xd0, 0x98, 0xf8, 0x06, 0x90, 0xb9, 0xf1, + 0x00, 0x0f, 0x52, 0xd1, 0x40, 0x46, 0x30, 0xf0, 0x03, 0xd8, 0x98, 0xf8, + 0x05, 0x30, 0x2d, 0x18, 0x00, 0x2b, 0x4a, 0xd0, 0x23, 0x68, 0x20, 0x46, + 0x93, 0xf8, 0x31, 0x30, 0x41, 0x46, 0x00, 0x2b, 0x3c, 0xd0, 0xd8, 0xf8, + 0xcc, 0x30, 0xdb, 0x07, 0x38, 0xd5, 0x06, 0xf0, 0xd9, 0xff, 0x23, 0x68, + 0x2d, 0x18, 0x93, 0xf8, 0x95, 0x30, 0x00, 0x2b, 0x37, 0xd0, 0xd4, 0xf8, + 0x6c, 0x12, 0x20, 0x46, 0xbc, 0x31, 0x4d, 0xf0, 0x0d, 0xd8, 0x82, 0x46, + 0x78, 0xb3, 0x20, 0x46, 0x51, 0x46, 0x1e, 0xf0, 0x25, 0xdc, 0x9a, 0xf8, + 0x18, 0x30, 0x9a, 0x07, 0x1a, 0xd5, 0x02, 0x21, 0x50, 0x46, 0x4c, 0xf0, + 0x51, 0xdc, 0x08, 0x22, 0xcd, 0xf8, 0x00, 0x90, 0x01, 0x92, 0x98, 0xf8, + 0x12, 0x20, 0xd4, 0xf8, 0x6c, 0x32, 0xd2, 0xf1, 0x01, 0x02, 0x38, 0xbf, + 0x00, 0x22, 0x02, 0x92, 0x20, 0x46, 0x41, 0x46, 0x0b, 0x22, 0xbc, 0x33, + 0xcd, 0xf8, 0x0c, 0x90, 0xcd, 0xf8, 0x10, 0x90, 0x14, 0xf0, 0xa8, 0xd9, + 0xd4, 0xf8, 0x6c, 0x32, 0x01, 0x22, 0x83, 0xf8, 0xf0, 0x20, 0x06, 0xe0, + 0x36, 0xf0, 0x52, 0xdb, 0x2d, 0x18, 0x4f, 0xf4, 0x7a, 0x60, 0xfd, 0xf3, + 0xb9, 0xf7, 0x04, 0x36, 0xbe, 0x42, 0x9f, 0xd1, 0x8f, 0xe7, 0xd4, 0xf8, + 0xb4, 0x24, 0x92, 0x19, 0x13, 0x6b, 0x13, 0xb1, 0x50, 0x6a, 0x98, 0x47, + 0x2d, 0x18, 0x34, 0x36, 0x40, 0xf2, 0xac, 0x43, 0x9e, 0x42, 0xf2, 0xd1, + 0x94, 0xf8, 0xf1, 0x31, 0x4b, 0xb1, 0xa0, 0x68, 0xd4, 0xf8, 0xac, 0x11, + 0x06, 0xf0, 0x22, 0xdf, 0x00, 0xb9, 0x01, 0x35, 0x00, 0x23, 0x84, 0xf8, + 0xf1, 0x31, 0x20, 0x46, 0xfa, 0xf7, 0x90, 0xfe, 0x23, 0x68, 0x00, 0x21, + 0x19, 0x76, 0x23, 0x6b, 0x4f, 0xf0, 0xff, 0x32, 0x45, 0x19, 0x18, 0x69, + 0x08, 0xf0, 0xb4, 0xfd, 0x20, 0x46, 0x11, 0xf0, 0x27, 0xde, 0xd4, 0xf8, + 0x78, 0x62, 0x07, 0xe0, 0x00, 0x23, 0x31, 0x1d, 0x60, 0x68, 0x01, 0x22, + 0x00, 0x93, 0xfa, 0xf3, 0xf7, 0xf2, 0x36, 0x68, 0x00, 0x2e, 0xf5, 0xd1, + 0x23, 0x68, 0x93, 0xf8, 0x2f, 0x30, 0x83, 0xb1, 0x26, 0x46, 0x04, 0xf1, + 0x20, 0x07, 0xd6, 0xf8, 0x4c, 0x12, 0x39, 0xb1, 0x8b, 0x79, 0x2b, 0xb1, + 0x0b, 0x79, 0x1b, 0xb1, 0x20, 0x46, 0x06, 0xf0, 0x4f, 0xff, 0x2d, 0x18, + 0x04, 0x36, 0xbe, 0x42, 0xf1, 0xd1, 0xd4, 0xf8, 0x7c, 0x02, 0x10, 0xb1, + 0x06, 0xf0, 0x81, 0xfa, 0x2d, 0x18, 0x20, 0x69, 0x01, 0xf0, 0xd9, 0xfd, + 0x00, 0x23, 0x40, 0x19, 0x84, 0xf8, 0x29, 0x30, 0x84, 0xf8, 0xa0, 0x31, + 0x00, 0xe0, 0x00, 0x20, 0x06, 0xb0, 0xbd, 0xe8, 0xf0, 0x87, 0x00, 0x00, + 0x04, 0x4b, 0x1a, 0x68, 0x22, 0xb1, 0x01, 0x22, 0x80, 0xf8, 0x9d, 0x23, + 0x00, 0x22, 0x1a, 0x60, 0x70, 0x47, 0x00, 0xbf, 0xe4, 0x07, 0x02, 0x00, + 0xf8, 0xb5, 0x14, 0x46, 0x1d, 0x46, 0xd2, 0xf8, 0xf0, 0x30, 0xd2, 0x78, + 0xb4, 0xf8, 0x56, 0x60, 0x03, 0xeb, 0x42, 0x03, 0xb3, 0xf8, 0xbe, 0x20, + 0xf6, 0x43, 0x96, 0x19, 0x36, 0x05, 0x36, 0x0d, 0xb4, 0xf8, 0x5a, 0x30, + 0x0f, 0x46, 0x71, 0x19, 0x99, 0x42, 0x15, 0xdd, 0x61, 0x78, 0x99, 0x42, + 0x54, 0xd8, 0xa1, 0x78, 0x00, 0x29, 0x51, 0xd1, 0x01, 0x3a, 0x12, 0x05, + 0x12, 0x0d, 0x9e, 0x42, 0xa4, 0xf8, 0x56, 0x20, 0x02, 0xd8, 0x9d, 0x1b, + 0xad, 0xb2, 0x2d, 0xb9, 0x24, 0x48, 0x00, 0x21, 0x32, 0x46, 0x06, 0xf0, + 0x63, 0xff, 0x00, 0x25, 0xb4, 0xf8, 0x5a, 0x30, 0x9e, 0x1b, 0xa3, 0x78, + 0x76, 0x1b, 0xeb, 0x18, 0xa4, 0xf8, 0x5a, 0x60, 0xa3, 0x70, 0x35, 0xe0, + 0xe1, 0x78, 0x07, 0xf1, 0x10, 0x00, 0xfa, 0xf3, 0x05, 0xf3, 0x43, 0x6a, + 0x02, 0x46, 0x43, 0xf4, 0x80, 0x63, 0x43, 0x62, 0xe0, 0x78, 0xd4, 0xf8, + 0xf0, 0x10, 0x5c, 0x30, 0x01, 0xeb, 0x40, 0x00, 0xc6, 0x88, 0x4f, 0xf0, + 0x01, 0x0e, 0x33, 0x05, 0x1b, 0x0d, 0x01, 0x36, 0xc6, 0x80, 0x03, 0xf0, + 0x3f, 0x06, 0x04, 0xeb, 0xd6, 0x00, 0x06, 0xf0, 0x07, 0x06, 0x0e, 0xfa, + 0x06, 0xf6, 0x13, 0x85, 0x90, 0xf8, 0x44, 0xe0, 0xa4, 0xf8, 0x56, 0x30, + 0x46, 0xea, 0x0e, 0x06, 0x80, 0xf8, 0x44, 0x60, 0xe3, 0x78, 0xd1, 0xf8, + 0x2c, 0x01, 0xdf, 0xf8, 0x20, 0xe0, 0x03, 0xf0, 0x07, 0x03, 0x86, 0x6c, + 0x1e, 0xf8, 0x03, 0x30, 0xc0, 0x6c, 0xb0, 0x47, 0x01, 0x3d, 0xad, 0xb2, + 0x00, 0x2d, 0xc7, 0xd1, 0xf8, 0xbd, 0x00, 0xbf, 0x31, 0xbd, 0x01, 0x00, + 0x90, 0xe0, 0x85, 0x00, 0x2d, 0xe9, 0xf0, 0x41, 0x92, 0xf8, 0xe5, 0x30, + 0x06, 0x46, 0x14, 0x46, 0xd0, 0xf8, 0x40, 0x51, 0xab, 0xb1, 0x2a, 0x46, + 0x00, 0x23, 0xd2, 0xf8, 0x50, 0x12, 0xa1, 0x42, 0x04, 0xd1, 0x94, 0x33, + 0x00, 0x22, 0x45, 0xf8, 0x23, 0x20, 0x03, 0xe0, 0x01, 0x33, 0x04, 0x32, + 0x0a, 0x2b, 0xf2, 0xd1, 0x70, 0x68, 0x21, 0x46, 0xf4, 0x22, 0xbd, 0xe8, + 0xf0, 0x41, 0xfe, 0xf3, 0x81, 0xb1, 0x82, 0xf8, 0xe4, 0x30, 0x8b, 0x07, + 0x3f, 0xd5, 0xb2, 0xf8, 0x54, 0x30, 0xb2, 0xf8, 0x5c, 0x80, 0x2b, 0xe0, + 0x03, 0xf0, 0x3f, 0x01, 0x04, 0xeb, 0xd1, 0x02, 0x92, 0xf8, 0x4c, 0xc0, + 0x01, 0xf0, 0x07, 0x00, 0x4c, 0xfa, 0x00, 0xf7, 0x17, 0xf0, 0x01, 0x0f, + 0x1b, 0xd0, 0x4f, 0xf0, 0x01, 0x0e, 0x0e, 0xfa, 0x00, 0xfe, 0x92, 0xf8, + 0x44, 0x70, 0x6f, 0xea, 0x0e, 0x0e, 0x57, 0xfa, 0x00, 0xf0, 0x5f, 0xfa, + 0x8e, 0xfe, 0x0e, 0xea, 0x0c, 0x0c, 0xc0, 0x07, 0x82, 0xf8, 0x4c, 0xc0, + 0x09, 0xd5, 0x0e, 0xea, 0x07, 0x07, 0x82, 0xf8, 0x44, 0x70, 0x61, 0x18, + 0x00, 0x22, 0x0a, 0x71, 0xa2, 0x78, 0x01, 0x3a, 0xa2, 0x70, 0x01, 0x33, + 0x1b, 0x05, 0x1b, 0x0d, 0x43, 0x45, 0xd1, 0xd1, 0xd4, 0xf8, 0xf0, 0x20, + 0x6b, 0x68, 0x28, 0x46, 0xd1, 0x58, 0x22, 0x46, 0x24, 0xf0, 0xf8, 0xdf, + 0x94, 0xf8, 0xe8, 0x30, 0x01, 0x3b, 0x84, 0xf8, 0xe8, 0x30, 0xd4, 0xf8, + 0xf0, 0x20, 0x6b, 0x68, 0x30, 0x46, 0xd1, 0x58, 0x22, 0x46, 0x25, 0xf0, + 0xcf, 0xdd, 0xd6, 0xf8, 0x40, 0x01, 0x21, 0x46, 0x00, 0x22, 0xbd, 0xe8, + 0xf0, 0x41, 0x25, 0xf0, 0xc9, 0x9c, 0x00, 0x00, 0x37, 0xb5, 0x04, 0x46, + 0x94, 0xf8, 0x9d, 0x53, 0x00, 0x68, 0x01, 0x2d, 0x08, 0xd1, 0x13, 0xf0, + 0x3d, 0xda, 0x02, 0x28, 0x04, 0xdd, 0x00, 0x23, 0x84, 0xf8, 0x9d, 0x33, + 0x05, 0x4b, 0x1d, 0x60, 0x21, 0x7d, 0x94, 0xf9, 0x28, 0x20, 0x00, 0x91, + 0xe3, 0x7c, 0x03, 0x49, 0x03, 0x48, 0x06, 0xf0, 0x8d, 0xfe, 0x3e, 0xbd, + 0xe4, 0x07, 0x02, 0x00, 0xfc, 0xbc, 0x01, 0x00, 0x6d, 0xbd, 0x01, 0x00, + 0x2d, 0xe9, 0xf0, 0x47, 0x96, 0x88, 0x05, 0x46, 0x17, 0x46, 0x04, 0x68, + 0xb2, 0xf8, 0x0a, 0xa0, 0x06, 0xf0, 0x07, 0x06, 0x4f, 0xf0, 0x00, 0x08, + 0x37, 0xe0, 0x0b, 0x69, 0x60, 0x68, 0xb3, 0xf8, 0x00, 0x90, 0xd5, 0xf8, + 0x78, 0x32, 0x9a, 0x6e, 0x01, 0x32, 0x9a, 0x66, 0x01, 0x22, 0xfe, 0xf3, + 0x0b, 0xf1, 0x23, 0x68, 0x93, 0xf8, 0xa1, 0x30, 0x01, 0x2b, 0x04, 0xd0, + 0x09, 0xf4, 0xc0, 0x69, 0xb9, 0xf5, 0xc0, 0x6f, 0x17, 0xe0, 0x18, 0x21, + 0x71, 0x43, 0x01, 0xf5, 0x20, 0x71, 0x6b, 0x18, 0xda, 0x88, 0x58, 0x88, + 0x90, 0x42, 0x02, 0xd1, 0x69, 0x5a, 0xd9, 0x80, 0x01, 0xe0, 0x01, 0x32, + 0xda, 0x80, 0x08, 0xf1, 0x01, 0x08, 0x01, 0x22, 0x20, 0x46, 0x31, 0x46, + 0x1f, 0xfa, 0x88, 0xf8, 0x21, 0xf0, 0x4e, 0xdf, 0xd0, 0x45, 0x0a, 0xd0, + 0x23, 0x69, 0x02, 0x21, 0x03, 0xeb, 0x86, 0x03, 0xd8, 0x68, 0x13, 0x4b, + 0x9b, 0x6b, 0x98, 0x47, 0x01, 0x46, 0x00, 0x29, 0xc5, 0xd1, 0x23, 0x68, + 0x93, 0xf8, 0xa1, 0x30, 0x01, 0x2b, 0x05, 0xd0, 0x20, 0x46, 0x31, 0x46, + 0x95, 0xf9, 0x2c, 0x20, 0x21, 0xf0, 0x36, 0xdf, 0xfb, 0x88, 0x9a, 0x07, + 0x09, 0xd4, 0xbd, 0xe8, 0xf0, 0x87, 0x01, 0x3d, 0x01, 0x20, 0xed, 0xb2, + 0xfd, 0xf3, 0xe4, 0xf5, 0x15, 0xb9, 0xbd, 0xe8, 0xf0, 0x87, 0x0b, 0x25, + 0xe3, 0x68, 0xd3, 0xf8, 0x70, 0x31, 0xdb, 0x07, 0xf1, 0xd5, 0xbd, 0xe8, + 0xf0, 0x87, 0x00, 0xbf, 0xe0, 0xa6, 0x85, 0x00, 0x2d, 0xe9, 0xf3, 0x47, + 0xd0, 0xf8, 0x00, 0x80, 0x04, 0x46, 0x01, 0xa9, 0xd8, 0xf8, 0x00, 0x05, + 0x4c, 0xf0, 0x8a, 0xda, 0x4f, 0xf0, 0x00, 0x0a, 0x39, 0xe0, 0x6b, 0x68, + 0x5a, 0x03, 0x36, 0xd5, 0x63, 0x68, 0x00, 0x26, 0x55, 0xf8, 0x03, 0x90, + 0x4f, 0x46, 0xd7, 0xf8, 0xf8, 0x30, 0x4b, 0xb3, 0x9a, 0x78, 0x19, 0x79, + 0x00, 0x2a, 0x18, 0xbf, 0x4f, 0xf0, 0x01, 0x0a, 0x19, 0xb1, 0x00, 0x22, + 0x1a, 0x71, 0xda, 0x70, 0x1e, 0xe0, 0xea, 0xb1, 0xda, 0x78, 0x01, 0x32, + 0xd2, 0xb2, 0xda, 0x70, 0x6b, 0x68, 0x13, 0xf4, 0x80, 0x7f, 0x14, 0xbf, + 0x61, 0x8e, 0xa1, 0x8e, 0x4f, 0xf0, 0x64, 0x03, 0xb1, 0xfb, 0xf3, 0xf3, + 0x9a, 0x42, 0x0b, 0xd3, 0xd4, 0xf8, 0x78, 0x32, 0x40, 0x46, 0xd3, 0xf8, + 0xc4, 0x20, 0x49, 0x46, 0x01, 0x32, 0xc3, 0xf8, 0xc4, 0x20, 0x32, 0x46, + 0x25, 0xf0, 0x9c, 0xda, 0x4f, 0xf0, 0x01, 0x0a, 0x01, 0x36, 0xf6, 0xb2, + 0x04, 0x37, 0x08, 0x2e, 0xcd, 0xd1, 0x01, 0xa8, 0x4c, 0xf0, 0x52, 0xda, + 0x05, 0x46, 0x00, 0x28, 0xbf, 0xd1, 0xba, 0xf1, 0x00, 0x0f, 0x06, 0xd1, + 0x23, 0x68, 0x84, 0xf8, 0xa3, 0xa3, 0x98, 0x68, 0xa1, 0x6b, 0x06, 0xf0, + 0x01, 0xdd, 0xbd, 0xe8, 0xfc, 0x87, 0x43, 0x68, 0xf7, 0xb5, 0xcd, 0x58, + 0x06, 0x46, 0x2f, 0x46, 0x00, 0x24, 0x30, 0x46, 0x29, 0x46, 0x22, 0x46, + 0x23, 0xf0, 0x46, 0xdd, 0xd7, 0xf8, 0xd8, 0x30, 0x4b, 0xb1, 0x1b, 0x78, + 0x01, 0x2b, 0x06, 0xd1, 0x25, 0x22, 0x00, 0x92, 0x30, 0x46, 0x29, 0x46, + 0x22, 0x46, 0x25, 0xf0, 0x5b, 0xdc, 0x22, 0x46, 0x01, 0x34, 0x01, 0x23, + 0x30, 0x46, 0x29, 0x46, 0xe4, 0xb2, 0x23, 0xf0, 0x9d, 0xdc, 0x04, 0x37, + 0x08, 0x2c, 0xe2, 0xd1, 0x32, 0x68, 0x00, 0x23, 0x00, 0x93, 0x50, 0x68, + 0x05, 0xf1, 0x10, 0x01, 0x01, 0x22, 0xfa, 0xf3, 0xc7, 0xf0, 0xfe, 0xbd, + 0x10, 0xb5, 0x03, 0x68, 0x04, 0x46, 0x5b, 0x7e, 0x7b, 0xb9, 0x08, 0x49, + 0x08, 0x48, 0x06, 0xf0, 0x8d, 0xfd, 0x20, 0x46, 0xff, 0xf7, 0xf7, 0xfc, + 0x04, 0x49, 0x06, 0x48, 0x06, 0xf0, 0x86, 0xfd, 0x20, 0x46, 0xbd, 0xe8, + 0x10, 0x40, 0xfc, 0xf7, 0x32, 0xbb, 0x10, 0xbd, 0x1f, 0xbd, 0x01, 0x00, + 0xb2, 0xbd, 0x01, 0x00, 0xc0, 0xbd, 0x01, 0x00, 0x2d, 0xe9, 0xf0, 0x4f, + 0xd0, 0xf8, 0x00, 0x80, 0x87, 0xb0, 0x05, 0x46, 0x05, 0xa9, 0xd8, 0xf8, + 0x00, 0x05, 0x4c, 0xf0, 0xe7, 0xd9, 0x00, 0x22, 0x03, 0x92, 0xe5, 0xe0, + 0x02, 0x9a, 0x53, 0x68, 0x5b, 0x03, 0x40, 0xf1, 0xe1, 0x80, 0xd8, 0xf8, + 0x40, 0x31, 0x4f, 0xf0, 0x00, 0x0a, 0x5b, 0x68, 0xd6, 0x58, 0xb1, 0x46, + 0xd9, 0xf8, 0xf8, 0x30, 0x0a, 0xf1, 0x8c, 0x01, 0x5f, 0xfa, 0x8a, 0xf7, + 0x06, 0xeb, 0x41, 0x02, 0x1b, 0xb1, 0x00, 0x23, 0x53, 0x70, 0x06, 0xf8, + 0x11, 0x30, 0x16, 0xf8, 0x11, 0x30, 0x83, 0xb1, 0x00, 0x23, 0x06, 0xf8, + 0x11, 0x30, 0x51, 0x78, 0x01, 0x31, 0xc9, 0xb2, 0x02, 0x29, 0x51, 0x70, + 0x07, 0xd9, 0x53, 0x70, 0x26, 0x22, 0x00, 0x92, 0x28, 0x46, 0x31, 0x46, + 0x3a, 0x46, 0x25, 0xf0, 0xef, 0xdb, 0xd9, 0xf8, 0xd8, 0x40, 0x00, 0x2c, + 0x00, 0xf0, 0xac, 0x80, 0x23, 0x78, 0x03, 0x2b, 0x00, 0xf2, 0xa8, 0x80, + 0xdf, 0xe8, 0x03, 0xf0, 0x95, 0x02, 0x60, 0x7d, 0x28, 0x46, 0x31, 0x46, + 0x22, 0x46, 0x01, 0x23, 0x25, 0xf0, 0x0c, 0xdc, 0x94, 0xf8, 0xe7, 0xb0, + 0xbb, 0xf1, 0x00, 0x0f, 0x1c, 0xd0, 0xbb, 0xf1, 0x01, 0x0f, 0x11, 0xd1, + 0xe1, 0x78, 0x06, 0xf1, 0x10, 0x00, 0xfa, 0xf3, 0xd1, 0xf0, 0x01, 0x46, + 0x50, 0xb1, 0xd8, 0xf8, 0x00, 0x30, 0x5a, 0x46, 0xd8, 0x68, 0xfd, 0xf3, + 0xb5, 0xf7, 0xd5, 0xf8, 0x78, 0x32, 0xda, 0x6b, 0x01, 0x32, 0xda, 0x63, + 0x00, 0x22, 0x84, 0xf8, 0xe7, 0x20, 0x28, 0x46, 0x21, 0x46, 0x25, 0xf0, + 0x2d, 0xdb, 0x7b, 0xe0, 0x94, 0xf8, 0xe8, 0x30, 0x31, 0x2b, 0x08, 0xd9, + 0x27, 0x23, 0x00, 0x93, 0x28, 0x46, 0x31, 0x46, 0x3a, 0x46, 0x01, 0x23, + 0x25, 0xf0, 0xae, 0xdb, 0x6e, 0xe0, 0x94, 0xf8, 0xe6, 0x30, 0x23, 0xb1, + 0x84, 0xf8, 0xe6, 0xb0, 0x84, 0xf8, 0xeb, 0xb0, 0x66, 0xe0, 0xa3, 0x78, + 0x23, 0xb1, 0x94, 0xf8, 0xeb, 0x30, 0x01, 0x33, 0x84, 0xf8, 0xeb, 0x30, + 0x94, 0xf8, 0xeb, 0x30, 0x02, 0x2b, 0x5b, 0xd1, 0xd5, 0xf8, 0x78, 0x32, + 0x28, 0x46, 0x5a, 0x6e, 0x31, 0x46, 0x01, 0x32, 0x5a, 0x66, 0x27, 0x23, + 0x00, 0x93, 0x3a, 0x46, 0x01, 0x23, 0x25, 0xf0, 0x8d, 0xdb, 0x01, 0x23, + 0x28, 0x46, 0x31, 0x46, 0x3a, 0x46, 0x23, 0xf0, 0xd1, 0xdb, 0x01, 0x23, + 0x03, 0x93, 0x45, 0xe0, 0x94, 0xf8, 0xe9, 0x30, 0x5a, 0x1c, 0x03, 0x2b, + 0x84, 0xf8, 0xe9, 0x20, 0x04, 0xd9, 0x30, 0x46, 0x21, 0x46, 0x23, 0xf0, + 0x91, 0xdb, 0x39, 0xe0, 0xaa, 0x7c, 0xeb, 0x7c, 0x00, 0x92, 0x95, 0xf8, + 0x2e, 0x20, 0x28, 0x68, 0x01, 0x92, 0x02, 0x99, 0x3a, 0x46, 0x25, 0xf0, + 0xa5, 0xde, 0xd5, 0xf8, 0x78, 0x32, 0x1a, 0x6d, 0x01, 0x32, 0x1a, 0x65, + 0x28, 0xe0, 0x94, 0xf8, 0xea, 0x30, 0x5a, 0x1c, 0x01, 0x2b, 0x84, 0xf8, + 0xea, 0x20, 0x09, 0xd9, 0xd5, 0xf8, 0x78, 0x32, 0x28, 0x46, 0x5a, 0x6e, + 0x31, 0x46, 0x01, 0x32, 0x5a, 0x66, 0x3a, 0x46, 0x01, 0x23, 0x03, 0xe0, + 0x28, 0x46, 0x31, 0x46, 0x3a, 0x46, 0x00, 0x23, 0x23, 0xf0, 0x9a, 0xdb, + 0x10, 0xe0, 0x94, 0xf8, 0xec, 0x30, 0x5a, 0x1c, 0x3b, 0x2b, 0x84, 0xf8, + 0xec, 0x20, 0x09, 0xd9, 0x28, 0x46, 0x31, 0x46, 0x3a, 0x46, 0x00, 0x23, + 0x24, 0xf0, 0x2a, 0xde, 0x10, 0xb1, 0x04, 0x23, 0x80, 0xf8, 0xe9, 0x30, + 0x0a, 0xf1, 0x01, 0x0a, 0xba, 0xf1, 0x08, 0x0f, 0x09, 0xf1, 0x04, 0x09, + 0x7f, 0xf4, 0x26, 0xaf, 0x05, 0xa8, 0x4c, 0xf0, 0x03, 0xd9, 0x02, 0x90, + 0x00, 0x28, 0x7f, 0xf4, 0x13, 0xaf, 0x03, 0x9a, 0x09, 0x4b, 0x12, 0xb1, + 0x1a, 0x68, 0x01, 0x32, 0x00, 0xe0, 0x03, 0x9a, 0x1a, 0x60, 0x1b, 0x68, + 0x01, 0x2b, 0x05, 0xdd, 0x40, 0x46, 0xff, 0xf7, 0xdb, 0xfe, 0x03, 0x4b, + 0x00, 0x22, 0x1a, 0x60, 0x00, 0x20, 0x07, 0xb0, 0xbd, 0xe8, 0xf0, 0x8f, + 0xe8, 0x07, 0x02, 0x00, 0xf8, 0xb5, 0x05, 0x46, 0x17, 0x46, 0xc1, 0xb1, + 0x4b, 0x68, 0x5b, 0x03, 0x15, 0xd5, 0x43, 0x68, 0x00, 0x24, 0xce, 0x58, + 0x33, 0x19, 0xd3, 0xf8, 0xd8, 0x10, 0x59, 0xb1, 0x37, 0xb1, 0x91, 0xf8, + 0xe4, 0x30, 0x01, 0x2b, 0x02, 0xd1, 0x00, 0x23, 0x81, 0xf8, 0xe4, 0x30, + 0x28, 0x46, 0x00, 0x22, 0x25, 0xf0, 0x70, 0xda, 0x04, 0x34, 0x20, 0x2c, + 0xec, 0xd1, 0xf8, 0xbd, 0x2d, 0xe9, 0xf0, 0x43, 0x13, 0x8c, 0x85, 0xb0, + 0x08, 0x2b, 0x04, 0x46, 0x89, 0x46, 0x15, 0x46, 0x92, 0xf8, 0x22, 0x80, + 0x06, 0x68, 0x01, 0xd0, 0x30, 0x46, 0x20, 0xe0, 0x43, 0x68, 0xcf, 0x58, + 0x08, 0xf1, 0x3e, 0x03, 0x11, 0x68, 0x57, 0xf8, 0x23, 0x20, 0xda, 0xb9, + 0xab, 0x69, 0x9b, 0x88, 0x03, 0xf0, 0x03, 0x03, 0x02, 0x2b, 0x0f, 0xd1, + 0x11, 0xf8, 0x03, 0x3c, 0x1b, 0x07, 0x0b, 0xd5, 0x01, 0x23, 0x08, 0xf1, + 0x8c, 0x08, 0x07, 0xf8, 0x18, 0x30, 0xd0, 0xf8, 0x78, 0x32, 0xd3, 0xf8, + 0xb4, 0x20, 0x01, 0x32, 0xc3, 0xf8, 0xb4, 0x20, 0x30, 0x46, 0x49, 0x46, + 0x2a, 0x46, 0xfe, 0xf7, 0xfb, 0xf9, 0x12, 0xe1, 0xd9, 0xf8, 0x04, 0x30, + 0xd8, 0x03, 0x15, 0xd4, 0xab, 0x69, 0x9b, 0x88, 0x03, 0xf0, 0x03, 0x03, + 0x02, 0x2b, 0x0f, 0xd1, 0x11, 0xf8, 0x03, 0x3c, 0x1b, 0x07, 0x0b, 0xd5, + 0x08, 0xf1, 0x8c, 0x03, 0x01, 0x20, 0x07, 0xf8, 0x13, 0x00, 0xd4, 0xf8, + 0x78, 0x32, 0xd3, 0xf8, 0xb4, 0x00, 0x01, 0x30, 0xc3, 0xf8, 0xb4, 0x00, + 0xab, 0x69, 0x9b, 0x88, 0x03, 0xf0, 0x03, 0x03, 0x02, 0x2b, 0xd4, 0xf8, + 0x78, 0x32, 0x38, 0xd1, 0x11, 0xf8, 0x03, 0x0c, 0x00, 0x07, 0x1e, 0xd5, + 0xd3, 0xf8, 0x9c, 0x00, 0x01, 0x30, 0xc3, 0xf8, 0x9c, 0x00, 0xd3, 0xf8, + 0xa0, 0x00, 0x01, 0x30, 0xc3, 0xf8, 0xa0, 0x00, 0x11, 0xf9, 0x03, 0x0c, + 0x00, 0x28, 0x04, 0xda, 0xd3, 0xf8, 0xac, 0x00, 0x01, 0x30, 0xc3, 0xf8, + 0xac, 0x00, 0x11, 0xf8, 0x03, 0x1c, 0x01, 0xf0, 0x30, 0x01, 0x10, 0x29, + 0x20, 0xd1, 0xd3, 0xf8, 0xb0, 0x10, 0x01, 0x31, 0xc3, 0xf8, 0xb0, 0x10, + 0x1a, 0xe0, 0x11, 0xf8, 0x05, 0xcc, 0x11, 0xf8, 0x06, 0x0c, 0x11, 0xf8, + 0x04, 0x1c, 0x4c, 0xea, 0x00, 0x00, 0x01, 0x43, 0x05, 0xd1, 0xd3, 0xf8, + 0xa0, 0x10, 0x01, 0x31, 0xc3, 0xf8, 0xa0, 0x10, 0x0a, 0xe0, 0xd3, 0xf8, + 0xa4, 0x10, 0x01, 0x31, 0xc3, 0xf8, 0xa4, 0x10, 0x04, 0xe0, 0xd3, 0xf8, + 0xa8, 0x10, 0x01, 0x31, 0xc3, 0xf8, 0xa8, 0x10, 0xb5, 0xf8, 0x7e, 0x10, + 0x08, 0x07, 0x40, 0xf0, 0x9a, 0x80, 0xd3, 0x88, 0x09, 0x09, 0x99, 0x42, + 0x23, 0xd1, 0x01, 0x23, 0xc9, 0x18, 0x09, 0x05, 0x13, 0x71, 0x09, 0x0d, + 0xd1, 0x80, 0xd9, 0xf8, 0x28, 0x40, 0x09, 0xf1, 0x1a, 0x01, 0x06, 0x22, + 0x02, 0xa8, 0xf8, 0xf3, 0x6b, 0xf7, 0x30, 0x46, 0x49, 0x46, 0x2a, 0x46, + 0xfe, 0xf7, 0x7e, 0xf9, 0x30, 0x46, 0x02, 0xa9, 0x22, 0x46, 0x4c, 0xf0, + 0x7d, 0xdb, 0x00, 0x28, 0x00, 0xf0, 0x8f, 0x80, 0x48, 0x45, 0x40, 0xf0, + 0x8c, 0x80, 0x30, 0x46, 0x39, 0x46, 0x42, 0x46, 0x25, 0xf0, 0xe8, 0xd8, + 0x85, 0xe0, 0x01, 0xf0, 0x0f, 0x09, 0xc9, 0x1a, 0x09, 0x05, 0x53, 0x78, + 0x09, 0x0d, 0x99, 0x42, 0x05, 0xd2, 0x09, 0xf1, 0x02, 0x03, 0x52, 0xf8, + 0x23, 0x10, 0x19, 0xb9, 0x44, 0xe0, 0xb1, 0xf5, 0x00, 0x6f, 0x0c, 0xd9, + 0x00, 0x22, 0x70, 0x68, 0x69, 0x69, 0xfd, 0xf3, 0x13, 0xf6, 0xd4, 0xf8, + 0x78, 0x32, 0xd3, 0xf8, 0xc0, 0x20, 0x01, 0x32, 0xc3, 0xf8, 0xc0, 0x20, + 0x67, 0xe0, 0xc3, 0xf1, 0x01, 0x03, 0xcb, 0x18, 0x9b, 0xb2, 0x30, 0x46, + 0x39, 0x46, 0x42, 0x46, 0x25, 0xf0, 0x54, 0xd8, 0x08, 0xf1, 0x3e, 0x03, + 0x57, 0xf8, 0x23, 0x30, 0x6b, 0xb1, 0x69, 0x69, 0x09, 0xf1, 0x02, 0x02, + 0x43, 0xf8, 0x22, 0x10, 0xd5, 0xf8, 0x80, 0x20, 0x09, 0xf1, 0x12, 0x09, + 0x43, 0xf8, 0x29, 0x20, 0x9a, 0x78, 0x01, 0x32, 0x9a, 0x70, 0x42, 0x46, + 0x30, 0x46, 0x39, 0x46, 0x25, 0xf0, 0xa8, 0xd8, 0xd4, 0xf8, 0x78, 0x32, + 0xd3, 0xf8, 0xc8, 0x20, 0x01, 0x32, 0xc3, 0xf8, 0xc8, 0x20, 0x94, 0xf8, + 0xa3, 0x33, 0x00, 0x2b, 0x3b, 0xd1, 0x01, 0x23, 0x84, 0xf8, 0xa3, 0x33, + 0xb0, 0x68, 0xa1, 0x6b, 0x64, 0x22, 0x06, 0xf0, 0x2d, 0xda, 0x32, 0xe0, + 0x69, 0x69, 0x09, 0xf1, 0x12, 0x09, 0x42, 0xf8, 0x23, 0x10, 0xd5, 0xf8, + 0x80, 0x30, 0x42, 0xf8, 0x29, 0x30, 0x93, 0x78, 0x01, 0x33, 0x93, 0x70, + 0x94, 0xf8, 0xa3, 0x33, 0x3b, 0xb9, 0x01, 0x23, 0x84, 0xf8, 0xa3, 0x33, + 0xb0, 0x68, 0xa1, 0x6b, 0x64, 0x22, 0x06, 0xf0, 0x15, 0xda, 0xd4, 0xf8, + 0x78, 0x32, 0xd3, 0xf8, 0xbc, 0x20, 0x01, 0x32, 0xc3, 0xf8, 0xbc, 0x20, + 0x13, 0xe0, 0x70, 0x68, 0x69, 0x69, 0x00, 0x22, 0xfd, 0xf3, 0xb2, 0xf5, + 0xd4, 0xf8, 0x78, 0x32, 0x20, 0x46, 0xd3, 0xf8, 0xdc, 0x20, 0x39, 0x46, + 0x01, 0x32, 0xc3, 0xf8, 0xdc, 0x20, 0x01, 0x23, 0x00, 0x93, 0x42, 0x46, + 0x00, 0x23, 0x25, 0xf0, 0xb5, 0xd9, 0x05, 0xb0, 0xbd, 0xe8, 0xf0, 0x83, + 0x03, 0x68, 0x1b, 0x68, 0x19, 0xb1, 0x01, 0x22, 0x83, 0xf8, 0xaa, 0x20, + 0x70, 0x47, 0x83, 0xf8, 0xaa, 0x10, 0x70, 0x47, 0x70, 0xb5, 0xd0, 0xf8, + 0xac, 0x53, 0x02, 0x29, 0x2b, 0x68, 0x08, 0xbf, 0x00, 0xf5, 0x75, 0x74, + 0xd3, 0xf8, 0x8c, 0x20, 0x18, 0xbf, 0x00, 0x24, 0x13, 0x6c, 0x06, 0x46, + 0x50, 0x68, 0x22, 0x69, 0xc3, 0x18, 0x9a, 0x1a, 0x23, 0x61, 0xa3, 0x69, + 0x9a, 0x42, 0x23, 0x78, 0x0e, 0xd2, 0x4b, 0xb9, 0xe2, 0x68, 0x63, 0x69, + 0x9a, 0x42, 0x05, 0xd3, 0x01, 0x23, 0x23, 0x70, 0x63, 0x68, 0x01, 0x33, + 0x63, 0x60, 0x70, 0xbd, 0xe3, 0x68, 0x01, 0x33, 0xe3, 0x60, 0x70, 0xbd, + 0x00, 0x22, 0xe2, 0x60, 0x13, 0xb3, 0x01, 0x29, 0x04, 0xd1, 0x28, 0x46, + 0x03, 0x21, 0x20, 0xf0, 0xe5, 0xde, 0x19, 0xe0, 0x02, 0x29, 0x17, 0xd1, + 0xa8, 0x68, 0xd6, 0xf8, 0xd0, 0x13, 0x06, 0xf0, 0xfd, 0xd9, 0xd6, 0xf8, + 0xcc, 0x33, 0x7b, 0xb1, 0x2b, 0x68, 0x93, 0xf8, 0x74, 0x30, 0x01, 0x2b, + 0x07, 0xd0, 0x28, 0x69, 0x01, 0x21, 0x34, 0xf0, 0x23, 0xd9, 0x2b, 0x68, + 0x01, 0x22, 0x83, 0xf8, 0x74, 0x20, 0x00, 0x23, 0xc6, 0xf8, 0xcc, 0x33, + 0x00, 0x23, 0x23, 0x70, 0x70, 0xbd, 0xd0, 0xf8, 0xac, 0x03, 0x70, 0x47, + 0x2d, 0xe9, 0xf0, 0x4f, 0xd0, 0xf8, 0xac, 0x83, 0xd0, 0xf8, 0xb0, 0x03, + 0xcf, 0xb0, 0x07, 0x90, 0xd8, 0xf8, 0x68, 0x01, 0x1d, 0x46, 0x83, 0x79, + 0x0f, 0x46, 0x92, 0x46, 0x13, 0xb1, 0x04, 0x21, 0x4b, 0xf0, 0x7c, 0xd9, + 0xbb, 0x79, 0x1b, 0xb1, 0x3b, 0x79, 0x00, 0x2b, 0x00, 0xf0, 0x7e, 0x81, + 0xba, 0xf8, 0x00, 0x40, 0xb5, 0xf8, 0x00, 0x90, 0x14, 0xf4, 0x80, 0x44, + 0xb5, 0xf8, 0x02, 0xb0, 0x40, 0xf0, 0x61, 0x81, 0xbb, 0xf1, 0x01, 0x0f, + 0x40, 0xf0, 0x31, 0x81, 0x76, 0xe0, 0xd4, 0xf8, 0xd8, 0x30, 0x00, 0x2b, + 0x00, 0xf0, 0x6a, 0x81, 0x95, 0xf8, 0x03, 0x90, 0x9d, 0xf8, 0x68, 0x31, + 0x4f, 0xea, 0x99, 0x19, 0x03, 0xb3, 0x09, 0xf1, 0xa0, 0x03, 0x58, 0xf8, + 0x23, 0x60, 0xde, 0xb1, 0x33, 0x69, 0xcb, 0xb1, 0x33, 0x7a, 0xbb, 0xb1, + 0x29, 0x46, 0x03, 0x22, 0x4a, 0xa8, 0xf8, 0xf3, 0x31, 0xf6, 0x4a, 0xa8, + 0x06, 0xf1, 0x14, 0x01, 0x32, 0x69, 0x03, 0x30, 0xf8, 0xf3, 0x2a, 0xf6, + 0x31, 0x69, 0x4a, 0xa8, 0x03, 0x31, 0x09, 0xaa, 0xff, 0xf3, 0x12, 0xf1, + 0x58, 0x9b, 0x28, 0x1d, 0x19, 0x1f, 0x09, 0xaa, 0xff, 0xf3, 0x3c, 0xf1, + 0x07, 0xeb, 0x89, 0x03, 0x5b, 0x6f, 0x00, 0x2b, 0x33, 0xd0, 0x1a, 0x69, + 0x58, 0x98, 0x29, 0x46, 0x14, 0x33, 0x03, 0xf0, 0xdd, 0xdd, 0x60, 0xb3, + 0xb5, 0xf8, 0x04, 0x90, 0xb5, 0xf8, 0x06, 0xb0, 0xb9, 0xf1, 0x01, 0x0f, + 0x1d, 0xd1, 0xbb, 0xf1, 0x03, 0x0f, 0x1a, 0xd1, 0xab, 0x7a, 0x10, 0x2b, + 0x17, 0xd1, 0xd4, 0xf8, 0xd8, 0x00, 0x05, 0xf1, 0x0c, 0x01, 0xea, 0x7a, + 0x02, 0x30, 0xf8, 0xf3, 0xe1, 0xf5, 0x05, 0x46, 0x68, 0xb9, 0x20, 0x46, + 0x49, 0x46, 0x97, 0xf9, 0x48, 0x20, 0x4c, 0xf0, 0xd1, 0xd8, 0x84, 0xf8, + 0xde, 0x90, 0x20, 0x46, 0x49, 0x46, 0x2a, 0x46, 0x4c, 0xf0, 0xca, 0xd8, + 0x0c, 0xe0, 0x20, 0x46, 0x01, 0x21, 0x97, 0xf9, 0x48, 0x20, 0x4b, 0xf0, + 0x55, 0xde, 0x0f, 0x25, 0x04, 0xe0, 0x0f, 0x25, 0x4f, 0xf0, 0x03, 0x0b, + 0x4f, 0xf0, 0x01, 0x09, 0xd4, 0xf8, 0xd8, 0x10, 0x07, 0x9b, 0x4a, 0x78, + 0xd8, 0x68, 0x02, 0x32, 0xfd, 0xf3, 0x94, 0xf4, 0x00, 0x23, 0xc4, 0xf8, + 0xd8, 0x30, 0xb9, 0xe0, 0x3e, 0x6d, 0xfb, 0x6c, 0x7d, 0x6d, 0xb6, 0xb1, + 0x0a, 0xe0, 0x29, 0x46, 0x0a, 0xf1, 0x0a, 0x00, 0x06, 0x22, 0x06, 0x93, + 0xf8, 0xf3, 0xac, 0xf5, 0x06, 0x35, 0x06, 0x9b, 0x10, 0xb1, 0x01, 0x34, + 0x9c, 0x42, 0xf2, 0xdb, 0x01, 0x2e, 0x02, 0xd1, 0x9c, 0x42, 0x28, 0xdb, + 0x03, 0xe0, 0x02, 0x2e, 0x01, 0xd1, 0x9c, 0x42, 0x23, 0xda, 0xb8, 0xf8, + 0x82, 0x31, 0x44, 0xf2, 0x1d, 0x32, 0x93, 0x42, 0x2d, 0xd0, 0x0a, 0xd8, + 0x44, 0xf2, 0x16, 0x32, 0x93, 0x42, 0x28, 0xd0, 0x44, 0xf2, 0x1a, 0x32, + 0x93, 0x42, 0x24, 0xd0, 0x44, 0xf2, 0x13, 0x32, 0x0d, 0xe0, 0x44, 0xf2, + 0x2a, 0x32, 0x93, 0x42, 0x1d, 0xd0, 0x02, 0xd8, 0x44, 0xf2, 0x21, 0x32, + 0x05, 0xe0, 0x44, 0xf2, 0x2d, 0x32, 0x93, 0x42, 0x15, 0xd0, 0x44, 0xf2, + 0x52, 0x32, 0x93, 0x42, 0x11, 0xd0, 0x00, 0x22, 0x10, 0xe0, 0x00, 0x26, + 0x03, 0x23, 0x8d, 0xe8, 0x48, 0x00, 0x40, 0x46, 0x17, 0x21, 0x0a, 0xf1, + 0x0a, 0x02, 0x33, 0x46, 0x02, 0x96, 0x03, 0x96, 0x01, 0x25, 0x1a, 0xf0, + 0x23, 0xdb, 0x34, 0x46, 0x80, 0xe0, 0x01, 0x22, 0x0a, 0xf1, 0x0a, 0x04, + 0x21, 0x46, 0x40, 0x46, 0x4c, 0xf0, 0x9a, 0xd9, 0x01, 0x46, 0x10, 0xb1, + 0x40, 0x46, 0x4c, 0xf0, 0x9d, 0xd9, 0x21, 0x46, 0x40, 0x46, 0x4c, 0xf0, + 0xa1, 0xda, 0x04, 0x46, 0x00, 0x28, 0x00, 0xf0, 0x8c, 0x80, 0x39, 0x46, + 0x4b, 0xf0, 0x7c, 0xdf, 0x63, 0x68, 0xda, 0x04, 0x08, 0xd5, 0x07, 0x99, + 0x91, 0xf8, 0x30, 0x20, 0x00, 0x2a, 0x40, 0xf0, 0x82, 0x80, 0x23, 0xf4, + 0x80, 0x53, 0x63, 0x60, 0x40, 0x46, 0x21, 0x46, 0x1d, 0xf0, 0x8e, 0xdd, + 0xb9, 0xf1, 0x00, 0x0f, 0x03, 0xd0, 0xb9, 0xf1, 0x01, 0x0f, 0x76, 0xd1, + 0x12, 0xe0, 0xb7, 0xf9, 0x5c, 0x30, 0x97, 0xf9, 0x48, 0x20, 0x20, 0x46, + 0x01, 0x21, 0x13, 0xb9, 0x4c, 0xf0, 0x2a, 0xd8, 0x01, 0xe0, 0x4b, 0xf0, + 0xb9, 0xdd, 0x26, 0x7e, 0x16, 0xf0, 0x01, 0x06, 0x66, 0xd0, 0x00, 0x26, + 0x35, 0x46, 0x2e, 0xe0, 0xd4, 0xf8, 0xd8, 0x10, 0x41, 0xb1, 0x07, 0x9b, + 0x4a, 0x78, 0xd8, 0x68, 0x02, 0x32, 0xfd, 0xf3, 0xf7, 0xf3, 0x00, 0x23, + 0xc4, 0xf8, 0xd8, 0x30, 0xb7, 0xf8, 0x62, 0x50, 0x00, 0x2d, 0x52, 0xd1, + 0x07, 0x99, 0xc8, 0x68, 0x82, 0x21, 0xfd, 0xf3, 0xdb, 0xf3, 0x06, 0x46, + 0x00, 0x28, 0x4d, 0xd0, 0x10, 0x23, 0x03, 0x70, 0x80, 0x23, 0x43, 0x70, + 0xd8, 0xf8, 0x0c, 0x30, 0xb3, 0xf8, 0x5a, 0x26, 0x73, 0x19, 0x01, 0x35, + 0x80, 0x2d, 0x9a, 0x70, 0xf6, 0xd1, 0xc4, 0xf8, 0xd8, 0x60, 0x00, 0x25, + 0x05, 0xe0, 0x0e, 0x25, 0xbb, 0xf1, 0x03, 0x0f, 0x3a, 0xd8, 0x00, 0x26, + 0x85, 0xb9, 0x7c, 0xb1, 0x23, 0x7e, 0xdb, 0x07, 0x0c, 0xd5, 0x40, 0x46, + 0x39, 0x46, 0x04, 0x22, 0x0a, 0xf1, 0x0a, 0x03, 0x00, 0x95, 0x01, 0x95, + 0xcd, 0xf8, 0x08, 0x90, 0x03, 0x95, 0x04, 0x95, 0x13, 0xf0, 0xd6, 0xda, + 0x0b, 0xf1, 0x01, 0x03, 0x01, 0x93, 0x00, 0x23, 0x03, 0x93, 0x9d, 0xf8, + 0x64, 0x31, 0x38, 0x46, 0x05, 0x93, 0x0a, 0xf1, 0x0a, 0x01, 0x07, 0xf1, + 0xbc, 0x02, 0x23, 0x46, 0xcd, 0xf8, 0x00, 0x90, 0x02, 0x95, 0x04, 0x96, + 0x1e, 0xf0, 0xc0, 0xdb, 0x12, 0xe0, 0x40, 0x46, 0x0a, 0xf1, 0x0a, 0x01, + 0x4c, 0xf0, 0xfc, 0xd8, 0x04, 0x46, 0x00, 0x28, 0x7f, 0xf4, 0x9b, 0xae, + 0x08, 0xe0, 0x06, 0x46, 0x04, 0xe0, 0x00, 0x26, 0x02, 0xe0, 0x00, 0x26, + 0x0d, 0x25, 0xd9, 0xe7, 0x01, 0x25, 0xd7, 0xe7, 0x4f, 0xb0, 0xbd, 0xe8, + 0xf0, 0x8f, 0x30, 0xb5, 0x9d, 0xf8, 0x10, 0x50, 0x9d, 0xf8, 0x14, 0x40, + 0x04, 0x95, 0x05, 0x94, 0xbd, 0xe8, 0x30, 0x40, 0xff, 0xf7, 0x5c, 0xbe, + 0xd0, 0xf8, 0xc0, 0x03, 0x70, 0x47, 0xc0, 0xf8, 0xc0, 0x13, 0x70, 0x47, + 0xd0, 0xf8, 0xac, 0x33, 0x1b, 0x68, 0xdb, 0x69, 0x18, 0x69, 0x04, 0x28, + 0xa8, 0xbf, 0x04, 0x20, 0x70, 0x47, 0x70, 0xb5, 0x03, 0x6b, 0x00, 0x25, + 0x80, 0xf8, 0xd0, 0x58, 0xd0, 0xf8, 0x5c, 0x61, 0x04, 0x46, 0x18, 0x69, + 0x07, 0xf0, 0x58, 0xff, 0x01, 0x46, 0x30, 0x46, 0x3c, 0xf0, 0x8a, 0xdc, + 0x30, 0xb1, 0x20, 0x46, 0x01, 0x21, 0x2a, 0x46, 0xbd, 0xe8, 0x70, 0x40, + 0x1a, 0xf0, 0xb8, 0x9c, 0x70, 0xbd, 0xf0, 0xb5, 0x04, 0x68, 0x8b, 0xb0, + 0x05, 0x46, 0x00, 0x21, 0xe6, 0x68, 0x1f, 0xf0, 0x5d, 0xdd, 0x28, 0x46, + 0x13, 0xf0, 0xa2, 0xd9, 0xd4, 0xf8, 0xe4, 0x36, 0x6b, 0xb1, 0xa0, 0x68, + 0xd4, 0xf8, 0x74, 0x15, 0x06, 0xf0, 0x06, 0xd8, 0x00, 0x23, 0xc4, 0xf8, + 0xe4, 0x36, 0x94, 0xf8, 0x58, 0x35, 0x23, 0xf0, 0x02, 0x03, 0x84, 0xf8, + 0x58, 0x35, 0xd4, 0xf8, 0x5c, 0x01, 0x3c, 0xf0, 0x41, 0xdc, 0x23, 0x69, + 0x93, 0xf8, 0xea, 0x20, 0x62, 0xb1, 0xdb, 0x6e, 0x40, 0xf2, 0x04, 0x40, + 0xd3, 0xf8, 0x20, 0x31, 0x18, 0x40, 0xa0, 0xf5, 0x80, 0x6c, 0xdc, 0xf1, + 0x00, 0x00, 0x40, 0xeb, 0x0c, 0x00, 0x06, 0xe0, 0x18, 0x6e, 0x03, 0xf0, + 0x3a, 0xfd, 0xd0, 0xf1, 0x01, 0x00, 0x38, 0xbf, 0x00, 0x20, 0x00, 0x28, + 0x3e, 0xd0, 0x20, 0x46, 0x06, 0xf0, 0x4a, 0xf8, 0x23, 0x6b, 0xd4, 0xf8, + 0x5c, 0x71, 0x18, 0x69, 0x07, 0xf0, 0x08, 0xff, 0x01, 0x46, 0x38, 0x46, + 0x3c, 0xf0, 0x3a, 0xdc, 0x30, 0xb1, 0x94, 0xf8, 0xd0, 0x28, 0x1a, 0xb9, + 0x20, 0x46, 0x01, 0x21, 0x1a, 0xf0, 0x68, 0xdc, 0x28, 0x46, 0x13, 0xf0, + 0xf5, 0xde, 0x4f, 0xf0, 0x00, 0x43, 0xc6, 0xf8, 0x88, 0x31, 0x0f, 0x21, + 0x20, 0x69, 0x34, 0xf0, 0x97, 0xd8, 0x20, 0x69, 0x40, 0xf2, 0xff, 0x31, + 0x34, 0xf0, 0x80, 0xd8, 0x23, 0x6b, 0x1b, 0x68, 0x02, 0x2b, 0x04, 0xd1, + 0x20, 0x69, 0x94, 0xf8, 0x43, 0x16, 0x34, 0xf0, 0xe5, 0xd8, 0x20, 0x46, + 0x18, 0xf0, 0xb4, 0xde, 0x20, 0x46, 0x18, 0xf0, 0x7d, 0xdc, 0x0a, 0xa9, + 0x00, 0x23, 0x41, 0xf8, 0x28, 0x3d, 0x20, 0x46, 0x69, 0x46, 0x1c, 0xf0, + 0x07, 0xdb, 0x20, 0x46, 0x1f, 0xf0, 0x5c, 0xde, 0x0b, 0xb0, 0xf0, 0xbd, + 0x2d, 0xe9, 0xf0, 0x41, 0x07, 0x68, 0x04, 0x46, 0x86, 0xb0, 0x38, 0x46, + 0x0e, 0x46, 0x15, 0x46, 0x98, 0x46, 0x1d, 0xf0, 0x5b, 0xdb, 0x10, 0xb1, + 0x38, 0x46, 0x1d, 0xf0, 0x4f, 0xdb, 0x0c, 0x9b, 0x38, 0x46, 0x02, 0x93, + 0x00, 0x23, 0x03, 0x93, 0x04, 0x93, 0x21, 0x46, 0x0b, 0x22, 0x2b, 0x46, + 0x8d, 0xe8, 0x40, 0x01, 0x13, 0xf0, 0xe2, 0xd9, 0x06, 0xb0, 0xbd, 0xe8, + 0xf0, 0x81, 0x00, 0x00, 0x2d, 0xe9, 0xf0, 0x4f, 0x04, 0x68, 0xd0, 0xf8, + 0xd8, 0xb2, 0xd0, 0xf8, 0xd0, 0x12, 0x97, 0xb0, 0x05, 0x46, 0xd0, 0xf8, + 0xe8, 0xa2, 0x20, 0x46, 0x07, 0x91, 0x1f, 0xf0, 0xb3, 0xde, 0xdb, 0xf8, + 0x00, 0x10, 0xa0, 0x68, 0x05, 0xf0, 0x6a, 0xdf, 0x28, 0x46, 0x02, 0x21, + 0x2f, 0xf0, 0x94, 0xd8, 0xdb, 0xe1, 0xd4, 0xf8, 0xd8, 0x26, 0x01, 0x33, + 0x52, 0xf8, 0x23, 0x60, 0xb6, 0xf8, 0x32, 0x80, 0x08, 0xf4, 0x70, 0x43, + 0xa3, 0xf5, 0x80, 0x51, 0x4b, 0x42, 0x43, 0xeb, 0x01, 0x03, 0x0e, 0x33, + 0x54, 0xf8, 0x23, 0x70, 0x08, 0xf4, 0x40, 0x63, 0xb3, 0xf5, 0x40, 0x6f, + 0x24, 0xd1, 0x23, 0x68, 0x93, 0xf8, 0x46, 0x30, 0x9a, 0x07, 0x11, 0xd0, + 0xd4, 0xf8, 0x5c, 0x01, 0x79, 0x68, 0x3b, 0xf0, 0x95, 0xdf, 0x03, 0x07, + 0x0a, 0xd4, 0x97, 0xf8, 0xec, 0x30, 0x3b, 0xb1, 0x3b, 0x68, 0x02, 0x2b, + 0x12, 0xd1, 0xd4, 0xf8, 0xfc, 0x34, 0x9b, 0x78, 0x98, 0x07, 0x0d, 0xd5, + 0x40, 0x46, 0xf9, 0xf3, 0x19, 0xf5, 0x40, 0xf4, 0x30, 0x63, 0x9b, 0xb2, + 0x0e, 0x28, 0x8c, 0xbf, 0x4f, 0xf4, 0x80, 0x58, 0x4f, 0xf4, 0x00, 0x58, + 0x48, 0xea, 0x03, 0x08, 0xd4, 0xf8, 0x5c, 0x01, 0x41, 0x46, 0x3c, 0xf0, + 0xc5, 0xdd, 0x00, 0x28, 0x00, 0xf0, 0x94, 0x81, 0x70, 0x8e, 0xf9, 0xf3, + 0x03, 0xf5, 0x40, 0xf4, 0x30, 0x60, 0x1f, 0xfa, 0x80, 0xf8, 0x70, 0x8e, + 0xf9, 0xf3, 0xfc, 0xf4, 0x0e, 0x28, 0x8c, 0xbf, 0x4f, 0xf4, 0x80, 0x51, + 0x4f, 0xf4, 0x00, 0x51, 0x48, 0xea, 0x01, 0x01, 0x28, 0x46, 0x2e, 0xf0, + 0xef, 0xd8, 0x00, 0x28, 0x00, 0xf0, 0x7c, 0x81, 0xd5, 0xf8, 0xe8, 0x32, + 0x00, 0x2b, 0x74, 0xd0, 0xd3, 0xf8, 0xdc, 0x30, 0x00, 0x2b, 0x70, 0xd0, + 0x00, 0x23, 0xa5, 0xf8, 0x5c, 0x30, 0x96, 0xf8, 0xaa, 0x00, 0x4f, 0xf0, + 0x0c, 0x08, 0x08, 0xfb, 0x00, 0xa0, 0xf2, 0x88, 0x1c, 0x30, 0x02, 0xf0, + 0x80, 0x02, 0xd2, 0xf1, 0x01, 0x02, 0x38, 0xbf, 0x00, 0x22, 0x14, 0xa9, + 0xf9, 0xf3, 0x38, 0xf6, 0xbd, 0xf8, 0x50, 0x10, 0xa5, 0xf8, 0x62, 0x10, + 0x96, 0xf8, 0xaa, 0x00, 0x13, 0xa9, 0x08, 0xfb, 0x00, 0xa0, 0x20, 0x30, + 0xf9, 0xf3, 0x8a, 0xf6, 0x13, 0x9b, 0x2b, 0xbb, 0x96, 0xf8, 0xaa, 0x30, + 0x04, 0x22, 0x08, 0xfb, 0x03, 0xa8, 0x15, 0xa8, 0x08, 0xf1, 0x24, 0x01, + 0xf8, 0xf3, 0x64, 0xf3, 0x15, 0xa8, 0x92, 0x49, 0x04, 0x22, 0xf8, 0xf3, + 0x43, 0xf3, 0x48, 0xb9, 0x96, 0xf8, 0xa9, 0x30, 0xa3, 0xf1, 0x08, 0x02, + 0xd2, 0xb2, 0x02, 0x2a, 0x40, 0xf2, 0x3a, 0x81, 0x8d, 0xf8, 0x57, 0x30, + 0x15, 0xa8, 0x13, 0xa9, 0xf9, 0xf3, 0x6a, 0xf6, 0x30, 0xb9, 0x0c, 0x23, + 0x00, 0x90, 0x01, 0x93, 0x96, 0xf8, 0x32, 0x30, 0x02, 0x93, 0x06, 0xe1, + 0x13, 0x9b, 0x20, 0x46, 0x59, 0x07, 0x44, 0xbf, 0x43, 0xf0, 0x02, 0x03, + 0x13, 0x93, 0x13, 0x9b, 0x81, 0x49, 0x9a, 0x07, 0x44, 0xbf, 0x43, 0xf0, + 0x01, 0x03, 0x13, 0x93, 0x13, 0xab, 0x00, 0x93, 0x04, 0x23, 0x01, 0x93, + 0x01, 0x23, 0x02, 0x93, 0xab, 0x68, 0x00, 0x22, 0x03, 0x93, 0x13, 0x46, + 0x19, 0xf0, 0x42, 0xdd, 0x07, 0x23, 0x00, 0x93, 0x00, 0x23, 0x01, 0x93, + 0x96, 0xf8, 0xaa, 0x20, 0x20, 0x46, 0x02, 0x92, 0x03, 0x93, 0x04, 0x93, + 0x29, 0x46, 0x18, 0x22, 0x33, 0x46, 0x13, 0xf0, 0xf1, 0xd8, 0xb6, 0xf8, + 0x62, 0x30, 0xd8, 0x06, 0x0a, 0xd5, 0xaa, 0x6d, 0x40, 0xf2, 0x37, 0x13, + 0x13, 0x40, 0x2b, 0xb9, 0x6d, 0x4b, 0x1b, 0x78, 0x13, 0xb9, 0x00, 0x93, + 0x01, 0x22, 0x34, 0xe0, 0x30, 0x46, 0xf8, 0xf3, 0xed, 0xf7, 0x18, 0xb1, + 0x00, 0x23, 0x00, 0x93, 0x02, 0x22, 0x2c, 0xe0, 0x2b, 0x6d, 0x00, 0x2b, + 0x2e, 0xd0, 0x23, 0x68, 0x93, 0xf8, 0x30, 0x30, 0x63, 0xb1, 0x29, 0xe0, + 0x69, 0x6d, 0x30, 0x46, 0x49, 0x44, 0x06, 0x22, 0xf8, 0xf3, 0xde, 0xf2, + 0x09, 0xf1, 0x06, 0x09, 0x38, 0xb1, 0x08, 0xf1, 0x01, 0x08, 0x01, 0xe0, + 0x99, 0x46, 0x98, 0x46, 0xeb, 0x6c, 0x98, 0x45, 0xee, 0xd3, 0x2b, 0x6d, + 0x01, 0x2b, 0x03, 0xd1, 0xeb, 0x6c, 0x98, 0x45, 0x06, 0xd3, 0x11, 0xe0, + 0x02, 0x2b, 0x0f, 0xd1, 0xeb, 0x6c, 0x98, 0x45, 0x04, 0xd2, 0x0b, 0xe0, + 0x00, 0x23, 0x00, 0x93, 0x03, 0x22, 0x02, 0xe0, 0x00, 0x23, 0x00, 0x93, + 0x04, 0x22, 0x01, 0x92, 0x96, 0xf8, 0x32, 0x20, 0x02, 0x92, 0xb1, 0xe0, + 0x23, 0x68, 0x93, 0xf8, 0x95, 0x30, 0x83, 0xb1, 0xd4, 0xf8, 0x4c, 0x35, + 0x01, 0x2b, 0x09, 0xd1, 0x30, 0x46, 0x04, 0xf5, 0xaa, 0x61, 0x06, 0x22, + 0xf8, 0xf3, 0xac, 0xf2, 0x00, 0x28, 0x40, 0xf0, 0xa9, 0x80, 0x02, 0xe0, + 0x02, 0x2b, 0x00, 0xf0, 0xa5, 0x80, 0x96, 0xf9, 0x34, 0x80, 0xb8, 0xf1, + 0x00, 0x0f, 0x11, 0xd1, 0xd4, 0xf8, 0x5c, 0x01, 0x71, 0x8e, 0x3c, 0xf0, + 0x5d, 0xdb, 0x58, 0xb1, 0x05, 0x23, 0xcd, 0xf8, 0x00, 0x80, 0x01, 0x93, + 0x96, 0xf8, 0x32, 0x30, 0xcd, 0xf8, 0x0c, 0x80, 0x02, 0x93, 0xcd, 0xf8, + 0x10, 0x80, 0x87, 0xe0, 0xb5, 0xf8, 0x62, 0x30, 0x5b, 0xb1, 0xaa, 0x6d, + 0x40, 0xf2, 0x37, 0x13, 0x13, 0x40, 0x33, 0xb1, 0x20, 0x46, 0x29, 0x46, + 0x32, 0x46, 0x2e, 0xf0, 0x13, 0xda, 0x00, 0x28, 0x7e, 0xd1, 0x3b, 0x68, + 0x06, 0xf1, 0x38, 0x00, 0x02, 0x2b, 0x07, 0xd1, 0x7a, 0x7d, 0x2a, 0xb9, + 0xff, 0x23, 0x00, 0x93, 0x01, 0x92, 0x09, 0xa9, 0x01, 0x23, 0x13, 0xe0, + 0x23, 0x68, 0x93, 0xf8, 0x46, 0x30, 0x13, 0xf0, 0x03, 0x03, 0x07, 0xd0, + 0xd5, 0xf8, 0xcc, 0x30, 0x03, 0xf4, 0x80, 0x53, 0xd3, 0xf1, 0x01, 0x03, + 0x38, 0xbf, 0x00, 0x23, 0xff, 0x22, 0x8d, 0xe8, 0x0c, 0x00, 0x00, 0x22, + 0x09, 0xa9, 0x13, 0x46, 0x47, 0xf0, 0x38, 0xdb, 0x23, 0x6b, 0x50, 0x37, + 0x93, 0xf8, 0xec, 0x10, 0x39, 0xb1, 0x71, 0x8e, 0x01, 0xf4, 0x40, 0x61, + 0xb1, 0xf5, 0x40, 0x6f, 0x14, 0xbf, 0x14, 0x21, 0x28, 0x21, 0x38, 0x46, + 0x47, 0xf0, 0xd0, 0xda, 0xd4, 0xf8, 0x60, 0x36, 0x09, 0xa8, 0x39, 0x46, + 0x00, 0x22, 0x9b, 0x78, 0x47, 0xf0, 0x62, 0xda, 0x10, 0xb9, 0x00, 0x90, + 0x09, 0x23, 0x18, 0xe0, 0x9d, 0xf8, 0x38, 0x20, 0x94, 0xf8, 0x38, 0x37, + 0x9a, 0x42, 0x39, 0xd1, 0x96, 0xf9, 0x34, 0x30, 0xd3, 0xb9, 0x72, 0x8e, + 0x20, 0x46, 0x02, 0xf4, 0x70, 0x42, 0x06, 0xf1, 0x38, 0x01, 0xb2, 0xf5, + 0x80, 0x5f, 0x14, 0xbf, 0x02, 0x22, 0x01, 0x22, 0x2d, 0xf0, 0x60, 0xdf, + 0x60, 0xb9, 0x00, 0x90, 0x0a, 0x23, 0x01, 0x93, 0x02, 0x90, 0x03, 0x90, + 0x04, 0x90, 0x1b, 0xe0, 0x34, 0xb7, 0x01, 0x00, 0x17, 0x73, 0x86, 0x00, + 0xa4, 0x07, 0x02, 0x00, 0x23, 0x68, 0x93, 0xf8, 0x30, 0x30, 0x0b, 0xb3, + 0x20, 0x46, 0x31, 0x46, 0x4b, 0xf0, 0x42, 0xde, 0xe0, 0xb1, 0x03, 0x7e, + 0x99, 0x07, 0x19, 0xd5, 0x43, 0x68, 0x13, 0xf4, 0x80, 0x53, 0x15, 0xd1, + 0x0d, 0x22, 0x00, 0x93, 0x01, 0x92, 0x02, 0x93, 0x03, 0x93, 0x04, 0x93, + 0x20, 0x46, 0x29, 0x46, 0x17, 0x22, 0x33, 0x46, 0x12, 0xf0, 0xee, 0xdf, + 0xd4, 0xf8, 0xdc, 0x36, 0x01, 0x3b, 0xc4, 0xf8, 0xdc, 0x36, 0xd4, 0xf8, + 0xdc, 0x36, 0x00, 0x2b, 0x7f, 0xf4, 0x1f, 0xae, 0xd4, 0xf8, 0xdc, 0x66, + 0xf6, 0xb1, 0x00, 0x22, 0x8b, 0xf8, 0x1e, 0x20, 0xd4, 0xf8, 0xdc, 0x36, + 0xd4, 0xf8, 0xd8, 0x16, 0x58, 0x1e, 0x01, 0x33, 0x51, 0xf8, 0x23, 0x30, + 0xdb, 0xf8, 0x04, 0x10, 0xc4, 0xf8, 0xdc, 0x06, 0x01, 0x29, 0x09, 0xd0, + 0x00, 0x92, 0x01, 0x92, 0x02, 0x92, 0x03, 0x92, 0x04, 0x92, 0x20, 0x46, + 0x29, 0x46, 0x20, 0x22, 0x12, 0xf0, 0xc6, 0xdf, 0x28, 0x46, 0x30, 0xf0, + 0x95, 0xdc, 0x29, 0xe0, 0x07, 0x99, 0xea, 0x79, 0x91, 0xf9, 0x34, 0x30, + 0x4a, 0xb1, 0x01, 0x21, 0xd3, 0xf1, 0x01, 0x03, 0x28, 0x46, 0x32, 0x46, + 0x38, 0xbf, 0x00, 0x23, 0x2e, 0xf0, 0x6a, 0xdb, 0x09, 0xe0, 0x01, 0x21, + 0xd3, 0xf1, 0x01, 0x03, 0x28, 0x46, 0x38, 0xbf, 0x00, 0x23, 0x00, 0x92, + 0x01, 0x92, 0x2e, 0xf0, 0x99, 0xdc, 0x95, 0xf9, 0x10, 0x30, 0x02, 0x2b, + 0x03, 0xd1, 0xe8, 0x68, 0x00, 0x21, 0x4f, 0xf0, 0xc5, 0xdc, 0x94, 0xf8, + 0x75, 0x32, 0x28, 0x46, 0x23, 0xf0, 0x04, 0x03, 0x84, 0xf8, 0x75, 0x32, + 0x2e, 0xf0, 0x36, 0xdc, 0x17, 0xb0, 0xbd, 0xe8, 0xf0, 0x8f, 0x00, 0xbf, + 0x2d, 0xe9, 0xf0, 0x4f, 0x05, 0x68, 0x89, 0xb0, 0x9a, 0x46, 0x00, 0xf5, + 0x34, 0x73, 0x93, 0xe8, 0x08, 0x03, 0x03, 0x93, 0x2b, 0x68, 0x04, 0x46, + 0x93, 0xf8, 0x3f, 0x30, 0x8b, 0x46, 0x16, 0x46, 0x00, 0x2b, 0x00, 0xf0, + 0x68, 0x81, 0xc3, 0x79, 0x00, 0x2b, 0x00, 0xf0, 0x64, 0x81, 0x83, 0x7c, + 0x05, 0xa8, 0x13, 0xb1, 0x04, 0xf1, 0xd6, 0x01, 0x00, 0xe0, 0x41, 0x46, + 0x06, 0x22, 0xf8, 0xf3, 0xa1, 0xf1, 0x00, 0x23, 0x85, 0xf8, 0x4a, 0x35, + 0x2b, 0x68, 0x93, 0xf8, 0x44, 0x30, 0x1b, 0xb1, 0xd5, 0xf8, 0x64, 0x01, + 0x38, 0xf0, 0xfa, 0xd9, 0x2b, 0x69, 0x93, 0xf8, 0xea, 0x20, 0x42, 0xb1, + 0xdb, 0x6e, 0x40, 0xf2, 0x04, 0x47, 0xd3, 0xf8, 0x20, 0x31, 0x1f, 0x40, + 0xb7, 0xf5, 0x80, 0x67, 0x03, 0xe0, 0x18, 0x6e, 0x03, 0xf0, 0x4d, 0xfa, + 0x07, 0x1c, 0x18, 0xbf, 0x01, 0x27, 0xc7, 0xb1, 0x00, 0x21, 0x20, 0x46, + 0x31, 0xf0, 0xb0, 0xdc, 0x20, 0x46, 0xff, 0xf7, 0xd4, 0xfc, 0xa3, 0x7c, + 0x20, 0x46, 0xd3, 0xf1, 0x01, 0x03, 0x38, 0xbf, 0x00, 0x23, 0x00, 0x93, + 0x00, 0x21, 0x05, 0xaa, 0x08, 0x23, 0xff, 0xf7, 0x43, 0xfd, 0x00, 0x21, + 0x20, 0x46, 0x0a, 0x46, 0x34, 0xf0, 0x6a, 0xdf, 0x24, 0xe1, 0xa3, 0x7c, + 0x00, 0x2b, 0x00, 0xf0, 0x8c, 0x80, 0xd4, 0xf8, 0xdc, 0x32, 0xd3, 0xf8, + 0x90, 0x10, 0x41, 0xb1, 0x93, 0xf8, 0x94, 0x20, 0x68, 0x68, 0xfd, 0xf3, + 0x17, 0xf0, 0xd4, 0xf8, 0xdc, 0x32, 0xc3, 0xf8, 0x90, 0x70, 0xd9, 0xf8, + 0x08, 0x30, 0x23, 0xb1, 0x0d, 0x2b, 0x02, 0xd0, 0x20, 0x46, 0x2e, 0xf0, + 0x39, 0xdd, 0xd5, 0xf8, 0x68, 0x01, 0x04, 0x21, 0x4a, 0xf0, 0x66, 0xdc, + 0x05, 0xa9, 0x28, 0x46, 0x4b, 0xf0, 0x58, 0xdd, 0x00, 0x27, 0x39, 0x46, + 0x81, 0x46, 0x84, 0xf8, 0x94, 0x70, 0x20, 0x46, 0x1e, 0xf0, 0x0e, 0xdf, + 0x39, 0x46, 0x20, 0x46, 0x1b, 0xf0, 0xcc, 0xde, 0x20, 0x46, 0x39, 0x46, + 0x12, 0xf0, 0xbe, 0xd8, 0xbb, 0xf1, 0x00, 0x0f, 0x41, 0xd0, 0x04, 0xf1, + 0xbc, 0x00, 0xf8, 0xf3, 0x1f, 0xf6, 0x00, 0x28, 0x3b, 0xd1, 0x2b, 0x6b, + 0xb8, 0xf8, 0x32, 0x70, 0x18, 0x69, 0x07, 0xf0, 0xcb, 0xfb, 0x87, 0x42, + 0x33, 0xd1, 0xd5, 0xf8, 0x5c, 0x01, 0xb8, 0xf8, 0x32, 0x10, 0x3c, 0xf0, + 0x49, 0xd9, 0x30, 0xb9, 0xd5, 0xf8, 0x5c, 0x01, 0xb8, 0xf8, 0x32, 0x10, + 0x3c, 0xf0, 0xbe, 0xd9, 0x68, 0xb1, 0x66, 0xb9, 0xd5, 0xf8, 0x5c, 0x01, + 0xb8, 0xf8, 0x32, 0x10, 0x3c, 0xf0, 0xea, 0xd8, 0x28, 0xb9, 0x01, 0x23, + 0x85, 0xf8, 0xd0, 0x38, 0xb2, 0x46, 0x65, 0x4f, 0x00, 0xe0, 0x37, 0x46, + 0x08, 0x23, 0x05, 0xa9, 0x01, 0x93, 0x28, 0x46, 0x04, 0xf1, 0xc2, 0x03, + 0x0a, 0x46, 0xcd, 0xf8, 0x00, 0x90, 0x1e, 0xf0, 0x33, 0xd9, 0x03, 0x46, + 0x50, 0xb1, 0x4f, 0xb1, 0x39, 0x46, 0x28, 0x46, 0x52, 0x46, 0x1a, 0xf0, + 0xf7, 0xda, 0x00, 0x28, 0x08, 0xbf, 0x00, 0x27, 0x00, 0xe0, 0x37, 0x46, + 0xb9, 0xf1, 0x00, 0x0f, 0x30, 0xd0, 0x48, 0x46, 0x0e, 0x21, 0x4b, 0xf0, + 0x4d, 0xd9, 0x2b, 0x68, 0x93, 0xf8, 0x44, 0x30, 0x23, 0xb1, 0xd5, 0xf8, + 0x64, 0x01, 0x49, 0x46, 0x38, 0xf0, 0x58, 0xd9, 0x49, 0x46, 0x28, 0x46, + 0x1d, 0xf0, 0x0c, 0xd9, 0x4f, 0xf0, 0x00, 0x09, 0x1c, 0xe0, 0x2b, 0x68, + 0x93, 0xf8, 0x95, 0x30, 0x83, 0xb1, 0xd5, 0xf8, 0x00, 0x05, 0x07, 0xa9, + 0x4b, 0xf0, 0x7e, 0xd9, 0x05, 0xe0, 0x43, 0x68, 0x9f, 0x00, 0x44, 0xbf, + 0x23, 0xf0, 0x00, 0x53, 0x43, 0x60, 0x07, 0xa8, 0x4b, 0xf0, 0x7c, 0xd9, + 0x00, 0x28, 0xf4, 0xd1, 0x4f, 0xf0, 0x01, 0x09, 0x84, 0xf8, 0x12, 0x90, + 0x20, 0x46, 0x19, 0xf0, 0x55, 0xd9, 0x37, 0x46, 0x20, 0x46, 0x00, 0x21, + 0x31, 0xf0, 0xea, 0xdb, 0x05, 0xf5, 0x00, 0x71, 0x28, 0x46, 0x06, 0x31, + 0x21, 0xf0, 0x84, 0xdf, 0x2b, 0x68, 0x93, 0xf8, 0x3f, 0x30, 0x93, 0xb9, + 0x95, 0xf9, 0x47, 0x26, 0x85, 0xf8, 0x42, 0x36, 0x01, 0x32, 0x08, 0xbf, + 0x85, 0xf8, 0x43, 0x36, 0x28, 0x46, 0x1b, 0xf0, 0x55, 0xdd, 0x2b, 0x68, + 0x93, 0xf8, 0x46, 0x30, 0x98, 0x07, 0x02, 0xd0, 0x28, 0x46, 0x1b, 0xf0, + 0x69, 0xdd, 0x04, 0xf1, 0xbc, 0x0b, 0x58, 0x46, 0xf8, 0xf3, 0x86, 0xf5, + 0x01, 0x46, 0x30, 0xb9, 0x20, 0x46, 0x05, 0xaa, 0x08, 0x23, 0xcd, 0xf8, + 0x00, 0x90, 0xff, 0xf7, 0x61, 0xfc, 0x95, 0xf8, 0x72, 0x32, 0x20, 0x46, + 0x33, 0xb9, 0xd5, 0xf8, 0x6c, 0x32, 0x9c, 0x42, 0x02, 0xd1, 0xff, 0xf7, + 0xdc, 0xfb, 0x04, 0xe0, 0x13, 0xf0, 0x20, 0xdb, 0x20, 0x46, 0x12, 0xf0, + 0x83, 0xdd, 0xd8, 0xf8, 0x64, 0x10, 0x49, 0xb1, 0x68, 0x68, 0xb8, 0xf8, + 0x68, 0x20, 0xfc, 0xf3, 0x31, 0xf7, 0x00, 0x23, 0xc8, 0xf8, 0x64, 0x30, + 0xa8, 0xf8, 0x68, 0x30, 0x02, 0x23, 0x05, 0xaa, 0x00, 0x93, 0x28, 0x46, + 0x23, 0x46, 0x00, 0x21, 0x19, 0xf0, 0xd4, 0xdb, 0x20, 0x46, 0x00, 0x21, + 0x19, 0xf0, 0xa2, 0xdd, 0x20, 0x46, 0x19, 0xf0, 0x0b, 0xdd, 0x28, 0x46, + 0x05, 0xf0, 0xea, 0xff, 0x1f, 0xb1, 0x28, 0x46, 0x00, 0x21, 0x52, 0x46, + 0xb8, 0x47, 0x9e, 0xb9, 0x20, 0x46, 0x31, 0x46, 0x32, 0x46, 0x34, 0xf0, + 0x53, 0xde, 0x31, 0x46, 0x06, 0x22, 0x03, 0x98, 0xf8, 0xf3, 0xb2, 0xf0, + 0x58, 0x46, 0x31, 0x46, 0x06, 0x22, 0xf8, 0xf3, 0xad, 0xf0, 0x30, 0x46, + 0x03, 0xe0, 0x4f, 0xf0, 0xff, 0x30, 0x00, 0xe0, 0x00, 0x20, 0x09, 0xb0, + 0xbd, 0xe8, 0xf0, 0x8f, 0xfb, 0x95, 0x00, 0x00, 0x2d, 0xe9, 0xf0, 0x4f, + 0x06, 0x29, 0x89, 0xb0, 0x07, 0x46, 0x0d, 0x46, 0x90, 0x46, 0x9b, 0x46, + 0x9d, 0xf8, 0x48, 0xa0, 0xd0, 0xf8, 0x00, 0x90, 0xd0, 0xf8, 0xd8, 0x62, + 0x49, 0xd0, 0x00, 0x29, 0x2c, 0xd1, 0xba, 0xf1, 0x00, 0x0f, 0x03, 0xd1, + 0x48, 0x46, 0x39, 0x46, 0x35, 0xf0, 0x40, 0xde, 0x99, 0xf8, 0x72, 0x42, + 0x00, 0x2c, 0x3d, 0xd0, 0xd9, 0xf8, 0x00, 0x05, 0x07, 0xa9, 0x4b, 0xf0, + 0xcb, 0xd8, 0x02, 0xe0, 0x23, 0x7e, 0x9a, 0x07, 0x33, 0xd4, 0x07, 0xa8, + 0x4b, 0xf0, 0xcc, 0xd8, 0x04, 0x46, 0x00, 0x28, 0xf6, 0xd1, 0x50, 0xe0, + 0xd9, 0xf8, 0x30, 0x30, 0x18, 0x69, 0x07, 0xf0, 0xb1, 0xfa, 0xd7, 0xf8, + 0xd4, 0x32, 0x5b, 0x8e, 0x83, 0x42, 0x23, 0xd0, 0x48, 0x46, 0x2a, 0xf0, + 0xb5, 0xda, 0xd9, 0xf8, 0x34, 0x07, 0x2a, 0xf0, 0xcf, 0xde, 0x1b, 0xe0, + 0xb3, 0x68, 0x09, 0x3b, 0x01, 0x2b, 0x16, 0xd8, 0x48, 0x46, 0x11, 0x46, + 0x4b, 0xf0, 0x0a, 0xdc, 0x10, 0xb1, 0x0c, 0x21, 0x4b, 0xf0, 0x58, 0xd8, + 0x02, 0x2d, 0x0a, 0xd0, 0xd9, 0xf8, 0x08, 0x00, 0x31, 0x68, 0x05, 0xf0, + 0x5f, 0xdb, 0x05, 0x2d, 0x05, 0xd8, 0x4f, 0xf0, 0xc8, 0x43, 0xab, 0x40, + 0x01, 0xd5, 0x01, 0x24, 0x00, 0xe0, 0x00, 0x24, 0x8d, 0xe8, 0x20, 0x08, + 0x13, 0x9b, 0x48, 0x46, 0x02, 0x93, 0x33, 0x6c, 0x39, 0x46, 0x03, 0x93, + 0x73, 0x6c, 0xba, 0xf1, 0x00, 0x0f, 0x0c, 0xbf, 0x07, 0x22, 0x09, 0x22, + 0x04, 0x93, 0x43, 0x46, 0x12, 0xf0, 0xa4, 0xdd, 0x9c, 0xb1, 0x05, 0x2d, + 0x01, 0xd0, 0x02, 0x2d, 0x07, 0xd1, 0xb2, 0x7f, 0x33, 0x7f, 0x9a, 0x42, + 0x03, 0xd2, 0x38, 0x46, 0x30, 0xf0, 0x6a, 0xda, 0x07, 0xe0, 0x38, 0x46, + 0xff, 0xf7, 0xb6, 0xfb, 0x03, 0xe0, 0x73, 0x68, 0x03, 0x2b, 0xab, 0xd1, + 0xd8, 0xe7, 0x09, 0xb0, 0xbd, 0xe8, 0xf0, 0x8f, 0x70, 0xb5, 0x11, 0x46, + 0x86, 0xb0, 0x05, 0x46, 0x16, 0x46, 0x4b, 0xf0, 0xc5, 0xdb, 0x04, 0x46, + 0x00, 0x28, 0x24, 0xd0, 0x90, 0xf8, 0xdf, 0x30, 0x23, 0xb1, 0x28, 0x46, + 0x21, 0x46, 0x01, 0x22, 0x06, 0xf0, 0xf7, 0xfb, 0x20, 0x46, 0x4b, 0xf0, + 0x3d, 0xd9, 0xe3, 0x68, 0x1b, 0xb1, 0x28, 0x46, 0x21, 0x46, 0x3d, 0xf0, + 0x21, 0xdf, 0x00, 0x23, 0x03, 0x22, 0x00, 0x93, 0x01, 0x92, 0x02, 0x93, + 0x03, 0x93, 0x04, 0x93, 0x28, 0x46, 0x21, 0x69, 0x05, 0x22, 0x33, 0x46, + 0x12, 0xf0, 0x64, 0xdd, 0x28, 0x46, 0x21, 0x46, 0x06, 0xb0, 0xbd, 0xe8, + 0x70, 0x40, 0x4b, 0xf0, 0xaf, 0x9b, 0x06, 0xb0, 0x70, 0xbd, 0x00, 0x00, + 0x00, 0x48, 0x70, 0x47, 0x5c, 0xc9, 0x01, 0x00, 0x00, 0x48, 0x70, 0x47, + 0x7c, 0xca, 0x01, 0x00, 0x10, 0xb5, 0x06, 0x49, 0x04, 0x46, 0x40, 0x6e, + 0xf8, 0xf3, 0xa6, 0xf4, 0x28, 0xb9, 0x60, 0x6e, 0x03, 0x49, 0xbd, 0xe8, + 0x10, 0x40, 0xf8, 0xf3, 0x9f, 0xb4, 0x10, 0xbd, 0x0d, 0xaa, 0x86, 0x00, + 0x0a, 0xaa, 0x86, 0x00, 0x70, 0xb5, 0x0c, 0x46, 0x05, 0x69, 0x16, 0x46, + 0x08, 0x46, 0x0a, 0x22, 0x00, 0x21, 0xf7, 0xf3, 0xc9, 0xf7, 0x63, 0x88, + 0x1e, 0x43, 0xeb, 0x6c, 0x66, 0x80, 0x98, 0x06, 0x03, 0xd5, 0x23, 0x88, + 0x43, 0xf4, 0x80, 0x63, 0x23, 0x80, 0xab, 0x6f, 0x42, 0xf2, 0x50, 0x02, + 0x19, 0x8c, 0x91, 0x42, 0x05, 0xd1, 0x5b, 0x8c, 0x05, 0x2b, 0x9c, 0xbf, + 0x46, 0xf0, 0x04, 0x06, 0x66, 0x80, 0x70, 0xbd, 0xd0, 0xf8, 0xec, 0x10, + 0x10, 0xb5, 0x04, 0x46, 0x31, 0xb1, 0x00, 0x68, 0x0c, 0x22, 0xfc, 0xf3, + 0x01, 0xf6, 0x00, 0x23, 0xc4, 0xf8, 0xec, 0x30, 0x10, 0xbd, 0x01, 0x21, + 0x83, 0x6f, 0x10, 0xb5, 0x80, 0xf8, 0x90, 0x10, 0x04, 0x46, 0x58, 0x6a, + 0x06, 0xf0, 0xb4, 0xff, 0x20, 0x46, 0x02, 0x21, 0x31, 0xf0, 0xe4, 0xdd, + 0xa3, 0x68, 0x98, 0x68, 0x05, 0xf0, 0xe8, 0xda, 0x00, 0x20, 0x10, 0xbd, + 0x00, 0xeb, 0x81, 0x03, 0xdb, 0x6f, 0x0a, 0x46, 0x83, 0x67, 0x83, 0x68, + 0x01, 0xf1, 0x0e, 0x01, 0x53, 0xf8, 0x21, 0x10, 0x19, 0x63, 0x90, 0xf8, + 0xeb, 0x30, 0x5b, 0xb1, 0x90, 0xf8, 0xe8, 0x30, 0x43, 0xb9, 0x4f, 0xf4, + 0x00, 0x51, 0x00, 0x6e, 0x00, 0x2a, 0x0c, 0xbf, 0x0a, 0x46, 0x00, 0x22, + 0x00, 0xf0, 0x6a, 0x9e, 0x70, 0x47, 0x00, 0x00, 0x2d, 0xe9, 0xf3, 0x47, + 0x06, 0x46, 0x88, 0x46, 0x22, 0xb1, 0x83, 0x68, 0x1b, 0x68, 0xdb, 0x69, + 0x5f, 0x6b, 0x01, 0xe0, 0x4f, 0xf0, 0xff, 0x37, 0x00, 0x25, 0xaa, 0x46, + 0x2c, 0x46, 0x0a, 0xe0, 0xba, 0xf1, 0x00, 0x0f, 0x02, 0xd0, 0xca, 0xf8, + 0x04, 0x00, 0x00, 0xe0, 0x04, 0x46, 0x01, 0x35, 0xbd, 0x42, 0x0a, 0xd2, + 0x82, 0x46, 0xdf, 0xf8, 0x5c, 0x90, 0x06, 0xeb, 0x88, 0x02, 0xd9, 0xf8, + 0x68, 0x30, 0xd0, 0x68, 0x98, 0x47, 0x00, 0x28, 0xea, 0xd1, 0x30, 0x46, + 0x6a, 0x46, 0x01, 0xa9, 0x33, 0xf0, 0x46, 0xda, 0x06, 0xeb, 0x88, 0x02, + 0xd9, 0xf8, 0x6c, 0x30, 0xd0, 0x68, 0x98, 0x47, 0x0f, 0xe0, 0x00, 0x23, + 0xd4, 0xf8, 0x04, 0x80, 0x21, 0x69, 0x63, 0x60, 0x01, 0x9b, 0x8b, 0x61, + 0xb3, 0x6f, 0x58, 0x6a, 0x08, 0xf0, 0x50, 0xfc, 0x21, 0x46, 0xb0, 0x68, + 0xfe, 0xf7, 0xf4, 0xf9, 0x44, 0x46, 0x00, 0x2c, 0xed, 0xd1, 0xbd, 0x42, + 0x34, 0xbf, 0x00, 0x20, 0x01, 0x20, 0xbd, 0xe8, 0xfc, 0x87, 0x00, 0xbf, + 0xe0, 0xa6, 0x85, 0x00, 0xf8, 0xb5, 0x0e, 0x46, 0x01, 0x31, 0x04, 0x46, + 0x03, 0xd1, 0x83, 0x6f, 0x5e, 0x6a, 0x06, 0xb1, 0x9e, 0x69, 0x94, 0xf8, + 0xe9, 0x50, 0x1d, 0xb9, 0x20, 0x46, 0x29, 0x46, 0x31, 0xf0, 0x66, 0xdd, + 0x20, 0x6e, 0x00, 0xf0, 0x69, 0xdf, 0x78, 0xb1, 0x00, 0x27, 0xe3, 0x19, + 0xd8, 0x68, 0x10, 0xb1, 0x25, 0x4b, 0x9b, 0x68, 0x98, 0x47, 0x04, 0x37, + 0x18, 0x2f, 0xf6, 0xd1, 0xe3, 0x68, 0x1b, 0xb1, 0x20, 0x46, 0x00, 0x21, + 0x31, 0xf0, 0x9e, 0xdd, 0x94, 0xf8, 0xe8, 0x20, 0x42, 0xb1, 0xa3, 0x68, + 0x00, 0x22, 0x20, 0x46, 0x03, 0x21, 0xda, 0x61, 0xbd, 0xe8, 0xf8, 0x40, + 0x32, 0xf0, 0xd2, 0x9e, 0x46, 0xf0, 0x04, 0x01, 0x84, 0xf8, 0xea, 0x20, + 0x20, 0x6e, 0x00, 0xf0, 0xf5, 0xdd, 0xa3, 0x6f, 0x01, 0x21, 0x84, 0xf8, + 0xea, 0x10, 0x1b, 0xb1, 0x58, 0x6a, 0x08, 0xb1, 0x06, 0xf0, 0xfd, 0xfe, + 0x20, 0x46, 0x31, 0xf0, 0x57, 0xde, 0xe3, 0x6e, 0x20, 0x6e, 0xd3, 0xf8, + 0xe0, 0x21, 0x01, 0x21, 0x22, 0xf0, 0x20, 0x02, 0xc3, 0xf8, 0xe0, 0x21, + 0xfb, 0xf3, 0x88, 0xf6, 0x00, 0x21, 0x20, 0x46, 0x31, 0xf0, 0x24, 0xdd, + 0x20, 0x46, 0x32, 0xf0, 0x9f, 0xdf, 0x20, 0x46, 0x01, 0x21, 0x32, 0xf0, + 0x73, 0xdb, 0xa3, 0x68, 0x00, 0x22, 0xda, 0x61, 0x2d, 0xb9, 0x20, 0x46, + 0x02, 0x21, 0xbd, 0xe8, 0xf8, 0x40, 0x31, 0xf0, 0x13, 0x9d, 0xf8, 0xbd, + 0xe0, 0xa6, 0x85, 0x00, 0x83, 0x68, 0x10, 0xb5, 0x1a, 0x68, 0x1b, 0x69, + 0xd2, 0xf8, 0x8c, 0x20, 0x04, 0x46, 0xd2, 0xf8, 0xb4, 0x10, 0x01, 0x31, + 0xc2, 0xf8, 0xb4, 0x10, 0x93, 0xf8, 0xea, 0x20, 0x5a, 0xb1, 0xdb, 0x6e, + 0x40, 0xf2, 0x04, 0x40, 0xd3, 0xf8, 0x20, 0x31, 0x18, 0x40, 0xa0, 0xf5, + 0x80, 0x61, 0x48, 0x42, 0x40, 0xeb, 0x01, 0x00, 0x06, 0xe0, 0x18, 0x6e, + 0x02, 0xf0, 0x09, 0xff, 0xd0, 0xf1, 0x01, 0x00, 0x38, 0xbf, 0x00, 0x20, + 0x20, 0xb1, 0x20, 0x46, 0x4f, 0xf0, 0xff, 0x31, 0xff, 0xf7, 0x72, 0xff, + 0xa0, 0x68, 0x31, 0xf0, 0x7f, 0xdd, 0xa0, 0x68, 0xbd, 0xe8, 0x10, 0x40, + 0x1c, 0xf0, 0xd8, 0x9b, 0x38, 0xb5, 0x04, 0x46, 0x90, 0xf8, 0x90, 0x00, + 0x00, 0x28, 0x2b, 0xd0, 0xa3, 0x68, 0x1b, 0x69, 0x93, 0xf8, 0xea, 0x20, + 0x52, 0xb1, 0xdb, 0x6e, 0x40, 0xf2, 0x04, 0x45, 0xd3, 0xf8, 0x20, 0x31, + 0x1d, 0x40, 0xb5, 0xf5, 0x80, 0x65, 0x18, 0xbf, 0x01, 0x25, 0x03, 0xe0, + 0x18, 0x6e, 0x02, 0xf0, 0xde, 0xfe, 0x05, 0x46, 0xa3, 0x68, 0x15, 0xb1, + 0x00, 0x22, 0x1a, 0x62, 0x0c, 0xe0, 0x98, 0x68, 0x05, 0xf0, 0xbc, 0xd9, + 0x20, 0x46, 0x29, 0x46, 0x31, 0xf0, 0xba, 0xdc, 0x94, 0xf8, 0xe8, 0x30, + 0x13, 0xb9, 0x20, 0x46, 0x31, 0xf0, 0xd2, 0xdf, 0xa3, 0x6f, 0x58, 0x6a, + 0xbd, 0xe8, 0x38, 0x40, 0x06, 0xf0, 0xe6, 0xbe, 0x38, 0xbd, 0x10, 0xb5, + 0x04, 0x69, 0x4f, 0xf4, 0x40, 0x41, 0x20, 0x46, 0x00, 0x22, 0x32, 0xf0, + 0x31, 0xde, 0xd4, 0xf8, 0xf8, 0x30, 0x20, 0x46, 0x1b, 0x69, 0x13, 0xb1, + 0x31, 0xf0, 0x00, 0xda, 0x01, 0xe0, 0x31, 0xf0, 0xb9, 0xdf, 0xe1, 0x6c, + 0x20, 0x6e, 0x11, 0xf0, 0x02, 0x01, 0x18, 0xbf, 0x4f, 0xf4, 0x00, 0x71, + 0x0a, 0x46, 0x00, 0x23, 0xbd, 0xe8, 0x10, 0x40, 0x00, 0xf0, 0xe4, 0x9d, + 0x38, 0xb5, 0x83, 0x68, 0x04, 0x46, 0x1b, 0x68, 0x93, 0xf8, 0x20, 0x50, + 0xfd, 0xb9, 0x01, 0x21, 0x33, 0xf0, 0x86, 0xdc, 0x20, 0x6e, 0x02, 0xf0, + 0x7c, 0xfd, 0x20, 0x46, 0x29, 0x46, 0x31, 0xf0, 0x7d, 0xdc, 0x20, 0x46, + 0x31, 0xf0, 0x98, 0xdf, 0xa0, 0x68, 0xd0, 0xf8, 0x48, 0x38, 0x1b, 0x78, + 0x0b, 0xb1, 0x31, 0xf0, 0xc3, 0xdd, 0xa3, 0x6f, 0x58, 0x6a, 0x06, 0xf0, + 0x2b, 0xfe, 0x00, 0x23, 0x84, 0xf8, 0x5e, 0x30, 0xa3, 0x68, 0x01, 0x22, + 0x1b, 0x68, 0x83, 0xf8, 0x20, 0x20, 0x38, 0xbd, 0x38, 0xb5, 0x01, 0x21, + 0x04, 0x46, 0x33, 0xf0, 0x63, 0xdc, 0x20, 0x6e, 0x02, 0xf0, 0x59, 0xfd, + 0x20, 0x46, 0x00, 0x21, 0x31, 0xf0, 0x5a, 0xdc, 0x20, 0x46, 0x33, 0xf0, + 0xb5, 0xd8, 0x05, 0x46, 0x30, 0xb1, 0x20, 0x46, 0x00, 0x21, 0x33, 0xf0, + 0x53, 0xdc, 0x6f, 0xf0, 0x08, 0x00, 0x38, 0xbd, 0x20, 0x46, 0x4f, 0xf0, + 0xff, 0x31, 0xff, 0xf7, 0xd3, 0xfe, 0x28, 0x46, 0x38, 0xbd, 0x38, 0xb5, + 0x04, 0x46, 0x90, 0xf8, 0x90, 0x00, 0x00, 0x28, 0x44, 0xd0, 0xa3, 0x6f, + 0x00, 0x21, 0x84, 0xf8, 0x90, 0x10, 0x58, 0x6a, 0x06, 0xf0, 0x06, 0xfe, + 0xa3, 0x68, 0x1b, 0x69, 0x93, 0xf8, 0xea, 0x20, 0x52, 0xb1, 0xdb, 0x6e, + 0x40, 0xf2, 0x04, 0x45, 0xd3, 0xf8, 0x20, 0x31, 0x1d, 0x40, 0xb5, 0xf5, + 0x80, 0x65, 0x18, 0xbf, 0x01, 0x25, 0x03, 0xe0, 0x18, 0x6e, 0x02, 0xf0, + 0x3e, 0xfe, 0x05, 0x46, 0x6d, 0xb1, 0x00, 0x25, 0xa3, 0x6f, 0x84, 0xf8, + 0xeb, 0x50, 0x84, 0xf8, 0xea, 0x50, 0x58, 0x6a, 0x29, 0x46, 0x06, 0xf0, + 0xe2, 0xfd, 0xa0, 0x68, 0x31, 0xf0, 0xb2, 0xdc, 0x19, 0xe0, 0x20, 0x6e, + 0x00, 0xf0, 0x1a, 0xde, 0x78, 0xb1, 0xe3, 0x6e, 0xd3, 0xf8, 0x20, 0x31, + 0xd8, 0x07, 0x02, 0xd5, 0x20, 0x46, 0x33, 0xf0, 0x3d, 0xda, 0xa3, 0x68, + 0x98, 0x68, 0xf8, 0xf7, 0xb9, 0xfd, 0x05, 0x46, 0x20, 0x46, 0x33, 0xf0, + 0x23, 0xdc, 0x94, 0xf8, 0xe8, 0x10, 0x11, 0xb9, 0x20, 0x46, 0x33, 0xf0, + 0xff, 0xdb, 0x28, 0x46, 0x38, 0xbd, 0x00, 0x00, 0x70, 0xb5, 0x08, 0x29, + 0x86, 0xb0, 0x04, 0x46, 0x0e, 0x46, 0x00, 0xf3, 0xf4, 0x80, 0x83, 0x68, + 0x7d, 0x49, 0x1b, 0x68, 0x58, 0x69, 0xf8, 0xf3, 0x3d, 0xf2, 0x08, 0x2e, + 0x1c, 0xd1, 0x23, 0x6e, 0x9a, 0x69, 0x92, 0x00, 0x02, 0xd5, 0xda, 0x69, + 0xd6, 0x07, 0x08, 0xd5, 0xe2, 0x6c, 0xd1, 0x07, 0x08, 0xd5, 0x22, 0x6d, + 0x12, 0x06, 0x05, 0xd4, 0xdb, 0x69, 0xdb, 0x07, 0x02, 0xd5, 0x63, 0x6d, + 0x9e, 0x00, 0x03, 0xd4, 0x26, 0x6d, 0x16, 0xf0, 0x80, 0x06, 0x0f, 0xd0, + 0x46, 0xb2, 0x02, 0x2e, 0xcc, 0xbf, 0x05, 0x26, 0x01, 0x26, 0x00, 0xe0, + 0x46, 0xb1, 0xd4, 0xf8, 0xf8, 0x30, 0x5b, 0x68, 0x02, 0x2b, 0x03, 0xdd, + 0xa3, 0x6d, 0x99, 0x00, 0x40, 0xf1, 0xc8, 0x80, 0x0a, 0x22, 0x03, 0xa8, + 0x00, 0x21, 0xf7, 0xf3, 0x73, 0xf5, 0xd4, 0xf8, 0xf8, 0x30, 0x00, 0x22, + 0x1a, 0x81, 0x94, 0xf8, 0x90, 0x50, 0x65, 0xb1, 0xe2, 0x6e, 0xd2, 0xf8, + 0x20, 0x51, 0x05, 0xf0, 0x01, 0x05, 0x46, 0xb9, 0x1b, 0x68, 0x00, 0x2b, + 0x64, 0xd0, 0x20, 0x46, 0x31, 0xf0, 0xca, 0xde, 0x60, 0xe0, 0x00, 0x2e, + 0x5d, 0xd0, 0xbd, 0xf8, 0x0c, 0x20, 0x59, 0x68, 0x42, 0xf0, 0x10, 0x02, + 0x02, 0x29, 0xad, 0xf8, 0x0c, 0x20, 0x62, 0x6d, 0x03, 0xd1, 0x22, 0xf0, + 0x00, 0x52, 0x62, 0x65, 0x26, 0xe0, 0x42, 0xf0, 0x00, 0x52, 0x62, 0x65, + 0x72, 0x07, 0x01, 0xd4, 0x14, 0x22, 0x1a, 0x81, 0x22, 0x6e, 0x90, 0x69, + 0x80, 0x00, 0x02, 0xd5, 0xd0, 0x69, 0xc0, 0x07, 0x08, 0xd5, 0xe0, 0x6c, + 0xc0, 0x07, 0x0a, 0xd5, 0x20, 0x6d, 0x00, 0x06, 0x07, 0xd4, 0xd2, 0x69, + 0xd0, 0x07, 0x04, 0xd5, 0x1a, 0x89, 0x42, 0xf0, 0x40, 0x02, 0x1a, 0x81, + 0x0a, 0xe0, 0x04, 0x29, 0x05, 0xd1, 0xbd, 0xf8, 0x10, 0x20, 0x42, 0xf4, + 0x00, 0x52, 0xad, 0xf8, 0x10, 0x20, 0x00, 0x22, 0x1a, 0x61, 0xda, 0x60, + 0x5a, 0x68, 0x02, 0x2a, 0x12, 0xd1, 0xe2, 0x6c, 0x12, 0xf4, 0x80, 0x4f, + 0xbd, 0xf8, 0x0e, 0x20, 0x08, 0xd0, 0x42, 0xf4, 0x80, 0x72, 0xad, 0xf8, + 0x0e, 0x20, 0x30, 0x22, 0xda, 0x60, 0x20, 0x22, 0x1a, 0x61, 0x03, 0xe0, + 0x22, 0xf4, 0x80, 0x72, 0xad, 0xf8, 0x0e, 0x20, 0x1a, 0x89, 0x16, 0xf0, + 0x02, 0x0f, 0x14, 0xbf, 0x42, 0xf0, 0x01, 0x02, 0x22, 0xf0, 0x01, 0x02, + 0x1a, 0x81, 0x1a, 0x89, 0x16, 0xf0, 0x04, 0x0f, 0x14, 0xbf, 0x42, 0xf0, + 0x08, 0x02, 0x22, 0xf0, 0x08, 0x02, 0x1a, 0x81, 0x0a, 0xe0, 0x35, 0x46, + 0xbd, 0xf8, 0x0c, 0x30, 0x23, 0xf0, 0x10, 0x03, 0xad, 0xf8, 0x0c, 0x30, + 0x63, 0x6d, 0x23, 0xf0, 0x00, 0x53, 0x63, 0x65, 0xd4, 0xf8, 0xf8, 0x30, + 0x61, 0x6d, 0x1e, 0x60, 0xa3, 0x6f, 0x58, 0x6a, 0x07, 0xf0, 0xd7, 0xf9, + 0x94, 0xf8, 0x90, 0x30, 0x1b, 0xb1, 0x15, 0xb1, 0x20, 0x46, 0x33, 0xf0, + 0x63, 0xd9, 0x02, 0x26, 0xbd, 0xf8, 0x0c, 0x30, 0x20, 0x46, 0x00, 0x21, + 0x10, 0x22, 0x00, 0x96, 0x32, 0xf0, 0xc6, 0xdc, 0xbd, 0xf8, 0x0e, 0x30, + 0x20, 0x46, 0x01, 0x21, 0x4f, 0xf4, 0x80, 0x72, 0x00, 0x96, 0x32, 0xf0, + 0xbd, 0xdc, 0xbd, 0xf8, 0x10, 0x30, 0x20, 0x46, 0x31, 0x46, 0x4f, 0xf4, + 0x00, 0x52, 0x00, 0x96, 0x32, 0xf0, 0xb4, 0xdc, 0x20, 0x46, 0x31, 0xf0, + 0xd1, 0xda, 0x94, 0xf8, 0x90, 0x00, 0xb8, 0xb1, 0xa3, 0x6f, 0x1b, 0x68, + 0xb3, 0x42, 0x06, 0xd1, 0xd4, 0xf8, 0xf8, 0x30, 0x1b, 0x68, 0x13, 0xb1, + 0x20, 0x46, 0x31, 0xf0, 0x67, 0xd8, 0x55, 0xb1, 0x20, 0x46, 0x32, 0xf0, + 0x8d, 0xd9, 0x00, 0x20, 0x06, 0xe0, 0x6f, 0xf0, 0x01, 0x00, 0x03, 0xe0, + 0x6f, 0xf0, 0x02, 0x00, 0x00, 0xe0, 0x28, 0x46, 0x06, 0xb0, 0x70, 0xbd, + 0xc6, 0x5c, 0x86, 0x00, 0xf7, 0xb5, 0x85, 0x68, 0xc6, 0x6e, 0x2b, 0x68, + 0x04, 0x46, 0xdb, 0x69, 0x06, 0x27, 0x1b, 0x6a, 0x69, 0x46, 0xc5, 0xf8, + 0xac, 0x38, 0x30, 0x4b, 0x3a, 0x46, 0x18, 0x68, 0x00, 0x90, 0x9b, 0x88, + 0x60, 0x6c, 0xad, 0xf8, 0x04, 0x30, 0x2d, 0x4b, 0x07, 0xfb, 0x00, 0x30, + 0x18, 0x38, 0xf7, 0xf3, 0x2b, 0xf4, 0x04, 0x23, 0xc5, 0xf8, 0xac, 0x38, + 0x03, 0x23, 0x85, 0xf8, 0xa9, 0x38, 0xa0, 0x68, 0x20, 0xf0, 0x8c, 0xdb, + 0x20, 0xb1, 0xd5, 0xf8, 0xac, 0x78, 0xbf, 0x00, 0x01, 0x37, 0xbf, 0xb2, + 0xd4, 0xf8, 0xb8, 0x30, 0x00, 0x22, 0x99, 0x5c, 0x38, 0x0a, 0x79, 0x18, + 0x89, 0xb2, 0x01, 0x39, 0xfd, 0xb2, 0x45, 0xea, 0x01, 0x25, 0x00, 0xf0, + 0x01, 0x00, 0x01, 0xf4, 0x80, 0x71, 0x08, 0x43, 0x6f, 0xea, 0x42, 0x61, + 0x6f, 0xea, 0x51, 0x41, 0xa6, 0xf8, 0x40, 0x15, 0xa6, 0xf8, 0x20, 0x55, + 0xa6, 0xf8, 0x2c, 0x05, 0xa6, 0xf8, 0x40, 0x15, 0x99, 0x5c, 0x01, 0x32, + 0x7f, 0x18, 0x06, 0x2a, 0xbf, 0xb2, 0xe0, 0xd1, 0x20, 0x46, 0x98, 0x21, + 0x5a, 0x78, 0x33, 0xf0, 0x63, 0xda, 0xd4, 0xf8, 0xb8, 0x30, 0x20, 0x46, + 0x9a, 0x21, 0x9a, 0x78, 0x33, 0xf0, 0x5c, 0xda, 0xd4, 0xf8, 0xb8, 0x30, + 0x20, 0x46, 0xda, 0x78, 0x1b, 0x78, 0x9c, 0x21, 0x43, 0xea, 0x02, 0x22, + 0x33, 0xf0, 0x52, 0xda, 0xd4, 0xf8, 0xb8, 0x30, 0x20, 0x46, 0x5a, 0x79, + 0x1b, 0x79, 0x9e, 0x21, 0x43, 0xea, 0x02, 0x22, 0x33, 0xf0, 0x48, 0xda, + 0xfe, 0xbd, 0x00, 0xbf, 0x60, 0xb7, 0x01, 0x00, 0x34, 0xfe, 0x01, 0x00, + 0xf0, 0xb5, 0x04, 0x69, 0x06, 0x46, 0x85, 0xb0, 0x20, 0x46, 0x92, 0x21, + 0x32, 0xf0, 0x20, 0xdf, 0x40, 0x00, 0x80, 0xb2, 0xa6, 0xf8, 0x42, 0x00, + 0x50, 0xb3, 0x00, 0x25, 0x0f, 0x21, 0x68, 0x46, 0x14, 0x4a, 0x2b, 0x46, + 0xf7, 0xf3, 0x68, 0xf4, 0x60, 0x6e, 0x69, 0x46, 0xf8, 0xf3, 0xe8, 0xf0, + 0x60, 0xb1, 0x69, 0x46, 0x60, 0x6e, 0xb6, 0xf8, 0x42, 0x70, 0xf8, 0xf3, + 0xb5, 0xf0, 0x07, 0xeb, 0x45, 0x07, 0x82, 0xb2, 0x39, 0x46, 0x20, 0x46, + 0x33, 0xf0, 0x1c, 0xda, 0x01, 0x35, 0x77, 0x2d, 0xe4, 0xd1, 0x60, 0x6e, + 0x08, 0x49, 0xf8, 0xf3, 0xd3, 0xf0, 0x48, 0xb1, 0x60, 0x6e, 0x06, 0x49, + 0xd4, 0xf8, 0xf8, 0x50, 0xf8, 0xf3, 0xa0, 0xf0, 0x28, 0x81, 0x20, 0x46, + 0x31, 0xf0, 0x0a, 0xda, 0x05, 0xb0, 0xf0, 0xbd, 0xae, 0xac, 0x86, 0x00, + 0x17, 0x7c, 0x86, 0x00, 0x81, 0x6f, 0x10, 0xb5, 0x08, 0x31, 0x04, 0x46, + 0x31, 0xf0, 0x0a, 0xdd, 0xff, 0xf7, 0x06, 0xfc, 0x01, 0x46, 0x20, 0x46, + 0xbd, 0xe8, 0x10, 0x40, 0x31, 0xf0, 0xe2, 0x9c, 0x10, 0xb5, 0x83, 0x6f, + 0x06, 0x4a, 0x1c, 0x6a, 0x40, 0xf2, 0xee, 0x23, 0x94, 0x21, 0x94, 0x42, + 0x14, 0xbf, 0x1a, 0x46, 0x4f, 0xf4, 0x16, 0x62, 0xbd, 0xe8, 0x10, 0x40, + 0x33, 0xf0, 0xe6, 0x99, 0x50, 0x20, 0x08, 0x00, 0x73, 0xb5, 0x04, 0x69, + 0x05, 0x46, 0x20, 0x46, 0x0e, 0x46, 0xff, 0xf7, 0xd9, 0xff, 0xa3, 0x6f, + 0x31, 0x46, 0x58, 0x6a, 0x07, 0xf0, 0x3e, 0xfa, 0x2b, 0x68, 0x01, 0x22, + 0x83, 0xf8, 0x74, 0x20, 0x20, 0x46, 0x31, 0xf0, 0x15, 0xdc, 0xa3, 0x6f, + 0x20, 0x46, 0x99, 0x8a, 0x32, 0xf0, 0xa8, 0xdf, 0xa3, 0x6f, 0x20, 0x46, + 0xd9, 0x8a, 0x32, 0xf0, 0x91, 0xdf, 0x20, 0x46, 0x94, 0xf8, 0x86, 0x10, + 0x31, 0xf0, 0x96, 0xd9, 0xa3, 0x6f, 0x20, 0x46, 0x52, 0x21, 0x9a, 0x8b, + 0x33, 0xf0, 0xbc, 0xd9, 0xa3, 0x6f, 0x50, 0x21, 0xda, 0x8b, 0x20, 0x46, + 0x33, 0xf0, 0xb6, 0xd9, 0x20, 0x46, 0x31, 0xf0, 0x19, 0xdc, 0x20, 0x46, + 0xff, 0xf7, 0xba, 0xff, 0x03, 0x23, 0x00, 0x93, 0x20, 0x46, 0x04, 0x21, + 0x08, 0x22, 0x00, 0x23, 0x32, 0xf0, 0x88, 0xdb, 0x20, 0x46, 0x02, 0xb0, + 0xbd, 0xe8, 0x70, 0x40, 0x30, 0xf0, 0x46, 0x9f, 0x2d, 0xe9, 0xf0, 0x41, + 0x17, 0x46, 0x04, 0x46, 0x0d, 0x46, 0xbd, 0xf8, 0x18, 0x20, 0x9d, 0xf8, + 0x1c, 0x60, 0x98, 0x46, 0x3b, 0xb1, 0x83, 0x68, 0x0c, 0x31, 0xdb, 0x6a, + 0x03, 0xeb, 0x41, 0x03, 0x99, 0x88, 0x71, 0x18, 0x99, 0x80, 0x4f, 0xf6, + 0xff, 0x73, 0x9a, 0x42, 0x03, 0xd0, 0x20, 0x46, 0xa8, 0x21, 0x33, 0xf0, + 0x87, 0xd9, 0x04, 0xeb, 0x85, 0x03, 0xd8, 0x68, 0x09, 0x4b, 0x39, 0x46, + 0x42, 0x46, 0x5b, 0x6a, 0x98, 0x47, 0x00, 0x28, 0x0a, 0xda, 0xb8, 0xf1, + 0x00, 0x0f, 0x07, 0xd0, 0xa3, 0x68, 0x0c, 0x35, 0xdb, 0x6a, 0x03, 0xeb, + 0x45, 0x05, 0xab, 0x88, 0x9e, 0x1b, 0xae, 0x80, 0xbd, 0xe8, 0xf0, 0x81, + 0xe0, 0xa6, 0x85, 0x00, 0x2d, 0xe9, 0xf0, 0x41, 0x04, 0x69, 0x86, 0xb0, + 0x4f, 0xf0, 0xff, 0x31, 0xa1, 0x4a, 0x06, 0x46, 0x20, 0x46, 0xe5, 0x6e, + 0x32, 0xf0, 0x30, 0xdb, 0xd4, 0xf8, 0xf8, 0x30, 0x20, 0x46, 0x19, 0x68, + 0xff, 0xf7, 0xa4, 0xfd, 0xa3, 0x6d, 0x2b, 0xb1, 0x03, 0x23, 0xa5, 0xf8, + 0xb4, 0x36, 0xff, 0x23, 0xa5, 0xf8, 0xb8, 0x36, 0xe3, 0x6c, 0xdb, 0x07, + 0x24, 0xd5, 0x97, 0x4b, 0x1a, 0x68, 0x0a, 0xbb, 0x01, 0x21, 0x19, 0x60, + 0x23, 0x6d, 0x20, 0x6e, 0x1f, 0x06, 0x03, 0xd5, 0x03, 0x21, 0x02, 0xf0, + 0xec, 0xfa, 0x17, 0xe0, 0x02, 0xf0, 0xe9, 0xfa, 0x23, 0x6d, 0x9a, 0x00, + 0x12, 0xd4, 0x20, 0x46, 0x92, 0x21, 0x32, 0xf0, 0x21, 0xde, 0x47, 0x00, + 0xbf, 0xb2, 0x5f, 0xb1, 0xce, 0x37, 0x39, 0x46, 0x20, 0x46, 0x32, 0xf0, + 0x19, 0xde, 0x40, 0xf0, 0x40, 0x02, 0x39, 0x46, 0x20, 0x46, 0x92, 0xb2, + 0x33, 0xf0, 0x2c, 0xd9, 0x4f, 0xf0, 0xff, 0x31, 0xc5, 0xf8, 0x28, 0x11, + 0x20, 0x46, 0x83, 0x4a, 0x32, 0xf0, 0xf2, 0xda, 0x82, 0x4f, 0x02, 0xe0, + 0x0a, 0x20, 0xfb, 0xf3, 0xa1, 0xf6, 0xd5, 0xf8, 0x28, 0x31, 0xdb, 0x07, + 0x01, 0xd4, 0x01, 0x3f, 0xf6, 0xd1, 0x30, 0x46, 0xd5, 0xf8, 0x28, 0x31, + 0xff, 0xf7, 0xa9, 0xfc, 0xd4, 0xf8, 0xf4, 0x30, 0x2b, 0xb9, 0x23, 0x6e, + 0x9a, 0x6a, 0x40, 0xf2, 0x94, 0x53, 0x9a, 0x42, 0x13, 0xd1, 0x20, 0x6e, + 0x76, 0x4a, 0x83, 0x6b, 0x9a, 0x18, 0x01, 0x2a, 0x07, 0xd9, 0x4a, 0xf6, + 0xe6, 0x02, 0x93, 0x42, 0x03, 0xd0, 0x4a, 0xf6, 0xe5, 0x02, 0x93, 0x42, + 0x05, 0xd1, 0x08, 0x23, 0x00, 0x21, 0x28, 0x22, 0x00, 0x93, 0x00, 0xf0, + 0x13, 0xda, 0x00, 0x21, 0x0a, 0x46, 0x20, 0x6e, 0x00, 0xf0, 0xf2, 0xd9, + 0xff, 0xf7, 0xfe, 0xfa, 0x01, 0x46, 0x20, 0x46, 0x31, 0xf0, 0xd8, 0xdb, + 0x20, 0x46, 0xff, 0xf7, 0x37, 0xfe, 0x4f, 0xf4, 0x80, 0x33, 0x00, 0x93, + 0x20, 0x46, 0x06, 0x23, 0x98, 0x21, 0x03, 0xaa, 0x31, 0xf0, 0x0c, 0xdf, + 0x33, 0x68, 0x93, 0xf8, 0x38, 0x30, 0xcb, 0xb1, 0x30, 0x46, 0x20, 0xf0, + 0xd5, 0xd9, 0x01, 0x28, 0x14, 0xd1, 0x00, 0x27, 0x05, 0x97, 0xb8, 0x46, + 0x0b, 0xe0, 0x4f, 0xf4, 0xc0, 0x23, 0x00, 0x93, 0x39, 0x46, 0x20, 0x46, + 0x05, 0xaa, 0x04, 0x23, 0x31, 0xf0, 0x1c, 0xdf, 0x08, 0xf1, 0x01, 0x08, + 0x24, 0x37, 0x33, 0x68, 0xdb, 0x69, 0x1b, 0x6a, 0x98, 0x45, 0xee, 0xd3, + 0x20, 0x46, 0x80, 0x21, 0x08, 0x22, 0x33, 0xf0, 0xbd, 0xd8, 0x20, 0x46, + 0x5c, 0x21, 0x0a, 0x22, 0x33, 0xf0, 0xb8, 0xd8, 0x4f, 0xf0, 0x80, 0x73, + 0x4d, 0x4a, 0xc5, 0xf8, 0x00, 0x31, 0x20, 0x46, 0x4c, 0x49, 0x32, 0xf0, + 0x7d, 0xda, 0x4f, 0xf0, 0x00, 0x43, 0xc5, 0xf8, 0x88, 0x31, 0x4f, 0xf0, + 0x00, 0x73, 0xc5, 0xf8, 0x8c, 0x31, 0x4f, 0xf4, 0x80, 0x43, 0xc5, 0xf8, + 0x28, 0x31, 0x4f, 0xf4, 0x80, 0x33, 0x6b, 0x62, 0x01, 0x21, 0x20, 0x46, + 0x32, 0xf0, 0x58, 0xda, 0x20, 0x6e, 0x02, 0xf0, 0xd7, 0xf9, 0x16, 0x21, + 0x30, 0x83, 0xb4, 0xf8, 0x44, 0x20, 0xa5, 0xf8, 0xa8, 0x06, 0x20, 0x46, + 0x33, 0xf0, 0x90, 0xd8, 0x20, 0x46, 0xc0, 0x21, 0xb4, 0xf8, 0x54, 0x20, + 0x33, 0xf0, 0x8a, 0xd8, 0x20, 0x46, 0xc2, 0x21, 0xb4, 0xf8, 0x56, 0x20, + 0x33, 0xf0, 0x84, 0xd8, 0x36, 0x4b, 0x20, 0x46, 0xc5, 0xf8, 0x60, 0x31, + 0xd5, 0xf8, 0x60, 0x31, 0xb4, 0xf8, 0x88, 0x30, 0x44, 0x21, 0xc5, 0xf8, + 0x64, 0x31, 0x32, 0x4b, 0xb4, 0xf8, 0x8c, 0x20, 0xc5, 0xf8, 0x60, 0x31, + 0xd5, 0xf8, 0x60, 0x31, 0xb4, 0xf8, 0x8a, 0x30, 0xc5, 0xf8, 0x64, 0x31, + 0x33, 0xf0, 0x6c, 0xd8, 0x20, 0x46, 0x46, 0x21, 0xb4, 0xf8, 0x8e, 0x20, + 0x33, 0xf0, 0x66, 0xd8, 0xb5, 0xf8, 0x88, 0x36, 0x1b, 0x05, 0x1b, 0x0d, + 0xa5, 0xf8, 0x88, 0x36, 0x01, 0x23, 0xa5, 0xf8, 0x9c, 0x36, 0x00, 0x25, + 0xb5, 0x64, 0x63, 0x19, 0xd8, 0x68, 0x10, 0xb1, 0x22, 0x4b, 0x5b, 0x68, + 0x98, 0x47, 0x04, 0x35, 0x18, 0x2d, 0xf6, 0xd1, 0x1f, 0x4d, 0xe0, 0x68, + 0x2b, 0x6d, 0x98, 0x47, 0xeb, 0x6e, 0xe0, 0x68, 0x98, 0x47, 0x30, 0x46, + 0xff, 0xf7, 0x06, 0xfe, 0x23, 0x6e, 0x9a, 0x6b, 0x4a, 0xf6, 0x62, 0x13, + 0x9a, 0x42, 0x1a, 0xd1, 0xe3, 0x6c, 0xd8, 0x07, 0x17, 0xd5, 0x23, 0x6d, + 0x19, 0x06, 0x14, 0xd4, 0x9a, 0x00, 0x12, 0xd4, 0x20, 0x46, 0x92, 0x21, + 0x32, 0xf0, 0x1c, 0xdd, 0x45, 0x00, 0xad, 0xb2, 0x5d, 0xb1, 0xce, 0x35, + 0x29, 0x46, 0x20, 0x46, 0x32, 0xf0, 0x14, 0xdd, 0x40, 0xf0, 0x40, 0x02, + 0x29, 0x46, 0x20, 0x46, 0x92, 0xb2, 0x33, 0xf0, 0x27, 0xd8, 0x06, 0xb0, + 0xbd, 0xe8, 0xf0, 0x81, 0x04, 0x04, 0x00, 0x04, 0xec, 0x07, 0x02, 0x00, + 0x02, 0x04, 0x02, 0x04, 0xa1, 0x86, 0x01, 0x00, 0x1d, 0x57, 0xff, 0xff, + 0x00, 0x00, 0x02, 0x40, 0x00, 0x00, 0x06, 0x40, 0x06, 0x00, 0x02, 0x00, + 0x07, 0x00, 0x02, 0x00, 0xe0, 0xa6, 0x85, 0x00, 0x2d, 0xe9, 0xf8, 0x43, + 0x90, 0xf8, 0xe9, 0x60, 0x04, 0x46, 0x0f, 0x46, 0x91, 0x46, 0x85, 0x68, + 0x16, 0xb9, 0x31, 0x46, 0x31, 0xf0, 0x46, 0xd8, 0xa8, 0x68, 0x04, 0xf0, + 0x41, 0xdd, 0x07, 0xf4, 0x70, 0x41, 0xa1, 0xf5, 0x80, 0x52, 0x51, 0x42, + 0x41, 0xeb, 0x02, 0x01, 0x80, 0x46, 0x20, 0x46, 0xff, 0xf7, 0x5a, 0xfa, + 0xa3, 0x6f, 0x39, 0x46, 0x58, 0x6a, 0x06, 0xf0, 0x24, 0xfc, 0xa3, 0x6f, + 0x58, 0x6a, 0x06, 0xf0, 0x00, 0xfa, 0x28, 0x46, 0xff, 0xf7, 0x7c, 0xfe, + 0xb9, 0xf1, 0x00, 0x0f, 0x04, 0xd0, 0x01, 0x21, 0x20, 0x46, 0x0a, 0x46, + 0x32, 0xf0, 0x1e, 0xda, 0x28, 0x46, 0x39, 0x46, 0xff, 0xf7, 0xfa, 0xfd, + 0xa8, 0x68, 0x41, 0x46, 0x04, 0xf0, 0x2e, 0xdd, 0xd4, 0xf8, 0xd4, 0x30, + 0x43, 0xf0, 0x04, 0x03, 0xc4, 0xf8, 0xd4, 0x30, 0x01, 0x23, 0xc4, 0xf8, + 0xd0, 0x30, 0x2e, 0xb9, 0x20, 0x46, 0x02, 0x21, 0xbd, 0xe8, 0xf8, 0x43, + 0x31, 0xf0, 0x0c, 0x98, 0xbd, 0xe8, 0xf8, 0x83, 0xd1, 0xf8, 0xcc, 0x30, + 0x73, 0xb5, 0x43, 0xf4, 0x00, 0x53, 0xc1, 0xf8, 0xcc, 0x30, 0x05, 0x46, + 0x0c, 0x46, 0x34, 0xf0, 0x55, 0xdc, 0x06, 0x46, 0x00, 0x28, 0x40, 0xf0, + 0x84, 0x80, 0xb5, 0xf8, 0x82, 0x31, 0x44, 0xf2, 0x21, 0x32, 0x93, 0x42, + 0x1f, 0xd0, 0x44, 0xf2, 0x13, 0x32, 0x93, 0x42, 0x1b, 0xd0, 0x44, 0xf2, + 0x1a, 0x32, 0x93, 0x42, 0x17, 0xd0, 0x44, 0xf2, 0x2a, 0x32, 0x93, 0x42, + 0x13, 0xd0, 0x44, 0xf2, 0x16, 0x32, 0x93, 0x42, 0x0f, 0xd0, 0x44, 0xf2, + 0x1d, 0x32, 0x93, 0x42, 0x0b, 0xd0, 0x44, 0xf2, 0x2d, 0x32, 0x93, 0x42, + 0x07, 0xd0, 0x44, 0xf2, 0x52, 0x32, 0x93, 0x42, 0x03, 0xd0, 0xab, 0x6b, + 0x5b, 0x7d, 0x00, 0x2b, 0x58, 0xd0, 0x2b, 0x6b, 0x93, 0xf8, 0xec, 0x30, + 0x43, 0xb1, 0xb5, 0xf8, 0x26, 0x36, 0x03, 0xf4, 0x40, 0x63, 0xb3, 0xf5, + 0x40, 0x6f, 0x14, 0xbf, 0x14, 0x23, 0x28, 0x23, 0x2a, 0x68, 0x92, 0xf8, + 0x46, 0x20, 0x12, 0xf0, 0x03, 0x02, 0x07, 0xd0, 0xd4, 0xf8, 0xcc, 0x20, + 0x02, 0xf4, 0x80, 0x52, 0xd2, 0xf1, 0x01, 0x02, 0x38, 0xbf, 0x00, 0x22, + 0x00, 0x92, 0x28, 0x46, 0x21, 0x46, 0x02, 0x22, 0x33, 0xf0, 0x9c, 0xdd, + 0x06, 0x46, 0x00, 0x28, 0x39, 0xd1, 0xd4, 0xf8, 0xf0, 0x12, 0x29, 0xb1, + 0xd5, 0xf8, 0x4c, 0x01, 0x44, 0xf0, 0x8a, 0xdb, 0xc4, 0xf8, 0xf0, 0x62, + 0xd5, 0xf8, 0x4c, 0x01, 0x21, 0x46, 0x44, 0xf0, 0x55, 0xdb, 0xc4, 0xf8, + 0xf0, 0x02, 0x00, 0x28, 0x25, 0xd0, 0xa3, 0x79, 0xbb, 0xb1, 0x94, 0xf8, + 0xf5, 0x32, 0x31, 0x2b, 0x0e, 0xd8, 0x2b, 0x68, 0x1b, 0x7e, 0x2b, 0xb1, + 0x28, 0x46, 0x94, 0xf8, 0xf4, 0x12, 0x0f, 0x4a, 0x1e, 0xf0, 0x3a, 0xdb, + 0xd5, 0xf8, 0x4c, 0x01, 0x94, 0xf8, 0xf4, 0x12, 0x44, 0xf0, 0x80, 0xda, + 0x94, 0xf8, 0xf5, 0x32, 0x84, 0xf8, 0xf4, 0x32, 0x0d, 0xe0, 0xd5, 0xf8, + 0x4c, 0x01, 0x04, 0xf5, 0x3d, 0x71, 0x02, 0xb0, 0xbd, 0xe8, 0x70, 0x40, + 0x44, 0xf0, 0x36, 0x9a, 0x6f, 0xf0, 0x0b, 0x06, 0x01, 0xe0, 0x6f, 0xf0, + 0x1a, 0x06, 0x30, 0x46, 0x02, 0xb0, 0x70, 0xbd, 0x32, 0x9e, 0x85, 0x00, + 0x2d, 0xe9, 0xf0, 0x41, 0x05, 0x46, 0x34, 0xf0, 0xc1, 0xdc, 0x2e, 0x46, + 0x80, 0x46, 0x05, 0xf1, 0x20, 0x07, 0xd6, 0xf8, 0x4c, 0x42, 0x6c, 0xb1, + 0xa3, 0x79, 0x5b, 0xb1, 0x44, 0x45, 0x09, 0xd0, 0x63, 0x79, 0x1b, 0xb1, + 0x28, 0x46, 0x21, 0x46, 0x34, 0xf0, 0x30, 0xd8, 0x28, 0x46, 0x21, 0x46, + 0x34, 0xf0, 0x08, 0xdb, 0x04, 0x36, 0xbe, 0x42, 0xeb, 0xd1, 0xbd, 0xe8, + 0xf0, 0x81, 0x2d, 0xe9, 0xf3, 0x47, 0x0a, 0x9e, 0x80, 0x46, 0x0f, 0x46, + 0x91, 0x46, 0x1d, 0x46, 0xdd, 0xf8, 0x2c, 0xa0, 0xd0, 0xf8, 0xb8, 0x40, + 0x23, 0xe0, 0x63, 0x68, 0x1a, 0xea, 0x03, 0x0f, 0x1e, 0xd0, 0xdb, 0x05, + 0x07, 0xd5, 0x04, 0xf1, 0x0a, 0x01, 0x22, 0x7a, 0x63, 0x7a, 0x28, 0x46, + 0x00, 0x91, 0x31, 0x46, 0x0d, 0xe0, 0x2f, 0xb1, 0x40, 0x46, 0x49, 0x46, + 0x04, 0xf1, 0x08, 0x02, 0xb8, 0x47, 0x48, 0xb1, 0x04, 0xf1, 0x0a, 0x02, + 0x63, 0x7a, 0x28, 0x46, 0x00, 0x92, 0x31, 0x46, 0xdd, 0x22, 0x21, 0xf0, + 0x83, 0xd9, 0x00, 0xe0, 0x28, 0x46, 0x2d, 0x1a, 0x76, 0x19, 0x05, 0x46, + 0x24, 0x68, 0x00, 0x2c, 0xd9, 0xd1, 0x28, 0x46, 0xbd, 0xe8, 0xfc, 0x87, + 0x2d, 0xe9, 0xf0, 0x4f, 0xd1, 0xf8, 0xd4, 0x32, 0x87, 0xb0, 0xb3, 0xf8, + 0x32, 0xb0, 0x8b, 0x79, 0x05, 0x46, 0x0e, 0x46, 0xd0, 0xf8, 0x0c, 0x80, + 0xd0, 0xf8, 0x4c, 0x91, 0x00, 0x2b, 0x00, 0xf0, 0x9f, 0x80, 0x4f, 0xf0, + 0x00, 0x0a, 0x54, 0x46, 0x05, 0xeb, 0x0a, 0x03, 0xd3, 0xf8, 0x4c, 0x72, + 0x7f, 0xb1, 0xbb, 0x79, 0x6b, 0xb9, 0xfb, 0x79, 0x5b, 0xb1, 0xd7, 0xf8, + 0xd4, 0x32, 0x58, 0x8e, 0xf8, 0xf3, 0xa2, 0xf1, 0x04, 0x46, 0x58, 0x46, + 0xf8, 0xf3, 0x9e, 0xf1, 0x84, 0x42, 0x3c, 0x46, 0x06, 0xd1, 0x0a, 0xf1, + 0x04, 0x0a, 0xba, 0xf1, 0x20, 0x0f, 0xe5, 0xd1, 0x00, 0x2c, 0x7f, 0xd0, + 0xd4, 0xf8, 0xd4, 0x32, 0x58, 0x8e, 0xf8, 0xf3, 0x8f, 0xf1, 0x07, 0x46, + 0x58, 0x46, 0xf8, 0xf3, 0x8b, 0xf1, 0x87, 0x42, 0x05, 0xd0, 0xd4, 0xf8, + 0xd4, 0x22, 0xd6, 0xf8, 0xd4, 0x32, 0xd2, 0x8d, 0xda, 0x85, 0x28, 0x46, + 0x04, 0xa9, 0x05, 0xaa, 0x1b, 0xf0, 0x26, 0xd9, 0x21, 0x46, 0xd5, 0xf8, + 0x4c, 0x01, 0x44, 0xf0, 0x7d, 0xd9, 0x18, 0x27, 0x47, 0x43, 0xd5, 0xf8, + 0x4c, 0x01, 0x07, 0xf1, 0x3a, 0x01, 0x44, 0xf0, 0x5f, 0xde, 0x38, 0xb9, + 0x05, 0x9a, 0x04, 0x9b, 0x48, 0x46, 0x21, 0x46, 0x8d, 0xe8, 0x0c, 0x00, + 0x03, 0xf0, 0xc0, 0xff, 0xd5, 0xf8, 0x4c, 0x01, 0x07, 0xf1, 0x40, 0x01, + 0x44, 0xf0, 0x50, 0xde, 0xd4, 0xf8, 0xd4, 0x32, 0x04, 0x99, 0xdd, 0x8d, + 0x40, 0x01, 0xad, 0x02, 0xcd, 0x42, 0x02, 0x90, 0x03, 0xd3, 0xa8, 0x42, + 0x0a, 0xd3, 0x00, 0xe0, 0x10, 0x46, 0x21, 0xf0, 0x7f, 0x43, 0x23, 0xf4, + 0x60, 0x03, 0x98, 0x42, 0x00, 0xeb, 0x05, 0x02, 0xf6, 0xd3, 0x02, 0x90, + 0x03, 0xaa, 0x02, 0xab, 0x05, 0x98, 0x05, 0xf0, 0xe0, 0xfb, 0x20, 0x46, + 0x1a, 0xf0, 0x82, 0xdb, 0x02, 0xa9, 0x03, 0x46, 0x00, 0x22, 0x03, 0xa8, + 0x1f, 0xf0, 0x8a, 0xdf, 0xd6, 0xf8, 0xd4, 0x32, 0x6d, 0x08, 0xdc, 0x8d, + 0x03, 0xa8, 0x2b, 0x46, 0xa4, 0x02, 0x02, 0xa9, 0x00, 0x22, 0x1f, 0xf0, + 0x99, 0xdf, 0x01, 0x26, 0x23, 0x46, 0x01, 0xe0, 0x01, 0x36, 0x1b, 0x19, + 0xab, 0x42, 0xfb, 0xd3, 0x03, 0xa8, 0x02, 0xa9, 0x00, 0x22, 0x1f, 0xf0, + 0x8d, 0xdf, 0x02, 0x9b, 0x05, 0xa8, 0x04, 0xa9, 0x03, 0x9a, 0x1f, 0xf0, + 0x87, 0xdf, 0x04, 0x9b, 0x01, 0x36, 0xc8, 0xf8, 0x80, 0x31, 0x05, 0x9b, + 0xc8, 0xf8, 0x84, 0x31, 0xa3, 0x01, 0x74, 0x43, 0xc8, 0xf8, 0x88, 0x31, + 0xc8, 0xf8, 0x8c, 0x41, 0x07, 0xb0, 0xbd, 0xe8, 0xf0, 0x8f, 0x00, 0x20, + 0x10, 0x60, 0x70, 0x47, 0x05, 0xf0, 0x0e, 0xbd, 0x08, 0xb5, 0x05, 0xf0, + 0xf1, 0xfc, 0xc0, 0xb2, 0x08, 0xbd, 0x08, 0x46, 0x11, 0x46, 0x05, 0xf0, + 0x55, 0xbd, 0x00, 0x00, 0x2d, 0xe9, 0xf8, 0x4f, 0x05, 0x46, 0x0f, 0x46, + 0x46, 0x68, 0x00, 0x21, 0x10, 0x46, 0x14, 0x46, 0xc9, 0x22, 0xf7, 0xf3, + 0x05, 0xf0, 0x28, 0x46, 0x39, 0x46, 0x3b, 0xf0, 0xaf, 0xd9, 0x70, 0xb9, + 0x96, 0xf8, 0x50, 0x37, 0x00, 0x2b, 0x01, 0xf0, 0x31, 0x80, 0x06, 0xf5, + 0xaa, 0x61, 0x30, 0x46, 0x0e, 0x31, 0x3a, 0xf0, 0xfd, 0xdb, 0x80, 0x46, + 0x18, 0xb9, 0xbd, 0xe8, 0xf8, 0x8f, 0xd5, 0xf8, 0x10, 0x80, 0xfd, 0xb2, + 0x07, 0xf4, 0x70, 0x47, 0xa7, 0xf5, 0x80, 0x5e, 0xde, 0xf1, 0x00, 0x07, + 0x98, 0xf8, 0x00, 0x00, 0x47, 0xeb, 0x0e, 0x07, 0x05, 0xf0, 0x16, 0xfc, + 0x0e, 0x37, 0x56, 0xf8, 0x27, 0x70, 0x06, 0x46, 0x98, 0xf8, 0x02, 0x00, + 0x05, 0xf0, 0x26, 0xfc, 0x96, 0xf8, 0x11, 0xc0, 0x03, 0x46, 0x1c, 0xf0, + 0x01, 0x0c, 0x97, 0xf8, 0x04, 0x11, 0x02, 0xd0, 0x4f, 0xfa, 0x81, 0xfc, + 0x04, 0xe0, 0x49, 0xb2, 0x18, 0x29, 0xc8, 0xbf, 0xa1, 0xf1, 0x18, 0x0c, + 0x97, 0x4a, 0x96, 0x42, 0x06, 0xd0, 0x97, 0x4a, 0x96, 0x42, 0x06, 0xd0, + 0x96, 0x4a, 0x96, 0x42, 0x05, 0xd1, 0x02, 0xe0, 0x52, 0x20, 0x58, 0x22, + 0x03, 0xe0, 0x58, 0x20, 0x00, 0xe0, 0x7f, 0x20, 0x02, 0x46, 0x39, 0x68, + 0x02, 0x29, 0x69, 0xd1, 0x01, 0x2d, 0x04, 0xd9, 0x0a, 0x2d, 0x8c, 0xbf, + 0x02, 0x21, 0x01, 0x21, 0x00, 0xe0, 0x00, 0x21, 0xdf, 0xf8, 0x40, 0x82, + 0x71, 0x18, 0x46, 0x45, 0x91, 0xf9, 0x06, 0x10, 0x02, 0xd1, 0x0b, 0x2d, + 0x12, 0xd1, 0x47, 0xe0, 0xdf, 0xf8, 0x30, 0x82, 0x46, 0x45, 0x03, 0xd1, + 0x0e, 0x2d, 0x08, 0xbf, 0x36, 0x21, 0x44, 0xe0, 0xdf, 0xf8, 0x24, 0x82, + 0x46, 0x45, 0x03, 0xd0, 0xdf, 0xf8, 0x20, 0x82, 0x46, 0x45, 0x05, 0xd1, + 0x0b, 0x2d, 0x37, 0xd0, 0x0e, 0x2d, 0x08, 0xbf, 0x40, 0x21, 0x36, 0xe0, + 0xdf, 0xf8, 0x10, 0x82, 0x46, 0x45, 0x03, 0xd1, 0x0e, 0x2d, 0x08, 0xbf, + 0x2a, 0x21, 0x2e, 0xe0, 0xdf, 0xf8, 0x04, 0x82, 0x46, 0x45, 0x05, 0xd1, + 0x02, 0x2d, 0x27, 0xd0, 0x0a, 0x2d, 0x08, 0xbf, 0x54, 0x21, 0x24, 0xe0, + 0xdf, 0xf8, 0xf4, 0x81, 0x46, 0x45, 0x03, 0xd1, 0x0a, 0x2d, 0x08, 0xbf, + 0x50, 0x21, 0x1c, 0xe0, 0xdf, 0xf8, 0xe8, 0x81, 0x46, 0x45, 0x03, 0xd1, + 0x0e, 0x2d, 0x08, 0xbf, 0x28, 0x21, 0x14, 0xe0, 0xdf, 0xf8, 0xdc, 0x81, + 0x46, 0x45, 0x03, 0xd1, 0x0b, 0x2d, 0x08, 0xbf, 0x3e, 0x21, 0x0c, 0xe0, + 0xdf, 0xf8, 0xd0, 0x81, 0x46, 0x45, 0x08, 0xd1, 0x0c, 0x2d, 0x08, 0xbf, + 0x44, 0x21, 0x04, 0xe0, 0x4c, 0x21, 0x02, 0xe0, 0x40, 0x21, 0x00, 0xe0, + 0x58, 0x21, 0xcc, 0xeb, 0x01, 0x01, 0x21, 0xea, 0xe1, 0x71, 0x91, 0x42, + 0xa8, 0xbf, 0x11, 0x46, 0x21, 0x70, 0x61, 0x70, 0xa1, 0x70, 0xe1, 0x70, + 0x5b, 0x4a, 0x96, 0x42, 0x08, 0xd0, 0x5b, 0x4a, 0x96, 0x42, 0x05, 0xd0, + 0x5a, 0x4a, 0x96, 0x42, 0x02, 0xd0, 0x5a, 0x4a, 0x96, 0x42, 0x08, 0xd1, + 0x97, 0xf9, 0x04, 0xc1, 0xbc, 0xf1, 0x18, 0x0f, 0xcc, 0xbf, 0xac, 0xf1, + 0x18, 0x0c, 0x4f, 0xf0, 0x00, 0x0c, 0x39, 0x68, 0x02, 0x29, 0x40, 0xf0, + 0x44, 0x81, 0x01, 0x2d, 0x04, 0xd9, 0x0a, 0x2d, 0x8c, 0xbf, 0x05, 0x22, + 0x04, 0x22, 0x00, 0xe0, 0x03, 0x22, 0xdf, 0xf8, 0x3c, 0x81, 0xb2, 0x18, + 0x46, 0x45, 0x92, 0xf9, 0x06, 0x20, 0x03, 0xd1, 0x0b, 0x2d, 0x08, 0xbf, + 0x42, 0x22, 0x4f, 0xe1, 0xdf, 0xf8, 0x4c, 0x81, 0x46, 0x45, 0x06, 0xd1, + 0x02, 0x2d, 0x00, 0xf0, 0x3e, 0x81, 0x0a, 0x2d, 0x08, 0xbf, 0x4a, 0x22, + 0x44, 0xe1, 0xdf, 0xf8, 0x14, 0x81, 0x46, 0x45, 0x03, 0xd1, 0x0b, 0x2d, + 0x08, 0xbf, 0x46, 0x22, 0x3c, 0xe1, 0xdf, 0xf8, 0x08, 0x81, 0x46, 0x45, + 0x03, 0xd0, 0xdf, 0xf8, 0x04, 0x81, 0x46, 0x45, 0x03, 0xd1, 0x0b, 0x2d, + 0x08, 0xbf, 0x40, 0x22, 0x30, 0xe1, 0xdf, 0xf8, 0x14, 0x81, 0x46, 0x45, + 0x03, 0xd0, 0xdf, 0xf8, 0x10, 0x81, 0x46, 0x45, 0x03, 0xd1, 0x0d, 0x2d, + 0x08, 0xbf, 0x2e, 0x22, 0x24, 0xe1, 0xdf, 0xf8, 0x04, 0x81, 0x46, 0x45, + 0x06, 0xd1, 0x0b, 0x2d, 0x00, 0xf0, 0xc8, 0x80, 0x0d, 0x2d, 0x08, 0xbf, + 0x40, 0x22, 0x19, 0xe1, 0xdf, 0xf8, 0xb0, 0x80, 0x46, 0x45, 0x00, 0xf0, + 0x97, 0x80, 0xdf, 0xf8, 0xc0, 0x80, 0x46, 0x45, 0x03, 0xd1, 0x0b, 0x2d, + 0x08, 0xbf, 0x3e, 0x22, 0x0c, 0xe1, 0xdf, 0xf8, 0xb4, 0x80, 0x46, 0x45, + 0x1d, 0xd0, 0xdf, 0xf8, 0xb0, 0x80, 0x46, 0x45, 0x06, 0xd1, 0x02, 0x2d, + 0x00, 0xf0, 0xf9, 0x80, 0x0a, 0x2d, 0x08, 0xbf, 0x4c, 0x22, 0xfd, 0xe0, + 0xdf, 0xf8, 0xb8, 0x80, 0x46, 0x45, 0x06, 0xd1, 0x02, 0x2d, 0x00, 0xf0, + 0xf0, 0x80, 0x0a, 0x2d, 0x08, 0xbf, 0x48, 0x22, 0xf2, 0xe0, 0xdf, 0xf8, + 0xa8, 0x80, 0x46, 0x45, 0x03, 0xd0, 0xdf, 0xf8, 0xa4, 0x80, 0x46, 0x45, + 0x06, 0xd1, 0x02, 0x2d, 0x00, 0xf0, 0xe3, 0x80, 0x0a, 0x2d, 0x08, 0xbf, + 0x50, 0x22, 0xe3, 0xe0, 0xdf, 0xf8, 0x90, 0x80, 0x46, 0x45, 0x0c, 0xd1, + 0x02, 0x2d, 0x00, 0xf0, 0xdc, 0x80, 0x0a, 0x2d, 0x00, 0xf0, 0xd9, 0x80, + 0x03, 0x2d, 0x00, 0xf0, 0xd4, 0x80, 0x09, 0x2d, 0x08, 0xbf, 0x46, 0x22, + 0xd2, 0xe0, 0xdf, 0xf8, 0x74, 0x80, 0x46, 0x45, 0x38, 0xd1, 0x0a, 0x2d, + 0x08, 0xbf, 0x42, 0x22, 0xca, 0xe0, 0x00, 0xbf, 0xbc, 0x10, 0x86, 0x00, + 0xf0, 0x10, 0x86, 0x00, 0x24, 0x11, 0x86, 0x00, 0x34, 0x0d, 0x86, 0x00, + 0x5c, 0x0d, 0x86, 0x00, 0x80, 0x11, 0x86, 0x00, 0xfc, 0x0d, 0x86, 0x00, + 0x40, 0x09, 0x86, 0x00, 0x60, 0xbf, 0x01, 0x00, 0xbc, 0x0c, 0x86, 0x00, + 0xd0, 0x0c, 0x86, 0x00, 0x70, 0x0d, 0x86, 0x00, 0x7c, 0x09, 0x86, 0x00, + 0x90, 0x09, 0x86, 0x00, 0x84, 0x0d, 0x86, 0x00, 0xfc, 0xbf, 0x01, 0x00, + 0xd4, 0xc1, 0x01, 0x00, 0xc0, 0xc1, 0x01, 0x00, 0xe4, 0x0c, 0x86, 0x00, + 0x0c, 0x0d, 0x86, 0x00, 0x20, 0xc7, 0x01, 0x00, 0xcc, 0x09, 0x86, 0x00, + 0xa4, 0x09, 0x86, 0x00, 0xb8, 0x09, 0x86, 0x00, 0xf4, 0x09, 0x86, 0x00, + 0x18, 0x09, 0x86, 0x00, 0xdf, 0xf8, 0xb8, 0x84, 0x46, 0x45, 0x05, 0xd1, + 0xa5, 0xf1, 0x0c, 0x06, 0x01, 0x2e, 0x98, 0xbf, 0x3c, 0x22, 0x8b, 0xe0, + 0xdf, 0xf8, 0xa8, 0x84, 0x46, 0x45, 0x03, 0xd1, 0x0b, 0x2d, 0x88, 0xbf, + 0x40, 0x22, 0x83, 0xe0, 0xdf, 0xf8, 0x9c, 0x84, 0x46, 0x45, 0x05, 0xd1, + 0x0c, 0x2d, 0x7c, 0xd0, 0x0d, 0x2d, 0x08, 0xbf, 0x38, 0x22, 0x79, 0xe0, + 0xdf, 0xf8, 0x8c, 0x84, 0x46, 0x45, 0x05, 0xd1, 0x02, 0x2d, 0x72, 0xd0, + 0x0a, 0x2d, 0x08, 0xbf, 0x3c, 0x22, 0x6f, 0xe0, 0xdf, 0xf8, 0x7c, 0x84, + 0x46, 0x45, 0x03, 0xd1, 0x0b, 0x2d, 0x08, 0xbf, 0x38, 0x22, 0x67, 0xe0, + 0xdf, 0xf8, 0x70, 0x84, 0x46, 0x45, 0x03, 0xd1, 0x0b, 0x2d, 0x08, 0xbf, + 0x32, 0x22, 0x5f, 0xe0, 0xdf, 0xf8, 0x64, 0x84, 0x46, 0x45, 0x07, 0xd1, + 0x0b, 0x2d, 0x03, 0xd0, 0x0c, 0x2d, 0x08, 0xbf, 0x4a, 0x22, 0x55, 0xe0, + 0x38, 0x22, 0x53, 0xe0, 0xdf, 0xf8, 0x50, 0x84, 0x46, 0x45, 0x05, 0xd1, + 0x0c, 0x2d, 0x4a, 0xd0, 0x0d, 0x2d, 0x08, 0xbf, 0x3a, 0x22, 0x49, 0xe0, + 0xdf, 0xf8, 0x40, 0x84, 0x46, 0x45, 0x05, 0xd1, 0xa5, 0xf1, 0x0b, 0x06, + 0x01, 0x2e, 0x98, 0xbf, 0x4a, 0x22, 0x3f, 0xe0, 0xdf, 0xf8, 0x30, 0x84, + 0x46, 0x45, 0x03, 0xd1, 0x0b, 0x2d, 0x08, 0xbf, 0x3c, 0x22, 0x37, 0xe0, + 0xdf, 0xf8, 0x24, 0x84, 0x46, 0x45, 0x05, 0xd1, 0x0c, 0x2d, 0x28, 0xd0, + 0x0d, 0x2d, 0x08, 0xbf, 0x44, 0x22, 0x2d, 0xe0, 0xdf, 0xf8, 0x14, 0x84, + 0x46, 0x45, 0x29, 0xd1, 0x6e, 0x1e, 0x0d, 0x2e, 0x26, 0xd8, 0xdf, 0xf8, + 0x0c, 0x84, 0x18, 0xf8, 0x06, 0x60, 0x00, 0x2e, 0x18, 0xbf, 0x32, 0x46, + 0x1e, 0xe0, 0x33, 0x2d, 0x08, 0xd9, 0x3d, 0x2d, 0x08, 0xd9, 0x63, 0x2d, + 0x08, 0xd9, 0x94, 0x2d, 0x8c, 0xbf, 0x04, 0x22, 0x03, 0x22, 0x04, 0xe0, + 0x00, 0x22, 0x02, 0xe0, 0x01, 0x22, 0x00, 0xe0, 0x02, 0x22, 0xb6, 0x18, + 0x96, 0xf9, 0x06, 0x20, 0x0a, 0xe0, 0x4a, 0x22, 0x08, 0xe0, 0x4c, 0x22, + 0x06, 0xe0, 0x48, 0x22, 0x04, 0xe0, 0x50, 0x22, 0x02, 0xe0, 0x46, 0x22, + 0x00, 0xe0, 0x40, 0x22, 0xcc, 0xeb, 0x02, 0x02, 0x22, 0xea, 0xe2, 0x72, + 0x82, 0x42, 0xa8, 0xbf, 0x02, 0x46, 0x02, 0x29, 0x03, 0xd1, 0x21, 0x78, + 0x8a, 0x42, 0xa8, 0xbf, 0x0a, 0x46, 0x22, 0x71, 0x62, 0x71, 0xa2, 0x71, + 0xe2, 0x71, 0x22, 0x72, 0x62, 0x72, 0xa2, 0x72, 0xe2, 0x72, 0xa4, 0x46, + 0x21, 0x46, 0x00, 0x20, 0x00, 0x26, 0x01, 0x30, 0x81, 0xf8, 0x34, 0x60, + 0x0a, 0x73, 0x81, 0xf8, 0x3c, 0x60, 0x01, 0x31, 0x08, 0x28, 0xf5, 0xd1, + 0x18, 0x7f, 0x97, 0xf8, 0x04, 0x21, 0x10, 0xf0, 0x01, 0x00, 0x01, 0xd0, + 0x50, 0xb2, 0x04, 0xe0, 0x52, 0xb2, 0x18, 0x2a, 0xc8, 0xbf, 0xa2, 0xf1, + 0x18, 0x00, 0x3a, 0x68, 0x02, 0x2a, 0x01, 0xd1, 0x6e, 0x1e, 0x0f, 0xe0, + 0x33, 0x2d, 0x08, 0xd9, 0x3d, 0x2d, 0x08, 0xd9, 0x63, 0x2d, 0x08, 0xd9, + 0x94, 0x2d, 0x8c, 0xbf, 0x04, 0x26, 0x03, 0x26, 0x04, 0xe0, 0x00, 0x26, + 0x02, 0xe0, 0x01, 0x26, 0x00, 0xe0, 0x02, 0x26, 0x9a, 0x57, 0x9e, 0x19, + 0x96, 0xf9, 0x0e, 0x10, 0x96, 0x4e, 0xb3, 0x42, 0x05, 0xd1, 0xa5, 0xf1, + 0x64, 0x06, 0x02, 0x2e, 0x98, 0xbf, 0x3e, 0x21, 0x06, 0xe0, 0x93, 0x4e, + 0xb3, 0x42, 0x03, 0xd1, 0x64, 0x2d, 0x08, 0xbf, 0x38, 0x22, 0x08, 0xe0, + 0x90, 0x4e, 0xb3, 0x42, 0x05, 0xd1, 0xa5, 0xf1, 0x64, 0x06, 0x02, 0x2e, + 0x98, 0xbf, 0x3e, 0x21, 0x02, 0xe0, 0x8d, 0x4e, 0xb3, 0x42, 0x0e, 0xd0, + 0x8c, 0x4e, 0xb3, 0x42, 0x0b, 0xd0, 0x8c, 0x4e, 0xb3, 0x42, 0x08, 0xd0, + 0x8b, 0x4e, 0xb3, 0x42, 0x05, 0xd0, 0x8b, 0x4e, 0xb3, 0x42, 0x02, 0xd0, + 0x8a, 0x4e, 0xb3, 0x42, 0x17, 0xd1, 0xa5, 0xf1, 0x68, 0x06, 0x24, 0x2e, + 0x13, 0xd8, 0x84, 0x4a, 0x93, 0x42, 0x0e, 0xd0, 0x83, 0x4a, 0x93, 0x42, + 0x0b, 0xd0, 0x84, 0x4a, 0x93, 0x42, 0x08, 0xd0, 0x7e, 0x4a, 0x93, 0x42, + 0x11, 0xd0, 0x80, 0x4a, 0x93, 0x42, 0x0e, 0xd0, 0x4a, 0x21, 0x44, 0x22, + 0x01, 0xe0, 0x4a, 0x21, 0x42, 0x22, 0x7e, 0x4e, 0xb3, 0x42, 0x0b, 0xd1, + 0xa5, 0xf1, 0x68, 0x06, 0x20, 0x2e, 0x05, 0xd9, 0x8c, 0x2d, 0x20, 0xd1, + 0x0f, 0xe0, 0x44, 0x21, 0x0a, 0x46, 0x01, 0xe0, 0x40, 0x21, 0x44, 0x22, + 0x77, 0x4e, 0xb3, 0x42, 0x0c, 0xd1, 0x64, 0x2d, 0x08, 0xd0, 0xa5, 0xf1, + 0x68, 0x06, 0x0c, 0x2e, 0x40, 0xf2, 0x58, 0x85, 0x2e, 0xe0, 0x36, 0x21, + 0x0a, 0x46, 0x01, 0xe0, 0x34, 0x21, 0x40, 0x22, 0x70, 0x4e, 0xb3, 0x42, + 0x07, 0xd1, 0xa5, 0xf1, 0x64, 0x06, 0x10, 0x2e, 0x98, 0xbf, 0x42, 0x21, + 0x98, 0xbf, 0x52, 0x22, 0x1e, 0xe0, 0x6c, 0x4e, 0xb3, 0x42, 0x1b, 0xd1, + 0xa5, 0xf1, 0x64, 0x06, 0x08, 0x2e, 0x98, 0xbf, 0x30, 0x21, 0xa5, 0xf1, + 0x6e, 0x06, 0x98, 0xbf, 0x34, 0x22, 0x16, 0x2e, 0x98, 0xbf, 0x46, 0x21, + 0xa5, 0xf1, 0x86, 0x06, 0x02, 0x2e, 0x05, 0xd9, 0x8c, 0x2d, 0x08, 0xbf, + 0x48, 0x21, 0x08, 0xbf, 0x36, 0x22, 0x00, 0xe0, 0x3e, 0x21, 0xa5, 0xf1, + 0x95, 0x06, 0x0f, 0x2e, 0x98, 0xbf, 0x44, 0x22, 0x5d, 0x4e, 0xb3, 0x42, + 0xb3, 0x46, 0x12, 0xd1, 0xa5, 0xf1, 0x6e, 0x06, 0x16, 0x2e, 0xa5, 0xf1, + 0x86, 0x06, 0x98, 0xbf, 0x44, 0x21, 0x98, 0xbf, 0x3a, 0x22, 0x02, 0x2e, + 0x05, 0xd9, 0x8c, 0x2d, 0x08, 0xbf, 0x48, 0x21, 0x08, 0xbf, 0x36, 0x22, + 0x01, 0xe0, 0x3e, 0x21, 0x3a, 0x22, 0x53, 0x4e, 0xb3, 0x42, 0x02, 0xd0, + 0x52, 0x4e, 0xb3, 0x42, 0x04, 0xd1, 0xa5, 0xf1, 0x84, 0x06, 0x08, 0x2e, + 0x98, 0xbf, 0x2c, 0x22, 0x4f, 0x4e, 0xb3, 0x42, 0x02, 0xd1, 0x26, 0x2d, + 0x08, 0xbf, 0x2c, 0x21, 0x12, 0x1a, 0x08, 0x1a, 0x22, 0xea, 0xe2, 0x72, + 0x20, 0xea, 0xe0, 0x70, 0x21, 0x46, 0x00, 0x27, 0x0e, 0x79, 0x01, 0x37, + 0x01, 0x31, 0xce, 0x74, 0x00, 0x26, 0x08, 0x2f, 0x81, 0xf8, 0x43, 0x60, + 0xf6, 0xd1, 0x21, 0x46, 0x01, 0x36, 0x0a, 0x77, 0x81, 0xf8, 0x4c, 0x00, + 0x01, 0x31, 0x08, 0x2e, 0xf8, 0xd1, 0x41, 0x4f, 0xbb, 0x42, 0x00, 0xf0, + 0xf4, 0x80, 0x40, 0x49, 0x8b, 0x42, 0x00, 0xf0, 0xf0, 0x80, 0x3f, 0x49, + 0x8b, 0x42, 0x00, 0xf0, 0xec, 0x80, 0x3e, 0x49, 0x8b, 0x42, 0x00, 0xf0, + 0xe8, 0x80, 0x3d, 0x49, 0x8b, 0x42, 0x00, 0xf0, 0xe4, 0x80, 0x3c, 0x49, + 0x8b, 0x42, 0x00, 0xf0, 0xb5, 0x80, 0x3b, 0x49, 0x8b, 0x42, 0x00, 0xf0, + 0xdc, 0x80, 0x3a, 0x49, 0x8b, 0x42, 0x00, 0xf0, 0xd8, 0x80, 0x39, 0x49, + 0x8b, 0x42, 0x00, 0xf0, 0xd4, 0x80, 0x38, 0x49, 0x8b, 0x42, 0x00, 0xf0, + 0xd0, 0x80, 0x37, 0x49, 0x8b, 0x42, 0x00, 0xf0, 0xcc, 0x80, 0x36, 0x49, + 0x8b, 0x42, 0x00, 0xf0, 0xc8, 0x80, 0x35, 0x49, 0x8b, 0x42, 0x00, 0xf0, + 0xc4, 0x80, 0x34, 0x49, 0x8b, 0x42, 0x00, 0xf0, 0xc0, 0x80, 0x33, 0x49, + 0x8b, 0x42, 0x00, 0xf0, 0xbc, 0x80, 0x32, 0x49, 0x8b, 0x42, 0x00, 0xf0, + 0xb8, 0x80, 0x31, 0x49, 0x8b, 0x42, 0x00, 0xf0, 0xb4, 0x80, 0x30, 0x49, + 0x8b, 0x42, 0x00, 0xf0, 0xb0, 0x80, 0x2f, 0x49, 0x8b, 0x42, 0x00, 0xf0, + 0xac, 0x80, 0x2e, 0x49, 0x8b, 0x42, 0x00, 0xf0, 0xa8, 0x80, 0x2d, 0x49, + 0x8b, 0x42, 0x00, 0xf0, 0xa4, 0x80, 0x2c, 0x49, 0x8b, 0x42, 0x00, 0xf0, + 0xa0, 0x80, 0x2b, 0x49, 0x8b, 0x42, 0x00, 0xf0, 0x9c, 0x80, 0x2a, 0x49, + 0x8b, 0x42, 0x40, 0xf0, 0xd1, 0x80, 0x96, 0xe0, 0xb5, 0x08, 0x86, 0x00, + 0x7f, 0xc6, 0x01, 0x00, 0xd2, 0x08, 0x86, 0x00, 0xdc, 0x05, 0x86, 0x00, + 0x2e, 0x05, 0x86, 0x00, 0x4b, 0x05, 0x86, 0x00, 0x68, 0x05, 0x86, 0x00, + 0x85, 0x05, 0x86, 0x00, 0x33, 0x06, 0x86, 0x00, 0xf9, 0x05, 0x86, 0x00, + 0x6d, 0x06, 0x86, 0x00, 0x8a, 0x06, 0x86, 0x00, 0xa2, 0x05, 0x86, 0x00, + 0xbf, 0x05, 0x86, 0x00, 0x2c, 0x07, 0x86, 0x00, 0xf4, 0x04, 0x86, 0x00, + 0x50, 0xc5, 0x01, 0x00, 0x7e, 0x0a, 0x86, 0x00, 0x9b, 0x0a, 0x86, 0x00, + 0xb8, 0x0a, 0x86, 0x00, 0xf2, 0x0a, 0x86, 0x00, 0xbd, 0x0b, 0x86, 0x00, + 0x98, 0x0e, 0x86, 0x00, 0x74, 0xbf, 0x01, 0x00, 0xab, 0xc3, 0x01, 0x00, + 0xcb, 0xbf, 0x01, 0x00, 0xa0, 0xc1, 0x01, 0x00, 0x41, 0xc2, 0x01, 0x00, + 0x24, 0xc2, 0x01, 0x00, 0x63, 0x0f, 0x86, 0x00, 0x14, 0x10, 0x86, 0x00, + 0xb5, 0x0e, 0x86, 0x00, 0x61, 0xc0, 0x01, 0x00, 0x7e, 0xc0, 0x01, 0x00, + 0x2c, 0xc1, 0x01, 0x00, 0x49, 0xc1, 0x01, 0x00, 0xf2, 0xc0, 0x01, 0x00, + 0x0f, 0xc1, 0x01, 0x00, 0x66, 0xc1, 0x01, 0x00, 0x83, 0xc1, 0x01, 0x00, + 0x88, 0x0c, 0x86, 0x00, 0x84, 0x0d, 0x86, 0x00, 0x98, 0x0d, 0x86, 0x00, + 0x38, 0x11, 0x86, 0x00, 0x68, 0x09, 0x86, 0x00, 0xfc, 0xbf, 0x01, 0x00, + 0xe8, 0xbf, 0x01, 0x00, 0x30, 0xc0, 0x01, 0x00, 0xd4, 0xc1, 0x01, 0x00, + 0x38, 0xc4, 0x01, 0x00, 0xe8, 0xc1, 0x01, 0x00, 0xfc, 0xc1, 0x01, 0x00, + 0x34, 0xc7, 0x01, 0x00, 0x08, 0x0c, 0x02, 0x00, 0x03, 0x2d, 0x0d, 0xd0, + 0x2a, 0x1f, 0x04, 0x2a, 0x0c, 0xd9, 0x09, 0x2d, 0x00, 0xf0, 0x16, 0x84, + 0xa5, 0xf1, 0x0c, 0x02, 0x01, 0x2a, 0x94, 0xbf, 0x2c, 0x22, 0x40, 0x22, + 0x00, 0x20, 0x1d, 0xe0, 0x3c, 0x20, 0x00, 0xe0, 0x40, 0x20, 0x97, 0x4a, + 0x93, 0x42, 0x40, 0xf0, 0x08, 0x84, 0x03, 0x2d, 0x0d, 0xd0, 0x2a, 0x1f, + 0x04, 0x2a, 0x0c, 0xd9, 0x09, 0x2d, 0x00, 0xf0, 0x02, 0x84, 0xa5, 0xf1, + 0x0c, 0x02, 0x01, 0x2a, 0x94, 0xbf, 0x2c, 0x22, 0x40, 0x22, 0x00, 0x20, + 0x11, 0xe0, 0x36, 0x20, 0xf5, 0xe3, 0x40, 0x20, 0x02, 0x46, 0x8c, 0x49, + 0x8b, 0x42, 0x02, 0xd0, 0x8b, 0x49, 0x8b, 0x42, 0x07, 0xd1, 0xea, 0x1e, + 0x08, 0x2a, 0x02, 0xd9, 0x00, 0x20, 0x40, 0x22, 0x01, 0xe0, 0x40, 0x20, + 0x02, 0x46, 0x87, 0x49, 0x8b, 0x42, 0x1e, 0xd1, 0xa5, 0xf1, 0x24, 0x01, + 0x0c, 0x29, 0x0f, 0xd9, 0xa5, 0xf1, 0x34, 0x01, 0x08, 0x29, 0x0e, 0xd9, + 0xa5, 0xf1, 0x64, 0x01, 0x02, 0x29, 0x0d, 0xd9, 0xa5, 0xf1, 0x68, 0x01, + 0x20, 0x29, 0x0c, 0xd9, 0x8c, 0x2d, 0x08, 0xbf, 0x32, 0x22, 0x0a, 0xe0, + 0x30, 0x20, 0x38, 0x22, 0x07, 0xe0, 0x44, 0x20, 0x02, 0x46, 0x04, 0xe0, + 0x3e, 0x20, 0x34, 0x22, 0x01, 0xe0, 0x4a, 0x20, 0x44, 0x22, 0x21, 0x46, + 0x00, 0x26, 0x01, 0x36, 0x0a, 0x75, 0x81, 0xf8, 0x44, 0x00, 0x01, 0x31, + 0x08, 0x2e, 0xf8, 0xd1, 0x21, 0x46, 0x4f, 0xf0, 0x00, 0x08, 0x00, 0x26, + 0x08, 0xf1, 0x01, 0x08, 0x81, 0xf8, 0x24, 0x60, 0x81, 0xf8, 0x54, 0x60, + 0x01, 0x31, 0xb8, 0xf1, 0x08, 0x0f, 0xf4, 0xd1, 0x21, 0x46, 0x01, 0x36, + 0x81, 0xf8, 0x2c, 0x20, 0x81, 0xf8, 0x5c, 0x00, 0x01, 0x31, 0x08, 0x2e, + 0xf7, 0xd1, 0xbb, 0x42, 0x84, 0xf8, 0x64, 0x00, 0x07, 0xd0, 0x65, 0x49, + 0x8b, 0x42, 0x17, 0xd0, 0x64, 0x49, 0x8b, 0x42, 0x40, 0xf0, 0xaa, 0x80, + 0x25, 0xe0, 0x01, 0x2d, 0x50, 0xd0, 0x02, 0x2d, 0x49, 0xd0, 0x03, 0x2d, + 0x55, 0xd0, 0x29, 0x1f, 0x04, 0x29, 0x3c, 0xd9, 0x09, 0x2d, 0x3e, 0xd0, + 0x0a, 0x2d, 0x40, 0xd0, 0x00, 0x21, 0x0b, 0x2d, 0x0e, 0x46, 0x0f, 0x46, + 0x73, 0xd1, 0x42, 0xe0, 0x01, 0x2d, 0x3d, 0xd0, 0x02, 0x2d, 0x4e, 0xd0, + 0x03, 0x2d, 0x3e, 0xd0, 0x29, 0x1f, 0x04, 0x29, 0x3f, 0xd9, 0x09, 0x2d, + 0x42, 0xd0, 0x0a, 0x2d, 0x45, 0xd0, 0x00, 0x21, 0x0b, 0x2d, 0x0e, 0x46, + 0x0f, 0x46, 0x60, 0xd1, 0x44, 0xe0, 0x01, 0x2d, 0x44, 0xd0, 0x02, 0x2d, + 0x55, 0xd0, 0xe9, 0x1e, 0x05, 0x29, 0x0e, 0xd8, 0x03, 0x2d, 0x42, 0xd0, + 0x04, 0x2d, 0x44, 0xd0, 0x08, 0x2d, 0x0c, 0xbf, 0x38, 0x21, 0x3a, 0x21, + 0x0c, 0xbf, 0x36, 0x26, 0x38, 0x26, 0x0c, 0xbf, 0x32, 0x27, 0x34, 0x27, + 0x3c, 0xe0, 0x09, 0x2d, 0x3c, 0xd0, 0x0a, 0x2d, 0x3f, 0xd0, 0x00, 0x21, + 0x0b, 0x2d, 0x0e, 0x46, 0x0f, 0x46, 0x40, 0xd1, 0x3e, 0xe0, 0x3e, 0x21, + 0x3c, 0x26, 0x38, 0x27, 0x14, 0xe0, 0x36, 0x21, 0x34, 0x26, 0x30, 0x27, + 0x10, 0xe0, 0x00, 0x21, 0x0e, 0x46, 0x0f, 0x46, 0x40, 0x22, 0x32, 0xe0, + 0x00, 0x21, 0x0e, 0x46, 0x0f, 0x46, 0x38, 0x22, 0x2d, 0xe0, 0x38, 0x21, + 0x36, 0x26, 0x32, 0x27, 0x02, 0xe0, 0x3a, 0x21, 0x38, 0x26, 0x34, 0x27, + 0x4c, 0x22, 0x24, 0xe0, 0x36, 0x21, 0x34, 0x26, 0x30, 0x27, 0x4a, 0x22, + 0x1f, 0xe0, 0x00, 0x21, 0x0e, 0x46, 0x0f, 0x46, 0x3e, 0x22, 0x1a, 0xe0, + 0x36, 0x22, 0x18, 0xe0, 0x00, 0x21, 0x0e, 0x46, 0x0f, 0x46, 0x2c, 0x22, + 0x13, 0xe0, 0x2e, 0x21, 0x2c, 0x26, 0x28, 0x27, 0x02, 0xe0, 0x38, 0x21, + 0x36, 0x26, 0x32, 0x27, 0x44, 0x22, 0x0a, 0xe0, 0x30, 0x21, 0x2e, 0x26, + 0x2a, 0x27, 0x42, 0x22, 0x05, 0xe0, 0x00, 0x21, 0x0e, 0x46, 0x0f, 0x46, + 0x3c, 0x22, 0x00, 0xe0, 0x2a, 0x22, 0xa1, 0x46, 0x4f, 0xf0, 0x00, 0x08, + 0xb8, 0xf1, 0x04, 0x0f, 0x8c, 0xbf, 0xb2, 0x46, 0xba, 0x46, 0x08, 0xf1, + 0x01, 0x08, 0xb8, 0xf1, 0x08, 0x0f, 0x89, 0xf8, 0x1c, 0x20, 0x89, 0xf8, + 0x4c, 0xa0, 0x09, 0xf1, 0x01, 0x09, 0xef, 0xd1, 0x92, 0x46, 0xa0, 0x46, + 0x00, 0x27, 0x03, 0x2f, 0x8c, 0xbf, 0x89, 0x46, 0xb1, 0x46, 0x01, 0x37, + 0x08, 0x2f, 0x88, 0xf8, 0x2c, 0xa0, 0x88, 0xf8, 0x5c, 0x90, 0x08, 0xf1, + 0x01, 0x08, 0xf2, 0xd1, 0x0e, 0x49, 0x8b, 0x42, 0x06, 0xd0, 0x0e, 0x49, + 0x8b, 0x42, 0x1d, 0xd0, 0x0d, 0x49, 0x8b, 0x42, 0x7a, 0xd1, 0x25, 0xe0, + 0x03, 0x2d, 0x32, 0xd0, 0x09, 0x2d, 0x30, 0xd0, 0x29, 0x1f, 0x04, 0x29, + 0x31, 0xd9, 0x28, 0xe0, 0xef, 0x0e, 0x86, 0x00, 0x63, 0x0f, 0x86, 0x00, + 0x14, 0x10, 0x86, 0x00, 0xdc, 0x05, 0x86, 0x00, 0x9b, 0x0a, 0x86, 0x00, + 0xf2, 0x0a, 0x86, 0x00, 0xd5, 0x0a, 0x86, 0x00, 0xa0, 0x0b, 0x86, 0x00, + 0xda, 0x0b, 0x86, 0x00, 0x03, 0x2d, 0x1e, 0xd0, 0x04, 0x2d, 0x24, 0xd0, + 0x69, 0x1f, 0x02, 0x29, 0x1d, 0xd9, 0x08, 0x2d, 0x1f, 0xd0, 0x09, 0x2d, + 0x0b, 0xd1, 0x20, 0xe0, 0x03, 0x2d, 0x22, 0xd0, 0x04, 0x2d, 0x23, 0xd0, + 0x69, 0x1f, 0x02, 0x29, 0x24, 0xd9, 0x08, 0x2d, 0x26, 0xd0, 0x09, 0x2d, + 0x27, 0xd0, 0x00, 0x21, 0x0e, 0x46, 0x0f, 0x46, 0x26, 0xe0, 0x2e, 0x21, + 0x2c, 0x26, 0x28, 0x27, 0x22, 0xe0, 0x36, 0x21, 0x1b, 0xe0, 0x48, 0x21, + 0x46, 0x26, 0x42, 0x27, 0x1c, 0xe0, 0x52, 0x21, 0x50, 0x26, 0x4c, 0x27, + 0x18, 0xe0, 0x4c, 0x21, 0x4a, 0x26, 0x46, 0x27, 0x14, 0xe0, 0x44, 0x21, + 0x42, 0x26, 0x3e, 0x27, 0x10, 0xe0, 0x32, 0x21, 0x30, 0x26, 0x0c, 0xe0, + 0x34, 0x21, 0x32, 0x26, 0x30, 0x27, 0x09, 0xe0, 0x3a, 0x21, 0x36, 0x26, + 0x32, 0x27, 0x05, 0xe0, 0x38, 0x21, 0x34, 0x26, 0xf6, 0xe7, 0x36, 0x21, + 0x32, 0x26, 0x2e, 0x27, 0xa1, 0x46, 0x4f, 0xf0, 0x00, 0x08, 0xb8, 0xf1, + 0x04, 0x0f, 0x8c, 0xbf, 0xb2, 0x46, 0xba, 0x46, 0x08, 0xf1, 0x01, 0x08, + 0xb8, 0xf1, 0x08, 0x0f, 0x89, 0xf8, 0x4c, 0xa0, 0x09, 0xf1, 0x01, 0x09, + 0xf1, 0xd1, 0xa0, 0x46, 0x00, 0x27, 0x03, 0x2f, 0x8c, 0xbf, 0x89, 0x46, + 0xb1, 0x46, 0x01, 0x37, 0x08, 0x2f, 0x88, 0xf8, 0x5c, 0x90, 0x08, 0xf1, + 0x01, 0x08, 0xf4, 0xd1, 0x91, 0x49, 0x8b, 0x42, 0x2e, 0xd1, 0x03, 0x2d, + 0x0d, 0xd0, 0x29, 0x1f, 0x04, 0x29, 0x05, 0xd9, 0x09, 0x2d, 0x08, 0xd0, + 0x00, 0x21, 0x0e, 0x46, 0x88, 0x46, 0x08, 0xe0, 0x3e, 0x21, 0x3c, 0x26, + 0x4f, 0xf0, 0x38, 0x08, 0x03, 0xe0, 0x3a, 0x21, 0x38, 0x26, 0x4f, 0xf0, + 0x34, 0x08, 0xa1, 0x46, 0x00, 0x27, 0x04, 0x2f, 0x8c, 0xbf, 0xb2, 0x46, + 0xc2, 0x46, 0x01, 0x37, 0x08, 0x2f, 0x89, 0xf8, 0x4c, 0xa0, 0x09, 0xf1, + 0x01, 0x09, 0xf4, 0xd1, 0xa0, 0x46, 0x00, 0x27, 0x03, 0x2f, 0x8c, 0xbf, + 0x89, 0x46, 0xb1, 0x46, 0x01, 0x37, 0x08, 0x2f, 0x88, 0xf8, 0x5c, 0x90, + 0x08, 0xf1, 0x01, 0x08, 0xf4, 0xd1, 0x2d, 0xe0, 0x79, 0x49, 0x8b, 0x42, + 0x27, 0xd1, 0xa5, 0xf1, 0x24, 0x02, 0x0c, 0x2a, 0x0e, 0xd9, 0xa5, 0xf1, + 0x34, 0x02, 0x0c, 0x2a, 0x0d, 0xd9, 0xa5, 0xf1, 0x64, 0x02, 0x28, 0x2a, + 0x0c, 0xd9, 0xa5, 0xf1, 0x95, 0x02, 0x10, 0x2a, 0x0b, 0xd9, 0x00, 0x20, + 0x02, 0x46, 0x0a, 0xe0, 0x34, 0x20, 0x38, 0x22, 0x07, 0xe0, 0x34, 0x20, + 0x3a, 0x22, 0x04, 0xe0, 0x40, 0x20, 0x3c, 0x22, 0x01, 0xe0, 0x48, 0x20, + 0x46, 0x22, 0x21, 0x46, 0x00, 0x26, 0x01, 0x36, 0x0a, 0x75, 0x81, 0xf8, + 0x44, 0x00, 0x01, 0x31, 0x08, 0x2e, 0xf8, 0xd1, 0x05, 0xe0, 0x65, 0x49, + 0x8b, 0x42, 0x52, 0xd0, 0x64, 0x49, 0x8b, 0x42, 0x75, 0xd0, 0x64, 0x49, + 0x8b, 0x42, 0x72, 0xd0, 0x63, 0x49, 0x8b, 0x42, 0x6f, 0xd0, 0x63, 0x49, + 0x8b, 0x42, 0x6c, 0xd0, 0x62, 0x49, 0x8b, 0x42, 0x69, 0xd0, 0x62, 0x49, + 0x8b, 0x42, 0x66, 0xd0, 0x61, 0x49, 0x8b, 0x42, 0x63, 0xd0, 0x61, 0x49, + 0x8b, 0x42, 0x60, 0xd0, 0x60, 0x49, 0x8b, 0x42, 0x5d, 0xd0, 0x60, 0x49, + 0x8b, 0x42, 0x5a, 0xd0, 0x5f, 0x49, 0x8b, 0x42, 0x57, 0xd0, 0x5f, 0x49, + 0x8b, 0x42, 0x54, 0xd0, 0x5e, 0x49, 0x8b, 0x42, 0x51, 0xd0, 0x5e, 0x49, + 0x8b, 0x42, 0x4e, 0xd0, 0x5d, 0x49, 0x8b, 0x42, 0x4b, 0xd0, 0x5d, 0x49, + 0x8b, 0x42, 0x48, 0xd0, 0x5c, 0x49, 0x8b, 0x42, 0x45, 0xd0, 0x5c, 0x49, + 0x8b, 0x42, 0x42, 0xd0, 0x5b, 0x49, 0x8b, 0x42, 0x3f, 0xd0, 0x5b, 0x49, + 0x8b, 0x42, 0x3c, 0xd0, 0x5a, 0x49, 0x8b, 0x42, 0x39, 0xd0, 0x5a, 0x49, + 0x8b, 0x42, 0x36, 0xd0, 0x59, 0x49, 0x8b, 0x42, 0x33, 0xd0, 0x59, 0x49, + 0x8b, 0x42, 0x30, 0xd0, 0x58, 0x49, 0x8b, 0x42, 0x2d, 0xd0, 0x58, 0x49, + 0x8b, 0x42, 0x2a, 0xd0, 0x57, 0x49, 0x8b, 0x42, 0x40, 0xf0, 0xb8, 0x80, + 0x1d, 0xe0, 0xa5, 0xf1, 0x24, 0x02, 0x08, 0x2a, 0x59, 0xd9, 0xa5, 0xf1, + 0x2e, 0x02, 0x02, 0x2a, 0x63, 0xd9, 0xa5, 0xf1, 0x34, 0x02, 0x08, 0x2a, + 0x54, 0xd9, 0xa5, 0xf1, 0x3e, 0x02, 0x02, 0x2a, 0x53, 0xd9, 0xa5, 0xf1, + 0x64, 0x02, 0x08, 0x2a, 0x52, 0xd9, 0xa5, 0xf1, 0x6e, 0x02, 0x1e, 0x2a, + 0x50, 0xd9, 0xa5, 0xf1, 0x95, 0x02, 0x10, 0x2a, 0x4f, 0xd9, 0x00, 0x20, + 0x40, 0xe0, 0xa5, 0xf1, 0x24, 0x01, 0x0c, 0x29, 0x98, 0xbf, 0x34, 0x20, + 0x98, 0xbf, 0x38, 0x22, 0x87, 0xe0, 0x3b, 0x49, 0x8b, 0x42, 0x03, 0xd1, + 0x64, 0x2d, 0x08, 0xbf, 0x38, 0x22, 0x80, 0xe0, 0x39, 0x49, 0x8b, 0x42, + 0x03, 0xd1, 0x24, 0x2d, 0x08, 0xbf, 0x38, 0x22, 0x79, 0xe0, 0x37, 0x49, + 0x8b, 0x42, 0x03, 0xd1, 0x8c, 0x2d, 0x08, 0xbf, 0x3a, 0x22, 0x72, 0xe0, + 0x35, 0x49, 0x8b, 0x42, 0x05, 0xd1, 0x64, 0x2d, 0x2e, 0xd0, 0x8c, 0x2d, + 0x08, 0xbf, 0x48, 0x22, 0x69, 0xe0, 0x22, 0x49, 0x8b, 0x42, 0x05, 0xd1, + 0xa5, 0xf1, 0x95, 0x01, 0x10, 0x29, 0x98, 0xbf, 0x3c, 0x22, 0x60, 0xe0, + 0x1f, 0x49, 0x8b, 0x42, 0x5d, 0xd1, 0xa5, 0xf1, 0x24, 0x01, 0x0c, 0x29, + 0x58, 0xd9, 0xa5, 0xf1, 0x34, 0x01, 0x0c, 0x29, 0x54, 0xd9, 0xa5, 0xf1, + 0x64, 0x01, 0x28, 0x29, 0x98, 0xbf, 0x3c, 0x22, 0x4f, 0xe0, 0x38, 0x20, + 0x02, 0x46, 0x4c, 0xe0, 0x40, 0x20, 0x38, 0x22, 0x49, 0xe0, 0x38, 0x20, + 0x34, 0x22, 0x46, 0xe0, 0x38, 0x20, 0x03, 0xe0, 0x40, 0x20, 0x32, 0x22, + 0x41, 0xe0, 0x40, 0x20, 0x44, 0x22, 0x3e, 0xe0, 0x48, 0x22, 0x3c, 0xe0, + 0x4e, 0x0c, 0x86, 0x00, 0x11, 0x05, 0x86, 0x00, 0xf9, 0x05, 0x86, 0x00, + 0x6d, 0xc5, 0x01, 0x00, 0x8a, 0xc5, 0x01, 0x00, 0xcd, 0xc6, 0x01, 0x00, + 0x45, 0xc6, 0x01, 0x00, 0x8e, 0xc3, 0x01, 0x00, 0x37, 0xc3, 0x01, 0x00, + 0xd5, 0xc0, 0x01, 0x00, 0x18, 0xc4, 0x01, 0x00, 0x10, 0xc0, 0x01, 0x00, + 0x1a, 0xc3, 0x01, 0x00, 0x91, 0xbf, 0x01, 0x00, 0xb0, 0xc6, 0x01, 0x00, + 0x71, 0xc3, 0x01, 0x00, 0xa7, 0xc5, 0x01, 0x00, 0x54, 0xc3, 0x01, 0x00, + 0x43, 0xbf, 0x01, 0x00, 0xe0, 0xc2, 0x01, 0x00, 0x7f, 0xc6, 0x01, 0x00, + 0xae, 0xbf, 0x01, 0x00, 0x00, 0xc7, 0x01, 0x00, 0x9b, 0xc0, 0x01, 0x00, + 0xb8, 0xc0, 0x01, 0x00, 0x62, 0xc6, 0x01, 0x00, 0xfd, 0xc2, 0x01, 0x00, + 0x5e, 0xc2, 0x01, 0x00, 0x7b, 0xc2, 0x01, 0x00, 0x16, 0x06, 0x86, 0x00, + 0x3c, 0x22, 0x21, 0x46, 0x00, 0x26, 0x01, 0x36, 0x0a, 0x75, 0x81, 0xf8, + 0x44, 0x00, 0x01, 0x31, 0x08, 0x2e, 0xf8, 0xd1, 0x83, 0x4a, 0x93, 0x42, + 0x0b, 0xd0, 0x83, 0x4a, 0x93, 0x42, 0x08, 0xd0, 0x82, 0x4a, 0x93, 0x42, + 0x05, 0xd0, 0x82, 0x4a, 0x93, 0x42, 0x02, 0xd0, 0x81, 0x4a, 0x93, 0x42, + 0x71, 0xd1, 0xa5, 0xf1, 0x24, 0x02, 0x08, 0x2a, 0x0a, 0xd8, 0x7e, 0x4a, + 0x93, 0x42, 0x03, 0xd0, 0x34, 0x22, 0x5b, 0x45, 0x01, 0xd1, 0x50, 0xe0, + 0x3a, 0x22, 0x4f, 0xf0, 0x38, 0x0b, 0x58, 0xe0, 0xa5, 0xf1, 0x2e, 0x02, + 0x02, 0x2a, 0x09, 0xd8, 0x5b, 0x45, 0x14, 0xbf, 0x42, 0x22, 0x40, 0x22, + 0x14, 0xbf, 0x4f, 0xf0, 0x38, 0x0b, 0x4f, 0xf0, 0x34, 0x0b, 0x4a, 0xe0, + 0xa5, 0xf1, 0x34, 0x02, 0x08, 0x2a, 0x3c, 0xd9, 0xa5, 0xf1, 0x3e, 0x02, + 0x02, 0x2a, 0x06, 0xd8, 0x5b, 0x45, 0x14, 0xbf, 0x34, 0x22, 0x2c, 0x22, + 0x4f, 0xf0, 0x3a, 0x0b, 0x3b, 0xe0, 0xa5, 0xf1, 0x64, 0x02, 0x08, 0x2a, + 0x07, 0xd8, 0x3e, 0x22, 0x5b, 0x45, 0x14, 0xbf, 0x4f, 0xf0, 0x44, 0x0b, + 0x4f, 0xf0, 0x3a, 0x0b, 0x2f, 0xe0, 0xa5, 0xf1, 0x6e, 0x02, 0x1e, 0x2a, + 0x1a, 0xd8, 0xa5, 0xf1, 0x86, 0x02, 0x02, 0x2a, 0x08, 0xd8, 0x60, 0x4a, + 0x93, 0x42, 0x00, 0xf0, 0xa5, 0x80, 0x5b, 0x45, 0x0c, 0xbf, 0x3c, 0x22, + 0x48, 0x22, 0xa0, 0xe0, 0x8c, 0x2d, 0x14, 0xd1, 0x5a, 0x4a, 0x93, 0x42, + 0x4f, 0xf0, 0x48, 0x02, 0x11, 0xd0, 0x5b, 0x45, 0x0c, 0xbf, 0x4f, 0xf0, + 0x3c, 0x0b, 0x4f, 0xf0, 0x44, 0x0b, 0x10, 0xe0, 0xa5, 0xf1, 0x95, 0x02, + 0x10, 0x2a, 0x09, 0xd9, 0x00, 0x22, 0x93, 0x46, 0x09, 0xe0, 0x44, 0x22, + 0x05, 0xe0, 0x48, 0x22, 0x87, 0xe0, 0x4f, 0xf0, 0x3c, 0x0b, 0x02, 0xe0, + 0x4a, 0x22, 0x4f, 0xf0, 0x46, 0x0b, 0x21, 0x46, 0x00, 0x20, 0x01, 0x30, + 0x81, 0xf8, 0x14, 0xb0, 0x81, 0xf8, 0x44, 0x20, 0x01, 0x31, 0x08, 0x28, + 0xf7, 0xd1, 0x48, 0x4a, 0x93, 0x42, 0x05, 0xd0, 0x47, 0x4a, 0x93, 0x42, + 0x02, 0xd0, 0x22, 0x46, 0x00, 0x23, 0x1e, 0xe0, 0xa5, 0xf1, 0x24, 0x03, + 0x0c, 0x2b, 0x0d, 0xd9, 0xa5, 0xf1, 0x34, 0x03, 0x0c, 0x2b, 0x0b, 0xd9, + 0xa5, 0xf1, 0x64, 0x03, 0x28, 0x2b, 0x07, 0xd9, 0x95, 0x3d, 0x10, 0x2d, + 0x94, 0xbf, 0x40, 0x25, 0x00, 0x25, 0x02, 0xe0, 0x38, 0x25, 0x00, 0xe0, + 0x40, 0x25, 0x23, 0x46, 0x00, 0x22, 0x01, 0x32, 0x1d, 0x75, 0x83, 0xf8, + 0x44, 0x50, 0x01, 0x33, 0x08, 0x2a, 0xf8, 0xd1, 0xdd, 0xe7, 0xe1, 0x18, + 0x91, 0xf8, 0x3c, 0x00, 0x18, 0xb9, 0x92, 0xf8, 0x4c, 0x00, 0x81, 0xf8, + 0x3c, 0x00, 0x3b, 0xb9, 0x94, 0xf8, 0x3d, 0x30, 0x1b, 0xb9, 0x92, 0xf8, + 0x4c, 0x30, 0x84, 0xf8, 0x3d, 0x30, 0x01, 0x23, 0x01, 0x33, 0x01, 0x32, + 0x07, 0x2b, 0xea, 0xd9, 0x23, 0x46, 0x00, 0x22, 0x93, 0xf8, 0x44, 0x10, + 0x19, 0xb9, 0x93, 0xf8, 0x4c, 0x10, 0x83, 0xf8, 0x44, 0x10, 0x01, 0x32, + 0x01, 0x33, 0x08, 0x2a, 0xf4, 0xd1, 0x22, 0x46, 0x00, 0x23, 0xe1, 0x18, + 0x91, 0xf8, 0x34, 0x00, 0x18, 0xb9, 0x92, 0xf8, 0x44, 0x00, 0x81, 0xf8, + 0x34, 0x00, 0x3b, 0xb9, 0x94, 0xf8, 0x35, 0x30, 0x1b, 0xb9, 0x92, 0xf8, + 0x44, 0x30, 0x84, 0xf8, 0x35, 0x30, 0x01, 0x23, 0x01, 0x33, 0x01, 0x32, + 0x07, 0x2b, 0xea, 0xd9, 0x00, 0x23, 0x9c, 0xf8, 0x24, 0x20, 0x1a, 0xb9, + 0x9c, 0xf8, 0x1c, 0x20, 0x8c, 0xf8, 0x24, 0x20, 0x9c, 0xf8, 0x54, 0x20, + 0x1a, 0xb9, 0x9c, 0xf8, 0x4c, 0x20, 0x8c, 0xf8, 0x54, 0x20, 0x01, 0x33, + 0x08, 0x2b, 0x0c, 0xf1, 0x01, 0x0c, 0xec, 0xd1, 0xbd, 0xe8, 0xf8, 0x8f, + 0x44, 0x22, 0x4f, 0xf0, 0x44, 0x0b, 0x7a, 0xe7, 0x3c, 0x21, 0x40, 0x22, + 0xff, 0xf7, 0xb5, 0xba, 0x38, 0x20, 0x40, 0x22, 0x09, 0xe4, 0x34, 0x20, + 0x40, 0x22, 0x09, 0xe4, 0xbd, 0xe8, 0xf8, 0x8f, 0x4b, 0x05, 0x86, 0x00, + 0x68, 0x05, 0x86, 0x00, 0x85, 0x05, 0x86, 0x00, 0x33, 0x06, 0x86, 0x00, + 0xa2, 0x05, 0x86, 0x00, 0xa7, 0x06, 0x86, 0x00, 0x50, 0x06, 0x86, 0x00, + 0x2d, 0xe9, 0xf0, 0x41, 0x4c, 0x69, 0x16, 0x69, 0x23, 0x68, 0x95, 0x8a, + 0x00, 0x2b, 0x18, 0x46, 0x01, 0xda, 0xe8, 0x18, 0x30, 0xd4, 0x62, 0x68, + 0x83, 0x18, 0xab, 0x42, 0x2c, 0xd8, 0x8b, 0x68, 0x02, 0xf1, 0x08, 0x07, + 0xe7, 0x19, 0x30, 0x18, 0x6b, 0xb9, 0x09, 0xe0, 0xe5, 0x18, 0x95, 0xf8, + 0x08, 0xc0, 0xc5, 0x5c, 0xfe, 0x5c, 0x0c, 0xea, 0x05, 0x05, 0xae, 0x42, + 0x1c, 0xd1, 0x01, 0x33, 0x93, 0x42, 0xf3, 0xdb, 0x11, 0xe0, 0x01, 0x2b, + 0x16, 0xd1, 0xad, 0x1a, 0x76, 0x19, 0x0f, 0xe0, 0xe5, 0x18, 0x95, 0xf8, + 0x08, 0x80, 0xc5, 0x5c, 0x17, 0xf8, 0x03, 0xc0, 0x08, 0xea, 0x05, 0x05, + 0xac, 0x45, 0x04, 0xd1, 0x01, 0x33, 0x93, 0x42, 0xf2, 0xdb, 0x01, 0x20, + 0x05, 0xe0, 0x01, 0x30, 0xb0, 0x42, 0x01, 0xd8, 0x00, 0x23, 0xf6, 0xe7, + 0x00, 0x20, 0x0b, 0x7b, 0x0b, 0xb1, 0x80, 0xf0, 0x01, 0x00, 0xbd, 0xe8, + 0xf0, 0x81, 0x03, 0x68, 0x70, 0xb5, 0x04, 0x46, 0x58, 0x68, 0xa3, 0x6a, + 0x0d, 0x46, 0x16, 0x46, 0x23, 0xb9, 0x90, 0x21, 0xfa, 0xf3, 0xb4, 0xf5, + 0xa0, 0x62, 0x80, 0xb1, 0xa0, 0x6a, 0x01, 0x23, 0x03, 0x60, 0xab, 0x8a, + 0x80, 0x22, 0x29, 0x69, 0xc2, 0x60, 0x83, 0x60, 0x46, 0x60, 0x93, 0x42, + 0x38, 0xbf, 0x1a, 0x46, 0x10, 0x30, 0xbd, 0xe8, 0x70, 0x40, 0xf5, 0xf3, + 0xf5, 0xb6, 0x70, 0xbd, 0x68, 0x46, 0x83, 0x69, 0x41, 0x69, 0x20, 0x30, + 0x0b, 0xb5, 0x20, 0x38, 0x03, 0x69, 0x5a, 0x46, 0x51, 0x46, 0x0e, 0xb4, + 0x4a, 0x46, 0x41, 0x46, 0x06, 0xb4, 0xc3, 0x68, 0x82, 0x68, 0x41, 0x68, + 0xfe, 0xb4, 0x03, 0x68, 0xc2, 0x69, 0xef, 0xf3, 0x03, 0x81, 0x0e, 0xb4, + 0x82, 0x69, 0xef, 0xf3, 0x05, 0x81, 0x06, 0xb4, 0x03, 0x48, 0x01, 0x68, + 0x00, 0x29, 0xfe, 0xd0, 0x68, 0x46, 0x88, 0x47, 0x14, 0xb0, 0x00, 0xbd, + 0x78, 0xc2, 0x00, 0x00, 0x0a, 0x49, 0x08, 0x42, 0x02, 0xd0, 0x62, 0xb6, + 0xc9, 0x43, 0x08, 0x40, 0x08, 0x49, 0x08, 0x42, 0x02, 0xd0, 0x61, 0xb6, + 0xc9, 0x43, 0x08, 0x40, 0x06, 0x49, 0x08, 0x40, 0x00, 0x28, 0x03, 0xd0, + 0x05, 0x49, 0x0a, 0x68, 0x02, 0x43, 0x0a, 0x60, 0x70, 0x47, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x40, 0xff, 0xff, 0x00, 0x00, + 0x00, 0xe1, 0x00, 0xe0, 0x0a, 0x49, 0x08, 0x42, 0x02, 0xd0, 0x72, 0xb6, + 0xc9, 0x43, 0x08, 0x40, 0x08, 0x49, 0x08, 0x42, 0x02, 0xd0, 0x71, 0xb6, + 0xc9, 0x43, 0x08, 0x40, 0x06, 0x49, 0x08, 0x40, 0x00, 0x28, 0x04, 0xd0, + 0x05, 0x49, 0x0a, 0x68, 0xc0, 0x43, 0x02, 0x40, 0x0a, 0x60, 0x70, 0x47, + 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x40, 0xff, 0xff, 0x00, 0x00, + 0x80, 0xe1, 0x00, 0xe0, 0x02, 0x49, 0x09, 0x68, 0x90, 0x22, 0x88, 0x58, + 0x70, 0x47, 0x00, 0x00, 0x84, 0xc2, 0x00, 0x00, 0x02, 0x49, 0x09, 0x68, + 0x9c, 0x22, 0x88, 0x50, 0x70, 0x47, 0x00, 0x00, 0x84, 0xc2, 0x00, 0x00, + 0xdd, 0xba, 0xad, 0xbb, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x02, 0x4a, 0x11, 0x68, 0x10, 0x60, 0x08, 0x1c, 0x70, 0x47, 0x00, 0x00, + 0x78, 0xc2, 0x00, 0x00, 0x02, 0x4a, 0x11, 0x68, 0x10, 0x60, 0x08, 0x1c, + 0x70, 0x47, 0x00, 0x00, 0x7c, 0xc2, 0x00, 0x00, 0x03, 0x49, 0x08, 0x60, + 0x03, 0x48, 0x01, 0x68, 0x00, 0x29, 0xfe, 0xd0, 0x88, 0x47, 0xfe, 0xe7, + 0x70, 0xc2, 0x00, 0x00, 0x7c, 0xc2, 0x00, 0x00, 0x63, 0x48, 0x64, 0x49, + 0x00, 0x22, 0x0a, 0x50, 0x01, 0x68, 0x63, 0x4a, 0x0a, 0x40, 0x63, 0x4f, + 0x0f, 0x40, 0x3f, 0x42, 0x32, 0xd1, 0x00, 0x23, 0x98, 0x46, 0x9a, 0x46, + 0x60, 0x4a, 0x0a, 0x40, 0x18, 0x21, 0xca, 0x40, 0x5f, 0x49, 0x43, 0x58, + 0x5f, 0x4c, 0x1c, 0x40, 0x5f, 0x4d, 0xac, 0x42, 0x04, 0xd1, 0x80, 0x46, + 0x5e, 0x4d, 0x45, 0x19, 0xa9, 0x46, 0x0e, 0xe0, 0x5d, 0x4d, 0xac, 0x42, + 0x0b, 0xd1, 0x82, 0x46, 0x5a, 0x4d, 0x45, 0x19, 0xab, 0x46, 0x0f, 0x24, + 0x1d, 0x1c, 0x23, 0x40, 0x59, 0x4c, 0x25, 0x40, 0x2d, 0x0a, 0x2b, 0x43, + 0x9c, 0x46, 0x00, 0x23, 0x98, 0x45, 0x01, 0xd0, 0x9a, 0x45, 0x04, 0xd1, + 0x55, 0x4b, 0xc0, 0x18, 0x01, 0x3a, 0xdc, 0xd1, 0x05, 0xe0, 0x50, 0x46, + 0x00, 0x42, 0x02, 0xd0, 0x40, 0x46, 0x00, 0x42, 0x29, 0xd1, 0xfe, 0xe7, + 0xfc, 0x21, 0x41, 0x58, 0x0a, 0x68, 0x0f, 0x23, 0x13, 0x40, 0x0f, 0x2b, + 0xf1, 0xd0, 0x01, 0x2b, 0x01, 0xd0, 0x04, 0x31, 0xf6, 0xe7, 0x08, 0x31, + 0x4a, 0x4b, 0x13, 0x40, 0x4a, 0x4c, 0xa3, 0x42, 0x06, 0xd1, 0x00, 0xf0, + 0xbb, 0xf8, 0x80, 0x46, 0x00, 0xf0, 0xc4, 0xf8, 0x81, 0x46, 0xe9, 0xe7, + 0x46, 0x4c, 0xa3, 0x42, 0xe6, 0xd1, 0x0b, 0x1f, 0x1b, 0x68, 0x45, 0x4c, + 0x23, 0x40, 0x18, 0x24, 0xe3, 0x40, 0x9c, 0x46, 0x00, 0xf0, 0xaa, 0xf8, + 0x82, 0x46, 0x00, 0xf0, 0xb3, 0xf8, 0x83, 0x46, 0xd8, 0xe7, 0x40, 0x49, + 0x21, 0x22, 0x42, 0x50, 0x2e, 0x4a, 0x3f, 0x49, 0x89, 0x58, 0xff, 0x23, + 0x19, 0x42, 0x19, 0xd0, 0x51, 0x68, 0x3d, 0x4b, 0x19, 0x42, 0x15, 0xd0, + 0x11, 0x68, 0x3c, 0x4b, 0x19, 0x40, 0xd3, 0x6a, 0x10, 0xe0, 0xa3, 0x42, + 0x0e, 0xd0, 0xc0, 0x46, 0x0c, 0xe0, 0x39, 0x49, 0x89, 0x58, 0x19, 0x42, + 0x08, 0xd0, 0x38, 0x49, 0x89, 0x58, 0x19, 0x40, 0x99, 0x42, 0xfa, 0xd1, + 0x2b, 0x4b, 0x11, 0x69, 0x19, 0x42, 0xfc, 0xd0, 0x49, 0x46, 0x3f, 0x42, + 0x04, 0xd1, 0x98, 0x23, 0xcb, 0x58, 0x10, 0x24, 0xe3, 0x40, 0x01, 0xe0, + 0x30, 0x4b, 0xcb, 0x58, 0x1c, 0x24, 0x23, 0x40, 0x00, 0x2b, 0x01, 0xd0, + 0x00, 0xf0, 0x8c, 0xf8, 0x40, 0x46, 0x2d, 0x49, 0x08, 0x60, 0x48, 0x46, + 0x2c, 0x49, 0x08, 0x60, 0x50, 0x46, 0x2c, 0x49, 0x08, 0x60, 0x60, 0x46, + 0x2b, 0x49, 0x08, 0x60, 0x2b, 0x49, 0x0f, 0x60, 0x2b, 0x4d, 0x2c, 0x49, + 0x0d, 0x60, 0x04, 0x3d, 0xad, 0x46, 0x00, 0x9d, 0xec, 0x43, 0x10, 0x23, + 0xdd, 0x41, 0xac, 0x42, 0x01, 0xd0, 0x81, 0xb0, 0x09, 0xe0, 0x24, 0x0c, + 0xa4, 0x00, 0x26, 0x4d, 0x2c, 0x60, 0x6b, 0x46, 0x1b, 0x1b, 0x25, 0x4d, + 0x2b, 0x60, 0x04, 0x3b, 0x9d, 0x46, 0x24, 0x48, 0x24, 0x49, 0x00, 0x22, + 0x04, 0xc0, 0x81, 0x42, 0xfc, 0xd8, 0x0f, 0xf0, 0x27, 0xf9, 0xfe, 0xe7, + 0x00, 0x00, 0x00, 0x18, 0x14, 0x06, 0x00, 0x00, 0xf8, 0xff, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xf0, 0x00, 0x00, 0x00, 0x0f, 0xfc, 0x0f, 0x00, 0x00, + 0xf0, 0x8f, 0x00, 0x00, 0xa0, 0x82, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, + 0xe0, 0x80, 0x00, 0x00, 0x00, 0x70, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, + 0x00, 0xff, 0x0f, 0x00, 0x00, 0x2a, 0x08, 0x00, 0x00, 0x0e, 0x08, 0x00, + 0x00, 0x00, 0x00, 0xff, 0xe0, 0x01, 0x00, 0x00, 0x04, 0x06, 0x00, 0x00, + 0x00, 0x00, 0x38, 0x00, 0xff, 0xff, 0x00, 0x00, 0x18, 0x06, 0x00, 0x00, + 0x0c, 0x06, 0x00, 0x00, 0x08, 0x04, 0x00, 0x00, 0x84, 0xc2, 0x00, 0x00, + 0x88, 0xc2, 0x00, 0x00, 0x8c, 0xc2, 0x00, 0x00, 0x90, 0xc2, 0x00, 0x00, + 0x80, 0xc2, 0x00, 0x00, 0x00, 0xc0, 0x03, 0x00, 0xe4, 0xfe, 0x01, 0x00, + 0xec, 0xfe, 0x01, 0x00, 0xe8, 0xfe, 0x01, 0x00, 0xa0, 0x07, 0x02, 0x00, + 0x16, 0x0c, 0x02, 0x00, 0x08, 0x68, 0x0f, 0x22, 0x04, 0x31, 0x02, 0x40, + 0x05, 0x2a, 0xf9, 0xd1, 0x01, 0x4a, 0x10, 0x40, 0xf7, 0x46, 0x00, 0x00, + 0x00, 0xf0, 0xff, 0xff, 0x08, 0x68, 0x0f, 0x22, 0x04, 0x31, 0x02, 0x40, + 0x05, 0x2a, 0xf9, 0xd1, 0x80, 0x22, 0x10, 0x42, 0xf6, 0xd0, 0x01, 0x4a, + 0x10, 0x40, 0xf7, 0x46, 0x00, 0xf0, 0xff, 0xff, 0xfe, 0xe7, 0x00, 0x00, + 0x10, 0xb5, 0x00, 0x21, 0x28, 0x22, 0x04, 0x46, 0xf5, 0xf3, 0x8c, 0xf5, + 0x0a, 0x4b, 0x23, 0x60, 0x0a, 0x4b, 0x63, 0x60, 0x0a, 0x4b, 0xa3, 0x60, + 0x0a, 0x4b, 0xe3, 0x60, 0x0a, 0x4b, 0x23, 0x61, 0x0a, 0x4b, 0x63, 0x61, + 0x0a, 0x4b, 0xa3, 0x61, 0x0a, 0x4b, 0xe3, 0x61, 0x0a, 0x4b, 0x23, 0x62, + 0x0a, 0x4b, 0x63, 0x62, 0x10, 0xbd, 0x00, 0xbf, 0x00, 0x00, 0x00, 0x00, + 0xb3, 0xfd, 0x01, 0x00, 0xb4, 0xfd, 0x01, 0x00, 0xa0, 0x07, 0x02, 0x00, + 0xa0, 0x07, 0x02, 0x00, 0x16, 0x0c, 0x02, 0x00, 0x18, 0x0c, 0x02, 0x00, + 0xcc, 0xae, 0x02, 0x00, 0xcc, 0xae, 0x02, 0x00, 0xe8, 0x35, 0x03, 0x00, + 0x2d, 0xe9, 0xf0, 0x41, 0x96, 0xb0, 0x0a, 0xa8, 0xff, 0xf7, 0xca, 0xff, + 0x0a, 0x9b, 0x0b, 0x9f, 0x0d, 0x9c, 0xff, 0x1a, 0x0c, 0x9b, 0x0f, 0x9a, + 0xe4, 0x1a, 0x5f, 0x4d, 0x0e, 0x9b, 0x3e, 0x19, 0xc3, 0xeb, 0x02, 0x08, + 0x2b, 0x68, 0x5d, 0x48, 0xf6, 0x18, 0x03, 0xf0, 0x1d, 0xf9, 0x04, 0xf5, + 0x7e, 0x73, 0x07, 0x33, 0x9b, 0x0a, 0x46, 0x44, 0x8d, 0xe8, 0x08, 0x01, + 0x08, 0xf5, 0x7e, 0x78, 0x08, 0xf1, 0x07, 0x08, 0x07, 0xf5, 0x7e, 0x72, + 0x4f, 0xea, 0x98, 0x23, 0x07, 0x32, 0x02, 0x93, 0x05, 0x23, 0x39, 0x46, + 0x92, 0x0a, 0x03, 0x93, 0x51, 0x48, 0x23, 0x46, 0x03, 0xf0, 0x04, 0xf9, + 0x50, 0x4c, 0x51, 0x4b, 0x27, 0x68, 0x19, 0x68, 0x28, 0x68, 0xcb, 0x1b, + 0x03, 0xf5, 0x7e, 0x75, 0x07, 0x35, 0xad, 0x0a, 0x8d, 0xe8, 0xa0, 0x00, + 0x07, 0xf5, 0x7e, 0x75, 0x07, 0x35, 0x03, 0x90, 0x00, 0xf5, 0x7e, 0x70, + 0x01, 0xf5, 0x7e, 0x72, 0xad, 0x0a, 0x07, 0x30, 0x80, 0x0a, 0x07, 0x32, + 0x02, 0x95, 0x46, 0x4d, 0x92, 0x0a, 0x04, 0x90, 0x45, 0x48, 0x03, 0xf0, + 0xe5, 0xf8, 0x23, 0x68, 0x29, 0x68, 0x44, 0x48, 0xc9, 0x18, 0x06, 0xf5, + 0xbe, 0x53, 0x01, 0xf5, 0x7e, 0x72, 0x3f, 0x33, 0x9b, 0x0a, 0x07, 0x32, + 0x92, 0x0a, 0x00, 0x93, 0x06, 0xf5, 0xa0, 0x53, 0x03, 0xf0, 0xd4, 0xf8, + 0x3d, 0x4b, 0x3e, 0x48, 0x19, 0x68, 0x03, 0xf0, 0xcf, 0xf8, 0x3d, 0x4b, + 0x26, 0x46, 0x19, 0x68, 0x3c, 0x4b, 0x0a, 0x68, 0x2f, 0x46, 0x9a, 0x42, + 0x03, 0xd0, 0x3b, 0x48, 0x03, 0xf0, 0xc4, 0xf8, 0x24, 0xe0, 0x14, 0x91, + 0x0b, 0x46, 0x04, 0xe0, 0x14, 0x68, 0x36, 0x48, 0x13, 0x1d, 0x84, 0x42, + 0x03, 0xd1, 0x1a, 0x46, 0x15, 0xab, 0x9a, 0x42, 0xf6, 0xd3, 0x34, 0x48, + 0x14, 0xab, 0x00, 0x68, 0xc1, 0xeb, 0x03, 0x0c, 0xc5, 0x1a, 0x84, 0x1a, + 0xc1, 0xeb, 0x02, 0x0e, 0x8d, 0xe8, 0x01, 0x10, 0x2f, 0x48, 0x14, 0x92, + 0xcd, 0xf8, 0x08, 0xc0, 0xcd, 0xf8, 0x0c, 0xe0, 0xcd, 0xf8, 0x10, 0xe0, + 0x05, 0x95, 0x06, 0x95, 0x07, 0x94, 0x08, 0x94, 0x03, 0xf0, 0x9e, 0xf8, + 0x29, 0x4c, 0x20, 0x68, 0x70, 0xb3, 0xb0, 0xf8, 0x06, 0x80, 0xf6, 0xf3, + 0x55, 0xf2, 0x23, 0x68, 0x08, 0xf1, 0xff, 0x38, 0x5c, 0x89, 0x02, 0x46, + 0x08, 0xfb, 0x04, 0xf5, 0x44, 0x34, 0x08, 0xfb, 0x04, 0xf4, 0x05, 0xf5, + 0x7e, 0x73, 0x07, 0x33, 0x9b, 0x12, 0x8d, 0xe8, 0x18, 0x00, 0x04, 0xf5, + 0x7e, 0x73, 0x07, 0x33, 0x9b, 0x12, 0x02, 0x93, 0x41, 0x46, 0x2b, 0x46, + 0x1b, 0x48, 0x03, 0xf0, 0x7d, 0xf8, 0x33, 0x68, 0x3a, 0x68, 0x59, 0x1b, + 0x9b, 0x18, 0x1b, 0x1b, 0x03, 0xf5, 0x7e, 0x70, 0x01, 0xf5, 0x7e, 0x72, + 0x07, 0x30, 0x80, 0x0a, 0x07, 0x32, 0x00, 0x90, 0x92, 0x0a, 0x14, 0x48, + 0x03, 0xf0, 0x6c, 0xf8, 0x16, 0xb0, 0xbd, 0xe8, 0xf0, 0x81, 0x00, 0xbf, + 0xcc, 0x26, 0x00, 0x00, 0xe1, 0x1f, 0x86, 0x00, 0xf0, 0x1f, 0x86, 0x00, + 0x88, 0x26, 0x00, 0x00, 0xc8, 0x26, 0x00, 0x00, 0xa4, 0x26, 0x00, 0x00, + 0x2e, 0x20, 0x86, 0x00, 0x72, 0x20, 0x86, 0x00, 0x90, 0x26, 0x00, 0x00, + 0xac, 0x20, 0x86, 0x00, 0xf4, 0x07, 0x02, 0x00, 0x4b, 0x41, 0x54, 0x53, + 0xc6, 0x20, 0x86, 0x00, 0xf8, 0x07, 0x02, 0x00, 0xe9, 0x20, 0x86, 0x00, + 0xbc, 0x26, 0x00, 0x00, 0x66, 0x21, 0x86, 0x00, 0x92, 0x21, 0x86, 0x00, + 0x08, 0xb5, 0x71, 0x46, 0x04, 0x48, 0x03, 0xf0, 0x3f, 0xf8, 0x40, 0xf6, + 0x39, 0x00, 0xbd, 0xe8, 0x08, 0x40, 0xff, 0xf7, 0xa1, 0xbd, 0x00, 0xbf, + 0x8e, 0x1f, 0x86, 0x00, 0x2d, 0xe9, 0xf0, 0x47, 0x03, 0x68, 0x8e, 0xb0, + 0x02, 0x2b, 0x04, 0x46, 0x18, 0xd1, 0x56, 0x4a, 0x00, 0x21, 0x12, 0x68, + 0x51, 0x61, 0x55, 0x4a, 0x10, 0x68, 0xc1, 0x04, 0x24, 0xd5, 0x54, 0x49, + 0x20, 0xf4, 0x80, 0x50, 0x0b, 0x60, 0xd1, 0x69, 0x52, 0x4b, 0x40, 0xf4, + 0x00, 0x50, 0x19, 0x60, 0x9c, 0x68, 0x04, 0x24, 0x9c, 0x60, 0x10, 0x60, + 0x4f, 0x48, 0x03, 0xf0, 0x17, 0xf8, 0x90, 0xe0, 0x0c, 0x2b, 0x11, 0xd1, + 0x49, 0x4d, 0x2a, 0x68, 0x91, 0x04, 0x0d, 0xd5, 0x22, 0xf4, 0x00, 0x52, + 0x42, 0xf4, 0x00, 0x62, 0x68, 0x60, 0x2a, 0x60, 0x48, 0x48, 0xe1, 0x6c, + 0x03, 0xf0, 0x06, 0xf8, 0x2b, 0x68, 0x1a, 0x05, 0x7d, 0xd5, 0x7b, 0xe0, + 0x10, 0x3b, 0x0f, 0x2b, 0x02, 0xd8, 0xf9, 0xf3, 0xf5, 0xf5, 0x76, 0xe0, + 0x3d, 0x4e, 0x42, 0x48, 0xf1, 0x69, 0x02, 0xf0, 0xf7, 0xff, 0xa3, 0x6c, + 0x22, 0x46, 0x00, 0x93, 0x63, 0x6c, 0x3f, 0x48, 0x01, 0x93, 0xa3, 0x68, + 0x00, 0x27, 0x02, 0x93, 0xe3, 0x68, 0xb9, 0x46, 0x03, 0x93, 0x21, 0x68, + 0xe3, 0x6c, 0x02, 0xf0, 0xe7, 0xff, 0x3a, 0x4b, 0x65, 0x6c, 0x1b, 0x68, + 0x04, 0xf1, 0x10, 0x01, 0xc5, 0xeb, 0x03, 0x0a, 0xe3, 0x69, 0x37, 0x48, + 0x00, 0x93, 0x23, 0x6a, 0x4f, 0xea, 0x9a, 0x0a, 0x01, 0x93, 0x63, 0x6a, + 0xb8, 0x46, 0x02, 0x93, 0xa3, 0x6a, 0x03, 0x93, 0x0e, 0xc9, 0x02, 0xf0, + 0xd1, 0xff, 0xa3, 0x6b, 0x04, 0xf1, 0x2c, 0x01, 0x00, 0x93, 0xe3, 0x6b, + 0x2e, 0x48, 0x01, 0x93, 0x23, 0x6c, 0x02, 0x93, 0x0e, 0xc9, 0x02, 0xf0, + 0xc5, 0xff, 0xeb, 0x68, 0x2b, 0x48, 0x00, 0x93, 0x95, 0xe8, 0x0e, 0x00, + 0x02, 0xf0, 0xbe, 0xff, 0xeb, 0x69, 0x05, 0xf1, 0x10, 0x01, 0x00, 0x93, + 0x0e, 0xc9, 0x27, 0x48, 0x02, 0xf0, 0xb6, 0xff, 0x04, 0xa8, 0xff, 0xf7, + 0x4f, 0xfe, 0x25, 0x48, 0x02, 0xf0, 0xb0, 0xff, 0x1c, 0xe0, 0x7a, 0x59, + 0xd3, 0x07, 0x13, 0xd5, 0xff, 0x2a, 0x11, 0xd9, 0x05, 0x9b, 0x93, 0x42, + 0x08, 0xd2, 0x20, 0x4b, 0x1b, 0x0d, 0x1b, 0x05, 0x9a, 0x42, 0x09, 0xd3, + 0x03, 0xf5, 0x80, 0x13, 0x9a, 0x42, 0x05, 0xd8, 0x1c, 0x48, 0x39, 0x46, + 0x02, 0xf0, 0x9a, 0xff, 0x09, 0xf1, 0x01, 0x09, 0x04, 0x37, 0xb9, 0xf1, + 0x0f, 0x0f, 0x08, 0xf1, 0x01, 0x08, 0x01, 0xd8, 0xd0, 0x45, 0xe0, 0xd1, + 0x33, 0x68, 0x40, 0xf2, 0x03, 0x30, 0x43, 0xf4, 0x80, 0x63, 0x86, 0xe8, + 0x18, 0x00, 0xff, 0xf7, 0xef, 0xfc, 0x00, 0xe0, 0xfe, 0xe7, 0x0e, 0xb0, + 0xbd, 0xe8, 0xf0, 0x87, 0x70, 0x08, 0x02, 0x00, 0xfc, 0x07, 0x02, 0x00, + 0x24, 0x10, 0x00, 0xe0, 0x20, 0x10, 0x00, 0xe0, 0x24, 0xc8, 0x01, 0x00, + 0x28, 0xc8, 0x01, 0x00, 0x34, 0xc8, 0x01, 0x00, 0x41, 0xc8, 0x01, 0x00, + 0xe4, 0xfe, 0x01, 0x00, 0x75, 0xc8, 0x01, 0x00, 0xa8, 0xc8, 0x01, 0x00, + 0xd7, 0xc8, 0x01, 0x00, 0xf5, 0xc8, 0x01, 0x00, 0xfc, 0x1c, 0x86, 0x00, + 0x9d, 0x66, 0x80, 0x00, 0x12, 0xc9, 0x01, 0x00, 0x70, 0xb5, 0x1a, 0x4c, + 0x8a, 0xb0, 0x68, 0x46, 0xff, 0xf7, 0xf8, 0xfd, 0x21, 0x78, 0xc9, 0xb9, + 0x06, 0x98, 0x07, 0x9d, 0x2d, 0x1a, 0x06, 0xd0, 0x2a, 0x46, 0xf5, 0xf3, + 0x81, 0xf3, 0x06, 0x98, 0x29, 0x46, 0xf9, 0xf3, 0x6d, 0xf4, 0x12, 0x4b, + 0x00, 0x22, 0x1a, 0x70, 0x01, 0x23, 0x23, 0x70, 0x10, 0x4b, 0x19, 0x68, + 0xc1, 0xb1, 0x0b, 0x78, 0xb3, 0xb1, 0x0f, 0x4b, 0x18, 0x68, 0xf6, 0xf3, + 0x63, 0xf1, 0x11, 0xe0, 0x0d, 0x4e, 0x31, 0x78, 0x71, 0xb9, 0x08, 0x98, + 0x09, 0x9d, 0x2d, 0x1a, 0x06, 0xd0, 0x2a, 0x46, 0xf5, 0xf3, 0x64, 0xf3, + 0x08, 0x98, 0x29, 0x46, 0xf9, 0xf3, 0x50, 0xf4, 0x00, 0x23, 0x23, 0x70, + 0x01, 0x23, 0x33, 0x70, 0x0a, 0xb0, 0x70, 0xbd, 0x38, 0x08, 0x02, 0x00, + 0x3a, 0x08, 0x02, 0x00, 0xbc, 0x26, 0x00, 0x00, 0x20, 0x08, 0x02, 0x00, + 0x39, 0x08, 0x02, 0x00, 0x0c, 0x4b, 0x1b, 0x68, 0xd3, 0xf8, 0x14, 0x06, + 0xd3, 0xf8, 0x14, 0x26, 0x90, 0x42, 0x0a, 0x4a, 0x18, 0xbf, 0xd3, 0xf8, + 0x14, 0x06, 0x09, 0x4b, 0x11, 0x68, 0x1b, 0x68, 0x40, 0x1a, 0x98, 0x42, + 0x05, 0xd3, 0xb0, 0xfb, 0xf3, 0xf0, 0x03, 0xfb, 0x00, 0x13, 0x13, 0x60, + 0x70, 0x47, 0x00, 0x20, 0x70, 0x47, 0x00, 0xbf, 0x9c, 0x26, 0x00, 0x00, + 0xe4, 0x26, 0x00, 0x00, 0xc8, 0x25, 0x00, 0x00, 0x70, 0xb5, 0x04, 0x46, + 0xfe, 0xf3, 0x86, 0xf3, 0x20, 0x46, 0xfe, 0xf3, 0xc3, 0xf2, 0x05, 0x46, + 0x20, 0x46, 0xfe, 0xf3, 0x43, 0xf2, 0x00, 0x22, 0x06, 0x46, 0x40, 0xf6, + 0x2a, 0x01, 0x20, 0x46, 0xfe, 0xf3, 0xfc, 0xf3, 0x01, 0x22, 0xaa, 0x40, + 0x83, 0x69, 0x1a, 0x42, 0x01, 0xd1, 0x01, 0x35, 0x00, 0xe0, 0x00, 0x25, + 0x20, 0x46, 0x31, 0x46, 0xfe, 0xf3, 0x02, 0xf4, 0x28, 0x46, 0x70, 0xbd, + 0x2d, 0xe9, 0xf0, 0x41, 0x04, 0x46, 0x0e, 0x46, 0xfe, 0xf3, 0x64, 0xf3, + 0x20, 0x46, 0xfe, 0xf3, 0x25, 0xf2, 0x00, 0x22, 0x05, 0x46, 0x40, 0xf6, + 0x2a, 0x01, 0x20, 0x46, 0xfe, 0xf3, 0xde, 0xf3, 0x82, 0x69, 0x07, 0x46, + 0x43, 0x69, 0x46, 0xb1, 0x4f, 0xf4, 0x00, 0x40, 0x42, 0xf0, 0x00, 0x48, + 0x43, 0xf0, 0x00, 0x46, 0xff, 0xf7, 0xc0, 0xfb, 0x07, 0xe0, 0x4f, 0xf4, + 0x00, 0x40, 0x22, 0xf0, 0x00, 0x48, 0x23, 0xf0, 0x00, 0x46, 0xff, 0xf7, + 0xd5, 0xfb, 0x20, 0x46, 0x29, 0x46, 0xc7, 0xf8, 0x18, 0x80, 0x7e, 0x61, + 0xbd, 0xe8, 0xf0, 0x41, 0xfe, 0xf3, 0xd2, 0xb3, 0xff, 0xf7, 0xb0, 0xbf, + 0x10, 0xb5, 0x04, 0x46, 0xfe, 0xf3, 0x36, 0xf3, 0x01, 0x46, 0x20, 0x46, + 0xbd, 0xe8, 0x10, 0x40, 0x00, 0xf0, 0x48, 0xb9, 0x2d, 0xe9, 0xf0, 0x41, + 0x0e, 0x46, 0x50, 0x21, 0x04, 0x46, 0x15, 0x46, 0x98, 0x46, 0xfa, 0xf3, + 0x15, 0xf1, 0x07, 0x46, 0x10, 0xb3, 0x00, 0x21, 0x50, 0x22, 0xf5, 0xf3, + 0xc7, 0xf2, 0x40, 0xf2, 0x3c, 0x73, 0x7b, 0x63, 0x4f, 0xf4, 0x7a, 0x73, + 0xfb, 0x63, 0x1c, 0x23, 0x3b, 0x64, 0x0c, 0x23, 0x7b, 0x64, 0x04, 0x23, + 0x00, 0x20, 0xc7, 0xf8, 0x0c, 0x80, 0x3e, 0x60, 0x7d, 0x60, 0xbc, 0x60, + 0xbb, 0x64, 0x08, 0x49, 0xf5, 0xf3, 0x4e, 0xf7, 0xc0, 0xb2, 0x87, 0xf8, + 0x4c, 0x00, 0x01, 0x38, 0xc0, 0xb2, 0x01, 0x28, 0x02, 0xd9, 0x02, 0x23, + 0x87, 0xf8, 0x4c, 0x30, 0x38, 0x46, 0xbd, 0xe8, 0xf0, 0x81, 0x00, 0xbf, + 0x3e, 0x29, 0x86, 0x00, 0x00, 0x48, 0x70, 0x47, 0x0c, 0xdb, 0x01, 0x00, + 0x00, 0x48, 0x70, 0x47, 0x90, 0xdb, 0x01, 0x00, 0x00, 0x48, 0x70, 0x47, + 0x00, 0xa6, 0x0e, 0x00, 0x38, 0xb5, 0xd2, 0xf8, 0x00, 0x56, 0x04, 0x46, + 0x05, 0xf0, 0x7c, 0x05, 0xad, 0x08, 0xff, 0xf7, 0xeb, 0xff, 0x03, 0xe0, + 0x83, 0x78, 0xab, 0x42, 0x07, 0xd0, 0x0c, 0x30, 0x10, 0xb1, 0x03, 0x88, + 0x00, 0x2b, 0xf7, 0xd1, 0x20, 0x46, 0xff, 0xf7, 0xe3, 0xff, 0x03, 0x88, + 0x4f, 0xf4, 0x7a, 0x70, 0x58, 0x43, 0x38, 0xbd, 0x10, 0xb5, 0x14, 0x46, + 0xff, 0xf7, 0xde, 0xff, 0x01, 0x23, 0xc4, 0xf8, 0x60, 0x36, 0xd4, 0xf8, + 0x64, 0x36, 0xdb, 0xb2, 0xb0, 0xfb, 0xf3, 0xf3, 0x4f, 0xf4, 0x7a, 0x70, + 0x58, 0x43, 0x10, 0xbd, 0x2d, 0xe9, 0xff, 0x47, 0x14, 0x46, 0x00, 0x22, + 0x02, 0x92, 0x03, 0x92, 0x02, 0x6a, 0xc4, 0xf8, 0x20, 0x36, 0x0c, 0x2a, + 0x06, 0x46, 0x89, 0x46, 0xd4, 0xf8, 0x28, 0x26, 0x06, 0xdd, 0x4f, 0xea, + 0x12, 0x48, 0x4f, 0xea, 0x88, 0x58, 0x4f, 0xea, 0x98, 0x58, 0x03, 0xe0, + 0x4f, 0xea, 0x12, 0x28, 0x5f, 0xfa, 0x88, 0xf8, 0x01, 0x25, 0x15, 0xfa, + 0x03, 0xf3, 0x00, 0x27, 0x30, 0x46, 0x49, 0x46, 0x22, 0x46, 0x00, 0x97, + 0xf9, 0xf3, 0x96, 0xf0, 0x05, 0x46, 0x01, 0x22, 0x12, 0xfa, 0x07, 0xf3, + 0x2b, 0x42, 0x07, 0xd0, 0x00, 0x92, 0x30, 0x46, 0x49, 0x46, 0x22, 0x46, + 0xf9, 0xf3, 0x8a, 0xf0, 0x25, 0xea, 0x00, 0x05, 0x01, 0x37, 0x1f, 0x2f, + 0xef, 0xd1, 0x30, 0x46, 0x02, 0xa9, 0x03, 0xaa, 0xf9, 0xf3, 0xaa, 0xf0, + 0x02, 0x9b, 0x00, 0x27, 0x25, 0xea, 0x03, 0x0a, 0x3d, 0x46, 0x01, 0x23, + 0xab, 0x40, 0x13, 0xea, 0x0a, 0x0f, 0x08, 0xd0, 0x30, 0x46, 0x49, 0x46, + 0x22, 0x46, 0xeb, 0xb2, 0xff, 0xf7, 0xb6, 0xff, 0x87, 0x42, 0x38, 0xbf, + 0x07, 0x46, 0x01, 0x35, 0x1f, 0x2d, 0xee, 0xd1, 0x08, 0xf1, 0x02, 0x00, + 0xc0, 0x19, 0x04, 0xb0, 0xbd, 0xe8, 0xf0, 0x87, 0x73, 0xb5, 0x05, 0x46, + 0x14, 0x46, 0x1e, 0x46, 0x00, 0x91, 0x4f, 0xf4, 0xcb, 0x62, 0x00, 0x21, + 0x4f, 0xf0, 0xff, 0x33, 0xfe, 0xf3, 0x30, 0xf1, 0x28, 0x46, 0x00, 0x21, + 0x40, 0xf2, 0x5c, 0x62, 0x23, 0x46, 0x00, 0x96, 0xfe, 0xf3, 0x28, 0xf1, + 0x7c, 0xbd, 0x00, 0x22, 0x38, 0xb5, 0x0c, 0x46, 0x13, 0x46, 0x04, 0x21, + 0x05, 0x46, 0xff, 0xf7, 0xe3, 0xff, 0x01, 0x2c, 0x20, 0xf0, 0xf0, 0x73, + 0x08, 0xbf, 0x43, 0xf0, 0xf0, 0x73, 0x28, 0x46, 0x04, 0x21, 0x4f, 0xf0, + 0xff, 0x32, 0xff, 0xf7, 0xd7, 0xff, 0x01, 0x2c, 0x05, 0xd1, 0x49, 0xf6, + 0x40, 0x40, 0xbd, 0xe8, 0x38, 0x40, 0xf9, 0xf3, 0x71, 0xb5, 0x38, 0xbd, + 0x2d, 0xe9, 0xf0, 0x41, 0x04, 0x46, 0x88, 0x46, 0xfe, 0xf3, 0xfc, 0xf0, + 0x00, 0x21, 0x06, 0x46, 0x20, 0x46, 0xfe, 0xf3, 0xc9, 0xf2, 0x07, 0x46, + 0x20, 0x46, 0x00, 0xf0, 0x12, 0xf9, 0x41, 0x46, 0x05, 0x46, 0x3a, 0x46, + 0x18, 0x23, 0x20, 0x46, 0xff, 0xf7, 0x62, 0xff, 0x0b, 0x23, 0x02, 0x30, + 0x58, 0x43, 0x07, 0x4b, 0x31, 0x46, 0xeb, 0x18, 0xb3, 0xfb, 0xf5, 0xf5, + 0x45, 0x43, 0x20, 0x46, 0xfe, 0xf3, 0xb2, 0xf2, 0x0a, 0x23, 0xb5, 0xfb, + 0xf3, 0xf5, 0xa8, 0xb2, 0xbd, 0xe8, 0xf0, 0x81, 0x3f, 0x42, 0x0f, 0x00, + 0x70, 0xb5, 0x04, 0x46, 0x0e, 0x46, 0xfe, 0xf3, 0xd3, 0xf0, 0x00, 0x21, + 0x05, 0x46, 0x20, 0x46, 0xfe, 0xf3, 0xa0, 0xf2, 0x31, 0x46, 0x02, 0x46, + 0x20, 0x46, 0xff, 0xf7, 0x15, 0xff, 0x29, 0x46, 0x06, 0x46, 0x20, 0x46, + 0xfe, 0xf3, 0x96, 0xf2, 0x30, 0x46, 0x70, 0xbd, 0x70, 0xb5, 0x04, 0x46, + 0x0e, 0x46, 0xfe, 0xf3, 0xbd, 0xf0, 0x00, 0x21, 0x05, 0x46, 0x20, 0x46, + 0xfe, 0xf3, 0x8a, 0xf2, 0x31, 0x46, 0x02, 0x46, 0x20, 0x46, 0xff, 0xf7, + 0x19, 0xff, 0x29, 0x46, 0x06, 0x46, 0x20, 0x46, 0xfe, 0xf3, 0x80, 0xf2, + 0x30, 0x46, 0x70, 0xbd, 0xff, 0xf7, 0xe8, 0xbf, 0x2d, 0xe9, 0xf0, 0x41, + 0x16, 0x4c, 0x05, 0x46, 0x27, 0x68, 0x2f, 0xbb, 0xfe, 0xf3, 0xa2, 0xf0, + 0x39, 0x46, 0x06, 0x46, 0x28, 0x46, 0xfe, 0xf3, 0x6f, 0xf2, 0xd0, 0xf8, + 0x14, 0x86, 0xd0, 0xf8, 0x14, 0x36, 0x07, 0x46, 0x98, 0x45, 0x18, 0xbf, + 0xd0, 0xf8, 0x14, 0x86, 0x42, 0xf2, 0x10, 0x70, 0xf9, 0xf3, 0xfe, 0xf4, + 0xd7, 0xf8, 0x14, 0x36, 0xd7, 0xf8, 0x14, 0x26, 0x28, 0x46, 0x93, 0x42, + 0x18, 0xbf, 0xd7, 0xf8, 0x14, 0x36, 0x31, 0x46, 0xc8, 0xeb, 0x03, 0x08, + 0x64, 0x23, 0x03, 0xfb, 0x08, 0xf3, 0x23, 0x60, 0xfe, 0xf3, 0x50, 0xf2, + 0x20, 0x68, 0xbd, 0xe8, 0xf0, 0x81, 0x00, 0xbf, 0x80, 0x08, 0x02, 0x00, + 0xf8, 0xb5, 0x1f, 0x46, 0x04, 0x46, 0x15, 0x46, 0xfe, 0xf3, 0x72, 0xf0, + 0x00, 0x21, 0x06, 0x46, 0x20, 0x46, 0xfe, 0xf3, 0x3f, 0xf2, 0x02, 0x23, + 0xc0, 0xf8, 0x58, 0x36, 0x57, 0xb1, 0xd0, 0xf8, 0x5c, 0x36, 0x05, 0xf0, + 0x3f, 0x02, 0x23, 0xf4, 0xfc, 0x43, 0x43, 0xea, 0x42, 0x23, 0xc0, 0xf8, + 0x5c, 0x36, 0x04, 0xe0, 0xd0, 0xf8, 0x5c, 0x56, 0x6d, 0x0a, 0x05, 0xf0, + 0x3f, 0x05, 0x20, 0x46, 0x31, 0x46, 0xfe, 0xf3, 0x27, 0xf2, 0x28, 0x46, + 0xf8, 0xbd, 0x01, 0x21, 0xff, 0xf7, 0x31, 0xbf, 0x00, 0x21, 0xff, 0xf7, + 0x2e, 0xbf, 0x08, 0xb1, 0xf9, 0xf3, 0x78, 0xb2, 0x70, 0x47, 0x00, 0x00, + 0xf8, 0xb5, 0x08, 0x4c, 0x05, 0x46, 0x27, 0x68, 0x08, 0xe0, 0x28, 0x46, + 0x3e, 0x68, 0xfe, 0xf3, 0x7b, 0xf1, 0x39, 0x46, 0x7a, 0x68, 0xf9, 0xf3, + 0x75, 0xf7, 0x37, 0x46, 0x00, 0x2f, 0xf4, 0xd1, 0x27, 0x60, 0xf8, 0xbd, + 0x6c, 0x27, 0x00, 0x00, 0x00, 0x23, 0x43, 0x66, 0x70, 0x47, 0xf7, 0xb5, + 0x00, 0x22, 0x01, 0x21, 0x13, 0x46, 0x05, 0x46, 0xf9, 0xf3, 0x0c, 0xf0, + 0x00, 0x24, 0x07, 0x46, 0x21, 0x46, 0x28, 0x22, 0x23, 0x46, 0x28, 0x46, + 0x00, 0x94, 0xfe, 0xf3, 0x29, 0xf0, 0x01, 0x21, 0x06, 0x46, 0x3b, 0x46, + 0x28, 0x46, 0x4f, 0xf0, 0xff, 0x32, 0xf8, 0xf3, 0xfb, 0xf7, 0x28, 0x46, + 0x21, 0x46, 0x28, 0x22, 0x4f, 0xf0, 0xff, 0x33, 0x00, 0x96, 0xfe, 0xf3, + 0x19, 0xf0, 0xfe, 0xbd, 0x70, 0xb5, 0x45, 0x6e, 0x04, 0x46, 0x65, 0xb1, + 0xd0, 0xf8, 0xc8, 0x30, 0x34, 0x33, 0x50, 0xf8, 0x23, 0x20, 0xc3, 0x6d, + 0x9a, 0x42, 0x03, 0xd1, 0x00, 0x6e, 0xa8, 0x47, 0x05, 0x46, 0x00, 0xe0, + 0x00, 0x25, 0x20, 0x46, 0x61, 0x6d, 0xff, 0xf7, 0x39, 0xff, 0xa3, 0x6e, + 0x06, 0x46, 0x53, 0xb1, 0xd4, 0xf8, 0xc8, 0x20, 0x34, 0x32, 0x54, 0xf8, + 0x22, 0x10, 0xe2, 0x6d, 0x91, 0x42, 0x02, 0xd1, 0x20, 0x6e, 0x29, 0x46, + 0x98, 0x47, 0x30, 0x46, 0x70, 0xbd, 0x10, 0xb5, 0x04, 0x46, 0xfe, 0xf3, + 0x23, 0xf1, 0x01, 0x46, 0x20, 0x46, 0xbd, 0xe8, 0x10, 0x40, 0xff, 0xf7, + 0x09, 0xbf, 0x10, 0xb5, 0x04, 0x46, 0xfe, 0xf3, 0x19, 0xf1, 0x01, 0x46, + 0x20, 0x46, 0xbd, 0xe8, 0x10, 0x40, 0xff, 0xf7, 0x2d, 0xbf, 0x70, 0x47, + 0x70, 0xb5, 0x45, 0x6e, 0x04, 0x46, 0x65, 0xb1, 0xd0, 0xf8, 0xc8, 0x30, + 0x34, 0x33, 0x50, 0xf8, 0x23, 0x20, 0xc3, 0x6d, 0x9a, 0x42, 0x03, 0xd1, + 0x00, 0x6e, 0xa8, 0x47, 0x05, 0x46, 0x00, 0xe0, 0x00, 0x25, 0x20, 0x46, + 0x61, 0x6d, 0xff, 0xf7, 0xbf, 0xfe, 0xa3, 0x6e, 0x06, 0x46, 0x53, 0xb1, + 0xd4, 0xf8, 0xc8, 0x20, 0x34, 0x32, 0x54, 0xf8, 0x22, 0x10, 0xe2, 0x6d, + 0x91, 0x42, 0x02, 0xd1, 0x20, 0x6e, 0x29, 0x46, 0x98, 0x47, 0x30, 0x46, + 0x70, 0xbd, 0x70, 0xb5, 0x04, 0x46, 0xfe, 0xf3, 0x65, 0xf1, 0x00, 0x28, + 0x3c, 0xd0, 0xa3, 0x68, 0xb3, 0xf5, 0x02, 0x6f, 0x09, 0xd0, 0x40, 0xf6, + 0x04, 0x02, 0x93, 0x42, 0x07, 0xd1, 0xe5, 0x68, 0x0c, 0x2d, 0x94, 0xbf, + 0x00, 0x25, 0x01, 0x25, 0x02, 0xe0, 0x01, 0x25, 0x00, 0xe0, 0x00, 0x25, + 0xed, 0xb2, 0x4d, 0xb9, 0x20, 0x46, 0x4f, 0xf4, 0x00, 0x61, 0x2a, 0x46, + 0xd4, 0xf8, 0xc8, 0x60, 0xfe, 0xf3, 0x50, 0xf1, 0x30, 0xb9, 0x70, 0xbd, + 0xd4, 0xf8, 0x84, 0x00, 0x10, 0xf5, 0x40, 0x50, 0x1a, 0xd0, 0x00, 0x26, + 0xd0, 0xf8, 0x30, 0x31, 0x23, 0xf0, 0x04, 0x03, 0xc0, 0xf8, 0x30, 0x31, + 0x43, 0xf0, 0x01, 0x03, 0xc0, 0xf8, 0x30, 0x31, 0x1b, 0x09, 0x03, 0xf0, + 0x07, 0x03, 0x03, 0x2b, 0x03, 0xd0, 0x20, 0x46, 0x00, 0x21, 0xfe, 0xf3, + 0xc7, 0xf1, 0x2d, 0xb9, 0x20, 0x46, 0x31, 0x46, 0xbd, 0xe8, 0x70, 0x40, + 0xfe, 0xf3, 0x40, 0xb1, 0x70, 0xbd, 0x43, 0x69, 0x2d, 0xe9, 0xf7, 0x43, + 0x22, 0x2b, 0x05, 0x46, 0x0e, 0x46, 0x40, 0xf3, 0xa6, 0x80, 0xfe, 0xf3, + 0x1b, 0xf1, 0x00, 0x28, 0x00, 0xf0, 0x9f, 0x80, 0x07, 0x2e, 0x00, 0xf2, + 0x9e, 0x80, 0xab, 0x68, 0xb3, 0xf5, 0x02, 0x6f, 0x0b, 0xd0, 0x40, 0xf6, + 0x04, 0x02, 0x93, 0x42, 0x0a, 0xd1, 0xeb, 0x68, 0x0c, 0x2b, 0x94, 0xbf, + 0x4f, 0xf0, 0x00, 0x08, 0x4f, 0xf0, 0x01, 0x08, 0x04, 0xe0, 0x4f, 0xf0, + 0x01, 0x08, 0x01, 0xe0, 0x4f, 0xf0, 0x00, 0x08, 0x5f, 0xfa, 0x88, 0xf8, + 0xb8, 0xf1, 0x00, 0x0f, 0x0a, 0xd1, 0x28, 0x46, 0x4f, 0xf4, 0x00, 0x61, + 0x42, 0x46, 0xd5, 0xf8, 0xc8, 0x90, 0xfe, 0xf3, 0xfb, 0xf0, 0x04, 0x46, + 0x38, 0xb9, 0x79, 0xe0, 0xd5, 0xf8, 0x84, 0x40, 0x14, 0xf5, 0x40, 0x54, + 0x74, 0xd0, 0x4f, 0xf0, 0x00, 0x09, 0x03, 0x2e, 0x03, 0xd0, 0x28, 0x46, + 0x01, 0x21, 0xfe, 0xf3, 0x7d, 0xf1, 0xd4, 0xf8, 0x30, 0x31, 0x23, 0xf0, + 0x04, 0x03, 0xc4, 0xf8, 0x30, 0x31, 0x01, 0x23, 0x9e, 0x42, 0xc4, 0xf8, + 0x30, 0x31, 0x04, 0xd9, 0x04, 0x2e, 0x0c, 0xbf, 0x0d, 0x23, 0x09, 0x23, + 0x00, 0xe0, 0x0d, 0x23, 0xc4, 0xf8, 0x30, 0x31, 0xd4, 0xf8, 0x30, 0x31, + 0x01, 0x2e, 0x23, 0xf0, 0x01, 0x03, 0xc4, 0xf8, 0x30, 0x31, 0x01, 0xd9, + 0x04, 0x2e, 0x36, 0xd1, 0xff, 0x27, 0x00, 0x21, 0x4f, 0xf4, 0xe2, 0x72, + 0x3b, 0x46, 0x28, 0x46, 0x00, 0x97, 0xfd, 0xf3, 0x0d, 0xf7, 0x22, 0x23, + 0x00, 0x93, 0x00, 0x21, 0x4f, 0xf4, 0xee, 0x72, 0x3b, 0x46, 0x28, 0x46, + 0xfd, 0xf3, 0x04, 0xf7, 0x28, 0x23, 0x00, 0x93, 0x00, 0x21, 0x4f, 0xf4, + 0xe6, 0x72, 0x3b, 0x46, 0x28, 0x46, 0xfd, 0xf3, 0xfb, 0xf6, 0x81, 0x23, + 0x00, 0x93, 0x00, 0x21, 0x4f, 0xf4, 0xe8, 0x72, 0x3b, 0x46, 0x28, 0x46, + 0xfd, 0xf3, 0xf2, 0xf6, 0x01, 0x23, 0x00, 0x93, 0x00, 0x21, 0x4f, 0xf4, + 0xa4, 0x72, 0x4f, 0xf0, 0xff, 0x33, 0x28, 0x46, 0xfd, 0xf3, 0xe8, 0xf6, + 0x28, 0x46, 0x00, 0x21, 0x4f, 0xf4, 0xa6, 0x72, 0x4f, 0xf6, 0xff, 0x73, + 0x00, 0x97, 0xfd, 0xf3, 0xdf, 0xf6, 0xd4, 0xf8, 0x30, 0x31, 0x23, 0xf0, + 0x70, 0x03, 0x43, 0xea, 0x06, 0x16, 0xc4, 0xf8, 0x30, 0x61, 0xd4, 0xf8, + 0x30, 0x31, 0x23, 0xf0, 0x08, 0x03, 0xc4, 0xf8, 0x30, 0x31, 0xb8, 0xf1, + 0x00, 0x0f, 0x07, 0xd1, 0x28, 0x46, 0x49, 0x46, 0xfe, 0xf3, 0x94, 0xf0, + 0x02, 0xe0, 0x04, 0x46, 0x00, 0xe0, 0x00, 0x24, 0x20, 0x46, 0xbd, 0xe8, + 0xfe, 0x83, 0x00, 0x20, 0x70, 0x47, 0xff, 0xf7, 0x67, 0xbe, 0xff, 0xf7, + 0x62, 0xbe, 0x2d, 0xe9, 0xf0, 0x41, 0x04, 0x46, 0x0d, 0x46, 0x16, 0x46, + 0xfd, 0xf3, 0xb2, 0xf7, 0x07, 0x46, 0x18, 0xb9, 0x20, 0x46, 0x01, 0x21, + 0xfd, 0xf3, 0xea, 0xf7, 0x20, 0x46, 0x13, 0xf0, 0x73, 0xfd, 0x80, 0x46, + 0x90, 0xb1, 0xce, 0xb1, 0x00, 0x23, 0x2b, 0x80, 0x00, 0x26, 0x06, 0xf1, + 0x82, 0x01, 0x40, 0x46, 0xf4, 0xf3, 0xf6, 0xf5, 0xc3, 0xb2, 0xb3, 0x40, + 0x2a, 0x88, 0x01, 0x36, 0x13, 0x43, 0x05, 0x2e, 0x2b, 0x80, 0xf2, 0xd1, + 0x00, 0x25, 0x01, 0xe0, 0x6f, 0xf0, 0x1d, 0x05, 0x37, 0xb9, 0x20, 0x46, + 0x39, 0x46, 0xfd, 0xf3, 0xcb, 0xf7, 0x01, 0xe0, 0x6f, 0xf0, 0x19, 0x05, + 0x28, 0x46, 0xbd, 0xe8, 0xf0, 0x81, 0x07, 0xb5, 0x00, 0x23, 0x02, 0xa9, + 0x21, 0xf8, 0x02, 0x3d, 0x01, 0x22, 0xff, 0xf7, 0xc6, 0xff, 0xbd, 0xf8, + 0x06, 0x00, 0x0e, 0xbd, 0xd0, 0xf8, 0x6c, 0x32, 0x99, 0x42, 0x05, 0xd1, + 0x88, 0x79, 0xd0, 0xf1, 0x01, 0x00, 0x38, 0xbf, 0x00, 0x20, 0x70, 0x47, + 0x00, 0x20, 0x70, 0x47, 0x03, 0x68, 0x2d, 0xe9, 0xf0, 0x41, 0x1f, 0x68, + 0x04, 0x46, 0xbe, 0x68, 0x0d, 0x46, 0x90, 0x46, 0x30, 0x46, 0x21, 0x69, + 0x02, 0xf0, 0x50, 0xda, 0xb8, 0xf1, 0x00, 0x0f, 0x0a, 0xd0, 0x3b, 0x68, + 0x1b, 0x7e, 0x3b, 0xb1, 0x21, 0x69, 0x30, 0x46, 0x2a, 0x46, 0x01, 0x23, + 0xbd, 0xe8, 0xf0, 0x41, 0x02, 0xf0, 0xfa, 0x99, 0xbd, 0xe8, 0xf0, 0x81, + 0x2d, 0xe9, 0xf3, 0x41, 0x1f, 0x46, 0x03, 0x68, 0x04, 0x46, 0x01, 0x91, + 0x00, 0x92, 0x08, 0x9d, 0xd3, 0xf8, 0x00, 0x80, 0x09, 0xb1, 0x0d, 0x29, + 0x3e, 0xdd, 0x61, 0x68, 0x20, 0x46, 0x00, 0x22, 0xff, 0xf7, 0xd2, 0xff, + 0xe1, 0x68, 0x00, 0x26, 0x66, 0x60, 0x31, 0xb1, 0x23, 0x68, 0x22, 0x89, + 0x1b, 0x68, 0x58, 0x68, 0xf9, 0xf3, 0x6e, 0xf5, 0xe6, 0x60, 0x00, 0x9b, + 0x13, 0xb1, 0xb3, 0xf5, 0x96, 0x7f, 0x26, 0xdb, 0x40, 0x46, 0x29, 0x46, + 0xff, 0xf7, 0xb2, 0xff, 0x20, 0xb3, 0x01, 0x99, 0x51, 0xb1, 0x23, 0x68, + 0x1b, 0x68, 0x58, 0x68, 0xf9, 0xf3, 0x4c, 0xf5, 0xe0, 0x60, 0xf0, 0xb1, + 0x39, 0x46, 0x01, 0x9a, 0xf4, 0xf3, 0x9a, 0xf6, 0x01, 0xa9, 0x04, 0x22, + 0x65, 0x61, 0x04, 0xf1, 0x08, 0x00, 0xf4, 0xf3, 0x93, 0xf6, 0x20, 0x1d, + 0x69, 0x46, 0x04, 0x22, 0xf4, 0xf3, 0x8e, 0xf6, 0x00, 0x98, 0x70, 0xb1, + 0x20, 0x46, 0x61, 0x68, 0x01, 0x22, 0xff, 0xf7, 0x9d, 0xff, 0x00, 0x20, + 0x07, 0xe0, 0x6f, 0xf0, 0x1c, 0x00, 0x04, 0xe0, 0x6f, 0xf0, 0x01, 0x00, + 0x01, 0xe0, 0x6f, 0xf0, 0x1a, 0x00, 0xbd, 0xe8, 0xfc, 0x81, 0x2d, 0xe9, + 0xf0, 0x47, 0x86, 0xb0, 0x03, 0x68, 0x10, 0x9c, 0xdd, 0xf8, 0x44, 0xa0, + 0x16, 0x46, 0x02, 0xf0, 0x01, 0x02, 0x00, 0x92, 0x05, 0x46, 0x22, 0x46, + 0x18, 0x68, 0x53, 0x46, 0x13, 0x9f, 0x16, 0xf0, 0x11, 0xd8, 0x80, 0x46, + 0x00, 0x28, 0x40, 0xf0, 0x9d, 0x80, 0x02, 0x2e, 0x4c, 0xd0, 0x03, 0x2e, + 0x1a, 0xd0, 0x01, 0x2e, 0x40, 0xf0, 0x8b, 0x80, 0x21, 0x46, 0x04, 0x22, + 0x04, 0xa8, 0xf4, 0xf3, 0x59, 0xf6, 0x02, 0x22, 0x21, 0x1d, 0x05, 0xa8, + 0xf4, 0xf3, 0x54, 0xf6, 0x55, 0xf8, 0x10, 0x0b, 0x39, 0x46, 0xbd, 0xf8, + 0x14, 0x80, 0x04, 0x9e, 0x32, 0xf0, 0x8a, 0xd8, 0x41, 0x46, 0x00, 0x90, + 0x32, 0x46, 0x28, 0x46, 0xa3, 0x1d, 0x2b, 0xe0, 0x02, 0x22, 0x21, 0x46, + 0x0d, 0xf1, 0x16, 0x00, 0xf4, 0xf3, 0x40, 0xf6, 0x21, 0x1d, 0x04, 0x22, + 0x04, 0xa8, 0xf4, 0xf3, 0x3b, 0xf6, 0x02, 0x22, 0x05, 0xa8, 0x04, 0xf1, + 0x08, 0x01, 0xf4, 0xf3, 0x35, 0xf6, 0xbd, 0xf8, 0x16, 0x30, 0x01, 0x2b, + 0x60, 0xd1, 0xa3, 0x7a, 0x6a, 0x68, 0x93, 0x42, 0x5f, 0xda, 0x39, 0x46, + 0x4f, 0xf0, 0x18, 0x09, 0x28, 0x68, 0x09, 0xfb, 0x03, 0x59, 0xbd, 0xf8, + 0x14, 0x80, 0x04, 0x9e, 0x32, 0xf0, 0x60, 0xd8, 0x09, 0xf1, 0x10, 0x09, + 0x00, 0x90, 0x41, 0x46, 0x48, 0x46, 0x32, 0x46, 0x04, 0xf1, 0x0b, 0x03, + 0xff, 0xf7, 0x4a, 0xff, 0x80, 0x46, 0x4d, 0xe0, 0x0e, 0x9b, 0x6a, 0x68, + 0x1b, 0x68, 0x93, 0x42, 0x03, 0x93, 0x42, 0xda, 0x00, 0x2b, 0x40, 0xdb, + 0x01, 0x23, 0x06, 0xa9, 0xad, 0xf8, 0x16, 0x30, 0x0b, 0x23, 0x21, 0xf8, + 0x04, 0x3d, 0xa0, 0x1c, 0x32, 0x46, 0xf4, 0xf3, 0x03, 0xf6, 0x0d, 0xf1, + 0x18, 0x09, 0x0d, 0xf1, 0x16, 0x01, 0x32, 0x46, 0x20, 0x46, 0xf4, 0xf3, + 0xfb, 0xf5, 0x59, 0xf8, 0x0c, 0x1d, 0x18, 0x27, 0x01, 0x31, 0x07, 0xfb, + 0x01, 0x51, 0x32, 0x46, 0x04, 0xf1, 0x08, 0x00, 0xf4, 0xf3, 0xf0, 0xf5, + 0x01, 0x22, 0x49, 0x46, 0x04, 0xf1, 0x0a, 0x00, 0xf4, 0xf3, 0xea, 0xf5, + 0x03, 0x99, 0x04, 0x22, 0x07, 0xfb, 0x01, 0x51, 0x20, 0x1d, 0x14, 0x31, + 0xf4, 0xf3, 0xe2, 0xf5, 0x03, 0x9b, 0x01, 0x33, 0x5f, 0x43, 0xea, 0x5b, + 0xeb, 0x19, 0x02, 0xf1, 0x0b, 0x01, 0x8a, 0x45, 0x0e, 0xd3, 0x04, 0xf1, + 0x0b, 0x00, 0x59, 0x68, 0xf4, 0xf3, 0xd4, 0xf5, 0x0a, 0xe0, 0x6f, 0xf0, + 0x16, 0x08, 0x07, 0xe0, 0x6f, 0xf0, 0x24, 0x08, 0x04, 0xe0, 0x6f, 0xf0, + 0x01, 0x08, 0x01, 0xe0, 0x6f, 0xf0, 0x0d, 0x08, 0x40, 0x46, 0x06, 0xb0, + 0xbd, 0xe8, 0xf0, 0x87, 0xf7, 0xb5, 0x03, 0x68, 0x07, 0x46, 0x1d, 0x68, + 0x95, 0xf8, 0x70, 0x22, 0x00, 0x2a, 0x2d, 0xd0, 0x02, 0x89, 0x46, 0x69, + 0x3a, 0xb9, 0x28, 0x46, 0x06, 0xf1, 0xbc, 0x01, 0x13, 0x46, 0x00, 0x92, + 0x1a, 0xf0, 0x26, 0xde, 0x22, 0xe0, 0x99, 0x89, 0x68, 0x68, 0x51, 0x18, + 0xf9, 0xf3, 0xb0, 0xf4, 0x3b, 0x68, 0x04, 0x46, 0x18, 0xb9, 0x9a, 0x68, + 0x01, 0x32, 0x9a, 0x60, 0x16, 0xe0, 0x9b, 0x89, 0xa2, 0x8a, 0x00, 0x69, + 0xf9, 0x68, 0xc0, 0x18, 0xd3, 0x1a, 0xa3, 0x82, 0x3a, 0x89, 0x20, 0x61, + 0xf4, 0xf3, 0x9a, 0xf5, 0xe3, 0x8d, 0xb2, 0x68, 0x43, 0xf0, 0x40, 0x03, + 0x28, 0x46, 0x21, 0x46, 0xe3, 0x85, 0x03, 0xb0, 0xbd, 0xe8, 0xf0, 0x40, + 0x1a, 0xf0, 0xa4, 0x9e, 0x03, 0xb0, 0xf0, 0xbd, 0x38, 0xb5, 0x05, 0x46, + 0x00, 0x24, 0x0b, 0xe0, 0x18, 0x20, 0x00, 0xfb, 0x04, 0x50, 0x10, 0x30, + 0x41, 0x68, 0x21, 0xb1, 0x03, 0x69, 0x13, 0xb1, 0x01, 0x22, 0xff, 0xf7, + 0x93, 0xfe, 0x01, 0x34, 0x6b, 0x68, 0x9c, 0x42, 0xf0, 0xdb, 0x00, 0x20, + 0x38, 0xbd, 0xf8, 0xb5, 0x00, 0x24, 0x07, 0x46, 0x06, 0x46, 0x25, 0x46, + 0x08, 0xe0, 0x3b, 0x68, 0x31, 0x6a, 0x98, 0x68, 0x02, 0xf0, 0xde, 0xd8, + 0x00, 0xb9, 0x01, 0x35, 0x01, 0x34, 0x18, 0x36, 0x7b, 0x68, 0x9c, 0x42, + 0xf3, 0xdb, 0x28, 0x46, 0xf8, 0xbd, 0x00, 0x00, 0x10, 0xb5, 0x8a, 0x6b, + 0x00, 0x23, 0x09, 0xe0, 0xc8, 0x18, 0x90, 0xf8, 0x3c, 0x00, 0x06, 0x4c, + 0x00, 0xf0, 0x7f, 0x00, 0x20, 0x56, 0x00, 0x28, 0x04, 0xdb, 0x01, 0x33, + 0x93, 0x42, 0xf3, 0xd1, 0x00, 0x20, 0x10, 0xbd, 0x01, 0x20, 0x10, 0xbd, + 0x40, 0x1b, 0x86, 0x00, 0x02, 0x29, 0x2d, 0xe9, 0xf8, 0x4f, 0x05, 0x46, + 0x0c, 0x46, 0x16, 0x46, 0x9b, 0x46, 0x14, 0xbf, 0x4f, 0xf0, 0xff, 0x39, + 0x4f, 0xf0, 0x00, 0x09, 0x14, 0xbf, 0x00, 0x27, 0x01, 0x27, 0x4f, 0xf0, + 0x00, 0x08, 0x28, 0xe0, 0x02, 0x2c, 0x14, 0xbf, 0x4f, 0xf0, 0xff, 0x33, + 0x00, 0x23, 0x99, 0x45, 0x11, 0xd0, 0x02, 0x2c, 0xc9, 0xeb, 0x07, 0x02, + 0x08, 0xd1, 0x04, 0x2e, 0x08, 0xd0, 0x06, 0x2e, 0x06, 0xd0, 0x08, 0x2e, + 0x14, 0xbf, 0x04, 0x23, 0x00, 0x23, 0x02, 0xe0, 0x04, 0x23, 0x00, 0xe0, + 0x00, 0x23, 0x9a, 0x42, 0x0e, 0xdd, 0x47, 0xf4, 0x2c, 0x5a, 0x1f, 0xfa, + 0x8a, 0xfa, 0xd5, 0xf8, 0x5c, 0x01, 0x51, 0x46, 0x38, 0xf0, 0x2a, 0xdf, + 0x20, 0xb1, 0x2b, 0xf8, 0x18, 0xa0, 0xb9, 0x46, 0x08, 0xf1, 0x01, 0x08, + 0x01, 0x37, 0x02, 0x2c, 0x0c, 0xbf, 0x0e, 0x23, 0x00, 0x23, 0x9f, 0x42, + 0x02, 0xdc, 0xb8, 0xf1, 0x1f, 0x0f, 0xcd, 0xd9, 0x0a, 0x9b, 0xc3, 0xf8, + 0x00, 0x80, 0xbd, 0xe8, 0xf8, 0x8f, 0x2d, 0xe9, 0xf7, 0x4f, 0x1d, 0x46, + 0x0c, 0x9b, 0x01, 0x92, 0xd0, 0xf8, 0x00, 0x80, 0x46, 0x7b, 0x0c, 0x46, + 0x00, 0x93, 0x00, 0x27, 0xef, 0xe0, 0x07, 0x22, 0x00, 0x21, 0x20, 0x46, + 0xf4, 0xf3, 0x56, 0xf5, 0x00, 0x9b, 0x02, 0x2e, 0x33, 0xf8, 0x02, 0x2b, + 0x5f, 0xfa, 0x82, 0xf9, 0x00, 0x93, 0x84, 0xf8, 0x00, 0x90, 0x08, 0xd1, + 0x04, 0x2d, 0x08, 0xd0, 0x06, 0x2d, 0x06, 0xd0, 0x08, 0x2d, 0x14, 0xbf, + 0x02, 0x23, 0x00, 0x23, 0x02, 0xe0, 0x02, 0x23, 0x00, 0xe0, 0x00, 0x23, + 0xa6, 0xf1, 0x02, 0x0a, 0xda, 0xf1, 0x00, 0x02, 0xc3, 0xeb, 0x09, 0x03, + 0x42, 0xeb, 0x0a, 0x02, 0x93, 0x42, 0x10, 0xdb, 0x02, 0x2e, 0x08, 0xd1, + 0x04, 0x2d, 0x08, 0xd0, 0x06, 0x2d, 0x06, 0xd0, 0x08, 0x2d, 0x14, 0xbf, + 0x02, 0x23, 0x00, 0x23, 0x02, 0xe0, 0x02, 0x23, 0x00, 0xe0, 0x00, 0x23, + 0xc3, 0xeb, 0x09, 0x09, 0x11, 0xe0, 0xa6, 0xf1, 0x02, 0x0c, 0xdc, 0xf1, + 0x00, 0x09, 0x49, 0xeb, 0x0c, 0x09, 0x07, 0xe0, 0xd8, 0xf8, 0x5c, 0x01, + 0x49, 0x46, 0x38, 0xf0, 0x85, 0xde, 0x20, 0xb9, 0x09, 0xf1, 0x01, 0x09, + 0x23, 0x78, 0x99, 0x45, 0xf4, 0xd9, 0x02, 0x2e, 0x94, 0xf8, 0x00, 0xa0, + 0x08, 0xd1, 0x04, 0x2d, 0x08, 0xd0, 0x06, 0x2d, 0x06, 0xd0, 0x08, 0x2d, + 0x14, 0xbf, 0x02, 0x23, 0x00, 0x23, 0x02, 0xe0, 0x02, 0x23, 0x00, 0xe0, + 0x00, 0x23, 0x53, 0x44, 0x02, 0x2e, 0x0c, 0xbf, 0x0e, 0x22, 0x00, 0x22, + 0x93, 0x42, 0x0f, 0xdc, 0x02, 0x2e, 0x08, 0xd1, 0x04, 0x2d, 0x08, 0xd0, + 0x06, 0x2d, 0x06, 0xd0, 0x08, 0x2d, 0x14, 0xbf, 0x02, 0x23, 0x00, 0x23, + 0x02, 0xe0, 0x02, 0x23, 0x00, 0xe0, 0x00, 0x23, 0x9a, 0x44, 0x11, 0xe0, + 0x02, 0x2e, 0x0c, 0xbf, 0x4f, 0xf0, 0x0e, 0x0a, 0x4f, 0xf0, 0x00, 0x0a, + 0x07, 0xe0, 0xd8, 0xf8, 0x5c, 0x01, 0x51, 0x46, 0x38, 0xf0, 0x4c, 0xde, + 0x20, 0xb9, 0x0a, 0xf1, 0xff, 0x3a, 0x23, 0x78, 0x9a, 0x45, 0xf4, 0xd2, + 0x4f, 0xf0, 0x00, 0x0b, 0x64, 0xe0, 0x0b, 0xf1, 0x02, 0x02, 0x53, 0xf8, + 0x22, 0x10, 0xb1, 0xf8, 0x06, 0xc0, 0x48, 0x8e, 0x1c, 0xf0, 0x20, 0x0c, + 0xc3, 0xb2, 0x0d, 0xd0, 0x00, 0xf4, 0x40, 0x72, 0xb2, 0xf5, 0x80, 0x7f, + 0x02, 0xd1, 0x9a, 0x1c, 0x02, 0x3b, 0x06, 0xe0, 0xb2, 0xf5, 0x00, 0x7f, + 0x02, 0xd1, 0x9a, 0x1e, 0x02, 0x33, 0x00, 0xe0, 0x1a, 0x46, 0x4b, 0x45, + 0x01, 0xd3, 0x53, 0x45, 0x03, 0xd9, 0x4a, 0x45, 0x42, 0xd3, 0x52, 0x45, + 0x40, 0xd8, 0xbc, 0xf1, 0x00, 0x0f, 0x16, 0xd0, 0x4b, 0x45, 0x14, 0xd3, + 0x53, 0x45, 0x12, 0xd8, 0x00, 0xf4, 0x40, 0x70, 0xb0, 0xf5, 0x80, 0x7f, + 0x05, 0xd1, 0x20, 0x79, 0xff, 0x28, 0x0a, 0xd0, 0x01, 0x30, 0x20, 0x71, + 0x07, 0xe0, 0xb0, 0xf5, 0x00, 0x7f, 0x04, 0xd1, 0x60, 0x79, 0xff, 0x28, + 0x01, 0xd0, 0x01, 0x30, 0x60, 0x71, 0xc8, 0x88, 0x80, 0x06, 0x0b, 0xd5, + 0x4a, 0x45, 0x09, 0xd3, 0x52, 0x45, 0x07, 0xd8, 0x9a, 0x42, 0x05, 0xd0, + 0xa3, 0x79, 0xff, 0x2b, 0x1a, 0xd0, 0x01, 0x33, 0xa3, 0x71, 0x17, 0xe0, + 0x23, 0x78, 0x0e, 0x2b, 0x0f, 0xd8, 0x40, 0x46, 0xff, 0xf7, 0xc0, 0xfe, + 0x28, 0xb1, 0xe3, 0x78, 0xff, 0x2b, 0x0d, 0xd0, 0x01, 0x33, 0xe3, 0x70, + 0x0a, 0xe0, 0xa3, 0x78, 0xff, 0x2b, 0x07, 0xd0, 0x01, 0x33, 0xa3, 0x70, + 0x04, 0xe0, 0x63, 0x78, 0xff, 0x2b, 0x01, 0xd0, 0x01, 0x33, 0x63, 0x70, + 0x0b, 0xf1, 0x01, 0x0b, 0xd8, 0xf8, 0x18, 0x35, 0x1a, 0x68, 0x93, 0x45, + 0x95, 0xd3, 0x01, 0x37, 0x07, 0x34, 0x0d, 0x9b, 0x9f, 0x42, 0x04, 0xda, + 0x01, 0x9a, 0x13, 0x68, 0x9f, 0x42, 0xff, 0xf6, 0x08, 0xaf, 0x01, 0x9b, + 0x1f, 0x60, 0xbd, 0xe8, 0xfe, 0x8f, 0x2d, 0xe9, 0xf0, 0x47, 0x03, 0xf4, + 0x40, 0x78, 0x04, 0x46, 0x1d, 0x46, 0xd8, 0xb2, 0xa8, 0xf5, 0x00, 0x73, + 0xd3, 0xf1, 0x00, 0x08, 0x48, 0xeb, 0x03, 0x08, 0xa0, 0xf1, 0x02, 0x0c, + 0x86, 0x1c, 0xb8, 0xf1, 0x00, 0x0f, 0x01, 0xd0, 0x33, 0x46, 0x01, 0xe0, + 0x63, 0x46, 0xb4, 0x46, 0x00, 0x27, 0x37, 0xe0, 0x0e, 0x78, 0xa0, 0xf1, + 0x05, 0x09, 0x4e, 0x45, 0x30, 0xdb, 0x00, 0xf1, 0x05, 0x09, 0x4e, 0x45, + 0x2c, 0xdc, 0x91, 0xf8, 0x02, 0x90, 0xb9, 0xf1, 0x00, 0x0f, 0x13, 0xd1, + 0x91, 0xf8, 0x03, 0xa0, 0xba, 0xf1, 0x00, 0x0f, 0x0e, 0xd1, 0x91, 0xf8, + 0x04, 0xa0, 0xba, 0xf1, 0x00, 0x0f, 0x09, 0xd1, 0x91, 0xf8, 0x05, 0xa0, + 0xba, 0xf1, 0x00, 0x0f, 0x04, 0xd1, 0x91, 0xf8, 0x06, 0xa0, 0xba, 0xf1, + 0x00, 0x0f, 0x13, 0xd0, 0x9e, 0x42, 0x06, 0xd1, 0x8e, 0x79, 0x3e, 0xbb, + 0xb8, 0xf1, 0x00, 0x0f, 0x0a, 0xd0, 0x0e, 0x79, 0x09, 0xe0, 0x66, 0x45, + 0x20, 0xd1, 0xb9, 0xf1, 0x00, 0x0f, 0x1d, 0xd1, 0xce, 0x78, 0xde, 0xb9, + 0x0e, 0x79, 0xce, 0xb9, 0x4e, 0x79, 0xbe, 0xb9, 0x01, 0x37, 0x07, 0x31, + 0x97, 0x42, 0xc5, 0xdb, 0xd4, 0xf8, 0xfc, 0x34, 0x1b, 0x78, 0x63, 0xb1, + 0x07, 0xe0, 0x20, 0x46, 0x00, 0x21, 0x27, 0xf0, 0xdf, 0xd8, 0x20, 0x46, + 0x27, 0xf0, 0xd2, 0xd8, 0x03, 0xe0, 0x20, 0x46, 0x01, 0x21, 0x27, 0xf0, + 0xd7, 0xd8, 0x28, 0x46, 0xbd, 0xe8, 0xf0, 0x87, 0x43, 0xf4, 0x30, 0x65, + 0xad, 0xb2, 0x0e, 0x2b, 0xcc, 0xbf, 0x4f, 0xf4, 0x80, 0x53, 0x4f, 0xf4, + 0x00, 0x53, 0x1d, 0x43, 0xd4, 0xf8, 0xfc, 0x34, 0x1b, 0x78, 0x00, 0x2b, + 0xed, 0xd0, 0xe0, 0xe7, 0x2d, 0xe9, 0xf0, 0x43, 0x05, 0x68, 0xdd, 0xb0, + 0x29, 0x6b, 0x06, 0x46, 0x47, 0x7b, 0x09, 0x89, 0x5a, 0x93, 0x00, 0x24, + 0x00, 0xe0, 0x04, 0x21, 0x4f, 0xf0, 0x00, 0x0c, 0x5a, 0x9b, 0x60, 0x46, + 0x09, 0xe0, 0x0c, 0xf1, 0x07, 0x0c, 0x02, 0xeb, 0x0c, 0x08, 0x18, 0xf8, + 0x07, 0x8c, 0xb8, 0xf1, 0x05, 0x0f, 0x03, 0xd8, 0x01, 0x30, 0x98, 0x42, + 0xf3, 0xdb, 0x00, 0xe0, 0x04, 0x46, 0x08, 0x29, 0x00, 0xf2, 0xad, 0x80, + 0x01, 0xa0, 0x50, 0xf8, 0x21, 0xf0, 0x00, 0xbf, 0xeb, 0xd8, 0x00, 0x00, + 0x0f, 0xda, 0x00, 0x00, 0xe1, 0xd8, 0x00, 0x00, 0x0f, 0xda, 0x00, 0x00, + 0x85, 0xd9, 0x00, 0x00, 0x0f, 0xda, 0x00, 0x00, 0x0f, 0xda, 0x00, 0x00, + 0x0f, 0xda, 0x00, 0x00, 0x87, 0xd8, 0x00, 0x00, 0x00, 0x25, 0x4f, 0xf6, + 0xff, 0x70, 0x29, 0x46, 0x14, 0xe0, 0x4f, 0xf6, 0xff, 0x70, 0x00, 0x21, + 0x0d, 0x46, 0x33, 0xe0, 0x0e, 0x19, 0x96, 0xfb, 0xf3, 0xf7, 0x03, 0xfb, + 0x17, 0x66, 0x02, 0xeb, 0xc6, 0x07, 0xbe, 0x1b, 0xb7, 0x78, 0x27, 0xb9, + 0xf7, 0x78, 0x87, 0x42, 0x3c, 0xbf, 0x35, 0x78, 0x38, 0x46, 0x01, 0x31, + 0x99, 0x42, 0xed, 0xdb, 0x00, 0x2d, 0xe8, 0xd0, 0x45, 0xf4, 0x30, 0x60, + 0x0e, 0x2d, 0x8c, 0xbf, 0x4f, 0xf4, 0x80, 0x55, 0x4f, 0xf4, 0x00, 0x55, + 0x28, 0x43, 0x6f, 0xe0, 0x2e, 0x19, 0x96, 0xfb, 0xf3, 0xf7, 0x03, 0xfb, + 0x17, 0x67, 0xfe, 0x00, 0xf7, 0x1b, 0xd6, 0x19, 0x96, 0xf8, 0x01, 0x90, + 0x96, 0xf8, 0x02, 0x80, 0x96, 0xf8, 0x03, 0xc0, 0x09, 0xeb, 0x08, 0x06, + 0x66, 0x44, 0x86, 0x42, 0xbc, 0xbf, 0xb0, 0xb2, 0xd1, 0x5d, 0x01, 0x35, + 0x9d, 0x42, 0xe7, 0xdb, 0x31, 0xb9, 0x94, 0xfb, 0xf3, 0xf1, 0x03, 0xfb, + 0x11, 0x44, 0xe3, 0x00, 0x1c, 0x1b, 0x11, 0x5d, 0x0e, 0x29, 0x8c, 0xbf, + 0x4f, 0xf4, 0x80, 0x50, 0x4f, 0xf4, 0x00, 0x50, 0x01, 0x43, 0x41, 0xf4, + 0x30, 0x60, 0x45, 0xe0, 0x02, 0x2f, 0x42, 0xd1, 0x00, 0x23, 0x5b, 0x93, + 0x5b, 0xab, 0x00, 0x93, 0x28, 0x46, 0x39, 0x46, 0x3a, 0x46, 0x3a, 0xab, + 0xff, 0xf7, 0xa2, 0xfd, 0xd5, 0xf8, 0x18, 0x07, 0x38, 0xb3, 0xd5, 0xf8, + 0x20, 0xe7, 0xbe, 0xf1, 0x00, 0x0f, 0x22, 0xd0, 0x5b, 0x99, 0x00, 0x23, + 0x13, 0xe0, 0x00, 0x22, 0x0d, 0xf5, 0x94, 0x7c, 0x30, 0xf8, 0x13, 0x80, + 0x32, 0xf8, 0x0c, 0xc0, 0xc4, 0x45, 0x06, 0xd1, 0x0d, 0xf5, 0xb8, 0x79, + 0x09, 0xeb, 0x41, 0x08, 0x28, 0xf8, 0x88, 0xcc, 0x01, 0x31, 0x02, 0x32, + 0x40, 0x2a, 0xed, 0xd1, 0x01, 0x33, 0x73, 0x45, 0xe9, 0xdb, 0x20, 0x23, + 0x0d, 0x48, 0x5a, 0x93, 0x5b, 0x91, 0x01, 0xf0, 0xfd, 0xfe, 0x3a, 0xab, + 0x00, 0x93, 0x5b, 0x9b, 0x03, 0xe0, 0x20, 0x23, 0x4a, 0xaa, 0x5a, 0x93, + 0x00, 0x92, 0x01, 0x93, 0x02, 0xa9, 0x5a, 0xaa, 0x30, 0x46, 0x02, 0x23, + 0xff, 0xf7, 0xb5, 0xfd, 0x02, 0xaa, 0x02, 0x21, 0x3c, 0xe7, 0x00, 0x20, + 0x5d, 0xb0, 0xbd, 0xe8, 0xf0, 0x83, 0x00, 0xbf, 0x14, 0xdc, 0x01, 0x00, + 0x70, 0xb5, 0x05, 0x46, 0xbc, 0xb0, 0x04, 0x68, 0x0e, 0x46, 0x09, 0xb1, + 0x08, 0x29, 0x2c, 0xd1, 0x20, 0x23, 0xd4, 0xf8, 0x18, 0x27, 0x3b, 0x93, + 0x23, 0x6b, 0x28, 0x46, 0x1b, 0x89, 0x00, 0x92, 0xd4, 0xf8, 0x20, 0x27, + 0x03, 0xa9, 0x01, 0x92, 0x3b, 0xaa, 0xff, 0xf7, 0x94, 0xfd, 0x6b, 0x7b, + 0x02, 0x2b, 0x12, 0xd1, 0xd4, 0xf8, 0xfc, 0x34, 0x1b, 0x78, 0x73, 0xb1, + 0xd4, 0xf8, 0x34, 0x37, 0xb3, 0xf8, 0xa4, 0x33, 0x03, 0xf4, 0x40, 0x62, + 0xb2, 0xf5, 0x40, 0x6f, 0x05, 0xd1, 0x20, 0x46, 0x03, 0xa9, 0x3b, 0x9a, + 0xff, 0xf7, 0x87, 0xfe, 0x05, 0xe0, 0x28, 0x46, 0x00, 0x21, 0x03, 0xaa, + 0x3b, 0x9b, 0xff, 0xf7, 0xf7, 0xfe, 0xa4, 0xf8, 0x16, 0x07, 0x6b, 0x68, + 0x13, 0xb1, 0xa8, 0x68, 0x31, 0x46, 0x98, 0x47, 0xd4, 0xf8, 0x18, 0x17, + 0xd4, 0xf8, 0x1c, 0x27, 0x60, 0x68, 0xf9, 0xf3, 0x29, 0xf1, 0x00, 0x23, + 0xc4, 0xf8, 0x18, 0x37, 0x60, 0x68, 0x29, 0x46, 0x10, 0x22, 0xf9, 0xf3, + 0x21, 0xf1, 0x3c, 0xb0, 0x70, 0xbd, 0x00, 0x00, 0x2d, 0xe9, 0xf0, 0x47, + 0x0d, 0x46, 0x4f, 0xf0, 0x00, 0x08, 0x40, 0x21, 0x9a, 0xb0, 0x04, 0x46, + 0xc0, 0xf8, 0x20, 0x87, 0xc0, 0xf8, 0x1c, 0x17, 0x40, 0x68, 0x1f, 0x46, + 0x22, 0x9e, 0xf9, 0xf3, 0xfd, 0xf0, 0x03, 0x46, 0xc4, 0xf8, 0x18, 0x07, + 0x00, 0x28, 0x7d, 0xd0, 0x2a, 0x68, 0x62, 0xb9, 0x20, 0x22, 0xc4, 0xf8, + 0x20, 0x27, 0x22, 0x6b, 0x04, 0xf5, 0xe4, 0x61, 0x12, 0x89, 0x20, 0x46, + 0x00, 0x91, 0x31, 0x46, 0xff, 0xf7, 0xf2, 0xfc, 0x25, 0xe0, 0x20, 0x2a, + 0x6f, 0xd8, 0xa9, 0x46, 0x1e, 0xe0, 0x59, 0xf8, 0x04, 0x3f, 0xd4, 0xf8, + 0x5c, 0x01, 0x1f, 0xfa, 0x83, 0xfa, 0x51, 0x46, 0x38, 0xf0, 0x42, 0xdc, + 0x00, 0x28, 0x62, 0xd0, 0xb8, 0xf1, 0x00, 0x0f, 0x05, 0xd0, 0x19, 0xf8, + 0x04, 0x3c, 0x5f, 0xfa, 0x8a, 0xf2, 0x9a, 0x42, 0x59, 0xd9, 0xd4, 0xf8, + 0x20, 0x37, 0xd4, 0xf8, 0x18, 0x27, 0x08, 0xf1, 0x01, 0x08, 0x22, 0xf8, + 0x13, 0xa0, 0x01, 0x33, 0xc4, 0xf8, 0x20, 0x37, 0x2b, 0x68, 0x98, 0x45, + 0xdd, 0xd3, 0xd4, 0xf8, 0x20, 0x37, 0x00, 0x2b, 0x47, 0xd0, 0x60, 0x68, + 0x10, 0x21, 0xf9, 0xf3, 0xbb, 0xf0, 0x05, 0x46, 0x00, 0x28, 0x43, 0xd0, + 0x25, 0x9b, 0x4f, 0xf0, 0x00, 0x08, 0x83, 0x60, 0x9d, 0xf8, 0x8c, 0x30, + 0x46, 0x73, 0x11, 0xae, 0x83, 0x73, 0x24, 0x22, 0xc0, 0xf8, 0x04, 0x80, + 0x04, 0x60, 0x80, 0xf8, 0x0c, 0x80, 0x41, 0x46, 0x30, 0x46, 0xf4, 0xf3, + 0x5d, 0xf2, 0x4f, 0xf0, 0xff, 0x33, 0x02, 0x93, 0x03, 0x93, 0x04, 0x93, + 0x05, 0x93, 0xd4, 0xf8, 0x18, 0x37, 0xc8, 0xeb, 0x07, 0x02, 0x06, 0x93, + 0xd4, 0xf8, 0x20, 0x37, 0x57, 0x42, 0x07, 0x93, 0x19, 0x4b, 0x47, 0xeb, + 0x02, 0x07, 0x0a, 0x93, 0x03, 0x23, 0x0c, 0x93, 0x20, 0x46, 0x02, 0x21, + 0x16, 0x4a, 0x01, 0x23, 0x00, 0x96, 0x01, 0x97, 0xcd, 0xf8, 0x20, 0x80, + 0xcd, 0xf8, 0x24, 0x80, 0x0b, 0x95, 0xcd, 0xf8, 0x34, 0x80, 0xcd, 0xf8, + 0x38, 0x80, 0x19, 0xf0, 0x93, 0xd9, 0x06, 0x46, 0xa8, 0xb9, 0x24, 0x9b, + 0x6b, 0x60, 0x12, 0xe0, 0x6f, 0xf0, 0x15, 0x06, 0x04, 0xe0, 0x6f, 0xf0, + 0x01, 0x06, 0x01, 0xe0, 0x6f, 0xf0, 0x1a, 0x06, 0xd4, 0xf8, 0x18, 0x17, + 0x39, 0xb1, 0x60, 0x68, 0xd4, 0xf8, 0x1c, 0x27, 0xf9, 0xf3, 0x7a, 0xf0, + 0x00, 0x23, 0xc4, 0xf8, 0x18, 0x37, 0x30, 0x46, 0x1a, 0xb0, 0xbd, 0xe8, + 0xf0, 0x87, 0x00, 0xbf, 0x1d, 0xda, 0x00, 0x00, 0x2c, 0x9e, 0x85, 0x00, + 0x10, 0xb5, 0x90, 0xf8, 0x14, 0x37, 0x88, 0xb0, 0x04, 0x46, 0x00, 0x2b, + 0x3e, 0xd0, 0xd0, 0xf8, 0x68, 0x31, 0x9b, 0x79, 0x00, 0x2b, 0x64, 0xd1, + 0x80, 0xf8, 0x14, 0x37, 0x03, 0x68, 0x1b, 0x7e, 0x00, 0x2b, 0x5e, 0xd0, + 0xb0, 0xf8, 0x16, 0x37, 0x00, 0x2b, 0x5a, 0xd0, 0x03, 0x6b, 0x18, 0x69, + 0x03, 0xf0, 0x3c, 0xfc, 0xb4, 0xf8, 0x16, 0x17, 0x88, 0x42, 0x52, 0xd0, + 0x20, 0x46, 0x1b, 0xf0, 0xa5, 0xd8, 0x20, 0x46, 0x01, 0xf0, 0x6e, 0xfd, + 0x20, 0x46, 0xb4, 0xf8, 0x16, 0x17, 0x1a, 0xf0, 0xe3, 0xde, 0x23, 0x68, + 0x93, 0xf8, 0x2f, 0x30, 0x6b, 0xb1, 0xd4, 0xf8, 0x6c, 0x32, 0x20, 0x46, + 0xd3, 0xf8, 0xd4, 0x12, 0x38, 0x31, 0x15, 0xf0, 0x8f, 0xdd, 0x01, 0x46, + 0xc4, 0xf8, 0xac, 0x06, 0x20, 0x46, 0x0e, 0xf0, 0x27, 0xde, 0x20, 0x46, + 0x1d, 0xf0, 0x3e, 0xd9, 0x20, 0x46, 0x00, 0x21, 0x1d, 0xf0, 0x44, 0xdb, + 0x20, 0x46, 0x14, 0xf0, 0xb1, 0xd9, 0x2a, 0xe0, 0x03, 0x68, 0x1b, 0x7e, + 0x3b, 0xb3, 0xd0, 0xf8, 0x68, 0x31, 0x9b, 0x79, 0x1b, 0xbb, 0xd0, 0xf8, + 0x00, 0x05, 0x07, 0xa9, 0x47, 0xf0, 0x0e, 0xda, 0x02, 0xe0, 0x1b, 0x7e, + 0x99, 0x07, 0x1a, 0xd4, 0x07, 0xa8, 0x47, 0xf0, 0x0f, 0xda, 0x03, 0x46, + 0x00, 0x28, 0xf6, 0xd1, 0x03, 0xe0, 0x01, 0x23, 0x84, 0xf8, 0x14, 0x37, + 0x0f, 0xe0, 0x22, 0x6b, 0x08, 0xa9, 0x12, 0x68, 0x41, 0xf8, 0x0c, 0x0d, + 0x00, 0x92, 0x03, 0x22, 0x01, 0x92, 0x02, 0x90, 0x03, 0x90, 0x01, 0x22, + 0x20, 0x46, 0xff, 0xf7, 0xe1, 0xfe, 0x00, 0x28, 0xeb, 0xd0, 0x08, 0xb0, + 0x10, 0xbd, 0x00, 0x20, 0x70, 0x47, 0x00, 0x20, 0x70, 0x47, 0x00, 0x20, + 0x70, 0x47, 0x01, 0x23, 0x80, 0xf8, 0x7a, 0x30, 0x70, 0x47, 0x70, 0xb5, + 0x90, 0xe8, 0x18, 0x00, 0x0d, 0x46, 0x58, 0x68, 0x0c, 0x21, 0xf8, 0xf3, + 0xd9, 0xf7, 0x06, 0x46, 0x30, 0xb1, 0x00, 0x21, 0x0c, 0x22, 0xf4, 0xf3, + 0x8b, 0xf1, 0x2e, 0x51, 0x00, 0x20, 0x70, 0xbd, 0x6f, 0xf0, 0x1a, 0x00, + 0x70, 0xbd, 0x00, 0x00, 0xf8, 0xb5, 0x83, 0x68, 0x06, 0x46, 0x5c, 0x68, + 0x03, 0x68, 0x0f, 0x59, 0x0d, 0x46, 0x58, 0x68, 0x4f, 0xf4, 0x84, 0x71, + 0xf8, 0xf3, 0xc0, 0xf7, 0x78, 0x60, 0x00, 0x28, 0x2d, 0xd0, 0x2b, 0x59, + 0x00, 0x21, 0x58, 0x68, 0x4f, 0xf4, 0x84, 0x72, 0xf4, 0xf3, 0x6e, 0xf1, + 0x33, 0x68, 0xc4, 0x21, 0x58, 0x68, 0x2f, 0x59, 0xf8, 0xf3, 0xb0, 0xf7, + 0xb8, 0x60, 0xf0, 0xb1, 0x2b, 0x59, 0x00, 0x21, 0x98, 0x68, 0xc4, 0x22, + 0xf4, 0xf3, 0x60, 0xf1, 0x2b, 0x59, 0x28, 0x49, 0x9f, 0x68, 0x33, 0x68, + 0x32, 0x46, 0x3b, 0x60, 0x98, 0x68, 0x00, 0x23, 0x01, 0xf0, 0x92, 0xdc, + 0xb8, 0x66, 0x60, 0xb1, 0x2b, 0x59, 0x23, 0x49, 0x9f, 0x68, 0x33, 0x68, + 0x32, 0x46, 0x98, 0x68, 0x00, 0x23, 0x01, 0xf0, 0x87, 0xdc, 0xc7, 0xf8, + 0xc0, 0x00, 0x00, 0x28, 0x33, 0xd1, 0x2b, 0x59, 0x9b, 0x68, 0x0b, 0xb3, + 0x99, 0x6e, 0x39, 0xb1, 0x33, 0x68, 0x98, 0x68, 0x01, 0xf0, 0x5e, 0xdc, + 0x2b, 0x59, 0x00, 0x22, 0x9b, 0x68, 0x9a, 0x66, 0x2b, 0x59, 0x9b, 0x68, + 0xd3, 0xf8, 0xc0, 0x10, 0x41, 0xb1, 0x33, 0x68, 0x98, 0x68, 0x01, 0xf0, + 0x51, 0xdc, 0x2b, 0x59, 0x00, 0x22, 0x9b, 0x68, 0xc3, 0xf8, 0xc0, 0x20, + 0x32, 0x68, 0x2b, 0x59, 0x50, 0x68, 0x99, 0x68, 0xc4, 0x22, 0xf8, 0xf3, + 0x7d, 0xf7, 0x2b, 0x59, 0x00, 0x22, 0x9a, 0x60, 0x2b, 0x59, 0x59, 0x68, + 0x69, 0xb1, 0x33, 0x68, 0x4f, 0xf4, 0x84, 0x72, 0x58, 0x68, 0xf8, 0xf3, + 0x71, 0xf7, 0x2b, 0x59, 0x00, 0x22, 0x5a, 0x60, 0x6f, 0xf0, 0x1a, 0x00, + 0xf8, 0xbd, 0x00, 0x20, 0xf8, 0xbd, 0x6f, 0xf0, 0x1a, 0x00, 0xf8, 0xbd, + 0xa1, 0xec, 0x00, 0x00, 0x4d, 0xe6, 0x00, 0x00, 0x01, 0x46, 0x38, 0xb5, + 0x51, 0xf8, 0xde, 0x5b, 0x04, 0x46, 0x10, 0x22, 0x28, 0x46, 0x14, 0xf0, + 0x6b, 0xdc, 0x28, 0x46, 0x04, 0xf1, 0xee, 0x01, 0x10, 0x22, 0xbd, 0xe8, + 0x38, 0x40, 0x14, 0xf0, 0x63, 0x9c, 0x00, 0x00, 0xf0, 0xb5, 0x1f, 0x4b, + 0xa5, 0xb0, 0x04, 0x68, 0x05, 0x46, 0x20, 0xaa, 0x03, 0xf1, 0x08, 0x07, + 0x18, 0x68, 0x59, 0x68, 0x16, 0x46, 0x03, 0xc6, 0x08, 0x33, 0xbb, 0x42, + 0x32, 0x46, 0xf7, 0xd1, 0x18, 0x68, 0x1b, 0x79, 0x30, 0x60, 0x33, 0x71, + 0x20, 0x46, 0x18, 0xa9, 0x10, 0x22, 0x14, 0xf0, 0x49, 0xdc, 0x1c, 0xa9, + 0x10, 0x22, 0x20, 0x46, 0x14, 0xf0, 0x44, 0xdc, 0x20, 0xa8, 0xf4, 0xf3, + 0x67, 0xf1, 0x6a, 0x68, 0x20, 0x24, 0xc2, 0x32, 0x00, 0x92, 0x06, 0x22, + 0x03, 0x46, 0x01, 0x92, 0x04, 0xae, 0x21, 0x46, 0x20, 0xaa, 0x05, 0xf1, + 0x7e, 0x07, 0x18, 0xa8, 0x02, 0x96, 0x03, 0x94, 0xfa, 0xf3, 0x4a, 0xf0, + 0x31, 0x46, 0x22, 0x46, 0x38, 0x46, 0xf4, 0xf3, 0x5d, 0xf0, 0x05, 0xf1, + 0x9e, 0x00, 0x39, 0x46, 0x22, 0x46, 0xf4, 0xf3, 0x57, 0xf0, 0x25, 0xb0, + 0xf0, 0xbd, 0x00, 0xbf, 0x26, 0xdc, 0x01, 0x00, 0x38, 0xb5, 0x00, 0xf1, + 0x7e, 0x05, 0x04, 0x46, 0x20, 0x21, 0x28, 0x46, 0xf5, 0xf3, 0xbe, 0xf5, + 0x28, 0x46, 0x04, 0xf1, 0x9e, 0x01, 0x20, 0x22, 0xf4, 0xf3, 0x28, 0xf0, + 0x20, 0xb9, 0x20, 0x46, 0xbd, 0xe8, 0x38, 0x40, 0xff, 0xf7, 0x98, 0xbf, + 0x38, 0xbd, 0x00, 0x00, 0xf0, 0xb5, 0x2e, 0x4b, 0xdf, 0xb0, 0x04, 0x46, + 0x0e, 0x46, 0x59, 0xaa, 0x03, 0xf1, 0x10, 0x07, 0x18, 0x68, 0x59, 0x68, + 0x15, 0x46, 0x03, 0xc5, 0x08, 0x33, 0xbb, 0x42, 0x2a, 0x46, 0xf7, 0xd1, + 0x18, 0x68, 0x28, 0x60, 0xb3, 0x6d, 0xd9, 0x07, 0x46, 0xd4, 0x9a, 0x07, + 0x06, 0xd4, 0x03, 0xf0, 0x04, 0x03, 0x02, 0x2b, 0x02, 0xd0, 0x00, 0x2b, + 0x3e, 0xd0, 0x01, 0xe0, 0x20, 0x23, 0x00, 0xe0, 0x10, 0x23, 0x05, 0xad, + 0xa4, 0xf8, 0x7c, 0x30, 0x06, 0xf1, 0xc2, 0x01, 0x28, 0x46, 0x06, 0x22, + 0x04, 0xf1, 0xbe, 0x06, 0xf4, 0xf3, 0x10, 0xf0, 0x04, 0xf1, 0x7e, 0x01, + 0x20, 0x22, 0x30, 0x46, 0xf4, 0xf3, 0x0a, 0xf0, 0x20, 0x46, 0xff, 0xf7, + 0xb5, 0xff, 0x31, 0x46, 0x20, 0x22, 0xa8, 0x1d, 0xf4, 0xf3, 0x02, 0xf0, + 0x59, 0xa8, 0xf4, 0xf3, 0xf3, 0xf0, 0x26, 0x22, 0x01, 0x92, 0xb4, 0xf8, + 0x7c, 0x20, 0x03, 0x46, 0x00, 0x95, 0x03, 0x92, 0x45, 0xad, 0x20, 0x21, + 0x59, 0xaa, 0x04, 0xf1, 0xde, 0x00, 0x02, 0x95, 0xf9, 0xf3, 0xd8, 0xf7, + 0x29, 0x46, 0xb4, 0xf8, 0x7c, 0x20, 0x04, 0xf1, 0x5a, 0x00, 0xf3, 0xf3, + 0xe9, 0xf7, 0x04, 0xf1, 0xfe, 0x00, 0x00, 0x21, 0x08, 0x22, 0xf4, 0xf3, + 0x47, 0xf0, 0x20, 0x46, 0xff, 0xf7, 0xa7, 0xfe, 0x5f, 0xb0, 0xf0, 0xbd, + 0x33, 0xdc, 0x01, 0x00, 0x7f, 0xb5, 0x43, 0x68, 0x04, 0xac, 0x9b, 0x68, + 0x44, 0xf8, 0x08, 0x2d, 0x00, 0x93, 0x0d, 0x46, 0x00, 0x68, 0xb7, 0x21, + 0x22, 0x46, 0x08, 0x23, 0xf8, 0xf7, 0x62, 0xfd, 0x06, 0x46, 0x30, 0xb9, + 0x28, 0x46, 0x21, 0x46, 0x08, 0x22, 0xf3, 0xf3, 0xc7, 0xf7, 0x30, 0x46, + 0x01, 0xe0, 0x4f, 0xf0, 0xff, 0x30, 0x04, 0xb0, 0x70, 0xbd, 0x00, 0x00, + 0x2d, 0xe9, 0xf0, 0x47, 0x00, 0xf1, 0xfe, 0x05, 0x0e, 0x46, 0x92, 0x46, + 0xb2, 0xf8, 0x00, 0x80, 0x29, 0x46, 0x90, 0xf8, 0x7b, 0x20, 0x04, 0x46, + 0xff, 0xf7, 0xd6, 0xff, 0x20, 0xb1, 0x28, 0x46, 0x00, 0x21, 0x08, 0x22, + 0xf4, 0xf3, 0x10, 0xf0, 0x06, 0xf1, 0x12, 0x07, 0x08, 0xf1, 0x58, 0x00, + 0x38, 0x18, 0xdd, 0x23, 0xc3, 0x71, 0x94, 0xf8, 0x7c, 0x30, 0x00, 0xf1, + 0x07, 0x09, 0x06, 0x33, 0x03, 0x72, 0x03, 0x22, 0x09, 0x30, 0x15, 0x49, + 0x08, 0xf1, 0x06, 0x08, 0xf3, 0xf3, 0x98, 0xf7, 0x1f, 0xfa, 0x88, 0xf8, + 0x01, 0x23, 0x89, 0xf8, 0x05, 0x30, 0x08, 0xf1, 0x58, 0x03, 0xff, 0x18, + 0x94, 0xf8, 0x7a, 0x30, 0x04, 0xf1, 0x5a, 0x01, 0x03, 0xf0, 0x03, 0x03, + 0xfb, 0x71, 0xb4, 0xf8, 0x7c, 0x20, 0x07, 0xf1, 0x09, 0x00, 0xf3, 0xf3, + 0x83, 0xf7, 0xb4, 0xf8, 0x7c, 0x30, 0x06, 0xf1, 0x4f, 0x00, 0x02, 0x33, + 0x98, 0x44, 0x29, 0x46, 0x08, 0x22, 0xf3, 0xf3, 0x79, 0xf7, 0xaa, 0xf8, + 0x00, 0x80, 0xb4, 0xf8, 0x7c, 0x00, 0x08, 0x30, 0xbd, 0xe8, 0xf0, 0x87, + 0xbf, 0xb7, 0x01, 0x00, 0x2d, 0xe9, 0xf7, 0x4f, 0x99, 0x46, 0x03, 0x68, + 0xb0, 0xf8, 0x7c, 0x40, 0x05, 0x46, 0x8b, 0x46, 0x58, 0x68, 0x20, 0x21, + 0x92, 0x46, 0xf8, 0xf3, 0x0f, 0xf6, 0x07, 0x46, 0x00, 0x28, 0x74, 0xd0, + 0x2b, 0x68, 0x4f, 0xf4, 0x80, 0x71, 0x58, 0x68, 0xf8, 0xf3, 0x06, 0xf6, + 0x80, 0x46, 0x00, 0x28, 0x61, 0xd0, 0x2b, 0x68, 0x4f, 0xf4, 0x81, 0x71, + 0x58, 0x68, 0xf8, 0xf3, 0xfd, 0xf5, 0x06, 0x46, 0x00, 0x28, 0x70, 0xd0, + 0xba, 0xf1, 0x01, 0x0f, 0x03, 0xd0, 0xba, 0xf1, 0x02, 0x0f, 0x66, 0xd1, + 0x23, 0xe0, 0x05, 0xf1, 0x8e, 0x01, 0x10, 0x22, 0x38, 0x46, 0xf3, 0xf3, + 0x41, 0xf7, 0x0b, 0xf1, 0x9c, 0x01, 0x10, 0x22, 0x07, 0xf1, 0x10, 0x00, + 0xf3, 0xf3, 0x3a, 0xf7, 0x05, 0xf1, 0x5a, 0x01, 0x22, 0x46, 0x48, 0x46, + 0xf3, 0xf3, 0x34, 0xf7, 0x38, 0x46, 0x20, 0x21, 0x32, 0x46, 0xfa, 0xf3, + 0x1d, 0xf2, 0x40, 0x46, 0x32, 0x46, 0x4f, 0xf4, 0x80, 0x71, 0xfa, 0xf3, + 0x47, 0xf2, 0x48, 0x46, 0x21, 0x46, 0x32, 0x46, 0xfa, 0xf3, 0x42, 0xf2, + 0x29, 0xe0, 0xb5, 0xf8, 0x7c, 0x30, 0x0f, 0x2b, 0x08, 0xd8, 0x28, 0x19, + 0xc4, 0xf1, 0x10, 0x02, 0x5a, 0x30, 0x00, 0x21, 0xf3, 0xf3, 0x7c, 0xf7, + 0x10, 0x24, 0x0f, 0xe0, 0x14, 0xf0, 0x07, 0x02, 0x0c, 0xd0, 0x28, 0x19, + 0x5a, 0x30, 0x00, 0x21, 0xc2, 0xf1, 0x08, 0x02, 0xf3, 0xf3, 0x70, 0xf7, + 0x4f, 0xf6, 0xf8, 0x73, 0x23, 0x40, 0x03, 0xf1, 0x08, 0x04, 0xa4, 0xb2, + 0x10, 0x20, 0x0b, 0xf1, 0x9c, 0x01, 0x22, 0x46, 0x05, 0xf1, 0x5a, 0x03, + 0xcd, 0xf8, 0x00, 0x90, 0xf1, 0xf3, 0xe0, 0xf7, 0xc8, 0xb9, 0x08, 0x34, + 0xa4, 0xb2, 0x0c, 0x9b, 0x1c, 0x80, 0x01, 0x24, 0x18, 0xe0, 0x04, 0x46, + 0x06, 0x46, 0x2b, 0x68, 0x39, 0x46, 0x58, 0x68, 0x20, 0x22, 0xf8, 0xf3, + 0xa9, 0xf5, 0x16, 0xb9, 0x0a, 0xe0, 0x04, 0x46, 0x08, 0xe0, 0x2b, 0x68, + 0x31, 0x46, 0x58, 0x68, 0x4f, 0xf4, 0x81, 0x72, 0xf8, 0xf3, 0x9e, 0xf5, + 0x00, 0xe0, 0x00, 0x24, 0x20, 0x46, 0xbd, 0xe8, 0xfe, 0x8f, 0x04, 0x46, + 0x2b, 0x68, 0x41, 0x46, 0x58, 0x68, 0x4f, 0xf4, 0x80, 0x72, 0xf8, 0xf3, + 0x91, 0xf5, 0xe0, 0xe7, 0x2d, 0xe9, 0xf0, 0x4f, 0x9f, 0xb0, 0x05, 0x46, + 0x0e, 0x46, 0x06, 0x92, 0xd0, 0xf8, 0x00, 0xa0, 0x1f, 0x46, 0x00, 0x2b, + 0x00, 0xf0, 0xc5, 0x81, 0x83, 0x68, 0x02, 0x2a, 0x5b, 0x68, 0xfb, 0x58, + 0xd3, 0xf8, 0x04, 0x80, 0x9b, 0x68, 0x07, 0x93, 0x38, 0xd0, 0x04, 0x2a, + 0x00, 0xf0, 0x00, 0x81, 0x00, 0x2a, 0x40, 0xf0, 0xb3, 0x81, 0x07, 0xf1, + 0x1a, 0x02, 0x50, 0x46, 0x69, 0x68, 0x71, 0x23, 0x49, 0xf0, 0x50, 0xd8, + 0x07, 0x46, 0x00, 0x28, 0x00, 0xf0, 0xab, 0x81, 0x04, 0x69, 0x4f, 0xf4, + 0xbe, 0x43, 0x04, 0xf1, 0x12, 0x0b, 0x23, 0x82, 0x06, 0x99, 0x5f, 0x22, + 0x58, 0x46, 0xf3, 0xf3, 0x07, 0xf7, 0x46, 0xf0, 0x88, 0x03, 0x1a, 0x0a, + 0xe2, 0x74, 0x23, 0x75, 0xb8, 0xf8, 0x18, 0x30, 0x08, 0xf1, 0x1c, 0x09, + 0x1a, 0x0a, 0xa3, 0x75, 0x49, 0x46, 0x62, 0x75, 0x50, 0x46, 0x20, 0x22, + 0x14, 0xf0, 0x60, 0xda, 0x49, 0x46, 0x04, 0xf1, 0x1f, 0x00, 0x20, 0x22, + 0xf3, 0xf3, 0x8c, 0xf6, 0x0b, 0x23, 0xc8, 0xf8, 0x00, 0x30, 0xdd, 0xf8, + 0x18, 0x90, 0x87, 0xe1, 0xb8, 0xf8, 0x02, 0x31, 0xb3, 0xf5, 0x00, 0x7f, + 0x02, 0xd1, 0x41, 0xf4, 0x72, 0x76, 0x0a, 0xe0, 0x80, 0x2b, 0x04, 0xd1, + 0x41, 0xf4, 0x9e, 0x56, 0x46, 0xf0, 0x08, 0x06, 0x03, 0xe0, 0x04, 0x2b, + 0x08, 0xbf, 0x41, 0xf4, 0xe4, 0x76, 0x6a, 0x68, 0xb8, 0xf8, 0x04, 0xb0, + 0x92, 0x6d, 0xad, 0xf8, 0x76, 0xb0, 0x02, 0xf0, 0x02, 0x09, 0xb9, 0xf1, + 0x00, 0x0f, 0x0c, 0xbf, 0x4f, 0xf0, 0x04, 0x09, 0x4f, 0xf0, 0x02, 0x09, + 0x0b, 0xf1, 0x71, 0x0b, 0x80, 0x2b, 0x1f, 0xfa, 0x8b, 0xfb, 0x30, 0xd1, + 0x16, 0xf4, 0x80, 0x53, 0x2e, 0xd0, 0x2c, 0x8a, 0x14, 0xf0, 0x01, 0x04, + 0x1b, 0xd1, 0x28, 0x46, 0xff, 0xf7, 0xae, 0xfd, 0x28, 0x46, 0x69, 0x68, + 0xff, 0xf7, 0x14, 0xfe, 0x95, 0xf8, 0x7a, 0x20, 0xb5, 0xf8, 0x7c, 0x30, + 0x8d, 0xe8, 0x04, 0x02, 0x01, 0x22, 0x03, 0x92, 0x50, 0x46, 0x69, 0x68, + 0x05, 0xf1, 0x5a, 0x02, 0x02, 0x94, 0x4b, 0xf0, 0x79, 0xd8, 0x2b, 0x8a, + 0x85, 0xf8, 0x7b, 0x00, 0x43, 0xf0, 0x01, 0x03, 0x2b, 0x82, 0xbd, 0xf8, + 0x76, 0x30, 0xb5, 0xf8, 0x7c, 0x20, 0x13, 0xf0, 0x07, 0x03, 0x02, 0xd1, + 0x02, 0xf1, 0x10, 0x03, 0x01, 0xe0, 0x18, 0x32, 0xd3, 0x1a, 0x9b, 0xb2, + 0x00, 0xe0, 0x00, 0x23, 0x9b, 0x44, 0x07, 0xf1, 0x1a, 0x02, 0x50, 0x46, + 0x69, 0x68, 0x1f, 0xfa, 0x8b, 0xf3, 0x48, 0xf0, 0xc1, 0xdf, 0x07, 0x46, + 0x00, 0x28, 0x00, 0xf0, 0x1c, 0x81, 0x04, 0x69, 0x5f, 0x23, 0x04, 0xf1, + 0x12, 0x0b, 0x00, 0x21, 0x5f, 0x22, 0x23, 0x82, 0x58, 0x46, 0xf3, 0xf3, + 0x79, 0xf6, 0x33, 0x0a, 0xe3, 0x74, 0x26, 0x75, 0xb8, 0xf8, 0x18, 0x30, + 0x08, 0xf1, 0x1c, 0x01, 0x1a, 0x0a, 0xa3, 0x75, 0x62, 0x75, 0x04, 0xf1, + 0x1f, 0x00, 0x20, 0x22, 0xf3, 0xf3, 0x06, 0xf6, 0xb8, 0xf8, 0x04, 0x20, + 0x04, 0xf1, 0x71, 0x00, 0xd8, 0xf8, 0x08, 0x10, 0xf3, 0xf3, 0xfe, 0xf5, + 0xbd, 0xf8, 0x76, 0x30, 0x1a, 0x0a, 0x42, 0xea, 0x03, 0x23, 0xa4, 0xf8, + 0x6f, 0x30, 0xb8, 0xf8, 0x02, 0x31, 0x80, 0x2b, 0x27, 0xd1, 0xf3, 0x04, + 0x25, 0xd5, 0x0d, 0xf1, 0x76, 0x02, 0x28, 0x46, 0x21, 0x46, 0xff, 0xf7, + 0x2b, 0xfe, 0xbd, 0xf8, 0x76, 0x30, 0x04, 0xf1, 0x3f, 0x00, 0x1a, 0x0a, + 0x42, 0xea, 0x03, 0x23, 0xa4, 0xf8, 0x6f, 0x30, 0xa3, 0x7b, 0x02, 0x2b, + 0x04, 0xd1, 0x00, 0x21, 0x10, 0x22, 0xf3, 0xf3, 0x3f, 0xf6, 0x04, 0xe0, + 0x05, 0xf1, 0x8e, 0x01, 0x10, 0x22, 0xf3, 0xf3, 0xd5, 0xf5, 0x58, 0x46, + 0x31, 0x46, 0x08, 0xf1, 0x9c, 0x02, 0x00, 0x23, 0xf5, 0xf3, 0x9a, 0xf2, + 0x00, 0x28, 0x00, 0xf0, 0xcc, 0x80, 0x94, 0xf8, 0x6f, 0x20, 0x94, 0xf8, + 0x70, 0x30, 0x43, 0xea, 0x02, 0x23, 0x22, 0x8a, 0x9b, 0x18, 0x9b, 0xb2, + 0x1a, 0x0a, 0x42, 0xea, 0x03, 0x23, 0x23, 0x82, 0x0c, 0x23, 0x76, 0xe0, + 0x90, 0xf8, 0x7a, 0x30, 0xb0, 0xf8, 0x7c, 0x90, 0x1b, 0x01, 0x03, 0xf0, + 0x30, 0x03, 0x41, 0xea, 0x03, 0x06, 0x46, 0xf4, 0x60, 0x76, 0xb6, 0xb2, + 0x00, 0x23, 0xb0, 0x07, 0x54, 0xbf, 0x09, 0xf1, 0x71, 0x09, 0x09, 0xf1, + 0x79, 0x09, 0x1f, 0xfa, 0x89, 0xf9, 0xad, 0xf8, 0x76, 0x30, 0x07, 0xf1, + 0x1a, 0x02, 0x50, 0x46, 0x69, 0x68, 0x4b, 0x46, 0x48, 0xf0, 0x3c, 0xdf, + 0x07, 0x46, 0x00, 0x28, 0x00, 0xf0, 0x97, 0x80, 0x04, 0x69, 0x5f, 0x23, + 0x04, 0xf1, 0x12, 0x0b, 0x00, 0x21, 0xa9, 0xf1, 0x12, 0x02, 0x23, 0x82, + 0x58, 0x46, 0xf3, 0xf3, 0xf3, 0xf5, 0x33, 0x0a, 0xe3, 0x74, 0x26, 0x75, + 0xb5, 0xf8, 0x7c, 0x30, 0x05, 0xf1, 0xbe, 0x01, 0x1a, 0x0a, 0xa3, 0x75, + 0x62, 0x75, 0x04, 0xf1, 0x1f, 0x00, 0x20, 0x22, 0xf3, 0xf3, 0x80, 0xf5, + 0x04, 0xf1, 0x3f, 0x09, 0x05, 0xf1, 0x8e, 0x0c, 0x61, 0x46, 0x10, 0x22, + 0x48, 0x46, 0xcd, 0xf8, 0x14, 0xc0, 0xf3, 0xf3, 0x75, 0xf5, 0x08, 0x22, + 0x05, 0xf1, 0xfe, 0x01, 0x04, 0xf1, 0x4f, 0x00, 0xf3, 0xf3, 0x6e, 0xf5, + 0x0d, 0xf1, 0x76, 0x03, 0x00, 0x93, 0x28, 0x46, 0x04, 0xf1, 0x71, 0x03, + 0x41, 0x46, 0x06, 0xf0, 0x03, 0x02, 0xff, 0xf7, 0xf3, 0xfd, 0xa3, 0x7b, + 0x48, 0x46, 0x02, 0x2b, 0xdd, 0xf8, 0x14, 0xc0, 0x04, 0xd1, 0x00, 0x21, + 0x10, 0x22, 0xf3, 0xf3, 0xbd, 0xf5, 0x03, 0xe0, 0x61, 0x46, 0x10, 0x22, + 0xf3, 0xf3, 0x54, 0xf5, 0xbd, 0xf8, 0x76, 0x30, 0x1a, 0x0a, 0x42, 0xea, + 0x03, 0x22, 0xa4, 0xf8, 0x6f, 0x20, 0x22, 0x8a, 0x9b, 0x18, 0x9b, 0xb2, + 0x1a, 0x0a, 0x42, 0xea, 0x03, 0x23, 0x23, 0x82, 0x0f, 0x23, 0xc8, 0xf8, + 0x00, 0x30, 0x4f, 0xf0, 0x01, 0x09, 0x41, 0xe0, 0x20, 0x46, 0x06, 0xf0, + 0x03, 0x01, 0x08, 0xf1, 0x8c, 0x02, 0x09, 0xab, 0xf5, 0xf3, 0xc2, 0xf2, + 0x00, 0x28, 0x31, 0xd0, 0x0b, 0xf1, 0x4d, 0x00, 0x09, 0xa9, 0x10, 0x22, + 0xf3, 0xf3, 0x30, 0xf5, 0xb8, 0xf8, 0x02, 0x31, 0xb3, 0xf5, 0x00, 0x7f, + 0x03, 0xd1, 0x7b, 0x6a, 0x43, 0xf0, 0x80, 0x73, 0x7b, 0x62, 0xda, 0xf8, + 0x00, 0x30, 0x93, 0xf8, 0x95, 0x30, 0x4b, 0xb1, 0x06, 0x9b, 0x0b, 0xb1, + 0x02, 0x2b, 0x05, 0xd1, 0x7b, 0x6a, 0x23, 0xf4, 0x40, 0x33, 0x43, 0xf4, + 0x80, 0x33, 0x7b, 0x62, 0x6b, 0x68, 0x39, 0x46, 0x9a, 0x68, 0x50, 0x46, + 0x19, 0xf0, 0x28, 0xde, 0x07, 0x9b, 0xda, 0xf8, 0x08, 0x00, 0xd3, 0xf8, + 0xc0, 0x10, 0x4f, 0xf4, 0x7a, 0x72, 0x00, 0x23, 0x01, 0xf0, 0x32, 0xd8, + 0x01, 0x27, 0x02, 0xe0, 0x00, 0x27, 0x00, 0xe0, 0x07, 0x46, 0x38, 0x46, + 0x1f, 0xb0, 0xbd, 0xe8, 0xf0, 0x8f, 0x81, 0x46, 0x03, 0x23, 0xe3, 0x73, + 0xb8, 0xf8, 0x02, 0x31, 0x58, 0x46, 0x80, 0x2b, 0x14, 0xbf, 0xfe, 0x23, + 0x02, 0x23, 0x00, 0xf8, 0x05, 0x3b, 0x08, 0xf1, 0x5c, 0x01, 0x08, 0x22, + 0xf3, 0xf3, 0xee, 0xf4, 0xb9, 0xf1, 0x00, 0x0f, 0xba, 0xd0, 0xa9, 0xe7, + 0xd0, 0xf8, 0x48, 0x31, 0x70, 0xb5, 0x5c, 0x68, 0x06, 0x46, 0xe1, 0x42, + 0x0d, 0x46, 0x40, 0xd0, 0x0b, 0x59, 0x00, 0x2b, 0x3d, 0xd0, 0x59, 0x68, + 0x59, 0xb1, 0x4b, 0xf0, 0x45, 0xd8, 0x2b, 0x59, 0x4f, 0xf4, 0x84, 0x72, + 0x59, 0x68, 0x70, 0x68, 0xf8, 0xf3, 0x90, 0xf3, 0x2b, 0x59, 0x00, 0x22, + 0x5a, 0x60, 0x2b, 0x59, 0x9b, 0x68, 0x00, 0x2b, 0x2b, 0xd0, 0x99, 0x6e, + 0x61, 0xb1, 0xb0, 0x68, 0x01, 0xf0, 0x3a, 0xd8, 0x2b, 0x59, 0xb0, 0x68, + 0x9b, 0x68, 0x99, 0x6e, 0x01, 0xf0, 0x46, 0xd8, 0x2b, 0x59, 0x00, 0x22, + 0x9b, 0x68, 0x9a, 0x66, 0x2b, 0x59, 0x9b, 0x68, 0xd3, 0xf8, 0xc0, 0x10, + 0x71, 0xb1, 0xb0, 0x68, 0x01, 0xf0, 0x28, 0xd8, 0x2b, 0x59, 0xb0, 0x68, + 0x9b, 0x68, 0xd3, 0xf8, 0xc0, 0x10, 0x01, 0xf0, 0x33, 0xd8, 0x2b, 0x59, + 0x00, 0x22, 0x9b, 0x68, 0xc3, 0xf8, 0xc0, 0x20, 0x2b, 0x59, 0xc4, 0x22, + 0x99, 0x68, 0x70, 0x68, 0xf8, 0xf3, 0x60, 0xf3, 0x2b, 0x59, 0x00, 0x22, + 0x9a, 0x60, 0x70, 0xbd, 0xc1, 0x68, 0x10, 0xb5, 0x04, 0x46, 0x21, 0xb1, + 0x00, 0x68, 0xff, 0xf7, 0xaf, 0xff, 0x00, 0x23, 0xe3, 0x60, 0x10, 0xbd, + 0x70, 0xb5, 0xc5, 0x68, 0x04, 0x46, 0x00, 0x2d, 0x52, 0xd0, 0x83, 0x68, + 0x5b, 0x68, 0xeb, 0x58, 0x5b, 0x68, 0x00, 0x2b, 0x4c, 0xd0, 0x1e, 0x8a, + 0x1a, 0x68, 0x04, 0x2e, 0x14, 0xbf, 0x01, 0x26, 0x02, 0x26, 0x0c, 0x2a, + 0x1c, 0xd0, 0x0f, 0x2a, 0x2a, 0xd0, 0x0b, 0x2a, 0x40, 0xd1, 0x93, 0xf8, + 0x04, 0x21, 0x51, 0x1c, 0x02, 0x2a, 0x83, 0xf8, 0x04, 0x11, 0x08, 0xd9, + 0xc1, 0x68, 0x21, 0xb1, 0x40, 0x68, 0x1a, 0x31, 0x0f, 0x22, 0x4a, 0xf0, + 0x7f, 0xdf, 0x20, 0x46, 0x1f, 0xe0, 0x03, 0xf1, 0x5c, 0x00, 0x08, 0x21, + 0xf5, 0xf3, 0xde, 0xf1, 0x20, 0x46, 0x31, 0x46, 0x00, 0x22, 0x22, 0xe0, + 0x93, 0xf8, 0x04, 0x21, 0x51, 0x1c, 0x02, 0x2a, 0x83, 0xf8, 0x04, 0x11, + 0x0f, 0xd8, 0x03, 0xf1, 0x5c, 0x00, 0x08, 0x21, 0xf5, 0xf3, 0xce, 0xf1, + 0x20, 0x46, 0x31, 0x46, 0x02, 0x22, 0x12, 0xe0, 0x93, 0xf8, 0x04, 0x21, + 0x51, 0x1c, 0x02, 0x2a, 0x83, 0xf8, 0x04, 0x11, 0x03, 0xd9, 0xbd, 0xe8, + 0x70, 0x40, 0xff, 0xf7, 0xab, 0xbf, 0x03, 0xf1, 0x5c, 0x00, 0x08, 0x21, + 0xf5, 0xf3, 0xba, 0xf1, 0x20, 0x46, 0x31, 0x46, 0x04, 0x22, 0x2b, 0x46, + 0xbd, 0xe8, 0x70, 0x40, 0xff, 0xf7, 0x6a, 0xbd, 0x70, 0xbd, 0x70, 0xb5, + 0x06, 0x46, 0x00, 0x68, 0x0c, 0x46, 0xff, 0xf7, 0x4d, 0xff, 0x31, 0x68, + 0x00, 0x23, 0xca, 0x18, 0xd2, 0xf8, 0x4c, 0x22, 0x32, 0xb1, 0x52, 0x69, + 0x22, 0xb1, 0xd0, 0x68, 0xa0, 0x42, 0x01, 0xd1, 0x00, 0x20, 0xd0, 0x60, + 0x04, 0x33, 0x20, 0x2b, 0xf1, 0xd1, 0x75, 0x68, 0x63, 0x19, 0x43, 0xb1, + 0x61, 0x59, 0x31, 0xb1, 0x33, 0x68, 0x0c, 0x22, 0x58, 0x68, 0xf8, 0xf3, + 0xd9, 0xf2, 0x00, 0x23, 0x63, 0x51, 0x70, 0xbd, 0x37, 0xb5, 0x0c, 0x46, + 0x15, 0x46, 0x01, 0x46, 0x70, 0xb1, 0x6b, 0xb1, 0x82, 0x68, 0x52, 0x68, + 0x9b, 0x58, 0x0a, 0x8b, 0x98, 0x68, 0x52, 0xb1, 0xc3, 0x88, 0x53, 0xb9, + 0x1a, 0x31, 0x23, 0x46, 0x00, 0x95, 0x4a, 0xf0, 0xd7, 0xdd, 0x05, 0xe0, + 0x4f, 0xf0, 0xff, 0x30, 0x02, 0xe0, 0x10, 0x46, 0x00, 0xe0, 0x00, 0x20, + 0x3e, 0xbd, 0x2d, 0xe9, 0xf0, 0x4f, 0x02, 0x68, 0x89, 0xb0, 0x05, 0x46, + 0x88, 0x46, 0x06, 0x92, 0x99, 0x46, 0x00, 0x2b, 0x00, 0xf0, 0x32, 0x81, + 0x83, 0x68, 0x5b, 0x68, 0x59, 0xf8, 0x03, 0x30, 0x5c, 0x68, 0xd3, 0xf8, + 0x08, 0xa0, 0x00, 0x2c, 0x00, 0xf0, 0x2a, 0x81, 0xba, 0xf1, 0x00, 0x0f, + 0x00, 0xf0, 0x28, 0x81, 0x23, 0x8a, 0x04, 0x2b, 0x14, 0xbf, 0x01, 0x23, + 0x02, 0x23, 0x07, 0x93, 0xb4, 0xf8, 0x02, 0x31, 0x80, 0x2b, 0x05, 0xd0, + 0xb3, 0xf5, 0x00, 0x7f, 0x02, 0xd0, 0x04, 0x2b, 0x40, 0xf0, 0x1a, 0x81, + 0x04, 0xf1, 0x5c, 0x0b, 0x01, 0x20, 0x08, 0x23, 0x08, 0xf1, 0x17, 0x01, + 0x5a, 0x46, 0x98, 0xf8, 0x13, 0x70, 0x98, 0xf8, 0x14, 0x60, 0xf4, 0xf3, + 0x2f, 0xf7, 0x83, 0x45, 0x00, 0xf0, 0x0c, 0x81, 0x23, 0x68, 0x46, 0xea, + 0x07, 0x26, 0x0c, 0x2b, 0x63, 0xd0, 0x0f, 0x2b, 0x00, 0xf0, 0xe3, 0x80, + 0x0b, 0x2b, 0x40, 0xf0, 0x01, 0x81, 0x06, 0xf4, 0xdc, 0x73, 0xb3, 0xf5, + 0x84, 0x7f, 0x40, 0xf0, 0xfb, 0x80, 0x04, 0xf1, 0x3c, 0x07, 0x20, 0x22, + 0x08, 0xf1, 0x1f, 0x01, 0x38, 0x46, 0xf3, 0xf3, 0xad, 0xf3, 0x09, 0xf1, + 0x1a, 0x03, 0x06, 0x93, 0x0a, 0xf1, 0x48, 0x03, 0x00, 0x93, 0xba, 0xf8, + 0x06, 0x30, 0x04, 0xf1, 0x8c, 0x0c, 0xcd, 0xf8, 0x08, 0xc0, 0x01, 0x93, + 0xa3, 0x8a, 0x69, 0x68, 0x03, 0x93, 0xc2, 0x31, 0x06, 0x98, 0x04, 0xf1, + 0x1c, 0x02, 0x3b, 0x46, 0xcd, 0xf8, 0x14, 0xc0, 0xf4, 0xf3, 0x60, 0xf7, + 0x16, 0xf4, 0x80, 0x7f, 0xdd, 0xf8, 0x14, 0xc0, 0x08, 0xd0, 0x40, 0x46, + 0x06, 0xf0, 0x03, 0x01, 0x62, 0x46, 0xf4, 0xf3, 0xb5, 0xf7, 0x00, 0x28, + 0x00, 0xf0, 0xcc, 0x80, 0x98, 0xf8, 0x6f, 0x20, 0x98, 0xf8, 0x70, 0x30, + 0x53, 0xea, 0x02, 0x23, 0x08, 0xd0, 0xe2, 0x88, 0x9a, 0x42, 0x05, 0xd1, + 0x08, 0xf1, 0x71, 0x00, 0xe1, 0x68, 0xf3, 0xf3, 0x5b, 0xf3, 0x28, 0xb1, + 0x68, 0x68, 0x06, 0x99, 0x11, 0x22, 0x4a, 0xf0, 0x7f, 0xde, 0xb5, 0xe0, + 0x84, 0xf8, 0x04, 0x01, 0x2b, 0x68, 0xda, 0xf8, 0xc0, 0x10, 0x98, 0x68, + 0x00, 0xf0, 0xda, 0xde, 0x58, 0x46, 0x08, 0x21, 0xf5, 0xf3, 0xd8, 0xf0, + 0x28, 0x46, 0x07, 0x99, 0x02, 0x22, 0x4b, 0x46, 0xff, 0xf7, 0x8a, 0xfc, + 0xa2, 0xe0, 0x06, 0xf4, 0xd8, 0x73, 0xb3, 0xf5, 0x80, 0x7f, 0x40, 0xf0, + 0x9d, 0x80, 0xf1, 0x05, 0x09, 0xd5, 0x40, 0x46, 0x06, 0xf0, 0x03, 0x01, + 0x04, 0xf1, 0x8c, 0x02, 0xf4, 0xf3, 0x7a, 0xf7, 0x00, 0x28, 0x00, 0xf0, + 0x91, 0x80, 0x00, 0x23, 0x84, 0xf8, 0x04, 0x31, 0x2b, 0x68, 0xda, 0xf8, + 0xc0, 0x10, 0x98, 0x68, 0x00, 0xf0, 0xb4, 0xde, 0x22, 0x8a, 0x09, 0xf1, + 0x1a, 0x06, 0x23, 0x8b, 0x06, 0x98, 0x8d, 0xe8, 0x44, 0x00, 0x69, 0x68, + 0x04, 0xf1, 0xac, 0x02, 0x4a, 0xf0, 0xde, 0xdd, 0xb4, 0xf8, 0x02, 0x31, + 0x80, 0x2b, 0x02, 0xd1, 0x10, 0x23, 0x23, 0x60, 0x34, 0xe0, 0x04, 0x2b, + 0x32, 0xd1, 0x2f, 0x8a, 0x0d, 0x23, 0x17, 0xf0, 0x01, 0x07, 0x23, 0x60, + 0x22, 0xd1, 0x28, 0x46, 0xff, 0xf7, 0x7e, 0xfa, 0x28, 0x46, 0x69, 0x68, + 0xff, 0xf7, 0xe4, 0xfa, 0x95, 0xf8, 0x7a, 0x20, 0xb5, 0xf8, 0x7c, 0x30, + 0x01, 0x2a, 0x14, 0xbf, 0x01, 0x22, 0x02, 0x22, 0x85, 0xf8, 0x7a, 0x20, + 0x00, 0x92, 0x22, 0x8a, 0x06, 0x98, 0x01, 0x92, 0x01, 0x22, 0x03, 0x92, + 0x69, 0x68, 0x05, 0xf1, 0x5a, 0x02, 0x02, 0x97, 0x4a, 0xf0, 0x42, 0xdd, + 0x2b, 0x8a, 0x85, 0xf8, 0x7b, 0x00, 0x43, 0xf0, 0x01, 0x03, 0x2b, 0x82, + 0x58, 0x46, 0x08, 0x21, 0xf5, 0xf3, 0x74, 0xf0, 0x28, 0x46, 0x07, 0x99, + 0x04, 0x22, 0x4b, 0x46, 0xff, 0xf7, 0x26, 0xfc, 0xb4, 0xf8, 0x02, 0x31, + 0xb3, 0xf5, 0x00, 0x7f, 0x05, 0xd1, 0x06, 0x9a, 0x31, 0x46, 0xd2, 0xf8, + 0x44, 0x01, 0x01, 0xf0, 0xf7, 0xfe, 0xb4, 0xf8, 0x02, 0x31, 0x80, 0x2b, + 0x01, 0xd0, 0x04, 0x2b, 0x08, 0xd1, 0x6b, 0x68, 0x06, 0x98, 0x9b, 0x68, + 0x79, 0x21, 0x00, 0x93, 0x32, 0x46, 0x06, 0x23, 0xf8, 0xf7, 0x74, 0xf8, + 0xb4, 0xf8, 0x02, 0x31, 0x80, 0x2b, 0x21, 0xd1, 0x14, 0xe0, 0xf2, 0x05, + 0x07, 0xd5, 0x40, 0x46, 0x06, 0xf0, 0x03, 0x01, 0x04, 0xf1, 0x8c, 0x02, + 0xf4, 0xf3, 0xfe, 0xf6, 0xb0, 0xb1, 0x00, 0x23, 0x84, 0xf8, 0x04, 0x31, + 0x2b, 0x68, 0xda, 0xf8, 0xc0, 0x10, 0x98, 0x68, 0x00, 0xf0, 0x3a, 0xde, + 0x10, 0x23, 0x23, 0x60, 0x28, 0x46, 0xff, 0xf7, 0x23, 0xfe, 0x07, 0xe0, + 0x18, 0x46, 0x06, 0xe0, 0x20, 0x46, 0x04, 0xe0, 0x50, 0x46, 0x02, 0xe0, + 0x00, 0x20, 0x00, 0xe0, 0x01, 0x20, 0x09, 0xb0, 0xbd, 0xe8, 0xf0, 0x8f, + 0x2d, 0xe9, 0xf3, 0x47, 0x0b, 0x9e, 0x05, 0x46, 0x90, 0x46, 0x9a, 0x46, + 0x89, 0x46, 0x00, 0x29, 0x41, 0xd0, 0x00, 0x2e, 0x41, 0xd0, 0x83, 0x68, + 0x00, 0x68, 0x5b, 0x68, 0xf3, 0x58, 0x5c, 0x68, 0x9f, 0x68, 0x21, 0x46, + 0x4a, 0xf0, 0x0c, 0xde, 0x09, 0x23, 0x23, 0x60, 0x99, 0xf8, 0x00, 0x30, + 0x28, 0x68, 0x30, 0x2b, 0x6b, 0x68, 0x21, 0x46, 0xb3, 0xf8, 0x62, 0x30, + 0x4a, 0x46, 0x0c, 0xbf, 0x03, 0xf0, 0x80, 0x03, 0x03, 0xf0, 0x04, 0x03, + 0xa4, 0xf8, 0x02, 0x31, 0x0a, 0x9b, 0xcd, 0xf8, 0x00, 0xa0, 0x01, 0x93, + 0x43, 0x46, 0x4a, 0xf0, 0x13, 0xde, 0xf8, 0xb1, 0x6b, 0x69, 0x01, 0x2b, + 0x01, 0xd1, 0xf8, 0x88, 0xd0, 0xb1, 0x4f, 0xf0, 0x00, 0x08, 0x84, 0xf8, + 0x04, 0x81, 0x2b, 0x68, 0xd7, 0xf8, 0xc0, 0x10, 0x98, 0x68, 0x00, 0xf0, + 0xeb, 0xdd, 0x21, 0x8a, 0x0a, 0x23, 0x23, 0x60, 0x28, 0x46, 0x04, 0x29, + 0x14, 0xbf, 0x01, 0x21, 0x02, 0x21, 0x42, 0x46, 0x33, 0x46, 0xff, 0xf7, + 0x99, 0xfb, 0x01, 0x20, 0x02, 0xe0, 0x08, 0x46, 0x00, 0xe0, 0x30, 0x46, + 0xbd, 0xe8, 0xfc, 0x87, 0x70, 0xb5, 0x05, 0x46, 0x0e, 0x46, 0x40, 0x68, + 0x4f, 0xf4, 0x84, 0x71, 0xf8, 0xf3, 0x0a, 0xf1, 0x04, 0x46, 0x48, 0xb1, + 0x00, 0x21, 0x4f, 0xf4, 0x84, 0x72, 0xf3, 0xf3, 0xbb, 0xf2, 0xd5, 0xf8, + 0x48, 0x31, 0x84, 0xe8, 0x60, 0x00, 0xa3, 0x60, 0x20, 0x46, 0x70, 0xbd, + 0x01, 0x46, 0x28, 0xb1, 0x03, 0x68, 0x4f, 0xf4, 0x84, 0x72, 0x58, 0x68, + 0xf8, 0xf3, 0x04, 0xb1, 0x70, 0x47, 0x70, 0xb5, 0x0d, 0x46, 0xb4, 0xb0, + 0x04, 0x46, 0x00, 0x28, 0x36, 0xd0, 0x00, 0x29, 0x34, 0xd0, 0x03, 0x8a, + 0x4a, 0x88, 0x23, 0xf0, 0x02, 0x03, 0x1b, 0x04, 0x1b, 0x0c, 0x12, 0xf0, + 0x01, 0x0f, 0x03, 0x82, 0x0a, 0x88, 0x1a, 0xd0, 0xa2, 0xf1, 0x08, 0x03, + 0x9b, 0xb2, 0x38, 0x2b, 0x24, 0xd8, 0x40, 0x2a, 0x18, 0xd1, 0x00, 0x23, + 0x03, 0xa8, 0x04, 0x31, 0x00, 0x93, 0x4a, 0xf0, 0xf7, 0xdb, 0x06, 0x46, + 0x80, 0xb9, 0x04, 0xf1, 0x1a, 0x00, 0x15, 0xa9, 0x20, 0x22, 0xf3, 0xf3, + 0x1f, 0xf2, 0x23, 0x8a, 0x30, 0x46, 0x43, 0xf0, 0x02, 0x03, 0x23, 0x82, + 0x10, 0xe0, 0x20, 0x2a, 0x0c, 0xd1, 0x43, 0xf0, 0x02, 0x03, 0x03, 0x82, + 0x29, 0x1d, 0x2a, 0x88, 0x04, 0xf1, 0x1a, 0x00, 0xf3, 0xf3, 0x0e, 0xf2, + 0x2d, 0x88, 0x00, 0x20, 0x25, 0x83, 0x01, 0xe0, 0x6f, 0xf0, 0x01, 0x00, + 0x34, 0xb0, 0x70, 0xbd, 0xf0, 0xb5, 0x06, 0x9f, 0x14, 0x46, 0x07, 0x9e, + 0x1a, 0x46, 0x05, 0x9b, 0x50, 0xb1, 0x01, 0x29, 0x07, 0xd1, 0x41, 0x61, + 0x21, 0x46, 0x05, 0x97, 0x06, 0x96, 0xbd, 0xe8, 0xf0, 0x40, 0xff, 0xf7, + 0x3f, 0xbf, 0x00, 0x20, 0xf0, 0xbd, 0x10, 0xb5, 0x88, 0xb1, 0xcc, 0x7b, + 0x03, 0x2c, 0x0b, 0xd1, 0x44, 0x69, 0x01, 0x2c, 0x08, 0xd1, 0x8c, 0x7c, + 0x02, 0x2c, 0x01, 0xd0, 0xfe, 0x2c, 0x05, 0xd1, 0xff, 0xf7, 0xe5, 0xfd, + 0x01, 0x20, 0x10, 0xbd, 0x00, 0x20, 0x10, 0xbd, 0x00, 0x20, 0x10, 0xbd, + 0x2d, 0xe9, 0xf0, 0x41, 0x46, 0x68, 0x17, 0x46, 0xd6, 0xf8, 0xd4, 0x32, + 0xd0, 0xf8, 0x00, 0x80, 0x5a, 0x8e, 0xad, 0xf5, 0x06, 0x7d, 0x02, 0xf4, + 0x70, 0x42, 0xa2, 0xf5, 0x80, 0x55, 0x6a, 0x42, 0x42, 0xeb, 0x05, 0x02, + 0x04, 0x46, 0x40, 0x46, 0x46, 0xf0, 0xe4, 0xdd, 0x4f, 0xf4, 0x00, 0x73, + 0x85, 0x93, 0x05, 0x46, 0x00, 0x28, 0x51, 0xd0, 0x47, 0xb1, 0xe3, 0x68, + 0x00, 0x2b, 0x4d, 0xd1, 0x20, 0x46, 0x29, 0x46, 0xff, 0xf7, 0x9a, 0xf8, + 0x00, 0x28, 0x47, 0xd1, 0xa3, 0x68, 0x20, 0x46, 0x5b, 0x68, 0xeb, 0x58, + 0x9f, 0x68, 0xff, 0xf7, 0x1d, 0xf9, 0xb6, 0xf8, 0x62, 0x30, 0xab, 0x87, + 0x03, 0xb1, 0xe5, 0x60, 0x23, 0x8a, 0x98, 0x07, 0x08, 0xd5, 0x20, 0x22, + 0x07, 0xf1, 0x48, 0x00, 0x04, 0xf1, 0x1a, 0x01, 0xf3, 0xf3, 0xa2, 0xf1, + 0x20, 0x22, 0xfa, 0x80, 0xfb, 0x88, 0x20, 0x2b, 0x1b, 0xd1, 0x85, 0xab, + 0x00, 0x93, 0x40, 0x46, 0x50, 0x21, 0x2a, 0x69, 0x05, 0xab, 0x01, 0xf0, + 0x73, 0xf8, 0x08, 0xab, 0x00, 0x93, 0x85, 0x9b, 0x20, 0x46, 0x0c, 0x3b, + 0x01, 0x93, 0xe3, 0x68, 0x01, 0x21, 0x02, 0x93, 0xd5, 0xf8, 0xe8, 0x20, + 0xd5, 0xf8, 0xec, 0x30, 0xff, 0xf7, 0x80, 0xff, 0xa0, 0xb9, 0x20, 0x46, + 0xff, 0xf7, 0xe2, 0xfc, 0x10, 0xe0, 0x63, 0x68, 0x70, 0x69, 0xb3, 0xf8, + 0x62, 0x30, 0xb3, 0xf5, 0x00, 0x7f, 0x03, 0xd1, 0x06, 0xf1, 0xbc, 0x01, + 0x06, 0x22, 0x02, 0xe0, 0x72, 0x7e, 0x06, 0xf1, 0x1a, 0x01, 0x2b, 0x46, + 0xff, 0xf7, 0x56, 0xfd, 0x0d, 0xf5, 0x06, 0x7d, 0xbd, 0xe8, 0xf0, 0x81, + 0x2d, 0xe9, 0xf0, 0x47, 0xc6, 0x68, 0x05, 0x46, 0x07, 0x68, 0x00, 0x2e, + 0x33, 0xd0, 0x83, 0x68, 0x5b, 0x68, 0xf3, 0x58, 0x9c, 0x68, 0x00, 0x2c, + 0x2d, 0xd0, 0x04, 0xf1, 0x6c, 0x09, 0x48, 0x46, 0x4f, 0xf4, 0x80, 0x71, + 0xf9, 0xf3, 0x60, 0xf0, 0x80, 0x46, 0x00, 0x28, 0x1b, 0xd1, 0x04, 0xf1, + 0x48, 0x01, 0x20, 0x22, 0x48, 0x46, 0xf9, 0xf3, 0x97, 0xf0, 0x20, 0x23, + 0xe3, 0x80, 0x6b, 0x68, 0x06, 0xf1, 0x1a, 0x01, 0xb3, 0xf8, 0x62, 0x30, + 0xb3, 0xf5, 0x00, 0x7f, 0x05, 0xd1, 0xd7, 0xf8, 0x44, 0x01, 0xbd, 0xe8, + 0xf0, 0x47, 0x01, 0xf0, 0x46, 0xbd, 0x28, 0x46, 0x42, 0x46, 0xbd, 0xe8, + 0xf0, 0x47, 0xff, 0xf7, 0x5b, 0xbf, 0x00, 0x22, 0xb8, 0x68, 0xa1, 0x6e, + 0x13, 0x46, 0xbd, 0xe8, 0xf0, 0x47, 0x00, 0xf0, 0x5b, 0x9c, 0xbd, 0xe8, + 0xf0, 0x87, 0x7f, 0xb5, 0x91, 0xf8, 0x94, 0x30, 0x05, 0x46, 0x0c, 0x46, + 0x43, 0xb3, 0xd0, 0xf8, 0x00, 0x05, 0x03, 0xa9, 0x46, 0xf0, 0xd2, 0xd9, + 0x10, 0xe0, 0x33, 0x7e, 0x9b, 0x07, 0x0d, 0xd5, 0x33, 0x69, 0xa3, 0x42, + 0x0a, 0xd1, 0x01, 0x23, 0x4f, 0xf0, 0x02, 0x0e, 0x8d, 0xe8, 0x08, 0x40, + 0x28, 0x46, 0x21, 0x46, 0x32, 0x46, 0x00, 0x23, 0x46, 0xf0, 0xd8, 0xda, + 0x03, 0xa8, 0x46, 0xf0, 0xc5, 0xd9, 0x06, 0x46, 0x00, 0x28, 0xe8, 0xd1, + 0x3c, 0x23, 0xc4, 0xf8, 0x8c, 0x30, 0xf7, 0xf3, 0x4d, 0xf4, 0x01, 0x23, + 0xc4, 0xf8, 0x90, 0x00, 0x84, 0xf8, 0x94, 0x60, 0x84, 0xf8, 0x84, 0x30, + 0x7f, 0xbd, 0x70, 0x47, 0x10, 0xb5, 0xc3, 0xf8, 0xa0, 0x10, 0x08, 0x20, + 0x19, 0x46, 0x1c, 0x46, 0x33, 0xf0, 0x6a, 0xdd, 0x84, 0xf8, 0xa4, 0x00, + 0x10, 0xbd, 0x38, 0xb5, 0x05, 0x7d, 0x04, 0x46, 0xa5, 0xb1, 0x43, 0x7d, + 0x8b, 0xb9, 0xc0, 0x68, 0xa1, 0x69, 0x00, 0xf0, 0x5b, 0xdc, 0xd0, 0xf1, + 0x01, 0x05, 0x38, 0xbf, 0x00, 0x25, 0x01, 0x23, 0x63, 0x75, 0xe3, 0x69, + 0x0b, 0xb1, 0xa0, 0x68, 0x98, 0x47, 0x00, 0x23, 0x63, 0x75, 0x23, 0x75, + 0x00, 0xe0, 0x00, 0x25, 0x28, 0x46, 0x38, 0xbd, 0x00, 0x23, 0x0b, 0x61, + 0x4b, 0x81, 0x0b, 0x72, 0x0b, 0x73, 0x08, 0x46, 0x06, 0x22, 0x19, 0x46, + 0xf3, 0xf3, 0x32, 0xb1, 0x2d, 0xe9, 0xf7, 0x43, 0x9d, 0xf8, 0x28, 0x90, + 0x06, 0x46, 0x0c, 0x46, 0x15, 0x46, 0x98, 0x46, 0xb9, 0xf1, 0x00, 0x0f, + 0x3a, 0xd1, 0xcf, 0x68, 0x00, 0x2f, 0x37, 0xd0, 0x3b, 0x69, 0x00, 0x2b, + 0x34, 0xd0, 0x3b, 0x7a, 0x0b, 0x2b, 0x23, 0xd1, 0xfb, 0x79, 0x43, 0x45, + 0xd1, 0xf8, 0x70, 0x31, 0x09, 0xd1, 0xeb, 0xb1, 0x09, 0x69, 0x9a, 0x79, + 0x38, 0xf0, 0x92, 0xd8, 0xc4, 0xf8, 0x70, 0x91, 0xc4, 0xf8, 0x74, 0x91, + 0x14, 0xe0, 0x00, 0x2b, 0x2f, 0xd0, 0xda, 0x79, 0x42, 0x45, 0x2e, 0xd1, + 0x02, 0x68, 0x91, 0x6a, 0xd4, 0xf8, 0x74, 0x21, 0x91, 0x42, 0x07, 0xd9, + 0x21, 0x69, 0x9a, 0x79, 0x38, 0xf0, 0x7e, 0xd8, 0xc4, 0xf8, 0x70, 0x91, + 0xc4, 0xf8, 0x74, 0x91, 0xd4, 0xf8, 0x70, 0x71, 0xfb, 0x79, 0x43, 0x45, + 0x1e, 0xd0, 0x95, 0xf9, 0x48, 0x20, 0x8d, 0xe8, 0x08, 0x01, 0x31, 0x68, + 0x0e, 0x4b, 0x49, 0x68, 0x0e, 0x48, 0x00, 0xf0, 0xbf, 0xfc, 0x12, 0xe0, + 0xd6, 0xf8, 0x6c, 0x32, 0x9d, 0x42, 0x03, 0xd0, 0xab, 0x79, 0x0b, 0xb9, + 0x4f, 0xea, 0x58, 0x08, 0xb8, 0xf1, 0x03, 0x0f, 0x07, 0xd8, 0x05, 0xeb, + 0x88, 0x05, 0x6f, 0x6f, 0x04, 0xe0, 0x1f, 0x46, 0x02, 0xe0, 0x4f, 0x46, + 0x00, 0xe0, 0x00, 0x27, 0x38, 0x46, 0xbd, 0xe8, 0xfe, 0x83, 0x00, 0xbf, + 0xef, 0xdc, 0x01, 0x00, 0xc1, 0xdc, 0x01, 0x00, 0x00, 0x68, 0xf9, 0xf7, + 0x0c, 0xbc, 0x10, 0xb5, 0x04, 0x68, 0xb4, 0xb0, 0x51, 0xb1, 0x01, 0x71, + 0xc9, 0x22, 0x00, 0x21, 0x01, 0xa8, 0xf3, 0xf3, 0xc3, 0xf0, 0x23, 0x6b, + 0x01, 0xa9, 0x18, 0x69, 0x02, 0xf0, 0x24, 0xfd, 0x34, 0xb0, 0x10, 0xbd, + 0x4f, 0xf0, 0xff, 0x30, 0x70, 0x47, 0x4f, 0xf0, 0xff, 0x30, 0x70, 0x47, + 0x2d, 0xe9, 0xf7, 0x43, 0x0a, 0x9f, 0x0b, 0x9e, 0x0c, 0x46, 0x05, 0x46, + 0x90, 0x46, 0x99, 0x46, 0x00, 0x97, 0x01, 0x96, 0x3f, 0xf0, 0xc6, 0xdd, + 0x4b, 0x46, 0x28, 0x46, 0x21, 0x46, 0x42, 0x46, 0x00, 0x97, 0x01, 0x96, + 0x3f, 0xf0, 0xac, 0xde, 0x21, 0x46, 0x01, 0x22, 0x28, 0x46, 0x3f, 0xf0, + 0x8f, 0xde, 0xb4, 0xf8, 0x34, 0x35, 0xd9, 0x06, 0x06, 0xd5, 0x28, 0x46, + 0x21, 0x46, 0x03, 0xb0, 0xbd, 0xe8, 0xf0, 0x43, 0x3d, 0xf0, 0xbe, 0x9c, + 0x03, 0xb0, 0xbd, 0xe8, 0xf0, 0x83, 0x40, 0x6b, 0x70, 0x47, 0xf8, 0xb5, + 0x04, 0x46, 0x0e, 0x46, 0x17, 0x46, 0x90, 0xf8, 0x56, 0x51, 0xfe, 0xf3, + 0x07, 0xf6, 0x60, 0xb1, 0x0f, 0xe0, 0x73, 0x6a, 0xdb, 0x06, 0x06, 0xd4, + 0x94, 0xf8, 0x57, 0x31, 0x43, 0xf0, 0x02, 0x03, 0x84, 0xf8, 0x57, 0x31, + 0x03, 0xe0, 0x38, 0x3f, 0x38, 0x36, 0x37, 0x2f, 0xf1, 0xd8, 0x84, 0xf8, + 0x56, 0x51, 0xf8, 0xbd, 0xf8, 0xb5, 0x04, 0x46, 0x0e, 0x46, 0x17, 0x46, + 0x90, 0xf8, 0x56, 0x51, 0xfe, 0xf3, 0x50, 0xf6, 0x60, 0xb1, 0x0f, 0xe0, + 0xf3, 0x88, 0xda, 0x06, 0x06, 0xd4, 0x94, 0xf8, 0x57, 0x31, 0x43, 0xf0, + 0x01, 0x03, 0x84, 0xf8, 0x57, 0x31, 0x03, 0xe0, 0x08, 0x3f, 0x08, 0x36, + 0x07, 0x2f, 0xf1, 0xd8, 0x84, 0xf8, 0x56, 0x51, 0xf8, 0xbd, 0x2d, 0xe9, + 0xf0, 0x41, 0xa2, 0xb0, 0x04, 0x46, 0x88, 0x46, 0x90, 0xf8, 0x55, 0x61, + 0x90, 0xf8, 0x56, 0x71, 0x90, 0xf8, 0x54, 0x51, 0x88, 0x22, 0x68, 0x46, + 0xf2, 0xf3, 0xe4, 0xf7, 0x20, 0x46, 0x41, 0x46, 0xff, 0xf3, 0x2e, 0xf0, + 0x00, 0x28, 0x32, 0xd1, 0x00, 0x9b, 0x84, 0xf8, 0x56, 0x71, 0x9d, 0x42, + 0x84, 0xf8, 0x54, 0x51, 0x29, 0xd0, 0x1b, 0xb9, 0x94, 0xf8, 0x57, 0x21, + 0x72, 0xb1, 0x11, 0xe0, 0x02, 0x2b, 0x04, 0xd1, 0x94, 0xf8, 0x57, 0x21, + 0x12, 0xf0, 0x01, 0x0f, 0x05, 0xe0, 0x01, 0x2b, 0x06, 0xd1, 0x94, 0xf8, + 0x57, 0x21, 0x12, 0xf0, 0x02, 0x0f, 0x01, 0xd1, 0xfe, 0x22, 0x12, 0xe0, + 0x85, 0xb9, 0x0b, 0xe0, 0x01, 0x2d, 0x02, 0xd1, 0x12, 0xf0, 0x01, 0x0f, + 0x03, 0xe0, 0x02, 0x2d, 0x03, 0xd1, 0x12, 0xf0, 0x02, 0x0f, 0x05, 0xd1, + 0x07, 0xe0, 0x35, 0xb9, 0x94, 0xf8, 0x55, 0x21, 0xb2, 0x42, 0x02, 0xd2, + 0x00, 0x22, 0x84, 0xf8, 0x56, 0x21, 0x84, 0xf8, 0x54, 0x31, 0x22, 0xb0, + 0xbd, 0xe8, 0xf0, 0x81, 0x10, 0xb5, 0x04, 0x46, 0xff, 0xf3, 0x88, 0xf0, + 0x00, 0x23, 0x84, 0xf8, 0x57, 0x31, 0xa4, 0xf8, 0x58, 0x31, 0xc4, 0xf8, + 0x5c, 0x31, 0x84, 0xf8, 0x56, 0x31, 0x10, 0xbd, 0x38, 0xb5, 0x04, 0x46, + 0x0d, 0x46, 0xff, 0xf3, 0xe7, 0xf0, 0x00, 0xbb, 0xa3, 0x6d, 0xdd, 0xb1, + 0xeb, 0xb9, 0xd4, 0xf8, 0x54, 0x21, 0x0e, 0x4b, 0x13, 0x40, 0x7b, 0xb1, + 0x94, 0xf8, 0x54, 0x31, 0x02, 0x2b, 0x04, 0xd1, 0x94, 0xf8, 0x57, 0x31, + 0x13, 0xf0, 0x01, 0x0f, 0x05, 0xe0, 0x01, 0x2b, 0x06, 0xd1, 0x94, 0xf8, + 0x57, 0x31, 0x13, 0xf0, 0x02, 0x0f, 0x01, 0xd1, 0xfe, 0x23, 0x00, 0xe0, + 0x00, 0x23, 0x84, 0xf8, 0x56, 0x31, 0x38, 0xbd, 0x0b, 0xb1, 0x84, 0xf8, + 0x56, 0x01, 0x38, 0xbd, 0xff, 0x00, 0x00, 0xff, 0xf0, 0xb5, 0x91, 0xb0, + 0xad, 0xf1, 0x04, 0x06, 0x04, 0x46, 0x05, 0x46, 0xb6, 0x46, 0x00, 0x23, + 0x09, 0xe0, 0x07, 0x69, 0x01, 0x33, 0x97, 0xf8, 0x07, 0xc0, 0x4e, 0xf8, + 0x04, 0xcf, 0xd7, 0xf8, 0x34, 0xc0, 0x87, 0xf8, 0x07, 0xc0, 0xb4, 0xf9, + 0x10, 0x70, 0x04, 0x30, 0xbb, 0x42, 0xf0, 0xdb, 0x20, 0x46, 0xff, 0xf3, + 0xa9, 0xf1, 0x00, 0x23, 0x04, 0xe0, 0x2a, 0x69, 0x56, 0xf8, 0x04, 0x1f, + 0x01, 0x33, 0xd1, 0x71, 0xb4, 0xf9, 0x10, 0x20, 0x04, 0x35, 0x93, 0x42, + 0xf5, 0xdb, 0x11, 0xb0, 0xf0, 0xbd, 0x38, 0xb5, 0x15, 0x46, 0x04, 0x46, + 0xff, 0xf3, 0x2c, 0xf2, 0x2b, 0x68, 0x0b, 0xb1, 0x02, 0x23, 0xa3, 0x65, + 0x38, 0xbd, 0x0e, 0x29, 0x73, 0xb5, 0x05, 0x46, 0x0b, 0xd0, 0x0f, 0x29, + 0x10, 0xd1, 0x11, 0x46, 0x01, 0xa8, 0x04, 0x22, 0xf2, 0xf3, 0x32, 0xf7, + 0x28, 0x46, 0x01, 0x99, 0xf3, 0xf7, 0x27, 0xff, 0x08, 0xe0, 0xb0, 0xf8, + 0x58, 0x31, 0x00, 0x20, 0x03, 0xf0, 0x01, 0x03, 0x13, 0x60, 0x01, 0xe0, + 0xff, 0xf3, 0x52, 0xf2, 0x7c, 0xbd, 0xf8, 0xb5, 0x04, 0x46, 0x0f, 0x46, + 0x86, 0x6e, 0xff, 0xf3, 0xf3, 0xf6, 0x05, 0x46, 0x80, 0xb9, 0x04, 0x22, + 0x07, 0xf1, 0x14, 0x01, 0x04, 0xf5, 0xae, 0x70, 0xf2, 0xf3, 0x14, 0xf7, + 0xd4, 0xf8, 0x5c, 0x31, 0x4f, 0xf4, 0x7a, 0x72, 0x53, 0x43, 0x71, 0x1c, + 0xc4, 0xf8, 0x5c, 0x31, 0x08, 0xbf, 0xa6, 0x66, 0x28, 0x46, 0xf8, 0xbd, + 0x83, 0x6e, 0x01, 0x33, 0x01, 0xd0, 0xfe, 0xf3, 0xab, 0xb5, 0x70, 0x47, + 0xf8, 0xb5, 0x0c, 0x29, 0x04, 0x46, 0x0d, 0x46, 0x17, 0x46, 0x90, 0xf8, + 0x53, 0x61, 0x0d, 0xd1, 0x00, 0x21, 0x01, 0x22, 0xff, 0xf3, 0x4a, 0xf1, + 0x20, 0x46, 0x00, 0x21, 0x01, 0x22, 0xff, 0xf3, 0x01, 0xf1, 0x00, 0x23, + 0x84, 0xf8, 0xce, 0x30, 0x84, 0xf8, 0xcd, 0x30, 0xa3, 0x6e, 0x29, 0x46, + 0x58, 0x1c, 0x08, 0xbf, 0x84, 0xf8, 0x56, 0x31, 0x20, 0x46, 0x3a, 0x46, + 0xff, 0xf3, 0x56, 0xf2, 0xb4, 0xf8, 0x6c, 0x30, 0x03, 0xf0, 0xc0, 0x03, + 0xc0, 0x2b, 0x16, 0xd1, 0xd4, 0xf8, 0x5c, 0x31, 0x9b, 0xb1, 0x94, 0xf8, + 0x53, 0x31, 0xb3, 0x42, 0x0f, 0xd9, 0xe3, 0x68, 0xa1, 0x68, 0x98, 0x68, + 0x00, 0xf0, 0x42, 0xda, 0xe3, 0x68, 0xa1, 0x68, 0x98, 0x68, 0xd4, 0xf8, + 0x5c, 0x21, 0x01, 0x23, 0x00, 0xf0, 0xf2, 0xd9, 0x4f, 0xf0, 0xff, 0x33, + 0xa3, 0x66, 0xf8, 0xbd, 0x2d, 0xe9, 0xf8, 0x43, 0x04, 0x46, 0x89, 0x46, + 0xff, 0xf3, 0x1e, 0xf7, 0xf7, 0xf3, 0x02, 0xf2, 0x94, 0xf8, 0x54, 0x31, + 0x80, 0x46, 0x01, 0x2b, 0x1d, 0xd8, 0x26, 0x46, 0x00, 0x25, 0x16, 0xe0, + 0x77, 0x69, 0xbb, 0x79, 0x02, 0x2b, 0x10, 0xd1, 0xb4, 0xf8, 0x6c, 0x30, + 0xdb, 0x05, 0x0c, 0xd5, 0x20, 0x46, 0x49, 0x46, 0x42, 0x46, 0xf3, 0xf7, + 0x0b, 0xfe, 0x30, 0xb9, 0x04, 0x23, 0xbb, 0x71, 0x94, 0xf8, 0xcd, 0x30, + 0x01, 0x3b, 0x84, 0xf8, 0xcd, 0x30, 0x01, 0x35, 0x04, 0x36, 0xb4, 0xf9, + 0x10, 0x30, 0x9d, 0x42, 0xe4, 0xdb, 0xbd, 0xe8, 0xf8, 0x83, 0x70, 0x47, + 0x00, 0x20, 0x70, 0x47, 0x70, 0x47, 0x00, 0x20, 0x70, 0x47, 0x70, 0x47, + 0x00, 0x20, 0x70, 0x47, 0x70, 0x47, 0x00, 0x20, 0x70, 0x47, 0x70, 0x47, + 0x70, 0x47, 0x70, 0x47, 0x70, 0x47, 0x70, 0x47, 0x70, 0x47, 0x70, 0x47, + 0x70, 0x47, 0x4f, 0xf0, 0xff, 0x30, 0x70, 0x47, 0x70, 0x47, 0x00, 0x20, + 0x70, 0x47, 0x00, 0x20, 0x70, 0x47, 0x70, 0x47, 0x70, 0x47, 0x70, 0x47, + 0x00, 0x20, 0x70, 0x47, 0x70, 0x47, 0x2d, 0xe9, 0xff, 0x41, 0x0b, 0x9e, + 0x0c, 0x46, 0xb6, 0xf8, 0x62, 0x50, 0x0a, 0x9f, 0x15, 0xf0, 0x0f, 0x0f, + 0xdd, 0xf8, 0x30, 0x80, 0x14, 0xd0, 0x40, 0xf2, 0x37, 0x15, 0x3d, 0x40, + 0x85, 0xb1, 0x00, 0x97, 0x01, 0x96, 0xcd, 0xf8, 0x08, 0x80, 0x0b, 0xf0, + 0x91, 0xdf, 0x98, 0xf9, 0x34, 0x30, 0x33, 0xb1, 0x63, 0x78, 0x02, 0x2b, + 0x03, 0xd9, 0x02, 0x3b, 0x63, 0x70, 0x84, 0x1e, 0x00, 0xe0, 0x04, 0x46, + 0x20, 0x46, 0x04, 0xb0, 0xbd, 0xe8, 0xf0, 0x81, 0xf0, 0xb5, 0x06, 0x9d, + 0x0f, 0x46, 0xb5, 0xf8, 0x62, 0x40, 0x05, 0x9e, 0x14, 0xf4, 0x74, 0x7f, + 0x07, 0xd0, 0x40, 0xf2, 0x37, 0x14, 0x34, 0x40, 0x1c, 0xb1, 0xbd, 0xe8, + 0xf0, 0x40, 0x0b, 0xf0, 0xa5, 0x9d, 0x38, 0x46, 0xf0, 0xbd, 0x00, 0x00, + 0x2d, 0xe9, 0xf0, 0x4f, 0x8f, 0xb0, 0x0b, 0x46, 0x93, 0x46, 0x1d, 0x99, + 0x00, 0x22, 0x05, 0x46, 0x1a, 0x9e, 0xdd, 0xf8, 0x6c, 0xa0, 0x09, 0x92, + 0x0a, 0x92, 0x05, 0x93, 0xdd, 0xf8, 0x60, 0x90, 0x19, 0x9f, 0x30, 0xf0, + 0x67, 0xd8, 0x05, 0x9b, 0x0b, 0xf0, 0x01, 0x02, 0xd0, 0xf8, 0xd8, 0x82, + 0x04, 0x46, 0x00, 0x92, 0x19, 0x46, 0x28, 0x68, 0x32, 0x46, 0x53, 0x46, + 0x13, 0xf0, 0xc4, 0xdf, 0x00, 0x28, 0x40, 0xf0, 0xb5, 0x81, 0x03, 0x2f, + 0x0c, 0xd9, 0x04, 0x22, 0x09, 0xa8, 0x49, 0x46, 0xf2, 0xf3, 0x12, 0xf6, + 0x07, 0x2f, 0x05, 0xd9, 0x0a, 0xa8, 0x09, 0xf1, 0x04, 0x01, 0x04, 0x22, + 0xf2, 0xf3, 0x0a, 0xf6, 0xbb, 0xf1, 0x13, 0x0f, 0x00, 0xf2, 0x85, 0x81, + 0xdf, 0xe8, 0x1b, 0xf0, 0x14, 0x00, 0x18, 0x00, 0x83, 0x01, 0x83, 0x01, + 0x45, 0x00, 0x22, 0x00, 0x86, 0x00, 0x91, 0x00, 0xa2, 0x00, 0xa8, 0x00, + 0xb6, 0x00, 0x83, 0x01, 0x83, 0x01, 0xb9, 0x00, 0x7a, 0x01, 0x7f, 0x01, + 0x83, 0x01, 0x83, 0x01, 0xf7, 0x00, 0x0b, 0x01, 0x28, 0x46, 0x0a, 0xf0, + 0xcf, 0xdc, 0x8d, 0xe0, 0x28, 0x46, 0x09, 0x99, 0x0a, 0xf0, 0xf4, 0xdc, + 0x00, 0x28, 0x0c, 0xbf, 0x6f, 0xf0, 0x1c, 0x07, 0x00, 0x27, 0x7c, 0xe1, + 0xa4, 0x79, 0x00, 0x2c, 0x40, 0xf0, 0x60, 0x81, 0xd8, 0xf8, 0x2c, 0x10, + 0x41, 0xb1, 0x68, 0x68, 0xd8, 0xf8, 0x30, 0x20, 0xf7, 0xf3, 0x92, 0xf4, + 0xc8, 0xf8, 0x2c, 0x40, 0xc8, 0xf8, 0x30, 0x40, 0x00, 0x2f, 0x00, 0xf0, + 0x6a, 0x81, 0x68, 0x68, 0x39, 0x46, 0xf7, 0xf3, 0x77, 0xf4, 0xc8, 0xf8, + 0x2c, 0x00, 0x00, 0x28, 0x00, 0xf0, 0x4b, 0x81, 0xc8, 0xf8, 0x30, 0x70, + 0x49, 0x46, 0x3a, 0x46, 0xf2, 0xf3, 0xc0, 0xf5, 0x37, 0xe1, 0xa3, 0x79, + 0x00, 0x2b, 0x00, 0xf0, 0x43, 0x81, 0x48, 0x46, 0x04, 0xf1, 0xbc, 0x01, + 0x06, 0x22, 0xf2, 0xf3, 0x99, 0xf5, 0x07, 0x46, 0xc0, 0xb9, 0xa2, 0x6d, + 0xb4, 0xf8, 0x62, 0x30, 0x8d, 0xe8, 0x14, 0x00, 0xd4, 0xf8, 0xd4, 0x22, + 0x31, 0x46, 0x02, 0x92, 0x28, 0x46, 0x52, 0x46, 0xff, 0xf7, 0x31, 0xff, + 0x32, 0x1a, 0x01, 0x46, 0xa0, 0x6d, 0xb4, 0xf8, 0x62, 0x30, 0x52, 0x44, + 0x8d, 0xe8, 0x11, 0x00, 0x28, 0x46, 0xff, 0xf7, 0x4b, 0xff, 0x34, 0xe1, + 0x28, 0x46, 0x49, 0x46, 0x46, 0xf0, 0xa8, 0xd9, 0x00, 0x28, 0x00, 0xf0, + 0x1e, 0x81, 0xd0, 0xf8, 0xe8, 0x40, 0x00, 0x2c, 0x00, 0xf0, 0x19, 0x81, + 0xd0, 0xf8, 0xec, 0x30, 0x9a, 0x45, 0xc0, 0xf2, 0x1f, 0x81, 0x62, 0x78, + 0x30, 0x46, 0x21, 0x46, 0x02, 0x32, 0xf2, 0xf3, 0x83, 0xf5, 0x63, 0x78, + 0x00, 0x27, 0xf6, 0x18, 0xf7, 0x70, 0x18, 0xe1, 0xb4, 0xf9, 0x5e, 0x30, + 0x2b, 0xb9, 0xb4, 0xf9, 0x5c, 0x30, 0x00, 0x33, 0x18, 0xbf, 0x01, 0x23, + 0xec, 0xe0, 0x02, 0x23, 0xea, 0xe0, 0x09, 0x9b, 0x02, 0x2b, 0x04, 0xd1, + 0x00, 0x23, 0xa4, 0xf8, 0x5c, 0x30, 0x01, 0x23, 0x05, 0xe0, 0x00, 0x33, + 0x18, 0xbf, 0x01, 0x23, 0xa4, 0xf8, 0x5c, 0x30, 0x00, 0x23, 0xa4, 0xf8, + 0x5e, 0x30, 0xda, 0xe0, 0xd5, 0xf8, 0x34, 0x07, 0xfa, 0xf7, 0x90, 0xf8, + 0x30, 0x60, 0xd4, 0xe0, 0xd5, 0xf8, 0x34, 0x07, 0x09, 0x9c, 0xfa, 0xf7, + 0x8f, 0xf8, 0x84, 0x42, 0x00, 0xf3, 0xe2, 0x80, 0xd5, 0xf8, 0x34, 0x07, + 0x09, 0x99, 0xfa, 0xf7, 0x84, 0xf8, 0xc6, 0xe0, 0xb5, 0xf8, 0xbe, 0x38, + 0xc2, 0xe0, 0x2b, 0x68, 0x93, 0xf8, 0xa0, 0x30, 0x00, 0x2b, 0x38, 0xd0, + 0x72, 0x49, 0x06, 0x22, 0x07, 0xa8, 0xf2, 0xf3, 0x41, 0xf5, 0x31, 0x46, + 0x04, 0x22, 0x0c, 0xa8, 0xf2, 0xf3, 0x3c, 0xf5, 0x31, 0x1d, 0x04, 0x22, + 0x0d, 0xa8, 0xf2, 0xf3, 0x37, 0xf5, 0x07, 0xa8, 0x06, 0xf1, 0x08, 0x01, + 0x06, 0x22, 0xf2, 0xf3, 0x31, 0xf5, 0x0d, 0x9b, 0x53, 0xb9, 0xd5, 0xf8, + 0x68, 0x21, 0x91, 0x79, 0x81, 0xb9, 0x52, 0x69, 0x01, 0x2a, 0x0d, 0xd0, + 0x2a, 0x68, 0x92, 0xf8, 0x3f, 0x20, 0x4a, 0xb9, 0x07, 0xaa, 0x00, 0x92, + 0x10, 0x36, 0x28, 0x46, 0x21, 0x46, 0x0c, 0x9a, 0x01, 0x96, 0x17, 0xf0, + 0xc9, 0xde, 0x71, 0xe0, 0x2b, 0x68, 0x1b, 0x7e, 0x00, 0x2b, 0x00, 0xf0, + 0xa6, 0x80, 0x28, 0x46, 0x21, 0x46, 0x07, 0xaa, 0x06, 0xf1, 0x10, 0x03, + 0x17, 0xf0, 0xa8, 0xde, 0x64, 0xe0, 0x03, 0x2f, 0x40, 0xf2, 0xa0, 0x80, + 0x09, 0x99, 0x00, 0x29, 0x04, 0xdb, 0x28, 0x46, 0x0b, 0xaa, 0x2f, 0xf0, + 0x85, 0xde, 0x04, 0x46, 0x0c, 0xb1, 0x23, 0x79, 0x76, 0xe0, 0x0b, 0x9b, + 0x1e, 0x33, 0x40, 0xf0, 0x8f, 0x80, 0x34, 0x60, 0x8c, 0xe0, 0xba, 0xf1, + 0x07, 0x0f, 0x40, 0xf3, 0x8b, 0x80, 0x0a, 0x9e, 0x03, 0x2e, 0x05, 0xd0, + 0xa6, 0xf1, 0x02, 0x01, 0x4e, 0x42, 0x46, 0xeb, 0x01, 0x06, 0x00, 0xe0, + 0x00, 0x26, 0x09, 0x99, 0x00, 0x29, 0x21, 0xdb, 0x28, 0x46, 0x0b, 0xaa, + 0x2f, 0xf0, 0x66, 0xde, 0x04, 0x46, 0xd8, 0xb9, 0x0b, 0x9b, 0x1e, 0x33, + 0x1a, 0xd1, 0x0a, 0x9b, 0x00, 0x2b, 0x17, 0xdd, 0x22, 0x46, 0x23, 0x46, + 0x86, 0xf0, 0x01, 0x06, 0x28, 0x46, 0x09, 0x99, 0x00, 0x96, 0x2f, 0xf0, + 0xef, 0xda, 0x04, 0x46, 0x70, 0xb1, 0x28, 0x46, 0x21, 0x46, 0x2f, 0xf0, + 0xd3, 0xdf, 0x07, 0x46, 0x50, 0xb1, 0x28, 0x46, 0x21, 0x46, 0x2f, 0xf0, + 0x27, 0xdf, 0x05, 0xe0, 0x00, 0x27, 0x03, 0xe0, 0x07, 0x46, 0x01, 0xe0, + 0x6f, 0xf0, 0x1a, 0x07, 0x0a, 0x9b, 0x03, 0x2b, 0x57, 0xd0, 0x00, 0x2f, + 0x55, 0xd1, 0x00, 0x2b, 0x27, 0xdd, 0x02, 0x2b, 0x02, 0xd0, 0x22, 0x79, + 0x00, 0x2a, 0x4e, 0xd1, 0x2a, 0x68, 0x12, 0x6f, 0x92, 0x07, 0x48, 0xd1, + 0xa2, 0x79, 0x92, 0xb1, 0x02, 0x2b, 0x05, 0xd0, 0x28, 0x46, 0x21, 0x46, + 0x2f, 0xf0, 0xe0, 0xdd, 0x07, 0x46, 0x40, 0xe0, 0x63, 0x79, 0x1b, 0xb1, + 0x28, 0x46, 0x21, 0x46, 0x2f, 0xf0, 0x24, 0xdc, 0x28, 0x46, 0x21, 0x46, + 0x2f, 0xf0, 0xfc, 0xde, 0x35, 0xe0, 0x63, 0x7e, 0x28, 0x46, 0x00, 0x92, + 0x01, 0x92, 0x21, 0x46, 0x04, 0xf1, 0x1a, 0x02, 0x2a, 0xf0, 0x8e, 0xd9, + 0x2b, 0xe0, 0x63, 0x79, 0x4b, 0xb3, 0x28, 0x46, 0x21, 0x46, 0x2f, 0xf0, + 0x0f, 0xdc, 0x24, 0xe0, 0x95, 0xf8, 0xc3, 0x34, 0x33, 0x60, 0x00, 0x27, + 0x1f, 0xe0, 0x09, 0x9b, 0x85, 0xf8, 0xc3, 0x34, 0xf9, 0xe7, 0x6f, 0xf0, + 0x16, 0x07, 0x18, 0xe0, 0x6f, 0xf0, 0x06, 0x07, 0x15, 0xe0, 0x6f, 0xf0, + 0x1a, 0x07, 0x12, 0xe0, 0x6f, 0xf0, 0x05, 0x07, 0x0f, 0xe0, 0x6f, 0xf0, + 0x1d, 0x07, 0x0c, 0xe0, 0x6f, 0xf0, 0x1c, 0x07, 0x09, 0xe0, 0x6f, 0xf0, + 0x03, 0x07, 0x06, 0xe0, 0x27, 0x46, 0x04, 0xe0, 0x6f, 0xf0, 0x0d, 0x07, + 0x01, 0xe0, 0x6f, 0xf0, 0x08, 0x07, 0x38, 0x46, 0x0f, 0xb0, 0xbd, 0xe8, + 0xf0, 0x8f, 0x00, 0xbf, 0x2c, 0x9e, 0x85, 0x00, 0x70, 0xb5, 0x05, 0x46, + 0x0e, 0x46, 0x1c, 0xf0, 0xe9, 0xdd, 0x04, 0x46, 0xc0, 0xb1, 0x31, 0x46, + 0x28, 0x46, 0x40, 0xf2, 0x6c, 0x52, 0x1c, 0xf0, 0xf3, 0xde, 0x06, 0x46, + 0x20, 0xb9, 0x28, 0x46, 0x21, 0x46, 0x1c, 0xf0, 0x4f, 0xde, 0x0a, 0xe0, + 0x21, 0x46, 0x40, 0xf2, 0x65, 0x52, 0xf2, 0xf3, 0x45, 0xf4, 0x28, 0x46, + 0x21, 0x46, 0x40, 0xf2, 0x65, 0x52, 0xf7, 0xf3, 0xfb, 0xf2, 0x34, 0x46, + 0x20, 0x46, 0x70, 0xbd, 0x30, 0xb5, 0x05, 0x4c, 0x85, 0x68, 0xa5, 0x42, + 0x03, 0xd0, 0xbd, 0xe8, 0x30, 0x40, 0xf2, 0xf3, 0x99, 0xb7, 0x00, 0x20, + 0x30, 0xbd, 0x00, 0xbf, 0x08, 0x00, 0x00, 0x20, 0x8b, 0x79, 0x10, 0xb5, + 0x04, 0x4c, 0x0b, 0xb1, 0x01, 0x23, 0x23, 0x70, 0x2f, 0xf0, 0x2a, 0xdc, + 0x00, 0x23, 0x23, 0x70, 0x10, 0xbd, 0x00, 0xbf, 0xf4, 0x0b, 0x02, 0x00, + 0x05, 0x4b, 0x02, 0x69, 0x19, 0x78, 0x29, 0xb1, 0xd2, 0xf8, 0xd0, 0x20, + 0x12, 0xb1, 0x00, 0x22, 0x1a, 0x70, 0x70, 0x47, 0x1a, 0xf0, 0xa8, 0x9d, + 0xf4, 0x0b, 0x02, 0x00, 0x38, 0xb5, 0x05, 0x46, 0xf3, 0xf7, 0x93, 0xfa, + 0x01, 0x28, 0x01, 0x46, 0x07, 0xdd, 0x04, 0x4c, 0x01, 0x23, 0x28, 0x46, + 0x23, 0x70, 0xfa, 0xf3, 0x23, 0xf6, 0x00, 0x23, 0x23, 0x70, 0x38, 0xbd, + 0xec, 0x0b, 0x02, 0x00, 0x10, 0xb5, 0x07, 0x4c, 0x23, 0x78, 0x01, 0x2b, + 0x09, 0xd0, 0x06, 0x4b, 0x1b, 0x78, 0x01, 0x2b, 0x05, 0xd0, 0x01, 0x23, + 0x23, 0x70, 0xfa, 0xf3, 0x83, 0xf7, 0x00, 0x23, 0x23, 0x70, 0x10, 0xbd, + 0x00, 0x0c, 0x02, 0x00, 0xec, 0x0b, 0x02, 0x00, 0x10, 0xb5, 0x04, 0x46, + 0xf9, 0xf3, 0xaa, 0xf7, 0x00, 0x23, 0x84, 0xf8, 0x17, 0x32, 0x84, 0xf8, + 0x18, 0x32, 0x10, 0xbd, 0x10, 0xb5, 0x90, 0xf8, 0x16, 0x32, 0x04, 0x46, + 0x5b, 0xb1, 0x08, 0x4b, 0x1b, 0x68, 0x43, 0xb1, 0xd0, 0xf8, 0x80, 0x11, + 0xd0, 0xf8, 0x84, 0x21, 0x02, 0x23, 0xc0, 0x68, 0x4a, 0x40, 0xfb, 0xf3, + 0x03, 0xf4, 0x20, 0x46, 0xbd, 0xe8, 0x10, 0x40, 0xf9, 0xf3, 0x3e, 0xb6, + 0xa0, 0x07, 0x02, 0x00, 0x0f, 0xb4, 0x30, 0xb5, 0x11, 0x4a, 0xad, 0xf5, + 0x03, 0x7d, 0x96, 0x45, 0x15, 0xd0, 0x10, 0x4a, 0x96, 0x45, 0x12, 0xd0, + 0x87, 0xab, 0x68, 0x46, 0x40, 0xf2, 0x01, 0x21, 0x86, 0x9a, 0x81, 0x93, + 0xf2, 0xf3, 0x52, 0xf5, 0x00, 0x25, 0x04, 0x46, 0x04, 0xe0, 0x1d, 0xf8, + 0x05, 0x00, 0xf7, 0xf3, 0x95, 0xf1, 0x01, 0x35, 0xa5, 0x42, 0xf8, 0xdb, + 0x00, 0xe0, 0x00, 0x24, 0x20, 0x46, 0x0d, 0xf5, 0x03, 0x7d, 0xbd, 0xe8, + 0x30, 0x40, 0x04, 0xb0, 0x70, 0x47, 0x00, 0xbf, 0xdb, 0x62, 0x82, 0x00, + 0xfb, 0x54, 0x82, 0x00, 0x2d, 0xe9, 0xf0, 0x47, 0x8c, 0xb0, 0x14, 0x9f, + 0x0e, 0x46, 0x98, 0x46, 0x39, 0x46, 0x00, 0x23, 0x04, 0x46, 0x15, 0x46, + 0x08, 0x93, 0x2f, 0xf0, 0xd1, 0xdd, 0x81, 0x46, 0xd0, 0xf8, 0xdc, 0xa2, + 0x65, 0xb1, 0xb8, 0xf1, 0x03, 0x0f, 0x09, 0xd9, 0x29, 0x46, 0x04, 0x22, + 0x08, 0xa8, 0xf2, 0xf3, 0x87, 0xf3, 0x08, 0xa8, 0x29, 0x46, 0x04, 0x22, + 0xf2, 0xf3, 0x82, 0xf3, 0x5f, 0x2e, 0x20, 0xdc, 0x5e, 0x2e, 0x80, 0xf2, + 0xc5, 0x81, 0x35, 0x2e, 0x79, 0xd0, 0x0e, 0xdc, 0x16, 0x2e, 0x00, 0xf0, + 0x7d, 0x81, 0x03, 0xdc, 0x15, 0x2e, 0x40, 0xf0, 0x35, 0x82, 0x6b, 0xe1, + 0x1c, 0x2e, 0x00, 0xf0, 0x8a, 0x81, 0x2f, 0x2e, 0x40, 0xf0, 0x2e, 0x82, + 0x33, 0xe1, 0x37, 0x2e, 0x00, 0xf0, 0xcd, 0x80, 0xc0, 0xf2, 0xac, 0x80, + 0x38, 0x2e, 0x00, 0xf0, 0xef, 0x80, 0x39, 0x2e, 0x40, 0xf0, 0x22, 0x82, + 0x09, 0xe1, 0xd7, 0x2e, 0x00, 0xf0, 0xbf, 0x81, 0x0d, 0xdc, 0xa5, 0x2e, + 0x00, 0xf0, 0x46, 0x81, 0x03, 0xdc, 0x9f, 0x2e, 0x40, 0xf0, 0x16, 0x82, + 0x73, 0xe1, 0xc4, 0x2e, 0x16, 0xd0, 0xc5, 0x2e, 0x40, 0xf0, 0x10, 0x82, + 0x30, 0xe0, 0xb6, 0xf5, 0x9f, 0x7f, 0x00, 0xf0, 0xc5, 0x81, 0x03, 0xdc, + 0xd8, 0x2e, 0x40, 0xf0, 0x07, 0x82, 0xae, 0xe1, 0x40, 0xf2, 0x3f, 0x13, + 0x9e, 0x42, 0x00, 0xf0, 0xca, 0x81, 0xb6, 0xf5, 0xa0, 0x7f, 0x40, 0xf0, + 0xfd, 0x81, 0xcf, 0xe1, 0xa3, 0x48, 0xff, 0xf7, 0x6d, 0xff, 0x01, 0x23, + 0xb8, 0xf1, 0x07, 0x0f, 0xc8, 0xbf, 0x69, 0x68, 0x20, 0x46, 0xd8, 0xbf, + 0x00, 0x21, 0x8d, 0xf8, 0x2f, 0x30, 0x09, 0x91, 0x13, 0xf0, 0xbe, 0xdc, + 0x07, 0x46, 0x00, 0x28, 0x40, 0xf0, 0xf0, 0x81, 0x08, 0x99, 0xca, 0x07, + 0x00, 0xf1, 0xd5, 0x81, 0x20, 0x46, 0x89, 0xb2, 0x16, 0xf0, 0x12, 0xdc, + 0x28, 0x60, 0xe5, 0xe1, 0x01, 0x23, 0xb8, 0xf1, 0x07, 0x0f, 0xc8, 0xbf, + 0x69, 0x68, 0x20, 0x46, 0xd8, 0xbf, 0x00, 0x21, 0x8d, 0xf8, 0x2f, 0x30, + 0x09, 0x91, 0x13, 0xf0, 0xa3, 0xdc, 0x07, 0x46, 0x00, 0x28, 0x40, 0xf0, + 0xd5, 0x81, 0x08, 0x9a, 0xd3, 0x07, 0x00, 0xf1, 0xba, 0x81, 0x91, 0xb2, + 0x20, 0x46, 0x12, 0x0c, 0x1c, 0xf0, 0x30, 0xdc, 0xca, 0xe1, 0x23, 0x68, + 0x1b, 0x7e, 0x00, 0x2b, 0x00, 0xf0, 0xc1, 0x81, 0xb8, 0xf1, 0x05, 0x0f, + 0x40, 0xf2, 0xc0, 0x81, 0xb8, 0xf1, 0x0d, 0x0f, 0x0b, 0xd9, 0x20, 0x46, + 0x05, 0xf1, 0x08, 0x01, 0xa8, 0xf1, 0x08, 0x02, 0x03, 0xf0, 0x3c, 0xdb, + 0x07, 0x46, 0x00, 0x28, 0x40, 0xf0, 0xb4, 0x81, 0x09, 0xe0, 0x29, 0x46, + 0x04, 0xa8, 0x06, 0x22, 0xf2, 0xf3, 0xe4, 0xf2, 0x00, 0x23, 0x06, 0x93, + 0x04, 0xad, 0x4f, 0xf0, 0x0e, 0x08, 0x99, 0xf8, 0x06, 0x60, 0xb6, 0xb9, + 0xda, 0xf8, 0x90, 0x10, 0x31, 0xb1, 0x60, 0x68, 0x9a, 0xf8, 0x94, 0x20, + 0xf7, 0xf3, 0x90, 0xf1, 0xca, 0xf8, 0x90, 0x60, 0x8a, 0xf8, 0x94, 0x80, + 0x60, 0x68, 0x41, 0x46, 0xf7, 0xf3, 0x78, 0xf1, 0xca, 0xf8, 0x90, 0x00, + 0x18, 0xb1, 0x29, 0x46, 0x42, 0x46, 0xf2, 0xf3, 0xc5, 0xf2, 0x48, 0x46, + 0x29, 0x46, 0x2b, 0xf0, 0x6b, 0xdb, 0xda, 0xf8, 0x90, 0x70, 0x00, 0x2f, + 0x0c, 0xbf, 0x07, 0x46, 0x00, 0x27, 0x83, 0xe1, 0x00, 0x23, 0x00, 0x93, + 0x20, 0x46, 0x29, 0x46, 0x42, 0x46, 0x09, 0xab, 0xf3, 0xf7, 0x29, 0xfe, + 0x07, 0x46, 0x00, 0x28, 0x40, 0xf0, 0x78, 0x81, 0x09, 0x9a, 0x03, 0x2a, + 0x00, 0xf0, 0x63, 0x81, 0x23, 0x6b, 0x19, 0x68, 0x8a, 0x42, 0x07, 0xd0, + 0x5b, 0x68, 0xd3, 0xf1, 0x01, 0x03, 0x38, 0xbf, 0x00, 0x23, 0x0e, 0x33, + 0x54, 0xf8, 0x23, 0x30, 0xd3, 0xf8, 0xf0, 0x30, 0x69, 0xe1, 0x00, 0x23, + 0x00, 0x93, 0x20, 0x46, 0x29, 0x46, 0x42, 0x46, 0x09, 0xab, 0xf3, 0xf7, + 0x0a, 0xfe, 0x07, 0x46, 0x00, 0x28, 0x40, 0xf0, 0x59, 0x81, 0x08, 0x9a, + 0x02, 0xf1, 0x64, 0x03, 0x67, 0x2b, 0x00, 0xf2, 0x3f, 0x81, 0x09, 0x9b, + 0x03, 0x2b, 0x04, 0xd0, 0x21, 0x6b, 0x09, 0x68, 0x8b, 0x42, 0x40, 0xf0, + 0x4b, 0x81, 0x00, 0x2a, 0x04, 0xdb, 0x20, 0x46, 0x21, 0x6b, 0x2b, 0xf0, + 0x69, 0xdc, 0x02, 0x46, 0x23, 0x6b, 0xc3, 0xf8, 0xfc, 0x20, 0xc3, 0xf8, + 0xf0, 0x20, 0x3d, 0xe1, 0x00, 0x23, 0x00, 0x93, 0x20, 0x46, 0x29, 0x46, + 0x42, 0x46, 0x09, 0xab, 0xf3, 0xf7, 0xe3, 0xfd, 0x07, 0x46, 0x00, 0x28, + 0x40, 0xf0, 0x32, 0x81, 0x09, 0x9a, 0x03, 0x2a, 0x00, 0xf0, 0x1d, 0x81, + 0x23, 0x6b, 0x19, 0x68, 0x8a, 0x42, 0x07, 0xd0, 0x5b, 0x68, 0xd3, 0xf1, + 0x01, 0x03, 0x38, 0xbf, 0x00, 0x23, 0x0e, 0x33, 0x54, 0xf8, 0x23, 0x30, + 0xd3, 0xf8, 0xf4, 0x30, 0x23, 0xe1, 0x00, 0x23, 0x00, 0x93, 0x20, 0x46, + 0x29, 0x46, 0x42, 0x46, 0x09, 0xab, 0xf3, 0xf7, 0xc4, 0xfd, 0x07, 0x46, + 0x00, 0x28, 0x40, 0xf0, 0x13, 0x81, 0x08, 0x9b, 0x64, 0x2b, 0x00, 0xf2, + 0xfe, 0x80, 0x09, 0x9a, 0x03, 0x2a, 0x04, 0xd0, 0x21, 0x6b, 0x09, 0x68, + 0x8a, 0x42, 0x40, 0xf0, 0x07, 0x81, 0x22, 0x6b, 0xc2, 0xf8, 0x00, 0x31, + 0xc2, 0xf8, 0xf4, 0x30, 0x00, 0xe1, 0x23, 0x68, 0x08, 0x9d, 0x93, 0xf8, + 0x3f, 0x30, 0x00, 0x2b, 0x40, 0xf0, 0xec, 0x80, 0xd4, 0xf8, 0x68, 0x01, + 0x83, 0x79, 0x13, 0xb1, 0x04, 0x21, 0x44, 0xf0, 0x45, 0xdd, 0x00, 0x35, + 0x94, 0xf8, 0x72, 0x32, 0x18, 0xbf, 0x01, 0x25, 0x84, 0xf8, 0x50, 0x57, + 0x84, 0xf8, 0x59, 0x55, 0x00, 0x2b, 0x40, 0xf0, 0xb1, 0x80, 0x04, 0xf5, + 0xaa, 0x61, 0xd4, 0xf8, 0x5c, 0x01, 0x0d, 0xb1, 0x0e, 0x31, 0x00, 0xe0, + 0x0a, 0x31, 0x36, 0xf0, 0x09, 0xdb, 0x9a, 0xe0, 0x01, 0x23, 0x00, 0x22, + 0x02, 0x93, 0x20, 0x46, 0x0e, 0x49, 0x13, 0x46, 0x8d, 0xe8, 0x20, 0x01, + 0x03, 0x97, 0x13, 0xf0, 0x1b, 0xdc, 0x8e, 0xe0, 0xb9, 0xf9, 0x5e, 0x30, + 0x2b, 0xb9, 0xb9, 0xf9, 0x5c, 0x30, 0x00, 0x33, 0x18, 0xbf, 0x01, 0x23, + 0x00, 0xe0, 0x02, 0x23, 0x2b, 0x60, 0x8d, 0xe0, 0x08, 0x9b, 0x02, 0x2b, + 0x08, 0xd1, 0x00, 0x23, 0xa9, 0xf8, 0x5c, 0x30, 0x01, 0x23, 0x09, 0xe0, + 0x25, 0xdd, 0x01, 0x00, 0x1c, 0x73, 0x86, 0x00, 0x00, 0x33, 0x18, 0xbf, + 0x01, 0x23, 0xa9, 0xf8, 0x5c, 0x30, 0x00, 0x23, 0xa9, 0xf8, 0x5e, 0x30, + 0x78, 0xe0, 0x23, 0x68, 0x01, 0x21, 0x18, 0x69, 0xfb, 0xf3, 0x7a, 0xf3, + 0x72, 0xe0, 0xa8, 0xf1, 0x04, 0x08, 0x06, 0x23, 0xb8, 0xfb, 0xf3, 0xf3, + 0x2b, 0x60, 0xd4, 0xf8, 0x00, 0x05, 0x00, 0x23, 0x0a, 0xa9, 0x08, 0x93, + 0x45, 0xf0, 0x80, 0xda, 0x11, 0xe0, 0x3b, 0x7e, 0x98, 0x07, 0x0e, 0xd5, + 0x08, 0x98, 0x2a, 0x68, 0x43, 0x1c, 0x9a, 0x42, 0x08, 0x93, 0xc0, 0xf0, + 0x8f, 0x80, 0x06, 0x22, 0x02, 0xfb, 0x00, 0x50, 0x07, 0xf1, 0x1a, 0x01, + 0x04, 0x30, 0xf2, 0xf3, 0xbf, 0xf1, 0x0a, 0xa8, 0x45, 0xf0, 0x72, 0xda, + 0x07, 0x46, 0x00, 0x28, 0xe7, 0xd1, 0x85, 0xe0, 0xb8, 0xf1, 0x07, 0x0f, + 0xc8, 0xbf, 0x69, 0x68, 0x20, 0x46, 0xd8, 0xbf, 0x00, 0x21, 0x13, 0xf0, + 0x43, 0xdb, 0x07, 0x46, 0x00, 0x28, 0x75, 0xd1, 0x3e, 0x49, 0x3f, 0x48, + 0xff, 0xf7, 0xde, 0xfd, 0x23, 0x6b, 0x0d, 0xf1, 0x2f, 0x02, 0x00, 0x92, + 0x18, 0x69, 0x31, 0x46, 0x42, 0x46, 0x2b, 0x46, 0x02, 0xf0, 0x37, 0xfc, + 0x25, 0xe0, 0xd4, 0xf8, 0x68, 0x31, 0x9f, 0x79, 0x00, 0x2f, 0x56, 0xd1, + 0x94, 0xf8, 0x16, 0x37, 0x63, 0xe0, 0xd4, 0xf8, 0x68, 0x31, 0x9b, 0x79, + 0x00, 0x2b, 0x4e, 0xd1, 0x22, 0x6b, 0x20, 0x46, 0x12, 0x68, 0x29, 0x46, + 0x00, 0x92, 0x01, 0x22, 0x01, 0x92, 0x02, 0x93, 0x03, 0x93, 0xfd, 0xf7, + 0x23, 0xff, 0x0c, 0xe0, 0x99, 0xf8, 0x06, 0x30, 0x00, 0x2b, 0x41, 0xd1, + 0x99, 0xf8, 0x11, 0x30, 0x00, 0x2b, 0x3d, 0xd0, 0xd9, 0xf8, 0x0c, 0x00, + 0x29, 0x46, 0x0b, 0xf0, 0x7b, 0xfc, 0x07, 0x46, 0x3e, 0xe0, 0x23, 0x68, + 0x1b, 0x7e, 0x00, 0x2b, 0x35, 0xd0, 0x20, 0x46, 0x29, 0x46, 0x42, 0x46, + 0x12, 0xf0, 0x3a, 0xdd, 0x00, 0x27, 0x33, 0xe0, 0xb8, 0xf1, 0x43, 0x0f, + 0x2e, 0xd9, 0x1e, 0x4c, 0x29, 0x46, 0x03, 0x22, 0x20, 0x46, 0xf2, 0xf3, + 0x61, 0xf1, 0xeb, 0x78, 0x29, 0x1d, 0xe3, 0x70, 0x14, 0x22, 0x1a, 0x48, + 0xf2, 0xf3, 0x5a, 0xf1, 0x05, 0xf1, 0x18, 0x01, 0x1d, 0x22, 0x18, 0x48, + 0xf2, 0xf3, 0x54, 0xf1, 0x05, 0xf1, 0x35, 0x01, 0x0e, 0x22, 0x16, 0x48, + 0xf2, 0xf3, 0x4e, 0xf1, 0xe0, 0xe7, 0x6f, 0xf0, 0x14, 0x07, 0x13, 0xe0, + 0x6f, 0xf0, 0x1c, 0x07, 0x10, 0xe0, 0x6f, 0xf0, 0x02, 0x07, 0x0d, 0xe0, + 0x6f, 0xf0, 0x1b, 0x07, 0x0a, 0xe0, 0x6f, 0xf0, 0x0f, 0x07, 0x07, 0xe0, + 0x6f, 0xf0, 0x16, 0x07, 0x04, 0xe0, 0x6f, 0xf0, 0x03, 0x07, 0x01, 0xe0, + 0x6f, 0xf0, 0x0d, 0x07, 0x38, 0x46, 0x0c, 0xb0, 0xbd, 0xe8, 0xf0, 0x87, + 0x08, 0x9b, 0x2b, 0x60, 0xf8, 0xe7, 0x00, 0xbf, 0xb1, 0xdd, 0x01, 0x00, + 0x31, 0xdd, 0x01, 0x00, 0x68, 0x00, 0x02, 0x00, 0x34, 0xc7, 0x01, 0x00, + 0x98, 0xc2, 0x01, 0x00, 0x08, 0x0c, 0x02, 0x00, 0x2d, 0xe9, 0xff, 0x47, + 0x0c, 0x9c, 0x05, 0x46, 0xd2, 0xf8, 0xd4, 0x62, 0x17, 0x46, 0x98, 0x46, + 0xd4, 0xf8, 0x00, 0xa0, 0x00, 0x94, 0x0c, 0xf0, 0x51, 0xd9, 0x2a, 0x68, + 0x92, 0xf8, 0x46, 0x30, 0x98, 0x07, 0x39, 0xd0, 0xd7, 0xf8, 0xcc, 0x30, + 0xd9, 0x04, 0x35, 0xd4, 0x96, 0xf9, 0x34, 0x10, 0x00, 0x29, 0x31, 0xd1, + 0x52, 0x6b, 0x7a, 0xb3, 0x13, 0xf0, 0x02, 0x09, 0x2c, 0xd1, 0x02, 0xa8, + 0x16, 0x49, 0x03, 0x22, 0x27, 0x68, 0xf2, 0xf3, 0xfd, 0xf0, 0x02, 0x23, + 0x8d, 0xf8, 0x0b, 0x30, 0x01, 0x23, 0x8d, 0xf8, 0x0d, 0x30, 0x95, 0xf8, + 0xfa, 0x31, 0x47, 0x44, 0x8d, 0xf8, 0x0c, 0x90, 0x33, 0xb1, 0x96, 0xf9, + 0x6a, 0x30, 0x00, 0x2b, 0x03, 0xda, 0x95, 0xf8, 0x0a, 0x97, 0x00, 0xe0, + 0x99, 0x46, 0xd0, 0x44, 0xb8, 0x45, 0x02, 0xab, 0x28, 0xbf, 0xc7, 0xeb, + 0x08, 0x01, 0x00, 0x93, 0x38, 0xbf, 0x00, 0x21, 0x38, 0x46, 0x07, 0x23, + 0xdd, 0x22, 0x8d, 0xf8, 0x0e, 0x90, 0x1c, 0xf0, 0xe3, 0xd9, 0x23, 0x68, + 0x09, 0x33, 0x23, 0x60, 0xbd, 0xe8, 0xff, 0x87, 0xc3, 0xb7, 0x01, 0x00, + 0x2d, 0xe9, 0xf0, 0x41, 0x90, 0x46, 0xd0, 0xf8, 0xd8, 0x22, 0x06, 0x46, + 0x52, 0x68, 0x0d, 0x46, 0x01, 0x2a, 0x03, 0x68, 0xd0, 0xf8, 0xdc, 0x42, + 0x06, 0xd0, 0xa1, 0xf1, 0x04, 0x0e, 0xde, 0xf1, 0x00, 0x07, 0x47, 0xeb, + 0x0e, 0x07, 0x00, 0xe0, 0x00, 0x27, 0x1a, 0x68, 0x61, 0x6a, 0xd2, 0x69, + 0x12, 0x6d, 0x91, 0x42, 0x38, 0xbf, 0x62, 0x62, 0x4d, 0xb9, 0xd4, 0xf8, + 0x90, 0x10, 0x31, 0xb1, 0x58, 0x68, 0x94, 0xf8, 0x94, 0x20, 0xf6, 0xf3, + 0x69, 0xf7, 0xc4, 0xf8, 0x90, 0x50, 0x30, 0x46, 0x29, 0x46, 0x42, 0x46, + 0x26, 0xf0, 0xd2, 0xdc, 0x0f, 0xb1, 0x00, 0x23, 0x63, 0x62, 0xbd, 0xe8, + 0xf0, 0x81, 0x70, 0xb5, 0x06, 0x46, 0x0d, 0x46, 0x1f, 0xf0, 0xea, 0xdc, + 0x29, 0x46, 0x04, 0x46, 0x30, 0x46, 0xf9, 0xf7, 0xcb, 0xf9, 0x20, 0x46, + 0x70, 0xbd, 0x00, 0x00, 0x10, 0xb5, 0x88, 0xb0, 0x0a, 0x9c, 0x00, 0x94, + 0x0b, 0x9c, 0x01, 0x94, 0x0c, 0x9c, 0x02, 0x94, 0x0d, 0x9c, 0x03, 0x94, + 0x0e, 0x9c, 0x04, 0x94, 0x0f, 0x9c, 0x05, 0x94, 0x10, 0x9c, 0x06, 0x94, + 0x11, 0x9c, 0x07, 0x94, 0xf4, 0xf3, 0x34, 0xf5, 0x04, 0x4b, 0x04, 0x21, + 0x04, 0x46, 0xd3, 0xf8, 0x8c, 0x30, 0x0a, 0x46, 0x98, 0x47, 0x20, 0x46, + 0x08, 0xb0, 0x10, 0xbd, 0xe0, 0xa6, 0x85, 0x00, 0x38, 0xb5, 0x90, 0xf8, + 0xa1, 0x31, 0x04, 0x46, 0x63, 0xb9, 0x03, 0x68, 0x1b, 0x6f, 0x4b, 0xb1, + 0xd0, 0xf8, 0x1c, 0x58, 0xf6, 0xf3, 0xae, 0xf3, 0xd4, 0xf8, 0x20, 0x38, + 0xeb, 0x1a, 0x1b, 0x18, 0xc4, 0xf8, 0x1c, 0x38, 0x20, 0x46, 0xbd, 0xe8, + 0x38, 0x40, 0x15, 0xf0, 0xf5, 0x9e, 0x2d, 0xe9, 0xf0, 0x41, 0x04, 0x46, + 0x1b, 0xf0, 0xde, 0xda, 0x23, 0x6b, 0x1b, 0x68, 0x02, 0x2b, 0x47, 0xd1, + 0x20, 0x69, 0x2c, 0xf0, 0x67, 0xda, 0x00, 0x28, 0x3a, 0xd0, 0x23, 0x68, + 0x93, 0xf8, 0x42, 0x20, 0x00, 0x2a, 0x3d, 0xd0, 0xd4, 0xf8, 0x68, 0x21, + 0x91, 0x79, 0x00, 0x29, 0x38, 0xd1, 0x93, 0xf8, 0x3f, 0x30, 0x00, 0x2b, + 0x34, 0xd0, 0xd4, 0xf8, 0x6c, 0x32, 0xb4, 0xf8, 0x28, 0x06, 0xd3, 0xf8, + 0xd4, 0x22, 0x52, 0x8e, 0x90, 0x42, 0x2b, 0xd1, 0xd4, 0xf8, 0xf8, 0x27, + 0x42, 0xf2, 0x0e, 0x70, 0x15, 0x88, 0x01, 0x3d, 0xad, 0xb2, 0x85, 0x42, + 0x1a, 0xd8, 0xd2, 0x78, 0x20, 0x46, 0x2a, 0xb1, 0xd3, 0xf8, 0xe0, 0x32, + 0x1b, 0x69, 0x5b, 0x42, 0x93, 0x42, 0x00, 0xdc, 0x01, 0x21, 0x1f, 0xf0, + 0xcd, 0xd8, 0xd4, 0xf8, 0xf8, 0x37, 0x1b, 0x79, 0x93, 0xb1, 0xd4, 0xf8, + 0x6c, 0x22, 0xd2, 0xf8, 0xe0, 0x22, 0x12, 0x69, 0x52, 0x42, 0x9a, 0x42, + 0x0a, 0xdd, 0x20, 0x46, 0x00, 0x21, 0x05, 0xe0, 0x20, 0x46, 0x01, 0x21, + 0x1f, 0xf0, 0xba, 0xd8, 0x20, 0x46, 0x01, 0x21, 0x1f, 0xf0, 0x9c, 0xd8, + 0x00, 0x26, 0xa3, 0x19, 0xd3, 0xf8, 0x4c, 0x52, 0xad, 0xb1, 0xd5, 0xf8, + 0x8c, 0x70, 0x97, 0xb9, 0xab, 0x79, 0x83, 0xb1, 0xab, 0x6d, 0x9b, 0x07, + 0x0d, 0xd5, 0x95, 0xf8, 0x84, 0x30, 0x53, 0xb1, 0xf6, 0xf3, 0x40, 0xf3, + 0xd5, 0xf8, 0x90, 0x10, 0x29, 0xf0, 0xf6, 0xd9, 0x18, 0xb1, 0xc5, 0xf8, + 0x88, 0x70, 0x85, 0xf8, 0x84, 0x70, 0x04, 0x36, 0x20, 0x2e, 0xe2, 0xd1, + 0x23, 0x6b, 0x1b, 0x68, 0x02, 0x2b, 0x6d, 0xd1, 0x20, 0x69, 0x2c, 0xf0, + 0xfd, 0xd9, 0x00, 0x28, 0x68, 0xd0, 0xd4, 0xf8, 0x68, 0x31, 0x9b, 0x79, + 0x00, 0x2b, 0x63, 0xd1, 0x23, 0x68, 0x93, 0xf8, 0x3f, 0x30, 0x00, 0x2b, + 0x5e, 0xd0, 0xd4, 0xf8, 0x6c, 0x32, 0xb4, 0xf8, 0x28, 0x26, 0xd3, 0xf8, + 0xd4, 0x32, 0x5b, 0x8e, 0x9a, 0x42, 0x55, 0xd1, 0x20, 0x46, 0x92, 0x21, + 0x16, 0xf0, 0xc2, 0xd8, 0x40, 0x00, 0x85, 0xb2, 0x00, 0x2d, 0x4d, 0xd0, + 0x05, 0xf1, 0x18, 0x07, 0x39, 0x46, 0x20, 0x46, 0x16, 0xf0, 0xb8, 0xd8, + 0x05, 0xf1, 0x1a, 0x01, 0x06, 0x46, 0x20, 0x46, 0x16, 0xf0, 0xb2, 0xd8, + 0x39, 0x46, 0x80, 0x46, 0x20, 0x46, 0x16, 0xf0, 0xad, 0xd8, 0x86, 0x42, + 0xec, 0xd1, 0xd4, 0xf8, 0xf8, 0x37, 0x46, 0xea, 0x08, 0x46, 0x9a, 0x68, + 0x9e, 0x60, 0x96, 0x42, 0x8c, 0xbf, 0xc2, 0xeb, 0x06, 0x02, 0x00, 0x22, + 0x3a, 0xb1, 0x5a, 0x79, 0x01, 0x32, 0x5a, 0x71, 0xd4, 0xf8, 0xf8, 0x37, + 0x00, 0x22, 0x9a, 0x71, 0x05, 0xe0, 0x99, 0x79, 0x01, 0x31, 0x99, 0x71, + 0xd4, 0xf8, 0xf8, 0x37, 0x5a, 0x71, 0xd4, 0xf8, 0xf8, 0x57, 0x6b, 0x79, + 0x05, 0x2b, 0x0e, 0xd9, 0xeb, 0x68, 0xcb, 0xb9, 0x23, 0x6b, 0x18, 0x69, + 0x02, 0xf0, 0x5c, 0xfd, 0x23, 0x6b, 0xe8, 0x60, 0x18, 0x69, 0x4f, 0xf4, + 0xe1, 0x51, 0xbd, 0xe8, 0xf0, 0x41, 0x02, 0xf0, 0x56, 0xbd, 0xab, 0x79, + 0x01, 0x2b, 0x09, 0xd9, 0xe9, 0x68, 0x39, 0xb1, 0x23, 0x6b, 0x18, 0x69, + 0x02, 0xf0, 0x4d, 0xfd, 0xd4, 0xf8, 0xf8, 0x37, 0x00, 0x22, 0xda, 0x60, + 0xbd, 0xe8, 0xf0, 0x81, 0x2d, 0xe9, 0xf0, 0x4f, 0x87, 0xb0, 0x9a, 0x46, + 0x04, 0x46, 0x0f, 0x46, 0x16, 0x46, 0xdd, 0xf8, 0x40, 0x80, 0x11, 0x9d, + 0x9d, 0xf8, 0x48, 0x90, 0xf9, 0xf7, 0xf7, 0xf8, 0xd4, 0xf8, 0xb0, 0x23, + 0x83, 0x46, 0x05, 0x92, 0xf6, 0xf3, 0x44, 0xf2, 0x00, 0xf5, 0x7e, 0x73, + 0x07, 0x33, 0xb3, 0xf5, 0xa0, 0x5f, 0x02, 0x46, 0x02, 0xd2, 0x24, 0x48, + 0x24, 0x49, 0x17, 0xe0, 0x58, 0x46, 0x0b, 0xf0, 0x2f, 0xdf, 0xd4, 0xf8, + 0xc0, 0x33, 0x98, 0x42, 0x15, 0xd3, 0x03, 0x23, 0x00, 0x93, 0x00, 0x23, + 0x01, 0x93, 0x02, 0x93, 0x03, 0x93, 0x58, 0x46, 0x17, 0x21, 0x06, 0xf1, + 0x0a, 0x02, 0x01, 0x23, 0x13, 0xf0, 0xe4, 0xdc, 0x1a, 0x48, 0x19, 0x49, + 0xd4, 0xf8, 0xc0, 0x23, 0x07, 0xb0, 0xbd, 0xe8, 0xf0, 0x4f, 0xff, 0xf7, + 0x75, 0xbb, 0x05, 0x9a, 0x92, 0xf8, 0x46, 0x30, 0x98, 0x07, 0x15, 0xd0, + 0xba, 0x6d, 0x40, 0xf2, 0x37, 0x13, 0x13, 0x40, 0x83, 0xb1, 0x9b, 0xf8, + 0x69, 0x37, 0xd9, 0x07, 0x0c, 0xd5, 0x6b, 0x68, 0xda, 0x03, 0x09, 0xd5, + 0x2b, 0x6c, 0x01, 0x2b, 0x06, 0xd1, 0x00, 0x22, 0x58, 0x46, 0x29, 0x46, + 0x13, 0x46, 0x00, 0x92, 0x12, 0xf0, 0x5e, 0xdd, 0x20, 0x46, 0x39, 0x46, + 0x32, 0x46, 0x53, 0x46, 0xcd, 0xf8, 0x40, 0x80, 0x11, 0x95, 0xcd, 0xf8, + 0x48, 0x90, 0x07, 0xb0, 0xbd, 0xe8, 0xf0, 0x4f, 0x23, 0xf0, 0x9a, 0x9a, + 0x57, 0xdd, 0x01, 0x00, 0x00, 0xdd, 0x01, 0x00, 0x75, 0xdd, 0x01, 0x00, + 0x0c, 0x2a, 0x70, 0xb5, 0x04, 0x46, 0x0d, 0x46, 0x16, 0x46, 0x54, 0xd8, + 0x32, 0x4b, 0x93, 0x40, 0x51, 0xd5, 0xd0, 0xf8, 0xb4, 0x36, 0x4b, 0xb1, + 0xd3, 0xf8, 0xd8, 0x32, 0x33, 0xb1, 0x5b, 0x68, 0x01, 0x2b, 0x48, 0xd0, + 0x03, 0x2b, 0x46, 0xd0, 0x02, 0x2b, 0x44, 0xd0, 0x20, 0x46, 0x16, 0xf0, + 0x31, 0xde, 0x00, 0x28, 0x3f, 0xd1, 0xd4, 0xf8, 0x68, 0x31, 0x5b, 0x69, + 0x01, 0x2b, 0x3a, 0xd0, 0x45, 0xb1, 0xab, 0x79, 0x33, 0xb1, 0xab, 0x6d, + 0x9a, 0x07, 0x03, 0xd5, 0xd5, 0xf8, 0x88, 0x30, 0x00, 0x2b, 0x37, 0xd1, + 0xd4, 0xf8, 0x18, 0x08, 0xff, 0xf3, 0xda, 0xf1, 0x28, 0xb1, 0xd4, 0xf8, + 0x68, 0x01, 0x09, 0x21, 0x44, 0xf0, 0xf8, 0xd9, 0x17, 0xe0, 0xd4, 0xf8, + 0x68, 0x01, 0x08, 0x2e, 0x83, 0x79, 0x01, 0xd0, 0x0c, 0x2e, 0x01, 0xd1, + 0x7b, 0xb1, 0x28, 0xe0, 0x00, 0x2b, 0x24, 0xd0, 0xd4, 0xf8, 0x28, 0x35, + 0x02, 0x2b, 0x03, 0xd0, 0x94, 0xf8, 0xf4, 0x37, 0xdb, 0x07, 0x1e, 0xd5, + 0x09, 0x21, 0x44, 0xf0, 0xe1, 0xd9, 0x00, 0x20, 0x70, 0xbd, 0x08, 0x2e, + 0x1a, 0xd1, 0x20, 0x46, 0x29, 0x46, 0x02, 0x22, 0x00, 0x23, 0x26, 0xf0, + 0x23, 0xda, 0x00, 0x28, 0x14, 0xbf, 0x4f, 0xf0, 0xff, 0x30, 0x00, 0x20, + 0x70, 0xbd, 0x20, 0x46, 0x29, 0x46, 0x32, 0x46, 0xbd, 0xe8, 0x70, 0x40, + 0x2a, 0xf0, 0xca, 0x9d, 0x6f, 0xf0, 0x19, 0x00, 0x70, 0xbd, 0x18, 0x46, + 0x70, 0xbd, 0x6f, 0xf0, 0x18, 0x00, 0x70, 0xbd, 0x00, 0x20, 0x70, 0xbd, + 0x00, 0x00, 0xa8, 0x12, 0x38, 0xb5, 0x01, 0x22, 0x0c, 0x46, 0xd1, 0xf8, + 0x4c, 0x15, 0x05, 0x46, 0x2f, 0xf0, 0x86, 0xdd, 0x28, 0x46, 0x21, 0x46, + 0xbd, 0xe8, 0x38, 0x40, 0x2e, 0xf0, 0x54, 0x99, 0x10, 0xb5, 0x0c, 0x46, + 0x2e, 0xf0, 0x14, 0xda, 0x18, 0xb9, 0x94, 0xf8, 0xf5, 0x32, 0x84, 0xf8, + 0xf4, 0x32, 0x10, 0xbd, 0x03, 0x68, 0x1a, 0x68, 0x53, 0x6b, 0x23, 0xb1, + 0x92, 0xf8, 0x44, 0x30, 0x0b, 0xb1, 0x31, 0xf0, 0xeb, 0x9f, 0x18, 0x46, + 0x70, 0x47, 0x03, 0x6a, 0x30, 0xb5, 0x00, 0x2b, 0x2b, 0xd0, 0x03, 0x68, + 0x0c, 0x69, 0x1b, 0x68, 0x8d, 0x8a, 0x93, 0xf8, 0x95, 0x30, 0x3b, 0xb1, + 0xcb, 0x8a, 0x03, 0xf0, 0x80, 0x03, 0x00, 0x2b, 0x0c, 0xbf, 0x1e, 0x23, + 0x0c, 0x23, 0x00, 0xe0, 0x0c, 0x23, 0x03, 0xf1, 0x0b, 0x02, 0x95, 0x42, + 0x17, 0xd3, 0xe2, 0x18, 0xe3, 0x5c, 0x54, 0x78, 0x1b, 0x02, 0x1b, 0x19, + 0x9b, 0xb2, 0xb3, 0xf5, 0x00, 0x6f, 0x0e, 0xd1, 0x93, 0x78, 0x1b, 0x09, + 0x04, 0x2b, 0x0a, 0xd1, 0xd3, 0x7a, 0x01, 0x2b, 0x07, 0xd1, 0x43, 0x6a, + 0x01, 0x33, 0x43, 0x62, 0xc3, 0x68, 0x01, 0x33, 0xc3, 0x60, 0x00, 0x20, + 0x30, 0xbd, 0xbd, 0xe8, 0x30, 0x40, 0x40, 0xf0, 0x37, 0x9d, 0x38, 0xb1, + 0x03, 0x68, 0x2b, 0xb1, 0x21, 0xb9, 0x93, 0xf8, 0x0b, 0x27, 0x0a, 0xb1, + 0x83, 0xf8, 0x0b, 0x17, 0x18, 0xf0, 0x32, 0x9f, 0xb0, 0xf8, 0x54, 0x38, + 0x0b, 0xb1, 0x1a, 0xf0, 0xcb, 0x98, 0x70, 0x47, 0xf8, 0xf7, 0x76, 0xbf, + 0xfe, 0xf7, 0x5e, 0xbd, 0x38, 0xb5, 0x05, 0x46, 0xd0, 0xf8, 0xb4, 0x00, + 0x58, 0xb1, 0x03, 0x78, 0x4b, 0xb1, 0xf2, 0xf7, 0xbb, 0xfa, 0x04, 0x46, + 0x30, 0xb9, 0xd5, 0xf8, 0xb4, 0x00, 0x01, 0x21, 0xf2, 0xf3, 0x78, 0xf4, + 0x00, 0xe0, 0x01, 0x24, 0x28, 0x46, 0xf4, 0xf3, 0x39, 0xf7, 0x34, 0xb9, + 0xd5, 0xf8, 0xb4, 0x00, 0x21, 0x46, 0xbd, 0xe8, 0x38, 0x40, 0xf2, 0xf3, + 0x6b, 0xb4, 0x38, 0xbd, 0x2d, 0xe9, 0xf0, 0x4f, 0x87, 0xb0, 0x03, 0x93, + 0x11, 0x9b, 0x15, 0x9f, 0x04, 0x93, 0x14, 0x9b, 0x8a, 0x46, 0x16, 0x46, + 0xdd, 0xf8, 0x40, 0xb0, 0x12, 0x9d, 0xdd, 0xf8, 0x4c, 0x80, 0x05, 0x93, + 0x27, 0xb1, 0xb9, 0x68, 0x11, 0xb1, 0x01, 0x20, 0xf2, 0xf7, 0xb6, 0xff, + 0x04, 0x46, 0x00, 0x28, 0x35, 0xd0, 0x03, 0x68, 0x06, 0xf0, 0x01, 0x02, + 0x00, 0x92, 0x18, 0x68, 0x51, 0x46, 0x2a, 0x46, 0x43, 0x46, 0x12, 0xf0, + 0x9d, 0xdf, 0x81, 0x46, 0x00, 0x28, 0x2a, 0xd1, 0x11, 0x2e, 0x02, 0xd0, + 0x13, 0x2e, 0x11, 0xd1, 0x09, 0xe0, 0x28, 0x46, 0xf2, 0xf3, 0xda, 0xf2, + 0x00, 0x28, 0x20, 0xd1, 0x04, 0xf5, 0xb8, 0x70, 0x29, 0x46, 0x06, 0x22, + 0x03, 0xe0, 0x04, 0xf5, 0xb6, 0x70, 0x29, 0x46, 0x04, 0x22, 0xf1, 0xf3, + 0xdd, 0xf5, 0x14, 0xe0, 0x04, 0x9b, 0x20, 0x46, 0x11, 0x93, 0x05, 0x9b, + 0x51, 0x46, 0x14, 0x93, 0x03, 0x9b, 0x32, 0x46, 0xcd, 0xf8, 0x40, 0xb0, + 0x12, 0x95, 0xcd, 0xf8, 0x4c, 0x80, 0x15, 0x97, 0x07, 0xb0, 0xbd, 0xe8, + 0xf0, 0x4f, 0xfc, 0xf3, 0xad, 0xb7, 0x6f, 0xf0, 0x16, 0x09, 0x48, 0x46, + 0x07, 0xb0, 0xbd, 0xe8, 0xf0, 0x8f, 0x00, 0x00, 0x38, 0xb5, 0xd0, 0xf8, + 0x68, 0x41, 0x0c, 0xb1, 0xa5, 0x68, 0x00, 0xe0, 0x25, 0x46, 0x04, 0x4c, + 0x25, 0x60, 0xfd, 0xf3, 0x77, 0xf0, 0x41, 0x1c, 0x01, 0xd1, 0x00, 0x23, + 0x23, 0x60, 0x38, 0xbd, 0xe4, 0x0b, 0x02, 0x00, 0x03, 0x4a, 0x13, 0x68, + 0x13, 0xb1, 0x00, 0x21, 0x11, 0x60, 0x18, 0x46, 0x70, 0x47, 0x00, 0xbf, + 0xe4, 0x0b, 0x02, 0x00, 0x2d, 0xe9, 0xf0, 0x41, 0x16, 0x46, 0x02, 0x68, + 0x0c, 0x46, 0x12, 0x68, 0x1f, 0x46, 0x92, 0xf8, 0x95, 0x20, 0x05, 0x46, + 0x09, 0x69, 0xa3, 0x8a, 0x12, 0xb1, 0xe2, 0x8a, 0x10, 0x06, 0x07, 0xd5, + 0x15, 0x2b, 0x05, 0xdd, 0x08, 0x48, 0x0e, 0x31, 0x06, 0x22, 0xf1, 0xf3, + 0x73, 0xf5, 0x38, 0xb1, 0x28, 0x46, 0x21, 0x46, 0x32, 0x46, 0x3b, 0x46, + 0xbd, 0xe8, 0xf0, 0x41, 0xfd, 0xf3, 0xe8, 0xb2, 0x4f, 0xf0, 0xff, 0x30, + 0xbd, 0xe8, 0xf0, 0x81, 0xc7, 0xb7, 0x01, 0x00, 0x70, 0xb5, 0x04, 0x46, + 0x1d, 0x46, 0xff, 0xf3, 0xa9, 0xf1, 0x06, 0x46, 0x40, 0xb1, 0x63, 0x68, + 0x93, 0xf8, 0xab, 0x30, 0x23, 0xb1, 0xe0, 0x6f, 0x29, 0x46, 0xf2, 0xf7, + 0xad, 0xfc, 0xb0, 0x60, 0x30, 0x46, 0x70, 0xbd, 0x38, 0xb5, 0x43, 0x68, + 0x04, 0x46, 0x93, 0xf8, 0xab, 0x30, 0x0d, 0x46, 0x13, 0xb1, 0x88, 0x68, + 0xf2, 0xf7, 0xbf, 0xfc, 0x20, 0x46, 0x29, 0x46, 0xbd, 0xe8, 0x38, 0x40, + 0xff, 0xf3, 0x68, 0xb2, 0x2d, 0xe9, 0xf3, 0x47, 0x07, 0x46, 0x0e, 0x46, + 0x92, 0x46, 0x1d, 0x46, 0x00, 0x2b, 0x59, 0xd0, 0x01, 0x29, 0x57, 0xd1, + 0x4f, 0xf4, 0xc0, 0x73, 0x01, 0x93, 0xfa, 0xf3, 0x0d, 0xf6, 0x4f, 0xf4, + 0x40, 0x71, 0x80, 0x46, 0xf6, 0xf3, 0xf6, 0xf3, 0x04, 0x46, 0x00, 0x28, + 0x52, 0xd0, 0x00, 0x21, 0x4f, 0xf4, 0x40, 0x72, 0xf1, 0xf3, 0xa6, 0xf5, + 0x38, 0x46, 0x31, 0x46, 0x22, 0x46, 0x01, 0xab, 0xf1, 0xf3, 0x36, 0xf4, + 0x1e, 0x30, 0x37, 0xd1, 0x20, 0x22, 0x22, 0x71, 0x04, 0x22, 0x01, 0x9b, + 0x62, 0x71, 0xd0, 0x22, 0xa2, 0x71, 0x02, 0x22, 0x4f, 0xea, 0x43, 0x09, + 0xe2, 0x71, 0x4a, 0x23, 0x62, 0x22, 0x23, 0x70, 0x22, 0x72, 0x0b, 0x23, + 0xa9, 0x22, 0x63, 0x70, 0x62, 0x72, 0xff, 0x23, 0x04, 0xeb, 0x09, 0x02, + 0xa3, 0x70, 0xe3, 0x70, 0x02, 0xf8, 0x02, 0x3c, 0x02, 0xf8, 0x01, 0x3c, + 0x05, 0xf1, 0x0c, 0x03, 0x99, 0x45, 0x0e, 0xdd, 0x2a, 0x46, 0x51, 0x46, + 0x04, 0xf1, 0x0a, 0x00, 0xf1, 0xf3, 0x14, 0xf5, 0x38, 0x46, 0x31, 0x46, + 0x22, 0x46, 0x4f, 0xea, 0x69, 0x03, 0x10, 0xf0, 0x8f, 0xfb, 0x05, 0x46, + 0x01, 0xe0, 0x6f, 0xf0, 0x0e, 0x05, 0x40, 0x46, 0x21, 0x46, 0x4f, 0xf4, + 0x40, 0x72, 0xf6, 0xf3, 0xbf, 0xf3, 0x0f, 0xe0, 0x40, 0x46, 0x21, 0x46, + 0x4f, 0xf4, 0x40, 0x72, 0xf6, 0xf3, 0xb8, 0xf3, 0x2b, 0x46, 0x38, 0x46, + 0x31, 0x46, 0x52, 0x46, 0xf0, 0xf3, 0x1c, 0xf5, 0x05, 0x46, 0x01, 0xe0, + 0x4f, 0xf0, 0xff, 0x35, 0x28, 0x46, 0xbd, 0xe8, 0xfc, 0x87, 0x2d, 0xe9, + 0xff, 0x41, 0x80, 0x46, 0x1e, 0x46, 0x9f, 0x6b, 0x15, 0x69, 0x46, 0xf0, + 0x8b, 0xd8, 0x04, 0x46, 0xc8, 0xb9, 0x3b, 0x7a, 0x02, 0x2b, 0x16, 0xd1, + 0xab, 0x79, 0xa3, 0xb1, 0xb6, 0xf8, 0x68, 0x30, 0x8b, 0xb1, 0xaa, 0x6d, + 0x40, 0xf2, 0x37, 0x13, 0x13, 0x40, 0x63, 0xb1, 0x95, 0xf8, 0x84, 0x30, + 0x4b, 0xb9, 0x95, 0xf9, 0x48, 0x20, 0x31, 0x6f, 0x8d, 0xe8, 0x81, 0x00, + 0x02, 0x90, 0x11, 0x23, 0x40, 0x46, 0x45, 0xf0, 0x47, 0xdc, 0x20, 0x46, + 0x04, 0xb0, 0xbd, 0xe8, 0xf0, 0x81, 0xf8, 0xb5, 0xd0, 0xf8, 0xb0, 0x43, + 0xd0, 0xf8, 0xac, 0x73, 0x21, 0xf0, 0x9e, 0xda, 0x94, 0xf8, 0x2f, 0x30, + 0x06, 0x46, 0xfb, 0xb1, 0x00, 0x25, 0x7b, 0x19, 0xd3, 0xf8, 0x4c, 0x42, + 0xbc, 0xb1, 0xa3, 0x79, 0xab, 0xb1, 0x23, 0x79, 0x9b, 0xb1, 0xa3, 0x6d, + 0x9b, 0x07, 0x10, 0xd5, 0x94, 0xf8, 0x84, 0x30, 0x6b, 0xb1, 0xf5, 0xf3, + 0xf1, 0xf7, 0xd4, 0xf8, 0x90, 0x10, 0x28, 0xf0, 0xa7, 0xde, 0x30, 0xb1, + 0x00, 0x23, 0xc4, 0xf8, 0x88, 0x30, 0xc4, 0xf8, 0x8c, 0x30, 0x84, 0xf8, + 0x84, 0x30, 0x04, 0x35, 0x20, 0x2d, 0xe0, 0xd1, 0x30, 0x46, 0xf8, 0xbd, + 0xf0, 0xb5, 0x85, 0xb0, 0x0a, 0x9f, 0x0e, 0x46, 0x00, 0x97, 0x0b, 0x9f, + 0x1d, 0x46, 0x01, 0x97, 0x0c, 0x9f, 0x04, 0x46, 0x02, 0x97, 0x0d, 0x9f, + 0x03, 0x97, 0x28, 0xf0, 0x7d, 0xdf, 0xb3, 0x79, 0x5b, 0xb1, 0x29, 0x46, + 0x20, 0x46, 0x45, 0xf0, 0xb1, 0xd9, 0x01, 0x46, 0x28, 0xb1, 0x20, 0x46, + 0x05, 0xb0, 0xbd, 0xe8, 0xf0, 0x40, 0x45, 0xf0, 0xa1, 0x98, 0x05, 0xb0, + 0xf0, 0xbd, 0x00, 0x00, 0x2d, 0xe9, 0xf3, 0x41, 0x1f, 0x46, 0x03, 0x68, + 0x04, 0x46, 0x1b, 0x7e, 0x0d, 0x46, 0x16, 0x46, 0x00, 0x2b, 0x4a, 0xd0, + 0x90, 0xf8, 0x75, 0x32, 0x00, 0x2b, 0x46, 0xd1, 0xd1, 0xf8, 0x00, 0x80, + 0x40, 0x46, 0xfe, 0xf7, 0x3c, 0xfc, 0x03, 0x69, 0x02, 0x46, 0x99, 0x79, + 0xb1, 0xb1, 0x81, 0x7e, 0xc8, 0x07, 0x13, 0xd5, 0xd3, 0xf8, 0xcc, 0x10, + 0x49, 0x05, 0x0f, 0xd4, 0xb4, 0xf8, 0x26, 0x16, 0x01, 0xf4, 0x70, 0x41, + 0xa1, 0xf5, 0x80, 0x50, 0x41, 0x42, 0x41, 0xeb, 0x00, 0x01, 0x10, 0x31, + 0x53, 0xf8, 0x21, 0x30, 0x13, 0xb1, 0x93, 0xf8, 0xdf, 0x30, 0x33, 0xbb, + 0x51, 0x68, 0x00, 0x29, 0x23, 0xdb, 0x16, 0x4b, 0x0b, 0x40, 0x1b, 0xb1, + 0xb8, 0xf8, 0x16, 0x30, 0x03, 0xf0, 0x07, 0x03, 0x49, 0x06, 0x1a, 0xd5, + 0x12, 0x49, 0x20, 0x46, 0xcb, 0x5c, 0x02, 0xa9, 0x41, 0xf8, 0x04, 0x3d, + 0x3b, 0x60, 0x0a, 0xf0, 0xbb, 0xd9, 0x01, 0x30, 0x0f, 0xd0, 0x01, 0x9b, + 0x3a, 0x68, 0x9a, 0x42, 0x0b, 0xd0, 0x0c, 0x4a, 0x3b, 0x60, 0xd2, 0x5c, + 0xb8, 0xf8, 0x16, 0x30, 0x02, 0xf0, 0x07, 0x02, 0x23, 0xf0, 0x07, 0x03, + 0x13, 0x43, 0xa8, 0xf8, 0x16, 0x30, 0x20, 0x46, 0x29, 0x46, 0x32, 0x46, + 0x3b, 0x46, 0x14, 0xf0, 0x37, 0xdc, 0xbd, 0xe8, 0xfc, 0x81, 0x00, 0xbf, + 0x40, 0x00, 0x01, 0x80, 0xc4, 0xd2, 0x85, 0x00, 0x24, 0xfe, 0x01, 0x00, + 0x00, 0x20, 0x70, 0x47, 0x70, 0x47, 0x00, 0x20, 0x70, 0x47, 0x70, 0x47, + 0x00, 0x20, 0x70, 0x47, 0x70, 0x47, 0x70, 0x47, 0x70, 0x47, 0x70, 0x47, + 0x00, 0x20, 0x70, 0x47, 0x00, 0x20, 0x70, 0x47, 0x00, 0x20, 0x70, 0x47, + 0x70, 0x47, 0x00, 0x20, 0x70, 0x47, 0x70, 0x47, 0x70, 0x47, 0x00, 0x20, + 0x70, 0x47, 0x00, 0x20, 0x70, 0x47, 0x70, 0x47, 0x70, 0x47, 0x70, 0x47, + 0x70, 0x47, 0x00, 0x20, 0x70, 0x47, 0x00, 0x00, 0xc2, 0x69, 0x38, 0xb5, + 0x12, 0x05, 0x04, 0x46, 0x0d, 0x46, 0x03, 0x69, 0x14, 0xd5, 0x02, 0x68, + 0xd2, 0xf8, 0x8c, 0x10, 0x8a, 0x6b, 0x01, 0x32, 0x8a, 0x63, 0x4f, 0xf4, + 0x7a, 0x71, 0xb2, 0xfb, 0xf1, 0xf0, 0x01, 0xfb, 0x10, 0x21, 0x19, 0xb9, + 0x06, 0x48, 0xd9, 0x6b, 0xff, 0xf7, 0x12, 0xf8, 0xe3, 0x69, 0x23, 0xf4, + 0x00, 0x63, 0xe3, 0x61, 0x20, 0x46, 0x29, 0x46, 0xbd, 0xe8, 0x38, 0x40, + 0x2d, 0xf0, 0xf8, 0x9a, 0x2c, 0xbf, 0x01, 0x00, 0xf8, 0xb5, 0x04, 0x46, + 0x0f, 0x46, 0x16, 0x46, 0x1d, 0x46, 0xf8, 0xf7, 0x59, 0xf9, 0x20, 0x46, + 0x39, 0x46, 0x32, 0x46, 0x2b, 0x46, 0x1d, 0xf0, 0xfb, 0xd9, 0x20, 0x46, + 0xbd, 0xe8, 0xf8, 0x40, 0xf8, 0xf7, 0x5a, 0xb8, 0x08, 0xb5, 0x11, 0xf0, + 0xf5, 0xdf, 0x38, 0xb1, 0x43, 0x6a, 0x19, 0x03, 0x04, 0xd4, 0x02, 0x68, + 0x12, 0xb1, 0x43, 0xf4, 0x00, 0x23, 0x43, 0x62, 0x08, 0xbd, 0x70, 0xb5, + 0x03, 0x68, 0x04, 0x46, 0x93, 0xf8, 0x42, 0x30, 0x0e, 0x46, 0x15, 0x46, + 0x23, 0xb1, 0xd0, 0xf8, 0x40, 0x01, 0x01, 0x22, 0xf8, 0xf7, 0x72, 0xfb, + 0x20, 0x46, 0x31, 0x46, 0x2a, 0x46, 0xbd, 0xe8, 0x70, 0x40, 0x25, 0xf0, + 0x07, 0x9b, 0x70, 0x47, 0x73, 0xb5, 0x02, 0xf5, 0x45, 0x74, 0x00, 0xeb, + 0x44, 0x04, 0x40, 0xf6, 0x2a, 0x16, 0xa5, 0x88, 0xa6, 0x80, 0x06, 0x9e, + 0x00, 0x96, 0x03, 0xf0, 0x5b, 0xdf, 0xa5, 0x80, 0x7c, 0xbd, 0x70, 0xb5, + 0x0c, 0x46, 0x16, 0x46, 0x4d, 0x6c, 0x18, 0xf0, 0xb9, 0xdb, 0x20, 0xb9, + 0xb3, 0x02, 0x02, 0xd5, 0x63, 0x6c, 0x65, 0x64, 0xa3, 0x64, 0x70, 0xbd, + 0x70, 0xb5, 0x05, 0x68, 0x04, 0x46, 0x2b, 0x68, 0x0e, 0x46, 0x93, 0xf8, + 0x30, 0x30, 0x4b, 0xb1, 0x2b, 0x6b, 0x18, 0x69, 0x00, 0xf0, 0x18, 0xfe, + 0x73, 0x8e, 0x98, 0x42, 0x1c, 0xbf, 0xd5, 0xf8, 0x40, 0x25, 0x53, 0x86, + 0x20, 0x46, 0x31, 0x46, 0xbd, 0xe8, 0x70, 0x40, 0x29, 0xf0, 0xaa, 0x98, + 0x07, 0x4b, 0x1b, 0x78, 0x3b, 0xb1, 0x07, 0x4b, 0x1b, 0x68, 0x98, 0x42, + 0x03, 0xd2, 0x06, 0x4b, 0x53, 0xf8, 0x20, 0x30, 0x0b, 0xb9, 0x35, 0xf0, + 0x5d, 0x99, 0x18, 0x46, 0x70, 0x47, 0x00, 0xbf, 0x8c, 0x01, 0x02, 0x00, + 0x70, 0x00, 0x02, 0x00, 0x74, 0x00, 0x02, 0x00, 0x00, 0x20, 0x70, 0x47, + 0x07, 0x4b, 0x1b, 0x78, 0x3b, 0xb1, 0x07, 0x4b, 0x1b, 0x68, 0x98, 0x42, + 0x03, 0xd2, 0x06, 0x4b, 0x53, 0xf8, 0x20, 0x30, 0x0b, 0xb9, 0x34, 0xf0, + 0x4d, 0x9d, 0x18, 0x46, 0x70, 0x47, 0x00, 0xbf, 0x8c, 0x01, 0x02, 0x00, + 0x88, 0x01, 0x02, 0x00, 0x64, 0xff, 0x01, 0x00, 0x2c, 0x4b, 0x2d, 0xe9, + 0xf0, 0x41, 0x05, 0x46, 0x0c, 0x46, 0xd3, 0xf8, 0x00, 0x80, 0x00, 0x26, + 0x0b, 0xe0, 0x29, 0x4f, 0x28, 0x46, 0x07, 0xeb, 0xc6, 0x07, 0x39, 0x46, + 0xf1, 0xf3, 0xfc, 0xf3, 0x10, 0xb9, 0xfb, 0x78, 0x9c, 0x42, 0x43, 0xd0, + 0x01, 0x36, 0x46, 0x45, 0xf1, 0xd1, 0x23, 0x4b, 0x00, 0x26, 0xd3, 0xf8, + 0x00, 0x80, 0x0f, 0xe0, 0x21, 0x4f, 0x28, 0x46, 0x07, 0xeb, 0xc6, 0x07, + 0x39, 0x46, 0xf1, 0xf3, 0xe9, 0xf3, 0x30, 0xb9, 0xfb, 0x78, 0x9c, 0x42, + 0x03, 0xd1, 0x1d, 0x4b, 0x01, 0x22, 0x1a, 0x70, 0x10, 0xe0, 0x01, 0x36, + 0x46, 0x45, 0xed, 0xd1, 0x0c, 0xbb, 0x1a, 0x4b, 0x26, 0x46, 0xd3, 0xf8, + 0x00, 0x80, 0x0b, 0xe0, 0x18, 0x4f, 0x28, 0x46, 0x07, 0xeb, 0xc6, 0x07, + 0x39, 0x46, 0xf1, 0xf3, 0xd1, 0xf3, 0x10, 0xb9, 0x38, 0x1d, 0xbd, 0xe8, + 0xf0, 0x81, 0x01, 0x36, 0x46, 0x45, 0xf1, 0xd1, 0x12, 0x4b, 0x13, 0x4f, + 0xd3, 0xf8, 0x00, 0x80, 0x00, 0x26, 0x06, 0xe0, 0x39, 0x46, 0x28, 0x46, + 0xf1, 0xf3, 0xc0, 0xf3, 0x04, 0x37, 0x40, 0xb1, 0x01, 0x36, 0x46, 0x45, + 0xf6, 0xd1, 0x28, 0x46, 0x21, 0x46, 0xbd, 0xe8, 0xf0, 0x41, 0x34, 0xf0, + 0x15, 0x9c, 0x0a, 0x48, 0xbd, 0xe8, 0xf0, 0x81, 0xe8, 0x0b, 0x02, 0x00, + 0x18, 0xdd, 0x01, 0x00, 0x84, 0x01, 0x02, 0x00, 0x68, 0x00, 0x02, 0x00, + 0x8c, 0x01, 0x02, 0x00, 0xf8, 0x0b, 0x02, 0x00, 0xc4, 0xdd, 0x01, 0x00, + 0xfc, 0x0b, 0x02, 0x00, 0xb1, 0xdd, 0x01, 0x00, 0xca, 0x02, 0x86, 0x00, + 0x10, 0xb5, 0x03, 0x4c, 0x21, 0x60, 0x35, 0xf0, 0x23, 0xd8, 0x00, 0x23, + 0x23, 0x60, 0x10, 0xbd, 0x04, 0x0c, 0x02, 0x00, 0x38, 0xb5, 0x0d, 0x46, + 0x00, 0x24, 0x08, 0xe0, 0x08, 0x49, 0x28, 0x46, 0x01, 0xeb, 0xc4, 0x01, + 0x04, 0x22, 0xf1, 0xf3, 0x9b, 0xf2, 0x30, 0xb1, 0x01, 0x34, 0x05, 0x4b, + 0x1b, 0x68, 0x9c, 0x42, 0xf2, 0xd3, 0x00, 0x20, 0x38, 0xbd, 0x01, 0x20, + 0x38, 0xbd, 0x00, 0xbf, 0xc4, 0xdd, 0x01, 0x00, 0xf8, 0x0b, 0x02, 0x00, + 0x2d, 0xe9, 0xf0, 0x47, 0x23, 0x4b, 0x8e, 0xb0, 0x1d, 0x68, 0x23, 0x4b, + 0x07, 0x46, 0x88, 0x46, 0xd3, 0xf8, 0x00, 0x90, 0x00, 0x2d, 0x39, 0xd0, + 0x03, 0x6b, 0xa9, 0x68, 0x18, 0x69, 0x6a, 0x46, 0x00, 0x24, 0x00, 0xf0, + 0x6b, 0xfd, 0x26, 0x46, 0x2c, 0xe0, 0x1c, 0x4b, 0x03, 0xeb, 0xc4, 0x0a, + 0xab, 0x68, 0x01, 0x2b, 0x04, 0xd1, 0x9a, 0xf8, 0x05, 0x00, 0xff, 0xf7, + 0x37, 0xff, 0x03, 0xe0, 0x9a, 0xf8, 0x04, 0x00, 0xff, 0xf7, 0x1c, 0xff, + 0x07, 0xa9, 0x35, 0xf0, 0xb9, 0xd9, 0x00, 0x23, 0x07, 0xaa, 0x99, 0x5c, + 0x1d, 0xf8, 0x03, 0x20, 0x11, 0x42, 0x0f, 0xd0, 0x38, 0x46, 0x51, 0x46, + 0x34, 0xf0, 0x90, 0xdb, 0x40, 0xb1, 0xb8, 0xf1, 0x00, 0x0f, 0x05, 0xd0, + 0x08, 0xeb, 0x86, 0x00, 0x51, 0x46, 0x04, 0x22, 0xf1, 0xf3, 0x88, 0xf3, + 0x01, 0x36, 0x02, 0xe0, 0x01, 0x33, 0x1c, 0x2b, 0xe6, 0xd1, 0x01, 0x34, + 0x4c, 0x45, 0xd0, 0xd1, 0x30, 0x46, 0x00, 0xe0, 0x28, 0x46, 0x0e, 0xb0, + 0xbd, 0xe8, 0xf0, 0x87, 0x04, 0x0c, 0x02, 0x00, 0xf8, 0x0b, 0x02, 0x00, + 0xc4, 0xdd, 0x01, 0x00, 0xf8, 0xb5, 0x07, 0x46, 0x0e, 0x46, 0x00, 0x24, + 0x0e, 0xe0, 0x0a, 0x4b, 0x0c, 0x25, 0x05, 0xfb, 0x04, 0x35, 0x38, 0x46, + 0x29, 0x46, 0xf1, 0xf3, 0x1d, 0xf3, 0x20, 0xb9, 0x2b, 0x79, 0x9e, 0x42, + 0x01, 0xd1, 0xa8, 0x68, 0xf8, 0xbd, 0x01, 0x34, 0x03, 0x4b, 0x1b, 0x68, + 0x9c, 0x42, 0xec, 0xd3, 0x00, 0x20, 0xf8, 0xbd, 0x00, 0xdd, 0x01, 0x00, + 0xf0, 0x0b, 0x02, 0x00, 0x01, 0x29, 0x03, 0x46, 0x10, 0xd0, 0xd0, 0xf8, + 0xbc, 0x20, 0x08, 0x2a, 0xd0, 0xf8, 0xb0, 0x20, 0x08, 0xbf, 0x41, 0xf4, + 0x00, 0x71, 0xa2, 0xf8, 0xd8, 0x13, 0xb2, 0xf8, 0xda, 0x03, 0x00, 0x22, + 0x80, 0xb2, 0xa3, 0xf8, 0x20, 0x26, 0x70, 0x47, 0x4f, 0xf6, 0xff, 0x70, + 0x70, 0x47, 0xd0, 0xf8, 0xb0, 0x30, 0xa3, 0xf8, 0xd8, 0x13, 0xa3, 0xf8, + 0xda, 0x23, 0x70, 0x47, 0xd0, 0xf8, 0xb0, 0x30, 0x00, 0x21, 0x30, 0xb5, + 0xa3, 0xf8, 0xd8, 0x13, 0x01, 0x24, 0xb3, 0xf8, 0xda, 0x23, 0x02, 0x25, + 0xa3, 0xf8, 0xd8, 0x43, 0xb3, 0xf8, 0xda, 0x43, 0xa3, 0xf8, 0xd8, 0x53, + 0xb3, 0xf8, 0xda, 0x33, 0xa4, 0xb2, 0xa0, 0xf8, 0x20, 0x16, 0x9b, 0xb2, + 0xc2, 0xf3, 0x03, 0x11, 0x41, 0xea, 0x02, 0x72, 0x44, 0xea, 0x03, 0x20, + 0x42, 0xea, 0x00, 0x30, 0x30, 0xbd, 0xd0, 0xf8, 0xb0, 0x30, 0x00, 0x22, + 0xa3, 0xf8, 0xfc, 0x13, 0xa0, 0xf8, 0x20, 0x26, 0xb3, 0xf8, 0xfe, 0x03, + 0x80, 0xb2, 0x70, 0x47, 0xd0, 0xf8, 0xb0, 0x30, 0x41, 0xea, 0x02, 0x42, + 0xc3, 0xf8, 0xfc, 0x23, 0x70, 0x47, 0x00, 0x23, 0x80, 0xf8, 0xe3, 0x30, + 0x00, 0xf5, 0x80, 0x52, 0xff, 0x23, 0x00, 0xf5, 0x8a, 0x50, 0x82, 0xf8, + 0x3a, 0x30, 0x80, 0xf8, 0x30, 0x30, 0x70, 0x47, 0xff, 0xf7, 0xc0, 0xbf, + 0x00, 0x20, 0x70, 0x47, 0xb0, 0xf8, 0xda, 0x30, 0x03, 0xf4, 0x70, 0x43, + 0xb3, 0xf5, 0x80, 0x5f, 0x09, 0xd1, 0x03, 0x2a, 0x17, 0xdd, 0xa2, 0xf1, + 0x65, 0x03, 0x03, 0x2b, 0x13, 0xd9, 0xa2, 0xf1, 0xc9, 0x03, 0x0f, 0x2b, + 0x0f, 0xd9, 0x13, 0x2a, 0x0d, 0xdc, 0xa2, 0xf1, 0x34, 0x03, 0x64, 0x2b, + 0x09, 0xd9, 0xa2, 0xf1, 0xa9, 0x03, 0x1f, 0x2b, 0x07, 0xd9, 0xd1, 0x3a, + 0x07, 0x2a, 0x94, 0xbf, 0x00, 0x20, 0x01, 0x20, 0x70, 0x47, 0x00, 0x20, + 0x70, 0x47, 0x00, 0x20, 0x70, 0x47, 0xb0, 0xf8, 0xda, 0x30, 0x03, 0xf4, + 0x70, 0x42, 0xb2, 0xf5, 0x00, 0x5f, 0x06, 0xd1, 0xdb, 0xb2, 0xc0, 0x18, + 0x00, 0xf5, 0x9a, 0x50, 0x2f, 0x30, 0x00, 0x79, 0x00, 0xe0, 0x00, 0x20, + 0x40, 0xb2, 0x70, 0x47, 0x0b, 0x78, 0x10, 0xb5, 0x80, 0xf8, 0x2c, 0x36, + 0x4b, 0x78, 0x80, 0xf8, 0x2d, 0x36, 0x8b, 0x78, 0x80, 0xf8, 0x2e, 0x36, + 0xcb, 0x78, 0x80, 0xf8, 0x2f, 0x36, 0x00, 0x23, 0xca, 0x18, 0x14, 0x79, + 0xc2, 0x18, 0x01, 0x33, 0x08, 0x2b, 0x82, 0xf8, 0x30, 0x46, 0xf7, 0xd1, + 0x10, 0xbd, 0x22, 0xb1, 0x00, 0xf5, 0x80, 0x53, 0x00, 0x22, 0x9a, 0x60, + 0x9a, 0x81, 0x00, 0xf5, 0x82, 0x50, 0x01, 0x60, 0x01, 0x20, 0x70, 0x47, + 0x6f, 0xf0, 0x16, 0x00, 0x70, 0x47, 0xf8, 0xb5, 0x00, 0xf5, 0x90, 0x56, + 0x96, 0xf8, 0x3e, 0x30, 0x04, 0x46, 0x8b, 0x42, 0x0d, 0x46, 0x17, 0x46, + 0x03, 0xd0, 0xd0, 0xf8, 0x88, 0x30, 0x03, 0xb1, 0x98, 0x47, 0x04, 0xf5, + 0x92, 0x54, 0x27, 0x80, 0x86, 0xf8, 0x3e, 0x50, 0xf8, 0xbd, 0x00, 0x20, + 0x70, 0x47, 0x10, 0xb5, 0x90, 0xf8, 0xe9, 0x30, 0x94, 0xb0, 0x43, 0xf0, + 0x01, 0x03, 0x80, 0xf8, 0xe9, 0x30, 0x04, 0x46, 0x00, 0x21, 0x30, 0x22, + 0x01, 0xa8, 0xf1, 0xf3, 0xbf, 0xf1, 0x00, 0x21, 0x10, 0x22, 0x0d, 0xa8, + 0xf1, 0xf3, 0xba, 0xf1, 0x00, 0x21, 0x04, 0x22, 0x13, 0xa8, 0xf1, 0xf3, + 0xb5, 0xf1, 0x11, 0xa8, 0x00, 0x21, 0x08, 0x22, 0xf1, 0xf3, 0xb0, 0xf1, + 0x94, 0xf8, 0xe9, 0x30, 0x00, 0x20, 0x23, 0xf0, 0x01, 0x03, 0x84, 0xf8, + 0xe9, 0x30, 0x14, 0xb0, 0x10, 0xbd, 0x00, 0x21, 0x09, 0xf0, 0x3b, 0xbb, + 0xc3, 0x69, 0x70, 0xb5, 0xdc, 0x68, 0x1b, 0x6d, 0x05, 0x46, 0xdb, 0x07, + 0x0e, 0x46, 0x07, 0xd5, 0x20, 0x46, 0xfa, 0xf3, 0xd1, 0xf0, 0x18, 0xb1, + 0xeb, 0x69, 0x9b, 0x69, 0x98, 0x00, 0x0f, 0xd4, 0xeb, 0x69, 0x1a, 0x6d, + 0xd1, 0x07, 0x39, 0xd5, 0x5a, 0x6d, 0x12, 0x06, 0x36, 0xd4, 0xd8, 0x68, + 0xfa, 0xf3, 0x60, 0xf2, 0x00, 0x28, 0x31, 0xd0, 0xeb, 0x69, 0x9b, 0x69, + 0x9b, 0x00, 0x2d, 0xd5, 0xd5, 0xf8, 0xf8, 0x30, 0x98, 0x07, 0x29, 0xd4, + 0x63, 0x69, 0xe6, 0xb1, 0x06, 0xf4, 0x70, 0x42, 0xb2, 0xf5, 0x00, 0x5f, + 0x17, 0xd1, 0x22, 0x2b, 0x11, 0x49, 0xcc, 0xbf, 0x0c, 0x23, 0x00, 0x23, + 0xf2, 0xb2, 0xd8, 0xbf, 0x0f, 0x21, 0x20, 0x46, 0x9a, 0x40, 0x01, 0x23, + 0xfa, 0xf3, 0xac, 0xf0, 0x63, 0x69, 0x0c, 0x49, 0x22, 0x2b, 0x20, 0x46, + 0xd8, 0xbf, 0x70, 0x21, 0xcc, 0xbf, 0x4f, 0xf4, 0x00, 0x72, 0x10, 0x22, + 0x05, 0xe0, 0x06, 0x49, 0x20, 0x46, 0x22, 0x2b, 0xd8, 0xbf, 0x0f, 0x21, + 0x00, 0x22, 0x01, 0x23, 0xbd, 0xe8, 0x70, 0x40, 0xfa, 0xf3, 0x96, 0xb0, + 0x70, 0xbd, 0x00, 0xbf, 0x00, 0xf0, 0x55, 0x55, 0x00, 0x0e, 0x55, 0x55, + 0x08, 0xb5, 0x14, 0x29, 0xd0, 0xf8, 0xa8, 0x20, 0x02, 0xd0, 0x15, 0x29, + 0x0e, 0xd1, 0x09, 0xe0, 0x92, 0xf9, 0x1a, 0x20, 0x02, 0xa9, 0x41, 0xf8, + 0x04, 0x2f, 0x18, 0x46, 0x04, 0x22, 0xf1, 0xf3, 0xdb, 0xf0, 0x01, 0xe0, + 0x03, 0x9b, 0x93, 0x76, 0x00, 0x20, 0x08, 0xbd, 0x6f, 0xf0, 0x16, 0x00, + 0x08, 0xbd, 0x10, 0xb5, 0x90, 0xf8, 0x1a, 0x36, 0x0c, 0x46, 0x2b, 0xb1, + 0x02, 0x31, 0x22, 0x46, 0x09, 0xf0, 0x1c, 0xff, 0xa3, 0x78, 0x63, 0x70, + 0x10, 0xbd, 0x01, 0x21, 0x09, 0xf0, 0x1c, 0xbb, 0x10, 0xb5, 0x00, 0x23, + 0x04, 0x46, 0xe2, 0x18, 0x01, 0x33, 0x7f, 0x21, 0x65, 0x2b, 0x82, 0xf8, + 0x91, 0x16, 0xf8, 0xd1, 0x20, 0x46, 0xff, 0xf7, 0xf0, 0xff, 0x20, 0x46, + 0xbd, 0xe8, 0x10, 0x40, 0xff, 0xf7, 0x6f, 0xbf, 0x04, 0x4b, 0x1b, 0x78, + 0x01, 0x2b, 0x02, 0xd1, 0x00, 0x20, 0x00, 0x70, 0x70, 0x47, 0x15, 0xf0, + 0xb5, 0xbf, 0x00, 0xbf, 0x38, 0x08, 0x02, 0x00, 0x04, 0x4b, 0x1b, 0x78, + 0x01, 0x2b, 0x02, 0xd1, 0x00, 0x20, 0x00, 0x70, 0x70, 0x47, 0x15, 0xf0, + 0xd1, 0xbf, 0x00, 0xbf, 0x38, 0x08, 0x02, 0x00, 0x10, 0xb5, 0x14, 0x46, + 0xff, 0xf7, 0xf0, 0xff, 0x28, 0xb1, 0x00, 0x21, 0x0a, 0x46, 0xbd, 0xe8, + 0x10, 0x40, 0xf1, 0xf3, 0x7b, 0xb4, 0x20, 0x46, 0x10, 0xbd, 0x00, 0x22, + 0xff, 0xf7, 0xf0, 0xbf, 0x2d, 0xe9, 0xf0, 0x41, 0x05, 0x46, 0x0c, 0x46, + 0x17, 0x46, 0x1e, 0x46, 0xff, 0xf7, 0xdc, 0xff, 0x38, 0xb1, 0x28, 0x46, + 0x21, 0x46, 0x3a, 0x46, 0x33, 0x46, 0xbd, 0xe8, 0xf0, 0x41, 0x15, 0xf0, + 0xed, 0xbf, 0x30, 0x46, 0xbd, 0xe8, 0xf0, 0x81, 0x00, 0x23, 0xff, 0xf7, + 0xe9, 0xbf, 0xc3, 0x69, 0x18, 0x69, 0x3f, 0xf0, 0x41, 0x9c, 0xc3, 0x69, + 0x18, 0x69, 0x3f, 0xf0, 0x33, 0x9c, 0x70, 0xb5, 0x05, 0x46, 0x0c, 0x46, + 0x16, 0x46, 0xff, 0xf7, 0x2b, 0xfe, 0x21, 0x46, 0x00, 0xea, 0x06, 0x02, + 0x28, 0x46, 0xbd, 0xe8, 0x70, 0x40, 0xff, 0xf7, 0x3a, 0xbe, 0x70, 0xb5, + 0x05, 0x46, 0x0c, 0x46, 0x16, 0x46, 0xff, 0xf7, 0x1d, 0xfe, 0x40, 0xea, + 0x06, 0x02, 0x21, 0x46, 0x28, 0x46, 0x92, 0xb2, 0xbd, 0xe8, 0x70, 0x40, + 0xff, 0xf7, 0x2b, 0xbe, 0xf8, 0xb5, 0x05, 0x46, 0x0c, 0x46, 0x16, 0x46, + 0x1f, 0x46, 0xff, 0xf7, 0x0d, 0xfe, 0x20, 0xea, 0x06, 0x02, 0x3e, 0x40, + 0x32, 0x43, 0x28, 0x46, 0x21, 0x46, 0x92, 0xb2, 0xbd, 0xe8, 0xf8, 0x40, + 0xff, 0xf7, 0x19, 0xbe, 0xf8, 0xb5, 0x1f, 0x46, 0x06, 0x9b, 0x15, 0x46, + 0x19, 0x80, 0x07, 0x9e, 0x0c, 0x46, 0xff, 0xf7, 0xf9, 0xfd, 0x08, 0x9b, + 0x30, 0x80, 0x1c, 0x80, 0x33, 0x88, 0x2f, 0x40, 0x23, 0xea, 0x05, 0x03, + 0x43, 0xea, 0x07, 0x05, 0x09, 0x9b, 0x1d, 0x80, 0xf8, 0xbd, 0xd0, 0xf8, + 0xb0, 0x30, 0xa3, 0xf8, 0xfc, 0x13, 0xb3, 0xf8, 0xfe, 0x13, 0x0a, 0x40, + 0xa3, 0xf8, 0xfe, 0x23, 0x00, 0x23, 0xa0, 0xf8, 0x20, 0x36, 0x70, 0x47, + 0xd0, 0xf8, 0xb0, 0x30, 0xa3, 0xf8, 0xfc, 0x13, 0xb3, 0xf8, 0xfe, 0x13, + 0x89, 0xb2, 0x0a, 0x43, 0xa3, 0xf8, 0xfe, 0x23, 0x00, 0x23, 0xa0, 0xf8, + 0x20, 0x36, 0x70, 0x47, 0x10, 0xb5, 0xd0, 0xf8, 0xb0, 0x40, 0x13, 0x40, + 0xa4, 0xf8, 0xfc, 0x13, 0xb4, 0xf8, 0xfe, 0x13, 0x89, 0xb2, 0x21, 0xea, + 0x02, 0x02, 0x1a, 0x43, 0x00, 0x23, 0xa4, 0xf8, 0xfe, 0x23, 0xa0, 0xf8, + 0x20, 0x36, 0x10, 0xbd, 0x70, 0xb5, 0x0b, 0x46, 0x05, 0x46, 0x2d, 0xe0, + 0x1c, 0x46, 0x56, 0x1e, 0x34, 0xf8, 0x02, 0x2b, 0x91, 0x04, 0x02, 0xf4, + 0x40, 0x42, 0x89, 0x0c, 0xb2, 0xf5, 0x80, 0x4f, 0x12, 0xd0, 0x01, 0xdc, + 0x3a, 0xb1, 0x1d, 0xe0, 0xb2, 0xf5, 0x00, 0x4f, 0x11, 0xd0, 0xb2, 0xf5, + 0x40, 0x4f, 0x17, 0xd1, 0x12, 0xe0, 0x1c, 0x46, 0x5a, 0x88, 0x28, 0x46, + 0x34, 0xf8, 0x04, 0x3f, 0xff, 0xf7, 0xce, 0xff, 0x01, 0x3e, 0x0d, 0xe0, + 0x28, 0x46, 0x5a, 0x88, 0xff, 0xf7, 0xe2, 0xfd, 0x08, 0xe0, 0x28, 0x46, + 0x5a, 0x88, 0xff, 0xf7, 0xa8, 0xff, 0x03, 0xe0, 0x28, 0x46, 0x5a, 0x88, + 0xff, 0xf7, 0xb0, 0xff, 0xa3, 0x1c, 0x72, 0x1e, 0x00, 0x2a, 0xcf, 0xdc, + 0x70, 0xbd, 0xf8, 0xb5, 0x1f, 0x46, 0x06, 0x9b, 0x15, 0x46, 0x19, 0x80, + 0x07, 0x9e, 0x0c, 0x46, 0xff, 0xf7, 0xbf, 0xfd, 0x08, 0x9b, 0x30, 0x80, + 0x1c, 0x80, 0x33, 0x88, 0x2f, 0x40, 0x23, 0xea, 0x05, 0x03, 0x43, 0xea, + 0x07, 0x05, 0x09, 0x9b, 0x1d, 0x80, 0xf8, 0xbd, 0x29, 0xb1, 0x40, 0xf2, + 0x3b, 0x41, 0x4f, 0xf6, 0xf8, 0x72, 0xff, 0xf7, 0x82, 0xbf, 0x02, 0x49, + 0x04, 0x22, 0xff, 0xf7, 0xab, 0xbf, 0x00, 0xbf, 0x8c, 0xde, 0x01, 0x00, + 0x58, 0xb1, 0xb0, 0xf8, 0xde, 0x00, 0xb0, 0xf5, 0x00, 0x6f, 0x05, 0xd0, + 0xb0, 0xf5, 0x40, 0x6f, 0x0c, 0xbf, 0x80, 0x20, 0x00, 0x20, 0x70, 0x47, + 0x40, 0x20, 0x70, 0x47, 0x01, 0x23, 0x80, 0xf8, 0xe1, 0x30, 0x70, 0x47, + 0x80, 0xf8, 0x24, 0x16, 0x70, 0x47, 0x90, 0xf9, 0x24, 0x06, 0x70, 0x47, + 0x70, 0x47, 0x10, 0xb1, 0xc3, 0x69, 0x03, 0xb1, 0x59, 0x77, 0x70, 0x47, + 0x10, 0xb1, 0xc3, 0x69, 0x03, 0xb1, 0x19, 0x77, 0x70, 0x47, 0x90, 0xf8, + 0xe3, 0x30, 0x10, 0xb5, 0x04, 0x46, 0x00, 0x2b, 0x5f, 0xd1, 0x64, 0x22, + 0xa0, 0xf8, 0x9c, 0x28, 0xa0, 0xf8, 0x9e, 0x28, 0x4f, 0xf4, 0x48, 0x72, + 0xa0, 0xf8, 0xa4, 0x28, 0x64, 0x22, 0xa0, 0xf8, 0xa6, 0x28, 0xa0, 0xf8, + 0xa8, 0x28, 0xa0, 0xf8, 0xaa, 0x28, 0xa0, 0xf8, 0xac, 0x28, 0xa0, 0xf8, + 0xae, 0x28, 0xa0, 0xf8, 0xb0, 0x28, 0xa0, 0xf8, 0xb2, 0x28, 0xa0, 0xf8, + 0xb4, 0x28, 0x0a, 0x22, 0xa0, 0xf8, 0x36, 0x28, 0xa0, 0xf8, 0x54, 0x28, + 0xa0, 0xf8, 0x3a, 0x28, 0xa0, 0xf8, 0x5c, 0x28, 0xa0, 0xf8, 0x38, 0x28, + 0xa0, 0xf8, 0x56, 0x28, 0xa0, 0xf8, 0x3c, 0x28, 0xa0, 0xf8, 0x5e, 0x28, + 0xa0, 0xf8, 0x2a, 0x28, 0xa0, 0xf8, 0x28, 0x28, 0xa0, 0xf8, 0x2c, 0x28, + 0xa0, 0xf8, 0x2e, 0x28, 0x14, 0x22, 0xa0, 0xf8, 0x32, 0x28, 0xa0, 0xf8, + 0x34, 0x28, 0x0a, 0x22, 0xa0, 0xf8, 0x90, 0x27, 0xa0, 0xf8, 0x92, 0x27, + 0x50, 0x22, 0xa0, 0xf8, 0x94, 0x27, 0x0a, 0x22, 0xc0, 0xf8, 0xa0, 0x38, + 0xa0, 0xf8, 0x30, 0x38, 0xa0, 0xf8, 0xac, 0x37, 0xa0, 0xf8, 0xae, 0x37, + 0xa0, 0xf8, 0x4a, 0x28, 0xa0, 0xf8, 0x48, 0x28, 0xc0, 0xf8, 0x58, 0x38, + 0xc0, 0xf8, 0x60, 0x38, 0x43, 0x6a, 0xa0, 0xf8, 0x4c, 0x28, 0xa0, 0xf8, + 0x4e, 0x28, 0x14, 0x22, 0xa0, 0xf8, 0x50, 0x28, 0xa0, 0xf8, 0x52, 0x28, + 0x03, 0xb1, 0x98, 0x47, 0x01, 0x23, 0x84, 0xf8, 0xe3, 0x30, 0x10, 0xbd, + 0x08, 0xb5, 0x00, 0xf5, 0x96, 0x53, 0x99, 0x6a, 0x41, 0xb1, 0xc3, 0x69, + 0x18, 0x69, 0x3f, 0xf0, 0xff, 0xda, 0xd0, 0xf1, 0x01, 0x00, 0x38, 0xbf, + 0x00, 0x20, 0x08, 0xbd, 0x08, 0x46, 0x08, 0xbd, 0x2d, 0xe9, 0xf8, 0x4f, + 0x0c, 0x46, 0xd1, 0xf8, 0x10, 0xa0, 0xd1, 0xf8, 0x00, 0x80, 0x9b, 0x46, + 0x89, 0x68, 0xe3, 0x68, 0x00, 0x27, 0x43, 0xea, 0x81, 0x23, 0x11, 0x46, + 0x9a, 0xb2, 0x05, 0x46, 0xbd, 0xf8, 0x28, 0x90, 0x3e, 0x46, 0xff, 0xf7, + 0x01, 0xfd, 0x1b, 0xe0, 0xba, 0xf1, 0x20, 0x0f, 0x0b, 0xd1, 0x58, 0xf8, + 0x07, 0x20, 0x28, 0x46, 0x59, 0x46, 0x12, 0x0c, 0xff, 0xf7, 0xf6, 0xfc, + 0x28, 0x46, 0x49, 0x46, 0x38, 0xf8, 0x07, 0x20, 0x08, 0xe0, 0xba, 0xf1, + 0x10, 0x0f, 0x0c, 0xbf, 0x38, 0xf8, 0x16, 0x20, 0x18, 0xf8, 0x06, 0x20, + 0x28, 0x46, 0x49, 0x46, 0xff, 0xf7, 0xe6, 0xfc, 0x01, 0x36, 0x04, 0x37, + 0x63, 0x68, 0x9e, 0x42, 0xe0, 0xd3, 0xbd, 0xe8, 0xf8, 0x8f, 0x2d, 0xe9, + 0xf7, 0x4f, 0x0c, 0x46, 0x01, 0x93, 0xd1, 0xf8, 0x10, 0x80, 0x0e, 0x68, + 0xe3, 0x68, 0x89, 0x68, 0x4f, 0xf0, 0x00, 0x0a, 0x43, 0xea, 0x81, 0x23, + 0x11, 0x46, 0x9a, 0xb2, 0x05, 0x46, 0xbd, 0xf8, 0x30, 0x70, 0xd1, 0x46, + 0xff, 0xf7, 0xca, 0xfc, 0x22, 0xe0, 0xb8, 0xf1, 0x20, 0x0f, 0x28, 0x46, + 0x39, 0x46, 0x0d, 0xd1, 0xff, 0xf7, 0xb7, 0xfc, 0x01, 0x99, 0x83, 0x46, + 0x46, 0xf8, 0x0a, 0x00, 0x28, 0x46, 0xff, 0xf7, 0xb0, 0xfc, 0x4b, 0xea, + 0x00, 0x40, 0x46, 0xf8, 0x0a, 0x00, 0x0b, 0xe0, 0xb8, 0xf1, 0x10, 0x0f, + 0x04, 0xd1, 0xff, 0xf7, 0xa6, 0xfc, 0x26, 0xf8, 0x19, 0x00, 0x03, 0xe0, + 0xff, 0xf7, 0xa1, 0xfc, 0x06, 0xf8, 0x09, 0x00, 0x09, 0xf1, 0x01, 0x09, + 0x0a, 0xf1, 0x04, 0x0a, 0x63, 0x68, 0x99, 0x45, 0xd9, 0xd3, 0xbd, 0xe8, + 0xfe, 0x8f, 0x7f, 0xb5, 0x02, 0x93, 0x08, 0x9b, 0x03, 0x91, 0x05, 0x93, + 0x09, 0x9b, 0x01, 0x92, 0x04, 0x93, 0x01, 0xa9, 0x0a, 0x9b, 0x98, 0x47, + 0x07, 0xb0, 0x00, 0xbd, 0x7f, 0xb5, 0x02, 0x93, 0x08, 0x9b, 0x03, 0x91, + 0x05, 0x93, 0x09, 0x9b, 0x01, 0x92, 0x04, 0x93, 0x01, 0xa9, 0x0a, 0x9b, + 0x98, 0x47, 0x07, 0xb0, 0x00, 0xbd, 0x00, 0x00, 0xf0, 0xb5, 0x3f, 0x4b, + 0x8b, 0xb0, 0xd0, 0xf8, 0xb0, 0x40, 0x07, 0x46, 0x0d, 0x46, 0x6a, 0x46, + 0x03, 0xf1, 0x10, 0x0e, 0x18, 0x68, 0x59, 0x68, 0x16, 0x46, 0x03, 0xc6, + 0x08, 0x33, 0x73, 0x45, 0x32, 0x46, 0xf7, 0xd1, 0x18, 0x68, 0x37, 0x4b, + 0x30, 0x60, 0x05, 0xaa, 0x03, 0xf1, 0x10, 0x0e, 0x18, 0x68, 0x59, 0x68, + 0x16, 0x46, 0x03, 0xc6, 0x08, 0x33, 0x73, 0x45, 0x32, 0x46, 0xf7, 0xd1, + 0x18, 0x68, 0x30, 0x60, 0x0d, 0xb1, 0x6b, 0x46, 0x00, 0xe0, 0x05, 0xab, + 0xfa, 0x69, 0x00, 0x21, 0x10, 0x69, 0x14, 0x22, 0x3f, 0xf0, 0x32, 0xda, + 0x00, 0x23, 0xa4, 0xf8, 0x68, 0x35, 0x00, 0x2d, 0x4f, 0xf4, 0x80, 0x73, + 0xa4, 0xf8, 0xc0, 0x37, 0x0c, 0xbf, 0x40, 0x23, 0x41, 0x23, 0xa4, 0xf8, + 0x0c, 0x35, 0x41, 0xf6, 0x02, 0x23, 0xa4, 0xf8, 0x14, 0x35, 0x4f, 0xf0, + 0x00, 0x03, 0xa4, 0xf8, 0x08, 0x35, 0xa4, 0xf8, 0x0a, 0x35, 0xa4, 0xf8, + 0x4c, 0x35, 0x4f, 0xf0, 0x14, 0x03, 0xa4, 0xf8, 0x6a, 0x35, 0x40, 0xf6, + 0x26, 0x03, 0xa4, 0xf8, 0x68, 0x35, 0x4f, 0xf0, 0x00, 0x03, 0xa4, 0xf8, + 0x00, 0x35, 0x4f, 0xf0, 0xd0, 0x03, 0xa4, 0xf8, 0x02, 0x35, 0x0c, 0xbf, + 0xfa, 0x26, 0x1e, 0x26, 0xb4, 0xf8, 0x02, 0x35, 0x00, 0x25, 0x02, 0xe0, + 0x0a, 0x20, 0xf5, 0xf3, 0x09, 0xf2, 0xb5, 0x42, 0x09, 0xda, 0xb4, 0xf8, + 0x0e, 0x35, 0x01, 0x35, 0x1b, 0x06, 0xf5, 0xd4, 0x03, 0xe0, 0x0a, 0x20, + 0xf5, 0xf3, 0xfe, 0xf1, 0x00, 0xe0, 0x0b, 0x25, 0x01, 0x3d, 0x08, 0xd0, + 0xb4, 0xf8, 0x0e, 0x35, 0x58, 0x05, 0xf4, 0xd5, 0x03, 0xe0, 0x0a, 0x20, + 0xf5, 0xf3, 0xf2, 0xf1, 0x00, 0xe0, 0x0b, 0x25, 0x01, 0x3d, 0x03, 0xd0, + 0xb4, 0xf8, 0x90, 0x36, 0xd9, 0x05, 0xf4, 0xd4, 0x0b, 0xb0, 0xf0, 0xbd, + 0xce, 0xb7, 0x01, 0x00, 0xe2, 0xb7, 0x01, 0x00, 0xd0, 0xf8, 0xf8, 0x30, + 0x0a, 0xb1, 0x0b, 0x43, 0x01, 0xe0, 0x23, 0xea, 0x01, 0x03, 0xc0, 0xf8, + 0xf8, 0x30, 0x70, 0x47, 0x10, 0xb5, 0xd0, 0xf8, 0xf8, 0x30, 0x21, 0xb1, + 0x43, 0xf0, 0x10, 0x03, 0xc0, 0xf8, 0xf8, 0x30, 0x10, 0xbd, 0x23, 0xf0, + 0x10, 0x03, 0xd2, 0x07, 0xc0, 0xf8, 0xf8, 0x30, 0x0b, 0xd5, 0x00, 0xf5, + 0x8e, 0x53, 0x5c, 0x6b, 0xc3, 0x69, 0x1a, 0x6a, 0x9b, 0x6e, 0x9a, 0x42, + 0x88, 0xbf, 0xc3, 0xeb, 0x02, 0x01, 0xc4, 0xf8, 0x90, 0x10, 0x10, 0xbd, + 0xc3, 0x69, 0x10, 0xb5, 0x58, 0x21, 0x04, 0x46, 0x47, 0xf6, 0x7f, 0x72, + 0x18, 0x69, 0x3f, 0xf0, 0xa1, 0xd9, 0xe3, 0x69, 0x5a, 0x21, 0x18, 0x69, + 0x47, 0xf6, 0x7f, 0x72, 0x3f, 0xf0, 0x9a, 0xd9, 0xe3, 0x69, 0x70, 0x21, + 0x18, 0x69, 0x47, 0xf6, 0x7f, 0x72, 0x3f, 0xf0, 0x93, 0xd9, 0xe3, 0x69, + 0x72, 0x21, 0x18, 0x69, 0x47, 0xf6, 0x7f, 0x72, 0xbd, 0xe8, 0x10, 0x40, + 0x3f, 0xf0, 0x8a, 0x99, 0x38, 0xb5, 0xd0, 0xf8, 0xb0, 0x30, 0x04, 0x46, + 0xd3, 0xf8, 0x20, 0x31, 0xc3, 0x69, 0x0d, 0x46, 0x1a, 0x6d, 0xd0, 0x07, + 0x07, 0xd5, 0xd8, 0x68, 0xf9, 0xf3, 0x3c, 0xf5, 0x18, 0xb1, 0xe3, 0x69, + 0x9b, 0x69, 0x99, 0x00, 0x0e, 0xd4, 0xe3, 0x69, 0x1a, 0x6d, 0xd2, 0x07, + 0x15, 0xd5, 0x5a, 0x6d, 0x10, 0x06, 0x12, 0xd4, 0xd8, 0x68, 0xf9, 0xf3, + 0xcb, 0xf6, 0x70, 0xb1, 0xe3, 0x69, 0x9b, 0x69, 0x99, 0x00, 0x0a, 0xd5, + 0x20, 0x46, 0x1d, 0xb9, 0x29, 0x46, 0xff, 0xf7, 0x47, 0xfc, 0x14, 0xe0, + 0xb4, 0xf8, 0xda, 0x10, 0xff, 0xf7, 0x42, 0xfc, 0x00, 0xe0, 0x75, 0xb1, + 0x06, 0x22, 0x20, 0x46, 0x0a, 0x49, 0xff, 0xf7, 0x81, 0xfd, 0xd4, 0xf8, + 0xa8, 0x30, 0x93, 0xf8, 0x2c, 0x30, 0x01, 0x2b, 0x0a, 0xd1, 0x20, 0x46, + 0x06, 0x49, 0x04, 0x22, 0x02, 0xe0, 0x06, 0x49, 0x20, 0x46, 0x0e, 0x22, + 0xbd, 0xe8, 0x38, 0x40, 0xff, 0xf7, 0x70, 0xbd, 0x38, 0xbd, 0x00, 0xbf, + 0x80, 0xde, 0x01, 0x00, 0xaa, 0xe4, 0x01, 0x00, 0xb2, 0xe4, 0x01, 0x00, + 0xa0, 0xf8, 0xde, 0x10, 0x70, 0x47, 0xa0, 0xf8, 0xda, 0x10, 0x70, 0x47, + 0xb0, 0xf8, 0xda, 0x00, 0x70, 0x47, 0x40, 0xf6, 0xc3, 0x13, 0x98, 0x42, + 0x0a, 0xd9, 0x41, 0xf2, 0xc8, 0x43, 0x98, 0x42, 0x08, 0xd9, 0x41, 0xf2, + 0x44, 0x63, 0x98, 0x42, 0x8c, 0xbf, 0x03, 0x20, 0x02, 0x20, 0x70, 0x47, + 0x00, 0x20, 0x70, 0x47, 0x01, 0x20, 0x70, 0x47, 0x70, 0x47, 0x00, 0x00, + 0x10, 0xb5, 0x00, 0x23, 0x06, 0x4a, 0x99, 0x00, 0x32, 0xf8, 0x23, 0x40, + 0x84, 0x42, 0x02, 0xd1, 0x52, 0x18, 0x50, 0x88, 0x10, 0xbd, 0x01, 0x33, + 0x0e, 0x2b, 0xf3, 0xd1, 0x00, 0x20, 0x10, 0xbd, 0x48, 0xde, 0x01, 0x00, + 0x08, 0xb5, 0xc8, 0xb2, 0xff, 0xf7, 0xea, 0xff, 0xbd, 0xe8, 0x08, 0x40, + 0xff, 0xf7, 0xd1, 0xbf, 0x70, 0xb5, 0x06, 0x46, 0x0d, 0x46, 0x10, 0x46, + 0x14, 0x46, 0x00, 0x21, 0x1c, 0x22, 0xf0, 0xf3, 0x85, 0xf5, 0x00, 0x22, + 0x06, 0xf5, 0x92, 0x51, 0x0e, 0x4b, 0x09, 0x7a, 0xd3, 0x5a, 0x19, 0xb1, + 0x94, 0x2b, 0x01, 0xd9, 0xa5, 0x2b, 0x11, 0xd9, 0x02, 0x2d, 0x02, 0xd1, + 0x0e, 0x2b, 0x04, 0xd9, 0x0c, 0xe0, 0x01, 0x2d, 0x0a, 0xd1, 0x0e, 0x2b, + 0x08, 0xd9, 0xd9, 0x08, 0x01, 0x20, 0x03, 0xf0, 0x07, 0x03, 0x10, 0xfa, + 0x03, 0xf3, 0x60, 0x5c, 0x03, 0x43, 0x63, 0x54, 0x04, 0x32, 0x38, 0x2a, + 0xe0, 0xd1, 0x70, 0xbd, 0x48, 0xde, 0x01, 0x00, 0x30, 0xb5, 0x00, 0xf5, + 0x92, 0x50, 0x04, 0x7a, 0x00, 0x22, 0x0f, 0x4b, 0xd3, 0x5a, 0x43, 0xf4, + 0x30, 0x60, 0x0e, 0x2b, 0x8c, 0xbf, 0x4f, 0xf4, 0x80, 0x55, 0x4f, 0xf4, + 0x00, 0x55, 0x28, 0x43, 0x1c, 0xb1, 0x94, 0x2b, 0x01, 0xd9, 0xa5, 0x2b, + 0x08, 0xd9, 0x02, 0x29, 0x02, 0xd1, 0x0e, 0x2b, 0x04, 0xd8, 0x30, 0xbd, + 0x01, 0x29, 0x01, 0xd1, 0x0e, 0x2b, 0x03, 0xd8, 0x04, 0x32, 0x38, 0x2a, + 0xe3, 0xd1, 0xff, 0x20, 0x30, 0xbd, 0x00, 0xbf, 0x48, 0xde, 0x01, 0x00, + 0x10, 0xb5, 0x90, 0xf8, 0xb2, 0x32, 0x0b, 0x60, 0x90, 0xf8, 0x2b, 0x36, + 0x4b, 0xb1, 0x90, 0xf8, 0x2a, 0x36, 0x90, 0xf8, 0xf8, 0x46, 0x5b, 0xb2, + 0x14, 0xb1, 0x5b, 0x42, 0x43, 0xf0, 0x80, 0x43, 0x0b, 0x60, 0x12, 0xb1, + 0x90, 0xf8, 0xf7, 0x36, 0x13, 0x70, 0x00, 0x20, 0x10, 0xbd, 0x30, 0xb5, + 0x00, 0xf5, 0x80, 0x55, 0x95, 0xf8, 0x3b, 0x50, 0x03, 0x9c, 0xad, 0x00, + 0x0e, 0x29, 0x15, 0x70, 0x06, 0xd8, 0x00, 0x2c, 0xa8, 0xbf, 0x00, 0x19, + 0x90, 0xf8, 0x1e, 0x21, 0x1a, 0x70, 0x30, 0xbd, 0x7f, 0x22, 0x1a, 0x70, + 0xa1, 0xf1, 0x22, 0x02, 0x34, 0xea, 0x24, 0x04, 0x28, 0xbf, 0x04, 0x24, + 0x1e, 0x2a, 0x03, 0xd8, 0x02, 0x19, 0x92, 0xf8, 0x83, 0x21, 0x1a, 0x70, + 0xa1, 0xf1, 0x64, 0x02, 0x28, 0x2a, 0x03, 0xd8, 0x02, 0x19, 0x92, 0xf8, + 0xe8, 0x21, 0x1a, 0x70, 0x95, 0x39, 0x10, 0x29, 0x03, 0xd8, 0x00, 0x19, + 0x90, 0xf8, 0x4d, 0x22, 0x1a, 0x70, 0x30, 0xbd, 0x2d, 0xe9, 0xff, 0x47, + 0x00, 0x24, 0x07, 0x46, 0x88, 0x46, 0x91, 0x46, 0x9a, 0x46, 0xff, 0x25, + 0x26, 0x46, 0x41, 0x46, 0x0d, 0xf1, 0x0f, 0x02, 0x0d, 0xf1, 0x0e, 0x03, + 0x38, 0x46, 0x00, 0x94, 0xff, 0xf7, 0xbf, 0xff, 0x07, 0xf5, 0x98, 0x53, + 0x9b, 0x79, 0x9d, 0xf8, 0x0e, 0x20, 0x59, 0xb2, 0x8a, 0x42, 0xc6, 0xbf, + 0xc3, 0xeb, 0x02, 0x03, 0xdb, 0xb2, 0x00, 0x23, 0x01, 0x34, 0xb3, 0x42, + 0x28, 0xbf, 0x1e, 0x46, 0xab, 0x42, 0x38, 0xbf, 0x1d, 0x46, 0x14, 0x2c, + 0x8d, 0xf8, 0x0e, 0x30, 0xdf, 0xd1, 0x89, 0xf8, 0x00, 0x60, 0x8a, 0xf8, + 0x00, 0x50, 0xbd, 0xe8, 0xff, 0x87, 0x70, 0x47, 0x90, 0xf8, 0x29, 0x06, + 0x70, 0x47, 0x2d, 0xe9, 0xf0, 0x4f, 0xb0, 0xf8, 0xda, 0x30, 0xc2, 0x69, + 0x03, 0xf4, 0x70, 0x43, 0xb3, 0xf5, 0x80, 0x5f, 0x14, 0xbf, 0x02, 0x25, + 0x01, 0x25, 0xa5, 0xb0, 0x52, 0x6c, 0x05, 0x95, 0x40, 0xf2, 0x39, 0x51, + 0xd0, 0xf8, 0xa8, 0x50, 0x8a, 0x42, 0x04, 0x46, 0x07, 0x95, 0x03, 0xd0, + 0x40, 0xf2, 0x8b, 0x51, 0x8a, 0x42, 0x05, 0xd1, 0xa3, 0xf5, 0x80, 0x51, + 0x4b, 0x42, 0x43, 0xeb, 0x01, 0x03, 0x00, 0xe0, 0x00, 0x23, 0xdb, 0xb2, + 0x00, 0x21, 0x65, 0x22, 0x0a, 0xa8, 0x08, 0x93, 0xf0, 0xf3, 0x9a, 0xf4, + 0xb4, 0xf8, 0xda, 0x50, 0x05, 0xf4, 0x40, 0x73, 0xb3, 0xf5, 0x40, 0x7f, + 0x04, 0x95, 0xee, 0xb2, 0x0b, 0xd0, 0xb3, 0xf5, 0x00, 0x7f, 0x03, 0xd1, + 0xdd, 0x2e, 0x05, 0xd8, 0x02, 0x36, 0x04, 0xe0, 0x02, 0x2e, 0x01, 0xd9, + 0x02, 0x3e, 0x00, 0xe0, 0x00, 0x26, 0x20, 0x46, 0x05, 0x99, 0xff, 0xf7, + 0x59, 0xfb, 0x20, 0x46, 0xff, 0xf7, 0x65, 0xfa, 0x00, 0x25, 0xb0, 0x46, + 0x09, 0x90, 0xa3, 0x46, 0x03, 0x95, 0x4f, 0xf0, 0xff, 0x0a, 0xa9, 0x46, + 0x26, 0x46, 0xe8, 0xb2, 0x06, 0x90, 0x04, 0x99, 0x20, 0x46, 0x2a, 0x46, + 0xff, 0xf7, 0x30, 0xfa, 0x00, 0x28, 0x5f, 0xd0, 0x96, 0xf8, 0xb2, 0x72, + 0x94, 0xf8, 0xac, 0x30, 0x0d, 0xf1, 0x28, 0x0c, 0x05, 0xf8, 0x0c, 0x70, + 0x63, 0xb1, 0x20, 0x46, 0x41, 0x46, 0x05, 0x9a, 0x06, 0x9b, 0xcd, 0xf8, + 0x08, 0xc0, 0xff, 0xf7, 0x8c, 0xfa, 0xdd, 0xf8, 0x08, 0xc0, 0x38, 0x18, + 0x05, 0xf8, 0x0c, 0x00, 0x41, 0x46, 0x0d, 0xf1, 0x8f, 0x02, 0x0d, 0xf1, + 0x8e, 0x03, 0x20, 0x46, 0x00, 0x95, 0xff, 0xf7, 0x28, 0xff, 0x9d, 0xf8, + 0x8e, 0x30, 0x96, 0xf8, 0x2c, 0x26, 0x9a, 0x42, 0x28, 0xbf, 0x1a, 0x46, + 0x04, 0xf5, 0x98, 0x53, 0x9b, 0x79, 0x59, 0xb2, 0x8a, 0x42, 0xc8, 0xbf, + 0xc3, 0xeb, 0x02, 0x02, 0x0a, 0xab, 0xe9, 0x5c, 0xcc, 0xbf, 0xd2, 0xb2, + 0x00, 0x22, 0x8d, 0xf8, 0x8e, 0x20, 0x8a, 0x42, 0x28, 0xbf, 0x0a, 0x46, + 0x94, 0xf8, 0xe0, 0x10, 0xea, 0x54, 0x64, 0x29, 0x04, 0xd8, 0x4a, 0x43, + 0x64, 0x20, 0x92, 0xfb, 0xf0, 0xf2, 0xea, 0x54, 0x0a, 0xab, 0xe8, 0x5c, + 0x9d, 0xf8, 0x8f, 0x10, 0x96, 0xf8, 0x91, 0x26, 0x88, 0x42, 0x28, 0xbf, + 0x01, 0x46, 0x09, 0x98, 0x8a, 0x42, 0x94, 0xbf, 0xc0, 0xeb, 0x02, 0x00, + 0xc0, 0xeb, 0x01, 0x00, 0xc1, 0xb2, 0x03, 0x9a, 0xe9, 0x54, 0x06, 0x9b, + 0x51, 0x45, 0x38, 0xbf, 0x8a, 0x46, 0x49, 0x45, 0x88, 0xbf, 0x1a, 0x46, + 0x03, 0x92, 0x49, 0x45, 0x28, 0xbf, 0x89, 0x46, 0x01, 0x35, 0x01, 0x36, + 0x14, 0x2d, 0x92, 0xd1, 0x65, 0x22, 0x04, 0xf5, 0xa2, 0x60, 0x00, 0x21, + 0xf0, 0xf3, 0x02, 0xf4, 0x03, 0x9d, 0x00, 0x22, 0x94, 0xf8, 0x1a, 0x06, + 0x84, 0xf8, 0x18, 0x96, 0x84, 0xf8, 0x29, 0xa6, 0x84, 0xf8, 0x2a, 0xa6, + 0x84, 0xf8, 0xf8, 0x26, 0x84, 0xf8, 0x19, 0x56, 0x23, 0x46, 0x0a, 0xa9, + 0x51, 0x5c, 0x83, 0xf8, 0x75, 0x15, 0x08, 0xb1, 0x08, 0x9d, 0x15, 0xb1, + 0xc1, 0xeb, 0x09, 0x01, 0x01, 0xe0, 0xca, 0xeb, 0x01, 0x01, 0x01, 0x32, + 0x83, 0xf8, 0x10, 0x15, 0x01, 0x33, 0x14, 0x2a, 0xed, 0xd1, 0x00, 0x23, + 0x5a, 0x46, 0x07, 0x9d, 0x92, 0xf9, 0x10, 0x15, 0xb5, 0xf9, 0xe6, 0x03, + 0x01, 0x33, 0x41, 0x18, 0xdb, 0xb2, 0x82, 0xf8, 0x10, 0x15, 0x01, 0x32, + 0x04, 0x2b, 0xf2, 0xd1, 0xe3, 0x6a, 0x0b, 0xb1, 0x20, 0x46, 0x98, 0x47, + 0x25, 0xb0, 0xbd, 0xe8, 0xf0, 0x8f, 0x7f, 0x29, 0x38, 0xb5, 0x04, 0x46, + 0x26, 0xd8, 0x00, 0x23, 0xe2, 0x18, 0x01, 0x33, 0x65, 0x2b, 0x82, 0xf8, + 0xb2, 0x12, 0xf9, 0xd1, 0x00, 0x23, 0xe2, 0x69, 0x84, 0xf8, 0xf7, 0x36, + 0x10, 0x7f, 0xf0, 0xb1, 0xd4, 0xf8, 0xf8, 0x10, 0x89, 0x07, 0x17, 0xd4, + 0xd4, 0xf8, 0xb0, 0x30, 0xd3, 0xf8, 0x20, 0x31, 0x03, 0xf0, 0x01, 0x03, + 0x83, 0xf0, 0x01, 0x05, 0x13, 0xb1, 0x10, 0x69, 0x3e, 0xf0, 0x54, 0xdf, + 0x20, 0x46, 0xff, 0xf7, 0xe4, 0xfe, 0x4d, 0xb9, 0xe3, 0x69, 0x18, 0x69, + 0x3e, 0xf0, 0x38, 0xdf, 0x28, 0x46, 0x38, 0xbd, 0x05, 0x20, 0x38, 0xbd, + 0x18, 0x46, 0x38, 0xbd, 0x00, 0x20, 0x38, 0xbd, 0x70, 0xb5, 0x00, 0xf5, + 0x2c, 0x76, 0x0d, 0x46, 0x04, 0x46, 0x04, 0x22, 0xb0, 0x1c, 0xf0, 0xf3, + 0x2d, 0xf3, 0x29, 0x1d, 0x08, 0x22, 0xb0, 0x1d, 0xf0, 0xf3, 0x28, 0xf3, + 0x04, 0xf5, 0x2e, 0x70, 0x05, 0xf1, 0x0c, 0x01, 0x08, 0x22, 0x06, 0x30, + 0xf0, 0xf3, 0x20, 0xf3, 0x04, 0xf5, 0x38, 0x70, 0x05, 0xf1, 0x34, 0x01, + 0x08, 0x22, 0x06, 0x30, 0xf0, 0xf3, 0x18, 0xf3, 0x04, 0xf5, 0x3a, 0x70, + 0x05, 0xf1, 0x3c, 0x01, 0x08, 0x22, 0x06, 0x30, 0xf0, 0xf3, 0x10, 0xf3, + 0x04, 0xf5, 0x30, 0x70, 0x05, 0xf1, 0x14, 0x01, 0x08, 0x22, 0x06, 0x30, + 0xf0, 0xf3, 0x08, 0xf3, 0x04, 0xf5, 0x32, 0x70, 0x05, 0xf1, 0x1c, 0x01, + 0x08, 0x22, 0x06, 0x30, 0xf0, 0xf3, 0x00, 0xf3, 0x04, 0xf5, 0x34, 0x70, + 0x05, 0xf1, 0x24, 0x01, 0x08, 0x22, 0x06, 0x30, 0xf0, 0xf3, 0xf8, 0xf2, + 0x04, 0xf5, 0x36, 0x70, 0x05, 0xf1, 0x2c, 0x01, 0x08, 0x22, 0x06, 0x30, + 0xf0, 0xf3, 0xf0, 0xf2, 0x04, 0xf5, 0x3c, 0x70, 0x05, 0xf1, 0x44, 0x01, + 0x08, 0x22, 0x06, 0x30, 0xf0, 0xf3, 0xe8, 0xf2, 0x04, 0xf5, 0x3e, 0x70, + 0x05, 0xf1, 0x4c, 0x01, 0x08, 0x22, 0x06, 0x30, 0xf0, 0xf3, 0xe0, 0xf2, + 0x04, 0xf5, 0x40, 0x70, 0x05, 0xf1, 0x54, 0x01, 0x08, 0x22, 0x06, 0x30, + 0xf0, 0xf3, 0xd8, 0xf2, 0x04, 0xf5, 0x42, 0x70, 0x06, 0x30, 0x05, 0xf1, + 0x5c, 0x01, 0x08, 0x22, 0xf0, 0xf3, 0xd0, 0xf2, 0x95, 0xf8, 0x64, 0x30, + 0x84, 0xf8, 0x16, 0x33, 0xd4, 0xf8, 0xb0, 0x30, 0xd3, 0xf8, 0x20, 0x51, + 0x15, 0xf0, 0x01, 0x05, 0x09, 0xd1, 0x20, 0x46, 0xff, 0xf7, 0x63, 0xfe, + 0x5d, 0xb1, 0xe3, 0x69, 0x18, 0x69, 0xbd, 0xe8, 0x70, 0x40, 0x3e, 0xf0, + 0xb5, 0x9e, 0xe3, 0x69, 0x01, 0x25, 0x18, 0x69, 0x3e, 0xf0, 0xc4, 0xde, + 0xef, 0xe7, 0x70, 0xbd, 0x80, 0xf8, 0xe0, 0x10, 0x70, 0x47, 0xc3, 0x69, + 0x99, 0x61, 0x70, 0x47, 0x80, 0xf8, 0xd5, 0x10, 0x41, 0x76, 0x70, 0x47, + 0x70, 0xb5, 0x04, 0x46, 0x0d, 0x46, 0xff, 0xf7, 0x01, 0xf9, 0x22, 0x46, + 0x21, 0x46, 0x00, 0x23, 0xe8, 0x18, 0x06, 0x7d, 0x16, 0xb1, 0x81, 0xf8, + 0x38, 0x66, 0x02, 0xe0, 0x00, 0x79, 0x81, 0xf8, 0x38, 0x06, 0x01, 0x33, + 0x01, 0x31, 0x08, 0x2b, 0xf2, 0xd1, 0x00, 0x23, 0xe9, 0x18, 0x91, 0xf8, + 0x44, 0x00, 0x10, 0xb1, 0x82, 0xf8, 0x48, 0x06, 0x02, 0xe0, 0x09, 0x79, + 0x82, 0xf8, 0x48, 0x16, 0x01, 0x33, 0x01, 0x32, 0x08, 0x2b, 0xf1, 0xd1, + 0xe3, 0x69, 0x18, 0x69, 0x3e, 0xf0, 0x90, 0xde, 0x20, 0x46, 0xff, 0xf7, + 0x20, 0xfe, 0xe3, 0x69, 0x18, 0x69, 0xbd, 0xe8, 0x70, 0x40, 0x3e, 0xf0, + 0x73, 0x9e, 0x80, 0xf8, 0xd9, 0x10, 0x70, 0x47, 0x70, 0x47, 0x00, 0x00, + 0xf0, 0xb5, 0xc1, 0x69, 0x85, 0xb0, 0x4b, 0x7f, 0x04, 0x46, 0x00, 0x2b, + 0x6a, 0xd0, 0x90, 0xf8, 0x1a, 0x36, 0x00, 0x2b, 0x4a, 0xd0, 0x08, 0x69, + 0x3f, 0x22, 0x28, 0x21, 0x3e, 0xf0, 0x40, 0xde, 0xe3, 0x69, 0x24, 0x21, + 0x18, 0x69, 0x10, 0x22, 0x3e, 0xf0, 0x3a, 0xde, 0xe3, 0x69, 0x94, 0xf8, + 0x29, 0x26, 0x18, 0x69, 0x26, 0x21, 0x12, 0x01, 0x3e, 0xf0, 0x32, 0xde, + 0xe3, 0x69, 0x32, 0x21, 0x18, 0x69, 0xb4, 0xf8, 0xfc, 0x26, 0x3e, 0xf0, + 0x2b, 0xde, 0x26, 0x46, 0x00, 0x25, 0x26, 0x4a, 0x02, 0xab, 0x10, 0x68, + 0x51, 0x68, 0x03, 0xc3, 0xe3, 0x69, 0x18, 0x69, 0x02, 0xab, 0x59, 0x5d, + 0x3e, 0xf0, 0xf6, 0xdd, 0xe3, 0x69, 0x96, 0xf9, 0x14, 0x25, 0x07, 0x46, + 0xb9, 0x1d, 0x18, 0x69, 0x92, 0xb2, 0x3e, 0xf0, 0x15, 0xde, 0x96, 0xf9, + 0x14, 0x25, 0xe3, 0x69, 0x02, 0xeb, 0xd2, 0x72, 0x52, 0x10, 0x52, 0x42, + 0x18, 0x69, 0x07, 0xf1, 0x0e, 0x01, 0x92, 0xb2, 0x01, 0x35, 0x3e, 0xf0, + 0x07, 0xde, 0x01, 0x36, 0x08, 0x2d, 0xda, 0xd1, 0xe3, 0x69, 0x03, 0x22, + 0x00, 0x92, 0x80, 0x22, 0x18, 0x69, 0x01, 0x21, 0x13, 0x46, 0x3e, 0xf0, + 0xc7, 0xdd, 0x1b, 0xe0, 0x03, 0x46, 0x04, 0x22, 0x93, 0xf9, 0x14, 0x05, + 0xc5, 0x1d, 0x48, 0xbf, 0x00, 0xf1, 0x0e, 0x05, 0x25, 0xf0, 0x07, 0x05, + 0x01, 0x32, 0x83, 0xf8, 0x14, 0x55, 0x01, 0x33, 0x0c, 0x2a, 0xf1, 0xd1, + 0x94, 0xf9, 0x14, 0x25, 0x08, 0x69, 0x07, 0x32, 0xd2, 0x10, 0x4e, 0x21, + 0x92, 0xb2, 0x05, 0xb0, 0xbd, 0xe8, 0xf0, 0x40, 0x3e, 0xf0, 0xde, 0x9d, + 0x05, 0xb0, 0xf0, 0xbd, 0xf6, 0xb7, 0x01, 0x00, 0x90, 0xf8, 0x1a, 0x06, + 0x70, 0x47, 0x00, 0xf5, 0x82, 0x53, 0x1b, 0x79, 0x3b, 0xb1, 0x80, 0xf8, + 0x1a, 0x16, 0x80, 0xf8, 0x1b, 0x16, 0x00, 0xf5, 0x90, 0x50, 0x80, 0xf8, + 0x3c, 0x10, 0x70, 0x47, 0x01, 0x23, 0x2d, 0xe9, 0xf0, 0x43, 0x0b, 0x73, + 0x0b, 0x68, 0x91, 0x46, 0x43, 0xf0, 0x08, 0x02, 0x0a, 0x60, 0xb0, 0xf9, + 0xfa, 0x26, 0x85, 0xb0, 0x01, 0x32, 0x04, 0xbf, 0x43, 0xf0, 0x09, 0x03, + 0x0b, 0x60, 0x90, 0xf8, 0x1a, 0x36, 0x05, 0x46, 0x0c, 0x46, 0x1b, 0xb1, + 0x0b, 0x68, 0x43, 0xf0, 0x02, 0x03, 0x0b, 0x60, 0x2f, 0x46, 0x26, 0x46, + 0x4f, 0xf0, 0x00, 0x08, 0x97, 0xf8, 0xb2, 0x32, 0x28, 0x46, 0xb3, 0x77, + 0x49, 0x46, 0x0d, 0xf1, 0x0f, 0x03, 0x0d, 0xf1, 0x0e, 0x02, 0xcd, 0xf8, + 0x00, 0x80, 0xff, 0xf7, 0x02, 0xfd, 0x9d, 0xf8, 0x0f, 0x30, 0x08, 0xf1, + 0x01, 0x08, 0x86, 0xf8, 0xb0, 0x31, 0x97, 0xf8, 0x75, 0x35, 0x01, 0x37, + 0x86, 0xf8, 0x79, 0x32, 0x01, 0x36, 0xb8, 0xf1, 0x14, 0x0f, 0xe3, 0xd1, + 0x95, 0xf8, 0x1a, 0x36, 0x33, 0xb3, 0xeb, 0x69, 0x1b, 0x7f, 0x1b, 0xb3, + 0x28, 0x46, 0xff, 0xf7, 0x38, 0xf9, 0x95, 0xf8, 0x18, 0x36, 0x28, 0x46, + 0xa3, 0x75, 0x95, 0xf8, 0x18, 0x36, 0xe3, 0x75, 0x95, 0xf8, 0x19, 0x36, + 0xa3, 0x76, 0x95, 0xf8, 0x19, 0x36, 0xe3, 0x76, 0x08, 0xf0, 0xe4, 0xff, + 0x23, 0x68, 0x10, 0xb1, 0x43, 0xf0, 0x03, 0x03, 0x01, 0xe0, 0x23, 0xf0, + 0x03, 0x03, 0x28, 0x46, 0x23, 0x60, 0x04, 0xf1, 0x0d, 0x01, 0x04, 0xf1, + 0x15, 0x02, 0x08, 0xf0, 0xdf, 0xff, 0x28, 0x46, 0xff, 0xf7, 0x1b, 0xf9, + 0x05, 0xb0, 0xbd, 0xe8, 0xf0, 0x83, 0x90, 0xf8, 0xd8, 0x30, 0x13, 0xb1, + 0x00, 0x23, 0x80, 0xf8, 0xd8, 0x30, 0x00, 0x20, 0x70, 0x47, 0xc3, 0x69, + 0x01, 0x20, 0x93, 0xf8, 0x81, 0x30, 0x0b, 0x70, 0x70, 0x47, 0x73, 0xb5, + 0xc3, 0x69, 0x4f, 0xf0, 0x03, 0x02, 0x83, 0xf8, 0x81, 0x10, 0xc3, 0x69, + 0x01, 0x29, 0x00, 0x92, 0x0d, 0x46, 0x4f, 0xf0, 0x01, 0x02, 0x4f, 0xf0, + 0x00, 0x01, 0x04, 0x46, 0x18, 0x69, 0x8c, 0xbf, 0x13, 0x46, 0x0b, 0x46, + 0x3e, 0xf0, 0x0c, 0xdd, 0xe3, 0x69, 0x5a, 0x7f, 0x00, 0x2a, 0x31, 0xd0, + 0xd4, 0xf8, 0xb0, 0x20, 0xd2, 0xf8, 0x20, 0x21, 0x02, 0xf0, 0x01, 0x02, + 0x82, 0xf0, 0x01, 0x06, 0x12, 0xb1, 0x18, 0x69, 0x3e, 0xf0, 0x62, 0xdd, + 0x02, 0x22, 0x01, 0x2d, 0x20, 0x46, 0x4f, 0xf4, 0x82, 0x61, 0x0d, 0xd9, + 0x13, 0x46, 0xff, 0xf7, 0x3f, 0xf9, 0xa5, 0xf1, 0x02, 0x0e, 0x01, 0x22, + 0xde, 0xf1, 0x00, 0x03, 0x20, 0x46, 0x4f, 0xf4, 0x82, 0x61, 0x43, 0xeb, + 0x0e, 0x03, 0x07, 0xe0, 0x00, 0x23, 0xff, 0xf7, 0x31, 0xf9, 0x20, 0x46, + 0x4f, 0xf4, 0x82, 0x61, 0x01, 0x22, 0x2b, 0x46, 0xff, 0xf7, 0x2a, 0xf9, + 0x36, 0xb9, 0xe3, 0x69, 0x18, 0x69, 0x02, 0xb0, 0xbd, 0xe8, 0x70, 0x40, + 0x3e, 0xf0, 0x28, 0x9d, 0x02, 0xb0, 0x70, 0xbd, 0x38, 0xb5, 0x90, 0xf8, + 0xe2, 0x30, 0x04, 0x46, 0x00, 0x2b, 0x69, 0xd1, 0x01, 0x22, 0x80, 0xf8, + 0xe2, 0x20, 0xd0, 0xf8, 0xb0, 0x20, 0xa0, 0xf8, 0xda, 0x10, 0xd2, 0xf8, + 0x20, 0x21, 0x00, 0xf5, 0x82, 0x52, 0x13, 0x60, 0xd0, 0xf8, 0xf8, 0x30, + 0x9a, 0x07, 0x06, 0xd4, 0x90, 0xf8, 0xa0, 0x2e, 0x1a, 0xb9, 0x43, 0xf0, + 0x20, 0x03, 0xc0, 0xf8, 0xf8, 0x30, 0x25, 0x6a, 0x00, 0x2d, 0x4f, 0xd0, + 0x01, 0x21, 0x20, 0x46, 0xff, 0xf7, 0x58, 0xf9, 0xb4, 0xf8, 0xda, 0x10, + 0xb4, 0xf8, 0xde, 0x30, 0x01, 0xf4, 0x40, 0x61, 0x99, 0x42, 0x03, 0xd0, + 0xe3, 0x69, 0x18, 0x69, 0x3e, 0xf0, 0x86, 0xdc, 0x01, 0x21, 0x04, 0xf5, + 0x96, 0x53, 0x83, 0xf8, 0x2d, 0x10, 0x20, 0x46, 0xff, 0xf7, 0x46, 0xfb, + 0x20, 0x46, 0xa8, 0x47, 0x00, 0x23, 0x84, 0xf8, 0xe1, 0x30, 0x20, 0x46, + 0xff, 0xf7, 0x78, 0xfe, 0xe3, 0x69, 0x20, 0x46, 0x93, 0xf8, 0x81, 0x10, + 0xff, 0xf7, 0x6d, 0xff, 0xe3, 0x69, 0x93, 0xf8, 0x80, 0x20, 0x01, 0x2a, + 0xb4, 0xf8, 0xda, 0x20, 0x02, 0xf4, 0x70, 0x42, 0x09, 0xd1, 0xb2, 0xf5, + 0x00, 0x5f, 0x01, 0xd1, 0x9a, 0x6f, 0x09, 0xe0, 0xda, 0x6f, 0x01, 0x2a, + 0x88, 0xbf, 0x00, 0x22, 0x04, 0xe0, 0xb2, 0xf5, 0x00, 0x5f, 0x0c, 0xbf, + 0x1a, 0x6f, 0x5a, 0x6f, 0xda, 0x66, 0xd9, 0x6e, 0x20, 0x46, 0x00, 0x22, + 0xfe, 0xf7, 0x3b, 0xff, 0x00, 0x23, 0x84, 0xf8, 0xe2, 0x30, 0xe3, 0x69, + 0x92, 0x21, 0x18, 0x69, 0x3e, 0xf0, 0x7e, 0xdc, 0x04, 0xf5, 0x92, 0x54, + 0x40, 0x00, 0x60, 0x80, 0x38, 0xbd, 0x10, 0xb5, 0x90, 0xf8, 0xe9, 0x30, + 0x00, 0x2b, 0x2a, 0xd0, 0xdb, 0x07, 0x19, 0xd5, 0xd0, 0xf8, 0xf0, 0x30, + 0x8b, 0x42, 0x0f, 0xd1, 0xc3, 0x69, 0xd3, 0xf8, 0x8c, 0x40, 0x1b, 0x19, + 0x83, 0xf8, 0x82, 0x20, 0xc3, 0x69, 0xd3, 0xf8, 0x8c, 0x40, 0x07, 0x2c, + 0x01, 0xd0, 0x01, 0x34, 0x00, 0xe0, 0x00, 0x24, 0xc3, 0xf8, 0x8c, 0x40, + 0x90, 0xf8, 0xe9, 0x30, 0x23, 0xf0, 0x01, 0x03, 0x80, 0xf8, 0xe9, 0x30, + 0x90, 0xf8, 0xe9, 0x30, 0x13, 0xf0, 0x02, 0x0f, 0x09, 0xd0, 0x23, 0xf0, + 0x02, 0x03, 0x80, 0xf8, 0xe9, 0x30, 0xc3, 0x69, 0x18, 0x69, 0xbd, 0xe8, + 0x10, 0x40, 0x3e, 0xf0, 0x8f, 0x9c, 0x10, 0xbd, 0x0b, 0x46, 0x90, 0xf8, + 0xe9, 0x10, 0xb1, 0xb9, 0x01, 0x2b, 0x02, 0xd0, 0x02, 0x2b, 0x04, 0xd1, + 0x01, 0xe0, 0xc0, 0xf8, 0xf0, 0x20, 0x80, 0xf8, 0xe9, 0x30, 0xc3, 0x69, + 0x1b, 0x6a, 0xc0, 0xf8, 0xec, 0x30, 0x00, 0xf5, 0x80, 0x53, 0x93, 0xf8, + 0x25, 0x30, 0x23, 0xb1, 0x11, 0x46, 0x6f, 0xf0, 0x5e, 0x02, 0xff, 0xf7, + 0xb4, 0xbf, 0x70, 0x47, 0x10, 0xb5, 0x04, 0x46, 0xff, 0xf7, 0x0e, 0xfb, + 0x02, 0x21, 0xc2, 0xb2, 0x20, 0x46, 0xbd, 0xe8, 0x10, 0x40, 0xff, 0xf7, + 0xd9, 0xbf, 0x08, 0xf0, 0x38, 0xbf, 0x00, 0x23, 0xc1, 0x69, 0x1a, 0x46, + 0xc8, 0x18, 0x90, 0xf9, 0x82, 0x00, 0x01, 0x33, 0x08, 0x2b, 0x02, 0x44, + 0xf8, 0xd1, 0x00, 0x2a, 0xb8, 0xbf, 0x07, 0x32, 0xd2, 0x08, 0x50, 0xb2, + 0x70, 0x47, 0x01, 0x21, 0x06, 0xf0, 0x6c, 0xbb, 0x70, 0x47, 0x13, 0xb5, + 0x04, 0x46, 0x08, 0xf0, 0xc8, 0xfe, 0xe2, 0x69, 0x13, 0x6a, 0x01, 0x33, + 0x13, 0x62, 0x94, 0xf8, 0xe8, 0x10, 0x00, 0x29, 0x72, 0xd0, 0x04, 0xf5, + 0x9c, 0x50, 0x41, 0x88, 0x19, 0xb1, 0xa4, 0xf8, 0x86, 0x18, 0xa4, 0xf8, + 0x88, 0x18, 0xc1, 0x88, 0x19, 0xb1, 0xa4, 0xf8, 0x80, 0x18, 0xa4, 0xf8, + 0x7c, 0x18, 0x04, 0xf5, 0x9c, 0x51, 0x89, 0x88, 0x19, 0xb1, 0xa4, 0xf8, + 0x7a, 0x18, 0xa4, 0xf8, 0x7e, 0x18, 0x12, 0x6e, 0xb3, 0xfb, 0xf2, 0xf1, + 0x02, 0xfb, 0x11, 0x33, 0x23, 0xb9, 0x20, 0x46, 0xb4, 0xf8, 0xda, 0x10, + 0xfe, 0xf7, 0xe0, 0xfe, 0xd4, 0xf8, 0xf8, 0x30, 0x13, 0xf0, 0x0e, 0x0f, + 0x05, 0xd1, 0x20, 0x46, 0x01, 0x21, 0x94, 0xf8, 0xda, 0x20, 0xff, 0xf7, + 0x8b, 0xff, 0x94, 0xf8, 0xe9, 0x30, 0x4b, 0xb1, 0xe3, 0x69, 0x1a, 0x6a, + 0xd4, 0xf8, 0xec, 0x30, 0xd3, 0x1a, 0x05, 0x2b, 0x02, 0xd9, 0x00, 0x23, + 0x84, 0xf8, 0xe9, 0x30, 0x04, 0xf5, 0x82, 0x53, 0x9a, 0x68, 0x2a, 0xb1, + 0xe3, 0x69, 0x19, 0x6a, 0x1b, 0x6e, 0x8a, 0x1a, 0x9a, 0x42, 0x0c, 0xd3, + 0xd4, 0xf8, 0xf8, 0x30, 0x98, 0x07, 0x08, 0xd4, 0x20, 0x46, 0xfe, 0xf7, + 0x1b, 0xfe, 0x20, 0xb1, 0xe2, 0x69, 0x04, 0xf5, 0x82, 0x53, 0x12, 0x6a, + 0x9a, 0x60, 0xd4, 0xf8, 0xf8, 0x30, 0x19, 0x07, 0x1e, 0xd1, 0xd4, 0xf8, + 0x8c, 0x30, 0x0b, 0xb1, 0x20, 0x46, 0x98, 0x47, 0xe3, 0x69, 0x18, 0x69, + 0x3e, 0xf0, 0x5c, 0xdb, 0x68, 0xb1, 0xe3, 0x69, 0x01, 0xa9, 0x18, 0x69, + 0x0d, 0xf1, 0x07, 0x02, 0x3e, 0xf0, 0x5e, 0xdb, 0x20, 0x46, 0x9d, 0xf8, + 0x07, 0x10, 0xbd, 0xf8, 0x04, 0x20, 0xfe, 0xf7, 0x56, 0xfe, 0xd4, 0xf8, + 0xf8, 0x30, 0x1a, 0x07, 0x02, 0xd1, 0x20, 0x46, 0x08, 0xf0, 0xa5, 0xfe, + 0x00, 0x20, 0x1c, 0xbd, 0x00, 0xf5, 0x98, 0x53, 0x1b, 0x7d, 0x0b, 0xb1, + 0x04, 0xf0, 0xda, 0xbf, 0x70, 0x47, 0x00, 0x23, 0xc1, 0x69, 0xc9, 0x18, + 0x01, 0x33, 0x08, 0x2b, 0x81, 0xf8, 0x82, 0x20, 0xf8, 0xd1, 0x00, 0x23, + 0xc2, 0x69, 0xa4, 0x21, 0xd2, 0x18, 0x01, 0x33, 0x08, 0x2b, 0x82, 0xf8, + 0x82, 0x10, 0xf7, 0xd1, 0xc3, 0x69, 0x00, 0x22, 0xc3, 0xf8, 0x8c, 0x20, + 0xda, 0x6e, 0x03, 0x2a, 0x07, 0xd1, 0x00, 0xf5, 0x80, 0x52, 0x91, 0x69, + 0xc9, 0x07, 0x02, 0xd5, 0x1b, 0x6a, 0x08, 0x33, 0x13, 0x61, 0x00, 0xf5, + 0x8a, 0x53, 0x30, 0x33, 0x00, 0x22, 0x4f, 0xf6, 0xa4, 0x71, 0x01, 0x32, + 0x23, 0xf8, 0x02, 0x1f, 0x10, 0x2a, 0x19, 0x84, 0xf7, 0xd1, 0x00, 0xf5, + 0x8e, 0x50, 0x00, 0x23, 0x80, 0xf8, 0x32, 0x30, 0x70, 0x47, 0x00, 0x00, + 0x49, 0xf6, 0x75, 0x33, 0x4b, 0x60, 0x00, 0x23, 0x0b, 0x60, 0x4f, 0xf4, + 0x34, 0x02, 0x98, 0x42, 0xac, 0xbf, 0x01, 0x23, 0x4f, 0xf0, 0xff, 0x33, + 0x02, 0xfb, 0x03, 0x02, 0x2d, 0xe9, 0xf0, 0x41, 0x4f, 0xf0, 0xb4, 0x74, + 0x92, 0xfb, 0xf4, 0xf0, 0x04, 0xfb, 0x10, 0x22, 0x21, 0x48, 0x00, 0xfb, + 0x03, 0x23, 0x00, 0x2b, 0x05, 0xdb, 0xda, 0x13, 0x01, 0x32, 0xb5, 0x2a, + 0x0d, 0xdd, 0x1b, 0x18, 0x08, 0xe0, 0x5a, 0x42, 0xd2, 0x13, 0x01, 0x32, + 0x52, 0x10, 0x52, 0x42, 0x5a, 0x32, 0x04, 0xda, 0x03, 0xf5, 0x34, 0x03, + 0x4f, 0xf0, 0xff, 0x34, 0x00, 0xe0, 0x01, 0x24, 0x00, 0x20, 0x02, 0x46, + 0x05, 0x46, 0x4e, 0x68, 0xab, 0x42, 0x0f, 0x68, 0xdf, 0xf8, 0x4c, 0xc0, + 0x46, 0xfa, 0x02, 0xf8, 0x09, 0xdd, 0xb8, 0x44, 0x17, 0x41, 0xf6, 0x1b, + 0x4e, 0x60, 0x5c, 0xf8, 0x00, 0x60, 0xc1, 0xf8, 0x00, 0x80, 0xad, 0x19, + 0x09, 0xe0, 0xc8, 0xeb, 0x07, 0x08, 0x17, 0x41, 0xf6, 0x19, 0x4e, 0x60, + 0x5c, 0xf8, 0x00, 0x60, 0xc1, 0xf8, 0x00, 0x80, 0xad, 0x1b, 0x01, 0x32, + 0x04, 0x30, 0x12, 0x2a, 0xdf, 0xd1, 0x4b, 0x68, 0x63, 0x43, 0x4b, 0x60, + 0x0b, 0x68, 0x5c, 0x43, 0x0c, 0x60, 0xbd, 0xe8, 0xf0, 0x81, 0x00, 0xbf, + 0x00, 0x00, 0x4c, 0xff, 0x94, 0xde, 0x01, 0x00, 0x38, 0xb5, 0x00, 0xf5, + 0x8e, 0x53, 0x05, 0x46, 0x99, 0x6b, 0x08, 0xe0, 0x0b, 0x68, 0x4f, 0xf4, + 0x3d, 0x72, 0xa3, 0x63, 0xeb, 0x69, 0x98, 0x68, 0xf4, 0xf3, 0xe2, 0xf5, + 0xa1, 0x6b, 0x05, 0xf5, 0x8e, 0x54, 0x00, 0x29, 0xf2, 0xd1, 0x05, 0xf5, + 0x92, 0x55, 0x10, 0x35, 0x4f, 0xf6, 0xce, 0x73, 0xa1, 0x63, 0x65, 0x63, + 0xa5, 0xf8, 0x94, 0x30, 0xc5, 0xf8, 0x90, 0x10, 0x38, 0xbd, 0x00, 0xf5, + 0x8e, 0x53, 0x10, 0xb5, 0x5c, 0x6b, 0x00, 0xf5, 0x96, 0x53, 0x99, 0x6a, + 0x19, 0xb1, 0xc3, 0x69, 0x18, 0x69, 0x3e, 0xf0, 0xf9, 0xda, 0x00, 0x23, + 0x63, 0x70, 0xa3, 0x70, 0x10, 0xbd, 0x08, 0xb5, 0x33, 0xb9, 0x00, 0xf5, + 0x90, 0x50, 0x90, 0xf8, 0x27, 0x10, 0x18, 0x46, 0x11, 0x60, 0x08, 0xbd, + 0x29, 0xb1, 0x01, 0x29, 0x03, 0xd0, 0x02, 0x29, 0x01, 0xd0, 0x03, 0x29, + 0x07, 0xd1, 0x00, 0xf5, 0x90, 0x53, 0x83, 0xf8, 0x27, 0x10, 0xff, 0xf7, + 0xda, 0xff, 0x00, 0x20, 0x08, 0xbd, 0x6f, 0xf0, 0x1c, 0x00, 0x08, 0xbd, + 0x80, 0xea, 0xe0, 0x73, 0xa3, 0xeb, 0xe0, 0x73, 0x00, 0x20, 0x01, 0xe0, + 0x01, 0x30, 0xc0, 0xb2, 0x53, 0xfa, 0x00, 0xf2, 0x00, 0x2a, 0xf9, 0xdc, + 0x70, 0x47, 0x10, 0xb5, 0x00, 0x23, 0x02, 0x46, 0x18, 0x46, 0x4f, 0xf0, + 0x80, 0x41, 0x19, 0x41, 0x0c, 0x18, 0x94, 0x42, 0x4f, 0xea, 0x50, 0x00, + 0x9c, 0xbf, 0xc4, 0xeb, 0x02, 0x02, 0x08, 0x43, 0x02, 0x33, 0x20, 0x2b, + 0xf1, 0xd1, 0x90, 0x42, 0x38, 0xbf, 0x01, 0x30, 0x10, 0xbd, 0xc3, 0x69, + 0x83, 0xf8, 0x90, 0x10, 0xc3, 0x69, 0x83, 0xf8, 0x91, 0x20, 0xc3, 0x69, + 0x83, 0xf8, 0x92, 0x10, 0xc3, 0x69, 0x83, 0xf8, 0x93, 0x20, 0x70, 0x47, + 0xc3, 0x69, 0x83, 0xf8, 0x92, 0x10, 0x70, 0x47, 0x00, 0xf5, 0x98, 0x53, + 0x93, 0xf9, 0x36, 0x00, 0x93, 0xf9, 0x35, 0x30, 0x98, 0x42, 0xb4, 0xbf, + 0x01, 0x20, 0x02, 0x20, 0x70, 0x47, 0x00, 0x00, 0x00, 0x48, 0x70, 0x47, + 0xce, 0xe4, 0x01, 0x00, 0x10, 0xb5, 0x0c, 0x46, 0x00, 0x21, 0x08, 0xf0, + 0x9c, 0xf8, 0x20, 0x70, 0x01, 0x20, 0x10, 0xbd, 0x70, 0x47, 0x08, 0x46, + 0x70, 0x47, 0x00, 0x20, 0x70, 0x47, 0x00, 0xf5, 0x8e, 0x50, 0x80, 0x6b, + 0x03, 0xe0, 0xc3, 0x88, 0x8b, 0x42, 0x02, 0xd0, 0x00, 0x68, 0x00, 0x28, + 0xf9, 0xd1, 0x70, 0x47, 0xb0, 0xf8, 0xda, 0x10, 0xff, 0xf7, 0xf1, 0xbf, + 0x70, 0xb5, 0x04, 0x46, 0x0d, 0x46, 0xff, 0xf7, 0xec, 0xff, 0x05, 0xf4, + 0x70, 0x43, 0xb3, 0xf5, 0x80, 0x5f, 0xe3, 0x69, 0xea, 0xb2, 0x08, 0xbf, + 0x42, 0xf4, 0x80, 0x72, 0x06, 0x46, 0xa0, 0x21, 0x18, 0x69, 0x3e, 0xf0, + 0x53, 0xda, 0xa3, 0x6a, 0x04, 0xf5, 0x8e, 0x51, 0x16, 0xb1, 0x06, 0xf5, + 0x17, 0x72, 0x02, 0xe0, 0x04, 0xf5, 0x92, 0x52, 0x10, 0x32, 0x4a, 0x63, + 0x13, 0xb1, 0x20, 0x46, 0x29, 0x46, 0x98, 0x47, 0x36, 0xb3, 0x04, 0xf5, + 0x8e, 0x53, 0x5a, 0x6b, 0x53, 0x78, 0x73, 0xb1, 0xe3, 0x69, 0x04, 0xf5, + 0x96, 0x56, 0xb1, 0x6a, 0x18, 0x69, 0x3e, 0xf0, 0x4b, 0xda, 0xe3, 0x69, + 0x00, 0x22, 0x18, 0x69, 0xb1, 0x6a, 0x13, 0x46, 0x3e, 0xf0, 0xc2, 0xd9, + 0x12, 0xe0, 0x04, 0xf5, 0x90, 0x53, 0x93, 0xf8, 0x27, 0x30, 0x6b, 0xb1, + 0x03, 0x2b, 0x0b, 0xd0, 0xe3, 0x69, 0xd2, 0xf8, 0x90, 0x20, 0x19, 0x6a, + 0x9b, 0x6e, 0x8a, 0x1a, 0x9a, 0x42, 0x03, 0xd3, 0x20, 0x46, 0x02, 0x21, + 0xff, 0xf7, 0xb2, 0xff, 0x20, 0x46, 0x29, 0x46, 0xbd, 0xe8, 0x70, 0x40, + 0xfe, 0xf7, 0xfa, 0xbc, 0xe0, 0x29, 0x10, 0xb5, 0x04, 0x46, 0x13, 0xdc, + 0x41, 0xf4, 0x30, 0x63, 0x9b, 0xb2, 0x0e, 0x29, 0xcc, 0xbf, 0x4f, 0xf4, + 0x80, 0x51, 0x4f, 0xf4, 0x00, 0x51, 0x19, 0x43, 0xff, 0xf7, 0xa0, 0xff, + 0x01, 0x23, 0x20, 0x46, 0x84, 0xf8, 0xd8, 0x30, 0x08, 0xf0, 0x0b, 0xff, + 0x00, 0x20, 0x10, 0xbd, 0x6f, 0xf0, 0x12, 0x00, 0x10, 0xbd, 0x70, 0xb5, + 0x0d, 0x46, 0x04, 0x46, 0xd0, 0xf8, 0xb0, 0x60, 0xff, 0xf7, 0x91, 0xfc, + 0x1d, 0xbb, 0x04, 0xf5, 0x96, 0x56, 0x0a, 0x21, 0x20, 0x46, 0xf2, 0x8e, + 0xfe, 0xf7, 0x1e, 0xfc, 0x20, 0x46, 0x40, 0xf2, 0x4b, 0x41, 0x2a, 0x46, + 0xfe, 0xf7, 0x18, 0xfc, 0x20, 0x46, 0x29, 0x46, 0x06, 0xf0, 0x4a, 0xf8, + 0xe3, 0x69, 0xf5, 0x86, 0x1b, 0x6d, 0x13, 0xf0, 0x02, 0x03, 0x51, 0xd0, + 0x32, 0x8f, 0xd4, 0xf8, 0xb0, 0x30, 0x4f, 0xf4, 0x7a, 0x70, 0xa3, 0xf8, + 0x9c, 0x24, 0xb2, 0x8f, 0xa3, 0xf8, 0x9e, 0x24, 0xf4, 0xf3, 0xe4, 0xf1, + 0x45, 0xe0, 0xe3, 0x69, 0x1b, 0x6d, 0x9b, 0x07, 0x1e, 0xd5, 0xd4, 0xf8, + 0xb0, 0x20, 0x04, 0xf5, 0x96, 0x53, 0xb2, 0xf8, 0x9c, 0x14, 0xb2, 0xf8, + 0x9e, 0x24, 0x89, 0xb2, 0x92, 0xb2, 0x99, 0x63, 0xda, 0x63, 0xb6, 0xf8, + 0x9c, 0x34, 0x4f, 0xf4, 0x7a, 0x70, 0x23, 0xf4, 0x00, 0x73, 0x1b, 0x04, + 0x1b, 0x0c, 0xa6, 0xf8, 0x9c, 0x34, 0xb6, 0xf8, 0x9e, 0x34, 0x9b, 0xb2, + 0x43, 0xf4, 0x00, 0x73, 0xa6, 0xf8, 0x9e, 0x34, 0xf4, 0xf3, 0xc0, 0xf1, + 0x29, 0x46, 0x20, 0x46, 0x01, 0x22, 0xff, 0xf7, 0x91, 0xff, 0x05, 0x46, + 0xd8, 0xb9, 0x04, 0xf5, 0x96, 0x56, 0xf3, 0x8e, 0x5b, 0xb9, 0x0a, 0x21, + 0x20, 0x46, 0xfe, 0xf7, 0xc4, 0xfb, 0x40, 0xf2, 0x4b, 0x41, 0xf0, 0x86, + 0x4f, 0xf6, 0xff, 0x72, 0x20, 0x46, 0xfe, 0xf7, 0xc7, 0xfb, 0x20, 0x46, + 0x01, 0x21, 0x05, 0xf0, 0xf9, 0xff, 0x20, 0x46, 0x0a, 0x21, 0x4f, 0xf4, + 0x94, 0x72, 0xfe, 0xf7, 0x95, 0xfd, 0x00, 0xe0, 0x1d, 0x46, 0x28, 0x46, + 0x70, 0xbd, 0x38, 0xb5, 0x05, 0x46, 0x0c, 0x46, 0xff, 0xf7, 0x1f, 0xfc, + 0x28, 0x46, 0x3c, 0xb9, 0x06, 0xf0, 0xd0, 0xfd, 0x28, 0x46, 0x4f, 0xf4, + 0x40, 0x41, 0x04, 0xf0, 0x9b, 0xfe, 0x0f, 0xe0, 0x21, 0x46, 0x00, 0x22, + 0xff, 0xf7, 0x5e, 0xff, 0x04, 0x46, 0x48, 0xb9, 0x28, 0x46, 0x21, 0x46, + 0x70, 0x22, 0x23, 0x46, 0x06, 0xf0, 0x1a, 0xfd, 0x28, 0x46, 0x5e, 0x21, + 0x05, 0xf0, 0x48, 0xfa, 0x20, 0x46, 0x38, 0xbd, 0xf8, 0xb5, 0x05, 0x46, + 0x0c, 0x46, 0xff, 0xf7, 0xfe, 0xfb, 0x28, 0x46, 0x21, 0x46, 0x34, 0xb9, + 0x05, 0xf5, 0x96, 0x55, 0x06, 0xf0, 0x64, 0xf8, 0x26, 0x46, 0xac, 0x86, + 0x11, 0xe0, 0x01, 0x22, 0xff, 0xf7, 0x3e, 0xff, 0x06, 0x46, 0x60, 0xb9, + 0x05, 0xf5, 0x96, 0x57, 0xbb, 0x8e, 0x23, 0xb9, 0x28, 0x46, 0x0a, 0x21, + 0xfe, 0xf7, 0x71, 0xfb, 0xb8, 0x86, 0x28, 0x46, 0x21, 0x46, 0x06, 0xf0, + 0x4f, 0xf8, 0x30, 0x46, 0xf8, 0xbd, 0xf7, 0xb5, 0x08, 0x9e, 0x04, 0x46, + 0x0d, 0x46, 0x1f, 0x46, 0x3b, 0xb1, 0x03, 0x2a, 0x05, 0xd9, 0x68, 0x46, + 0x19, 0x46, 0x04, 0x22, 0xef, 0xf3, 0x5a, 0xf5, 0x01, 0xe0, 0x00, 0x23, + 0x00, 0x93, 0xa8, 0x2d, 0x00, 0xf0, 0x05, 0x81, 0x17, 0xdc, 0x5c, 0x2d, + 0x00, 0xf0, 0xb9, 0x80, 0x09, 0xdc, 0x3c, 0x2d, 0x00, 0xf0, 0xaa, 0x80, + 0x4a, 0x2d, 0x00, 0xf0, 0x9c, 0x80, 0x1b, 0x2d, 0x40, 0xf0, 0xf4, 0x80, + 0x27, 0xe0, 0x5e, 0x2d, 0x2e, 0xd0, 0xc0, 0xf2, 0xb3, 0x80, 0x5f, 0x2d, + 0x3b, 0xd0, 0x87, 0x2d, 0x40, 0xf0, 0xea, 0x80, 0x18, 0xe0, 0xc3, 0x2d, + 0x76, 0xd0, 0x06, 0xdc, 0xaa, 0x2d, 0x46, 0xd0, 0x7e, 0xdb, 0xc2, 0x2d, + 0x40, 0xf0, 0xe0, 0x80, 0xe1, 0xe0, 0xd4, 0x2d, 0x00, 0xf0, 0xb7, 0x80, + 0x03, 0xdc, 0xd3, 0x2d, 0x40, 0xf0, 0xd8, 0x80, 0xa4, 0xe0, 0xa5, 0xf5, + 0x9a, 0x75, 0x03, 0x3d, 0x01, 0x2d, 0x00, 0xf2, 0xd1, 0x80, 0xe3, 0xe0, + 0x20, 0x46, 0xff, 0xf7, 0xbe, 0xfc, 0x38, 0x60, 0xde, 0xe0, 0xe3, 0x69, + 0x1d, 0x7f, 0x00, 0x2d, 0x40, 0xf0, 0xd4, 0x80, 0x20, 0x46, 0xfe, 0xf7, + 0x2a, 0xfb, 0xd6, 0xe0, 0x01, 0x23, 0x33, 0x70, 0xe3, 0x69, 0x5b, 0x7f, + 0x00, 0x2b, 0x00, 0xf0, 0xc1, 0x80, 0x20, 0x46, 0xfe, 0xf7, 0x97, 0xfc, + 0x20, 0x46, 0xbd, 0xf8, 0x00, 0x10, 0xfe, 0xf7, 0x08, 0xfb, 0x38, 0x60, + 0x0f, 0xe0, 0x01, 0x23, 0x33, 0x70, 0xe3, 0x69, 0x5b, 0x7f, 0x00, 0x2b, + 0x00, 0xf0, 0xb0, 0x80, 0x20, 0x46, 0xfe, 0xf7, 0x86, 0xfc, 0x00, 0x9a, + 0x20, 0x46, 0x91, 0xb2, 0x12, 0x0c, 0xfe, 0xf7, 0x01, 0xfb, 0x20, 0x46, + 0xfe, 0xf7, 0x81, 0xfc, 0xb0, 0xe0, 0xe3, 0x69, 0x5a, 0x7f, 0x00, 0x2a, + 0x00, 0xf0, 0x9e, 0x80, 0x18, 0x69, 0x3e, 0xf0, 0xf5, 0xd8, 0x20, 0x46, + 0xfe, 0xf7, 0x71, 0xfc, 0x00, 0x23, 0x3b, 0x60, 0xd4, 0xf8, 0xbc, 0x20, + 0x08, 0x2a, 0x13, 0xd1, 0x0d, 0xf1, 0x07, 0x02, 0x20, 0x46, 0x0d, 0xf1, + 0x06, 0x01, 0x8d, 0xf8, 0x06, 0x30, 0x8d, 0xf8, 0x07, 0x30, 0x08, 0xf0, + 0x25, 0xfb, 0x9d, 0xf9, 0x06, 0x20, 0x9d, 0xf9, 0x07, 0x30, 0x92, 0xb2, + 0x9b, 0xb2, 0x43, 0xea, 0x02, 0x23, 0x3b, 0x60, 0x20, 0x46, 0xfe, 0xf7, + 0x58, 0xfc, 0xe3, 0x69, 0x18, 0x69, 0x3e, 0xf0, 0xbd, 0xd8, 0x83, 0xe0, + 0xe3, 0x69, 0x1b, 0x7f, 0x00, 0x2b, 0x74, 0xd0, 0x3b, 0x88, 0x03, 0x2b, + 0x34, 0xbf, 0x6f, 0xf0, 0x0c, 0x05, 0x6f, 0xf0, 0x01, 0x05, 0x78, 0xe0, + 0xe3, 0x69, 0x1b, 0x7f, 0x00, 0x2b, 0x14, 0xbf, 0x6f, 0xf0, 0x0c, 0x05, + 0x6f, 0xf0, 0x03, 0x05, 0x6f, 0xe0, 0xe3, 0x69, 0x1b, 0x7f, 0x00, 0x2b, + 0x64, 0xd1, 0x23, 0x6b, 0x00, 0x2b, 0x5f, 0xd0, 0x20, 0x46, 0x00, 0x99, + 0x98, 0x47, 0x1b, 0xe0, 0xe3, 0x69, 0x1b, 0x7f, 0x00, 0x2b, 0x59, 0xd1, + 0x20, 0x46, 0x00, 0x99, 0x7a, 0x68, 0xbb, 0x68, 0xff, 0xf7, 0x79, 0xfe, + 0x10, 0xe0, 0xe3, 0x69, 0x1b, 0x7f, 0x00, 0x2b, 0x4e, 0xd1, 0x20, 0x46, + 0x00, 0x99, 0xff, 0xf7, 0xe4, 0xfe, 0x07, 0xe0, 0xe3, 0x69, 0x1b, 0x7f, + 0x00, 0x2b, 0x45, 0xd1, 0x20, 0x46, 0x00, 0x99, 0xff, 0xf7, 0xfc, 0xfe, + 0x05, 0x46, 0x46, 0xe0, 0xe3, 0x69, 0x04, 0xf5, 0x80, 0x54, 0xda, 0x6e, + 0x3a, 0x60, 0xa5, 0x69, 0x15, 0xf0, 0x01, 0x05, 0x3d, 0xd0, 0x42, 0xf0, + 0x80, 0x02, 0x3a, 0x60, 0x38, 0xe0, 0x00, 0x9b, 0x04, 0x2b, 0x32, 0xd8, + 0xe2, 0x69, 0xd1, 0x6e, 0x99, 0x42, 0x31, 0xd0, 0x15, 0x7f, 0xd3, 0x66, + 0x00, 0x2d, 0x2e, 0xd0, 0x10, 0x69, 0x3e, 0xf0, 0x77, 0xd8, 0x00, 0x9b, + 0x23, 0xb1, 0x20, 0x46, 0x00, 0x21, 0x01, 0x22, 0xfe, 0xf7, 0xd5, 0xfa, + 0xe3, 0x69, 0x01, 0x22, 0xd9, 0x6e, 0x20, 0x46, 0xfe, 0xf7, 0xcf, 0xfa, + 0xe3, 0x69, 0x00, 0x28, 0x18, 0x69, 0x0c, 0xbf, 0x6f, 0xf0, 0x02, 0x05, + 0x00, 0x25, 0x3e, 0xf0, 0x4d, 0xd8, 0x14, 0xe0, 0x6f, 0xf0, 0x16, 0x05, + 0x11, 0xe0, 0x6f, 0xf0, 0x0c, 0x05, 0x0e, 0xe0, 0x6f, 0xf0, 0x0a, 0x05, + 0x0b, 0xe0, 0x6f, 0xf0, 0x03, 0x05, 0x08, 0xe0, 0x1d, 0x46, 0x06, 0xe0, + 0x6f, 0xf0, 0x04, 0x05, 0x03, 0xe0, 0x6f, 0xf0, 0x1c, 0x05, 0x00, 0xe0, + 0x00, 0x25, 0x28, 0x46, 0xfe, 0xbd, 0xc3, 0x69, 0x9b, 0x69, 0x9b, 0x00, + 0x07, 0xd5, 0xd0, 0xf8, 0xb0, 0x30, 0x03, 0x22, 0xa3, 0xf8, 0xb4, 0x26, + 0xff, 0x22, 0xa3, 0xf8, 0xb8, 0x26, 0x70, 0x47, 0x2d, 0xe9, 0xf0, 0x41, + 0x98, 0x46, 0x88, 0xb0, 0x00, 0x23, 0x07, 0x93, 0x0e, 0x9b, 0x04, 0x46, + 0x03, 0x2b, 0x0d, 0x46, 0x0f, 0x9e, 0x11, 0x9f, 0x04, 0xd9, 0x07, 0xa8, + 0x41, 0x46, 0x04, 0x22, 0xef, 0xf3, 0x1c, 0xf4, 0x07, 0x99, 0x40, 0xf2, + 0x85, 0x20, 0x0b, 0x1c, 0x18, 0xbf, 0x01, 0x23, 0x85, 0x42, 0x1a, 0x46, + 0x00, 0xf0, 0x18, 0x81, 0x35, 0xd8, 0x40, 0xf2, 0x5b, 0x20, 0x85, 0x42, + 0x00, 0xf0, 0x82, 0x80, 0x11, 0xd8, 0x53, 0x2d, 0x09, 0xd8, 0x52, 0x2d, + 0x80, 0xf0, 0x46, 0x81, 0x50, 0x2d, 0x00, 0xf0, 0x43, 0x81, 0x51, 0x2d, + 0x40, 0xf0, 0x42, 0x81, 0x83, 0xe0, 0x40, 0xf2, 0x5a, 0x23, 0x9d, 0x42, + 0x40, 0xf0, 0x3c, 0x81, 0x6b, 0xe0, 0x40, 0xf2, 0x7b, 0x23, 0x9d, 0x42, + 0x00, 0xf0, 0xb9, 0x80, 0x09, 0xd8, 0x40, 0xf2, 0x6a, 0x23, 0x9d, 0x42, + 0x56, 0xd0, 0x40, 0xf2, 0x7a, 0x23, 0x9d, 0x42, 0x40, 0xf0, 0x2c, 0x81, + 0x76, 0xe0, 0xb5, 0xf5, 0x20, 0x7f, 0x00, 0xf0, 0xe0, 0x80, 0xb5, 0xf5, + 0x21, 0x7f, 0x00, 0xf0, 0xec, 0x80, 0x40, 0xf2, 0x7e, 0x23, 0x9d, 0x42, + 0x40, 0xf0, 0x1e, 0x81, 0xd0, 0xe0, 0x40, 0xf2, 0xd6, 0x23, 0x9d, 0x42, + 0x00, 0xf0, 0x16, 0x81, 0x1e, 0xd8, 0x40, 0xf2, 0x93, 0x23, 0x9d, 0x42, + 0x4d, 0xd0, 0x0a, 0xd8, 0x40, 0xf2, 0x86, 0x23, 0x9d, 0x42, 0x00, 0xf0, + 0xdf, 0x80, 0x40, 0xf2, 0x91, 0x23, 0x9d, 0x42, 0x40, 0xf0, 0x08, 0x81, + 0x3d, 0xe0, 0xb5, 0xf5, 0x27, 0x7f, 0x00, 0xf0, 0xdb, 0x80, 0x40, 0xf2, + 0x9d, 0x23, 0x9d, 0x42, 0x00, 0xf0, 0xda, 0x80, 0x40, 0xf2, 0x95, 0x23, + 0x9d, 0x42, 0x40, 0xf0, 0xf9, 0x80, 0x36, 0xe0, 0x40, 0xf2, 0xdd, 0x23, + 0x9d, 0x42, 0x00, 0xf0, 0xed, 0x80, 0x09, 0xd8, 0x40, 0xf2, 0xda, 0x23, + 0x9d, 0x42, 0x00, 0xf0, 0xcf, 0x80, 0xb5, 0xf5, 0x37, 0x7f, 0x40, 0xf0, + 0xe9, 0x80, 0xd6, 0xe0, 0xb5, 0xf5, 0x3d, 0x7f, 0x07, 0xd0, 0xc0, 0xf0, + 0xe3, 0x80, 0xa5, 0xf5, 0x3e, 0x73, 0x06, 0x3b, 0x01, 0x2b, 0x00, 0xf2, + 0xdd, 0x80, 0x6f, 0xf0, 0x16, 0x05, 0xed, 0xe0, 0x20, 0x46, 0xfe, 0xf7, + 0x22, 0xfb, 0x20, 0x46, 0x31, 0x46, 0xfe, 0xf7, 0xbe, 0xfa, 0x20, 0x46, + 0xfe, 0xf7, 0x1f, 0xfb, 0xcc, 0xe0, 0x94, 0xf8, 0xe8, 0x30, 0xa1, 0xe0, + 0x84, 0xf8, 0xe8, 0x30, 0xc6, 0xe0, 0x04, 0xf5, 0x9c, 0x54, 0x61, 0x80, + 0xc2, 0xe0, 0x04, 0xf5, 0x9c, 0x54, 0xa1, 0x80, 0xbe, 0xe0, 0x04, 0xf5, + 0x9c, 0x54, 0xe1, 0x80, 0xba, 0xe0, 0x01, 0x23, 0x0e, 0x93, 0x20, 0x46, + 0x33, 0x46, 0x08, 0xb0, 0xbd, 0xe8, 0xf0, 0x41, 0xfe, 0xf7, 0xf0, 0xb9, + 0xe3, 0x69, 0x1a, 0x7f, 0x00, 0x2a, 0x00, 0xf0, 0xbe, 0x80, 0xd4, 0xf8, + 0xb0, 0x20, 0xd2, 0xf8, 0x20, 0x21, 0x02, 0xf0, 0x01, 0x02, 0x82, 0xf0, + 0x01, 0x07, 0x12, 0xb1, 0x18, 0x69, 0x3d, 0xf0, 0x6f, 0xdf, 0x20, 0x46, + 0xff, 0xf7, 0x23, 0xff, 0x20, 0x46, 0xfe, 0xf7, 0xe8, 0xfa, 0x04, 0xf5, + 0x90, 0x50, 0x45, 0x7a, 0x81, 0x79, 0xc2, 0x79, 0x03, 0x7a, 0x00, 0x95, + 0x85, 0x7a, 0x01, 0x95, 0xc5, 0x7a, 0x02, 0x95, 0x90, 0xf8, 0x21, 0x00, + 0x00, 0x25, 0x03, 0x90, 0x20, 0x46, 0x04, 0x95, 0xfe, 0xf7, 0xdf, 0xf9, + 0x30, 0x60, 0x20, 0x46, 0xfe, 0xf7, 0xd5, 0xfa, 0x00, 0x2f, 0x40, 0xf0, + 0x97, 0x80, 0xe3, 0x69, 0x3d, 0x46, 0x18, 0x69, 0x3d, 0xf0, 0x36, 0xdf, + 0x90, 0xe0, 0x0a, 0x16, 0x02, 0xf0, 0x0f, 0x02, 0x01, 0x2a, 0x00, 0xf2, + 0x89, 0x80, 0x0d, 0x15, 0x05, 0xf0, 0x03, 0x05, 0x01, 0x2d, 0x00, 0xf2, + 0x83, 0x80, 0x88, 0x15, 0x00, 0xf0, 0x03, 0x00, 0x03, 0x28, 0x7d, 0xd0, + 0x0e, 0x14, 0x06, 0xf0, 0x0f, 0x06, 0x01, 0x2e, 0x78, 0xd8, 0x0f, 0x12, + 0xff, 0xb2, 0xa7, 0xf1, 0x0a, 0x03, 0xdb, 0xb2, 0x05, 0x2b, 0x71, 0xd8, + 0xcb, 0xb2, 0x01, 0x2b, 0x01, 0xd9, 0x03, 0x2b, 0x6c, 0xd1, 0x04, 0xf5, + 0x90, 0x54, 0x0e, 0x2f, 0x28, 0xbf, 0x0e, 0x27, 0x09, 0x0f, 0xa7, 0x71, + 0xe3, 0x71, 0x26, 0x72, 0x65, 0x72, 0xa0, 0x72, 0xe2, 0x72, 0x84, 0xf8, + 0x21, 0x10, 0x49, 0xe0, 0x08, 0xa9, 0x01, 0x23, 0x41, 0xf8, 0x04, 0x3d, + 0x07, 0xe0, 0xb4, 0xf8, 0xda, 0x10, 0x20, 0x46, 0xfe, 0xf7, 0xce, 0xfd, + 0x08, 0xa9, 0x41, 0xf8, 0x04, 0x0d, 0x30, 0x46, 0x3a, 0x46, 0x32, 0xe0, + 0x04, 0xf5, 0x80, 0x54, 0x84, 0xf8, 0x3b, 0x10, 0x34, 0xe0, 0x04, 0xf5, + 0x80, 0x54, 0x94, 0xf8, 0x3b, 0x30, 0x08, 0xa9, 0x41, 0xf8, 0x04, 0x3d, + 0x30, 0x46, 0x23, 0xe0, 0xd4, 0xf8, 0xf8, 0x30, 0xc3, 0xf3, 0x00, 0x13, + 0x33, 0x60, 0x25, 0xe0, 0x20, 0x46, 0x32, 0x46, 0x00, 0x23, 0x02, 0xe0, + 0x20, 0x46, 0x32, 0x46, 0x01, 0x23, 0xff, 0xf7, 0xd8, 0xfb, 0x1b, 0xe0, + 0x20, 0x46, 0x01, 0x21, 0x08, 0xf0, 0x6b, 0xf9, 0x00, 0x25, 0x08, 0xa9, + 0x41, 0xf8, 0x04, 0x5d, 0x30, 0x46, 0x04, 0x22, 0xef, 0xf3, 0xd0, 0xf2, + 0x24, 0xe0, 0x20, 0x46, 0x00, 0x21, 0x07, 0xaa, 0x08, 0xf0, 0x7b, 0xfa, + 0x30, 0x46, 0x07, 0xa9, 0x04, 0x22, 0xef, 0xf3, 0xc5, 0xf2, 0x03, 0xe0, + 0x20, 0x46, 0x00, 0x22, 0x08, 0xf0, 0x71, 0xfa, 0x00, 0x25, 0x13, 0xe0, + 0x01, 0x91, 0x02, 0x92, 0x29, 0x46, 0x20, 0x46, 0x42, 0x46, 0x33, 0x46, + 0x00, 0x97, 0xfe, 0xf7, 0xc9, 0xf9, 0x10, 0xf1, 0x17, 0x0f, 0x0c, 0xbf, + 0x05, 0x46, 0x00, 0x25, 0x04, 0xe0, 0x6f, 0xf0, 0x03, 0x05, 0x01, 0xe0, + 0x6f, 0xf0, 0x1c, 0x05, 0x28, 0x46, 0x08, 0xb0, 0xbd, 0xe8, 0xf0, 0x81, + 0xd0, 0xf8, 0xf8, 0x30, 0x13, 0xf0, 0x06, 0x0f, 0x0c, 0xbf, 0x00, 0x20, + 0x01, 0x20, 0x70, 0x47, 0xf8, 0xb5, 0x0d, 0x46, 0xb0, 0xf8, 0xda, 0x10, + 0x04, 0x46, 0x16, 0x46, 0x1f, 0x46, 0xfe, 0xf7, 0x63, 0xfd, 0x40, 0xb9, + 0xb4, 0xf9, 0xfc, 0x30, 0x33, 0x60, 0xb4, 0xf9, 0xfe, 0x30, 0x3b, 0x60, + 0xb4, 0xf9, 0x00, 0x31, 0x2b, 0x60, 0xf8, 0xbd, 0xd0, 0xf8, 0xa8, 0x00, + 0x70, 0x47, 0x00, 0x00, 0x2d, 0xe9, 0xf0, 0x41, 0xc3, 0x69, 0x05, 0x46, + 0x5b, 0x69, 0x0c, 0x46, 0x0a, 0x2b, 0xcf, 0x88, 0x8e, 0x88, 0x06, 0xd9, + 0x48, 0x8a, 0x10, 0xf4, 0x80, 0x70, 0x02, 0xd1, 0x01, 0x23, 0xcb, 0x77, + 0x31, 0xe0, 0x28, 0x46, 0xff, 0xf7, 0xe8, 0xff, 0xb4, 0xf8, 0x08, 0x80, + 0x1b, 0x4b, 0xff, 0xb2, 0x4f, 0xea, 0x98, 0x28, 0x7f, 0x2f, 0x13, 0xf9, + 0x08, 0x30, 0xc8, 0xbf, 0xa7, 0xf5, 0x80, 0x77, 0xff, 0x18, 0x16, 0xf4, + 0x00, 0x6f, 0x05, 0xf5, 0x9a, 0x53, 0x14, 0xbf, 0x93, 0xf9, 0x1b, 0x30, + 0x93, 0xf9, 0x1a, 0x30, 0x90, 0xf9, 0x5f, 0x10, 0xff, 0x18, 0xe2, 0x8a, + 0x79, 0x18, 0x7f, 0x29, 0x02, 0xf4, 0xff, 0x62, 0xc8, 0xbf, 0xa1, 0xf5, + 0x80, 0x71, 0xd2, 0x10, 0x42, 0xf4, 0x30, 0x63, 0x0e, 0x2a, 0xcc, 0xbf, + 0x4f, 0xf4, 0x80, 0x52, 0x4f, 0xf4, 0x00, 0x52, 0x28, 0x46, 0x49, 0xb2, + 0x1a, 0x43, 0xff, 0xf7, 0xa6, 0xfb, 0x01, 0x46, 0xb2, 0x0b, 0x20, 0x77, + 0x49, 0xb2, 0x28, 0x46, 0x02, 0xf0, 0x01, 0x02, 0xbd, 0xe8, 0xf0, 0x41, + 0x07, 0xf0, 0xb4, 0xbc, 0x0e, 0x02, 0x02, 0x00, 0xc3, 0x69, 0x98, 0x6e, + 0x70, 0x47, 0xc3, 0x69, 0x99, 0x66, 0x70, 0x47, 0x10, 0xb5, 0x0c, 0x89, + 0x03, 0x99, 0x02, 0x9b, 0x02, 0x91, 0x04, 0x99, 0x03, 0x91, 0x05, 0x99, + 0x04, 0x91, 0x06, 0x99, 0x05, 0x91, 0x00, 0x69, 0x11, 0x46, 0x22, 0x46, + 0xbd, 0xe8, 0x10, 0x40, 0x2a, 0xf0, 0x38, 0x9b, 0xb0, 0xfb, 0xf1, 0xf3, + 0x10, 0xb5, 0x01, 0xf0, 0x01, 0x04, 0x01, 0xfb, 0x13, 0x00, 0x04, 0xeb, + 0x51, 0x01, 0x08, 0xe0, 0x5b, 0x00, 0x88, 0x42, 0x04, 0xd3, 0x40, 0x1a, + 0x01, 0x33, 0x04, 0xeb, 0x40, 0x00, 0x00, 0xe0, 0x40, 0x00, 0x01, 0x3a, + 0xd2, 0xb2, 0xff, 0x2a, 0xf2, 0xd1, 0x88, 0x42, 0x28, 0xbf, 0x01, 0x33, + 0x18, 0x46, 0x10, 0xbd, 0xd0, 0xf8, 0xa8, 0x30, 0x01, 0x22, 0x5a, 0x86, + 0x70, 0x47, 0xb0, 0xf8, 0xda, 0x10, 0xd0, 0xf8, 0xa8, 0x20, 0xcb, 0xb2, + 0x01, 0xf4, 0x70, 0x41, 0xb1, 0xf5, 0x00, 0x5f, 0x03, 0xd1, 0xd3, 0x18, + 0x93, 0xf8, 0xe7, 0x34, 0x87, 0xe0, 0x70, 0x2b, 0x5d, 0xd0, 0x1c, 0xd8, + 0x38, 0x2b, 0x48, 0xd0, 0x0c, 0xd8, 0x2c, 0x2b, 0x3c, 0xd0, 0x04, 0xd8, + 0x24, 0x2b, 0x33, 0xd0, 0x28, 0x2b, 0x79, 0xd1, 0x33, 0xe0, 0x30, 0x2b, + 0x37, 0xd0, 0x34, 0x2b, 0x74, 0xd1, 0x37, 0xe0, 0x64, 0x2b, 0x41, 0xd0, + 0x04, 0xd8, 0x3c, 0x2b, 0x38, 0xd0, 0x40, 0x2b, 0x6c, 0xd1, 0x38, 0xe0, + 0x68, 0x2b, 0x3c, 0xd0, 0x6c, 0x2b, 0x67, 0xd1, 0x3c, 0xe0, 0x88, 0x2b, + 0x4f, 0xd0, 0x0c, 0xd8, 0x7c, 0x2b, 0x43, 0xd0, 0x04, 0xd8, 0x74, 0x2b, + 0x3a, 0xd0, 0x78, 0x2b, 0x5c, 0xd1, 0x3a, 0xe0, 0x80, 0x2b, 0x3e, 0xd0, + 0x84, 0x2b, 0x57, 0xd1, 0x3e, 0xe0, 0x99, 0x2b, 0x48, 0xd0, 0x04, 0xd8, + 0x8c, 0x2b, 0x3f, 0xd0, 0x95, 0x2b, 0x4f, 0xd1, 0x3f, 0xe0, 0xa1, 0x2b, + 0x46, 0xd0, 0xa5, 0x2b, 0x47, 0xd0, 0x9d, 0x2b, 0x48, 0xd1, 0x3e, 0xe0, + 0x92, 0xf8, 0xf6, 0x34, 0x45, 0xe0, 0x92, 0xf8, 0xf7, 0x34, 0x42, 0xe0, + 0x92, 0xf8, 0xf8, 0x34, 0x3f, 0xe0, 0x92, 0xf8, 0xf9, 0x34, 0x3c, 0xe0, + 0x92, 0xf8, 0xfa, 0x34, 0x39, 0xe0, 0x92, 0xf8, 0xfb, 0x34, 0x36, 0xe0, + 0x92, 0xf8, 0xfc, 0x34, 0x33, 0xe0, 0x92, 0xf8, 0xfd, 0x34, 0x30, 0xe0, + 0x92, 0xf8, 0xfe, 0x34, 0x2d, 0xe0, 0x92, 0xf8, 0xff, 0x34, 0x2a, 0xe0, + 0x92, 0xf8, 0x00, 0x35, 0x27, 0xe0, 0x92, 0xf8, 0x01, 0x35, 0x24, 0xe0, + 0x92, 0xf8, 0x02, 0x35, 0x21, 0xe0, 0x92, 0xf8, 0x03, 0x35, 0x1e, 0xe0, + 0x92, 0xf8, 0x04, 0x35, 0x1b, 0xe0, 0x92, 0xf8, 0x05, 0x35, 0x18, 0xe0, + 0x92, 0xf8, 0x06, 0x35, 0x15, 0xe0, 0x92, 0xf8, 0x07, 0x35, 0x12, 0xe0, + 0x92, 0xf8, 0x08, 0x35, 0x0f, 0xe0, 0x92, 0xf8, 0x09, 0x35, 0x0c, 0xe0, + 0x92, 0xf8, 0x0a, 0x35, 0x09, 0xe0, 0x92, 0xf8, 0x0b, 0x35, 0x06, 0xe0, + 0x92, 0xf8, 0x0c, 0x35, 0x03, 0xe0, 0x92, 0xf8, 0x0d, 0x35, 0x00, 0xe0, + 0x00, 0x23, 0xd2, 0xf8, 0xe4, 0x14, 0x90, 0xf8, 0x2a, 0x26, 0x8a, 0x1a, + 0xd3, 0x18, 0x58, 0xb2, 0x70, 0x47, 0x08, 0x46, 0x70, 0x47, 0x49, 0xb2, + 0x48, 0x1c, 0x40, 0x10, 0x49, 0x10, 0x08, 0x31, 0xc0, 0xf1, 0x08, 0x00, + 0x41, 0xea, 0x00, 0x10, 0x80, 0xb2, 0x70, 0x47, 0xb0, 0xf8, 0xda, 0x20, + 0xd0, 0xf8, 0xa8, 0x30, 0x02, 0xf4, 0x70, 0x42, 0xb2, 0xf5, 0x00, 0x5f, + 0x06, 0xd1, 0x93, 0xf8, 0x3c, 0x05, 0x43, 0xb2, 0x01, 0x33, 0x03, 0xd0, + 0xc0, 0xb2, 0x70, 0x47, 0x00, 0x20, 0x70, 0x47, 0x00, 0x20, 0x70, 0x47, + 0x38, 0xb5, 0x04, 0x46, 0xd0, 0xf8, 0xa8, 0x50, 0xff, 0xf7, 0xe6, 0xff, + 0x10, 0xb9, 0x95, 0xf8, 0x46, 0x05, 0x40, 0xb1, 0xb4, 0xf8, 0xda, 0x00, + 0x00, 0xf4, 0x70, 0x40, 0xa0, 0xf5, 0x00, 0x53, 0x58, 0x42, 0x40, 0xeb, + 0x03, 0x00, 0x38, 0xbd, 0x30, 0xb5, 0xd0, 0xf8, 0xa8, 0x00, 0x8f, 0xb0, + 0x00, 0x23, 0x00, 0x25, 0x01, 0xac, 0x1d, 0x55, 0x01, 0x33, 0x32, 0x2b, + 0xf9, 0xd1, 0x53, 0x1c, 0x90, 0xf8, 0xe9, 0x33, 0x06, 0xd1, 0x11, 0xb1, + 0xb0, 0xf9, 0x3e, 0x25, 0x03, 0xe0, 0xb0, 0xf9, 0x40, 0x25, 0x11, 0xe0, + 0x81, 0xb1, 0xa0, 0x2b, 0x4f, 0xf0, 0x00, 0x03, 0x8d, 0xf8, 0x04, 0x30, + 0x1d, 0xbf, 0x8d, 0xf8, 0x05, 0x30, 0x8d, 0xf8, 0x06, 0x30, 0x8d, 0xf8, + 0x07, 0x30, 0x8d, 0xf8, 0x06, 0x30, 0x8d, 0xf8, 0x08, 0x30, 0x31, 0xe0, + 0xa0, 0x2b, 0x4f, 0xf0, 0x00, 0x03, 0x15, 0xd0, 0x01, 0x21, 0x8d, 0xf8, + 0x18, 0x10, 0x8d, 0xf8, 0x19, 0x10, 0xfe, 0x21, 0x8d, 0xf8, 0x1c, 0x10, + 0x8d, 0xf8, 0x1d, 0x10, 0xff, 0x21, 0x8d, 0xf8, 0x1a, 0x30, 0x8d, 0xf8, + 0x1b, 0x30, 0x8d, 0xf8, 0x1e, 0x30, 0x8d, 0xf8, 0x1f, 0x10, 0x8d, 0xf8, + 0x22, 0x30, 0x17, 0xe0, 0x02, 0x21, 0x8d, 0xf8, 0x18, 0x10, 0xfc, 0x21, + 0x8d, 0xf8, 0x19, 0x30, 0x8d, 0xf8, 0x1a, 0x30, 0x8d, 0xf8, 0x1b, 0x30, + 0x8d, 0xf8, 0x1c, 0x10, 0x8d, 0xf8, 0x22, 0x30, 0xfe, 0x21, 0x04, 0x23, + 0x8d, 0xf8, 0x1d, 0x10, 0x8d, 0xf8, 0x1e, 0x10, 0x8d, 0xf8, 0x1f, 0x10, + 0x8d, 0xf8, 0x30, 0x30, 0x0e, 0xab, 0x9a, 0x18, 0x12, 0xf9, 0x34, 0x0c, + 0x0f, 0xb0, 0x30, 0xbd, 0x10, 0xb5, 0xc1, 0x69, 0x00, 0xf5, 0x81, 0x52, + 0x0b, 0x6a, 0x12, 0x68, 0xd0, 0xf8, 0xa8, 0x40, 0x93, 0x42, 0x01, 0xd3, + 0x9b, 0x1a, 0x01, 0xe0, 0xd2, 0x43, 0xd3, 0x18, 0x94, 0xf8, 0xbc, 0x42, + 0x90, 0xf8, 0xda, 0x20, 0x94, 0x42, 0x05, 0xd1, 0x88, 0x6e, 0x83, 0x42, + 0x34, 0xbf, 0x00, 0x20, 0x01, 0x20, 0x10, 0xbd, 0x01, 0x20, 0x10, 0xbd, + 0x70, 0x47, 0xd0, 0xf8, 0xa8, 0x30, 0x93, 0xf8, 0x06, 0x04, 0x00, 0x28, + 0x08, 0xbf, 0x10, 0x20, 0x70, 0x47, 0x00, 0x00, 0x10, 0x23, 0x16, 0x4a, + 0x30, 0xb5, 0x19, 0x46, 0x04, 0x24, 0x49, 0xb2, 0x49, 0x10, 0xc9, 0xb2, + 0x02, 0x42, 0x4d, 0xb2, 0x03, 0xd0, 0xcb, 0x18, 0xdb, 0xb2, 0xaa, 0x40, + 0x02, 0xe0, 0xea, 0x40, 0x5b, 0x1a, 0xdb, 0xb2, 0x01, 0x3c, 0xf0, 0xd1, + 0x02, 0x42, 0x01, 0xd1, 0x01, 0x3b, 0xdb, 0xb2, 0x03, 0xeb, 0x43, 0x01, + 0x5b, 0xb2, 0xc9, 0xb2, 0x03, 0x2b, 0x0a, 0x46, 0x0c, 0xdd, 0x03, 0x3b, + 0xd8, 0x40, 0x0d, 0x28, 0x01, 0xd9, 0xca, 0x1c, 0x06, 0xe0, 0x0a, 0x28, + 0x01, 0xd9, 0x8a, 0x1c, 0x02, 0xe0, 0x08, 0x28, 0x88, 0xbf, 0x4a, 0x1c, + 0x50, 0xb2, 0x30, 0xbd, 0x00, 0x00, 0xff, 0xff, 0xd0, 0xf8, 0xa8, 0x30, + 0x00, 0x22, 0x83, 0xf8, 0x90, 0x23, 0x83, 0xf8, 0x91, 0x23, 0x83, 0xf8, + 0x92, 0x23, 0x83, 0xf8, 0x93, 0x23, 0x83, 0xf8, 0x94, 0x23, 0x70, 0x47, + 0x70, 0x47, 0x08, 0xb5, 0x40, 0xf2, 0xa4, 0x41, 0xfd, 0xf7, 0x63, 0xfe, + 0x00, 0xf4, 0x40, 0x40, 0x08, 0xbd, 0x70, 0xb5, 0x0c, 0x46, 0x40, 0xf2, + 0x39, 0x41, 0x06, 0x46, 0xfd, 0xf7, 0x59, 0xfe, 0x00, 0xf4, 0x60, 0x70, + 0xc0, 0x11, 0xe0, 0x80, 0x40, 0xf2, 0xb5, 0x41, 0x30, 0x46, 0xfd, 0xf7, + 0x50, 0xfe, 0x40, 0xf2, 0xfb, 0x41, 0x05, 0x46, 0x30, 0x46, 0xfd, 0xf7, + 0x4a, 0xfe, 0xeb, 0xb2, 0xc0, 0xb2, 0x2d, 0x0a, 0x23, 0x80, 0x65, 0x80, + 0xa0, 0x80, 0x70, 0xbd, 0x08, 0xb5, 0x40, 0xf2, 0xfb, 0x41, 0xfd, 0xf7, + 0x3e, 0xfe, 0x00, 0xf4, 0xfe, 0x40, 0x00, 0x0a, 0x08, 0xbd, 0x2d, 0xe9, + 0xf8, 0x43, 0x0d, 0x46, 0x40, 0xf2, 0xb7, 0x61, 0x04, 0x46, 0x91, 0x46, + 0xfd, 0xf7, 0x31, 0xfe, 0x40, 0xf2, 0xb6, 0x61, 0x80, 0x46, 0x20, 0x46, + 0xfd, 0xf7, 0x2b, 0xfe, 0x40, 0xf2, 0xb5, 0x61, 0x07, 0x46, 0x20, 0x46, + 0xfd, 0xf7, 0x25, 0xfe, 0x40, 0xf2, 0xb4, 0x61, 0x06, 0x46, 0x20, 0x46, + 0x00, 0x24, 0xfd, 0xf7, 0x1e, 0xfe, 0x21, 0x46, 0x23, 0x46, 0x50, 0xfa, + 0x04, 0xf2, 0x12, 0xf0, 0x01, 0x02, 0x02, 0xd1, 0x01, 0x31, 0xc9, 0xb2, + 0x00, 0xe0, 0x01, 0x22, 0x01, 0x33, 0xdb, 0xb2, 0x10, 0x2b, 0x12, 0xd0, + 0x01, 0x34, 0x00, 0x2a, 0xef, 0xd0, 0x01, 0x22, 0x0d, 0xe0, 0xa3, 0xf1, + 0x10, 0x04, 0x56, 0xfa, 0x04, 0xf4, 0xe4, 0x07, 0x02, 0xd4, 0x01, 0x31, + 0xc9, 0xb2, 0x00, 0xe0, 0x01, 0x22, 0x01, 0x33, 0xdb, 0xb2, 0x1f, 0x2b, + 0x0f, 0xd8, 0x00, 0x2a, 0xef, 0xd0, 0x01, 0x22, 0x0b, 0xe0, 0xa3, 0xf1, + 0x20, 0x04, 0x57, 0xfa, 0x04, 0xf4, 0xe4, 0x07, 0x02, 0xd4, 0x01, 0x31, + 0xc9, 0xb2, 0x00, 0xe0, 0x01, 0x22, 0x01, 0x33, 0xdb, 0xb2, 0x2f, 0x2b, + 0x0f, 0xd8, 0x00, 0x2a, 0xef, 0xd0, 0x01, 0x22, 0x0b, 0xe0, 0xa3, 0xf1, + 0x30, 0x04, 0x48, 0xfa, 0x04, 0xf4, 0xe4, 0x07, 0x02, 0xd4, 0x01, 0x31, + 0xc9, 0xb2, 0x00, 0xe0, 0x01, 0x22, 0x01, 0x33, 0xdb, 0xb2, 0x3f, 0x2b, + 0x04, 0xd9, 0x4f, 0xf0, 0x0f, 0x0c, 0x00, 0x23, 0x3f, 0x24, 0x02, 0xe0, + 0x00, 0x2a, 0xea, 0xd0, 0xf7, 0xe7, 0x48, 0xfa, 0x0c, 0xf2, 0x12, 0xf0, + 0x01, 0x02, 0x02, 0xd1, 0x01, 0x3c, 0xe4, 0xb2, 0x00, 0xe0, 0x01, 0x22, + 0x01, 0x33, 0xdb, 0xb2, 0x10, 0x2b, 0x14, 0xd0, 0x0c, 0xf1, 0xff, 0x3c, + 0x00, 0x2a, 0xee, 0xd0, 0x01, 0x22, 0x0e, 0xe0, 0xc3, 0xf1, 0x1f, 0x0c, + 0x47, 0xfa, 0x0c, 0xfc, 0x1c, 0xf0, 0x01, 0x0f, 0x02, 0xd1, 0x01, 0x3c, + 0xe4, 0xb2, 0x00, 0xe0, 0x01, 0x22, 0x01, 0x33, 0xdb, 0xb2, 0x1f, 0x2b, + 0x10, 0xd8, 0x00, 0x2a, 0xee, 0xd0, 0x01, 0x22, 0x0c, 0xe0, 0xc3, 0xf1, + 0x2f, 0x07, 0x56, 0xfa, 0x07, 0xf7, 0x17, 0xf0, 0x01, 0x0f, 0x02, 0xd1, + 0x01, 0x3c, 0xe4, 0xb2, 0x00, 0xe0, 0x01, 0x22, 0x01, 0x33, 0xdb, 0xb2, + 0x2f, 0x2b, 0x10, 0xd8, 0x00, 0x2a, 0xee, 0xd0, 0x01, 0x22, 0x0c, 0xe0, + 0xc3, 0xf1, 0x3f, 0x06, 0x50, 0xfa, 0x06, 0xf6, 0x16, 0xf0, 0x01, 0x0f, + 0x02, 0xd1, 0x01, 0x3c, 0xe4, 0xb2, 0x00, 0xe0, 0x01, 0x22, 0x01, 0x33, + 0xdb, 0xb2, 0x3f, 0x2b, 0x01, 0xd8, 0x00, 0x2a, 0xee, 0xd0, 0x2c, 0x70, + 0x89, 0xf8, 0x00, 0x10, 0xbd, 0xe8, 0xf8, 0x83, 0x38, 0xb5, 0x40, 0xf2, + 0x23, 0x41, 0xd0, 0xf8, 0xa8, 0x40, 0x05, 0x46, 0xfd, 0xf7, 0x79, 0xfd, + 0xc0, 0xb2, 0xa4, 0xf8, 0x64, 0x03, 0x4f, 0xf4, 0xaa, 0x61, 0x28, 0x46, + 0xfd, 0xf7, 0x71, 0xfd, 0x80, 0x05, 0x80, 0x0d, 0xa4, 0xf8, 0x68, 0x03, + 0x40, 0xf2, 0x34, 0x41, 0x28, 0x46, 0xfd, 0xf7, 0x68, 0xfd, 0xc0, 0xb2, + 0x7f, 0x28, 0xa4, 0xf8, 0x66, 0x03, 0xc4, 0xbf, 0xa0, 0xf5, 0x80, 0x70, + 0xa4, 0xf8, 0x66, 0x03, 0x40, 0xf2, 0x32, 0x41, 0x28, 0x46, 0xfd, 0xf7, + 0x5a, 0xfd, 0xc0, 0xb2, 0x7f, 0x28, 0xc4, 0xbf, 0xa0, 0xf5, 0x80, 0x70, + 0x80, 0xb2, 0x84, 0xf8, 0xbc, 0x03, 0x38, 0xbd, 0x2d, 0xe9, 0xf8, 0x43, + 0xb0, 0xf8, 0xda, 0x20, 0x04, 0x46, 0x02, 0xf4, 0x70, 0x42, 0xb2, 0xf5, + 0x80, 0x5f, 0xd0, 0xf8, 0xa8, 0x30, 0x07, 0xd1, 0xb3, 0xf8, 0x92, 0x05, + 0x03, 0xb2, 0x01, 0x33, 0x55, 0xd0, 0x80, 0xb2, 0xbd, 0xe8, 0xf8, 0x83, + 0xb3, 0xf8, 0x90, 0x35, 0x1a, 0xb2, 0x01, 0x32, 0x02, 0xd0, 0x98, 0xb2, + 0xbd, 0xe8, 0xf8, 0x83, 0x40, 0xf2, 0xa5, 0x41, 0xfd, 0xf7, 0x31, 0xfd, + 0x40, 0xf2, 0xa5, 0x41, 0x81, 0x46, 0x20, 0x46, 0xfd, 0xf7, 0x2b, 0xfd, + 0x40, 0xf2, 0x0d, 0x41, 0x80, 0x46, 0x20, 0x46, 0xfd, 0xf7, 0x25, 0xfd, + 0x40, 0xf2, 0x0d, 0x41, 0x07, 0x46, 0x20, 0x46, 0xfd, 0xf7, 0x1f, 0xfd, + 0x40, 0xf2, 0xa2, 0x41, 0x06, 0x46, 0x20, 0x46, 0xfd, 0xf7, 0x19, 0xfd, + 0x40, 0xf2, 0xa2, 0x41, 0x05, 0x46, 0x20, 0x46, 0xfd, 0xf7, 0x13, 0xfd, + 0x08, 0xf4, 0xe0, 0x48, 0x01, 0x23, 0x4f, 0xea, 0x28, 0x38, 0x03, 0xfa, + 0x08, 0xf8, 0x06, 0xf4, 0xe0, 0x66, 0x00, 0xf4, 0xe0, 0x60, 0x36, 0x12, + 0x00, 0x12, 0x13, 0xfa, 0x06, 0xf6, 0x13, 0xfa, 0x00, 0xf0, 0x5f, 0xfa, + 0x89, 0xf9, 0x1f, 0xfa, 0x88, 0xf8, 0xc1, 0x44, 0xff, 0xb2, 0x4f, 0x44, + 0xb6, 0xb2, 0xed, 0xb2, 0x80, 0xb2, 0xbf, 0x19, 0x28, 0x18, 0x07, 0xeb, + 0x40, 0x00, 0x28, 0x30, 0x98, 0x40, 0x80, 0xb2, 0xb0, 0xf5, 0xc8, 0x6f, + 0x38, 0xbf, 0x4f, 0xf4, 0xc8, 0x60, 0xbd, 0xe8, 0xf8, 0x83, 0x4f, 0xf4, + 0xc8, 0x70, 0xbd, 0xe8, 0xf8, 0x83, 0x70, 0xb5, 0x0d, 0x46, 0x40, 0xf2, + 0x39, 0x41, 0x04, 0x46, 0xfd, 0xf7, 0xdf, 0xfc, 0x40, 0xf6, 0x7f, 0x43, + 0x03, 0x40, 0x43, 0xea, 0xc5, 0x13, 0x20, 0x46, 0x40, 0xf2, 0x39, 0x41, + 0x40, 0xf6, 0xff, 0x72, 0x9b, 0xb2, 0xbd, 0xe8, 0x70, 0x40, 0xfd, 0xf7, + 0xc1, 0xbe, 0x70, 0xb5, 0x0c, 0x1c, 0x18, 0xbf, 0x01, 0x24, 0x05, 0x46, + 0x80, 0x22, 0xe3, 0x01, 0x4f, 0xf4, 0x96, 0x61, 0xfd, 0xf7, 0xb6, 0xfe, + 0x28, 0x46, 0xa3, 0x03, 0x4f, 0xf4, 0x96, 0x61, 0x4f, 0xf4, 0x80, 0x42, + 0xfd, 0xf7, 0xae, 0xfe, 0x28, 0x46, 0x40, 0xf2, 0x3b, 0x41, 0x40, 0x22, + 0xa3, 0x01, 0xbd, 0xe8, 0x70, 0x40, 0xfd, 0xf7, 0xa5, 0xbe, 0x70, 0xb5, + 0x0c, 0x46, 0x05, 0x46, 0xff, 0xf7, 0x6c, 0xfe, 0x62, 0x88, 0x23, 0x88, + 0x06, 0x46, 0x43, 0xea, 0x02, 0x23, 0x28, 0x46, 0x40, 0xf2, 0xb5, 0x41, + 0x4f, 0xf6, 0xff, 0x72, 0x9b, 0xb2, 0xfd, 0xf7, 0x93, 0xfe, 0x36, 0x02, + 0xa3, 0x88, 0xb6, 0xb2, 0x28, 0x46, 0x33, 0x43, 0x40, 0xf2, 0xfb, 0x41, + 0x47, 0xf6, 0xff, 0x72, 0xfd, 0xf7, 0x88, 0xfe, 0x62, 0x88, 0x23, 0x88, + 0x28, 0x46, 0x43, 0xea, 0x02, 0x23, 0x40, 0xf2, 0xfc, 0x41, 0x4f, 0xf6, + 0xff, 0x72, 0x9b, 0xb2, 0xfd, 0xf7, 0x7c, 0xfe, 0xa3, 0x88, 0x28, 0x46, + 0x47, 0xf6, 0xff, 0x72, 0x33, 0x43, 0x40, 0xf2, 0xfd, 0x41, 0xfd, 0xf7, + 0x73, 0xfe, 0x28, 0x46, 0xe1, 0x88, 0xff, 0xf7, 0x98, 0xff, 0x28, 0x46, + 0x01, 0x21, 0xbd, 0xe8, 0x70, 0x40, 0xff, 0xf7, 0xa8, 0xbf, 0x70, 0xb5, + 0x0c, 0x1c, 0x18, 0xbf, 0x01, 0x24, 0x05, 0x46, 0x23, 0x02, 0x4f, 0xf4, + 0x96, 0x61, 0x4f, 0xf4, 0x80, 0x72, 0xfd, 0xf7, 0x5d, 0xfe, 0x01, 0x22, + 0x28, 0x46, 0x40, 0xf2, 0x4c, 0x41, 0x23, 0x46, 0xfd, 0xf7, 0x56, 0xfe, + 0x23, 0x03, 0x28, 0x46, 0x4f, 0xf4, 0x96, 0x61, 0x4f, 0xf4, 0x80, 0x52, + 0xfd, 0xf7, 0x4e, 0xfe, 0x63, 0x03, 0x28, 0x46, 0x4f, 0xf4, 0x96, 0x61, + 0x4f, 0xf4, 0x00, 0x52, 0xfd, 0xf7, 0x46, 0xfe, 0x20, 0x22, 0x63, 0x01, + 0x28, 0x46, 0x4f, 0xf4, 0x96, 0x61, 0xfd, 0xf7, 0x3f, 0xfe, 0x63, 0x02, + 0x28, 0x46, 0x40, 0xf2, 0xae, 0x41, 0x4f, 0xf4, 0x00, 0x72, 0xfd, 0xf7, + 0x37, 0xfe, 0xb5, 0xf8, 0xda, 0x30, 0x03, 0xf4, 0x70, 0x43, 0xb3, 0xf5, + 0x00, 0x5f, 0x10, 0xd1, 0x28, 0x46, 0xa3, 0x02, 0x4f, 0xf4, 0x96, 0x61, + 0x4f, 0xf4, 0x80, 0x62, 0xfd, 0xf7, 0x28, 0xfe, 0x28, 0x46, 0x40, 0xf2, + 0xe5, 0x41, 0x08, 0x22, 0xe3, 0x00, 0xbd, 0xe8, 0x70, 0x40, 0xfd, 0xf7, + 0x1f, 0xbe, 0x70, 0xbd, 0x09, 0x02, 0x70, 0xb5, 0x8c, 0xb2, 0x23, 0x46, + 0x40, 0xf2, 0xfb, 0x41, 0x4f, 0xf4, 0xfe, 0x42, 0x05, 0x46, 0xfd, 0xf7, + 0x13, 0xfe, 0x28, 0x46, 0x40, 0xf2, 0xfd, 0x41, 0x4f, 0xf4, 0xfe, 0x42, + 0x23, 0x46, 0xbd, 0xe8, 0x70, 0x40, 0xfd, 0xf7, 0x09, 0xbe, 0x70, 0xb5, + 0x0e, 0x46, 0x04, 0x46, 0x15, 0x46, 0x33, 0x46, 0x40, 0xf2, 0x45, 0x61, + 0x40, 0xf2, 0xff, 0x32, 0xfd, 0xf7, 0xfe, 0xfd, 0x20, 0x46, 0x2b, 0x46, + 0x40, 0xf2, 0x46, 0x61, 0x40, 0xf2, 0xff, 0x32, 0xfd, 0xf7, 0xf6, 0xfd, + 0x20, 0x46, 0x33, 0x46, 0x40, 0xf2, 0x47, 0x61, 0x40, 0xf2, 0xff, 0x32, + 0xfd, 0xf7, 0xee, 0xfd, 0x20, 0x46, 0x2b, 0x46, 0x4f, 0xf4, 0xc9, 0x61, + 0x40, 0xf2, 0xff, 0x32, 0xfd, 0xf7, 0xe6, 0xfd, 0x20, 0x46, 0x33, 0x46, + 0x40, 0xf2, 0x49, 0x61, 0x40, 0xf2, 0xff, 0x32, 0xfd, 0xf7, 0xde, 0xfd, + 0x20, 0x46, 0x40, 0xf2, 0x4a, 0x61, 0x40, 0xf2, 0xff, 0x32, 0x2b, 0x46, + 0xbd, 0xe8, 0x70, 0x40, 0xfd, 0xf7, 0xd4, 0xbd, 0x01, 0x49, 0x0c, 0x22, + 0xfd, 0xf7, 0xe2, 0xbd, 0xec, 0xe9, 0x01, 0x00, 0x2d, 0xe9, 0xf0, 0x47, + 0x1f, 0x46, 0xbd, 0xf8, 0x2c, 0x50, 0xbd, 0xf8, 0x24, 0x30, 0xbd, 0xf8, + 0x20, 0xe0, 0x89, 0x46, 0x90, 0x46, 0xbd, 0xf8, 0x28, 0x10, 0x05, 0xf0, + 0x03, 0x02, 0x03, 0xf0, 0x0f, 0x03, 0x42, 0xea, 0x03, 0x23, 0x43, 0xea, + 0x0e, 0x33, 0x4f, 0xea, 0x81, 0x1e, 0x5f, 0xfa, 0x8e, 0xfe, 0x43, 0xea, + 0x0e, 0x03, 0x01, 0xf0, 0x03, 0x01, 0x43, 0xea, 0x01, 0x13, 0x43, 0xea, + 0x82, 0x03, 0x40, 0xf2, 0xb6, 0x41, 0x4f, 0xf6, 0xff, 0x72, 0x9b, 0xb2, + 0x04, 0x46, 0xbd, 0xf8, 0x30, 0x60, 0xfd, 0xf7, 0xa3, 0xfd, 0x0f, 0x22, + 0x07, 0xea, 0x02, 0x03, 0xef, 0x02, 0x20, 0x46, 0x40, 0xf2, 0xb7, 0x41, + 0xbf, 0xb2, 0xfd, 0xf7, 0x99, 0xfd, 0x36, 0x03, 0x3b, 0x46, 0x20, 0x46, + 0x40, 0xf2, 0xb1, 0x41, 0x4f, 0xf4, 0x60, 0x52, 0xfd, 0xf7, 0x90, 0xfd, + 0xb6, 0xb2, 0x06, 0x22, 0x20, 0x46, 0x21, 0x49, 0xfd, 0xf7, 0x9c, 0xfd, + 0x20, 0x46, 0x40, 0xf2, 0xae, 0x41, 0x4f, 0xf4, 0x70, 0x42, 0x33, 0x46, + 0xfd, 0xf7, 0x82, 0xfd, 0x4f, 0xea, 0x48, 0x23, 0x20, 0x46, 0x40, 0xf2, + 0xb1, 0x41, 0x4f, 0xf4, 0x00, 0x72, 0x03, 0xf4, 0x7e, 0x43, 0xfd, 0xf7, + 0x77, 0xfd, 0x01, 0x22, 0xd9, 0xf1, 0x01, 0x03, 0x38, 0xbf, 0x00, 0x23, + 0x20, 0x46, 0x40, 0xf2, 0x4d, 0x41, 0xfd, 0xf7, 0x6d, 0xfd, 0xb4, 0xf8, + 0xda, 0x30, 0x03, 0xf4, 0x70, 0x43, 0xb3, 0xf5, 0x00, 0x5f, 0x11, 0xd1, + 0x20, 0x46, 0x40, 0xf2, 0xb1, 0x41, 0x4f, 0xf4, 0xc0, 0x52, 0x3b, 0x46, + 0xfd, 0xf7, 0x5e, 0xfd, 0xed, 0x00, 0x4f, 0xf6, 0xf8, 0x73, 0x20, 0x46, + 0x40, 0xf2, 0xe6, 0x41, 0x18, 0x22, 0x2b, 0x40, 0xfd, 0xf7, 0x54, 0xfd, + 0x20, 0x46, 0x40, 0xf2, 0xae, 0x41, 0x4f, 0xf4, 0x70, 0x42, 0x33, 0x46, + 0xbd, 0xe8, 0xf0, 0x47, 0xfd, 0xf7, 0x4a, 0xbd, 0x20, 0xee, 0x01, 0x00, + 0x10, 0xb5, 0x04, 0x46, 0x86, 0xb0, 0x31, 0xb9, 0x0f, 0x49, 0x0e, 0x22, + 0x06, 0xb0, 0xbd, 0xe8, 0x10, 0x40, 0xfd, 0xf7, 0x4f, 0xbd, 0x09, 0x22, + 0x0c, 0x49, 0xfd, 0xf7, 0x4b, 0xfd, 0x00, 0x21, 0x03, 0x22, 0x06, 0x23, + 0x00, 0x93, 0x02, 0x92, 0x04, 0x23, 0x03, 0x92, 0x20, 0x46, 0x0a, 0x46, + 0x04, 0x91, 0x01, 0x93, 0xff, 0xf7, 0x5e, 0xff, 0x20, 0x46, 0x01, 0x21, + 0x06, 0xb0, 0xbd, 0xe8, 0x10, 0x40, 0xff, 0xf7, 0xbc, 0xbe, 0x00, 0xbf, + 0x18, 0xe7, 0x01, 0x00, 0x12, 0xe8, 0x01, 0x00, 0xd0, 0xf8, 0xa8, 0x30, + 0xd3, 0xf8, 0x74, 0x15, 0x29, 0xb1, 0xc3, 0x69, 0x4f, 0xf4, 0x20, 0x72, + 0x98, 0x68, 0xf3, 0xf3, 0xdd, 0xb3, 0x70, 0x47, 0xf8, 0xb5, 0xd0, 0xf8, + 0xa8, 0x30, 0x06, 0x46, 0xd3, 0xf8, 0x7c, 0x55, 0xd3, 0xf8, 0x78, 0x75, + 0x00, 0x24, 0x0d, 0xe0, 0x14, 0x23, 0x63, 0x43, 0xe9, 0x18, 0x0a, 0x69, + 0x49, 0x68, 0xf0, 0x69, 0x4a, 0x43, 0x80, 0x68, 0xe9, 0x58, 0xd2, 0x08, + 0xf3, 0xf3, 0xc6, 0xf3, 0x01, 0x34, 0xe4, 0xb2, 0xbc, 0x42, 0xef, 0xd3, + 0xf8, 0xbd, 0x38, 0xb5, 0xd0, 0xf8, 0xa8, 0x40, 0x05, 0x46, 0xd4, 0xf8, + 0x7c, 0x35, 0x73, 0xb1, 0x01, 0x21, 0xff, 0xf7, 0xdb, 0xff, 0xea, 0x69, + 0xd4, 0xf8, 0x78, 0x35, 0x90, 0x68, 0x14, 0x22, 0x5a, 0x43, 0xd4, 0xf8, + 0x7c, 0x15, 0xbd, 0xe8, 0x38, 0x40, 0xf3, 0xf3, 0xab, 0xb3, 0x38, 0xbd, + 0x00, 0xf5, 0x98, 0x53, 0x19, 0x69, 0x10, 0xb5, 0x04, 0x46, 0x29, 0xb1, + 0xc3, 0x69, 0x42, 0xf6, 0x08, 0x52, 0x98, 0x68, 0xf3, 0xf3, 0x9e, 0xf3, + 0x20, 0x46, 0xff, 0xf7, 0xb3, 0xff, 0x20, 0x46, 0xff, 0xf7, 0xd7, 0xff, + 0xe3, 0x69, 0xd4, 0xf8, 0xa8, 0x10, 0x98, 0x68, 0x40, 0xf2, 0xcc, 0x52, + 0xbd, 0xe8, 0x10, 0x40, 0xf3, 0xf3, 0x8e, 0xb3, 0x10, 0xb5, 0x4f, 0xf4, + 0x80, 0x52, 0x04, 0x46, 0x00, 0x23, 0x40, 0xf2, 0xc9, 0x61, 0xfd, 0xf7, + 0xbd, 0xfc, 0xd4, 0xf8, 0xa8, 0x30, 0xb3, 0xf8, 0xc2, 0x24, 0xd2, 0xb1, + 0x93, 0xf8, 0xe9, 0x33, 0x20, 0x46, 0xa0, 0x2b, 0x40, 0xf2, 0x89, 0x61, + 0x01, 0xd1, 0x23, 0x22, 0x00, 0xe0, 0x30, 0x22, 0xfd, 0xf7, 0xc6, 0xfa, + 0xd4, 0xf8, 0xa8, 0x30, 0xb3, 0xf8, 0xc2, 0x34, 0x02, 0x2b, 0x0e, 0xd1, + 0x4f, 0xf4, 0x80, 0x52, 0x20, 0x46, 0x40, 0xf2, 0xc9, 0x61, 0x13, 0x46, + 0xfd, 0xf7, 0x9e, 0xfc, 0x05, 0xe0, 0x20, 0x46, 0x40, 0xf2, 0x89, 0x61, + 0x23, 0x22, 0xfd, 0xf7, 0xb1, 0xfa, 0x20, 0x46, 0x04, 0x22, 0x27, 0x49, + 0xfd, 0xf7, 0xa4, 0xfc, 0x20, 0x46, 0x00, 0x22, 0x40, 0xf2, 0x79, 0x61, + 0xfd, 0xf7, 0xa6, 0xfa, 0x20, 0x46, 0x08, 0x22, 0x22, 0x49, 0xfd, 0xf7, + 0x99, 0xfc, 0xd4, 0xf8, 0xa8, 0x30, 0x20, 0x46, 0xb3, 0xf8, 0xc2, 0x24, + 0x4f, 0xf4, 0xd9, 0x61, 0xfd, 0xf7, 0x98, 0xfa, 0x20, 0x46, 0x06, 0x22, + 0x1c, 0x49, 0xfd, 0xf7, 0x8b, 0xfc, 0xd4, 0xf8, 0xa8, 0x30, 0x4f, 0xf4, + 0x80, 0x72, 0xb3, 0xf8, 0xc2, 0x34, 0x20, 0x46, 0x1a, 0x41, 0x01, 0x3a, + 0x4f, 0xf4, 0xd0, 0x61, 0x92, 0xb2, 0xfd, 0xf7, 0x85, 0xfa, 0xd4, 0xf8, + 0xa8, 0x30, 0x4f, 0xf4, 0xa0, 0x72, 0xb3, 0xf8, 0xc2, 0x34, 0x20, 0x46, + 0x1a, 0x41, 0x01, 0x3a, 0x92, 0xb2, 0x40, 0xf2, 0x81, 0x61, 0xfd, 0xf7, + 0x77, 0xfa, 0xd4, 0xf8, 0xa8, 0x30, 0x20, 0x46, 0xb3, 0xf8, 0xc2, 0x34, + 0x40, 0xf2, 0x7f, 0x61, 0x01, 0x3b, 0x9b, 0xb2, 0x01, 0x2b, 0x9a, 0xbf, + 0x08, 0x4a, 0xd2, 0x5c, 0x34, 0x22, 0xfd, 0xf7, 0x67, 0xfa, 0x07, 0x49, + 0x20, 0x46, 0x0e, 0x22, 0xbd, 0xe8, 0x10, 0x40, 0xfd, 0xf7, 0x58, 0xbc, + 0x54, 0xee, 0x01, 0x00, 0x5c, 0xee, 0x01, 0x00, 0x6c, 0xee, 0x01, 0x00, + 0xbc, 0xe9, 0x01, 0x00, 0x38, 0xee, 0x01, 0x00, 0x70, 0xb5, 0x40, 0xf2, + 0x3c, 0x41, 0x04, 0x46, 0xfd, 0xf7, 0x45, 0xfa, 0x40, 0xf2, 0x3b, 0x41, + 0x06, 0x46, 0x20, 0x46, 0xfd, 0xf7, 0x3f, 0xfa, 0x46, 0xf0, 0x01, 0x02, + 0x05, 0x46, 0x40, 0xf2, 0x3c, 0x41, 0x20, 0x46, 0x92, 0xb2, 0xfd, 0xf7, + 0x41, 0xfa, 0x45, 0xf0, 0x01, 0x02, 0x20, 0x46, 0x40, 0xf2, 0x3b, 0x41, + 0x92, 0xb2, 0xfd, 0xf7, 0x39, 0xfa, 0x4f, 0xf6, 0xfe, 0x72, 0x20, 0x46, + 0x32, 0x40, 0x40, 0xf2, 0x3c, 0x41, 0xfd, 0xf7, 0x31, 0xfa, 0x4f, 0xf6, + 0xfe, 0x72, 0x20, 0x46, 0x2a, 0x40, 0x40, 0xf2, 0x3b, 0x41, 0xfd, 0xf7, + 0x29, 0xfa, 0x20, 0x46, 0x32, 0x46, 0x40, 0xf2, 0x3c, 0x41, 0xfd, 0xf7, + 0x23, 0xfa, 0x20, 0x46, 0x40, 0xf2, 0x3b, 0x41, 0x2a, 0x46, 0xbd, 0xe8, + 0x70, 0x40, 0xfd, 0xf7, 0x1b, 0xba, 0x80, 0x22, 0x38, 0xb5, 0x0d, 0x46, + 0x13, 0x46, 0x40, 0xf2, 0xd1, 0x61, 0x04, 0x46, 0xfd, 0xf7, 0xf8, 0xfb, + 0x0d, 0xb1, 0x01, 0x2d, 0x05, 0xd1, 0x20, 0x46, 0x4f, 0xf4, 0xda, 0x61, + 0x0f, 0x22, 0xfd, 0xf7, 0x09, 0xfa, 0x20, 0x46, 0xbd, 0xe8, 0x38, 0x40, + 0xff, 0xf7, 0xae, 0xbf, 0x2d, 0xe9, 0xf0, 0x41, 0x0d, 0x46, 0xb0, 0xf8, + 0xda, 0x10, 0x04, 0x46, 0x01, 0xf4, 0x70, 0x41, 0xb1, 0xf5, 0x00, 0x5f, + 0x14, 0xbf, 0xa5, 0x21, 0x89, 0x21, 0x1f, 0x46, 0x16, 0x46, 0xfd, 0xf7, + 0xab, 0xf9, 0xb4, 0xf8, 0xda, 0x10, 0x00, 0xf0, 0x0f, 0x08, 0x01, 0xf4, + 0x70, 0x41, 0xb1, 0xf5, 0x00, 0x5f, 0x14, 0xbf, 0xa5, 0x21, 0x89, 0x21, + 0x20, 0x46, 0xfd, 0xf7, 0x9d, 0xf9, 0x00, 0xf0, 0xf0, 0x00, 0xa8, 0xeb, + 0x10, 0x18, 0x85, 0xf8, 0x00, 0x80, 0xb4, 0xf8, 0xda, 0x10, 0x20, 0x46, + 0x01, 0xf4, 0x70, 0x41, 0xb1, 0xf5, 0x00, 0x5f, 0x14, 0xbf, 0xa6, 0x21, + 0x8a, 0x21, 0xfd, 0xf7, 0x8b, 0xf9, 0xb4, 0xf8, 0xda, 0x10, 0x00, 0xf0, + 0x0f, 0x05, 0x01, 0xf4, 0x70, 0x41, 0xb1, 0xf5, 0x00, 0x5f, 0x14, 0xbf, + 0xa6, 0x21, 0x8a, 0x21, 0x20, 0x46, 0xfd, 0xf7, 0x7d, 0xf9, 0x00, 0xf0, + 0xf0, 0x00, 0xa5, 0xeb, 0x10, 0x15, 0x35, 0x70, 0xb4, 0xf8, 0xda, 0x10, + 0x20, 0x46, 0x01, 0xf4, 0x70, 0x41, 0xb1, 0xf5, 0x00, 0x5f, 0x14, 0xbf, + 0xa7, 0x21, 0x8b, 0x21, 0xfd, 0xf7, 0x6c, 0xf9, 0xb4, 0xf8, 0xda, 0x10, + 0x00, 0xf0, 0x0f, 0x05, 0x01, 0xf4, 0x70, 0x41, 0xb1, 0xf5, 0x00, 0x5f, + 0x14, 0xbf, 0xa7, 0x21, 0x8b, 0x21, 0x20, 0x46, 0xfd, 0xf7, 0x5e, 0xf9, + 0x00, 0xf0, 0xf0, 0x00, 0xa5, 0xeb, 0x10, 0x15, 0x3d, 0x70, 0xb4, 0xf8, + 0xda, 0x10, 0x20, 0x46, 0x01, 0xf4, 0x70, 0x41, 0xb1, 0xf5, 0x00, 0x5f, + 0x14, 0xbf, 0xa8, 0x21, 0x8c, 0x21, 0xfd, 0xf7, 0x4d, 0xf9, 0xb4, 0xf8, + 0xda, 0x10, 0x00, 0xf0, 0x0f, 0x05, 0x01, 0xf4, 0x70, 0x41, 0x20, 0x46, + 0xb1, 0xf5, 0x00, 0x5f, 0x14, 0xbf, 0xa8, 0x21, 0x8c, 0x21, 0xfd, 0xf7, + 0x3f, 0xf9, 0x06, 0x9b, 0x00, 0xf0, 0xf0, 0x00, 0xa5, 0xeb, 0x10, 0x15, + 0x1d, 0x70, 0xbd, 0xe8, 0xf0, 0x81, 0x00, 0x00, 0x10, 0xb5, 0xd0, 0xf8, + 0xa8, 0x30, 0x04, 0x46, 0x93, 0xf8, 0xe9, 0x33, 0xa0, 0x2b, 0x03, 0xd1, + 0x11, 0x49, 0x04, 0x22, 0xfd, 0xf7, 0x6a, 0xfb, 0x20, 0x46, 0x4f, 0xf4, + 0x8e, 0x71, 0x00, 0x22, 0xfd, 0xf7, 0x3b, 0xf9, 0x20, 0x46, 0x0d, 0x49, + 0x18, 0x22, 0xfd, 0xf7, 0x5f, 0xfb, 0x04, 0xf5, 0x98, 0x53, 0xdb, 0x89, + 0x0b, 0xb1, 0x9b, 0xb2, 0x00, 0xe0, 0x0c, 0x23, 0x20, 0x46, 0xff, 0x22, + 0x40, 0xf2, 0x34, 0x61, 0xfd, 0xf7, 0x40, 0xfb, 0x05, 0x49, 0x20, 0x46, + 0x09, 0x22, 0xbd, 0xe8, 0x10, 0x40, 0xfd, 0xf7, 0x4b, 0xbb, 0x00, 0xbf, + 0x80, 0xee, 0x01, 0x00, 0x88, 0xee, 0x01, 0x00, 0xb8, 0xee, 0x01, 0x00, + 0xb0, 0xf8, 0xda, 0x10, 0x10, 0xb5, 0x01, 0xf4, 0x70, 0x41, 0x04, 0x46, + 0xb1, 0xf5, 0x00, 0x5f, 0x14, 0xbf, 0xa5, 0x21, 0x89, 0x21, 0x88, 0x22, + 0xfd, 0xf7, 0x0d, 0xf9, 0xb4, 0xf8, 0xda, 0x10, 0x20, 0x46, 0x01, 0xf4, + 0x70, 0x41, 0xb1, 0xf5, 0x00, 0x5f, 0x14, 0xbf, 0xa6, 0x21, 0x8a, 0x21, + 0x88, 0x22, 0xfd, 0xf7, 0x00, 0xf9, 0xb4, 0xf8, 0xda, 0x10, 0x20, 0x46, + 0x01, 0xf4, 0x70, 0x41, 0xb1, 0xf5, 0x00, 0x5f, 0x14, 0xbf, 0xa7, 0x21, + 0x8b, 0x21, 0x88, 0x22, 0xfd, 0xf7, 0xf3, 0xf8, 0xb4, 0xf8, 0xda, 0x10, + 0x20, 0x46, 0x01, 0xf4, 0x70, 0x41, 0xb1, 0xf5, 0x00, 0x5f, 0x14, 0xbf, + 0xa8, 0x21, 0x8c, 0x21, 0x88, 0x22, 0xbd, 0xe8, 0x10, 0x40, 0xfd, 0xf7, + 0xe4, 0xb8, 0x00, 0x00, 0x70, 0xb5, 0x05, 0x46, 0x0e, 0x46, 0x00, 0x24, + 0x07, 0x4b, 0x32, 0x5b, 0x19, 0x5b, 0x28, 0x46, 0x02, 0x34, 0xfd, 0xf7, + 0xd8, 0xf8, 0x18, 0x2c, 0xf6, 0xd1, 0x04, 0x49, 0x28, 0x46, 0x22, 0x46, + 0xbd, 0xe8, 0x70, 0x40, 0xfd, 0xf7, 0xf8, 0xba, 0x66, 0xed, 0x01, 0x00, + 0x4a, 0xe9, 0x01, 0x00, 0x70, 0xb5, 0x04, 0x22, 0x0d, 0x46, 0x07, 0x49, + 0x06, 0x46, 0xfd, 0xf7, 0xed, 0xfa, 0x00, 0x24, 0x05, 0x4b, 0x2a, 0x5b, + 0x19, 0x5b, 0x30, 0x46, 0x02, 0x34, 0xfd, 0xf7, 0xbc, 0xf8, 0x30, 0x2c, + 0xf6, 0xd1, 0x70, 0xbd, 0x0a, 0xe8, 0x01, 0x00, 0xe8, 0xea, 0x01, 0x00, + 0x2d, 0xe9, 0xf0, 0x41, 0x04, 0x46, 0x1f, 0x46, 0x15, 0x46, 0xb0, 0xf8, + 0xda, 0x80, 0xff, 0xf7, 0x72, 0xf9, 0x08, 0xf4, 0x70, 0x48, 0xb8, 0xf5, + 0x00, 0x5f, 0x14, 0xbf, 0x4f, 0xf0, 0xa5, 0x08, 0x4f, 0xf0, 0x89, 0x08, + 0x02, 0x46, 0x41, 0x46, 0x20, 0x46, 0x9d, 0xf8, 0x18, 0x60, 0xfd, 0xf7, + 0x9c, 0xf8, 0x29, 0x46, 0x20, 0x46, 0xff, 0xf7, 0x5e, 0xf9, 0xb4, 0xf8, + 0xda, 0x80, 0x02, 0x46, 0x08, 0xf4, 0x70, 0x48, 0xb8, 0xf5, 0x00, 0x5f, + 0x14, 0xbf, 0x4f, 0xf0, 0xa6, 0x08, 0x4f, 0xf0, 0x8a, 0x08, 0x20, 0x46, + 0x41, 0x46, 0xfd, 0xf7, 0x88, 0xf8, 0x39, 0x46, 0x20, 0x46, 0xff, 0xf7, + 0x4a, 0xf9, 0xb4, 0xf8, 0xda, 0x50, 0x02, 0x46, 0x05, 0xf4, 0x70, 0x45, + 0xb5, 0xf5, 0x00, 0x5f, 0x14, 0xbf, 0xa7, 0x25, 0x8b, 0x25, 0x20, 0x46, + 0x29, 0x46, 0xfd, 0xf7, 0x76, 0xf8, 0x31, 0x46, 0x20, 0x46, 0xff, 0xf7, + 0x38, 0xf9, 0xb4, 0xf8, 0xda, 0x50, 0x02, 0x46, 0x05, 0xf4, 0x70, 0x45, + 0xb5, 0xf5, 0x00, 0x5f, 0x14, 0xbf, 0xa8, 0x25, 0x8c, 0x25, 0x20, 0x46, + 0x29, 0x46, 0xbd, 0xe8, 0xf0, 0x41, 0xfd, 0xf7, 0x62, 0xb8, 0x00, 0x00, + 0x01, 0x29, 0x70, 0xb5, 0x04, 0x46, 0x0d, 0x46, 0x16, 0xd1, 0x06, 0x22, + 0x29, 0x49, 0xfd, 0xf7, 0x81, 0xfa, 0x20, 0x46, 0x3a, 0x21, 0x2a, 0x46, + 0x2b, 0x46, 0xfd, 0xf7, 0x27, 0xfa, 0x08, 0x22, 0x20, 0x46, 0x13, 0x46, + 0x4f, 0xf4, 0x8d, 0x71, 0xfd, 0xf7, 0x20, 0xfa, 0x20, 0x46, 0x7f, 0x21, + 0x00, 0x22, 0xfd, 0xf7, 0x46, 0xf8, 0x32, 0xe0, 0x79, 0xb9, 0x1f, 0x49, + 0x06, 0x22, 0xfd, 0xf7, 0x69, 0xfa, 0x20, 0x46, 0x3a, 0x21, 0x01, 0x22, + 0x2b, 0x46, 0xfd, 0xf7, 0x0f, 0xfa, 0x08, 0x22, 0x20, 0x46, 0x4f, 0xf4, + 0x8d, 0x71, 0x13, 0x46, 0x1f, 0xe0, 0x02, 0x29, 0x1f, 0xd1, 0xb0, 0xf8, + 0xda, 0x30, 0x7d, 0x21, 0x03, 0xf4, 0x70, 0x43, 0xb3, 0xf5, 0x00, 0x5f, + 0x01, 0xd1, 0x03, 0x22, 0x00, 0xe0, 0x2a, 0x46, 0xfd, 0xf7, 0x25, 0xf8, + 0x20, 0x46, 0x28, 0x21, 0x0f, 0x22, 0x01, 0x23, 0xfd, 0xf7, 0xf4, 0xf9, + 0x80, 0x22, 0x13, 0x46, 0x20, 0x46, 0x4f, 0xf4, 0x89, 0x71, 0xfd, 0xf7, + 0xed, 0xf9, 0x20, 0x46, 0x05, 0x21, 0x07, 0x22, 0x02, 0x23, 0xfd, 0xf7, + 0xe7, 0xf9, 0x20, 0x46, 0x40, 0xf2, 0x37, 0x61, 0x4f, 0xf4, 0x40, 0x42, + 0x00, 0x23, 0xbd, 0xe8, 0x70, 0x40, 0xfd, 0xf7, 0x1f, 0xba, 0x00, 0xbf, + 0x22, 0xed, 0x01, 0x00, 0x2e, 0xed, 0x01, 0x00, 0x2d, 0xe9, 0xf1, 0x4f, + 0xd0, 0xf8, 0xa8, 0x30, 0x04, 0x46, 0x93, 0xf8, 0x0a, 0x90, 0x93, 0xf8, + 0x0c, 0xa0, 0xdd, 0x7a, 0xde, 0x7c, 0x49, 0xf4, 0x00, 0x79, 0x1a, 0x7d, + 0x49, 0xea, 0x05, 0x19, 0x93, 0xf8, 0x16, 0xb0, 0x0f, 0xfa, 0x8a, 0xf5, + 0x93, 0xf8, 0x17, 0x80, 0x49, 0xea, 0x05, 0x35, 0x46, 0xf4, 0x00, 0x76, + 0xad, 0xb2, 0x46, 0xea, 0x02, 0x16, 0x23, 0x49, 0x09, 0x22, 0x4b, 0xf4, + 0x00, 0x7b, 0x5f, 0x7d, 0x4b, 0xea, 0x08, 0x1b, 0x93, 0xf8, 0x18, 0x80, + 0xfd, 0xf7, 0x04, 0xfa, 0x20, 0x46, 0x2b, 0x46, 0x40, 0xf2, 0xdb, 0x41, + 0x47, 0xf2, 0xff, 0x32, 0xfd, 0xf7, 0xea, 0xf9, 0x20, 0x46, 0x2b, 0x46, + 0x40, 0xf2, 0xdc, 0x41, 0x47, 0xf2, 0xff, 0x32, 0xfd, 0xf7, 0xe2, 0xf9, + 0x46, 0xea, 0x07, 0x36, 0x20, 0x46, 0x2b, 0x46, 0x40, 0xf2, 0x0a, 0x41, + 0x47, 0xf2, 0xff, 0x32, 0xfd, 0xf7, 0xd8, 0xf9, 0x4b, 0xea, 0x08, 0x38, + 0x20, 0x46, 0xb3, 0xb2, 0x40, 0xf2, 0x0b, 0x41, 0x47, 0xf2, 0xff, 0x32, + 0xfd, 0xf7, 0xce, 0xf9, 0x20, 0x46, 0x1f, 0xfa, 0x88, 0xf3, 0x40, 0xf2, + 0x0c, 0x41, 0x47, 0xf2, 0xff, 0x32, 0xfd, 0xf7, 0xc5, 0xf9, 0x20, 0x22, + 0x20, 0x46, 0x82, 0x21, 0x13, 0x46, 0xfd, 0xf7, 0x7d, 0xf9, 0x01, 0x22, + 0x20, 0x46, 0x7c, 0x21, 0x13, 0x46, 0x01, 0xb0, 0xbd, 0xe8, 0xf0, 0x4f, + 0xfd, 0xf7, 0x74, 0xb9, 0xda, 0xe6, 0x01, 0x00, 0x70, 0xb5, 0x06, 0x22, + 0x0d, 0x46, 0x45, 0x49, 0x04, 0x46, 0xfd, 0xf7, 0xbf, 0xf9, 0x00, 0x26, + 0x43, 0x4b, 0x20, 0x46, 0x99, 0x5b, 0xfc, 0xf7, 0x79, 0xff, 0xa8, 0x53, + 0x02, 0x36, 0x18, 0x2e, 0xf6, 0xd1, 0x07, 0x21, 0x01, 0x22, 0x20, 0x46, + 0xfc, 0xf7, 0x87, 0xff, 0x10, 0x22, 0xff, 0x21, 0x13, 0x46, 0x20, 0x46, + 0xfd, 0xf7, 0x56, 0xf9, 0x04, 0x22, 0x13, 0x46, 0x20, 0x46, 0x40, 0xf2, + 0x1f, 0x11, 0xfd, 0xf7, 0x4f, 0xf9, 0x0c, 0x22, 0x20, 0x46, 0x36, 0x49, + 0xfd, 0xf7, 0x9e, 0xf9, 0x01, 0x22, 0x3a, 0x21, 0x13, 0x46, 0x20, 0x46, + 0xfd, 0xf7, 0x44, 0xf9, 0x04, 0x22, 0x3a, 0x21, 0x13, 0x46, 0x20, 0x46, + 0xfd, 0xf7, 0x3e, 0xf9, 0x08, 0x22, 0x13, 0x46, 0x20, 0x46, 0x4f, 0xf4, + 0x8d, 0x71, 0xfd, 0xf7, 0x37, 0xf9, 0x08, 0x22, 0x05, 0x21, 0x13, 0x46, + 0x20, 0x46, 0xfd, 0xf7, 0x31, 0xf9, 0x01, 0x22, 0x13, 0x46, 0x20, 0x46, + 0x4f, 0xf4, 0x8d, 0x71, 0xfd, 0xf7, 0x2a, 0xf9, 0x12, 0x22, 0x20, 0x46, + 0x24, 0x49, 0xfd, 0xf7, 0x79, 0xf9, 0x20, 0x22, 0x82, 0x21, 0x13, 0x46, + 0x20, 0x46, 0xfd, 0xf7, 0x1f, 0xf9, 0xb4, 0xf8, 0xda, 0x30, 0x03, 0xf4, + 0x70, 0x43, 0xb3, 0xf5, 0x00, 0x5f, 0x09, 0xd1, 0xd4, 0xf8, 0xa8, 0x30, + 0x9e, 0x7a, 0xda, 0x7a, 0x46, 0xf4, 0x00, 0x76, 0x46, 0xea, 0x02, 0x16, + 0x1d, 0x7b, 0x01, 0xe0, 0x00, 0x25, 0x2e, 0x46, 0x01, 0x22, 0x20, 0x46, + 0x13, 0x46, 0x4f, 0xf4, 0x9b, 0x61, 0xfd, 0xf7, 0x47, 0xf9, 0x20, 0x46, + 0xb3, 0x00, 0x4f, 0xf4, 0x9b, 0x61, 0x40, 0xf6, 0xfc, 0x72, 0xfd, 0xf7, + 0x3f, 0xf9, 0x02, 0x22, 0x20, 0x46, 0x13, 0x46, 0x4f, 0xf4, 0x9b, 0x61, + 0xfd, 0xf7, 0x38, 0xf9, 0x2b, 0x03, 0x20, 0x46, 0x4f, 0xf4, 0x9b, 0x61, + 0x4f, 0xf4, 0xe0, 0x42, 0x03, 0xf4, 0x70, 0x43, 0xfd, 0xf7, 0x2e, 0xf9, + 0x07, 0x49, 0x20, 0x46, 0x06, 0x22, 0xbd, 0xe8, 0x70, 0x40, 0xfd, 0xf7, + 0x39, 0xb9, 0x00, 0xbf, 0x2c, 0xef, 0x01, 0x00, 0x66, 0xed, 0x01, 0x00, + 0xc2, 0xe7, 0x01, 0x00, 0xda, 0xe7, 0x01, 0x00, 0xfe, 0xe7, 0x01, 0x00, + 0x38, 0xb5, 0xd0, 0xf8, 0xa8, 0x50, 0x04, 0x46, 0xff, 0x22, 0xb5, 0xf8, + 0x66, 0x33, 0x40, 0xf2, 0x34, 0x41, 0xfd, 0xf7, 0x11, 0xf9, 0xb5, 0xf8, + 0x64, 0x33, 0x20, 0x46, 0xff, 0x22, 0x40, 0xf2, 0x23, 0x41, 0xfd, 0xf7, + 0x09, 0xf9, 0x20, 0x46, 0xb5, 0xf8, 0x68, 0x23, 0x4f, 0xf4, 0xaa, 0x61, + 0xfc, 0xf7, 0x1c, 0xff, 0x20, 0x46, 0x04, 0x49, 0x04, 0x22, 0xfd, 0xf7, + 0x0f, 0xf9, 0x14, 0x20, 0xbd, 0xe8, 0x38, 0x40, 0xf2, 0xf3, 0xf4, 0xb4, + 0xe0, 0xea, 0x01, 0x00, 0x2d, 0xe9, 0xf0, 0x47, 0xc3, 0x69, 0xd0, 0xf8, + 0xa8, 0x40, 0x1b, 0x6d, 0x0f, 0x46, 0x40, 0xf2, 0x23, 0x41, 0x03, 0xf4, + 0x80, 0x58, 0x05, 0x46, 0x94, 0xf8, 0x44, 0xa3, 0xfc, 0xf7, 0xf5, 0xfe, + 0x40, 0xf2, 0x34, 0x41, 0x06, 0x46, 0x28, 0x46, 0xfc, 0xf7, 0xef, 0xfe, + 0x38, 0x46, 0xff, 0xf7, 0x45, 0xf8, 0x94, 0xf8, 0x44, 0x23, 0xb8, 0xf1, + 0x00, 0x0f, 0x0c, 0xbf, 0x4f, 0xf0, 0x09, 0x08, 0x4f, 0xf0, 0x06, 0x08, + 0x94, 0xf8, 0x48, 0x33, 0xb4, 0xf8, 0x64, 0x73, 0x00, 0x2a, 0x00, 0xf0, + 0x8c, 0x80, 0xff, 0x1a, 0xf6, 0xb2, 0x3f, 0x18, 0xbf, 0x1b, 0x4f, 0xfa, + 0x87, 0xf9, 0xb9, 0xf1, 0x00, 0x0f, 0x1e, 0xda, 0xeb, 0x69, 0x28, 0x46, + 0x1b, 0x6d, 0x03, 0xf4, 0x80, 0x53, 0x00, 0x2b, 0x14, 0xbf, 0x03, 0x22, + 0x08, 0x22, 0xc9, 0xf1, 0x00, 0x03, 0x0c, 0xbf, 0x0b, 0x21, 0x04, 0x21, + 0x9a, 0x42, 0xa8, 0xbf, 0x1a, 0x46, 0xb4, 0xf8, 0x68, 0x33, 0x01, 0xfb, + 0x02, 0x32, 0x4f, 0xf4, 0xaa, 0x61, 0x92, 0xb2, 0xfc, 0xf7, 0xc4, 0xfe, + 0x19, 0xf1, 0x03, 0x0f, 0x06, 0xda, 0xf2, 0x1c, 0x05, 0xe0, 0xb9, 0xf1, + 0x03, 0x0f, 0x01, 0xdd, 0xf2, 0x1e, 0x00, 0xe0, 0x32, 0x46, 0xb4, 0xf8, + 0x64, 0x33, 0x12, 0xb2, 0x19, 0xb2, 0xc8, 0x1c, 0x82, 0x42, 0x02, 0xdd, + 0x03, 0x33, 0x9b, 0xb2, 0x03, 0xe0, 0x8a, 0x42, 0xb8, 0xbf, 0x0a, 0x46, + 0x93, 0xb2, 0xba, 0xf1, 0x00, 0x0f, 0x12, 0xd0, 0x1a, 0xb2, 0xb2, 0x42, + 0x0f, 0xd0, 0x28, 0x46, 0x40, 0xf2, 0x23, 0x41, 0xff, 0x22, 0xfd, 0xf7, + 0x85, 0xf8, 0x28, 0x46, 0x23, 0x49, 0x04, 0x22, 0xfd, 0xf7, 0x92, 0xf8, + 0x14, 0x20, 0xf2, 0xf3, 0x79, 0xf4, 0x00, 0x26, 0x00, 0xe0, 0x01, 0x26, + 0xb4, 0xf8, 0x66, 0x23, 0x7f, 0xb2, 0x11, 0xb2, 0xc8, 0xeb, 0x01, 0x00, + 0x7f, 0x42, 0x87, 0x42, 0xbb, 0xb2, 0xbc, 0xbf, 0xc8, 0xeb, 0x02, 0x03, + 0x9b, 0xb2, 0x18, 0xb2, 0x09, 0x31, 0x88, 0x42, 0xc8, 0xbf, 0x02, 0xf1, + 0x09, 0x03, 0xb5, 0xf8, 0xda, 0x20, 0xc8, 0xbf, 0x9b, 0xb2, 0x02, 0xf4, + 0x70, 0x42, 0xb2, 0xf5, 0x00, 0x5f, 0x0c, 0xbf, 0x94, 0xf9, 0x4b, 0x83, + 0x94, 0xf9, 0x4c, 0x83, 0x43, 0x44, 0x9b, 0xb2, 0xba, 0xf1, 0x00, 0x0f, + 0x05, 0xd0, 0x28, 0x46, 0x40, 0xf2, 0x34, 0x41, 0xff, 0x22, 0xfd, 0xf7, + 0x4f, 0xf8, 0x28, 0x46, 0x40, 0xf2, 0x23, 0x41, 0xfc, 0xf7, 0x59, 0xfe, + 0x94, 0xf8, 0xbc, 0x33, 0x84, 0xf8, 0xbd, 0x03, 0x84, 0xf8, 0xbe, 0x03, + 0x84, 0xf8, 0xbf, 0x33, 0x00, 0xe0, 0x01, 0x26, 0x30, 0x46, 0xbd, 0xe8, + 0xf0, 0x87, 0x00, 0xbf, 0x34, 0xe7, 0x01, 0x00, 0x2d, 0xe9, 0xf0, 0x41, + 0x04, 0x46, 0x0f, 0x46, 0x90, 0x46, 0x35, 0x49, 0x06, 0x22, 0x1e, 0x46, + 0x06, 0x9d, 0xfd, 0xf7, 0x41, 0xf8, 0x20, 0x46, 0x40, 0xf2, 0x82, 0x41, + 0x4f, 0xf6, 0xff, 0x72, 0x3b, 0x46, 0xfd, 0xf7, 0x27, 0xf8, 0x20, 0x46, + 0x40, 0xf2, 0x81, 0x41, 0xff, 0x22, 0x43, 0x46, 0xfd, 0xf7, 0x20, 0xf8, + 0x3e, 0xb9, 0x20, 0x46, 0x40, 0xf2, 0x81, 0x41, 0x4f, 0xf4, 0x80, 0x72, + 0x33, 0x46, 0xfd, 0xf7, 0x17, 0xf8, 0x20, 0x46, 0x26, 0x49, 0x03, 0x22, + 0xfd, 0xf7, 0x24, 0xf8, 0xbd, 0xf8, 0x1c, 0x30, 0x0a, 0x27, 0x5f, 0x43, + 0x00, 0x26, 0x05, 0xe0, 0xbe, 0x42, 0x36, 0xdc, 0x64, 0x20, 0xf2, 0xf3, + 0x03, 0xf4, 0x01, 0x36, 0x20, 0x46, 0x40, 0xf2, 0x81, 0x41, 0xfc, 0xf7, + 0x10, 0xfe, 0x83, 0x05, 0xf2, 0xd4, 0x40, 0xf2, 0x83, 0x41, 0x20, 0x46, + 0xfc, 0xf7, 0x09, 0xfe, 0x40, 0xf2, 0x84, 0x41, 0x06, 0x46, 0x20, 0x46, + 0xfc, 0xf7, 0x03, 0xfe, 0x40, 0xea, 0x06, 0x40, 0x28, 0x60, 0x40, 0xf2, + 0x85, 0x41, 0x20, 0x46, 0xfc, 0xf7, 0xfb, 0xfd, 0x40, 0xf2, 0x86, 0x41, + 0x06, 0x46, 0x20, 0x46, 0xfc, 0xf7, 0xf5, 0xfd, 0x40, 0xea, 0x06, 0x40, + 0x68, 0x60, 0x40, 0xf2, 0x87, 0x41, 0x20, 0x46, 0xfc, 0xf7, 0xed, 0xfd, + 0x4f, 0xf4, 0x91, 0x61, 0x06, 0x46, 0x20, 0x46, 0xfc, 0xf7, 0xe7, 0xfd, + 0x40, 0xea, 0x06, 0x40, 0xa8, 0x60, 0x01, 0x25, 0x00, 0xe0, 0x00, 0x25, + 0x20, 0x46, 0x05, 0x49, 0x06, 0x22, 0xfc, 0xf7, 0xdf, 0xff, 0x28, 0x46, + 0xbd, 0xe8, 0xf0, 0x81, 0x18, 0xeb, 0x01, 0x00, 0x7e, 0xed, 0x01, 0x00, + 0xa2, 0xe7, 0x01, 0x00, 0x70, 0xb5, 0x40, 0xf2, 0x4a, 0x41, 0x05, 0x46, + 0xfc, 0xf7, 0xcd, 0xfd, 0x40, 0xf0, 0x44, 0x00, 0x86, 0xb2, 0x4f, 0xf6, + 0xbf, 0x74, 0x28, 0x46, 0x32, 0x46, 0x34, 0x40, 0x40, 0xf2, 0x4a, 0x41, + 0xfc, 0xf7, 0xcc, 0xfd, 0x22, 0x46, 0x28, 0x46, 0x40, 0xf2, 0x4a, 0x41, + 0xfc, 0xf7, 0xc6, 0xfd, 0x04, 0x20, 0xf2, 0xf3, 0xa5, 0xf3, 0x4f, 0xf6, + 0xbb, 0x72, 0x28, 0x46, 0x40, 0xf2, 0x4a, 0x41, 0x22, 0x40, 0xbd, 0xe8, + 0x70, 0x40, 0xfc, 0xf7, 0xb9, 0xbd, 0x38, 0xb5, 0x05, 0x46, 0x41, 0xf2, + 0x89, 0x34, 0x04, 0xe0, 0x64, 0x20, 0xf2, 0xf3, 0x93, 0xf3, 0x01, 0x3c, + 0x07, 0xd0, 0x28, 0x46, 0x40, 0xf2, 0x51, 0x41, 0xfc, 0xf7, 0x9f, 0xfd, + 0x10, 0xf4, 0x40, 0x4f, 0xf2, 0xd1, 0x28, 0x46, 0x40, 0xf2, 0x51, 0x41, + 0xfc, 0xf7, 0x97, 0xfd, 0x10, 0xf4, 0x40, 0x4f, 0x14, 0xbf, 0x00, 0x20, + 0x01, 0x20, 0x38, 0xbd, 0x40, 0xf2, 0x4c, 0x41, 0x4f, 0xf6, 0xfc, 0x72, + 0xfc, 0xf7, 0x61, 0xbf, 0x38, 0xb5, 0xc3, 0x69, 0x04, 0x46, 0x0d, 0x46, + 0x18, 0x69, 0x8e, 0x21, 0x3c, 0xf0, 0x3e, 0xdb, 0xe3, 0x69, 0x41, 0x19, + 0x18, 0x69, 0x49, 0x00, 0xbd, 0xe8, 0x38, 0x40, 0x3c, 0xf0, 0x36, 0x9b, + 0x2d, 0xe9, 0xf0, 0x41, 0x0c, 0x46, 0x27, 0x21, 0x05, 0x46, 0x17, 0x46, + 0xff, 0xf7, 0xe8, 0xff, 0x10, 0xf0, 0x01, 0x06, 0x1d, 0xbf, 0x4f, 0xf6, + 0xf0, 0x76, 0x06, 0x40, 0x4f, 0xf6, 0xf0, 0x78, 0x4f, 0xf0, 0x01, 0x08, + 0x28, 0x21, 0x28, 0x46, 0xff, 0xf7, 0xda, 0xff, 0x00, 0xea, 0x08, 0x00, + 0xb0, 0x42, 0x0a, 0xd0, 0x01, 0x3c, 0x63, 0x1c, 0x00, 0x2b, 0x02, 0xdd, + 0x14, 0x20, 0xf2, 0xf3, 0x47, 0xf3, 0x00, 0x2c, 0xee, 0xdc, 0x00, 0x20, + 0x00, 0xe0, 0x01, 0x20, 0x07, 0xb1, 0x3c, 0x60, 0xbd, 0xe8, 0xf0, 0x81, + 0xc3, 0x69, 0x70, 0xb5, 0x04, 0x46, 0x0d, 0x46, 0x18, 0x69, 0x8e, 0x21, + 0x16, 0x46, 0x3c, 0xf0, 0x03, 0xdb, 0xe3, 0x69, 0x41, 0x19, 0x18, 0x69, + 0x49, 0x00, 0x32, 0x46, 0xbd, 0xe8, 0x70, 0x40, 0x3c, 0xf0, 0x18, 0x9b, + 0x70, 0xb5, 0x04, 0x46, 0xd0, 0xf8, 0xa8, 0x50, 0x0e, 0x46, 0x89, 0xb3, + 0x40, 0xf2, 0xda, 0x61, 0x42, 0xf2, 0x08, 0x02, 0xfc, 0xf7, 0x16, 0xff, + 0x20, 0x46, 0x40, 0xf2, 0xa6, 0x51, 0x05, 0x22, 0xfc, 0xf7, 0x38, 0xfd, + 0x20, 0x46, 0x40, 0xf2, 0xa2, 0x51, 0xc3, 0x22, 0xfc, 0xf7, 0x32, 0xfd, + 0x20, 0x46, 0x40, 0xf2, 0xa5, 0x51, 0x07, 0x22, 0xfc, 0xf7, 0x2c, 0xfd, + 0x20, 0x46, 0x40, 0xf2, 0x83, 0x51, 0x4f, 0xf4, 0x48, 0x72, 0xfc, 0xf7, + 0x25, 0xfd, 0x20, 0x46, 0x40, 0xf2, 0x84, 0x51, 0x00, 0x22, 0xfc, 0xf7, + 0x1f, 0xfd, 0x20, 0x46, 0x40, 0xf2, 0x85, 0x51, 0x4f, 0xf4, 0x00, 0x72, + 0xfc, 0xf7, 0x18, 0xfd, 0x20, 0x46, 0x40, 0xf2, 0x86, 0x51, 0x00, 0x22, + 0xfc, 0xf7, 0x12, 0xfd, 0x20, 0x46, 0x27, 0x21, 0xff, 0xf7, 0x78, 0xff, + 0x1e, 0xb1, 0x40, 0xf0, 0x01, 0x06, 0xb6, 0xb2, 0x02, 0xe0, 0x4f, 0xf6, + 0xfe, 0x76, 0x06, 0x40, 0x95, 0xf8, 0x94, 0x33, 0x05, 0x22, 0xed, 0x18, + 0x95, 0xf8, 0x95, 0x33, 0x20, 0x46, 0x5a, 0x43, 0x26, 0x21, 0x04, 0x2a, + 0x98, 0xbf, 0x05, 0x22, 0xff, 0xf7, 0x9c, 0xff, 0x10, 0x36, 0xb6, 0xb2, + 0x20, 0x46, 0x27, 0x21, 0x32, 0x46, 0xbd, 0xe8, 0x70, 0x40, 0xff, 0xf7, + 0x93, 0xbf, 0x70, 0xb5, 0xd0, 0xf8, 0xa8, 0x30, 0x0d, 0x46, 0x00, 0x21, + 0x83, 0xf8, 0x46, 0x13, 0x04, 0x46, 0xff, 0xf7, 0x9b, 0xff, 0x15, 0xb1, + 0x20, 0x46, 0xff, 0xf7, 0xab, 0xfd, 0x03, 0x22, 0x20, 0x46, 0x13, 0x46, + 0x40, 0xf6, 0x7a, 0x01, 0xfc, 0xf7, 0xc0, 0xfe, 0x20, 0x46, 0x40, 0xf2, + 0xda, 0x61, 0x42, 0xf2, 0x08, 0x02, 0x00, 0x23, 0xbd, 0xe8, 0x70, 0x40, + 0xfc, 0xf7, 0xb6, 0xbe, 0x10, 0xb5, 0x00, 0x21, 0x04, 0x46, 0xff, 0xf7, + 0xdc, 0xff, 0x20, 0x46, 0xbd, 0xe8, 0x10, 0x40, 0xfe, 0xf7, 0x44, 0xbe, + 0x70, 0xb5, 0x01, 0x22, 0x04, 0x46, 0x40, 0xf6, 0x05, 0x01, 0xd0, 0xf8, + 0xa8, 0x50, 0xfc, 0xf7, 0x95, 0xfe, 0x20, 0x46, 0x07, 0x22, 0x05, 0x23, + 0x40, 0xf2, 0x2f, 0x41, 0xfc, 0xf7, 0x9c, 0xfe, 0x20, 0x46, 0x30, 0x21, + 0xf8, 0x23, 0x4f, 0xf4, 0xff, 0x62, 0xfc, 0xf7, 0x95, 0xfe, 0x06, 0x23, + 0x20, 0x46, 0x30, 0x21, 0x07, 0x22, 0xfc, 0xf7, 0x8f, 0xfe, 0x20, 0x46, + 0x40, 0xf2, 0x14, 0x41, 0x41, 0xf6, 0x10, 0x62, 0xfc, 0xf7, 0xa2, 0xfc, + 0x20, 0x46, 0x40, 0xf2, 0x15, 0x41, 0x4f, 0xf4, 0xc8, 0x62, 0xfc, 0xf7, + 0x9b, 0xfc, 0x4f, 0xf4, 0x77, 0x43, 0x20, 0x46, 0x40, 0xf2, 0xdf, 0x41, + 0x4f, 0xf4, 0x7f, 0x42, 0xfc, 0xf7, 0x78, 0xfe, 0x20, 0x46, 0xff, 0xf7, + 0xb1, 0xfe, 0x20, 0x46, 0x27, 0x22, 0x0c, 0x49, 0xfc, 0xf7, 0x82, 0xfe, + 0x20, 0x46, 0xff, 0x22, 0xb5, 0xf8, 0xc6, 0x35, 0x40, 0xf2, 0x32, 0x41, + 0xfc, 0xf7, 0x68, 0xfe, 0xb5, 0xf8, 0xc8, 0x35, 0x4f, 0xf4, 0x7f, 0x42, + 0x1b, 0x02, 0x20, 0x46, 0x40, 0xf2, 0x32, 0x41, 0x13, 0x40, 0xbd, 0xe8, + 0x70, 0x40, 0xfc, 0xf7, 0x5b, 0xbe, 0x00, 0xbf, 0x84, 0xed, 0x01, 0x00, + 0x00, 0x29, 0x14, 0xbf, 0x02, 0x23, 0x00, 0x23, 0x10, 0xb5, 0x00, 0x2a, + 0x18, 0xbf, 0x43, 0xf0, 0x01, 0x03, 0x40, 0xf2, 0x4d, 0x41, 0x03, 0x22, + 0x04, 0x46, 0xfc, 0xf7, 0x49, 0xfe, 0x20, 0x46, 0x40, 0xf2, 0x4c, 0x41, + 0x03, 0x22, 0xbd, 0xe8, 0x10, 0x40, 0xfc, 0xf7, 0x33, 0xbe, 0x00, 0x00, + 0x2d, 0xe9, 0xf0, 0x4f, 0x04, 0x46, 0xc5, 0xb0, 0x00, 0x26, 0x01, 0x91, + 0x15, 0x46, 0x43, 0x96, 0x42, 0x96, 0xfc, 0xf7, 0xce, 0xfd, 0xe3, 0x69, + 0x4f, 0xf0, 0x80, 0x51, 0x18, 0x69, 0x0a, 0x46, 0x3c, 0xf0, 0xd8, 0xd9, + 0x05, 0x20, 0xf2, 0xf3, 0x27, 0xf2, 0x33, 0x46, 0x20, 0x46, 0x4f, 0xf4, + 0x89, 0x61, 0x4f, 0xf4, 0x80, 0x42, 0xfc, 0xf7, 0x23, 0xfe, 0x4f, 0xf4, + 0xa8, 0x42, 0x20, 0x46, 0x40, 0xf2, 0x55, 0x41, 0xfc, 0xf7, 0x36, 0xfc, + 0x40, 0xf2, 0x56, 0x41, 0x20, 0x46, 0xfc, 0xf7, 0x26, 0xfc, 0x00, 0xf0, + 0x0f, 0x00, 0x05, 0x28, 0x0c, 0xbf, 0x4f, 0xf4, 0xa8, 0x42, 0x45, 0xf2, + 0x01, 0x42, 0x20, 0x46, 0x40, 0xf2, 0x55, 0x41, 0xfc, 0xf7, 0x24, 0xfc, + 0x00, 0x26, 0x4f, 0xf0, 0xa0, 0x08, 0xb1, 0x46, 0xb2, 0x46, 0x37, 0x46, + 0x40, 0xf2, 0x56, 0x41, 0x20, 0x46, 0xfc, 0xf7, 0x0e, 0xfc, 0x00, 0x09, + 0x4f, 0xea, 0x00, 0x5b, 0x40, 0xf2, 0x57, 0x41, 0x20, 0x46, 0xfc, 0xf7, + 0x06, 0xfc, 0x4f, 0xea, 0x1b, 0x5b, 0xb8, 0xf1, 0x90, 0x0f, 0x4b, 0xea, + 0x00, 0x3b, 0x1f, 0xdc, 0x7f, 0x2e, 0x1d, 0xdc, 0x4f, 0xea, 0x8b, 0x43, + 0x9b, 0x0c, 0xb3, 0xf5, 0x00, 0x5f, 0xc8, 0xbf, 0xa3, 0xf5, 0x80, 0x43, + 0x03, 0xf5, 0x00, 0x62, 0xb2, 0xf5, 0x80, 0x5f, 0x23, 0xd8, 0x02, 0xa9, + 0x21, 0xf8, 0x1a, 0x30, 0x44, 0xa9, 0x01, 0xeb, 0x89, 0x02, 0x52, 0xf8, + 0x08, 0x1c, 0xca, 0x44, 0xcb, 0x18, 0x42, 0xf8, 0x08, 0x3c, 0x8a, 0xf0, + 0x40, 0x0a, 0x89, 0xf0, 0x01, 0x09, 0x01, 0x36, 0x4f, 0xea, 0x1b, 0x3b, + 0x0b, 0xf0, 0x0c, 0x0b, 0x4b, 0xea, 0x07, 0x1b, 0x18, 0xf0, 0x01, 0x0f, + 0x4f, 0xf6, 0xcc, 0x77, 0x0b, 0xea, 0x07, 0x07, 0x02, 0xd0, 0xfb, 0xb2, + 0x40, 0x2b, 0x02, 0xd1, 0xb8, 0xf1, 0x01, 0x08, 0xb8, 0xd1, 0xe3, 0x69, + 0x00, 0x22, 0x18, 0x69, 0x4f, 0xf0, 0x80, 0x51, 0x3c, 0xf0, 0x60, 0xd9, + 0x20, 0x46, 0xfc, 0xf7, 0x50, 0xfd, 0x42, 0x9b, 0x9b, 0x11, 0x42, 0x93, + 0x43, 0x9b, 0x9b, 0x11, 0x80, 0x2e, 0x43, 0x93, 0x24, 0xd1, 0x00, 0x23, + 0x41, 0xa9, 0x18, 0x46, 0x0e, 0xe0, 0x42, 0xea, 0x07, 0x0c, 0x02, 0xac, + 0x34, 0xf9, 0x1c, 0xc0, 0x01, 0x32, 0xc6, 0xeb, 0x0c, 0x04, 0x40, 0x2a, + 0x04, 0xfb, 0x04, 0x00, 0xf3, 0xd1, 0x01, 0x33, 0x02, 0x2b, 0x04, 0xd0, + 0x9f, 0x01, 0x51, 0xf8, 0x04, 0x6f, 0x00, 0x22, 0xeb, 0xe7, 0x01, 0x9c, + 0x28, 0x60, 0x80, 0x09, 0x20, 0x60, 0x06, 0x4b, 0xa0, 0xf5, 0x3a, 0x60, + 0x18, 0x38, 0x98, 0x42, 0x8c, 0xbf, 0x00, 0x20, 0x01, 0x20, 0x00, 0xe0, + 0x00, 0x20, 0x45, 0xb0, 0xbd, 0xe8, 0xf0, 0x8f, 0x48, 0xf4, 0xff, 0x0f, + 0x38, 0xb5, 0x04, 0x46, 0x08, 0x46, 0xfe, 0xf7, 0xe3, 0xfc, 0xe3, 0x69, + 0xa0, 0xf1, 0x9d, 0x05, 0xa0, 0x21, 0x18, 0x69, 0x3c, 0xf0, 0x3e, 0xd9, + 0x2a, 0xb2, 0x6f, 0xf0, 0x61, 0x03, 0x9a, 0x42, 0xb8, 0xbf, 0x1a, 0x46, + 0xc1, 0xb2, 0x52, 0xb2, 0x20, 0x46, 0xbd, 0xe8, 0x38, 0x40, 0xfd, 0xf7, + 0xb8, 0xbc, 0x2d, 0xe9, 0xf0, 0x4f, 0x00, 0xf5, 0x82, 0x53, 0x1b, 0x79, + 0xd7, 0xb0, 0x04, 0x46, 0x0d, 0x46, 0xd0, 0xf8, 0xa8, 0x70, 0x00, 0x2b, + 0x00, 0xf0, 0x76, 0x82, 0xc3, 0x69, 0x6a, 0x21, 0x18, 0x69, 0x3c, 0xf0, + 0x1f, 0xd9, 0x40, 0x00, 0x86, 0xb2, 0x00, 0x2e, 0x00, 0xf0, 0x6c, 0x82, + 0x20, 0x46, 0xfe, 0xf7, 0xf4, 0xfc, 0xe3, 0x69, 0x02, 0x46, 0x10, 0xb9, + 0x18, 0x69, 0x31, 0x46, 0x60, 0xe2, 0x18, 0x69, 0x31, 0x46, 0x3c, 0xf0, + 0x0d, 0xd9, 0x01, 0x28, 0x00, 0xf0, 0x5c, 0x82, 0x06, 0xf1, 0x6e, 0x03, + 0x9b, 0xb2, 0x04, 0x93, 0x06, 0xf1, 0xaa, 0x03, 0x06, 0xf1, 0x06, 0x0b, + 0x06, 0xf1, 0x3a, 0x0a, 0x9b, 0xb2, 0x1f, 0xfa, 0x8b, 0xfb, 0x1f, 0xfa, + 0x8a, 0xfa, 0x05, 0x93, 0x00, 0x2d, 0x00, 0xf0, 0x38, 0x82, 0x20, 0x46, + 0x40, 0xf2, 0xf9, 0x41, 0xfc, 0xf7, 0x37, 0xfb, 0x02, 0x07, 0x00, 0xf1, + 0x41, 0x82, 0x06, 0xad, 0xab, 0x1c, 0x01, 0x93, 0x1a, 0xab, 0x02, 0x93, + 0x0d, 0xf1, 0x6a, 0x03, 0x03, 0x93, 0x20, 0x46, 0x00, 0x23, 0x40, 0xf2, + 0x76, 0x41, 0x40, 0xf2, 0xff, 0x12, 0x00, 0x95, 0xfc, 0xf7, 0x5b, 0xfd, + 0x2b, 0x1d, 0x00, 0x93, 0xab, 0x1d, 0x01, 0x93, 0x1b, 0xab, 0x02, 0x93, + 0x0d, 0xf1, 0x6e, 0x03, 0x03, 0x93, 0x20, 0x46, 0x00, 0x23, 0x40, 0xf2, + 0x77, 0x41, 0x40, 0xf2, 0xff, 0x12, 0xfc, 0xf7, 0x4a, 0xfd, 0x05, 0xf1, + 0x08, 0x03, 0x00, 0x93, 0x05, 0xf1, 0x0a, 0x03, 0x01, 0x93, 0x1c, 0xab, + 0x02, 0x93, 0x0d, 0xf1, 0x72, 0x03, 0x03, 0x93, 0x20, 0x46, 0x40, 0xf2, + 0xaa, 0x41, 0x48, 0xf2, 0xff, 0x12, 0x48, 0xf2, 0x7f, 0x03, 0xfc, 0xf7, + 0x36, 0xfd, 0x05, 0xf1, 0x0c, 0x03, 0x00, 0x93, 0x05, 0xf1, 0x0e, 0x03, + 0x01, 0x93, 0x1d, 0xab, 0x16, 0x22, 0x02, 0x93, 0x0d, 0xf1, 0x76, 0x03, + 0x03, 0x93, 0x20, 0x46, 0x13, 0x46, 0x40, 0xf2, 0x3b, 0x41, 0xfc, 0xf7, + 0x24, 0xfd, 0x05, 0xf1, 0x10, 0x03, 0x00, 0x93, 0x05, 0xf1, 0x12, 0x03, + 0x01, 0x93, 0x1e, 0xab, 0x02, 0x93, 0x0d, 0xf1, 0x7a, 0x03, 0x46, 0x22, + 0x03, 0x93, 0x20, 0x46, 0x00, 0x23, 0x40, 0xf2, 0x3c, 0x41, 0xfc, 0xf7, + 0x12, 0xfd, 0xb4, 0xf8, 0xda, 0x30, 0x05, 0xf1, 0x14, 0x02, 0x03, 0xf4, + 0x70, 0x43, 0xb3, 0xf5, 0x00, 0x5f, 0x05, 0xf1, 0x16, 0x03, 0x8d, 0xe8, + 0x0c, 0x00, 0x1f, 0xab, 0x02, 0x93, 0x41, 0xf2, 0x2b, 0x02, 0x0d, 0xf1, + 0x7e, 0x03, 0x03, 0x93, 0x20, 0x46, 0x40, 0xf2, 0x4c, 0x41, 0x13, 0x46, + 0x37, 0xd1, 0xfc, 0xf7, 0xf8, 0xfc, 0x05, 0xf1, 0x18, 0x03, 0x00, 0x93, + 0x05, 0xf1, 0x1a, 0x03, 0x01, 0x93, 0x20, 0xab, 0x02, 0x93, 0x0d, 0xf1, + 0x82, 0x03, 0x03, 0x93, 0x20, 0x46, 0x40, 0xf2, 0x4d, 0x41, 0x44, 0xf2, + 0x2b, 0x02, 0x44, 0xf2, 0x0a, 0x03, 0xfc, 0xf7, 0xe4, 0xfc, 0x05, 0xf1, + 0x1c, 0x03, 0x00, 0x93, 0x05, 0xf1, 0x1e, 0x03, 0x01, 0x93, 0x21, 0xab, + 0x07, 0x22, 0x02, 0x93, 0x0d, 0xf1, 0x86, 0x03, 0x03, 0x93, 0x20, 0x46, + 0x13, 0x46, 0x40, 0xf2, 0xf9, 0x41, 0xfc, 0xf7, 0xd2, 0xfc, 0x05, 0xf1, + 0x20, 0x03, 0x00, 0x93, 0x22, 0xab, 0x22, 0x35, 0x02, 0x93, 0x07, 0x22, + 0x0d, 0xf1, 0x8a, 0x03, 0x03, 0x93, 0x01, 0x95, 0x20, 0x46, 0x40, 0xf2, + 0xfa, 0x41, 0x13, 0x46, 0x36, 0xe0, 0xfc, 0xf7, 0xc0, 0xfc, 0x05, 0xf1, + 0x18, 0x03, 0x00, 0x93, 0x05, 0xf1, 0x1a, 0x03, 0x01, 0x93, 0x20, 0xab, + 0x02, 0x93, 0x0d, 0xf1, 0x82, 0x03, 0x03, 0x93, 0x20, 0x46, 0x40, 0xf2, + 0x4d, 0x41, 0x44, 0xf2, 0x2b, 0x02, 0x44, 0xf2, 0x22, 0x03, 0xfc, 0xf7, + 0xac, 0xfc, 0x05, 0xf1, 0x1c, 0x03, 0x00, 0x93, 0x05, 0xf1, 0x1e, 0x03, + 0x01, 0x93, 0x21, 0xab, 0x07, 0x22, 0x02, 0x93, 0x0d, 0xf1, 0x86, 0x03, + 0x03, 0x93, 0x20, 0x46, 0x13, 0x46, 0x40, 0xf2, 0xf9, 0x41, 0xfc, 0xf7, + 0x9a, 0xfc, 0x05, 0xf1, 0x20, 0x03, 0x00, 0x93, 0x22, 0xab, 0x22, 0x35, + 0x02, 0x93, 0x0d, 0xf1, 0x8a, 0x03, 0x03, 0x93, 0x01, 0x95, 0x20, 0x46, + 0x40, 0xf2, 0xfa, 0x41, 0x07, 0x22, 0x00, 0x23, 0xfc, 0xf7, 0x89, 0xfc, + 0x2e, 0xab, 0x00, 0x93, 0x0d, 0xf1, 0xba, 0x03, 0x01, 0x93, 0x42, 0xab, + 0x01, 0x22, 0x02, 0x93, 0x0d, 0xf5, 0x85, 0x73, 0x03, 0x93, 0x20, 0x46, + 0x13, 0x46, 0x07, 0x21, 0xfc, 0xf7, 0x02, 0xfc, 0x2f, 0xab, 0x00, 0x93, + 0x0d, 0xf1, 0xbe, 0x03, 0x01, 0x93, 0x43, 0xab, 0x10, 0x22, 0x02, 0x93, + 0x0d, 0xf5, 0x87, 0x73, 0x03, 0x93, 0x20, 0x46, 0x13, 0x46, 0xff, 0x21, + 0xfc, 0xf7, 0xf2, 0xfb, 0x30, 0xab, 0x00, 0x93, 0x0d, 0xf1, 0xc2, 0x03, + 0x01, 0x93, 0x44, 0xab, 0x04, 0x22, 0x02, 0x93, 0x0d, 0xf5, 0x89, 0x73, + 0x03, 0x93, 0x20, 0x46, 0x13, 0x46, 0x40, 0xf2, 0x1f, 0x11, 0xfc, 0xf7, + 0xe1, 0xfb, 0x0f, 0xab, 0x00, 0x93, 0x0d, 0xf1, 0x3e, 0x03, 0x01, 0x93, + 0x23, 0xab, 0x40, 0xf6, 0x44, 0x02, 0x02, 0x93, 0x0d, 0xf1, 0x8e, 0x03, + 0x03, 0x93, 0x20, 0x46, 0x13, 0x46, 0x40, 0xf6, 0x38, 0x11, 0xfc, 0xf7, + 0x46, 0xfc, 0x10, 0xab, 0x00, 0x93, 0x0d, 0xf1, 0x42, 0x03, 0x01, 0x93, + 0x24, 0xab, 0x02, 0x93, 0x0d, 0xf1, 0x92, 0x03, 0x03, 0x93, 0x20, 0x46, + 0x40, 0xf6, 0x39, 0x11, 0x40, 0xf6, 0x44, 0x02, 0x40, 0xf6, 0x04, 0x03, + 0xfc, 0xf7, 0x33, 0xfc, 0x31, 0xab, 0x00, 0x93, 0x0d, 0xf1, 0xc6, 0x03, + 0x01, 0x93, 0x45, 0xab, 0x01, 0x22, 0x02, 0x93, 0x0d, 0xf5, 0x8b, 0x73, + 0x03, 0x93, 0x20, 0x46, 0x13, 0x46, 0x3a, 0x21, 0xfc, 0xf7, 0xac, 0xfb, + 0x32, 0xab, 0x00, 0x93, 0x0d, 0xf1, 0xca, 0x03, 0x01, 0x93, 0x46, 0xab, + 0x08, 0x22, 0x02, 0x93, 0x0d, 0xf5, 0x8d, 0x73, 0x03, 0x93, 0x20, 0x46, + 0x13, 0x46, 0x4f, 0xf4, 0x8d, 0x71, 0xfc, 0xf7, 0x9b, 0xfb, 0x33, 0xab, + 0x00, 0x93, 0x0d, 0xf1, 0xce, 0x03, 0x01, 0x93, 0x47, 0xab, 0x08, 0x22, + 0x02, 0x93, 0x0d, 0xf5, 0x8f, 0x73, 0x03, 0x93, 0x20, 0x46, 0x13, 0x46, + 0x05, 0x21, 0xfc, 0xf7, 0x8b, 0xfb, 0x34, 0xab, 0x00, 0x93, 0x0d, 0xf1, + 0xd2, 0x03, 0x01, 0x93, 0x48, 0xab, 0x04, 0x22, 0x02, 0x93, 0x0d, 0xf5, + 0x91, 0x73, 0x03, 0x93, 0x20, 0x46, 0x13, 0x46, 0x3a, 0x21, 0xfc, 0xf7, + 0x7b, 0xfb, 0x35, 0xab, 0x00, 0x93, 0x0d, 0xf1, 0xd6, 0x03, 0x01, 0x93, + 0x49, 0xab, 0x01, 0x22, 0x02, 0x93, 0x0d, 0xf5, 0x93, 0x73, 0x03, 0x93, + 0x20, 0x46, 0x13, 0x46, 0x4f, 0xf4, 0x8d, 0x71, 0xfc, 0xf7, 0x6a, 0xfb, + 0x11, 0xab, 0x00, 0x93, 0x0d, 0xf1, 0x46, 0x03, 0x01, 0x93, 0x25, 0xab, + 0x02, 0x93, 0x0d, 0xf1, 0x96, 0x03, 0x03, 0x93, 0x20, 0x46, 0x40, 0xf2, + 0xd7, 0x41, 0x47, 0xf2, 0xcb, 0x02, 0x42, 0xf2, 0x4b, 0x03, 0xfc, 0xf7, + 0xce, 0xfb, 0x36, 0xab, 0x00, 0x93, 0x0d, 0xf1, 0xda, 0x03, 0x01, 0x93, + 0x4a, 0xab, 0x20, 0x22, 0x02, 0x93, 0x0d, 0xf5, 0x95, 0x73, 0x03, 0x93, + 0x20, 0x46, 0x13, 0x46, 0x82, 0x21, 0xfc, 0xf7, 0x47, 0xfb, 0x3a, 0x7b, + 0xbb, 0x7a, 0xf9, 0x7a, 0x12, 0x03, 0x43, 0xf4, 0x00, 0x73, 0x42, 0xf0, + 0x03, 0x02, 0x43, 0xea, 0x01, 0x13, 0x42, 0xea, 0x83, 0x03, 0x12, 0xaa, + 0x00, 0x92, 0x0d, 0xf1, 0x4a, 0x02, 0x01, 0x92, 0x26, 0xaa, 0x02, 0x92, + 0x0d, 0xf1, 0x9a, 0x02, 0x03, 0x92, 0x20, 0x46, 0x4f, 0xf4, 0x9b, 0x61, + 0x47, 0xf6, 0xff, 0x72, 0x9b, 0xb2, 0xfc, 0xf7, 0xa0, 0xfb, 0x00, 0x25, + 0xe3, 0x69, 0x0d, 0xf1, 0x18, 0x09, 0x18, 0x69, 0x05, 0xeb, 0x0b, 0x01, + 0x39, 0xf8, 0x05, 0x20, 0x3b, 0xf0, 0x36, 0xdf, 0xe3, 0x69, 0x0d, 0xf1, + 0x68, 0x08, 0x18, 0x69, 0x05, 0xeb, 0x0a, 0x01, 0x38, 0xf8, 0x05, 0x20, + 0x3b, 0xf0, 0x2c, 0xdf, 0xe2, 0x69, 0x09, 0xeb, 0x05, 0x03, 0x0b, 0xf1, + 0x02, 0x01, 0x10, 0x69, 0x49, 0x19, 0x5a, 0x88, 0x3b, 0xf0, 0x22, 0xdf, + 0xe2, 0x69, 0x08, 0xeb, 0x05, 0x03, 0x0a, 0xf1, 0x02, 0x01, 0x10, 0x69, + 0x49, 0x19, 0x5a, 0x88, 0x04, 0x35, 0x3b, 0xf0, 0x17, 0xdf, 0x34, 0x2d, + 0xd4, 0xd1, 0x00, 0x25, 0xe3, 0x69, 0x04, 0x9a, 0x0d, 0xf1, 0xb8, 0x09, + 0xa9, 0x18, 0x18, 0x69, 0x39, 0xf8, 0x05, 0x20, 0x3b, 0xf0, 0x0a, 0xdf, + 0xe3, 0x69, 0x0d, 0xf5, 0x84, 0x78, 0x18, 0x69, 0x05, 0x9b, 0x38, 0xf8, + 0x05, 0x20, 0xe9, 0x18, 0x3b, 0xf0, 0x00, 0xdf, 0x04, 0x9b, 0xe2, 0x69, + 0x99, 0x1c, 0x09, 0xeb, 0x05, 0x03, 0x10, 0x69, 0x49, 0x19, 0x5a, 0x88, + 0x3b, 0xf0, 0xf6, 0xde, 0x05, 0x9b, 0xe2, 0x69, 0x99, 0x1c, 0x08, 0xeb, + 0x05, 0x03, 0x10, 0x69, 0x49, 0x19, 0x5a, 0x88, 0x04, 0x35, 0x3b, 0xf0, + 0xeb, 0xde, 0x24, 0x2d, 0xd4, 0xd1, 0xe3, 0x69, 0xb1, 0x1c, 0x18, 0x69, + 0x0d, 0x22, 0x3b, 0xf0, 0xe3, 0xde, 0xe3, 0x69, 0x31, 0x1d, 0x18, 0x69, + 0x09, 0x22, 0x3b, 0xf0, 0xdd, 0xde, 0xe3, 0x69, 0x06, 0xf1, 0xe6, 0x01, + 0x1a, 0x6a, 0x18, 0x69, 0xc7, 0xf8, 0x38, 0x24, 0xb7, 0xf8, 0x3c, 0x24, + 0x3b, 0xf0, 0xd2, 0xde, 0xe3, 0x69, 0x31, 0x46, 0x18, 0x69, 0x01, 0x22, + 0x3b, 0xf0, 0xcc, 0xde, 0x57, 0xb0, 0xbd, 0xe8, 0xf0, 0x8f, 0x00, 0x00, + 0x38, 0xb5, 0x5b, 0x21, 0x04, 0x46, 0xfd, 0x22, 0xfc, 0xf7, 0x7b, 0xfa, + 0x20, 0x46, 0x04, 0x21, 0x40, 0x22, 0xfc, 0xf7, 0x84, 0xfa, 0x20, 0x46, + 0x4f, 0xf4, 0x90, 0x71, 0x10, 0x22, 0xfc, 0xf7, 0x7e, 0xfa, 0x20, 0x46, + 0x78, 0x21, 0x80, 0x22, 0xfc, 0xf7, 0x79, 0xfa, 0x20, 0x46, 0x40, 0xf2, + 0x29, 0x11, 0x02, 0x22, 0xfc, 0xf7, 0x73, 0xfa, 0x20, 0x46, 0x57, 0x21, + 0x01, 0x22, 0xfc, 0xf7, 0x6e, 0xfa, 0x20, 0x46, 0x5b, 0x21, 0x02, 0x22, + 0xfc, 0xf7, 0x69, 0xfa, 0x41, 0xf2, 0x88, 0x30, 0xf1, 0xf3, 0xb2, 0xf6, + 0x14, 0x4d, 0x02, 0xe0, 0x0a, 0x20, 0xf1, 0xf3, 0xad, 0xf6, 0x5c, 0x21, + 0x20, 0x46, 0xfc, 0xf7, 0x7f, 0xf8, 0x80, 0x06, 0x01, 0xd4, 0x01, 0x3d, + 0xf4, 0xd1, 0x5c, 0x21, 0x20, 0x46, 0xfc, 0xf7, 0x77, 0xf8, 0x81, 0x06, + 0x03, 0xd5, 0x20, 0x46, 0x5c, 0x21, 0xfc, 0xf7, 0x71, 0xf8, 0x20, 0x46, + 0x5b, 0x21, 0xfd, 0x22, 0xfc, 0xf7, 0x3b, 0xfa, 0x20, 0x46, 0x57, 0x21, + 0xfe, 0x22, 0xfc, 0xf7, 0x36, 0xfa, 0x20, 0x46, 0x40, 0xf2, 0x29, 0x11, + 0xfd, 0x22, 0xbd, 0xe8, 0x38, 0x40, 0xfc, 0xf7, 0x2e, 0xba, 0x00, 0xbf, + 0x41, 0x42, 0x0f, 0x00, 0x2d, 0xe9, 0xf8, 0x43, 0x00, 0xf5, 0x80, 0x53, + 0x9d, 0x6a, 0x88, 0x4b, 0x4f, 0xf4, 0x84, 0x76, 0xb5, 0xfb, 0xf3, 0xf5, + 0x75, 0x43, 0x1a, 0x23, 0x57, 0x21, 0xb5, 0xfb, 0xf3, 0xf5, 0x04, 0x46, + 0xfc, 0xf7, 0x4a, 0xf8, 0x17, 0x21, 0x5f, 0xfa, 0x80, 0xf8, 0x20, 0x46, + 0xfc, 0xf7, 0x44, 0xf8, 0x18, 0x21, 0x20, 0x46, 0xfc, 0xf7, 0x40, 0xf8, + 0x40, 0xf2, 0x05, 0x11, 0xfb, 0x22, 0x07, 0x46, 0x20, 0x46, 0xfc, 0xf7, + 0x08, 0xfa, 0x20, 0x46, 0x04, 0x21, 0x40, 0x22, 0xfc, 0xf7, 0x11, 0xfa, + 0x20, 0x46, 0x4f, 0xf4, 0x90, 0x71, 0x10, 0x22, 0xfc, 0xf7, 0x0b, 0xfa, + 0x20, 0x46, 0x57, 0x21, 0x02, 0x22, 0xfc, 0xf7, 0x06, 0xfa, 0x20, 0x46, + 0x40, 0xf2, 0x05, 0x11, 0x04, 0x22, 0xfc, 0xf7, 0x00, 0xfa, 0x20, 0x46, + 0x4f, 0xf4, 0x83, 0x71, 0x2a, 0x22, 0xfc, 0xf7, 0x34, 0xf8, 0xad, 0xb2, + 0x20, 0x46, 0x40, 0xf2, 0x07, 0x11, 0x6e, 0x22, 0xfc, 0xf7, 0x2d, 0xf8, + 0xea, 0xb2, 0x20, 0x46, 0x31, 0x46, 0xfc, 0xf7, 0x28, 0xf8, 0x2a, 0x0a, + 0x20, 0x46, 0x40, 0xf2, 0x09, 0x11, 0x02, 0xf0, 0x1f, 0x02, 0xfc, 0xf7, + 0x20, 0xf8, 0x20, 0x46, 0x40, 0xf2, 0x05, 0x11, 0xfd, 0x22, 0xfc, 0xf7, + 0xd2, 0xf9, 0x20, 0x46, 0x4f, 0xf4, 0x83, 0x71, 0x01, 0x22, 0xfc, 0xf7, + 0xda, 0xf9, 0x32, 0x20, 0xf1, 0xf3, 0x24, 0xf6, 0x5a, 0x4d, 0x02, 0xe0, + 0x0a, 0x20, 0xf1, 0xf3, 0x1f, 0xf6, 0x20, 0x46, 0x4f, 0xf4, 0x85, 0x71, + 0xfb, 0xf7, 0xf0, 0xff, 0xc2, 0x07, 0x01, 0xd4, 0x01, 0x3d, 0xf3, 0xd1, + 0x20, 0x46, 0x4f, 0xf4, 0x85, 0x71, 0xfb, 0xf7, 0xe7, 0xff, 0x10, 0xf0, + 0x01, 0x0f, 0x20, 0x46, 0x06, 0xd1, 0xfa, 0xb2, 0x18, 0x21, 0x0b, 0x25, + 0xfc, 0xf7, 0xbb, 0xf9, 0x2f, 0x46, 0x0a, 0xe0, 0x40, 0xf2, 0x0f, 0x11, + 0xfb, 0xf7, 0xd8, 0xff, 0x00, 0xf0, 0x1f, 0x05, 0x1d, 0x2d, 0x01, 0xd8, + 0xaf, 0x1c, 0x00, 0xe0, 0x0b, 0x27, 0x19, 0x21, 0x20, 0x46, 0xfb, 0xf7, + 0xcd, 0xff, 0x4f, 0xf4, 0x83, 0x71, 0xfe, 0x22, 0x06, 0x46, 0x20, 0x46, + 0xfc, 0xf7, 0x95, 0xf9, 0x20, 0x46, 0x40, 0xf2, 0x05, 0x11, 0xfb, 0x22, + 0xfc, 0xf7, 0x8f, 0xf9, 0x20, 0x46, 0x40, 0xf2, 0x05, 0x11, 0x04, 0x22, + 0xfc, 0xf7, 0x97, 0xf9, 0x20, 0x46, 0x40, 0xf2, 0x05, 0x11, 0x02, 0x22, + 0xfc, 0xf7, 0x91, 0xf9, 0x20, 0x46, 0x4f, 0xf4, 0x83, 0x71, 0x01, 0x22, + 0xfc, 0xf7, 0x8b, 0xf9, 0x32, 0x20, 0xf1, 0xf3, 0xd5, 0xf5, 0xdf, 0xf8, + 0xcc, 0x90, 0x02, 0xe0, 0x0a, 0x20, 0xf1, 0xf3, 0xcf, 0xf5, 0x20, 0x46, + 0x4f, 0xf4, 0x85, 0x71, 0xfb, 0xf7, 0xa0, 0xff, 0xc3, 0x07, 0x02, 0xd4, + 0xb9, 0xf1, 0x01, 0x09, 0xf2, 0xd1, 0x20, 0x46, 0x4f, 0xf4, 0x85, 0x71, + 0xfb, 0xf7, 0x96, 0xff, 0x10, 0xf0, 0x01, 0x0f, 0x20, 0x46, 0x05, 0xd1, + 0xf2, 0xb2, 0x19, 0x21, 0xfb, 0xf7, 0xa5, 0xff, 0x09, 0x26, 0x05, 0xe0, + 0x4f, 0xf4, 0x88, 0x71, 0xfb, 0xf7, 0x88, 0xff, 0x00, 0xf0, 0x1f, 0x06, + 0x20, 0x46, 0xfe, 0x22, 0x4f, 0xf4, 0x83, 0x71, 0xfc, 0xf7, 0x4f, 0xf9, + 0x20, 0x46, 0xfb, 0x22, 0x40, 0xf2, 0x05, 0x11, 0xfc, 0xf7, 0x49, 0xf9, + 0x42, 0x46, 0x4f, 0xea, 0x46, 0x18, 0x48, 0xea, 0x86, 0x28, 0x48, 0xea, + 0x06, 0x08, 0x20, 0x46, 0x57, 0x21, 0xfb, 0xf7, 0x86, 0xff, 0x20, 0x46, + 0x42, 0x46, 0x40, 0xf6, 0x33, 0x11, 0xfb, 0xf7, 0xb1, 0xff, 0x42, 0x46, + 0x4f, 0xea, 0x85, 0x28, 0x20, 0x46, 0x48, 0xea, 0x45, 0x18, 0x40, 0xf6, + 0x34, 0x11, 0xfb, 0xf7, 0xa7, 0xff, 0x20, 0x46, 0x46, 0xea, 0x08, 0x02, + 0x40, 0xf6, 0x35, 0x11, 0xfb, 0xf7, 0xa0, 0xff, 0x20, 0x46, 0x48, 0xea, + 0x05, 0x02, 0x40, 0xf6, 0x36, 0x11, 0xfb, 0xf7, 0x99, 0xff, 0x47, 0xea, + 0x47, 0x17, 0xfa, 0x05, 0x20, 0x46, 0x40, 0xf6, 0x37, 0x11, 0xd2, 0x0d, + 0xbd, 0xe8, 0xf8, 0x43, 0xfb, 0xf7, 0x8e, 0xbf, 0x40, 0x42, 0x0f, 0x00, + 0x41, 0x42, 0x0f, 0x00, 0x70, 0xb5, 0x04, 0x46, 0x0e, 0x46, 0x00, 0x25, + 0x6b, 0x4b, 0x20, 0x46, 0x59, 0x5b, 0xfb, 0xf7, 0x39, 0xff, 0x70, 0x53, + 0x02, 0x35, 0x30, 0x2d, 0xf6, 0xd1, 0x18, 0x22, 0x20, 0x46, 0x67, 0x49, + 0xfc, 0xf7, 0x70, 0xf9, 0x3a, 0x21, 0xfb, 0x22, 0x20, 0x46, 0xfc, 0xf7, + 0xfa, 0xf8, 0x01, 0x22, 0x20, 0x46, 0x4f, 0xf4, 0x8d, 0x71, 0xfc, 0xf7, + 0x02, 0xf9, 0x36, 0x21, 0x01, 0x22, 0x20, 0x46, 0xfc, 0xf7, 0xfd, 0xf8, + 0x10, 0x22, 0x4f, 0xf4, 0x8d, 0x71, 0x20, 0x46, 0xfc, 0xf7, 0xf7, 0xf8, + 0x14, 0x20, 0xf1, 0xf3, 0x41, 0xf5, 0x3a, 0x21, 0x01, 0x22, 0x20, 0x46, + 0xfc, 0xf7, 0xef, 0xf8, 0x14, 0x20, 0xf1, 0xf3, 0x39, 0xf5, 0xb4, 0xf8, + 0xda, 0x30, 0x3a, 0x21, 0x03, 0xf4, 0x70, 0x43, 0x01, 0x22, 0xb3, 0xf5, + 0x00, 0x5f, 0x20, 0x46, 0x05, 0xd0, 0x00, 0x23, 0xfc, 0xf7, 0xee, 0xf8, + 0x20, 0x46, 0xca, 0x21, 0x04, 0x22, 0x13, 0x46, 0xfc, 0xf7, 0xe8, 0xf8, + 0x08, 0x22, 0x20, 0x46, 0x4f, 0xf4, 0x8d, 0x71, 0xfc, 0xf7, 0xd3, 0xf8, + 0x25, 0x21, 0x0e, 0x22, 0x20, 0x46, 0xfb, 0xf7, 0x08, 0xff, 0x25, 0x21, + 0x01, 0x22, 0x20, 0x46, 0xfc, 0xf7, 0xc9, 0xf8, 0xb4, 0xf8, 0xda, 0x30, + 0x28, 0x21, 0x03, 0xf4, 0x70, 0x43, 0x1e, 0x22, 0xb3, 0xf5, 0x80, 0x5f, + 0x20, 0x46, 0x01, 0xd1, 0x08, 0x23, 0x00, 0xe0, 0x0c, 0x23, 0xfc, 0xf7, + 0xc9, 0xf8, 0x14, 0x20, 0xf1, 0xf3, 0x04, 0xf5, 0x05, 0x21, 0x08, 0x22, + 0x20, 0x46, 0xfb, 0xf7, 0xec, 0xfe, 0x80, 0x22, 0x4f, 0xf4, 0x89, 0x71, + 0x20, 0x46, 0xfc, 0xf7, 0xac, 0xf8, 0x14, 0x20, 0xf1, 0xf3, 0xf6, 0xf4, + 0xff, 0x21, 0x10, 0x22, 0x20, 0x46, 0xfc, 0xf7, 0xa4, 0xf8, 0x44, 0x22, + 0x40, 0xf2, 0x1f, 0x11, 0x20, 0x46, 0xfc, 0xf7, 0x9e, 0xf8, 0x14, 0x20, + 0xf1, 0xf3, 0xe8, 0xf4, 0x0b, 0x21, 0x07, 0x22, 0x20, 0x46, 0xfc, 0xf7, + 0x96, 0xf8, 0x10, 0x22, 0x40, 0xf2, 0x13, 0x11, 0x20, 0x46, 0xfc, 0xf7, + 0x90, 0xf8, 0x14, 0x20, 0xf1, 0xf3, 0xda, 0xf4, 0x07, 0x21, 0x01, 0x22, + 0x20, 0x46, 0xfb, 0xf7, 0xc2, 0xfe, 0x14, 0x20, 0xf1, 0xf3, 0xd2, 0xf4, + 0x02, 0x23, 0x03, 0x22, 0x20, 0x46, 0xfc, 0x21, 0xfc, 0xf7, 0x8e, 0xf8, + 0xfd, 0x21, 0x20, 0x46, 0xa6, 0x22, 0xfb, 0xf7, 0xb4, 0xfe, 0x44, 0x22, + 0x40, 0xf2, 0x1f, 0x11, 0x20, 0x46, 0xfc, 0xf7, 0x74, 0xf8, 0x14, 0x20, + 0xf1, 0xf3, 0xbe, 0xf4, 0xff, 0x21, 0x10, 0x22, 0x20, 0x46, 0xfc, 0xf7, + 0x6c, 0xf8, 0x14, 0x20, 0xf1, 0xf3, 0xb6, 0xf4, 0xb4, 0xf8, 0xda, 0x30, + 0x20, 0x46, 0x03, 0xf4, 0x70, 0x43, 0xb3, 0xf5, 0x80, 0x5f, 0x02, 0xd1, + 0x10, 0x49, 0x08, 0x22, 0x01, 0xe0, 0x10, 0x49, 0x06, 0x22, 0xfc, 0xf7, + 0xbd, 0xf8, 0x20, 0x46, 0x59, 0x21, 0xcc, 0x22, 0xfb, 0xf7, 0x8f, 0xfe, + 0x20, 0x46, 0x5c, 0x21, 0x2e, 0x22, 0xfb, 0xf7, 0x8a, 0xfe, 0x20, 0x46, + 0x78, 0x21, 0xd7, 0x22, 0xfb, 0xf7, 0x85, 0xfe, 0x20, 0x46, 0x92, 0x21, + 0x15, 0x22, 0xbd, 0xe8, 0x70, 0x40, 0xfb, 0xf7, 0x7e, 0xbe, 0x00, 0xbf, + 0xe8, 0xea, 0x01, 0x00, 0x56, 0xe7, 0x01, 0x00, 0x86, 0xe7, 0x01, 0x00, + 0x96, 0xe7, 0x01, 0x00, 0x2d, 0xe9, 0xf0, 0x4f, 0x00, 0x27, 0x89, 0xb0, + 0x89, 0x46, 0x40, 0xf2, 0x45, 0x61, 0x06, 0x46, 0x05, 0x97, 0x06, 0x97, + 0x07, 0x97, 0xd0, 0xf8, 0xa8, 0x80, 0xfb, 0xf7, 0x8c, 0xfe, 0x40, 0xf2, + 0x46, 0x61, 0x85, 0x05, 0x30, 0x46, 0xfb, 0xf7, 0x86, 0xfe, 0x3c, 0x49, + 0x84, 0x05, 0x06, 0x22, 0x30, 0x46, 0xfc, 0xf7, 0x83, 0xf8, 0x30, 0x46, + 0x39, 0x46, 0x3a, 0x46, 0xfe, 0xf7, 0x63, 0xfa, 0x05, 0xab, 0x00, 0x93, + 0x4f, 0xf4, 0xfa, 0x73, 0x01, 0x93, 0x49, 0x46, 0x30, 0x46, 0x20, 0x22, + 0x3b, 0x46, 0xff, 0xf7, 0x27, 0xf8, 0xad, 0x0d, 0xa4, 0x0d, 0x81, 0x46, + 0x00, 0x28, 0x47, 0xd0, 0x05, 0xab, 0x93, 0xe8, 0x08, 0x0c, 0x0b, 0xeb, + 0x0a, 0x02, 0x01, 0x2a, 0x3f, 0xd9, 0x18, 0x46, 0x03, 0x93, 0xfd, 0xf7, + 0x73, 0xf9, 0x04, 0x46, 0x58, 0x46, 0xfd, 0xf7, 0x6f, 0xf9, 0xa4, 0xf1, + 0x14, 0x02, 0x12, 0xb2, 0xba, 0x42, 0x03, 0x9b, 0x06, 0xdb, 0x3a, 0xfa, + 0x02, 0xf1, 0x3e, 0xd0, 0x55, 0x1c, 0x2a, 0xfa, 0x05, 0xf5, 0x06, 0xe0, + 0x51, 0x42, 0x1a, 0xfa, 0x01, 0xf1, 0x36, 0xd0, 0xd5, 0x43, 0x0a, 0xfa, + 0x05, 0xf5, 0x24, 0xb2, 0xc4, 0xf1, 0x1e, 0x04, 0xa3, 0x40, 0xa0, 0xf1, + 0x0b, 0x07, 0x3f, 0xb2, 0x00, 0x2f, 0xc3, 0xeb, 0x05, 0x05, 0x02, 0xdb, + 0x3a, 0xfa, 0x07, 0xfa, 0x02, 0xe0, 0x7f, 0x42, 0x1a, 0xfa, 0x07, 0xfa, + 0x23, 0xd0, 0x00, 0xb2, 0xc0, 0xf1, 0x1f, 0x00, 0x0b, 0xfa, 0x00, 0xfb, + 0x95, 0xfb, 0xf1, 0xf5, 0x9b, 0xfb, 0xfa, 0xfa, 0x05, 0xfb, 0x15, 0xa0, + 0xfd, 0xf7, 0x49, 0xf9, 0xad, 0x05, 0x84, 0x05, 0xad, 0x0d, 0xa4, 0x0d, + 0x00, 0xe0, 0xb9, 0x46, 0x30, 0x46, 0x29, 0x46, 0x22, 0x46, 0xfe, 0xf7, + 0x06, 0xfa, 0x30, 0x46, 0x08, 0x49, 0x06, 0x22, 0xfc, 0xf7, 0x1c, 0xf8, + 0xa8, 0xf8, 0xb8, 0x52, 0xa8, 0xf8, 0xba, 0x42, 0x02, 0xe0, 0x89, 0x46, + 0x00, 0xe0, 0xd1, 0x46, 0x48, 0x46, 0x09, 0xb0, 0xbd, 0xe8, 0xf0, 0x8f, + 0x10, 0xea, 0x01, 0x00, 0x24, 0xea, 0x01, 0x00, 0x38, 0xb5, 0x04, 0x46, + 0x0d, 0x46, 0xa9, 0xb1, 0x04, 0x22, 0x11, 0x49, 0xfc, 0xf7, 0x04, 0xf8, + 0xd4, 0xf8, 0xa8, 0x30, 0x20, 0x46, 0x93, 0xf8, 0xe9, 0x33, 0x40, 0xf6, + 0x4a, 0x11, 0xa0, 0x2b, 0x0c, 0xbf, 0x40, 0xf2, 0x4f, 0x12, 0xa7, 0x22, + 0xfb, 0xf7, 0xfe, 0xfd, 0x20, 0x46, 0x09, 0x49, 0x0e, 0x22, 0x01, 0xe0, + 0x08, 0x49, 0x0a, 0x22, 0xfb, 0xf7, 0xee, 0xff, 0xe3, 0x69, 0x29, 0x1c, + 0x18, 0x69, 0x18, 0xbf, 0x01, 0x21, 0xbd, 0xe8, 0x38, 0x40, 0x3b, 0xf0, + 0xf7, 0x9b, 0x00, 0xbf, 0x1c, 0xea, 0x01, 0x00, 0x98, 0xeb, 0x01, 0x00, + 0x30, 0xea, 0x01, 0x00, 0x70, 0xb5, 0x0d, 0x46, 0x06, 0x22, 0x28, 0x49, + 0xed, 0xb2, 0x04, 0x46, 0xd0, 0xf8, 0xa8, 0x60, 0xfb, 0xf7, 0xd4, 0xff, + 0x0c, 0x2d, 0x07, 0xd9, 0x04, 0xf5, 0x8a, 0x53, 0x93, 0xf9, 0x30, 0x50, + 0x00, 0x35, 0x18, 0xbf, 0x01, 0x25, 0x00, 0xe0, 0x00, 0x25, 0x96, 0xf8, + 0x1a, 0x35, 0x00, 0x2b, 0x32, 0xd0, 0x20, 0x46, 0x40, 0xf6, 0x42, 0x11, + 0xfb, 0xf7, 0xbd, 0xfd, 0x00, 0xb2, 0x0d, 0xb1, 0x0f, 0x38, 0x00, 0xe0, + 0x00, 0x30, 0xd4, 0xf8, 0xf8, 0x30, 0x18, 0xbf, 0x01, 0x20, 0x13, 0xf0, + 0x06, 0x0f, 0x21, 0xd1, 0x96, 0xf8, 0x2c, 0x30, 0xab, 0x42, 0x00, 0xd1, + 0xe0, 0xb1, 0xe3, 0x69, 0xd8, 0x68, 0x99, 0x68, 0x55, 0xb1, 0x01, 0x22, + 0xf0, 0xf3, 0xe4, 0xf7, 0x20, 0x46, 0x01, 0x21, 0xff, 0xf7, 0x98, 0xff, + 0x01, 0x23, 0x86, 0xf8, 0x2c, 0x30, 0x08, 0xe0, 0x2a, 0x46, 0xf0, 0xf3, + 0xd9, 0xf7, 0x20, 0x46, 0x29, 0x46, 0xff, 0xf7, 0x8d, 0xff, 0x86, 0xf8, + 0x2c, 0x50, 0x20, 0x46, 0x06, 0x49, 0x0c, 0x22, 0xfb, 0xf7, 0x92, 0xff, + 0x05, 0x49, 0x20, 0x46, 0x04, 0x22, 0xbd, 0xe8, 0x70, 0x40, 0xfb, 0xf7, + 0x8b, 0xbf, 0x00, 0xbf, 0xde, 0xeb, 0x01, 0x00, 0x08, 0xee, 0x01, 0x00, + 0xf8, 0xed, 0x01, 0x00, 0x70, 0xb5, 0x0c, 0x46, 0xb0, 0xf8, 0xda, 0x10, + 0x15, 0x46, 0xd0, 0xf8, 0xa8, 0x60, 0xfc, 0xf7, 0x43, 0xfa, 0x28, 0xb9, + 0x96, 0xf8, 0x4c, 0x34, 0x23, 0x70, 0x96, 0xf8, 0x4d, 0x34, 0x01, 0xe0, + 0x00, 0x23, 0x23, 0x70, 0x2b, 0x70, 0x70, 0xbd, 0x07, 0xb5, 0x40, 0xf2, + 0x56, 0x43, 0x00, 0x93, 0x40, 0xf2, 0x55, 0x42, 0x40, 0xf2, 0x57, 0x43, + 0xfc, 0xf7, 0x8f, 0xf8, 0x0e, 0xbd, 0xf0, 0xb5, 0x14, 0x46, 0x01, 0x32, + 0x8b, 0xb0, 0x06, 0x46, 0x0d, 0x46, 0xd0, 0xf8, 0xa8, 0x70, 0x02, 0xd1, + 0xfd, 0xf7, 0xa7, 0xfe, 0x44, 0xb2, 0x97, 0xf9, 0x66, 0x75, 0xeb, 0xb2, + 0x01, 0x37, 0x93, 0xfb, 0xf7, 0xf7, 0x07, 0x23, 0x03, 0x93, 0x20, 0x23, + 0x05, 0x93, 0x01, 0x23, 0xff, 0xb2, 0x02, 0x93, 0x06, 0xab, 0x01, 0x93, + 0x30, 0x46, 0x07, 0xf5, 0xa0, 0x73, 0x01, 0xa9, 0x04, 0x93, 0xff, 0xf7, + 0xd3, 0xff, 0x06, 0x9b, 0xc0, 0x37, 0x1b, 0x0d, 0xdb, 0xb2, 0x06, 0x93, + 0x30, 0x46, 0x07, 0xab, 0x01, 0xa9, 0x01, 0x93, 0x04, 0x97, 0xff, 0xf7, + 0xc7, 0xff, 0x00, 0x21, 0x06, 0x98, 0x08, 0xaa, 0x09, 0xab, 0xf3, 0xf3, + 0x49, 0xf1, 0x00, 0x21, 0x40, 0x20, 0x0d, 0xf1, 0x26, 0x03, 0x0d, 0xf1, + 0x22, 0x02, 0xf3, 0xf3, 0x41, 0xf1, 0xbd, 0xf9, 0x24, 0x10, 0xbd, 0xf9, + 0x26, 0x30, 0x99, 0x42, 0x09, 0xda, 0xbd, 0xf9, 0x22, 0x00, 0x59, 0x1a, + 0xf3, 0xf3, 0xe8, 0xf1, 0xbd, 0xf8, 0x24, 0x60, 0xad, 0xf8, 0x22, 0x00, + 0x08, 0xe0, 0xbd, 0xf9, 0x20, 0x00, 0xc9, 0x1a, 0xf3, 0xf3, 0xde, 0xf1, + 0xbd, 0xf8, 0x26, 0x60, 0xad, 0xf8, 0x20, 0x00, 0xbd, 0xf9, 0x20, 0x00, + 0xbd, 0xf9, 0x22, 0x10, 0xf3, 0xf3, 0xde, 0xf1, 0x33, 0xb2, 0x03, 0x2b, + 0x01, 0xdd, 0x04, 0x3e, 0x01, 0xe0, 0xc6, 0xf1, 0x04, 0x06, 0x36, 0xb2, + 0xb5, 0x40, 0xb3, 0x1e, 0x01, 0x22, 0x12, 0xfa, 0x03, 0xf3, 0x00, 0xeb, + 0x80, 0x00, 0x28, 0x18, 0xc0, 0x18, 0x01, 0x3e, 0x50, 0xfa, 0x06, 0xf6, + 0x74, 0x43, 0xe0, 0x08, 0x80, 0xb2, 0x0b, 0xb0, 0xf0, 0xbd, 0x30, 0xb5, + 0x18, 0x23, 0x87, 0xb0, 0x03, 0x93, 0x00, 0x23, 0xd0, 0xf8, 0xa8, 0x40, + 0x80, 0x22, 0x04, 0x93, 0x20, 0x23, 0x05, 0x93, 0x40, 0xf2, 0x76, 0x61, + 0x13, 0x46, 0x05, 0x46, 0x02, 0x92, 0xfb, 0xf7, 0xcd, 0xfe, 0x04, 0xf1, + 0x9c, 0x03, 0x06, 0xa9, 0x41, 0xf8, 0x14, 0x3d, 0x28, 0x46, 0xff, 0xf7, + 0x67, 0xff, 0x40, 0xf2, 0x71, 0x61, 0x28, 0x46, 0xfb, 0xf7, 0xcf, 0xfc, + 0x40, 0xf2, 0x73, 0x61, 0xa4, 0xf8, 0x9c, 0x02, 0x28, 0x46, 0xfb, 0xf7, + 0xc8, 0xfc, 0x40, 0xf2, 0x74, 0x61, 0xa4, 0xf8, 0x9e, 0x02, 0x28, 0x46, + 0xfb, 0xf7, 0xc1, 0xfc, 0x40, 0xf2, 0x75, 0x61, 0xa4, 0xf8, 0xa2, 0x02, + 0x28, 0x46, 0xfb, 0xf7, 0xba, 0xfc, 0x40, 0xf2, 0x79, 0x61, 0xa4, 0xf8, + 0xa0, 0x02, 0x28, 0x46, 0xfb, 0xf7, 0xb3, 0xfc, 0x40, 0xf2, 0x76, 0x61, + 0xa4, 0xf8, 0xa4, 0x02, 0x28, 0x46, 0xfb, 0xf7, 0xac, 0xfc, 0x40, 0xf2, + 0xda, 0x61, 0xa4, 0xf8, 0xa6, 0x02, 0x28, 0x46, 0xfb, 0xf7, 0xa5, 0xfc, + 0x40, 0xf2, 0x25, 0x51, 0xa4, 0xf8, 0xa8, 0x02, 0x28, 0x46, 0xfb, 0xf7, + 0x9e, 0xfc, 0x94, 0xf8, 0x67, 0x35, 0xa4, 0xf8, 0xaa, 0x02, 0x84, 0xf8, + 0xac, 0x32, 0x4f, 0xf4, 0x8f, 0x61, 0x28, 0x46, 0xfb, 0xf7, 0x93, 0xfc, + 0x4f, 0xf4, 0x9a, 0x61, 0xa4, 0xf8, 0xae, 0x02, 0x28, 0x46, 0xfb, 0xf7, + 0x8c, 0xfc, 0x40, 0xf2, 0x24, 0x51, 0xa4, 0xf8, 0xb0, 0x02, 0x28, 0x46, + 0xfb, 0xf7, 0x85, 0xfc, 0xb4, 0xf8, 0x68, 0x35, 0xc0, 0x0b, 0xa4, 0xf8, + 0xb4, 0x32, 0x94, 0xf8, 0x07, 0x34, 0xa4, 0xf8, 0xb2, 0x02, 0x84, 0xf8, + 0xb6, 0x32, 0x94, 0xf8, 0x08, 0x34, 0x84, 0xf8, 0xb7, 0x32, 0x07, 0xb0, + 0x30, 0xbd, 0x30, 0xb5, 0x40, 0xf2, 0xdf, 0x41, 0x89, 0xb0, 0xd0, 0xf8, + 0xa8, 0x40, 0x05, 0x46, 0xfb, 0xf7, 0x6b, 0xfc, 0x80, 0xb2, 0xc3, 0xb2, + 0x7f, 0x2b, 0xa4, 0xf8, 0x4c, 0x30, 0xc4, 0xbf, 0xa3, 0xf5, 0x80, 0x73, + 0xa4, 0xf8, 0x4c, 0x30, 0x00, 0x0a, 0x7f, 0x28, 0xa4, 0xf8, 0x4e, 0x00, + 0x06, 0xab, 0xc4, 0xbf, 0xa0, 0xf5, 0x80, 0x70, 0xa4, 0xf8, 0x4e, 0x00, + 0x01, 0x93, 0x02, 0x23, 0x02, 0x93, 0x11, 0x23, 0x03, 0x93, 0x3b, 0x23, + 0x04, 0x93, 0x28, 0x46, 0x20, 0x23, 0x01, 0xa9, 0x05, 0x93, 0xff, 0xf7, + 0xdd, 0xfe, 0x06, 0x9b, 0x3f, 0x2b, 0x01, 0xd9, 0x80, 0x3b, 0x06, 0x93, + 0x06, 0x9b, 0x23, 0x65, 0x07, 0x9b, 0x3f, 0x2b, 0x01, 0xd9, 0x80, 0x3b, + 0x07, 0x93, 0x07, 0x9b, 0x40, 0xf2, 0x34, 0x41, 0x63, 0x65, 0x28, 0x46, + 0xfb, 0xf7, 0x37, 0xfc, 0xc0, 0xb2, 0x7f, 0x28, 0xc4, 0xbf, 0xa0, 0xf5, + 0x80, 0x70, 0x80, 0xb2, 0x84, 0xf8, 0x58, 0x00, 0x40, 0xf2, 0x24, 0x41, + 0x28, 0x46, 0xfb, 0xf7, 0x2a, 0xfc, 0x00, 0x0a, 0xa4, 0xf8, 0x5a, 0x00, + 0x40, 0xf2, 0x25, 0x41, 0x28, 0x46, 0xfb, 0xf7, 0x22, 0xfc, 0x06, 0xab, + 0x01, 0x93, 0x02, 0x23, 0x02, 0x93, 0x0d, 0x23, 0xc0, 0xb2, 0x03, 0x93, + 0x1c, 0x23, 0xa4, 0xf8, 0x5c, 0x00, 0x04, 0x93, 0x28, 0x46, 0x20, 0x23, + 0x01, 0xa9, 0x05, 0x93, 0xff, 0xf7, 0xa4, 0xfe, 0x06, 0x9b, 0x23, 0x64, + 0x07, 0x9b, 0x63, 0x64, 0x09, 0xb0, 0x30, 0xbd, 0x7f, 0xb5, 0x00, 0x23, + 0x02, 0x93, 0x10, 0x23, 0x04, 0x93, 0x0d, 0xf1, 0x16, 0x03, 0x00, 0x93, + 0x01, 0x23, 0x01, 0x93, 0x69, 0x46, 0x55, 0x23, 0x03, 0x93, 0xff, 0xf7, + 0x8f, 0xfe, 0xbd, 0xf8, 0x16, 0x00, 0x07, 0xb0, 0x00, 0xbd, 0x2d, 0xe9, + 0xf0, 0x47, 0xd0, 0xf8, 0xa8, 0x90, 0x04, 0x46, 0x99, 0xf8, 0x46, 0x35, + 0x4b, 0xb9, 0xff, 0xf7, 0xe3, 0xff, 0x40, 0xf3, 0x07, 0x26, 0x45, 0xb2, + 0xad, 0xb2, 0xb6, 0xb2, 0x2f, 0x46, 0xb0, 0x46, 0x07, 0xe0, 0xb9, 0xf8, + 0x4a, 0x85, 0xb9, 0xf8, 0x4c, 0x75, 0xb9, 0xf8, 0x4e, 0x65, 0xb9, 0xf8, + 0x50, 0x55, 0xb4, 0xf8, 0xda, 0x30, 0x20, 0x46, 0x03, 0xf4, 0x70, 0x43, + 0xb3, 0xf5, 0x00, 0x5f, 0x0c, 0xbf, 0xb9, 0xf8, 0x66, 0x90, 0xb9, 0xf8, + 0x68, 0x90, 0x4f, 0xf0, 0xff, 0x32, 0x01, 0x21, 0xfd, 0xf7, 0xa0, 0xfc, + 0x01, 0x21, 0x0f, 0xfa, 0x89, 0xf2, 0x82, 0x46, 0x20, 0x46, 0xfd, 0xf7, + 0x99, 0xfc, 0x00, 0x21, 0x1f, 0xfa, 0x80, 0xf9, 0x4f, 0xf0, 0xff, 0x32, + 0x20, 0x46, 0xfd, 0xf7, 0x91, 0xfc, 0xc9, 0xeb, 0x0a, 0x0a, 0x1f, 0xfa, + 0x8a, 0xfa, 0xca, 0xeb, 0x08, 0x08, 0x1f, 0xfa, 0x88, 0xf8, 0xca, 0xeb, + 0x07, 0x07, 0xff, 0x22, 0x43, 0x46, 0xbf, 0xb2, 0xc9, 0xeb, 0x00, 0x09, + 0x40, 0xf6, 0x52, 0x11, 0x20, 0x46, 0xfb, 0xf7, 0x9b, 0xfd, 0x20, 0x46, + 0xff, 0x22, 0x3b, 0x46, 0x40, 0xf6, 0x53, 0x11, 0xfb, 0xf7, 0x94, 0xfd, + 0x20, 0x46, 0xff, 0x22, 0x43, 0x46, 0x40, 0xf6, 0x56, 0x11, 0xfb, 0xf7, + 0x8d, 0xfd, 0x1f, 0xfa, 0x89, 0xf9, 0x20, 0x46, 0xff, 0x22, 0x3b, 0x46, + 0x40, 0xf6, 0x57, 0x11, 0xfb, 0xf7, 0x84, 0xfd, 0xc9, 0xeb, 0x06, 0x03, + 0x20, 0x46, 0xff, 0x22, 0x40, 0xf6, 0x48, 0x11, 0x9b, 0xb2, 0xfb, 0xf7, + 0x7b, 0xfd, 0xc9, 0xeb, 0x05, 0x05, 0x20, 0x46, 0x40, 0xf6, 0x49, 0x11, + 0xff, 0x22, 0xab, 0xb2, 0xbd, 0xe8, 0xf0, 0x47, 0xfb, 0xf7, 0x70, 0xbd, + 0x2d, 0xe9, 0xf0, 0x47, 0x92, 0x46, 0x3e, 0x4a, 0x92, 0xb0, 0xd0, 0xf8, + 0xa8, 0x50, 0x04, 0x46, 0x0b, 0x46, 0x6e, 0x46, 0x02, 0xf1, 0x20, 0x0e, + 0x10, 0x68, 0x51, 0x68, 0x37, 0x46, 0x03, 0xc7, 0x08, 0x32, 0x72, 0x45, + 0x3e, 0x46, 0xf7, 0xd1, 0x12, 0x88, 0x09, 0xae, 0x3a, 0x80, 0x35, 0x4a, + 0x02, 0xf1, 0x20, 0x0e, 0x10, 0x68, 0x51, 0x68, 0x37, 0x46, 0x03, 0xc7, + 0x08, 0x32, 0x72, 0x45, 0x3e, 0x46, 0xf7, 0xd1, 0x12, 0x88, 0x20, 0x46, + 0x3a, 0x80, 0x9b, 0xb1, 0x00, 0x22, 0x40, 0xf6, 0x0f, 0x11, 0xfb, 0xf7, + 0x5f, 0xfb, 0x95, 0xf8, 0xe9, 0x33, 0x09, 0xaf, 0xa0, 0x2b, 0x14, 0xbf, + 0x4f, 0xf0, 0x10, 0x08, 0x4f, 0xf0, 0x11, 0x08, 0x14, 0xbf, 0x05, 0x21, + 0x03, 0x21, 0x26, 0x4b, 0x26, 0x4a, 0x12, 0xe0, 0x01, 0x22, 0x4f, 0xf4, + 0x11, 0x61, 0xfb, 0xf7, 0x4b, 0xfb, 0x95, 0xf8, 0xe9, 0x33, 0x23, 0x4a, + 0xa0, 0x2b, 0x23, 0x4b, 0x6f, 0x46, 0x14, 0xbf, 0x4f, 0xf0, 0x10, 0x08, + 0x4f, 0xf0, 0x11, 0x08, 0x14, 0xbf, 0x0e, 0x21, 0x0a, 0x21, 0x08, 0xbf, + 0x1a, 0x46, 0x00, 0x23, 0x05, 0xe0, 0x16, 0x46, 0x30, 0x88, 0x01, 0x33, + 0x24, 0x32, 0x82, 0x45, 0x06, 0xd0, 0x8b, 0x42, 0x1f, 0xfa, 0x83, 0xf9, + 0xf5, 0xdb, 0x4f, 0xf6, 0xff, 0x79, 0x0b, 0xe0, 0x00, 0x25, 0x07, 0xe0, + 0x20, 0x46, 0x37, 0xf8, 0x02, 0x1b, 0x36, 0xf8, 0x02, 0x2f, 0xfb, 0xf7, + 0x23, 0xfb, 0x01, 0x35, 0x45, 0x45, 0xf5, 0xdb, 0x20, 0x46, 0xfd, 0xf7, + 0xbd, 0xfb, 0x10, 0xb1, 0x20, 0x46, 0xff, 0xf7, 0x16, 0xff, 0x20, 0x46, + 0x0f, 0xfa, 0x89, 0xf9, 0xfd, 0xf7, 0x26, 0xff, 0xb9, 0xf1, 0xff, 0x3f, + 0x0c, 0xbf, 0x4f, 0xf0, 0xff, 0x30, 0x00, 0x20, 0x12, 0xb0, 0xbd, 0xe8, + 0xf0, 0x87, 0x00, 0xbf, 0x00, 0xb8, 0x01, 0x00, 0x22, 0xb8, 0x01, 0x00, + 0x34, 0x02, 0x02, 0x00, 0xec, 0x06, 0x02, 0x00, 0xe8, 0x04, 0x02, 0x00, + 0xa0, 0x02, 0x02, 0x00, 0x2d, 0xe9, 0xf0, 0x43, 0x25, 0x4b, 0x8b, 0xb0, + 0x91, 0x46, 0x04, 0x46, 0x0d, 0x46, 0x01, 0xaa, 0x03, 0xf1, 0x20, 0x07, + 0x18, 0x68, 0x59, 0x68, 0x16, 0x46, 0x03, 0xc6, 0x08, 0x33, 0xbb, 0x42, + 0x32, 0x46, 0xf7, 0xd1, 0x1b, 0x88, 0x33, 0x80, 0xd4, 0xf8, 0xa8, 0x30, + 0x93, 0xf8, 0xe9, 0x83, 0xb8, 0xf1, 0xa0, 0x0f, 0x0c, 0xbf, 0x4f, 0xf0, + 0x11, 0x08, 0x4f, 0xf0, 0x10, 0x08, 0x65, 0xb9, 0x2e, 0x46, 0x2f, 0x46, + 0x17, 0xe0, 0x01, 0xab, 0x99, 0x5b, 0x20, 0x46, 0xfb, 0xf7, 0xcb, 0xfa, + 0x01, 0x37, 0x29, 0xf8, 0x06, 0x00, 0x02, 0x36, 0x01, 0xe0, 0x00, 0x26, + 0x37, 0x46, 0x47, 0x45, 0xf1, 0xdb, 0x0a, 0xe0, 0x01, 0xab, 0x99, 0x5b, + 0x39, 0xf8, 0x06, 0x20, 0x20, 0x46, 0xfb, 0xf7, 0xc5, 0xfa, 0x01, 0x37, + 0x02, 0x36, 0x47, 0x45, 0xf4, 0xdb, 0x20, 0x46, 0xfd, 0xf7, 0x5e, 0xfb, + 0x10, 0xb1, 0x20, 0x46, 0xff, 0xf7, 0xb7, 0xfe, 0x2d, 0xb9, 0x20, 0x46, + 0x0b, 0xb0, 0xbd, 0xe8, 0xf0, 0x43, 0xfd, 0xf7, 0xc5, 0xbe, 0x0b, 0xb0, + 0xbd, 0xe8, 0xf0, 0x83, 0x22, 0xb8, 0x01, 0x00, 0x30, 0xb5, 0x87, 0xb0, + 0x05, 0xab, 0x00, 0x93, 0x02, 0x23, 0x01, 0x93, 0x00, 0x23, 0x02, 0x93, + 0x50, 0x23, 0x0c, 0x46, 0x03, 0x93, 0x69, 0x46, 0x10, 0x23, 0x15, 0x46, + 0x04, 0x93, 0xff, 0xf7, 0x25, 0xfd, 0xbd, 0xf8, 0x14, 0x30, 0x23, 0x80, + 0xbd, 0xf8, 0x16, 0x30, 0x2b, 0x80, 0x07, 0xb0, 0x30, 0xbd, 0x07, 0xb5, + 0x40, 0xf2, 0x56, 0x43, 0x00, 0x93, 0x40, 0xf2, 0x55, 0x42, 0x40, 0xf2, + 0x57, 0x43, 0xfb, 0xf7, 0x75, 0xfd, 0x0e, 0xbd, 0x2d, 0xe9, 0xf0, 0x4f, + 0xb0, 0xf8, 0xda, 0x30, 0x89, 0xb0, 0x03, 0xf4, 0x70, 0x43, 0xb3, 0xf5, + 0x00, 0x5f, 0x04, 0x46, 0x8b, 0x46, 0xd0, 0xf8, 0xa8, 0x50, 0x02, 0xd1, + 0xb5, 0xf8, 0xc4, 0x33, 0x04, 0xe0, 0xb3, 0xf5, 0x80, 0x5f, 0x06, 0xd1, + 0xb5, 0xf8, 0xc6, 0x33, 0x1a, 0xb2, 0x01, 0x32, 0x08, 0xbf, 0x70, 0x23, + 0x00, 0xe0, 0x70, 0x23, 0x07, 0x22, 0x04, 0x92, 0x20, 0x22, 0x06, 0x92, + 0x01, 0x22, 0x00, 0x27, 0x03, 0x92, 0x1b, 0x06, 0x07, 0xaa, 0x02, 0x92, + 0x01, 0x93, 0xb8, 0x46, 0x3e, 0x46, 0x0b, 0xeb, 0x07, 0x0a, 0xf1, 0x07, + 0x9a, 0xf8, 0x03, 0x90, 0x03, 0xd5, 0x95, 0xf9, 0x66, 0x35, 0x00, 0x2b, + 0x50, 0xd1, 0xb4, 0xf8, 0xda, 0x30, 0x03, 0xf4, 0x70, 0x43, 0xb3, 0xf5, + 0x00, 0x5f, 0x00, 0xf0, 0x86, 0x80, 0x1b, 0xf8, 0x07, 0x80, 0x08, 0xe0, + 0x1f, 0xfa, 0x88, 0xf8, 0xb5, 0xf8, 0x3e, 0x34, 0x1a, 0xb2, 0xb2, 0xf1, + 0xff, 0x3f, 0x18, 0xbf, 0x99, 0x46, 0x9a, 0xf8, 0x01, 0x30, 0x9a, 0xf8, + 0x02, 0x20, 0x1b, 0x02, 0x43, 0xea, 0x02, 0x43, 0x01, 0x9a, 0x20, 0x46, + 0x13, 0x43, 0x43, 0xea, 0x08, 0x03, 0x07, 0x93, 0x95, 0xf9, 0x66, 0x35, + 0x02, 0xa9, 0x01, 0x33, 0xb6, 0xfb, 0xf3, 0xf3, 0xc0, 0x33, 0x05, 0x93, + 0xff, 0xf7, 0x97, 0xff, 0x07, 0xab, 0x02, 0x93, 0x95, 0xf9, 0x66, 0x35, + 0x20, 0x46, 0x01, 0x33, 0xb6, 0xfb, 0xf3, 0xf3, 0x03, 0xf5, 0xa0, 0x73, + 0x02, 0xa9, 0x05, 0x93, 0xff, 0xf7, 0xa6, 0xfc, 0x9a, 0xf8, 0x04, 0x20, + 0x07, 0x9b, 0x12, 0x05, 0x23, 0xf0, 0x7f, 0x43, 0x42, 0xea, 0x09, 0x72, + 0x23, 0xf4, 0x70, 0x03, 0x13, 0x43, 0x07, 0x93, 0x95, 0xf9, 0x66, 0x35, + 0x20, 0x46, 0x01, 0x33, 0xb6, 0xfb, 0xf3, 0xf3, 0x03, 0xf5, 0xa0, 0x73, + 0x02, 0xa9, 0x05, 0x93, 0xff, 0xf7, 0x71, 0xff, 0x01, 0x36, 0x05, 0x37, + 0x80, 0x2e, 0xa0, 0xd1, 0x95, 0xf9, 0x66, 0x35, 0x00, 0x2b, 0x3e, 0xd0, + 0x4f, 0xea, 0x09, 0x79, 0x5e, 0x46, 0x4f, 0xf4, 0x80, 0x75, 0x01, 0x9a, + 0x20, 0x46, 0x48, 0xea, 0x02, 0x03, 0x96, 0xf8, 0x42, 0x21, 0x02, 0xa9, + 0x43, 0xea, 0x02, 0x43, 0x96, 0xf8, 0x41, 0x21, 0x05, 0xf1, 0x80, 0x07, + 0x43, 0xea, 0x02, 0x23, 0x07, 0x93, 0x05, 0x95, 0xff, 0xf7, 0x51, 0xff, + 0x07, 0xab, 0x20, 0x46, 0x02, 0xa9, 0x02, 0x93, 0x05, 0x97, 0xff, 0xf7, + 0x67, 0xfc, 0x07, 0x9b, 0x96, 0xf8, 0x44, 0x21, 0x23, 0xf0, 0x7f, 0x43, + 0x49, 0xea, 0x02, 0x52, 0x23, 0xf4, 0x70, 0x03, 0x13, 0x43, 0x20, 0x46, + 0x02, 0xa9, 0x01, 0x35, 0x07, 0x93, 0x05, 0x97, 0x05, 0x36, 0xff, 0xf7, + 0x38, 0xff, 0xb5, 0xf5, 0xa0, 0x7f, 0xd0, 0xd1, 0x09, 0xe0, 0xb5, 0xf8, + 0x40, 0x84, 0x0f, 0xfa, 0x88, 0xf3, 0x01, 0x33, 0x7f, 0xf4, 0x76, 0xaf, + 0x4f, 0xf0, 0x0f, 0x08, 0x74, 0xe7, 0x09, 0xb0, 0xbd, 0xe8, 0xf0, 0x8f, + 0xb0, 0xf8, 0xda, 0x30, 0xd0, 0xf8, 0xa8, 0x20, 0x03, 0xf4, 0x70, 0x43, + 0xb3, 0xf5, 0x00, 0x5f, 0x03, 0xd1, 0xd2, 0xf8, 0x74, 0x15, 0xff, 0xf7, + 0x25, 0xbf, 0x70, 0x47, 0x2d, 0xe9, 0xf0, 0x41, 0x00, 0x24, 0x86, 0xb0, + 0x05, 0x46, 0x05, 0x94, 0xd0, 0xf8, 0xa8, 0x60, 0xfd, 0xf7, 0xe9, 0xfa, + 0x07, 0x23, 0x02, 0x93, 0x20, 0x23, 0x04, 0x93, 0x01, 0x23, 0x80, 0x46, + 0x01, 0x93, 0x96, 0xf9, 0x66, 0x35, 0x1b, 0xb1, 0xe0, 0x07, 0x13, 0xd4, + 0x67, 0x08, 0x00, 0xe0, 0x27, 0x46, 0x21, 0x46, 0x28, 0x46, 0x4f, 0xfa, + 0x88, 0xf2, 0xff, 0xf7, 0x22, 0xfc, 0x06, 0xab, 0x43, 0xf8, 0x04, 0x0d, + 0x07, 0xf5, 0x10, 0x77, 0x28, 0x46, 0x69, 0x46, 0x00, 0x93, 0x03, 0x97, + 0xff, 0xf7, 0xef, 0xfe, 0x01, 0x34, 0xe4, 0xb2, 0x80, 0x2c, 0xe2, 0xd1, + 0x96, 0xf9, 0x66, 0x35, 0x7b, 0xb1, 0x01, 0x23, 0x01, 0x93, 0x40, 0x24, + 0x05, 0xab, 0x00, 0x93, 0x04, 0xf5, 0x10, 0x73, 0x01, 0x34, 0x28, 0x46, + 0x69, 0x46, 0xe4, 0xb2, 0x03, 0x93, 0xff, 0xf7, 0xda, 0xfe, 0x80, 0x2c, + 0xf2, 0xd1, 0x06, 0xb0, 0xbd, 0xe8, 0xf0, 0x81, 0xf0, 0xb5, 0x04, 0x46, + 0x87, 0xb0, 0xd0, 0xf8, 0xa8, 0x70, 0x00, 0x29, 0x3c, 0xd0, 0x07, 0x23, + 0x02, 0x93, 0x20, 0x23, 0x04, 0x93, 0x01, 0x23, 0x01, 0x93, 0x05, 0xab, + 0x97, 0xf8, 0xc2, 0x62, 0x00, 0x93, 0x00, 0x25, 0x2b, 0xe0, 0x06, 0xf1, + 0xc0, 0x03, 0x20, 0x46, 0x69, 0x46, 0x03, 0x93, 0xff, 0xf7, 0xd8, 0xfb, + 0x05, 0xf1, 0xc0, 0x03, 0x20, 0x46, 0x69, 0x46, 0x03, 0x93, 0xff, 0xf7, + 0xb4, 0xfe, 0x06, 0xf5, 0xa0, 0x73, 0x20, 0x46, 0x69, 0x46, 0x03, 0x93, + 0xff, 0xf7, 0xca, 0xfb, 0x05, 0xf5, 0xa0, 0x73, 0x20, 0x46, 0x69, 0x46, + 0x03, 0x93, 0xff, 0xf7, 0xa6, 0xfe, 0x06, 0xf5, 0x10, 0x73, 0x20, 0x46, + 0x69, 0x46, 0x03, 0x93, 0xff, 0xf7, 0xbc, 0xfb, 0x05, 0xf5, 0x10, 0x73, + 0x20, 0x46, 0x69, 0x46, 0x03, 0x93, 0xff, 0xf7, 0x98, 0xfe, 0x01, 0x35, + 0xed, 0xb2, 0x97, 0xf8, 0xc2, 0x32, 0xab, 0x42, 0xcf, 0xd2, 0x0c, 0xe0, + 0xb0, 0xf8, 0xda, 0x30, 0x03, 0xf4, 0x70, 0x43, 0xb3, 0xf5, 0x00, 0x5f, + 0x02, 0xd1, 0x04, 0x49, 0xff, 0xf7, 0x92, 0xfe, 0x20, 0x46, 0xff, 0xf7, + 0x6b, 0xff, 0x07, 0xb0, 0xf0, 0xbd, 0x00, 0xbf, 0x14, 0xa0, 0x02, 0x00, + 0x7f, 0xb5, 0x09, 0x02, 0x06, 0xab, 0x23, 0xf8, 0x02, 0x1d, 0x00, 0x93, + 0x01, 0x23, 0x01, 0x93, 0x00, 0x23, 0x02, 0x93, 0x57, 0x23, 0x03, 0x93, + 0x69, 0x46, 0x10, 0x23, 0x04, 0x93, 0xff, 0xf7, 0x6e, 0xfe, 0x07, 0xb0, + 0x00, 0xbd, 0x2d, 0xe9, 0xf0, 0x41, 0xd0, 0xf8, 0xa8, 0x30, 0x8a, 0xb0, + 0x83, 0xf8, 0x34, 0x10, 0x83, 0xf8, 0xc1, 0x12, 0x93, 0xf9, 0x66, 0x35, + 0x05, 0x46, 0x0c, 0x46, 0x53, 0xb1, 0x11, 0xf0, 0x01, 0x03, 0x18, 0xbf, + 0x08, 0x23, 0x4f, 0xf4, 0x8f, 0x61, 0x4f, 0xf0, 0x0c, 0x02, 0xfb, 0xf7, + 0xcf, 0xfa, 0x64, 0x08, 0x07, 0x23, 0x4f, 0xf0, 0x20, 0x08, 0x03, 0x93, + 0x04, 0xf5, 0xa0, 0x73, 0x0a, 0xae, 0x04, 0x93, 0x0d, 0xeb, 0x08, 0x03, + 0x46, 0xf8, 0x24, 0x3d, 0x01, 0x27, 0x28, 0x46, 0x31, 0x46, 0xcd, 0xf8, + 0x14, 0x80, 0x02, 0x97, 0xc0, 0x34, 0xff, 0xf7, 0x5b, 0xfb, 0x09, 0xab, + 0x28, 0x46, 0x31, 0x46, 0x01, 0x93, 0x04, 0x94, 0xcd, 0xf8, 0x14, 0x80, + 0xff, 0xf7, 0x52, 0xfb, 0x09, 0x9b, 0x28, 0x46, 0xda, 0xb2, 0xad, 0xf8, + 0x18, 0x20, 0x1a, 0x0a, 0x1b, 0x0c, 0xdb, 0xb2, 0xad, 0xf8, 0x1c, 0x30, + 0x08, 0x9b, 0xd2, 0xb2, 0x1b, 0x0f, 0x03, 0xf0, 0x07, 0x03, 0x06, 0xa9, + 0xad, 0xf8, 0x1a, 0x20, 0xad, 0xf8, 0x1e, 0x30, 0xfd, 0xf7, 0xf5, 0xfb, + 0x08, 0x99, 0x28, 0x46, 0x09, 0x0d, 0xc9, 0xb2, 0xff, 0xf7, 0x9a, 0xff, + 0x28, 0x46, 0x39, 0x46, 0xfd, 0xf7, 0xcf, 0xfb, 0x0a, 0xb0, 0xbd, 0xe8, + 0xf0, 0x81, 0x00, 0x00, 0xf0, 0xb5, 0x51, 0x4f, 0x8f, 0xb0, 0x6e, 0x46, + 0x04, 0x46, 0x0f, 0xcf, 0x0f, 0xc6, 0x97, 0xe8, 0x0f, 0x00, 0x86, 0xe8, + 0x0f, 0x00, 0x20, 0x46, 0x4c, 0x49, 0x04, 0x22, 0xbd, 0xf8, 0x58, 0x50, + 0xfb, 0xf7, 0x8c, 0xfa, 0x9d, 0xf8, 0x68, 0x30, 0x20, 0x46, 0x5b, 0x00, + 0x40, 0xf2, 0xa3, 0x61, 0x02, 0x22, 0xfb, 0xf7, 0x71, 0xfa, 0x9d, 0xf8, + 0x5c, 0x30, 0xbb, 0xb1, 0x0e, 0xab, 0x4f, 0xf4, 0x00, 0x22, 0x43, 0xf8, + 0x04, 0x2d, 0x08, 0x93, 0x01, 0x23, 0x09, 0x93, 0x18, 0x23, 0x0a, 0x93, + 0x20, 0x23, 0x0c, 0x93, 0x00, 0x23, 0x0b, 0x93, 0x40, 0x26, 0x20, 0x46, + 0x08, 0xa9, 0xff, 0xf7, 0xe0, 0xfd, 0x0b, 0x9b, 0x01, 0x33, 0x01, 0x3e, + 0x0b, 0x93, 0xf6, 0xd1, 0x20, 0x46, 0x05, 0xeb, 0x45, 0x05, 0xfd, 0xf7, + 0x8b, 0xfd, 0x01, 0x35, 0x20, 0x46, 0x40, 0xf2, 0xa1, 0x61, 0xbd, 0xf8, + 0x6c, 0x20, 0xfb, 0xf7, 0x63, 0xf8, 0xad, 0xb2, 0x20, 0x46, 0x40, 0xf2, + 0xa2, 0x61, 0xbd, 0xf8, 0x70, 0x20, 0xfb, 0xf7, 0x5b, 0xf8, 0x2a, 0x46, + 0x20, 0x46, 0x40, 0xf2, 0x7e, 0x61, 0xfb, 0xf7, 0x55, 0xf8, 0x20, 0x46, + 0x2a, 0x49, 0x04, 0x22, 0xfb, 0xf7, 0x48, 0xfa, 0x01, 0x35, 0x14, 0x22, + 0x6a, 0x43, 0x01, 0x3a, 0x20, 0x46, 0x4f, 0xf4, 0xc8, 0x61, 0x92, 0xb2, + 0xfb, 0xf7, 0x46, 0xf8, 0x00, 0x22, 0x20, 0x46, 0x40, 0xf2, 0x77, 0x61, + 0xfb, 0xf7, 0x40, 0xf8, 0x08, 0x23, 0x09, 0x93, 0x15, 0x23, 0x00, 0x25, + 0x0a, 0x93, 0x20, 0x23, 0x0e, 0xa9, 0x0c, 0x93, 0x0d, 0xeb, 0x05, 0x03, + 0x41, 0xf8, 0x18, 0x3d, 0x20, 0x46, 0x0b, 0x95, 0xff, 0xf7, 0x9b, 0xfd, + 0x20, 0x46, 0x40, 0xf2, 0x7b, 0x61, 0xbd, 0xf8, 0x60, 0x20, 0xfb, 0xf7, + 0x29, 0xf8, 0x20, 0x46, 0x40, 0xf2, 0x7c, 0x61, 0xbd, 0xf8, 0x64, 0x20, + 0xfb, 0xf7, 0x22, 0xf8, 0x2a, 0x46, 0x20, 0x46, 0x40, 0xf2, 0x7d, 0x61, + 0xfb, 0xf7, 0x1c, 0xf8, 0x29, 0x46, 0x20, 0x46, 0xff, 0xf7, 0x04, 0xff, + 0x20, 0x46, 0x0d, 0x49, 0x04, 0x22, 0xfb, 0xf7, 0x0b, 0xfa, 0x0c, 0x4d, + 0x02, 0xe0, 0x0a, 0x20, 0xf0, 0xf3, 0xf0, 0xf5, 0x20, 0x46, 0x40, 0xf2, + 0x76, 0x61, 0xfa, 0xf7, 0xfe, 0xff, 0xc3, 0x07, 0x01, 0xd5, 0x01, 0x3d, + 0xf3, 0xd1, 0x0f, 0xb0, 0xf0, 0xbd, 0x00, 0xbf, 0x44, 0xb8, 0x01, 0x00, + 0x64, 0xe8, 0x01, 0x00, 0xbe, 0xe9, 0x01, 0x00, 0xc6, 0xe9, 0x01, 0x00, + 0xa1, 0x86, 0x01, 0x00, 0x2d, 0xe9, 0xf0, 0x43, 0xd0, 0xf8, 0xa8, 0x90, + 0x8b, 0xb0, 0x07, 0x46, 0x88, 0x46, 0x03, 0x26, 0x05, 0x24, 0x0f, 0x2c, + 0xa8, 0xbf, 0x0f, 0x24, 0x00, 0x25, 0xa3, 0xb2, 0x01, 0x93, 0x38, 0x46, + 0x01, 0x21, 0x2a, 0x46, 0x2b, 0x46, 0x00, 0x95, 0x02, 0x95, 0x03, 0x95, + 0x04, 0x95, 0xfd, 0xf7, 0xf7, 0xfb, 0xdb, 0x23, 0x02, 0x93, 0x4f, 0xf4, + 0xaf, 0x63, 0x04, 0x93, 0x4f, 0xf4, 0x82, 0x43, 0x05, 0x93, 0x80, 0x23, + 0x01, 0x22, 0x07, 0x93, 0x38, 0x46, 0x29, 0x46, 0x2b, 0x46, 0x00, 0x95, + 0x01, 0x95, 0x03, 0x92, 0x06, 0x95, 0x08, 0x95, 0xff, 0xf7, 0x24, 0xff, + 0xb8, 0xf1, 0x00, 0x0f, 0x1e, 0xd1, 0x40, 0xf2, 0xba, 0x61, 0x38, 0x46, + 0xfa, 0xf7, 0xb7, 0xff, 0x4f, 0xf6, 0xc0, 0x75, 0x80, 0x01, 0x05, 0x40, + 0x40, 0xf2, 0xbb, 0x61, 0x38, 0x46, 0xfa, 0xf7, 0xae, 0xff, 0x83, 0x01, + 0x1b, 0xb2, 0x9b, 0x11, 0x5b, 0x43, 0x2d, 0xb2, 0xad, 0x11, 0x05, 0xfb, + 0x05, 0x35, 0xb5, 0xf5, 0x00, 0x5f, 0x01, 0xda, 0xa4, 0x1b, 0x03, 0xe0, + 0xb5, 0xf5, 0x80, 0x4f, 0x04, 0xdb, 0xa4, 0x19, 0x01, 0x3e, 0xf6, 0xb2, + 0xff, 0x2e, 0xb4, 0xd1, 0x09, 0x2c, 0xd4, 0xbf, 0x24, 0xea, 0xe4, 0x74, + 0x09, 0x24, 0xc9, 0xf8, 0x38, 0x40, 0x20, 0x46, 0x0b, 0xb0, 0xbd, 0xe8, + 0xf0, 0x83, 0xf8, 0xb5, 0xd0, 0xf8, 0xa8, 0x60, 0x07, 0x46, 0xd6, 0xf8, + 0x7c, 0x55, 0x00, 0x24, 0x05, 0xe0, 0x29, 0x46, 0x38, 0x46, 0xff, 0xf7, + 0xf8, 0xfc, 0x01, 0x34, 0x14, 0x35, 0xd6, 0xf8, 0x78, 0x35, 0x9c, 0x42, + 0xf5, 0xd3, 0xf8, 0xbd, 0xf0, 0xb5, 0xc3, 0x69, 0xd0, 0xf8, 0xa8, 0x40, + 0x87, 0xb0, 0x06, 0x46, 0x80, 0x21, 0x98, 0x68, 0xf1, 0xf3, 0x1a, 0xf0, + 0x05, 0x46, 0x00, 0x28, 0x00, 0xf0, 0x8d, 0x80, 0xb4, 0xf8, 0x1c, 0x34, + 0x00, 0x22, 0x03, 0xf4, 0x80, 0x7e, 0x03, 0xf4, 0x00, 0x73, 0x1f, 0xfa, + 0x83, 0xfc, 0x1f, 0xfa, 0x8e, 0xfe, 0x03, 0x46, 0x02, 0xf0, 0x10, 0x07, + 0x00, 0x20, 0xff, 0xb2, 0x02, 0xf0, 0x01, 0x01, 0x23, 0xf8, 0x02, 0x0b, + 0xcf, 0xb1, 0xbc, 0xf1, 0x00, 0x0f, 0x03, 0xd0, 0xd4, 0xf8, 0x1c, 0x14, + 0xc1, 0xf3, 0x80, 0x21, 0x12, 0xf0, 0x08, 0x0f, 0xd4, 0xf8, 0x18, 0x04, + 0x03, 0xd0, 0x00, 0xf4, 0x7f, 0x00, 0x00, 0x0c, 0x07, 0xe0, 0x12, 0xf0, + 0x20, 0x0f, 0x03, 0xd0, 0x00, 0xf4, 0x7f, 0x40, 0x00, 0x0a, 0x00, 0xe0, + 0xc0, 0xb2, 0x23, 0xf8, 0x02, 0x0c, 0xbe, 0xf1, 0x00, 0x0f, 0x01, 0xd0, + 0x00, 0x2f, 0x42, 0xd1, 0x12, 0xf0, 0x04, 0x0f, 0x02, 0xf0, 0x02, 0x07, + 0x17, 0xd0, 0xd4, 0xf8, 0x0c, 0x04, 0x47, 0xb1, 0x33, 0xf8, 0x02, 0x7c, + 0x09, 0xb1, 0x00, 0x0e, 0x0b, 0xe0, 0x00, 0xf4, 0x7f, 0x00, 0x00, 0x0c, + 0x07, 0xe0, 0x33, 0xf8, 0x02, 0x7c, 0x19, 0xb1, 0x00, 0xf4, 0x7f, 0x40, + 0x00, 0x0a, 0x00, 0xe0, 0xc0, 0xb2, 0x38, 0x43, 0x23, 0xf8, 0x02, 0x0c, + 0x25, 0xe0, 0x90, 0x06, 0x10, 0xd5, 0x27, 0xb1, 0x33, 0xf8, 0x02, 0x7c, + 0xd4, 0xf8, 0x10, 0x04, 0x03, 0xe0, 0x33, 0xf8, 0x02, 0x7c, 0xd4, 0xf8, + 0x14, 0x04, 0x09, 0xb1, 0x01, 0x0e, 0x13, 0xe0, 0x00, 0xf4, 0x7f, 0x01, + 0x09, 0x0c, 0x0f, 0xe0, 0x27, 0xb1, 0x33, 0xf8, 0x02, 0x7c, 0xd4, 0xf8, + 0x10, 0x04, 0x03, 0xe0, 0x33, 0xf8, 0x02, 0x7c, 0xd4, 0xf8, 0x14, 0x04, + 0x19, 0xb1, 0x00, 0xf4, 0x7f, 0x41, 0x09, 0x0a, 0x00, 0xe0, 0xc1, 0xb2, + 0x39, 0x43, 0x23, 0xf8, 0x02, 0x1c, 0x01, 0x32, 0x40, 0x2a, 0x91, 0xd1, + 0x0f, 0x23, 0x06, 0xa9, 0x03, 0x93, 0x00, 0x23, 0x04, 0x93, 0x41, 0xf8, + 0x14, 0x5d, 0x10, 0x23, 0x30, 0x46, 0x02, 0x92, 0x05, 0x93, 0xff, 0xf7, + 0x5c, 0xfc, 0xf3, 0x69, 0x29, 0x46, 0x98, 0x68, 0x80, 0x22, 0xf0, 0xf3, + 0x99, 0xf7, 0x07, 0xb0, 0xf0, 0xbd, 0x30, 0xb5, 0x87, 0xb0, 0x05, 0xab, + 0x00, 0x93, 0x01, 0x23, 0x01, 0x93, 0x18, 0x23, 0x02, 0x93, 0x20, 0x23, + 0x04, 0x93, 0x00, 0x23, 0x03, 0x93, 0x4f, 0xf4, 0x00, 0x23, 0x05, 0x46, + 0x05, 0x93, 0x81, 0x24, 0x06, 0xe0, 0x28, 0x46, 0x69, 0x46, 0xff, 0xf7, + 0x3e, 0xfc, 0x03, 0x9b, 0x01, 0x33, 0x03, 0x93, 0x01, 0x3c, 0xf6, 0xd1, + 0x07, 0xb0, 0x30, 0xbd, 0x70, 0xb5, 0xd0, 0xf8, 0xa8, 0x30, 0x86, 0xb0, + 0x93, 0xf8, 0x9a, 0x55, 0x04, 0x46, 0x45, 0xb1, 0x2e, 0xe0, 0x31, 0x4b, + 0x14, 0x21, 0x01, 0xfb, 0x05, 0x31, 0x20, 0x46, 0xff, 0xf7, 0x27, 0xfc, + 0x01, 0x35, 0x2e, 0x4b, 0x1b, 0x68, 0x9d, 0x42, 0xf3, 0xd3, 0x2d, 0x4b, + 0x06, 0xad, 0x5a, 0x68, 0x1b, 0x68, 0x01, 0x92, 0x10, 0x22, 0x02, 0x92, + 0x00, 0x26, 0x08, 0x22, 0x45, 0xf8, 0x18, 0x3d, 0x20, 0x46, 0x69, 0x46, + 0x03, 0x96, 0x04, 0x92, 0xff, 0xf7, 0x11, 0xfc, 0xe3, 0x69, 0x1b, 0x6b, + 0x08, 0x2b, 0x0d, 0xd1, 0x23, 0x4b, 0x20, 0x46, 0x5a, 0x68, 0x1b, 0x68, + 0x01, 0x92, 0x12, 0x22, 0x02, 0x92, 0x69, 0x46, 0x20, 0x22, 0x03, 0x96, + 0x04, 0x92, 0x00, 0x93, 0xff, 0xf7, 0xff, 0xfb, 0x10, 0x23, 0x04, 0x93, + 0x0d, 0xf1, 0x16, 0x03, 0x00, 0x93, 0x72, 0x23, 0x08, 0x25, 0x01, 0x26, + 0xad, 0xf8, 0x16, 0x30, 0x20, 0x46, 0x00, 0x23, 0x69, 0x46, 0x03, 0x93, + 0x02, 0x95, 0x01, 0x96, 0xff, 0xf7, 0xed, 0xfb, 0x82, 0x23, 0x20, 0x46, + 0x69, 0x46, 0xad, 0xf8, 0x16, 0x30, 0x03, 0x96, 0xff, 0xf7, 0xe5, 0xfb, + 0x06, 0x23, 0x69, 0x46, 0x20, 0x46, 0xad, 0xf8, 0x16, 0x30, 0x03, 0x95, + 0xff, 0xf7, 0xdd, 0xfb, 0x20, 0x46, 0xff, 0xf7, 0xb3, 0xfc, 0x20, 0x46, + 0xff, 0xf7, 0xd3, 0xfe, 0x20, 0x46, 0xff, 0xf7, 0xe3, 0xfe, 0x20, 0x46, + 0xff, 0xf7, 0xb8, 0xfc, 0x20, 0x46, 0xff, 0xf7, 0x7a, 0xff, 0x06, 0xb0, + 0x70, 0xbd, 0x00, 0xbf, 0x10, 0xf4, 0x01, 0x00, 0xf0, 0xef, 0x01, 0x00, + 0xf4, 0xf0, 0x01, 0x00, 0x80, 0xfd, 0x01, 0x00, 0xf0, 0xb5, 0xb0, 0xf8, + 0xda, 0x30, 0xd0, 0xf8, 0xa8, 0x40, 0x03, 0xf4, 0x70, 0x43, 0xb3, 0xf5, + 0x00, 0x5f, 0x0c, 0xbf, 0x94, 0xf8, 0x40, 0x33, 0x94, 0xf8, 0x41, 0x33, + 0x87, 0xb0, 0x84, 0xf8, 0x42, 0x33, 0x94, 0xf8, 0x42, 0x33, 0x05, 0x46, + 0x84, 0xf8, 0x43, 0x33, 0xb0, 0xf8, 0xda, 0x30, 0x03, 0xf4, 0x70, 0x43, + 0xb3, 0xf5, 0x00, 0x5f, 0x10, 0xd1, 0x94, 0xf8, 0x49, 0x33, 0x5a, 0xb2, + 0x00, 0x2a, 0x06, 0xdc, 0xc3, 0x69, 0x1b, 0x6d, 0xda, 0x04, 0x01, 0xd5, + 0x34, 0x23, 0x00, 0xe0, 0x30, 0x23, 0x84, 0xf8, 0x48, 0x33, 0x94, 0xf8, + 0x5c, 0x63, 0x0f, 0xe0, 0x94, 0xf8, 0x4a, 0x33, 0x5a, 0xb2, 0x00, 0x2a, + 0x06, 0xdc, 0xc3, 0x69, 0x1b, 0x6d, 0xdb, 0x00, 0x01, 0xd5, 0x34, 0x23, + 0x00, 0xe0, 0x30, 0x23, 0x94, 0xf8, 0x5d, 0x63, 0x84, 0xf8, 0x48, 0x33, + 0x76, 0xb2, 0x00, 0x2e, 0x48, 0xdd, 0x40, 0xf2, 0xdf, 0x41, 0x28, 0x46, + 0xfa, 0xf7, 0x07, 0xfe, 0xc3, 0xb2, 0x00, 0x0a, 0x80, 0xb2, 0x81, 0xb2, + 0x02, 0x2e, 0xa8, 0xbf, 0x02, 0x26, 0x7f, 0x2b, 0xc8, 0xbf, 0xa3, 0xf5, + 0x80, 0x73, 0x0a, 0xb2, 0x06, 0xeb, 0x46, 0x06, 0xc8, 0xbf, 0x9b, 0xb2, + 0xf6, 0xb2, 0x7f, 0x2a, 0xc8, 0xbf, 0xa0, 0xf5, 0x80, 0x71, 0x77, 0xb2, + 0xc8, 0xbf, 0x89, 0xb2, 0xbf, 0xb2, 0xca, 0x1b, 0xdf, 0x1b, 0x92, 0xb2, + 0xff, 0xb2, 0x47, 0xea, 0x02, 0x22, 0x92, 0xb2, 0x28, 0x46, 0x40, 0xf2, + 0xdf, 0x41, 0xfa, 0xf7, 0xed, 0xfd, 0x05, 0xab, 0x00, 0x93, 0x02, 0x23, + 0x01, 0x93, 0x11, 0x23, 0x02, 0x93, 0x0f, 0x23, 0x03, 0x93, 0x28, 0x46, + 0x08, 0x23, 0x69, 0x46, 0x04, 0x93, 0xff, 0xf7, 0x67, 0xf8, 0x9d, 0xf8, + 0x14, 0x30, 0x28, 0x46, 0x9b, 0x1b, 0x8d, 0xf8, 0x14, 0x30, 0x9d, 0xf8, + 0x15, 0x30, 0x69, 0x46, 0x9e, 0x1b, 0x8d, 0xf8, 0x15, 0x60, 0xff, 0xf7, + 0x3c, 0xfb, 0x28, 0x46, 0xfd, 0xf7, 0xf0, 0xff, 0x94, 0xf8, 0x4d, 0x13, + 0x00, 0x23, 0xff, 0x22, 0x84, 0xf8, 0x9a, 0x23, 0x84, 0xf8, 0x47, 0x33, + 0x84, 0xf8, 0x9c, 0x33, 0xb1, 0xb1, 0x84, 0xf8, 0x42, 0x33, 0x84, 0xf8, + 0x43, 0x33, 0x28, 0x46, 0x40, 0xf2, 0x23, 0x41, 0xb4, 0xf8, 0x50, 0x33, + 0xfa, 0xf7, 0x9e, 0xff, 0x28, 0x46, 0x4f, 0xf4, 0xaa, 0x61, 0xb4, 0xf8, + 0x60, 0x23, 0xfa, 0xf7, 0xb1, 0xfd, 0x28, 0x46, 0x04, 0x49, 0x04, 0x22, + 0xfa, 0xf7, 0xa4, 0xff, 0x28, 0x46, 0xfd, 0xf7, 0x1d, 0xf8, 0x07, 0xb0, + 0xf0, 0xbd, 0x00, 0xbf, 0xf0, 0xed, 0x01, 0x00, 0x38, 0xb5, 0xb0, 0xf8, + 0xda, 0x20, 0x04, 0x46, 0x02, 0xf4, 0x70, 0x42, 0xb2, 0xf5, 0x00, 0x5f, + 0xd0, 0xf8, 0xa8, 0x30, 0x0a, 0xd1, 0x93, 0xf9, 0xf1, 0x23, 0x01, 0x32, + 0x2d, 0xd1, 0xb3, 0xf9, 0xf8, 0x23, 0x01, 0x32, 0x29, 0xd1, 0xb3, 0xf9, + 0x2c, 0x25, 0x24, 0xe0, 0xb2, 0xf5, 0x80, 0x5f, 0x2c, 0xd1, 0x93, 0xf9, + 0x5b, 0x25, 0x01, 0x32, 0x1f, 0xd1, 0x93, 0xf9, 0xf3, 0x23, 0x01, 0x32, + 0x1b, 0xd1, 0x93, 0xf9, 0x5c, 0x25, 0x01, 0x32, 0x17, 0xd1, 0xb3, 0xf9, + 0x00, 0x24, 0x01, 0x32, 0x13, 0xd1, 0xb3, 0xf9, 0x30, 0x25, 0x01, 0x32, + 0x0f, 0xd1, 0xb3, 0xf9, 0x02, 0x24, 0x01, 0x32, 0x0b, 0xd1, 0xb3, 0xf9, + 0x34, 0x25, 0x01, 0x32, 0x07, 0xd1, 0xb3, 0xf9, 0x04, 0x24, 0x01, 0x32, + 0x03, 0xd1, 0xb3, 0xf9, 0x38, 0x25, 0x01, 0x32, 0x08, 0xd0, 0x01, 0x25, + 0x10, 0x22, 0x83, 0xf8, 0x66, 0x55, 0x20, 0x46, 0x4f, 0xf4, 0x9a, 0x61, + 0x13, 0x46, 0x07, 0xe0, 0x00, 0x25, 0x83, 0xf8, 0x66, 0x55, 0x20, 0x46, + 0x4f, 0xf4, 0x9a, 0x61, 0x10, 0x22, 0x2b, 0x46, 0xfa, 0xf7, 0x3a, 0xff, + 0x4f, 0xf4, 0x8f, 0x61, 0x03, 0x22, 0x2b, 0x46, 0x20, 0x46, 0xfa, 0xf7, + 0x33, 0xff, 0x20, 0x46, 0xff, 0xf7, 0x7e, 0xfe, 0x20, 0x46, 0xfd, 0xf7, + 0xc9, 0xfb, 0x20, 0x46, 0xfe, 0xf7, 0x7e, 0xf8, 0x20, 0x46, 0xbd, 0xe8, + 0x38, 0x40, 0xff, 0xf7, 0xe7, 0xbe, 0x2d, 0xe9, 0xf0, 0x47, 0x8a, 0xb0, + 0x1e, 0x46, 0x0d, 0xf1, 0x27, 0x03, 0x05, 0x46, 0xd0, 0xf8, 0xa8, 0x40, + 0x88, 0x46, 0x00, 0x93, 0x09, 0xa9, 0x0d, 0xf1, 0x26, 0x03, 0x17, 0x46, + 0x0d, 0xf1, 0x25, 0x02, 0xfd, 0xf7, 0x28, 0xfb, 0x28, 0x46, 0x08, 0xa9, + 0x0d, 0xf1, 0x22, 0x02, 0xff, 0xf7, 0x78, 0xfa, 0x28, 0x46, 0xff, 0xf7, + 0x0d, 0xf9, 0x07, 0x23, 0x04, 0x93, 0x20, 0x23, 0x06, 0x93, 0x07, 0xab, + 0x02, 0x93, 0x01, 0x23, 0x03, 0x93, 0x4f, 0xf4, 0x50, 0x73, 0x81, 0x46, + 0x05, 0x93, 0x4f, 0xf0, 0x00, 0x0a, 0x35, 0xe0, 0x13, 0xb1, 0x18, 0xf0, + 0x01, 0x0f, 0x2f, 0xd1, 0x5b, 0xb2, 0x01, 0x33, 0xb8, 0xfb, 0xf3, 0xf3, + 0x03, 0xf5, 0xa0, 0x73, 0x28, 0x46, 0x02, 0xa9, 0x05, 0x93, 0xfe, 0xf7, + 0x8d, 0xff, 0x07, 0x9b, 0xbd, 0xf8, 0x22, 0xa0, 0x1b, 0x0d, 0x4f, 0xea, + 0x8a, 0x5a, 0x1b, 0x05, 0x4f, 0xea, 0x9a, 0x5a, 0x4a, 0xea, 0x03, 0x0a, + 0xbd, 0xf8, 0x20, 0x30, 0x28, 0x46, 0x9b, 0x05, 0x9b, 0x0d, 0x4a, 0xea, + 0x83, 0x2a, 0x02, 0xa9, 0xcd, 0xf8, 0x1c, 0xa0, 0xff, 0xf7, 0x59, 0xfa, + 0x94, 0xf9, 0x66, 0x35, 0x28, 0x46, 0x01, 0x33, 0xb8, 0xfb, 0xf3, 0xf3, + 0x03, 0xf5, 0xe0, 0x73, 0x02, 0xa9, 0xcd, 0xf8, 0x1c, 0x90, 0x05, 0x93, + 0xff, 0xf7, 0x4b, 0xfa, 0x08, 0xf1, 0x01, 0x08, 0xb8, 0x45, 0x94, 0xf8, + 0x66, 0x35, 0xc5, 0xd9, 0xbb, 0xb1, 0x7f, 0x2f, 0x15, 0xd1, 0x4f, 0xf4, + 0xc0, 0x77, 0x28, 0x46, 0x02, 0xa9, 0x05, 0x97, 0xcd, 0xf8, 0x1c, 0xa0, + 0xff, 0xf7, 0x39, 0xfa, 0x07, 0xf1, 0x80, 0x03, 0x28, 0x46, 0x02, 0xa9, + 0x01, 0x37, 0xcd, 0xf8, 0x1c, 0x90, 0x05, 0x93, 0xff, 0xf7, 0x2f, 0xfa, + 0xb7, 0xf5, 0xe0, 0x7f, 0xeb, 0xd1, 0xbd, 0xf8, 0x20, 0x20, 0x06, 0xf1, + 0x34, 0x03, 0x04, 0xeb, 0x43, 0x03, 0x9a, 0x80, 0xbd, 0xf8, 0x22, 0x20, + 0x04, 0xeb, 0x46, 0x06, 0x5a, 0x81, 0xa6, 0xf8, 0x78, 0x90, 0x9d, 0xf8, + 0x24, 0x30, 0x84, 0xf8, 0x7e, 0x30, 0x9d, 0xf8, 0x25, 0x30, 0x84, 0xf8, + 0x7f, 0x30, 0x9d, 0xf8, 0x26, 0x30, 0x84, 0xf8, 0x80, 0x30, 0x9d, 0xf8, + 0x27, 0x30, 0x84, 0xf8, 0x81, 0x30, 0x0a, 0xb0, 0xbd, 0xe8, 0xf0, 0x87, + 0x2d, 0xe9, 0xf0, 0x41, 0xd0, 0xf8, 0xa8, 0x40, 0x86, 0xb0, 0x94, 0xf9, + 0x07, 0x14, 0x4f, 0xf0, 0xff, 0x32, 0x89, 0xb2, 0x06, 0x46, 0xfe, 0xf7, + 0x26, 0xff, 0x94, 0xf9, 0x67, 0x35, 0x05, 0x46, 0x02, 0x2b, 0x08, 0xd1, + 0x94, 0xf9, 0x08, 0x14, 0x30, 0x46, 0x89, 0xb2, 0x4f, 0xf0, 0xff, 0x32, + 0xfe, 0xf7, 0x19, 0xff, 0x00, 0xe0, 0x00, 0x20, 0x07, 0x23, 0x02, 0x93, + 0x20, 0x23, 0x04, 0x93, 0x01, 0x23, 0x2f, 0x1a, 0x01, 0x93, 0x30, 0x46, + 0x05, 0xab, 0xb4, 0xf8, 0x68, 0x15, 0x4f, 0xf0, 0xff, 0x32, 0x00, 0x93, + 0xfe, 0xf7, 0x07, 0xff, 0x00, 0x23, 0xc0, 0x19, 0xa4, 0xf8, 0x6a, 0x35, + 0x48, 0xbf, 0xa4, 0xf8, 0x6a, 0x05, 0x00, 0x25, 0x94, 0xf8, 0x66, 0x35, + 0x0b, 0xb1, 0xe9, 0x07, 0x1c, 0xd4, 0x5b, 0xb2, 0x01, 0x33, 0x95, 0xfb, + 0xf3, 0xf3, 0xdb, 0xb2, 0x03, 0xf5, 0x10, 0x73, 0x03, 0x93, 0xb4, 0xf8, + 0x68, 0x35, 0xb4, 0xf9, 0x6a, 0x85, 0xab, 0x42, 0x29, 0x46, 0x30, 0x46, + 0x4f, 0xf0, 0xff, 0x32, 0x38, 0xbf, 0xc7, 0xeb, 0x08, 0x08, 0xfe, 0xf7, + 0xe4, 0xfe, 0xc8, 0xeb, 0x00, 0x00, 0x05, 0x90, 0x69, 0x46, 0x30, 0x46, + 0xff, 0xf7, 0xb5, 0xf9, 0x01, 0x35, 0xed, 0xb2, 0x80, 0x2d, 0xd9, 0xd1, + 0x94, 0xf9, 0x66, 0x35, 0x7b, 0xb1, 0x01, 0x23, 0x01, 0x93, 0x05, 0xab, + 0x00, 0x93, 0x40, 0x24, 0x04, 0xf5, 0x10, 0x73, 0x01, 0x34, 0x30, 0x46, + 0x69, 0x46, 0xe4, 0xb2, 0x03, 0x93, 0xff, 0xf7, 0xa0, 0xf9, 0x80, 0x2c, + 0xf4, 0xd1, 0x06, 0xb0, 0xbd, 0xe8, 0xf0, 0x81, 0x70, 0xb5, 0x00, 0x23, + 0x86, 0xb0, 0x02, 0x93, 0x10, 0x23, 0x04, 0x93, 0x05, 0xab, 0x00, 0x93, + 0x02, 0x23, 0x04, 0x46, 0xad, 0xf8, 0x14, 0x10, 0x01, 0x93, 0x0e, 0x46, + 0x50, 0x23, 0x69, 0x46, 0x15, 0x46, 0xad, 0xf8, 0x16, 0x20, 0x03, 0x93, + 0xff, 0xf7, 0x85, 0xf9, 0x20, 0x46, 0xfc, 0xf7, 0xcb, 0xfc, 0x78, 0xb3, + 0x20, 0x46, 0x40, 0xf6, 0x46, 0x11, 0x40, 0xf2, 0xff, 0x32, 0x33, 0x46, + 0xfa, 0xf7, 0xf4, 0xfd, 0x20, 0x46, 0x40, 0xf6, 0x47, 0x11, 0x40, 0xf2, + 0xff, 0x32, 0x2b, 0x46, 0xfa, 0xf7, 0xec, 0xfd, 0x20, 0x46, 0x4f, 0xf4, + 0x15, 0x61, 0x40, 0xf2, 0xff, 0x32, 0x33, 0x46, 0xfa, 0xf7, 0xe4, 0xfd, + 0x20, 0x46, 0x40, 0xf6, 0x51, 0x11, 0x40, 0xf2, 0xff, 0x32, 0x2b, 0x46, + 0xfa, 0xf7, 0xdc, 0xfd, 0x20, 0x46, 0x40, 0xf6, 0x54, 0x11, 0x40, 0xf2, + 0xff, 0x32, 0x33, 0x46, 0xfa, 0xf7, 0xd4, 0xfd, 0x20, 0x46, 0x40, 0xf6, + 0x55, 0x11, 0x40, 0xf2, 0xff, 0x32, 0x2b, 0x46, 0xfa, 0xf7, 0xcc, 0xfd, + 0x06, 0xb0, 0x70, 0xbd, 0xf0, 0xb5, 0x29, 0x4b, 0x8b, 0xb0, 0x04, 0x46, + 0x05, 0xad, 0x0e, 0x46, 0x0f, 0xcb, 0x85, 0xe8, 0x0f, 0x00, 0x04, 0xf5, + 0x82, 0x53, 0x1b, 0x79, 0xd4, 0xf8, 0xa8, 0x50, 0x1b, 0xb1, 0x95, 0xf8, + 0xe0, 0x34, 0x00, 0x2b, 0x3e, 0xd0, 0x20, 0x46, 0x20, 0x49, 0x08, 0x22, + 0xfa, 0xf7, 0xc4, 0xfd, 0x07, 0x23, 0x02, 0x93, 0x20, 0x23, 0x04, 0x93, + 0x04, 0x23, 0x01, 0x93, 0x01, 0x27, 0x05, 0xab, 0x00, 0x93, 0x85, 0xf8, + 0x6a, 0x70, 0x4f, 0xf4, 0x50, 0x73, 0x20, 0x46, 0x69, 0x46, 0x03, 0x93, + 0xff, 0xf7, 0x25, 0xf9, 0x00, 0x23, 0x09, 0x93, 0x09, 0xab, 0x01, 0x97, + 0x00, 0x93, 0x4f, 0xf4, 0x51, 0x75, 0x20, 0x46, 0x69, 0x46, 0x03, 0x95, + 0xff, 0xf7, 0x19, 0xf9, 0x01, 0x35, 0x40, 0xf2, 0x5e, 0x33, 0x9d, 0x42, + 0xf5, 0xd1, 0x20, 0x46, 0x0d, 0x49, 0x12, 0x22, 0xfa, 0xf7, 0x9c, 0xfd, + 0x76, 0x00, 0x4f, 0xf6, 0xfe, 0x73, 0x20, 0x46, 0x40, 0xf2, 0xa9, 0x41, + 0x40, 0xf2, 0xff, 0x12, 0x33, 0x40, 0xfa, 0xf7, 0x7f, 0xfd, 0x20, 0x46, + 0x40, 0xf2, 0xa3, 0x61, 0x10, 0x22, 0x00, 0x23, 0xfa, 0xf7, 0x78, 0xfd, + 0x0b, 0xb0, 0xf0, 0xbd, 0x64, 0xb8, 0x01, 0x00, 0x3a, 0xe9, 0x01, 0x00, + 0x98, 0xe9, 0x01, 0x00, 0x30, 0xb5, 0x18, 0x23, 0x87, 0xb0, 0x03, 0x93, + 0x20, 0x23, 0xd0, 0xf8, 0xa8, 0x40, 0x05, 0x93, 0x80, 0x23, 0x02, 0x93, + 0x00, 0x23, 0x06, 0xa9, 0x04, 0x93, 0x04, 0xf1, 0x9c, 0x03, 0x05, 0x46, + 0x41, 0xf8, 0x14, 0x3d, 0xff, 0xf7, 0xe1, 0xf8, 0x28, 0x46, 0xb4, 0xf8, + 0x9c, 0x22, 0x40, 0xf2, 0x71, 0x61, 0xfa, 0xf7, 0x6f, 0xfb, 0x28, 0x46, + 0xb4, 0xf8, 0x9e, 0x22, 0x40, 0xf2, 0x73, 0x61, 0xfa, 0xf7, 0x68, 0xfb, + 0x28, 0x46, 0xb4, 0xf8, 0xa2, 0x22, 0x40, 0xf2, 0x74, 0x61, 0xfa, 0xf7, + 0x61, 0xfb, 0x28, 0x46, 0xb4, 0xf8, 0xa0, 0x22, 0x40, 0xf2, 0x75, 0x61, + 0xfa, 0xf7, 0x5a, 0xfb, 0x28, 0x46, 0xb4, 0xf8, 0xa4, 0x22, 0x40, 0xf2, + 0x79, 0x61, 0xfa, 0xf7, 0x53, 0xfb, 0x28, 0x46, 0xb4, 0xf8, 0xa6, 0x22, + 0x40, 0xf2, 0x76, 0x61, 0xfa, 0xf7, 0x4c, 0xfb, 0x28, 0x46, 0xb4, 0xf8, + 0xa8, 0x22, 0x40, 0xf2, 0xda, 0x61, 0xfa, 0xf7, 0x45, 0xfb, 0x28, 0x46, + 0xb4, 0xf8, 0xaa, 0x22, 0x40, 0xf2, 0x25, 0x51, 0xfa, 0xf7, 0x3e, 0xfb, + 0x28, 0x46, 0xb4, 0xf8, 0xae, 0x22, 0x4f, 0xf4, 0x8f, 0x61, 0xfa, 0xf7, + 0x37, 0xfb, 0x28, 0x46, 0xb4, 0xf8, 0xb0, 0x22, 0x4f, 0xf4, 0x9a, 0x61, + 0xfa, 0xf7, 0x30, 0xfb, 0xb4, 0xf8, 0xb2, 0x32, 0x4f, 0xf4, 0x00, 0x42, + 0xdb, 0x03, 0x28, 0x46, 0x13, 0x40, 0x40, 0xf2, 0x24, 0x51, 0xfa, 0xf7, + 0x0b, 0xfd, 0x94, 0xf8, 0xac, 0x32, 0x28, 0x46, 0x84, 0xf8, 0x67, 0x35, + 0xb4, 0xf8, 0xb4, 0x32, 0xa4, 0xf8, 0x68, 0x35, 0x94, 0xf8, 0xb6, 0x32, + 0x84, 0xf8, 0x07, 0x34, 0x94, 0xf8, 0xb7, 0x32, 0x84, 0xf8, 0x08, 0x34, + 0xff, 0xf7, 0x72, 0xfe, 0x07, 0xb0, 0x30, 0xbd, 0x2d, 0xe9, 0xf0, 0x4f, + 0xc3, 0x69, 0x0e, 0x46, 0x4f, 0xf0, 0x80, 0x51, 0xbb, 0xb0, 0x04, 0x46, + 0xd0, 0xf8, 0xa8, 0x50, 0x17, 0x46, 0x18, 0x69, 0x0a, 0x46, 0x3a, 0xf0, + 0x91, 0xd8, 0x05, 0x20, 0xf0, 0xf3, 0xe0, 0xf0, 0x20, 0x46, 0x4f, 0xf4, + 0x89, 0x61, 0x4f, 0xf4, 0x80, 0x42, 0x00, 0x23, 0xfa, 0xf7, 0xdc, 0xfc, + 0x01, 0x22, 0x20, 0x46, 0x40, 0xf2, 0x0a, 0x51, 0x13, 0x46, 0xfa, 0xf7, + 0xd5, 0xfc, 0x0d, 0xf1, 0xe6, 0x03, 0x34, 0x93, 0x01, 0x23, 0x35, 0x93, + 0x11, 0x23, 0x36, 0x93, 0x0f, 0x23, 0x37, 0x93, 0x20, 0x46, 0x08, 0x23, + 0x34, 0xa9, 0x38, 0x93, 0xfe, 0xf7, 0x68, 0xfd, 0x00, 0x2e, 0x40, 0xf0, + 0x4a, 0x81, 0xb4, 0xf8, 0xda, 0x30, 0x03, 0xf4, 0x70, 0x43, 0xb3, 0xf5, + 0x00, 0x5f, 0x0c, 0xd1, 0xe3, 0x69, 0x95, 0xf8, 0xbf, 0x64, 0x1b, 0x6d, + 0x03, 0xf4, 0x80, 0x53, 0x00, 0x2b, 0x0c, 0xbf, 0x08, 0x23, 0x06, 0x23, + 0xff, 0x2e, 0x08, 0xbf, 0x1e, 0x46, 0x9d, 0xf8, 0xe6, 0x30, 0x6f, 0xf0, + 0x02, 0x02, 0x02, 0xfb, 0x06, 0x32, 0x3a, 0xab, 0x03, 0xf8, 0x01, 0x2d, + 0x34, 0x93, 0x20, 0x46, 0x10, 0x23, 0x34, 0xa9, 0x37, 0x93, 0x77, 0x00, + 0xff, 0xf7, 0x23, 0xf8, 0x4f, 0xf6, 0xfe, 0x73, 0xfe, 0x22, 0x20, 0x46, + 0x40, 0xf2, 0x0a, 0x51, 0x3b, 0x40, 0xfa, 0xf7, 0x95, 0xfc, 0x95, 0xf8, + 0xc0, 0x54, 0xff, 0x2d, 0x00, 0xf0, 0xec, 0x80, 0x00, 0x2d, 0x00, 0xf0, + 0xcb, 0x80, 0x10, 0x2d, 0x28, 0xbf, 0x10, 0x25, 0xc5, 0xf1, 0x24, 0x07, + 0xff, 0xb2, 0xf6, 0xb2, 0x72, 0xb2, 0x7b, 0xb2, 0x9a, 0x42, 0x03, 0xdc, + 0x00, 0x2e, 0x14, 0xbf, 0x37, 0x46, 0x01, 0x27, 0x7a, 0xb2, 0xaa, 0x42, + 0x05, 0xf1, 0x01, 0x06, 0xcc, 0xbf, 0x5f, 0xfa, 0x86, 0xfb, 0xbb, 0x46, + 0xcb, 0xeb, 0x06, 0x06, 0x0d, 0x23, 0xf6, 0xb2, 0x36, 0x93, 0x20, 0x23, + 0x4f, 0xfa, 0x86, 0xf8, 0x38, 0x93, 0x09, 0xab, 0x03, 0xeb, 0xc8, 0x03, + 0x00, 0x93, 0x4f, 0xfa, 0x8b, 0xf3, 0x5b, 0x00, 0x01, 0x93, 0x73, 0x00, + 0x01, 0x33, 0x03, 0xf0, 0xff, 0x03, 0x02, 0x93, 0x6b, 0x00, 0x01, 0x33, + 0x03, 0x93, 0x05, 0xf1, 0x01, 0x0a, 0x4f, 0xea, 0x48, 0x03, 0x4f, 0xea, + 0x4a, 0x00, 0x59, 0x1c, 0xcd, 0xf8, 0x18, 0xb0, 0x07, 0x96, 0x05, 0x90, + 0x04, 0x91, 0x4f, 0xf0, 0x00, 0x09, 0x93, 0x46, 0x1e, 0x46, 0x01, 0x9b, + 0xab, 0x45, 0x35, 0x93, 0xca, 0xbf, 0x7b, 0xb2, 0xcd, 0xf8, 0xdc, 0xa0, + 0x37, 0x93, 0x37, 0x9b, 0x00, 0x9a, 0x4b, 0x44, 0x5b, 0x00, 0x20, 0x46, + 0x34, 0xa9, 0x37, 0x93, 0x34, 0x92, 0xfe, 0xf7, 0xdd, 0xfc, 0x02, 0x9b, + 0x0a, 0xe0, 0x3a, 0xa8, 0x00, 0xeb, 0x83, 0x02, 0x52, 0xf8, 0xc4, 0x1c, + 0x02, 0x33, 0x41, 0xf0, 0x80, 0x01, 0x42, 0xf8, 0xc4, 0x1c, 0xdb, 0xb2, + 0x03, 0x9a, 0x93, 0x42, 0xf1, 0xdd, 0x00, 0x23, 0x13, 0xe0, 0x3a, 0xa8, + 0x00, 0xeb, 0x86, 0x02, 0x52, 0xf8, 0xc4, 0x1c, 0x00, 0xeb, 0x83, 0x02, + 0x42, 0xf8, 0xc4, 0x1c, 0x04, 0x99, 0x00, 0xeb, 0x81, 0x02, 0x52, 0xf8, + 0xc4, 0x1c, 0x00, 0xeb, 0x83, 0x02, 0x02, 0x33, 0x42, 0xf8, 0xc0, 0x1c, + 0xdb, 0xb2, 0xb3, 0x42, 0xe9, 0xdb, 0x05, 0x9a, 0x09, 0xab, 0x34, 0x93, + 0x20, 0x46, 0x4f, 0xea, 0x49, 0x03, 0x34, 0xa9, 0x09, 0xf1, 0x25, 0x09, + 0x35, 0x92, 0x37, 0x93, 0xfe, 0xf7, 0x8b, 0xff, 0xb9, 0xf1, 0x4a, 0x0f, + 0xb5, 0xd1, 0x0e, 0x23, 0x5a, 0x46, 0x2b, 0xa8, 0xdd, 0xf8, 0x18, 0xb0, + 0x36, 0x93, 0x10, 0x23, 0x38, 0x93, 0xaa, 0x42, 0x00, 0xeb, 0x48, 0x03, + 0x34, 0x93, 0xc8, 0xbf, 0x7f, 0xb2, 0x4f, 0xfa, 0x8b, 0xf3, 0x20, 0x46, + 0x34, 0xa9, 0x07, 0x9e, 0x35, 0x93, 0xd4, 0xbf, 0xcd, 0xf8, 0xdc, 0xa0, + 0x37, 0x97, 0xfe, 0xf7, 0x8b, 0xfc, 0x0a, 0xe0, 0x3a, 0xa9, 0x01, 0xeb, + 0x46, 0x03, 0x33, 0xf8, 0x3c, 0x2c, 0x01, 0x36, 0x42, 0xf4, 0x00, 0x62, + 0x23, 0xf8, 0x3c, 0x2c, 0xf6, 0xb2, 0xae, 0x42, 0xf2, 0xd9, 0x00, 0x23, + 0x0a, 0xe0, 0x3a, 0xaa, 0x02, 0xeb, 0x48, 0x01, 0x31, 0xf8, 0x3c, 0x1c, + 0x02, 0xeb, 0x43, 0x02, 0x01, 0x33, 0x22, 0xf8, 0x3c, 0x1c, 0xdb, 0xb2, + 0x43, 0x45, 0xf2, 0xdb, 0x2b, 0xab, 0x34, 0x93, 0x20, 0x46, 0x00, 0x23, + 0x34, 0xa9, 0xcd, 0xf8, 0xd4, 0xa0, 0x37, 0x93, 0xfe, 0xf7, 0x47, 0xff, + 0x01, 0x22, 0x13, 0x46, 0x20, 0x46, 0x40, 0xf2, 0x0e, 0x51, 0xfa, 0xf7, + 0xbb, 0xfb, 0x4f, 0xf4, 0x7e, 0x42, 0x6b, 0x02, 0x13, 0x40, 0x20, 0x46, + 0x40, 0xf2, 0x0e, 0x51, 0xfa, 0xf7, 0xb2, 0xfb, 0x20, 0x46, 0x40, 0xf2, + 0x0f, 0x51, 0x7f, 0x22, 0x2b, 0x46, 0xfa, 0xf7, 0xab, 0xfb, 0x20, 0x46, + 0x40, 0xf2, 0x0f, 0x51, 0x4f, 0xf4, 0x7e, 0x52, 0xeb, 0x01, 0x1b, 0xe0, + 0x20, 0x46, 0x40, 0xf2, 0x0e, 0x51, 0x01, 0x22, 0x00, 0x23, 0xfa, 0xf7, + 0x9d, 0xfb, 0x20, 0x46, 0x40, 0xf2, 0x0e, 0x51, 0x4f, 0xf4, 0x7e, 0x42, + 0x00, 0x23, 0xfa, 0xf7, 0x95, 0xfb, 0x20, 0x46, 0x40, 0xf2, 0x0f, 0x51, + 0x7f, 0x22, 0x00, 0x23, 0xfa, 0xf7, 0x8e, 0xfb, 0x20, 0x46, 0x40, 0xf2, + 0x0f, 0x51, 0x4f, 0xf4, 0x7e, 0x52, 0x00, 0x23, 0xfa, 0xf7, 0x86, 0xfb, + 0xe3, 0x69, 0x4f, 0xf0, 0x80, 0x51, 0x18, 0x69, 0x00, 0x22, 0x39, 0xf0, + 0x29, 0xdf, 0x20, 0x46, 0xfd, 0xf7, 0xb8, 0xfb, 0x3b, 0xb0, 0xbd, 0xe8, + 0xf0, 0x8f, 0x3e, 0x46, 0xc7, 0xe6, 0x38, 0xb5, 0x40, 0xf2, 0xa4, 0x41, + 0x05, 0x46, 0xd0, 0xf8, 0xa8, 0x40, 0xfa, 0xf7, 0x7e, 0xf9, 0x80, 0x0b, + 0x80, 0xb2, 0x03, 0x28, 0x12, 0xd1, 0x05, 0xf5, 0x82, 0x53, 0x1b, 0x79, + 0x73, 0xb1, 0x28, 0x46, 0x40, 0xf2, 0x73, 0x41, 0xfa, 0xf7, 0x71, 0xf9, + 0x94, 0xf9, 0x66, 0x35, 0xc0, 0x05, 0xc0, 0x0d, 0x01, 0x33, 0x58, 0x43, + 0x00, 0xeb, 0xd0, 0x70, 0x40, 0x10, 0x01, 0xe0, 0x94, 0xf8, 0xc1, 0x02, + 0x40, 0xb2, 0x38, 0xbd, 0x70, 0xb5, 0xc6, 0xb0, 0x01, 0xad, 0xd0, 0xf8, + 0xa8, 0x60, 0x04, 0x46, 0x00, 0x21, 0x28, 0x46, 0x4f, 0xf4, 0x80, 0x72, + 0xeb, 0xf3, 0xb8, 0xf3, 0x07, 0x23, 0x43, 0x93, 0x20, 0x23, 0x45, 0x93, + 0x96, 0xf8, 0x6a, 0x30, 0x41, 0x95, 0x43, 0xb9, 0x1e, 0x23, 0x42, 0x93, + 0x20, 0x46, 0x4f, 0xf4, 0x50, 0x73, 0x41, 0xa9, 0x44, 0x93, 0xfe, 0xf7, + 0xbc, 0xfe, 0x40, 0x23, 0x42, 0x93, 0x20, 0x46, 0x80, 0x23, 0x41, 0xa9, + 0x44, 0x93, 0xfe, 0xf7, 0xb4, 0xfe, 0x46, 0xb0, 0x70, 0xbd, 0x00, 0x00, + 0x30, 0xb5, 0x07, 0x23, 0x89, 0xb0, 0x03, 0x93, 0x20, 0x23, 0x05, 0x93, + 0x06, 0xab, 0x01, 0x93, 0x01, 0x23, 0x02, 0x93, 0x00, 0x23, 0x04, 0x46, + 0xd0, 0xf8, 0xa8, 0x50, 0x04, 0x93, 0x08, 0xe0, 0x20, 0x46, 0x01, 0xa9, + 0xfe, 0xf7, 0x9d, 0xfe, 0x04, 0x9b, 0x01, 0x33, 0x04, 0x93, 0x06, 0x9b, + 0x01, 0x33, 0x06, 0x93, 0x06, 0x9b, 0x7f, 0x2b, 0xf2, 0xd9, 0x4f, 0xf4, + 0x30, 0x73, 0x04, 0x93, 0x00, 0x23, 0x07, 0xe0, 0x01, 0xa9, 0xfe, 0xf7, + 0x8c, 0xfe, 0x04, 0x9b, 0x01, 0x33, 0x04, 0x93, 0x06, 0x9b, 0x01, 0x33, + 0x06, 0x93, 0x06, 0x9b, 0x20, 0x46, 0x7f, 0x2b, 0xf2, 0xd9, 0x09, 0x22, + 0x5a, 0x49, 0xfa, 0xf7, 0x0b, 0xfb, 0x01, 0x21, 0x20, 0x46, 0xfd, 0xf7, + 0x7d, 0xf8, 0x24, 0x22, 0x20, 0x46, 0x57, 0x49, 0xfa, 0xf7, 0x02, 0xfb, + 0x20, 0x46, 0xfc, 0xf7, 0xab, 0xfb, 0x40, 0x08, 0x80, 0xb2, 0xe6, 0x28, + 0x06, 0xdc, 0x20, 0x46, 0xfc, 0xf7, 0xa4, 0xfb, 0x43, 0x08, 0x19, 0x33, + 0x9b, 0xb2, 0x00, 0xe0, 0xff, 0x23, 0xff, 0x22, 0x20, 0x46, 0x40, 0xf2, + 0xa5, 0x41, 0xfa, 0xf7, 0xdb, 0xfa, 0x20, 0x46, 0xff, 0xf7, 0x84, 0xff, + 0xb5, 0xf8, 0xe6, 0x23, 0xb5, 0xf8, 0xe4, 0x33, 0x20, 0x46, 0x03, 0xeb, + 0x42, 0x05, 0xad, 0x01, 0x4f, 0xf6, 0xc0, 0x73, 0x2b, 0x40, 0x4f, 0xf4, + 0x9a, 0x61, 0x47, 0xf6, 0xc0, 0x72, 0xfa, 0xf7, 0xc7, 0xfa, 0x20, 0x46, + 0x09, 0x22, 0x41, 0x49, 0xfa, 0xf7, 0xd4, 0xfa, 0xb4, 0xf8, 0xda, 0x30, + 0x20, 0x46, 0x03, 0xf4, 0x70, 0x43, 0x28, 0x21, 0x1e, 0x22, 0xb3, 0xf5, + 0x00, 0x5f, 0x14, 0xbf, 0x18, 0x23, 0x1c, 0x23, 0xfa, 0xf7, 0x72, 0xfa, + 0x01, 0x22, 0x20, 0x46, 0x3a, 0x21, 0x13, 0x46, 0xfa, 0xf7, 0x6c, 0xfa, + 0x08, 0x22, 0x13, 0x46, 0x20, 0x46, 0x4f, 0xf4, 0x8d, 0x71, 0xfa, 0xf7, + 0x65, 0xfa, 0x20, 0x46, 0x25, 0x21, 0x0c, 0x22, 0xfa, 0xf7, 0x8b, 0xf8, + 0xb4, 0xf8, 0xda, 0x30, 0x02, 0x22, 0x03, 0xf4, 0x70, 0x43, 0x3a, 0x21, + 0xb3, 0xf5, 0x00, 0x5f, 0x08, 0xbf, 0x13, 0x46, 0x20, 0x46, 0x18, 0xbf, + 0x00, 0x23, 0xfa, 0xf7, 0x51, 0xfa, 0x08, 0x22, 0x13, 0x46, 0x20, 0x46, + 0x05, 0x21, 0xfa, 0xf7, 0x4b, 0xfa, 0x20, 0x46, 0x06, 0x22, 0x25, 0x49, + 0xfa, 0xf7, 0x9a, 0xfa, 0x47, 0xf2, 0x08, 0x02, 0x20, 0x46, 0x40, 0xf2, + 0xd7, 0x41, 0x4f, 0xf4, 0x00, 0x53, 0xfa, 0xf7, 0x7f, 0xfa, 0x20, 0x46, + 0xfc, 0xf7, 0x3a, 0xfb, 0x10, 0x23, 0x05, 0x93, 0x0d, 0xf1, 0x1e, 0x03, + 0x01, 0x93, 0x01, 0x23, 0x08, 0x25, 0xad, 0xf8, 0x1e, 0x00, 0x02, 0x93, + 0x20, 0x46, 0x06, 0x23, 0x01, 0xa9, 0x04, 0x93, 0x03, 0x95, 0xfe, 0xf7, + 0xf0, 0xfd, 0x20, 0x46, 0x0f, 0x22, 0x15, 0x49, 0xfa, 0xf7, 0x78, 0xfa, + 0x20, 0x46, 0x35, 0x21, 0xff, 0x22, 0x00, 0x23, 0xfa, 0xf7, 0x1e, 0xfa, + 0x20, 0x46, 0x36, 0x21, 0x03, 0x22, 0x00, 0x23, 0xfa, 0xf7, 0x18, 0xfa, + 0x20, 0x46, 0x2a, 0x46, 0x2b, 0x46, 0x4f, 0xf4, 0x8d, 0x71, 0xfa, 0xf7, + 0x11, 0xfa, 0x4f, 0xf4, 0x80, 0x62, 0x20, 0x46, 0x40, 0xf2, 0xa4, 0x41, + 0x13, 0x46, 0xfa, 0xf7, 0x4b, 0xfa, 0x20, 0x46, 0xfd, 0xf7, 0x2e, 0xf8, + 0x09, 0xb0, 0x30, 0xbd, 0x08, 0xec, 0x01, 0x00, 0x1a, 0xec, 0x01, 0x00, + 0x62, 0xec, 0x01, 0x00, 0x74, 0xec, 0x01, 0x00, 0x38, 0xef, 0x01, 0x00, + 0x2d, 0xe9, 0xf0, 0x41, 0x04, 0x46, 0xd0, 0xf8, 0xa8, 0x50, 0xfc, 0xf7, + 0xdc, 0xf9, 0xb0, 0xf5, 0x40, 0x4f, 0x48, 0xd1, 0xe3, 0x69, 0xe0, 0x21, + 0x18, 0x69, 0x39, 0xf0, 0xf7, 0xdd, 0xb5, 0xf8, 0x2e, 0x80, 0x07, 0x46, + 0xc8, 0xeb, 0x00, 0x08, 0x40, 0xf2, 0xa5, 0x41, 0x20, 0x46, 0xfa, 0xf7, + 0x32, 0xf8, 0x00, 0xf4, 0xe0, 0x60, 0x06, 0x0a, 0x01, 0x23, 0xb3, 0x40, + 0x1f, 0xfa, 0x88, 0xf8, 0x98, 0x45, 0x30, 0xdd, 0x95, 0xf8, 0xc1, 0x34, + 0xef, 0x85, 0xb3, 0x42, 0x08, 0xd9, 0x01, 0x36, 0x20, 0x46, 0x40, 0xf2, + 0xa5, 0x41, 0x4f, 0xf4, 0xe0, 0x62, 0x33, 0x02, 0xfa, 0xf7, 0x0c, 0xfa, + 0x20, 0x46, 0xff, 0xf7, 0x92, 0xfe, 0xb4, 0xf8, 0xda, 0x30, 0x80, 0xb2, + 0x03, 0xf4, 0x70, 0x43, 0xb3, 0xf5, 0x00, 0x5f, 0x0c, 0xbf, 0x85, 0xf8, + 0x54, 0x04, 0x85, 0xf8, 0x55, 0x04, 0x28, 0x86, 0x6e, 0x86, 0xd4, 0xf8, + 0xa8, 0x30, 0x40, 0x00, 0x93, 0xf9, 0x66, 0x35, 0x40, 0xf2, 0xa4, 0x41, + 0x01, 0x33, 0x90, 0xfb, 0xf3, 0xf3, 0x40, 0xf2, 0xff, 0x12, 0x20, 0x46, + 0x9b, 0xb2, 0xbd, 0xe8, 0xf0, 0x41, 0xfa, 0xf7, 0xe9, 0xb9, 0xbd, 0xe8, + 0xf0, 0x81, 0x00, 0x00, 0x2d, 0xe9, 0xf0, 0x4f, 0x04, 0x46, 0x85, 0xb0, + 0x0f, 0x46, 0xd0, 0xf8, 0xa8, 0x50, 0xff, 0xf7, 0xa1, 0xff, 0xd4, 0xf8, + 0xb0, 0x30, 0xd3, 0xf8, 0x20, 0x31, 0x03, 0xf0, 0x01, 0x03, 0x83, 0xf0, + 0x01, 0x02, 0x01, 0x92, 0x1b, 0xb1, 0xe3, 0x69, 0x18, 0x69, 0x39, 0xf0, + 0xe9, 0xdd, 0x07, 0x21, 0x20, 0x46, 0xf9, 0xf7, 0x9d, 0xff, 0xff, 0x21, + 0xc6, 0xb2, 0x20, 0x46, 0xf9, 0xf7, 0x98, 0xff, 0x40, 0xf2, 0x1f, 0x11, + 0x5f, 0xfa, 0x80, 0xf8, 0x20, 0x46, 0xf9, 0xf7, 0x91, 0xff, 0x40, 0xf2, + 0x3b, 0x41, 0x5f, 0xfa, 0x80, 0xf9, 0x20, 0x46, 0xf9, 0xf7, 0xc7, 0xff, + 0x40, 0xf2, 0x3c, 0x41, 0x82, 0x46, 0x20, 0x46, 0xf9, 0xf7, 0xc1, 0xff, + 0x40, 0xf2, 0xd7, 0x41, 0x83, 0x46, 0x20, 0x46, 0xf9, 0xf7, 0xbb, 0xff, + 0x4f, 0xf4, 0x9b, 0x61, 0x02, 0x90, 0x20, 0x46, 0xf9, 0xf7, 0xb5, 0xff, + 0x0f, 0x22, 0x03, 0x90, 0x3f, 0x49, 0x20, 0x46, 0xfa, 0xf7, 0xb2, 0xf9, + 0x01, 0x22, 0x07, 0x21, 0x13, 0x46, 0x20, 0x46, 0xfa, 0xf7, 0x58, 0xf9, + 0x10, 0x22, 0xff, 0x21, 0x13, 0x46, 0x20, 0x46, 0xfa, 0xf7, 0x52, 0xf9, + 0x04, 0x22, 0x13, 0x46, 0x40, 0xf2, 0x1f, 0x11, 0x20, 0x46, 0xfa, 0xf7, + 0x4b, 0xf9, 0x0a, 0x20, 0xef, 0xf3, 0x86, 0xf5, 0x20, 0x22, 0x20, 0x46, + 0x4f, 0xf4, 0x9a, 0x61, 0x13, 0x46, 0xfa, 0xf7, 0x83, 0xf9, 0x0a, 0x20, + 0xef, 0xf3, 0x7c, 0xf5, 0x01, 0x2f, 0x20, 0x46, 0x1c, 0xd1, 0x40, 0xf2, + 0x76, 0x41, 0xf9, 0xf7, 0x88, 0xff, 0x40, 0xf2, 0x77, 0x41, 0xc7, 0x05, + 0x20, 0x46, 0xf9, 0xf7, 0x82, 0xff, 0xc0, 0x05, 0xc0, 0x0d, 0xff, 0x0d, + 0xff, 0x28, 0xa5, 0xf8, 0x6e, 0x05, 0x88, 0xbf, 0xa0, 0xf5, 0x00, 0x70, + 0xff, 0x2f, 0xa5, 0xf8, 0x6c, 0x75, 0x88, 0xbf, 0xa7, 0xf5, 0x00, 0x77, + 0x80, 0xb2, 0xbf, 0xb2, 0xc5, 0x1b, 0x09, 0xe0, 0x40, 0xf2, 0x75, 0x41, + 0xf9, 0xf7, 0x6b, 0xff, 0xc5, 0x05, 0xed, 0x0d, 0xff, 0x2d, 0x88, 0xbf, + 0xa5, 0xf5, 0x00, 0x75, 0x20, 0x46, 0x07, 0x21, 0x32, 0x46, 0xf9, 0xf7, + 0x3a, 0xff, 0x20, 0x46, 0xff, 0x21, 0x42, 0x46, 0xf9, 0xf7, 0x35, 0xff, + 0x20, 0x46, 0x40, 0xf2, 0x1f, 0x11, 0x4a, 0x46, 0xf9, 0xf7, 0x2f, 0xff, + 0x20, 0x46, 0x40, 0xf2, 0x3b, 0x41, 0x52, 0x46, 0xf9, 0xf7, 0x5a, 0xff, + 0x20, 0x46, 0x40, 0xf2, 0x3c, 0x41, 0x5a, 0x46, 0xf9, 0xf7, 0x54, 0xff, + 0x20, 0x46, 0x40, 0xf2, 0xd7, 0x41, 0x02, 0x9a, 0xf9, 0xf7, 0x4e, 0xff, + 0x20, 0x46, 0x4f, 0xf4, 0x9b, 0x61, 0x03, 0x9a, 0xf9, 0xf7, 0x48, 0xff, + 0x01, 0x9b, 0x1b, 0xb9, 0xe3, 0x69, 0x18, 0x69, 0x39, 0xf0, 0x2e, 0xdd, + 0x28, 0xb2, 0x05, 0xb0, 0xbd, 0xe8, 0xf0, 0x8f, 0xea, 0xeb, 0x01, 0x00, + 0x41, 0x43, 0x92, 0x02, 0x9b, 0x01, 0x00, 0xfb, 0x03, 0x20, 0x01, 0xf5, + 0x00, 0x41, 0x01, 0xeb, 0x40, 0x00, 0x49, 0x00, 0x90, 0xfb, 0xf1, 0xf0, + 0x70, 0x47, 0x30, 0xb5, 0x00, 0x23, 0x8b, 0xb0, 0x07, 0x93, 0x08, 0x93, + 0x09, 0x93, 0x07, 0x23, 0x03, 0x93, 0x4f, 0xf0, 0x20, 0x03, 0x00, 0x29, + 0x05, 0x93, 0x06, 0xab, 0x18, 0xbf, 0x4f, 0xf4, 0x30, 0x71, 0x01, 0x93, + 0x4f, 0xf0, 0x01, 0x03, 0x05, 0x46, 0x04, 0x91, 0x02, 0x93, 0x05, 0xd1, + 0x07, 0xa9, 0x08, 0xaa, 0x09, 0xab, 0xfb, 0xf7, 0x67, 0xfe, 0x08, 0xe0, + 0xb0, 0xf9, 0x02, 0x31, 0x08, 0x93, 0xb0, 0xf9, 0x04, 0x31, 0x09, 0x93, + 0xb0, 0xf9, 0x06, 0x31, 0x07, 0x93, 0x00, 0x24, 0x07, 0xa9, 0x0e, 0xc9, + 0x20, 0x46, 0xff, 0xf7, 0xc7, 0xff, 0x01, 0xa9, 0x06, 0x90, 0x28, 0x46, + 0xfe, 0xf7, 0x69, 0xfc, 0x04, 0x9b, 0x01, 0x34, 0x01, 0x33, 0x80, 0x2c, + 0x04, 0x93, 0xef, 0xd1, 0x0b, 0xb0, 0x30, 0xbd, 0x2d, 0xe9, 0xf0, 0x41, + 0x04, 0x46, 0x8a, 0xb0, 0x0d, 0x46, 0x49, 0xb1, 0x40, 0xf2, 0xd7, 0x41, + 0xf9, 0xf7, 0xe1, 0xfe, 0x01, 0xa9, 0x06, 0x46, 0x20, 0x46, 0xfc, 0xf7, + 0x19, 0xff, 0x00, 0xe0, 0x0e, 0x46, 0x20, 0x22, 0x13, 0x46, 0x4f, 0xf4, + 0x9a, 0x61, 0x20, 0x46, 0xfa, 0xf7, 0xc4, 0xf8, 0x64, 0x20, 0xef, 0xf3, + 0xbd, 0xf4, 0x40, 0xf2, 0x76, 0x41, 0x20, 0x46, 0xf9, 0xf7, 0xcb, 0xfe, + 0x40, 0xf2, 0xa6, 0x41, 0x07, 0x46, 0x20, 0x46, 0xf9, 0xf7, 0xc5, 0xfe, + 0x80, 0x46, 0xff, 0x05, 0x4f, 0xea, 0xc8, 0x58, 0xff, 0x0d, 0x4f, 0xea, + 0xd8, 0x58, 0x20, 0x46, 0x07, 0xa9, 0x08, 0xaa, 0x09, 0xab, 0x87, 0xf4, + 0x80, 0x77, 0x88, 0xf4, 0x80, 0x78, 0xfb, 0xf7, 0x13, 0xfe, 0xc8, 0xeb, + 0x07, 0x00, 0x00, 0xf5, 0xfe, 0x70, 0x03, 0x30, 0x07, 0xa9, 0x80, 0x10, + 0x0e, 0xc9, 0xff, 0xf7, 0x79, 0xff, 0x47, 0x00, 0x4d, 0xb1, 0x20, 0x46, + 0x01, 0xa9, 0xfc, 0xf7, 0x9b, 0xfd, 0x20, 0x46, 0x40, 0xf2, 0xd7, 0x41, + 0x32, 0x46, 0xf9, 0xf7, 0xa9, 0xfe, 0x38, 0x46, 0x0a, 0xb0, 0xbd, 0xe8, + 0xf0, 0x81, 0x2d, 0xe9, 0xf8, 0x4f, 0x9d, 0xf8, 0x28, 0x50, 0x8b, 0x46, + 0x92, 0x46, 0x99, 0x46, 0x9d, 0xf8, 0x2c, 0x70, 0xbd, 0xb1, 0x00, 0x26, + 0x6f, 0xf0, 0x00, 0x48, 0x35, 0x46, 0x28, 0x46, 0x59, 0x46, 0x52, 0x46, + 0x4b, 0x46, 0xff, 0xf7, 0x55, 0xff, 0x40, 0x45, 0x04, 0xda, 0x01, 0x36, + 0xf6, 0xb2, 0xbe, 0x42, 0x1b, 0xd0, 0x80, 0x46, 0x01, 0x35, 0x80, 0x2d, + 0xef, 0xd1, 0x6f, 0xf0, 0x00, 0x40, 0xbd, 0xe8, 0xf8, 0x8f, 0x4f, 0xf0, + 0xff, 0x36, 0x7f, 0x24, 0x20, 0x46, 0x59, 0x46, 0x52, 0x46, 0x4b, 0x46, + 0xff, 0xf7, 0x3e, 0xff, 0xb0, 0x42, 0x04, 0xdd, 0x01, 0x35, 0xed, 0xb2, + 0xbd, 0x42, 0x04, 0xd0, 0x06, 0x46, 0x14, 0xf1, 0xff, 0x34, 0xef, 0xd2, + 0x20, 0x46, 0xbd, 0xe8, 0xf8, 0x8f, 0x2d, 0xe9, 0xf0, 0x4f, 0x8b, 0xb0, + 0x04, 0x46, 0x00, 0x25, 0x08, 0xab, 0x07, 0xaa, 0x88, 0x46, 0x06, 0xa9, + 0xd0, 0xf8, 0xa8, 0xa0, 0x06, 0x95, 0x07, 0x95, 0x08, 0x95, 0xfb, 0xf7, + 0xb1, 0xfd, 0x20, 0x46, 0x0d, 0xf1, 0x26, 0x01, 0x0d, 0xf1, 0x27, 0x02, + 0xfe, 0xf7, 0xca, 0xf8, 0x9d, 0xf8, 0x26, 0x30, 0x06, 0xaf, 0x03, 0x93, + 0x01, 0x23, 0x97, 0xe8, 0x80, 0x0a, 0x00, 0x93, 0x03, 0x9b, 0x4a, 0x46, + 0x01, 0x93, 0x39, 0x46, 0x5b, 0x46, 0x20, 0x46, 0xff, 0xf7, 0xa1, 0xff, + 0x9d, 0xf8, 0x27, 0x30, 0x4a, 0x46, 0x04, 0x93, 0x01, 0x93, 0x06, 0x46, + 0x5b, 0x46, 0x00, 0x95, 0x20, 0x46, 0x39, 0x46, 0xff, 0xf7, 0x95, 0xff, + 0x9a, 0xf8, 0xe8, 0x33, 0x81, 0x46, 0x23, 0xb3, 0xb4, 0xf9, 0x04, 0x31, + 0xb4, 0xf9, 0x02, 0xc1, 0x05, 0x93, 0x01, 0x23, 0xb4, 0xf9, 0x06, 0xb1, + 0x00, 0x93, 0x03, 0x9b, 0x62, 0x46, 0x01, 0x93, 0x59, 0x46, 0x05, 0x9b, + 0x20, 0x46, 0xcd, 0xf8, 0x08, 0xc0, 0xff, 0xf7, 0x7e, 0xff, 0x04, 0x9b, + 0xdd, 0xf8, 0x08, 0xc0, 0x07, 0x46, 0x01, 0x93, 0x00, 0x95, 0x20, 0x46, + 0x59, 0x46, 0x62, 0x46, 0x05, 0x9b, 0xff, 0xf7, 0x72, 0xff, 0xbe, 0x42, + 0xb8, 0xbf, 0x3e, 0x46, 0x81, 0x45, 0xa8, 0xbf, 0x81, 0x46, 0xb8, 0xf1, + 0x01, 0x0f, 0x02, 0xd0, 0xb8, 0xf1, 0x03, 0x0f, 0x02, 0xd1, 0x76, 0x10, + 0xca, 0xf8, 0x44, 0x64, 0xa8, 0xf1, 0x02, 0x08, 0x5f, 0xfa, 0x88, 0xf8, + 0xb8, 0xf1, 0x01, 0x0f, 0x9c, 0xbf, 0x4f, 0xea, 0x69, 0x03, 0xca, 0xf8, + 0x48, 0x34, 0x0b, 0xb0, 0xbd, 0xe8, 0xf0, 0x8f, 0xf0, 0xb5, 0xd0, 0xf8, + 0xa8, 0x40, 0x00, 0x23, 0x85, 0xb0, 0x01, 0x93, 0x02, 0x93, 0x03, 0x93, + 0x94, 0xf8, 0x58, 0x34, 0x05, 0x46, 0x00, 0x2b, 0x79, 0xd0, 0xff, 0xf7, + 0x5a, 0xfc, 0x06, 0x46, 0x08, 0xb1, 0x7f, 0x28, 0x73, 0xd1, 0x02, 0xaa, + 0x03, 0xab, 0x28, 0x46, 0x01, 0xa9, 0xfb, 0xf7, 0x35, 0xfd, 0x40, 0xf2, + 0x3e, 0x61, 0x28, 0x46, 0xf9, 0xf7, 0xd1, 0xfd, 0x40, 0xf2, 0xa6, 0x41, + 0xc7, 0x05, 0x28, 0x46, 0xf9, 0xf7, 0xcb, 0xfd, 0xc0, 0x05, 0xc0, 0x0d, + 0xff, 0x0d, 0xff, 0x28, 0x86, 0xbf, 0xa0, 0xf5, 0x80, 0x70, 0x80, 0xb2, + 0x00, 0xf5, 0x80, 0x70, 0xff, 0x2f, 0x88, 0xbf, 0xa7, 0xf5, 0x80, 0x77, + 0xc0, 0xf5, 0xfe, 0x70, 0x8c, 0xbf, 0xbf, 0xb2, 0x07, 0xf5, 0x80, 0x77, + 0x03, 0x30, 0x38, 0x18, 0x80, 0x10, 0x80, 0xb2, 0xbe, 0xb9, 0x94, 0xf8, + 0x56, 0x34, 0x01, 0x33, 0xdb, 0xb2, 0x04, 0x2b, 0x84, 0xf8, 0x56, 0x34, + 0x41, 0xd9, 0x01, 0xa9, 0x0e, 0xc9, 0x84, 0xf8, 0x56, 0x64, 0xff, 0xf7, + 0x73, 0xfe, 0xd4, 0xf8, 0x48, 0x24, 0x43, 0x10, 0x04, 0x3b, 0x93, 0x42, + 0xb8, 0xbf, 0x13, 0x46, 0xc4, 0xf8, 0x44, 0x34, 0x19, 0xe0, 0x7f, 0x2e, + 0x2f, 0xd1, 0x94, 0xf8, 0x57, 0x34, 0x01, 0x33, 0xdb, 0xb2, 0x04, 0x2b, + 0x84, 0xf8, 0x57, 0x34, 0x27, 0xd9, 0x00, 0x23, 0x01, 0xa9, 0x84, 0xf8, + 0x57, 0x34, 0x0e, 0xc9, 0xff, 0xf7, 0x58, 0xfe, 0xd4, 0xf8, 0x44, 0x24, + 0x43, 0x10, 0x04, 0x33, 0x93, 0x42, 0xa8, 0xbf, 0x13, 0x46, 0xc4, 0xf8, + 0x48, 0x34, 0xd5, 0xf8, 0xa8, 0x20, 0x9b, 0xb2, 0xd2, 0xf8, 0x48, 0x14, + 0xd2, 0xf8, 0x44, 0x24, 0x93, 0x42, 0xb4, 0xbf, 0x18, 0x46, 0x10, 0x46, + 0x81, 0x42, 0x01, 0xdd, 0x8b, 0xb2, 0x02, 0xe0, 0x9a, 0x42, 0xb8, 0xbf, + 0x93, 0xb2, 0x28, 0x46, 0x40, 0xf2, 0xa7, 0x41, 0xff, 0x22, 0xf9, 0xf7, + 0x59, 0xff, 0x05, 0xb0, 0xf0, 0xbd, 0x30, 0xb5, 0xd0, 0xf8, 0xa8, 0x50, + 0x9b, 0xb0, 0x04, 0x46, 0x02, 0x46, 0x00, 0x23, 0x92, 0xf9, 0x10, 0x05, + 0x01, 0xa9, 0x40, 0x42, 0x58, 0x50, 0x04, 0x33, 0x01, 0x32, 0x50, 0x2b, + 0xf6, 0xd1, 0x95, 0xf8, 0x6a, 0x30, 0x6b, 0xb9, 0x07, 0x23, 0x17, 0x93, + 0x20, 0x23, 0x19, 0x93, 0x14, 0x23, 0x16, 0x93, 0x15, 0x91, 0x4f, 0xf4, + 0x50, 0x73, 0x20, 0x46, 0x15, 0xa9, 0x18, 0x93, 0xfe, 0xf7, 0xbb, 0xfa, + 0xd4, 0xf8, 0xa8, 0x20, 0x94, 0xf8, 0x29, 0x36, 0xd2, 0xf8, 0x48, 0x14, + 0xd2, 0xf8, 0x44, 0x24, 0x93, 0x42, 0xb4, 0xbf, 0x18, 0x46, 0x10, 0x46, + 0x81, 0x42, 0x01, 0xdd, 0x8b, 0xb2, 0x02, 0xe0, 0x9a, 0x42, 0xb8, 0xbf, + 0x93, 0xb2, 0x20, 0x46, 0x40, 0xf2, 0xa7, 0x41, 0xff, 0x22, 0xf9, 0xf7, + 0x1d, 0xff, 0x95, 0xf8, 0xe8, 0x33, 0xf3, 0xb1, 0x94, 0xf8, 0x29, 0x26, + 0xb5, 0xf8, 0xe6, 0x33, 0x20, 0x46, 0xd3, 0x1a, 0x1b, 0x02, 0x4f, 0xf4, + 0x7f, 0x42, 0x13, 0x40, 0x40, 0xf2, 0xd1, 0x41, 0xf9, 0xf7, 0x0c, 0xff, + 0x94, 0xf8, 0x29, 0x26, 0x95, 0xf8, 0x25, 0x35, 0x95, 0xf8, 0xe6, 0x13, + 0x9b, 0x1a, 0xd3, 0x1a, 0x5b, 0x1a, 0x5b, 0xb2, 0x20, 0x46, 0x40, 0xf2, + 0xd1, 0x41, 0xff, 0x22, 0x9b, 0xb2, 0xf9, 0xf7, 0xfb, 0xfe, 0x20, 0x46, + 0xfb, 0xf7, 0x02, 0xfd, 0x1b, 0xb0, 0x30, 0xbd, 0x2d, 0xe9, 0xf0, 0x41, + 0x04, 0x46, 0x0d, 0x46, 0xfb, 0xf7, 0x97, 0xfe, 0x29, 0x46, 0x07, 0x46, + 0x20, 0x46, 0xfb, 0xf7, 0x98, 0xfd, 0x39, 0x46, 0x05, 0x46, 0x20, 0x46, + 0xfb, 0xf7, 0x93, 0xfd, 0x40, 0x22, 0xb5, 0xf5, 0x40, 0x4f, 0x0c, 0xbf, + 0x13, 0x46, 0x00, 0x23, 0x07, 0x46, 0x40, 0xf2, 0xda, 0x61, 0x20, 0x46, + 0xd4, 0xf8, 0xa8, 0x60, 0xf9, 0xf7, 0xd8, 0xfe, 0x10, 0x22, 0xb5, 0xf5, + 0x40, 0x4f, 0x14, 0xbf, 0x13, 0x46, 0x00, 0x23, 0x20, 0x46, 0x40, 0xf2, + 0xa3, 0x61, 0xf9, 0xf7, 0xcd, 0xfe, 0xa5, 0xf5, 0x40, 0x4e, 0x01, 0x22, + 0xde, 0xf1, 0x00, 0x03, 0x43, 0xeb, 0x0e, 0x03, 0x20, 0x46, 0x40, 0xf2, + 0x6e, 0x41, 0xf9, 0xf7, 0xc1, 0xfe, 0xaf, 0x42, 0x00, 0xf0, 0x93, 0x80, + 0xb7, 0xf5, 0x40, 0x4f, 0x02, 0xd1, 0x20, 0x46, 0xff, 0xf7, 0x64, 0xfb, + 0xb5, 0xf5, 0x40, 0x4f, 0x20, 0x46, 0x3a, 0xd1, 0xff, 0xf7, 0x5b, 0xff, + 0xd4, 0xf8, 0xa8, 0x30, 0x32, 0x8e, 0x93, 0xf9, 0x66, 0x35, 0x52, 0x00, + 0x01, 0x33, 0x92, 0xfb, 0xf3, 0xf3, 0x20, 0x46, 0x40, 0xf2, 0xa4, 0x41, + 0x40, 0xf2, 0xff, 0x12, 0x9b, 0xb2, 0xf9, 0xf7, 0xa1, 0xfe, 0x73, 0x8e, + 0x20, 0x46, 0x1b, 0x02, 0x40, 0xf2, 0xa5, 0x41, 0x4f, 0xf4, 0xe0, 0x62, + 0x03, 0xf4, 0x7f, 0x43, 0xf9, 0xf7, 0x96, 0xfe, 0x04, 0x22, 0x20, 0x46, + 0x00, 0x23, 0x40, 0xf2, 0x1f, 0x11, 0xf9, 0xf7, 0x4d, 0xfe, 0xe3, 0x69, + 0xe0, 0x21, 0x18, 0x69, 0x39, 0xf0, 0x54, 0xda, 0x00, 0x21, 0xf0, 0x85, + 0x20, 0x46, 0xfb, 0xf7, 0xc4, 0xff, 0xff, 0x23, 0x86, 0xf8, 0x34, 0x30, + 0x20, 0x46, 0x40, 0xf2, 0xa9, 0x41, 0x4f, 0xf4, 0x00, 0x42, 0x00, 0x23, + 0xf9, 0xf7, 0x7a, 0xfe, 0x02, 0xe0, 0x01, 0x21, 0xfb, 0xf7, 0xb5, 0xff, + 0x20, 0x46, 0x40, 0xf2, 0xa4, 0x41, 0x4f, 0xf4, 0x60, 0x42, 0x2b, 0x46, + 0xf9, 0xf7, 0x6e, 0xfe, 0xb5, 0xf5, 0x40, 0x4f, 0x0f, 0xd1, 0x20, 0x46, + 0xfb, 0xf7, 0x36, 0xfd, 0x40, 0xf2, 0xa4, 0x41, 0x00, 0x28, 0x0c, 0xbf, + 0x4f, 0xf4, 0x00, 0x53, 0x00, 0x23, 0x4f, 0xf4, 0x00, 0x52, 0x20, 0x46, + 0xf9, 0xf7, 0x5c, 0xfe, 0x13, 0xe0, 0x4e, 0xf2, 0x01, 0x03, 0x9d, 0x42, + 0x0f, 0xd1, 0x20, 0x46, 0xfb, 0xf7, 0x63, 0xfc, 0x01, 0x46, 0x20, 0x46, + 0xff, 0xf7, 0x86, 0xf8, 0x20, 0x46, 0x40, 0xf2, 0xa9, 0x41, 0xf9, 0xf7, + 0x5a, 0xfc, 0xc0, 0xb2, 0x40, 0x10, 0x86, 0xf8, 0xc1, 0x02, 0x96, 0xf9, + 0x67, 0x35, 0x20, 0x46, 0x01, 0x2b, 0x0d, 0xdd, 0x40, 0xf2, 0xa4, 0x41, + 0xf9, 0xf7, 0x4d, 0xfc, 0x00, 0xf4, 0x80, 0x43, 0x9b, 0x13, 0x20, 0x46, + 0x40, 0xf2, 0x25, 0x51, 0x4f, 0xf4, 0x00, 0x42, 0xdb, 0x03, 0x04, 0xe0, + 0x40, 0xf2, 0x25, 0x51, 0x4f, 0xf4, 0x00, 0x42, 0x00, 0x23, 0xbd, 0xe8, + 0xf0, 0x41, 0xf9, 0xf7, 0x2b, 0xbe, 0xbd, 0xe8, 0xf0, 0x81, 0x38, 0xb5, + 0x00, 0x22, 0xd0, 0xf8, 0xa8, 0x30, 0x80, 0xf8, 0x2b, 0x26, 0x93, 0xf8, + 0xe0, 0x24, 0x04, 0x46, 0x92, 0xb1, 0x90, 0xf9, 0x2a, 0x26, 0xd3, 0xf8, + 0x48, 0x14, 0x8a, 0x42, 0x03, 0xdb, 0xd3, 0xf8, 0x10, 0x35, 0x9a, 0x42, + 0x08, 0xda, 0x20, 0x46, 0x4e, 0xf2, 0x01, 0x01, 0xff, 0xf7, 0x1a, 0xff, + 0x01, 0x23, 0x84, 0xf8, 0x2b, 0x36, 0x38, 0xbd, 0x04, 0xf5, 0x82, 0x53, + 0x1b, 0x79, 0x83, 0xb1, 0x20, 0x46, 0xfb, 0xf7, 0xac, 0xfd, 0x00, 0x21, + 0x05, 0x46, 0x20, 0x46, 0xff, 0xf7, 0x0a, 0xff, 0x20, 0x46, 0xff, 0xf7, + 0xa6, 0xfe, 0x20, 0x46, 0x29, 0x46, 0xbd, 0xe8, 0x38, 0x40, 0xff, 0xf7, + 0x01, 0xbf, 0x38, 0xbd, 0x7f, 0xb5, 0x0d, 0xf1, 0x16, 0x03, 0x00, 0x93, + 0x01, 0x23, 0x01, 0x93, 0x00, 0x23, 0x02, 0x93, 0x57, 0x23, 0x03, 0x93, + 0x69, 0x46, 0x10, 0x23, 0x04, 0x93, 0xfd, 0xf7, 0x89, 0xfe, 0xbd, 0xf8, + 0x16, 0x00, 0x00, 0x0a, 0x07, 0xb0, 0x00, 0xbd, 0x10, 0xb5, 0x00, 0x23, + 0x88, 0xb0, 0x05, 0x93, 0x10, 0x23, 0x07, 0x93, 0x0d, 0xf1, 0x06, 0x03, + 0x03, 0x93, 0x01, 0x23, 0x04, 0x46, 0xad, 0xf8, 0x06, 0x10, 0x04, 0x93, + 0x03, 0xa9, 0x55, 0x23, 0x06, 0x93, 0xfe, 0xf7, 0x54, 0xf9, 0x20, 0x46, + 0xfb, 0xf7, 0x86, 0xfc, 0x10, 0xb1, 0x20, 0x46, 0xfd, 0xf7, 0xdf, 0xff, + 0x08, 0xb0, 0x10, 0xbd, 0x2d, 0xe9, 0xf0, 0x41, 0x04, 0x46, 0xd0, 0xf8, + 0xa8, 0x50, 0x00, 0x26, 0x16, 0xe0, 0xb4, 0xf8, 0xda, 0x20, 0x02, 0xf4, + 0x70, 0x42, 0xb2, 0xf5, 0x80, 0x5f, 0x06, 0xd1, 0x1a, 0x79, 0x22, 0xb1, + 0x89, 0x04, 0x20, 0x46, 0x89, 0x0c, 0x9a, 0x78, 0x05, 0xe0, 0x5a, 0x79, + 0x2a, 0xb1, 0x89, 0x04, 0xda, 0x78, 0x20, 0x46, 0x89, 0x0c, 0xf9, 0xf7, + 0x92, 0xfb, 0x01, 0x36, 0x06, 0x22, 0x72, 0x43, 0xc1, 0x49, 0x8b, 0x18, + 0x89, 0x5a, 0x4f, 0xf6, 0xff, 0x72, 0x91, 0x42, 0xdf, 0xd1, 0x20, 0x46, + 0x73, 0x21, 0x00, 0x22, 0xf9, 0xf7, 0x83, 0xfb, 0x20, 0x46, 0x32, 0x21, + 0x6a, 0x22, 0xf9, 0xf7, 0x7e, 0xfb, 0x19, 0x22, 0x20, 0x46, 0x33, 0x21, + 0xf9, 0xf7, 0x79, 0xfb, 0x95, 0xf8, 0xec, 0x23, 0x1a, 0xb1, 0x20, 0x46, + 0x33, 0x21, 0xf9, 0xf7, 0x72, 0xfb, 0xc2, 0x21, 0x6f, 0x22, 0x20, 0x46, + 0xf9, 0xf7, 0x6d, 0xfb, 0x90, 0x21, 0x10, 0x22, 0x20, 0x46, 0xf9, 0xf7, + 0x68, 0xfb, 0x10, 0x21, 0x00, 0x22, 0x20, 0x46, 0xf9, 0xf7, 0x63, 0xfb, + 0x9b, 0x21, 0x07, 0x22, 0x20, 0x46, 0xf9, 0xf7, 0x5e, 0xfb, 0x1d, 0x21, + 0x02, 0x22, 0x20, 0x46, 0xf9, 0xf7, 0x59, 0xfb, 0x1e, 0x21, 0x06, 0x22, + 0x20, 0x46, 0xf9, 0xf7, 0x54, 0xfb, 0x20, 0x46, 0x40, 0xf2, 0xea, 0x41, + 0x44, 0xf2, 0x88, 0x62, 0xf9, 0xf7, 0x7e, 0xfb, 0xb4, 0xf8, 0xda, 0x30, + 0x03, 0xf4, 0x70, 0x43, 0xb3, 0xf5, 0x00, 0x5f, 0x40, 0xf0, 0x4c, 0x81, + 0xb4, 0xf8, 0xfe, 0x3f, 0x95, 0xf8, 0xe9, 0x83, 0x1a, 0xb2, 0xb8, 0xf1, + 0xa0, 0x0f, 0x0c, 0xbf, 0x4f, 0xf0, 0x04, 0x08, 0x4f, 0xf0, 0x02, 0x08, + 0x01, 0x32, 0x18, 0xbf, 0x98, 0x46, 0x09, 0xe0, 0x04, 0xf5, 0x80, 0x53, + 0xb3, 0xf8, 0x00, 0x80, 0x0f, 0xfa, 0x88, 0xf3, 0x01, 0x33, 0x08, 0xbf, + 0x4f, 0xf0, 0x02, 0x08, 0x4f, 0xfa, 0x88, 0xf8, 0x1f, 0xfa, 0x88, 0xf8, + 0x07, 0x22, 0x43, 0x46, 0x20, 0x46, 0x40, 0xf2, 0xeb, 0x41, 0xf9, 0xf7, + 0x37, 0xfd, 0xb4, 0xf8, 0xda, 0x30, 0x03, 0xf4, 0x70, 0x43, 0xb3, 0xf5, + 0x00, 0x5f, 0x08, 0xd0, 0xb3, 0xf5, 0x80, 0x5f, 0x07, 0xd1, 0x95, 0xf8, + 0x3b, 0x65, 0x00, 0x36, 0x18, 0xbf, 0x01, 0x26, 0x02, 0xe0, 0x00, 0x26, + 0x00, 0xe0, 0x01, 0x26, 0x37, 0x01, 0x33, 0x46, 0x0f, 0x22, 0x20, 0x46, + 0x40, 0xf2, 0xf2, 0x41, 0xbf, 0xb2, 0xf9, 0xf7, 0x1b, 0xfd, 0xf0, 0x22, + 0x20, 0x46, 0x40, 0xf2, 0xf2, 0x41, 0x3b, 0x46, 0xf9, 0xf7, 0x14, 0xfd, + 0x33, 0x46, 0x0f, 0x22, 0x20, 0x46, 0x40, 0xf2, 0xf1, 0x41, 0xf9, 0xf7, + 0x0d, 0xfd, 0xf0, 0x22, 0x20, 0x46, 0x40, 0xf2, 0xf1, 0x41, 0x3b, 0x46, + 0xf9, 0xf7, 0x06, 0xfd, 0x4f, 0xea, 0x08, 0x23, 0x20, 0x46, 0x40, 0xf2, + 0xf2, 0x41, 0x4f, 0xf4, 0xe0, 0x62, 0x03, 0xf4, 0x7f, 0x43, 0xf9, 0xf7, + 0xfb, 0xfc, 0xb4, 0xf8, 0xda, 0x30, 0x20, 0x46, 0x03, 0xf4, 0x70, 0x43, + 0xb3, 0xf5, 0x80, 0x5f, 0x04, 0xf5, 0x98, 0x53, 0x0c, 0xbf, 0x9e, 0x89, + 0x5e, 0x89, 0x40, 0xf2, 0xeb, 0x41, 0x73, 0x02, 0x03, 0xf4, 0x7e, 0x43, + 0x4f, 0xf4, 0x00, 0x72, 0xf9, 0xf7, 0xe6, 0xfc, 0xb4, 0xf8, 0xda, 0x30, + 0x03, 0xf4, 0x70, 0x43, 0xb3, 0xf5, 0x80, 0x5f, 0x07, 0xd0, 0x04, 0xf5, + 0x9a, 0x53, 0x9b, 0x8a, 0x1a, 0xb2, 0x01, 0x32, 0x01, 0xd0, 0x9b, 0x02, + 0x00, 0xe0, 0xb3, 0x02, 0x4f, 0xf4, 0x80, 0x62, 0x03, 0xf4, 0x7c, 0x43, + 0x20, 0x46, 0x40, 0xf2, 0xeb, 0x41, 0xf9, 0xf7, 0xcd, 0xfc, 0x40, 0xf2, + 0xeb, 0x41, 0x20, 0x46, 0xd4, 0xf8, 0xa8, 0x60, 0xf9, 0xf7, 0xd5, 0xfa, + 0x00, 0xf4, 0x80, 0x60, 0x80, 0x12, 0x86, 0xf8, 0x47, 0x05, 0x40, 0xf2, + 0xeb, 0x41, 0x20, 0x46, 0xd4, 0xf8, 0xa8, 0x60, 0xf9, 0xf7, 0xc9, 0xfa, + 0x00, 0xf4, 0x00, 0x70, 0x40, 0x12, 0x86, 0xf8, 0x48, 0x05, 0xd4, 0xf8, + 0xa8, 0x30, 0x20, 0x46, 0x93, 0xf8, 0x47, 0x15, 0x93, 0xf8, 0x48, 0x25, + 0x8a, 0x1a, 0x18, 0xbf, 0x01, 0x22, 0x83, 0xf8, 0x46, 0x25, 0xfb, 0xf7, + 0x75, 0xfb, 0x83, 0x02, 0x03, 0xf4, 0x7c, 0x43, 0x20, 0x46, 0x40, 0xf6, + 0x46, 0x11, 0x4f, 0xf4, 0x80, 0x62, 0xf9, 0xf7, 0x9d, 0xfc, 0x20, 0x46, + 0x3d, 0x49, 0x06, 0x22, 0xf9, 0xf7, 0xaa, 0xfc, 0x04, 0xf5, 0x90, 0x53, + 0x93, 0xf8, 0x3d, 0x30, 0x2b, 0xb1, 0x0f, 0x22, 0x20, 0x46, 0x77, 0x21, + 0x13, 0x46, 0xf9, 0xf7, 0x4b, 0xfc, 0x20, 0x46, 0x00, 0x21, 0xff, 0xf7, + 0xa7, 0xfe, 0x95, 0xf8, 0x9a, 0x35, 0x2b, 0xb9, 0x20, 0x46, 0xfd, 0xf7, + 0xa3, 0xf9, 0x20, 0x46, 0xfd, 0xf7, 0xf6, 0xf9, 0xe3, 0x69, 0x7a, 0x21, + 0x18, 0x69, 0x39, 0xf0, 0x45, 0xd8, 0x95, 0xf8, 0xec, 0x23, 0x40, 0x00, + 0x86, 0xb2, 0x2a, 0xb1, 0x26, 0xb1, 0xe3, 0x69, 0xb1, 0x1c, 0x18, 0x69, + 0x39, 0xf0, 0x58, 0xd8, 0x95, 0xf8, 0xed, 0x23, 0x2a, 0xb1, 0x26, 0xb1, + 0xe3, 0x69, 0x31, 0x46, 0x18, 0x69, 0x39, 0xf0, 0x4f, 0xd8, 0x95, 0xf8, + 0xbb, 0x34, 0xdb, 0xb1, 0x04, 0x22, 0x13, 0x46, 0x20, 0x46, 0x40, 0xf2, + 0x1d, 0x11, 0xf9, 0xf7, 0x1b, 0xfc, 0x20, 0x46, 0x9f, 0x21, 0x3f, 0x22, + 0x95, 0xf8, 0xbc, 0x34, 0xf9, 0xf7, 0x14, 0xfc, 0x20, 0x46, 0x9e, 0x21, + 0x3f, 0x22, 0x95, 0xf8, 0xbd, 0x34, 0xf9, 0xf7, 0x0d, 0xfc, 0x20, 0x46, + 0x77, 0x21, 0x0f, 0x22, 0x95, 0xf8, 0xbe, 0x34, 0xf9, 0xf7, 0x06, 0xfc, + 0xb4, 0xf8, 0xda, 0x30, 0x03, 0xf4, 0x70, 0x43, 0xb3, 0xf5, 0x80, 0x5f, + 0x37, 0xd1, 0x95, 0xf9, 0x58, 0x35, 0x00, 0x2b, 0x33, 0xd0, 0xb4, 0x21, + 0x24, 0x22, 0x20, 0x46, 0xf9, 0xf7, 0x21, 0xfa, 0xb7, 0x21, 0x24, 0x22, + 0x20, 0x46, 0xf9, 0xf7, 0x1c, 0xfa, 0x03, 0x22, 0xb8, 0x21, 0x20, 0x46, + 0xf9, 0xf7, 0x17, 0xfa, 0x95, 0xf9, 0x58, 0x25, 0x02, 0x2a, 0x0b, 0xd1, + 0x20, 0x46, 0xb8, 0x21, 0xf9, 0xf7, 0x0f, 0xfa, 0x20, 0x46, 0xb5, 0x21, + 0x01, 0x22, 0x0d, 0xe0, 0xe0, 0x06, 0x02, 0x00, 0x80, 0xeb, 0x01, 0x00, + 0x03, 0x2a, 0x12, 0xd1, 0x20, 0x46, 0xb8, 0x21, 0x02, 0x22, 0xf9, 0xf7, + 0x00, 0xfa, 0x20, 0x46, 0xb5, 0x21, 0x00, 0x22, 0xbd, 0xe8, 0xf0, 0x41, + 0xf9, 0xf7, 0xf9, 0xb9, 0xb3, 0xf5, 0x80, 0x5f, 0x3f, 0xf4, 0xc0, 0xae, + 0x4f, 0xf0, 0x02, 0x08, 0xc6, 0xe6, 0xbd, 0xe8, 0xf0, 0x81, 0x00, 0xbf, + 0xff, 0xf7, 0x3e, 0xbe, 0x2d, 0xe9, 0xf0, 0x43, 0xd0, 0xf8, 0xa8, 0x60, + 0x8d, 0xb0, 0x96, 0xf9, 0x66, 0x35, 0x04, 0x46, 0x0d, 0x46, 0x0f, 0x46, + 0xab, 0xb1, 0x5f, 0x4b, 0x0b, 0x40, 0x00, 0x2b, 0x03, 0xda, 0x01, 0x3b, + 0x63, 0xf0, 0x01, 0x03, 0x01, 0x33, 0x0c, 0x22, 0x01, 0x2b, 0x20, 0x46, + 0x4f, 0xf4, 0x8f, 0x61, 0x01, 0xd1, 0x08, 0x23, 0x00, 0xe0, 0x00, 0x23, + 0xf9, 0xf7, 0xe6, 0xfb, 0x05, 0xeb, 0xd5, 0x75, 0x6d, 0x10, 0x07, 0x23, + 0x4f, 0xf0, 0x20, 0x09, 0x03, 0x93, 0x05, 0xf5, 0xa0, 0x73, 0x86, 0xf8, + 0x34, 0x70, 0x86, 0xf8, 0xc1, 0x72, 0x04, 0x93, 0x0c, 0xaf, 0x0d, 0xeb, + 0x09, 0x03, 0x47, 0xf8, 0x2c, 0x3d, 0x4f, 0xf0, 0x01, 0x08, 0x39, 0x46, + 0x20, 0x46, 0xcd, 0xf8, 0x14, 0x90, 0xcd, 0xf8, 0x08, 0x80, 0xfd, 0xf7, + 0x6b, 0xfc, 0x05, 0xf1, 0xc0, 0x03, 0x39, 0x46, 0x04, 0x93, 0x20, 0x46, + 0x09, 0xab, 0x01, 0x93, 0xcd, 0xf8, 0x14, 0x90, 0xfd, 0xf7, 0x60, 0xfc, + 0x09, 0x9b, 0x20, 0x46, 0xda, 0xb2, 0xad, 0xf8, 0x18, 0x20, 0x1a, 0x0a, + 0x1b, 0x0c, 0xdb, 0xb2, 0xad, 0xf8, 0x1c, 0x30, 0x08, 0x9b, 0xd2, 0xb2, + 0x1b, 0x0f, 0x03, 0xf0, 0x07, 0x03, 0x06, 0xa9, 0xad, 0xf8, 0x1e, 0x30, + 0xad, 0xf8, 0x1a, 0x20, 0xfb, 0xf7, 0x03, 0xfd, 0x9d, 0xf8, 0x27, 0x10, + 0x20, 0x46, 0x01, 0xf0, 0x7f, 0x01, 0xfb, 0xf7, 0x83, 0xfd, 0x08, 0x99, + 0x20, 0x46, 0x09, 0x0d, 0xc9, 0xb2, 0xfe, 0xf7, 0xa1, 0xf8, 0x20, 0x46, + 0x41, 0x46, 0xfb, 0xf7, 0xd6, 0xfc, 0x08, 0x9a, 0x20, 0x46, 0x91, 0x0a, + 0x89, 0x05, 0x92, 0x05, 0x92, 0x0d, 0x89, 0x0d, 0xfe, 0xf7, 0x78, 0xfd, + 0x05, 0xf5, 0xe0, 0x73, 0x39, 0x46, 0x04, 0x93, 0x20, 0x46, 0x0a, 0xab, + 0x01, 0x93, 0xfd, 0xf7, 0x27, 0xfc, 0x20, 0x46, 0xbd, 0xf8, 0x28, 0x10, + 0xff, 0xf7, 0x9e, 0xfd, 0x05, 0xf5, 0x10, 0x73, 0x39, 0x46, 0x04, 0x93, + 0x20, 0x46, 0x0b, 0xab, 0x01, 0x93, 0xfd, 0xf7, 0x19, 0xfc, 0x0b, 0x9f, + 0x4f, 0xf6, 0xf8, 0x73, 0xff, 0x00, 0x3b, 0x40, 0x20, 0x46, 0x40, 0xf2, + 0xa6, 0x61, 0x41, 0xf6, 0xff, 0x72, 0xf9, 0xf7, 0x6b, 0xfb, 0x96, 0xf9, + 0x67, 0x35, 0x43, 0x45, 0x29, 0xdd, 0x40, 0xf2, 0x25, 0x51, 0x20, 0x46, + 0xf9, 0xf7, 0x71, 0xf9, 0xc0, 0xb2, 0x85, 0x42, 0xd4, 0xbf, 0x00, 0x25, + 0x01, 0x25, 0x20, 0x46, 0x40, 0xf2, 0x25, 0x51, 0x4f, 0xf4, 0x80, 0x72, + 0x2b, 0x02, 0xf9, 0xf7, 0x55, 0xfb, 0x20, 0x46, 0x40, 0xf2, 0x25, 0x51, + 0x4f, 0xf4, 0x00, 0x72, 0x6b, 0x02, 0xf9, 0xf7, 0x4d, 0xfb, 0x20, 0x46, + 0x40, 0xf2, 0x25, 0x51, 0x4f, 0xf4, 0x80, 0x62, 0xab, 0x02, 0xf9, 0xf7, + 0x45, 0xfb, 0x20, 0x46, 0x40, 0xf2, 0x25, 0x51, 0x4f, 0xf4, 0x00, 0x62, + 0xeb, 0x02, 0xf9, 0xf7, 0x3d, 0xfb, 0x0d, 0xb0, 0xbd, 0xe8, 0xf0, 0x83, + 0x01, 0x00, 0x00, 0x80, 0x38, 0xb5, 0x0c, 0x46, 0x00, 0x21, 0x05, 0x46, + 0xff, 0xf7, 0x3c, 0xfc, 0x28, 0x46, 0x21, 0x46, 0xbd, 0xe8, 0x38, 0x40, + 0xff, 0xf7, 0x28, 0xbf, 0x2d, 0xe9, 0xf0, 0x4f, 0x8b, 0xb0, 0x05, 0x92, + 0x04, 0x46, 0x04, 0x91, 0xfb, 0xf7, 0xcb, 0xfa, 0x40, 0xf2, 0x3b, 0x41, + 0x02, 0x90, 0x20, 0x46, 0xf9, 0xf7, 0x2d, 0xf9, 0xc0, 0xf3, 0x80, 0x10, + 0x06, 0xa9, 0x03, 0x90, 0x20, 0x46, 0xfb, 0xf7, 0xc6, 0xfa, 0x4f, 0xf4, + 0x7a, 0x70, 0xee, 0xf3, 0x0f, 0xf7, 0x4f, 0xf4, 0x7a, 0x70, 0xee, 0xf3, + 0x0b, 0xf7, 0x04, 0xf5, 0x98, 0x53, 0x1a, 0x69, 0x00, 0x23, 0x98, 0x46, + 0xd1, 0x18, 0x91, 0xf8, 0x20, 0x10, 0x19, 0xb1, 0x08, 0xf1, 0x01, 0x08, + 0x1f, 0xfa, 0x88, 0xf8, 0x01, 0x33, 0x04, 0x2b, 0xf4, 0xd1, 0x14, 0x27, + 0x00, 0x26, 0xd0, 0xe0, 0xd4, 0xf8, 0xb0, 0x30, 0xd3, 0xf8, 0x20, 0x31, + 0x03, 0xf0, 0x01, 0x03, 0x83, 0xf0, 0x01, 0x09, 0x1b, 0xb1, 0xe3, 0x69, + 0x18, 0x69, 0x38, 0xf0, 0x09, 0xdf, 0x20, 0x46, 0xfa, 0xf7, 0xbd, 0xfe, + 0x04, 0xf5, 0x98, 0x53, 0x1b, 0x69, 0x20, 0x46, 0x03, 0xeb, 0x45, 0x03, + 0x99, 0x8c, 0xff, 0xf7, 0xab, 0xff, 0x20, 0x46, 0x01, 0x99, 0xfd, 0xf7, + 0xe5, 0xff, 0xb9, 0xf1, 0x00, 0x0f, 0x03, 0xd1, 0xe3, 0x69, 0x18, 0x69, + 0x38, 0xf0, 0xde, 0xde, 0x4f, 0xf4, 0x00, 0x42, 0x40, 0xf2, 0xa4, 0x41, + 0x13, 0x46, 0x20, 0x46, 0xf9, 0xf7, 0xd0, 0xfa, 0x41, 0xf2, 0x88, 0x30, + 0xee, 0xf3, 0xc8, 0xf6, 0x41, 0xf2, 0x88, 0x30, 0xee, 0xf3, 0xc4, 0xf6, + 0x41, 0xf2, 0x88, 0x30, 0xee, 0xf3, 0xc0, 0xf6, 0x20, 0x46, 0x40, 0xf2, + 0xa6, 0x41, 0xf9, 0xf7, 0xce, 0xf8, 0x4f, 0xea, 0xc0, 0x59, 0x4f, 0xea, + 0xd9, 0x59, 0xb9, 0xf1, 0xff, 0x0f, 0x86, 0xbf, 0xa9, 0xf5, 0x80, 0x79, + 0x1f, 0xfa, 0x89, 0xf9, 0x09, 0xf5, 0x80, 0x79, 0x4f, 0xf0, 0x10, 0x0b, + 0x4f, 0xf0, 0x00, 0x0a, 0x20, 0x46, 0x40, 0xf2, 0x3e, 0x61, 0xf9, 0xf7, + 0xb8, 0xf8, 0x0b, 0xf1, 0xff, 0x3b, 0xc0, 0x05, 0xc0, 0x0d, 0x1f, 0xfa, + 0x8b, 0xfb, 0x82, 0x44, 0xbb, 0xf1, 0x00, 0x0f, 0xf0, 0xd1, 0x4f, 0xea, + 0x1a, 0x1a, 0x1f, 0xfa, 0x8a, 0xfa, 0xba, 0xf1, 0xff, 0x0f, 0x8c, 0xbf, + 0xaa, 0xf5, 0x80, 0x7a, 0x0a, 0xf5, 0x80, 0x7a, 0x38, 0x46, 0x00, 0x21, + 0x08, 0xaa, 0x09, 0xab, 0xf0, 0xf3, 0xb8, 0xf4, 0x04, 0xf5, 0x98, 0x53, + 0x1b, 0x69, 0x00, 0x21, 0x5b, 0x19, 0x93, 0xf8, 0x20, 0x00, 0x0d, 0xf1, + 0x22, 0x02, 0x0d, 0xf1, 0x26, 0x03, 0xf0, 0xf3, 0xab, 0xf4, 0xbd, 0xf9, + 0x24, 0x10, 0xbd, 0xf9, 0x26, 0x30, 0x1f, 0xfa, 0x8a, 0xfa, 0x99, 0x42, + 0x09, 0xda, 0xbd, 0xf9, 0x22, 0x00, 0x59, 0x1a, 0xf0, 0xf3, 0x50, 0xf5, + 0xbd, 0xf8, 0x24, 0xb0, 0xad, 0xf8, 0x22, 0x00, 0x08, 0xe0, 0xbd, 0xf9, + 0x20, 0x00, 0xc9, 0x1a, 0xf0, 0xf3, 0x46, 0xf5, 0xbd, 0xf8, 0x26, 0xb0, + 0xad, 0xf8, 0x20, 0x00, 0xbd, 0xf9, 0x20, 0x00, 0xbd, 0xf9, 0x22, 0x10, + 0xf0, 0xf3, 0x46, 0xf5, 0x0f, 0xfa, 0x8b, 0xf3, 0x03, 0x2b, 0xcc, 0xbf, + 0xab, 0xf1, 0x04, 0x0b, 0xcb, 0xf1, 0x04, 0x0b, 0x0f, 0xfa, 0x8b, 0xfb, + 0x0b, 0xf1, 0xff, 0x33, 0x01, 0x22, 0x12, 0xfa, 0x03, 0xf3, 0x00, 0xeb, + 0x80, 0x00, 0xc3, 0x18, 0x43, 0xfa, 0x0b, 0xfb, 0x0b, 0xf1, 0x0c, 0x03, + 0x18, 0x2b, 0x14, 0xd8, 0x04, 0xf5, 0x98, 0x53, 0x1b, 0x69, 0x2a, 0x1d, + 0x53, 0xf8, 0x22, 0x00, 0x04, 0x9b, 0x83, 0x44, 0x4f, 0xea, 0x99, 0x09, + 0x03, 0xf8, 0x06, 0xb0, 0xc9, 0xf1, 0x7f, 0x09, 0x05, 0x9b, 0x09, 0xeb, + 0x9a, 0x0a, 0x03, 0xf8, 0x06, 0xa0, 0x01, 0x36, 0xb6, 0xb2, 0x01, 0x35, + 0xab, 0xb2, 0x43, 0x45, 0xff, 0xf4, 0x32, 0xaf, 0x01, 0x37, 0x65, 0x2f, + 0x03, 0xd0, 0xfb, 0xb2, 0x01, 0x93, 0x00, 0x25, 0xf4, 0xe7, 0x20, 0x46, + 0x03, 0x99, 0xfb, 0xf7, 0x62, 0xfb, 0x20, 0x46, 0x06, 0xa9, 0xfb, 0xf7, + 0x7a, 0xfb, 0x20, 0x46, 0x02, 0x99, 0xff, 0xf7, 0x25, 0xfb, 0x30, 0x46, + 0x0b, 0xb0, 0xbd, 0xe8, 0xf0, 0x8f, 0x00, 0x00, 0x2d, 0xe9, 0xf0, 0x4f, + 0x87, 0xb0, 0x04, 0x46, 0xd0, 0xf8, 0xa8, 0x70, 0xfb, 0xf7, 0xb5, 0xf9, + 0x82, 0x46, 0x20, 0x46, 0xfe, 0xf7, 0x93, 0xfe, 0x4f, 0xf4, 0x89, 0x71, + 0x5f, 0xfa, 0x80, 0xf9, 0x20, 0x46, 0xf8, 0xf7, 0xd5, 0xff, 0x07, 0x21, + 0x83, 0x46, 0x20, 0x46, 0xf8, 0xf7, 0xd0, 0xff, 0x00, 0xf0, 0x01, 0x00, + 0x00, 0x90, 0xff, 0x21, 0x20, 0x46, 0xf8, 0xf7, 0xc9, 0xff, 0x00, 0xf0, + 0x10, 0x00, 0x80, 0xb2, 0x01, 0x90, 0x40, 0xf2, 0x1f, 0x11, 0x20, 0x46, + 0xf8, 0xf7, 0xc0, 0xff, 0x00, 0xf0, 0x04, 0x00, 0x80, 0xb2, 0x02, 0x90, + 0x40, 0xf2, 0xab, 0x41, 0x20, 0x46, 0xf8, 0xf7, 0xf4, 0xff, 0xd4, 0xf8, + 0xb0, 0x30, 0xd3, 0xf8, 0x20, 0x31, 0x03, 0xf0, 0x01, 0x03, 0x83, 0xf0, + 0x01, 0x02, 0x03, 0x92, 0x1b, 0xb1, 0xe3, 0x69, 0x18, 0x69, 0x38, 0xf0, + 0xf1, 0xdd, 0x00, 0x21, 0x20, 0x46, 0xff, 0xf7, 0xdd, 0xfa, 0x20, 0x46, + 0xfa, 0xf7, 0xa1, 0xfd, 0x40, 0xf2, 0x3b, 0x41, 0x20, 0x46, 0xf8, 0xf7, + 0xda, 0xff, 0x04, 0xa9, 0xc0, 0xf3, 0x80, 0x18, 0x20, 0x46, 0xfb, 0xf7, + 0x74, 0xf9, 0x20, 0x46, 0x01, 0x21, 0xfb, 0xf7, 0x00, 0xfb, 0x20, 0x46, + 0x7f, 0x21, 0xff, 0xf7, 0x85, 0xfe, 0x01, 0x22, 0x13, 0x46, 0x20, 0x46, + 0x07, 0x21, 0xf9, 0xf7, 0x75, 0xf9, 0x10, 0x22, 0x13, 0x46, 0x20, 0x46, + 0xff, 0x21, 0xf9, 0xf7, 0x6f, 0xf9, 0x04, 0x22, 0x13, 0x46, 0x40, 0xf2, + 0x1f, 0x11, 0x20, 0x46, 0xf9, 0xf7, 0x68, 0xf9, 0x20, 0x46, 0xfe, 0xf7, + 0x7b, 0xfe, 0x06, 0x22, 0x47, 0x49, 0x20, 0x46, 0xf9, 0xf7, 0xb4, 0xf9, + 0x20, 0x46, 0xff, 0xf7, 0xa9, 0xfb, 0x00, 0x21, 0x06, 0x46, 0x20, 0x46, + 0xfd, 0xf7, 0xa0, 0xfe, 0x00, 0x22, 0x20, 0x46, 0x01, 0x21, 0xf9, 0xf7, + 0x29, 0xfb, 0x40, 0xf2, 0xab, 0x41, 0x20, 0x46, 0xf8, 0xf7, 0x9f, 0xff, + 0x40, 0xf2, 0x3e, 0x61, 0x20, 0x46, 0xf8, 0xf7, 0x9a, 0xff, 0xc5, 0x05, + 0xed, 0x0d, 0x2b, 0x46, 0x20, 0x46, 0x40, 0xf2, 0xa6, 0x41, 0x40, 0xf2, + 0xff, 0x12, 0xf9, 0xf7, 0x81, 0xf9, 0x97, 0xf8, 0xe8, 0x33, 0x0b, 0xb3, + 0x20, 0x46, 0x34, 0x49, 0x09, 0x22, 0xf9, 0xf7, 0x8b, 0xf9, 0x00, 0x22, + 0x20, 0x46, 0x01, 0x21, 0xf9, 0xf7, 0x08, 0xfb, 0x40, 0xf2, 0xab, 0x41, + 0x20, 0x46, 0xf8, 0xf7, 0x7e, 0xff, 0x40, 0xf2, 0x3e, 0x61, 0x20, 0x46, + 0xf8, 0xf7, 0x79, 0xff, 0xc3, 0x05, 0x40, 0xf2, 0x9a, 0x41, 0x20, 0x46, + 0x40, 0xf2, 0xff, 0x12, 0xdb, 0x0d, 0xf9, 0xf7, 0x61, 0xf9, 0x20, 0x46, + 0x26, 0x49, 0x09, 0x22, 0xf9, 0xf7, 0x6e, 0xf9, 0x20, 0x46, 0x40, 0xf2, + 0xa6, 0x41, 0x40, 0xf2, 0xff, 0x12, 0x2b, 0x46, 0xf9, 0xf7, 0x54, 0xf9, + 0x00, 0x23, 0x4f, 0xf4, 0x80, 0x52, 0x20, 0x46, 0x40, 0xf2, 0x4c, 0x41, + 0xf9, 0xf7, 0x4c, 0xf9, 0x20, 0x46, 0x31, 0x46, 0xfd, 0xf7, 0x4e, 0xfe, + 0x20, 0x46, 0x41, 0x46, 0xfb, 0xf7, 0x83, 0xfa, 0x20, 0x46, 0x04, 0xa9, + 0xfb, 0xf7, 0x9b, 0xfa, 0x20, 0x46, 0x49, 0x46, 0xff, 0xf7, 0x04, 0xfe, + 0x20, 0x46, 0x51, 0x46, 0xff, 0xf7, 0x42, 0xfa, 0x20, 0x46, 0x4f, 0xf4, + 0x89, 0x71, 0x5a, 0x46, 0xf8, 0xf7, 0x1b, 0xff, 0x20, 0x46, 0x07, 0x21, + 0x01, 0x22, 0x00, 0x9b, 0xf9, 0xf7, 0xea, 0xf8, 0x20, 0x46, 0xff, 0x21, + 0x10, 0x22, 0x01, 0x9b, 0xf9, 0xf7, 0xe4, 0xf8, 0x02, 0x9b, 0x20, 0x46, + 0x40, 0xf2, 0x1f, 0x11, 0x04, 0x22, 0xf9, 0xf7, 0xdd, 0xf8, 0x03, 0x9b, + 0x1b, 0xb9, 0xe3, 0x69, 0x18, 0x69, 0x38, 0xf0, 0x1f, 0xdd, 0x07, 0xb0, + 0xbd, 0xe8, 0xf0, 0x8f, 0xae, 0xe8, 0x01, 0x00, 0xba, 0xe8, 0x01, 0x00, + 0xcc, 0xe8, 0x01, 0x00, 0x2d, 0xe9, 0xf0, 0x4f, 0x04, 0x46, 0x95, 0xb0, + 0xd0, 0xf8, 0xa8, 0x50, 0x40, 0xf2, 0xe7, 0x30, 0x0e, 0x46, 0xee, 0xf3, + 0x01, 0xf5, 0x07, 0x21, 0x20, 0x46, 0xf8, 0xf7, 0xd3, 0xfe, 0xff, 0x21, + 0x5f, 0xfa, 0x80, 0xf8, 0x20, 0x46, 0xf8, 0xf7, 0xcd, 0xfe, 0x40, 0xf2, + 0x1f, 0x11, 0x5f, 0xfa, 0x80, 0xf9, 0x20, 0x46, 0xf8, 0xf7, 0xc6, 0xfe, + 0x05, 0x21, 0x5f, 0xfa, 0x80, 0xfa, 0x20, 0x46, 0xf8, 0xf7, 0xc0, 0xfe, + 0xc0, 0xb2, 0x00, 0x90, 0x25, 0x21, 0x20, 0x46, 0xf8, 0xf7, 0xba, 0xfe, + 0xc0, 0xb2, 0x01, 0x90, 0x4f, 0xf4, 0x89, 0x71, 0x20, 0x46, 0xf8, 0xf7, + 0xb3, 0xfe, 0xc0, 0xb2, 0x02, 0x90, 0x4f, 0xf0, 0x00, 0x0b, 0x88, 0x4f, + 0x20, 0x46, 0x37, 0xf8, 0x0b, 0x10, 0xf8, 0xf7, 0xe6, 0xfe, 0x07, 0xab, + 0x23, 0xf8, 0x0b, 0x00, 0x0b, 0xf1, 0x02, 0x0b, 0xbb, 0xf1, 0x1c, 0x0f, + 0xf1, 0xd1, 0xd4, 0xf8, 0xb0, 0x30, 0xd3, 0xf8, 0x20, 0x31, 0x03, 0xf0, + 0x01, 0x03, 0x83, 0xf0, 0x01, 0x02, 0x03, 0x92, 0x1b, 0xb1, 0xe3, 0x69, + 0x18, 0x69, 0x38, 0xf0, 0xdb, 0xdc, 0x40, 0xf2, 0xa4, 0x41, 0x20, 0x46, + 0xf8, 0xf7, 0x8e, 0xfe, 0x00, 0x21, 0x04, 0x90, 0x20, 0x46, 0xff, 0xf7, + 0xc1, 0xf9, 0x95, 0xf8, 0xc1, 0x52, 0x7f, 0x21, 0x20, 0x46, 0x05, 0x95, + 0xff, 0xf7, 0x78, 0xfd, 0x01, 0x22, 0x07, 0x21, 0x13, 0x46, 0x20, 0x46, + 0xf9, 0xf7, 0x68, 0xf8, 0x10, 0x22, 0xff, 0x21, 0x13, 0x46, 0x20, 0x46, + 0xf9, 0xf7, 0x62, 0xf8, 0x04, 0x22, 0x13, 0x46, 0x20, 0x46, 0x40, 0xf2, + 0x1f, 0x11, 0xf9, 0xf7, 0x5b, 0xf8, 0x36, 0x22, 0x20, 0x46, 0x68, 0x49, + 0xf9, 0xf7, 0xaa, 0xf8, 0x20, 0x46, 0xfb, 0xf7, 0x53, 0xf9, 0x40, 0x08, + 0x80, 0xb2, 0xe6, 0x28, 0x06, 0xdc, 0x20, 0x46, 0xfb, 0xf7, 0x4c, 0xf9, + 0x43, 0x08, 0x19, 0x33, 0x9b, 0xb2, 0x00, 0xe0, 0xff, 0x23, 0xff, 0x22, + 0x20, 0x46, 0x40, 0xf2, 0xa5, 0x41, 0xf9, 0xf7, 0x83, 0xf8, 0x25, 0x21, + 0x0c, 0x22, 0x20, 0x46, 0xf8, 0xf7, 0x67, 0xfe, 0x08, 0x22, 0x13, 0x46, + 0x05, 0x21, 0x20, 0x46, 0xf9, 0xf7, 0x36, 0xf8, 0x09, 0x22, 0x57, 0x49, + 0x20, 0x46, 0xf9, 0xf7, 0x85, 0xf8, 0x20, 0x46, 0xfb, 0xf7, 0x2e, 0xf9, + 0x10, 0x23, 0x12, 0x93, 0x01, 0x23, 0xad, 0xf8, 0x4e, 0x00, 0x08, 0x25, + 0x0f, 0x93, 0x20, 0x46, 0x0d, 0xf1, 0x4e, 0x03, 0x4f, 0xf0, 0x06, 0x0b, + 0x0e, 0xa9, 0x10, 0x95, 0x0e, 0x93, 0xcd, 0xf8, 0x44, 0xb0, 0xfd, 0xf7, + 0xe2, 0xfb, 0x01, 0x2e, 0x20, 0x46, 0x0b, 0xd1, 0x49, 0x49, 0x5a, 0x46, + 0xf9, 0xf7, 0x68, 0xf8, 0x20, 0x22, 0x20, 0x46, 0x82, 0x21, 0x13, 0x46, + 0xf9, 0xf7, 0x0e, 0xf8, 0x04, 0x26, 0x05, 0xe0, 0x44, 0x49, 0x5a, 0x46, + 0xf9, 0xf7, 0x5c, 0xf8, 0x0a, 0x26, 0x07, 0x25, 0x01, 0x22, 0x46, 0xf4, + 0x00, 0x76, 0x13, 0x46, 0x20, 0x46, 0x4f, 0xf4, 0x9b, 0x61, 0x46, 0xea, + 0x05, 0x15, 0xf9, 0xf7, 0x3d, 0xf8, 0xab, 0x00, 0x20, 0x46, 0x4f, 0xf4, + 0x9b, 0x61, 0x40, 0xf6, 0xfc, 0x72, 0xf9, 0xf7, 0x35, 0xf8, 0x02, 0x22, + 0x13, 0x46, 0x20, 0x46, 0x4f, 0xf4, 0x9b, 0x61, 0xf9, 0xf7, 0x2e, 0xf8, + 0x20, 0x46, 0x4f, 0xf4, 0x9b, 0x61, 0x4f, 0xf4, 0xe0, 0x42, 0x4f, 0xf4, + 0x00, 0x53, 0xf9, 0xf7, 0x25, 0xf8, 0x20, 0x22, 0x13, 0x46, 0x20, 0x46, + 0x4f, 0xf4, 0x9a, 0x61, 0xf9, 0xf7, 0x1e, 0xf8, 0x01, 0x21, 0x00, 0x22, + 0x20, 0x46, 0xf9, 0xf7, 0xad, 0xf9, 0x20, 0x46, 0x40, 0xf2, 0x76, 0x41, + 0xf8, 0xf7, 0x23, 0xfe, 0x03, 0x04, 0x02, 0xd4, 0x0a, 0x20, 0xee, 0xf3, + 0x0b, 0xf4, 0x20, 0x46, 0x07, 0x21, 0x42, 0x46, 0xf8, 0xf7, 0xf3, 0xfd, + 0x20, 0x46, 0xff, 0x21, 0x4a, 0x46, 0xf8, 0xf7, 0xee, 0xfd, 0x20, 0x46, + 0x40, 0xf2, 0x1f, 0x11, 0x52, 0x46, 0xf8, 0xf7, 0xe8, 0xfd, 0x20, 0x46, + 0x05, 0x21, 0x00, 0x9a, 0xf8, 0xf7, 0xe3, 0xfd, 0x20, 0x46, 0x25, 0x21, + 0x01, 0x9a, 0xf8, 0xf7, 0xde, 0xfd, 0x20, 0x46, 0x4f, 0xf4, 0x89, 0x71, + 0x02, 0x9a, 0xf8, 0xf7, 0xd8, 0xfd, 0x00, 0x25, 0x07, 0xab, 0x79, 0x5b, + 0x5a, 0x5b, 0x20, 0x46, 0x02, 0x35, 0xf8, 0xf7, 0x01, 0xfe, 0x1c, 0x2d, + 0xf6, 0xd1, 0x05, 0x9b, 0x20, 0x46, 0x59, 0xb2, 0xff, 0xf7, 0xa8, 0xfc, + 0x04, 0x9a, 0x20, 0x46, 0x40, 0xf2, 0xa4, 0x41, 0xf8, 0xf7, 0xc3, 0xfd, + 0x03, 0x9a, 0x1a, 0xb9, 0xe3, 0x69, 0x18, 0x69, 0x38, 0xf0, 0xda, 0xdb, + 0x40, 0xf2, 0xe7, 0x30, 0xee, 0xf3, 0xcc, 0xf3, 0x15, 0xb0, 0xbd, 0xe8, + 0xf0, 0x8f, 0x00, 0xbf, 0x24, 0xeb, 0x01, 0x00, 0x80, 0xec, 0x01, 0x00, + 0xec, 0xec, 0x01, 0x00, 0xfe, 0xec, 0x01, 0x00, 0x0a, 0xed, 0x01, 0x00, + 0x73, 0xb5, 0xd0, 0xf8, 0xb0, 0x30, 0x04, 0x46, 0xd3, 0xf8, 0x20, 0x31, + 0xd0, 0xf8, 0xa8, 0x50, 0x03, 0xf0, 0x01, 0x03, 0x83, 0xf0, 0x01, 0x06, + 0x1b, 0xb1, 0xc3, 0x69, 0x18, 0x69, 0x38, 0xf0, 0xcb, 0xdb, 0x04, 0xf5, + 0x82, 0x53, 0x1b, 0x79, 0x23, 0xbb, 0xb4, 0xf8, 0xda, 0x20, 0x02, 0xf4, + 0x70, 0x42, 0xb2, 0xf5, 0x00, 0x5f, 0x06, 0xd1, 0x04, 0x22, 0xad, 0xf8, + 0x00, 0x20, 0x0c, 0x22, 0xad, 0xf8, 0x02, 0x20, 0x05, 0xe0, 0xff, 0x22, + 0xad, 0xf8, 0x00, 0x20, 0xad, 0xf8, 0x02, 0x20, 0xf0, 0x22, 0x20, 0x46, + 0x69, 0x46, 0xad, 0xf8, 0x04, 0x20, 0xad, 0xf8, 0x06, 0x30, 0xfb, 0xf7, + 0xec, 0xf8, 0x20, 0x46, 0x96, 0x21, 0xfd, 0xf7, 0x93, 0xfc, 0x20, 0x46, + 0x01, 0x21, 0xff, 0xf7, 0x79, 0xfe, 0x5b, 0xe0, 0x20, 0x46, 0xff, 0xf7, + 0x6f, 0xfd, 0x20, 0x46, 0xfe, 0xf7, 0x2e, 0xfc, 0x20, 0x46, 0x00, 0x21, + 0xfe, 0xf7, 0x69, 0xfe, 0x20, 0x46, 0x38, 0x49, 0x0f, 0x22, 0xf8, 0xf7, + 0x8b, 0xff, 0x95, 0xf8, 0xe8, 0x33, 0xdb, 0xb1, 0x20, 0x46, 0x01, 0x21, + 0xfe, 0xf7, 0x5d, 0xfe, 0x95, 0xf9, 0x24, 0x35, 0x20, 0x46, 0x40, 0xf2, + 0xd1, 0x41, 0xff, 0x22, 0x9b, 0xb2, 0xf8, 0xf7, 0x69, 0xff, 0x95, 0xf8, + 0x25, 0x35, 0x20, 0x46, 0x40, 0xf2, 0xd1, 0x41, 0x4f, 0xf4, 0x7f, 0x42, + 0x1b, 0x02, 0xf8, 0xf7, 0x5f, 0xff, 0x20, 0x46, 0x29, 0x49, 0x0c, 0x22, + 0xf8, 0xf7, 0x6c, 0xff, 0x05, 0x22, 0x28, 0x49, 0x20, 0x46, 0xf8, 0xf7, + 0x67, 0xff, 0xd4, 0xf8, 0xa8, 0x30, 0xd3, 0xf8, 0x48, 0x24, 0xd3, 0xf8, + 0x44, 0x34, 0x3c, 0x2b, 0xb4, 0xbf, 0x19, 0x46, 0x3c, 0x21, 0x8a, 0x42, + 0x01, 0xdd, 0x93, 0xb2, 0x03, 0xe0, 0x3b, 0x2b, 0xd4, 0xbf, 0x9b, 0xb2, + 0x3c, 0x23, 0x20, 0x46, 0x40, 0xf2, 0xa7, 0x41, 0xff, 0x22, 0xf8, 0xf7, + 0x3d, 0xff, 0xb4, 0xf8, 0xda, 0x30, 0x20, 0x46, 0x03, 0xf4, 0x70, 0x43, + 0xb3, 0xf5, 0x00, 0x5f, 0x0c, 0xbf, 0x95, 0xf8, 0x54, 0x34, 0x95, 0xf8, + 0x55, 0x34, 0x4f, 0xf4, 0x40, 0x41, 0x2b, 0x86, 0xff, 0xf7, 0x36, 0xf8, + 0x40, 0xf2, 0x76, 0x41, 0x20, 0x46, 0xf8, 0xf7, 0x36, 0xfd, 0xc0, 0x05, + 0xc0, 0x0d, 0xa5, 0xf8, 0x6c, 0x05, 0x40, 0xf2, 0x77, 0x41, 0x20, 0x46, + 0xf8, 0xf7, 0x2d, 0xfd, 0xd5, 0xf8, 0x34, 0x34, 0xc0, 0x05, 0xc0, 0x0d, + 0xa5, 0xf8, 0x6e, 0x05, 0x1b, 0xb1, 0x20, 0x46, 0x01, 0x21, 0xfc, 0xf7, + 0xac, 0xf9, 0x1e, 0xb9, 0xe3, 0x69, 0x18, 0x69, 0x38, 0xf0, 0x14, 0xdb, + 0x7c, 0xbd, 0x00, 0xbf, 0x40, 0xeb, 0x01, 0x00, 0x5e, 0xeb, 0x01, 0x00, + 0x76, 0xeb, 0x01, 0x00, 0xf8, 0xb5, 0xd0, 0xf8, 0xa8, 0x40, 0x01, 0x23, + 0x84, 0xf8, 0x61, 0x30, 0x00, 0x23, 0x84, 0xf8, 0xc0, 0x33, 0xb0, 0xf8, + 0xda, 0x30, 0x05, 0x46, 0x03, 0xf4, 0x70, 0x43, 0xb3, 0xf5, 0x00, 0x5f, + 0x02, 0xd1, 0x94, 0xf8, 0xc1, 0x33, 0x04, 0xe0, 0xb3, 0xf5, 0x80, 0x5f, + 0x06, 0xd1, 0x94, 0xf8, 0xc2, 0x33, 0x02, 0x2b, 0x02, 0xd1, 0x01, 0x23, + 0x84, 0xf8, 0xc0, 0x33, 0xb5, 0xf8, 0xda, 0x30, 0x28, 0x46, 0x03, 0xf4, + 0x70, 0x43, 0xb3, 0xf5, 0x80, 0x5f, 0x0c, 0xbf, 0x94, 0xf8, 0xeb, 0x33, + 0x94, 0xf8, 0xea, 0x33, 0x00, 0x26, 0x84, 0xf8, 0xe9, 0x33, 0x63, 0x8b, + 0x01, 0x27, 0xa4, 0xf8, 0xbe, 0x32, 0x04, 0x22, 0x22, 0x49, 0x26, 0x70, + 0x84, 0xf8, 0xc2, 0x62, 0x84, 0xf8, 0xc3, 0x62, 0x84, 0xf8, 0xc4, 0x62, + 0x84, 0xf8, 0x67, 0x75, 0xf8, 0xf7, 0xda, 0xfe, 0x28, 0x46, 0x39, 0x46, + 0xfb, 0xf7, 0xc3, 0xfa, 0x04, 0x22, 0x1b, 0x49, 0x28, 0x46, 0xf8, 0xf7, + 0xd1, 0xfe, 0x28, 0x46, 0xfd, 0xf7, 0x32, 0xff, 0x28, 0x46, 0xff, 0xf7, + 0xb3, 0xfa, 0x28, 0x46, 0xff, 0xf7, 0xf4, 0xfe, 0x84, 0xf8, 0x2c, 0x60, + 0xb5, 0xf8, 0xda, 0x10, 0x28, 0x46, 0xfa, 0xf7, 0x31, 0xf8, 0x28, 0x46, + 0xfd, 0xf7, 0x47, 0xf8, 0x4f, 0xf4, 0x80, 0x42, 0x13, 0x46, 0x4f, 0xf4, + 0x89, 0x61, 0x28, 0x46, 0xf8, 0xf7, 0xa4, 0xfe, 0x64, 0x20, 0xee, 0xf3, + 0x9d, 0xf2, 0x33, 0x46, 0x28, 0x46, 0x4f, 0xf4, 0x89, 0x61, 0x4f, 0xf4, + 0x80, 0x42, 0xf8, 0xf7, 0x99, 0xfe, 0x28, 0x46, 0x4f, 0xf4, 0x40, 0x41, + 0xfe, 0xf7, 0x9e, 0xff, 0x41, 0xf2, 0x88, 0x33, 0xe3, 0x86, 0x84, 0xf8, + 0x9a, 0x75, 0xf8, 0xbd, 0x6c, 0xe8, 0x01, 0x00, 0x9a, 0xe8, 0x01, 0x00, + 0x2d, 0xe9, 0xf0, 0x4f, 0xd0, 0xf8, 0xa8, 0x60, 0x15, 0x46, 0x03, 0xf1, + 0x34, 0x02, 0x06, 0xeb, 0x42, 0x02, 0xb2, 0xf8, 0x04, 0x80, 0x06, 0xeb, + 0x43, 0x03, 0xb2, 0xf8, 0x0a, 0x90, 0xb3, 0xf8, 0x78, 0x70, 0x89, 0xb0, + 0x04, 0x46, 0x4a, 0x46, 0x8a, 0x46, 0x41, 0x46, 0xfe, 0xf7, 0x5c, 0xf8, + 0x20, 0x46, 0x39, 0x46, 0xff, 0xf7, 0x8c, 0xf8, 0x07, 0x23, 0x04, 0x93, + 0x20, 0x23, 0x06, 0x93, 0x4f, 0xea, 0x88, 0x58, 0x01, 0x23, 0x03, 0x93, + 0x4f, 0xea, 0x98, 0x58, 0x07, 0xab, 0x02, 0x93, 0x4f, 0xea, 0x88, 0x28, + 0x4f, 0xf0, 0x00, 0x0b, 0x2f, 0xe0, 0x13, 0xb1, 0x1a, 0xf0, 0x01, 0x0f, + 0x29, 0xd1, 0x5b, 0xb2, 0x01, 0x33, 0xba, 0xfb, 0xf3, 0xf3, 0x03, 0xf5, + 0xa0, 0x73, 0x20, 0x46, 0x02, 0xa9, 0x05, 0x93, 0xfc, 0xf7, 0xf0, 0xfe, + 0x07, 0x9a, 0x4f, 0xea, 0x89, 0x53, 0x4f, 0xea, 0x12, 0x5b, 0x9b, 0x0d, + 0x4f, 0xea, 0x0b, 0x5b, 0x43, 0xea, 0x0b, 0x0b, 0x20, 0x46, 0x02, 0xa9, + 0x4b, 0xea, 0x08, 0x0b, 0xcd, 0xf8, 0x1c, 0xb0, 0xfd, 0xf7, 0xc1, 0xf9, + 0x96, 0xf9, 0x66, 0x35, 0x20, 0x46, 0x01, 0x33, 0xba, 0xfb, 0xf3, 0xf3, + 0x03, 0xf5, 0xe0, 0x73, 0x02, 0xa9, 0x05, 0x93, 0x07, 0x97, 0xfd, 0xf7, + 0xb4, 0xf9, 0x0a, 0xf1, 0x01, 0x0a, 0xaa, 0x45, 0x96, 0xf8, 0x66, 0x35, + 0xcb, 0xd9, 0xb3, 0xb1, 0x7f, 0x2d, 0x14, 0xd1, 0x4f, 0xf4, 0xc0, 0x75, + 0x20, 0x46, 0x02, 0xa9, 0x05, 0x95, 0xcd, 0xf8, 0x1c, 0xb0, 0xfd, 0xf7, + 0xa2, 0xf9, 0x05, 0xf1, 0x80, 0x03, 0x20, 0x46, 0x02, 0xa9, 0x01, 0x35, + 0x07, 0x97, 0x05, 0x93, 0xfd, 0xf7, 0x99, 0xf9, 0xb5, 0xf5, 0xe0, 0x7f, + 0xec, 0xd1, 0x96, 0xf8, 0x81, 0x00, 0x96, 0xf8, 0x7e, 0x10, 0x96, 0xf8, + 0x7f, 0x20, 0x96, 0xf8, 0x80, 0x30, 0x00, 0x90, 0x20, 0x46, 0xfb, 0xf7, + 0x39, 0xfb, 0x09, 0xb0, 0xbd, 0xe8, 0xf0, 0x8f, 0x70, 0xb5, 0x00, 0x21, + 0x04, 0x46, 0xd0, 0xf8, 0xa8, 0x50, 0x0b, 0x46, 0x7f, 0x22, 0xff, 0xf7, + 0x6f, 0xff, 0x20, 0x46, 0xfe, 0xf7, 0x86, 0xf8, 0x20, 0x46, 0xb5, 0xf8, + 0xb8, 0x12, 0xb5, 0xf8, 0xba, 0x22, 0xfa, 0xf7, 0xe6, 0xff, 0x20, 0x46, + 0x40, 0xf2, 0xd1, 0x61, 0x04, 0x22, 0x00, 0x23, 0xbd, 0xe8, 0x70, 0x40, + 0xf8, 0xf7, 0xe6, 0xbd, 0x70, 0xb5, 0x04, 0x46, 0xd0, 0xf8, 0xa8, 0x30, + 0x0d, 0x46, 0xa9, 0xb1, 0x93, 0xf8, 0xbc, 0x32, 0x00, 0x2b, 0x29, 0xd0, + 0xff, 0xf7, 0xd8, 0xff, 0x20, 0x46, 0x04, 0x22, 0x00, 0x23, 0x40, 0xf2, + 0xd1, 0x61, 0xf8, 0xf7, 0xd3, 0xfd, 0x80, 0x22, 0x20, 0x46, 0x40, 0xf2, + 0x76, 0x61, 0x13, 0x46, 0xbd, 0xe8, 0x70, 0x40, 0xf8, 0xf7, 0xca, 0xbd, + 0x04, 0x22, 0x13, 0x46, 0x40, 0xf2, 0xd1, 0x61, 0xf8, 0xf7, 0xc4, 0xfd, + 0x80, 0x22, 0x20, 0x46, 0x2b, 0x46, 0x40, 0xf2, 0x76, 0x61, 0xf8, 0xf7, + 0xbd, 0xfd, 0x20, 0x46, 0x29, 0x46, 0xfe, 0xf7, 0xd7, 0xff, 0x20, 0x46, + 0x29, 0x46, 0x2a, 0x46, 0xbd, 0xe8, 0x70, 0x40, 0xfd, 0xf7, 0x9c, 0xbf, + 0x70, 0xbd, 0x00, 0x00, 0x10, 0xb5, 0x04, 0x46, 0x11, 0xb9, 0x10, 0x49, + 0x13, 0x22, 0x18, 0xe0, 0x12, 0x22, 0x0f, 0x49, 0xf8, 0xf7, 0xb8, 0xfd, + 0x01, 0x21, 0x00, 0x22, 0x20, 0x46, 0xfb, 0xf7, 0x49, 0xff, 0x0c, 0x49, + 0x06, 0x22, 0x20, 0x46, 0xf8, 0xf7, 0xae, 0xfd, 0xb4, 0xf8, 0xda, 0x30, + 0x20, 0x46, 0x03, 0xf4, 0x70, 0x43, 0xb3, 0xf5, 0x00, 0x5f, 0x0c, 0xbf, + 0x06, 0x49, 0x07, 0x49, 0x1e, 0x22, 0xbd, 0xe8, 0x10, 0x40, 0xf8, 0xf7, + 0x9f, 0xbd, 0x00, 0xbf, 0x74, 0xe8, 0x01, 0x00, 0x44, 0xea, 0x01, 0x00, + 0xa2, 0xe8, 0x01, 0x00, 0x68, 0xea, 0x01, 0x00, 0xa4, 0xea, 0x01, 0x00, + 0x2d, 0xe9, 0xf0, 0x41, 0x04, 0x46, 0x0f, 0x46, 0x15, 0x46, 0x40, 0xf2, + 0xda, 0x61, 0x48, 0xf2, 0x80, 0x02, 0x1e, 0x46, 0x9d, 0xf8, 0x18, 0x80, + 0xf8, 0xf7, 0x66, 0xfd, 0x20, 0x46, 0xfa, 0xf7, 0x3f, 0xfc, 0xb8, 0xb1, + 0x40, 0xf6, 0x52, 0x11, 0x20, 0x46, 0xf8, 0xf7, 0x7a, 0xfb, 0xff, 0x22, + 0xc3, 0xb2, 0x40, 0xf6, 0x48, 0x11, 0x20, 0x46, 0xf8, 0xf7, 0x64, 0xfd, + 0x40, 0xf6, 0x53, 0x11, 0x20, 0x46, 0xf8, 0xf7, 0x6e, 0xfb, 0x40, 0xf6, + 0x49, 0x11, 0xc3, 0xb2, 0xff, 0x22, 0x20, 0x46, 0xf8, 0xf7, 0x58, 0xfd, + 0xd4, 0xf8, 0xa8, 0x30, 0x93, 0xf8, 0x46, 0x35, 0x7b, 0xb1, 0x40, 0xf2, + 0xeb, 0x41, 0x20, 0x46, 0xf8, 0xf7, 0x5d, 0xfb, 0x00, 0xf4, 0x00, 0x73, + 0x5b, 0x12, 0x20, 0x46, 0x40, 0xf2, 0xeb, 0x41, 0x4f, 0xf4, 0x80, 0x62, + 0x9b, 0x02, 0xf8, 0xf7, 0x43, 0xfd, 0x7b, 0x1e, 0xff, 0x22, 0x9b, 0xb2, + 0x20, 0x46, 0x40, 0xf2, 0x42, 0x61, 0xf8, 0xf7, 0x3b, 0xfd, 0x4f, 0xf6, + 0xff, 0x73, 0x9d, 0x42, 0x01, 0xd0, 0x01, 0x3d, 0xad, 0xb2, 0x20, 0x46, + 0x4f, 0xf4, 0xc8, 0x61, 0x4f, 0xf6, 0xff, 0x72, 0x2b, 0x46, 0xf8, 0xf7, + 0x2d, 0xfd, 0x20, 0x46, 0x40, 0xf2, 0x41, 0x61, 0x4f, 0xf6, 0xff, 0x72, + 0x33, 0x46, 0xf8, 0xf7, 0x25, 0xfd, 0x20, 0x46, 0xb8, 0xf1, 0x00, 0x0f, + 0x05, 0xd0, 0x08, 0x49, 0x04, 0x22, 0xbd, 0xe8, 0xf0, 0x41, 0xf8, 0xf7, + 0x2d, 0xbd, 0x40, 0xf2, 0x3f, 0x61, 0x01, 0x22, 0xf8, 0xf7, 0x30, 0xfb, + 0x20, 0x46, 0x01, 0x21, 0xbd, 0xe8, 0xf0, 0x41, 0xff, 0xf7, 0x60, 0xbf, + 0x00, 0xee, 0x01, 0x00, 0xf8, 0xb5, 0x0f, 0x46, 0x40, 0xf2, 0x3b, 0x41, + 0x04, 0x46, 0xf8, 0xf7, 0x16, 0xfb, 0x40, 0xf2, 0x3c, 0x41, 0x06, 0x46, + 0x20, 0x46, 0xf8, 0xf7, 0x10, 0xfb, 0x05, 0x46, 0x20, 0x46, 0x77, 0xb1, + 0x0e, 0x22, 0x10, 0x49, 0xf8, 0xf7, 0x0c, 0xfd, 0x20, 0x46, 0x01, 0x21, + 0xff, 0xf7, 0x46, 0xff, 0x0d, 0x49, 0x20, 0x46, 0x07, 0x22, 0xbd, 0xe8, + 0xf8, 0x40, 0xf8, 0xf7, 0x01, 0xbd, 0x04, 0x22, 0x0a, 0x49, 0xf8, 0xf7, + 0xfd, 0xfc, 0x20, 0x46, 0x32, 0x46, 0x40, 0xf2, 0x3b, 0x41, 0xf8, 0xf7, + 0xff, 0xfa, 0x20, 0x46, 0x40, 0xf2, 0x3c, 0x41, 0x2a, 0x46, 0xbd, 0xe8, + 0xf8, 0x40, 0xf8, 0xf7, 0xf7, 0xba, 0x00, 0xbf, 0x08, 0xe9, 0x01, 0x00, + 0x24, 0xe9, 0x01, 0x00, 0x32, 0xe9, 0x01, 0x00, 0x70, 0xb5, 0x04, 0x46, + 0x0d, 0x46, 0xf8, 0xf7, 0x6a, 0xfc, 0x20, 0x22, 0x6b, 0x01, 0x20, 0x46, + 0x4f, 0xf4, 0x96, 0x61, 0xf8, 0xf7, 0xca, 0xfc, 0x00, 0x23, 0x20, 0x46, + 0x40, 0xf2, 0xb1, 0x41, 0x4f, 0xf4, 0x00, 0x72, 0xf8, 0xf7, 0xc2, 0xfc, + 0xb4, 0xf8, 0xda, 0x30, 0x03, 0xf4, 0x70, 0x43, 0xb3, 0xf5, 0x00, 0x5f, + 0x04, 0xd1, 0xd5, 0xf1, 0x01, 0x03, 0x38, 0xbf, 0x00, 0x23, 0x00, 0xe0, + 0x00, 0x23, 0x00, 0x2d, 0x0c, 0xbf, 0x20, 0x26, 0x00, 0x26, 0x20, 0x46, + 0x60, 0x22, 0x46, 0xea, 0x83, 0x13, 0x4f, 0xf4, 0x82, 0x61, 0xf8, 0xf7, + 0xa9, 0xfc, 0x20, 0x46, 0x4f, 0xf4, 0x82, 0x61, 0x80, 0x22, 0xeb, 0x01, + 0xf8, 0xf7, 0xa2, 0xfc, 0x20, 0x46, 0xbd, 0xe8, 0x70, 0x40, 0xf8, 0xf7, + 0x3a, 0xbc, 0x00, 0x00, 0x2d, 0xe9, 0xf0, 0x4f, 0xc3, 0xb0, 0x19, 0x93, + 0x9d, 0xf8, 0x34, 0x31, 0x9d, 0xf8, 0x30, 0x91, 0x0c, 0x93, 0x9d, 0xf8, + 0x38, 0x31, 0xbd, 0xf8, 0x44, 0x71, 0x0d, 0x93, 0x9d, 0xf8, 0x3c, 0x31, + 0xd0, 0xf8, 0xa8, 0xb0, 0x0e, 0x93, 0x9d, 0xf8, 0x40, 0x31, 0x15, 0x46, + 0x0f, 0x93, 0x4e, 0x4b, 0x04, 0x46, 0x88, 0x46, 0x24, 0xaa, 0x03, 0xf1, + 0x20, 0x0e, 0x18, 0x68, 0x59, 0x68, 0x16, 0x46, 0x03, 0xc6, 0x08, 0x33, + 0x73, 0x45, 0x32, 0x46, 0xf7, 0xd1, 0x18, 0x68, 0x18, 0x23, 0x30, 0x60, + 0x34, 0x93, 0x3e, 0xab, 0x01, 0x26, 0x32, 0x93, 0x20, 0x46, 0x20, 0x23, + 0x36, 0x93, 0x8d, 0xf8, 0x06, 0x61, 0x8d, 0xf8, 0x07, 0x61, 0x33, 0x96, + 0x35, 0x96, 0xfe, 0xf7, 0x6f, 0xfe, 0x40, 0xf2, 0xd7, 0x41, 0x10, 0x90, + 0x20, 0x46, 0xf8, 0xf7, 0x6e, 0xfa, 0xc0, 0xf3, 0xc0, 0x00, 0x11, 0x90, + 0x40, 0xf2, 0xd7, 0x41, 0x20, 0x46, 0xf8, 0xf7, 0x66, 0xfa, 0x00, 0xf4, + 0xe0, 0x40, 0x00, 0x0b, 0x12, 0x90, 0x36, 0x49, 0x20, 0x46, 0x06, 0x22, + 0xf8, 0xf7, 0x60, 0xfc, 0x20, 0x46, 0x34, 0x49, 0x0f, 0x22, 0xf8, 0xf7, + 0x5b, 0xfc, 0x20, 0x46, 0x31, 0x46, 0x1b, 0xaa, 0xfc, 0xf7, 0x60, 0xff, + 0x20, 0x46, 0x31, 0x46, 0x00, 0x22, 0xfc, 0xf7, 0xcf, 0xfe, 0xb9, 0xf1, + 0x00, 0x0f, 0x17, 0xd1, 0x20, 0x46, 0x31, 0x46, 0xff, 0xf7, 0x62, 0xff, + 0xd4, 0xf8, 0xb0, 0x30, 0xd3, 0xf8, 0x20, 0x31, 0xda, 0x07, 0x10, 0xd5, + 0xe3, 0x69, 0xb8, 0x21, 0x18, 0x69, 0x42, 0xf2, 0x10, 0x72, 0x38, 0xf0, + 0x13, 0xd8, 0xe3, 0x69, 0x18, 0x69, 0x38, 0xf0, 0x41, 0xd8, 0xcd, 0xf8, + 0x28, 0x90, 0x03, 0xe0, 0x00, 0x23, 0x0a, 0x93, 0x00, 0xe0, 0x0a, 0x96, + 0x20, 0x46, 0x01, 0x21, 0xfa, 0xf7, 0xb3, 0xfd, 0x20, 0x46, 0x01, 0x21, + 0xff, 0xf7, 0x68, 0xfe, 0x20, 0x46, 0x01, 0x21, 0xfa, 0xf7, 0xcc, 0xfe, + 0x40, 0xf2, 0xea, 0x41, 0x20, 0x46, 0xf8, 0xf7, 0x1e, 0xfa, 0x40, 0xf2, + 0xeb, 0x41, 0x13, 0x90, 0x20, 0x46, 0xf8, 0xf7, 0x18, 0xfa, 0x40, 0xf2, + 0xeb, 0x41, 0x14, 0x90, 0x20, 0x46, 0xf8, 0xf7, 0x12, 0xfa, 0x00, 0xf0, + 0x07, 0x03, 0x40, 0xf2, 0xeb, 0x41, 0x20, 0x46, 0xdb, 0x00, 0x38, 0x22, + 0xf8, 0xf7, 0xfa, 0xfb, 0x9b, 0xf8, 0xc1, 0x32, 0x20, 0x46, 0x3c, 0xa9, + 0x0b, 0x93, 0xfa, 0xf7, 0xa2, 0xfb, 0x95, 0xb1, 0x2b, 0x7a, 0x20, 0x46, + 0x63, 0xb1, 0x69, 0x7a, 0xff, 0xf7, 0xb4, 0xf8, 0x6b, 0x7a, 0x0b, 0x93, + 0x09, 0xe0, 0x00, 0xbf, 0x84, 0xb8, 0x01, 0x00, 0x3c, 0xe7, 0x01, 0x00, + 0x7a, 0xe9, 0x01, 0x00, 0x29, 0x46, 0xfa, 0xf7, 0x3a, 0xfd, 0x40, 0xf2, + 0x9c, 0x41, 0x20, 0x46, 0xf8, 0xf7, 0xe9, 0xf9, 0x40, 0xf2, 0x31, 0x61, + 0x15, 0x90, 0x20, 0x46, 0xf8, 0xf7, 0xe3, 0xf9, 0x40, 0xf2, 0xd6, 0x61, + 0x16, 0x90, 0x20, 0x46, 0xf8, 0xf7, 0xdd, 0xf9, 0x40, 0xf2, 0xda, 0x61, + 0x17, 0x90, 0x20, 0x46, 0xf8, 0xf7, 0xd7, 0xf9, 0x00, 0x21, 0x18, 0x90, + 0x20, 0x46, 0xfa, 0xf7, 0xc2, 0xff, 0x20, 0x46, 0xa4, 0x49, 0x07, 0x22, + 0xf8, 0xf7, 0xd0, 0xfb, 0x40, 0xab, 0x2d, 0x93, 0x01, 0x23, 0x2e, 0x93, + 0x07, 0x23, 0x2f, 0x93, 0x75, 0xb1, 0x9b, 0xf9, 0x66, 0x35, 0x6a, 0x7a, + 0x01, 0x33, 0x92, 0xfb, 0xf3, 0xf3, 0x03, 0xf5, 0x10, 0x73, 0x30, 0x93, + 0x20, 0x46, 0x20, 0x23, 0x2d, 0xa9, 0x31, 0x93, 0xfc, 0xf7, 0x4a, 0xfc, + 0x40, 0x9b, 0x4f, 0xf6, 0xf8, 0x72, 0xdb, 0x00, 0x1a, 0x40, 0x20, 0x46, + 0x40, 0xf2, 0x71, 0x61, 0x40, 0x93, 0xf8, 0xf7, 0xb7, 0xf9, 0x20, 0x46, + 0x92, 0x49, 0x0c, 0x22, 0xf8, 0xf7, 0xaa, 0xfb, 0x0d, 0xf1, 0x8e, 0x0a, + 0x56, 0x46, 0x00, 0x25, 0x20, 0x46, 0x36, 0xf8, 0x02, 0x1f, 0xf8, 0xf7, + 0x61, 0xf9, 0x37, 0xab, 0x58, 0x55, 0x01, 0x35, 0x12, 0x2d, 0xf5, 0xd1, + 0x07, 0x22, 0x20, 0x46, 0x4f, 0xf4, 0x8b, 0x71, 0xf8, 0xf7, 0x6d, 0xf9, + 0xb4, 0xf8, 0xda, 0x30, 0x03, 0xf4, 0x70, 0x43, 0xb3, 0xf5, 0x00, 0x5f, + 0x05, 0xd1, 0x20, 0x46, 0x40, 0xf2, 0x2d, 0x11, 0x01, 0x22, 0xf8, 0xf7, + 0x60, 0xf9, 0x07, 0x22, 0x20, 0x46, 0x4f, 0xf4, 0x96, 0x71, 0xf8, 0xf7, + 0x5a, 0xf9, 0xb4, 0xf8, 0xda, 0x30, 0x03, 0xf4, 0x70, 0x43, 0xb3, 0xf5, + 0x00, 0x5f, 0x14, 0xd1, 0x20, 0x46, 0x6a, 0x21, 0xc2, 0x22, 0xf8, 0xf7, + 0x4e, 0xf9, 0x20, 0x46, 0x98, 0x21, 0x0c, 0x22, 0xf8, 0xf7, 0x49, 0xf9, + 0x20, 0x46, 0x40, 0xf2, 0x2f, 0x11, 0x03, 0x22, 0xf8, 0xf7, 0x43, 0xf9, + 0x20, 0x46, 0x97, 0x21, 0xf9, 0x22, 0xf8, 0xf7, 0x3e, 0xf9, 0x0b, 0x21, + 0x07, 0x22, 0x20, 0x46, 0xf8, 0xf7, 0x39, 0xf9, 0x10, 0x22, 0x20, 0x46, + 0x40, 0xf2, 0x13, 0x11, 0xf8, 0xf7, 0x33, 0xf9, 0x1d, 0x21, 0x01, 0x22, + 0x20, 0x46, 0xf8, 0xf7, 0x2e, 0xf9, 0x01, 0x22, 0x20, 0x46, 0x4f, 0xf4, + 0x8a, 0x71, 0xf8, 0xf7, 0x28, 0xf9, 0xb4, 0xf8, 0xda, 0x30, 0x03, 0xf4, + 0x70, 0x43, 0xb3, 0xf5, 0x00, 0x5f, 0x04, 0xd1, 0x20, 0x46, 0x2e, 0x21, + 0x10, 0x22, 0xf8, 0xf7, 0x1c, 0xf9, 0x20, 0x46, 0x4f, 0xf4, 0x95, 0x71, + 0x08, 0x22, 0xf8, 0xf7, 0x16, 0xf9, 0x20, 0x46, 0x09, 0x21, 0x02, 0x22, + 0xf8, 0xf7, 0x11, 0xf9, 0x04, 0x22, 0x13, 0x46, 0x20, 0x46, 0x40, 0xf2, + 0x1f, 0x11, 0xf8, 0xf7, 0xdf, 0xfa, 0x20, 0x46, 0xff, 0x21, 0x10, 0x22, + 0x00, 0x23, 0xf8, 0xf7, 0xd9, 0xfa, 0x20, 0x46, 0x07, 0x21, 0x01, 0x22, + 0x00, 0x23, 0xf8, 0xf7, 0xd3, 0xfa, 0x20, 0x46, 0x05, 0x21, 0x08, 0x22, + 0x00, 0x23, 0xf8, 0xf7, 0xcd, 0xfa, 0x4f, 0xf4, 0x00, 0x42, 0x13, 0x46, + 0x20, 0x46, 0x40, 0xf2, 0xda, 0x61, 0xf8, 0xf7, 0x07, 0xfb, 0x41, 0x46, + 0x19, 0x9a, 0x0b, 0x9b, 0x20, 0x46, 0xfd, 0xf7, 0x23, 0xf9, 0x00, 0x25, + 0x83, 0xb2, 0x01, 0x93, 0x01, 0x21, 0x2a, 0x46, 0x2b, 0x46, 0x06, 0x46, + 0x20, 0x46, 0x00, 0x95, 0x02, 0x95, 0x03, 0x95, 0x04, 0x95, 0xfa, 0xf7, + 0x25, 0xfd, 0x0c, 0x9b, 0xaf, 0x42, 0x08, 0xbf, 0x4f, 0xf4, 0x82, 0x47, + 0x00, 0x93, 0x0d, 0x9b, 0x20, 0x46, 0x01, 0x93, 0x0e, 0x9b, 0x41, 0x46, + 0x02, 0x93, 0x0f, 0x9b, 0x2a, 0x46, 0x03, 0x93, 0x4f, 0xf4, 0xaf, 0x63, + 0x04, 0x93, 0x80, 0x23, 0x07, 0x93, 0x4b, 0x46, 0x05, 0x97, 0x06, 0x95, + 0x08, 0x95, 0xfd, 0xf7, 0x4d, 0xf8, 0x9b, 0xf9, 0x09, 0x34, 0x00, 0x2b, + 0x2f, 0xd0, 0x2c, 0xe0, 0x20, 0x46, 0x32, 0xa9, 0xfc, 0xf7, 0x72, 0xfb, + 0x3e, 0x9b, 0x43, 0xf3, 0x0b, 0x33, 0x87, 0x2b, 0x25, 0xdd, 0x01, 0x3e, + 0x00, 0x25, 0xb3, 0xb2, 0x01, 0x93, 0x20, 0x46, 0x01, 0x21, 0x2a, 0x46, + 0x2b, 0x46, 0x00, 0x95, 0x02, 0x95, 0x03, 0x95, 0x04, 0x95, 0xfa, 0xf7, + 0xef, 0xfc, 0x0c, 0x9b, 0x20, 0x46, 0x00, 0x93, 0x0d, 0x9b, 0x41, 0x46, + 0x01, 0x93, 0x0e, 0x9b, 0x2a, 0x46, 0x02, 0x93, 0x0f, 0x9b, 0x05, 0x97, + 0x03, 0x93, 0x4f, 0xf4, 0xaf, 0x63, 0x04, 0x93, 0x80, 0x23, 0x07, 0x93, + 0x4b, 0x46, 0x06, 0x95, 0x08, 0x95, 0xfd, 0xf7, 0x1b, 0xf8, 0x00, 0x2e, + 0xd0, 0xd1, 0x41, 0xaa, 0x03, 0x32, 0x20, 0x46, 0x0d, 0xf5, 0x83, 0x71, + 0xfa, 0xf7, 0x73, 0xfa, 0x9d, 0xf8, 0x07, 0x21, 0x3f, 0x2a, 0x55, 0xd8, + 0x9d, 0xf9, 0x06, 0x31, 0x00, 0x2b, 0x51, 0xdb, 0x3f, 0x2b, 0x4f, 0xdc, + 0x52, 0xb2, 0x9a, 0x42, 0x4c, 0xdc, 0xb8, 0xf1, 0x00, 0x0f, 0x28, 0xd1, + 0x18, 0x23, 0x42, 0xad, 0x2f, 0x93, 0x3f, 0xab, 0x45, 0xf8, 0x54, 0x3d, + 0x29, 0x46, 0x20, 0x46, 0x30, 0x92, 0xfc, 0xf7, 0x25, 0xfb, 0x9d, 0xf9, + 0x06, 0x31, 0x29, 0x46, 0x20, 0x46, 0x3f, 0x9e, 0x30, 0x93, 0x45, 0x46, + 0xfc, 0xf7, 0x1c, 0xfb, 0x0e, 0xe0, 0x00, 0xbf, 0x48, 0xe7, 0x01, 0x00, + 0xb4, 0xeb, 0x01, 0x00, 0x42, 0xa9, 0x3f, 0xab, 0x41, 0xf8, 0x54, 0x3d, + 0x20, 0x46, 0x30, 0x95, 0x3f, 0x96, 0xfc, 0xf7, 0xf0, 0xfd, 0x01, 0x35, + 0x9d, 0xf9, 0x07, 0x21, 0x6b, 0xb2, 0x9a, 0x42, 0xf0, 0xdc, 0x18, 0x23, + 0x2f, 0x93, 0x3e, 0x23, 0x42, 0xad, 0x30, 0x93, 0x3f, 0xab, 0x45, 0xf8, + 0x54, 0x3d, 0x20, 0x46, 0x29, 0x46, 0xfc, 0xf7, 0xfb, 0xfa, 0x3f, 0x23, + 0x20, 0x46, 0x29, 0x46, 0x30, 0x93, 0xfc, 0xf7, 0xd8, 0xfd, 0x01, 0x23, + 0x20, 0x46, 0x29, 0x46, 0x30, 0x93, 0xfc, 0xf7, 0xef, 0xfa, 0x00, 0x23, + 0x20, 0x46, 0x29, 0x46, 0x30, 0x93, 0xfc, 0xf7, 0xcc, 0xfd, 0x20, 0x46, + 0xfc, 0xf7, 0x65, 0xfb, 0x20, 0x46, 0x40, 0xf2, 0xea, 0x41, 0x13, 0x9a, + 0xf8, 0xf7, 0x58, 0xf8, 0x20, 0x46, 0x40, 0xf2, 0xeb, 0x41, 0x14, 0x9a, + 0xf8, 0xf7, 0x52, 0xf8, 0x20, 0x46, 0xd7, 0x21, 0x02, 0x22, 0x00, 0x23, + 0xf8, 0xf7, 0xf0, 0xf9, 0x08, 0x22, 0x13, 0x46, 0x20, 0x46, 0xd7, 0x21, + 0xf8, 0xf7, 0xea, 0xf9, 0x00, 0x23, 0x20, 0x46, 0x4f, 0xf4, 0x94, 0x71, + 0x08, 0x22, 0xf8, 0xf7, 0xe3, 0xf9, 0x20, 0x46, 0x4f, 0xf4, 0x8b, 0x71, + 0x00, 0x22, 0xf8, 0xf7, 0x08, 0xf8, 0x20, 0x46, 0x40, 0xf2, 0x9c, 0x41, + 0x15, 0x9a, 0xf8, 0xf7, 0x33, 0xf8, 0x20, 0x46, 0x40, 0xf2, 0x31, 0x61, + 0x16, 0x9a, 0xf8, 0xf7, 0x2d, 0xf8, 0x20, 0x46, 0x40, 0xf2, 0xd6, 0x61, + 0x17, 0x9a, 0xf8, 0xf7, 0x27, 0xf8, 0x18, 0x9d, 0x20, 0x46, 0x45, 0xf0, + 0x01, 0x02, 0x92, 0xb2, 0x40, 0xf2, 0xda, 0x61, 0xf8, 0xf7, 0x1e, 0xf8, + 0x20, 0x46, 0x01, 0x21, 0xfa, 0xf7, 0xff, 0xfd, 0x11, 0x9d, 0x20, 0x46, + 0xeb, 0x00, 0x40, 0xf2, 0xd7, 0x41, 0x08, 0x22, 0xf8, 0xf7, 0xf8, 0xf9, + 0x12, 0x9d, 0x20, 0x46, 0x2b, 0x03, 0x40, 0xf2, 0xd7, 0x41, 0x4f, 0xf4, + 0xe0, 0x42, 0xf8, 0xf7, 0xef, 0xf9, 0x20, 0x46, 0xfb, 0xf7, 0x6a, 0xfa, + 0x00, 0x25, 0x56, 0x46, 0x37, 0xab, 0x5a, 0x5d, 0x20, 0x46, 0x36, 0xf8, + 0x02, 0x1f, 0x01, 0x35, 0xf7, 0xf7, 0xcb, 0xff, 0x12, 0x2d, 0xf5, 0xd1, + 0x4f, 0xf4, 0x00, 0x62, 0x00, 0x23, 0x20, 0x46, 0x40, 0xf2, 0x4c, 0x41, + 0xf8, 0xf7, 0xd8, 0xf9, 0x20, 0x46, 0x00, 0x21, 0xff, 0xf7, 0x24, 0xfc, + 0x20, 0x46, 0x00, 0x21, 0xfa, 0xf7, 0x67, 0xfb, 0x20, 0x46, 0x40, 0xf2, + 0x3b, 0x41, 0x01, 0x22, 0x00, 0x23, 0xf8, 0xf7, 0xc9, 0xf9, 0x00, 0x23, + 0x4f, 0xf4, 0x00, 0x62, 0x20, 0x46, 0x40, 0xf6, 0x38, 0x11, 0xf8, 0xf7, + 0xc1, 0xf9, 0x20, 0x46, 0x00, 0x21, 0xff, 0xf7, 0xe7, 0xfc, 0x20, 0x46, + 0x00, 0x21, 0x1b, 0xaa, 0xfc, 0xf7, 0xd4, 0xfc, 0x20, 0x46, 0x08, 0x49, + 0x0f, 0x22, 0xf8, 0xf7, 0xc5, 0xf9, 0x0a, 0x9d, 0x1d, 0xb9, 0xe3, 0x69, + 0x18, 0x69, 0x37, 0xf0, 0xb3, 0xdd, 0x20, 0x46, 0x10, 0x99, 0xfc, 0xf7, + 0xaf, 0xfe, 0x43, 0xb0, 0xbd, 0xe8, 0xf0, 0x8f, 0xde, 0xe8, 0x01, 0x00, + 0x2d, 0xe9, 0xf0, 0x4f, 0x8d, 0xb0, 0xdd, 0xf8, 0x58, 0x90, 0x9b, 0x46, + 0x01, 0x23, 0x80, 0x46, 0x92, 0x46, 0x89, 0xf8, 0x08, 0x30, 0x64, 0x24, + 0x00, 0x25, 0x2e, 0x19, 0x76, 0x10, 0x00, 0x21, 0xb6, 0xb2, 0xdb, 0x23, + 0x89, 0xf8, 0x09, 0x60, 0x01, 0x27, 0x4a, 0x46, 0x03, 0x93, 0x40, 0x46, + 0x0b, 0x46, 0x00, 0x91, 0x01, 0x91, 0x02, 0x91, 0x04, 0x97, 0x05, 0x91, + 0xff, 0xf7, 0xe8, 0xfc, 0x18, 0x23, 0x08, 0x93, 0x3f, 0x23, 0x09, 0x93, + 0x0b, 0xab, 0x06, 0x93, 0x40, 0x46, 0x20, 0x23, 0x06, 0xa9, 0x0a, 0x93, + 0x07, 0x97, 0xfc, 0xf7, 0x19, 0xfa, 0x0b, 0x9b, 0x1a, 0x05, 0x12, 0x15, + 0x52, 0x43, 0x43, 0xf3, 0x0b, 0x33, 0x03, 0xfb, 0x03, 0x23, 0x0f, 0x4a, + 0x18, 0x46, 0xd9, 0x17, 0x82, 0x45, 0x7b, 0xeb, 0x01, 0x03, 0x28, 0xbf, + 0x34, 0x46, 0x38, 0xbf, 0x35, 0x46, 0x4f, 0xf0, 0xff, 0x33, 0x12, 0xeb, + 0x0a, 0x02, 0x43, 0xeb, 0x0b, 0x03, 0x82, 0x42, 0x73, 0xeb, 0x01, 0x07, + 0x03, 0xd2, 0x50, 0x45, 0x71, 0xeb, 0x0b, 0x03, 0x02, 0xd3, 0x63, 0x1b, + 0x01, 0x2b, 0xbc, 0xdc, 0x30, 0x46, 0x0d, 0xb0, 0xbd, 0xe8, 0xf0, 0x8f, + 0x30, 0xf8, 0xff, 0xff, 0xf7, 0xb5, 0x04, 0x46, 0xd0, 0xf8, 0xa8, 0x70, + 0x90, 0xf8, 0xda, 0x00, 0x0e, 0x46, 0xf8, 0xf7, 0x0d, 0xfc, 0x40, 0xf6, + 0xb4, 0x12, 0x90, 0x42, 0x05, 0x46, 0xb4, 0xf8, 0xda, 0x30, 0x08, 0xd0, + 0xdb, 0xb2, 0x01, 0x2b, 0x07, 0xd0, 0x00, 0x02, 0xa0, 0xf5, 0xc4, 0x20, + 0xa0, 0xf5, 0x80, 0x60, 0x03, 0xe0, 0x1a, 0x48, 0x01, 0xe0, 0x4f, 0xf4, + 0x52, 0x30, 0x00, 0x22, 0x4f, 0xf4, 0x7a, 0x71, 0xf9, 0xf7, 0x1a, 0xff, + 0xa0, 0xfb, 0x00, 0x23, 0x20, 0x46, 0x00, 0x96, 0xff, 0xf7, 0x82, 0xff, + 0xa0, 0xf1, 0x28, 0x02, 0x92, 0xb2, 0x1d, 0x2a, 0x1b, 0xd9, 0x27, 0x28, + 0x09, 0xd9, 0x40, 0xf6, 0xb4, 0x13, 0x9d, 0x42, 0x08, 0xd0, 0x2d, 0x02, + 0xa5, 0xf5, 0xbe, 0x20, 0xa0, 0xf5, 0x00, 0x70, 0x04, 0xe0, 0x4f, 0xf4, + 0x34, 0x30, 0x01, 0xe0, 0x4f, 0xf4, 0x70, 0x30, 0x00, 0x22, 0x4f, 0xf4, + 0x7a, 0x71, 0xf9, 0xf7, 0xf9, 0xfe, 0xa0, 0xfb, 0x00, 0x23, 0x20, 0x46, + 0x00, 0x96, 0xff, 0xf7, 0x61, 0xff, 0x04, 0x38, 0x87, 0xf8, 0xc2, 0x02, + 0xfe, 0xbd, 0x00, 0xbf, 0x00, 0x8e, 0x03, 0x00, 0x2d, 0xe9, 0xf0, 0x4f, + 0xd0, 0xf8, 0xa8, 0x30, 0x8f, 0xb0, 0x16, 0x46, 0x18, 0x22, 0x93, 0xf8, + 0xf4, 0x73, 0x0a, 0x92, 0x0d, 0xaa, 0x08, 0x92, 0x01, 0xfb, 0x01, 0xfb, + 0x20, 0x22, 0x7b, 0xb2, 0x0c, 0x92, 0x01, 0x22, 0x09, 0x92, 0xb3, 0xf1, + 0xff, 0x3f, 0x08, 0xbf, 0x01, 0x27, 0x3f, 0x22, 0x03, 0x23, 0x05, 0x46, + 0x0b, 0x92, 0x07, 0x93, 0x4f, 0xf0, 0x05, 0x08, 0x06, 0x23, 0x00, 0x24, + 0x03, 0x93, 0x47, 0xf6, 0xff, 0x73, 0x32, 0x46, 0x05, 0x93, 0x28, 0x46, + 0x23, 0x46, 0x21, 0x46, 0x4f, 0xf0, 0x01, 0x09, 0x00, 0x94, 0x01, 0x94, + 0x02, 0x94, 0xcd, 0xf8, 0x10, 0x90, 0xff, 0xf7, 0x31, 0xfc, 0x28, 0x46, + 0x08, 0xa9, 0xfc, 0xf7, 0x6b, 0xf9, 0x0d, 0x9b, 0x1a, 0x05, 0x12, 0x15, + 0x52, 0x43, 0x43, 0xf3, 0x0b, 0x33, 0x03, 0xfb, 0x03, 0x23, 0x5b, 0x45, + 0x72, 0x7a, 0x07, 0xd2, 0x00, 0x2f, 0x4e, 0xd1, 0xc8, 0xf1, 0x00, 0x0a, + 0x5f, 0xfa, 0x8a, 0xfa, 0xcc, 0x46, 0x01, 0xe0, 0xc2, 0x46, 0xa4, 0x46, + 0x4f, 0xfa, 0x8a, 0xf9, 0x1f, 0xfa, 0x89, 0xf9, 0x09, 0xeb, 0x02, 0x04, + 0x06, 0x97, 0xa4, 0xb2, 0x67, 0x46, 0xc9, 0xeb, 0x04, 0x02, 0x92, 0xb2, + 0x3f, 0xb1, 0x5b, 0x45, 0x07, 0xd9, 0xca, 0xeb, 0x02, 0x0a, 0x06, 0x9f, + 0x86, 0xf8, 0x09, 0xa0, 0x27, 0xe0, 0x5b, 0x45, 0x24, 0xd3, 0x23, 0xb2, + 0x7f, 0x2b, 0x21, 0xdc, 0x00, 0x2b, 0x1f, 0xdb, 0x06, 0x23, 0x03, 0x93, + 0x01, 0x23, 0x00, 0x21, 0x04, 0x93, 0x47, 0xf6, 0xff, 0x73, 0x32, 0x46, + 0x74, 0x72, 0x05, 0x93, 0x28, 0x46, 0x0b, 0x46, 0x00, 0x91, 0x01, 0x91, + 0x02, 0x91, 0xff, 0xf7, 0xeb, 0xfb, 0x28, 0x46, 0x08, 0xa9, 0xfc, 0xf7, + 0x25, 0xf9, 0x0d, 0x9b, 0x4c, 0x44, 0x1a, 0x05, 0x12, 0x15, 0x52, 0x43, + 0x43, 0xf3, 0x0b, 0x33, 0x03, 0xfb, 0x03, 0x23, 0xa4, 0xb2, 0xcc, 0xe7, + 0x06, 0x9f, 0x07, 0x9b, 0x4f, 0xfa, 0x88, 0xf8, 0x4f, 0xea, 0x68, 0x08, + 0x01, 0x3b, 0x5f, 0xfa, 0x88, 0xf8, 0x07, 0x93, 0x8c, 0xd1, 0x0f, 0xb0, + 0xbd, 0xe8, 0xf0, 0x8f, 0x2d, 0xe9, 0xf0, 0x4f, 0x8d, 0xb0, 0x03, 0x93, + 0xc3, 0x69, 0xd0, 0xf8, 0xa8, 0x80, 0x04, 0x46, 0x0e, 0x46, 0x98, 0x68, + 0x4f, 0xf4, 0x80, 0x61, 0x17, 0x46, 0xed, 0xf3, 0x13, 0xf7, 0x05, 0x46, + 0x00, 0x28, 0x00, 0xf0, 0x87, 0x80, 0x04, 0xf5, 0x80, 0x53, 0xde, 0x61, + 0x20, 0x46, 0x01, 0x21, 0xff, 0xf7, 0x7a, 0xfb, 0x98, 0xf8, 0x2c, 0x30, + 0x43, 0xb1, 0x20, 0x46, 0x3f, 0x49, 0x06, 0x22, 0xf8, 0xf7, 0x5a, 0xf8, + 0x20, 0x46, 0x00, 0x21, 0xfc, 0xf7, 0x4a, 0xf8, 0xa6, 0xb1, 0x01, 0x23, + 0x3b, 0x4a, 0x86, 0xea, 0xe6, 0x71, 0xa1, 0xeb, 0xe6, 0x71, 0x5a, 0x43, + 0xb2, 0xfb, 0xf1, 0xf9, 0x1f, 0xfa, 0x89, 0xf9, 0x01, 0xfb, 0x09, 0xf1, + 0x01, 0x33, 0x91, 0x42, 0x9b, 0xb2, 0xef, 0xd1, 0xb9, 0xf5, 0x80, 0x7f, + 0x02, 0xd9, 0x56, 0xe0, 0x4f, 0xf0, 0x02, 0x09, 0x4f, 0xf0, 0x24, 0x0b, + 0x0b, 0xfb, 0x06, 0xfb, 0x49, 0xf6, 0x40, 0x43, 0x9b, 0xfb, 0xf3, 0xfb, + 0x4f, 0xea, 0x0b, 0x4b, 0x64, 0x23, 0x4f, 0xf0, 0x00, 0x08, 0x9b, 0xfb, + 0xf3, 0xfb, 0xaa, 0x46, 0x46, 0x46, 0x26, 0xe0, 0x40, 0x46, 0x0a, 0xa9, + 0xf9, 0xf7, 0x90, 0xf8, 0x0b, 0x9a, 0xd8, 0x44, 0x7a, 0x43, 0x03, 0xd4, + 0xd2, 0x13, 0x01, 0x32, 0x52, 0x10, 0x04, 0xe0, 0x52, 0x42, 0xd2, 0x13, + 0x01, 0x32, 0x52, 0x10, 0x52, 0x42, 0x0a, 0x9b, 0x92, 0x05, 0x92, 0x0d, + 0x7b, 0x43, 0x03, 0xd4, 0xdb, 0x13, 0x01, 0x33, 0x5b, 0x10, 0x04, 0xe0, + 0x5b, 0x42, 0xdb, 0x13, 0x01, 0x33, 0x5b, 0x10, 0x5b, 0x42, 0x9b, 0x05, + 0x9b, 0x0d, 0x43, 0xea, 0x82, 0x23, 0x01, 0x36, 0x4a, 0xf8, 0x04, 0x3b, + 0xb6, 0xb2, 0x4e, 0x45, 0xd6, 0xd1, 0x06, 0x22, 0x20, 0x46, 0x13, 0x49, + 0xf7, 0xf7, 0xfe, 0xff, 0x15, 0x23, 0x07, 0x93, 0x00, 0x27, 0x20, 0x23, + 0x20, 0x46, 0x05, 0xa9, 0x09, 0x93, 0x05, 0x95, 0x06, 0x96, 0x08, 0x97, + 0xfc, 0xf7, 0x65, 0xfb, 0x03, 0x9b, 0x20, 0x46, 0x00, 0x93, 0x31, 0x46, + 0x4f, 0xf6, 0xff, 0x72, 0x3b, 0x46, 0xff, 0xf7, 0x55, 0xfa, 0xe3, 0x69, + 0x29, 0x46, 0x98, 0x68, 0x4f, 0xf4, 0x80, 0x62, 0xed, 0xf3, 0x98, 0xf6, + 0x0d, 0xb0, 0xbd, 0xe8, 0xf0, 0x8f, 0x00, 0xbf, 0xae, 0xe7, 0x01, 0x00, + 0x00, 0x5a, 0x62, 0x02, 0xfc, 0xe8, 0x01, 0x00, 0x70, 0xb5, 0x00, 0xf5, + 0x80, 0x53, 0xd0, 0xf8, 0xa8, 0x50, 0x00, 0x22, 0xda, 0x61, 0x95, 0xf8, + 0x2c, 0x30, 0x04, 0x46, 0x3b, 0xb1, 0x2b, 0x49, 0x06, 0x22, 0xf7, 0xf7, + 0xc9, 0xff, 0x20, 0x46, 0x01, 0x21, 0xfb, 0xf7, 0xb9, 0xff, 0x20, 0x46, + 0x40, 0xf2, 0x44, 0x61, 0xf7, 0xf7, 0xbd, 0xfd, 0x10, 0xf0, 0x01, 0x03, + 0x09, 0xd0, 0x20, 0x46, 0x00, 0x21, 0xff, 0xf7, 0xf7, 0xf9, 0x02, 0x22, + 0x20, 0x46, 0x40, 0xf2, 0x3f, 0x61, 0x13, 0x46, 0x06, 0xe0, 0x81, 0x07, + 0x06, 0xd5, 0x20, 0x46, 0x40, 0xf2, 0x53, 0x41, 0x4f, 0xf4, 0x00, 0x42, + 0xf7, 0xf7, 0x98, 0xff, 0x20, 0x46, 0x1a, 0x49, 0x09, 0x22, 0xf7, 0xf7, + 0xa5, 0xff, 0x20, 0x46, 0x00, 0x21, 0xff, 0xf7, 0xb9, 0xfa, 0x20, 0x46, + 0xf9, 0xf7, 0x5a, 0xfe, 0x30, 0xb1, 0x20, 0x46, 0xfc, 0xf7, 0x8c, 0xf9, + 0x01, 0x46, 0x20, 0x46, 0xfe, 0xf7, 0xa2, 0xf9, 0x95, 0xf8, 0x47, 0x35, + 0x20, 0x46, 0x9b, 0x02, 0x03, 0xf4, 0x7c, 0x43, 0x40, 0xf2, 0xeb, 0x41, + 0x4f, 0xf4, 0x80, 0x62, 0xf7, 0xf7, 0x78, 0xff, 0xb5, 0xf8, 0x4e, 0x35, + 0x7b, 0xb1, 0x20, 0x46, 0xff, 0x22, 0x40, 0xf6, 0x48, 0x11, 0xf7, 0xf7, + 0x6f, 0xff, 0xb5, 0xf8, 0x50, 0x35, 0x20, 0x46, 0x40, 0xf6, 0x49, 0x11, + 0xff, 0x22, 0xbd, 0xe8, 0x70, 0x40, 0xf7, 0xf7, 0x65, 0xbf, 0x70, 0xbd, + 0x04, 0xea, 0x01, 0x00, 0xd2, 0xed, 0x01, 0x00, 0x70, 0xb5, 0x05, 0x46, + 0x88, 0xb0, 0x0c, 0x46, 0xf8, 0xf7, 0xdf, 0xfd, 0x28, 0x46, 0x34, 0xb9, + 0xff, 0xf7, 0x90, 0xff, 0x28, 0x46, 0x21, 0x46, 0xff, 0xf7, 0x7c, 0xfa, + 0x20, 0xe0, 0x21, 0x46, 0x01, 0x22, 0xf9, 0xf7, 0x1f, 0xf9, 0x04, 0x46, + 0xc8, 0xb9, 0x28, 0x46, 0x01, 0x21, 0xff, 0xf7, 0x71, 0xfa, 0x0d, 0x4b, + 0x40, 0x26, 0x03, 0x93, 0x15, 0x23, 0x05, 0x93, 0x28, 0x46, 0x10, 0x23, + 0x03, 0xa9, 0x07, 0x93, 0x04, 0x96, 0x06, 0x94, 0xfc, 0xf7, 0xbf, 0xfa, + 0x28, 0x46, 0x31, 0x46, 0x4f, 0xf6, 0xff, 0x72, 0x23, 0x46, 0x00, 0x94, + 0xff, 0xf7, 0xb0, 0xf9, 0x00, 0xe0, 0x01, 0x24, 0x20, 0x46, 0x08, 0xb0, + 0x70, 0xbd, 0x00, 0xbf, 0x8e, 0x01, 0x02, 0x00, 0x2d, 0xe9, 0xf8, 0x43, + 0x0f, 0x01, 0x04, 0x46, 0xd0, 0xf8, 0xa8, 0x90, 0xfd, 0xf7, 0xab, 0xfb, + 0x40, 0xf2, 0xd7, 0x41, 0x06, 0x46, 0x05, 0x46, 0x20, 0x46, 0xf7, 0xf7, + 0x2a, 0xfd, 0x99, 0xf9, 0x25, 0x35, 0x80, 0x46, 0x58, 0x1c, 0x0e, 0xd0, + 0x00, 0x2b, 0xb8, 0xbf, 0x03, 0x33, 0x40, 0x22, 0xb7, 0xeb, 0xa3, 0x0f, + 0x20, 0x46, 0x40, 0xf2, 0xd7, 0x41, 0x01, 0xda, 0x00, 0x23, 0x00, 0xe0, + 0x13, 0x46, 0xf7, 0xf7, 0x07, 0xff, 0x04, 0xf5, 0x80, 0x53, 0xdb, 0x69, + 0x20, 0x46, 0x4b, 0xb1, 0xff, 0xf7, 0x3a, 0xff, 0x05, 0x20, 0xed, 0xf3, + 0xf9, 0xf2, 0x20, 0x46, 0x1b, 0x49, 0x70, 0x22, 0x00, 0x23, 0x01, 0xe0, + 0x19, 0x49, 0x70, 0x22, 0xff, 0xf7, 0x8a, 0xfe, 0x20, 0x46, 0x31, 0x46, + 0xfe, 0xf7, 0xb8, 0xfb, 0x4f, 0xf0, 0x0b, 0x09, 0x01, 0x21, 0x20, 0x46, + 0xfd, 0xf7, 0x0e, 0xfe, 0xc6, 0x1b, 0x00, 0x2e, 0x33, 0x46, 0xb8, 0xbf, + 0xf3, 0x1c, 0x05, 0xeb, 0xa3, 0x05, 0x01, 0x3d, 0x7f, 0x2d, 0xa8, 0xbf, + 0x7f, 0x25, 0x25, 0xea, 0xe5, 0x75, 0x20, 0x46, 0x29, 0x46, 0x04, 0x36, + 0xfe, 0xf7, 0xa0, 0xfb, 0x08, 0x2e, 0x02, 0xd9, 0xb9, 0xf1, 0x01, 0x09, + 0xe4, 0xd1, 0x20, 0x46, 0xff, 0xf7, 0x0a, 0xff, 0x20, 0x46, 0x40, 0xf2, + 0xd7, 0x41, 0x42, 0x46, 0xf7, 0xf7, 0xe4, 0xfc, 0x20, 0x46, 0xfd, 0xf7, + 0x50, 0xfb, 0xbd, 0xe8, 0xf8, 0x83, 0x00, 0xbf, 0x00, 0x09, 0x3d, 0x00, + 0x70, 0xb5, 0xb1, 0xf1, 0xff, 0x3f, 0x04, 0x46, 0x15, 0x46, 0x9d, 0xf9, + 0x10, 0x60, 0x01, 0xd0, 0x8b, 0x19, 0x0c, 0xe0, 0x22, 0xb9, 0x90, 0xf8, + 0x29, 0x16, 0xff, 0xf7, 0x89, 0xff, 0x01, 0xe0, 0x01, 0x32, 0x04, 0xd0, + 0x20, 0x46, 0x29, 0x46, 0xff, 0xf7, 0x82, 0xff, 0x83, 0x19, 0x20, 0x46, + 0x19, 0x46, 0xbd, 0xe8, 0x70, 0x40, 0xfe, 0xf7, 0x6d, 0xbb, 0x2d, 0xe9, + 0xf0, 0x43, 0x91, 0xb0, 0x05, 0x46, 0xd0, 0xf8, 0xa8, 0x40, 0xfd, 0xf7, + 0x26, 0xfb, 0x1c, 0x23, 0x8d, 0xf8, 0x39, 0x30, 0x01, 0x23, 0x8d, 0xf8, + 0x38, 0x30, 0xb5, 0xf8, 0xda, 0x30, 0x5f, 0xfa, 0x80, 0xf8, 0x03, 0xf4, + 0x70, 0x42, 0xb2, 0xf5, 0x80, 0x5f, 0x08, 0xd1, 0xda, 0xb2, 0x40, 0x2a, + 0x01, 0xd8, 0x1b, 0x22, 0x00, 0xe0, 0x2d, 0x22, 0x8d, 0xf8, 0x39, 0x20, + 0x32, 0xe0, 0xb2, 0xf5, 0x00, 0x5f, 0x2f, 0xd1, 0xb4, 0xf8, 0x2a, 0x15, + 0x0b, 0xb2, 0x01, 0x33, 0x04, 0xd0, 0x4f, 0xf6, 0xff, 0x73, 0x00, 0x29, + 0x08, 0xbf, 0x19, 0x46, 0xb4, 0xf8, 0xf6, 0x33, 0x1a, 0xb2, 0x01, 0x32, + 0x05, 0xd0, 0x4f, 0xf6, 0xff, 0x72, 0x00, 0x2b, 0x08, 0xbf, 0x13, 0x46, + 0x01, 0xe0, 0x4f, 0xf4, 0x91, 0x73, 0xb4, 0xf8, 0x2c, 0x75, 0x94, 0xf8, + 0xf0, 0x23, 0x38, 0xb2, 0x01, 0x30, 0x04, 0xd0, 0x4f, 0xf6, 0xff, 0x70, + 0x00, 0x2f, 0x08, 0xbf, 0x07, 0x46, 0xb4, 0xf8, 0xf8, 0x63, 0x30, 0xb2, + 0x01, 0x30, 0x04, 0xd0, 0x4f, 0xf6, 0xff, 0x70, 0x00, 0x2e, 0x08, 0xbf, + 0x06, 0x46, 0x94, 0xf8, 0xf1, 0x93, 0x93, 0xe0, 0xdb, 0xb2, 0x40, 0x2b, + 0x2f, 0xd8, 0xb4, 0xf8, 0x2e, 0x15, 0x0b, 0xb2, 0x01, 0x33, 0x04, 0xd0, + 0x4f, 0xf6, 0xff, 0x73, 0x00, 0x29, 0x08, 0xbf, 0x19, 0x46, 0xb4, 0xf8, + 0xfa, 0x33, 0x1a, 0xb2, 0x01, 0x32, 0x05, 0xd0, 0x4f, 0xf6, 0xff, 0x72, + 0x00, 0x2b, 0x08, 0xbf, 0x13, 0x46, 0x01, 0xe0, 0x4f, 0xf4, 0x91, 0x73, + 0xb4, 0xf8, 0x30, 0x75, 0x94, 0xf8, 0x59, 0x25, 0x38, 0xb2, 0x01, 0x30, + 0x04, 0xd0, 0x4f, 0xf6, 0xff, 0x70, 0x00, 0x2f, 0x08, 0xbf, 0x07, 0x46, + 0xb4, 0xf8, 0x00, 0x64, 0x30, 0xb2, 0x01, 0x30, 0x04, 0xd0, 0x4f, 0xf6, + 0xff, 0x70, 0x00, 0x2e, 0x08, 0xbf, 0x06, 0x46, 0x94, 0xf8, 0x5b, 0x95, + 0x60, 0xe0, 0x8c, 0x2b, 0x2f, 0xd8, 0xb4, 0xf8, 0x32, 0x15, 0x0b, 0xb2, + 0x01, 0x33, 0x04, 0xd0, 0x4f, 0xf6, 0xff, 0x73, 0x00, 0x29, 0x08, 0xbf, + 0x19, 0x46, 0xb4, 0xf8, 0xfc, 0x33, 0x1a, 0xb2, 0x01, 0x32, 0x05, 0xd0, + 0x4f, 0xf6, 0xff, 0x72, 0x00, 0x2b, 0x08, 0xbf, 0x13, 0x46, 0x01, 0xe0, + 0x4f, 0xf4, 0x91, 0x73, 0xb4, 0xf8, 0x34, 0x75, 0x94, 0xf8, 0xf2, 0x23, + 0x38, 0xb2, 0x01, 0x30, 0x04, 0xd0, 0x4f, 0xf6, 0xff, 0x70, 0x00, 0x2f, + 0x08, 0xbf, 0x07, 0x46, 0xb4, 0xf8, 0x02, 0x64, 0x30, 0xb2, 0x01, 0x30, + 0x04, 0xd0, 0x4f, 0xf6, 0xff, 0x70, 0x00, 0x2e, 0x08, 0xbf, 0x06, 0x46, + 0x94, 0xf8, 0xf3, 0x93, 0x2e, 0xe0, 0xb4, 0xf8, 0x36, 0x15, 0x0b, 0xb2, + 0x01, 0x33, 0x04, 0xd0, 0x4f, 0xf6, 0xff, 0x73, 0x00, 0x29, 0x08, 0xbf, + 0x19, 0x46, 0xb4, 0xf8, 0xfe, 0x33, 0x1a, 0xb2, 0x01, 0x32, 0x05, 0xd0, + 0x4f, 0xf6, 0xff, 0x72, 0x00, 0x2b, 0x08, 0xbf, 0x13, 0x46, 0x01, 0xe0, + 0x4f, 0xf4, 0x91, 0x73, 0xb4, 0xf8, 0x38, 0x75, 0x94, 0xf8, 0x5a, 0x25, + 0x38, 0xb2, 0x01, 0x30, 0x04, 0xd0, 0x4f, 0xf6, 0xff, 0x70, 0x00, 0x2f, + 0x08, 0xbf, 0x07, 0x46, 0xb4, 0xf8, 0x04, 0x64, 0x30, 0xb2, 0x01, 0x30, + 0x04, 0xd0, 0x4f, 0xf6, 0xff, 0x70, 0x00, 0x2e, 0x08, 0xbf, 0x06, 0x46, + 0x94, 0xf8, 0x5c, 0x95, 0x09, 0xb2, 0x48, 0x1c, 0x05, 0xd0, 0x28, 0x46, + 0xff, 0xf7, 0x8e, 0xfe, 0x84, 0xf8, 0x07, 0x04, 0x14, 0xe0, 0x19, 0xb2, + 0x4b, 0x1c, 0x06, 0xd0, 0x28, 0x46, 0x0c, 0xaa, 0xff, 0xf7, 0xb0, 0xfc, + 0x9d, 0xf8, 0x39, 0x30, 0x08, 0xe0, 0x53, 0xb2, 0x01, 0x33, 0x02, 0xd0, + 0x84, 0xf8, 0x07, 0x24, 0x04, 0xe0, 0x9d, 0xf8, 0x39, 0x30, 0x0b, 0xb1, + 0x84, 0xf8, 0x07, 0x34, 0x39, 0xb2, 0x48, 0x1c, 0x05, 0xd0, 0x28, 0x46, + 0xff, 0xf7, 0x70, 0xfe, 0x84, 0xf8, 0x08, 0x04, 0x11, 0xe0, 0x31, 0xb2, + 0x4a, 0x1c, 0x08, 0xd0, 0x28, 0x46, 0x0c, 0xaa, 0xff, 0xf7, 0x92, 0xfc, + 0x9d, 0xf8, 0x39, 0x30, 0x84, 0xf8, 0x08, 0x34, 0x05, 0xe0, 0x4f, 0xfa, + 0x89, 0xf3, 0x01, 0x33, 0x18, 0xbf, 0x84, 0xf8, 0x08, 0x94, 0x94, 0xf9, + 0xef, 0x33, 0x01, 0x33, 0x02, 0xd0, 0xff, 0x23, 0x84, 0xf8, 0x08, 0x34, + 0x94, 0xf8, 0x08, 0x24, 0x51, 0xb2, 0x4b, 0x1c, 0x74, 0xd0, 0x94, 0xf8, + 0x07, 0x34, 0x58, 0xb2, 0x81, 0x42, 0xd8, 0xbf, 0x84, 0xf8, 0x08, 0x34, + 0x94, 0xf8, 0x08, 0x34, 0xd8, 0xbf, 0x84, 0xf8, 0x07, 0x24, 0x8d, 0xf8, + 0x39, 0x30, 0x00, 0x26, 0xdb, 0x23, 0x03, 0x93, 0x01, 0x27, 0x33, 0x46, + 0x28, 0x46, 0x31, 0x46, 0x0c, 0xaa, 0x00, 0x96, 0x01, 0x96, 0x02, 0x96, + 0x04, 0x97, 0x05, 0x96, 0xff, 0xf7, 0xc0, 0xf8, 0x18, 0x23, 0x09, 0x93, + 0x20, 0x23, 0x0b, 0x93, 0x08, 0x97, 0x0f, 0xab, 0x28, 0x46, 0x07, 0xa9, + 0x07, 0x93, 0x0a, 0x96, 0xfb, 0xf7, 0xf2, 0xfd, 0x06, 0xf1, 0x40, 0x03, + 0x28, 0x46, 0x07, 0xa9, 0x01, 0x36, 0x0a, 0x93, 0xfc, 0xf7, 0xcd, 0xf8, + 0x40, 0x2e, 0xee, 0xd1, 0x94, 0xf9, 0x07, 0x24, 0x94, 0xf9, 0x08, 0x34, + 0xd3, 0x18, 0x03, 0xeb, 0xd3, 0x73, 0x5b, 0x10, 0xa4, 0xf8, 0x68, 0x35, + 0xb5, 0xf8, 0xda, 0x30, 0x03, 0xf4, 0x70, 0x42, 0xb2, 0xf5, 0x00, 0x5f, + 0x05, 0xd1, 0xb4, 0xf8, 0x5e, 0x25, 0x12, 0xb1, 0xa4, 0xf8, 0x68, 0x25, + 0x10, 0xe0, 0xdb, 0xb2, 0x40, 0x2b, 0x03, 0xd8, 0xb4, 0xf8, 0x60, 0x35, + 0x13, 0xb1, 0x07, 0xe0, 0x8c, 0x2b, 0x02, 0xd8, 0xb4, 0xf8, 0x62, 0x35, + 0x13, 0xb9, 0xb4, 0xf8, 0x64, 0x35, 0x0b, 0xb1, 0xa4, 0xf8, 0x68, 0x35, + 0x28, 0x46, 0x40, 0xf2, 0x24, 0x51, 0x4f, 0xf4, 0x00, 0x42, 0x00, 0x23, + 0xf7, 0xf7, 0x16, 0xfd, 0x94, 0xf9, 0x66, 0x35, 0xb4, 0xf8, 0x68, 0x25, + 0x01, 0x33, 0x92, 0xfb, 0xf3, 0xf3, 0x9b, 0xb2, 0x28, 0x46, 0x40, 0xf2, + 0x25, 0x51, 0xff, 0x22, 0xf7, 0xf7, 0x08, 0xfd, 0x02, 0x23, 0x84, 0xf8, + 0x67, 0x35, 0x29, 0xe0, 0x01, 0x23, 0x84, 0xf8, 0x67, 0x35, 0x28, 0x46, + 0x40, 0xf2, 0x25, 0x51, 0xff, 0x22, 0x7f, 0x23, 0xf7, 0xf7, 0xfa, 0xfc, + 0x28, 0x46, 0x40, 0xf2, 0x25, 0x51, 0x4f, 0xf4, 0x80, 0x72, 0x00, 0x23, + 0xf7, 0xf7, 0xf2, 0xfc, 0x28, 0x46, 0x40, 0xf2, 0x25, 0x51, 0x4f, 0xf4, + 0x00, 0x72, 0x00, 0x23, 0xf7, 0xf7, 0xea, 0xfc, 0x28, 0x46, 0x40, 0xf2, + 0x25, 0x51, 0x4f, 0xf4, 0x80, 0x62, 0x00, 0x23, 0xf7, 0xf7, 0xe2, 0xfc, + 0x28, 0x46, 0x40, 0xf2, 0x25, 0x51, 0x4f, 0xf4, 0x00, 0x62, 0x00, 0x23, + 0xf7, 0xf7, 0xda, 0xfc, 0x00, 0x23, 0xa4, 0xf8, 0x6a, 0x35, 0x28, 0x46, + 0x40, 0xf2, 0x25, 0x51, 0x94, 0xf9, 0x66, 0x65, 0xf7, 0xf7, 0xdf, 0xfa, + 0x01, 0x36, 0xb6, 0xb2, 0xc0, 0xb2, 0x46, 0x43, 0x94, 0xf9, 0x66, 0x35, + 0xa4, 0xf8, 0x68, 0x65, 0x13, 0xb1, 0x28, 0x46, 0xfc, 0xf7, 0x3e, 0xfe, + 0x94, 0xf8, 0xef, 0x33, 0x28, 0x46, 0x5a, 0xb2, 0x01, 0x32, 0x08, 0xbf, + 0x94, 0xf8, 0x07, 0x34, 0x00, 0x21, 0x8d, 0xf8, 0x39, 0x30, 0xdb, 0x23, + 0x03, 0x93, 0x01, 0x23, 0x0c, 0xaa, 0x04, 0x93, 0x0b, 0x46, 0x00, 0x91, + 0x01, 0x91, 0x02, 0x91, 0x05, 0x91, 0xff, 0xf7, 0x11, 0xf8, 0x28, 0x46, + 0x41, 0x46, 0xfe, 0xf7, 0x71, 0xf9, 0x28, 0x46, 0x40, 0xf2, 0x71, 0x61, + 0xf7, 0xf7, 0xb3, 0xfa, 0xb4, 0xf8, 0x6a, 0x25, 0x40, 0xf2, 0x71, 0x61, + 0xa0, 0xeb, 0xc2, 0x02, 0x92, 0xb2, 0x28, 0x46, 0xf7, 0xf7, 0xb4, 0xfa, + 0x28, 0x46, 0xfb, 0xf7, 0xb8, 0xfd, 0x11, 0xb0, 0xbd, 0xe8, 0xf0, 0x83, + 0x2d, 0xe9, 0xf0, 0x4f, 0xc3, 0xb0, 0x05, 0x92, 0x04, 0x46, 0x16, 0x22, + 0x0f, 0x46, 0x13, 0xa8, 0x00, 0x21, 0x11, 0x93, 0xe8, 0xf3, 0xf8, 0xf4, + 0x65, 0x4b, 0x1f, 0xaa, 0x03, 0xf1, 0x08, 0x06, 0x18, 0x68, 0x59, 0x68, + 0x15, 0x46, 0x03, 0xc5, 0x08, 0x33, 0xb3, 0x42, 0x2a, 0x46, 0xf7, 0xd1, + 0x18, 0x68, 0x9b, 0x88, 0x28, 0x60, 0xab, 0x80, 0x5d, 0x4b, 0x23, 0xaa, + 0x03, 0xf1, 0x08, 0x06, 0x18, 0x68, 0x59, 0x68, 0x15, 0x46, 0x03, 0xc5, + 0x08, 0x33, 0xb3, 0x42, 0x2a, 0x46, 0xf7, 0xd1, 0x18, 0x68, 0x9b, 0x88, + 0x28, 0x60, 0xab, 0x80, 0x56, 0x4d, 0x48, 0xf2, 0x67, 0x01, 0x28, 0x68, + 0xad, 0xf8, 0xf0, 0x10, 0x69, 0x68, 0x48, 0xf2, 0x45, 0x22, 0x36, 0xab, + 0xad, 0xf8, 0xf4, 0x20, 0x03, 0xc3, 0x27, 0xaa, 0x05, 0xf1, 0x08, 0x03, + 0x10, 0x35, 0x18, 0x68, 0x59, 0x68, 0x16, 0x46, 0x03, 0xc6, 0x08, 0x33, + 0xab, 0x42, 0x32, 0x46, 0xf7, 0xd1, 0x18, 0x68, 0x4a, 0x4d, 0x9b, 0x88, + 0x30, 0x60, 0x69, 0x68, 0x28, 0x68, 0xb3, 0x80, 0x38, 0xab, 0x03, 0xc3, + 0x2b, 0xaa, 0xa5, 0xf1, 0x0e, 0x03, 0x06, 0x3d, 0x18, 0x68, 0x59, 0x68, + 0x16, 0x46, 0x03, 0xc6, 0x08, 0x33, 0xab, 0x42, 0x32, 0x46, 0xf7, 0xd1, + 0x18, 0x68, 0x9b, 0x88, 0x30, 0x60, 0xb3, 0x80, 0x47, 0xf6, 0x97, 0x33, + 0xad, 0xf8, 0xf8, 0x30, 0xad, 0xf8, 0xfc, 0x30, 0xe3, 0x69, 0x00, 0x26, + 0x98, 0x68, 0x30, 0x21, 0x3a, 0x96, 0x3b, 0x96, 0xd4, 0xf8, 0xa8, 0x50, + 0xed, 0xf3, 0xde, 0xf2, 0x06, 0x90, 0x00, 0x28, 0x00, 0xf0, 0x7d, 0x82, + 0x40, 0xf2, 0xdb, 0x61, 0x20, 0x46, 0xf7, 0xf7, 0x2c, 0xfa, 0x40, 0xf2, + 0xda, 0x61, 0x0c, 0x90, 0x20, 0x46, 0xf7, 0xf7, 0x26, 0xfa, 0x30, 0x49, + 0x0d, 0x90, 0x04, 0x22, 0x20, 0x46, 0xf7, 0xf7, 0x23, 0xfc, 0x05, 0x99, + 0x07, 0x29, 0x59, 0xd8, 0xdf, 0xe8, 0x01, 0xf0, 0x0b, 0x04, 0x58, 0x58, + 0x58, 0x17, 0x27, 0x1f, 0x07, 0x26, 0x0d, 0xf1, 0x8c, 0x0a, 0x13, 0xaa, + 0x0d, 0xf1, 0xac, 0x08, 0x51, 0xe0, 0x00, 0x21, 0x0a, 0x46, 0x20, 0x46, + 0x0b, 0x46, 0x00, 0x96, 0x0d, 0xf1, 0x7c, 0x0a, 0xfa, 0xf7, 0x2c, 0xf9, + 0x07, 0x26, 0x13, 0xaa, 0x43, 0xe0, 0x05, 0xf1, 0x82, 0x02, 0x01, 0x26, + 0x0d, 0xf1, 0xf0, 0x0a, 0x0d, 0xf1, 0xf8, 0x08, 0x3d, 0xe0, 0x05, 0xf1, + 0x82, 0x02, 0x01, 0x26, 0x0d, 0xf1, 0xf4, 0x0a, 0x0d, 0xf1, 0xfc, 0x08, + 0x35, 0xe0, 0x41, 0xab, 0x03, 0x33, 0x41, 0xaa, 0x00, 0x93, 0x41, 0xa9, + 0x01, 0x32, 0x0d, 0xf5, 0x83, 0x73, 0x20, 0x46, 0xf9, 0xf7, 0xf0, 0xff, + 0x9d, 0xf8, 0x04, 0x21, 0x9d, 0xf8, 0x05, 0x31, 0x00, 0x21, 0x43, 0xea, + 0x02, 0x23, 0xad, 0xf8, 0x5a, 0x30, 0x00, 0x23, 0x9d, 0xf8, 0x06, 0x21, + 0xad, 0xf8, 0x5c, 0x30, 0x9d, 0xf8, 0x07, 0x31, 0xad, 0xf8, 0x60, 0x10, + 0x43, 0xea, 0x02, 0x23, 0xad, 0xf8, 0x5e, 0x30, 0x04, 0x26, 0x0d, 0xf1, + 0xd8, 0x0a, 0x13, 0xaa, 0x0d, 0xf1, 0xe0, 0x08, 0x0d, 0xe0, 0x00, 0xbf, + 0xa8, 0xb8, 0x01, 0x00, 0xb6, 0xb8, 0x01, 0x00, 0xcc, 0xb8, 0x01, 0x00, + 0x78, 0xee, 0x01, 0x00, 0x00, 0x26, 0xb2, 0x46, 0x32, 0x46, 0x0d, 0xf1, + 0x9c, 0x08, 0x4f, 0xf0, 0x40, 0x0e, 0x10, 0x23, 0xdf, 0xf8, 0x20, 0xb2, + 0x8d, 0xe8, 0x08, 0x40, 0x00, 0x21, 0x0b, 0x23, 0x20, 0x46, 0xcd, 0xf8, + 0x08, 0xb0, 0xf7, 0xf7, 0x27, 0xfd, 0x05, 0x22, 0x7b, 0x49, 0x20, 0x46, + 0xf7, 0xf7, 0xae, 0xfb, 0x20, 0x46, 0xf9, 0xf7, 0x40, 0xfb, 0x4f, 0xf4, + 0x80, 0x52, 0x13, 0x46, 0x0e, 0x90, 0x40, 0xf2, 0xa4, 0x41, 0x20, 0x46, + 0xf7, 0xf7, 0x90, 0xfb, 0x00, 0x21, 0x20, 0x46, 0xfd, 0xf7, 0x96, 0xfc, + 0x40, 0xf2, 0xdb, 0x41, 0x20, 0x46, 0xf7, 0xf7, 0x96, 0xf9, 0x70, 0x49, + 0x06, 0x22, 0x0f, 0x90, 0x20, 0x46, 0xf7, 0xf7, 0x93, 0xfb, 0xb4, 0xf8, + 0xda, 0x30, 0x20, 0x46, 0x03, 0xf4, 0x70, 0x43, 0xb3, 0xf5, 0x00, 0x5f, + 0x0c, 0xbf, 0x6a, 0x49, 0x6a, 0x49, 0x12, 0x22, 0xf7, 0xf7, 0x86, 0xfb, + 0x40, 0xf2, 0xd7, 0x41, 0x20, 0x46, 0xf7, 0xf7, 0x7e, 0xf9, 0x06, 0x99, + 0x10, 0x90, 0x20, 0x46, 0xfb, 0xf7, 0xfa, 0xf9, 0x20, 0x46, 0x40, 0xf2, + 0x3b, 0x41, 0xf7, 0xf7, 0x74, 0xf9, 0xc0, 0xf3, 0x80, 0x10, 0x07, 0x90, + 0x18, 0xb1, 0x20, 0x46, 0x3a, 0xa9, 0xf9, 0xf7, 0x0c, 0xfb, 0x57, 0xb9, + 0x07, 0x9a, 0x1a, 0xb9, 0x20, 0x46, 0x29, 0x8e, 0xfe, 0xf7, 0x1e, 0xf8, + 0x20, 0x46, 0x34, 0xa9, 0xf9, 0xf7, 0x01, 0xfb, 0x34, 0xaf, 0xb7, 0xf8, + 0x02, 0x90, 0x3b, 0x88, 0x4f, 0xea, 0x09, 0x19, 0x49, 0xea, 0x03, 0x29, + 0xbb, 0x88, 0x38, 0x68, 0x79, 0x68, 0x49, 0xea, 0x03, 0x09, 0x32, 0xab, + 0x03, 0xc3, 0x1f, 0xfa, 0x89, 0xf9, 0x2f, 0xa8, 0x00, 0x21, 0x0a, 0x22, + 0xe8, 0xf3, 0xac, 0xf3, 0xb9, 0xf1, 0x00, 0x0f, 0x0a, 0xd1, 0x2f, 0xa8, + 0x4b, 0x49, 0x0a, 0x22, 0xad, 0xf8, 0xc8, 0x90, 0xad, 0xf8, 0xca, 0x90, + 0xad, 0xf8, 0xcc, 0x90, 0xe8, 0xf3, 0x3a, 0xf3, 0x20, 0x46, 0x32, 0xa9, + 0xf9, 0xf7, 0x85, 0xfc, 0x00, 0x27, 0x04, 0x22, 0x20, 0x46, 0x44, 0x49, + 0xf7, 0xf7, 0x36, 0xfb, 0x4f, 0xf0, 0x10, 0x09, 0x39, 0x46, 0x0a, 0x23, + 0x20, 0x46, 0x41, 0x4a, 0x01, 0x97, 0xcd, 0xf8, 0x00, 0x90, 0xcd, 0xf8, + 0x08, 0xb0, 0xf7, 0xf7, 0x9d, 0xfc, 0x20, 0x23, 0x39, 0x46, 0x01, 0x93, + 0x20, 0x46, 0x0a, 0x23, 0x3a, 0x4a, 0xcd, 0xf8, 0x00, 0x90, 0xcd, 0xf8, + 0x08, 0xb0, 0xf7, 0xf7, 0x91, 0xfc, 0x20, 0x46, 0x40, 0xf2, 0x53, 0x41, + 0x40, 0xf2, 0xa4, 0x72, 0xf7, 0xf7, 0x1e, 0xf9, 0xb5, 0xf8, 0xc8, 0x73, + 0x40, 0xf6, 0xa6, 0x63, 0x00, 0x2f, 0x08, 0xbf, 0x1f, 0x46, 0x05, 0x9b, + 0x05, 0x2b, 0x01, 0xd1, 0x7f, 0x42, 0xbf, 0xb2, 0x04, 0xf5, 0x80, 0x53, + 0xdb, 0x69, 0x2b, 0xb1, 0x20, 0x46, 0xff, 0xf7, 0x2b, 0xfb, 0x05, 0x20, + 0xec, 0xf3, 0xea, 0xf6, 0x3f, 0xb2, 0x4f, 0xf4, 0x7a, 0x71, 0x01, 0x23, + 0x79, 0x43, 0x58, 0x22, 0x20, 0x46, 0xff, 0xf7, 0x7b, 0xfa, 0x40, 0xf2, + 0xda, 0x61, 0x4f, 0xf6, 0xff, 0x72, 0x20, 0x46, 0xf7, 0xf7, 0xf8, 0xf8, + 0xb4, 0xf8, 0xda, 0x30, 0x20, 0x46, 0x03, 0xf4, 0x70, 0x43, 0xb3, 0xf5, + 0x00, 0x5f, 0x0b, 0xbf, 0x95, 0xf8, 0x95, 0x15, 0x95, 0xf8, 0x96, 0x25, + 0x05, 0x91, 0x05, 0x92, 0xfc, 0xf7, 0x57, 0xff, 0xff, 0x23, 0xc0, 0xb2, + 0xcd, 0xf8, 0x24, 0x80, 0xb1, 0x46, 0x0a, 0x90, 0x2e, 0x46, 0x08, 0x93, + 0x4f, 0xf0, 0x00, 0x08, 0x55, 0x46, 0xa0, 0xe0, 0x00, 0x21, 0xad, 0xf8, + 0x00, 0x11, 0x35, 0xf8, 0x02, 0x7b, 0x05, 0x9a, 0x07, 0xf4, 0x70, 0x67, + 0x3f, 0x0a, 0x2a, 0xb3, 0x04, 0x2f, 0x03, 0xd0, 0x08, 0x9b, 0x04, 0x2b, + 0x1e, 0xd1, 0x19, 0xe0, 0x0a, 0x9b, 0x05, 0x9a, 0x99, 0x18, 0xc9, 0xb2, + 0x4b, 0xb2, 0x31, 0xea, 0x23, 0x01, 0x28, 0xbf, 0x7f, 0x21, 0x10, 0xe0, + 0x56, 0xef, 0x01, 0x00, 0xaa, 0xe6, 0x01, 0x00, 0xb6, 0xe6, 0x01, 0x00, + 0x3a, 0xed, 0x01, 0x00, 0xd2, 0xeb, 0x01, 0x00, 0x5e, 0xed, 0x01, 0x00, + 0xec, 0xe6, 0x01, 0x00, 0x6b, 0x56, 0x01, 0x00, 0x0a, 0x99, 0x20, 0x46, + 0xfb, 0xf7, 0xad, 0xff, 0xf9, 0xb2, 0x08, 0x91, 0x09, 0x9b, 0x42, 0xa9, + 0x33, 0xf8, 0x02, 0x2b, 0x09, 0x93, 0x01, 0xeb, 0x47, 0x03, 0x33, 0xf8, + 0x4c, 0x3c, 0x1b, 0xb1, 0xd2, 0xb2, 0x42, 0xea, 0x03, 0x22, 0x92, 0xb2, + 0x03, 0x3f, 0xbf, 0xb2, 0x20, 0x46, 0x40, 0xf2, 0x52, 0x41, 0xf7, 0xf7, + 0x97, 0xf8, 0x01, 0x2f, 0x0b, 0x97, 0x15, 0xd8, 0x6b, 0x4b, 0x10, 0x27, + 0x4f, 0xf0, 0x45, 0x0a, 0x02, 0x93, 0x20, 0x46, 0x00, 0x21, 0x0d, 0xf1, + 0xfe, 0x02, 0x01, 0x23, 0x8d, 0xe8, 0x80, 0x04, 0xf7, 0xf7, 0xe5, 0xfb, + 0x20, 0x46, 0x00, 0x21, 0x40, 0xaa, 0x01, 0x23, 0x8d, 0xe8, 0x80, 0x0c, + 0xf7, 0xf7, 0xea, 0xfb, 0x20, 0x46, 0x40, 0xf2, 0x51, 0x41, 0x35, 0xf8, + 0x02, 0x2c, 0xf7, 0xf7, 0x77, 0xf8, 0x20, 0x46, 0xfa, 0xf7, 0xbb, 0xfa, + 0x00, 0x28, 0x7b, 0xd0, 0x60, 0x23, 0xdf, 0xf8, 0x68, 0xa1, 0x10, 0x27, + 0x00, 0x21, 0x01, 0x93, 0x20, 0x46, 0x0b, 0x23, 0x19, 0xaa, 0x00, 0x97, + 0xcd, 0xf8, 0x08, 0xa0, 0xf7, 0xf7, 0xc3, 0xfb, 0x40, 0x23, 0x01, 0x93, + 0x00, 0x21, 0x19, 0xaa, 0x0b, 0x23, 0x20, 0x46, 0x00, 0x97, 0xcd, 0xf8, + 0x08, 0xb0, 0xf7, 0xf7, 0xc5, 0xfb, 0x0b, 0x9a, 0x01, 0x2a, 0x0b, 0xd8, + 0x45, 0x23, 0x01, 0x93, 0x4c, 0x4b, 0x20, 0x46, 0x02, 0x93, 0x00, 0x21, + 0x0d, 0xf1, 0xfe, 0x02, 0x01, 0x23, 0x00, 0x97, 0xf7, 0xf7, 0xb6, 0xfb, + 0x10, 0x23, 0x60, 0x27, 0x8d, 0xe8, 0x88, 0x00, 0x20, 0x46, 0x00, 0x21, + 0x06, 0xf1, 0x82, 0x02, 0x0b, 0x23, 0xcd, 0xf8, 0x08, 0xa0, 0xf7, 0xf7, + 0x9c, 0xfb, 0x08, 0xf1, 0x01, 0x08, 0xc8, 0x45, 0x7f, 0xf4, 0x5c, 0xaf, + 0x60, 0x23, 0x01, 0x93, 0x3c, 0x4b, 0x06, 0xf1, 0x82, 0x07, 0x35, 0x46, + 0x02, 0x93, 0x10, 0x26, 0x20, 0x46, 0x00, 0x21, 0x3a, 0x46, 0x0b, 0x23, + 0x00, 0x96, 0xf7, 0xf7, 0x88, 0xfb, 0x01, 0x23, 0xa5, 0xf8, 0x98, 0x30, + 0x50, 0x23, 0x01, 0x93, 0x20, 0x46, 0x00, 0x21, 0x3a, 0x46, 0x04, 0x23, + 0x00, 0x96, 0xcd, 0xf8, 0x08, 0xb0, 0xf7, 0xf7, 0x87, 0xfb, 0x55, 0x23, + 0x01, 0x93, 0x20, 0x46, 0x00, 0x21, 0x05, 0xf1, 0x8c, 0x02, 0x02, 0x23, + 0x00, 0x96, 0xcd, 0xf8, 0x08, 0xb0, 0xf7, 0xf7, 0x7b, 0xfb, 0x20, 0x46, + 0xf9, 0xf7, 0xc0, 0xf8, 0xa0, 0xb1, 0x40, 0xa9, 0x0d, 0xf5, 0x81, 0x72, + 0x20, 0x46, 0xfb, 0xf7, 0x57, 0xfd, 0x20, 0x46, 0xfb, 0xf7, 0xec, 0xfb, + 0xbd, 0xf8, 0x00, 0x11, 0x05, 0x46, 0xbd, 0xf8, 0x02, 0x21, 0x20, 0x46, + 0xfc, 0xf7, 0xca, 0xfb, 0x20, 0x46, 0x29, 0x46, 0xfd, 0xf7, 0xfa, 0xfb, + 0x11, 0x99, 0x11, 0xb9, 0x20, 0x46, 0xff, 0xf7, 0x11, 0xfa, 0x20, 0x46, + 0x06, 0x99, 0xf9, 0xf7, 0xf1, 0xfe, 0x20, 0x46, 0x40, 0xf2, 0xd7, 0x41, + 0x10, 0x9a, 0xf6, 0xf7, 0xe7, 0xff, 0xe3, 0x69, 0x06, 0x99, 0x98, 0x68, + 0x30, 0x22, 0xed, 0xf3, 0x8f, 0xf0, 0x20, 0x46, 0x40, 0xf2, 0xdb, 0x41, + 0x0f, 0x9a, 0xf6, 0xf7, 0xdb, 0xff, 0x00, 0x22, 0x20, 0x46, 0x40, 0xf2, + 0x53, 0x41, 0xf6, 0xf7, 0xd5, 0xff, 0x07, 0x9a, 0x1a, 0xb1, 0x20, 0x46, + 0x3a, 0xa9, 0xf9, 0xf7, 0x10, 0xfb, 0x20, 0x46, 0x0e, 0x99, 0xfd, 0xf7, + 0xbb, 0xfa, 0x20, 0x46, 0x40, 0xf2, 0xda, 0x61, 0x0d, 0x9a, 0xf6, 0xf7, + 0xc5, 0xff, 0x20, 0x46, 0x40, 0xf2, 0xdb, 0x61, 0x0c, 0x9a, 0xf6, 0xf7, + 0xbf, 0xff, 0x43, 0xb0, 0xbd, 0xe8, 0xf0, 0x8f, 0xa5, 0x50, 0x01, 0x00, + 0x6b, 0x56, 0x01, 0x00, 0x2d, 0xe9, 0xf0, 0x4f, 0x87, 0xb0, 0x04, 0x46, + 0xf9, 0xf7, 0x3f, 0xf9, 0x04, 0xa9, 0x06, 0x46, 0x20, 0x46, 0xd4, 0xf8, + 0xa8, 0x50, 0xf9, 0xf7, 0x40, 0xf9, 0x20, 0x46, 0xf9, 0xf7, 0x5a, 0xf9, + 0x40, 0xf2, 0xd7, 0x41, 0x02, 0x90, 0x20, 0x46, 0xf6, 0xf7, 0x97, 0xff, + 0x03, 0x90, 0x20, 0x46, 0xfd, 0xf7, 0x8e, 0xfb, 0x83, 0x46, 0x26, 0xb9, + 0x20, 0x46, 0xfc, 0xf7, 0x08, 0xfe, 0x82, 0x46, 0x01, 0xe0, 0x4f, 0xf0, + 0xff, 0x0a, 0xb4, 0xf8, 0xda, 0x30, 0x4f, 0xf0, 0x2a, 0x08, 0x03, 0xf4, + 0x70, 0x43, 0xb3, 0xf5, 0x00, 0x5f, 0x0c, 0xbf, 0x95, 0xf8, 0x1e, 0x75, + 0x95, 0xf8, 0x1f, 0x75, 0x20, 0x46, 0x7f, 0xb2, 0x39, 0x46, 0x0f, 0x22, + 0x3c, 0x23, 0xcd, 0xf8, 0x00, 0x80, 0xff, 0xf7, 0xa3, 0xfa, 0x95, 0xf8, + 0x46, 0x95, 0xb9, 0xf1, 0x00, 0x0f, 0x00, 0xf0, 0x92, 0x80, 0x20, 0x46, + 0x40, 0xf2, 0xeb, 0x41, 0xf6, 0xf7, 0x69, 0xff, 0x12, 0x21, 0xc0, 0xf3, + 0x40, 0x23, 0x01, 0x22, 0x20, 0x46, 0xf7, 0xf7, 0x11, 0xf9, 0x6a, 0x78, + 0x00, 0x21, 0x52, 0x1a, 0x18, 0xbf, 0x01, 0x22, 0x0b, 0x46, 0x20, 0x46, + 0xff, 0xf7, 0xb6, 0xfc, 0x20, 0x46, 0xfb, 0xf7, 0x4b, 0xfb, 0x40, 0xf3, + 0x07, 0x23, 0x40, 0xb2, 0xa5, 0xf8, 0x4a, 0x35, 0xa5, 0xf8, 0x4c, 0x05, + 0x40, 0xf2, 0xeb, 0x41, 0x20, 0x46, 0xf6, 0xf7, 0x4a, 0xff, 0x00, 0xf4, + 0x80, 0x63, 0x9b, 0x12, 0x20, 0x46, 0x5b, 0x02, 0x40, 0xf2, 0xeb, 0x41, + 0x4f, 0xf4, 0x00, 0x72, 0xf7, 0xf7, 0x30, 0xf9, 0x00, 0x21, 0x07, 0x22, + 0x0b, 0x46, 0x20, 0x46, 0xff, 0xf7, 0x96, 0xfc, 0x20, 0x46, 0xfb, 0xf7, + 0x2b, 0xfb, 0x40, 0xf3, 0x07, 0x23, 0x40, 0xb2, 0xa5, 0xf8, 0x4e, 0x35, + 0xa5, 0xf8, 0x50, 0x05, 0xff, 0x22, 0x20, 0x46, 0xb5, 0xf8, 0x4a, 0x35, + 0x40, 0xf6, 0x52, 0x11, 0xf7, 0xf7, 0x18, 0xf9, 0x20, 0x46, 0xff, 0x22, + 0xb5, 0xf8, 0x4c, 0x35, 0x40, 0xf6, 0x53, 0x11, 0xf7, 0xf7, 0x10, 0xf9, + 0x20, 0x46, 0xff, 0x22, 0xb5, 0xf8, 0x4a, 0x35, 0x40, 0xf6, 0x56, 0x11, + 0xf7, 0xf7, 0x08, 0xf9, 0x20, 0x46, 0xff, 0x22, 0xb5, 0xf8, 0x4c, 0x35, + 0x40, 0xf6, 0x57, 0x11, 0xf7, 0xf7, 0x00, 0xf9, 0x20, 0x46, 0xff, 0x22, + 0xb5, 0xf8, 0x4e, 0x35, 0x40, 0xf6, 0x48, 0x11, 0xf7, 0xf7, 0xf8, 0xf8, + 0xff, 0x22, 0x20, 0x46, 0xb5, 0xf8, 0x50, 0x35, 0x40, 0xf6, 0x49, 0x11, + 0xf7, 0xf7, 0xf0, 0xf8, 0x95, 0xf8, 0x4c, 0x35, 0xb5, 0xf8, 0x4a, 0x15, + 0x20, 0x46, 0x43, 0xea, 0x01, 0x21, 0x89, 0xb2, 0xfd, 0xf7, 0x04, 0xfb, + 0x95, 0xf8, 0x47, 0x35, 0x20, 0x46, 0x9b, 0x02, 0x40, 0xf2, 0xeb, 0x41, + 0x4f, 0xf4, 0x80, 0x62, 0x03, 0xf4, 0x7c, 0x43, 0xf7, 0xf7, 0xda, 0xf8, + 0x95, 0xf8, 0x48, 0x35, 0x20, 0x46, 0x5b, 0x02, 0x40, 0xf2, 0xeb, 0x41, + 0x4f, 0xf4, 0x00, 0x72, 0x03, 0xf4, 0x7e, 0x43, 0xf7, 0xf7, 0xce, 0xf8, + 0x10, 0xe0, 0x0f, 0x22, 0x3c, 0x23, 0x20, 0x46, 0x39, 0x46, 0xcd, 0xf8, + 0x00, 0x80, 0xff, 0xf7, 0x03, 0xfa, 0x6a, 0x78, 0x20, 0x46, 0x00, 0x32, + 0x49, 0x46, 0x18, 0xbf, 0x01, 0x22, 0x4b, 0x46, 0xff, 0xf7, 0x28, 0xfc, + 0x20, 0x46, 0xf8, 0xf7, 0x73, 0xff, 0x10, 0xb1, 0x20, 0x46, 0xfb, 0xf7, + 0xcc, 0xfa, 0x00, 0x21, 0x0b, 0x46, 0x7f, 0x22, 0x20, 0x46, 0xfc, 0xf7, + 0x8a, 0xf9, 0x20, 0x46, 0x59, 0x46, 0xfb, 0xf7, 0xb1, 0xfd, 0x20, 0x46, + 0x02, 0x99, 0xf9, 0xf7, 0x89, 0xfa, 0x20, 0x46, 0x04, 0xa9, 0xf9, 0xf7, + 0xfe, 0xf9, 0x20, 0x46, 0x40, 0xf2, 0xd7, 0x41, 0x03, 0x9a, 0xf6, 0xf7, + 0xb7, 0xfe, 0x20, 0x46, 0x1e, 0xb1, 0x31, 0x46, 0xfd, 0xf7, 0xa2, 0xf9, + 0x02, 0xe0, 0x51, 0x46, 0xfd, 0xf7, 0x5c, 0xfd, 0x07, 0xb0, 0xbd, 0xe8, + 0xf0, 0x8f, 0x00, 0x00, 0x2d, 0xe9, 0xf0, 0x4f, 0x98, 0x46, 0xc3, 0x69, + 0xd0, 0xf8, 0xa8, 0x60, 0xa7, 0xb0, 0x04, 0x46, 0x0f, 0x46, 0x98, 0x68, + 0x4f, 0xf4, 0x83, 0x71, 0x15, 0x46, 0xec, 0xf3, 0x39, 0xf7, 0x82, 0x46, + 0x00, 0x28, 0x00, 0xf0, 0xe8, 0x81, 0xb8, 0xf1, 0x02, 0x0f, 0x16, 0xd1, + 0x0e, 0xe0, 0x3b, 0x46, 0x19, 0x78, 0x94, 0xf8, 0xda, 0x20, 0x01, 0x3d, + 0x06, 0x3f, 0x91, 0x42, 0x0a, 0xd1, 0x20, 0x46, 0x59, 0x88, 0x9a, 0x88, + 0xf9, 0xf7, 0x63, 0xfa, 0x01, 0x25, 0xcc, 0xe1, 0x6b, 0x1e, 0x06, 0x22, + 0x02, 0xfb, 0x03, 0x77, 0x00, 0x2d, 0xea, 0xd1, 0xc5, 0xe1, 0xb8, 0xf1, + 0x01, 0x0f, 0x40, 0xf0, 0xc1, 0x81, 0x20, 0x46, 0xf9, 0xf7, 0x03, 0xf8, + 0x00, 0x21, 0x09, 0x90, 0x20, 0x46, 0xfd, 0xf7, 0x61, 0xf9, 0x00, 0x25, + 0x7b, 0x4f, 0x20, 0x46, 0x79, 0x5b, 0xf6, 0xf7, 0x23, 0xfe, 0x18, 0xab, + 0x58, 0x53, 0x02, 0x35, 0x18, 0x2d, 0xf5, 0xd1, 0x40, 0xf2, 0x31, 0x61, + 0x20, 0x46, 0xf6, 0xf7, 0x56, 0xfe, 0x15, 0x22, 0x0a, 0x90, 0x40, 0xf2, + 0x31, 0x61, 0x20, 0x46, 0xf7, 0xf7, 0x32, 0xf8, 0x40, 0xf2, 0x4c, 0x41, + 0x20, 0x46, 0xf6, 0xf7, 0x4a, 0xfe, 0x40, 0xf2, 0x4d, 0x41, 0x0b, 0x90, + 0x20, 0x46, 0xf6, 0xf7, 0x44, 0xfe, 0x4f, 0xf4, 0x96, 0x61, 0x0c, 0x90, + 0x20, 0x46, 0xf6, 0xf7, 0x3e, 0xfe, 0x40, 0xf2, 0xb1, 0x41, 0x0d, 0x90, + 0x20, 0x46, 0xf6, 0xf7, 0x38, 0xfe, 0x40, 0xf2, 0xf9, 0x41, 0x0e, 0x90, + 0x20, 0x46, 0xf6, 0xf7, 0x32, 0xfe, 0x40, 0xf2, 0xfa, 0x41, 0x0f, 0x90, + 0x20, 0x46, 0xf6, 0xf7, 0x2c, 0xfe, 0x40, 0xf6, 0x38, 0x11, 0x10, 0x90, + 0x20, 0x46, 0xf6, 0xf7, 0x26, 0xfe, 0x40, 0xf6, 0x39, 0x11, 0x11, 0x90, + 0x20, 0x46, 0xf6, 0xf7, 0x20, 0xfe, 0x40, 0xf2, 0x3b, 0x41, 0x12, 0x90, + 0x20, 0x46, 0xf6, 0xf7, 0x1a, 0xfe, 0x40, 0xf2, 0x3c, 0x41, 0x13, 0x90, + 0x20, 0x46, 0xf6, 0xf7, 0x14, 0xfe, 0x40, 0xf2, 0xda, 0x61, 0x14, 0x90, + 0x20, 0x46, 0xf6, 0xf7, 0x0e, 0xfe, 0x40, 0xf2, 0xdb, 0x61, 0x15, 0x90, + 0x20, 0x46, 0xf6, 0xf7, 0x08, 0xfe, 0x40, 0xf2, 0xb7, 0x41, 0x16, 0x90, + 0x20, 0x46, 0xf6, 0xf7, 0x02, 0xfe, 0x40, 0xf2, 0x3b, 0x41, 0x17, 0x90, + 0x20, 0x46, 0xf6, 0xf7, 0xfc, 0xfd, 0xc0, 0xf3, 0x80, 0x19, 0xb9, 0xf1, + 0x00, 0x0f, 0x07, 0xd0, 0x20, 0x46, 0x24, 0xa9, 0xf8, 0xf7, 0x93, 0xff, + 0x96, 0xf8, 0xc1, 0x62, 0x07, 0x96, 0x01, 0xe0, 0xcd, 0xf8, 0x1c, 0x90, + 0x20, 0x46, 0x30, 0x99, 0xfd, 0xf7, 0xa2, 0xfc, 0x06, 0x22, 0x20, 0x46, + 0x3d, 0x49, 0xf6, 0xf7, 0xe7, 0xff, 0xb4, 0xf8, 0xda, 0x30, 0x03, 0xf4, + 0x70, 0x43, 0xb3, 0xf5, 0x00, 0x5f, 0x04, 0xd1, 0x20, 0x46, 0x98, 0x21, + 0x03, 0x22, 0xf6, 0xf7, 0xb2, 0xfd, 0x20, 0x46, 0x36, 0x49, 0x19, 0x22, + 0xf6, 0xf7, 0xd6, 0xff, 0x20, 0x46, 0x35, 0x49, 0x18, 0x22, 0xf6, 0xf7, + 0xd1, 0xff, 0xb4, 0xf8, 0xda, 0x30, 0x4f, 0xf0, 0x03, 0x08, 0x03, 0xf4, + 0x70, 0x43, 0xb3, 0xf5, 0x00, 0x5f, 0x14, 0xbf, 0x04, 0x23, 0x00, 0x23, + 0x08, 0x93, 0x23, 0xe1, 0xb3, 0xb2, 0x00, 0x93, 0xbb, 0xb2, 0x00, 0x25, + 0x01, 0x93, 0x1f, 0xfa, 0x88, 0xf3, 0x2a, 0x46, 0x02, 0x93, 0x20, 0x46, + 0x08, 0x9b, 0x29, 0x46, 0x03, 0x95, 0x04, 0x95, 0xf9, 0xf7, 0xd4, 0xf9, + 0x20, 0x46, 0x01, 0x21, 0xf9, 0xf7, 0x35, 0xf9, 0x2b, 0x46, 0x20, 0x46, + 0x22, 0x49, 0x3c, 0x22, 0xfe, 0xf7, 0x2e, 0xff, 0x20, 0x46, 0x4f, 0xf4, + 0x89, 0x71, 0x2a, 0x46, 0xf6, 0xf7, 0x7b, 0xfd, 0x21, 0xab, 0x00, 0x93, + 0x4f, 0xf4, 0xfa, 0x7b, 0x2b, 0x46, 0x20, 0x46, 0x4f, 0xf4, 0x80, 0x61, + 0x20, 0x22, 0xcd, 0xf8, 0x04, 0xb0, 0xf9, 0xf7, 0x4b, 0xff, 0x03, 0x46, + 0x30, 0xb9, 0x17, 0x48, 0x06, 0x93, 0xf5, 0xf7, 0xc1, 0xfb, 0x06, 0x9b, + 0x1d, 0x46, 0x45, 0xe0, 0x2b, 0x46, 0x20, 0x46, 0x11, 0x49, 0x78, 0x22, + 0xfe, 0xf7, 0x0c, 0xff, 0x20, 0x46, 0x4f, 0xf4, 0x89, 0x71, 0x2a, 0x46, + 0xf6, 0xf7, 0x59, 0xfd, 0x1e, 0xab, 0x8d, 0xe8, 0x08, 0x08, 0x20, 0x46, + 0x4f, 0xf4, 0x80, 0x61, 0x20, 0x22, 0x2b, 0x46, 0xf9, 0xf7, 0x2c, 0xff, + 0xa0, 0xb9, 0x83, 0x46, 0x08, 0x48, 0xf5, 0xf7, 0xa3, 0xfb, 0x5d, 0x46, + 0x28, 0xe0, 0x00, 0xbf, 0x00, 0xe7, 0x01, 0x00, 0x2c, 0xee, 0x01, 0x00, + 0xca, 0xee, 0x01, 0x00, 0xfc, 0xee, 0x01, 0x00, 0x80, 0x84, 0x1e, 0x00, + 0x2e, 0xe8, 0x01, 0x00, 0x48, 0xe8, 0x01, 0x00, 0x22, 0x9a, 0x1f, 0x99, + 0x23, 0x9b, 0xb1, 0xeb, 0x42, 0x0f, 0x0d, 0xd9, 0x02, 0xeb, 0x82, 0x02, + 0x91, 0x42, 0x09, 0xd2, 0x20, 0x9a, 0xb2, 0xeb, 0x43, 0x0f, 0x05, 0xd9, + 0x03, 0xeb, 0x83, 0x03, 0x9a, 0x42, 0x2c, 0xbf, 0x00, 0x25, 0x01, 0x25, + 0x16, 0xf1, 0xff, 0x36, 0x02, 0xd3, 0x00, 0x2d, 0x84, 0xd0, 0x01, 0x25, + 0x17, 0xf1, 0xff, 0x37, 0x03, 0xd3, 0x00, 0x2d, 0x00, 0xf0, 0xa0, 0x80, + 0x01, 0x25, 0x18, 0xf1, 0xff, 0x38, 0x02, 0xd3, 0x00, 0x2d, 0x00, 0xf0, + 0x9b, 0x80, 0x20, 0x46, 0x40, 0xf2, 0xd1, 0x61, 0x04, 0x22, 0x00, 0x23, + 0xf6, 0xf7, 0x22, 0xff, 0x2d, 0xb1, 0x20, 0x46, 0x4f, 0xf4, 0x80, 0x61, + 0xfa, 0xf7, 0x90, 0xfe, 0x05, 0x46, 0x20, 0x46, 0xfe, 0xf7, 0x52, 0xff, + 0x20, 0x46, 0x40, 0xf2, 0x31, 0x61, 0x0a, 0x9a, 0xf6, 0xf7, 0x2c, 0xfd, + 0x20, 0x46, 0x40, 0xf2, 0x4c, 0x41, 0x0b, 0x9a, 0xf6, 0xf7, 0x26, 0xfd, + 0x20, 0x46, 0x40, 0xf2, 0x4d, 0x41, 0x0c, 0x9a, 0xf6, 0xf7, 0x20, 0xfd, + 0x20, 0x46, 0x4f, 0xf4, 0x96, 0x61, 0x0d, 0x9a, 0xf6, 0xf7, 0x1a, 0xfd, + 0x20, 0x46, 0x40, 0xf2, 0xb1, 0x41, 0x0e, 0x9a, 0xf6, 0xf7, 0x14, 0xfd, + 0x20, 0x46, 0x40, 0xf2, 0xf9, 0x41, 0x0f, 0x9a, 0xf6, 0xf7, 0x0e, 0xfd, + 0x20, 0x46, 0x40, 0xf2, 0xfa, 0x41, 0x10, 0x9a, 0xf6, 0xf7, 0x08, 0xfd, + 0x20, 0x46, 0x40, 0xf6, 0x38, 0x11, 0x11, 0x9a, 0xf6, 0xf7, 0x02, 0xfd, + 0x20, 0x46, 0x40, 0xf6, 0x39, 0x11, 0x12, 0x9a, 0xf6, 0xf7, 0xfc, 0xfc, + 0x20, 0x46, 0x40, 0xf2, 0x3b, 0x41, 0x13, 0x9a, 0xf6, 0xf7, 0xf6, 0xfc, + 0x20, 0x46, 0x40, 0xf2, 0x3c, 0x41, 0x14, 0x9a, 0xf6, 0xf7, 0xf0, 0xfc, + 0x20, 0x46, 0x40, 0xf2, 0xda, 0x61, 0x15, 0x9a, 0xf6, 0xf7, 0xea, 0xfc, + 0x20, 0x46, 0x40, 0xf2, 0xdb, 0x61, 0x16, 0x9a, 0xf6, 0xf7, 0xe4, 0xfc, + 0x20, 0x46, 0x40, 0xf2, 0xb7, 0x41, 0x17, 0x9a, 0xf6, 0xf7, 0xde, 0xfc, + 0x20, 0x46, 0x40, 0xf2, 0x4c, 0x41, 0x04, 0x22, 0x00, 0x23, 0xf6, 0xf7, + 0xbd, 0xfe, 0x00, 0x26, 0x17, 0x4b, 0x20, 0x46, 0x99, 0x5b, 0x18, 0xab, + 0x9a, 0x5b, 0x02, 0x36, 0xf6, 0xf7, 0x9d, 0xfc, 0x18, 0x2e, 0xf5, 0xd1, + 0x20, 0x46, 0xb9, 0xf1, 0x00, 0x0f, 0x03, 0xd0, 0x07, 0x99, 0xfd, 0xf7, + 0x73, 0xfb, 0x02, 0xe0, 0x49, 0x46, 0xf8, 0xf7, 0xe6, 0xff, 0x20, 0x46, + 0x09, 0x99, 0xfc, 0xf7, 0xad, 0xff, 0x20, 0x46, 0x00, 0x21, 0xf9, 0xf7, + 0x36, 0xf8, 0x00, 0xe0, 0x00, 0x25, 0xe3, 0x69, 0x51, 0x46, 0x98, 0x68, + 0x4f, 0xf4, 0x83, 0x72, 0xec, 0xf3, 0x5e, 0xf5, 0x00, 0xe0, 0x05, 0x46, + 0x28, 0x46, 0x27, 0xb0, 0xbd, 0xe8, 0xf0, 0x8f, 0x06, 0x26, 0xdb, 0xe6, + 0x04, 0x27, 0xfb, 0xe7, 0x00, 0xe7, 0x01, 0x00, 0xf7, 0xb5, 0x04, 0x46, + 0xf8, 0xf7, 0x2d, 0xfe, 0xe2, 0x69, 0x04, 0xf5, 0x81, 0x53, 0x12, 0x6a, + 0xd4, 0xf8, 0xa8, 0x50, 0x1a, 0x60, 0xb4, 0xf8, 0xda, 0x30, 0x00, 0x22, + 0x85, 0xf8, 0xbc, 0x32, 0x04, 0xf5, 0x80, 0x53, 0x83, 0xf8, 0x24, 0x20, + 0xd4, 0xf8, 0xb0, 0x30, 0x07, 0x46, 0xd3, 0xf8, 0x20, 0x31, 0x03, 0xf0, + 0x01, 0x03, 0x83, 0xf0, 0x01, 0x06, 0x53, 0xb1, 0xe3, 0x69, 0xb8, 0x21, + 0x18, 0x69, 0x42, 0xf2, 0x10, 0x72, 0x36, 0xf0, 0x4d, 0xda, 0xe3, 0x69, + 0x18, 0x69, 0x36, 0xf0, 0x7b, 0xda, 0x20, 0x46, 0x01, 0x21, 0xfe, 0xf7, + 0x87, 0xf9, 0x0f, 0x22, 0x24, 0x49, 0x20, 0x46, 0xf6, 0xf7, 0x6a, 0xfe, + 0x20, 0x46, 0xf9, 0xf7, 0x23, 0xfb, 0x20, 0x46, 0x00, 0x21, 0xfd, 0xf7, + 0x6f, 0xf8, 0x00, 0x21, 0x20, 0x46, 0x0a, 0x46, 0xfc, 0xf7, 0x36, 0xf8, + 0x20, 0x46, 0xf8, 0xf7, 0x1a, 0xfa, 0x04, 0xf5, 0x82, 0x53, 0x1b, 0x79, + 0x6b, 0xb1, 0x20, 0x46, 0xfd, 0xf7, 0x2c, 0xfc, 0x20, 0x46, 0x00, 0x21, + 0xfc, 0xf7, 0x29, 0xfd, 0x95, 0xf8, 0xe8, 0x33, 0x1b, 0xb1, 0x20, 0x46, + 0x01, 0x21, 0xfc, 0xf7, 0x22, 0xfd, 0x20, 0x46, 0xff, 0xf7, 0x96, 0xfc, + 0x00, 0x21, 0x7f, 0x23, 0x0a, 0x46, 0x00, 0x93, 0x20, 0x46, 0x01, 0x23, + 0xff, 0xf7, 0x9c, 0xfd, 0xff, 0x23, 0x85, 0xf8, 0x07, 0x34, 0x85, 0xf8, + 0x08, 0x34, 0x20, 0x46, 0xfe, 0xf7, 0x7f, 0xff, 0x20, 0x46, 0x39, 0x46, + 0xfc, 0xf7, 0x2a, 0xff, 0x20, 0x46, 0x00, 0x21, 0xfe, 0xf7, 0x46, 0xf9, + 0x36, 0xb9, 0xe3, 0x69, 0x18, 0x69, 0x03, 0xb0, 0xbd, 0xe8, 0xf0, 0x40, + 0x36, 0xf0, 0x1a, 0x9a, 0x03, 0xb0, 0xf0, 0xbd, 0xce, 0xe9, 0x01, 0x00, + 0x01, 0x29, 0xd0, 0xf8, 0xa8, 0x30, 0x01, 0xd1, 0xfc, 0xf7, 0x24, 0xbc, + 0xb3, 0xf8, 0x6c, 0x25, 0xb3, 0xf8, 0x6e, 0x35, 0xff, 0x2b, 0x88, 0xbf, + 0xa3, 0xf5, 0x00, 0x73, 0xff, 0x2a, 0x88, 0xbf, 0xa2, 0xf5, 0x00, 0x72, + 0x9b, 0xb2, 0x92, 0xb2, 0x9a, 0x1a, 0x10, 0xb2, 0x70, 0x47, 0x70, 0xb5, + 0xd0, 0xf8, 0xa8, 0x30, 0xd3, 0xf8, 0xd0, 0x63, 0xd3, 0xf8, 0xcc, 0x53, + 0xd3, 0xf8, 0xd4, 0x43, 0xff, 0xf7, 0xde, 0xff, 0x63, 0x1e, 0x05, 0xfb, + 0x10, 0x65, 0x01, 0x26, 0x16, 0xfa, 0x03, 0xf3, 0xed, 0x18, 0x55, 0xfa, + 0x04, 0xf4, 0x60, 0xb2, 0x70, 0xbd, 0x2d, 0xe9, 0xf0, 0x41, 0xb0, 0xf8, + 0xda, 0x30, 0x06, 0x46, 0x03, 0xf4, 0x70, 0x42, 0xb2, 0xf5, 0x00, 0x5f, + 0xd0, 0xf8, 0xa8, 0x40, 0x04, 0xd1, 0xb4, 0xf8, 0x54, 0x83, 0xb4, 0xf8, + 0x84, 0x75, 0x13, 0xe0, 0xdb, 0xb2, 0x94, 0x2b, 0x03, 0xd9, 0xb4, 0xf8, + 0x86, 0x75, 0x02, 0x23, 0x08, 0xe0, 0x63, 0x2b, 0x03, 0xd9, 0xb4, 0xf8, + 0x88, 0x75, 0x01, 0x23, 0x02, 0xe0, 0xb4, 0xf8, 0x8a, 0x75, 0x00, 0x23, + 0x04, 0xeb, 0x43, 0x03, 0xb3, 0xf8, 0x56, 0x83, 0xb8, 0xf1, 0xff, 0x0f, + 0x1c, 0xd0, 0x01, 0x21, 0x30, 0x46, 0xff, 0xf7, 0xbe, 0xff, 0x19, 0x38, + 0x47, 0x43, 0x3f, 0xb2, 0x00, 0x2f, 0xcc, 0xbf, 0x07, 0xf5, 0xfa, 0x75, + 0xa7, 0xf5, 0xfa, 0x75, 0x4f, 0xf4, 0x7a, 0x73, 0x95, 0xfb, 0xf3, 0xf5, + 0xad, 0xb2, 0x45, 0x44, 0xad, 0xb2, 0x30, 0x46, 0x40, 0xf2, 0x34, 0x41, + 0xff, 0x22, 0x2b, 0x46, 0xf6, 0xf7, 0xa0, 0xfd, 0xa4, 0xf8, 0x66, 0x53, + 0xbd, 0xe8, 0xf0, 0x81, 0x70, 0xb5, 0xd0, 0xf8, 0xa8, 0x30, 0x01, 0x29, + 0xd3, 0xf8, 0xdc, 0x63, 0xd3, 0xf8, 0xd8, 0x53, 0xd3, 0xf8, 0xe0, 0x43, + 0x03, 0xd1, 0x02, 0x21, 0xfc, 0xf7, 0xa8, 0xfb, 0x09, 0xe0, 0x40, 0xf2, + 0x75, 0x41, 0xf6, 0xf7, 0x98, 0xfb, 0xc0, 0x05, 0xc0, 0x0d, 0xff, 0x28, + 0x88, 0xbf, 0xa0, 0xf5, 0x00, 0x70, 0x00, 0xfb, 0x15, 0x60, 0x63, 0x1f, + 0x01, 0x25, 0x15, 0xfa, 0x03, 0xf3, 0x04, 0x3c, 0xc0, 0x18, 0x20, 0x41, + 0x40, 0xb2, 0x70, 0xbd, 0x10, 0xb5, 0xd0, 0xf8, 0xa8, 0x30, 0xcc, 0xb2, + 0xd3, 0xf8, 0xd4, 0x04, 0x02, 0x0e, 0x7f, 0x2a, 0x44, 0xea, 0x00, 0x20, + 0xc8, 0xbf, 0xa2, 0xf5, 0x80, 0x72, 0xc3, 0xf8, 0xd4, 0x04, 0xd3, 0xf8, + 0xd8, 0x04, 0x8a, 0x1a, 0x12, 0x18, 0xc3, 0xf8, 0xd8, 0x24, 0x92, 0x10, + 0xc3, 0xf8, 0xdc, 0x24, 0x10, 0xbd, 0x08, 0x22, 0x70, 0xb5, 0x13, 0x46, + 0x04, 0x46, 0x57, 0x21, 0xf6, 0xf7, 0x16, 0xfd, 0x56, 0x21, 0x20, 0x46, + 0xf6, 0xf7, 0x26, 0xfb, 0x00, 0xf0, 0xf8, 0x05, 0x56, 0x21, 0x2a, 0x46, + 0x20, 0x46, 0xf6, 0xf7, 0x36, 0xfb, 0x01, 0x20, 0xec, 0xf3, 0x46, 0xf1, + 0x56, 0x21, 0x45, 0xf0, 0x03, 0x02, 0x20, 0x46, 0xf6, 0xf7, 0x2d, 0xfb, + 0x01, 0x20, 0xec, 0xf3, 0x3d, 0xf1, 0x56, 0x21, 0x45, 0xf0, 0x07, 0x02, + 0x20, 0x46, 0xf6, 0xf7, 0x24, 0xfb, 0x4f, 0xf4, 0x96, 0x70, 0xec, 0xf3, + 0x33, 0xf1, 0x20, 0x46, 0x57, 0x21, 0x08, 0x22, 0x00, 0x23, 0xbd, 0xe8, + 0x70, 0x40, 0xf6, 0xf7, 0xed, 0xbc, 0x00, 0x00, 0x2d, 0xe9, 0xf0, 0x4f, + 0xb5, 0x4b, 0x8b, 0xb0, 0x04, 0x46, 0x0d, 0x46, 0x06, 0xaa, 0x03, 0xf1, + 0x08, 0x07, 0x18, 0x68, 0x59, 0x68, 0x16, 0x46, 0x03, 0xc6, 0x08, 0x33, + 0xbb, 0x42, 0x32, 0x46, 0xf7, 0xd1, 0x18, 0x68, 0x30, 0x60, 0x99, 0x88, + 0x9b, 0x79, 0xb1, 0x80, 0xb3, 0x71, 0xd4, 0xf8, 0xa8, 0x70, 0x00, 0x23, + 0xaa, 0x4e, 0x1a, 0x01, 0x91, 0x59, 0xa9, 0x42, 0x03, 0xd0, 0x01, 0x33, + 0x0e, 0x2b, 0xf7, 0xd1, 0x57, 0xe3, 0x20, 0x46, 0x91, 0x21, 0xb6, 0x18, + 0x00, 0x22, 0xf6, 0xf7, 0xee, 0xfa, 0x20, 0x46, 0x38, 0x21, 0x07, 0x22, + 0xf6, 0xf7, 0xe9, 0xfa, 0x0a, 0x22, 0x20, 0x46, 0x88, 0x21, 0xf6, 0xf7, + 0xe4, 0xfa, 0xd4, 0xf8, 0xa8, 0x30, 0x93, 0xf8, 0x82, 0x25, 0x1a, 0xb1, + 0x20, 0x46, 0x88, 0x21, 0xf6, 0xf7, 0xdb, 0xfa, 0x2a, 0x21, 0x20, 0x46, + 0x32, 0x7a, 0xf6, 0xf7, 0xd6, 0xfa, 0x30, 0x21, 0x03, 0x22, 0x20, 0x46, + 0x73, 0x7a, 0xf6, 0xf7, 0xa5, 0xfc, 0x91, 0x21, 0x03, 0x22, 0x20, 0x46, + 0xb3, 0x7a, 0xf6, 0xf7, 0x9f, 0xfc, 0xf3, 0x7a, 0x38, 0x21, 0x0f, 0x22, + 0x20, 0x46, 0xf6, 0xf7, 0x99, 0xfc, 0x91, 0x21, 0x00, 0x22, 0x20, 0x46, + 0xf6, 0xf7, 0xbf, 0xfa, 0x38, 0x21, 0x07, 0x22, 0x20, 0x46, 0xf6, 0xf7, + 0xba, 0xfa, 0x33, 0x7b, 0x30, 0x21, 0x0c, 0x22, 0x9b, 0x00, 0x20, 0x46, + 0xf6, 0xf7, 0x88, 0xfc, 0x5e, 0x21, 0x0f, 0x22, 0x20, 0x46, 0x73, 0x7b, + 0xf6, 0xf7, 0x82, 0xfc, 0xb3, 0x7b, 0x5e, 0x21, 0x1b, 0x01, 0xf0, 0x22, + 0x20, 0x46, 0xf6, 0xf7, 0x7b, 0xfc, 0x6c, 0x21, 0x20, 0x46, 0xf2, 0x7b, + 0xf6, 0xf7, 0xa1, 0xfa, 0x08, 0x22, 0x20, 0x46, 0x38, 0x21, 0xf6, 0xf7, + 0x9c, 0xfa, 0x91, 0x21, 0x20, 0x46, 0x03, 0x22, 0xf6, 0xf7, 0x97, 0xfa, + 0x0a, 0xaa, 0x55, 0x19, 0x20, 0x46, 0x5e, 0x21, 0x15, 0xf8, 0x11, 0x2c, + 0xf6, 0xf7, 0x8f, 0xfa, 0x01, 0x22, 0x20, 0x46, 0x7e, 0x21, 0xf6, 0xf7, + 0x8a, 0xfa, 0x97, 0xf8, 0xee, 0x23, 0x1a, 0xb1, 0x20, 0x46, 0x38, 0x21, + 0xf6, 0xf7, 0x83, 0xfa, 0x07, 0x22, 0x13, 0x46, 0x20, 0x46, 0x2a, 0x21, + 0xf6, 0xf7, 0x52, 0xfc, 0x20, 0x46, 0x2c, 0x21, 0x00, 0x22, 0xf6, 0xf7, + 0x78, 0xfa, 0x20, 0x46, 0x2a, 0x21, 0x0c, 0x22, 0xf6, 0xf7, 0x73, 0xfa, + 0x01, 0x22, 0x20, 0x46, 0x2c, 0x21, 0xf6, 0xf7, 0x6e, 0xfa, 0xd4, 0xf8, + 0xa8, 0x30, 0x93, 0xf8, 0x52, 0x25, 0x2a, 0xb3, 0x93, 0xf8, 0x53, 0x25, + 0x20, 0x46, 0x5e, 0x21, 0xf6, 0xf7, 0x63, 0xfa, 0xd4, 0xf8, 0xa8, 0x30, + 0x20, 0x46, 0x93, 0xf8, 0x54, 0x25, 0x2a, 0x21, 0xf6, 0xf7, 0x5b, 0xfa, + 0xd4, 0xf8, 0xa8, 0x30, 0x20, 0x46, 0x93, 0xf8, 0x55, 0x25, 0x2b, 0x21, + 0xf6, 0xf7, 0x53, 0xfa, 0xd4, 0xf8, 0xa8, 0x30, 0x20, 0x46, 0x93, 0xf8, + 0x56, 0x25, 0x2c, 0x21, 0xf6, 0xf7, 0x4b, 0xfa, 0xd4, 0xf8, 0xa8, 0x30, + 0x20, 0x46, 0x2d, 0x21, 0x93, 0xf8, 0x57, 0x25, 0xf6, 0xf7, 0x43, 0xfa, + 0xb4, 0xf8, 0xda, 0x30, 0x03, 0xf4, 0x70, 0x43, 0xb3, 0xf5, 0x80, 0x5f, + 0x04, 0xd1, 0x20, 0x46, 0xbf, 0x21, 0xee, 0x22, 0xf6, 0xf7, 0x37, 0xfa, + 0x02, 0x22, 0x13, 0x46, 0x20, 0x46, 0x40, 0xf2, 0x1f, 0x11, 0xf6, 0xf7, + 0x05, 0xfc, 0x04, 0x22, 0xf7, 0x21, 0x13, 0x46, 0x20, 0x46, 0xf6, 0xf7, + 0xff, 0xfb, 0xf1, 0x21, 0x03, 0x22, 0x00, 0x23, 0x20, 0x46, 0xf6, 0xf7, + 0xf9, 0xfb, 0xf2, 0x21, 0xf8, 0x22, 0x90, 0x23, 0x20, 0x46, 0xf6, 0xf7, + 0xf3, 0xfb, 0xa2, 0x23, 0xf3, 0x21, 0xff, 0x22, 0x20, 0x46, 0xf6, 0xf7, + 0xed, 0xfb, 0xb4, 0xf8, 0xda, 0x30, 0x03, 0xf4, 0x70, 0x43, 0xb3, 0xf5, + 0x00, 0x5f, 0x04, 0xd1, 0xd4, 0xf8, 0xa8, 0x30, 0x93, 0xf8, 0x18, 0x35, + 0x06, 0xe0, 0xb3, 0xf5, 0x80, 0x5f, 0x06, 0xd1, 0xd4, 0xf8, 0xa8, 0x30, + 0x93, 0xf8, 0x19, 0x35, 0x01, 0x2b, 0x00, 0xf0, 0x5e, 0x82, 0x00, 0x23, + 0x20, 0x46, 0x9d, 0x21, 0x04, 0x22, 0xf6, 0xf7, 0xd1, 0xfb, 0x00, 0x23, + 0x44, 0x21, 0x20, 0x46, 0x02, 0x93, 0xf6, 0xf7, 0xdf, 0xf9, 0xc0, 0xb2, + 0x03, 0x90, 0x40, 0xf2, 0x2b, 0x11, 0x20, 0x46, 0xf6, 0xf7, 0xd8, 0xf9, + 0xc0, 0xb2, 0x04, 0x90, 0x44, 0x21, 0x20, 0x46, 0x07, 0x22, 0xf6, 0xf7, + 0xae, 0xfb, 0x0e, 0x22, 0x20, 0x46, 0x40, 0xf2, 0x2b, 0x11, 0xf6, 0xf7, + 0xa8, 0xfb, 0x02, 0x9a, 0x04, 0xf5, 0x80, 0x53, 0x9d, 0x6a, 0x0a, 0xb1, + 0x68, 0x00, 0x00, 0xe0, 0x28, 0x46, 0x1a, 0x4b, 0x9d, 0x42, 0x05, 0xd9, + 0x19, 0x4f, 0xbd, 0x42, 0x8c, 0xbf, 0x04, 0x27, 0x02, 0x27, 0x00, 0xe0, + 0x01, 0x27, 0xb4, 0xf8, 0xda, 0x80, 0x08, 0xf4, 0x70, 0x48, 0xb8, 0xf5, + 0x00, 0x5f, 0x05, 0xd1, 0x73, 0x68, 0x4f, 0xea, 0x40, 0x09, 0x03, 0xeb, + 0x43, 0x0a, 0x02, 0xe0, 0x4f, 0xf0, 0x00, 0x09, 0xca, 0x46, 0x10, 0x22, + 0x0e, 0x49, 0xf8, 0xf7, 0xc1, 0xf9, 0x0d, 0x49, 0x01, 0x90, 0x79, 0x43, + 0x10, 0x22, 0x28, 0x46, 0xf8, 0xf7, 0xba, 0xf9, 0xb8, 0xf5, 0x00, 0x5f, + 0x05, 0x90, 0x11, 0xd1, 0x50, 0x46, 0x02, 0x21, 0x10, 0x22, 0xf8, 0xf7, + 0xb1, 0xf9, 0x06, 0x46, 0x0b, 0xe0, 0x00, 0xbf, 0xd4, 0xb8, 0x01, 0x00, + 0x08, 0x04, 0x02, 0x00, 0x80, 0xba, 0x8c, 0x01, 0x00, 0x75, 0x19, 0x03, + 0x40, 0x42, 0x0f, 0x00, 0x00, 0x26, 0x4f, 0x21, 0x02, 0x22, 0x20, 0x46, + 0xf6, 0xf7, 0x99, 0xf9, 0xca, 0x4b, 0x4f, 0xea, 0xc5, 0x0b, 0x03, 0xfb, + 0x07, 0xf8, 0xbb, 0xfb, 0xf8, 0xf8, 0x08, 0xf1, 0x01, 0x08, 0x4f, 0xea, + 0x58, 0x08, 0x08, 0xf1, 0xff, 0x38, 0x5f, 0xfa, 0x88, 0xf8, 0x52, 0x21, + 0x07, 0x22, 0x20, 0x46, 0x4f, 0xea, 0x98, 0x03, 0xf6, 0xf7, 0x58, 0xfb, + 0x53, 0x21, 0x60, 0x22, 0x20, 0x46, 0x4f, 0xea, 0x48, 0x13, 0xf6, 0xf7, + 0x51, 0xfb, 0x08, 0xf1, 0x01, 0x03, 0x5f, 0x43, 0xbb, 0x4a, 0xbb, 0xfb, + 0xf7, 0xfb, 0xbb, 0x4f, 0x5a, 0x44, 0xb2, 0xfb, 0xf7, 0xf7, 0x01, 0x3f, + 0xff, 0xb2, 0x51, 0x21, 0x3a, 0x46, 0x20, 0x46, 0x00, 0x93, 0xf6, 0xf7, + 0x6a, 0xf9, 0x05, 0x9a, 0x30, 0x46, 0x11, 0x01, 0x10, 0x22, 0xf8, 0xf7, + 0x69, 0xf9, 0x01, 0x37, 0x47, 0x43, 0x00, 0x9b, 0x7b, 0x43, 0x04, 0xd4, + 0xdf, 0x13, 0x01, 0x37, 0x7f, 0x10, 0x01, 0x3f, 0x07, 0xe0, 0x6f, 0xea, + 0x08, 0x08, 0x08, 0xfb, 0x07, 0xf7, 0xff, 0x13, 0x01, 0x37, 0x6f, 0xea, + 0x67, 0x07, 0x3b, 0x0a, 0x53, 0x21, 0x0f, 0x22, 0xdb, 0xb2, 0x20, 0x46, + 0xf6, 0xf7, 0x20, 0xfb, 0x54, 0x21, 0xfa, 0xb2, 0x20, 0x46, 0xf6, 0xf7, + 0x46, 0xf9, 0x0a, 0x23, 0x03, 0xfb, 0x0a, 0xfa, 0xa2, 0x4f, 0x45, 0x21, + 0xb9, 0xfb, 0xf7, 0xf9, 0xba, 0xfb, 0xf9, 0xf8, 0x09, 0xfb, 0x18, 0xaa, + 0x4f, 0xea, 0x5a, 0x02, 0x12, 0x05, 0x0a, 0xf0, 0x01, 0x0a, 0x4f, 0xea, + 0x59, 0x03, 0x02, 0xeb, 0x99, 0x02, 0x4f, 0xea, 0x0a, 0x5a, 0xb2, 0xfb, + 0xf3, 0xf2, 0x53, 0x44, 0xb3, 0xfb, 0xf9, 0xf9, 0x4f, 0xea, 0x18, 0x13, + 0x09, 0xeb, 0x02, 0x07, 0x20, 0x46, 0x1f, 0x22, 0xdb, 0xb2, 0xf6, 0xf7, + 0xf7, 0xfa, 0x4f, 0xea, 0x08, 0x13, 0x46, 0x21, 0x20, 0x46, 0x4f, 0xf4, + 0xf8, 0x72, 0x03, 0xf0, 0xf0, 0x03, 0xf6, 0xf7, 0xed, 0xfa, 0x3b, 0x0c, + 0xdb, 0xb2, 0x46, 0x21, 0x0f, 0x22, 0x20, 0x46, 0xf6, 0xf7, 0xe6, 0xfa, + 0x3a, 0x0a, 0x47, 0x21, 0x20, 0x46, 0xd2, 0xb2, 0xf6, 0xf7, 0x0b, 0xf9, + 0x48, 0x21, 0xfa, 0xb2, 0x20, 0x46, 0xf6, 0xf7, 0x06, 0xf9, 0x02, 0x9b, + 0x41, 0xf2, 0x94, 0x19, 0x00, 0x2b, 0x08, 0xbf, 0x4f, 0xf4, 0xfa, 0x59, + 0xa9, 0xf5, 0xd8, 0x79, 0x4f, 0xf4, 0xf5, 0x73, 0xa9, 0xf1, 0x03, 0x09, + 0x99, 0xfb, 0xf3, 0xf9, 0x03, 0xfb, 0x09, 0xfa, 0x0a, 0xf5, 0x2a, 0x7a, + 0x4f, 0xf4, 0x25, 0x62, 0x4f, 0xea, 0x4a, 0x2a, 0xba, 0xfb, 0xf2, 0xfa, + 0x40, 0xf2, 0x7c, 0x67, 0x07, 0xfb, 0x0a, 0xf7, 0xa7, 0xf5, 0x58, 0x37, + 0xa7, 0xf5, 0xc0, 0x67, 0xb7, 0xfb, 0xf3, 0xf7, 0x0c, 0xbf, 0x4f, 0xf4, + 0x82, 0x7b, 0x4f, 0xf4, 0xe1, 0x7b, 0x7f, 0x0a, 0x4f, 0xea, 0xc9, 0x03, + 0x07, 0xf0, 0x1c, 0x02, 0x43, 0xea, 0x92, 0x02, 0x42, 0x21, 0x20, 0x46, + 0x92, 0xb2, 0xf6, 0xf7, 0xd2, 0xf8, 0x07, 0xf0, 0x1f, 0x02, 0x43, 0x21, + 0x20, 0x46, 0x42, 0xf0, 0x20, 0x02, 0xf6, 0xf7, 0xca, 0xf8, 0x4f, 0xea, + 0x4b, 0x22, 0x4f, 0xf4, 0x87, 0x73, 0xb2, 0xfb, 0xf3, 0xf3, 0x03, 0xfb, + 0x0a, 0xfa, 0x63, 0x4a, 0x4f, 0xea, 0x5a, 0x2a, 0x62, 0x4b, 0xb2, 0xfb, + 0xfa, 0xf2, 0xd3, 0x18, 0x4f, 0xf4, 0x12, 0x41, 0xb3, 0xfb, 0xf1, 0xf3, + 0x03, 0xf0, 0x0f, 0x01, 0x5e, 0x4b, 0x20, 0x46, 0xb3, 0xfb, 0xfa, 0xf3, + 0xa3, 0xf5, 0x4c, 0x23, 0xa3, 0xf5, 0x00, 0x63, 0x1a, 0x0c, 0x41, 0xea, + 0x02, 0x12, 0x92, 0xb2, 0x40, 0x21, 0xf6, 0xf7, 0xa6, 0xf8, 0x58, 0x4a, + 0x4f, 0xf0, 0x25, 0x53, 0xb3, 0xfb, 0xfa, 0xf3, 0xa3, 0xf5, 0x46, 0x33, + 0xb2, 0xfb, 0xfa, 0xfa, 0x4f, 0xf4, 0xb8, 0x41, 0xa3, 0xf5, 0x00, 0x73, + 0xaa, 0xf5, 0x6e, 0x3a, 0xb3, 0xfb, 0xf1, 0xf3, 0xaa, 0xf5, 0x00, 0x7a, + 0x03, 0xf0, 0x0f, 0x03, 0xba, 0xfb, 0xf1, 0xf2, 0x43, 0xea, 0x02, 0x12, + 0x41, 0x21, 0x20, 0x46, 0x92, 0xb2, 0xf6, 0xf7, 0x88, 0xf8, 0x06, 0xf1, + 0x74, 0x43, 0x4f, 0xf4, 0x96, 0x67, 0x03, 0xf5, 0x90, 0x03, 0x93, 0xfb, + 0xf7, 0xf3, 0x29, 0x27, 0x5f, 0x43, 0x4f, 0xf4, 0x5c, 0x73, 0x03, 0xfb, + 0x08, 0xf8, 0x40, 0xf2, 0x2b, 0x53, 0x03, 0xfb, 0x09, 0xf9, 0x09, 0xf5, + 0xe4, 0x61, 0x0b, 0xfb, 0x08, 0xf0, 0x0c, 0x31, 0x10, 0x22, 0xf8, 0xf7, + 0x73, 0xf8, 0x07, 0xf5, 0xd8, 0x17, 0x00, 0xeb, 0x67, 0x00, 0x90, 0xfb, + 0xf7, 0xf7, 0xff, 0xb2, 0x3c, 0x2f, 0x94, 0xbf, 0x4f, 0xf0, 0x00, 0x08, + 0x4f, 0xf0, 0x01, 0x08, 0xb8, 0xf1, 0x00, 0x0f, 0x00, 0xd0, 0x7f, 0x08, + 0x04, 0x3f, 0xff, 0xb2, 0x3c, 0x21, 0x3f, 0x22, 0x20, 0x46, 0x3b, 0x46, + 0xf6, 0xf7, 0x2a, 0xfa, 0x3c, 0x21, 0x40, 0x22, 0x4f, 0xea, 0x88, 0x13, + 0x20, 0x46, 0xf6, 0xf7, 0x23, 0xfa, 0xb4, 0xf8, 0xda, 0x30, 0x03, 0xf4, + 0x70, 0x43, 0xb3, 0xf5, 0x00, 0x5f, 0x04, 0xd1, 0xd4, 0xf8, 0xa8, 0x30, + 0x93, 0xf8, 0x27, 0x35, 0x06, 0xe0, 0xb3, 0xf5, 0x80, 0x5f, 0x1a, 0xd1, + 0xd4, 0xf8, 0xa8, 0x30, 0x93, 0xf8, 0x28, 0x35, 0x01, 0x2b, 0x14, 0xd1, + 0x01, 0x9a, 0x40, 0xf2, 0x45, 0x10, 0x50, 0x43, 0x31, 0x46, 0x10, 0x22, + 0xf8, 0xf7, 0x36, 0xf8, 0x04, 0x37, 0x08, 0xf1, 0x01, 0x08, 0x08, 0xfb, + 0x07, 0xf7, 0x9e, 0x21, 0x47, 0x43, 0xc0, 0x22, 0x20, 0x46, 0x40, 0x23, + 0xf6, 0xf7, 0xfa, 0xf9, 0x0c, 0xe0, 0x01, 0x9b, 0x96, 0x20, 0x58, 0x43, + 0x31, 0x46, 0x10, 0x22, 0xf8, 0xf7, 0x22, 0xf8, 0x04, 0x37, 0x08, 0xf1, + 0x01, 0x08, 0x08, 0xfb, 0x07, 0xf7, 0x47, 0x43, 0xb7, 0xf5, 0x16, 0x0f, + 0xd4, 0xbf, 0x00, 0x26, 0x01, 0x26, 0x73, 0x1c, 0x03, 0xeb, 0x43, 0x03, + 0x97, 0xfb, 0xf3, 0xf7, 0xb7, 0xf5, 0x00, 0x3f, 0x16, 0xdb, 0xa7, 0xf5, + 0xc0, 0x33, 0xdb, 0x13, 0x01, 0x33, 0x5b, 0x10, 0xdb, 0xb2, 0x10, 0xe0, + 0x40, 0x4b, 0x4c, 0x00, 0x3f, 0x42, 0x0f, 0x00, 0x40, 0x42, 0x0f, 0x00, + 0xa0, 0x86, 0x01, 0x00, 0x00, 0x00, 0x68, 0x60, 0x00, 0x21, 0xf6, 0xff, + 0x00, 0x00, 0x84, 0xa3, 0x00, 0x00, 0x30, 0x2a, 0x00, 0x23, 0x3d, 0x21, + 0x3f, 0x22, 0x20, 0x46, 0xf6, 0xf7, 0xc2, 0xf9, 0x3d, 0x21, 0x40, 0x22, + 0xb3, 0x01, 0x20, 0x46, 0xf6, 0xf7, 0xbc, 0xf9, 0x26, 0x4b, 0x57, 0x21, + 0x20, 0x22, 0x9d, 0x42, 0x20, 0x46, 0x06, 0xd9, 0x13, 0x46, 0xf6, 0xf7, + 0xb3, 0xf9, 0x23, 0x4b, 0x9d, 0x42, 0x04, 0xd8, 0x08, 0xe0, 0x00, 0x23, + 0xf6, 0xf7, 0xac, 0xf9, 0x04, 0xe0, 0x10, 0x22, 0x20, 0x46, 0x57, 0x21, + 0x13, 0x46, 0x03, 0xe0, 0x20, 0x46, 0x57, 0x21, 0x10, 0x22, 0x00, 0x23, + 0xf6, 0xf7, 0xa0, 0xf9, 0x01, 0x9a, 0x4a, 0x21, 0xb2, 0xf5, 0x34, 0x1f, + 0x20, 0x46, 0x03, 0xdd, 0x02, 0x22, 0xf6, 0xf7, 0x88, 0xf9, 0x02, 0xe0, + 0xfd, 0x22, 0xf6, 0xf7, 0x76, 0xf9, 0x0c, 0x22, 0x13, 0x46, 0x44, 0x21, + 0x20, 0x46, 0xf6, 0xf7, 0x8d, 0xf9, 0x01, 0x20, 0xeb, 0xf3, 0xc8, 0xf5, + 0x20, 0x46, 0xff, 0xf7, 0x6a, 0xfc, 0x20, 0x46, 0x44, 0x21, 0x03, 0x9a, + 0xf5, 0xf7, 0xad, 0xff, 0x04, 0x9a, 0x20, 0x46, 0x40, 0xf2, 0x2b, 0x11, + 0x0b, 0xb0, 0xbd, 0xe8, 0xf0, 0x4f, 0xf5, 0xf7, 0xa4, 0xbf, 0x04, 0x22, + 0x13, 0x46, 0x20, 0x46, 0x9d, 0x21, 0xf6, 0xf7, 0x73, 0xf9, 0x01, 0x23, + 0xa0, 0xe5, 0x0b, 0xb0, 0xbd, 0xe8, 0xf0, 0x8f, 0x80, 0xba, 0x8c, 0x01, + 0x00, 0x75, 0x19, 0x03, 0x08, 0xb5, 0xf8, 0xf7, 0x50, 0xf9, 0xa0, 0xf5, + 0x40, 0x4e, 0xde, 0xf1, 0x00, 0x00, 0x40, 0xeb, 0x0e, 0x00, 0x08, 0xbd, + 0x70, 0xb5, 0x00, 0x23, 0x13, 0x70, 0x0b, 0x70, 0x00, 0xf5, 0x82, 0x53, + 0x1b, 0x79, 0x04, 0x46, 0x0d, 0x46, 0x16, 0x46, 0x03, 0xb3, 0x40, 0xf2, + 0xab, 0x41, 0xf5, 0xf7, 0xa2, 0xff, 0x10, 0xf4, 0x00, 0x4f, 0x20, 0x46, + 0x02, 0xd0, 0x40, 0xf2, 0xab, 0x41, 0x08, 0xe0, 0x40, 0xf2, 0x3c, 0x61, + 0xf5, 0xf7, 0x97, 0xff, 0x03, 0x04, 0x06, 0xd5, 0x20, 0x46, 0x40, 0xf2, + 0x3c, 0x61, 0xf5, 0xf7, 0x90, 0xff, 0x40, 0x08, 0x28, 0x70, 0x20, 0x46, + 0xff, 0xf7, 0xd0, 0xff, 0x08, 0xb1, 0x94, 0xf8, 0x10, 0x05, 0x2b, 0x78, + 0xc0, 0x18, 0x30, 0x70, 0x70, 0xbd, 0x38, 0xb5, 0xd0, 0xf8, 0xa8, 0x40, + 0x05, 0x46, 0x94, 0xf8, 0x42, 0x33, 0x5b, 0xb1, 0x00, 0x21, 0xf9, 0xf7, + 0x3b, 0xfa, 0x28, 0x46, 0x19, 0x21, 0x00, 0x22, 0xf9, 0xf7, 0xfa, 0xf9, + 0x10, 0xb9, 0x01, 0x23, 0x84, 0xf8, 0x45, 0x33, 0x38, 0xbd, 0x38, 0xb5, + 0xd0, 0xf8, 0xa8, 0x50, 0x04, 0x46, 0x95, 0xf8, 0x42, 0x33, 0x83, 0xb9, + 0x90, 0xf8, 0xe9, 0x30, 0xda, 0x07, 0x44, 0xbf, 0x23, 0xf0, 0x01, 0x03, + 0x80, 0xf8, 0xe9, 0x30, 0x90, 0xf8, 0xe9, 0x30, 0x99, 0x07, 0x2f, 0xd5, + 0x23, 0xf0, 0x02, 0x03, 0x80, 0xf8, 0xe9, 0x30, 0x38, 0xbd, 0x95, 0xf8, + 0x47, 0x33, 0x23, 0xb9, 0xd1, 0xf1, 0x01, 0x03, 0x38, 0xbf, 0x00, 0x23, + 0x00, 0xe0, 0x01, 0x23, 0x85, 0xf8, 0x47, 0x33, 0xf1, 0xb1, 0x01, 0x23, + 0x85, 0xf8, 0x46, 0x33, 0x00, 0x23, 0xc5, 0xf8, 0x6c, 0x33, 0x85, 0xf8, + 0x45, 0x33, 0x20, 0x46, 0xff, 0xf7, 0xbd, 0xff, 0x95, 0xf8, 0x43, 0x33, + 0x00, 0x33, 0x18, 0xbf, 0x01, 0x23, 0x85, 0xf8, 0x44, 0x33, 0x13, 0xb1, + 0x20, 0x46, 0xf9, 0xf7, 0x0b, 0xf8, 0x20, 0x46, 0xf8, 0xf7, 0xbc, 0xf8, + 0x20, 0x46, 0x01, 0x21, 0xbd, 0xe8, 0x38, 0x40, 0xf9, 0xf7, 0xee, 0xb9, + 0x38, 0xbd, 0xf7, 0xb5, 0xd0, 0xf8, 0xa8, 0x40, 0x00, 0x23, 0x01, 0x93, + 0x00, 0x93, 0x94, 0xf8, 0x42, 0x33, 0x05, 0x46, 0x00, 0x2b, 0x00, 0xf0, + 0xcd, 0x80, 0x94, 0xf8, 0x46, 0x33, 0x00, 0x2b, 0x00, 0xf0, 0xc8, 0x80, + 0xd0, 0xf8, 0xb0, 0x30, 0xd3, 0xf8, 0x20, 0x31, 0xd9, 0x07, 0x40, 0xf1, + 0xc1, 0x80, 0x94, 0xf8, 0x45, 0x63, 0x00, 0x2e, 0x40, 0xf0, 0xa0, 0x80, + 0x31, 0x46, 0x32, 0x46, 0xf9, 0xf7, 0x90, 0xf9, 0x00, 0x28, 0x00, 0xf0, + 0x99, 0x80, 0x28, 0x46, 0x69, 0x46, 0x01, 0xaa, 0xf9, 0xf7, 0xb4, 0xfa, + 0x00, 0x28, 0x00, 0xf0, 0x91, 0x80, 0x01, 0x9b, 0xc4, 0xf8, 0x6c, 0x33, + 0x94, 0xf8, 0x46, 0x33, 0x01, 0x2b, 0x40, 0xf0, 0x89, 0x80, 0x94, 0xf8, + 0x91, 0xe3, 0x94, 0xf8, 0x90, 0x03, 0x00, 0x9a, 0x73, 0x46, 0x31, 0x46, + 0x1e, 0xe0, 0x5f, 0xb2, 0xdc, 0x37, 0x54, 0xf8, 0x27, 0xc0, 0x62, 0x45, + 0x36, 0xbf, 0x44, 0xf8, 0x27, 0x20, 0x4f, 0xf0, 0x00, 0x0c, 0x62, 0x46, + 0x54, 0xf8, 0x27, 0x70, 0x38, 0xbf, 0x4f, 0xf0, 0x01, 0x0c, 0x01, 0x33, + 0xdb, 0xb2, 0xc9, 0x19, 0x01, 0x36, 0x5f, 0xb2, 0xf6, 0xb2, 0x07, 0x2f, + 0xc8, 0xbf, 0x00, 0x23, 0xbc, 0xf1, 0x00, 0x0f, 0x02, 0xd0, 0x00, 0x92, + 0x00, 0x9a, 0x15, 0xe0, 0x4f, 0xfa, 0x86, 0xfc, 0x47, 0xb2, 0xbc, 0x45, + 0xdb, 0xdb, 0xf6, 0xe7, 0x5f, 0xb2, 0xdc, 0x37, 0x01, 0x33, 0x54, 0xf8, + 0x27, 0xc0, 0xdb, 0xb2, 0x44, 0xf8, 0x27, 0x20, 0x89, 0x18, 0x01, 0x36, + 0x5a, 0xb2, 0x07, 0x2a, 0xc8, 0xbf, 0x00, 0x23, 0xf6, 0xb2, 0x62, 0x46, + 0x77, 0xb2, 0x07, 0x2f, 0xec, 0xdd, 0x43, 0xb2, 0x07, 0x2b, 0x00, 0x92, + 0x05, 0xdc, 0x00, 0x23, 0x01, 0x30, 0x84, 0xf8, 0x92, 0x33, 0x84, 0xf8, + 0x90, 0x03, 0x94, 0xf9, 0x90, 0x33, 0x08, 0x2b, 0x3a, 0xd1, 0x94, 0xf8, + 0x94, 0x33, 0xe3, 0x18, 0x93, 0xf8, 0x97, 0x23, 0x93, 0xf8, 0x99, 0x63, + 0x94, 0xf8, 0x92, 0x33, 0xfc, 0x2b, 0x02, 0xd8, 0x01, 0x33, 0x84, 0xf8, + 0x92, 0x33, 0x94, 0xf8, 0x92, 0x33, 0x93, 0x42, 0x28, 0xd1, 0x0e, 0xf1, + 0x01, 0x03, 0x84, 0xf8, 0x91, 0x33, 0x5b, 0xb2, 0x07, 0x2b, 0x02, 0xdd, + 0x00, 0x23, 0x84, 0xf8, 0x91, 0x33, 0x06, 0x23, 0x84, 0xf8, 0x90, 0x33, + 0x28, 0x46, 0xf8, 0xf7, 0x83, 0xff, 0x18, 0xb9, 0x28, 0x46, 0xf8, 0xf7, + 0x0d, 0xf8, 0x10, 0xe0, 0x94, 0xf8, 0x93, 0x33, 0xfc, 0x2b, 0x02, 0xd8, + 0x01, 0x33, 0x84, 0xf8, 0x93, 0x33, 0x94, 0xf8, 0x93, 0x33, 0xb3, 0x42, + 0x05, 0xd1, 0x94, 0xf8, 0x94, 0x33, 0x13, 0xb9, 0x01, 0x23, 0x84, 0xf8, + 0x94, 0x33, 0x00, 0x23, 0x84, 0xf8, 0x92, 0x33, 0x94, 0xf8, 0x46, 0x13, + 0x00, 0x23, 0x01, 0x29, 0x84, 0xf8, 0x45, 0x33, 0x28, 0x46, 0x02, 0xd1, + 0xf9, 0xf7, 0x26, 0xf9, 0x02, 0xe0, 0x19, 0x46, 0xf9, 0xf7, 0x7d, 0xf9, + 0x28, 0x46, 0xd4, 0xf8, 0x6c, 0x13, 0xf9, 0xf7, 0xcd, 0xfa, 0x00, 0x23, + 0x84, 0xf8, 0x47, 0x33, 0x94, 0xf8, 0x9c, 0x33, 0x13, 0xb9, 0x01, 0x23, + 0x84, 0xf8, 0x9c, 0x33, 0xfe, 0xbd, 0x38, 0xb5, 0x15, 0x46, 0xd0, 0xf8, + 0xa8, 0x40, 0x7a, 0xb1, 0x94, 0xf8, 0x43, 0x13, 0x94, 0xf8, 0x42, 0x23, + 0xc3, 0x69, 0x42, 0xea, 0x41, 0x04, 0x2c, 0x60, 0x18, 0x69, 0x8c, 0x21, + 0x35, 0xf0, 0xfc, 0xdb, 0x44, 0xea, 0x00, 0x40, 0x28, 0x60, 0x38, 0xbd, + 0xcb, 0x08, 0x0d, 0xd1, 0x01, 0xf0, 0x01, 0x03, 0xc1, 0xf3, 0x40, 0x01, + 0x84, 0xf8, 0x42, 0x33, 0x84, 0xf8, 0x43, 0x13, 0x23, 0xb9, 0x01, 0x21, + 0xbd, 0xe8, 0x38, 0x40, 0xf9, 0xf7, 0x49, 0xb9, 0x38, 0xbd, 0x2d, 0xe9, + 0xf8, 0x43, 0x04, 0x46, 0x88, 0x46, 0x17, 0x46, 0xd0, 0xf8, 0xa8, 0x60, + 0x4f, 0xf0, 0x00, 0x09, 0xf7, 0xf7, 0xe3, 0xfb, 0x20, 0x46, 0x01, 0x21, + 0xfd, 0xf7, 0x38, 0xfb, 0x4d, 0x46, 0x0d, 0xe0, 0x01, 0x21, 0x00, 0x22, + 0xf6, 0xf7, 0x9c, 0xf9, 0x38, 0x46, 0xeb, 0xf3, 0x01, 0xf4, 0x20, 0x46, + 0xfb, 0xf7, 0x8b, 0xfc, 0x01, 0x35, 0x1f, 0xfa, 0x80, 0xf9, 0xed, 0xb2, + 0x45, 0x45, 0x20, 0x46, 0xee, 0xd3, 0x00, 0x21, 0xfd, 0xf7, 0x22, 0xfb, + 0x86, 0xf8, 0xc0, 0x92, 0xbd, 0xe8, 0xf8, 0x83, 0x2d, 0xe9, 0xf0, 0x43, + 0xb0, 0xf8, 0xda, 0x30, 0xd0, 0xf8, 0xa8, 0x50, 0x8b, 0xb0, 0x85, 0xf8, + 0xbc, 0x32, 0xd0, 0xf8, 0xb0, 0x30, 0x04, 0x46, 0xd3, 0xf8, 0x20, 0x31, + 0x03, 0xf0, 0x01, 0x03, 0x83, 0xf0, 0x01, 0x09, 0x53, 0xb1, 0xc3, 0x69, + 0xb8, 0x21, 0x18, 0x69, 0x42, 0xf2, 0x10, 0x72, 0x35, 0xf0, 0xc2, 0xdb, + 0xe3, 0x69, 0x18, 0x69, 0x35, 0xf0, 0xf0, 0xdb, 0x40, 0xf2, 0xa5, 0x41, + 0x20, 0x46, 0xf5, 0xf7, 0xe0, 0xfd, 0x00, 0xf4, 0xe0, 0x60, 0x07, 0x0a, + 0x20, 0x46, 0xf7, 0xf7, 0x72, 0xff, 0x00, 0x21, 0x80, 0x46, 0x20, 0x46, + 0xfc, 0xf7, 0xd0, 0xf8, 0x4f, 0xf4, 0x40, 0x41, 0x20, 0x46, 0xfc, 0xf7, + 0xcb, 0xf8, 0x20, 0x46, 0xfb, 0xf7, 0x6a, 0xfc, 0xd4, 0xf8, 0xa8, 0x30, + 0xd3, 0xf8, 0x48, 0x24, 0xd3, 0xf8, 0x44, 0x34, 0x40, 0x2b, 0xb4, 0xbf, + 0x19, 0x46, 0x40, 0x21, 0x8a, 0x42, 0x01, 0xdd, 0x93, 0xb2, 0x03, 0xe0, + 0x3f, 0x2b, 0xd4, 0xbf, 0x9b, 0xb2, 0x40, 0x23, 0xff, 0x22, 0x20, 0x46, + 0x40, 0xf2, 0xa7, 0x41, 0xf5, 0xf7, 0xa6, 0xff, 0x00, 0x23, 0x20, 0x46, + 0x40, 0xf2, 0xa5, 0x41, 0x4f, 0xf4, 0xe0, 0x62, 0xf5, 0xf7, 0x9e, 0xff, + 0x4f, 0xf4, 0x7a, 0x72, 0x32, 0x21, 0x20, 0x46, 0xff, 0xf7, 0x7b, 0xff, + 0x01, 0x21, 0x20, 0x46, 0x95, 0xf8, 0xc0, 0x62, 0xfd, 0xf7, 0xbc, 0xfa, + 0x20, 0x46, 0xf7, 0xf7, 0x60, 0xfb, 0x3b, 0x02, 0x20, 0x46, 0x40, 0xf2, + 0xa5, 0x41, 0x4f, 0xf4, 0xe0, 0x62, 0xf5, 0xf7, 0x87, 0xff, 0x00, 0x21, + 0x20, 0x46, 0xfc, 0xf7, 0x8d, 0xf8, 0x95, 0xf8, 0xc4, 0x72, 0x01, 0x2f, + 0x3a, 0xd1, 0x20, 0x46, 0x07, 0xa9, 0xfd, 0xf7, 0x2d, 0xfe, 0x39, 0x46, + 0x20, 0x46, 0xfa, 0xf7, 0x27, 0xfc, 0xd4, 0xf8, 0xa8, 0x30, 0xd3, 0xf8, + 0x48, 0x24, 0xd3, 0xf8, 0x44, 0x34, 0x3e, 0x2b, 0xb4, 0xbf, 0x19, 0x46, + 0x3e, 0x21, 0x8a, 0x42, 0x01, 0xdd, 0x93, 0xb2, 0x03, 0xe0, 0x3d, 0x2b, + 0xd4, 0xbf, 0x9b, 0xb2, 0x3e, 0x23, 0x20, 0x46, 0x40, 0xf2, 0xa7, 0x41, + 0xff, 0x22, 0xf5, 0xf7, 0x5f, 0xff, 0x00, 0x23, 0x20, 0x46, 0x40, 0xf2, + 0xa5, 0x41, 0x4f, 0xf4, 0xe0, 0x62, 0xf5, 0xf7, 0x57, 0xff, 0x20, 0x46, + 0x32, 0x21, 0x4f, 0xf4, 0x7a, 0x72, 0xff, 0xf7, 0x34, 0xff, 0x95, 0xf8, + 0xc0, 0x32, 0xdb, 0xb9, 0x95, 0xf8, 0xc2, 0x32, 0x20, 0x46, 0x04, 0x33, + 0x85, 0xf8, 0xc2, 0x32, 0x01, 0x21, 0xfa, 0xf7, 0xf5, 0xfb, 0x11, 0xe0, + 0x00, 0x21, 0x01, 0x23, 0xdb, 0x22, 0x8d, 0xf8, 0x24, 0x30, 0x03, 0x92, + 0x04, 0x93, 0x20, 0x46, 0x07, 0xaa, 0x0b, 0x46, 0x8d, 0xf8, 0x25, 0x60, + 0x00, 0x91, 0x01, 0x91, 0x02, 0x91, 0x05, 0x91, 0xfd, 0xf7, 0x96, 0xfa, + 0x20, 0x46, 0x41, 0x46, 0xfc, 0xf7, 0x38, 0xf8, 0x20, 0x46, 0x09, 0x49, + 0x04, 0x22, 0xf5, 0xf7, 0x3b, 0xff, 0xb9, 0xf1, 0x00, 0x0f, 0x03, 0xd1, + 0xe3, 0x69, 0x18, 0x69, 0x35, 0xf0, 0x28, 0xdb, 0x20, 0x46, 0x00, 0x21, + 0xfd, 0xf7, 0x48, 0xfa, 0x0b, 0xb0, 0xbd, 0xe8, 0xf0, 0x83, 0x00, 0xbf, + 0xba, 0xe7, 0x01, 0x00, 0x08, 0x29, 0x03, 0xd0, 0x0a, 0x29, 0x03, 0xd0, + 0x02, 0x29, 0x03, 0xd1, 0xff, 0xf7, 0x86, 0xb8, 0xff, 0xf7, 0x1a, 0xbf, + 0x70, 0x47, 0x10, 0xb5, 0x04, 0x46, 0xf7, 0xf7, 0xda, 0xfa, 0x20, 0x46, + 0x00, 0x21, 0xfc, 0xf7, 0x0f, 0xf8, 0x20, 0x46, 0x08, 0x21, 0xbd, 0xe8, + 0x10, 0x40, 0xff, 0xf7, 0xe7, 0xbf, 0x38, 0xb5, 0x00, 0xf5, 0x80, 0x53, + 0x93, 0xf8, 0x24, 0x30, 0x04, 0x46, 0xd0, 0xf8, 0xa8, 0x50, 0x13, 0xb9, + 0xf7, 0xf7, 0x36, 0xfe, 0xe0, 0xb1, 0xd4, 0xf8, 0xf8, 0x30, 0x59, 0x07, + 0x06, 0xd1, 0x94, 0xf8, 0xf5, 0x30, 0x1b, 0xb9, 0x20, 0x46, 0x09, 0x21, + 0xff, 0xf7, 0xd0, 0xff, 0xd4, 0xf8, 0xf8, 0x30, 0x1a, 0x07, 0x0d, 0xd1, + 0x04, 0xf5, 0x80, 0x52, 0x92, 0xf9, 0x2c, 0x20, 0x42, 0xb9, 0x1b, 0x06, + 0x06, 0xd4, 0x94, 0xf8, 0xf5, 0x30, 0x1b, 0xb9, 0x20, 0x46, 0x02, 0x21, + 0xff, 0xf7, 0xbe, 0xff, 0xd4, 0xf8, 0xf8, 0x30, 0x13, 0xf0, 0x0e, 0x0f, + 0x02, 0xd1, 0x20, 0x46, 0xfb, 0xf7, 0x92, 0xfc, 0xd4, 0xf8, 0xf8, 0x30, + 0x13, 0xf0, 0x06, 0x0f, 0x3e, 0xd1, 0xd5, 0xf8, 0x34, 0x24, 0x4a, 0xb3, + 0xe3, 0x69, 0xd5, 0xf8, 0x38, 0x14, 0x18, 0x6a, 0x41, 0x1a, 0x91, 0x42, + 0x34, 0xd3, 0x6a, 0x21, 0x18, 0x69, 0x35, 0xf0, 0x85, 0xda, 0x41, 0x00, + 0x89, 0xb2, 0xb1, 0xb1, 0xe3, 0x69, 0x18, 0x69, 0x35, 0xf0, 0x7e, 0xda, + 0x88, 0xb9, 0x40, 0xf2, 0x76, 0x41, 0x20, 0x46, 0xf5, 0xf7, 0xbd, 0xfc, + 0xc0, 0x05, 0xc0, 0x0d, 0xa5, 0xf8, 0x6c, 0x05, 0x40, 0xf2, 0x77, 0x41, + 0x20, 0x46, 0xf5, 0xf7, 0xb4, 0xfc, 0xc0, 0x05, 0xc0, 0x0d, 0xa5, 0xf8, + 0x6e, 0x05, 0x20, 0x46, 0x00, 0x21, 0xf9, 0xf7, 0x36, 0xf9, 0x11, 0xe0, + 0x40, 0xf2, 0x76, 0x41, 0x20, 0x46, 0xf5, 0xf7, 0xa6, 0xfc, 0xc0, 0x05, + 0xc0, 0x0d, 0xa5, 0xf8, 0x6c, 0x05, 0x40, 0xf2, 0x77, 0x41, 0x20, 0x46, + 0xf5, 0xf7, 0x9d, 0xfc, 0xc0, 0x05, 0xc0, 0x0d, 0xa5, 0xf8, 0x6e, 0x05, + 0x20, 0x46, 0xf7, 0xf7, 0x2e, 0xfe, 0xb0, 0xf5, 0x40, 0x4f, 0x0b, 0xd0, + 0x20, 0x46, 0xfb, 0xf7, 0x0a, 0xfb, 0x20, 0xb1, 0x00, 0x23, 0x7f, 0x28, + 0x85, 0xf8, 0x56, 0x34, 0x02, 0xd0, 0x00, 0x23, 0x85, 0xf8, 0x57, 0x34, + 0x38, 0xbd, 0x00, 0x00, 0x2d, 0xe9, 0xf0, 0x41, 0x5f, 0xfa, 0x81, 0xf8, + 0x04, 0x46, 0xd0, 0xf8, 0xa8, 0x50, 0x40, 0x46, 0x0e, 0x46, 0xf6, 0xf7, + 0x33, 0xf9, 0x31, 0x46, 0x07, 0x46, 0x20, 0x46, 0xf6, 0xf7, 0x13, 0xf9, + 0x20, 0x46, 0xb4, 0xf8, 0xda, 0x10, 0xf9, 0xf7, 0x95, 0xfe, 0x04, 0x22, + 0x20, 0x46, 0x5b, 0x49, 0xf5, 0xf7, 0x6e, 0xfe, 0x41, 0x46, 0x20, 0x46, + 0xff, 0xf7, 0x2a, 0xf9, 0x0a, 0x20, 0xeb, 0xf3, 0x51, 0xf2, 0x4f, 0xf4, + 0x00, 0x42, 0x13, 0x46, 0x4f, 0xf4, 0x89, 0x61, 0x20, 0x46, 0xf5, 0xf7, + 0x4d, 0xfe, 0x20, 0x46, 0xf8, 0xf7, 0x0e, 0xfa, 0x78, 0x00, 0x05, 0x21, + 0x00, 0x22, 0xf7, 0xf7, 0x33, 0xfc, 0x39, 0x46, 0x00, 0x22, 0x80, 0x46, + 0x4f, 0xf4, 0x20, 0x10, 0xf7, 0xf7, 0x2c, 0xfc, 0x40, 0xf2, 0x57, 0x61, + 0x07, 0x46, 0x1f, 0xfa, 0x88, 0xf2, 0x20, 0x46, 0xf5, 0xf7, 0x50, 0xfc, + 0x20, 0x46, 0x4f, 0xf4, 0xcb, 0x61, 0xba, 0xb2, 0xf5, 0xf7, 0x4a, 0xfc, + 0x4f, 0xf4, 0x00, 0x73, 0x20, 0x46, 0x4f, 0xf4, 0x89, 0x61, 0x4f, 0xf4, + 0x40, 0x72, 0xf5, 0xf7, 0x27, 0xfe, 0x94, 0xf8, 0xda, 0x30, 0x0e, 0x2b, + 0x07, 0xd0, 0xb5, 0xf8, 0x62, 0x20, 0x13, 0xb2, 0xb3, 0xf1, 0xff, 0x3f, + 0x08, 0xbf, 0x15, 0x22, 0x00, 0xe0, 0x1e, 0x22, 0xa5, 0xf8, 0x40, 0x25, + 0x20, 0x46, 0x00, 0x21, 0x12, 0xb2, 0xfa, 0xf7, 0xa3, 0xf8, 0x20, 0xb1, + 0x20, 0x46, 0x00, 0x21, 0x14, 0x22, 0xfa, 0xf7, 0x9d, 0xf8, 0x94, 0xf8, + 0xda, 0x30, 0x38, 0x22, 0x0e, 0x2b, 0x0c, 0xbf, 0x18, 0x23, 0x00, 0x23, + 0x20, 0x46, 0x40, 0xf2, 0xeb, 0x41, 0xf5, 0xf7, 0x01, 0xfe, 0xb4, 0xf8, + 0xda, 0x30, 0x20, 0x46, 0x03, 0xf4, 0x70, 0x43, 0xb3, 0xf5, 0x00, 0x5f, + 0x0c, 0xbf, 0xb5, 0xf8, 0x66, 0x20, 0xb5, 0xf8, 0x68, 0x20, 0x01, 0x21, + 0x13, 0xb2, 0xb3, 0xf1, 0xff, 0x3f, 0x08, 0xbf, 0x02, 0x22, 0xa5, 0xf8, + 0x3e, 0x25, 0x12, 0xb2, 0xfa, 0xf7, 0x7a, 0xf8, 0x18, 0x22, 0x20, 0x46, + 0x20, 0x49, 0xf5, 0xf7, 0xf7, 0xfd, 0x20, 0x46, 0xf7, 0xf7, 0x48, 0xfb, + 0xb4, 0xf8, 0xda, 0x20, 0x95, 0xf8, 0xbc, 0x32, 0xd2, 0xb2, 0x80, 0xb1, + 0x0e, 0x2b, 0x02, 0xd9, 0x0e, 0x2a, 0x05, 0xd9, 0x01, 0xe0, 0x0e, 0x2a, + 0x02, 0xd8, 0x20, 0x46, 0x01, 0x21, 0x01, 0xe0, 0x20, 0x46, 0x00, 0x21, + 0x32, 0x46, 0xbd, 0xe8, 0xf0, 0x41, 0xfc, 0xf7, 0xe5, 0xbf, 0x93, 0x42, + 0x20, 0x46, 0x01, 0xd1, 0x01, 0x2b, 0x03, 0xd1, 0x08, 0x21, 0xff, 0xf7, + 0xab, 0xfe, 0x01, 0xe0, 0xfc, 0xf7, 0xbe, 0xff, 0x00, 0x21, 0x0a, 0x46, + 0x20, 0x46, 0xfb, 0xf7, 0xc5, 0xf8, 0x20, 0x46, 0xfe, 0xf7, 0xd5, 0xff, + 0x20, 0x46, 0x01, 0x21, 0xff, 0xf7, 0x53, 0xfc, 0x04, 0xf5, 0x82, 0x53, + 0x1b, 0x79, 0x2b, 0xb1, 0x20, 0x46, 0x03, 0x21, 0xbd, 0xe8, 0xf0, 0x41, + 0xfb, 0xf7, 0x57, 0xbd, 0xbd, 0xe8, 0xf0, 0x81, 0x72, 0xe6, 0x01, 0x00, + 0x7a, 0xe6, 0x01, 0x00, 0x80, 0x68, 0xf4, 0xf3, 0x31, 0xb1, 0x00, 0x00, + 0x30, 0xb5, 0x84, 0x88, 0x04, 0xf0, 0x03, 0x03, 0x01, 0x2b, 0x08, 0xd0, + 0x02, 0x2b, 0x0c, 0xd0, 0x00, 0x2b, 0x2b, 0xd1, 0x08, 0x78, 0x05, 0x23, + 0xb0, 0xfb, 0xf3, 0xf0, 0x30, 0xbd, 0x0b, 0x78, 0x14, 0x4a, 0x03, 0xf0, + 0x07, 0x03, 0xd0, 0x5c, 0x30, 0xbd, 0x0d, 0x78, 0xcb, 0x78, 0x08, 0x79, + 0x05, 0xf0, 0x7f, 0x02, 0x29, 0x06, 0x43, 0xea, 0x00, 0x20, 0x42, 0xf0, + 0x00, 0x63, 0x02, 0xd5, 0x43, 0xf4, 0x80, 0x63, 0x05, 0xe0, 0xa1, 0x06, + 0x44, 0xbf, 0x42, 0xf0, 0x00, 0x63, 0x43, 0xf4, 0x40, 0x73, 0x01, 0x06, + 0x48, 0xbf, 0x43, 0xf4, 0x00, 0x03, 0x42, 0x06, 0x48, 0xbf, 0x43, 0xf4, + 0x80, 0x03, 0x00, 0xf0, 0x30, 0x00, 0x43, 0xea, 0x00, 0x40, 0x30, 0xbd, + 0x4f, 0xf4, 0x00, 0x70, 0x30, 0xbd, 0x00, 0xbf, 0xce, 0xe4, 0x01, 0x00, + 0x70, 0xb5, 0x86, 0x68, 0x04, 0x46, 0xd4, 0xf8, 0xf8, 0x11, 0xb0, 0x68, + 0xf4, 0xf3, 0xda, 0xf0, 0xff, 0x23, 0x84, 0xf8, 0xe2, 0x31, 0x4f, 0xf0, + 0xff, 0x33, 0xa3, 0x61, 0x23, 0x68, 0x00, 0x22, 0x9a, 0x71, 0x33, 0x6b, + 0x02, 0x21, 0x05, 0x46, 0x18, 0x69, 0xf5, 0xf7, 0x65, 0xff, 0x20, 0x46, + 0x38, 0xf0, 0xdc, 0xdb, 0xd5, 0xf1, 0x01, 0x00, 0x38, 0xbf, 0x00, 0x20, + 0x70, 0xbd, 0x38, 0xb5, 0x0b, 0x68, 0x04, 0x46, 0x0d, 0x46, 0x73, 0xb1, + 0xd3, 0xf8, 0x7c, 0x11, 0x29, 0xb1, 0x03, 0x68, 0x40, 0xf2, 0x0c, 0x72, + 0xd8, 0x68, 0xeb, 0xf3, 0xff, 0xf3, 0x23, 0x68, 0x29, 0x68, 0xd8, 0x68, + 0x62, 0x69, 0xeb, 0xf3, 0xf9, 0xf3, 0x23, 0x68, 0x29, 0x46, 0xd8, 0x68, + 0x10, 0x22, 0xbd, 0xe8, 0x38, 0x40, 0xeb, 0xf3, 0xf1, 0xb3, 0x03, 0x68, + 0x70, 0xb5, 0x10, 0x21, 0x05, 0x46, 0xd8, 0x68, 0xeb, 0xf3, 0xda, 0xf3, + 0x04, 0x46, 0xa0, 0xb1, 0x2b, 0x68, 0x69, 0x69, 0xd8, 0x68, 0xeb, 0xf3, + 0xd3, 0xf3, 0x06, 0x46, 0x20, 0x60, 0x28, 0xb9, 0x21, 0x46, 0x28, 0x46, + 0xff, 0xf7, 0xcf, 0xff, 0x34, 0x46, 0x06, 0xe0, 0x00, 0x23, 0xc0, 0xf8, + 0x7c, 0x31, 0x21, 0x46, 0x28, 0x46, 0x39, 0xf0, 0xa5, 0xdc, 0x20, 0x46, + 0x70, 0xbd, 0x37, 0xb5, 0x05, 0x46, 0x01, 0xa9, 0xd0, 0xf8, 0x00, 0x05, + 0x39, 0xf0, 0xbc, 0xdd, 0x09, 0xe0, 0x28, 0x46, 0x21, 0x46, 0x3a, 0xf0, + 0x17, 0xd8, 0x63, 0x6c, 0x1b, 0xb9, 0x28, 0x46, 0x21, 0x46, 0x3a, 0xf0, + 0x27, 0xd9, 0x01, 0xa8, 0x39, 0xf0, 0xb6, 0xdd, 0x04, 0x46, 0x00, 0x28, + 0xef, 0xd1, 0x3e, 0xbd, 0xf8, 0xb5, 0xd0, 0xf8, 0x98, 0x43, 0x0f, 0x46, + 0xe3, 0x88, 0xfb, 0xb1, 0x0b, 0x88, 0x07, 0x2b, 0x1c, 0xd9, 0xa2, 0x88, + 0x9a, 0x42, 0x1c, 0xd1, 0x0e, 0x1d, 0x30, 0x46, 0x04, 0xf1, 0x08, 0x01, + 0xe6, 0xf3, 0xe6, 0xf5, 0x50, 0xb1, 0x11, 0xe0, 0x63, 0x19, 0x30, 0x46, + 0x0a, 0x49, 0x93, 0xf8, 0x48, 0x20, 0xe6, 0xf3, 0x99, 0xf5, 0x01, 0x35, + 0x36, 0x18, 0x00, 0xe0, 0x05, 0x46, 0xe3, 0x88, 0x9d, 0x42, 0xf1, 0xdb, + 0x40, 0x23, 0x3b, 0x80, 0x00, 0x20, 0xf8, 0xbd, 0x4f, 0xf0, 0xff, 0x30, + 0xf8, 0xbd, 0x4f, 0xf0, 0xff, 0x30, 0xf8, 0xbd, 0xf4, 0x30, 0x86, 0x00, + 0x2d, 0xe9, 0xf3, 0x47, 0x88, 0x46, 0x15, 0x46, 0x00, 0x28, 0x58, 0xd0, + 0x00, 0x29, 0x56, 0xd0, 0x0a, 0x88, 0xd0, 0xf8, 0x04, 0xa0, 0xd0, 0xf8, + 0x98, 0x73, 0xd0, 0xf8, 0x94, 0x63, 0x00, 0x2a, 0x48, 0xd0, 0xb1, 0xf8, + 0x02, 0x90, 0x00, 0x24, 0x19, 0xf0, 0x01, 0x09, 0xfc, 0x80, 0xbc, 0x80, + 0x24, 0xd0, 0x40, 0x2a, 0x13, 0xd1, 0x04, 0x31, 0x38, 0x46, 0x23, 0x46, + 0x00, 0x94, 0x3d, 0xf0, 0x7d, 0xde, 0xa0, 0x42, 0x38, 0xdb, 0xb6, 0xf8, + 0x02, 0x21, 0x12, 0xf0, 0x40, 0x02, 0x31, 0xd0, 0x00, 0x2d, 0x37, 0xd0, + 0xda, 0xf8, 0x0c, 0x00, 0x3c, 0xf0, 0x12, 0xde, 0x33, 0xe0, 0xa2, 0xf1, + 0x08, 0x03, 0x9b, 0xb2, 0x37, 0x2b, 0x27, 0xd8, 0x07, 0xf1, 0x08, 0x00, + 0x04, 0x31, 0xe6, 0xf3, 0x95, 0xf4, 0xb8, 0xf8, 0x00, 0x80, 0xa7, 0xf8, + 0x04, 0x80, 0x24, 0xe0, 0x20, 0x2a, 0x1e, 0xd8, 0x04, 0x31, 0x07, 0xf1, + 0x48, 0x00, 0xe6, 0xf3, 0x89, 0xf4, 0xb6, 0xf8, 0x02, 0x41, 0xb8, 0xf8, + 0x00, 0x80, 0x01, 0x23, 0x14, 0xf0, 0x40, 0x04, 0xa7, 0xf8, 0x04, 0x90, + 0xa7, 0xf8, 0x06, 0x80, 0xc6, 0xf8, 0xcc, 0x30, 0x0f, 0xd0, 0x6d, 0xb1, + 0xda, 0xf8, 0x0c, 0x00, 0x3c, 0xf0, 0xe8, 0xdd, 0x4c, 0x46, 0x08, 0xe0, + 0x14, 0x46, 0x06, 0xe0, 0x4f, 0xf0, 0xff, 0x34, 0x03, 0xe0, 0x6f, 0xf0, + 0x01, 0x04, 0x00, 0xe0, 0x2c, 0x46, 0x20, 0x46, 0xbd, 0xe8, 0xfc, 0x87, + 0x10, 0xb5, 0x0d, 0xf0, 0x79, 0xfa, 0x04, 0x46, 0xf1, 0xf7, 0x36, 0xf9, + 0x20, 0x46, 0xbd, 0xe8, 0x10, 0x40, 0xea, 0xf3, 0x5b, 0xb6, 0xaa, 0xaa, + 0x03, 0x00, 0x19, 0x58, 0x00, 0x00, 0x10, 0x18, 0x00, 0x00, 0x0f, 0xac, + 0x00, 0x00, 0x14, 0x72, 0x00, 0x00, 0x50, 0xf2, 0x00, 0x00, 0x40, 0x96, + 0x00, 0x00, 0x50, 0xf2, 0x01, 0x00, 0x00, 0x50, 0xf2, 0x02, 0x00, 0x00, + 0x00, 0x50, 0xf2, 0x02, 0x01, 0x00, 0x00, 0x90, 0x4c, 0x00, 0xaa, 0xaa, + 0x03, 0x00, 0x19, 0x58, 0x00, 0x00, 0x50, 0xf2, 0x02, 0x01, 0x01, 0x00, + 0x00, 0x03, 0x64, 0x00, 0x00, 0x27, 0xa4, 0x00, 0x00, 0x41, 0x43, 0x5e, + 0x00, 0x61, 0x32, 0x2f, 0x00, 0x00, 0x50, 0xf2, 0x04, 0x00, 0x00, 0x50, + 0xf2, 0x00, 0x00, 0x0f, 0xac, 0x00, 0x00, 0x14, 0x72, 0x00, 0x00, 0x01, + 0xaf, 0x81, 0x01, 0x00, 0x00, 0x10, 0x18, 0x00, 0x00, 0x50, 0xf2, 0x00, + 0x00, 0x0f, 0xac, 0x00, 0x00, 0x40, 0x96, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x10, 0x18, 0x00, 0x00, 0x0c, 0x0b, 0x12, 0x0f, 0x18, 0x0a, + 0x24, 0x0e, 0x30, 0x09, 0x48, 0x0d, 0x60, 0x08, 0x6c, 0x0c, 0x0c, 0x12, + 0x18, 0x24, 0x30, 0x48, 0x60, 0x6c, 0x5e, 0x00, 0x60, 0x00, 0x62, 0x00, + 0x78, 0x00, 0xd4, 0x00, 0x09, 0x2f, 0x16, 0x0e, 0x0e, 0x05, 0x69, 0x6c, + 0x30, 0x6d, 0x61, 0x63, 0x61, 0x64, 0x64, 0x72, 0x3d, 0x30, 0x30, 0x3a, + 0x31, 0x31, 0x3a, 0x32, 0x32, 0x3a, 0x33, 0x33, 0x3a, 0x34, 0x34, 0x3a, + 0x35, 0x35, 0x00, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x74, 0x79, 0x70, 0x65, + 0x3d, 0x30, 0x78, 0x66, 0x66, 0x66, 0x66, 0x00, 0x62, 0x6f, 0x61, 0x72, + 0x64, 0x72, 0x65, 0x76, 0x3d, 0x30, 0x78, 0x31, 0x30, 0x00, 0x62, 0x6f, + 0x61, 0x72, 0x64, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x3d, 0x38, 0x00, 0x61, + 0x61, 0x30, 0x3d, 0x33, 0x00, 0x73, 0x72, 0x6f, 0x6d, 0x72, 0x65, 0x76, + 0x3d, 0x32, 0x00, 0x00, 0x0f, 0xac, 0x00, 0x00, 0x50, 0xf2, 0x00, 0xaa, + 0xaa, 0x03, 0x00, 0x19, 0x58, 0x00, 0xcc, 0x01, 0x02, 0x00, 0x00, 0x00, + 0xd4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, + 0x00, 0x00, 0x6e, 0x84, 0x0b, 0x00, 0x00, 0x00, 0xd4, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x12, + 0x18, 0x24, 0x30, 0x48, 0x60, 0x6c, 0x00, 0x00, 0x10, 0x09, 0x1e, 0x09, + 0x1f, 0x09, 0x24, 0x09, 0x25, 0x09, 0x26, 0x09, 0x20, 0x09, 0x21, 0x09, + 0x27, 0x09, 0x28, 0x09, 0x29, 0x09, 0x22, 0x09, 0x23, 0x09, 0x30, 0x09, + 0x31, 0x09, 0x32, 0x09, 0x12, 0x09, 0x0f, 0x09, 0x00, 0x09, 0x01, 0x09, + 0x06, 0x09, 0x07, 0x09, 0x08, 0x09, 0x02, 0x09, 0x03, 0x09, 0x09, 0x09, + 0x0a, 0x09, 0x0b, 0x09, 0x04, 0x09, 0x05, 0x09, 0x0c, 0x09, 0x0d, 0x09, + 0x0e, 0x09, 0x11, 0x09, 0x00, 0xfc, 0x07, 0x00, 0x69, 0xa5, 0x05, 0x00, + 0xff, 0x01, 0x00, 0x00, 0x69, 0x5d, 0x0a, 0x00, 0x00, 0x04, 0x08, 0x00, + 0x97, 0x5e, 0x0a, 0x00, 0x01, 0x02, 0x00, 0x00, 0x97, 0xa6, 0x05, 0x00, + 0x06, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, + 0x06, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, + 0x0e, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x16, 0x01, 0x2d, 0x01, + 0x2c, 0x01, 0x6a, 0x00, 0x98, 0x00, 0x97, 0x00, 0x2f, 0x01, 0x0b, 0x00, + 0x13, 0x01, 0x1d, 0x00, 0x14, 0x01, 0x2e, 0x00, 0x2a, 0x01, 0x09, 0x00, + 0x1f, 0x01, 0x07, 0x00, 0xff, 0x00, 0x05, 0x00, 0x21, 0x84, 0x23, 0x84, + 0x34, 0x83, 0x84, 0x80, 0x67, 0x82, 0x56, 0x80, 0x34, 0x82, 0x84, 0x80, + 0x67, 0x82, 0x56, 0x80, 0x34, 0x82, 0x97, 0x7a, 0x97, 0x7a, 0x97, 0x7a, + 0x97, 0x7a, 0x87, 0x7a, 0x87, 0x7a, 0x97, 0x7b, 0x97, 0x7a, 0x87, 0x7a, + 0x87, 0x7a, 0x97, 0x7b, 0xff, 0xee, 0xdd, 0xcc, 0xbb, 0x99, 0x88, 0x77, + 0x66, 0x55, 0x44, 0x33, 0x22, 0x11, 0x00, 0x00, 0x59, 0x4d, 0x80, 0x00, + 0x95, 0x57, 0x80, 0x00, 0x49, 0x58, 0x80, 0x00, 0x31, 0x56, 0x80, 0x00, + 0x0d, 0x5a, 0x80, 0x00, 0xc1, 0x58, 0x80, 0x00, 0x29, 0x5a, 0x80, 0x00, + 0x45, 0x5a, 0x80, 0x00, 0x79, 0x57, 0x80, 0x00, 0x4d, 0x56, 0x80, 0x00, + 0x75, 0x5a, 0x80, 0x00, 0x25, 0x55, 0x80, 0x00, 0xf1, 0x59, 0x80, 0x00, + 0x0d, 0x58, 0x80, 0x00, 0x69, 0x54, 0x80, 0x00, 0xc1, 0x4e, 0x80, 0x00, + 0xe9, 0x51, 0x80, 0x00, 0x55, 0x52, 0x80, 0x00, 0xc9, 0x51, 0x80, 0x00, + 0xdd, 0x58, 0x80, 0x00, 0x51, 0x51, 0x80, 0x00, 0xd1, 0x55, 0x80, 0x00, + 0xa5, 0x55, 0x80, 0x00, 0x15, 0x56, 0x80, 0x00, 0xe1, 0x4f, 0x80, 0x00, + 0x89, 0x55, 0x80, 0x00, 0xfd, 0x4e, 0x80, 0x00, 0x25, 0x50, 0x80, 0x00, + 0x0d, 0x03, 0x01, 0x00, 0xed, 0x4d, 0x80, 0x00, 0x85, 0x4e, 0x80, 0x00, + 0xa9, 0x4f, 0x80, 0x00, 0xd9, 0x4d, 0x80, 0x00, 0x09, 0x4e, 0x80, 0x00, + 0x51, 0x4c, 0x80, 0x00, 0x65, 0x4c, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc1, 0x4f, 0x80, 0x00, + 0x25, 0x52, 0x80, 0x00, 0xf9, 0x51, 0x80, 0x00, 0xc7, 0x28, 0x00, 0x00, + 0x28, 0x00, 0x00, 0x00, 0x73, 0x64, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, + 0x5f, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x00, 0x73, 0x70, 0x69, + 0x5f, 0x70, 0x75, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x00, 0x61, 0x72, 0x70, + 0x5f, 0x6d, 0x61, 0x63, 0x61, 0x64, 0x64, 0x72, 0x00, 0x61, 0x72, 0x70, + 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x69, 0x70, 0x00, 0x00, 0x00, + 0xf8, 0x3b, 0x86, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, + 0xff, 0x3b, 0x86, 0x00, 0x01, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, + 0x0b, 0x3c, 0x86, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x1b, 0x3c, 0x86, 0x00, 0x03, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, + 0x26, 0x3c, 0x86, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x37, 0x3c, 0x86, 0x00, 0x05, 0x00, 0x00, 0x00, 0x08, 0x00, 0x30, 0x00, + 0x41, 0x3c, 0x86, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xb1, 0xb9, 0x01, 0x00, 0x08, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, + 0xbd, 0xb9, 0x01, 0x00, 0x09, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x70, 0x66, 0x6e, 0x5f, 0x73, 0x75, 0x73, 0x70, 0x65, 0x6e, 0x64, 0x00, + 0x58, 0x40, 0x86, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x14, 0x00, + 0x60, 0x40, 0x86, 0x00, 0x01, 0x00, 0x00, 0x00, 0x08, 0x00, 0x88, 0x00, + 0x68, 0x40, 0x86, 0x00, 0x02, 0x00, 0x00, 0x00, 0x08, 0x00, 0x38, 0x00, + 0x70, 0x40, 0x86, 0x00, 0x03, 0x00, 0x00, 0x00, 0x08, 0x00, 0x08, 0x00, + 0x7e, 0x40, 0x86, 0x00, 0x04, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x82, 0x40, 0x86, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x8b, 0x40, 0x86, 0x00, 0x06, 0x00, 0x00, 0x00, 0x08, 0x00, 0x38, 0x00, + 0x44, 0xba, 0x01, 0x00, 0x07, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x35, 0x2e, 0x39, 0x30, 0x2e, 0x32, 0x33, 0x30, 0x2e, 0x31, 0x32, 0x00, + 0x77, 0x6c, 0x25, 0x64, 0x3a, 0x20, 0x25, 0x73, 0x20, 0x25, 0x73, 0x20, + 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x20, 0x25, 0x73, 0x20, 0x46, + 0x57, 0x49, 0x44, 0x20, 0x30, 0x31, 0x2d, 0x25, 0x78, 0x0a, 0x00, 0x4e, + 0x6f, 0x76, 0x20, 0x20, 0x37, 0x20, 0x32, 0x30, 0x31, 0x34, 0x00, 0x31, + 0x36, 0x3a, 0x30, 0x33, 0x3a, 0x34, 0x35, 0x00, 0x5c, 0x78, 0x25, 0x30, + 0x32, 0x58, 0x00, 0x77, 0x6c, 0x63, 0x5f, 0x69, 0x6f, 0x76, 0x61, 0x72, + 0x73, 0x32, 0x00, 0x72, 0x73, 0x73, 0x69, 0x5f, 0x6f, 0x66, 0x66, 0x73, + 0x65, 0x74, 0x00, 0x50, 0x5a, 0x44, 0x3a, 0x20, 0x25, 0x64, 0x3e, 0x25, + 0x64, 0x20, 0x6f, 0x72, 0x20, 0x25, 0x64, 0x3e, 0x25, 0x64, 0x20, 0x61, + 0x3d, 0x25, 0x64, 0x0a, 0x00, 0x6c, 0x6f, 0x77, 0x5f, 0x72, 0x73, 0x73, + 0x69, 0x5f, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x00, 0x6c, 0x6f, + 0x77, 0x5f, 0x72, 0x73, 0x73, 0x69, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x00, 0x74, 0x63, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, + 0x65, 0x00, 0x74, 0x63, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x00, + 0x74, 0x63, 0x5f, 0x68, 0x69, 0x5f, 0x77, 0x6d, 0x00, 0x74, 0x63, 0x5f, + 0x6c, 0x6f, 0x5f, 0x77, 0x6d, 0x00, 0x74, 0x63, 0x5f, 0x73, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x00, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x5f, 0x73, 0x74, + 0x61, 0x74, 0x65, 0x00, 0x64, 0x79, 0x6e, 0x74, 0x78, 0x00, 0x74, 0x78, + 0x5f, 0x73, 0x74, 0x61, 0x74, 0x5f, 0x63, 0x68, 0x6b, 0x00, 0x74, 0x78, + 0x5f, 0x73, 0x74, 0x61, 0x74, 0x5f, 0x63, 0x68, 0x6b, 0x5f, 0x70, 0x72, + 0x64, 0x00, 0x74, 0x78, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x5f, 0x63, 0x68, + 0x6b, 0x5f, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x00, 0x74, 0x78, 0x5f, 0x73, + 0x74, 0x61, 0x74, 0x5f, 0x63, 0x68, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, 0x00, + 0x72, 0x78, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x00, 0x69, 0x73, 0x5f, 0x57, + 0x50, 0x53, 0x5f, 0x65, 0x6e, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x65, 0x00, + 0x69, 0x73, 0x5f, 0x77, 0x70, 0x73, 0x5f, 0x65, 0x6e, 0x72, 0x6f, 0x6c, + 0x6c, 0x65, 0x65, 0x00, 0x13, 0xbb, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x06, 0x00, 0x00, 0x00, 0x39, 0xbb, 0x01, 0x00, 0x02, 0x00, 0x00, 0x00, + 0x06, 0x00, 0x00, 0x00, 0x4a, 0xbb, 0x01, 0x00, 0x03, 0x00, 0x00, 0x00, + 0x06, 0x00, 0x00, 0x00, 0x5c, 0xbb, 0x01, 0x00, 0x04, 0x00, 0x00, 0x00, + 0x06, 0x00, 0x00, 0x00, 0x66, 0xbb, 0x01, 0x00, 0x05, 0x00, 0x00, 0x00, + 0x06, 0x00, 0x00, 0x00, 0x70, 0xbb, 0x01, 0x00, 0x06, 0x00, 0x00, 0x00, + 0x06, 0x00, 0x00, 0x00, 0x79, 0xbb, 0x01, 0x00, 0x07, 0x00, 0x00, 0x00, + 0x06, 0x00, 0x00, 0x00, 0x82, 0xbb, 0x01, 0x00, 0x08, 0x00, 0x00, 0x00, + 0x06, 0x00, 0x00, 0x00, 0x8c, 0xbb, 0x01, 0x00, 0x09, 0x00, 0x00, 0x00, + 0x06, 0x00, 0x00, 0x00, 0x98, 0xbb, 0x01, 0x00, 0x0a, 0x00, 0x00, 0x00, + 0x06, 0x00, 0x00, 0x00, 0x9e, 0xbb, 0x01, 0x00, 0x0b, 0x00, 0x00, 0x00, + 0x06, 0x00, 0x00, 0x00, 0xaa, 0xbb, 0x01, 0x00, 0x0c, 0x00, 0x00, 0x00, + 0x06, 0x00, 0x00, 0x00, 0xba, 0xbb, 0x01, 0x00, 0x0d, 0x00, 0x00, 0x00, + 0x06, 0x00, 0x00, 0x00, 0xcc, 0xbb, 0x01, 0x00, 0x0e, 0x00, 0x00, 0x00, + 0x06, 0x00, 0x00, 0x00, 0xdc, 0xbb, 0x01, 0x00, 0x0f, 0x00, 0x00, 0x00, + 0x06, 0x00, 0x00, 0x00, 0xe4, 0xbb, 0x01, 0x00, 0x10, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x00, 0xf4, 0xbb, 0x01, 0x00, 0x10, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x05, 0xa5, 0x81, 0x00, 0xfd, 0xa5, 0x81, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0d, 0xcd, 0x82, 0x00, + 0x89, 0xe6, 0x82, 0x00, 0xf5, 0xcb, 0x82, 0x00, 0xed, 0xcc, 0x82, 0x00, + 0x77, 0x6c, 0x63, 0x5f, 0x61, 0x6d, 0x70, 0x64, 0x75, 0x5f, 0x72, 0x65, + 0x63, 0x76, 0x5f, 0x61, 0x64, 0x64, 0x62, 0x61, 0x5f, 0x72, 0x65, 0x71, + 0x5f, 0x70, 0x72, 0x65, 0x5f, 0x70, 0x61, 0x74, 0x63, 0x68, 0x00, 0x77, + 0x6c, 0x63, 0x5f, 0x61, 0x6d, 0x70, 0x64, 0x75, 0x5f, 0x72, 0x65, 0x73, + 0x74, 0x61, 0x72, 0x74, 0x00, 0x73, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, + 0x20, 0x63, 0x61, 0x73, 0x65, 0x2e, 0x2e, 0x2e, 0x72, 0x65, 0x6c, 0x65, + 0x61, 0x73, 0x65, 0x20, 0x69, 0x73, 0x20, 0x25, 0x64, 0x2c, 0x20, 0x64, + 0x65, 0x6c, 0x74, 0x61, 0x20, 0x25, 0x64, 0x2c, 0x20, 0x69, 0x6e, 0x69, + 0x2d, 0x3e, 0x72, 0x65, 0x6d, 0x5f, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, + 0x20, 0x25, 0x64, 0x0a, 0x00, 0x25, 0x73, 0x3a, 0x20, 0x61, 0x6d, 0x70, + 0x64, 0x75, 0x2d, 0x3e, 0x6d, 0x61, 0x78, 0x5f, 0x70, 0x64, 0x75, 0x3d, + 0x25, 0x64, 0x2c, 0x20, 0x61, 0x6d, 0x70, 0x64, 0x75, 0x2d, 0x3e, 0x62, + 0x61, 0x5f, 0x74, 0x78, 0x5f, 0x77, 0x73, 0x69, 0x7a, 0x65, 0x3d, 0x25, + 0x64, 0x2c, 0x20, 0x61, 0x6d, 0x70, 0x64, 0x75, 0x2d, 0x3e, 0x62, 0x61, + 0x5f, 0x72, 0x78, 0x5f, 0x77, 0x73, 0x69, 0x7a, 0x65, 0x3d, 0x25, 0x64, + 0x0a, 0x00, 0x25, 0x73, 0x3a, 0x20, 0x77, 0x6c, 0x20, 0x64, 0x6f, 0x77, + 0x6e, 0x21, 0x0a, 0x00, 0x25, 0x73, 0x3a, 0x20, 0x77, 0x6c, 0x20, 0x75, + 0x70, 0x21, 0x0a, 0x00, 0xa6, 0xcb, 0x86, 0x00, 0x10, 0x00, 0x00, 0x00, + 0x06, 0x00, 0x00, 0x00, 0x52, 0x9b, 0x86, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x5d, 0x9b, 0x86, 0x00, 0x02, 0x00, 0x20, 0x00, + 0x07, 0x00, 0x00, 0x00, 0x6f, 0x9b, 0x86, 0x00, 0x03, 0x00, 0x40, 0x00, + 0x08, 0x00, 0x07, 0x00, 0x7c, 0x9b, 0x86, 0x00, 0x04, 0x00, 0x40, 0x00, + 0x08, 0x00, 0x04, 0x00, 0x8b, 0x9b, 0x86, 0x00, 0x05, 0x00, 0x40, 0x00, + 0x08, 0x00, 0x04, 0x00, 0x9a, 0x9b, 0x86, 0x00, 0x06, 0x00, 0x00, 0x00, + 0x08, 0x00, 0x04, 0x00, 0xab, 0x9b, 0x86, 0x00, 0x0d, 0x00, 0x10, 0x00, + 0x07, 0x00, 0x00, 0x00, 0xa7, 0x9b, 0x86, 0x00, 0x0e, 0x00, 0x20, 0x00, + 0x07, 0x00, 0x00, 0x00, 0xb4, 0x9b, 0x86, 0x00, 0x07, 0x00, 0x10, 0x00, + 0x07, 0x00, 0x00, 0x00, 0xbf, 0x9b, 0x86, 0x00, 0x08, 0x00, 0x00, 0x00, + 0x08, 0x00, 0x10, 0x00, 0xd6, 0x9b, 0x86, 0x00, 0x09, 0x00, 0x00, 0x00, + 0x06, 0x00, 0x00, 0x00, 0xc9, 0x9b, 0x86, 0x00, 0x24, 0x00, 0x00, 0x00, + 0x06, 0x00, 0x00, 0x00, 0xfe, 0xc7, 0x86, 0x00, 0x0a, 0x00, 0x00, 0x00, + 0x06, 0x00, 0x00, 0x00, 0xab, 0x72, 0x86, 0x00, 0x0f, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x00, 0xd5, 0x9b, 0x86, 0x00, 0x0b, 0x00, 0x80, 0x00, + 0x01, 0x00, 0x00, 0x00, 0xda, 0x9b, 0x86, 0x00, 0x0c, 0x00, 0x00, 0x00, + 0x05, 0x00, 0x00, 0x00, 0xe5, 0x9b, 0x86, 0x00, 0x1d, 0x00, 0x00, 0x00, + 0x03, 0x00, 0x00, 0x00, 0xfa, 0x9b, 0x86, 0x00, 0x1e, 0x00, 0x00, 0x00, + 0x07, 0x00, 0x00, 0x00, 0x13, 0x9c, 0x86, 0x00, 0x1f, 0x00, 0x00, 0x00, + 0x07, 0x00, 0x00, 0x00, 0x25, 0x9c, 0x86, 0x00, 0x21, 0x00, 0x00, 0x00, + 0x05, 0x00, 0x00, 0x00, 0x3b, 0x9c, 0x86, 0x00, 0x20, 0x00, 0x00, 0x00, + 0x03, 0x00, 0x00, 0x00, 0x49, 0x9c, 0x86, 0x00, 0x11, 0x00, 0x80, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x4f, 0x9c, 0x86, 0x00, 0x18, 0x00, 0x40, 0x00, + 0x08, 0x00, 0x06, 0x00, 0x53, 0x9c, 0x86, 0x00, 0x19, 0x00, 0x00, 0x00, + 0x05, 0x00, 0x00, 0x00, 0x61, 0x9c, 0x86, 0x00, 0x1a, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x6c, 0x9c, 0x86, 0x00, 0x1b, 0x00, 0x40, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xd5, 0x50, 0x83, 0x00, 0x21, 0x57, 0x83, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x77, 0x6c, 0x25, 0x64, + 0x3a, 0x20, 0x50, 0x48, 0x59, 0x54, 0x58, 0x20, 0x65, 0x72, 0x72, 0x6f, + 0x72, 0x28, 0x25, 0x64, 0x29, 0x0a, 0x00, 0x54, 0x54, 0x54, 0x54, 0x54, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x50, 0x50, + 0x50, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x23, + 0x03, 0x00, 0x00, 0x00, 0x00, 0x08, 0x4c, 0x4c, 0x4c, 0x4c, 0x4c, 0x4c, + 0x14, 0x14, 0x14, 0x00, 0x00, 0x01, 0x00, 0x00, 0x64, 0x64, 0x64, 0x64, + 0x64, 0x64, 0x64, 0x64, 0x64, 0x64, 0x64, 0x64, 0x64, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x64, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x58, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x54, 0x54, 0x54, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x50, 0x50, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x23, 0x4c, + 0x4c, 0x4c, 0x4c, 0x4c, 0x4c, 0x4c, 0x4c, 0x4c, 0x4c, 0x4c, 0x4c, 0x4c, + 0x00, 0x00, 0x00, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x40, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x01, 0x03, 0x00, 0x00, 0x00, 0x00, 0x01, 0x42, 0x42, + 0x42, 0x32, 0x42, 0x42, 0x14, 0x14, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x03, 0x00, 0x00, 0x00, 0x00, 0x01, 0x3e, 0x3e, 0x42, 0x34, 0x3e, 0x42, + 0x14, 0x14, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x54, 0x54, 0x54, 0x00, + 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x23, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x01, 0x44, 0x44, + 0x44, 0x38, 0x44, 0x40, 0x14, 0x14, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x32, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x32, 0x42, + 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x08, 0x48, 0x4a, 0x4a, 0x4a, 0x4a, 0x4a, 0x4a, + 0x4a, 0x4a, 0x4a, 0x4a, 0x4a, 0x48, 0x00, 0x00, 0x00, 0x34, 0x34, 0x34, + 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x00, 0x00, 0x00, 0x00, 0x4e, 0x4e, + 0x4e, 0x4e, 0x4e, 0x4e, 0x4e, 0x4e, 0x4e, 0x4e, 0x4e, 0x4e, 0x4e, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x08, 0x54, 0x54, 0x54, 0x00, 0x54, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x50, 0x50, 0x00, 0x50, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x23, 0x3a, 0x3e, 0x38, 0x00, + 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x0a, 0x00, 0x00, 0x00, 0x00, 0x64, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x58, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x3c, 0x42, 0x42, 0x42, 0x42, 0x42, + 0x42, 0x42, 0x42, 0x42, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, + 0x4a, 0x4e, 0x4e, 0x4e, 0x4e, 0x4e, 0x4e, 0x4e, 0x4a, 0x38, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x36, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, + 0x44, 0x44, 0x36, 0x4a, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x2e, 0x44, 0x44, + 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x2e, 0x46, 0x3a, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x08, 0x3c, 0x3e, 0x3e, 0x3e, 0x3e, 0x3e, 0x3e, 0x3e, 0x3e, 0x3e, + 0x3c, 0x3e, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x34, 0x44, 0x44, 0x44, 0x44, + 0x44, 0x44, 0x44, 0x44, 0x44, 0x38, 0x44, 0x40, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, + 0x5c, 0x5c, 0x5c, 0x5c, 0x5c, 0x5c, 0x5c, 0x5c, 0x5c, 0x5c, 0x5c, 0x5c, + 0x5c, 0x00, 0x00, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, 0x50, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x4e, 0x4e, 0x4e, 0x34, 0x4c, 0x38, 0x1e, 0x1e, 0x1e, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x01, 0x42, 0x44, + 0x42, 0x30, 0x44, 0x30, 0x14, 0x14, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x03, 0x00, 0x00, 0x00, 0x00, 0x01, 0x3e, 0x3e, 0x3e, 0x3c, 0x3e, 0x3e, + 0x14, 0x14, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x44, 0x44, 0x44, 0x36, 0x4c, 0x38, 0x14, 0x14, 0x14, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x01, 0x3e, 0x3e, + 0x30, 0x36, 0x3a, 0x2c, 0x14, 0x14, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, + 0x42, 0x00, 0x00, 0x00, 0x2e, 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, + 0x34, 0x00, 0x00, 0x00, 0x00, 0x4a, 0x4a, 0x4a, 0x4a, 0x4a, 0x4a, 0x4a, + 0x4a, 0x4a, 0x4a, 0x4a, 0x4a, 0x4a, 0x00, 0x00, 0x00, 0x2e, 0x34, 0x34, + 0x34, 0x34, 0x34, 0x34, 0x34, 0x34, 0x00, 0x00, 0x00, 0x00, 0x3e, 0x3e, + 0x3e, 0x4a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x28, 0x28, 0x28, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x46, 0x44, 0x44, 0x4a, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0a, 0x38, 0x44, 0x44, 0x44, + 0x44, 0x44, 0x44, 0x44, 0x44, 0x44, 0x38, 0x44, 0x44, 0x00, 0x00, 0x00, + 0x2c, 0x38, 0x38, 0x38, 0x38, 0x38, 0x30, 0x34, 0x34, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x42, + 0x42, 0x42, 0x42, 0x42, 0x14, 0x14, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3e, 0x3e, 0x3e, 0x3e, 0x3e, 0x3e, + 0x14, 0x14, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x54, 0x54, 0x54, 0x54, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x50, + 0x50, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x23, 0x38, 0x44, 0x44, 0x4a, 0x4a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x34, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x54, + 0x54, 0x54, 0x54, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x48, 0x48, 0x48, 0x48, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x23, 0x54, 0x54, 0x54, 0x54, 0x54, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x50, 0x50, 0x50, 0x50, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x23, 0x54, 0x54, 0x54, + 0x00, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x48, + 0x48, 0x48, 0x00, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x23, 0x5c, 0x5c, 0x5c, 0x00, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x50, 0x48, 0x50, 0x00, 0x44, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x23, 0x4c, 0x4c, 0x4c, 0x4c, 0x4c, + 0x4c, 0x4c, 0x4c, 0x4c, 0x4c, 0x4c, 0x4c, 0x4c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x3e, 0x3e, 0x3e, 0x32, 0x3e, 0x36, + 0x14, 0x14, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x3e, 0x3e, 0x3e, 0x34, 0x3e, 0x38, 0x14, 0x14, 0x14, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x42, 0x42, + 0x42, 0x3c, 0x42, 0x3c, 0x1e, 0x1e, 0x1e, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x4e, 0x4e, 0x4e, 0x36, 0x4c, 0x38, + 0x1e, 0x1e, 0x1e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x54, 0x54, 0x54, 0x54, + 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x48, 0x48, + 0x48, 0x48, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x23, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, 0x46, + 0x46, 0x48, 0x4a, 0x48, 0x17, 0x17, 0x17, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x61, 0x0a, 0x86, 0x00, 0x7e, 0x0a, 0x86, 0x00, 0x9b, 0x0a, 0x86, 0x00, + 0x0f, 0x0b, 0x86, 0x00, 0x49, 0x0b, 0x86, 0x00, 0x66, 0x0b, 0x86, 0x00, + 0x63, 0x0f, 0x86, 0x00, 0x24, 0x0e, 0x86, 0x00, 0x41, 0x0e, 0x86, 0x00, + 0x14, 0x10, 0x86, 0x00, 0x6b, 0x10, 0x86, 0x00, 0x31, 0x10, 0x86, 0x00, + 0x9c, 0x10, 0x86, 0x00, 0xd0, 0x10, 0x86, 0x00, 0x04, 0x11, 0x86, 0x00, + 0x60, 0x11, 0x86, 0x00, 0xb1, 0x11, 0x86, 0x00, 0x83, 0x0b, 0x86, 0x00, + 0xa0, 0x0b, 0x86, 0x00, 0x0c, 0x0f, 0x86, 0x00, 0xf7, 0x0b, 0x86, 0x00, + 0xce, 0x11, 0x86, 0x00, 0x31, 0x0c, 0x86, 0x00, 0x6b, 0x0c, 0x86, 0x00, + 0x94, 0x11, 0x86, 0x00, 0xda, 0x0b, 0x86, 0x00, 0x5e, 0x0e, 0x86, 0x00, + 0x4e, 0x0c, 0x86, 0x00, 0x29, 0x0f, 0x86, 0x00, 0xb8, 0x0a, 0x86, 0x00, + 0xd5, 0x0a, 0x86, 0x00, 0xf2, 0x0a, 0x86, 0x00, 0x7b, 0x0e, 0x86, 0x00, + 0x4e, 0x10, 0x86, 0x00, 0xbd, 0x0b, 0x86, 0x00, 0x98, 0x0e, 0x86, 0x00, + 0x9d, 0x0f, 0x86, 0x00, 0xb5, 0x0e, 0x86, 0x00, 0x88, 0x0c, 0x86, 0x00, + 0xd2, 0x0e, 0x86, 0x00, 0x14, 0x0c, 0x86, 0x00, 0x29, 0x0f, 0x86, 0x00, + 0xba, 0x0f, 0x86, 0x00, 0x2c, 0x0b, 0x86, 0x00, 0x44, 0x0a, 0x86, 0x00, + 0x80, 0x0f, 0x86, 0x00, 0x46, 0x0f, 0x86, 0x00, 0xef, 0x0e, 0x86, 0x00, + 0x44, 0xc0, 0x01, 0x00, 0x2c, 0xc1, 0x01, 0x00, 0x49, 0xc1, 0x01, 0x00, + 0xf2, 0xc0, 0x01, 0x00, 0x61, 0xc0, 0x01, 0x00, 0x66, 0xc1, 0x01, 0x00, + 0x41, 0xc2, 0x01, 0x00, 0xa0, 0xc1, 0x01, 0x00, 0xcb, 0xbf, 0x01, 0x00, + 0xab, 0xc3, 0x01, 0x00, 0x74, 0xbf, 0x01, 0x00, 0x0f, 0xc1, 0x01, 0x00, + 0x7e, 0xc0, 0x01, 0x00, 0x83, 0xc1, 0x01, 0x00, 0x24, 0xc2, 0x01, 0x00, + 0x28, 0xc6, 0x01, 0x00, 0x98, 0xc2, 0x01, 0x00, 0x38, 0x38, 0x38, 0x38, + 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x34, + 0x34, 0x34, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x3a, 0x3a, 0x3a, 0x3a, 0x46, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x38, 0x44, 0x44, 0x44, 0x4a, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2a, 0x00, + 0x00, 0x00, 0x00, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x01, 0x18, 0x09, 0x86, 0x00, 0xc0, 0x0d, 0x86, 0x00, + 0xe8, 0x0d, 0x86, 0x00, 0x20, 0x0d, 0x86, 0x00, 0xac, 0x0d, 0x86, 0x00, + 0xfc, 0xbf, 0x01, 0x00, 0xdc, 0xc3, 0x01, 0x00, 0xec, 0xc6, 0x01, 0x00, + 0xcc, 0xc2, 0x01, 0x00, 0xc8, 0xc3, 0x01, 0x00, 0xb8, 0xc2, 0x01, 0x00, + 0xe8, 0xbf, 0x01, 0x00, 0x30, 0xc0, 0x01, 0x00, 0xd4, 0xc1, 0x01, 0x00, + 0xf0, 0xc3, 0x01, 0x00, 0x38, 0xc4, 0x01, 0x00, 0xe8, 0xc1, 0x01, 0x00, + 0x20, 0xc7, 0x01, 0x00, 0xc0, 0xc1, 0x01, 0x00, 0x9c, 0xc6, 0x01, 0x00, + 0x50, 0xc7, 0x01, 0x00, 0x04, 0xc4, 0x01, 0x00, 0xfc, 0xc1, 0x01, 0x00, + 0x10, 0xc2, 0x01, 0x00, 0x34, 0xc7, 0x01, 0x00, 0x34, 0x3a, 0x3a, 0x3a, + 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x3a, 0x2c, 0x2c, 0x00, 0x00, 0x00, + 0x32, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x54, 0x54, 0x54, 0x00, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x48, 0x48, 0x48, 0x00, 0x48, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x23, 0x3e, 0x48, 0x48, 0x42, 0x46, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0a, 0x00, + 0x38, 0x38, 0x3e, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x0a, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x44, + 0x44, 0x4c, 0x4c, 0x4c, 0x17, 0x17, 0x17, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x32, 0x32, 0x32, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x38, 0x38, 0x38, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x4c, 0x00, 0x00, 0x00, 0x4c, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x00, 0x00, 0x00, 0x50, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, + 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x42, 0x42, 0x42, 0x42, 0x42, + 0x17, 0x17, 0x17, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x3e, 0x38, 0x3e, + 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x0a, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x01, 0x44, 0x44, + 0x44, 0x34, 0x44, 0x44, 0x14, 0x14, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x03, 0x00, 0x00, 0x00, 0x00, 0x08, 0x44, 0x44, 0x44, 0x38, 0x44, 0x44, + 0x14, 0x14, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x0f, 0x00, 0x15, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x64, 0x64, + 0x64, 0x64, 0x64, 0x64, 0x24, 0x24, 0x24, 0x00, 0x00, 0x01, 0x00, 0x00, + 0xc8, 0xe6, 0x86, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x0c, 0x00, + 0xd7, 0xe6, 0x86, 0x00, 0x01, 0x00, 0x00, 0x00, 0x07, 0x00, 0x04, 0x00, + 0xe9, 0xe6, 0x86, 0x00, 0x02, 0x00, 0x00, 0x00, 0x08, 0x00, 0x08, 0x00, + 0xfb, 0xe6, 0x86, 0x00, 0x03, 0x00, 0x00, 0x00, 0x07, 0x00, 0x04, 0x00, + 0x0b, 0xe7, 0x86, 0x00, 0x04, 0x00, 0x00, 0x00, 0x08, 0x00, 0x1c, 0x00, + 0x1b, 0xe7, 0x86, 0x00, 0x05, 0x00, 0x00, 0x00, 0x08, 0x00, 0x0c, 0x00, + 0x2c, 0xe7, 0x86, 0x00, 0x06, 0x00, 0x00, 0x00, 0x07, 0x00, 0x04, 0x00, + 0x43, 0xe7, 0x86, 0x00, 0x07, 0x00, 0x00, 0x00, 0x07, 0x00, 0x04, 0x00, + 0xf4, 0xc7, 0x01, 0x00, 0x08, 0x00, 0x00, 0x00, 0x07, 0x00, 0x04, 0x00, + 0x04, 0xc8, 0x01, 0x00, 0x09, 0x00, 0x00, 0x00, 0x07, 0x00, 0x04, 0x00, + 0x18, 0xc8, 0x01, 0x00, 0x0a, 0x00, 0x00, 0x00, 0x08, 0x00, 0x90, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x70, 0x6b, 0x74, 0x5f, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x69, + 0x63, 0x6d, 0x70, 0x00, 0x70, 0x6b, 0x74, 0x5f, 0x66, 0x69, 0x6c, 0x74, + 0x65, 0x72, 0x5f, 0x69, 0x63, 0x6d, 0x70, 0x5f, 0x63, 0x6e, 0x74, 0x00, + 0x77, 0x61, 0x6b, 0x65, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x00, + 0x53, 0x65, 0x74, 0x20, 0x42, 0x52, 0x50, 0x54, 0x20, 0x61, 0x74, 0x20, + 0x25, 0x78, 0x0a, 0x00, 0x0a, 0x46, 0x57, 0x49, 0x44, 0x20, 0x30, 0x31, + 0x2d, 0x25, 0x78, 0x0a, 0x00, 0x0a, 0x54, 0x52, 0x41, 0x50, 0x20, 0x25, + 0x78, 0x28, 0x25, 0x78, 0x29, 0x3a, 0x20, 0x70, 0x63, 0x20, 0x25, 0x78, + 0x2c, 0x20, 0x6c, 0x72, 0x20, 0x25, 0x78, 0x2c, 0x20, 0x73, 0x70, 0x20, + 0x25, 0x78, 0x2c, 0x20, 0x70, 0x73, 0x72, 0x20, 0x25, 0x78, 0x2c, 0x20, + 0x78, 0x70, 0x73, 0x72, 0x20, 0x25, 0x78, 0x0a, 0x00, 0x20, 0x20, 0x72, + 0x30, 0x20, 0x25, 0x78, 0x2c, 0x20, 0x72, 0x31, 0x20, 0x25, 0x78, 0x2c, + 0x20, 0x72, 0x32, 0x20, 0x25, 0x78, 0x2c, 0x20, 0x72, 0x33, 0x20, 0x25, + 0x78, 0x2c, 0x20, 0x72, 0x34, 0x20, 0x25, 0x78, 0x2c, 0x20, 0x72, 0x35, + 0x20, 0x25, 0x78, 0x2c, 0x20, 0x72, 0x36, 0x20, 0x25, 0x78, 0x0a, 0x00, + 0x20, 0x20, 0x72, 0x37, 0x20, 0x25, 0x78, 0x2c, 0x20, 0x72, 0x38, 0x20, + 0x25, 0x78, 0x2c, 0x20, 0x72, 0x39, 0x20, 0x25, 0x78, 0x2c, 0x20, 0x72, + 0x31, 0x30, 0x20, 0x25, 0x78, 0x2c, 0x20, 0x72, 0x31, 0x31, 0x20, 0x25, + 0x78, 0x2c, 0x20, 0x72, 0x31, 0x32, 0x20, 0x25, 0x78, 0x0a, 0x00, 0x0a, + 0x20, 0x20, 0x20, 0x73, 0x70, 0x2b, 0x30, 0x20, 0x25, 0x30, 0x38, 0x78, + 0x20, 0x25, 0x30, 0x38, 0x78, 0x20, 0x25, 0x30, 0x38, 0x78, 0x20, 0x25, + 0x30, 0x38, 0x78, 0x0a, 0x00, 0x20, 0x20, 0x73, 0x70, 0x2b, 0x31, 0x30, + 0x20, 0x25, 0x30, 0x38, 0x78, 0x20, 0x25, 0x30, 0x38, 0x78, 0x20, 0x25, + 0x30, 0x38, 0x78, 0x20, 0x25, 0x30, 0x38, 0x78, 0x0a, 0x00, 0x73, 0x70, + 0x2b, 0x25, 0x78, 0x20, 0x25, 0x30, 0x38, 0x78, 0x0a, 0x00, 0x64, 0x65, + 0x61, 0x64, 0x6d, 0x61, 0x6e, 0x5f, 0x74, 0x6f, 0x00, 0x72, 0x61, 0x6d, + 0x73, 0x74, 0x62, 0x79, 0x64, 0x69, 0x73, 0x00, 0x70, 0x61, 0x25, 0x64, + 0x3d, 0x30, 0x78, 0x25, 0x25, 0x78, 0x00, 0x70, 0x64, 0x25, 0x64, 0x3d, + 0x30, 0x78, 0x25, 0x25, 0x78, 0x00, 0x6e, 0x76, 0x72, 0x61, 0x6d, 0x5f, + 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x00, 0x00, 0x00, 0x00, + 0x86, 0x06, 0x02, 0x00, 0xd0, 0x09, 0x00, 0x00, 0x80, 0x06, 0x02, 0x00, + 0x3e, 0x3e, 0x00, 0x00, 0x82, 0x06, 0x02, 0x00, 0x3e, 0x02, 0x00, 0x00, + 0x00, 0x07, 0x02, 0x00, 0x3c, 0x00, 0x00, 0x00, 0x84, 0x06, 0x02, 0x00, + 0x12, 0x02, 0x00, 0x00, 0x60, 0x01, 0x04, 0x00, 0x03, 0x00, 0x01, 0x00, + 0x64, 0x01, 0x02, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x60, 0x01, 0x04, 0x00, + 0x03, 0x00, 0x01, 0x00, 0x66, 0x01, 0x02, 0x00, 0x0a, 0x00, 0x00, 0x00, + 0x60, 0x01, 0x04, 0x00, 0x04, 0x00, 0x01, 0x00, 0x64, 0x01, 0x02, 0x00, + 0x14, 0x00, 0x00, 0x00, 0x60, 0x01, 0x04, 0x00, 0x07, 0x00, 0x01, 0x00, + 0x64, 0x01, 0x02, 0x00, 0x83, 0x01, 0x00, 0x00, 0x60, 0x01, 0x04, 0x00, + 0x25, 0x00, 0x01, 0x00, 0x64, 0x01, 0x02, 0x00, 0xf4, 0x01, 0x00, 0x00, + 0x60, 0x01, 0x04, 0x00, 0x96, 0x05, 0x01, 0x00, 0x64, 0x01, 0x02, 0x00, + 0x2b, 0x04, 0x00, 0x00, 0x60, 0x01, 0x04, 0x00, 0x96, 0x05, 0x01, 0x00, + 0x66, 0x01, 0x02, 0x00, 0x00, 0x01, 0x00, 0x00, 0x60, 0x01, 0x04, 0x00, + 0xd7, 0x01, 0x01, 0x00, 0x64, 0x01, 0x02, 0x00, 0x3c, 0x00, 0x00, 0x00, + 0x60, 0x01, 0x04, 0x00, 0xdc, 0x01, 0x01, 0x00, 0x66, 0x01, 0x02, 0x00, + 0x34, 0x00, 0x00, 0x00, 0x60, 0x01, 0x04, 0x00, 0xe2, 0x01, 0x01, 0x00, + 0x64, 0x01, 0x02, 0x00, 0x30, 0x00, 0x00, 0x00, 0x60, 0x01, 0x04, 0x00, + 0xe7, 0x01, 0x01, 0x00, 0x66, 0x01, 0x02, 0x00, 0x2c, 0x00, 0x00, 0x00, + 0x60, 0x01, 0x04, 0x00, 0xed, 0x01, 0x01, 0x00, 0x64, 0x01, 0x02, 0x00, + 0x2c, 0x00, 0x00, 0x00, 0x60, 0x01, 0x04, 0x00, 0xf2, 0x01, 0x01, 0x00, + 0x66, 0x01, 0x02, 0x00, 0x28, 0x00, 0x00, 0x00, 0x60, 0x01, 0x04, 0x00, + 0xf8, 0x01, 0x01, 0x00, 0x64, 0x01, 0x02, 0x00, 0x28, 0x00, 0x00, 0x00, + 0x60, 0x01, 0x04, 0x00, 0xfd, 0x01, 0x01, 0x00, 0x66, 0x01, 0x02, 0x00, + 0x28, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x60, 0x01, 0x04, 0x00, 0x05, 0x00, 0x01, 0x03, 0x64, 0x01, 0x04, 0x00, + 0x00, 0x00, 0x19, 0x00, 0x24, 0x01, 0x04, 0x00, 0x04, 0x00, 0x00, 0x00, + 0x28, 0x01, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2c, 0x01, 0x04, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x30, 0x01, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x34, 0x01, 0x04, 0x00, 0x0a, 0x04, 0x70, 0x00, 0x34, 0x01, 0x04, 0x00, + 0xef, 0xbe, 0xd4, 0x00, 0x34, 0x01, 0x04, 0x00, 0x05, 0x00, 0x00, 0xff, + 0x34, 0x01, 0x04, 0x00, 0x01, 0xff, 0x02, 0xff, 0x30, 0x01, 0x04, 0x00, + 0x18, 0x00, 0x00, 0x00, 0x34, 0x01, 0x04, 0x00, 0x0a, 0x04, 0xe0, 0x00, + 0x34, 0x01, 0x04, 0x00, 0xef, 0xbe, 0x48, 0x00, 0x34, 0x01, 0x04, 0x00, + 0x05, 0x00, 0x00, 0xff, 0x34, 0x01, 0x04, 0x00, 0x01, 0xff, 0x02, 0xff, + 0x34, 0x01, 0x04, 0x00, 0x00, 0x10, 0x18, 0x01, 0x34, 0x01, 0x04, 0x00, + 0x02, 0x03, 0x00, 0x10, 0x34, 0x01, 0x04, 0x00, 0x18, 0xf1, 0xf2, 0xf3, + 0x34, 0x01, 0x04, 0x00, 0xbb, 0xcc, 0x00, 0x00, 0x30, 0x01, 0x04, 0x00, + 0x68, 0x06, 0x00, 0x00, 0x34, 0x01, 0x04, 0x00, 0x14, 0x04, 0x70, 0x00, + 0x34, 0x01, 0x04, 0x00, 0xef, 0xbe, 0x58, 0x01, 0x34, 0x01, 0x04, 0x00, + 0x00, 0x00, 0x00, 0xff, 0x34, 0x01, 0x04, 0x00, 0x01, 0xff, 0x02, 0xff, + 0x34, 0x01, 0x04, 0x00, 0x00, 0x10, 0x18, 0x01, 0x34, 0x01, 0x04, 0x00, + 0x02, 0x03, 0x03, 0x09, 0x34, 0x01, 0x04, 0x00, 0xbf, 0x00, 0x00, 0x10, + 0x34, 0x01, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x01, 0x04, 0x00, + 0x38, 0x00, 0x00, 0x00, 0x34, 0x01, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x30, 0x01, 0x04, 0x00, 0x88, 0x06, 0x00, 0x00, 0x34, 0x01, 0x04, 0x00, + 0x14, 0x04, 0x80, 0x00, 0x34, 0x01, 0x04, 0x00, 0xef, 0xbe, 0x18, 0x02, + 0x34, 0x01, 0x04, 0x00, 0x00, 0x00, 0x03, 0x09, 0x34, 0x01, 0x04, 0x00, + 0xbf, 0x00, 0x00, 0x03, 0x34, 0x01, 0x04, 0x00, 0x00, 0x01, 0x02, 0x03, + 0x34, 0x01, 0x04, 0x00, 0x04, 0x05, 0x00, 0x01, 0x34, 0x01, 0x04, 0x00, + 0x02, 0x03, 0x04, 0x05, 0x34, 0x01, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x30, 0x01, 0x04, 0x00, 0x58, 0x00, 0x00, 0x00, 0x34, 0x01, 0x04, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x30, 0x01, 0x04, 0x00, 0x38, 0x00, 0x00, 0x00, + 0x34, 0x01, 0x04, 0x00, 0x0f, 0x20, 0x00, 0x07, 0x34, 0x01, 0x04, 0x00, + 0x00, 0x00, 0x94, 0x00, 0x34, 0x01, 0x04, 0x00, 0x00, 0x00, 0x00, 0x90, + 0x34, 0x01, 0x04, 0x00, 0x74, 0x75, 0x76, 0x77, 0x34, 0x01, 0x04, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x34, 0x01, 0x04, 0x00, 0x00, 0x00, 0x05, 0x00, + 0x34, 0x01, 0x04, 0x00, 0xff, 0xff, 0xff, 0xff, 0x30, 0x01, 0x04, 0x00, + 0x68, 0x02, 0x00, 0x00, 0x34, 0x01, 0x04, 0x00, 0x6e, 0x84, 0x33, 0x00, + 0x34, 0x01, 0x04, 0x00, 0xdc, 0xba, 0x50, 0x00, 0x34, 0x01, 0x04, 0x00, + 0xd4, 0x00, 0x00, 0xab, 0x34, 0x01, 0x04, 0x00, 0xba, 0xda, 0xba, 0xda, + 0x34, 0x01, 0x04, 0x00, 0x00, 0x10, 0x18, 0xf1, 0x34, 0x01, 0x04, 0x00, + 0xf2, 0xf3, 0x00, 0x10, 0x34, 0x01, 0x04, 0x00, 0x18, 0xf1, 0xf2, 0xf3, + 0x34, 0x01, 0x04, 0x00, 0x10, 0x00, 0x00, 0x00, 0x34, 0x01, 0x04, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x34, 0x01, 0x04, 0x00, 0x00, 0x00, 0x0a, 0x00, + 0x34, 0x01, 0x04, 0x00, 0x01, 0x00, 0x00, 0x0e, 0x34, 0x01, 0x04, 0x00, + 0x42, 0x52, 0x43, 0x4d, 0x34, 0x01, 0x04, 0x00, 0x5f, 0x54, 0x45, 0x53, + 0x34, 0x01, 0x04, 0x00, 0x54, 0x5f, 0x53, 0x53, 0x34, 0x01, 0x04, 0x00, + 0x49, 0x44, 0x01, 0x04, 0x34, 0x01, 0x04, 0x00, 0x82, 0x84, 0x8b, 0x96, + 0x34, 0x01, 0x04, 0x00, 0x03, 0x01, 0x01, 0x06, 0x34, 0x01, 0x04, 0x00, + 0x02, 0x00, 0x00, 0x00, 0x30, 0x01, 0x04, 0x00, 0x68, 0x00, 0x00, 0x00, + 0x34, 0x01, 0x04, 0x00, 0x0a, 0x04, 0x28, 0x02, 0x34, 0x01, 0x04, 0x00, + 0xdc, 0xba, 0x80, 0x00, 0x34, 0x01, 0x04, 0x00, 0x00, 0x00, 0xff, 0xff, + 0x34, 0x01, 0x04, 0x00, 0xff, 0xff, 0xff, 0xff, 0x34, 0x01, 0x04, 0x00, + 0x00, 0x10, 0x18, 0xf1, 0x34, 0x01, 0x04, 0x00, 0xf2, 0xf3, 0x00, 0x10, + 0x34, 0x01, 0x04, 0x00, 0x18, 0xf1, 0xf2, 0xf3, 0x34, 0x01, 0x04, 0x00, + 0xd0, 0xaf, 0x00, 0x00, 0x34, 0x01, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x34, 0x01, 0x04, 0x00, 0x00, 0x00, 0x00, 0x01, 0x34, 0x01, 0x04, 0x00, + 0x02, 0x00, 0x00, 0x0e, 0x34, 0x01, 0x04, 0x00, 0x42, 0x52, 0x43, 0x4d, + 0x34, 0x01, 0x04, 0x00, 0x5f, 0x54, 0x45, 0x53, 0x34, 0x01, 0x04, 0x00, + 0x54, 0x5f, 0x53, 0x53, 0x34, 0x01, 0x04, 0x00, 0x49, 0x44, 0x01, 0x04, + 0x34, 0x01, 0x04, 0x00, 0x82, 0x84, 0x8b, 0x96, 0x34, 0x01, 0x04, 0x00, + 0x03, 0x01, 0x01, 0x06, 0x34, 0x01, 0x04, 0x00, 0x02, 0x01, 0x00, 0x00, + 0x30, 0x01, 0x04, 0x00, 0x68, 0x04, 0x00, 0x00, 0x34, 0x01, 0x04, 0x00, + 0x0a, 0x04, 0x28, 0x02, 0x34, 0x01, 0x04, 0x00, 0xdc, 0xba, 0x80, 0x00, + 0x34, 0x01, 0x04, 0x00, 0x00, 0x00, 0xff, 0xff, 0x34, 0x01, 0x04, 0x00, + 0xff, 0xff, 0xff, 0xff, 0x34, 0x01, 0x04, 0x00, 0x00, 0x10, 0x18, 0xf1, + 0x34, 0x01, 0x04, 0x00, 0xf2, 0xf3, 0x00, 0x10, 0x34, 0x01, 0x04, 0x00, + 0x18, 0xf1, 0xf2, 0xf3, 0x34, 0x01, 0x04, 0x00, 0xd0, 0xaf, 0x00, 0x00, + 0x34, 0x01, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x01, 0x04, 0x00, + 0x00, 0x00, 0x00, 0x01, 0x34, 0x01, 0x04, 0x00, 0x02, 0x00, 0x00, 0x0e, + 0x34, 0x01, 0x04, 0x00, 0x42, 0x52, 0x43, 0x4d, 0x34, 0x01, 0x04, 0x00, + 0x5f, 0x54, 0x45, 0x53, 0x34, 0x01, 0x04, 0x00, 0x54, 0x5f, 0x53, 0x53, + 0x34, 0x01, 0x04, 0x00, 0x49, 0x44, 0x01, 0x04, 0x34, 0x01, 0x04, 0x00, + 0x82, 0x84, 0x8b, 0x96, 0x34, 0x01, 0x04, 0x00, 0x03, 0x01, 0x01, 0x06, + 0x34, 0x01, 0x04, 0x00, 0x02, 0x01, 0x00, 0x00, 0x00, 0x01, 0x04, 0x00, + 0x00, 0x00, 0x00, 0x01, 0x90, 0x04, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xa0, 0x04, 0x02, 0x00, 0xf1, 0xf3, 0x00, 0x00, 0xb0, 0x04, 0x02, 0x00, + 0xef, 0xfd, 0x00, 0x00, 0xa8, 0x04, 0x02, 0x00, 0xff, 0xff, 0x00, 0x00, + 0xa8, 0x04, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0x04, 0x02, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xa4, 0x04, 0x02, 0x00, 0xcf, 0x1a, 0x00, 0x00, + 0xac, 0x04, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0xbc, 0x04, 0x02, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xa6, 0x04, 0x02, 0x00, 0xd7, 0x02, 0x00, 0x00, + 0xb6, 0x04, 0x02, 0x00, 0xff, 0xfd, 0x00, 0x00, 0xae, 0x04, 0x02, 0x00, + 0xff, 0xff, 0x00, 0x00, 0x06, 0x04, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x06, 0x04, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x04, 0x02, 0x00, + 0x18, 0x00, 0x00, 0x00, 0x06, 0x04, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x48, 0x04, 0x02, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x02, 0x04, 0x02, 0x00, + 0xa0, 0x07, 0x00, 0x00, 0x02, 0x05, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x05, 0x02, 0x00, 0x00, 0x40, 0x00, 0x00, 0x02, 0x05, 0x02, 0x00, + 0x04, 0x00, 0x00, 0x00, 0x00, 0x05, 0x02, 0x00, 0x00, 0x40, 0x00, 0x00, + 0x02, 0x05, 0x02, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x05, 0x02, 0x00, + 0x00, 0x40, 0x00, 0x00, 0x02, 0x05, 0x02, 0x00, 0x0c, 0x00, 0x00, 0x00, + 0x00, 0x05, 0x02, 0x00, 0x00, 0x40, 0x00, 0x00, 0x02, 0x05, 0x02, 0x00, + 0xc0, 0x00, 0x00, 0x00, 0x80, 0x05, 0x02, 0x00, 0xff, 0xff, 0x00, 0x00, + 0x82, 0x05, 0x02, 0x00, 0xff, 0xff, 0x00, 0x00, 0x84, 0x05, 0x02, 0x00, + 0xff, 0xff, 0x00, 0x00, 0x86, 0x05, 0x02, 0x00, 0xff, 0xff, 0x00, 0x00, + 0x88, 0x05, 0x02, 0x00, 0xff, 0xff, 0x00, 0x00, 0x9c, 0x05, 0x02, 0x00, + 0xf0, 0xff, 0x00, 0x00, 0x40, 0x05, 0x02, 0x00, 0x00, 0x80, 0x00, 0x00, + 0x20, 0x05, 0x02, 0x00, 0x06, 0x0f, 0x00, 0x00, 0x40, 0x05, 0x02, 0x00, + 0x00, 0x80, 0x00, 0x00, 0x40, 0x05, 0x02, 0x00, 0x00, 0x81, 0x00, 0x00, + 0x20, 0x05, 0x02, 0x00, 0x10, 0x1d, 0x00, 0x00, 0x40, 0x05, 0x02, 0x00, + 0x00, 0x81, 0x00, 0x00, 0x40, 0x05, 0x02, 0x00, 0x00, 0x82, 0x00, 0x00, + 0x20, 0x05, 0x02, 0x00, 0x1e, 0x28, 0x00, 0x00, 0x40, 0x05, 0x02, 0x00, + 0x00, 0x82, 0x00, 0x00, 0x40, 0x05, 0x02, 0x00, 0x00, 0x83, 0x00, 0x00, + 0x20, 0x05, 0x02, 0x00, 0x29, 0x31, 0x00, 0x00, 0x40, 0x05, 0x02, 0x00, + 0x00, 0x83, 0x00, 0x00, 0x40, 0x05, 0x02, 0x00, 0x00, 0x84, 0x00, 0x00, + 0x20, 0x05, 0x02, 0x00, 0x32, 0x3f, 0x00, 0x00, 0x40, 0x05, 0x02, 0x00, + 0x00, 0x84, 0x00, 0x00, 0x40, 0x05, 0x02, 0x00, 0x00, 0x85, 0x00, 0x00, + 0x20, 0x05, 0x02, 0x00, 0x40, 0x41, 0x00, 0x00, 0x40, 0x05, 0x02, 0x00, + 0x00, 0x85, 0x00, 0x00, 0x12, 0x06, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x2e, 0x06, 0x02, 0x00, 0xcd, 0xcc, 0x00, 0x00, 0x30, 0x06, 0x02, 0x00, + 0x0c, 0x00, 0x00, 0x00, 0x00, 0x06, 0x02, 0x00, 0x04, 0x80, 0x00, 0x00, + 0x96, 0x06, 0x02, 0x00, 0x08, 0x00, 0x00, 0x00, 0x9a, 0x06, 0x02, 0x00, + 0xe4, 0x00, 0x00, 0x00, 0x88, 0x06, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x9c, 0x06, 0x02, 0x00, 0x02, 0x00, 0x00, 0x00, 0x88, 0x06, 0x02, 0x00, + 0x00, 0x10, 0x00, 0x00, 0x9c, 0x06, 0x02, 0x00, 0x02, 0x00, 0x00, 0x00, + 0x88, 0x06, 0x02, 0x00, 0x00, 0x20, 0x00, 0x00, 0x9c, 0x06, 0x02, 0x00, + 0x02, 0x00, 0x00, 0x00, 0x88, 0x06, 0x02, 0x00, 0x00, 0x30, 0x00, 0x00, + 0x9c, 0x06, 0x02, 0x00, 0x02, 0x00, 0x00, 0x00, 0x88, 0x06, 0x02, 0x00, + 0x0b, 0x0f, 0x00, 0x00, 0x9e, 0x06, 0x02, 0x00, 0x07, 0x00, 0x00, 0x00, + 0x10, 0x05, 0x02, 0x00, 0x0b, 0x00, 0x00, 0x00, 0x50, 0x04, 0x02, 0x00, + 0x01, 0x4e, 0x00, 0x00, 0x52, 0x04, 0x02, 0x00, 0x5b, 0x01, 0x00, 0x00, + 0xe4, 0x04, 0x02, 0x00, 0x90, 0x00, 0x00, 0x00, 0x04, 0x04, 0x02, 0x00, + 0xb4, 0x00, 0x00, 0x00, 0x54, 0x05, 0x02, 0x00, 0xff, 0x3f, 0x00, 0x00, + 0x60, 0x01, 0x04, 0x00, 0x04, 0x00, 0x01, 0x03, 0x64, 0x01, 0x04, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x64, 0x01, 0x04, 0x00, 0xb4, 0x00, 0x00, 0x00, + 0x64, 0x01, 0x04, 0x00, 0x47, 0x00, 0x47, 0x00, 0x64, 0x01, 0x04, 0x00, + 0x00, 0x00, 0x64, 0x00, 0x64, 0x01, 0x04, 0x00, 0x30, 0x09, 0x40, 0x00, + 0x60, 0x01, 0x04, 0x00, 0x0d, 0x00, 0x01, 0x03, 0x64, 0x01, 0x04, 0x00, + 0x02, 0x00, 0x02, 0x00, 0x64, 0x01, 0x04, 0x00, 0x01, 0x00, 0x80, 0x00, + 0x64, 0x01, 0x04, 0x00, 0x05, 0x00, 0x00, 0x00, 0x64, 0x01, 0x04, 0x00, + 0x00, 0x00, 0x80, 0x00, 0x64, 0x01, 0x04, 0x00, 0x64, 0x00, 0x64, 0x00, + 0x64, 0x01, 0x04, 0x00, 0x0e, 0x00, 0x47, 0x00, 0x64, 0x01, 0x04, 0x00, + 0x00, 0x05, 0x00, 0x00, 0x60, 0x01, 0x04, 0x00, 0x15, 0x00, 0x01, 0x03, + 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0x42, 0x08, 0x64, 0x01, 0x04, 0x00, + 0xde, 0x0b, 0x07, 0x00, 0x64, 0x01, 0x04, 0x00, 0x0a, 0x00, 0x00, 0x00, + 0x60, 0x01, 0x04, 0x00, 0x1a, 0x00, 0x01, 0x03, 0x64, 0x01, 0x04, 0x00, + 0x00, 0xc0, 0x64, 0x0b, 0x60, 0x01, 0x04, 0x00, 0x1d, 0x00, 0x01, 0x03, + 0x64, 0x01, 0x04, 0x00, 0x10, 0x27, 0x00, 0x00, 0x64, 0x01, 0x04, 0x00, + 0x00, 0x00, 0x7a, 0x03, 0x60, 0x01, 0x04, 0x00, 0x20, 0x00, 0x01, 0x03, + 0x64, 0x01, 0x04, 0x00, 0x06, 0x00, 0x10, 0x27, 0x60, 0x01, 0x04, 0x00, + 0x23, 0x00, 0x01, 0x03, 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0xf6, 0x06, + 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0xa8, 0x0a, 0x64, 0x01, 0x04, 0x00, + 0x00, 0x00, 0x32, 0x00, 0x64, 0x01, 0x04, 0x00, 0x0a, 0x0e, 0x0b, 0x09, + 0x64, 0x01, 0x04, 0x00, 0x0e, 0x02, 0x00, 0x00, 0x64, 0x01, 0x04, 0x00, + 0x00, 0x00, 0x52, 0x0a, 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0x3f, 0x01, + 0x64, 0x01, 0x04, 0x00, 0xff, 0xff, 0x00, 0x0c, 0x64, 0x01, 0x04, 0x00, + 0x32, 0x04, 0x6e, 0x06, 0x64, 0x01, 0x04, 0x00, 0x02, 0x00, 0xf2, 0x09, + 0x60, 0x01, 0x04, 0x00, 0x2e, 0x00, 0x01, 0x03, 0x64, 0x01, 0x04, 0x00, + 0x00, 0x00, 0x00, 0x80, 0x60, 0x01, 0x04, 0x00, 0x32, 0x00, 0x01, 0x03, + 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0x32, 0x0b, 0x60, 0x01, 0x04, 0x00, + 0x34, 0x00, 0x01, 0x03, 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0xcc, 0x05, + 0x60, 0x01, 0x04, 0x00, 0x58, 0x00, 0x01, 0x03, 0x64, 0x01, 0x04, 0x00, + 0x42, 0x52, 0x43, 0x4d, 0x64, 0x01, 0x04, 0x00, 0x5f, 0x54, 0x45, 0x53, + 0x64, 0x01, 0x04, 0x00, 0x54, 0x5f, 0x53, 0x53, 0x64, 0x01, 0x04, 0x00, + 0x49, 0x44, 0x00, 0x00, 0x60, 0x01, 0x04, 0x00, 0x60, 0x00, 0x01, 0x03, + 0x64, 0x01, 0x04, 0x00, 0x39, 0x00, 0x00, 0x00, 0x64, 0x01, 0x04, 0x00, + 0x50, 0x00, 0x00, 0x00, 0x64, 0x01, 0x04, 0x00, 0xc0, 0x00, 0x00, 0x00, + 0x60, 0x01, 0x04, 0x00, 0x70, 0x00, 0x01, 0x03, 0x64, 0x01, 0x04, 0x00, + 0xaa, 0x03, 0xaa, 0x03, 0x64, 0x01, 0x04, 0x00, 0xaa, 0x03, 0xaa, 0x03, + 0x64, 0x01, 0x04, 0x00, 0xaa, 0x03, 0xaa, 0x03, 0x64, 0x01, 0x04, 0x00, + 0xaa, 0x03, 0xaa, 0x03, 0x64, 0x01, 0x04, 0x00, 0xec, 0x03, 0xd6, 0x03, + 0x64, 0x01, 0x04, 0x00, 0xc0, 0x03, 0xaa, 0x03, 0x64, 0x01, 0x04, 0x00, + 0xf7, 0x03, 0xe1, 0x03, 0x64, 0x01, 0x04, 0x00, 0xcb, 0x03, 0xb5, 0x03, + 0x64, 0x01, 0x04, 0x00, 0xaa, 0x03, 0xaa, 0x03, 0x64, 0x01, 0x04, 0x00, + 0xaa, 0x03, 0xaa, 0x03, 0x64, 0x01, 0x04, 0x00, 0xaa, 0x03, 0xaa, 0x03, + 0x64, 0x01, 0x04, 0x00, 0xaa, 0x03, 0xaa, 0x03, 0x64, 0x01, 0x04, 0x00, + 0xec, 0x03, 0xd6, 0x03, 0x64, 0x01, 0x04, 0x00, 0xc0, 0x03, 0xaa, 0x03, + 0x64, 0x01, 0x04, 0x00, 0xf7, 0x03, 0xe1, 0x03, 0x64, 0x01, 0x04, 0x00, + 0xcb, 0x03, 0xb5, 0x03, 0x64, 0x01, 0x04, 0x00, 0x02, 0x04, 0x02, 0x04, + 0x64, 0x01, 0x04, 0x00, 0x02, 0x04, 0x02, 0x04, 0x64, 0x01, 0x04, 0x00, + 0x0e, 0x04, 0x02, 0x04, 0x64, 0x01, 0x04, 0x00, 0x02, 0x04, 0x1a, 0x04, + 0x64, 0x01, 0x04, 0x00, 0x02, 0x04, 0x02, 0x04, 0x64, 0x01, 0x04, 0x00, + 0x02, 0x04, 0x02, 0x04, 0x64, 0x01, 0x04, 0x00, 0x02, 0x04, 0x02, 0x04, + 0x64, 0x01, 0x04, 0x00, 0x26, 0x04, 0x02, 0x04, 0x64, 0x01, 0x04, 0x00, + 0x02, 0x04, 0x02, 0x04, 0x64, 0x01, 0x04, 0x00, 0x02, 0x04, 0x02, 0x04, + 0x64, 0x01, 0x04, 0x00, 0x0e, 0x04, 0x02, 0x04, 0x64, 0x01, 0x04, 0x00, + 0x02, 0x04, 0x1a, 0x04, 0x64, 0x01, 0x04, 0x00, 0x02, 0x04, 0x02, 0x04, + 0x64, 0x01, 0x04, 0x00, 0x02, 0x04, 0x02, 0x04, 0x64, 0x01, 0x04, 0x00, + 0x02, 0x04, 0x02, 0x04, 0x64, 0x01, 0x04, 0x00, 0x26, 0x04, 0x02, 0x04, + 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0x1f, 0x00, 0x64, 0x01, 0x04, 0x00, + 0xff, 0x03, 0x1f, 0x00, 0x64, 0x01, 0x04, 0x00, 0x02, 0x00, 0x00, 0x00, + 0x64, 0x01, 0x04, 0x00, 0x02, 0x00, 0x00, 0x00, 0x60, 0x01, 0x04, 0x00, + 0x98, 0x00, 0x01, 0x03, 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0x1f, 0x00, + 0x64, 0x01, 0x04, 0x00, 0xff, 0x03, 0x1f, 0x00, 0x64, 0x01, 0x04, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x64, 0x01, 0x04, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x60, 0x01, 0x04, 0x00, 0xa0, 0x00, 0x01, 0x03, 0x64, 0x01, 0x04, 0x00, + 0x00, 0x00, 0x1f, 0x00, 0x64, 0x01, 0x04, 0x00, 0xff, 0x03, 0x1f, 0x00, + 0x64, 0x01, 0x04, 0x00, 0x01, 0x00, 0x00, 0x00, 0x64, 0x01, 0x04, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x60, 0x01, 0x04, 0x00, 0xa8, 0x00, 0x01, 0x03, + 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0x1f, 0x00, 0x64, 0x01, 0x04, 0x00, + 0xff, 0x03, 0x1f, 0x00, 0x64, 0x01, 0x04, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x64, 0x01, 0x04, 0x00, 0x01, 0x00, 0x00, 0x00, 0x60, 0x01, 0x04, 0x00, + 0xb8, 0x00, 0x01, 0x03, 0x64, 0x01, 0x04, 0x00, 0xe7, 0x00, 0xec, 0x00, + 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0x7b, 0x00, 0x64, 0x01, 0x04, 0x00, + 0x7e, 0x00, 0x00, 0x00, 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0x4f, 0x51, 0x64, 0x01, 0x04, 0x00, + 0x3f, 0x00, 0x00, 0x00, 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0x00, 0x10, + 0x60, 0x01, 0x04, 0x00, 0xc0, 0x00, 0x01, 0x03, 0x64, 0x01, 0x04, 0x00, + 0x37, 0x24, 0x37, 0x24, 0x64, 0x01, 0x04, 0x00, 0x37, 0x24, 0x37, 0x24, + 0x60, 0x01, 0x04, 0x00, 0x93, 0x01, 0x01, 0x03, 0x64, 0x01, 0x04, 0x00, + 0x0f, 0x00, 0x40, 0x00, 0x64, 0x01, 0x04, 0x00, 0xe6, 0x06, 0x00, 0x00, + 0x60, 0x01, 0x04, 0x00, 0x97, 0x01, 0x01, 0x03, 0x64, 0x01, 0x04, 0x00, + 0x1a, 0x08, 0x00, 0x00, 0x60, 0x01, 0x04, 0x00, 0xa0, 0x01, 0x01, 0x03, + 0x64, 0x01, 0x04, 0x00, 0xff, 0xff, 0xff, 0xff, 0x64, 0x01, 0x04, 0x00, + 0xff, 0xff, 0xff, 0xff, 0x64, 0x01, 0x04, 0x00, 0xff, 0xff, 0xff, 0xff, + 0x64, 0x01, 0x04, 0x00, 0xff, 0xff, 0xff, 0xff, 0x64, 0x01, 0x04, 0x00, + 0xff, 0xff, 0xff, 0xff, 0x64, 0x01, 0x04, 0x00, 0xff, 0xff, 0xff, 0xff, + 0x64, 0x01, 0x04, 0x00, 0xff, 0xff, 0xff, 0xff, 0x64, 0x01, 0x04, 0x00, + 0xff, 0xff, 0xff, 0xff, 0x60, 0x01, 0x04, 0x00, 0xbc, 0x01, 0x01, 0x03, + 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0x05, 0x00, 0x60, 0x01, 0x04, 0x00, + 0xc5, 0x01, 0x01, 0x03, 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0x10, 0x03, + 0x64, 0x01, 0x04, 0x00, 0xe0, 0x00, 0xff, 0xff, 0x64, 0x01, 0x04, 0x00, + 0x03, 0x09, 0xbf, 0x00, 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0x03, 0x09, + 0x64, 0x01, 0x04, 0x00, 0xbf, 0x00, 0x00, 0x10, 0x64, 0x01, 0x04, 0x00, + 0x03, 0x09, 0xbf, 0x00, 0x64, 0x01, 0x04, 0x00, 0x00, 0x03, 0x00, 0x00, + 0x60, 0x01, 0x04, 0x00, 0xcd, 0x01, 0x01, 0x03, 0x64, 0x01, 0x04, 0x00, + 0xff, 0xff, 0xff, 0xff, 0x64, 0x01, 0x04, 0x00, 0xff, 0xff, 0xff, 0xff, + 0x64, 0x01, 0x04, 0x00, 0xff, 0xff, 0xff, 0xff, 0x64, 0x01, 0x04, 0x00, + 0xff, 0xff, 0xff, 0xff, 0x64, 0x01, 0x04, 0x00, 0xff, 0xff, 0xff, 0xff, + 0x64, 0x01, 0x04, 0x00, 0xff, 0xff, 0xff, 0xff, 0x64, 0x01, 0x04, 0x00, + 0xff, 0xff, 0xff, 0xff, 0x64, 0x01, 0x04, 0x00, 0xff, 0xff, 0xff, 0xff, + 0x64, 0x01, 0x04, 0x00, 0x20, 0x00, 0xcb, 0x01, 0x64, 0x01, 0x04, 0x00, + 0x00, 0x00, 0x54, 0x00, 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0xab, 0x08, + 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0x10, 0x04, 0x64, 0x01, 0x04, 0x00, + 0x84, 0x00, 0x02, 0x00, 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0x14, 0x00, + 0x64, 0x01, 0x04, 0x00, 0xcf, 0x01, 0x02, 0x00, 0x64, 0x01, 0x04, 0x00, + 0x44, 0x00, 0x00, 0x00, 0x64, 0x01, 0x04, 0x00, 0xaf, 0x08, 0x02, 0x00, + 0x64, 0x01, 0x04, 0x00, 0x10, 0x04, 0x64, 0x00, 0x64, 0x01, 0x04, 0x00, + 0x02, 0x02, 0x00, 0x00, 0x64, 0x01, 0x04, 0x00, 0x10, 0x00, 0xca, 0x01, + 0x64, 0x01, 0x04, 0x00, 0x02, 0x00, 0x3c, 0x00, 0x64, 0x01, 0x04, 0x00, + 0x00, 0x00, 0xaa, 0x08, 0x64, 0x01, 0x04, 0x00, 0x02, 0x00, 0x10, 0x04, + 0x64, 0x01, 0x04, 0x00, 0x54, 0x00, 0x02, 0x08, 0x64, 0x01, 0x04, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x64, 0x01, 0x04, 0x00, 0xce, 0x01, 0x00, 0x00, + 0x64, 0x01, 0x04, 0x00, 0x34, 0x00, 0x00, 0x00, 0x64, 0x01, 0x04, 0x00, + 0xae, 0x08, 0x00, 0x00, 0x64, 0x01, 0x04, 0x00, 0x10, 0x04, 0x44, 0x00, + 0x64, 0x01, 0x04, 0x00, 0x02, 0x0a, 0x00, 0x00, 0x64, 0x01, 0x04, 0x00, + 0x08, 0x00, 0xc9, 0x01, 0x64, 0x01, 0x04, 0x00, 0x02, 0x00, 0x30, 0x00, + 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0xa9, 0x08, 0x64, 0x01, 0x04, 0x00, + 0x02, 0x00, 0x10, 0x04, 0x64, 0x01, 0x04, 0x00, 0x3c, 0x00, 0x02, 0x10, + 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0x04, 0x00, 0x64, 0x01, 0x04, 0x00, + 0xcd, 0x01, 0x00, 0x00, 0x64, 0x01, 0x04, 0x00, 0x2c, 0x00, 0x00, 0x00, + 0x64, 0x01, 0x04, 0x00, 0xad, 0x08, 0x00, 0x00, 0x64, 0x01, 0x04, 0x00, + 0x10, 0x04, 0x34, 0x00, 0x64, 0x01, 0x04, 0x00, 0x02, 0x12, 0x00, 0x00, + 0x64, 0x01, 0x04, 0x00, 0x04, 0x00, 0xc8, 0x01, 0x64, 0x01, 0x04, 0x00, + 0x00, 0x00, 0x2c, 0x00, 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0xa8, 0x08, + 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0x10, 0x04, 0x64, 0x01, 0x04, 0x00, + 0x30, 0x00, 0x02, 0x19, 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x64, 0x01, 0x04, 0x00, 0xcc, 0x01, 0x02, 0x00, 0x64, 0x01, 0x04, 0x00, + 0x2c, 0x00, 0x00, 0x00, 0x64, 0x01, 0x04, 0x00, 0xac, 0x08, 0x02, 0x00, + 0x64, 0x01, 0x04, 0x00, 0x10, 0x04, 0x30, 0x00, 0x64, 0x01, 0x04, 0x00, + 0x02, 0x1a, 0x00, 0x00, 0x64, 0x01, 0x04, 0x00, 0xc0, 0x00, 0x0a, 0x04, + 0x64, 0x01, 0x04, 0x00, 0x70, 0x00, 0x00, 0x00, 0x64, 0x01, 0x04, 0x00, + 0x3a, 0x01, 0x0a, 0x04, 0x64, 0x01, 0x04, 0x00, 0x28, 0x02, 0x2c, 0xc0, + 0x64, 0x01, 0x04, 0x00, 0xf2, 0x02, 0x0a, 0x04, 0x64, 0x01, 0x04, 0x00, + 0x00, 0x00, 0x00, 0x01, 0x64, 0x01, 0x04, 0x00, 0x60, 0x00, 0x14, 0x04, + 0x64, 0x01, 0x04, 0x00, 0x38, 0x00, 0x00, 0x00, 0x64, 0x01, 0x04, 0x00, + 0x02, 0x01, 0x14, 0x04, 0x64, 0x01, 0x04, 0x00, 0x14, 0x01, 0x2c, 0xc0, + 0x64, 0x01, 0x04, 0x00, 0xde, 0x01, 0x14, 0x04, 0x64, 0x01, 0x04, 0x00, + 0x00, 0x00, 0x80, 0x00, 0x64, 0x01, 0x04, 0x00, 0x22, 0x00, 0x37, 0x04, + 0x64, 0x01, 0x04, 0x00, 0x15, 0x00, 0x00, 0x00, 0x64, 0x01, 0x04, 0x00, + 0xdf, 0x00, 0x37, 0x04, 0x64, 0x01, 0x04, 0x00, 0x65, 0x00, 0x2c, 0xc0, + 0x64, 0x01, 0x04, 0x00, 0x2e, 0x01, 0x37, 0x04, 0x64, 0x01, 0x04, 0x00, + 0x00, 0x00, 0x2f, 0x00, 0x64, 0x01, 0x04, 0x00, 0x11, 0x00, 0x6e, 0x84, + 0x64, 0x01, 0x04, 0x00, 0x0b, 0x00, 0x00, 0x00, 0x64, 0x01, 0x04, 0x00, + 0xd4, 0x00, 0x6e, 0x84, 0x64, 0x01, 0x04, 0x00, 0x33, 0x00, 0x2c, 0xc0, + 0x64, 0x01, 0x04, 0x00, 0xfc, 0x00, 0x6e, 0x84, 0x64, 0x01, 0x04, 0x00, + 0x00, 0x00, 0x18, 0x00, 0x64, 0x01, 0x04, 0x00, 0x02, 0x00, 0x8a, 0x9d, + 0x64, 0x01, 0x04, 0x00, 0xfb, 0x00, 0x02, 0x08, 0x64, 0x01, 0x04, 0x00, + 0xc5, 0x4e, 0xfa, 0x00, 0x64, 0x01, 0x04, 0x00, 0x02, 0x0a, 0x83, 0x34, + 0x64, 0x01, 0x04, 0x00, 0xfe, 0x00, 0x02, 0x10, 0x64, 0x01, 0x04, 0x00, + 0x62, 0x27, 0xf9, 0x00, 0x64, 0x01, 0x04, 0x00, 0x02, 0x12, 0x42, 0x1a, + 0x64, 0x01, 0x04, 0x00, 0xfd, 0x00, 0x02, 0x19, 0x64, 0x01, 0x04, 0x00, + 0xb1, 0x13, 0xf8, 0x00, 0x64, 0x01, 0x04, 0x00, 0x02, 0x1a, 0x81, 0x11, + 0x64, 0x01, 0x04, 0x00, 0xfc, 0x00, 0x02, 0x1c, 0x64, 0x01, 0x04, 0x00, + 0xc1, 0x0f, 0xfc, 0x00, 0x60, 0x01, 0x04, 0x00, 0x7b, 0x03, 0x01, 0x03, + 0x64, 0x01, 0x04, 0x00, 0x07, 0x00, 0x14, 0x00, 0x64, 0x01, 0x04, 0x00, + 0x1e, 0x00, 0x00, 0x00, 0x60, 0x01, 0x04, 0x00, 0x83, 0x03, 0x01, 0x03, + 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x64, 0x01, 0x04, 0x00, + 0xc3, 0x30, 0x10, 0x92, 0x64, 0x01, 0x04, 0x00, 0x50, 0x31, 0x80, 0x22, + 0x64, 0x01, 0x04, 0x00, 0xc3, 0x30, 0x00, 0x00, 0x60, 0x01, 0x04, 0x00, + 0x88, 0x03, 0x01, 0x03, 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0x10, 0x04, + 0x60, 0x01, 0x04, 0x00, 0x8c, 0x03, 0x01, 0x03, 0x64, 0x01, 0x04, 0x00, + 0x80, 0x00, 0x00, 0x00, 0x60, 0x01, 0x04, 0x00, 0x8e, 0x03, 0x01, 0x03, + 0x64, 0x01, 0x04, 0x00, 0x05, 0x00, 0x00, 0x00, 0x60, 0x01, 0x04, 0x00, + 0x0b, 0x04, 0x01, 0x03, 0x64, 0x01, 0x04, 0x00, 0x07, 0x02, 0x00, 0x00, + 0x60, 0x01, 0x04, 0x00, 0x13, 0x04, 0x01, 0x03, 0x64, 0x01, 0x04, 0x00, + 0x00, 0x00, 0x01, 0x00, 0x60, 0x01, 0x04, 0x00, 0x15, 0x04, 0x01, 0x03, + 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x60, 0x01, 0x04, 0x00, + 0x53, 0x05, 0x01, 0x03, 0x64, 0x01, 0x04, 0x00, 0x18, 0x00, 0x00, 0x00, + 0x64, 0x01, 0x04, 0x00, 0x98, 0x3a, 0x98, 0x3a, 0x64, 0x01, 0x04, 0x00, + 0xa6, 0x0e, 0x64, 0x00, 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0xf4, 0x01, + 0x64, 0x01, 0x04, 0x00, 0x05, 0x00, 0x00, 0x00, 0x64, 0x01, 0x04, 0x00, + 0xa8, 0x61, 0xa8, 0x61, 0x64, 0x01, 0x04, 0x00, 0x30, 0x75, 0x1e, 0x00, + 0x60, 0x01, 0x04, 0x00, 0x5c, 0x05, 0x01, 0x03, 0x64, 0x01, 0x04, 0x00, + 0x50, 0xc3, 0x00, 0x00, 0x60, 0x01, 0x04, 0x00, 0x5e, 0x05, 0x01, 0x03, + 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0x14, 0x05, 0x64, 0x01, 0x04, 0x00, + 0x50, 0xc3, 0x00, 0x00, 0x60, 0x01, 0x04, 0x00, 0x62, 0x05, 0x01, 0x03, + 0x64, 0x01, 0x04, 0x00, 0x20, 0x4e, 0x00, 0x00, 0x64, 0x01, 0x04, 0x00, + 0x00, 0x00, 0x0f, 0x00, 0x64, 0x01, 0x04, 0x00, 0xf4, 0x01, 0x04, 0x00, + 0x60, 0x01, 0x04, 0x00, 0x68, 0x05, 0x01, 0x03, 0x64, 0x01, 0x04, 0x00, + 0x00, 0x00, 0x31, 0x00, 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0x03, 0x00, + 0x64, 0x01, 0x04, 0x00, 0x01, 0x00, 0x07, 0x00, 0x64, 0x01, 0x04, 0x00, + 0xc8, 0xaf, 0x00, 0x00, 0x64, 0x01, 0x04, 0x00, 0x88, 0x13, 0x00, 0x00, + 0x64, 0x01, 0x04, 0x00, 0x2c, 0x17, 0xff, 0x00, 0x60, 0x01, 0x04, 0x00, + 0x6f, 0x05, 0x01, 0x03, 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0x2c, 0x01, + 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0xa0, 0x0f, 0x60, 0x01, 0x04, 0x00, + 0x72, 0x05, 0x01, 0x03, 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0x03, 0x00, + 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0x2c, 0x01, 0x64, 0x01, 0x04, 0x00, + 0xc0, 0x00, 0x00, 0x00, 0x64, 0x01, 0x04, 0x00, 0x88, 0x13, 0x00, 0x00, + 0x64, 0x01, 0x04, 0x00, 0x64, 0x00, 0x00, 0x00, 0x64, 0x01, 0x04, 0x00, + 0xdc, 0x05, 0x40, 0x1f, 0x60, 0x01, 0x04, 0x00, 0x79, 0x05, 0x01, 0x03, + 0x64, 0x01, 0x04, 0x00, 0x01, 0x00, 0x01, 0x00, 0x64, 0x01, 0x04, 0x00, + 0x02, 0x00, 0x00, 0x00, 0x60, 0x01, 0x04, 0x00, 0x7c, 0x05, 0x01, 0x03, + 0x64, 0x01, 0x04, 0x00, 0x02, 0x00, 0x00, 0x00, 0x64, 0x01, 0x04, 0x00, + 0x00, 0x00, 0x40, 0x9c, 0x64, 0x01, 0x04, 0x00, 0x20, 0x4e, 0x00, 0x00, + 0x64, 0x01, 0x04, 0x00, 0xb8, 0x0b, 0x00, 0x00, 0x60, 0x01, 0x04, 0x00, + 0x81, 0x05, 0x01, 0x03, 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0x20, 0x4e, + 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0x05, 0x00, 0x64, 0x01, 0x04, 0x00, + 0xdc, 0x05, 0x3f, 0x00, 0x64, 0x01, 0x04, 0x00, 0x71, 0x02, 0x00, 0x00, + 0x64, 0x01, 0x04, 0x00, 0x30, 0x75, 0x00, 0x00, 0x60, 0x01, 0x04, 0x00, + 0x89, 0x05, 0x01, 0x03, 0x64, 0x01, 0x04, 0x00, 0xc4, 0x09, 0xa0, 0x0f, + 0x60, 0x01, 0x04, 0x00, 0x8c, 0x05, 0x01, 0x03, 0x64, 0x01, 0x04, 0x00, + 0x02, 0x00, 0xd0, 0x07, 0x60, 0x01, 0x04, 0x00, 0x8e, 0x05, 0x01, 0x03, + 0x64, 0x01, 0x04, 0x00, 0x20, 0x4e, 0x20, 0x4e, 0x60, 0x01, 0x04, 0x00, + 0x94, 0x05, 0x01, 0x03, 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0xbe, 0x00, + 0x60, 0x01, 0x04, 0x00, 0xb0, 0x05, 0x01, 0x03, 0x64, 0x01, 0x04, 0x00, + 0x00, 0x00, 0xe8, 0x03, 0x60, 0x01, 0x04, 0x00, 0xec, 0x05, 0x01, 0x03, + 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x01, 0x04, 0x00, + 0xf5, 0x05, 0x01, 0x03, 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0x88, 0x13, + 0x60, 0x01, 0x04, 0x00, 0x03, 0x00, 0x02, 0x00, 0x64, 0x01, 0x04, 0x00, + 0x1f, 0x00, 0x00, 0x00, 0x60, 0x01, 0x04, 0x00, 0x04, 0x00, 0x02, 0x00, + 0x64, 0x01, 0x04, 0x00, 0xff, 0x03, 0x00, 0x00, 0x60, 0x01, 0x04, 0x00, + 0x05, 0x00, 0x02, 0x00, 0x64, 0x01, 0x04, 0x00, 0x1f, 0x00, 0x00, 0x00, + 0x60, 0x01, 0x04, 0x00, 0x06, 0x00, 0x02, 0x00, 0x64, 0x01, 0x04, 0x00, + 0x07, 0x00, 0x00, 0x00, 0x60, 0x01, 0x04, 0x00, 0x07, 0x00, 0x02, 0x00, + 0x64, 0x01, 0x04, 0x00, 0x04, 0x00, 0x00, 0x00, 0x60, 0x01, 0x04, 0x00, + 0x08, 0x00, 0x02, 0x00, 0x64, 0x01, 0x04, 0x00, 0xff, 0xff, 0x00, 0x00, + 0x60, 0x01, 0x04, 0x00, 0x09, 0x00, 0x02, 0x00, 0x64, 0x01, 0x04, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x60, 0x01, 0x04, 0x00, 0x0a, 0x00, 0x02, 0x00, + 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x01, 0x04, 0x00, + 0x0b, 0x00, 0x02, 0x00, 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x60, 0x01, 0x04, 0x00, 0x0c, 0x00, 0x02, 0x00, 0x64, 0x01, 0x04, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x60, 0x01, 0x04, 0x00, 0x0d, 0x00, 0x02, 0x00, + 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x01, 0x04, 0x00, + 0x0e, 0x00, 0x02, 0x00, 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x60, 0x01, 0x04, 0x00, 0x0f, 0x00, 0x02, 0x00, 0x64, 0x01, 0x04, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x60, 0x01, 0x04, 0x00, 0x10, 0x00, 0x02, 0x00, + 0x64, 0x01, 0x04, 0x00, 0x1f, 0x00, 0x00, 0x00, 0x60, 0x01, 0x04, 0x00, + 0x11, 0x00, 0x02, 0x00, 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x60, 0x01, 0x04, 0x00, 0x12, 0x00, 0x02, 0x00, 0x64, 0x01, 0x04, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x60, 0x01, 0x04, 0x00, 0x13, 0x00, 0x02, 0x00, + 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x01, 0x04, 0x00, + 0x15, 0x00, 0x02, 0x00, 0x64, 0x01, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x60, 0x01, 0x04, 0x00, 0x16, 0x00, 0x02, 0x00, 0x64, 0x01, 0x04, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x63, 0x62, 0x75, 0x63, 0x6b, 0x5f, 0x73, 0x77, 0x66, 0x72, 0x65, 0x71, + 0x00, 0x00, 0x00, 0x00, 0xe0, 0x2e, 0x01, 0x01, 0x01, 0x50, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xc8, 0x32, 0x02, 0x01, 0x01, 0x49, 0x00, 0x00, + 0x89, 0x9d, 0xd8, 0x00, 0x40, 0x38, 0x03, 0x01, 0x01, 0x42, 0x00, 0x00, + 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x3c, 0x04, 0x01, 0x01, 0x3e, 0x00, 0x00, + 0x00, 0x00, 0x80, 0x00, 0x48, 0x3f, 0x05, 0x01, 0x01, 0x39, 0x00, 0x00, + 0xd0, 0x5e, 0x42, 0x00, 0xa0, 0x41, 0x06, 0x01, 0x01, 0x39, 0x00, 0x00, + 0x49, 0x92, 0x24, 0x00, 0x00, 0x4b, 0x07, 0x01, 0x01, 0x32, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x58, 0x4d, 0x08, 0x01, 0x01, 0x30, 0x00, 0x00, + 0x07, 0x1f, 0x7c, 0x00, 0x20, 0x4e, 0x09, 0x01, 0x01, 0x30, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xc0, 0x5d, 0x0a, 0x01, 0x01, 0x28, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xa8, 0x61, 0x0b, 0x01, 0x01, 0x26, 0x00, 0x00, + 0x66, 0x66, 0x66, 0x00, 0x90, 0x65, 0x0c, 0x01, 0x01, 0x24, 0x00, 0x00, + 0xc4, 0x4e, 0xec, 0x00, 0x30, 0x75, 0x0d, 0x01, 0x01, 0x20, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x18, 0x92, 0x0e, 0x02, 0x01, 0x33, 0x00, 0x00, + 0xf9, 0x3e, 0x56, 0x00, 0x00, 0x96, 0x0f, 0x02, 0x01, 0x32, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x40, 0x9c, 0x10, 0x02, 0x01, 0x30, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x80, 0xbb, 0x11, 0x02, 0x01, 0x28, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x09, 0xdc, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x08, 0x00, 0x08, 0x00, 0x08, 0xdc, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x08, 0x00, 0x0b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x6d, 0x6b, 0x65, 0x65, 0x70, 0x5f, 0x61, 0x6c, + 0x69, 0x76, 0x65, 0x00, 0x5b, 0x57, 0x4c, 0x41, 0x4e, 0x5d, 0x63, 0x6f, + 0x75, 0x6e, 0x74, 0x20, 0x3d, 0x20, 0x25, 0x64, 0x0a, 0x00, 0x49, 0x6e, + 0x69, 0x74, 0x20, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x00, 0x47, + 0x72, 0x6f, 0x75, 0x70, 0x20, 0x6b, 0x65, 0x79, 0x20, 0x65, 0x78, 0x70, + 0x61, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x62, 0x74, 0x61, 0x00, + 0x41, 0x4d, 0x50, 0x2d, 0x25, 0x30, 0x32, 0x78, 0x2d, 0x25, 0x30, 0x32, + 0x78, 0x2d, 0x25, 0x30, 0x32, 0x78, 0x2d, 0x25, 0x30, 0x32, 0x78, 0x2d, + 0x25, 0x30, 0x32, 0x78, 0x2d, 0x25, 0x30, 0x32, 0x78, 0x00, 0x62, 0x74, + 0x61, 0x6d, 0x70, 0x00, 0x62, 0x74, 0x61, 0x6d, 0x70, 0x5f, 0x66, 0x6c, + 0x61, 0x67, 0x73, 0x00, 0x62, 0x74, 0x61, 0x6d, 0x70, 0x5f, 0x63, 0x68, + 0x61, 0x6e, 0x00, 0x62, 0x74, 0x61, 0x6d, 0x70, 0x5f, 0x31, 0x31, 0x6e, + 0x5f, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x00, 0x62, 0x74, 0x61, + 0x6d, 0x70, 0x5f, 0x66, 0x62, 0x00, 0x62, 0x74, 0x61, 0x6d, 0x70, 0x5f, + 0x73, 0x74, 0x61, 0x74, 0x65, 0x6c, 0x6f, 0x67, 0x00, 0x77, 0x6c, 0x25, + 0x64, 0x2e, 0x25, 0x64, 0x3a, 0x20, 0x25, 0x73, 0x3a, 0x20, 0x73, 0x63, + 0x62, 0x20, 0x6b, 0x65, 0x79, 0x20, 0x69, 0x64, 0x20, 0x25, 0x64, 0x20, + 0x64, 0x6f, 0x65, 0x73, 0x20, 0x6e, 0x6f, 0x74, 0x20, 0x6d, 0x61, 0x74, + 0x63, 0x68, 0x20, 0x25, 0x64, 0x0a, 0x00, 0x77, 0x6c, 0x63, 0x5f, 0x6b, + 0x65, 0x79, 0x5f, 0x6c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x00, 0x00, 0x00, + 0x77, 0x6c, 0x63, 0x5f, 0x61, 0x70, 0x5f, 0x70, 0x72, 0x6f, 0x63, 0x65, + 0x73, 0x73, 0x5f, 0x61, 0x73, 0x73, 0x6f, 0x63, 0x72, 0x65, 0x71, 0x00, + 0x70, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x6f, 0x76, 0x61, 0x72, 0x73, + 0x00, 0x72, 0x65, 0x61, 0x64, 0x20, 0x73, 0x68, 0x6d, 0x65, 0x6d, 0x0a, + 0x00, 0x25, 0x73, 0x3a, 0x20, 0x44, 0x6f, 0x20, 0x57, 0x4c, 0x43, 0x5f, + 0x47, 0x45, 0x54, 0x5f, 0x50, 0x48, 0x59, 0x52, 0x45, 0x47, 0x2f, 0x57, + 0x4c, 0x43, 0x5f, 0x53, 0x45, 0x54, 0x5f, 0x50, 0x48, 0x59, 0x5f, 0x52, + 0x45, 0x47, 0x00, 0x25, 0x73, 0x3a, 0x20, 0x72, 0x65, 0x6a, 0x65, 0x63, + 0x74, 0x20, 0x64, 0x75, 0x65, 0x20, 0x74, 0x6f, 0x20, 0x6e, 0x6f, 0x20, + 0x6d, 0x65, 0x6d, 0x28, 0x25, 0x64, 0x29, 0x0a, 0x00, 0x25, 0x73, 0x3a, + 0x20, 0x72, 0x65, 0x6a, 0x65, 0x63, 0x74, 0x20, 0x64, 0x75, 0x65, 0x20, + 0x74, 0x6f, 0x20, 0x6f, 0x76, 0x65, 0x72, 0x20, 0x6d, 0x61, 0x78, 0x61, + 0x73, 0x73, 0x6f, 0x63, 0x28, 0x25, 0x64, 0x29, 0x0a, 0x00, 0x6f, 0x74, + 0x70, 0x72, 0x61, 0x77, 0x00, 0x66, 0x61, 0x62, 0x69, 0x64, 0x00, 0x61, + 0x6d, 0x70, 0x64, 0x75, 0x5f, 0x72, 0x74, 0x73, 0x00, 0x77, 0x6c, 0x63, + 0x5f, 0x69, 0x6f, 0x63, 0x74, 0x6c, 0x5f, 0x70, 0x61, 0x74, 0x63, 0x68, + 0x6d, 0x6f, 0x64, 0x00, 0x20, 0x79, 0x86, 0x00, 0x00, 0x00, 0x00, 0x40, + 0x03, 0x00, 0x00, 0x00, 0x9a, 0xdd, 0x01, 0x00, 0x08, 0x00, 0x08, 0x00, + 0x08, 0x00, 0x00, 0x00, 0x3d, 0x7d, 0x86, 0x00, 0x01, 0x00, 0x08, 0x80, + 0x08, 0x00, 0x00, 0x00, 0x89, 0x76, 0x86, 0x00, 0x02, 0x00, 0x00, 0x40, + 0x08, 0x00, 0x00, 0x00, 0xcc, 0xbb, 0x86, 0x00, 0x03, 0x00, 0x00, 0x40, + 0x06, 0x00, 0x00, 0x00, 0xab, 0x9b, 0x86, 0x00, 0x04, 0x00, 0x10, 0x00, + 0x07, 0x00, 0x00, 0x00, 0xa1, 0xdd, 0x01, 0x00, 0x05, 0x00, 0x00, 0x00, + 0x05, 0x00, 0x00, 0x00, 0x64, 0x7d, 0x86, 0x00, 0x06, 0x00, 0x00, 0x00, + 0x08, 0x00, 0x1c, 0x00, 0xa7, 0xdd, 0x01, 0x00, 0x07, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x00, 0xd6, 0x9b, 0x86, 0x00, 0x09, 0x00, 0x00, 0x00, + 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x6c, 0x09, 0x02, 0x00, 0x71, 0x09, + 0x03, 0x00, 0x76, 0x09, 0x04, 0x00, 0x7b, 0x09, 0x05, 0x00, 0x80, 0x09, + 0x06, 0x00, 0x85, 0x09, 0x07, 0x00, 0x8a, 0x09, 0x08, 0x00, 0x8f, 0x09, + 0x09, 0x00, 0x94, 0x09, 0x0a, 0x00, 0x99, 0x09, 0x0b, 0x00, 0x9e, 0x09, + 0x0c, 0x00, 0xa3, 0x09, 0x0d, 0x00, 0xa8, 0x09, 0x0e, 0x00, 0xb4, 0x09, + 0x4c, 0x84, 0xff, 0xe0, 0xb0, 0x84, 0xf7, 0xf7, 0xf9, 0x84, 0xf7, 0xff, + 0x3c, 0xc4, 0x07, 0x00, 0x3b, 0xc4, 0x07, 0x00, 0x00, 0x00, 0x2d, 0x00, + 0xa7, 0x90, 0x1a, 0x00, 0x47, 0x09, 0x0e, 0x00, 0x01, 0x20, 0x07, 0x00, + 0x8b, 0x93, 0x03, 0x00, 0x38, 0xca, 0x01, 0x00, 0x2a, 0xe5, 0x00, 0x00, + 0x97, 0x72, 0x00, 0x00, 0x4c, 0x39, 0x00, 0x00, 0xa6, 0x1c, 0x00, 0x00, + 0x53, 0x0e, 0x00, 0x00, 0x29, 0x07, 0x00, 0x00, 0x95, 0x03, 0x00, 0x00, + 0xca, 0x01, 0x00, 0x00, 0xe5, 0x00, 0x00, 0x00, 0x73, 0x00, 0x00, 0x00, + 0x39, 0x00, 0x00, 0x00, 0x1d, 0x00, 0x00, 0x00, 0x2e, 0x66, 0x61, 0x62, + 0x2e, 0x00, 0x25, 0x73, 0x2e, 0x66, 0x61, 0x62, 0x2e, 0x25, 0x64, 0x00, + 0x77, 0x6c, 0x25, 0x64, 0x3a, 0x20, 0x53, 0x63, 0x61, 0x6e, 0x20, 0x69, + 0x6e, 0x20, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x2c, 0x20, + 0x73, 0x6b, 0x69, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x20, 0x74, 0x78, 0x70, + 0x6f, 0x77, 0x65, 0x72, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, + 0x0a, 0x00, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x20, 0x61, 0x64, 0x6a, 0x21, + 0x0a, 0x00, 0x63, 0x63, 0x6b, 0x62, 0x77, 0x32, 0x30, 0x32, 0x67, 0x70, + 0x6f, 0x00, 0x63, 0x63, 0x6b, 0x62, 0x77, 0x32, 0x30, 0x75, 0x6c, 0x32, + 0x67, 0x70, 0x6f, 0x00, 0x6c, 0x65, 0x67, 0x6f, 0x66, 0x64, 0x6d, 0x62, + 0x77, 0x32, 0x30, 0x32, 0x67, 0x70, 0x6f, 0x00, 0x6c, 0x65, 0x67, 0x6f, + 0x66, 0x64, 0x6d, 0x62, 0x77, 0x32, 0x30, 0x75, 0x6c, 0x32, 0x67, 0x70, + 0x6f, 0x00, 0x6d, 0x63, 0x73, 0x62, 0x77, 0x32, 0x30, 0x32, 0x67, 0x70, + 0x6f, 0x00, 0x6d, 0x63, 0x73, 0x62, 0x77, 0x32, 0x30, 0x75, 0x6c, 0x32, + 0x67, 0x70, 0x6f, 0x00, 0x6d, 0x63, 0x73, 0x62, 0x77, 0x34, 0x30, 0x32, + 0x67, 0x70, 0x6f, 0x00, 0x6c, 0x65, 0x67, 0x6f, 0x66, 0x64, 0x6d, 0x62, + 0x77, 0x32, 0x30, 0x35, 0x67, 0x6c, 0x70, 0x6f, 0x00, 0x6c, 0x65, 0x67, + 0x6f, 0x66, 0x64, 0x6d, 0x62, 0x77, 0x32, 0x30, 0x75, 0x6c, 0x35, 0x67, + 0x6c, 0x70, 0x6f, 0x00, 0x6c, 0x65, 0x67, 0x6f, 0x66, 0x64, 0x6d, 0x62, + 0x77, 0x32, 0x30, 0x35, 0x67, 0x6d, 0x70, 0x6f, 0x00, 0x6c, 0x65, 0x67, + 0x6f, 0x66, 0x64, 0x6d, 0x62, 0x77, 0x32, 0x30, 0x75, 0x6c, 0x35, 0x67, + 0x6d, 0x70, 0x6f, 0x00, 0x6c, 0x65, 0x67, 0x6f, 0x66, 0x64, 0x6d, 0x62, + 0x77, 0x32, 0x30, 0x35, 0x67, 0x68, 0x70, 0x6f, 0x00, 0x6c, 0x65, 0x67, + 0x6f, 0x66, 0x64, 0x6d, 0x62, 0x77, 0x32, 0x30, 0x75, 0x6c, 0x35, 0x67, + 0x68, 0x70, 0x6f, 0x00, 0x6d, 0x63, 0x73, 0x62, 0x77, 0x32, 0x30, 0x35, + 0x67, 0x6c, 0x70, 0x6f, 0x00, 0x6d, 0x63, 0x73, 0x62, 0x77, 0x32, 0x30, + 0x75, 0x6c, 0x35, 0x67, 0x6c, 0x70, 0x6f, 0x00, 0x6d, 0x63, 0x73, 0x62, + 0x77, 0x34, 0x30, 0x35, 0x67, 0x6c, 0x70, 0x6f, 0x00, 0x6d, 0x63, 0x73, + 0x62, 0x77, 0x32, 0x30, 0x35, 0x67, 0x6d, 0x70, 0x6f, 0x00, 0x6d, 0x63, + 0x73, 0x62, 0x77, 0x32, 0x30, 0x75, 0x6c, 0x35, 0x67, 0x6d, 0x70, 0x6f, + 0x00, 0x6d, 0x63, 0x73, 0x62, 0x77, 0x34, 0x30, 0x35, 0x67, 0x6d, 0x70, + 0x6f, 0x00, 0x6d, 0x63, 0x73, 0x62, 0x77, 0x32, 0x30, 0x35, 0x67, 0x68, + 0x70, 0x6f, 0x00, 0x6d, 0x63, 0x73, 0x62, 0x77, 0x32, 0x30, 0x75, 0x6c, + 0x35, 0x67, 0x68, 0x70, 0x6f, 0x00, 0x6d, 0x63, 0x73, 0x62, 0x77, 0x34, + 0x30, 0x35, 0x67, 0x68, 0x70, 0x6f, 0x00, 0x6d, 0x63, 0x73, 0x33, 0x32, + 0x70, 0x6f, 0x00, 0x6c, 0x65, 0x67, 0x6f, 0x66, 0x64, 0x6d, 0x34, 0x30, + 0x64, 0x75, 0x70, 0x70, 0x6f, 0x00, 0x62, 0x77, 0x34, 0x30, 0x70, 0x6f, + 0x00, 0x63, 0x64, 0x64, 0x70, 0x6f, 0x00, 0x73, 0x74, 0x62, 0x63, 0x70, + 0x6f, 0x00, 0x62, 0x77, 0x64, 0x75, 0x70, 0x70, 0x6f, 0x00, 0x74, 0x78, + 0x70, 0x69, 0x64, 0x32, 0x67, 0x61, 0x30, 0x00, 0x74, 0x78, 0x70, 0x69, + 0x64, 0x32, 0x67, 0x61, 0x31, 0x00, 0x6d, 0x61, 0x78, 0x70, 0x32, 0x67, + 0x61, 0x30, 0x00, 0x6d, 0x61, 0x78, 0x70, 0x32, 0x67, 0x61, 0x31, 0x00, + 0x70, 0x61, 0x32, 0x67, 0x77, 0x30, 0x61, 0x30, 0x00, 0x70, 0x61, 0x32, + 0x67, 0x77, 0x30, 0x61, 0x31, 0x00, 0x70, 0x61, 0x32, 0x67, 0x77, 0x31, + 0x61, 0x30, 0x00, 0x70, 0x61, 0x32, 0x67, 0x77, 0x31, 0x61, 0x31, 0x00, + 0x70, 0x61, 0x32, 0x67, 0x77, 0x32, 0x61, 0x30, 0x00, 0x70, 0x61, 0x32, + 0x67, 0x77, 0x32, 0x61, 0x31, 0x00, 0x69, 0x74, 0x74, 0x32, 0x67, 0x61, + 0x30, 0x00, 0x69, 0x74, 0x74, 0x32, 0x67, 0x61, 0x31, 0x00, 0x63, 0x63, + 0x6b, 0x32, 0x67, 0x70, 0x6f, 0x00, 0x6f, 0x66, 0x64, 0x6d, 0x32, 0x67, + 0x70, 0x6f, 0x00, 0x6d, 0x63, 0x73, 0x32, 0x67, 0x70, 0x6f, 0x30, 0x00, + 0x6d, 0x63, 0x73, 0x32, 0x67, 0x70, 0x6f, 0x31, 0x00, 0x6d, 0x63, 0x73, + 0x32, 0x67, 0x70, 0x6f, 0x32, 0x00, 0x6d, 0x63, 0x73, 0x32, 0x67, 0x70, + 0x6f, 0x33, 0x00, 0x6d, 0x63, 0x73, 0x32, 0x67, 0x70, 0x6f, 0x34, 0x00, + 0x6d, 0x63, 0x73, 0x32, 0x67, 0x70, 0x6f, 0x35, 0x00, 0x6d, 0x63, 0x73, + 0x32, 0x67, 0x70, 0x6f, 0x36, 0x00, 0x6d, 0x63, 0x73, 0x32, 0x67, 0x70, + 0x6f, 0x37, 0x00, 0x74, 0x78, 0x70, 0x69, 0x64, 0x35, 0x67, 0x6c, 0x61, + 0x30, 0x00, 0x74, 0x78, 0x70, 0x69, 0x64, 0x35, 0x67, 0x6c, 0x61, 0x31, + 0x00, 0x6d, 0x61, 0x78, 0x70, 0x35, 0x67, 0x6c, 0x61, 0x30, 0x00, 0x6d, + 0x61, 0x78, 0x70, 0x35, 0x67, 0x6c, 0x61, 0x31, 0x00, 0x70, 0x61, 0x35, + 0x67, 0x6c, 0x77, 0x30, 0x61, 0x30, 0x00, 0x70, 0x61, 0x35, 0x67, 0x6c, + 0x77, 0x30, 0x61, 0x31, 0x00, 0x70, 0x61, 0x35, 0x67, 0x6c, 0x77, 0x31, + 0x61, 0x30, 0x00, 0x70, 0x61, 0x35, 0x67, 0x6c, 0x77, 0x31, 0x61, 0x31, + 0x00, 0x70, 0x61, 0x35, 0x67, 0x6c, 0x77, 0x32, 0x61, 0x30, 0x00, 0x70, + 0x61, 0x35, 0x67, 0x6c, 0x77, 0x32, 0x61, 0x31, 0x00, 0x6f, 0x66, 0x64, + 0x6d, 0x35, 0x67, 0x6c, 0x70, 0x6f, 0x00, 0x6d, 0x63, 0x73, 0x35, 0x67, + 0x6c, 0x70, 0x6f, 0x30, 0x00, 0x6d, 0x63, 0x73, 0x35, 0x67, 0x6c, 0x70, + 0x6f, 0x31, 0x00, 0x6d, 0x63, 0x73, 0x35, 0x67, 0x6c, 0x70, 0x6f, 0x32, + 0x00, 0x6d, 0x63, 0x73, 0x35, 0x67, 0x6c, 0x70, 0x6f, 0x33, 0x00, 0x6d, + 0x63, 0x73, 0x35, 0x67, 0x6c, 0x70, 0x6f, 0x34, 0x00, 0x6d, 0x63, 0x73, + 0x35, 0x67, 0x6c, 0x70, 0x6f, 0x35, 0x00, 0x6d, 0x63, 0x73, 0x35, 0x67, + 0x6c, 0x70, 0x6f, 0x36, 0x00, 0x6d, 0x63, 0x73, 0x35, 0x67, 0x6c, 0x70, + 0x6f, 0x37, 0x00, 0x74, 0x78, 0x70, 0x69, 0x64, 0x35, 0x67, 0x61, 0x30, + 0x00, 0x74, 0x78, 0x70, 0x69, 0x64, 0x35, 0x67, 0x61, 0x31, 0x00, 0x6d, + 0x61, 0x78, 0x70, 0x35, 0x67, 0x61, 0x30, 0x00, 0x6d, 0x61, 0x78, 0x70, + 0x35, 0x67, 0x61, 0x31, 0x00, 0x70, 0x61, 0x35, 0x67, 0x77, 0x30, 0x61, + 0x30, 0x00, 0x70, 0x61, 0x35, 0x67, 0x77, 0x30, 0x61, 0x31, 0x00, 0x70, + 0x61, 0x35, 0x67, 0x77, 0x31, 0x61, 0x30, 0x00, 0x70, 0x61, 0x35, 0x67, + 0x77, 0x31, 0x61, 0x31, 0x00, 0x70, 0x61, 0x35, 0x67, 0x77, 0x32, 0x61, + 0x30, 0x00, 0x70, 0x61, 0x35, 0x67, 0x77, 0x32, 0x61, 0x31, 0x00, 0x69, + 0x74, 0x74, 0x35, 0x67, 0x61, 0x30, 0x00, 0x69, 0x74, 0x74, 0x35, 0x67, + 0x61, 0x31, 0x00, 0x6f, 0x66, 0x64, 0x6d, 0x35, 0x67, 0x70, 0x6f, 0x00, + 0x6d, 0x63, 0x73, 0x35, 0x67, 0x70, 0x6f, 0x30, 0x00, 0x6d, 0x63, 0x73, + 0x35, 0x67, 0x70, 0x6f, 0x31, 0x00, 0x6d, 0x63, 0x73, 0x35, 0x67, 0x70, + 0x6f, 0x32, 0x00, 0x6d, 0x63, 0x73, 0x35, 0x67, 0x70, 0x6f, 0x33, 0x00, + 0x6d, 0x63, 0x73, 0x35, 0x67, 0x70, 0x6f, 0x34, 0x00, 0x6d, 0x63, 0x73, + 0x35, 0x67, 0x70, 0x6f, 0x35, 0x00, 0x6d, 0x63, 0x73, 0x35, 0x67, 0x70, + 0x6f, 0x36, 0x00, 0x6d, 0x63, 0x73, 0x35, 0x67, 0x70, 0x6f, 0x37, 0x00, + 0x74, 0x78, 0x70, 0x69, 0x64, 0x35, 0x67, 0x68, 0x61, 0x30, 0x00, 0x74, + 0x78, 0x70, 0x69, 0x64, 0x35, 0x67, 0x68, 0x61, 0x31, 0x00, 0x6d, 0x61, + 0x78, 0x70, 0x35, 0x67, 0x68, 0x61, 0x30, 0x00, 0x6d, 0x61, 0x78, 0x70, + 0x35, 0x67, 0x68, 0x61, 0x31, 0x00, 0x70, 0x61, 0x35, 0x67, 0x68, 0x77, + 0x30, 0x61, 0x30, 0x00, 0x70, 0x61, 0x35, 0x67, 0x68, 0x77, 0x30, 0x61, + 0x31, 0x00, 0x70, 0x61, 0x35, 0x67, 0x68, 0x77, 0x31, 0x61, 0x30, 0x00, + 0x70, 0x61, 0x35, 0x67, 0x68, 0x77, 0x31, 0x61, 0x31, 0x00, 0x70, 0x61, + 0x35, 0x67, 0x68, 0x77, 0x32, 0x61, 0x30, 0x00, 0x70, 0x61, 0x35, 0x67, + 0x68, 0x77, 0x32, 0x61, 0x31, 0x00, 0x6f, 0x66, 0x64, 0x6d, 0x35, 0x67, + 0x68, 0x70, 0x6f, 0x00, 0x6d, 0x63, 0x73, 0x35, 0x67, 0x68, 0x70, 0x6f, + 0x30, 0x00, 0x6d, 0x63, 0x73, 0x35, 0x67, 0x68, 0x70, 0x6f, 0x31, 0x00, + 0x6d, 0x63, 0x73, 0x35, 0x67, 0x68, 0x70, 0x6f, 0x32, 0x00, 0x6d, 0x63, + 0x73, 0x35, 0x67, 0x68, 0x70, 0x6f, 0x33, 0x00, 0x6d, 0x63, 0x73, 0x35, + 0x67, 0x68, 0x70, 0x6f, 0x34, 0x00, 0x6d, 0x63, 0x73, 0x35, 0x67, 0x68, + 0x70, 0x6f, 0x35, 0x00, 0x6d, 0x63, 0x73, 0x35, 0x67, 0x68, 0x70, 0x6f, + 0x36, 0x00, 0x6d, 0x63, 0x73, 0x35, 0x67, 0x68, 0x70, 0x6f, 0x37, 0x00, + 0x61, 0x6e, 0x74, 0x73, 0x77, 0x69, 0x74, 0x63, 0x68, 0x00, 0x61, 0x61, + 0x35, 0x67, 0x00, 0x74, 0x73, 0x73, 0x69, 0x70, 0x6f, 0x73, 0x32, 0x67, + 0x00, 0x65, 0x78, 0x74, 0x70, 0x61, 0x67, 0x61, 0x69, 0x6e, 0x32, 0x67, + 0x00, 0x70, 0x64, 0x65, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x32, 0x67, + 0x00, 0x74, 0x72, 0x69, 0x73, 0x6f, 0x32, 0x67, 0x00, 0x61, 0x6e, 0x74, + 0x73, 0x77, 0x63, 0x74, 0x6c, 0x32, 0x67, 0x00, 0x74, 0x73, 0x73, 0x69, + 0x70, 0x6f, 0x73, 0x35, 0x67, 0x00, 0x65, 0x78, 0x74, 0x70, 0x61, 0x67, + 0x61, 0x69, 0x6e, 0x35, 0x67, 0x00, 0x70, 0x64, 0x65, 0x74, 0x72, 0x61, + 0x6e, 0x67, 0x65, 0x35, 0x67, 0x00, 0x74, 0x72, 0x69, 0x73, 0x6f, 0x35, + 0x67, 0x00, 0x61, 0x6e, 0x74, 0x73, 0x77, 0x63, 0x74, 0x6c, 0x35, 0x67, + 0x00, 0x65, 0x6c, 0x6e, 0x61, 0x32, 0x67, 0x00, 0x65, 0x6c, 0x6e, 0x61, + 0x35, 0x67, 0x00, 0x74, 0x65, 0x6d, 0x70, 0x6f, 0x66, 0x66, 0x73, 0x65, + 0x74, 0x00, 0x70, 0x68, 0x79, 0x63, 0x61, 0x6c, 0x5f, 0x74, 0x65, 0x6d, + 0x70, 0x64, 0x65, 0x6c, 0x74, 0x61, 0x00, 0x70, 0x61, 0x32, 0x67, 0x77, + 0x30, 0x61, 0x33, 0x00, 0x70, 0x61, 0x32, 0x67, 0x77, 0x31, 0x61, 0x33, + 0x00, 0x6d, 0x61, 0x78, 0x70, 0x35, 0x67, 0x61, 0x33, 0x00, 0x6d, 0x61, + 0x78, 0x70, 0x35, 0x67, 0x6c, 0x61, 0x33, 0x00, 0x70, 0x61, 0x35, 0x67, + 0x77, 0x30, 0x61, 0x33, 0x00, 0x70, 0x61, 0x35, 0x67, 0x6c, 0x77, 0x30, + 0x61, 0x33, 0x00, 0x70, 0x61, 0x35, 0x67, 0x77, 0x31, 0x61, 0x33, 0x00, + 0x70, 0x61, 0x35, 0x67, 0x6c, 0x77, 0x31, 0x61, 0x33, 0x00, 0x70, 0x61, + 0x35, 0x67, 0x77, 0x32, 0x61, 0x33, 0x00, 0x70, 0x61, 0x35, 0x67, 0x6c, + 0x77, 0x32, 0x61, 0x33, 0x00, 0x00, 0x3b, 0x49, 0x17, 0x20, 0x3c, 0x49, + 0xc5, 0x27, 0x4d, 0x84, 0xff, 0x83, 0x4c, 0xc4, 0x00, 0x1f, 0xb7, 0x84, + 0xff, 0x80, 0xb1, 0x84, 0xff, 0xdf, 0xb0, 0xc4, 0x08, 0x08, 0xfa, 0x84, + 0xf7, 0xff, 0xf9, 0xc4, 0x08, 0x00, 0x60, 0x30, 0x18, 0x0c, 0x6c, 0x48, + 0x24, 0x12, 0x00, 0x00, 0xa8, 0xe5, 0x01, 0x00, 0x35, 0x01, 0x08, 0x30, + 0x08, 0x00, 0x03, 0x00, 0xb2, 0xe5, 0x01, 0x00, 0x43, 0x01, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x00, 0xbc, 0xe5, 0x01, 0x00, 0x2d, 0x01, 0x08, 0x00, + 0x01, 0x00, 0x00, 0x00, 0xc9, 0xe5, 0x01, 0x00, 0x48, 0x01, 0x08, 0x00, + 0x03, 0x00, 0x00, 0x00, 0xd9, 0xe5, 0x01, 0x00, 0x49, 0x01, 0x08, 0x00, + 0x03, 0x00, 0x00, 0x00, 0xe6, 0xe5, 0x01, 0x00, 0x4a, 0x01, 0x08, 0x00, + 0x03, 0x00, 0x00, 0x00, 0xf4, 0xe5, 0x01, 0x00, 0x4e, 0x01, 0x08, 0x00, + 0x03, 0x00, 0x00, 0x00, 0xff, 0xe5, 0x01, 0x00, 0x3d, 0x01, 0x40, 0x00, + 0x07, 0x00, 0x07, 0x00, 0x0b, 0xe6, 0x01, 0x00, 0x7a, 0x01, 0x00, 0x04, + 0x07, 0x00, 0x00, 0x00, 0x19, 0xe6, 0x01, 0x00, 0x3f, 0x01, 0x00, 0x00, + 0x06, 0x00, 0x00, 0x00, 0x24, 0xe6, 0x01, 0x00, 0x40, 0x01, 0x00, 0x00, + 0x02, 0x00, 0x00, 0x00, 0x2f, 0xe6, 0x01, 0x00, 0x7c, 0x01, 0x00, 0x00, + 0x02, 0x00, 0x00, 0x00, 0x3c, 0xe6, 0x01, 0x00, 0x42, 0x01, 0x00, 0x00, + 0x07, 0x00, 0x00, 0x00, 0x48, 0xe6, 0x01, 0x00, 0x28, 0x00, 0x08, 0x00, + 0x03, 0x00, 0x00, 0x00, 0x59, 0xe6, 0x01, 0x00, 0x29, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x66, 0xe6, 0x01, 0x00, 0x7f, 0x01, 0x00, 0x00, + 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x70, 0x68, 0x79, 0x00, 0x74, 0x78, 0x69, 0x6e, + 0x73, 0x74, 0x70, 0x77, 0x72, 0x00, 0x70, 0x68, 0x79, 0x5f, 0x6d, 0x75, + 0x74, 0x65, 0x64, 0x00, 0x70, 0x68, 0x79, 0x5f, 0x77, 0x61, 0x74, 0x63, + 0x68, 0x64, 0x6f, 0x67, 0x00, 0x70, 0x68, 0x79, 0x5f, 0x67, 0x6c, 0x69, + 0x74, 0x63, 0x68, 0x74, 0x68, 0x72, 0x73, 0x68, 0x00, 0x70, 0x68, 0x79, + 0x5f, 0x6e, 0x6f, 0x69, 0x73, 0x65, 0x5f, 0x75, 0x70, 0x00, 0x70, 0x68, + 0x79, 0x5f, 0x6e, 0x6f, 0x69, 0x73, 0x65, 0x5f, 0x64, 0x77, 0x6e, 0x00, + 0x70, 0x68, 0x79, 0x5f, 0x70, 0x65, 0x72, 0x63, 0x61, 0x6c, 0x00, 0x70, + 0x68, 0x79, 0x5f, 0x72, 0x78, 0x69, 0x71, 0x65, 0x73, 0x74, 0x00, 0x70, + 0x68, 0x79, 0x6e, 0x6f, 0x69, 0x73, 0x65, 0x5f, 0x73, 0x72, 0x6f, 0x6d, + 0x00, 0x6e, 0x75, 0x6d, 0x5f, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x00, + 0x62, 0x61, 0x6e, 0x64, 0x5f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x00, 0x73, + 0x75, 0x62, 0x62, 0x61, 0x6e, 0x64, 0x35, 0x67, 0x76, 0x65, 0x72, 0x00, + 0x6d, 0x69, 0x6e, 0x5f, 0x74, 0x78, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x00, + 0x70, 0x68, 0x79, 0x5f, 0x6f, 0x63, 0x6c, 0x73, 0x63, 0x64, 0x65, 0x6e, + 0x61, 0x62, 0x6c, 0x65, 0x00, 0x70, 0x68, 0x79, 0x5f, 0x72, 0x78, 0x61, + 0x6e, 0x74, 0x73, 0x65, 0x6c, 0x00, 0x70, 0x68, 0x79, 0x5f, 0x63, 0x72, + 0x73, 0x5f, 0x77, 0x61, 0x72, 0x00, 0x4a, 0xc4, 0x44, 0x00, 0x4a, 0x44, + 0x80, 0x00, 0x3b, 0x04, 0x01, 0x00, 0x01, 0x00, 0x3c, 0x04, 0x01, 0x00, + 0x01, 0x00, 0x3c, 0x04, 0x01, 0x00, 0x00, 0x00, 0x3b, 0x04, 0x01, 0x00, + 0x00, 0x00, 0x3b, 0x04, 0x02, 0x00, 0x02, 0x00, 0x3c, 0x04, 0x02, 0x00, + 0x02, 0x00, 0x3c, 0x04, 0x02, 0x00, 0x00, 0x00, 0x3b, 0x04, 0x02, 0x00, + 0x00, 0x00, 0xdb, 0x04, 0xff, 0x03, 0xa6, 0x02, 0xdb, 0x04, 0x00, 0x70, + 0x00, 0x20, 0x9a, 0x05, 0xff, 0x03, 0x26, 0x00, 0x9b, 0x05, 0xff, 0x03, + 0x89, 0x00, 0x9c, 0x05, 0xff, 0x03, 0x8a, 0x00, 0x9c, 0x05, 0x00, 0xfc, + 0x00, 0x20, 0x9d, 0x05, 0x00, 0x3c, 0x00, 0x2c, 0x9d, 0x05, 0xff, 0x03, + 0x8c, 0x00, 0xd8, 0x04, 0x01, 0x00, 0x00, 0x00, 0xd8, 0x04, 0x02, 0x00, + 0x00, 0x00, 0xd7, 0x04, 0x08, 0x00, 0x00, 0x00, 0x00, 0x40, 0x01, 0x40, + 0x02, 0x40, 0x03, 0x40, 0x04, 0x40, 0x05, 0x40, 0x06, 0x40, 0x07, 0x40, + 0x07, 0x5b, 0x07, 0x80, 0x98, 0x00, 0x16, 0x01, 0x2c, 0x01, 0x6a, 0x00, + 0x0b, 0x00, 0x1b, 0x00, 0x13, 0x01, 0x1d, 0x00, 0x14, 0x01, 0x2e, 0x00, + 0x2a, 0x01, 0x12, 0x01, 0x4c, 0x04, 0x00, 0x08, 0x00, 0x08, 0x4d, 0x04, + 0x00, 0x20, 0x00, 0x00, 0xb0, 0x04, 0x00, 0x01, 0x00, 0x01, 0xb6, 0x44, + 0xff, 0xff, 0xb7, 0x04, 0x0f, 0x00, 0x0f, 0x00, 0x4a, 0xc4, 0x44, 0x00, + 0x4a, 0x44, 0x80, 0x00, 0xd7, 0x04, 0x08, 0x00, 0x08, 0x00, 0xd7, 0x04, + 0x00, 0x70, 0x00, 0x20, 0x31, 0xc6, 0x15, 0x00, 0xd6, 0x06, 0x03, 0x00, + 0x00, 0x00, 0xda, 0xc6, 0x8f, 0x00, 0x4c, 0x04, 0x00, 0x10, 0x00, 0x10, + 0x4d, 0x04, 0x00, 0x40, 0x00, 0x40, 0x4c, 0x04, 0x00, 0x08, 0x00, 0x08, + 0x4d, 0x04, 0x00, 0x20, 0x00, 0x00, 0x3b, 0x04, 0x02, 0x00, 0x02, 0x00, + 0x3c, 0x04, 0x02, 0x00, 0x00, 0x00, 0x3b, 0x04, 0x01, 0x00, 0x01, 0x00, + 0x3c, 0x04, 0x01, 0x00, 0x00, 0x00, 0xd7, 0x44, 0x00, 0x00, 0xd7, 0x04, + 0x01, 0x00, 0x01, 0x00, 0xd7, 0x04, 0x40, 0x00, 0x00, 0x00, 0xd7, 0x04, + 0x01, 0x00, 0x01, 0x00, 0xd7, 0x04, 0x40, 0x00, 0x40, 0x00, 0x10, 0x04, + 0x08, 0x00, 0x08, 0x00, 0xda, 0x06, 0x20, 0x00, 0x00, 0x00, 0x42, 0x49, + 0x02, 0x00, 0x3b, 0x49, 0x00, 0x00, 0x3c, 0x49, 0x00, 0x00, 0x4a, 0xc4, + 0x44, 0x00, 0x4a, 0x44, 0x80, 0x00, 0x38, 0x09, 0x40, 0x00, 0x40, 0x00, + 0x38, 0x09, 0x04, 0x00, 0x04, 0x00, 0x39, 0x09, 0x40, 0x00, 0x00, 0x00, + 0x39, 0x09, 0x04, 0x00, 0x04, 0x00, 0xd7, 0x04, 0x02, 0x00, 0x02, 0x00, + 0xd7, 0x04, 0x80, 0x00, 0x00, 0x00, 0xd7, 0x04, 0x01, 0x00, 0x01, 0x00, + 0xd7, 0x04, 0x40, 0x00, 0x40, 0x00, 0xd7, 0x04, 0x08, 0x00, 0x08, 0x00, + 0xd7, 0x04, 0x00, 0x70, 0x00, 0x20, 0xda, 0x06, 0x40, 0x00, 0x40, 0x00, + 0xa4, 0x04, 0x00, 0x20, 0x00, 0x00, 0x4c, 0x84, 0xff, 0xe7, 0x3b, 0x84, + 0x0c, 0x00, 0x4c, 0x04, 0x00, 0x08, 0x00, 0x08, 0x4d, 0x04, 0x00, 0x20, + 0x00, 0x20, 0xb0, 0x04, 0x00, 0x01, 0x00, 0x01, 0x25, 0x64, 0x20, 0x09, + 0x20, 0x25, 0x64, 0x20, 0x0a, 0x00, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x20, + 0x67, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x6c, 0x6f, 0x77, 0x20, + 0x69, 0x71, 0x20, 0x65, 0x73, 0x74, 0x0a, 0x00, 0x45, 0x72, 0x72, 0x6f, + 0x72, 0x20, 0x67, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x20, 0x68, 0x69, + 0x67, 0x68, 0x20, 0x69, 0x71, 0x20, 0x65, 0x73, 0x74, 0x0a, 0x00, 0x00, + 0xa3, 0xc6, 0x01, 0x00, 0xa3, 0x86, 0xfe, 0xff, 0x4a, 0xc4, 0x80, 0x00, + 0x4a, 0x84, 0x7f, 0x00, 0x3b, 0x84, 0xed, 0xff, 0x3c, 0x04, 0x02, 0x00, + 0x02, 0x00, 0x4c, 0x84, 0xd0, 0xef, 0x4d, 0x84, 0xd7, 0xbf, 0x4d, 0x04, + 0x04, 0x00, 0x04, 0x00, 0x4d, 0x04, 0x03, 0x00, 0x01, 0x00, 0xf9, 0x84, + 0xf8, 0xff, 0xfa, 0x84, 0xf8, 0xff, 0x0a, 0x46, 0xa0, 0x00, 0x6a, 0x44, + 0x19, 0x00, 0x4d, 0x04, 0x04, 0x00, 0x00, 0x00, 0x4c, 0x04, 0x04, 0x00, + 0x04, 0x00, 0xd7, 0x04, 0x01, 0x00, 0x01, 0x00, 0xd7, 0x04, 0x40, 0x00, + 0x40, 0x00, 0xd7, 0x04, 0x01, 0x00, 0x01, 0x00, 0xd7, 0x04, 0x40, 0x00, + 0x00, 0x00, 0x37, 0x06, 0x00, 0xc0, 0x00, 0x80, 0xd7, 0x04, 0x01, 0x00, + 0x00, 0x00, 0xd9, 0x04, 0x01, 0x00, 0x01, 0x00, 0xd9, 0x04, 0x02, 0x00, + 0x00, 0x00, 0x76, 0x06, 0x80, 0x00, 0x80, 0x00, 0xda, 0x06, 0x01, 0x00, + 0x01, 0x00, 0x6c, 0x08, 0x04, 0x00, 0x04, 0x00, 0x6c, 0x08, 0x40, 0x00, + 0x40, 0x00, 0x6c, 0x08, 0x00, 0x04, 0x00, 0x04, 0xd6, 0x06, 0x03, 0x00, + 0x00, 0x00, 0xda, 0x06, 0x08, 0x00, 0x08, 0x00, 0x3b, 0x04, 0x02, 0x00, + 0x02, 0x00, 0x3c, 0x04, 0x02, 0x00, 0x00, 0x00, 0x3b, 0x04, 0x10, 0x00, + 0x10, 0x00, 0x3c, 0x04, 0x40, 0x00, 0x00, 0x00, 0x4b, 0x44, 0xff, 0xff, + 0x34, 0x06, 0x00, 0xff, 0x00, 0x00, 0xda, 0xc6, 0x80, 0x00, 0x0a, 0xc0, + 0x28, 0x02, 0x0a, 0x80, 0xd7, 0xfd, 0xda, 0x86, 0x7f, 0xff, 0xa4, 0x04, + 0x00, 0x40, 0x00, 0x40, 0xa4, 0x04, 0x00, 0x40, 0x00, 0x00, 0xda, 0xc6, + 0x40, 0x00, 0x3b, 0x04, 0x04, 0x00, 0x00, 0x00, 0x38, 0x09, 0x40, 0x00, + 0x00, 0x00, 0x38, 0x09, 0x04, 0x00, 0x00, 0x00, 0xd7, 0x04, 0x02, 0x00, + 0x00, 0x00, 0xd7, 0x04, 0x01, 0x00, 0x00, 0x00, 0xd7, 0x04, 0x08, 0x00, + 0x00, 0x00, 0xd8, 0x04, 0x01, 0x00, 0x00, 0x00, 0xd8, 0x04, 0x02, 0x00, + 0x00, 0x00, 0x76, 0x06, 0x80, 0x00, 0x00, 0x00, 0xda, 0x06, 0x01, 0x00, + 0x00, 0x00, 0x6c, 0x08, 0x04, 0x00, 0x00, 0x00, 0x6c, 0x08, 0x40, 0x00, + 0x00, 0x00, 0x6c, 0x08, 0x00, 0x04, 0x00, 0x00, 0xa4, 0x04, 0x00, 0x80, + 0x00, 0x80, 0xa4, 0x04, 0x00, 0x40, 0x00, 0x40, 0xa4, 0x04, 0x00, 0x20, + 0x00, 0x20, 0xb0, 0x04, 0x80, 0x00, 0x00, 0x00, 0x3b, 0x04, 0x40, 0x00, + 0x00, 0x00, 0xa9, 0x04, 0x00, 0x80, 0x00, 0x80, 0x18, 0x08, 0x87, 0x46, + 0x60, 0x00, 0x42, 0x46, 0x07, 0x00, 0x8b, 0x46, 0x00, 0x00, 0x76, 0x46, + 0xa1, 0xb8, 0x76, 0x06, 0x80, 0x00, 0x00, 0x00, 0xda, 0x06, 0x01, 0x00, + 0x00, 0x00, 0x6c, 0x08, 0x04, 0x00, 0x00, 0x00, 0x6c, 0x08, 0x40, 0x00, + 0x00, 0x00, 0x6c, 0x08, 0x00, 0x04, 0x00, 0x00, 0xda, 0x06, 0x00, 0x80, + 0x00, 0x80, 0xd3, 0x06, 0x00, 0x80, 0x00, 0x80, 0xd3, 0x06, 0x00, 0x80, + 0x00, 0x00, 0xda, 0x06, 0x00, 0x80, 0x00, 0x00, 0x42, 0x49, 0x07, 0x00, + 0x3b, 0x49, 0x17, 0x20, 0x3c, 0x49, 0xc5, 0x27, 0xd1, 0x06, 0x04, 0x00, + 0x00, 0x00, 0x4b, 0x06, 0x40, 0x00, 0x40, 0x00, 0x3b, 0x49, 0x17, 0x20, + 0x3c, 0x49, 0xc5, 0x27, 0x4b, 0x06, 0x01, 0x00, 0x01, 0x00, 0x4b, 0x06, + 0x08, 0x00, 0x08, 0x00, 0x42, 0x49, 0x00, 0x00, 0x42, 0x49, 0x0f, 0x00, + 0x42, 0x49, 0x00, 0x00, 0x3b, 0x49, 0x17, 0x00, 0x3c, 0x49, 0xc5, 0x07, + 0x3b, 0x04, 0x02, 0x00, 0x02, 0x00, 0x3c, 0x04, 0x02, 0x00, 0x00, 0x00, + 0x3b, 0x04, 0x10, 0x00, 0x10, 0x00, 0x3c, 0x04, 0x40, 0x00, 0x00, 0x00, + 0x4c, 0x04, 0x00, 0x10, 0x00, 0x10, 0x4d, 0x04, 0x00, 0x40, 0x00, 0x40, + 0x4c, 0x04, 0x08, 0x00, 0x08, 0x00, 0x4d, 0x04, 0x08, 0x00, 0x08, 0x00, + 0x4c, 0x04, 0x20, 0x00, 0x20, 0x00, 0x4d, 0x04, 0x20, 0x00, 0x00, 0x00, + 0xf9, 0x04, 0x02, 0x00, 0x02, 0x00, 0xfa, 0x04, 0x02, 0x00, 0x02, 0x00, + 0xf9, 0x04, 0x04, 0x00, 0x04, 0x00, 0xfa, 0x04, 0x04, 0x00, 0x04, 0x00, + 0xf9, 0x04, 0x01, 0x00, 0x01, 0x00, 0xfa, 0x04, 0x01, 0x00, 0x01, 0x00, + 0x4c, 0x04, 0x08, 0x00, 0x08, 0x00, 0x4d, 0x04, 0x08, 0x00, 0x00, 0x00, + 0x4c, 0x04, 0x20, 0x00, 0x20, 0x00, 0x4d, 0x04, 0x20, 0x00, 0x20, 0x00, + 0xf9, 0x04, 0x02, 0x00, 0x02, 0x00, 0xfa, 0x04, 0x02, 0x00, 0x00, 0x00, + 0xf9, 0x04, 0x04, 0x00, 0x04, 0x00, 0xfa, 0x04, 0x04, 0x00, 0x00, 0x00, + 0xf9, 0x04, 0x01, 0x00, 0x01, 0x00, 0xfa, 0x04, 0x01, 0x00, 0x00, 0x00, + 0x4a, 0xc4, 0x44, 0x00, 0x4a, 0x44, 0x80, 0x00, 0x36, 0x00, 0x1a, 0x01, + 0x3a, 0x00, 0x25, 0x00, 0x28, 0x00, 0x05, 0x00, 0x12, 0x01, 0xff, 0x00, + 0x1f, 0x01, 0x0b, 0x00, 0x13, 0x01, 0x07, 0x00, 0xfc, 0x00, 0xfd, 0x00, + 0xff, 0x00, 0xc0, 0x00, 0xca, 0x00, 0xc5, 0x00, 0x12, 0x00, 0x57, 0x00, + 0x59, 0x00, 0x5c, 0x00, 0x78, 0x00, 0x92, 0x00, 0xda, 0x06, 0x20, 0x00, + 0x20, 0x00, 0x10, 0x04, 0x08, 0x00, 0x00, 0x00, 0x03, 0x05, 0xa4, 0x04, + 0xd0, 0x04, 0xd9, 0x04, 0xda, 0x04, 0xa6, 0x04, 0x38, 0x09, 0x39, 0x09, + 0xd8, 0x04, 0xd0, 0x04, 0xd7, 0x04, 0xa5, 0x04, 0x0d, 0x04, 0xa2, 0x04, + 0xd0, 0x04, 0x01, 0x00, 0x00, 0x00, 0xd3, 0x04, 0xff, 0x00, 0x00, 0x00, + 0xd3, 0x04, 0x00, 0xff, 0x00, 0x00, 0xd0, 0x04, 0x10, 0x00, 0x00, 0x00, + 0xd0, 0x04, 0x04, 0x00, 0x00, 0x00, 0xd0, 0x04, 0x02, 0x00, 0x00, 0x00, + 0xd2, 0x04, 0xff, 0x00, 0x00, 0x00, 0xd2, 0x04, 0x00, 0xff, 0x00, 0x00, + 0xd0, 0x04, 0x08, 0x00, 0x00, 0x00, 0x10, 0x04, 0x80, 0x00, 0x00, 0x00, + 0xa8, 0x44, 0x0a, 0x00, 0xeb, 0x04, 0xc0, 0x01, 0x00, 0x00, 0x6a, 0x04, + 0xff, 0xff, 0x19, 0x00, 0x10, 0x04, 0x02, 0x00, 0x00, 0x00, 0x10, 0x04, + 0x01, 0x00, 0x00, 0x00, 0x42, 0x49, 0x0f, 0x00, 0x42, 0x49, 0x00, 0x00, + 0x42, 0x49, 0x0f, 0x00, 0x4a, 0x44, 0x84, 0x00, 0x4a, 0x44, 0x80, 0x00, + 0xd3, 0x46, 0x22, 0x22, 0xd3, 0x46, 0x20, 0x22, 0x3b, 0x04, 0x01, 0x00, + 0x01, 0x00, 0x3c, 0x04, 0x01, 0x00, 0x00, 0x00, 0x38, 0x09, 0x00, 0x08, + 0x00, 0x08, 0x39, 0x09, 0x00, 0x08, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x80, 0x07, 0x00, 0x04, 0x00, 0x04, 0x80, 0x07, 0x00, 0x02, + 0x00, 0x02, 0xd7, 0x04, 0x08, 0x00, 0x00, 0x00, 0xd8, 0x04, 0x01, 0x00, + 0x00, 0x00, 0xd8, 0x04, 0x02, 0x00, 0x00, 0x00, 0x3b, 0x04, 0x04, 0x00, + 0x04, 0x00, 0x3c, 0x04, 0x04, 0x00, 0x00, 0x00, 0x03, 0x05, 0x01, 0x00, + 0x00, 0x00, 0x03, 0x05, 0x04, 0x00, 0x00, 0x00, 0x03, 0x05, 0x10, 0x00, + 0x10, 0x00, 0xa4, 0x04, 0x00, 0x40, 0x00, 0x00, 0xa4, 0x04, 0x00, 0x80, + 0x00, 0x80, 0xd0, 0x04, 0x20, 0x00, 0x00, 0x00, 0xa4, 0x04, 0xff, 0x01, + 0x00, 0x00, 0xa5, 0x04, 0xff, 0x00, 0xff, 0x00, 0xa5, 0x04, 0x00, 0x70, + 0x00, 0x50, 0xa5, 0x04, 0x00, 0x07, 0x00, 0x00, 0x0d, 0x04, 0xff, 0x00, + 0x40, 0x00, 0x0d, 0x04, 0x00, 0x07, 0x00, 0x04, 0xa2, 0x04, 0xff, 0x00, + 0x40, 0x00, 0xa2, 0x04, 0x00, 0x07, 0x00, 0x04, 0xa8, 0x04, 0xff, 0x00, + 0x01, 0x00, 0xa6, 0x04, 0x00, 0x80, 0x00, 0x80, 0xa6, 0x04, 0xff, 0x01, + 0xff, 0x00, 0x9a, 0x04, 0xff, 0x01, 0xff, 0x00, 0xd7, 0x04, 0x08, 0x00, + 0x00, 0x00, 0xd7, 0x04, 0x00, 0x70, 0x00, 0x20, 0x03, 0x05, 0x01, 0x00, + 0x00, 0x00, 0x03, 0x05, 0x04, 0x00, 0x00, 0x00, 0xa4, 0x04, 0x00, 0x40, + 0x00, 0x00, 0xa4, 0x04, 0x00, 0x80, 0x00, 0x00, 0xd0, 0x04, 0x20, 0x00, + 0x00, 0x00, 0xa5, 0x04, 0xff, 0x00, 0xff, 0x00, 0xa5, 0x04, 0x00, 0x70, + 0x00, 0x50, 0xa5, 0x04, 0x00, 0x07, 0x00, 0x00, 0x0d, 0x04, 0xff, 0x00, + 0x40, 0x00, 0x0d, 0x04, 0x00, 0x07, 0x00, 0x06, 0xa2, 0x04, 0xff, 0x00, + 0x40, 0x00, 0xa2, 0x04, 0x00, 0x07, 0x00, 0x06, 0xd9, 0x04, 0x70, 0x00, + 0x20, 0x00, 0xd9, 0x04, 0x00, 0x07, 0x00, 0x03, 0xd9, 0x04, 0x00, 0x70, + 0x00, 0x10, 0xda, 0x04, 0x00, 0x10, 0x00, 0x00, 0xda, 0x04, 0x00, 0x20, + 0x00, 0x20, 0xa6, 0x04, 0x00, 0x80, 0x00, 0x80, 0x38, 0x09, 0x04, 0x00, + 0x04, 0x00, 0x39, 0x09, 0x04, 0x00, 0x04, 0x00, 0xa4, 0x04, 0x00, 0x10, + 0x00, 0x10, 0xd7, 0x04, 0x08, 0x00, 0x08, 0x00, 0xd7, 0x04, 0x00, 0x70, + 0x00, 0x10, 0xd7, 0x04, 0x08, 0x00, 0x08, 0x00, 0xd7, 0x04, 0x00, 0x70, + 0x00, 0x30, 0x10, 0x04, 0x02, 0x00, 0x02, 0x00, 0x10, 0x04, 0x01, 0x00, + 0x00, 0x00, 0xd9, 0x04, 0x04, 0x00, 0x00, 0x00, 0xd9, 0x04, 0x08, 0x00, + 0x08, 0x00, 0xd9, 0x04, 0x04, 0x00, 0x04, 0x00, 0xd9, 0x04, 0x08, 0x00, + 0x00, 0x00, 0x9a, 0x05, 0xff, 0x03, 0x26, 0x00, 0x9b, 0x05, 0xff, 0x03, + 0xa5, 0x00, 0x9c, 0x05, 0xff, 0x03, 0xa6, 0x00, 0x9c, 0x05, 0x00, 0xfc, + 0x00, 0x28, 0x9d, 0x05, 0x00, 0x3c, 0x00, 0x1c, 0x9d, 0x05, 0xff, 0x03, + 0xa8, 0x00, 0x53, 0x44, 0xa9, 0x0a, 0x3d, 0x49, 0xc0, 0x00, 0x07, 0x00, + 0xff, 0x00, 0x1f, 0x01, 0x3a, 0x00, 0x1a, 0x01, 0x05, 0x00, 0x82, 0x00, + 0x86, 0x00, 0x2e, 0x01, 0x13, 0x01, 0x7d, 0x00, 0x28, 0x00, 0x81, 0x04, + 0x00, 0x02, 0x00, 0x02, 0x3a, 0x09, 0x80, 0x00, 0x80, 0x00, 0x23, 0x04, + 0xff, 0x00, 0x49, 0x00, 0x34, 0x04, 0xff, 0x00, 0xfc, 0xff, 0x16, 0x04, + 0xff, 0x00, 0xa4, 0xff, 0x16, 0x04, 0x00, 0xff, 0x00, 0x9f, 0x24, 0x04, + 0x00, 0xff, 0x00, 0x2a, 0x23, 0x04, 0x00, 0xff, 0x00, 0x2d, 0x25, 0x04, + 0xff, 0x00, 0x0f, 0x00, 0x00, 0x05, 0xff, 0x00, 0x0f, 0x00, 0x00, 0x05, + 0x00, 0xff, 0x00, 0x0f, 0x20, 0x04, 0xff, 0x00, 0x0a, 0x00, 0x34, 0x04, + 0x00, 0x07, 0x00, 0x01, 0xff, 0x04, 0x00, 0xfc, 0x00, 0x18, 0xd6, 0x06, + 0x03, 0x00, 0x01, 0x00, 0xda, 0x06, 0x08, 0x00, 0x00, 0x00, 0xda, 0x06, + 0x80, 0x00, 0x00, 0x00, 0x10, 0x04, 0x02, 0x00, 0x00, 0x00, 0x10, 0x04, + 0x01, 0x00, 0x01, 0x00, 0x4a, 0xc4, 0x44, 0x00, 0x4a, 0x44, 0x80, 0x00, + 0x4a, 0xc4, 0x44, 0x00, 0x4a, 0x44, 0x80, 0x00, 0x53, 0x84, 0xff, 0x7f, + 0x53, 0xc4, 0x00, 0x80, 0x3b, 0x04, 0x01, 0x00, 0x01, 0x00, 0x3c, 0x04, + 0x01, 0x00, 0x01, 0x00, 0x3c, 0x04, 0x01, 0x00, 0x00, 0x00, 0x3b, 0x04, + 0x01, 0x00, 0x00, 0x00, 0xb1, 0x04, 0x00, 0x04, 0x00, 0x00, 0xb1, 0x04, + 0x00, 0x80, 0x00, 0x00, 0xf9, 0x04, 0x01, 0x00, 0x01, 0x00, 0xfa, 0x04, + 0x01, 0x00, 0x00, 0x00, 0xce, 0x46, 0x00, 0x00, 0xcb, 0x46, 0x00, 0x00, + 0xcc, 0x46, 0x00, 0x00, 0xcd, 0x46, 0x00, 0x00, 0x9d, 0x46, 0xff, 0x07, + 0xa4, 0x46, 0x00, 0x00, 0xa5, 0x46, 0x00, 0x00, 0x7a, 0x46, 0x03, 0x00, + 0x73, 0x46, 0x70, 0x17, 0x74, 0x46, 0x44, 0x04, 0x75, 0x46, 0x3f, 0x00, + 0x70, 0x46, 0x81, 0x06, 0x8c, 0x46, 0x49, 0x00, 0xc9, 0x46, 0x00, 0x06, + 0x80, 0x46, 0xff, 0x00, 0x81, 0x46, 0x3f, 0x01, 0xda, 0xc6, 0x40, 0x00, + 0xdb, 0xc6, 0x03, 0x00, 0xd7, 0xc6, 0x01, 0x00, 0x31, 0xc6, 0x00, 0x18, + 0x3b, 0x44, 0x00, 0x00, 0x3c, 0x44, 0x00, 0x00, 0x4c, 0x44, 0x00, 0x00, + 0xe6, 0x44, 0x00, 0x00, 0xf9, 0x44, 0x00, 0x00, 0xb0, 0x44, 0x00, 0x00, + 0x38, 0x49, 0x00, 0x00, 0xb0, 0x44, 0x00, 0x00, 0x4e, 0x44, 0x00, 0x00, + 0x67, 0xc5, 0x03, 0x00, 0x4a, 0xc4, 0x44, 0x00, 0x4a, 0x44, 0x80, 0x00, + 0x48, 0x04, 0x00, 0x03, 0x00, 0x01, 0x08, 0x06, 0xff, 0x00, 0x17, 0x00, + 0x04, 0x06, 0xff, 0x07, 0xea, 0x03, 0x4c, 0x04, 0x00, 0x18, 0x00, 0x18, + 0x4d, 0x04, 0x00, 0x60, 0x00, 0x60, 0x38, 0x09, 0xff, 0x01, 0xff, 0x01, + 0x39, 0x09, 0xff, 0x01, 0x9e, 0x00, 0x3b, 0x04, 0x03, 0x00, 0x03, 0x00, + 0x3c, 0x04, 0x03, 0x00, 0x00, 0x00, 0xda, 0x46, 0xff, 0xff, 0xdb, 0xc6, + 0x03, 0x00, 0xd1, 0x06, 0x04, 0x00, 0x04, 0x00, 0xb7, 0x04, 0x00, 0x7f, + 0x00, 0x6c, 0xb1, 0x04, 0x00, 0x20, 0x00, 0x00, 0x39, 0x09, 0x00, 0x02, + 0x00, 0x00, 0x38, 0x09, 0x00, 0x02, 0x00, 0x02, 0xb0, 0x04, 0x08, 0x00, + 0x08, 0x00, 0xb0, 0x04, 0x00, 0x08, 0x00, 0x08, 0x39, 0x09, 0x00, 0x08, + 0x00, 0x00, 0x38, 0x09, 0x00, 0x08, 0x00, 0x08, 0x3b, 0x04, 0x04, 0x00, + 0x04, 0x00, 0x3c, 0x04, 0x04, 0x00, 0x00, 0x00, 0x38, 0x09, 0x04, 0x00, + 0x04, 0x00, 0x39, 0x09, 0x04, 0x00, 0x04, 0x00, 0xa4, 0x04, 0x00, 0x10, + 0x00, 0x10, 0xd7, 0x04, 0x04, 0x00, 0x04, 0x00, 0xd7, 0x04, 0x00, 0x0f, + 0x00, 0x00, 0xda, 0x46, 0xff, 0xff, 0x03, 0x05, 0x08, 0x00, 0x08, 0x00, + 0x5f, 0x36, 0x29, 0x1f, 0x5f, 0x36, 0x29, 0x1f, 0x5f, 0x36, 0x29, 0x1f, + 0x5f, 0x36, 0x29, 0x1f, 0x0a, 0x00, 0x09, 0x00, 0x06, 0x00, 0x05, 0x00, + 0x0a, 0x00, 0x09, 0x00, 0x06, 0x00, 0x05, 0x00, 0x0a, 0x00, 0x09, 0x00, + 0x06, 0x00, 0x05, 0x00, 0x0a, 0x00, 0x09, 0x00, 0x06, 0x00, 0x05, 0x00, + 0x0a, 0x00, 0x09, 0x00, 0x06, 0x00, 0x05, 0x00, 0x0a, 0x00, 0x09, 0x00, + 0x06, 0x00, 0x05, 0x00, 0x0a, 0x00, 0x09, 0x00, 0x06, 0x00, 0x05, 0x00, + 0x0a, 0x00, 0x09, 0x00, 0x06, 0x00, 0x05, 0x00, 0x0a, 0x00, 0x09, 0x00, + 0x06, 0x00, 0x05, 0x00, 0x0a, 0x00, 0x09, 0x00, 0x06, 0x00, 0x05, 0x00, + 0x0a, 0x00, 0x09, 0x00, 0x06, 0x00, 0x05, 0x00, 0x0a, 0x00, 0x09, 0x00, + 0x06, 0x00, 0x05, 0x00, 0x0a, 0x00, 0x09, 0x00, 0x06, 0x00, 0x05, 0x00, + 0x0a, 0x00, 0x09, 0x00, 0x06, 0x00, 0x05, 0x00, 0x0a, 0x00, 0x09, 0x00, + 0x06, 0x00, 0x05, 0x00, 0x0a, 0x00, 0x09, 0x00, 0x06, 0x00, 0x05, 0x00, + 0x0e, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x03, 0x00, 0x04, 0x00, 0x06, + 0x00, 0x08, 0x00, 0x0b, 0x00, 0x10, 0x01, 0x10, 0x02, 0x10, 0x03, 0x10, + 0x04, 0x10, 0x05, 0x10, 0x06, 0x10, 0x07, 0x10, 0x07, 0x17, 0x07, 0x20, + 0x07, 0x2d, 0x07, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x03, + 0x00, 0x04, 0x00, 0x06, 0x00, 0x08, 0x00, 0x0b, 0x00, 0x10, 0x01, 0x10, + 0x02, 0x10, 0x03, 0x10, 0x04, 0x10, 0x05, 0x10, 0x06, 0x10, 0x07, 0x10, + 0x07, 0x17, 0x07, 0x20, 0x07, 0x2d, 0x07, 0x40, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xf8, 0x41, 0x01, 0x00, 0xf8, 0x21, 0x00, 0x00, + 0xfb, 0x21, 0x00, 0x00, 0xfb, 0x41, 0x00, 0x00, 0xdb, 0xfe, 0x01, 0x00, + 0x7b, 0x21, 0x00, 0x00, 0x33, 0x21, 0x00, 0x00, 0xeb, 0x40, 0x00, 0x00, + 0xa3, 0xfe, 0x01, 0x00, 0x4b, 0x02, 0x00, 0x00, 0x94, 0xfd, 0x01, 0x00, + 0x10, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x08, 0x00, 0x00, 0x00, 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, + 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, + 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, + 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, + 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, + 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, + 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, + 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, + 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, + 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, + 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, 0x4d, 0x01, + 0x09, 0x0f, 0x14, 0x18, 0xfe, 0x07, 0x0b, 0x0f, 0xfb, 0xfe, 0x01, 0x05, + 0x08, 0x0b, 0x0e, 0x11, 0x14, 0x17, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x03, 0x06, 0x09, 0x0c, 0x0f, 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x06, 0x09, 0x0c, 0x0f, 0x12, 0x15, + 0x18, 0x1b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xeb, 0x00, 0x00, + 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, + 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, + 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x02, 0x03, 0x01, 0x03, 0x02, 0x01, + 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, + 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, + 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, + 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, + 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x02, 0x03, + 0x01, 0x03, 0x02, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, + 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, + 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x05, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00, + 0x4d, 0x00, 0x00, 0x00, 0x8d, 0x00, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00, + 0x4d, 0x00, 0x00, 0x00, 0x8d, 0x00, 0x00, 0x00, 0xcd, 0x00, 0x00, 0x00, + 0x4f, 0x00, 0x00, 0x00, 0x8f, 0x00, 0x00, 0x00, 0xcf, 0x00, 0x00, 0x00, + 0xd3, 0x00, 0x00, 0x00, 0x13, 0x01, 0x00, 0x00, 0x13, 0x05, 0x00, 0x00, + 0x13, 0x09, 0x00, 0x00, 0x53, 0x09, 0x00, 0x00, 0x53, 0x0d, 0x00, 0x00, + 0x53, 0x11, 0x00, 0x00, 0x93, 0x11, 0x00, 0x00, 0x93, 0x51, 0x00, 0x00, + 0x93, 0x91, 0x00, 0x00, 0x93, 0xd1, 0x00, 0x00, 0x93, 0x11, 0x01, 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, + 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, + 0x08, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, + 0x09, 0x00, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x4d, 0x00, 0x00, 0x00, + 0x8d, 0x00, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x4d, 0x00, 0x00, 0x00, + 0x8d, 0x00, 0x00, 0x00, 0xcd, 0x00, 0x00, 0x00, 0x4f, 0x00, 0x00, 0x00, + 0x8f, 0x00, 0x00, 0x00, 0xcf, 0x00, 0x00, 0x00, 0xd3, 0x00, 0x00, 0x00, + 0x13, 0x01, 0x00, 0x00, 0x13, 0x05, 0x00, 0x00, 0x13, 0x09, 0x00, 0x00, + 0x53, 0x09, 0x00, 0x00, 0x53, 0x0d, 0x00, 0x00, 0x53, 0x11, 0x00, 0x00, + 0x53, 0x51, 0x00, 0x00, 0x53, 0x91, 0x00, 0x00, 0x53, 0xd1, 0x00, 0x00, + 0x53, 0x11, 0x01, 0x00, 0x53, 0x51, 0x01, 0x00, 0x53, 0x91, 0x01, 0x00, + 0x53, 0xd1, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x04, 0x02, 0x04, + 0x03, 0x04, 0x04, 0x04, 0x05, 0x04, 0x06, 0x04, 0x07, 0x04, 0x08, 0x04, + 0x09, 0x04, 0x0a, 0x04, 0x8b, 0x05, 0x8c, 0x05, 0x8d, 0x05, 0x8e, 0x05, + 0x8f, 0x05, 0x90, 0x00, 0x91, 0x00, 0x92, 0x00, 0x93, 0x01, 0x94, 0x01, + 0x95, 0x01, 0x96, 0x01, 0x97, 0x01, 0x98, 0x01, 0x99, 0x01, 0x9a, 0x01, + 0x9b, 0x01, 0x9c, 0x01, 0x9d, 0x01, 0x9e, 0x01, 0x9f, 0x01, 0xa0, 0x01, + 0xa1, 0x01, 0xa2, 0x01, 0xa3, 0x01, 0xa4, 0x01, 0xa5, 0x01, 0x00, 0x00, + 0x08, 0xf1, 0x01, 0x00, 0x40, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0xdc, 0xf7, 0x01, 0x00, + 0x40, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x10, 0x00, 0x00, 0x00, 0xcc, 0xf0, 0x01, 0x00, 0x0a, 0x00, 0x00, 0x00, + 0x0b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, + 0xdc, 0xfa, 0x01, 0x00, 0x14, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x30, 0xfb, 0x01, 0x00, + 0x94, 0x00, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x20, 0x00, 0x00, 0x00, 0xc4, 0xf3, 0x01, 0x00, 0x26, 0x00, 0x00, 0x00, + 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, + 0x70, 0xef, 0x01, 0x00, 0x40, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x60, 0xef, 0x01, 0x00, + 0x10, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x08, 0x00, 0x00, 0x00, 0x88, 0xf1, 0x01, 0x00, 0x3c, 0x00, 0x00, 0x00, + 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, + 0x44, 0xf2, 0x01, 0x00, 0x60, 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0xc4, 0xf1, 0x01, 0x00, + 0x80, 0x00, 0x00, 0x00, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x08, 0x00, 0x00, 0x00, 0xa8, 0xf6, 0x01, 0x00, 0x9a, 0x00, 0x00, 0x00, + 0x17, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, + 0xf4, 0xef, 0x01, 0x00, 0x6c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x5c, 0xf8, 0x01, 0x00, + 0xa0, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, + 0x08, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, + 0x09, 0x00, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x4d, 0x00, 0x00, 0x00, + 0x8d, 0x00, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x4d, 0x00, 0x00, 0x00, + 0x8d, 0x00, 0x00, 0x00, 0xcd, 0x00, 0x00, 0x00, 0x52, 0x00, 0x00, 0x00, + 0x92, 0x00, 0x00, 0x00, 0xd2, 0x00, 0x00, 0x00, 0xd6, 0x00, 0x00, 0x00, + 0x16, 0x01, 0x00, 0x00, 0x16, 0x05, 0x00, 0x00, 0x16, 0x09, 0x00, 0x00, + 0x56, 0x09, 0x00, 0x00, 0x56, 0x0d, 0x00, 0x00, 0x56, 0x11, 0x00, 0x00, + 0x96, 0x11, 0x00, 0x00, 0x96, 0x51, 0x00, 0x00, 0x96, 0x91, 0x00, 0x00, + 0x96, 0xd1, 0x00, 0x00, 0x96, 0x11, 0x01, 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, 0x04, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, + 0x0d, 0x00, 0x00, 0x00, 0x4d, 0x00, 0x00, 0x00, 0x8d, 0x00, 0x00, 0x00, + 0x0d, 0x00, 0x00, 0x00, 0x4d, 0x00, 0x00, 0x00, 0x8d, 0x00, 0x00, 0x00, + 0xcd, 0x00, 0x00, 0x00, 0x52, 0x00, 0x00, 0x00, 0x92, 0x00, 0x00, 0x00, + 0xd2, 0x00, 0x00, 0x00, 0xd6, 0x00, 0x00, 0x00, 0x16, 0x01, 0x00, 0x00, + 0x16, 0x05, 0x00, 0x00, 0x16, 0x09, 0x00, 0x00, 0x56, 0x09, 0x00, 0x00, + 0x56, 0x0d, 0x00, 0x00, 0x56, 0x11, 0x00, 0x00, 0x56, 0x51, 0x00, 0x00, + 0x56, 0x91, 0x00, 0x00, 0x56, 0xd1, 0x00, 0x00, 0x56, 0x11, 0x01, 0x00, + 0x56, 0x51, 0x01, 0x00, 0x56, 0x91, 0x01, 0x00, 0x56, 0xd1, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x1a, 0x00, 0x34, 0x00, 0x4e, 0x00, 0x68, 0x00, + 0x9c, 0x00, 0xd0, 0x00, 0xea, 0x00, 0x04, 0x01, 0x34, 0x00, 0x68, 0x00, + 0x9c, 0x00, 0xd0, 0x00, 0x38, 0x01, 0xa0, 0x01, 0xd4, 0x01, 0x08, 0x02, + 0x4e, 0x00, 0x9c, 0x00, 0xea, 0x00, 0x38, 0x01, 0xd4, 0x01, 0x70, 0x02, + 0xbe, 0x02, 0x0c, 0x03, 0x68, 0x00, 0xd0, 0x00, 0x38, 0x01, 0xa0, 0x01, + 0x70, 0x02, 0x40, 0x03, 0xa8, 0x03, 0x10, 0x04, 0x18, 0x00, 0x9c, 0x00, + 0xd0, 0x00, 0x04, 0x01, 0xea, 0x00, 0x38, 0x01, 0x86, 0x01, 0xd0, 0x00, + 0x04, 0x01, 0x04, 0x01, 0x38, 0x01, 0x6c, 0x01, 0x6c, 0x01, 0xa0, 0x01, + 0x38, 0x01, 0x86, 0x01, 0x86, 0x01, 0xd4, 0x01, 0x22, 0x02, 0x22, 0x02, + 0x70, 0x02, 0x04, 0x01, 0x38, 0x01, 0x6c, 0x01, 0x38, 0x01, 0x6c, 0x01, + 0xa0, 0x01, 0xd4, 0x01, 0xa0, 0x01, 0xd4, 0x01, 0x08, 0x02, 0x08, 0x02, + 0x3c, 0x02, 0x86, 0x01, 0xd4, 0x01, 0x22, 0x02, 0xd4, 0x01, 0x22, 0x02, + 0x70, 0x02, 0xbe, 0x02, 0x70, 0x02, 0xbe, 0x02, 0x0c, 0x03, 0x0c, 0x03, + 0x5a, 0x03, 0x36, 0x00, 0x6c, 0x00, 0xa2, 0x00, 0xd8, 0x00, 0x44, 0x01, + 0xb0, 0x01, 0xe6, 0x01, 0x1c, 0x02, 0x6c, 0x00, 0xd8, 0x00, 0x44, 0x01, + 0xb0, 0x01, 0x88, 0x02, 0x60, 0x03, 0xcc, 0x03, 0x38, 0x04, 0xa2, 0x00, + 0x44, 0x01, 0xe6, 0x01, 0x88, 0x02, 0xcc, 0x03, 0x10, 0x05, 0xb2, 0x05, + 0x54, 0x06, 0xd8, 0x00, 0xb0, 0x01, 0x88, 0x02, 0x60, 0x03, 0x10, 0x05, + 0xc0, 0x06, 0x98, 0x07, 0x70, 0x08, 0x18, 0x00, 0x44, 0x01, 0xb0, 0x01, + 0x1c, 0x02, 0xe6, 0x01, 0x88, 0x02, 0x2a, 0x03, 0xb0, 0x01, 0x1c, 0x02, + 0x1c, 0x02, 0x88, 0x02, 0xf4, 0x02, 0xf4, 0x02, 0x60, 0x03, 0x88, 0x02, + 0x2a, 0x03, 0x2a, 0x03, 0xcc, 0x03, 0x6e, 0x04, 0x6e, 0x04, 0x10, 0x05, + 0x1c, 0x02, 0x88, 0x02, 0xf4, 0x02, 0x88, 0x02, 0xf4, 0x02, 0x60, 0x03, + 0xcc, 0x03, 0x60, 0x03, 0xcc, 0x03, 0x38, 0x04, 0x38, 0x04, 0xa4, 0x04, + 0x2a, 0x03, 0xcc, 0x03, 0x6e, 0x04, 0xcc, 0x03, 0x6e, 0x04, 0x10, 0x05, + 0xb2, 0x05, 0x10, 0x05, 0xb2, 0x05, 0x54, 0x06, 0x54, 0x06, 0xf6, 0x06, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, + 0x01, 0x00, 0x10, 0x00, 0x10, 0x00, 0x20, 0x00, 0x01, 0x00, 0x30, 0x00, + 0x10, 0x00, 0x40, 0x00, 0x22, 0x00, 0x50, 0x00, 0x22, 0x01, 0x60, 0x00, + 0x22, 0x02, 0x70, 0x00, 0x22, 0x03, 0x80, 0x00, 0x22, 0x04, 0x90, 0x00, + 0x22, 0x05, 0xa0, 0x00, 0x22, 0x06, 0xb0, 0x00, 0x22, 0x07, 0xc0, 0x00, + 0x22, 0x08, 0xd0, 0x00, 0x22, 0x09, 0xf0, 0x00, 0x22, 0x0a, 0x10, 0x00, + 0x22, 0x0b, 0x20, 0x00, 0x22, 0x0c, 0x30, 0x00, 0x22, 0x0d, 0x40, 0x00, + 0x22, 0x0e, 0x50, 0x00, 0x22, 0x0f, 0x60, 0x00, 0x05, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x90, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x08, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xc0, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x08, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xf0, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x20, 0x19, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, + 0x19, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x19, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x50, 0x19, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, + 0x19, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x19, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x80, 0x19, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, + 0x19, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x19, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xb0, 0x19, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, + 0x19, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x19, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xe0, 0x19, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, + 0x19, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1a, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x10, 0x1a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, + 0x1a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x1a, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x40, 0x1a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, + 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x02, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x70, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, + 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, 0x02, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xa0, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, + 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x0a, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xd0, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, + 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x0a, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x0b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, + 0x0b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x0b, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x30, 0x0b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, + 0x0b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x1b, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x60, 0x1b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, + 0x1b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x1b, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x90, 0x1b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, + 0x1b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x1b, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xc0, 0x1b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, + 0x1b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x1b, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xf0, 0x1b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x1c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x20, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, + 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x1c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x50, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, + 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x1c, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x80, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, + 0x1c, 0x00, 0x00, 0x00, 0x28, 0xf5, 0x01, 0x00, 0x60, 0x00, 0x00, 0x00, + 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, + 0x5f, 0x36, 0x29, 0x1f, 0x5f, 0x36, 0x29, 0x1f, 0x5f, 0x36, 0x29, 0x1f, + 0x5f, 0x36, 0x29, 0x1f, 0x6e, 0x6f, 0x63, 0x72, 0x63, 0x00, 0x53, 0x44, + 0x49, 0x4f, 0x00, 0x43, 0x44, 0x43, 0x00, 0x00, 0x0d, 0x16, 0x80, 0x00, + 0x8d, 0x13, 0x80, 0x00, 0x25, 0x11, 0x80, 0x00, 0x29, 0x14, 0x80, 0x00, + 0x1d, 0x13, 0x80, 0x00, 0xa1, 0x16, 0x80, 0x00, 0xbd, 0x04, 0x01, 0x00, + 0x01, 0x13, 0x80, 0x00, 0x2d, 0x13, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x1d, 0x16, 0x80, 0x00, 0xc5, 0x27, 0x00, 0x00, 0x77, 0x6c, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xf0, 0x25, 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, 0x05, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, + 0x14, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, + 0x01, 0x00, 0x05, 0x06, 0x05, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, + 0x05, 0x00, 0x00, 0x00, 0x0e, 0x0e, 0x0e, 0x0e, 0x0e, 0x02, 0x09, 0x0d, + 0x0a, 0x08, 0x0d, 0x01, 0x09, 0x0d, 0x0a, 0x08, 0x0d, 0x01, 0x09, 0x0d, + 0x0a, 0x08, 0x0d, 0x01, 0x09, 0x0d, 0x0a, 0x08, 0x0d, 0x01, 0x09, 0x0e, + 0x0a, 0x09, 0x0e, 0x06, 0x0a, 0x0e, 0x0b, 0x09, 0x0e, 0x02, 0x09, 0x3a, + 0x16, 0x0e, 0x0e, 0x05, 0x09, 0x3a, 0x16, 0x0e, 0x0e, 0x05, 0x0a, 0x0e, + 0x0b, 0x09, 0x0e, 0x05, 0x0a, 0x0e, 0x0b, 0x09, 0x0e, 0x02, 0x0a, 0x0e, + 0x0b, 0x09, 0x0e, 0x02, 0x14, 0xc0, 0xc0, 0x15, 0x11, 0x05, 0x14, 0xc0, + 0xc0, 0x15, 0x11, 0x05, 0x14, 0xc0, 0xc0, 0x15, 0x11, 0x05, 0x14, 0xc0, + 0xc0, 0x15, 0x11, 0x05, 0x14, 0xc0, 0xc0, 0x15, 0x11, 0x05, 0x09, 0x3a, + 0x16, 0x0e, 0x0e, 0x05, 0x14, 0xc0, 0xc0, 0x15, 0x11, 0x05, 0x14, 0xc0, + 0xc0, 0x15, 0x11, 0x05, 0x09, 0x3a, 0x16, 0x0e, 0x0e, 0x05, 0x09, 0x3a, + 0x16, 0x0e, 0x0e, 0x05, 0x09, 0x3a, 0x16, 0x0e, 0x0e, 0x05, 0x14, 0xc0, + 0xc0, 0x15, 0x11, 0x05, 0x09, 0x3a, 0x16, 0x0e, 0x0e, 0x05, 0x09, 0x3a, + 0x16, 0x0e, 0x0e, 0x05, 0x09, 0x3a, 0x16, 0x0e, 0x0e, 0x05, 0x09, 0xb2, + 0x1c, 0x0e, 0x0e, 0x05, 0x12, 0xb1, 0x19, 0x11, 0x11, 0x08, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x73, 0x64, 0x70, 0x63, 0x6d, 0x64, 0x65, 0x76, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x40, 0xff, 0x01, 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, 0xc9, 0x93, 0x80, 0x00, + 0x95, 0xa9, 0x80, 0x00, 0xbd, 0xa9, 0x80, 0x00, 0xd5, 0x93, 0x80, 0x00, + 0xb5, 0x93, 0x80, 0x00, 0x75, 0x93, 0x80, 0x00, 0xd1, 0x91, 0x80, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xb1, 0xa9, 0x80, 0x00, 0xd5, 0x45, 0x02, 0x00, + 0xb1, 0x45, 0x02, 0x00, 0x9d, 0x45, 0x02, 0x00, 0x55, 0xaa, 0x80, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x21, 0xaa, 0x80, 0x00, 0x85, 0xaa, 0x80, 0x00, + 0x31, 0xaa, 0x80, 0x00, 0x6d, 0xaa, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x98, 0xc2, 0x01, 0x00, 0x5f, 0x5f, 0x00, 0x01, 0x43, 0x00, 0x40, 0x00, + 0x44, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0xc7, 0x01, 0x00, + 0x01, 0x00, 0x00, 0x00, 0x41, 0x00, 0x00, 0x00, 0x01, 0x00, 0xf9, 0x18, + 0x01, 0x0d, 0xe4, 0x00, 0xf4, 0xde, 0xf1, 0x06, 0xfc, 0x0f, 0x27, 0xfa, + 0xff, 0x1d, 0xf0, 0x10, 0x18, 0x09, 0x0a, 0xf2, 0x10, 0xe0, 0x17, 0x14, + 0x04, 0x11, 0x14, 0xf1, 0xfa, 0xf2, 0xdb, 0xf7, 0xfc, 0xe2, 0xfb, 0xe1, + 0xee, 0x13, 0x0d, 0xff, 0x1c, 0xe9, 0x1a, 0x17, 0x18, 0x03, 0x00, 0xda, + 0xe8, 0x03, 0xe6, 0x17, 0xe4, 0xe9, 0xf3, 0xff, 0x12, 0x13, 0x05, 0xe1, + 0x04, 0xe2, 0x25, 0xf7, 0x06, 0xf2, 0xec, 0xf1, 0xfc, 0x11, 0xe9, 0x14, + 0xf0, 0xe0, 0xf6, 0xf2, 0xe8, 0x09, 0x10, 0x10, 0x01, 0x1d, 0xd9, 0xfa, + 0x04, 0x0f, 0x0f, 0x06, 0x0c, 0xde, 0x1c, 0x00, 0xff, 0x0d, 0x07, 0x18, + 0x1a, 0xf6, 0x0e, 0xe4, 0x16, 0x0f, 0xf9, 0x05, 0xec, 0x18, 0x1b, 0x0a, + 0x1e, 0xff, 0x00, 0x26, 0xe2, 0xff, 0xe5, 0x0a, 0x14, 0x18, 0x07, 0x05, + 0xea, 0x0f, 0xf2, 0xe4, 0xe6, 0xf6, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, + 0x08, 0x09, 0x0a, 0x08, 0x08, 0x07, 0x07, 0x01, 0x02, 0x02, 0x02, 0x02, + 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, 0x02, + 0x02, 0x02, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xc5, 0x01, 0x1d, 0xff, 0xe0, 0xff, 0xc0, 0xff, 0xe0, 0xff, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x6b, 0x03, 0x82, 0xfe, + 0xe7, 0xff, 0xcc, 0xff, 0xe7, 0xff, 0x08, 0x00, 0x02, 0x00, 0x00, 0x00, + 0xd7, 0x01, 0x0b, 0xff, 0xee, 0xff, 0xdc, 0xff, 0xee, 0xff, 0xa7, 0x03, + 0x3c, 0xfe, 0xec, 0xff, 0x17, 0x00, 0xec, 0xff, 0x72, 0x03, 0x85, 0xfe, + 0xae, 0xfe, 0xf8, 0x01, 0xae, 0xfe, 0x07, 0x00, 0x04, 0x00, 0x00, 0x00, + 0x98, 0x01, 0x60, 0xff, 0xcb, 0xff, 0x96, 0xff, 0xcb, 0xff, 0x9c, 0x03, + 0x45, 0xfe, 0x25, 0x00, 0xc1, 0xff, 0x25, 0x00, 0xb1, 0x03, 0x16, 0xfe, + 0xe4, 0xfe, 0xa5, 0x01, 0xe4, 0xfe, 0x07, 0x00, 0x14, 0x00, 0x01, 0x00, + 0xbf, 0x01, 0x31, 0xff, 0xf2, 0x00, 0x49, 0xfe, 0xf2, 0x00, 0x87, 0x03, + 0x61, 0xfe, 0x33, 0xff, 0x62, 0x01, 0x33, 0xff, 0x80, 0x03, 0x78, 0xfe, + 0xda, 0xfe, 0xe9, 0x00, 0xda, 0xfe, 0x08, 0x00, 0x15, 0x00, 0x01, 0x00, + 0xbf, 0x01, 0x31, 0xff, 0x18, 0x01, 0x0e, 0xfe, 0x18, 0x01, 0x87, 0x03, + 0x61, 0xfe, 0x16, 0xff, 0x7c, 0x01, 0x16, 0xff, 0x80, 0x03, 0x78, 0xfe, + 0x8f, 0xff, 0x93, 0x00, 0x8f, 0xff, 0x09, 0x00, 0x16, 0x00, 0x01, 0x00, + 0xbf, 0x01, 0x31, 0xff, 0x62, 0x00, 0x55, 0xff, 0x62, 0x00, 0x87, 0x03, + 0x61, 0xfe, 0x1f, 0xff, 0x6b, 0x01, 0x1f, 0xff, 0x79, 0x03, 0x7e, 0xfe, + 0xf4, 0xfe, 0x5d, 0x00, 0xf4, 0xfe, 0x08, 0x00, 0x17, 0x00, 0x01, 0x00, + 0xbc, 0x01, 0x31, 0xff, 0x74, 0x00, 0x42, 0xff, 0x74, 0x00, 0x87, 0x03, + 0x61, 0xfe, 0x52, 0xff, 0x02, 0x01, 0x52, 0xff, 0x80, 0x03, 0x78, 0xfe, + 0x7f, 0xff, 0xf1, 0xff, 0x7f, 0xff, 0x08, 0x00, 0x18, 0x00, 0x01, 0x00, + 0xb4, 0x01, 0x31, 0xff, 0xdf, 0xff, 0x1d, 0x00, 0xdf, 0xff, 0x88, 0x03, + 0x61, 0xfe, 0x87, 0xff, 0x90, 0xff, 0x87, 0xff, 0x7f, 0x03, 0x78, 0xfe, + 0xcd, 0xfe, 0xf4, 0x01, 0xcd, 0xfe, 0x08, 0x00, 0x19, 0x00, 0x01, 0x00, + 0xad, 0x01, 0x31, 0xff, 0xb8, 0xff, 0x3e, 0x00, 0xb8, 0xff, 0x82, 0x03, + 0x61, 0xfe, 0xaa, 0xff, 0xb1, 0xff, 0xaa, 0xff, 0x7f, 0x03, 0x78, 0xfe, + 0xc7, 0xfe, 0xfe, 0x01, 0xc7, 0xfe, 0x08, 0x00, 0x1a, 0x00, 0x01, 0x00, + 0x93, 0x01, 0x54, 0xff, 0xd9, 0xff, 0x0c, 0x00, 0xd9, 0xff, 0x1b, 0x03, + 0xc7, 0xfe, 0x4c, 0xff, 0x38, 0x00, 0x4c, 0xff, 0x33, 0x03, 0xb8, 0xfe, + 0x80, 0xff, 0x28, 0x00, 0x80, 0xff, 0x08, 0x00, 0x1b, 0x00, 0x01, 0x00, + 0x89, 0x01, 0x54, 0xff, 0xcf, 0xff, 0x13, 0x00, 0xcf, 0xff, 0x17, 0x03, + 0xc7, 0xfe, 0x00, 0xff, 0x50, 0x00, 0x00, 0xff, 0x2e, 0x03, 0xbd, 0xfe, + 0x8b, 0xff, 0x25, 0x00, 0x8b, 0xff, 0x08, 0x00, 0x1e, 0x00, 0x01, 0x00, + 0xbb, 0x01, 0x19, 0xff, 0xc3, 0xff, 0x1d, 0x00, 0xc3, 0xff, 0x6b, 0x03, + 0x61, 0xfe, 0x66, 0xff, 0x48, 0x00, 0x66, 0xff, 0x7c, 0x03, 0x78, 0xfe, + 0x56, 0xff, 0x4f, 0x00, 0x56, 0xff, 0x08, 0x00, 0x2c, 0x00, 0x01, 0x00, + 0xbf, 0x01, 0x31, 0xff, 0xe0, 0x00, 0x71, 0xfe, 0xe0, 0x00, 0x87, 0x03, + 0x61, 0xfe, 0x8b, 0xff, 0xc4, 0x00, 0x8b, 0xff, 0x80, 0x03, 0x78, 0xfe, + 0xb2, 0xfe, 0xc0, 0x00, 0xb2, 0xfe, 0x08, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x6c, 0x09, 0x00, 0x00, 0x0b, 0x0a, 0x00, 0x07, 0x0a, 0x88, 0x88, 0x80, + 0x02, 0x00, 0x00, 0x00, 0x71, 0x09, 0x00, 0x00, 0x0b, 0x0a, 0x00, 0x07, + 0x0a, 0x88, 0x88, 0x80, 0x03, 0x00, 0x00, 0x00, 0x76, 0x09, 0x00, 0x00, + 0x0b, 0x0a, 0x00, 0x07, 0x0a, 0x88, 0x88, 0x80, 0x04, 0x00, 0x00, 0x00, + 0x7b, 0x09, 0x00, 0x00, 0x0b, 0x0a, 0x00, 0x07, 0x0a, 0x88, 0x88, 0x80, + 0x05, 0x00, 0x00, 0x00, 0x80, 0x09, 0x00, 0x00, 0x0b, 0x0a, 0x00, 0x07, + 0x0a, 0x88, 0x88, 0x80, 0x06, 0x00, 0x00, 0x00, 0x85, 0x09, 0x00, 0x00, + 0x0b, 0x0a, 0x00, 0x07, 0x0a, 0x88, 0x88, 0x80, 0x07, 0x00, 0x00, 0x00, + 0x8a, 0x09, 0x00, 0x00, 0x0b, 0x0a, 0x00, 0x07, 0x0a, 0x88, 0x88, 0x80, + 0x08, 0x00, 0x00, 0x00, 0x8f, 0x09, 0x00, 0x00, 0x0b, 0x0a, 0x00, 0x07, + 0x0a, 0x88, 0x88, 0x80, 0x09, 0x00, 0x00, 0x00, 0x94, 0x09, 0x00, 0x00, + 0x0b, 0x0a, 0x00, 0x07, 0x0a, 0x88, 0x88, 0x80, 0x0a, 0x00, 0x00, 0x00, + 0x99, 0x09, 0x00, 0x00, 0x0b, 0x0a, 0x00, 0x07, 0x0a, 0x88, 0x88, 0x80, + 0x0b, 0x00, 0x00, 0x00, 0x9e, 0x09, 0x00, 0x00, 0x0b, 0x0a, 0x00, 0x07, + 0x0a, 0x88, 0x88, 0x80, 0x0c, 0x00, 0x00, 0x00, 0xa3, 0x09, 0x00, 0x00, + 0x0b, 0x0a, 0x00, 0x07, 0x0a, 0x88, 0x88, 0x80, 0x0d, 0x00, 0x00, 0x00, + 0xa8, 0x09, 0x00, 0x00, 0x0b, 0x0a, 0x00, 0x07, 0x0a, 0x88, 0x88, 0x80, + 0x0e, 0x00, 0x00, 0x00, 0xb4, 0x09, 0x00, 0x00, 0x0b, 0x0a, 0x00, 0x07, + 0x0a, 0x88, 0x88, 0x80, 0x00, 0x00, 0x01, 0x00, 0x9f, 0x01, 0x52, 0x07, + 0x40, 0x00, 0x80, 0x00, 0x40, 0x00, 0x18, 0x03, 0x78, 0x06, 0x40, 0x00, + 0x80, 0x00, 0x40, 0x00, 0x0a, 0x03, 0x2e, 0x06, 0x40, 0x00, 0x80, 0x00, + 0x40, 0x00, 0x08, 0x00, 0x01, 0x00, 0x01, 0x00, 0x92, 0x01, 0x37, 0x07, + 0x03, 0x01, 0x3b, 0x00, 0x03, 0x01, 0x9f, 0x02, 0x02, 0x07, 0x44, 0x00, + 0x36, 0x00, 0x44, 0x00, 0x60, 0x02, 0x47, 0x07, 0x5d, 0x00, 0xa7, 0x00, + 0x5d, 0x00, 0x08, 0x00, 0x02, 0x00, 0x01, 0x00, 0x9f, 0x01, 0x52, 0x07, + 0x40, 0x00, 0x80, 0x00, 0x40, 0x00, 0x18, 0x03, 0x78, 0x06, 0xc0, 0x00, + 0x80, 0x01, 0xc0, 0x00, 0x0a, 0x03, 0x2e, 0x06, 0x40, 0x00, 0x80, 0x00, + 0x40, 0x00, 0x08, 0x00, 0x03, 0x00, 0x01, 0x00, 0x2e, 0x01, 0x31, 0x07, + 0x81, 0x00, 0x02, 0x01, 0x81, 0x00, 0x92, 0x02, 0xb8, 0x06, 0xcd, 0x00, + 0x9a, 0x01, 0xcd, 0x00, 0xf2, 0x02, 0xe0, 0x06, 0xaa, 0x00, 0x54, 0x01, + 0xaa, 0x00, 0x08, 0x00, 0x14, 0x00, 0x01, 0x00, 0x68, 0x01, 0x5c, 0xff, + 0xf2, 0x00, 0xc6, 0xfe, 0xf2, 0x00, 0xf0, 0x02, 0xb8, 0xfe, 0x33, 0xff, + 0xcb, 0x00, 0x33, 0xff, 0xff, 0x02, 0xe0, 0xfe, 0x03, 0xff, 0x49, 0xff, + 0x03, 0xff, 0x08, 0x00, 0x15, 0x00, 0x01, 0x00, 0x68, 0x01, 0x5c, 0xff, + 0x95, 0x00, 0x52, 0xff, 0x95, 0x00, 0xf0, 0x02, 0xb8, 0xfe, 0x33, 0xff, + 0xa4, 0x00, 0x33, 0xff, 0xff, 0x02, 0xe0, 0xfe, 0x00, 0xff, 0xef, 0xfe, + 0x00, 0xff, 0x08, 0x00, 0x16, 0x00, 0x01, 0x00, 0x68, 0x01, 0x5c, 0xff, + 0x62, 0x00, 0x9c, 0xff, 0x62, 0x00, 0xf0, 0x02, 0xb8, 0xfe, 0x33, 0xff, + 0x7c, 0x00, 0x33, 0xff, 0xff, 0x02, 0xe0, 0xfe, 0x00, 0xff, 0xa0, 0xfe, + 0x00, 0xff, 0x08, 0x00, 0x17, 0x00, 0x01, 0x00, 0x5e, 0x01, 0x5c, 0xff, + 0x8c, 0xff, 0x52, 0x00, 0x8c, 0xff, 0xf0, 0x02, 0xb8, 0xfe, 0x33, 0xff, + 0x28, 0x00, 0x33, 0xff, 0xff, 0x02, 0xe0, 0xfe, 0x7f, 0xff, 0x15, 0xff, + 0x7f, 0xff, 0x08, 0x00, 0x18, 0x00, 0x01, 0x00, 0x45, 0x01, 0x5c, 0xff, + 0xe0, 0xff, 0xd8, 0xff, 0xe0, 0xff, 0xf4, 0x02, 0xb8, 0xfe, 0x00, 0xff, + 0x29, 0xfe, 0x00, 0xff, 0xfe, 0x02, 0xe0, 0xfe, 0xfa, 0xfe, 0xaa, 0x00, + 0xfa, 0xfe, 0x08, 0x00, 0x19, 0x00, 0x01, 0x00, 0x2b, 0x01, 0x5c, 0xff, + 0xcd, 0xff, 0xc0, 0xff, 0xcd, 0xff, 0xe0, 0x02, 0xb8, 0xfe, 0x00, 0xff, + 0x29, 0xfe, 0x00, 0xff, 0xfd, 0x02, 0xe0, 0xfe, 0xfa, 0xfe, 0xaa, 0x00, + 0xfa, 0xfe, 0x08, 0x00, 0x1a, 0x00, 0x01, 0x00, 0x15, 0x01, 0x97, 0xff, + 0xd9, 0xff, 0x8b, 0xff, 0xa8, 0xff, 0x7d, 0x02, 0x2e, 0xff, 0xc0, 0xff, + 0x40, 0xff, 0x70, 0xff, 0x66, 0x02, 0x48, 0xff, 0x80, 0xff, 0x80, 0xfe, + 0xe0, 0xfe, 0x08, 0x00, 0x1b, 0x00, 0x01, 0x00, 0xf5, 0x00, 0x97, 0xff, + 0xcf, 0xff, 0x6d, 0xff, 0x92, 0xff, 0x72, 0x02, 0x2e, 0xff, 0x5e, 0xff, + 0x1b, 0xfe, 0x95, 0xfe, 0x65, 0x02, 0x48, 0xff, 0xc2, 0xff, 0x46, 0xff, + 0x75, 0xff, 0x08, 0x00, 0x1e, 0x00, 0x01, 0x00, 0x2e, 0x01, 0x31, 0xff, + 0xc3, 0xff, 0x86, 0xff, 0xc3, 0xff, 0x92, 0x02, 0xb8, 0xfe, 0x33, 0xff, + 0x66, 0xfe, 0x33, 0xff, 0xf2, 0x02, 0xe0, 0xfe, 0x56, 0xff, 0xac, 0xfe, + 0x56, 0xff, 0x08, 0x00, 0x28, 0x00, 0x01, 0x00, 0x68, 0x01, 0x5c, 0xff, + 0xf2, 0x00, 0xc6, 0xfe, 0xf2, 0x00, 0xf0, 0x02, 0xb8, 0xfe, 0xcd, 0x00, + 0x35, 0xff, 0xcd, 0x00, 0xff, 0x02, 0xe0, 0xfe, 0xff, 0x01, 0x72, 0x01, + 0xff, 0x01, 0x08, 0x00, 0x05, 0x01, 0x00, 0x08, 0x00, 0x01, 0xff, 0xff, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa2, 0x00, 0x00, 0x00, + 0x00, 0xff, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, + 0x00, 0x00, 0x00, 0x00, 0x78, 0x02, 0xa0, 0xfe, 0x80, 0xff, 0x00, 0xff, + 0x80, 0xff, 0x08, 0x00, 0x01, 0x00, 0x00, 0x00, 0x76, 0x01, 0x79, 0xff, + 0xf0, 0xff, 0xe0, 0xff, 0xf0, 0xff, 0x1f, 0x03, 0x74, 0xfe, 0xce, 0xff, + 0xe0, 0xff, 0xce, 0xff, 0xee, 0x02, 0x2b, 0xfe, 0x2c, 0xff, 0x32, 0x00, + 0x2c, 0xff, 0x08, 0x00, 0x02, 0x00, 0x00, 0x00, 0x77, 0x01, 0x16, 0xff, + 0xdb, 0xff, 0xb4, 0xff, 0xdb, 0xff, 0x1f, 0x03, 0x74, 0xfe, 0xe0, 0xff, + 0xec, 0xff, 0xe0, 0xff, 0xec, 0x02, 0xf2, 0xfe, 0x80, 0xff, 0x1e, 0x00, + 0x80, 0xff, 0x08, 0x00, 0x03, 0x00, 0x00, 0x00, 0x77, 0x01, 0x16, 0xff, + 0xdb, 0xff, 0xb4, 0xff, 0xdb, 0xff, 0x1f, 0x03, 0x74, 0xfe, 0xe0, 0xff, + 0xec, 0xff, 0xe0, 0xff, 0xec, 0x02, 0xf2, 0xfe, 0x6c, 0xff, 0x23, 0x00, + 0x6c, 0xff, 0x08, 0x00, 0x04, 0x00, 0x00, 0x00, 0x33, 0x01, 0xae, 0xff, + 0xcb, 0xff, 0x96, 0xff, 0xcb, 0xff, 0x0b, 0x03, 0x85, 0xfe, 0xcb, 0xff, + 0x0a, 0x00, 0xcb, 0xff, 0xfd, 0x02, 0x2b, 0xfe, 0x2c, 0xff, 0xca, 0x00, + 0x2c, 0xff, 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, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0xb5, 0x04, 0x46, + 0xe0, 0xf3, 0xa0, 0xf1, 0x00, 0x21, 0x44, 0x22, 0x05, 0x46, 0xe1, 0xf3, + 0x0b, 0xf2, 0x63, 0x69, 0x15, 0x2b, 0x2b, 0x60, 0x01, 0xd0, 0x16, 0x2b, + 0x01, 0xd9, 0x10, 0x4b, 0x6b, 0x60, 0x6b, 0x68, 0xc3, 0xb1, 0xac, 0x60, + 0x20, 0x46, 0xea, 0xf3, 0x57, 0xf2, 0xe8, 0x60, 0x20, 0x46, 0xea, 0xf3, + 0x1b, 0xf2, 0x06, 0x46, 0x18, 0xb9, 0x20, 0x46, 0x01, 0x21, 0xea, 0xf3, + 0x53, 0xf2, 0x6b, 0x68, 0x20, 0x46, 0x9b, 0x68, 0x98, 0x47, 0x05, 0x46, + 0x2e, 0xb9, 0x20, 0x46, 0x31, 0x46, 0xea, 0xf3, 0x49, 0xf2, 0x00, 0xe0, + 0x1d, 0x46, 0x28, 0x46, 0x70, 0xbd, 0x00, 0xbf, 0xb4, 0xfd, 0x01, 0x00, + 0x2d, 0xe9, 0xf0, 0x47, 0x04, 0x46, 0x0f, 0x46, 0x91, 0x46, 0x98, 0x46, + 0xea, 0xf3, 0xfc, 0xf1, 0x05, 0x46, 0x18, 0xb9, 0x20, 0x46, 0x01, 0x21, + 0xea, 0xf3, 0x34, 0xf2, 0x20, 0x46, 0xea, 0xf3, 0xf3, 0xf1, 0xc0, 0xb1, + 0x20, 0x46, 0xea, 0xf3, 0xe5, 0xf1, 0xa0, 0xb9, 0x20, 0x46, 0xff, 0xf7, + 0xb5, 0xff, 0x82, 0x46, 0x90, 0xb1, 0x20, 0x46, 0xec, 0xf7, 0x2b, 0xfa, + 0xda, 0xf8, 0x04, 0x30, 0x50, 0x46, 0x5e, 0x69, 0x39, 0x46, 0x4a, 0x46, + 0x43, 0x46, 0xb0, 0x47, 0x06, 0x46, 0x20, 0x46, 0xec, 0xf7, 0x1d, 0xfa, + 0x04, 0xe0, 0x6f, 0xf0, 0x18, 0x06, 0x01, 0xe0, 0x4f, 0xf0, 0xff, 0x36, + 0x1d, 0xb9, 0x20, 0x46, 0x29, 0x46, 0xea, 0xf3, 0x0d, 0xf2, 0x30, 0x46, + 0xbd, 0xe8, 0xf0, 0x87, 0x05, 0x23, 0xc0, 0xf8, 0x94, 0x31, 0x20, 0x23, + 0xc0, 0xf8, 0x9c, 0x31, 0x23, 0x4b, 0x01, 0x22, 0x1b, 0x68, 0xc0, 0xf8, + 0x98, 0x21, 0xc0, 0xf8, 0xac, 0x21, 0x4f, 0xf0, 0x64, 0x02, 0xc0, 0xf8, + 0xb0, 0x21, 0x4f, 0xf0, 0x06, 0x02, 0x00, 0x2b, 0xc0, 0xf8, 0xc0, 0x21, + 0x40, 0xf2, 0x3c, 0x72, 0x0c, 0xbf, 0x07, 0x23, 0x00, 0x23, 0xc0, 0xf8, + 0xc4, 0x21, 0x4f, 0xf0, 0x08, 0x02, 0xc0, 0xf8, 0xa0, 0x31, 0xc0, 0xf8, + 0xc8, 0x21, 0x4f, 0xf0, 0x10, 0x03, 0x4f, 0xf0, 0x15, 0x02, 0xc0, 0xf8, + 0xa4, 0x31, 0xc0, 0xf8, 0xb8, 0x31, 0xc0, 0xf8, 0xbc, 0x31, 0xc0, 0xf8, + 0xcc, 0x21, 0xc0, 0xf8, 0xd0, 0x31, 0x03, 0xd0, 0x0e, 0x4b, 0x1b, 0x68, + 0x01, 0x3b, 0x00, 0xe0, 0x03, 0x23, 0x1c, 0x22, 0xc0, 0xf8, 0xd4, 0x31, + 0x04, 0x23, 0xc0, 0xf8, 0xd8, 0x31, 0xc0, 0xf8, 0xdc, 0x21, 0xc0, 0xf8, + 0xe8, 0x31, 0x0c, 0x22, 0x06, 0x23, 0xc0, 0xf8, 0xe0, 0x21, 0xc0, 0xf8, + 0xec, 0x31, 0x10, 0x22, 0x00, 0x23, 0xc0, 0xf8, 0xe4, 0x21, 0xc0, 0xf8, + 0xf0, 0x31, 0x70, 0x47, 0xec, 0x26, 0x00, 0x00, 0xd4, 0x25, 0x00, 0x00, + 0xd0, 0xf8, 0x10, 0x12, 0x38, 0xb5, 0x04, 0x46, 0x69, 0xb1, 0x80, 0x68, + 0xe1, 0xf3, 0x04, 0xf7, 0xd4, 0xf8, 0x10, 0x12, 0x05, 0x46, 0xe8, 0x22, + 0xa0, 0x68, 0xe5, 0xf3, 0xa1, 0xf7, 0x00, 0x23, 0xc4, 0xf8, 0x10, 0x32, + 0x00, 0xe0, 0x0d, 0x46, 0x28, 0x46, 0x38, 0xbd, 0x1f, 0xb5, 0x04, 0x46, + 0x06, 0x23, 0x80, 0x68, 0xe8, 0x21, 0x03, 0x93, 0xe5, 0xf3, 0x82, 0xf7, + 0xc4, 0xf8, 0x10, 0x02, 0x68, 0xb1, 0x00, 0x21, 0xe8, 0x22, 0xe1, 0xf3, + 0x33, 0xf1, 0x00, 0x23, 0x00, 0x93, 0xa0, 0x68, 0xd4, 0xf8, 0x10, 0x12, + 0x03, 0xaa, 0x1c, 0x23, 0xe1, 0xf3, 0x76, 0xf7, 0x01, 0xe0, 0x4f, 0xf0, + 0xff, 0x30, 0x04, 0xb0, 0x10, 0xbd, 0x00, 0x00, 0x2d, 0xe9, 0xf0, 0x41, + 0x8a, 0xb0, 0x1d, 0x46, 0xdd, 0xf8, 0x40, 0x80, 0x94, 0x4b, 0x08, 0x46, + 0xc3, 0xf8, 0x00, 0x80, 0x11, 0x46, 0x17, 0x46, 0xe8, 0xf3, 0xd4, 0xf6, + 0x00, 0x28, 0x00, 0xf0, 0x19, 0x81, 0x28, 0x46, 0x4f, 0xf4, 0x07, 0x71, + 0xe5, 0xf3, 0x56, 0xf7, 0x04, 0x46, 0x00, 0x28, 0x00, 0xf0, 0x11, 0x81, + 0x00, 0x21, 0x4f, 0xf4, 0x07, 0x72, 0xe1, 0xf3, 0x05, 0xf1, 0xa5, 0x60, + 0xc4, 0xf8, 0x14, 0x80, 0x20, 0x46, 0xff, 0xf7, 0x55, 0xff, 0x86, 0x4b, + 0x1e, 0x68, 0xc4, 0xf8, 0x0c, 0x62, 0x1e, 0xb1, 0x36, 0x78, 0x00, 0x36, + 0x18, 0xbf, 0x01, 0x26, 0x82, 0x4b, 0x04, 0xf1, 0x28, 0x00, 0x1a, 0x68, + 0x01, 0x21, 0x00, 0x2a, 0x14, 0xbf, 0x31, 0x22, 0x11, 0x22, 0xe2, 0xf3, + 0x09, 0xf0, 0x00, 0x23, 0x00, 0x93, 0x01, 0x93, 0x02, 0x93, 0x38, 0x46, + 0x29, 0x46, 0x42, 0x46, 0x11, 0x9b, 0x05, 0xf0, 0xd7, 0xfc, 0xe0, 0x60, + 0x00, 0x28, 0x00, 0xf0, 0xdb, 0x80, 0xe9, 0xf3, 0xed, 0xf7, 0x20, 0x60, + 0xe0, 0x68, 0xea, 0xf3, 0x07, 0xf0, 0x67, 0x69, 0x73, 0x4a, 0x7b, 0x68, + 0x73, 0x49, 0x03, 0xf0, 0x01, 0x03, 0x83, 0xf0, 0x01, 0x03, 0xd4, 0xf8, + 0x00, 0xc0, 0x00, 0x2b, 0x18, 0xbf, 0x11, 0x46, 0x84, 0xf8, 0x76, 0x31, + 0x40, 0xf6, 0x29, 0x03, 0x9c, 0x45, 0x60, 0x60, 0xd4, 0xf8, 0x08, 0xe0, + 0xe2, 0x68, 0x07, 0xf5, 0x00, 0x73, 0x03, 0xd1, 0x10, 0xb1, 0x07, 0xf5, + 0x08, 0x77, 0x01, 0xe0, 0x07, 0xf5, 0x04, 0x77, 0x00, 0x97, 0xd4, 0xf8, + 0xb8, 0x01, 0x01, 0x90, 0xd4, 0xf8, 0xbc, 0x01, 0x02, 0x90, 0xd4, 0xf8, + 0xc4, 0x01, 0x03, 0x90, 0x4f, 0xf0, 0xff, 0x30, 0x04, 0x90, 0xd4, 0xf8, + 0xc0, 0x01, 0x05, 0x90, 0x08, 0x20, 0x06, 0x90, 0x00, 0x20, 0x07, 0x90, + 0x70, 0x46, 0xee, 0xf7, 0xa9, 0xff, 0x60, 0x62, 0x00, 0x28, 0x00, 0xf0, + 0x9b, 0x80, 0xd4, 0xf8, 0x0c, 0x12, 0xb1, 0xb1, 0x0b, 0x78, 0xa3, 0xb1, + 0xe3, 0xf3, 0x6e, 0xf6, 0x55, 0x49, 0x22, 0x46, 0xd4, 0xf8, 0x0c, 0x02, + 0xe1, 0xf3, 0x30, 0xf6, 0xd4, 0xf8, 0x0c, 0x02, 0x52, 0x49, 0x22, 0x46, + 0xe1, 0xf3, 0x64, 0xf6, 0x2e, 0xb1, 0x20, 0x46, 0xff, 0xf7, 0x44, 0xff, + 0x00, 0x28, 0x40, 0xf0, 0x81, 0x80, 0x01, 0x21, 0x0a, 0x46, 0x60, 0x6a, + 0xe3, 0xf3, 0x5e, 0xf6, 0x20, 0x46, 0x00, 0x21, 0xe2, 0x68, 0x2b, 0x46, + 0x03, 0xf0, 0x9e, 0xfb, 0x20, 0x61, 0x00, 0x28, 0x72, 0xd0, 0x00, 0x21, + 0x0b, 0x46, 0x20, 0x46, 0x45, 0x4a, 0xe5, 0xf3, 0x19, 0xf2, 0x00, 0x23, + 0xc4, 0xf8, 0x90, 0x01, 0x84, 0xf8, 0x79, 0x31, 0x42, 0x48, 0xe6, 0xf3, + 0x7d, 0xf6, 0x10, 0xb3, 0xe1, 0xf3, 0xac, 0xf2, 0x01, 0x23, 0x83, 0x40, + 0x3f, 0x48, 0xc4, 0xf8, 0x80, 0x31, 0xe6, 0xf3, 0x73, 0xf6, 0x10, 0xb1, + 0xe1, 0xf3, 0xa2, 0xf2, 0x08, 0xb1, 0xd4, 0xf8, 0x80, 0x01, 0xc4, 0xf8, + 0x84, 0x01, 0x3a, 0x49, 0x00, 0x20, 0xe1, 0xf3, 0xed, 0xf4, 0x03, 0x0c, + 0xa4, 0xf8, 0x88, 0x31, 0xa4, 0xf8, 0x8a, 0x01, 0x3b, 0xb1, 0x00, 0x21, + 0x20, 0x46, 0x35, 0x4a, 0x0b, 0x46, 0xe5, 0xf3, 0xef, 0xf1, 0xc4, 0xf8, + 0x8c, 0x01, 0x00, 0x20, 0x32, 0x49, 0xe1, 0xf3, 0xdb, 0xf4, 0x01, 0x28, + 0x09, 0xd1, 0x84, 0xf8, 0x16, 0x02, 0x30, 0x49, 0x00, 0x20, 0xe1, 0xf3, + 0xd3, 0xf4, 0x01, 0x28, 0x04, 0xbf, 0x2e, 0x4b, 0x18, 0x60, 0x20, 0x46, + 0xe8, 0xf3, 0x4e, 0xf4, 0x18, 0xb3, 0x00, 0x20, 0xc4, 0xf8, 0xa0, 0x01, + 0x2a, 0x49, 0xe1, 0xf3, 0xc5, 0xf4, 0x28, 0xb1, 0x01, 0x23, 0x84, 0xf8, + 0xf9, 0x31, 0x28, 0x48, 0xee, 0xf7, 0xf4, 0xfb, 0x00, 0x20, 0x27, 0x49, + 0xe1, 0xf3, 0xba, 0xf4, 0x88, 0xb1, 0x25, 0x49, 0x00, 0x20, 0xe1, 0xf3, + 0xb5, 0xf4, 0x4f, 0xf0, 0x80, 0x73, 0x00, 0xf0, 0x0f, 0x00, 0x0a, 0xa9, + 0x01, 0xf8, 0x01, 0x0d, 0x4f, 0xf4, 0x40, 0x72, 0x00, 0x93, 0x20, 0x46, + 0x0f, 0x23, 0xe1, 0xf7, 0xf7, 0xfd, 0x1d, 0x48, 0x1d, 0x49, 0x22, 0x46, + 0xe5, 0xf3, 0x60, 0xf5, 0x1c, 0x48, 0xeb, 0xf7, 0x35, 0xf9, 0x08, 0xe0, + 0xa0, 0x68, 0x21, 0x46, 0x4f, 0xf4, 0x07, 0x72, 0xe5, 0xf3, 0x54, 0xf6, + 0x00, 0x24, 0x00, 0xe0, 0x04, 0x46, 0x20, 0x46, 0x0a, 0xb0, 0xbd, 0xe8, + 0xf0, 0x81, 0x00, 0xbf, 0xf4, 0x26, 0x00, 0x00, 0xbc, 0x26, 0x00, 0x00, + 0xec, 0x26, 0x00, 0x00, 0xae, 0x27, 0x86, 0x00, 0xb6, 0x27, 0x86, 0x00, + 0xdd, 0x9b, 0x80, 0x00, 0x51, 0x29, 0x00, 0x00, 0x65, 0xa6, 0x80, 0x00, + 0x05, 0x28, 0x86, 0x00, 0x0e, 0x28, 0x86, 0x00, 0x17, 0x28, 0x86, 0x00, + 0x49, 0x9b, 0x80, 0x00, 0x1f, 0x28, 0x86, 0x00, 0x94, 0xb9, 0x01, 0x00, + 0xa0, 0x07, 0x02, 0x00, 0x2a, 0x28, 0x86, 0x00, 0x34, 0x28, 0x86, 0x00, + 0xa5, 0xb9, 0x01, 0x00, 0x4d, 0x28, 0x86, 0x00, 0xe5, 0x9a, 0x80, 0x00, + 0xd5, 0x96, 0x80, 0x00, 0x38, 0xb5, 0x00, 0x25, 0x04, 0x46, 0x80, 0xf8, + 0x75, 0x51, 0x00, 0x69, 0x03, 0xf0, 0x22, 0xfb, 0x20, 0x46, 0xe8, 0xf3, + 0xfb, 0xf5, 0xe0, 0x68, 0x29, 0x46, 0xe9, 0xf3, 0xb5, 0xf6, 0xd4, 0xf8, + 0x90, 0x01, 0x28, 0xb1, 0xe5, 0xf3, 0xf4, 0xf0, 0xd4, 0xf8, 0x90, 0x01, + 0xe5, 0xf3, 0x3a, 0xf1, 0xd4, 0xf8, 0x8c, 0x01, 0x28, 0xb1, 0xe5, 0xf3, + 0xeb, 0xf0, 0xd4, 0xf8, 0x8c, 0x01, 0xe5, 0xf3, 0x31, 0xf1, 0xe0, 0x68, + 0x05, 0xf0, 0x14, 0xfa, 0xd4, 0xf8, 0x10, 0x32, 0x23, 0xb1, 0x1b, 0x78, + 0x13, 0xb1, 0x20, 0x46, 0xff, 0xf7, 0x46, 0xfe, 0xa0, 0x68, 0x21, 0x46, + 0x4f, 0xf4, 0x07, 0x72, 0xbd, 0xe8, 0x38, 0x40, 0xe5, 0xf3, 0xee, 0xb5, + 0x7f, 0xb5, 0x06, 0x46, 0x4f, 0xf4, 0xbc, 0x71, 0x40, 0x68, 0xe5, 0xf3, + 0xd7, 0xf5, 0x04, 0x46, 0xc0, 0xb1, 0x00, 0x21, 0x4f, 0xf4, 0xbc, 0x72, + 0xe0, 0xf3, 0x88, 0xf7, 0x0b, 0x4b, 0x26, 0x60, 0x00, 0x93, 0x0b, 0x4b, + 0x00, 0x25, 0x01, 0x93, 0x30, 0x68, 0x23, 0x46, 0x09, 0x49, 0x0a, 0x4a, + 0x02, 0x95, 0x03, 0x95, 0x02, 0xf0, 0xc6, 0xde, 0x4f, 0xf4, 0x96, 0x63, + 0xc4, 0xf8, 0x60, 0x31, 0x84, 0xf8, 0x64, 0x51, 0x20, 0x46, 0x04, 0xb0, + 0x70, 0xbd, 0x00, 0xbf, 0x49, 0x03, 0x01, 0x00, 0xc1, 0x2d, 0x00, 0x00, + 0xcc, 0xb9, 0x01, 0x00, 0x85, 0x3b, 0x86, 0x00, 0x10, 0xb5, 0x04, 0x46, + 0x70, 0xb1, 0x03, 0x68, 0x22, 0x46, 0x18, 0x68, 0x06, 0x49, 0x02, 0xf0, + 0xe3, 0xde, 0x23, 0x68, 0x21, 0x46, 0x58, 0x68, 0x4f, 0xf4, 0xbc, 0x72, + 0xbd, 0xe8, 0x10, 0x40, 0xe5, 0xf3, 0xae, 0xb5, 0x10, 0xbd, 0x00, 0xbf, + 0x85, 0x3b, 0x86, 0x00, 0x70, 0xb5, 0x04, 0x46, 0x00, 0x28, 0x2b, 0xd0, + 0x81, 0x68, 0x69, 0xb1, 0xc3, 0x68, 0x98, 0x68, 0xee, 0xf3, 0x56, 0xf2, + 0xe3, 0x68, 0xd0, 0xf1, 0x01, 0x05, 0xa1, 0x68, 0x98, 0x68, 0x38, 0xbf, + 0x00, 0x25, 0xee, 0xf3, 0x5f, 0xf2, 0x00, 0xe0, 0x0d, 0x46, 0x61, 0x6f, + 0x00, 0x26, 0xa6, 0x65, 0x29, 0xb1, 0xe3, 0x68, 0xa2, 0x6f, 0x58, 0x68, + 0xe5, 0xf3, 0x8c, 0xf5, 0x66, 0x67, 0x20, 0x46, 0xed, 0xf7, 0x24, 0xff, + 0xe3, 0x68, 0x22, 0x46, 0x18, 0x68, 0x07, 0x49, 0x02, 0xf0, 0xae, 0xde, + 0xe3, 0x68, 0x21, 0x46, 0x58, 0x68, 0x4f, 0xf4, 0xb0, 0x72, 0xe5, 0xf3, + 0x7b, 0xf5, 0x00, 0xe0, 0x05, 0x46, 0x28, 0x46, 0x70, 0xbd, 0x00, 0xbf, + 0xeb, 0x3d, 0x86, 0x00, 0x30, 0xb5, 0x4f, 0xf4, 0xb0, 0x71, 0x85, 0xb0, + 0x05, 0x46, 0x40, 0x68, 0xe5, 0xf3, 0x5c, 0xf5, 0x04, 0x46, 0xe0, 0xb1, + 0x00, 0x21, 0x4f, 0xf4, 0xb0, 0x72, 0xe0, 0xf3, 0x0d, 0xf7, 0xe5, 0x60, + 0xa8, 0x68, 0xc5, 0xf8, 0x18, 0x48, 0x0d, 0x49, 0x22, 0x46, 0x00, 0x23, + 0xee, 0xf3, 0x40, 0xf2, 0xa0, 0x60, 0x60, 0xb1, 0x0a, 0x4b, 0x28, 0x68, + 0x00, 0x93, 0x00, 0x23, 0x01, 0x93, 0x02, 0x93, 0x03, 0x93, 0x08, 0x49, + 0x08, 0x4a, 0x23, 0x46, 0x02, 0xf0, 0x42, 0xde, 0x18, 0xb1, 0x20, 0x46, + 0xff, 0xf7, 0xa0, 0xff, 0x00, 0x24, 0x20, 0x46, 0x05, 0xb0, 0x30, 0xbd, + 0x31, 0x2f, 0x00, 0x00, 0xd9, 0xe1, 0x80, 0x00, 0x50, 0xba, 0x01, 0x00, + 0xeb, 0x3d, 0x86, 0x00, 0x38, 0xb5, 0x04, 0x46, 0xd0, 0xf8, 0x84, 0x00, + 0x0d, 0x46, 0x08, 0xb1, 0x02, 0xf0, 0x38, 0xfd, 0xd4, 0xf8, 0x80, 0x00, + 0x08, 0xb1, 0x05, 0xf0, 0xf1, 0xfb, 0xe0, 0x6f, 0x08, 0xb1, 0xff, 0xf7, + 0x6d, 0xff, 0x60, 0x6f, 0x08, 0xb1, 0xff, 0xf7, 0x7f, 0xff, 0xa0, 0x68, + 0x08, 0xb1, 0x00, 0xf0, 0x03, 0xfd, 0x28, 0x46, 0x21, 0x46, 0x8c, 0x22, + 0xbd, 0xe8, 0x38, 0x40, 0xe5, 0xf3, 0x1e, 0xb5, 0x2d, 0xe9, 0xf0, 0x4f, + 0x07, 0x46, 0x89, 0xb0, 0x8b, 0x46, 0x00, 0x20, 0x8c, 0x21, 0x90, 0x46, + 0x1d, 0x46, 0x13, 0x9e, 0xe5, 0xf3, 0x02, 0xf5, 0x04, 0x46, 0x00, 0x28, + 0x7b, 0xd0, 0x00, 0x21, 0x8c, 0x22, 0xe0, 0xf3, 0xb3, 0xf6, 0x26, 0x60, + 0x38, 0x46, 0x05, 0xf0, 0x83, 0xf8, 0x07, 0xab, 0x01, 0x90, 0x05, 0x93, + 0x2a, 0x46, 0x82, 0x46, 0x4f, 0xf0, 0x00, 0x09, 0x20, 0x46, 0x41, 0xf2, + 0xe4, 0x41, 0x33, 0x46, 0xcd, 0xf8, 0x00, 0x90, 0xcd, 0xf8, 0x08, 0xb0, + 0xcd, 0xf8, 0x0c, 0x80, 0x04, 0x94, 0x00, 0xf0, 0x75, 0xfd, 0x05, 0x46, + 0x00, 0x28, 0x57, 0xd0, 0xa0, 0x60, 0x04, 0xf0, 0xe5, 0xdb, 0x2b, 0x69, + 0x60, 0x60, 0xe3, 0x60, 0x2d, 0x4b, 0x10, 0x21, 0xa3, 0x64, 0x2d, 0x4a, + 0x33, 0x46, 0x27, 0x61, 0x64, 0x64, 0x38, 0x46, 0xe0, 0xf3, 0xcc, 0xf6, + 0x2b, 0x69, 0x31, 0x46, 0x1b, 0x6e, 0x29, 0x48, 0x9a, 0x6b, 0x29, 0x4b, + 0xee, 0xf7, 0x52, 0xfa, 0x32, 0x46, 0x48, 0x46, 0x12, 0x99, 0x27, 0x4b, + 0x8d, 0xe8, 0x80, 0x01, 0x02, 0xf0, 0x28, 0xfe, 0x06, 0x46, 0x00, 0x28, + 0x34, 0xd1, 0x63, 0x68, 0x01, 0x27, 0x83, 0xf8, 0x78, 0x70, 0xdf, 0xf8, + 0x94, 0x80, 0x36, 0x21, 0x3a, 0x46, 0xd5, 0xf8, 0x7c, 0x02, 0x25, 0xf0, + 0x0d, 0xda, 0xc4, 0xf8, 0x3c, 0x80, 0x28, 0x46, 0xff, 0xf7, 0x48, 0xff, + 0x60, 0x67, 0x08, 0xb3, 0x63, 0x68, 0x28, 0x46, 0x83, 0xf8, 0xa4, 0x70, + 0xc4, 0xf8, 0x78, 0x80, 0xff, 0xf7, 0xc4, 0xfe, 0xe0, 0x67, 0xb8, 0xb1, + 0x28, 0x46, 0x05, 0xf0, 0x11, 0xfb, 0xc4, 0xf8, 0x80, 0x00, 0x88, 0xb1, + 0x28, 0x46, 0x02, 0xf0, 0x7f, 0xfc, 0xc4, 0xf8, 0x84, 0x00, 0x58, 0xb1, + 0x0f, 0x4b, 0x02, 0x96, 0x8d, 0xe8, 0x48, 0x00, 0x03, 0x96, 0x28, 0x68, + 0x0d, 0x49, 0x0e, 0x4a, 0x23, 0x46, 0x02, 0xf0, 0x8d, 0xdd, 0x20, 0xb1, + 0x20, 0x46, 0x51, 0x46, 0xff, 0xf7, 0x56, 0xff, 0x00, 0x24, 0x20, 0x46, + 0x09, 0xb0, 0xbd, 0xe8, 0xf0, 0x8f, 0x00, 0xbf, 0x55, 0xf7, 0x80, 0x00, + 0xfb, 0x41, 0x86, 0x00, 0x94, 0x8d, 0x02, 0x00, 0xbc, 0xba, 0x01, 0x00, + 0x29, 0xfb, 0x80, 0x00, 0x99, 0xf8, 0x80, 0x00, 0x7c, 0xd2, 0x85, 0x00, + 0xc5, 0x42, 0x86, 0x00, 0xef, 0xbe, 0xad, 0x0d, 0x02, 0x4b, 0x01, 0x22, + 0x1a, 0x70, 0xeb, 0xf7, 0x8f, 0xba, 0x00, 0xbf, 0x38, 0x08, 0x02, 0x00, + 0xd0, 0xf8, 0xac, 0x11, 0x10, 0xb5, 0x04, 0x46, 0x29, 0xb1, 0x80, 0x68, + 0xee, 0xf3, 0x34, 0xf1, 0x00, 0x23, 0xc4, 0xf8, 0xac, 0x31, 0xd4, 0xf8, + 0xc4, 0x11, 0x29, 0xb1, 0xa0, 0x68, 0xee, 0xf3, 0x2b, 0xf1, 0x00, 0x23, + 0xc4, 0xf8, 0xc4, 0x31, 0xd4, 0xf8, 0x74, 0x15, 0x29, 0xb1, 0xa0, 0x68, + 0xee, 0xf3, 0x22, 0xf1, 0x00, 0x23, 0xc4, 0xf8, 0x74, 0x35, 0xd4, 0xf8, + 0xf8, 0x16, 0x29, 0xb1, 0xa0, 0x68, 0xee, 0xf3, 0x19, 0xf1, 0x00, 0x23, + 0xc4, 0xf8, 0xf8, 0x36, 0xd4, 0xf8, 0xfc, 0x16, 0x29, 0xb1, 0xa0, 0x68, + 0xee, 0xf3, 0x10, 0xf1, 0x00, 0x23, 0xc4, 0xf8, 0xfc, 0x36, 0xd4, 0xf8, + 0xe0, 0x36, 0x19, 0x6a, 0x31, 0xb1, 0xa0, 0x68, 0xee, 0xf3, 0x06, 0xf1, + 0xd4, 0xf8, 0xe0, 0x36, 0x00, 0x22, 0x1a, 0x62, 0xd4, 0xf8, 0x3c, 0x15, + 0x29, 0xb1, 0xa0, 0x68, 0xee, 0xf3, 0xfc, 0xf0, 0x00, 0x23, 0xc4, 0xf8, + 0x3c, 0x35, 0xd4, 0xf8, 0x94, 0x17, 0x29, 0xb1, 0xa0, 0x68, 0xee, 0xf3, + 0xf3, 0xf0, 0x00, 0x23, 0xc4, 0xf8, 0x94, 0x37, 0xd4, 0xf8, 0xb0, 0x18, + 0x29, 0xb1, 0xa0, 0x68, 0xee, 0xf3, 0xea, 0xf0, 0x00, 0x23, 0xc4, 0xf8, + 0xb0, 0x38, 0x10, 0xbd, 0x10, 0xb5, 0x04, 0x46, 0x00, 0x68, 0x05, 0xf0, + 0xdd, 0xff, 0xd4, 0xf8, 0x48, 0x01, 0x20, 0xb1, 0x05, 0xf0, 0x66, 0xfb, + 0x00, 0x23, 0xc4, 0xf8, 0x48, 0x31, 0xd4, 0xf8, 0x58, 0x31, 0x13, 0xb1, + 0x00, 0x23, 0xc4, 0xf8, 0x58, 0x31, 0xd4, 0xf8, 0x3c, 0x01, 0x20, 0xb1, + 0x05, 0xf0, 0xf6, 0xfa, 0x00, 0x23, 0xc4, 0xf8, 0x3c, 0x31, 0xd4, 0xf8, + 0x40, 0x01, 0x20, 0xb1, 0x01, 0xf0, 0xa6, 0xfa, 0x00, 0x23, 0xc4, 0xf8, + 0x40, 0x31, 0xd4, 0xf8, 0x4c, 0x01, 0x20, 0xb1, 0x05, 0xf0, 0x1c, 0xfc, + 0x00, 0x23, 0xc4, 0xf8, 0x4c, 0x31, 0xd4, 0xf8, 0x54, 0x01, 0x20, 0xb1, + 0x05, 0xf0, 0x92, 0xfb, 0x00, 0x23, 0xc4, 0xf8, 0x54, 0x31, 0xd4, 0xf8, + 0x60, 0x01, 0x20, 0xb1, 0x07, 0xf0, 0x84, 0xf9, 0x00, 0x23, 0xc4, 0xf8, + 0x60, 0x31, 0xd4, 0xf8, 0x38, 0x31, 0x13, 0xb1, 0x00, 0x23, 0xc4, 0xf8, + 0x38, 0x31, 0xd4, 0xf8, 0x64, 0x01, 0x20, 0xb1, 0x02, 0xf0, 0x40, 0xfa, + 0x00, 0x23, 0xc4, 0xf8, 0x64, 0x31, 0xd4, 0xf8, 0x00, 0x05, 0x20, 0xb1, + 0x07, 0xf0, 0x62, 0xfa, 0x00, 0x23, 0xc4, 0xf8, 0x00, 0x35, 0x10, 0xbd, + 0x38, 0xb5, 0x03, 0x68, 0x04, 0x46, 0xd0, 0xf8, 0x60, 0x56, 0x1a, 0x49, + 0x58, 0x69, 0xe1, 0xf3, 0x07, 0xf2, 0x28, 0x70, 0x23, 0x68, 0x18, 0x49, + 0x58, 0x69, 0xd4, 0xf8, 0x60, 0x56, 0xe1, 0xf3, 0xff, 0xf1, 0xe8, 0x70, + 0xd4, 0xf8, 0x60, 0x36, 0x1a, 0x78, 0x0a, 0xb1, 0x0f, 0x2a, 0x01, 0xd1, + 0x01, 0x22, 0x1a, 0x70, 0xd4, 0xf8, 0x60, 0x36, 0x01, 0x21, 0x1a, 0x78, + 0x5a, 0x70, 0xd4, 0xf8, 0x60, 0x56, 0x28, 0x46, 0xe0, 0xf3, 0xa8, 0xf7, + 0xa8, 0x70, 0xd4, 0xf8, 0x60, 0x36, 0xda, 0x78, 0x0a, 0xb1, 0x0f, 0x2a, + 0x01, 0xd1, 0x01, 0x22, 0xda, 0x70, 0xd4, 0xf8, 0x60, 0x36, 0x01, 0x21, + 0xda, 0x78, 0x1a, 0x71, 0xd4, 0xf8, 0x60, 0x46, 0xe0, 0x1c, 0xe0, 0xf3, + 0x95, 0xf7, 0x60, 0x71, 0x38, 0xbd, 0x00, 0xbf, 0x3d, 0x79, 0x86, 0x00, + 0x52, 0x79, 0x86, 0x00, 0x03, 0x68, 0x70, 0xb5, 0x5d, 0x69, 0x04, 0x46, + 0x14, 0x49, 0x28, 0x46, 0xe1, 0xf3, 0xca, 0xf1, 0x40, 0xb2, 0x20, 0xb9, + 0x28, 0x46, 0x12, 0x49, 0xe1, 0xf3, 0xc4, 0xf1, 0x40, 0xb2, 0x43, 0x1e, + 0x0e, 0x2b, 0x0e, 0xd8, 0x01, 0x28, 0x03, 0xd1, 0xd4, 0xf8, 0x60, 0x26, + 0x00, 0x23, 0x04, 0xe0, 0x02, 0x28, 0x06, 0xd1, 0xd4, 0xf8, 0x60, 0x26, + 0x01, 0x23, 0x93, 0x71, 0xd4, 0xf8, 0x60, 0x26, 0xd3, 0x71, 0x08, 0x49, + 0x28, 0x46, 0x26, 0x6b, 0xe1, 0xf3, 0xac, 0xf1, 0x86, 0xf8, 0x04, 0x01, + 0x20, 0x46, 0xf1, 0xf3, 0x47, 0xf5, 0x01, 0x20, 0x70, 0xbd, 0x00, 0xbf, + 0xc6, 0x5c, 0x86, 0x00, 0xcb, 0x5c, 0x86, 0x00, 0x0e, 0x5d, 0x86, 0x00, + 0x70, 0xb5, 0x04, 0x46, 0x21, 0x46, 0x00, 0x68, 0x07, 0xf0, 0xbc, 0xf9, + 0xc4, 0xf8, 0x00, 0x05, 0x00, 0x28, 0x52, 0xd0, 0x20, 0x68, 0x05, 0xf0, + 0xf7, 0xfe, 0x20, 0x68, 0x21, 0x46, 0x01, 0xf0, 0x63, 0xfb, 0xc4, 0xf8, + 0x34, 0x07, 0x00, 0x28, 0x49, 0xd0, 0x2c, 0x4b, 0x20, 0x46, 0xc4, 0xf8, + 0x58, 0x31, 0x05, 0xf0, 0x4b, 0xfa, 0xc4, 0xf8, 0x3c, 0x01, 0x00, 0x28, + 0x41, 0xd0, 0x20, 0x46, 0x01, 0xf0, 0x2c, 0xfa, 0xc4, 0xf8, 0x40, 0x01, + 0x00, 0x28, 0x3c, 0xd0, 0x20, 0x46, 0x07, 0xf0, 0x7d, 0xf8, 0xc4, 0xf8, + 0x60, 0x01, 0x00, 0x28, 0x37, 0xd0, 0x20, 0x68, 0x21, 0x46, 0xa2, 0x68, + 0x1f, 0x4b, 0x05, 0xf0, 0x07, 0xfb, 0xc4, 0xf8, 0x7c, 0x02, 0x00, 0x28, + 0x2f, 0xd0, 0x20, 0x46, 0x02, 0xf0, 0xd6, 0xf9, 0xc4, 0xf8, 0x64, 0x01, + 0x00, 0x28, 0x2a, 0xd0, 0x19, 0x4b, 0x00, 0x25, 0x01, 0x26, 0xc4, 0xf8, + 0x38, 0x31, 0xa4, 0xf8, 0x30, 0x58, 0x84, 0xf8, 0x88, 0x58, 0x84, 0xf8, + 0x8a, 0x58, 0x84, 0xf8, 0x89, 0x68, 0x20, 0x46, 0x05, 0xf0, 0x72, 0xfa, + 0xc4, 0xf8, 0x48, 0x01, 0x00, 0x28, 0x18, 0xd0, 0x23, 0x68, 0x28, 0x46, + 0x83, 0xf8, 0xa3, 0x60, 0x23, 0x68, 0x83, 0xf8, 0xa9, 0x60, 0x23, 0x68, + 0x83, 0xf8, 0xa0, 0x60, 0x70, 0xbd, 0x29, 0x20, 0x70, 0xbd, 0x2a, 0x20, + 0x70, 0xbd, 0x31, 0x20, 0x70, 0xbd, 0x32, 0x20, 0x70, 0xbd, 0x35, 0x20, + 0x70, 0xbd, 0x39, 0x20, 0x70, 0xbd, 0x3c, 0x20, 0x70, 0xbd, 0x43, 0x20, + 0x70, 0xbd, 0x00, 0xbf, 0xef, 0xbe, 0xad, 0xde, 0x9d, 0x6d, 0x81, 0x00, + 0xef, 0xbe, 0xad, 0x0d, 0xf0, 0xb5, 0xd0, 0xf8, 0x40, 0x55, 0x00, 0x21, + 0xac, 0x22, 0x87, 0xb0, 0x04, 0x46, 0x28, 0x46, 0xe0, 0xf3, 0x84, 0xf4, + 0x64, 0x23, 0xeb, 0x85, 0x03, 0x23, 0x85, 0xf8, 0x60, 0x30, 0x00, 0x22, + 0x01, 0x23, 0xd4, 0xf8, 0x5c, 0x01, 0x4f, 0xf4, 0x2c, 0x51, 0x24, 0xf0, + 0x69, 0xdb, 0xff, 0x28, 0x04, 0xd1, 0x23, 0x6b, 0x18, 0x69, 0x19, 0x68, + 0xef, 0xf7, 0x0e, 0xff, 0x21, 0x68, 0x68, 0x86, 0x23, 0x6b, 0xa4, 0xf8, + 0x26, 0x06, 0x91, 0xf8, 0x46, 0x60, 0xff, 0x27, 0x00, 0x21, 0x00, 0xf4, + 0x40, 0x60, 0x1a, 0x89, 0xb0, 0xf5, 0x40, 0x6f, 0x14, 0xbf, 0x14, 0x20, + 0x28, 0x20, 0x1b, 0x68, 0x8d, 0xe8, 0x82, 0x00, 0x03, 0x90, 0x06, 0xf0, + 0x03, 0x06, 0xd4, 0xf8, 0x60, 0x06, 0x02, 0x96, 0x80, 0x78, 0x04, 0x90, + 0x05, 0xf1, 0x38, 0x00, 0x2f, 0xf0, 0x6e, 0xdc, 0x23, 0x68, 0x93, 0xf8, + 0x46, 0x30, 0x98, 0x07, 0x03, 0xd0, 0xeb, 0x88, 0x43, 0xf0, 0x20, 0x03, + 0xeb, 0x80, 0x07, 0xb0, 0xf0, 0xbd, 0x00, 0x00, 0x38, 0xb5, 0x04, 0x46, + 0x2c, 0x49, 0x80, 0x68, 0x22, 0x46, 0x00, 0x23, 0xed, 0xf3, 0x78, 0xf7, + 0xc4, 0xf8, 0xac, 0x01, 0x00, 0x28, 0x4d, 0xd0, 0xa0, 0x68, 0x28, 0x49, + 0x22, 0x46, 0x00, 0x23, 0xed, 0xf3, 0x6e, 0xf7, 0xc4, 0xf8, 0xc4, 0x01, + 0x00, 0x28, 0x43, 0xd0, 0xa0, 0x68, 0x24, 0x49, 0x22, 0x46, 0x00, 0x23, + 0xed, 0xf3, 0x64, 0xf7, 0xc4, 0xf8, 0x74, 0x05, 0x00, 0x28, 0x39, 0xd0, + 0xa0, 0x68, 0x20, 0x49, 0x22, 0x46, 0x00, 0x23, 0xed, 0xf3, 0x5a, 0xf7, + 0xc4, 0xf8, 0xf8, 0x06, 0x00, 0x28, 0x2f, 0xd0, 0xa0, 0x68, 0x1c, 0x49, + 0x22, 0x46, 0x00, 0x23, 0xed, 0xf3, 0x50, 0xf7, 0xc4, 0xf8, 0xfc, 0x06, + 0x30, 0xb3, 0xa0, 0x68, 0x18, 0x49, 0x22, 0x46, 0x00, 0x23, 0xd4, 0xf8, + 0xe0, 0x56, 0xed, 0xf3, 0x45, 0xf7, 0x28, 0x62, 0xe0, 0xb1, 0xa0, 0x68, + 0x14, 0x49, 0x22, 0x46, 0x00, 0x23, 0xed, 0xf3, 0x3d, 0xf7, 0xc4, 0xf8, + 0x3c, 0x05, 0x98, 0xb1, 0xa0, 0x68, 0x11, 0x49, 0x22, 0x46, 0x00, 0x23, + 0xed, 0xf3, 0x34, 0xf7, 0xc4, 0xf8, 0x94, 0x07, 0x50, 0xb1, 0x00, 0x23, + 0xa0, 0x68, 0x0d, 0x49, 0x22, 0x46, 0xed, 0xf3, 0x2b, 0xf7, 0xc4, 0xf8, + 0xb0, 0x08, 0x00, 0x30, 0x18, 0xbf, 0x01, 0x20, 0x38, 0xbd, 0x00, 0xbf, + 0x3d, 0xaa, 0x81, 0x00, 0x3d, 0x70, 0x81, 0x00, 0x25, 0x3e, 0x81, 0x00, + 0x95, 0x91, 0x81, 0x00, 0x85, 0x8f, 0x81, 0x00, 0x25, 0x6e, 0x81, 0x00, + 0x89, 0x59, 0x81, 0x00, 0x39, 0x6b, 0x81, 0x00, 0x49, 0x6f, 0x81, 0x00, + 0xf8, 0xb5, 0x42, 0xf6, 0x01, 0x31, 0x00, 0x25, 0xff, 0x23, 0x01, 0x26, + 0x64, 0x27, 0x04, 0x46, 0x80, 0xf8, 0x47, 0x36, 0x80, 0xf8, 0xc4, 0x34, + 0xa0, 0xf8, 0x28, 0x16, 0x80, 0xf8, 0x28, 0x60, 0x80, 0xf8, 0x68, 0x77, + 0x80, 0xf8, 0x42, 0x56, 0x80, 0xf8, 0x4c, 0x66, 0x80, 0xf8, 0x43, 0x56, + 0x80, 0xf8, 0x49, 0x66, 0x80, 0xf8, 0x46, 0x56, 0x02, 0x21, 0x4f, 0xf0, + 0xff, 0x32, 0x04, 0xf0, 0x4d, 0xd8, 0x20, 0x46, 0x31, 0x46, 0x2a, 0x46, + 0x04, 0xf0, 0x48, 0xd8, 0x20, 0x46, 0x0c, 0x21, 0x4f, 0xf0, 0xff, 0x32, + 0x04, 0xf0, 0x42, 0xd8, 0x20, 0x46, 0x0b, 0x21, 0x2a, 0x46, 0x04, 0xf0, + 0x3d, 0xd8, 0x20, 0x46, 0x0e, 0x21, 0x4f, 0xf0, 0xff, 0x32, 0x04, 0xf0, + 0x37, 0xd8, 0x20, 0x46, 0x0d, 0x21, 0x2a, 0x46, 0x04, 0xf0, 0x32, 0xd8, + 0x20, 0x46, 0x0f, 0x21, 0x4f, 0xf0, 0xff, 0x32, 0x04, 0xf0, 0x2c, 0xd8, + 0x04, 0x21, 0x02, 0x22, 0x20, 0x46, 0x04, 0xf0, 0x27, 0xd8, 0xd4, 0xf8, + 0x60, 0x36, 0x03, 0x22, 0x84, 0xf8, 0x48, 0x66, 0x9a, 0x71, 0xd4, 0xf8, + 0x60, 0x36, 0x40, 0xf6, 0x2a, 0x11, 0xda, 0x71, 0xa4, 0xf8, 0x2a, 0x16, + 0xa4, 0xf8, 0x2c, 0x16, 0xa4, 0xf8, 0x2e, 0x16, 0xa4, 0xf8, 0x30, 0x16, + 0xa4, 0xf8, 0x32, 0x16, 0xa4, 0xf8, 0x34, 0x16, 0xa4, 0xf8, 0x36, 0x16, + 0x40, 0xf6, 0x2b, 0x11, 0xa4, 0xf8, 0x38, 0x16, 0x21, 0x68, 0xa4, 0xf8, + 0x7a, 0x55, 0x81, 0xf8, 0x95, 0x50, 0xa4, 0xf8, 0x3e, 0x26, 0x02, 0x22, + 0xa4, 0xf8, 0x40, 0x26, 0x04, 0x22, 0x07, 0x21, 0xa4, 0xf8, 0x3c, 0x26, + 0x0f, 0x22, 0xa4, 0xf8, 0x3a, 0x16, 0xa4, 0xf8, 0x7c, 0x58, 0xa4, 0xf8, + 0x7e, 0x78, 0x84, 0xf8, 0xea, 0x51, 0x84, 0xf8, 0xeb, 0x51, 0x84, 0xf8, + 0x1e, 0x52, 0x84, 0xf8, 0xee, 0x51, 0x84, 0xf8, 0xec, 0x51, 0x84, 0xf8, + 0xfa, 0x61, 0x84, 0xf8, 0x0b, 0x57, 0x84, 0xf8, 0x0c, 0x27, 0x84, 0xf8, + 0xa0, 0x54, 0x23, 0x46, 0xd3, 0xf8, 0x90, 0x24, 0xc3, 0xf8, 0x80, 0x22, + 0x95, 0x71, 0x01, 0x35, 0x04, 0x33, 0x04, 0x2d, 0xf6, 0xd1, 0x23, 0x68, + 0x00, 0x25, 0x01, 0x26, 0x84, 0xf8, 0x50, 0x57, 0x4f, 0xf0, 0xff, 0x32, + 0x83, 0xf8, 0x4d, 0x60, 0x5a, 0x63, 0x23, 0x68, 0x04, 0xf5, 0xcc, 0x67, + 0x83, 0xf8, 0x42, 0x60, 0x23, 0x68, 0x0b, 0x22, 0x83, 0xf8, 0x43, 0x50, + 0x23, 0x68, 0x84, 0xf8, 0xcf, 0x51, 0x83, 0xf8, 0x39, 0x50, 0x23, 0x68, + 0x38, 0x1d, 0x83, 0xf8, 0xaa, 0x60, 0x23, 0x68, 0x84, 0xf8, 0xdf, 0x51, + 0x84, 0xf8, 0xe0, 0x61, 0xc4, 0xf8, 0xe4, 0x51, 0x84, 0xf8, 0xe1, 0x51, + 0x29, 0x46, 0xdd, 0x66, 0xe0, 0xf3, 0x18, 0xf3, 0xdd, 0x23, 0x84, 0xf8, + 0x64, 0x36, 0x09, 0x23, 0x03, 0x22, 0x84, 0xf8, 0x65, 0x36, 0xb8, 0x1d, + 0x1a, 0x49, 0xe0, 0xf3, 0xa9, 0xf2, 0x02, 0x23, 0x84, 0xf8, 0x69, 0x36, + 0x23, 0x68, 0x84, 0xf8, 0x56, 0x65, 0x84, 0xf8, 0x57, 0x65, 0x83, 0xf8, + 0x4c, 0x50, 0x64, 0x23, 0xa4, 0xf8, 0x8c, 0x38, 0x23, 0x68, 0x84, 0xf8, + 0x92, 0x57, 0xa4, 0xf8, 0x90, 0x57, 0x93, 0xf8, 0x46, 0x20, 0x92, 0x07, + 0x0c, 0xd0, 0x93, 0xf9, 0x4c, 0x30, 0x4b, 0xb1, 0xd4, 0xf8, 0xfc, 0x04, + 0x24, 0x30, 0xf3, 0xf3, 0xf7, 0xf3, 0xd4, 0xf8, 0xfc, 0x04, 0x32, 0x30, + 0xf3, 0xf3, 0xf2, 0xf3, 0x22, 0x68, 0x01, 0x23, 0x4f, 0xf4, 0x48, 0x71, + 0x84, 0xf8, 0x25, 0x38, 0xa4, 0xf8, 0x5c, 0x17, 0x82, 0xf8, 0xa2, 0x30, + 0x23, 0x68, 0xff, 0x22, 0x83, 0xf8, 0xb5, 0x20, 0xf8, 0xbd, 0x00, 0xbf, + 0xc5, 0xb6, 0x01, 0x00, 0x41, 0xf2, 0xe4, 0x43, 0x98, 0x42, 0x40, 0xf0, + 0xc8, 0x80, 0x44, 0xf2, 0x20, 0x33, 0x99, 0x42, 0x00, 0xf0, 0xc5, 0x80, + 0x44, 0xf2, 0x25, 0x33, 0x99, 0x42, 0x00, 0xf0, 0xc0, 0x80, 0x44, 0xf2, + 0x03, 0x33, 0x99, 0x42, 0x00, 0xf0, 0xbb, 0x80, 0x44, 0xf2, 0x21, 0x33, + 0x99, 0x42, 0x00, 0xf0, 0xb6, 0x80, 0x44, 0xf2, 0x24, 0x33, 0x99, 0x42, + 0x00, 0xf0, 0xb1, 0x80, 0x44, 0xf2, 0x18, 0x33, 0x99, 0x42, 0x00, 0xf0, + 0xac, 0x80, 0x44, 0xf2, 0x19, 0x33, 0x99, 0x42, 0x00, 0xf0, 0xa7, 0x80, + 0x44, 0xf2, 0x1a, 0x33, 0x99, 0x42, 0x00, 0xf0, 0xa2, 0x80, 0x44, 0xf2, + 0x11, 0x33, 0x99, 0x42, 0x00, 0xf0, 0x9d, 0x80, 0x44, 0xf2, 0x13, 0x33, + 0x99, 0x42, 0x00, 0xf0, 0x98, 0x80, 0x44, 0xf2, 0x12, 0x33, 0x99, 0x42, + 0x00, 0xf0, 0x93, 0x80, 0x44, 0xf2, 0x14, 0x33, 0x99, 0x42, 0x00, 0xf0, + 0x8e, 0x80, 0x44, 0xf2, 0x15, 0x33, 0x99, 0x42, 0x00, 0xf0, 0x89, 0x80, + 0x44, 0xf2, 0x16, 0x33, 0x99, 0x42, 0x00, 0xf0, 0x84, 0x80, 0x44, 0xf2, + 0x1b, 0x33, 0x99, 0x42, 0x7f, 0xd0, 0x44, 0xf2, 0x1c, 0x33, 0x99, 0x42, + 0x7b, 0xd0, 0x44, 0xf2, 0x1d, 0x33, 0x99, 0x42, 0x77, 0xd0, 0xa1, 0xf5, + 0x86, 0x43, 0xa3, 0xf1, 0x28, 0x02, 0x92, 0xb2, 0x02, 0x2a, 0x70, 0xd9, + 0x2b, 0x3b, 0x9b, 0xb2, 0x02, 0x2b, 0x6c, 0xd9, 0x44, 0xf2, 0x41, 0x33, + 0x99, 0x42, 0x68, 0xd0, 0x44, 0xf2, 0x40, 0x33, 0x99, 0x42, 0x64, 0xd0, + 0xa1, 0xf5, 0x86, 0x43, 0x50, 0x3b, 0x9b, 0xb2, 0x02, 0x2b, 0x5e, 0xd9, + 0x44, 0xf2, 0x53, 0x33, 0x99, 0x42, 0x5a, 0xd0, 0x44, 0xf2, 0x57, 0x33, + 0x99, 0x42, 0x56, 0xd0, 0x4a, 0xf6, 0x9d, 0x13, 0x99, 0x42, 0x52, 0xd0, + 0x44, 0xf2, 0x54, 0x33, 0x99, 0x42, 0x4e, 0xd0, 0x44, 0xf2, 0x2f, 0x33, + 0x99, 0x42, 0x4a, 0xd0, 0x44, 0xf2, 0x2e, 0x33, 0x99, 0x42, 0x46, 0xd0, + 0x44, 0xf2, 0x34, 0x33, 0x99, 0x42, 0x42, 0xd0, 0x44, 0xf2, 0x35, 0x33, + 0x99, 0x42, 0x3e, 0xd0, 0x44, 0xf2, 0x36, 0x33, 0x99, 0x42, 0x3a, 0xd0, + 0xa1, 0xf5, 0x86, 0x43, 0xa3, 0xf1, 0x37, 0x02, 0x92, 0xb2, 0x02, 0x2a, + 0x33, 0xd9, 0x44, 0xf2, 0x16, 0x72, 0x91, 0x42, 0x2f, 0xd0, 0x44, 0xf2, + 0x27, 0x72, 0x91, 0x42, 0x2b, 0xd0, 0x44, 0xf2, 0x43, 0x32, 0x91, 0x42, + 0x27, 0xd0, 0xa3, 0xf1, 0x60, 0x02, 0x92, 0xb2, 0x01, 0x2a, 0x22, 0xd9, + 0xa3, 0xf1, 0x46, 0x02, 0x92, 0xb2, 0x02, 0x2a, 0x1d, 0xd9, 0xa3, 0xf1, + 0x31, 0x02, 0x92, 0xb2, 0x01, 0x2a, 0x18, 0xd9, 0x55, 0x3b, 0x9b, 0xb2, + 0x01, 0x2b, 0x14, 0xd9, 0xa1, 0xf5, 0x86, 0x43, 0x58, 0x3b, 0x9b, 0xb2, + 0x01, 0x2b, 0x0e, 0xd9, 0x44, 0xf2, 0x63, 0x33, 0x99, 0x42, 0x0c, 0xd0, + 0x44, 0xf2, 0x70, 0x30, 0xc0, 0xeb, 0x01, 0x0c, 0xdc, 0xf1, 0x00, 0x00, + 0x40, 0xeb, 0x0c, 0x00, 0x70, 0x47, 0x00, 0x20, 0x70, 0x47, 0x01, 0x20, + 0x70, 0x47, 0x01, 0x20, 0x70, 0x47, 0x83, 0x6b, 0x70, 0xb5, 0x00, 0x25, + 0x83, 0xf8, 0x4c, 0x50, 0xc3, 0x6b, 0x01, 0x26, 0x83, 0xf8, 0x4c, 0x60, + 0x04, 0x46, 0x81, 0x6b, 0xe3, 0xf7, 0x35, 0xfb, 0xe1, 0x6b, 0x20, 0x46, + 0xe3, 0xf7, 0x31, 0xfb, 0x29, 0x46, 0x20, 0x46, 0xf8, 0xf3, 0x78, 0xf0, + 0xa3, 0x6b, 0x20, 0x46, 0x83, 0xf8, 0x4d, 0x50, 0xe3, 0x6b, 0x31, 0x46, + 0x83, 0xf8, 0x4d, 0x50, 0xd4, 0xf8, 0x60, 0x36, 0x4f, 0xf0, 0xff, 0x35, + 0xde, 0x72, 0xd4, 0xf8, 0x60, 0x36, 0x9d, 0x81, 0xf8, 0xf3, 0x66, 0xf0, + 0xd4, 0xf8, 0x60, 0x36, 0x9b, 0x78, 0xb3, 0x42, 0x0c, 0xd9, 0xa3, 0x6b, + 0xff, 0x22, 0x83, 0xf8, 0x4d, 0x50, 0xe3, 0x6b, 0x83, 0xf8, 0x4d, 0x20, + 0xb4, 0xf8, 0xcb, 0x34, 0x43, 0xf0, 0x80, 0x03, 0xa4, 0xf8, 0xcb, 0x34, + 0x70, 0xbd, 0x00, 0x00, 0xf8, 0xb5, 0x04, 0x46, 0x00, 0x28, 0x00, 0xf0, + 0x9a, 0x80, 0x01, 0xf0, 0xbf, 0xfb, 0x06, 0x46, 0x20, 0x46, 0x03, 0xf0, + 0xb5, 0xdf, 0x00, 0xb9, 0x01, 0x36, 0xd4, 0xf8, 0xf0, 0x16, 0x49, 0xb1, + 0x60, 0x68, 0xd4, 0xf8, 0xf4, 0x26, 0xe5, 0xf3, 0x0d, 0xf0, 0x00, 0x23, + 0xc4, 0xf8, 0xf4, 0x36, 0xc4, 0xf8, 0xf0, 0x36, 0x20, 0x46, 0xd4, 0xf8, + 0x18, 0x15, 0xfa, 0xf3, 0xd5, 0xf6, 0x20, 0x46, 0xd4, 0xf8, 0xd8, 0x16, + 0xfa, 0xf3, 0xd0, 0xf6, 0xd4, 0xf8, 0x20, 0x15, 0x20, 0x46, 0xfa, 0xf3, + 0xcb, 0xf6, 0xd4, 0xf8, 0x2c, 0x15, 0x21, 0xb1, 0x60, 0x68, 0x4f, 0xf4, + 0x96, 0x62, 0xe4, 0xf3, 0xf1, 0xf7, 0xd4, 0xf8, 0x7c, 0x02, 0x20, 0xb1, + 0x04, 0xf0, 0xf6, 0xff, 0x00, 0x23, 0xc4, 0xf8, 0x7c, 0x32, 0x25, 0x46, + 0x04, 0xf1, 0x20, 0x07, 0x06, 0xe0, 0xd5, 0xf8, 0x4c, 0x12, 0x11, 0xb1, + 0x20, 0x46, 0x1d, 0xf0, 0x83, 0xdb, 0x04, 0x35, 0xbd, 0x42, 0xf6, 0xd1, + 0x01, 0x21, 0x20, 0x46, 0x33, 0xf0, 0x12, 0xdd, 0x20, 0x46, 0x01, 0xf0, + 0x0f, 0xfe, 0x27, 0x6b, 0xb9, 0x69, 0x11, 0xb1, 0x20, 0x46, 0x32, 0xf0, + 0x9d, 0xdf, 0x00, 0x25, 0xbd, 0x61, 0xd4, 0xf8, 0x5c, 0x01, 0x01, 0xf0, + 0xf5, 0xfe, 0x20, 0x46, 0xff, 0xf7, 0x52, 0xfb, 0x20, 0x46, 0xff, 0xf7, + 0xa5, 0xfb, 0x20, 0x46, 0xd4, 0xf8, 0x2c, 0x18, 0xe1, 0xf7, 0x6c, 0xfe, + 0xc4, 0xf8, 0x2c, 0x58, 0xd4, 0xf8, 0xb8, 0x54, 0x06, 0xe0, 0x29, 0x46, + 0x60, 0x68, 0x10, 0x22, 0xef, 0x68, 0xe4, 0xf3, 0xb3, 0xf7, 0x3d, 0x46, + 0x00, 0x2d, 0xf6, 0xd1, 0xc4, 0xf8, 0xb8, 0x54, 0x20, 0x68, 0x16, 0x49, + 0x22, 0x46, 0x02, 0xf0, 0xd5, 0xd8, 0xd4, 0xf8, 0x34, 0x07, 0x18, 0xb1, + 0x00, 0xf0, 0x98, 0xff, 0xc4, 0xf8, 0x34, 0x57, 0xd4, 0xf8, 0x68, 0x01, + 0x20, 0xb1, 0x06, 0xf0, 0xe3, 0xfd, 0x00, 0x23, 0xc4, 0xf8, 0x68, 0x31, + 0xd4, 0xf8, 0x18, 0x17, 0x51, 0xb1, 0x60, 0x68, 0xd4, 0xf8, 0x1c, 0x27, + 0xe4, 0xf3, 0x92, 0xf7, 0x00, 0x23, 0xc4, 0xf8, 0x18, 0x37, 0x01, 0xe0, + 0x08, 0xf0, 0xf8, 0xdf, 0xd4, 0xf8, 0x78, 0x22, 0x20, 0x46, 0x61, 0x68, + 0x00, 0x2a, 0xf7, 0xd1, 0x00, 0xf0, 0x02, 0xfc, 0x00, 0xe0, 0x06, 0x46, + 0x30, 0x46, 0xf8, 0xbd, 0xbb, 0x5c, 0x86, 0x00, 0x2d, 0xe9, 0xf0, 0x4f, + 0x8d, 0xb0, 0x06, 0x92, 0xdd, 0xf8, 0x5c, 0x80, 0x1a, 0x9a, 0x99, 0x46, + 0x00, 0x23, 0x07, 0x91, 0x0a, 0x93, 0x00, 0x92, 0x07, 0x46, 0x41, 0x46, + 0x06, 0x98, 0x18, 0x9a, 0x19, 0x9b, 0x9d, 0xf8, 0x58, 0xb0, 0xdd, 0xf8, + 0x6c, 0xa0, 0x09, 0xf0, 0x55, 0xf8, 0x06, 0x46, 0x10, 0xb1, 0x1e, 0x23, + 0x0a, 0x93, 0x20, 0xe3, 0xff, 0xf7, 0xe4, 0xfa, 0x40, 0x46, 0x49, 0x46, + 0x0a, 0xaa, 0x00, 0xf0, 0xc7, 0xfc, 0x04, 0x46, 0x00, 0x28, 0x00, 0xf0, + 0x16, 0x83, 0xd0, 0xf8, 0x60, 0x36, 0xff, 0x22, 0xc0, 0xf8, 0x04, 0x80, + 0x05, 0x68, 0x83, 0xf8, 0x1c, 0x21, 0x83, 0x6b, 0x87, 0x60, 0x03, 0x63, + 0x43, 0x6b, 0x49, 0x46, 0xc3, 0x62, 0xae, 0x4b, 0xc5, 0xf8, 0x04, 0x90, + 0xc5, 0xf8, 0xb0, 0x30, 0x1a, 0x9b, 0xc5, 0xf8, 0x0c, 0x80, 0xc0, 0xf8, + 0x78, 0x31, 0x03, 0x23, 0x85, 0xf8, 0x21, 0xb0, 0x80, 0xf8, 0x69, 0x37, + 0x4f, 0xf0, 0xff, 0x33, 0xc0, 0xf8, 0xcc, 0x38, 0x80, 0xf8, 0x9d, 0x61, + 0xff, 0xf7, 0x04, 0xfd, 0x20, 0x46, 0xf9, 0xf3, 0x97, 0xf7, 0x20, 0x46, + 0x04, 0xf0, 0x64, 0xff, 0x06, 0x46, 0x00, 0x28, 0x40, 0xf0, 0xf4, 0x82, + 0x20, 0x46, 0x39, 0x46, 0x42, 0x46, 0x4b, 0x46, 0x06, 0xf0, 0xd4, 0xfc, + 0xc4, 0xf8, 0x68, 0x01, 0x08, 0xb9, 0x1f, 0x23, 0xb0, 0xe2, 0x99, 0x4b, + 0x02, 0x96, 0x8d, 0xe8, 0x48, 0x00, 0x03, 0x96, 0x97, 0x49, 0x98, 0x4a, + 0x23, 0x46, 0x20, 0x68, 0x02, 0xf0, 0x06, 0xd8, 0x96, 0x4b, 0x02, 0x96, + 0x8d, 0xe8, 0x48, 0x00, 0x03, 0x96, 0x95, 0x49, 0x95, 0x4a, 0x23, 0x46, + 0x20, 0x68, 0x01, 0xf0, 0xfb, 0xdf, 0x18, 0x9a, 0x19, 0x9b, 0x02, 0x92, + 0x1a, 0x9a, 0x03, 0x93, 0x04, 0x92, 0x20, 0x46, 0x07, 0x99, 0x06, 0x9a, + 0x4b, 0x46, 0xcd, 0xf8, 0x00, 0xb0, 0xcd, 0xf8, 0x04, 0x80, 0x01, 0xf0, + 0x11, 0xfb, 0x06, 0x46, 0x0a, 0x90, 0x00, 0x28, 0x40, 0xf0, 0xbe, 0x82, + 0x23, 0x69, 0x18, 0x6e, 0xeb, 0xf7, 0x31, 0xf9, 0xa4, 0xf8, 0xbe, 0x08, + 0x20, 0x46, 0xf7, 0xf3, 0x01, 0xf6, 0x08, 0xb9, 0x14, 0x23, 0x79, 0xe2, + 0x31, 0x46, 0x0b, 0xaa, 0x20, 0x46, 0xf9, 0xf3, 0x85, 0xf2, 0x31, 0x46, + 0x20, 0x46, 0xbd, 0xf8, 0x2c, 0x20, 0x01, 0x36, 0xf9, 0xf3, 0x88, 0xf2, + 0x06, 0x2e, 0xf1, 0xd1, 0x01, 0x27, 0x85, 0xf8, 0x9a, 0x70, 0x04, 0xf5, + 0xbe, 0x72, 0x20, 0x69, 0x05, 0xf1, 0x14, 0x01, 0x1a, 0xf0, 0xc8, 0xdc, + 0x77, 0x49, 0x68, 0x69, 0xe0, 0xf3, 0x0e, 0xf5, 0x76, 0x49, 0x06, 0x46, + 0x68, 0x69, 0xe0, 0xf3, 0x09, 0xf5, 0x75, 0x49, 0xa4, 0xf8, 0x62, 0x08, + 0x68, 0x69, 0xe0, 0xf3, 0x03, 0xf5, 0xb4, 0xf8, 0x62, 0x38, 0xa4, 0xf8, + 0x64, 0x08, 0xa4, 0xf8, 0x78, 0x37, 0xa4, 0xf8, 0x7a, 0x07, 0x6f, 0x49, + 0x68, 0x69, 0xe0, 0xf3, 0xf7, 0xf4, 0x6e, 0x49, 0xa4, 0xf8, 0x54, 0x08, + 0x68, 0x69, 0xe0, 0xf3, 0xf1, 0xf4, 0x84, 0xf8, 0x56, 0x08, 0x6b, 0x49, + 0x68, 0x69, 0xe0, 0xf3, 0xeb, 0xf4, 0x84, 0xf8, 0x58, 0x08, 0x69, 0x49, + 0x68, 0x69, 0xe0, 0xf3, 0xe5, 0xf4, 0x84, 0xf8, 0x5a, 0x08, 0x67, 0x49, + 0x68, 0x69, 0xe0, 0xf3, 0xdf, 0xf4, 0x84, 0xf8, 0x57, 0x08, 0x65, 0x49, + 0x68, 0x69, 0xe0, 0xf3, 0xd9, 0xf4, 0x84, 0xf8, 0x59, 0x08, 0x63, 0x49, + 0x68, 0x69, 0xe0, 0xf3, 0xd3, 0xf4, 0x84, 0xf8, 0x5b, 0x08, 0x61, 0x49, + 0x68, 0x69, 0xe0, 0xf3, 0xcd, 0xf4, 0x84, 0xf8, 0x5c, 0x08, 0x5f, 0x49, + 0x68, 0x69, 0xe0, 0xf3, 0xc7, 0xf4, 0x84, 0xf8, 0x5e, 0x08, 0x5d, 0x49, + 0x68, 0x69, 0xe0, 0xf3, 0xc1, 0xf4, 0x84, 0xf8, 0x60, 0x08, 0x5b, 0x49, + 0x68, 0x69, 0xe0, 0xf3, 0xbb, 0xf4, 0x84, 0xf8, 0x5d, 0x08, 0x59, 0x49, + 0x68, 0x69, 0xe0, 0xf3, 0xb5, 0xf4, 0x84, 0xf8, 0x5f, 0x08, 0x57, 0x49, + 0x68, 0x69, 0xe0, 0xf3, 0xaf, 0xf4, 0x84, 0xf8, 0x61, 0x08, 0x20, 0x46, + 0xff, 0xf7, 0x9a, 0xfa, 0xd4, 0xf8, 0x60, 0x36, 0x22, 0x6b, 0x84, 0xf8, + 0xf0, 0x77, 0x84, 0xf8, 0xf1, 0x77, 0x10, 0x69, 0x19, 0x78, 0xda, 0x78, + 0xf0, 0xf7, 0xd7, 0xf8, 0xe2, 0x6a, 0x20, 0x69, 0x00, 0x23, 0xc1, 0x18, + 0xd1, 0xf8, 0xa0, 0x70, 0xd1, 0x18, 0x04, 0x33, 0x18, 0x2b, 0x4f, 0x60, + 0xf7, 0xd1, 0x04, 0xf5, 0xcb, 0x77, 0x39, 0x46, 0x1a, 0xf0, 0x74, 0xdd, + 0x06, 0x22, 0x05, 0xf1, 0x4e, 0x00, 0x39, 0x46, 0xdf, 0xf3, 0x88, 0xf7, + 0xb4, 0xf8, 0x82, 0x31, 0x44, 0xf2, 0x1d, 0x32, 0x93, 0x42, 0x1d, 0xd0, + 0x0a, 0xd8, 0x44, 0xf2, 0x16, 0x32, 0x93, 0x42, 0x18, 0xd0, 0x44, 0xf2, + 0x1a, 0x32, 0x93, 0x42, 0x14, 0xd0, 0x44, 0xf2, 0x13, 0x32, 0x0d, 0xe0, + 0x44, 0xf2, 0x2a, 0x32, 0x93, 0x42, 0x0d, 0xd0, 0x02, 0xd8, 0x44, 0xf2, + 0x21, 0x32, 0x05, 0xe0, 0x44, 0xf2, 0x2d, 0x32, 0x93, 0x42, 0x05, 0xd0, + 0x44, 0xf2, 0x52, 0x32, 0x93, 0x42, 0x01, 0xd0, 0x00, 0x23, 0x00, 0xe0, + 0x01, 0x23, 0x0e, 0x33, 0x54, 0xf8, 0x23, 0x30, 0x20, 0x46, 0x23, 0x63, + 0xff, 0xf7, 0x8a, 0xfa, 0x08, 0xb9, 0x18, 0x23, 0xa8, 0xe1, 0x21, 0x6b, + 0x0f, 0x22, 0x40, 0xf2, 0xff, 0x33, 0xa1, 0xf8, 0x06, 0x21, 0xa1, 0xf8, + 0x08, 0x31, 0x01, 0xf1, 0xfc, 0x02, 0x01, 0xf5, 0x80, 0x73, 0x20, 0x46, + 0x00, 0xf0, 0x88, 0xff, 0x23, 0x6b, 0xd3, 0xf8, 0xfc, 0x20, 0xc3, 0xf8, + 0xf8, 0x20, 0xc3, 0xf8, 0xf0, 0x20, 0xd3, 0xf8, 0x00, 0x21, 0xc3, 0xf8, + 0xf4, 0x20, 0x1a, 0x68, 0x02, 0x2a, 0x07, 0xd1, 0x01, 0x22, 0x5a, 0x75, + 0x23, 0x6b, 0x20, 0x46, 0x03, 0x21, 0x5a, 0x7d, 0x03, 0xf0, 0x30, 0xdc, + 0xf2, 0x07, 0x2f, 0xd5, 0x00, 0x22, 0x2e, 0xe0, 0x0c, 0xe6, 0x5a, 0x05, + 0x79, 0xdb, 0x81, 0x00, 0x78, 0xd4, 0x85, 0x00, 0xbb, 0x5c, 0x86, 0x00, + 0xa9, 0x36, 0x00, 0x00, 0x04, 0xbc, 0x01, 0x00, 0x07, 0xbb, 0x01, 0x00, + 0xd6, 0x68, 0x86, 0x00, 0xe2, 0x68, 0x86, 0x00, 0xf5, 0x68, 0x86, 0x00, + 0x07, 0x69, 0x86, 0x00, 0x1c, 0x69, 0x86, 0x00, 0x2b, 0x69, 0x86, 0x00, + 0x3a, 0x69, 0x86, 0x00, 0x49, 0x69, 0x86, 0x00, 0x5a, 0x69, 0x86, 0x00, + 0x6b, 0x69, 0x86, 0x00, 0x7c, 0x69, 0x86, 0x00, 0x8a, 0x69, 0x86, 0x00, + 0x98, 0x69, 0x86, 0x00, 0xa6, 0x69, 0x86, 0x00, 0xb6, 0x69, 0x86, 0x00, + 0xc6, 0x69, 0x86, 0x00, 0x01, 0x22, 0x85, 0xf8, 0x46, 0x20, 0x20, 0x46, + 0x0a, 0x21, 0x03, 0xf0, 0xf7, 0xdb, 0x21, 0x6b, 0x20, 0x46, 0x1c, 0x31, + 0xfb, 0xf3, 0x50, 0xf4, 0x7f, 0x23, 0x21, 0x6b, 0x00, 0x93, 0x23, 0x68, + 0x00, 0x22, 0x93, 0xf8, 0x46, 0x30, 0x01, 0xf1, 0x1c, 0x00, 0x03, 0xf0, + 0x03, 0x03, 0x50, 0x31, 0x01, 0x93, 0x13, 0x46, 0x2e, 0xf0, 0xa6, 0xdf, + 0x20, 0x46, 0xf7, 0xf3, 0x11, 0xf5, 0x4f, 0xf4, 0xd1, 0x63, 0xc4, 0xf8, + 0x74, 0x38, 0x20, 0x46, 0xff, 0xf7, 0x3e, 0xfa, 0x07, 0x46, 0x0a, 0x90, + 0x00, 0x28, 0x40, 0xf0, 0x5f, 0x81, 0x20, 0x46, 0x49, 0x46, 0xff, 0xf7, + 0xf3, 0xfa, 0x08, 0xb9, 0x20, 0x23, 0x1f, 0xe1, 0x20, 0x46, 0x01, 0xf0, + 0xbd, 0xfc, 0xc4, 0xf8, 0x5c, 0x01, 0x08, 0xb9, 0x21, 0x23, 0x17, 0xe1, + 0x20, 0x46, 0xff, 0xf7, 0x9b, 0xfa, 0x39, 0x46, 0xa7, 0x4a, 0xa8, 0x4b, + 0x20, 0x46, 0x00, 0x97, 0x01, 0x94, 0x06, 0xf0, 0x17, 0xfc, 0xa6, 0x4b, + 0x1a, 0x1d, 0x07, 0xca, 0x1b, 0x68, 0x8d, 0xe8, 0x07, 0x00, 0x07, 0x21, + 0x20, 0x46, 0x22, 0x46, 0x08, 0xf0, 0x2c, 0xdd, 0x04, 0x21, 0x20, 0x46, + 0xa0, 0x4a, 0xa1, 0x4b, 0x00, 0x97, 0x01, 0x94, 0x06, 0xf0, 0x04, 0xfc, + 0x00, 0x28, 0xc4, 0xf8, 0x8c, 0x07, 0x01, 0xda, 0x22, 0x23, 0xf3, 0xe0, + 0x20, 0x46, 0x41, 0x46, 0x08, 0xf0, 0x9e, 0xdd, 0x08, 0xb9, 0x64, 0x23, + 0xec, 0xe0, 0x4f, 0xf0, 0xff, 0x33, 0xc4, 0xf8, 0x04, 0x08, 0x97, 0x49, + 0x00, 0x93, 0x20, 0x46, 0x96, 0x4a, 0x97, 0x4b, 0x00, 0xf0, 0xda, 0xde, + 0xc4, 0xf8, 0x2c, 0x08, 0x00, 0x28, 0x00, 0xf0, 0x15, 0x81, 0x20, 0x46, + 0x01, 0xf0, 0x8b, 0xfb, 0x08, 0xb1, 0x23, 0x23, 0xd6, 0xe0, 0x23, 0x68, + 0x06, 0x22, 0x93, 0xf8, 0xa1, 0x30, 0xa5, 0xf8, 0x64, 0x20, 0x01, 0x2b, + 0x02, 0xd1, 0x40, 0x23, 0xa5, 0xf8, 0x64, 0x30, 0xd5, 0xf8, 0x8c, 0x30, + 0x06, 0x22, 0x1a, 0x80, 0x4f, 0xf4, 0x39, 0x72, 0x5a, 0x80, 0xd5, 0xf8, + 0x90, 0x30, 0xc4, 0x22, 0x01, 0x27, 0x04, 0xf5, 0x00, 0x71, 0x20, 0x46, + 0x1f, 0x80, 0x5a, 0x80, 0x06, 0x31, 0x09, 0xf0, 0x3b, 0xdd, 0xd4, 0xf8, + 0x3c, 0x01, 0x0e, 0xf0, 0xc5, 0xdd, 0x08, 0xb1, 0x84, 0xf8, 0xcf, 0x71, + 0x02, 0x23, 0x84, 0xf8, 0xc0, 0x34, 0x1e, 0x23, 0x84, 0xf8, 0xcb, 0x34, + 0x10, 0x23, 0x84, 0xf8, 0xcc, 0x34, 0x23, 0x6b, 0x5b, 0x89, 0x02, 0x2b, + 0x02, 0xd8, 0x1c, 0x23, 0x84, 0xf8, 0xcb, 0x34, 0xff, 0x23, 0x00, 0x21, + 0x84, 0xf8, 0xca, 0x34, 0x84, 0xf8, 0xc9, 0x34, 0x84, 0xf8, 0xc8, 0x34, + 0x20, 0x46, 0xf8, 0xf3, 0xd7, 0xf1, 0x23, 0x68, 0x00, 0x27, 0x83, 0xf8, + 0xb4, 0x70, 0x4f, 0xf0, 0xff, 0x33, 0xc4, 0xf8, 0xd4, 0x31, 0x20, 0x46, + 0x39, 0x46, 0xf3, 0xf3, 0xe3, 0xf1, 0x20, 0x46, 0x84, 0xf8, 0xdc, 0x71, + 0xff, 0xf7, 0x95, 0xfc, 0x33, 0x07, 0x48, 0xbf, 0x84, 0xf8, 0xdc, 0x71, + 0xf0, 0x06, 0x03, 0xd5, 0x20, 0x46, 0x00, 0x21, 0xf3, 0xf3, 0xd4, 0xf1, + 0xb1, 0x07, 0x0e, 0xd5, 0xa2, 0x6b, 0x00, 0x23, 0x82, 0xf8, 0x4d, 0x30, + 0xe2, 0x6b, 0x82, 0xf8, 0x4d, 0x30, 0xb4, 0xf8, 0xcb, 0x34, 0x23, 0xf0, + 0x80, 0x03, 0x1b, 0x04, 0x1b, 0x0c, 0xa4, 0xf8, 0xcb, 0x34, 0x72, 0x07, + 0x03, 0xd5, 0x20, 0x46, 0x00, 0x21, 0xf7, 0xf3, 0x21, 0xf5, 0x33, 0x06, + 0x07, 0xd5, 0xb4, 0xf8, 0xcb, 0x34, 0x23, 0xf0, 0x10, 0x03, 0x1b, 0x04, + 0x1b, 0x0c, 0xa4, 0xf8, 0xcb, 0x34, 0x23, 0x68, 0x93, 0xf8, 0x42, 0x30, + 0x9b, 0xb1, 0x16, 0xf0, 0x60, 0x0f, 0x10, 0xd0, 0x06, 0xf0, 0x20, 0x01, + 0x06, 0xf0, 0x40, 0x02, 0x20, 0x46, 0x00, 0x29, 0x14, 0xbf, 0x00, 0x21, + 0x6f, 0xf0, 0x00, 0x01, 0x00, 0x2a, 0x14, 0xbf, 0x00, 0x22, 0x6f, 0xf0, + 0x00, 0x02, 0x00, 0xf0, 0x93, 0xfb, 0x02, 0x23, 0x8d, 0xf8, 0x20, 0x30, + 0x00, 0x23, 0x8d, 0xf8, 0x21, 0x30, 0x8d, 0xf8, 0x22, 0x30, 0x8d, 0xf8, + 0x23, 0x30, 0x8d, 0xf8, 0x24, 0x30, 0x8d, 0xf8, 0x25, 0x30, 0xb4, 0xf8, + 0x82, 0x31, 0x44, 0xf2, 0x1d, 0x32, 0x93, 0x42, 0x1d, 0xd0, 0x0a, 0xd8, + 0x44, 0xf2, 0x16, 0x32, 0x93, 0x42, 0x18, 0xd0, 0x44, 0xf2, 0x1a, 0x32, + 0x93, 0x42, 0x14, 0xd0, 0x44, 0xf2, 0x13, 0x32, 0x0d, 0xe0, 0x44, 0xf2, + 0x2a, 0x32, 0x93, 0x42, 0x0d, 0xd0, 0x02, 0xd8, 0x44, 0xf2, 0x21, 0x32, + 0x05, 0xe0, 0x44, 0xf2, 0x2d, 0x32, 0x93, 0x42, 0x05, 0xd0, 0x44, 0xf2, + 0x52, 0x32, 0x93, 0x42, 0x01, 0xd0, 0x00, 0x26, 0x00, 0xe0, 0x01, 0x26, + 0x06, 0xf1, 0x0e, 0x07, 0x54, 0xf8, 0x27, 0x90, 0x08, 0xa9, 0x20, 0x46, + 0x4a, 0x46, 0x32, 0xf0, 0x03, 0xdc, 0xc9, 0xf8, 0x18, 0x00, 0x54, 0xf8, + 0x27, 0x10, 0x88, 0x69, 0x10, 0xb9, 0x37, 0x23, 0x0a, 0x93, 0x35, 0xe0, + 0x44, 0x30, 0x50, 0x31, 0x28, 0x22, 0xdf, 0xf3, 0xa9, 0xf5, 0x54, 0xf8, + 0x27, 0x30, 0x20, 0x46, 0x9b, 0x69, 0x9e, 0x62, 0xeb, 0x6d, 0x43, 0xf0, + 0x04, 0x03, 0xeb, 0x65, 0x1d, 0x4b, 0xc8, 0xf8, 0x0c, 0x40, 0xc8, 0xf8, + 0x08, 0x30, 0xed, 0xf7, 0x25, 0xfd, 0xba, 0xf1, 0x00, 0x0f, 0x02, 0xd0, + 0x00, 0x23, 0xca, 0xf8, 0x00, 0x30, 0x23, 0x68, 0x17, 0x49, 0x58, 0x69, + 0xe0, 0xf3, 0xba, 0xf2, 0x80, 0xb1, 0x00, 0x21, 0x0a, 0x46, 0xe0, 0xf3, + 0x75, 0xf1, 0x14, 0x4b, 0xc0, 0xb2, 0x18, 0x60, 0x08, 0xe0, 0xba, 0xf1, + 0x00, 0x0f, 0x04, 0xd0, 0x0a, 0x9b, 0x00, 0x24, 0xca, 0xf8, 0x00, 0x30, + 0x00, 0xe0, 0x54, 0x46, 0x20, 0x46, 0x0d, 0xb0, 0xbd, 0xe8, 0xf0, 0x8f, + 0x20, 0x46, 0xff, 0xf7, 0x0f, 0xfc, 0xee, 0xe7, 0x39, 0xae, 0x82, 0x00, + 0x01, 0xae, 0x82, 0x00, 0xdc, 0xbc, 0x01, 0x00, 0xd5, 0xa1, 0x81, 0x00, + 0xad, 0xa1, 0x81, 0x00, 0x2d, 0x57, 0x81, 0x00, 0x41, 0x57, 0x81, 0x00, + 0x19, 0x57, 0x81, 0x00, 0xb5, 0x42, 0x82, 0x00, 0x13, 0xbb, 0x01, 0x00, + 0xe0, 0x07, 0x02, 0x00, 0x09, 0x21, 0x20, 0x23, 0x08, 0x22, 0x10, 0xb5, + 0x01, 0x61, 0x10, 0x24, 0x81, 0x61, 0x01, 0x21, 0x03, 0x60, 0x43, 0x60, + 0x42, 0x61, 0x40, 0xf2, 0x3c, 0x73, 0xc1, 0x61, 0x04, 0x62, 0x82, 0x63, + 0x40, 0x24, 0x00, 0x22, 0x41, 0x64, 0x40, 0xf2, 0x9e, 0x31, 0x83, 0x60, + 0x84, 0x62, 0x04, 0x23, 0x0f, 0x24, 0x02, 0x64, 0xc1, 0x64, 0x42, 0x66, + 0x03, 0x21, 0x02, 0x22, 0xc3, 0x60, 0x43, 0x62, 0xc3, 0x62, 0x04, 0x63, + 0x43, 0x63, 0x01, 0x65, 0x42, 0x65, 0x83, 0x65, 0xc1, 0x65, 0x02, 0x66, + 0x10, 0xbd, 0x38, 0xb5, 0x05, 0x46, 0x0c, 0x46, 0x00, 0x29, 0x28, 0xd0, + 0x49, 0x6d, 0x11, 0xb1, 0xc0, 0x22, 0xe4, 0xf3, 0xe7, 0xf3, 0xd4, 0xf8, + 0x8c, 0x10, 0x39, 0xb1, 0x28, 0x46, 0x4f, 0xf4, 0x39, 0x72, 0xe4, 0xf3, + 0xdf, 0xf3, 0x00, 0x23, 0xc4, 0xf8, 0x8c, 0x30, 0xd4, 0xf8, 0x90, 0x10, + 0x31, 0xb1, 0x28, 0x46, 0xc4, 0x22, 0xe4, 0xf3, 0xd5, 0xf3, 0x00, 0x23, + 0xc4, 0xf8, 0x90, 0x30, 0xe1, 0x69, 0x29, 0xb1, 0x28, 0x46, 0x68, 0x22, + 0xe4, 0xf3, 0xcc, 0xf3, 0x00, 0x23, 0xe3, 0x61, 0x28, 0x46, 0x21, 0x46, + 0xb8, 0x22, 0xbd, 0xe8, 0x38, 0x40, 0xe4, 0xf3, 0xc3, 0xb3, 0x38, 0xbd, + 0xf8, 0xb5, 0x16, 0x46, 0xb8, 0x22, 0x05, 0x46, 0x0f, 0x46, 0x09, 0xf0, + 0xa1, 0xdf, 0x04, 0x46, 0x10, 0xb9, 0x40, 0xf2, 0xe9, 0x33, 0x2b, 0xe0, + 0x28, 0x46, 0x39, 0x46, 0x68, 0x22, 0x09, 0xf0, 0x97, 0xdf, 0xe0, 0x61, + 0x10, 0xb9, 0x40, 0xf2, 0x04, 0x43, 0x21, 0xe0, 0xff, 0xf7, 0x90, 0xff, + 0x28, 0x46, 0x39, 0x46, 0xc0, 0x22, 0x09, 0xf0, 0x8b, 0xdf, 0x60, 0x65, + 0x10, 0xb9, 0x40, 0xf2, 0xeb, 0x33, 0x15, 0xe0, 0x28, 0x46, 0x39, 0x46, + 0x4f, 0xf4, 0x39, 0x72, 0x09, 0xf0, 0x80, 0xdf, 0xc4, 0xf8, 0x8c, 0x00, + 0x10, 0xb9, 0x4f, 0xf4, 0x7b, 0x73, 0x09, 0xe0, 0x28, 0x46, 0x39, 0x46, + 0xc4, 0x22, 0x09, 0xf0, 0x75, 0xdf, 0xc4, 0xf8, 0x90, 0x00, 0x38, 0xb9, + 0x40, 0xf2, 0xed, 0x33, 0x21, 0x46, 0x33, 0x60, 0x28, 0x46, 0xff, 0xf7, + 0x94, 0xff, 0x00, 0x24, 0x20, 0x46, 0xf8, 0xbd, 0x38, 0xb5, 0x0d, 0x46, + 0x04, 0x46, 0x00, 0x28, 0x00, 0xf0, 0xe7, 0x80, 0xd0, 0xf8, 0x18, 0x15, + 0x39, 0xb1, 0x28, 0x46, 0x4f, 0xf4, 0x84, 0x72, 0xe4, 0xf3, 0x74, 0xf3, + 0x00, 0x23, 0xc4, 0xf8, 0x18, 0x35, 0xd4, 0xf8, 0x20, 0x15, 0x39, 0xb1, + 0x28, 0x46, 0x4f, 0xf4, 0x84, 0x72, 0xe4, 0xf3, 0x69, 0xf3, 0x00, 0x23, + 0xc4, 0xf8, 0x20, 0x35, 0xd4, 0xf8, 0xb4, 0x14, 0x39, 0xb1, 0x28, 0x46, + 0x40, 0xf2, 0xac, 0x42, 0xe4, 0xf3, 0x5e, 0xf3, 0x00, 0x23, 0xc4, 0xf8, + 0xb4, 0x34, 0xd4, 0xf8, 0x40, 0x15, 0x31, 0xb1, 0x28, 0x46, 0xac, 0x22, + 0xe4, 0xf3, 0x54, 0xf3, 0x00, 0x23, 0xc4, 0xf8, 0x40, 0x35, 0xd4, 0xf8, + 0x6c, 0x12, 0x29, 0xb1, 0x28, 0x46, 0x09, 0xf0, 0x93, 0xde, 0x00, 0x23, + 0xc4, 0xf8, 0x6c, 0x32, 0xd4, 0xf8, 0xfc, 0x14, 0x31, 0xb1, 0x28, 0x46, + 0x40, 0x22, 0xe4, 0xf3, 0x41, 0xf3, 0x00, 0x23, 0xc4, 0xf8, 0xfc, 0x34, + 0xd4, 0xf8, 0x84, 0x16, 0x69, 0xb1, 0x23, 0x68, 0x5b, 0xb1, 0xdb, 0x69, + 0x4b, 0xb1, 0x9b, 0x69, 0x0c, 0x22, 0x01, 0x33, 0x5a, 0x43, 0x28, 0x46, + 0xe4, 0xf3, 0x30, 0xf3, 0x00, 0x23, 0xc4, 0xf8, 0x84, 0x36, 0xd4, 0xf8, + 0xbc, 0x14, 0x19, 0xb1, 0x28, 0x46, 0xb4, 0x22, 0xe4, 0xf3, 0x26, 0xf3, + 0xd4, 0xf8, 0x90, 0x14, 0x21, 0xb1, 0x28, 0x46, 0x4f, 0xf4, 0xae, 0x62, + 0xe4, 0xf3, 0x1e, 0xf3, 0xd4, 0xf8, 0x58, 0x16, 0x31, 0xb1, 0x28, 0x46, + 0x38, 0x22, 0xe4, 0xf3, 0x17, 0xf3, 0x00, 0x23, 0xc4, 0xf8, 0x58, 0x36, + 0xd4, 0xf8, 0x60, 0x16, 0x39, 0xb1, 0x28, 0x46, 0x4f, 0xf4, 0x90, 0x72, + 0xe4, 0xf3, 0x0c, 0xf3, 0x00, 0x23, 0xc4, 0xf8, 0x60, 0x36, 0xd4, 0xf8, + 0xf8, 0x17, 0x31, 0xb1, 0x28, 0x46, 0x10, 0x22, 0xe4, 0xf3, 0x02, 0xf3, + 0x00, 0x23, 0xc4, 0xf8, 0xf8, 0x37, 0xd4, 0xf8, 0xd8, 0x16, 0x39, 0xb1, + 0x28, 0x46, 0x4f, 0xf4, 0x84, 0x72, 0xe4, 0xf3, 0xf7, 0xf2, 0x00, 0x23, + 0xc4, 0xf8, 0xd8, 0x36, 0xd4, 0xf8, 0xe0, 0x16, 0x31, 0xb1, 0x28, 0x46, + 0x24, 0x22, 0xe4, 0xf3, 0xed, 0xf2, 0x00, 0x23, 0xc4, 0xf8, 0xe0, 0x36, + 0xd4, 0xf8, 0xec, 0x16, 0x31, 0xb1, 0x28, 0x46, 0x68, 0x22, 0xe4, 0xf3, + 0xe3, 0xf2, 0x00, 0x23, 0xc4, 0xf8, 0xec, 0x36, 0xd4, 0xf8, 0x44, 0x17, + 0x31, 0xb1, 0x28, 0x46, 0xec, 0x22, 0xe4, 0xf3, 0xd9, 0xf2, 0x00, 0x23, + 0xc4, 0xf8, 0x44, 0x37, 0xa1, 0x6b, 0x21, 0xb1, 0x28, 0x46, 0x4f, 0xf4, + 0x06, 0x72, 0xe4, 0xf3, 0xcf, 0xf2, 0x63, 0x6b, 0x7b, 0xb1, 0x99, 0x6a, + 0x31, 0xb1, 0x80, 0x22, 0x28, 0x46, 0xe4, 0xf3, 0xc7, 0xf2, 0x63, 0x6b, + 0x00, 0x22, 0x9a, 0x62, 0x28, 0x46, 0x61, 0x6b, 0x2c, 0x22, 0xe4, 0xf3, + 0xbf, 0xf2, 0x00, 0x23, 0x63, 0x63, 0x21, 0x68, 0x21, 0xb1, 0x28, 0x46, + 0xff, 0xf7, 0xc7, 0xfe, 0x00, 0x23, 0x23, 0x60, 0x23, 0x69, 0xb3, 0xb1, + 0xd3, 0xf8, 0xf8, 0x10, 0x18, 0x22, 0x28, 0x46, 0xe4, 0xf3, 0xae, 0xf2, + 0x23, 0x69, 0x00, 0x22, 0xd9, 0x6f, 0xc3, 0xf8, 0xf8, 0x20, 0x19, 0xb1, + 0x28, 0x46, 0x58, 0x22, 0xe4, 0xf3, 0xa4, 0xf2, 0x28, 0x46, 0x21, 0x69, + 0xfc, 0x22, 0xe4, 0xf3, 0x9f, 0xf2, 0x00, 0x23, 0x23, 0x61, 0x28, 0x46, + 0x21, 0x46, 0x40, 0xf6, 0xd4, 0x02, 0xbd, 0xe8, 0x38, 0x40, 0xe4, 0xf3, + 0x95, 0xb2, 0x38, 0xbd, 0x2d, 0xe9, 0xf0, 0x41, 0x16, 0x46, 0x40, 0xf6, + 0xd4, 0x02, 0x05, 0x46, 0x0f, 0x46, 0x09, 0xf0, 0x71, 0xde, 0x04, 0x46, + 0x00, 0x28, 0x3d, 0xd0, 0x26, 0x23, 0xc0, 0xf8, 0x28, 0x38, 0x39, 0x46, + 0x28, 0x46, 0x32, 0x46, 0xff, 0xf7, 0xbe, 0xfe, 0x20, 0x60, 0x00, 0x28, + 0x00, 0xf0, 0x1a, 0x81, 0x90, 0x4b, 0x04, 0x60, 0x1b, 0x68, 0x39, 0x46, + 0xc0, 0xf8, 0x9c, 0x30, 0xfc, 0x22, 0x28, 0x46, 0x09, 0xf0, 0x58, 0xde, + 0x80, 0x46, 0x20, 0x61, 0x10, 0xb9, 0x40, 0xf2, 0xed, 0x33, 0x08, 0xe1, + 0x84, 0x60, 0x39, 0x46, 0x28, 0x46, 0x18, 0x22, 0x09, 0xf0, 0x4c, 0xde, + 0xc8, 0xf8, 0xf8, 0x00, 0xc0, 0xb1, 0x28, 0x46, 0x39, 0x46, 0x58, 0x22, + 0xd4, 0xf8, 0x10, 0x80, 0x09, 0xf0, 0x42, 0xde, 0xc8, 0xf8, 0x7c, 0x00, + 0x70, 0xb1, 0x23, 0x69, 0x28, 0x46, 0xda, 0x6f, 0x39, 0x46, 0x2c, 0x32, + 0xc3, 0xf8, 0x80, 0x20, 0x4f, 0xf4, 0x84, 0x72, 0x09, 0xf0, 0x34, 0xde, + 0xc4, 0xf8, 0x18, 0x05, 0x30, 0xb9, 0x02, 0xe0, 0x40, 0xf2, 0xee, 0x33, + 0xe3, 0xe0, 0x40, 0xf2, 0xef, 0x33, 0xe0, 0xe0, 0x28, 0x46, 0x39, 0x46, + 0x4f, 0xf4, 0x84, 0x72, 0x09, 0xf0, 0x24, 0xde, 0xc4, 0xf8, 0x20, 0x05, + 0x10, 0xb9, 0x4f, 0xf4, 0x7c, 0x73, 0xd4, 0xe0, 0x28, 0x46, 0x39, 0x46, + 0x40, 0xf2, 0xac, 0x42, 0x09, 0xf0, 0x18, 0xde, 0xc4, 0xf8, 0xb4, 0x04, + 0x10, 0xb9, 0x40, 0xf2, 0xf1, 0x33, 0xc8, 0xe0, 0x28, 0x46, 0x39, 0x46, + 0xac, 0x22, 0x09, 0xf0, 0x0d, 0xde, 0xc4, 0xf8, 0x40, 0x05, 0x10, 0xb9, + 0x40, 0xf2, 0xf2, 0x33, 0xbd, 0xe0, 0x39, 0x46, 0x28, 0x46, 0xec, 0xf7, + 0x03, 0xff, 0x01, 0x46, 0xc4, 0xf8, 0x6c, 0x02, 0x10, 0xb9, 0x40, 0xf2, + 0xf3, 0x33, 0xb2, 0xe0, 0x20, 0x46, 0x1c, 0xf0, 0x49, 0xd9, 0x28, 0x46, + 0x39, 0x46, 0x40, 0x22, 0x09, 0xf0, 0xf4, 0xdd, 0xc4, 0xf8, 0xfc, 0x04, + 0x10, 0xb9, 0x4f, 0xf4, 0x7d, 0x73, 0xa4, 0xe0, 0x23, 0x68, 0x0c, 0x22, + 0xdb, 0x69, 0x28, 0x46, 0x9b, 0x69, 0x39, 0x46, 0x01, 0x33, 0x5a, 0x43, + 0x09, 0xf0, 0xe4, 0xdd, 0xc4, 0xf8, 0x84, 0x06, 0x10, 0xb9, 0x40, 0xf2, + 0xf5, 0x33, 0x94, 0xe0, 0x28, 0x46, 0x39, 0x46, 0xb4, 0x22, 0x09, 0xf0, + 0xd9, 0xdd, 0xc4, 0xf8, 0xbc, 0x04, 0x10, 0xb9, 0x40, 0xf2, 0xf6, 0x33, + 0x89, 0xe0, 0x28, 0x46, 0x39, 0x46, 0x4f, 0xf4, 0xae, 0x62, 0x09, 0xf0, + 0xcd, 0xdd, 0xc4, 0xf8, 0x90, 0x04, 0xa8, 0xb1, 0x00, 0xf5, 0xae, 0x73, + 0xc4, 0xf8, 0x94, 0x34, 0x00, 0xf5, 0x2e, 0x73, 0x00, 0xf5, 0x82, 0x60, + 0x04, 0x30, 0xc4, 0xf8, 0x9c, 0x04, 0xc4, 0xf8, 0x98, 0x34, 0x28, 0x46, + 0x39, 0x46, 0x38, 0x22, 0x09, 0xf0, 0xb8, 0xdd, 0xc4, 0xf8, 0x58, 0x06, + 0x30, 0xb9, 0x02, 0xe0, 0x40, 0xf2, 0xf7, 0x33, 0x67, 0xe0, 0x4f, 0xf4, + 0x7e, 0x73, 0x64, 0xe0, 0x28, 0x46, 0x39, 0x46, 0x4f, 0xf4, 0x90, 0x72, + 0x09, 0xf0, 0xa8, 0xdd, 0xc4, 0xf8, 0x60, 0x06, 0x38, 0xb1, 0x28, 0x46, + 0x39, 0x46, 0x10, 0x22, 0x09, 0xf0, 0xa0, 0xdd, 0xc4, 0xf8, 0xf8, 0x07, + 0x10, 0xb9, 0x40, 0xf2, 0xf9, 0x33, 0x50, 0xe0, 0x28, 0x46, 0x39, 0x46, + 0x4f, 0xf4, 0x84, 0x72, 0x09, 0xf0, 0x94, 0xdd, 0xc4, 0xf8, 0xd8, 0x06, + 0x10, 0xb9, 0x40, 0xf2, 0xfa, 0x33, 0x44, 0xe0, 0x28, 0x46, 0x39, 0x46, + 0x24, 0x22, 0x09, 0xf0, 0x89, 0xdd, 0xc4, 0xf8, 0xe0, 0x06, 0x10, 0xb9, + 0x40, 0xf2, 0xfd, 0x33, 0x39, 0xe0, 0x28, 0x46, 0x39, 0x46, 0x68, 0x22, + 0x09, 0xf0, 0x7e, 0xdd, 0xc4, 0xf8, 0xec, 0x06, 0x10, 0xb9, 0x40, 0xf2, + 0xfe, 0x33, 0x2e, 0xe0, 0x28, 0x46, 0x39, 0x46, 0xec, 0x22, 0x09, 0xf0, + 0x73, 0xdd, 0xc4, 0xf8, 0x44, 0x07, 0x10, 0xb9, 0x40, 0xf2, 0xff, 0x33, + 0x23, 0xe0, 0x28, 0x46, 0x39, 0x46, 0x4f, 0xf4, 0x06, 0x72, 0x09, 0xf0, + 0x67, 0xdd, 0xa0, 0x63, 0x58, 0xb1, 0x00, 0xf5, 0x86, 0x70, 0xe0, 0x63, + 0x39, 0x46, 0x28, 0x46, 0x2c, 0x22, 0x09, 0xf0, 0x5d, 0xdd, 0x80, 0x46, + 0x60, 0x63, 0x30, 0xb9, 0x02, 0xe0, 0x40, 0xf2, 0x01, 0x43, 0x0c, 0xe0, + 0x40, 0xf2, 0x02, 0x43, 0x09, 0xe0, 0x28, 0x46, 0x39, 0x46, 0x80, 0x22, + 0x09, 0xf0, 0x4e, 0xdd, 0xc8, 0xf8, 0x28, 0x00, 0x38, 0xb9, 0x40, 0xf2, + 0x03, 0x43, 0x33, 0x60, 0x20, 0x46, 0x29, 0x46, 0xff, 0xf7, 0xdc, 0xfd, + 0x00, 0x24, 0x20, 0x46, 0xbd, 0xe8, 0xf0, 0x81, 0xbc, 0x26, 0x00, 0x00, + 0x70, 0xb5, 0x04, 0x46, 0x00, 0x28, 0x34, 0xd0, 0x05, 0x46, 0x00, 0xf1, + 0x28, 0x06, 0xd5, 0xf8, 0x50, 0x12, 0x21, 0xb1, 0x23, 0x68, 0xf4, 0x22, + 0x58, 0x68, 0xe4, 0xf3, 0x49, 0xf1, 0x04, 0x35, 0xb5, 0x42, 0xf4, 0xd1, + 0xa1, 0x6b, 0x69, 0xb1, 0x94, 0xf8, 0xa3, 0x33, 0x1b, 0xb1, 0x23, 0x68, + 0x98, 0x68, 0xec, 0xf3, 0xf3, 0xf5, 0x23, 0x68, 0xa1, 0x6b, 0x98, 0x68, + 0xec, 0xf3, 0x00, 0xf6, 0x00, 0x23, 0xa3, 0x63, 0xd4, 0xf8, 0x78, 0x12, + 0x21, 0xb1, 0x23, 0x68, 0xe8, 0x22, 0x58, 0x68, 0xe4, 0xf3, 0x2e, 0xf1, + 0x23, 0x68, 0x22, 0x46, 0x18, 0x68, 0x06, 0x49, 0x01, 0xf0, 0x54, 0xda, + 0x23, 0x68, 0x21, 0x46, 0x58, 0x68, 0x4f, 0xf4, 0x6a, 0x72, 0xbd, 0xe8, + 0x70, 0x40, 0xe4, 0xf3, 0x1f, 0xb1, 0x70, 0xbd, 0x67, 0x89, 0x86, 0x00, + 0xd0, 0xf8, 0x40, 0x31, 0x48, 0x1c, 0x18, 0xbf, 0x83, 0xf8, 0x9c, 0x13, + 0x50, 0x1c, 0x83, 0xf8, 0x9e, 0x13, 0x83, 0xf8, 0x9f, 0x23, 0x18, 0xbf, + 0x83, 0xf8, 0x9d, 0x23, 0x70, 0x47, 0x00, 0x00, 0xf0, 0xb5, 0x4f, 0xf4, + 0x6a, 0x71, 0x85, 0xb0, 0x05, 0x46, 0x40, 0x68, 0xe4, 0xf3, 0xf4, 0xf0, + 0x04, 0x46, 0x00, 0x28, 0x00, 0xf0, 0xc6, 0x80, 0x00, 0x21, 0x4f, 0xf4, + 0x6a, 0x72, 0xdf, 0xf3, 0xa3, 0xf2, 0x25, 0x60, 0x68, 0x68, 0xe8, 0x21, + 0xe4, 0xf3, 0xe6, 0xf0, 0xc4, 0xf8, 0x78, 0x02, 0x00, 0x28, 0x00, 0xf0, + 0xa9, 0x80, 0x00, 0x21, 0xe8, 0x22, 0xdf, 0xf3, 0x95, 0xf2, 0x20, 0x20, + 0x84, 0xf8, 0xa2, 0x03, 0x08, 0x21, 0x4f, 0xf4, 0x7a, 0x70, 0xe1, 0x74, + 0x21, 0x75, 0x60, 0x86, 0x06, 0x21, 0xc8, 0x20, 0x01, 0x23, 0x00, 0x22, + 0x84, 0xf8, 0x27, 0x10, 0xa0, 0x86, 0xff, 0x21, 0x05, 0x26, 0x02, 0x20, + 0x27, 0x68, 0xa3, 0x72, 0x63, 0x73, 0xa3, 0x73, 0xe3, 0x73, 0x84, 0xf8, + 0x94, 0x33, 0x84, 0xf8, 0x95, 0x33, 0x84, 0xf8, 0x96, 0x33, 0x84, 0xf8, + 0x97, 0x33, 0x84, 0xf8, 0x98, 0x33, 0x84, 0xf8, 0x99, 0x33, 0x84, 0xf8, + 0x9a, 0x33, 0x84, 0xf8, 0x9b, 0x33, 0xa3, 0x74, 0x84, 0xf8, 0x28, 0x10, + 0x22, 0x74, 0x62, 0x74, 0x22, 0x73, 0xe2, 0x72, 0x84, 0xf8, 0x29, 0x60, + 0x84, 0xf8, 0x2a, 0x20, 0x84, 0xf8, 0x2b, 0x00, 0x3f, 0x68, 0x97, 0xf8, + 0xa1, 0x70, 0x84, 0xf8, 0x9e, 0x13, 0x9f, 0x42, 0x0c, 0xbf, 0x1f, 0x46, + 0x03, 0x27, 0x84, 0xf8, 0x9f, 0x13, 0x4f, 0xf4, 0x00, 0x61, 0x84, 0xf8, + 0x2c, 0x70, 0xe1, 0x63, 0x84, 0xf8, 0x2d, 0x30, 0x66, 0x75, 0xa0, 0x75, + 0x23, 0x46, 0x05, 0x21, 0x02, 0x20, 0x01, 0x32, 0xd9, 0x75, 0xd8, 0x77, + 0x01, 0x33, 0x08, 0x2a, 0xf7, 0xd1, 0x00, 0x27, 0x01, 0x26, 0x20, 0x46, + 0x84, 0xf8, 0x2e, 0x70, 0x84, 0xf8, 0x2f, 0x60, 0x09, 0xf0, 0x5c, 0xdf, + 0x20, 0x46, 0x85, 0xf8, 0xc3, 0x64, 0x0b, 0xf0, 0x77, 0xdd, 0x04, 0x21, + 0x28, 0x46, 0x2a, 0x4a, 0x2a, 0x4b, 0x00, 0x97, 0x01, 0x94, 0x05, 0xf0, + 0x23, 0xff, 0xb8, 0x42, 0x60, 0x60, 0x39, 0xdb, 0x27, 0x4b, 0x28, 0x68, + 0x00, 0x93, 0x27, 0x4b, 0x27, 0x49, 0x01, 0x93, 0x27, 0x4b, 0x28, 0x4a, + 0x03, 0x93, 0x23, 0x46, 0x02, 0x97, 0x01, 0xf0, 0x69, 0xd9, 0x07, 0x46, + 0x50, 0xbb, 0xa8, 0x68, 0x24, 0x49, 0x22, 0x46, 0x3b, 0x46, 0xec, 0xf3, + 0x51, 0xf5, 0xa0, 0x63, 0x10, 0xb3, 0x22, 0x4b, 0x84, 0xf8, 0x7c, 0x62, + 0x1a, 0x1d, 0x07, 0xca, 0x1b, 0x68, 0x8d, 0xe8, 0x07, 0x00, 0x22, 0x46, + 0x28, 0x46, 0x06, 0x21, 0x08, 0xf0, 0x1c, 0xd8, 0xff, 0x23, 0x84, 0xf8, + 0xa1, 0x33, 0x2b, 0x68, 0x20, 0x46, 0x93, 0xf8, 0x42, 0x10, 0x0c, 0xf0, + 0x9f, 0xdd, 0xc8, 0x23, 0xc4, 0xf8, 0xe0, 0x32, 0x20, 0x46, 0x0b, 0xf0, + 0x7f, 0xdf, 0x20, 0x46, 0x31, 0x46, 0xed, 0xf7, 0xee, 0xf8, 0x84, 0xf8, + 0xa3, 0x73, 0x0d, 0xe0, 0xd4, 0xf8, 0x78, 0x12, 0x19, 0xb1, 0x68, 0x68, + 0xe8, 0x22, 0xe4, 0xf3, 0x41, 0xf0, 0x21, 0x46, 0x68, 0x68, 0x4f, 0xf4, + 0x6a, 0x72, 0xe4, 0xf3, 0x3b, 0xf0, 0x00, 0x24, 0x20, 0x46, 0x05, 0xb0, + 0xf0, 0xbd, 0x00, 0xbf, 0x95, 0xcb, 0x82, 0x00, 0x1d, 0xcb, 0x82, 0x00, + 0x45, 0xcf, 0x82, 0x00, 0xf1, 0x8c, 0x00, 0x00, 0xa0, 0xe0, 0x85, 0x00, + 0x79, 0xd9, 0x82, 0x00, 0x67, 0x89, 0x86, 0x00, 0xad, 0x8b, 0x00, 0x00, + 0xec, 0xbc, 0x01, 0x00, 0x70, 0xb5, 0x0a, 0x4b, 0x86, 0xb0, 0x0d, 0x46, + 0x6c, 0x46, 0x03, 0xf1, 0x18, 0x06, 0x18, 0x68, 0x59, 0x68, 0x22, 0x46, + 0x03, 0xc2, 0x08, 0x33, 0xb3, 0x42, 0x14, 0x46, 0xf7, 0xd1, 0x28, 0x46, + 0x69, 0x46, 0x18, 0x22, 0xdf, 0xf3, 0x54, 0xf1, 0x06, 0xb0, 0x70, 0xbd, + 0xf5, 0xb6, 0x01, 0x00, 0x70, 0xb5, 0xd0, 0xf8, 0xac, 0x63, 0x04, 0x46, + 0xd0, 0xf8, 0xb0, 0x53, 0x30, 0x46, 0x00, 0xf0, 0x7b, 0xf8, 0xd4, 0xf8, + 0xd0, 0x13, 0xb0, 0x68, 0xec, 0xf3, 0xb4, 0xf4, 0xb0, 0x68, 0xd4, 0xf8, + 0xd0, 0x13, 0xec, 0xf3, 0xc1, 0xf4, 0x00, 0x23, 0x22, 0x46, 0xc4, 0xf8, + 0xd0, 0x33, 0x28, 0x46, 0x05, 0x49, 0x01, 0xf0, 0x1d, 0xd9, 0xe8, 0x68, + 0x21, 0x46, 0x4f, 0xf4, 0x7e, 0x72, 0xbd, 0xe8, 0x70, 0x40, 0xe3, 0xf3, + 0xe9, 0xb7, 0x00, 0xbf, 0xab, 0x99, 0x86, 0x00, 0x2d, 0xe9, 0xff, 0x41, + 0x3c, 0x23, 0xc1, 0xf8, 0x24, 0x37, 0x05, 0x23, 0xc1, 0xf8, 0x28, 0x37, + 0x05, 0x46, 0x0f, 0x46, 0xc0, 0x68, 0x4f, 0xf4, 0x7e, 0x71, 0xe3, 0xf3, + 0xc7, 0xf7, 0x04, 0x46, 0x00, 0x28, 0x3d, 0xd0, 0x00, 0x21, 0x4f, 0xf4, + 0x7e, 0x72, 0x4f, 0xf0, 0x00, 0x08, 0xdf, 0xf3, 0x75, 0xf1, 0xc4, 0xf8, + 0xac, 0x73, 0xc4, 0xf8, 0xb0, 0x53, 0x84, 0xf8, 0x01, 0x80, 0x20, 0x46, + 0xe6, 0xf7, 0x40, 0xfc, 0xc4, 0xf8, 0xc0, 0x03, 0x38, 0x46, 0x00, 0xf0, + 0x4d, 0xf8, 0x06, 0x46, 0x38, 0xb1, 0x21, 0x46, 0xe8, 0x68, 0x4f, 0xf4, + 0x7e, 0x72, 0xe3, 0xf3, 0xb7, 0xf7, 0x44, 0x46, 0x1e, 0xe0, 0x20, 0x46, + 0x04, 0xf5, 0x63, 0x71, 0xff, 0xf7, 0x8c, 0xff, 0xb8, 0x68, 0x0e, 0x49, + 0x22, 0x46, 0x33, 0x46, 0xec, 0xf3, 0x8e, 0xf4, 0xc4, 0xf8, 0xd0, 0x03, + 0x78, 0xb1, 0x20, 0x46, 0x0f, 0xf0, 0x12, 0xdd, 0x09, 0x4b, 0x28, 0x46, + 0x00, 0x93, 0x09, 0x4b, 0x09, 0x49, 0x01, 0x93, 0x09, 0x4a, 0x23, 0x46, + 0x02, 0x96, 0x03, 0x96, 0x01, 0xf0, 0x8c, 0xd8, 0x00, 0xe0, 0x04, 0x46, + 0x20, 0x46, 0x04, 0xb0, 0xbd, 0xe8, 0xf0, 0x81, 0x8d, 0x25, 0x83, 0x00, + 0x9d, 0x11, 0x83, 0x00, 0xeb, 0x05, 0x01, 0x00, 0xcc, 0xbd, 0x01, 0x00, + 0xab, 0x99, 0x86, 0x00, 0x38, 0xb5, 0xd0, 0xf8, 0x30, 0x57, 0x04, 0x46, + 0x6d, 0xb1, 0x07, 0x49, 0x22, 0x46, 0x00, 0x68, 0x01, 0xf0, 0xaa, 0xd8, + 0x60, 0x68, 0x29, 0x46, 0x4f, 0xf4, 0x0a, 0x62, 0xe3, 0xf3, 0x78, 0xf7, + 0x00, 0x23, 0xc4, 0xf8, 0x30, 0x37, 0x38, 0xbd, 0x52, 0x9e, 0x86, 0x00, + 0xf0, 0xb5, 0x4f, 0xf4, 0x0a, 0x61, 0x85, 0xb0, 0x04, 0x46, 0x40, 0x68, + 0xe3, 0xf3, 0x5a, 0xf7, 0x05, 0x46, 0x20, 0xb9, 0xc4, 0xf8, 0x30, 0x07, + 0x4f, 0xf0, 0xff, 0x30, 0xd4, 0xe0, 0x00, 0x21, 0x4f, 0xf4, 0x0a, 0x62, + 0xdf, 0xf3, 0x06, 0xf1, 0x22, 0x68, 0x05, 0xf1, 0x20, 0x03, 0x2b, 0x60, + 0x00, 0x26, 0x08, 0x23, 0x6b, 0x61, 0x2e, 0x61, 0xdc, 0x21, 0x13, 0x66, + 0x20, 0x46, 0x63, 0x4a, 0x63, 0x4b, 0x00, 0x96, 0x01, 0x94, 0x05, 0xf0, + 0xeb, 0xfd, 0xb0, 0x42, 0xa8, 0x61, 0x05, 0xda, 0x20, 0x46, 0xff, 0xf7, + 0xbf, 0xff, 0x6f, 0xf0, 0x01, 0x00, 0xb5, 0xe0, 0x5d, 0x4b, 0x00, 0x22, + 0x43, 0xf8, 0x04, 0x2b, 0xf2, 0x07, 0x1f, 0xd5, 0x5b, 0x49, 0x01, 0x27, + 0x0a, 0x78, 0x0d, 0x2a, 0x07, 0xfa, 0x02, 0xfe, 0x03, 0xdc, 0xd2, 0x19, + 0x17, 0xfa, 0x02, 0xf0, 0x01, 0xe0, 0x4f, 0xf4, 0x00, 0x40, 0xca, 0x78, + 0x01, 0x21, 0x11, 0xfa, 0x02, 0xf7, 0x0d, 0x2a, 0x47, 0xea, 0x0e, 0x07, + 0x47, 0xea, 0x00, 0x00, 0x03, 0xdc, 0x52, 0x18, 0x11, 0xfa, 0x02, 0xf2, + 0x01, 0xe0, 0x4f, 0xf4, 0x00, 0x42, 0x02, 0x43, 0x43, 0xf8, 0x04, 0x2c, + 0xb0, 0x07, 0x23, 0xd5, 0x4a, 0x49, 0x01, 0x27, 0x4a, 0x78, 0x53, 0xf8, + 0x04, 0xec, 0x0d, 0x2a, 0x07, 0xfa, 0x02, 0xfc, 0x03, 0xdc, 0xd2, 0x19, + 0x17, 0xfa, 0x02, 0xf0, 0x01, 0xe0, 0x4f, 0xf4, 0x00, 0x40, 0x8a, 0x78, + 0x01, 0x21, 0x11, 0xfa, 0x02, 0xf7, 0x0d, 0x2a, 0x47, 0xea, 0x0c, 0x07, + 0x47, 0xea, 0x00, 0x00, 0x03, 0xdc, 0x52, 0x18, 0x11, 0xfa, 0x02, 0xf2, + 0x01, 0xe0, 0x4f, 0xf4, 0x00, 0x42, 0x02, 0x43, 0x42, 0xea, 0x0e, 0x02, + 0x43, 0xf8, 0x04, 0x2c, 0x71, 0x07, 0x23, 0xd5, 0x37, 0x49, 0x01, 0x27, + 0x0a, 0x79, 0x53, 0xf8, 0x04, 0xec, 0x0d, 0x2a, 0x07, 0xfa, 0x02, 0xfc, + 0x03, 0xdc, 0xd2, 0x19, 0x17, 0xfa, 0x02, 0xf0, 0x01, 0xe0, 0x4f, 0xf4, + 0x00, 0x40, 0x4a, 0x79, 0x01, 0x21, 0x11, 0xfa, 0x02, 0xf7, 0x0d, 0x2a, + 0x47, 0xea, 0x0c, 0x07, 0x47, 0xea, 0x00, 0x00, 0x03, 0xdc, 0x52, 0x18, + 0x11, 0xfa, 0x02, 0xf2, 0x01, 0xe0, 0x4f, 0xf4, 0x00, 0x42, 0x02, 0x43, + 0x42, 0xea, 0x0e, 0x02, 0x43, 0xf8, 0x04, 0x2c, 0x32, 0x07, 0x23, 0xd5, + 0x24, 0x49, 0x01, 0x27, 0x8a, 0x79, 0x53, 0xf8, 0x04, 0xec, 0x0d, 0x2a, + 0x07, 0xfa, 0x02, 0xfc, 0x03, 0xdc, 0xd2, 0x19, 0x17, 0xfa, 0x02, 0xf0, + 0x01, 0xe0, 0x4f, 0xf4, 0x00, 0x40, 0xca, 0x79, 0x01, 0x21, 0x11, 0xfa, + 0x02, 0xf7, 0x0d, 0x2a, 0x47, 0xea, 0x0c, 0x07, 0x47, 0xea, 0x00, 0x00, + 0x03, 0xdc, 0x52, 0x18, 0x11, 0xfa, 0x02, 0xf2, 0x01, 0xe0, 0x4f, 0xf4, + 0x00, 0x42, 0x02, 0x43, 0x42, 0xea, 0x0e, 0x02, 0x43, 0xf8, 0x04, 0x2c, + 0x01, 0x36, 0x10, 0x2e, 0x7f, 0xf4, 0x65, 0xaf, 0x11, 0x4b, 0x00, 0x26, + 0x03, 0x93, 0x31, 0x46, 0x10, 0x4a, 0x23, 0x46, 0x20, 0x68, 0x00, 0x96, + 0x01, 0x96, 0x02, 0x96, 0x00, 0xf0, 0x90, 0xdf, 0x0d, 0x4b, 0x1a, 0x1d, + 0x07, 0xca, 0x1b, 0x68, 0x8d, 0xe8, 0x07, 0x00, 0x20, 0x46, 0x03, 0x21, + 0x22, 0x46, 0x07, 0xf0, 0x4f, 0xde, 0xc4, 0xf8, 0x30, 0x57, 0x30, 0x46, + 0x05, 0xb0, 0xf0, 0xbd, 0x01, 0x57, 0x83, 0x00, 0xa1, 0x56, 0x83, 0x00, + 0x84, 0x27, 0x00, 0x00, 0x90, 0xe0, 0x85, 0x00, 0x9d, 0x50, 0x83, 0x00, + 0x52, 0x9e, 0x86, 0x00, 0x1c, 0xbf, 0x01, 0x00, 0x30, 0xb5, 0x8c, 0x89, + 0x42, 0xf2, 0x56, 0x05, 0xac, 0x42, 0x08, 0xd8, 0x42, 0xf2, 0x55, 0x05, + 0xac, 0x42, 0x23, 0xd2, 0x42, 0xf2, 0x50, 0x05, 0xac, 0x42, 0x2f, 0xd1, + 0x08, 0xe0, 0x42, 0xf2, 0x60, 0x01, 0x8c, 0x42, 0x1f, 0xd0, 0x4e, 0xf2, + 0xf5, 0x41, 0x8c, 0x42, 0x26, 0xd1, 0x1f, 0xe0, 0xc9, 0x89, 0x01, 0x29, + 0x04, 0xd1, 0x6f, 0xf0, 0x3b, 0x01, 0x11, 0x60, 0x0f, 0x21, 0x03, 0xe0, + 0x6f, 0xf0, 0x45, 0x01, 0x11, 0x60, 0x14, 0x21, 0x19, 0x60, 0x03, 0x68, + 0xd3, 0xf8, 0x80, 0x30, 0xdb, 0x04, 0x18, 0xd5, 0x13, 0x68, 0x02, 0x3b, + 0x13, 0x60, 0x30, 0xbd, 0x6f, 0xf0, 0x4a, 0x01, 0x11, 0x60, 0x14, 0x22, + 0x08, 0xe0, 0x6f, 0xf0, 0x4a, 0x01, 0x11, 0x60, 0x0f, 0x22, 0x03, 0xe0, + 0x6f, 0xf0, 0x95, 0x01, 0x11, 0x60, 0x96, 0x22, 0x1a, 0x60, 0x30, 0xbd, + 0x6f, 0xf0, 0x4a, 0x01, 0x11, 0x60, 0x14, 0x22, 0x1a, 0x60, 0x30, 0xbd, + 0x38, 0xb5, 0x04, 0x46, 0x06, 0x25, 0xe0, 0x68, 0x20, 0xb1, 0x04, 0x4b, + 0x1b, 0x68, 0x98, 0x47, 0x00, 0x23, 0xe3, 0x60, 0x04, 0x34, 0x01, 0x3d, + 0xf5, 0xd1, 0x38, 0xbd, 0xe0, 0xa6, 0x85, 0x00, 0x43, 0x6c, 0x1f, 0x2b, + 0x05, 0xd8, 0x4f, 0xf0, 0x00, 0x70, 0x18, 0x41, 0x00, 0xf0, 0x01, 0x00, + 0x70, 0x47, 0x00, 0x20, 0x70, 0x47, 0x01, 0x6e, 0xb0, 0xf8, 0x4a, 0x30, + 0x10, 0xb5, 0x8a, 0x6a, 0xb3, 0xb1, 0xff, 0x2b, 0x16, 0xd9, 0x18, 0x0b, + 0x01, 0x38, 0x01, 0x28, 0x14, 0xd8, 0x03, 0xf4, 0x70, 0x60, 0x00, 0x0a, + 0x09, 0x28, 0x0f, 0xd8, 0x78, 0xb1, 0x03, 0xf0, 0xf0, 0x00, 0x90, 0x28, + 0x0a, 0xd8, 0x03, 0xf0, 0x0f, 0x00, 0x09, 0x28, 0x8c, 0xbf, 0x00, 0x20, + 0x01, 0x20, 0x04, 0xe0, 0x18, 0x46, 0x02, 0xe0, 0x01, 0x20, 0x00, 0xe0, + 0x00, 0x20, 0xcc, 0x6a, 0x41, 0xf2, 0xe4, 0x41, 0x8c, 0x42, 0x15, 0xd1, + 0xa2, 0xf5, 0x82, 0x61, 0x07, 0x39, 0x01, 0x29, 0x03, 0xd8, 0x3f, 0x2b, + 0x98, 0xbf, 0x00, 0x20, 0x10, 0xbd, 0x40, 0xf2, 0x0c, 0x41, 0x8a, 0x42, + 0x07, 0xd0, 0x40, 0xf2, 0x21, 0x41, 0x8a, 0x42, 0x04, 0xd1, 0x50, 0x2b, + 0x98, 0xbf, 0x00, 0x20, 0x10, 0xbd, 0x00, 0x20, 0x10, 0xbd, 0xc3, 0x6e, + 0x4f, 0xf0, 0x40, 0x70, 0x30, 0xb5, 0xc3, 0xf8, 0x60, 0x01, 0x00, 0x20, + 0x1c, 0xe0, 0x11, 0xf8, 0x03, 0x4c, 0x11, 0xf8, 0x04, 0x5c, 0x24, 0x04, + 0x44, 0xea, 0x05, 0x64, 0x11, 0xf8, 0x01, 0x5c, 0x07, 0x30, 0x2c, 0x43, + 0x11, 0xf8, 0x02, 0x5c, 0x44, 0xea, 0x05, 0x24, 0xc3, 0xf8, 0x64, 0x41, + 0x11, 0xf8, 0x06, 0x4c, 0x11, 0xf8, 0x07, 0x5c, 0x24, 0x02, 0x44, 0xea, + 0x05, 0x44, 0x11, 0xf8, 0x05, 0x5c, 0x2c, 0x43, 0xc3, 0xf8, 0x64, 0x41, + 0x07, 0x31, 0x90, 0x42, 0xdf, 0xd3, 0x30, 0xbd, 0x90, 0xf8, 0x5e, 0x30, + 0x10, 0xb5, 0x04, 0x46, 0x3b, 0xb9, 0x04, 0x4b, 0x04, 0x49, 0x1a, 0x68, + 0xff, 0xf7, 0xcd, 0xff, 0x01, 0x23, 0x84, 0xf8, 0x5e, 0x30, 0x10, 0xbd, + 0x4c, 0xaf, 0x02, 0x00, 0x50, 0xaf, 0x02, 0x00, 0xd0, 0xf8, 0x50, 0x18, + 0x10, 0xb5, 0x04, 0x46, 0x41, 0xb1, 0xd0, 0xf8, 0x4c, 0x28, 0x40, 0x68, + 0x92, 0x00, 0xe3, 0xf3, 0x9b, 0xf5, 0x00, 0x23, 0xc4, 0xf8, 0x50, 0x38, + 0xd4, 0xf8, 0x48, 0x18, 0x59, 0xb1, 0x60, 0x68, 0xdf, 0xf3, 0xee, 0xf4, + 0x60, 0x68, 0xd4, 0xf8, 0x48, 0x18, 0xe8, 0x22, 0xe3, 0xf3, 0x8c, 0xf5, + 0x00, 0x23, 0xc4, 0xf8, 0x48, 0x38, 0x10, 0xbd, 0x2d, 0xe9, 0xf0, 0x4f, + 0x03, 0x68, 0x04, 0x69, 0x8b, 0xb0, 0xde, 0x69, 0x82, 0x46, 0xe3, 0x6b, + 0x17, 0x46, 0x08, 0xa8, 0x08, 0x21, 0x68, 0x4a, 0xde, 0xf3, 0x66, 0xf7, + 0xe3, 0x68, 0x00, 0x2b, 0x40, 0xf0, 0xbe, 0x80, 0xe1, 0x6e, 0x20, 0x6e, + 0x01, 0xf5, 0x00, 0x71, 0xd4, 0xf8, 0x00, 0x90, 0xe1, 0xf3, 0x4a, 0xf3, + 0xa3, 0x68, 0x01, 0x46, 0x98, 0x68, 0xec, 0xf3, 0xe3, 0xf1, 0x00, 0x28, + 0x00, 0xf0, 0xb7, 0x80, 0x22, 0x6e, 0xe1, 0x6e, 0x17, 0xb1, 0x01, 0xf5, + 0x00, 0x73, 0x00, 0xe0, 0x3b, 0x46, 0x01, 0xf5, 0x08, 0x71, 0x07, 0xb1, + 0x37, 0x68, 0x8d, 0xe8, 0x82, 0x00, 0x71, 0x68, 0x4f, 0xf0, 0xff, 0x37, + 0x02, 0x91, 0xb1, 0x68, 0x04, 0x97, 0x03, 0x91, 0xf1, 0x68, 0xdf, 0xf8, + 0x54, 0x81, 0x05, 0x91, 0xa1, 0x68, 0x48, 0x46, 0xd1, 0xf8, 0x28, 0x18, + 0xcd, 0xf8, 0x1c, 0x80, 0x06, 0x91, 0x08, 0xa9, 0xec, 0xf7, 0xf4, 0xfd, + 0x00, 0x25, 0xe0, 0x60, 0xe3, 0x6e, 0x00, 0x95, 0x32, 0x68, 0x02, 0x95, + 0x01, 0x92, 0x03, 0x95, 0x04, 0x97, 0x05, 0x95, 0x06, 0x95, 0xcd, 0xf8, + 0x1c, 0x80, 0x83, 0x46, 0x08, 0xa9, 0x22, 0x6e, 0x03, 0xf5, 0x10, 0x73, + 0x48, 0x46, 0xec, 0xf7, 0xdf, 0xfd, 0xe3, 0x6e, 0x20, 0x61, 0x00, 0x95, + 0x32, 0x68, 0xc5, 0xeb, 0x0b, 0x0e, 0xde, 0xf1, 0x00, 0x0b, 0x4b, 0xeb, + 0x0e, 0x0b, 0x01, 0x92, 0x02, 0x95, 0x03, 0x95, 0x04, 0x97, 0x05, 0x95, + 0x06, 0x95, 0xcd, 0xf8, 0x1c, 0x80, 0xa8, 0x42, 0x08, 0xbf, 0x4b, 0xf0, + 0x01, 0x0b, 0x08, 0xa9, 0x22, 0x6e, 0x03, 0xf5, 0x20, 0x73, 0x48, 0x46, + 0xec, 0xf7, 0xc2, 0xfd, 0xe3, 0x6e, 0x60, 0x61, 0x00, 0x95, 0x32, 0x68, + 0x02, 0x95, 0x01, 0x92, 0x03, 0x95, 0x04, 0x97, 0x05, 0x95, 0x06, 0x95, + 0xcd, 0xf8, 0x1c, 0x80, 0xa8, 0x42, 0x08, 0xbf, 0x4b, 0xf0, 0x01, 0x0b, + 0x08, 0xa9, 0x22, 0x6e, 0x03, 0xf5, 0x30, 0x73, 0x48, 0x46, 0xec, 0xf7, + 0xab, 0xfd, 0xe3, 0x6e, 0xa0, 0x61, 0x00, 0x95, 0x32, 0x68, 0x02, 0x95, + 0x01, 0x92, 0x03, 0x95, 0x04, 0x97, 0x05, 0x95, 0x06, 0x95, 0xcd, 0xf8, + 0x1c, 0x80, 0xa8, 0x42, 0x08, 0xbf, 0x4b, 0xf0, 0x01, 0x0b, 0x08, 0xa9, + 0x22, 0x6e, 0x03, 0xf5, 0x40, 0x73, 0x48, 0x46, 0xec, 0xf7, 0x94, 0xfd, + 0xe3, 0x6e, 0xe0, 0x61, 0x00, 0x95, 0x32, 0x68, 0x02, 0x95, 0x01, 0x92, + 0x03, 0x95, 0x04, 0x97, 0x05, 0x95, 0x06, 0x95, 0xcd, 0xf8, 0x1c, 0x80, + 0xa8, 0x42, 0x08, 0xbf, 0x4b, 0xf0, 0x01, 0x0b, 0x08, 0xa9, 0x48, 0x46, + 0x22, 0x6e, 0x03, 0xf5, 0x50, 0x73, 0xec, 0xf7, 0x7d, 0xfd, 0x20, 0x62, + 0xa8, 0x42, 0x14, 0xbf, 0x58, 0x46, 0x4b, 0xf0, 0x01, 0x00, 0xa8, 0xb9, + 0x25, 0x46, 0x06, 0x26, 0xe8, 0x68, 0x30, 0xb1, 0x0b, 0x4b, 0x0c, 0x49, + 0xd3, 0xf8, 0x84, 0x30, 0x98, 0x47, 0xc5, 0xf8, 0xa0, 0x00, 0x04, 0x35, + 0x01, 0x3e, 0xf3, 0xd1, 0xa1, 0x6f, 0x50, 0x46, 0x08, 0x31, 0x00, 0x22, + 0xe6, 0xf7, 0x88, 0xfe, 0x01, 0x20, 0x00, 0xe0, 0x28, 0x46, 0x0b, 0xb0, + 0xbd, 0xe8, 0xf0, 0x8f, 0xfb, 0x41, 0x86, 0x00, 0xe0, 0xa6, 0x85, 0x00, + 0xc3, 0x26, 0x86, 0x00, 0x14, 0x26, 0x00, 0x00, 0x1f, 0xb5, 0x02, 0x23, + 0x03, 0x93, 0x0e, 0x23, 0x04, 0x46, 0xc0, 0xf8, 0x4c, 0x38, 0x38, 0x21, + 0x40, 0x68, 0xe3, 0xf3, 0x89, 0xf4, 0xc4, 0xf8, 0x50, 0x08, 0xd0, 0xb1, + 0xd4, 0xf8, 0x4c, 0x28, 0x00, 0x21, 0x92, 0x00, 0xde, 0xf3, 0x38, 0xf6, + 0x60, 0x68, 0xe8, 0x21, 0xe3, 0xf3, 0x7c, 0xf4, 0xc4, 0xf8, 0x48, 0x08, + 0x68, 0xb1, 0x00, 0x21, 0xe8, 0x22, 0xde, 0xf3, 0x2d, 0xf6, 0x01, 0x23, + 0x00, 0x93, 0x60, 0x68, 0xd4, 0xf8, 0x48, 0x18, 0x03, 0xaa, 0xb4, 0x23, + 0xdf, 0xf3, 0x70, 0xf4, 0x01, 0xe0, 0x4f, 0xf0, 0xff, 0x30, 0x04, 0xb0, + 0x10, 0xbd, 0x00, 0x00, 0x83, 0x68, 0x0b, 0x4a, 0x5a, 0x62, 0x00, 0x23, + 0x80, 0xf8, 0x86, 0x30, 0x03, 0x23, 0xa0, 0xf8, 0x8c, 0x30, 0x02, 0x23, + 0xa0, 0xf8, 0x8e, 0x30, 0x07, 0x23, 0xa0, 0xf8, 0x88, 0x30, 0x04, 0x23, + 0xa0, 0xf8, 0x8a, 0x30, 0x42, 0xf6, 0x01, 0x33, 0xa0, 0xf8, 0x9c, 0x30, + 0x70, 0x47, 0x00, 0xbf, 0x64, 0xa8, 0xe7, 0xbe, 0x70, 0xb5, 0x04, 0x69, + 0x05, 0x46, 0x20, 0x6e, 0x08, 0xb1, 0xe9, 0xf7, 0xe7, 0xfc, 0x20, 0x46, + 0xff, 0xf7, 0x18, 0xfe, 0xa6, 0x6f, 0x70, 0x6a, 0x18, 0xb1, 0x03, 0xf0, + 0xbf, 0xff, 0x00, 0x23, 0x73, 0x62, 0x60, 0x6f, 0x03, 0xf0, 0xe0, 0xfd, + 0x20, 0x6f, 0x05, 0xf0, 0x88, 0xf9, 0x61, 0x6e, 0x29, 0xb1, 0x20, 0x68, + 0xa2, 0x6e, 0xe3, 0xf3, 0x3f, 0xf4, 0x00, 0x23, 0x63, 0x66, 0x20, 0x6e, + 0x18, 0xb1, 0x03, 0xf0, 0x4f, 0xf8, 0x00, 0x23, 0x23, 0x66, 0x20, 0x46, + 0xe6, 0xf7, 0x2a, 0xfe, 0x28, 0x46, 0xff, 0xf7, 0x8b, 0xfe, 0x00, 0x20, + 0x70, 0xbd, 0x00, 0x00, 0xc3, 0x6e, 0x4f, 0xf4, 0x80, 0x32, 0x10, 0xb5, + 0xc3, 0xf8, 0x60, 0x21, 0xd3, 0xf8, 0x60, 0x11, 0xd3, 0xf8, 0x64, 0x41, + 0xc3, 0xf8, 0x60, 0x21, 0xd3, 0xf8, 0x60, 0x11, 0x19, 0x49, 0xc3, 0xf8, + 0x64, 0x11, 0xc3, 0xf8, 0x60, 0x21, 0xd3, 0xf8, 0x60, 0x01, 0xd3, 0xf8, + 0x64, 0x01, 0x88, 0x42, 0x23, 0xd1, 0xc3, 0xf8, 0x60, 0x21, 0xd3, 0xf8, + 0x60, 0x11, 0x13, 0x49, 0xc3, 0xf8, 0x64, 0x11, 0xc3, 0xf8, 0x60, 0x21, + 0xd3, 0xf8, 0x60, 0x01, 0xd3, 0xf8, 0x64, 0x01, 0x88, 0x42, 0x4f, 0xf0, + 0x00, 0x00, 0x15, 0xd1, 0xc3, 0xf8, 0x60, 0x21, 0xd3, 0xf8, 0x60, 0x21, + 0xc3, 0xf8, 0x64, 0x41, 0xc3, 0xf8, 0x8c, 0x01, 0xd3, 0xf8, 0x20, 0x31, + 0xb3, 0xf1, 0x04, 0x2f, 0x07, 0xd0, 0x07, 0x48, 0x1b, 0x1a, 0x58, 0x42, + 0x40, 0xeb, 0x03, 0x00, 0x10, 0xbd, 0x00, 0x20, 0x10, 0xbd, 0x01, 0x20, + 0x10, 0xbd, 0x00, 0xbf, 0xaa, 0x55, 0x55, 0xaa, 0x55, 0xaa, 0xaa, 0x55, + 0x00, 0x04, 0x00, 0x84, 0x2d, 0xe9, 0xf0, 0x4f, 0x04, 0x69, 0x9b, 0x46, + 0xe3, 0x63, 0xe3, 0x6f, 0x97, 0xb0, 0xdd, 0xf8, 0x84, 0xa0, 0xa3, 0x67, + 0x9d, 0xf8, 0x80, 0x30, 0xa0, 0x60, 0x23, 0x71, 0x05, 0x46, 0xc4, 0xf8, + 0x00, 0xa0, 0x20, 0x46, 0x16, 0x46, 0x0f, 0x46, 0xff, 0xf7, 0x5a, 0xff, + 0x24, 0x9b, 0x30, 0x46, 0x00, 0x93, 0x04, 0xf1, 0x64, 0x03, 0x01, 0x93, + 0x04, 0xf1, 0x68, 0x03, 0x02, 0x93, 0x51, 0x46, 0x22, 0x9a, 0x23, 0x9b, + 0x03, 0xf0, 0x60, 0xf9, 0x20, 0x66, 0x00, 0x28, 0x00, 0xf0, 0xcf, 0x81, + 0xd4, 0xf8, 0x64, 0x80, 0x81, 0x49, 0x40, 0x46, 0xdf, 0xf3, 0x28, 0xf2, + 0x20, 0xb1, 0x00, 0x21, 0x0a, 0x46, 0xdf, 0xf3, 0xe3, 0xf0, 0x87, 0xb2, + 0x40, 0x46, 0x7d, 0x49, 0xdf, 0xf3, 0x1e, 0xf2, 0x48, 0xb1, 0x00, 0x21, + 0x0a, 0x46, 0xdf, 0xf3, 0xd9, 0xf0, 0x4f, 0xf6, 0xff, 0x73, 0x80, 0xb2, + 0x98, 0x42, 0x18, 0xbf, 0x06, 0x46, 0x38, 0x46, 0x31, 0x46, 0xfe, 0xf7, + 0x6f, 0xfa, 0x00, 0x28, 0x00, 0xf0, 0xaf, 0x81, 0x40, 0xf6, 0x12, 0x01, + 0x00, 0x22, 0xa4, 0xf8, 0x40, 0x70, 0xa4, 0xf8, 0x42, 0x60, 0x20, 0x6e, + 0xe7, 0xf3, 0x18, 0xf6, 0xe0, 0x66, 0x20, 0x6e, 0xe7, 0xf3, 0x66, 0xf4, + 0xd4, 0xf8, 0x6c, 0x90, 0x60, 0x64, 0xc5, 0xf8, 0x0c, 0x90, 0x20, 0x46, + 0xff, 0xf7, 0x5c, 0xfd, 0x00, 0x28, 0x00, 0xf0, 0x98, 0x81, 0x20, 0x6e, + 0xe9, 0xf7, 0x6f, 0xfc, 0x20, 0x46, 0x00, 0x21, 0x18, 0xf0, 0x70, 0xdb, + 0x20, 0x46, 0x4f, 0xf0, 0xff, 0x31, 0xe6, 0xf7, 0xf5, 0xfd, 0x20, 0x46, + 0xff, 0xf7, 0x46, 0xff, 0x00, 0x28, 0x00, 0xf0, 0x88, 0x81, 0x40, 0x46, + 0x5d, 0x49, 0xdf, 0xf3, 0xb1, 0xf1, 0xff, 0x28, 0x08, 0xbf, 0x01, 0x20, + 0xa4, 0xf8, 0x4a, 0x00, 0x20, 0x46, 0xff, 0xf7, 0x46, 0xfd, 0x00, 0x28, + 0x00, 0xf0, 0x7b, 0x81, 0x57, 0x49, 0x40, 0x46, 0xdf, 0xf3, 0xa2, 0xf1, + 0x56, 0x49, 0x84, 0xf8, 0x48, 0x00, 0x40, 0x46, 0xdf, 0xf3, 0x9c, 0xf1, + 0x54, 0x49, 0xe0, 0x64, 0x40, 0x46, 0xdf, 0xf3, 0x97, 0xf1, 0x23, 0x6e, + 0x41, 0xf2, 0x6b, 0x02, 0xd9, 0x6a, 0x20, 0x65, 0x91, 0x42, 0x0a, 0xd1, + 0x9b, 0x6a, 0x4e, 0x2b, 0x07, 0xd1, 0xb4, 0xf8, 0x4a, 0x30, 0x40, 0x2b, + 0x03, 0xd9, 0xe3, 0x6c, 0x43, 0xf0, 0x02, 0x03, 0xe3, 0x64, 0xe3, 0x6c, + 0x99, 0x06, 0x04, 0xd5, 0x01, 0x21, 0x20, 0x46, 0x0a, 0x46, 0x19, 0xf0, + 0xe3, 0xde, 0xb4, 0xf8, 0x42, 0x20, 0x01, 0x23, 0xc4, 0xf8, 0x98, 0x30, + 0xb4, 0xf8, 0x40, 0x00, 0x2b, 0x68, 0xa5, 0xf8, 0x82, 0x21, 0x22, 0x6e, + 0xa5, 0xf8, 0x80, 0x01, 0x1a, 0x61, 0x62, 0x6c, 0x9a, 0x60, 0x94, 0xf8, + 0x48, 0x20, 0x83, 0xf8, 0x7c, 0x20, 0x2b, 0x68, 0xe2, 0x6c, 0xb4, 0xf8, + 0x4a, 0x00, 0xc3, 0xf8, 0x80, 0x20, 0x22, 0x6d, 0xa3, 0xf8, 0x7a, 0x00, + 0xc3, 0xf8, 0x84, 0x20, 0xd4, 0xf8, 0x98, 0x20, 0x20, 0x46, 0x5a, 0x62, + 0xa9, 0x68, 0x2a, 0x46, 0x05, 0xf0, 0x42, 0xf8, 0x20, 0x67, 0x00, 0x28, + 0x00, 0xf0, 0x29, 0x81, 0x62, 0x6c, 0x23, 0x6e, 0x08, 0x92, 0xb4, 0xf8, + 0x40, 0x20, 0x06, 0x90, 0xad, 0xf8, 0x30, 0x20, 0x9a, 0x6b, 0xb4, 0xf8, + 0x42, 0x00, 0x0d, 0x92, 0xda, 0x6b, 0x05, 0x93, 0x0e, 0x92, 0x1a, 0x6c, + 0xad, 0xf8, 0x32, 0x00, 0x0f, 0x92, 0x94, 0xf8, 0x48, 0x20, 0x04, 0xa8, + 0x10, 0x92, 0x9a, 0x6a, 0xcd, 0xf8, 0x10, 0xa0, 0x11, 0x92, 0xb4, 0xf8, + 0x4a, 0x20, 0xcd, 0xf8, 0x1c, 0xb0, 0x12, 0x92, 0xda, 0x6a, 0xcd, 0xf8, + 0x2c, 0x80, 0x13, 0x92, 0xe2, 0x6c, 0x14, 0x92, 0x22, 0x6d, 0x15, 0x92, + 0x5a, 0x68, 0xdb, 0x68, 0x09, 0x92, 0x0a, 0x93, 0x03, 0xf0, 0x3a, 0xfc, + 0x60, 0x67, 0x00, 0x28, 0x00, 0xf0, 0xf9, 0x80, 0xb4, 0xf8, 0x42, 0x30, + 0x44, 0xf2, 0x1d, 0x32, 0x93, 0x42, 0x29, 0xd0, 0x0a, 0xd8, 0x44, 0xf2, + 0x16, 0x32, 0x93, 0x42, 0x24, 0xd0, 0x44, 0xf2, 0x1a, 0x32, 0x93, 0x42, + 0x20, 0xd0, 0x44, 0xf2, 0x13, 0x32, 0x0d, 0xe0, 0x44, 0xf2, 0x2a, 0x32, + 0x93, 0x42, 0x19, 0xd0, 0x02, 0xd8, 0x44, 0xf2, 0x21, 0x32, 0x05, 0xe0, + 0x44, 0xf2, 0x2d, 0x32, 0x93, 0x42, 0x11, 0xd0, 0x44, 0xf2, 0x52, 0x32, + 0x93, 0x42, 0x0d, 0xd0, 0x00, 0x26, 0x0c, 0xe0, 0xd1, 0xad, 0x86, 0x00, + 0x48, 0x37, 0x86, 0x00, 0x84, 0xae, 0x86, 0x00, 0xe5, 0xae, 0x86, 0x00, + 0x86, 0x37, 0x86, 0x00, 0x9e, 0x79, 0x86, 0x00, 0x01, 0x26, 0x31, 0x46, + 0x20, 0x46, 0xe6, 0xf7, 0xbd, 0xfc, 0xa3, 0x6f, 0x00, 0x2e, 0x0c, 0xbf, + 0x02, 0x22, 0x01, 0x22, 0x1a, 0x60, 0x5e, 0x60, 0x2b, 0x6b, 0x20, 0x6e, + 0x83, 0xe8, 0x44, 0x00, 0xef, 0x6a, 0xe7, 0xf3, 0x5f, 0xf3, 0xd9, 0xf8, + 0x5c, 0x31, 0x38, 0x60, 0x62, 0x4a, 0x63, 0x65, 0xa3, 0x65, 0x63, 0x6c, + 0x06, 0x21, 0x01, 0xfb, 0x03, 0x23, 0xa7, 0x6f, 0x18, 0x3b, 0xc4, 0xf8, + 0xb8, 0x30, 0x60, 0x6f, 0x49, 0x46, 0x3a, 0x68, 0x43, 0x46, 0x03, 0xf0, + 0x65, 0xfc, 0x78, 0x62, 0x00, 0x28, 0x00, 0xf0, 0xa0, 0x80, 0xa3, 0x6f, + 0x61, 0x6d, 0x58, 0x6a, 0xee, 0xf7, 0x0f, 0xf9, 0xa3, 0x6f, 0x03, 0xf1, + 0x22, 0x02, 0x00, 0x92, 0x03, 0xf1, 0x1c, 0x01, 0x03, 0xf1, 0x1e, 0x02, + 0x58, 0x6a, 0x20, 0x33, 0x03, 0xf0, 0x0f, 0xfc, 0xa7, 0x6f, 0x78, 0x6a, + 0x03, 0xf0, 0x1b, 0xfc, 0x87, 0xf8, 0x28, 0x00, 0xa3, 0x6f, 0x2f, 0x6b, + 0x58, 0x6a, 0x03, 0xf0, 0x14, 0xfc, 0x38, 0x75, 0xa7, 0x6f, 0x78, 0x6a, + 0x03, 0xf0, 0x12, 0xfc, 0xa3, 0x6f, 0xb8, 0x61, 0xda, 0x8b, 0x03, 0x2a, + 0x7b, 0xd1, 0x29, 0x6b, 0x58, 0x6a, 0x08, 0x61, 0x98, 0x8b, 0x4a, 0x81, + 0x08, 0x81, 0x1a, 0x8c, 0x58, 0x8c, 0x8a, 0x81, 0xc8, 0x81, 0x0f, 0x22, + 0x40, 0xf2, 0xff, 0x30, 0x9a, 0x82, 0xd8, 0x82, 0x31, 0x46, 0x28, 0x46, + 0x01, 0x22, 0xff, 0xf7, 0xbf, 0xfc, 0x00, 0x28, 0x67, 0xd0, 0xa2, 0x6f, + 0x2b, 0x68, 0x50, 0x6a, 0x93, 0xf8, 0x99, 0x10, 0xee, 0xf7, 0xd4, 0xf8, + 0x00, 0x21, 0x20, 0x46, 0x18, 0xf0, 0x16, 0xdf, 0x08, 0x21, 0x20, 0x46, + 0xe6, 0xf7, 0x30, 0xfe, 0x20, 0x46, 0x1a, 0xf0, 0x47, 0xda, 0x00, 0x95, + 0x20, 0x6e, 0x31, 0x49, 0x31, 0x4a, 0x00, 0x23, 0xe7, 0xf3, 0x6e, 0xf4, + 0x20, 0x46, 0x00, 0x21, 0x1a, 0xf0, 0x1e, 0xda, 0x20, 0x46, 0xe6, 0xf7, + 0xe9, 0xfb, 0x00, 0x28, 0x47, 0xd0, 0x04, 0xf1, 0xdc, 0x05, 0x29, 0x46, + 0xde, 0xf3, 0x82, 0xf6, 0x28, 0x46, 0xdf, 0xf3, 0x3f, 0xf0, 0x00, 0x28, + 0x3f, 0xd1, 0x28, 0x46, 0xdf, 0xf3, 0x4a, 0xf0, 0x05, 0x46, 0x00, 0x28, + 0x39, 0xd1, 0x20, 0x46, 0x18, 0xf0, 0x4c, 0xd8, 0xa3, 0x68, 0x1b, 0x68, + 0xd3, 0xf8, 0x9c, 0x00, 0x00, 0x28, 0x34, 0xd0, 0x03, 0x78, 0x00, 0x2b, + 0x2f, 0xd0, 0x1e, 0x49, 0x22, 0x46, 0xdf, 0xf3, 0x4b, 0xf1, 0xa3, 0x68, + 0x1c, 0x49, 0x1b, 0x68, 0x22, 0x46, 0xd3, 0xf8, 0x9c, 0x00, 0xdf, 0xf3, + 0x7d, 0xf1, 0xa0, 0x68, 0xff, 0xf7, 0x54, 0xfd, 0xe0, 0x68, 0x00, 0xb3, + 0xa3, 0x68, 0x1b, 0x68, 0xd3, 0xf8, 0x9c, 0x10, 0xe1, 0xf3, 0x70, 0xf1, + 0x1a, 0xe0, 0x0b, 0x25, 0x18, 0xe0, 0x0c, 0x25, 0x16, 0xe0, 0x0d, 0x25, + 0x14, 0xe0, 0x0e, 0x25, 0x12, 0xe0, 0x0f, 0x25, 0x10, 0xe0, 0x19, 0x25, + 0x0e, 0xe0, 0x10, 0x25, 0x0c, 0xe0, 0x11, 0x25, 0x0a, 0xe0, 0x12, 0x25, + 0x08, 0xe0, 0x13, 0x25, 0x06, 0xe0, 0x15, 0x25, 0x04, 0xe0, 0x16, 0x25, + 0x02, 0xe0, 0x1d, 0x46, 0x00, 0xe0, 0x05, 0x46, 0x28, 0x46, 0x17, 0xb0, + 0xbd, 0xe8, 0xf0, 0x8f, 0x34, 0xfe, 0x01, 0x00, 0x69, 0xc1, 0x83, 0x00, + 0x85, 0xc1, 0x83, 0x00, 0x25, 0xc0, 0x83, 0x00, 0x49, 0xc0, 0x83, 0x00, + 0x10, 0xb5, 0x04, 0x46, 0x1b, 0xf0, 0x0a, 0xdf, 0x01, 0x22, 0x01, 0x46, + 0x20, 0x46, 0xbd, 0xe8, 0x10, 0x40, 0x1b, 0xf0, 0x7b, 0x9f, 0x37, 0xb5, + 0x05, 0x46, 0x1b, 0xf0, 0xff, 0xde, 0x00, 0x23, 0xc5, 0xf8, 0x4c, 0x02, + 0x80, 0xf8, 0x48, 0x30, 0x2a, 0x68, 0x04, 0x46, 0x92, 0xf8, 0x2f, 0x10, + 0x28, 0x46, 0x00, 0x91, 0x4e, 0x32, 0x21, 0x46, 0x1a, 0xf0, 0x9e, 0xdc, + 0x38, 0xb1, 0x28, 0x46, 0x21, 0x46, 0x1b, 0xf0, 0x47, 0xdd, 0x4f, 0xf0, + 0xff, 0x30, 0x03, 0xb0, 0x30, 0xbd, 0x28, 0x46, 0x21, 0x46, 0x03, 0xb0, + 0xbd, 0xe8, 0x30, 0x40, 0x1b, 0xf0, 0xe2, 0x9d, 0x37, 0xb5, 0x04, 0x46, + 0x00, 0x28, 0x45, 0xd0, 0xd0, 0xf8, 0x20, 0x11, 0x31, 0xb1, 0x03, 0x68, + 0x98, 0x68, 0xeb, 0xf3, 0x55, 0xf6, 0x00, 0x23, 0xc4, 0xf8, 0x20, 0x31, + 0x23, 0x68, 0x1a, 0x68, 0x92, 0xf8, 0x2f, 0x20, 0x2a, 0xb3, 0xd3, 0xf8, + 0x00, 0x05, 0x01, 0xa9, 0x31, 0xf0, 0x72, 0xdb, 0x12, 0xe0, 0x43, 0x68, + 0x5a, 0x06, 0x0f, 0xd5, 0xd4, 0xf8, 0x2c, 0x51, 0x45, 0x19, 0x07, 0xe0, + 0x0b, 0x68, 0x48, 0x22, 0xc5, 0xf8, 0x10, 0x31, 0x23, 0x68, 0x58, 0x68, + 0xe3, 0xf3, 0x70, 0xf1, 0xd5, 0xf8, 0x10, 0x11, 0x00, 0x29, 0xf3, 0xd1, + 0x01, 0xa8, 0x31, 0xf0, 0x63, 0xdb, 0x00, 0x28, 0xe7, 0xd1, 0x06, 0xe0, + 0x0a, 0x68, 0x58, 0x68, 0xc4, 0xf8, 0x40, 0x21, 0x48, 0x22, 0xe3, 0xf3, + 0x5f, 0xf1, 0xd4, 0xf8, 0x40, 0x11, 0x23, 0x68, 0x00, 0x29, 0xf3, 0xd1, + 0x18, 0x68, 0x06, 0x49, 0x22, 0x46, 0x00, 0xf0, 0x81, 0xda, 0x23, 0x68, + 0x21, 0x46, 0x58, 0x68, 0x4f, 0xf4, 0xa4, 0x72, 0xe3, 0xf3, 0x4e, 0xf1, + 0x3e, 0xbd, 0x00, 0xbf, 0x91, 0xba, 0x86, 0x00, 0x7f, 0xb5, 0x05, 0x46, + 0x4f, 0xf4, 0xa4, 0x71, 0x40, 0x68, 0xe3, 0xf3, 0x33, 0xf1, 0x04, 0x46, + 0x00, 0x28, 0x55, 0xd0, 0x00, 0x21, 0x4f, 0xf4, 0xa4, 0x72, 0xde, 0xf3, + 0xe3, 0xf2, 0x2a, 0x4b, 0x25, 0x60, 0x00, 0x93, 0x29, 0x4b, 0x00, 0x26, + 0x01, 0x93, 0x29, 0x4b, 0x28, 0x68, 0x03, 0x93, 0x28, 0x49, 0x29, 0x4a, + 0x23, 0x46, 0x02, 0x96, 0x00, 0xf0, 0x20, 0xda, 0x2b, 0x6b, 0x1a, 0x68, + 0x02, 0x2a, 0x05, 0xd1, 0x5b, 0x7d, 0x00, 0x2b, 0x0c, 0xbf, 0x16, 0x23, + 0x30, 0x23, 0x00, 0xe0, 0x30, 0x23, 0xa2, 0x19, 0x44, 0x36, 0xb6, 0xf5, + 0x88, 0x7f, 0x13, 0x74, 0xee, 0xd1, 0xa8, 0x68, 0x1e, 0x49, 0x2a, 0x46, + 0x00, 0x23, 0xeb, 0xf3, 0xf9, 0xf5, 0x06, 0x46, 0xc4, 0xf8, 0x20, 0x01, + 0x30, 0xb9, 0x68, 0x68, 0x21, 0x46, 0x4f, 0xf4, 0xa4, 0x72, 0xe3, 0xf3, + 0x0b, 0xf1, 0x1e, 0xe0, 0x4f, 0xf4, 0x96, 0x73, 0xc4, 0xf8, 0x1c, 0x31, + 0x45, 0xf2, 0x73, 0x53, 0xa4, 0xf8, 0x38, 0x31, 0x46, 0x23, 0xa4, 0xf8, + 0x3a, 0x31, 0x12, 0x4b, 0x00, 0x26, 0xc4, 0xf8, 0x40, 0x61, 0x28, 0x46, + 0x8d, 0xe8, 0x28, 0x00, 0x4f, 0xf4, 0x8a, 0x71, 0x0e, 0x4a, 0x0f, 0x4b, + 0x04, 0xf0, 0x90, 0xff, 0xb0, 0x42, 0xc4, 0xf8, 0x2c, 0x01, 0x03, 0xda, + 0x20, 0x46, 0xff, 0xf7, 0x53, 0xff, 0x34, 0x46, 0x20, 0x46, 0x04, 0xb0, + 0x70, 0xbd, 0x00, 0xbf, 0xf9, 0x0c, 0x84, 0x00, 0x65, 0x02, 0x01, 0x00, + 0x7d, 0x0a, 0x84, 0x00, 0x70, 0xe3, 0x85, 0x00, 0x91, 0xba, 0x86, 0x00, + 0x3d, 0x06, 0x84, 0x00, 0xd9, 0x12, 0x84, 0x00, 0xe5, 0x12, 0x84, 0x00, + 0xa5, 0x12, 0x84, 0x00, 0x01, 0x46, 0x20, 0xb1, 0x03, 0x68, 0xb0, 0x22, + 0xd8, 0x68, 0xe3, 0xf3, 0xcd, 0xb0, 0x70, 0x47, 0xf7, 0xb5, 0x06, 0x68, + 0x05, 0x46, 0xb0, 0x21, 0xf0, 0x68, 0xe3, 0xf3, 0xb5, 0xf0, 0x04, 0x46, + 0x00, 0x28, 0x00, 0xf0, 0x87, 0x80, 0x00, 0x21, 0xb0, 0x22, 0xde, 0xf3, + 0x65, 0xf2, 0x04, 0x22, 0x26, 0x60, 0x65, 0x60, 0x00, 0x21, 0xc5, 0xf8, + 0x5c, 0x41, 0x01, 0xa8, 0xde, 0xf3, 0x5c, 0xf2, 0x2b, 0x68, 0x93, 0xf8, + 0x7c, 0x20, 0x58, 0x69, 0x01, 0x2a, 0x06, 0xd9, 0x3a, 0x49, 0xde, 0xf3, + 0x1b, 0xf7, 0x01, 0x46, 0x88, 0xb1, 0x01, 0xa8, 0x09, 0xe0, 0x38, 0x49, + 0xde, 0xf3, 0xe8, 0xf6, 0x09, 0x28, 0x03, 0x46, 0x09, 0xd8, 0x36, 0x49, + 0x01, 0xa8, 0x01, 0xeb, 0x83, 0x01, 0x03, 0x22, 0xde, 0xf3, 0xfa, 0xf2, + 0x00, 0x23, 0x8d, 0xf8, 0x07, 0x30, 0x03, 0x22, 0x01, 0xa9, 0x04, 0xf1, + 0x08, 0x00, 0xde, 0xf3, 0xf1, 0xf2, 0x00, 0x23, 0xe3, 0x72, 0x2b, 0x68, + 0x2d, 0x49, 0x58, 0x69, 0xde, 0xf3, 0xce, 0xf6, 0x33, 0x69, 0x41, 0xf2, + 0x6b, 0x02, 0xd9, 0x6a, 0xe0, 0x60, 0x91, 0x42, 0x0c, 0xd1, 0x9b, 0x6a, + 0x8b, 0x2b, 0x09, 0xd1, 0x02, 0x28, 0x07, 0xd1, 0x01, 0xa8, 0x26, 0x49, + 0x04, 0x22, 0xde, 0xf3, 0xb9, 0xf2, 0x08, 0xb9, 0x03, 0x23, 0xe3, 0x60, + 0x33, 0x69, 0x41, 0xf2, 0x6b, 0x02, 0xd9, 0x6a, 0x91, 0x42, 0x0d, 0xd1, + 0x9b, 0x6a, 0x93, 0x2b, 0x0a, 0xd1, 0x01, 0xa8, 0x1e, 0x49, 0x04, 0x22, + 0xde, 0xf3, 0xa8, 0xf2, 0x20, 0xb9, 0xe3, 0x68, 0x04, 0x2b, 0x01, 0xd1, + 0x06, 0x23, 0xe3, 0x60, 0x28, 0x46, 0x01, 0xa9, 0x21, 0xf0, 0x0e, 0xde, + 0x06, 0x46, 0x50, 0xb9, 0x17, 0x49, 0x01, 0xa8, 0x03, 0x22, 0xde, 0xf3, + 0xb7, 0xf2, 0x28, 0x46, 0x01, 0xa9, 0x8d, 0xf8, 0x07, 0x60, 0x21, 0xf0, + 0x01, 0xde, 0x05, 0xf5, 0xaa, 0x67, 0x01, 0xa9, 0x03, 0x22, 0x00, 0x26, + 0x07, 0xf1, 0x0a, 0x00, 0xde, 0xf3, 0xa8, 0xf2, 0x0e, 0x49, 0x85, 0xf8, + 0x5d, 0x65, 0x07, 0xf1, 0x0e, 0x00, 0x03, 0x22, 0xde, 0xf3, 0xa0, 0xf2, + 0x85, 0xf8, 0x61, 0x65, 0x20, 0x46, 0x01, 0xa9, 0x22, 0xf0, 0x74, 0xda, + 0x20, 0x46, 0xfe, 0xbd, 0xb3, 0xc4, 0x86, 0x00, 0xb9, 0xc4, 0x86, 0x00, + 0xce, 0x02, 0x86, 0x00, 0xbc, 0xc4, 0x86, 0x00, 0xc3, 0xc4, 0x86, 0x00, + 0x71, 0xc2, 0x86, 0x00, 0xc6, 0xc4, 0x86, 0x00, 0xca, 0xc4, 0x86, 0x00, + 0x30, 0xb5, 0x2c, 0x21, 0x85, 0xb0, 0x05, 0x46, 0x40, 0x68, 0xe3, 0xf3, + 0x11, 0xf0, 0x04, 0x46, 0xb8, 0xb1, 0x00, 0x21, 0x2c, 0x22, 0xde, 0xf3, + 0xc3, 0xf1, 0x08, 0x23, 0xa3, 0x61, 0x0a, 0x4b, 0x25, 0x60, 0x00, 0x93, + 0x00, 0x23, 0x01, 0x93, 0x02, 0x93, 0x03, 0x93, 0x07, 0x4a, 0x23, 0x46, + 0x28, 0x68, 0x07, 0x49, 0x00, 0xf0, 0x00, 0xd9, 0x2a, 0x68, 0x01, 0x23, + 0x82, 0xf8, 0x96, 0x30, 0x23, 0x71, 0x20, 0x46, 0x05, 0xb0, 0x30, 0xbd, + 0x05, 0x0b, 0x85, 0x00, 0x91, 0xe6, 0x86, 0x00, 0x64, 0xc7, 0x01, 0x00, + 0x38, 0xb5, 0x04, 0x46, 0x00, 0x28, 0x28, 0xd0, 0x03, 0x68, 0x14, 0x49, + 0x18, 0x68, 0x22, 0x46, 0x00, 0xf0, 0x20, 0xd9, 0x63, 0x69, 0x05, 0xe0, + 0x1d, 0x68, 0x59, 0x68, 0x20, 0x46, 0x2c, 0xf0, 0x03, 0xde, 0x2b, 0x46, + 0x00, 0x2b, 0xf7, 0xd1, 0x23, 0x69, 0x05, 0xe0, 0x1d, 0x68, 0x59, 0x68, + 0x20, 0x46, 0x2c, 0xf0, 0xf9, 0xdd, 0x2b, 0x46, 0x00, 0x2b, 0xf7, 0xd1, + 0xa1, 0x6a, 0x21, 0xb1, 0x23, 0x68, 0x90, 0x22, 0x58, 0x68, 0xe2, 0xf3, + 0xd9, 0xf7, 0x23, 0x68, 0x21, 0x46, 0x58, 0x68, 0x2c, 0x22, 0xbd, 0xe8, + 0x38, 0x40, 0xe2, 0xf3, 0xd1, 0xb7, 0x38, 0xbd, 0x91, 0xe6, 0x86, 0x00, + 0x2d, 0xe9, 0xf8, 0x43, 0x05, 0x46, 0x88, 0x46, 0xe7, 0xf3, 0xca, 0xf1, + 0x00, 0x21, 0x28, 0x46, 0xe7, 0xf3, 0x5c, 0xf2, 0x04, 0x46, 0x28, 0x46, + 0x6e, 0x69, 0xaf, 0x69, 0xe8, 0xf7, 0x84, 0xfe, 0x0a, 0x2e, 0x81, 0x46, + 0x16, 0xd9, 0x0f, 0x2e, 0x16, 0xd0, 0x28, 0x46, 0xe9, 0xf7, 0x91, 0xf8, + 0x14, 0x2e, 0x05, 0x46, 0x03, 0xd9, 0xa3, 0x68, 0x23, 0xf0, 0x08, 0x03, + 0xa3, 0x60, 0xa3, 0x68, 0x14, 0x2e, 0x43, 0xf0, 0x01, 0x03, 0xa3, 0x60, + 0x14, 0xd9, 0xa3, 0x68, 0x43, 0xf0, 0x08, 0x03, 0xa3, 0x60, 0x0f, 0xe0, + 0x02, 0x2e, 0x0f, 0xd9, 0x28, 0x46, 0xe9, 0xf7, 0x55, 0xf8, 0xd4, 0xf8, + 0xa4, 0x30, 0x05, 0x46, 0x23, 0xf0, 0xff, 0x03, 0x43, 0xf0, 0x02, 0x03, + 0xc4, 0xf8, 0xa4, 0x30, 0x02, 0x23, 0x03, 0xe0, 0x01, 0x23, 0x01, 0xe0, + 0x10, 0x4d, 0x30, 0x23, 0xa2, 0x68, 0xd2, 0x07, 0x07, 0xd4, 0x07, 0xf0, + 0x18, 0x02, 0x08, 0x2a, 0x0c, 0xbf, 0xb5, 0xfb, 0xf3, 0xf5, 0x4f, 0xf4, + 0xe1, 0x15, 0x07, 0xf0, 0x03, 0x07, 0x00, 0x26, 0x0b, 0xe0, 0x04, 0xf5, + 0x40, 0x73, 0xb8, 0xf1, 0x00, 0x0f, 0x05, 0xd0, 0x30, 0x02, 0x18, 0x18, + 0x49, 0x46, 0x2a, 0x46, 0x00, 0x23, 0xc0, 0x47, 0x01, 0x36, 0xbe, 0x42, + 0xf1, 0xdb, 0xbd, 0xe8, 0xf8, 0x83, 0x00, 0xbf, 0x00, 0xc6, 0x3e, 0x05, + 0x2d, 0xe9, 0xf0, 0x41, 0x16, 0x46, 0x98, 0x46, 0x04, 0x46, 0x0d, 0x46, + 0xe7, 0xf3, 0x2c, 0xf0, 0x00, 0x21, 0x07, 0x46, 0x20, 0x46, 0xe7, 0xf3, + 0xf9, 0xf1, 0x00, 0x22, 0x13, 0x46, 0x11, 0x49, 0x01, 0xeb, 0x02, 0x0e, + 0xde, 0xf8, 0x04, 0xe0, 0xbe, 0xf1, 0x00, 0x0f, 0x0d, 0xd1, 0x0c, 0x22, + 0x53, 0x43, 0xca, 0x18, 0xce, 0x50, 0x43, 0x6a, 0x55, 0x60, 0x1e, 0x43, + 0x0a, 0x4b, 0xc2, 0xf8, 0x08, 0x80, 0x1e, 0x60, 0x46, 0x62, 0x01, 0x25, + 0x04, 0xe0, 0x01, 0x33, 0x0c, 0x32, 0x05, 0x2b, 0xe5, 0xd1, 0x00, 0x25, + 0x20, 0x46, 0x39, 0x46, 0xe7, 0xf3, 0xd8, 0xf1, 0x28, 0x46, 0xbd, 0xe8, + 0xf0, 0x81, 0x00, 0xbf, 0x3c, 0x26, 0x00, 0x00, 0x78, 0x26, 0x00, 0x00, + 0x43, 0x69, 0x14, 0x2b, 0x01, 0xdd, 0x02, 0xf0, 0x1f, 0xbd, 0x70, 0x47, + 0x13, 0x4b, 0x13, 0xb5, 0x13, 0x60, 0x13, 0x46, 0x01, 0xe0, 0x11, 0x4c, + 0x1c, 0x60, 0x04, 0x33, 0xad, 0xf1, 0x7c, 0x04, 0xa3, 0x42, 0xf8, 0xd3, + 0x03, 0x30, 0x20, 0xf0, 0x03, 0x00, 0x0d, 0x4b, 0x09, 0x1a, 0x0d, 0x4c, + 0x19, 0x60, 0x00, 0x23, 0x23, 0x60, 0x0c, 0x4c, 0x08, 0x39, 0x23, 0x60, + 0x0b, 0x4c, 0x80, 0xe8, 0x0a, 0x00, 0x23, 0x60, 0x0a, 0x4c, 0x22, 0x60, + 0x0a, 0x4c, 0x02, 0xf5, 0xa0, 0x52, 0x22, 0x60, 0x09, 0x4a, 0x13, 0x60, + 0x09, 0x4b, 0x58, 0x60, 0x1c, 0xbd, 0x00, 0xbf, 0x4b, 0x41, 0x54, 0x53, + 0xc8, 0x26, 0x00, 0x00, 0x88, 0x26, 0x00, 0x00, 0xa4, 0x26, 0x00, 0x00, + 0xcc, 0x26, 0x00, 0x00, 0xf4, 0x07, 0x02, 0x00, 0xf8, 0x07, 0x02, 0x00, + 0x90, 0x26, 0x00, 0x00, 0xc0, 0x26, 0x00, 0x00, 0x1f, 0xb5, 0xe8, 0x20, + 0x00, 0x21, 0xe2, 0xf3, 0x81, 0xf2, 0x0c, 0x4c, 0x20, 0x60, 0xa0, 0xb1, + 0x00, 0x21, 0xe8, 0x22, 0xde, 0xf3, 0x94, 0xf0, 0x04, 0xaa, 0x01, 0x23, + 0x42, 0xf8, 0x04, 0x3d, 0x00, 0x23, 0x00, 0x93, 0x06, 0x4b, 0x21, 0x68, + 0x18, 0x68, 0x40, 0xf2, 0x3c, 0x73, 0xde, 0xf3, 0xd3, 0xf6, 0x20, 0x68, + 0x0e, 0x21, 0xde, 0xf3, 0x19, 0xf7, 0x1f, 0xbd, 0xbc, 0x26, 0x00, 0x00, + 0x20, 0x08, 0x02, 0x00, 0xb1, 0xf5, 0xe0, 0x6f, 0x73, 0xb5, 0x04, 0x46, + 0x0e, 0x46, 0x15, 0x46, 0x06, 0xd1, 0x03, 0x69, 0x00, 0x91, 0x00, 0x21, + 0x01, 0x91, 0x1e, 0x68, 0x0a, 0x46, 0x0c, 0xe0, 0x0d, 0x4b, 0x00, 0x22, + 0x18, 0x68, 0xe7, 0xf3, 0x49, 0xf1, 0x01, 0x46, 0x80, 0xb1, 0x23, 0x69, + 0x00, 0x22, 0x00, 0x96, 0x01, 0x92, 0x1e, 0x68, 0x20, 0x46, 0x2b, 0x46, + 0xb0, 0x47, 0x38, 0xb1, 0x06, 0x4b, 0xa0, 0x61, 0x1a, 0x68, 0x65, 0x61, + 0x22, 0x62, 0x1c, 0x60, 0x00, 0x20, 0x01, 0xe0, 0x4f, 0xf0, 0xff, 0x30, + 0x7c, 0xbd, 0x00, 0xbf, 0x8c, 0x26, 0x00, 0x00, 0x1c, 0x08, 0x02, 0x00, + 0x2d, 0xe9, 0xf8, 0x43, 0x10, 0x20, 0x0c, 0x46, 0x00, 0x21, 0x91, 0x46, + 0x98, 0x46, 0xe2, 0xf3, 0x2d, 0xf2, 0x05, 0x46, 0x00, 0xb3, 0x12, 0x4e, + 0x30, 0x68, 0xe6, 0xf3, 0x5f, 0xf7, 0x09, 0x9b, 0x07, 0x46, 0x23, 0xb9, + 0x30, 0x68, 0x21, 0x46, 0x4a, 0x46, 0xe7, 0xf3, 0x17, 0xf1, 0x30, 0x68, + 0xe6, 0xf3, 0xd0, 0xf7, 0x01, 0x23, 0x83, 0x40, 0xeb, 0x60, 0x08, 0x9b, + 0xc5, 0xf8, 0x04, 0x80, 0xab, 0x60, 0x08, 0x4b, 0x30, 0x68, 0x1a, 0x68, + 0x39, 0x46, 0x2a, 0x60, 0x1d, 0x60, 0xe7, 0xf3, 0x17, 0xf1, 0x00, 0x20, + 0xbd, 0xe8, 0xf8, 0x83, 0x6f, 0xf0, 0x1a, 0x00, 0xbd, 0xe8, 0xf8, 0x83, + 0x8c, 0x26, 0x00, 0x00, 0x98, 0x26, 0x00, 0x00, 0x07, 0xb5, 0x00, 0x21, + 0xe7, 0xf3, 0x08, 0xf1, 0x07, 0x4b, 0x4f, 0xf4, 0x00, 0x61, 0x18, 0x60, + 0x06, 0x4b, 0x00, 0xf5, 0x70, 0x60, 0x18, 0x60, 0x00, 0x20, 0x02, 0x46, + 0x04, 0x4b, 0x00, 0x90, 0x01, 0x90, 0xff, 0xf7, 0xb9, 0xff, 0x0e, 0xbd, + 0x9c, 0x26, 0x00, 0x00, 0xf0, 0x07, 0x02, 0x00, 0x6d, 0x60, 0x80, 0x00, + 0x13, 0xb5, 0x22, 0x4c, 0x22, 0x4b, 0x00, 0x21, 0x1c, 0x22, 0x20, 0x46, + 0x01, 0x93, 0xdd, 0xf3, 0xf9, 0xf7, 0x01, 0x23, 0x23, 0x60, 0x1f, 0x4b, + 0x1b, 0x68, 0x43, 0xf8, 0x04, 0x4c, 0x00, 0xf0, 0x83, 0xf9, 0xad, 0xf5, + 0x9e, 0x51, 0x3c, 0x39, 0x0a, 0x46, 0x1b, 0x48, 0xff, 0xf7, 0x10, 0xff, + 0xe2, 0xf3, 0x8a, 0xf3, 0x00, 0xf0, 0x7e, 0xf8, 0x00, 0x20, 0x02, 0xf0, + 0xb7, 0xf9, 0x17, 0x4b, 0x17, 0x4c, 0x18, 0x60, 0x02, 0xf0, 0xac, 0xfb, + 0x20, 0x60, 0xff, 0xf7, 0xbf, 0xff, 0x20, 0x68, 0x00, 0xf0, 0xfa, 0xf8, + 0xe8, 0xf7, 0x86, 0xfc, 0x20, 0x68, 0x00, 0xf0, 0xe1, 0xf8, 0x00, 0x22, + 0x10, 0x48, 0x11, 0x49, 0xe2, 0xf3, 0x28, 0xf5, 0x00, 0x22, 0x10, 0x48, + 0x10, 0x49, 0xe2, 0xf3, 0x23, 0xf5, 0x10, 0x49, 0x00, 0x22, 0x10, 0x48, + 0xe2, 0xf3, 0x1e, 0xf5, 0x20, 0x68, 0xff, 0xf7, 0xe1, 0xfe, 0xff, 0xf7, + 0x1f, 0xff, 0x20, 0x68, 0x1c, 0xbd, 0x00, 0xbf, 0xfc, 0x07, 0x02, 0x00, + 0xad, 0xde, 0xad, 0xde, 0xe4, 0xfe, 0x01, 0x00, 0xe8, 0x35, 0x03, 0x00, + 0x20, 0x08, 0x02, 0x00, 0x8c, 0x26, 0x00, 0x00, 0xd8, 0x1f, 0x86, 0x00, + 0x7d, 0xc5, 0x00, 0x00, 0xdb, 0x1f, 0x86, 0x00, 0x65, 0x65, 0x80, 0x00, + 0x8d, 0x60, 0x80, 0x00, 0xde, 0x1f, 0x86, 0x00, 0x70, 0xb5, 0x1c, 0x4c, + 0xa6, 0x68, 0x00, 0x2e, 0x33, 0xd1, 0x12, 0x09, 0x22, 0x60, 0xa3, 0x81, + 0x02, 0xf5, 0x61, 0x42, 0x4f, 0xf4, 0xe1, 0x33, 0x92, 0xfb, 0xf3, 0xf5, + 0xa0, 0x60, 0x61, 0x60, 0x20, 0x46, 0x03, 0x21, 0x80, 0x22, 0xe2, 0xf3, + 0xcb, 0xf4, 0x20, 0x46, 0x31, 0x46, 0xea, 0xb2, 0xe2, 0xf3, 0xc6, 0xf4, + 0x20, 0x46, 0x01, 0x21, 0x2a, 0x12, 0xe2, 0xf3, 0xc1, 0xf4, 0x03, 0x21, + 0x20, 0x46, 0x0a, 0x46, 0xe2, 0xf3, 0xbc, 0xf4, 0x01, 0x21, 0x20, 0x46, + 0x0a, 0x46, 0xe2, 0xf3, 0xb7, 0xf4, 0x20, 0x46, 0x04, 0x21, 0x08, 0x22, + 0xe2, 0xf3, 0xb2, 0xf4, 0x20, 0x46, 0x02, 0x21, 0x01, 0x22, 0xe2, 0xf3, + 0xad, 0xf4, 0x4f, 0xf4, 0x7a, 0x70, 0xbd, 0xe8, 0x70, 0x40, 0xe2, 0xf3, + 0xf7, 0xb2, 0x70, 0xbd, 0x24, 0x08, 0x02, 0x00, 0x38, 0xb5, 0xa4, 0x20, + 0x00, 0x21, 0xe2, 0xf3, 0x49, 0xf1, 0x13, 0x4c, 0x20, 0x60, 0x00, 0xb3, + 0x00, 0x21, 0xa4, 0x22, 0xdd, 0xf3, 0x5c, 0xf7, 0x4f, 0xf4, 0x80, 0x60, + 0x00, 0x21, 0x25, 0x68, 0xe2, 0xf3, 0x3c, 0xf1, 0xa8, 0x60, 0x20, 0x68, + 0x85, 0x68, 0x2d, 0xb9, 0xe2, 0xf3, 0x9c, 0xf0, 0x25, 0x60, 0x4f, 0xf0, + 0xff, 0x30, 0x38, 0xbd, 0x4f, 0xf4, 0x80, 0x62, 0xc2, 0x60, 0x45, 0x61, + 0x00, 0x21, 0x28, 0x46, 0xdd, 0xf3, 0x44, 0xf7, 0x22, 0x68, 0x04, 0x4b, + 0x00, 0x20, 0x1a, 0x60, 0x38, 0xbd, 0x4f, 0xf0, 0xff, 0x30, 0x38, 0xbd, + 0x34, 0x08, 0x02, 0x00, 0xd4, 0x26, 0x00, 0x00, 0x70, 0xb5, 0x1b, 0x4d, + 0x04, 0x46, 0x2b, 0x68, 0x33, 0xb9, 0x1a, 0x4e, 0x33, 0x68, 0x0b, 0xb9, + 0xff, 0xf7, 0xc6, 0xff, 0x33, 0x68, 0x2b, 0x60, 0x28, 0x68, 0x17, 0x4b, + 0x58, 0x61, 0x30, 0xb3, 0x00, 0x23, 0x03, 0x60, 0xc0, 0xf8, 0x9c, 0x30, + 0x43, 0x60, 0x23, 0x6c, 0x0e, 0x3b, 0x01, 0x2b, 0x03, 0xd9, 0x20, 0x46, + 0x11, 0x49, 0xff, 0xf7, 0xa5, 0xfd, 0x11, 0x4b, 0x9a, 0x68, 0x12, 0xb1, + 0x2a, 0x68, 0xc2, 0xf8, 0x9c, 0x30, 0x00, 0x24, 0x07, 0xe0, 0xd2, 0xf8, + 0x9c, 0x00, 0x18, 0xb1, 0x93, 0x68, 0x19, 0x5d, 0xe2, 0xf3, 0x52, 0xf4, + 0x01, 0x34, 0x2a, 0x68, 0x13, 0x69, 0x9c, 0x42, 0xf3, 0xd3, 0x08, 0x48, + 0x08, 0x49, 0xe2, 0xf3, 0x5d, 0xf4, 0x01, 0x4b, 0x18, 0x68, 0x70, 0xbd, + 0xd4, 0x26, 0x00, 0x00, 0x34, 0x08, 0x02, 0x00, 0xfc, 0x07, 0x02, 0x00, + 0xf9, 0x40, 0x02, 0x00, 0x24, 0x08, 0x02, 0x00, 0xbd, 0x21, 0x86, 0x00, + 0xa5, 0x68, 0x80, 0x00, 0x10, 0xb5, 0x40, 0x22, 0x00, 0x23, 0x06, 0x49, + 0x04, 0x46, 0xff, 0xf7, 0xd5, 0xfd, 0x05, 0x4b, 0x00, 0x22, 0x20, 0x46, + 0x9a, 0x60, 0xbd, 0xe8, 0x10, 0x40, 0xff, 0xf7, 0xab, 0xbf, 0x00, 0xbf, + 0xa9, 0x69, 0x80, 0x00, 0x24, 0x08, 0x02, 0x00, 0x2d, 0xe9, 0xf0, 0x41, + 0x04, 0x46, 0x00, 0xf0, 0xd5, 0xf8, 0x2a, 0x48, 0xe8, 0xf7, 0x00, 0xf8, + 0x20, 0x46, 0xe8, 0xf7, 0xf3, 0xfb, 0x28, 0x4b, 0x28, 0x4a, 0xc3, 0x18, + 0xb3, 0xfb, 0xf2, 0xf3, 0x27, 0x4a, 0x20, 0x46, 0x13, 0x60, 0xe8, 0xf7, + 0x06, 0xfe, 0x00, 0xf5, 0x78, 0x70, 0x07, 0x30, 0x24, 0x4b, 0x4f, 0xf4, + 0x7a, 0x75, 0xb0, 0xfb, 0xf5, 0xf0, 0x18, 0x60, 0x23, 0x6a, 0x22, 0x49, + 0x00, 0x2b, 0x40, 0xf2, 0xff, 0x33, 0xc8, 0xbf, 0x6f, 0xf0, 0x7f, 0x43, + 0xb3, 0xfb, 0xf0, 0xf0, 0x1e, 0x4b, 0x20, 0x22, 0x18, 0x60, 0x00, 0x23, + 0x20, 0x46, 0xff, 0xf7, 0x99, 0xfd, 0x00, 0x20, 0x1b, 0x49, 0xde, 0xf3, + 0x47, 0xf3, 0x1b, 0x4f, 0x06, 0x46, 0x38, 0x60, 0xf8, 0xb1, 0x20, 0x46, + 0xe8, 0xf7, 0xc4, 0xfb, 0xb6, 0xfb, 0xf0, 0xf8, 0xa8, 0xf1, 0x02, 0x08, + 0xb8, 0xf1, 0x00, 0x0f, 0x15, 0xdd, 0x15, 0x4e, 0x00, 0x21, 0x34, 0x22, + 0x30, 0x46, 0xdd, 0xf3, 0x97, 0xf6, 0x13, 0x4b, 0x74, 0x60, 0xb3, 0x60, + 0x30, 0x46, 0x05, 0xfb, 0x08, 0xf1, 0x01, 0x22, 0xe1, 0xf3, 0x68, 0xf7, + 0x28, 0xb1, 0x39, 0x68, 0x20, 0x46, 0xbd, 0xe8, 0xf0, 0x41, 0xe0, 0xf3, + 0x71, 0xb2, 0xbd, 0xe8, 0xf0, 0x81, 0x00, 0xbf, 0x79, 0xc7, 0x00, 0x00, + 0x3f, 0x42, 0x0f, 0x00, 0x40, 0x42, 0x0f, 0x00, 0xd0, 0x25, 0x00, 0x00, + 0xc8, 0x25, 0x00, 0x00, 0x01, 0x67, 0x80, 0x00, 0xcc, 0x25, 0x00, 0x00, + 0x1e, 0xc9, 0x01, 0x00, 0xe8, 0x26, 0x00, 0x00, 0x3c, 0x08, 0x02, 0x00, + 0xe5, 0x66, 0x80, 0x00, 0x0d, 0x4b, 0x00, 0x21, 0x1a, 0x68, 0x42, 0xf0, + 0x10, 0x02, 0x1a, 0x60, 0x1a, 0x68, 0x22, 0xf4, 0x00, 0x72, 0x1a, 0x60, + 0x09, 0x4a, 0x13, 0x68, 0x43, 0xf0, 0x80, 0x73, 0x43, 0xf4, 0x80, 0x33, + 0x13, 0x60, 0x07, 0x4b, 0x07, 0x22, 0x1a, 0x60, 0x43, 0xf8, 0x04, 0x1c, + 0x59, 0x68, 0x5a, 0x60, 0x04, 0x4b, 0x20, 0x22, 0x1a, 0x60, 0x70, 0x47, + 0x14, 0xed, 0x00, 0xe0, 0xfc, 0xed, 0x00, 0xe0, 0x24, 0x10, 0x00, 0xe0, + 0x00, 0xe4, 0x00, 0xe0, 0x2d, 0xe9, 0xf8, 0x43, 0x04, 0x46, 0x1e, 0x46, + 0x90, 0x46, 0x0d, 0x46, 0xe6, 0xf3, 0x9c, 0xf6, 0x20, 0x46, 0xe6, 0xf3, + 0x5d, 0xf5, 0x41, 0x46, 0x32, 0x46, 0x07, 0x46, 0x20, 0x46, 0xe6, 0xf3, + 0x17, 0xf7, 0x20, 0x46, 0xe6, 0xf3, 0xd0, 0xf5, 0x40, 0xf6, 0x2a, 0x01, + 0x06, 0x46, 0x00, 0x22, 0x20, 0x46, 0xe6, 0xf3, 0x0d, 0xf7, 0x4f, 0xf0, + 0x01, 0x08, 0x81, 0x46, 0x85, 0xb1, 0x08, 0xfa, 0x06, 0xf5, 0x83, 0x69, + 0x33, 0xea, 0x05, 0x05, 0x02, 0xd1, 0x40, 0x46, 0xe7, 0xf7, 0x0c, 0xff, + 0x01, 0x36, 0x01, 0x20, 0xb0, 0x40, 0xe7, 0xf7, 0xe9, 0xfe, 0xc9, 0xf8, + 0x18, 0x50, 0x0e, 0xe0, 0x70, 0x1c, 0x08, 0xfa, 0x06, 0xf6, 0x08, 0xfa, + 0x00, 0xf0, 0xe7, 0xf7, 0xfd, 0xfe, 0x40, 0x46, 0xe7, 0xf7, 0xdc, 0xfe, + 0xd9, 0xf8, 0x18, 0x30, 0x1e, 0x43, 0xc9, 0xf8, 0x18, 0x60, 0x20, 0x46, + 0x39, 0x46, 0xbd, 0xe8, 0xf8, 0x43, 0xe6, 0xf3, 0xf5, 0xb6, 0x00, 0x00, + 0x2d, 0xe9, 0xf8, 0x43, 0x04, 0x46, 0xe6, 0xf3, 0x59, 0xf6, 0x20, 0x46, + 0x40, 0xf6, 0x0e, 0x01, 0x00, 0x22, 0xe6, 0xf3, 0xd7, 0xf6, 0x05, 0x46, + 0x00, 0x28, 0x2f, 0xd0, 0x07, 0x68, 0xd0, 0xf8, 0x00, 0x80, 0x20, 0x46, + 0xe6, 0xf3, 0x20, 0xf5, 0x04, 0x28, 0x06, 0x46, 0x05, 0xd8, 0x25, 0xd1, + 0x08, 0xf4, 0xe0, 0x28, 0xb8, 0xf5, 0x40, 0x3f, 0x20, 0xd1, 0x00, 0x20, + 0x44, 0x49, 0xde, 0xf3, 0x7f, 0xf2, 0xd8, 0xb9, 0x07, 0xf0, 0xf0, 0x07, + 0x3f, 0x09, 0x0f, 0xe0, 0x01, 0x3f, 0x07, 0x2e, 0x2f, 0x61, 0x08, 0xd9, + 0x0c, 0x2e, 0x06, 0xd0, 0x2b, 0x6c, 0x03, 0xf4, 0x40, 0x63, 0xb3, 0xf5, + 0x40, 0x6f, 0x00, 0xd0, 0x10, 0xb1, 0x3b, 0x4b, 0x01, 0x20, 0x6b, 0x61, + 0x00, 0x2f, 0xed, 0xd1, 0xd5, 0xf8, 0xe8, 0x31, 0x23, 0xf0, 0x10, 0x03, + 0xc5, 0xf8, 0xe8, 0x31, 0x00, 0x22, 0x40, 0xf6, 0x2a, 0x01, 0x20, 0x46, + 0xe6, 0xf3, 0x9e, 0xf6, 0x33, 0x4d, 0x40, 0xf2, 0xdd, 0x56, 0x28, 0x60, + 0x20, 0x46, 0xe6, 0xf3, 0xe9, 0xf4, 0x31, 0x4b, 0x18, 0x60, 0x2b, 0x68, + 0x1a, 0x68, 0x42, 0xf0, 0x80, 0x72, 0x1a, 0x60, 0x1a, 0x68, 0x42, 0xf0, + 0x02, 0x02, 0x1a, 0x60, 0x00, 0x22, 0xc3, 0xf8, 0xe0, 0x21, 0x02, 0xe0, + 0x0a, 0x20, 0xe2, 0xf3, 0x33, 0xf1, 0x2b, 0x68, 0xd3, 0xf8, 0xe0, 0x31, + 0x9b, 0x03, 0x01, 0xd4, 0x01, 0x3e, 0xf5, 0xd1, 0x00, 0x21, 0x0b, 0x46, + 0x20, 0x46, 0x4f, 0xf4, 0x00, 0x62, 0xff, 0xf7, 0x4f, 0xff, 0x00, 0x21, + 0x0b, 0x46, 0x20, 0x46, 0x40, 0xf6, 0x12, 0x02, 0xff, 0xf7, 0x48, 0xff, + 0x00, 0x21, 0x0b, 0x46, 0x20, 0x46, 0x40, 0xf6, 0x29, 0x02, 0xff, 0xf7, + 0x41, 0xff, 0x20, 0x46, 0x01, 0x21, 0xe8, 0xf7, 0x77, 0xfa, 0x00, 0x20, + 0x18, 0x49, 0xde, 0xf3, 0x1f, 0xf2, 0xf0, 0xb1, 0x20, 0x46, 0xe6, 0xf3, + 0x9d, 0xf4, 0x40, 0xf6, 0x2a, 0x01, 0x06, 0x46, 0x00, 0x22, 0x20, 0x46, + 0xe6, 0xf3, 0x56, 0xf6, 0xd0, 0xf8, 0x14, 0x90, 0x07, 0x46, 0xd0, 0xf8, + 0x98, 0x80, 0x20, 0x46, 0xe6, 0xf3, 0x8e, 0xf4, 0x01, 0x23, 0x83, 0x40, + 0x43, 0xea, 0x09, 0x03, 0x7b, 0x61, 0x48, 0xf0, 0x01, 0x03, 0xc7, 0xf8, + 0x98, 0x30, 0x20, 0x46, 0x31, 0x46, 0xe6, 0xf3, 0x53, 0xf6, 0x2b, 0x68, + 0x1a, 0x6a, 0x42, 0xf0, 0x03, 0x02, 0x1a, 0x62, 0xbd, 0xe8, 0xf8, 0x83, + 0x29, 0xc9, 0x01, 0x00, 0xff, 0x7f, 0x01, 0x21, 0x70, 0x08, 0x02, 0x00, + 0x74, 0x08, 0x02, 0x00, 0x1e, 0xc9, 0x01, 0x00, 0x10, 0xb5, 0x84, 0x69, + 0xa0, 0x68, 0xfc, 0xf7, 0x83, 0xfd, 0xe0, 0x68, 0xe8, 0xf7, 0x1b, 0xfc, + 0x00, 0x20, 0x10, 0xbd, 0x10, 0xb5, 0x84, 0x69, 0x00, 0x21, 0x34, 0x22, + 0x04, 0xf1, 0x1c, 0x00, 0xdd, 0xf3, 0x40, 0xf5, 0x03, 0x4b, 0xa0, 0x68, + 0x63, 0x62, 0x24, 0x62, 0xeb, 0xf7, 0xea, 0xf8, 0x00, 0x20, 0x10, 0xbd, + 0x05, 0xaa, 0x80, 0x00, 0x2d, 0xe9, 0xf3, 0x47, 0x25, 0x4d, 0x99, 0x46, + 0x2b, 0x68, 0x06, 0x46, 0x07, 0x2b, 0x0f, 0x46, 0x92, 0x46, 0x3d, 0xdc, + 0x01, 0xf0, 0xfe, 0xfe, 0x50, 0x21, 0x80, 0x46, 0xe2, 0xf3, 0x6e, 0xf3, + 0x04, 0x46, 0x00, 0x28, 0x37, 0xd0, 0x00, 0x21, 0x50, 0x22, 0xdd, 0xf3, + 0x1f, 0xf5, 0x2b, 0x68, 0xa4, 0xf8, 0x14, 0x90, 0x84, 0xe8, 0x48, 0x00, + 0x27, 0x61, 0xc4, 0xf8, 0x0c, 0x80, 0x20, 0x46, 0x41, 0xf2, 0xe4, 0x41, + 0x4a, 0x46, 0x43, 0x46, 0x8d, 0xe8, 0x80, 0x04, 0xfc, 0xf7, 0xea, 0xfb, + 0xa0, 0x60, 0xf8, 0xb1, 0x00, 0x20, 0x0a, 0x99, 0x0b, 0x9a, 0x11, 0x4b, + 0x8d, 0xe8, 0x40, 0x04, 0xff, 0xf7, 0xb4, 0xfc, 0x18, 0xb1, 0xa0, 0x68, + 0xfc, 0xf7, 0x36, 0xfd, 0x10, 0xe0, 0xa0, 0x68, 0xe4, 0xf3, 0x00, 0xf7, + 0x0b, 0x49, 0xa0, 0x61, 0x2a, 0x68, 0x30, 0x46, 0xdd, 0xf3, 0x4a, 0xf5, + 0x09, 0x48, 0x31, 0x46, 0xeb, 0xf7, 0xc4, 0xf8, 0x2b, 0x68, 0x01, 0x33, + 0x2b, 0x60, 0x02, 0xe0, 0x00, 0x24, 0x00, 0xe0, 0x04, 0x46, 0x20, 0x46, + 0xbd, 0xe8, 0xfc, 0x87, 0x78, 0x08, 0x02, 0x00, 0x31, 0xaa, 0x80, 0x00, + 0xe8, 0x8d, 0x02, 0x00, 0xc8, 0x8d, 0x02, 0x00, 0x01, 0x46, 0x80, 0x68, + 0x50, 0x22, 0xe2, 0xf3, 0x33, 0xb3, 0x00, 0x00, 0x2d, 0xe9, 0xf0, 0x41, + 0xdf, 0xf8, 0x68, 0x80, 0x1f, 0x46, 0x98, 0xf8, 0x00, 0x30, 0x05, 0x46, + 0x07, 0x2b, 0x14, 0x46, 0x21, 0xd8, 0x38, 0x46, 0x4c, 0x21, 0xe2, 0xf3, + 0x13, 0xf3, 0x06, 0x46, 0xe0, 0xb1, 0x00, 0x21, 0x4c, 0x22, 0xdd, 0xf3, + 0xc5, 0xf4, 0x98, 0xf8, 0x00, 0x30, 0xb4, 0x60, 0x86, 0xf8, 0x44, 0x30, + 0x01, 0x33, 0x88, 0xf8, 0x00, 0x30, 0x02, 0x23, 0x86, 0xe8, 0xa0, 0x00, + 0xb3, 0x64, 0x38, 0x46, 0x08, 0x21, 0xe2, 0xf3, 0xfd, 0xf2, 0x04, 0x46, + 0x30, 0x64, 0x40, 0xb1, 0x00, 0x21, 0x08, 0x22, 0xdd, 0xf3, 0xae, 0xf4, + 0x00, 0xe0, 0x00, 0x26, 0x30, 0x46, 0xbd, 0xe8, 0xf0, 0x81, 0x31, 0x46, + 0x4c, 0x22, 0xe2, 0xf3, 0xfd, 0xf2, 0x26, 0x46, 0xf6, 0xe7, 0x00, 0xbf, + 0x7c, 0x08, 0x02, 0x00, 0xc2, 0x6b, 0x1a, 0xb1, 0x00, 0x23, 0x53, 0x62, + 0x82, 0x6b, 0x53, 0x62, 0xc0, 0x68, 0xff, 0xf7, 0xb7, 0xbf, 0x00, 0x00, + 0x2d, 0xe9, 0xf0, 0x4f, 0xd1, 0xf8, 0xfc, 0x30, 0x91, 0xb0, 0x0b, 0x93, + 0x03, 0xf5, 0x60, 0x63, 0x04, 0x46, 0x09, 0x93, 0x3c, 0xe1, 0x0e, 0x22, + 0x00, 0x23, 0x20, 0x46, 0x0b, 0xa9, 0xdb, 0xf3, 0xc9, 0xf6, 0x0f, 0x28, + 0x06, 0x46, 0x00, 0xf0, 0x3b, 0x81, 0x00, 0x22, 0x20, 0x46, 0x0b, 0xa9, + 0x13, 0x46, 0xdb, 0xf3, 0xbf, 0xf6, 0x10, 0xf0, 0x0e, 0x0f, 0x40, 0xf0, + 0x2e, 0x81, 0x9a, 0x4b, 0x00, 0xf4, 0xf8, 0x77, 0x33, 0x40, 0x40, 0xf2, + 0x3b, 0x42, 0x1b, 0x0a, 0x3f, 0x09, 0xb2, 0xeb, 0x16, 0x5f, 0x04, 0xd1, + 0x40, 0xf6, 0xff, 0x72, 0x93, 0x42, 0x00, 0xf0, 0x19, 0x81, 0x00, 0xf4, + 0x78, 0x52, 0x51, 0x0a, 0x08, 0x91, 0x00, 0x2a, 0x00, 0xf0, 0x12, 0x81, + 0x00, 0xf4, 0xf8, 0x2b, 0x00, 0xf4, 0x78, 0x02, 0xd2, 0x0c, 0x4f, 0xea, + 0x9b, 0x3b, 0x07, 0x92, 0x12, 0xeb, 0x0b, 0x02, 0x19, 0xd1, 0x40, 0xf2, + 0x67, 0x31, 0x8b, 0x42, 0x40, 0xf0, 0x02, 0x81, 0x0c, 0xab, 0x01, 0x93, + 0x0d, 0xab, 0x02, 0x93, 0x0e, 0xab, 0x03, 0x93, 0x0f, 0xab, 0x04, 0x93, + 0x20, 0x46, 0x0b, 0xa9, 0x13, 0x46, 0x00, 0x92, 0xdb, 0xf3, 0x24, 0xf6, + 0x00, 0x28, 0x00, 0xf0, 0xf1, 0x80, 0x0c, 0x9b, 0xc4, 0xf8, 0x54, 0x33, + 0xec, 0xe0, 0xd4, 0xf8, 0xcc, 0x50, 0x04, 0xeb, 0x85, 0x02, 0xc2, 0xf8, + 0xd4, 0x62, 0xc2, 0xf8, 0x14, 0x03, 0x05, 0xf1, 0x34, 0x02, 0x44, 0xf8, + 0x22, 0x30, 0x00, 0x26, 0x0b, 0xe0, 0x01, 0x22, 0x20, 0x46, 0x0b, 0xa9, + 0x13, 0x46, 0xdb, 0xf3, 0x6b, 0xf6, 0x00, 0xf0, 0x0e, 0x00, 0x02, 0x28, + 0x40, 0xf0, 0xd9, 0x80, 0x01, 0x36, 0xbe, 0x42, 0xf1, 0xd1, 0x00, 0x27, + 0x3a, 0x46, 0x0c, 0xae, 0x0d, 0xf1, 0x34, 0x08, 0x0d, 0xf1, 0x38, 0x09, + 0x0d, 0xf1, 0x3c, 0x0a, 0x20, 0x46, 0x0b, 0xa9, 0x3b, 0x46, 0x00, 0x97, + 0x01, 0x96, 0xcd, 0xf8, 0x08, 0x80, 0xcd, 0xf8, 0x0c, 0x90, 0xcd, 0xf8, + 0x10, 0xa0, 0xdb, 0xf3, 0xeb, 0xf5, 0x02, 0x46, 0xc0, 0xb9, 0x40, 0x23, + 0x8d, 0xe8, 0x48, 0x03, 0x20, 0x46, 0x0b, 0xa9, 0x13, 0x46, 0xcd, 0xf8, + 0x10, 0xa0, 0xdb, 0xf3, 0xdf, 0xf5, 0x60, 0xb9, 0x0d, 0x9b, 0x00, 0x2b, + 0x40, 0xf0, 0xaf, 0x80, 0x0f, 0x9f, 0x00, 0x2f, 0x40, 0xf0, 0xab, 0x80, + 0x0e, 0x9b, 0xb3, 0xf5, 0x80, 0x5f, 0x01, 0xd0, 0xa5, 0xe0, 0x01, 0x27, + 0x0c, 0x9a, 0x05, 0xf1, 0x44, 0x03, 0x44, 0xf8, 0x23, 0x20, 0x0e, 0x9a, + 0x05, 0xf1, 0x74, 0x03, 0x44, 0xf8, 0x23, 0x20, 0x01, 0x26, 0x0c, 0xab, + 0x01, 0x93, 0x0d, 0xab, 0x02, 0x93, 0x0e, 0xab, 0x03, 0x93, 0x0f, 0xab, + 0x00, 0x22, 0x04, 0x93, 0x20, 0x46, 0x0b, 0xa9, 0x33, 0x46, 0x00, 0x92, + 0xdb, 0xf3, 0xb6, 0xf5, 0x70, 0xb1, 0x01, 0x2e, 0x0c, 0xd1, 0x0e, 0x9b, + 0xb3, 0xf5, 0x80, 0x5f, 0x08, 0xd1, 0x0c, 0x99, 0x05, 0xf1, 0x64, 0x02, + 0x44, 0xf8, 0x22, 0x10, 0x05, 0xf1, 0x84, 0x02, 0x44, 0xf8, 0x22, 0x30, + 0x01, 0x36, 0x00, 0x28, 0xdd, 0xd1, 0x01, 0x26, 0x19, 0xe0, 0x43, 0x46, + 0x00, 0xe0, 0x00, 0x23, 0x00, 0x22, 0x00, 0x92, 0x0c, 0xaa, 0x01, 0x92, + 0x0d, 0xaa, 0x02, 0x92, 0x0e, 0xaa, 0x03, 0x92, 0x0f, 0xaa, 0x04, 0x92, + 0x20, 0x46, 0x0b, 0xa9, 0x32, 0x46, 0x03, 0xf1, 0x01, 0x08, 0xdb, 0xf3, + 0x8d, 0xf5, 0x00, 0x28, 0xe9, 0xd1, 0xb8, 0xf1, 0x00, 0x0f, 0x5c, 0xd0, + 0x01, 0x36, 0x08, 0x9a, 0x96, 0x42, 0xe4, 0xd1, 0x00, 0x26, 0x1f, 0xe0, + 0xc0, 0x23, 0x00, 0x93, 0x0c, 0xab, 0x01, 0x93, 0x0d, 0xab, 0x02, 0x93, + 0x0e, 0xab, 0x03, 0x93, 0x0f, 0xab, 0x04, 0x93, 0x20, 0x46, 0x0b, 0xa9, + 0x32, 0x46, 0x00, 0x23, 0xdb, 0xf3, 0x72, 0xf5, 0x00, 0x28, 0x44, 0xd0, + 0x0f, 0x9b, 0x00, 0x2b, 0x41, 0xd1, 0x0e, 0x9b, 0xb3, 0xf5, 0x80, 0x5f, + 0x3d, 0xd1, 0x26, 0xb9, 0x0c, 0x9a, 0x04, 0xeb, 0x85, 0x03, 0xc3, 0xf8, + 0x94, 0x22, 0x01, 0x36, 0x5e, 0x45, 0xdd, 0xd1, 0x00, 0x26, 0x24, 0xe0, + 0x80, 0x23, 0x00, 0x93, 0x0c, 0xab, 0x01, 0x93, 0x0d, 0xab, 0x02, 0x93, + 0x0e, 0xab, 0x03, 0x93, 0x0f, 0xab, 0x04, 0x93, 0x08, 0x9b, 0x20, 0x46, + 0x01, 0x2b, 0x0c, 0xbf, 0x32, 0x46, 0x72, 0x1c, 0x0b, 0xa9, 0x00, 0x23, + 0xdb, 0xf3, 0x4a, 0xf5, 0xe8, 0xb1, 0x0f, 0x9b, 0xdb, 0xb9, 0x0e, 0x9b, + 0xb3, 0xf5, 0x80, 0x5f, 0x17, 0xd1, 0xbb, 0xf1, 0x00, 0x0f, 0x05, 0xd1, + 0x26, 0xb9, 0x0c, 0x9a, 0x04, 0xeb, 0x85, 0x03, 0xc3, 0xf8, 0x94, 0x22, + 0x01, 0x36, 0x07, 0x99, 0x8e, 0x42, 0xd7, 0xd1, 0x27, 0xb9, 0xd4, 0xf8, + 0xcc, 0x30, 0x01, 0x33, 0xc4, 0xf8, 0xcc, 0x30, 0x0b, 0x9b, 0x09, 0x9a, + 0x93, 0x42, 0xff, 0xf4, 0xbe, 0xae, 0x00, 0x23, 0xc4, 0xf8, 0xcc, 0x30, + 0x11, 0xb0, 0xbd, 0xe8, 0xf0, 0x8f, 0x00, 0xbf, 0x00, 0xff, 0x0f, 0x00, + 0x82, 0x60, 0x41, 0x60, 0x01, 0x60, 0x70, 0x47, 0x0e, 0xb4, 0xf3, 0xb5, + 0x81, 0x68, 0x04, 0x46, 0x01, 0x29, 0x45, 0xd9, 0x08, 0xab, 0x40, 0x68, + 0x07, 0x9a, 0x01, 0x93, 0xdd, 0xf3, 0x66, 0xf4, 0x43, 0x1c, 0x06, 0x46, + 0x03, 0xd0, 0xa3, 0x68, 0x02, 0x3b, 0x98, 0x42, 0x02, 0xdd, 0x00, 0x20, + 0xa0, 0x60, 0x36, 0xe0, 0x60, 0x68, 0x3d, 0x21, 0xdd, 0xf3, 0x86, 0xf3, + 0x40, 0xb3, 0x67, 0x68, 0x25, 0x68, 0xc7, 0x1b, 0x21, 0xe0, 0x28, 0x46, + 0x3a, 0x46, 0xdd, 0xf3, 0x99, 0xf2, 0xb0, 0xb9, 0xeb, 0x5d, 0x3d, 0x2b, + 0x13, 0xd1, 0x28, 0x46, 0xdd, 0xf3, 0xa2, 0xf3, 0x62, 0x68, 0x47, 0x1c, + 0x73, 0x1c, 0xdb, 0x1b, 0x52, 0x1b, 0xe9, 0x19, 0xd2, 0x18, 0x28, 0x46, + 0xdd, 0xf3, 0xda, 0xf2, 0x63, 0x68, 0xdb, 0x1b, 0x63, 0x60, 0xa3, 0x68, + 0xdf, 0x19, 0xa7, 0x60, 0x08, 0xe0, 0x2b, 0x46, 0x13, 0xf8, 0x01, 0x2b, + 0x1d, 0x46, 0x00, 0x2a, 0xfa, 0xd1, 0x61, 0x68, 0x8d, 0x42, 0xda, 0xd3, + 0xa3, 0x68, 0x70, 0x1c, 0x1b, 0x1a, 0xa3, 0x60, 0x63, 0x68, 0x1b, 0x18, + 0x63, 0x60, 0x00, 0xe0, 0x00, 0x20, 0xbd, 0xe8, 0xfc, 0x40, 0x03, 0xb0, + 0x70, 0x47, 0x2d, 0xe9, 0xf0, 0x41, 0x55, 0x1a, 0x01, 0x2d, 0x0c, 0x46, + 0x1f, 0x46, 0x06, 0x9e, 0x0e, 0xdd, 0x29, 0x46, 0xe2, 0xf3, 0x28, 0xf1, + 0x80, 0x46, 0x70, 0xb1, 0x21, 0x46, 0x2a, 0x46, 0xdd, 0xf3, 0x76, 0xf2, + 0xc7, 0xf8, 0x00, 0x80, 0x00, 0x20, 0x35, 0x60, 0xbd, 0xe8, 0xf0, 0x81, + 0x00, 0x20, 0x18, 0x60, 0x30, 0x60, 0xbd, 0xe8, 0xf0, 0x81, 0x6f, 0xf0, + 0x1a, 0x00, 0xbd, 0xe8, 0xf0, 0x81, 0x00, 0x00, 0x2d, 0xe9, 0xf0, 0x4f, + 0xa7, 0xb0, 0x0e, 0x91, 0x4f, 0xf4, 0x80, 0x51, 0x0d, 0x90, 0x0f, 0x92, + 0x10, 0x93, 0xe2, 0xf3, 0x07, 0xf1, 0x09, 0x90, 0x00, 0x28, 0x01, 0xf0, + 0xdf, 0x80, 0x23, 0xa8, 0x09, 0x99, 0x4f, 0xf4, 0x80, 0x52, 0xff, 0xf7, + 0x75, 0xff, 0x4f, 0xf4, 0x80, 0x52, 0x09, 0x98, 0x00, 0x21, 0xdd, 0xf3, + 0xaf, 0xf2, 0x00, 0x23, 0x4f, 0xf0, 0xff, 0x32, 0x8d, 0xf8, 0x4c, 0x30, + 0x07, 0x92, 0x0b, 0x93, 0x08, 0x93, 0x01, 0xf0, 0x94, 0xb8, 0x0e, 0x9b, + 0x01, 0x22, 0x53, 0xf8, 0x04, 0x5b, 0x0c, 0x92, 0x0e, 0x93, 0x00, 0x23, + 0x0a, 0x93, 0x0c, 0x9a, 0x15, 0xf8, 0x03, 0xb0, 0x42, 0xb1, 0x0b, 0xf1, + 0xff, 0x32, 0xd2, 0xb2, 0x5f, 0x1c, 0xfd, 0x2a, 0x0d, 0xd8, 0xee, 0x5d, + 0x9f, 0x1c, 0x0b, 0xe0, 0x0b, 0xf1, 0xff, 0x32, 0xd2, 0xb2, 0xfd, 0x2a, + 0x96, 0xbf, 0x5e, 0x46, 0x0c, 0x9e, 0x4f, 0xf0, 0x80, 0x0b, 0x5f, 0x1c, + 0x00, 0xe0, 0x00, 0x26, 0xbb, 0x19, 0xb3, 0xf5, 0x60, 0x7f, 0x81, 0xf2, + 0x6b, 0x80, 0xbb, 0xf1, 0x20, 0x0f, 0x28, 0xd0, 0x07, 0xd8, 0xbb, 0xf1, + 0x15, 0x0f, 0x0d, 0xd0, 0xbb, 0xf1, 0x1b, 0x0f, 0x41, 0xf0, 0x5a, 0x80, + 0x5f, 0xe0, 0xbb, 0xf1, 0x22, 0x0f, 0x33, 0xd0, 0x2e, 0xd3, 0xbb, 0xf1, + 0x80, 0x0f, 0x41, 0xf0, 0x51, 0x80, 0x5c, 0xe0, 0xeb, 0x19, 0x5a, 0x78, + 0xeb, 0x5d, 0x12, 0x02, 0xd3, 0x18, 0x07, 0x2b, 0x0f, 0xdd, 0xbc, 0x1c, + 0x2c, 0x19, 0x83, 0x49, 0x22, 0x46, 0x23, 0xa8, 0xff, 0xf7, 0x20, 0xff, + 0x20, 0x46, 0xdd, 0xf3, 0xe9, 0xf2, 0xfa, 0x1c, 0x12, 0x18, 0x7f, 0x49, + 0x23, 0xa8, 0xaa, 0x18, 0x0e, 0xe0, 0xec, 0x19, 0x62, 0x78, 0xeb, 0x5d, + 0x12, 0x02, 0xd2, 0x18, 0x7b, 0x49, 0x23, 0xa8, 0xff, 0xf7, 0x0e, 0xff, + 0xe3, 0x78, 0xa2, 0x78, 0x79, 0x49, 0x1b, 0x02, 0x23, 0xa8, 0x9a, 0x18, + 0xff, 0xf7, 0x06, 0xff, 0x01, 0xf0, 0x26, 0xb8, 0xeb, 0x5d, 0x0a, 0x93, + 0x01, 0xf0, 0x22, 0xb8, 0x0a, 0x9a, 0x0c, 0x2a, 0x00, 0xf0, 0xef, 0x87, + 0x9d, 0xf8, 0x4c, 0x30, 0x00, 0x2b, 0x41, 0xf0, 0x19, 0x80, 0xeb, 0x5d, + 0x04, 0x2b, 0x41, 0xf0, 0x15, 0x80, 0x07, 0xf1, 0x02, 0x08, 0x05, 0xeb, + 0x08, 0x04, 0x20, 0x46, 0xdd, 0xf3, 0xb4, 0xf6, 0x00, 0x28, 0x41, 0xf0, + 0x0b, 0x80, 0x15, 0xf8, 0x08, 0x30, 0xd8, 0x07, 0x01, 0xf1, 0x06, 0x80, + 0x20, 0x46, 0x13, 0xa9, 0xdd, 0xf3, 0xf0, 0xf4, 0x07, 0x9b, 0x01, 0x33, + 0x40, 0xf0, 0xfe, 0x87, 0xeb, 0x19, 0x9a, 0x79, 0xdb, 0x79, 0x12, 0x02, + 0xbf, 0xe3, 0xeb, 0x19, 0xda, 0x79, 0x23, 0xa8, 0x9b, 0x79, 0x5e, 0x49, + 0xaf, 0xe0, 0xeb, 0x5d, 0xec, 0x19, 0x82, 0x2b, 0x00, 0xf2, 0xee, 0x87, + 0xdf, 0xe8, 0x13, 0xf0, 0x9b, 0x00, 0xba, 0x00, 0x30, 0x01, 0xeb, 0x01, + 0xab, 0x02, 0xe7, 0x01, 0xac, 0x01, 0xb7, 0x01, 0x3c, 0x01, 0xbf, 0x02, + 0xd3, 0x02, 0xe4, 0x02, 0xe9, 0x02, 0xec, 0x07, 0x50, 0x02, 0xdc, 0x01, + 0xec, 0x07, 0x00, 0x03, 0x1b, 0x03, 0x9f, 0x00, 0x38, 0x03, 0x3c, 0x03, + 0x4a, 0x03, 0x4e, 0x03, 0xf5, 0x00, 0x98, 0x03, 0xec, 0x07, 0x63, 0x01, + 0xb7, 0x03, 0x69, 0x01, 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, 0xbf, 0x03, + 0xd0, 0x03, 0xd3, 0x03, 0x24, 0x04, 0x06, 0x05, 0xec, 0x07, 0xec, 0x07, + 0xd6, 0x05, 0x93, 0x00, 0x8b, 0x00, 0x83, 0x00, 0x90, 0x06, 0x97, 0x06, + 0x9e, 0x06, 0xa5, 0x06, 0xec, 0x07, 0xf4, 0x02, 0x5f, 0x01, 0xec, 0x07, + 0xec, 0x07, 0xfc, 0x00, 0xb8, 0x07, 0xac, 0x06, 0xec, 0x07, 0xec, 0x07, + 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, + 0x6f, 0x01, 0xd5, 0x06, 0xe7, 0x06, 0x05, 0x07, 0x23, 0x07, 0x41, 0x07, + 0x5f, 0x07, 0x7d, 0x07, 0x9a, 0x07, 0xa1, 0x07, 0xec, 0x07, 0x74, 0x01, + 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, + 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, + 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, + 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, + 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, + 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, + 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, + 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, + 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, 0xec, 0x07, + 0xa8, 0x07, 0x4f, 0xea, 0x96, 0x0a, 0x5f, 0xfa, 0x8a, 0xfa, 0x4f, 0xf0, + 0x00, 0x08, 0x00, 0xf0, 0xc7, 0xbd, 0x4f, 0xea, 0x56, 0x09, 0x5f, 0xfa, + 0x89, 0xf9, 0x4f, 0xf0, 0x00, 0x08, 0x00, 0xf0, 0x93, 0xbd, 0x4f, 0xea, + 0x56, 0x09, 0x5f, 0xfa, 0x89, 0xf9, 0x4f, 0xf0, 0x00, 0x08, 0x00, 0xf0, + 0x7a, 0xbd, 0x23, 0xa8, 0x0c, 0x49, 0x00, 0xf0, 0x1b, 0xbf, 0xe3, 0x78, + 0x22, 0x79, 0x1b, 0x04, 0x43, 0xea, 0x02, 0x63, 0x62, 0x78, 0x09, 0x49, + 0x13, 0x43, 0xa2, 0x78, 0x23, 0xa8, 0x43, 0xea, 0x02, 0x22, 0x15, 0xe7, + 0xcc, 0x8e, 0x02, 0x00, 0x36, 0x91, 0x02, 0x00, 0x8a, 0x8e, 0x02, 0x00, + 0x2d, 0x92, 0x02, 0x00, 0xee, 0x94, 0x02, 0x00, 0x65, 0x90, 0x02, 0x00, + 0x01, 0x8e, 0x02, 0x00, 0xa2, 0x78, 0x63, 0x78, 0x12, 0x02, 0xd2, 0x18, + 0x9f, 0x49, 0x23, 0xa8, 0xff, 0xf7, 0x08, 0xfe, 0x22, 0x79, 0xe3, 0x78, + 0x12, 0x02, 0x23, 0xa8, 0x9c, 0x49, 0xd2, 0x18, 0xff, 0xf7, 0x00, 0xfe, + 0x06, 0x2e, 0x40, 0xf2, 0x1f, 0x87, 0xa2, 0x79, 0x63, 0x79, 0x12, 0x02, + 0x23, 0xa8, 0x98, 0x49, 0xd2, 0x18, 0xff, 0xf7, 0xf5, 0xfd, 0x08, 0x2e, + 0x40, 0xf2, 0x14, 0x87, 0x23, 0x7a, 0xe2, 0x79, 0x1b, 0x02, 0x23, 0xa8, + 0x93, 0x49, 0x9a, 0x18, 0xff, 0xf7, 0xea, 0xfd, 0x0a, 0x2e, 0x40, 0xf2, + 0x09, 0x87, 0x07, 0xf1, 0x0a, 0x08, 0x07, 0xf1, 0x09, 0x04, 0x15, 0xf8, + 0x08, 0x20, 0x2b, 0x5d, 0x12, 0x02, 0xd2, 0x18, 0x23, 0xa8, 0x8c, 0x49, + 0xff, 0xf7, 0xda, 0xfd, 0x15, 0xf8, 0x08, 0x30, 0x2a, 0x5d, 0x1b, 0x02, + 0x70, 0xe0, 0xa3, 0x78, 0x62, 0x78, 0x1b, 0x02, 0x9a, 0x18, 0x07, 0x92, + 0x00, 0xf0, 0xf0, 0xbe, 0x85, 0x4b, 0x06, 0x22, 0xb6, 0xfb, 0xf2, 0xf2, + 0x1a, 0x70, 0x4f, 0xf0, 0x00, 0x08, 0x99, 0x46, 0x24, 0xe0, 0x43, 0x46, + 0x10, 0x21, 0x81, 0x4a, 0x1b, 0xa8, 0xdd, 0xf3, 0x3f, 0xf1, 0x43, 0x46, + 0x10, 0x21, 0x7f, 0x4a, 0x1f, 0xa8, 0xdd, 0xf3, 0x39, 0xf1, 0x63, 0x78, + 0xa2, 0x78, 0x1b, 0xa9, 0x43, 0xea, 0x02, 0x22, 0x23, 0xa8, 0xff, 0xf7, + 0xb1, 0xfd, 0x63, 0x79, 0xa2, 0x79, 0x1b, 0x04, 0x43, 0xea, 0x02, 0x63, + 0xe2, 0x78, 0x23, 0xa8, 0x13, 0x43, 0x22, 0x79, 0x1f, 0xa9, 0x43, 0xea, + 0x02, 0x22, 0xff, 0xf7, 0xa3, 0xfd, 0x08, 0xf1, 0x01, 0x08, 0x06, 0x34, + 0x99, 0xf8, 0x00, 0x30, 0x98, 0x45, 0xd6, 0xdb, 0x00, 0xf0, 0xbc, 0xbe, + 0x02, 0x2e, 0x03, 0xd1, 0x23, 0xa8, 0x6d, 0x49, 0x00, 0xf0, 0x84, 0xbe, + 0xa3, 0x78, 0x62, 0x78, 0x1b, 0x02, 0x23, 0xa8, 0x69, 0x49, 0x84, 0xe6, + 0xa2, 0x78, 0x63, 0x78, 0x12, 0x02, 0x04, 0x2e, 0x1a, 0x44, 0x05, 0xd9, + 0x23, 0x79, 0xe1, 0x78, 0x1b, 0x06, 0x09, 0x04, 0x5b, 0x18, 0x1a, 0x43, + 0x23, 0xa8, 0x63, 0x49, 0xff, 0xf7, 0x7e, 0xfd, 0x06, 0x2e, 0x40, 0xf2, + 0x9d, 0x86, 0xeb, 0x19, 0x9a, 0x79, 0x59, 0x79, 0x12, 0x02, 0x08, 0x2e, + 0x0a, 0x44, 0x05, 0xd9, 0x19, 0x7a, 0xdb, 0x79, 0x09, 0x06, 0x1b, 0x04, + 0xc9, 0x18, 0x0a, 0x43, 0x23, 0xa8, 0x5a, 0x49, 0x62, 0xe6, 0x23, 0xa8, + 0x59, 0x49, 0x00, 0xf0, 0x57, 0xbe, 0xa3, 0x78, 0x62, 0x78, 0x1b, 0x02, + 0x23, 0xa8, 0x57, 0x49, 0x57, 0xe6, 0x01, 0x36, 0x00, 0x23, 0xf6, 0xb2, + 0x0c, 0x93, 0x00, 0xf0, 0x7d, 0xbe, 0xa3, 0x78, 0x62, 0x78, 0x23, 0xa8, + 0x52, 0x49, 0x47, 0xe2, 0x49, 0x4b, 0xf2, 0x08, 0x1a, 0x70, 0x4f, 0xf0, + 0x00, 0x08, 0x99, 0x46, 0x2a, 0xe0, 0x43, 0x46, 0x10, 0x21, 0x46, 0x4a, + 0x1f, 0xa8, 0xdd, 0xf3, 0xc9, 0xf0, 0x43, 0x46, 0x10, 0x21, 0x44, 0x4a, + 0x1b, 0xa8, 0xdd, 0xf3, 0xc3, 0xf0, 0xe3, 0x78, 0x22, 0x79, 0x1b, 0x04, + 0x43, 0xea, 0x02, 0x63, 0x62, 0x78, 0x1f, 0xa9, 0x13, 0x43, 0xa2, 0x78, + 0x23, 0xa8, 0x43, 0xea, 0x02, 0x22, 0xff, 0xf7, 0x35, 0xfd, 0xe3, 0x79, + 0x22, 0x7a, 0x1b, 0x04, 0x43, 0xea, 0x02, 0x63, 0x62, 0x79, 0x23, 0xa8, + 0x13, 0x43, 0xa2, 0x79, 0x1b, 0xa9, 0x43, 0xea, 0x02, 0x22, 0xff, 0xf7, + 0x27, 0xfd, 0x08, 0xf1, 0x01, 0x08, 0x08, 0x34, 0x99, 0xf8, 0x00, 0x30, + 0x98, 0x45, 0xd0, 0xdb, 0x00, 0xf0, 0x40, 0xbe, 0x23, 0xa8, 0x36, 0x49, + 0x62, 0x78, 0xff, 0xf7, 0x19, 0xfd, 0x02, 0x2e, 0x40, 0xf2, 0x38, 0x86, + 0x23, 0xa8, 0x33, 0x49, 0x46, 0xe1, 0x00, 0x22, 0x23, 0xa8, 0x32, 0x49, + 0x63, 0x78, 0xff, 0xf7, 0x0d, 0xfd, 0x02, 0x2e, 0x40, 0xf2, 0x2a, 0x86, + 0x01, 0x22, 0x23, 0xa8, 0x2d, 0x49, 0xa3, 0x78, 0xff, 0xf7, 0x04, 0xfd, + 0x03, 0x2e, 0x00, 0xf0, 0x21, 0x86, 0x02, 0x22, 0x23, 0xa8, 0x29, 0x49, + 0xe3, 0x78, 0xff, 0xf7, 0xfb, 0xfc, 0x04, 0x2e, 0x00, 0xf0, 0x18, 0x86, + 0x03, 0x22, 0x23, 0xa8, 0x24, 0x49, 0x23, 0x79, 0xff, 0xf7, 0xf2, 0xfc, + 0x01, 0x22, 0x08, 0x92, 0x00, 0xf0, 0x10, 0xbe, 0x1f, 0x49, 0x62, 0x78, + 0x23, 0xa8, 0xff, 0xf7, 0xe9, 0xfc, 0x23, 0xa8, 0x1d, 0x49, 0x01, 0x22, + 0xa3, 0x78, 0x00, 0xf0, 0xce, 0xbd, 0x23, 0xa8, 0x1b, 0x49, 0x00, 0xf0, + 0xcf, 0xbd, 0xb3, 0x1e, 0x08, 0x2b, 0x00, 0xf2, 0xfd, 0x85, 0xdf, 0xe8, + 0x13, 0xf0, 0x09, 0x00, 0xfb, 0x05, 0xfb, 0x05, 0xfb, 0x05, 0xfb, 0x05, + 0x4c, 0x00, 0x3e, 0x00, 0x38, 0x00, 0x33, 0x00, 0x23, 0xa8, 0x13, 0x49, + 0x00, 0xf0, 0xbc, 0xbd, 0x4e, 0x93, 0x02, 0x00, 0x0f, 0x94, 0x02, 0x00, + 0x58, 0x92, 0x02, 0x00, 0x96, 0x8e, 0x02, 0x00, 0xad, 0x8f, 0x02, 0x00, + 0x7d, 0x08, 0x02, 0x00, 0x34, 0xc9, 0x01, 0x00, 0x3f, 0xc9, 0x01, 0x00, + 0xe2, 0x8f, 0x02, 0x00, 0xd1, 0x93, 0x02, 0x00, 0x0e, 0x8f, 0x02, 0x00, + 0xee, 0x90, 0x02, 0x00, 0xad, 0x8e, 0x02, 0x00, 0x88, 0x8f, 0x02, 0x00, + 0x0d, 0x8e, 0x02, 0x00, 0x46, 0x94, 0x02, 0x00, 0x1b, 0x91, 0x02, 0x00, + 0xd1, 0x94, 0x02, 0x00, 0x86, 0x93, 0x02, 0x00, 0x23, 0xa8, 0x96, 0x49, + 0x62, 0x7a, 0xff, 0xf7, 0xa1, 0xfc, 0xeb, 0x19, 0x23, 0xa8, 0x94, 0x49, + 0x1a, 0x7a, 0xff, 0xf7, 0x9b, 0xfc, 0x07, 0xf1, 0x07, 0x08, 0x92, 0x49, + 0x15, 0xf8, 0x08, 0x20, 0x23, 0xa8, 0xff, 0xf7, 0x93, 0xfc, 0x23, 0xa8, + 0x8f, 0x49, 0x15, 0xf8, 0x08, 0x20, 0xff, 0xf7, 0x8d, 0xfc, 0x4f, 0xf0, + 0x00, 0x08, 0xa2, 0x78, 0x63, 0x78, 0x8c, 0x49, 0x12, 0x02, 0x41, 0x44, + 0x23, 0xa8, 0xd2, 0x18, 0x08, 0xf1, 0x09, 0x08, 0xff, 0xf7, 0x80, 0xfc, + 0x02, 0x34, 0xb8, 0xf1, 0x1b, 0x0f, 0xf0, 0xd1, 0x00, 0xf0, 0x9c, 0xbd, + 0x14, 0x2e, 0x19, 0xd0, 0x17, 0x2e, 0x03, 0xd0, 0x13, 0x2e, 0x40, 0xf0, + 0x95, 0x85, 0x19, 0xe0, 0x05, 0xeb, 0x07, 0x08, 0x80, 0x49, 0x98, 0xf8, + 0x16, 0x20, 0x23, 0xa8, 0xff, 0xf7, 0x6a, 0xfc, 0x7e, 0x49, 0x98, 0xf8, + 0x15, 0x20, 0x23, 0xa8, 0xff, 0xf7, 0x64, 0xfc, 0x23, 0xa8, 0x7c, 0x49, + 0x98, 0xf8, 0x14, 0x20, 0xff, 0xf7, 0x5e, 0xfc, 0xeb, 0x19, 0x23, 0xa8, + 0x79, 0x49, 0xda, 0x7c, 0xff, 0xf7, 0x58, 0xfc, 0xb1, 0x46, 0xa2, 0x46, + 0x4f, 0xf0, 0x00, 0x08, 0x26, 0x46, 0xb2, 0x78, 0x73, 0x78, 0x75, 0x49, + 0x12, 0x02, 0x41, 0x44, 0x23, 0xa8, 0xd2, 0x18, 0x08, 0xf1, 0x09, 0x08, + 0xff, 0xf7, 0x48, 0xfc, 0x02, 0x36, 0xb8, 0xf1, 0x1b, 0x0f, 0xf0, 0xd1, + 0x4e, 0x46, 0x4f, 0xf0, 0x00, 0x08, 0x22, 0x7a, 0xe3, 0x79, 0x6d, 0x49, + 0x12, 0x02, 0x41, 0x44, 0x23, 0xa8, 0xd2, 0x18, 0x08, 0xf1, 0x0b, 0x08, + 0xff, 0xf7, 0x36, 0xfc, 0x02, 0x34, 0xb8, 0xf1, 0x21, 0x0f, 0xf0, 0xd1, + 0x00, 0x24, 0x9a, 0xf8, 0x0e, 0x20, 0x9a, 0xf8, 0x0d, 0x30, 0x65, 0x49, + 0x12, 0x02, 0x09, 0x19, 0x23, 0xa8, 0xd2, 0x18, 0x0b, 0x34, 0xff, 0xf7, + 0x25, 0xfc, 0x21, 0x2c, 0x0a, 0xf1, 0x02, 0x0a, 0xef, 0xd1, 0x00, 0xf0, + 0x41, 0xbd, 0xe1, 0x78, 0x62, 0x78, 0xa3, 0x78, 0x00, 0x91, 0x21, 0x79, + 0x23, 0xa8, 0x01, 0x91, 0x61, 0x79, 0x02, 0x91, 0xa1, 0x79, 0x03, 0x91, + 0xe1, 0x79, 0x04, 0x91, 0x21, 0x7a, 0x05, 0x91, 0x57, 0x49, 0xff, 0xf7, + 0x0d, 0xfc, 0x00, 0xf0, 0x2d, 0xbd, 0xa0, 0x46, 0x43, 0x46, 0x00, 0x24, + 0xb0, 0x46, 0x1e, 0x46, 0x16, 0xf8, 0x01, 0x3f, 0xff, 0x2b, 0x04, 0xd0, + 0x23, 0xa8, 0x51, 0x49, 0x22, 0x46, 0xff, 0xf7, 0xfd, 0xfb, 0x01, 0x34, + 0x04, 0x2c, 0xf3, 0xd1, 0x46, 0x46, 0x00, 0xf0, 0x19, 0xbd, 0x62, 0x78, + 0x23, 0xa8, 0x0a, 0xb1, 0xa3, 0x78, 0x1b, 0xb9, 0x4a, 0x49, 0xff, 0xf7, + 0xef, 0xfb, 0x02, 0xe0, 0x49, 0x49, 0xff, 0xf7, 0xeb, 0xfb, 0xeb, 0x19, + 0x23, 0xa8, 0x48, 0x49, 0xda, 0x78, 0xdd, 0xe4, 0xa3, 0x78, 0x62, 0x78, + 0x23, 0xa8, 0x46, 0x49, 0xd2, 0xe0, 0xe3, 0x78, 0x22, 0x79, 0x1b, 0x04, + 0x43, 0xea, 0x02, 0x63, 0x62, 0x78, 0x23, 0xa8, 0x13, 0x43, 0x42, 0x49, + 0xa2, 0x78, 0xb4, 0xe5, 0x23, 0xa8, 0x41, 0x49, 0x62, 0x78, 0xff, 0xf7, + 0xd1, 0xfb, 0x02, 0x2e, 0x40, 0xf2, 0xf0, 0x84, 0x3e, 0x49, 0x23, 0xa8, + 0xa2, 0x78, 0xc1, 0xe4, 0x7c, 0x1c, 0x2a, 0x5d, 0x3c, 0x49, 0x02, 0xf0, + 0x0f, 0x02, 0x23, 0xa8, 0xff, 0xf7, 0xc2, 0xfb, 0x2a, 0x5d, 0x3a, 0x49, + 0x12, 0x09, 0xbc, 0x1c, 0x23, 0xa8, 0xff, 0xf7, 0xbb, 0xfb, 0x2a, 0x5d, + 0x37, 0x49, 0x02, 0xf0, 0x07, 0x02, 0x23, 0xa8, 0xff, 0xf7, 0xb4, 0xfb, + 0x2a, 0x5d, 0x23, 0xa8, 0xd2, 0x08, 0x34, 0x49, 0x19, 0xe0, 0x7c, 0x1c, + 0x2a, 0x5d, 0x33, 0x49, 0x02, 0xf0, 0x0f, 0x02, 0x23, 0xa8, 0xff, 0xf7, + 0xa7, 0xfb, 0x2a, 0x5d, 0x30, 0x49, 0x12, 0x09, 0xbc, 0x1c, 0x23, 0xa8, + 0xff, 0xf7, 0xa0, 0xfb, 0x2a, 0x5d, 0x2e, 0x49, 0x02, 0xf0, 0x07, 0x02, + 0x23, 0xa8, 0xff, 0xf7, 0x99, 0xfb, 0x2a, 0x5d, 0x2b, 0x49, 0xd2, 0x08, + 0x23, 0xa8, 0x02, 0xf0, 0x03, 0x02, 0x89, 0xe4, 0x23, 0xa8, 0x29, 0x49, + 0x00, 0xf0, 0x7e, 0xbc, 0x28, 0x49, 0x62, 0x78, 0x23, 0xa8, 0xff, 0xf7, + 0x89, 0xfb, 0x27, 0x49, 0xa2, 0x78, 0x23, 0xa8, 0xff, 0xf7, 0x84, 0xfb, + 0x23, 0xa8, 0x25, 0x49, 0xe2, 0x78, 0x77, 0xe4, 0x23, 0xa8, 0x24, 0x49, + 0x00, 0xf0, 0x6c, 0xbc, 0x23, 0xa8, 0x23, 0x49, 0x00, 0xf0, 0x68, 0xbc, + 0x47, 0x93, 0x02, 0x00, 0x86, 0x93, 0x02, 0x00, 0x39, 0x92, 0x02, 0x00, + 0x6f, 0x8e, 0x02, 0x00, 0xbc, 0x90, 0x02, 0x00, 0x60, 0x8e, 0x02, 0x00, + 0x79, 0x8f, 0x02, 0x00, 0xd5, 0x8f, 0x02, 0x00, 0x7d, 0x8e, 0x02, 0x00, + 0x9c, 0x92, 0x02, 0x00, 0x7a, 0x90, 0x02, 0x00, 0x93, 0x93, 0x02, 0x00, + 0xea, 0x93, 0x02, 0x00, 0x23, 0x8e, 0x02, 0x00, 0xb1, 0x94, 0x02, 0x00, + 0xc6, 0x94, 0x02, 0x00, 0xe4, 0x94, 0x02, 0x00, 0xf7, 0x90, 0x02, 0x00, + 0x90, 0x94, 0x02, 0x00, 0x50, 0x94, 0x02, 0x00, 0x70, 0x90, 0x02, 0x00, + 0xf4, 0x8d, 0x02, 0x00, 0xd7, 0x90, 0x02, 0x00, 0x3f, 0x8e, 0x02, 0x00, + 0xe1, 0x93, 0x02, 0x00, 0x2b, 0x94, 0x02, 0x00, 0x01, 0x8f, 0x02, 0x00, + 0x83, 0x94, 0x02, 0x00, 0x5b, 0x94, 0x02, 0x00, 0x9c, 0x94, 0x02, 0x00, + 0x02, 0x91, 0x02, 0x00, 0x3e, 0x93, 0x02, 0x00, 0xe4, 0x90, 0x02, 0x00, + 0xe0, 0x91, 0x02, 0x00, 0x96, 0x8f, 0x02, 0x00, 0x07, 0xf1, 0x01, 0x08, + 0x05, 0xeb, 0x08, 0x04, 0x20, 0x46, 0xdd, 0xf3, 0xf3, 0xf2, 0x00, 0x28, + 0x40, 0xf0, 0x4a, 0x84, 0x15, 0xf8, 0x08, 0x30, 0xd9, 0x07, 0x00, 0xf1, + 0x45, 0x84, 0x20, 0x46, 0x13, 0xa9, 0xdd, 0xf3, 0x2f, 0xf1, 0x07, 0x9b, + 0x01, 0x33, 0x40, 0xf0, 0x3d, 0x84, 0xeb, 0x19, 0x5a, 0x79, 0x9b, 0x79, + 0x12, 0x02, 0xd3, 0x18, 0x07, 0x93, 0x00, 0xf0, 0x35, 0xbc, 0xa2, 0x78, + 0x63, 0x78, 0x8f, 0x49, 0x12, 0x06, 0x23, 0xa8, 0x42, 0xea, 0x03, 0x22, + 0x02, 0xe4, 0x8d, 0x49, 0x62, 0x78, 0x23, 0xa8, 0xff, 0xf7, 0x06, 0xfb, + 0x8b, 0x49, 0xa2, 0x78, 0x23, 0xa8, 0xff, 0xf7, 0x01, 0xfb, 0x23, 0x79, + 0xe2, 0x78, 0x1b, 0x02, 0x23, 0xa8, 0x88, 0x49, 0xff, 0xf7, 0xf1, 0xbb, + 0x23, 0xa8, 0x87, 0x49, 0xe6, 0xe3, 0x94, 0xf8, 0x02, 0x80, 0x63, 0x78, + 0x4f, 0xea, 0x08, 0x28, 0x98, 0x44, 0x1f, 0xfa, 0x88, 0xf8, 0x83, 0x49, + 0x4f, 0xea, 0xd8, 0x22, 0x23, 0xa8, 0xff, 0xf7, 0xe9, 0xfa, 0x08, 0xf4, + 0xe0, 0x62, 0x12, 0x0a, 0x7f, 0x49, 0x23, 0xa8, 0xff, 0xf7, 0xe2, 0xfa, + 0x08, 0xf0, 0xf8, 0x02, 0xd2, 0x08, 0x7d, 0x49, 0x23, 0xa8, 0xff, 0xf7, + 0xdb, 0xfa, 0x08, 0xf0, 0x06, 0x02, 0x52, 0x08, 0x7a, 0x49, 0x23, 0xa8, + 0xff, 0xf7, 0xd4, 0xfa, 0x23, 0xa8, 0x79, 0x49, 0x08, 0xf0, 0x01, 0x02, + 0xff, 0xf7, 0xce, 0xfa, 0x04, 0x2e, 0x40, 0xf2, 0xed, 0x83, 0x23, 0x79, + 0xe4, 0x78, 0x1b, 0x02, 0x1c, 0x19, 0xa4, 0xb2, 0x73, 0x49, 0xe2, 0x0a, + 0x23, 0xa8, 0xff, 0xf7, 0xc1, 0xfa, 0x04, 0xf4, 0xe0, 0x62, 0x71, 0x49, + 0x12, 0x0a, 0x23, 0xa8, 0xff, 0xf7, 0xba, 0xfa, 0x04, 0xf0, 0xf8, 0x02, + 0x6e, 0x49, 0xd2, 0x08, 0x23, 0xa8, 0xff, 0xf7, 0xb3, 0xfa, 0x04, 0xf0, + 0x06, 0x02, 0x6c, 0x49, 0x52, 0x08, 0x23, 0xa8, 0xff, 0xf7, 0xac, 0xfa, + 0x23, 0xa8, 0x6a, 0x49, 0x04, 0xf0, 0x01, 0x02, 0xff, 0xf7, 0x9e, 0xbb, + 0x68, 0x49, 0x62, 0x78, 0x23, 0xa8, 0xff, 0xf7, 0xa1, 0xfa, 0x4f, 0xf0, + 0x00, 0x08, 0x66, 0x49, 0xa2, 0x78, 0x23, 0xa8, 0xff, 0xf7, 0x9a, 0xfa, + 0xcd, 0xf8, 0x00, 0x80, 0x22, 0x79, 0xe3, 0x78, 0x12, 0x02, 0xd3, 0x18, + 0x01, 0x93, 0x02, 0x22, 0x60, 0x49, 0x43, 0x46, 0x23, 0xa8, 0xff, 0xf7, + 0x8d, 0xfa, 0xcd, 0xf8, 0x00, 0x80, 0xa2, 0x79, 0x63, 0x79, 0x12, 0x02, + 0xd3, 0x18, 0x01, 0x93, 0x02, 0x22, 0x01, 0x23, 0x59, 0x49, 0x23, 0xa8, + 0xff, 0xf7, 0x80, 0xfa, 0xcd, 0xf8, 0x00, 0x80, 0x22, 0x7a, 0xe3, 0x79, + 0x12, 0x02, 0xd3, 0x18, 0x02, 0x22, 0x01, 0x93, 0x23, 0xa8, 0x53, 0x49, + 0x13, 0x46, 0xff, 0xf7, 0x73, 0xfa, 0x1e, 0x2e, 0x40, 0xf2, 0x92, 0x83, + 0x50, 0x49, 0x62, 0x7a, 0x23, 0xa8, 0xff, 0xf7, 0x6b, 0xfa, 0x4f, 0x49, + 0xa2, 0x7a, 0x23, 0xa8, 0xff, 0xf7, 0x66, 0xfa, 0x4d, 0x49, 0xe2, 0x7a, + 0x23, 0xa8, 0xff, 0xf7, 0x61, 0xfa, 0x4c, 0x49, 0x22, 0x7b, 0x23, 0xa8, + 0xff, 0xf7, 0x5c, 0xfa, 0xcd, 0xf8, 0x00, 0x80, 0xa2, 0x7b, 0x63, 0x7b, + 0x12, 0x02, 0xd3, 0x18, 0x01, 0x93, 0x42, 0x49, 0x05, 0x22, 0x43, 0x46, + 0x23, 0xa8, 0xff, 0xf7, 0x4f, 0xfa, 0xcd, 0xf8, 0x00, 0x80, 0x22, 0x7c, + 0xe3, 0x7b, 0x12, 0x02, 0xd3, 0x18, 0x01, 0x93, 0x3b, 0x49, 0x05, 0x22, + 0x01, 0x23, 0x23, 0xa8, 0xff, 0xf7, 0x42, 0xfa, 0xcd, 0xf8, 0x00, 0x80, + 0xa2, 0x7c, 0x63, 0x7c, 0x12, 0x02, 0xd3, 0x18, 0x01, 0x93, 0x35, 0x49, + 0x05, 0x22, 0x02, 0x23, 0x23, 0xa8, 0xff, 0xf7, 0x35, 0xfa, 0xcd, 0xf8, + 0x00, 0x80, 0xcd, 0xf8, 0x04, 0x80, 0x22, 0x7d, 0xe3, 0x7c, 0x12, 0x02, + 0xd3, 0x18, 0x02, 0x93, 0x32, 0x49, 0x05, 0x22, 0x6c, 0x23, 0x4f, 0xf0, + 0x01, 0x09, 0x23, 0xa8, 0xff, 0xf7, 0x24, 0xfa, 0xcd, 0xf8, 0x00, 0x90, + 0xcd, 0xf8, 0x04, 0x80, 0xa2, 0x7d, 0x63, 0x7d, 0x12, 0x02, 0xd3, 0x18, + 0x02, 0x93, 0x2a, 0x49, 0x05, 0x22, 0x6c, 0x23, 0x23, 0xa8, 0x4f, 0xf0, + 0x02, 0x0a, 0xff, 0xf7, 0x13, 0xfa, 0xcd, 0xf8, 0x00, 0xa0, 0xcd, 0xf8, + 0x04, 0x80, 0x22, 0x7e, 0xe3, 0x7d, 0x12, 0x02, 0xd3, 0x18, 0x02, 0x93, + 0x21, 0x49, 0x05, 0x22, 0x6c, 0x23, 0x23, 0xa8, 0xff, 0xf7, 0x04, 0xfa, + 0xcd, 0xf8, 0x00, 0x80, 0xcd, 0xf8, 0x04, 0x80, 0xa2, 0x7e, 0x63, 0x7e, + 0x12, 0x02, 0xd3, 0x18, 0x02, 0x93, 0x23, 0xa8, 0x19, 0x49, 0x05, 0x22, + 0x68, 0x23, 0xff, 0xf7, 0xf5, 0xf9, 0xcd, 0xf8, 0x00, 0x90, 0xe0, 0xe0, + 0x71, 0x92, 0x02, 0x00, 0x20, 0x92, 0x02, 0x00, 0xea, 0x91, 0x02, 0x00, + 0x11, 0x92, 0x02, 0x00, 0xc5, 0x93, 0x02, 0x00, 0x73, 0x94, 0x02, 0x00, + 0x1f, 0x8f, 0x02, 0x00, 0x2c, 0x8f, 0x02, 0x00, 0xfd, 0x94, 0x02, 0x00, + 0x30, 0x8e, 0x02, 0x00, 0xe0, 0x92, 0x02, 0x00, 0x1a, 0x95, 0x02, 0x00, + 0x4d, 0x95, 0x02, 0x00, 0x25, 0x91, 0x02, 0x00, 0x64, 0x94, 0x02, 0x00, + 0x6f, 0x8e, 0x02, 0x00, 0xf7, 0x91, 0x02, 0x00, 0x1a, 0x94, 0x02, 0x00, + 0xc4, 0x92, 0x02, 0x00, 0xbb, 0x8f, 0x02, 0x00, 0x7e, 0x92, 0x02, 0x00, + 0xd4, 0x8e, 0x02, 0x00, 0x9b, 0x90, 0x02, 0x00, 0x98, 0x49, 0x62, 0x78, + 0x23, 0xa8, 0xff, 0xf7, 0xbf, 0xf9, 0x4f, 0xf0, 0x01, 0x08, 0x96, 0x49, + 0xa2, 0x78, 0x23, 0xa8, 0xff, 0xf7, 0xb8, 0xf9, 0xcd, 0xf8, 0x00, 0x80, + 0x22, 0x79, 0xe3, 0x78, 0x12, 0x02, 0xd3, 0x18, 0x01, 0x93, 0x02, 0x22, + 0x00, 0x23, 0x90, 0x49, 0x23, 0xa8, 0xff, 0xf7, 0xab, 0xf9, 0xcd, 0xf8, + 0x00, 0x80, 0xa2, 0x79, 0x63, 0x79, 0x12, 0x02, 0xd3, 0x18, 0x01, 0x93, + 0x02, 0x22, 0x8a, 0x49, 0x43, 0x46, 0x23, 0xa8, 0xff, 0xf7, 0x9e, 0xf9, + 0xcd, 0xf8, 0x00, 0x80, 0x22, 0x7a, 0xe3, 0x79, 0x12, 0x02, 0xd3, 0x18, + 0x02, 0x22, 0x01, 0x93, 0x23, 0xa8, 0x83, 0x49, 0x13, 0x46, 0xff, 0xf7, + 0x91, 0xf9, 0x1e, 0x2e, 0x40, 0xf2, 0xb0, 0x82, 0x80, 0x49, 0x62, 0x7a, + 0x23, 0xa8, 0xff, 0xf7, 0x89, 0xf9, 0x7f, 0x49, 0xa2, 0x7a, 0x23, 0xa8, + 0xff, 0xf7, 0x84, 0xf9, 0x7d, 0x49, 0xe2, 0x7a, 0x23, 0xa8, 0xff, 0xf7, + 0x7f, 0xf9, 0x7c, 0x49, 0x22, 0x7b, 0x23, 0xa8, 0xff, 0xf7, 0x7a, 0xf9, + 0xcd, 0xf8, 0x00, 0x80, 0xa2, 0x7b, 0x63, 0x7b, 0x12, 0x02, 0xd3, 0x18, + 0x01, 0x93, 0x72, 0x49, 0x05, 0x22, 0x00, 0x23, 0x23, 0xa8, 0xff, 0xf7, + 0x6d, 0xf9, 0xcd, 0xf8, 0x00, 0x80, 0x22, 0x7c, 0xe3, 0x7b, 0x12, 0x02, + 0xd3, 0x18, 0x01, 0x93, 0x6b, 0x49, 0x05, 0x22, 0x43, 0x46, 0x23, 0xa8, + 0xff, 0xf7, 0x60, 0xf9, 0xcd, 0xf8, 0x00, 0x80, 0xa2, 0x7c, 0x63, 0x7c, + 0x12, 0x02, 0xd3, 0x18, 0x01, 0x93, 0x65, 0x49, 0x05, 0x22, 0x02, 0x23, + 0x4f, 0xf0, 0x00, 0x09, 0x23, 0xa8, 0xff, 0xf7, 0x51, 0xf9, 0xcd, 0xf8, + 0x00, 0x90, 0xcd, 0xf8, 0x04, 0x80, 0x22, 0x7d, 0xe3, 0x7c, 0x12, 0x02, + 0xd3, 0x18, 0x02, 0x93, 0x61, 0x49, 0x05, 0x22, 0x6c, 0x23, 0x23, 0xa8, + 0xff, 0xf7, 0x42, 0xf9, 0xcd, 0xf8, 0x00, 0x80, 0xcd, 0xf8, 0x04, 0x80, + 0xa2, 0x7d, 0x63, 0x7d, 0x12, 0x02, 0xd3, 0x18, 0x02, 0x93, 0x5a, 0x49, + 0x05, 0x22, 0x6c, 0x23, 0x23, 0xa8, 0x4f, 0xf0, 0x02, 0x0a, 0xff, 0xf7, + 0x31, 0xf9, 0xcd, 0xf8, 0x00, 0xa0, 0xcd, 0xf8, 0x04, 0x80, 0x22, 0x7e, + 0xe3, 0x7d, 0x12, 0x02, 0xd3, 0x18, 0x02, 0x93, 0x51, 0x49, 0x05, 0x22, + 0x6c, 0x23, 0x23, 0xa8, 0xff, 0xf7, 0x22, 0xf9, 0xcd, 0xf8, 0x00, 0x90, + 0xcd, 0xf8, 0x04, 0x80, 0xa2, 0x7e, 0x63, 0x7e, 0x12, 0x02, 0xd3, 0x18, + 0x02, 0x93, 0x23, 0xa8, 0x49, 0x49, 0x05, 0x22, 0x68, 0x23, 0xff, 0xf7, + 0x13, 0xf9, 0xcd, 0xf8, 0x00, 0x80, 0xcd, 0xf8, 0x04, 0x80, 0x22, 0x7f, + 0xe3, 0x7e, 0x12, 0x02, 0xd3, 0x18, 0x02, 0x93, 0x05, 0x22, 0x68, 0x23, + 0x23, 0xa8, 0x41, 0x49, 0xff, 0xf7, 0x04, 0xf9, 0xcd, 0xf8, 0x00, 0xa0, + 0xcd, 0xf8, 0x04, 0x80, 0xa3, 0x7f, 0x62, 0x7f, 0x1b, 0x02, 0x9b, 0x18, + 0x02, 0x93, 0x23, 0xa8, 0x3a, 0x49, 0x05, 0x22, 0x68, 0x23, 0xff, 0xf7, + 0xf5, 0xf8, 0x15, 0xe2, 0xa2, 0x78, 0x63, 0x78, 0x12, 0x02, 0xd2, 0x18, + 0x36, 0x49, 0x23, 0xa8, 0xff, 0xf7, 0xec, 0xf8, 0xa2, 0x79, 0x63, 0x79, + 0x12, 0x06, 0x1b, 0x04, 0xd2, 0x18, 0x23, 0x79, 0x23, 0xa8, 0x1b, 0x02, + 0xd2, 0x18, 0xe3, 0x78, 0x30, 0x49, 0xd2, 0x18, 0xff, 0xf7, 0xde, 0xf8, + 0x12, 0x2e, 0x40, 0xf2, 0xfd, 0x81, 0xa2, 0x7a, 0x63, 0x7a, 0x12, 0x06, + 0x1b, 0x04, 0xd2, 0x18, 0x23, 0x7a, 0x2b, 0x49, 0x1b, 0x02, 0xd2, 0x18, + 0xe3, 0x79, 0x23, 0xa8, 0xd2, 0x18, 0xff, 0xf7, 0xcd, 0xf8, 0xa2, 0x7b, + 0x63, 0x7b, 0x12, 0x06, 0x1b, 0x04, 0xd2, 0x18, 0x23, 0x7b, 0x23, 0xa8, + 0x1b, 0x02, 0xd2, 0x18, 0xe3, 0x7a, 0x23, 0x49, 0xd2, 0x18, 0xff, 0xf7, + 0xbf, 0xf8, 0xa2, 0x7c, 0x63, 0x7c, 0x12, 0x06, 0x1b, 0x04, 0xd3, 0x18, + 0x22, 0x7c, 0x12, 0x02, 0x9b, 0x18, 0xe2, 0x7b, 0xbb, 0xe0, 0xa2, 0x78, + 0x63, 0x78, 0x12, 0x02, 0xd3, 0x18, 0x00, 0x93, 0x02, 0x22, 0x43, 0x46, + 0x23, 0xa8, 0x19, 0x49, 0x08, 0xf1, 0x01, 0x08, 0xff, 0xf7, 0xa8, 0xf8, + 0x02, 0x34, 0xc8, 0x45, 0xef, 0xdd, 0xc5, 0xe1, 0xa2, 0x78, 0x63, 0x78, + 0x12, 0x02, 0xd3, 0x18, 0x00, 0x93, 0x05, 0x22, 0x43, 0x46, 0x23, 0xa8, + 0x10, 0x49, 0x08, 0xf1, 0x01, 0x08, 0xff, 0xf7, 0x97, 0xf8, 0x02, 0x34, + 0xc8, 0x45, 0xef, 0xdd, 0xb4, 0xe1, 0x00, 0xbf, 0xae, 0x90, 0x02, 0x00, + 0x04, 0x92, 0x02, 0x00, 0x1a, 0x94, 0x02, 0x00, 0xd2, 0x92, 0x02, 0x00, + 0xc8, 0x8f, 0x02, 0x00, 0x8d, 0x92, 0x02, 0x00, 0xe3, 0x8e, 0x02, 0x00, + 0x9b, 0x90, 0x02, 0x00, 0xd7, 0x94, 0x02, 0x00, 0x38, 0x94, 0x02, 0x00, + 0x63, 0x92, 0x02, 0x00, 0xf2, 0x8e, 0x02, 0x00, 0xbc, 0x8e, 0x02, 0x00, + 0xcd, 0xf8, 0x00, 0x80, 0xa2, 0x78, 0x63, 0x78, 0x12, 0x02, 0xd3, 0x18, + 0x01, 0x93, 0x05, 0x22, 0x6c, 0x23, 0x23, 0xa8, 0xb1, 0x49, 0x08, 0xf1, + 0x01, 0x08, 0xff, 0xf7, 0x69, 0xf8, 0x02, 0x34, 0xd0, 0x45, 0xed, 0xdd, + 0x4f, 0xea, 0x56, 0x09, 0x5f, 0xfa, 0x89, 0xf9, 0x09, 0xf1, 0x01, 0x0c, + 0x09, 0xf1, 0x02, 0x09, 0xbc, 0x44, 0xb9, 0x44, 0x05, 0xeb, 0x09, 0x04, + 0xcd, 0xf8, 0x44, 0xb0, 0x4f, 0xf0, 0x00, 0x08, 0xb3, 0x46, 0x2e, 0x46, + 0x65, 0x46, 0xcd, 0xf8, 0x00, 0x80, 0x22, 0x78, 0xc9, 0xeb, 0x04, 0x03, + 0x5b, 0x5d, 0x12, 0x02, 0xd3, 0x18, 0x01, 0x93, 0x05, 0x22, 0x68, 0x23, + 0x23, 0xa8, 0x9e, 0x49, 0x08, 0xf1, 0x01, 0x08, 0xff, 0xf7, 0x42, 0xf8, + 0x02, 0x34, 0xd0, 0x45, 0xeb, 0xdd, 0x35, 0x46, 0x5e, 0x46, 0xdd, 0xf8, + 0x44, 0xb0, 0x5b, 0xe1, 0xa3, 0x78, 0x62, 0x78, 0x1b, 0x02, 0x23, 0xa8, + 0x96, 0x49, 0xff, 0xf7, 0x2a, 0xb9, 0xa3, 0x78, 0x62, 0x78, 0x1b, 0x02, + 0x23, 0xa8, 0x94, 0x49, 0xff, 0xf7, 0x23, 0xb9, 0xa3, 0x78, 0x62, 0x78, + 0x1b, 0x02, 0x23, 0xa8, 0x91, 0x49, 0xff, 0xf7, 0x1c, 0xb9, 0xa3, 0x78, + 0x62, 0x78, 0x1b, 0x02, 0x23, 0xa8, 0x8f, 0x49, 0xff, 0xf7, 0x15, 0xb9, + 0x22, 0x79, 0xe3, 0x78, 0x12, 0x06, 0x1b, 0x04, 0xd2, 0x18, 0xa3, 0x78, + 0x8b, 0x49, 0x1b, 0x02, 0xd2, 0x18, 0x63, 0x78, 0x23, 0xa8, 0xd2, 0x18, + 0xff, 0xf7, 0x10, 0xf8, 0x22, 0x7a, 0xe3, 0x79, 0x12, 0x06, 0x1b, 0x04, + 0xd2, 0x18, 0xa3, 0x79, 0x23, 0xa8, 0x1b, 0x02, 0xd2, 0x18, 0x63, 0x79, + 0x83, 0x49, 0xd2, 0x18, 0xff, 0xf7, 0x02, 0xf8, 0x22, 0x7b, 0xe3, 0x7a, + 0x12, 0x06, 0x1b, 0x04, 0xd3, 0x18, 0xa2, 0x7a, 0x12, 0x02, 0x9b, 0x18, + 0x62, 0x7a, 0x23, 0xa8, 0x7d, 0x49, 0xff, 0xf7, 0xec, 0xb8, 0xa2, 0x78, + 0x63, 0x78, 0x12, 0x02, 0x23, 0xa8, 0x7b, 0x49, 0xd2, 0x18, 0xfe, 0xf7, + 0xed, 0xff, 0x04, 0x2e, 0x40, 0xf2, 0x0c, 0x81, 0x23, 0x79, 0xe2, 0x78, + 0x1b, 0x02, 0x23, 0xa8, 0x76, 0x49, 0xff, 0xf7, 0xda, 0xb8, 0x22, 0x79, + 0xe3, 0x78, 0x12, 0x06, 0x1b, 0x04, 0xd2, 0x18, 0xa3, 0x78, 0x23, 0xa8, + 0x1b, 0x02, 0xd2, 0x18, 0x63, 0x78, 0x71, 0x49, 0xd2, 0x18, 0xfe, 0xf7, + 0xd5, 0xff, 0x06, 0x2e, 0x40, 0xf2, 0xf4, 0x80, 0x22, 0x7a, 0xe3, 0x79, + 0x12, 0x06, 0x1b, 0x04, 0xd3, 0x18, 0xa2, 0x79, 0x23, 0xa8, 0x12, 0x02, + 0x9b, 0x18, 0x6a, 0x49, 0x62, 0x79, 0xff, 0xf7, 0xbc, 0xb8, 0xdf, 0xf8, + 0xb4, 0x91, 0x4f, 0xf0, 0x01, 0x08, 0xb0, 0x45, 0x80, 0xf2, 0xe0, 0x80, + 0x22, 0x79, 0xe3, 0x78, 0x12, 0x06, 0x1b, 0x04, 0xd2, 0x18, 0xa3, 0x78, + 0x49, 0x46, 0x1b, 0x02, 0xd2, 0x18, 0x63, 0x78, 0x23, 0xa8, 0xd2, 0x18, + 0x08, 0xf1, 0x04, 0x08, 0xfe, 0xf7, 0xae, 0xff, 0x04, 0x34, 0xb8, 0xf1, + 0x19, 0x0f, 0x09, 0xf1, 0x18, 0x09, 0xe6, 0xd1, 0xc8, 0xe0, 0xdf, 0xf8, + 0x7c, 0x91, 0x4f, 0xf0, 0x01, 0x08, 0xb0, 0x45, 0x80, 0xf2, 0xc2, 0x80, + 0x22, 0x79, 0xe3, 0x78, 0x12, 0x06, 0x1b, 0x04, 0xd2, 0x18, 0xa3, 0x78, + 0x49, 0x46, 0x1b, 0x02, 0xd2, 0x18, 0x63, 0x78, 0x23, 0xa8, 0xd2, 0x18, + 0x08, 0xf1, 0x04, 0x08, 0xfe, 0xf7, 0x90, 0xff, 0x04, 0x34, 0xb8, 0xf1, + 0x0d, 0x0f, 0x09, 0xf1, 0x13, 0x09, 0xe6, 0xd1, 0xaa, 0xe0, 0xdf, 0xf8, + 0x44, 0x91, 0x4f, 0xf0, 0x01, 0x08, 0xb0, 0x45, 0x80, 0xf2, 0xa4, 0x80, + 0x22, 0x79, 0xe3, 0x78, 0x12, 0x06, 0x1b, 0x04, 0xd2, 0x18, 0xa3, 0x78, + 0x49, 0x46, 0x1b, 0x02, 0xd2, 0x18, 0x63, 0x78, 0x23, 0xa8, 0xd2, 0x18, + 0x08, 0xf1, 0x04, 0x08, 0xfe, 0xf7, 0x72, 0xff, 0x04, 0x34, 0xb8, 0xf1, + 0x0d, 0x0f, 0x09, 0xf1, 0x14, 0x09, 0xe6, 0xd1, 0x8c, 0xe0, 0xdf, 0xf8, + 0x0c, 0x91, 0x4f, 0xf0, 0x01, 0x08, 0xb0, 0x45, 0x80, 0xf2, 0x86, 0x80, + 0x22, 0x79, 0xe3, 0x78, 0x12, 0x06, 0x1b, 0x04, 0xd2, 0x18, 0xa3, 0x78, + 0x49, 0x46, 0x1b, 0x02, 0xd2, 0x18, 0x63, 0x78, 0x23, 0xa8, 0xd2, 0x18, + 0x08, 0xf1, 0x04, 0x08, 0xfe, 0xf7, 0x54, 0xff, 0x04, 0x34, 0xb8, 0xf1, + 0x0d, 0x0f, 0x09, 0xf1, 0x14, 0x09, 0xe6, 0xd1, 0x6e, 0xe0, 0xdf, 0xf8, + 0xd4, 0x90, 0x4f, 0xf0, 0x01, 0x08, 0xb0, 0x45, 0x68, 0xda, 0x22, 0x79, + 0xe3, 0x78, 0x12, 0x06, 0x1b, 0x04, 0xd2, 0x18, 0xa3, 0x78, 0x49, 0x46, + 0x1b, 0x02, 0xd2, 0x18, 0x63, 0x78, 0x23, 0xa8, 0xd2, 0x18, 0x08, 0xf1, + 0x04, 0x08, 0xfe, 0xf7, 0x37, 0xff, 0x04, 0x34, 0xb8, 0xf1, 0x0d, 0x0f, + 0x09, 0xf1, 0x14, 0x09, 0xe7, 0xd1, 0x51, 0xe0, 0xa3, 0x78, 0x62, 0x78, + 0x1b, 0x02, 0x23, 0xa8, 0x1c, 0x49, 0xff, 0xf7, 0x20, 0xb8, 0xa3, 0x78, + 0x62, 0x78, 0x1b, 0x02, 0x23, 0xa8, 0x1a, 0x49, 0xff, 0xf7, 0x19, 0xb8, + 0x22, 0x79, 0xe3, 0x78, 0x12, 0x06, 0x1b, 0x04, 0xd3, 0x18, 0xa2, 0x78, + 0x64, 0x78, 0x12, 0x02, 0x9b, 0x18, 0x15, 0x49, 0x23, 0xa8, 0x01, 0x22, + 0x1b, 0x19, 0xfe, 0xf7, 0x13, 0xff, 0x33, 0xe0, 0x12, 0x49, 0x23, 0xa8, + 0x62, 0x78, 0xff, 0xf7, 0x05, 0xb8, 0x00, 0x22, 0x0a, 0x92, 0x2b, 0xe0, + 0xf0, 0x92, 0x02, 0x00, 0x45, 0x91, 0x02, 0x00, 0xa5, 0x94, 0x02, 0x00, + 0x17, 0x8e, 0x02, 0x00, 0xb7, 0x92, 0x02, 0x00, 0x63, 0x92, 0x02, 0x00, + 0xf2, 0x8e, 0x02, 0x00, 0x0c, 0x91, 0x02, 0x00, 0x27, 0x95, 0x02, 0x00, + 0x3a, 0x95, 0x02, 0x00, 0x5a, 0x93, 0x02, 0x00, 0x70, 0x93, 0x02, 0x00, + 0xa0, 0x8f, 0x02, 0x00, 0x4c, 0x8e, 0x02, 0x00, 0xb4, 0x93, 0x02, 0x00, + 0x46, 0x92, 0x02, 0x00, 0x50, 0x91, 0x02, 0x00, 0xf0, 0x8f, 0x02, 0x00, + 0x3d, 0x8f, 0x02, 0x00, 0x29, 0x90, 0x02, 0x00, 0x02, 0x93, 0x02, 0x00, + 0x01, 0x23, 0x08, 0x93, 0xbb, 0xf1, 0xff, 0x0f, 0x07, 0xeb, 0x06, 0x03, + 0x7e, 0xf4, 0x77, 0xaf, 0x0b, 0x9a, 0x01, 0x32, 0x0b, 0x92, 0x0b, 0x9b, + 0x0f, 0x9a, 0x93, 0x42, 0x7e, 0xf4, 0x67, 0xaf, 0x07, 0x9b, 0x5a, 0x1c, + 0x04, 0xd0, 0x23, 0xa8, 0x18, 0x49, 0x1a, 0x46, 0xfe, 0xf7, 0xc8, 0xfe, + 0x9d, 0xf8, 0x4c, 0x30, 0x23, 0xb1, 0x23, 0xa8, 0x15, 0x49, 0x13, 0xaa, + 0xfe, 0xf7, 0xc0, 0xfe, 0x00, 0x20, 0x14, 0x49, 0xdc, 0xf3, 0xc0, 0xf6, + 0x30, 0xb9, 0x08, 0x9a, 0x22, 0xb9, 0x23, 0xa8, 0x11, 0x49, 0xff, 0x23, + 0xfe, 0xf7, 0xb4, 0xfe, 0x24, 0x9a, 0x00, 0x23, 0x02, 0xf8, 0x01, 0x3b, + 0x30, 0x9b, 0x09, 0x99, 0x00, 0x93, 0x0d, 0x98, 0x10, 0x9b, 0x24, 0x92, + 0xfe, 0xf7, 0xf9, 0xfe, 0x09, 0x99, 0x04, 0x46, 0x4f, 0xf4, 0x80, 0x52, + 0x0d, 0x98, 0xe1, 0xf3, 0x35, 0xf0, 0x01, 0xe0, 0x6f, 0xf0, 0x01, 0x04, + 0x20, 0x46, 0x27, 0xb0, 0xbd, 0xe8, 0xf0, 0x8f, 0x0e, 0x95, 0x02, 0x00, + 0xbb, 0x94, 0x02, 0x00, 0x0e, 0x5d, 0x86, 0x00, 0x1b, 0x91, 0x02, 0x00, + 0x2d, 0xe9, 0xf0, 0x4f, 0x8d, 0xb0, 0x05, 0x92, 0x05, 0x46, 0x0e, 0x46, + 0x06, 0xa8, 0x00, 0x21, 0x14, 0x22, 0x9a, 0x46, 0x0b, 0x91, 0xdc, 0xf3, + 0xc1, 0xf1, 0x63, 0x4b, 0x1c, 0x78, 0x00, 0x2c, 0x40, 0xf0, 0xb6, 0x80, + 0x6b, 0x69, 0x23, 0x2b, 0x0e, 0xdd, 0x1c, 0x22, 0x28, 0x46, 0x21, 0x46, + 0x23, 0x46, 0x00, 0x94, 0xe5, 0xf3, 0xd8, 0xf0, 0x00, 0x28, 0x09, 0xda, + 0x4f, 0xf0, 0x01, 0x09, 0x02, 0x27, 0xcd, 0xf8, 0x10, 0x90, 0x07, 0xe0, + 0x04, 0x27, 0x4f, 0xf0, 0x01, 0x09, 0x02, 0xe0, 0x0c, 0x27, 0x4f, 0xf0, + 0x03, 0x09, 0x04, 0x94, 0x28, 0x46, 0xe5, 0xf3, 0x79, 0xf0, 0x01, 0x28, + 0x83, 0x46, 0x02, 0xd0, 0x02, 0x28, 0x13, 0xd1, 0x05, 0xe0, 0x28, 0x46, + 0x31, 0x46, 0xdc, 0xf3, 0xc9, 0xf0, 0x40, 0x00, 0x0b, 0xe0, 0x28, 0x46, + 0xfa, 0xf7, 0x7c, 0xff, 0x04, 0x46, 0x38, 0xb1, 0xdc, 0xf3, 0x6e, 0xf0, + 0xc3, 0x05, 0x03, 0xd5, 0x20, 0x46, 0xdc, 0xf3, 0x5f, 0xf0, 0x0b, 0x90, + 0x0b, 0x99, 0x00, 0x29, 0x51, 0xd0, 0x30, 0x46, 0xe0, 0xf3, 0xc8, 0xf7, + 0x04, 0x46, 0x00, 0x28, 0x7c, 0xd0, 0xbb, 0xf1, 0x01, 0x0f, 0xdd, 0xf8, + 0x2c, 0x80, 0x03, 0xd0, 0xbb, 0xf1, 0x02, 0x0f, 0x1a, 0xd1, 0x0a, 0xe0, + 0x00, 0x21, 0x02, 0x90, 0x8d, 0xe8, 0x02, 0x01, 0x03, 0x91, 0x28, 0x46, + 0x05, 0x9a, 0x33, 0x46, 0xdc, 0xf3, 0x98, 0xf0, 0x0c, 0xe0, 0x0c, 0xab, + 0x4f, 0xea, 0x58, 0x02, 0x43, 0xf8, 0x04, 0x2d, 0x28, 0x46, 0x01, 0x21, + 0x22, 0x46, 0xdb, 0xf3, 0xf5, 0xf7, 0x0b, 0x9b, 0x5b, 0x00, 0x0b, 0x93, + 0x00, 0x28, 0x4b, 0xd1, 0x22, 0x88, 0x4f, 0xf6, 0xfd, 0x73, 0x01, 0x3a, + 0x92, 0xb2, 0x9a, 0x42, 0x05, 0xd9, 0x30, 0x46, 0x21, 0x46, 0x42, 0x46, + 0xe0, 0xf3, 0xa6, 0xf7, 0x1c, 0xe0, 0x04, 0x9a, 0x1a, 0xb1, 0x04, 0xeb, + 0x47, 0x07, 0x06, 0x97, 0x1b, 0xe0, 0xe3, 0x19, 0x62, 0x88, 0x06, 0x93, + 0xa3, 0x88, 0xa7, 0xf5, 0x80, 0x57, 0x07, 0xeb, 0x12, 0x22, 0x1b, 0x06, + 0x02, 0xeb, 0x13, 0x43, 0xe3, 0x18, 0x07, 0x93, 0xe3, 0x88, 0xdb, 0x19, + 0xe3, 0x18, 0x08, 0x93, 0x23, 0x89, 0xdf, 0x19, 0xe7, 0x19, 0x09, 0x97, + 0x05, 0xe0, 0x88, 0x46, 0x1b, 0x4b, 0x00, 0x24, 0x06, 0x93, 0x4f, 0xf0, + 0x01, 0x09, 0x16, 0x9b, 0x30, 0x46, 0x00, 0x93, 0x06, 0xa9, 0x4a, 0x46, + 0x53, 0x46, 0xfe, 0xf7, 0x59, 0xfe, 0x90, 0xb9, 0x15, 0x49, 0xdc, 0xf3, + 0xbb, 0xf5, 0x38, 0xb1, 0x16, 0x9b, 0x28, 0x46, 0xda, 0xf8, 0x00, 0x10, + 0x1a, 0x68, 0x00, 0xf0, 0x25, 0xfb, 0x06, 0xe0, 0x16, 0x9b, 0x28, 0x46, + 0xda, 0xf8, 0x00, 0x10, 0x1a, 0x68, 0x00, 0xf0, 0x3f, 0xfb, 0x24, 0xb1, + 0x30, 0x46, 0x21, 0x46, 0x42, 0x46, 0xe0, 0xf3, 0x61, 0xf7, 0x07, 0x4a, + 0x01, 0x23, 0x13, 0x70, 0x16, 0x9b, 0x00, 0x20, 0xca, 0xf8, 0x00, 0x00, + 0x18, 0x60, 0x01, 0xe0, 0x6f, 0xf0, 0x1a, 0x00, 0x0d, 0xb0, 0xbd, 0xe8, + 0xf0, 0x8f, 0x00, 0xbf, 0x40, 0x27, 0x00, 0x00, 0xa5, 0x8e, 0x02, 0x00, + 0x4a, 0xc9, 0x01, 0x00, 0x30, 0xb5, 0x19, 0x46, 0x03, 0x9b, 0x04, 0x9c, + 0x43, 0xb1, 0x4c, 0xb1, 0x00, 0x25, 0x1d, 0x60, 0x25, 0x60, 0x03, 0x94, + 0xbd, 0xe8, 0x30, 0x40, 0xff, 0xf7, 0x18, 0xbf, 0x18, 0x46, 0x30, 0xbd, + 0x20, 0x46, 0x30, 0xbd, 0x08, 0x4b, 0x1a, 0x88, 0x8a, 0x42, 0x04, 0xd0, + 0x9a, 0x88, 0x8a, 0x42, 0x06, 0xd1, 0x01, 0x22, 0x00, 0xe0, 0x00, 0x22, + 0x03, 0xeb, 0x82, 0x03, 0x98, 0x78, 0x00, 0xe0, 0xff, 0x20, 0x40, 0xb2, + 0x70, 0x47, 0x00, 0xbf, 0xa8, 0x95, 0x02, 0x00, 0xf8, 0xb5, 0x04, 0x46, + 0x15, 0x46, 0x1f, 0x46, 0x00, 0x2b, 0x7b, 0xd0, 0xe6, 0xf7, 0x24, 0xfe, + 0x06, 0x46, 0x0b, 0xe0, 0xbb, 0x42, 0x08, 0xd1, 0xd5, 0xf8, 0x00, 0x26, + 0xb3, 0x78, 0x02, 0xf0, 0x7c, 0x02, 0xb3, 0xeb, 0x92, 0x0f, 0x07, 0xd1, + 0xf8, 0xbd, 0x0c, 0x36, 0x00, 0x2e, 0x69, 0xd0, 0x33, 0x88, 0x00, 0x2b, + 0xee, 0xd1, 0xf8, 0xbd, 0xd5, 0xf8, 0x18, 0x36, 0x64, 0x20, 0x23, 0xf0, + 0xc0, 0x73, 0xc5, 0xf8, 0x18, 0x36, 0xd5, 0xf8, 0x1c, 0x36, 0x40, 0xf2, + 0xdd, 0x57, 0x23, 0xf0, 0xc0, 0x73, 0xc5, 0xf8, 0x1c, 0x36, 0xe0, 0xf3, + 0x2d, 0xf4, 0x02, 0xe0, 0x0a, 0x20, 0xe0, 0xf3, 0x29, 0xf4, 0xd5, 0xf8, + 0xe0, 0x31, 0x9b, 0x03, 0x01, 0xd5, 0x01, 0x3f, 0xf6, 0xd1, 0x00, 0x23, + 0xc5, 0xf8, 0x60, 0x36, 0x31, 0x79, 0xf3, 0x78, 0xd5, 0xf8, 0x64, 0x26, + 0x09, 0x06, 0x1b, 0x05, 0x01, 0xf0, 0x70, 0x61, 0x03, 0xf4, 0x70, 0x03, + 0x22, 0xf0, 0x7f, 0x62, 0x0b, 0x43, 0x13, 0x43, 0xc5, 0xf8, 0x64, 0x36, + 0x02, 0x23, 0xc5, 0xf8, 0x60, 0x36, 0xd5, 0xf8, 0x64, 0x36, 0x72, 0x79, + 0x23, 0xf0, 0xfe, 0x53, 0x23, 0xf4, 0x78, 0x13, 0x43, 0xea, 0x02, 0x53, + 0x43, 0xf4, 0x80, 0x23, 0xc5, 0xf8, 0x64, 0x36, 0x03, 0x23, 0xc5, 0xf8, + 0x60, 0x36, 0xd5, 0xf8, 0x64, 0x26, 0xb3, 0x68, 0x02, 0xf0, 0x7f, 0x42, + 0x23, 0xf0, 0x7f, 0x43, 0x13, 0x43, 0xc5, 0xf8, 0x64, 0x36, 0x23, 0x6a, + 0x01, 0x2b, 0x05, 0xdd, 0xd5, 0xf8, 0x00, 0x36, 0x43, 0xf4, 0x80, 0x63, + 0xc5, 0xf8, 0x00, 0x36, 0xb2, 0x78, 0xd5, 0xf8, 0x00, 0x16, 0x92, 0x00, + 0x4f, 0xf6, 0x83, 0x73, 0x02, 0xf0, 0x7c, 0x02, 0x0b, 0x40, 0x13, 0x43, + 0x32, 0x88, 0x7f, 0x32, 0xd2, 0x11, 0x01, 0x3a, 0x43, 0xea, 0x02, 0x43, + 0xc5, 0xf8, 0x00, 0x36, 0xf8, 0xbd, 0x00, 0x00, 0x2d, 0xe9, 0xff, 0x41, + 0x03, 0x6a, 0x04, 0x46, 0x04, 0x2b, 0x47, 0x6a, 0x03, 0xdd, 0x07, 0xf0, + 0xf8, 0x67, 0xbf, 0x0d, 0x02, 0xe0, 0x07, 0xf0, 0xf0, 0x77, 0x7f, 0x0d, + 0x20, 0x46, 0xe4, 0xf3, 0x57, 0xf7, 0x00, 0x21, 0x80, 0x46, 0x20, 0x46, + 0xe5, 0xf3, 0x24, 0xf1, 0x00, 0x25, 0x06, 0x46, 0x13, 0xe0, 0x10, 0x21, + 0x68, 0x46, 0x0d, 0x4a, 0x2b, 0x46, 0xdc, 0xf3, 0x6f, 0xf0, 0x00, 0x20, + 0x69, 0x46, 0xdc, 0xf3, 0xef, 0xf4, 0x38, 0xb1, 0x00, 0x21, 0x0a, 0x46, + 0xdc, 0xf3, 0xaa, 0xf3, 0xc6, 0xf8, 0x58, 0x56, 0xc6, 0xf8, 0x5c, 0x06, + 0x01, 0x35, 0xeb, 0xb2, 0xbb, 0x42, 0xe8, 0xd3, 0x20, 0x46, 0x41, 0x46, + 0xe5, 0xf3, 0x06, 0xf1, 0xbd, 0xe8, 0xff, 0x81, 0x63, 0x36, 0x86, 0x00, + 0x2d, 0xe9, 0xff, 0x41, 0x05, 0x46, 0xe4, 0xf3, 0x2b, 0xf7, 0x00, 0x21, + 0x80, 0x46, 0x28, 0x46, 0xe5, 0xf3, 0xf8, 0xf0, 0x2b, 0x6a, 0x07, 0x46, + 0x04, 0x2b, 0x6e, 0x6a, 0x01, 0xdd, 0xf6, 0x0e, 0x02, 0xe0, 0x06, 0xf0, + 0xf0, 0x56, 0x76, 0x0e, 0x00, 0x24, 0x13, 0xe0, 0x10, 0x21, 0x68, 0x46, + 0x0c, 0x4a, 0x23, 0x46, 0xdc, 0xf3, 0x3a, 0xf0, 0x00, 0x20, 0x69, 0x46, + 0xdc, 0xf3, 0xba, 0xf4, 0x38, 0xb1, 0x00, 0x21, 0x0a, 0x46, 0xdc, 0xf3, + 0x75, 0xf3, 0xc7, 0xf8, 0x50, 0x46, 0xc7, 0xf8, 0x54, 0x06, 0x01, 0x34, + 0xb4, 0x42, 0xe9, 0xd1, 0x28, 0x46, 0x41, 0x46, 0xe5, 0xf3, 0xd2, 0xf0, + 0xbd, 0xe8, 0xff, 0x81, 0x5b, 0x36, 0x86, 0x00, 0xf7, 0xb5, 0x05, 0x3a, + 0x06, 0x46, 0x1f, 0x46, 0x06, 0x2a, 0x2e, 0xd8, 0xdf, 0xe8, 0x02, 0xf0, + 0x04, 0x16, 0x0b, 0x0f, 0x08, 0x2d, 0x12, 0x00, 0x04, 0x23, 0x0f, 0x25, + 0x01, 0x24, 0x10, 0xe0, 0x04, 0x23, 0x0f, 0x25, 0x08, 0xe0, 0x03, 0x23, + 0x1f, 0x25, 0x00, 0x24, 0x09, 0xe0, 0x03, 0x23, 0x1f, 0x25, 0x05, 0xe0, + 0x02, 0x23, 0x03, 0x25, 0x11, 0x24, 0x02, 0xe0, 0x04, 0x23, 0x0f, 0x25, + 0x05, 0x24, 0x2f, 0x40, 0xa7, 0x40, 0x00, 0x93, 0x00, 0x21, 0x4f, 0xf4, + 0xcb, 0x62, 0x4f, 0xf0, 0xff, 0x33, 0x30, 0x46, 0xe4, 0xf3, 0xd8, 0xf6, + 0x30, 0x46, 0x00, 0x21, 0x40, 0xf2, 0x5c, 0x62, 0x15, 0xfa, 0x04, 0xf3, + 0x00, 0x97, 0xe4, 0xf3, 0xcf, 0xf6, 0xfe, 0xbd, 0x2d, 0xe9, 0xf0, 0x43, + 0x00, 0x24, 0x85, 0xb0, 0x05, 0x46, 0x02, 0x94, 0x03, 0x94, 0xe4, 0xf3, + 0xbd, 0xf6, 0x21, 0x46, 0x80, 0x46, 0x28, 0x46, 0xe5, 0xf3, 0x8a, 0xf0, + 0x6f, 0x6a, 0x04, 0x46, 0x07, 0xf4, 0xf8, 0x57, 0x3f, 0x0a, 0x03, 0x26, + 0x4b, 0x4b, 0x01, 0x3e, 0x03, 0xeb, 0xc6, 0x02, 0x13, 0xf8, 0x36, 0x30, + 0xc4, 0xf8, 0x20, 0x36, 0x53, 0x68, 0xc4, 0xf8, 0x28, 0x36, 0x00, 0x2e, + 0xf2, 0xd1, 0x1d, 0xe0, 0x08, 0x21, 0x68, 0x46, 0x44, 0x4a, 0x33, 0x46, + 0xdb, 0xf3, 0xc4, 0xf7, 0x00, 0x20, 0x69, 0x46, 0xdc, 0xf3, 0x44, 0xf4, + 0x88, 0xb1, 0x00, 0x21, 0x0a, 0x46, 0xdc, 0xf3, 0xff, 0xf2, 0x2b, 0x6a, + 0x0c, 0x2b, 0x06, 0xdd, 0xb0, 0xf5, 0x80, 0x3f, 0x03, 0xd2, 0xc3, 0xb2, + 0x00, 0x0a, 0x43, 0xea, 0x00, 0x40, 0xc4, 0xf8, 0x20, 0x66, 0xc4, 0xf8, + 0x28, 0x06, 0x01, 0x36, 0xbe, 0x42, 0xdf, 0xd1, 0x4f, 0xf0, 0x03, 0x09, + 0x35, 0x4e, 0x09, 0xf1, 0xff, 0x39, 0x06, 0xeb, 0x09, 0x16, 0xf3, 0x68, + 0x0b, 0xb9, 0x00, 0x23, 0x21, 0xe0, 0x28, 0x46, 0x98, 0x47, 0x00, 0xb3, + 0xf9, 0xe7, 0x01, 0x21, 0x99, 0x40, 0x32, 0x68, 0x11, 0x42, 0x17, 0xd0, + 0xc4, 0xf8, 0x20, 0x36, 0x96, 0xf9, 0x04, 0x20, 0x22, 0xb1, 0x01, 0x2a, + 0x04, 0xd0, 0x01, 0x32, 0x0e, 0xd1, 0x06, 0xe0, 0xb2, 0x68, 0x09, 0xe0, + 0xd4, 0xf8, 0x24, 0x16, 0xb2, 0x68, 0x0a, 0x43, 0x04, 0xe0, 0xd4, 0xf8, + 0x24, 0x26, 0xb1, 0x68, 0x22, 0xea, 0x01, 0x02, 0xc4, 0xf8, 0x24, 0x26, + 0x01, 0x33, 0xbb, 0x42, 0xdf, 0xd1, 0xb9, 0xf1, 0x00, 0x0f, 0xcf, 0xd1, + 0x4e, 0x46, 0x13, 0xe0, 0x08, 0x21, 0x68, 0x46, 0x1c, 0x4a, 0x33, 0x46, + 0xdb, 0xf3, 0x70, 0xf7, 0x00, 0x20, 0x69, 0x46, 0xdc, 0xf3, 0xf0, 0xf3, + 0x38, 0xb1, 0x00, 0x21, 0xc4, 0xf8, 0x20, 0x66, 0x0a, 0x46, 0xdc, 0xf3, + 0xa9, 0xf2, 0xc4, 0xf8, 0x24, 0x06, 0x01, 0x36, 0xbe, 0x42, 0xe9, 0xd1, + 0x02, 0xa9, 0x03, 0xaa, 0x28, 0x46, 0xdf, 0xf3, 0x8f, 0xf5, 0x03, 0x9b, + 0x02, 0x9a, 0xd4, 0xf8, 0x1c, 0x16, 0x13, 0x43, 0x19, 0x43, 0x03, 0x93, + 0xc4, 0xf8, 0x1c, 0x16, 0x23, 0xb1, 0xc4, 0xf8, 0x1c, 0x36, 0x0a, 0xb1, + 0xc4, 0xf8, 0x18, 0x26, 0x4f, 0xf4, 0xfa, 0x60, 0xe0, 0xf3, 0x90, 0xf2, + 0x28, 0x46, 0x41, 0x46, 0xe4, 0xf3, 0xf0, 0xf7, 0x05, 0xb0, 0xbd, 0xe8, + 0xf0, 0x83, 0x00, 0xbf, 0x90, 0x95, 0x02, 0x00, 0x51, 0x36, 0x86, 0x00, + 0x60, 0x95, 0x02, 0x00, 0x56, 0x36, 0x86, 0x00, 0xf8, 0xb5, 0x04, 0x46, + 0x16, 0x46, 0x0f, 0x46, 0xe4, 0xf3, 0x0c, 0xf6, 0x00, 0x21, 0x05, 0x46, + 0x20, 0x46, 0xe4, 0xf3, 0xd9, 0xf7, 0x39, 0x46, 0x02, 0x46, 0x33, 0x46, + 0x20, 0x46, 0xff, 0xf7, 0x15, 0xfe, 0x20, 0x46, 0x29, 0x46, 0xbd, 0xe8, + 0xf8, 0x40, 0xe4, 0xf3, 0xcd, 0xb7, 0x38, 0xb5, 0x04, 0x46, 0xe4, 0xf3, + 0xf7, 0xf5, 0x00, 0x21, 0x05, 0x46, 0x20, 0x46, 0xe4, 0xf3, 0xc4, 0xf7, + 0x23, 0x6a, 0x01, 0x2b, 0x04, 0xd1, 0xd0, 0xf8, 0x00, 0x36, 0x23, 0xf4, + 0x00, 0x73, 0x04, 0xe0, 0x05, 0xdd, 0xd0, 0xf8, 0x00, 0x36, 0x43, 0xf4, + 0x00, 0x73, 0xc0, 0xf8, 0x00, 0x36, 0x20, 0x46, 0x29, 0x46, 0xbd, 0xe8, + 0x38, 0x40, 0xe4, 0xf3, 0xaf, 0xb7, 0x00, 0x00, 0x38, 0xb5, 0x04, 0x46, + 0x0d, 0x46, 0xff, 0xf7, 0xa7, 0xfe, 0x00, 0x22, 0x29, 0x46, 0x20, 0x46, + 0xdf, 0xf3, 0x80, 0xf6, 0x20, 0x46, 0xe4, 0xf3, 0xcf, 0xf5, 0x0b, 0x49, + 0x05, 0x46, 0x00, 0x20, 0xdc, 0xf3, 0x48, 0xf3, 0x4f, 0xf4, 0x00, 0x22, + 0x10, 0xf0, 0x01, 0x03, 0x4f, 0xf0, 0x00, 0x01, 0x20, 0x46, 0x18, 0xbf, + 0x13, 0x46, 0xdf, 0xf3, 0xa1, 0xf5, 0x20, 0x46, 0x29, 0x46, 0xbd, 0xe8, + 0x38, 0x40, 0xe4, 0xf3, 0x8b, 0xb7, 0x00, 0xbf, 0x78, 0x36, 0x86, 0x00, + 0xf8, 0xb5, 0x03, 0x6a, 0x05, 0x46, 0x09, 0x2b, 0x2a, 0xdd, 0xe4, 0xf3, + 0xaf, 0xf5, 0x00, 0x21, 0x06, 0x46, 0x28, 0x46, 0xe4, 0xf3, 0x7c, 0xf7, + 0xd0, 0xf8, 0x08, 0x46, 0x07, 0x46, 0x14, 0xf4, 0x80, 0x74, 0x18, 0xd0, + 0x4f, 0xf0, 0x00, 0x43, 0xc0, 0xf8, 0x6c, 0x36, 0x4f, 0xf4, 0x7a, 0x70, + 0xe0, 0xf3, 0x0a, 0xf2, 0xd7, 0xf8, 0x6c, 0x46, 0x00, 0x23, 0xe4, 0x04, + 0xe4, 0x0c, 0x64, 0x03, 0xc7, 0xf8, 0x6c, 0x36, 0x04, 0xf5, 0x42, 0x44, + 0x07, 0x4b, 0x04, 0xf5, 0xa8, 0x74, 0xb4, 0xfb, 0xf3, 0xf4, 0x64, 0x23, + 0x5c, 0x43, 0x28, 0x46, 0x31, 0x46, 0xe4, 0xf3, 0x59, 0xf7, 0x00, 0xe0, + 0x00, 0x24, 0x20, 0x46, 0xf8, 0xbd, 0x00, 0xbf, 0xa0, 0x86, 0x01, 0x00, + 0xf8, 0xb5, 0x04, 0x46, 0x0d, 0x46, 0x00, 0x20, 0x16, 0x49, 0xdc, 0xf3, + 0xf7, 0xf2, 0x16, 0x49, 0x87, 0xb2, 0x00, 0x20, 0xdc, 0xf3, 0xf2, 0xf2, + 0x40, 0xf2, 0xdc, 0x51, 0x00, 0x2f, 0x18, 0xbf, 0x39, 0x46, 0xc6, 0xb2, + 0x20, 0x46, 0xff, 0xf7, 0x6b, 0xfd, 0x00, 0x28, 0x0c, 0xdb, 0xc7, 0xb2, + 0x29, 0x46, 0x20, 0x46, 0x07, 0x22, 0x3b, 0x46, 0xff, 0xf7, 0x66, 0xfe, + 0x20, 0x46, 0x29, 0x46, 0x08, 0x22, 0x3b, 0x46, 0xff, 0xf7, 0x60, 0xfe, + 0x2e, 0xb1, 0x20, 0x46, 0x29, 0x46, 0x32, 0x46, 0x01, 0x23, 0xe6, 0xf7, + 0xdd, 0xfc, 0x20, 0x46, 0x29, 0x46, 0xbd, 0xe8, 0xf8, 0x40, 0xff, 0xf7, + 0xe7, 0xbd, 0x00, 0xbf, 0x6f, 0x36, 0x86, 0x00, 0xfc, 0xda, 0x01, 0x00, + 0x38, 0xb5, 0x00, 0x21, 0x05, 0x46, 0x10, 0x20, 0xe0, 0xf3, 0x0c, 0xf0, + 0x00, 0x21, 0x04, 0x46, 0x10, 0x22, 0xdb, 0xf3, 0x21, 0xf6, 0x65, 0x60, + 0x20, 0x46, 0x38, 0xbd, 0x38, 0xb5, 0x0c, 0x46, 0x15, 0x46, 0xe4, 0xf3, + 0x73, 0xf6, 0x10, 0x21, 0xe0, 0xf3, 0x5e, 0xf4, 0x48, 0xb1, 0x10, 0x23, + 0x43, 0x60, 0x05, 0x4b, 0xc4, 0x60, 0x1a, 0x68, 0x85, 0x60, 0x02, 0x60, + 0x18, 0x60, 0x00, 0x20, 0x38, 0xbd, 0x6f, 0xf0, 0x1a, 0x00, 0x38, 0xbd, + 0x6c, 0x27, 0x00, 0x00, 0x08, 0xb5, 0x06, 0x4b, 0x1b, 0x68, 0x3b, 0xb9, + 0x05, 0x4b, 0x19, 0x68, 0x21, 0xb1, 0x05, 0x4b, 0x1a, 0x68, 0x0a, 0xb1, + 0xff, 0xf7, 0xdc, 0xff, 0x00, 0x20, 0x08, 0xbd, 0x6c, 0x27, 0x00, 0x00, + 0xe8, 0xfe, 0x01, 0x00, 0xec, 0xfe, 0x01, 0x00, 0x38, 0xb5, 0x0c, 0x46, + 0x15, 0x46, 0xe4, 0xf3, 0x47, 0xf6, 0x10, 0x21, 0xe0, 0xf3, 0x32, 0xf4, + 0x90, 0xb1, 0x10, 0x23, 0x0a, 0x4a, 0x43, 0x60, 0x00, 0x23, 0x03, 0x60, + 0x13, 0x68, 0xc4, 0x60, 0x85, 0x60, 0x1b, 0xb9, 0x10, 0x60, 0x18, 0x46, + 0x38, 0xbd, 0x13, 0x46, 0x1a, 0x68, 0x00, 0x2a, 0xfb, 0xd1, 0x18, 0x60, + 0x10, 0x46, 0x38, 0xbd, 0x6f, 0xf0, 0x1a, 0x00, 0x38, 0xbd, 0x00, 0xbf, + 0x6c, 0x27, 0x00, 0x00, 0x38, 0xb5, 0x0c, 0x46, 0x15, 0x46, 0xe4, 0xf3, + 0x25, 0xf6, 0x10, 0x21, 0xe0, 0xf3, 0x10, 0xf4, 0x48, 0xb1, 0x10, 0x23, + 0x43, 0x60, 0x05, 0x4b, 0xc4, 0x60, 0x1a, 0x68, 0x85, 0x60, 0x02, 0x60, + 0x18, 0x60, 0x00, 0x20, 0x38, 0xbd, 0x6f, 0xf0, 0x1a, 0x00, 0x38, 0xbd, + 0x6c, 0x27, 0x00, 0x00, 0x01, 0x20, 0x70, 0x47, 0x00, 0x20, 0x70, 0x47, + 0x38, 0xb5, 0x41, 0xf2, 0xe4, 0x43, 0x04, 0x46, 0xc3, 0x62, 0x0d, 0x46, + 0x29, 0xb1, 0x08, 0x46, 0x09, 0x49, 0xdc, 0xf3, 0x45, 0xf2, 0xa0, 0x62, + 0x40, 0xb9, 0x00, 0x20, 0x07, 0x49, 0xdc, 0xf3, 0x3f, 0xf2, 0xa0, 0x62, + 0x10, 0xb9, 0x4f, 0xf6, 0xff, 0x73, 0xa3, 0x62, 0x28, 0x46, 0x04, 0x49, + 0xdc, 0xf3, 0x36, 0xf2, 0x20, 0x63, 0x38, 0xbd, 0x54, 0x37, 0x86, 0x00, + 0x5b, 0x37, 0x86, 0x00, 0x86, 0x37, 0x86, 0x00, 0x30, 0xb5, 0x85, 0xb0, + 0x01, 0x90, 0x00, 0x24, 0x04, 0xa8, 0x40, 0xf8, 0x04, 0x4d, 0x01, 0xa9, + 0x04, 0x22, 0xdb, 0xf3, 0x23, 0xf5, 0x01, 0x9d, 0xcd, 0xb1, 0x2b, 0x46, + 0xd3, 0xf8, 0x88, 0x20, 0x12, 0xb1, 0x00, 0x22, 0xc3, 0xf8, 0x88, 0x20, + 0x01, 0x34, 0x04, 0x33, 0x10, 0x2c, 0xf5, 0xd1, 0x03, 0x98, 0xdb, 0xf3, + 0xb1, 0xf4, 0x03, 0x98, 0xe6, 0xf7, 0x4a, 0xfc, 0x05, 0x4b, 0x9d, 0x42, + 0x05, 0xd0, 0x68, 0x6d, 0x29, 0x46, 0x4f, 0xf4, 0x56, 0x72, 0xe0, 0xf3, + 0xc3, 0xf3, 0x05, 0xb0, 0x30, 0xbd, 0x00, 0xbf, 0x88, 0x08, 0x02, 0x00, + 0x2d, 0xe9, 0xf8, 0x43, 0x00, 0x21, 0x04, 0x46, 0x98, 0x46, 0x08, 0x9f, + 0xdd, 0xf8, 0x24, 0x90, 0xe4, 0xf3, 0x4c, 0xf6, 0x05, 0x46, 0x20, 0x46, + 0xe4, 0xf3, 0x88, 0xf4, 0x0a, 0x28, 0xc8, 0xbf, 0xeb, 0x6a, 0x60, 0x61, + 0xc8, 0xbf, 0x63, 0x64, 0x22, 0x28, 0x6b, 0x68, 0xc8, 0xbf, 0xd5, 0xf8, + 0xac, 0x20, 0xa3, 0x61, 0xc8, 0xbf, 0xe2, 0x61, 0xdb, 0x00, 0x04, 0xd5, + 0xd5, 0xf8, 0x04, 0x36, 0x63, 0x62, 0xdb, 0xb2, 0x23, 0x62, 0x4f, 0xf4, + 0xe0, 0x63, 0xa3, 0x60, 0x4f, 0xf0, 0xff, 0x33, 0xe3, 0x60, 0x11, 0x23, + 0x23, 0x61, 0x26, 0x46, 0x00, 0x25, 0x13, 0xe0, 0x29, 0x46, 0xe4, 0xf3, + 0x25, 0xf6, 0x20, 0x46, 0xe4, 0xf3, 0x62, 0xf4, 0xb8, 0xf1, 0x00, 0x0f, + 0x03, 0xd0, 0xd6, 0xf8, 0x10, 0x31, 0x98, 0x45, 0x03, 0xd0, 0xd6, 0xf8, + 0x88, 0x30, 0x99, 0x45, 0x00, 0xd1, 0x3d, 0x60, 0x01, 0x35, 0x04, 0x36, + 0xd4, 0xf8, 0xcc, 0x30, 0x20, 0x46, 0x9d, 0x42, 0xe6, 0xd3, 0x39, 0x68, + 0xe4, 0xf3, 0x0c, 0xf6, 0x01, 0x20, 0xbd, 0xe8, 0xf8, 0x83, 0x00, 0x00, + 0x2d, 0xe9, 0xff, 0x47, 0x0c, 0x9d, 0x92, 0x46, 0xdd, 0xf8, 0x34, 0x90, + 0x88, 0x46, 0x4f, 0xf4, 0x56, 0x72, 0x00, 0x21, 0x04, 0x46, 0x1f, 0x46, + 0x0e, 0x9e, 0x01, 0x2d, 0x08, 0xbf, 0x00, 0x25, 0xdb, 0xf3, 0x06, 0xf5, + 0x11, 0x23, 0x23, 0x61, 0xc4, 0xf8, 0x84, 0x70, 0xc4, 0xf8, 0x58, 0x90, + 0xc4, 0xf8, 0x54, 0xa0, 0x65, 0x60, 0x00, 0x2d, 0x40, 0xf0, 0xb3, 0x80, + 0x20, 0x46, 0x29, 0x46, 0x42, 0x46, 0x4b, 0x46, 0xff, 0xf7, 0x3c, 0xff, + 0x00, 0x28, 0x00, 0xf0, 0xae, 0x80, 0x4f, 0xf0, 0xc0, 0x59, 0xd9, 0xf8, + 0x00, 0x30, 0x20, 0x46, 0x1a, 0x0f, 0x22, 0x60, 0x9a, 0xb2, 0xa2, 0x63, + 0x03, 0xf4, 0x70, 0x22, 0x03, 0xf4, 0x70, 0x03, 0x1b, 0x0d, 0x23, 0x64, + 0x0e, 0x3b, 0x12, 0x0c, 0x01, 0x2b, 0x8c, 0xbf, 0x00, 0x23, 0x01, 0x23, + 0xe2, 0x63, 0x84, 0xf8, 0x48, 0x30, 0x49, 0x46, 0x42, 0x46, 0xfe, 0xf7, + 0x3f, 0xf8, 0xd4, 0xf8, 0xcc, 0x30, 0x00, 0x2b, 0x00, 0xf0, 0x8b, 0x80, + 0x04, 0xab, 0x43, 0xf8, 0x04, 0x5d, 0x8d, 0xe8, 0x88, 0x00, 0x20, 0x46, + 0x49, 0x46, 0x2a, 0x46, 0x2b, 0x46, 0xff, 0xf7, 0x5f, 0xff, 0x00, 0x28, + 0x7f, 0xd0, 0x20, 0x46, 0xff, 0xf7, 0xba, 0xfe, 0x0f, 0x9b, 0x00, 0x96, + 0x01, 0x93, 0x20, 0x46, 0x29, 0x46, 0x3a, 0x46, 0x63, 0x6d, 0xff, 0xf7, + 0xc3, 0xfb, 0x00, 0x28, 0x73, 0xd1, 0x06, 0xb1, 0x36, 0x68, 0x3b, 0x4f, + 0x20, 0x46, 0x31, 0x46, 0xff, 0xf7, 0xfa, 0xfe, 0x3d, 0x78, 0x00, 0x2d, + 0x2f, 0xd1, 0x63, 0x69, 0x13, 0x2b, 0x0b, 0xdd, 0x4f, 0xf4, 0x00, 0x61, + 0x20, 0x46, 0x2a, 0x46, 0xe4, 0xf3, 0x80, 0xf5, 0x03, 0x99, 0x85, 0x65, + 0xc5, 0x65, 0x20, 0x46, 0xe4, 0xf3, 0x8c, 0xf5, 0x20, 0x46, 0x61, 0x6d, + 0xff, 0xf7, 0xbb, 0xfd, 0x20, 0x46, 0x61, 0x6d, 0xff, 0xf7, 0xd6, 0xfd, + 0x30, 0x46, 0x2c, 0x49, 0xdc, 0xf3, 0x2c, 0xf1, 0x02, 0x46, 0x20, 0xb9, + 0x20, 0x46, 0x61, 0x6d, 0xff, 0xf7, 0xf2, 0xfd, 0x02, 0x46, 0x20, 0x46, + 0x61, 0x6d, 0xff, 0xf7, 0x91, 0xfd, 0x20, 0x46, 0x61, 0x6d, 0xff, 0xf7, + 0xd9, 0xfc, 0x20, 0x46, 0x61, 0x6d, 0xff, 0xf7, 0x1b, 0xfe, 0x01, 0x23, + 0x3b, 0x70, 0x63, 0x69, 0x0f, 0x2b, 0x0f, 0xdd, 0x1f, 0x49, 0x30, 0x46, + 0xdc, 0xf3, 0x10, 0xf1, 0x1e, 0x4b, 0x00, 0x21, 0x00, 0x28, 0x08, 0xbf, + 0x18, 0x46, 0x00, 0x90, 0x88, 0x22, 0x20, 0x46, 0x4f, 0xf0, 0xff, 0x33, + 0xe4, 0xf3, 0x8e, 0xf3, 0x30, 0x46, 0x19, 0x49, 0xdc, 0xf3, 0x2c, 0xf1, + 0x38, 0xb1, 0x17, 0x49, 0x30, 0x46, 0xdc, 0xf3, 0xfb, 0xf0, 0x01, 0x46, + 0x20, 0x46, 0xe6, 0xf7, 0x48, 0xfb, 0x63, 0x69, 0x14, 0x2b, 0x17, 0xdd, + 0x00, 0x25, 0x29, 0x46, 0x08, 0x22, 0x2b, 0x46, 0x20, 0x46, 0x00, 0x95, + 0xe4, 0xf3, 0x76, 0xf3, 0x29, 0x46, 0x40, 0xf0, 0x04, 0x03, 0x08, 0x22, + 0x20, 0x46, 0x00, 0x93, 0xe4, 0xf3, 0x6e, 0xf3, 0x06, 0xe0, 0x00, 0x24, + 0x04, 0xe0, 0x1c, 0x46, 0x02, 0xe0, 0x04, 0x46, 0x00, 0xe0, 0x2c, 0x46, + 0x20, 0x46, 0x04, 0xb0, 0xbd, 0xe8, 0xf0, 0x87, 0xe0, 0x0b, 0x02, 0x00, + 0xe2, 0x38, 0x86, 0x00, 0xeb, 0x38, 0x86, 0x00, 0x5a, 0x00, 0x0a, 0x00, + 0xf1, 0x38, 0x86, 0x00, 0x1f, 0xb5, 0x0f, 0x4c, 0x02, 0x46, 0x23, 0x78, + 0xbb, 0xb9, 0x10, 0xb9, 0x03, 0x46, 0x01, 0x46, 0x01, 0xe0, 0x0c, 0x4b, + 0x19, 0x1d, 0x00, 0x20, 0x00, 0x90, 0x01, 0x90, 0x02, 0x93, 0x03, 0x91, + 0x09, 0x48, 0x44, 0xf2, 0x10, 0x71, 0x4f, 0xf0, 0xc0, 0x53, 0xff, 0xf7, + 0x03, 0xff, 0x28, 0xb1, 0x06, 0x4b, 0x20, 0x22, 0x1a, 0x60, 0x01, 0x23, + 0x23, 0x70, 0x03, 0x48, 0x04, 0xb0, 0x10, 0xbd, 0x84, 0x08, 0x02, 0x00, + 0x04, 0x09, 0x02, 0x00, 0x88, 0x08, 0x02, 0x00, 0x74, 0x27, 0x00, 0x00, + 0x2d, 0xe9, 0xff, 0x47, 0x80, 0x46, 0x0f, 0x46, 0x08, 0x46, 0x4f, 0xf4, + 0x56, 0x71, 0x91, 0x46, 0x9a, 0x46, 0x0d, 0x9e, 0x0e, 0x9d, 0xe0, 0xf3, + 0x45, 0xf2, 0x04, 0x46, 0xd8, 0xb1, 0x0c, 0x9b, 0x41, 0x46, 0x01, 0x93, + 0x3a, 0x46, 0x4b, 0x46, 0xcd, 0xf8, 0x00, 0xa0, 0x02, 0x96, 0x03, 0x95, + 0xff, 0xf7, 0xd8, 0xfe, 0x80, 0x46, 0x38, 0xb9, 0x21, 0x46, 0x38, 0x46, + 0x4f, 0xf4, 0x56, 0x72, 0xe0, 0xf3, 0x40, 0xf2, 0x44, 0x46, 0x06, 0xe0, + 0x06, 0xb1, 0x36, 0x68, 0xe6, 0x67, 0x05, 0xb1, 0x2d, 0x68, 0xc4, 0xf8, + 0x80, 0x50, 0x20, 0x46, 0x04, 0xb0, 0xbd, 0xe8, 0xf0, 0x87, 0x00, 0x20, + 0xdc, 0xf3, 0x74, 0xb0, 0x10, 0xb5, 0x0b, 0x49, 0x04, 0x46, 0xff, 0xf7, + 0xf8, 0xff, 0x80, 0xb2, 0x78, 0xb9, 0xe0, 0x6f, 0x07, 0x49, 0xdc, 0xf3, + 0x69, 0xf0, 0x80, 0xb2, 0x48, 0xb9, 0xe0, 0x6f, 0x05, 0x49, 0xdc, 0xf3, + 0x63, 0xf0, 0x4f, 0xf6, 0xff, 0x73, 0x80, 0xb2, 0x00, 0x28, 0x08, 0xbf, + 0x18, 0x46, 0x10, 0xbd, 0x48, 0x37, 0x86, 0x00, 0x4e, 0x37, 0x86, 0x00, + 0x73, 0xb5, 0x00, 0x23, 0xad, 0xf8, 0x06, 0x30, 0x83, 0x69, 0x04, 0x46, + 0x99, 0x00, 0x65, 0xd5, 0x83, 0x68, 0xb3, 0xf5, 0x02, 0x6f, 0x09, 0xd0, + 0x40, 0xf6, 0x04, 0x02, 0x93, 0x42, 0x07, 0xd1, 0xc5, 0x68, 0x0c, 0x2d, + 0x94, 0xbf, 0x00, 0x25, 0x01, 0x25, 0x02, 0xe0, 0x01, 0x25, 0x00, 0xe0, + 0x00, 0x25, 0xed, 0xb2, 0x4d, 0xb9, 0x20, 0x46, 0x4f, 0xf4, 0x00, 0x61, + 0x2a, 0x46, 0xd4, 0xf8, 0xc8, 0x60, 0xe4, 0xf3, 0x77, 0xf4, 0x30, 0xb9, + 0x48, 0xe0, 0xd4, 0xf8, 0x84, 0x00, 0x10, 0xf5, 0x40, 0x50, 0x43, 0xd0, + 0x00, 0x26, 0x63, 0x69, 0x22, 0x2b, 0x4f, 0xf0, 0x00, 0x03, 0xd8, 0xbf, + 0xc0, 0xf8, 0x68, 0x31, 0xc0, 0xf8, 0x64, 0x31, 0xc0, 0xf8, 0x60, 0x31, + 0x63, 0x69, 0x22, 0x2b, 0x03, 0xdc, 0x1d, 0x4b, 0xc0, 0xf8, 0x44, 0x31, + 0x05, 0xe0, 0x01, 0x23, 0xc0, 0xf8, 0x48, 0x31, 0xff, 0x23, 0xc0, 0xf8, + 0x4c, 0x31, 0x63, 0x69, 0x22, 0x2b, 0x4f, 0xf0, 0x00, 0x03, 0x06, 0xdc, + 0xc0, 0xf8, 0x80, 0x31, 0xc0, 0xf8, 0x7c, 0x31, 0xc0, 0xf8, 0x78, 0x31, + 0x03, 0xe0, 0xc0, 0xf8, 0x74, 0x31, 0xc0, 0xf8, 0x70, 0x31, 0x1d, 0xb9, + 0x20, 0x46, 0x31, 0x46, 0xe4, 0xf3, 0x54, 0xf4, 0x20, 0x46, 0x0d, 0xf1, + 0x06, 0x01, 0xff, 0xf7, 0xa9, 0xfd, 0x90, 0xb9, 0xbd, 0xf8, 0x06, 0x00, + 0x80, 0xb1, 0x63, 0x69, 0x20, 0x46, 0x22, 0x2b, 0xd9, 0xbf, 0x4f, 0xf4, + 0x80, 0x21, 0x0a, 0x46, 0x06, 0x49, 0x40, 0x22, 0x00, 0x23, 0xe4, 0xf3, + 0x8f, 0xf2, 0x02, 0xe0, 0x4f, 0xf0, 0xff, 0x30, 0x00, 0xe0, 0x00, 0x20, + 0x7c, 0xbd, 0x00, 0xbf, 0x00, 0x00, 0xfb, 0xbf, 0x40, 0x00, 0x55, 0x55, + 0x2d, 0xe9, 0xff, 0x41, 0x03, 0x68, 0x05, 0x46, 0x70, 0x21, 0xd8, 0x68, + 0xe0, 0xf3, 0x84, 0xf1, 0x04, 0x46, 0x00, 0x28, 0x43, 0xd0, 0x00, 0x21, + 0x70, 0x22, 0xdb, 0xf3, 0x35, 0xf3, 0x04, 0x23, 0x63, 0x60, 0xb4, 0x23, + 0x25, 0x60, 0xa3, 0x81, 0xa0, 0x46, 0x27, 0x46, 0x00, 0x26, 0x0d, 0xe0, + 0x18, 0x22, 0x02, 0xfb, 0x06, 0x42, 0x3c, 0x61, 0xa8, 0x68, 0x1b, 0x49, + 0x10, 0x32, 0x00, 0x23, 0xe8, 0xf3, 0x5e, 0xf6, 0x38, 0x62, 0x18, 0x37, + 0xf0, 0xb1, 0x01, 0x36, 0x63, 0x68, 0x9e, 0x42, 0xee, 0xdb, 0x16, 0x4b, + 0x16, 0x49, 0x00, 0x93, 0x00, 0x23, 0x01, 0x93, 0x02, 0x93, 0x03, 0x93, + 0x28, 0x68, 0x14, 0x4a, 0x23, 0x46, 0xfd, 0xf3, 0x5b, 0xf2, 0x18, 0xe0, + 0xd8, 0xf8, 0x20, 0x10, 0x31, 0xb1, 0x23, 0x68, 0x98, 0x68, 0xe8, 0xf3, + 0x27, 0xf6, 0x00, 0x23, 0xc8, 0xf8, 0x20, 0x30, 0x01, 0x35, 0x08, 0xf1, + 0x18, 0x08, 0x00, 0xe0, 0x05, 0x46, 0x63, 0x68, 0x9d, 0x42, 0xed, 0xdb, + 0x23, 0x68, 0x21, 0x46, 0x58, 0x68, 0x70, 0x22, 0xe0, 0xf3, 0x4e, 0xf1, + 0x00, 0x24, 0x20, 0x46, 0x04, 0xb0, 0xbd, 0xe8, 0xf0, 0x81, 0x00, 0xbf, + 0xf1, 0xd3, 0x00, 0x00, 0x83, 0xd2, 0x00, 0x00, 0xe4, 0xdb, 0x01, 0x00, + 0x09, 0xdc, 0x01, 0x00, 0x70, 0xb5, 0x04, 0x46, 0x00, 0x28, 0x26, 0xd0, + 0x03, 0x68, 0x13, 0x49, 0x18, 0x68, 0x22, 0x46, 0xfd, 0xf3, 0x62, 0xf2, + 0x25, 0x46, 0x00, 0x26, 0x10, 0xe0, 0x29, 0x6a, 0x29, 0xb1, 0x23, 0x68, + 0x98, 0x68, 0xe8, 0xf3, 0xf5, 0xf5, 0x00, 0x23, 0x2b, 0x62, 0xe9, 0x69, + 0x21, 0xb1, 0x23, 0x68, 0x2a, 0x8b, 0x58, 0x68, 0xe0, 0xf3, 0x24, 0xf1, + 0x01, 0x36, 0x18, 0x35, 0x63, 0x68, 0x9e, 0x42, 0xeb, 0xdb, 0x18, 0x22, + 0x5a, 0x43, 0x21, 0x68, 0x10, 0x32, 0x48, 0x68, 0x21, 0x46, 0xbd, 0xe8, + 0x70, 0x40, 0xe0, 0xf3, 0x15, 0xb1, 0x70, 0xbd, 0x08, 0xdc, 0x01, 0x00, + 0x00, 0x20, 0x70, 0x47, 0x10, 0xb5, 0x04, 0x46, 0xa8, 0xb1, 0x09, 0xf0, + 0xb5, 0xdf, 0x0a, 0x49, 0x60, 0x68, 0x22, 0x46, 0xfd, 0xf3, 0x32, 0xf2, + 0xe1, 0x6e, 0x21, 0xb1, 0x63, 0x68, 0x3c, 0x22, 0xd8, 0x68, 0xe0, 0xf3, + 0xff, 0xf0, 0x63, 0x68, 0x21, 0x46, 0xd8, 0x68, 0x70, 0x22, 0xbd, 0xe8, + 0x10, 0x40, 0xe0, 0xf3, 0xf7, 0xb0, 0x10, 0xbd, 0xd5, 0x8d, 0x86, 0x00, + 0x30, 0xb5, 0x70, 0x21, 0x85, 0xb0, 0x05, 0x46, 0x40, 0x68, 0xe0, 0xf3, + 0xdd, 0xf0, 0x04, 0x46, 0x00, 0x28, 0x2f, 0xd0, 0x00, 0x21, 0x70, 0x22, + 0xdb, 0xf3, 0x8e, 0xf2, 0x2b, 0x68, 0x25, 0x60, 0x63, 0x60, 0x68, 0x68, + 0x3c, 0x21, 0xe0, 0xf3, 0xcf, 0xf0, 0xe0, 0x66, 0xf0, 0xb1, 0x00, 0x21, + 0x3c, 0x22, 0xdb, 0xf3, 0x81, 0xf2, 0x11, 0x4b, 0x11, 0x49, 0x00, 0x93, + 0x00, 0x23, 0x01, 0x93, 0x02, 0x93, 0x10, 0x4b, 0x10, 0x4a, 0x03, 0x93, + 0x60, 0x68, 0x23, 0x46, 0xfd, 0xf3, 0xc0, 0xf1, 0x60, 0xb9, 0x01, 0x23, + 0x63, 0x82, 0xa3, 0x82, 0x20, 0x46, 0x29, 0x46, 0xff, 0xf7, 0xb2, 0xff, + 0x00, 0x28, 0x03, 0xdb, 0x20, 0x46, 0x0a, 0xf0, 0x65, 0xd8, 0x03, 0xe0, + 0x20, 0x46, 0xff, 0xf7, 0xab, 0xff, 0x00, 0x24, 0x20, 0x46, 0x05, 0xb0, + 0x30, 0xbd, 0x00, 0xbf, 0x39, 0x0b, 0x83, 0x00, 0x40, 0xe1, 0x85, 0x00, + 0x29, 0x0c, 0x83, 0x00, 0xd5, 0x8d, 0x86, 0x00, 0x10, 0xb5, 0x04, 0x46, + 0x68, 0xb1, 0x03, 0x68, 0x22, 0x46, 0x18, 0x68, 0x05, 0x49, 0xfd, 0xf3, + 0xd1, 0xf1, 0x23, 0x68, 0x21, 0x46, 0x58, 0x68, 0x08, 0x22, 0xbd, 0xe8, + 0x10, 0x40, 0xe0, 0xf3, 0x9d, 0xb0, 0x10, 0xbd, 0xcc, 0xbb, 0x86, 0x00, + 0x7f, 0xb5, 0x05, 0x46, 0x08, 0x21, 0x40, 0x68, 0xe0, 0xf3, 0x84, 0xf0, + 0x04, 0x46, 0x18, 0xb3, 0x00, 0x21, 0x08, 0x22, 0xdb, 0xf3, 0x36, 0xf2, + 0x00, 0x26, 0x04, 0x21, 0x28, 0x46, 0x10, 0x4a, 0x10, 0x4b, 0x00, 0x96, + 0x01, 0x94, 0x01, 0xf0, 0x23, 0xff, 0xb0, 0x42, 0x60, 0x60, 0x0f, 0xdb, + 0x0d, 0x4b, 0x28, 0x68, 0x00, 0x93, 0x0d, 0x4b, 0x0d, 0x49, 0x01, 0x93, + 0x0d, 0x4b, 0x0e, 0x4a, 0x03, 0x93, 0x23, 0x46, 0x02, 0x96, 0xfd, 0xf3, + 0x69, 0xf1, 0x08, 0xb9, 0x25, 0x60, 0x03, 0xe0, 0x20, 0x46, 0xff, 0xf7, + 0xc1, 0xff, 0x00, 0x24, 0x20, 0x46, 0x04, 0xb0, 0x70, 0xbd, 0x00, 0xbf, + 0x0f, 0xdd, 0x00, 0x00, 0xff, 0xe6, 0x00, 0x00, 0x03, 0xdd, 0x00, 0x00, + 0xff, 0xdc, 0x00, 0x00, 0x48, 0xdc, 0x01, 0x00, 0xfb, 0xdc, 0x00, 0x00, + 0xcc, 0xbb, 0x86, 0x00, 0xf8, 0xb5, 0x05, 0x68, 0x04, 0x46, 0x1b, 0x49, + 0x28, 0x68, 0x22, 0x46, 0xfd, 0xf3, 0x80, 0xf1, 0x00, 0x26, 0xb3, 0x01, + 0x03, 0xf5, 0x84, 0x73, 0xe1, 0x58, 0xe7, 0x18, 0x19, 0xb1, 0x68, 0x68, + 0x3a, 0x89, 0xe0, 0xf3, 0x49, 0xf0, 0x79, 0x68, 0x19, 0xb1, 0x68, 0x68, + 0x7a, 0x89, 0xe0, 0xf3, 0x43, 0xf0, 0x01, 0x36, 0x04, 0x2e, 0xec, 0xd1, + 0xd4, 0xf8, 0x0c, 0x12, 0x21, 0xb1, 0x68, 0x68, 0xb4, 0xf8, 0x10, 0x22, + 0xe0, 0xf3, 0x38, 0xf0, 0xd4, 0xf8, 0x1c, 0x12, 0x11, 0xb1, 0xa8, 0x68, + 0xe8, 0xf3, 0xfa, 0xf4, 0xd4, 0xf8, 0x20, 0x12, 0x19, 0xb1, 0x68, 0x68, + 0x04, 0x22, 0xe0, 0xf3, 0x2b, 0xf0, 0x68, 0x68, 0x21, 0x46, 0x4f, 0xf4, + 0x23, 0x72, 0xbd, 0xe8, 0xf8, 0x40, 0xe0, 0xf3, 0x23, 0xb0, 0x00, 0xbf, + 0x54, 0xdc, 0x01, 0x00, 0x2d, 0xe9, 0xf0, 0x41, 0x06, 0x46, 0x0f, 0x46, + 0xc0, 0x68, 0x2c, 0x21, 0x15, 0x46, 0x98, 0x46, 0xe0, 0xf3, 0x06, 0xf0, + 0x04, 0x46, 0xc0, 0xb1, 0x00, 0x21, 0x2c, 0x22, 0xdb, 0xf3, 0xb8, 0xf1, + 0xe5, 0x60, 0x28, 0x46, 0xc4, 0xf8, 0x1c, 0x80, 0xa7, 0x60, 0x26, 0x61, + 0x08, 0x49, 0x22, 0x46, 0x00, 0x23, 0xe8, 0xf3, 0xe9, 0xf4, 0x05, 0x46, + 0xa0, 0x61, 0x30, 0xb9, 0x23, 0x69, 0x21, 0x46, 0xd8, 0x68, 0x2c, 0x22, + 0xdf, 0xf3, 0xfc, 0xf7, 0x2c, 0x46, 0x20, 0x46, 0xbd, 0xe8, 0xf0, 0x81, + 0x3d, 0x66, 0x84, 0x00, 0x10, 0xb5, 0x04, 0x46, 0xe8, 0xf7, 0x43, 0xf8, + 0xa1, 0x69, 0x61, 0xb1, 0x23, 0x7d, 0x23, 0xb1, 0xe0, 0x68, 0xe8, 0xf3, + 0xa1, 0xf4, 0x00, 0x23, 0x23, 0x75, 0xe0, 0x68, 0xa1, 0x69, 0xe8, 0xf3, + 0xad, 0xf4, 0x00, 0x23, 0xa3, 0x61, 0x23, 0x69, 0x21, 0x46, 0xd8, 0x68, + 0x2c, 0x22, 0xdf, 0xf3, 0xdd, 0xf7, 0x00, 0x20, 0x10, 0xbd, 0x00, 0x00, + 0x38, 0xb5, 0x05, 0x68, 0x04, 0x46, 0x22, 0x46, 0x28, 0x68, 0x05, 0x49, + 0xfd, 0xf3, 0xfe, 0xf0, 0x68, 0x68, 0x21, 0x46, 0x50, 0x22, 0xbd, 0xe8, + 0x38, 0x40, 0xdf, 0xf3, 0xcb, 0xb7, 0x00, 0xbf, 0x3c, 0xe4, 0x86, 0x00, + 0x1f, 0xb5, 0x08, 0x4a, 0x03, 0x46, 0x00, 0x92, 0x00, 0x22, 0x01, 0x92, + 0x02, 0x92, 0x03, 0x92, 0x05, 0x49, 0x06, 0x4a, 0x00, 0x68, 0xfd, 0xf3, + 0xaf, 0xf0, 0x00, 0x30, 0x18, 0xbf, 0x01, 0x20, 0x05, 0xb0, 0x00, 0xbd, + 0x01, 0xf3, 0x00, 0x00, 0xc4, 0xdd, 0x01, 0x00, 0x18, 0xdd, 0x01, 0x00, + 0x70, 0xb5, 0xd0, 0xf8, 0xb8, 0x40, 0x0e, 0x46, 0x08, 0x46, 0x00, 0x29, + 0x1f, 0xd0, 0xdb, 0xf3, 0xdf, 0xf1, 0x05, 0x46, 0x90, 0xb9, 0x1a, 0xe0, + 0x20, 0x46, 0x31, 0x46, 0x2a, 0x46, 0xdb, 0xf3, 0xc7, 0xf0, 0x28, 0xb9, + 0x63, 0x5d, 0x3d, 0x2b, 0x02, 0xd1, 0x01, 0x35, 0x60, 0x19, 0x70, 0xbd, + 0x23, 0x46, 0x13, 0xf8, 0x01, 0x2b, 0x1c, 0x46, 0x00, 0x2a, 0xfa, 0xd1, + 0x14, 0xb1, 0x23, 0x78, 0x00, 0x2b, 0xe9, 0xd1, 0x30, 0x46, 0xbd, 0xe8, + 0x70, 0x40, 0xe0, 0xf3, 0x47, 0xb7, 0x70, 0xbd, 0x2d, 0xe9, 0xf3, 0x41, + 0x00, 0xf5, 0x9a, 0x58, 0xb8, 0xf8, 0x18, 0x30, 0x04, 0x46, 0x0e, 0x46, + 0x33, 0xb3, 0x08, 0x46, 0xdb, 0xf3, 0xb4, 0xf1, 0x07, 0x46, 0x17, 0x48, + 0xdb, 0xf3, 0xb0, 0xf1, 0x3f, 0x18, 0xe3, 0x69, 0x10, 0x37, 0xbf, 0xb2, + 0x98, 0x68, 0x39, 0x46, 0xdf, 0xf3, 0x60, 0xf7, 0x05, 0x46, 0xe0, 0xb1, + 0xb8, 0xf8, 0x18, 0x30, 0x10, 0x4a, 0x00, 0x93, 0x39, 0x46, 0x33, 0x46, + 0xdb, 0xf3, 0x52, 0xf1, 0x29, 0x46, 0x20, 0x46, 0xe9, 0xf7, 0xf4, 0xff, + 0xe3, 0x69, 0x80, 0x46, 0x29, 0x46, 0x98, 0x68, 0x3a, 0x46, 0xdf, 0xf3, + 0x5b, 0xf7, 0xb8, 0xf1, 0x00, 0x0f, 0x07, 0xd1, 0x20, 0x46, 0x31, 0x46, + 0x02, 0xb0, 0xbd, 0xe8, 0xf0, 0x41, 0xe9, 0xf7, 0xe3, 0xbf, 0x80, 0x46, + 0x40, 0x46, 0x02, 0xb0, 0xbd, 0xe8, 0xf0, 0x81, 0xdc, 0xde, 0x01, 0x00, + 0xe2, 0xde, 0x01, 0x00, 0x2d, 0xe9, 0xf0, 0x4f, 0x00, 0xf5, 0x9a, 0x59, + 0x1c, 0x46, 0xb9, 0xf8, 0x18, 0x30, 0x85, 0xb0, 0x06, 0x46, 0x88, 0x46, + 0x92, 0x46, 0xd0, 0xf8, 0xb8, 0x70, 0x00, 0x2b, 0x38, 0xd0, 0x08, 0x46, + 0xdb, 0xf3, 0x6e, 0xf1, 0x83, 0x46, 0x25, 0x48, 0xdb, 0xf3, 0x6a, 0xf1, + 0x83, 0x44, 0xf3, 0x69, 0x0b, 0xf1, 0x10, 0x0b, 0x1f, 0xfa, 0x8b, 0xfb, + 0x98, 0x68, 0x59, 0x46, 0xdf, 0xf3, 0x18, 0xf7, 0x05, 0x46, 0x00, 0x28, + 0x33, 0xd0, 0xb9, 0xf8, 0x18, 0x30, 0x59, 0x46, 0x00, 0x93, 0x1c, 0x4a, + 0x43, 0x46, 0xdb, 0xf3, 0x09, 0xf1, 0x30, 0x46, 0x29, 0x46, 0xe9, 0xf7, + 0xb7, 0xff, 0x03, 0x90, 0x68, 0xb1, 0x38, 0x46, 0x29, 0x46, 0xdb, 0xf7, + 0xe7, 0xfc, 0x40, 0xb1, 0x50, 0x45, 0x06, 0xdd, 0x38, 0x46, 0x29, 0x46, + 0x52, 0x46, 0xdb, 0xf3, 0x5d, 0xf5, 0x81, 0x46, 0x00, 0xe0, 0xa1, 0x46, + 0xf3, 0x69, 0x29, 0x46, 0x98, 0x68, 0x5a, 0x46, 0xdf, 0xf3, 0x02, 0xf7, + 0x03, 0x9b, 0x8b, 0xb9, 0x38, 0x46, 0x41, 0x46, 0xdb, 0xf7, 0xd0, 0xfc, + 0x58, 0xb1, 0x50, 0x45, 0x09, 0xdd, 0x38, 0x46, 0x41, 0x46, 0x52, 0x46, + 0x05, 0xb0, 0xbd, 0xe8, 0xf0, 0x4f, 0xdb, 0xf3, 0x43, 0xb5, 0x81, 0x46, + 0x00, 0xe0, 0xa1, 0x46, 0x48, 0x46, 0x05, 0xb0, 0xbd, 0xe8, 0xf0, 0x8f, + 0xdc, 0xde, 0x01, 0x00, 0xe2, 0xde, 0x01, 0x00, 0x70, 0xb5, 0x90, 0xf8, + 0xc4, 0x30, 0x01, 0x26, 0x1b, 0x49, 0x9e, 0x40, 0x05, 0x46, 0xe9, 0xf7, + 0x94, 0xff, 0x05, 0xf5, 0x80, 0x54, 0xc0, 0xb2, 0x84, 0xf8, 0x32, 0x00, + 0x01, 0x38, 0xc0, 0xb2, 0x01, 0x3e, 0xfd, 0x28, 0xf6, 0xb2, 0x02, 0xd9, + 0x73, 0x23, 0x84, 0xf8, 0x32, 0x30, 0x94, 0xf8, 0x32, 0x30, 0x28, 0x46, + 0x84, 0xf8, 0x33, 0x30, 0x10, 0x49, 0xe9, 0xf7, 0x7e, 0xff, 0xc0, 0xb2, + 0x84, 0xf8, 0x34, 0x00, 0x05, 0xf5, 0x80, 0x55, 0x08, 0xb1, 0x0f, 0x28, + 0x02, 0xd1, 0x05, 0x23, 0x85, 0xf8, 0x34, 0x30, 0x95, 0xf8, 0x32, 0x20, + 0x95, 0xf8, 0x34, 0x30, 0x46, 0xea, 0x06, 0x16, 0xd3, 0x1a, 0x85, 0xf8, + 0x35, 0x30, 0x00, 0x23, 0x85, 0xf8, 0x36, 0x30, 0x85, 0xf8, 0x38, 0x30, + 0x85, 0xf8, 0x37, 0x60, 0x70, 0xbd, 0x00, 0xbf, 0x01, 0x96, 0x02, 0x00, + 0xdb, 0x95, 0x02, 0x00, 0x38, 0xb5, 0x98, 0x21, 0x05, 0x46, 0x00, 0x68, + 0xdf, 0xf3, 0x90, 0xf6, 0x04, 0x46, 0x00, 0x28, 0x32, 0xd0, 0x00, 0x21, + 0x98, 0x22, 0xdb, 0xf3, 0x41, 0xf0, 0x2b, 0x68, 0xa3, 0x60, 0x6b, 0x68, + 0xe3, 0x60, 0xab, 0x68, 0x23, 0x61, 0xeb, 0x68, 0x63, 0x60, 0x2b, 0x69, + 0x63, 0x61, 0x2b, 0x8c, 0xa3, 0x84, 0x6b, 0x8c, 0xe3, 0x84, 0x6b, 0x6a, + 0xa3, 0x62, 0xab, 0x6a, 0xe3, 0x62, 0xeb, 0x6a, 0x23, 0x63, 0x2b, 0x6b, + 0x63, 0x63, 0x6b, 0x6b, 0x63, 0x64, 0xab, 0x6b, 0xa3, 0x64, 0xeb, 0x6b, + 0xe3, 0x64, 0x2b, 0x6c, 0x23, 0x65, 0x6b, 0x6c, 0x63, 0x65, 0x6b, 0x69, + 0xa3, 0x65, 0xab, 0x69, 0xe3, 0x65, 0x0f, 0x23, 0x23, 0x66, 0x3c, 0x23, + 0x63, 0x66, 0x78, 0x23, 0xa3, 0x66, 0x03, 0x23, 0xe3, 0x66, 0x00, 0x23, + 0x84, 0xf8, 0x94, 0x30, 0x20, 0x46, 0x38, 0xbd, 0x01, 0x46, 0x18, 0xb1, + 0x80, 0x68, 0x98, 0x22, 0xdf, 0xf3, 0x62, 0xb6, 0x70, 0x47, 0x10, 0xb5, + 0xb0, 0xf8, 0xbc, 0x40, 0x0c, 0x80, 0xb0, 0xf8, 0xc0, 0x10, 0x11, 0x80, + 0xb0, 0xf8, 0xc6, 0x20, 0x1a, 0x80, 0x90, 0xf8, 0xc8, 0x20, 0x02, 0x9b, + 0x01, 0x20, 0x1a, 0x80, 0x10, 0xbd, 0x90, 0xf8, 0xd4, 0x00, 0x70, 0x47, + 0xd0, 0xf8, 0xcc, 0x00, 0x70, 0x47, 0x00, 0x00, 0x38, 0xb5, 0x01, 0x21, + 0x04, 0x46, 0xe9, 0xf7, 0xd9, 0xff, 0x20, 0x46, 0xe9, 0xf7, 0xa8, 0xfd, + 0x0f, 0x4d, 0x03, 0x0f, 0x05, 0x40, 0x2d, 0x0b, 0x84, 0xf8, 0xc8, 0x30, + 0x42, 0xf2, 0x64, 0x03, 0x00, 0xf0, 0x0f, 0x00, 0x9d, 0x42, 0xa4, 0xf8, + 0xc6, 0x50, 0x84, 0xf8, 0xc9, 0x00, 0x07, 0xd0, 0x42, 0xf2, 0x66, 0x03, + 0x9d, 0x42, 0x14, 0xbf, 0x4f, 0xf0, 0xff, 0x35, 0x00, 0x25, 0x00, 0xe0, + 0x00, 0x25, 0x20, 0x46, 0x00, 0x21, 0xea, 0xf7, 0xbb, 0xf9, 0x28, 0x46, + 0x38, 0xbd, 0x00, 0xbf, 0x00, 0xf0, 0xff, 0x0f, 0x2d, 0xe9, 0xf0, 0x47, + 0x8a, 0x46, 0x00, 0x21, 0xd0, 0xf8, 0x08, 0x90, 0x04, 0x46, 0x15, 0x46, + 0xc0, 0x68, 0x0a, 0x46, 0x98, 0x46, 0xe3, 0xf3, 0xc5, 0xf6, 0x03, 0x07, + 0x07, 0x46, 0x14, 0xd5, 0x26, 0x68, 0x96, 0xb1, 0x30, 0x46, 0x29, 0x46, + 0x00, 0xf0, 0xaa, 0xfa, 0x00, 0x28, 0x00, 0xf0, 0x5f, 0x81, 0xf3, 0x69, + 0xd6, 0xf8, 0xcc, 0x10, 0x18, 0x69, 0x29, 0xf0, 0xd9, 0xda, 0xd6, 0xf8, + 0xe4, 0x30, 0x01, 0x33, 0xc6, 0xf8, 0xe4, 0x30, 0x59, 0xe1, 0x48, 0x46, + 0x41, 0xf2, 0x88, 0x31, 0xdf, 0xf3, 0xe6, 0xf5, 0x06, 0x46, 0x00, 0x28, + 0x00, 0xf0, 0x51, 0x81, 0x00, 0x21, 0x41, 0xf2, 0x88, 0x32, 0xda, 0xf3, + 0x95, 0xf7, 0x06, 0xf5, 0x92, 0x53, 0x10, 0x33, 0x06, 0xf5, 0x8e, 0x52, + 0x53, 0x63, 0x01, 0x23, 0x86, 0xf8, 0xe1, 0x30, 0xe2, 0x6c, 0x41, 0xf2, + 0x6b, 0x03, 0x9a, 0x42, 0xc6, 0xf8, 0xb0, 0xa0, 0xf4, 0x61, 0x05, 0xd1, + 0x63, 0x6c, 0x93, 0x2b, 0x0c, 0xbf, 0x01, 0x23, 0x18, 0x23, 0x00, 0xe0, + 0x18, 0x23, 0xa6, 0xf8, 0x22, 0x36, 0x64, 0x23, 0x00, 0x21, 0x04, 0x22, + 0x86, 0xf8, 0xe0, 0x30, 0x02, 0x2d, 0x06, 0xf5, 0x90, 0x53, 0xc6, 0xf8, + 0xb8, 0x80, 0x83, 0xf8, 0x38, 0x10, 0x83, 0xf8, 0x39, 0x20, 0x83, 0xf8, + 0x3a, 0x10, 0x83, 0xf8, 0x3b, 0x20, 0x05, 0xd1, 0xff, 0x07, 0x44, 0xbf, + 0x4f, 0xf4, 0x00, 0x53, 0xc6, 0xf8, 0xcc, 0x30, 0xd6, 0xf8, 0xcc, 0x10, + 0x20, 0x69, 0x29, 0xf0, 0x8d, 0xda, 0xd6, 0xf8, 0xb0, 0x30, 0xb3, 0xf8, + 0xe0, 0x73, 0xf3, 0x69, 0xbf, 0xb2, 0xd8, 0x68, 0xe5, 0xf7, 0xef, 0xff, + 0x06, 0xf5, 0x9a, 0x53, 0x18, 0x83, 0xf0, 0x69, 0x07, 0xf0, 0x0f, 0x03, + 0xc6, 0xf8, 0xc0, 0x30, 0x82, 0x4a, 0x83, 0x6a, 0x07, 0xf4, 0x70, 0x61, + 0x9a, 0x18, 0x09, 0x0a, 0x01, 0x2a, 0xc6, 0xf8, 0xbc, 0x10, 0x07, 0xd9, + 0x4a, 0xf6, 0xe6, 0x02, 0x93, 0x42, 0x03, 0xd0, 0x4a, 0xf6, 0xe2, 0x02, + 0x93, 0x42, 0x06, 0xd1, 0xc3, 0x6a, 0x02, 0x3b, 0x01, 0x2b, 0x02, 0xd8, + 0x09, 0x23, 0xc6, 0xf8, 0xc0, 0x30, 0x09, 0x29, 0x07, 0xd1, 0x04, 0x23, + 0xc6, 0xf8, 0xbc, 0x30, 0xd6, 0xf8, 0xc0, 0x30, 0x10, 0x33, 0xc6, 0xf8, + 0xc0, 0x30, 0x01, 0x23, 0x86, 0xf8, 0xc4, 0x30, 0xd6, 0xf8, 0xbc, 0x30, + 0x3f, 0x0b, 0x02, 0x2b, 0xc6, 0xf8, 0xd0, 0x70, 0x07, 0xd9, 0x0a, 0x2b, + 0x00, 0xf2, 0xcc, 0x80, 0x4f, 0xf0, 0x7a, 0x62, 0x9a, 0x40, 0x40, 0xf1, + 0xc7, 0x80, 0x06, 0xf5, 0x80, 0x53, 0x3c, 0x22, 0x5a, 0x61, 0x00, 0x22, + 0x9a, 0x61, 0x4f, 0xf4, 0x00, 0x62, 0xa6, 0xf8, 0xde, 0x20, 0x42, 0xf6, + 0x01, 0x33, 0x41, 0xf6, 0x24, 0x32, 0x02, 0x2d, 0x18, 0xbf, 0x13, 0x46, + 0xa6, 0xf8, 0xda, 0x30, 0x86, 0xf8, 0x00, 0x37, 0x30, 0x46, 0x5e, 0x49, + 0xe9, 0xf7, 0xf4, 0xfd, 0x88, 0xb1, 0x5c, 0x49, 0x30, 0x46, 0xf7, 0x69, + 0xe9, 0xf7, 0x07, 0xfe, 0x59, 0x49, 0x38, 0x67, 0x30, 0x46, 0xf7, 0x69, + 0xe9, 0xf7, 0x01, 0xfe, 0xf3, 0x69, 0x78, 0x67, 0x02, 0x2d, 0x0c, 0xbf, + 0x1a, 0x6f, 0x5a, 0x6f, 0xda, 0x66, 0x06, 0xf5, 0x90, 0x52, 0x0a, 0x23, + 0x93, 0x71, 0x03, 0x23, 0xd3, 0x71, 0x01, 0x22, 0x00, 0x27, 0x86, 0xf8, + 0xe8, 0x20, 0x06, 0xf5, 0x91, 0x52, 0x17, 0x70, 0x06, 0xf5, 0x80, 0x58, + 0x09, 0x22, 0x88, 0xf8, 0x3b, 0x20, 0xf2, 0x69, 0x86, 0xf8, 0xe9, 0x75, + 0x86, 0xf8, 0xee, 0x75, 0x86, 0xf8, 0xf3, 0x75, 0x86, 0xf8, 0xf8, 0x75, + 0x86, 0xf8, 0xfd, 0x75, 0x30, 0x46, 0x82, 0xf8, 0x93, 0x30, 0xff, 0xf7, + 0x3b, 0xfe, 0x06, 0xf5, 0x96, 0x53, 0x4f, 0xf6, 0xce, 0x72, 0x9a, 0x84, + 0x88, 0xf8, 0x39, 0x70, 0x86, 0xf8, 0xf4, 0x70, 0x33, 0x46, 0x7f, 0x22, + 0x01, 0x37, 0x83, 0xf8, 0x2c, 0x26, 0x83, 0xf8, 0x91, 0x26, 0x83, 0xf8, + 0xb2, 0x22, 0x01, 0x33, 0x65, 0x2f, 0xf4, 0xd1, 0x4f, 0xf0, 0xff, 0x33, + 0xa6, 0xf8, 0xfa, 0x36, 0x00, 0x23, 0x86, 0xf8, 0xac, 0x30, 0x30, 0x46, + 0x29, 0x46, 0x01, 0xf0, 0xa1, 0xf9, 0x00, 0x28, 0x56, 0xd0, 0x30, 0x46, + 0xe9, 0xf7, 0x55, 0xfc, 0x30, 0x46, 0xff, 0xf7, 0xaf, 0xfe, 0x05, 0x46, + 0x00, 0x28, 0x4d, 0xd1, 0x2d, 0x49, 0x06, 0x22, 0x30, 0x46, 0xe9, 0xf7, + 0x9b, 0xfd, 0x06, 0xf5, 0x98, 0x57, 0xb8, 0x71, 0x2a, 0x49, 0x01, 0x22, + 0x30, 0x46, 0xe9, 0xf7, 0x93, 0xfd, 0x29, 0x49, 0x38, 0x75, 0x2a, 0x46, + 0x30, 0x46, 0xe9, 0xf7, 0x8d, 0xfd, 0x06, 0xf5, 0x9a, 0x57, 0xb8, 0x76, + 0x25, 0x49, 0x30, 0x46, 0x07, 0x22, 0xe9, 0xf7, 0x85, 0xfd, 0xf8, 0x76, + 0x2a, 0x46, 0x30, 0x46, 0x22, 0x49, 0xe9, 0xf7, 0xa3, 0xfd, 0x73, 0x19, + 0x01, 0x35, 0x03, 0xf5, 0x9a, 0x53, 0x18, 0x2d, 0x18, 0x77, 0xf3, 0xd1, + 0x00, 0x25, 0x2a, 0x46, 0x30, 0x46, 0x1d, 0x49, 0xe9, 0xf7, 0x96, 0xfd, + 0x73, 0x19, 0x01, 0x35, 0x03, 0xf5, 0x9a, 0x53, 0x0e, 0x2d, 0x83, 0xf8, + 0x34, 0x00, 0xf2, 0xd1, 0xd6, 0xf8, 0xe4, 0x30, 0x01, 0x33, 0xc6, 0xf8, + 0xe4, 0x30, 0xf3, 0x69, 0x1a, 0x68, 0xd8, 0x68, 0xc6, 0xf8, 0xb4, 0x20, + 0x26, 0x60, 0xff, 0xf7, 0x9f, 0xfa, 0x06, 0xf1, 0xb8, 0x03, 0xc6, 0xf8, + 0xb8, 0x30, 0x30, 0x46, 0x06, 0xf1, 0xbc, 0x01, 0x1c, 0x22, 0xda, 0xf3, + 0xed, 0xf5, 0x06, 0xe0, 0x31, 0x46, 0xa0, 0x68, 0x41, 0xf2, 0x88, 0x32, + 0xdf, 0xf3, 0xa2, 0xf4, 0x00, 0x26, 0x30, 0x46, 0xbd, 0xe8, 0xf0, 0x87, + 0x1d, 0x57, 0xff, 0xff, 0x0c, 0x96, 0x02, 0x00, 0xb0, 0x95, 0x02, 0x00, + 0xcf, 0x95, 0x02, 0x00, 0xc2, 0x95, 0x02, 0x00, 0xec, 0x95, 0x02, 0x00, + 0xfa, 0x95, 0x02, 0x00, 0xbb, 0x95, 0x02, 0x00, 0x70, 0xb5, 0x04, 0x46, + 0x00, 0x28, 0x32, 0xd0, 0xd0, 0xf8, 0xe4, 0x50, 0x01, 0x3d, 0xc0, 0xf8, + 0xe4, 0x50, 0x00, 0x2d, 0x2b, 0xd1, 0x00, 0xf5, 0x96, 0x56, 0xb1, 0x6a, + 0x21, 0xb1, 0xc3, 0x69, 0x18, 0x69, 0xf4, 0xf7, 0x0f, 0xf8, 0xb5, 0x62, + 0x04, 0xf5, 0x8e, 0x53, 0x00, 0x25, 0x83, 0xf8, 0x3d, 0x50, 0x20, 0x46, + 0xea, 0xf7, 0x82, 0xfe, 0xe2, 0x69, 0x13, 0x68, 0xa3, 0x42, 0x03, 0xd1, + 0xd4, 0xf8, 0xb4, 0x30, 0x13, 0x60, 0x05, 0xe0, 0xd3, 0xf8, 0xb4, 0x20, + 0xa2, 0x42, 0x08, 0xbf, 0xc3, 0xf8, 0xb4, 0x50, 0xe3, 0x6e, 0x0b, 0xb1, + 0x20, 0x46, 0x98, 0x47, 0xe3, 0x69, 0x21, 0x46, 0x98, 0x68, 0x41, 0xf2, + 0x88, 0x32, 0xbd, 0xe8, 0x70, 0x40, 0xdf, 0xf3, 0x57, 0xb4, 0x70, 0xbd, + 0x1f, 0xb5, 0x09, 0x4b, 0x09, 0x49, 0x00, 0x93, 0x00, 0x23, 0x01, 0x93, + 0x02, 0x93, 0x03, 0x93, 0x07, 0x4a, 0x03, 0x68, 0xfc, 0xf3, 0x3e, 0xf5, + 0x00, 0x28, 0x14, 0xbf, 0x4f, 0xf0, 0xff, 0x30, 0x00, 0x20, 0x05, 0xb0, + 0x00, 0xbd, 0x00, 0xbf, 0x19, 0x2b, 0x01, 0x00, 0xd8, 0xe4, 0x01, 0x00, + 0xa4, 0xe5, 0x01, 0x00, 0x01, 0x49, 0x02, 0x68, 0xfc, 0xf3, 0x64, 0xb5, + 0xa4, 0xe5, 0x01, 0x00, 0x00, 0x23, 0xf0, 0xb5, 0x1c, 0x46, 0x07, 0xe0, + 0xcd, 0x18, 0x2f, 0x68, 0xc6, 0x18, 0xc7, 0x50, 0x2d, 0x79, 0x01, 0x34, + 0x35, 0x71, 0x05, 0x33, 0x94, 0x42, 0xf5, 0xd1, 0xf0, 0xbd, 0x00, 0x00, + 0x02, 0x29, 0x38, 0xb5, 0x05, 0x46, 0x0c, 0x46, 0x0a, 0xd0, 0x03, 0x29, + 0x11, 0xd0, 0x01, 0x29, 0x16, 0xd1, 0x06, 0x22, 0x0b, 0x49, 0xe9, 0xf7, + 0x63, 0xfd, 0xeb, 0x69, 0x00, 0x22, 0x05, 0xe0, 0x06, 0x22, 0x09, 0x49, + 0xe9, 0xf7, 0x5c, 0xfd, 0xeb, 0x69, 0x01, 0x22, 0x83, 0xf8, 0x81, 0x20, + 0x38, 0xbd, 0x06, 0x49, 0x06, 0x22, 0xe9, 0xf7, 0x53, 0xfd, 0xeb, 0x69, + 0x83, 0xf8, 0x81, 0x40, 0x38, 0xbd, 0x00, 0xbf, 0x8c, 0xeb, 0x01, 0x00, + 0xe4, 0xed, 0x01, 0x00, 0x16, 0xed, 0x01, 0x00, 0x38, 0xb5, 0xd0, 0xf8, + 0xa8, 0x40, 0x00, 0x23, 0xc4, 0xf8, 0x74, 0x35, 0x94, 0xf8, 0xc1, 0x53, + 0x10, 0x4b, 0x11, 0x4a, 0x4f, 0xf4, 0x20, 0x71, 0x02, 0x2d, 0x14, 0xbf, + 0x15, 0x46, 0x1d, 0x46, 0xc3, 0x69, 0x98, 0x68, 0xdf, 0xf3, 0xda, 0xf3, + 0xc4, 0xf8, 0x74, 0x05, 0x88, 0xb1, 0x80, 0x22, 0x29, 0x46, 0xff, 0xf7, + 0xad, 0xff, 0x94, 0xf8, 0x3a, 0x35, 0x02, 0x2b, 0x08, 0xd1, 0xd4, 0xf8, + 0x74, 0x05, 0x06, 0x49, 0xa0, 0x30, 0x15, 0x22, 0xff, 0xf7, 0xa2, 0xff, + 0x01, 0x20, 0x38, 0xbd, 0x01, 0x20, 0x38, 0xbd, 0x78, 0xa4, 0x02, 0x00, + 0x14, 0xa0, 0x02, 0x00, 0x78, 0xa8, 0x02, 0x00, 0x2d, 0xe9, 0xf0, 0x47, + 0xd0, 0xf8, 0xa8, 0x30, 0x06, 0x46, 0xd3, 0xf8, 0x7c, 0x55, 0xd3, 0xf8, + 0x78, 0x75, 0x00, 0x24, 0x1b, 0xe0, 0x4f, 0xf0, 0x14, 0x08, 0x08, 0xfb, + 0x04, 0xf8, 0x05, 0xeb, 0x08, 0x03, 0x1a, 0x69, 0x5b, 0x68, 0x55, 0xf8, + 0x08, 0xa0, 0x03, 0xfb, 0x02, 0xf9, 0xf3, 0x69, 0x4f, 0xea, 0xd9, 0x09, + 0x98, 0x68, 0x49, 0x46, 0xdf, 0xf3, 0xa0, 0xf3, 0x45, 0xf8, 0x08, 0x00, + 0x40, 0xb1, 0x51, 0x46, 0x4a, 0x46, 0xda, 0xf3, 0xed, 0xf4, 0x01, 0x34, + 0xe4, 0xb2, 0xbc, 0x42, 0xe1, 0xd3, 0x01, 0x20, 0xbd, 0xe8, 0xf0, 0x87, + 0x2d, 0xe9, 0xf0, 0x41, 0x1c, 0x4b, 0xd0, 0xf8, 0xa8, 0x60, 0x1b, 0x68, + 0xc2, 0x69, 0x00, 0x27, 0x14, 0x21, 0x05, 0x46, 0xc6, 0xf8, 0x7c, 0x75, + 0xc6, 0xf8, 0x78, 0x35, 0x90, 0x68, 0x59, 0x43, 0xdf, 0xf3, 0x80, 0xf3, + 0x04, 0x46, 0xc6, 0xf8, 0x7c, 0x05, 0x10, 0xb3, 0xbc, 0x46, 0xb8, 0x46, + 0x14, 0xe0, 0xeb, 0x69, 0x04, 0xeb, 0x0c, 0x07, 0x1b, 0x6d, 0x08, 0xf1, + 0x01, 0x08, 0x13, 0xf4, 0x80, 0x5f, 0x14, 0xbf, 0x0d, 0x4b, 0x0e, 0x4b, + 0x03, 0xeb, 0x0c, 0x0e, 0xbe, 0xe8, 0x0f, 0x00, 0x0f, 0xc7, 0xde, 0xf8, + 0x00, 0x30, 0x0c, 0xf1, 0x14, 0x0c, 0x3b, 0x60, 0xd6, 0xf8, 0x78, 0x35, + 0x98, 0x45, 0xe6, 0xd3, 0x01, 0x21, 0x28, 0x46, 0xff, 0xf7, 0x9e, 0xff, + 0x00, 0x30, 0x18, 0xbf, 0x01, 0x20, 0xbd, 0xe8, 0xf0, 0x81, 0x00, 0xbf, + 0x2c, 0xfb, 0x01, 0x00, 0xb0, 0x9f, 0x02, 0x00, 0x14, 0xa4, 0x02, 0x00, + 0x2d, 0xe9, 0xf0, 0x41, 0x0f, 0x46, 0x86, 0xb0, 0x79, 0x49, 0x04, 0x46, + 0xd0, 0xf8, 0xa8, 0x50, 0xe9, 0xf7, 0x0d, 0xfc, 0x77, 0x49, 0x28, 0x72, + 0x20, 0x46, 0xe9, 0xf7, 0x08, 0xfc, 0x76, 0x49, 0x68, 0x72, 0x20, 0x46, + 0xe9, 0xf7, 0x03, 0xfc, 0x74, 0x49, 0xa4, 0xf8, 0xfc, 0x00, 0x20, 0x46, + 0xe9, 0xf7, 0xfd, 0xfb, 0x72, 0x49, 0xa4, 0xf8, 0xfe, 0x00, 0x20, 0x46, + 0xe9, 0xf7, 0xf7, 0xfb, 0x70, 0x49, 0xa4, 0xf8, 0x00, 0x01, 0x20, 0x46, + 0xe9, 0xf7, 0xd8, 0xfb, 0x38, 0xb1, 0x20, 0x46, 0x6c, 0x49, 0xe9, 0xf7, + 0xec, 0xfb, 0x10, 0xb1, 0x01, 0x23, 0x85, 0xf8, 0xe8, 0x33, 0x95, 0xf8, + 0xe8, 0x33, 0x13, 0xb3, 0x67, 0x49, 0x20, 0x46, 0xe9, 0xf7, 0xe1, 0xfb, + 0x66, 0x49, 0xa4, 0xf8, 0x02, 0x01, 0x20, 0x46, 0xe9, 0xf7, 0xdb, 0xfb, + 0x64, 0x49, 0xa4, 0xf8, 0x04, 0x01, 0x20, 0x46, 0xe9, 0xf7, 0xd5, 0xfb, + 0x62, 0x49, 0xa4, 0xf8, 0x06, 0x01, 0x20, 0x46, 0xe9, 0xf7, 0xcf, 0xfb, + 0x60, 0x49, 0x85, 0xf8, 0x24, 0x05, 0x20, 0x46, 0xe9, 0xf7, 0xc9, 0xfb, + 0x04, 0xf5, 0x80, 0x53, 0x00, 0x22, 0x85, 0xf8, 0x25, 0x05, 0x83, 0xf8, + 0x3b, 0x20, 0x5b, 0x49, 0x20, 0x46, 0xe9, 0xf7, 0xbe, 0xfb, 0x5a, 0x49, + 0xc5, 0xf8, 0x34, 0x04, 0x14, 0x22, 0x20, 0x46, 0xe9, 0xf7, 0xaa, 0xfb, + 0x57, 0x49, 0xa5, 0xf8, 0x3c, 0x04, 0x5a, 0x22, 0x20, 0x46, 0xe9, 0xf7, + 0xa3, 0xfb, 0x55, 0x49, 0x85, 0xf8, 0x54, 0x04, 0x08, 0x22, 0x20, 0x46, + 0xe9, 0xf7, 0x9c, 0xfb, 0x52, 0x49, 0x85, 0xf8, 0x4c, 0x04, 0x03, 0x22, + 0x20, 0x46, 0xe9, 0xf7, 0x95, 0xfb, 0x50, 0x49, 0x85, 0xf8, 0x4d, 0x04, + 0x08, 0x22, 0x20, 0x46, 0xe9, 0xf7, 0x8e, 0xfb, 0x4d, 0x49, 0x85, 0xf8, + 0x4e, 0x04, 0x03, 0x22, 0x20, 0x46, 0xe9, 0xf7, 0x87, 0xfb, 0x4b, 0x49, + 0x85, 0xf8, 0x4f, 0x04, 0x08, 0x22, 0x20, 0x46, 0xe9, 0xf7, 0x80, 0xfb, + 0x48, 0x49, 0x85, 0xf8, 0x50, 0x04, 0x03, 0x22, 0x20, 0x46, 0xe9, 0xf7, + 0x79, 0xfb, 0x46, 0x49, 0x85, 0xf8, 0x51, 0x04, 0x08, 0x22, 0x20, 0x46, + 0xe9, 0xf7, 0x72, 0xfb, 0x03, 0x22, 0x85, 0xf8, 0x52, 0x04, 0x42, 0x49, + 0x20, 0x46, 0xe9, 0xf7, 0x6b, 0xfb, 0x41, 0x49, 0x85, 0xf8, 0x53, 0x04, + 0x20, 0x46, 0xe9, 0xf7, 0x72, 0xfb, 0x3f, 0x49, 0x85, 0xf8, 0x58, 0x04, + 0x02, 0x22, 0x20, 0x46, 0xe9, 0xf7, 0x5e, 0xfb, 0x3c, 0x49, 0x85, 0xf8, + 0xc1, 0x04, 0x20, 0x46, 0xe9, 0xf7, 0x4c, 0xfb, 0x18, 0xb1, 0x20, 0x46, + 0x38, 0x49, 0xe9, 0xf7, 0x60, 0xfb, 0xe8, 0x74, 0x37, 0x49, 0x20, 0x46, + 0xe9, 0xf7, 0x42, 0xfb, 0x28, 0xb1, 0x20, 0x46, 0x34, 0x49, 0xe9, 0xf7, + 0x56, 0xfb, 0x28, 0x75, 0x01, 0xe0, 0x08, 0x23, 0x2b, 0x75, 0x20, 0x46, + 0x31, 0x49, 0xe9, 0xf7, 0x35, 0xfb, 0x28, 0xb1, 0x20, 0x46, 0x2f, 0x49, + 0xe9, 0xf7, 0x49, 0xfb, 0x68, 0x75, 0x01, 0xe0, 0x02, 0x23, 0x6b, 0x75, + 0x20, 0x46, 0x2c, 0x49, 0xe9, 0xf7, 0x28, 0xfb, 0x28, 0xb1, 0x20, 0x46, + 0x29, 0x49, 0xe9, 0xf7, 0x3c, 0xfb, 0xa8, 0x75, 0x01, 0xe0, 0x04, 0x23, + 0xab, 0x75, 0x20, 0x46, 0x26, 0x49, 0xe9, 0xf7, 0x1b, 0xfb, 0x28, 0xb1, + 0x20, 0x46, 0x24, 0x49, 0xe9, 0xf7, 0x2f, 0xfb, 0xe8, 0x75, 0x01, 0xe0, + 0x08, 0x23, 0xeb, 0x75, 0x20, 0x46, 0x21, 0x49, 0xe9, 0xf7, 0x0e, 0xfb, + 0x00, 0x28, 0x3f, 0xd0, 0x20, 0x46, 0x1e, 0x49, 0xe9, 0xf7, 0x21, 0xfb, + 0x28, 0x76, 0x3b, 0xe0, 0x8f, 0x9d, 0x02, 0x00, 0x40, 0x9d, 0x02, 0x00, + 0x78, 0x9a, 0x02, 0x00, 0x7e, 0x9a, 0x02, 0x00, 0x84, 0x9a, 0x02, 0x00, + 0x5c, 0x9b, 0x02, 0x00, 0x35, 0x9a, 0x02, 0x00, 0x1f, 0x99, 0x02, 0x00, + 0x39, 0x97, 0x02, 0x00, 0x00, 0x97, 0x02, 0x00, 0x41, 0x9f, 0x02, 0x00, + 0xd8, 0x99, 0x02, 0x00, 0x19, 0x9e, 0x02, 0x00, 0x97, 0x9e, 0x02, 0x00, + 0xb9, 0x9b, 0x02, 0x00, 0x65, 0x9e, 0x02, 0x00, 0x33, 0x96, 0x02, 0x00, + 0x76, 0x9e, 0x02, 0x00, 0x44, 0x96, 0x02, 0x00, 0x4d, 0x9e, 0x02, 0x00, + 0x5a, 0x9f, 0x02, 0x00, 0xf7, 0x98, 0x02, 0x00, 0x7a, 0x97, 0x02, 0x00, + 0x79, 0x98, 0x02, 0x00, 0x66, 0x98, 0x02, 0x00, 0xd0, 0x9c, 0x02, 0x00, + 0x8f, 0x9e, 0x02, 0x00, 0x87, 0x9e, 0x02, 0x00, 0x03, 0x99, 0x02, 0x00, + 0x02, 0x23, 0x2b, 0x76, 0xb7, 0x49, 0x20, 0x46, 0xe9, 0xf7, 0xdf, 0xfa, + 0xb6, 0x49, 0xa8, 0x72, 0x20, 0x46, 0xe9, 0xf7, 0xda, 0xfa, 0xb5, 0x49, + 0xe8, 0x72, 0x20, 0x46, 0xe9, 0xf7, 0xd5, 0xfa, 0xaa, 0x7a, 0xeb, 0x7a, + 0x28, 0x73, 0x6a, 0x73, 0xab, 0x73, 0xe8, 0x73, 0x2a, 0x74, 0x6b, 0x74, + 0xa8, 0x74, 0xaf, 0x49, 0x20, 0x46, 0xe9, 0xf7, 0xc8, 0xfa, 0xb4, 0xf8, + 0xfc, 0x10, 0x04, 0xf5, 0x98, 0x52, 0x04, 0xf5, 0x9a, 0x53, 0x51, 0x87, + 0x19, 0x80, 0xb4, 0xf8, 0xfe, 0x10, 0x5f, 0xfa, 0x80, 0xf8, 0x91, 0x87, + 0x59, 0x80, 0xb4, 0xf8, 0x00, 0x11, 0x84, 0xf8, 0x1a, 0x81, 0xd1, 0x87, + 0x99, 0x80, 0x20, 0x46, 0xa3, 0x49, 0xe9, 0xf7, 0xb0, 0xfa, 0x00, 0x26, + 0x80, 0xb2, 0xa3, 0x19, 0x00, 0xf0, 0x0f, 0x02, 0x01, 0x36, 0xa8, 0xeb, + 0x42, 0x02, 0x00, 0x09, 0x04, 0x2e, 0x83, 0xf8, 0x1e, 0x21, 0xf4, 0xd1, + 0x20, 0x46, 0x9c, 0x49, 0xe9, 0xf7, 0x9f, 0xfa, 0x00, 0xf0, 0x0f, 0x02, + 0xa3, 0x19, 0x52, 0x00, 0x01, 0x36, 0xc2, 0xeb, 0x08, 0x02, 0x00, 0x09, + 0x0c, 0x2e, 0x83, 0xf8, 0x1e, 0x21, 0xf3, 0xd1, 0x95, 0x49, 0x20, 0x46, + 0xe9, 0xf7, 0x8f, 0xfa, 0x94, 0x49, 0x06, 0x46, 0x20, 0x46, 0xe9, 0xf7, + 0x8a, 0xfa, 0x80, 0xb2, 0x40, 0xea, 0x06, 0x46, 0x6e, 0x60, 0x14, 0x23, + 0x06, 0xf0, 0x0f, 0x01, 0xe2, 0x18, 0x49, 0x00, 0x01, 0x33, 0xc1, 0xeb, + 0x08, 0x01, 0x36, 0x09, 0x1c, 0x2b, 0x82, 0xf8, 0x16, 0x11, 0xf3, 0xd1, + 0x8a, 0x49, 0x20, 0x46, 0xe9, 0xf7, 0x75, 0xfa, 0x89, 0x49, 0x68, 0x83, + 0x20, 0x46, 0xe9, 0xf7, 0x70, 0xfa, 0x88, 0x49, 0x28, 0x77, 0x20, 0x46, + 0xe9, 0xf7, 0x6b, 0xfa, 0x86, 0x49, 0x68, 0x77, 0x20, 0x46, 0xe9, 0xf7, + 0x66, 0xfa, 0x85, 0x49, 0xa8, 0x77, 0x20, 0x46, 0xe9, 0xf7, 0x61, 0xfa, + 0x83, 0x49, 0xe8, 0x77, 0x20, 0x46, 0xe9, 0xf7, 0x5c, 0xfa, 0x82, 0x49, + 0x85, 0xf8, 0x22, 0x00, 0x20, 0x46, 0xe9, 0xf7, 0x56, 0xfa, 0x80, 0x49, + 0x85, 0xf8, 0x21, 0x00, 0x20, 0x46, 0xe9, 0xf7, 0x50, 0xfa, 0x7e, 0x49, + 0x85, 0xf8, 0xe0, 0x04, 0x20, 0x46, 0xe9, 0xf7, 0x4a, 0xfa, 0x01, 0x26, + 0xc5, 0xf8, 0xe4, 0x04, 0x7a, 0x49, 0x01, 0xa8, 0x32, 0x46, 0xda, 0xf3, + 0x87, 0xf3, 0xd4, 0xf8, 0xb8, 0x00, 0x01, 0xa9, 0xda, 0xf3, 0xf6, 0xf7, + 0x30, 0xb1, 0x00, 0x21, 0x0a, 0x46, 0xda, 0xf3, 0xb1, 0xf6, 0xab, 0x19, + 0x83, 0xf8, 0xe7, 0x04, 0x01, 0x36, 0x0f, 0x2e, 0xea, 0xd1, 0x71, 0x49, + 0x20, 0x46, 0xe9, 0xf7, 0x2e, 0xfa, 0x70, 0x49, 0x85, 0xf8, 0xf6, 0x04, + 0x20, 0x46, 0xe9, 0xf7, 0x28, 0xfa, 0x6e, 0x49, 0x85, 0xf8, 0xf7, 0x04, + 0x20, 0x46, 0xe9, 0xf7, 0x22, 0xfa, 0x6c, 0x49, 0x85, 0xf8, 0xf8, 0x04, + 0x20, 0x46, 0xe9, 0xf7, 0x1c, 0xfa, 0x6a, 0x49, 0x85, 0xf8, 0xf9, 0x04, + 0x20, 0x46, 0xe9, 0xf7, 0x16, 0xfa, 0x68, 0x49, 0x85, 0xf8, 0xfa, 0x04, + 0x20, 0x46, 0xe9, 0xf7, 0x10, 0xfa, 0x66, 0x49, 0x85, 0xf8, 0xfb, 0x04, + 0x20, 0x46, 0xe9, 0xf7, 0x0a, 0xfa, 0x64, 0x49, 0x85, 0xf8, 0xfc, 0x04, + 0x20, 0x46, 0xe9, 0xf7, 0x04, 0xfa, 0x62, 0x49, 0x85, 0xf8, 0xfd, 0x04, + 0x20, 0x46, 0xe9, 0xf7, 0xfe, 0xf9, 0x60, 0x49, 0x85, 0xf8, 0xfe, 0x04, + 0x20, 0x46, 0xe9, 0xf7, 0xf8, 0xf9, 0x5e, 0x49, 0x85, 0xf8, 0xff, 0x04, + 0x20, 0x46, 0xe9, 0xf7, 0xf2, 0xf9, 0x5c, 0x49, 0x85, 0xf8, 0x00, 0x05, + 0x20, 0x46, 0xe9, 0xf7, 0xec, 0xf9, 0x5a, 0x49, 0x85, 0xf8, 0x01, 0x05, + 0x20, 0x46, 0xe9, 0xf7, 0xe6, 0xf9, 0x58, 0x49, 0x85, 0xf8, 0x02, 0x05, + 0x20, 0x46, 0xe9, 0xf7, 0xe0, 0xf9, 0x56, 0x49, 0x85, 0xf8, 0x03, 0x05, + 0x20, 0x46, 0xe9, 0xf7, 0xda, 0xf9, 0x54, 0x49, 0x85, 0xf8, 0x04, 0x05, + 0x20, 0x46, 0xe9, 0xf7, 0xd4, 0xf9, 0x52, 0x49, 0x85, 0xf8, 0x05, 0x05, + 0x20, 0x46, 0xe9, 0xf7, 0xce, 0xf9, 0x50, 0x49, 0x85, 0xf8, 0x06, 0x05, + 0x20, 0x46, 0xe9, 0xf7, 0xc8, 0xf9, 0x4e, 0x49, 0x85, 0xf8, 0x07, 0x05, + 0x20, 0x46, 0xe9, 0xf7, 0xc2, 0xf9, 0x4c, 0x49, 0x85, 0xf8, 0x08, 0x05, + 0x20, 0x46, 0xe9, 0xf7, 0xbc, 0xf9, 0x4a, 0x49, 0x85, 0xf8, 0x09, 0x05, + 0x20, 0x46, 0xe9, 0xf7, 0xb6, 0xf9, 0x48, 0x49, 0x85, 0xf8, 0x0a, 0x05, + 0x20, 0x46, 0xe9, 0xf7, 0xb0, 0xf9, 0x46, 0x49, 0x85, 0xf8, 0x0b, 0x05, + 0x20, 0x46, 0xe9, 0xf7, 0xaa, 0xf9, 0x44, 0x49, 0x85, 0xf8, 0x0c, 0x05, + 0x20, 0x46, 0xe9, 0xf7, 0xa4, 0xf9, 0x42, 0x49, 0x85, 0xf8, 0x0d, 0x05, + 0x20, 0x46, 0xe9, 0xf7, 0x9e, 0xf9, 0x40, 0x49, 0xa5, 0xf8, 0x14, 0x05, + 0x20, 0x46, 0xe9, 0xf7, 0x98, 0xf9, 0x4f, 0xf0, 0x00, 0x42, 0xa5, 0xf8, + 0x16, 0x05, 0x3c, 0x49, 0x20, 0x46, 0xe9, 0xf7, 0x83, 0xf9, 0x3b, 0x49, + 0xc5, 0xf8, 0x10, 0x05, 0x20, 0x46, 0xe9, 0xf7, 0x8a, 0xf9, 0x39, 0x49, + 0x85, 0xf8, 0x24, 0x00, 0x20, 0x46, 0xe9, 0xf7, 0x84, 0xf9, 0x37, 0x49, + 0x85, 0xf8, 0x23, 0x00, 0x20, 0x46, 0xe9, 0xf7, 0x7e, 0xf9, 0x35, 0x49, + 0x85, 0xf8, 0x20, 0x00, 0x20, 0x46, 0xe9, 0xf7, 0x78, 0xf9, 0x33, 0x49, + 0x84, 0xf8, 0x26, 0x06, 0x20, 0x46, 0x63, 0xe0, 0x6f, 0x96, 0x02, 0x00, + 0x8a, 0x9c, 0x02, 0x00, 0x2b, 0x9a, 0x02, 0x00, 0x3e, 0x9a, 0x02, 0x00, + 0xe4, 0x99, 0x02, 0x00, 0xc7, 0x9c, 0x02, 0x00, 0x19, 0x96, 0x02, 0x00, + 0x58, 0x97, 0x02, 0x00, 0xe6, 0x9a, 0x02, 0x00, 0x65, 0x96, 0x02, 0x00, + 0x58, 0x9c, 0x02, 0x00, 0x63, 0x9c, 0x02, 0x00, 0x55, 0x96, 0x02, 0x00, + 0x0b, 0x99, 0x02, 0x00, 0x35, 0x99, 0x02, 0x00, 0x12, 0x9b, 0x02, 0x00, + 0x4f, 0x9b, 0x02, 0x00, 0x22, 0x96, 0x02, 0x00, 0x8a, 0x9a, 0x02, 0x00, + 0xef, 0x9b, 0x02, 0x00, 0x0b, 0x9c, 0x02, 0x00, 0xf0, 0x9d, 0x02, 0x00, + 0x5b, 0x9d, 0x02, 0x00, 0x6c, 0x9d, 0x02, 0x00, 0xb0, 0x9e, 0x02, 0x00, + 0xd1, 0x9e, 0x02, 0x00, 0xd4, 0x9a, 0x02, 0x00, 0xf3, 0x9a, 0x02, 0x00, + 0x20, 0x9b, 0x02, 0x00, 0x7d, 0x9d, 0x02, 0x00, 0x6e, 0x9c, 0x02, 0x00, + 0xa0, 0x9d, 0x02, 0x00, 0xb2, 0x9d, 0x02, 0x00, 0xc4, 0x9d, 0x02, 0x00, + 0x04, 0x9f, 0x02, 0x00, 0x16, 0x9f, 0x02, 0x00, 0xa7, 0x96, 0x02, 0x00, + 0xd1, 0x96, 0x02, 0x00, 0xc6, 0x97, 0x02, 0x00, 0xe5, 0x97, 0x02, 0x00, + 0xda, 0x98, 0x02, 0x00, 0x05, 0x97, 0x02, 0x00, 0x6b, 0x97, 0x02, 0x00, + 0x95, 0x99, 0x02, 0x00, 0xa2, 0x97, 0x02, 0x00, 0x24, 0x9e, 0x02, 0x00, + 0x30, 0x9e, 0x02, 0x00, 0xe2, 0x9e, 0x02, 0x00, 0xb8, 0x9c, 0x02, 0x00, + 0xc5, 0x96, 0x02, 0x00, 0xe9, 0xf7, 0x0d, 0xf9, 0xbf, 0x49, 0x85, 0xf8, + 0xc1, 0x03, 0x20, 0x46, 0xe9, 0xf7, 0x07, 0xf9, 0xbd, 0x49, 0x85, 0xf8, + 0xc2, 0x03, 0x20, 0x46, 0xe9, 0xf7, 0x01, 0xf9, 0x85, 0xf8, 0xc3, 0x03, + 0x94, 0xf8, 0x26, 0x16, 0x11, 0xb1, 0x20, 0x46, 0xff, 0xf7, 0x1c, 0xfc, + 0xb7, 0x49, 0x20, 0x46, 0x4f, 0xf0, 0xff, 0x32, 0xe9, 0xf7, 0xe6, 0xf8, + 0x80, 0xb2, 0xa5, 0xf8, 0x62, 0x00, 0x00, 0x04, 0x48, 0xbf, 0x4f, 0xf0, + 0xff, 0x30, 0x4f, 0xf0, 0xff, 0x33, 0x48, 0xbf, 0xa5, 0xf8, 0x62, 0x00, + 0xa5, 0xf8, 0x66, 0x30, 0xa5, 0xf8, 0x68, 0x30, 0x20, 0x46, 0xad, 0x49, + 0xe9, 0xf7, 0xc6, 0xf8, 0x50, 0xb1, 0xab, 0x49, 0x20, 0x46, 0xe9, 0xf7, + 0xda, 0xf8, 0x80, 0xb2, 0x01, 0x04, 0x5c, 0xbf, 0xa5, 0xf8, 0x66, 0x00, + 0xa5, 0xf8, 0x68, 0x00, 0x20, 0x46, 0xa6, 0x49, 0xe9, 0xf7, 0xb6, 0xf8, + 0x40, 0xb1, 0x20, 0x46, 0xa3, 0x49, 0xe9, 0xf7, 0xca, 0xf8, 0x80, 0xb2, + 0x02, 0x04, 0x58, 0xbf, 0xa5, 0xf8, 0x66, 0x00, 0x20, 0x46, 0xa0, 0x49, + 0xe9, 0xf7, 0xa8, 0xf8, 0x40, 0xb1, 0x20, 0x46, 0x9d, 0x49, 0xe9, 0xf7, + 0xbc, 0xf8, 0x80, 0xb2, 0x03, 0x04, 0x58, 0xbf, 0xa5, 0xf8, 0x68, 0x00, + 0x9a, 0x49, 0x4f, 0xf0, 0xff, 0x32, 0x20, 0x46, 0xe9, 0xf7, 0xa4, 0xf8, + 0x4f, 0xf0, 0xff, 0x32, 0xa5, 0xf8, 0xc4, 0x03, 0x96, 0x49, 0x20, 0x46, + 0xe9, 0xf7, 0x9c, 0xf8, 0x95, 0x49, 0xa5, 0xf8, 0xc6, 0x03, 0x20, 0x46, + 0xe9, 0xf7, 0xa3, 0xf8, 0x93, 0x49, 0xa5, 0xf8, 0xc8, 0x03, 0x4f, 0xf4, + 0xcf, 0x72, 0x20, 0x46, 0xe9, 0xf7, 0x8e, 0xf8, 0x90, 0x49, 0xc5, 0xf8, + 0xcc, 0x03, 0x47, 0xf6, 0x9a, 0x62, 0x20, 0x46, 0xe9, 0xf7, 0x86, 0xf8, + 0x8d, 0x49, 0xc5, 0xf8, 0xd0, 0x03, 0x0a, 0x22, 0x20, 0x46, 0xe9, 0xf7, + 0x7f, 0xf8, 0x8b, 0x49, 0xc5, 0xf8, 0xd4, 0x03, 0x08, 0x22, 0x20, 0x46, + 0xe9, 0xf7, 0x78, 0xf8, 0x88, 0x49, 0xc5, 0xf8, 0xd8, 0x03, 0x41, 0xf2, + 0x6e, 0x02, 0x20, 0x46, 0xe9, 0xf7, 0x70, 0xf8, 0x0a, 0x22, 0xc5, 0xf8, + 0xdc, 0x03, 0x84, 0x49, 0x20, 0x46, 0xe9, 0xf7, 0x69, 0xf8, 0x83, 0x49, + 0xc5, 0xf8, 0xe0, 0x03, 0x20, 0x46, 0xe9, 0xf7, 0x70, 0xf8, 0x81, 0x49, + 0xa5, 0xf8, 0xe4, 0x03, 0x20, 0x46, 0xe9, 0xf7, 0x6a, 0xf8, 0x95, 0xf8, + 0xe8, 0x33, 0xa5, 0xf8, 0xe6, 0x03, 0x2b, 0xb1, 0x00, 0xb2, 0x00, 0x28, + 0x02, 0xdd, 0x00, 0x20, 0xa5, 0xf8, 0xe6, 0x03, 0x50, 0x22, 0x79, 0x49, + 0x20, 0x46, 0xe9, 0xf7, 0x4d, 0xf8, 0x78, 0x49, 0x85, 0xf8, 0xea, 0x03, + 0x20, 0x46, 0xe9, 0xf7, 0x54, 0xf8, 0x76, 0x49, 0x85, 0xf8, 0xec, 0x03, + 0x20, 0x46, 0xe9, 0xf7, 0x4e, 0xf8, 0x74, 0x49, 0x85, 0xf8, 0xed, 0x03, + 0x20, 0x46, 0xe9, 0xf7, 0x48, 0xf8, 0x72, 0x49, 0x85, 0xf8, 0xee, 0x03, + 0x4f, 0xf0, 0xff, 0x32, 0x20, 0x46, 0xe9, 0xf7, 0x33, 0xf8, 0x6f, 0x49, + 0x85, 0xf8, 0xf0, 0x03, 0x4f, 0xf0, 0xff, 0x32, 0x20, 0x46, 0xe9, 0xf7, + 0x2b, 0xf8, 0xff, 0x23, 0x85, 0xf8, 0xef, 0x33, 0x85, 0xf8, 0xf1, 0x03, + 0x69, 0x49, 0x4f, 0xf0, 0xff, 0x32, 0x20, 0x46, 0xe9, 0xf7, 0x20, 0xf8, + 0x67, 0x49, 0x85, 0xf8, 0xf2, 0x03, 0x4f, 0xf0, 0xff, 0x32, 0x20, 0x46, + 0xe9, 0xf7, 0x18, 0xf8, 0x64, 0x49, 0x85, 0xf8, 0x59, 0x05, 0x4f, 0xf0, + 0xff, 0x32, 0x20, 0x46, 0xe9, 0xf7, 0x10, 0xf8, 0x61, 0x49, 0x85, 0xf8, + 0x5a, 0x05, 0x4f, 0xf0, 0xff, 0x32, 0x20, 0x46, 0xe9, 0xf7, 0x08, 0xf8, + 0x5e, 0x49, 0x85, 0xf8, 0xf3, 0x03, 0x4f, 0xf0, 0xff, 0x32, 0x20, 0x46, + 0xe9, 0xf7, 0x00, 0xf8, 0x5b, 0x49, 0x85, 0xf8, 0x5b, 0x05, 0x4f, 0xf0, + 0xff, 0x32, 0x20, 0x46, 0xe8, 0xf7, 0xf8, 0xff, 0x58, 0x49, 0x85, 0xf8, + 0x5c, 0x05, 0x4f, 0xf0, 0xff, 0x32, 0x20, 0x46, 0xe8, 0xf7, 0xf0, 0xff, + 0x00, 0x22, 0x85, 0xf8, 0xf4, 0x03, 0x54, 0x49, 0x20, 0x46, 0xe8, 0xf7, + 0xe9, 0xff, 0x53, 0x49, 0x85, 0xf8, 0x09, 0x04, 0x4f, 0xf0, 0xff, 0x32, + 0x20, 0x46, 0xe8, 0xf7, 0xe1, 0xff, 0x50, 0x49, 0x84, 0xf8, 0xda, 0x05, + 0x4f, 0xf0, 0xff, 0x32, 0x20, 0x46, 0xe8, 0xf7, 0xd9, 0xff, 0x4d, 0x49, + 0xa5, 0xf8, 0xf6, 0x03, 0x4f, 0xf0, 0xff, 0x32, 0x20, 0x46, 0xe8, 0xf7, + 0xd1, 0xff, 0x4a, 0x49, 0xa5, 0xf8, 0xf8, 0x03, 0x4f, 0xf0, 0xff, 0x32, + 0x20, 0x46, 0xe8, 0xf7, 0xc9, 0xff, 0x47, 0x49, 0xa5, 0xf8, 0xfa, 0x03, + 0x4f, 0xf0, 0xff, 0x32, 0x20, 0x46, 0xe8, 0xf7, 0xc1, 0xff, 0x44, 0x49, + 0xa5, 0xf8, 0xfc, 0x03, 0x4f, 0xf0, 0xff, 0x32, 0x20, 0x46, 0xe8, 0xf7, + 0xb9, 0xff, 0x41, 0x49, 0xa5, 0xf8, 0xfe, 0x03, 0x4f, 0xf0, 0xff, 0x32, + 0x20, 0x46, 0xe8, 0xf7, 0xb1, 0xff, 0x3e, 0x49, 0xa5, 0xf8, 0x00, 0x04, + 0x4f, 0xf0, 0xff, 0x32, 0x20, 0x46, 0xe8, 0xf7, 0xa9, 0xff, 0x3b, 0x49, + 0xa5, 0xf8, 0x02, 0x04, 0x4f, 0xf0, 0xff, 0x32, 0x20, 0x46, 0xe8, 0xf7, + 0xa1, 0xff, 0x00, 0x22, 0xa5, 0xf8, 0x04, 0x04, 0x36, 0x49, 0x20, 0x46, + 0xe8, 0xf7, 0x9a, 0xff, 0x00, 0x22, 0xa5, 0xf8, 0x5e, 0x05, 0x34, 0x49, + 0x20, 0x46, 0xe8, 0xf7, 0x93, 0xff, 0x00, 0x22, 0xa5, 0xf8, 0x60, 0x05, + 0x31, 0x49, 0x20, 0x46, 0xe8, 0xf7, 0x8c, 0xff, 0x30, 0x49, 0xa5, 0xf8, + 0x62, 0x05, 0x00, 0x22, 0x20, 0x46, 0xe8, 0xf7, 0x85, 0xff, 0x2e, 0x49, + 0xa5, 0xf8, 0x64, 0x05, 0x20, 0x46, 0x59, 0xe0, 0xb9, 0x96, 0x02, 0x00, + 0x00, 0x9d, 0x02, 0x00, 0xfa, 0x99, 0x02, 0x00, 0x28, 0x9f, 0x02, 0x00, + 0xde, 0x9d, 0x02, 0x00, 0xf2, 0x9e, 0x02, 0x00, 0x08, 0x98, 0x02, 0x00, + 0x95, 0x9b, 0x02, 0x00, 0x99, 0x97, 0x02, 0x00, 0xbd, 0x9c, 0x02, 0x00, + 0x01, 0x9e, 0x02, 0x00, 0x5e, 0x9e, 0x02, 0x00, 0x4e, 0x97, 0x02, 0x00, + 0x97, 0x9d, 0x02, 0x00, 0xb5, 0x98, 0x02, 0x00, 0xf3, 0x9c, 0x02, 0x00, + 0xec, 0x99, 0x02, 0x00, 0x15, 0x99, 0x02, 0x00, 0x32, 0x9b, 0x02, 0x00, + 0x9a, 0x96, 0x02, 0x00, 0x30, 0x9c, 0x02, 0x00, 0x78, 0x99, 0x02, 0x00, + 0x60, 0x99, 0x02, 0x00, 0xa5, 0x9e, 0x02, 0x00, 0x1c, 0x9d, 0x02, 0x00, + 0xd8, 0x97, 0x02, 0x00, 0xa4, 0x99, 0x02, 0x00, 0x4a, 0x9c, 0x02, 0x00, + 0x17, 0x97, 0x02, 0x00, 0x1c, 0x98, 0x02, 0x00, 0x9b, 0x9a, 0x02, 0x00, + 0x3b, 0x9b, 0x02, 0x00, 0x59, 0x9a, 0x02, 0x00, 0x25, 0x97, 0x02, 0x00, + 0xd8, 0x9c, 0x02, 0x00, 0x20, 0x9a, 0x02, 0x00, 0x4b, 0x98, 0x02, 0x00, + 0x52, 0x99, 0x02, 0x00, 0x46, 0x99, 0x02, 0x00, 0x58, 0x98, 0x02, 0x00, + 0xe5, 0x9c, 0x02, 0x00, 0x9c, 0x9b, 0x02, 0x00, 0x87, 0x9b, 0x02, 0x00, + 0x30, 0x9d, 0x02, 0x00, 0x8b, 0x96, 0x02, 0x00, 0xe8, 0xf7, 0x31, 0xff, + 0x02, 0x2f, 0x85, 0xf8, 0x06, 0x04, 0x14, 0xd1, 0x20, 0x46, 0xad, 0x49, + 0xe8, 0xf7, 0x10, 0xff, 0x00, 0x28, 0x00, 0xf0, 0xc5, 0x82, 0x2f, 0x46, + 0x00, 0x26, 0x32, 0x46, 0x20, 0x46, 0xa8, 0x49, 0xe8, 0xf7, 0x36, 0xff, + 0x01, 0x36, 0xc7, 0xf8, 0x0c, 0x04, 0x04, 0x37, 0x05, 0x2e, 0xf4, 0xd1, + 0x15, 0xe0, 0x01, 0x2f, 0x13, 0xd1, 0x20, 0x46, 0xa2, 0x49, 0xe8, 0xf7, + 0xf9, 0xfe, 0x00, 0x28, 0x00, 0xf0, 0xae, 0x82, 0x2f, 0x46, 0x00, 0x26, + 0x32, 0x46, 0x20, 0x46, 0x9d, 0x49, 0xe8, 0xf7, 0x1f, 0xff, 0x01, 0x36, + 0xc7, 0xf8, 0x20, 0x04, 0x04, 0x37, 0x05, 0x2e, 0xf4, 0xd1, 0x9a, 0x49, + 0x4f, 0xf0, 0xff, 0x32, 0x20, 0x46, 0xe8, 0xf7, 0xef, 0xfe, 0x98, 0x49, + 0xa5, 0xf8, 0x3e, 0x04, 0x4f, 0xf0, 0xff, 0x32, 0x20, 0x46, 0xe8, 0xf7, + 0xe7, 0xfe, 0x95, 0x49, 0xa5, 0xf8, 0x40, 0x04, 0x4f, 0xf0, 0xff, 0x32, + 0x20, 0x46, 0xe8, 0xf7, 0xdf, 0xfe, 0x92, 0x49, 0xa4, 0xf8, 0xfe, 0x0f, + 0x20, 0x46, 0xe8, 0xf7, 0xcd, 0xfe, 0x30, 0xb1, 0x20, 0x46, 0x8e, 0x49, + 0xe8, 0xf7, 0xe1, 0xfe, 0x04, 0xf5, 0x98, 0x53, 0x58, 0x81, 0x8c, 0x49, + 0x20, 0x46, 0x4f, 0xf0, 0xff, 0x32, 0xe8, 0xf7, 0xcb, 0xfe, 0x04, 0xf5, + 0x9a, 0x53, 0x98, 0x82, 0x88, 0x49, 0x20, 0x46, 0xe8, 0xf7, 0xb8, 0xfe, + 0x30, 0xb1, 0x20, 0x46, 0x85, 0x49, 0xe8, 0xf7, 0xcc, 0xfe, 0x04, 0xf5, + 0x98, 0x53, 0xd8, 0x81, 0x20, 0x46, 0x83, 0x49, 0x00, 0x22, 0xe8, 0xf7, + 0xb7, 0xfe, 0xc0, 0xb2, 0x85, 0xf8, 0x4d, 0x03, 0x58, 0xb1, 0x80, 0x49, + 0x20, 0x46, 0xe8, 0xf7, 0xbc, 0xfe, 0x7f, 0x49, 0xc5, 0xf8, 0x50, 0x03, + 0x20, 0x46, 0xe8, 0xf7, 0xb6, 0xfe, 0xc5, 0xf8, 0x60, 0x03, 0x20, 0x46, + 0x7b, 0x49, 0xe8, 0xf7, 0x97, 0xfe, 0x00, 0x28, 0x37, 0xd0, 0xd4, 0xf8, + 0xb8, 0x00, 0x78, 0x49, 0xda, 0xf7, 0xc6, 0xfb, 0x06, 0x28, 0x30, 0xd1, + 0x75, 0x49, 0x00, 0x22, 0xd4, 0xf8, 0xb8, 0x00, 0xda, 0xf3, 0x3c, 0xf4, + 0x85, 0xf8, 0x95, 0x03, 0x71, 0x49, 0x01, 0x22, 0xd4, 0xf8, 0xb8, 0x00, + 0xda, 0xf3, 0x34, 0xf4, 0x85, 0xf8, 0x97, 0x03, 0x6d, 0x49, 0x02, 0x22, + 0xd4, 0xf8, 0xb8, 0x00, 0xda, 0xf3, 0x2c, 0xf4, 0x85, 0xf8, 0x99, 0x03, + 0x69, 0x49, 0x03, 0x22, 0xd4, 0xf8, 0xb8, 0x00, 0xda, 0xf3, 0x24, 0xf4, + 0x85, 0xf8, 0x96, 0x03, 0x65, 0x49, 0x04, 0x22, 0xd4, 0xf8, 0xb8, 0x00, + 0xda, 0xf3, 0x1c, 0xf4, 0x85, 0xf8, 0x98, 0x03, 0xd4, 0xf8, 0xb8, 0x00, + 0x60, 0x49, 0x05, 0x22, 0xda, 0xf3, 0x14, 0xf4, 0x85, 0xf8, 0x9a, 0x03, + 0x10, 0xe0, 0x01, 0x23, 0x85, 0xf8, 0x95, 0x33, 0x32, 0x23, 0x85, 0xf8, + 0x96, 0x33, 0x40, 0x23, 0x85, 0xf8, 0x97, 0x33, 0x85, 0xf8, 0x98, 0x33, + 0x04, 0x23, 0x85, 0xf8, 0x99, 0x33, 0xff, 0x23, 0x85, 0xf8, 0x9a, 0x33, + 0x55, 0x49, 0x20, 0x46, 0xff, 0x22, 0xe8, 0xf7, 0x53, 0xfe, 0xff, 0x23, + 0xa5, 0xf8, 0x54, 0x03, 0xa5, 0xf8, 0x56, 0x33, 0xa5, 0xf8, 0x58, 0x33, + 0xa5, 0xf8, 0x5a, 0x33, 0x20, 0x46, 0x4f, 0x49, 0xe8, 0xf7, 0x3a, 0xfe, + 0x38, 0xb3, 0xd4, 0xf8, 0xb8, 0x00, 0x4c, 0x49, 0xda, 0xf7, 0x6a, 0xfb, + 0x2f, 0x46, 0x03, 0x28, 0xb4, 0xbf, 0x80, 0x46, 0x4f, 0xf0, 0x03, 0x08, + 0x00, 0x26, 0x07, 0xe0, 0x32, 0x46, 0x20, 0x46, 0x45, 0x49, 0xe8, 0xf7, + 0x57, 0xfe, 0x01, 0x36, 0xa7, 0xf8, 0x54, 0x03, 0x02, 0x37, 0x46, 0x45, + 0xf4, 0xdb, 0x28, 0xea, 0xe8, 0x78, 0x42, 0x46, 0x00, 0x23, 0x08, 0xe0, + 0x05, 0xeb, 0x48, 0x01, 0xb5, 0xf8, 0x56, 0x03, 0xc9, 0x18, 0xa1, 0xf8, + 0x56, 0x03, 0x01, 0x32, 0x02, 0x33, 0x02, 0x2a, 0xf4, 0xdd, 0x01, 0x22, + 0x39, 0x49, 0x20, 0x46, 0xe8, 0xf7, 0x18, 0xfe, 0x38, 0x49, 0x85, 0xf8, + 0x40, 0x03, 0x20, 0x46, 0xe8, 0xf7, 0x1f, 0xfe, 0x01, 0x22, 0x85, 0xf8, + 0x4b, 0x03, 0x35, 0x49, 0x20, 0x46, 0xe8, 0xf7, 0x0b, 0xfe, 0x34, 0x49, + 0x85, 0xf8, 0x41, 0x03, 0x20, 0x46, 0xe8, 0xf7, 0x12, 0xfe, 0x32, 0x49, + 0x85, 0xf8, 0x4c, 0x03, 0x4f, 0xf0, 0xff, 0x32, 0x20, 0x46, 0xe8, 0xf7, + 0xfd, 0xfd, 0x2f, 0x49, 0x85, 0xf8, 0x49, 0x03, 0x4f, 0xf0, 0xff, 0x32, + 0x20, 0x46, 0xe8, 0xf7, 0xf5, 0xfd, 0x2c, 0x49, 0x85, 0xf8, 0x4a, 0x03, + 0x4f, 0xf0, 0xff, 0x32, 0x20, 0x46, 0xe8, 0xf7, 0xed, 0xfd, 0x29, 0x49, + 0x85, 0xf8, 0x5c, 0x03, 0x4f, 0xf0, 0xff, 0x32, 0x20, 0x46, 0xe8, 0xf7, + 0xe5, 0xfd, 0x26, 0x49, 0x85, 0xf8, 0x5d, 0x03, 0x20, 0x46, 0xe8, 0xf7, + 0xd3, 0xfd, 0x00, 0x28, 0x46, 0xd0, 0x01, 0x26, 0x21, 0x49, 0x00, 0x22, + 0x85, 0xf8, 0xbb, 0x64, 0x20, 0x46, 0xe8, 0xf7, 0xf9, 0xfd, 0x1e, 0x49, + 0x85, 0xf8, 0xbc, 0x04, 0x32, 0x46, 0x20, 0x46, 0xe8, 0xf7, 0xf2, 0xfd, + 0x1a, 0x49, 0x85, 0xf8, 0xbd, 0x04, 0x02, 0x22, 0x20, 0x46, 0xe8, 0xf7, + 0xeb, 0xfd, 0x85, 0xf8, 0xbe, 0x04, 0x2f, 0xe0, 0x0f, 0x98, 0x02, 0x00, + 0xac, 0x9b, 0x02, 0x00, 0x31, 0x97, 0x02, 0x00, 0x29, 0x9d, 0x02, 0x00, + 0xa5, 0x9c, 0x02, 0x00, 0x6c, 0x99, 0x02, 0x00, 0xc1, 0x9e, 0x02, 0x00, + 0x80, 0x9c, 0x02, 0x00, 0xb8, 0x97, 0x02, 0x00, 0x1c, 0x9c, 0x02, 0x00, + 0xbd, 0x99, 0x02, 0x00, 0xf7, 0x97, 0x02, 0x00, 0x65, 0x9b, 0x02, 0x00, + 0x4a, 0x9f, 0x02, 0x00, 0x47, 0x9d, 0x02, 0x00, 0xbc, 0x98, 0x02, 0x00, + 0x85, 0x97, 0x02, 0x00, 0xda, 0x9b, 0x02, 0x00, 0xa4, 0x98, 0x02, 0x00, + 0xef, 0x96, 0x02, 0x00, 0x39, 0x9c, 0x02, 0x00, 0xa5, 0x9a, 0x02, 0x00, + 0x38, 0x9f, 0x02, 0x00, 0x85, 0xf8, 0xbb, 0x04, 0xff, 0x22, 0xa1, 0x49, + 0x20, 0x46, 0xe8, 0xf7, 0x8f, 0xfd, 0xff, 0x22, 0x85, 0xf8, 0xbf, 0x04, + 0x9e, 0x49, 0x20, 0x46, 0xe8, 0xf7, 0x88, 0xfd, 0x9d, 0x49, 0x85, 0xf8, + 0xc0, 0x04, 0x20, 0x46, 0xe8, 0xf7, 0x8f, 0xfd, 0x00, 0x22, 0xa5, 0xf8, + 0xc2, 0x04, 0x9a, 0x49, 0x20, 0x46, 0xe8, 0xf7, 0x7b, 0xfd, 0x00, 0x22, + 0x85, 0xf8, 0x18, 0x05, 0x97, 0x49, 0x20, 0x46, 0xe8, 0xf7, 0x74, 0xfd, + 0xc0, 0xb2, 0x85, 0xf8, 0x1a, 0x05, 0xe3, 0x69, 0xdb, 0x68, 0x5b, 0x6c, + 0x03, 0xf0, 0x07, 0x03, 0x05, 0x2b, 0x03, 0xd9, 0x10, 0xb1, 0x00, 0x23, + 0x85, 0xf8, 0x1a, 0x35, 0x8f, 0x49, 0x00, 0x22, 0x20, 0x46, 0xe8, 0xf7, + 0x61, 0xfd, 0x8e, 0x49, 0x85, 0xf8, 0x1c, 0x05, 0x00, 0x22, 0x20, 0x46, + 0xe8, 0xf7, 0x5a, 0xfd, 0x8b, 0x49, 0x85, 0xf8, 0x1d, 0x05, 0x4f, 0xf0, + 0xff, 0x32, 0x20, 0x46, 0xe8, 0xf7, 0x52, 0xfd, 0x88, 0x49, 0x85, 0xf8, + 0x1e, 0x05, 0x00, 0x22, 0x20, 0x46, 0xe8, 0xf7, 0x4b, 0xfd, 0x86, 0x49, + 0x85, 0xf8, 0x95, 0x05, 0x4f, 0xf0, 0xff, 0x32, 0x20, 0x46, 0xe8, 0xf7, + 0x43, 0xfd, 0x83, 0x49, 0xa5, 0xf8, 0x20, 0x05, 0x01, 0x22, 0x20, 0x46, + 0xe8, 0xf7, 0x3c, 0xfd, 0x80, 0x49, 0x85, 0xf8, 0x27, 0x05, 0x4f, 0xf0, + 0xff, 0x32, 0x20, 0x46, 0xe8, 0xf7, 0x34, 0xfd, 0x7d, 0x49, 0xa5, 0xf8, + 0x2a, 0x05, 0x4f, 0xf0, 0xff, 0x32, 0x20, 0x46, 0xe8, 0xf7, 0x2c, 0xfd, + 0x7a, 0x49, 0xa5, 0xf8, 0x2c, 0x05, 0x00, 0x22, 0x20, 0x46, 0xe8, 0xf7, + 0x25, 0xfd, 0x78, 0x49, 0x85, 0xf8, 0x3a, 0x05, 0x00, 0x22, 0x20, 0x46, + 0xe8, 0xf7, 0x1e, 0xfd, 0x75, 0x49, 0x85, 0xf8, 0x3b, 0x05, 0x4f, 0xf0, + 0xff, 0x32, 0x20, 0x46, 0xe8, 0xf7, 0x16, 0xfd, 0x72, 0x49, 0x85, 0xf8, + 0x3c, 0x05, 0x20, 0x46, 0xe8, 0xf7, 0x04, 0xfd, 0x30, 0xb1, 0x20, 0x46, + 0x6e, 0x49, 0xe8, 0xf7, 0x18, 0xfd, 0x85, 0xf8, 0x42, 0x05, 0x02, 0xe0, + 0xff, 0x23, 0x85, 0xf8, 0x42, 0x35, 0x20, 0x46, 0x6a, 0x49, 0xe8, 0xf7, + 0xf5, 0xfc, 0x30, 0xb1, 0x20, 0x46, 0x68, 0x49, 0xe8, 0xf7, 0x09, 0xfd, + 0xa5, 0xf8, 0x44, 0x05, 0x03, 0xe0, 0x4f, 0xf0, 0xff, 0x33, 0xa5, 0xf8, + 0x44, 0x35, 0x64, 0x49, 0x20, 0x46, 0x4f, 0xf0, 0xff, 0x32, 0xe8, 0xf7, + 0xef, 0xfc, 0x62, 0x49, 0xa5, 0xf8, 0x90, 0x05, 0x20, 0x46, 0xe8, 0xf7, + 0xdd, 0xfc, 0x30, 0xb3, 0x01, 0x26, 0x5e, 0x49, 0x00, 0x22, 0x85, 0xf8, + 0x52, 0x65, 0x20, 0x46, 0xe8, 0xf7, 0x04, 0xfd, 0x5a, 0x49, 0x85, 0xf8, + 0x53, 0x05, 0x32, 0x46, 0x20, 0x46, 0xe8, 0xf7, 0xfd, 0xfc, 0x57, 0x49, + 0x85, 0xf8, 0x54, 0x05, 0x02, 0x22, 0x20, 0x46, 0xe8, 0xf7, 0xf6, 0xfc, + 0x53, 0x49, 0x85, 0xf8, 0x55, 0x05, 0x03, 0x22, 0x20, 0x46, 0xe8, 0xf7, + 0xef, 0xfc, 0x50, 0x49, 0x85, 0xf8, 0x56, 0x05, 0x04, 0x22, 0x20, 0x46, + 0xe8, 0xf7, 0xe8, 0xfc, 0x85, 0xf8, 0x57, 0x05, 0x01, 0xe0, 0x85, 0xf8, + 0x52, 0x05, 0x4b, 0x49, 0x4f, 0xf0, 0xff, 0x32, 0x20, 0x46, 0xe8, 0xf7, + 0xb9, 0xfc, 0x49, 0x49, 0x85, 0xf8, 0x58, 0x05, 0x4f, 0xf0, 0xff, 0x32, + 0x20, 0x46, 0xe8, 0xf7, 0xb1, 0xfc, 0x46, 0x49, 0x85, 0xf8, 0x59, 0x05, + 0x4f, 0xf0, 0xff, 0x32, 0x20, 0x46, 0xe8, 0xf7, 0xa9, 0xfc, 0x43, 0x49, + 0x85, 0xf8, 0x5a, 0x05, 0x00, 0x22, 0x20, 0x46, 0xe8, 0xf7, 0xa2, 0xfc, + 0x40, 0x49, 0x85, 0xf8, 0x70, 0x05, 0x00, 0x22, 0x20, 0x46, 0xe8, 0xf7, + 0x9b, 0xfc, 0x03, 0x22, 0x85, 0xf8, 0x80, 0x05, 0x3c, 0x49, 0x20, 0x46, + 0xe8, 0xf7, 0x94, 0xfc, 0x3b, 0x49, 0x85, 0xf8, 0x81, 0x05, 0x20, 0x46, + 0xe8, 0xf7, 0x9b, 0xfc, 0x39, 0x49, 0x85, 0xf8, 0x82, 0x05, 0x20, 0x46, + 0xe8, 0xf7, 0x95, 0xfc, 0x37, 0x49, 0xa5, 0xf8, 0x84, 0x05, 0x20, 0x46, + 0xe8, 0xf7, 0x8f, 0xfc, 0x35, 0x49, 0xa5, 0xf8, 0x86, 0x05, 0x20, 0x46, + 0xe8, 0xf7, 0x89, 0xfc, 0x33, 0x49, 0xa5, 0xf8, 0x88, 0x05, 0x20, 0x46, + 0xe8, 0xf7, 0x83, 0xfc, 0x31, 0x49, 0xa5, 0xf8, 0x8a, 0x05, 0x20, 0x46, + 0xe8, 0xf7, 0x7d, 0xfc, 0x2f, 0x49, 0xc5, 0xf8, 0x8c, 0x05, 0x00, 0x22, + 0x20, 0x46, 0xe8, 0xf7, 0x69, 0xfc, 0x2d, 0x49, 0x85, 0xf8, 0x94, 0x05, + 0x4f, 0xf0, 0xff, 0x32, 0x20, 0x46, 0xe8, 0xf7, 0x61, 0xfc, 0xc0, 0xb2, + 0xa5, 0xf8, 0xc6, 0x05, 0x28, 0x49, 0x20, 0x46, 0x6f, 0xf0, 0x07, 0x02, + 0xe8, 0xf7, 0x58, 0xfc, 0xc0, 0xb2, 0xa5, 0xf8, 0xc8, 0x05, 0x01, 0x20, + 0x06, 0xb0, 0xbd, 0xe8, 0xf0, 0x81, 0x00, 0xbf, 0x8f, 0x9d, 0x02, 0x00, + 0xd6, 0x9d, 0x02, 0x00, 0x3e, 0x97, 0x02, 0x00, 0x64, 0x9a, 0x02, 0x00, + 0xc7, 0x9b, 0x02, 0x00, 0xb6, 0x9a, 0x02, 0x00, 0x0b, 0x9d, 0x02, 0x00, + 0x05, 0x9b, 0x02, 0x00, 0xc7, 0x9a, 0x02, 0x00, 0x26, 0x98, 0x02, 0x00, + 0x79, 0x96, 0x02, 0x00, 0xec, 0x98, 0x02, 0x00, 0x33, 0x98, 0x02, 0x00, + 0x61, 0x97, 0x02, 0x00, 0x3f, 0x98, 0x02, 0x00, 0x09, 0x9a, 0x02, 0x00, + 0x28, 0x99, 0x02, 0x00, 0xe3, 0x96, 0x02, 0x00, 0x6e, 0x98, 0x02, 0x00, + 0x00, 0x9c, 0x02, 0x00, 0x13, 0x9a, 0x02, 0x00, 0x1c, 0x9d, 0x02, 0x00, + 0xd8, 0x97, 0x02, 0x00, 0xb0, 0x99, 0x02, 0x00, 0x0a, 0x9e, 0x02, 0x00, + 0x81, 0x98, 0x02, 0x00, 0xd1, 0x98, 0x02, 0x00, 0x94, 0x9c, 0x02, 0x00, + 0x92, 0x98, 0x02, 0x00, 0x47, 0x9a, 0x02, 0x00, 0x75, 0x9b, 0x02, 0x00, + 0x83, 0x99, 0x02, 0x00, 0x3e, 0x9e, 0x02, 0x00, 0x92, 0x96, 0x02, 0x00, + 0xaf, 0x97, 0x02, 0x00, 0xc3, 0x69, 0x70, 0xb5, 0x04, 0x46, 0x0d, 0x46, + 0x98, 0x68, 0x40, 0xf2, 0xcc, 0x51, 0xde, 0xf3, 0x47, 0xf3, 0xc4, 0xf8, + 0xa8, 0x00, 0x00, 0x28, 0x59, 0xd0, 0x00, 0x21, 0x40, 0xf2, 0xcc, 0x52, + 0xd9, 0xf3, 0xf6, 0xf4, 0xe3, 0x69, 0xd4, 0xf8, 0xa8, 0x60, 0x1a, 0x6d, + 0xd2, 0x03, 0x05, 0xd4, 0x01, 0x22, 0x04, 0xf5, 0x82, 0x51, 0x84, 0xf8, + 0x1a, 0x26, 0x0a, 0x71, 0xd8, 0x68, 0xe4, 0xf7, 0x1a, 0xfc, 0x04, 0xf5, + 0x80, 0x53, 0x98, 0x62, 0x00, 0x23, 0xf3, 0x63, 0x20, 0x4b, 0x20, 0x46, + 0x23, 0x62, 0x20, 0x4b, 0x29, 0x46, 0x63, 0x62, 0x1f, 0x4b, 0xa3, 0x62, + 0x1f, 0x4b, 0xe3, 0x62, 0x1f, 0x4b, 0xa3, 0x67, 0x1f, 0x4b, 0xe3, 0x67, + 0x1f, 0x4b, 0xc4, 0xf8, 0x90, 0x30, 0x1f, 0x4b, 0xc4, 0xf8, 0x84, 0x30, + 0x1e, 0x4b, 0x23, 0x63, 0x1e, 0x4b, 0x63, 0x63, 0x1e, 0x4b, 0xe3, 0x63, + 0x1e, 0x4b, 0x63, 0x64, 0x1e, 0x4b, 0x63, 0x65, 0x1e, 0x4b, 0xa3, 0x65, + 0x1e, 0x4b, 0xc4, 0xf8, 0x8c, 0x30, 0x1e, 0x4b, 0xc4, 0xf8, 0x88, 0x30, + 0x1d, 0x4b, 0xe3, 0x66, 0x1d, 0x4b, 0xc4, 0xf8, 0x9c, 0x30, 0x1d, 0x4b, + 0xc4, 0xf8, 0xa0, 0x30, 0x1c, 0x4b, 0xc4, 0xf8, 0xa4, 0x30, 0xfe, 0xf7, + 0xa7, 0xff, 0x60, 0xb1, 0x20, 0x46, 0xeb, 0xf7, 0x85, 0xfd, 0x20, 0x46, + 0xfe, 0xf7, 0x02, 0xff, 0x28, 0xb1, 0x20, 0x46, 0xfe, 0xf7, 0x5a, 0xff, + 0x00, 0x30, 0x18, 0xbf, 0x01, 0x20, 0x70, 0xbd, 0x55, 0x81, 0x01, 0x00, + 0x1d, 0x2e, 0x01, 0x00, 0x75, 0xb2, 0x01, 0x00, 0x0f, 0x73, 0x01, 0x00, + 0x75, 0x71, 0x01, 0x00, 0xaf, 0x2e, 0x01, 0x00, 0x09, 0x79, 0x01, 0x00, + 0xf1, 0x78, 0x01, 0x00, 0xa1, 0x90, 0x01, 0x00, 0x39, 0x56, 0x01, 0x00, + 0x35, 0x63, 0x01, 0x00, 0x69, 0x53, 0x01, 0x00, 0x8d, 0x37, 0x01, 0x00, + 0xc9, 0x39, 0x01, 0x00, 0x63, 0xb1, 0x01, 0x00, 0xad, 0x2e, 0x01, 0x00, + 0x9d, 0x35, 0x01, 0x00, 0x6b, 0x56, 0x01, 0x00, 0xa5, 0x50, 0x01, 0x00, + 0x31, 0xb1, 0x01, 0x00, 0xf8, 0xb5, 0x05, 0x46, 0x0e, 0x46, 0x00, 0x68, + 0x0c, 0x21, 0x17, 0x46, 0xde, 0xf3, 0xb8, 0xf2, 0x04, 0x46, 0x30, 0xb1, + 0x00, 0x21, 0x0c, 0x22, 0xd9, 0xf3, 0x6a, 0xf4, 0x84, 0xe8, 0xa0, 0x00, + 0xa6, 0x60, 0x20, 0x46, 0xf8, 0xbd, 0x01, 0x46, 0x20, 0xb1, 0x03, 0x68, + 0x0c, 0x22, 0x18, 0x68, 0xde, 0xf3, 0xb6, 0xb2, 0x70, 0x47, 0x00, 0x00, + 0x7f, 0xb5, 0x05, 0x46, 0x88, 0x21, 0x40, 0x68, 0xde, 0xf3, 0x9e, 0xf2, + 0x04, 0x46, 0x00, 0x28, 0x3a, 0xd0, 0x00, 0x21, 0x88, 0x22, 0xd9, 0xf3, + 0x4f, 0xf4, 0x2b, 0x68, 0x25, 0x60, 0x63, 0x60, 0x00, 0x26, 0x04, 0x21, + 0x28, 0x46, 0x1a, 0x4a, 0x1a, 0x4b, 0x00, 0x96, 0x01, 0x94, 0x00, 0xf0, + 0x39, 0xf9, 0xb0, 0x42, 0xa0, 0x60, 0x21, 0xdb, 0x17, 0x4b, 0x02, 0x96, + 0x8d, 0xe8, 0x48, 0x00, 0x03, 0x96, 0x60, 0x68, 0x15, 0x49, 0x16, 0x4a, + 0x23, 0x46, 0xfb, 0xf3, 0x81, 0xf3, 0xa8, 0xb9, 0x1e, 0x22, 0x62, 0x61, + 0x04, 0x22, 0xe2, 0x73, 0x02, 0x22, 0x22, 0x74, 0x0a, 0x22, 0x01, 0x23, + 0x62, 0x74, 0x4f, 0xf6, 0xaf, 0x72, 0x84, 0xf8, 0x20, 0x00, 0xe3, 0x77, + 0x23, 0x73, 0xa3, 0x61, 0xa0, 0x74, 0x60, 0x73, 0xa0, 0x73, 0xa2, 0x83, + 0xa3, 0x77, 0x05, 0xe0, 0x21, 0x46, 0x68, 0x68, 0x88, 0x22, 0xde, 0xf3, + 0x71, 0xf2, 0x00, 0x24, 0x20, 0x46, 0x04, 0xb0, 0x70, 0xbd, 0x00, 0xbf, + 0x51, 0x23, 0x85, 0x00, 0x25, 0x23, 0x85, 0x00, 0x81, 0x14, 0x85, 0x00, + 0xbc, 0x1d, 0x86, 0x00, 0x03, 0xe8, 0x86, 0x00, 0x10, 0xb5, 0x04, 0x46, + 0x60, 0xb1, 0x22, 0x46, 0x06, 0x49, 0x40, 0x68, 0xfb, 0xf3, 0x86, 0xf3, + 0x63, 0x68, 0x21, 0x46, 0xd8, 0x68, 0x88, 0x22, 0xbd, 0xe8, 0x10, 0x40, + 0xde, 0xf3, 0x52, 0xb2, 0x10, 0xbd, 0x00, 0xbf, 0x03, 0xe8, 0x86, 0x00, + 0x2d, 0xe9, 0xf0, 0x43, 0x07, 0x46, 0x85, 0xb0, 0x88, 0x46, 0x10, 0x46, + 0x40, 0xf2, 0xc4, 0x51, 0x15, 0x46, 0x99, 0x46, 0xde, 0xf3, 0x32, 0xf2, + 0x04, 0x46, 0x00, 0x28, 0x76, 0xd0, 0x00, 0x21, 0x40, 0xf2, 0xc4, 0x52, + 0xd9, 0xf3, 0xe2, 0xf3, 0x28, 0x46, 0x1c, 0x21, 0xde, 0xf3, 0x26, 0xf2, + 0x06, 0x46, 0x20, 0x60, 0x38, 0xb9, 0x28, 0x46, 0x21, 0x46, 0x40, 0xf2, + 0xc4, 0x52, 0xde, 0xf3, 0x2d, 0xf2, 0x30, 0x46, 0x62, 0xe0, 0x00, 0x21, + 0x1c, 0x22, 0xd9, 0xf3, 0xcf, 0xf3, 0x23, 0x68, 0x40, 0xf2, 0xc4, 0x52, + 0x1c, 0x60, 0x00, 0x26, 0x62, 0x61, 0x4f, 0xf0, 0xff, 0x32, 0xa2, 0x61, + 0xa7, 0x60, 0xe5, 0x60, 0xc4, 0xf8, 0x04, 0x90, 0x9e, 0x71, 0x14, 0x23, + 0xa4, 0xf8, 0x08, 0x32, 0x28, 0x23, 0xa4, 0xf8, 0x06, 0x32, 0x2d, 0x23, + 0xa4, 0xf8, 0x04, 0x32, 0xfa, 0x23, 0xa4, 0xf8, 0x0a, 0x32, 0x02, 0x23, + 0x84, 0xf8, 0x0c, 0x32, 0x64, 0x23, 0xa4, 0xf8, 0x3e, 0x32, 0x84, 0xf8, + 0x0d, 0x62, 0x40, 0x46, 0x1f, 0x49, 0x22, 0x46, 0x33, 0x46, 0xe6, 0xf3, + 0xe3, 0xf6, 0xc4, 0xf8, 0xf8, 0x01, 0x00, 0xb3, 0x04, 0xf5, 0x10, 0x73, + 0xc4, 0xf8, 0x18, 0x32, 0xc4, 0xf8, 0x14, 0x32, 0x04, 0xf5, 0x3d, 0x73, + 0xc4, 0xf8, 0x24, 0x32, 0xc4, 0xf8, 0x20, 0x32, 0x05, 0x22, 0x16, 0x4b, + 0xc4, 0xf8, 0x1c, 0x22, 0x3c, 0x22, 0xc4, 0xf8, 0x28, 0x22, 0x8d, 0xe8, + 0x48, 0x00, 0x13, 0x4b, 0x02, 0x96, 0x03, 0x93, 0x38, 0x68, 0x12, 0x49, + 0x12, 0x4a, 0x23, 0x46, 0xfb, 0xf3, 0xd2, 0xf2, 0x08, 0xb9, 0x20, 0x68, + 0x12, 0xe0, 0xd4, 0xf8, 0xf8, 0x11, 0x11, 0xb1, 0x40, 0x46, 0xe6, 0xf3, + 0x9d, 0xf6, 0x21, 0x68, 0x19, 0xb1, 0x28, 0x46, 0x1c, 0x22, 0xde, 0xf3, + 0xcf, 0xf1, 0x28, 0x46, 0x21, 0x46, 0x40, 0xf2, 0xc4, 0x52, 0xde, 0xf3, + 0xc9, 0xf1, 0x00, 0x20, 0x05, 0xb0, 0xbd, 0xe8, 0xf0, 0x83, 0x00, 0xbf, + 0xc1, 0x3c, 0x85, 0x00, 0xf5, 0x37, 0x85, 0x00, 0x99, 0xb4, 0x01, 0x00, + 0xd4, 0x1d, 0x86, 0x00, 0xe6, 0xe8, 0x86, 0x00, 0x38, 0xb5, 0x04, 0x68, + 0xdc, 0xb1, 0xd4, 0xf8, 0xf8, 0x11, 0xa5, 0x68, 0x29, 0xb1, 0xa8, 0x68, + 0xe6, 0xf3, 0x78, 0xf6, 0x00, 0x23, 0xc4, 0xf8, 0xf8, 0x31, 0x09, 0x49, + 0x28, 0x68, 0x22, 0x46, 0xfb, 0xf3, 0xd4, 0xf2, 0x21, 0x68, 0x19, 0xb1, + 0x68, 0x68, 0x1c, 0x22, 0xde, 0xf3, 0xa2, 0xf1, 0x68, 0x68, 0x62, 0x69, + 0x21, 0x46, 0xbd, 0xe8, 0x38, 0x40, 0xde, 0xf3, 0x9b, 0xb1, 0x38, 0xbd, + 0xe6, 0xe8, 0x86, 0x00, 0xf8, 0xb5, 0xc3, 0x69, 0x06, 0x46, 0x1b, 0x69, + 0xc0, 0x68, 0xdd, 0x1d, 0x48, 0xbf, 0x03, 0xf1, 0x0e, 0x05, 0xed, 0x10, + 0xed, 0xb2, 0xef, 0x00, 0x07, 0xf5, 0x92, 0x77, 0x39, 0x46, 0xde, 0xf3, + 0x77, 0xf1, 0x04, 0x46, 0xa0, 0xb1, 0x3a, 0x46, 0x00, 0x21, 0xd9, 0xf3, + 0x29, 0xf3, 0x23, 0x46, 0x43, 0xf8, 0x24, 0x6b, 0xe3, 0x61, 0x03, 0xeb, + 0x85, 0x03, 0x03, 0xf5, 0x80, 0x73, 0x04, 0xf5, 0x92, 0x72, 0x23, 0x61, + 0x4f, 0xf4, 0x03, 0x73, 0x84, 0xf8, 0x20, 0x50, 0xe2, 0x60, 0x63, 0x61, + 0x20, 0x46, 0xf8, 0xbd, 0x01, 0x46, 0x40, 0xb1, 0x90, 0xf8, 0x20, 0x20, + 0x03, 0x68, 0xd2, 0x00, 0xd8, 0x68, 0x02, 0xf5, 0x92, 0x72, 0xde, 0xf3, + 0x63, 0xb1, 0x70, 0x47, 0xf0, 0xb5, 0xd0, 0xf8, 0x00, 0x45, 0xa5, 0x69, + 0x0f, 0x2d, 0x11, 0xd8, 0xe7, 0x69, 0x2e, 0x01, 0xb8, 0x19, 0x01, 0x35, + 0xa5, 0x61, 0x43, 0x60, 0x05, 0x9b, 0xba, 0x51, 0x83, 0x60, 0x06, 0x9b, + 0xc3, 0x60, 0x60, 0x69, 0xc3, 0x1c, 0x59, 0x18, 0x21, 0xf0, 0x03, 0x01, + 0x61, 0x61, 0xf0, 0xbd, 0x4f, 0xf0, 0xff, 0x30, 0xf0, 0xbd, 0x00, 0x00, + 0x2d, 0xe9, 0xf0, 0x4f, 0x3b, 0x4d, 0x8d, 0xb0, 0x28, 0x68, 0x3b, 0x49, + 0xd9, 0xf3, 0x82, 0xf7, 0x01, 0x28, 0x61, 0xd0, 0x2b, 0x68, 0xdf, 0xf8, + 0x0c, 0x91, 0x02, 0x93, 0xdf, 0xf8, 0x08, 0x81, 0xd9, 0xf8, 0x00, 0x30, + 0x00, 0x24, 0x03, 0x93, 0xd8, 0xf8, 0x00, 0x30, 0x33, 0x4f, 0x04, 0x93, + 0x23, 0x68, 0x33, 0x4e, 0x05, 0x93, 0x3b, 0x68, 0xdf, 0xf8, 0xf0, 0xa0, + 0x06, 0x93, 0x33, 0x68, 0xdf, 0xf8, 0xec, 0xb0, 0x07, 0x93, 0xda, 0xf8, + 0x00, 0x30, 0xdf, 0xf8, 0xe8, 0xc0, 0x08, 0x93, 0xdb, 0xf8, 0x00, 0x30, + 0x2b, 0x48, 0x09, 0x93, 0x2b, 0x4b, 0x2c, 0x49, 0x1a, 0x68, 0x3c, 0x60, + 0x0a, 0x92, 0xdc, 0xf8, 0x00, 0x20, 0x1c, 0x60, 0x0b, 0x92, 0x29, 0x4a, + 0xcc, 0xf8, 0x00, 0x40, 0x32, 0x60, 0x09, 0x1a, 0x4f, 0xf0, 0xff, 0x32, + 0x01, 0x93, 0xcd, 0xf8, 0x00, 0xc0, 0x2c, 0x60, 0xc8, 0xf8, 0x00, 0x40, + 0xc9, 0xf8, 0x00, 0x40, 0xcb, 0xf8, 0x00, 0x40, 0xca, 0xf8, 0x00, 0x40, + 0xd9, 0xf3, 0x94, 0xf7, 0x1f, 0x4a, 0x01, 0x9b, 0x90, 0x42, 0xdd, 0xf8, + 0x00, 0xc0, 0x28, 0xd1, 0x02, 0x9a, 0x2a, 0x60, 0x03, 0x9a, 0xc9, 0xf8, + 0x00, 0x20, 0x04, 0x9a, 0xc8, 0xf8, 0x00, 0x20, 0x21, 0x68, 0x19, 0x4a, + 0x11, 0x60, 0x05, 0x9a, 0x22, 0x60, 0x06, 0x9a, 0x3a, 0x60, 0x07, 0x9a, + 0x32, 0x60, 0x08, 0x9a, 0xca, 0xf8, 0x00, 0x20, 0x09, 0x9a, 0xcb, 0xf8, + 0x00, 0x20, 0x0a, 0x9a, 0x1a, 0x60, 0x0b, 0x9b, 0xcc, 0xf8, 0x00, 0x30, + 0x10, 0x4a, 0x11, 0x4b, 0xd1, 0x7e, 0x19, 0x77, 0x11, 0x7f, 0x59, 0x77, + 0x51, 0x7f, 0x99, 0x77, 0x92, 0x7f, 0xda, 0x77, 0x0d, 0xb0, 0xbd, 0xe8, + 0xf0, 0x8f, 0xfe, 0xe7, 0xe8, 0xfe, 0x01, 0x00, 0xa4, 0xfd, 0x01, 0x00, + 0x84, 0xc2, 0x00, 0x00, 0x70, 0xc2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x8c, 0xc2, 0x00, 0x00, 0xec, 0x35, 0x03, 0x00, 0xdd, 0xba, 0xad, 0xbb, + 0xe3, 0x20, 0xbb, 0xde, 0x74, 0xc2, 0x00, 0x00, 0xe8, 0x35, 0x03, 0x00, + 0xfc, 0x07, 0x02, 0x00, 0xec, 0xfe, 0x01, 0x00, 0xe4, 0xfe, 0x01, 0x00, + 0x80, 0xc2, 0x00, 0x00, 0x88, 0xc2, 0x00, 0x00, 0x90, 0xc2, 0x00, 0x00, + 0x70, 0x47, 0x00, 0x00, 0x2d, 0xe9, 0xf0, 0x4f, 0x91, 0xb0, 0xff, 0xf7, + 0x5d, 0xff, 0x6d, 0x4b, 0x1b, 0x68, 0x04, 0x3b, 0x01, 0x2b, 0x03, 0xd8, + 0x6b, 0x4b, 0x18, 0x68, 0xff, 0xf7, 0xf0, 0xff, 0xfb, 0xf7, 0x3e, 0xfa, + 0x00, 0x21, 0x04, 0x46, 0xe2, 0xf3, 0x72, 0xf3, 0x20, 0x46, 0x00, 0x21, + 0xe2, 0xf3, 0x28, 0xf3, 0x28, 0xb1, 0x03, 0x6a, 0x00, 0x2b, 0xbc, 0xbf, + 0x4f, 0xf0, 0x00, 0x43, 0x03, 0x62, 0x0e, 0xa9, 0x08, 0x22, 0xa0, 0x6b, + 0xd9, 0xf3, 0xba, 0xf4, 0x02, 0x46, 0x20, 0x46, 0xd4, 0xf8, 0x3c, 0xb0, + 0x0b, 0x92, 0xe4, 0xf7, 0x58, 0xf9, 0x82, 0x46, 0x20, 0x46, 0xe4, 0xf7, + 0x54, 0xf9, 0x81, 0x46, 0x20, 0x46, 0xe4, 0xf7, 0x50, 0xf9, 0x80, 0x46, + 0x20, 0x46, 0xe4, 0xf7, 0x27, 0xf9, 0x07, 0x46, 0x20, 0x46, 0xe4, 0xf7, + 0x23, 0xf9, 0x06, 0x46, 0x20, 0x46, 0xe4, 0xf7, 0x1f, 0xf9, 0x05, 0x46, + 0x20, 0x46, 0xe3, 0xf7, 0x2d, 0xff, 0x01, 0x46, 0x20, 0x46, 0x0c, 0x91, + 0xe3, 0xf7, 0x28, 0xff, 0x84, 0x46, 0x20, 0x46, 0xcd, 0xf8, 0x34, 0xc0, + 0xe3, 0xf7, 0x22, 0xff, 0x0b, 0x9a, 0x0c, 0x99, 0xdd, 0xf8, 0x34, 0xc0, + 0x02, 0x92, 0x08, 0xf5, 0x42, 0x48, 0x47, 0x4a, 0x05, 0xf5, 0x42, 0x45, + 0x00, 0xf5, 0x42, 0x40, 0x0a, 0xf5, 0x42, 0x4a, 0x09, 0xf5, 0x42, 0x49, + 0x08, 0xf5, 0xa8, 0x78, 0x07, 0xf5, 0x42, 0x47, 0x06, 0xf5, 0x42, 0x46, + 0x05, 0xf5, 0xa8, 0x75, 0x01, 0xf5, 0x42, 0x41, 0x0c, 0xf5, 0x42, 0x4c, + 0x00, 0xf5, 0xa8, 0x70, 0xb8, 0xfb, 0xf2, 0xf8, 0xb5, 0xfb, 0xf2, 0xf5, + 0x0c, 0xf5, 0xa8, 0x7c, 0xb0, 0xfb, 0xf2, 0xf0, 0x0a, 0xf5, 0xa8, 0x7a, + 0x09, 0xf5, 0xa8, 0x79, 0x07, 0xf5, 0xa8, 0x77, 0x06, 0xf5, 0xa8, 0x76, + 0x01, 0xf5, 0xa8, 0x71, 0xb1, 0xfb, 0xf2, 0xf1, 0xdf, 0xf8, 0xe8, 0xe0, + 0xba, 0xfb, 0xf2, 0xfa, 0x02, 0xfb, 0x18, 0x99, 0xb7, 0xfb, 0xf2, 0xf7, + 0x02, 0xfb, 0x15, 0x66, 0x02, 0xfb, 0x10, 0xc2, 0xcd, 0xf8, 0x04, 0xe0, + 0xdf, 0xf8, 0xd0, 0xe0, 0x2a, 0x4b, 0xb2, 0xfb, 0xfe, 0xf2, 0xb9, 0xfb, + 0xfe, 0xf9, 0xb6, 0xfb, 0xfe, 0xf6, 0x08, 0x91, 0x09, 0x92, 0x27, 0x49, + 0x27, 0x4a, 0x28, 0x48, 0x00, 0x93, 0xcd, 0xf8, 0x0c, 0xb0, 0xcd, 0xf8, + 0x10, 0xa0, 0xcd, 0xf8, 0x14, 0x90, 0x06, 0x97, 0x07, 0x96, 0xe6, 0xf7, + 0x7b, 0xfd, 0x23, 0x48, 0x40, 0xf6, 0x0d, 0x01, 0x44, 0xf2, 0xf4, 0x32, + 0xfb, 0xf7, 0x24, 0xf9, 0x38, 0xb1, 0x1f, 0x48, 0x40, 0xf6, 0x29, 0x01, + 0x44, 0xf2, 0xf4, 0x32, 0xfb, 0xf7, 0x1c, 0xf9, 0x20, 0xb9, 0x1c, 0x4a, + 0x1c, 0x4b, 0x1a, 0x4d, 0x1a, 0x60, 0x00, 0xe0, 0x00, 0x25, 0x20, 0x46, + 0xfd, 0xf7, 0xb8, 0xfd, 0x44, 0xf2, 0x18, 0x33, 0x4f, 0xf6, 0xff, 0x72, + 0x90, 0x42, 0x14, 0xbf, 0x02, 0x46, 0x1a, 0x46, 0x40, 0xf6, 0x12, 0x01, + 0x14, 0x48, 0xfb, 0xf7, 0x05, 0xf9, 0x13, 0x49, 0x00, 0x28, 0x18, 0xbf, + 0x00, 0x21, 0x4d, 0xb1, 0x41, 0xb1, 0x0f, 0x4b, 0x28, 0x46, 0x1b, 0x68, + 0x5b, 0x68, 0x98, 0x47, 0x2b, 0x69, 0x28, 0x46, 0x5b, 0x68, 0x98, 0x47, + 0x20, 0x46, 0x11, 0xb0, 0xbd, 0xe8, 0xf0, 0x8f, 0x90, 0xc2, 0x00, 0x00, + 0x8c, 0xc2, 0x00, 0x00, 0x40, 0x42, 0x0f, 0x00, 0xab, 0xff, 0x86, 0x00, + 0xaa, 0xfd, 0x01, 0x00, 0xaf, 0xfd, 0x01, 0x00, 0x90, 0xae, 0x02, 0x00, + 0xf0, 0xfe, 0x01, 0x00, 0x1c, 0xff, 0x01, 0x00, 0xf8, 0x26, 0x00, 0x00, + 0xe4, 0xfd, 0x01, 0x00, 0xbc, 0xba, 0x01, 0x00, 0xa0, 0x86, 0x01, 0x00, + 0x77, 0x6c, 0x25, 0x64, 0x3a, 0x20, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, + 0x6f, 0x6d, 0x20, 0x42, 0x43, 0x4d, 0x25, 0x64, 0x20, 0x38, 0x30, 0x32, + 0x2e, 0x31, 0x31, 0x20, 0x57, 0x69, 0x72, 0x65, 0x6c, 0x65, 0x73, 0x73, + 0x20, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x20, + 0x25, 0x73, 0x0a, 0x00, 0x25, 0x73, 0x3a, 0x20, 0x42, 0x72, 0x6f, 0x61, + 0x64, 0x63, 0x6f, 0x6d, 0x20, 0x53, 0x44, 0x50, 0x43, 0x4d, 0x44, 0x20, + 0x43, 0x44, 0x43, 0x20, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, 0x0a, 0x00, + 0x73, 0x64, 0x70, 0x63, 0x6d, 0x64, 0x63, 0x64, 0x63, 0x25, 0x64, 0x00, + 0x72, 0x73, 0x73, 0x69, 0x73, 0x6d, 0x66, 0x32, 0x67, 0x3d, 0x25, 0x64, + 0x00, 0x78, 0x74, 0x61, 0x6c, 0x66, 0x72, 0x65, 0x71, 0x3d, 0x25, 0x64, + 0x00, 0x61, 0x61, 0x32, 0x67, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x62, + 0x77, 0x34, 0x30, 0x70, 0x6f, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x6c, + 0x65, 0x64, 0x62, 0x68, 0x25, 0x64, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, + 0x74, 0x73, 0x73, 0x69, 0x70, 0x6f, 0x73, 0x32, 0x67, 0x3d, 0x30, 0x78, + 0x25, 0x78, 0x00, 0x72, 0x73, 0x73, 0x69, 0x73, 0x61, 0x76, 0x32, 0x67, + 0x3d, 0x25, 0x64, 0x00, 0x6c, 0x65, 0x67, 0x6f, 0x66, 0x64, 0x6d, 0x34, + 0x30, 0x64, 0x75, 0x70, 0x70, 0x6f, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, + 0x70, 0x61, 0x31, 0x68, 0x69, 0x6d, 0x61, 0x78, 0x70, 0x77, 0x72, 0x3d, + 0x25, 0x64, 0x00, 0x6d, 0x61, 0x78, 0x70, 0x32, 0x67, 0x61, 0x30, 0x3d, + 0x30, 0x78, 0x25, 0x78, 0x00, 0x70, 0x61, 0x31, 0x69, 0x74, 0x73, 0x73, + 0x69, 0x74, 0x3d, 0x25, 0x64, 0x00, 0x6d, 0x61, 0x6e, 0x66, 0x69, 0x64, + 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x73, 0x75, 0x62, 0x76, 0x65, 0x6e, + 0x64, 0x69, 0x64, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x20, 0x04, 0xd0, + 0x02, 0x36, 0x43, 0xff, 0xff, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x74, 0x79, + 0x70, 0x65, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x6d, 0x63, 0x73, 0x25, + 0x64, 0x67, 0x70, 0x6f, 0x25, 0x64, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, + 0x6d, 0x61, 0x6e, 0x66, 0x3d, 0x25, 0x73, 0x00, 0x6d, 0x61, 0x78, 0x70, + 0x35, 0x67, 0x6c, 0x61, 0x30, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x6d, + 0x61, 0x78, 0x70, 0x35, 0x67, 0x6c, 0x61, 0x31, 0x3d, 0x30, 0x78, 0x25, + 0x78, 0x00, 0x6f, 0x66, 0x64, 0x6d, 0x35, 0x67, 0x6c, 0x70, 0x6f, 0x3d, + 0x30, 0x78, 0x25, 0x78, 0x00, 0x72, 0x73, 0x73, 0x69, 0x73, 0x6d, 0x63, + 0x35, 0x67, 0x3d, 0x25, 0x64, 0x00, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x66, + 0x6c, 0x61, 0x67, 0x73, 0x32, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x74, + 0x72, 0x69, 0x73, 0x6f, 0x32, 0x67, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, + 0x70, 0x64, 0x65, 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x32, 0x67, 0x3d, + 0x30, 0x78, 0x25, 0x78, 0x00, 0x6d, 0x63, 0x73, 0x62, 0x77, 0x32, 0x30, + 0x35, 0x67, 0x6c, 0x70, 0x6f, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x00, + 0x00, 0x6d, 0x63, 0x73, 0x62, 0x77, 0x32, 0x30, 0x75, 0x6c, 0x35, 0x67, + 0x6c, 0x70, 0x6f, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x6d, 0x63, 0x73, + 0x62, 0x77, 0x34, 0x30, 0x35, 0x67, 0x6c, 0x70, 0x6f, 0x3d, 0x30, 0x78, + 0x25, 0x78, 0x00, 0x00, 0x00, 0x70, 0x61, 0x31, 0x6c, 0x6f, 0x6d, 0x61, + 0x78, 0x70, 0x77, 0x72, 0x3d, 0x25, 0x64, 0x00, 0x75, 0x73, 0x62, 0x65, + 0x70, 0x6e, 0x75, 0x6d, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x72, 0x78, + 0x70, 0x6f, 0x35, 0x67, 0x3d, 0x25, 0x64, 0x00, 0x6d, 0x63, 0x73, 0x33, + 0x32, 0x70, 0x6f, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x73, 0x75, 0x62, + 0x64, 0x65, 0x76, 0x69, 0x64, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x69, + 0x74, 0x74, 0x35, 0x67, 0x61, 0x30, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, + 0x69, 0x74, 0x74, 0x35, 0x67, 0x61, 0x31, 0x3d, 0x30, 0x78, 0x25, 0x78, + 0x00, 0x70, 0x61, 0x31, 0x6d, 0x61, 0x78, 0x70, 0x77, 0x72, 0x3d, 0x25, + 0x64, 0x00, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x72, 0x65, 0x76, 0x3d, 0x30, + 0x78, 0x25, 0x78, 0x00, 0x6d, 0x63, 0x73, 0x62, 0x77, 0x32, 0x30, 0x32, + 0x67, 0x70, 0x6f, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x00, 0x00, 0x6d, + 0x63, 0x73, 0x62, 0x77, 0x32, 0x30, 0x75, 0x6c, 0x32, 0x67, 0x70, 0x6f, + 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x6d, 0x63, 0x73, 0x62, 0x77, 0x34, + 0x30, 0x32, 0x67, 0x70, 0x6f, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x00, + 0x00, 0x6d, 0x63, 0x73, 0x62, 0x77, 0x32, 0x30, 0x35, 0x67, 0x6d, 0x70, + 0x6f, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x00, 0x00, 0x6d, 0x63, 0x73, + 0x62, 0x77, 0x32, 0x30, 0x75, 0x6c, 0x35, 0x67, 0x6d, 0x70, 0x6f, 0x3d, + 0x30, 0x78, 0x25, 0x78, 0x00, 0x6d, 0x63, 0x73, 0x62, 0x77, 0x34, 0x30, + 0x35, 0x67, 0x6d, 0x70, 0x6f, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x00, + 0x00, 0x73, 0x72, 0x6f, 0x6d, 0x72, 0x65, 0x76, 0x3d, 0x25, 0x64, 0x00, + 0x77, 0x70, 0x73, 0x6c, 0x65, 0x64, 0x3d, 0x25, 0x64, 0x00, 0x70, 0x61, + 0x31, 0x6c, 0x6f, 0x62, 0x30, 0x3d, 0x25, 0x64, 0x00, 0x70, 0x61, 0x31, + 0x6c, 0x6f, 0x62, 0x31, 0x3d, 0x25, 0x64, 0x00, 0x70, 0x61, 0x31, 0x6c, + 0x6f, 0x62, 0x32, 0x3d, 0x25, 0x64, 0x00, 0x70, 0x61, 0x25, 0x64, 0x67, + 0x25, 0x63, 0x77, 0x25, 0x64, 0x61, 0x25, 0x64, 0x3d, 0x30, 0x78, 0x25, + 0x78, 0x00, 0x6d, 0x61, 0x78, 0x70, 0x32, 0x67, 0x61, 0x31, 0x3d, 0x30, + 0x78, 0x25, 0x78, 0x00, 0x70, 0x61, 0x30, 0x62, 0x30, 0x3d, 0x25, 0x64, + 0x00, 0x70, 0x61, 0x30, 0x62, 0x31, 0x3d, 0x25, 0x64, 0x00, 0x70, 0x61, + 0x30, 0x62, 0x32, 0x3d, 0x25, 0x64, 0x00, 0x72, 0x73, 0x73, 0x69, 0x73, + 0x6d, 0x63, 0x32, 0x67, 0x3d, 0x25, 0x64, 0x00, 0x74, 0x72, 0x69, 0x35, + 0x67, 0x68, 0x3d, 0x25, 0x64, 0x00, 0x75, 0x73, 0x62, 0x66, 0x73, 0x3d, + 0x25, 0x64, 0x00, 0x63, 0x63, 0x6b, 0x70, 0x6f, 0x3d, 0x30, 0x78, 0x25, + 0x78, 0x00, 0x74, 0x72, 0x69, 0x35, 0x67, 0x6c, 0x3d, 0x25, 0x64, 0x00, + 0x6f, 0x66, 0x64, 0x6d, 0x35, 0x67, 0x68, 0x70, 0x6f, 0x3d, 0x30, 0x78, + 0x25, 0x78, 0x00, 0x61, 0x67, 0x25, 0x64, 0x3d, 0x30, 0x78, 0x25, 0x78, + 0x00, 0x65, 0x78, 0x74, 0x70, 0x61, 0x67, 0x61, 0x69, 0x6e, 0x35, 0x67, + 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, + 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x25, 0x73, 0x00, 0x63, 0x64, 0x64, + 0x70, 0x6f, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x6c, 0x65, 0x67, 0x6f, + 0x66, 0x64, 0x6d, 0x62, 0x77, 0x32, 0x30, 0x35, 0x67, 0x6c, 0x70, 0x6f, + 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x00, 0x00, 0x6c, 0x65, 0x67, 0x6f, + 0x66, 0x64, 0x6d, 0x62, 0x77, 0x32, 0x30, 0x75, 0x6c, 0x35, 0x67, 0x6c, + 0x70, 0x6f, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x6c, 0x65, 0x67, 0x6f, + 0x66, 0x64, 0x6d, 0x62, 0x77, 0x32, 0x30, 0x35, 0x67, 0x6d, 0x70, 0x6f, + 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x00, 0x00, 0x6c, 0x65, 0x67, 0x6f, + 0x66, 0x64, 0x6d, 0x62, 0x77, 0x32, 0x30, 0x75, 0x6c, 0x35, 0x67, 0x6d, + 0x70, 0x6f, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x6c, 0x65, 0x67, 0x6f, + 0x66, 0x64, 0x6d, 0x62, 0x77, 0x32, 0x30, 0x35, 0x67, 0x68, 0x70, 0x6f, + 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x00, 0x00, 0x6c, 0x65, 0x67, 0x6f, + 0x66, 0x64, 0x6d, 0x62, 0x77, 0x32, 0x30, 0x75, 0x6c, 0x35, 0x67, 0x68, + 0x70, 0x6f, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x72, 0x78, 0x70, 0x6f, + 0x32, 0x67, 0x3d, 0x25, 0x64, 0x00, 0x72, 0x78, 0x63, 0x68, 0x61, 0x69, + 0x6e, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x69, 0x74, 0x74, 0x32, 0x67, + 0x61, 0x30, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x69, 0x74, 0x74, 0x32, + 0x67, 0x61, 0x31, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x61, 0x6e, 0x74, + 0x73, 0x77, 0x69, 0x74, 0x63, 0x68, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, + 0x74, 0x78, 0x63, 0x68, 0x61, 0x69, 0x6e, 0x3d, 0x30, 0x78, 0x25, 0x78, + 0x00, 0x70, 0x72, 0x6f, 0x64, 0x69, 0x64, 0x3d, 0x30, 0x78, 0x25, 0x78, + 0x00, 0x70, 0x61, 0x30, 0x69, 0x74, 0x73, 0x73, 0x69, 0x74, 0x3d, 0x25, + 0x64, 0x00, 0x63, 0x63, 0x6b, 0x64, 0x69, 0x67, 0x66, 0x69, 0x6c, 0x74, + 0x74, 0x79, 0x70, 0x65, 0x3d, 0x25, 0x64, 0x00, 0x63, 0x68, 0x69, 0x70, + 0x72, 0x65, 0x76, 0x3d, 0x25, 0x64, 0x00, 0x6f, 0x66, 0x64, 0x6d, 0x35, + 0x67, 0x70, 0x6f, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x6c, 0x65, 0x64, + 0x64, 0x63, 0x3d, 0x30, 0x78, 0x25, 0x30, 0x34, 0x78, 0x00, 0x6d, 0x61, + 0x78, 0x70, 0x35, 0x67, 0x68, 0x61, 0x30, 0x3d, 0x30, 0x78, 0x25, 0x78, + 0x00, 0x6d, 0x61, 0x78, 0x70, 0x35, 0x67, 0x68, 0x61, 0x31, 0x3d, 0x30, + 0x78, 0x25, 0x78, 0x00, 0x70, 0x61, 0x31, 0x62, 0x30, 0x3d, 0x25, 0x64, + 0x00, 0x70, 0x61, 0x31, 0x62, 0x31, 0x3d, 0x25, 0x64, 0x00, 0x70, 0x61, + 0x31, 0x62, 0x32, 0x3d, 0x25, 0x64, 0x00, 0x62, 0x77, 0x64, 0x75, 0x70, + 0x70, 0x6f, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x6d, 0x61, 0x78, 0x70, + 0x35, 0x67, 0x61, 0x30, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x6d, 0x61, + 0x78, 0x70, 0x35, 0x67, 0x61, 0x31, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, + 0x61, 0x6e, 0x74, 0x73, 0x77, 0x63, 0x74, 0x6c, 0x35, 0x67, 0x3d, 0x30, + 0x78, 0x25, 0x78, 0x00, 0x6d, 0x63, 0x73, 0x25, 0x64, 0x67, 0x25, 0x63, + 0x70, 0x6f, 0x25, 0x64, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x6d, 0x63, + 0x73, 0x62, 0x77, 0x32, 0x30, 0x35, 0x67, 0x68, 0x70, 0x6f, 0x3d, 0x30, + 0x78, 0x25, 0x78, 0x00, 0x00, 0x00, 0x6d, 0x63, 0x73, 0x62, 0x77, 0x32, + 0x30, 0x75, 0x6c, 0x35, 0x67, 0x68, 0x70, 0x6f, 0x3d, 0x30, 0x78, 0x25, + 0x78, 0x00, 0x6d, 0x63, 0x73, 0x62, 0x77, 0x34, 0x30, 0x35, 0x67, 0x68, + 0x70, 0x6f, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x00, 0x00, 0x74, 0x72, + 0x69, 0x35, 0x67, 0x3d, 0x25, 0x64, 0x00, 0x6f, 0x70, 0x6f, 0x3d, 0x25, + 0x64, 0x00, 0x76, 0x65, 0x6e, 0x64, 0x69, 0x64, 0x3d, 0x30, 0x78, 0x25, + 0x78, 0x00, 0x6c, 0x65, 0x67, 0x6f, 0x66, 0x64, 0x6d, 0x62, 0x77, 0x32, + 0x30, 0x32, 0x67, 0x70, 0x6f, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x00, + 0x6c, 0x65, 0x67, 0x6f, 0x66, 0x64, 0x6d, 0x62, 0x77, 0x32, 0x30, 0x75, + 0x6c, 0x32, 0x67, 0x70, 0x6f, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x70, 0x61, + 0x30, 0x6d, 0x61, 0x78, 0x70, 0x77, 0x72, 0x3d, 0x25, 0x64, 0x00, 0x70, + 0x61, 0x31, 0x68, 0x69, 0x62, 0x30, 0x3d, 0x25, 0x64, 0x00, 0x70, 0x61, + 0x31, 0x68, 0x69, 0x62, 0x31, 0x3d, 0x25, 0x64, 0x00, 0x70, 0x61, 0x31, + 0x68, 0x69, 0x62, 0x32, 0x3d, 0x25, 0x64, 0x00, 0x63, 0x75, 0x73, 0x74, + 0x6f, 0x6d, 0x76, 0x61, 0x72, 0x25, 0x64, 0x3d, 0x30, 0x78, 0x25, 0x78, + 0x00, 0x72, 0x65, 0x67, 0x72, 0x65, 0x76, 0x3d, 0x30, 0x78, 0x25, 0x78, + 0x00, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x3d, + 0x30, 0x78, 0x25, 0x78, 0x00, 0x62, 0x78, 0x61, 0x32, 0x67, 0x3d, 0x25, + 0x64, 0x00, 0x6f, 0x65, 0x6d, 0x3d, 0x25, 0x30, 0x32, 0x78, 0x25, 0x30, + 0x32, 0x78, 0x25, 0x30, 0x32, 0x78, 0x25, 0x30, 0x32, 0x78, 0x25, 0x30, + 0x32, 0x78, 0x25, 0x30, 0x32, 0x78, 0x25, 0x30, 0x32, 0x78, 0x25, 0x30, + 0x32, 0x78, 0x00, 0x64, 0x65, 0x76, 0x69, 0x64, 0x3d, 0x30, 0x78, 0x25, + 0x78, 0x00, 0x70, 0x61, 0x25, 0x64, 0x67, 0x77, 0x25, 0x64, 0x61, 0x25, + 0x64, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x72, 0x73, 0x73, 0x69, 0x73, + 0x6d, 0x66, 0x35, 0x67, 0x3d, 0x25, 0x64, 0x00, 0x6f, 0x66, 0x64, 0x6d, + 0x32, 0x67, 0x70, 0x6f, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x61, 0x61, + 0x35, 0x67, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x77, 0x70, 0x73, 0x67, + 0x70, 0x69, 0x6f, 0x3d, 0x25, 0x64, 0x00, 0x62, 0x78, 0x61, 0x35, 0x67, + 0x3d, 0x25, 0x64, 0x00, 0x74, 0x73, 0x73, 0x69, 0x70, 0x6f, 0x73, 0x35, + 0x67, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x61, 0x6e, 0x74, 0x73, 0x77, + 0x63, 0x74, 0x6c, 0x32, 0x67, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x72, + 0x73, 0x73, 0x69, 0x73, 0x61, 0x76, 0x35, 0x67, 0x3d, 0x25, 0x64, 0x00, + 0x6f, 0x66, 0x64, 0x6d, 0x70, 0x6f, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, + 0x74, 0x72, 0x69, 0x32, 0x67, 0x3d, 0x25, 0x64, 0x00, 0x73, 0x74, 0x62, + 0x63, 0x70, 0x6f, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x63, 0x63, 0x6f, + 0x64, 0x65, 0x3d, 0x30, 0x78, 0x30, 0x00, 0x6d, 0x61, 0x63, 0x61, 0x64, + 0x64, 0x72, 0x3d, 0x25, 0x73, 0x00, 0x63, 0x63, 0x6f, 0x64, 0x65, 0x3d, + 0x25, 0x63, 0x25, 0x63, 0x00, 0x63, 0x63, 0x3d, 0x25, 0x64, 0x00, 0x63, + 0x63, 0x6b, 0x32, 0x67, 0x70, 0x6f, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, + 0x63, 0x63, 0x74, 0x6c, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x72, 0x65, + 0x67, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x73, 0x7a, 0x3d, 0x25, 0x64, + 0x00, 0x65, 0x78, 0x74, 0x70, 0x61, 0x67, 0x61, 0x69, 0x6e, 0x32, 0x67, + 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x62, 0x6f, 0x61, 0x72, 0x64, 0x6e, + 0x75, 0x6d, 0x3d, 0x25, 0x64, 0x00, 0x74, 0x72, 0x69, 0x73, 0x6f, 0x35, + 0x67, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x63, 0x63, 0x6b, 0x62, 0x77, + 0x32, 0x30, 0x32, 0x67, 0x70, 0x6f, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, + 0x00, 0x00, 0x63, 0x63, 0x6b, 0x62, 0x77, 0x32, 0x30, 0x75, 0x6c, 0x32, + 0x67, 0x70, 0x6f, 0x3d, 0x30, 0x78, 0x25, 0x78, 0x00, 0x70, 0x64, 0x65, + 0x74, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x35, 0x67, 0x3d, 0x30, 0x78, 0x25, + 0x78, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, + 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, + 0xff, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x08, 0x00, 0xff, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0x04, 0x00, + 0x03, 0x00, 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x0a, 0x00, 0x00, 0x00, + 0x02, 0x00, 0x60, 0x00, 0xdc, 0x05, 0x00, 0x00, 0x08, 0x07, 0x17, 0x00, + 0x74, 0x78, 0x70, 0x77, 0x72, 0x62, 0x63, 0x6b, 0x6f, 0x66, 0x00, 0x32, + 0x67, 0x5f, 0x63, 0x67, 0x61, 0x00, 0x72, 0x73, 0x73, 0x69, 0x63, 0x6f, + 0x72, 0x72, 0x6e, 0x6f, 0x72, 0x6d, 0x00, 0x74, 0x73, 0x73, 0x69, 0x6c, + 0x69, 0x6d, 0x75, 0x63, 0x6f, 0x64, 0x00, 0x74, 0x65, 0x6d, 0x70, 0x73, + 0x5f, 0x68, 0x79, 0x73, 0x74, 0x65, 0x72, 0x65, 0x73, 0x69, 0x73, 0x00, + 0x72, 0x73, 0x73, 0x69, 0x63, 0x6f, 0x72, 0x72, 0x61, 0x74, 0x74, 0x65, + 0x6e, 0x00, 0x35, 0x67, 0x5f, 0x63, 0x67, 0x61, 0x00, 0x74, 0x65, 0x6d, + 0x70, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x00, 0x69, 0x6e, 0x74, 0x65, + 0x72, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x00, 0x6d, 0x63, 0x73, + 0x32, 0x67, 0x70, 0x6f, 0x31, 0x00, 0x6f, 0x70, 0x65, 0x6e, 0x6c, 0x70, + 0x67, 0x61, 0x69, 0x6e, 0x69, 0x64, 0x78, 0x62, 0x25, 0x64, 0x00, 0x74, + 0x73, 0x73, 0x69, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x6d, 0x69, 0x6e, + 0x35, 0x67, 0x6c, 0x00, 0x74, 0x73, 0x73, 0x69, 0x6f, 0x66, 0x66, 0x73, + 0x65, 0x74, 0x6d, 0x69, 0x6e, 0x35, 0x67, 0x6d, 0x00, 0x74, 0x65, 0x6d, + 0x70, 0x73, 0x65, 0x6e, 0x73, 0x65, 0x5f, 0x73, 0x6c, 0x6f, 0x70, 0x65, + 0x00, 0x6d, 0x65, 0x61, 0x73, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x00, 0x72, + 0x73, 0x73, 0x69, 0x73, 0x6d, 0x66, 0x32, 0x67, 0x00, 0x70, 0x6c, 0x6c, + 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x72, 0x5f, 0x6d, 0x6f, 0x64, 0x65, + 0x32, 0x67, 0x00, 0x70, 0x61, 0x72, 0x66, 0x70, 0x73, 0x00, 0x65, 0x64, + 0x6f, 0x6e, 0x74, 0x68, 0x64, 0x00, 0x72, 0x66, 0x72, 0x65, 0x67, 0x30, + 0x33, 0x33, 0x5f, 0x63, 0x63, 0x6b, 0x00, 0x6f, 0x70, 0x65, 0x6e, 0x6c, + 0x70, 0x67, 0x61, 0x69, 0x6e, 0x69, 0x64, 0x78, 0x61, 0x31, 0x34, 0x30, + 0x00, 0x65, 0x78, 0x74, 0x70, 0x61, 0x67, 0x61, 0x69, 0x6e, 0x35, 0x67, + 0x00, 0x65, 0x78, 0x74, 0x70, 0x61, 0x67, 0x61, 0x69, 0x6e, 0x32, 0x67, + 0x00, 0x6f, 0x70, 0x65, 0x6e, 0x6c, 0x70, 0x67, 0x61, 0x69, 0x6e, 0x69, + 0x64, 0x78, 0x61, 0x31, 0x34, 0x39, 0x00, 0x74, 0x78, 0x69, 0x71, 0x6c, + 0x6f, 0x70, 0x61, 0x67, 0x32, 0x67, 0x00, 0x6e, 0x6f, 0x69, 0x73, 0x65, + 0x5f, 0x63, 0x61, 0x6c, 0x5f, 0x72, 0x65, 0x66, 0x5f, 0x35, 0x67, 0x00, + 0x70, 0x6d, 0x61, 0x78, 0x00, 0x6f, 0x70, 0x65, 0x6e, 0x6c, 0x70, 0x67, + 0x61, 0x69, 0x6e, 0x69, 0x64, 0x78, 0x61, 0x31, 0x36, 0x35, 0x00, 0x70, + 0x61, 0x63, 0x61, 0x6c, 0x69, 0x64, 0x78, 0x35, 0x67, 0x68, 0x69, 0x31, + 0x00, 0x70, 0x61, 0x63, 0x61, 0x6c, 0x61, 0x74, 0x68, 0x32, 0x67, 0x31, + 0x00, 0x64, 0x61, 0x63, 0x67, 0x63, 0x32, 0x67, 0x00, 0x70, 0x6d, 0x69, + 0x6e, 0x00, 0x70, 0x61, 0x63, 0x61, 0x6c, 0x70, 0x75, 0x6c, 0x73, 0x65, + 0x77, 0x69, 0x64, 0x74, 0x68, 0x00, 0x76, 0x62, 0x61, 0x74, 0x5f, 0x6d, + 0x75, 0x6c, 0x74, 0x00, 0x6d, 0x63, 0x73, 0x32, 0x67, 0x70, 0x6f, 0x30, + 0x00, 0x74, 0x78, 0x67, 0x61, 0x69, 0x6e, 0x74, 0x62, 0x6c, 0x00, 0x6f, + 0x70, 0x65, 0x6e, 0x6c, 0x70, 0x74, 0x65, 0x6d, 0x70, 0x63, 0x6f, 0x72, + 0x72, 0x00, 0x74, 0x73, 0x73, 0x69, 0x6d, 0x61, 0x78, 0x6e, 0x70, 0x74, + 0x00, 0x6e, 0x6f, 0x69, 0x73, 0x65, 0x5f, 0x63, 0x61, 0x6c, 0x5f, 0x65, + 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x35, 0x67, 0x00, 0x74, 0x78, 0x69, + 0x71, 0x6c, 0x6f, 0x74, 0x66, 0x00, 0x6f, 0x70, 0x65, 0x6e, 0x6c, 0x70, + 0x70, 0x77, 0x72, 0x6c, 0x69, 0x6d, 0x00, 0x65, 0x64, 0x6f, 0x66, 0x66, + 0x74, 0x68, 0x64, 0x00, 0x6e, 0x6f, 0x69, 0x73, 0x65, 0x5f, 0x63, 0x61, + 0x6c, 0x5f, 0x64, 0x62, 0x67, 0x00, 0x6f, 0x70, 0x65, 0x6e, 0x6c, 0x70, + 0x67, 0x61, 0x69, 0x6e, 0x69, 0x64, 0x78, 0x61, 0x31, 0x35, 0x33, 0x00, + 0x70, 0x61, 0x63, 0x61, 0x6c, 0x69, 0x64, 0x78, 0x35, 0x67, 0x68, 0x69, + 0x00, 0x6f, 0x70, 0x65, 0x6e, 0x6c, 0x70, 0x67, 0x61, 0x69, 0x6e, 0x69, + 0x64, 0x78, 0x61, 0x31, 0x35, 0x37, 0x00, 0x6e, 0x6f, 0x69, 0x73, 0x65, + 0x5f, 0x63, 0x61, 0x6c, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x00, + 0x70, 0x61, 0x67, 0x63, 0x32, 0x67, 0x00, 0x73, 0x77, 0x63, 0x74, 0x72, + 0x6c, 0x6d, 0x61, 0x70, 0x5f, 0x32, 0x67, 0x00, 0x70, 0x61, 0x63, 0x61, + 0x6c, 0x61, 0x6c, 0x69, 0x6d, 0x00, 0x69, 0x71, 0x6c, 0x6f, 0x63, 0x61, + 0x6c, 0x70, 0x77, 0x72, 0x32, 0x67, 0x00, 0x70, 0x61, 0x63, 0x61, 0x6c, + 0x70, 0x77, 0x72, 0x32, 0x67, 0x31, 0x00, 0x74, 0x78, 0x67, 0x61, 0x69, + 0x6e, 0x74, 0x62, 0x6c, 0x35, 0x67, 0x00, 0x70, 0x61, 0x63, 0x61, 0x6c, + 0x61, 0x74, 0x68, 0x35, 0x67, 0x68, 0x69, 0x00, 0x70, 0x61, 0x63, 0x61, + 0x6c, 0x61, 0x74, 0x68, 0x35, 0x67, 0x68, 0x69, 0x31, 0x00, 0x76, 0x62, + 0x61, 0x74, 0x73, 0x6d, 0x63, 0x00, 0x61, 0x64, 0x63, 0x72, 0x66, 0x73, + 0x65, 0x71, 0x32, 0x67, 0x00, 0x76, 0x62, 0x61, 0x74, 0x73, 0x6d, 0x66, + 0x00, 0x72, 0x78, 0x67, 0x61, 0x69, 0x6e, 0x62, 0x61, 0x63, 0x6b, 0x6f, + 0x66, 0x66, 0x76, 0x61, 0x6c, 0x00, 0x72, 0x78, 0x67, 0x61, 0x69, 0x6e, + 0x74, 0x65, 0x6d, 0x70, 0x63, 0x6f, 0x72, 0x72, 0x35, 0x67, 0x68, 0x00, + 0x6e, 0x6f, 0x69, 0x73, 0x65, 0x5f, 0x63, 0x61, 0x6c, 0x5f, 0x72, 0x65, + 0x66, 0x5f, 0x32, 0x67, 0x00, 0x76, 0x62, 0x61, 0x74, 0x5f, 0x71, 0x00, + 0x6e, 0x6f, 0x69, 0x73, 0x65, 0x5f, 0x63, 0x61, 0x6c, 0x5f, 0x70, 0x6f, + 0x5f, 0x62, 0x69, 0x61, 0x73, 0x5f, 0x32, 0x67, 0x00, 0x72, 0x66, 0x72, + 0x65, 0x67, 0x30, 0x38, 0x38, 0x00, 0x6f, 0x70, 0x65, 0x6e, 0x6c, 0x70, + 0x67, 0x61, 0x69, 0x6e, 0x69, 0x64, 0x78, 0x61, 0x31, 0x36, 0x31, 0x00, + 0x70, 0x61, 0x63, 0x61, 0x6c, 0x70, 0x77, 0x72, 0x32, 0x67, 0x00, 0x64, + 0x79, 0x6e, 0x70, 0x77, 0x72, 0x6c, 0x69, 0x6d, 0x65, 0x6e, 0x00, 0x74, + 0x65, 0x6d, 0x70, 0x73, 0x61, 0x76, 0x00, 0x74, 0x65, 0x6d, 0x70, 0x63, + 0x6f, 0x72, 0x72, 0x78, 0x00, 0x64, 0x61, 0x63, 0x72, 0x61, 0x74, 0x65, + 0x32, 0x67, 0x00, 0x70, 0x61, 0x30, 0x62, 0x32, 0x5f, 0x6c, 0x6f, 0x00, + 0x74, 0x78, 0x69, 0x71, 0x6c, 0x6f, 0x70, 0x61, 0x70, 0x75, 0x32, 0x67, + 0x00, 0x74, 0x65, 0x6d, 0x70, 0x73, 0x65, 0x6e, 0x73, 0x65, 0x5f, 0x6f, + 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x00, 0x70, 0x61, 0x63, 0x61, 0x6c, 0x61, + 0x74, 0x68, 0x35, 0x67, 0x31, 0x00, 0x70, 0x61, 0x63, 0x61, 0x6c, 0x61, + 0x74, 0x68, 0x35, 0x67, 0x6c, 0x6f, 0x31, 0x00, 0x70, 0x61, 0x63, 0x61, + 0x6c, 0x69, 0x64, 0x78, 0x32, 0x67, 0x31, 0x00, 0x74, 0x78, 0x61, 0x6c, + 0x70, 0x66, 0x62, 0x79, 0x70, 0x32, 0x67, 0x00, 0x70, 0x61, 0x63, 0x61, + 0x6c, 0x69, 0x64, 0x78, 0x32, 0x67, 0x00, 0x75, 0x6e, 0x6d, 0x6f, 0x64, + 0x5f, 0x72, 0x73, 0x73, 0x69, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, + 0x00, 0x6f, 0x70, 0x65, 0x6e, 0x6c, 0x70, 0x76, 0x6f, 0x6c, 0x74, 0x63, + 0x6f, 0x72, 0x72, 0x00, 0x70, 0x61, 0x63, 0x61, 0x6c, 0x69, 0x64, 0x78, + 0x35, 0x67, 0x31, 0x00, 0x72, 0x78, 0x67, 0x61, 0x69, 0x6e, 0x74, 0x62, + 0x6c, 0x31, 0x30, 0x30, 0x00, 0x6e, 0x6f, 0x69, 0x73, 0x65, 0x5f, 0x63, + 0x61, 0x6c, 0x5f, 0x6e, 0x66, 0x5f, 0x73, 0x75, 0x62, 0x73, 0x74, 0x72, + 0x61, 0x63, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x00, 0x74, 0x73, 0x73, 0x69, + 0x74, 0x78, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x00, 0x63, 0x63, 0x6b, 0x32, + 0x67, 0x70, 0x6f, 0x00, 0x63, 0x63, 0x6b, 0x50, 0x77, 0x72, 0x49, 0x64, + 0x78, 0x43, 0x6f, 0x72, 0x72, 0x00, 0x63, 0x63, 0x6b, 0x64, 0x69, 0x67, + 0x66, 0x69, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x65, 0x00, 0x6c, 0x6f, 0x63, + 0x63, 0x6d, 0x6f, 0x64, 0x65, 0x31, 0x00, 0x6c, 0x6f, 0x69, 0x64, 0x61, + 0x63, 0x6d, 0x6f, 0x64, 0x65, 0x35, 0x67, 0x00, 0x70, 0x61, 0x63, 0x61, + 0x6c, 0x61, 0x74, 0x68, 0x35, 0x67, 0x00, 0x72, 0x73, 0x73, 0x69, 0x73, + 0x61, 0x76, 0x32, 0x67, 0x00, 0x70, 0x61, 0x30, 0x62, 0x31, 0x5f, 0x6c, + 0x6f, 0x00, 0x6d, 0x61, 0x78, 0x70, 0x32, 0x67, 0x61, 0x30, 0x00, 0x72, + 0x78, 0x67, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6d, 0x70, 0x63, 0x6f, 0x72, + 0x72, 0x35, 0x67, 0x6d, 0x00, 0x70, 0x61, 0x63, 0x61, 0x6c, 0x61, 0x74, + 0x68, 0x32, 0x67, 0x00, 0x70, 0x6c, 0x6c, 0x64, 0x6f, 0x75, 0x62, 0x6c, + 0x65, 0x72, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x32, 0x67, 0x00, + 0x70, 0x61, 0x30, 0x62, 0x30, 0x00, 0x70, 0x61, 0x30, 0x62, 0x31, 0x00, + 0x70, 0x61, 0x30, 0x62, 0x32, 0x00, 0x6f, 0x70, 0x65, 0x6e, 0x6c, 0x70, + 0x67, 0x61, 0x69, 0x6e, 0x69, 0x64, 0x78, 0x61, 0x33, 0x36, 0x00, 0x70, + 0x61, 0x63, 0x61, 0x6c, 0x66, 0x63, 0x64, 0x31, 0x00, 0x6e, 0x6f, 0x69, + 0x73, 0x65, 0x5f, 0x63, 0x61, 0x6c, 0x5f, 0x61, 0x64, 0x6a, 0x5f, 0x35, + 0x67, 0x00, 0x69, 0x71, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x64, 0x78, + 0x32, 0x67, 0x6f, 0x66, 0x66, 0x73, 0x00, 0x69, 0x71, 0x6c, 0x6f, 0x73, + 0x74, 0x31, 0x6f, 0x66, 0x66, 0x32, 0x67, 0x00, 0x6f, 0x70, 0x65, 0x6e, + 0x6c, 0x70, 0x67, 0x61, 0x69, 0x6e, 0x69, 0x64, 0x78, 0x61, 0x31, 0x30, + 0x30, 0x00, 0x72, 0x61, 0x77, 0x74, 0x65, 0x6d, 0x70, 0x73, 0x65, 0x6e, + 0x73, 0x65, 0x00, 0x6f, 0x70, 0x65, 0x6e, 0x6c, 0x70, 0x67, 0x61, 0x69, + 0x6e, 0x69, 0x64, 0x78, 0x61, 0x31, 0x30, 0x34, 0x00, 0x69, 0x71, 0x6c, + 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x64, 0x78, 0x32, 0x67, 0x00, 0x6f, 0x70, + 0x65, 0x6e, 0x6c, 0x70, 0x70, 0x77, 0x72, 0x63, 0x74, 0x72, 0x6c, 0x00, + 0x6f, 0x70, 0x65, 0x6e, 0x6c, 0x70, 0x67, 0x61, 0x69, 0x6e, 0x69, 0x64, + 0x78, 0x61, 0x31, 0x30, 0x38, 0x00, 0x72, 0x66, 0x72, 0x65, 0x67, 0x30, + 0x33, 0x33, 0x00, 0x74, 0x78, 0x5f, 0x74, 0x6f, 0x6e, 0x65, 0x5f, 0x70, + 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x00, 0x6f, + 0x70, 0x65, 0x6e, 0x6c, 0x70, 0x72, 0x65, 0x66, 0x70, 0x77, 0x72, 0x00, + 0x70, 0x61, 0x30, 0x62, 0x30, 0x5f, 0x6c, 0x6f, 0x00, 0x6e, 0x6f, 0x69, + 0x73, 0x65, 0x5f, 0x63, 0x61, 0x6c, 0x5f, 0x70, 0x6f, 0x5f, 0x32, 0x67, + 0x00, 0x72, 0x78, 0x67, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6d, 0x70, 0x63, + 0x6f, 0x72, 0x72, 0x35, 0x67, 0x6c, 0x00, 0x70, 0x61, 0x63, 0x61, 0x6c, + 0x69, 0x64, 0x78, 0x35, 0x67, 0x31, 0x74, 0x68, 0x00, 0x70, 0x61, 0x67, + 0x63, 0x35, 0x67, 0x00, 0x70, 0x61, 0x63, 0x61, 0x6c, 0x69, 0x64, 0x78, + 0x35, 0x67, 0x6c, 0x6f, 0x31, 0x74, 0x68, 0x00, 0x73, 0x77, 0x63, 0x74, + 0x72, 0x6c, 0x6d, 0x61, 0x70, 0x5f, 0x35, 0x67, 0x00, 0x74, 0x73, 0x73, + 0x69, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x6d, 0x69, 0x6e, 0x00, 0x73, + 0x70, 0x75, 0x72, 0x61, 0x76, 0x6f, 0x69, 0x64, 0x5f, 0x65, 0x6e, 0x61, + 0x62, 0x6c, 0x65, 0x32, 0x67, 0x00, 0x6e, 0x6f, 0x69, 0x73, 0x65, 0x5f, + 0x63, 0x61, 0x6c, 0x5f, 0x70, 0x6f, 0x5f, 0x62, 0x69, 0x61, 0x73, 0x5f, + 0x35, 0x67, 0x00, 0x6f, 0x70, 0x65, 0x6e, 0x6c, 0x70, 0x67, 0x61, 0x69, + 0x6e, 0x69, 0x64, 0x78, 0x61, 0x34, 0x30, 0x00, 0x6c, 0x6f, 0x67, 0x65, + 0x6e, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x00, 0x6f, 0x70, 0x65, 0x6e, 0x6c, + 0x70, 0x67, 0x61, 0x69, 0x6e, 0x69, 0x64, 0x78, 0x61, 0x34, 0x34, 0x00, + 0x6e, 0x6f, 0x69, 0x73, 0x65, 0x5f, 0x63, 0x61, 0x6c, 0x5f, 0x68, 0x69, + 0x67, 0x68, 0x5f, 0x67, 0x61, 0x69, 0x6e, 0x00, 0x72, 0x66, 0x72, 0x65, + 0x67, 0x30, 0x33, 0x38, 0x00, 0x6e, 0x6f, 0x69, 0x73, 0x65, 0x5f, 0x63, + 0x61, 0x6c, 0x5f, 0x61, 0x64, 0x6a, 0x5f, 0x32, 0x67, 0x00, 0x70, 0x61, + 0x63, 0x61, 0x6c, 0x69, 0x64, 0x78, 0x35, 0x67, 0x6c, 0x6f, 0x31, 0x00, + 0x6d, 0x65, 0x61, 0x73, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x31, 0x00, 0x6d, + 0x65, 0x61, 0x73, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x32, 0x00, 0x6f, 0x70, + 0x65, 0x6e, 0x6c, 0x70, 0x67, 0x61, 0x69, 0x6e, 0x69, 0x64, 0x78, 0x61, + 0x31, 0x31, 0x36, 0x00, 0x62, 0x70, 0x68, 0x79, 0x73, 0x63, 0x61, 0x6c, + 0x65, 0x00, 0x72, 0x73, 0x73, 0x69, 0x73, 0x6d, 0x63, 0x32, 0x67, 0x00, + 0x72, 0x78, 0x67, 0x61, 0x69, 0x6e, 0x74, 0x65, 0x6d, 0x70, 0x63, 0x6f, + 0x72, 0x72, 0x32, 0x67, 0x00, 0x6f, 0x66, 0x64, 0x6d, 0x61, 0x6e, 0x61, + 0x6c, 0x6f, 0x67, 0x66, 0x69, 0x6c, 0x74, 0x62, 0x77, 0x32, 0x67, 0x00, + 0x61, 0x61, 0x32, 0x67, 0x00, 0x74, 0x65, 0x6d, 0x70, 0x5f, 0x6d, 0x75, + 0x6c, 0x74, 0x00, 0x6f, 0x66, 0x64, 0x6d, 0x32, 0x67, 0x70, 0x6f, 0x00, + 0x76, 0x62, 0x61, 0x74, 0x73, 0x61, 0x76, 0x00, 0x70, 0x61, 0x63, 0x61, + 0x6c, 0x61, 0x74, 0x68, 0x35, 0x67, 0x6c, 0x6f, 0x00, 0x70, 0x61, 0x63, + 0x61, 0x6c, 0x69, 0x64, 0x78, 0x32, 0x67, 0x31, 0x74, 0x68, 0x00, 0x63, + 0x63, 0x6b, 0x50, 0x77, 0x72, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x00, + 0x74, 0x78, 0x70, 0x77, 0x72, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x00, 0x69, + 0x71, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x69, 0x64, 0x78, 0x35, 0x67, 0x6f, + 0x66, 0x66, 0x73, 0x00, 0x70, 0x61, 0x63, 0x61, 0x6c, 0x69, 0x64, 0x78, + 0x35, 0x67, 0x6c, 0x6f, 0x00, 0x67, 0x6d, 0x67, 0x63, 0x32, 0x67, 0x00, + 0x70, 0x61, 0x63, 0x61, 0x6c, 0x69, 0x64, 0x78, 0x35, 0x67, 0x68, 0x69, + 0x31, 0x74, 0x68, 0x00, 0x72, 0x78, 0x70, 0x6f, 0x32, 0x67, 0x00, 0x6e, + 0x6f, 0x69, 0x73, 0x65, 0x5f, 0x63, 0x61, 0x6c, 0x5f, 0x65, 0x6e, 0x61, + 0x62, 0x6c, 0x65, 0x5f, 0x32, 0x67, 0x00, 0x6f, 0x70, 0x65, 0x6e, 0x6c, + 0x70, 0x67, 0x61, 0x69, 0x6e, 0x69, 0x64, 0x78, 0x61, 0x35, 0x32, 0x00, + 0x6f, 0x70, 0x65, 0x6e, 0x6c, 0x70, 0x67, 0x61, 0x69, 0x6e, 0x69, 0x64, + 0x78, 0x61, 0x35, 0x36, 0x00, 0x6f, 0x70, 0x65, 0x6e, 0x6c, 0x70, 0x67, + 0x61, 0x69, 0x6e, 0x69, 0x64, 0x78, 0x61, 0x31, 0x31, 0x32, 0x00, 0x74, + 0x72, 0x69, 0x73, 0x6f, 0x32, 0x67, 0x00, 0x76, 0x62, 0x61, 0x74, 0x5f, + 0x61, 0x64, 0x64, 0x00, 0x6f, 0x70, 0x65, 0x6e, 0x6c, 0x70, 0x67, 0x61, + 0x69, 0x6e, 0x69, 0x64, 0x78, 0x61, 0x31, 0x32, 0x30, 0x00, 0x6f, 0x70, + 0x65, 0x6e, 0x6c, 0x70, 0x67, 0x61, 0x69, 0x6e, 0x69, 0x64, 0x78, 0x61, + 0x31, 0x32, 0x34, 0x00, 0x6f, 0x70, 0x65, 0x6e, 0x6c, 0x70, 0x67, 0x61, + 0x69, 0x6e, 0x69, 0x64, 0x78, 0x61, 0x31, 0x32, 0x38, 0x00, 0x74, 0x72, + 0x69, 0x64, 0x78, 0x32, 0x67, 0x00, 0x6f, 0x66, 0x64, 0x6d, 0x64, 0x69, + 0x67, 0x66, 0x69, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x65, 0x32, 0x67, 0x00, + 0x6f, 0x70, 0x65, 0x6e, 0x6c, 0x70, 0x67, 0x61, 0x69, 0x6e, 0x69, 0x64, + 0x78, 0x61, 0x34, 0x38, 0x00, 0x74, 0x65, 0x6d, 0x70, 0x5f, 0x61, 0x64, + 0x64, 0x00, 0x72, 0x78, 0x67, 0x61, 0x69, 0x6e, 0x74, 0x62, 0x6c, 0x77, + 0x6c, 0x62, 0x67, 0x61, 0x00, 0x69, 0x6e, 0x69, 0x74, 0x78, 0x69, 0x64, + 0x78, 0x32, 0x67, 0x00, 0x68, 0x77, 0x5f, 0x69, 0x71, 0x63, 0x61, 0x6c, + 0x5f, 0x65, 0x6e, 0x00, 0x69, 0x71, 0x63, 0x61, 0x6c, 0x5f, 0x73, 0x77, + 0x70, 0x5f, 0x64, 0x69, 0x73, 0x00, 0x6d, 0x75, 0x78, 0x5f, 0x67, 0x61, + 0x69, 0x6e, 0x5f, 0x74, 0x61, 0x62, 0x6c, 0x65, 0x00, 0x74, 0x73, 0x73, + 0x69, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x6d, 0x61, 0x78, 0x35, 0x67, + 0x68, 0x00, 0x74, 0x65, 0x6d, 0x70, 0x5f, 0x71, 0x00, 0x74, 0x73, 0x73, + 0x69, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x6d, 0x61, 0x78, 0x35, 0x67, + 0x6c, 0x00, 0x74, 0x73, 0x73, 0x69, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, + 0x6d, 0x61, 0x78, 0x35, 0x67, 0x6d, 0x00, 0x74, 0x65, 0x6d, 0x70, 0x73, + 0x6d, 0x63, 0x00, 0x74, 0x65, 0x6d, 0x70, 0x73, 0x6d, 0x66, 0x00, 0x74, + 0x73, 0x73, 0x69, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x6d, 0x61, 0x78, + 0x00, 0x70, 0x61, 0x63, 0x61, 0x6c, 0x69, 0x64, 0x78, 0x35, 0x67, 0x00, + 0x6f, 0x70, 0x65, 0x6e, 0x6c, 0x70, 0x67, 0x61, 0x69, 0x6e, 0x69, 0x64, + 0x78, 0x61, 0x36, 0x30, 0x00, 0x74, 0x78, 0x61, 0x6c, 0x70, 0x66, 0x62, + 0x79, 0x70, 0x32, 0x67, 0x5f, 0x63, 0x63, 0x6b, 0x00, 0x6f, 0x70, 0x65, + 0x6e, 0x6c, 0x70, 0x67, 0x61, 0x69, 0x6e, 0x69, 0x64, 0x78, 0x61, 0x36, + 0x34, 0x00, 0x66, 0x72, 0x65, 0x71, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, + 0x5f, 0x63, 0x6f, 0x72, 0x72, 0x00, 0x6f, 0x66, 0x64, 0x6d, 0x64, 0x69, + 0x67, 0x66, 0x69, 0x6c, 0x74, 0x74, 0x79, 0x70, 0x65, 0x35, 0x67, 0x00, + 0x6f, 0x70, 0x65, 0x6e, 0x6c, 0x70, 0x67, 0x61, 0x69, 0x6e, 0x69, 0x64, + 0x78, 0x61, 0x31, 0x33, 0x32, 0x00, 0x6f, 0x70, 0x65, 0x6e, 0x6c, 0x70, + 0x67, 0x61, 0x69, 0x6e, 0x69, 0x64, 0x78, 0x61, 0x31, 0x33, 0x36, 0x00, + 0x6f, 0x66, 0x64, 0x6d, 0x64, 0x69, 0x67, 0x66, 0x69, 0x6c, 0x74, 0x74, + 0x79, 0x70, 0x65, 0x00, 0x78, 0x74, 0x61, 0x6c, 0x6d, 0x6f, 0x64, 0x65, + 0x00, 0x74, 0x73, 0x73, 0x69, 0x74, 0x69, 0x6d, 0x65, 0x00, 0x6e, 0x6f, + 0x69, 0x73, 0x65, 0x5f, 0x63, 0x61, 0x6c, 0x5f, 0x70, 0x6f, 0x5f, 0x35, + 0x67, 0x00, 0x74, 0x73, 0x73, 0x69, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, + 0x6d, 0x69, 0x6e, 0x35, 0x67, 0x68, 0x00, 0x09, 0x0c, 0x12, 0x18, 0x18, + 0x18, 0x09, 0x0c, 0x12, 0x18, 0x18, 0x18, 0x00, 0x00, 0x0c, 0x07, 0x6f, + 0x7a, 0x06, 0x0c, 0x0f, 0x7b, 0x7e, 0x01, 0x05, 0x08, 0x0b, 0x0e, 0x11, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x06, 0x09, + 0x0c, 0x0f, 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x03, 0x06, 0x09, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xf8, 0xa6, 0x02, 0x00, 0x60, 0x00, 0x00, 0x00, + 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, + 0x2e, 0xa9, 0x02, 0x00, 0x26, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0xc0, 0xa9, 0x02, 0x00, + 0x98, 0x00, 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x20, 0x00, 0x00, 0x00, 0x6b, 0x9f, 0x02, 0x00, 0x44, 0x00, 0x00, 0x00, + 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, + 0x80, 0xae, 0x02, 0x00, 0x10, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x07, 0x00, 0x1f, 0x00, + 0x48, 0x07, 0x00, 0x1f, 0x00, 0x46, 0x07, 0x00, 0x1f, 0x00, 0x44, 0x07, + 0x00, 0x1e, 0x00, 0x43, 0x07, 0x00, 0x1d, 0x00, 0x44, 0x07, 0x00, 0x1c, + 0x00, 0x44, 0x07, 0x00, 0x1b, 0x00, 0x45, 0x07, 0x00, 0x1a, 0x00, 0x46, + 0x07, 0x00, 0x19, 0x00, 0x46, 0x07, 0x00, 0x18, 0x00, 0x47, 0x07, 0x00, + 0x17, 0x00, 0x48, 0x07, 0x00, 0x17, 0x00, 0x46, 0x07, 0x00, 0x16, 0x00, + 0x47, 0x07, 0x00, 0x15, 0x00, 0x48, 0x07, 0x00, 0x15, 0x00, 0x46, 0x07, + 0x00, 0x15, 0x00, 0x44, 0x07, 0x00, 0x15, 0x00, 0x42, 0x07, 0x00, 0x15, + 0x00, 0x40, 0x07, 0x00, 0x15, 0x00, 0x3f, 0x07, 0x00, 0x14, 0x00, 0x40, + 0x07, 0x00, 0x13, 0x00, 0x41, 0x07, 0x00, 0x13, 0x00, 0x40, 0x07, 0x00, + 0x12, 0x00, 0x41, 0x07, 0x00, 0x12, 0x00, 0x40, 0x07, 0x00, 0x11, 0x00, + 0x41, 0x07, 0x00, 0x11, 0x00, 0x40, 0x07, 0x00, 0x10, 0x00, 0x41, 0x07, + 0x00, 0x10, 0x00, 0x40, 0x07, 0x00, 0x10, 0x00, 0x3e, 0x07, 0x00, 0x10, + 0x00, 0x3c, 0x07, 0x00, 0x10, 0x00, 0x3a, 0x07, 0x00, 0x0f, 0x00, 0x3d, + 0x07, 0x00, 0x0f, 0x00, 0x3b, 0x07, 0x00, 0x0e, 0x00, 0x3d, 0x07, 0x00, + 0x0e, 0x00, 0x3c, 0x07, 0x00, 0x0e, 0x00, 0x3a, 0x07, 0x00, 0x0d, 0x00, + 0x3c, 0x07, 0x00, 0x0d, 0x00, 0x3b, 0x07, 0x00, 0x0c, 0x00, 0x3e, 0x07, + 0x00, 0x0c, 0x00, 0x3c, 0x07, 0x00, 0x0c, 0x00, 0x3a, 0x07, 0x00, 0x0b, + 0x00, 0x3e, 0x07, 0x00, 0x0b, 0x00, 0x3c, 0x07, 0x00, 0x0b, 0x00, 0x3b, + 0x07, 0x00, 0x0b, 0x00, 0x39, 0x07, 0x00, 0x0a, 0x00, 0x3d, 0x07, 0x00, + 0x0a, 0x00, 0x3b, 0x07, 0x00, 0x0a, 0x00, 0x39, 0x07, 0x00, 0x09, 0x00, + 0x3e, 0x07, 0x00, 0x09, 0x00, 0x3c, 0x07, 0x00, 0x09, 0x00, 0x3a, 0x07, + 0x00, 0x09, 0x00, 0x39, 0x07, 0x00, 0x08, 0x00, 0x3e, 0x07, 0x00, 0x08, + 0x00, 0x3c, 0x07, 0x00, 0x08, 0x00, 0x3a, 0x07, 0x00, 0x08, 0x00, 0x39, + 0x07, 0x00, 0x08, 0x00, 0x37, 0x07, 0x00, 0x07, 0x00, 0x3d, 0x07, 0x00, + 0x07, 0x00, 0x3c, 0x07, 0x00, 0x07, 0x00, 0x3a, 0x07, 0x00, 0x07, 0x00, + 0x38, 0x07, 0x00, 0x07, 0x00, 0x37, 0x07, 0x00, 0x06, 0x00, 0x3e, 0x07, + 0x00, 0x06, 0x00, 0x3c, 0x07, 0x00, 0x06, 0x00, 0x3a, 0x07, 0x00, 0x06, + 0x00, 0x39, 0x07, 0x00, 0x06, 0x00, 0x37, 0x07, 0x00, 0x06, 0x00, 0x36, + 0x07, 0x00, 0x06, 0x00, 0x34, 0x07, 0x00, 0x05, 0x00, 0x3d, 0x07, 0x00, + 0x05, 0x00, 0x3b, 0x07, 0x00, 0x05, 0x00, 0x39, 0x07, 0x00, 0x05, 0x00, + 0x38, 0x07, 0x00, 0x05, 0x00, 0x36, 0x07, 0x00, 0x05, 0x00, 0x35, 0x07, + 0x00, 0x05, 0x00, 0x33, 0x07, 0x00, 0x04, 0x00, 0x3e, 0x07, 0x00, 0x04, + 0x00, 0x3c, 0x07, 0x00, 0x04, 0x00, 0x3a, 0x07, 0x00, 0x04, 0x00, 0x39, + 0x07, 0x00, 0x04, 0x00, 0x37, 0x07, 0x00, 0x04, 0x00, 0x36, 0x07, 0x00, + 0x04, 0x00, 0x34, 0x07, 0x00, 0x04, 0x00, 0x33, 0x07, 0x00, 0x04, 0x00, + 0x31, 0x07, 0x00, 0x04, 0x00, 0x30, 0x07, 0x00, 0x04, 0x00, 0x2e, 0x07, + 0x00, 0x03, 0x00, 0x3c, 0x07, 0x00, 0x03, 0x00, 0x3a, 0x07, 0x00, 0x03, + 0x00, 0x39, 0x07, 0x00, 0x03, 0x00, 0x37, 0x07, 0x00, 0x03, 0x00, 0x36, + 0x07, 0x00, 0x03, 0x00, 0x34, 0x07, 0x00, 0x03, 0x00, 0x33, 0x07, 0x00, + 0x03, 0x00, 0x31, 0x07, 0x00, 0x03, 0x00, 0x30, 0x07, 0x00, 0x03, 0x00, + 0x2e, 0x07, 0x00, 0x03, 0x00, 0x2d, 0x07, 0x00, 0x03, 0x00, 0x2c, 0x07, + 0x00, 0x03, 0x00, 0x2b, 0x07, 0x00, 0x03, 0x00, 0x29, 0x07, 0x00, 0x02, + 0x00, 0x3d, 0x07, 0x00, 0x02, 0x00, 0x3b, 0x07, 0x00, 0x02, 0x00, 0x39, + 0x07, 0x00, 0x02, 0x00, 0x38, 0x07, 0x00, 0x02, 0x00, 0x36, 0x07, 0x00, + 0x02, 0x00, 0x35, 0x07, 0x00, 0x02, 0x00, 0x33, 0x07, 0x00, 0x02, 0x00, + 0x32, 0x07, 0x00, 0x02, 0x00, 0x30, 0x07, 0x00, 0x02, 0x00, 0x2f, 0x07, + 0x00, 0x02, 0x00, 0x2e, 0x07, 0x00, 0x02, 0x00, 0x2c, 0x07, 0x00, 0x02, + 0x00, 0x2b, 0x07, 0x00, 0x02, 0x00, 0x2a, 0x07, 0x00, 0x02, 0x00, 0x29, + 0x07, 0x00, 0x02, 0x00, 0x27, 0x07, 0x00, 0x02, 0x00, 0x26, 0x07, 0x00, + 0x02, 0x00, 0x25, 0x07, 0x00, 0x02, 0x00, 0x24, 0x07, 0x00, 0x02, 0x00, + 0x23, 0x07, 0x00, 0x02, 0x00, 0x22, 0x07, 0x00, 0x02, 0x00, 0x21, 0x07, + 0x00, 0x02, 0x00, 0x20, 0x07, 0x00, 0x01, 0x00, 0x3f, 0x07, 0x00, 0x01, + 0x00, 0x3d, 0x07, 0x00, 0x01, 0x00, 0x3b, 0x07, 0x00, 0x01, 0x00, 0x39, + 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, + 0xc0, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, + 0x02, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x0a, 0x00, 0x00, 0x00, + 0x4a, 0x00, 0x00, 0x00, 0x8a, 0x00, 0x00, 0x00, 0xca, 0x00, 0x00, 0x00, + 0x0a, 0x01, 0x00, 0x00, 0x4a, 0x01, 0x00, 0x00, 0x8a, 0x01, 0x00, 0x00, + 0x8a, 0x05, 0x00, 0x00, 0x8a, 0x09, 0x00, 0x00, 0x8a, 0x0d, 0x00, 0x00, + 0x8a, 0x11, 0x00, 0x00, 0x8a, 0x51, 0x00, 0x00, 0x8a, 0x91, 0x00, 0x00, + 0x8a, 0xd1, 0x00, 0x00, 0x8a, 0x11, 0x01, 0x00, 0x8a, 0x51, 0x01, 0x00, + 0x8a, 0x91, 0x01, 0x00, 0x89, 0x00, 0x00, 0x00, 0x8a, 0xd1, 0x01, 0x00, + 0x8a, 0x11, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x94, 0xa2, 0x02, 0x00, 0x60, 0x00, 0x00, 0x00, 0x12, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0xe2, 0xa8, 0x02, 0x00, + 0x26, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x10, 0x00, 0x00, 0x00, 0x20, 0xac, 0x02, 0x00, 0x98, 0x00, 0x00, 0x00, + 0x0d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, + 0x7a, 0xa9, 0x02, 0x00, 0x44, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x80, 0xae, 0x02, 0x00, + 0x10, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x08, 0x00, 0x00, 0x00, 0x03, 0x00, 0x13, 0x00, 0x41, 0x03, 0x00, 0x13, + 0x00, 0x40, 0x03, 0x00, 0x12, 0x00, 0x41, 0x03, 0x00, 0x12, 0x00, 0x40, + 0x03, 0x00, 0x11, 0x00, 0x41, 0x03, 0x00, 0x11, 0x00, 0x40, 0x03, 0x00, + 0x10, 0x00, 0x41, 0x03, 0x00, 0x10, 0x00, 0x40, 0x03, 0x00, 0x10, 0x00, + 0x3e, 0x03, 0x00, 0x10, 0x00, 0x3c, 0x03, 0x00, 0x10, 0x00, 0x3a, 0x03, + 0x00, 0x0f, 0x00, 0x3d, 0x03, 0x00, 0x0f, 0x00, 0x3b, 0x03, 0x00, 0x0e, + 0x00, 0x3d, 0x03, 0x00, 0x0e, 0x00, 0x3c, 0x03, 0x00, 0x0e, 0x00, 0x3a, + 0x03, 0x00, 0x0d, 0x00, 0x3c, 0x03, 0x00, 0x0d, 0x00, 0x3b, 0x03, 0x00, + 0x0c, 0x00, 0x3e, 0x03, 0x00, 0x0c, 0x00, 0x3c, 0x03, 0x00, 0x0c, 0x00, + 0x3a, 0x03, 0x00, 0x0b, 0x00, 0x3e, 0x03, 0x00, 0x0b, 0x00, 0x3c, 0x03, + 0x00, 0x0b, 0x00, 0x3b, 0x03, 0x00, 0x0b, 0x00, 0x39, 0x03, 0x00, 0x0a, + 0x00, 0x3d, 0x03, 0x00, 0x0a, 0x00, 0x3b, 0x03, 0x00, 0x0a, 0x00, 0x39, + 0x03, 0x00, 0x09, 0x00, 0x3e, 0x03, 0x00, 0x09, 0x00, 0x3c, 0x03, 0x00, + 0x09, 0x00, 0x3a, 0x03, 0x00, 0x09, 0x00, 0x39, 0x03, 0x00, 0x08, 0x00, + 0x3e, 0x03, 0x00, 0x08, 0x00, 0x3c, 0x03, 0x00, 0x08, 0x00, 0x3a, 0x03, + 0x00, 0x08, 0x00, 0x39, 0x03, 0x00, 0x08, 0x00, 0x37, 0x03, 0x00, 0x07, + 0x00, 0x3d, 0x03, 0x00, 0x07, 0x00, 0x3c, 0x03, 0x00, 0x07, 0x00, 0x3a, + 0x03, 0x00, 0x07, 0x00, 0x38, 0x03, 0x00, 0x07, 0x00, 0x37, 0x03, 0x00, + 0x06, 0x00, 0x3e, 0x03, 0x00, 0x06, 0x00, 0x3c, 0x03, 0x00, 0x06, 0x00, + 0x3a, 0x03, 0x00, 0x06, 0x00, 0x39, 0x03, 0x00, 0x06, 0x00, 0x37, 0x03, + 0x00, 0x06, 0x00, 0x36, 0x03, 0x00, 0x06, 0x00, 0x34, 0x03, 0x00, 0x05, + 0x00, 0x3d, 0x03, 0x00, 0x05, 0x00, 0x3b, 0x03, 0x00, 0x05, 0x00, 0x39, + 0x03, 0x00, 0x05, 0x00, 0x38, 0x03, 0x00, 0x05, 0x00, 0x36, 0x03, 0x00, + 0x05, 0x00, 0x35, 0x03, 0x00, 0x05, 0x00, 0x33, 0x03, 0x00, 0x04, 0x00, + 0x3e, 0x03, 0x00, 0x04, 0x00, 0x3c, 0x03, 0x00, 0x04, 0x00, 0x3a, 0x03, + 0x00, 0x04, 0x00, 0x39, 0x03, 0x00, 0x04, 0x00, 0x37, 0x03, 0x00, 0x04, + 0x00, 0x36, 0x03, 0x00, 0x04, 0x00, 0x34, 0x03, 0x00, 0x04, 0x00, 0x33, + 0x03, 0x00, 0x04, 0x00, 0x31, 0x03, 0x00, 0x04, 0x00, 0x30, 0x03, 0x00, + 0x04, 0x00, 0x2e, 0x03, 0x00, 0x03, 0x00, 0x3c, 0x03, 0x00, 0x03, 0x00, + 0x3a, 0x03, 0x00, 0x03, 0x00, 0x39, 0x03, 0x00, 0x03, 0x00, 0x37, 0x03, + 0x00, 0x03, 0x00, 0x36, 0x03, 0x00, 0x03, 0x00, 0x34, 0x03, 0x00, 0x03, + 0x00, 0x33, 0x03, 0x00, 0x03, 0x00, 0x31, 0x03, 0x00, 0x03, 0x00, 0x30, + 0x03, 0x00, 0x03, 0x00, 0x2e, 0x03, 0x00, 0x03, 0x00, 0x2d, 0x03, 0x00, + 0x03, 0x00, 0x2c, 0x03, 0x00, 0x03, 0x00, 0x2b, 0x03, 0x00, 0x03, 0x00, + 0x29, 0x03, 0x00, 0x02, 0x00, 0x3d, 0x03, 0x00, 0x02, 0x00, 0x3b, 0x03, + 0x00, 0x02, 0x00, 0x39, 0x03, 0x00, 0x02, 0x00, 0x38, 0x03, 0x00, 0x02, + 0x00, 0x36, 0x03, 0x00, 0x02, 0x00, 0x35, 0x03, 0x00, 0x02, 0x00, 0x33, + 0x03, 0x00, 0x02, 0x00, 0x32, 0x03, 0x00, 0x02, 0x00, 0x30, 0x03, 0x00, + 0x02, 0x00, 0x2f, 0x03, 0x00, 0x02, 0x00, 0x2e, 0x03, 0x00, 0x02, 0x00, + 0x2c, 0x03, 0x00, 0x02, 0x00, 0x2b, 0x03, 0x00, 0x02, 0x00, 0x2a, 0x03, + 0x00, 0x02, 0x00, 0x29, 0x03, 0x00, 0x02, 0x00, 0x27, 0x03, 0x00, 0x02, + 0x00, 0x26, 0x03, 0x00, 0x02, 0x00, 0x25, 0x03, 0x00, 0x02, 0x00, 0x24, + 0x03, 0x00, 0x02, 0x00, 0x23, 0x03, 0x00, 0x02, 0x00, 0x22, 0x03, 0x00, + 0x02, 0x00, 0x21, 0x03, 0x00, 0x02, 0x00, 0x20, 0x03, 0x00, 0x01, 0x00, + 0x3f, 0x03, 0x00, 0x01, 0x00, 0x3d, 0x03, 0x00, 0x01, 0x00, 0x3b, 0x03, + 0x00, 0x01, 0x00, 0x39, 0x03, 0x00, 0x01, 0x00, 0x38, 0x03, 0x00, 0x01, + 0x00, 0x36, 0x03, 0x00, 0x01, 0x00, 0x35, 0x03, 0x00, 0x01, 0x00, 0x33, + 0x03, 0x00, 0x01, 0x00, 0x32, 0x03, 0x00, 0x01, 0x00, 0x30, 0x03, 0x00, + 0x01, 0x00, 0x2f, 0x03, 0x00, 0x01, 0x00, 0x2e, 0x03, 0x00, 0x01, 0x00, + 0x2c, 0x03, 0x00, 0x01, 0x00, 0x2b, 0x03, 0x00, 0x01, 0x00, 0x2a, 0x03, + 0x00, 0x01, 0x00, 0x29, 0x03, 0x00, 0x01, 0x00, 0x27, 0x03, 0x00, 0x01, + 0x00, 0x26, 0x03, 0x00, 0x01, 0x00, 0x25, 0x03, 0x00, 0x01, 0x00, 0x24, + 0x03, 0x00, 0x01, 0x00, 0x23, 0x03, 0x00, 0x01, 0x00, 0x22, 0x03, 0x00, + 0x01, 0x00, 0x21, 0x03, 0x00, 0x01, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, + 0x04, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, + 0xc0, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, + 0x45, 0x00, 0x00, 0x00, 0x85, 0x00, 0x00, 0x00, 0xc5, 0x00, 0x00, 0x00, + 0x05, 0x01, 0x00, 0x00, 0x45, 0x01, 0x00, 0x00, 0x85, 0x01, 0x00, 0x00, + 0x85, 0x05, 0x00, 0x00, 0x85, 0x09, 0x00, 0x00, 0x85, 0x0d, 0x00, 0x00, + 0x89, 0x09, 0x00, 0x00, 0x89, 0x0d, 0x00, 0x00, 0x89, 0x11, 0x00, 0x00, + 0x89, 0x51, 0x00, 0x00, 0x89, 0x91, 0x00, 0x00, 0x89, 0xd1, 0x00, 0x00, + 0x89, 0x11, 0x01, 0x00, 0x85, 0x4d, 0x00, 0x00, 0x85, 0x8d, 0x00, 0x00, + 0x85, 0xcd, 0x00, 0x00, 0x89, 0x51, 0x01, 0x00, 0x89, 0x91, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x10, 0x00, + 0x39, 0x07, 0x00, 0x10, 0x00, 0x38, 0x07, 0x00, 0x10, 0x00, 0x36, 0x07, + 0x00, 0x10, 0x00, 0x34, 0x07, 0x00, 0x10, 0x00, 0x33, 0x07, 0x00, 0x10, + 0x00, 0x31, 0x07, 0x00, 0x10, 0x00, 0x30, 0x07, 0x00, 0x10, 0x00, 0x2f, + 0x07, 0x00, 0x10, 0x00, 0x2d, 0x07, 0x00, 0x10, 0x00, 0x2c, 0x07, 0x00, + 0x10, 0x00, 0x2b, 0x07, 0x00, 0x10, 0x00, 0x2a, 0x07, 0x00, 0x10, 0x00, + 0x28, 0x07, 0x00, 0x10, 0x00, 0x27, 0x07, 0x00, 0x10, 0x00, 0x26, 0x07, + 0x00, 0x10, 0x00, 0x25, 0x07, 0x00, 0x10, 0x00, 0x24, 0x07, 0x00, 0x10, + 0x00, 0x23, 0x07, 0x00, 0x10, 0x00, 0x22, 0x07, 0x00, 0x10, 0x00, 0x21, + 0x07, 0x00, 0x10, 0x00, 0x20, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, + 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, + 0x81, 0x00, 0x82, 0x00, 0x83, 0x00, 0x84, 0x00, 0x85, 0x00, 0x04, 0x01, + 0x05, 0x01, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0x00, + 0x80, 0x00, 0x80, 0x00, 0x81, 0x00, 0x82, 0x00, 0x83, 0x00, 0x84, 0x00, + 0x85, 0x00, 0x04, 0x01, 0x05, 0x01, 0x06, 0x01, 0x07, 0x01, 0x19, 0x01, + 0x87, 0x01, 0x88, 0x01, 0x89, 0x01, 0x8a, 0x01, 0x8b, 0x01, 0x00, 0x04, + 0x00, 0x04, 0x00, 0x04, 0x00, 0x04, 0x00, 0x04, 0x00, 0x04, 0x00, 0x04, + 0x00, 0x04, 0x00, 0x04, 0x00, 0x04, 0x00, 0x04, 0x01, 0x04, 0x80, 0x04, + 0x82, 0x04, 0x83, 0x04, 0x84, 0x04, 0x00, 0x04, 0x00, 0x04, 0x00, 0x04, + 0x00, 0x04, 0x00, 0x04, 0x00, 0x04, 0x00, 0x04, 0x00, 0x04, 0x00, 0x04, + 0x01, 0x04, 0x80, 0x04, 0x82, 0x04, 0x83, 0x04, 0x84, 0x04, 0x85, 0x04, + 0x86, 0x04, 0x05, 0x05, 0x06, 0x05, 0x07, 0x05, 0x08, 0x05, 0x09, 0x05, + 0x0a, 0x05, 0x09, 0x0c, 0x12, 0x18, 0x18, 0x18, 0x09, 0x0c, 0x12, 0x18, + 0x18, 0x18, 0x00, 0x00, 0x0c, 0x07, 0x6f, 0x7a, 0x06, 0x0c, 0x0f, 0x7b, + 0x7e, 0x01, 0x05, 0x08, 0x0b, 0x0e, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x03, 0x06, 0x09, 0x0c, 0x0f, 0x12, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x06, 0x09, 0x0c, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x40, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, + 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x48, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x40, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, + 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x48, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x50, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, + 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x50, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x80, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, + 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x50, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xb0, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, + 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x50, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xe0, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, + 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x58, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x59, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, + 0x59, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x59, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x30, 0x59, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, + 0x59, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x59, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x60, 0x59, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, + 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x48, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x20, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, + 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x48, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x50, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, + 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x50, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x60, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, + 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x50, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x90, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, + 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x50, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xc0, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, + 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x50, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xf0, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, + 0x51, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x51, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x90, 0x51, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, + 0x59, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x59, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x40, 0x59, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, + 0x59, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x59, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xa0, 0x59, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, + 0x59, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x08, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x30, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x08, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x40, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, + 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x10, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x70, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, + 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x18, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x80, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, + 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x18, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xb0, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, + 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x18, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xe0, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, + 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x19, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x10, 0x19, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, + 0x19, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x19, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x40, 0x19, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, + 0x19, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x19, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x70, 0x19, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, + 0x19, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x08, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x40, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x10, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x50, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, + 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x10, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x90, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, + 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x18, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x90, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, + 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x18, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xc0, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, + 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x18, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xf0, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x19, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x19, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x20, 0x19, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, + 0x19, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x19, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x50, 0x19, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, + 0x19, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x19, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x80, 0x19, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, + 0x19, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x19, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x5f, 0x36, 0x29, 0x1f, 0x5f, 0x36, 0x29, 0x1f, + 0x5f, 0x36, 0x29, 0x1f, 0x5f, 0x36, 0x29, 0x1f, 0x0a, 0x52, 0x54, 0x45, + 0x20, 0x28, 0x25, 0x73, 0x2d, 0x25, 0x73, 0x25, 0x73, 0x25, 0x73, 0x29, + 0x20, 0x25, 0x73, 0x20, 0x6f, 0x6e, 0x20, 0x42, 0x43, 0x4d, 0x25, 0x73, + 0x20, 0x72, 0x25, 0x64, 0x20, 0x40, 0x20, 0x25, 0x64, 0x2e, 0x25, 0x64, + 0x2f, 0x25, 0x64, 0x2e, 0x25, 0x64, 0x2f, 0x25, 0x64, 0x2e, 0x25, 0x64, + 0x4d, 0x48, 0x7a, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x2d, 0xe9, 0xff, 0x41, + 0x07, 0x46, 0x0d, 0x46, 0x08, 0x46, 0xfc, 0x21, 0x16, 0x46, 0x98, 0x46, + 0xdb, 0xf3, 0xf8, 0xf6, 0x04, 0x46, 0x60, 0xb3, 0x00, 0x21, 0xfc, 0x22, + 0xd7, 0xf3, 0xaa, 0xf0, 0x0a, 0x9b, 0x38, 0x46, 0x00, 0x93, 0x04, 0xf1, + 0x64, 0x03, 0x01, 0x93, 0x04, 0xf1, 0x68, 0x03, 0x02, 0x93, 0x29, 0x46, + 0x32, 0x46, 0x43, 0x46, 0xfb, 0xf7, 0x92, 0xfc, 0x20, 0x66, 0xd0, 0xb1, + 0x40, 0xf6, 0x12, 0x01, 0x00, 0x22, 0xe0, 0xf3, 0x73, 0xf1, 0x00, 0x21, + 0x0a, 0x46, 0xe0, 0x66, 0x25, 0x60, 0x20, 0x6e, 0xdf, 0xf3, 0x90, 0xf7, + 0x20, 0x46, 0xf8, 0xf7, 0x2b, 0xf9, 0x20, 0x6e, 0xfb, 0xf7, 0xf6, 0xfa, + 0x28, 0x46, 0x21, 0x46, 0xfc, 0x22, 0xdb, 0xf3, 0xdb, 0xf6, 0x00, 0x20, + 0x02, 0xe0, 0x1e, 0x20, 0x00, 0xe0, 0x0b, 0x20, 0x04, 0xb0, 0xbd, 0xe8, + 0xf0, 0x81, 0x00, 0x00, 0x96, 0x86, 0x00, 0x00, 0x01, 0xbc, 0x60, 0x03, + 0x00, 0x10, 0x4e, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x0c, 0x2b, 0x03, 0xa8, + 0x5e, 0x02, 0xf0, 0x00, 0x13, 0x03, 0xa6, 0x5e, 0x02, 0xf0, 0x00, 0x13, + 0x02, 0x82, 0x5e, 0x53, 0x00, 0x00, 0x13, 0x02, 0x85, 0x5e, 0xaf, 0x00, + 0x00, 0x13, 0x03, 0xa3, 0x5e, 0x02, 0xf0, 0x00, 0x13, 0x02, 0x83, 0xc2, + 0x1f, 0x00, 0x00, 0x13, 0x02, 0x86, 0xc0, 0x37, 0x00, 0x00, 0x13, 0x02, + 0x02, 0x00, 0xbf, 0x00, 0x00, 0x10, 0x03, 0xa8, 0x5e, 0x02, 0xf0, 0x00, + 0x13, 0x02, 0x82, 0xde, 0xbb, 0x00, 0x00, 0x13, 0x02, 0x82, 0xde, 0xb3, + 0x00, 0x00, 0x13, 0x02, 0x83, 0x5e, 0xb7, 0x00, 0x00, 0x13, 0x02, 0x84, + 0x5e, 0xb3, 0x00, 0x00, 0x13, 0x02, 0x86, 0x00, 0xc7, 0x00, 0x00, 0x13, + 0x02, 0x84, 0x80, 0xc3, 0x00, 0x00, 0x13, 0x01, 0xbc, 0x63, 0xff, 0x1f, + 0xf0, 0x40, 0x00, 0x00, 0xde, 0x02, 0xf0, 0x00, 0x00, 0x03, 0x5b, 0x5e, + 0x02, 0xf0, 0x00, 0x15, 0x01, 0xbc, 0x60, 0x13, 0x00, 0x10, 0x43, 0x00, + 0x01, 0x5e, 0x02, 0xf0, 0x00, 0x00, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x11, + 0x8f, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x11, 0xa4, 0x02, 0x02, 0x00, 0xbf, + 0x00, 0x00, 0x92, 0x02, 0x04, 0x5e, 0xff, 0x00, 0x00, 0x1d, 0x00, 0x6b, + 0x44, 0x65, 0x57, 0x40, 0x1d, 0x01, 0x84, 0x60, 0x02, 0xf7, 0xf7, 0xbf, + 0x01, 0xbc, 0x60, 0x03, 0x00, 0x0a, 0xac, 0x00, 0x02, 0x5e, 0x02, 0xf0, + 0x0f, 0x39, 0x02, 0x02, 0xde, 0xff, 0x00, 0x00, 0x22, 0x00, 0x6b, 0x44, + 0x65, 0x55, 0xe0, 0x22, 0x01, 0x82, 0xe0, 0x02, 0xf7, 0xf7, 0xbf, 0x03, + 0xbf, 0xde, 0x02, 0xf0, 0x05, 0xce, 0x00, 0x68, 0x2b, 0x67, 0x00, 0x00, + 0x27, 0x02, 0x80, 0xde, 0xff, 0x00, 0x00, 0x92, 0x00, 0x6b, 0x44, 0x65, + 0x5b, 0x20, 0x92, 0x01, 0x84, 0xe0, 0x06, 0xf5, 0x77, 0xab, 0x00, 0x02, + 0x5e, 0x02, 0xf0, 0x11, 0x36, 0x02, 0x04, 0x80, 0xc7, 0x00, 0x00, 0x29, + 0x02, 0x81, 0x80, 0xc7, 0x00, 0x00, 0x2b, 0x01, 0x80, 0x60, 0x02, 0xf7, + 0xf7, 0xbf, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x0a, 0xe0, 0x00, 0x90, 0x2b, + 0xfb, 0x00, 0xd7, 0xa2, 0x00, 0xe0, 0x2b, 0xf6, 0xf4, 0x57, 0xa3, 0x00, + 0x6d, 0x44, 0x6a, 0xf4, 0x60, 0x2f, 0x00, 0xb0, 0x2b, 0xef, 0x00, 0x0a, + 0xf6, 0x01, 0x87, 0x60, 0x02, 0xf7, 0xf7, 0xbf, 0x00, 0x68, 0x2b, 0xd7, + 0x00, 0x00, 0x36, 0x00, 0xe9, 0x44, 0x65, 0x5e, 0xb7, 0xa3, 0x00, 0xe8, + 0xc4, 0x69, 0x5f, 0x37, 0xa2, 0x00, 0x68, 0xde, 0x8b, 0x00, 0x00, 0x36, + 0x00, 0x6d, 0xde, 0x8d, 0x5e, 0xc0, 0x36, 0x01, 0x87, 0x60, 0x06, 0xf7, + 0xf7, 0xbf, 0x02, 0x07, 0xde, 0xff, 0x00, 0x00, 0x3b, 0x00, 0xe8, 0x44, + 0x65, 0x5a, 0xf7, 0xa2, 0x00, 0x6d, 0x5e, 0x89, 0x5a, 0xc0, 0x3b, 0x01, + 0x87, 0xe0, 0x02, 0xf7, 0xf7, 0xbf, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x0a, + 0xd7, 0x00, 0x68, 0x2a, 0xff, 0x00, 0x00, 0x46, 0x00, 0xe8, 0x44, 0x65, + 0x57, 0xf7, 0xa1, 0x00, 0x6d, 0xde, 0x85, 0x57, 0x00, 0x42, 0x00, 0x68, + 0x2b, 0x3b, 0x00, 0x00, 0x46, 0x00, 0xe8, 0x44, 0x65, 0x59, 0xd7, 0xa1, + 0x00, 0x6d, 0xde, 0x85, 0x57, 0x00, 0x44, 0x03, 0xbf, 0xde, 0x02, 0xf0, + 0x00, 0x46, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x0a, 0xc0, 0x01, 0xbc, 0x60, + 0x03, 0x00, 0x0a, 0xbf, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x0a, 0xce, 0x01, + 0xbc, 0x60, 0x03, 0x00, 0x0a, 0xc6, 0x02, 0x02, 0xde, 0xb3, 0x00, 0x00, + 0x49, 0x02, 0x00, 0x42, 0x03, 0x00, 0x00, 0x49, 0x00, 0x02, 0x5e, 0x02, + 0xf0, 0x0b, 0x22, 0x02, 0x84, 0x5e, 0xb3, 0x00, 0x00, 0x92, 0x00, 0x68, + 0xab, 0x07, 0x00, 0x00, 0x92, 0x02, 0x83, 0xde, 0xb7, 0x00, 0x00, 0x4d, + 0x02, 0x01, 0x80, 0xc7, 0x00, 0x00, 0x68, 0x00, 0xb0, 0x2a, 0xc3, 0x00, + 0x17, 0xa2, 0x02, 0x80, 0x2b, 0xeb, 0x00, 0x00, 0x54, 0x00, 0xb0, 0x2b, + 0x1b, 0x00, 0x17, 0xa1, 0x00, 0x6d, 0xde, 0x85, 0x5c, 0xa0, 0x86, 0x00, + 0x68, 0x5e, 0x87, 0x00, 0x00, 0x54, 0x00, 0x68, 0x2b, 0xff, 0x00, 0x00, + 0x54, 0x00, 0xb0, 0x2b, 0xff, 0x00, 0x17, 0xa2, 0x00, 0x68, 0x2b, 0x03, + 0x00, 0x00, 0x59, 0x00, 0xe8, 0x44, 0x65, 0x58, 0x17, 0xa1, 0x00, 0x6d, + 0xde, 0x86, 0xf4, 0x40, 0x86, 0x00, 0xe0, 0x5e, 0x85, 0x55, 0xb7, 0xa1, + 0x00, 0x6d, 0xde, 0x86, 0xf4, 0x40, 0x86, 0x02, 0x02, 0xde, 0xbb, 0x00, + 0x00, 0x68, 0x00, 0x68, 0x2a, 0xb3, 0x00, 0x00, 0x68, 0x00, 0xe8, 0x44, + 0x65, 0x56, 0x97, 0xa1, 0x00, 0xe0, 0x2a, 0xb3, 0x01, 0x57, 0xa2, 0x00, + 0x6e, 0xde, 0x86, 0xf4, 0x40, 0x62, 0x01, 0x82, 0xe0, 0x02, 0xf5, 0xd7, + 0xae, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x0a, 0xf0, 0x01, 0xbc, 0x60, 0x03, + 0x00, 0x0a, 0xac, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x00, 0x68, 0x00, 0xe8, + 0x2a, 0xb2, 0xf4, 0x37, 0xa1, 0x00, 0x90, 0x2a, 0xb3, 0x00, 0x37, 0xa2, + 0x00, 0x6e, 0x2a, 0xb6, 0xf4, 0x40, 0x66, 0x00, 0xb0, 0x2a, 0xb7, 0x00, + 0x17, 0xa2, 0x00, 0x69, 0xde, 0x86, 0xf4, 0x40, 0x68, 0x03, 0xbf, 0xde, + 0x02, 0xf0, 0x00, 0x86, 0x02, 0x83, 0xde, 0xb7, 0x00, 0x00, 0x7e, 0x02, + 0x88, 0x81, 0xab, 0x00, 0x00, 0x7c, 0x02, 0x03, 0x5e, 0xb7, 0x00, 0x00, + 0x92, 0x02, 0x04, 0x80, 0xc7, 0x00, 0x00, 0x6d, 0x02, 0x00, 0x5e, 0xff, + 0x00, 0x00, 0x7c, 0x02, 0x80, 0x80, 0xbf, 0x00, 0x00, 0x7c, 0x00, 0x68, + 0x2b, 0x3b, 0x00, 0x00, 0x73, 0x02, 0x80, 0x2b, 0xeb, 0x00, 0x00, 0x73, + 0x00, 0xb0, 0x2b, 0x43, 0x00, 0x17, 0xbb, 0x00, 0x6e, 0x2b, 0x1a, 0xf7, + 0x60, 0x92, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x00, 0x7c, 0x02, 0x04, 0xde, + 0xb7, 0x00, 0x00, 0x75, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x00, 0x7c, 0x02, + 0x84, 0x00, 0xc7, 0x00, 0x00, 0x77, 0x02, 0x86, 0x00, 0xc7, 0x00, 0x00, + 0x78, 0x00, 0x68, 0x2b, 0x03, 0x00, 0x00, 0x7c, 0x00, 0xe8, 0x44, 0x65, + 0x56, 0xf7, 0xa1, 0x00, 0x6d, 0xde, 0x85, 0x57, 0xc0, 0x7c, 0x00, 0x6c, + 0xc4, 0x65, 0x57, 0x20, 0x92, 0x02, 0x84, 0x5e, 0xb7, 0x00, 0x00, 0x92, + 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x11, 0x51, 0x03, 0xbf, 0xde, 0x02, 0xf0, + 0x00, 0x92, 0x01, 0xbc, 0x63, 0xff, 0x1f, 0xf7, 0xa1, 0x00, 0x68, 0x45, + 0x86, 0xf4, 0x20, 0x7c, 0x02, 0x03, 0xc5, 0x73, 0x00, 0x00, 0x86, 0x02, + 0x84, 0x5e, 0xb7, 0x00, 0x00, 0x86, 0x02, 0x01, 0x00, 0xc7, 0x00, 0x00, + 0x92, 0x00, 0x6b, 0x44, 0x65, 0x57, 0x40, 0x92, 0x00, 0x20, 0xe3, 0xfe, + 0x14, 0x60, 0x92, 0x02, 0x82, 0xde, 0xbb, 0x00, 0x00, 0x92, 0x02, 0x88, + 0x81, 0xab, 0x00, 0x00, 0x92, 0x02, 0x82, 0xde, 0xb3, 0x00, 0x00, 0x92, + 0x02, 0x80, 0x80, 0xbf, 0x00, 0x00, 0x92, 0x02, 0x84, 0xde, 0xaf, 0x00, + 0x00, 0x92, 0x02, 0x82, 0x5e, 0xbb, 0x00, 0x00, 0x92, 0x03, 0xa0, 0xde, + 0x02, 0xf0, 0x00, 0x8e, 0x02, 0x00, 0x42, 0x03, 0x00, 0x00, 0x8e, 0x00, + 0x02, 0x5e, 0x02, 0xf0, 0x0b, 0x22, 0x01, 0x83, 0x60, 0x02, 0xf5, 0xb7, + 0xad, 0x01, 0x84, 0xe0, 0x06, 0xf5, 0x77, 0xab, 0x01, 0xbc, 0x60, 0x03, + 0x00, 0x0a, 0xc1, 0x00, 0xb0, 0x44, 0x67, 0x00, 0x0a, 0xc2, 0x01, 0x80, + 0x60, 0x02, 0x0d, 0x90, 0x6c, 0x03, 0x59, 0x5e, 0x02, 0xf0, 0x00, 0x94, + 0x03, 0xd8, 0x5e, 0x02, 0xf0, 0x00, 0x95, 0x03, 0xd8, 0xde, 0x02, 0xf0, + 0x00, 0x96, 0x01, 0xbc, 0x61, 0x83, 0x00, 0x11, 0x29, 0x00, 0xb0, 0x00, + 0x7b, 0x00, 0x11, 0x2b, 0x01, 0xbc, 0x63, 0x03, 0x00, 0x11, 0x23, 0x03, + 0x12, 0x5e, 0x02, 0xf0, 0x0a, 0x9c, 0x03, 0x97, 0x5e, 0x02, 0xf0, 0x0b, + 0x33, 0x02, 0x01, 0x81, 0xb3, 0x00, 0x00, 0xa9, 0x02, 0x85, 0xc5, 0x23, + 0x00, 0x00, 0xa9, 0x02, 0x87, 0x81, 0xb3, 0x00, 0x00, 0xa2, 0x03, 0xa3, + 0xde, 0x02, 0xf0, 0x00, 0xa9, 0x03, 0xa0, 0xde, 0x02, 0xf0, 0x00, 0xa9, + 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0b, 0x22, 0x01, 0x87, 0xe0, 0x04, 0x0d, + 0x80, 0x6c, 0x00, 0xe0, 0x44, 0x64, 0x0d, 0xb7, 0xbd, 0x00, 0x6b, 0x44, + 0x66, 0xf7, 0xa0, 0xa3, 0x01, 0xbc, 0x60, 0x03, 0x01, 0x97, 0x80, 0x01, + 0xbc, 0x60, 0x03, 0x00, 0x37, 0x81, 0x01, 0xbc, 0x60, 0x6b, 0x00, 0x50, + 0x8a, 0x01, 0xbc, 0x60, 0x03, 0x06, 0x37, 0x92, 0x03, 0xbf, 0xde, 0x02, + 0xf0, 0x02, 0xe3, 0x03, 0xd0, 0x5e, 0x02, 0xf0, 0x03, 0x1d, 0x03, 0xd0, + 0xde, 0x02, 0xf0, 0x05, 0x2c, 0x03, 0xd5, 0xde, 0x02, 0xf0, 0x0a, 0x56, + 0x03, 0x91, 0x5e, 0x02, 0xf0, 0x05, 0xa2, 0x03, 0x96, 0xde, 0x02, 0xf0, + 0x0a, 0x51, 0x02, 0x88, 0xc1, 0x73, 0x00, 0x00, 0xca, 0x03, 0xc4, 0x5e, + 0x02, 0xf0, 0x07, 0x1c, 0x03, 0xc7, 0x5e, 0x02, 0xf0, 0x07, 0x42, 0x03, + 0xdc, 0xde, 0x02, 0xf0, 0x11, 0xe4, 0x03, 0xaa, 0x5e, 0x02, 0xf0, 0x07, + 0x85, 0x03, 0x86, 0xde, 0x02, 0xf0, 0x0a, 0x94, 0x02, 0x87, 0xc0, 0x37, + 0x00, 0x0a, 0x94, 0x03, 0x83, 0x5e, 0x02, 0xf0, 0x08, 0xc6, 0x03, 0x91, + 0xde, 0x02, 0xf0, 0x06, 0x24, 0x03, 0xc2, 0xde, 0x02, 0xf0, 0x0a, 0xf8, + 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0f, 0x38, 0x00, 0x02, 0x5e, 0x02, 0xf0, + 0x11, 0x8f, 0x03, 0xd4, 0xde, 0x02, 0xf0, 0x06, 0xb5, 0x03, 0xa3, 0xde, + 0x02, 0xf0, 0x00, 0x02, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0e, 0x69, 0x03, + 0xa2, 0x5e, 0x02, 0xf0, 0x00, 0xc7, 0x03, 0x56, 0x5e, 0x02, 0xf0, 0x00, + 0xc4, 0x01, 0x86, 0x60, 0x06, 0x09, 0x10, 0x48, 0x03, 0x1f, 0x5e, 0x02, + 0xf0, 0x00, 0xc4, 0x00, 0x6a, 0x5e, 0x23, 0x00, 0x00, 0xc3, 0x00, 0xb0, + 0x00, 0x27, 0x00, 0x17, 0x88, 0x00, 0xe8, 0x5e, 0x23, 0x00, 0x37, 0x88, + 0x03, 0xa6, 0x5e, 0x02, 0xf0, 0x01, 0x31, 0x00, 0x02, 0x5e, 0x02, 0xf0, + 0x0f, 0x00, 0x00, 0x28, 0x60, 0x0e, 0x08, 0xe1, 0x52, 0x03, 0xc4, 0xde, + 0x02, 0xf0, 0x0b, 0x6a, 0x00, 0x20, 0xc2, 0x03, 0x00, 0x21, 0x64, 0x03, + 0xbf, 0xde, 0x02, 0xf0, 0x01, 0xaf, 0x03, 0x81, 0x5e, 0x02, 0xf0, 0x00, + 0xcc, 0x03, 0x00, 0xde, 0x02, 0xf0, 0x00, 0xaf, 0x01, 0x88, 0xe0, 0x02, + 0x0b, 0x90, 0x5c, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x03, 0x1a, 0x02, 0x87, + 0x40, 0x63, 0x00, 0x00, 0xce, 0x02, 0x82, 0xc1, 0x07, 0x00, 0x00, 0xcf, + 0x01, 0x86, 0x60, 0x06, 0xf4, 0x30, 0x18, 0x02, 0x86, 0x40, 0x63, 0x00, + 0x00, 0xd1, 0x00, 0xb0, 0x5e, 0x87, 0x00, 0x17, 0xa1, 0x00, 0x02, 0xde, + 0x02, 0xf0, 0x00, 0x00, 0x02, 0x87, 0x40, 0x63, 0x00, 0x00, 0xd4, 0x00, + 0xb0, 0x5e, 0x8b, 0x00, 0x10, 0x19, 0x01, 0x86, 0xe0, 0x06, 0xf4, 0x30, + 0x18, 0x02, 0x81, 0xde, 0xaf, 0x00, 0x00, 0xd9, 0x02, 0x86, 0xc0, 0x63, + 0x00, 0x00, 0xd8, 0x00, 0xb0, 0x5e, 0x87, 0x00, 0x17, 0xa1, 0x00, 0x02, + 0xde, 0x02, 0xf0, 0x00, 0x00, 0x01, 0xbc, 0x60, 0x03, 0x02, 0x80, 0x06, + 0x02, 0x80, 0xde, 0x07, 0x00, 0x00, 0xe5, 0x01, 0xda, 0x60, 0x02, 0xf0, + 0x17, 0x80, 0x02, 0x08, 0x5e, 0x07, 0x00, 0x00, 0xf5, 0x01, 0xbc, 0x60, + 0x03, 0x1e, 0x17, 0xa1, 0x00, 0xe0, 0x5e, 0x02, 0xf4, 0x30, 0x65, 0x01, + 0xbc, 0x60, 0x03, 0x1c, 0x17, 0xa1, 0x00, 0xe0, 0x5e, 0x02, 0xf4, 0x30, + 0x64, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x28, 0x17, 0x03, 0xbf, 0xde, 0x02, + 0xf0, 0x00, 0xfb, 0x01, 0x10, 0x5e, 0x03, 0x00, 0x17, 0xa1, 0x00, 0x88, + 0x5e, 0x87, 0x00, 0x37, 0xa2, 0x00, 0xe0, 0x5e, 0x86, 0xf4, 0x57, 0xa1, + 0x00, 0xe0, 0x01, 0x5a, 0xf4, 0x30, 0x63, 0x02, 0x86, 0x00, 0xc3, 0x00, + 0x00, 0xee, 0x00, 0xb0, 0x56, 0x0b, 0x00, 0x10, 0x62, 0x00, 0xb0, 0x54, + 0x03, 0x00, 0x10, 0x62, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x28, 0x17, 0x03, + 0xbf, 0xde, 0x02, 0xf0, 0x00, 0xfd, 0x00, 0xb0, 0x41, 0x8f, 0x00, 0x10, + 0x62, 0x01, 0x09, 0xde, 0x03, 0x00, 0x17, 0xa1, 0x00, 0x88, 0x5e, 0x87, + 0x00, 0x57, 0xa1, 0x00, 0xe0, 0x5e, 0x85, 0x05, 0x77, 0xa1, 0x00, 0xe0, + 0x5e, 0x87, 0x03, 0xc0, 0x06, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x48, 0x17, + 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x00, 0xfd, 0x01, 0xbc, 0x60, 0x07, 0x02, + 0x17, 0xa1, 0x00, 0xe0, 0x5e, 0x02, 0xf4, 0x30, 0x65, 0x01, 0xbc, 0x60, + 0x07, 0x00, 0x17, 0xa1, 0x00, 0xe0, 0x5e, 0x02, 0xf4, 0x30, 0x64, 0x01, + 0xbc, 0x60, 0x03, 0x18, 0x00, 0x06, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x08, + 0x17, 0x00, 0xb0, 0x5a, 0x03, 0x00, 0x10, 0x62, 0x00, 0xb0, 0x58, 0x03, + 0x00, 0x10, 0x63, 0x01, 0x05, 0x01, 0x43, 0x00, 0x17, 0xa1, 0x00, 0x88, + 0x00, 0x1a, 0xf4, 0x20, 0x06, 0x00, 0x02, 0xde, 0x02, 0xf0, 0x00, 0x00, + 0x01, 0xbc, 0x60, 0x03, 0x06, 0x37, 0x92, 0x01, 0xbc, 0x63, 0xff, 0x1f, + 0xf0, 0xc3, 0x01, 0xbc, 0x60, 0x03, 0x18, 0x90, 0xe3, 0x01, 0xbc, 0x63, + 0xff, 0x1f, 0xf0, 0xc5, 0x01, 0xbc, 0x63, 0xff, 0x1f, 0xf0, 0xc6, 0x01, + 0xbc, 0x63, 0xff, 0x1f, 0xf0, 0xc7, 0x00, 0xb0, 0x2c, 0x53, 0x00, 0x10, + 0xe5, 0x00, 0xb0, 0x2c, 0x57, 0x00, 0x10, 0xe6, 0x00, 0xb0, 0x2c, 0x5b, + 0x00, 0x10, 0xe7, 0x02, 0x80, 0xac, 0x3f, 0x00, 0x01, 0x13, 0x01, 0xbc, + 0x60, 0x03, 0x00, 0x10, 0x10, 0x00, 0xb0, 0x40, 0x43, 0x00, 0x18, 0x00, + 0x00, 0xb0, 0x40, 0x47, 0x00, 0x10, 0xe5, 0x01, 0xbc, 0x60, 0x03, 0x00, + 0x30, 0x10, 0x00, 0xb0, 0x40, 0x43, 0x00, 0x18, 0x00, 0x00, 0xb0, 0x40, + 0x47, 0x00, 0x10, 0xe6, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x50, 0x10, 0x00, + 0xb0, 0x40, 0x43, 0x00, 0x18, 0x00, 0x00, 0xb0, 0x40, 0x47, 0x00, 0x10, + 0xe7, 0x01, 0xbc, 0x63, 0xff, 0x1f, 0xf0, 0xc4, 0x00, 0x02, 0xde, 0x02, + 0xf0, 0x00, 0x00, 0x00, 0xe8, 0x40, 0x33, 0x00, 0x97, 0xa1, 0x00, 0xb0, + 0x40, 0x0b, 0x00, 0x17, 0xa3, 0x00, 0x6d, 0x5e, 0x86, 0xf4, 0x61, 0x1a, + 0x00, 0x90, 0x5e, 0x8f, 0x00, 0x37, 0xa3, 0x03, 0xbf, 0xde, 0x02, 0xf0, + 0x01, 0x1b, 0x00, 0x90, 0x5e, 0x87, 0x00, 0x37, 0xa3, 0x01, 0xbc, 0x60, + 0x1f, 0x14, 0x17, 0xa1, 0x00, 0xe0, 0x5e, 0x8e, 0xf4, 0x37, 0xa3, 0x01, + 0xf0, 0x41, 0x97, 0x00, 0x17, 0xa1, 0x00, 0x6d, 0xde, 0x86, 0xf4, 0x61, + 0x2f, 0x02, 0x87, 0xc1, 0x97, 0x00, 0x01, 0x23, 0x01, 0x38, 0x5a, 0x03, + 0x00, 0x17, 0xa1, 0x01, 0x3c, 0x5a, 0x03, 0x00, 0x17, 0xa2, 0x03, 0xbf, + 0xde, 0x02, 0xf0, 0x01, 0x25, 0x01, 0x3c, 0x5a, 0x03, 0x00, 0x17, 0xa1, + 0x01, 0x38, 0x5a, 0x07, 0x00, 0x17, 0xa2, 0x00, 0x68, 0x5e, 0x86, 0xf4, + 0x81, 0x2a, 0x00, 0xd8, 0x5e, 0x8b, 0x00, 0x37, 0xa2, 0x00, 0xe1, 0x41, + 0x96, 0xf4, 0x50, 0x65, 0x00, 0xe1, 0xc1, 0x97, 0x00, 0x30, 0x65, 0x03, + 0xbf, 0xde, 0x02, 0xf0, 0x01, 0x1d, 0x00, 0xd8, 0x5e, 0x8b, 0x00, 0x37, + 0xa2, 0x00, 0xe1, 0x41, 0x96, 0xf4, 0x57, 0xa1, 0x00, 0xe1, 0xde, 0x87, + 0x00, 0x37, 0xa1, 0x01, 0xf0, 0x5e, 0x87, 0x00, 0x17, 0xa1, 0x00, 0x6e, + 0xde, 0x86, 0xf4, 0x61, 0x30, 0x01, 0xbc, 0x63, 0xff, 0x1f, 0xf7, 0xa4, + 0x00, 0x02, 0xde, 0x02, 0xf0, 0x00, 0x00, 0x00, 0x20, 0xe3, 0x8e, 0x09, + 0x00, 0x02, 0x03, 0x1e, 0xde, 0x02, 0xf0, 0x01, 0x36, 0x03, 0x9f, 0x5e, + 0x02, 0xf0, 0x01, 0x36, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x01, 0x59, 0x03, + 0xbf, 0xde, 0x02, 0xf0, 0x00, 0x02, 0x02, 0x08, 0x41, 0x1f, 0x00, 0x01, + 0x34, 0x01, 0x81, 0x60, 0x05, 0x61, 0xcb, 0x0e, 0x00, 0x02, 0x5e, 0x02, + 0xf0, 0x0b, 0x22, 0x00, 0xb0, 0x00, 0xab, 0x00, 0x10, 0x86, 0x00, 0xb0, + 0x01, 0x63, 0x00, 0x10, 0x8a, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0d, 0x3b, + 0x01, 0xbc, 0x60, 0x03, 0x04, 0x17, 0x92, 0x00, 0xb0, 0x00, 0x3b, 0x00, + 0x11, 0x1d, 0x01, 0x90, 0x60, 0x06, 0x09, 0x10, 0x48, 0x03, 0xa1, 0xde, + 0x02, 0xf0, 0x01, 0x4c, 0x01, 0x81, 0xe0, 0x06, 0x09, 0x10, 0x48, 0x01, + 0xbc, 0x60, 0x03, 0x00, 0x90, 0x42, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x11, + 0x2d, 0x03, 0x9e, 0xde, 0x02, 0xf0, 0x01, 0x4f, 0x01, 0x84, 0x60, 0x02, + 0xf2, 0x97, 0x94, 0x00, 0xb0, 0x45, 0x17, 0x00, 0x17, 0x8f, 0x00, 0xb0, + 0x5e, 0x17, 0x00, 0x17, 0x90, 0x02, 0x00, 0x44, 0x1f, 0x00, 0x01, 0x4a, + 0x01, 0x85, 0x60, 0x02, 0x09, 0x10, 0x48, 0x01, 0x81, 0x60, 0x07, 0x00, + 0x10, 0x47, 0x01, 0xf0, 0xde, 0x0f, 0x00, 0x37, 0xa1, 0x00, 0xa0, 0x44, + 0xb6, 0xf4, 0x31, 0x45, 0x03, 0x9e, 0xde, 0x02, 0xf0, 0x01, 0x4f, 0x01, + 0xbc, 0x61, 0x37, 0x12, 0xb0, 0x80, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x00, + 0x02, 0x00, 0xa0, 0x44, 0xb4, 0x2a, 0x31, 0x45, 0x01, 0xbc, 0x61, 0x27, + 0x12, 0x70, 0x80, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x00, 0x02, 0x00, 0x20, + 0xe0, 0x82, 0x09, 0x00, 0x02, 0x01, 0x0c, 0xde, 0x53, 0x00, 0x17, 0xa1, + 0x01, 0x88, 0x5e, 0x87, 0x00, 0x10, 0x47, 0x01, 0xbc, 0x60, 0x03, 0x00, + 0x50, 0x42, 0x01, 0x08, 0x41, 0x1f, 0x00, 0x17, 0xa1, 0x01, 0x8c, 0xde, + 0x86, 0xf2, 0x97, 0x94, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x00, 0x02, 0x01, + 0xbc, 0x60, 0x03, 0x00, 0x90, 0x42, 0x00, 0xe0, 0x2f, 0xc3, 0x00, 0x2b, + 0xf0, 0x00, 0xe8, 0x5e, 0x23, 0x00, 0x37, 0x88, 0x00, 0x69, 0xde, 0x23, + 0x00, 0x01, 0x5e, 0x00, 0xe8, 0x00, 0x27, 0x00, 0x37, 0x88, 0x01, 0x86, + 0x60, 0x02, 0x09, 0x10, 0x48, 0x01, 0x85, 0x60, 0x06, 0xf5, 0xb7, 0xad, + 0x00, 0x88, 0x00, 0x9b, 0x00, 0xd1, 0x26, 0x00, 0x90, 0x00, 0x9b, 0x01, + 0x51, 0x28, 0x01, 0xbc, 0x63, 0x03, 0x00, 0x11, 0x24, 0x00, 0x02, 0xde, + 0x02, 0xf0, 0x00, 0x00, 0x00, 0x20, 0xe0, 0x7e, 0x09, 0x00, 0x02, 0x00, + 0x02, 0x5e, 0x02, 0xf0, 0x0f, 0x0a, 0x02, 0x83, 0xc2, 0x1f, 0x00, 0x00, + 0x02, 0x02, 0x02, 0x80, 0xf3, 0x00, 0x01, 0x6e, 0x00, 0xb0, 0x44, 0x67, + 0x00, 0x17, 0xa1, 0x01, 0x7c, 0x5e, 0x86, 0x23, 0x57, 0xa3, 0x02, 0x83, + 0x5e, 0xff, 0x00, 0x01, 0x6d, 0x00, 0xe0, 0x00, 0xfa, 0xf4, 0x68, 0x2f, + 0x01, 0x83, 0x60, 0x06, 0xf7, 0xf7, 0xbf, 0x00, 0x6b, 0xde, 0x8d, 0x05, + 0xe1, 0x72, 0x02, 0x06, 0xd0, 0x03, 0x00, 0x01, 0x76, 0x00, 0xe9, 0x50, + 0x86, 0x23, 0x37, 0xa1, 0x00, 0xe8, 0xd0, 0x8a, 0x23, 0x57, 0xa2, 0x00, + 0x69, 0xde, 0x8b, 0x00, 0x01, 0x76, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0b, + 0x22, 0x01, 0x91, 0x60, 0x16, 0x84, 0xf4, 0x27, 0x00, 0xe0, 0x20, 0xbf, + 0x00, 0x88, 0x2f, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x03, 0x00, 0x02, 0x04, + 0x00, 0xbf, 0x00, 0x01, 0x7c, 0x03, 0x94, 0x5e, 0x02, 0xf0, 0x00, 0x02, + 0x00, 0xa0, 0x42, 0x8f, 0x01, 0xf7, 0x80, 0x00, 0x68, 0x5e, 0x00, 0x2d, + 0xc0, 0x02, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0b, 0x22, 0x03, 0xbf, 0xde, + 0x02, 0xf0, 0x00, 0x13, 0x02, 0x01, 0xc2, 0x8f, 0x00, 0x00, 0x02, 0x01, + 0x14, 0x00, 0x63, 0x00, 0x17, 0xa1, 0x00, 0x68, 0x5e, 0x87, 0x00, 0x60, + 0x02, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0b, 0x22, 0x01, 0x94, 0x60, 0x0f, + 0x00, 0x00, 0x18, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x01, 0x83, 0x03, 0xbf, + 0xde, 0x02, 0xf0, 0x00, 0x13, 0x01, 0x14, 0x00, 0x63, 0x00, 0x17, 0xa1, + 0x00, 0xb0, 0x5e, 0x87, 0x00, 0x10, 0xa5, 0x01, 0xbc, 0x60, 0x13, 0x11, + 0x10, 0x60, 0x00, 0x68, 0x5e, 0x87, 0x00, 0x01, 0x8a, 0x00, 0xe0, 0x41, + 0x83, 0x06, 0xd0, 0x60, 0x00, 0xe8, 0x5e, 0x87, 0x00, 0x37, 0xa1, 0x03, + 0xbf, 0xde, 0x02, 0xf0, 0x01, 0x86, 0x02, 0x80, 0x50, 0xc3, 0x00, 0x01, + 0x94, 0x01, 0x87, 0x60, 0x04, 0x03, 0x10, 0xa0, 0x00, 0xb0, 0x00, 0x63, + 0x00, 0x10, 0xb4, 0x00, 0xb0, 0x42, 0xd3, 0x00, 0x18, 0x00, 0x00, 0x88, + 0x41, 0x83, 0x00, 0x30, 0xb6, 0x01, 0xbc, 0x60, 0x03, 0x0b, 0x10, 0xb5, + 0x00, 0xb0, 0x00, 0x63, 0x00, 0xb0, 0xb4, 0x03, 0x17, 0xde, 0x02, 0xf0, + 0x01, 0x91, 0x03, 0x97, 0xde, 0x02, 0xf0, 0x01, 0x92, 0x01, 0x80, 0x60, + 0x06, 0x86, 0x14, 0x30, 0x00, 0x02, 0xde, 0x02, 0xf0, 0x00, 0x00, 0x00, + 0x20, 0xe0, 0x12, 0x80, 0x41, 0xae, 0x01, 0x87, 0x60, 0x04, 0x03, 0x10, + 0xa0, 0x00, 0xb0, 0x00, 0x63, 0x00, 0x10, 0xb4, 0x01, 0xbc, 0x60, 0x03, + 0x0e, 0x10, 0xb5, 0x00, 0xb0, 0x00, 0x63, 0x00, 0xf0, 0xb4, 0x01, 0xbc, + 0x60, 0x57, 0x04, 0x90, 0xb6, 0x00, 0xb0, 0x00, 0x63, 0x00, 0x10, 0xb4, + 0x01, 0xbc, 0x60, 0x03, 0x02, 0xd0, 0xb5, 0x02, 0x07, 0x50, 0x0b, 0x00, + 0x01, 0xab, 0x01, 0xbc, 0x60, 0x03, 0x03, 0xd0, 0xb5, 0x01, 0x8e, 0x60, + 0x02, 0xf2, 0x97, 0x94, 0x02, 0x04, 0x50, 0x0b, 0x00, 0x01, 0xa4, 0x02, + 0x04, 0xd0, 0x0b, 0x00, 0x01, 0xa4, 0x01, 0x86, 0x60, 0x06, 0xf2, 0x97, + 0x94, 0x00, 0xe0, 0x42, 0xd7, 0x00, 0xd0, 0xb5, 0x00, 0xa0, 0x50, 0x0b, + 0x11, 0x17, 0xa1, 0x00, 0x68, 0xde, 0x87, 0x11, 0x01, 0xaa, 0x01, 0x86, + 0xe0, 0x06, 0xf2, 0x97, 0x94, 0x00, 0xe0, 0x42, 0xd7, 0x00, 0x50, 0xb5, + 0x02, 0x07, 0xd0, 0x0b, 0x00, 0x01, 0xaa, 0x00, 0xe0, 0x42, 0xd7, 0x00, + 0x90, 0xb5, 0x00, 0xb0, 0x42, 0xd7, 0x00, 0x11, 0xe1, 0x00, 0xb0, 0x00, + 0x63, 0x00, 0xb0, 0xb4, 0x03, 0x17, 0xde, 0x02, 0xf0, 0x01, 0xac, 0x03, + 0x97, 0xde, 0x02, 0xf0, 0x01, 0xad, 0x00, 0x02, 0xde, 0x02, 0xf0, 0x00, + 0x00, 0x00, 0x68, 0x20, 0xdb, 0x00, 0x01, 0xb2, 0x00, 0x6c, 0xc4, 0x65, + 0x06, 0xc0, 0x13, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x08, 0x36, 0x00, 0x68, + 0x20, 0xd3, 0x00, 0x01, 0xb5, 0x00, 0x6c, 0xc4, 0x65, 0x06, 0xa0, 0x13, + 0x01, 0xbc, 0x60, 0x03, 0x00, 0x08, 0x34, 0x00, 0x20, 0xe0, 0xbe, 0x09, + 0x00, 0x02, 0x03, 0x90, 0x5e, 0x02, 0xf0, 0x00, 0x13, 0x03, 0xa2, 0x5e, + 0x02, 0xf0, 0x01, 0xf0, 0x02, 0x02, 0x00, 0xbf, 0x00, 0x01, 0xba, 0x02, + 0x03, 0xc5, 0x73, 0x00, 0x01, 0xe3, 0x00, 0x68, 0x2f, 0x63, 0x00, 0x01, + 0xbe, 0x00, 0xe8, 0x44, 0x65, 0x7b, 0x17, 0xa1, 0x00, 0x6d, 0x5e, 0x85, + 0x7a, 0xe1, 0xe3, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x0b, 0xd8, 0x00, 0x68, + 0x2d, 0x93, 0x00, 0x01, 0xe3, 0x02, 0x82, 0xc1, 0x07, 0x00, 0x01, 0xe3, + 0x02, 0x80, 0x42, 0x03, 0x00, 0x01, 0xe3, 0x02, 0x85, 0xc5, 0x23, 0x00, + 0x01, 0xe3, 0x02, 0x86, 0x40, 0x37, 0x00, 0x01, 0xe3, 0x01, 0x81, 0xe0, + 0x06, 0xf5, 0x77, 0xab, 0x00, 0xb0, 0x2d, 0x97, 0x00, 0x17, 0xa1, 0x01, + 0xbc, 0x60, 0x2f, 0x10, 0x37, 0xa2, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x17, + 0xa3, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x13, 0x1b, 0x00, 0xb0, 0x2d, 0x9b, + 0x00, 0x17, 0xa1, 0x01, 0xbc, 0x60, 0x2f, 0x17, 0x37, 0xa2, 0x01, 0xbc, + 0x60, 0x03, 0x00, 0x17, 0xa3, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x13, 0x29, + 0x01, 0xbc, 0x60, 0x13, 0x1a, 0x17, 0xa1, 0x00, 0x02, 0x5e, 0x02, 0xf0, + 0x00, 0xce, 0x00, 0xb0, 0x40, 0x67, 0x04, 0x17, 0xa2, 0x00, 0x02, 0x5e, + 0x02, 0xf0, 0x00, 0xd4, 0x00, 0xe0, 0x44, 0x67, 0x00, 0xd7, 0xa1, 0x00, + 0x6c, 0xc4, 0x66, 0xf4, 0x21, 0xd1, 0x01, 0xbc, 0x60, 0x13, 0x0e, 0xd7, + 0xa1, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xce, 0x00, 0xa0, 0x40, 0x67, + 0x3f, 0xf7, 0xa2, 0x01, 0xbc, 0x60, 0x13, 0x14, 0xd7, 0xa1, 0x01, 0xbc, + 0x62, 0x03, 0x00, 0x17, 0xa3, 0x00, 0xb0, 0x5e, 0x8a, 0xf4, 0x77, 0xa2, + 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xd4, 0x00, 0xb0, 0x2d, 0x97, 0x00, + 0x17, 0xa1, 0x01, 0xbc, 0x60, 0x2f, 0x0c, 0xf7, 0xa2, 0x01, 0xbc, 0x60, + 0x03, 0x00, 0x17, 0xa3, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x13, 0x1b, 0x00, + 0xb0, 0x2d, 0x9b, 0x00, 0x17, 0xa1, 0x01, 0xbc, 0x60, 0x2f, 0x13, 0x77, + 0xa2, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x17, 0xa3, 0x00, 0x02, 0x5e, 0x02, + 0xf0, 0x13, 0x29, 0x01, 0x81, 0xe0, 0x02, 0xf5, 0x77, 0xab, 0x01, 0xbc, + 0x60, 0x03, 0x00, 0x0b, 0x64, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0e, 0x19, + 0x02, 0x02, 0x00, 0xbf, 0x00, 0x01, 0xef, 0x02, 0x84, 0xde, 0xaf, 0x00, + 0x01, 0xea, 0x02, 0x03, 0x5e, 0xb7, 0x00, 0x01, 0xef, 0x00, 0x02, 0x5e, + 0x02, 0xf0, 0x11, 0x02, 0x02, 0x03, 0x5e, 0xb7, 0x00, 0x01, 0xef, 0x03, + 0xbf, 0xde, 0x02, 0xf0, 0x00, 0x02, 0x02, 0x03, 0x5e, 0xb7, 0x00, 0x01, + 0xed, 0x02, 0x04, 0x80, 0xc7, 0x00, 0x01, 0xef, 0x02, 0x80, 0x5e, 0xff, + 0x00, 0x01, 0xef, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x10, 0xc3, 0x03, 0xbf, + 0xde, 0x02, 0xf0, 0x00, 0x02, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0f, 0x0a, + 0x02, 0x00, 0x42, 0x1f, 0x00, 0x02, 0x07, 0x00, 0x68, 0x42, 0xf3, 0x00, + 0x01, 0xf3, 0x00, 0x6d, 0x42, 0xf3, 0x00, 0x42, 0x07, 0x01, 0x14, 0x00, + 0x63, 0x00, 0x17, 0xa1, 0x00, 0xb0, 0x5e, 0x87, 0x00, 0x17, 0xa2, 0x03, + 0xa2, 0x5e, 0x02, 0xf0, 0x01, 0xfc, 0x01, 0x83, 0xe0, 0x02, 0x0d, 0x90, + 0x6c, 0x03, 0x14, 0x5e, 0x02, 0xf0, 0x02, 0x09, 0x00, 0x6e, 0xc4, 0x56, + 0x80, 0x62, 0x09, 0x02, 0x81, 0x45, 0x23, 0x00, 0x02, 0x09, 0x00, 0x6e, + 0x5e, 0x87, 0x00, 0x62, 0x07, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x77, 0xa2, + 0x00, 0x88, 0x60, 0x06, 0xf4, 0x57, 0xa3, 0x00, 0x88, 0x5e, 0x8b, 0x01, + 0x00, 0x18, 0x00, 0xe8, 0x5e, 0x8b, 0x00, 0x37, 0xa2, 0x00, 0x20, 0xc2, + 0x8e, 0xf4, 0x62, 0x02, 0x00, 0x6a, 0xde, 0x86, 0xf4, 0x41, 0xfc, 0x03, + 0xbf, 0xde, 0x02, 0xf0, 0x02, 0x07, 0x00, 0x90, 0x00, 0x63, 0x01, 0x01, + 0x65, 0x00, 0x80, 0x85, 0x97, 0x02, 0x17, 0xa1, 0x00, 0xe0, 0x64, 0x82, + 0x0d, 0xa1, 0x66, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0e, 0xc1, 0x03, 0xbf, + 0xde, 0x02, 0xf0, 0x02, 0x33, 0x01, 0x82, 0x60, 0x02, 0x09, 0x10, 0x48, + 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x00, 0x02, 0x01, 0xbc, 0x60, 0x03, 0x00, + 0x11, 0x15, 0x00, 0xb0, 0x01, 0x7f, 0x00, 0x17, 0xa6, 0x03, 0x1f, 0x5e, + 0x02, 0xf0, 0x02, 0x18, 0x02, 0x03, 0x00, 0xc3, 0x00, 0x02, 0x0e, 0x00, + 0x20, 0xc2, 0x8f, 0x02, 0x02, 0x12, 0x03, 0x25, 0x5e, 0x02, 0xf0, 0x02, + 0x18, 0x00, 0x20, 0xc2, 0x8f, 0x02, 0x02, 0x12, 0x00, 0x68, 0x81, 0x53, + 0xff, 0xe0, 0x13, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x02, 0x14, 0x01, 0x94, + 0x60, 0x13, 0x00, 0x00, 0x18, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x02, 0x33, + 0x03, 0x9e, 0xde, 0x02, 0xf0, 0x02, 0x17, 0x00, 0x68, 0xde, 0x98, 0x0b, + 0xc2, 0x17, 0x02, 0x01, 0x41, 0x1f, 0x00, 0x0c, 0x86, 0x01, 0x85, 0x60, + 0x02, 0x09, 0x10, 0x48, 0x00, 0x68, 0x5e, 0x98, 0x0b, 0xc2, 0x1c, 0x00, + 0x69, 0x5e, 0x9f, 0x00, 0x62, 0x38, 0x02, 0x98, 0x42, 0x8f, 0x00, 0x02, + 0x1c, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x02, 0x38, 0x02, 0x01, 0x41, 0x1f, + 0x00, 0x0c, 0x86, 0x02, 0x04, 0x00, 0xbf, 0x00, 0x02, 0x23, 0x02, 0x18, + 0x42, 0x8f, 0x00, 0x0c, 0x86, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0e, 0xa3, + 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0e, 0xc1, 0x01, 0x94, 0x05, 0x87, 0x00, + 0x00, 0x18, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x02, 0x33, 0x02, 0x00, 0x13, + 0xbb, 0x00, 0x02, 0x2c, 0x02, 0x00, 0x15, 0x6b, 0x00, 0x02, 0x2f, 0x00, + 0xb0, 0x13, 0x47, 0x00, 0x17, 0xa1, 0x00, 0x68, 0xde, 0x84, 0xa7, 0xa2, + 0x2c, 0x00, 0xb0, 0x13, 0x4b, 0x00, 0x17, 0xa1, 0x00, 0x68, 0xde, 0x84, + 0xa7, 0xc2, 0x2c, 0x00, 0xb0, 0x13, 0x4f, 0x00, 0x17, 0xa1, 0x00, 0x68, + 0xde, 0x84, 0xa7, 0xe2, 0x2c, 0x02, 0x9e, 0x13, 0x97, 0x00, 0x02, 0x2f, + 0x02, 0x01, 0xc2, 0x8f, 0x00, 0x02, 0x31, 0x01, 0x94, 0x60, 0x0f, 0x00, + 0x00, 0x18, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x02, 0x33, 0x02, 0x01, 0xc2, + 0x8f, 0x00, 0x02, 0x31, 0x01, 0x80, 0x60, 0x06, 0x0d, 0x90, 0x6c, 0x02, + 0x00, 0xc2, 0x8f, 0x00, 0x0c, 0x86, 0x01, 0x94, 0x60, 0x07, 0x00, 0x00, + 0x18, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x01, 0x83, 0x02, 0x04, 0x00, 0xbf, + 0x00, 0x02, 0x68, 0x02, 0x85, 0x00, 0x63, 0x00, 0x02, 0x68, 0x01, 0x83, + 0xe0, 0x06, 0x0d, 0x90, 0x6c, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x02, 0x68, + 0x01, 0xbc, 0x60, 0x03, 0x18, 0x10, 0x60, 0x01, 0x29, 0x50, 0x0b, 0x00, + 0x17, 0x92, 0x00, 0xb0, 0x01, 0x7b, 0x00, 0x10, 0x65, 0x00, 0x68, 0x00, + 0xeb, 0x00, 0x02, 0x41, 0x00, 0x88, 0x5a, 0x13, 0x01, 0x17, 0xa1, 0x00, + 0xe8, 0x44, 0x66, 0xf4, 0x37, 0xa1, 0x00, 0x6e, 0xde, 0x84, 0x07, 0x42, + 0x41, 0x00, 0xe0, 0x02, 0x9b, 0x00, 0x20, 0xa6, 0x03, 0xbf, 0xde, 0x02, + 0xf0, 0x06, 0xae, 0x01, 0x90, 0x60, 0x12, 0x09, 0x10, 0x48, 0x01, 0x94, + 0x60, 0x1f, 0x00, 0x00, 0x18, 0x01, 0x08, 0x5a, 0x0f, 0x00, 0x17, 0x81, + 0x01, 0x88, 0x5e, 0x06, 0x81, 0x54, 0x0a, 0x01, 0x34, 0x5a, 0x0f, 0x00, + 0x17, 0x80, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xdb, 0x00, 0xb0, 0x01, + 0x7b, 0x00, 0x10, 0x65, 0x00, 0xb0, 0x56, 0x23, 0x00, 0x17, 0xa1, 0x00, + 0xe0, 0x5e, 0x86, 0xa0, 0x97, 0xa1, 0x00, 0xe8, 0x5e, 0x84, 0x00, 0xf4, + 0x03, 0x00, 0xe8, 0x5e, 0x84, 0x00, 0xf4, 0x16, 0x00, 0xb0, 0x5a, 0x03, + 0x00, 0x14, 0x13, 0x00, 0xb0, 0x5a, 0x07, 0x00, 0x14, 0x14, 0x00, 0xb0, + 0x5a, 0x0b, 0x00, 0x14, 0x15, 0x00, 0x68, 0xde, 0x07, 0x00, 0x42, 0x59, + 0x00, 0xe8, 0x00, 0x97, 0x00, 0x57, 0xa1, 0x01, 0xbc, 0x5e, 0x86, 0xf0, + 0x14, 0x1b, 0x01, 0x7c, 0x5e, 0x87, 0x00, 0xf4, 0x1c, 0x00, 0xb0, 0x20, + 0x5f, 0x00, 0x17, 0x81, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0d, 0x3f, 0x00, + 0xb0, 0x01, 0x7b, 0x00, 0x10, 0x65, 0x01, 0x08, 0x5a, 0x0f, 0x00, 0x17, + 0x81, 0x00, 0xb0, 0x5e, 0x87, 0x00, 0x14, 0x1e, 0x03, 0xbf, 0xde, 0x02, + 0xf0, 0x02, 0x5c, 0x00, 0xb0, 0x56, 0x17, 0x00, 0x14, 0x1b, 0x00, 0xb0, + 0x56, 0x1b, 0x00, 0x14, 0x1c, 0x00, 0xb0, 0x54, 0x13, 0x00, 0x14, 0x1e, + 0x00, 0xb0, 0x50, 0x13, 0x00, 0x10, 0x86, 0x00, 0x6d, 0x00, 0xa7, 0x00, + 0x82, 0x62, 0x01, 0x90, 0x01, 0x63, 0x00, 0x10, 0x8a, 0x00, 0xb0, 0x41, + 0x8f, 0x00, 0x10, 0x62, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x11, 0xb1, 0x00, + 0xb0, 0x42, 0x2b, 0x00, 0x14, 0x06, 0x01, 0xbc, 0x60, 0x03, 0x18, 0x17, + 0xa1, 0x00, 0x6d, 0xc1, 0x8c, 0x20, 0x02, 0x65, 0x01, 0xbc, 0x60, 0x03, + 0x02, 0x97, 0xa1, 0x00, 0xe0, 0x5e, 0x84, 0x03, 0x77, 0xa1, 0x00, 0xe0, + 0x5e, 0x86, 0xb0, 0x11, 0x1d, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x02, 0xdd, + 0x02, 0x03, 0x00, 0xc7, 0x00, 0x02, 0x78, 0x02, 0x0c, 0xd0, 0x03, 0x00, + 0x02, 0x78, 0x01, 0x14, 0x00, 0x63, 0x00, 0x17, 0xa1, 0x02, 0x85, 0x00, + 0x63, 0x00, 0x02, 0x78, 0x00, 0x80, 0xde, 0x87, 0x01, 0xf7, 0xa2, 0x01, + 0xbc, 0x60, 0x1b, 0x02, 0x57, 0xa2, 0x00, 0xe0, 0x5e, 0x8a, 0x0d, 0xb0, + 0x65, 0x00, 0xb0, 0x41, 0x97, 0x00, 0x14, 0x32, 0x00, 0x80, 0xde, 0x87, + 0x00, 0xb7, 0xa2, 0x01, 0xbc, 0x60, 0x17, 0x1f, 0xd7, 0xa2, 0x00, 0xe0, + 0x5e, 0x8a, 0x0d, 0xb0, 0x64, 0x00, 0xb0, 0x41, 0x93, 0x00, 0x14, 0x33, + 0x00, 0x68, 0xd8, 0x13, 0x00, 0x02, 0x82, 0x02, 0x00, 0x5a, 0x1b, 0x00, + 0x02, 0x7a, 0x01, 0x80, 0x60, 0x06, 0x84, 0xf4, 0x27, 0x03, 0xbf, 0xde, + 0x02, 0xf0, 0x05, 0xce, 0x02, 0x01, 0xd0, 0x03, 0x00, 0x02, 0x7a, 0x00, + 0xb0, 0x50, 0x9b, 0x00, 0x14, 0x2f, 0x02, 0x81, 0xd0, 0xc7, 0x00, 0x02, + 0xfd, 0x01, 0x0b, 0xd0, 0x03, 0x00, 0x17, 0xa1, 0x01, 0x3c, 0x50, 0x2b, + 0x00, 0x17, 0xa2, 0x01, 0x8c, 0x5e, 0x86, 0xf4, 0x57, 0xa1, 0x01, 0x48, + 0x01, 0x43, 0x00, 0x17, 0xa2, 0x00, 0x68, 0x5e, 0x86, 0xf4, 0x42, 0x82, + 0x01, 0x91, 0x60, 0x12, 0x84, 0xf4, 0x27, 0x03, 0xbf, 0xde, 0x02, 0xf0, + 0x03, 0x00, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x01, 0x95, 0x00, 0xb0, 0x50, + 0x13, 0x00, 0x10, 0x86, 0x00, 0xb0, 0x50, 0x17, 0x00, 0x10, 0x8a, 0x00, + 0x68, 0x2f, 0xbf, 0x00, 0x02, 0x8d, 0x02, 0x91, 0xd0, 0x17, 0x00, 0x02, + 0x8b, 0x02, 0x91, 0xd0, 0x1b, 0x00, 0x02, 0x8b, 0x02, 0x91, 0xd0, 0x1f, + 0x00, 0x02, 0x8b, 0x02, 0x91, 0xd0, 0x23, 0x00, 0x02, 0x8b, 0x03, 0xbf, + 0xde, 0x02, 0xf0, 0x02, 0x8d, 0x01, 0x91, 0x60, 0x02, 0x84, 0xf4, 0x27, + 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x03, 0x00, 0x03, 0xa2, 0x5e, 0x02, 0xf0, + 0x02, 0xbc, 0x02, 0x0c, 0xd0, 0x03, 0x00, 0x02, 0xa9, 0x02, 0x03, 0x00, + 0xc7, 0x00, 0x02, 0xa8, 0x00, 0xb0, 0x50, 0xcb, 0x00, 0x10, 0x65, 0x00, + 0x02, 0x5e, 0x02, 0xf0, 0x12, 0x4a, 0x02, 0x03, 0x50, 0xc7, 0x00, 0x02, + 0x96, 0x01, 0xbc, 0x60, 0x23, 0x00, 0x97, 0xa1, 0x00, 0xa8, 0x50, 0x02, + 0xf4, 0x34, 0x00, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x02, 0xad, 0x02, 0x04, + 0x81, 0xab, 0x00, 0x02, 0x98, 0x00, 0x6d, 0x42, 0x46, 0xc0, 0x80, 0x13, + 0x00, 0xb0, 0x5a, 0x13, 0x00, 0x17, 0x80, 0x00, 0x02, 0x5e, 0x02, 0xf0, + 0x00, 0xe5, 0x00, 0xb0, 0x54, 0x0f, 0x00, 0x14, 0x1e, 0x00, 0xb0, 0x5a, + 0x07, 0x00, 0x17, 0xa1, 0x00, 0xb0, 0x5a, 0x13, 0x00, 0x17, 0x80, 0x01, + 0x87, 0x5a, 0x16, 0xf0, 0x17, 0x80, 0x00, 0xb0, 0x41, 0x8f, 0x00, 0x10, + 0x65, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x11, 0xba, 0x00, 0xe0, 0x5e, 0x86, + 0xa0, 0x74, 0x03, 0x02, 0x87, 0x5e, 0x03, 0x00, 0x02, 0xa7, 0x01, 0x09, + 0xde, 0x03, 0x00, 0x17, 0xa3, 0x00, 0xe0, 0x5e, 0x8b, 0x00, 0x77, 0xa2, + 0x00, 0xe0, 0x5e, 0x8a, 0xf4, 0x77, 0xa2, 0x00, 0x88, 0x5e, 0x8b, 0x00, + 0x37, 0xa1, 0x00, 0xe0, 0x5e, 0x86, 0xf4, 0x50, 0x89, 0x03, 0xbf, 0xde, + 0x02, 0xf0, 0x02, 0xad, 0x00, 0x6d, 0x42, 0x4a, 0x84, 0x80, 0x13, 0x01, + 0x06, 0x50, 0x07, 0x00, 0x17, 0xa1, 0x02, 0x8c, 0xd0, 0x03, 0x00, 0x02, + 0xac, 0x00, 0x68, 0x5e, 0x87, 0x00, 0x02, 0xad, 0x01, 0x82, 0xde, 0x86, + 0x86, 0x34, 0x31, 0x01, 0x82, 0x60, 0x02, 0x86, 0x34, 0x31, 0x00, 0x20, + 0xd0, 0x03, 0x04, 0x02, 0xb3, 0x00, 0xb0, 0x50, 0x4f, 0x00, 0x11, 0xf2, + 0x00, 0xb0, 0x50, 0x53, 0x00, 0x11, 0xf3, 0x00, 0xb0, 0x50, 0x57, 0x00, + 0x11, 0xf4, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x91, 0xf0, 0x02, 0x01, 0x01, + 0xb3, 0x00, 0x02, 0xb5, 0x01, 0x87, 0xe0, 0x06, 0xf5, 0x77, 0xab, 0x03, + 0x94, 0x5e, 0x02, 0xf0, 0x02, 0xbc, 0x02, 0x06, 0x50, 0x03, 0x00, 0x02, + 0xb8, 0x02, 0x87, 0xde, 0xaf, 0x00, 0x02, 0xbc, 0x02, 0x81, 0x50, 0x03, + 0x00, 0x05, 0x0d, 0x02, 0x02, 0xd0, 0xc7, 0x00, 0x02, 0xbb, 0x02, 0x08, + 0x50, 0x2b, 0x00, 0x02, 0xbc, 0x02, 0x85, 0xd0, 0x03, 0x00, 0x05, 0x24, + 0x01, 0x90, 0x60, 0x12, 0x86, 0x34, 0x31, 0x03, 0xa2, 0x5e, 0x02, 0xf0, + 0x02, 0xc9, 0x00, 0xb0, 0x50, 0x0f, 0x00, 0x11, 0x16, 0x02, 0x02, 0xd0, + 0xc7, 0x00, 0x02, 0xc1, 0x00, 0xb0, 0x50, 0x5b, 0x00, 0x11, 0x16, 0x02, + 0x82, 0xd0, 0x03, 0x00, 0x02, 0xc9, 0x02, 0x81, 0x47, 0xc3, 0x00, 0x02, + 0xc2, 0x02, 0x80, 0x50, 0x4f, 0x00, 0x02, 0xc7, 0x00, 0x20, 0x47, 0xc7, + 0x3f, 0x82, 0xc9, 0x00, 0x20, 0xc7, 0xdb, 0x00, 0xc2, 0xff, 0x03, 0xbf, + 0xde, 0x02, 0xf0, 0x02, 0xc9, 0x03, 0xa5, 0x5e, 0x02, 0xf0, 0x02, 0xc9, + 0x02, 0x80, 0xc7, 0xdf, 0x00, 0x02, 0xff, 0x02, 0x88, 0x50, 0xc7, 0x00, + 0x02, 0xe3, 0x01, 0x29, 0x50, 0x0b, 0x00, 0x17, 0x92, 0x02, 0x03, 0x00, + 0xc7, 0x00, 0x02, 0xd6, 0x02, 0x0c, 0xd0, 0x03, 0x00, 0x02, 0xd6, 0x02, + 0x83, 0x50, 0xc7, 0x00, 0x02, 0xd6, 0x00, 0xb0, 0x50, 0xcb, 0x00, 0x10, + 0x65, 0x01, 0x38, 0x5a, 0x13, 0x00, 0x17, 0x80, 0x01, 0x82, 0x5a, 0x17, + 0x00, 0x57, 0x81, 0x01, 0x0e, 0x5a, 0x13, 0x00, 0x17, 0xa1, 0x01, 0x8e, + 0x5e, 0x86, 0xf0, 0x37, 0x81, 0x02, 0x02, 0xd0, 0xc7, 0x00, 0x02, 0xe3, + 0x00, 0xb0, 0x50, 0x1b, 0x00, 0x10, 0x8a, 0x03, 0xbf, 0xde, 0x02, 0xf0, + 0x02, 0xe3, 0x02, 0x82, 0xd0, 0xc7, 0x00, 0x02, 0xdd, 0x01, 0x38, 0x50, + 0x27, 0x00, 0x17, 0x80, 0x01, 0x08, 0x50, 0x13, 0x00, 0x17, 0x81, 0x01, + 0x02, 0x50, 0x13, 0x00, 0x17, 0xa1, 0x01, 0x82, 0x5e, 0x86, 0xf0, 0x37, + 0x81, 0x00, 0xb0, 0x50, 0x7f, 0x00, 0x10, 0x89, 0x03, 0xbf, 0xde, 0x02, + 0xf0, 0x02, 0xe3, 0x01, 0x38, 0x50, 0x6f, 0x00, 0x17, 0x80, 0x01, 0x08, + 0x50, 0x2b, 0x00, 0x17, 0x81, 0x01, 0x06, 0xd0, 0x07, 0x00, 0x17, 0xa1, + 0x01, 0x82, 0x5e, 0x86, 0xf0, 0x37, 0x81, 0x00, 0xb0, 0x50, 0x1b, 0x00, + 0x10, 0x8a, 0x00, 0xb0, 0x50, 0x83, 0x00, 0x10, 0x89, 0x00, 0x02, 0x5e, + 0x02, 0xf0, 0x00, 0xdb, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0d, 0x32, 0x01, + 0x02, 0x42, 0x1b, 0x00, 0x17, 0x81, 0x01, 0x82, 0x5e, 0x05, 0x02, 0xf7, + 0x81, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0d, 0x3f, 0x00, 0xe0, 0x5e, 0x84, + 0x01, 0x17, 0xa1, 0x01, 0xd9, 0xde, 0x87, 0x00, 0x10, 0x83, 0x02, 0x00, + 0x01, 0xb3, 0x00, 0x02, 0xec, 0x01, 0xe0, 0x01, 0xb7, 0x00, 0x10, 0x83, + 0x01, 0xbc, 0x61, 0x37, 0x03, 0xb7, 0x91, 0x00, 0x68, 0x5e, 0x4b, 0x02, + 0x83, 0x03, 0x02, 0x04, 0x00, 0xbf, 0x00, 0x02, 0xf1, 0x02, 0x87, 0x50, + 0x03, 0x00, 0x02, 0xf1, 0x03, 0x94, 0x5e, 0x02, 0xf0, 0x02, 0xf2, 0x03, + 0x22, 0x5e, 0x02, 0xf0, 0x02, 0xf4, 0x01, 0xbc, 0x61, 0x03, 0x00, 0x30, + 0x80, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x00, 0x02, 0x01, 0xbc, 0x61, 0x33, + 0x03, 0xb7, 0x91, 0x03, 0x2b, 0xde, 0x02, 0xf0, 0x02, 0xfa, 0x00, 0x90, + 0x00, 0x63, 0x00, 0x97, 0xa1, 0x00, 0xe0, 0x64, 0x82, 0xf4, 0x30, 0x65, + 0x00, 0x6e, 0x5a, 0x13, 0x00, 0x22, 0xfa, 0x01, 0x88, 0xe0, 0x06, 0xf2, + 0x37, 0x91, 0x00, 0x68, 0xde, 0x4b, 0x04, 0x82, 0xfc, 0x01, 0xbc, 0x61, + 0xbb, 0x03, 0xb7, 0x91, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x03, 0x03, 0x01, + 0x91, 0x60, 0x0e, 0x84, 0xf4, 0x27, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x03, + 0x00, 0x01, 0x91, 0x60, 0x06, 0x84, 0xf4, 0x27, 0x01, 0xbc, 0x60, 0x03, + 0x00, 0x10, 0xb4, 0x01, 0x81, 0xe0, 0x06, 0x86, 0x34, 0x31, 0x03, 0xbf, + 0xde, 0x02, 0xf0, 0x05, 0xce, 0x03, 0xc4, 0xde, 0x02, 0xf0, 0x0b, 0x6a, + 0x02, 0x06, 0x50, 0x03, 0x00, 0x03, 0x0b, 0x02, 0x07, 0xde, 0xaf, 0x00, + 0x03, 0x0b, 0x01, 0xbc, 0x61, 0x03, 0x00, 0x37, 0x91, 0x02, 0x07, 0x50, + 0x03, 0x00, 0x03, 0x09, 0x01, 0xbc, 0x62, 0x03, 0x00, 0xf7, 0x91, 0x00, + 0xe0, 0x01, 0x0b, 0x00, 0x20, 0x42, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x03, + 0x0c, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x20, 0x42, 0x00, 0xb0, 0x5e, 0x47, + 0x00, 0x10, 0x80, 0x02, 0x00, 0x01, 0xb3, 0x00, 0x03, 0x12, 0x01, 0x82, + 0x60, 0x06, 0x10, 0x30, 0x81, 0x02, 0x01, 0x81, 0xb3, 0x00, 0x03, 0x12, + 0x01, 0xbc, 0x60, 0x03, 0x05, 0xb7, 0x93, 0x03, 0xbf, 0xde, 0x02, 0xf0, + 0x06, 0xe0, 0x02, 0x04, 0x00, 0xbf, 0x00, 0x03, 0x19, 0x00, 0xb0, 0x05, + 0x8b, 0x00, 0x10, 0x64, 0x00, 0x6e, 0x45, 0x17, 0x00, 0x00, 0x02, 0x00, + 0x68, 0xde, 0x4b, 0x02, 0x83, 0x18, 0x00, 0xa0, 0x44, 0xb4, 0x2a, 0x31, + 0x45, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x00, 0x02, 0x00, 0x02, 0x5e, 0x02, + 0xf0, 0x0d, 0x4c, 0x00, 0x68, 0xc5, 0x17, 0x00, 0x00, 0x02, 0x03, 0xd0, + 0x5e, 0x02, 0xf0, 0x03, 0x1d, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0d, 0x4c, + 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x00, 0x02, 0x01, 0x83, 0x60, 0x02, 0xf7, + 0xf7, 0xbf, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x90, 0x04, 0x00, 0xa8, 0x41, + 0x23, 0x30, 0x10, 0x48, 0x01, 0xbc, 0x62, 0x0f, 0x00, 0x11, 0xe0, 0x01, + 0x81, 0x60, 0x02, 0xf5, 0xd7, 0xae, 0x02, 0x02, 0x00, 0xbf, 0x00, 0x03, + 0x31, 0x00, 0x68, 0xde, 0x4b, 0x02, 0x03, 0x25, 0x00, 0x02, 0x5e, 0x02, + 0xf0, 0x13, 0x15, 0x00, 0x68, 0xde, 0x4b, 0x06, 0x23, 0x31, 0x02, 0x04, + 0x5e, 0xb3, 0x00, 0x03, 0x31, 0x02, 0x00, 0x45, 0x6f, 0x00, 0x03, 0x31, + 0x00, 0xe8, 0x44, 0x65, 0x56, 0xf7, 0xa1, 0x00, 0xe8, 0x2a, 0xae, 0xf4, + 0x37, 0xa1, 0x00, 0x69, 0x5e, 0x87, 0x08, 0x23, 0x31, 0x01, 0x83, 0xe0, + 0x02, 0x2b, 0x91, 0x5c, 0x02, 0x07, 0x01, 0xab, 0x00, 0x03, 0x2e, 0x01, + 0x80, 0xe0, 0x02, 0x09, 0xd0, 0x4e, 0x01, 0xbc, 0x60, 0x03, 0x18, 0x51, + 0x78, 0x00, 0xb0, 0x45, 0xe3, 0x00, 0x18, 0x00, 0x01, 0x80, 0x60, 0x02, + 0x2f, 0x31, 0x79, 0x01, 0x87, 0xe0, 0x02, 0xf5, 0x77, 0xab, 0x00, 0x68, + 0x81, 0x0b, 0x00, 0x23, 0x34, 0x00, 0xb0, 0x44, 0x67, 0x00, 0x00, 0x43, + 0x01, 0x82, 0xe0, 0x06, 0x09, 0x10, 0x48, 0x01, 0x81, 0x60, 0x02, 0x0d, + 0x90, 0x6c, 0x01, 0x82, 0x60, 0x06, 0x28, 0x91, 0x44, 0x01, 0x88, 0xe0, + 0x02, 0x0b, 0x90, 0x5c, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0f, 0x38, 0x01, + 0x85, 0xe0, 0x02, 0xf7, 0xf7, 0xbf, 0x02, 0x88, 0x42, 0x1b, 0x00, 0x03, + 0x3c, 0x01, 0x85, 0xe0, 0x06, 0xf7, 0xf7, 0xbf, 0x03, 0x5b, 0x5e, 0x02, + 0xf0, 0x03, 0x3e, 0x01, 0xbc, 0x60, 0x13, 0x00, 0x10, 0x43, 0x01, 0xbc, + 0x60, 0x03, 0x00, 0x10, 0x85, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x10, 0xb8, + 0x00, 0x88, 0x50, 0x77, 0x00, 0x90, 0xb9, 0x02, 0x08, 0x50, 0x2b, 0x00, + 0x03, 0x45, 0x01, 0x38, 0x50, 0x73, 0x00, 0x17, 0xa1, 0x01, 0x7c, 0x50, + 0x6e, 0xf4, 0x37, 0xa1, 0x00, 0x88, 0x5e, 0x87, 0x00, 0x90, 0xb9, 0x02, + 0x00, 0x47, 0xa3, 0x00, 0x03, 0x49, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x11, + 0xea, 0x00, 0x90, 0x42, 0xe7, 0x00, 0x91, 0xeb, 0x00, 0xb0, 0x47, 0xa3, + 0x00, 0xd1, 0xe8, 0x02, 0x00, 0x47, 0xb3, 0x00, 0x03, 0x4b, 0x01, 0xb0, + 0xe0, 0x8e, 0x3d, 0x91, 0xec, 0x01, 0xd2, 0xe0, 0x02, 0x10, 0x90, 0x84, + 0x03, 0xa9, 0x5e, 0x02, 0xf0, 0x04, 0x37, 0x01, 0xbc, 0x60, 0x03, 0x00, + 0x10, 0x84, 0x00, 0xe0, 0x01, 0xc3, 0x00, 0x20, 0x70, 0x02, 0x81, 0x81, + 0xb3, 0x00, 0x03, 0x81, 0x03, 0x20, 0xde, 0x02, 0xf0, 0x03, 0x9d, 0x01, + 0x81, 0x60, 0x06, 0xf5, 0xb7, 0xad, 0x00, 0x68, 0xde, 0x4b, 0x04, 0xa3, + 0x64, 0x02, 0x03, 0xde, 0xbb, 0x00, 0x03, 0x56, 0x00, 0xe0, 0x2c, 0x8f, + 0x00, 0x10, 0x65, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x03, 0x57, 0x01, 0xbc, + 0x60, 0x23, 0x01, 0xd0, 0x65, 0x00, 0xa0, 0x5e, 0x7f, 0xfe, 0x10, 0xec, + 0x00, 0xb0, 0x5a, 0x03, 0x00, 0x10, 0xed, 0x00, 0xb0, 0x5a, 0x07, 0x00, + 0x10, 0xee, 0x00, 0xb0, 0x5a, 0x0b, 0x00, 0x10, 0xef, 0x00, 0xb0, 0x5a, + 0x0f, 0x00, 0x10, 0xf0, 0x01, 0xbc, 0x63, 0xff, 0x1e, 0xf0, 0x84, 0x01, + 0xbc, 0x60, 0x03, 0x00, 0x30, 0x85, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x10, + 0xb4, 0x01, 0xbc, 0x60, 0x03, 0x01, 0xd0, 0xa6, 0x01, 0xbc, 0x60, 0x03, + 0x04, 0x50, 0xb5, 0x01, 0xbc, 0x60, 0x23, 0x04, 0xd0, 0xb4, 0x00, 0xe0, + 0x02, 0xaf, 0x00, 0x20, 0xab, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x03, 0xe5, + 0x00, 0x68, 0xde, 0x4b, 0x05, 0x23, 0x6a, 0x01, 0xbc, 0x60, 0x03, 0x00, + 0x10, 0xb4, 0x01, 0xbc, 0x60, 0x07, 0x15, 0xd0, 0xa6, 0x01, 0xbc, 0x60, + 0x03, 0x02, 0xd0, 0xb5, 0x01, 0xbc, 0x60, 0x23, 0x04, 0xd0, 0xb4, 0x03, + 0xbf, 0xde, 0x02, 0xf0, 0x03, 0x74, 0x00, 0x68, 0xde, 0x4b, 0x02, 0x43, + 0x81, 0x02, 0x85, 0xc3, 0x8f, 0x00, 0x03, 0x6d, 0x00, 0xe0, 0x5e, 0x27, + 0x00, 0x37, 0x89, 0x01, 0xda, 0x5e, 0x27, 0x00, 0x10, 0xee, 0x01, 0xbc, + 0x63, 0xff, 0x1f, 0xf0, 0xce, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x10, 0xb4, + 0x01, 0xbc, 0x60, 0x03, 0x00, 0xd0, 0xa6, 0x01, 0xbc, 0x60, 0x03, 0x03, + 0xd0, 0xb5, 0x01, 0xbc, 0x60, 0x23, 0x04, 0xd0, 0xb4, 0x00, 0xe0, 0x01, + 0xd3, 0x00, 0x20, 0x74, 0x01, 0xbc, 0x61, 0xff, 0x1f, 0xf0, 0x84, 0x01, + 0xbc, 0x60, 0x03, 0x00, 0x10, 0x85, 0x01, 0x84, 0x60, 0x07, 0x00, 0x11, + 0xe0, 0x02, 0x82, 0xde, 0xb3, 0x00, 0x04, 0xf4, 0x02, 0x04, 0x5e, 0xb3, + 0x00, 0x04, 0xf4, 0x01, 0x83, 0xe0, 0x06, 0x09, 0x10, 0x48, 0x00, 0xb0, + 0x41, 0x23, 0x00, 0x18, 0x00, 0x01, 0xbc, 0x60, 0x03, 0x06, 0xb7, 0x8e, + 0x01, 0x81, 0xe0, 0x06, 0xf5, 0xd7, 0xae, 0x00, 0xb0, 0x54, 0x13, 0x00, + 0x17, 0xa1, 0x00, 0xe0, 0x5e, 0x84, 0x01, 0x17, 0xa1, 0x00, 0x88, 0x5e, + 0x87, 0x00, 0x70, 0x83, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x04, 0xf4, 0x01, + 0xbc, 0x60, 0x03, 0x1f, 0xf0, 0x84, 0x01, 0x03, 0xde, 0x53, 0x00, 0x17, + 0xa2, 0x02, 0x00, 0x5e, 0xff, 0x00, 0x03, 0x85, 0x01, 0xbc, 0x60, 0x03, + 0x00, 0x37, 0xa2, 0x00, 0x68, 0x2b, 0x67, 0x00, 0x03, 0x87, 0x01, 0xbc, + 0x60, 0x03, 0x00, 0x37, 0xa2, 0x01, 0x86, 0x5e, 0x8a, 0x1c, 0x70, 0xe3, + 0x00, 0x6a, 0xc3, 0x93, 0x00, 0x03, 0x91, 0x00, 0xe8, 0x43, 0x90, 0x00, + 0xd0, 0xe4, 0x02, 0x02, 0x42, 0x1b, 0x00, 0x03, 0x8f, 0x00, 0x90, 0x00, + 0x1b, 0x00, 0x37, 0xa1, 0x00, 0x20, 0x42, 0x1b, 0x00, 0x43, 0x8e, 0x00, + 0xb0, 0x20, 0xaf, 0x00, 0x17, 0xa1, 0x00, 0xe0, 0x43, 0x92, 0xf4, 0x30, + 0xe4, 0x00, 0x69, 0xc3, 0x93, 0x00, 0x03, 0x91, 0x01, 0xbc, 0x60, 0x03, + 0x00, 0x10, 0xe4, 0x00, 0x68, 0x2b, 0x67, 0x00, 0x03, 0x93, 0x00, 0xe0, + 0x43, 0x91, 0x5b, 0xf0, 0xe4, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x10, 0xb4, + 0x01, 0xbc, 0x60, 0x03, 0x00, 0x10, 0xa6, 0x01, 0xbc, 0x60, 0x03, 0x02, + 0x10, 0xb5, 0x01, 0xbc, 0x60, 0x23, 0x04, 0xd0, 0xb4, 0x00, 0x68, 0x5e, + 0x4b, 0x06, 0xa3, 0x9b, 0x00, 0xe0, 0x01, 0xcb, 0x00, 0x20, 0x72, 0x01, + 0xbc, 0x60, 0x03, 0x00, 0x08, 0x37, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x03, + 0xe5, 0x00, 0xe0, 0x01, 0xcf, 0x00, 0x20, 0x73, 0x03, 0xbf, 0xde, 0x02, + 0xf0, 0x03, 0xe5, 0x03, 0x20, 0x5e, 0x02, 0xf0, 0x03, 0xec, 0x01, 0x81, + 0xe0, 0x02, 0x09, 0x10, 0x48, 0x00, 0xe0, 0x01, 0xd7, 0x00, 0x20, 0x75, + 0x03, 0x1e, 0xde, 0x02, 0xf0, 0x03, 0xcc, 0x01, 0xbc, 0x60, 0x03, 0x00, + 0x17, 0xa2, 0x00, 0x6a, 0x5e, 0x23, 0x00, 0x03, 0xa5, 0x01, 0x02, 0x42, + 0x8f, 0x00, 0x17, 0xa2, 0x01, 0x85, 0x5e, 0x8a, 0x09, 0x10, 0x48, 0x01, + 0x80, 0xe0, 0x06, 0x10, 0x30, 0x81, 0x02, 0x84, 0xde, 0x53, 0x00, 0x03, + 0xac, 0x00, 0xb0, 0x00, 0x77, 0x00, 0x17, 0xa1, 0x00, 0xe0, 0x5e, 0x84, + 0x04, 0x37, 0xa1, 0x00, 0x88, 0x5e, 0x87, 0x00, 0x57, 0xa1, 0x00, 0xe0, + 0x5e, 0x87, 0x0d, 0x57, 0xa1, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x03, 0xad, + 0x01, 0xbc, 0x60, 0x03, 0x0d, 0x57, 0xa1, 0x00, 0x68, 0x00, 0x27, 0x00, + 0x03, 0xcc, 0x00, 0xe0, 0x5e, 0x84, 0x01, 0xf7, 0xa1, 0x01, 0xbc, 0x60, + 0x23, 0x01, 0x50, 0x65, 0x00, 0x88, 0x41, 0x97, 0x00, 0x30, 0xb6, 0x01, + 0xbc, 0x60, 0x03, 0x00, 0x10, 0xb4, 0x00, 0x90, 0x5e, 0x87, 0x00, 0x50, + 0xa6, 0x01, 0xbc, 0x60, 0x03, 0x01, 0x10, 0xb5, 0x01, 0xbc, 0x60, 0x23, + 0x00, 0xb0, 0xb4, 0x03, 0x17, 0xde, 0x02, 0xf0, 0x03, 0xb5, 0x03, 0x97, + 0xde, 0x02, 0xf0, 0x03, 0xb6, 0x00, 0x20, 0xde, 0x87, 0x00, 0x43, 0xbf, + 0x00, 0x20, 0xde, 0x87, 0x00, 0x23, 0xbc, 0x01, 0xb8, 0x5e, 0x22, 0xd0, + 0x16, 0x80, 0x01, 0x80, 0x5e, 0x8a, 0xd0, 0x36, 0x81, 0x03, 0xbf, 0xde, + 0x02, 0xf0, 0x03, 0xc5, 0x01, 0xbc, 0x5e, 0x22, 0xd0, 0x16, 0x80, 0x01, + 0x84, 0x5e, 0x8a, 0xd0, 0x36, 0x81, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x03, + 0xc5, 0x00, 0x20, 0xde, 0x87, 0x00, 0x23, 0xc3, 0x01, 0xb8, 0x5e, 0x22, + 0xd0, 0x36, 0x81, 0x01, 0x80, 0x5e, 0x8a, 0xd0, 0x56, 0x82, 0x03, 0xbf, + 0xde, 0x02, 0xf0, 0x03, 0xc5, 0x01, 0xbc, 0x5e, 0x22, 0xd0, 0x36, 0x81, + 0x01, 0x84, 0x5e, 0x8a, 0xd0, 0x56, 0x82, 0x01, 0x88, 0x60, 0x02, 0xf4, + 0x30, 0xa8, 0x00, 0xb0, 0x5a, 0x03, 0x00, 0x10, 0xb0, 0x00, 0xb0, 0x5a, + 0x07, 0x00, 0x10, 0xb1, 0x02, 0x80, 0x42, 0xa3, 0x00, 0x03, 0xc8, 0x00, + 0xe0, 0x42, 0xa3, 0x00, 0x90, 0xa8, 0x00, 0xb0, 0x5a, 0x0b, 0x00, 0x10, + 0xb0, 0x00, 0xb0, 0x5a, 0x0f, 0x00, 0x10, 0xb1, 0x01, 0x87, 0x60, 0x06, + 0x10, 0x90, 0x84, 0x00, 0xe0, 0x5e, 0x27, 0x00, 0x37, 0x89, 0x01, 0xda, + 0x5e, 0x27, 0x00, 0x10, 0xee, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x10, 0xb4, + 0x01, 0xbc, 0x60, 0x03, 0x03, 0x50, 0xa6, 0x00, 0xb0, 0x00, 0x33, 0x00, + 0x10, 0xb5, 0x02, 0x84, 0xde, 0x53, 0x00, 0x03, 0xd6, 0x00, 0xe0, 0x60, + 0x68, 0x03, 0xb0, 0xa6, 0x00, 0xe0, 0x42, 0x98, 0x04, 0x30, 0xa6, 0x00, + 0xb0, 0x00, 0x37, 0x00, 0x10, 0xb5, 0x01, 0xbc, 0x60, 0x23, 0x04, 0xd0, + 0xb4, 0x01, 0x84, 0x60, 0x06, 0xf2, 0x97, 0x94, 0x01, 0x86, 0x60, 0x02, + 0x09, 0x10, 0x48, 0x03, 0x9e, 0xde, 0x02, 0xf0, 0x03, 0xe0, 0x02, 0x80, + 0x44, 0x1f, 0x00, 0x03, 0xe3, 0x00, 0xb0, 0x5e, 0x3f, 0x00, 0x11, 0x45, + 0x01, 0xbc, 0x60, 0x03, 0x00, 0x17, 0x8f, 0x00, 0xb0, 0x5e, 0x43, 0x00, + 0x17, 0x85, 0x00, 0xb0, 0x5e, 0x0f, 0x00, 0x17, 0x90, 0x03, 0xbf, 0xde, + 0x02, 0xf0, 0x03, 0xe3, 0x00, 0xb0, 0x5e, 0x0f, 0x00, 0x17, 0x85, 0x02, + 0x80, 0x44, 0x1f, 0x00, 0x03, 0xe3, 0x00, 0xa0, 0x44, 0xb6, 0xf0, 0xb1, + 0x45, 0x01, 0xbc, 0x60, 0x03, 0x01, 0x10, 0x42, 0x01, 0x83, 0x60, 0x06, + 0xf2, 0x97, 0x94, 0x01, 0x84, 0x60, 0x07, 0x00, 0x11, 0xe0, 0x03, 0xa0, + 0x5e, 0x02, 0xf0, 0x04, 0xf2, 0x02, 0x06, 0x5e, 0xaf, 0x00, 0x04, 0xf4, + 0x01, 0x86, 0xe0, 0x06, 0xf5, 0x77, 0xab, 0x01, 0xbc, 0x60, 0x03, 0x00, + 0x10, 0x80, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0b, 0x28, 0x03, 0xbf, 0xde, + 0x02, 0xf0, 0x06, 0x24, 0x03, 0xa1, 0x5e, 0x02, 0xf0, 0x04, 0x5e, 0x01, + 0x14, 0x00, 0x63, 0x00, 0x17, 0xa1, 0x00, 0x68, 0xde, 0x87, 0x00, 0xe3, + 0xf1, 0x01, 0x81, 0x60, 0x06, 0x09, 0x10, 0x48, 0x03, 0xbf, 0xde, 0x02, + 0xf0, 0x04, 0x5e, 0x01, 0x81, 0x60, 0x06, 0xf5, 0xd7, 0xae, 0x00, 0x20, + 0x60, 0x0e, 0x86, 0x24, 0x16, 0x01, 0x87, 0x60, 0x04, 0x03, 0x10, 0xa0, + 0x00, 0xb0, 0x00, 0x63, 0x00, 0x10, 0xb4, 0x01, 0xbc, 0x60, 0x03, 0x0b, + 0x10, 0xb5, 0x00, 0xb0, 0x00, 0x63, 0x00, 0xf0, 0xb4, 0x02, 0x03, 0x00, + 0xc7, 0x00, 0x04, 0x04, 0x02, 0x0c, 0xd0, 0x03, 0x00, 0x04, 0x04, 0x02, + 0x80, 0x50, 0xc7, 0x00, 0x03, 0xfc, 0x00, 0xb0, 0x54, 0x13, 0x00, 0x17, + 0xa1, 0x00, 0xe0, 0x5e, 0x86, 0x80, 0x74, 0x1a, 0x00, 0xb0, 0x50, 0x6b, + 0x00, 0x10, 0xe4, 0x00, 0xb0, 0x42, 0x13, 0x02, 0x10, 0x84, 0x02, 0x09, + 0x50, 0x2b, 0x00, 0x04, 0x04, 0x00, 0xb0, 0x42, 0x13, 0x00, 0x30, 0x84, + 0x01, 0xd2, 0xe0, 0x3a, 0xa0, 0x30, 0xe0, 0x02, 0x80, 0x50, 0xc7, 0x00, + 0x04, 0x0a, 0x01, 0xd2, 0xe0, 0x52, 0xa0, 0x30, 0xe0, 0x03, 0xbf, 0xde, + 0x02, 0xf0, 0x04, 0x0a, 0x02, 0x02, 0xd0, 0xc7, 0x00, 0x04, 0x0a, 0x00, + 0xb0, 0x50, 0x5f, 0x00, 0x10, 0xe0, 0x00, 0xb0, 0x50, 0x63, 0x00, 0x10, + 0xe1, 0x00, 0xb0, 0x50, 0x67, 0x00, 0x10, 0xe2, 0x00, 0xb0, 0x50, 0x6b, + 0x00, 0x10, 0xe4, 0x00, 0xb0, 0x42, 0x13, 0x02, 0xf0, 0x84, 0x02, 0x00, + 0x50, 0xc7, 0x00, 0x04, 0x11, 0x00, 0xb0, 0x00, 0x63, 0x00, 0x10, 0xb4, + 0x01, 0xbc, 0x60, 0x03, 0x02, 0x10, 0xb5, 0x00, 0xb0, 0x00, 0x63, 0x04, + 0xd0, 0xb4, 0x01, 0x84, 0x60, 0x07, 0x00, 0x11, 0xe0, 0x01, 0xbc, 0x60, + 0x03, 0x00, 0x17, 0x8e, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x04, 0xf6, 0x00, + 0xe0, 0x01, 0xc7, 0x00, 0x20, 0x71, 0x00, 0xb0, 0x00, 0x63, 0x00, 0x10, + 0xb4, 0x01, 0xbc, 0x60, 0x03, 0x02, 0xd0, 0xb5, 0x00, 0xb0, 0x00, 0x63, + 0x04, 0xd0, 0xb4, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x04, 0x8e, 0x01, 0x85, + 0x60, 0x06, 0xf7, 0xf7, 0xbf, 0x01, 0x03, 0x50, 0x03, 0x00, 0x17, 0xa1, + 0x00, 0xb8, 0x5e, 0x87, 0x00, 0x37, 0xa1, 0x01, 0x87, 0x5e, 0x86, 0x10, + 0x10, 0x80, 0x02, 0x0c, 0xd0, 0x03, 0x00, 0x04, 0x5d, 0x02, 0x03, 0x00, + 0xc7, 0x00, 0x04, 0x2d, 0x00, 0xb0, 0x50, 0xcb, 0x00, 0x10, 0x65, 0x01, + 0xbc, 0x60, 0x03, 0x00, 0x16, 0x85, 0x00, 0xe0, 0x5a, 0x33, 0x00, 0x36, + 0x8c, 0x02, 0x03, 0x50, 0xc7, 0x00, 0x04, 0x22, 0x00, 0xe0, 0x5a, 0x27, + 0x00, 0x36, 0x89, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x04, 0x5e, 0x01, 0xbc, + 0x60, 0x03, 0x00, 0x17, 0xb2, 0x00, 0xb0, 0x5a, 0x0b, 0x00, 0x0b, 0x24, + 0x01, 0x38, 0x5a, 0x13, 0x00, 0x17, 0xa1, 0x01, 0xbc, 0x5a, 0x06, 0xf4, + 0x30, 0xe0, 0x01, 0x3c, 0x5a, 0x13, 0x00, 0x17, 0xa1, 0x01, 0x7c, 0x5a, + 0x06, 0xf4, 0x30, 0xe1, 0x01, 0x81, 0xe0, 0x06, 0x10, 0x90, 0x84, 0x01, + 0x85, 0xe0, 0x07, 0x00, 0x10, 0xe3, 0x01, 0x85, 0xe0, 0x07, 0x00, 0x10, + 0xc3, 0x02, 0x82, 0xd0, 0xc7, 0x00, 0x04, 0x32, 0x03, 0xbf, 0xde, 0x02, + 0xf0, 0x04, 0x35, 0x02, 0x02, 0xd0, 0xc7, 0x00, 0x04, 0x37, 0x00, 0xb0, + 0x2a, 0x4b, 0x00, 0x17, 0xa1, 0x01, 0xb8, 0x50, 0x6e, 0xf4, 0x30, 0xe0, + 0x00, 0xb0, 0x50, 0x73, 0x00, 0x17, 0xa1, 0x01, 0xb8, 0x2a, 0x4e, 0xf4, + 0x30, 0xe1, 0x02, 0x82, 0x42, 0x13, 0x00, 0x04, 0x35, 0x00, 0xb0, 0x50, + 0x7b, 0x00, 0x10, 0xe4, 0x00, 0xb0, 0x42, 0x13, 0x02, 0x10, 0x84, 0x01, + 0x85, 0xe0, 0x06, 0x1c, 0x30, 0xe1, 0x00, 0xb0, 0x42, 0x13, 0x00, 0x70, + 0x84, 0x01, 0x87, 0x60, 0x04, 0x03, 0x10, 0xa0, 0x02, 0x03, 0x00, 0xc7, + 0x00, 0x04, 0x4c, 0x00, 0xb0, 0x50, 0xcb, 0x00, 0x10, 0x65, 0x00, 0x6d, + 0x5e, 0xca, 0xd1, 0xc4, 0x3d, 0x01, 0x85, 0xe0, 0x02, 0x18, 0x70, 0xc3, + 0x00, 0xe0, 0x5e, 0xcb, 0x00, 0x36, 0x8e, 0x01, 0xbc, 0x60, 0x1b, 0x09, + 0xd0, 0x65, 0x00, 0xe0, 0x41, 0x96, 0xf6, 0x50, 0x65, 0x00, 0xb0, 0x50, + 0x97, 0x00, 0x16, 0x80, 0x00, 0x68, 0xde, 0xcb, 0x00, 0x04, 0x44, 0x01, + 0xbc, 0x60, 0x23, 0x01, 0x50, 0xb8, 0x00, 0x68, 0x2c, 0x93, 0x00, 0x24, + 0x4a, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x04, 0x56, 0x00, 0xb0, 0x5e, 0xcb, + 0x00, 0x10, 0xb5, 0x00, 0xb0, 0x00, 0x63, 0x08, 0x70, 0xb4, 0x02, 0x83, + 0x42, 0xd3, 0x00, 0x04, 0x46, 0x01, 0xbc, 0x60, 0x03, 0x01, 0x70, 0xb8, + 0x00, 0x68, 0xac, 0x93, 0x00, 0x24, 0x56, 0x01, 0xbc, 0x60, 0x03, 0x01, + 0x70, 0xb8, 0x02, 0xbc, 0x50, 0x67, 0x00, 0x04, 0x55, 0x03, 0xbf, 0xde, + 0x02, 0xf0, 0x04, 0x54, 0x01, 0x0c, 0xd0, 0x03, 0x00, 0x17, 0xa1, 0x03, + 0xa9, 0x5e, 0x02, 0xf0, 0x04, 0x51, 0x01, 0xbc, 0x60, 0x23, 0x01, 0x50, + 0xb8, 0x00, 0x68, 0x5e, 0x87, 0x00, 0x64, 0x54, 0x03, 0xbf, 0xde, 0x02, + 0xf0, 0x04, 0x56, 0x01, 0xbc, 0x60, 0x03, 0x01, 0x70, 0xb8, 0x00, 0x68, + 0x5e, 0x87, 0x00, 0x44, 0x56, 0x01, 0xbc, 0x60, 0x03, 0x01, 0x70, 0xb8, + 0x01, 0x81, 0xe0, 0x02, 0x17, 0x10, 0xb8, 0x01, 0xbc, 0x60, 0x03, 0x00, + 0xf0, 0xa5, 0x01, 0xbc, 0x60, 0x03, 0x0e, 0x10, 0xb5, 0x00, 0xb0, 0x00, + 0x63, 0x00, 0x10, 0xb4, 0x00, 0xb0, 0x00, 0x63, 0x00, 0xf0, 0xb4, 0x00, + 0xb0, 0x42, 0xd3, 0x00, 0x18, 0x00, 0x01, 0x88, 0x60, 0x08, 0x03, 0x10, + 0xb4, 0x01, 0x81, 0x60, 0x06, 0x0d, 0x90, 0x6c, 0x03, 0xbf, 0xde, 0x02, + 0xf0, 0x04, 0x8e, 0x02, 0x02, 0xd0, 0xc7, 0x00, 0x04, 0x64, 0x00, 0xb0, + 0x50, 0x6f, 0x00, 0x10, 0xe0, 0x00, 0xb0, 0x50, 0x73, 0x00, 0x10, 0xe1, + 0x00, 0xb0, 0x50, 0x77, 0x00, 0x10, 0xe2, 0x02, 0x82, 0x42, 0x13, 0x00, + 0x04, 0x63, 0x00, 0xb0, 0x50, 0x7b, 0x00, 0x10, 0xe4, 0x00, 0xb0, 0x42, + 0x13, 0x02, 0xf0, 0x84, 0x00, 0xe0, 0x5e, 0x9f, 0x00, 0x37, 0xa7, 0x03, + 0xa1, 0x5e, 0x02, 0xf0, 0x04, 0x6d, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x17, + 0xa7, 0x01, 0x87, 0x60, 0x04, 0x03, 0x10, 0xa0, 0x00, 0xb0, 0x00, 0x63, + 0x00, 0x10, 0xb4, 0x01, 0xbc, 0x60, 0x03, 0x0e, 0x10, 0xb5, 0x00, 0xb0, + 0x00, 0x63, 0x00, 0xf0, 0xb4, 0x01, 0x88, 0x60, 0x08, 0x03, 0x10, 0xb4, + 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x04, 0x83, 0x00, 0xb0, 0x01, 0x7b, 0x00, + 0x10, 0x65, 0x00, 0xb0, 0x5a, 0x03, 0x00, 0x10, 0xe5, 0x01, 0xbc, 0x63, + 0xff, 0x1f, 0xf0, 0xc5, 0x00, 0xb0, 0x5a, 0x07, 0x00, 0x10, 0xe6, 0x01, + 0xbc, 0x63, 0xff, 0x1f, 0xf0, 0xc6, 0x00, 0xb0, 0x5a, 0x0b, 0x00, 0x10, + 0xe7, 0x01, 0xbc, 0x63, 0xff, 0x1f, 0xf0, 0xc7, 0x00, 0x68, 0xa0, 0x63, + 0x00, 0x04, 0x76, 0x00, 0xe0, 0x5e, 0x27, 0x00, 0x37, 0x89, 0x00, 0x68, + 0x20, 0x63, 0x00, 0x04, 0x7a, 0x01, 0x85, 0xe0, 0x07, 0x00, 0x10, 0xe3, + 0x01, 0x85, 0xe0, 0x07, 0x00, 0x10, 0xc3, 0x00, 0xb0, 0x42, 0x13, 0x01, + 0x10, 0x84, 0x01, 0xda, 0x5e, 0x27, 0x00, 0x10, 0xee, 0x01, 0x87, 0x60, + 0x06, 0x10, 0x90, 0x84, 0x00, 0xb0, 0x42, 0x13, 0x1c, 0x10, 0x84, 0x01, + 0xbc, 0x60, 0x03, 0x00, 0x10, 0xb4, 0x00, 0xe0, 0x60, 0x68, 0x03, 0xb0, + 0xa6, 0x00, 0xb0, 0x00, 0x97, 0x00, 0x10, 0xb5, 0x01, 0xbc, 0x60, 0x23, + 0x04, 0xd0, 0xb4, 0x01, 0x84, 0x60, 0x07, 0x00, 0x11, 0xe0, 0x03, 0xbf, + 0xde, 0x02, 0xf0, 0x04, 0xe2, 0x01, 0x08, 0x5e, 0x4b, 0x00, 0x17, 0xa1, + 0x00, 0x68, 0x5e, 0x87, 0x00, 0x24, 0x8e, 0x02, 0x02, 0x50, 0x03, 0x00, + 0x04, 0x8d, 0x02, 0x9e, 0x50, 0x9f, 0x00, 0x04, 0x8a, 0x02, 0x01, 0xd0, + 0x03, 0x00, 0x04, 0x8a, 0x00, 0xe0, 0x5e, 0x27, 0x00, 0x37, 0x89, 0x01, + 0x58, 0x5e, 0x27, 0x00, 0x14, 0x2d, 0x01, 0xda, 0x50, 0xb7, 0x00, 0x10, + 0xee, 0x01, 0x87, 0x60, 0x06, 0x10, 0x90, 0x84, 0x03, 0xbf, 0xde, 0x02, + 0xf0, 0x04, 0x8e, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x14, 0x2d, 0x01, 0x04, + 0xc1, 0x07, 0x00, 0x17, 0xa1, 0x03, 0x22, 0x5e, 0x02, 0xf0, 0x04, 0x91, + 0x01, 0x03, 0xde, 0x53, 0x00, 0x17, 0xa1, 0x00, 0xb0, 0x5e, 0x87, 0x00, + 0x17, 0xa2, 0x02, 0x00, 0x5e, 0xff, 0x00, 0x04, 0x94, 0x01, 0xbc, 0x60, + 0x03, 0x00, 0x37, 0xa2, 0x00, 0x68, 0x2b, 0x67, 0x00, 0x04, 0x96, 0x01, + 0xbc, 0x60, 0x03, 0x00, 0x37, 0xa2, 0x02, 0x88, 0x5e, 0x4b, 0x00, 0x04, + 0x99, 0x00, 0x68, 0x5e, 0x4b, 0x06, 0x84, 0x99, 0x01, 0xbc, 0x60, 0x03, + 0x00, 0x17, 0xa2, 0x01, 0x83, 0xde, 0x86, 0xf2, 0x97, 0x94, 0x01, 0x83, + 0xde, 0x86, 0x84, 0xf4, 0x27, 0x02, 0x81, 0xc2, 0x13, 0x00, 0x04, 0xa0, + 0x01, 0x86, 0x5e, 0x8b, 0x00, 0x10, 0xe3, 0x01, 0x86, 0x60, 0x07, 0x00, + 0x10, 0xc3, 0x01, 0x81, 0xe0, 0x06, 0x10, 0x90, 0x84, 0x03, 0xbf, 0xde, + 0x02, 0xf0, 0x04, 0xa2, 0x01, 0x86, 0x5e, 0x8a, 0x1c, 0x70, 0xe3, 0x01, + 0x86, 0x60, 0x06, 0x18, 0x70, 0xc3, 0x02, 0xb8, 0x47, 0xa7, 0x00, 0x04, + 0xde, 0x02, 0xa0, 0x47, 0xb7, 0x00, 0x04, 0xe0, 0x03, 0xa9, 0x5e, 0x02, + 0xf0, 0x04, 0xaa, 0x01, 0x08, 0x5e, 0x4b, 0x00, 0x17, 0xa1, 0x00, 0x68, + 0x5e, 0x87, 0x00, 0x24, 0xdf, 0x02, 0x1e, 0x50, 0x9f, 0x00, 0x04, 0xaa, + 0x01, 0x85, 0xe0, 0x06, 0x1c, 0x70, 0xe3, 0x01, 0x85, 0xe0, 0x06, 0x18, + 0x70, 0xc3, 0x01, 0x14, 0x00, 0x63, 0x00, 0x17, 0xa1, 0x00, 0x68, 0xde, + 0x87, 0x00, 0x84, 0xb3, 0x00, 0xb0, 0x01, 0x53, 0x00, 0x17, 0xa2, 0x00, + 0x68, 0xde, 0x8b, 0xff, 0xe4, 0xaf, 0x00, 0x68, 0x42, 0x47, 0x00, 0x24, + 0xb0, 0x00, 0x68, 0xde, 0x8a, 0x84, 0xc4, 0xb3, 0x01, 0x85, 0x60, 0x02, + 0x09, 0x10, 0x48, 0x01, 0x86, 0xe0, 0x02, 0x1c, 0x70, 0xe3, 0x01, 0x86, + 0xe0, 0x06, 0x18, 0x70, 0xc3, 0x01, 0x10, 0x50, 0x07, 0x00, 0x17, 0xa6, + 0x00, 0x68, 0x5e, 0x9b, 0x00, 0x04, 0xdf, 0x01, 0xbc, 0x60, 0x03, 0x00, + 0x11, 0xe4, 0x01, 0x3a, 0x50, 0x07, 0x00, 0x17, 0x80, 0x00, 0x88, 0x5e, + 0x03, 0x00, 0x77, 0x80, 0x00, 0xe0, 0x00, 0xae, 0xf0, 0x10, 0x64, 0x00, + 0x68, 0xde, 0x9b, 0x00, 0x44, 0xc4, 0x02, 0x07, 0xd0, 0x03, 0x00, 0x04, + 0xbe, 0x01, 0xbc, 0x60, 0x2b, 0x12, 0xb7, 0xa2, 0x00, 0xe0, 0x5e, 0x00, + 0x0b, 0x37, 0xa3, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0d, 0x8d, 0x01, 0xbc, + 0x60, 0x23, 0x07, 0x97, 0x81, 0x00, 0xe0, 0x41, 0x83, 0x01, 0x70, 0x63, + 0x00, 0xe0, 0x41, 0x8f, 0x00, 0xb0, 0x65, 0x00, 0x02, 0x5e, 0x02, 0xf0, + 0x0d, 0x62, 0x01, 0xbc, 0x60, 0x23, 0x07, 0x50, 0x64, 0x01, 0xbc, 0x60, + 0x47, 0x00, 0x17, 0xa2, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0d, 0xb5, 0x00, + 0x68, 0x5e, 0x9b, 0x00, 0x44, 0xe0, 0x01, 0xa4, 0x60, 0x46, 0xf4, 0x71, + 0xe0, 0x00, 0x68, 0xde, 0x9b, 0x00, 0xc4, 0xd2, 0x01, 0xbc, 0x61, 0x13, + 0x00, 0xb7, 0xa1, 0x02, 0x06, 0x00, 0xf3, 0x00, 0x04, 0xcb, 0x01, 0xbc, + 0x60, 0x13, 0x00, 0xb7, 0xa1, 0x01, 0x92, 0xc2, 0x1a, 0xf4, 0x37, 0xa2, + 0x03, 0x29, 0x5e, 0x02, 0xf0, 0x04, 0xd0, 0x01, 0xbc, 0x60, 0x03, 0x00, + 0x11, 0xee, 0x00, 0x90, 0x42, 0xe7, 0x00, 0x91, 0xef, 0x01, 0x92, 0xe0, + 0x0e, 0xf4, 0x37, 0xa2, 0x00, 0xb0, 0x5e, 0x8b, 0x00, 0x11, 0xec, 0x03, + 0xbf, 0xde, 0x02, 0xf0, 0x04, 0xe0, 0x00, 0x68, 0x5e, 0x9b, 0x00, 0x64, + 0xd7, 0x00, 0x68, 0x5e, 0x9b, 0x00, 0xa4, 0xd7, 0x00, 0xb0, 0x50, 0x2f, + 0x00, 0x11, 0xe2, 0x00, 0xb0, 0x50, 0x33, 0x00, 0x11, 0xe2, 0x03, 0xbf, + 0xde, 0x02, 0xf0, 0x04, 0xe0, 0x01, 0x87, 0x60, 0x02, 0x3d, 0x11, 0xe8, + 0x00, 0x68, 0xde, 0x9b, 0x00, 0xa4, 0xda, 0x01, 0x87, 0x60, 0x06, 0x3d, + 0x11, 0xe8, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x11, 0xea, 0x00, 0x90, 0x42, + 0xe7, 0x00, 0x91, 0xeb, 0x01, 0x92, 0xc2, 0x1b, 0x00, 0xb7, 0xa2, 0x01, + 0xb8, 0x5e, 0x8a, 0x3d, 0x11, 0xe8, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x04, + 0xe0, 0x01, 0x84, 0x60, 0x07, 0x00, 0x11, 0xe0, 0x01, 0xbc, 0x60, 0x03, + 0x00, 0x11, 0x2d, 0x00, 0xb0, 0x44, 0x83, 0x00, 0x14, 0x2c, 0x03, 0xa3, + 0xde, 0x02, 0xf0, 0x04, 0xf5, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x17, 0x8e, + 0x00, 0x68, 0x5e, 0x4b, 0x05, 0xa4, 0xe6, 0x02, 0x00, 0x50, 0x03, 0x00, + 0x04, 0xef, 0x01, 0x83, 0xe0, 0x06, 0x09, 0x10, 0x48, 0x00, 0xb0, 0x41, + 0x23, 0x00, 0x18, 0x00, 0x01, 0xbc, 0x60, 0x03, 0x04, 0xb7, 0x8e, 0x03, + 0xa9, 0x5e, 0x02, 0xf0, 0x04, 0xf4, 0x00, 0x68, 0x5e, 0x4b, 0x04, 0x24, + 0xf4, 0x01, 0xbc, 0x60, 0x03, 0x06, 0x37, 0x8e, 0x00, 0x68, 0x5e, 0x4b, + 0x05, 0xa4, 0xf4, 0x01, 0xbc, 0x60, 0x03, 0x06, 0xb7, 0x8e, 0x03, 0xbf, + 0xde, 0x02, 0xf0, 0x04, 0xf4, 0x01, 0x81, 0x60, 0x06, 0xf5, 0x77, 0xab, + 0x00, 0xb0, 0x5e, 0x0f, 0x00, 0x17, 0x85, 0x00, 0x02, 0x5e, 0x02, 0xf0, + 0x0d, 0x4c, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x17, 0x8c, 0x01, 0xbc, 0x60, + 0x03, 0x00, 0x17, 0x8d, 0x03, 0x23, 0xde, 0x02, 0xf0, 0x04, 0xf6, 0x01, + 0x87, 0xe0, 0x06, 0x10, 0x70, 0x83, 0x01, 0x85, 0xe0, 0x02, 0xf5, 0xb7, + 0xad, 0x03, 0x29, 0x5e, 0x02, 0xf0, 0x05, 0x0a, 0x02, 0x03, 0x00, 0xc7, + 0x00, 0x05, 0x05, 0x00, 0xb0, 0x50, 0xcb, 0x00, 0x10, 0x65, 0x02, 0x82, + 0xd0, 0xc7, 0x00, 0x04, 0xfd, 0x00, 0xe0, 0x5a, 0x23, 0x00, 0x36, 0x88, + 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x04, 0xfe, 0x00, 0xe0, 0x5a, 0x27, 0x00, + 0x36, 0x89, 0x00, 0x68, 0x2c, 0x93, 0x00, 0x25, 0x05, 0x00, 0xe0, 0x5e, + 0xcb, 0x00, 0x37, 0xb2, 0x01, 0x0a, 0x5e, 0xcb, 0x00, 0x17, 0xa1, 0x00, + 0xe0, 0x50, 0xca, 0xf4, 0x30, 0x65, 0x00, 0xd0, 0x60, 0x06, 0xf6, 0x57, + 0xa2, 0x00, 0x20, 0x5a, 0x1a, 0xf4, 0x45, 0x05, 0x03, 0xbf, 0xde, 0x02, + 0xf0, 0x04, 0xff, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0f, 0x38, 0x03, 0xd5, + 0xde, 0x02, 0xf0, 0x0a, 0x56, 0x03, 0xd6, 0xde, 0x02, 0xf0, 0x0a, 0x6e, + 0x03, 0x50, 0xde, 0x02, 0xf0, 0x05, 0x05, 0x03, 0xbf, 0xde, 0x02, 0xf0, + 0x05, 0x2c, 0x02, 0x05, 0x5e, 0xaf, 0x00, 0x05, 0x0c, 0x01, 0x87, 0xe0, + 0x06, 0x26, 0x71, 0x33, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x00, 0x02, 0x01, + 0x90, 0x60, 0x0a, 0x86, 0x34, 0x31, 0x02, 0x82, 0xd0, 0xc7, 0x00, 0x05, + 0x16, 0x01, 0x3c, 0x50, 0x27, 0x00, 0x17, 0x80, 0x01, 0x09, 0x50, 0x2b, + 0x00, 0x17, 0x81, 0x01, 0x07, 0x50, 0x07, 0x00, 0x17, 0xa1, 0x01, 0x82, + 0x5e, 0x86, 0xf0, 0x37, 0x81, 0x00, 0xb0, 0x50, 0x1f, 0x00, 0x10, 0x8a, + 0x00, 0xb0, 0x50, 0x0f, 0x00, 0x11, 0x16, 0x03, 0xbf, 0xde, 0x02, 0xf0, + 0x05, 0x1c, 0x01, 0x38, 0x50, 0x5f, 0x00, 0x17, 0x80, 0x01, 0x0a, 0x50, + 0x2b, 0x00, 0x17, 0x81, 0x01, 0x07, 0xd0, 0x07, 0x00, 0x17, 0xa1, 0x01, + 0x82, 0x5e, 0x86, 0xf0, 0x37, 0x81, 0x00, 0xb0, 0x50, 0x23, 0x00, 0x10, + 0x8a, 0x00, 0xb0, 0x50, 0x5b, 0x00, 0x11, 0x16, 0x02, 0x03, 0x00, 0xc7, + 0x00, 0x05, 0x21, 0x02, 0x0c, 0xd0, 0x03, 0x00, 0x05, 0x21, 0x02, 0x08, + 0x5e, 0x07, 0x00, 0x05, 0x21, 0x01, 0x38, 0x54, 0x07, 0x00, 0x17, 0x80, + 0x00, 0xb0, 0x54, 0x27, 0x00, 0x10, 0x8a, 0x02, 0x80, 0x50, 0xc7, 0x00, + 0x05, 0x2a, 0x01, 0xbc, 0x60, 0x03, 0x05, 0xb7, 0x92, 0x03, 0xbf, 0xde, + 0x02, 0xf0, 0x02, 0xc1, 0x01, 0x90, 0x60, 0x06, 0x86, 0x34, 0x31, 0x02, + 0x03, 0x00, 0xc7, 0x00, 0x05, 0x0e, 0x02, 0x0c, 0xd0, 0x03, 0x00, 0x05, + 0x0e, 0x00, 0xb0, 0x00, 0x1f, 0x00, 0x17, 0xa1, 0x00, 0xe0, 0x5e, 0x86, + 0x80, 0x74, 0x1a, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x05, 0x0e, 0x01, 0xbc, + 0x60, 0x03, 0x06, 0x37, 0x92, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x02, 0xc1, + 0x02, 0x05, 0x5e, 0xff, 0x00, 0x05, 0x3b, 0x01, 0x85, 0x60, 0x02, 0xf7, + 0xf7, 0xbf, 0x03, 0x2b, 0xde, 0x02, 0xf0, 0x05, 0x3b, 0x02, 0x00, 0x00, + 0xf3, 0x00, 0x05, 0x32, 0x00, 0xe8, 0x00, 0x23, 0x00, 0x51, 0x42, 0x01, + 0xbc, 0x60, 0x0a, 0x28, 0x51, 0x42, 0x03, 0x94, 0x5e, 0x02, 0xf0, 0x05, + 0x37, 0x00, 0xb0, 0x05, 0x8b, 0x00, 0x10, 0x64, 0x00, 0x68, 0x58, 0x03, + 0x00, 0x05, 0x37, 0x00, 0xb0, 0x44, 0x67, 0x00, 0x11, 0x12, 0x00, 0xb0, + 0x58, 0x03, 0x00, 0x11, 0x15, 0x00, 0x68, 0x45, 0x1f, 0x00, 0x05, 0x3b, + 0x03, 0xa2, 0x5e, 0x02, 0xf0, 0x05, 0x3b, 0x01, 0x85, 0xe0, 0x06, 0xf5, + 0x77, 0xab, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0e, 0x7c, 0x02, 0x01, 0xc2, + 0xe3, 0x00, 0x05, 0x65, 0x02, 0x03, 0x00, 0xc7, 0x00, 0x05, 0x40, 0x00, + 0x68, 0x2c, 0x93, 0x00, 0x25, 0x50, 0x00, 0x6e, 0x42, 0x46, 0xf6, 0x45, + 0x50, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x05, 0x42, 0x00, 0x6e, 0x42, 0x47, + 0x00, 0x25, 0x50, 0x02, 0x03, 0x00, 0xc7, 0x00, 0x05, 0x4d, 0x03, 0x55, + 0xde, 0x02, 0xf0, 0x05, 0x42, 0x01, 0x80, 0x60, 0x02, 0x86, 0x14, 0x30, + 0x01, 0x38, 0x50, 0x83, 0x00, 0x17, 0xa1, 0x00, 0xb0, 0x50, 0xcb, 0x00, + 0x10, 0x65, 0x00, 0x6d, 0xda, 0x32, 0xf4, 0x2a, 0x56, 0x00, 0xa8, 0x41, + 0x23, 0x14, 0x10, 0x48, 0x01, 0x14, 0x00, 0x63, 0x00, 0x10, 0x65, 0x00, + 0xe0, 0x41, 0x97, 0x0e, 0xd0, 0x65, 0x00, 0xe0, 0x5a, 0x03, 0x00, 0x36, + 0x80, 0x01, 0xbc, 0x62, 0x1f, 0x00, 0x11, 0xe0, 0x03, 0xbf, 0xde, 0x02, + 0xf0, 0x00, 0x13, 0x01, 0x81, 0xe0, 0x06, 0x86, 0x34, 0x31, 0x01, 0x91, + 0x60, 0x0e, 0x84, 0xf4, 0x27, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x05, 0x65, + 0x01, 0x3c, 0x50, 0x67, 0x00, 0x17, 0xa1, 0x01, 0xac, 0x5e, 0x86, 0x17, + 0x50, 0xba, 0x01, 0xbc, 0x60, 0x03, 0x01, 0x90, 0xb8, 0x02, 0x03, 0x00, + 0xc7, 0x00, 0x05, 0x5f, 0x00, 0x68, 0xac, 0x93, 0x00, 0x25, 0x5a, 0x01, + 0x81, 0xe0, 0x02, 0x17, 0x10, 0xb8, 0x03, 0xd5, 0xde, 0x02, 0xf0, 0x0a, + 0x56, 0x03, 0xd6, 0xde, 0x02, 0xf0, 0x0a, 0x6e, 0x03, 0x50, 0xde, 0x02, + 0xf0, 0x05, 0x56, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x05, 0x65, 0x00, 0xe8, + 0x2c, 0x93, 0x00, 0x2b, 0x24, 0x00, 0xb0, 0x5e, 0xcb, 0x00, 0x10, 0xb5, + 0x00, 0xb0, 0x00, 0x63, 0x08, 0x70, 0xb4, 0x02, 0x83, 0x42, 0xd3, 0x00, + 0x05, 0x5d, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x05, 0x60, 0x01, 0x86, 0xe0, + 0x04, 0x03, 0x10, 0xa0, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x01, 0x8c, 0x03, + 0xd5, 0xde, 0x02, 0xf0, 0x0a, 0x56, 0x03, 0xd6, 0xde, 0x02, 0xf0, 0x0a, + 0x6e, 0x03, 0x50, 0xde, 0x02, 0xf0, 0x05, 0x61, 0x03, 0xbf, 0xde, 0x02, + 0xf0, 0x03, 0x3c, 0x01, 0xbc, 0x60, 0x03, 0x00, 0xf0, 0xa5, 0x01, 0x82, + 0xe0, 0x02, 0x09, 0x10, 0x48, 0x01, 0xbc, 0x62, 0x1f, 0x00, 0x11, 0xe0, + 0x01, 0xbc, 0x60, 0x03, 0x00, 0x11, 0xec, 0x01, 0xbc, 0x60, 0x0f, 0x00, + 0x11, 0xe8, 0x02, 0x85, 0x50, 0x0b, 0x00, 0x05, 0x6c, 0x01, 0x82, 0x60, + 0x02, 0x09, 0x10, 0x48, 0x02, 0x81, 0x81, 0xb3, 0x00, 0x05, 0x73, 0x03, + 0xa0, 0xde, 0x02, 0xf0, 0x05, 0x71, 0x03, 0xd5, 0xde, 0x02, 0xf0, 0x0a, + 0x56, 0x03, 0xd6, 0xde, 0x02, 0xf0, 0x0a, 0x6e, 0x03, 0x20, 0x5e, 0x02, + 0xf0, 0x05, 0x73, 0x01, 0x88, 0x60, 0x02, 0x09, 0x10, 0x48, 0x03, 0xbf, + 0xde, 0x02, 0xf0, 0x00, 0x13, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x37, 0xa1, + 0x02, 0x00, 0x01, 0xb3, 0x00, 0x05, 0x81, 0x02, 0x04, 0x01, 0xb3, 0x00, + 0x05, 0x80, 0x00, 0xe9, 0x01, 0xbb, 0x00, 0x20, 0x6e, 0x00, 0xe8, 0x81, + 0xbf, 0x00, 0x00, 0x6f, 0x00, 0x68, 0x81, 0xbb, 0x00, 0x05, 0x80, 0x00, + 0x68, 0x81, 0xbf, 0x00, 0x05, 0x80, 0x02, 0x81, 0x81, 0xb3, 0x00, 0x05, + 0x7d, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x00, 0x6c, 0x03, 0xbf, 0xde, 0x02, + 0xf0, 0x05, 0xce, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x00, 0x6c, 0x00, 0x02, + 0x5e, 0x02, 0xf0, 0x0a, 0xe5, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x00, 0x13, + 0x01, 0xbc, 0x60, 0x03, 0x00, 0x17, 0xa1, 0x00, 0x02, 0x5e, 0x02, 0xf0, + 0x0c, 0x70, 0x02, 0x01, 0x01, 0xb3, 0x00, 0x05, 0x84, 0x03, 0xbf, 0xde, + 0x02, 0xf0, 0x00, 0x13, 0x03, 0xa3, 0xde, 0x02, 0xf0, 0x00, 0x13, 0x02, + 0x00, 0x50, 0xc7, 0x00, 0x05, 0x8d, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x10, + 0x80, 0x01, 0x82, 0x60, 0x06, 0x09, 0x10, 0x48, 0x01, 0x80, 0x60, 0x02, + 0x86, 0x34, 0x31, 0x01, 0x04, 0xc1, 0x07, 0x00, 0x17, 0xa1, 0x01, 0x83, + 0xde, 0x86, 0xf2, 0x97, 0x94, 0x00, 0xe0, 0x01, 0xcb, 0x00, 0x20, 0x72, + 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x01, 0xaf, 0x02, 0x01, 0x01, 0xb3, 0x00, + 0x05, 0x8f, 0x01, 0x87, 0xe0, 0x06, 0xf5, 0x77, 0xab, 0x00, 0xb0, 0x01, + 0x0b, 0x00, 0x17, 0xa1, 0x00, 0x6d, 0xde, 0x84, 0x08, 0x05, 0xce, 0x00, + 0xe8, 0x44, 0x64, 0x08, 0x77, 0xa1, 0x00, 0x6e, 0x5e, 0x84, 0x08, 0x25, + 0xce, 0x01, 0x87, 0xe0, 0x06, 0xf5, 0x77, 0xab, 0x02, 0x02, 0x00, 0xbf, + 0x00, 0x05, 0xa1, 0x02, 0x88, 0x81, 0xab, 0x00, 0x05, 0xa1, 0x02, 0x84, + 0x00, 0xc7, 0x00, 0x05, 0xa1, 0x01, 0x29, 0x50, 0x0b, 0x00, 0x17, 0xa1, + 0x00, 0x68, 0xde, 0x87, 0x02, 0x05, 0xa1, 0x02, 0x03, 0xc5, 0x73, 0x00, + 0x05, 0xa0, 0x02, 0x83, 0xde, 0xb3, 0x00, 0x05, 0xa0, 0x02, 0x82, 0xde, + 0xbb, 0x00, 0x05, 0x9d, 0x00, 0x68, 0x2a, 0xff, 0x00, 0x05, 0xa1, 0x00, + 0x6d, 0xde, 0x2f, 0x01, 0xe5, 0xa1, 0x01, 0x82, 0xe0, 0x06, 0xf7, 0xf7, + 0xbf, 0x00, 0xe0, 0x44, 0x65, 0x56, 0x0a, 0xaf, 0x03, 0xbf, 0xde, 0x02, + 0xf0, 0x00, 0x13, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x05, 0xce, 0x02, 0x82, + 0x5e, 0xaf, 0x00, 0x05, 0xb1, 0x01, 0x82, 0x60, 0x06, 0xf5, 0x77, 0xab, + 0x00, 0xb0, 0x44, 0x67, 0x00, 0x08, 0x22, 0x00, 0xb0, 0x01, 0x4b, 0x00, + 0x17, 0xa2, 0x02, 0x08, 0x42, 0x1b, 0x00, 0x05, 0xa8, 0x00, 0xb0, 0x01, + 0x6b, 0x00, 0x17, 0xa2, 0x00, 0x68, 0x5e, 0x8b, 0x00, 0x05, 0xae, 0x00, + 0x90, 0x45, 0x2b, 0x00, 0x97, 0xa1, 0x00, 0x80, 0xde, 0x86, 0xf4, 0x57, + 0xa1, 0x00, 0x6e, 0x20, 0xd2, 0x0d, 0xa5, 0xae, 0x00, 0xb0, 0x41, 0xb7, + 0x00, 0x08, 0x34, 0x00, 0xe0, 0x20, 0xd2, 0x23, 0x28, 0x35, 0x01, 0x85, + 0xe0, 0x02, 0xf5, 0xb7, 0xad, 0x02, 0x05, 0x5e, 0xaf, 0x00, 0x05, 0xb1, + 0x01, 0xbc, 0x61, 0x03, 0x00, 0x11, 0x33, 0x00, 0xe8, 0x44, 0x65, 0x04, + 0x57, 0xa5, 0x00, 0xb0, 0x44, 0x67, 0x00, 0x0b, 0xd8, 0x00, 0x6d, 0x5e, + 0x97, 0x01, 0x00, 0xad, 0x02, 0x02, 0x00, 0xbf, 0x00, 0x05, 0xc0, 0x00, + 0x68, 0xde, 0x4b, 0x06, 0xa5, 0xb7, 0x01, 0x84, 0xe0, 0x02, 0xf7, 0xf7, + 0xbf, 0x00, 0x68, 0xde, 0x4b, 0x04, 0x05, 0xba, 0x02, 0x82, 0xde, 0xb3, + 0x00, 0x05, 0xba, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x0b, 0x10, 0x02, 0x04, + 0x5e, 0xb3, 0x00, 0x05, 0xbd, 0x00, 0x68, 0xde, 0x4b, 0x06, 0x25, 0xbd, + 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x11, 0x2a, 0x00, 0x02, 0x5e, 0x02, 0xf0, + 0x0f, 0x39, 0x03, 0xa3, 0xde, 0x02, 0xf0, 0x05, 0xc0, 0x01, 0x83, 0xe0, + 0x02, 0xf5, 0x97, 0xac, 0x01, 0xbc, 0x60, 0x13, 0x14, 0x97, 0xa1, 0x00, + 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xce, 0x01, 0xbc, 0x63, 0x83, 0x00, 0x17, + 0xa1, 0x00, 0xa0, 0x40, 0x66, 0xf4, 0x37, 0xa2, 0x00, 0x68, 0xde, 0x8a, + 0xf4, 0x25, 0xcc, 0x01, 0xbc, 0x60, 0x13, 0x0e, 0x77, 0xa1, 0x00, 0x02, + 0x5e, 0x02, 0xf0, 0x00, 0xce, 0x00, 0xa0, 0x40, 0x67, 0x3f, 0xf7, 0xa2, + 0x00, 0x98, 0x5e, 0x8b, 0x00, 0x37, 0xa2, 0x00, 0x68, 0x5e, 0x8b, 0x00, + 0x05, 0xcb, 0x00, 0x68, 0xde, 0x8b, 0x0f, 0xe5, 0xcc, 0x01, 0xbc, 0x60, + 0x23, 0x00, 0x10, 0x43, 0x01, 0x82, 0x60, 0x02, 0xf5, 0x77, 0xab, 0x03, + 0xd1, 0x5e, 0x02, 0xf0, 0x00, 0x02, 0x02, 0x00, 0x50, 0xc3, 0x00, 0x06, + 0x1d, 0x03, 0x25, 0xde, 0x02, 0xf0, 0x05, 0xd2, 0x01, 0x83, 0x60, 0x06, + 0x84, 0xf4, 0x27, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x06, 0x04, 0x02, 0x0c, + 0xd0, 0x03, 0x00, 0x06, 0x02, 0x02, 0x03, 0x00, 0xc7, 0x00, 0x05, 0xf1, + 0x01, 0x14, 0x00, 0x63, 0x00, 0x17, 0xa1, 0x00, 0x6d, 0xde, 0x87, 0x00, + 0x86, 0x02, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x17, 0x80, 0x00, 0xb0, 0x50, + 0xcb, 0x00, 0x10, 0x65, 0x00, 0xb0, 0x50, 0xcf, 0x00, 0x10, 0x64, 0x01, + 0x81, 0x60, 0x06, 0x0d, 0x90, 0x6c, 0x01, 0x82, 0x60, 0x06, 0x86, 0x34, + 0x31, 0x00, 0xb0, 0x5a, 0x23, 0x00, 0x17, 0xa1, 0x01, 0xbc, 0x60, 0x03, + 0x00, 0x16, 0x88, 0x01, 0xbc, 0x5a, 0x2a, 0xf4, 0x37, 0xa1, 0x01, 0xbc, + 0x60, 0x03, 0x00, 0x16, 0x8a, 0x00, 0xb0, 0x5e, 0x87, 0x00, 0x14, 0x8f, + 0x00, 0xb0, 0x5a, 0x27, 0x00, 0x17, 0xa1, 0x01, 0xbc, 0x60, 0x03, 0x00, + 0x16, 0x89, 0x01, 0xbc, 0x5a, 0x2e, 0xf4, 0x37, 0xa1, 0x01, 0xbc, 0x60, + 0x03, 0x00, 0x16, 0x8b, 0x00, 0xb0, 0x5e, 0x87, 0x00, 0x14, 0x90, 0x00, + 0xb0, 0x5a, 0x1b, 0x00, 0x14, 0x8d, 0x00, 0xb0, 0x5a, 0x1f, 0x00, 0x14, + 0x8e, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x16, 0x04, 0x00, 0x68, 0xde, 0x03, + 0x00, 0x05, 0xee, 0x02, 0x03, 0x50, 0xc7, 0x00, 0x05, 0xed, 0x01, 0x00, + 0x50, 0x9f, 0x00, 0x17, 0x80, 0x01, 0x80, 0x5e, 0x02, 0x91, 0xb4, 0x8d, + 0x01, 0xbc, 0x5e, 0x02, 0x92, 0x14, 0x90, 0x01, 0xbc, 0x60, 0x03, 0x00, + 0x37, 0x80, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x12, 0x96, 0x00, 0xb0, 0x5e, + 0x03, 0x00, 0x14, 0x8c, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x05, 0xfd, 0x00, + 0x68, 0xc2, 0x47, 0x00, 0x05, 0xf6, 0x01, 0x81, 0xe0, 0x06, 0x86, 0x34, + 0x31, 0x01, 0x91, 0x60, 0x0e, 0x84, 0xf4, 0x27, 0x01, 0xbc, 0x60, 0x03, + 0x00, 0x14, 0x30, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x00, 0x02, 0x00, 0xb0, + 0x50, 0x9f, 0x00, 0x17, 0xa1, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x01, 0x8b, + 0x00, 0xb0, 0x5e, 0x87, 0x00, 0x14, 0x27, 0x01, 0x86, 0xe0, 0x04, 0x03, + 0x10, 0xa0, 0x00, 0xb0, 0x42, 0x83, 0x00, 0x18, 0x00, 0x01, 0x0c, 0xd0, + 0x03, 0x00, 0x17, 0xa1, 0x00, 0x68, 0xde, 0x87, 0x00, 0x65, 0xf1, 0x01, + 0x02, 0x50, 0xc7, 0x00, 0x17, 0xa1, 0x01, 0x80, 0x5e, 0x86, 0x84, 0xf4, + 0x27, 0x01, 0x8a, 0xe0, 0x0e, 0x84, 0xf4, 0x27, 0x00, 0xb0, 0x50, 0xbf, + 0x00, 0x14, 0x26, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x06, 0x04, 0x01, 0x86, + 0xe0, 0x04, 0x03, 0x10, 0xa0, 0x02, 0x00, 0x50, 0x9f, 0x00, 0x06, 0x04, + 0x02, 0x86, 0xc1, 0x07, 0x00, 0x06, 0x18, 0x03, 0x29, 0x5e, 0x02, 0xf0, + 0x06, 0x09, 0x00, 0xb0, 0x52, 0x33, 0x00, 0x14, 0x2d, 0x00, 0xb0, 0x52, + 0x37, 0x00, 0x17, 0xa1, 0x01, 0x9e, 0x5e, 0x86, 0x84, 0xf4, 0x27, 0x00, + 0xb0, 0x50, 0x9f, 0x00, 0x17, 0xa1, 0x01, 0x80, 0xde, 0x86, 0xf4, 0x37, + 0xa1, 0x00, 0xb0, 0x50, 0xbb, 0x00, 0x10, 0x8f, 0x00, 0xb0, 0x50, 0xb7, + 0x00, 0x10, 0x8e, 0x00, 0xb0, 0x50, 0x9b, 0x00, 0x10, 0x8d, 0x01, 0x80, + 0x60, 0x06, 0xf4, 0x30, 0x8c, 0x02, 0x02, 0x50, 0xc7, 0x00, 0x06, 0x17, + 0x00, 0xb0, 0x52, 0x43, 0x00, 0x10, 0x8f, 0x00, 0xb0, 0x52, 0x3f, 0x00, + 0x10, 0x8e, 0x00, 0xb0, 0x52, 0x3b, 0x00, 0x10, 0x8d, 0x01, 0x1a, 0x52, + 0x37, 0x00, 0x17, 0xa1, 0x01, 0x98, 0xde, 0x87, 0x04, 0x37, 0xa1, 0x01, + 0xb8, 0x5e, 0x86, 0x91, 0xb0, 0x8c, 0x01, 0x82, 0x60, 0x02, 0x86, 0x34, + 0x31, 0x01, 0x81, 0x60, 0x02, 0x0d, 0x90, 0x6c, 0x03, 0x25, 0xde, 0x02, + 0xf0, 0x06, 0x1b, 0x01, 0x9c, 0x60, 0x02, 0x84, 0xf4, 0x27, 0x03, 0xbf, + 0xde, 0x02, 0xf0, 0x06, 0x1f, 0x02, 0x85, 0x50, 0x0b, 0x00, 0x06, 0x1d, + 0x00, 0xa8, 0x50, 0xc7, 0x0d, 0x14, 0x31, 0x01, 0xbc, 0x60, 0x03, 0x00, + 0x14, 0x30, 0x01, 0x81, 0x60, 0x02, 0xf5, 0xd7, 0xae, 0x01, 0x83, 0x60, + 0x02, 0x84, 0xf4, 0x27, 0x01, 0x85, 0xe0, 0x02, 0x09, 0x10, 0x48, 0x01, + 0xbc, 0x60, 0x03, 0x00, 0x14, 0x2e, 0x03, 0xa2, 0x5e, 0x02, 0xf0, 0x01, + 0xaf, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x00, 0x13, 0x03, 0x23, 0xde, 0x02, + 0xf0, 0x06, 0x8f, 0x03, 0xa3, 0x5e, 0x02, 0xf0, 0x06, 0x8f, 0x03, 0xa2, + 0xde, 0x02, 0xf0, 0x06, 0x8f, 0x01, 0x81, 0x60, 0x06, 0xf5, 0x77, 0xab, + 0x03, 0xaa, 0x5e, 0x02, 0xf0, 0x06, 0x8f, 0x01, 0x83, 0xe0, 0x02, 0x09, + 0x10, 0x48, 0x03, 0x51, 0xde, 0x02, 0xf0, 0x06, 0x47, 0x02, 0x04, 0x5e, + 0xb3, 0x00, 0x06, 0x34, 0x01, 0x84, 0x60, 0x02, 0xf5, 0x97, 0xac, 0x01, + 0x83, 0xe0, 0x02, 0x09, 0x10, 0x48, 0x00, 0xb0, 0x2b, 0x57, 0x00, 0x17, + 0xa1, 0x00, 0x6d, 0x2b, 0x06, 0xf4, 0x20, 0x02, 0x00, 0xe0, 0x02, 0x7b, + 0x00, 0x20, 0x9e, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x0a, 0xc1, 0x00, 0x02, + 0x5e, 0x02, 0xf0, 0x11, 0x2d, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x00, 0x02, + 0x02, 0x03, 0xde, 0xb3, 0x00, 0x06, 0x44, 0x01, 0x83, 0xe0, 0x02, 0xf5, + 0x97, 0xac, 0x00, 0xe0, 0x20, 0xe7, 0x00, 0x28, 0x39, 0x02, 0x01, 0x5e, + 0xbb, 0x00, 0x06, 0x44, 0x00, 0xb0, 0x2a, 0x9b, 0x00, 0x17, 0xa1, 0x00, + 0x6d, 0x20, 0xe6, 0xf4, 0x26, 0x3f, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x08, + 0x39, 0x00, 0xe0, 0x02, 0x7f, 0x00, 0x20, 0x9f, 0x03, 0xa9, 0x5e, 0x02, + 0xf0, 0x06, 0x42, 0x01, 0x91, 0x60, 0x1a, 0x84, 0xf4, 0x27, 0x03, 0xbf, + 0xde, 0x02, 0xf0, 0x03, 0x00, 0x01, 0xbc, 0x63, 0xff, 0x1f, 0xf7, 0xa1, + 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0c, 0x70, 0x03, 0x29, 0x5e, 0x02, 0xf0, + 0x06, 0x44, 0x01, 0x91, 0x60, 0x1a, 0x84, 0xf4, 0x27, 0x03, 0xbf, 0xde, + 0x02, 0xf0, 0x06, 0x44, 0x00, 0xe0, 0x02, 0x6b, 0x00, 0x20, 0x9a, 0x01, + 0x80, 0xe0, 0x06, 0xf5, 0x77, 0xab, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x06, + 0x4c, 0x03, 0x01, 0xde, 0x02, 0xf0, 0x06, 0x4a, 0x00, 0x68, 0x5e, 0x4f, + 0x06, 0x26, 0x4a, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x17, 0xa8, 0x03, 0xa4, + 0x5e, 0x02, 0xf0, 0x06, 0x4c, 0x03, 0xc1, 0xde, 0x02, 0xf0, 0x06, 0x92, + 0x01, 0x84, 0x60, 0x02, 0x09, 0x10, 0x48, 0x02, 0x04, 0x00, 0xbf, 0x00, + 0x06, 0x51, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x11, 0x15, 0x01, 0x14, 0x00, + 0x63, 0x00, 0x17, 0xa1, 0x00, 0xe0, 0x66, 0x02, 0xf4, 0x30, 0x65, 0x00, + 0x02, 0x5e, 0x02, 0xf0, 0x0d, 0x51, 0x01, 0x82, 0x60, 0x02, 0x09, 0x10, + 0x48, 0x03, 0xa9, 0x5e, 0x02, 0xf0, 0x06, 0x6c, 0x00, 0x68, 0x5e, 0x3b, + 0x04, 0xa6, 0x5c, 0x01, 0xf0, 0xde, 0x17, 0x00, 0x37, 0x85, 0x00, 0xa0, + 0x5e, 0x16, 0xf0, 0x97, 0x85, 0x00, 0x68, 0x5e, 0x3b, 0x06, 0x26, 0x5c, + 0x02, 0x01, 0x50, 0x03, 0x00, 0x06, 0x5b, 0x02, 0x87, 0x80, 0xbf, 0x00, + 0x06, 0x5b, 0x01, 0x85, 0xe0, 0x06, 0x09, 0x10, 0x48, 0x02, 0x80, 0xd0, + 0x03, 0x00, 0x06, 0x6c, 0x00, 0xb0, 0x5e, 0x1b, 0x00, 0x17, 0xa3, 0x00, + 0xb0, 0x00, 0x8b, 0x00, 0x17, 0xa4, 0x02, 0x04, 0x00, 0xbf, 0x00, 0x06, + 0x62, 0x00, 0x6e, 0x41, 0x97, 0x30, 0x66, 0x62, 0x01, 0x18, 0x5a, 0x03, + 0x00, 0x17, 0xa3, 0x01, 0x1a, 0x5a, 0x03, 0x00, 0x17, 0xa4, 0x00, 0x68, + 0xc1, 0x83, 0x18, 0x06, 0x65, 0x00, 0xe0, 0x02, 0x93, 0x00, 0x20, 0xa4, + 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x06, 0x67, 0x00, 0x6d, 0x5e, 0x2e, 0xf4, + 0x86, 0x67, 0x01, 0x82, 0xe0, 0x06, 0x86, 0x34, 0x31, 0x00, 0xe0, 0x5e, + 0x33, 0x00, 0x37, 0x8c, 0x00, 0x68, 0xde, 0x32, 0xf4, 0x66, 0x6a, 0x00, + 0xb0, 0x5e, 0x0f, 0x00, 0x17, 0x85, 0x00, 0x6d, 0xde, 0x2e, 0xf4, 0x66, + 0x78, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x06, 0x8a, 0x00, 0xb0, 0x5e, 0x1f, + 0x00, 0x17, 0xa3, 0x00, 0xb0, 0x00, 0x8f, 0x00, 0x17, 0xa4, 0x02, 0x04, + 0x00, 0xbf, 0x00, 0x06, 0x72, 0x00, 0x6e, 0x41, 0x97, 0x30, 0x66, 0x72, + 0x01, 0x1c, 0x5a, 0x03, 0x00, 0x17, 0xa3, 0x01, 0x1e, 0x5a, 0x03, 0x00, + 0x17, 0xa4, 0x00, 0x6d, 0x5e, 0x2e, 0xf4, 0x86, 0x74, 0x01, 0x82, 0xe0, + 0x06, 0x86, 0x34, 0x31, 0x00, 0xe0, 0x5e, 0x37, 0x00, 0x37, 0x8d, 0x00, + 0x68, 0xde, 0x36, 0xf4, 0x66, 0x77, 0x00, 0xb0, 0x5e, 0x0f, 0x00, 0x17, + 0x85, 0x00, 0x6d, 0x5e, 0x2e, 0xf4, 0x66, 0x8a, 0x01, 0x85, 0xe0, 0x02, + 0x09, 0x10, 0x48, 0x03, 0xd1, 0xde, 0x02, 0xf0, 0x06, 0x7a, 0x00, 0x68, + 0x5e, 0x4b, 0x04, 0x86, 0x84, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0d, 0x4c, + 0x00, 0x68, 0x41, 0x83, 0x18, 0x06, 0xae, 0x02, 0x03, 0x00, 0xc7, 0x00, + 0x06, 0x82, 0x02, 0x0c, 0xd0, 0x03, 0x00, 0x06, 0x82, 0x02, 0x83, 0x50, + 0xc7, 0x00, 0x06, 0x82, 0x00, 0x68, 0xde, 0x4b, 0x05, 0xa6, 0x82, 0x03, + 0xbf, 0xde, 0x02, 0xf0, 0x12, 0x14, 0x01, 0x81, 0xe0, 0x06, 0x86, 0x34, + 0x31, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x05, 0xce, 0x00, 0xb0, 0x50, 0x4f, + 0x00, 0x11, 0xf2, 0x00, 0xb0, 0x50, 0x53, 0x00, 0x11, 0xf3, 0x00, 0xb0, + 0x50, 0x57, 0x00, 0x11, 0xf4, 0x01, 0xbc, 0x60, 0x03, 0x01, 0x11, 0xf5, + 0x01, 0xbc, 0x60, 0x03, 0x00, 0x51, 0xf0, 0x03, 0xbf, 0xde, 0x02, 0xf0, + 0x05, 0xce, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0d, 0x4c, 0x01, 0x81, 0x60, + 0x02, 0x09, 0x10, 0x48, 0x03, 0x29, 0x5e, 0x02, 0xf0, 0x06, 0x8f, 0x02, + 0x83, 0x00, 0xc7, 0x00, 0x12, 0x14, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x05, + 0xce, 0x03, 0xd1, 0xde, 0x02, 0xf0, 0x06, 0x90, 0x03, 0xa5, 0xde, 0x02, + 0xf0, 0x05, 0xce, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x00, 0x13, 0x02, 0x80, + 0x01, 0xb3, 0x00, 0x00, 0x13, 0x02, 0x06, 0x50, 0x03, 0x00, 0x06, 0x99, + 0x00, 0xb0, 0x01, 0x03, 0x00, 0x17, 0xa1, 0x00, 0x6d, 0x81, 0x0a, 0xf4, + 0x26, 0x99, 0x00, 0xe8, 0x44, 0x64, 0x08, 0x77, 0xa1, 0x00, 0x6e, 0x5e, + 0x84, 0x08, 0x26, 0x99, 0x01, 0x87, 0xe0, 0x06, 0xf5, 0x77, 0xab, 0x01, + 0x08, 0x5e, 0x4b, 0x00, 0x17, 0xa1, 0x00, 0x68, 0x5e, 0x87, 0x00, 0x26, + 0x9c, 0x00, 0xb0, 0x5e, 0x0f, 0x00, 0x17, 0x85, 0x00, 0x02, 0x5e, 0x02, + 0xf0, 0x0d, 0x4c, 0x00, 0x68, 0x5e, 0x3b, 0x06, 0x26, 0xa2, 0x01, 0xbc, + 0x60, 0x03, 0x00, 0x17, 0x8c, 0x02, 0x00, 0xd0, 0x03, 0x00, 0x06, 0xa7, + 0x01, 0xbc, 0x60, 0x03, 0x00, 0x17, 0x8d, 0x03, 0xbf, 0xde, 0x02, 0xf0, + 0x06, 0xa7, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x17, 0x8c, 0x02, 0x03, 0x00, + 0xc7, 0x00, 0x01, 0xaf, 0x02, 0x0c, 0xd0, 0x03, 0x00, 0x01, 0xaf, 0x01, + 0x9c, 0x60, 0x02, 0x84, 0xf4, 0x27, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x01, + 0xaf, 0x00, 0x68, 0x41, 0x83, 0x18, 0x06, 0xad, 0x01, 0x80, 0x60, 0x06, + 0x84, 0xf4, 0x27, 0x03, 0x29, 0x5e, 0x02, 0xf0, 0x05, 0xce, 0x01, 0x82, + 0x60, 0x06, 0x86, 0x34, 0x31, 0x02, 0x83, 0x00, 0xc7, 0x00, 0x12, 0x14, + 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x05, 0xce, 0x00, 0xe0, 0x02, 0x97, 0x00, + 0x20, 0xa5, 0x01, 0x81, 0x60, 0x02, 0x09, 0x10, 0x48, 0x01, 0xbc, 0x60, + 0x03, 0x00, 0x08, 0x18, 0x00, 0xe0, 0x01, 0x7b, 0x00, 0xa0, 0x5e, 0x01, + 0xbc, 0x60, 0x13, 0x10, 0xd7, 0xa1, 0x00, 0x6d, 0x01, 0x7a, 0xf4, 0x20, + 0x13, 0x01, 0xbc, 0x60, 0x13, 0x09, 0x40, 0x5e, 0x03, 0xbf, 0xde, 0x02, + 0xf0, 0x00, 0x13, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0b, 0x22, 0x03, 0x38, + 0xde, 0x02, 0xf0, 0x00, 0x13, 0x03, 0x9e, 0xde, 0x02, 0xf0, 0x00, 0x13, + 0x00, 0xe8, 0x44, 0x4c, 0x00, 0xf7, 0xa1, 0x00, 0xe8, 0x5e, 0x84, 0x01, + 0x17, 0xa1, 0x00, 0x6a, 0xde, 0x84, 0x01, 0x06, 0xbe, 0x00, 0xe8, 0x5e, + 0x84, 0x01, 0x11, 0x87, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x11, 0x88, 0x01, + 0xa5, 0xe0, 0x22, 0x30, 0x11, 0x80, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x11, + 0x13, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x11, 0x14, 0x00, 0xb0, 0x44, 0x67, + 0x00, 0x17, 0xa1, 0x00, 0xb0, 0x44, 0x6b, 0x00, 0x17, 0xa2, 0x00, 0xb0, + 0x5e, 0x87, 0x00, 0x11, 0x04, 0x00, 0xb0, 0x5e, 0x8b, 0x00, 0x11, 0x05, + 0x03, 0xb8, 0xde, 0x02, 0xf0, 0x06, 0xc0, 0x03, 0xbf, 0xde, 0x02, 0xf0, + 0x00, 0x13, 0x01, 0xbc, 0x60, 0x03, 0x04, 0xb7, 0x92, 0x01, 0xbc, 0x60, + 0x03, 0x04, 0x17, 0xa1, 0x01, 0xbc, 0x63, 0xff, 0x1f, 0xf0, 0xcb, 0x01, + 0xbc, 0x63, 0xff, 0x1f, 0xf0, 0xcc, 0x01, 0xbc, 0x63, 0xff, 0x1f, 0xf0, + 0xcd, 0x01, 0xbc, 0x63, 0xff, 0x1f, 0xf0, 0xce, 0x01, 0xbc, 0x63, 0xff, + 0x1f, 0xf0, 0xcf, 0x01, 0xbc, 0x63, 0xff, 0x1f, 0xf0, 0xd0, 0x00, 0xb0, + 0x52, 0x17, 0x00, 0x10, 0xe8, 0x01, 0xbc, 0x63, 0xff, 0x1f, 0xf0, 0xc8, + 0x00, 0xb0, 0x52, 0x1b, 0x00, 0x10, 0xe9, 0x01, 0xbc, 0x63, 0xff, 0x1f, + 0xf0, 0xc9, 0x00, 0xb0, 0x52, 0x1f, 0x00, 0x10, 0xea, 0x01, 0xbc, 0x63, + 0xff, 0x1f, 0xf0, 0xca, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x10, 0xe4, 0x02, + 0x86, 0x00, 0xc3, 0x00, 0x06, 0xe1, 0x00, 0xb0, 0x54, 0x0f, 0x00, 0x17, + 0xa2, 0x00, 0x69, 0xde, 0x8a, 0x90, 0x86, 0xd9, 0x00, 0xe8, 0x52, 0x12, + 0xf4, 0x50, 0xe4, 0x00, 0x68, 0xa0, 0x5f, 0x00, 0x06, 0xe1, 0x01, 0xbc, + 0x60, 0x03, 0x00, 0x10, 0xe4, 0x00, 0xb0, 0x54, 0x27, 0x00, 0x10, 0xe0, + 0x00, 0xb0, 0x54, 0x2f, 0x00, 0x10, 0xe1, 0x03, 0xbf, 0xde, 0x02, 0xf0, + 0x06, 0xea, 0x03, 0xa4, 0xde, 0x02, 0xf0, 0x08, 0xc6, 0x03, 0xa9, 0xde, + 0x02, 0xf0, 0x08, 0xc6, 0x01, 0xbc, 0x60, 0x03, 0x01, 0xd7, 0xa1, 0x02, + 0x06, 0x00, 0xc3, 0x00, 0x06, 0xe3, 0x02, 0x80, 0xde, 0x5f, 0x00, 0x06, + 0xe8, 0x00, 0xb0, 0x54, 0x07, 0x00, 0x10, 0xe0, 0x00, 0x68, 0x20, 0x5f, + 0x00, 0x06, 0xe6, 0x01, 0xd2, 0xde, 0x86, 0xa0, 0x30, 0xe0, 0x00, 0xb0, + 0x54, 0x0b, 0x00, 0x10, 0xe1, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x06, 0xea, + 0x01, 0xbc, 0x5e, 0x86, 0x90, 0x10, 0xe0, 0x01, 0xbc, 0x60, 0x1f, 0x00, + 0x10, 0xe1, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x10, 0xe2, 0x00, 0xb0, 0x52, + 0x23, 0x00, 0x10, 0xe5, 0x01, 0xbc, 0x63, 0xff, 0x1f, 0xf0, 0xc5, 0x00, + 0xb0, 0x52, 0x27, 0x00, 0x10, 0xe6, 0x01, 0xbc, 0x63, 0xff, 0x1f, 0xf0, + 0xc6, 0x00, 0xb0, 0x52, 0x2b, 0x00, 0x10, 0xe7, 0x01, 0xbc, 0x63, 0xff, + 0x1f, 0xf0, 0xc7, 0x00, 0xb0, 0x00, 0x47, 0x00, 0x10, 0x86, 0x01, 0x08, + 0x20, 0x5f, 0x00, 0x17, 0x81, 0x01, 0x38, 0x52, 0x03, 0x00, 0x17, 0x80, + 0x01, 0x02, 0xc0, 0x27, 0x00, 0x17, 0xa6, 0x00, 0x02, 0x5e, 0x02, 0xf0, + 0x11, 0xad, 0x00, 0x68, 0x20, 0x5f, 0x00, 0x46, 0xf8, 0x00, 0xb0, 0x54, + 0x07, 0x00, 0x17, 0x80, 0x02, 0x81, 0x81, 0xb3, 0x00, 0x06, 0xfa, 0x00, + 0x02, 0x5e, 0x02, 0xf0, 0x0d, 0x32, 0x00, 0x68, 0x20, 0x5f, 0x00, 0x27, + 0x02, 0x00, 0x68, 0xa0, 0x5f, 0x00, 0x06, 0xfd, 0x02, 0x1a, 0x54, 0x07, + 0x00, 0x07, 0x02, 0x00, 0x68, 0x00, 0xa7, 0x01, 0x07, 0x00, 0x01, 0x03, + 0xc0, 0x27, 0x00, 0x17, 0xa1, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x07, 0x01, + 0x01, 0x06, 0xc0, 0x3b, 0x00, 0x17, 0xa1, 0x01, 0x82, 0x5e, 0x86, 0x10, + 0xd0, 0x86, 0x03, 0xa9, 0xde, 0x02, 0xf0, 0x09, 0x21, 0x00, 0x68, 0x5e, + 0x4f, 0x04, 0x27, 0x14, 0x01, 0xbc, 0x63, 0xff, 0x1f, 0xf0, 0xc3, 0x00, + 0x68, 0x5e, 0x4f, 0x05, 0xa7, 0x0a, 0x01, 0xbc, 0x60, 0x03, 0x1a, 0x90, + 0xe3, 0x01, 0xbc, 0x60, 0x03, 0x06, 0xb7, 0x92, 0x00, 0x68, 0x5e, 0x4f, + 0x05, 0x27, 0x14, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x07, 0x0e, 0x01, 0xbc, + 0x60, 0x03, 0x06, 0x37, 0x92, 0x02, 0x98, 0x44, 0x07, 0x00, 0x09, 0xef, + 0x02, 0x80, 0x46, 0x07, 0x00, 0x09, 0xef, 0x01, 0xbc, 0x60, 0x03, 0x18, + 0x90, 0xe3, 0x00, 0xb0, 0x20, 0x5f, 0x00, 0x17, 0x81, 0x00, 0x02, 0x5e, + 0x02, 0xf0, 0x0d, 0x3f, 0x00, 0xe8, 0x5e, 0x84, 0x00, 0xd7, 0xa1, 0x00, + 0x6a, 0x5e, 0x86, 0x90, 0x87, 0x14, 0x00, 0xe8, 0x52, 0x12, 0xf4, 0x30, + 0xe4, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x07, 0x17, 0x01, 0xbc, 0x60, 0x03, + 0x00, 0x10, 0xe4, 0x03, 0x38, 0xde, 0x02, 0xf0, 0x07, 0x17, 0x01, 0x87, + 0xe0, 0x06, 0x1c, 0x90, 0xe4, 0x01, 0x90, 0x60, 0x0a, 0x09, 0x10, 0x48, + 0x01, 0xbc, 0x61, 0x03, 0x04, 0x37, 0x91, 0x00, 0x68, 0x5e, 0x4f, 0x05, + 0xa9, 0xef, 0x03, 0x83, 0x5e, 0x02, 0xf0, 0x08, 0xc6, 0x03, 0xbf, 0xde, + 0x02, 0xf0, 0x00, 0x02, 0x01, 0x86, 0x60, 0x02, 0xf7, 0xf7, 0xbf, 0x01, + 0x82, 0xe0, 0x02, 0xf5, 0xb7, 0xad, 0x01, 0x85, 0xe0, 0x02, 0xf5, 0xb7, + 0xad, 0x02, 0x04, 0x41, 0x63, 0x00, 0x07, 0x27, 0x01, 0x84, 0x60, 0x02, + 0x0b, 0x10, 0x58, 0x02, 0x05, 0x5e, 0xaf, 0x00, 0x07, 0x23, 0x01, 0x87, + 0xe0, 0x06, 0x26, 0x71, 0x33, 0x02, 0x04, 0x00, 0xbf, 0x00, 0x07, 0x26, + 0x01, 0x85, 0xe0, 0x02, 0xf5, 0x77, 0xab, 0x00, 0x02, 0x5e, 0x02, 0xf0, + 0x0e, 0x7c, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x00, 0x02, 0x02, 0x83, 0xc0, + 0x37, 0x00, 0x07, 0x2f, 0x00, 0x6c, 0xc4, 0x65, 0x6c, 0x07, 0x30, 0x01, + 0xbc, 0x60, 0x1b, 0x1a, 0x77, 0xa1, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, + 0xce, 0x01, 0x80, 0xe0, 0x06, 0x03, 0x37, 0xa2, 0x00, 0x02, 0x5e, 0x02, + 0xf0, 0x00, 0xd4, 0x01, 0x80, 0xe0, 0x02, 0xf4, 0x57, 0xa2, 0x00, 0x02, + 0x5e, 0x02, 0xf0, 0x00, 0xd4, 0x00, 0xe0, 0x44, 0x65, 0x6c, 0x2b, 0x60, + 0x02, 0x85, 0xc5, 0x23, 0x00, 0x07, 0x36, 0x01, 0x84, 0x60, 0x06, 0x0b, + 0x10, 0x58, 0x02, 0x00, 0xde, 0xff, 0x00, 0x07, 0x36, 0x01, 0x80, 0xe0, + 0x02, 0xf7, 0xf7, 0xbf, 0x00, 0x68, 0x2b, 0x67, 0x00, 0x07, 0x36, 0x00, + 0xe0, 0x44, 0x65, 0x5b, 0x0a, 0xd9, 0x02, 0x05, 0x5e, 0xaf, 0x00, 0x07, + 0x38, 0x01, 0xbc, 0x61, 0x03, 0x00, 0x11, 0x33, 0x02, 0x05, 0x80, 0xbf, + 0x00, 0x07, 0x3e, 0x01, 0xbc, 0x60, 0x13, 0x11, 0x57, 0xa1, 0x00, 0x02, + 0x5e, 0x02, 0xf0, 0x00, 0xce, 0x01, 0x96, 0x60, 0x0e, 0x03, 0x30, 0x19, + 0x00, 0xb0, 0x40, 0x67, 0x00, 0x17, 0xa2, 0x00, 0x02, 0x5e, 0x02, 0xf0, + 0x00, 0xd4, 0x02, 0x83, 0xc0, 0x37, 0x00, 0x00, 0x13, 0x00, 0xe0, 0x02, + 0x1f, 0x00, 0x20, 0x87, 0x01, 0x82, 0x60, 0x06, 0x28, 0x91, 0x44, 0x03, + 0xbf, 0xde, 0x02, 0xf0, 0x00, 0x13, 0x02, 0x81, 0x40, 0x13, 0x00, 0x00, + 0x02, 0x02, 0x00, 0x42, 0x03, 0x00, 0x07, 0x45, 0x01, 0x84, 0x60, 0x02, + 0xf5, 0x97, 0xac, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x10, 0x80, 0x03, 0xa3, + 0xde, 0x02, 0xf0, 0x07, 0x48, 0x01, 0x90, 0x60, 0x02, 0x09, 0x10, 0x48, + 0x00, 0xb0, 0x44, 0x67, 0x00, 0x17, 0x9e, 0x00, 0xb0, 0x44, 0x6b, 0x00, + 0x17, 0x9d, 0x00, 0xb0, 0x44, 0x6f, 0x00, 0x17, 0x9c, 0x00, 0xb0, 0x44, + 0x73, 0x00, 0x17, 0x9b, 0x00, 0x68, 0xde, 0x7a, 0x23, 0x27, 0x48, 0x00, + 0xe0, 0x02, 0x23, 0x00, 0x20, 0x88, 0x01, 0x15, 0x40, 0x3b, 0x00, 0x17, + 0x97, 0x00, 0xb0, 0x01, 0x43, 0x00, 0x17, 0xa1, 0x01, 0xc9, 0xde, 0x84, + 0x05, 0x28, 0x05, 0x01, 0xbc, 0x60, 0x03, 0x10, 0x77, 0x95, 0x01, 0x91, + 0xe0, 0x02, 0x0d, 0x90, 0x6c, 0x02, 0x86, 0x40, 0x37, 0x00, 0x07, 0x56, + 0x00, 0xe0, 0x02, 0xbb, 0x00, 0x20, 0xae, 0x03, 0xbf, 0xde, 0x02, 0xf0, + 0x0a, 0x97, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x14, 0x80, 0x01, 0xbc, 0x60, + 0x03, 0x00, 0x14, 0x81, 0x01, 0xb8, 0x60, 0x0a, 0x04, 0x90, 0x24, 0x01, + 0xbc, 0x60, 0x03, 0x04, 0x08, 0x2a, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x48, + 0x29, 0x01, 0xbc, 0x60, 0x03, 0x00, 0xd0, 0x2a, 0x01, 0xb3, 0x60, 0x07, + 0x00, 0x10, 0x04, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x08, 0x0e, 0x01, 0xbc, + 0x60, 0x03, 0x00, 0x08, 0x0f, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x08, 0x10, + 0x01, 0xbc, 0x60, 0x03, 0x00, 0x08, 0x11, 0x01, 0x83, 0xe0, 0x02, 0xf5, + 0xd7, 0xae, 0x02, 0x87, 0xc0, 0x37, 0x00, 0x0a, 0x93, 0x00, 0x02, 0x5e, + 0x02, 0xf0, 0x11, 0x8f, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0f, 0x38, 0x03, + 0x43, 0x5e, 0x02, 0xf0, 0x07, 0x62, 0x00, 0x6d, 0x40, 0x33, 0x00, 0xcb, + 0x03, 0x00, 0x68, 0x5e, 0x5f, 0x00, 0x47, 0x7a, 0x00, 0x68, 0x5e, 0x5f, + 0x00, 0x27, 0x77, 0x00, 0x68, 0x00, 0xa7, 0x00, 0xc7, 0x6c, 0x00, 0x68, + 0x00, 0xa7, 0x01, 0x07, 0x6c, 0x00, 0x68, 0x80, 0xa7, 0x00, 0xa7, 0x6d, + 0x00, 0xe0, 0x44, 0x66, 0x90, 0x28, 0x36, 0x01, 0xbc, 0x62, 0xc3, 0x00, + 0x17, 0xa1, 0x02, 0x80, 0x52, 0x03, 0x00, 0x07, 0x70, 0x01, 0x96, 0x52, + 0x03, 0x00, 0x17, 0xa1, 0x00, 0x80, 0xde, 0x86, 0x90, 0x37, 0x9a, 0x02, + 0x03, 0x52, 0x03, 0x00, 0x07, 0x75, 0x00, 0xe0, 0x5e, 0x6a, 0x90, 0x37, + 0x9a, 0x02, 0x07, 0xd2, 0x03, 0x00, 0x07, 0x75, 0x00, 0xe8, 0x5e, 0x6b, + 0x00, 0x37, 0x9a, 0x02, 0x9e, 0x5e, 0x6b, 0x00, 0x0b, 0x03, 0x03, 0xbf, + 0xde, 0x02, 0xf0, 0x07, 0x7f, 0x01, 0x52, 0xd2, 0x03, 0x00, 0x17, 0xa1, + 0x01, 0x85, 0xd2, 0x06, 0xf4, 0x37, 0x9a, 0x03, 0xbf, 0xde, 0x02, 0xf0, + 0x07, 0x7f, 0x01, 0x3c, 0x52, 0x03, 0x00, 0x17, 0xa1, 0x01, 0xbc, 0x52, + 0x06, 0xf4, 0x37, 0x9a, 0x00, 0x6e, 0x5e, 0x68, 0x0b, 0xab, 0x03, 0x00, + 0x68, 0x2f, 0xbf, 0x00, 0x07, 0x7f, 0x02, 0x8e, 0x52, 0x07, 0x00, 0x0b, + 0x03, 0x02, 0x04, 0xc0, 0x3b, 0x00, 0x07, 0x89, 0x01, 0x81, 0xe0, 0x06, + 0x0d, 0x90, 0x6c, 0x02, 0x87, 0x40, 0x37, 0x00, 0x0a, 0x97, 0x00, 0x02, + 0x5e, 0x02, 0xf0, 0x11, 0x8f, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0f, 0x38, + 0x02, 0x87, 0xc0, 0xaf, 0x00, 0x07, 0x81, 0x02, 0x87, 0xc0, 0xaf, 0x00, + 0x0a, 0x93, 0x01, 0x58, 0x40, 0xaf, 0x00, 0x17, 0x9a, 0x01, 0xbc, 0x60, + 0x3f, 0x1e, 0x17, 0xa1, 0x00, 0x6d, 0xde, 0x6a, 0xf4, 0x2a, 0x93, 0x03, + 0x5b, 0x5e, 0x02, 0xf0, 0x07, 0x8b, 0x01, 0xbc, 0x60, 0x13, 0x00, 0x10, + 0x43, 0x00, 0xb0, 0x41, 0x23, 0x28, 0x10, 0x48, 0x01, 0x80, 0x60, 0x02, + 0xf2, 0x97, 0x94, 0x01, 0x84, 0xe0, 0x02, 0x09, 0x10, 0x48, 0x01, 0x58, + 0x40, 0xaf, 0x00, 0x10, 0x2a, 0x00, 0x68, 0x40, 0xab, 0x00, 0x2a, 0x93, + 0x01, 0xbb, 0x5e, 0x56, 0x00, 0x90, 0x04, 0x02, 0x03, 0x5e, 0x57, 0x00, + 0x07, 0x9a, 0x02, 0x00, 0x47, 0xa3, 0x00, 0x07, 0x97, 0x01, 0xbc, 0x62, + 0x1e, 0x3c, 0x11, 0xe0, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x11, 0xea, 0x00, + 0xb0, 0x5e, 0x6b, 0x00, 0x11, 0xeb, 0x01, 0x98, 0x60, 0x1e, 0x3d, 0x11, + 0xe8, 0x02, 0x00, 0x47, 0xb3, 0x00, 0x07, 0x9a, 0x00, 0xb0, 0x5e, 0x6b, + 0x00, 0x11, 0xef, 0x01, 0xb0, 0xe0, 0xce, 0x3d, 0x91, 0xec, 0x03, 0x83, + 0x5e, 0x02, 0xf0, 0x07, 0x9e, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x11, 0x8f, + 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0f, 0x38, 0x00, 0x6d, 0x40, 0x33, 0x04, + 0xc7, 0x9a, 0x01, 0x83, 0x60, 0x02, 0x0d, 0x90, 0x6c, 0x02, 0x02, 0x00, + 0xf3, 0x00, 0x07, 0xa6, 0x03, 0xaa, 0xde, 0x02, 0xf0, 0x07, 0xa8, 0x02, + 0x80, 0x52, 0x17, 0x00, 0x07, 0xa8, 0x00, 0xe0, 0x41, 0x87, 0x00, 0xb0, + 0x65, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0c, 0x80, 0x02, 0x00, 0xc0, 0x77, + 0x00, 0x07, 0xa6, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x07, 0xa7, 0x03, 0x30, + 0x5e, 0x02, 0xf0, 0x07, 0xa8, 0x01, 0x83, 0x60, 0x06, 0x0d, 0x90, 0x6c, + 0x01, 0xbc, 0x60, 0x03, 0x00, 0x08, 0x02, 0x01, 0x88, 0xe0, 0x0f, 0x00, + 0x08, 0x03, 0x00, 0x6d, 0x40, 0x33, 0x02, 0x08, 0xc0, 0x01, 0x29, 0x52, + 0x0f, 0x00, 0x17, 0x93, 0x01, 0x09, 0x52, 0x0f, 0x00, 0x17, 0xaa, 0x01, + 0x96, 0x60, 0x02, 0xf2, 0x97, 0x94, 0x00, 0xe0, 0x41, 0x87, 0x01, 0xf0, + 0x65, 0x01, 0xbc, 0x60, 0x0f, 0x00, 0x17, 0xa1, 0x00, 0x28, 0xde, 0x86, + 0x90, 0x67, 0xb4, 0x01, 0x86, 0x60, 0x06, 0xf2, 0x97, 0x94, 0x00, 0xe0, + 0x41, 0x97, 0x00, 0x70, 0x65, 0x00, 0xe0, 0x20, 0xab, 0x00, 0xc8, 0x2a, + 0x01, 0x06, 0x5e, 0x53, 0x00, 0x17, 0xa2, 0x00, 0xa0, 0x5e, 0x4f, 0x04, + 0x77, 0xa1, 0x00, 0x68, 0xde, 0x87, 0x04, 0x47, 0xc2, 0x01, 0x86, 0xe0, + 0x06, 0xf2, 0x97, 0x94, 0x00, 0xb8, 0x5e, 0x8b, 0x00, 0x37, 0xa2, 0x00, + 0xb0, 0x5a, 0x03, 0x00, 0x17, 0xa0, 0x02, 0x0a, 0xda, 0x03, 0x00, 0x07, + 0xbc, 0x01, 0x87, 0x60, 0x06, 0xf2, 0x97, 0x94, 0x02, 0x84, 0xc0, 0x3b, + 0x00, 0x07, 0xc2, 0x02, 0x03, 0xda, 0x03, 0x00, 0x07, 0xc2, 0x03, 0xab, + 0x5e, 0x02, 0xf0, 0x07, 0xc0, 0x02, 0x04, 0x41, 0x07, 0x00, 0x07, 0xc2, + 0x01, 0x80, 0x60, 0x05, 0x00, 0x68, 0x03, 0x01, 0x06, 0x5e, 0x53, 0x00, + 0x17, 0xa2, 0x01, 0x82, 0xde, 0x8a, 0x00, 0x90, 0x04, 0x03, 0xaa, 0xde, + 0x02, 0xf0, 0x07, 0xf1, 0x03, 0xab, 0x5e, 0x02, 0xf0, 0x07, 0xdd, 0x02, + 0x87, 0xd2, 0x13, 0x00, 0x07, 0xf1, 0x00, 0xb0, 0x52, 0x13, 0x00, 0x11, + 0x86, 0x01, 0xa5, 0xe0, 0x0a, 0x30, 0x11, 0x80, 0x01, 0x84, 0x60, 0x02, + 0x0d, 0x90, 0x6c, 0x01, 0xbc, 0x63, 0xff, 0x1f, 0xf7, 0x99, 0x00, 0xe0, + 0x41, 0x87, 0x01, 0x70, 0x65, 0x00, 0x68, 0xde, 0xab, 0x00, 0x27, 0xcf, + 0x00, 0xa0, 0x5e, 0x4f, 0xff, 0x77, 0xa1, 0x00, 0x68, 0xde, 0x87, 0x07, + 0x27, 0xdb, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x07, 0xd1, 0x02, 0x84, 0x52, + 0x0f, 0x00, 0x07, 0xdb, 0x02, 0x04, 0xd2, 0x0f, 0x00, 0x07, 0xd4, 0x03, + 0xb1, 0x5e, 0x02, 0xf0, 0x07, 0xda, 0x00, 0xe0, 0x41, 0x87, 0x01, 0x10, + 0x65, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x07, 0xd5, 0x03, 0xb3, 0x5e, 0x02, + 0xf0, 0x07, 0xda, 0x02, 0x00, 0x80, 0xf3, 0x00, 0x07, 0xdb, 0x02, 0x00, + 0x52, 0x17, 0x00, 0x07, 0xdb, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0c, 0x80, + 0x02, 0x00, 0xc0, 0x77, 0x00, 0x07, 0xdb, 0x01, 0x29, 0x40, 0x77, 0x00, + 0x17, 0x99, 0x01, 0x84, 0x60, 0x06, 0x0d, 0x90, 0x6c, 0x02, 0x00, 0x52, + 0x17, 0x00, 0x07, 0xf1, 0x03, 0x31, 0x5e, 0x02, 0xf0, 0x07, 0xf1, 0x01, + 0x86, 0x60, 0x02, 0x30, 0x11, 0x80, 0x01, 0x80, 0xe0, 0x01, 0x61, 0xcb, + 0x0e, 0x02, 0x00, 0x52, 0x17, 0x00, 0x07, 0xe1, 0x02, 0x02, 0xab, 0x47, + 0x00, 0x07, 0xec, 0x00, 0x68, 0xde, 0x5f, 0x00, 0x07, 0xec, 0x00, 0xb0, + 0x2b, 0xaf, 0x00, 0x17, 0xa1, 0x00, 0x68, 0x2a, 0xb3, 0x00, 0x07, 0xec, + 0x00, 0xb0, 0x2b, 0xab, 0x00, 0x17, 0xa2, 0x00, 0x6d, 0xaa, 0xb2, 0xf4, + 0x47, 0xec, 0x00, 0x68, 0xde, 0xab, 0x00, 0x47, 0xe8, 0x01, 0x84, 0xe0, + 0x06, 0xf7, 0xf7, 0xbf, 0x00, 0x68, 0xde, 0x4f, 0x02, 0x87, 0xec, 0x00, + 0x02, 0x5e, 0x02, 0xf0, 0x13, 0x15, 0x02, 0x06, 0xde, 0xff, 0x00, 0x07, + 0xec, 0x00, 0xe0, 0x2b, 0xdf, 0x00, 0x2a, 0xf7, 0x00, 0x68, 0xde, 0x5f, + 0x00, 0x07, 0xef, 0x00, 0x68, 0xde, 0xab, 0x00, 0x47, 0xef, 0x01, 0x80, + 0xe0, 0x05, 0x61, 0xcb, 0x0e, 0x00, 0x68, 0x2b, 0x67, 0x00, 0x07, 0xf1, + 0x01, 0x80, 0xe0, 0x06, 0xf7, 0xf7, 0xbf, 0x02, 0x07, 0x52, 0x0f, 0x00, + 0x08, 0x71, 0x02, 0x80, 0x47, 0xa3, 0x00, 0x08, 0x6e, 0x02, 0x80, 0x47, + 0xb3, 0x00, 0x08, 0x6e, 0x00, 0xe0, 0x20, 0xab, 0x00, 0x88, 0x2a, 0x00, + 0xe8, 0x20, 0xa7, 0x00, 0x88, 0x29, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x11, + 0xe4, 0x01, 0xbc, 0x63, 0xff, 0x1f, 0xf7, 0xa5, 0x01, 0xbc, 0x60, 0x03, + 0x03, 0xd1, 0xe1, 0x02, 0x06, 0x5e, 0x53, 0x00, 0x07, 0xfb, 0x01, 0xbc, + 0x60, 0x03, 0x04, 0x91, 0xe1, 0x02, 0x06, 0xde, 0x53, 0x00, 0x07, 0xff, + 0x00, 0xe0, 0x47, 0x87, 0x00, 0x51, 0xe1, 0x02, 0x07, 0xd2, 0x0f, 0x00, + 0x07, 0xff, 0x00, 0xe0, 0x47, 0x87, 0x00, 0x91, 0xe1, 0x00, 0x6d, 0x40, + 0x33, 0x02, 0xc8, 0xc0, 0x00, 0x68, 0x5e, 0x4f, 0x05, 0x88, 0x02, 0x00, + 0x68, 0xde, 0xab, 0x00, 0x48, 0x71, 0x03, 0xab, 0x5e, 0x02, 0xf0, 0x08, + 0x05, 0x02, 0x00, 0x52, 0x17, 0x00, 0x08, 0x71, 0x02, 0x05, 0x80, 0xf3, + 0x00, 0x08, 0x10, 0x00, 0xe0, 0x41, 0x87, 0x01, 0x10, 0x65, 0x02, 0x02, + 0x00, 0xf3, 0x00, 0x08, 0x09, 0x02, 0x04, 0xd2, 0x0f, 0x00, 0x08, 0x09, + 0x00, 0xe0, 0x41, 0x87, 0x00, 0xb0, 0x65, 0x00, 0x02, 0x5e, 0x02, 0xf0, + 0x0c, 0x80, 0x02, 0x00, 0xc0, 0x77, 0x00, 0x08, 0x0d, 0x01, 0x29, 0x40, + 0x77, 0x00, 0x17, 0xa5, 0x00, 0xe0, 0x5e, 0x97, 0x00, 0x97, 0xa5, 0x00, + 0x68, 0xde, 0x97, 0xff, 0xe8, 0x10, 0x02, 0x80, 0x52, 0x17, 0x00, 0x08, + 0x71, 0x02, 0x07, 0x00, 0xbf, 0x00, 0x08, 0x71, 0x01, 0xbc, 0x60, 0x1f, + 0x14, 0x17, 0xa2, 0x00, 0x90, 0x47, 0x87, 0x00, 0x30, 0x65, 0x00, 0xe0, + 0x41, 0x96, 0xf4, 0x50, 0x65, 0x00, 0xe0, 0x47, 0x87, 0x01, 0x08, 0x20, + 0x03, 0x83, 0x5e, 0x02, 0xf0, 0x08, 0x18, 0x00, 0x02, 0x5e, 0x02, 0xf0, + 0x11, 0x8f, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0f, 0x38, 0x00, 0x6d, 0x40, + 0x31, 0x04, 0x08, 0x14, 0x00, 0x6d, 0x40, 0x31, 0x04, 0x08, 0xc0, 0x01, + 0xbc, 0x60, 0x0b, 0x1d, 0x57, 0xa1, 0x00, 0x68, 0xde, 0x97, 0xff, 0xe8, + 0x28, 0x01, 0x0f, 0x5a, 0x07, 0x00, 0x17, 0xa5, 0x03, 0x1e, 0xde, 0x02, + 0xf0, 0x08, 0x28, 0x02, 0x00, 0x52, 0x17, 0x00, 0x08, 0x28, 0x03, 0x2c, + 0x5e, 0x02, 0xf0, 0x08, 0x71, 0x00, 0x68, 0x5e, 0x67, 0xff, 0xe8, 0x28, + 0x00, 0xe0, 0x5e, 0x67, 0x00, 0x97, 0x99, 0x00, 0xe0, 0x5e, 0x66, 0xf4, + 0x30, 0x64, 0x01, 0x2a, 0x58, 0x03, 0x00, 0x17, 0x99, 0x01, 0x00, 0xde, + 0x97, 0x00, 0x17, 0xa5, 0x00, 0xe0, 0x5e, 0x66, 0xf4, 0xb7, 0x99, 0x00, + 0xe0, 0x5e, 0x67, 0x00, 0x37, 0x99, 0x01, 0x15, 0x58, 0x03, 0x00, 0x17, + 0xa6, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x08, 0x38, 0x00, 0xe0, 0x5e, 0x96, + 0xf4, 0x30, 0x64, 0x01, 0x2a, 0x58, 0x03, 0x00, 0x17, 0x99, 0x02, 0x05, + 0x80, 0xf3, 0x00, 0x08, 0x37, 0x01, 0x82, 0xe0, 0x02, 0xf3, 0x37, 0x99, + 0x02, 0x00, 0x52, 0x17, 0x00, 0x08, 0x37, 0x01, 0x16, 0xd8, 0x03, 0x00, + 0x17, 0xa6, 0x01, 0x0f, 0x5a, 0x07, 0x00, 0x17, 0xa4, 0x01, 0x0c, 0xd8, + 0x03, 0x00, 0x17, 0xa1, 0x00, 0x68, 0xde, 0x92, 0xf4, 0x28, 0x33, 0x00, + 0xe0, 0x5e, 0x67, 0x02, 0x17, 0x99, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x08, + 0x3c, 0x01, 0x0d, 0xd8, 0x03, 0x00, 0x17, 0xa1, 0x00, 0x68, 0xde, 0x92, + 0xf4, 0x28, 0x71, 0x00, 0xe0, 0x5e, 0x67, 0x04, 0x17, 0x99, 0x03, 0xbf, + 0xde, 0x02, 0xf0, 0x08, 0x3c, 0x01, 0x10, 0x58, 0x03, 0x00, 0x17, 0xa6, + 0x00, 0x68, 0xde, 0x9b, 0x00, 0xc8, 0x3c, 0x01, 0x81, 0xda, 0x03, 0x00, + 0x17, 0xa1, 0x00, 0xb8, 0x5e, 0x86, 0xc0, 0x17, 0xa1, 0x02, 0x81, 0xde, + 0x87, 0x00, 0x08, 0x71, 0x00, 0x88, 0x5e, 0x67, 0x00, 0x77, 0x80, 0x00, + 0xe0, 0x00, 0xae, 0xf0, 0x10, 0x64, 0x01, 0xaa, 0xde, 0x65, 0x00, 0x48, + 0x02, 0x00, 0x68, 0xde, 0x9b, 0x00, 0x48, 0x56, 0x02, 0x07, 0x81, 0x87, + 0x00, 0x08, 0x49, 0x00, 0x6d, 0xde, 0x03, 0x0c, 0x08, 0x49, 0x02, 0x85, + 0x52, 0x0f, 0x00, 0x08, 0x49, 0x02, 0x98, 0x52, 0x3b, 0x00, 0x08, 0x49, + 0x01, 0x81, 0xe0, 0x05, 0x00, 0x68, 0x03, 0x00, 0xe0, 0x5e, 0x00, 0x0b, + 0x37, 0xa3, 0x00, 0xe0, 0x5e, 0x8f, 0x00, 0x97, 0xa3, 0x00, 0xe0, 0x41, + 0x87, 0x00, 0x77, 0xa2, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0d, 0x8d, 0x00, + 0xe8, 0x20, 0xa7, 0x01, 0x08, 0x29, 0x01, 0xbc, 0x60, 0x23, 0x07, 0x97, + 0x81, 0x00, 0x88, 0x5e, 0x97, 0x00, 0x77, 0xa1, 0x00, 0xe8, 0x5e, 0x86, + 0xf4, 0xb0, 0x63, 0x01, 0xbc, 0x60, 0x07, 0x0e, 0x17, 0xa1, 0x00, 0xe0, + 0x41, 0x8e, 0xf4, 0x30, 0x63, 0x00, 0xb0, 0x56, 0x17, 0x00, 0x17, 0xa1, + 0x00, 0xb0, 0x56, 0x1b, 0x00, 0x17, 0xa2, 0x00, 0x68, 0xde, 0x86, 0xd0, + 0x48, 0x71, 0x00, 0x68, 0xde, 0x8a, 0xd0, 0x68, 0x71, 0x00, 0x02, 0x5e, + 0x02, 0xf0, 0x0d, 0x62, 0x01, 0xbc, 0x60, 0x23, 0x07, 0x50, 0x64, 0x01, + 0xbc, 0x62, 0x4f, 0x00, 0x17, 0xa2, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0d, + 0xb5, 0x00, 0x68, 0x5e, 0x9b, 0x00, 0x48, 0x6e, 0x01, 0xbc, 0x62, 0x1e, + 0xf4, 0x71, 0xe0, 0x00, 0x68, 0xde, 0x9b, 0x00, 0xc8, 0x61, 0x01, 0xbc, + 0x61, 0x13, 0x00, 0xb7, 0xa1, 0x02, 0x06, 0x00, 0xf3, 0x00, 0x08, 0x5d, + 0x01, 0xbc, 0x60, 0x13, 0x00, 0xb7, 0xa1, 0x01, 0xbc, 0x60, 0x03, 0x00, + 0x11, 0xee, 0x00, 0xb0, 0x5e, 0x6b, 0x00, 0x11, 0xef, 0x01, 0x92, 0xe0, + 0x0e, 0xf4, 0x31, 0xec, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x08, 0x6e, 0x00, + 0x68, 0x5e, 0x9b, 0x00, 0x68, 0x63, 0x00, 0x68, 0xde, 0x9b, 0x00, 0xa8, + 0x6e, 0x01, 0x98, 0x60, 0x06, 0x3d, 0x11, 0xe8, 0x00, 0xe0, 0x20, 0xab, + 0x00, 0x88, 0x2a, 0x00, 0xe8, 0x20, 0xa7, 0x00, 0x88, 0x29, 0x01, 0xbc, + 0x60, 0x03, 0x00, 0x11, 0xea, 0x00, 0x68, 0xde, 0x5f, 0x00, 0x48, 0x69, + 0x00, 0xb0, 0x5e, 0x6b, 0x00, 0x11, 0xeb, 0x01, 0x92, 0xde, 0x5e, 0x3d, + 0x11, 0xe8, 0x01, 0x87, 0x60, 0x02, 0x3d, 0x11, 0xe8, 0x00, 0x68, 0xde, + 0x9b, 0x00, 0xa8, 0x6d, 0x01, 0x87, 0x60, 0x06, 0x3d, 0x11, 0xe8, 0x01, + 0x98, 0x60, 0x16, 0x3d, 0x11, 0xe8, 0x01, 0x81, 0xe0, 0x05, 0x00, 0x48, + 0x02, 0x01, 0xaa, 0xde, 0x65, 0x00, 0x48, 0x02, 0x03, 0xbf, 0xde, 0x02, + 0xf0, 0x08, 0x76, 0x01, 0xbc, 0x62, 0x0f, 0x00, 0x11, 0xe0, 0x01, 0xbc, + 0x60, 0x03, 0x00, 0x11, 0xe4, 0x01, 0x81, 0xe0, 0x01, 0x00, 0x68, 0x03, + 0x01, 0xbc, 0x60, 0x0f, 0x00, 0x11, 0xe8, 0x01, 0xbc, 0x60, 0x03, 0x00, + 0x11, 0xec, 0x02, 0x00, 0x20, 0x0f, 0x00, 0x08, 0x7d, 0x00, 0xe0, 0x20, + 0xa6, 0xf3, 0x48, 0x29, 0x00, 0xb0, 0x20, 0xab, 0x00, 0x10, 0x25, 0x00, + 0xe8, 0x20, 0xa6, 0x04, 0xa8, 0x29, 0x00, 0x6a, 0xa0, 0xa7, 0x01, 0xc8, + 0x7d, 0x01, 0xb8, 0x60, 0x06, 0x04, 0x90, 0x24, 0x01, 0x82, 0xe0, 0x06, + 0xf2, 0x97, 0x94, 0x01, 0x88, 0x60, 0x0a, 0x00, 0x90, 0x04, 0x01, 0xbc, + 0x60, 0x03, 0x18, 0x77, 0x95, 0x03, 0xa0, 0xde, 0x02, 0xf0, 0x08, 0x8a, + 0x00, 0x68, 0x5e, 0x4f, 0x06, 0xa8, 0x8f, 0x01, 0x38, 0x52, 0x03, 0x00, + 0x17, 0x80, 0x00, 0xb0, 0x5e, 0x5f, 0x00, 0x17, 0x81, 0x02, 0x03, 0xde, + 0xb7, 0x00, 0x08, 0x89, 0x00, 0x68, 0x5e, 0x07, 0x00, 0x08, 0x88, 0x01, + 0xbc, 0x60, 0x03, 0x01, 0x77, 0x80, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x37, + 0x81, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x08, 0x89, 0x01, 0xbc, 0x60, 0x03, + 0x01, 0x57, 0x80, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xdb, 0x00, 0x68, + 0xde, 0xab, 0x00, 0x48, 0x8f, 0x00, 0xa0, 0x5e, 0x4f, 0x04, 0x77, 0xa1, + 0x00, 0x68, 0x5e, 0x87, 0x00, 0x4a, 0x3f, 0x00, 0x68, 0x5e, 0x87, 0x04, + 0x4a, 0x3f, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x0c, 0x06, 0x03, 0x86, 0xde, + 0x02, 0xf0, 0x0a, 0x94, 0x02, 0x87, 0xc0, 0x37, 0x00, 0x0a, 0x93, 0x00, + 0x02, 0x5e, 0x02, 0xf0, 0x11, 0x8f, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0f, + 0x38, 0x03, 0x03, 0x5e, 0x02, 0xf0, 0x08, 0x8f, 0x03, 0xa9, 0xde, 0x02, + 0xf0, 0x08, 0x9b, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x11, 0x8f, 0x00, 0x02, + 0x5e, 0x02, 0xf0, 0x0f, 0x38, 0x02, 0x07, 0x40, 0x37, 0x00, 0x08, 0x95, + 0x03, 0x86, 0xde, 0x02, 0xf0, 0x0a, 0x94, 0x02, 0x87, 0xc0, 0x37, 0x00, + 0x0a, 0x93, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0c, 0x7d, 0x00, 0x6e, 0x40, + 0x30, 0x02, 0x08, 0xc6, 0x03, 0x01, 0xde, 0x02, 0xf0, 0x08, 0xc6, 0x00, + 0x68, 0xde, 0xab, 0x00, 0x08, 0xad, 0x03, 0x2b, 0x5e, 0x02, 0xf0, 0x08, + 0xa1, 0x00, 0xe0, 0x02, 0x2b, 0x00, 0x20, 0x8a, 0x03, 0xbf, 0xde, 0x02, + 0xf0, 0x08, 0xa5, 0x02, 0x80, 0x52, 0x17, 0x00, 0x08, 0xa4, 0x00, 0xe0, + 0x02, 0x43, 0x00, 0x20, 0x90, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x08, 0xa5, + 0x00, 0xe0, 0x02, 0x57, 0x00, 0x20, 0x95, 0x00, 0x68, 0x5e, 0x4f, 0x04, + 0x0b, 0x75, 0x00, 0x68, 0x5e, 0x4f, 0x02, 0x8b, 0x75, 0x00, 0x68, 0x5e, + 0x4f, 0x02, 0x09, 0xf6, 0x00, 0x68, 0x5e, 0x4f, 0x04, 0x8a, 0x38, 0x00, + 0x68, 0x5e, 0x4f, 0x05, 0x0b, 0xf7, 0x00, 0x68, 0x5e, 0x4f, 0x06, 0x0b, + 0xf7, 0x00, 0x68, 0x5e, 0x4f, 0x06, 0x8c, 0x00, 0x03, 0xbf, 0xde, 0x02, + 0xf0, 0x0c, 0x06, 0x00, 0x68, 0xde, 0xab, 0x00, 0x28, 0xbe, 0x03, 0x2b, + 0x5e, 0x02, 0xf0, 0x08, 0xb1, 0x00, 0xe0, 0x02, 0x2f, 0x00, 0x20, 0x8b, + 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x08, 0xb5, 0x02, 0x80, 0x52, 0x17, 0x00, + 0x08, 0xb4, 0x00, 0xe0, 0x02, 0x47, 0x00, 0x20, 0x91, 0x03, 0xbf, 0xde, + 0x02, 0xf0, 0x08, 0xb5, 0x00, 0xe0, 0x02, 0x5b, 0x00, 0x20, 0x96, 0x00, + 0x68, 0x5e, 0x4f, 0x06, 0xa9, 0xca, 0x00, 0x68, 0x5e, 0x4f, 0x04, 0x2c, + 0x1e, 0x00, 0x68, 0x5e, 0x4f, 0x04, 0xac, 0x1e, 0x00, 0x68, 0x5e, 0x4f, + 0x05, 0xaa, 0x45, 0x00, 0x68, 0x5e, 0x4f, 0x06, 0x29, 0xca, 0x00, 0x68, + 0x5e, 0x4f, 0x05, 0x2b, 0xf5, 0x00, 0xa0, 0x5e, 0x4f, 0xff, 0x77, 0xa1, + 0x00, 0x68, 0x5e, 0x87, 0x07, 0x2c, 0x11, 0x03, 0xbf, 0xde, 0x02, 0xf0, + 0x09, 0xef, 0x00, 0xe0, 0x02, 0x13, 0x00, 0x20, 0x84, 0x03, 0xbf, 0xde, + 0x02, 0xf0, 0x09, 0xf3, 0x00, 0xe0, 0x02, 0x0f, 0x00, 0x20, 0x83, 0x01, + 0xbc, 0x60, 0x03, 0x00, 0x11, 0xec, 0x01, 0xbc, 0x60, 0x0f, 0x00, 0x11, + 0xe8, 0x02, 0x84, 0xc0, 0x3b, 0x00, 0x08, 0x71, 0x01, 0x84, 0xe0, 0x06, + 0x09, 0x10, 0x48, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x08, 0x71, 0x02, 0x00, + 0xc0, 0x93, 0x00, 0x00, 0x02, 0x03, 0xa3, 0x5e, 0x02, 0xf0, 0x08, 0xca, + 0x03, 0xc3, 0x5e, 0x02, 0xf0, 0x08, 0xc9, 0x03, 0xbf, 0xde, 0x02, 0xf0, + 0x0a, 0xff, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x11, 0x8f, 0x00, 0x02, 0x5e, + 0x02, 0xf0, 0x0f, 0x38, 0x02, 0x07, 0xc0, 0xaf, 0x00, 0x08, 0xce, 0x02, + 0x07, 0x40, 0x37, 0x00, 0x08, 0xca, 0x01, 0x07, 0xc0, 0xaf, 0x00, 0x17, + 0xa1, 0x00, 0xb8, 0x5e, 0x87, 0x00, 0x37, 0xa1, 0x01, 0x82, 0x5e, 0x86, + 0x0d, 0x90, 0x6c, 0x00, 0xb0, 0x44, 0x7f, 0x00, 0x08, 0x04, 0x01, 0x83, + 0x60, 0x02, 0x09, 0x10, 0x48, 0x02, 0x87, 0xc0, 0x37, 0x00, 0x0a, 0x93, + 0x03, 0x86, 0xde, 0x02, 0xf0, 0x0a, 0x94, 0x00, 0x02, 0x5e, 0x02, 0xf0, + 0x11, 0x8f, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0f, 0x38, 0x03, 0x43, 0x5e, + 0x02, 0xf0, 0x08, 0xd3, 0x02, 0x87, 0xc0, 0x37, 0x00, 0x0a, 0x93, 0x02, + 0x00, 0x81, 0xb3, 0x00, 0x08, 0xf1, 0x01, 0x80, 0x60, 0x06, 0xf2, 0x97, + 0x94, 0x03, 0x01, 0xde, 0x02, 0xf0, 0x08, 0xf1, 0x01, 0x38, 0x52, 0x03, + 0x00, 0x17, 0x80, 0x00, 0xb0, 0x5e, 0x5f, 0x00, 0x17, 0xa4, 0x00, 0x02, + 0x5e, 0x02, 0xf0, 0x13, 0x08, 0x01, 0xbc, 0x60, 0x2f, 0x06, 0x57, 0xa4, + 0x00, 0xe0, 0x5e, 0x86, 0xf4, 0x90, 0x65, 0x00, 0xe0, 0x5a, 0x03, 0x00, + 0x36, 0x80, 0x03, 0xb0, 0x5e, 0x02, 0xf0, 0x08, 0xe5, 0x00, 0xe0, 0x02, + 0x07, 0x00, 0x20, 0x81, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x08, 0xe6, 0x00, + 0xe0, 0x02, 0x03, 0x00, 0x20, 0x80, 0x02, 0x84, 0x81, 0xb3, 0x00, 0x08, + 0xeb, 0x01, 0x84, 0xe0, 0x04, 0x0d, 0x80, 0x6c, 0x01, 0xbc, 0x60, 0x03, + 0x00, 0x00, 0x6e, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x00, 0x6f, 0x03, 0xbf, + 0xde, 0x02, 0xf0, 0x08, 0xf0, 0x00, 0xe8, 0x52, 0x3a, 0xf7, 0xb7, 0xa1, + 0x00, 0xe8, 0x5e, 0x87, 0x02, 0x17, 0xa1, 0x00, 0x90, 0x5e, 0x87, 0x00, + 0x97, 0xa1, 0x00, 0xe1, 0x01, 0xba, 0xf4, 0x20, 0x6e, 0x00, 0xe0, 0x81, + 0xbf, 0x00, 0x00, 0x6f, 0x00, 0xb0, 0x52, 0x3b, 0x00, 0x17, 0xbd, 0x03, + 0x01, 0xde, 0x02, 0xf0, 0x09, 0x07, 0x02, 0x80, 0x81, 0xb3, 0x00, 0x08, + 0xf4, 0x03, 0x30, 0x5e, 0x02, 0xf0, 0x09, 0x07, 0x01, 0xbc, 0x60, 0x1b, + 0x1f, 0x50, 0x65, 0x00, 0xe0, 0x41, 0x94, 0xdf, 0x30, 0x65, 0x01, 0x2d, + 0x40, 0x6b, 0x00, 0x17, 0xa2, 0x00, 0x88, 0x5e, 0x8b, 0x01, 0x37, 0xa2, + 0x01, 0x38, 0x40, 0x2b, 0x00, 0x16, 0x80, 0x02, 0x88, 0x40, 0x27, 0x00, + 0x08, 0xfb, 0x01, 0x84, 0x60, 0x06, 0xd0, 0x16, 0x80, 0x00, 0xb0, 0x5a, + 0x02, 0xf4, 0x56, 0x80, 0x02, 0x05, 0xc0, 0x27, 0x00, 0x08, 0xfe, 0x01, + 0x87, 0xe0, 0x06, 0xd0, 0x16, 0x80, 0x01, 0xbc, 0x60, 0x1b, 0x0d, 0xd7, + 0xa1, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xce, 0x00, 0xb0, 0x40, 0x67, + 0x00, 0x16, 0x81, 0x01, 0xbc, 0x60, 0x1b, 0x0d, 0xf7, 0xa1, 0x00, 0x02, + 0x5e, 0x02, 0xf0, 0x00, 0xce, 0x00, 0xb0, 0x40, 0x67, 0x00, 0x16, 0x82, + 0x00, 0xe0, 0x1b, 0xe7, 0x00, 0x66, 0xf9, 0x00, 0x69, 0x1b, 0xe7, 0x01, + 0x89, 0x07, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x06, 0xf9, 0x02, 0x00, 0x81, + 0xb3, 0x00, 0x09, 0x09, 0x02, 0x05, 0x01, 0xb3, 0x00, 0x0b, 0x03, 0x02, + 0x80, 0x20, 0x0f, 0x00, 0x09, 0x0b, 0x00, 0x6e, 0x40, 0x30, 0x02, 0x09, + 0xc5, 0x03, 0x81, 0xde, 0x02, 0xf0, 0x09, 0x15, 0x00, 0xe0, 0x02, 0x17, + 0x00, 0x20, 0x85, 0x03, 0xa9, 0xde, 0x02, 0xf0, 0x09, 0x11, 0x01, 0x84, + 0xe0, 0x06, 0x09, 0x10, 0x48, 0x01, 0x80, 0xe0, 0x02, 0x09, 0x10, 0x48, + 0x01, 0x84, 0xe0, 0x02, 0xf7, 0xf7, 0xbf, 0x03, 0x86, 0xde, 0x02, 0xf0, + 0x0a, 0x94, 0x01, 0x80, 0x60, 0x05, 0x00, 0x48, 0x02, 0x01, 0x80, 0x60, + 0x06, 0xf2, 0x97, 0x94, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x09, 0x93, 0x01, + 0x83, 0x60, 0x02, 0xf7, 0xf7, 0xbf, 0x03, 0x86, 0xde, 0x02, 0xf0, 0x0a, + 0x94, 0x03, 0x2b, 0x5e, 0x02, 0xf0, 0x09, 0x3b, 0x03, 0xa9, 0xde, 0x02, + 0xf0, 0x09, 0x1e, 0x00, 0x68, 0xde, 0xab, 0x00, 0x49, 0x3b, 0x00, 0xb0, + 0x52, 0x3b, 0x00, 0x17, 0x9f, 0x00, 0xb0, 0x52, 0x3b, 0x00, 0x17, 0xbe, + 0x01, 0xbc, 0x60, 0x03, 0x00, 0x28, 0x0e, 0x03, 0xbf, 0xde, 0x02, 0xf0, + 0x09, 0x3b, 0x02, 0x87, 0x5e, 0x53, 0x00, 0x09, 0x48, 0x03, 0xa0, 0xde, + 0x02, 0xf0, 0x09, 0x2a, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x06, 0xc6, 0x01, + 0x82, 0xe0, 0x06, 0x0d, 0x90, 0x6c, 0x01, 0x90, 0x60, 0x0a, 0x09, 0x10, + 0x48, 0x00, 0xb0, 0x52, 0x3b, 0x00, 0x17, 0x9f, 0x00, 0xb0, 0x52, 0x3b, + 0x00, 0x17, 0xbe, 0x01, 0x9e, 0x5e, 0x83, 0x00, 0xb0, 0xeb, 0x01, 0x06, + 0x52, 0x0f, 0x00, 0x17, 0xa1, 0x00, 0xb8, 0x5e, 0x87, 0x00, 0x37, 0xa1, + 0x01, 0x82, 0xde, 0x86, 0xf5, 0x77, 0xab, 0x01, 0xbc, 0x61, 0x03, 0x00, + 0x30, 0x80, 0x00, 0xe8, 0x52, 0x3a, 0xf3, 0xf7, 0xa2, 0x00, 0x6b, 0xd2, + 0x3a, 0xf3, 0xe9, 0x2d, 0x00, 0xe8, 0x5e, 0x7e, 0x91, 0xd7, 0xa2, 0x00, + 0x90, 0x5e, 0x8b, 0x00, 0x97, 0xa1, 0x01, 0xbc, 0x60, 0x23, 0x01, 0xd0, + 0x64, 0x00, 0x6b, 0x52, 0x3a, 0xf3, 0xe9, 0x38, 0x01, 0x18, 0x5e, 0x87, + 0x00, 0x17, 0xa2, 0x01, 0x0a, 0x5e, 0x87, 0x00, 0x17, 0xa3, 0x00, 0x88, + 0x60, 0x06, 0xf4, 0x57, 0xa2, 0x00, 0xe0, 0x41, 0x92, 0xf4, 0x70, 0x64, + 0x00, 0xb0, 0x58, 0x02, 0xf4, 0x56, 0x00, 0x00, 0x6b, 0xde, 0xfa, 0x91, + 0xc9, 0x3b, 0x00, 0xb0, 0x52, 0x3b, 0x00, 0x17, 0xbe, 0x03, 0xbf, 0xde, + 0x02, 0xf0, 0x09, 0x3b, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x11, 0xff, 0x00, + 0xb0, 0x20, 0x3b, 0x00, 0x28, 0x0e, 0x00, 0xb0, 0x52, 0x3b, 0x00, 0x17, + 0x9f, 0x03, 0x20, 0xde, 0x02, 0xf0, 0x09, 0x48, 0x02, 0x07, 0x5e, 0x53, + 0x00, 0x09, 0x3f, 0x01, 0x80, 0xe0, 0x02, 0x09, 0x10, 0x48, 0x03, 0xbf, + 0xde, 0x02, 0xf0, 0x09, 0x48, 0x00, 0x68, 0xde, 0x5f, 0x00, 0x09, 0x45, + 0x02, 0x1a, 0x54, 0x07, 0x00, 0x09, 0x43, 0x01, 0x03, 0xc0, 0x27, 0x00, + 0x17, 0xa1, 0x01, 0x82, 0x5e, 0x86, 0x10, 0xd0, 0x86, 0x01, 0x02, 0xc0, + 0x27, 0x00, 0x17, 0xa1, 0x00, 0xe0, 0x42, 0x2a, 0xf4, 0x30, 0x8a, 0x01, + 0x80, 0xe0, 0x05, 0x00, 0x48, 0x02, 0x03, 0xa9, 0xde, 0x02, 0xf0, 0x09, + 0x48, 0x00, 0xb0, 0x5e, 0x47, 0x00, 0x10, 0x80, 0x01, 0x08, 0x5e, 0x4f, + 0x00, 0x17, 0xa1, 0x00, 0x68, 0x5e, 0x87, 0x00, 0x29, 0x67, 0x03, 0xab, + 0x5e, 0x02, 0xf0, 0x09, 0x6b, 0x02, 0x00, 0x52, 0x17, 0x00, 0x09, 0x59, + 0x00, 0x68, 0xde, 0xab, 0x00, 0x49, 0x4e, 0x00, 0xe0, 0x02, 0x53, 0x00, + 0x20, 0x94, 0x02, 0x86, 0x5e, 0x53, 0x00, 0x09, 0x93, 0x02, 0x84, 0x52, + 0x0f, 0x00, 0x0b, 0x03, 0x02, 0x84, 0xd2, 0x0f, 0x00, 0x09, 0x53, 0x03, + 0xac, 0x5e, 0x02, 0xf0, 0x09, 0x57, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x09, + 0x60, 0x03, 0x2c, 0x5e, 0x02, 0xf0, 0x09, 0x60, 0x00, 0x68, 0x5e, 0x4f, + 0x04, 0x09, 0x57, 0x01, 0x06, 0xd2, 0x0f, 0x00, 0x17, 0xa1, 0x01, 0x84, + 0x5e, 0x86, 0xf2, 0x97, 0x94, 0x00, 0x68, 0x5e, 0x4f, 0x02, 0x09, 0x93, + 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x09, 0x83, 0x03, 0x1e, 0xde, 0x02, 0xf0, + 0x09, 0x5d, 0x03, 0x31, 0x5e, 0x02, 0xf0, 0x09, 0x5d, 0x00, 0x68, 0xde, + 0xab, 0x00, 0x49, 0x5d, 0x01, 0x84, 0x60, 0x02, 0xf2, 0x97, 0x94, 0x00, + 0x68, 0xde, 0xab, 0x00, 0x49, 0x62, 0x00, 0xe0, 0x02, 0x3f, 0x00, 0x20, + 0x8f, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x09, 0x65, 0x00, 0x68, 0x5e, 0xab, + 0x00, 0x49, 0x65, 0x02, 0x80, 0x52, 0x2f, 0x00, 0x09, 0x93, 0x02, 0x02, + 0x41, 0x07, 0x00, 0x09, 0x65, 0x00, 0x68, 0x5e, 0x4f, 0x04, 0x09, 0x93, + 0x00, 0x68, 0x5e, 0x4f, 0x02, 0x89, 0x93, 0x02, 0x04, 0x41, 0x07, 0x00, + 0x0b, 0x03, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x09, 0x93, 0x03, 0x2b, 0x5e, + 0x02, 0xf0, 0x09, 0x93, 0x00, 0x68, 0x5e, 0x4f, 0x05, 0xa9, 0x83, 0x00, + 0x68, 0x5e, 0x4f, 0x05, 0x29, 0x83, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x09, + 0x93, 0x00, 0x68, 0xde, 0xab, 0x00, 0x49, 0x73, 0x01, 0xbc, 0x60, 0x03, + 0x00, 0x0a, 0xbb, 0x01, 0x82, 0x60, 0x02, 0xf5, 0xd7, 0xae, 0x02, 0x80, + 0x5e, 0xff, 0x00, 0x09, 0x71, 0x00, 0x68, 0x2b, 0x67, 0x00, 0x09, 0x73, + 0x00, 0xe0, 0x44, 0x65, 0x5b, 0x0a, 0xd9, 0x00, 0x68, 0x2b, 0x83, 0xff, + 0xc9, 0x73, 0x00, 0xe0, 0x2b, 0x83, 0x00, 0x2a, 0xe0, 0x02, 0x06, 0x5e, + 0x53, 0x00, 0x09, 0x76, 0x00, 0xe0, 0x02, 0x63, 0x00, 0x20, 0x98, 0x03, + 0xbf, 0xde, 0x02, 0xf0, 0x09, 0x93, 0x03, 0x23, 0xde, 0x02, 0xf0, 0x09, + 0x7e, 0x01, 0x29, 0x50, 0x0b, 0x00, 0x17, 0xa3, 0x00, 0x68, 0xde, 0x8f, + 0x05, 0x29, 0x7e, 0x01, 0x87, 0xe0, 0x02, 0x10, 0x70, 0x83, 0x01, 0x84, + 0x60, 0x02, 0x09, 0x10, 0x48, 0x00, 0xb0, 0x5e, 0x87, 0x00, 0x17, 0xa1, + 0x00, 0x6e, 0xe0, 0x03, 0x00, 0x29, 0x7d, 0x03, 0xd1, 0xde, 0x02, 0xf0, + 0x09, 0x7e, 0x00, 0x68, 0xde, 0xab, 0x00, 0x49, 0x80, 0x00, 0xe0, 0x02, + 0x27, 0x00, 0x20, 0x89, 0x00, 0x68, 0x5e, 0x4f, 0x00, 0x09, 0x93, 0x00, + 0x68, 0x5e, 0x4f, 0x01, 0x09, 0x93, 0x00, 0x68, 0x5e, 0x4f, 0x05, 0x89, + 0x93, 0x02, 0x80, 0x47, 0xc7, 0x00, 0x09, 0xc3, 0x03, 0x29, 0xde, 0x02, + 0xf0, 0x09, 0x89, 0x01, 0x02, 0xde, 0xaf, 0x00, 0x17, 0xa1, 0x01, 0x06, + 0x52, 0x0f, 0x00, 0x17, 0xa2, 0x00, 0x38, 0x5e, 0x86, 0xf4, 0x49, 0x93, + 0x01, 0x82, 0xde, 0x8a, 0xf5, 0x77, 0xab, 0x00, 0xb0, 0x52, 0x23, 0x00, + 0x11, 0xf2, 0x00, 0xb0, 0x52, 0x27, 0x00, 0x11, 0xf3, 0x00, 0xb0, 0x52, + 0x2b, 0x00, 0x11, 0xf4, 0x01, 0x06, 0x52, 0x0f, 0x00, 0x17, 0xa1, 0x00, + 0xe0, 0x5e, 0x87, 0x00, 0x31, 0xf5, 0x00, 0xb0, 0x00, 0x5b, 0x00, 0x11, + 0xf0, 0x00, 0xb0, 0x47, 0xc3, 0x00, 0x18, 0x00, 0x01, 0x34, 0xc7, 0xc7, + 0x00, 0x17, 0xa1, 0x00, 0x6e, 0xde, 0x84, 0x02, 0xa9, 0x93, 0x01, 0xbc, + 0x60, 0x03, 0x08, 0x10, 0x42, 0x02, 0x83, 0xc1, 0x07, 0x00, 0x09, 0x95, + 0x02, 0x80, 0x5e, 0x53, 0x00, 0x0b, 0x03, 0x00, 0xb0, 0x40, 0x33, 0x00, + 0x17, 0xa1, 0x01, 0x08, 0xa0, 0x0f, 0x00, 0x17, 0xa2, 0x00, 0x68, 0x5e, + 0x8b, 0x00, 0x69, 0x9d, 0x00, 0xe8, 0x40, 0x31, 0x05, 0x57, 0xa1, 0x02, + 0x81, 0x20, 0x0f, 0x00, 0x09, 0x9d, 0x00, 0xb0, 0x20, 0xab, 0x00, 0x17, + 0xa1, 0x02, 0x80, 0xa0, 0x0f, 0x00, 0x09, 0x9d, 0x00, 0xb0, 0x5e, 0x63, + 0x00, 0x17, 0xa1, 0x00, 0x6e, 0x5e, 0x84, 0x02, 0x09, 0xc5, 0x00, 0xb0, + 0x5e, 0x87, 0x00, 0x07, 0xfa, 0x01, 0x81, 0x60, 0x01, 0x00, 0x48, 0x02, + 0x02, 0x02, 0xc0, 0x13, 0x00, 0x09, 0xa3, 0x00, 0xe0, 0x5e, 0x84, 0x03, + 0x47, 0xfa, 0x01, 0x81, 0x60, 0x05, 0x00, 0x48, 0x02, 0x02, 0x01, 0x20, + 0x0f, 0x00, 0x09, 0xbe, 0x01, 0x03, 0x5e, 0x53, 0x00, 0x17, 0xa1, 0x01, + 0x87, 0xde, 0x85, 0x00, 0x48, 0x02, 0x03, 0x86, 0xde, 0x02, 0xf0, 0x0a, + 0x94, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x11, 0x8f, 0x00, 0x02, 0x5e, 0x02, + 0xf0, 0x0f, 0x38, 0x03, 0x85, 0x5e, 0x02, 0xf0, 0x09, 0xa6, 0x01, 0x8e, + 0x60, 0x02, 0x3d, 0x11, 0xe8, 0x01, 0x07, 0xc7, 0x83, 0x00, 0x17, 0xa1, + 0x01, 0x82, 0x5e, 0x85, 0x00, 0x48, 0x02, 0x02, 0x01, 0xa0, 0x0f, 0x00, + 0x09, 0xb0, 0x01, 0x03, 0xc7, 0x97, 0x00, 0x17, 0xa1, 0x01, 0x82, 0x5e, + 0x85, 0x00, 0x68, 0x03, 0x00, 0xb0, 0x20, 0x4b, 0x00, 0x17, 0xa1, 0x01, + 0x8e, 0x5e, 0x85, 0x00, 0x68, 0x03, 0x02, 0x07, 0xc0, 0xaf, 0x00, 0x0c, + 0x61, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x11, 0xec, 0x01, 0xbc, 0x60, 0x0f, + 0x00, 0x11, 0xe8, 0x01, 0x84, 0x60, 0x05, 0x00, 0x68, 0x03, 0x00, 0xb0, + 0x40, 0x27, 0x00, 0x07, 0xfc, 0x00, 0xb0, 0x40, 0x2b, 0x00, 0x07, 0xfd, + 0x00, 0xb0, 0x40, 0x6b, 0x00, 0x07, 0xfe, 0x00, 0xb0, 0x40, 0x6f, 0x00, + 0x07, 0xff, 0x01, 0x84, 0x60, 0x05, 0x00, 0x68, 0x03, 0x00, 0x02, 0x5e, + 0x02, 0xf0, 0x0c, 0x7d, 0x01, 0xbc, 0x63, 0xff, 0x1f, 0xd7, 0xa8, 0x00, + 0x02, 0x5e, 0x02, 0xf0, 0x0d, 0x51, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0c, + 0x61, 0x01, 0xa8, 0x60, 0x0a, 0x00, 0x90, 0x04, 0x02, 0x01, 0x20, 0x0f, + 0x00, 0x11, 0xea, 0x00, 0xa8, 0x40, 0x13, 0x00, 0x50, 0x04, 0x03, 0xbf, + 0xde, 0x02, 0xf0, 0x06, 0x24, 0x00, 0xe0, 0x02, 0x87, 0x00, 0x20, 0xa1, + 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x09, 0xc6, 0x00, 0xe0, 0x02, 0x0b, 0x00, + 0x20, 0x82, 0x03, 0xa9, 0xde, 0x02, 0xf0, 0x0b, 0x03, 0x01, 0x84, 0x60, + 0x06, 0x09, 0x10, 0x48, 0x01, 0x84, 0xe0, 0x06, 0x09, 0x10, 0x48, 0x03, + 0xbf, 0xde, 0x02, 0xf0, 0x0b, 0x03, 0x03, 0x2b, 0x5e, 0x02, 0xf0, 0x09, + 0xe7, 0x00, 0x68, 0xde, 0x4f, 0x06, 0xa9, 0xce, 0x00, 0xe0, 0x02, 0x3b, + 0x00, 0x20, 0x8e, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x09, 0xcf, 0x00, 0xe0, + 0x02, 0x37, 0x00, 0x20, 0x8d, 0x03, 0x23, 0xde, 0x02, 0xf0, 0x09, 0xef, + 0x00, 0x68, 0xde, 0x4e, 0xf1, 0xc9, 0xef, 0x01, 0x87, 0xe0, 0x02, 0x10, + 0x70, 0x83, 0x01, 0x84, 0x60, 0x02, 0x09, 0x10, 0x48, 0x00, 0xb0, 0x5e, + 0x87, 0x00, 0x17, 0xa1, 0x00, 0x6e, 0xe0, 0x03, 0x00, 0x29, 0xd5, 0x03, + 0xd1, 0xde, 0x02, 0xf0, 0x09, 0xd6, 0x00, 0x68, 0x5e, 0x4f, 0x06, 0x29, + 0xe5, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x08, 0x39, 0x03, 0x29, 0x5e, 0x02, + 0xf0, 0x09, 0xdb, 0x02, 0x03, 0xde, 0xb3, 0x00, 0x09, 0xdc, 0x01, 0x91, + 0x60, 0x1a, 0x84, 0xf4, 0x27, 0x01, 0x83, 0xe0, 0x02, 0xf5, 0x97, 0xac, + 0x02, 0x02, 0x00, 0xbf, 0x00, 0x09, 0xe4, 0x02, 0x03, 0x45, 0x6f, 0x00, + 0x09, 0xdf, 0x01, 0x85, 0xe0, 0x06, 0x2b, 0x71, 0x5b, 0x02, 0x04, 0x5e, + 0xb3, 0x00, 0x09, 0xe4, 0x01, 0x87, 0xe0, 0x02, 0x10, 0x70, 0x83, 0x01, + 0x83, 0xe0, 0x02, 0x09, 0x10, 0x48, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x11, + 0x2e, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x09, 0xef, 0x02, 0x05, 0x50, 0x0b, + 0x00, 0x09, 0xef, 0x01, 0x82, 0x60, 0x06, 0x09, 0x10, 0x48, 0x03, 0xbf, + 0xde, 0x02, 0xf0, 0x09, 0xef, 0x02, 0x87, 0x00, 0xc3, 0x00, 0x09, 0xec, + 0x00, 0x68, 0xde, 0x4f, 0x06, 0xa9, 0xec, 0x00, 0x68, 0xd2, 0x13, 0x00, + 0x09, 0xec, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x11, 0x83, 0x01, 0xbc, 0x60, + 0x03, 0x00, 0x11, 0x82, 0x00, 0x68, 0xde, 0x4f, 0x06, 0x29, 0xef, 0x00, + 0xe0, 0x02, 0x4f, 0x00, 0x20, 0x93, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x09, + 0xef, 0x03, 0xab, 0x5e, 0x02, 0xf0, 0x09, 0xf1, 0x02, 0x04, 0x41, 0x07, + 0x00, 0x09, 0xf4, 0x02, 0x83, 0x41, 0x07, 0x00, 0x08, 0xc6, 0x03, 0xbf, + 0xde, 0x02, 0xf0, 0x09, 0xf4, 0x02, 0x84, 0x41, 0x07, 0x00, 0x08, 0xc6, + 0x01, 0x80, 0x60, 0x06, 0xf2, 0x97, 0x94, 0x03, 0xbf, 0xde, 0x02, 0xf0, + 0x08, 0xc6, 0x03, 0x9f, 0x5e, 0x02, 0xf0, 0x09, 0xf9, 0x03, 0x9e, 0xde, + 0x02, 0xf0, 0x0c, 0x06, 0x02, 0x03, 0x5e, 0x53, 0x00, 0x0c, 0x06, 0x02, + 0x04, 0x81, 0x43, 0x00, 0x09, 0xfd, 0x01, 0x00, 0x01, 0x63, 0x00, 0x17, + 0xa1, 0x01, 0x02, 0xc0, 0x27, 0x00, 0x17, 0xa2, 0x00, 0x38, 0xde, 0x86, + 0xf4, 0x49, 0xf3, 0x03, 0xab, 0x5e, 0x02, 0xf0, 0x09, 0xff, 0x02, 0x00, + 0x52, 0x17, 0x00, 0x09, 0xf3, 0x02, 0x80, 0x52, 0x2f, 0x00, 0x0a, 0x01, + 0x03, 0x33, 0x5e, 0x02, 0xf0, 0x0c, 0x06, 0x02, 0x3c, 0x52, 0x3f, 0x00, + 0x0a, 0x12, 0x01, 0x3c, 0x52, 0x3f, 0x00, 0x17, 0xa1, 0x00, 0x68, 0xde, + 0x84, 0x04, 0x8a, 0x32, 0x01, 0xbc, 0x60, 0x03, 0x16, 0x10, 0x64, 0x01, + 0xbc, 0x60, 0x1f, 0x16, 0x10, 0x65, 0x00, 0x68, 0x5e, 0x87, 0x00, 0x2a, + 0x0e, 0x00, 0xb0, 0x5a, 0x03, 0x00, 0x17, 0xa2, 0x00, 0x68, 0xde, 0x8a, + 0xc0, 0x0a, 0x32, 0x00, 0xe0, 0x41, 0x97, 0x00, 0x30, 0x65, 0x00, 0xe0, + 0x41, 0x93, 0x00, 0x30, 0x64, 0x00, 0xe8, 0x5e, 0x87, 0x00, 0x57, 0xa1, + 0x00, 0x6a, 0x5e, 0x87, 0x00, 0x2a, 0x07, 0x00, 0x68, 0x5e, 0x87, 0x00, + 0x0a, 0x13, 0x01, 0x38, 0x5a, 0x03, 0x00, 0x17, 0xa1, 0x01, 0x38, 0x58, + 0x03, 0x00, 0x17, 0xa2, 0x00, 0x68, 0xde, 0x86, 0xf4, 0x4a, 0x32, 0x03, + 0xbf, 0xde, 0x02, 0xf0, 0x0a, 0x13, 0x02, 0x85, 0xc1, 0x07, 0x00, 0x0c, + 0x06, 0x01, 0xbc, 0x60, 0x1f, 0x15, 0xf0, 0x65, 0x01, 0xbc, 0x60, 0x03, + 0x05, 0xb7, 0xa4, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x01, 0x15, 0x02, 0x80, + 0x00, 0xc3, 0x00, 0x0a, 0x32, 0x01, 0xbc, 0x60, 0x13, 0x10, 0xd7, 0xa6, + 0x00, 0xe0, 0x01, 0x7f, 0x00, 0xb7, 0xa5, 0x00, 0x6d, 0x5e, 0x96, 0xf4, + 0xca, 0x1b, 0x01, 0xbc, 0x60, 0x13, 0x09, 0x57, 0xa5, 0x00, 0x68, 0x5e, + 0x94, 0x0b, 0xca, 0x36, 0x00, 0xb0, 0x01, 0x7b, 0x00, 0x10, 0x65, 0x00, + 0xb0, 0x52, 0x27, 0x00, 0x17, 0xa2, 0x00, 0xb0, 0x52, 0x2b, 0x00, 0x17, + 0xa3, 0x00, 0x68, 0x41, 0x94, 0x0b, 0xea, 0x26, 0x00, 0x68, 0xde, 0x8e, + 0xd0, 0x4a, 0x22, 0x00, 0x68, 0x5e, 0x8a, 0xd0, 0x2a, 0x32, 0x00, 0xe0, + 0x41, 0x97, 0x00, 0xb0, 0x65, 0x00, 0x6d, 0x41, 0x96, 0xf4, 0xca, 0x1f, + 0x01, 0xbc, 0x60, 0x13, 0x09, 0x50, 0x65, 0x03, 0xbf, 0xde, 0x02, 0xf0, + 0x0a, 0x1f, 0x00, 0xe0, 0x02, 0x8b, 0x00, 0x20, 0xa2, 0x00, 0xb0, 0x01, + 0x7f, 0x00, 0x10, 0x65, 0x00, 0xb0, 0x52, 0x23, 0x00, 0x16, 0x80, 0x00, + 0xb0, 0x52, 0x27, 0x00, 0x16, 0x81, 0x00, 0xb0, 0x52, 0x2b, 0x00, 0x16, + 0x82, 0x01, 0xbc, 0x52, 0x02, 0xf2, 0xf7, 0xa1, 0x01, 0xa9, 0x5e, 0x02, + 0xf4, 0x36, 0x83, 0x00, 0x90, 0x44, 0x67, 0x01, 0x16, 0x84, 0x02, 0x02, + 0x81, 0xab, 0x00, 0x0a, 0x30, 0x00, 0x68, 0xde, 0x93, 0x05, 0xaa, 0x31, + 0x01, 0x84, 0x60, 0x06, 0xd0, 0x96, 0x84, 0x00, 0xb0, 0x5e, 0x97, 0x00, + 0x00, 0x5f, 0x02, 0x07, 0x81, 0xab, 0x00, 0x0a, 0x34, 0x01, 0x80, 0x60, + 0x06, 0xf2, 0x97, 0x94, 0x03, 0xab, 0x5e, 0x02, 0xf0, 0x06, 0xde, 0x03, + 0xbf, 0xde, 0x02, 0xf0, 0x08, 0xc6, 0x00, 0xe0, 0x02, 0x8f, 0x00, 0x20, + 0xa3, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x09, 0xf3, 0x03, 0x9e, 0xde, 0x02, + 0xf0, 0x0c, 0x06, 0x03, 0xab, 0x5e, 0x02, 0xf0, 0x0a, 0x3b, 0x02, 0x00, + 0x52, 0x17, 0x00, 0x09, 0xf3, 0x03, 0x33, 0x5e, 0x02, 0xf0, 0x0c, 0x06, + 0x01, 0x84, 0x60, 0x06, 0xf2, 0x97, 0x94, 0x03, 0xab, 0x5e, 0x02, 0xf0, + 0x06, 0xde, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x08, 0xc6, 0x03, 0x83, 0x5e, + 0x02, 0xf0, 0x0a, 0x42, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x11, 0x8f, 0x00, + 0x6d, 0x40, 0x33, 0x03, 0x8a, 0x3f, 0x00, 0x6d, 0x40, 0x33, 0x03, 0x89, + 0xf3, 0x03, 0x2b, 0x5e, 0x02, 0xf0, 0x0c, 0x0a, 0x03, 0xbf, 0xde, 0x02, + 0xf0, 0x06, 0xde, 0x03, 0x2b, 0x5e, 0x02, 0xf0, 0x0a, 0x48, 0x00, 0xe0, + 0x02, 0x33, 0x00, 0x20, 0x8c, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x06, 0xe0, + 0x00, 0xe0, 0x02, 0x4b, 0x00, 0x20, 0x92, 0x01, 0x03, 0xc0, 0x27, 0x00, + 0x17, 0x81, 0x01, 0x82, 0x5e, 0x05, 0x02, 0xf7, 0x81, 0x00, 0x02, 0x5e, + 0x02, 0xf0, 0x0d, 0x3f, 0x00, 0x88, 0x00, 0x23, 0x00, 0x37, 0xa2, 0x00, + 0xe0, 0x5e, 0x88, 0x00, 0xf7, 0xa2, 0x00, 0xe0, 0x5e, 0x86, 0xf4, 0x51, + 0x89, 0x01, 0x86, 0xe0, 0x06, 0x30, 0x11, 0x80, 0x03, 0xbf, 0xde, 0x02, + 0xf0, 0x09, 0xef, 0x03, 0xa2, 0xde, 0x02, 0xf0, 0x00, 0xae, 0x03, 0xa3, + 0xde, 0x02, 0xf0, 0x0a, 0x6e, 0x00, 0xe0, 0x01, 0xff, 0x00, 0x20, 0x7f, + 0x01, 0xbc, 0x60, 0x03, 0x00, 0x17, 0xa3, 0x03, 0xbf, 0xde, 0x02, 0xf0, + 0x0a, 0x70, 0x01, 0x87, 0x60, 0x04, 0x03, 0x10, 0xa0, 0x01, 0xbc, 0x60, + 0x03, 0x00, 0x51, 0xe4, 0x00, 0xb0, 0x47, 0x93, 0x00, 0x18, 0x00, 0x01, + 0xbc, 0x60, 0x03, 0x02, 0x90, 0x04, 0x01, 0xbc, 0x62, 0x0f, 0x00, 0x11, + 0xe0, 0x01, 0xbc, 0x60, 0x0f, 0x01, 0x31, 0xe8, 0x00, 0xb0, 0x47, 0xa3, + 0x00, 0x18, 0x00, 0x01, 0xbc, 0x60, 0x0f, 0x00, 0x11, 0xe8, 0x01, 0xbc, + 0x60, 0x03, 0x01, 0x31, 0xec, 0x00, 0xb0, 0x47, 0xb3, 0x00, 0x18, 0x00, + 0x01, 0xbc, 0x60, 0x03, 0x00, 0x11, 0xec, 0x01, 0x84, 0x60, 0x06, 0x09, + 0x10, 0x48, 0x00, 0x20, 0x60, 0x1e, 0x09, 0x0a, 0x65, 0x00, 0xe0, 0x01, + 0xfb, 0x00, 0x20, 0x7e, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x0a, 0x76, 0x01, + 0xbc, 0x60, 0x03, 0x0e, 0xd7, 0xa1, 0x01, 0x14, 0x00, 0x63, 0x00, 0x17, + 0xa2, 0x00, 0xe0, 0x5e, 0x86, 0xf4, 0x50, 0x65, 0x00, 0xe0, 0x5a, 0x03, + 0x00, 0x36, 0x80, 0x02, 0x03, 0x00, 0xc7, 0x00, 0x0a, 0x6b, 0x03, 0xa9, + 0x5e, 0x02, 0xf0, 0x0a, 0x70, 0x02, 0x91, 0x50, 0x9f, 0x00, 0x0a, 0x6f, + 0x01, 0x91, 0x60, 0x1a, 0x84, 0xf4, 0x27, 0x03, 0xbf, 0xde, 0x02, 0xf0, + 0x0a, 0x6f, 0x00, 0xe0, 0x01, 0xff, 0x00, 0x20, 0x7f, 0x01, 0xbc, 0x60, + 0x03, 0x00, 0x37, 0xa3, 0x03, 0x23, 0xde, 0x02, 0xf0, 0x0a, 0x76, 0x01, + 0x83, 0xe0, 0x02, 0x09, 0x10, 0x48, 0x01, 0x84, 0x60, 0x02, 0xf5, 0x97, + 0xac, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x17, 0x8e, 0x01, 0x87, 0xe0, 0x02, + 0x10, 0x70, 0x83, 0x01, 0x82, 0x60, 0x02, 0x09, 0x10, 0x48, 0x03, 0xd0, + 0xde, 0x02, 0xf0, 0x0a, 0x77, 0x03, 0xd0, 0x5e, 0x02, 0xf0, 0x0a, 0x78, + 0x01, 0x82, 0xe0, 0x02, 0x09, 0x10, 0x48, 0x03, 0xd5, 0xde, 0x02, 0xf0, + 0x0a, 0x7a, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x10, 0xb4, 0x01, 0xbc, 0x60, + 0x03, 0x00, 0xf7, 0xa1, 0x00, 0x68, 0x00, 0xa7, 0x00, 0x0a, 0x7e, 0x01, + 0x85, 0x42, 0x1a, 0xf4, 0x37, 0xa1, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, + 0xce, 0x00, 0xb0, 0x40, 0x67, 0x00, 0x17, 0xa5, 0x01, 0xbc, 0x63, 0xff, + 0x1f, 0xf7, 0xa2, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xd4, 0x00, 0x88, + 0x60, 0x07, 0x01, 0x57, 0xa4, 0x00, 0xb8, 0x5e, 0x86, 0xf4, 0x97, 0xa1, + 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xd4, 0x02, 0x83, 0xc2, 0x1f, 0x00, + 0x0a, 0x85, 0x00, 0xe0, 0x44, 0x67, 0x01, 0x17, 0xa1, 0x02, 0x04, 0x45, + 0x23, 0x00, 0x0a, 0x8a, 0x00, 0x6b, 0x44, 0x66, 0xf4, 0x2a, 0x87, 0x00, + 0x02, 0x5e, 0x02, 0xf0, 0x11, 0x76, 0x00, 0x68, 0x5e, 0x8f, 0x00, 0x00, + 0x02, 0x00, 0x68, 0x01, 0xb3, 0x00, 0x0a, 0x8e, 0x01, 0xbc, 0x60, 0x03, + 0x00, 0x04, 0xee, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x0a, 0x91, 0x00, 0x20, + 0xe0, 0x1e, 0x09, 0x0a, 0x91, 0x00, 0xb0, 0x5e, 0x97, 0x00, 0x14, 0x2e, + 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x03, 0x00, 0x00, 0xa8, 0x41, 0x23, 0x00, + 0xf0, 0x48, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x00, 0x02, 0x01, 0x83, 0x60, + 0x02, 0x09, 0x10, 0x48, 0x01, 0xbc, 0x60, 0x07, 0x00, 0x10, 0x42, 0x00, + 0x6e, 0x40, 0x30, 0x02, 0x0a, 0x97, 0x00, 0xe0, 0x02, 0x77, 0x00, 0x20, + 0x9d, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x12, 0xbc, 0x03, 0xa3, 0x5e, 0x02, + 0xf0, 0x08, 0xc6, 0x03, 0xc6, 0xde, 0x02, 0xf0, 0x0a, 0x9a, 0x01, 0x84, + 0xe0, 0x06, 0x09, 0x10, 0x48, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x0b, 0x03, + 0x00, 0x68, 0x20, 0xdf, 0x00, 0x0a, 0xa2, 0x00, 0xe8, 0x44, 0x65, 0x06, + 0xf7, 0xa1, 0x01, 0xbc, 0x60, 0x9f, 0x02, 0x17, 0xa2, 0x00, 0x6d, 0x5e, + 0x86, 0xf4, 0x4a, 0xa2, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x08, 0x37, 0x00, + 0x02, 0x5e, 0x02, 0xf0, 0x0b, 0x22, 0x00, 0x20, 0xe1, 0x02, 0x09, 0x00, + 0x9b, 0x00, 0x20, 0x62, 0x8a, 0x09, 0x0a, 0xa6, 0x00, 0x02, 0x5e, 0x02, + 0xf0, 0x11, 0x8f, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x00, 0x9b, 0x02, 0x84, + 0x45, 0x23, 0x00, 0x00, 0x9b, 0x03, 0x91, 0x5e, 0x02, 0xf0, 0x00, 0x9b, + 0x03, 0x96, 0xde, 0x02, 0xf0, 0x00, 0x9b, 0x03, 0x96, 0x5e, 0x02, 0xf0, + 0x00, 0x9b, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0b, 0x22, 0x01, 0xbc, 0x60, + 0x03, 0x00, 0x60, 0x20, 0x00, 0x68, 0x01, 0x73, 0x00, 0x0a, 0xbc, 0x00, + 0x02, 0x5e, 0x02, 0xf0, 0x01, 0x00, 0x00, 0xb0, 0x44, 0x67, 0x00, 0x08, + 0x37, 0x00, 0xb0, 0x01, 0x73, 0x00, 0x10, 0xe4, 0x01, 0xbc, 0x60, 0x03, + 0x00, 0x00, 0x06, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x00, 0x5c, 0x01, 0xbc, + 0x60, 0x03, 0x01, 0xd7, 0x82, 0x01, 0xd2, 0xde, 0x08, 0x75, 0x70, 0xe0, + 0x00, 0xb0, 0x0e, 0xb3, 0x00, 0x10, 0xe1, 0x00, 0xb0, 0x00, 0x47, 0x00, + 0x10, 0x86, 0x00, 0xb0, 0x0e, 0xcf, 0x00, 0x10, 0x8a, 0x01, 0xbc, 0x60, + 0x03, 0x00, 0x37, 0x81, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0d, 0x32, 0x01, + 0x90, 0x60, 0x0a, 0x09, 0x10, 0x48, 0x01, 0xbc, 0x61, 0x03, 0x00, 0x30, + 0x80, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x00, 0x02, 0x01, 0xbc, 0x60, 0x03, + 0x00, 0x30, 0x42, 0x01, 0x87, 0xe0, 0x02, 0x24, 0x71, 0x23, 0x00, 0x02, + 0x5e, 0x02, 0xf0, 0x10, 0x92, 0x01, 0xbc, 0x60, 0x03, 0x06, 0x77, 0x80, + 0x00, 0x68, 0x0d, 0xef, 0x00, 0x0a, 0xc3, 0x00, 0xb0, 0x0d, 0xef, 0x00, + 0x17, 0x81, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0d, 0xe9, 0x03, 0x97, 0x5e, + 0x02, 0xf0, 0x0b, 0x33, 0x03, 0x12, 0x5e, 0x02, 0xf0, 0x0a, 0xc3, 0x01, + 0xbc, 0x60, 0x03, 0x00, 0x40, 0x20, 0x01, 0xbc, 0x61, 0x83, 0x00, 0x11, + 0x25, 0x00, 0xb0, 0x00, 0x7b, 0x00, 0x11, 0x27, 0x01, 0xbc, 0x60, 0x07, + 0x02, 0x57, 0x80, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0d, 0xe4, 0x00, 0xb0, + 0x5e, 0x07, 0x00, 0x0b, 0x2f, 0x01, 0xbc, 0x60, 0x07, 0x02, 0x77, 0x80, + 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0d, 0xe4, 0x00, 0xb0, 0x5e, 0x07, 0x00, + 0x0b, 0x30, 0x01, 0xbc, 0x60, 0x13, 0x09, 0x97, 0xa1, 0x00, 0x02, 0x5e, + 0x02, 0xf0, 0x00, 0xce, 0x00, 0xb0, 0x40, 0x67, 0x00, 0x0b, 0x62, 0x01, + 0xbc, 0x60, 0x13, 0x09, 0x40, 0x5e, 0x01, 0xbc, 0x60, 0x13, 0x09, 0x40, + 0x5f, 0x01, 0x80, 0xe0, 0x06, 0xf5, 0xd7, 0xae, 0x01, 0x07, 0xc1, 0x07, + 0x00, 0x17, 0xa1, 0x01, 0x80, 0x5e, 0x86, 0xf5, 0x77, 0xab, 0x01, 0xbc, + 0x60, 0x0f, 0x00, 0x11, 0xe8, 0x01, 0xbc, 0x62, 0x0f, 0x00, 0x11, 0xe0, + 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0a, 0xe5, 0x01, 0xbc, 0x61, 0xcf, 0x0c, + 0x10, 0x5c, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x10, 0x5d, 0x01, 0xbc, 0x61, + 0xcf, 0x01, 0xf0, 0x5e, 0x01, 0xbc, 0x60, 0x3b, 0x0a, 0xf0, 0x5f, 0x00, + 0x02, 0x5e, 0x02, 0xf0, 0x10, 0x56, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x08, + 0x34, 0x02, 0x03, 0x00, 0xc7, 0x00, 0x00, 0x13, 0x01, 0xbc, 0x60, 0x03, + 0x00, 0x06, 0x02, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x06, 0x07, 0x01, 0xbc, + 0x60, 0x03, 0x00, 0x06, 0x0c, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x06, 0x11, + 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x00, 0x13, 0x01, 0xbc, 0x60, 0x03, 0x00, + 0x10, 0x48, 0x01, 0x85, 0xe0, 0x02, 0xf5, 0xb7, 0xad, 0x01, 0xbc, 0x63, + 0xff, 0x1f, 0xf0, 0x54, 0x01, 0xbc, 0x63, 0xff, 0x1f, 0xf0, 0x55, 0x01, + 0xbc, 0x63, 0xbf, 0x1f, 0xf0, 0x56, 0x01, 0xbc, 0x63, 0xff, 0x0f, 0xf0, + 0x57, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x12, 0xbc, 0x01, 0x87, 0xe0, 0x06, + 0x24, 0x71, 0x23, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x10, 0x54, 0x01, 0xbc, + 0x60, 0x03, 0x00, 0x10, 0x55, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x10, 0x56, + 0x01, 0xbc, 0x60, 0x03, 0x00, 0x10, 0x57, 0x01, 0xbc, 0x60, 0x0f, 0x00, + 0x20, 0x17, 0x01, 0x06, 0xc1, 0x07, 0x00, 0x17, 0xa1, 0x01, 0x82, 0x5e, + 0x84, 0x02, 0xe0, 0x17, 0x01, 0x07, 0x41, 0x07, 0x00, 0x17, 0xa1, 0x00, + 0xb8, 0x5e, 0x87, 0x00, 0x37, 0xa1, 0x01, 0x80, 0xde, 0x87, 0x00, 0x00, + 0x16, 0x00, 0x02, 0xde, 0x02, 0xf0, 0x00, 0x00, 0x02, 0x85, 0xc0, 0x37, + 0x00, 0x00, 0x02, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x11, 0x8f, 0x00, 0x02, + 0x5e, 0x02, 0xf0, 0x0f, 0x38, 0x02, 0x86, 0x40, 0x37, 0x00, 0x0a, 0xf8, + 0x00, 0xe0, 0x02, 0x1b, 0x00, 0x20, 0x86, 0x03, 0x86, 0xde, 0x02, 0xf0, + 0x0a, 0x94, 0x02, 0x87, 0xc0, 0x37, 0x00, 0x0a, 0x94, 0x01, 0x58, 0x60, + 0x03, 0x00, 0x10, 0x2a, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x90, 0x04, 0x00, + 0xb0, 0x40, 0x13, 0x00, 0x17, 0xa1, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x00, + 0x13, 0x01, 0xb8, 0x60, 0x0a, 0x04, 0x90, 0x24, 0x03, 0xaa, 0x5e, 0x02, + 0xf0, 0x0b, 0x06, 0x01, 0x58, 0x60, 0x03, 0x00, 0x10, 0x2a, 0x01, 0xbc, + 0x60, 0x03, 0x02, 0x90, 0x04, 0x00, 0xb0, 0x40, 0x13, 0x00, 0x18, 0x00, + 0x01, 0x83, 0x60, 0x02, 0x09, 0x10, 0x48, 0x01, 0xbc, 0x60, 0x03, 0x00, + 0x51, 0xe4, 0x00, 0xb0, 0x47, 0x93, 0x00, 0x18, 0x00, 0x01, 0xbc, 0x62, + 0x0f, 0x00, 0x11, 0xe0, 0x01, 0x80, 0x60, 0x01, 0x00, 0x68, 0x03, 0x00, + 0x02, 0x5e, 0x02, 0xf0, 0x0f, 0x38, 0x03, 0x85, 0x5e, 0x02, 0xf0, 0x0b, + 0x0d, 0x01, 0xbc, 0x62, 0x0f, 0x00, 0x11, 0xe0, 0x01, 0xbc, 0x60, 0x0f, + 0x01, 0x31, 0xe8, 0x00, 0xb0, 0x47, 0xa3, 0x00, 0x18, 0x00, 0x01, 0xbc, + 0x60, 0x0f, 0x00, 0x11, 0xe8, 0x01, 0xbc, 0x60, 0x03, 0x01, 0x57, 0xa1, + 0x00, 0xe8, 0x5e, 0x87, 0x00, 0x37, 0xa1, 0x00, 0x68, 0xde, 0x87, 0x00, + 0x0b, 0x14, 0x01, 0xbc, 0x60, 0x03, 0x02, 0x90, 0x04, 0x00, 0xb0, 0x40, + 0x13, 0x00, 0x18, 0x00, 0x01, 0xbc, 0x60, 0x03, 0x01, 0x31, 0xec, 0x00, + 0xb0, 0x47, 0xb3, 0x00, 0x18, 0x00, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x11, + 0xec, 0x03, 0x24, 0xde, 0x02, 0xf0, 0x06, 0x24, 0x01, 0x86, 0x60, 0x06, + 0xf5, 0x77, 0xab, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0b, 0x22, 0x01, 0x80, + 0x60, 0x06, 0x10, 0x30, 0x81, 0x00, 0xb0, 0x5e, 0x87, 0x00, 0x17, 0xa1, + 0x01, 0x80, 0x60, 0x02, 0x10, 0x30, 0x81, 0x03, 0xbf, 0xde, 0x02, 0xf0, + 0x06, 0x24, 0x01, 0xbc, 0x61, 0x03, 0x00, 0x10, 0x80, 0x00, 0xb0, 0x42, + 0x03, 0x00, 0x18, 0x00, 0x00, 0x6e, 0xe0, 0x03, 0x00, 0x2b, 0x25, 0x03, + 0x50, 0x5e, 0x02, 0xf0, 0x0b, 0x28, 0x00, 0x01, 0x5e, 0x02, 0xf0, 0x00, + 0x00, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x03, 0x1d, 0x01, 0x84, 0x60, 0x02, + 0xf5, 0x97, 0xac, 0x00, 0xa8, 0x41, 0x23, 0x04, 0xf0, 0x48, 0x01, 0x82, + 0x60, 0x02, 0x09, 0x10, 0x48, 0x02, 0x06, 0xde, 0xaf, 0x00, 0x0b, 0x2e, + 0x03, 0xd5, 0xde, 0x02, 0xf0, 0x0b, 0x2e, 0x03, 0x50, 0xde, 0x02, 0xf0, + 0x0b, 0x2c, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x10, 0xb4, 0x02, 0x84, 0xc7, + 0x83, 0x00, 0x0b, 0x31, 0x01, 0xbc, 0x60, 0x0b, 0x00, 0x11, 0xe0, 0x01, + 0x8e, 0x60, 0x02, 0xf5, 0x77, 0xab, 0x00, 0x02, 0xde, 0x02, 0xf0, 0x00, + 0x00, 0x03, 0xa2, 0xde, 0x02, 0xf0, 0x00, 0x9b, 0x02, 0xbc, 0x42, 0x87, + 0x00, 0x0b, 0x3a, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x37, 0xa4, 0x01, 0xbc, + 0x60, 0x03, 0x1f, 0xf7, 0xa3, 0x01, 0x14, 0x00, 0x63, 0x00, 0x17, 0xa2, + 0x00, 0x88, 0x60, 0x06, 0xf4, 0x57, 0xa2, 0x03, 0xbf, 0xde, 0x02, 0xf0, + 0x0b, 0x3f, 0x00, 0x88, 0x60, 0x07, 0x01, 0x17, 0xa4, 0x01, 0xbc, 0x63, + 0xff, 0x00, 0x17, 0xa3, 0x01, 0x14, 0x00, 0x63, 0x00, 0x17, 0xa2, 0x00, + 0xe0, 0x5e, 0x8b, 0x01, 0x17, 0xa2, 0x00, 0x88, 0x60, 0x06, 0xf4, 0x57, + 0xa2, 0x01, 0xbc, 0x60, 0x13, 0x11, 0x10, 0x65, 0x01, 0xbc, 0x60, 0x1b, + 0x02, 0x50, 0x64, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x17, 0xa5, 0x00, 0x20, + 0xc2, 0x86, 0xf4, 0x8b, 0x49, 0x00, 0xe0, 0x41, 0x97, 0x06, 0xd0, 0x65, + 0x00, 0xe0, 0x41, 0x93, 0x01, 0xf0, 0x64, 0x00, 0xe0, 0x5e, 0x97, 0x00, + 0x37, 0xa5, 0x00, 0x88, 0x5e, 0x93, 0x00, 0x37, 0xa4, 0x00, 0x20, 0x5e, + 0x92, 0xf4, 0x6b, 0x68, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x0b, 0x42, 0x00, + 0x68, 0xde, 0x92, 0xf4, 0x4b, 0x4e, 0x00, 0x68, 0x00, 0x83, 0x00, 0x6b, + 0x4e, 0x03, 0xa0, 0xde, 0x02, 0xf0, 0x0b, 0x4e, 0x00, 0x20, 0xc1, 0x23, + 0x16, 0x0b, 0x43, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0b, 0x22, 0x00, 0x6d, + 0xde, 0x93, 0x20, 0x0b, 0x64, 0x02, 0x03, 0x00, 0xc7, 0x00, 0x0b, 0x58, + 0x00, 0x6d, 0xde, 0x97, 0x00, 0x8b, 0x58, 0x01, 0xbc, 0x60, 0x03, 0x00, + 0x16, 0x08, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x16, 0x09, 0x01, 0xbc, 0x60, + 0x03, 0x00, 0x16, 0x0a, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x16, 0x0b, 0x01, + 0xbc, 0x60, 0x03, 0x00, 0x16, 0x0c, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x16, + 0x0d, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x16, 0x0e, 0x02, 0x00, 0x5a, 0xc3, + 0x00, 0x0b, 0x63, 0x02, 0x3c, 0x5a, 0x9f, 0x00, 0x0b, 0x63, 0x00, 0x68, + 0x00, 0x83, 0x00, 0x6b, 0x63, 0x03, 0x85, 0xde, 0x02, 0xf0, 0x00, 0x9b, + 0x03, 0x85, 0x5e, 0x02, 0xf0, 0x00, 0x9b, 0x03, 0xa2, 0xde, 0x02, 0xf0, + 0x00, 0x9b, 0x03, 0xa3, 0xde, 0x02, 0xf0, 0x00, 0x9b, 0x03, 0x97, 0xde, + 0x02, 0xf0, 0x00, 0x9b, 0x00, 0xb0, 0x41, 0x97, 0x00, 0x10, 0x60, 0x01, + 0x91, 0x60, 0x0a, 0x84, 0xf4, 0x27, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x03, + 0x00, 0x01, 0x80, 0x60, 0x02, 0xd6, 0x16, 0xb0, 0x00, 0xb0, 0x5e, 0x93, + 0x00, 0x10, 0xa1, 0x01, 0x83, 0x60, 0x02, 0xf7, 0xf7, 0xbf, 0x01, 0xbc, + 0x60, 0x03, 0x00, 0x30, 0x43, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x0b, 0x43, + 0x00, 0x68, 0x80, 0x83, 0x00, 0x60, 0x9b, 0x03, 0xbf, 0xde, 0x02, 0xf0, + 0x0a, 0xc4, 0x02, 0x83, 0xc2, 0x1f, 0x00, 0x00, 0x02, 0x00, 0xb0, 0x5e, + 0x87, 0x00, 0x17, 0xa1, 0x03, 0xd0, 0xde, 0x02, 0xf0, 0x05, 0x2c, 0x01, + 0xbc, 0x60, 0x03, 0x04, 0x10, 0x42, 0x03, 0x9e, 0xde, 0x02, 0xf0, 0x00, + 0x13, 0x00, 0xb0, 0x5e, 0x3f, 0x00, 0x11, 0x45, 0x01, 0xbc, 0x60, 0x03, + 0x00, 0x17, 0x8f, 0x00, 0xb0, 0x5e, 0x43, 0x00, 0x17, 0x85, 0x00, 0xb0, + 0x5e, 0x0f, 0x00, 0x17, 0x90, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0b, 0x22, + 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x00, 0x13, 0x00, 0x6d, 0x40, 0x33, 0x05, + 0x89, 0xf4, 0x03, 0xac, 0x5e, 0x02, 0xf0, 0x0b, 0x7a, 0x00, 0x68, 0x5e, + 0x4f, 0x02, 0x8b, 0xb1, 0x00, 0xe0, 0x02, 0x67, 0x00, 0x20, 0x99, 0x03, + 0xbf, 0xde, 0x02, 0xf0, 0x0b, 0xb1, 0x00, 0x68, 0x5e, 0x4f, 0x02, 0x8b, + 0xb0, 0x00, 0xe0, 0x02, 0x5f, 0x00, 0x20, 0x97, 0x01, 0x85, 0x60, 0x02, + 0xf5, 0xb7, 0xad, 0x01, 0x82, 0x60, 0x02, 0xf5, 0xd7, 0xae, 0x01, 0xbc, + 0x60, 0x03, 0x00, 0x0a, 0xbb, 0x03, 0x9f, 0x5e, 0x02, 0xf0, 0x0b, 0xf3, + 0x03, 0x9e, 0xde, 0x02, 0xf0, 0x0b, 0x8f, 0x03, 0x21, 0xde, 0x02, 0xf0, + 0x0b, 0x8f, 0x00, 0xe0, 0x02, 0x6f, 0x00, 0x20, 0x9b, 0x00, 0x02, 0x5e, + 0x02, 0xf0, 0x0b, 0x22, 0x01, 0x86, 0x60, 0x02, 0x09, 0x10, 0x48, 0x01, + 0x80, 0x60, 0x02, 0x09, 0x10, 0x48, 0x01, 0x81, 0xe0, 0x02, 0x09, 0x10, + 0x48, 0x01, 0xbc, 0x60, 0x03, 0x02, 0x10, 0x42, 0x02, 0x80, 0x44, 0x1f, + 0x00, 0x0b, 0x8e, 0x00, 0xb0, 0x5e, 0x3f, 0x00, 0x11, 0x45, 0x01, 0xbc, + 0x60, 0x03, 0x00, 0x17, 0x8f, 0x00, 0xb0, 0x5e, 0x43, 0x00, 0x17, 0x85, + 0x00, 0xb0, 0x5e, 0x0f, 0x00, 0x17, 0x90, 0x03, 0xbf, 0xde, 0x02, 0xf0, + 0x0b, 0x8f, 0x00, 0xa0, 0x44, 0xb6, 0xf0, 0x71, 0x45, 0x03, 0x9f, 0x5e, + 0x02, 0xf0, 0x0b, 0xf3, 0x02, 0x82, 0x00, 0xc3, 0x00, 0x0b, 0xb0, 0x03, + 0x33, 0x5e, 0x02, 0xf0, 0x0b, 0xb0, 0x00, 0xb0, 0x00, 0x73, 0x00, 0x17, + 0xa1, 0x00, 0xe0, 0x5e, 0x86, 0xb0, 0x17, 0xa1, 0x00, 0xe1, 0x5e, 0x7a, + 0xf4, 0x37, 0x9e, 0x00, 0xe1, 0xde, 0x77, 0x00, 0x17, 0x9d, 0x00, 0xe1, + 0xde, 0x73, 0x00, 0x17, 0x9c, 0x00, 0xe0, 0xde, 0x6f, 0x00, 0x17, 0x9b, + 0x03, 0x9e, 0xde, 0x02, 0xf0, 0x0b, 0xa0, 0x00, 0x6e, 0x5e, 0x6e, 0x92, + 0x4b, 0xf3, 0x00, 0x6d, 0x5e, 0x6e, 0x92, 0x4b, 0xa0, 0x00, 0x6e, 0x5e, + 0x72, 0x92, 0x2b, 0xf3, 0x00, 0x6d, 0x5e, 0x72, 0x92, 0x2b, 0xa0, 0x00, + 0x6e, 0x5e, 0x76, 0x92, 0x0b, 0xf3, 0x00, 0x6d, 0x5e, 0x76, 0x92, 0x0b, + 0xa0, 0x00, 0x6d, 0xde, 0x7a, 0x91, 0xeb, 0xf3, 0x00, 0xb0, 0x44, 0x67, + 0x00, 0x08, 0x33, 0x00, 0xb0, 0x44, 0x6b, 0x00, 0x08, 0x32, 0x00, 0xb0, + 0x44, 0x6f, 0x00, 0x08, 0x31, 0x00, 0xb0, 0x44, 0x73, 0x00, 0x08, 0x30, + 0x00, 0x68, 0xa0, 0xce, 0x23, 0x2b, 0xa0, 0x00, 0xe9, 0x20, 0xce, 0xf3, + 0xd7, 0x9e, 0x00, 0xe9, 0xa0, 0xca, 0xf3, 0xb7, 0x9d, 0x00, 0xe9, 0xa0, + 0xc6, 0xf3, 0x97, 0x9c, 0x00, 0xe8, 0xa0, 0xc2, 0xf3, 0x77, 0x9b, 0x00, + 0xe1, 0x5e, 0x7a, 0x91, 0xf7, 0xa1, 0x00, 0xb0, 0x5e, 0x87, 0x00, 0x11, + 0x19, 0x00, 0xe1, 0xde, 0x76, 0x92, 0x11, 0x1a, 0x00, 0xe1, 0xde, 0x72, + 0x92, 0x31, 0x1b, 0x00, 0xe0, 0xde, 0x6e, 0x92, 0x51, 0x1c, 0x00, 0x68, + 0xde, 0x86, 0x23, 0x2b, 0xa9, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x0b, 0xf0, + 0x03, 0x1e, 0xde, 0x02, 0xf0, 0x0b, 0xf3, 0x00, 0x68, 0x5e, 0x4f, 0x02, + 0x8b, 0xf3, 0x01, 0xbc, 0x60, 0x1f, 0x16, 0xb0, 0x65, 0x01, 0xbc, 0x60, + 0x03, 0x00, 0x97, 0xa4, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x01, 0x15, 0x00, + 0x68, 0xde, 0x93, 0x00, 0x8b, 0xe0, 0x02, 0x85, 0x00, 0xc3, 0x00, 0x0b, + 0xe0, 0x02, 0x07, 0xc1, 0x97, 0x00, 0x0b, 0xbb, 0x01, 0x3c, 0x5a, 0x0f, + 0x00, 0x17, 0xa2, 0x01, 0xbc, 0x5a, 0x12, 0xf4, 0x57, 0xa2, 0x03, 0xbf, + 0xde, 0x02, 0xf0, 0x0b, 0xbc, 0x00, 0xb0, 0x5a, 0x0f, 0x00, 0x17, 0xa2, + 0x01, 0xbc, 0x60, 0x03, 0x00, 0x11, 0x32, 0x03, 0x2c, 0x5e, 0x02, 0xf0, + 0x0b, 0xc2, 0x02, 0x80, 0x44, 0x1f, 0x00, 0x0b, 0xe0, 0x00, 0xb0, 0x5e, + 0x8b, 0x00, 0x11, 0x86, 0x01, 0xa5, 0xe0, 0x0e, 0x30, 0x11, 0x80, 0x03, + 0xbf, 0xde, 0x02, 0xf0, 0x0b, 0xe0, 0x03, 0x33, 0x5e, 0x02, 0xf0, 0x0b, + 0xd9, 0x02, 0x9b, 0x40, 0x2f, 0x00, 0x0b, 0xd9, 0x02, 0x00, 0x44, 0x07, + 0x00, 0x0b, 0xd3, 0x02, 0x00, 0xc4, 0x07, 0x00, 0x0b, 0xcd, 0x02, 0x81, + 0x44, 0x07, 0x00, 0x0b, 0xe0, 0x01, 0x82, 0xe0, 0x07, 0x01, 0x90, 0x10, + 0x00, 0xb0, 0x52, 0x2f, 0x00, 0x10, 0x11, 0x00, 0xb0, 0x52, 0x33, 0x00, + 0x10, 0x11, 0x00, 0xb0, 0x52, 0x37, 0x00, 0x10, 0x11, 0x00, 0xb0, 0x5e, + 0x8b, 0x00, 0x11, 0x0f, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x0b, 0xe0, 0x01, + 0x82, 0xe0, 0x07, 0x01, 0x30, 0x10, 0x00, 0xb0, 0x52, 0x2f, 0x00, 0x10, + 0x11, 0x00, 0xb0, 0x52, 0x33, 0x00, 0x10, 0x11, 0x00, 0xb0, 0x52, 0x37, + 0x00, 0x10, 0x11, 0x00, 0xb0, 0x5e, 0x8b, 0x00, 0x11, 0x0d, 0x03, 0xbf, + 0xde, 0x02, 0xf0, 0x0b, 0xe0, 0x01, 0x82, 0xe0, 0x07, 0x00, 0xd0, 0x10, + 0x00, 0xb0, 0x52, 0x2f, 0x00, 0x10, 0x11, 0x00, 0xb0, 0x52, 0x33, 0x00, + 0x10, 0x11, 0x00, 0xb0, 0x52, 0x37, 0x00, 0x10, 0x11, 0x00, 0xb0, 0x5e, + 0x8b, 0x00, 0x11, 0x0b, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x0b, 0xe0, 0x03, + 0x33, 0xde, 0x02, 0xf0, 0x0b, 0xdc, 0x00, 0xb0, 0x5e, 0x8b, 0x00, 0x11, + 0x0b, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x0b, 0xe0, 0x03, 0x34, 0x5e, 0x02, + 0xf0, 0x0b, 0xdf, 0x00, 0xb0, 0x5e, 0x8b, 0x00, 0x11, 0x0d, 0x03, 0xbf, + 0xde, 0x02, 0xf0, 0x0b, 0xe0, 0x00, 0xb0, 0x5e, 0x8b, 0x00, 0x11, 0x0f, + 0x03, 0x1e, 0xde, 0x02, 0xf0, 0x0b, 0xf3, 0x03, 0x9f, 0x5e, 0x02, 0xf0, + 0x0b, 0xf3, 0x00, 0x68, 0x5e, 0x4f, 0x02, 0x8b, 0xf3, 0x03, 0x33, 0x5e, + 0x02, 0xf0, 0x0b, 0xf3, 0x01, 0xbc, 0x60, 0x1f, 0x16, 0xb0, 0x65, 0x01, + 0xbc, 0x60, 0x03, 0x00, 0xb7, 0xa4, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x01, + 0x15, 0x00, 0x68, 0xde, 0x93, 0x00, 0xab, 0xf3, 0x02, 0x07, 0xc1, 0x97, + 0x00, 0x0b, 0xec, 0x01, 0x3c, 0x5a, 0x07, 0x00, 0x17, 0x88, 0x01, 0x3c, + 0x5a, 0x0b, 0x00, 0x17, 0xa1, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x0b, 0xee, + 0x01, 0x38, 0x5a, 0x07, 0x00, 0x17, 0x88, 0x01, 0x38, 0x5a, 0x0b, 0x00, + 0x17, 0xa1, 0x01, 0x84, 0x5e, 0x86, 0xf2, 0x97, 0x94, 0x01, 0x87, 0xde, + 0x86, 0x24, 0x91, 0x24, 0x02, 0x06, 0x80, 0xf3, 0x00, 0x0b, 0xf3, 0x01, + 0x84, 0x60, 0x02, 0xf2, 0x97, 0x94, 0x01, 0x87, 0xe0, 0x02, 0x24, 0x91, + 0x24, 0x03, 0xab, 0x5e, 0x02, 0xf0, 0x06, 0xde, 0x03, 0xbf, 0xde, 0x02, + 0xf0, 0x08, 0xc6, 0x03, 0x2b, 0x5e, 0x02, 0xf0, 0x09, 0xf3, 0x03, 0xbf, + 0xde, 0x02, 0xf0, 0x06, 0xde, 0x03, 0xab, 0x5e, 0x02, 0xf0, 0x0b, 0xfa, + 0x03, 0x2c, 0x5e, 0x02, 0xf0, 0x09, 0xf3, 0x03, 0xbf, 0xde, 0x02, 0xf0, + 0x0c, 0x0a, 0x00, 0xb0, 0x52, 0x23, 0x00, 0x11, 0xf2, 0x00, 0xb0, 0x52, + 0x27, 0x00, 0x11, 0xf3, 0x00, 0xb0, 0x52, 0x2b, 0x00, 0x11, 0xf4, 0x01, + 0xbc, 0x60, 0x03, 0x00, 0x91, 0xf5, 0x00, 0xb0, 0x00, 0x5b, 0x00, 0x11, + 0xf0, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x06, 0xde, 0x01, 0x38, 0x52, 0x3f, + 0x00, 0x17, 0xa1, 0x02, 0x06, 0x5e, 0x53, 0x00, 0x0c, 0x03, 0x01, 0x38, + 0x52, 0x4b, 0x00, 0x17, 0xa1, 0x00, 0x68, 0xde, 0x87, 0x00, 0x8c, 0x06, + 0x03, 0xab, 0x5e, 0x02, 0xf0, 0x06, 0xde, 0x03, 0xbf, 0xde, 0x02, 0xf0, + 0x08, 0xc6, 0x00, 0x68, 0xde, 0x4f, 0x02, 0x0c, 0x09, 0x02, 0x07, 0x81, + 0xab, 0x00, 0x0c, 0x09, 0x01, 0x80, 0x60, 0x06, 0xf2, 0x97, 0x94, 0x03, + 0xab, 0x5e, 0x02, 0xf0, 0x06, 0xde, 0x02, 0x00, 0x00, 0xf3, 0x00, 0x0c, + 0x0f, 0x02, 0x06, 0xde, 0x53, 0x00, 0x0c, 0x0f, 0x01, 0x18, 0x5e, 0x83, + 0x00, 0x17, 0xa1, 0x00, 0x68, 0xde, 0x87, 0x00, 0xac, 0x0f, 0x01, 0xbc, + 0x60, 0x0b, 0x02, 0x51, 0x42, 0x02, 0x00, 0x52, 0x17, 0x00, 0x09, 0xf3, + 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x08, 0xc6, 0x01, 0xbc, 0x60, 0x03, 0x00, + 0x11, 0x83, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x11, 0x82, 0x03, 0x2c, 0x5e, + 0x02, 0xf0, 0x0c, 0x16, 0x01, 0x99, 0xe0, 0x06, 0x20, 0x11, 0x00, 0x03, + 0xbf, 0xde, 0x02, 0xf0, 0x0c, 0x1a, 0x01, 0x19, 0x40, 0x2f, 0x00, 0x17, + 0xa1, 0x00, 0x68, 0x5e, 0x87, 0x00, 0x09, 0xef, 0x01, 0x99, 0xde, 0x86, + 0x20, 0x11, 0x00, 0x03, 0x31, 0x5e, 0x02, 0xf0, 0x09, 0xef, 0x00, 0xa0, + 0x5e, 0x3b, 0x00, 0x97, 0xa2, 0x00, 0x20, 0x5e, 0x4e, 0xf4, 0x49, 0xef, + 0x01, 0x84, 0x60, 0x02, 0x09, 0x10, 0x48, 0x03, 0xbf, 0xde, 0x02, 0xf0, + 0x09, 0xef, 0x03, 0x2b, 0x5e, 0x02, 0xf0, 0x09, 0xef, 0x00, 0x68, 0xde, + 0x4f, 0x04, 0x2c, 0x23, 0x00, 0xb0, 0x52, 0x33, 0x00, 0x17, 0x9f, 0x00, + 0xb0, 0x52, 0x2f, 0x00, 0x10, 0xeb, 0x02, 0x81, 0x52, 0x2f, 0x00, 0x06, + 0xc6, 0x00, 0xe0, 0x02, 0xab, 0x00, 0x20, 0xaa, 0x02, 0x81, 0x52, 0x2f, + 0x00, 0x09, 0xcf, 0x03, 0x29, 0x5e, 0x02, 0xf0, 0x0c, 0x29, 0x02, 0x03, + 0xde, 0xb3, 0x00, 0x0c, 0x29, 0x01, 0x91, 0x60, 0x1a, 0x84, 0xf4, 0x27, + 0x01, 0x83, 0xe0, 0x02, 0xf5, 0x97, 0xac, 0x02, 0x08, 0x52, 0x2f, 0x00, + 0x06, 0xde, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x08, 0xc6, 0x01, 0xbc, 0x60, + 0x03, 0x00, 0x10, 0x67, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x10, 0x46, 0x01, + 0x80, 0xe0, 0x06, 0x09, 0x30, 0x49, 0x02, 0x82, 0xc1, 0x1f, 0x00, 0x0c, + 0x33, 0x01, 0xbc, 0x60, 0x2f, 0x1f, 0xf0, 0x65, 0x01, 0xbc, 0x60, 0x03, + 0x00, 0x16, 0x80, 0x00, 0xe8, 0x41, 0x97, 0x00, 0x30, 0x65, 0x00, 0x69, + 0xc1, 0x97, 0x00, 0x0c, 0x30, 0x01, 0xbc, 0x60, 0x0b, 0x00, 0x17, 0x94, + 0x01, 0xbc, 0x60, 0x03, 0x00, 0x17, 0xab, 0x01, 0xbc, 0x60, 0x03, 0x00, + 0x17, 0xac, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x17, 0xad, 0x01, 0xbc, 0x60, + 0x03, 0x00, 0x17, 0xae, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x17, 0xbf, 0x01, + 0xbc, 0x60, 0x03, 0x00, 0x20, 0x20, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x17, + 0xa1, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xce, 0x01, 0x38, 0x40, 0x67, + 0x00, 0x00, 0x28, 0x01, 0x1c, 0x40, 0x67, 0x00, 0x00, 0x29, 0x01, 0xbc, + 0x60, 0x03, 0x00, 0x50, 0x49, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x17, 0xa7, + 0x01, 0xbc, 0x60, 0x03, 0x00, 0x17, 0xa8, 0x01, 0xbc, 0x60, 0x03, 0x00, + 0x17, 0xa9, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x17, 0xac, 0x01, 0xbc, 0x60, + 0x03, 0x00, 0x17, 0xad, 0x01, 0x82, 0xe0, 0x06, 0x0f, 0x10, 0x78, 0x02, + 0x06, 0xc1, 0xe3, 0x00, 0x0c, 0x45, 0x00, 0x68, 0x80, 0xa7, 0x00, 0x0c, + 0x48, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x0c, 0x49, 0x00, 0x68, 0x80, 0xa7, + 0x00, 0x8c, 0x49, 0x01, 0xbc, 0x60, 0x0b, 0x1a, 0xe0, 0x00, 0x01, 0xbc, + 0x60, 0x07, 0x06, 0xc0, 0x01, 0x01, 0xbc, 0x63, 0x1b, 0x01, 0xe0, 0x02, + 0x01, 0xbc, 0x62, 0xcf, 0x0f, 0x60, 0x03, 0x01, 0xbc, 0x60, 0x03, 0x00, + 0x00, 0x04, 0x01, 0xbc, 0x60, 0x53, 0x0d, 0x80, 0x05, 0x01, 0xbc, 0x60, + 0x1f, 0x14, 0x10, 0x61, 0x01, 0xbc, 0x60, 0x13, 0x17, 0xd0, 0x60, 0x01, + 0xbc, 0x60, 0x03, 0x00, 0x08, 0x28, 0x00, 0xb0, 0x5e, 0x0f, 0x00, 0x17, + 0x85, 0x00, 0xa0, 0x44, 0xb6, 0xf0, 0x71, 0x45, 0x02, 0x87, 0x41, 0xd7, + 0x00, 0x0c, 0x54, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x0b, 0xef, 0x01, 0xbc, + 0x60, 0x03, 0x00, 0x10, 0x7d, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x10, 0x7c, + 0x01, 0xbc, 0x60, 0x63, 0x00, 0x10, 0x7b, 0x01, 0xbc, 0x60, 0x03, 0x00, + 0x10, 0x7a, 0x01, 0xac, 0x60, 0x7f, 0x00, 0x10, 0x75, 0x01, 0xbc, 0x63, + 0x47, 0x08, 0x97, 0xa1, 0x00, 0x68, 0xc1, 0xda, 0xf4, 0x2c, 0x60, 0x01, + 0x1a, 0x41, 0xdf, 0x00, 0x17, 0xa1, 0x00, 0x68, 0xde, 0x87, 0x01, 0x6c, + 0x60, 0x01, 0xbc, 0x63, 0x7b, 0x15, 0xab, 0xef, 0x03, 0xbf, 0xde, 0x02, + 0xf0, 0x0a, 0xab, 0x01, 0x88, 0x5e, 0x5c, 0xff, 0x87, 0xfc, 0x01, 0xbc, + 0x60, 0x1f, 0x1f, 0x50, 0x07, 0x01, 0xbc, 0x60, 0x03, 0x01, 0x90, 0x08, + 0x01, 0x88, 0x60, 0x06, 0x00, 0x90, 0x04, 0x03, 0x86, 0xde, 0x02, 0xf0, + 0x0a, 0x94, 0x03, 0x05, 0xde, 0x02, 0xf0, 0x0c, 0x65, 0x03, 0x86, 0xde, + 0x02, 0xf0, 0x0a, 0x94, 0x03, 0x85, 0xde, 0x02, 0xf0, 0x0c, 0x67, 0x00, + 0xb0, 0x5e, 0x87, 0x00, 0x17, 0xa1, 0x00, 0x6e, 0xe0, 0x03, 0x00, 0x2c, + 0x6b, 0x03, 0x86, 0xde, 0x02, 0xf0, 0x0a, 0x94, 0x00, 0x6e, 0xc0, 0x14, + 0x6f, 0x2c, 0x6e, 0x01, 0xbc, 0x60, 0x07, 0x00, 0x10, 0x42, 0x02, 0x07, + 0xc0, 0xaf, 0x00, 0x07, 0x85, 0x00, 0x02, 0xde, 0x02, 0xf0, 0x00, 0x00, + 0x03, 0x21, 0x5e, 0x02, 0xf0, 0x0c, 0x74, 0x00, 0xe0, 0x20, 0x62, 0xf4, + 0x28, 0x18, 0x00, 0xb0, 0x20, 0x63, 0x00, 0x17, 0x8b, 0x03, 0xbf, 0xde, + 0x02, 0xf0, 0x0c, 0x7c, 0x02, 0x81, 0x50, 0xc7, 0x00, 0x0c, 0x79, 0x01, + 0x1c, 0x50, 0x9f, 0x00, 0x17, 0x8b, 0x00, 0xe0, 0x5e, 0x2e, 0xf4, 0x37, + 0x8b, 0x01, 0x9c, 0x5e, 0x2e, 0x84, 0xf4, 0x27, 0x03, 0xbf, 0xde, 0x02, + 0xf0, 0x0c, 0x7c, 0x01, 0x1e, 0x50, 0x9f, 0x00, 0x17, 0x8b, 0x00, 0xe0, + 0x5e, 0x2e, 0xf4, 0x37, 0x8b, 0x01, 0x9e, 0x5e, 0x2e, 0x84, 0xf4, 0x27, + 0x00, 0x02, 0xde, 0x02, 0xf0, 0x00, 0x00, 0x01, 0x07, 0x40, 0x27, 0x00, + 0x08, 0x27, 0x00, 0xe0, 0x20, 0x9f, 0x00, 0x28, 0x27, 0x00, 0x02, 0xde, + 0x02, 0xf0, 0x00, 0x00, 0x00, 0xb0, 0x5a, 0x03, 0x00, 0x10, 0x1f, 0x00, + 0xb0, 0x5a, 0x07, 0x00, 0x10, 0x20, 0x00, 0xb0, 0x5a, 0x0b, 0x00, 0x10, + 0x21, 0x01, 0x80, 0x60, 0x07, 0x00, 0x10, 0x1d, 0x02, 0x80, 0x40, 0x77, + 0x00, 0x0c, 0x84, 0x00, 0x02, 0xde, 0x02, 0xf0, 0x00, 0x00, 0x01, 0x87, + 0xe0, 0x02, 0xf5, 0x77, 0xab, 0x03, 0x91, 0x5e, 0x02, 0xf0, 0x00, 0x02, + 0x00, 0x20, 0xe3, 0xfe, 0x09, 0x00, 0x02, 0x02, 0x81, 0x5e, 0x53, 0x00, + 0x0c, 0x92, 0x02, 0x83, 0x41, 0x1f, 0x00, 0x0c, 0x8c, 0x02, 0x81, 0xde, + 0x53, 0x00, 0x0c, 0x98, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x11, 0x51, 0x01, + 0xbc, 0x60, 0x03, 0x00, 0x11, 0x52, 0x01, 0xbc, 0x62, 0x03, 0x00, 0x11, + 0x53, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x51, 0x50, 0x01, 0x89, 0x60, 0x06, + 0xf2, 0x97, 0x94, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x00, 0x02, 0x02, 0x80, + 0xc5, 0x43, 0x00, 0x00, 0x02, 0x01, 0xf0, 0xc5, 0x47, 0x00, 0x11, 0x56, + 0x01, 0x07, 0xc5, 0x47, 0x00, 0x17, 0xa1, 0x01, 0xf0, 0xc5, 0x4a, 0xf4, + 0x31, 0x55, 0x01, 0x89, 0x60, 0x0a, 0xf2, 0x97, 0x94, 0x01, 0xbc, 0x60, + 0x03, 0x08, 0x10, 0x47, 0x03, 0x92, 0xde, 0x02, 0xf0, 0x00, 0x02, 0x00, + 0x68, 0xc0, 0x17, 0x00, 0x00, 0x02, 0x02, 0x04, 0xc1, 0x07, 0x00, 0x00, + 0x02, 0x03, 0x9e, 0xde, 0x02, 0xf0, 0x0c, 0xa0, 0x03, 0xb8, 0xde, 0x02, + 0xf0, 0x00, 0x02, 0x00, 0xb0, 0x01, 0x7f, 0x00, 0x17, 0xa1, 0x00, 0x68, + 0xde, 0x84, 0x0b, 0xc0, 0x02, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x0c, 0xa2, + 0x02, 0x03, 0xde, 0x53, 0x00, 0x00, 0x02, 0x00, 0x68, 0xde, 0x23, 0x00, + 0x0c, 0xa3, 0x02, 0x84, 0x5e, 0x53, 0x00, 0x00, 0x02, 0x02, 0x87, 0xc4, + 0x93, 0x00, 0x00, 0x02, 0x02, 0x82, 0xde, 0xbb, 0x00, 0x0c, 0xa6, 0x00, + 0x68, 0x2a, 0xff, 0x00, 0x0c, 0xa9, 0x00, 0x68, 0x2b, 0x87, 0xff, 0xe0, + 0x02, 0x00, 0xb0, 0x2a, 0xef, 0x00, 0x17, 0xa1, 0x00, 0x6d, 0xde, 0x85, + 0x55, 0xc0, 0x02, 0x00, 0xb0, 0x01, 0x2b, 0x00, 0x17, 0xa3, 0x02, 0x82, + 0xde, 0xbb, 0x00, 0x0c, 0xac, 0x00, 0x68, 0x2a, 0xff, 0x00, 0x0c, 0xad, + 0x00, 0xe0, 0x5e, 0x8d, 0x5c, 0x37, 0xa3, 0x00, 0xb0, 0x44, 0x0b, 0x00, + 0x17, 0xa1, 0x00, 0xb0, 0x44, 0x0f, 0x00, 0x17, 0xa2, 0x00, 0xe9, 0x5e, + 0x86, 0x23, 0x37, 0xa1, 0x00, 0xe8, 0xde, 0x8a, 0x23, 0x57, 0xa2, 0x00, + 0xe9, 0x5e, 0x86, 0xf4, 0x66, 0xe5, 0x00, 0xe8, 0xde, 0x8b, 0x00, 0x08, + 0x14, 0x00, 0xb0, 0x44, 0x1f, 0x00, 0x18, 0x00, 0x00, 0x88, 0x44, 0x23, + 0x01, 0x57, 0xa3, 0x00, 0x90, 0x44, 0x23, 0x00, 0xd7, 0xa4, 0x00, 0x6e, + 0x5e, 0x8a, 0xf4, 0x8a, 0xd7, 0x00, 0x6d, 0xaf, 0xc3, 0x00, 0x2c, 0xcd, + 0x00, 0x68, 0x81, 0x6f, 0x00, 0x0c, 0xbb, 0x00, 0x68, 0x5e, 0x23, 0x00, + 0x2c, 0xcd, 0x00, 0x68, 0x00, 0x27, 0x00, 0x2c, 0xcd, 0x00, 0xe8, 0x5e, + 0x23, 0x00, 0x37, 0xa1, 0x00, 0x69, 0xde, 0x87, 0x00, 0x0c, 0xbe, 0x00, + 0xe0, 0x5e, 0x84, 0x01, 0x37, 0xa1, 0x01, 0x3c, 0x01, 0x6f, 0x00, 0x17, + 0xa5, 0x00, 0x68, 0xde, 0x97, 0x00, 0x0c, 0xc5, 0x01, 0x38, 0x01, 0x6f, + 0x00, 0x17, 0xa5, 0x00, 0x68, 0x5e, 0x97, 0x00, 0x0c, 0xc9, 0x00, 0xe8, + 0x5e, 0x97, 0x00, 0x37, 0xa1, 0x00, 0x68, 0x5e, 0x87, 0x00, 0x0c, 0xcd, + 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x0c, 0xc9, 0x00, 0xe8, 0x5e, 0x97, 0x00, + 0x37, 0xa5, 0x00, 0x80, 0xde, 0x94, 0x01, 0x37, 0xa5, 0x00, 0xe0, 0x5e, + 0x86, 0x0d, 0xb7, 0xa1, 0x00, 0x68, 0x5e, 0x87, 0x00, 0x0c, 0xcd, 0x00, + 0xe1, 0x1b, 0x96, 0xf4, 0x66, 0xe5, 0x00, 0xe0, 0xa0, 0x52, 0xf4, 0x88, + 0x14, 0x00, 0xe8, 0x5e, 0x87, 0x00, 0x37, 0xa1, 0x00, 0x6a, 0x5e, 0x87, + 0x00, 0x0c, 0xc9, 0x01, 0xbc, 0x61, 0x03, 0x00, 0x11, 0x23, 0x00, 0x69, + 0x20, 0x53, 0x00, 0x0c, 0xd1, 0x01, 0x80, 0xe0, 0x06, 0xf2, 0x97, 0x94, + 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x0c, 0xd3, 0x01, 0x80, 0xe0, 0x02, 0xf2, + 0x97, 0x94, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x00, 0x02, 0x00, 0x68, 0x41, + 0x27, 0x00, 0x0c, 0xdd, 0x02, 0x84, 0x45, 0x23, 0x00, 0x0c, 0xd4, 0x00, + 0xb0, 0x44, 0x67, 0x00, 0x17, 0xa1, 0x00, 0xe8, 0x44, 0x66, 0xf4, 0x37, + 0xa2, 0x00, 0x6d, 0x5e, 0x8b, 0x00, 0x4c, 0xd6, 0x03, 0x92, 0xde, 0x02, + 0xf0, 0x0a, 0xd7, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x10, 0x96, 0x00, 0x02, + 0x5e, 0x02, 0xf0, 0x0d, 0xf4, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0d, 0xef, + 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0d, 0xff, 0x01, 0xbc, 0x60, 0x0f, 0x00, + 0x11, 0xe8, 0x03, 0x1e, 0xde, 0x02, 0xf0, 0x0c, 0xe4, 0x01, 0xbc, 0x60, + 0x03, 0x00, 0x10, 0x5c, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x90, 0x5d, 0x01, + 0xbc, 0x60, 0x53, 0x04, 0x10, 0x5e, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x10, + 0x5f, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x0c, 0xe8, 0x01, 0xbc, 0x60, 0x0b, + 0x00, 0x10, 0x5c, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x90, 0x5d, 0x01, 0xbc, + 0x60, 0x43, 0x04, 0x10, 0x5e, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x10, 0x5f, + 0x01, 0xbc, 0x60, 0x03, 0x00, 0x80, 0x20, 0x02, 0x85, 0x00, 0xbf, 0x00, + 0x0d, 0x23, 0x00, 0xb0, 0x1b, 0x97, 0x00, 0x11, 0x51, 0x00, 0xb0, 0x20, + 0x53, 0x00, 0x11, 0x52, 0x00, 0x6e, 0x1b, 0x96, 0x2a, 0x8c, 0xf0, 0x00, + 0x68, 0xa0, 0x53, 0x00, 0x0c, 0xf0, 0x00, 0xe0, 0x1b, 0x96, 0x23, 0x28, + 0x15, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x0c, 0xf2, 0x00, 0xb0, 0x44, 0x67, + 0x00, 0x08, 0x15, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x31, 0x50, 0x01, 0xbc, + 0x60, 0x03, 0x0c, 0x90, 0x40, 0x00, 0x00, 0xde, 0x02, 0xf0, 0x00, 0x00, + 0x00, 0x68, 0xc1, 0x03, 0x00, 0x0c, 0xf7, 0x02, 0x80, 0x45, 0x43, 0x00, + 0x0c, 0xf2, 0x00, 0x6b, 0x44, 0x65, 0x02, 0xac, 0xf2, 0x01, 0xbc, 0x60, + 0x03, 0x00, 0x11, 0x50, 0x02, 0x84, 0x45, 0x43, 0x00, 0x0c, 0xf8, 0x00, + 0xb0, 0x44, 0x67, 0x00, 0x17, 0xa1, 0x00, 0x68, 0x5e, 0x86, 0x23, 0x2c, + 0xfa, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x40, 0x20, 0x00, 0xe9, 0x1b, 0x96, + 0x2a, 0x37, 0xa1, 0x00, 0xe8, 0xa0, 0x52, 0x2a, 0x57, 0xa2, 0x00, 0xe1, + 0x44, 0x66, 0xf4, 0x31, 0x19, 0x00, 0xe1, 0xc4, 0x6a, 0xf4, 0x51, 0x1a, + 0x00, 0xe1, 0xc4, 0x6f, 0x00, 0x11, 0x1b, 0x00, 0xe0, 0xc4, 0x73, 0x00, + 0x11, 0x1c, 0x00, 0xb0, 0x44, 0x1f, 0x00, 0x18, 0x00, 0x00, 0x88, 0x44, + 0x23, 0x01, 0x57, 0xa3, 0x00, 0x90, 0x44, 0x23, 0x00, 0xd7, 0xa4, 0x00, + 0xb0, 0x44, 0x0b, 0x00, 0x17, 0xa1, 0x00, 0xb0, 0x44, 0x0f, 0x00, 0x17, + 0xa2, 0x00, 0xe9, 0x5e, 0x86, 0x23, 0x37, 0xa1, 0x00, 0xe8, 0xde, 0x8a, + 0x23, 0x57, 0xa2, 0x00, 0x69, 0xde, 0x8b, 0x00, 0x0d, 0x11, 0x00, 0xe1, + 0x44, 0x0a, 0xf4, 0x71, 0x02, 0x00, 0xe0, 0xc4, 0x0e, 0xf4, 0x91, 0x03, + 0x00, 0xe0, 0x2a, 0xef, 0x00, 0x2a, 0xbb, 0x00, 0xe8, 0x5e, 0x23, 0x00, + 0x37, 0x88, 0x00, 0x69, 0xde, 0x23, 0x00, 0x0d, 0x05, 0x00, 0xe8, 0x00, + 0x27, 0x00, 0x37, 0x88, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x0d, 0x05, 0x01, + 0x86, 0x60, 0x02, 0x20, 0x11, 0x00, 0x02, 0x00, 0xde, 0x53, 0x00, 0x0d, + 0x25, 0x01, 0x80, 0xe0, 0x02, 0xf2, 0x97, 0x94, 0x00, 0x02, 0x5e, 0x02, + 0xf0, 0x0d, 0xf2, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x10, 0x40, 0x03, 0xbf, + 0xde, 0x02, 0xf0, 0x0d, 0x18, 0x02, 0x00, 0x80, 0xc3, 0x00, 0x0d, 0x1c, + 0x00, 0xe0, 0x44, 0x64, 0x09, 0x57, 0xa1, 0x00, 0xe8, 0x5e, 0x86, 0x21, + 0x37, 0xa1, 0x00, 0x6c, 0xc4, 0x66, 0xf4, 0x2d, 0x1a, 0x03, 0xbf, 0xde, + 0x02, 0xf0, 0x0d, 0x25, 0x00, 0xe8, 0x01, 0x2a, 0x21, 0x26, 0xe5, 0x01, + 0xbc, 0x60, 0x03, 0x00, 0x08, 0x14, 0x00, 0xb0, 0x1b, 0x97, 0x00, 0x11, + 0x51, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x11, 0x52, 0x01, 0xbc, 0x60, 0x03, + 0x00, 0x31, 0x50, 0x02, 0x80, 0x45, 0x43, 0x00, 0x0d, 0x21, 0x03, 0xbf, + 0xde, 0x02, 0xf0, 0x0c, 0xfc, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x10, 0x40, + 0x00, 0xb0, 0x01, 0x2b, 0x00, 0x11, 0x09, 0x00, 0x68, 0xaa, 0xdf, 0x00, + 0x0d, 0x27, 0x00, 0x00, 0xde, 0x02, 0xf0, 0x00, 0x00, 0x03, 0x56, 0x5e, + 0x02, 0xf0, 0x0d, 0x29, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x01, 0x59, 0x00, + 0xb0, 0x01, 0x2f, 0x00, 0x11, 0x09, 0x01, 0xbc, 0x61, 0xcf, 0x0c, 0x10, + 0x5c, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x10, 0x5d, 0x01, 0xbc, 0x61, 0xcf, + 0x01, 0xf0, 0x5e, 0x01, 0xbc, 0x60, 0x3b, 0x0a, 0xf0, 0x5f, 0x00, 0x02, + 0x5e, 0x02, 0xf0, 0x0d, 0xfb, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0e, 0x04, + 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0d, 0xf8, 0x03, 0xbf, 0xde, 0x02, 0xf0, + 0x0a, 0xd7, 0x01, 0x88, 0x5e, 0x06, 0x10, 0xd0, 0x86, 0x01, 0x02, 0x5e, + 0x07, 0x00, 0x17, 0xa1, 0x01, 0x82, 0x5e, 0x86, 0x10, 0xd0, 0x86, 0x01, + 0xbc, 0x60, 0x03, 0x06, 0x77, 0x80, 0x00, 0xb0, 0x0d, 0xef, 0x00, 0x17, + 0x81, 0x02, 0x88, 0x42, 0x1b, 0x00, 0x0d, 0x39, 0x00, 0xb0, 0x0d, 0xeb, + 0x00, 0x17, 0x81, 0x00, 0x68, 0x5e, 0x07, 0x00, 0x0d, 0x3b, 0x00, 0x02, + 0x5e, 0x02, 0xf0, 0x0d, 0xe9, 0x02, 0x0b, 0x42, 0x1b, 0x00, 0x0d, 0x3d, + 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x0d, 0x3e, 0x01, 0x8b, 0x20, 0x9e, 0x10, + 0xd0, 0x86, 0x00, 0x02, 0xde, 0x02, 0xf0, 0x00, 0x00, 0x00, 0xb0, 0x54, + 0x13, 0x00, 0x17, 0xa1, 0x02, 0x00, 0xde, 0x07, 0x00, 0x0d, 0x46, 0x00, + 0xb0, 0x41, 0x8b, 0x00, 0x10, 0x65, 0x01, 0xbc, 0x60, 0x03, 0x01, 0xd7, + 0xa1, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x11, 0xba, 0x00, 0xe0, 0x5e, 0x84, + 0x00, 0xf7, 0xa1, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x0d, 0x4b, 0x02, 0x04, + 0x80, 0xf3, 0x00, 0x0d, 0x4b, 0x02, 0x02, 0x5e, 0x07, 0x00, 0x0d, 0x4b, + 0x02, 0x80, 0x5e, 0x07, 0x00, 0x0d, 0x4b, 0x00, 0x90, 0x00, 0x1b, 0x00, + 0x37, 0xa2, 0x00, 0xe8, 0x54, 0x12, 0xf4, 0x57, 0xa1, 0x00, 0x02, 0xde, + 0x02, 0xf0, 0x00, 0x00, 0x02, 0x04, 0x00, 0xbf, 0x00, 0x0d, 0x4f, 0x00, + 0x02, 0x5e, 0x02, 0xf0, 0x0e, 0xf2, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x0d, + 0x50, 0x00, 0xa0, 0x44, 0xb6, 0xf0, 0xb1, 0x45, 0x00, 0x02, 0xde, 0x02, + 0xf0, 0x00, 0x00, 0x02, 0x00, 0x00, 0xbf, 0x00, 0x0d, 0x61, 0x00, 0x68, + 0xac, 0x07, 0x00, 0x0d, 0x61, 0x00, 0xe0, 0x5e, 0xa3, 0x00, 0x37, 0xa8, + 0x00, 0x6d, 0x5e, 0xa0, 0x05, 0xcd, 0x61, 0x00, 0xb0, 0x2c, 0xb3, 0x00, + 0x17, 0xa1, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xce, 0x00, 0xb0, 0x40, + 0x67, 0x00, 0x17, 0xa2, 0x00, 0x68, 0xde, 0xa3, 0xff, 0xed, 0x5e, 0x00, + 0xb0, 0x5e, 0x89, 0x65, 0xb7, 0xa2, 0x00, 0x6d, 0x00, 0xa7, 0x00, 0x8d, + 0x5d, 0x00, 0x6d, 0xa0, 0x9f, 0x00, 0x4d, 0x5f, 0x03, 0xbf, 0xde, 0x02, + 0xf0, 0x0d, 0x5e, 0x00, 0x68, 0xa0, 0x9f, 0x00, 0x0d, 0x5f, 0x00, 0xb8, + 0x5e, 0x89, 0x65, 0xb7, 0xa2, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xd4, + 0x01, 0xbc, 0x60, 0x03, 0x00, 0x17, 0xa8, 0x00, 0x02, 0xde, 0x02, 0xf0, + 0x00, 0x00, 0x00, 0xd8, 0x5a, 0x03, 0x01, 0x17, 0xa2, 0x01, 0xb8, 0x5a, + 0x06, 0xf4, 0x57, 0xa2, 0x00, 0xb0, 0x56, 0x03, 0x00, 0x08, 0x3c, 0x00, + 0xb0, 0x56, 0x07, 0x00, 0x08, 0x3d, 0x00, 0xb0, 0x56, 0x0b, 0x00, 0x08, + 0x3e, 0x00, 0xb0, 0x56, 0x0f, 0x00, 0x08, 0x3f, 0x00, 0xb0, 0x56, 0x13, + 0x00, 0x08, 0x40, 0x00, 0xe0, 0x56, 0x12, 0xf4, 0x48, 0x41, 0x00, 0xb0, + 0x5a, 0x03, 0x00, 0x08, 0x3a, 0x01, 0x38, 0x5e, 0x8b, 0x00, 0x08, 0x3b, + 0x00, 0xb0, 0x21, 0x07, 0x00, 0x17, 0xa4, 0x01, 0xbc, 0x60, 0x03, 0x00, + 0x17, 0xa2, 0x00, 0xb0, 0x41, 0x93, 0x00, 0x10, 0x65, 0x00, 0xb8, 0x5e, + 0x92, 0xd0, 0x17, 0xa4, 0x00, 0xe0, 0x5e, 0x06, 0xf4, 0x50, 0x63, 0x00, + 0xf0, 0x5e, 0x93, 0x00, 0x17, 0xa3, 0x00, 0xf0, 0x5e, 0x93, 0x00, 0x77, + 0xa4, 0x00, 0xe0, 0x5e, 0x8b, 0x00, 0x37, 0xa2, 0x00, 0xb8, 0x5e, 0x92, + 0xf4, 0x77, 0xa4, 0x00, 0xe0, 0x41, 0x92, 0xf4, 0x50, 0x65, 0x00, 0xe0, + 0x56, 0x02, 0xf4, 0x95, 0x80, 0x00, 0xb0, 0x56, 0x03, 0x00, 0x17, 0xa4, + 0x00, 0x6e, 0xde, 0x8b, 0x00, 0xad, 0x6f, 0x00, 0xb8, 0x5e, 0x92, 0xc0, + 0xd7, 0xa2, 0x00, 0xd8, 0x5e, 0x8b, 0x00, 0x37, 0xa2, 0x00, 0xe0, 0x20, + 0xf2, 0xf4, 0x48, 0x3c, 0x00, 0xb0, 0x20, 0xf3, 0x00, 0x17, 0xa4, 0x00, + 0xb8, 0x5e, 0x92, 0xc0, 0xf7, 0xa2, 0x00, 0xd8, 0x5e, 0x8b, 0x00, 0x37, + 0xa2, 0x00, 0xe0, 0x20, 0xf6, 0xf4, 0x48, 0x3d, 0x00, 0xd8, 0x20, 0xf7, + 0x00, 0x37, 0xa2, 0x00, 0xe0, 0x20, 0xfa, 0xf4, 0x48, 0x3e, 0x00, 0xd8, + 0x20, 0xfb, 0x00, 0x37, 0xa2, 0x00, 0xe0, 0x20, 0xfe, 0xf4, 0x48, 0x3f, + 0x00, 0xd8, 0x20, 0xff, 0x00, 0x37, 0xa2, 0x00, 0xe0, 0x21, 0x02, 0xf4, + 0x48, 0x40, 0x00, 0xd8, 0x21, 0x03, 0x00, 0x37, 0xa2, 0x00, 0xe0, 0x21, + 0x06, 0xf4, 0x48, 0x41, 0x00, 0xb0, 0x21, 0x07, 0x00, 0x17, 0xa2, 0x00, + 0xb8, 0x5e, 0x8a, 0xc0, 0x17, 0xa2, 0x00, 0x90, 0x5e, 0x8b, 0x00, 0x37, + 0xa2, 0x01, 0xbc, 0x5e, 0x89, 0x07, 0x68, 0x3b, 0x00, 0x02, 0xde, 0x02, + 0xf0, 0x00, 0x00, 0x01, 0x80, 0x60, 0x06, 0x3c, 0x91, 0xe4, 0x01, 0x87, + 0x60, 0x06, 0x3c, 0xd1, 0xe6, 0x01, 0xa8, 0x60, 0x02, 0x3c, 0xd1, 0xe6, + 0x01, 0x8b, 0x60, 0x02, 0x3c, 0xd1, 0xe6, 0x00, 0xb0, 0x5e, 0x8f, 0x00, + 0x10, 0x63, 0x00, 0xb0, 0x56, 0x03, 0x00, 0x11, 0xe7, 0x00, 0xb0, 0x56, + 0x07, 0x00, 0x11, 0xe7, 0x00, 0xb0, 0x56, 0x0b, 0x00, 0x11, 0xe7, 0x00, + 0xb0, 0x56, 0x0f, 0x00, 0x11, 0xe7, 0x01, 0xa9, 0x60, 0x42, 0x3c, 0x91, + 0xe4, 0x01, 0xa8, 0x60, 0x02, 0x3c, 0xd1, 0xe6, 0x01, 0x8b, 0x60, 0x06, + 0x3c, 0xd1, 0xe6, 0x00, 0xb0, 0x5e, 0x8b, 0x00, 0x10, 0x63, 0x01, 0xbc, + 0x60, 0x03, 0x00, 0x57, 0xa1, 0x02, 0x04, 0x56, 0x03, 0x00, 0x0d, 0x9d, + 0x01, 0xbc, 0x60, 0x03, 0x01, 0x17, 0xa1, 0x00, 0xe0, 0x41, 0x8e, 0xf4, + 0x30, 0x63, 0x00, 0xb0, 0x56, 0x03, 0x00, 0x11, 0xe7, 0x00, 0xb0, 0x56, + 0x07, 0x00, 0x11, 0xe7, 0x00, 0xb0, 0x56, 0x0b, 0x00, 0x11, 0xe7, 0x00, + 0xb0, 0x5e, 0x8b, 0x00, 0x10, 0x63, 0x01, 0xbc, 0x60, 0x03, 0x00, 0xb7, + 0xa1, 0x02, 0x04, 0xd6, 0x03, 0x00, 0x0d, 0xa7, 0x01, 0xbc, 0x60, 0x03, + 0x01, 0x17, 0xa1, 0x02, 0x06, 0x5e, 0x53, 0x00, 0x0d, 0xa7, 0x01, 0xbc, + 0x60, 0x03, 0x01, 0x97, 0xa1, 0x00, 0xe0, 0x41, 0x8e, 0xf4, 0x30, 0x63, + 0x00, 0xb0, 0x56, 0x03, 0x00, 0x11, 0xe7, 0x00, 0xb0, 0x56, 0x07, 0x00, + 0x11, 0xe7, 0x00, 0xb0, 0x56, 0x0b, 0x00, 0x11, 0xe7, 0x01, 0xbc, 0x60, + 0x03, 0x00, 0x17, 0xa1, 0x02, 0x06, 0xde, 0x53, 0x00, 0x0d, 0xb2, 0x00, + 0xb0, 0x5e, 0x8b, 0x00, 0x10, 0x63, 0x02, 0x06, 0x5e, 0x53, 0x00, 0x0d, + 0xb1, 0x00, 0xa0, 0x56, 0x3f, 0x01, 0xf7, 0xa1, 0x03, 0xbf, 0xde, 0x02, + 0xf0, 0x0d, 0xb2, 0x00, 0xa0, 0x56, 0x33, 0x01, 0xf7, 0xa1, 0x00, 0xb0, + 0x5e, 0x87, 0x00, 0x11, 0xe7, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x11, 0xe7, + 0x00, 0x02, 0xde, 0x02, 0xf0, 0x00, 0x00, 0x00, 0x68, 0x5e, 0x9b, 0x00, + 0xcd, 0xcf, 0x01, 0xbc, 0x60, 0x07, 0x02, 0x11, 0xe3, 0x00, 0x68, 0xde, + 0x9b, 0x00, 0x4d, 0xc2, 0x00, 0xe8, 0x47, 0x87, 0x01, 0x11, 0xe1, 0x01, + 0xbc, 0x60, 0x03, 0x00, 0x11, 0xe2, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x11, + 0xe2, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x11, 0xe2, 0x01, 0xbc, 0x60, 0x03, + 0x00, 0x11, 0xe2, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x11, 0xe2, 0x01, 0xbc, + 0x60, 0x03, 0x00, 0x11, 0xe2, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x11, 0xe2, + 0x01, 0xbc, 0x60, 0x03, 0x00, 0x11, 0xe2, 0x00, 0xb0, 0x61, 0x42, 0xf4, + 0x51, 0xe0, 0x00, 0xb0, 0x58, 0x03, 0x00, 0x11, 0xe2, 0x00, 0xb0, 0x58, + 0x07, 0x00, 0x11, 0xe2, 0x00, 0xb0, 0x58, 0x0b, 0x00, 0x11, 0xe2, 0x00, + 0xb0, 0x58, 0x0f, 0x00, 0x11, 0xe2, 0x00, 0xb0, 0x58, 0x13, 0x00, 0x11, + 0xe2, 0x00, 0xb0, 0x58, 0x17, 0x00, 0x11, 0xe2, 0x00, 0xb0, 0x58, 0x1b, + 0x00, 0x11, 0xe2, 0x00, 0xb0, 0x58, 0x1f, 0x00, 0x11, 0xe2, 0x00, 0xb0, + 0x5e, 0x9b, 0x00, 0x17, 0xa4, 0x00, 0x68, 0xde, 0x9b, 0x00, 0xad, 0xcd, + 0x01, 0xbc, 0x60, 0x03, 0x00, 0x77, 0xa4, 0x01, 0x92, 0xde, 0x93, 0x02, + 0x17, 0xa3, 0x00, 0x02, 0xde, 0x02, 0xf0, 0x00, 0x00, 0x01, 0xbc, 0x60, + 0x07, 0x00, 0x11, 0xe3, 0x00, 0xb0, 0x58, 0x03, 0x00, 0x11, 0xe2, 0x00, + 0xb0, 0x58, 0x07, 0x00, 0x11, 0xe2, 0x00, 0xb0, 0x58, 0x0b, 0x00, 0x11, + 0xe2, 0x00, 0xb0, 0x58, 0x0f, 0x00, 0x11, 0xe2, 0x00, 0xb0, 0x58, 0x13, + 0x00, 0x11, 0xe2, 0x00, 0xb0, 0x58, 0x17, 0x00, 0x11, 0xe2, 0x00, 0xb0, + 0x58, 0x1b, 0x00, 0x11, 0xe2, 0x00, 0xb0, 0x58, 0x1f, 0x00, 0x11, 0xe2, + 0x00, 0xe0, 0x01, 0x46, 0xf0, 0x10, 0x64, 0x01, 0xbc, 0x60, 0x07, 0x00, + 0x31, 0xe3, 0x00, 0xb0, 0x58, 0x03, 0x00, 0x11, 0xe2, 0x00, 0xb0, 0x58, + 0x07, 0x00, 0x11, 0xe2, 0x00, 0xb0, 0x58, 0x0b, 0x00, 0x11, 0xe2, 0x00, + 0xb0, 0x58, 0x0f, 0x00, 0x11, 0xe2, 0x00, 0xb0, 0x58, 0x13, 0x00, 0x11, + 0xe2, 0x00, 0xb0, 0x58, 0x17, 0x00, 0x11, 0xe2, 0x00, 0xb0, 0x58, 0x1b, + 0x00, 0x11, 0xe2, 0x00, 0xb0, 0x58, 0x1f, 0x00, 0x11, 0xe2, 0x01, 0x92, + 0xe0, 0x1b, 0x00, 0x17, 0xa3, 0x00, 0x02, 0xde, 0x02, 0xf0, 0x00, 0x00, + 0x02, 0x87, 0x40, 0xc3, 0x00, 0x0d, 0xe4, 0x01, 0x86, 0x60, 0x06, 0xf0, + 0x10, 0x30, 0x02, 0x86, 0x40, 0xc3, 0x00, 0x0d, 0xe6, 0x00, 0xb0, 0x40, + 0xc7, 0x00, 0x17, 0x81, 0x00, 0x02, 0xde, 0x02, 0xf0, 0x00, 0x00, 0x02, + 0x87, 0x40, 0xc3, 0x00, 0x0d, 0xe9, 0x00, 0xb0, 0x5e, 0x07, 0x00, 0x10, + 0x31, 0x01, 0x86, 0xe0, 0x06, 0xf0, 0x10, 0x30, 0x00, 0x02, 0xde, 0x02, + 0xf0, 0x00, 0x00, 0x00, 0x68, 0x00, 0xa7, 0x01, 0x12, 0xf8, 0x03, 0xbf, + 0xde, 0x02, 0xf0, 0x0e, 0x03, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0d, 0xf2, + 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0e, 0x04, 0x00, 0x02, 0xde, 0x02, 0xf0, + 0x00, 0x00, 0x00, 0x68, 0x00, 0xa7, 0x01, 0x12, 0xc1, 0x00, 0x02, 0xde, + 0x02, 0xf0, 0x00, 0x00, 0x01, 0x81, 0x60, 0x06, 0x09, 0x30, 0x49, 0x00, + 0x68, 0x00, 0xa7, 0x00, 0x8d, 0xf7, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0e, + 0x14, 0x00, 0x02, 0xde, 0x02, 0xf0, 0x00, 0x00, 0x00, 0x02, 0x5e, 0x02, + 0xf0, 0x0e, 0x14, 0x01, 0x81, 0x60, 0x02, 0x09, 0x30, 0x49, 0x00, 0x02, + 0xde, 0x02, 0xf0, 0x00, 0x00, 0x01, 0x88, 0xe0, 0x0e, 0x09, 0x30, 0x49, + 0x00, 0xb0, 0x41, 0x27, 0x00, 0x18, 0x00, 0x00, 0xb0, 0x00, 0x2b, 0x00, + 0x10, 0x02, 0x00, 0x02, 0xde, 0x02, 0xf0, 0x00, 0x00, 0x01, 0xbc, 0x60, + 0x03, 0x00, 0x10, 0x02, 0x01, 0x82, 0xe0, 0x02, 0x0f, 0x10, 0x78, 0x01, + 0xbc, 0x60, 0x03, 0x00, 0x10, 0x49, 0x00, 0xb0, 0x41, 0x27, 0x00, 0x18, + 0x00, 0x00, 0x02, 0xde, 0x02, 0xf0, 0x00, 0x00, 0x00, 0x68, 0x00, 0xa7, + 0x01, 0x0e, 0x05, 0x02, 0x80, 0xde, 0x53, 0x00, 0x0e, 0x0b, 0x01, 0xbc, + 0x60, 0x13, 0x07, 0x77, 0xa1, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xce, + 0x01, 0x90, 0x60, 0x02, 0x03, 0x37, 0xa2, 0x00, 0x02, 0x5e, 0x02, 0xf0, + 0x00, 0xd4, 0x00, 0x02, 0xde, 0x02, 0xf0, 0x00, 0x00, 0x01, 0xbc, 0x60, + 0x13, 0x07, 0x97, 0xa1, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xce, 0x01, + 0x90, 0x60, 0x1e, 0x03, 0x37, 0xa2, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, + 0xd4, 0x01, 0xbc, 0x60, 0x13, 0x07, 0x77, 0xa1, 0x00, 0x02, 0x5e, 0x02, + 0xf0, 0x00, 0xce, 0x01, 0x90, 0x60, 0x1e, 0x03, 0x37, 0xa2, 0x00, 0x02, + 0x5e, 0x02, 0xf0, 0x00, 0xd4, 0x00, 0x02, 0xde, 0x02, 0xf0, 0x00, 0x00, + 0x01, 0x00, 0xde, 0x53, 0x00, 0x17, 0xa6, 0x01, 0x81, 0xde, 0x9a, 0x09, + 0x30, 0x49, 0x00, 0xb0, 0x41, 0x27, 0x00, 0x18, 0x00, 0x00, 0x02, 0xde, + 0x02, 0xf0, 0x00, 0x00, 0x00, 0x02, 0xde, 0x02, 0xf0, 0x00, 0x00, 0x00, + 0xb0, 0x44, 0x67, 0x00, 0x17, 0xa2, 0x01, 0x7d, 0x5e, 0x8a, 0x23, 0x57, + 0xa3, 0x00, 0xb0, 0x1c, 0x77, 0x00, 0x17, 0xa1, 0x00, 0xb8, 0x5e, 0x84, + 0xe3, 0xd7, 0xa2, 0x02, 0x5a, 0x5e, 0x8b, 0x00, 0x0e, 0x21, 0x01, 0x80, + 0xe0, 0x06, 0xf4, 0x27, 0x1e, 0x01, 0x82, 0x5e, 0x86, 0xf2, 0x97, 0x94, + 0x00, 0xb0, 0x5e, 0x8f, 0x00, 0x07, 0x1b, 0x02, 0x00, 0x1c, 0x7b, 0x00, + 0x0e, 0x68, 0x00, 0xe8, 0x5e, 0x8c, 0xe3, 0x77, 0xa2, 0x00, 0x6d, 0x5e, + 0x88, 0xe3, 0x8e, 0x68, 0x00, 0xe0, 0x44, 0x67, 0x02, 0x87, 0x21, 0x02, + 0x85, 0xc5, 0x23, 0x00, 0x0e, 0x65, 0x00, 0x20, 0xe3, 0xfe, 0x09, 0x0e, + 0x65, 0x01, 0xbc, 0x60, 0x13, 0x09, 0x97, 0xa1, 0x00, 0x02, 0x5e, 0x02, + 0xf0, 0x00, 0xce, 0x00, 0x68, 0xc0, 0x67, 0x00, 0x0e, 0x65, 0x01, 0xbc, + 0x60, 0x13, 0x16, 0x17, 0xa1, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xce, + 0x00, 0x68, 0xc0, 0x67, 0x00, 0x0e, 0x65, 0x01, 0xbc, 0x60, 0x13, 0x09, + 0xd7, 0xa1, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xce, 0x00, 0x68, 0xc0, + 0x67, 0x00, 0x0e, 0x65, 0x01, 0xbc, 0x63, 0xff, 0x1f, 0xf7, 0xa1, 0x00, + 0x68, 0xde, 0x86, 0x2c, 0x2e, 0x65, 0x02, 0x00, 0x9c, 0x7b, 0x00, 0x0e, + 0x59, 0x01, 0x80, 0xe0, 0x00, 0xe3, 0xc7, 0x1e, 0x01, 0xbc, 0x60, 0x23, + 0x0f, 0x57, 0xa1, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xce, 0x00, 0xb0, + 0x40, 0x67, 0x00, 0x77, 0xa4, 0x00, 0xb0, 0x5e, 0x93, 0x00, 0x17, 0xa2, + 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xd4, 0x01, 0xbc, 0x60, 0x1b, 0x1b, + 0x57, 0xa1, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xce, 0x01, 0x81, 0xe0, + 0x06, 0x03, 0x37, 0xa2, 0x01, 0x86, 0xe0, 0x06, 0xf4, 0x57, 0xa2, 0x00, + 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xd4, 0x01, 0xbc, 0x60, 0x17, 0x14, 0xd7, + 0xa1, 0x01, 0xbc, 0x60, 0x03, 0x00, 0xb7, 0xa2, 0x00, 0x02, 0x5e, 0x02, + 0xf0, 0x00, 0xd4, 0x01, 0xbc, 0x60, 0x17, 0x14, 0x57, 0xa1, 0x01, 0xbc, + 0x60, 0x03, 0x18, 0x77, 0xa2, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xd4, + 0x01, 0xbc, 0x60, 0x17, 0x14, 0xb7, 0xa1, 0x01, 0xbc, 0x60, 0x03, 0x00, + 0xf7, 0xa2, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xd4, 0x01, 0xbc, 0x60, + 0x17, 0x10, 0x77, 0xa1, 0x01, 0xbc, 0x60, 0x0f, 0x04, 0x17, 0xa2, 0x00, + 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xd4, 0x01, 0xbc, 0x60, 0x17, 0x10, 0x97, + 0xa1, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x17, 0xa2, 0x00, 0x02, 0x5e, 0x02, + 0xf0, 0x00, 0xd4, 0x01, 0xbc, 0x60, 0x17, 0x10, 0xb7, 0xa1, 0x01, 0xbc, + 0x60, 0x0b, 0x00, 0x17, 0xa2, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xd4, + 0x01, 0xbc, 0x60, 0x17, 0x10, 0xd7, 0xa1, 0x01, 0xbc, 0x60, 0x03, 0x00, + 0x17, 0xa2, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xd4, 0x01, 0xbc, 0x60, + 0x17, 0x10, 0x17, 0xa1, 0x01, 0xbc, 0x60, 0x0b, 0x00, 0x37, 0xa2, 0x00, + 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xd4, 0x01, 0xbc, 0x60, 0x23, 0x0f, 0x57, + 0xa1, 0x00, 0xa8, 0x5e, 0x93, 0x00, 0x77, 0xa2, 0x00, 0x02, 0x5e, 0x02, + 0xf0, 0x00, 0xd4, 0x01, 0xbc, 0x60, 0x17, 0x10, 0x17, 0xa1, 0x00, 0x02, + 0x5e, 0x02, 0xf0, 0x00, 0xce, 0x02, 0x00, 0x40, 0x67, 0x00, 0x0e, 0x5e, + 0x00, 0x6c, 0xc4, 0x64, 0xe4, 0x2e, 0x25, 0x03, 0xbf, 0xde, 0x02, 0xf0, + 0x0e, 0x65, 0x01, 0xbc, 0x60, 0x17, 0x12, 0x77, 0xa1, 0x00, 0x02, 0x5e, + 0x02, 0xf0, 0x00, 0xce, 0x00, 0x68, 0xc0, 0x67, 0x1f, 0xee, 0x65, 0x01, + 0x80, 0x60, 0x00, 0xe3, 0xc7, 0x1e, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x90, + 0x43, 0x01, 0x80, 0x60, 0x00, 0xe3, 0xc7, 0x1e, 0x01, 0x82, 0x60, 0x02, + 0xf2, 0x97, 0x94, 0x01, 0x80, 0xe0, 0x04, 0xe3, 0xc7, 0x1e, 0x01, 0xbc, + 0x60, 0x03, 0x00, 0x07, 0x1a, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x0e, 0x68, + 0x00, 0x02, 0xde, 0x02, 0xf0, 0x00, 0x00, 0x02, 0x01, 0xc1, 0x1f, 0x00, + 0x0e, 0x7b, 0x02, 0x85, 0x5e, 0xaf, 0x00, 0x0e, 0x6e, 0x01, 0x85, 0x60, + 0x06, 0xf5, 0x77, 0xab, 0x00, 0xb0, 0x44, 0x67, 0x00, 0x08, 0x24, 0x00, + 0xb0, 0x44, 0x6b, 0x00, 0x08, 0x25, 0x00, 0xe9, 0x44, 0x65, 0x04, 0x97, + 0xa1, 0x00, 0xe8, 0xc4, 0x69, 0x04, 0xb7, 0xa2, 0x00, 0xd0, 0x5e, 0x87, + 0x00, 0x77, 0xa1, 0x01, 0xe1, 0xde, 0x8a, 0xf4, 0x37, 0xa2, 0x00, 0xe9, + 0x5e, 0x86, 0x26, 0x97, 0xa1, 0x00, 0xe8, 0xde, 0x8a, 0x26, 0xb7, 0xa2, + 0x00, 0x69, 0x5e, 0x8b, 0x00, 0x0e, 0x7b, 0x01, 0xbc, 0x61, 0x03, 0x00, + 0x11, 0x33, 0x00, 0xe1, 0x44, 0xda, 0xf4, 0x31, 0x36, 0x00, 0xe1, 0x44, + 0xde, 0xf4, 0x51, 0x37, 0x01, 0x85, 0x60, 0x02, 0xf5, 0x77, 0xab, 0x01, + 0xbc, 0x60, 0x03, 0x01, 0x10, 0x47, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x50, + 0x43, 0x00, 0x02, 0xde, 0x02, 0xf0, 0x00, 0x00, 0x00, 0xb0, 0x45, 0x1f, + 0x00, 0x17, 0x81, 0x00, 0xb0, 0x05, 0xb7, 0x00, 0x17, 0xa6, 0x01, 0xbc, + 0x60, 0x07, 0x04, 0x10, 0x64, 0x01, 0xbc, 0x60, 0x13, 0x11, 0x10, 0x65, + 0x01, 0xbc, 0x60, 0x03, 0x00, 0x17, 0xa1, 0x02, 0x05, 0xde, 0xaf, 0x00, + 0x0e, 0x94, 0x00, 0xb0, 0x58, 0x0f, 0x00, 0x17, 0x80, 0x00, 0x68, 0x5e, + 0x84, 0x2c, 0x2e, 0x9c, 0x02, 0x00, 0x5e, 0x9b, 0x00, 0x0e, 0x94, 0x02, + 0x80, 0xda, 0x03, 0x00, 0x0e, 0x8a, 0x01, 0x18, 0x58, 0x1f, 0x00, 0x17, + 0x82, 0x00, 0xe0, 0x5e, 0x0b, 0x00, 0x37, 0x82, 0x01, 0x98, 0x5e, 0x0a, + 0xc0, 0xf6, 0x07, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x0e, 0x8d, 0x01, 0x1a, + 0x58, 0x1f, 0x00, 0x17, 0x82, 0x00, 0xe0, 0x5e, 0x0b, 0x00, 0x37, 0x82, + 0x01, 0x9a, 0x5e, 0x0a, 0xc0, 0xf6, 0x07, 0x01, 0xf0, 0xde, 0x03, 0x00, + 0x37, 0x80, 0x00, 0xa0, 0x5e, 0x02, 0xc0, 0x57, 0x80, 0x00, 0xb0, 0x5e, + 0x03, 0x00, 0x16, 0x03, 0x00, 0xa0, 0x44, 0xb6, 0xf0, 0x17, 0x82, 0x00, + 0xb0, 0x5e, 0x0b, 0x00, 0x16, 0x05, 0x00, 0xe0, 0x5e, 0x0a, 0xc0, 0x96, + 0x06, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x0e, 0x9c, 0x00, 0xb0, 0x58, 0x13, + 0x00, 0x17, 0x82, 0x00, 0xe8, 0x5e, 0x06, 0xf0, 0x57, 0xa5, 0x00, 0x6a, + 0xde, 0x97, 0x00, 0x0e, 0x9a, 0x00, 0xe8, 0x58, 0x16, 0xf4, 0xb6, 0x05, + 0x00, 0x69, 0xd8, 0x17, 0x00, 0x0e, 0x9a, 0x01, 0xbc, 0x60, 0x03, 0x00, + 0x16, 0x05, 0x00, 0xb0, 0x58, 0x17, 0x00, 0x17, 0xa5, 0x00, 0xe0, 0x58, + 0x12, 0xf4, 0xb6, 0x06, 0x00, 0xe0, 0x41, 0x93, 0x02, 0x10, 0x64, 0x00, + 0xe0, 0x41, 0x97, 0x06, 0xd0, 0x65, 0x00, 0xe0, 0x5e, 0x87, 0x00, 0x37, + 0xa1, 0x00, 0x90, 0x5e, 0x9b, 0x00, 0x37, 0xa6, 0x00, 0x68, 0xde, 0x87, + 0x00, 0x8e, 0x81, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x11, 0x47, 0x00, 0x02, + 0xde, 0x02, 0xf0, 0x00, 0x00, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x01, 0x6c, + 0x01, 0xbc, 0x60, 0x03, 0x00, 0x01, 0x6d, 0x01, 0xbc, 0x60, 0x07, 0x0a, + 0x10, 0x64, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x77, 0xa1, 0x00, 0xb0, 0x42, + 0x8f, 0x00, 0x17, 0x80, 0x00, 0xa0, 0x5e, 0x03, 0x01, 0xf7, 0x80, 0x00, + 0xb0, 0x5e, 0x03, 0x00, 0x01, 0x6e, 0x01, 0xbc, 0x63, 0xff, 0x1f, 0xf7, + 0xa2, 0x00, 0x68, 0xde, 0x03, 0x00, 0x0e, 0xad, 0x01, 0xbc, 0x60, 0x03, + 0x00, 0x17, 0xa2, 0x00, 0x88, 0x60, 0x06, 0xf4, 0x37, 0x81, 0x00, 0x20, + 0x05, 0xba, 0xf0, 0x2e, 0xb2, 0x00, 0x68, 0xde, 0x8a, 0xc0, 0xce, 0xb2, + 0x00, 0xe0, 0x05, 0xb3, 0x00, 0x21, 0x6c, 0x00, 0xb0, 0x05, 0xb6, 0xf0, + 0x21, 0x6d, 0x00, 0x68, 0x5e, 0x03, 0x00, 0x0e, 0xb6, 0x00, 0x20, 0x5e, + 0x06, 0xf0, 0x0e, 0xbc, 0x00, 0x6e, 0xde, 0x8a, 0xc0, 0xce, 0xbc, 0x03, + 0xbf, 0xde, 0x02, 0xf0, 0x0e, 0xb7, 0x00, 0x6d, 0xde, 0x8a, 0xc0, 0xce, + 0xbc, 0x00, 0xb0, 0x5e, 0x87, 0x00, 0x17, 0xa3, 0x00, 0xb0, 0x41, 0x93, + 0x00, 0x01, 0x66, 0x00, 0xb0, 0x58, 0x1b, 0x00, 0x17, 0xa2, 0x01, 0xbc, + 0x60, 0x03, 0x00, 0x01, 0x6c, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x01, 0x6d, + 0x00, 0xe8, 0x41, 0x93, 0x02, 0x10, 0x64, 0x00, 0xe8, 0x5e, 0x87, 0x00, + 0x37, 0xa1, 0x00, 0x69, 0xde, 0x87, 0x00, 0x0e, 0xad, 0x00, 0xb0, 0x5e, + 0x8f, 0x00, 0x01, 0x65, 0x00, 0x02, 0xde, 0x02, 0xf0, 0x00, 0x00, 0x00, + 0xb0, 0x05, 0x9b, 0x00, 0x10, 0x64, 0x00, 0x6e, 0x58, 0x1b, 0x00, 0x2e, + 0xc5, 0x00, 0xe0, 0x58, 0x1b, 0x00, 0x31, 0x45, 0x03, 0xbf, 0xde, 0x02, + 0xf0, 0x0e, 0xc6, 0x00, 0xe8, 0x58, 0x1b, 0x00, 0x31, 0x45, 0x00, 0xb0, + 0x05, 0x9b, 0x00, 0x01, 0x62, 0x00, 0xb0, 0x05, 0x97, 0x00, 0x01, 0x61, + 0x00, 0xb0, 0x58, 0x0f, 0x00, 0x17, 0x85, 0x00, 0xb0, 0x58, 0x07, 0x00, + 0x17, 0x83, 0x00, 0xb0, 0x58, 0x0b, 0x00, 0x17, 0x84, 0x01, 0x18, 0x58, + 0x1f, 0x00, 0x17, 0x8c, 0x01, 0x1a, 0x58, 0x1f, 0x00, 0x17, 0x8d, 0x00, + 0x02, 0xde, 0x02, 0xf0, 0x00, 0x00, 0x00, 0xb0, 0x05, 0x97, 0x00, 0x17, + 0x80, 0x00, 0x68, 0x5e, 0x00, 0x2c, 0x2e, 0xf1, 0x01, 0xbc, 0x60, 0x03, + 0x00, 0x11, 0x12, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x11, 0x15, 0x00, 0xb0, + 0x05, 0x9b, 0x00, 0x10, 0x64, 0x02, 0x00, 0x45, 0x23, 0x00, 0x0e, 0xdb, + 0x00, 0xb0, 0x45, 0x1f, 0x00, 0x17, 0x81, 0x00, 0xe8, 0x05, 0x92, 0xf0, + 0x37, 0x80, 0x00, 0x6a, 0xde, 0x03, 0x00, 0x0e, 0xd9, 0x00, 0xb0, 0x5e, + 0x03, 0x00, 0x11, 0x45, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x0e, 0xdc, 0x01, + 0xbc, 0x60, 0x03, 0x00, 0x31, 0x45, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x0e, + 0xdc, 0x00, 0xb0, 0x05, 0x93, 0x00, 0x11, 0x45, 0x00, 0xb0, 0x05, 0x83, + 0x00, 0x01, 0x69, 0x00, 0xb0, 0x05, 0x8b, 0x00, 0x01, 0x6a, 0x00, 0xb0, + 0x05, 0x8f, 0x00, 0x01, 0x6b, 0x00, 0xb0, 0x05, 0x87, 0x00, 0x01, 0x68, + 0x00, 0xb0, 0x05, 0xab, 0x00, 0x10, 0x65, 0x02, 0x84, 0x5a, 0x1f, 0x00, + 0x0e, 0xe5, 0x00, 0xb0, 0x5e, 0x17, 0x00, 0x16, 0x83, 0x01, 0x98, 0x5e, + 0x32, 0xd0, 0xf6, 0x87, 0x01, 0x9a, 0x5e, 0x36, 0xd0, 0xf6, 0x87, 0x01, + 0x84, 0x60, 0x02, 0xd0, 0xf6, 0x87, 0x00, 0xb0, 0x05, 0x93, 0x00, 0x01, + 0x60, 0x00, 0xb0, 0x05, 0x9b, 0x00, 0x01, 0x62, 0x00, 0xb0, 0x05, 0x9f, + 0x00, 0x01, 0x63, 0x00, 0xb0, 0x05, 0x97, 0x00, 0x01, 0x61, 0x00, 0xb0, + 0x05, 0x8b, 0x00, 0x10, 0x64, 0x00, 0xb0, 0x58, 0x0f, 0x00, 0x17, 0x85, + 0x00, 0xb0, 0x58, 0x07, 0x00, 0x17, 0x83, 0x00, 0xb0, 0x58, 0x0b, 0x00, + 0x17, 0x84, 0x01, 0x98, 0x58, 0x1e, 0xf1, 0x97, 0x8c, 0x01, 0x9a, 0x58, + 0x1e, 0xf1, 0xb7, 0x8d, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x0e, 0xf1, 0x00, + 0x02, 0xde, 0x02, 0xf0, 0x00, 0x00, 0x00, 0xb0, 0x05, 0x8b, 0x00, 0x10, + 0x64, 0x00, 0x6e, 0x41, 0x93, 0x2a, 0x0e, 0xfe, 0x00, 0xa0, 0x44, 0xb6, + 0xf0, 0xb7, 0xa1, 0x00, 0xb0, 0x5e, 0x87, 0x00, 0x16, 0x05, 0x00, 0xe0, + 0x58, 0x12, 0xf4, 0x36, 0x06, 0x02, 0x00, 0x00, 0xf3, 0x00, 0x0e, 0xfb, + 0x00, 0x6d, 0x41, 0x93, 0x28, 0x0e, 0xfb, 0x02, 0x00, 0xde, 0xaf, 0x00, + 0x0e, 0xfb, 0x01, 0xbc, 0x60, 0x0b, 0x02, 0x51, 0x42, 0x00, 0xb0, 0x5e, + 0x87, 0x00, 0x01, 0x6f, 0x02, 0x01, 0x5e, 0xaf, 0x00, 0x0e, 0xfe, 0x00, + 0xb0, 0x5e, 0x17, 0x00, 0x16, 0x03, 0x01, 0x81, 0x60, 0x02, 0xf5, 0x77, + 0xab, 0x00, 0x02, 0xde, 0x02, 0xf0, 0x00, 0x00, 0x02, 0x01, 0x45, 0x23, + 0x00, 0x0f, 0x09, 0x02, 0x87, 0xc4, 0x93, 0x00, 0x0f, 0x09, 0x01, 0x82, + 0x60, 0x02, 0xf5, 0xd7, 0xae, 0x02, 0x01, 0x2c, 0x3b, 0x00, 0x0f, 0x06, + 0x00, 0xe0, 0x2c, 0x43, 0x00, 0x2b, 0x10, 0x01, 0x81, 0x60, 0x01, 0x61, + 0xcb, 0x0e, 0x02, 0x05, 0x5e, 0xb7, 0x00, 0x0f, 0x09, 0x00, 0xe0, 0x2a, + 0xef, 0x00, 0x2a, 0xbb, 0x01, 0x85, 0x60, 0x02, 0xf5, 0xb7, 0xad, 0x00, + 0x02, 0xde, 0x02, 0xf0, 0x00, 0x00, 0x02, 0x02, 0x00, 0xbf, 0x00, 0x0f, + 0x17, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0f, 0x39, 0x02, 0x02, 0xde, 0xb3, + 0x00, 0x0f, 0x0f, 0x00, 0x20, 0x42, 0x8f, 0x00, 0x0c, 0x86, 0x03, 0xbf, + 0xde, 0x02, 0xf0, 0x00, 0x02, 0x02, 0x88, 0x81, 0xab, 0x00, 0x0f, 0x17, + 0x02, 0x84, 0x5e, 0xff, 0x00, 0x0f, 0x0d, 0x02, 0x84, 0x5e, 0xb3, 0x00, + 0x0f, 0x0d, 0x02, 0x82, 0xde, 0xff, 0x00, 0x0f, 0x0d, 0x02, 0x82, 0x2b, + 0x47, 0x00, 0x0f, 0x15, 0x00, 0x68, 0x2a, 0xb3, 0x00, 0x0f, 0x17, 0x02, + 0x84, 0xde, 0xaf, 0x00, 0x0f, 0x0d, 0x02, 0x83, 0x5e, 0xb7, 0x00, 0x0f, + 0x0d, 0x00, 0xb0, 0x5e, 0x87, 0x00, 0x17, 0xa1, 0x00, 0x02, 0xde, 0x02, + 0xf0, 0x00, 0x00, 0x01, 0x82, 0xe0, 0x02, 0xf5, 0x97, 0xac, 0x02, 0x03, + 0xde, 0xff, 0x00, 0x0f, 0x21, 0x02, 0x84, 0x45, 0x23, 0x00, 0x0f, 0x21, + 0x02, 0x01, 0x2b, 0x47, 0x00, 0x0f, 0x21, 0x01, 0x80, 0xe0, 0x06, 0xf2, + 0x97, 0x94, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0e, 0x14, 0x01, 0x80, 0xe0, + 0x02, 0xf2, 0x97, 0x94, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0e, 0x14, 0x01, + 0x80, 0xe0, 0x02, 0xf2, 0x97, 0x94, 0x02, 0x84, 0x00, 0xc7, 0x00, 0x0d, + 0xed, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x0d, 0xef, 0x02, 0x04, 0x00, 0xc7, + 0x00, 0x0f, 0x2b, 0x02, 0x84, 0xc5, 0x6f, 0x00, 0x0f, 0x37, 0x02, 0x84, + 0x45, 0x23, 0x00, 0x0f, 0x28, 0x02, 0x00, 0x42, 0x03, 0x00, 0x0f, 0x37, + 0x00, 0x68, 0x5e, 0x4b, 0x04, 0xaf, 0x37, 0x00, 0x68, 0x5e, 0x4b, 0x06, + 0xaf, 0x37, 0x00, 0x68, 0x5e, 0x4b, 0x06, 0x2f, 0x37, 0x01, 0x82, 0xe0, + 0x06, 0xf5, 0x97, 0xac, 0x02, 0x84, 0x45, 0x23, 0x00, 0x0f, 0x2e, 0x03, + 0x23, 0xde, 0x02, 0xf0, 0x0f, 0x2f, 0x01, 0x83, 0xe0, 0x06, 0xf5, 0x97, + 0xac, 0x01, 0x80, 0xe0, 0x06, 0xf2, 0x97, 0x94, 0x02, 0x84, 0x00, 0xc7, + 0x00, 0x0d, 0xed, 0x00, 0xb0, 0x2a, 0xef, 0x00, 0x17, 0xa2, 0x00, 0x6d, + 0xde, 0x89, 0x55, 0xcd, 0xed, 0x02, 0x87, 0x2b, 0x47, 0x00, 0x0d, 0xef, + 0x02, 0x00, 0x5e, 0xff, 0x00, 0x0d, 0xed, 0x02, 0x87, 0xab, 0x47, 0x00, + 0x0d, 0xef, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x0d, 0xed, 0x00, 0x02, 0xde, + 0x02, 0xf0, 0x00, 0x00, 0x02, 0x02, 0x00, 0xbf, 0x00, 0x10, 0x4a, 0x00, + 0x68, 0x2b, 0x03, 0x00, 0x0f, 0x3e, 0x00, 0xe8, 0x44, 0x65, 0x58, 0x17, + 0xa1, 0x01, 0xbc, 0x63, 0xf7, 0x1d, 0x17, 0xa2, 0x00, 0x6d, 0x5e, 0x86, + 0xf4, 0x4f, 0x3e, 0x00, 0xe8, 0x44, 0x66, 0xf4, 0x4a, 0xc0, 0x00, 0x6c, + 0xc4, 0x65, 0x57, 0x2f, 0x40, 0x00, 0xe8, 0x44, 0x67, 0x00, 0x2a, 0xb9, + 0x02, 0x80, 0x45, 0x6f, 0x00, 0x0f, 0x77, 0x02, 0x03, 0xde, 0xb7, 0x00, + 0x10, 0x4a, 0x01, 0x83, 0xe0, 0x02, 0xf5, 0xb7, 0xad, 0x02, 0x02, 0xde, + 0xb3, 0x00, 0x0f, 0x46, 0x01, 0x83, 0x60, 0x06, 0x2b, 0x91, 0x5c, 0x00, + 0x02, 0x5e, 0x02, 0xf0, 0x0f, 0x19, 0x02, 0x83, 0x5e, 0xbb, 0x00, 0x0f, + 0x49, 0x00, 0xe8, 0x45, 0x89, 0x5b, 0xb7, 0xa1, 0x00, 0x6e, 0x5e, 0x85, + 0x55, 0x6f, 0x5e, 0x02, 0x04, 0xde, 0xb7, 0x00, 0x0f, 0x5a, 0x00, 0xe0, + 0x2b, 0xaf, 0x00, 0x2a, 0xeb, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x0a, 0xed, + 0x00, 0xb0, 0x2b, 0xaf, 0x00, 0x17, 0xa2, 0x02, 0x04, 0xde, 0xff, 0x00, + 0x0f, 0x50, 0x00, 0x6d, 0x5e, 0x89, 0x5d, 0x8f, 0x50, 0x01, 0x84, 0xe0, + 0x02, 0xf7, 0xf7, 0xbf, 0x02, 0x06, 0xde, 0xff, 0x00, 0x0f, 0x5a, 0x00, + 0xe0, 0x2b, 0xdf, 0x02, 0x0a, 0xf7, 0x00, 0xb0, 0x44, 0x67, 0x00, 0x0b, + 0x02, 0x01, 0x18, 0x2b, 0xdf, 0x00, 0x17, 0xa1, 0x01, 0x1a, 0x2b, 0xdf, + 0x00, 0x17, 0xa2, 0x00, 0x6e, 0x5e, 0x87, 0x00, 0x0f, 0x58, 0x00, 0x6d, + 0xde, 0x89, 0x5f, 0x0f, 0x58, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x0f, 0x5a, + 0x01, 0xbc, 0x60, 0x03, 0x00, 0x0a, 0xf7, 0x01, 0x86, 0xe0, 0x02, 0xf7, + 0xf7, 0xbf, 0x02, 0x02, 0x5e, 0xff, 0x00, 0x10, 0x4a, 0x00, 0x68, 0xab, + 0x03, 0x00, 0x10, 0x4a, 0x00, 0xb0, 0x2a, 0xdf, 0x00, 0x0a, 0xc0, 0x00, + 0x02, 0xde, 0x02, 0xf0, 0x00, 0x00, 0x01, 0x82, 0xe0, 0x02, 0xf7, 0xf7, + 0xbf, 0x02, 0x02, 0x5e, 0xff, 0x00, 0x0f, 0x6b, 0x02, 0x06, 0x00, 0xc7, + 0x00, 0x0f, 0x64, 0x02, 0x80, 0x2b, 0xeb, 0x00, 0x0f, 0x64, 0x00, 0xb0, + 0x2b, 0x43, 0x00, 0x17, 0xbb, 0x00, 0x6e, 0x2b, 0x1a, 0xf7, 0x70, 0x4a, + 0x02, 0x02, 0x5e, 0xff, 0x00, 0x0f, 0x6b, 0x00, 0xe8, 0x45, 0x89, 0x5b, + 0xb7, 0xa1, 0x00, 0x6d, 0xde, 0x85, 0x61, 0x0f, 0x69, 0x00, 0xe8, 0x44, + 0x65, 0x61, 0x37, 0xa1, 0x00, 0x6d, 0x5e, 0x85, 0x61, 0x4f, 0x6b, 0x00, + 0xb0, 0x44, 0x67, 0x00, 0x0a, 0xc0, 0x00, 0x02, 0xde, 0x02, 0xf0, 0x00, + 0x00, 0x02, 0x04, 0xde, 0xb7, 0x00, 0x0f, 0x71, 0x00, 0xe8, 0x44, 0x65, + 0x56, 0x8a, 0xbc, 0x00, 0xe0, 0x2b, 0xb7, 0x00, 0x2a, 0xed, 0x00, 0xb0, + 0x2b, 0xbb, 0x00, 0x17, 0xa1, 0x00, 0x6d, 0x2b, 0xb6, 0xf4, 0x2f, 0x71, + 0x01, 0xbc, 0x60, 0x03, 0x00, 0x0a, 0xeb, 0x00, 0x68, 0xab, 0x0f, 0x00, + 0xaf, 0x74, 0x00, 0xb0, 0x44, 0x67, 0x00, 0x0a, 0xf5, 0x00, 0xb0, 0x44, + 0x6b, 0x00, 0x0a, 0xf9, 0x00, 0x68, 0xab, 0x0f, 0x01, 0x2f, 0x76, 0x00, + 0xb0, 0x44, 0x67, 0x00, 0x0b, 0x11, 0x00, 0x02, 0xde, 0x02, 0xf0, 0x00, + 0x00, 0x02, 0x03, 0xde, 0xb7, 0x00, 0x0f, 0x7e, 0x02, 0x82, 0xde, 0xb3, + 0x00, 0x10, 0x4a, 0x02, 0x03, 0xc5, 0x73, 0x00, 0x10, 0x3c, 0x00, 0xe8, + 0x44, 0x65, 0x56, 0xf7, 0xa1, 0x00, 0x6d, 0x5e, 0x85, 0x56, 0x70, 0x4a, + 0x01, 0x83, 0x60, 0x06, 0xf5, 0xd7, 0xae, 0x03, 0xbf, 0xde, 0x02, 0xf0, + 0x10, 0x4a, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x0a, 0xdd, 0x00, 0x6d, 0x45, + 0x87, 0x1f, 0x4f, 0x81, 0x00, 0xb0, 0x45, 0x87, 0x00, 0x0a, 0xdd, 0x00, + 0xe0, 0x44, 0x65, 0x5b, 0xb7, 0xbb, 0x00, 0xe8, 0x5e, 0xee, 0x2c, 0x2a, + 0xb7, 0x01, 0x83, 0x60, 0x02, 0xf5, 0xd7, 0xae, 0x01, 0x83, 0xe0, 0x06, + 0xf5, 0xb7, 0xad, 0x01, 0x84, 0xe0, 0x02, 0xf5, 0xb7, 0xad, 0x01, 0x82, + 0x60, 0x02, 0xf7, 0xf7, 0xbf, 0x01, 0x84, 0x60, 0x02, 0xf5, 0xb7, 0xad, + 0x01, 0x01, 0x45, 0x6f, 0x00, 0x17, 0xa1, 0x01, 0x87, 0x5e, 0x86, 0xf5, + 0x77, 0xab, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x0b, 0x0b, 0x00, 0xe8, 0x44, + 0x65, 0x56, 0xf7, 0xa1, 0x00, 0x6d, 0x5e, 0x85, 0x5e, 0x8f, 0x8b, 0x00, + 0x6d, 0x5e, 0x85, 0x56, 0x6f, 0x8f, 0x00, 0xe0, 0x2b, 0x7b, 0x00, 0x2a, + 0xde, 0x00, 0xb0, 0x2a, 0xab, 0x00, 0x17, 0xb3, 0x01, 0xbc, 0x60, 0x03, + 0x00, 0x11, 0x78, 0x00, 0xb0, 0x45, 0xe3, 0x00, 0x18, 0x00, 0x00, 0xb0, + 0x45, 0xe7, 0x00, 0x0a, 0xca, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x31, 0x78, + 0x00, 0xb0, 0x45, 0xe3, 0x00, 0x18, 0x00, 0x00, 0xb0, 0x45, 0xe7, 0x00, + 0x0a, 0xcb, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x51, 0x78, 0x00, 0xb0, 0x45, + 0xe3, 0x00, 0x18, 0x00, 0x00, 0xb0, 0x45, 0xe7, 0x00, 0x0a, 0xcc, 0x01, + 0x84, 0x60, 0x00, 0x06, 0x00, 0x30, 0x02, 0x07, 0xab, 0x33, 0x00, 0x0f, + 0x9c, 0x01, 0x84, 0x60, 0x04, 0x06, 0x00, 0x30, 0x00, 0xb0, 0x2b, 0x2b, + 0x00, 0x17, 0xbb, 0x01, 0x2a, 0x5e, 0xef, 0x00, 0x0a, 0xc3, 0x01, 0xbc, + 0x60, 0x13, 0x1c, 0x57, 0xbb, 0x02, 0x1e, 0x2b, 0x2b, 0x00, 0x0f, 0xa3, + 0x01, 0x1e, 0x2b, 0x2b, 0x00, 0x17, 0xa6, 0x00, 0x80, 0xde, 0x9a, 0xf7, + 0x77, 0xbb, 0x00, 0xb0, 0x41, 0xb7, 0x00, 0x17, 0xb3, 0x00, 0x6e, 0x2b, + 0x0f, 0x01, 0xef, 0xa7, 0x00, 0x88, 0x60, 0x05, 0x58, 0x77, 0xbb, 0x00, + 0x20, 0xde, 0xed, 0x5d, 0x0f, 0xaa, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x0f, + 0xad, 0x00, 0xe8, 0x2b, 0x0f, 0x02, 0x17, 0xbb, 0x00, 0x88, 0x60, 0x06, + 0xf7, 0x77, 0xbb, 0x00, 0x20, 0x5e, 0xed, 0x5d, 0x2f, 0xad, 0x01, 0x84, + 0x60, 0x06, 0xf5, 0xb7, 0xad, 0x02, 0x04, 0x80, 0xc3, 0x00, 0x0f, 0xad, + 0x01, 0x84, 0xe0, 0x05, 0x61, 0x6b, 0x0b, 0x00, 0x6e, 0x2b, 0x0f, 0x01, + 0xef, 0xb1, 0x00, 0x88, 0x60, 0x05, 0x58, 0x77, 0xbb, 0x00, 0x20, 0xde, + 0xed, 0x5b, 0x4f, 0xb4, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x0f, 0xb5, 0x00, + 0xe8, 0x2b, 0x0f, 0x02, 0x17, 0xbb, 0x00, 0x88, 0x60, 0x06, 0xf7, 0x77, + 0xbb, 0x00, 0x20, 0x5e, 0xed, 0x5b, 0x6f, 0xb5, 0x01, 0x84, 0x60, 0x05, + 0x61, 0x6b, 0x0b, 0x00, 0x68, 0xab, 0x0f, 0x00, 0xaf, 0xbf, 0x02, 0x07, + 0x5e, 0xff, 0x00, 0x0f, 0xbf, 0x01, 0x2c, 0x2b, 0x33, 0x00, 0x17, 0xa3, + 0x00, 0x6d, 0xde, 0x8d, 0x60, 0xef, 0xbf, 0x00, 0x68, 0x5e, 0x8f, 0x00, + 0x0f, 0xbf, 0x02, 0x80, 0xab, 0x2f, 0x00, 0x0f, 0xbd, 0x01, 0x83, 0x60, + 0x05, 0x61, 0x6b, 0x0b, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x0f, 0xbf, 0x00, + 0xb0, 0x2b, 0xf3, 0x00, 0x0a, 0xf6, 0x00, 0xb0, 0x44, 0x6b, 0x00, 0x0a, + 0xfd, 0x02, 0x81, 0xab, 0xeb, 0x00, 0x0f, 0xcc, 0x00, 0x68, 0xab, 0x0f, + 0x01, 0x2f, 0xcc, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x0a, 0xe0, 0x00, 0x68, + 0x2c, 0x47, 0x00, 0x0f, 0xcc, 0x00, 0xe8, 0x44, 0x65, 0x62, 0x37, 0xa1, + 0x00, 0x6d, 0x5e, 0x85, 0x62, 0x4f, 0xc9, 0x00, 0xb0, 0x2c, 0x4b, 0x00, + 0x17, 0xa2, 0x00, 0xe0, 0x5e, 0x89, 0x62, 0x77, 0xa2, 0x00, 0x6d, 0xde, + 0x86, 0xf4, 0x4f, 0xcb, 0x02, 0x00, 0xac, 0x3b, 0x00, 0x0f, 0xcc, 0x01, + 0x85, 0x60, 0x05, 0x61, 0x6b, 0x0b, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x0f, + 0xcc, 0x01, 0x80, 0xe0, 0x01, 0x61, 0xcb, 0x0e, 0x00, 0x68, 0xab, 0x0f, + 0x01, 0x0f, 0xcf, 0x00, 0xb0, 0x2a, 0xdf, 0x00, 0x0a, 0xd7, 0x01, 0x87, + 0xe0, 0x06, 0xf7, 0xf7, 0xbf, 0x02, 0x07, 0xde, 0xff, 0x00, 0x0f, 0xd1, + 0x01, 0x81, 0xe0, 0x05, 0x61, 0x6b, 0x0b, 0x00, 0x68, 0x2b, 0x0f, 0x00, + 0x2f, 0xd5, 0x00, 0x68, 0x2b, 0x0f, 0x01, 0xef, 0xd5, 0x00, 0x68, 0x2b, + 0x0f, 0x03, 0x0f, 0xd5, 0x00, 0x68, 0xab, 0x0f, 0x00, 0x8f, 0xda, 0x01, + 0x82, 0x60, 0x06, 0xf7, 0xf7, 0xbf, 0x00, 0xb0, 0x2a, 0xdf, 0x00, 0x0a, + 0xbf, 0x00, 0x68, 0xab, 0x0f, 0x00, 0x8f, 0xda, 0x01, 0x1a, 0x2b, 0x2f, + 0x00, 0x0a, 0xc6, 0x00, 0xb0, 0x2a, 0xdf, 0x00, 0x0a, 0xce, 0x02, 0x02, + 0xde, 0xbb, 0x00, 0x0f, 0xe0, 0x02, 0x84, 0xde, 0xff, 0x00, 0x0f, 0xdd, + 0x02, 0x06, 0xde, 0xff, 0x00, 0x0f, 0xe0, 0x00, 0xb0, 0x2b, 0xaf, 0x00, + 0x17, 0xa1, 0x00, 0x6d, 0xde, 0x85, 0x5d, 0x8f, 0xe0, 0x01, 0x82, 0xe0, + 0x05, 0x61, 0x6b, 0x0b, 0x00, 0xe0, 0x5e, 0xcd, 0x55, 0x77, 0xb3, 0x01, + 0x82, 0x60, 0x02, 0xf5, 0xd7, 0xae, 0x00, 0xb0, 0x2c, 0x43, 0x00, 0x17, + 0xa1, 0x00, 0xb0, 0x2a, 0xef, 0x00, 0x17, 0xa2, 0x00, 0x6d, 0x5e, 0x89, + 0x55, 0xcf, 0xe7, 0x02, 0x85, 0x5e, 0xb7, 0x00, 0x0f, 0xf0, 0x03, 0xbf, + 0xde, 0x02, 0xf0, 0x0f, 0xe9, 0x00, 0x6d, 0x5e, 0x85, 0x60, 0xaf, 0xf2, + 0x02, 0x81, 0x2c, 0x3b, 0x00, 0x0f, 0xf0, 0x00, 0xb0, 0x44, 0x0b, 0x00, + 0x17, 0xa3, 0x00, 0xb0, 0x44, 0x0f, 0x00, 0x17, 0xa2, 0x00, 0xe9, 0x5e, + 0x8e, 0x23, 0x37, 0xa3, 0x00, 0xe8, 0xde, 0x8a, 0x23, 0x57, 0xa2, 0x00, + 0x69, 0x5e, 0x8b, 0x00, 0x0f, 0xf2, 0x00, 0x68, 0xde, 0x8b, 0x00, 0x0f, + 0xf2, 0x00, 0x6e, 0x5e, 0x8e, 0xf6, 0x6f, 0xf2, 0x01, 0x82, 0x60, 0x06, + 0xf5, 0xd7, 0xae, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x11, 0x51, 0x01, 0xbc, + 0x60, 0x13, 0x1c, 0x57, 0xbb, 0x01, 0x2c, 0x2b, 0x33, 0x00, 0x17, 0xa2, + 0x00, 0x80, 0xde, 0x8a, 0xf7, 0x77, 0xbb, 0x00, 0xb0, 0x41, 0xb7, 0x00, + 0x17, 0xa2, 0x00, 0x68, 0x2b, 0x0f, 0x00, 0x4f, 0xfb, 0x00, 0x68, 0x2b, + 0x0f, 0x02, 0x4f, 0xfb, 0x00, 0x68, 0x2b, 0x0f, 0x02, 0x6f, 0xfb, 0x00, + 0x68, 0x2b, 0x0f, 0x00, 0x6f, 0xfb, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x10, + 0x09, 0x01, 0x84, 0xe0, 0x06, 0xf5, 0xb7, 0xad, 0x00, 0x68, 0x5e, 0x8b, + 0x00, 0x10, 0x02, 0x00, 0xb0, 0x5e, 0x8b, 0x00, 0x0a, 0xac, 0x01, 0x82, + 0xe0, 0x06, 0xf5, 0xd7, 0xae, 0x00, 0xe0, 0x2b, 0xc3, 0x00, 0x2a, 0xf0, + 0x00, 0x6e, 0x5e, 0x89, 0x60, 0xd0, 0x02, 0x01, 0x82, 0x60, 0x05, 0x61, + 0x6b, 0x0b, 0x00, 0xe8, 0x44, 0x65, 0x56, 0xf7, 0xa1, 0x00, 0xb0, 0x44, + 0x6b, 0x00, 0x17, 0xa2, 0x00, 0xb0, 0x44, 0x67, 0x00, 0x17, 0xa3, 0x00, + 0x68, 0xde, 0x8a, 0x23, 0x50, 0x02, 0x00, 0xe9, 0x5e, 0x8e, 0xf4, 0x2a, + 0xb4, 0x00, 0xe8, 0xde, 0x8b, 0x00, 0x0a, 0xb5, 0x01, 0x84, 0x60, 0x02, + 0xf7, 0xf7, 0xbf, 0x02, 0x82, 0xde, 0xb3, 0x00, 0x10, 0x4a, 0x02, 0x03, + 0xc5, 0x73, 0x00, 0x10, 0x3c, 0x00, 0xb0, 0x2a, 0xc3, 0x00, 0x17, 0xa2, + 0x00, 0xb0, 0x2a, 0xcb, 0x00, 0x17, 0xa3, 0x00, 0x68, 0xab, 0x0f, 0x00, + 0x90, 0x16, 0x02, 0x80, 0x2b, 0xeb, 0x00, 0x10, 0x16, 0x00, 0xb0, 0x2b, + 0x1b, 0x00, 0x17, 0xa1, 0x00, 0x6d, 0x5e, 0x85, 0x59, 0x30, 0x12, 0x01, + 0x80, 0xe0, 0x05, 0x61, 0x6b, 0x0b, 0x00, 0x68, 0x5e, 0x87, 0x00, 0x10, + 0x16, 0x00, 0x68, 0x2b, 0xff, 0x00, 0x10, 0x16, 0x00, 0xb0, 0x2b, 0xff, + 0x00, 0x17, 0xa2, 0x00, 0xb0, 0x2c, 0x03, 0x00, 0x17, 0xa3, 0x00, 0x68, + 0x5e, 0x8f, 0x00, 0x10, 0x1c, 0x00, 0x68, 0x2b, 0x03, 0x00, 0x10, 0x1c, + 0x00, 0xe8, 0x44, 0x65, 0x58, 0x17, 0xa1, 0x00, 0xe0, 0x5e, 0x8e, 0xf4, + 0x57, 0xa2, 0x00, 0x6d, 0x5e, 0x86, 0xf4, 0x50, 0x1c, 0x01, 0x81, 0x60, + 0x05, 0x61, 0x6b, 0x0b, 0x02, 0x81, 0xab, 0x47, 0x00, 0x10, 0x21, 0x02, + 0x00, 0x5e, 0xff, 0x00, 0x10, 0x21, 0x02, 0x04, 0x45, 0x23, 0x00, 0x10, + 0x21, 0x03, 0xa0, 0xde, 0x02, 0xf0, 0x10, 0x21, 0x01, 0x83, 0xe0, 0x05, + 0x61, 0x6b, 0x0b, 0x02, 0x80, 0x80, 0xbf, 0x00, 0x10, 0x4a, 0x02, 0x82, + 0x5e, 0xbb, 0x00, 0x10, 0x4a, 0x02, 0x82, 0x2b, 0xeb, 0x00, 0x10, 0x36, + 0x02, 0x81, 0xac, 0x2f, 0x00, 0x10, 0x36, 0x02, 0x80, 0xac, 0x2f, 0x00, + 0x10, 0x36, 0x02, 0x81, 0x2c, 0x2f, 0x00, 0x10, 0x36, 0x02, 0x82, 0x2c, + 0x2f, 0x00, 0x10, 0x36, 0x02, 0x88, 0x81, 0xab, 0x00, 0x10, 0x36, 0x02, + 0x82, 0xac, 0x2f, 0x00, 0x10, 0x2f, 0x02, 0x80, 0x2b, 0x2f, 0x00, 0x10, + 0x36, 0x02, 0x83, 0x2c, 0x2f, 0x00, 0x10, 0x2f, 0x02, 0x85, 0x2c, 0x2f, + 0x00, 0x10, 0x2f, 0x02, 0x84, 0x2c, 0x2f, 0x00, 0x10, 0x36, 0x02, 0x84, + 0xac, 0x2f, 0x00, 0x10, 0x36, 0x02, 0x83, 0xac, 0x2f, 0x00, 0x10, 0x36, + 0x02, 0x83, 0x5e, 0xb7, 0x00, 0x10, 0x35, 0x02, 0x04, 0xde, 0xaf, 0x00, + 0x10, 0x35, 0x02, 0x81, 0xde, 0xbb, 0x00, 0x10, 0x35, 0x01, 0x84, 0xe0, + 0x02, 0xf5, 0x77, 0xab, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x11, 0x3a, 0x03, + 0xbf, 0xde, 0x02, 0xf0, 0x10, 0x4a, 0x01, 0x83, 0xe0, 0x02, 0x2b, 0x91, + 0x5c, 0x02, 0x07, 0x01, 0xab, 0x00, 0x10, 0x39, 0x01, 0x80, 0xe0, 0x02, + 0x09, 0xd0, 0x4e, 0x01, 0xbc, 0x60, 0x03, 0x18, 0x51, 0x78, 0x00, 0xb0, + 0x45, 0xe3, 0x00, 0x18, 0x00, 0x01, 0x80, 0x60, 0x02, 0x2f, 0x31, 0x79, + 0x00, 0xe8, 0x44, 0x65, 0x56, 0xf7, 0xa1, 0x00, 0x6d, 0x5e, 0x85, 0x55, + 0x70, 0x4a, 0x02, 0x81, 0x01, 0xab, 0x00, 0x10, 0x42, 0x02, 0x00, 0x81, + 0xab, 0x00, 0x10, 0x44, 0x02, 0x84, 0x2c, 0x2f, 0x00, 0x10, 0x44, 0x02, + 0x80, 0xac, 0x2f, 0x00, 0x10, 0x44, 0x01, 0x83, 0x60, 0x02, 0x2b, 0x91, + 0x5c, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x10, 0x4a, 0x01, 0x83, 0x60, 0x02, + 0x2b, 0x91, 0x5c, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0f, 0x24, 0x02, 0x83, + 0x5e, 0xb7, 0x00, 0x10, 0x4a, 0x01, 0x84, 0xe0, 0x06, 0xf5, 0x77, 0xab, + 0x00, 0xe0, 0x2b, 0x3f, 0x00, 0x2a, 0xcf, 0x03, 0xbf, 0xde, 0x02, 0xf0, + 0x11, 0x22, 0x00, 0x02, 0xde, 0x02, 0xf0, 0x00, 0x00, 0x01, 0x84, 0xe0, + 0x02, 0xf5, 0xb7, 0xad, 0x01, 0x83, 0x60, 0x02, 0xf5, 0xd7, 0xae, 0x01, + 0x82, 0xe0, 0x02, 0xf5, 0xd7, 0xae, 0x01, 0x82, 0xe0, 0x02, 0xf7, 0xf7, + 0xbf, 0x01, 0x84, 0xe0, 0x02, 0xf7, 0xf7, 0xbf, 0x01, 0xbc, 0x60, 0x03, + 0x00, 0x0a, 0xd9, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x0a, 0xce, 0x01, 0xbc, + 0x60, 0x03, 0x00, 0x0a, 0xc6, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x0a, 0xf0, + 0x01, 0x87, 0x60, 0x01, 0x60, 0x2b, 0x01, 0x00, 0x02, 0xde, 0x02, 0xf0, + 0x00, 0x00, 0x02, 0x02, 0x00, 0xbf, 0x00, 0x10, 0x82, 0x02, 0x83, 0xde, + 0xff, 0x00, 0x10, 0x91, 0x01, 0x83, 0xe0, 0x06, 0xf7, 0xf7, 0xbf, 0x01, + 0xbc, 0x60, 0x03, 0x02, 0x11, 0x5d, 0x00, 0xb0, 0x2a, 0xaf, 0x00, 0x11, + 0x5e, 0x01, 0x85, 0x60, 0x06, 0x0b, 0x70, 0x5b, 0x01, 0x85, 0x60, 0x06, + 0x0b, 0xf0, 0x5f, 0x02, 0x80, 0x45, 0x6b, 0x00, 0x10, 0x63, 0x01, 0x8b, + 0x60, 0x02, 0x2b, 0x91, 0x5c, 0x01, 0xbc, 0x60, 0x03, 0x18, 0x51, 0x78, + 0x00, 0xb0, 0x45, 0xe3, 0x00, 0x18, 0x00, 0x01, 0x80, 0x60, 0x02, 0x2f, + 0x31, 0x79, 0x01, 0x88, 0x60, 0x0e, 0x2b, 0x51, 0x5a, 0x01, 0xbc, 0x60, + 0x03, 0x00, 0x37, 0xa3, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x11, 0x6c, 0x00, + 0x68, 0x2a, 0xd3, 0x00, 0x10, 0x68, 0x01, 0x84, 0x60, 0x06, 0xf7, 0xf7, + 0xbf, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x0a, 0xb4, 0x00, 0x02, 0x5e, 0x02, + 0xf0, 0x10, 0x4b, 0x00, 0xe8, 0x44, 0x69, 0x60, 0x97, 0xa1, 0x00, 0x6e, + 0xde, 0x87, 0x00, 0x30, 0x70, 0x00, 0xb0, 0x2b, 0xef, 0x00, 0x0a, 0xf6, + 0x01, 0xbc, 0x60, 0x03, 0x00, 0x0a, 0xf5, 0x00, 0x68, 0x2b, 0x03, 0x00, + 0x10, 0x70, 0x00, 0xb0, 0x44, 0x67, 0x00, 0x0a, 0xbf, 0x00, 0xe8, 0x44, + 0x65, 0x56, 0x0a, 0xc0, 0x02, 0x80, 0x80, 0xbf, 0x00, 0x10, 0x76, 0x02, + 0x81, 0xde, 0xbb, 0x00, 0x10, 0x7d, 0x02, 0x00, 0x45, 0x6f, 0x00, 0x10, + 0x76, 0x02, 0x83, 0xc5, 0x73, 0x00, 0x10, 0x76, 0x01, 0xbc, 0x63, 0xff, + 0x1f, 0xf7, 0xa1, 0x00, 0x68, 0xc5, 0x86, 0xf4, 0x30, 0x7d, 0x01, 0x8b, + 0x60, 0x0e, 0x2b, 0x91, 0x5c, 0x01, 0xbc, 0x60, 0x03, 0x18, 0x51, 0x78, + 0x00, 0xb0, 0x45, 0xe3, 0x00, 0x18, 0x00, 0x01, 0x8b, 0x2b, 0x46, 0x2f, + 0x31, 0x79, 0x01, 0x83, 0xe0, 0x02, 0xf5, 0xb7, 0xad, 0x01, 0x84, 0xe0, + 0x02, 0xf5, 0x77, 0xab, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x11, 0x2d, 0x01, + 0x83, 0x60, 0x02, 0x2b, 0x91, 0x5c, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0f, + 0x24, 0x01, 0x83, 0xe0, 0x06, 0xf5, 0xb7, 0xad, 0x01, 0x84, 0xe0, 0x06, + 0xf5, 0x77, 0xab, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x11, 0x2d, 0x01, 0x8d, + 0x60, 0x02, 0x0b, 0xf0, 0x5f, 0x01, 0x88, 0x60, 0x0e, 0x2b, 0x51, 0x5a, + 0x02, 0x81, 0x81, 0xab, 0x00, 0x10, 0x8a, 0x01, 0x8b, 0x60, 0x06, 0x2b, + 0x91, 0x5c, 0x01, 0xbc, 0x60, 0x03, 0x18, 0x51, 0x78, 0x00, 0xb0, 0x45, + 0xe3, 0x00, 0x18, 0x00, 0x01, 0x80, 0x60, 0x02, 0x2f, 0x31, 0x79, 0x03, + 0xbf, 0xde, 0x02, 0xf0, 0x10, 0x8e, 0x01, 0x8b, 0x60, 0x02, 0x2b, 0x91, + 0x5c, 0x01, 0xbc, 0x60, 0x03, 0x18, 0x51, 0x78, 0x00, 0xb0, 0x45, 0xe3, + 0x00, 0x18, 0x00, 0x01, 0x80, 0x60, 0x02, 0x2f, 0x31, 0x79, 0x01, 0x83, + 0xe0, 0x02, 0xf5, 0xb7, 0xad, 0x01, 0x84, 0xe0, 0x02, 0xf5, 0x77, 0xab, + 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x10, 0x4b, 0x00, 0x02, 0xde, 0x02, 0xf0, + 0x00, 0x00, 0x00, 0xb0, 0x44, 0x6b, 0x00, 0x0b, 0x04, 0x02, 0x02, 0xde, + 0xb3, 0x00, 0x10, 0x96, 0x01, 0x83, 0x60, 0x06, 0x2b, 0x91, 0x5c, 0x00, + 0x02, 0x5e, 0x02, 0xf0, 0x0f, 0x19, 0x02, 0x02, 0x00, 0xbf, 0x00, 0x10, + 0xa6, 0x01, 0x83, 0xe0, 0x02, 0xf7, 0xf7, 0xbf, 0x02, 0x03, 0xc5, 0x73, + 0x00, 0x10, 0x9f, 0x02, 0x00, 0x80, 0xbf, 0x00, 0x10, 0x9f, 0x01, 0x8b, + 0x60, 0x0e, 0x2b, 0x91, 0x5c, 0x01, 0xbc, 0x60, 0x03, 0x18, 0x51, 0x78, + 0x00, 0xb0, 0x45, 0xe3, 0x00, 0x18, 0x00, 0x01, 0x8b, 0x2b, 0x46, 0x2f, + 0x31, 0x79, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x10, 0xa3, 0x01, 0x8b, 0x60, + 0x02, 0x2b, 0x91, 0x5c, 0x01, 0xbc, 0x60, 0x03, 0x18, 0x51, 0x78, 0x00, + 0xb0, 0x45, 0xe3, 0x00, 0x18, 0x00, 0x01, 0x80, 0x60, 0x02, 0x2f, 0x31, + 0x79, 0x01, 0x82, 0xe0, 0x02, 0xf5, 0x97, 0xac, 0x01, 0xbc, 0x60, 0x03, + 0x00, 0x17, 0xa3, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x11, 0x6c, 0x00, 0x02, + 0xde, 0x02, 0xf0, 0x00, 0x00, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x70, 0x10, + 0x01, 0xbc, 0x63, 0xff, 0x1f, 0xf0, 0xc5, 0x01, 0xbc, 0x63, 0xff, 0x1f, + 0xf0, 0xcb, 0x00, 0xb0, 0x40, 0x47, 0x00, 0x10, 0xe5, 0x00, 0xb0, 0x40, + 0x47, 0x00, 0x10, 0xeb, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x90, 0x10, 0x01, + 0xbc, 0x63, 0xff, 0x1f, 0xf0, 0xc6, 0x01, 0xbc, 0x63, 0xff, 0x1f, 0xf0, + 0xcc, 0x00, 0xb0, 0x40, 0x47, 0x00, 0x10, 0xe6, 0x00, 0xb0, 0x40, 0x47, + 0x00, 0x10, 0xec, 0x01, 0xbc, 0x60, 0x03, 0x00, 0xb0, 0x10, 0x01, 0xbc, + 0x63, 0xff, 0x1f, 0xf0, 0xc7, 0x01, 0xbc, 0x63, 0xff, 0x1f, 0xf0, 0xcd, + 0x00, 0xb0, 0x40, 0x47, 0x00, 0x10, 0xe7, 0x00, 0xb0, 0x40, 0x47, 0x00, + 0x10, 0xed, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x10, 0x10, 0x00, 0xb0, 0x40, + 0x43, 0x00, 0x18, 0x00, 0x01, 0xbc, 0x63, 0xff, 0x1f, 0xf0, 0xc8, 0x00, + 0xb0, 0x40, 0x47, 0x00, 0x10, 0xe8, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x30, + 0x10, 0x00, 0xb0, 0x40, 0x43, 0x00, 0x18, 0x00, 0x01, 0xbc, 0x63, 0xff, + 0x1f, 0xf0, 0xc9, 0x00, 0xb0, 0x40, 0x47, 0x00, 0x10, 0xe9, 0x01, 0xbc, + 0x60, 0x03, 0x00, 0x50, 0x10, 0x00, 0xb0, 0x40, 0x43, 0x00, 0x18, 0x00, + 0x01, 0xbc, 0x63, 0xff, 0x1f, 0xf0, 0xca, 0x00, 0xb0, 0x40, 0x47, 0x00, + 0x10, 0xea, 0x00, 0x02, 0xde, 0x02, 0xf0, 0x00, 0x00, 0x01, 0xbc, 0x60, + 0x03, 0x00, 0x37, 0xa2, 0x00, 0x20, 0xe3, 0xfe, 0x09, 0x11, 0x01, 0x00, + 0x20, 0xe0, 0x42, 0x0d, 0x91, 0x01, 0x02, 0x80, 0x42, 0x03, 0x00, 0x11, + 0x01, 0x02, 0x84, 0x45, 0x23, 0x00, 0x11, 0x01, 0x03, 0x91, 0x5e, 0x02, + 0xf0, 0x11, 0x01, 0x00, 0x68, 0xab, 0x67, 0x00, 0x11, 0x01, 0x02, 0x82, + 0xde, 0xff, 0x00, 0x11, 0x01, 0x02, 0x80, 0x5e, 0xff, 0x00, 0x11, 0x36, + 0x02, 0x01, 0x80, 0xc7, 0x00, 0x11, 0x2d, 0x02, 0x82, 0xde, 0xb3, 0x00, + 0x11, 0x01, 0x02, 0x04, 0x80, 0xc7, 0x00, 0x10, 0xee, 0x00, 0x68, 0x5e, + 0x8b, 0x00, 0x10, 0xda, 0x00, 0xb0, 0x2b, 0x9b, 0x00, 0x17, 0xa1, 0x00, + 0x6e, 0xab, 0x82, 0xf4, 0x30, 0xda, 0x02, 0x03, 0xc5, 0x73, 0x00, 0x10, + 0xee, 0x00, 0x68, 0x2a, 0xb3, 0x00, 0x10, 0xd9, 0x00, 0x68, 0x2a, 0xd3, + 0x00, 0x10, 0xda, 0x00, 0xe8, 0x44, 0x65, 0x56, 0x97, 0xa1, 0x00, 0xe8, + 0x2a, 0xb2, 0xf4, 0x37, 0xa1, 0x00, 0x6a, 0xde, 0x85, 0x55, 0xb0, 0xee, + 0x00, 0x6a, 0xde, 0x85, 0x5b, 0x10, 0xee, 0x00, 0x68, 0x2a, 0xff, 0x00, + 0x10, 0xee, 0x02, 0x03, 0xde, 0x53, 0x00, 0x10, 0xdd, 0x00, 0xb0, 0x2b, + 0x9f, 0x00, 0x0a, 0xad, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x11, 0x2d, 0x01, + 0xbc, 0x60, 0x03, 0x02, 0x57, 0x92, 0x01, 0xbc, 0x63, 0xff, 0x1f, 0xf0, + 0xc3, 0x01, 0xbc, 0x60, 0x03, 0x09, 0x10, 0xe3, 0x01, 0x86, 0x5e, 0x8a, + 0x1c, 0x70, 0xe3, 0x01, 0x84, 0x60, 0x06, 0x1c, 0x70, 0xe3, 0x00, 0x68, + 0x2b, 0x07, 0x00, 0x10, 0xe4, 0x01, 0x85, 0xe0, 0x06, 0x1c, 0x70, 0xe3, + 0x01, 0xbc, 0x60, 0x03, 0x03, 0x97, 0x82, 0x00, 0x02, 0x5e, 0x02, 0xf0, + 0x11, 0x0b, 0x01, 0xbc, 0x63, 0xff, 0x1f, 0xf0, 0xc4, 0x00, 0xb0, 0x54, + 0x13, 0x00, 0x10, 0xe4, 0x00, 0xe0, 0x43, 0x91, 0x5b, 0xf0, 0xe4, 0x00, + 0x02, 0x5e, 0x02, 0xf0, 0x10, 0xa7, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x10, + 0xee, 0x01, 0xbc, 0x63, 0xff, 0x1f, 0xf0, 0xce, 0x00, 0xe0, 0x2b, 0x07, + 0x00, 0x2a, 0xc1, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x10, 0xfb, 0x02, 0x83, + 0x5e, 0xb7, 0x00, 0x11, 0x01, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x01, 0x00, + 0x00, 0xb0, 0x5e, 0xcf, 0x00, 0x10, 0xe4, 0x00, 0x68, 0x2a, 0xb3, 0x00, + 0x10, 0xf8, 0x00, 0xb0, 0x2a, 0xf3, 0x00, 0x10, 0xe4, 0x02, 0x80, 0x45, + 0x6f, 0x00, 0x10, 0xf8, 0x00, 0xe8, 0x44, 0x65, 0x56, 0x97, 0xa1, 0x00, + 0xe8, 0x2a, 0xb2, 0xf4, 0x37, 0xa1, 0x00, 0x69, 0x5e, 0x87, 0x00, 0x10, + 0xf8, 0x00, 0xe0, 0x5e, 0x85, 0x57, 0x90, 0xe4, 0x01, 0xbc, 0x60, 0x03, + 0x01, 0xd7, 0x82, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x11, 0x0b, 0x03, 0xbf, + 0xde, 0x02, 0xf0, 0x10, 0xfb, 0x00, 0xb0, 0x00, 0x47, 0x00, 0x10, 0x86, + 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x11, 0xad, 0x00, 0x02, 0x5e, 0x02, 0xf0, + 0x0d, 0x32, 0x01, 0x90, 0x60, 0x0a, 0x09, 0x10, 0x48, 0x01, 0x84, 0x60, + 0x06, 0xf5, 0x97, 0xac, 0x01, 0xbc, 0x61, 0x33, 0x00, 0x70, 0x80, 0x00, + 0x02, 0xde, 0x02, 0xf0, 0x00, 0x00, 0x02, 0x80, 0x5e, 0xff, 0x00, 0x11, + 0x06, 0x02, 0x81, 0xde, 0xbb, 0x00, 0x11, 0x06, 0x02, 0x01, 0x80, 0xc7, + 0x00, 0x11, 0x2d, 0x02, 0x04, 0x80, 0xc7, 0x00, 0x11, 0x2d, 0x01, 0x80, + 0x60, 0x02, 0xf7, 0xf7, 0xbf, 0x02, 0x80, 0xc2, 0x8f, 0x00, 0x11, 0x2e, + 0x02, 0x01, 0xde, 0xbb, 0x00, 0x11, 0x2e, 0x01, 0xbc, 0x60, 0x03, 0x00, + 0x17, 0xa2, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x10, 0xc4, 0x01, 0xbc, 0x63, + 0xff, 0x1f, 0xf0, 0xc0, 0x01, 0xbc, 0x63, 0xff, 0x1f, 0xf0, 0xc1, 0x02, + 0x85, 0xde, 0xff, 0x00, 0x11, 0x1b, 0x00, 0x68, 0x5e, 0x4b, 0x06, 0x31, + 0x14, 0x00, 0xb0, 0x2b, 0x4f, 0x00, 0x17, 0xa1, 0x00, 0x6d, 0xab, 0x06, + 0xf4, 0x31, 0x1b, 0x01, 0xbc, 0x60, 0x03, 0x01, 0x37, 0x80, 0x00, 0xb0, + 0x2b, 0x53, 0x00, 0x17, 0xa1, 0x00, 0x6d, 0x2b, 0x06, 0xf4, 0x31, 0x16, + 0x02, 0x81, 0x2b, 0xeb, 0x00, 0x11, 0x16, 0x01, 0xbc, 0x60, 0x03, 0x01, + 0x77, 0x80, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x37, 0x81, 0x00, 0x02, 0x5e, + 0x02, 0xf0, 0x00, 0xdb, 0x01, 0xd2, 0xde, 0x0a, 0xa0, 0x30, 0xe0, 0x00, + 0xb0, 0x54, 0x0b, 0x00, 0x10, 0xe1, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x11, + 0x21, 0x02, 0x80, 0xab, 0xeb, 0x00, 0x11, 0x14, 0x01, 0xbc, 0x60, 0x03, + 0x01, 0x57, 0x80, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x17, 0x81, 0x00, 0x02, + 0x5e, 0x02, 0xf0, 0x00, 0xdb, 0x00, 0xb0, 0x54, 0x07, 0x00, 0x10, 0xe0, + 0x00, 0x88, 0x5e, 0x0b, 0x00, 0x70, 0xe1, 0x00, 0x02, 0xde, 0x02, 0xf0, + 0x00, 0x00, 0x00, 0x68, 0x2b, 0x0b, 0x00, 0x11, 0x2d, 0x02, 0x04, 0xde, + 0xaf, 0x00, 0x11, 0x2d, 0x00, 0xe8, 0x44, 0x65, 0x58, 0x57, 0xa4, 0x00, + 0x6e, 0x5e, 0x91, 0x55, 0xb1, 0x2d, 0x00, 0x88, 0x5e, 0x93, 0x00, 0x37, + 0xa4, 0x00, 0x6d, 0x5e, 0x91, 0x55, 0xb1, 0x2d, 0x00, 0x02, 0x5e, 0x02, + 0xf0, 0x11, 0x61, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x11, 0x3a, 0x00, 0xe8, + 0x44, 0x65, 0x58, 0x57, 0xa4, 0x00, 0x88, 0x5e, 0x93, 0x00, 0x37, 0xa4, + 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x11, 0x61, 0x03, 0xbf, 0xde, 0x02, 0xf0, + 0x11, 0x3a, 0x02, 0x84, 0xde, 0xaf, 0x00, 0x11, 0x31, 0x01, 0x81, 0xe0, + 0x02, 0xf5, 0xd7, 0xae, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x11, 0x3a, 0x00, + 0x68, 0x2b, 0x7f, 0x00, 0x11, 0x36, 0x00, 0xe0, 0x44, 0x65, 0x5b, 0xea, + 0xd9, 0x00, 0x68, 0x2b, 0x83, 0x00, 0x11, 0x35, 0x00, 0xe0, 0x44, 0x65, + 0x5b, 0x0a, 0xd9, 0x00, 0x02, 0xde, 0x02, 0xf0, 0x00, 0x00, 0x01, 0x80, + 0x60, 0x06, 0xf7, 0xf7, 0xbf, 0x00, 0x68, 0x2b, 0x0b, 0x00, 0x11, 0x3a, + 0x00, 0xe8, 0x44, 0x65, 0x58, 0x57, 0xa4, 0x00, 0x02, 0x5e, 0x02, 0xf0, + 0x11, 0x61, 0x01, 0x84, 0x60, 0x02, 0xf5, 0x97, 0xac, 0x01, 0xbc, 0x60, + 0x03, 0x00, 0x0a, 0xc2, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x0a, 0xd9, 0x01, + 0xbc, 0x60, 0x03, 0x00, 0x0a, 0xc1, 0x01, 0x04, 0xde, 0xaf, 0x00, 0x17, + 0xa1, 0x01, 0x83, 0x5e, 0x86, 0xf5, 0xb7, 0xad, 0x02, 0x84, 0xde, 0xaf, + 0x00, 0x11, 0x43, 0x01, 0x80, 0x60, 0x06, 0x0d, 0x90, 0x6c, 0x00, 0x02, + 0xde, 0x02, 0xf0, 0x00, 0x00, 0x00, 0xb0, 0x2a, 0xa7, 0x00, 0x17, 0xa3, + 0x02, 0x04, 0x00, 0xc3, 0x00, 0x11, 0x46, 0x00, 0xb0, 0x2a, 0xc7, 0x00, + 0x17, 0xa3, 0x02, 0x02, 0xde, 0xbb, 0x00, 0x11, 0x48, 0x00, 0xb0, 0x2a, + 0xa3, 0x00, 0x17, 0xa3, 0x00, 0xe0, 0x44, 0x66, 0xf4, 0x6a, 0xb9, 0x00, + 0xb0, 0x44, 0x67, 0x00, 0x0b, 0x09, 0x01, 0x83, 0xe0, 0x02, 0x2b, 0x91, + 0x5c, 0x02, 0x07, 0x01, 0xab, 0x00, 0x11, 0x4d, 0x01, 0x80, 0xe0, 0x02, + 0x09, 0xd0, 0x4e, 0x01, 0xbc, 0x60, 0x03, 0x18, 0x51, 0x78, 0x00, 0xb0, + 0x45, 0xe3, 0x00, 0x18, 0x00, 0x01, 0x80, 0x60, 0x02, 0x2f, 0x31, 0x79, + 0x00, 0x02, 0xde, 0x02, 0xf0, 0x00, 0x00, 0x02, 0x02, 0xde, 0xb3, 0x00, + 0x11, 0x54, 0x01, 0x83, 0x60, 0x06, 0x2b, 0x91, 0x5c, 0x00, 0x02, 0x5e, + 0x02, 0xf0, 0x0f, 0x19, 0x02, 0x03, 0xc5, 0x73, 0x00, 0x11, 0x59, 0x02, + 0x84, 0xde, 0xaf, 0x00, 0x11, 0x59, 0x02, 0x81, 0xde, 0xbb, 0x00, 0x11, + 0x59, 0x02, 0x80, 0x5e, 0xff, 0x00, 0x11, 0x59, 0x02, 0x03, 0x5e, 0xb7, + 0x00, 0x11, 0x60, 0x01, 0x8b, 0x60, 0x0e, 0x2b, 0x91, 0x5c, 0x01, 0xbc, + 0x60, 0x03, 0x18, 0x51, 0x78, 0x00, 0xb0, 0x45, 0xe3, 0x00, 0x18, 0x00, + 0x01, 0x8b, 0x2b, 0x46, 0x2f, 0x31, 0x79, 0x01, 0x83, 0x60, 0x06, 0xf5, + 0xb7, 0xad, 0x01, 0x84, 0xe0, 0x02, 0xf5, 0x77, 0xab, 0x01, 0xbc, 0x60, + 0x03, 0x00, 0x0a, 0xc1, 0x00, 0x02, 0xde, 0x02, 0xf0, 0x00, 0x00, 0x00, + 0x68, 0x2b, 0x73, 0x00, 0x11, 0x63, 0x00, 0xb0, 0x2b, 0x73, 0x00, 0x17, + 0xa4, 0x00, 0x6d, 0x5e, 0x91, 0x56, 0x11, 0x65, 0x00, 0xb0, 0x2a, 0xc3, + 0x00, 0x17, 0xa4, 0x00, 0x88, 0x2b, 0x1f, 0x00, 0x37, 0xa5, 0x00, 0xe8, + 0x2b, 0x22, 0xf4, 0xaa, 0xc8, 0x00, 0x88, 0x5e, 0x93, 0x00, 0x37, 0xa4, + 0x00, 0xe0, 0x2b, 0x22, 0xf4, 0x8a, 0xc8, 0x00, 0x90, 0x2b, 0x23, 0x00, + 0xaa, 0xc7, 0x00, 0xb0, 0x2b, 0x1f, 0x00, 0x0a, 0xad, 0x00, 0x02, 0xde, + 0x02, 0xf0, 0x00, 0x00, 0x02, 0x03, 0x2c, 0x3f, 0x00, 0x11, 0x75, 0x02, + 0x87, 0x41, 0xd7, 0x00, 0x11, 0x6d, 0x01, 0xbc, 0x60, 0x63, 0x00, 0x10, + 0x7b, 0x01, 0xbc, 0x60, 0x07, 0x00, 0x10, 0x7a, 0x01, 0xac, 0x60, 0x7f, + 0x1c, 0x10, 0x75, 0x02, 0x87, 0x41, 0xd7, 0x00, 0x11, 0x71, 0x01, 0x84, + 0x5e, 0x8e, 0x0e, 0xd0, 0x76, 0x01, 0xac, 0x60, 0xbf, 0x1c, 0x10, 0x75, + 0x02, 0x87, 0x41, 0xd7, 0x00, 0x11, 0x74, 0x00, 0x02, 0xde, 0x02, 0xf0, + 0x00, 0x00, 0x02, 0x86, 0x41, 0x07, 0x00, 0x11, 0x76, 0x01, 0xbc, 0x60, + 0x13, 0x09, 0x17, 0xa1, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xce, 0x01, + 0x87, 0x60, 0x06, 0x03, 0x37, 0xa2, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, + 0xd4, 0x00, 0xb0, 0x5e, 0x87, 0x00, 0x17, 0xa1, 0x00, 0xb0, 0x5e, 0x87, + 0x00, 0x17, 0xa1, 0x00, 0xb0, 0x5e, 0x87, 0x00, 0x17, 0xa1, 0x01, 0x87, + 0x60, 0x02, 0xf4, 0x57, 0xa2, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xd4, + 0x01, 0xbc, 0x60, 0x13, 0x09, 0x57, 0xa1, 0x00, 0x02, 0x5e, 0x02, 0xf0, + 0x00, 0xce, 0x01, 0x80, 0x60, 0x06, 0x03, 0x37, 0xa2, 0x00, 0x02, 0x5e, + 0x02, 0xf0, 0x00, 0xd4, 0x00, 0xe0, 0x02, 0xb3, 0x00, 0x20, 0xac, 0x01, + 0x80, 0x60, 0x02, 0xf4, 0x57, 0xa2, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, + 0xd4, 0x01, 0xbc, 0x60, 0x27, 0x08, 0x57, 0xa1, 0x00, 0x02, 0x5e, 0x02, + 0xf0, 0x00, 0xce, 0x00, 0x68, 0xc0, 0x67, 0x01, 0xf1, 0x8e, 0x01, 0xbc, + 0x60, 0x03, 0x00, 0x17, 0xa2, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xd4, + 0x01, 0xbc, 0x60, 0x03, 0x01, 0xf7, 0xa2, 0x00, 0x02, 0x5e, 0x02, 0xf0, + 0x00, 0xd4, 0x00, 0x02, 0xde, 0x02, 0xf0, 0x00, 0x00, 0x03, 0x90, 0x5e, + 0x02, 0xf0, 0x11, 0xa2, 0x03, 0x87, 0x5e, 0x02, 0xf0, 0x11, 0xa2, 0x03, + 0x90, 0xde, 0x02, 0xf0, 0x11, 0xa2, 0x02, 0x04, 0x45, 0x23, 0x00, 0x11, + 0x99, 0x02, 0x83, 0xc2, 0x1f, 0x00, 0x11, 0xa2, 0x00, 0x68, 0xa0, 0xb3, + 0x00, 0x11, 0x96, 0x00, 0xb0, 0x44, 0x67, 0x00, 0x08, 0x2c, 0x00, 0xe8, + 0x44, 0x65, 0x05, 0x97, 0xa1, 0x00, 0x6e, 0x5e, 0x87, 0x7d, 0x11, 0x9d, + 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x11, 0xa3, 0x02, 0x86, 0xc0, 0x37, 0x00, + 0x11, 0xa2, 0x00, 0xe0, 0x44, 0x67, 0x00, 0xd7, 0xa1, 0x02, 0x06, 0x40, + 0x37, 0x00, 0x11, 0xa2, 0x00, 0x6c, 0xc4, 0x66, 0xf4, 0x31, 0x9b, 0x00, + 0x02, 0x5e, 0x02, 0xf0, 0x0b, 0x22, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x11, + 0x76, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x08, 0x2c, 0x00, 0x02, 0x5e, 0x02, + 0xf0, 0x0a, 0xe5, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x00, 0x13, 0x01, 0xbc, + 0x60, 0x03, 0x00, 0x08, 0x2c, 0x00, 0x02, 0xde, 0x02, 0xf0, 0x00, 0x00, + 0x02, 0x80, 0x42, 0x03, 0x00, 0x11, 0xac, 0x02, 0x85, 0x45, 0x23, 0x00, + 0x11, 0xab, 0x02, 0x85, 0xde, 0xb7, 0x00, 0x11, 0xa9, 0x01, 0x85, 0xe0, + 0x06, 0xf5, 0xb7, 0xad, 0x00, 0xe0, 0x44, 0x6b, 0x00, 0x2b, 0x20, 0x00, + 0x6c, 0xc4, 0x69, 0x64, 0x11, 0xac, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x11, + 0x76, 0x01, 0x85, 0xe0, 0x02, 0xf5, 0xb7, 0xad, 0x00, 0x02, 0xde, 0x02, + 0xf0, 0x00, 0x00, 0x01, 0x0c, 0x81, 0x43, 0x00, 0x17, 0xa1, 0x01, 0xbc, + 0x60, 0x03, 0x00, 0x50, 0x8a, 0x00, 0x68, 0x5e, 0x07, 0x00, 0x11, 0xb1, + 0x00, 0x68, 0x5e, 0x87, 0x00, 0x11, 0xb1, 0x00, 0x68, 0x5e, 0x07, 0x00, + 0x11, 0xb9, 0x01, 0x90, 0x42, 0x2a, 0xa1, 0x30, 0x8a, 0x00, 0x68, 0x5e, + 0x07, 0x00, 0x31, 0xb9, 0x01, 0x90, 0x42, 0x2a, 0xa0, 0x10, 0x8a, 0x01, + 0x09, 0xde, 0x03, 0x00, 0x17, 0xa2, 0x01, 0x8f, 0x5e, 0x8a, 0x11, 0x50, + 0x8a, 0x00, 0x68, 0x5e, 0x8b, 0x00, 0x11, 0xb9, 0x01, 0x91, 0xe0, 0x0e, + 0x11, 0x50, 0x8a, 0x00, 0x02, 0xde, 0x02, 0xf0, 0x00, 0x00, 0x01, 0x09, + 0xde, 0x03, 0x00, 0x17, 0xa4, 0x00, 0xe0, 0x5a, 0x06, 0xf4, 0x97, 0xa5, + 0x00, 0x90, 0x5e, 0x96, 0xf4, 0x97, 0xa5, 0x02, 0x03, 0xde, 0x03, 0x00, + 0x11, 0xc1, 0x02, 0x82, 0xde, 0x03, 0x00, 0x11, 0xc1, 0x01, 0xbc, 0x61, + 0xef, 0x08, 0x57, 0xa6, 0x00, 0x80, 0xde, 0x96, 0xf4, 0xd7, 0xa5, 0x01, + 0x16, 0xde, 0x87, 0x00, 0x17, 0xa3, 0x00, 0x88, 0x5e, 0x87, 0x00, 0x77, + 0xa1, 0x00, 0xe1, 0x5e, 0x87, 0x02, 0xd7, 0xa1, 0x00, 0xe0, 0xde, 0x8f, + 0x00, 0x17, 0xa3, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x17, 0xa2, 0x02, 0x0e, + 0x5e, 0x03, 0x00, 0x11, 0xc8, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x37, 0xa2, + 0x00, 0x90, 0x5e, 0x96, 0xf4, 0x57, 0xa5, 0x00, 0x80, 0xde, 0x96, 0xf4, + 0x37, 0xa1, 0x00, 0xe1, 0x41, 0xb7, 0xff, 0xf7, 0xa6, 0x00, 0xe1, 0xde, + 0x87, 0x01, 0xf7, 0xa1, 0x00, 0x80, 0xde, 0x96, 0xf4, 0x77, 0xa3, 0x00, + 0xe1, 0xde, 0x86, 0x0d, 0xb7, 0xa1, 0x00, 0xe0, 0xde, 0x8f, 0x00, 0x17, + 0xa3, 0x01, 0x7a, 0x5e, 0x86, 0xf4, 0x77, 0xa1, 0x00, 0x88, 0x5e, 0x86, + 0xf4, 0x57, 0xa1, 0x00, 0xb0, 0x5e, 0x87, 0x00, 0x17, 0xa2, 0x02, 0x87, + 0xde, 0x03, 0x00, 0x11, 0xd5, 0x00, 0x88, 0x5e, 0x87, 0x00, 0x57, 0xa1, + 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x11, 0xe2, 0x02, 0x87, 0x5e, 0x03, 0x00, + 0x11, 0xdc, 0x01, 0xbc, 0x63, 0x9b, 0x0c, 0xd7, 0xa5, 0x00, 0x80, 0xde, + 0x86, 0xf4, 0xb7, 0xa1, 0x00, 0xe1, 0x41, 0xb7, 0xff, 0xf7, 0xa5, 0x00, + 0xe0, 0xde, 0x87, 0x00, 0x17, 0xa1, 0x00, 0x88, 0x5e, 0x87, 0x00, 0x57, + 0xa1, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x11, 0xe2, 0x00, 0x88, 0x5e, 0x87, + 0x00, 0x57, 0xa1, 0x01, 0xbc, 0x63, 0x9b, 0x0c, 0xf7, 0xa5, 0x00, 0x80, + 0xde, 0x86, 0xf4, 0xb7, 0xa1, 0x01, 0xbc, 0x62, 0x03, 0x00, 0x17, 0xa5, + 0x00, 0xe1, 0x41, 0xb6, 0xf4, 0xb7, 0xa5, 0x00, 0xe0, 0xde, 0x87, 0x00, + 0x17, 0xa1, 0x00, 0xe0, 0x5e, 0x84, 0x00, 0xd7, 0xa1, 0x00, 0x02, 0xde, + 0x02, 0xf0, 0x00, 0x00, 0x02, 0x00, 0x20, 0x0f, 0x00, 0x00, 0x13, 0x02, + 0x82, 0xde, 0x53, 0x00, 0x11, 0xea, 0x01, 0x88, 0x60, 0x02, 0x04, 0x90, + 0x24, 0x00, 0xe0, 0x20, 0xaa, 0xf3, 0x08, 0x2a, 0x00, 0xe8, 0x20, 0xa6, + 0xf3, 0x08, 0x29, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x09, 0x93, 0x01, 0xb8, + 0x60, 0x16, 0x04, 0x90, 0x24, 0x01, 0xbc, 0x60, 0x03, 0x01, 0xd0, 0x25, + 0x03, 0x05, 0x5e, 0x02, 0xf0, 0x11, 0xfc, 0x02, 0x87, 0xc0, 0x37, 0x00, + 0x0a, 0x93, 0x03, 0x86, 0xde, 0x02, 0xf0, 0x0a, 0x94, 0x00, 0x02, 0x5e, + 0x02, 0xf0, 0x0f, 0x38, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x11, 0x8f, 0x03, + 0x5c, 0xde, 0x02, 0xf0, 0x11, 0xec, 0x00, 0xd8, 0x40, 0x9b, 0x01, 0x17, + 0xa1, 0x00, 0xe0, 0x5e, 0x87, 0x02, 0x37, 0x98, 0x00, 0xa8, 0x5e, 0x63, + 0x00, 0x77, 0x98, 0x01, 0x02, 0xde, 0x53, 0x00, 0x17, 0xa1, 0x01, 0x82, + 0xe0, 0x02, 0xf2, 0x97, 0x94, 0x01, 0x88, 0xde, 0x85, 0x00, 0x68, 0x03, + 0x00, 0x6e, 0xa0, 0xa6, 0xf3, 0x11, 0xfc, 0x00, 0xe8, 0x5e, 0x63, 0x01, + 0xd0, 0x25, 0x01, 0xb8, 0x60, 0x06, 0x04, 0x90, 0x24, 0x03, 0xbf, 0xde, + 0x02, 0xf0, 0x00, 0x02, 0x01, 0x81, 0x60, 0x05, 0x00, 0x68, 0x03, 0x01, + 0xb8, 0x60, 0x0a, 0x04, 0x90, 0x24, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x00, + 0x02, 0x02, 0x28, 0x5e, 0x87, 0x00, 0x12, 0x12, 0x00, 0xb0, 0x41, 0x93, + 0x00, 0x17, 0xa4, 0x00, 0xe0, 0x41, 0x93, 0x00, 0x70, 0x64, 0x01, 0x0a, + 0x5e, 0x87, 0x00, 0x17, 0xa2, 0x00, 0xe8, 0x41, 0x92, 0xf4, 0x50, 0x63, + 0x01, 0x18, 0x5e, 0x87, 0x00, 0x17, 0xa1, 0x00, 0xe8, 0x60, 0x42, 0xf4, + 0x37, 0xa2, 0x00, 0x88, 0x56, 0x02, 0xf4, 0x36, 0x00, 0x00, 0x68, 0x41, + 0x8e, 0xf4, 0x92, 0x0e, 0x00, 0xe8, 0x41, 0x8f, 0x00, 0x30, 0x63, 0x00, + 0xe8, 0x41, 0x93, 0x00, 0x30, 0x64, 0x00, 0x68, 0x5e, 0x8b, 0x02, 0x12, + 0x06, 0x00, 0x90, 0x56, 0x02, 0xf4, 0x57, 0xa3, 0x00, 0xb0, 0x58, 0x06, + 0xf4, 0x76, 0x01, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x12, 0x06, 0x00, 0x68, + 0x41, 0x92, 0xf4, 0x92, 0x12, 0x00, 0xe8, 0x41, 0x93, 0x00, 0x30, 0x64, + 0x01, 0xbc, 0x60, 0x03, 0x00, 0x16, 0x00, 0x03, 0xbf, 0xde, 0x02, 0xf0, + 0x12, 0x0e, 0x00, 0xb0, 0x5e, 0x87, 0x00, 0x17, 0xa1, 0x00, 0x02, 0xde, + 0x02, 0xf0, 0x00, 0x00, 0x01, 0x80, 0x60, 0x02, 0x86, 0x14, 0x30, 0x00, + 0xb0, 0x50, 0xcb, 0x00, 0x10, 0x65, 0x01, 0x38, 0x50, 0x83, 0x00, 0x17, + 0xa1, 0x00, 0x68, 0xde, 0x3b, 0x06, 0x32, 0x1a, 0x00, 0xe0, 0x5a, 0x33, + 0x00, 0x36, 0x8c, 0x00, 0x6e, 0xda, 0x32, 0xf4, 0x20, 0x13, 0x00, 0xb0, + 0x5a, 0x0b, 0x00, 0x17, 0xa2, 0x00, 0xe0, 0x01, 0xf7, 0x00, 0x20, 0x7d, + 0x00, 0xe0, 0x01, 0xd2, 0xf4, 0x40, 0x74, 0x01, 0xbc, 0x63, 0xff, 0x1f, + 0xf7, 0xa3, 0x00, 0xb0, 0x50, 0xcf, 0x00, 0x10, 0x64, 0x00, 0x6e, 0xda, + 0x32, 0xf4, 0x32, 0x21, 0x00, 0xb0, 0x5a, 0x37, 0x00, 0x17, 0xa3, 0x00, + 0xb0, 0x58, 0x13, 0x00, 0x17, 0x82, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x16, + 0x04, 0x01, 0xbc, 0x60, 0x1b, 0x09, 0xd7, 0xb6, 0x01, 0x02, 0xd0, 0xc7, + 0x00, 0x17, 0xa1, 0x00, 0xe0, 0x41, 0x96, 0xf4, 0x30, 0x65, 0x00, 0xe0, + 0x50, 0xcb, 0x00, 0xd0, 0x64, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x17, 0xb4, + 0x01, 0xbc, 0x60, 0x03, 0x00, 0x17, 0x80, 0x01, 0xbc, 0x60, 0x03, 0x00, + 0x37, 0x81, 0x01, 0x87, 0x60, 0x04, 0x03, 0x10, 0xa0, 0x00, 0x90, 0x52, + 0x33, 0x00, 0x97, 0xa4, 0x00, 0xe0, 0x41, 0x87, 0x01, 0xb7, 0xb5, 0x00, + 0x68, 0x5e, 0xd2, 0xf0, 0x52, 0x48, 0x00, 0xe0, 0x5e, 0xda, 0xf6, 0x90, + 0x63, 0x00, 0x20, 0xd8, 0x02, 0xf0, 0x32, 0x3c, 0x02, 0x02, 0x50, 0xc7, + 0x00, 0x12, 0x42, 0x00, 0x90, 0x56, 0x03, 0x00, 0x97, 0xa1, 0x00, 0xe8, + 0x5e, 0x86, 0xf4, 0x97, 0xa1, 0x01, 0x9e, 0x60, 0x02, 0xf4, 0x37, 0xa1, + 0x00, 0x6d, 0xde, 0x87, 0x08, 0x12, 0x42, 0x01, 0x0a, 0x5e, 0x87, 0x00, + 0x17, 0xa2, 0x01, 0xda, 0x60, 0x02, 0xf4, 0x37, 0xa1, 0x00, 0xe0, 0x5e, + 0xd6, 0xf4, 0x50, 0x63, 0x00, 0x88, 0x60, 0x06, 0xf4, 0x37, 0xa1, 0x00, + 0x20, 0x56, 0x02, 0xf4, 0x32, 0x42, 0x00, 0xb0, 0x58, 0x02, 0xf0, 0x36, + 0x00, 0x00, 0xe0, 0x5a, 0x2b, 0x00, 0x36, 0x8a, 0x00, 0x6a, 0xde, 0xd2, + 0xf4, 0x72, 0x3e, 0x00, 0x68, 0xde, 0xd2, 0xf0, 0x12, 0x43, 0x00, 0xe0, + 0x5e, 0x03, 0x00, 0x37, 0x80, 0x00, 0x68, 0x5e, 0x03, 0x00, 0x32, 0x43, + 0x01, 0x86, 0xe0, 0x04, 0x03, 0x10, 0xa0, 0x03, 0xbf, 0xde, 0x02, 0xf0, + 0x12, 0x43, 0x00, 0x6a, 0xde, 0xd2, 0xf4, 0x72, 0x3e, 0x00, 0xe0, 0x5e, + 0xd3, 0x00, 0x37, 0xb4, 0x00, 0xd0, 0x5e, 0x07, 0x00, 0x37, 0x81, 0x02, + 0x98, 0x5e, 0xd3, 0x00, 0x12, 0x2d, 0x00, 0xe0, 0x41, 0x93, 0x00, 0x30, + 0x64, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x12, 0x2d, 0x00, 0x68, 0x5e, 0x03, + 0x00, 0x00, 0x13, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x05, 0xd7, 0x02, 0x82, + 0xd0, 0xc7, 0x00, 0x12, 0x52, 0x00, 0xb0, 0x2a, 0x4f, 0x00, 0x17, 0xa1, + 0x01, 0xb8, 0x2a, 0x4a, 0xf4, 0x36, 0x84, 0x01, 0x02, 0x50, 0x13, 0x00, + 0x16, 0x85, 0x01, 0x3c, 0x50, 0x83, 0x00, 0x17, 0xa1, 0x00, 0xb0, 0x50, + 0xa7, 0x00, 0x17, 0xa4, 0x00, 0x6d, 0x5a, 0x32, 0xf4, 0x32, 0x5b, 0x01, + 0x82, 0xe0, 0x06, 0x86, 0x34, 0x31, 0x02, 0x88, 0x50, 0x2b, 0x00, 0x12, + 0x57, 0x00, 0xb0, 0x5a, 0x33, 0x00, 0x17, 0xa1, 0x01, 0x9e, 0x5e, 0x86, + 0x84, 0xf4, 0x27, 0x01, 0x83, 0x60, 0x06, 0x86, 0x34, 0x31, 0x00, 0x02, + 0xde, 0x02, 0xf0, 0x00, 0x00, 0x00, 0xb0, 0x50, 0x73, 0x00, 0x17, 0xa1, + 0x01, 0xb8, 0x50, 0x6e, 0xf4, 0x36, 0x84, 0x01, 0x06, 0xd0, 0x07, 0x00, + 0x16, 0x85, 0x00, 0xb0, 0x50, 0xab, 0x00, 0x17, 0xa4, 0x00, 0xd0, 0x60, + 0x06, 0xc0, 0x97, 0x80, 0x00, 0xe0, 0x41, 0x97, 0x00, 0xd7, 0xb5, 0x01, + 0x0a, 0x58, 0x13, 0x00, 0x17, 0xa1, 0x00, 0xe0, 0x5e, 0xd6, 0xf4, 0x37, + 0xb5, 0x00, 0xb0, 0x58, 0x0f, 0x00, 0x10, 0x63, 0x01, 0x16, 0x56, 0x03, + 0x00, 0x17, 0x81, 0x00, 0x68, 0xd8, 0x13, 0x00, 0x12, 0x70, 0x01, 0x14, + 0x00, 0x63, 0x00, 0x17, 0xa1, 0x00, 0x68, 0xde, 0x87, 0x00, 0x12, 0x66, + 0x00, 0x88, 0x01, 0x3b, 0x01, 0x16, 0x80, 0x03, 0xbf, 0xde, 0x02, 0xf0, + 0x12, 0x6b, 0x00, 0x68, 0xde, 0x87, 0x00, 0x72, 0x69, 0x00, 0xa0, 0x01, + 0x3b, 0xe0, 0x16, 0x80, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x12, 0x6b, 0x00, + 0xe0, 0x5e, 0x87, 0x09, 0x70, 0x62, 0x00, 0x88, 0x54, 0x03, 0x01, 0x16, + 0x80, 0x00, 0xe8, 0x5a, 0x03, 0x30, 0x16, 0x80, 0x01, 0xbc, 0x60, 0x03, + 0x00, 0x16, 0x81, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x16, 0x82, 0x01, 0xbc, + 0x60, 0x03, 0x00, 0x16, 0x83, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x12, 0x75, + 0x00, 0xe0, 0x41, 0x8e, 0xc0, 0x90, 0x63, 0x00, 0x6e, 0xc1, 0x8e, 0xc0, + 0x32, 0x75, 0x00, 0xe8, 0x41, 0x8e, 0xc0, 0x30, 0x63, 0x00, 0xe8, 0x58, + 0x03, 0x00, 0x37, 0xa1, 0x00, 0xe0, 0x41, 0x8e, 0xf4, 0x30, 0x63, 0x01, + 0x38, 0x50, 0xa3, 0x00, 0x17, 0xa5, 0x00, 0x68, 0x58, 0x13, 0x03, 0xf2, + 0x90, 0x00, 0x68, 0x41, 0x8e, 0xc0, 0x52, 0x90, 0x00, 0x6d, 0xda, 0x0a, + 0xf4, 0xb2, 0x90, 0x01, 0x16, 0x56, 0x03, 0x00, 0x17, 0xa1, 0x00, 0x68, + 0xde, 0x86, 0xf0, 0x32, 0x90, 0x01, 0x58, 0x56, 0x03, 0x00, 0x17, 0xa1, + 0x00, 0xe0, 0x5e, 0x87, 0x0d, 0xd7, 0xa2, 0x00, 0xb0, 0x5e, 0xd7, 0x00, + 0x10, 0x62, 0x00, 0x20, 0xde, 0x02, 0xa0, 0x12, 0x87, 0x00, 0xe0, 0x5e, + 0x86, 0xd0, 0x37, 0xa3, 0x00, 0xe0, 0x5e, 0x8e, 0xd0, 0x77, 0xa3, 0x00, + 0x6d, 0x5a, 0x02, 0xf4, 0x52, 0x90, 0x00, 0x6e, 0x5e, 0x8e, 0xf4, 0x92, + 0x90, 0x00, 0xe8, 0x60, 0x02, 0xf4, 0x36, 0x83, 0x00, 0xb0, 0x5e, 0x8f, + 0x00, 0x16, 0x81, 0x00, 0xa0, 0x5a, 0x0f, 0x00, 0x76, 0x83, 0x00, 0xe0, + 0x5a, 0x0b, 0x00, 0x36, 0x82, 0x00, 0xe8, 0x5a, 0x02, 0xf4, 0x56, 0x80, + 0x00, 0xd0, 0x5e, 0x03, 0x00, 0x37, 0x80, 0x00, 0xe0, 0x58, 0x13, 0x00, + 0x36, 0x04, 0x00, 0xe0, 0x41, 0x8f, 0x00, 0x30, 0x63, 0x02, 0x98, 0x58, + 0x13, 0x00, 0x12, 0x8d, 0x00, 0xe0, 0x5e, 0xd7, 0x00, 0x37, 0xb5, 0x00, + 0x6e, 0xc1, 0x8e, 0xc0, 0x32, 0x76, 0x00, 0xb0, 0x58, 0x03, 0x00, 0x10, + 0x63, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x12, 0x76, 0x00, 0xb0, 0x58, 0x13, + 0x00, 0x17, 0xa1, 0x00, 0x68, 0xda, 0x37, 0x00, 0x12, 0x93, 0x00, 0xb0, + 0x5e, 0x87, 0x00, 0x16, 0x8d, 0x00, 0x6d, 0xde, 0x86, 0xd1, 0xb2, 0x95, + 0x00, 0xb0, 0x5e, 0x87, 0x00, 0x16, 0x8d, 0x00, 0x02, 0xde, 0x02, 0xf0, + 0x00, 0x00, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x17, 0xa1, 0x01, 0x87, 0x60, + 0x04, 0x03, 0x10, 0xa0, 0x01, 0xbc, 0x60, 0x03, 0x09, 0x90, 0xb5, 0x00, + 0xb0, 0x00, 0x63, 0x00, 0xf0, 0xb4, 0x01, 0xbc, 0x60, 0x57, 0x04, 0x90, + 0xb6, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x90, 0xb5, 0x00, 0xb0, 0x00, 0x63, + 0x00, 0xb0, 0xb4, 0x00, 0xb0, 0x42, 0xd3, 0x00, 0x18, 0x00, 0x03, 0x17, + 0xde, 0x02, 0xf0, 0x12, 0x9e, 0x03, 0x97, 0xde, 0x02, 0xf0, 0x12, 0x9f, + 0x00, 0xb0, 0x2a, 0x4b, 0x00, 0x14, 0x2f, 0x01, 0x8e, 0xe0, 0x0c, 0x03, + 0x10, 0xa0, 0x00, 0x6d, 0xde, 0x02, 0xd1, 0xb2, 0xa5, 0x00, 0xe8, 0x5a, + 0x36, 0xf0, 0x16, 0x8d, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x12, 0xa7, 0x01, + 0xbc, 0x60, 0x03, 0x00, 0x16, 0x8c, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x16, + 0x8d, 0x00, 0x6e, 0x5a, 0x3a, 0xf0, 0x12, 0xaa, 0x01, 0xbc, 0x60, 0x03, + 0x00, 0x16, 0x8e, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x12, 0xab, 0x00, 0xe8, + 0x5a, 0x3a, 0xf0, 0x16, 0x8e, 0x00, 0xb0, 0x58, 0x07, 0x00, 0x17, 0xa1, + 0x00, 0xe0, 0x58, 0x0e, 0xf0, 0x16, 0x03, 0x00, 0x6e, 0xd8, 0x0e, 0xf4, + 0x32, 0xb1, 0x00, 0xe8, 0x5e, 0x86, 0xc0, 0x17, 0xa1, 0x00, 0xe8, 0x58, + 0x0e, 0xf4, 0x36, 0x03, 0x00, 0xe8, 0x58, 0x0f, 0x00, 0x36, 0x03, 0x01, + 0x18, 0x5e, 0x03, 0x00, 0x17, 0xa1, 0x00, 0x6d, 0xde, 0x03, 0x02, 0x12, + 0xb9, 0x00, 0xe8, 0x60, 0x42, 0xf4, 0x37, 0xa2, 0x00, 0x90, 0x5a, 0x1a, + 0xf4, 0x36, 0x86, 0x00, 0x88, 0x5a, 0x1e, 0xf4, 0x57, 0xa2, 0x00, 0x90, + 0x5a, 0x1e, 0xf4, 0x36, 0x87, 0x00, 0xb0, 0x5a, 0x1a, 0xf4, 0x56, 0x86, + 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x12, 0xbb, 0x00, 0x90, 0x5a, 0x1e, 0xf4, + 0x36, 0x86, 0x01, 0xbc, 0x60, 0x03, 0x00, 0x16, 0x87, 0x00, 0x02, 0xde, + 0x02, 0xf0, 0x00, 0x00, 0x01, 0x58, 0x60, 0x03, 0x00, 0x10, 0x2a, 0x01, + 0xb8, 0x60, 0x0a, 0x04, 0x90, 0x24, 0x01, 0xbc, 0x60, 0x03, 0x02, 0x90, + 0x04, 0x01, 0x89, 0xe0, 0x02, 0x0d, 0x90, 0x6c, 0x00, 0x02, 0xde, 0x02, + 0xf0, 0x00, 0x00, 0x02, 0x00, 0xde, 0x53, 0x00, 0x12, 0xe6, 0x01, 0xbc, + 0x60, 0x13, 0x09, 0xb7, 0xa1, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xce, + 0x01, 0xa5, 0x60, 0x02, 0x03, 0x37, 0xa2, 0x01, 0x99, 0xe0, 0x02, 0xf4, + 0x57, 0xa2, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xd4, 0x01, 0xbc, 0x60, + 0x13, 0x09, 0x97, 0xa1, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xce, 0x01, + 0xa4, 0x60, 0x7e, 0x03, 0x37, 0xa2, 0x01, 0x99, 0xe0, 0x3e, 0xf4, 0x57, + 0xa2, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xd4, 0x01, 0xbc, 0x60, 0x13, + 0x16, 0xf7, 0xa1, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xce, 0x01, 0xb4, + 0x60, 0x02, 0x03, 0x37, 0xa2, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xd4, + 0x01, 0xbc, 0x60, 0x13, 0x16, 0x37, 0xa1, 0x00, 0x02, 0x5e, 0x02, 0xf0, + 0x00, 0xce, 0x01, 0x86, 0xe0, 0x02, 0x03, 0x37, 0xa2, 0x01, 0x85, 0x60, + 0x02, 0xf4, 0x57, 0xa2, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xd4, 0x01, + 0xbc, 0x60, 0x13, 0x16, 0x17, 0xa1, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, + 0xce, 0x01, 0x81, 0xe0, 0x06, 0x03, 0x37, 0xa2, 0x01, 0x85, 0xe0, 0x06, + 0xf4, 0x57, 0xa2, 0x01, 0x83, 0x60, 0x06, 0xf4, 0x57, 0xa2, 0x00, 0x02, + 0x5e, 0x02, 0xf0, 0x00, 0xd4, 0x01, 0xbc, 0x60, 0x13, 0x1f, 0x57, 0xa1, + 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xce, 0x01, 0x81, 0xe0, 0x02, 0x03, + 0x37, 0xa2, 0x02, 0x86, 0x00, 0xc7, 0x00, 0x12, 0xe0, 0x01, 0x81, 0xe0, + 0x06, 0x03, 0x37, 0xa2, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xd4, 0x01, + 0xbc, 0x60, 0x13, 0x1f, 0x37, 0xa1, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, + 0xce, 0x01, 0x81, 0xe0, 0x06, 0x03, 0x37, 0xa2, 0x00, 0x02, 0x5e, 0x02, + 0xf0, 0x00, 0xd4, 0x00, 0x02, 0xde, 0x02, 0xf0, 0x00, 0x00, 0x01, 0xbc, + 0x60, 0x13, 0x09, 0x97, 0xa1, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xce, + 0x01, 0xa4, 0x60, 0x02, 0x03, 0x37, 0xa2, 0x01, 0x99, 0xe0, 0x02, 0xf4, + 0x57, 0xa2, 0x01, 0x88, 0x60, 0x02, 0xf4, 0x57, 0xa2, 0x00, 0x02, 0x5e, + 0x02, 0xf0, 0x00, 0xd4, 0x01, 0xbc, 0x60, 0x13, 0x16, 0x17, 0xa1, 0x00, + 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xce, 0x01, 0x81, 0xe0, 0x02, 0x03, 0x37, + 0xa2, 0x01, 0x85, 0xe0, 0x02, 0xf4, 0x57, 0xa2, 0x01, 0x83, 0x60, 0x02, + 0xf4, 0x57, 0xa2, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xd4, 0x02, 0x06, + 0x00, 0xc7, 0x00, 0x12, 0xf7, 0x01, 0xbc, 0x60, 0x13, 0x1f, 0x37, 0xa1, + 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xce, 0x01, 0x81, 0xe0, 0x02, 0x03, + 0x37, 0xa2, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xd4, 0x00, 0x02, 0xde, + 0x02, 0xf0, 0x00, 0x00, 0x02, 0x00, 0xde, 0x53, 0x00, 0x12, 0xe6, 0x01, + 0xbc, 0x60, 0x13, 0x09, 0xb7, 0xa1, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, + 0xce, 0x01, 0x87, 0x60, 0x02, 0x03, 0x37, 0xa2, 0x01, 0x81, 0xe0, 0x02, + 0xf4, 0x57, 0xa2, 0x01, 0x88, 0x60, 0x06, 0xf4, 0x57, 0xa2, 0x00, 0x02, + 0x5e, 0x02, 0xf0, 0x00, 0xd4, 0x01, 0xbc, 0x60, 0x13, 0x09, 0x97, 0xa1, + 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xce, 0x02, 0x04, 0x00, 0xc7, 0x00, + 0x13, 0x04, 0x01, 0x88, 0x60, 0x0e, 0x03, 0x37, 0xa2, 0x03, 0xbf, 0xde, + 0x02, 0xf0, 0x13, 0x06, 0x01, 0x86, 0x60, 0x06, 0x03, 0x37, 0xa2, 0x01, + 0x81, 0xe0, 0x06, 0xf4, 0x57, 0xa2, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, + 0xd4, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x12, 0xdb, 0x00, 0x68, 0xde, 0x93, + 0x00, 0x13, 0x0c, 0x00, 0xe0, 0x5e, 0x03, 0x00, 0x57, 0xa2, 0x01, 0x09, + 0x5e, 0x8b, 0x00, 0x17, 0xa1, 0x03, 0xbf, 0xde, 0x02, 0xf0, 0x13, 0x14, + 0x00, 0x68, 0xde, 0x93, 0x00, 0x33, 0x10, 0x01, 0x10, 0x5e, 0x03, 0x00, + 0x17, 0xa2, 0x00, 0xe0, 0x5e, 0x8b, 0x00, 0x97, 0xa1, 0x03, 0xbf, 0xde, + 0x02, 0xf0, 0x13, 0x14, 0x01, 0x30, 0x5e, 0x03, 0x00, 0x17, 0xa2, 0x00, + 0xe0, 0x5e, 0x8b, 0x01, 0x97, 0xa1, 0x00, 0x6d, 0x5e, 0x87, 0x05, 0x93, + 0x14, 0x01, 0xbc, 0x60, 0x03, 0x05, 0x97, 0xa1, 0x00, 0x02, 0xde, 0x02, + 0xf0, 0x00, 0x00, 0x00, 0x68, 0x2b, 0xe3, 0x00, 0x13, 0x1a, 0x00, 0xb0, + 0x2c, 0x0b, 0x00, 0x17, 0xa1, 0x00, 0xe0, 0x5e, 0x85, 0x60, 0x77, 0xa1, + 0x00, 0x6b, 0xde, 0x86, 0x23, 0x33, 0x1a, 0x01, 0x86, 0xe0, 0x06, 0xf7, + 0xf7, 0xbf, 0x00, 0x02, 0xde, 0x02, 0xf0, 0x00, 0x00, 0x00, 0xb0, 0x5e, + 0x8f, 0x00, 0x10, 0x64, 0x00, 0xb0, 0x5e, 0x87, 0x00, 0x17, 0xa3, 0x00, + 0xb0, 0x5e, 0x8b, 0x00, 0x10, 0x65, 0x00, 0xb0, 0x5a, 0x03, 0x00, 0x17, + 0xa1, 0x00, 0x68, 0x41, 0x93, 0x00, 0x13, 0x23, 0x00, 0x02, 0x5e, 0x02, + 0xf0, 0x00, 0xce, 0x00, 0xb0, 0x40, 0x67, 0x00, 0x16, 0x01, 0x00, 0xe0, + 0x41, 0x93, 0x00, 0x50, 0x64, 0x00, 0xb0, 0x5a, 0x07, 0x00, 0x17, 0xa2, + 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x00, 0xd4, 0x00, 0xe0, 0x41, 0x97, 0x00, + 0x50, 0x65, 0x00, 0xe8, 0x5e, 0x8f, 0x00, 0x37, 0xa3, 0x00, 0x68, 0xde, + 0x8f, 0x00, 0x13, 0x1e, 0x00, 0x02, 0xde, 0x02, 0xf0, 0x00, 0x00, 0x00, + 0xb0, 0x5e, 0x8f, 0x00, 0x10, 0x64, 0x00, 0xb0, 0x5e, 0x87, 0x00, 0x17, + 0xa3, 0x00, 0xb0, 0x5e, 0x8b, 0x00, 0x10, 0x65, 0x00, 0xb0, 0x5a, 0x03, + 0x00, 0x17, 0x80, 0x00, 0x68, 0x41, 0x93, 0x00, 0x13, 0x31, 0x00, 0x02, + 0x5e, 0x02, 0xf0, 0x0d, 0xe4, 0x00, 0xb0, 0x5e, 0x07, 0x00, 0x16, 0x01, + 0x00, 0xe0, 0x41, 0x93, 0x00, 0x50, 0x64, 0x00, 0xb0, 0x5a, 0x07, 0x00, + 0x17, 0x81, 0x00, 0x02, 0x5e, 0x02, 0xf0, 0x0d, 0xe9, 0x00, 0xe0, 0x41, + 0x97, 0x00, 0x50, 0x65, 0x00, 0xe8, 0x5e, 0x8f, 0x00, 0x37, 0xa3, 0x00, + 0x68, 0xde, 0x8f, 0x00, 0x13, 0x2c, 0x00, 0x02, 0xde, 0x02, 0xf0, 0x00, + 0x00, 0x02, 0x02, 0x00, 0xbf, 0x00, 0x01, 0xba, 0x02, 0x03, 0xc5, 0x73, + 0x00, 0x01, 0xe3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xd2, 0x58, 0x82, 0x92 +}; + +const unsigned int bcm43362_firmware_image_len = sizeof(bcm43362_firmware_image); \ No newline at end of file diff --git a/configs/photon/usbnsh/Make.defs b/configs/photon/usbnsh/Make.defs index cb2820a9cb4..ee6740097cb 100644 --- a/configs/photon/usbnsh/Make.defs +++ b/configs/photon/usbnsh/Make.defs @@ -40,7 +40,7 @@ include ${TOPDIR}/arch/arm/src/armv7-m/Toolchain.defs ifeq ($(CONFIG_PHOTON_DFU_BOOTLOADER),y) LDSCRIPT = photon_dfu.ld else -LDSCRIPT = ld.script +LDSCRIPT = photon_jtag.ld endif ifeq ($(WINTOOL),y) diff --git a/configs/photon/wlan/Make.defs b/configs/photon/wlan/Make.defs new file mode 100644 index 00000000000..b6329421a94 --- /dev/null +++ b/configs/photon/wlan/Make.defs @@ -0,0 +1,139 @@ +############################################################################ +# configs/photon/wlan/Make.defs +# +# Copyright (C) 2017 Gregory Nutt. All rights reserved. +# Author: Gregory Nutt +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in +# the documentation and/or other materials provided with the +# distribution. +# 3. Neither the name NuttX nor the names of its contributors may be +# used to endorse or promote products derived from this software +# without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS +# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE +# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS +# OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +# AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN +# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +# POSSIBILITY OF SUCH DAMAGE. +# +############################################################################ + +include ${TOPDIR}/.config +include ${TOPDIR}/tools/Config.mk +include ${TOPDIR}/arch/arm/src/armv7-m/Toolchain.defs + +ifeq ($(CONFIG_PHOTON_DFU_BOOTLOADER),y) +LDSCRIPT = photon_dfu.ld +else +LDSCRIPT = photon_jtag.ld +endif + +ifeq ($(WINTOOL),y) + # Windows-native toolchains + DIRLINK = $(TOPDIR)/tools/copydir.sh + DIRUNLINK = $(TOPDIR)/tools/unlink.sh + MKDEP = $(TOPDIR)/tools/mkwindeps.sh + ARCHINCLUDES = -I. -isystem "${shell cygpath -w $(TOPDIR)/include}" + ARCHXXINCLUDES = -I. -isystem "${shell cygpath -w $(TOPDIR)/include}" -isystem "${shell cygpath -w $(TOPDIR)/include/cxx}" + ARCHSCRIPT = -T "${shell cygpath -w $(TOPDIR)/configs/$(CONFIG_ARCH_BOARD)/scripts/$(LDSCRIPT)}" +else + # Linux/Cygwin-native toolchain + MKDEP = $(TOPDIR)/tools/mkdeps$(HOSTEXEEXT) + ARCHINCLUDES = -I. -isystem $(TOPDIR)/include + ARCHXXINCLUDES = -I. -isystem $(TOPDIR)/include -isystem $(TOPDIR)/include/cxx + ARCHSCRIPT = -T$(TOPDIR)/configs/$(CONFIG_ARCH_BOARD)/scripts/$(LDSCRIPT) +endif + +CC = $(CROSSDEV)gcc +CXX = $(CROSSDEV)g++ +CPP = $(CROSSDEV)gcc -E +LD = $(CROSSDEV)ld +AR = $(ARCROSSDEV)ar rcs +NM = $(ARCROSSDEV)nm +OBJCOPY = $(CROSSDEV)objcopy +OBJDUMP = $(CROSSDEV)objdump + +# See http://dfu-util.sourceforge.net/ + +DFUSUFFIX = dfu-suffix +DFUUTIL = dfu-util + +ARCHCCVERSION = ${shell $(CC) -v 2>&1 | sed -n '/^gcc version/p' | sed -e 's/^gcc version \([0-9\.]\)/\1/g' -e 's/[-\ ].*//g' -e '1q'} +ARCHCCMAJOR = ${shell echo $(ARCHCCVERSION) | cut -d'.' -f1} + +ifeq ($(CONFIG_DEBUG_SYMBOLS),y) + ARCHOPTIMIZATION = -g +endif + +ifneq ($(CONFIG_DEBUG_NOOPT),y) + ARCHOPTIMIZATION += $(MAXOPTIMIZATION) -fno-strict-aliasing -fno-strength-reduce -fomit-frame-pointer +endif + +ARCHCFLAGS = -fno-builtin +ARCHCXXFLAGS = -fno-builtin -fno-exceptions -fcheck-new -fno-rtti +ARCHWARNINGS = -Wall -Wstrict-prototypes -Wshadow -Wundef +ARCHWARNINGSXX = -Wall -Wshadow -Wundef +ARCHDEFINES = +ARCHPICFLAGS = -fpic -msingle-pic-base -mpic-register=r10 + +CFLAGS = $(ARCHCFLAGS) $(ARCHWARNINGS) $(ARCHOPTIMIZATION) $(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES) -pipe +CPICFLAGS = $(ARCHPICFLAGS) $(CFLAGS) +CXXFLAGS = $(ARCHCXXFLAGS) $(ARCHWARNINGSXX) $(ARCHOPTIMIZATION) $(ARCHCPUFLAGS) $(ARCHXXINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES) -pipe +CXXPICFLAGS = $(ARCHPICFLAGS) $(CXXFLAGS) +CPPFLAGS = $(ARCHINCLUDES) $(ARCHDEFINES) $(EXTRADEFINES) +AFLAGS = $(CFLAGS) -D__ASSEMBLY__ + +NXFLATLDFLAGS1 = -r -d -warn-common +NXFLATLDFLAGS2 = $(NXFLATLDFLAGS1) -T$(TOPDIR)/binfmt/libnxflat/gnu-nxflat-pcrel.ld -no-check-sections +LDNXFLATFLAGS = -e main -s 2048 + +ASMEXT = .S +OBJEXT = .o +LIBEXT = .a +EXEEXT = + +ifneq ($(CROSSDEV),arm-nuttx-elf-) + LDFLAGS += -nostartfiles -nodefaultlibs +endif +ifeq ($(CONFIG_DEBUG_SYMBOLS),y) + LDFLAGS += -g +endif + + +HOSTCC = gcc +HOSTINCLUDES = -I. +HOSTCFLAGS = -Wall -Wstrict-prototypes -Wshadow -Wundef -g -pipe +HOSTLDFLAGS = + +ifeq ($(CONFIG_DFU_BINARY),y) + +define DOWNLOAD + $(Q) echo "DFUSUFFIX: $(1).dfu" + $(Q) $(OBJCOPY) $(OBJCOPYARGS) -O binary $(1) $(1).dfu + $(Q) $(DFUSUFFIX) -v $(subst 0x,,$(CONFIG_DFU_VID)) -p $(subst 0x,,$(CONFIG_DFU_PID)) -a $(1).dfu + $(Q) $(DFUUTIL) -d $(CONFIG_DFU_VID):$(CONFIG_DFU_PID) -a 0 -s $(CONFIG_DFU_BASE) -D $(1).dfu +endef + +else + +define DOWNLOAD + $(Q) $(ECHO) "Photon firmware upload through JTAG is not supported" +endef + +endif + diff --git a/configs/photon/wlan/defconfig b/configs/photon/wlan/defconfig new file mode 100644 index 00000000000..a616dd914f1 --- /dev/null +++ b/configs/photon/wlan/defconfig @@ -0,0 +1,1598 @@ +# +# Automatically generated file; DO NOT EDIT. +# Nuttx/ Configuration +# + +# +# Build Setup +# +CONFIG_EXPERIMENTAL=y +# CONFIG_DEFAULT_SMALL is not set +CONFIG_HOST_LINUX=y +# CONFIG_HOST_OSX is not set +# CONFIG_HOST_WINDOWS is not set +# CONFIG_HOST_OTHER is not set + +# +# Build Configuration +# +CONFIG_APPS_DIR="../apps" +CONFIG_BUILD_FLAT=y +# CONFIG_BUILD_2PASS is not set + +# +# Binary Output Formats +# +# CONFIG_RRLOAD_BINARY is not set +CONFIG_INTELHEX_BINARY=y +# CONFIG_MOTOROLA_SREC is not set +CONFIG_RAW_BINARY=y +# CONFIG_UBOOT_UIMAGE is not set +CONFIG_DFU_BINARY=y +CONFIG_DFU_BASE=0x8020000 +CONFIG_DFU_VID=0x2b04 +CONFIG_DFU_PID=0xd006 + +# +# Customize Header Files +# +# CONFIG_ARCH_STDINT_H is not set +# CONFIG_ARCH_STDBOOL_H is not set +# CONFIG_ARCH_MATH_H is not set +# CONFIG_ARCH_FLOAT_H is not set +# CONFIG_ARCH_STDARG_H is not set +# CONFIG_ARCH_DEBUG_H is not set + +# +# Debug Options +# +CONFIG_DEBUG_ALERT=y +CONFIG_DEBUG_FEATURES=y + +# +# Debug SYSLOG Output Controls +# +CONFIG_DEBUG_ERROR=y +CONFIG_DEBUG_WARN=y +CONFIG_DEBUG_INFO=y +# CONFIG_DEBUG_ASSERTIONS is not set + +# +# Subsystem Debug Options +# +# CONFIG_DEBUG_BINFMT is not set +# CONFIG_DEBUG_FS is not set +# CONFIG_DEBUG_GRAPHICS is not set +# CONFIG_DEBUG_LIB is not set +# CONFIG_DEBUG_MM is not set +CONFIG_DEBUG_NET=y +CONFIG_DEBUG_NET_ERROR=y +CONFIG_DEBUG_NET_WARN=y +CONFIG_DEBUG_NET_INFO=y +CONFIG_DEBUG_WIRELESS=y +CONFIG_DEBUG_WIRELESS_ERROR=y +CONFIG_DEBUG_WIRELESS_WARN=y +CONFIG_DEBUG_WIRELESS_INFO=y +# CONFIG_DEBUG_SCHED is not set + +# +# OS Function Debug Options +# +# CONFIG_DEBUG_DMA is not set +# CONFIG_DEBUG_IRQ is not set + +# +# Driver Debug Options +# +# CONFIG_DEBUG_LEDS is not set +# CONFIG_DEBUG_GPIO is not set +# CONFIG_DEBUG_MEMCARD is not set +# CONFIG_DEBUG_TIMER is not set +# CONFIG_DEBUG_WATCHDOG is not set +CONFIG_ARCH_HAVE_STACKCHECK=y +# CONFIG_STACK_COLORATION is not set +CONFIG_ARCH_HAVE_HEAPCHECK=y +# CONFIG_HEAP_COLORATION is not set +# CONFIG_DEBUG_SYMBOLS is not set +CONFIG_ARCH_HAVE_CUSTOMOPT=y +# CONFIG_DEBUG_NOOPT is not set +# CONFIG_DEBUG_CUSTOMOPT is not set +CONFIG_DEBUG_FULLOPT=y + +# +# System Type +# +CONFIG_ARCH_ARM=y +# CONFIG_ARCH_AVR is not set +# CONFIG_ARCH_HC is not set +# CONFIG_ARCH_MIPS is not set +# CONFIG_ARCH_MISOC is not set +# CONFIG_ARCH_RENESAS is not set +# CONFIG_ARCH_RISCV is not set +# CONFIG_ARCH_SIM is not set +# CONFIG_ARCH_X86 is not set +# CONFIG_ARCH_XTENSA is not set +# CONFIG_ARCH_Z16 is not set +# CONFIG_ARCH_Z80 is not set +CONFIG_ARCH="arm" + +# +# ARM Options +# +# CONFIG_ARCH_CHIP_A1X is not set +# CONFIG_ARCH_CHIP_C5471 is not set +# CONFIG_ARCH_CHIP_DM320 is not set +# CONFIG_ARCH_CHIP_EFM32 is not set +# CONFIG_ARCH_CHIP_IMX1 is not set +# CONFIG_ARCH_CHIP_IMX6 is not set +# CONFIG_ARCH_CHIP_KINETIS is not set +# CONFIG_ARCH_CHIP_KL is not set +# CONFIG_ARCH_CHIP_LM is not set +# CONFIG_ARCH_CHIP_TIVA is not set +# CONFIG_ARCH_CHIP_LPC11XX is not set +# CONFIG_ARCH_CHIP_LPC17XX is not set +# CONFIG_ARCH_CHIP_LPC214X is not set +# CONFIG_ARCH_CHIP_LPC2378 is not set +# CONFIG_ARCH_CHIP_LPC31XX is not set +# CONFIG_ARCH_CHIP_LPC43XX is not set +# CONFIG_ARCH_CHIP_MOXART is not set +# CONFIG_ARCH_CHIP_NUC1XX is not set +# CONFIG_ARCH_CHIP_SAMA5 is not set +# CONFIG_ARCH_CHIP_SAMD is not set +# CONFIG_ARCH_CHIP_SAML is not set +# CONFIG_ARCH_CHIP_SAM34 is not set +# CONFIG_ARCH_CHIP_SAMV7 is not set +CONFIG_ARCH_CHIP_STM32=y +# CONFIG_ARCH_CHIP_STM32F0 is not set +# CONFIG_ARCH_CHIP_STM32F7 is not set +# CONFIG_ARCH_CHIP_STM32L4 is not set +# CONFIG_ARCH_CHIP_STR71X is not set +# CONFIG_ARCH_CHIP_TMS570 is not set +# CONFIG_ARCH_CHIP_XMC4 is not set +# CONFIG_ARCH_ARM7TDMI is not set +# CONFIG_ARCH_ARM926EJS is not set +# CONFIG_ARCH_ARM920T is not set +# CONFIG_ARCH_CORTEXM0 is not set +# CONFIG_ARCH_CORTEXM23 is not set +CONFIG_ARCH_CORTEXM3=y +# CONFIG_ARCH_CORTEXM33 is not set +# CONFIG_ARCH_CORTEXM4 is not set +# CONFIG_ARCH_CORTEXM7 is not set +# CONFIG_ARCH_CORTEXA5 is not set +# CONFIG_ARCH_CORTEXA8 is not set +# CONFIG_ARCH_CORTEXA9 is not set +# CONFIG_ARCH_CORTEXR4 is not set +# CONFIG_ARCH_CORTEXR4F is not set +# CONFIG_ARCH_CORTEXR5 is not set +# CONFIG_ARCH_CORTEX5F is not set +# CONFIG_ARCH_CORTEXR7 is not set +# CONFIG_ARCH_CORTEXR7F is not set +CONFIG_ARCH_FAMILY="armv7-m" +CONFIG_ARCH_CHIP="stm32" +# CONFIG_ARM_TOOLCHAIN_IAR is not set +CONFIG_ARM_TOOLCHAIN_GNU=y +# CONFIG_ARMV7M_USEBASEPRI is not set +CONFIG_ARCH_HAVE_CMNVECTOR=y +# CONFIG_ARMV7M_CMNVECTOR is not set +# CONFIG_ARMV7M_LAZYFPU is not set +# CONFIG_ARCH_HAVE_FPU is not set +# CONFIG_ARCH_HAVE_DPFPU is not set +# CONFIG_ARCH_HAVE_TRUSTZONE is not set +CONFIG_ARM_HAVE_MPU_UNIFIED=y +# CONFIG_ARM_MPU is not set +# CONFIG_DEBUG_HARDFAULT is not set + +# +# ARMV7M Configuration Options +# +# CONFIG_ARMV7M_HAVE_ICACHE is not set +# CONFIG_ARMV7M_HAVE_DCACHE is not set +# CONFIG_ARMV7M_HAVE_ITCM is not set +# CONFIG_ARMV7M_HAVE_DTCM is not set +# CONFIG_ARMV7M_TOOLCHAIN_IARL is not set +# CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT is not set +# CONFIG_ARMV7M_TOOLCHAIN_CODEREDL is not set +# CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYL is not set +CONFIG_ARMV7M_TOOLCHAIN_GNU_EABIL=y +CONFIG_ARMV7M_HAVE_STACKCHECK=y +# CONFIG_ARMV7M_STACKCHECK is not set +# CONFIG_ARMV7M_ITMSYSLOG is not set +# CONFIG_SERIAL_TERMIOS is not set + +# +# STM32 Configuration Options +# +# CONFIG_ARCH_CHIP_STM32L151C6 is not set +# CONFIG_ARCH_CHIP_STM32L151C8 is not set +# CONFIG_ARCH_CHIP_STM32L151CB is not set +# CONFIG_ARCH_CHIP_STM32L151R6 is not set +# CONFIG_ARCH_CHIP_STM32L151R8 is not set +# CONFIG_ARCH_CHIP_STM32L151RB is not set +# CONFIG_ARCH_CHIP_STM32L151V6 is not set +# CONFIG_ARCH_CHIP_STM32L151V8 is not set +# CONFIG_ARCH_CHIP_STM32L151VB is not set +# CONFIG_ARCH_CHIP_STM32L152C6 is not set +# CONFIG_ARCH_CHIP_STM32L152C8 is not set +# CONFIG_ARCH_CHIP_STM32L152CB is not set +# CONFIG_ARCH_CHIP_STM32L152R6 is not set +# CONFIG_ARCH_CHIP_STM32L152R8 is not set +# CONFIG_ARCH_CHIP_STM32L152RB is not set +# CONFIG_ARCH_CHIP_STM32L152V6 is not set +# CONFIG_ARCH_CHIP_STM32L152V8 is not set +# CONFIG_ARCH_CHIP_STM32L152VB is not set +# CONFIG_ARCH_CHIP_STM32L152CC is not set +# CONFIG_ARCH_CHIP_STM32L152RC is not set +# CONFIG_ARCH_CHIP_STM32L152VC is not set +# CONFIG_ARCH_CHIP_STM32L162ZD is not set +# CONFIG_ARCH_CHIP_STM32L162VE is not set +# CONFIG_ARCH_CHIP_STM32F100C8 is not set +# CONFIG_ARCH_CHIP_STM32F100CB is not set +# CONFIG_ARCH_CHIP_STM32F100R8 is not set +# CONFIG_ARCH_CHIP_STM32F100RB is not set +# CONFIG_ARCH_CHIP_STM32F100RC is not set +# CONFIG_ARCH_CHIP_STM32F100RD is not set +# CONFIG_ARCH_CHIP_STM32F100RE is not set +# CONFIG_ARCH_CHIP_STM32F100V8 is not set +# CONFIG_ARCH_CHIP_STM32F100VB is not set +# CONFIG_ARCH_CHIP_STM32F100VC is not set +# CONFIG_ARCH_CHIP_STM32F100VD is not set +# CONFIG_ARCH_CHIP_STM32F100VE is not set +# CONFIG_ARCH_CHIP_STM32F102CB is not set +# CONFIG_ARCH_CHIP_STM32F103T8 is not set +# CONFIG_ARCH_CHIP_STM32F103TB is not set +# CONFIG_ARCH_CHIP_STM32F103C4 is not set +# CONFIG_ARCH_CHIP_STM32F103C8 is not set +# CONFIG_ARCH_CHIP_STM32F103CB is not set +# CONFIG_ARCH_CHIP_STM32F103R8 is not set +# CONFIG_ARCH_CHIP_STM32F103RB is not set +# CONFIG_ARCH_CHIP_STM32F103RC is not set +# CONFIG_ARCH_CHIP_STM32F103RD is not set +# CONFIG_ARCH_CHIP_STM32F103RE is not set +# CONFIG_ARCH_CHIP_STM32F103RG is not set +# CONFIG_ARCH_CHIP_STM32F103V8 is not set +# CONFIG_ARCH_CHIP_STM32F103VB is not set +# CONFIG_ARCH_CHIP_STM32F103VC is not set +# CONFIG_ARCH_CHIP_STM32F103VE is not set +# CONFIG_ARCH_CHIP_STM32F103ZE is not set +# CONFIG_ARCH_CHIP_STM32F105VB is not set +# CONFIG_ARCH_CHIP_STM32F105RB is not set +# CONFIG_ARCH_CHIP_STM32F107VC is not set +CONFIG_ARCH_CHIP_STM32F205RG=y +# CONFIG_ARCH_CHIP_STM32F207IG is not set +# CONFIG_ARCH_CHIP_STM32F207ZE is not set +# CONFIG_ARCH_CHIP_STM32F302K6 is not set +# CONFIG_ARCH_CHIP_STM32F302K8 is not set +# CONFIG_ARCH_CHIP_STM32F302CB is not set +# CONFIG_ARCH_CHIP_STM32F302CC is not set +# CONFIG_ARCH_CHIP_STM32F302RB is not set +# CONFIG_ARCH_CHIP_STM32F302RC is not set +# CONFIG_ARCH_CHIP_STM32F302VB is not set +# CONFIG_ARCH_CHIP_STM32F302VC is not set +# CONFIG_ARCH_CHIP_STM32F303K6 is not set +# CONFIG_ARCH_CHIP_STM32F303K8 is not set +# CONFIG_ARCH_CHIP_STM32F303C6 is not set +# CONFIG_ARCH_CHIP_STM32F303C8 is not set +# CONFIG_ARCH_CHIP_STM32F303CB is not set +# CONFIG_ARCH_CHIP_STM32F303CC is not set +# CONFIG_ARCH_CHIP_STM32F303RB is not set +# CONFIG_ARCH_CHIP_STM32F303RC is not set +# CONFIG_ARCH_CHIP_STM32F303RD is not set +# CONFIG_ARCH_CHIP_STM32F303RE is not set +# CONFIG_ARCH_CHIP_STM32F303VB is not set +# CONFIG_ARCH_CHIP_STM32F303VC is not set +# CONFIG_ARCH_CHIP_STM32F334K4 is not set +# CONFIG_ARCH_CHIP_STM32F334K6 is not set +# CONFIG_ARCH_CHIP_STM32F334K8 is not set +# CONFIG_ARCH_CHIP_STM32F334C4 is not set +# CONFIG_ARCH_CHIP_STM32F334C6 is not set +# CONFIG_ARCH_CHIP_STM32F334C8 is not set +# CONFIG_ARCH_CHIP_STM32F334R4 is not set +# CONFIG_ARCH_CHIP_STM32F334R6 is not set +# CONFIG_ARCH_CHIP_STM32F334R8 is not set +# CONFIG_ARCH_CHIP_STM32F372C8 is not set +# CONFIG_ARCH_CHIP_STM32F372R8 is not set +# CONFIG_ARCH_CHIP_STM32F372V8 is not set +# CONFIG_ARCH_CHIP_STM32F372CB is not set +# CONFIG_ARCH_CHIP_STM32F372RB is not set +# CONFIG_ARCH_CHIP_STM32F372VB is not set +# CONFIG_ARCH_CHIP_STM32F372CC is not set +# CONFIG_ARCH_CHIP_STM32F372RC is not set +# CONFIG_ARCH_CHIP_STM32F372VC is not set +# CONFIG_ARCH_CHIP_STM32F373C8 is not set +# CONFIG_ARCH_CHIP_STM32F373R8 is not set +# CONFIG_ARCH_CHIP_STM32F373V8 is not set +# CONFIG_ARCH_CHIP_STM32F373CB is not set +# CONFIG_ARCH_CHIP_STM32F373RB is not set +# CONFIG_ARCH_CHIP_STM32F373VB is not set +# CONFIG_ARCH_CHIP_STM32F373CC is not set +# CONFIG_ARCH_CHIP_STM32F373RC is not set +# CONFIG_ARCH_CHIP_STM32F373VC is not set +# CONFIG_ARCH_CHIP_STM32F401RE is not set +# CONFIG_ARCH_CHIP_STM32F411RE is not set +# CONFIG_ARCH_CHIP_STM32F411VE is not set +# CONFIG_ARCH_CHIP_STM32F405RG is not set +# CONFIG_ARCH_CHIP_STM32F405VG is not set +# CONFIG_ARCH_CHIP_STM32F405ZG is not set +# CONFIG_ARCH_CHIP_STM32F407VE is not set +# CONFIG_ARCH_CHIP_STM32F407VG is not set +# CONFIG_ARCH_CHIP_STM32F407ZE is not set +# CONFIG_ARCH_CHIP_STM32F407ZG is not set +# CONFIG_ARCH_CHIP_STM32F407IE is not set +# CONFIG_ARCH_CHIP_STM32F407IG is not set +# CONFIG_ARCH_CHIP_STM32F427V is not set +# CONFIG_ARCH_CHIP_STM32F427Z is not set +# CONFIG_ARCH_CHIP_STM32F427I is not set +# CONFIG_ARCH_CHIP_STM32F429V is not set +# CONFIG_ARCH_CHIP_STM32F429Z is not set +# CONFIG_ARCH_CHIP_STM32F429I is not set +# CONFIG_ARCH_CHIP_STM32F429B is not set +# CONFIG_ARCH_CHIP_STM32F429N is not set +# CONFIG_ARCH_CHIP_STM32F446M is not set +# CONFIG_ARCH_CHIP_STM32F446R is not set +# CONFIG_ARCH_CHIP_STM32F446V is not set +# CONFIG_ARCH_CHIP_STM32F446Z is not set +# CONFIG_ARCH_CHIP_STM32F469A is not set +# CONFIG_ARCH_CHIP_STM32F469I is not set +# CONFIG_ARCH_CHIP_STM32F469B is not set +# CONFIG_ARCH_CHIP_STM32F469N is not set +CONFIG_STM32_FLASH_CONFIG_DEFAULT=y +# CONFIG_STM32_FLASH_CONFIG_4 is not set +# CONFIG_STM32_FLASH_CONFIG_6 is not set +# CONFIG_STM32_FLASH_CONFIG_8 is not set +# CONFIG_STM32_FLASH_CONFIG_B is not set +# CONFIG_STM32_FLASH_CONFIG_C is not set +# CONFIG_STM32_FLASH_CONFIG_D is not set +# CONFIG_STM32_FLASH_CONFIG_E is not set +# CONFIG_STM32_FLASH_CONFIG_F is not set +# CONFIG_STM32_FLASH_CONFIG_G is not set +# CONFIG_STM32_FLASH_CONFIG_I is not set +# CONFIG_STM32_STM32L15XX is not set +# CONFIG_STM32_ENERGYLITE is not set +# CONFIG_STM32_STM32F10XX is not set +# CONFIG_STM32_VALUELINE is not set +# CONFIG_STM32_CONNECTIVITYLINE is not set +# CONFIG_STM32_PERFORMANCELINE is not set +# CONFIG_STM32_USBACCESSLINE is not set +# CONFIG_STM32_HIGHDENSITY is not set +# CONFIG_STM32_MEDIUMDENSITY is not set +# CONFIG_STM32_LOWDENSITY is not set +CONFIG_STM32_STM32F20XX=y +CONFIG_STM32_STM32F205=y +# CONFIG_STM32_STM32F207 is not set +# CONFIG_STM32_STM32F30XX is not set +# CONFIG_STM32_STM32F302 is not set +# CONFIG_STM32_STM32F303 is not set +# CONFIG_STM32_STM32F33XX is not set +# CONFIG_STM32_STM32F37XX is not set +# CONFIG_STM32_STM32F40XX is not set +# CONFIG_STM32_STM32F401 is not set +# CONFIG_STM32_STM32F411 is not set +# CONFIG_STM32_STM32F405 is not set +# CONFIG_STM32_STM32F407 is not set +# CONFIG_STM32_STM32F427 is not set +# CONFIG_STM32_STM32F429 is not set +# CONFIG_STM32_STM32F446 is not set +# CONFIG_STM32_STM32F469 is not set +CONFIG_STM32_DFU=y + +# +# STM32 Peripheral Support +# +# CONFIG_STM32_HAVE_CCM is not set +# CONFIG_STM32_HAVE_USBDEV is not set +CONFIG_STM32_HAVE_OTGFS=y +# CONFIG_STM32_HAVE_FSMC is not set +# CONFIG_STM32_HAVE_HRTIM1 is not set +# CONFIG_STM32_HAVE_LTDC is not set +CONFIG_STM32_HAVE_USART3=y +CONFIG_STM32_HAVE_UART4=y +CONFIG_STM32_HAVE_UART5=y +CONFIG_STM32_HAVE_USART6=y +# CONFIG_STM32_HAVE_UART7 is not set +# CONFIG_STM32_HAVE_UART8 is not set +CONFIG_STM32_HAVE_TIM1=y +# CONFIG_STM32_HAVE_TIM2 is not set +CONFIG_STM32_HAVE_TIM3=y +CONFIG_STM32_HAVE_TIM4=y +CONFIG_STM32_HAVE_TIM5=y +CONFIG_STM32_HAVE_TIM6=y +CONFIG_STM32_HAVE_TIM7=y +CONFIG_STM32_HAVE_TIM8=y +CONFIG_STM32_HAVE_TIM9=y +CONFIG_STM32_HAVE_TIM10=y +CONFIG_STM32_HAVE_TIM11=y +CONFIG_STM32_HAVE_TIM12=y +CONFIG_STM32_HAVE_TIM13=y +CONFIG_STM32_HAVE_TIM14=y +# CONFIG_STM32_HAVE_TIM15 is not set +# CONFIG_STM32_HAVE_TIM16 is not set +# CONFIG_STM32_HAVE_TIM17 is not set +CONFIG_STM32_HAVE_ADC2=y +CONFIG_STM32_HAVE_ADC3=y +# CONFIG_STM32_HAVE_ADC4 is not set +# CONFIG_STM32_HAVE_ADC1_DMA is not set +# CONFIG_STM32_HAVE_ADC2_DMA is not set +# CONFIG_STM32_HAVE_ADC3_DMA is not set +# CONFIG_STM32_HAVE_ADC4_DMA is not set +# CONFIG_STM32_HAVE_SDADC1 is not set +# CONFIG_STM32_HAVE_SDADC2 is not set +# CONFIG_STM32_HAVE_SDADC3 is not set +# CONFIG_STM32_HAVE_SDADC1_DMA is not set +# CONFIG_STM32_HAVE_SDADC2_DMA is not set +# CONFIG_STM32_HAVE_SDADC3_DMA is not set +CONFIG_STM32_HAVE_CAN1=y +CONFIG_STM32_HAVE_CAN2=y +# CONFIG_STM32_HAVE_COMP1 is not set +# CONFIG_STM32_HAVE_COMP2 is not set +# CONFIG_STM32_HAVE_COMP3 is not set +# CONFIG_STM32_HAVE_COMP4 is not set +# CONFIG_STM32_HAVE_COMP5 is not set +# CONFIG_STM32_HAVE_COMP6 is not set +# CONFIG_STM32_HAVE_COMP7 is not set +CONFIG_STM32_HAVE_DAC1=y +CONFIG_STM32_HAVE_DAC2=y +CONFIG_STM32_HAVE_RNG=y +# CONFIG_STM32_HAVE_ETHMAC is not set +CONFIG_STM32_HAVE_I2C2=y +CONFIG_STM32_HAVE_I2C3=y +CONFIG_STM32_HAVE_SPI2=y +CONFIG_STM32_HAVE_SPI3=y +# CONFIG_STM32_HAVE_SPI4 is not set +# CONFIG_STM32_HAVE_SPI5 is not set +# CONFIG_STM32_HAVE_SPI6 is not set +# CONFIG_STM32_HAVE_SAIPLL is not set +# CONFIG_STM32_HAVE_I2SPLL is not set +# CONFIG_STM32_HAVE_OPAMP1 is not set +# CONFIG_STM32_HAVE_OPAMP2 is not set +# CONFIG_STM32_HAVE_OPAMP3 is not set +# CONFIG_STM32_HAVE_OPAMP4 is not set +# CONFIG_STM32_ADC1 is not set +# CONFIG_STM32_ADC2 is not set +# CONFIG_STM32_ADC3 is not set +# CONFIG_STM32_CAN1 is not set +# CONFIG_STM32_CAN2 is not set +# CONFIG_STM32_CRC is not set +# CONFIG_STM32_DMA1 is not set +CONFIG_STM32_DMA2=y +# CONFIG_STM32_DAC1 is not set +# CONFIG_STM32_DAC2 is not set +# CONFIG_STM32_I2C1 is not set +# CONFIG_STM32_I2C2 is not set +# CONFIG_STM32_I2C3 is not set +# CONFIG_STM32_OPAMP is not set +# CONFIG_STM32_OTGFS is not set +# CONFIG_STM32_OTGHS is not set +# CONFIG_STM32_PWR is not set +# CONFIG_STM32_RNG is not set +CONFIG_STM32_SDIO=y +# CONFIG_STM32_SPI1 is not set +# CONFIG_STM32_SPI2 is not set +# CONFIG_STM32_SPI3 is not set +# CONFIG_STM32_TIM1 is not set +# CONFIG_STM32_TIM2 is not set +# CONFIG_STM32_TIM3 is not set +# CONFIG_STM32_TIM4 is not set +# CONFIG_STM32_TIM5 is not set +# CONFIG_STM32_TIM6 is not set +# CONFIG_STM32_TIM7 is not set +# CONFIG_STM32_TIM8 is not set +# CONFIG_STM32_TIM9 is not set +# CONFIG_STM32_TIM10 is not set +# CONFIG_STM32_TIM11 is not set +# CONFIG_STM32_TIM12 is not set +# CONFIG_STM32_TIM13 is not set +# CONFIG_STM32_TIM14 is not set +CONFIG_STM32_USART1=y +# CONFIG_STM32_USART2 is not set +# CONFIG_STM32_USART3 is not set +# CONFIG_STM32_UART4 is not set +# CONFIG_STM32_UART5 is not set +# CONFIG_STM32_USART6 is not set +CONFIG_STM32_IWDG=y +# CONFIG_STM32_WWDG is not set +# CONFIG_STM32_NOEXT_VECTORS is not set + +# +# Alternate Pin Mapping +# +# CONFIG_STM32_FLASH_WORKAROUND_DATA_CACHE_CORRUPTION_ON_RWW is not set +# CONFIG_STM32_JTAG_DISABLE is not set +# CONFIG_STM32_JTAG_FULL_ENABLE is not set +# CONFIG_STM32_JTAG_NOJNTRST_ENABLE is not set +CONFIG_STM32_JTAG_SW_ENABLE=y +# CONFIG_STM32_DISABLE_IDLE_SLEEP_DURING_DEBUG is not set +# CONFIG_STM32_FORCEPOWER is not set +# CONFIG_ARCH_BOARD_STM32_CUSTOM_CLOCKCONFIG is not set +# CONFIG_STM32_DMACAPABLE is not set + +# +# Timer Configuration +# +# CONFIG_STM32_ONESHOT is not set +# CONFIG_STM32_FREERUN is not set +# CONFIG_STM32_TIM1_CAP is not set +# CONFIG_STM32_TIM3_CAP is not set +# CONFIG_STM32_TIM4_CAP is not set +# CONFIG_STM32_TIM5_CAP is not set +# CONFIG_STM32_TIM8_CAP is not set +# CONFIG_STM32_TIM9_CAP is not set +# CONFIG_STM32_TIM10_CAP is not set +# CONFIG_STM32_TIM11_CAP is not set +# CONFIG_STM32_TIM12_CAP is not set +# CONFIG_STM32_TIM13_CAP is not set +# CONFIG_STM32_TIM14_CAP is not set +CONFIG_STM32_USART=y +CONFIG_STM32_SERIALDRIVER=y + +# +# U[S]ART Configuration +# + +# +# U[S]ART Device Configuration +# +CONFIG_STM32_USART1_SERIALDRIVER=y +# CONFIG_STM32_USART1_1WIREDRIVER is not set +# CONFIG_USART1_RS485 is not set +# CONFIG_USART1_RXDMA is not set + +# +# Serial Driver Configuration +# +# CONFIG_SERIAL_DISABLE_REORDERING is not set +# CONFIG_STM32_FLOWCONTROL_BROKEN is not set +# CONFIG_STM32_USART_BREAKS is not set +# CONFIG_STM32_USART_SINGLEWIRE is not set + +# +# SDIO Configuration +# +CONFIG_STM32_SDIO_DMA=y +CONFIG_STM32_SDIO_DMAPRIO=0x00010000 +# CONFIG_STM32_SDIO_WIDTH_D1_ONLY is not set +# CONFIG_STM32_HAVE_RTC_COUNTER is not set +# CONFIG_STM32_HAVE_RTC_SUBSECONDS is not set + +# +# USB FS Host Configuration +# + +# +# USB HS Host Configuration +# + +# +# USB Host Debug Configuration +# + +# +# USB Device Configuration +# + +# +# Architecture Options +# +# CONFIG_ARCH_NOINTC is not set +# CONFIG_ARCH_VECNOTIRQ is not set +CONFIG_ARCH_DMA=y +CONFIG_ARCH_HAVE_IRQPRIO=y +# CONFIG_ARCH_L2CACHE is not set +# CONFIG_ARCH_HAVE_COHERENT_DCACHE is not set +# CONFIG_ARCH_HAVE_ADDRENV is not set +# CONFIG_ARCH_NEED_ADDRENV_MAPPING is not set +# CONFIG_ARCH_HAVE_MULTICPU is not set +CONFIG_ARCH_HAVE_VFORK=y +# CONFIG_ARCH_HAVE_MMU is not set +CONFIG_ARCH_HAVE_MPU=y +# CONFIG_ARCH_NAND_HWECC is not set +# CONFIG_ARCH_HAVE_EXTCLK is not set +# CONFIG_ARCH_HAVE_POWEROFF is not set +CONFIG_ARCH_HAVE_RESET=y +# CONFIG_ARCH_HAVE_RTC_SUBSECONDS is not set +# CONFIG_ARCH_USE_MPU is not set +# CONFIG_ARCH_IRQPRIO is not set +CONFIG_ARCH_STACKDUMP=y +# CONFIG_ENDIAN_BIG is not set +# CONFIG_ARCH_IDLE_CUSTOM is not set +# CONFIG_ARCH_HAVE_RAMFUNCS is not set +CONFIG_ARCH_HAVE_RAMVECTORS=y +# CONFIG_ARCH_RAMVECTORS is not set +# CONFIG_ARCH_MINIMAL_VECTORTABLE is not set + +# +# Board Settings +# +CONFIG_BOARD_LOOPSPERMSEC=16717 +# CONFIG_ARCH_CALIBRATION is not set + +# +# Interrupt options +# +CONFIG_ARCH_HAVE_INTERRUPTSTACK=y +CONFIG_ARCH_INTERRUPTSTACK=0 +CONFIG_ARCH_HAVE_HIPRI_INTERRUPT=y +# CONFIG_ARCH_HIPRI_INTERRUPT is not set + +# +# Boot options +# +# CONFIG_BOOT_RUNFROMEXTSRAM is not set +CONFIG_BOOT_RUNFROMFLASH=y +# CONFIG_BOOT_RUNFROMISRAM is not set +# CONFIG_BOOT_RUNFROMSDRAM is not set +# CONFIG_BOOT_COPYTORAM is not set + +# +# Boot Memory Configuration +# +CONFIG_RAM_START=0x20000000 +CONFIG_RAM_SIZE=114688 +# CONFIG_ARCH_HAVE_SDRAM is not set + +# +# Board Selection +# +CONFIG_ARCH_BOARD_PHOTON=y +# CONFIG_ARCH_BOARD_CUSTOM is not set +CONFIG_ARCH_BOARD="photon" + +# +# Common Board Options +# +CONFIG_ARCH_HAVE_LEDS=y +# CONFIG_ARCH_LEDS is not set +CONFIG_ARCH_HAVE_BUTTONS=y +# CONFIG_ARCH_BUTTONS is not set +CONFIG_ARCH_HAVE_IRQBUTTONS=y + +# +# Board-Specific Options +# +CONFIG_PHOTON_DFU_BOOTLOADER=y +CONFIG_PHOTON_WDG=y +CONFIG_PHOTON_IWDG=y +CONFIG_PHOTON_IWDG_TIMEOUT=32000 +CONFIG_PHOTON_WDG_THREAD=y +CONFIG_PHOTON_WDG_THREAD_NAME="wdog" +CONFIG_PHOTON_WDG_THREAD_INTERVAL=2500 +CONFIG_PHOTON_WDG_THREAD_PRIORITY=200 +CONFIG_PHOTON_WDG_THREAD_STACKSIZE=1024 +CONFIG_PHOTON_WLAN=y +# CONFIG_BOARD_CRASHDUMP is not set +CONFIG_LIB_BOARDCTL=y +# CONFIG_BOARDCTL_RESET is not set +# CONFIG_BOARDCTL_UNIQUEID is not set +# CONFIG_BOARDCTL_TSCTEST is not set +# CONFIG_BOARDCTL_GRAPHICS is not set +# CONFIG_BOARDCTL_IOCTL is not set + +# +# RTOS Features +# +CONFIG_DISABLE_OS_API=y +# CONFIG_DISABLE_POSIX_TIMERS is not set +# CONFIG_DISABLE_PTHREAD is not set +# CONFIG_DISABLE_SIGNALS is not set +# CONFIG_DISABLE_MQUEUE is not set +# CONFIG_DISABLE_ENVIRON is not set + +# +# Clocks and Timers +# +CONFIG_ARCH_HAVE_TICKLESS=y +# CONFIG_SCHED_TICKLESS is not set +CONFIG_USEC_PER_TICK=10000 +# CONFIG_SYSTEM_TIME64 is not set +# CONFIG_CLOCK_MONOTONIC is not set +CONFIG_ARCH_HAVE_TIMEKEEPING=y +# CONFIG_CLOCK_TIMEKEEPING is not set +# CONFIG_JULIAN_TIME is not set +CONFIG_START_YEAR=2011 +CONFIG_START_MONTH=12 +CONFIG_START_DAY=6 +CONFIG_MAX_WDOGPARMS=2 +CONFIG_PREALLOC_WDOGS=16 +CONFIG_WDOG_INTRESERVE=4 +CONFIG_PREALLOC_TIMERS=4 + +# +# Tasks and Scheduling +# +# CONFIG_SPINLOCK is not set +# CONFIG_INIT_NONE is not set +CONFIG_INIT_ENTRYPOINT=y +# CONFIG_INIT_FILEPATH is not set +CONFIG_USER_ENTRYPOINT="nsh_main" +CONFIG_RR_INTERVAL=200 +# CONFIG_SCHED_SPORADIC is not set +CONFIG_TASK_NAME_SIZE=31 +CONFIG_MAX_TASKS=16 +# CONFIG_SCHED_HAVE_PARENT is not set +CONFIG_SCHED_WAITPID=y + +# +# Pthread Options +# +# CONFIG_PTHREAD_MUTEX_TYPES is not set +CONFIG_PTHREAD_MUTEX_ROBUST=y +# CONFIG_PTHREAD_MUTEX_UNSAFE is not set +# CONFIG_PTHREAD_MUTEX_BOTH is not set +CONFIG_NPTHREAD_KEYS=4 +# CONFIG_PTHREAD_CLEANUP is not set +# CONFIG_CANCELLATION_POINTS is not set + +# +# Performance Monitoring +# +# CONFIG_SCHED_CPULOAD is not set +# CONFIG_SCHED_INSTRUMENTATION is not set + +# +# Files and I/O +# +CONFIG_DEV_CONSOLE=y +# CONFIG_FDCLONE_DISABLE is not set +# CONFIG_FDCLONE_STDIO is not set +CONFIG_SDCLONE_DISABLE=y +CONFIG_NFILE_DESCRIPTORS=8 +CONFIG_NFILE_STREAMS=8 +CONFIG_NAME_MAX=32 +# CONFIG_PRIORITY_INHERITANCE is not set + +# +# RTOS hooks +# +# CONFIG_BOARD_INITIALIZE is not set +# CONFIG_SCHED_STARTHOOK is not set +# CONFIG_SCHED_ATEXIT is not set +# CONFIG_SCHED_ONEXIT is not set +# CONFIG_SIG_EVTHREAD is not set + +# +# Signal Numbers +# +CONFIG_SIG_SIGUSR1=1 +CONFIG_SIG_SIGUSR2=2 +CONFIG_SIG_SIGALARM=3 +CONFIG_SIG_SIGCONDTIMEDOUT=16 +CONFIG_SIG_SIGWORK=17 + +# +# POSIX Message Queue Options +# +CONFIG_PREALLOC_MQ_MSGS=4 +CONFIG_MQ_MAXMSGSIZE=32 +# CONFIG_MODULE is not set + +# +# Work queue support +# +CONFIG_SCHED_WORKQUEUE=y +CONFIG_SCHED_HPWORK=y +CONFIG_SCHED_HPWORKPRIORITY=224 +CONFIG_SCHED_HPWORKPERIOD=50000 +CONFIG_SCHED_HPWORKSTACKSIZE=2048 +# CONFIG_SCHED_LPWORK is not set + +# +# Stack and heap information +# +CONFIG_IDLETHREAD_STACKSIZE=1024 +CONFIG_USERMAIN_STACKSIZE=2048 +CONFIG_PTHREAD_STACK_MIN=256 +CONFIG_PTHREAD_STACK_DEFAULT=2048 +# CONFIG_LIB_SYSCALL is not set + +# +# Device Drivers +# +CONFIG_DISABLE_POLL=y +CONFIG_DEV_NULL=y +# CONFIG_DEV_ZERO is not set +# CONFIG_DEV_URANDOM is not set +# CONFIG_DEV_LOOP is not set + +# +# Buffering +# + +# +# Common I/O Buffer Support +# +CONFIG_DRIVERS_IOB=y +CONFIG_IOB_NBUFFERS=24 +CONFIG_IOB_BUFSIZE=196 +CONFIG_IOB_NCHAINS=8 +# CONFIG_IOB_DEBUG is not set +# CONFIG_DRVR_WRITEBUFFER is not set +# CONFIG_DRVR_READAHEAD is not set +# CONFIG_RAMDISK is not set +# CONFIG_CAN is not set +# CONFIG_ARCH_HAVE_PWM_PULSECOUNT is not set +# CONFIG_ARCH_HAVE_PWM_MULTICHAN is not set +# CONFIG_PWM is not set +CONFIG_ARCH_HAVE_I2CRESET=y +# CONFIG_I2C is not set +# CONFIG_ARCH_HAVE_SPI_CRCGENERATION is not set +# CONFIG_ARCH_HAVE_SPI_CS_CONTROL is not set +CONFIG_ARCH_HAVE_SPI_BITORDER=y +# CONFIG_SPI is not set +# CONFIG_I2S is not set + +# +# Timer Driver Support +# +# CONFIG_TIMER is not set +# CONFIG_ONESHOT is not set +# CONFIG_RTC is not set +CONFIG_WATCHDOG=y +CONFIG_WATCHDOG_DEVPATH="/dev/watchdog0" +# CONFIG_ANALOG is not set +# CONFIG_AUDIO_DEVICES is not set +# CONFIG_VIDEO_DEVICES is not set +# CONFIG_BCH is not set +# CONFIG_INPUT is not set + +# +# IO Expander/GPIO Support +# +# CONFIG_IOEXPANDER is not set +# CONFIG_DEV_GPIO is not set + +# +# LCD Driver Support +# +# CONFIG_LCD is not set +# CONFIG_SLCD is not set + +# +# LED Support +# +CONFIG_USERLED=y +# CONFIG_USERLED_LOWER is not set +# CONFIG_RGBLED is not set +# CONFIG_PCA9635PW is not set +# CONFIG_NCP5623C is not set +CONFIG_MMCSD=y +CONFIG_MMCSD_NSLOTS=1 +# CONFIG_MMCSD_READONLY is not set +# CONFIG_MMCSD_MULTIBLOCK_DISABLE is not set +# CONFIG_MMCSD_MMCSUPPORT is not set +# CONFIG_MMCSD_HAVECARDDETECT is not set +CONFIG_ARCH_HAVE_SDIO=y +CONFIG_SDIO_DMA=y +CONFIG_ARCH_HAVE_SDIOWAIT_WRCOMPLETE=y +CONFIG_MMCSD_SDIO=y +CONFIG_SDIO_PREFLIGHT=y +# CONFIG_SDIO_MUXBUS is not set +# CONFIG_MMCSD_SDIOWAIT_WRCOMPLETE is not set +# CONFIG_SDIO_WIDTH_D1_ONLY is not set +CONFIG_SDIO_BLOCKSETUP=y +# CONFIG_MODEM is not set +# CONFIG_MTD is not set +# CONFIG_EEPROM is not set +CONFIG_NETDEVICES=y + +# +# General Ethernet MAC Driver Options +# +# CONFIG_NETDEV_LOOPBACK is not set +# CONFIG_NETDEV_TELNET is not set +# CONFIG_NETDEV_MULTINIC is not set +# CONFIG_ARCH_HAVE_NETDEV_STATISTICS is not set +CONFIG_NETDEV_LATEINIT=y +# CONFIG_NET_DUMPPACKET is not set + +# +# External Ethernet MAC Device Support +# +# CONFIG_NET_DM90x0 is not set +# CONFIG_NET_CS89x0 is not set +# CONFIG_ENC28J60 is not set +# CONFIG_ENCX24J600 is not set +# CONFIG_NET_SLIP is not set +# CONFIG_NET_FTMAC100 is not set +# CONFIG_PIPES is not set +# CONFIG_PM is not set +# CONFIG_POWER is not set +# CONFIG_SENSORS is not set +CONFIG_SERIAL=y +# CONFIG_DEV_LOWCONSOLE is not set +# CONFIG_SERIAL_REMOVABLE is not set +CONFIG_SERIAL_CONSOLE=y +# CONFIG_16550_UART is not set +# CONFIG_UART_SERIALDRIVER is not set +# CONFIG_UART0_SERIALDRIVER is not set +# CONFIG_UART1_SERIALDRIVER is not set +# CONFIG_UART2_SERIALDRIVER is not set +# CONFIG_UART3_SERIALDRIVER is not set +# CONFIG_UART4_SERIALDRIVER is not set +# CONFIG_UART5_SERIALDRIVER is not set +# CONFIG_UART6_SERIALDRIVER is not set +# CONFIG_UART7_SERIALDRIVER is not set +# CONFIG_UART8_SERIALDRIVER is not set +# CONFIG_SCI0_SERIALDRIVER is not set +# CONFIG_SCI1_SERIALDRIVER is not set +# CONFIG_USART0_SERIALDRIVER is not set +CONFIG_USART1_SERIALDRIVER=y +# CONFIG_USART2_SERIALDRIVER is not set +# CONFIG_USART3_SERIALDRIVER is not set +# CONFIG_USART4_SERIALDRIVER is not set +# CONFIG_USART5_SERIALDRIVER is not set +# CONFIG_USART6_SERIALDRIVER is not set +# CONFIG_USART7_SERIALDRIVER is not set +# CONFIG_USART8_SERIALDRIVER is not set +# CONFIG_OTHER_UART_SERIALDRIVER is not set +CONFIG_MCU_SERIAL=y +CONFIG_STANDARD_SERIAL=y +# CONFIG_SERIAL_IFLOWCONTROL is not set +# CONFIG_SERIAL_OFLOWCONTROL is not set +# CONFIG_SERIAL_DMA is not set +# CONFIG_SERIAL_TIOCSERGSTRUCT is not set +CONFIG_ARCH_HAVE_SERIAL_TERMIOS=y +CONFIG_USART1_SERIAL_CONSOLE=y +# CONFIG_OTHER_SERIAL_CONSOLE is not set +# CONFIG_NO_SERIAL_CONSOLE is not set + +# +# USART1 Configuration +# +CONFIG_USART1_RXBUFSIZE=256 +CONFIG_USART1_TXBUFSIZE=256 +CONFIG_USART1_BAUD=115200 +CONFIG_USART1_BITS=8 +CONFIG_USART1_PARITY=0 +CONFIG_USART1_2STOP=0 +# CONFIG_USART1_IFLOWCONTROL is not set +# CONFIG_USART1_OFLOWCONTROL is not set +# CONFIG_USART1_DMA is not set +# CONFIG_PSEUDOTERM is not set +# CONFIG_USBDEV is not set +# CONFIG_USBHOST is not set +# CONFIG_USBMISC is not set +# CONFIG_HAVE_USBTRACE is not set +CONFIG_DRIVERS_WIRELESS=y +# CONFIG_WL_CC1101 is not set +# CONFIG_WL_CC3000 is not set +# CONFIG_DRIVERS_IEEE802154 is not set +CONFIG_DRIVERS_IEEE80211=y +CONFIG_IEEE80211_BROADCOM_FULLMAC=y +CONFIG_IEEE80211_BROADCOM_BCM43362=y +CONFIG_IEEE80211_BROADCOM_FULLMAC_SDIO=y +CONFIG_IEEE80211_BROADCOM_HPWORK=y +CONFIG_IEEE80211_BROADCOM_NINTERFACES=1 +# CONFIG_WL_NRF24L01 is not set +# CONFIG_DRIVERS_CONTACTLESS is not set + +# +# System Logging +# +# CONFIG_ARCH_SYSLOG is not set +# CONFIG_RAMLOG is not set +# CONFIG_SYSLOG_INTBUFFER is not set +# CONFIG_SYSLOG_TIMESTAMP is not set +CONFIG_SYSLOG_SERIAL_CONSOLE=y +# CONFIG_SYSLOG_CHAR is not set +CONFIG_SYSLOG_CONSOLE=y +# CONFIG_SYSLOG_NONE is not set +# CONFIG_SYSLOG_FILE is not set +# CONFIG_SYSLOG_CHARDEV is not set + +# +# Networking Support +# +CONFIG_ARCH_HAVE_NET=y +# CONFIG_ARCH_HAVE_PHY is not set +CONFIG_NET=y +# CONFIG_NET_PROMISCUOUS is not set + +# +# Driver buffer configuration +# +CONFIG_NET_ETH_MTU=800 +CONFIG_NET_ETH_TCP_RECVWNDO=536 +CONFIG_NET_GUARDSIZE=32 + +# +# Data link support +# +# CONFIG_NET_MULTILINK is not set +# CONFIG_NET_USER_DEVFMT is not set +CONFIG_NET_ETHERNET=y +# CONFIG_NET_LOOPBACK is not set +# CONFIG_NET_TUN is not set +# CONFIG_NET_USRSOCK is not set + +# +# Network Device Operations +# +CONFIG_NETDEV_IOCTL=y +# CONFIG_NETDEV_PHY_IOCTL is not set +CONFIG_NETDEV_WIRELESS_IOCTL=y + +# +# Internet Protocol Selection +# +CONFIG_NET_IPv4=y +# CONFIG_NET_IPv6 is not set + +# +# Socket Support +# +CONFIG_NSOCKET_DESCRIPTORS=8 +CONFIG_NET_NACTIVESOCKETS=16 +CONFIG_NET_SOCKOPTS=y +# CONFIG_NET_SOLINGER is not set + +# +# Raw Socket Support +# +CONFIG_NET_PKT=y +CONFIG_NET_PKT_CONNS=1 + +# +# Unix Domain Socket Support +# +# CONFIG_NET_LOCAL is not set + +# +# TCP/IP Networking +# +CONFIG_NET_TCP=y +# CONFIG_NET_TCP_NO_STACK is not set +# CONFIG_NET_TCPURGDATA is not set +# CONFIG_NET_TCP_REASSEMBLY is not set +CONFIG_NET_TCP_CONNS=8 +CONFIG_NET_MAX_LISTENPORTS=20 +CONFIG_NET_TCP_READAHEAD=y +# CONFIG_NET_TCP_WRITE_BUFFERS is not set +CONFIG_NET_TCP_RECVDELAY=0 +# CONFIG_NET_TCPBACKLOG is not set +# CONFIG_NET_TCP_SPLIT is not set +# CONFIG_NET_SENDFILE is not set + +# +# UDP Networking +# +CONFIG_NET_UDP=y +# CONFIG_NET_UDP_NO_STACK is not set +# CONFIG_NET_UDP_CHECKSUMS is not set +CONFIG_NET_UDP_CONNS=8 +CONFIG_NET_BROADCAST=y +# CONFIG_NET_RXAVAIL is not set +CONFIG_NET_UDP_READAHEAD=y + +# +# ICMP Networking Support +# +CONFIG_NET_ICMP=y +# CONFIG_NET_ICMP_PING is not set + +# +# IGMPv2 Client Support +# +# CONFIG_NET_IGMP is not set + +# +# ARP Configuration +# +CONFIG_NET_ARP=y +CONFIG_NET_ARPTAB_SIZE=16 +CONFIG_NET_ARP_MAXAGE=120 +# CONFIG_NET_ARP_IPIN is not set +# CONFIG_NET_ARP_SEND is not set +# CONFIG_NET_ARP_DUMP is not set + +# +# User-space networking stack API +# +# CONFIG_NET_ARCH_INCR32 is not set +# CONFIG_NET_ARCH_CHKSUM is not set +# CONFIG_NET_STATISTICS is not set + +# +# Routing Table Configuration +# +# CONFIG_NET_ROUTE is not set +CONFIG_NET_HOSTNAME="" + +# +# Crypto API +# +# CONFIG_CRYPTO is not set + +# +# File Systems +# + +# +# File system configuration +# +# CONFIG_DISABLE_MOUNTPOINT is not set +# CONFIG_FS_AUTOMOUNTER is not set +# CONFIG_DISABLE_PSEUDOFS_OPERATIONS is not set +# CONFIG_PSEUDOFS_SOFTLINKS is not set +CONFIG_FS_READABLE=y +# CONFIG_FS_WRITABLE is not set +# CONFIG_FS_NAMED_SEMAPHORES is not set +CONFIG_FS_MQUEUE_MPATH="/var/mqueue" +# CONFIG_FS_RAMMAP is not set +# CONFIG_FS_FAT is not set +# CONFIG_NFS is not set +# CONFIG_FS_NXFFS is not set +# CONFIG_FS_ROMFS is not set +# CONFIG_FS_TMPFS is not set +# CONFIG_FS_SMARTFS is not set +# CONFIG_FS_BINFS is not set +CONFIG_FS_PROCFS=y +# CONFIG_FS_PROCFS_REGISTER is not set + +# +# Exclude individual procfs entries +# +# CONFIG_FS_PROCFS_EXCLUDE_PROCESS is not set +# CONFIG_FS_PROCFS_EXCLUDE_UPTIME is not set +# CONFIG_FS_PROCFS_EXCLUDE_MOUNTS is not set +# CONFIG_FS_PROCFS_EXCLUDE_NET is not set +# CONFIG_FS_UNIONFS is not set + +# +# Graphics Support +# +# CONFIG_NX is not set + +# +# Memory Management +# +# CONFIG_MM_SMALL is not set +CONFIG_MM_REGIONS=2 +# CONFIG_ARCH_HAVE_HEAP2 is not set +# CONFIG_GRAN is not set + +# +# Audio Support +# +# CONFIG_AUDIO is not set + +# +# Wireless Support +# +# CONFIG_WIRELESS is not set + +# +# Binary Loader +# +# CONFIG_BINFMT_DISABLE is not set +# CONFIG_BINFMT_EXEPATH is not set +# CONFIG_NXFLAT is not set +# CONFIG_ELF is not set +CONFIG_BUILTIN=y +# CONFIG_PIC is not set +# CONFIG_SYMTAB_ORDEREDBYNAME is not set + +# +# Library Routines +# + +# +# Standard C Library Options +# + +# +# Standard C I/O +# +# CONFIG_STDIO_DISABLE_BUFFERING is not set +CONFIG_STDIO_BUFFER_SIZE=64 +CONFIG_STDIO_LINEBUFFER=y +CONFIG_NUNGET_CHARS=2 +# CONFIG_NOPRINTF_FIELDWIDTH is not set +# CONFIG_LIBC_FLOATINGPOINT is not set +CONFIG_LIBC_LONG_LONG=y +# CONFIG_LIBC_SCANSET is not set +# CONFIG_EOL_IS_CR is not set +# CONFIG_EOL_IS_LF is not set +# CONFIG_EOL_IS_BOTH_CRLF is not set +CONFIG_EOL_IS_EITHER_CRLF=y +# CONFIG_MEMCPY_VIK is not set +CONFIG_LIBM=y + +# +# Architecture-Specific Support +# +CONFIG_ARCH_LOWPUTC=y +# CONFIG_ARCH_ROMGETC is not set +# CONFIG_LIBC_ARCH_MEMCPY is not set +# CONFIG_LIBC_ARCH_MEMCMP is not set +# CONFIG_LIBC_ARCH_MEMMOVE is not set +# CONFIG_LIBC_ARCH_MEMSET is not set +# CONFIG_LIBC_ARCH_STRCHR is not set +# CONFIG_LIBC_ARCH_STRCMP is not set +# CONFIG_LIBC_ARCH_STRCPY is not set +# CONFIG_LIBC_ARCH_STRNCPY is not set +# CONFIG_LIBC_ARCH_STRLEN is not set +# CONFIG_LIBC_ARCH_STRNLEN is not set +# CONFIG_LIBC_ARCH_ELF is not set +# CONFIG_ARMV7M_MEMCPY is not set + +# +# stdlib Options +# +CONFIG_LIB_RAND_ORDER=1 +CONFIG_LIB_HOMEDIR="/" + +# +# Program Execution Options +# +# CONFIG_LIBC_EXECFUNCS is not set +CONFIG_POSIX_SPAWN_PROXY_STACKSIZE=1024 +CONFIG_TASK_SPAWN_DEFAULT_STACKSIZE=2048 + +# +# errno Decode Support +# +# CONFIG_LIBC_STRERROR is not set +# CONFIG_LIBC_PERROR_STDOUT is not set + +# +# memcpy/memset Options +# +# CONFIG_MEMSET_OPTSPEED is not set +# CONFIG_LIBC_DLLFCN is not set +# CONFIG_LIBC_MODLIB is not set +# CONFIG_LIBC_WCHAR is not set +# CONFIG_LIBC_LOCALE is not set + +# +# Time/Time Zone Support +# +# CONFIG_LIBC_LOCALTIME is not set +# CONFIG_TIME_EXTENDED is not set +CONFIG_ARCH_HAVE_TLS=y + +# +# Thread Local Storage (TLS) +# +# CONFIG_TLS is not set + +# +# Network-Related Options +# +# CONFIG_LIBC_IPv6_ADDRCONV is not set +CONFIG_LIBC_NETDB=y + +# +# NETDB Support +# +# CONFIG_NETDB_HOSTFILE is not set +CONFIG_NETDB_DNSCLIENT=y +CONFIG_NETDB_DNSCLIENT_ENTRIES=8 +CONFIG_NETDB_DNSCLIENT_NAMESIZE=32 +CONFIG_NETDB_DNSCLIENT_LIFESEC=3600 +CONFIG_NETDB_DNSCLIENT_MAXRESPONSE=96 +# CONFIG_NETDB_RESOLVCONF is not set +# CONFIG_NETDB_DNSSERVER_NOADDR is not set +CONFIG_NETDB_DNSSERVER_IPv4=y +CONFIG_NETDB_DNSSERVER_IPv4ADDR=0x0a000001 +# CONFIG_LIBC_IOCTL_VARIADIC is not set +CONFIG_LIB_SENDFILE_BUFSIZE=512 + +# +# Non-standard Library Support +# +# CONFIG_LIB_CRC64_FAST is not set +# CONFIG_LIB_KBDCODEC is not set +# CONFIG_LIB_SLCDCODEC is not set +# CONFIG_LIB_HEX2BIN is not set + +# +# Basic CXX Support +# +# CONFIG_C99_BOOL8 is not set +CONFIG_HAVE_CXX=y +CONFIG_HAVE_CXXINITIALIZE=y +# CONFIG_CXX_NEWLONG is not set + +# +# LLVM C++ Library (libcxx) +# +# CONFIG_LIBCXX is not set + +# +# uClibc++ Standard C++ Library +# +# CONFIG_UCLIBCXX is not set + +# +# Application Configuration +# + +# +# Built-In Applications +# +CONFIG_BUILTIN_PROXY_STACKSIZE=1024 + +# +# CAN Utilities +# + +# +# Examples +# +# CONFIG_EXAMPLES_BUTTONS is not set +# CONFIG_EXAMPLES_CCTYPE is not set +# CONFIG_EXAMPLES_CHAT is not set +# CONFIG_EXAMPLES_CONFIGDATA is not set +# CONFIG_EXAMPLES_CXXTEST is not set +# CONFIG_EXAMPLES_DHCPD is not set +# CONFIG_EXAMPLES_DISCOVER is not set +# CONFIG_EXAMPLES_ELF is not set +# CONFIG_EXAMPLES_FTPC is not set +# CONFIG_EXAMPLES_FTPD is not set +# CONFIG_EXAMPLES_HELLO is not set +# CONFIG_EXAMPLES_HELLOXX is not set +# CONFIG_EXAMPLES_HIDKBD is not set +# CONFIG_EXAMPLES_IGMP is not set +# CONFIG_EXAMPLES_JSON is not set +# CONFIG_EXAMPLES_KEYPADTEST is not set +# CONFIG_EXAMPLES_LEDS is not set +# CONFIG_EXAMPLES_MEDIA is not set +# CONFIG_EXAMPLES_MM is not set +# CONFIG_EXAMPLES_MODBUS is not set +# CONFIG_EXAMPLES_MOUNT is not set +# CONFIG_EXAMPLES_NETPKT is not set +# CONFIG_EXAMPLES_NETTEST is not set +# CONFIG_EXAMPLES_NRF24L01TERM is not set +CONFIG_EXAMPLES_NSH=y +# CONFIG_EXAMPLES_NSH_CXXINITIALIZE is not set +# CONFIG_EXAMPLES_NULL is not set +# CONFIG_EXAMPLES_NX is not set +# CONFIG_EXAMPLES_NXFFS is not set +# CONFIG_EXAMPLES_NXHELLO is not set +# CONFIG_EXAMPLES_NXIMAGE is not set +# CONFIG_EXAMPLES_NXLINES is not set +# CONFIG_EXAMPLES_NXTERM is not set +# CONFIG_EXAMPLES_NXTEXT is not set +# CONFIG_EXAMPLES_OSTEST is not set +# CONFIG_EXAMPLES_PCA9635 is not set +# CONFIG_EXAMPLES_POSIXSPAWN is not set +# CONFIG_EXAMPLES_PPPD is not set +# CONFIG_EXAMPLES_RFID_READUID is not set +# CONFIG_EXAMPLES_RGBLED is not set +# CONFIG_EXAMPLES_SENDMAIL is not set +# CONFIG_EXAMPLES_SERIALBLASTER is not set +# CONFIG_EXAMPLES_SERIALRX is not set +# CONFIG_EXAMPLES_SERLOOP is not set +# CONFIG_EXAMPLES_SLCD is not set +# CONFIG_EXAMPLES_SMART is not set +# CONFIG_EXAMPLES_SMART_TEST is not set +# CONFIG_EXAMPLES_SMP is not set +# CONFIG_EXAMPLES_STAT is not set +# CONFIG_EXAMPLES_TCPECHO is not set +# CONFIG_EXAMPLES_TELNETD is not set +# CONFIG_EXAMPLES_TIFF is not set +# CONFIG_EXAMPLES_TOUCHSCREEN is not set +# CONFIG_EXAMPLES_UDP is not set +# CONFIG_EXAMPLES_UDPBLASTER is not set +# CONFIG_EXAMPLES_USBSERIAL is not set +# CONFIG_EXAMPLES_WATCHDOG is not set +# CONFIG_EXAMPLES_WEBSERVER is not set +# CONFIG_EXAMPLES_XBC_TEST is not set + +# +# File System Utilities +# +# CONFIG_FSUTILS_INIFILE is not set +# CONFIG_FSUTILS_PASSWD is not set + +# +# GPS Utilities +# +# CONFIG_GPSUTILS_MINMEA_LIB is not set + +# +# Graphics Support +# +# CONFIG_TIFF is not set +# CONFIG_GRAPHICS_TRAVELER is not set + +# +# Interpreters +# +# CONFIG_INTERPRETERS_BAS is not set +# CONFIG_INTERPRETERS_FICL is not set +# CONFIG_INTERPRETERS_MICROPYTHON is not set +# CONFIG_INTERPRETERS_MINIBASIC is not set +# CONFIG_INTERPRETERS_PCODE is not set + +# +# FreeModBus +# +# CONFIG_MODBUS is not set + +# +# Network Utilities +# +# CONFIG_NETUTILS_CODECS is not set +CONFIG_NETUTILS_DHCPC=y +CONFIG_NETUTILS_DHCPC_DEVNAME="wlan0" +# CONFIG_NETUTILS_DHCPD is not set +# CONFIG_NETUTILS_DISCOVER is not set +# CONFIG_NETUTILS_ESP8266 is not set +# CONFIG_NETUTILS_FTPC is not set +# CONFIG_NETUTILS_JSON is not set +CONFIG_NETUTILS_NETLIB=y +# CONFIG_NETUTILS_NTPCLIENT is not set +CONFIG_NETUTILS_PING=y +CONFIG_NETUTILS_PING_SIGNO=13 +# CONFIG_NETUTILS_PPPD is not set +# CONFIG_NETUTILS_SMTP is not set +# CONFIG_NETUTILS_TELNETD is not set +# CONFIG_NETUTILS_TFTPC is not set +# CONFIG_NETUTILS_WEBCLIENT is not set +# CONFIG_NETUTILS_WEBSERVER is not set +# CONFIG_NETUTILS_XMLRPC is not set + +# +# NSH Library +# +CONFIG_NSH_LIBRARY=y +# CONFIG_NSH_MOTD is not set + +# +# Command Line Configuration +# +CONFIG_NSH_READLINE=y +# CONFIG_NSH_CLE is not set +CONFIG_NSH_LINELEN=64 +# CONFIG_NSH_DISABLE_SEMICOLON is not set +# CONFIG_NSH_CMDPARMS is not set +CONFIG_NSH_MAXARGUMENTS=6 +# CONFIG_NSH_ARGCAT is not set +CONFIG_NSH_NESTDEPTH=3 +# CONFIG_NSH_DISABLEBG is not set +CONFIG_NSH_BUILTIN_APPS=y + +# +# Disable Individual commands +# +# CONFIG_NSH_DISABLE_ADDROUTE is not set +# CONFIG_NSH_DISABLE_ARP is not set +# CONFIG_NSH_DISABLE_BASENAME is not set +# CONFIG_NSH_DISABLE_CAT is not set +# CONFIG_NSH_DISABLE_CD is not set +# CONFIG_NSH_DISABLE_CP is not set +# CONFIG_NSH_DISABLE_CMP is not set +CONFIG_NSH_DISABLE_DATE=y +# CONFIG_NSH_DISABLE_DD is not set +# CONFIG_NSH_DISABLE_DF is not set +# CONFIG_NSH_DISABLE_DELROUTE is not set +# CONFIG_NSH_DISABLE_DIRNAME is not set +# CONFIG_NSH_DISABLE_ECHO is not set +# CONFIG_NSH_DISABLE_EXEC is not set +# CONFIG_NSH_DISABLE_EXIT is not set +# CONFIG_NSH_DISABLE_FREE is not set +# CONFIG_NSH_DISABLE_GET is not set +# CONFIG_NSH_DISABLE_HELP is not set +# CONFIG_NSH_DISABLE_HEXDUMP is not set +# CONFIG_NSH_DISABLE_IFCONFIG is not set +# CONFIG_NSH_DISABLE_IFUPDOWN is not set +# CONFIG_NSH_DISABLE_KILL is not set +# CONFIG_NSH_DISABLE_LOSETUP is not set +CONFIG_NSH_DISABLE_LOSMART=y +# CONFIG_NSH_DISABLE_LS is not set +# CONFIG_NSH_DISABLE_MB is not set +# CONFIG_NSH_DISABLE_MKDIR is not set +# CONFIG_NSH_DISABLE_MKRD is not set +# CONFIG_NSH_DISABLE_MH is not set +# CONFIG_NSH_DISABLE_MOUNT is not set +# CONFIG_NSH_DISABLE_MV is not set +# CONFIG_NSH_DISABLE_MW is not set +# CONFIG_NSH_DISABLE_NSLOOKUP is not set +CONFIG_NSH_DISABLE_PRINTF=y +# CONFIG_NSH_DISABLE_PS is not set +# CONFIG_NSH_DISABLE_PING is not set +# CONFIG_NSH_DISABLE_PUT is not set +# CONFIG_NSH_DISABLE_PWD is not set +# CONFIG_NSH_DISABLE_RM is not set +# CONFIG_NSH_DISABLE_RMDIR is not set +# CONFIG_NSH_DISABLE_SET is not set +# CONFIG_NSH_DISABLE_SH is not set +# CONFIG_NSH_DISABLE_SLEEP is not set +# CONFIG_NSH_DISABLE_TIME is not set +# CONFIG_NSH_DISABLE_TEST is not set +# CONFIG_NSH_DISABLE_UMOUNT is not set +# CONFIG_NSH_DISABLE_UNAME is not set +# CONFIG_NSH_DISABLE_UNSET is not set +# CONFIG_NSH_DISABLE_USLEEP is not set +# CONFIG_NSH_DISABLE_WGET is not set +# CONFIG_NSH_DISABLE_XD is not set +CONFIG_NSH_MMCSDMINOR=0 +CONFIG_NSH_MMCSDSLOTNO=0 + +# +# Configure Command Options +# +# CONFIG_NSH_CMDOPT_DF_H is not set +# CONFIG_NSH_CMDOPT_DD_STATS is not set +CONFIG_NSH_CODECS_BUFSIZE=128 +# CONFIG_NSH_CMDOPT_HEXDUMP is not set +CONFIG_NSH_PROC_MOUNTPOINT="/proc" +CONFIG_NSH_FILEIOSIZE=512 + +# +# Scripting Support +# +# CONFIG_NSH_DISABLESCRIPT is not set +# CONFIG_NSH_DISABLE_ITEF is not set +# CONFIG_NSH_DISABLE_LOOPS is not set + +# +# Console Configuration +# +CONFIG_NSH_CONSOLE=y +# CONFIG_NSH_ALTCONDEV is not set +CONFIG_NSH_ARCHINIT=y + +# +# Networking Configuration +# +CONFIG_NSH_NETINIT=y +# CONFIG_NSH_NETINIT_THREAD is not set +# CONFIG_NSH_NETINIT_DEBUG is not set + +# +# IP Address Configuration +# +CONFIG_NSH_DHCPC=y + +# +# IPv4 Addresses +# +CONFIG_NSH_DRIPADDR=0xc0a80001 +CONFIG_NSH_NETMASK=0xffffff00 +# CONFIG_NSH_DNS is not set +# CONFIG_NSH_NOMAC is not set +CONFIG_NSH_MAX_ROUNDTRIP=20 +# CONFIG_NSH_LOGIN is not set +# CONFIG_NSH_CONSOLE_LOGIN is not set + +# +# NxWidgets/NxWM +# + +# +# Platform-specific Support +# +# CONFIG_PLATFORM_CONFIGDATA is not set + +# +# System Libraries and NSH Add-Ons +# +# CONFIG_SYSTEM_CLE is not set +# CONFIG_SYSTEM_CUTERM is not set +# CONFIG_SYSTEM_FREE is not set +# CONFIG_SYSTEM_HEX2BIN is not set +# CONFIG_SYSTEM_HEXED is not set +# CONFIG_SYSTEM_INSTALL is not set +# CONFIG_SYSTEM_NETDB is not set +# CONFIG_SYSTEM_RAMTEST is not set +CONFIG_READLINE_HAVE_EXTMATCH=y +CONFIG_SYSTEM_READLINE=y +CONFIG_READLINE_ECHO=y +# CONFIG_READLINE_TABCOMPLETION is not set +# CONFIG_READLINE_CMD_HISTORY is not set +# CONFIG_SYSTEM_SUDOKU is not set +# CONFIG_SYSTEM_SYSTEM is not set +# CONFIG_SYSTEM_TEE is not set +# CONFIG_SYSTEM_UBLOXMODEM is not set +# CONFIG_SYSTEM_VI is not set +# CONFIG_SYSTEM_ZMODEM is not set + +# +# Wireless Libraries and NSH Add-Ons +# +CONFIG_WIRELESS_WAPI=y +CONFIG_WIRELESS_WAPI_CMDTOOL=y +CONFIG_WIRELESS_WAPI_STACKSIZE=2048 +CONFIG_WIRELESS_WAPI_PRIORITY=100 +CONFIG_WIRELESS_WEXT=y diff --git a/drivers/analog/Kconfig b/drivers/analog/Kconfig index 6727f67c47c..64fa435f4d6 100644 --- a/drivers/analog/Kconfig +++ b/drivers/analog/Kconfig @@ -141,3 +141,9 @@ config DAC_AD5410 select SPI endif # DAC + +config OPAMP + bool "Operational Amplifier" + default n + ---help--- + Select to enable support for Operational Amplifiers (OPAMPs). diff --git a/drivers/analog/Make.defs b/drivers/analog/Make.defs index 01d5a2fe8e2..69d10a638de 100644 --- a/drivers/analog/Make.defs +++ b/drivers/analog/Make.defs @@ -60,6 +60,16 @@ CSRCS += comp.c endif +# Check for OPAMP devices + +ifeq ($(CONFIG_OPAMP),y) + +# Include the common OPAMP character driver + +CSRCS += opamp.c + +endif + # Check for ADC devices ifeq ($(CONFIG_ADC),y) @@ -105,6 +115,13 @@ ifeq ($(CONFIG_COMP),y) DEPPATH += --dep-path analog VPATH += :analog CFLAGS += ${shell $(INCDIR) $(INCDIROPT) "$(CC)" $(TOPDIR)$(DELIM)drivers$(DELIM)analog} +else +ifeq ($(CONFIG_OPAMP),y) + DEPPATH += --dep-path analog + VPATH += :analog + CFLAGS += ${shell $(INCDIR) $(INCDIROPT) "$(CC)" $(TOPDIR)$(DELIM)drivers$(DELIM)analog} endif endif endif +endif + diff --git a/drivers/analog/opamp.c b/drivers/analog/opamp.c new file mode 100644 index 00000000000..666b19a8ceb --- /dev/null +++ b/drivers/analog/opamp.c @@ -0,0 +1,243 @@ +/**************************************************************************** + * drivers/analog/opamp.c + * + * Copyright (C) 2017 Gregory Nutt. All rights reserved. + * Author: Mateusz Szafoni + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + +/**************************************************************************** + * Included Files + ****************************************************************************/ + +#include + +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include + +#include + +/**************************************************************************** + * Private Function Prototypes + ****************************************************************************/ + +static int opamp_open(FAR struct file *filep); +static int opamp_close(FAR struct file *filep); +static int opamp_ioctl(FAR struct file *filep, int cmd, unsigned long arg); + +/**************************************************************************** + * Private Data + ****************************************************************************/ + +static const struct file_operations opamp_fops = +{ + opamp_open, /* open */ + opamp_close, /* close */ + NULL, /* read */ + NULL, /* write */ + NULL, /* seek */ + opamp_ioctl /* ioctl */ +#ifndef CONFIG_DISABLE_POLL + , NULL /* poll */ +#endif +#ifndef CONFIG_DISABLE_PSEUDOFS_OPERATIONS + , NULL /* unlink */ +#endif +}; + +/**************************************************************************** + * Private Functions + ****************************************************************************/ +/**************************************************************************** + * Name: opamp_open + * + * Description: + * This function is called whenever the OPAMP device is opened. + * + ****************************************************************************/ + +static int opamp_open(FAR struct file *filep) +{ + FAR struct inode *inode = filep->f_inode; + FAR struct opamp_dev_s *dev = inode->i_private; + uint8_t tmp; + int ret = OK; + + /* If the port is the middle of closing, wait until the close is finished */ + + if (sem_wait(&dev->ad_closesem) != OK) + { + ret = -errno; + } + else + { + /* Increment the count of references to the device. If this the first + * time that the driver has been opened for this device, then initialize + * the device. + */ + + tmp = dev->ad_ocount + 1; + if (tmp == 0) + { + /* More than 255 opens; uint8_t overflows to zero */ + + ret = -EMFILE; + } + else + { + /* Check if this is the first time that the driver has been opened. */ + + if (tmp == 1) + { + /* Yes.. perform one time hardware initialization. */ + + irqstate_t flags = enter_critical_section(); + ret = dev->ad_ops->ao_setup(dev); + if (ret == OK) + { + /* Save the new open count on success */ + + dev->ad_ocount = tmp; + } + + leave_critical_section(flags); + } + } + + sem_post(&dev->ad_closesem); + } + + return ret; +} + +/**************************************************************************** + * Name: opamp_close + * + * Description: + * This routine is called when the OPAMP device is closed. + * It waits for the last remaining data to be sent. + * + ****************************************************************************/ + +static int opamp_close(FAR struct file *filep) +{ + FAR struct inode *inode = filep->f_inode; + FAR struct opamp_dev_s *dev = inode->i_private; + irqstate_t flags; + int ret = OK; + + if (sem_wait(&dev->ad_closesem) != OK) + { + ret = -errno; + } + else + { + /* Decrement the references to the driver. If the reference count will + * decrement to 0, then uninitialize the driver. + */ + + if (dev->ad_ocount > 1) + { + dev->ad_ocount--; + sem_post(&dev->ad_closesem); + } + else + { + /* There are no more references to the port */ + + dev->ad_ocount = 0; + + /* Free the IRQ and disable the OPAMP device */ + + flags = enter_critical_section(); /* Disable interrupts */ + dev->ad_ops->ao_shutdown(dev); /* Disable the OPAMP */ + leave_critical_section(flags); + + sem_post(&dev->ad_closesem); + } + } + + return ret; +} + +/**************************************************************************** + * Name: opamp_ioctl +****************************************************************************/ + +static int opamp_ioctl(FAR struct file *filep, int cmd, unsigned long arg) +{ + FAR struct inode *inode = filep->f_inode; + FAR struct opamp_dev_s *dev = inode->i_private; + int ret; + + ret = dev->ad_ops->ao_ioctl(dev, cmd, arg); + return ret; +} + +/**************************************************************************** + * Public Functions + ****************************************************************************/ + +/**************************************************************************** + * Name: opamp_register + ****************************************************************************/ + +int opamp_register(FAR const char *path, FAR struct opamp_dev_s *dev) +{ + int ret; + + /* Initialize the OPAMP device structure */ + + dev->ad_ocount = 0; + + /* Initialize semaphores */ + + sem_init(&dev->ad_closesem, 0, 1); + + /* Register the OPAMP character driver */ + + ret = register_driver(path, &opamp_fops, 0444, dev); + if (ret < 0) + { + sem_destroy(&dev->ad_closesem); + } + + return ret; +} diff --git a/drivers/wireless/ieee80211/Kconfig b/drivers/wireless/ieee80211/Kconfig index ec3952c1291..853b870b9c5 100644 --- a/drivers/wireless/ieee80211/Kconfig +++ b/drivers/wireless/ieee80211/Kconfig @@ -8,6 +8,11 @@ if DRIVERS_IEEE80211 config IEEE80211_BROADCOM_FULLMAC bool +config IEEE80211_BROADCOM_BCM43362 + bool "Broadcom 43362 chip support" + depends on IEEE80211_BROADCOM_FULLMAC + default n + config IEEE80211_BROADCOM_FULLMAC_SDIO bool "Broadcom FullMAC driver on SDIO bus" depends on ARCH_HAVE_SDIO @@ -17,4 +22,33 @@ config IEEE80211_BROADCOM_FULLMAC_SDIO This selection enables support for broadcom FullMAC-compliant devices using SDIO bus. +if IEEE80211_BROADCOM_FULLMAC + +choice + prompt "Broadcom FullMAC driver work queue" + default IEEE80211_BROADCOM_LPWORK if SCHED_LPWORK + default IEEE80211_BROADCOM_HPWORK if !SCHED_LPWORK && SCHED_HPWORK + depends on SCHED_WORKQUEUE + ---help--- + Work queue support is required to use the loopback driver. If the + low priority work queue is available, then it should be used by the + loopback driver. + +config IEEE80211_BROADCOM_HPWORK + bool "High priority" + depends on SCHED_HPWORK + +config IEEE80211_BROADCOM_LPWORK + bool "Low priority" + depends on SCHED_LPWORK + +endchoice # Work queue + +config IEEE80211_BROADCOM_NINTERFACES + int "Number of Broadcom FullMAC interfaces" + default 1 + depends on EXPERIMENTAL + +endif # IEEE80211_BROADCOM_FULLMAC + endif # DRIVERS_IEEE80211 diff --git a/drivers/wireless/ieee80211/Make.defs b/drivers/wireless/ieee80211/Make.defs index 712ce5d1dac..a648f70a932 100644 --- a/drivers/wireless/ieee80211/Make.defs +++ b/drivers/wireless/ieee80211/Make.defs @@ -40,10 +40,26 @@ ifeq ($(CONFIG_DRIVERS_IEEE80211),y) # Include IEEE 802.11 drivers into the build +ifeq ($(CONFIG_IEEE80211_BROADCOM_FULLMAC),y) + CSRCS += bcmf_driver.c + CSRCS += bcmf_cdc.c + CSRCS += bcmf_bdc.c + CSRCS += bcmf_utils.c + CSRCS += bcmf_netdev.c + ifeq ($(CONFIG_IEEE80211_BROADCOM_FULLMAC_SDIO),y) + CSRCS += mmc_sdio.c CSRCS += bcmf_sdio.c + CSRCS += bcmf_core.c + CSRCS += bcmf_sdpcm.c endif +ifeq ($(CONFIG_IEEE80211_BROADCOM_BCM43362),y) +CSRCS += bcmf_chip_43362.c +endif + +endif # CONFIG_IEEE80211_BROADCOM_FULLMAC + # Include IEEE 802.11 build support DEPPATH += --dep-path wireless$(DELIM)ieee80211 diff --git a/drivers/wireless/ieee80211/bcmf_bdc.c b/drivers/wireless/ieee80211/bcmf_bdc.c new file mode 100644 index 00000000000..509106fdc14 --- /dev/null +++ b/drivers/wireless/ieee80211/bcmf_bdc.c @@ -0,0 +1,277 @@ +/**************************************************************************** + * drivers/wireless/ieee80211/bcmf_bdc.c + * + * Copyright (C) 2017 Gregory Nutt. All rights reserved. + * Author: Simon Piriou + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + +/**************************************************************************** + * Included Files + ****************************************************************************/ + +#include +#include + +#include +#include +#include + +#include + +#include "bcmf_driver.h" +#include "bcmf_ioctl.h" +#include "bcmf_cdc.h" +#include "bcmf_bdc.h" +#include "bcmf_utils.h" + +/**************************************************************************** + * Pre-processor Definitions + ****************************************************************************/ + +#define BCMF_EVENT_ETHER_TYPE 0x6C88 /* Ether type of event frames */ + +/**************************************************************************** + * Private Types + ****************************************************************************/ + +struct __attribute__((packed)) bcmf_bdc_header +{ + uint8_t flags; /* bdc frame flags */ + uint8_t priority; /* bdc frame priority */ + uint8_t flags2; /* bdc frame additionnal flags */ + uint8_t data_offset; /* Offset from end of header to payload data */ +}; + +struct __attribute__((packed)) bcmf_eth_header +{ + uint16_t type; /* Vendor specific type */ + uint16_t len; /* Event data length */ + uint8_t version; /* Protocol version */ + uint8_t oui[3]; /* Organizationally unique identifier */ + uint16_t usr_type; /* User specific type */ +}; + +struct __attribute__((packed)) bcmf_event_msg +{ + struct ether_header eth; + struct bcmf_eth_header bcm_eth; + struct bcmf_event_s event; + uint8_t data[0]; +}; + +/**************************************************************************** + * Private Data + ****************************************************************************/ + +static const uint8_t bcmf_broadcom_oui[] = {0x00, 0x10, 0x18}; + +/**************************************************************************** + * Public Functions + ****************************************************************************/ + +struct bcmf_frame_s *bcmf_bdc_allocate_frame(FAR struct bcmf_dev_s *priv, + uint32_t len, bool block) +{ + struct bcmf_frame_s *frame; + + /* Allocate data frame */ + + // TODO check for integer overflow + frame = priv->bus->allocate_frame(priv, + sizeof(struct bcmf_bdc_header) + len, block, false); + + if (!frame) + { + return NULL; + } + + frame->data += sizeof(struct bcmf_bdc_header); + + return frame; +} + +int bcmf_bdc_process_event_frame(FAR struct bcmf_dev_s *priv, + struct bcmf_frame_s *frame) +{ + int data_size; + struct bcmf_bdc_header *header; + struct bcmf_event_msg *event_msg; + uint32_t event_id; + event_handler_t handler; + + /* Check frame header */ + + data_size = frame->len - (int)(frame->data - frame->base); + + if (data_size < sizeof(struct bcmf_bdc_header)) + { + goto exit_invalid_frame; + } + + header = (struct bcmf_bdc_header *)frame->data; + + data_size -= sizeof(struct bcmf_bdc_header) + header->data_offset; + + if (data_size < sizeof(struct bcmf_event_msg)) + { + goto exit_invalid_frame; + } + + data_size -= sizeof(struct ether_header) + sizeof(struct bcmf_eth_header); + + /* Check ethernet header */ + + event_msg = (struct bcmf_event_msg *)(frame->data + + sizeof(struct bcmf_bdc_header) + + header->data_offset); + + if (event_msg->eth.ether_type != BCMF_EVENT_ETHER_TYPE || + memcmp(event_msg->bcm_eth.oui, bcmf_broadcom_oui, 3)) + { + goto exit_invalid_frame; + } + + event_id = bcmf_getle32(&event_msg->event.type); + + if (event_id >= BCMF_EVENT_COUNT) + { + wlinfo("Invalid event id %d\n", event_id); + return -EINVAL; + } + + /* Dispatch event to registered handler */ + + handler = priv->event_handlers[event_id]; + if (handler != NULL) + { + handler(priv, &event_msg->event, data_size); + } + + return OK; + +exit_invalid_frame: + wlerr("Invalid event frame\n"); + bcmf_hexdump(frame->base, frame->len, (unsigned long)frame->base); + return -EINVAL; +} + +int bcmf_event_register(FAR struct bcmf_dev_s *priv, event_handler_t handler, + unsigned int event_id) +{ + if (event_id >= BCMF_EVENT_COUNT) + { + /* Invalid event id */ + + return -EINVAL; + } + + priv->event_handlers[event_id] = handler; + return OK; +} + +int bcmf_event_unregister(FAR struct bcmf_dev_s *priv, + unsigned int event_id) +{ + return bcmf_event_register(priv, NULL, event_id); +} + +int bcmf_event_push_config(FAR struct bcmf_dev_s *priv) +{ + int i; + uint32_t out_len; + uint8_t event_mask[(BCMF_EVENT_COUNT + 7) >> 3]; + + memset(event_mask, 0, sizeof(event_mask)); + + for (i = 0; i < BCMF_EVENT_COUNT; i++) + { + if (priv->event_handlers[i] != NULL) + { + event_mask[i >> 3] |= 1 << (i & 0x7); + } + } + + /* Send event mask to chip */ + + out_len = sizeof(event_mask); + if (bcmf_cdc_iovar_request(priv, CHIP_STA_INTERFACE, true, + IOVAR_STR_EVENT_MSGS, event_mask, + &out_len)) + { + return -EIO; + } + + return OK; +} + +int bcmf_bdc_transmit_frame(FAR struct bcmf_dev_s *priv, + struct bcmf_frame_s *frame) +{ + struct bcmf_bdc_header *header; + + /* Set frame data for lower layer */ + + frame->data -= sizeof(struct bcmf_bdc_header); + header = (struct bcmf_bdc_header *)frame->data; + + /* Setup data frame header */ + + header->flags = 0x20; /* Set bdc protocol version */ + header->priority = 0; // TODO handle priority + header->flags2 = CHIP_STA_INTERFACE; + header->data_offset = 0; + + /* Send frame */ + + return priv->bus->txframe(priv, frame, false); +} + +struct bcmf_frame_s *bcmf_bdc_rx_frame(FAR struct bcmf_dev_s *priv) +{ + unsigned int frame_len; + struct bcmf_frame_s *frame = priv->bus->rxframe(priv); + + /* Process bdc header */ + + frame_len = frame->len - (unsigned int)(frame->data - frame->base); + + if (frame_len < sizeof(struct bcmf_bdc_header)) + { + wlerr("Data frame too small\n"); + priv->bus->free_frame(priv, frame); + return NULL; + } + + /* Transmit frame to upper layer */ + + frame->data += sizeof(struct bcmf_bdc_header); + return frame; +} diff --git a/drivers/wireless/ieee80211/bcmf_bdc.h b/drivers/wireless/ieee80211/bcmf_bdc.h new file mode 100644 index 00000000000..37d9225b5e9 --- /dev/null +++ b/drivers/wireless/ieee80211/bcmf_bdc.h @@ -0,0 +1,96 @@ +/**************************************************************************** + * drivers/wireless/ieee80211/bcmf_bdc.h + * + * Copyright (C) 2017 Gregory Nutt. All rights reserved. + * Author: Simon Piriou + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + +/**************************************************************************** + * Included Files + ****************************************************************************/ + +#ifndef __DRIVERS_WIRELESS_IEEE80211_BCMF_BDC_H +#define __DRIVERS_WIRELESS_IEEE80211_BCMF_BDC_H + +#include "bcmf_driver.h" + +/* Event frame content */ + +struct __attribute__((packed)) bcmf_event_s +{ + uint16_t version; /* Vendor specific type */ + uint16_t flags; + uint32_t type; /* Id of received event */ + uint32_t status; /* Event status code */ + uint32_t reason; /* Reason code */ + uint32_t auth_type; + uint32_t len; /* Data size following this header */ + struct ether_addr addr; /* AP MAC address */ + char src_name[16]; /* Event source interface name */ + uint8_t dst_id; /* Event destination interface id */ + uint8_t bss_cfg_id; +}; + +/* Event callback handler */ + +typedef void (*event_handler_t)(FAR struct bcmf_dev_s *priv, + struct bcmf_event_s *event, unsigned int len); + +/**************************************************************************** + * Public Function Prototypes + ****************************************************************************/ + +/* Function called from lower layer */ + +int bcmf_bdc_process_event_frame(FAR struct bcmf_dev_s *priv, + struct bcmf_frame_s *frame); + +/* Function called from upper layer */ + +struct bcmf_frame_s *bcmf_bdc_allocate_frame(FAR struct bcmf_dev_s *priv, + uint32_t len, bool block); + +int bcmf_bdc_transmit_frame(FAR struct bcmf_dev_s *priv, + struct bcmf_frame_s *frame); + +struct bcmf_frame_s *bcmf_bdc_rx_frame(FAR struct bcmf_dev_s *priv); + +/* Event frames API */ + +int bcmf_event_register(FAR struct bcmf_dev_s *priv, event_handler_t handler, + unsigned int event_id); + +int bcmf_event_unregister(FAR struct bcmf_dev_s *priv, + unsigned int event_id); + +int bcmf_event_push_config(FAR struct bcmf_dev_s *priv); + +#endif /* __DRIVERS_WIRELESS_IEEE80211_BCMF_BDC_H */ \ No newline at end of file diff --git a/drivers/wireless/ieee80211/bcmf_cdc.c b/drivers/wireless/ieee80211/bcmf_cdc.c new file mode 100644 index 00000000000..ca1f00c01f2 --- /dev/null +++ b/drivers/wireless/ieee80211/bcmf_cdc.c @@ -0,0 +1,330 @@ +/**************************************************************************** + * drivers/wireless/ieee80211/bcmf_cdc.c + * + * Copyright (C) 2017 Gregory Nutt. All rights reserved. + * Author: Simon Piriou + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + +/**************************************************************************** + * Included Files + ****************************************************************************/ + +#include +#include + +#include +#include + +#include +#include +#include +#include + +#include "bcmf_driver.h" +#include "bcmf_ioctl.h" +#include "bcmf_utils.h" + +/**************************************************************************** + * Pre-processor Definitions + ****************************************************************************/ + +/* Control header flags */ + +#define BCMF_CONTROL_ERROR 0x01 /* Command failure flag */ +#define BCMF_CONTROL_SET 0x02 /* Command type: SET = 1, GET = 0 */ +#define BCMF_CONTROL_INTERFACE_SHIFT 12 +#define BCMF_CONTROL_REQID_SHIFT 16 + +#define BCMF_CONTROL_TIMEOUT_MS 1000 + +/**************************************************************************** + * Private Types + ****************************************************************************/ + +struct __attribute__((packed)) bcmf_cdc_header { + uint32_t cmd; /* Command to be sent */ + uint32_t len; /* Size of command data */ + uint32_t flags; /* cdc request flags, see above */ + uint32_t status; /* Returned status code from chip */ +}; + +/**************************************************************************** + * Private Function Prototypes + ****************************************************************************/ + +static struct bcmf_frame_s *bcmf_cdc_allocate_frame( + FAR struct bcmf_dev_s *priv, char *name, + uint8_t *data, uint32_t len); + +static int bcmf_cdc_sendframe(FAR struct bcmf_dev_s *priv, uint32_t cmd, + int ifidx, bool set, struct bcmf_frame_s *frame); + +static int bcmf_cdc_control_request(FAR struct bcmf_dev_s *priv, + uint32_t ifidx, bool set, uint32_t cmd, + char *name, uint8_t *data, uint32_t *len); + +static int bcmf_cdc_control_request_unsafe(FAR struct bcmf_dev_s *priv, + uint32_t ifidx, bool set, uint32_t cmd, + char *name, uint8_t *data, uint32_t *len); + +/**************************************************************************** + * Private Functions + ****************************************************************************/ + +struct bcmf_frame_s *bcmf_cdc_allocate_frame(FAR struct bcmf_dev_s *priv, + char *name, uint8_t *data, + uint32_t len) +{ + uint32_t data_len; + uint16_t name_len; + struct bcmf_frame_s *frame; + + if (name) + { + name_len = strlen(name) + 1; + } + else + { + name_len = 0; + } + + if (data) + { + data_len = len; + } + else + { + data_len = 0; + } + + /* Allocate control frame */ + + frame = priv->bus->allocate_frame(priv, + sizeof(struct bcmf_cdc_header) + data_len + name_len, + true, true); + + if (!frame) + { + return NULL; + } + + /* Copy name string and data */ + + memcpy(frame->data + sizeof(struct bcmf_cdc_header), name, name_len); + memcpy(frame->data + sizeof(struct bcmf_cdc_header) + + name_len, data, data_len); + + return frame; +} + +int bcmf_cdc_sendframe(FAR struct bcmf_dev_s *priv, uint32_t cmd, + int ifidx, bool set, struct bcmf_frame_s *frame) +{ + struct bcmf_cdc_header *header = + (struct bcmf_cdc_header *)frame->data; + + /* Setup control frame header */ + + uint32_t cdc_data_len = frame->len - (uint32_t)(frame->data-frame->base); + header->cmd = cmd; + header->len = cdc_data_len-sizeof(struct bcmf_cdc_header); + header->status = 0; + header->flags = ++priv->control_reqid << BCMF_CONTROL_REQID_SHIFT; + header->flags |= ifidx << BCMF_CONTROL_INTERFACE_SHIFT; + + if (set) + { + header->flags |= BCMF_CONTROL_SET; + } + + /* Send frame */ + + return priv->bus->txframe(priv, frame, true); +} + +int bcmf_cdc_control_request(FAR struct bcmf_dev_s *priv, + uint32_t ifidx, bool set, uint32_t cmd, + char *name, uint8_t *data, uint32_t *len) +{ + int ret; + + /* Take device control mutex */ + + if ((ret = sem_wait(&priv->control_mutex)) != OK) + { + return ret; + } + + ret = bcmf_cdc_control_request_unsafe(priv, ifidx, set, cmd, + name, data, len); + + sem_post(&priv->control_mutex); + + return ret; +} + +int bcmf_cdc_control_request_unsafe(FAR struct bcmf_dev_s *priv, + uint32_t ifidx, bool set, uint32_t cmd, + char *name, uint8_t *data, uint32_t *len) +{ + int ret; + struct bcmf_frame_s *frame; + uint32_t out_len = *len; + + *len = 0; + + /* Prepare control frame */ + + frame = bcmf_cdc_allocate_frame(priv, name, data, out_len); + if (!frame) + { + wlerr("Cannot allocate cdc frame\n"); + return -ENOMEM; + } + + /* Setup buffer to store response */ + + priv->control_rxdata = set ? NULL : data; + priv->control_rxdata_len = out_len; + + /* Send control frame. iovar buffer is freed when sent */ + + ret = bcmf_cdc_sendframe(priv, cmd, ifidx, set, frame); + if (ret != OK) + { + /* Free allocated iovar buffer */ + + priv->bus->free_frame(priv, frame); + return ret; + } + + ret = bcmf_sem_wait(&priv->control_timeout, BCMF_CONTROL_TIMEOUT_MS); + if (ret != OK) + { + wlerr("Error while waiting for control response %d\n", ret); + return ret; + } + + *len = priv->control_rxdata_len; + + /* Check frame status */ + + if (priv->control_status != 0) + { + wlerr("Invalid cdc status 0x%x\n", priv->control_status); + return -EINVAL; + } + + return OK; +} + +/**************************************************************************** + * Public Functions + ****************************************************************************/ + +int bcmf_cdc_iovar_request(FAR struct bcmf_dev_s *priv, + uint32_t ifidx, bool set, char *name, + uint8_t *data, uint32_t *len) +{ + return bcmf_cdc_control_request(priv, ifidx, set, + set ? WLC_SET_VAR : WLC_GET_VAR, name, + data, len); +} + +int bcmf_cdc_iovar_request_unsafe(FAR struct bcmf_dev_s *priv, + uint32_t ifidx, bool set, char *name, + uint8_t *data, uint32_t *len) +{ + return bcmf_cdc_control_request_unsafe(priv, ifidx, set, + set ? WLC_SET_VAR : WLC_GET_VAR, name, + data, len); +} + +int bcmf_cdc_ioctl(FAR struct bcmf_dev_s *priv, + uint32_t ifidx, bool set, uint32_t cmd, + uint8_t *data, uint32_t *len) +{ + return bcmf_cdc_control_request(priv, ifidx, set, cmd, NULL, data, len); +} + +int bcmf_cdc_process_control_frame(FAR struct bcmf_dev_s *priv, + struct bcmf_frame_s *frame) +{ + unsigned int data_size; + struct bcmf_cdc_header *cdc_header; + + /* Check frame */ + + data_size = frame->len - (unsigned int)(frame->data - frame->base); + + if (data_size < sizeof(struct bcmf_cdc_header)) + { + wlerr("Control frame too small\n"); + return -EINVAL; + } + + cdc_header = (struct bcmf_cdc_header *)frame->data; + + if (data_size < cdc_header->len || + data_size < sizeof(struct bcmf_cdc_header) + cdc_header->len) + { + wlerr("Invalid control frame size\n"); + return -EINVAL; + } + + // TODO check interface ? + + if (cdc_header->flags >> BCMF_CONTROL_REQID_SHIFT == priv->control_reqid) + { + /* Expected frame received, send it back to user */ + + priv->control_status = cdc_header->status; + + if (priv->control_rxdata) + { + if (priv->control_rxdata_len > cdc_header->len) + { + wlerr("Not enough data %d %d\n", + priv->control_rxdata_len, cdc_header->len); + priv->control_rxdata_len = cdc_header->len; + } + + memcpy(priv->control_rxdata, (uint8_t *)&cdc_header[1], + priv->control_rxdata_len); + } + + sem_post(&priv->control_timeout); + return OK; + } + + wlinfo("Got unexpected control frame\n"); + return -EINVAL; +} diff --git a/drivers/wireless/ieee80211/bcmf_cdc.h b/drivers/wireless/ieee80211/bcmf_cdc.h new file mode 100644 index 00000000000..0cf3242f18c --- /dev/null +++ b/drivers/wireless/ieee80211/bcmf_cdc.h @@ -0,0 +1,69 @@ +/**************************************************************************** + * drivers/wireless/ieee80211/bcmf_cdc.h + * + * Copyright (C) 2017 Gregory Nutt. All rights reserved. + * Author: Simon Piriou + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + +/**************************************************************************** + * Included Files + ****************************************************************************/ + +#ifndef __DRIVERS_WIRELESS_IEEE80211_BCMF_CDC_H +#define __DRIVERS_WIRELESS_IEEE80211_BCMF_CDC_H + +#include "bcmf_driver.h" +#include +#include + +/**************************************************************************** + * Public Function Prototypes + ****************************************************************************/ + +/* Send safe cdc request */ + +int bcmf_cdc_iovar_request(FAR struct bcmf_dev_s *priv, uint32_t ifidx, + bool set, char *name, uint8_t *data, uint32_t *len); + +int bcmf_cdc_ioctl(FAR struct bcmf_dev_s *priv, uint32_t ifidx, bool set, + uint32_t cmd, uint8_t *data, uint32_t *len); + +/* Send cdc request without locking control_mutex */ + +int bcmf_cdc_iovar_request_unsafe(FAR struct bcmf_dev_s *priv, uint32_t ifidx, + bool set, char *name, uint8_t *data, uint32_t *len); + +/* Callback used by bus layer to notify cdc response frame is available */ + +int bcmf_cdc_process_control_frame(FAR struct bcmf_dev_s *priv, + struct bcmf_frame_s *frame); + +#endif /* __DRIVERS_WIRELESS_IEEE80211_BCMF_CDC_H */ \ No newline at end of file diff --git a/drivers/wireless/ieee80211/bcmf_chip_43362.c b/drivers/wireless/ieee80211/bcmf_chip_43362.c new file mode 100644 index 00000000000..7bea6584dcf --- /dev/null +++ b/drivers/wireless/ieee80211/bcmf_chip_43362.c @@ -0,0 +1,76 @@ +/**************************************************************************** + * drivers/wireless/ieee80211/bcmf_chip_43362.c + * + * Copyright (C) 2017 Gregory Nutt. All rights reserved. + * Author: Simon Piriou + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + +#include "bcmf_sdio.h" +#include + +#define WRAPPER_REGISTER_OFFSET 0x100000 + +extern const char bcm43362_nvram_image[]; +extern const unsigned int bcm43362_nvram_image_len; + +extern const uint8_t bcm43362_firmware_image[]; +extern const unsigned int bcm43362_firmware_image_len; + +const struct bcmf_sdio_chip bcmf_43362_config_sdio = +{ + + /* General chip stats */ + + .ram_size = 0x3C000, + + /* Backplane architecture */ + + .core_base = + { + [CHIPCOMMON_CORE_ID] = 0x18000000, /* Chipcommon core register base */ + [DOT11MAC_CORE_ID] = 0x18001000, /* dot11mac core register base */ + [SDIOD_CORE_ID] = 0x18002000, /* SDIOD Device core register base */ + [WLAN_ARMCM3_CORE_ID] = 0x18003000 + /* ARMCM3 core register base */ + WRAPPER_REGISTER_OFFSET, + [SOCSRAM_CORE_ID] = 0x18004000 + /* SOCSRAM core register base */ + WRAPPER_REGISTER_OFFSET + }, + + /* Firmware images */ + + // TODO find something smarter than using image_len references + + .firmware_image = (uint8_t *)bcm43362_firmware_image, + .firmware_image_size = (unsigned int *)&bcm43362_firmware_image_len, + + .nvram_image = (uint8_t *)bcm43362_nvram_image, + .nvram_image_size = (unsigned int *)&bcm43362_nvram_image_len +}; diff --git a/drivers/wireless/ieee80211/bcmf_core.c b/drivers/wireless/ieee80211/bcmf_core.c new file mode 100644 index 00000000000..eba356264e1 --- /dev/null +++ b/drivers/wireless/ieee80211/bcmf_core.c @@ -0,0 +1,401 @@ +/**************************************************************************** + * drivers/wireless/ieee80211/bcmf_core.c + * + * Copyright (C) 2017 Gregory Nutt. All rights reserved. + * Author: Simon Piriou + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + +/**************************************************************************** + * Included Files + ****************************************************************************/ + +#include +#include + +#include +#include + +#include + +#include "bcmf_core.h" +#include "bcmf_sdio.h" + +#include "bcmf_sdio_regs.h" + +/**************************************************************************** + * Pre-processor Definitions + ****************************************************************************/ + +/* Agent registers (common for every core) */ +#define BCMA_IOCTL 0x0408 /* IO control */ +#define BCMA_IOST 0x0500 /* IO status */ +#define BCMA_RESET_CTL 0x0800 /* Reset control */ +#define BCMA_RESET_ST 0x0804 + +#define BCMA_IOCTL_CLK 0x0001 +#define BCMA_IOCTL_FGC 0x0002 +#define BCMA_IOCTL_CORE_BITS 0x3FFC +#define BCMA_IOCTL_PME_EN 0x4000 +#define BCMA_IOCTL_BIST_EN 0x8000 + +#define BCMA_IOST_CORE_BITS 0x0FFF +#define BCMA_IOST_DMA64 0x1000 +#define BCMA_IOST_GATED_CLK 0x2000 +#define BCMA_IOST_BIST_ERROR 0x4000 +#define BCMA_IOST_BIST_DONE 0x8000 + +#define BCMA_RESET_CTL_RESET 0x0001 + +/* Transfer size properties */ +#define BCMF_UPLOAD_TRANSFER_SIZE (64 * 256) + +/**************************************************************************** + * Private Types + ****************************************************************************/ + +/**************************************************************************** + * Private Function Prototypes + ****************************************************************************/ + +static int bcmf_core_set_backplane_window(FAR struct bcmf_sdio_dev_s *sbus, + uint32_t address); + +static int bcmf_upload_binary(FAR struct bcmf_sdio_dev_s *sbusv, + uint32_t address, uint8_t *buf, + unsigned int len); + +static int bcmf_upload_nvram(FAR struct bcmf_sdio_dev_s *sbus); + +/**************************************************************************** + * Private Functions + ****************************************************************************/ + +int bcmf_core_set_backplane_window(FAR struct bcmf_sdio_dev_s *sbus, + uint32_t address) +{ + int ret; + int i; + + address &= ~SBSDIO_SB_OFT_ADDR_MASK; + + for (i = 1; i < 4; i++) + { + uint8_t addr_part = (address >> (8*i)) & 0xff; + uint8_t cur_addr_part = (sbus->backplane_current_addr >> (8*i)) & 0xff; + + if (addr_part != cur_addr_part) + { + /* Update current backplane base address */ + + ret = bcmf_write_reg(sbus, 1, SBSDIO_FUNC1_SBADDRLOW+i-1, + addr_part); + + if (ret != OK) + { + return ret; + } + + sbus->backplane_current_addr &= ~(0xff << (8*i)); + sbus->backplane_current_addr |= addr_part << (8*i); + } + } + + return OK; +} + +int bcmf_upload_binary(FAR struct bcmf_sdio_dev_s *sbus, uint32_t address, + uint8_t *buf, unsigned int len) +{ + unsigned int size; + + while (len > 0) + { + /* Set the backplane window to include the start address */ + + int ret = bcmf_core_set_backplane_window(sbus, address); + if (ret != OK) + { + return ret; + } + + if (len > BCMF_UPLOAD_TRANSFER_SIZE) + { + size = BCMF_UPLOAD_TRANSFER_SIZE; + } + else + { + size = len; + } + + /* Transfer firmware data */ + + ret = bcmf_transfer_bytes(sbus, true, 1, + address & SBSDIO_SB_OFT_ADDR_MASK, buf, size); + if (ret != OK) + { + wlerr("transfer failed %d %x %d\n", ret, address, size); + return ret; + } + + len -= size; + address += size; + buf += size; + } + return OK; +} + +int bcmf_upload_nvram(FAR struct bcmf_sdio_dev_s *sbus) +{ + int ret; + uint32_t nvram_sz; + uint32_t token; + + /* Round up the size of the image */ + + nvram_sz = (*sbus->chip->nvram_image_size + 63) & (-64); + + wlinfo("nvram size is %d %d bytes\n", nvram_sz, + *sbus->chip->nvram_image_size); + + /* Write image */ + + ret = bcmf_upload_binary(sbus, sbus->chip->ram_size - 4 - nvram_sz, + sbus->chip->nvram_image, + *sbus->chip->nvram_image_size); + if (ret != OK) + { + return ret; + } + + /* Generate length token */ + + token = nvram_sz / 4; + token = (~token << 16) | (token & 0x0000FFFF); + + /* Write the length token to the last word */ + + ret = bcmf_write_sbreg(sbus, sbus->chip->ram_size - 4, (uint8_t *)&token, 4); + if (ret != OK) + { + return ret; + } + + return OK; +} + +/**************************************************************************** + * Public Functions + ****************************************************************************/ + +/**************************************************************************** + * Name: bcmf_read_sbreg + ****************************************************************************/ + +int bcmf_read_sbreg(FAR struct bcmf_sdio_dev_s *sbus, uint32_t address, + uint8_t *reg, unsigned int len) +{ + int ret = bcmf_core_set_backplane_window(sbus, address); + if (ret != OK) + { + return ret; + } + + return bcmf_transfer_bytes(sbus, false, 1, + address & SBSDIO_SB_OFT_ADDR_MASK, reg, len); +} + +/**************************************************************************** + * Name: bcmf_write_sbreg + ****************************************************************************/ + +int bcmf_write_sbreg(FAR struct bcmf_sdio_dev_s *sbus, uint32_t address, + uint8_t *reg, unsigned int len) +{ + + int ret = bcmf_core_set_backplane_window(sbus, address); + if (ret != OK) + { + return ret; + } + + return bcmf_transfer_bytes(sbus, true, 1, address & SBSDIO_SB_OFT_ADDR_MASK, + reg, len); +} + +/**************************************************************************** + * Name: bcmf_core_upload_firmware + ****************************************************************************/ + +int bcmf_core_upload_firmware(FAR struct bcmf_sdio_dev_s *sbus) +{ + int ret; + + wlinfo("upload firmware\n"); + + /* Disable ARMCM3 core and reset SOCRAM core + * to set device in firmware upload mode */ + + bcmf_core_disable(sbus, WLAN_ARMCM3_CORE_ID); + bcmf_core_reset(sbus, SOCSRAM_CORE_ID); + + up_mdelay(50); + + /* Flash chip firmware */ + + wlinfo("firmware size is %d bytes\n", *sbus->chip->firmware_image_size); + ret = bcmf_upload_binary(sbus, 0, sbus->chip->firmware_image, + *sbus->chip->firmware_image_size); + + if (ret != OK) + { + wlerr("Failed to upload firmware\n"); + return ret; + } + + /* Flash NVRAM configuration file */ + + wlinfo("upload nvram configuration\n"); + ret = bcmf_upload_nvram(sbus); + if (ret != OK) + { + wlerr("Failed to upload nvram\n"); + return ret; + } + + /* Firmware upload done, restart ARMCM3 core */ + + up_mdelay(10); + bcmf_core_reset(sbus, WLAN_ARMCM3_CORE_ID); + + /* Check ARMCM3 core is running */ + + up_mdelay(10); + if (!bcmf_core_isup(sbus, WLAN_ARMCM3_CORE_ID)) + { + wlerr("Cannot start ARMCM3 core\n"); + return -ETIMEDOUT; + } + + return OK; +} + +bool bcmf_core_isup(FAR struct bcmf_sdio_dev_s *sbus, unsigned int core) +{ + uint32_t value = 0; + + if (core >= MAX_CORE_ID) + { + wlerr("Invalid core id %d\n", core); + return false; + } + uint32_t base = sbus->chip->core_base[core]; + + bcmf_read_sbregw(sbus, base + BCMA_IOCTL, &value); + + if ((value & (BCMA_IOCTL_FGC | BCMA_IOCTL_CLK)) != BCMA_IOCTL_CLK) + { + return false; + } + + bcmf_read_sbregw(sbus, base + BCMA_RESET_CTL, &value); + + return (value & BCMA_RESET_CTL_RESET) == 0; +} + +void bcmf_core_disable(FAR struct bcmf_sdio_dev_s *sbus, unsigned int core) +{ + uint8_t value; + + if (core >= MAX_CORE_ID) + { + wlerr("Invalid core id %d\n", core); + return; + } + + uint32_t base = sbus->chip->core_base[core]; + + /* Check if core is already in reset state */ + + bcmf_read_sbregb(sbus, base + BCMA_RESET_CTL, &value); + + if ((value & BCMA_RESET_CTL_RESET) != 0) + { + /* Core already disabled */ + + return; + } + + /* Ensure no backplane operation is pending */ + + up_mdelay(10); + + /* Set core in reset state */ + + bcmf_write_sbregb(sbus, base + BCMA_RESET_CTL, BCMA_RESET_CTL_RESET); + up_udelay(1); + + /* Write 0 to the IO control and read it back */ + + bcmf_write_sbregb(sbus, base + BCMA_IOCTL, 0); + bcmf_read_sbregb(sbus, base + BCMA_IOCTL, &value); + up_udelay(10); +} + +void bcmf_core_reset(FAR struct bcmf_sdio_dev_s *sbus, unsigned int core) +{ + uint32_t value; + + if (core >= MAX_CORE_ID) + { + wlerr("Invalid core id %d\n", core); + return; + } + uint32_t base = sbus->chip->core_base[core]; + + /* Put core in reset state */ + + bcmf_core_disable(sbus, core); + + /* Run initialization sequence */ + + bcmf_write_sbregb(sbus, base + BCMA_IOCTL, BCMA_IOCTL_FGC | BCMA_IOCTL_CLK); + bcmf_read_sbregw(sbus, base + BCMA_IOCTL, &value); + + bcmf_write_sbregb(sbus, base + BCMA_RESET_CTL, 0); + bcmf_read_sbregw(sbus, base + BCMA_RESET_CTL, &value); + + up_udelay(1); + + bcmf_write_sbregb(sbus, base + BCMA_IOCTL, BCMA_IOCTL_CLK); + bcmf_read_sbregw(sbus, base + BCMA_IOCTL, &value); + + up_udelay(1); +} diff --git a/drivers/wireless/ieee80211/bcmf_core.h b/drivers/wireless/ieee80211/bcmf_core.h new file mode 100644 index 00000000000..00f859601cd --- /dev/null +++ b/drivers/wireless/ieee80211/bcmf_core.h @@ -0,0 +1,82 @@ +/**************************************************************************** + * drivers/wireless/ieee80211/bcmf_core.h + * + * Copyright (C) 2017 Gregory Nutt. All rights reserved. + * Author: Simon Piriou + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + +#ifndef __DRIVERS_WIRELESS_IEEE80211_BCMF_CORE_H +#define __DRIVERS_WIRELESS_IEEE80211_BCMF_CORE_H + +#include +#include + +#include "bcmf_sdio.h" + +int bcmf_read_sbreg(FAR struct bcmf_sdio_dev_s *sbus, uint32_t address, + uint8_t *reg, unsigned int len); + +int bcmf_write_sbreg(FAR struct bcmf_sdio_dev_s *sbus, uint32_t address, + uint8_t *reg, unsigned int len); + +bool bcmf_core_isup(FAR struct bcmf_sdio_dev_s *sbus, unsigned int core); + +void bcmf_core_disable(FAR struct bcmf_sdio_dev_s *sbus, unsigned int core); + +void bcmf_core_reset(FAR struct bcmf_sdio_dev_s *sbus, unsigned int core); + +int bcmf_core_upload_firmware(FAR struct bcmf_sdio_dev_s *sbus); + +static inline int bcmf_read_sbregb(FAR struct bcmf_sdio_dev_s *sbus, + uint32_t address, uint8_t *reg) +{ + return bcmf_read_sbreg(sbus, address, reg, 1); +} + +static inline int bcmf_read_sbregw(FAR struct bcmf_sdio_dev_s *sbus, + uint32_t address, uint32_t *reg) +{ + return bcmf_read_sbreg(sbus, address, (uint8_t *)reg, 4); +} + +static inline int bcmf_write_sbregb(FAR struct bcmf_sdio_dev_s *sbus, + uint32_t address, uint8_t reg) +{ + return bcmf_write_sbreg(sbus, address, ®, 1); +} + +static inline int bcmf_write_sbregw(FAR struct bcmf_sdio_dev_s *sbus, + uint32_t address, uint32_t reg) +{ + return bcmf_write_sbreg(sbus, address, (uint8_t *)®, 4); +} + +#endif /* __DRIVERS_WIRELESS_IEEE80211_BCMF_CORE_H */ diff --git a/drivers/wireless/ieee80211/bcmf_driver.c b/drivers/wireless/ieee80211/bcmf_driver.c new file mode 100644 index 00000000000..4666d8da9f8 --- /dev/null +++ b/drivers/wireless/ieee80211/bcmf_driver.c @@ -0,0 +1,914 @@ +/**************************************************************************** + * drivers/wireless/ieee80211/bcmf_driver.c + * + * Copyright (C) 2017 Gregory Nutt. All rights reserved. + * Author: Simon Piriou + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + +/**************************************************************************** + * Included Files + ****************************************************************************/ + +#include +#include + +#include +#include +#include +#include + +#include + +#include +#include +#include + +#include "bcmf_driver.h" +#include "bcmf_cdc.h" +#include "bcmf_ioctl.h" +#include "bcmf_utils.h" +#include "bcmf_netdev.h" +#include "bcmf_sdio.h" + +/**************************************************************************** + * Pre-processor Definitions + ****************************************************************************/ + +#define DOT11_BSSTYPE_ANY 2 +#define BCMF_SCAN_TIMEOUT_TICK (5*CLOCKS_PER_SEC) +#define BCMF_AUTH_TIMEOUT_MS 10000 + +/**************************************************************************** + * Private Types + ****************************************************************************/ + +/* AP scan state machine status */ + +enum +{ + BCMF_SCAN_TIMEOUT = 0, + BCMF_SCAN_DISABLED, + BCMF_SCAN_RUN, + BCMF_SCAN_DONE +}; + +/**************************************************************************** + * Private Function Prototypes + ****************************************************************************/ + +static FAR struct bcmf_dev_s *bcmf_allocate_device(void); +static void bcmf_free_device(FAR struct bcmf_dev_s *priv); + +static int bcmf_driver_initialize(FAR struct bcmf_dev_s *priv); + +// FIXME only for debug purpose + +static void bcmf_wl_default_event_handler(FAR struct bcmf_dev_s *priv, + struct bcmf_event_s *event, unsigned int len); + +static void bcmf_wl_radio_event_handler(FAR struct bcmf_dev_s *priv, + struct bcmf_event_s *event, unsigned int len); + +static void bcmf_wl_scan_event_handler(FAR struct bcmf_dev_s *priv, + struct bcmf_event_s *event, unsigned int len); + +static void bcmf_wl_auth_event_handler(FAR struct bcmf_dev_s *priv, + struct bcmf_event_s *event, unsigned int len); + +static int bcmf_wl_get_interface(FAR struct bcmf_dev_s *priv, + struct iwreq *iwr); + +/**************************************************************************** + * Private Functions + ****************************************************************************/ + +FAR struct bcmf_dev_s *bcmf_allocate_device(void) +{ + int ret; + FAR struct bcmf_dev_s *priv; + + /* Allocate a bcmf device structure */ + + priv = (FAR struct bcmf_dev_s *)kmm_malloc(sizeof(*priv)); + if (!priv) + { + return NULL; + } + + /* Initialize bcmf device structure */ + + memset(priv, 0, sizeof(*priv)); + + /* Init control frames mutex and timeout signal */ + + if ((ret = sem_init(&priv->control_mutex, 0, 1)) != OK) + { + goto exit_free_priv; + } + + if ((ret = sem_init(&priv->control_timeout, 0, 0)) != OK) + { + goto exit_free_priv; + } + + if ((ret = sem_setprotocol(&priv->control_timeout, SEM_PRIO_NONE)) != OK) + { + goto exit_free_priv; + } + + /* Init authentication signal semaphore */ + + if ((ret = sem_init(&priv->auth_signal, 0, 0)) != OK) + { + goto exit_free_priv; + } + + if ((ret = sem_setprotocol(&priv->auth_signal, SEM_PRIO_NONE)) != OK) + { + goto exit_free_priv; + } + + /* Init scan timeout timer */ + + priv->scan_status = BCMF_SCAN_DISABLED; + priv->scan_timeout = wd_create(); + if (!priv->scan_timeout) + { + ret = -ENOMEM; + goto exit_free_priv; + } + + return priv; + +exit_free_priv: + kmm_free(priv); + return NULL; +} + +void bcmf_free_device(FAR struct bcmf_dev_s *priv) +{ + /* TODO deinitialize device structures */ + + kmm_free(priv); +} + +int bcmf_wl_set_mac_address(FAR struct bcmf_dev_s *priv, struct ifreq *req) +{ + int ret; + uint32_t out_len = IFHWADDRLEN; + + ret = bcmf_cdc_iovar_request(priv, CHIP_STA_INTERFACE, true, + IOVAR_STR_CUR_ETHERADDR, + (uint8_t *)req->ifr_hwaddr.sa_data, + &out_len); + if (ret != OK) + { + return ret; + } + + wlinfo("MAC address updated %02X:%02X:%02X:%02X:%02X:%02X\n", + req->ifr_hwaddr.sa_data[0], req->ifr_hwaddr.sa_data[1], + req->ifr_hwaddr.sa_data[2], req->ifr_hwaddr.sa_data[3], + req->ifr_hwaddr.sa_data[4], req->ifr_hwaddr.sa_data[5]); + + memcpy(priv->bc_dev.d_mac.ether.ether_addr_octet, + req->ifr_hwaddr.sa_data, ETHER_ADDR_LEN); + + return OK; +} + +int bcmf_driver_initialize(FAR struct bcmf_dev_s *priv) +{ + int ret; + uint32_t out_len; + uint32_t value; + uint8_t tmp_buf[64]; + int interface = CHIP_STA_INTERFACE; + + /* Disable TX Gloming feature */ + + out_len = 4; + *(uint32_t *)tmp_buf = 0; + ret = bcmf_cdc_iovar_request(priv, interface, false, + IOVAR_STR_TX_GLOM, tmp_buf, + &out_len); + if (ret != OK) + { + return -EIO; + } + + /* FIXME disable power save mode */ + + out_len = 4; + value = 0; + ret = bcmf_cdc_ioctl(priv, interface, true, WLC_SET_PM, + (uint8_t *)&value, &out_len); + if (ret != OK) + { + return ret; + } + + /* Set the GMode to auto */ + + out_len = 4; + value = GMODE_AUTO; + ret = bcmf_cdc_ioctl(priv, interface, true, WLC_SET_GMODE, + (uint8_t *)&value, &out_len); + if (ret != OK) + { + return ret; + } + + /* TODO configure roaming if needed. Disable for now */ + + out_len = 4; + value = 1; + ret = bcmf_cdc_iovar_request(priv, interface, true, IOVAR_STR_ROAM_OFF, + (uint8_t *)&value, + &out_len); + + /* TODO configure EAPOL version to default */ + + out_len = 8; + ((uint32_t *)tmp_buf)[0] = interface; + ((uint32_t *)tmp_buf)[1] = (uint32_t)-1; + + if (bcmf_cdc_iovar_request(priv, interface, true, + "bsscfg:"IOVAR_STR_SUP_WPA2_EAPVER, tmp_buf, + &out_len)) + { + return -EIO; + } + + /* Query firmware version string */ + + out_len = sizeof(tmp_buf); + ret = bcmf_cdc_iovar_request(priv, interface, false, + IOVAR_STR_VERSION, tmp_buf, + &out_len); + if (ret != OK) + { + return -EIO; + } + + tmp_buf[sizeof(tmp_buf)-1] = 0; + + /* Remove line feed */ + + out_len = strlen((char *)tmp_buf); + if (out_len > 0 && tmp_buf[out_len - 1] == '\n') + { + tmp_buf[out_len - 1] = 0; + } + + wlinfo("fw version <%s>\n", tmp_buf); + + /* FIXME Configure event mask to enable all asynchronous events */ + + for (ret = 0; ret < BCMF_EVENT_COUNT; ret++) + { + bcmf_event_register(priv, bcmf_wl_default_event_handler, ret); + } + + /* Register radio event */ + + bcmf_event_register(priv, bcmf_wl_radio_event_handler, WLC_E_RADIO); + + /* Register AP scan event */ + + bcmf_event_register(priv, bcmf_wl_scan_event_handler, WLC_E_ESCAN_RESULT); + + /* Register authentication related events */ + + bcmf_event_register(priv, bcmf_wl_auth_event_handler, WLC_E_ASSOC_IND_NDIS); + bcmf_event_register(priv, bcmf_wl_auth_event_handler, WLC_E_AUTH); + bcmf_event_register(priv, bcmf_wl_auth_event_handler, WLC_E_ASSOC); + bcmf_event_register(priv, bcmf_wl_auth_event_handler, WLC_E_LINK); + bcmf_event_register(priv, bcmf_wl_auth_event_handler, WLC_E_PSK_SUP); + bcmf_event_register(priv, bcmf_wl_auth_event_handler, WLC_E_JOIN); + bcmf_event_register(priv, bcmf_wl_auth_event_handler, WLC_E_SET_SSID); + bcmf_event_register(priv, bcmf_wl_auth_event_handler, WLC_E_DEAUTH_IND); + bcmf_event_register(priv, bcmf_wl_auth_event_handler, WLC_E_DISASSOC); + bcmf_event_register(priv, bcmf_wl_auth_event_handler, WLC_E_DISASSOC_IND); + + if (bcmf_event_push_config(priv)) + { + return -EIO; + } + + /* Register network driver */ + + return bcmf_netdev_register(priv); +} + +void bcmf_wl_default_event_handler(FAR struct bcmf_dev_s *priv, + struct bcmf_event_s *event, unsigned int len) +{ + wlinfo("Got event %d from <%s>\n", bcmf_getle32(&event->type), + event->src_name); +} + +void bcmf_wl_radio_event_handler(FAR struct bcmf_dev_s *priv, + struct bcmf_event_s *event, unsigned int len) +{ + // wlinfo("Got radio event %d from <%s>\n", bcmf_getle32(&event->type), + // event->src_name); +} + +void bcmf_wl_auth_event_handler(FAR struct bcmf_dev_s *priv, + struct bcmf_event_s *event, unsigned int len) +{ + uint32_t type; + uint32_t status; + + type = bcmf_getle32(&event->type); + status = bcmf_getle32(&event->status); + + wlinfo("Got auth event %d from <%s>\n", type, event->src_name); + + bcmf_hexdump((uint8_t *)event, len, (unsigned long)event); + + if (type == WLC_E_SET_SSID && status == WLC_E_STATUS_SUCCESS) + { + /* Auth complete */ + + priv->auth_status = OK; + + sem_post(&priv->auth_signal); + } +} + +void bcmf_wl_scan_event_handler(FAR struct bcmf_dev_s *priv, + struct bcmf_event_s *event, unsigned int len) +{ + uint32_t status; + uint32_t reason; + uint32_t event_len; + struct wl_escan_result *result; + struct wl_bss_info *bss; + unsigned int bss_info_len; + unsigned int escan_result_len; + unsigned int bss_count = 0; + + event_len = len; + + if (priv->scan_status < BCMF_SCAN_RUN) + { + wlinfo("Got Unexpected scan event\n"); + goto exit_invalid_frame; + } + + status = bcmf_getle32(&event->status); + reason = bcmf_getle32(&event->reason); + escan_result_len = bcmf_getle32(&event->len); + + len -= sizeof(struct bcmf_event_s); + + if (len > escan_result_len) + { + len = escan_result_len; + } + if (len == sizeof(struct wl_escan_result) - sizeof(struct wl_bss_info)) + { + /* Nothing to process, may be scan done event */ + + goto wl_escan_result_processed; + } + if (len < sizeof(struct wl_escan_result)) + { + goto exit_invalid_frame; + } + + /* Process escan result payload */ + + result = (struct wl_escan_result *)&event[1]; + + if (len < result->buflen || result->buflen < sizeof(struct wl_escan_result)) + { + goto exit_invalid_frame; + } + + /* wl_escan_result already cointains a wl_bss_info field */ + + len = result->buflen - sizeof(struct wl_escan_result) + + sizeof(struct wl_bss_info); + + /* Process bss_infos */ + + bss = result->bss_info; + + while (len > 0 && bss_count < result->bss_count) + { + bss_info_len = bss->length; + + if (len < bss_info_len) + { + wlerr("bss_len error %d %d\n", len, bss_info_len); + goto exit_invalid_frame; + } + + wlinfo("Scan result: <%.32s> %02x:%02x:%02x:%02x:%02x:%02x\n", bss->SSID, + bss->BSSID.ether_addr_octet[0], bss->BSSID.ether_addr_octet[1], + bss->BSSID.ether_addr_octet[3], bss->BSSID.ether_addr_octet[3], + bss->BSSID.ether_addr_octet[4], bss->BSSID.ether_addr_octet[5]); + + /* Process next bss_info */ + + len -= bss_info_len; + bss = (struct wl_bss_info *)((uint8_t *)bss + bss_info_len); + bss_count += 1; + } + +wl_escan_result_processed: + + if (status == WLC_E_STATUS_PARTIAL) + { + /* More frames to come */ + + return; + } + + if (status != WLC_E_STATUS_SUCCESS) + { + wlerr("Invalid event status %d\n", status); + return; + } + + /* Scan done */ + + wlinfo("escan done event %d %d\n", status, reason); + + wd_cancel(priv->scan_timeout); + + priv->scan_status = BCMF_SCAN_DONE; + sem_post(&priv->control_mutex); + + return; + +exit_invalid_frame: + wlerr("Invalid scan result event\n"); + bcmf_hexdump((uint8_t *)event, event_len, (unsigned long)event); +} + +void bcmf_wl_scan_timeout(int argc, wdparm_t arg1, ...) +{ + FAR struct bcmf_dev_s *priv = (FAR struct bcmf_dev_s *)arg1; + + if (priv->scan_status < BCMF_SCAN_RUN) + { + /* Fatal error, invalid scan status */ + wlerr("Unexpected scan timeout\n"); + return; + } + + wlerr("Scan timeout detected\n"); + + priv->scan_status = BCMF_SCAN_TIMEOUT; + sem_post(&priv->control_mutex); +} + +int bcmf_wl_get_interface(FAR struct bcmf_dev_s *priv, struct iwreq *iwr) +{ + // TODO resolve interface using iwr->ifr_name + return CHIP_STA_INTERFACE; +} + +/**************************************************************************** + * Public Functions + ****************************************************************************/ + +int bcmf_sdio_initialize(int minor, FAR struct sdio_dev_s *dev) +{ + int ret; + FAR struct bcmf_dev_s *priv; + + wlinfo("minor: %d\n", minor); + + priv = bcmf_allocate_device(); + if (!priv) + { + return -ENOMEM; + } + + /* Init sdio bus */ + + ret = bcmf_bus_sdio_initialize(priv, minor, dev); + if (ret != OK) + { + ret = -EIO; + goto exit_free_device; + } + + /* Bus initialized, register network driver */ + + return bcmf_driver_initialize(priv); + +exit_free_device: + bcmf_free_device(priv); + return ret; +} + +int bcmf_wl_enable(FAR struct bcmf_dev_s *priv, bool enable) +{ + int ret; + uint32_t out_len; + + /* TODO chek device state */ + + out_len = 0; + ret = bcmf_cdc_ioctl(priv, CHIP_STA_INTERFACE, true, + enable ? WLC_UP : WLC_DOWN, NULL, &out_len); + + /* TODO wait for WLC_E_RADIO event */ + + if (ret == OK) + { + /* TODO update device state */ + } + + return ret; +} + +int bcmf_wl_start_scan(FAR struct bcmf_dev_s *priv, struct iwreq *iwr) +{ + int ret; + uint32_t out_len; + uint32_t value; + int interface; + struct iw_scan_req *req; + struct wl_escan_params scan_params; + + interface = bcmf_wl_get_interface(priv, iwr); + + if (interface < 0) + { + return -EINVAL; + } + + memset(&scan_params, 0, sizeof(scan_params)); + + scan_params.version = ESCAN_REQ_VERSION; + scan_params.action = WL_SCAN_ACTION_START; + scan_params.sync_id = 0xabcd; /* Not used for now */ + + memset(&scan_params.params.bssid, 0xFF, + sizeof(scan_params.params.bssid)); + + scan_params.params.bss_type = DOT11_BSSTYPE_ANY; + scan_params.params.nprobes = -1; + scan_params.params.active_time = -1; + scan_params.params.passive_time = -1; + scan_params.params.home_time = -1; + scan_params.params.channel_num = 0; + + if (iwr->u.data.pointer && iwr->u.data.length >= sizeof(*req)) + { + req = (struct iw_scan_req *)iwr->u.data.pointer; + + memcpy(&scan_params.params.bssid, req->bssid.sa_data, + sizeof(scan_params.params.bssid)); + + scan_params.params.scan_type = + req->scan_type == IW_SCAN_TYPE_ACTIVE ? 0:1; + + if (iwr->u.data.flags & IW_SCAN_THIS_ESSID && + req->essid_len < sizeof(scan_params.params.ssid.SSID)) + { + /* Scan specific ESSID */ + + memcpy(scan_params.params.ssid.SSID, req->essid, req->essid_len); + scan_params.params.ssid.SSID_len = req->essid_len; + } + } + else + { + /* Default scan parameters */ + + wlinfo("Use default scan parameters\n"); + + memset(&scan_params.params.bssid, 0xFF, + sizeof(scan_params.params.bssid)); + + scan_params.params.scan_type = 0; /* Active scan */ + } + + /* Set active scan mode */ + + value = scan_params.params.scan_type; + out_len = 4; + if (bcmf_cdc_ioctl(priv, CHIP_STA_INTERFACE, true, + WLC_SET_PASSIVE_SCAN, (uint8_t *)&value, &out_len)) + { + ret = -EIO; + goto exit_failed; + } + + /* Lock control_mutex semaphore */ + + if ((ret = sem_wait(&priv->control_mutex)) != OK) + { + goto exit_failed; + } + + wlinfo("start scan\n"); + + priv->scan_status = BCMF_SCAN_RUN; + + out_len = sizeof(scan_params); + + if (bcmf_cdc_iovar_request_unsafe(priv, CHIP_STA_INTERFACE, true, + IOVAR_STR_ESCAN, (uint8_t *)&scan_params, + &out_len)) + { + ret = -EIO; + goto exit_sem_post; + } + + /* Start scan_timeout timer */ + + wd_start(priv->scan_timeout, BCMF_SCAN_TIMEOUT_TICK, + bcmf_wl_scan_timeout, (wdparm_t)priv); + + return OK; + +exit_sem_post: + sem_post(&priv->control_mutex); + priv->scan_status = BCMF_SCAN_DISABLED; +exit_failed: + wlinfo("Failed\n"); + return ret; +} + +int bcmf_wl_get_scan_results(FAR struct bcmf_dev_s *priv, struct iwreq *iwr) +{ + /* Not implemented yet, set len to zero */ + + iwr->u.data.length = 0; + + if (priv->scan_status == BCMF_SCAN_RUN) + { + return -EAGAIN; + } + if (priv->scan_status == BCMF_SCAN_DONE) + { + return OK; + } + return -EINVAL; +} + +int bcmf_wl_set_auth_param(FAR struct bcmf_dev_s *priv, struct iwreq *iwr) +{ + int ret = -ENOSYS; + int interface; + uint32_t out_len; + + interface = bcmf_wl_get_interface(priv, iwr); + + if (interface < 0) + { + return -EINVAL; + } + + switch (iwr->u.param.flags & IW_AUTH_INDEX) + { + case IW_AUTH_WPA_VERSION: + { + uint32_t wpa_version[2]; + uint32_t auth_mode; + + switch (iwr->u.param.value) + { + case IW_AUTH_WPA_VERSION_DISABLED: + wpa_version[1] = 0; + auth_mode = WPA_AUTH_DISABLED; + break; + case IW_AUTH_WPA_VERSION_WPA: + wpa_version[1] = 1; + auth_mode = WPA_AUTH_PSK; + break; + case IW_AUTH_WPA_VERSION_WPA2: + wpa_version[1] = 1; + auth_mode = WPA2_AUTH_PSK; + break; + default: + wlerr("Invalid wpa version %d\n", iwr->u.param.value); + return -EINVAL; + } + + out_len = 8; + wpa_version[0] = interface; + + if (bcmf_cdc_iovar_request(priv, interface, true, + "bsscfg:"IOVAR_STR_SUP_WPA, + (uint8_t *)wpa_version, + &out_len)) + { + return -EIO; + } + + out_len = 4; + if (bcmf_cdc_ioctl(priv, interface, true, WLC_SET_WPA_AUTH, + (uint8_t *)&auth_mode, &out_len)) + { + return -EIO; + } + } + return OK; + + case IW_AUTH_CIPHER_PAIRWISE: + case IW_AUTH_CIPHER_GROUP: + { + uint32_t cipher_mode; + uint32_t wep_auth = 0; + + switch (iwr->u.param.value) + { + case IW_AUTH_CIPHER_WEP40: + case IW_AUTH_CIPHER_WEP104: + cipher_mode = WEP_ENABLED; + wep_auth = 1; + break; + case IW_AUTH_CIPHER_TKIP: + cipher_mode = TKIP_ENABLED; + break; + case IW_AUTH_CIPHER_CCMP: + cipher_mode = AES_ENABLED; + break; + default: + wlerr("Invalid cipher mode %d\n", iwr->u.param.value); + return -EINVAL; + } + + out_len = 4; + if (bcmf_cdc_ioctl(priv, interface, true, + WLC_SET_WSEC, (uint8_t *)&cipher_mode, &out_len)) + { + return -EIO; + } + + /* Set authentication mode */ + + out_len = 4; + if (bcmf_cdc_ioctl(priv, interface, true, + WLC_SET_AUTH, (uint8_t *)&wep_auth, &out_len)) + { + return -EIO; + } + } + return OK; + + case IW_AUTH_KEY_MGMT: + case IW_AUTH_TKIP_COUNTERMEASURES: + case IW_AUTH_DROP_UNENCRYPTED: + case IW_AUTH_80211_AUTH_ALG: + case IW_AUTH_WPA_ENABLED: + case IW_AUTH_RX_UNENCRYPTED_EAPOL: + case IW_AUTH_ROAMING_CONTROL: + case IW_AUTH_PRIVACY_INVOKED: + default: + wlerr("Unknown cmd %d\n", iwr->u.param.flags); + break; + } + + return ret; +} + +int bcmf_wl_set_mode(FAR struct bcmf_dev_s *priv, struct iwreq *iwr) +{ + int interface; + uint32_t out_len; + uint32_t value; + + interface = bcmf_wl_get_interface(priv, iwr); + + if (interface < 0) + { + return -EINVAL; + } + + out_len = 4; + value = iwr->u.mode == IW_MODE_INFRA ? 1 : 0; + if (bcmf_cdc_ioctl(priv, interface, true, + WLC_SET_INFRA, (uint8_t *)&value, &out_len)) + { + return -EIO; + } + + return OK; +} + +int bcmf_wl_set_encode_ext(FAR struct bcmf_dev_s *priv, struct iwreq *iwr) +{ + int interface; + struct iw_encode_ext *ext; + uint32_t out_len; + wsec_pmk_t psk; + + interface = bcmf_wl_get_interface(priv, iwr); + + if (interface < 0) + { + return -EINVAL; + } + + ext = (struct iw_encode_ext *)iwr->u.encoding.pointer; + + switch (ext->alg) + { + case IW_ENCODE_ALG_TKIP: + break; + case IW_ENCODE_ALG_CCMP: + break; + case IW_ENCODE_ALG_NONE: + case IW_ENCODE_ALG_WEP: + default: + wlerr("Unknown algo %d\n", ext->alg); + return -EINVAL; + } + + memset(&psk, 0, sizeof(wsec_pmk_t)); + memcpy(psk.key, &ext->key, ext->key_len); + psk.key_len = ext->key_len; + psk.flags = WSEC_PASSPHRASE; + + out_len = sizeof(psk); + return bcmf_cdc_ioctl(priv, interface, true, + WLC_SET_WSEC_PMK, (uint8_t *)&psk, &out_len); +} + +int bcmf_wl_set_ssid(FAR struct bcmf_dev_s *priv, struct iwreq *iwr) +{ + int ret; + int interface; + uint32_t out_len; + wlc_ssid_t ssid; + + interface = bcmf_wl_get_interface(priv, iwr); + + if (interface < 0) + { + return -EINVAL; + } + + ssid.SSID_len = iwr->u.essid.length; + memcpy(ssid.SSID, iwr->u.essid.pointer, iwr->u.essid.length); + + /* Configure AP SSID and trig authentication request */ + + out_len = sizeof(ssid); + if (bcmf_cdc_ioctl(priv, interface, true, + WLC_SET_SSID, (uint8_t *)&ssid, &out_len)) + { + return -EIO; + } + + ret = bcmf_sem_wait(&priv->auth_signal, BCMF_AUTH_TIMEOUT_MS); + + wlinfo("semwait done ! %d\n", ret); + + if (ret) + { + wlerr("Associate request timeout\n"); + return -EINVAL; + } + + switch (priv->auth_status) + { + case OK: + wlinfo("AP Join ok\n"); + break; + + default: + wlerr("AP join failed %d\n", priv->auth_status); + return -EINVAL; + } + return OK; + } diff --git a/drivers/wireless/ieee80211/bcmf_driver.h b/drivers/wireless/ieee80211/bcmf_driver.h new file mode 100644 index 00000000000..937427a49be --- /dev/null +++ b/drivers/wireless/ieee80211/bcmf_driver.h @@ -0,0 +1,153 @@ +/**************************************************************************** + * drivers/wireless/ieee80211/bcmf_driver.h + * + * Copyright (C) 2017 Gregory Nutt. All rights reserved. + * Author: Simon Piriou + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + +#ifndef __DRIVERS_WIRELESS_IEEE80211_BCMF_DRIVER_H +#define __DRIVERS_WIRELESS_IEEE80211_BCMF_DRIVER_H + +#include +#include +#include + +#include +#include +#include +#include + +#include "bcmf_ioctl.h" + +struct bcmf_dev_s; +struct bcmf_frame_s; + +#include "bcmf_bdc.h" + +struct bcmf_bus_dev_s; + +/* Chip interfaces */ + +#define CHIP_STA_INTERFACE 0 +#define CHIP_AP_INTERFACE 1 +#define CHIP_P2P_INTERFACE 2 + +/* This structure contains the unique state of the Broadcom FullMAC driver */ + +struct bcmf_dev_s +{ + FAR struct bcmf_bus_dev_s *bus; /* Bus interface structure */ + + bool bc_bifup; /* true:ifup false:ifdown */ + WDOG_ID bc_txpoll; /* TX poll timer */ + struct work_s bc_irqwork; /* For deferring interrupt work to the work queue */ + struct work_s bc_pollwork; /* For deferring poll work to the work queue */ + + /* This holds the information visible to the NuttX network */ + + struct net_driver_s bc_dev; /* Network interface structure */ + struct bcmf_frame_s *cur_tx_frame; /* Frame used to interface network layer */ + + /* Event registration array */ + + event_handler_t event_handlers[BCMF_EVENT_COUNT]; + + // FIXME use mutex instead of semaphore + sem_t control_mutex; /* Cannot handle multiple control requests */ + sem_t control_timeout; /* Semaphore to wait for control frame rsp */ + uint16_t control_reqid; /* Current control request id */ + uint16_t control_rxdata_len; /* Received control frame out buffer length */ + uint8_t *control_rxdata; /* Received control frame out buffer */ + uint32_t control_status; /* Last received frame status */ + + /* AP Scan state machine. + * During scan, control_mutex is locked to prevent control requests */ + + int scan_status; /* Current scan status */ + WDOG_ID scan_timeout; /* Scan timeout timer */ + + sem_t auth_signal; /* Authentication notification signal */ + int auth_status; /* Authentication status */ +}; + +/* Default bus interface structure */ + +struct bcmf_bus_dev_s +{ + void (*stop)(FAR struct bcmf_dev_s *priv); + int (*txframe)(FAR struct bcmf_dev_s *priv, struct bcmf_frame_s *frame, + bool control); + struct bcmf_frame_s *(*rxframe)(FAR struct bcmf_dev_s *priv); + + /* Frame buffer allocation primitives + * len - requested payload length + * control - true if control frame else false + * block - true to block until free frame is available + */ + struct bcmf_frame_s *(*allocate_frame)(FAR struct bcmf_dev_s *priv, + unsigned int len, bool block, + bool control); + + void (*free_frame)(FAR struct bcmf_dev_s *priv, struct bcmf_frame_s *frame); +}; + +/* bcmf frame definition */ + +struct bcmf_frame_s +{ + uint8_t *base; /* Frame base buffer used by low level layer (SDIO) */ + uint8_t *data; /* Payload data (Control, data and event messages) */ + uint16_t len; /* Frame buffer size */ +}; + +/* IOCTLs network interface implementation */ + +int bcmf_wl_set_mac_address(FAR struct bcmf_dev_s *priv, struct ifreq *req); + +int bcmf_wl_enable(FAR struct bcmf_dev_s *priv, bool enable); + +/* IOCTLs AP scan interface implementation */ + +int bcmf_wl_start_scan(FAR struct bcmf_dev_s *priv, struct iwreq *iwr); + +int bcmf_wl_get_scan_results(FAR struct bcmf_dev_s *priv, struct iwreq *iwr); + +/* IOCTLs authentication interface implementation */ + +int bcmf_wl_set_auth_param(FAR struct bcmf_dev_s *priv, struct iwreq *iwr); + +int bcmf_wl_set_encode_ext(FAR struct bcmf_dev_s *priv, struct iwreq *iwr); + +int bcmf_wl_set_mode(FAR struct bcmf_dev_s *priv, struct iwreq *iwr); + +int bcmf_wl_set_ssid(FAR struct bcmf_dev_s *priv, struct iwreq *iwr); + +#endif /* __DRIVERS_WIRELESS_IEEE80211_BCMF_DRIVER_H */ diff --git a/drivers/wireless/ieee80211/bcmf_ioctl.h b/drivers/wireless/ieee80211/bcmf_ioctl.h new file mode 100644 index 00000000000..7c4cc235f21 --- /dev/null +++ b/drivers/wireless/ieee80211/bcmf_ioctl.h @@ -0,0 +1,3006 @@ +/**************************************************************************** + * Copyright (c) 2015 Broadcom + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without modification, + * are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, this + * list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright notice, this + * list of conditions and the following disclaimer in the documentation and/or + * other materials provided with the distribution. + * + * 3. Neither the name of Broadcom nor the names of other contributors to this + * software may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * 4. This software may not be used as a standalone product, and may only be used as + * incorporated in your product or device that incorporates Broadcom wireless connectivity + * products and solely for the purpose of enabling the functionalities of such Broadcom products. + * + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + * ANY WARRANTIES OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT, ARE + * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON + * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ +/* + * Custom OID/ioctl definitions for + * Broadcom 802.11abg Networking Device Driver + */ +#ifndef __DRIVERS_WIRELESS_IEEE80211_BCMF_IOCTL_H +#define __DRIVERS_WIRELESS_IEEE80211_BCMF_IOCTL_H + +#include +#include + +typedef uint16_t wl_chanspec_t; +typedef uint16_t chanspec_t; + +#define ACTION_FRAME_SIZE 1040 + +typedef struct wl_action_frame +{ + struct ether_addr da; + uint16_t len; + uint32_t packetId; + uint8_t data[ACTION_FRAME_SIZE]; +} wl_action_frame_t; + +typedef struct ssid_info +{ + uint8_t ssid_len; + uint8_t ssid[32]; +} ssid_info_t; + +typedef struct cnt_rx +{ + uint32_t cnt_rxundec; + uint32_t cnt_rxframe; +} cnt_rx_t; + +#define MCSSET_LEN 16 + +typedef struct wl_bss_info +{ + uint32_t version; /* version field */ + uint32_t length; /* byte length of data in this record, */ + /* starting at version and including IEs */ + struct ether_addr BSSID; + uint16_t beacon_period; /* units are Kusec */ + uint16_t capability; /* Capability information */ + uint8_t SSID_len; + uint8_t SSID[32]; + struct + { + uint32_t count; /* # rates in this set */ + uint8_t rates[16]; /* rates in 500kbps units w/hi bit set if basic */ + } rateset; /* supported rates */ + wl_chanspec_t chanspec; /* chanspec for bss */ + uint16_t atim_window; /* units are Kusec */ + uint8_t dtim_period; /* DTIM period */ + int16_t RSSI; /* receive signal strength (in dBm) */ + int8_t phy_noise; /* noise (in dBm) */ + + uint8_t n_cap; /* BSS is 802.11N Capable */ + uint32_t nbss_cap; /* 802.11N BSS Capabilities (based on HT_CAP_*) */ + uint8_t ctl_ch; /* 802.11N BSS control channel number */ + uint32_t reserved32[1]; /* Reserved for expansion of BSS properties */ + uint8_t flags; /* flags */ + uint8_t reserved[3]; /* Reserved for expansion of BSS properties */ + uint8_t basic_mcs[MCSSET_LEN]; /* 802.11N BSS required MCS set */ + + uint16_t ie_offset; /* offset at which IEs start, from beginning */ + uint32_t ie_length; /* byte length of Information Elements */ + int16_t SNR; /* average SNR of during frame reception */ + /* Add new fields here */ + /* variable length Information Elements */ +} wl_bss_info_t; + +typedef struct wlc_ssid +{ + uint32_t SSID_len; + uint8_t SSID[32]; +} wlc_ssid_t; + +#define WL_BSSTYPE_INFRA 1 +#define WL_BSSTYPE_INDEP 0 +#define WL_BSSTYPE_ANY 2 +#define WL_SCANFLAGS_PASSIVE 0x01 +#define WL_SCANFLAGS_PROHIBITED 0x04 + +typedef struct wl_scan_params +{ + wlc_ssid_t ssid; + struct ether_addr bssid; + int8_t bss_type; + int8_t scan_type; + int32_t nprobes; + int32_t active_time; + int32_t passive_time; + int32_t home_time; + int32_t channel_num; + uint16_t channel_list[1]; +} wl_scan_params_t; + +#define WL_SCAN_PARAMS_FIXED_SIZE (64) +#define WL_SCAN_PARAMS_COUNT_MASK (0x0000ffff) +#define WL_SCAN_PARAMS_NSSID_SHIFT (16) +#define WL_SCAN_ACTION_START (1) +#define WL_SCAN_ACTION_CONTINUE (2) +#define WL_SCAN_ACTION_ABORT (3) +#define ISCAN_REQ_VERSION (1) + +typedef struct wl_iscan_params +{ + uint32_t version; + uint16_t action; + uint16_t scan_duration; + wl_scan_params_t params; +} wl_iscan_params_t; + +#define WL_ISCAN_PARAMS_FIXED_SIZE (offsetof(wl_iscan_params_t, params) + sizeof(wlc_ssid_t)) + +typedef struct wl_scan_results +{ + uint32_t buflen; + uint32_t version; + uint32_t count; + wl_bss_info_t bss_info[1]; +} wl_scan_results_t; + +#define WL_SCAN_RESULTS_FIXED_SIZE (12) +#define WL_SCAN_RESULTS_SUCCESS (0) +#define WL_SCAN_RESULTS_PARTIAL (1) +#define WL_SCAN_RESULTS_PENDING (2) +#define WL_SCAN_RESULTS_ABORTED (3) +#define WL_SCAN_RESULTS_NO_MEM (4) +#define ESCAN_REQ_VERSION 1 + +typedef struct wl_escan_params +{ + uint32_t version; + uint16_t action; + uint16_t sync_id; + wl_scan_params_t params; +} wl_escan_params_t; + +#define WL_ESCAN_PARAMS_FIXED_SIZE (offsetof(wl_escan_params_t, params) + sizeof(wlc_ssid_t)) + +typedef struct wl_escan_result +{ + uint32_t buflen; + uint32_t version; + uint16_t sync_id; + uint16_t bss_count; + wl_bss_info_t bss_info[1]; +} wl_escan_result_t; + +#define WL_ESCAN_RESULTS_FIXED_SIZE (sizeof(wl_escan_result_t) - sizeof(wl_bss_info_t)) + +typedef struct wl_iscan_results +{ + uint32_t status; + wl_scan_results_t results; +} wl_iscan_results_t; + +#define WL_ISCAN_RESULTS_FIXED_SIZE \ + (WL_SCAN_RESULTS_FIXED_SIZE + offsetof(wl_iscan_results_t, results)) +#define WL_MAXRATES_IN_SET 16 /* max # of rates in a rateset */ + +typedef struct wl_rateset +{ + uint32_t count; /* # rates in this set */ + uint8_t rates[WL_MAXRATES_IN_SET]; /* rates in 500kbps units w/hi bit set if basic */ +} wl_rateset_t; + +typedef struct wl_uint32_list +{ + uint32_t count; + uint32_t element[1]; +} wl_uint32_list_t; + +typedef struct wl_join_scan_params +{ + uint8_t scan_type; /* 0 use default, active or passive scan */ + int32_t nprobes; /* -1 use default, number of probes per channel */ + int32_t active_time; /* -1 use default, dwell time per channel for + * active scanning */ + int32_t passive_time; /* -1 use default, dwell time per channel + * for passive scanning */ + int32_t home_time; /* -1 use default, dwell time for the home channel + * between channel scans */ +} wl_join_scan_params_t; + +#define NRATE_MCS_INUSE (0x00000080) +#define NRATE_RATE_MASK (0x0000007f) +#define NRATE_STF_MASK (0x0000ff00) +#define NRATE_STF_SHIFT (8) +#define NRATE_OVERRIDE (0x80000000) +#define NRATE_OVERRIDE_MCS_ONLY (0x40000000) +#define NRATE_SGI_MASK (0x00800000) +#define NRATE_SGI_SHIFT (23) +#define NRATE_LDPC_CODING (0x00400000) +#define NRATE_LDPC_SHIFT (22) +#define NRATE_BCMC_OVERRIDE (0x00200000) +#define NRATE_BCMC_SHIFT (21) +#define NRATE_STF_SISO (0) +#define NRATE_STF_CDD (1) +#define NRATE_STF_STBC (2) +#define NRATE_STF_SDM (3) +#define ANTENNA_NUM_1 (1) +#define ANTENNA_NUM_2 (2) +#define ANTENNA_NUM_3 (3) +#define ANTENNA_NUM_4 (4) +#define ANT_SELCFG_AUTO (0x80) +#define ANT_SELCFG_MASK (0x33) +#define ANT_SELCFG_MAX (4) +#define ANT_SELCFG_TX_UNICAST (0) +#define ANT_SELCFG_RX_UNICAST (1) +#define ANT_SELCFG_TX_DEF (2) +#define ANT_SELCFG_RX_DEF (3) + +typedef struct +{ + uint8_t ant_config[ANT_SELCFG_MAX]; + uint8_t num_antcfg; +} wlc_antselcfg_t; + +#define HIGHEST_SINGLE_STREAM_MCS (7) +#define WLC_CNTRY_BUF_SZ (4) + +typedef struct wl_country +{ + int8_t country_abbrev[WLC_CNTRY_BUF_SZ]; + int32_t rev; + int8_t ccode[WLC_CNTRY_BUF_SZ]; +} wl_country_t; + +typedef struct wl_channels_in_country +{ + uint32_t buflen; + uint32_t band; + int8_t country_abbrev[WLC_CNTRY_BUF_SZ]; + uint32_t count; + uint32_t channel[1]; +} wl_channels_in_country_t; + +typedef struct wl_country_list +{ + uint32_t buflen; + uint32_t band_set; + uint32_t band; + uint32_t count; + int8_t country_abbrev[1]; +} wl_country_list_t; + +#define WL_NUM_RPI_BINS 8 +#define WL_RM_TYPE_BASIC 1 +#define WL_RM_TYPE_CCA 2 +#define WL_RM_TYPE_RPI 3 +#define WL_RM_FLAG_PARALLEL (1<<0) +#define WL_RM_FLAG_LATE (1<<1) +#define WL_RM_FLAG_INCAPABLE (1<<2) +#define WL_RM_FLAG_REFUSED (1<<3) + +typedef struct wl_rm_req_elt +{ + int8_t type; + int8_t flags; + wl_chanspec_t chanspec; + uint32_t token; + uint32_t tsf_h; + uint32_t tsf_l; + uint32_t dur; +} wl_rm_req_elt_t; + +typedef struct wl_rm_req +{ + uint32_t token; + uint32_t count; + void *cb; + void *cb_arg; + wl_rm_req_elt_t req[1]; +} wl_rm_req_t; + +#define WL_RM_REQ_FIXED_LEN offsetof(wl_rm_req_t, req) + +typedef struct wl_rm_rep_elt +{ + int8_t type; + int8_t flags; + wl_chanspec_t chanspec; + uint32_t token; + uint32_t tsf_h; + uint32_t tsf_l; + uint32_t dur; + uint32_t len; + uint8_t data[1]; +} wl_rm_rep_elt_t; + +#define WL_RM_REP_ELT_FIXED_LEN 24 +#define WL_RPI_REP_BIN_NUM 8 + +typedef struct wl_rm_rpi_rep +{ + uint8_t rpi[WL_RPI_REP_BIN_NUM]; + int8_t rpi_max[WL_RPI_REP_BIN_NUM]; +} wl_rm_rpi_rep_t; +typedef struct wl_rm_rep +{ + uint32_t token; + uint32_t len; + wl_rm_rep_elt_t rep[1]; +} wl_rm_rep_t; + +#define WL_RM_REP_FIXED_LEN 8 + +#define CRYPTO_ALGO_OFF 0 +#define CRYPTO_ALGO_WEP1 1 +#define CRYPTO_ALGO_TKIP 2 +#define CRYPTO_ALGO_WEP128 3 +#define CRYPTO_ALGO_AES_CCM 4 +#define CRYPTO_ALGO_AES_OCB_MSDU 5 +#define CRYPTO_ALGO_AES_OCB_MPDU 6 +#define CRYPTO_ALGO_NALG 7 + +#define WSEC_GEN_MIC_ERROR 0x0001 +#define WSEC_GEN_REPLAY 0x0002 +#define WSEC_GEN_ICV_ERROR 0x0004 + +#define WL_SOFT_KEY (1 << 0) +#define WL_PRIMARY_KEY (1 << 1) +#define WL_KF_RES_4 (1 << 4) +#define WL_KF_RES_5 (1 << 5) +#define WL_IBSS_PEER_GROUP_KEY (1 << 6) +#define DOT11_MAX_KEY_SIZE 32 + +typedef struct wl_wsec_key +{ + uint32_t index; + uint32_t len; + uint8_t data[DOT11_MAX_KEY_SIZE]; + uint32_t pad_1[18]; + uint32_t algo; + uint32_t flags; + uint32_t pad_2[2]; + int32_t pad_3; + int32_t iv_initialized; + int32_t pad_4; + struct + { + uint32_t hi; + uint16_t lo; + } rxiv; + uint32_t pad_5[2]; + struct ether_addr ea; +} wl_wsec_key_t; + +#define WSEC_MIN_PSK_LEN 8 +#define WSEC_MAX_PSK_LEN 64 +#define WSEC_PASSPHRASE (1<<0) + +typedef struct +{ + uint16_t key_len; + uint16_t flags; + uint8_t key[WSEC_MAX_PSK_LEN]; +} wsec_pmk_t; + +#define OPEN_AUTH 0x0000 +#define SHARED_AUTH 0x0001 +#define WEP_ENABLED 0x0001 +#define TKIP_ENABLED 0x0002 +#define AES_ENABLED 0x0004 +#define WSEC_SWFLAG 0x0008 +#define SES_OW_ENABLED 0x0040 +#define WPA_AUTH_DISABLED 0x0000 +#define WPA_AUTH_NONE 0x0001 +#define WPA_AUTH_UNSPECIFIED 0x0002 +#define WPA_AUTH_PSK 0x0004 +#define WPA2_AUTH_UNSPECIFIED 0x0040 +#define WPA2_AUTH_PSK 0x0080 +#define BRCM_AUTH_PSK 0x0100 +#define BRCM_AUTH_DPT 0x0200 +#define WPA_AUTH_PFN_ANY 0xffffffff +#define MAXPMKID 16 +#define WPA2_PMKID_LEN 16 + +typedef struct _pmkid +{ + struct ether_addr BSSID; + uint8_t PMKID[WPA2_PMKID_LEN]; +} pmkid_t; + +typedef struct _pmkid_list +{ + uint32_t npmkid; + pmkid_t pmkid[1]; +} pmkid_list_t; + +typedef struct _pmkid_cand +{ + struct ether_addr BSSID; + uint8_t preauth; +} pmkid_cand_t; + +typedef struct _pmkid_cand_list +{ + uint32_t npmkid_cand; + pmkid_cand_t pmkid_cand[1]; +} pmkid_cand_list_t; + +typedef struct wl_led_info +{ + uint32_t index; + uint32_t behavior; + uint8_t activehi; +} wl_led_info_t; + +struct wl_dot11_assoc_req +{ + uint16_t capability; + uint16_t listen; +}; + +struct wl_dot11_assoc_resp +{ + uint16_t capability; + uint16_t status; + uint16_t aid; +}; + +typedef struct wl_assoc_info +{ + uint32_t req_len; + uint32_t resp_len; + uint32_t flags; + struct wl_dot11_assoc_req req; + struct ether_addr reassoc_bssid; + struct wl_dot11_assoc_resp resp; +} wl_assoc_info_t; + +#define WLC_ASSOC_REQ_IS_REASSOC 0x01 + +typedef struct +{ + uint32_t byteoff; + uint32_t nbytes; + uint16_t buf[1]; +} srom_rw_t; + +typedef struct +{ + uint32_t source; + uint32_t byteoff; + uint32_t nbytes; +} cis_rw_t; + +#define WLC_CIS_DEFAULT 0 +#define WLC_CIS_SROM 1 +#define WLC_CIS_OTP 2 + +typedef struct +{ + uint32_t byteoff; + uint32_t val; + uint32_t size; + uint32_t band; +} rw_reg_t; + +#define WL_ATTEN_APP_INPUT_PCL_OFF 0 +#define WL_ATTEN_PCL_ON 1 +#define WL_ATTEN_PCL_OFF 2 + +typedef struct +{ + uint16_t auto_ctrl; + uint16_t bb; + uint16_t radio; + uint16_t txctl1; +} atten_t; + +struct wme_tx_params_s +{ + uint8_t short_retry; + uint8_t short_fallback; + uint8_t long_retry; + uint8_t long_fallback; + uint16_t max_rate; +}; +typedef struct wme_tx_params_s wme_tx_params_t; + +#define WL_WME_TX_PARAMS_IO_BYTES (sizeof(wme_tx_params_t) * AC_COUNT) +#define WL_PWRIDX_PCL_OFF -2 +#define WL_PWRIDX_PCL_ON -1 +#define WL_PWRIDX_LOWER_LIMIT -2 +#define WL_PWRIDX_UPPER_LIMIT 63 + +typedef struct +{ + uint32_t val; + struct ether_addr ea; +} scb_val_t; + +#define BCM_MAC_STATUS_INDICATION (0x40010200L) + +typedef struct +{ + uint16_t ver; + uint16_t len; + uint16_t cap; + uint32_t flags; + uint32_t idle; + struct ether_addr ea; + wl_rateset_t rateset; + uint32_t in; + uint32_t listen_interval_inms; + uint32_t tx_pkts; + uint32_t tx_failures; + uint32_t rx_ucast_pkts; + uint32_t rx_mcast_pkts; + uint32_t tx_rate; + uint32_t rx_rate; +} sta_info_t; + +#define WL_OLD_STAINFO_SIZE offsetof(sta_info_t, tx_pkts) +#define WL_STA_VER 2 +#define WL_STA_BRCM 0x1 +#define WL_STA_WME 0x2 +#define WL_STA_ABCAP 0x4 +#define WL_STA_AUTHE 0x8 +#define WL_STA_ASSOC 0x10 +#define WL_STA_AUTHO 0x20 +#define WL_STA_WDS 0x40 +#define WL_STA_WDS_LINKUP 0x80 +#define WL_STA_PS 0x100 +#define WL_STA_APSD_BE 0x200 +#define WL_STA_APSD_BK 0x400 +#define WL_STA_APSD_VI 0x800 +#define WL_STA_APSD_VO 0x1000 +#define WL_STA_N_CAP 0x2000 +#define WL_STA_SCBSTATS 0x4000 +#define WL_WDS_LINKUP WL_STA_WDS_LINKUP + +typedef struct channel_info +{ + int32_t hw_channel; + int32_t target_channel; + int32_t scan_channel; +} channel_info_t; +struct mac_list +{ + uint32_t count; + struct ether_addr ea[1]; +}; +typedef struct get_pktcnt +{ + uint32_t rx_good_pkt; + uint32_t rx_bad_pkt; + uint32_t tx_good_pkt; + uint32_t tx_bad_pkt; + uint32_t rx_ocast_good_pkt; +} get_pktcnt_t; +typedef struct wl_ioctl +{ + uint32_t cmd; + void *buf; + uint32_t len; + uint8_t set; + uint32_t used; + uint32_t needed; +} wl_ioctl_t; + +typedef struct wlc_rev_info +{ + uint32_t vendorid; + uint32_t deviceid; + uint32_t radiorev; + uint32_t chiprev; + uint32_t corerev; + uint32_t boardid; + uint32_t boardvendor; + uint32_t boardrev; + uint32_t driverrev; + uint32_t ucoderev; + uint32_t bus; + uint32_t chipnum; + uint32_t phytype; + uint32_t phyrev; + uint32_t anarev; +} wlc_rev_info_t; + +#define WL_REV_INFO_LEGACY_LENGTH 48 +#define WL_BRAND_MAX 10 + +typedef struct wl_instance_info +{ + uint32_t instance; + int8_t brand[WL_BRAND_MAX]; +} wl_instance_info_t; + +typedef struct wl_txfifo_sz +{ + uint8_t fifo; + uint8_t size; +} wl_txfifo_sz_t; + +#define WLC_IOV_NAME_LEN 30 + +typedef struct wlc_iov_trx_s +{ + uint8_t module; + uint8_t type; + int8_t name[WLC_IOV_NAME_LEN]; +} wlc_iov_trx_t; + +#define IOVAR_STR_BSSCFG_WPA_AUTH "bsscfg:wpa_auth" +#define IOVAR_STR_BSSCFG_WSEC "bsscfg:wsec" +#define IOVAR_STR_BSSCFG_SSID "bsscfg:ssid" +#define IOVAR_STR_BSSCFG_EVENT_MSGS "bsscfg:event_msgs" +#define IOVAR_STR_BSSCFG_CUR_ETHERADDR "bsscfg:cur_etheraddr" +#define IOVAR_STR_BSSCFG_ACTFRAME "bsscfg:actframe" +#define IOVAR_STR_BSSCFG_ACTION_FRAME "bsscfg:wifiaction" +#define IOVAR_STR_BSSCFG_VENDOR_IE "bsscfg:vndr_ie" +#define IOVAR_STR_BSS "bss" +#define IOVAR_STR_BSS_RATESET "bss_rateset" +#define IOVAR_STR_CSA "csa" +#define IOVAR_STR_AMPDU_TID "ampdu_tid" +#define IOVAR_STR_APSTA "apsta" +#define IOVAR_STR_ALLMULTI "allmulti" +#define IOVAR_STR_COUNTRY "country" +#define IOVAR_STR_EVENT_MSGS "event_msgs" +#define IOVAR_STR_ESCAN "escan" +#define IOVAR_STR_SUP_WPA "sup_wpa" +#define IOVAR_STR_CUR_ETHERADDR "cur_etheraddr" +#define IOVAR_STR_QTXPOWER "qtxpower" +#define IOVAR_STR_MCAST_LIST "mcast_list" +#define IOVAR_STR_PM2_SLEEP_RET "pm2_sleep_ret" +#define IOVAR_STR_PM_LIMIT "pm_limit" +#define IOVAR_STR_LISTEN_INTERVAL_BEACON "bcn_li_bcn" +#define IOVAR_STR_LISTEN_INTERVAL_DTIM "bcn_li_dtim" +#define IOVAR_STR_LISTEN_INTERVAL_ASSOC "assoc_listen" +#define IOVAR_PSPOLL_PERIOD "pspoll_prd" +#define IOVAR_STR_VENDOR_IE "vndr_ie" +#define IOVAR_STR_TX_GLOM "bus:txglom" +#define IOVAR_STR_ACTION_FRAME "wifiaction" +#define IOVAR_STR_AC_PARAMS_STA "wme_ac_sta" +#define IOVAR_STR_COUNTERS "counters" +#define IOVAR_STR_PKT_FILTER_ADD "pkt_filter_add" +#define IOVAR_STR_PKT_FILTER_DELETE "pkt_filter_delete" +#define IOVAR_STR_PKT_FILTER_ENABLE "pkt_filter_enable" +#define IOVAR_STR_PKT_FILTER_MODE "pkt_filter_mode" +#define IOVAR_STR_PKT_FILTER_LIST "pkt_filter_list" +#define IOVAR_STR_PKT_FILTER_STATS "pkt_filter_stats" +#define IOVAR_STR_PKT_FILTER_CLEAR_STATS "pkt_filter_clear_stats" +#define IOVAR_STR_DUTY_CYCLE_CCK "dutycycle_cck" +#define IOVAR_STR_DUTY_CYCLE_OFDM "dutycycle_ofdm" +#define IOVAR_STR_MKEEP_ALIVE "mkeep_alive" +#define IOVAR_STR_VERSION "ver" +#define IOVAR_STR_SUP_WPA2_EAPVER "sup_wpa2_eapver" +#define IOVAR_STR_ROAM_OFF "roam_off" +#define IOVAR_STR_CLOSEDNET "closednet" +#define IOVAR_STR_P2P_DISC "p2p_disc" +#define IOVAR_STR_P2P_DEV "p2p_dev" +#define IOVAR_STR_P2P_IFADD "p2p_ifadd" +#define IOVAR_STR_P2P_IFDEL "p2p_ifdel" +#define IOVAR_STR_P2P_IFUPD "p2p_ifupd" +#define IOVAR_STR_P2P_SCAN "p2p_scan" +#define IOVAR_STR_P2P_STATE "p2p_state" +#define IOVAR_STR_P2P_SSID "p2p_ssid" +#define IOVAR_STR_NRATE "nrate" +#define IOVAR_STR_BGRATE "bg_rate" +#define IOVAR_STR_ARATE "a_rate" +#define IOVAR_STR_NMODE "nmode" +#define IOVAR_STR_MAX_ASSOC "maxassoc" +#define IOVAR_STR_2G_MULTICAST_RATE "2g_mrate" +#define IOVAR_STR_MPC "mpc" +#define IOVAR_STR_AMPDU_BA_WINDOW_SIZE "ampdu_ba_wsize" +#define IOVAR_STR_AMPDU_MPDU "ampdu_mpdu" +#define IOVAR_STR_AMPDU_RX_FACTOR "ampdu_rx_factor" +#define IOVAR_STR_MIMO_BW_CAP "mimo_bw_cap" + +#define WLC_IOCTL_MAGIC ( 0x14e46c77 ) +#define WLC_IOCTL_VERSION ( 1 ) +#define WLC_IOCTL_SMLEN ( 256 ) +#define WLC_IOCTL_MEDLEN ( 1536 ) +#define WLC_IOCTL_MAXLEN ( 8192 ) + +#define WLC_GET_MAGIC ( (uint32_t) 0 ) +#define WLC_GET_VERSION ( (uint32_t) 1 ) +#define WLC_UP ( (uint32_t) 2 ) +#define WLC_DOWN ( (uint32_t) 3 ) +#define WLC_GET_LOOP ( (uint32_t) 4 ) +#define WLC_SET_LOOP ( (uint32_t) 5 ) +#define WLC_DUMP ( (uint32_t) 6 ) +#define WLC_GET_MSGLEVEL ( (uint32_t) 7 ) +#define WLC_SET_MSGLEVEL ( (uint32_t) 8 ) +#define WLC_GET_PROMISC ( (uint32_t) 9 ) +#define WLC_SET_PROMISC ( (uint32_t) 10 ) +#define WLC_GET_RATE ( (uint32_t) 12 ) +#define WLC_GET_INSTANCE ( (uint32_t) 14 ) +#define WLC_GET_INFRA ( (uint32_t) 19 ) +#define WLC_SET_INFRA ( (uint32_t) 20 ) +#define WLC_GET_AUTH ( (uint32_t) 21 ) +#define WLC_SET_AUTH ( (uint32_t) 22 ) +#define WLC_GET_BSSID ( (uint32_t) 23 ) +#define WLC_SET_BSSID ( (uint32_t) 24 ) +#define WLC_GET_SSID ( (uint32_t) 25 ) +#define WLC_SET_SSID ( (uint32_t) 26 ) +#define WLC_RESTART ( (uint32_t) 27 ) +#define WLC_GET_CHANNEL ( (uint32_t) 29 ) +#define WLC_SET_CHANNEL ( (uint32_t) 30 ) +#define WLC_GET_SRL ( (uint32_t) 31 ) +#define WLC_SET_SRL ( (uint32_t) 32 ) +#define WLC_GET_LRL ( (uint32_t) 33 ) +#define WLC_SET_LRL ( (uint32_t) 34 ) +#define WLC_GET_PLCPHDR ( (uint32_t) 35 ) +#define WLC_SET_PLCPHDR ( (uint32_t) 36 ) +#define WLC_GET_RADIO ( (uint32_t) 37 ) +#define WLC_SET_RADIO ( (uint32_t) 38 ) +#define WLC_GET_PHYTYPE ( (uint32_t) 39 ) +#define WLC_DUMP_RATE ( (uint32_t) 40 ) +#define WLC_SET_RATE_PARAMS ( (uint32_t) 41 ) +#define WLC_GET_KEY ( (uint32_t) 44 ) +#define WLC_SET_KEY ( (uint32_t) 45 ) +#define WLC_GET_REGULATORY ( (uint32_t) 46 ) +#define WLC_SET_REGULATORY ( (uint32_t) 47 ) +#define WLC_GET_PASSIVE_SCAN ( (uint32_t) 48 ) +#define WLC_SET_PASSIVE_SCAN ( (uint32_t) 49 ) +#define WLC_SCAN ( (uint32_t) 50 ) +#define WLC_SCAN_RESULTS ( (uint32_t) 51 ) +#define WLC_DISASSOC ( (uint32_t) 52 ) +#define WLC_REASSOC ( (uint32_t) 53 ) +#define WLC_GET_ROAM_TRIGGER ( (uint32_t) 54 ) +#define WLC_SET_ROAM_TRIGGER ( (uint32_t) 55 ) +#define WLC_GET_ROAM_DELTA ( (uint32_t) 56 ) +#define WLC_SET_ROAM_DELTA ( (uint32_t) 57 ) +#define WLC_GET_ROAM_SCAN_PERIOD ( (uint32_t) 58 ) +#define WLC_SET_ROAM_SCAN_PERIOD ( (uint32_t) 59 ) +#define WLC_EVM ( (uint32_t) 60 ) +#define WLC_GET_TXANT ( (uint32_t) 61 ) +#define WLC_SET_TXANT ( (uint32_t) 62 ) +#define WLC_GET_ANTDIV ( (uint32_t) 63 ) +#define WLC_SET_ANTDIV ( (uint32_t) 64 ) +#define WLC_GET_CLOSED ( (uint32_t) 67 ) +#define WLC_SET_CLOSED ( (uint32_t) 68 ) +#define WLC_GET_MACLIST ( (uint32_t) 69 ) +#define WLC_SET_MACLIST ( (uint32_t) 70 ) +#define WLC_GET_RATESET ( (uint32_t) 71 ) +#define WLC_SET_RATESET ( (uint32_t) 72 ) +#define WLC_LONGTRAIN ( (uint32_t) 74 ) +#define WLC_GET_BCNPRD ( (uint32_t) 75 ) +#define WLC_SET_BCNPRD ( (uint32_t) 76 ) +#define WLC_GET_DTIMPRD ( (uint32_t) 77 ) +#define WLC_SET_DTIMPRD ( (uint32_t) 78 ) +#define WLC_GET_SROM ( (uint32_t) 79 ) +#define WLC_SET_SROM ( (uint32_t) 80 ) +#define WLC_GET_WEP_RESTRICT ( (uint32_t) 81 ) +#define WLC_SET_WEP_RESTRICT ( (uint32_t) 82 ) +#define WLC_GET_COUNTRY ( (uint32_t) 83 ) +#define WLC_SET_COUNTRY ( (uint32_t) 84 ) +#define WLC_GET_PM ( (uint32_t) 85 ) +#define WLC_SET_PM ( (uint32_t) 86 ) +#define WLC_GET_WAKE ( (uint32_t) 87 ) +#define WLC_SET_WAKE ( (uint32_t) 88 ) +#define WLC_GET_FORCELINK ( (uint32_t) 90 ) +#define WLC_SET_FORCELINK ( (uint32_t) 91 ) +#define WLC_FREQ_ACCURACY ( (uint32_t) 92 ) +#define WLC_CARRIER_SUPPRESS ( (uint32_t) 93 ) +#define WLC_GET_PHYREG ( (uint32_t) 94 ) +#define WLC_SET_PHYREG ( (uint32_t) 95 ) +#define WLC_GET_RADIOREG ( (uint32_t) 96 ) +#define WLC_SET_RADIOREG ( (uint32_t) 97 ) +#define WLC_GET_REVINFO ( (uint32_t) 98 ) +#define WLC_GET_UCANTDIV ( (uint32_t) 99 ) +#define WLC_SET_UCANTDIV ( (uint32_t) 100 ) +#define WLC_R_REG ( (uint32_t) 101 ) +#define WLC_W_REG ( (uint32_t) 102 ) +#define WLC_GET_MACMODE ( (uint32_t) 105 ) +#define WLC_SET_MACMODE ( (uint32_t) 106 ) +#define WLC_GET_MONITOR ( (uint32_t) 107 ) +#define WLC_SET_MONITOR ( (uint32_t) 108 ) +#define WLC_GET_GMODE ( (uint32_t) 109 ) +#define WLC_SET_GMODE ( (uint32_t) 110 ) +#define WLC_GET_LEGACY_ERP ( (uint32_t) 111 ) +#define WLC_SET_LEGACY_ERP ( (uint32_t) 112 ) +#define WLC_GET_RX_ANT ( (uint32_t) 113 ) +#define WLC_GET_CURR_RATESET ( (uint32_t) 114 ) +#define WLC_GET_SCANSUPPRESS ( (uint32_t) 115 ) +#define WLC_SET_SCANSUPPRESS ( (uint32_t) 116 ) +#define WLC_GET_AP ( (uint32_t) 117 ) +#define WLC_SET_AP ( (uint32_t) 118 ) +#define WLC_GET_EAP_RESTRICT ( (uint32_t) 119 ) +#define WLC_SET_EAP_RESTRICT ( (uint32_t) 120 ) +#define WLC_SCB_AUTHORIZE ( (uint32_t) 121 ) +#define WLC_SCB_DEAUTHORIZE ( (uint32_t) 122 ) +#define WLC_GET_WDSLIST ( (uint32_t) 123 ) +#define WLC_SET_WDSLIST ( (uint32_t) 124 ) +#define WLC_GET_ATIM ( (uint32_t) 125 ) +#define WLC_SET_ATIM ( (uint32_t) 126 ) +#define WLC_GET_RSSI ( (uint32_t) 127 ) +#define WLC_GET_PHYANTDIV ( (uint32_t) 128 ) +#define WLC_SET_PHYANTDIV ( (uint32_t) 129 ) +#define WLC_AP_RX_ONLY ( (uint32_t) 130 ) +#define WLC_GET_TX_PATH_PWR ( (uint32_t) 131 ) +#define WLC_SET_TX_PATH_PWR ( (uint32_t) 132 ) +#define WLC_GET_WSEC ( (uint32_t) 133 ) +#define WLC_SET_WSEC ( (uint32_t) 134 ) +#define WLC_GET_PHY_NOISE ( (uint32_t) 135 ) +#define WLC_GET_BSS_INFO ( (uint32_t) 136 ) +#define WLC_GET_PKTCNTS ( (uint32_t) 137 ) +#define WLC_GET_LAZYWDS ( (uint32_t) 138 ) +#define WLC_SET_LAZYWDS ( (uint32_t) 139 ) +#define WLC_GET_BANDLIST ( (uint32_t) 140 ) +#define WLC_GET_BAND ( (uint32_t) 141 ) +#define WLC_SET_BAND ( (uint32_t) 142 ) +#define WLC_SCB_DEAUTHENTICATE ( (uint32_t) 143 ) +#define WLC_GET_SHORTSLOT ( (uint32_t) 144 ) +#define WLC_GET_SHORTSLOT_OVERRIDE ( (uint32_t) 145 ) +#define WLC_SET_SHORTSLOT_OVERRIDE ( (uint32_t) 146 ) +#define WLC_GET_SHORTSLOT_RESTRICT ( (uint32_t) 147 ) +#define WLC_SET_SHORTSLOT_RESTRICT ( (uint32_t) 148 ) +#define WLC_GET_GMODE_PROTECTION ( (uint32_t) 149 ) +#define WLC_GET_GMODE_PROTECTION_OVERRIDE ( (uint32_t) 150 ) +#define WLC_SET_GMODE_PROTECTION_OVERRIDE ( (uint32_t) 151 ) +#define WLC_UPGRADE ( (uint32_t) 152 ) +#define WLC_GET_IGNORE_BCNS ( (uint32_t) 155 ) +#define WLC_SET_IGNORE_BCNS ( (uint32_t) 156 ) +#define WLC_GET_SCB_TIMEOUT ( (uint32_t) 157 ) +#define WLC_SET_SCB_TIMEOUT ( (uint32_t) 158 ) +#define WLC_GET_ASSOCLIST ( (uint32_t) 159 ) +#define WLC_GET_CLK ( (uint32_t) 160 ) +#define WLC_SET_CLK ( (uint32_t) 161 ) +#define WLC_GET_UP ( (uint32_t) 162 ) +#define WLC_OUT ( (uint32_t) 163 ) +#define WLC_GET_WPA_AUTH ( (uint32_t) 164 ) +#define WLC_SET_WPA_AUTH ( (uint32_t) 165 ) +#define WLC_GET_UCFLAGS ( (uint32_t) 166 ) +#define WLC_SET_UCFLAGS ( (uint32_t) 167 ) +#define WLC_GET_PWRIDX ( (uint32_t) 168 ) +#define WLC_SET_PWRIDX ( (uint32_t) 169 ) +#define WLC_GET_TSSI ( (uint32_t) 170 ) +#define WLC_GET_SUP_RATESET_OVERRIDE ( (uint32_t) 171 ) +#define WLC_SET_SUP_RATESET_OVERRIDE ( (uint32_t) 172 ) +#define WLC_GET_PROTECTION_CONTROL ( (uint32_t) 178 ) +#define WLC_SET_PROTECTION_CONTROL ( (uint32_t) 179 ) +#define WLC_GET_PHYLIST ( (uint32_t) 180 ) +#define WLC_ENCRYPT_STRENGTH ( (uint32_t) 181 ) +#define WLC_DECRYPT_STATUS ( (uint32_t) 182 ) +#define WLC_GET_KEY_SEQ ( (uint32_t) 183 ) +#define WLC_GET_SCAN_CHANNEL_TIME ( (uint32_t) 184 ) +#define WLC_SET_SCAN_CHANNEL_TIME ( (uint32_t) 185 ) +#define WLC_GET_SCAN_UNASSOC_TIME ( (uint32_t) 186 ) +#define WLC_SET_SCAN_UNASSOC_TIME ( (uint32_t) 187 ) +#define WLC_GET_SCAN_HOME_TIME ( (uint32_t) 188 ) +#define WLC_SET_SCAN_HOME_TIME ( (uint32_t) 189 ) +#define WLC_GET_SCAN_NPROBES ( (uint32_t) 190 ) +#define WLC_SET_SCAN_NPROBES ( (uint32_t) 191 ) +#define WLC_GET_PRB_RESP_TIMEOUT ( (uint32_t) 192 ) +#define WLC_SET_PRB_RESP_TIMEOUT ( (uint32_t) 193 ) +#define WLC_GET_ATTEN ( (uint32_t) 194 ) +#define WLC_SET_ATTEN ( (uint32_t) 195 ) +#define WLC_GET_SHMEM ( (uint32_t) 196 ) +#define WLC_SET_SHMEM ( (uint32_t) 197 ) +#define WLC_SET_WSEC_TEST ( (uint32_t) 200 ) +#define WLC_SCB_DEAUTHENTICATE_FOR_REASON ( (uint32_t) 201 ) +#define WLC_TKIP_COUNTERMEASURES ( (uint32_t) 202 ) +#define WLC_GET_PIOMODE ( (uint32_t) 203 ) +#define WLC_SET_PIOMODE ( (uint32_t) 204 ) +#define WLC_SET_ASSOC_PREFER ( (uint32_t) 205 ) +#define WLC_GET_ASSOC_PREFER ( (uint32_t) 206 ) +#define WLC_SET_ROAM_PREFER ( (uint32_t) 207 ) +#define WLC_GET_ROAM_PREFER ( (uint32_t) 208 ) +#define WLC_SET_LED ( (uint32_t) 209 ) +#define WLC_GET_LED ( (uint32_t) 210 ) +#define WLC_GET_INTERFERENCE_MODE ( (uint32_t) 211 ) +#define WLC_SET_INTERFERENCE_MODE ( (uint32_t) 212 ) +#define WLC_GET_CHANNEL_QA ( (uint32_t) 213 ) +#define WLC_START_CHANNEL_QA ( (uint32_t) 214 ) +#define WLC_GET_CHANNEL_SEL ( (uint32_t) 215 ) +#define WLC_START_CHANNEL_SEL ( (uint32_t) 216 ) +#define WLC_GET_VALID_CHANNELS ( (uint32_t) 217 ) +#define WLC_GET_FAKEFRAG ( (uint32_t) 218 ) +#define WLC_SET_FAKEFRAG ( (uint32_t) 219 ) +#define WLC_GET_PWROUT_PERCENTAGE ( (uint32_t) 220 ) +#define WLC_SET_PWROUT_PERCENTAGE ( (uint32_t) 221 ) +#define WLC_SET_BAD_FRAME_PREEMPT ( (uint32_t) 222 ) +#define WLC_GET_BAD_FRAME_PREEMPT ( (uint32_t) 223 ) +#define WLC_SET_LEAP_LIST ( (uint32_t) 224 ) +#define WLC_GET_LEAP_LIST ( (uint32_t) 225 ) +#define WLC_GET_CWMIN ( (uint32_t) 226 ) +#define WLC_SET_CWMIN ( (uint32_t) 227 ) +#define WLC_GET_CWMAX ( (uint32_t) 228 ) +#define WLC_SET_CWMAX ( (uint32_t) 229 ) +#define WLC_GET_WET ( (uint32_t) 230 ) +#define WLC_SET_WET ( (uint32_t) 231 ) +#define WLC_GET_PUB ( (uint32_t) 232 ) +#define WLC_GET_KEY_PRIMARY ( (uint32_t) 235 ) +#define WLC_SET_KEY_PRIMARY ( (uint32_t) 236 ) +#define WLC_GET_ACI_ARGS ( (uint32_t) 238 ) +#define WLC_SET_ACI_ARGS ( (uint32_t) 239 ) +#define WLC_UNSET_CALLBACK ( (uint32_t) 240 ) +#define WLC_SET_CALLBACK ( (uint32_t) 241 ) +#define WLC_GET_RADAR ( (uint32_t) 242 ) +#define WLC_SET_RADAR ( (uint32_t) 243 ) +#define WLC_SET_SPECT_MANAGMENT ( (uint32_t) 244 ) +#define WLC_GET_SPECT_MANAGMENT ( (uint32_t) 245 ) +#define WLC_WDS_GET_REMOTE_HWADDR ( (uint32_t) 246 ) +#define WLC_WDS_GET_WPA_SUP ( (uint32_t) 247 ) +#define WLC_SET_CS_SCAN_TIMER ( (uint32_t) 248 ) +#define WLC_GET_CS_SCAN_TIMER ( (uint32_t) 249 ) +#define WLC_MEASURE_REQUEST ( (uint32_t) 250 ) +#define WLC_INIT ( (uint32_t) 251 ) +#define WLC_SEND_QUIET ( (uint32_t) 252 ) +#define WLC_KEEPALIVE ( (uint32_t) 253 ) +#define WLC_SEND_PWR_CONSTRAINT ( (uint32_t) 254 ) +#define WLC_UPGRADE_STATUS ( (uint32_t) 255 ) +#define WLC_CURRENT_PWR ( (uint32_t) 256 ) +#define WLC_GET_SCAN_PASSIVE_TIME ( (uint32_t) 257 ) +#define WLC_SET_SCAN_PASSIVE_TIME ( (uint32_t) 258 ) +#define WLC_LEGACY_LINK_BEHAVIOR ( (uint32_t) 259 ) +#define WLC_GET_CHANNELS_IN_COUNTRY ( (uint32_t) 260 ) +#define WLC_GET_COUNTRY_LIST ( (uint32_t) 261 ) +#define WLC_GET_VAR ( (uint32_t) 262 ) +#define WLC_SET_VAR ( (uint32_t) 263 ) +#define WLC_NVRAM_GET ( (uint32_t) 264 ) +#define WLC_NVRAM_SET ( (uint32_t) 265 ) +#define WLC_NVRAM_DUMP ( (uint32_t) 266 ) +#define WLC_REBOOT ( (uint32_t) 267 ) +#define WLC_SET_WSEC_PMK ( (uint32_t) 268 ) +#define WLC_GET_AUTH_MODE ( (uint32_t) 269 ) +#define WLC_SET_AUTH_MODE ( (uint32_t) 270 ) +#define WLC_GET_WAKEENTRY ( (uint32_t) 271 ) +#define WLC_SET_WAKEENTRY ( (uint32_t) 272 ) +#define WLC_NDCONFIG_ITEM ( (uint32_t) 273 ) +#define WLC_NVOTPW ( (uint32_t) 274 ) +#define WLC_OTPW ( (uint32_t) 275 ) +#define WLC_IOV_BLOCK_GET ( (uint32_t) 276 ) +#define WLC_IOV_MODULES_GET ( (uint32_t) 277 ) +#define WLC_SOFT_RESET ( (uint32_t) 278 ) +#define WLC_GET_ALLOW_MODE ( (uint32_t) 279 ) +#define WLC_SET_ALLOW_MODE ( (uint32_t) 280 ) +#define WLC_GET_DESIRED_BSSID ( (uint32_t) 281 ) +#define WLC_SET_DESIRED_BSSID ( (uint32_t) 282 ) +#define WLC_DISASSOC_MYAP ( (uint32_t) 283 ) +#define WLC_GET_NBANDS ( (uint32_t) 284 ) +#define WLC_GET_BANDSTATES ( (uint32_t) 285 ) +#define WLC_GET_WLC_BSS_INFO ( (uint32_t) 286 ) +#define WLC_GET_ASSOC_INFO ( (uint32_t) 287 ) +#define WLC_GET_OID_PHY ( (uint32_t) 288 ) +#define WLC_SET_OID_PHY ( (uint32_t) 289 ) +#define WLC_SET_ASSOC_TIME ( (uint32_t) 290 ) +#define WLC_GET_DESIRED_SSID ( (uint32_t) 291 ) +#define WLC_GET_CHANSPEC ( (uint32_t) 292 ) +#define WLC_GET_ASSOC_STATE ( (uint32_t) 293 ) +#define WLC_SET_PHY_STATE ( (uint32_t) 294 ) +#define WLC_GET_SCAN_PENDING ( (uint32_t) 295 ) +#define WLC_GET_SCANREQ_PENDING ( (uint32_t) 296 ) +#define WLC_GET_PREV_ROAM_REASON ( (uint32_t) 297 ) +#define WLC_SET_PREV_ROAM_REASON ( (uint32_t) 298 ) +#define WLC_GET_BANDSTATES_PI ( (uint32_t) 299 ) +#define WLC_GET_PHY_STATE ( (uint32_t) 300 ) +#define WLC_GET_BSS_WPA_RSN ( (uint32_t) 301 ) +#define WLC_GET_BSS_WPA2_RSN ( (uint32_t) 302 ) +#define WLC_GET_BSS_BCN_TS ( (uint32_t) 303 ) +#define WLC_GET_INT_DISASSOC ( (uint32_t) 304 ) +#define WLC_SET_NUM_PEERS ( (uint32_t) 305 ) +#define WLC_GET_NUM_BSS ( (uint32_t) 306 ) +#define WLC_GET_WSEC_PMK ( (uint32_t) 318 ) +#define WLC_GET_RANDOM_BYTES ( (uint32_t) 319 ) +#define WLC_LAST ( (uint32_t) 320 ) + +#define CMN_IOCTL_OFF 0x180 +#define WL_OID_BASE 0xFFE41420 +#define OID_WL_GETINSTANCE (WL_OID_BASE + WLC_GET_INSTANCE) +#define OID_WL_GET_FORCELINK (WL_OID_BASE + WLC_GET_FORCELINK) +#define OID_WL_SET_FORCELINK (WL_OID_BASE + WLC_SET_FORCELINK) +#define OID_WL_ENCRYPT_STRENGTH (WL_OID_BASE + WLC_ENCRYPT_STRENGTH) +#define OID_WL_DECRYPT_STATUS (WL_OID_BASE + WLC_DECRYPT_STATUS) +#define OID_LEGACY_LINK_BEHAVIOR (WL_OID_BASE + WLC_LEGACY_LINK_BEHAVIOR) +#define OID_WL_NDCONFIG_ITEM (WL_OID_BASE + WLC_NDCONFIG_ITEM) +#define OID_STA_CHANSPEC (WL_OID_BASE + WLC_GET_CHANSPEC) +#define OID_STA_NBANDS (WL_OID_BASE + WLC_GET_NBANDS) +#define OID_STA_GET_PHY (WL_OID_BASE + WLC_GET_OID_PHY) +#define OID_STA_SET_PHY (WL_OID_BASE + WLC_SET_OID_PHY) +#define OID_STA_ASSOC_TIME (WL_OID_BASE + WLC_SET_ASSOC_TIME) +#define OID_STA_DESIRED_SSID (WL_OID_BASE + WLC_GET_DESIRED_SSID) +#define OID_STA_SET_PHY_STATE (WL_OID_BASE + WLC_SET_PHY_STATE) +#define OID_STA_SCAN_PENDING (WL_OID_BASE + WLC_GET_SCAN_PENDING) +#define OID_STA_SCANREQ_PENDING (WL_OID_BASE + WLC_GET_SCANREQ_PENDING) +#define OID_STA_GET_ROAM_REASON (WL_OID_BASE + WLC_GET_PREV_ROAM_REASON) +#define OID_STA_SET_ROAM_REASON (WL_OID_BASE + WLC_SET_PREV_ROAM_REASON) +#define OID_STA_GET_PHY_STATE (WL_OID_BASE + WLC_GET_PHY_STATE) +#define OID_STA_INT_DISASSOC (WL_OID_BASE + WLC_GET_INT_DISASSOC) +#define OID_STA_SET_NUM_PEERS (WL_OID_BASE + WLC_SET_NUM_PEERS) +#define OID_STA_GET_NUM_BSS (WL_OID_BASE + WLC_GET_NUM_BSS) +#define WL_DECRYPT_STATUS_SUCCESS 1 +#define WL_DECRYPT_STATUS_FAILURE 2 +#define WL_DECRYPT_STATUS_UNKNOWN 3 +#define WLC_UPGRADE_SUCCESS 0 +#define WLC_UPGRADE_PENDING 1 +#define WL_RADIO_SW_DISABLE (1<<0) +#define WL_RADIO_HW_DISABLE (1<<1) +#define WL_RADIO_MPC_DISABLE (1<<2) +#define WL_RADIO_COUNTRY_DISABLE (1<<3) +#define WL_TXPWR_OVERRIDE (1U<<31) +#define WL_PHY_PAVARS_LEN (6) +#define WL_DIAG_INTERRUPT (1) +#define WL_DIAG_LOOPBACK (2) +#define WL_DIAG_MEMORY (3) +#define WL_DIAG_LED (4) +#define WL_DIAG_REG (5) +#define WL_DIAG_SROM (6) +#define WL_DIAG_DMA (7) +#define WL_DIAGERR_SUCCESS (0) +#define WL_DIAGERR_FAIL_TO_RUN (1) +#define WL_DIAGERR_NOT_SUPPORTED (2) +#define WL_DIAGERR_INTERRUPT_FAIL (3) +#define WL_DIAGERR_LOOPBACK_FAIL (4) +#define WL_DIAGERR_SROM_FAIL (5) +#define WL_DIAGERR_SROM_BADCRC (6) +#define WL_DIAGERR_REG_FAIL (7) +#define WL_DIAGERR_MEMORY_FAIL (8) +#define WL_DIAGERR_NOMEM (9) +#define WL_DIAGERR_DMA_FAIL (10) +#define WL_DIAGERR_MEMORY_TIMEOUT (11) +#define WL_DIAGERR_MEMORY_BADPATTERN (12) +#define WLC_BAND_AUTO (0) +#define WLC_BAND_5G (1) +#define WLC_BAND_2G (2) +#define WLC_BAND_ALL (3) +#define WL_CHAN_FREQ_RANGE_2G (0) +#define WL_CHAN_FREQ_RANGE_5GL (1) +#define WL_CHAN_FREQ_RANGE_5GM (2) +#define WL_CHAN_FREQ_RANGE_5GH (3) +#define WLC_PHY_TYPE_A (0) +#define WLC_PHY_TYPE_B (1) +#define WLC_PHY_TYPE_G (2) +#define WLC_PHY_TYPE_N (4) +#define WLC_PHY_TYPE_LP (5) +#define WLC_PHY_TYPE_SSN (6) +#define WLC_PHY_TYPE_NULL (0xf) +#define WLC_MACMODE_DISABLED (0) +#define WLC_MACMODE_DENY (1) +#define WLC_MACMODE_ALLOW (2) +#define GMODE_LEGACY_B (0) +#define GMODE_AUTO (1) +#define GMODE_ONLY (2) +#define GMODE_B_DEFERRED (3) +#define GMODE_PERFORMANCE (4) +#define GMODE_LRS (5) +#define GMODE_MAX (6) +#define WLC_PLCP_AUTO (-1) +#define WLC_PLCP_SHORT (0) +#define WLC_PLCP_LONG (1) +#define WLC_PROTECTION_AUTO (-1) +#define WLC_PROTECTION_OFF (0) +#define WLC_PROTECTION_ON (1) +#define WLC_PROTECTION_MMHDR_ONLY (2) +#define WLC_PROTECTION_CTS_ONLY (3) +#define WLC_PROTECTION_CTL_OFF (0) +#define WLC_PROTECTION_CTL_LOCAL (1) +#define WLC_PROTECTION_CTL_OVERLAP (2) +#define WLC_N_PROTECTION_OFF (0) +#define WLC_N_PROTECTION_OPTIONAL (1) +#define WLC_N_PROTECTION_20IN40 (2) +#define WLC_N_PROTECTION_MIXEDMODE (3) +#define WLC_N_PREAMBLE_MIXEDMODE (0) +#define WLC_N_PREAMBLE_GF (1) +#define WLC_N_BW_20ALL (0) +#define WLC_N_BW_40ALL (1) +#define WLC_N_BW_20IN2G_40IN5G (2) +#define WLC_N_TXRX_CHAIN0 (0) +#define WLC_N_TXRX_CHAIN1 (1) +#define WLC_N_SGI_20 (0x01) +#define WLC_N_SGI_40 (0x02) +#define PM_OFF (0) +#define PM_MAX (1) +#define PM_FAST (2) +#define INTERFERE_NONE (0) +#define NON_WLAN (1) +#define WLAN_MANUAL (2) +#define WLAN_AUTO (3) +#define AUTO_ACTIVE (1 << 7) + +typedef struct wl_aci_args +{ + int32_t enter_aci_thresh; + int32_t exit_aci_thresh; + int32_t usec_spin; + int32_t glitch_delay; + uint16_t nphy_adcpwr_enter_thresh; + uint16_t nphy_adcpwr_exit_thresh; + uint16_t nphy_repeat_ctr; + uint16_t nphy_num_samples; + uint16_t nphy_undetect_window_sz; + uint16_t nphy_b_energy_lo_aci; + uint16_t nphy_b_energy_md_aci; + uint16_t nphy_b_energy_hi_aci; +} wl_aci_args_t; + +#define WL_ACI_ARGS_LEGACY_LENGTH 16 + +typedef struct +{ + int32_t npulses; + int32_t ncontig; + int32_t min_pw; + int32_t max_pw; + uint16_t thresh0; + uint16_t thresh1; + uint16_t blank; + uint16_t fmdemodcfg; + int32_t npulses_lp; + int32_t min_pw_lp; + int32_t max_pw_lp; + int32_t min_fm_lp; + int32_t max_deltat_lp; + int32_t min_deltat; + int32_t max_deltat; + uint16_t autocorr; + uint16_t st_level_time; + uint16_t t2_min; + uint32_t version; +} wl_radar_args_t; + +#define WL_RADAR_ARGS_VERSION 1 +#define WL_RADAR_DETECTOR_OFF 0 +#define WL_RADAR_DETECTOR_ON 1 +#define WL_RADAR_SIMULATED 2 +#define WL_RSSI_ANT_VERSION 1 +#define WL_RSSI_ANT_MAX 4 + +typedef struct +{ + uint32_t version; + uint32_t count; + int8_t rssi_ant[WL_RSSI_ANT_MAX]; +} wl_rssi_ant_t; + +#define WL_DFS_CACSTATE_IDLE 0 +#define WL_DFS_CACSTATE_PREISM_CAC 1 +#define WL_DFS_CACSTATE_ISM 2 +#define WL_DFS_CACSTATE_CSA 3 +#define WL_DFS_CACSTATE_POSTISM_CAC 4 +#define WL_DFS_CACSTATE_PREISM_OOC 5 +#define WL_DFS_CACSTATE_POSTISM_OOC 6 +#define WL_DFS_CACSTATES 7 + +typedef struct +{ + uint32_t state; + uint32_t duration; + wl_chanspec_t chanspec_cleared; + uint16_t pad; +} wl_dfs_status_t; + +#define NUM_PWRCTRL_RATES 12 + +typedef struct +{ + uint8_t txpwr_band_max[NUM_PWRCTRL_RATES]; + uint8_t txpwr_limit[NUM_PWRCTRL_RATES]; + uint8_t txpwr_local_max; + uint8_t txpwr_local_constraint; + uint8_t txpwr_chan_reg_max; + uint8_t txpwr_target[2][NUM_PWRCTRL_RATES]; + uint8_t txpwr_est_Pout[2]; + uint8_t txpwr_opo[NUM_PWRCTRL_RATES]; + uint8_t txpwr_bphy_cck_max[NUM_PWRCTRL_RATES]; + uint8_t txpwr_bphy_ofdm_max; + uint8_t txpwr_aphy_max[NUM_PWRCTRL_RATES]; + int8_t txpwr_antgain[2]; + uint8_t txpwr_est_Pout_gofdm; +} tx_power_legacy_t; + +#define WL_TX_POWER_RATES 45 +#define WL_TX_POWER_CCK_FIRST 0 +#define WL_TX_POWER_CCK_NUM 4 +#define WL_TX_POWER_OFDM_FIRST 4 +#define WL_TX_POWER_OFDM_NUM 8 +#define WL_TX_POWER_MCS_SISO_NUM 8 +#define WL_TX_POWER_MCS20_FIRST 12 +#define WL_TX_POWER_MCS20_NUM 16 +#define WL_TX_POWER_MCS40_FIRST 28 +#define WL_TX_POWER_MCS40_NUM 17 +#define WL_TX_POWER_MCS20SISO_NUM 8 +#define WL_TX_POWER_MCS40_LAST 44 +#define WL_TX_POWER_F_ENABLED 1 +#define WL_TX_POWER_F_HW 2 +#define WL_TX_POWER_F_MIMO 4 +#define WL_TX_POWER_F_SISO 8 +#define WL_TX_POWER_F_40M_CAP 16 + +typedef struct +{ + uint32_t flags; + wl_chanspec_t chanspec; + wl_chanspec_t local_chanspec; + uint8_t local_max; + uint8_t local_constraint; + int8_t antgain[2]; + uint8_t rf_cores; + uint8_t est_Pout[4]; + uint8_t est_Pout_cck; + uint8_t user_limit[WL_TX_POWER_RATES]; + uint8_t reg_limit[WL_TX_POWER_RATES]; + uint8_t board_limit[WL_TX_POWER_RATES]; + uint8_t target[WL_TX_POWER_RATES]; +} tx_power_t; + +typedef struct tx_inst_power +{ + uint8_t txpwr_est_Pout[2]; + uint8_t txpwr_est_Pout_gofdm; +} tx_inst_power_t; + +#define WLC_MEASURE_TPC 1 +#define WLC_MEASURE_CHANNEL_BASIC 2 +#define WLC_MEASURE_CHANNEL_CCA 3 +#define WLC_MEASURE_CHANNEL_RPI 4 +#define SPECT_MNGMT_OFF 0 +#define SPECT_MNGMT_LOOSE_11H 1 +#define SPECT_MNGMT_STRICT_11H 2 +#define SPECT_MNGMT_STRICT_11D 3 +#define SPECT_MNGMT_LOOSE_11H_D 4 +#define WL_CHAN_VALID_HW (1 << 0) +#define WL_CHAN_VALID_SW (1 << 1) +#define WL_CHAN_BAND_5G (1 << 2) +#define WL_CHAN_RADAR (1 << 3) +#define WL_CHAN_INACTIVE (1 << 4) +#define WL_CHAN_PASSIVE (1 << 5) +#define WL_CHAN_RESTRICTED (1 << 6) +#define WL_BTC_DISABLE 0 +#define WL_BTC_ENABLE (1 << 0) +#define WL_BTC_PREMPT (1 << 1) +#define WL_BTC_PARTIAL (1 << 2) +#define WL_BTC_DEFAULT (1 << 3) +#define WL_BTC_HYBRID (WL_BTC_ENABLE | WL_BTC_PARTIAL) +#define WL_INF_BTC_DISABLE 0 +#define WL_INF_BTC_ENABLE 1 +#define WL_INF_BTC_AUTO 3 +#define WL_BTC_DEFWIRE 0 +#define WL_BTC_2WIRE 2 +#define WL_BTC_3WIRE 3 +#define WL_BTC_4WIRE 4 +#define WL_BTC_FLAG_PREMPT (1 << 0) +#define WL_BTC_FLAG_BT_DEF (1 << 1) +#define WL_BTC_FLAG_ACTIVE_PROT (1 << 2) +#define WL_BTC_FLAG_SIM_RSP (1 << 3) +#define WL_BTC_FLAG_PS_PROTECT (1 << 4) +#define WL_BTC_FLAG_SIM_TX_LP (1 << 5) +#define WL_BTC_FLAG_ECI (1 << 6) +#define WL_ERROR_VAL 0x00000001 +#define WL_TRACE_VAL 0x00000002 +#define WL_PRHDRS_VAL 0x00000004 +#define WL_PRPKT_VAL 0x00000008 +#define WL_INFORM_VAL 0x00000010 +#define WL_TMP_VAL 0x00000020 +#define WL_OID_VAL 0x00000040 +#define WL_RATE_VAL 0x00000080 +#define WL_ASSOC_VAL 0x00000100 +#define WL_PRUSR_VAL 0x00000200 +#define WL_PS_VAL 0x00000400 +#define WL_TXPWR_VAL 0x00000800 +#define WL_PORT_VAL 0x00001000 +#define WL_DUAL_VAL 0x00002000 +#define WL_WSEC_VAL 0x00004000 +#define WL_WSEC_DUMP_VAL 0x00008000 +#define WL_LOG_VAL 0x00010000 +#define WL_NRSSI_VAL 0x00020000 +#define WL_LOFT_VAL 0x00040000 +#define WL_REGULATORY_VAL 0x00080000 +#define WL_PHYCAL_VAL 0x00100000 +#define WL_RADAR_VAL 0x00200000 +#define WL_MPC_VAL 0x00400000 +#define WL_APSTA_VAL 0x00800000 +#define WL_DFS_VAL 0x01000000 +#define WL_BA_VAL 0x02000000 +#define WL_MBSS_VAL 0x04000000 +#define WL_CAC_VAL 0x08000000 +#define WL_AMSDU_VAL 0x10000000 +#define WL_AMPDU_VAL 0x20000000 +#define WL_FFPLD_VAL 0x40000000 +#define WL_DPT_VAL 0x00000001 +#define WL_SCAN_VAL 0x00000002 +#define WL_WOWL_VAL 0x00000004 +#define WL_COEX_VAL 0x00000008 +#define WL_RTDC_VAL 0x00000010 +#define WL_BTA_VAL 0x00000040 +#define WL_LED_NUMGPIO 16 +#define WL_LED_OFF 0 +#define WL_LED_ON 1 +#define WL_LED_ACTIVITY 2 +#define WL_LED_RADIO 3 +#define WL_LED_ARADIO 4 +#define WL_LED_BRADIO 5 +#define WL_LED_BGMODE 6 +#define WL_LED_WI1 7 +#define WL_LED_WI2 8 +#define WL_LED_WI3 9 +#define WL_LED_ASSOC 10 +#define WL_LED_INACTIVE 11 +#define WL_LED_ASSOCACT 12 +#define WL_LED_NUMBEHAVIOR 13 +#define WL_LED_BEH_MASK 0x7f +#define WL_LED_AL_MASK 0x80 +#define WL_NUMCHANNELS 64 +#define WL_NUMCHANSPECS 100 +#define WL_WDS_WPA_ROLE_AUTH 0 +#define WL_WDS_WPA_ROLE_SUP 1 +#define WL_WDS_WPA_ROLE_AUTO 255 +#define WL_EVENTING_MASK_LEN ((WLC_E_LAST + 7) / 8) + +#define VNDR_IE_CMD_LEN 4 +#define VNDR_IE_BEACON_FLAG 0x1 +#define VNDR_IE_PRBRSP_FLAG 0x2 +#define VNDR_IE_ASSOCRSP_FLAG 0x4 +#define VNDR_IE_AUTHRSP_FLAG 0x8 +#define VNDR_IE_PRBREQ_FLAG 0x10 +#define VNDR_IE_ASSOCREQ_FLAG 0x20 +#define VNDR_IE_CUSTOM_FLAG 0x100 +#define VNDR_IE_INFO_HDR_LEN (sizeof(uint32_t)) + +struct wl_vndr_ie +{ + uint8_t id; + uint8_t len; + uint8_t oui[3]; + uint8_t data[1]; +}; +typedef struct wl_vndr_ie wl_vndr_ie_t; + +typedef struct +{ + uint32_t pktflag; + wl_vndr_ie_t vndr_ie_data; +} vndr_ie_info_t; + +typedef struct +{ + int32_t iecount; + vndr_ie_info_t vndr_ie_list[1]; +} vndr_ie_buf_t; + +typedef struct +{ + int8_t cmd[VNDR_IE_CMD_LEN]; + vndr_ie_buf_t vndr_ie_buffer; +} vndr_ie_setbuf_t; + +#define WL_JOIN_PREF_RSSI 1 +#define WL_JOIN_PREF_WPA 2 +#define WL_JOIN_PREF_BAND 3 +#define WLJP_BAND_ASSOC_PREF 255 +#define WL_WPA_ACP_MCS_ANY "\x00\x00\x00\x00" + +struct tsinfo_arg +{ + uint8_t octets[3]; +}; + +#define NFIFO 6 +#define WL_CNT_T_VERSION 6 +#define WL_CNT_EXT_T_VERSION 1 + +typedef struct +{ + uint16_t version; /* see definition of WL_CNT_T_VERSION */ + uint16_t length; /* length of entire structure */ + + /* transmit stat counters */ + uint32_t txframe; /* tx data frames */ + uint32_t txbyte; /* tx data bytes */ + uint32_t txretrans; /* tx mac retransmits */ + uint32_t txerror; /* tx data errors (derived: sum of others) */ + uint32_t txctl; /* tx management frames */ + uint32_t txprshort; /* tx short preamble frames */ + uint32_t txserr; /* tx status errors */ + uint32_t txnobuf; /* tx out of buffers errors */ + uint32_t txnoassoc; /* tx discard because we're not associated */ + uint32_t txrunt; /* tx runt frames */ + uint32_t txchit; /* tx header cache hit (fastpath) */ + uint32_t txcmiss; /* tx header cache miss (slowpath) */ + + /* transmit chip error counters */ + uint32_t txuflo; /* tx fifo underflows */ + uint32_t txphyerr; /* tx phy errors (indicated in tx status) */ + uint32_t txphycrs; /* PR8861/8963 counter */ + + /* receive stat counters */ + uint32_t rxframe; /* rx data frames */ + uint32_t rxbyte; /* rx data bytes */ + uint32_t rxerror; /* rx data errors (derived: sum of others) */ + uint32_t rxctl; /* rx management frames */ + uint32_t rxnobuf; /* rx out of buffers errors */ + uint32_t rxnondata; /* rx non data frames in the data channel errors */ + uint32_t rxbadds; /* rx bad DS errors */ + uint32_t rxbadcm; /* rx bad control or management frames */ + uint32_t rxfragerr; /* rx fragmentation errors */ + uint32_t rxrunt; /* rx runt frames */ + uint32_t rxgiant; /* rx giant frames */ + uint32_t rxnoscb; /* rx no scb error */ + uint32_t rxbadproto; /* rx invalid frames */ + uint32_t rxbadsrcmac; /* rx frames with Invalid Src Mac */ + uint32_t rxbadda; /* rx frames tossed for invalid da */ + uint32_t rxfilter; /* rx frames filtered out */ + + /* receive chip error counters */ + uint32_t rxoflo; /* rx fifo overflow errors */ + uint32_t rxuflo[NFIFO]; /* rx dma descriptor underflow errors */ + + uint32_t d11cnt_txrts_off; /* d11cnt txrts value when reset d11cnt */ + uint32_t d11cnt_rxcrc_off; /* d11cnt rxcrc value when reset d11cnt */ + uint32_t d11cnt_txnocts_off; /* d11cnt txnocts value when reset d11cnt */ + + /* misc counters */ + uint32_t dmade; /* tx/rx dma descriptor errors */ + uint32_t dmada; /* tx/rx dma data errors */ + uint32_t dmape; /* tx/rx dma descriptor protocol errors */ + uint32_t reset; /* reset count */ + uint32_t tbtt; /* cnts the TBTT int's */ + uint32_t txdmawar; /* # occurrences of PR15420 workaround */ + uint32_t pkt_callback_reg_fail; /* callbacks register failure */ + + /* MAC counters: 32-bit version of d11.h's macstat_t */ + uint32_t txallfrm; /* total number of frames sent, incl. Data, ACK, RTS, CTS, + * Control Management (includes retransmissions) + */ + uint32_t txrtsfrm; /* number of RTS sent out by the MAC */ + uint32_t txctsfrm; /* number of CTS sent out by the MAC */ + uint32_t txackfrm; /* number of ACK frames sent out */ + uint32_t txdnlfrm; /* Not used */ + uint32_t txbcnfrm; /* beacons transmitted */ + uint32_t txfunfl[8]; /* per-fifo tx underflows */ + uint32_t txtplunfl; /* Template underflows (mac was too slow to transmit ACK/CTS + * or BCN) + */ + uint32_t txphyerror; /* Transmit phy error, type of error is reported in tx-status for + * driver enqueued frames + */ + uint32_t rxfrmtoolong; /* Received frame longer than legal limit (2346 bytes) */ + uint32_t rxfrmtooshrt; /* Received frame did not contain enough bytes for its frame type */ + uint32_t rxinvmachdr; /* Either the protocol version != 0 or frame type not + * data/control/management + */ + uint32_t rxbadfcs; /* number of frames for which the CRC check failed in the MAC */ + uint32_t rxbadplcp; /* parity check of the PLCP header failed */ + uint32_t rxcrsglitch; /* PHY was able to correlate the preamble but not the header */ + uint32_t rxstrt; /* Number of received frames with a good PLCP + * (i.e. passing parity check) + */ + uint32_t rxdfrmucastmbss; /* Number of received DATA frames with good FCS and matching RA */ + uint32_t rxmfrmucastmbss; /* number of received mgmt frames with good FCS and matching RA */ + uint32_t rxcfrmucast; /* number of received CNTRL frames with good FCS and matching RA */ + uint32_t rxrtsucast; /* number of unicast RTS addressed to the MAC (good FCS) */ + uint32_t rxctsucast; /* number of unicast CTS addressed to the MAC (good FCS) */ + uint32_t rxackucast; /* number of ucast ACKS received (good FCS) */ + uint32_t rxdfrmocast; /* number of received DATA frames (good FCS and not matching RA) */ + uint32_t rxmfrmocast; /* number of received MGMT frames (good FCS and not matching RA) */ + uint32_t rxcfrmocast; /* number of received CNTRL frame (good FCS and not matching RA) */ + uint32_t rxrtsocast; /* number of received RTS not addressed to the MAC */ + uint32_t rxctsocast; /* number of received CTS not addressed to the MAC */ + uint32_t rxdfrmmcast; /* number of RX Data multicast frames received by the MAC */ + uint32_t rxmfrmmcast; /* number of RX Management multicast frames received by the MAC */ + uint32_t rxcfrmmcast; /* number of RX Control multicast frames received by the MAC + * (unlikely to see these) + */ + uint32_t rxbeaconmbss; /* beacons received from member of BSS */ + uint32_t rxdfrmucastobss; /* number of unicast frames addressed to the MAC from + * other BSS (WDS FRAME) + */ + uint32_t rxbeaconobss; /* beacons received from other BSS */ + uint32_t rxrsptmout; /* Number of response timeouts for transmitted frames + * expecting a response + */ + uint32_t bcntxcancl; /* transmit beacons canceled due to receipt of beacon (IBSS) */ + uint32_t rxf0ovfl; /* Number of receive fifo 0 overflows */ + uint32_t rxf1ovfl; /* Number of receive fifo 1 overflows (obsolete) */ + uint32_t rxf2ovfl; /* Number of receive fifo 2 overflows (obsolete) */ + uint32_t txsfovfl; /* Number of transmit status fifo overflows (obsolete) */ + uint32_t pmqovfl; /* Number of PMQ overflows */ + uint32_t rxcgprqfrm; /* Number of received Probe requests that made it into + * the PRQ fifo + */ + uint32_t rxcgprsqovfl; /* Rx Probe Request Que overflow in the AP */ + uint32_t txcgprsfail; /* Tx Probe Response Fail. AP sent probe response but did + * not get ACK + */ + uint32_t txcgprssuc; /* Tx Probe Response Success (ACK was received) */ + uint32_t prs_timeout; /* Number of probe requests that were dropped from the PRQ + * fifo because a probe response could not be sent out within + * the time limit defined in M_PRS_MAXTIME + */ + uint32_t rxnack; /* XXX Number of NACKS received (Afterburner) */ + uint32_t frmscons; /* XXX Number of frames completed without transmission because of an + * Afterburner re-queue + */ + uint32_t txnack; /* XXX Number of NACKs transmitted (Afterburner) */ + uint32_t txglitch_nack; /* obsolete */ + uint32_t txburst; /* obsolete */ + + /* 802.11 MIB counters, pp. 614 of 802.11 reaff doc. */ + uint32_t txfrag; /* dot11TransmittedFragmentCount */ + uint32_t txmulti; /* dot11MulticastTransmittedFrameCount */ + uint32_t txfail; /* dot11FailedCount */ + uint32_t txretry; /* dot11RetryCount */ + uint32_t txretrie; /* dot11MultipleRetryCount */ + uint32_t rxdup; /* dot11FrameduplicateCount */ + uint32_t txrts; /* dot11RTSSuccessCount */ + uint32_t txnocts; /* dot11RTSFailureCount */ + uint32_t txnoack; /* dot11ACKFailureCount */ + uint32_t rxfrag; /* dot11ReceivedFragmentCount */ + uint32_t rxmulti; /* dot11MulticastReceivedFrameCount */ + uint32_t rxcrc; /* dot11FCSErrorCount */ + uint32_t txfrmsnt; /* dot11TransmittedFrameCount (bogus MIB?) */ + uint32_t rxundec; /* dot11WEPUndecryptableCount */ + + /* WPA2 counters (see rxundec for DecryptFailureCount) */ + uint32_t tkipmicfaill; /* TKIPLocalMICFailures */ + uint32_t tkipcntrmsr; /* TKIPCounterMeasuresInvoked */ + uint32_t tkipreplay; /* TKIPReplays */ + uint32_t ccmpfmterr; /* CCMPFormatErrors */ + uint32_t ccmpreplay; /* CCMPReplays */ + uint32_t ccmpundec; /* CCMPDecryptErrors */ + uint32_t fourwayfail; /* FourWayHandshakeFailures */ + uint32_t wepundec; /* dot11WEPUndecryptableCount */ + uint32_t wepicverr; /* dot11WEPICVErrorCount */ + uint32_t decsuccess; /* DecryptSuccessCount */ + uint32_t tkipicverr; /* TKIPICVErrorCount */ + uint32_t wepexcluded; /* dot11WEPExcludedCount */ + + uint32_t rxundec_mcst; /* dot11WEPUndecryptableCount */ + + /* WPA2 counters (see rxundec for DecryptFailureCount) */ + uint32_t tkipmicfaill_mcst; /* TKIPLocalMICFailures */ + uint32_t tkipcntrmsr_mcst; /* TKIPCounterMeasuresInvoked */ + uint32_t tkipreplay_mcst; /* TKIPReplays */ + uint32_t ccmpfmterr_mcst; /* CCMPFormatErrors */ + uint32_t ccmpreplay_mcst; /* CCMPReplays */ + uint32_t ccmpundec_mcst; /* CCMPDecryptErrors */ + uint32_t fourwayfail_mcst; /* FourWayHandshakeFailures */ + uint32_t wepundec_mcst; /* dot11WEPUndecryptableCount */ + uint32_t wepicverr_mcst; /* dot11WEPICVErrorCount */ + uint32_t decsuccess_mcst; /* DecryptSuccessCount */ + uint32_t tkipicverr_mcst; /* TKIPICVErrorCount */ + uint32_t wepexcluded_mcst; /* dot11WEPExcludedCount */ + + uint32_t txchanrej; /* Tx frames suppressed due to channel rejection */ + uint32_t txexptime; /* Tx frames suppressed due to timer expiration */ + uint32_t psmwds; /* Count PSM watchdogs */ + uint32_t phywatchdog; /* Count Phy watchdogs (triggered by ucode) */ + + /* MBSS counters, AP only */ + uint32_t prq_entries_handled; /* PRQ entries read in */ + uint32_t prq_undirected_entries; /* which were bcast bss & ssid */ + uint32_t prq_bad_entries; /* which could not be translated to info */ + uint32_t atim_suppress_count; /* TX suppressions on ATIM fifo */ + uint32_t bcn_template_not_ready; /* Template marked in use on send bcn ... */ + uint32_t bcn_template_not_ready_done; /* ...but "DMA done" interrupt rcvd */ + uint32_t late_tbtt_dpc; /* TBTT DPC did not happen in time */ + + /* per-rate receive stat counters */ + uint32_t rx1mbps; /* packets rx at 1Mbps */ + uint32_t rx2mbps; /* packets rx at 2Mbps */ + uint32_t rx5mbps5; /* packets rx at 5.5Mbps */ + uint32_t rx6mbps; /* packets rx at 6Mbps */ + uint32_t rx9mbps; /* packets rx at 9Mbps */ + uint32_t rx11mbps; /* packets rx at 11Mbps */ + uint32_t rx12mbps; /* packets rx at 12Mbps */ + uint32_t rx18mbps; /* packets rx at 18Mbps */ + uint32_t rx24mbps; /* packets rx at 24Mbps */ + uint32_t rx36mbps; /* packets rx at 36Mbps */ + uint32_t rx48mbps; /* packets rx at 48Mbps */ + uint32_t rx54mbps; /* packets rx at 54Mbps */ + uint32_t rx108mbps; /* packets rx at 108mbps */ + uint32_t rx162mbps; /* packets rx at 162mbps */ + uint32_t rx216mbps; /* packets rx at 216 mbps */ + uint32_t rx270mbps; /* packets rx at 270 mbps */ + uint32_t rx324mbps; /* packets rx at 324 mbps */ + uint32_t rx378mbps; /* packets rx at 378 mbps */ + uint32_t rx432mbps; /* packets rx at 432 mbps */ + uint32_t rx486mbps; /* packets rx at 486 mbps */ + uint32_t rx540mbps; /* packets rx at 540 mbps */ + + /* pkteng rx frame stats */ + uint32_t pktengrxducast; /* unicast frames rxed by the pkteng code */ + uint32_t pktengrxdmcast; /* multicast frames rxed by the pkteng code */ + + uint32_t rfdisable; /* count of radio disables */ + uint32_t bphy_rxcrsglitch; /* PHY count of bphy glitches */ + + uint32_t txmpdu_sgi; /* count for sgi transmit */ + uint32_t rxmpdu_sgi; /* count for sgi received */ + uint32_t txmpdu_stbc; /* count for stbc transmit */ + uint32_t rxmpdu_stbc; /* count for stbc received */ +} wl_cnt_ver_six_t; + +typedef struct +{ + uint16_t version; /* see definition of WL_CNT_T_VERSION */ + uint16_t length; /* length of entire structure */ + + /* transmit stat counters */ + uint32_t txframe; /* tx data frames */ + uint32_t txbyte; /* tx data bytes */ + uint32_t txretrans; /* tx mac retransmits */ + uint32_t txerror; /* tx data errors (derived: sum of others) */ + uint32_t txctl; /* tx management frames */ + uint32_t txprshort; /* tx short preamble frames */ + uint32_t txserr; /* tx status errors */ + uint32_t txnobuf; /* tx out of buffers errors */ + uint32_t txnoassoc; /* tx discard because we're not associated */ + uint32_t txrunt; /* tx runt frames */ + uint32_t txchit; /* tx header cache hit (fastpath) */ + uint32_t txcmiss; /* tx header cache miss (slowpath) */ + + /* transmit chip error counters */ + uint32_t txuflo; /* tx fifo underflows */ + uint32_t txphyerr; /* tx phy errors (indicated in tx status) */ + uint32_t txphycrs; /* PR8861/8963 counter */ + + /* receive stat counters */ + uint32_t rxframe; /* rx data frames */ + uint32_t rxbyte; /* rx data bytes */ + uint32_t rxerror; /* rx data errors (derived: sum of others) */ + uint32_t rxctl; /* rx management frames */ + uint32_t rxnobuf; /* rx out of buffers errors */ + uint32_t rxnondata; /* rx non data frames in the data channel errors */ + uint32_t rxbadds; /* rx bad DS errors */ + uint32_t rxbadcm; /* rx bad control or management frames */ + uint32_t rxfragerr; /* rx fragmentation errors */ + uint32_t rxrunt; /* rx runt frames */ + uint32_t rxgiant; /* rx giant frames */ + uint32_t rxnoscb; /* rx no scb error */ + uint32_t rxbadproto; /* rx invalid frames */ + uint32_t rxbadsrcmac; /* rx frames with Invalid Src Mac */ + uint32_t rxbadda; /* rx frames tossed for invalid da */ + uint32_t rxfilter; /* rx frames filtered out */ + + /* receive chip error counters */ + uint32_t rxoflo; /* rx fifo overflow errors */ + uint32_t rxuflo[NFIFO]; /* rx dma descriptor underflow errors */ + + uint32_t d11cnt_txrts_off; /* d11cnt txrts value when reset d11cnt */ + uint32_t d11cnt_rxcrc_off; /* d11cnt rxcrc value when reset d11cnt */ + uint32_t d11cnt_txnocts_off; /* d11cnt txnocts value when reset d11cnt */ + + /* misc counters */ + uint32_t dmade; /* tx/rx dma descriptor errors */ + uint32_t dmada; /* tx/rx dma data errors */ + uint32_t dmape; /* tx/rx dma descriptor protocol errors */ + uint32_t reset; /* reset count */ + uint32_t tbtt; /* cnts the TBTT int's */ + uint32_t txdmawar; /* # occurrences of PR15420 workaround */ + uint32_t pkt_callback_reg_fail; /* callbacks register failure */ + + /* MAC counters: 32-bit version of d11.h's macstat_t */ + uint32_t txallfrm; /* total number of frames sent, incl. Data, ACK, RTS, CTS, + * Control Management (includes retransmissions) + */ + uint32_t txrtsfrm; /* number of RTS sent out by the MAC */ + uint32_t txctsfrm; /* number of CTS sent out by the MAC */ + uint32_t txackfrm; /* number of ACK frames sent out */ + uint32_t txdnlfrm; /* Not used */ + uint32_t txbcnfrm; /* beacons transmitted */ + uint32_t txfunfl[8]; /* per-fifo tx underflows */ + uint32_t txtplunfl; /* Template underflows (mac was too slow to transmit ACK/CTS + * or BCN) + */ + uint32_t txphyerror; /* Transmit phy error, type of error is reported in tx-status for + * driver enqueued frames + */ + uint32_t rxfrmtoolong; /* Received frame longer than legal limit (2346 bytes) */ + uint32_t rxfrmtooshrt; /* Received frame did not contain enough bytes for its frame type */ + uint32_t rxinvmachdr; /* Either the protocol version != 0 or frame type not + * data/control/management + */ + uint32_t rxbadfcs; /* number of frames for which the CRC check failed in the MAC */ + uint32_t rxbadplcp; /* parity check of the PLCP header failed */ + uint32_t rxcrsglitch; /* PHY was able to correlate the preamble but not the header */ + uint32_t rxstrt; /* Number of received frames with a good PLCP + * (i.e. passing parity check) + */ + uint32_t rxdfrmucastmbss; /* Number of received DATA frames with good FCS and matching RA */ + uint32_t rxmfrmucastmbss; /* number of received mgmt frames with good FCS and matching RA */ + uint32_t rxcfrmucast; /* number of received CNTRL frames with good FCS and matching RA */ + uint32_t rxrtsucast; /* number of unicast RTS addressed to the MAC (good FCS) */ + uint32_t rxctsucast; /* number of unicast CTS addressed to the MAC (good FCS) */ + uint32_t rxackucast; /* number of ucast ACKS received (good FCS) */ + uint32_t rxdfrmocast; /* number of received DATA frames (good FCS and not matching RA) */ + uint32_t rxmfrmocast; /* number of received MGMT frames (good FCS and not matching RA) */ + uint32_t rxcfrmocast; /* number of received CNTRL frame (good FCS and not matching RA) */ + uint32_t rxrtsocast; /* number of received RTS not addressed to the MAC */ + uint32_t rxctsocast; /* number of received CTS not addressed to the MAC */ + uint32_t rxdfrmmcast; /* number of RX Data multicast frames received by the MAC */ + uint32_t rxmfrmmcast; /* number of RX Management multicast frames received by the MAC */ + uint32_t rxcfrmmcast; /* number of RX Control multicast frames received by the MAC + * (unlikely to see these) + */ + uint32_t rxbeaconmbss; /* beacons received from member of BSS */ + uint32_t rxdfrmucastobss; /* number of unicast frames addressed to the MAC from + * other BSS (WDS FRAME) + */ + uint32_t rxbeaconobss; /* beacons received from other BSS */ + uint32_t rxrsptmout; /* Number of response timeouts for transmitted frames + * expecting a response + */ + uint32_t bcntxcancl; /* transmit beacons canceled due to receipt of beacon (IBSS) */ + uint32_t rxf0ovfl; /* Number of receive fifo 0 overflows */ + uint32_t rxf1ovfl; /* Number of receive fifo 1 overflows (obsolete) */ + uint32_t rxf2ovfl; /* Number of receive fifo 2 overflows (obsolete) */ + uint32_t txsfovfl; /* Number of transmit status fifo overflows (obsolete) */ + uint32_t pmqovfl; /* Number of PMQ overflows */ + uint32_t rxcgprqfrm; /* Number of received Probe requests that made it into + * the PRQ fifo + */ + uint32_t rxcgprsqovfl; /* Rx Probe Request Que overflow in the AP */ + uint32_t txcgprsfail; /* Tx Probe Response Fail. AP sent probe response but did + * not get ACK + */ + uint32_t txcgprssuc; /* Tx Probe Response Success (ACK was received) */ + uint32_t prs_timeout; /* Number of probe requests that were dropped from the PRQ + * fifo because a probe response could not be sent out within + * the time limit defined in M_PRS_MAXTIME + */ + uint32_t rxnack; /* obsolete */ + uint32_t frmscons; /* obsolete */ + uint32_t txnack; /* obsolete */ + uint32_t txglitch_nack; /* obsolete */ + uint32_t txburst; /* obsolete */ + + /* 802.11 MIB counters, pp. 614 of 802.11 reaff doc. */ + uint32_t txfrag; /* dot11TransmittedFragmentCount */ + uint32_t txmulti; /* dot11MulticastTransmittedFrameCount */ + uint32_t txfail; /* dot11FailedCount */ + uint32_t txretry; /* dot11RetryCount */ + uint32_t txretrie; /* dot11MultipleRetryCount */ + uint32_t rxdup; /* dot11FrameduplicateCount */ + uint32_t txrts; /* dot11RTSSuccessCount */ + uint32_t txnocts; /* dot11RTSFailureCount */ + uint32_t txnoack; /* dot11ACKFailureCount */ + uint32_t rxfrag; /* dot11ReceivedFragmentCount */ + uint32_t rxmulti; /* dot11MulticastReceivedFrameCount */ + uint32_t rxcrc; /* dot11FCSErrorCount */ + uint32_t txfrmsnt; /* dot11TransmittedFrameCount (bogus MIB?) */ + uint32_t rxundec; /* dot11WEPUndecryptableCount */ + + /* WPA2 counters (see rxundec for DecryptFailureCount) */ + uint32_t tkipmicfaill; /* TKIPLocalMICFailures */ + uint32_t tkipcntrmsr; /* TKIPCounterMeasuresInvoked */ + uint32_t tkipreplay; /* TKIPReplays */ + uint32_t ccmpfmterr; /* CCMPFormatErrors */ + uint32_t ccmpreplay; /* CCMPReplays */ + uint32_t ccmpundec; /* CCMPDecryptErrors */ + uint32_t fourwayfail; /* FourWayHandshakeFailures */ + uint32_t wepundec; /* dot11WEPUndecryptableCount */ + uint32_t wepicverr; /* dot11WEPICVErrorCount */ + uint32_t decsuccess; /* DecryptSuccessCount */ + uint32_t tkipicverr; /* TKIPICVErrorCount */ + uint32_t wepexcluded; /* dot11WEPExcludedCount */ + + uint32_t txchanrej; /* Tx frames suppressed due to channel rejection */ + uint32_t psmwds; /* Count PSM watchdogs */ + uint32_t phywatchdog; /* Count Phy watchdogs (triggered by ucode) */ + + /* MBSS counters, AP only */ + uint32_t prq_entries_handled; /* PRQ entries read in */ + uint32_t prq_undirected_entries; /* which were bcast bss & ssid */ + uint32_t prq_bad_entries; /* which could not be translated to info */ + uint32_t atim_suppress_count; /* TX suppressions on ATIM fifo */ + uint32_t bcn_template_not_ready; /* Template marked in use on send bcn ... */ + uint32_t bcn_template_not_ready_done; /* ...but "DMA done" interrupt rcvd */ + uint32_t late_tbtt_dpc; /* TBTT DPC did not happen in time */ + + /* per-rate receive stat counters */ + uint32_t rx1mbps; /* packets rx at 1Mbps */ + uint32_t rx2mbps; /* packets rx at 2Mbps */ + uint32_t rx5mbps5; /* packets rx at 5.5Mbps */ + uint32_t rx6mbps; /* packets rx at 6Mbps */ + uint32_t rx9mbps; /* packets rx at 9Mbps */ + uint32_t rx11mbps; /* packets rx at 11Mbps */ + uint32_t rx12mbps; /* packets rx at 12Mbps */ + uint32_t rx18mbps; /* packets rx at 18Mbps */ + uint32_t rx24mbps; /* packets rx at 24Mbps */ + uint32_t rx36mbps; /* packets rx at 36Mbps */ + uint32_t rx48mbps; /* packets rx at 48Mbps */ + uint32_t rx54mbps; /* packets rx at 54Mbps */ + uint32_t rx108mbps; /* packets rx at 108mbps */ + uint32_t rx162mbps; /* packets rx at 162mbps */ + uint32_t rx216mbps; /* packets rx at 216 mbps */ + uint32_t rx270mbps; /* packets rx at 270 mbps */ + uint32_t rx324mbps; /* packets rx at 324 mbps */ + uint32_t rx378mbps; /* packets rx at 378 mbps */ + uint32_t rx432mbps; /* packets rx at 432 mbps */ + uint32_t rx486mbps; /* packets rx at 486 mbps */ + uint32_t rx540mbps; /* packets rx at 540 mbps */ + + /* pkteng rx frame stats */ + uint32_t pktengrxducast; /* unicast frames rxed by the pkteng code */ + uint32_t pktengrxdmcast; /* multicast frames rxed by the pkteng code */ + + uint32_t rfdisable; /* count of radio disables */ + uint32_t bphy_rxcrsglitch; /* PHY count of bphy glitches */ + + uint32_t txexptime; /* Tx frames suppressed due to timer expiration */ + + uint32_t txmpdu_sgi; /* count for sgi transmit */ + uint32_t rxmpdu_sgi; /* count for sgi received */ + uint32_t txmpdu_stbc; /* count for stbc transmit */ + uint32_t rxmpdu_stbc; /* count for stbc received */ + + uint32_t rxundec_mcst; /* dot11WEPUndecryptableCount */ + + /* WPA2 counters (see rxundec for DecryptFailureCount) */ + uint32_t tkipmicfaill_mcst; /* TKIPLocalMICFailures */ + uint32_t tkipcntrmsr_mcst; /* TKIPCounterMeasuresInvoked */ + uint32_t tkipreplay_mcst; /* TKIPReplays */ + uint32_t ccmpfmterr_mcst; /* CCMPFormatErrors */ + uint32_t ccmpreplay_mcst; /* CCMPReplays */ + uint32_t ccmpundec_mcst; /* CCMPDecryptErrors */ + uint32_t fourwayfail_mcst; /* FourWayHandshakeFailures */ + uint32_t wepundec_mcst; /* dot11WEPUndecryptableCount */ + uint32_t wepicverr_mcst; /* dot11WEPICVErrorCount */ + uint32_t decsuccess_mcst; /* DecryptSuccessCount */ + uint32_t tkipicverr_mcst; /* TKIPICVErrorCount */ + uint32_t wepexcluded_mcst; /* dot11WEPExcludedCount */ + + uint32_t dma_hang; /* count for stbc received */ +} wl_cnt_ver_seven_t; + +typedef struct +{ + uint16_t version; /* see definition of WL_CNT_T_VERSION */ + uint16_t length; /* length of entire structure */ + + /* transmit stat counters */ + uint32_t txframe; /* tx data frames */ + uint32_t txbyte; /* tx data bytes */ + uint32_t txretrans; /* tx mac retransmits */ + uint32_t txerror; /* tx data errors (derived: sum of others) */ + uint32_t txctl; /* tx management frames */ + uint32_t txprshort; /* tx short preamble frames */ + uint32_t txserr; /* tx status errors */ + uint32_t txnobuf; /* tx out of buffers errors */ + uint32_t txnoassoc; /* tx discard because we're not associated */ + uint32_t txrunt; /* tx runt frames */ + uint32_t txchit; /* tx header cache hit (fastpath) */ + uint32_t txcmiss; /* tx header cache miss (slowpath) */ + + /* transmit chip error counters */ + uint32_t txuflo; /* tx fifo underflows */ + uint32_t txphyerr; /* tx phy errors (indicated in tx status) */ + uint32_t txphycrs; /* PR8861/8963 counter */ + + /* receive stat counters */ + uint32_t rxframe; /* rx data frames */ + uint32_t rxbyte; /* rx data bytes */ + uint32_t rxerror; /* rx data errors (derived: sum of others) */ + uint32_t rxctl; /* rx management frames */ + uint32_t rxnobuf; /* rx out of buffers errors */ + uint32_t rxnondata; /* rx non data frames in the data channel errors */ + uint32_t rxbadds; /* rx bad DS errors */ + uint32_t rxbadcm; /* rx bad control or management frames */ + uint32_t rxfragerr; /* rx fragmentation errors */ + uint32_t rxrunt; /* rx runt frames */ + uint32_t rxgiant; /* rx giant frames */ + uint32_t rxnoscb; /* rx no scb error */ + uint32_t rxbadproto; /* rx invalid frames */ + uint32_t rxbadsrcmac; /* rx frames with Invalid Src Mac */ + uint32_t rxbadda; /* rx frames tossed for invalid da */ + uint32_t rxfilter; /* rx frames filtered out */ + + /* receive chip error counters */ + uint32_t rxoflo; /* rx fifo overflow errors */ + uint32_t rxuflo[NFIFO]; /* rx dma descriptor underflow errors */ + + uint32_t d11cnt_txrts_off; /* d11cnt txrts value when reset d11cnt */ + uint32_t d11cnt_rxcrc_off; /* d11cnt rxcrc value when reset d11cnt */ + uint32_t d11cnt_txnocts_off; /* d11cnt txnocts value when reset d11cnt */ + + /* misc counters */ + uint32_t dmade; /* tx/rx dma descriptor errors */ + uint32_t dmada; /* tx/rx dma data errors */ + uint32_t dmape; /* tx/rx dma descriptor protocol errors */ + uint32_t reset; /* reset count */ + uint32_t tbtt; /* cnts the TBTT int's */ + uint32_t txdmawar; /* # occurrences of PR15420 workaround */ + uint32_t pkt_callback_reg_fail; /* callbacks register failure */ + + /* MAC counters: 32-bit version of d11.h's macstat_t */ + uint32_t txallfrm; /* total number of frames sent, incl. Data, ACK, RTS, CTS, + * Control Management (includes retransmissions) + */ + uint32_t txrtsfrm; /* number of RTS sent out by the MAC */ + uint32_t txctsfrm; /* number of CTS sent out by the MAC */ + uint32_t txackfrm; /* number of ACK frames sent out */ + uint32_t txdnlfrm; /* Not used */ + uint32_t txbcnfrm; /* beacons transmitted */ + uint32_t txfunfl[6]; /* per-fifo tx underflows */ + uint32_t rxtoolate; /* receive too late */ + uint32_t txfbw; /* transmit at fallback bw (dynamic bw) */ + uint32_t txtplunfl; /* Template underflows (mac was too slow to transmit ACK/CTS + * or BCN) + */ + uint32_t txphyerror; /* Transmit phy error, type of error is reported in tx-status for + * driver enqueued frames + */ + uint32_t rxfrmtoolong; /* Received frame longer than legal limit (2346 bytes) */ + uint32_t rxfrmtooshrt; /* Received frame did not contain enough bytes for its frame type */ + uint32_t rxinvmachdr; /* Either the protocol version != 0 or frame type not + * data/control/management + */ + uint32_t rxbadfcs; /* number of frames for which the CRC check failed in the MAC */ + uint32_t rxbadplcp; /* parity check of the PLCP header failed */ + uint32_t rxcrsglitch; /* PHY was able to correlate the preamble but not the header */ + uint32_t rxstrt; /* Number of received frames with a good PLCP + * (i.e. passing parity check) + */ + uint32_t rxdfrmucastmbss; /* Number of received DATA frames with good FCS and matching RA */ + uint32_t rxmfrmucastmbss; /* number of received mgmt frames with good FCS and matching RA */ + uint32_t rxcfrmucast; /* number of received CNTRL frames with good FCS and matching RA */ + uint32_t rxrtsucast; /* number of unicast RTS addressed to the MAC (good FCS) */ + uint32_t rxctsucast; /* number of unicast CTS addressed to the MAC (good FCS) */ + uint32_t rxackucast; /* number of ucast ACKS received (good FCS) */ + uint32_t rxdfrmocast; /* number of received DATA frames (good FCS and not matching RA) */ + uint32_t rxmfrmocast; /* number of received MGMT frames (good FCS and not matching RA) */ + uint32_t rxcfrmocast; /* number of received CNTRL frame (good FCS and not matching RA) */ + uint32_t rxrtsocast; /* number of received RTS not addressed to the MAC */ + uint32_t rxctsocast; /* number of received CTS not addressed to the MAC */ + uint32_t rxdfrmmcast; /* number of RX Data multicast frames received by the MAC */ + uint32_t rxmfrmmcast; /* number of RX Management multicast frames received by the MAC */ + uint32_t rxcfrmmcast; /* number of RX Control multicast frames received by the MAC + * (unlikely to see these) + */ + uint32_t rxbeaconmbss; /* beacons received from member of BSS */ + uint32_t rxdfrmucastobss; /* number of unicast frames addressed to the MAC from + * other BSS (WDS FRAME) + */ + uint32_t rxbeaconobss; /* beacons received from other BSS */ + uint32_t rxrsptmout; /* Number of response timeouts for transmitted frames + * expecting a response + */ + uint32_t bcntxcancl; /* transmit beacons canceled due to receipt of beacon (IBSS) */ + uint32_t rxf0ovfl; /* Number of receive fifo 0 overflows */ + uint32_t rxf1ovfl; /* Number of receive fifo 1 overflows (obsolete) */ + uint32_t rxf2ovfl; /* Number of receive fifo 2 overflows (obsolete) */ + uint32_t txsfovfl; /* Number of transmit status fifo overflows (obsolete) */ + uint32_t pmqovfl; /* Number of PMQ overflows */ + uint32_t rxcgprqfrm; /* Number of received Probe requests that made it into + * the PRQ fifo + */ + uint32_t rxcgprsqovfl; /* Rx Probe Request Que overflow in the AP */ + uint32_t txcgprsfail; /* Tx Probe Response Fail. AP sent probe response but did + * not get ACK + */ + uint32_t txcgprssuc; /* Tx Probe Response Success (ACK was received) */ + uint32_t prs_timeout; /* Number of probe requests that were dropped from the PRQ + * fifo because a probe response could not be sent out within + * the time limit defined in M_PRS_MAXTIME + */ + uint32_t rxnack; /* obsolete */ + uint32_t frmscons; /* obsolete */ + uint32_t txnack; /* obsolete */ + uint32_t rxback; /* blockack rxcnt */ + uint32_t txback; /* blockack txcnt */ + + /* 802.11 MIB counters, pp. 614 of 802.11 reaff doc. */ + uint32_t txfrag; /* dot11TransmittedFragmentCount */ + uint32_t txmulti; /* dot11MulticastTransmittedFrameCount */ + uint32_t txfail; /* dot11FailedCount */ + uint32_t txretry; /* dot11RetryCount */ + uint32_t txretrie; /* dot11MultipleRetryCount */ + uint32_t rxdup; /* dot11FrameduplicateCount */ + uint32_t txrts; /* dot11RTSSuccessCount */ + uint32_t txnocts; /* dot11RTSFailureCount */ + uint32_t txnoack; /* dot11ACKFailureCount */ + uint32_t rxfrag; /* dot11ReceivedFragmentCount */ + uint32_t rxmulti; /* dot11MulticastReceivedFrameCount */ + uint32_t rxcrc; /* dot11FCSErrorCount */ + uint32_t txfrmsnt; /* dot11TransmittedFrameCount (bogus MIB?) */ + uint32_t rxundec; /* dot11WEPUndecryptableCount */ + + /* WPA2 counters (see rxundec for DecryptFailureCount) */ + uint32_t tkipmicfaill; /* TKIPLocalMICFailures */ + uint32_t tkipcntrmsr; /* TKIPCounterMeasuresInvoked */ + uint32_t tkipreplay; /* TKIPReplays */ + uint32_t ccmpfmterr; /* CCMPFormatErrors */ + uint32_t ccmpreplay; /* CCMPReplays */ + uint32_t ccmpundec; /* CCMPDecryptErrors */ + uint32_t fourwayfail; /* FourWayHandshakeFailures */ + uint32_t wepundec; /* dot11WEPUndecryptableCount */ + uint32_t wepicverr; /* dot11WEPICVErrorCount */ + uint32_t decsuccess; /* DecryptSuccessCount */ + uint32_t tkipicverr; /* TKIPICVErrorCount */ + uint32_t wepexcluded; /* dot11WEPExcludedCount */ + + uint32_t txchanrej; /* Tx frames suppressed due to channel rejection */ + uint32_t psmwds; /* Count PSM watchdogs */ + uint32_t phywatchdog; /* Count Phy watchdogs (triggered by ucode) */ + + /* MBSS counters, AP only */ + uint32_t prq_entries_handled; /* PRQ entries read in */ + uint32_t prq_undirected_entries; /* which were bcast bss & ssid */ + uint32_t prq_bad_entries; /* which could not be translated to info */ + uint32_t atim_suppress_count; /* TX suppressions on ATIM fifo */ + uint32_t bcn_template_not_ready; /* Template marked in use on send bcn ... */ + uint32_t bcn_template_not_ready_done; /* ...but "DMA done" interrupt rcvd */ + uint32_t late_tbtt_dpc; /* TBTT DPC did not happen in time */ + + /* per-rate receive stat counters */ + uint32_t rx1mbps; /* packets rx at 1Mbps */ + uint32_t rx2mbps; /* packets rx at 2Mbps */ + uint32_t rx5mbps5; /* packets rx at 5.5Mbps */ + uint32_t rx6mbps; /* packets rx at 6Mbps */ + uint32_t rx9mbps; /* packets rx at 9Mbps */ + uint32_t rx11mbps; /* packets rx at 11Mbps */ + uint32_t rx12mbps; /* packets rx at 12Mbps */ + uint32_t rx18mbps; /* packets rx at 18Mbps */ + uint32_t rx24mbps; /* packets rx at 24Mbps */ + uint32_t rx36mbps; /* packets rx at 36Mbps */ + uint32_t rx48mbps; /* packets rx at 48Mbps */ + uint32_t rx54mbps; /* packets rx at 54Mbps */ + uint32_t rx108mbps; /* packets rx at 108mbps */ + uint32_t rx162mbps; /* packets rx at 162mbps */ + uint32_t rx216mbps; /* packets rx at 216 mbps */ + uint32_t rx270mbps; /* packets rx at 270 mbps */ + uint32_t rx324mbps; /* packets rx at 324 mbps */ + uint32_t rx378mbps; /* packets rx at 378 mbps */ + uint32_t rx432mbps; /* packets rx at 432 mbps */ + uint32_t rx486mbps; /* packets rx at 486 mbps */ + uint32_t rx540mbps; /* packets rx at 540 mbps */ + + /* pkteng rx frame stats */ + uint32_t pktengrxducast; /* unicast frames rxed by the pkteng code */ + uint32_t pktengrxdmcast; /* multicast frames rxed by the pkteng code */ + + uint32_t rfdisable; /* count of radio disables */ + uint32_t bphy_rxcrsglitch; /* PHY count of bphy glitches */ + uint32_t bphy_badplcp; + + uint32_t txexptime; /* Tx frames suppressed due to timer expiration */ + + uint32_t txmpdu_sgi; /* count for sgi transmit */ + uint32_t rxmpdu_sgi; /* count for sgi received */ + uint32_t txmpdu_stbc; /* count for stbc transmit */ + uint32_t rxmpdu_stbc; /* count for stbc received */ + + uint32_t rxundec_mcst; /* dot11WEPUndecryptableCount */ + + /* WPA2 counters (see rxundec for DecryptFailureCount) */ + uint32_t tkipmicfaill_mcst; /* TKIPLocalMICFailures */ + uint32_t tkipcntrmsr_mcst; /* TKIPCounterMeasuresInvoked */ + uint32_t tkipreplay_mcst; /* TKIPReplays */ + uint32_t ccmpfmterr_mcst; /* CCMPFormatErrors */ + uint32_t ccmpreplay_mcst; /* CCMPReplays */ + uint32_t ccmpundec_mcst; /* CCMPDecryptErrors */ + uint32_t fourwayfail_mcst; /* FourWayHandshakeFailures */ + uint32_t wepundec_mcst; /* dot11WEPUndecryptableCount */ + uint32_t wepicverr_mcst; /* dot11WEPICVErrorCount */ + uint32_t decsuccess_mcst; /* DecryptSuccessCount */ + uint32_t tkipicverr_mcst; /* TKIPICVErrorCount */ + uint32_t wepexcluded_mcst; /* dot11WEPExcludedCount */ + + uint32_t dma_hang; /* count for dma hang */ + uint32_t reinit; /* count for reinit */ + + uint32_t pstatxucast; /* count of ucast frames xmitted on all psta assoc */ + uint32_t pstatxnoassoc; /* count of txnoassoc frames xmitted on all psta assoc */ + uint32_t pstarxucast; /* count of ucast frames received on all psta assoc */ + uint32_t pstarxbcmc; /* count of bcmc frames received on all psta */ + uint32_t pstatxbcmc; /* count of bcmc frames transmitted on all psta */ + + uint32_t cso_passthrough; /* hw cso required but passthrough */ + uint32_t cso_normal; /* hw cso hdr for normal process */ + uint32_t chained; /* number of frames chained */ + uint32_t chainedsz1; /* number of chain size 1 frames */ + uint32_t unchained; /* number of frames not chained */ + uint32_t maxchainsz; /* max chain size so far */ + uint32_t currchainsz; /* current chain size */ + + uint32_t rxdrop20s; /* drop secondary cnt */ + +} wl_cnt_ver_eight_t; + + +typedef struct +{ + uint16_t version; + uint16_t length; + uint32_t rxampdu_sgi; + uint32_t rxampdu_stbc; + uint32_t rxmpdu_sgi; + uint32_t rxmpdu_stbc; + uint32_t rxmcs0_40M; + uint32_t rxmcs1_40M; + uint32_t rxmcs2_40M; + uint32_t rxmcs3_40M; + uint32_t rxmcs4_40M; + uint32_t rxmcs5_40M; + uint32_t rxmcs6_40M; + uint32_t rxmcs7_40M; + uint32_t rxmcs32_40M; + uint32_t txfrmsnt_20Mlo; + uint32_t txfrmsnt_20Mup; + uint32_t txfrmsnt_40M; + uint32_t rx_20ul; +} wl_cnt_ext_t; +#define WL_RXDIV_STATS_T_VERSION 1 +typedef struct +{ + uint16_t version; + uint16_t length; + uint32_t rxant[4]; +} wl_rxdiv_stats_t; +#define WL_DELTA_STATS_T_VERSION 1 +typedef struct +{ + uint16_t version; + uint16_t length; + uint32_t txframe; + uint32_t txbyte; + uint32_t txretrans; + uint32_t txfail; + uint32_t rxframe; + uint32_t rxbyte; + uint32_t rx1mbps; + uint32_t rx2mbps; + uint32_t rx5mbps5; + uint32_t rx6mbps; + uint32_t rx9mbps; + uint32_t rx11mbps; + uint32_t rx12mbps; + uint32_t rx18mbps; + uint32_t rx24mbps; + uint32_t rx36mbps; + uint32_t rx48mbps; + uint32_t rx54mbps; + uint32_t rx108mbps; + uint32_t rx162mbps; + uint32_t rx216mbps; + uint32_t rx270mbps; + uint32_t rx324mbps; + uint32_t rx378mbps; + uint32_t rx432mbps; + uint32_t rx486mbps; + uint32_t rx540mbps; +} wl_delta_stats_t; +#define WL_WME_CNT_VERSION 1 +typedef struct +{ + uint32_t packets; + uint32_t bytes; +} wl_traffic_stats_t; +#define AC_COUNT 4 +typedef struct +{ + uint16_t version; + uint16_t length; + wl_traffic_stats_t tx[AC_COUNT]; + wl_traffic_stats_t tx_failed[AC_COUNT]; + wl_traffic_stats_t rx[AC_COUNT]; + wl_traffic_stats_t rx_failed[AC_COUNT]; + wl_traffic_stats_t forward[AC_COUNT]; + wl_traffic_stats_t tx_expired[AC_COUNT]; +} wl_wme_cnt_t; + +typedef struct wl_mkeep_alive_pkt +{ + uint16_t version; /* Version for mkeep_alive */ + uint16_t length; /* length of fixed parameters */ + uint32_t period_msec; /* repeat interval msecs */ + uint16_t len_bytes; /* packet length */ + uint8_t keep_alive_id; /* 0 - 3 for N = 4 */ + uint8_t data[1]; /* Packet data */ +} wl_mkeep_alive_pkt_t; + +#define WL_MKEEP_ALIVE_VERSION 1 +#define WL_MKEEP_ALIVE_FIXED_LEN offsetof(wl_mkeep_alive_pkt_t, data) +#define WL_MKEEP_ALIVE_PRECISION 500 + +struct ampdu_tid_control +{ + uint8_t tid; + uint8_t enable; +}; + +struct wl_msglevel2 +{ + uint32_t low; + uint32_t high; +}; + +struct ampdu_ea_tid +{ + struct ether_addr ea; + uint8_t tid; +}; + +struct ampdu_retry_tid +{ + uint8_t tid; + uint8_t retry; +}; + +struct ampdu_ba_sizes +{ + uint8_t ba_tx_wsize; + uint8_t ba_rx_wsize; +}; + +#define DPT_DISCOVERY_MANUAL 0x01 +#define DPT_DISCOVERY_AUTO 0x02 +#define DPT_DISCOVERY_SCAN 0x04 +#define DPT_PATHSEL_AUTO 0 +#define DPT_PATHSEL_DIRECT 1 +#define DPT_PATHSEL_APPATH 2 +#define DPT_DENY_LIST_ADD 1 +#define DPT_DENY_LIST_REMOVE 2 +#define DPT_MANUAL_EP_CREATE 1 +#define DPT_MANUAL_EP_MODIFY 2 +#define DPT_MANUAL_EP_DELETE 3 +typedef struct dpt_iovar +{ + struct ether_addr ea; + uint8_t mode; + uint32_t pad; +} dpt_iovar_t; +#define DPT_STATUS_ACTIVE 0x01 +#define DPT_STATUS_AES 0x02 +#define DPT_STATUS_FAILED 0x04 +#define DPT_FNAME_LEN 48 +typedef struct dpt_status +{ + uint8_t status; + uint8_t fnlen; + uint8_t name[DPT_FNAME_LEN]; + uint32_t rssi; + sta_info_t sta; +} dpt_status_t; +typedef struct dpt_list +{ + uint32_t num; + dpt_status_t status[1]; +} dpt_list_t; +typedef struct dpt_fname +{ + uint8_t len; + uint8_t name[DPT_FNAME_LEN]; +} dpt_fname_t; +#define BDD_FNAME_LEN 32 +typedef struct bdd_fname +{ + uint8_t len; + uint8_t name[BDD_FNAME_LEN]; +} bdd_fname_t; +struct ts_list +{ + int32_t count; + struct tsinfo_arg tsinfo[1]; +}; +typedef struct tspec_arg +{ + uint16_t version; + uint16_t length; + uint32_t flag; + struct tsinfo_arg tsinfo; + uint16_t nom_msdu_size; + uint16_t max_msdu_size; + uint32_t min_srv_interval; + uint32_t max_srv_interval; + uint32_t inactivity_interval; + uint32_t suspension_interval; + uint32_t srv_start_time; + uint32_t min_data_rate; + uint32_t mean_data_rate; + uint32_t peak_data_rate; + uint32_t max_burst_size; + uint32_t delay_bound; + uint32_t min_phy_rate; + uint16_t surplus_bw; + uint16_t medium_time; + uint8_t dialog_token; +} tspec_arg_t; +typedef struct tspec_per_sta_arg +{ + struct ether_addr ea; + struct tspec_arg ts; +} tspec_per_sta_arg_t; +typedef struct wme_max_bandwidth +{ + uint32_t ac[AC_COUNT]; +} wme_max_bandwidth_t; +#define WL_WME_MBW_PARAMS_IO_BYTES (sizeof(wme_max_bandwidth_t)) +#define TSPEC_ARG_VERSION 2 +#define TSPEC_ARG_LENGTH 55 +#define TSPEC_DEFAULT_DIALOG_TOKEN 42 +#define TSPEC_DEFAULT_SBW_FACTOR 0x3000 +#define TSPEC_PENDING 0 +#define TSPEC_ACCEPTED 1 +#define TSPEC_REJECTED 2 +#define TSPEC_UNKNOWN 3 +#define TSPEC_STATUS_MASK 7 +#define WL_SWFL_NOHWRADIO 0x0004 +#define WL_LIFETIME_MAX 0xFFFF +typedef struct wl_lifetime +{ + uint32_t ac; + uint32_t lifetime; +} wl_lifetime_t; +typedef struct wl_chan_switch +{ + uint8_t mode; + uint8_t count; + wl_chanspec_t chspec; + uint8_t reg; +} wl_chan_switch_t; + +#define WLC_ROAM_TRIGGER_DEFAULT 0 +#define WLC_ROAM_TRIGGER_BANDWIDTH 1 +#define WLC_ROAM_TRIGGER_DISTANCE 2 +#define WLC_ROAM_TRIGGER_MAX_VALUE 2 + +enum +{ + PFN_LIST_ORDER, PFN_RSSI +}; + +#define SORT_CRITERIA_BIT 0 +#define AUTO_NET_SWITCH_BIT 1 +#define ENABLE_BKGRD_SCAN_BIT 2 +#define IMMEDIATE_SCAN_BIT 3 +#define AUTO_CONNECT_BIT 4 +#define SORT_CRITERIA_MASK 0x01 +#define AUTO_NET_SWITCH_MASK 0x02 +#define ENABLE_BKGRD_SCAN_MASK 0x04 +#define IMMEDIATE_SCAN_MASK 0x08 +#define AUTO_CONNECT_MASK 0x10 +#define PFN_VERSION 1 + +typedef struct wl_pfn_param +{ + int32_t version; + int32_t scan_freq; + int32_t lost_network_timeout; + int16_t flags; + int16_t rssi_margin; +} wl_pfn_param_t; + +typedef struct wl_pfn +{ + wlc_ssid_t ssid; + int32_t bss_type; + int32_t infra; + int32_t auth; + uint32_t wpa_auth; + int32_t wsec; +} wl_pfn_t; + +#define TOE_TX_CSUM_OL 0x00000001 +#define TOE_RX_CSUM_OL 0x00000002 +#define TOE_ERRTEST_TX_CSUM 0x00000001 +#define TOE_ERRTEST_RX_CSUM 0x00000002 +#define TOE_ERRTEST_RX_CSUM2 0x00000004 + +struct toe_ol_stats_t +{ + uint32_t tx_summed; + uint32_t tx_iph_fill; + uint32_t tx_tcp_fill; + uint32_t tx_udp_fill; + uint32_t tx_icmp_fill; + uint32_t rx_iph_good; + uint32_t rx_iph_bad; + uint32_t rx_tcp_good; + uint32_t rx_tcp_bad; + uint32_t rx_udp_good; + uint32_t rx_udp_bad; + uint32_t rx_icmp_good; + uint32_t rx_icmp_bad; + uint32_t tx_tcp_errinj; + uint32_t tx_udp_errinj; + uint32_t tx_icmp_errinj; + uint32_t rx_tcp_errinj; + uint32_t rx_udp_errinj; + uint32_t rx_icmp_errinj; +}; + +#define ARP_OL_AGENT 0x00000001 +#define ARP_OL_SNOOP 0x00000002 +#define ARP_OL_HOST_AUTO_REPLY 0x00000004 +#define ARP_OL_PEER_AUTO_REPLY 0x00000008 +#define ARP_ERRTEST_REPLY_PEER 0x1 +#define ARP_ERRTEST_REPLY_HOST 0x2 +#define ARP_MULTIHOMING_MAX 8 + +struct arp_ol_stats_t +{ + uint32_t host_ip_entries; + uint32_t host_ip_overflow; + uint32_t arp_table_entries; + uint32_t arp_table_overflow; + uint32_t host_request; + uint32_t host_reply; + uint32_t host_service; + uint32_t peer_request; + uint32_t peer_request_drop; + uint32_t peer_reply; + uint32_t peer_reply_drop; + uint32_t peer_service; +}; + +typedef struct wl_keep_alive_pkt +{ + uint32_t period_msec; + uint16_t len_bytes; + uint8_t data[1]; +} wl_keep_alive_pkt_t; + +#define WL_KEEP_ALIVE_FIXED_LEN offsetof(wl_keep_alive_pkt_t, data) + +typedef enum wl_pkt_filter_type +{ + WL_PKT_FILTER_TYPE_PATTERN_MATCH +} wl_pkt_filter_type_t; + +#define WL_PKT_FILTER_TYPE wl_pkt_filter_type_t + +typedef struct wl_pkt_filter_pattern +{ + uint32_t offset; + uint32_t size_bytes; + uint8_t mask_and_pattern[1]; +} wl_pkt_filter_pattern_t; + +typedef struct wl_pkt_filter +{ + uint32_t id; + uint32_t type; + uint32_t negate_match; + union + { + wl_pkt_filter_pattern_t pattern; + } u; +} wl_pkt_filter_t; + +#define WL_PKT_FILTER_FIXED_LEN offsetof(wl_pkt_filter_t, u) +#define WL_PKT_FILTER_PATTERN_FIXED_LEN offsetof(wl_pkt_filter_pattern_t, mask_and_pattern) + +typedef struct wl_pkt_filter_enable +{ + uint32_t id; + uint32_t enable; +} wl_pkt_filter_enable_t; + +typedef struct wl_pkt_filter_list +{ + uint32_t num; + wl_pkt_filter_t filter[1]; +} wl_pkt_filter_list_t; + +#define WL_PKT_FILTER_LIST_FIXED_LEN offsetof(wl_pkt_filter_list_t, filter) + +typedef struct wl_pkt_filter_stats +{ + uint32_t num_pkts_matched; + uint32_t num_pkts_forwarded; + uint32_t num_pkts_discarded; +} wl_pkt_filter_stats_t; + +typedef struct wl_seq_cmd_ioctl +{ + uint32_t cmd; + uint32_t len; +} wl_seq_cmd_ioctl_t; + +#define WL_SEQ_CMD_ALIGN_BYTES 4 +#define WL_SEQ_CMDS_GET_IOCTL_FILTER(cmd) \ + (((cmd) == WLC_GET_MAGIC) || \ + ((cmd) == WLC_GET_VERSION) || \ + ((cmd) == WLC_GET_AP) || \ + ((cmd) == WLC_GET_INSTANCE)) +#define WL_PKTENG_PER_TX_START 0x01 +#define WL_PKTENG_PER_TX_STOP 0x02 +#define WL_PKTENG_PER_RX_START 0x04 +#define WL_PKTENG_PER_RX_WITH_ACK_START 0x05 +#define WL_PKTENG_PER_TX_WITH_ACK_START 0x06 +#define WL_PKTENG_PER_RX_STOP 0x08 +#define WL_PKTENG_PER_MASK 0xff +#define WL_PKTENG_SYNCHRONOUS 0x100 + +typedef struct wl_pkteng +{ + uint32_t flags; + uint32_t delay; + uint32_t nframes; + uint32_t length; + uint8_t seqno; + struct ether_addr dest; + struct ether_addr src; +} wl_pkteng_t; + +#define NUM_80211b_RATES 4 +#define NUM_80211ag_RATES 8 +#define NUM_80211n_RATES 32 +#define NUM_80211_RATES (NUM_80211b_RATES+NUM_80211ag_RATES+NUM_80211n_RATES) + +typedef struct wl_pkteng_stats +{ + uint32_t lostfrmcnt; + int32_t rssi; + int32_t snr; + uint16_t rxpktcnt[NUM_80211_RATES + 1]; +} wl_pkteng_stats_t; + +#define WL_WOWL_MAGIC (1 << 0) +#define WL_WOWL_NET (1 << 1) +#define WL_WOWL_DIS (1 << 2) +#define WL_WOWL_RETR (1 << 3) +#define WL_WOWL_BCN (1 << 4) +#define WL_WOWL_TST (1 << 5) +#define WL_WOWL_BCAST (1 << 15) +#define MAGIC_PKT_MINLEN 102 + +typedef struct +{ + uint32_t masksize; + uint32_t offset; + uint32_t patternoffset; + uint32_t patternsize; +} wl_wowl_pattern_t; + +typedef struct +{ + uint32_t count; + wl_wowl_pattern_t pattern[1]; +} wl_wowl_pattern_list_t; + +typedef struct +{ + uint8_t pci_wakeind; + uint16_t ucode_wakeind; +} wl_wowl_wakeind_t; + +typedef struct wl_txrate_class +{ + uint8_t init_rate; + uint8_t min_rate; + uint8_t max_rate; +} wl_txrate_class_t; + +#define WLC_OBSS_SCAN_PASSIVE_DWELL_DEFAULT 100 +#define WLC_OBSS_SCAN_PASSIVE_DWELL_MIN 5 +#define WLC_OBSS_SCAN_PASSIVE_DWELL_MAX 1000 +#define WLC_OBSS_SCAN_ACTIVE_DWELL_DEFAULT 20 +#define WLC_OBSS_SCAN_ACTIVE_DWELL_MIN 10 +#define WLC_OBSS_SCAN_ACTIVE_DWELL_MAX 1000 +#define WLC_OBSS_SCAN_WIDTHSCAN_INTERVAL_DEFAULT 300 +#define WLC_OBSS_SCAN_WIDTHSCAN_INTERVAL_MIN 10 +#define WLC_OBSS_SCAN_WIDTHSCAN_INTERVAL_MAX 900 +#define WLC_OBSS_SCAN_CHANWIDTH_TRANSITION_DLY_DEFAULT 5 +#define WLC_OBSS_SCAN_CHANWIDTH_TRANSITION_DLY_MIN 5 +#define WLC_OBSS_SCAN_CHANWIDTH_TRANSITION_DLY_MAX 100 +#define WLC_OBSS_SCAN_PASSIVE_TOTAL_PER_CHANNEL_DEFAULT 200 +#define WLC_OBSS_SCAN_PASSIVE_TOTAL_PER_CHANNEL_MIN 200 +#define WLC_OBSS_SCAN_PASSIVE_TOTAL_PER_CHANNEL_MAX 10000 +#define WLC_OBSS_SCAN_ACTIVE_TOTAL_PER_CHANNEL_DEFAULT 20 +#define WLC_OBSS_SCAN_ACTIVE_TOTAL_PER_CHANNEL_MIN 20 +#define WLC_OBSS_SCAN_ACTIVE_TOTAL_PER_CHANNEL_MAX 10000 +#define WLC_OBSS_SCAN_ACTIVITY_THRESHOLD_DEFAULT 25 +#define WLC_OBSS_SCAN_ACTIVITY_THRESHOLD_MIN 0 +#define WLC_OBSS_SCAN_ACTIVITY_THRESHOLD_MAX 100 + +typedef struct wl_obss_scan_arg +{ + int16_t passive_dwell; + int16_t active_dwell; + int16_t bss_widthscan_interval; + int16_t passive_total; + int16_t active_total; + int16_t chanwidth_transition_delay; + int16_t activity_threshold; +} wl_obss_scan_arg_t; + +#define WL_OBSS_SCAN_PARAM_LEN sizeof(wl_obss_scan_arg_t) +#define WL_MIN_NUM_OBSS_SCAN_ARG 7 +#define WL_COEX_INFO_MASK 0x07 +#define WL_COEX_INFO_REQ 0x01 +#define WL_COEX_40MHZ_INTOLERANT 0x02 +#define WL_COEX_WIDTH20 0x04 + +typedef struct wl_action_obss_coex_req +{ + uint8_t info; + uint8_t num; + uint8_t ch_list[1]; +} wl_action_obss_coex_req_t; + +#define MAX_RSSI_LEVELS 8 + +typedef struct wl_rssi_event +{ + uint32_t rate_limit_msec; + uint8_t num_rssi_levels; + int8_t rssi_levels[MAX_RSSI_LEVELS]; +} wl_rssi_event_t; + +#define WLFEATURE_DISABLE_11N 0x00000001 +#define WLFEATURE_DISABLE_11N_STBC_TX 0x00000002 +#define WLFEATURE_DISABLE_11N_STBC_RX 0x00000004 +#define WLFEATURE_DISABLE_11N_SGI_TX 0x00000008 +#define WLFEATURE_DISABLE_11N_SGI_RX 0x00000010 +#define WLFEATURE_DISABLE_11N_AMPDU_TX 0x00000020 +#define WLFEATURE_DISABLE_11N_AMPDU_RX 0x00000040 +#define WLFEATURE_DISABLE_11N_GF 0x00000080 + +#pragma pack(1) + +typedef struct sta_prbreq_wps_ie_hdr +{ + struct ether_addr staAddr; + uint16_t ieLen; +} sta_prbreq_wps_ie_hdr_t; + +typedef struct sta_prbreq_wps_ie_data +{ + sta_prbreq_wps_ie_hdr_t hdr; + uint8_t ieData[1]; +} sta_prbreq_wps_ie_data_t; + +typedef struct sta_prbreq_wps_ie_list +{ + uint32_t totLen; + uint8_t ieDataList[1]; +} sta_prbreq_wps_ie_list_t; + +/* EDCF related items from 802.11.h */ + +/* ACI from 802.11.h */ +#define EDCF_AIFSN_MIN 1 /* AIFSN minimum value */ +#define EDCF_AIFSN_MAX 15 /* AIFSN maximum value */ +#define EDCF_AIFSN_MASK 0x0f /* AIFSN mask */ +#define EDCF_ACM_MASK 0x10 /* ACM mask */ +#define EDCF_ACI_MASK 0x60 /* ACI mask */ +#define EDCF_ACI_SHIFT 5 /* ACI shift */ +#define EDCF_AIFSN_SHIFT 12 /* 4 MSB(0xFFF) in ifs_ctl for AC idx */ + +/* ECW from 802.11.h */ +#define EDCF_ECW_MIN 0 /* cwmin/cwmax exponent minimum value */ +#define EDCF_ECW_MAX 15 /* cwmin/cwmax exponent maximum value */ +#define EDCF_ECW2CW(exp) ((1 << (exp)) - 1) +#define EDCF_ECWMIN_MASK 0x0f /* cwmin exponent form mask */ +#define EDCF_ECWMAX_MASK 0xf0 /* cwmax exponent form mask */ +#define EDCF_ECWMAX_SHIFT 4 /* cwmax exponent form shift */ + +/* TXOP from 802.11.h */ +#define EDCF_TXOP_MIN 0 /* TXOP minimum value */ +#define EDCF_TXOP_MAX 65535 /* TXOP maximum value */ +#define EDCF_TXOP2USEC(txop) ((txop) << 5) + +struct edcf_acparam +{ + uint8_t ACI; + uint8_t ECW; + uint16_t TXOP; /* stored in network order (ls octet first) */ +} ; +typedef struct edcf_acparam edcf_acparam_t; + +/* Stop packing structures */ +#pragma pack() + +/** + * Enumerated list of event types + */ +typedef enum +{ + WLC_E_NONE = -1, + WLC_E_SET_SSID = 0 /** indicates status of set SSID */, + WLC_E_JOIN = 1, /** differentiates join IBSS from found (WLC_E_START) IBSS */ + WLC_E_START = 2, /** STA founded an IBSS or AP started a BSS */ + WLC_E_AUTH = 3, /** 802.11 AUTH request */ + WLC_E_AUTH_IND = 4, /** 802.11 AUTH indication */ + WLC_E_DEAUTH = 5, /** 802.11 DEAUTH request */ + WLC_E_DEAUTH_IND = 6, /** 802.11 DEAUTH indication */ + WLC_E_ASSOC = 7, /** 802.11 ASSOC request */ + WLC_E_ASSOC_IND = 8, /** 802.11 ASSOC indication */ + WLC_E_REASSOC = 9, /** 802.11 REASSOC request */ + WLC_E_REASSOC_IND = 10, /** 802.11 REASSOC indication */ + WLC_E_DISASSOC = 11, /** 802.11 DISASSOC request */ + WLC_E_DISASSOC_IND = 12, /** 802.11 DISASSOC indication */ + WLC_E_QUIET_START = 13, /** 802.11h Quiet period started */ + WLC_E_QUIET_END = 14, /** 802.11h Quiet period ended */ + WLC_E_BEACON_RX = 15, /** BEACONS received/lost indication */ + WLC_E_LINK = 16, /** generic link indication */ + WLC_E_MIC_ERROR = 17, /** TKIP MIC error occurred */ + WLC_E_NDIS_LINK = 18, /** NDIS style link indication */ + WLC_E_ROAM = 19, /** roam attempt occurred: indicate status & reason */ + WLC_E_TXFAIL = 20, /** change in dot11FailedCount (txfail) */ + WLC_E_PMKID_CACHE = 21, /** WPA2 pmkid cache indication */ + WLC_E_RETROGRADE_TSF = 22, /** current AP's TSF value went backward */ + WLC_E_PRUNE = 23, /** AP was pruned from join list for reason */ + WLC_E_AUTOAUTH = 24, /** report AutoAuth table entry match for join attempt */ + WLC_E_EAPOL_MSG = 25, /** Event encapsulating an EAPOL message */ + WLC_E_SCAN_COMPLETE = 26, /** Scan results are ready or scan was aborted */ + WLC_E_ADDTS_IND = 27, /** indicate to host addts fail/success */ + WLC_E_DELTS_IND = 28, /** indicate to host delts fail/success */ + WLC_E_BCNSENT_IND = 29, /** indicate to host of beacon transmit */ + WLC_E_BCNRX_MSG = 30, /** Send the received beacon up to the host */ + WLC_E_BCNLOST_MSG = 31, /** indicate to host loss of beacon */ + WLC_E_ROAM_PREP = 32, /** before attempting to roam */ + WLC_E_PFN_NET_FOUND = 33, /** PFN network found event */ + WLC_E_PFN_NET_LOST = 34, /** PFN network lost event */ + WLC_E_RESET_COMPLETE = 35, + WLC_E_JOIN_START = 36, + WLC_E_ROAM_START = 37, + WLC_E_ASSOC_START = 38, + WLC_E_IBSS_ASSOC = 39, + WLC_E_RADIO = 40, + WLC_E_PSM_WATCHDOG = 41, /** PSM microcode watchdog fired */ + WLC_E_CCX_ASSOC_START = 42, /** CCX association start */ + WLC_E_CCX_ASSOC_ABORT = 43, /** CCX association abort */ + WLC_E_PROBREQ_MSG = 44, /** probe request received */ + WLC_E_SCAN_CONFIRM_IND = 45, + WLC_E_PSK_SUP = 46, /** WPA Handshake */ + WLC_E_COUNTRY_CODE_CHANGED = 47, + WLC_E_EXCEEDED_MEDIUM_TIME = 48, /** WMMAC excedded medium time */ + WLC_E_ICV_ERROR = 49, /** WEP ICV error occurred */ + WLC_E_UNICAST_DECODE_ERROR = 50, /** Unsupported unicast encrypted frame */ + WLC_E_MULTICAST_DECODE_ERROR = 51, /** Unsupported multicast encrypted frame */ + WLC_E_TRACE = 52, + WLC_E_BTA_HCI_EVENT = 53, /** BT-AMP HCI event */ + WLC_E_IF = 54, /** I/F change (for wlan host notification) */ + WLC_E_P2P_DISC_LISTEN_COMPLETE = 55, /** P2P Discovery listen state expires */ + WLC_E_RSSI = 56, /** indicate RSSI change based on configured levels */ + WLC_E_PFN_SCAN_COMPLETE = 57, /** PFN completed scan of network list */ + WLC_E_EXTLOG_MSG = 58, + WLC_E_ACTION_FRAME = 59, /** Action frame reception */ + WLC_E_ACTION_FRAME_COMPLETE = 60, /** Action frame Tx complete */ + WLC_E_PRE_ASSOC_IND = 61, /** assoc request received */ + WLC_E_PRE_REASSOC_IND = 62, /** re-assoc request received */ + WLC_E_CHANNEL_ADOPTED = 63, /** channel adopted (xxx: obsoleted) */ + WLC_E_AP_STARTED = 64, /** AP started */ + WLC_E_DFS_AP_STOP = 65, /** AP stopped due to DFS */ + WLC_E_DFS_AP_RESUME = 66, /** AP resumed due to DFS */ + WLC_E_WAI_STA_EVENT = 67, /** WAI stations event */ + WLC_E_WAI_MSG = 68, /** event encapsulating an WAI message */ + WLC_E_ESCAN_RESULT = 69, /** escan result event */ + WLC_E_ACTION_FRAME_OFF_CHAN_COMPLETE = 70, /** action frame off channel complete */ /* NOTE - This used to be WLC_E_WAKE_EVENT */ + WLC_E_PROBRESP_MSG = 71, /** probe response received */ + WLC_E_P2P_PROBREQ_MSG = 72, /** P2P Probe request received */ + WLC_E_DCS_REQUEST = 73, + WLC_E_FIFO_CREDIT_MAP = 74, /** credits for D11 FIFOs. [AC0,AC1,AC2,AC3,BC_MC,ATIM] */ + WLC_E_ACTION_FRAME_RX = 75, /** Received action frame event WITH wl_event_rx_frame_data_t header */ + WLC_E_WAKE_EVENT = 76, /** Wake Event timer fired, used for wake WLAN test mode */ + WLC_E_RM_COMPLETE = 77, /** Radio measurement complete */ + WLC_E_HTSFSYNC = 78, /** Synchronize TSF with the host */ + WLC_E_OVERLAY_REQ = 79, /** request an overlay IOCTL/iovar from the host */ + WLC_E_CSA_COMPLETE_IND = 80, + WLC_E_EXCESS_PM_WAKE_EVENT = 81, /** excess PM Wake Event to inform host */ + WLC_E_PFN_SCAN_NONE = 82, /** no PFN networks around */ + WLC_E_PFN_SCAN_ALLGONE = 83, /** last found PFN network gets lost */ + WLC_E_GTK_PLUMBED = 84, + WLC_E_ASSOC_IND_NDIS = 85, /** 802.11 ASSOC indication for NDIS only */ + WLC_E_REASSOC_IND_NDIS = 86, /** 802.11 REASSOC indication for NDIS only */ + WLC_E_ASSOC_REQ_IE = 87, + WLC_E_ASSOC_RESP_IE = 88, + WLC_E_ASSOC_RECREATED = 89, /** association recreated on resume */ + WLC_E_ACTION_FRAME_RX_NDIS = 90, /** rx action frame event for NDIS only */ + WLC_E_AUTH_REQ = 91, /** authentication request received */ + WLC_E_TDLS_PEER_EVENT = 92, /** discovered peer, connected/disconnected peer */ + WLC_E_SPEEDY_RECREATE_FAIL = 93, /** fast assoc recreation failed */ + WLC_E_NATIVE = 94, /** port-specific event and payload (e.g. NDIS) */ + WLC_E_PKTDELAY_IND = 95, /** event for tx pkt delay suddently jump */ + WLC_E_AWDL_AW = 96, /** AWDL AW period starts */ + WLC_E_AWDL_ROLE = 97, /** AWDL Master/Slave/NE master role event */ + WLC_E_AWDL_EVENT = 98, /** Generic AWDL event */ + WLC_E_NIC_AF_TXS = 99, /** NIC AF txstatus */ + WLC_E_NIC_NIC_REPORT = 100, /** NIC period report */ + WLC_E_BEACON_FRAME_RX = 101, + WLC_E_SERVICE_FOUND = 102, /** desired service found */ + WLC_E_GAS_FRAGMENT_RX = 103, /** GAS fragment received */ + WLC_E_GAS_COMPLETE = 104, /** GAS sessions all complete */ + WLC_E_P2PO_ADD_DEVICE = 105, /** New device found by p2p offload */ + WLC_E_P2PO_DEL_DEVICE = 106, /** device has been removed by p2p offload */ + WLC_E_WNM_STA_SLEEP = 107, /** WNM event to notify STA enter sleep mode */ + WLC_E_TXFAIL_THRESH = 108, /** Indication of MAC tx failures (exhaustion of 802.11 retries) exceeding threshold(s) */ + WLC_E_PROXD = 109, /** Proximity Detection event */ + WLC_E_IBSS_COALESCE = 110, /** IBSS Coalescing */ + WLC_E_AWDL_RX_PRB_RESP = 111, /** AWDL RX Probe response */ + WLC_E_AWDL_RX_ACT_FRAME = 112, /** AWDL RX Action Frames */ + WLC_E_AWDL_WOWL_NULLPKT = 113, /** AWDL Wowl nulls */ + WLC_E_AWDL_PHYCAL_STATUS = 114, /** AWDL Phycal status */ + WLC_E_AWDL_OOB_AF_STATUS = 115, /** AWDL OOB AF status */ + WLC_E_AWDL_SCAN_STATUS = 116, /** Interleaved Scan status */ + WLC_E_AWDL_AW_START = 117, /** AWDL AW Start */ + WLC_E_AWDL_AW_END = 118, /** AWDL AW End */ + WLC_E_AWDL_AW_EXT = 119, /** AWDL AW Extensions */ + WLC_E_AWDL_PEER_CACHE_CONTROL = 120, + WLC_E_CSA_START_IND = 121, + WLC_E_CSA_DONE_IND = 122, + WLC_E_CSA_FAILURE_IND = 123, + WLC_E_CCA_CHAN_QUAL = 124, /** CCA based channel quality report */ + WLC_E_BSSID = 125, /** to report change in BSSID while roaming */ + WLC_E_TX_STAT_ERROR = 126, /** tx error indication */ + WLC_E_BCMC_CREDIT_SUPPORT = 127, /** credit check for BCMC supported */ + WLC_E_PSTA_PRIMARY_INTF_IND = 128, /** psta primary interface indication */ + WLC_E_LAST = 129, /** highest val + 1 for range checking */ + + WLC_E_FORCE_32_BIT = 0x7FFFFFFE /** Force enum to be stored in 32 bit variable */ +} wl_event_num_t; + +#define BCMF_EVENT_COUNT WLC_E_LAST + +#define WLC_SUP_STATUS_OFFSET (256) +#define WLC_DOT11_SC_STATUS_OFFSET (512) + +/** + * Enumerated list of event status codes + * @note : WLC_SUP values overlap other values, so it is necessary + * to check the event type + */ +typedef enum +{ + WLC_E_STATUS_SUCCESS = 0, /** operation was successful */ + WLC_E_STATUS_FAIL = 1, /** operation failed */ + WLC_E_STATUS_TIMEOUT = 2, /** operation timed out */ + WLC_E_STATUS_NO_NETWORKS = 3, /** failed due to no matching network found */ + WLC_E_STATUS_ABORT = 4, /** operation was aborted */ + WLC_E_STATUS_NO_ACK = 5, /** protocol failure: packet not ack'd */ + WLC_E_STATUS_UNSOLICITED = 6, /** AUTH or ASSOC packet was unsolicited */ + WLC_E_STATUS_ATTEMPT = 7, /** attempt to assoc to an auto auth configuration */ + WLC_E_STATUS_PARTIAL = 8, /** scan results are incomplete */ + WLC_E_STATUS_NEWSCAN = 9, /** scan aborted by another scan */ + WLC_E_STATUS_NEWASSOC = 10, /** scan aborted due to assoc in progress */ + WLC_E_STATUS_11HQUIET = 11, /** 802.11h quiet period started */ + WLC_E_STATUS_SUPPRESS = 12, /** user disabled scanning (WLC_SET_SCANSUPPRESS) */ + WLC_E_STATUS_NOCHANS = 13, /** no allowable channels to scan */ + WLC_E_STATUS_CCXFASTRM = 14, /** scan aborted due to CCX fast roam */ + WLC_E_STATUS_CS_ABORT = 15, /** abort channel select */ + + /* for WLC_SUP messages */ + WLC_SUP_DISCONNECTED = 0 + WLC_SUP_STATUS_OFFSET, + WLC_SUP_CONNECTING = 1 + WLC_SUP_STATUS_OFFSET, + WLC_SUP_IDREQUIRED = 2 + WLC_SUP_STATUS_OFFSET, + WLC_SUP_AUTHENTICATING = 3 + WLC_SUP_STATUS_OFFSET, + WLC_SUP_AUTHENTICATED = 4 + WLC_SUP_STATUS_OFFSET, + WLC_SUP_KEYXCHANGE = 5 + WLC_SUP_STATUS_OFFSET, + WLC_SUP_KEYED = 6 + WLC_SUP_STATUS_OFFSET, + WLC_SUP_TIMEOUT = 7 + WLC_SUP_STATUS_OFFSET, + WLC_SUP_LAST_BASIC_STATE = 8 + WLC_SUP_STATUS_OFFSET, + /* Extended supplicant authentication states */ + WLC_SUP_KEYXCHANGE_WAIT_M1 = (int) WLC_SUP_AUTHENTICATED + WLC_SUP_STATUS_OFFSET, /** Waiting to receive handshake msg M1 */ + WLC_SUP_KEYXCHANGE_PREP_M2 = (int) WLC_SUP_KEYXCHANGE + WLC_SUP_STATUS_OFFSET, /** Preparing to send handshake msg M2 */ + WLC_SUP_KEYXCHANGE_WAIT_M3 = (int) WLC_SUP_LAST_BASIC_STATE + WLC_SUP_STATUS_OFFSET, /** Waiting to receive handshake msg M3 */ + WLC_SUP_KEYXCHANGE_PREP_M4 = 9 + WLC_SUP_STATUS_OFFSET, /** Preparing to send handshake msg M4 */ + WLC_SUP_KEYXCHANGE_WAIT_G1 = 10 + WLC_SUP_STATUS_OFFSET, /** Waiting to receive handshake msg G1 */ + WLC_SUP_KEYXCHANGE_PREP_G2 = 11 + WLC_SUP_STATUS_OFFSET, /** Preparing to send handshake msg G2 */ + + WLC_DOT11_SC_SUCCESS = 0 + WLC_DOT11_SC_STATUS_OFFSET, /* Successful */ + WLC_DOT11_SC_FAILURE = 1 + WLC_DOT11_SC_STATUS_OFFSET, /* Unspecified failure */ + WLC_DOT11_SC_CAP_MISMATCH = 10 + WLC_DOT11_SC_STATUS_OFFSET, /* Cannot support all requested capabilities in the Capability Information field */ + WLC_DOT11_SC_REASSOC_FAIL = 11 + WLC_DOT11_SC_STATUS_OFFSET, /* Reassociation denied due to inability to confirm that association exists */ + WLC_DOT11_SC_ASSOC_FAIL = 12 + WLC_DOT11_SC_STATUS_OFFSET, /* Association denied due to reason outside the scope of this standard */ + WLC_DOT11_SC_AUTH_MISMATCH = 13 + WLC_DOT11_SC_STATUS_OFFSET, /* Responding station does not support the specified authentication algorithm */ + WLC_DOT11_SC_AUTH_SEQ = 14 + WLC_DOT11_SC_STATUS_OFFSET, /* Received an Authentication frame with authentication transaction sequence number out of expected sequence */ + WLC_DOT11_SC_AUTH_CHALLENGE_FAIL = 15 + WLC_DOT11_SC_STATUS_OFFSET, /* Authentication rejected because of challenge failure */ + WLC_DOT11_SC_AUTH_TIMEOUT = 16 + WLC_DOT11_SC_STATUS_OFFSET, /* Authentication rejected due to timeout waiting for next frame in sequence */ + WLC_DOT11_SC_ASSOC_BUSY_FAIL = 17 + WLC_DOT11_SC_STATUS_OFFSET, /* Association denied because AP is unable to handle additional associated stations */ + WLC_DOT11_SC_ASSOC_RATE_MISMATCH = 18 + WLC_DOT11_SC_STATUS_OFFSET, /* Association denied due to requesting station not supporting all of the data rates in the BSSBasicRateSet parameter */ + WLC_DOT11_SC_ASSOC_SHORT_REQUIRED = 19 + WLC_DOT11_SC_STATUS_OFFSET, /* Association denied due to requesting station not supporting the Short Preamble option */ + WLC_DOT11_SC_ASSOC_PBCC_REQUIRED = 20 + WLC_DOT11_SC_STATUS_OFFSET, /* Association denied due to requesting station not supporting the PBCC Modulation option */ + WLC_DOT11_SC_ASSOC_AGILITY_REQUIRED = 21 + WLC_DOT11_SC_STATUS_OFFSET, /* Association denied due to requesting station not supporting the Channel Agility option */ + WLC_DOT11_SC_ASSOC_SPECTRUM_REQUIRED = 22 + WLC_DOT11_SC_STATUS_OFFSET, /* Association denied because Spectrum Management capability is required. */ + WLC_DOT11_SC_ASSOC_BAD_POWER_CAP = 23 + WLC_DOT11_SC_STATUS_OFFSET, /* Association denied because the info in the Power Cap element is unacceptable. */ + WLC_DOT11_SC_ASSOC_BAD_SUP_CHANNELS = 24 + WLC_DOT11_SC_STATUS_OFFSET, /* Association denied because the info in the Supported Channel element is unacceptable */ + WLC_DOT11_SC_ASSOC_SHORTSLOT_REQUIRED = 25 + WLC_DOT11_SC_STATUS_OFFSET, /* Association denied due to requesting station not supporting the Short Slot Time option */ + WLC_DOT11_SC_ASSOC_ERPBCC_REQUIRED = 26 + WLC_DOT11_SC_STATUS_OFFSET, /* Association denied due to requesting station not supporting the ER-PBCC Modulation option */ + WLC_DOT11_SC_ASSOC_DSSOFDM_REQUIRED = 27 + WLC_DOT11_SC_STATUS_OFFSET, /* Association denied due to requesting station not supporting the DSS-OFDM option */ + WLC_DOT11_SC_DECLINED = 37 + WLC_DOT11_SC_STATUS_OFFSET, /* request declined */ + WLC_DOT11_SC_INVALID_PARAMS = 38 + WLC_DOT11_SC_STATUS_OFFSET, /* One or more params have invalid values */ + WLC_DOT11_SC_INVALID_AKMP = 43 + WLC_DOT11_SC_STATUS_OFFSET, /* Association denied due to invalid AKMP */ + WLC_DOT11_SC_INVALID_MDID = 54 + WLC_DOT11_SC_STATUS_OFFSET, /* Association denied due to invalid MDID */ + WLC_DOT11_SC_INVALID_FTIE = 55 + WLC_DOT11_SC_STATUS_OFFSET, /* Association denied due to invalid FTIE */ + + WLC_E_STATUS_FORCE_32_BIT = 0x7FFFFFFE /** Force enum to be stored in 32 bit variable */ +} wl_event_status_t; + +#define WLC_E_PRUNE_REASON_OFFSET (256) +#define WLC_E_SUP_REASON_OFFSET (512) +#define WLC_E_DOT11_RC_REASON_OFFSET (768) + +/** + * Enumerated list of event reason codes + * @note : Several values overlap other values, so it is necessary + * to check the event type + */ +typedef enum +{ + /* roam reason codes */ + WLC_E_REASON_INITIAL_ASSOC = 0, /** initial assoc */ + WLC_E_REASON_LOW_RSSI = 1, /** roamed due to low RSSI */ + WLC_E_REASON_DEAUTH = 2, /** roamed due to DEAUTH indication */ + WLC_E_REASON_DISASSOC = 3, /** roamed due to DISASSOC indication */ + WLC_E_REASON_BCNS_LOST = 4, /** roamed due to lost beacons */ + WLC_E_REASON_FAST_ROAM_FAILED = 5, /** roamed due to fast roam failure */ + WLC_E_REASON_DIRECTED_ROAM = 6, /** roamed due to request by AP */ + WLC_E_REASON_TSPEC_REJECTED = 7, /** roamed due to TSPEC rejection */ + WLC_E_REASON_BETTER_AP = 8, /** roamed due to finding better AP */ + + /* prune reason codes */ + WLC_E_PRUNE_ENCR_MISMATCH = 1 + WLC_E_PRUNE_REASON_OFFSET, /** encryption mismatch */ + WLC_E_PRUNE_BCAST_BSSID = 2 + WLC_E_PRUNE_REASON_OFFSET, /** AP uses a broadcast BSSID */ + WLC_E_PRUNE_MAC_DENY = 3 + WLC_E_PRUNE_REASON_OFFSET, /** STA's MAC addr is in AP's MAC deny list */ + WLC_E_PRUNE_MAC_NA = 4 + WLC_E_PRUNE_REASON_OFFSET, /** STA's MAC addr is not in AP's MAC allow list */ + WLC_E_PRUNE_REG_PASSV = 5 + WLC_E_PRUNE_REASON_OFFSET, /** AP not allowed due to regulatory restriction */ + WLC_E_PRUNE_SPCT_MGMT = 6 + WLC_E_PRUNE_REASON_OFFSET, /** AP does not support STA locale spectrum mgmt */ + WLC_E_PRUNE_RADAR = 7 + WLC_E_PRUNE_REASON_OFFSET, /** AP is on a radar channel of STA locale */ + WLC_E_RSN_MISMATCH = 8 + WLC_E_PRUNE_REASON_OFFSET, /** STA does not support AP's RSN */ + WLC_E_PRUNE_NO_COMMON_RATES = 9 + WLC_E_PRUNE_REASON_OFFSET, /** No rates in common with AP */ + WLC_E_PRUNE_BASIC_RATES = 10 + WLC_E_PRUNE_REASON_OFFSET, /** STA does not support all basic rates of BSS */ + WLC_E_PRUNE_CCXFAST_PREVAP = 11 + WLC_E_PRUNE_REASON_OFFSET, /** CCX FAST ROAM: prune previous AP */ + WLC_E_PRUNE_CIPHER_NA = 12 + WLC_E_PRUNE_REASON_OFFSET, /** BSS's cipher not supported */ + WLC_E_PRUNE_KNOWN_STA = 13 + WLC_E_PRUNE_REASON_OFFSET, /** AP is already known to us as a STA */ + WLC_E_PRUNE_CCXFAST_DROAM = 14 + WLC_E_PRUNE_REASON_OFFSET, /** CCX FAST ROAM: prune unqualified AP */ + WLC_E_PRUNE_WDS_PEER = 15 + WLC_E_PRUNE_REASON_OFFSET, /** AP is already known to us as a WDS peer */ + WLC_E_PRUNE_QBSS_LOAD = 16 + WLC_E_PRUNE_REASON_OFFSET, /** QBSS LOAD - AAC is too low */ + WLC_E_PRUNE_HOME_AP = 17 + WLC_E_PRUNE_REASON_OFFSET, /** prune home AP */ + WLC_E_PRUNE_AP_BLOCKED = 18 + WLC_E_PRUNE_REASON_OFFSET, /** prune blocked AP */ + WLC_E_PRUNE_NO_DIAG_SUPPORT = 19 + WLC_E_PRUNE_REASON_OFFSET, /** prune due to diagnostic mode not supported */ + + /* WPA failure reason codes carried in the WLC_E_PSK_SUP event */ + WLC_E_SUP_OTHER = 0 + WLC_E_SUP_REASON_OFFSET, /** Other reason */ + WLC_E_SUP_DECRYPT_KEY_DATA = 1 + WLC_E_SUP_REASON_OFFSET, /** Decryption of key data failed */ + WLC_E_SUP_BAD_UCAST_WEP128 = 2 + WLC_E_SUP_REASON_OFFSET, /** Illegal use of ucast WEP128 */ + WLC_E_SUP_BAD_UCAST_WEP40 = 3 + WLC_E_SUP_REASON_OFFSET, /** Illegal use of ucast WEP40 */ + WLC_E_SUP_UNSUP_KEY_LEN = 4 + WLC_E_SUP_REASON_OFFSET, /** Unsupported key length */ + WLC_E_SUP_PW_KEY_CIPHER = 5 + WLC_E_SUP_REASON_OFFSET, /** Unicast cipher mismatch in pairwise key */ + WLC_E_SUP_MSG3_TOO_MANY_IE = 6 + WLC_E_SUP_REASON_OFFSET, /** WPA IE contains > 1 RSN IE in key msg 3 */ + WLC_E_SUP_MSG3_IE_MISMATCH = 7 + WLC_E_SUP_REASON_OFFSET, /** WPA IE mismatch in key message 3 */ + WLC_E_SUP_NO_INSTALL_FLAG = 8 + WLC_E_SUP_REASON_OFFSET, /** INSTALL flag unset in 4-way msg */ + WLC_E_SUP_MSG3_NO_GTK = 9 + WLC_E_SUP_REASON_OFFSET, /** encapsulated GTK missing from msg 3 */ + WLC_E_SUP_GRP_KEY_CIPHER = 10 + WLC_E_SUP_REASON_OFFSET, /** Multicast cipher mismatch in group key */ + WLC_E_SUP_GRP_MSG1_NO_GTK = 11 + WLC_E_SUP_REASON_OFFSET, /** encapsulated GTK missing from group msg 1 */ + WLC_E_SUP_GTK_DECRYPT_FAIL = 12 + WLC_E_SUP_REASON_OFFSET, /** GTK decrypt failure */ + WLC_E_SUP_SEND_FAIL = 13 + WLC_E_SUP_REASON_OFFSET, /** message send failure */ + WLC_E_SUP_DEAUTH = 14 + WLC_E_SUP_REASON_OFFSET, /** received FC_DEAUTH */ + WLC_E_SUP_WPA_PSK_TMO = 15 + WLC_E_SUP_REASON_OFFSET, /** WPA PSK 4-way handshake timeout */ + + DOT11_RC_RESERVED = 0 + WLC_E_DOT11_RC_REASON_OFFSET, /* d11 RC reserved */ + DOT11_RC_UNSPECIFIED = 1 + WLC_E_DOT11_RC_REASON_OFFSET, /* Unspecified reason */ + DOT11_RC_AUTH_INVAL = 2 + WLC_E_DOT11_RC_REASON_OFFSET, /* Previous authentication no longer valid */ + DOT11_RC_DEAUTH_LEAVING = 3 + WLC_E_DOT11_RC_REASON_OFFSET, /* Deauthenticated because sending station is leaving (or has left) IBSS or ESS */ + DOT11_RC_INACTIVITY = 4 + WLC_E_DOT11_RC_REASON_OFFSET, /* Disassociated due to inactivity */ + DOT11_RC_BUSY = 5 + WLC_E_DOT11_RC_REASON_OFFSET, /* Disassociated because AP is unable to handle all currently associated stations */ + DOT11_RC_INVAL_CLASS_2 = 6 + WLC_E_DOT11_RC_REASON_OFFSET, /* Class 2 frame received from nonauthenticated station */ + DOT11_RC_INVAL_CLASS_3 = 7 + WLC_E_DOT11_RC_REASON_OFFSET, /* Class 3 frame received from nonassociated station */ + DOT11_RC_DISASSOC_LEAVING = 8 + WLC_E_DOT11_RC_REASON_OFFSET, /* Disassociated because sending station is leaving (or has left) BSS */ + DOT11_RC_NOT_AUTH = 9 + WLC_E_DOT11_RC_REASON_OFFSET, /* Station requesting (re)association is not * authenticated with responding station */ + DOT11_RC_BAD_PC = 10 + WLC_E_DOT11_RC_REASON_OFFSET, /* Unacceptable power capability element */ + DOT11_RC_BAD_CHANNELS = 11 + WLC_E_DOT11_RC_REASON_OFFSET, /* Unacceptable supported channels element */ + /* 12 is unused */ + /* XXX 13-23 are WPA/802.11i reason codes defined in proto/wpa.h */ + /* 32-39 are QSTA specific reasons added in 11e */ + DOT11_RC_UNSPECIFIED_QOS = 32 + WLC_E_DOT11_RC_REASON_OFFSET, /* unspecified QoS-related reason */ + DOT11_RC_INSUFFCIENT_BW = 33 + WLC_E_DOT11_RC_REASON_OFFSET, /* QAP lacks sufficient bandwidth */ + DOT11_RC_EXCESSIVE_FRAMES = 34 + WLC_E_DOT11_RC_REASON_OFFSET, /* excessive number of frames need ack */ + DOT11_RC_TX_OUTSIDE_TXOP = 35 + WLC_E_DOT11_RC_REASON_OFFSET, /* transmitting outside the limits of txop */ + DOT11_RC_LEAVING_QBSS = 36 + WLC_E_DOT11_RC_REASON_OFFSET, /* QSTA is leaving the QBSS (or restting) */ + DOT11_RC_BAD_MECHANISM = 37 + WLC_E_DOT11_RC_REASON_OFFSET, /* does not want to use the mechanism */ + DOT11_RC_SETUP_NEEDED = 38 + WLC_E_DOT11_RC_REASON_OFFSET, /* mechanism needs a setup */ + DOT11_RC_TIMEOUT = 39 + WLC_E_DOT11_RC_REASON_OFFSET, /* timeout */ + DOT11_RC_MAX = 23 + WLC_E_DOT11_RC_REASON_OFFSET, /* Reason codes > 23 are reserved */ + + WLC_E_REASON_FORCE_32_BIT = 0x7FFFFFFE /** Force enum to be stored in 32 bit variable */ +} wl_event_reason_t; + +#endif /* __DRIVERS_WIRELESS_IEEE80211_BCMF_IOCTL_H */ diff --git a/drivers/wireless/ieee80211/bcmf_netdev.c b/drivers/wireless/ieee80211/bcmf_netdev.c new file mode 100644 index 00000000000..02527fe60ce --- /dev/null +++ b/drivers/wireless/ieee80211/bcmf_netdev.c @@ -0,0 +1,1160 @@ +/**************************************************************************** + * drivers/wireless/bcmf_netdev.c + * + * Copyright (C) 2017 Gregory Nutt. All rights reserved. + * Author: Gregory Nutt + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + +/**************************************************************************** + * Included Files + ****************************************************************************/ + +#include +#if defined(CONFIG_NET) && defined(CONFIG_IEEE80211_BROADCOM_FULLMAC) + +#include +#include +#include +#include +#include +#include +#include + +#include + +#include +#include +#include +#include +#include +#include +#include + +#ifdef CONFIG_NET_PKT +# include +#endif + +#include "bcmf_driver.h" +#include "bcmf_cdc.h" +#include "bcmf_bdc.h" +#include "bcmf_ioctl.h" + +/**************************************************************************** + * Pre-processor Definitions + ****************************************************************************/ + +/* If processing is not done at the interrupt level, then work queue support + * is required. + */ + +#if !defined(CONFIG_SCHED_WORKQUEUE) +# error Work queue support is required in this configuration (CONFIG_SCHED_WORKQUEUE) +#else + + /* Use the selected work queue */ + +# if defined(CONFIG_IEEE80211_BROADCOM_HPWORK) +# define BCMFWORK HPWORK +# elif defined(CONFIG_IEEE80211_BROADCOM_HLWORK) +# define BCMFWORK LPWORK +# else +# error Neither CONFIG_IEEE80211_BROADCOM_HPWORK nor CONFIG_IEEE80211_BROADCOM_HLWORK defined +# endif +#endif + +/* CONFIG_IEEE80211_BROADCOM_NINTERFACES determines the number of physical interfaces + * that will be supported. + */ + +#ifndef CONFIG_IEEE80211_BROADCOM_NINTERFACES +# define CONFIG_IEEE80211_BROADCOM_NINTERFACES 1 +#endif + +/* TX poll delay = 1 seconds. CLK_TCK is the number of clock ticks per second */ + +#define BCMF_WDDELAY (1*CLK_TCK) + +/* TX timeout = 1 minute */ + +#define BCMF_TXTIMEOUT (60*CLK_TCK) + +/* This is a helper pointer for accessing the contents of the Ethernet header */ + +#define BUF ((struct eth_hdr_s *)priv->bc_dev.d_buf) + +/**************************************************************************** + * Private Types + ****************************************************************************/ + +/**************************************************************************** + * Private Data + ****************************************************************************/ + +/**************************************************************************** + * Private Function Prototypes + ****************************************************************************/ + +/* Common TX logic */ + +static int bcmf_transmit(FAR struct bcmf_dev_s *priv, + struct bcmf_frame_s *frame); +static void bcmf_receive(FAR struct bcmf_dev_s *priv); +static int bcmf_txpoll(FAR struct net_driver_s *dev); +static void bcmf_rxpoll(FAR void *arg); + +/* Watchdog timer expirations */ + +static void bcmf_poll_work(FAR void *arg); +static void bcmf_poll_expiry(int argc, wdparm_t arg, ...); + +/* NuttX callback functions */ + +static int bcmf_ifup(FAR struct net_driver_s *dev); +static int bcmf_ifdown(FAR struct net_driver_s *dev); + +static void bcmf_txavail_work(FAR void *arg); +static int bcmf_txavail(FAR struct net_driver_s *dev); + +#if defined(CONFIG_NET_IGMP) || defined(CONFIG_NET_ICMPv6) +static int bcmf_addmac(FAR struct net_driver_s *dev, + FAR const uint8_t *mac); +#ifdef CONFIG_NET_IGMP +static int bcmf_rmmac(FAR struct net_driver_s *dev, + FAR const uint8_t *mac); +#endif +#ifdef CONFIG_NET_ICMPv6 +static void bcmf_ipv6multicast(FAR struct bcmf_dev_s *priv); +#endif +#endif +#ifdef CONFIG_NETDEV_IOCTL +static int bcmf_ioctl(FAR struct net_driver_s *dev, int cmd, + unsigned long arg); +#endif + +/**************************************************************************** + * Private Functions + ****************************************************************************/ + +int bcmf_netdev_alloc_tx_frame(FAR struct bcmf_dev_s *priv) +{ + if (priv->cur_tx_frame != NULL) + { + /* Frame available */ + + return OK; + } + + /* Allocate frame for TX */ + + priv->cur_tx_frame = bcmf_bdc_allocate_frame(priv, MAX_NET_DEV_MTU, true); + if (!priv->cur_tx_frame) + { + wlerr("Cannot allocate TX frame\n"); + return -ENOMEM; + } + + return OK; +} + +/**************************************************************************** + * Name: bcmf_transmit + * + * Description: + * Start hardware transmission. Called either from the txdone interrupt + * handling or from watchdog based polling. + * + * Parameters: + * priv - Reference to the driver state structure + * + * Returned Value: + * OK on success; a negated errno on failure + * + * Assumptions: + * May or may not be called from an interrupt handler. In either case, + * the network is locked. + * + ****************************************************************************/ + +static int bcmf_transmit(FAR struct bcmf_dev_s *priv, + struct bcmf_frame_s *frame) +{ + int ret; + + frame->len = priv->bc_dev.d_len + + (unsigned int)(frame->data - frame->base); + + ret = bcmf_bdc_transmit_frame(priv, frame); + + if (ret) + { + wlerr("Failed to transmit frame\n"); + return -EIO; + } + + NETDEV_TXPACKETS(priv->bc_dev); + + return OK; +} + +/**************************************************************************** + * Name: bcmf_receive + * + * Description: + * An interrupt was received indicating the availability of a new RX packet + * + * Parameters: + * priv - Reference to the driver state structure + * + * Returned Value: + * None + * + * Assumptions: + * The network is locked. + * + ****************************************************************************/ + +static void bcmf_receive(FAR struct bcmf_dev_s *priv) +{ + struct bcmf_frame_s *frame; + // wlinfo("Entry\n"); + do + { + /* Request frame buffer from bus interface */ + + frame = bcmf_bdc_rx_frame(priv); + + if (frame == NULL) + { + /* No more frame to process */ + break; + } + + if (!priv->bc_bifup) + { + /* Interface down, drop frame */ + priv->bus->free_frame(priv, frame); + continue; + } + + priv->bc_dev.d_buf = frame->data; + priv->bc_dev.d_len = frame->len - (uint32_t)(frame->data - frame->base); + + wlinfo("Got frame %p %d\n", frame, priv->bc_dev.d_len); + +#ifdef CONFIG_NET_PKT + /* When packet sockets are enabled, feed the frame into the packet tap */ + + pkt_input(&priv->bc_dev); +#endif + + /* We only accept IP packets of the configured type and ARP packets */ + +#ifdef CONFIG_NET_IPv4 + if (BUF->type == HTONS(ETHTYPE_IP)) + { + ninfo("IPv4 frame\n"); + NETDEV_RXIPV4(&priv->bc_dev); + + /* Handle ARP on input then give the IPv4 packet to the network + * layer + */ + + arp_ipin(&priv->bc_dev); + ipv4_input(&priv->bc_dev); + + /* If the above function invocation resulted in data that should be + * sent out on the network, the field d_len will set to a value > 0. + */ + + if (priv->bc_dev.d_len > 0) + { + /* Update the Ethernet header with the correct MAC address */ + +#ifdef CONFIG_NET_IPv6 + if (IFF_IS_IPv4(priv->bc_dev.d_flags)) +#endif + { + arp_out(&priv->bc_dev); + } +#ifdef CONFIG_NET_IPv6 + else + { + neighbor_out(&kel->bc_dev); + } +#endif + + /* And send the packet */ + + bcmf_transmit(priv, frame); + } + else + { + /* Release RX frame buffer */ + + priv->bus->free_frame(priv, frame); + } + } + else +#endif +#ifdef CONFIG_NET_IPv6 + if (BUF->type == HTONS(ETHTYPE_IP6)) + { + ninfo("Iv6 frame\n"); + NETDEV_RXIPV6(&priv->bc_dev); + + /* Give the IPv6 packet to the network layer */ + + ipv6_input(&priv->bc_dev); + + /* If the above function invocation resulted in data that should be + * sent out on the network, the field d_len will set to a value > 0. + */ + + if (priv->bc_dev.d_len > 0) + { + /* Update the Ethernet header with the correct MAC address */ + +#ifdef CONFIG_NET_IPv4 + if (IFF_IS_IPv4(priv->bc_dev.d_flags)) + { + arp_out(&priv->bc_dev); + } + else +#endif +#ifdef CONFIG_NET_IPv6 + { + neighbor_out(&priv->bc_dev); + } +#endif + + /* And send the packet */ + + bcmf_transmit(priv, frame); + } + else + { + /* Release RX frame buffer */ + + priv->bus->free_frame(priv, frame); + } + } + else +#endif +#ifdef CONFIG_NET_ARP + if (BUF->type == htons(ETHTYPE_ARP)) + { + arp_arpin(&priv->bc_dev); + NETDEV_RXARP(&priv->bc_dev); + + /* If the above function invocation resulted in data that should be + * sent out on the network, the field d_len will set to a value > 0. + */ + + if (priv->bc_dev.d_len > 0) + { + bcmf_transmit(priv, frame); + } + else + { + /* Release RX frame buffer */ + + priv->bus->free_frame(priv, frame); + } + } + else +#endif + { + wlinfo("RX dropped\n"); + NETDEV_RXDROPPED(&priv->bc_dev); + priv->bus->free_frame(priv, frame); + } + } + while (1); /* While there are more packets to be processed */ +} + +/**************************************************************************** + * Name: bcmf_txpoll + * + * Description: + * The transmitter is available, check if the network has any outgoing + * packets ready to send. This is a callback from devif_poll(). + * devif_poll() may be called: + * + * 1. When the preceding TX packet send is complete, + * 2. When the preceding TX packet send timesout and the interface is reset + * 3. During normal TX polling + * + * Parameters: + * dev - Reference to the NuttX driver state structure + * + * Returned Value: + * OK on success; a negated errno on failure + * + * Assumptions: + * May or may not be called from an interrupt handler. In either case, + * the network is locked. + * + ****************************************************************************/ + +static int bcmf_txpoll(FAR struct net_driver_s *dev) +{ + FAR struct bcmf_dev_s *priv = (FAR struct bcmf_dev_s *)dev->d_private; + + wlinfo("Entry\n"); + /* If the polling resulted in data that should be sent out on the network, + * the field d_len is set to a value > 0. + */ + + if (priv->bc_dev.d_len > 0) + { + /* Look up the destination MAC address and add it to the Ethernet + * header. + */ + +#ifdef CONFIG_NET_IPv4 +#ifdef CONFIG_NET_IPv6 + if (IFF_IS_IPv4(priv->bc_dev.d_flags)) +#endif + { + arp_out(&priv->bc_dev); + } +#endif /* CONFIG_NET_IPv4 */ + +#ifdef CONFIG_NET_IPv6 +#ifdef CONFIG_NET_IPv4 + else +#endif + { + neighbor_out(&priv->bc_dev); + } +#endif /* CONFIG_NET_IPv6 */ + + /* Send the packet */ + + bcmf_transmit(priv, priv->cur_tx_frame); + + /* Check if there is room in the device to hold another packet. If not, + * return a non-zero value to terminate the poll. + */ + // TODO + priv->cur_tx_frame = NULL; + return 1; + } + + /* If zero is returned, the polling will continue until all connections have + * been examined. + */ + + return 0; +} + +/**************************************************************************** + * Name: bcmf_rxpoll + * + * Description: + * Process RX frames + * + * Parameters: + * arg - context of device to use + * + * Returned Value: + * OK on success + * + * Assumptions: + * The network is locked. + * + ****************************************************************************/ + +static void bcmf_rxpoll(FAR void *arg) +{ + // wlinfo("Entry\n"); + FAR struct bcmf_dev_s *priv = (FAR struct bcmf_dev_s *)arg; + + /* Lock the network and serialize driver operations if necessary. + * NOTE: Serialization is only required in the case where the driver work + * is performed on an LP worker thread and where more than one LP worker + * thread has been configured. + */ + + net_lock(); + + bcmf_receive(priv); + + /* Check if a packet transmission just completed. If so, call bcmf_txdone. + * This may disable further Tx interrupts if there are no pending + * transmissions. + */ + + // bcmf_txdone(priv); + net_unlock(); +} + +/**************************************************************************** + * Name: bcmf_netdev_notify_tx_done + * + * Description: + * Notify callback called when TX frame is sent and freed. + * + * Assumptions: + * + ****************************************************************************/ + +void bcmf_netdev_notify_tx_done(FAR struct bcmf_dev_s *priv) +{ + // wlinfo("Entry\n"); + + /* TODO TX buffer may be available, try to send again if needed */ +} + +/**************************************************************************** + * Name: bcmf_netdev_notify_rx + * + * Description: + * Notify callback called when RX frame is available + * + * Assumptions: + * + ****************************************************************************/ + +void bcmf_netdev_notify_rx(FAR struct bcmf_dev_s *priv) +{ + /* Queue a job to process RX frames */ + + work_queue(BCMFWORK, &priv->bc_pollwork, bcmf_rxpoll, priv, 0); +} + +/**************************************************************************** + * Name: bcmf_poll_work + * + * Description: + * Perform periodic polling from the worker thread + * + * Parameters: + * arg - The argument passed when work_queue() as called. + * + * Returned Value: + * OK on success + * + * Assumptions: + * The network is locked. + * + ****************************************************************************/ + +static void bcmf_poll_work(FAR void *arg) +{ + // wlinfo("Entry\n"); + FAR struct bcmf_dev_s *priv = (FAR struct bcmf_dev_s *)arg; + + /* Lock the network and serialize driver operations if necessary. + * NOTE: Serialization is only required in the case where the driver work + * is performed on an LP worker thread and where more than one LP worker + * thread has been configured. + */ + + net_lock(); + + /* Perform the poll */ + + /* Check if there is room in the send another TX packet. We cannot perform + * the TX poll if he are unable to accept another packet for transmission. + */ + + if (bcmf_netdev_alloc_tx_frame(priv)) + { + goto exit_unlock; + } + + /* If so, update TCP timing states and poll the network for new XMIT data. + * Hmmm.. might be bug here. Does this mean if there is a transmit in + * progress, we will missing TCP time state updates? + */ + + priv->bc_dev.d_buf = priv->cur_tx_frame->data; + priv->bc_dev.d_len = 0; + (void)devif_timer(&priv->bc_dev, bcmf_txpoll); + + /* Setup the watchdog poll timer again */ + + (void)wd_start(priv->bc_txpoll, BCMF_WDDELAY, bcmf_poll_expiry, 1, + (wdparm_t)priv); +exit_unlock: + net_unlock(); +} + +/**************************************************************************** + * Name: bcmf_poll_expiry + * + * Description: + * Periodic timer handler. Called from the timer interrupt handler. + * + * Parameters: + * argc - The number of available arguments + * arg - The first argument + * + * Returned Value: + * None + * + * Assumptions: + * Global interrupts are disabled by the watchdog logic. + * + ****************************************************************************/ + +static void bcmf_poll_expiry(int argc, wdparm_t arg, ...) +{ + // wlinfo("Entry\n"); + FAR struct bcmf_dev_s *priv = (FAR struct bcmf_dev_s *)arg; + + /* Schedule to perform the interrupt processing on the worker thread. */ + + work_queue(BCMFWORK, &priv->bc_pollwork, bcmf_poll_work, priv, 0); +} + +/**************************************************************************** + * Name: bcmf_ifup + * + * Description: + * NuttX Callback: Bring up the Ethernet interface when an IP address is + * provided + * + * Parameters: + * dev - Reference to the NuttX driver state structure + * + * Returned Value: + * None + * + * Assumptions: + * + ****************************************************************************/ + +static int bcmf_ifup(FAR struct net_driver_s *dev) +{ + wlinfo("Entry\n"); + FAR struct bcmf_dev_s *priv = (FAR struct bcmf_dev_s *)dev->d_private; + +#ifdef CONFIG_NET_IPv4 + ninfo("Bringing up: %d.%d.%d.%d\n", + dev->d_ipaddr & 0xff, (dev->d_ipaddr >> 8) & 0xff, + (dev->d_ipaddr >> 16) & 0xff, dev->d_ipaddr >> 24); +#endif +#ifdef CONFIG_NET_IPv6 + ninfo("Bringing up: %04x:%04x:%04x:%04x:%04x:%04x:%04x:%04x\n", + dev->d_ipv6addr[0], dev->d_ipv6addr[1], dev->d_ipv6addr[2], + dev->d_ipv6addr[3], dev->d_ipv6addr[4], dev->d_ipv6addr[5], + dev->d_ipv6addr[6], dev->d_ipv6addr[7]); +#endif + + /* Initialize PHYs, the Ethernet interface, and setup up Ethernet interrupts */ + + /* Instantiate the MAC address from priv->bc_dev.d_mac.ether.ether_addr_octet */ + +#ifdef CONFIG_NET_ICMPv6 + /* Set up IPv6 multicast address filtering */ + + bcmf_ipv6multicast(priv); +#endif + + /* Set and activate a timer process */ + + (void)wd_start(priv->bc_txpoll, BCMF_WDDELAY, bcmf_poll_expiry, 1, + (wdparm_t)priv); + + /* Enable the hardware interrupt */ + + priv->bc_bifup = true; + + return OK; +} + +/**************************************************************************** + * Name: bcmf_ifdown + * + * Description: + * NuttX Callback: Stop the interface. + * + * Parameters: + * dev - Reference to the NuttX driver state structure + * + * Returned Value: + * None + * + * Assumptions: + * + ****************************************************************************/ + +static int bcmf_ifdown(FAR struct net_driver_s *dev) +{ + wlinfo("Entry\n"); + FAR struct bcmf_dev_s *priv = (FAR struct bcmf_dev_s *)dev->d_private; + irqstate_t flags; + + /* Disable the hardware interrupt */ + + flags = enter_critical_section(); +#warning Missing logic + + /* Cancel the TX poll timer */ + + wd_cancel(priv->bc_txpoll); + + /* Put the EMAC in its reset, non-operational state. This should be + * a known configuration that will guarantee the bcmf_ifup() always + * successfully brings the interface back up. + */ + + /* Mark the device "down" */ + + priv->bc_bifup = false; + leave_critical_section(flags); + return OK; +} + +/**************************************************************************** + * Name: bcmf_txavail_work + * + * Description: + * Perform an out-of-cycle poll on the worker thread. + * + * Parameters: + * arg - Reference to the NuttX driver state structure (cast to void*) + * + * Returned Value: + * None + * + * Assumptions: + * Called on the higher priority worker thread. + * + ****************************************************************************/ + +static void bcmf_txavail_work(FAR void *arg) +{ + FAR struct bcmf_dev_s *priv = (FAR struct bcmf_dev_s *)arg; + + // wlinfo("Entry\n"); + + /* Lock the network and serialize driver operations if necessary. + * NOTE: Serialization is only required in the case where the driver work + * is performed on an LP worker thread and where more than one LP worker + * thread has been configured. + */ + + net_lock(); + + /* Ignore the notification if the interface is not yet up */ + + if (priv->bc_bifup) + { + /* Check if there is room in the hardware to hold another outgoing packet. */ + + if (bcmf_netdev_alloc_tx_frame(priv)) + { + goto exit_unlock; + } + + /* If so, then poll the network for new XMIT data */ + + priv->bc_dev.d_buf = priv->cur_tx_frame->data; + priv->bc_dev.d_len = 0; + (void)devif_poll(&priv->bc_dev, bcmf_txpoll); + } + +exit_unlock: + net_unlock(); +} + +/**************************************************************************** + * Name: bcmf_txavail + * + * Description: + * Driver callback invoked when new TX data is available. This is a + * stimulus perform an out-of-cycle poll and, thereby, reduce the TX + * latency. + * + * Parameters: + * dev - Reference to the NuttX driver state structure + * + * Returned Value: + * None + * + * Assumptions: + * Called in normal user mode + * + ****************************************************************************/ + +static int bcmf_txavail(FAR struct net_driver_s *dev) +{ + FAR struct bcmf_dev_s *priv = (FAR struct bcmf_dev_s *)dev->d_private; + + /* Is our single work structure available? It may not be if there are + * pending interrupt actions and we will have to ignore the Tx + * availability action. + */ + + if (work_available(&priv->bc_pollwork)) + { + /* Schedule to serialize the poll on the worker thread. */ + + work_queue(BCMFWORK, &priv->bc_pollwork, bcmf_txavail_work, priv, 0); + } + + return OK; +} + +/**************************************************************************** + * Name: bcmf_addmac + * + * Description: + * NuttX Callback: Add the specified MAC address to the hardware multicast + * address filtering + * + * Parameters: + * dev - Reference to the NuttX driver state structure + * mac - The MAC address to be added + * + * Returned Value: + * None + * + * Assumptions: + * + ****************************************************************************/ + +#if defined(CONFIG_NET_IGMP) || defined(CONFIG_NET_ICMPv6) +static int bcmf_addmac(FAR struct net_driver_s *dev, FAR const uint8_t *mac) +{ + wlinfo("Entry\n"); + FAR struct bcmf_dev_s *priv = (FAR struct bcmf_dev_s *)dev->d_private; + + /* Add the MAC address to the hardware multicast routing table */ + + return OK; +} +#endif + +/**************************************************************************** + * Name: bcmf_rmmac + * + * Description: + * NuttX Callback: Remove the specified MAC address from the hardware multicast + * address filtering + * + * Parameters: + * dev - Reference to the NuttX driver state structure + * mac - The MAC address to be removed + * + * Returned Value: + * None + * + * Assumptions: + * + ****************************************************************************/ + +#ifdef CONFIG_NET_IGMP +static int bcmf_rmmac(FAR struct net_driver_s *dev, FAR const uint8_t *mac) +{ + wlinfo("Entry\n"); + FAR struct bcmf_dev_s *priv = (FAR struct bcmf_dev_s *)dev->d_private; + + /* Add the MAC address to the hardware multicast routing table */ + + return OK; +} +#endif + +/**************************************************************************** + * Name: bcmf_ipv6multicast + * + * Description: + * Configure the IPv6 multicast MAC address. + * + * Parameters: + * priv - A reference to the private driver state structure + * + * Returned Value: + * OK on success; Negated errno on failure. + * + * Assumptions: + * + ****************************************************************************/ + +#ifdef CONFIG_NET_ICMPv6 +static void bcmf_ipv6multicast(FAR struct bcmf_dev_s *priv) +{ + wlinfo("Entry\n"); + FAR struct net_driver_s *dev; + uint16_t tmp16; + uint8_t mac[6]; + + /* For ICMPv6, we need to add the IPv6 multicast address + * + * For IPv6 multicast addresses, the Ethernet MAC is derived by + * the four low-order octets OR'ed with the MAC 33:33:00:00:00:00, + * so for example the IPv6 address FF02:DEAD:BEEF::1:3 would map + * to the Ethernet MAC address 33:33:00:01:00:03. + * + * NOTES: This appears correct for the ICMPv6 Router Solicitation + * Message, but the ICMPv6 Neighbor Solicitation message seems to + * use 33:33:ff:01:00:03. + */ + + mac[0] = 0x33; + mac[1] = 0x33; + + dev = &priv->dev; + tmp16 = dev->d_ipv6addr[6]; + mac[2] = 0xff; + mac[3] = tmp16 >> 8; + + tmp16 = dev->d_ipv6addr[7]; + mac[4] = tmp16 & 0xff; + mac[5] = tmp16 >> 8; + + ninfo("IPv6 Multicast: %02x:%02x:%02x:%02x:%02x:%02x\n", + mac[0], mac[1], mac[2], mac[3], mac[4], mac[5]); + + (void)bcmf_addmac(dev, mac); + +#ifdef CONFIG_NET_ICMPv6_AUTOCONF + /* Add the IPv6 all link-local nodes Ethernet address. This is the + * address that we expect to receive ICMPv6 Router Advertisement + * packets. + */ + + (void)bcmf_addmac(dev, g_ipv6_ethallnodes.ether_addr_octet); + +#endif /* CONFIG_NET_ICMPv6_AUTOCONF */ + +#ifdef CONFIG_NET_ICMPv6_ROUTER + /* Add the IPv6 all link-local routers Ethernet address. This is the + * address that we expect to receive ICMPv6 Router Solicitation + * packets. + */ + + (void)bcmf_addmac(dev, g_ipv6_ethallrouters.ether_addr_octet); + +#endif /* CONFIG_NET_ICMPv6_ROUTER */ +} +#endif /* CONFIG_NET_ICMPv6 */ + +/**************************************************************************** + * Name: bcmf_ioctl + * + * Description: + * Handle network IOCTL commands directed to this device. + * + * Parameters: + * dev - Reference to the NuttX driver state structure + * cmd - The IOCTL command + * arg - The argument for the IOCTL command + * + * Returned Value: + * OK on success; Negated errno on failure. + * + * Assumptions: + * + ****************************************************************************/ + +#ifdef CONFIG_NETDEV_IOCTL +static int bcmf_ioctl(FAR struct net_driver_s *dev, int cmd, + unsigned long arg) +{ + int ret; + FAR struct bcmf_dev_s *priv = (FAR struct bcmf_dev_s *)dev->d_private; + + /* Decode and dispatch the driver-specific IOCTL command */ + + switch (cmd) + { + case SIOCSIWSCAN: + ret = bcmf_wl_start_scan(priv, (struct ifreq *)arg); + break; + + case SIOCGIWSCAN: + ret = bcmf_wl_get_scan_results(priv, (struct ifreq *)arg); + break; + + case SIOCSIFHWADDR: /* Set device MAC address */ + ret = bcmf_wl_set_mac_address(priv, (struct ifreq *)arg); + break; + + case SIOCSIWAUTH: + ret = bcmf_wl_set_auth_param(priv, (struct iwreq *)arg); + break; + + case SIOCSIWENCODEEXT: + ret = bcmf_wl_set_encode_ext(priv, (struct iwreq *)arg); + break; + + case SIOCSIWFREQ: /* Set channel/frequency (Hz) */ + wlwarn("WARNING: SIOCSIWFREQ not implemented\n"); + ret = -ENOSYS; + break; + + case SIOCGIWFREQ: /* Get channel/frequency (Hz) */ + wlwarn("WARNING: SIOCGIWFREQ not implemented\n"); + ret = -ENOSYS; + break; + + case SIOCSIWMODE: /* Set operation mode */ + ret = bcmf_wl_set_mode(priv, (struct iwreq *)arg); + break; + + case SIOCGIWMODE: /* Get operation mode */ + wlwarn("WARNING: SIOCGIWMODE not implemented\n"); + ret = -ENOSYS; + break; + + case SIOCSIWAP: /* Set access point MAC addresses */ + wlwarn("WARNING: SIOCSIWAP not implemented\n"); + ret = -ENOSYS; + break; + + case SIOCGIWAP: /* Get access point MAC addresses */ + wlwarn("WARNING: SIOCGIWAP not implemented\n"); + ret = -ENOSYS; + break; + + case SIOCSIWESSID: /* Set ESSID (network name) */ + ret = bcmf_wl_set_ssid(priv, (struct iwreq *)arg); + break; + + case SIOCGIWESSID: /* Get ESSID */ + wlwarn("WARNING: SIOCGIWESSID not implemented\n"); + ret = -ENOSYS; + break; + + case SIOCSIWRATE: /* Set default bit rate (bps) */ + wlwarn("WARNING: SIOCSIWRATE not implemented\n"); + ret = -ENOSYS; + break; + + case SIOCGIWRATE: /* Get default bit rate (bps) */ + wlwarn("WARNING: SIOCGIWRATE not implemented\n"); + ret = -ENOSYS; + break; + + case SIOCSIWTXPOW: /* Set transmit power (dBm) */ + wlwarn("WARNING: SIOCSIWTXPOW not implemented\n"); + ret = -ENOSYS; + break; + + case SIOCGIWTXPOW: /* Get transmit power (dBm) */ + wlwarn("WARNING: SIOCGIWTXPOW not implemented\n"); + ret = -ENOSYS; + break; + + default: + nerr("ERROR: Unrecognized IOCTL command: %d\n", cmd); + ret = -ENOTTY; /* Special return value for this case */ + break; + } + + return ret; +} +#endif + +/**************************************************************************** + * Public Functions + ****************************************************************************/ + +/**************************************************************************** + * Name: bcmf_netdev_register + * + * Description: + * Register a network driver and set Broadcom chip in a proper state + * + * Parameters: + * priv - Broadcom driver device + * + * Returned Value: + * OK on success; Negated errno on failure. + * + * Assumptions: + * + ****************************************************************************/ + +int bcmf_netdev_register(FAR struct bcmf_dev_s *priv) +{ + uint32_t out_len; + + /* Initialize network driver structure */ + + memset(&priv->bc_dev, 0, sizeof(priv->bc_dev)); + priv->bc_dev.d_ifup = bcmf_ifup; /* I/F up (new IP address) callback */ + priv->bc_dev.d_ifdown = bcmf_ifdown; /* I/F down callback */ + priv->bc_dev.d_txavail = bcmf_txavail; /* New TX data callback */ +#ifdef CONFIG_NET_IGMP + priv->bc_dev.d_addmac = bcmf_addmac; /* Add multicast MAC address */ + priv->bc_dev.d_rmmac = bcmf_rmmac; /* Remove multicast MAC address */ +#endif +#ifdef CONFIG_NETDEV_IOCTL + priv->bc_dev.d_ioctl = bcmf_ioctl; /* Handle network IOCTL commands */ +#endif + priv->bc_dev.d_private = (FAR void *)priv; /* Used to recover private state from dev */ + + /* Create a watchdog for timing polling */ + + priv->bc_txpoll = wd_create(); /* Create periodic poll timer */ + + DEBUGASSERT(priv->bc_txpoll != NULL && priv->bc_txtimeout != NULL); + + /* Initialize network stack interface buffer */ + + priv->cur_tx_frame = NULL; + priv->bc_dev.d_buf = NULL; + + /* Put the interface in the down state. This usually amounts to resetting + * the device and/or calling bcmf_ifdown(). + */ + + /* Enable chip */ + + if (bcmf_wl_enable(priv, true) != OK) + { + return -EIO; + } + + /* Query MAC address */ + + out_len = ETHER_ADDR_LEN; + if (bcmf_cdc_iovar_request(priv, CHIP_STA_INTERFACE, false, + IOVAR_STR_CUR_ETHERADDR, + priv->bc_dev.d_mac.ether.ether_addr_octet, + &out_len) != OK) + { + return -EIO; + } + + /* Register the device with the OS so that socket IOCTLs can be performed */ + + (void)netdev_register(&priv->bc_dev, NET_LL_IEEE80211); + return OK; +} + +#endif /* CONFIG_NET && CONFIG_IEEE80211_BROADCOM_FULLMAC */ diff --git a/drivers/wireless/ieee80211/bcmf_netdev.h b/drivers/wireless/ieee80211/bcmf_netdev.h new file mode 100644 index 00000000000..c062013a423 --- /dev/null +++ b/drivers/wireless/ieee80211/bcmf_netdev.h @@ -0,0 +1,47 @@ +/**************************************************************************** + * drivers/wireless/ieee80211/bcmf_netdev.h + * + * Copyright (C) 2017 Gregory Nutt. All rights reserved. + * Author: Simon Piriou + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + +#ifndef __DRIVERS_WIRELESS_IEEE80211_BCMF_NETDEV_H +#define __DRIVERS_WIRELESS_IEEE80211_BCMF_NETDEV_H + +#include "bcmf_driver.h" + +int bcmf_netdev_register(FAR struct bcmf_dev_s *priv); + +void bcmf_netdev_notify_rx(FAR struct bcmf_dev_s *priv); + +void bcmf_netdev_notify_tx_done(FAR struct bcmf_dev_s *priv); + +#endif /* __DRIVERS_WIRELESS_IEEE80211_BCMF_NETDEV_H */ diff --git a/drivers/wireless/ieee80211/bcmf_sdio.c b/drivers/wireless/ieee80211/bcmf_sdio.c index b1ea523ba25..dcef6fc66e9 100644 --- a/drivers/wireless/ieee80211/bcmf_sdio.c +++ b/drivers/wireless/ieee80211/bcmf_sdio.c @@ -45,115 +45,216 @@ #include #include #include +#include +#include +#include #include -#include #include +#include +#include +#include #include #include +#include "bcmf_sdio.h" +#include "bcmf_core.h" +#include "bcmf_sdpcm.h" +#include "bcmf_utils.h" + +#include "bcmf_sdio_core.h" +#include "bcmf_sdio_regs.h" + +/* Supported chip configurations */ +#ifdef CONFIG_IEEE80211_BROADCOM_BCM43362 + extern const struct bcmf_sdio_chip bcmf_43362_config_sdio; +#endif + /**************************************************************************** * Pre-processor Definitions ****************************************************************************/ #define BCMF_DEVICE_RESET_DELAY_MS 10 #define BCMF_DEVICE_START_DELAY_MS 10 -#define BCMF_DEVICE_IDLE_DELAY_MS 50 +#define BCMF_CLOCK_SETUP_DELAY_MS 500 + +#define BCMF_THREAD_NAME "bcmf" +#define BCMF_THREAD_STACK_SIZE 2048 + +#define BCMF_WAITDOG_TIMEOUT_TICK (5*CLOCKS_PER_SEC) /**************************************************************************** * Private Types ****************************************************************************/ -/* This structure is contains the unique state of the Broadcom FullMAC driver */ - -struct bcmf_dev_s -{ - FAR struct sdio_dev_s *sdio_dev; /* The SDIO device bound to this instance */ - int minor; /* Device minor number */ -}; - /**************************************************************************** * Private Function Prototypes ****************************************************************************/ -static int bcmf_sendcmdpoll(FAR struct bcmf_dev_s *priv, - uint32_t cmd, uint32_t arg); +static int bcmf_probe(FAR struct bcmf_sdio_dev_s *sbus); +static int bcmf_hwinitialize(FAR struct bcmf_sdio_dev_s *sbus); +static void bcmf_hwuninitialize(FAR struct bcmf_sdio_dev_s *sbus); +static int bcmf_chipinitialize(FAR struct bcmf_sdio_dev_s *sbus); -static int bcmf_probe(FAR struct bcmf_dev_s *priv); -static int bcmf_hwinitialize(FAR struct bcmf_dev_s *priv); -static void bcmf_hwuninitialize(FAR struct bcmf_dev_s *priv); +static int bcmf_oob_irq(int irq, FAR void *context, FAR void *arg); + +static int bcmf_sdio_bus_sleep(FAR struct bcmf_sdio_dev_s *sbus, bool sleep); + +static void bcmf_sdio_waitdog_timeout(int argc, wdparm_t arg1, ...); +static int bcmf_sdio_thread(int argc, char **argv); + +static int bcmf_sdio_find_block_size(unsigned int size); /**************************************************************************** * Private Data ****************************************************************************/ +/* FIXME remove */ +FAR struct bcmf_dev_s *g_sdio_priv; + +/* Buffer pool for SDIO bus interface + * This pool is shared between all driver devices + */ + +static struct bcmf_sdio_frame g_pktframes[BCMF_PKT_POOL_SIZE]; + +// TODO free_queue should be static + /**************************************************************************** * Private Functions ****************************************************************************/ -/**************************************************************************** - * Name: bcmf_sendcmdpoll - ****************************************************************************/ +int bcmf_oob_irq(int irq, FAR void *context, FAR void *arg) +{ + FAR struct bcmf_sdio_dev_s *sbus = (struct bcmf_sdio_dev_s *)arg; -int bcmf_sendcmdpoll(FAR struct bcmf_dev_s *priv, uint32_t cmd, uint32_t arg) + if (sbus->ready) + { + /* Signal bmcf thread */ + + sbus->irq_pending = true; + + sem_post(&sbus->thread_signal); + } + return OK; +} + +int bcmf_sdio_bus_sleep(FAR struct bcmf_sdio_dev_s *sbus, bool sleep) { int ret; + int loops; + uint8_t value; - /* Send the command */ - - ret = SDIO_SENDCMD(priv->sdio_dev, cmd, arg); - if (ret == OK) + if (sbus->sleeping == sleep) { - /* Then poll-wait until the response is available */ - - ret = SDIO_WAITRESPONSE(priv->sdio_dev, cmd); - if (ret != OK) - { - _err("ERROR: Wait for response to cmd: %08x failed: %d\n", - cmd, ret); - } + return OK; } - return ret; + if (sleep) + { + sbus->sleeping = true; + return bcmf_write_reg(sbus, 1, SBSDIO_FUNC1_CHIPCLKCSR, 0); + } + else + { + /* Request HT Avail */ + + ret = bcmf_write_reg(sbus, 1, SBSDIO_FUNC1_CHIPCLKCSR, + SBSDIO_HT_AVAIL_REQ | SBSDIO_FORCE_HT); + if (ret != OK) + { + wlerr("HT Avail request failed %d\n", ret); + return ret; + } + + /* Wait for High Troughput clock */ + + loops = 20; + while (--loops > 0) + { + up_mdelay(1); + ret = bcmf_read_reg(sbus, 1, SBSDIO_FUNC1_CHIPCLKCSR, &value); + + if (ret != OK) + { + return ret; + } + + if (value & SBSDIO_HT_AVAIL) + { + /* High Throughput clock is ready */ + break; + } + } + + if (loops <= 0) + { + wlerr("HT clock not ready\n"); + return -ETIMEDOUT; + } + + sbus->sleeping = false; + } + + return OK; } /**************************************************************************** * Name: bcmf_probe ****************************************************************************/ -int bcmf_probe(FAR struct bcmf_dev_s *priv) +int bcmf_probe(FAR struct bcmf_sdio_dev_s *sbus) { int ret; - uint32_t data = 0; - /* Set device state from reset to idle */ - - bcmf_sendcmdpoll(priv, MMCSD_CMD0, 0); - up_mdelay(BCMF_DEVICE_START_DELAY_MS); - - /* Send IO_SEND_OP_COND command */ - - ret = bcmf_sendcmdpoll(priv, SDIO_CMD5, 0); + /* Probe sdio card compatible device */ + ret = sdio_probe(sbus->sdio_dev); if (ret != OK) { goto exit_error; } - /* Receive R4 response */ - - ret = SDIO_RECVR4(priv->sdio_dev, SDIO_CMD5, &data); + /* Set FN0 / FN1 / FN2 default block size */ + ret = sdio_set_blocksize(sbus->sdio_dev, 0, 64); if (ret != OK) { goto exit_error; } - /* Broadcom chips have 2 additional functions and wide voltage range */ + ret = sdio_set_blocksize(sbus->sdio_dev, 1, 64); + if (ret != OK) + { + goto exit_error; + } - if ((((data >> 28) & 7) != 2) || - (((data >> 8) & 0xff80) != 0xff80)) + ret = sdio_set_blocksize(sbus->sdio_dev, 2, 64); + if (ret != OK) + { + goto exit_error; + } + + /* Enable device interrupts for FN0, FN1 and FN2 */ + + ret = bcmf_write_reg(sbus, 0, SDIO_CCCR_INTEN, + (1 << 0) | (1 << 1) | (1 << 2)); + if (ret != OK) + { + goto exit_error; + } + + /* Default device clock speed is up to 25 Mhz + * We could set EHS bit to operate at a clock rate up to 50 Mhz */ + + SDIO_CLOCK(sbus->sdio_dev, CLOCK_SD_TRANSFER_4BIT); + up_mdelay(BCMF_CLOCK_SETUP_DELAY_MS); + + /* Enable bus FN1 */ + + ret = sdio_enable_function(sbus->sdio_dev, 1); + if (ret != OK) { goto exit_error; } @@ -162,34 +263,176 @@ int bcmf_probe(FAR struct bcmf_dev_s *priv) exit_error: - _err("ERROR: failed to probe device %d\n", priv->minor); + wlerr("ERROR: failed to probe device %d\n", sbus->minor); return ret; } +/**************************************************************************** + * Name: bcmf_businitialize + ****************************************************************************/ + +int bcmf_businitialize(FAR struct bcmf_sdio_dev_s *sbus) +{ + int ret; + int loops; + uint8_t value; + + /* Send Active Low-Power clock request */ + + ret = bcmf_write_reg(sbus, 1, SBSDIO_FUNC1_CHIPCLKCSR, + SBSDIO_FORCE_HW_CLKREQ_OFF | + SBSDIO_ALP_AVAIL_REQ | + SBSDIO_FORCE_ALP); + + if (ret != OK) + { + return ret; + } + + loops = 10; + while (--loops > 0) + { + up_mdelay(10); + ret = bcmf_read_reg(sbus, 1, SBSDIO_FUNC1_CHIPCLKCSR, &value); + + if (ret != OK) + { + return ret; + } + + if (value & SBSDIO_ALP_AVAIL) + { + /* Active Low-Power clock is ready */ + break; + } + } + + if (loops <= 0) + { + wlerr("failed to enable ALP\n"); + return -ETIMEDOUT; + } + + /* Clear Active Low-Power clock request */ + + ret = bcmf_write_reg(sbus, 1, SBSDIO_FUNC1_CHIPCLKCSR, 0); + if (ret != OK) + { + return ret; + } + + /* Disable pull-ups on SDIO cmd, d0-2 lines */ + + ret = bcmf_write_reg(sbus, 1, SBSDIO_FUNC1_SDIOPULLUP, 0); + if (ret != OK) + { + return ret; + } + + /* Do chip specific initialization */ + + ret = bcmf_chipinitialize(sbus); + if (ret != OK) + { + return ret; + } + + /* Upload firmware */ + + ret = bcmf_core_upload_firmware(sbus); + if (ret != OK) + { + return ret; + } + + /* Enable FN2 (frame transfers) */ + + ret = sdio_enable_function(sbus->sdio_dev, 2); + if (ret != OK) + { + return ret; + } + + return OK; +} + +int bcmf_bus_setup_interrupts(FAR struct bcmf_sdio_dev_s *sbus) +{ + int ret; + + /* Configure gpio interrupt pin */ + + bcmf_board_setup_oob_irq(sbus->minor, bcmf_oob_irq, (void *)sbus); + + /* Enable function 2 interrupt */ + + ret = sdio_enable_interrupt(sbus->sdio_dev, 0); + if (ret != OK) + { + return ret; + } + ret = sdio_enable_interrupt(sbus->sdio_dev, 2); + if (ret != OK) + { + return ret; + } + + /* Redirect, configure and enable io for out-of-band interrupt signal */ + + ret = bcmf_write_reg(sbus, 0, SDIO_CCCR_BRCM_SEPINT, + SDIO_SEPINT_MASK | SDIO_SEPINT_OE | SDIO_SEPINT_ACT_HI); + if (ret != OK) + { + return ret; + } + + /* Wake up chip to be sure function 2 is running */ + + ret = bcmf_sdio_bus_sleep(sbus, false); + if (ret != OK) + { + return ret; + } + + /* FN2 successfully enabled, set core and enable interrupts */ + + bcmf_write_sbregw(sbus, + CORE_BUS_REG(sbus->chip->core_base[SDIOD_CORE_ID], + hostintmask), I_HMB_SW_MASK); + + bcmf_write_sbregb(sbus, + CORE_BUS_REG(sbus->chip->core_base[SDIOD_CORE_ID], + funcintmask), 2); + + bcmf_write_reg(sbus, 1, SBSDIO_WATERMARK, 8); + + return OK; +} + /**************************************************************************** * Name: bcmf_hwinitialize ****************************************************************************/ -int bcmf_hwinitialize(FAR struct bcmf_dev_s *priv) +int bcmf_hwinitialize(FAR struct bcmf_sdio_dev_s *sbus) { /* Attach and prepare SDIO interrupts */ - SDIO_ATTACH(priv->sdio_dev); + SDIO_ATTACH(sbus->sdio_dev); /* Set ID mode clocking (<400KHz) */ - SDIO_CLOCK(priv->sdio_dev, CLOCK_IDMODE); + SDIO_CLOCK(sbus->sdio_dev, CLOCK_IDMODE); /* Configure hardware */ - bcmf_board_initialize(priv->minor); + bcmf_board_initialize(sbus->minor); /* Reset and power device */ - bcmf_board_reset(priv->minor, true); - bcmf_board_power(priv->minor, true); + bcmf_board_reset(sbus->minor, true); + bcmf_board_power(sbus->minor, true); up_mdelay(BCMF_DEVICE_RESET_DELAY_MS); - bcmf_board_reset(priv->minor, false); + bcmf_board_reset(sbus->minor, false); /* Wait for device to start */ @@ -202,12 +445,30 @@ int bcmf_hwinitialize(FAR struct bcmf_dev_s *priv) * Name: bcmf_hwuninitialize ****************************************************************************/ -void bcmf_hwuninitialize(FAR struct bcmf_dev_s *priv) +void bcmf_hwuninitialize(FAR struct bcmf_sdio_dev_s *sbus) { /* Shutdown device */ - bcmf_board_power(priv->minor, false); - bcmf_board_reset(priv->minor, true); + bcmf_board_power(sbus->minor, false); + bcmf_board_reset(sbus->minor, true); +} + +int bcmf_sdio_find_block_size(unsigned int size) +{ + int ret = 0; + int size_copy = size; + while (size_copy) + { + size_copy >>= 1; + ret++; + } + + if (size & (size-1)) + { + return 1 << ret; + } + + return 1 << (ret - 1); } /**************************************************************************** @@ -215,57 +476,429 @@ void bcmf_hwuninitialize(FAR struct bcmf_dev_s *priv) ****************************************************************************/ /**************************************************************************** - * Name: bcmf_sdio_initialize + * Name: bcmf_transfer_bytes ****************************************************************************/ -int bcmf_sdio_initialize(int minor, FAR struct sdio_dev_s *dev) +int bcmf_transfer_bytes(FAR struct bcmf_sdio_dev_s *sbus, bool write, + uint8_t function, uint32_t address, + uint8_t *buf, unsigned int len) +{ + unsigned int blocklen; + unsigned int nblocks; + + /* Use rw_io_direct method if len is 1 */ + + if (len == 0) + { + return -EINVAL; + } + + if (len == 1) + { + if (write) + { + return sdio_io_rw_direct(sbus->sdio_dev, write, + function, address, *buf, NULL); + } + return sdio_io_rw_direct(sbus->sdio_dev, write, + function, address, 0, buf); + } + + /* Find best block settings for transfer */ + + if (len >= 64) + { + /* Use block mode */ + + blocklen = 64; + nblocks = (len+63) / 64; + } + else + { + /* Use byte mode */ + + blocklen = bcmf_sdio_find_block_size(len); + nblocks = 0; + } + + return sdio_io_rw_extended(sbus->sdio_dev, write, + function, address, true, buf, blocklen, nblocks); +} + +/**************************************************************************** + * Name: bcmf_read_reg + ****************************************************************************/ + +int bcmf_read_reg(FAR struct bcmf_sdio_dev_s *sbus, uint8_t function, + uint32_t address, uint8_t *reg) +{ + *reg = 0; + return bcmf_transfer_bytes(sbus, false, function, address, reg, 1); +} + +/**************************************************************************** + * Name: bcmf_write_reg + ****************************************************************************/ + +int bcmf_write_reg(FAR struct bcmf_sdio_dev_s *sbus, uint8_t function, + uint32_t address, uint8_t reg) +{ + return bcmf_transfer_bytes(sbus, true, function, address, ®, 1); +} + +/**************************************************************************** + * Name: bcmf_bus_sdio_initialize + ****************************************************************************/ + +int bcmf_bus_sdio_initialize(FAR struct bcmf_dev_s *priv, + int minor, FAR struct sdio_dev_s *dev) { - FAR struct bcmf_dev_s *priv; int ret; + FAR struct bcmf_sdio_dev_s *sbus; - _info("minor: %d\n", minor); + /* Allocate sdio bus structure */ - /* Allocate a bcmf device structure */ + sbus = (FAR struct bcmf_sdio_dev_s *)kmm_malloc(sizeof(*sbus)); - priv = (FAR struct bcmf_dev_s *)kmm_malloc(sizeof(*priv)); - - if (!priv) + if (!sbus) { return -ENOMEM; } - /* Initialize bcmf device structure */ + /* Initialize sdio bus device structure */ - memset(priv, 0, sizeof(*priv)); - priv->sdio_dev = dev; - priv->minor = minor; + memset(sbus, 0, sizeof(*sbus)); + sbus->sdio_dev = dev; + sbus->minor = minor; + sbus->ready = false; + sbus->sleeping = true; + + sbus->bus.txframe = bcmf_sdpcm_queue_frame; + sbus->bus.rxframe = bcmf_sdpcm_get_rx_frame; + sbus->bus.allocate_frame = bcmf_sdpcm_alloc_frame; + sbus->bus.free_frame = bcmf_sdpcm_free_frame; + sbus->bus.stop = NULL; // TODO + + /* Init transmit frames queue */ + + if ((ret = sem_init(&sbus->queue_mutex, 0, 1)) != OK) + { + goto exit_free_bus; + } + + sq_init(&sbus->tx_queue); + sq_init(&sbus->rx_queue); + sq_init(&sbus->free_queue); + + /* Setup free buffer list */ + + // FIXME this should be static to driver + for (ret = 0; ret < BCMF_PKT_POOL_SIZE; ret++) + { + bcmf_dqueue_push(&sbus->free_queue, &g_pktframes[ret].list_entry); + } + + /* Init thread semaphore */ + + if ((ret = sem_init(&sbus->thread_signal, 0, 0)) != OK) + { + goto exit_free_bus; + } + + if ((ret = sem_setprotocol(&sbus->thread_signal, SEM_PRIO_NONE)) != OK) + { + goto exit_free_bus; + } + + /* Init thread waitdog */ + + sbus->waitdog = wd_create(); + if (!sbus->waitdog) + { + ret = -ENOMEM; + goto exit_free_bus; + } /* Initialize device hardware */ - ret = bcmf_hwinitialize(priv); + ret = bcmf_hwinitialize(sbus); if (ret != OK) { - goto exit_free_priv; + goto exit_free_waitdog; } /* Probe device */ - ret = bcmf_probe(priv); + ret = bcmf_probe(sbus); if (ret != OK) { goto exit_uninit_hw; } - /* TODO Create a wlan device name and register network driver here */ + /* Initialize device bus */ + + ret = bcmf_businitialize(sbus); + + if (ret != OK) + { + goto exit_uninit_hw; + } + + up_mdelay(100); + + sbus->ready = true; + + ret = bcmf_bus_setup_interrupts(sbus); + if (ret != OK) + { + goto exit_uninit_hw; + } + + /* FIXME global variable for now */ + g_sdio_priv = priv; + + /* Register sdio bus */ + + priv->bus = &sbus->bus; + + /* Start the waitdog timer */ + + wd_start(sbus->waitdog, BCMF_WAITDOG_TIMEOUT_TICK, bcmf_sdio_waitdog_timeout, + (wdparm_t)priv); + + /* Spawn bcmf daemon thread */ + + ret = kernel_thread(BCMF_THREAD_NAME, SCHED_PRIORITY_MAX, + BCMF_THREAD_STACK_SIZE, bcmf_sdio_thread, + (FAR char * const *)NULL); + + if (ret <= 0) + { + wlerr("Cannot spawn bcmf thread\n"); + ret = -EBADE; + goto exit_uninit_hw; + } + + sbus->thread_id = ret; + + /* sdio bus is up and running */ return OK; exit_uninit_hw: - bcmf_hwuninitialize(priv); - -exit_free_priv: - kmm_free(priv); + bcmf_hwuninitialize(sbus); +exit_free_waitdog: + wd_delete(sbus->waitdog); +exit_free_bus: + kmm_free(sbus); + priv->bus = NULL; return ret; } + +int bcmf_chipinitialize(FAR struct bcmf_sdio_dev_s *sbus) +{ + int ret; + uint32_t value = 0; + + ret = bcmf_read_sbregw(sbus, SI_ENUM_BASE, &value); + if (ret != OK) + { + return ret; + } + + int chipid = value & 0xffff; + switch (chipid) + { +#ifdef CONFIG_IEEE80211_BROADCOM_BCM43362 + case SDIO_DEVICE_ID_BROADCOM_43362: + wlinfo("bcm43362 chip detected\n"); + sbus->chip = (struct bcmf_sdio_chip *)&bcmf_43362_config_sdio; + break; +#endif + default: + wlerr("chip 0x%x is not supported\n", chipid); + return -ENODEV; + } + return OK; +} + +void bcmf_sdio_waitdog_timeout(int argc, wdparm_t arg1, ...) +{ + FAR struct bcmf_dev_s *priv = (FAR struct bcmf_dev_s *)arg1; + FAR struct bcmf_sdio_dev_s *sbus = (FAR struct bcmf_sdio_dev_s *)priv->bus; + + /* Notify bcmf thread */ + + wlinfo("Notify bcmf thread\n"); + sem_post(&sbus->thread_signal); +} + +int bcmf_sdio_thread(int argc, char **argv) +{ + int ret; + FAR struct bcmf_dev_s *priv = g_sdio_priv; + FAR struct bcmf_sdio_dev_s *sbus = (FAR struct bcmf_sdio_dev_s *)priv->bus; + + wlinfo("Enter\n"); + + /* FIXME wait for the chip to be ready to receive commands */ + + up_mdelay(50); + + while (sbus->ready) + { + /* Wait for event (device interrupt, user request or waitdog timer) */ + + ret = sem_wait(&sbus->thread_signal); + if (ret != OK) + { + wlerr("Error while waiting for semaphore\n"); + break; + } + + /* Restart the waitdog timer */ + + wd_start(sbus->waitdog, BCMF_WAITDOG_TIMEOUT_TICK, + bcmf_sdio_waitdog_timeout, (wdparm_t)priv); + + /* Wake up device */ + + bcmf_sdio_bus_sleep(sbus, false); + + if (sbus->irq_pending) + { + /* Woken up by interrupt, read device status */ + + sbus->irq_pending = false; + + bcmf_read_sbregw(sbus, + CORE_BUS_REG(sbus->chip->core_base[SDIOD_CORE_ID], + intstatus), &sbus->intstatus); + + /* Clear interrupts */ + + bcmf_write_sbregw(sbus, + CORE_BUS_REG(sbus->chip->core_base[SDIOD_CORE_ID], + intstatus), sbus->intstatus); + // wlinfo("intstatus %x\n", sbus->intstatus); + } + + /* On frame indication, read available frames */ + + if (sbus->intstatus & I_HMB_FRAME_IND) + { + // wlinfo("Frames available\n"); + + do + { + ret = bcmf_sdpcm_readframe(priv); + } + while (ret == OK); + + if (ret == -ENODATA) + { + /* All frames processed */ + + sbus->intstatus &= ~I_HMB_FRAME_IND; + } + } + + /* Send all queued frames */ + + do + { + ret = bcmf_sdpcm_sendframe(priv); + } + while (ret == OK); + + /* Check if RX frames are available */ + + if (sbus->intstatus & I_HMB_FRAME_IND) + { + /* Try again */ + wlinfo("Try read again\n"); + continue; + } + + /* If we're done for now, turn off clock request. */ + + // TODO add wakelock + // bcmf_sdio_bus_sleep(sbus, true); + } + + wlinfo("Exit\n"); + + return 0; +} + +struct bcmf_sdio_frame *bcmf_sdio_allocate_frame(FAR struct bcmf_dev_s *priv, + bool block, bool tx) +{ + FAR struct bcmf_sdio_dev_s *sbus = (FAR struct bcmf_sdio_dev_s *)priv->bus; + struct bcmf_sdio_frame *sframe; + dq_entry_t *entry = NULL; + + while (1) + { + if (sem_wait(&sbus->queue_mutex)) + { + PANIC(); + } + + // if (!tx || sbus->tx_queue_count < BCMF_PKT_POOL_SIZE-1) + { + if ((entry = bcmf_dqueue_pop_tail(&sbus->free_queue)) != NULL) + { + if (tx) + { + sbus->tx_queue_count += 1; + } + + sem_post(&sbus->queue_mutex); + break; + } + } + + sem_post(&sbus->queue_mutex); + + if (block) + { + // TODO use signaling semaphore + wlinfo("alloc failed %d\n", tx); + up_mdelay(100); + continue; + } + wlinfo("No avail buffer\n"); + return NULL; + } + + sframe = container_of(entry, struct bcmf_sdio_frame, list_entry); + + sframe->header.len = HEADER_SIZE + MAX_NET_DEV_MTU; + sframe->header.base = sframe->data; + sframe->header.data = sframe->data; + sframe->tx = tx; + return sframe; +} + +void bcmf_sdio_free_frame(FAR struct bcmf_dev_s *priv, + struct bcmf_sdio_frame *sframe) +{ + // wlinfo("free %p\n", sframe); + FAR struct bcmf_sdio_dev_s *sbus = (FAR struct bcmf_sdio_dev_s *)priv->bus; + + if (sem_wait(&sbus->queue_mutex)) + { + PANIC(); + } + + bcmf_dqueue_push(&sbus->free_queue, &sframe->list_entry); + + if (sframe->tx) + { + sbus->tx_queue_count -= 1; + } + sem_post(&sbus->queue_mutex); +} diff --git a/drivers/wireless/ieee80211/bcmf_sdio.h b/drivers/wireless/ieee80211/bcmf_sdio.h new file mode 100644 index 00000000000..692b1a92516 --- /dev/null +++ b/drivers/wireless/ieee80211/bcmf_sdio.h @@ -0,0 +1,147 @@ +/**************************************************************************** + * drivers/wireless/ieee80211/bcmf_sdio.h + * + * Copyright (C) 2017 Gregory Nutt. All rights reserved. + * Author: Simon Piriou + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + +/**************************************************************************** + * Included Files + ****************************************************************************/ + +#ifndef __DRIVERS_WIRELESS_IEEE80211_BCMF_SDIO_H +#define __DRIVERS_WIRELESS_IEEE80211_BCMF_SDIO_H + +#include "bcmf_driver.h" +#include +#include +#include +#include +#include + +#include "bcmf_sdio_core.h" + +#define HEADER_SIZE 0x12 /* Default sdpcm + bdc header size */ +// TODO move to Kconfig +#define BCMF_PKT_POOL_SIZE 4 /* Frame pool size */ + +/**************************************************************************** + * Public Types + ****************************************************************************/ + +/* sdio chip configuration structure */ + +struct bcmf_sdio_chip +{ + uint32_t ram_size; + uint32_t core_base[MAX_CORE_ID]; + + uint8_t *firmware_image; + unsigned int *firmware_image_size; + + uint8_t *nvram_image; + unsigned int *nvram_image_size; +}; + +/* sdio bus structure extension */ + +struct bcmf_sdio_dev_s +{ + struct bcmf_bus_dev_s bus; /* Default bcmf bus structure */ + FAR struct sdio_dev_s *sdio_dev; /* The SDIO device bound to this instance */ + int minor; /* Device minor number */ + + struct bcmf_sdio_chip *chip; /* Chip specific configuration */ + + volatile bool ready; /* Current device status */ + bool sleeping; /* Current sleep status */ + + int thread_id; /* Processing thread id */ + sem_t thread_signal; /* Semaphore for processing thread event */ + struct wdog_s *waitdog; /* Processing thread waitdog */ + + uint32_t backplane_current_addr; /* Current function 1 backplane base addr */ + + volatile bool irq_pending; /* True if interrupt is pending */ + uint32_t intstatus; /* Copy of device current interrupt status */ + + uint8_t max_seq; /* Maximum transmit sequence allowed */ + uint8_t tx_seq; /* Transmit sequence number (next) */ + uint8_t rx_seq; /* Receive sequence number (expected) */ + + sem_t queue_mutex; /* Lock for TX/RX/free queues */ + dq_queue_t free_queue; /* Queue of available frames */ + dq_queue_t tx_queue; /* Queue of frames to tramsmit */ + dq_queue_t rx_queue; /* Queue of frames used to receive */ + volatile int tx_queue_count; /* Count of items in TX queue */ +}; + +/* Structure used to manage SDIO frames */ + +struct bcmf_sdio_frame +{ + struct bcmf_frame_s header; + bool tx; + dq_entry_t list_entry; + uint8_t data[HEADER_SIZE + MAX_NET_DEV_MTU + + CONFIG_NET_GUARDSIZE]; +}; + +/**************************************************************************** + * Public Function Prototypes + ****************************************************************************/ + +int bcmf_bus_sdio_initialize(FAR struct bcmf_dev_s *priv, + int minor, FAR struct sdio_dev_s *dev); + +/* FIXME: Low level bus data transfer function + * To avoid bus error, len will be aligned to: + * - upper power of 2 iflen is lesser than 64 + * - upper 64 bytes block if len is greater than 64 + */ + +int bcmf_transfer_bytes(FAR struct bcmf_sdio_dev_s *sbus, bool write, + uint8_t function, uint32_t address, + uint8_t *buf, unsigned int len); + +int bcmf_read_reg(FAR struct bcmf_sdio_dev_s *sbus, uint8_t function, + uint32_t address, uint8_t *reg); + +int bcmf_write_reg(FAR struct bcmf_sdio_dev_s *sbus, uint8_t function, + uint32_t address, uint8_t reg); + +struct bcmf_sdio_frame *bcmf_sdio_allocate_frame(FAR struct bcmf_dev_s *priv, + bool block, bool tx); + +void bcmf_sdio_free_frame(FAR struct bcmf_dev_s *priv, + struct bcmf_sdio_frame *sframe); + +#endif /* __DRIVERS_WIRELESS_IEEE80211_BCMF_SDIO_H */ \ No newline at end of file diff --git a/drivers/wireless/ieee80211/bcmf_sdio_core.h b/drivers/wireless/ieee80211/bcmf_sdio_core.h new file mode 100644 index 00000000000..6131b1be3aa --- /dev/null +++ b/drivers/wireless/ieee80211/bcmf_sdio_core.h @@ -0,0 +1,226 @@ +/**************************************************************************** + * Copyright (c) 2011 Broadcom Corporation + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + * + ****************************************************************************/ + +#ifndef __DRIVERS_WIRELESS_IEEE80211_BCMF_SDIO_CORE_H +#define __DRIVERS_WIRELESS_IEEE80211_BCMF_SDIO_CORE_H + +#include + +#ifndef PAD +#define _PADLINE(line) pad ## line +#define _XSTR(line) _PADLINE(line) +#define PAD _XSTR(__LINE__) +#endif + +/* SDIO device ID */ + +#define SDIO_DEVICE_ID_BROADCOM_43143 43143 +#define SDIO_DEVICE_ID_BROADCOM_43241 0x4324 +#define SDIO_DEVICE_ID_BROADCOM_4329 0x4329 +#define SDIO_DEVICE_ID_BROADCOM_4330 0x4330 +#define SDIO_DEVICE_ID_BROADCOM_4334 0x4334 +#define SDIO_DEVICE_ID_BROADCOM_4335_4339 0x4335 +#define SDIO_DEVICE_ID_BROADCOM_43362 43362 + +/* Core reg address translation. + * Both macro's returns a 32 bits byte address on the backplane bus. + */ + +#define CORE_CC_REG(base, field) \ + (base + offsetof(struct chipcregs, field)) +#define CORE_BUS_REG(base, field) \ + (base + offsetof(struct sdpcmd_regs, field)) +#define CORE_SB(base, field) \ + (base + offsetof(struct sbconfig, field)) + +#define BRCMF_MAX_CORENUM 6 +#define SI_ENUM_BASE 0x18000000 /* Enumeration space base */ + +/* Target state register description */ + +#define SSB_TMSLOW_RESET 0x00000001 /* Reset */ +#define SSB_TMSLOW_REJECT 0x00000002 /* Reject (Standard Backplane) */ +#define SSB_TMSLOW_REJECT_23 0x00000004 /* Reject (Backplane rev 2.3) */ +#define SSB_TMSLOW_CLOCK 0x00010000 /* Clock Enable */ +#define SSB_TMSLOW_FGC 0x00020000 /* Force Gated Clocks On */ +#define SSB_TMSLOW_PE 0x40000000 /* Power Management Enable */ +#define SSB_TMSLOW_BE 0x80000000 /* BIST Enable */ + +#define I_HMB_SW_MASK ( (uint32_t) 0x000000F0 ) +#define I_HMB_FRAME_IND ( 1<<6 ) + +/* tosbmailbox bits corresponding to intstatus bits */ + +#define SMB_NAK (1 << 0) /* Frame NAK */ +#define SMB_INT_ACK (1 << 1) /* Host Interrupt ACK */ +#define SMB_USE_OOB (1 << 2) /* Use OOB Wakeup */ +#define SMB_DEV_INT (1 << 3) /* Miscellaneous Interrupt */ + +enum +{ + CHIPCOMMON_CORE_ID = 0, + DOT11MAC_CORE_ID, + SDIOD_CORE_ID, + WLAN_ARMCM3_CORE_ID, + SOCSRAM_CORE_ID, + MAX_CORE_ID +}; + +struct chip_core_info +{ + uint16_t id; + uint16_t rev; + uint32_t base; + uint32_t wrapbase; + uint32_t caps; + uint32_t cib; +}; + +struct sbconfig +{ + uint8_t PAD[0xf00]; + uint32_t PAD[2]; + uint32_t sbipsflag; /* initiator port ocp slave flag */ + uint32_t PAD[3]; + uint32_t sbtpsflag; /* target port ocp slave flag */ + uint32_t PAD[11]; + uint32_t sbtmerrloga; /* (sonics >= 2.3) */ + uint32_t PAD; + uint32_t sbtmerrlog; /* (sonics >= 2.3) */ + uint32_t PAD[3]; + uint32_t sbadmatch3; /* address match3 */ + uint32_t PAD; + uint32_t sbadmatch2; /* address match2 */ + uint32_t PAD; + uint32_t sbadmatch1; /* address match1 */ + uint32_t PAD[7]; + uint32_t sbimstate; /* initiator agent state */ + uint32_t sbintvec; /* interrupt mask */ + uint32_t sbtmstatelow; /* target state */ + uint32_t sbtmstatehigh; /* target state */ + uint32_t sbbwa0; /* bandwidth allocation table0 */ + uint32_t PAD; + uint32_t sbimconfiglow; /* initiator configuration */ + uint32_t sbimconfighigh; /* initiator configuration */ + uint32_t sbadmatch0; /* address match0 */ + uint32_t PAD; + uint32_t sbtmconfiglow; /* target configuration */ + uint32_t sbtmconfighigh; /* target configuration */ + uint32_t sbbconfig; /* broadcast configuration */ + uint32_t PAD; + uint32_t sbbstate; /* broadcast state */ + uint32_t PAD[3]; + uint32_t sbactcnfg; /* activate configuration */ + uint32_t PAD[3]; + uint32_t sbflagst; /* current sbflags */ + uint32_t PAD[3]; + uint32_t sbidlow; /* identification */ + uint32_t sbidhigh; /* identification */ +}; + +/* sdio core registers */ + +struct sdpcmd_regs +{ + uint32_t corecontrol; /* 0x00, rev8 */ + uint32_t corestatus; /* rev8 */ + uint32_t PAD[1]; + uint32_t biststatus; /* rev8 */ + + /* PCMCIA access */ + uint16_t pcmciamesportaladdr; /* 0x010, rev8 */ + uint16_t PAD[1]; + uint16_t pcmciamesportalmask; /* rev8 */ + uint16_t PAD[1]; + uint16_t pcmciawrframebc; /* rev8 */ + uint16_t PAD[1]; + uint16_t pcmciaunderflowtimer; /* rev8 */ + uint16_t PAD[1]; + + /* interrupt */ + uint32_t intstatus; /* 0x020, rev8 */ + uint32_t hostintmask; /* rev8 */ + uint32_t intmask; /* rev8 */ + uint32_t sbintstatus; /* rev8 */ + uint32_t sbintmask; /* rev8 */ + uint32_t funcintmask; /* rev4 */ + uint32_t PAD[2]; + uint32_t tosbmailbox; /* 0x040, rev8 */ + uint32_t tohostmailbox; /* rev8 */ + uint32_t tosbmailboxdata; /* rev8 */ + uint32_t tohostmailboxdata; /* rev8 */ + + /* synchronized access to registers in SDIO clock domain */ + uint32_t sdioaccess; /* 0x050, rev8 */ + uint32_t PAD[3]; + + /* PCMCIA frame control */ + uint8_t pcmciaframectrl; /* 0x060, rev8 */ + uint8_t PAD[3]; + uint8_t pcmciawatermark; /* rev8 */ + uint8_t PAD[155]; + + /* interrupt batching control */ + uint32_t intrcvlazy; /* 0x100, rev8 */ + uint32_t PAD[3]; + + /* counters */ + uint32_t cmd52rd; /* 0x110, rev8 */ + uint32_t cmd52wr; /* rev8 */ + uint32_t cmd53rd; /* rev8 */ + uint32_t cmd53wr; /* rev8 */ + uint32_t abort; /* rev8 */ + uint32_t datacrcerror; /* rev8 */ + uint32_t rdoutofsync; /* rev8 */ + uint32_t wroutofsync; /* rev8 */ + uint32_t writebusy; /* rev8 */ + uint32_t readwait; /* rev8 */ + uint32_t readterm; /* rev8 */ + uint32_t writeterm; /* rev8 */ + uint32_t PAD[40]; + uint32_t clockctlstatus; /* rev8 */ + uint32_t PAD[7]; + + uint32_t PAD[128]; /* DMA engines */ + + /* SDIO/PCMCIA CIS region */ + char cis[512]; /* 0x400-0x5ff, rev6 */ + + /* PCMCIA function control registers */ + char pcmciafcr[256]; /* 0x600-6ff, rev6 */ + uint16_t PAD[55]; + + /* PCMCIA backplane access */ + uint16_t backplanecsr; /* 0x76E, rev6 */ + uint16_t backplaneaddr0; /* rev6 */ + uint16_t backplaneaddr1; /* rev6 */ + uint16_t backplaneaddr2; /* rev6 */ + uint16_t backplaneaddr3; /* rev6 */ + uint16_t backplanedata0; /* rev6 */ + uint16_t backplanedata1; /* rev6 */ + uint16_t backplanedata2; /* rev6 */ + uint16_t backplanedata3; /* rev6 */ + uint16_t PAD[31]; + + /* sprom "size" & "blank" info */ + uint16_t spromstatus; /* 0x7BE, rev2 */ + uint32_t PAD[464]; + + uint16_t PAD[0x80]; +}; + +#endif /* __DRIVERS_WIRELESS_IEEE80211_BCMF_SDIO_CORE_H */ diff --git a/drivers/wireless/ieee80211/bcmf_sdio_regs.h b/drivers/wireless/ieee80211/bcmf_sdio_regs.h new file mode 100644 index 00000000000..6959968524a --- /dev/null +++ b/drivers/wireless/ieee80211/bcmf_sdio_regs.h @@ -0,0 +1,248 @@ +/**************************************************************************** + * Copyright (c) 2010 Broadcom Corporation + * + * Permission to use, copy, modify, and/or distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY + * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + * + ****************************************************************************/ + +#ifndef __DRIVERS_WIRELESS_IEEE80211_BCMF_SDIO_REGS_H +#define __DRIVERS_WIRELESS_IEEE80211_BCMF_SDIO_REGS_H + +#define SDIO_FUNC_0 0 +#define SDIO_FUNC_1 1 +#define SDIO_FUNC_2 2 + +#define SDIOD_FBR_SIZE 0x100 + +/* io_en */ + +#define SDIO_FUNC_ENABLE_1 0x02 +#define SDIO_FUNC_ENABLE_2 0x04 + +/* io_rdys */ + +#define SDIO_FUNC_READY_1 0x02 +#define SDIO_FUNC_READY_2 0x04 + +/* intr_status */ + +#define INTR_STATUS_FUNC1 0x2 +#define INTR_STATUS_FUNC2 0x4 + +/* Maximum number of I/O funcs */ + +#define SDIOD_MAX_IOFUNCS 7 + +/* mask of register map */ + +#define REG_F0_REG_MASK 0x7FF +#define REG_F1_MISC_MASK 0x1FFFF + +/* as of sdiod rev 0, supports 3 functions */ + +#define SBSDIO_NUM_FUNCTION 3 + +/* function 0 vendor specific CCCR registers */ + +#define SDIO_CCCR_BRCM_CARDCAP 0xf0 +#define SDIO_CCCR_BRCM_CARDCAP_CMD14_SUPPORT 0x02 +#define SDIO_CCCR_BRCM_CARDCAP_CMD14_EXT 0x04 +#define SDIO_CCCR_BRCM_CARDCAP_CMD_NODEC 0x08 +#define SDIO_CCCR_BRCM_CARDCTRL 0xf1 +#define SDIO_CCCR_BRCM_CARDCTRL_WLANRESET 0x02 +#define SDIO_CCCR_BRCM_SEPINT 0xf2 + +#define SDIO_SEPINT_MASK 0x01 +#define SDIO_SEPINT_OE 0x02 +#define SDIO_SEPINT_ACT_HI 0x04 + +/* function 1 miscellaneous registers */ + +/* sprom command and status */ + +#define SBSDIO_SPROM_CS 0x10000 + +/* sprom info register */ + +#define SBSDIO_SPROM_INFO 0x10001 + +/* sprom indirect access data byte 0 */ + +#define SBSDIO_SPROM_DATA_LOW 0x10002 + +/* sprom indirect access data byte 1 */ + +#define SBSDIO_SPROM_DATA_HIGH 0x10003 + +/* sprom indirect access addr byte 0 */ + +#define SBSDIO_SPROM_ADDR_LOW 0x10004 + +/* sprom indirect access addr byte 0 */ + +#define SBSDIO_SPROM_ADDR_HIGH 0x10005 + +/* xtal_pu (gpio) output */ + +#define SBSDIO_CHIP_CTRL_DATA 0x10006 + +/* xtal_pu (gpio) enable */ + +#define SBSDIO_CHIP_CTRL_EN 0x10007 + +/* rev < 7, watermark for sdio device */ + +#define SBSDIO_WATERMARK 0x10008 + +/* control busy signal generation */ + +#define SBSDIO_DEVICE_CTL 0x10009 + +/* SB Address Window Low (b15) */ + +#define SBSDIO_FUNC1_SBADDRLOW 0x1000A + +/* SB Address Window Mid (b23:b16) */ + +#define SBSDIO_FUNC1_SBADDRMID 0x1000B + +/* SB Address Window High (b31:b24) */ + +#define SBSDIO_FUNC1_SBADDRHIGH 0x1000C + +/* Frame Control (frame term/abort) */ + +#define SBSDIO_FUNC1_FRAMECTRL 0x1000D + +/* Read Frame Terminate */ + +#define SFC_RF_TERM (1 << 0) + +/* Write Frame Terminate */ + +#define SFC_WF_TERM (1 << 1) + +/* CRC error for write out of sync */ + +#define SFC_CRC4WOOS (1 << 2) + +/* Abort all in-progress frames */ + +#define SFC_ABORTALL (1 << 3) + + +/* ChipClockCSR (ALP/HT ctl/status) */ + +#define SBSDIO_FUNC1_CHIPCLKCSR 0x1000E + +/* Force ALP request to backplane */ + +#define SBSDIO_FORCE_ALP 0x01 + +/* Force HT request to backplane */ + +#define SBSDIO_FORCE_HT 0x02 + +/* Force ILP request to backplane */ + +#define SBSDIO_FORCE_ILP 0x04 + +/* Make ALP ready (power up xtal) */ + +#define SBSDIO_ALP_AVAIL_REQ 0x08 + +/* Make HT ready (power up PLL) */ + +#define SBSDIO_HT_AVAIL_REQ 0x10 + +/* Squelch clock requests from HW */ + +#define SBSDIO_FORCE_HW_CLKREQ_OFF 0x20 + +/* Status: ALP is ready */ + +#define SBSDIO_ALP_AVAIL 0x40 + +/* Status: HT is ready */ + +#define SBSDIO_HT_AVAIL 0x80 + +/* SdioPullUp (on cmd, d0-d2) */ + +#define SBSDIO_FUNC1_SDIOPULLUP 0x1000F + +/* Write Frame Byte Count Low */ + +#define SBSDIO_FUNC1_WFRAMEBCLO 0x10019 + +/* Write Frame Byte Count High */ + +#define SBSDIO_FUNC1_WFRAMEBCHI 0x1001A + +/* Read Frame Byte Count Low */ + +#define SBSDIO_FUNC1_RFRAMEBCLO 0x1001B + +/* Read Frame Byte Count High */ + +#define SBSDIO_FUNC1_RFRAMEBCHI 0x1001C + +/* MesBusyCtl (rev 11) */ + +#define SBSDIO_FUNC1_MESBUSYCTRL 0x1001D + +/* Sdio Core Rev 12 */ + +#define SBSDIO_FUNC1_WAKEUPCTRL 0x1001E +#define SBSDIO_FUNC1_WCTRL_ALPWAIT_MASK 0x1 +#define SBSDIO_FUNC1_WCTRL_ALPWAIT_SHIFT 0 +#define SBSDIO_FUNC1_WCTRL_HTWAIT_MASK 0x2 +#define SBSDIO_FUNC1_WCTRL_HTWAIT_SHIFT 1 + +#define SBSDIO_FUNC1_SLEEPCSR 0x1001F +#define SBSDIO_FUNC1_SLEEPCSR_KSO_MASK 0x1 +#define SBSDIO_FUNC1_SLEEPCSR_KSO_SHIFT 0 +#define SBSDIO_FUNC1_SLEEPCSR_KSO_EN 1 +#define SBSDIO_FUNC1_SLEEPCSR_DEVON_MASK 0x2 +#define SBSDIO_FUNC1_SLEEPCSR_DEVON_SHIFT 1 + +#define SBSDIO_AVBITS (SBSDIO_HT_AVAIL | SBSDIO_ALP_AVAIL) +#define SBSDIO_ALPAV(regval) ((regval) & SBSDIO_AVBITS) +#define SBSDIO_HTAV(regval) (((regval) & SBSDIO_AVBITS) == SBSDIO_AVBITS) +#define SBSDIO_ALPONLY(regval) (SBSDIO_ALPAV(regval) && !SBSDIO_HTAV(regval)) +#define SBSDIO_CLKAV(regval, alponly) \ + (SBSDIO_ALPAV(regval) && (alponly ? 1 : SBSDIO_HTAV(regval))) + +#define SBSDIO_FUNC1_MISC_REG_START 0x10000 /* f1 misc register start */ +#define SBSDIO_FUNC1_MISC_REG_LIMIT 0x1001F /* f1 misc register end */ + +/* function 1 OCP space */ + +/* sb offset addr is <= 15 bits, 32k */ + +#define SBSDIO_SB_OFT_ADDR_MASK 0x07FFF +#define SBSDIO_SB_OFT_ADDR_LIMIT 0x08000 + +/* with b15, maps to 32-bit SB access */ + +#define SBSDIO_SB_ACCESS_2_4B_FLAG 0x08000 + +/* valid bits in SBSDIO_FUNC1_SBADDRxxx regs */ + +#define SBSDIO_SBADDRLOW_MASK 0x80 /* Valid bits in SBADDRLOW */ +#define SBSDIO_SBADDRMID_MASK 0xff /* Valid bits in SBADDRMID */ +#define SBSDIO_SBADDRHIGH_MASK 0xffU /* Valid bits in SBADDRHIGH */ +/* Address bits from SBADDR regs */ +#define SBSDIO_SBWINDOW_MASK 0xffff8000 + +#endif /* __DRIVERS_WIRELESS_IEEE80211_BCMF_SDIO_REGS_H */ diff --git a/drivers/wireless/ieee80211/bcmf_sdpcm.c b/drivers/wireless/ieee80211/bcmf_sdpcm.c new file mode 100644 index 00000000000..21691bd957a --- /dev/null +++ b/drivers/wireless/ieee80211/bcmf_sdpcm.c @@ -0,0 +1,464 @@ +/**************************************************************************** + * drivers/wireless/ieee80211/bcmf_sdpcm.c + * + * Copyright (C) 2017 Gregory Nutt. All rights reserved. + * Author: Simon Piriou + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + +/**************************************************************************** + * Included Files + ****************************************************************************/ + +#include +#include + +#include +#include +#include + +#include +#include +#include +#include +#include + +#include "bcmf_sdio.h" +#include "bcmf_core.h" +#include "bcmf_sdpcm.h" +#include "bcmf_cdc.h" +#include "bcmf_bdc.h" +#include "bcmf_utils.h" + + #include "bcmf_netdev.h" + +#include "bcmf_sdio_regs.h" + +/**************************************************************************** + * Pre-processor Definitions + ****************************************************************************/ + +#define SDPCM_CONTROL_CHANNEL 0 /* Control frame id */ +#define SDPCM_EVENT_CHANNEL 1 /* Asynchronous event frame id */ +#define SDPCM_DATA_CHANNEL 2 /* Data frame id */ + +/**************************************************************************** + * Private Types + ****************************************************************************/ + +struct __attribute__((packed)) bcmf_sdpcm_header { + uint16_t size; + uint16_t checksum; + uint8_t sequence; + uint8_t channel; + uint8_t next_length; + uint8_t data_offset; + uint8_t flow_control; + uint8_t credit; + uint16_t padding; +}; + +/**************************************************************************** + * Private Function Prototypes + ****************************************************************************/ + +static int bcmf_sdpcm_rxfail(FAR struct bcmf_sdio_dev_s *sbus, bool retry); + +static int bcmf_sdpcm_process_header(FAR struct bcmf_sdio_dev_s *sbus, + struct bcmf_sdpcm_header *header); + +/**************************************************************************** + * Private Data + ****************************************************************************/ + +/**************************************************************************** + * Private Functions + ****************************************************************************/ + +int bcmf_sdpcm_rxfail(FAR struct bcmf_sdio_dev_s *sbus, bool retry) +{ + /* issue abort command for F2 through F0 */ + + bcmf_write_reg(sbus, 0, SDIO_CCCR_IOABORT, 2); + + bcmf_write_reg(sbus, 1, SBSDIO_FUNC1_FRAMECTRL, SFC_RF_TERM); + + /* TODO Wait until the packet has been flushed (device/FIFO stable) */ + + if (retry) + { + /* Send NAK to retry to read frame */ + + bcmf_write_sbregb(sbus, + CORE_BUS_REG(sbus->chip->core_base[SDIOD_CORE_ID], + tosbmailbox), SMB_NAK); + } + + return 0; +} + +int bcmf_sdpcm_process_header(FAR struct bcmf_sdio_dev_s *sbus, + struct bcmf_sdpcm_header *header) +{ + if (header->data_offset < sizeof(struct bcmf_sdpcm_header) || + header->data_offset > header->size) + { + wlerr("Invalid data offset\n"); + bcmf_sdpcm_rxfail(sbus, false); + return -ENXIO; + } + + /* Update tx credits */ + + sbus->max_seq = header->credit; + + return OK; +} + +/**************************************************************************** + * Public Functions + ****************************************************************************/ + +int bcmf_sdpcm_readframe(FAR struct bcmf_dev_s *priv) +{ + int ret; + uint16_t len, checksum; + struct bcmf_sdpcm_header *header; + struct bcmf_sdio_frame *sframe; + FAR struct bcmf_sdio_dev_s *sbus = (FAR struct bcmf_sdio_dev_s *)priv->bus; + + /* Request free frame buffer */ + + sframe = bcmf_sdio_allocate_frame(priv, false, false); + + if (sframe == NULL) + { + wlinfo("fail alloc\n"); + return -EAGAIN; + } + + header = (struct bcmf_sdpcm_header *)sframe->data; + + /* Read header */ + + ret = bcmf_transfer_bytes(sbus, false, 2, 0, (uint8_t *)header, 4); + if (ret != OK) + { + wlinfo("failread size\n"); + ret = -EIO; + goto exit_abort; + } + + len = header->size; + checksum = header->checksum; + + /* All zero means no more to read */ + + if (!(len | checksum)) + { + ret = -ENODATA; + goto exit_free_frame; + } + + if (((~len & 0xffff) ^ checksum) || len < sizeof(struct bcmf_sdpcm_header)) + { + wlerr("Invalid header checksum or len %x %x\n", len, checksum); + ret = -EINVAL; + goto exit_abort; + } + + if (len > sframe->header.len) + { + wlerr("Frame is too large, cancel %d %d\n", len, sframe->header.len); + ret = -ENOMEM; + goto exit_abort; + } + + /* Read remaining frame data */ + + ret = bcmf_transfer_bytes(sbus, false, 2, 0, (uint8_t *)header + 4, len - 4); + if (ret != OK) + { + ret = -EIO; + goto exit_abort; + } + + // wlinfo("Receive frame %p %d\n", sframe, len); + // bcmf_hexdump((uint8_t *)header, header->size, (unsigned int)header); + + /* Process and validate header */ + + ret = bcmf_sdpcm_process_header(sbus, header); + if (ret != OK) + { + wlerr("Error while processing header %d\n", ret); + ret = -EINVAL; + goto exit_free_frame; + } + + /* Update frame structure */ + + sframe->header.len = header->size; + sframe->header.data += header->data_offset; + + /* Process received frame content */ + + switch (header->channel & 0x0f) + { + case SDPCM_CONTROL_CHANNEL: + ret = bcmf_cdc_process_control_frame(priv, &sframe->header); + goto exit_free_frame; + + case SDPCM_EVENT_CHANNEL: + if (header->data_offset == header->size) + { + /* Empty event, ignore */ + + ret = OK; + } + else + { + ret = bcmf_bdc_process_event_frame(priv, &sframe->header); + } + goto exit_free_frame; + + case SDPCM_DATA_CHANNEL: + + /* Queue frame and notify network layer frame is available */ + + if (sem_wait(&sbus->queue_mutex)) + { + PANIC(); + } + bcmf_dqueue_push(&sbus->rx_queue, &sframe->list_entry); + sem_post(&sbus->queue_mutex); + + bcmf_netdev_notify_rx(priv); + + /* Upper layer have to free all received frames */ + + ret = OK; + break; + + default: + wlerr("Got unexpected message type %d\n", header->channel); + ret = -EINVAL; + goto exit_free_frame; + } + + return ret; + +exit_abort: + bcmf_sdpcm_rxfail(sbus, false); +exit_free_frame: + bcmf_sdio_free_frame(priv, sframe); + return ret; +} + +int bcmf_sdpcm_sendframe(FAR struct bcmf_dev_s *priv) +{ + int ret; + bool is_txframe; + dq_entry_t *entry; + struct bcmf_sdio_frame *sframe; + struct bcmf_sdpcm_header *header; + FAR struct bcmf_sdio_dev_s *sbus = (FAR struct bcmf_sdio_dev_s *)priv->bus; + + if (sbus->tx_queue.tail == NULL) + { + /* No more frames to send */ + + return -ENODATA; + } + + if (sbus->tx_seq == sbus->max_seq) + { + // TODO handle this case + wlerr("No credit to send frame\n"); + return -EAGAIN; + } + + + if (sem_wait(&sbus->queue_mutex)) + { + PANIC(); + } + + entry = sbus->tx_queue.tail; + sframe = container_of(entry, struct bcmf_sdio_frame, list_entry); + header = (struct bcmf_sdpcm_header *)sframe->header.base; + + /* Set frame sequence id */ + + header->sequence = sbus->tx_seq++; + + // wlinfo("Send frame %p\n", sframe); + // bcmf_hexdump(sframe->header.base, sframe->header.len, + // (unsigned long)sframe->header.base); + + ret = bcmf_transfer_bytes(sbus, true, 2, 0, sframe->header.base, + sframe->header.len); + if (ret != OK) + { + wlinfo("fail send frame %d\n", ret); + ret = -EIO; + goto exit_abort; + // TODO handle retry count and remove frame from queue + abort TX + } + + /* Frame sent, remove it from queue */ + + bcmf_dqueue_pop_tail(&sbus->tx_queue); + sem_post(&sbus->queue_mutex); + is_txframe = sframe->tx; + + /* Free frame buffer */ + + bcmf_sdio_free_frame(priv, sframe); + + if (is_txframe) + { + /* Notify upper layer at least one TX buffer is available */ + + bcmf_netdev_notify_tx_done(priv); + } + + return OK; + +exit_abort: + // bcmf_sdpcm_txfail(sbus, false); + sem_post(&sbus->queue_mutex); + return ret; +} + +int bcmf_sdpcm_queue_frame(FAR struct bcmf_dev_s *priv, + struct bcmf_frame_s *frame, bool control) +{ + FAR struct bcmf_sdio_dev_s *sbus = (FAR struct bcmf_sdio_dev_s *)priv->bus; + struct bcmf_sdio_frame *sframe = (struct bcmf_sdio_frame *)frame; + struct bcmf_sdpcm_header *header = (struct bcmf_sdpcm_header *)sframe->data; + + /* Prepare sw header */ + + memset(header, 0, sizeof(struct bcmf_sdpcm_header)); + header->size = frame->len; + header->checksum = ~header->size; + header->data_offset = (uint8_t)(frame->data - frame->base); + + if (control) + { + header->channel = SDPCM_CONTROL_CHANNEL; + } + else + { + header->channel = SDPCM_DATA_CHANNEL; + } + + /* Add frame in tx queue */ + + if (sem_wait(&sbus->queue_mutex)) + { + PANIC(); + } + + bcmf_dqueue_push(&sbus->tx_queue, &sframe->list_entry); + + sem_post(&sbus->queue_mutex); + + /* Notify bcmf thread tx frame is ready */ + + sem_post(&sbus->thread_signal); + + return OK; +} + +struct bcmf_frame_s *bcmf_sdpcm_alloc_frame(FAR struct bcmf_dev_s *priv, + unsigned int len, bool block, + bool control) +{ + struct bcmf_sdio_frame *sframe; + unsigned int header_len = sizeof(struct bcmf_sdpcm_header); + + if (!control) + { + header_len += 2; /* Data frames need alignment padding */ + } + + if (len + header_len > MAX_NET_DEV_MTU + HEADER_SIZE || + len > len + header_len) + { + wlerr("Invalid size %d\n", len); + return NULL; + } + + /* Allocate a frame for RX in case of control frame */ + + sframe = bcmf_sdio_allocate_frame(priv, block, !control); + + if (sframe == NULL) + { + return NULL; + } + + sframe->header.len = header_len + len; + sframe->header.data += header_len; + return &sframe->header; +} + + +void bcmf_sdpcm_free_frame(FAR struct bcmf_dev_s *priv, + struct bcmf_frame_s *frame) +{ + return bcmf_sdio_free_frame(priv, (struct bcmf_sdio_frame *)frame); +} + +struct bcmf_frame_s *bcmf_sdpcm_get_rx_frame(FAR struct bcmf_dev_s *priv) +{ + dq_entry_t *entry; + struct bcmf_sdio_frame *sframe; + FAR struct bcmf_sdio_dev_s *sbus = (FAR struct bcmf_sdio_dev_s *)priv->bus; + + if (sem_wait(&sbus->queue_mutex)) + { + PANIC(); + } + + entry = bcmf_dqueue_pop_tail(&sbus->rx_queue); + + sem_post(&sbus->queue_mutex); + + if (entry == NULL) + { + return NULL; + } + + sframe = container_of(entry, struct bcmf_sdio_frame, list_entry); + return &sframe->header; +} diff --git a/drivers/wireless/ieee80211/bcmf_sdpcm.h b/drivers/wireless/ieee80211/bcmf_sdpcm.h new file mode 100644 index 00000000000..6144489e406 --- /dev/null +++ b/drivers/wireless/ieee80211/bcmf_sdpcm.h @@ -0,0 +1,64 @@ +/**************************************************************************** + * drivers/wireless/ieee80211/bcmf_sdpcm.h + * + * Copyright (C) 2017 Gregory Nutt. All rights reserved. + * Author: Simon Piriou + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + +#ifndef __DRIVERS_WIRELESS_IEEE80211_BCMF_SDPCM_H +#define __DRIVERS_WIRELESS_IEEE80211_BCMF_SDPCM_H + +/**************************************************************************** + * Included Files + ****************************************************************************/ + +#include "bcmf_driver.h" + +/**************************************************************************** + * Public Function Prototypes + ****************************************************************************/ + +int bcmf_sdpcm_readframe(FAR struct bcmf_dev_s *priv); + +int bcmf_sdpcm_sendframe(FAR struct bcmf_dev_s *priv); + +int bcmf_sdpcm_queue_frame(FAR struct bcmf_dev_s *priv, + struct bcmf_frame_s *frame, bool control); + +void bcmf_sdpcm_free_frame(FAR struct bcmf_dev_s *priv, struct bcmf_frame_s *frame); + +struct bcmf_frame_s *bcmf_sdpcm_alloc_frame(FAR struct bcmf_dev_s *priv, + unsigned int len, bool block, + bool control); + +struct bcmf_frame_s *bcmf_sdpcm_get_rx_frame(FAR struct bcmf_dev_s *priv); + +#endif /* __DRIVERS_WIRELESS_IEEE80211_BCMF_SDPCM_H */ diff --git a/drivers/wireless/ieee80211/bcmf_utils.c b/drivers/wireless/ieee80211/bcmf_utils.c new file mode 100644 index 00000000000..16c42d27acc --- /dev/null +++ b/drivers/wireless/ieee80211/bcmf_utils.c @@ -0,0 +1,167 @@ +/**************************************************************************** + * drivers/wireless/ieee80211/bcmf_utils.c + * + * Copyright (C) 2017 Gregory Nutt. All rights reserved. + * Author: Simon Piriou + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + +/**************************************************************************** + * Included Files + ****************************************************************************/ + +#include +#include +#include +#include +#include +#include +#include + +#include "bcmf_utils.h" + +/**************************************************************************** + * Pre-processor Definitions + ****************************************************************************/ + +#define LINE_LEN 16 + +/**************************************************************************** + * Public Functions + ****************************************************************************/ + +/**************************************************************************** + * Name: bcmf_hexdump + ****************************************************************************/ + +void bcmf_hexdump(uint8_t *data, unsigned int len, unsigned long offset) +{ + unsigned int i; + unsigned int char_count = 0; + char char_line[20]; + char hex_line[64]; + + for (i = 0; i < len; i++) + { + if (char_count >= LINE_LEN) + { + /* Flush line */ + + wlinfo("%08x: %s%s\n", offset+i-char_count, hex_line, char_line); + char_count = 0; + } + + sprintf(hex_line+3*char_count, "%02x ", data[i]); + sprintf(char_line+char_count, "%c", + data[i] < 0x20 || data[i] >= 0x7f? '.': data[i]); + char_count ++; + } + + if (char_count > 0) + { + /* Flush last line */ + + memset(hex_line+3*char_count, ' ', 3*(LINE_LEN-char_count)); + hex_line[3*LINE_LEN] = 0; + wlinfo("%08x: %s%s\n", offset+i-char_count, hex_line, char_line); + } +} + +/**************************************************************************** + * Name: bcmf_sem_wait + ****************************************************************************/ + +int bcmf_sem_wait(sem_t *sem, unsigned int timeout_ms) +{ + struct timespec abstime; + unsigned int timeout_sec; + + /* Get the current time */ + + (void)clock_gettime(CLOCK_REALTIME, &abstime); + + timeout_sec = timeout_ms / 1000; + abstime.tv_sec += timeout_sec; + abstime.tv_nsec += 1000 * 1000 * (timeout_ms % 1000); + + if (abstime.tv_nsec >= 1000 * 1000 * 1000) + { + abstime.tv_sec++; + abstime.tv_nsec -= 1000 * 1000 * 1000; + } + + return sem_timedwait(sem, &abstime); +} + +void bcmf_dqueue_push(dq_queue_t *queue, dq_entry_t *entry) +{ + if (queue->head == NULL) + { + /* List is empty */ + + queue->tail = entry; + + entry->flink = entry; + entry->blink = entry; + } + else + { + /* Insert entry at list head */ + + entry->flink = queue->head; + entry->blink = queue->tail; + + queue->head->blink = entry; + } + + queue->head = entry; +} + +dq_entry_t *bcmf_dqueue_pop_tail(dq_queue_t *queue) +{ + dq_entry_t *entry = queue->tail; + + if (queue->head == queue->tail) + { + /* List is empty */ + + queue->head = NULL; + queue->tail = NULL; + } + else + { + /* Pop from queue tail */ + + queue->tail = entry->blink; + entry->blink->flink = queue->head; + } + + return entry; +} diff --git a/drivers/wireless/ieee80211/bcmf_utils.h b/drivers/wireless/ieee80211/bcmf_utils.h new file mode 100644 index 00000000000..32fd4ca5624 --- /dev/null +++ b/drivers/wireless/ieee80211/bcmf_utils.h @@ -0,0 +1,73 @@ +/**************************************************************************** + * drivers/wireless/ieee80211/bcmf_utils.h + * + * Copyright (C) 2017 Gregory Nutt. All rights reserved. + * Author: Simon Piriou + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + +#ifndef __DRIVERS_WIRELESS_IEEE80211_BCMF_UTILS_H +#define __DRIVERS_WIRELESS_IEEE80211_BCMF_UTILS_H + +/**************************************************************************** + * Included Files + ****************************************************************************/ + +#include +#include +#include + +#define container_of(ptr, type, member) \ + (type *)((uint8_t *)(ptr) - offsetof(type, member)) + +/**************************************************************************** + * Public Function Prototypes + ****************************************************************************/ + +void bcmf_hexdump(uint8_t *data, unsigned int len, unsigned long offset); + +int bcmf_sem_wait(sem_t *sem, unsigned int timeout_ms); + +dq_entry_t *bcmf_dqueue_pop_tail(dq_queue_t *queue); +void bcmf_dqueue_push(dq_queue_t *queue, dq_entry_t *entry); + +static inline uint16_t bcmf_getle16(uint16_t *val) +{ + uint8_t *valb = (uint8_t *)val; + return (uint16_t)valb[0] << 8 | (uint16_t)valb[1]; +} + +static inline uint16_t bcmf_getle32(uint32_t *val) +{ + uint16_t *valw = (uint16_t *)val; + return (uint32_t)bcmf_getle16(valw) << 16 | bcmf_getle16(valw + 1); +} + +#endif /* __DRIVERS_WIRELESS_IEEE80211_BCMF_UTILS_H */ \ No newline at end of file diff --git a/drivers/wireless/ieee80211/mmc_sdio.c b/drivers/wireless/ieee80211/mmc_sdio.c new file mode 100644 index 00000000000..377dcc3e535 --- /dev/null +++ b/drivers/wireless/ieee80211/mmc_sdio.c @@ -0,0 +1,393 @@ +#include +#include +#include + +#include + +#define SDIO_CMD53_TIMEOUT_MS 100 +#define SDIO_IDLE_DELAY_MS 50 + +struct __attribute__((packed)) sdio_cmd52 +{ + uint32_t write_data : 8; + uint32_t reserved_8 : 1; + uint32_t register_address : 17; + uint32_t reserved_26 : 1; + uint32_t raw_flag : 1; + uint32_t function_number : 3; + uint32_t rw_flag : 1; +}; + +struct __attribute__((packed)) sdio_cmd53 +{ + uint32_t byte_block_count : 9; + uint32_t register_address : 17; + uint32_t op_code : 1; + uint32_t block_mode : 1; + uint32_t function_number : 3; + uint32_t rw_flag : 1; +}; + +struct __attribute__((packed)) sdio_resp_R5 +{ + uint32_t data : 8; + struct + { + uint32_t out_of_range : 1; + uint32_t function_number : 1; + uint32_t rfu : 1; + uint32_t error : 1; + uint32_t io_current_state : 2; + uint32_t illegal_command : 1; + uint32_t com_crc_error : 1; + } flags; + uint32_t reserved_16 : 16; +}; + +union sdio_cmd5x +{ + uint32_t value; + struct sdio_cmd52 cmd52; + struct sdio_cmd53 cmd53; +}; + +int sdio_sendcmdpoll(FAR struct sdio_dev_s *dev, uint32_t cmd, uint32_t arg) +{ + int ret; + + /* Send the command */ + + ret = SDIO_SENDCMD(dev, cmd, arg); + if (ret == OK) + { + /* Then poll-wait until the response is available */ + + ret = SDIO_WAITRESPONSE(dev, cmd); + if (ret != OK) + { + wlerr("ERROR: Wait for response to cmd: %08x failed: %d\n", + cmd, ret); + } + } + + return ret; +} + +int sdio_io_rw_direct(FAR struct sdio_dev_s *dev, bool write, + uint8_t function, uint32_t address, + uint8_t inb, uint8_t *outb) +{ + union sdio_cmd5x arg; + struct sdio_resp_R5 resp; + int ret; + + /* Setup CMD52 argument */ + + arg.value = 0; + + if (write) + { + arg.cmd52.write_data = inb; + } + else + { + arg.cmd52.write_data = 0; + } + arg.cmd52.register_address = address & 0x1ffff; + arg.cmd52.raw_flag = (write && outb); + arg.cmd52.function_number = function & 7; + arg.cmd52.rw_flag = write; + + /* Send CMD52 command */ + + sdio_sendcmdpoll(dev, SDIO_ACMD52, arg.value); + ret = SDIO_RECVR5(dev, SDIO_ACMD52, (uint32_t *)&resp); + + if (ret != OK) + { + wlerr("ERROR: SDIO_RECVR5 failed %d\n", ret); + return ret; + } + + /* Check for errors */ + + if (resp.flags.error) + { + return -EIO; + } + + if (resp.flags.function_number || resp.flags.out_of_range) + { + return -EINVAL; + } + + /* Write output byte */ + + if (outb) + { + *outb = resp.data & 0xff; + } + + return OK; +} + +int sdio_io_rw_extended(FAR struct sdio_dev_s *dev, bool write, + uint8_t function, uint32_t address, + bool inc_addr, uint8_t *buf, + unsigned int blocklen, unsigned int nblocks) +{ + union sdio_cmd5x arg; + struct sdio_resp_R5 resp; + int ret; + sdio_eventset_t wkupevent; + + /* Setup CMD53 argument */ + + arg.value = 0; + arg.cmd53.register_address = address & 0x1ffff; + arg.cmd53.op_code = inc_addr; + arg.cmd53.function_number = function & 7; + arg.cmd53.rw_flag = write; + + if (nblocks == 0 && blocklen < 512) + { + /* Use byte mode */ + + // wlinfo("byte mode\n"); + arg.cmd53.block_mode = 0; + arg.cmd53.byte_block_count = blocklen; + nblocks = 1; + } + else + { + /* Use block mode */ + + arg.cmd53.block_mode = 1; + arg.cmd53.byte_block_count = nblocks; + } + + /* Send CMD53 command */ + + SDIO_BLOCKSETUP(dev, blocklen, nblocks); + SDIO_WAITENABLE(dev, + SDIOWAIT_TRANSFERDONE | SDIOWAIT_TIMEOUT | SDIOWAIT_ERROR); + + if (write) + { + // wlinfo("prep write %d %d\n", blocklen, nblocks); + sdio_sendcmdpoll(dev, SDIO_ACMD53, (uint32_t)arg.value); + ret = SDIO_RECVR5(dev, SDIO_ACMD53, (uint32_t *)&resp); + + SDIO_DMASENDSETUP(dev, buf, blocklen * nblocks); + wkupevent = SDIO_EVENTWAIT(dev, SDIO_CMD53_TIMEOUT_MS); + } + else + { + // wlinfo("prep read %d\n", blocklen * nblocks); + SDIO_DMARECVSETUP(dev, buf, blocklen * nblocks); + SDIO_SENDCMD(dev, SDIO_ACMD53, (uint32_t)arg.value); + + wkupevent = SDIO_EVENTWAIT(dev, SDIO_CMD53_TIMEOUT_MS); + ret = SDIO_RECVR5(dev, SDIO_ACMD53, (uint32_t *)&resp); + } + + if (ret != OK) + { + wlerr("ERROR: SDIO_RECVR5 failed %d\n", ret); + return ret; + } + + /* Check for errors */ + + if (wkupevent & SDIOWAIT_TIMEOUT) + { + wlerr("timeout\n"); + return -ETIMEDOUT; + } + + if (resp.flags.error || (wkupevent & SDIOWAIT_ERROR)) + { + wlerr("error 1\n"); + return -EIO; + } + + if (resp.flags.function_number || resp.flags.out_of_range) + { + wlerr("error 2\n"); + return -EINVAL; + } + + return OK; +} + +int sdio_set_wide_bus(struct sdio_dev_s *dev) +{ + int ret; + uint8_t value; + + /* Read Bus Interface Control register */ + + ret = sdio_io_rw_direct(dev, false, 0, SDIO_CCCR_BUS_IF, 0, &value); + if (ret != OK) + { + return ret; + } + + /* Set 4 bits bus width setting */ + + value &= ~SDIO_CCCR_BUS_IF_WIDTH_MASK; + value |= SDIO_CCCR_BUS_IF_4_BITS; + + ret = sdio_io_rw_direct(dev, true, 0, SDIO_CCCR_BUS_IF, value, NULL); + if (ret != OK) + { + return ret; + } + + SDIO_WIDEBUS(dev, true); + return OK; +} + +int sdio_probe(FAR struct sdio_dev_s *dev) +{ + int ret; + uint32_t data = 0; + + /* Set device state from reset to idle */ + + sdio_sendcmdpoll(dev, MMCSD_CMD0, 0); + up_mdelay(SDIO_IDLE_DELAY_MS); + + /* Device is SDIO card compatible so we can send CMD5 instead of ACMD41 */ + + sdio_sendcmdpoll(dev, SDIO_CMD5, 0); + + /* Receive R4 response */ + + ret = SDIO_RECVR4(dev, SDIO_CMD5, &data); + if (ret != OK) + { + return ret; + } + + /* Device is in Card Identification Mode, request device RCA */ + + sdio_sendcmdpoll(dev, SD_CMD3, 0); + + ret = SDIO_RECVR6(dev, SD_CMD3, &data); + if (ret != OK) + { + wlerr("ERROR: RCA request failed: %d\n", ret); + return ret; + } + + wlinfo("rca is %x\n", data >> 16); + + /* Send CMD7 with the argument == RCA in order to select the card + * and put it in Transfer State */ + + sdio_sendcmdpoll(dev, MMCSD_CMD7S, data & 0xffff0000); + + ret = SDIO_RECVR1(dev, MMCSD_CMD7S, &data); + if (ret != OK) + { + wlerr("ERROR: card selection failed: %d\n", ret); + return ret; + } + + /* Configure 4 bits bus width */ + + ret = sdio_set_wide_bus(dev); + if (ret != OK) + { + return ret; + } + + return OK; +} + +int sdio_set_blocksize(FAR struct sdio_dev_s *dev, uint8_t function, + uint16_t blocksize) +{ + int ret; + + ret = sdio_io_rw_direct(dev, true, 0, + (function << SDIO_FBR_SHIFT) + SDIO_CCCR_FN0_BLKSIZE_0, + blocksize & 0xff, NULL); + if (ret != OK) + { + return ret; + } + + ret = sdio_io_rw_direct(dev, true, 0, + (function << SDIO_FBR_SHIFT) + SDIO_CCCR_FN0_BLKSIZE_1, + (blocksize >> 8), NULL); + + if (ret != OK) + { + return ret; + } + + return OK; +} + +int sdio_enable_function(FAR struct sdio_dev_s *dev, uint8_t function) +{ + int ret; + uint8_t value; + + /* Read current I/O Enable register */ + + ret = sdio_io_rw_direct(dev, false, 0, SDIO_CCCR_IOEN, 0, &value); + if (ret != OK) + { + return ret; + } + + ret = sdio_io_rw_direct(dev, true, 0, SDIO_CCCR_IOEN, value | (1 << function), NULL); + + if (ret != OK) + { + return ret; + } + + /* Wait 10ms for function to be enabled */ + + int loops = 10; + + while (loops-- > 0) + { + up_mdelay(1); + + ret = sdio_io_rw_direct(dev, false, 0, SDIO_CCCR_IOEN, 0, &value); + if (ret != OK) + { + return ret; + } + + if (value & (1 << function)) + { + /* Function enabled */ + + wlinfo("Function %d enabled\n", function); + return OK; + } + } + return -ETIMEDOUT; +} + +int sdio_enable_interrupt(FAR struct sdio_dev_s *dev, uint8_t function) +{ + int ret; + uint8_t value; + + /* Read current Int Enable register */ + + ret = sdio_io_rw_direct(dev, false, 0, SDIO_CCCR_INTEN, 0, &value); + if (ret != OK) + { + return ret; + } + + return sdio_io_rw_direct(dev, true, 0, SDIO_CCCR_INTEN, value | (1 << function), NULL); +} diff --git a/include/fixedmath.h b/include/fixedmath.h index 665179c4271..bd8383672e9 100644 --- a/include/fixedmath.h +++ b/include/fixedmath.h @@ -1,7 +1,7 @@ /**************************************************************************** * include/fixedmath.h * - * Copyright (C) 2008 Gregory Nutt. All rights reserved. + * Copyright (C) 2008, 2017 Gregory Nutt. All rights reserved. * Author: Gregory Nutt * * Redistribution and use in source and binary forms, with or without @@ -40,6 +40,7 @@ * Included Files ****************************************************************************/ +#include #include /**************************************************************************** @@ -124,7 +125,7 @@ #define ub8toi(a) ((a) >> 8) /* Conversion to unsigned integer */ #define itob8(i) (((b8_t)(i)) << 8) /* Conversion from integer */ #define uitoub8(i) (((ub8_t)(i)) << 8) /* Conversion from unsigned integer */ -#define b8tof(b) (((float)b)/256.0) /* Conversion to float */ +#define b8tof(b) (((float)(b))/256.0) /* Conversion to float */ #define ftob8(f) (b8_t)(((f)*256.0)) /* Conversion from float */ #define b8trunc(a) ((a) & 0xff00) /* Truncate to integer b8 */ #define b8round(a) (((a)+0x0080) & 0xff00) /* Round to integer b8 */ @@ -138,13 +139,13 @@ #define b8addi(a,i) ((a)+itob8(i)) /* Add integer from b16 */ #define b8subb8(a,b) ((a)-(b)) /* Subtraction */ #define b8subi(a,i) ((a)-itob8(i)) /* Subtract integer from b8 */ -#define b8mulb8(a,b) b16tob8((b16_t)(a)*(b16_t)(b) /* Muliplication */ -#define ub8mulub8(a,b) ub16toub8((ub16_t)(a)*(ub16_t)(b) /* Muliplication */ +#define b8mulb8(a,b) (b16tob8((b16_t)(a)*(b16_t)(b)) /* Muliplication */ +#define ub8mulub8(a,b) (ub16toub8((ub16_t)(a)*(ub16_t)(b)) /* Muliplication */ #define b8muli(a,i) ((a)*(i)) /* Simple multiplication by integer */ #define b8sqr(a) b8mulb8(a,a) /* Square */ #define ub8sqr(a) ub8mulub8(a,a) /* Square */ -#define b8divb8(a,b) b8tob16(a)/(b16_t)(b) /* Division */ -#define ub8divub8(a,b) ub8toub16(a)/(ub16_t)(b) /* Division */ +#define b8divb8(a,b) (b8tob16(a)/(b16_t)(b)) /* Division */ +#define ub8divub8(a,b) (ub8toub16(a)/(ub16_t)(b)) /* Division */ #define b8divi(a,i) ((a)/(i)) /* Simple division by integer */ #define b8idiv(i,j) (((i)<<8)/j) /* Division of integer, b8 result */ @@ -156,7 +157,7 @@ #define ub16toi(a) ((a) >> 16) /* Conversion to unsgined integer */ #define itob16(i) (((b16_t)(i)) << 16) /* Conversion from integer */ #define uitoub16(i) (((ub16_t)(i)) << 16) /* Conversion from unsigned integer */ -#define b16tof(b) (((float)b)/65536.0) /* Conversion to float */ +#define b16tof(b) (((float)(b))/65536.0) /* Conversion to float */ #define ftob16(f) (b16_t)(((f)*65536.0)) /* Conversion from float */ #define b16trunc(a) ((a) & 0xffff0000) /* Truncate to integer */ #define b16round(a) (((a)+0x00008000) & 0xffff0000) @@ -189,6 +190,27 @@ # define b16divb16(a,b) (b16_t)(b16tob32(a)/(b32_t)(b)) # define ub16divub16(a,b) (ub16_t)(ub16toub32(a)/(ub32_t)(b)) + +/* Square root operators */ + +# define ub16sqrtub16(a) ub32sqrtub16(ub16toub32(a)) +#else +# define ub16sqrtub16(a) ub8toub16(ub16sqrtub8(a)) +#endif + +/* 64-bit values with 32 bits of precision ********************************/ + +#ifdef CONFIG_HAVE_LONG_LONG +/* Conversions */ + +#define b32toi(a) ((a) >> 32) /* Conversion to integer */ +#define itob32(i) (((b32_t)(i)) << 32) /* Conversion from integer */ +#define uitoub32(i) (((ub32_t)(i)) << 32) /* Conversion from unsigned integer */ +#define b32tod(b) (((double)(b))/((long long)1 << 32)) /* Conversion to double */ +#define dtob32(f) (b32_t)(((f)*(double)((long long)1 << 32))) /* Conversion from double */ +#define b32trunc(a) ((a) & 0xffffffff00000000) /* Truncate to integer */ +#define b32round(a) (((a)+0x0000000080000000) & 0xffffffff00000000) +#define b32frac(a) ((a) & 0x00000000ffffffff) /* Take fractional part */ #endif /**************************************************************************** @@ -240,6 +262,13 @@ b16_t b16sin(b16_t rad); b16_t b16cos(b16_t rad); b16_t b16atan2(b16_t y, b16_t x); +/* Square root operators */ + +#ifdef CONFIG_HAVE_LONG_LONG +ub16_t ub32sqrtub16(ub32_t a); +#endif +ub8_t ub16sqrtub8(ub16_t a); + #undef EXTERN #if defined(__cplusplus) } diff --git a/include/nuttx/analog/opamp.h b/include/nuttx/analog/opamp.h new file mode 100644 index 00000000000..a0f3d55be07 --- /dev/null +++ b/include/nuttx/analog/opamp.h @@ -0,0 +1,109 @@ +/************************************************************************************ + * include/nuttx/analog/opamp.h + * + * Copyright (C) 2017 Gregory Nutt. All rights reserved. + * Author: Mateusz Szafoni + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ************************************************************************************/ + +#ifndef __INCLUDE_NUTTX_ANALOG_OPAMP_H +#define __INCLUDE_NUTTX_ANALOG_OPAMP_H + +/************************************************************************************ + * Included Files + ************************************************************************************/ + +#include +#include + +#include +#include +#include +#include +#include + +/************************************************************************************ + * Public Types + ************************************************************************************/ + +struct opamp_dev_s; +struct opamp_ops_s +{ + /* Configure the OPAMP. This method is called the first time that the OPAMP + * device is opened. This will occur when the port is first opened. + * This setup includes configuring and attaching OPAMP interrupts. Interrupts + * are all disabled upon return. + */ + + CODE int (*ao_setup)(FAR struct opamp_dev_s *dev); + + /* Disable the OPAMP. This method is called when the OPAMP device is closed. + * This method reverses the operation the setup method. + * Works only if OPAMP device is not locked. + */ + + CODE void (*ao_shutdown)(FAR struct opamp_dev_s *dev); + + /* All ioctl calls will be routed through this method */ + + CODE int (*ao_ioctl)(FAR struct opamp_dev_s *dev, int cmd, unsigned long arg); +}; + +struct opamp_dev_s +{ +#ifdef CONFIG_OPAMP + /* Fields managed by common upper half OPAMP logic */ + + uint8_t ad_ocount; /* The number of times the device has been opened */ + sem_t ad_closesem; /* Locks out new opens while close is in progress */ +#endif + + /* Fields provided by lower half OPAMP logic */ + + FAR const struct opamp_ops_s *ad_ops; /* Arch-specific operations */ + FAR void *ad_priv; /* Used by the arch-specific logic */ +}; + +/************************************************************************************ + * Public Functions + ************************************************************************************/ + +#if defined(__cplusplus) +extern "C" +{ +#endif + +int opamp_register(FAR const char *path, FAR struct opamp_dev_s *dev); + +#if defined(__cplusplus) +} +#endif + +#endif /* __INCLUDE_NUTTX_ANALOG_OPAMP_H */ diff --git a/include/nuttx/sdio.h b/include/nuttx/sdio.h index 388c72fd196..035e267710f 100644 --- a/include/nuttx/sdio.h +++ b/include/nuttx/sdio.h @@ -328,6 +328,44 @@ #define SDIO_ACMD52 (SDIO_ACMDIDX52|MMCSD_R5_RESPONSE |MMCSD_NODATAXFR) #define SDIO_ACMD53 (SDIO_ACMDIDX53|MMCSD_R5_RESPONSE |MMCSD_NODATAXFR) +/* SDIO Card Common Control Registers definitions + * see https://www.sdcard.org/developers/overview/sdio/ + * sdio_spec/Simplified_SDIO_Card_Spec.pdf */ + +#define SDIO_CCCR_REV 0x00 /* CCCR/SDIO Revision */ +#define SDIO_CCCR_SD_SPEC_REV 0x01 /* SD Specification Revision */ +#define SDIO_CCCR_IOEN 0x02 /* I/O Enable */ +#define SDIO_CCCR_IORDY 0x03 /* I/O Ready */ +#define SDIO_CCCR_INTEN 0x04 /* Int Enable */ +#define SDIO_CCCR_INTPEND 0x05 /* Int Pending */ +#define SDIO_CCCR_IOABORT 0x06 /* I/O Abort */ +#define SDIO_CCCR_BUS_IF 0x07 /* Bus Interface Control */ +#define SDIO_CCCR_CARD_CAP 0x08 /* Card Capabilitiy */ +#define SDIO_CCCR_CCP 0x09 /* Common CIS Pointer */ +#define SDIO_CCCR_BUS_SUSP 0x0C /* Bus Suspend */ +#define SDIO_CCCR_FUNCSEL 0x0D /* Function Select */ +#define SDIO_CCCR_EXEC_FLAGS 0x0E /* Exec Flags */ +#define SDIO_CCCR_RDY_FLAGS 0x0F /* Ready Flags */ +#define SDIO_CCCR_FN0_BLKSIZE_0 0x10 /* FN0 Block Size */ +#define SDIO_CCCR_FN0_BLKSIZE_1 0x11 /* FN0 Block Size */ +#define SDIO_CCCR_POWER 0x12 /* Power Control */ +#define SDIO_CCCR_HIGHSPEED 0x13 /* High-Speed */ +#define SDIO_CCCR_RFU 0x14 /* Reserved for future use */ +#define SDIO_CCCR_VENDOR 0xF0 /* Reserved for Vendors */ + +#define SDIO_CCCR_BUS_IF_WIDTH_MASK 0x03 /* Bus width configuration */ +#define SDIO_CCCR_BUS_IF_1_BIT 0x01 /* 1 bit bus width setting */ +#define SDIO_CCCR_BUS_IF_4_BITS 0x02 /* 4 bits bus width setting */ + +#define SDIO_FBR_SHIFT 8 /* FBR bit shift */ +#define SDIO_FN1_BR_BASE (1 << SDIO_FBR_SHIFT) /* Func 1 registers base */ +#define SDIO_FN2_BR_BASE (2 << SDIO_FBR_SHIFT) /* Func 2 registers base */ +#define SDIO_FN3_BR_BASE (3 << SDIO_FBR_SHIFT) /* Func 3 registers base */ +#define SDIO_FN4_BR_BASE (4 << SDIO_FBR_SHIFT) /* Func 4 registers base */ +#define SDIO_FN5_BR_BASE (5 << SDIO_FBR_SHIFT) /* Func 5 registers base */ +#define SDIO_FN6_BR_BASE (6 << SDIO_FBR_SHIFT) /* Func 6 registers base */ +#define SDIO_FN7_BR_BASE (7 << SDIO_FBR_SHIFT) /* Func 7 registers base */ + /**************************************************************************** * Name: SDIO_LOCK * diff --git a/include/nuttx/wireless/ieee80211/bcmf_board.h b/include/nuttx/wireless/ieee80211/bcmf_board.h index a404fd4160a..868712c6c39 100644 --- a/include/nuttx/wireless/ieee80211/bcmf_board.h +++ b/include/nuttx/wireless/ieee80211/bcmf_board.h @@ -41,6 +41,7 @@ ****************************************************************************/ #include +#include #ifdef __cplusplus #define EXTERN extern "C" @@ -102,6 +103,22 @@ void bcmf_board_power(int minor, bool power); void bcmf_board_reset(int minor, bool reset); +/************************************************************************************ + * Function: bcmf_board_setup_oob_irq + * + * Description: + * Board specific function called from Broadcom FullMAC driver + * that must be implemented to use WLAN chip interrupt signal + * + * Parameters: + * minor - zero based minor device number which is unique + * for each wlan device. + * func - WLAN chip callback function that must be called on gpio event + * arg - WLAN chip internal structure that must be passed to callback + ************************************************************************************/ + +void bcmf_board_setup_oob_irq(int minor, xcpt_t func, void *arg); + #undef EXTERN #ifdef __cplusplus } diff --git a/include/nuttx/wireless/ieee80211/bcmf_netdev.h b/include/nuttx/wireless/ieee80211/bcmf_netdev.h new file mode 100644 index 00000000000..10e8157f1ff --- /dev/null +++ b/include/nuttx/wireless/ieee80211/bcmf_netdev.h @@ -0,0 +1,85 @@ +/**************************************************************************** + * include/nuttx/wireless/ieee80211/bcmf_netdev.h + * + * Copyright (C) 2017 Gregory Nutt. All rights reserved. + * Author: Gregory Nutt + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + +#ifndef __INCLUDE_NUTTX_WIRELESS_IEEE80211_BCMF_NETDEV_H +#define __INCLUDE_NUTTX_WIRELESS_IEEE80211_BCMF_NETDEV_H + +/**************************************************************************** + * Included Files + ****************************************************************************/ + +#include + +#ifdef __cplusplus +#define EXTERN extern "C" +extern "C" +{ +#else +#define EXTERN extern +#endif + +/**************************************************************************** + * Public Types + ****************************************************************************/ + +/**************************************************************************** + * Public Function Prototypes + ****************************************************************************/ + +/**************************************************************************** + * Name: bcmf_netdev_register + * + * Description: + * Initialize the Broadcom 43362 controller and driver + * + * Parameters: + * intf - In the case where there are multiple EMACs, this value + * identifies which EMAC is to be initialized. + * + * Returned Value: + * OK on success; Negated errno on failure. + * + * Assumptions: + * + ****************************************************************************/ + +int bcmf_netdev_register(int intf); + +#undef EXTERN +#ifdef __cplusplus +} +#endif + +#endif /* __INCLUDE_NUTTX_WIRELESS_IEEE80211_BCMF_NETDEV_H */ diff --git a/include/nuttx/wireless/ieee80211/mmc_sdio.h b/include/nuttx/wireless/ieee80211/mmc_sdio.h new file mode 100644 index 00000000000..d460f0ad354 --- /dev/null +++ b/include/nuttx/wireless/ieee80211/mmc_sdio.h @@ -0,0 +1,28 @@ +#ifndef caca +#define caca +#include +#include + +int sdio_probe(FAR struct sdio_dev_s *dev); + +int sdio_set_wide_bus(struct sdio_dev_s *dev); + +int sdio_set_blocksize(FAR struct sdio_dev_s *dev, uint8_t function, + uint16_t blocksize); + +int sdio_enable_function(FAR struct sdio_dev_s *dev, uint8_t function); + +int sdio_enable_interrupt(FAR struct sdio_dev_s *dev, uint8_t function); + +int sdio_sendcmdpoll(FAR struct sdio_dev_s *dev, uint32_t cmd, uint32_t arg); + +int sdio_io_rw_direct(FAR struct sdio_dev_s *dev, bool write, + uint8_t function, uint32_t address, + uint8_t inb, uint8_t* outb); + +int sdio_io_rw_extended(FAR struct sdio_dev_s *dev, bool write, + uint8_t function, uint32_t address, + bool inc_addr, uint8_t *buf, + unsigned int blocklen, unsigned int nblocks); + +#endif diff --git a/include/nuttx/wireless/wireless.h b/include/nuttx/wireless/wireless.h index a07a4cbf708..5455e14d4f4 100644 --- a/include/nuttx/wireless/wireless.h +++ b/include/nuttx/wireless/wireless.h @@ -195,7 +195,98 @@ /* Scan-related */ -#define IW_SCAN_MAX_DATA 4096 /* Maximum size of returned data */ +/* Scanning request flags */ +#define IW_SCAN_DEFAULT 0x0000 /* Default scan of the driver */ +#define IW_SCAN_ALL_ESSID 0x0001 /* Scan all ESSIDs */ +#define IW_SCAN_THIS_ESSID 0x0002 /* Scan only this ESSID */ +#define IW_SCAN_ALL_FREQ 0x0004 /* Scan all Frequencies */ +#define IW_SCAN_THIS_FREQ 0x0008 /* Scan only this Frequency */ +#define IW_SCAN_ALL_MODE 0x0010 /* Scan all Modes */ +#define IW_SCAN_THIS_MODE 0x0020 /* Scan only this Mode */ +#define IW_SCAN_ALL_RATE 0x0040 /* Scan all Bit-Rates */ +#define IW_SCAN_THIS_RATE 0x0080 /* Scan only this Bit-Rate */ +/* struct iw_scan_req scan_type */ +#define IW_SCAN_TYPE_ACTIVE 0 +#define IW_SCAN_TYPE_PASSIVE 1 +/* Maximum size of returned data */ +#define IW_SCAN_MAX_DATA 4096 /* In bytes */ + +/* Scan capability flags - in (struct iw_range *)->scan_capa */ +#define IW_SCAN_CAPA_NONE 0x00 +#define IW_SCAN_CAPA_ESSID 0x01 +#define IW_SCAN_CAPA_BSSID 0x02 +#define IW_SCAN_CAPA_CHANNEL 0x04 +#define IW_SCAN_CAPA_MODE 0x08 +#define IW_SCAN_CAPA_RATE 0x10 +#define IW_SCAN_CAPA_TYPE 0x20 +#define IW_SCAN_CAPA_TIME 0x40 + +#define IW_SCAN_MAX_DATA 4096 /* Maximum size of returned data */ + +/* SIOCSIWAUTH/SIOCGIWAUTH struct iw_param flags */ + +#define IW_AUTH_INDEX 0x0FFF +#define IW_AUTH_FLAGS 0xF000 + +/* SIOCSIWAUTH/SIOCGIWAUTH parameters (0 .. 4095) + * (IW_AUTH_INDEX mask in struct iw_param flags; this is the index of the + * parameter that is being set/get to; value will be read/written to + * struct iw_param value field) + */ + +#define IW_AUTH_WPA_VERSION 0 +#define IW_AUTH_CIPHER_PAIRWISE 1 +#define IW_AUTH_CIPHER_GROUP 2 +#define IW_AUTH_KEY_MGMT 3 +#define IW_AUTH_TKIP_COUNTERMEASURES 4 +#define IW_AUTH_DROP_UNENCRYPTED 5 +#define IW_AUTH_80211_AUTH_ALG 6 +#define IW_AUTH_WPA_ENABLED 7 +#define IW_AUTH_RX_UNENCRYPTED_EAPOL 8 +#define IW_AUTH_ROAMING_CONTROL 9 +#define IW_AUTH_PRIVACY_INVOKED 10 + +/* IW_AUTH_WPA_VERSION values (bit field) */ + +#define IW_AUTH_WPA_VERSION_DISABLED 0x00000001 +#define IW_AUTH_WPA_VERSION_WPA 0x00000002 +#define IW_AUTH_WPA_VERSION_WPA2 0x00000004 + +/* IW_AUTH_PAIRWISE_CIPHER and IW_AUTH_GROUP_CIPHER values (bit field) */ + +#define IW_AUTH_CIPHER_NONE 0x00000001 +#define IW_AUTH_CIPHER_WEP40 0x00000002 +#define IW_AUTH_CIPHER_TKIP 0x00000004 +#define IW_AUTH_CIPHER_CCMP 0x00000008 +#define IW_AUTH_CIPHER_WEP104 0x00000010 + +/* IW_AUTH_KEY_MGMT values (bit field) */ + +#define IW_AUTH_KEY_MGMT_802_1X 1 +#define IW_AUTH_KEY_MGMT_PSK 2 + +/* IW_AUTH_80211_AUTH_ALG values (bit field) */ + +#define IW_AUTH_ALG_OPEN_SYSTEM 0x00000001 +#define IW_AUTH_ALG_SHARED_KEY 0x00000002 +#define IW_AUTH_ALG_LEAP 0x00000004 + +/* IW_AUTH_ROAMING_CONTROL values */ + +#define IW_AUTH_ROAMING_ENABLE 0 /* driver/firmware based roaming */ +#define IW_AUTH_ROAMING_DISABLE 1 /* user space program used for roaming + * control */ + +/* SIOCSIWENCODEEXT definitions */ + +#define IW_ENCODE_SEQ_MAX_SIZE 8 + +/* struct iw_encode_ext ->alg */ + +#define IW_ENCODE_ALG_NONE 0 +#define IW_ENCODE_ALG_WEP 1 +#define IW_ENCODE_ALG_TKIP 2 +#define IW_ENCODE_ALG_CCMP 3 /************************************************************************************ * Public Types @@ -318,5 +409,67 @@ struct iw_event union iwreq_data u; /* Fixed IOCTL payload */ }; +/* WPA support */ + +struct iw_encode_ext +{ + uint32_t ext_flags; /* IW_ENCODE_EXT_* */ + uint8_t tx_seq[IW_ENCODE_SEQ_MAX_SIZE]; /* LSB first */ + uint8_t rx_seq[IW_ENCODE_SEQ_MAX_SIZE]; /* LSB first */ + struct sockaddr addr; /* ff:ff:ff:ff:ff:ff for broadcast/multicast + * (group) keys or unicast address for + * individual keys */ + uint16_t alg; /* IW_ENCODE_ALG_* */ + uint16_t key_len; + uint8_t key[0]; +}; + +/* + * Optional data for scan request + * + * Note: these optional parameters are controlling parameters for the + * scanning behavior, these do not apply to getting scan results + * (SIOCGIWSCAN). Drivers are expected to keep a local BSS table and + * provide a merged results with all BSSes even if the previous scan + * request limited scanning to a subset, e.g., by specifying an SSID. + * Especially, scan results are required to include an entry for the + * current BSS if the driver is in Managed mode and associated with an AP. + */ +struct iw_scan_req +{ + uint8_t scan_type; /* IW_SCAN_TYPE_{ACTIVE,PASSIVE} */ + uint8_t essid_len; + uint8_t num_channels; /* num entries in channel_list; + * 0 = scan all allowed channels */ + uint8_t flags; /* reserved as padding; use zero, this may + * be used in the future for adding flags + * to request different scan behavior */ + struct sockaddr bssid; /* ff:ff:ff:ff:ff:ff for broadcast BSSID or + * individual address of a specific BSS */ + + /* + * Use this ESSID if IW_SCAN_THIS_ESSID flag is used instead of using + * the current ESSID. This allows scan requests for specific ESSID + * without having to change the current ESSID and potentially breaking + * the current association. + */ + uint8_t essid[IW_ESSID_MAX_SIZE]; + + /* + * Optional parameters for changing the default scanning behavior. + * These are based on the MLME-SCAN.request from IEEE Std 802.11. + * TU is 1.024 ms. If these are set to 0, driver is expected to use + * reasonable default values. min_channel_time defines the time that + * will be used to wait for the first reply on each channel. If no + * replies are received, next channel will be scanned after this. If + * replies are received, total time waited on the channel is defined by + * max_channel_time. + */ + uint32_t min_channel_time; /* in TU */ + uint32_t max_channel_time; /* in TU */ + + struct iw_freq channel_list[IW_MAX_FREQUENCIES]; +}; + #endif /* CONFIG_DRIVERS_WIRELESS */ #endif /* __INCLUDE_NUTTX_WIRELESS_WIRELESS_H */ diff --git a/libc/fixedmath/Make.defs b/libc/fixedmath/Make.defs index e4534184c96..2c773453437 100644 --- a/libc/fixedmath/Make.defs +++ b/libc/fixedmath/Make.defs @@ -36,6 +36,7 @@ # Add the fixed precision math C files to the build CSRCS += lib_fixedmath.c lib_b16sin.c lib_b16cos.c lib_b16atan2.c +CSRCS += lib_ubsqrt.c # Add the fixed precision math directory to the build diff --git a/libc/fixedmath/lib_ubsqrt.c b/libc/fixedmath/lib_ubsqrt.c new file mode 100644 index 00000000000..9e1b26a5af6 --- /dev/null +++ b/libc/fixedmath/lib_ubsqrt.c @@ -0,0 +1,136 @@ +/**************************************************************************** + * libc/fixedmath/lib_ubsqrt.c + * + * Copyright (C) 2014,2017 Jussi Kivilinna + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * 3. Neither the name NuttX nor the names of its contributors may be + * used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED + * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + ****************************************************************************/ + +/**************************************************************************** + * Included Files + ****************************************************************************/ + +#include +#include + +/**************************************************************************** + * Public Functions + ****************************************************************************/ + +#ifdef CONFIG_HAVE_LONG_LONG + +/**************************************************************************** + * Name: ub32sqrtub16 + * + * Description: + * ub32sqrtub16 calculates square root for 'a' + * + ****************************************************************************/ + +ub16_t ub32sqrtub16(ub32_t a) +{ + uint64_t n = a; + uint64_t xk = n; + + /* Direct conversion of ub32_t to uint64_t is same operation as multiplying + * 'a' by 2^32, therefore n = a * 2^32. + */ + + if (xk == UINT64_MAX) + { + /* Avoid 'xk + n / xk' overflow on first iteration. */ + + xk = 1ULL << 63; + } + + do + { + uint64_t xk1 = (xk + n / xk) >> 1; + + if (xk1 >= xk) + { + break; + } + + xk = xk1; + } + while (1); + + /* 'xk' now holds 'sqrt(n)' => 'sqrt(a * 2^32)' => 'sqrt(a) * 2^16', thus + * 'xk' holds square root of 'a' in ub16_t format. + */ + + return (ub16_t)xk; +} + +#endif + +/**************************************************************************** + * Name: ub16sqrtub8 + * + * Description: + * ub16sqrtub8 calculates square root for 'a' + * + ****************************************************************************/ + +ub8_t ub16sqrtub8(ub16_t a) +{ + uint32_t n = a; + uint32_t xk = n; + + /* Direct conversion of ub16_t to uint32_t is same operation as multiplying + * 'a' by 2^16, therefore n = a * 2^16. + */ + + if (xk == UINT32_MAX) + { + /* Avoid 'xk + n / xk' overflow on first iteration. */ + + xk = 1U << 31; + } + + do + { + uint32_t xk1 = (xk + n / xk) >> 1; + + if (xk1 >= xk) + { + break; + } + + xk = xk1; + } + while (1); + + /* 'xk' now holds 'sqrt(n)' => 'sqrt(a * 2^16)' => 'sqrt(a) * 2^8', thus + * 'xk' holds square root of 'a' in ub8_t format. + */ + + return (ub8_t)xk; +} diff --git a/net/netdev/netdev_register.c b/net/netdev/netdev_register.c index 8da52f91510..745da4f50a7 100644 --- a/net/netdev/netdev_register.c +++ b/net/netdev/netdev_register.c @@ -70,10 +70,10 @@ #if defined(CONFIG_NET_SLIP) # define NETDEV_DEFAULT_FORMAT NETDEV_SLIP_FORMAT +#elif defined(CONFIG_DRIVERS_IEEE80211) /* Usually also has CONFIG_NET_ETHERNET */ +# define NETDEV_DEFAULT_FORMAT NETDEV_WLAN_FORMAT #elif defined(CONFIG_NET_ETHERNET) # define NETDEV_DEFAULT_FORMAT NETDEV_ETH_FORMAT -#elif defined(CONFIG_DRIVERS_IEEE80211) -# define NETDEV_DEFAULT_FORMAT NETDEV_WLAN_FORMAT #elif defined(CONFIG_NET_6LOWPAN) # define NETDEV_DEFAULT_FORMAT NETDEV_WPAN_FORMAT #else /* if defined(CONFIG_NET_LOOPBACK) */ @@ -332,7 +332,7 @@ int netdev_register(FAR struct net_driver_s *dev, enum net_lltype_e lltype) #endif net_unlock(); -#ifdef CONFIG_NET_ETHERNET +#if defined(CONFIG_NET_ETHERNET) || defined(CONFIG_DRIVERS_IEEE80211) ninfo("Registered MAC: %02x:%02x:%02x:%02x:%02x:%02x as dev: %s\n", dev->d_mac.ether.ether_addr_octet[0], dev->d_mac.ether.ether_addr_octet[1], dev->d_mac.ether.ether_addr_octet[2], dev->d_mac.ether.ether_addr_octet[3], diff --git a/net/netdev/netdev_unregister.c b/net/netdev/netdev_unregister.c index 57c6754a7cd..b41784ee3c1 100644 --- a/net/netdev/netdev_unregister.c +++ b/net/netdev/netdev_unregister.c @@ -128,10 +128,12 @@ int netdev_unregister(FAR struct net_driver_s *dev) #ifdef CONFIG_NET_ETHERNET ninfo("Unregistered MAC: %02x:%02x:%02x:%02x:%02x:%02x as dev: %s\n", - dev->d_mac.ether_addr_octet[0], dev->d_mac.ether_addr_octet[1], - dev->d_mac.ether_addr_octet[2], dev->d_mac.ether_addr_octet[3], - dev->d_mac.ether_addr_octet[4], dev->d_mac.ether_addr_octet[5], - dev->d_ifname); + dev->d_mac.ether.ether_addr_octet[0], + dev->d_mac.ether.ether_addr_octet[1], + dev->d_mac.ether.ether_addr_octet[2], + dev->d_mac.ether.ether_addr_octet[3], + dev->d_mac.ether.ether_addr_octet[4], + dev->d_mac.ether.ether_addr_octet[5], dev->d_ifname); #else ninfo("Registered dev: %s\n", dev->d_ifname); #endif diff --git a/net/pkt/pkt.h b/net/pkt/pkt.h index aa6237da818..b7b6e0b0a92 100644 --- a/net/pkt/pkt.h +++ b/net/pkt/pkt.h @@ -43,6 +43,7 @@ #include #include +#include #ifdef CONFIG_NET_PKT @@ -94,9 +95,9 @@ extern "C" * Public Function Prototypes ****************************************************************************/ -struct eth_hdr_s; /* Forward reference */ +struct net_driver_s; /* Forward reference */ +struct eth_hdr_s; /* Forward reference */ -/* Defined in pkt_conn.c ****************************************************/ /**************************************************************************** * Name: pkt_initialize() * @@ -158,7 +159,6 @@ struct pkt_conn_s *pkt_active(FAR struct eth_hdr_s *buf); struct pkt_conn_s *pkt_nextconn(FAR struct pkt_conn_s *conn); -/* Defined in pkt_callback.c ************************************************/ /**************************************************************************** * Name: pkt_callback * @@ -176,7 +176,6 @@ struct pkt_conn_s *pkt_nextconn(FAR struct pkt_conn_s *conn); uint16_t pkt_callback(FAR struct net_driver_s *dev, FAR struct pkt_conn_s *conn, uint16_t flags); -/* Defined in pkt_input.c ***************************************************/ /**************************************************************************** * Name: pkt_input * diff --git a/sched/pthread/pthread.h b/sched/pthread/pthread.h index 69e08e1445a..14a5797bb82 100644 --- a/sched/pthread/pthread.h +++ b/sched/pthread/pthread.h @@ -121,7 +121,7 @@ void pthread_mutex_inconsistent(FAR struct pthread_tcb_s *tcb); # define pthread_mutex_give(m) pthread_givesemaphore(&(m)->sem) #endif -#ifdef CONFIG_CANCELLATION_POINTS +#if defined(CONFIG_CANCELLATION_POINTS) && !defined(CONFIG_PTHREAD_MUTEX_UNSAFE) uint16_t pthread_disable_cancel(void); void pthread_enable_cancel(uint16_t oldstate); #else