diff --git a/bsp/stm32/libraries/HAL_Drivers/drv_common.c b/bsp/stm32/libraries/HAL_Drivers/drv_common.c index f150d81fefe77b691ce9c69fc9881a5db7f56a3d..d2aecc508c4f7021d7d6ee0804ea5abf77f5d9d8 100644 --- a/bsp/stm32/libraries/HAL_Drivers/drv_common.c +++ b/bsp/stm32/libraries/HAL_Drivers/drv_common.c @@ -44,7 +44,11 @@ void rt_hw_systick_init(void) * This is the timer interrupt service routine. * */ +#ifdef RT_USING_LWP +void SysTick_Process(void) +#else void SysTick_Handler(void) +#endif /* RT_USING_LWP */ { /* enter interrupt */ rt_interrupt_enter(); diff --git a/bsp/stm32/libraries/HAL_Drivers/drv_lcd.c b/bsp/stm32/libraries/HAL_Drivers/drv_lcd.c index 2ebd013edd8bed60408bf9a6117d2a1a8d511a05..1eee5b69a0f8b47b91b1718b91ec448b67acf8b4 100644 --- a/bsp/stm32/libraries/HAL_Drivers/drv_lcd.c +++ b/bsp/stm32/libraries/HAL_Drivers/drv_lcd.c @@ -338,7 +338,7 @@ int drv_lcd_hw_init(void) __exit: if (result != RT_EOK) { - rt_sem_delete(&_lcd.lcd_lock); + rt_sem_detach(&_lcd.lcd_lock); if (_lcd.lcd_info.framebuffer) { diff --git a/bsp/stm32/libraries/HAL_Drivers/drv_sdio.c b/bsp/stm32/libraries/HAL_Drivers/drv_sdio.c index 290c89e159f5b0291e2104bb0cdf64c90d7f8302..05e3df49ab1fdcb23708280adbd588500c36d371 100644 --- a/bsp/stm32/libraries/HAL_Drivers/drv_sdio.c +++ b/bsp/stm32/libraries/HAL_Drivers/drv_sdio.c @@ -352,7 +352,7 @@ static void rthw_sdio_send_command(struct rthw_sdio *sdio, struct sdio_pkg *pkg) /** * @brief This function send sdio request. - * @param sdio rthw_sdio + * @param host rt_mmcsd_host * @param req request * @retval None */ @@ -366,7 +366,7 @@ static void rthw_sdio_request(struct rt_mmcsd_host *host, struct rt_mmcsd_req *r if (req->cmd != RT_NULL) { - memset(&pkg, 0, sizeof(pkg)); + rt_memset(&pkg, 0, sizeof(pkg)); data = req->cmd->data; pkg.cmd = req->cmd; @@ -382,7 +382,7 @@ static void rthw_sdio_request(struct rt_mmcsd_host *host, struct rt_mmcsd_req *r pkg.buff = cache_buf; if (data->flags & DATA_DIR_WRITE) { - memcpy(cache_buf, data->buf, size); + rt_memcpy(cache_buf, data->buf, size); } } } @@ -391,13 +391,13 @@ static void rthw_sdio_request(struct rt_mmcsd_host *host, struct rt_mmcsd_req *r if ((data != RT_NULL) && (data->flags & DATA_DIR_READ) && ((rt_uint32_t)data->buf & (SDIO_ALIGN_LEN - 1))) { - memcpy(data->buf, cache_buf, data->blksize * data->blks); + rt_memcpy(data->buf, cache_buf, data->blksize * data->blks); } } if (req->stop != RT_NULL) { - memset(&pkg, 0, sizeof(pkg)); + rt_memset(&pkg, 0, sizeof(pkg)); pkg.cmd = req->stop; rthw_sdio_send_command(sdio, &pkg); } @@ -524,11 +524,11 @@ void rthw_sdio_irq_update(struct rt_mmcsd_host *host, rt_int32_t enable) } /** - * @brief This function delect sdcard. + * @brief This function detect sdcard. * @param host rt_mmcsd_host * @retval 0x01 */ -static rt_int32_t rthw_sd_delect(struct rt_mmcsd_host *host) +static rt_int32_t rthw_sd_detect(struct rt_mmcsd_host *host) { LOG_D("try to detect device"); return 0x01; @@ -604,7 +604,7 @@ static const struct rt_mmcsd_host_ops ops = { rthw_sdio_request, rthw_sdio_iocfg, - rthw_sd_delect, + rthw_sd_detect, rthw_sdio_irq_update, }; diff --git a/bsp/stm32/libraries/STM32F4xx_HAL/CMSIS/Include/mpu_armv7.h b/bsp/stm32/libraries/STM32F4xx_HAL/CMSIS/Include/mpu_armv7.h index 01422033d087616db42542f90a0ce27e42fd0ad4..e9a7714b73d9086e91998e200d1981831e54fe37 100644 --- a/bsp/stm32/libraries/STM32F4xx_HAL/CMSIS/Include/mpu_armv7.h +++ b/bsp/stm32/libraries/STM32F4xx_HAL/CMSIS/Include/mpu_armv7.h @@ -103,8 +103,11 @@ #define ARM_MPU_RASR_EX(DisableExec, AccessPermission, AccessAttributes, SubRegionDisable, Size) \ ((((DisableExec ) << MPU_RASR_XN_Pos) & MPU_RASR_XN_Msk) | \ (((AccessPermission) << MPU_RASR_AP_Pos) & MPU_RASR_AP_Msk) | \ - (((AccessAttributes) ) & (MPU_RASR_TEX_Msk | MPU_RASR_S_Msk | MPU_RASR_C_Msk | MPU_RASR_B_Msk))) - + (((AccessAttributes) & (MPU_RASR_TEX_Msk | MPU_RASR_S_Msk | MPU_RASR_C_Msk | MPU_RASR_B_Msk))) | \ + (((SubRegionDisable) << MPU_RASR_SRD_Pos) & MPU_RASR_SRD_Msk) | \ + (((Size) << MPU_RASR_SIZE_Pos) & MPU_RASR_SIZE_Msk) | \ + (((MPU_RASR_ENABLE_Msk)))) + /** * MPU Region Attribute and Size Register Value * @@ -151,7 +154,7 @@ * \param InnerCp Configures the inner cache policy. * \param IsShareable Configures the memory as shareable or non-shareable. */ -#define ARM_MPU_ACCESS_NORMAL(OuterCp, InnerCp, IsShareable) ARM_MPU_ACCESS_((4U | (OuterCp)), IsShareable, ((InnerCp) & 2U), ((InnerCp) & 1U)) +#define ARM_MPU_ACCESS_NORMAL(OuterCp, InnerCp, IsShareable) ARM_MPU_ACCESS_((4U | (OuterCp)), IsShareable, ((InnerCp) >> 1U), ((InnerCp) & 1U)) /** * MPU Memory Access Attribute non-cacheable policy. diff --git a/bsp/stm32/stm32f429-st-disco/.config b/bsp/stm32/stm32f429-st-disco/.config index d2e8ecd25981e157843c9c841239f4a7fa259d98..3717f3362625f1953290cb2f5b1889b513780457 100644 --- a/bsp/stm32/stm32f429-st-disco/.config +++ b/bsp/stm32/stm32f429-st-disco/.config @@ -1,13 +1,12 @@ -# -# Automatically generated file; DO NOT EDIT. -# RT-Thread Configuration -# +# Generated by Kconfiglib (https://github.com/ulfalizer/Kconfiglib) # # RT-Thread Kernel # CONFIG_RT_NAME_MAX=8 # CONFIG_RT_USING_ARCH_DATA_TYPE is not set +CONFIG_RT_USING_SMART=y +CONFIG_RT_USING_MOM=y # CONFIG_RT_USING_SMP is not set CONFIG_RT_ALIGN_SIZE=4 # CONFIG_RT_THREAD_PRIORITY_8 is not set @@ -43,6 +42,7 @@ CONFIG_RT_USING_EVENT=y CONFIG_RT_USING_MAILBOX=y CONFIG_RT_USING_MESSAGEQUEUE=y CONFIG_RT_USING_SIGNALS=y +# end of Inter-Thread communication # # Memory Management @@ -50,10 +50,12 @@ CONFIG_RT_USING_SIGNALS=y CONFIG_RT_USING_MEMPOOL=y CONFIG_RT_USING_MEMHEAP=y # CONFIG_RT_USING_NOHEAP is not set -# CONFIG_RT_USING_SMALL_MEM is not set +CONFIG_RT_USING_SMALL_MEM=y # CONFIG_RT_USING_SLAB is not set -CONFIG_RT_USING_MEMHEAP_AS_HEAP=y +# CONFIG_RT_USING_MEMHEAP_AS_HEAP is not set +CONFIG_RT_USING_MEMTRACE=y CONFIG_RT_USING_HEAP=y +# end of Memory Management # # Kernel Device Object @@ -64,12 +66,15 @@ CONFIG_RT_USING_DEVICE=y CONFIG_RT_USING_CONSOLE=y CONFIG_RT_CONSOLEBUF_SIZE=128 CONFIG_RT_CONSOLE_DEVICE_NAME="uart1" -CONFIG_RT_VER_NUM=0x40003 -CONFIG_ARCH_ARM=y +# end of Kernel Device Object + +CONFIG_RT_VER_NUM=0x50000 +# end of RT-Thread Kernel + CONFIG_RT_USING_CPU_FFS=y +CONFIG_ARCH_ARM=y CONFIG_ARCH_ARM_CORTEX_M=y CONFIG_ARCH_ARM_CORTEX_M4=y -# CONFIG_ARCH_CPU_STACK_GROWS_UPWARD is not set # # RT-Thread Components @@ -83,11 +88,14 @@ CONFIG_RT_MAIN_THREAD_PRIORITY=10 # C++ features # # CONFIG_RT_USING_CPLUSPLUS is not set +# end of C++ features # # Command shell # CONFIG_RT_USING_FINSH=y +CONFIG_RT_USING_MSH=y +CONFIG_FINSH_USING_MSH=y CONFIG_FINSH_THREAD_NAME="tshell" CONFIG_FINSH_USING_HISTORY=y CONFIG_FINSH_HISTORY_LINES=5 @@ -98,31 +106,32 @@ CONFIG_FINSH_THREAD_PRIORITY=20 CONFIG_FINSH_THREAD_STACK_SIZE=4096 CONFIG_FINSH_CMD_SIZE=80 # CONFIG_FINSH_USING_AUTH is not set -CONFIG_FINSH_USING_MSH=y -CONFIG_FINSH_USING_MSH_DEFAULT=y -CONFIG_FINSH_USING_MSH_ONLY=y CONFIG_FINSH_ARG_MAX=10 +# end of Command shell # # Device virtual file system # CONFIG_RT_USING_DFS=y CONFIG_DFS_USING_WORKDIR=y -CONFIG_DFS_FILESYSTEMS_MAX=2 -CONFIG_DFS_FILESYSTEM_TYPES_MAX=2 +CONFIG_DFS_FILESYSTEMS_MAX=3 +CONFIG_DFS_FILESYSTEM_TYPES_MAX=3 CONFIG_DFS_FD_MAX=16 # CONFIG_RT_USING_DFS_MNTTABLE is not set # CONFIG_RT_USING_DFS_ELMFAT is not set CONFIG_RT_USING_DFS_DEVFS=y -# CONFIG_RT_USING_DFS_ROMFS is not set +CONFIG_RT_USING_DFS_ROMFS=y +# CONFIG_RT_USING_DFS_CROMFS is not set # CONFIG_RT_USING_DFS_RAMFS is not set # CONFIG_RT_USING_DFS_UFFS is not set # CONFIG_RT_USING_DFS_JFFS2 is not set +# end of Device virtual file system # # Device Drivers # CONFIG_RT_USING_DEVICE_IPC=y +CONFIG_RT_UNAMED_PIPE_NUMBER=64 CONFIG_RT_PIPE_BUFSZ=512 # CONFIG_RT_USING_SYSTEM_WORKQUEUE is not set CONFIG_RT_USING_SERIAL=y @@ -135,16 +144,31 @@ CONFIG_RT_USING_I2C=y # CONFIG_RT_I2C_DEBUG is not set CONFIG_RT_USING_I2C_BITOPS=y # CONFIG_RT_I2C_BITOPS_DEBUG is not set +# CONFIG_RT_USING_PHY is not set CONFIG_RT_USING_PIN=y # CONFIG_RT_USING_ADC is not set # CONFIG_RT_USING_DAC is not set +# CONFIG_RT_USING_NULL is not set +# CONFIG_RT_USING_ZERO is not set +# CONFIG_RT_USING_RANDOM is not set # CONFIG_RT_USING_PWM is not set # CONFIG_RT_USING_MTD_NOR is not set # CONFIG_RT_USING_MTD_NAND is not set # CONFIG_RT_USING_PM is not set # CONFIG_RT_USING_RTC is not set -# CONFIG_RT_USING_SDIO is not set +CONFIG_RT_USING_SDIO=y +CONFIG_RT_SDIO_STACK_SIZE=512 +CONFIG_RT_SDIO_THREAD_PRIORITY=15 +CONFIG_RT_MMCSD_STACK_SIZE=1024 +CONFIG_RT_MMCSD_THREAD_PREORITY=22 +CONFIG_RT_MMCSD_MAX_PARTITION=16 +# CONFIG_RT_SDIO_DEBUG is not set CONFIG_RT_USING_SPI=y +# CONFIG_RT_USING_QSPI is not set +# CONFIG_RT_USING_SPI_MSD is not set +# CONFIG_RT_USING_SFUD is not set +# CONFIG_RT_USING_ENC28J60 is not set +# CONFIG_RT_USING_SPI_WIFI is not set # CONFIG_RT_USING_WDT is not set # CONFIG_RT_USING_AUDIO is not set # CONFIG_RT_USING_SENSOR is not set @@ -159,18 +183,24 @@ CONFIG_RT_USING_SPI=y # # CONFIG_RT_USING_USB_HOST is not set # CONFIG_RT_USING_USB_DEVICE is not set +# end of Using USB +# end of Device Drivers # # POSIX layer and C standard library # CONFIG_RT_USING_LIBC=y -CONFIG_RT_USING_PTHREADS=y -CONFIG_PTHREAD_NUM_MAX=8 +CONFIG_RT_USING_NEWLIB=y +# CONFIG_RT_USING_MUSL is not set +# CONFIG_RT_USING_PTHREADS is not set CONFIG_RT_USING_POSIX=y # CONFIG_RT_USING_POSIX_MMAP is not set # CONFIG_RT_USING_POSIX_TERMIOS is not set +# CONFIG_RT_USING_POSIX_GETLINE is not set # CONFIG_RT_USING_POSIX_AIO is not set +CONFIG_RT_USING_POSIX_CLOCKTIME=y # CONFIG_RT_USING_MODULE is not set +# end of POSIX layer and C standard library # # Network @@ -180,26 +210,32 @@ CONFIG_RT_USING_POSIX=y # Socket abstraction layer # # CONFIG_RT_USING_SAL is not set +# end of Socket abstraction layer # # Network interface device # # CONFIG_RT_USING_NETDEV is not set +# end of Network interface device # # light weight TCP/IP stack # # CONFIG_RT_USING_LWIP is not set +# end of light weight TCP/IP stack # # AT commands # # CONFIG_RT_USING_AT is not set +# end of AT commands +# end of Network # # VBUS(Virtual Software BUS) # # CONFIG_RT_USING_VBUS is not set +# end of VBUS(Virtual Software BUS) # # Utilities @@ -207,7 +243,20 @@ CONFIG_RT_USING_POSIX=y # CONFIG_RT_USING_RYM is not set # CONFIG_RT_USING_ULOG is not set # CONFIG_RT_USING_UTEST is not set -# CONFIG_RT_USING_LWP is not set +# CONFIG_RT_USING_RT_LINK is not set +# end of Utilities + +CONFIG_RT_USING_LWP=y +CONFIG_RT_LWP_MAX_NR=30 +CONFIG_LWP_TASK_STACK_SIZE=1536 +CONFIG_RT_CH_MSG_MAX_NR=1024 +CONFIG_LWP_CONSOLE_INPUT_BUFFER_SIZE=1024 +CONFIG_LWP_TID_MAX_NR=64 +# CONFIG_LWP_UNIX98_PTY is not set +CONFIG_RT_LWP_USING_MPU=y +CONFIG_RT_LWP_MPU_MAX_NR=2 +CONFIG_RT_LWP_USING_SHM=y +# end of RT-Thread Components # # RT-Thread online packages @@ -242,12 +291,17 @@ CONFIG_RT_USING_POSIX=y # Marvell WiFi # # CONFIG_PKG_USING_WLANMARVELL is not set +# end of Marvell WiFi # # Wiced WiFi # # CONFIG_PKG_USING_WLAN_WICED is not set +# end of Wiced WiFi + # CONFIG_PKG_USING_RW007 is not set +# end of Wi-Fi + # CONFIG_PKG_USING_COAP is not set # CONFIG_PKG_USING_NOPOLL is not set # CONFIG_PKG_USING_NETUTILS is not set @@ -256,6 +310,7 @@ CONFIG_RT_USING_POSIX=y # CONFIG_PKG_USING_AT_DEVICE is not set # CONFIG_PKG_USING_ATSRV_SOCKET is not set # CONFIG_PKG_USING_WIZNET is not set +# CONFIG_PKG_USING_ZB_COORDINATOR is not set # # IoT Cloud @@ -268,6 +323,8 @@ CONFIG_RT_USING_POSIX=y # CONFIG_PKG_USING_JIOT-C-SDK is not set # CONFIG_PKG_USING_UCLOUD_IOT_SDK is not set # CONFIG_PKG_USING_JOYLINK is not set +# end of IoT Cloud + # CONFIG_PKG_USING_NIMBLE is not set # CONFIG_PKG_USING_OTA_DOWNLOADER is not set # CONFIG_PKG_USING_IPMSG is not set @@ -276,8 +333,6 @@ CONFIG_RT_USING_POSIX=y # CONFIG_PKG_USING_LIBRWS is not set # CONFIG_PKG_USING_TCPSERVER is not set # CONFIG_PKG_USING_PROTOBUF_C is not set -# CONFIG_PKG_USING_ONNX_PARSER is not set -# CONFIG_PKG_USING_ONNX_BACKEND is not set # CONFIG_PKG_USING_DLT645 is not set # CONFIG_PKG_USING_QXWZ is not set # CONFIG_PKG_USING_SMTP_CLIENT is not set @@ -287,6 +342,23 @@ CONFIG_RT_USING_POSIX=y # CONFIG_PKG_USING_RT_CJSON_TOOLS is not set # CONFIG_PKG_USING_AGILE_TELNET is not set # CONFIG_PKG_USING_NMEALIB is not set +# CONFIG_PKG_USING_AGILE_JSMN is not set +# CONFIG_PKG_USING_PDULIB is not set +# CONFIG_PKG_USING_BTSTACK is not set +# CONFIG_PKG_USING_LORAWAN_ED_STACK is not set +# CONFIG_PKG_USING_WAYZ_IOTKIT is not set +# CONFIG_PKG_USING_MAVLINK is not set +# CONFIG_PKG_USING_RAPIDJSON is not set +# CONFIG_PKG_USING_BSAL is not set +# CONFIG_PKG_USING_AGILE_MODBUS is not set +# CONFIG_PKG_USING_AGILE_FTP is not set +# CONFIG_PKG_USING_EMBEDDEDPROTO is not set +# CONFIG_PKG_USING_RT_LINK_HW is not set +# CONFIG_PKG_USING_LORA_PKT_FWD is not set +# CONFIG_PKG_USING_LORA_GW_DRIVER_LIB is not set +# CONFIG_PKG_USING_LORA_PKT_SNIFFER is not set +# CONFIG_PKG_USING_HM is not set +# end of IoT - internet of things # # security packages @@ -296,6 +368,7 @@ CONFIG_RT_USING_POSIX=y # CONFIG_PKG_USING_TINYCRYPT is not set # CONFIG_PKG_USING_TFM is not set # CONFIG_PKG_USING_YD_CRYPTO is not set +# end of security packages # # language packages @@ -303,6 +376,8 @@ CONFIG_RT_USING_POSIX=y # CONFIG_PKG_USING_LUA is not set # CONFIG_PKG_USING_JERRYSCRIPT is not set # CONFIG_PKG_USING_MICROPYTHON is not set +# CONFIG_PKG_USING_PIKASCRIPT is not set +# end of language packages # # multimedia packages @@ -312,6 +387,15 @@ CONFIG_RT_USING_POSIX=y # CONFIG_PKG_USING_STEMWIN is not set # CONFIG_PKG_USING_WAVPLAYER is not set # CONFIG_PKG_USING_TJPGD is not set +# CONFIG_PKG_USING_PDFGEN is not set +# CONFIG_PKG_USING_HELIX is not set +# CONFIG_PKG_USING_AZUREGUIX is not set +# CONFIG_PKG_USING_TOUCHGFX2RTT is not set +# CONFIG_PKG_USING_NUEMWIN is not set +# CONFIG_PKG_USING_MP3PLAYER is not set +# CONFIG_PKG_USING_TINYJPEG is not set +# CONFIG_PKG_USING_UGUI is not set +# end of multimedia packages # # tools packages @@ -320,27 +404,70 @@ CONFIG_RT_USING_POSIX=y # CONFIG_PKG_USING_EASYFLASH is not set # CONFIG_PKG_USING_EASYLOGGER is not set # CONFIG_PKG_USING_SYSTEMVIEW is not set +# CONFIG_PKG_USING_SEGGER_RTT is not set # CONFIG_PKG_USING_RDB is not set # CONFIG_PKG_USING_QRCODE is not set # CONFIG_PKG_USING_ULOG_EASYFLASH is not set +# CONFIG_PKG_USING_ULOG_FILE is not set +# CONFIG_PKG_USING_LOGMGR is not set # CONFIG_PKG_USING_ADBD is not set # CONFIG_PKG_USING_COREMARK is not set # CONFIG_PKG_USING_DHRYSTONE is not set +# CONFIG_PKG_USING_MEMORYPERF is not set # CONFIG_PKG_USING_NR_MICRO_SHELL is not set # CONFIG_PKG_USING_CHINESE_FONT_LIBRARY is not set # CONFIG_PKG_USING_LUNAR_CALENDAR is not set # CONFIG_PKG_USING_BS8116A is not set # CONFIG_PKG_USING_GPS_RMC is not set # CONFIG_PKG_USING_URLENCODE is not set +# CONFIG_PKG_USING_UMCN is not set +# CONFIG_PKG_USING_LWRB2RTT is not set +# CONFIG_PKG_USING_CPU_USAGE is not set +# CONFIG_PKG_USING_GBK2UTF8 is not set +# CONFIG_PKG_USING_VCONSOLE is not set +# CONFIG_PKG_USING_KDB is not set +# CONFIG_PKG_USING_WAMR is not set +# CONFIG_PKG_USING_MICRO_XRCE_DDS_CLIENT is not set +# CONFIG_PKG_USING_LWLOG is not set +# CONFIG_PKG_USING_ANV_TRACE is not set +# CONFIG_PKG_USING_ANV_MEMLEAK is not set +# CONFIG_PKG_USING_ANV_TESTSUIT is not set +# CONFIG_PKG_USING_ANV_BENCH is not set +# CONFIG_PKG_USING_DEVMEM is not set +# CONFIG_PKG_USING_REGEX is not set +# CONFIG_PKG_USING_MEM_SANDBOX is not set +# CONFIG_PKG_USING_SOLAR_TERMS is not set +# CONFIG_PKG_USING_GAN_ZHI is not set +# end of tools packages # # system packages # + +# +# acceleration: Assembly language or algorithmic acceleration packages +# +# CONFIG_PKG_USING_RT_MEMCPY_CM is not set +# CONFIG_PKG_USING_QFPLIB_M0_FULL is not set +# CONFIG_PKG_USING_QFPLIB_M0_TINY is not set +# CONFIG_PKG_USING_QFPLIB_M3 is not set +# end of acceleration: Assembly language or algorithmic acceleration packages + +# +# Micrium: Micrium software products porting for RT-Thread +# +# CONFIG_PKG_USING_UCOSIII_WRAPPER is not set +# CONFIG_PKG_USING_UCOSII_WRAPPER is not set +# CONFIG_PKG_USING_UC_CRC is not set +# CONFIG_PKG_USING_UC_CLK is not set +# CONFIG_PKG_USING_UC_COMMON is not set +# CONFIG_PKG_USING_UC_MODBUS is not set +# end of Micrium: Micrium software products porting for RT-Thread + # CONFIG_PKG_USING_GUIENGINE is not set # CONFIG_PKG_USING_PERSIMMON is not set # CONFIG_PKG_USING_CAIRO is not set # CONFIG_PKG_USING_PIXMAN is not set -# CONFIG_PKG_USING_LWEXT4 is not set # CONFIG_PKG_USING_PARTITION is not set # CONFIG_PKG_USING_FAL is not set # CONFIG_PKG_USING_FLASHDB is not set @@ -350,6 +477,9 @@ CONFIG_RT_USING_POSIX=y # CONFIG_PKG_USING_CMSIS is not set # CONFIG_PKG_USING_DFS_YAFFS is not set # CONFIG_PKG_USING_LITTLEFS is not set +# CONFIG_PKG_USING_DFS_JFFS2 is not set +# CONFIG_PKG_USING_DFS_UFFS is not set +# CONFIG_PKG_USING_LWEXT4 is not set # CONFIG_PKG_USING_THREAD_POOL is not set # CONFIG_PKG_USING_ROBOTS is not set # CONFIG_PKG_USING_EV is not set @@ -359,6 +489,16 @@ CONFIG_RT_USING_POSIX=y # CONFIG_PKG_USING_RAMDISK is not set # CONFIG_PKG_USING_MININI is not set # CONFIG_PKG_USING_QBOOT is not set +# CONFIG_PKG_USING_PPOOL is not set +# CONFIG_PKG_USING_OPENAMP is not set +# CONFIG_PKG_USING_RT_KPRINTF_THREADSAFE is not set +# CONFIG_PKG_USING_LPM is not set +# CONFIG_PKG_USING_TLSF is not set +# CONFIG_PKG_USING_EVENT_RECORDER is not set +# CONFIG_PKG_USING_ARM_2D is not set +# CONFIG_PKG_USING_WCWIDTH is not set +# CONFIG_PKG_USING_MCUBOOT is not set +# end of system packages # # peripheral libraries and drivers @@ -367,6 +507,7 @@ CONFIG_RT_USING_POSIX=y # CONFIG_PKG_USING_REALTEK_AMEBA is not set # CONFIG_PKG_USING_SHT2X is not set # CONFIG_PKG_USING_SHT3X is not set +# CONFIG_PKG_USING_AS7341 is not set # CONFIG_PKG_USING_STM32_SDIO is not set # CONFIG_PKG_USING_ICM20608 is not set # CONFIG_PKG_USING_U8G2 is not set @@ -382,7 +523,6 @@ CONFIG_RT_USING_POSIX=y # CONFIG_PKG_USING_WM_LIBRARIES is not set # CONFIG_PKG_USING_KENDRYTE_SDK is not set # CONFIG_PKG_USING_INFRARED is not set -# CONFIG_PKG_USING_ROSSERIAL is not set # CONFIG_PKG_USING_AGILE_BUTTON is not set # CONFIG_PKG_USING_AGILE_LED is not set # CONFIG_PKG_USING_AT24CXX is not set @@ -409,43 +549,104 @@ CONFIG_RT_USING_POSIX=y # CONFIG_PKG_USING_QLED is not set # CONFIG_PKG_USING_PAJ7620 is not set # CONFIG_PKG_USING_AGILE_CONSOLE is not set +# CONFIG_PKG_USING_LD3320 is not set +# CONFIG_PKG_USING_WK2124 is not set +# CONFIG_PKG_USING_LY68L6400 is not set +# CONFIG_PKG_USING_DM9051 is not set +# CONFIG_PKG_USING_SSD1306 is not set +# CONFIG_PKG_USING_QKEY is not set +# CONFIG_PKG_USING_RS485 is not set +# CONFIG_PKG_USING_NES is not set +# CONFIG_PKG_USING_VIRTUAL_SENSOR is not set +# CONFIG_PKG_USING_VDEVICE is not set +# CONFIG_PKG_USING_SGM706 is not set +# CONFIG_PKG_USING_STM32WB55_SDK is not set +# CONFIG_PKG_USING_RDA58XX is not set +# CONFIG_PKG_USING_LIBNFC is not set +# CONFIG_PKG_USING_MFOC is not set +# CONFIG_PKG_USING_TMC51XX is not set +# CONFIG_PKG_USING_TCA9534 is not set +# CONFIG_PKG_USING_KOBUKI is not set +# CONFIG_PKG_USING_ROSSERIAL is not set +# CONFIG_PKG_USING_MICRO_ROS is not set +# CONFIG_PKG_USING_MCP23008 is not set +# CONFIG_PKG_USING_BLUETRUM_SDK is not set +# CONFIG_PKG_USING_MISAKA_AT24CXX is not set +# CONFIG_PKG_USING_MISAKA_RGB_BLING is not set +# end of peripheral libraries and drivers + +# +# AI packages +# +# CONFIG_PKG_USING_LIBANN is not set +# CONFIG_PKG_USING_NNOM is not set +# CONFIG_PKG_USING_ONNX_BACKEND is not set +# CONFIG_PKG_USING_ONNX_PARSER is not set +# CONFIG_PKG_USING_TENSORFLOWLITEMICRO is not set +# CONFIG_PKG_USING_ELAPACK is not set +# CONFIG_PKG_USING_ULAPACK is not set +# CONFIG_PKG_USING_QUEST is not set +# CONFIG_PKG_USING_NAXOS is not set +# end of AI packages # # miscellaneous packages # + +# +# samples: kernel and components samples +# +# CONFIG_PKG_USING_KERNEL_SAMPLES is not set +# CONFIG_PKG_USING_FILESYSTEM_SAMPLES is not set +# CONFIG_PKG_USING_NETWORK_SAMPLES is not set +# CONFIG_PKG_USING_PERIPHERAL_SAMPLES is not set +# end of samples: kernel and components samples + +# +# entertainment: terminal games and other interesting software packages +# +# CONFIG_PKG_USING_CMATRIX is not set +# CONFIG_PKG_USING_SL is not set +# CONFIG_PKG_USING_CAL is not set +# CONFIG_PKG_USING_ACLOCK is not set +# CONFIG_PKG_USING_THREES is not set +# CONFIG_PKG_USING_2048 is not set +# CONFIG_PKG_USING_SNAKE is not set +# CONFIG_PKG_USING_TETRIS is not set +# CONFIG_PKG_USING_DONUT is not set +# end of entertainment: terminal games and other interesting software packages + # CONFIG_PKG_USING_LIBCSV is not set # CONFIG_PKG_USING_OPTPARSE is not set # CONFIG_PKG_USING_FASTLZ is not set # CONFIG_PKG_USING_MINILZO is not set # CONFIG_PKG_USING_QUICKLZ is not set +# CONFIG_PKG_USING_LZMA is not set # CONFIG_PKG_USING_MULTIBUTTON is not set # CONFIG_PKG_USING_FLEXIBLE_BUTTON is not set # CONFIG_PKG_USING_CANFESTIVAL is not set # CONFIG_PKG_USING_ZLIB is not set +# CONFIG_PKG_USING_MINIZIP is not set # CONFIG_PKG_USING_DSTR is not set # CONFIG_PKG_USING_TINYFRAME is not set # CONFIG_PKG_USING_KENDRYTE_DEMO is not set # CONFIG_PKG_USING_DIGITALCTRL is not set # CONFIG_PKG_USING_UPACKER is not set # CONFIG_PKG_USING_UPARAM is not set - -# -# samples: kernel and components samples -# -# CONFIG_PKG_USING_KERNEL_SAMPLES is not set -# CONFIG_PKG_USING_FILESYSTEM_SAMPLES is not set -# CONFIG_PKG_USING_NETWORK_SAMPLES is not set -# CONFIG_PKG_USING_PERIPHERAL_SAMPLES is not set # CONFIG_PKG_USING_HELLO is not set # CONFIG_PKG_USING_VI is not set -# CONFIG_PKG_USING_NNOM is not set -# CONFIG_PKG_USING_LIBANN is not set -# CONFIG_PKG_USING_ELAPACK is not set +# CONFIG_PKG_USING_KI is not set # CONFIG_PKG_USING_ARMv7M_DWT is not set # CONFIG_PKG_USING_VT100 is not set -# CONFIG_PKG_USING_ULAPACK is not set # CONFIG_PKG_USING_UKAL is not set # CONFIG_PKG_USING_CRCLIB is not set +# CONFIG_PKG_USING_LWGPS is not set +# CONFIG_PKG_USING_STATE_MACHINE is not set +# CONFIG_PKG_USING_MCURSES is not set +# CONFIG_PKG_USING_COWSAY is not set +# CONFIG_PKG_USING_TERMBOX is not set +# end of miscellaneous packages +# end of RT-Thread online packages # # Privated Packages of RealThread @@ -460,11 +661,12 @@ CONFIG_RT_USING_POSIX=y # # Network Utilities # +# end of Network Utilities + # CONFIG_PKG_USING_WICED is not set # CONFIG_PKG_USING_CLOUDSDK is not set # CONFIG_PKG_USING_POWER_MANAGER is not set # CONFIG_PKG_USING_RT_OTA is not set -# CONFIG_PKG_USING_RDBD_SRC is not set # CONFIG_PKG_USING_RTINSIGHT is not set # CONFIG_PKG_USING_SMARTCONFIG is not set # CONFIG_PKG_USING_RTX is not set @@ -478,7 +680,28 @@ CONFIG_RT_USING_POSIX=y # CONFIG_PKG_USING_ZBAR is not set # CONFIG_PKG_USING_MCF is not set # CONFIG_PKG_USING_URPC is not set -# CONFIG_PKG_USING_BSAL is not set +# CONFIG_PKG_USING_DCM is not set +# CONFIG_PKG_USING_EMQ is not set +# CONFIG_PKG_USING_CFGM is not set +# CONFIG_PKG_USING_RT_CMSIS_DAP is not set +# CONFIG_PKG_USING_SMODULE is not set +# CONFIG_PKG_USING_SNFD is not set +# CONFIG_PKG_USING_UDBD is not set +# CONFIG_PKG_USING_BENCHMARK is not set +# CONFIG_PKG_USING_UBJSON is not set +# CONFIG_PKG_USING_DATATYPE is not set +# CONFIG_PKG_USING_FASTFS is not set +# CONFIG_PKG_USING_RIL is not set +# CONFIG_PKG_USING_WATCH_DCM_SVC is not set +# CONFIG_PKG_USING_WATCH_APP_FWK is not set +# CONFIG_PKG_USING_GUI_TEST is not set +# CONFIG_PKG_USING_PMEM is not set +# CONFIG_PKG_USING_LWRDP is not set +# CONFIG_PKG_USING_MASAN is not set +# CONFIG_PKG_USING_BSDIFF_LIB is not set +# CONFIG_PKG_USING_PRC_DIFF is not set +# end of Privated Packages of RealThread + CONFIG_SOC_FAMILY_STM32=y CONFIG_SOC_SERIES_STM32F4=y @@ -490,7 +713,8 @@ CONFIG_SOC_STM32F429ZI=y # # Onboard Peripheral Drivers # -CONFIG_BSP_USING_SDRAM=y +# CONFIG_BSP_USING_SDRAM is not set +# end of Onboard Peripheral Drivers # # On-chip Peripheral Drivers @@ -503,13 +727,15 @@ CONFIG_BSP_USING_UART1=y # CONFIG_BSP_USING_I2C1 is not set # CONFIG_BSP_USING_SPI is not set # CONFIG_BSP_USING_QSPI is not set -CONFIG_BSP_USING_FMC=y +# CONFIG_BSP_USING_FMC is not set # CONFIG_BSP_USING_USBD is not set -CONFIG_BSP_USING_LCD=y -CONFIG_BSP_USING_LTDC=y +# CONFIG_BSP_USING_LCD is not set +# CONFIG_BSP_USING_LTDC is not set # CONFIG_BSP_USING_RNG is not set # CONFIG_BSP_USING_UDID is not set +# end of On-chip Peripheral Drivers # # Board extended module Drivers # +# end of Hardware Drivers Config diff --git a/bsp/stm32/stm32f429-st-disco/.cproject b/bsp/stm32/stm32f429-st-disco/.cproject index f753c0fb4c8c7b879bdb5856c6bef7c2d11fd088..4057380cf768e6d0a815227a82fe49fd4b2798f8 100644 --- a/bsp/stm32/stm32f429-st-disco/.cproject +++ b/bsp/stm32/stm32f429-st-disco/.cproject @@ -54,7 +54,7 @@ - @@ -67,23 +67,23 @@ - - - - - - - - + + + + + + + + - - - + + + @@ -126,7 +126,7 @@ @@ -170,23 +170,23 @@ - - - - - - - - + + + + + + + + - - - + + + @@ -199,7 +199,7 @@ - + @@ -210,12 +210,6 @@ - - - - - - @@ -224,4 +218,10 @@ + + + + + + diff --git a/bsp/stm32/stm32f429-st-disco/.project b/bsp/stm32/stm32f429-st-disco/.project index f8150396f50f65a6486bf3a3a26a149c0cfefaa7..f7d7e5a2e9e760b963fdbadcfa91385e9e0c20e4 100644 --- a/bsp/stm32/stm32f429-st-disco/.project +++ b/bsp/stm32/stm32f429-st-disco/.project @@ -1,6 +1,6 @@ - stm32f429 + stm32f429-st-disco @@ -20,11 +20,50 @@ org.eclipse.cdt.core.cnature - org.eclipse.cdt.core.ccnature org.rt-thread.studio.rttnature org.eclipse.cdt.managedbuilder.core.managedBuildNature org.eclipse.cdt.managedbuilder.core.ScannerConfigNature - + + rt-thread + 2 + virtual:/virtual + + + rt-thread/bsp + 2 + virtual:/virtual + + + rt-thread/components + 2 + $%7BPARENT-3-PROJECT_LOC%7D/components + + + rt-thread/include + 2 + $%7BPARENT-3-PROJECT_LOC%7D/include + + + rt-thread/libcpu + 2 + $%7BPARENT-3-PROJECT_LOC%7D/libcpu + + + rt-thread/src + 2 + $%7BPARENT-3-PROJECT_LOC%7D/src + + + rt-thread/bsp/stm32 + 2 + virtual:/virtual + + + rt-thread/bsp/stm32/libraries + 2 + $%7BPARENT-1-PROJECT_LOC%7D/libraries + + diff --git a/bsp/stm32/stm32f429-st-disco/.settings/.rtmenus b/bsp/stm32/stm32f429-st-disco/.settings/.rtmenus index da3a12f5e7568f633bd4529d437671559b4f061b..c5093f6066a53be922dbcaa8a75f6d14ed03d281 100644 Binary files a/bsp/stm32/stm32f429-st-disco/.settings/.rtmenus and b/bsp/stm32/stm32f429-st-disco/.settings/.rtmenus differ diff --git a/bsp/stm32/stm32f429-st-disco/.settings/language.settings.xml b/bsp/stm32/stm32f429-st-disco/.settings/language.settings.xml index 66e32d6ac6a617792e75970ec4233d0ad94fbc55..a6cd7838e6c8fa76dd3342e6c531fb9f08c36fa7 100644 --- a/bsp/stm32/stm32f429-st-disco/.settings/language.settings.xml +++ b/bsp/stm32/stm32f429-st-disco/.settings/language.settings.xml @@ -5,7 +5,7 @@ - + diff --git a/bsp/stm32/stm32f429-st-disco/.settings/projcfg.ini b/bsp/stm32/stm32f429-st-disco/.settings/projcfg.ini index 9ae064cb867b2d6fabc053849f3e2563340b9ff1..7ab05d0becda2d86846a1e0992d70d51ff56dce2 100644 --- a/bsp/stm32/stm32f429-st-disco/.settings/projcfg.ini +++ b/bsp/stm32/stm32f429-st-disco/.settings/projcfg.ini @@ -1,9 +1,10 @@ #RT-Thread Studio Project Configuration -#Thu Aug 06 07:31:27 CST 2020 +#Wed Sep 29 11:21:00 CST 2021 qemu_supported_board=stm32f429-st-disco +output_project_path=D\:\\template\\rtthread-smart-self\\kernel\\bsp\\stm32\\stm32f429-st-disco mcu_name=STM32F429ZI hardware_adapter=QEMU -selected_rtt_version=latest mcu_base_nano_proj=true +selected_rtt_version=latest project_base_bsp=true cfg_version=v2.0 diff --git a/bsp/stm32/stm32f429-st-disco/SConstruct b/bsp/stm32/stm32f429-st-disco/SConstruct index 1684dc06b0eba3630758f59bf031a98000a1cf98..46a4fa869b5a8a1485e2864b65c7562b190ad7e4 100644 --- a/bsp/stm32/stm32f429-st-disco/SConstruct +++ b/bsp/stm32/stm32f429-st-disco/SConstruct @@ -51,10 +51,10 @@ stm32_library = 'STM32F4xx_HAL' rtconfig.BSP_LIBRARY_TYPE = stm32_library # include libraries -objs.extend(SConscript(os.path.join(libraries_path_prefix, stm32_library, 'SConscript'))) +objs.extend(SConscript(os.path.join(libraries_path_prefix, stm32_library, 'SConscript'), variant_dir='build/stm32_library', duplicate = 0)) # include drivers -objs.extend(SConscript(os.path.join(libraries_path_prefix, 'HAL_Drivers', 'SConscript'))) +objs.extend(SConscript(os.path.join(libraries_path_prefix, 'HAL_Drivers', 'SConscript'), variant_dir='build/HAL_Drivers', duplicate = 0)) # make a building DoBuilding(TARGET, objs) diff --git a/bsp/stm32/stm32f429-st-disco/applications/SConscript b/bsp/stm32/stm32f429-st-disco/applications/SConscript index f5ed01d2ce45e8b0fd330aa2ea1353ebf9a327d7..95c28c386d64b4c5bef74954417503578b20963a 100644 --- a/bsp/stm32/stm32f429-st-disco/applications/SConscript +++ b/bsp/stm32/stm32f429-st-disco/applications/SConscript @@ -8,6 +8,9 @@ main.c lcd_init.c """) +if GetDepend(['RT_USING_DFS_ROMFS']): + src += ['romfs.c', 'mnt.c'] + group = DefineGroup('Applications', src, depend = [''], CPPPATH = CPPPATH) Return('group') diff --git a/bsp/stm32/stm32f429-st-disco/applications/mnt.c b/bsp/stm32/stm32f429-st-disco/applications/mnt.c new file mode 100644 index 0000000000000000000000000000000000000000..40baa6c3d672fd403ba10d6338acb719a1b5483d --- /dev/null +++ b/bsp/stm32/stm32f429-st-disco/applications/mnt.c @@ -0,0 +1,25 @@ +#include + +#ifdef RT_USING_DFS +#ifdef RT_USING_DFS_ROMFS +#include +#include "dfs_romfs.h" + +int mnt_init(void) +{ + if (dfs_mount(RT_NULL, "/", "rom", 0, &(romfs_root)) == 0) + { + rt_kprintf("ROM file system initializated!\n"); + } + else + { + rt_kprintf("ROM file system initializate failed!\n"); + } + + return 0; +} +INIT_ENV_EXPORT(mnt_init); + +#endif +#endif + diff --git a/bsp/stm32/stm32f429-st-disco/applications/romfs.c b/bsp/stm32/stm32f429-st-disco/applications/romfs.c new file mode 100644 index 0000000000000000000000000000000000000000..a986ede5cecaf79b13587a66ccca654d654893c8 --- /dev/null +++ b/bsp/stm32/stm32f429-st-disco/applications/romfs.c @@ -0,0 +1,3345 @@ +#include + +const static unsigned char _hello[] = { +0x84,0x46,0x5d,0xe0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x4c,0x57,0x50,0x2e,0x64,0x62,0x00,0x00,0xf4,0x2b,0x00,0x00,0xf4,0x2b,0x00,0x00, +0x61,0x70,0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x07,0x3c,0x2d,0x00,0x00, +0x3c,0x7d,0x00,0x00,0x00,0x50,0x00,0x00,0x00,0x10,0x00,0x00,0xf4,0x2b,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x23,0x4c,0x24,0x4a,0xa2,0xeb,0x04,0x03,0x4b,0x44,0x23,0xf0,0x07,0x03,0x9d,0x46, +0x00,0x21,0xaf,0xf2,0xd3,0x02,0x22,0xf0,0x01,0x02,0x1d,0x48,0x10,0x44,0x1e,0x4b, +0x13,0x44,0x03,0xe0,0x42,0x58,0x49,0xf8,0x01,0x20,0x04,0x31,0x42,0x18,0x9a,0x42, +0xf8,0xd3,0x00,0x20,0x16,0x49,0x19,0x4a,0xa2,0xeb,0x01,0x02,0x4a,0x44,0x18,0x4b, +0xa3,0xeb,0x01,0x03,0x4b,0x44,0x01,0xe0,0x42,0xf8,0x04,0x0b,0x9a,0x42,0xfb,0xd3, +0x4f,0xf0,0x23,0x30,0x0e,0x49,0x13,0x4a,0xa2,0xeb,0x01,0x02,0x4a,0x44,0x0d,0x4b, +0xa3,0xeb,0x01,0x03,0x4b,0x44,0x01,0xe0,0x42,0xf8,0x04,0x0b,0x9a,0x42,0xfb,0xd3, +0x60,0x46,0x11,0xb4,0x48,0x46,0xaf,0xf2,0x37,0x11,0x21,0xf0,0x01,0x01,0x00,0xf0, +0xff,0xf9,0xbd,0xe8,0x01,0x10,0x00,0xf0,0xd3,0xf9,0x00,0xf0,0x2b,0xff,0x00,0x00, +0xf4,0x2b,0x00,0x00,0x3c,0x8d,0x00,0x00,0xb0,0x2c,0x00,0x00,0x3c,0x2d,0x00,0x00, +0x58,0x8e,0x00,0x00,0x3c,0x7d,0x00,0x00,0xf0,0xb4,0x07,0x46,0x08,0x46,0x11,0x46, +0x1a,0x46,0x04,0xae,0x96,0xe8,0x38,0x00,0x00,0xdf,0xf0,0xbc,0x70,0x47,0x00,0x00, +0x53,0xb9,0x4a,0xb9,0x00,0x29,0x08,0xbf,0x00,0x28,0x1c,0xbf,0x4f,0xf0,0xff,0x31, +0x4f,0xf0,0xff,0x30,0x00,0xf0,0x7e,0xb9,0xad,0xf1,0x08,0x0c,0x6d,0xe9,0x04,0xce, +0x00,0xf0,0x06,0xf8,0xdd,0xf8,0x04,0xe0,0xdd,0xe9,0x02,0x23,0x04,0xb0,0x70,0x47, +0x2d,0xe9,0xf0,0x47,0x8c,0x46,0x0e,0x46,0x04,0x46,0x08,0x9d,0x00,0x2b,0x50,0xd1, +0x8a,0x42,0x17,0x46,0x6c,0xd9,0xb2,0xfa,0x82,0xfe,0xbe,0xf1,0x00,0x0f,0x0b,0xd0, +0xce,0xf1,0x20,0x04,0x20,0xfa,0x04,0xf4,0x01,0xfa,0x0e,0xf6,0x44,0xea,0x06,0x0c, +0x02,0xfa,0x0e,0xf7,0x00,0xfa,0x0e,0xf4,0x4f,0xea,0x17,0x49,0x22,0x0c,0xbc,0xfb, +0xf9,0xf0,0x1f,0xfa,0x87,0xf8,0x09,0xfb,0x10,0xc6,0x42,0xea,0x06,0x46,0x00,0xfb, +0x08,0xf3,0xb3,0x42,0x09,0xd9,0xf6,0x19,0x00,0xf1,0xff,0x32,0x80,0xf0,0x22,0x81, +0xb3,0x42,0x40,0xf2,0x1f,0x81,0x02,0x38,0x3e,0x44,0xf6,0x1a,0xa2,0xb2,0xb6,0xfb, +0xf9,0xf3,0x09,0xfb,0x13,0x66,0x42,0xea,0x06,0x44,0x03,0xfb,0x08,0xf8,0xa0,0x45, +0x09,0xd9,0xe4,0x19,0x03,0xf1,0xff,0x32,0x80,0xf0,0x0a,0x81,0xa0,0x45,0x40,0xf2, +0x07,0x81,0x02,0x3b,0x3c,0x44,0xc8,0xeb,0x04,0x04,0x43,0xea,0x00,0x40,0x00,0x21, +0x00,0x2d,0x62,0xd0,0x24,0xfa,0x0e,0xf4,0x00,0x23,0x2c,0x60,0x6b,0x60,0xbd,0xe8, +0xf0,0x87,0x8b,0x42,0x07,0xd9,0x00,0x2d,0x55,0xd0,0x00,0x21,0x85,0xe8,0x41,0x00, +0x08,0x46,0xbd,0xe8,0xf0,0x87,0xb3,0xfa,0x83,0xf1,0x00,0x29,0x40,0xf0,0x90,0x80, +0xb3,0x42,0x02,0xd3,0x82,0x42,0x00,0xf2,0xf8,0x80,0x84,0x1a,0x66,0xeb,0x03,0x06, +0x01,0x20,0xb4,0x46,0x00,0x2d,0x40,0xd0,0x85,0xe8,0x10,0x10,0xbd,0xe8,0xf0,0x87, +0x12,0xb9,0x01,0x27,0xb7,0xfb,0xf2,0xf7,0xb7,0xfa,0x87,0xfe,0xbe,0xf1,0x00,0x0f, +0x35,0xd1,0xf3,0x1b,0x4f,0xea,0x17,0x48,0x1f,0xfa,0x87,0xfc,0x01,0x21,0xb3,0xfb, +0xf8,0xf0,0x22,0x0c,0x08,0xfb,0x10,0x36,0x42,0xea,0x06,0x46,0x0c,0xfb,0x00,0xf3, +0xb3,0x42,0x07,0xd9,0xf6,0x19,0x00,0xf1,0xff,0x32,0x02,0xd2,0xb3,0x42,0x00,0xf2, +0xce,0x80,0x10,0x46,0xf6,0x1a,0xa2,0xb2,0xb6,0xfb,0xf8,0xf3,0x08,0xfb,0x13,0x66, +0x42,0xea,0x06,0x44,0x0c,0xfb,0x03,0xfc,0xa4,0x45,0x07,0xd9,0xe4,0x19,0x03,0xf1, +0xff,0x32,0x02,0xd2,0xa4,0x45,0x00,0xf2,0xb5,0x80,0x13,0x46,0xcc,0xeb,0x04,0x04, +0x43,0xea,0x00,0x40,0x9c,0xe7,0x29,0x46,0x28,0x46,0xbd,0xe8,0xf0,0x87,0xce,0xf1, +0x20,0x01,0x06,0xfa,0x0e,0xf3,0x07,0xfa,0x0e,0xf7,0x20,0xfa,0x01,0xf9,0x4f,0xea, +0x17,0x48,0xce,0x40,0x49,0xea,0x03,0x09,0xb6,0xfb,0xf8,0xfa,0x4f,0xea,0x19,0x44, +0x08,0xfb,0x1a,0x66,0x1f,0xfa,0x87,0xfc,0x44,0xea,0x06,0x43,0x0a,0xfb,0x0c,0xf2, +0x9a,0x42,0x00,0xfa,0x0e,0xf4,0x0a,0xd9,0xdb,0x19,0x0a,0xf1,0xff,0x31,0x80,0xf0, +0x87,0x80,0x9a,0x42,0x40,0xf2,0x84,0x80,0xaa,0xf1,0x02,0x0a,0x3b,0x44,0x9b,0x1a, +0x1f,0xfa,0x89,0xf9,0xb3,0xfb,0xf8,0xf1,0x08,0xfb,0x11,0x33,0x49,0xea,0x03,0x43, +0x01,0xfb,0x0c,0xf6,0x9e,0x42,0x07,0xd9,0xdb,0x19,0x01,0xf1,0xff,0x32,0x6b,0xd2, +0x9e,0x42,0x69,0xd9,0x02,0x39,0x3b,0x44,0x9b,0x1b,0x41,0xea,0x0a,0x41,0x8e,0xe7, +0xc1,0xf1,0x20,0x0e,0x22,0xfa,0x0e,0xf4,0x8b,0x40,0x23,0x43,0x20,0xfa,0x0e,0xf7, +0x06,0xfa,0x01,0xf4,0x4f,0xea,0x13,0x4c,0x26,0xfa,0x0e,0xf6,0x3c,0x43,0xb6,0xfb, +0xfc,0xf9,0x27,0x0c,0x0c,0xfb,0x19,0x66,0x1f,0xfa,0x83,0xf8,0x47,0xea,0x06,0x46, +0x09,0xfb,0x08,0xf7,0xb7,0x42,0x02,0xfa,0x01,0xf2,0x00,0xfa,0x01,0xfa,0x08,0xd9, +0xf6,0x18,0x09,0xf1,0xff,0x30,0x41,0xd2,0xb7,0x42,0x3f,0xd9,0xa9,0xf1,0x02,0x09, +0x1e,0x44,0xf6,0x1b,0xa0,0xb2,0xb6,0xfb,0xfc,0xf4,0x0c,0xfb,0x14,0x66,0x40,0xea, +0x06,0x47,0x04,0xfb,0x08,0xf8,0xb8,0x45,0x07,0xd9,0xff,0x18,0x04,0xf1,0xff,0x30, +0x28,0xd2,0xb8,0x45,0x26,0xd9,0x02,0x3c,0x1f,0x44,0x44,0xea,0x09,0x40,0xc8,0xeb, +0x07,0x07,0xa0,0xfb,0x02,0x89,0x4f,0x45,0x44,0x46,0x4e,0x46,0x14,0xd3,0x29,0xd0, +0x65,0xb3,0xba,0xeb,0x04,0x03,0x67,0xeb,0x06,0x07,0x07,0xfa,0x0e,0xfe,0xcb,0x40, +0xcf,0x40,0x4e,0xea,0x03,0x03,0x85,0xe8,0x88,0x00,0x00,0x21,0xbd,0xe8,0xf0,0x87, +0x13,0x46,0xf8,0xe6,0x10,0x46,0xe0,0xe6,0xb8,0xeb,0x02,0x04,0x69,0xeb,0x03,0x06, +0x01,0x38,0xe5,0xe7,0x04,0x46,0xd8,0xe7,0x11,0x46,0x95,0xe7,0x81,0x46,0xc0,0xe7, +0x8a,0x46,0x7c,0xe7,0x02,0x3b,0x3c,0x44,0x48,0xe7,0x08,0x46,0x0a,0xe7,0x02,0x38, +0x3e,0x44,0x2f,0xe7,0xc2,0x45,0xe7,0xd3,0x3e,0x46,0xd1,0xe7,0x29,0x46,0xbd,0xe8, +0xf0,0x87,0x00,0xbf,0x70,0x47,0x00,0xbf,0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60, +0x39,0x60,0x11,0x4b,0x59,0xf8,0x03,0x30,0x18,0x46,0x00,0xf0,0x53,0xfd,0x00,0x23, +0xfb,0x60,0x0f,0xe0,0xfb,0x68,0x9b,0x00,0x3a,0x68,0x13,0x44,0x1b,0x68,0x1a,0x46, +0xf9,0x68,0x0a,0x4b,0x59,0xf8,0x03,0x30,0x18,0x46,0x00,0xf0,0x43,0xfd,0xfb,0x68, +0x01,0x33,0xfb,0x60,0xfa,0x68,0x7b,0x68,0x9a,0x42,0xeb,0xdb,0x00,0x23,0x18,0x46, +0x10,0x37,0xbd,0x46,0x80,0xbd,0x00,0xbf,0x00,0x00,0x00,0x00,0x04,0x00,0x00,0x00, +0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68,0x1b,0x68,0xfb,0x60,0x7b,0x68, +0x04,0x33,0xbb,0x60,0x0c,0x4b,0x59,0xf8,0x03,0x30,0x1a,0x46,0x0b,0x4b,0x59,0xf8, +0x03,0x30,0xd3,0x1a,0x19,0x46,0x09,0x4b,0x59,0xf8,0x03,0x30,0x18,0x46,0x00,0xf0, +0x4d,0xfd,0x01,0xf0,0x79,0xfb,0xb9,0x68,0xf8,0x68,0xff,0xf7,0xb5,0xff,0x03,0x46, +0x18,0x46,0x00,0xf0,0x37,0xfd,0x00,0xbf,0xac,0x00,0x00,0x00,0xb0,0x00,0x00,0x00, +0x80,0xb4,0x8d,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60,0x47,0x4b,0x59,0xf8,0x03,0x30, +0x7b,0x62,0x46,0x4b,0x59,0xf8,0x03,0x30,0x3b,0x62,0x45,0x4b,0x59,0xf8,0x03,0x30, +0xfb,0x61,0x00,0x23,0xfb,0x62,0x7b,0x6a,0xbb,0x62,0x2e,0xe0,0xfb,0x6a,0x9b,0x00, +0x7a,0x68,0x13,0x44,0x1b,0x68,0x7a,0x6a,0x9a,0x42,0x10,0xd8,0xfb,0x6a,0x9b,0x00, +0x7a,0x68,0x13,0x44,0x1a,0x68,0x7b,0x6a,0xd3,0x1a,0x3b,0x61,0x79,0x68,0xfb,0x6a, +0x9b,0x00,0x7a,0x68,0x13,0x44,0x3a,0x69,0x0a,0x44,0x1a,0x60,0x0f,0xe0,0xfb,0x6a, +0x9b,0x00,0x7a,0x68,0x13,0x44,0x1a,0x68,0xfb,0x69,0xd3,0x1a,0x3b,0x61,0xfb,0x6a, +0x9b,0x00,0x7a,0x68,0x13,0x44,0x39,0x69,0x3a,0x68,0x0a,0x44,0x1a,0x60,0xbb,0x6a, +0x04,0x33,0xbb,0x62,0xfb,0x6a,0x01,0x33,0xfb,0x62,0xba,0x6a,0x3b,0x6a,0x9a,0x42, +0xcc,0xd3,0x28,0x4b,0x59,0xf8,0x03,0x30,0xbb,0x61,0x27,0x4b,0x59,0xf8,0x03,0x30, +0x7b,0x61,0x00,0x23,0xfb,0x62,0xbb,0x69,0xbb,0x62,0x33,0xe0,0xfb,0x6a,0x01,0x33, +0x9b,0x00,0xba,0x69,0x13,0x44,0x1b,0x68,0x17,0x2b,0x25,0xd1,0xfb,0x6a,0x9b,0x00, +0xba,0x69,0x13,0x44,0x1a,0x68,0x7b,0x6a,0xd3,0x1a,0x3b,0x61,0x7a,0x68,0x3b,0x69, +0x13,0x44,0xfb,0x60,0xfb,0x68,0x1b,0x68,0x7a,0x6a,0x9a,0x42,0x0a,0xd8,0xfb,0x68, +0x1a,0x68,0x7b,0x6a,0xd3,0x1a,0x3b,0x61,0x7a,0x68,0x3b,0x69,0x1a,0x44,0xfb,0x68, +0x1a,0x60,0x09,0xe0,0xfb,0x68,0x1a,0x68,0xfb,0x69,0xd3,0x1a,0x3b,0x61,0x3a,0x69, +0x3b,0x68,0x1a,0x44,0xfb,0x68,0x1a,0x60,0xbb,0x6a,0x08,0x33,0xbb,0x62,0xfb,0x6a, +0x02,0x33,0xfb,0x62,0x7b,0x69,0xba,0x6a,0x9a,0x42,0xc7,0xd3,0x00,0xbf,0x34,0x37, +0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47,0xb8,0x00,0x00,0x00,0x9c,0x00,0x00,0x00, +0xa0,0x00,0x00,0x00,0xb4,0x00,0x00,0x00,0xa4,0x00,0x00,0x00,0x90,0xb5,0x85,0xb0, +0x00,0xaf,0x78,0x60,0x39,0x60,0x3b,0x68,0x0a,0x2b,0x1e,0xd1,0x7b,0x68,0xd3,0xe9, +0x00,0x34,0x18,0x46,0x21,0x46,0x4f,0xf0,0x0a,0x02,0x4f,0xf0,0x00,0x03,0xff,0xf7, +0x6f,0xfd,0x1c,0x46,0x13,0x46,0xfb,0x60,0x7b,0x68,0xd3,0xe9,0x00,0x34,0x18,0x46, +0x21,0x46,0x4f,0xf0,0x0a,0x02,0x4f,0xf0,0x00,0x03,0xff,0xf7,0x61,0xfd,0x03,0x46, +0x0c,0x46,0x7a,0x68,0xc2,0xe9,0x00,0x34,0x15,0xe0,0x7b,0x68,0xd3,0xe9,0x00,0x34, +0x03,0xf0,0x0f,0x03,0xfb,0x60,0x7b,0x68,0xd3,0xe9,0x00,0x34,0x19,0x46,0x22,0x46, +0x4f,0xf0,0x00,0x03,0x4f,0xf0,0x00,0x04,0x0b,0x09,0x43,0xea,0x02,0x73,0x14,0x09, +0x7a,0x68,0xc2,0xe9,0x00,0x34,0xfb,0x68,0x18,0x46,0x14,0x37,0xbd,0x46,0x90,0xbd, +0x90,0xb4,0x82,0xb0,0x00,0xaf,0x78,0x60,0x00,0x24,0x0d,0xe0,0x23,0x46,0x9b,0x00, +0x23,0x44,0x5b,0x00,0x18,0x46,0x7b,0x68,0x1b,0x68,0x59,0x1c,0x7a,0x68,0x11,0x60, +0x1b,0x78,0x03,0x44,0xa3,0xf1,0x30,0x04,0x7b,0x68,0x1b,0x68,0x1b,0x78,0x30,0x3b, +0x09,0x2b,0xeb,0xd9,0x23,0x46,0x18,0x46,0x08,0x37,0xbd,0x46,0x90,0xbc,0x70,0x47, +0xb0,0xb5,0x90,0xb0,0x00,0xaf,0xf8,0x60,0xb9,0x60,0xc7,0xe9,0x00,0x23,0xbb,0x6d, +0xbb,0x63,0x7c,0x6d,0xfb,0x6d,0x03,0xf0,0x40,0x03,0x00,0x2b,0x03,0xd0,0x74,0x4b, +0x59,0xf8,0x03,0x30,0x02,0xe0,0x73,0x4b,0x59,0xf8,0x03,0x30,0x7b,0x63,0xfb,0x6d, +0x03,0xf0,0x10,0x03,0x00,0x2b,0x03,0xd0,0xfb,0x6d,0x23,0xf0,0x01,0x03,0xfb,0x65, +0xfb,0x6d,0x03,0xf0,0x01,0x03,0x00,0x2b,0x01,0xd0,0x30,0x23,0x00,0xe0,0x20,0x23, +0x87,0xf8,0x33,0x30,0x00,0x23,0x87,0xf8,0x3f,0x30,0xfb,0x6d,0x03,0xf0,0x02,0x03, +0x00,0x2b,0x21,0xd0,0xd7,0xe9,0x00,0x23,0x00,0x2a,0x73,0xf1,0x00,0x03,0x0a,0xda, +0x2d,0x23,0x87,0xf8,0x3f,0x30,0xd7,0xe9,0x00,0x23,0x52,0x42,0x63,0xeb,0x43,0x03, +0xc7,0xe9,0x00,0x23,0x10,0xe0,0xfb,0x6d,0x03,0xf0,0x04,0x03,0x00,0x2b,0x03,0xd0, +0x2b,0x23,0x87,0xf8,0x3f,0x30,0x07,0xe0,0xfb,0x6d,0x03,0xf0,0x08,0x03,0x00,0x2b, +0x02,0xd0,0x20,0x23,0x87,0xf8,0x3f,0x30,0x00,0x25,0xd7,0xe9,0x00,0x23,0x13,0x43, +0x19,0xd1,0x2b,0x46,0x5d,0x1c,0x07,0xf1,0x40,0x02,0x13,0x44,0x30,0x22,0x03,0xf8, +0x30,0x2c,0x14,0xe0,0x3b,0x46,0x39,0x6d,0x18,0x46,0xff,0xf7,0x37,0xff,0x03,0x46, +0x1a,0x46,0x7b,0x6b,0x1a,0x44,0x2b,0x46,0x5d,0x1c,0x12,0x78,0x07,0xf1,0x40,0x01, +0x0b,0x44,0x03,0xf8,0x30,0x2c,0xd7,0xe9,0x00,0x23,0x13,0x43,0xea,0xd1,0xbb,0x6d, +0x9d,0x42,0x00,0xdd,0xbd,0x65,0xbb,0x6d,0xe4,0x1a,0xfb,0x6d,0x03,0xf0,0x11,0x03, +0x00,0x2b,0x15,0xd1,0x97,0xf8,0x3f,0x30,0x00,0x2b,0x0d,0xd0,0x00,0x2c,0x0b,0xdd, +0x01,0x3c,0x09,0xe0,0xfa,0x68,0xbb,0x68,0x9a,0x42,0x02,0xd2,0xfb,0x68,0x20,0x22, +0x1a,0x70,0xfb,0x68,0x01,0x33,0xfb,0x60,0x23,0x46,0x5c,0x1e,0x00,0x2b,0xf1,0xdc, +0x97,0xf8,0x3f,0x30,0x00,0x2b,0x0b,0xd0,0xfa,0x68,0xbb,0x68,0x9a,0x42,0x03,0xd2, +0xfb,0x68,0x97,0xf8,0x3f,0x20,0x1a,0x70,0x01,0x3c,0xfb,0x68,0x01,0x33,0xfb,0x60, +0xfb,0x6d,0x03,0xf0,0x10,0x03,0x00,0x2b,0x1a,0xd1,0x0a,0xe0,0xfa,0x68,0xbb,0x68, +0x9a,0x42,0x03,0xd2,0xfb,0x68,0x97,0xf8,0x33,0x20,0x1a,0x70,0xfb,0x68,0x01,0x33, +0xfb,0x60,0x23,0x46,0x5c,0x1e,0x00,0x2b,0xf0,0xdc,0x09,0xe0,0xfa,0x68,0xbb,0x68, +0x9a,0x42,0x02,0xd2,0xfb,0x68,0x30,0x22,0x1a,0x70,0xfb,0x68,0x01,0x33,0xfb,0x60, +0xbb,0x6d,0x5a,0x1e,0xba,0x65,0x9d,0x42,0xf0,0xdb,0x0d,0xe0,0xfa,0x68,0xbb,0x68, +0x9a,0x42,0x06,0xd2,0x07,0xf1,0x40,0x03,0x2b,0x44,0x13,0xf8,0x30,0x2c,0xfb,0x68, +0x1a,0x70,0xfb,0x68,0x01,0x33,0xfb,0x60,0x2b,0x46,0x5d,0x1e,0x00,0x2b,0x0d,0xdd, +0xbb,0x6b,0x00,0x2b,0xea,0xd1,0x09,0xe0,0xfa,0x68,0xbb,0x68,0x9a,0x42,0x02,0xd2, +0xfb,0x68,0x20,0x22,0x1a,0x70,0xfb,0x68,0x01,0x33,0xfb,0x60,0x23,0x46,0x5c,0x1e, +0x00,0x2b,0xf1,0xdc,0xfb,0x68,0x18,0x46,0x40,0x37,0xbd,0x46,0xb0,0xbd,0x00,0xbf, +0x08,0x00,0x00,0x00,0x0c,0x00,0x00,0x00,0x90,0xb5,0x95,0xb0,0x04,0xaf,0xf8,0x60, +0xb9,0x60,0x7a,0x60,0x3b,0x60,0xfb,0x68,0xfb,0x62,0xfa,0x68,0xbb,0x68,0x13,0x44, +0xbb,0x62,0xba,0x6a,0xfb,0x68,0x9a,0x42,0x80,0xf0,0xde,0x82,0x4f,0xf0,0xff,0x33, +0xbb,0x62,0xba,0x6a,0xfb,0x68,0xd3,0x1a,0xbb,0x60,0xd5,0xe2,0x7b,0x68,0x1b,0x78, +0x25,0x2b,0x0b,0xd0,0xfa,0x6a,0xbb,0x6a,0x9a,0x42,0x03,0xd2,0x7b,0x68,0x1a,0x78, +0xfb,0x6a,0x1a,0x70,0xfb,0x6a,0x01,0x33,0xfb,0x62,0xc2,0xe2,0x00,0x23,0x87,0xf8, +0x22,0x30,0x7b,0x68,0x01,0x33,0x7b,0x60,0x7b,0x68,0x1b,0x78,0x2d,0x2b,0x06,0xd1, +0x97,0xf8,0x22,0x30,0x43,0xf0,0x10,0x03,0x87,0xf8,0x22,0x30,0xf1,0xe7,0x7b,0x68, +0x1b,0x78,0x2b,0x2b,0x06,0xd1,0x97,0xf8,0x22,0x30,0x43,0xf0,0x04,0x03,0x87,0xf8, +0x22,0x30,0xe6,0xe7,0x7b,0x68,0x1b,0x78,0x20,0x2b,0x06,0xd1,0x97,0xf8,0x22,0x30, +0x43,0xf0,0x08,0x03,0x87,0xf8,0x22,0x30,0xdb,0xe7,0x7b,0x68,0x1b,0x78,0x23,0x2b, +0x06,0xd1,0x97,0xf8,0x22,0x30,0x43,0xf0,0x20,0x03,0x87,0xf8,0x22,0x30,0xd0,0xe7, +0x7b,0x68,0x1b,0x78,0x30,0x2b,0x06,0xd1,0x97,0xf8,0x22,0x30,0x43,0xf0,0x01,0x03, +0x87,0xf8,0x22,0x30,0xc5,0xe7,0x00,0xbf,0x4f,0xf0,0xff,0x33,0xfb,0x61,0x7b,0x68, +0x1b,0x78,0x30,0x3b,0x09,0x2b,0x05,0xd8,0x3b,0x1d,0x18,0x46,0xff,0xf7,0x70,0xfe, +0xf8,0x61,0x17,0xe0,0x7b,0x68,0x1b,0x78,0x2a,0x2b,0x13,0xd1,0x7b,0x68,0x01,0x33, +0x7b,0x60,0x3b,0x68,0x1a,0x1d,0x3a,0x60,0x1b,0x68,0xfb,0x61,0xfb,0x69,0x00,0x2b, +0x08,0xda,0xfb,0x69,0x5b,0x42,0xfb,0x61,0x97,0xf8,0x22,0x30,0x43,0xf0,0x10,0x03, +0x87,0xf8,0x22,0x30,0x4f,0xf0,0xff,0x33,0xbb,0x61,0x7b,0x68,0x1b,0x78,0x2e,0x2b, +0x1e,0xd1,0x7b,0x68,0x01,0x33,0x7b,0x60,0x7b,0x68,0x1b,0x78,0x30,0x3b,0x09,0x2b, +0x05,0xd8,0x3b,0x1d,0x18,0x46,0xff,0xf7,0x43,0xfe,0xb8,0x61,0x0b,0xe0,0x7b,0x68, +0x1b,0x78,0x2a,0x2b,0x07,0xd1,0x7b,0x68,0x01,0x33,0x7b,0x60,0x3b,0x68,0x1a,0x1d, +0x3a,0x60,0x1b,0x68,0xbb,0x61,0xbb,0x69,0x00,0x2b,0x01,0xda,0x00,0x23,0xbb,0x61, +0x00,0x23,0x87,0xf8,0x21,0x30,0x7b,0x68,0x1b,0x78,0x68,0x2b,0x07,0xd0,0x7b,0x68, +0x1b,0x78,0x6c,0x2b,0x03,0xd0,0x7b,0x68,0x1b,0x78,0x4c,0x2b,0x14,0xd1,0x7b,0x68, +0x1b,0x78,0x87,0xf8,0x21,0x30,0x7b,0x68,0x01,0x33,0x7b,0x60,0x97,0xf8,0x21,0x30, +0x6c,0x2b,0x09,0xd1,0x7b,0x68,0x1b,0x78,0x6c,0x2b,0x05,0xd1,0x4c,0x23,0x87,0xf8, +0x21,0x30,0x7b,0x68,0x01,0x33,0x7b,0x60,0x0a,0x23,0x87,0xf8,0x23,0x30,0x7b,0x68, +0x1b,0x78,0x25,0x3b,0x53,0x2b,0x00,0xf2,0x83,0x81,0x02,0xa2,0x52,0xf8,0x23,0x30, +0x1a,0x44,0x10,0x47,0xbd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xdb,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0x51,0x01,0x00,0x00, +0xef,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xef,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xd3,0x02,0x00,0x00, +0x77,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xc1,0x01,0x00,0x00, +0xfd,0x02,0x00,0x00,0x39,0x03,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xe7,0x02,0x00,0x00,0x97,0xf8,0x22,0x30,0x03,0xf0,0x10,0x03,0x00,0x2b,0x10,0xd1, +0x09,0xe0,0xfa,0x6a,0xbb,0x6a,0x9a,0x42,0x02,0xd2,0xfb,0x6a,0x20,0x22,0x1a,0x70, +0xfb,0x6a,0x01,0x33,0xfb,0x62,0xfb,0x69,0x01,0x3b,0xfb,0x61,0xfb,0x69,0x00,0x2b, +0xef,0xdc,0x3b,0x68,0x1a,0x1d,0x3a,0x60,0x1b,0x68,0xfb,0x75,0xfa,0x6a,0xbb,0x6a, +0x9a,0x42,0x02,0xd2,0xfb,0x6a,0xfa,0x7d,0x1a,0x70,0xfb,0x6a,0x01,0x33,0xfb,0x62, +0x09,0xe0,0xfa,0x6a,0xbb,0x6a,0x9a,0x42,0x02,0xd2,0xfb,0x6a,0x20,0x22,0x1a,0x70, +0xfb,0x6a,0x01,0x33,0xfb,0x62,0xfb,0x69,0x01,0x3b,0xfb,0x61,0xfb,0x69,0x00,0x2b, +0xef,0xdc,0x26,0xe1,0x3b,0x68,0x1a,0x1d,0x3a,0x60,0x1b,0x68,0x7b,0x62,0x7b,0x6a, +0x00,0x2b,0x03,0xd1,0x9e,0x4b,0x59,0xf8,0x03,0x30,0x7b,0x62,0x78,0x6a,0x00,0xf0, +0xbb,0xf9,0x03,0x46,0x3b,0x63,0xbb,0x69,0x00,0x2b,0x05,0xdd,0x3a,0x6b,0xbb,0x69, +0x9a,0x42,0x01,0xdd,0xbb,0x69,0x3b,0x63,0x97,0xf8,0x22,0x30,0x03,0xf0,0x10,0x03, +0x00,0x2b,0x10,0xd1,0x09,0xe0,0xfa,0x6a,0xbb,0x6a,0x9a,0x42,0x02,0xd2,0xfb,0x6a, +0x20,0x22,0x1a,0x70,0xfb,0x6a,0x01,0x33,0xfb,0x62,0xfb,0x69,0x5a,0x1e,0xfa,0x61, +0x3a,0x6b,0x9a,0x42,0xef,0xdb,0x00,0x23,0x7b,0x63,0x10,0xe0,0xfa,0x6a,0xbb,0x6a, +0x9a,0x42,0x03,0xd2,0x7b,0x6a,0x1a,0x78,0xfb,0x6a,0x1a,0x70,0xfb,0x6a,0x01,0x33, +0xfb,0x62,0x7b,0x6a,0x01,0x33,0x7b,0x62,0x7b,0x6b,0x01,0x33,0x7b,0x63,0x7a,0x6b, +0x3b,0x6b,0x9a,0x42,0xea,0xdb,0x09,0xe0,0xfa,0x6a,0xbb,0x6a,0x9a,0x42,0x02,0xd2, +0xfb,0x6a,0x20,0x22,0x1a,0x70,0xfb,0x6a,0x01,0x33,0xfb,0x62,0xfb,0x69,0x5a,0x1e, +0xfa,0x61,0x3a,0x6b,0x9a,0x42,0xef,0xdb,0xcb,0xe0,0xfb,0x69,0xb3,0xf1,0xff,0x3f, +0x07,0xd1,0x08,0x23,0xfb,0x61,0x97,0xf8,0x22,0x30,0x43,0xf0,0x01,0x03,0x87,0xf8, +0x22,0x30,0x3b,0x68,0x1a,0x1d,0x3a,0x60,0x1b,0x68,0x4f,0xea,0xe3,0x74,0x97,0xf8, +0x22,0x20,0x03,0x92,0xba,0x69,0x02,0x92,0xfa,0x69,0x01,0x92,0x10,0x22,0x00,0x92, +0x1a,0x46,0x23,0x46,0xb9,0x6a,0xf8,0x6a,0xff,0xf7,0xc2,0xfc,0xf8,0x62,0xa8,0xe0, +0xfa,0x6a,0xbb,0x6a,0x9a,0x42,0x02,0xd2,0xfb,0x6a,0x25,0x22,0x1a,0x70,0xfb,0x6a, +0x01,0x33,0xfb,0x62,0x9d,0xe0,0x08,0x23,0x87,0xf8,0x23,0x30,0x2f,0xe0,0x97,0xf8, +0x22,0x30,0x43,0xf0,0x40,0x03,0x87,0xf8,0x22,0x30,0x10,0x23,0x87,0xf8,0x23,0x30, +0x25,0xe0,0x97,0xf8,0x22,0x30,0x43,0xf0,0x02,0x03,0x87,0xf8,0x22,0x30,0x1d,0xe0, +0xfa,0x6a,0xbb,0x6a,0x9a,0x42,0x02,0xd2,0xfb,0x6a,0x25,0x22,0x1a,0x70,0xfb,0x6a, +0x01,0x33,0xfb,0x62,0x7b,0x68,0x1b,0x78,0x00,0x2b,0x0b,0xd0,0xfa,0x6a,0xbb,0x6a, +0x9a,0x42,0x03,0xd2,0x7b,0x68,0x1a,0x78,0xfb,0x6a,0x1a,0x70,0xfb,0x6a,0x01,0x33, +0xfb,0x62,0x6e,0xe0,0x7b,0x68,0x01,0x3b,0x7b,0x60,0x6a,0xe0,0x00,0xbf,0x97,0xf8, +0x21,0x30,0x4c,0x2b,0x0b,0xd1,0x3b,0x68,0x07,0x33,0x23,0xf0,0x07,0x03,0x03,0xf1, +0x08,0x02,0x3a,0x60,0xd3,0xe9,0x00,0x34,0xc7,0xe9,0x0e,0x34,0x46,0xe0,0x97,0xf8, +0x21,0x30,0x6c,0x2b,0x13,0xd1,0x3b,0x68,0x1a,0x1d,0x3a,0x60,0x1b,0x68,0x4f,0xf0, +0x00,0x04,0xc7,0xe9,0x0e,0x34,0x97,0xf8,0x22,0x30,0x03,0xf0,0x02,0x03,0x00,0x2b, +0x34,0xd0,0xbb,0x6b,0x4f,0xea,0xe3,0x74,0xc7,0xe9,0x0e,0x34,0x2e,0xe0,0x97,0xf8, +0x21,0x30,0x68,0x2b,0x17,0xd1,0x3b,0x68,0x1a,0x1d,0x3a,0x60,0x1b,0x68,0x9b,0xb2, +0x9b,0xb2,0x4f,0xf0,0x00,0x04,0xc7,0xe9,0x0e,0x34,0x97,0xf8,0x22,0x30,0x03,0xf0, +0x02,0x03,0x00,0x2b,0x1a,0xd0,0xb7,0xf9,0x38,0x30,0x1b,0xb2,0x4f,0xea,0xe3,0x74, +0xc7,0xe9,0x0e,0x34,0x12,0xe0,0x3b,0x68,0x1a,0x1d,0x3a,0x60,0x1b,0x68,0x4f,0xf0, +0x00,0x04,0xc7,0xe9,0x0e,0x34,0x97,0xf8,0x22,0x30,0x03,0xf0,0x02,0x03,0x00,0x2b, +0x04,0xd0,0xbb,0x6b,0x4f,0xea,0xe3,0x74,0xc7,0xe9,0x0e,0x34,0xd7,0xe9,0x0e,0x34, +0x97,0xf8,0x23,0x20,0x97,0xf8,0x22,0x10,0x03,0x91,0xb9,0x69,0x02,0x91,0xf9,0x69, +0x01,0x91,0x00,0x92,0x1a,0x46,0x23,0x46,0xb9,0x6a,0xf8,0x6a,0xff,0xf7,0x18,0xfc, +0xf8,0x62,0x7b,0x68,0x01,0x33,0x7b,0x60,0x7b,0x68,0x1b,0x78,0x00,0x2b,0x7f,0xf4, +0x25,0xad,0xbb,0x68,0x00,0x2b,0x0b,0xd0,0xfa,0x6a,0xbb,0x6a,0x9a,0x42,0x03,0xd2, +0xfb,0x6a,0x00,0x22,0x1a,0x70,0x03,0xe0,0xbb,0x6a,0x01,0x3b,0x00,0x22,0x1a,0x70, +0xfa,0x6a,0xfb,0x68,0xd3,0x1a,0x18,0x46,0x44,0x37,0xbd,0x46,0x90,0xbd,0x00,0xbf, +0x10,0x00,0x00,0x00,0x0f,0xb4,0x80,0xb5,0x82,0xb0,0x00,0xaf,0x07,0xf1,0x14,0x03, +0x3b,0x60,0x3b,0x68,0x3a,0x69,0xff,0x21,0x0d,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7, +0xe3,0xfc,0x03,0x46,0x7b,0x60,0x7b,0x68,0xff,0x2b,0x01,0xd9,0xff,0x23,0x7b,0x60, +0x7a,0x68,0x07,0x4b,0x59,0xf8,0x03,0x30,0x19,0x46,0xff,0x20,0xff,0xf7,0xec,0xf8, +0x00,0xbf,0x08,0x37,0xbd,0x46,0xbd,0xe8,0x80,0x40,0x04,0xb0,0x70,0x47,0x00,0xbf, +0x14,0x00,0x00,0x00,0x80,0xb5,0x82,0xb0,0x00,0xaf,0x78,0x60,0x79,0x68,0x01,0x20, +0xff,0xf7,0xda,0xf8,0x00,0xbf,0x08,0x37,0xbd,0x46,0x80,0xbd,0x80,0xb5,0x82,0xb0, +0x00,0xaf,0x78,0x60,0x39,0x60,0x0f,0x4b,0x59,0xf8,0x03,0x30,0x1b,0x68,0x00,0x2b, +0x14,0xd1,0x01,0x21,0x0c,0x4b,0x59,0xf8,0x03,0x30,0x18,0x46,0x00,0xf0,0xbe,0xfd, +0x02,0x46,0x0a,0x4b,0x59,0xf8,0x03,0x30,0x1a,0x60,0x39,0x68,0x78,0x68,0x00,0xf0, +0x23,0xfd,0x02,0x46,0x03,0x4b,0x59,0xf8,0x03,0x30,0x1a,0x60,0x00,0xbf,0x08,0x37, +0xbd,0x46,0x80,0xbd,0x18,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x1c,0x00,0x00,0x00, +0x80,0xb5,0x82,0xb0,0x00,0xaf,0x78,0x60,0x0d,0x4b,0x59,0xf8,0x03,0x30,0x1b,0x68, +0x4f,0xf0,0xff,0x31,0x18,0x46,0x00,0xf0,0xaa,0xfd,0x0a,0x4b,0x59,0xf8,0x03,0x30, +0x1b,0x68,0x79,0x68,0x18,0x46,0x00,0xf0,0x25,0xfd,0x05,0x4b,0x59,0xf8,0x03,0x30, +0x1b,0x68,0x18,0x46,0x00,0xf0,0xaa,0xfd,0x00,0xbf,0x08,0x37,0xbd,0x46,0x80,0xbd, +0x1c,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x80,0xb4,0x85,0xb0,0x00,0xaf,0x78,0x60, +0x7b,0x68,0xbb,0x60,0x0a,0xe0,0x7b,0x68,0x1b,0x78,0x00,0x2b,0x03,0xd1,0x7a,0x68, +0xbb,0x68,0xd3,0x1a,0x26,0xe0,0x7b,0x68,0x01,0x33,0x7b,0x60,0x7b,0x68,0x03,0xf0, +0x03,0x03,0x00,0x2b,0xef,0xd1,0x7b,0x68,0xfb,0x60,0x02,0xe0,0xfb,0x68,0x04,0x33, +0xfb,0x60,0xfb,0x68,0x1b,0x68,0xa3,0xf1,0x01,0x32,0xfb,0x68,0x1b,0x68,0xdb,0x43, +0x13,0x40,0x03,0xf0,0x80,0x33,0x00,0x2b,0xf0,0xd0,0xfb,0x68,0x7b,0x60,0x02,0xe0, +0x7b,0x68,0x01,0x33,0x7b,0x60,0x7b,0x68,0x1b,0x78,0x00,0x2b,0xf8,0xd1,0x7a,0x68, +0xbb,0x68,0xd3,0x1a,0x18,0x46,0x14,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47, +0x80,0xb4,0x85,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68,0x00,0x2b,0x05,0xd0,0x7b,0x68, +0xb3,0xfa,0x83,0xf3,0xc3,0xf1,0x20,0x03,0x00,0xe0,0x00,0x23,0xfb,0x60,0xfb,0x68, +0x01,0x3b,0x18,0x46,0x14,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47,0x80,0xb4, +0x83,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68,0x5a,0x68,0x01,0x21,0x02,0x23,0x0b,0x43, +0xdb,0x43,0x13,0x40,0x18,0x46,0x0c,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47, +0x80,0xb4,0x85,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60,0x7b,0x68,0x5b,0x68,0xfb,0x60, +0x01,0x22,0x02,0x23,0x1a,0x43,0xfb,0x68,0x1a,0x40,0x3b,0x68,0x1a,0x43,0x7b,0x68, +0x5a,0x60,0x00,0xbf,0x14,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47,0x80,0xb5, +0x82,0xb0,0x00,0xaf,0x78,0x60,0x78,0x68,0xff,0xf7,0xd1,0xff,0x03,0x46,0x00,0x2b, +0x0c,0xbf,0x01,0x23,0x00,0x23,0xdb,0xb2,0x18,0x46,0x08,0x37,0xbd,0x46,0x80,0xbd, +0x80,0xb4,0x83,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68,0x5b,0x68,0x01,0x22,0x13,0x40, +0x18,0x46,0x0c,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47,0x80,0xb4,0x83,0xb0, +0x00,0xaf,0x78,0x60,0x7b,0x68,0x5b,0x68,0x01,0x22,0x1a,0x43,0x7b,0x68,0x5a,0x60, +0x00,0xbf,0x0c,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47,0x80,0xb4,0x83,0xb0, +0x00,0xaf,0x78,0x60,0x7b,0x68,0x5a,0x68,0x01,0x23,0xdb,0x43,0x1a,0x40,0x7b,0x68, +0x5a,0x60,0x00,0xbf,0x0c,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47,0x80,0xb4, +0x83,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68,0x5b,0x68,0x02,0x22,0x13,0x40,0x18,0x46, +0x0c,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47,0x80,0xb4,0x83,0xb0,0x00,0xaf, +0x78,0x60,0x7b,0x68,0x5b,0x68,0x02,0x22,0x1a,0x43,0x7b,0x68,0x5a,0x60,0x00,0xbf, +0x0c,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47,0x80,0xb4,0x83,0xb0,0x00,0xaf, +0x78,0x60,0x7b,0x68,0x5a,0x68,0x02,0x23,0xdb,0x43,0x1a,0x40,0x7b,0x68,0x5a,0x60, +0x00,0xbf,0x0c,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47,0x80,0xb4,0x83,0xb0, +0x00,0xaf,0x78,0x60,0x08,0x23,0x5b,0x42,0x7a,0x68,0x13,0x44,0x18,0x46,0x0c,0x37, +0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47,0x80,0xb4,0x83,0xb0,0x00,0xaf,0x78,0x60, +0x08,0x22,0x7b,0x68,0x13,0x44,0x18,0x46,0x0c,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b, +0x70,0x47,0x80,0xb4,0x83,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60,0x7a,0x68,0x3b,0x68, +0x13,0x44,0x18,0x46,0x0c,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47,0x00,0x00, +0x80,0xb5,0x82,0xb0,0x00,0xaf,0x78,0x60,0x78,0x68,0xff,0xf7,0xa0,0xff,0x03,0x46, +0x00,0x2b,0x10,0xd1,0x40,0xf2,0xd3,0x13,0x0a,0x4a,0x59,0xf8,0x02,0x20,0x0a,0x49, +0x59,0xf8,0x01,0x10,0x09,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7,0x53,0xfe,0x4f,0xf0, +0xff,0x30,0xff,0xf7,0x77,0xfe,0x7b,0x68,0x1b,0x68,0x18,0x46,0x08,0x37,0xbd,0x46, +0x80,0xbd,0x00,0xbf,0x30,0x00,0x00,0x00,0x28,0x00,0x00,0x00,0x2c,0x00,0x00,0x00, +0x90,0xb5,0x85,0xb0,0x00,0xaf,0x78,0x60,0x78,0x68,0xff,0xf7,0xb5,0xff,0x04,0x46, +0x78,0x68,0xff,0xf7,0x0c,0xff,0x02,0x46,0x04,0x23,0xd3,0x1a,0x19,0x46,0x20,0x46, +0xff,0xf7,0xb7,0xff,0xf8,0x60,0x78,0x68,0xff,0xf7,0x29,0xff,0x03,0x46,0x00,0x2b, +0x10,0xd0,0x4f,0xf4,0xee,0x73,0x0a,0x4a,0x59,0xf8,0x02,0x20,0x09,0x49,0x59,0xf8, +0x01,0x10,0x09,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7,0x1c,0xfe,0x4f,0xf0,0xff,0x30, +0xff,0xf7,0x40,0xfe,0xfb,0x68,0x18,0x46,0x14,0x37,0xbd,0x46,0x90,0xbd,0x00,0xbf, +0x38,0x00,0x00,0x00,0x34,0x00,0x00,0x00,0x2c,0x00,0x00,0x00,0x80,0xb5,0x84,0xb0, +0x00,0xaf,0x78,0x60,0x78,0x68,0xff,0xf7,0xc3,0xff,0xf8,0x60,0xfb,0x68,0x7a,0x68, +0x1a,0x60,0xfb,0x68,0x18,0x46,0x10,0x37,0xbd,0x46,0x80,0xbd,0x80,0xb5,0x84,0xb0, +0x00,0xaf,0x78,0x60,0x78,0x68,0xff,0xf7,0xe9,0xff,0xf8,0x60,0xf8,0x68,0xff,0xf7, +0x3c,0xff,0x78,0x68,0xff,0xf7,0x0a,0xff,0x00,0xbf,0x10,0x37,0xbd,0x46,0x80,0xbd, +0x80,0xb5,0x82,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60,0x3b,0x68,0x5a,0x1e,0x3b,0x68, +0x13,0x40,0x00,0x2b,0x10,0xd0,0x40,0xf2,0x07,0x23,0x0b,0x4a,0x59,0xf8,0x02,0x20, +0x0a,0x49,0x59,0xf8,0x01,0x10,0x0a,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7,0xd2,0xfd, +0x4f,0xf0,0xff,0x30,0xff,0xf7,0xf6,0xfd,0x3b,0x68,0x5a,0x42,0x7b,0x68,0x13,0x40, +0x18,0x46,0x08,0x37,0xbd,0x46,0x80,0xbd,0x40,0x00,0x00,0x00,0x3c,0x00,0x00,0x00, +0x2c,0x00,0x00,0x00,0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60,0x7a,0x68, +0x3b,0x68,0x13,0x44,0x5a,0x1e,0x3b,0x68,0x5b,0x42,0x13,0x40,0xfb,0x60,0x3b,0x68, +0x5a,0x1e,0x3b,0x68,0x13,0x40,0x00,0x2b,0x10,0xd0,0x40,0xf2,0x0f,0x23,0x0a,0x4a, +0x59,0xf8,0x02,0x20,0x09,0x49,0x59,0xf8,0x01,0x10,0x09,0x48,0x59,0xf8,0x00,0x00, +0xff,0xf7,0xa0,0xfd,0x4f,0xf0,0xff,0x30,0xff,0xf7,0xc4,0xfd,0xfb,0x68,0x18,0x46, +0x10,0x37,0xbd,0x46,0x80,0xbd,0x00,0xbf,0x44,0x00,0x00,0x00,0x3c,0x00,0x00,0x00, +0x2c,0x00,0x00,0x00,0x80,0xb5,0x86,0xb0,0x00,0xaf,0xf8,0x60,0xb9,0x60,0x7a,0x60, +0xfb,0x68,0x7f,0x2b,0x08,0xd8,0x00,0x23,0x7b,0x61,0xfb,0x68,0x00,0x2b,0x00,0xda, +0x03,0x33,0x9b,0x10,0x3b,0x61,0x0e,0xe0,0xf8,0x68,0xff,0xf7,0x39,0xfe,0x78,0x61, +0x7b,0x69,0x05,0x3b,0xfa,0x68,0x22,0xfa,0x03,0xf3,0x83,0xf0,0x20,0x03,0x3b,0x61, +0x7b,0x69,0x06,0x3b,0x7b,0x61,0xbb,0x68,0x7a,0x69,0x1a,0x60,0x7b,0x68,0x3a,0x69, +0x1a,0x60,0x00,0xbf,0x18,0x37,0xbd,0x46,0x80,0xbd,0x00,0x00,0x80,0xb5,0x86,0xb0, +0x00,0xaf,0xf8,0x60,0xb9,0x60,0x7a,0x60,0x3b,0x60,0xbb,0x68,0xdb,0x68,0x7b,0x61, +0xbb,0x68,0x9b,0x68,0x3b,0x61,0x7b,0x69,0x00,0x2b,0x10,0xd1,0x40,0xf2,0x6f,0x23, +0x35,0x4a,0x59,0xf8,0x02,0x20,0x35,0x49,0x59,0xf8,0x01,0x10,0x34,0x48,0x59,0xf8, +0x00,0x00,0xff,0xf7,0x47,0xfd,0x4f,0xf0,0xff,0x30,0xff,0xf7,0x6b,0xfd,0x3b,0x69, +0x00,0x2b,0x10,0xd1,0x4f,0xf4,0x1c,0x73,0x2b,0x4a,0x59,0xf8,0x02,0x20,0x2d,0x49, +0x59,0xf8,0x01,0x10,0x2a,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7,0x33,0xfd,0x4f,0xf0, +0xff,0x30,0xff,0xf7,0x57,0xfd,0x3b,0x69,0x7a,0x69,0xda,0x60,0x7b,0x69,0x3a,0x69, +0x9a,0x60,0xfa,0x68,0x7b,0x68,0x59,0x01,0x3b,0x68,0x0b,0x44,0x1c,0x33,0x9b,0x00, +0x13,0x44,0x5b,0x68,0xba,0x68,0x9a,0x42,0x31,0xd1,0xfa,0x68,0x7b,0x68,0x59,0x01, +0x3b,0x68,0x0b,0x44,0x1c,0x33,0x9b,0x00,0x13,0x44,0x3a,0x69,0x5a,0x60,0xfb,0x68, +0x3a,0x69,0x9a,0x42,0x23,0xd1,0xfa,0x68,0x7b,0x68,0x04,0x33,0x9b,0x00,0x13,0x44, +0x5b,0x68,0x01,0x21,0x3a,0x68,0x01,0xfa,0x02,0xf2,0xd2,0x43,0x1a,0x40,0xf9,0x68, +0x7b,0x68,0x04,0x33,0x9b,0x00,0x0b,0x44,0x5a,0x60,0xfa,0x68,0x7b,0x68,0x04,0x33, +0x9b,0x00,0x13,0x44,0x5b,0x68,0x00,0x2b,0x09,0xd1,0xfb,0x68,0x1b,0x69,0x01,0x21, +0x7a,0x68,0x01,0xfa,0x02,0xf2,0xd2,0x43,0x1a,0x40,0xfb,0x68,0x1a,0x61,0x00,0xbf, +0x18,0x37,0xbd,0x46,0x80,0xbd,0x00,0xbf,0x50,0x00,0x00,0x00,0x48,0x00,0x00,0x00, +0x2c,0x00,0x00,0x00,0x4c,0x00,0x00,0x00,0x90,0xb5,0x87,0xb0,0x00,0xaf,0xf8,0x60, +0xb9,0x60,0x7a,0x60,0x3b,0x60,0xfa,0x68,0x7b,0x68,0x59,0x01,0x3b,0x68,0x0b,0x44, +0x1c,0x33,0x9b,0x00,0x13,0x44,0x5b,0x68,0x7b,0x61,0x7b,0x69,0x00,0x2b,0x10,0xd1, +0x40,0xf2,0x8b,0x23,0x39,0x4a,0x59,0xf8,0x02,0x20,0x39,0x49,0x59,0xf8,0x01,0x10, +0x38,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7,0xbd,0xfc,0x4f,0xf0,0xff,0x30,0xff,0xf7, +0xe1,0xfc,0xbb,0x68,0x00,0x2b,0x10,0xd1,0x4f,0xf4,0x23,0x73,0x2f,0x4a,0x59,0xf8, +0x02,0x20,0x31,0x49,0x59,0xf8,0x01,0x10,0x2e,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7, +0xa9,0xfc,0x4f,0xf0,0xff,0x30,0xff,0xf7,0xcd,0xfc,0xbb,0x68,0x7a,0x69,0x9a,0x60, +0xfa,0x68,0xbb,0x68,0xda,0x60,0x7b,0x69,0xba,0x68,0xda,0x60,0xb8,0x68,0xff,0xf7, +0x13,0xfe,0x04,0x46,0xb8,0x68,0xff,0xf7,0x0f,0xfe,0x03,0x46,0x04,0x21,0x18,0x46, +0xff,0xf7,0xd0,0xfe,0x03,0x46,0x9c,0x42,0x10,0xd0,0x40,0xf2,0x91,0x23,0x1b,0x4a, +0x59,0xf8,0x02,0x20,0x1d,0x49,0x59,0xf8,0x01,0x10,0x1a,0x48,0x59,0xf8,0x00,0x00, +0xff,0xf7,0x80,0xfc,0x4f,0xf0,0xff,0x30,0xff,0xf7,0xa4,0xfc,0xfa,0x68,0x7b,0x68, +0x59,0x01,0x3b,0x68,0x0b,0x44,0x1c,0x33,0x9b,0x00,0x13,0x44,0xba,0x68,0x5a,0x60, +0xfb,0x68,0x1b,0x69,0x01,0x21,0x7a,0x68,0x01,0xfa,0x02,0xf2,0x1a,0x43,0xfb,0x68, +0x1a,0x61,0xfa,0x68,0x7b,0x68,0x04,0x33,0x9b,0x00,0x13,0x44,0x5b,0x68,0x01,0x21, +0x3a,0x68,0x01,0xfa,0x02,0xf2,0x1a,0x43,0xf9,0x68,0x7b,0x68,0x04,0x33,0x9b,0x00, +0x0b,0x44,0x5a,0x60,0x00,0xbf,0x1c,0x37,0xbd,0x46,0x90,0xbd,0x60,0x00,0x00,0x00, +0x54,0x00,0x00,0x00,0x2c,0x00,0x00,0x00,0x58,0x00,0x00,0x00,0x5c,0x00,0x00,0x00, +0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60,0x38,0x68,0xff,0xf7,0x17,0xfd, +0x07,0xf1,0x08,0x02,0x07,0xf1,0x0c,0x03,0x19,0x46,0xff,0xf7,0xab,0xfe,0xfa,0x68, +0xbb,0x68,0x39,0x68,0x78,0x68,0xff,0xf7,0xd1,0xfe,0x00,0xbf,0x10,0x37,0xbd,0x46, +0x80,0xbd,0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60,0x38,0x68,0xff,0xf7, +0xfe,0xfc,0x07,0xf1,0x08,0x02,0x07,0xf1,0x0c,0x03,0x19,0x46,0xff,0xf7,0x92,0xfe, +0xfa,0x68,0xbb,0x68,0x39,0x68,0x78,0x68,0xff,0xf7,0x3e,0xff,0x00,0xbf,0x10,0x37, +0xbd,0x46,0x80,0xbd,0x80,0xb5,0x82,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60,0x78,0x68, +0xff,0xf7,0x0d,0xfd,0x03,0x46,0x00,0x2b,0x10,0xd0,0x40,0xf2,0xca,0x23,0x11,0x4a, +0x59,0xf8,0x02,0x20,0x10,0x49,0x59,0xf8,0x01,0x10,0x10,0x48,0x59,0xf8,0x00,0x00, +0xff,0xf7,0x00,0xfc,0x4f,0xf0,0xff,0x30,0xff,0xf7,0x24,0xfc,0x38,0x68,0xff,0xf7, +0xce,0xfc,0x02,0x46,0x04,0x23,0x1a,0x44,0x7b,0x68,0x5b,0x68,0x1a,0x44,0x7b,0x68, +0x5a,0x60,0x78,0x68,0xff,0xf7,0xe2,0xfd,0x7b,0x68,0x18,0x46,0x08,0x37,0xbd,0x46, +0x80,0xbd,0x00,0xbf,0x68,0x00,0x00,0x00,0x64,0x00,0x00,0x00,0x2c,0x00,0x00,0x00, +0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60,0x38,0x68,0xff,0xf7,0x17,0xfd, +0x03,0x46,0x00,0x2b,0x37,0xd0,0x38,0x68,0xff,0xf7,0x6a,0xfd,0xf8,0x60,0xfb,0x68, +0x00,0x2b,0x10,0xd1,0x40,0xf2,0xd7,0x23,0x19,0x4a,0x59,0xf8,0x02,0x20,0x19,0x49, +0x59,0xf8,0x01,0x10,0x18,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7,0xc3,0xfb,0x4f,0xf0, +0xff,0x30,0xff,0xf7,0xe7,0xfb,0xf8,0x68,0xff,0xf7,0xca,0xfc,0x03,0x46,0x00,0x2b, +0x10,0xd1,0x4f,0xf4,0x36,0x73,0x0e,0x4a,0x59,0xf8,0x02,0x20,0x0f,0x49,0x59,0xf8, +0x01,0x10,0x0d,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7,0xac,0xfb,0x4f,0xf0,0xff,0x30, +0xff,0xf7,0xd0,0xfb,0xf9,0x68,0x78,0x68,0xff,0xf7,0x5a,0xff,0x39,0x68,0xf8,0x68, +0xff,0xf7,0x88,0xff,0x38,0x60,0x3b,0x68,0x18,0x46,0x10,0x37,0xbd,0x46,0x80,0xbd, +0x74,0x00,0x00,0x00,0x6c,0x00,0x00,0x00,0x2c,0x00,0x00,0x00,0x70,0x00,0x00,0x00, +0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60,0x38,0x68,0xff,0xf7,0x48,0xfd, +0xf8,0x60,0xfb,0x68,0x00,0x2b,0x10,0xd1,0x4f,0xf4,0x39,0x73,0x1c,0x4a,0x59,0xf8, +0x02,0x20,0x1c,0x49,0x59,0xf8,0x01,0x10,0x1b,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7, +0x79,0xfb,0x4f,0xf0,0xff,0x30,0xff,0xf7,0x9d,0xfb,0xf8,0x68,0xff,0xf7,0x80,0xfc, +0x03,0x46,0x00,0x2b,0x1f,0xd0,0x38,0x68,0xff,0xf7,0x69,0xfc,0x03,0x46,0x00,0x2b, +0x10,0xd0,0x4f,0xf4,0x3a,0x73,0x0e,0x4a,0x59,0xf8,0x02,0x20,0x0f,0x49,0x59,0xf8, +0x01,0x10,0x0d,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7,0x5c,0xfb,0x4f,0xf0,0xff,0x30, +0xff,0xf7,0x80,0xfb,0xf9,0x68,0x78,0x68,0xff,0xf7,0x0a,0xff,0xf9,0x68,0x38,0x68, +0xff,0xf7,0x38,0xff,0x38,0x60,0x3b,0x68,0x18,0x46,0x10,0x37,0xbd,0x46,0x80,0xbd, +0x80,0x00,0x00,0x00,0x78,0x00,0x00,0x00,0x2c,0x00,0x00,0x00,0x7c,0x00,0x00,0x00, +0x80,0xb4,0x85,0xb0,0x00,0xaf,0x78,0x60,0x7a,0x68,0x7b,0x68,0x9a,0x60,0x7a,0x68, +0x7b,0x68,0xda,0x60,0x7b,0x68,0x00,0x22,0x1a,0x61,0x00,0x23,0xfb,0x60,0x1c,0xe0, +0x7a,0x68,0xfb,0x68,0x04,0x33,0x9b,0x00,0x13,0x44,0x00,0x22,0x5a,0x60,0x00,0x23, +0xbb,0x60,0x0c,0xe0,0x7a,0x68,0x79,0x68,0xfb,0x68,0x58,0x01,0xbb,0x68,0x03,0x44, +0x1c,0x33,0x9b,0x00,0x0b,0x44,0x5a,0x60,0xbb,0x68,0x01,0x33,0xbb,0x60,0xbb,0x68, +0x1f,0x2b,0xef,0xdd,0xfb,0x68,0x01,0x33,0xfb,0x60,0xfb,0x68,0x17,0x2b,0xdf,0xdd, +0x00,0xbf,0x14,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47,0x80,0xb4,0x00,0xaf, +0x40,0xf6,0x74,0x43,0x18,0x46,0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47,0x80,0xb4, +0x00,0xaf,0x04,0x23,0x5b,0x00,0x18,0x46,0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47, +0x80,0xb5,0x88,0xb0,0x00,0xaf,0xf8,0x60,0xb9,0x60,0x7a,0x60,0xff,0xf7,0xef,0xff, +0xf8,0x61,0x7a,0x68,0xfb,0x69,0xd3,0x1a,0x04,0x21,0x18,0x46,0xff,0xf7,0x00,0xfd, +0xb8,0x61,0xbb,0x68,0x03,0xf0,0x03,0x03,0x00,0x2b,0x01,0xd0,0x00,0x23,0x38,0xe0, +0x0c,0x22,0xbb,0x69,0x93,0x42,0x04,0xd3,0x4f,0xf0,0x80,0x42,0xbb,0x69,0x93,0x42, +0x01,0xd9,0x00,0x23,0x2d,0xe0,0x19,0x4b,0x59,0xf8,0x03,0x30,0x1a,0x68,0xbb,0x69, +0xd3,0x1a,0x16,0x4a,0x59,0xf8,0x02,0x20,0x13,0x60,0x04,0x23,0x5b,0x42,0x19,0x46, +0xb8,0x68,0xff,0xf7,0x4e,0xfc,0x78,0x61,0xb9,0x69,0x78,0x69,0xff,0xf7,0xa8,0xfb, +0x78,0x69,0xff,0xf7,0xdb,0xfb,0x78,0x69,0xff,0xf7,0x17,0xfc,0x79,0x69,0xf8,0x68, +0xff,0xf7,0x87,0xfe,0x78,0x69,0xff,0xf7,0xa9,0xfc,0x38,0x61,0x00,0x21,0x38,0x69, +0xff,0xf7,0x96,0xfb,0x38,0x69,0xff,0xf7,0xd9,0xfb,0x38,0x69,0xff,0xf7,0xf5,0xfb, +0xbb,0x68,0x18,0x46,0x20,0x37,0xbd,0x46,0x80,0xbd,0x00,0xbf,0x24,0x00,0x00,0x00, +0x80,0xb5,0x82,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68,0x03,0xf0,0x03,0x03,0x00,0x2b, +0x01,0xd0,0x00,0x23,0x03,0xe0,0x78,0x68,0xff,0xf7,0x52,0xff,0x7b,0x68,0x18,0x46, +0x08,0x37,0xbd,0x46,0x80,0xbd,0x00,0x00,0x90,0xb5,0x85,0xb0,0x00,0xaf,0x78,0x60, +0x39,0x60,0x0f,0x4b,0x59,0xf8,0x03,0x30,0x1a,0x46,0x3b,0x68,0x13,0x60,0x78,0x68, +0xff,0xf7,0xde,0xff,0xf8,0x60,0xff,0xf7,0x71,0xff,0x02,0x46,0x7b,0x68,0x9c,0x18, +0xff,0xf7,0x6c,0xff,0x02,0x46,0x3b,0x68,0x9b,0x1a,0x1a,0x46,0x21,0x46,0xf8,0x68, +0xff,0xf7,0x76,0xff,0xfb,0x68,0x18,0x46,0x14,0x37,0xbd,0x46,0x90,0xbd,0x00,0xbf, +0x24,0x00,0x00,0x00,0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60,0x3b,0x68, +0x00,0x2b,0x55,0xd0,0x7b,0x68,0xfb,0x60,0x38,0x68,0xff,0xf7,0xc7,0xfb,0xb8,0x60, +0xb8,0x68,0xff,0xf7,0x65,0xfb,0x03,0x46,0x00,0x2b,0x10,0xd0,0x40,0xf2,0xd2,0x43, +0x25,0x4a,0x59,0xf8,0x02,0x20,0x25,0x49,0x59,0xf8,0x01,0x10,0x24,0x48,0x59,0xf8, +0x00,0x00,0xff,0xf7,0x47,0xfa,0x4f,0xf0,0xff,0x30,0xff,0xf7,0x6b,0xfa,0xb8,0x68, +0xff,0xf7,0x44,0xfc,0xb8,0x68,0xff,0xf7,0x12,0xfb,0x02,0x46,0x1d,0x4b,0x59,0xf8, +0x03,0x30,0x1b,0x68,0x9a,0x42,0x10,0xd3,0x40,0xf2,0xd6,0x43,0x16,0x4a,0x59,0xf8, +0x02,0x20,0x19,0x49,0x59,0xf8,0x01,0x10,0x15,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7, +0x29,0xfa,0x4f,0xf0,0xff,0x30,0xff,0xf7,0x4d,0xfa,0xb8,0x68,0xff,0xf7,0xf7,0xfa, +0x02,0x46,0x10,0x4b,0x59,0xf8,0x03,0x30,0x1b,0x68,0x9b,0x1a,0x0d,0x4a,0x59,0xf8, +0x02,0x20,0x13,0x60,0xb9,0x68,0xf8,0x68,0xff,0xf7,0x32,0xfe,0xb8,0x60,0xb9,0x68, +0xf8,0x68,0xff,0xf7,0x7d,0xfe,0xb8,0x60,0xb9,0x68,0xf8,0x68,0xff,0xf7,0xd9,0xfd, +0x00,0xbf,0x10,0x37,0xbd,0x46,0x80,0xbd,0x8c,0x00,0x00,0x00,0x84,0x00,0x00,0x00, +0x2c,0x00,0x00,0x00,0x24,0x00,0x00,0x00,0x88,0x00,0x00,0x00,0x80,0xb5,0x82,0xb0, +0x00,0xaf,0x78,0x60,0x0b,0x46,0xfb,0x70,0xfb,0x78,0x1a,0x46,0x79,0x68,0x16,0x20, +0xfe,0xf7,0xfa,0xfa,0x03,0x46,0x18,0x46,0x08,0x37,0xbd,0x46,0x80,0xbd,0x80,0xb5, +0x82,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60,0x3a,0x68,0x79,0x68,0x18,0x20,0xfe,0xf7, +0xeb,0xfa,0x03,0x46,0x18,0x46,0x08,0x37,0xbd,0x46,0x80,0xbd,0x80,0xb5,0x82,0xb0, +0x00,0xaf,0x78,0x60,0x79,0x68,0x19,0x20,0xfe,0xf7,0xde,0xfa,0x03,0x46,0x18,0x46, +0x08,0x37,0xbd,0x46,0x80,0xbd,0x00,0x00,0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60, +0x14,0x4b,0x59,0xf8,0x03,0x30,0x04,0x33,0xfb,0x60,0x00,0x23,0xbb,0x60,0x00,0xf0, +0x3d,0xf8,0x15,0xe0,0xfb,0x68,0x1b,0x68,0xbb,0x60,0xfb,0x68,0x1b,0x68,0x1a,0x68, +0xfb,0x68,0x1a,0x60,0xbb,0x68,0x5b,0x68,0x19,0x46,0x29,0x20,0xfe,0xf7,0xbc,0xfa, +0xbb,0x68,0x9b,0x68,0x18,0x46,0xff,0xf7,0x0b,0xfa,0xb8,0x68,0xff,0xf7,0x08,0xfa, +0xfb,0x68,0x1b,0x68,0x00,0x2b,0xe5,0xd1,0x00,0xf0,0x44,0xf8,0x00,0xbf,0x10,0x37, +0xbd,0x46,0x80,0xbd,0xa8,0x00,0x00,0x00,0x80,0xb5,0x00,0xaf,0x2b,0x20,0xfe,0xf7, +0xa3,0xfa,0x03,0x46,0x1a,0x46,0x07,0x4b,0x59,0xf8,0x03,0x30,0x9a,0x60,0x06,0x4b, +0x59,0xf8,0x03,0x30,0x1a,0x46,0x14,0x21,0x6d,0x20,0xfe,0xf7,0x95,0xfa,0x00,0xbf, +0x80,0xbd,0x00,0xbf,0xa8,0x00,0x00,0x00,0x90,0x00,0x00,0x00,0x80,0xb5,0x00,0xaf, +0x0e,0x4b,0x59,0xf8,0x03,0x30,0x1b,0x68,0x00,0x2b,0x0c,0xd1,0x01,0x21,0x0c,0x4b, +0x59,0xf8,0x03,0x30,0x18,0x46,0xff,0xf7,0x79,0xff,0x02,0x46,0x07,0x4b,0x59,0xf8, +0x03,0x30,0x1a,0x60,0x08,0xe0,0x05,0x4b,0x59,0xf8,0x03,0x30,0x1b,0x68,0x4f,0xf0, +0xff,0x31,0x18,0x46,0xff,0xf7,0x7b,0xff,0x00,0xbf,0x80,0xbd,0x94,0x00,0x00,0x00, +0x98,0x00,0x00,0x00,0x80,0xb5,0x00,0xaf,0x07,0x4b,0x59,0xf8,0x03,0x30,0x1b,0x68, +0x00,0x2b,0x06,0xd0,0x04,0x4b,0x59,0xf8,0x03,0x30,0x1b,0x68,0x18,0x46,0xff,0xf7, +0x75,0xff,0x00,0xbf,0x80,0xbd,0x00,0xbf,0x94,0x00,0x00,0x00,0x62,0x6c,0x6f,0x63, +0x6b,0x5f,0x70,0x72,0x65,0x76,0x00,0x00,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x6e,0x65, +0x78,0x74,0x00,0x00,0x61,0x6c,0x69,0x67,0x6e,0x5f,0x64,0x6f,0x77,0x6e,0x00,0x00, +0x61,0x6c,0x69,0x67,0x6e,0x5f,0x70,0x74,0x72,0x00,0x00,0x00,0x72,0x65,0x6d,0x6f, +0x76,0x65,0x5f,0x66,0x72,0x65,0x65,0x5f,0x62,0x6c,0x6f,0x63,0x6b,0x00,0x00,0x00, +0x69,0x6e,0x73,0x65,0x72,0x74,0x5f,0x66,0x72,0x65,0x65,0x5f,0x62,0x6c,0x6f,0x63, +0x6b,0x00,0x00,0x00,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x61,0x62,0x73,0x6f,0x72,0x62, +0x00,0x00,0x00,0x00,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x6d,0x65,0x72,0x67,0x65,0x5f, +0x70,0x72,0x65,0x76,0x00,0x00,0x00,0x00,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x6d,0x65, +0x72,0x67,0x65,0x5f,0x6e,0x65,0x78,0x74,0x00,0x00,0x00,0x00,0x74,0x6c,0x73,0x66, +0x5f,0x66,0x72,0x65,0x65,0x00,0x00,0x00,0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37, +0x38,0x39,0x41,0x42,0x43,0x44,0x45,0x46,0x00,0x00,0x00,0x00,0x30,0x31,0x32,0x33, +0x34,0x35,0x36,0x37,0x38,0x39,0x61,0x62,0x63,0x64,0x65,0x66,0x00,0x00,0x00,0x00, +0x68,0x65,0x6c,0x6c,0x6f,0x20,0x77,0x6f,0x72,0x6c,0x64,0x21,0x0d,0x0a,0x00,0x00, +0x61,0x72,0x67,0x76,0x20,0x25,0x64,0x20,0x3d,0x20,0x25,0x73,0x0d,0x0a,0x00,0x00, +0x28,0x4e,0x55,0x4c,0x4c,0x29,0x00,0x00,0x5f,0x54,0x6c,0x73,0x66,0x6c,0x6f,0x63, +0x6b,0x00,0x00,0x00,0x61,0x70,0x70,0x20,0x68,0x65,0x61,0x70,0x20,0x75,0x73,0x65, +0x64,0x5f,0x6d,0x61,0x78,0x3a,0x25,0x64,0x0a,0x00,0x00,0x00,0x62,0x6c,0x6f,0x63, +0x6b,0x5f,0x69,0x73,0x5f,0x70,0x72,0x65,0x76,0x5f,0x66,0x72,0x65,0x65,0x28,0x62, +0x6c,0x6f,0x63,0x6b,0x29,0x20,0x26,0x26,0x20,0x22,0x70,0x72,0x65,0x76,0x69,0x6f, +0x75,0x73,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x6d,0x75,0x73,0x74,0x20,0x62,0x65, +0x20,0x66,0x72,0x65,0x65,0x22,0x00,0x00,0x28,0x25,0x73,0x29,0x20,0x68,0x61,0x73, +0x20,0x61,0x73,0x73,0x65,0x72,0x74,0x20,0x66,0x61,0x69,0x6c,0x65,0x64,0x20,0x61, +0x74,0x20,0x46,0x3a,0x25,0x73,0x20,0x4c,0x3a,0x25,0x64,0x00,0x21,0x62,0x6c,0x6f, +0x63,0x6b,0x5f,0x69,0x73,0x5f,0x6c,0x61,0x73,0x74,0x28,0x62,0x6c,0x6f,0x63,0x6b, +0x29,0x00,0x00,0x00,0x30,0x20,0x3d,0x3d,0x20,0x28,0x61,0x6c,0x69,0x67,0x6e,0x20, +0x26,0x20,0x28,0x61,0x6c,0x69,0x67,0x6e,0x20,0x2d,0x20,0x31,0x29,0x29,0x20,0x26, +0x26,0x20,0x22,0x6d,0x75,0x73,0x74,0x20,0x61,0x6c,0x69,0x67,0x6e,0x20,0x74,0x6f, +0x20,0x61,0x20,0x70,0x6f,0x77,0x65,0x72,0x20,0x6f,0x66,0x20,0x74,0x77,0x6f,0x22, +0x00,0x00,0x00,0x00,0x73,0x6c,0x5f,0x6d,0x61,0x70,0x20,0x26,0x26,0x20,0x22,0x69, +0x6e,0x74,0x65,0x72,0x6e,0x61,0x6c,0x20,0x65,0x72,0x72,0x6f,0x72,0x20,0x2d,0x20, +0x73,0x65,0x63,0x6f,0x6e,0x64,0x20,0x6c,0x65,0x76,0x65,0x6c,0x20,0x62,0x69,0x74, +0x6d,0x61,0x70,0x20,0x69,0x73,0x20,0x6e,0x75,0x6c,0x6c,0x22,0x00,0x00,0x00,0x00, +0x70,0x72,0x65,0x76,0x20,0x26,0x26,0x20,0x22,0x70,0x72,0x65,0x76,0x5f,0x66,0x72, +0x65,0x65,0x20,0x66,0x69,0x65,0x6c,0x64,0x20,0x63,0x61,0x6e,0x20,0x6e,0x6f,0x74, +0x20,0x62,0x65,0x20,0x6e,0x75,0x6c,0x6c,0x22,0x00,0x00,0x00,0x6e,0x65,0x78,0x74, +0x20,0x26,0x26,0x20,0x22,0x6e,0x65,0x78,0x74,0x5f,0x66,0x72,0x65,0x65,0x20,0x66, +0x69,0x65,0x6c,0x64,0x20,0x63,0x61,0x6e,0x20,0x6e,0x6f,0x74,0x20,0x62,0x65,0x20, +0x6e,0x75,0x6c,0x6c,0x22,0x00,0x00,0x00,0x63,0x75,0x72,0x72,0x65,0x6e,0x74,0x20, +0x26,0x26,0x20,0x22,0x66,0x72,0x65,0x65,0x20,0x6c,0x69,0x73,0x74,0x20,0x63,0x61, +0x6e,0x6e,0x6f,0x74,0x20,0x68,0x61,0x76,0x65,0x20,0x61,0x20,0x6e,0x75,0x6c,0x6c, +0x20,0x65,0x6e,0x74,0x72,0x79,0x22,0x00,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x26,0x26, +0x20,0x22,0x63,0x61,0x6e,0x6e,0x6f,0x74,0x20,0x69,0x6e,0x73,0x65,0x72,0x74,0x20, +0x61,0x20,0x6e,0x75,0x6c,0x6c,0x20,0x65,0x6e,0x74,0x72,0x79,0x20,0x69,0x6e,0x74, +0x6f,0x20,0x74,0x68,0x65,0x20,0x66,0x72,0x65,0x65,0x20,0x6c,0x69,0x73,0x74,0x22, +0x00,0x00,0x00,0x00,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x74,0x6f,0x5f,0x70,0x74,0x72, +0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x20,0x3d,0x3d,0x20,0x61,0x6c,0x69,0x67,0x6e, +0x5f,0x70,0x74,0x72,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x74,0x6f,0x5f,0x70,0x74, +0x72,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x2c,0x20,0x41,0x4c,0x49,0x47,0x4e,0x5f, +0x53,0x49,0x5a,0x45,0x29,0x20,0x26,0x26,0x20,0x22,0x62,0x6c,0x6f,0x63,0x6b,0x20, +0x6e,0x6f,0x74,0x20,0x61,0x6c,0x69,0x67,0x6e,0x65,0x64,0x20,0x70,0x72,0x6f,0x70, +0x65,0x72,0x6c,0x79,0x22,0x00,0x00,0x00,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x74,0x6f, +0x5f,0x70,0x74,0x72,0x28,0x72,0x65,0x6d,0x61,0x69,0x6e,0x69,0x6e,0x67,0x29,0x20, +0x3d,0x3d,0x20,0x61,0x6c,0x69,0x67,0x6e,0x5f,0x70,0x74,0x72,0x28,0x62,0x6c,0x6f, +0x63,0x6b,0x5f,0x74,0x6f,0x5f,0x70,0x74,0x72,0x28,0x72,0x65,0x6d,0x61,0x69,0x6e, +0x69,0x6e,0x67,0x29,0x2c,0x20,0x41,0x4c,0x49,0x47,0x4e,0x5f,0x53,0x49,0x5a,0x45, +0x29,0x20,0x26,0x26,0x20,0x22,0x72,0x65,0x6d,0x61,0x69,0x6e,0x69,0x6e,0x67,0x20, +0x62,0x6c,0x6f,0x63,0x6b,0x20,0x6e,0x6f,0x74,0x20,0x61,0x6c,0x69,0x67,0x6e,0x65, +0x64,0x20,0x70,0x72,0x6f,0x70,0x65,0x72,0x6c,0x79,0x22,0x00,0x62,0x6c,0x6f,0x63, +0x6b,0x5f,0x73,0x69,0x7a,0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x20,0x3d,0x3d, +0x20,0x72,0x65,0x6d,0x61,0x69,0x6e,0x5f,0x73,0x69,0x7a,0x65,0x20,0x2b,0x20,0x73, +0x69,0x7a,0x65,0x20,0x2b,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x68,0x65,0x61,0x64, +0x65,0x72,0x5f,0x6f,0x76,0x65,0x72,0x68,0x65,0x61,0x64,0x00,0x62,0x6c,0x6f,0x63, +0x6b,0x5f,0x73,0x69,0x7a,0x65,0x28,0x72,0x65,0x6d,0x61,0x69,0x6e,0x69,0x6e,0x67, +0x29,0x20,0x3e,0x3d,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x73,0x69,0x7a,0x65,0x5f, +0x6d,0x69,0x6e,0x20,0x26,0x26,0x20,0x22,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x73,0x70, +0x6c,0x69,0x74,0x20,0x77,0x69,0x74,0x68,0x20,0x69,0x6e,0x76,0x61,0x6c,0x69,0x64, +0x20,0x73,0x69,0x7a,0x65,0x22,0x00,0x00,0x21,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69, +0x73,0x5f,0x6c,0x61,0x73,0x74,0x28,0x70,0x72,0x65,0x76,0x29,0x20,0x26,0x26,0x20, +0x22,0x70,0x72,0x65,0x76,0x69,0x6f,0x75,0x73,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x20, +0x63,0x61,0x6e,0x27,0x74,0x20,0x62,0x65,0x20,0x6c,0x61,0x73,0x74,0x22,0x00,0x00, +0x70,0x72,0x65,0x76,0x20,0x26,0x26,0x20,0x22,0x70,0x72,0x65,0x76,0x20,0x70,0x68, +0x79,0x73,0x69,0x63,0x61,0x6c,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x63,0x61,0x6e, +0x27,0x74,0x20,0x62,0x65,0x20,0x6e,0x75,0x6c,0x6c,0x22,0x00,0x62,0x6c,0x6f,0x63, +0x6b,0x5f,0x69,0x73,0x5f,0x66,0x72,0x65,0x65,0x28,0x70,0x72,0x65,0x76,0x29,0x20, +0x26,0x26,0x20,0x22,0x70,0x72,0x65,0x76,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x69, +0x73,0x20,0x6e,0x6f,0x74,0x20,0x66,0x72,0x65,0x65,0x20,0x74,0x68,0x6f,0x75,0x67, +0x68,0x20,0x6d,0x61,0x72,0x6b,0x65,0x64,0x20,0x61,0x73,0x20,0x73,0x75,0x63,0x68, +0x22,0x00,0x00,0x00,0x6e,0x65,0x78,0x74,0x20,0x26,0x26,0x20,0x22,0x6e,0x65,0x78, +0x74,0x20,0x70,0x68,0x79,0x73,0x69,0x63,0x61,0x6c,0x20,0x62,0x6c,0x6f,0x63,0x6b, +0x20,0x63,0x61,0x6e,0x27,0x74,0x20,0x62,0x65,0x20,0x6e,0x75,0x6c,0x6c,0x22,0x00, +0x21,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69,0x73,0x5f,0x6c,0x61,0x73,0x74,0x28,0x62, +0x6c,0x6f,0x63,0x6b,0x29,0x20,0x26,0x26,0x20,0x22,0x70,0x72,0x65,0x76,0x69,0x6f, +0x75,0x73,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x63,0x61,0x6e,0x27,0x74,0x20,0x62, +0x65,0x20,0x6c,0x61,0x73,0x74,0x22,0x00,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69,0x73, +0x5f,0x66,0x72,0x65,0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x20,0x26,0x26,0x20, +0x22,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x6d,0x75,0x73,0x74,0x20,0x62,0x65,0x20,0x66, +0x72,0x65,0x65,0x22,0x00,0x00,0x00,0x00,0x21,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69, +0x73,0x5f,0x66,0x72,0x65,0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x20,0x26,0x26, +0x20,0x22,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x6d,0x75,0x73,0x74,0x20,0x62,0x65,0x20, +0x75,0x73,0x65,0x64,0x22,0x00,0x00,0x00,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x73,0x69, +0x7a,0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x20,0x3e,0x3d,0x20,0x73,0x69,0x7a, +0x65,0x00,0x00,0x00,0x73,0x69,0x7a,0x65,0x20,0x26,0x26,0x20,0x22,0x73,0x69,0x7a, +0x65,0x20,0x6d,0x75,0x73,0x74,0x20,0x62,0x65,0x20,0x6e,0x6f,0x6e,0x2d,0x7a,0x65, +0x72,0x6f,0x22,0x00,0x69,0x6e,0x74,0x65,0x67,0x2d,0x3e,0x70,0x72,0x65,0x76,0x5f, +0x73,0x74,0x61,0x74,0x75,0x73,0x20,0x3d,0x3d,0x20,0x74,0x68,0x69,0x73,0x5f,0x70, +0x72,0x65,0x76,0x5f,0x73,0x74,0x61,0x74,0x75,0x73,0x20,0x26,0x26,0x20,0x22,0x70, +0x72,0x65,0x76,0x20,0x73,0x74,0x61,0x74,0x75,0x73,0x20,0x69,0x6e,0x63,0x6f,0x72, +0x72,0x65,0x63,0x74,0x22,0x00,0x00,0x00,0x73,0x69,0x7a,0x65,0x20,0x3d,0x3d,0x20, +0x74,0x68,0x69,0x73,0x5f,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x73,0x69,0x7a,0x65,0x20, +0x26,0x26,0x20,0x22,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x73,0x69,0x7a,0x65,0x20,0x69, +0x6e,0x63,0x6f,0x72,0x72,0x65,0x63,0x74,0x22,0x00,0x00,0x00,0x21,0x73,0x6c,0x5f, +0x6d,0x61,0x70,0x20,0x26,0x26,0x20,0x22,0x73,0x65,0x63,0x6f,0x6e,0x64,0x2d,0x6c, +0x65,0x76,0x65,0x6c,0x20,0x6d,0x61,0x70,0x20,0x6d,0x75,0x73,0x74,0x20,0x62,0x65, +0x20,0x6e,0x75,0x6c,0x6c,0x22,0x00,0x00,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x3d,0x3d, +0x20,0x26,0x63,0x6f,0x6e,0x74,0x72,0x6f,0x6c,0x2d,0x3e,0x62,0x6c,0x6f,0x63,0x6b, +0x5f,0x6e,0x75,0x6c,0x6c,0x20,0x26,0x26,0x20,0x22,0x62,0x6c,0x6f,0x63,0x6b,0x20, +0x6c,0x69,0x73,0x74,0x20,0x6d,0x75,0x73,0x74,0x20,0x62,0x65,0x20,0x6e,0x75,0x6c, +0x6c,0x22,0x00,0x00,0x73,0x6c,0x5f,0x6c,0x69,0x73,0x74,0x20,0x26,0x26,0x20,0x22, +0x6e,0x6f,0x20,0x66,0x72,0x65,0x65,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x73,0x20,0x69, +0x6e,0x20,0x73,0x65,0x63,0x6f,0x6e,0x64,0x2d,0x6c,0x65,0x76,0x65,0x6c,0x20,0x6d, +0x61,0x70,0x22,0x00,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x21,0x3d,0x20,0x26,0x63,0x6f, +0x6e,0x74,0x72,0x6f,0x6c,0x2d,0x3e,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x6e,0x75,0x6c, +0x6c,0x20,0x26,0x26,0x20,0x22,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x73,0x68,0x6f,0x75, +0x6c,0x64,0x20,0x6e,0x6f,0x74,0x20,0x62,0x65,0x20,0x6e,0x75,0x6c,0x6c,0x22,0x00, +0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69,0x73,0x5f,0x66,0x72,0x65,0x65,0x28,0x62,0x6c, +0x6f,0x63,0x6b,0x29,0x20,0x26,0x26,0x20,0x22,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x73, +0x68,0x6f,0x75,0x6c,0x64,0x20,0x62,0x65,0x20,0x66,0x72,0x65,0x65,0x22,0x00,0x00, +0x21,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69,0x73,0x5f,0x70,0x72,0x65,0x76,0x5f,0x66, +0x72,0x65,0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x20,0x26,0x26,0x20,0x22,0x62, +0x6c,0x6f,0x63,0x6b,0x73,0x20,0x73,0x68,0x6f,0x75,0x6c,0x64,0x20,0x68,0x61,0x76, +0x65,0x20,0x63,0x6f,0x61,0x6c,0x65,0x73,0x63,0x65,0x64,0x22,0x00,0x00,0x00,0x00, +0x21,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69,0x73,0x5f,0x66,0x72,0x65,0x65,0x28,0x62, +0x6c,0x6f,0x63,0x6b,0x5f,0x6e,0x65,0x78,0x74,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29, +0x29,0x20,0x26,0x26,0x20,0x22,0x62,0x6c,0x6f,0x63,0x6b,0x73,0x20,0x73,0x68,0x6f, +0x75,0x6c,0x64,0x20,0x68,0x61,0x76,0x65,0x20,0x63,0x6f,0x61,0x6c,0x65,0x73,0x63, +0x65,0x64,0x22,0x00,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69,0x73,0x5f,0x70,0x72,0x65, +0x76,0x5f,0x66,0x72,0x65,0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x6e,0x65,0x78, +0x74,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x29,0x20,0x26,0x26,0x20,0x22,0x62,0x6c, +0x6f,0x63,0x6b,0x20,0x73,0x68,0x6f,0x75,0x6c,0x64,0x20,0x62,0x65,0x20,0x66,0x72, +0x65,0x65,0x22,0x00,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x73,0x69,0x7a,0x65,0x28,0x62, +0x6c,0x6f,0x63,0x6b,0x29,0x20,0x3e,0x3d,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x73, +0x69,0x7a,0x65,0x5f,0x6d,0x69,0x6e,0x20,0x26,0x26,0x20,0x22,0x62,0x6c,0x6f,0x63, +0x6b,0x20,0x6e,0x6f,0x74,0x20,0x6d,0x69,0x6e,0x69,0x6d,0x75,0x6d,0x20,0x73,0x69, +0x7a,0x65,0x22,0x00,0x66,0x6c,0x69,0x20,0x3d,0x3d,0x20,0x69,0x20,0x26,0x26,0x20, +0x73,0x6c,0x69,0x20,0x3d,0x3d,0x20,0x6a,0x20,0x26,0x26,0x20,0x22,0x62,0x6c,0x6f, +0x63,0x6b,0x20,0x73,0x69,0x7a,0x65,0x20,0x69,0x6e,0x64,0x65,0x78,0x65,0x64,0x20, +0x69,0x6e,0x20,0x77,0x72,0x6f,0x6e,0x67,0x20,0x6c,0x69,0x73,0x74,0x22,0x00,0x00, +0x21,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69,0x73,0x5f,0x66,0x72,0x65,0x65,0x28,0x62, +0x6c,0x6f,0x63,0x6b,0x5f,0x6e,0x65,0x78,0x74,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29, +0x29,0x20,0x26,0x26,0x20,0x22,0x6e,0x65,0x78,0x74,0x20,0x62,0x6c,0x6f,0x63,0x6b, +0x20,0x73,0x68,0x6f,0x75,0x6c,0x64,0x20,0x6e,0x6f,0x74,0x20,0x62,0x65,0x20,0x66, +0x72,0x65,0x65,0x22,0x00,0x00,0x00,0x00,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x73,0x69, +0x7a,0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x6e,0x65,0x78,0x74,0x28,0x62,0x6c, +0x6f,0x63,0x6b,0x29,0x29,0x20,0x3d,0x3d,0x20,0x30,0x20,0x26,0x26,0x20,0x22,0x6e, +0x65,0x78,0x74,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x73,0x69,0x7a,0x65,0x20,0x73, +0x68,0x6f,0x75,0x6c,0x64,0x20,0x62,0x65,0x20,0x7a,0x65,0x72,0x6f,0x22,0x00,0x00, +0x73,0x69,0x7a,0x65,0x6f,0x66,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x68,0x65,0x61, +0x64,0x65,0x72,0x5f,0x74,0x29,0x20,0x3d,0x3d,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x5f, +0x73,0x69,0x7a,0x65,0x5f,0x6d,0x69,0x6e,0x20,0x2b,0x20,0x62,0x6c,0x6f,0x63,0x6b, +0x5f,0x68,0x65,0x61,0x64,0x65,0x72,0x5f,0x6f,0x76,0x65,0x72,0x68,0x65,0x61,0x64, +0x00,0x00,0x00,0x00,0x67,0x61,0x70,0x20,0x3e,0x3d,0x20,0x67,0x61,0x70,0x5f,0x6d, +0x69,0x6e,0x69,0x6d,0x75,0x6d,0x20,0x26,0x26,0x20,0x22,0x67,0x61,0x70,0x20,0x73, +0x69,0x7a,0x65,0x20,0x74,0x6f,0x6f,0x20,0x73,0x6d,0x61,0x6c,0x6c,0x22,0x00,0x00, +0x21,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69,0x73,0x5f,0x66,0x72,0x65,0x65,0x28,0x62, +0x6c,0x6f,0x63,0x6b,0x29,0x20,0x26,0x26,0x20,0x22,0x62,0x6c,0x6f,0x63,0x6b,0x20, +0x61,0x6c,0x72,0x65,0x61,0x64,0x79,0x20,0x6d,0x61,0x72,0x6b,0x65,0x64,0x20,0x61, +0x73,0x20,0x66,0x72,0x65,0x65,0x22,0x00,0x74,0x6c,0x73,0x66,0x5f,0x75,0x73,0x65, +0x64,0x20,0x3e,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x73,0x69,0x7a,0x65,0x28,0x62, +0x6c,0x6f,0x63,0x6b,0x29,0x20,0x26,0x26,0x20,0x22,0x61,0x70,0x70,0x20,0x68,0x65, +0x61,0x70,0x20,0x6d,0x61,0x79,0x20,0x6e,0x6f,0x74,0x20,0x69,0x6e,0x69,0x74,0x2e, +0x22,0x00,0x00,0x00,0x63,0x74,0x5f,0x6d,0x75,0x74,0x65,0x78,0x00,0x00,0x00,0x00, +0xe0,0xda,0xff,0x7f,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,0x03,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0xf4,0x2b,0x00,0x00, +0x00,0x00,0x00,0x00,0x03,0x00,0x08,0x00,0x4b,0x00,0x00,0x00,0xd8,0x26,0x00,0x00, +0x00,0x00,0x00,0x00,0x10,0x00,0x02,0x00,0x9a,0x00,0x00,0x00,0xf4,0x2b,0x00,0x00, +0x00,0x00,0x00,0x00,0x10,0x00,0x08,0x00,0x01,0x00,0x00,0x00,0x00,0x01,0x00,0x00, +0x00,0x00,0x00,0x00,0x10,0x00,0xf1,0xff,0xb7,0x00,0x00,0x00,0xb0,0x2c,0x00,0x00, +0x00,0x00,0x00,0x00,0x10,0x00,0x08,0x00,0x14,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x10,0x00,0x01,0x00,0x31,0x00,0x00,0x00,0xd0,0x26,0x00,0x00, +0x00,0x00,0x00,0x00,0x10,0x00,0x01,0x00,0x41,0x01,0x00,0x00,0x48,0x8e,0x00,0x00, +0x0c,0x00,0x00,0x00,0x11,0x00,0x0b,0x00,0x0a,0x01,0x00,0x00,0x3c,0x7d,0x00,0x00, +0x00,0x00,0x00,0x00,0x10,0x00,0x0b,0x00,0xed,0x00,0x00,0x00,0x3c,0x2d,0x00,0x00, +0x00,0x00,0x00,0x00,0x10,0x00,0x0b,0x00,0x3d,0x00,0x00,0x00,0xd0,0x26,0x00,0x00, +0x00,0x00,0x00,0x00,0x10,0x00,0x02,0x00,0xd0,0x00,0x00,0x00,0x00,0x50,0x00,0x00, +0x00,0x00,0x00,0x00,0x10,0x00,0xf1,0xff,0xc3,0x00,0x00,0x00,0xb0,0x2c,0x00,0x00, +0x00,0x00,0x00,0x00,0x10,0x00,0x08,0x00,0x35,0x01,0x00,0x00,0x58,0x8e,0x00,0x00, +0x00,0x00,0x00,0x00,0x10,0x00,0x0b,0x00,0x8d,0x00,0x00,0x00,0x64,0x62,0x00,0x00, +0x00,0x00,0x00,0x00,0x10,0x00,0xf1,0xff,0xfb,0x00,0x00,0x00,0x3c,0x2d,0x00,0x00, +0x00,0x00,0x00,0x00,0x10,0x00,0x0b,0x00,0xde,0x00,0x00,0x00,0x00,0x10,0x00,0x00, +0x00,0x00,0x00,0x00,0x10,0x00,0xf1,0xff,0x57,0x00,0x00,0x00,0xf4,0x2b,0x00,0x00, +0x00,0x00,0x00,0x00,0x10,0x00,0x07,0x00,0x23,0x00,0x00,0x00,0xd0,0x26,0x00,0x00, +0x00,0x00,0x00,0x00,0x10,0x00,0x01,0x00,0x73,0x00,0x00,0x00,0xf4,0x2b,0x00,0x00, +0x00,0x00,0x00,0x00,0x10,0x00,0x07,0x00,0x52,0x00,0x00,0x00,0x58,0x8e,0x00,0x00, +0x00,0x00,0x00,0x00,0x10,0x00,0x0b,0x00,0x27,0x01,0x00,0x00,0x3c,0x8d,0x00,0x00, +0x00,0x00,0x00,0x00,0x10,0x00,0x0b,0x00,0x17,0x01,0x00,0x00,0x3c,0x7d,0x00,0x00, +0x00,0x00,0x00,0x00,0x10,0x00,0x0b,0x00,0xa9,0x00,0x00,0x00,0xf4,0x2b,0x00,0x00, +0x00,0x00,0x00,0x00,0x10,0x00,0x08,0x00,0x00,0x5f,0x73,0x79,0x73,0x74,0x65,0x6d, +0x5f,0x73,0x74,0x61,0x63,0x6b,0x5f,0x73,0x69,0x7a,0x65,0x00,0x5f,0x5f,0x74,0x65, +0x78,0x74,0x5f,0x73,0x74,0x61,0x72,0x74,0x5f,0x5f,0x00,0x5f,0x5f,0x72,0x65,0x6c, +0x5f,0x73,0x74,0x61,0x72,0x74,0x5f,0x5f,0x00,0x5f,0x5f,0x72,0x65,0x6c,0x5f,0x65, +0x6e,0x64,0x5f,0x5f,0x00,0x5f,0x5f,0x65,0x78,0x64,0x69,0x78,0x5f,0x73,0x74,0x61, +0x72,0x74,0x00,0x5f,0x5f,0x65,0x78,0x64,0x69,0x78,0x5f,0x65,0x6e,0x64,0x00,0x5f, +0x5f,0x70,0x65,0x72,0x6d,0x69,0x73,0x73,0x69,0x6f,0x6e,0x73,0x5f,0x74,0x61,0x62, +0x6c,0x65,0x5f,0x73,0x74,0x61,0x72,0x74,0x5f,0x5f,0x00,0x5f,0x5f,0x70,0x65,0x72, +0x6d,0x69,0x73,0x73,0x69,0x6f,0x6e,0x73,0x5f,0x74,0x61,0x62,0x6c,0x65,0x5f,0x65, +0x6e,0x64,0x5f,0x5f,0x00,0x5f,0x5f,0x72,0x61,0x6d,0x5f,0x73,0x69,0x7a,0x65,0x5f, +0x5f,0x00,0x5f,0x5f,0x64,0x61,0x74,0x61,0x5f,0x73,0x74,0x61,0x72,0x74,0x5f,0x5f, +0x00,0x5f,0x5f,0x67,0x6f,0x74,0x5f,0x73,0x74,0x61,0x72,0x74,0x5f,0x5f,0x00,0x5f, +0x5f,0x67,0x6f,0x74,0x5f,0x65,0x6e,0x64,0x5f,0x5f,0x00,0x5f,0x5f,0x64,0x61,0x74, +0x61,0x5f,0x65,0x6e,0x64,0x5f,0x5f,0x00,0x5f,0x5f,0x68,0x65,0x61,0x70,0x5f,0x73, +0x69,0x7a,0x65,0x5f,0x5f,0x00,0x5f,0x5f,0x73,0x74,0x61,0x63,0x6b,0x5f,0x73,0x69, +0x7a,0x65,0x5f,0x5f,0x00,0x5f,0x5f,0x62,0x73,0x73,0x5f,0x73,0x74,0x61,0x72,0x74, +0x5f,0x5f,0x00,0x5f,0x5f,0x68,0x65,0x61,0x70,0x5f,0x73,0x74,0x61,0x72,0x74,0x5f, +0x5f,0x00,0x5f,0x5f,0x68,0x65,0x61,0x70,0x5f,0x65,0x6e,0x64,0x5f,0x5f,0x00,0x5f, +0x5f,0x73,0x74,0x61,0x63,0x6b,0x5f,0x73,0x74,0x61,0x72,0x74,0x5f,0x5f,0x00,0x5f, +0x5f,0x73,0x74,0x61,0x63,0x6b,0x5f,0x65,0x6e,0x64,0x5f,0x5f,0x00,0x5f,0x5f,0x62, +0x73,0x73,0x5f,0x65,0x6e,0x64,0x5f,0x5f,0x00,0x75,0x74,0x68,0x72,0x65,0x61,0x64, +0x5f,0x67,0x72,0x70,0x00,0x00,0x00,0x00,0x11,0x00,0x00,0x00,0x1a,0x00,0x00,0x00, +0x0c,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x09,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x17,0x00,0x00,0x00,0x0f,0x00,0x00,0x00,0x19,0x00,0x00,0x00,0x15,0x00,0x00,0x00, +0x06,0x00,0x00,0x00,0x07,0x00,0x00,0x00,0x0b,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x0d,0x00,0x00,0x00,0x16,0x00,0x00,0x00,0x10,0x00,0x00,0x00,0x13,0x00,0x00,0x00, +0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +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,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x0e,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x0a,0x00,0x00,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x14,0x00,0x00,0x00,0x11,0x00,0x00,0x00,0x12,0x00,0x00,0x00,0xf4,0x2b,0x00,0x00, +0x17,0x00,0x00,0x00,0xf8,0x2b,0x00,0x00,0x17,0x00,0x00,0x00,0xfc,0x2b,0x00,0x00, +0x17,0x00,0x00,0x00,0x00,0x2c,0x00,0x00,0x17,0x00,0x00,0x00,0x04,0x2c,0x00,0x00, +0x17,0x00,0x00,0x00,0x08,0x2c,0x00,0x00,0x17,0x00,0x00,0x00,0x0c,0x2c,0x00,0x00, +0x17,0x00,0x00,0x00,0x10,0x2c,0x00,0x00,0x17,0x00,0x00,0x00,0x14,0x2c,0x00,0x00, +0x17,0x00,0x00,0x00,0x18,0x2c,0x00,0x00,0x17,0x00,0x00,0x00,0x1c,0x2c,0x00,0x00, +0x17,0x00,0x00,0x00,0x20,0x2c,0x00,0x00,0x17,0x00,0x00,0x00,0x24,0x2c,0x00,0x00, +0x17,0x00,0x00,0x00,0x28,0x2c,0x00,0x00,0x17,0x00,0x00,0x00,0x2c,0x2c,0x00,0x00, +0x17,0x00,0x00,0x00,0x30,0x2c,0x00,0x00,0x17,0x00,0x00,0x00,0x34,0x2c,0x00,0x00, +0x17,0x00,0x00,0x00,0x38,0x2c,0x00,0x00,0x17,0x00,0x00,0x00,0x3c,0x2c,0x00,0x00, +0x17,0x00,0x00,0x00,0x40,0x2c,0x00,0x00,0x17,0x00,0x00,0x00,0x44,0x2c,0x00,0x00, +0x17,0x00,0x00,0x00,0x48,0x2c,0x00,0x00,0x17,0x00,0x00,0x00,0x4c,0x2c,0x00,0x00, +0x17,0x00,0x00,0x00,0x50,0x2c,0x00,0x00,0x17,0x00,0x00,0x00,0x54,0x2c,0x00,0x00, +0x17,0x00,0x00,0x00,0x58,0x2c,0x00,0x00,0x17,0x00,0x00,0x00,0x5c,0x2c,0x00,0x00, +0x17,0x00,0x00,0x00,0x60,0x2c,0x00,0x00,0x17,0x00,0x00,0x00,0x64,0x2c,0x00,0x00, +0x17,0x00,0x00,0x00,0x68,0x2c,0x00,0x00,0x17,0x00,0x00,0x00,0x6c,0x2c,0x00,0x00, +0x17,0x00,0x00,0x00,0x70,0x2c,0x00,0x00,0x17,0x00,0x00,0x00,0x74,0x2c,0x00,0x00, +0x17,0x00,0x00,0x00,0x78,0x2c,0x00,0x00,0x17,0x00,0x00,0x00,0x7c,0x2c,0x00,0x00, +0x17,0x00,0x00,0x00,0x80,0x2c,0x00,0x00,0x17,0x00,0x00,0x00,0x84,0x2c,0x00,0x00, +0x17,0x00,0x00,0x00,0x88,0x2c,0x00,0x00,0x17,0x00,0x00,0x00,0x8c,0x2c,0x00,0x00, +0x17,0x00,0x00,0x00,0x90,0x2c,0x00,0x00,0x17,0x00,0x00,0x00,0x94,0x2c,0x00,0x00, +0x17,0x00,0x00,0x00,0x98,0x2c,0x00,0x00,0x17,0x00,0x00,0x00,0x9c,0x2c,0x00,0x00, +0x17,0x00,0x00,0x00,0xa0,0x2c,0x00,0x00,0x17,0x00,0x00,0x00,0xa4,0x2c,0x00,0x00, +0x17,0x00,0x00,0x00,0xa8,0x2c,0x00,0x00,0x17,0x00,0x00,0x00,0xac,0x2c,0x00,0x00, +0x17,0x00,0x00,0x00,0x80,0x1d,0x00,0x00,0x90,0x1d,0x00,0x00,0x58,0x1d,0x00,0x00, +0x6c,0x1d,0x00,0x00,0xa0,0x1d,0x00,0x00,0x3c,0x8d,0x00,0x00,0x3c,0x8e,0x00,0x00, +0x40,0x8e,0x00,0x00,0xa8,0x1d,0x00,0x00,0x44,0x8e,0x00,0x00,0xcc,0x1d,0x00,0x00, +0x08,0x1e,0x00,0x00,0xbc,0x1c,0x00,0x00,0x2c,0x1e,0x00,0x00,0xc8,0x1c,0x00,0x00, +0x44,0x1e,0x00,0x00,0xd4,0x1c,0x00,0x00,0xe0,0x1c,0x00,0x00,0xc0,0x1e,0x00,0x00, +0xec,0x1e,0x00,0x00,0xec,0x1c,0x00,0x00,0x18,0x1f,0x00,0x00,0x48,0x1f,0x00,0x00, +0x84,0x1f,0x00,0x00,0x00,0x1d,0x00,0x00,0xe8,0x20,0x00,0x00,0x14,0x1d,0x00,0x00, +0x20,0x21,0x00,0x00,0x4c,0x21,0x00,0x00,0x24,0x1d,0x00,0x00,0x94,0x21,0x00,0x00, +0xc0,0x21,0x00,0x00,0x38,0x1d,0x00,0x00,0x50,0x26,0x00,0x00,0x88,0x26,0x00,0x00, +0x4c,0x1d,0x00,0x00,0xb9,0x1b,0x00,0x00,0x54,0x8e,0x00,0x00,0xc4,0x26,0x00,0x00, +0xb0,0x2c,0x00,0x00,0x00,0x00,0x00,0x00,0xd0,0x26,0x00,0x00,0x48,0x8e,0x00,0x00, +0x3c,0x7d,0x00,0x00,0x3c,0x2d,0x00,0x00,0xd0,0x26,0x00,0x00,0xf4,0x2b,0x00,0x00, +0x04,0x00,0x00,0x00,0xc8,0x29,0x00,0x00,0x05,0x00,0x00,0x00,0x78,0x28,0x00,0x00, +0x06,0x00,0x00,0x00,0xd8,0x26,0x00,0x00,0x0a,0x00,0x00,0x00,0x4d,0x01,0x00,0x00, +0x0b,0x00,0x00,0x00,0x10,0x00,0x00,0x00,0x15,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x11,0x00,0x00,0x00,0x7c,0x2a,0x00,0x00,0x12,0x00,0x00,0x00,0x78,0x01,0x00,0x00, +0x13,0x00,0x00,0x00,0x08,0x00,0x00,0x00,0xfb,0xff,0xff,0x6f,0x00,0x00,0x00,0x08, +0xfa,0xff,0xff,0x6f,0x2f,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0xb0,0x2c,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +}; + +const static unsigned char _ping[] = { +0x84,0x46,0x5d,0xe0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x4c,0x57,0x50,0x2e,0x80,0x62,0x00,0x00,0x84,0x36,0x00,0x00,0x84,0x36,0x00,0x00, +0x61,0x70,0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x07,0xe8,0x37,0x00,0x00, +0xe8,0x87,0x00,0x00,0x00,0x50,0x00,0x00,0x00,0x10,0x00,0x00,0x84,0x36,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x23,0x4c,0x24,0x4a,0xa2,0xeb,0x04,0x03,0x4b,0x44,0x23,0xf0,0x07,0x03,0x9d,0x46, +0x00,0x21,0xaf,0xf2,0xd3,0x02,0x22,0xf0,0x01,0x02,0x1d,0x48,0x10,0x44,0x1e,0x4b, +0x13,0x44,0x03,0xe0,0x42,0x58,0x49,0xf8,0x01,0x20,0x04,0x31,0x42,0x18,0x9a,0x42, +0xf8,0xd3,0x00,0x20,0x16,0x49,0x19,0x4a,0xa2,0xeb,0x01,0x02,0x4a,0x44,0x18,0x4b, +0xa3,0xeb,0x01,0x03,0x4b,0x44,0x01,0xe0,0x42,0xf8,0x04,0x0b,0x9a,0x42,0xfb,0xd3, +0x4f,0xf0,0x23,0x30,0x0e,0x49,0x13,0x4a,0xa2,0xeb,0x01,0x02,0x4a,0x44,0x0d,0x4b, +0xa3,0xeb,0x01,0x03,0x4b,0x44,0x01,0xe0,0x42,0xf8,0x04,0x0b,0x9a,0x42,0xfb,0xd3, +0x60,0x46,0x11,0xb4,0x48,0x46,0xaf,0xf2,0x37,0x11,0x21,0xf0,0x01,0x01,0x00,0xf0, +0x1f,0xfb,0xbd,0xe8,0x01,0x10,0x00,0xf0,0xf3,0xfa,0x01,0xf0,0x63,0xf8,0x00,0x00, +0x84,0x36,0x00,0x00,0xe8,0x97,0x00,0x00,0x5c,0x37,0x00,0x00,0xe8,0x37,0x00,0x00, +0x04,0x99,0x00,0x00,0xe8,0x87,0x00,0x00,0xf0,0xb4,0x07,0x46,0x08,0x46,0x11,0x46, +0x1a,0x46,0x04,0xae,0x96,0xe8,0x38,0x00,0x00,0xdf,0xf0,0xbc,0x70,0x47,0x00,0x00, +0x53,0xb9,0x4a,0xb9,0x00,0x29,0x08,0xbf,0x00,0x28,0x1c,0xbf,0x4f,0xf0,0xff,0x31, +0x4f,0xf0,0xff,0x30,0x00,0xf0,0x7e,0xb9,0xad,0xf1,0x08,0x0c,0x6d,0xe9,0x04,0xce, +0x00,0xf0,0x06,0xf8,0xdd,0xf8,0x04,0xe0,0xdd,0xe9,0x02,0x23,0x04,0xb0,0x70,0x47, +0x2d,0xe9,0xf0,0x47,0x8c,0x46,0x0e,0x46,0x04,0x46,0x08,0x9d,0x00,0x2b,0x50,0xd1, +0x8a,0x42,0x17,0x46,0x6c,0xd9,0xb2,0xfa,0x82,0xfe,0xbe,0xf1,0x00,0x0f,0x0b,0xd0, +0xce,0xf1,0x20,0x04,0x20,0xfa,0x04,0xf4,0x01,0xfa,0x0e,0xf6,0x44,0xea,0x06,0x0c, +0x02,0xfa,0x0e,0xf7,0x00,0xfa,0x0e,0xf4,0x4f,0xea,0x17,0x49,0x22,0x0c,0xbc,0xfb, +0xf9,0xf0,0x1f,0xfa,0x87,0xf8,0x09,0xfb,0x10,0xc6,0x42,0xea,0x06,0x46,0x00,0xfb, +0x08,0xf3,0xb3,0x42,0x09,0xd9,0xf6,0x19,0x00,0xf1,0xff,0x32,0x80,0xf0,0x22,0x81, +0xb3,0x42,0x40,0xf2,0x1f,0x81,0x02,0x38,0x3e,0x44,0xf6,0x1a,0xa2,0xb2,0xb6,0xfb, +0xf9,0xf3,0x09,0xfb,0x13,0x66,0x42,0xea,0x06,0x44,0x03,0xfb,0x08,0xf8,0xa0,0x45, +0x09,0xd9,0xe4,0x19,0x03,0xf1,0xff,0x32,0x80,0xf0,0x0a,0x81,0xa0,0x45,0x40,0xf2, +0x07,0x81,0x02,0x3b,0x3c,0x44,0xc8,0xeb,0x04,0x04,0x43,0xea,0x00,0x40,0x00,0x21, +0x00,0x2d,0x62,0xd0,0x24,0xfa,0x0e,0xf4,0x00,0x23,0x2c,0x60,0x6b,0x60,0xbd,0xe8, +0xf0,0x87,0x8b,0x42,0x07,0xd9,0x00,0x2d,0x55,0xd0,0x00,0x21,0x85,0xe8,0x41,0x00, +0x08,0x46,0xbd,0xe8,0xf0,0x87,0xb3,0xfa,0x83,0xf1,0x00,0x29,0x40,0xf0,0x90,0x80, +0xb3,0x42,0x02,0xd3,0x82,0x42,0x00,0xf2,0xf8,0x80,0x84,0x1a,0x66,0xeb,0x03,0x06, +0x01,0x20,0xb4,0x46,0x00,0x2d,0x40,0xd0,0x85,0xe8,0x10,0x10,0xbd,0xe8,0xf0,0x87, +0x12,0xb9,0x01,0x27,0xb7,0xfb,0xf2,0xf7,0xb7,0xfa,0x87,0xfe,0xbe,0xf1,0x00,0x0f, +0x35,0xd1,0xf3,0x1b,0x4f,0xea,0x17,0x48,0x1f,0xfa,0x87,0xfc,0x01,0x21,0xb3,0xfb, +0xf8,0xf0,0x22,0x0c,0x08,0xfb,0x10,0x36,0x42,0xea,0x06,0x46,0x0c,0xfb,0x00,0xf3, +0xb3,0x42,0x07,0xd9,0xf6,0x19,0x00,0xf1,0xff,0x32,0x02,0xd2,0xb3,0x42,0x00,0xf2, +0xce,0x80,0x10,0x46,0xf6,0x1a,0xa2,0xb2,0xb6,0xfb,0xf8,0xf3,0x08,0xfb,0x13,0x66, +0x42,0xea,0x06,0x44,0x0c,0xfb,0x03,0xfc,0xa4,0x45,0x07,0xd9,0xe4,0x19,0x03,0xf1, +0xff,0x32,0x02,0xd2,0xa4,0x45,0x00,0xf2,0xb5,0x80,0x13,0x46,0xcc,0xeb,0x04,0x04, +0x43,0xea,0x00,0x40,0x9c,0xe7,0x29,0x46,0x28,0x46,0xbd,0xe8,0xf0,0x87,0xce,0xf1, +0x20,0x01,0x06,0xfa,0x0e,0xf3,0x07,0xfa,0x0e,0xf7,0x20,0xfa,0x01,0xf9,0x4f,0xea, +0x17,0x48,0xce,0x40,0x49,0xea,0x03,0x09,0xb6,0xfb,0xf8,0xfa,0x4f,0xea,0x19,0x44, +0x08,0xfb,0x1a,0x66,0x1f,0xfa,0x87,0xfc,0x44,0xea,0x06,0x43,0x0a,0xfb,0x0c,0xf2, +0x9a,0x42,0x00,0xfa,0x0e,0xf4,0x0a,0xd9,0xdb,0x19,0x0a,0xf1,0xff,0x31,0x80,0xf0, +0x87,0x80,0x9a,0x42,0x40,0xf2,0x84,0x80,0xaa,0xf1,0x02,0x0a,0x3b,0x44,0x9b,0x1a, +0x1f,0xfa,0x89,0xf9,0xb3,0xfb,0xf8,0xf1,0x08,0xfb,0x11,0x33,0x49,0xea,0x03,0x43, +0x01,0xfb,0x0c,0xf6,0x9e,0x42,0x07,0xd9,0xdb,0x19,0x01,0xf1,0xff,0x32,0x6b,0xd2, +0x9e,0x42,0x69,0xd9,0x02,0x39,0x3b,0x44,0x9b,0x1b,0x41,0xea,0x0a,0x41,0x8e,0xe7, +0xc1,0xf1,0x20,0x0e,0x22,0xfa,0x0e,0xf4,0x8b,0x40,0x23,0x43,0x20,0xfa,0x0e,0xf7, +0x06,0xfa,0x01,0xf4,0x4f,0xea,0x13,0x4c,0x26,0xfa,0x0e,0xf6,0x3c,0x43,0xb6,0xfb, +0xfc,0xf9,0x27,0x0c,0x0c,0xfb,0x19,0x66,0x1f,0xfa,0x83,0xf8,0x47,0xea,0x06,0x46, +0x09,0xfb,0x08,0xf7,0xb7,0x42,0x02,0xfa,0x01,0xf2,0x00,0xfa,0x01,0xfa,0x08,0xd9, +0xf6,0x18,0x09,0xf1,0xff,0x30,0x41,0xd2,0xb7,0x42,0x3f,0xd9,0xa9,0xf1,0x02,0x09, +0x1e,0x44,0xf6,0x1b,0xa0,0xb2,0xb6,0xfb,0xfc,0xf4,0x0c,0xfb,0x14,0x66,0x40,0xea, +0x06,0x47,0x04,0xfb,0x08,0xf8,0xb8,0x45,0x07,0xd9,0xff,0x18,0x04,0xf1,0xff,0x30, +0x28,0xd2,0xb8,0x45,0x26,0xd9,0x02,0x3c,0x1f,0x44,0x44,0xea,0x09,0x40,0xc8,0xeb, +0x07,0x07,0xa0,0xfb,0x02,0x89,0x4f,0x45,0x44,0x46,0x4e,0x46,0x14,0xd3,0x29,0xd0, +0x65,0xb3,0xba,0xeb,0x04,0x03,0x67,0xeb,0x06,0x07,0x07,0xfa,0x0e,0xfe,0xcb,0x40, +0xcf,0x40,0x4e,0xea,0x03,0x03,0x85,0xe8,0x88,0x00,0x00,0x21,0xbd,0xe8,0xf0,0x87, +0x13,0x46,0xf8,0xe6,0x10,0x46,0xe0,0xe6,0xb8,0xeb,0x02,0x04,0x69,0xeb,0x03,0x06, +0x01,0x38,0xe5,0xe7,0x04,0x46,0xd8,0xe7,0x11,0x46,0x95,0xe7,0x81,0x46,0xc0,0xe7, +0x8a,0x46,0x7c,0xe7,0x02,0x3b,0x3c,0x44,0x48,0xe7,0x08,0x46,0x0a,0xe7,0x02,0x38, +0x3e,0x44,0x2f,0xe7,0xc2,0x45,0xe7,0xd3,0x3e,0x46,0xd1,0xe7,0x29,0x46,0xbd,0xe8, +0xf0,0x87,0x00,0xbf,0x70,0x47,0x00,0xbf,0x80,0xb5,0xce,0xb0,0x00,0xaf,0x3b,0x1d, +0x18,0x60,0x3b,0x46,0x19,0x60,0x07,0xf1,0x28,0x03,0x18,0x46,0x4f,0xf4,0x80,0x73, +0x1a,0x46,0x00,0x21,0x01,0xf0,0xb0,0xf9,0x00,0x23,0xc7,0xf8,0x30,0x31,0x00,0x21, +0x57,0x4b,0x59,0xf8,0x03,0x30,0x18,0x46,0x00,0xf0,0xe9,0xf8,0xc7,0xf8,0x2c,0x01, +0xd7,0xf8,0x2c,0x31,0xb3,0xf1,0xff,0x3f,0x08,0xd1,0x52,0x4b,0x59,0xf8,0x03,0x30, +0x18,0x46,0x00,0xf0,0x6f,0xfe,0x4f,0xf0,0xff,0x33,0x94,0xe0,0x4f,0xf4,0x80,0x70, +0x00,0xf0,0x05,0xf9,0xc7,0xf8,0x28,0x01,0xd7,0xf8,0x28,0x31,0x00,0x2b,0x0c,0xd1, +0x49,0x4b,0x59,0xf8,0x03,0x30,0x18,0x46,0x00,0xf0,0x5c,0xfe,0xd7,0xf8,0x2c,0x01, +0x00,0xf0,0xd4,0xf8,0x4f,0xf0,0xff,0x33,0x7d,0xe0,0x4f,0xf4,0x80,0x72,0x00,0x21, +0xd7,0xf8,0x28,0x01,0x01,0xf0,0x78,0xf9,0x00,0x23,0xc7,0xf8,0x34,0x31,0x5f,0xe0, +0x07,0xf1,0x18,0x03,0x01,0x22,0x5a,0x60,0x07,0xf1,0x28,0x00,0xd7,0xf8,0x34,0x31, +0x3a,0x4a,0x59,0xf8,0x02,0x20,0xff,0x21,0x00,0xf0,0x24,0xfe,0x07,0xf1,0x28,0x03, +0x18,0x46,0x01,0xf0,0x63,0xfa,0x03,0x46,0x01,0x33,0xc7,0xf8,0x30,0x31,0x07,0xf1, +0x28,0x03,0xd7,0xf8,0x30,0x21,0x19,0x46,0xd7,0xf8,0x28,0x01,0x00,0xf0,0xac,0xfe, +0x07,0xf1,0x18,0x03,0xd7,0xf8,0x28,0x21,0x9a,0x60,0x07,0xf1,0x28,0x03,0x19,0x46, +0x2b,0x4b,0x59,0xf8,0x03,0x30,0x18,0x46,0x00,0xf0,0x1c,0xfe,0x07,0xf1,0x08,0x02, +0x07,0xf1,0x18,0x01,0x4f,0xf0,0xff,0x33,0xd7,0xf8,0x2c,0x01,0x00,0xf0,0x9b,0xf8, +0x03,0x46,0x00,0x2b,0x06,0xd0,0x23,0x4b,0x59,0xf8,0x03,0x30,0x18,0x46,0x00,0xf0, +0x09,0xfe,0x21,0xe0,0x07,0xf1,0x08,0x03,0x9b,0x68,0x19,0x46,0x1e,0x4b,0x59,0xf8, +0x03,0x30,0x18,0x46,0x00,0xf0,0xfe,0xfd,0xd7,0xf8,0x28,0x11,0x1b,0x4b,0x59,0xf8, +0x03,0x30,0x18,0x46,0x00,0xf0,0xf6,0xfd,0x4f,0xf4,0x80,0x72,0x00,0x21,0xd7,0xf8, +0x28,0x01,0x01,0xf0,0x19,0xf9,0xd7,0xf8,0x34,0x31,0x01,0x33,0xc7,0xf8,0x34,0x31, +0xd7,0xf8,0x34,0x31,0x09,0x2b,0x9b,0xdd,0xd7,0xf8,0x2c,0x01,0x00,0xf0,0x5e,0xf8, +0x0f,0x4b,0x59,0xf8,0x03,0x30,0x18,0x46,0x00,0xf0,0xdc,0xfd,0xd7,0xf8,0x28,0x01, +0x00,0xf0,0x82,0xf8,0x00,0x23,0x18,0x46,0x07,0xf5,0x9c,0x77,0xbd,0x46,0x80,0xbd, +0x00,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x08,0x00,0x00,0x00,0x0c,0x00,0x00,0x00, +0x10,0x00,0x00,0x00,0x14,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x1c,0x00,0x00,0x00, +0x20,0x00,0x00,0x00,0x80,0xb5,0x82,0xb0,0x00,0xaf,0x78,0x60,0x0b,0x46,0xfb,0x70, +0xfb,0x78,0x1a,0x46,0x79,0x68,0x16,0x20,0xff,0xf7,0x86,0xfd,0x03,0x46,0x18,0x46, +0x08,0x37,0xbd,0x46,0x80,0xbd,0x80,0xb5,0x82,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60, +0x3a,0x68,0x79,0x68,0x18,0x20,0xff,0xf7,0x77,0xfd,0x03,0x46,0x18,0x46,0x08,0x37, +0xbd,0x46,0x80,0xbd,0x80,0xb5,0x82,0xb0,0x00,0xaf,0x78,0x60,0x79,0x68,0x19,0x20, +0xff,0xf7,0x6a,0xfd,0x03,0x46,0x18,0x46,0x08,0x37,0xbd,0x46,0x80,0xbd,0x80,0xb5, +0x82,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60,0x3a,0x68,0x79,0x68,0x2c,0x20,0xff,0xf7, +0x5b,0xfd,0x03,0x46,0x18,0x46,0x08,0x37,0xbd,0x46,0x80,0xbd,0x80,0xb5,0x82,0xb0, +0x00,0xaf,0x78,0x60,0x79,0x68,0x2d,0x20,0xff,0xf7,0x4e,0xfd,0x03,0x46,0x18,0x46, +0x08,0x37,0xbd,0x46,0x80,0xbd,0x80,0xb5,0x86,0xb0,0x02,0xaf,0xf8,0x60,0xb9,0x60, +0x7a,0x60,0x3b,0x60,0x3b,0x68,0x00,0x93,0x7b,0x68,0xba,0x68,0xf9,0x68,0x2f,0x20, +0xff,0xf7,0x3a,0xfd,0x03,0x46,0x18,0x46,0x10,0x37,0xbd,0x46,0x80,0xbd,0x80,0xb5, +0x82,0xb0,0x00,0xaf,0x78,0x60,0x79,0x68,0x37,0x20,0xff,0xf7,0x2d,0xfd,0x03,0x46, +0x18,0x46,0x08,0x37,0xbd,0x46,0x80,0xbd,0x80,0xb5,0x82,0xb0,0x00,0xaf,0x78,0x60, +0x79,0x68,0x38,0x20,0xff,0xf7,0x20,0xfd,0x00,0xbf,0x08,0x37,0xbd,0x46,0x80,0xbd, +0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68,0x1b,0x68,0xfb,0x60,0x7b,0x68, +0x04,0x33,0xbb,0x60,0x0c,0x4b,0x59,0xf8,0x03,0x30,0x1a,0x46,0x0b,0x4b,0x59,0xf8, +0x03,0x30,0xd3,0x1a,0x19,0x46,0x09,0x4b,0x59,0xf8,0x03,0x30,0x18,0x46,0x00,0xf0, +0x65,0xfd,0x01,0xf0,0x0d,0xff,0xb9,0x68,0xf8,0x68,0xff,0xf7,0x95,0xfe,0x03,0x46, +0x18,0x46,0x00,0xf0,0x4f,0xfd,0x00,0xbf,0xc8,0x00,0x00,0x00,0xcc,0x00,0x00,0x00, +0x80,0xb4,0x8d,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60,0x47,0x4b,0x59,0xf8,0x03,0x30, +0x7b,0x62,0x46,0x4b,0x59,0xf8,0x03,0x30,0x3b,0x62,0x45,0x4b,0x59,0xf8,0x03,0x30, +0xfb,0x61,0x00,0x23,0xfb,0x62,0x7b,0x6a,0xbb,0x62,0x2e,0xe0,0xfb,0x6a,0x9b,0x00, +0x7a,0x68,0x13,0x44,0x1b,0x68,0x7a,0x6a,0x9a,0x42,0x10,0xd8,0xfb,0x6a,0x9b,0x00, +0x7a,0x68,0x13,0x44,0x1a,0x68,0x7b,0x6a,0xd3,0x1a,0x3b,0x61,0x79,0x68,0xfb,0x6a, +0x9b,0x00,0x7a,0x68,0x13,0x44,0x3a,0x69,0x0a,0x44,0x1a,0x60,0x0f,0xe0,0xfb,0x6a, +0x9b,0x00,0x7a,0x68,0x13,0x44,0x1a,0x68,0xfb,0x69,0xd3,0x1a,0x3b,0x61,0xfb,0x6a, +0x9b,0x00,0x7a,0x68,0x13,0x44,0x39,0x69,0x3a,0x68,0x0a,0x44,0x1a,0x60,0xbb,0x6a, +0x04,0x33,0xbb,0x62,0xfb,0x6a,0x01,0x33,0xfb,0x62,0xba,0x6a,0x3b,0x6a,0x9a,0x42, +0xcc,0xd3,0x28,0x4b,0x59,0xf8,0x03,0x30,0xbb,0x61,0x27,0x4b,0x59,0xf8,0x03,0x30, +0x7b,0x61,0x00,0x23,0xfb,0x62,0xbb,0x69,0xbb,0x62,0x33,0xe0,0xfb,0x6a,0x01,0x33, +0x9b,0x00,0xba,0x69,0x13,0x44,0x1b,0x68,0x17,0x2b,0x25,0xd1,0xfb,0x6a,0x9b,0x00, +0xba,0x69,0x13,0x44,0x1a,0x68,0x7b,0x6a,0xd3,0x1a,0x3b,0x61,0x7a,0x68,0x3b,0x69, +0x13,0x44,0xfb,0x60,0xfb,0x68,0x1b,0x68,0x7a,0x6a,0x9a,0x42,0x0a,0xd8,0xfb,0x68, +0x1a,0x68,0x7b,0x6a,0xd3,0x1a,0x3b,0x61,0x7a,0x68,0x3b,0x69,0x1a,0x44,0xfb,0x68, +0x1a,0x60,0x09,0xe0,0xfb,0x68,0x1a,0x68,0xfb,0x69,0xd3,0x1a,0x3b,0x61,0x3a,0x69, +0x3b,0x68,0x1a,0x44,0xfb,0x68,0x1a,0x60,0xbb,0x6a,0x08,0x33,0xbb,0x62,0xfb,0x6a, +0x02,0x33,0xfb,0x62,0x7b,0x69,0xba,0x6a,0x9a,0x42,0xc7,0xd3,0x00,0xbf,0x34,0x37, +0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47,0xd4,0x00,0x00,0x00,0xb8,0x00,0x00,0x00, +0xbc,0x00,0x00,0x00,0xd0,0x00,0x00,0x00,0xc0,0x00,0x00,0x00,0x90,0xb5,0x85,0xb0, +0x00,0xaf,0x78,0x60,0x39,0x60,0x3b,0x68,0x0a,0x2b,0x1e,0xd1,0x7b,0x68,0xd3,0xe9, +0x00,0x34,0x18,0x46,0x21,0x46,0x4f,0xf0,0x0a,0x02,0x4f,0xf0,0x00,0x03,0xff,0xf7, +0x4f,0xfc,0x1c,0x46,0x13,0x46,0xfb,0x60,0x7b,0x68,0xd3,0xe9,0x00,0x34,0x18,0x46, +0x21,0x46,0x4f,0xf0,0x0a,0x02,0x4f,0xf0,0x00,0x03,0xff,0xf7,0x41,0xfc,0x03,0x46, +0x0c,0x46,0x7a,0x68,0xc2,0xe9,0x00,0x34,0x15,0xe0,0x7b,0x68,0xd3,0xe9,0x00,0x34, +0x03,0xf0,0x0f,0x03,0xfb,0x60,0x7b,0x68,0xd3,0xe9,0x00,0x34,0x19,0x46,0x22,0x46, +0x4f,0xf0,0x00,0x03,0x4f,0xf0,0x00,0x04,0x0b,0x09,0x43,0xea,0x02,0x73,0x14,0x09, +0x7a,0x68,0xc2,0xe9,0x00,0x34,0xfb,0x68,0x18,0x46,0x14,0x37,0xbd,0x46,0x90,0xbd, +0x90,0xb4,0x82,0xb0,0x00,0xaf,0x78,0x60,0x00,0x24,0x0d,0xe0,0x23,0x46,0x9b,0x00, +0x23,0x44,0x5b,0x00,0x18,0x46,0x7b,0x68,0x1b,0x68,0x59,0x1c,0x7a,0x68,0x11,0x60, +0x1b,0x78,0x03,0x44,0xa3,0xf1,0x30,0x04,0x7b,0x68,0x1b,0x68,0x1b,0x78,0x30,0x3b, +0x09,0x2b,0xeb,0xd9,0x23,0x46,0x18,0x46,0x08,0x37,0xbd,0x46,0x90,0xbc,0x70,0x47, +0xb0,0xb5,0x90,0xb0,0x00,0xaf,0xf8,0x60,0xb9,0x60,0xc7,0xe9,0x00,0x23,0xbb,0x6d, +0xbb,0x63,0x7c,0x6d,0xfb,0x6d,0x03,0xf0,0x40,0x03,0x00,0x2b,0x03,0xd0,0x74,0x4b, +0x59,0xf8,0x03,0x30,0x02,0xe0,0x73,0x4b,0x59,0xf8,0x03,0x30,0x7b,0x63,0xfb,0x6d, +0x03,0xf0,0x10,0x03,0x00,0x2b,0x03,0xd0,0xfb,0x6d,0x23,0xf0,0x01,0x03,0xfb,0x65, +0xfb,0x6d,0x03,0xf0,0x01,0x03,0x00,0x2b,0x01,0xd0,0x30,0x23,0x00,0xe0,0x20,0x23, +0x87,0xf8,0x33,0x30,0x00,0x23,0x87,0xf8,0x3f,0x30,0xfb,0x6d,0x03,0xf0,0x02,0x03, +0x00,0x2b,0x21,0xd0,0xd7,0xe9,0x00,0x23,0x00,0x2a,0x73,0xf1,0x00,0x03,0x0a,0xda, +0x2d,0x23,0x87,0xf8,0x3f,0x30,0xd7,0xe9,0x00,0x23,0x52,0x42,0x63,0xeb,0x43,0x03, +0xc7,0xe9,0x00,0x23,0x10,0xe0,0xfb,0x6d,0x03,0xf0,0x04,0x03,0x00,0x2b,0x03,0xd0, +0x2b,0x23,0x87,0xf8,0x3f,0x30,0x07,0xe0,0xfb,0x6d,0x03,0xf0,0x08,0x03,0x00,0x2b, +0x02,0xd0,0x20,0x23,0x87,0xf8,0x3f,0x30,0x00,0x25,0xd7,0xe9,0x00,0x23,0x13,0x43, +0x19,0xd1,0x2b,0x46,0x5d,0x1c,0x07,0xf1,0x40,0x02,0x13,0x44,0x30,0x22,0x03,0xf8, +0x30,0x2c,0x14,0xe0,0x3b,0x46,0x39,0x6d,0x18,0x46,0xff,0xf7,0x37,0xff,0x03,0x46, +0x1a,0x46,0x7b,0x6b,0x1a,0x44,0x2b,0x46,0x5d,0x1c,0x12,0x78,0x07,0xf1,0x40,0x01, +0x0b,0x44,0x03,0xf8,0x30,0x2c,0xd7,0xe9,0x00,0x23,0x13,0x43,0xea,0xd1,0xbb,0x6d, +0x9d,0x42,0x00,0xdd,0xbd,0x65,0xbb,0x6d,0xe4,0x1a,0xfb,0x6d,0x03,0xf0,0x11,0x03, +0x00,0x2b,0x15,0xd1,0x97,0xf8,0x3f,0x30,0x00,0x2b,0x0d,0xd0,0x00,0x2c,0x0b,0xdd, +0x01,0x3c,0x09,0xe0,0xfa,0x68,0xbb,0x68,0x9a,0x42,0x02,0xd2,0xfb,0x68,0x20,0x22, +0x1a,0x70,0xfb,0x68,0x01,0x33,0xfb,0x60,0x23,0x46,0x5c,0x1e,0x00,0x2b,0xf1,0xdc, +0x97,0xf8,0x3f,0x30,0x00,0x2b,0x0b,0xd0,0xfa,0x68,0xbb,0x68,0x9a,0x42,0x03,0xd2, +0xfb,0x68,0x97,0xf8,0x3f,0x20,0x1a,0x70,0x01,0x3c,0xfb,0x68,0x01,0x33,0xfb,0x60, +0xfb,0x6d,0x03,0xf0,0x10,0x03,0x00,0x2b,0x1a,0xd1,0x0a,0xe0,0xfa,0x68,0xbb,0x68, +0x9a,0x42,0x03,0xd2,0xfb,0x68,0x97,0xf8,0x33,0x20,0x1a,0x70,0xfb,0x68,0x01,0x33, +0xfb,0x60,0x23,0x46,0x5c,0x1e,0x00,0x2b,0xf0,0xdc,0x09,0xe0,0xfa,0x68,0xbb,0x68, +0x9a,0x42,0x02,0xd2,0xfb,0x68,0x30,0x22,0x1a,0x70,0xfb,0x68,0x01,0x33,0xfb,0x60, +0xbb,0x6d,0x5a,0x1e,0xba,0x65,0x9d,0x42,0xf0,0xdb,0x0d,0xe0,0xfa,0x68,0xbb,0x68, +0x9a,0x42,0x06,0xd2,0x07,0xf1,0x40,0x03,0x2b,0x44,0x13,0xf8,0x30,0x2c,0xfb,0x68, +0x1a,0x70,0xfb,0x68,0x01,0x33,0xfb,0x60,0x2b,0x46,0x5d,0x1e,0x00,0x2b,0x0d,0xdd, +0xbb,0x6b,0x00,0x2b,0xea,0xd1,0x09,0xe0,0xfa,0x68,0xbb,0x68,0x9a,0x42,0x02,0xd2, +0xfb,0x68,0x20,0x22,0x1a,0x70,0xfb,0x68,0x01,0x33,0xfb,0x60,0x23,0x46,0x5c,0x1e, +0x00,0x2b,0xf1,0xdc,0xfb,0x68,0x18,0x46,0x40,0x37,0xbd,0x46,0xb0,0xbd,0x00,0xbf, +0x24,0x00,0x00,0x00,0x28,0x00,0x00,0x00,0x90,0xb5,0x95,0xb0,0x04,0xaf,0xf8,0x60, +0xb9,0x60,0x7a,0x60,0x3b,0x60,0xfb,0x68,0xfb,0x62,0xfa,0x68,0xbb,0x68,0x13,0x44, +0xbb,0x62,0xba,0x6a,0xfb,0x68,0x9a,0x42,0x80,0xf0,0xde,0x82,0x4f,0xf0,0xff,0x33, +0xbb,0x62,0xba,0x6a,0xfb,0x68,0xd3,0x1a,0xbb,0x60,0xd5,0xe2,0x7b,0x68,0x1b,0x78, +0x25,0x2b,0x0b,0xd0,0xfa,0x6a,0xbb,0x6a,0x9a,0x42,0x03,0xd2,0x7b,0x68,0x1a,0x78, +0xfb,0x6a,0x1a,0x70,0xfb,0x6a,0x01,0x33,0xfb,0x62,0xc2,0xe2,0x00,0x23,0x87,0xf8, +0x22,0x30,0x7b,0x68,0x01,0x33,0x7b,0x60,0x7b,0x68,0x1b,0x78,0x2d,0x2b,0x06,0xd1, +0x97,0xf8,0x22,0x30,0x43,0xf0,0x10,0x03,0x87,0xf8,0x22,0x30,0xf1,0xe7,0x7b,0x68, +0x1b,0x78,0x2b,0x2b,0x06,0xd1,0x97,0xf8,0x22,0x30,0x43,0xf0,0x04,0x03,0x87,0xf8, +0x22,0x30,0xe6,0xe7,0x7b,0x68,0x1b,0x78,0x20,0x2b,0x06,0xd1,0x97,0xf8,0x22,0x30, +0x43,0xf0,0x08,0x03,0x87,0xf8,0x22,0x30,0xdb,0xe7,0x7b,0x68,0x1b,0x78,0x23,0x2b, +0x06,0xd1,0x97,0xf8,0x22,0x30,0x43,0xf0,0x20,0x03,0x87,0xf8,0x22,0x30,0xd0,0xe7, +0x7b,0x68,0x1b,0x78,0x30,0x2b,0x06,0xd1,0x97,0xf8,0x22,0x30,0x43,0xf0,0x01,0x03, +0x87,0xf8,0x22,0x30,0xc5,0xe7,0x00,0xbf,0x4f,0xf0,0xff,0x33,0xfb,0x61,0x7b,0x68, +0x1b,0x78,0x30,0x3b,0x09,0x2b,0x05,0xd8,0x3b,0x1d,0x18,0x46,0xff,0xf7,0x70,0xfe, +0xf8,0x61,0x17,0xe0,0x7b,0x68,0x1b,0x78,0x2a,0x2b,0x13,0xd1,0x7b,0x68,0x01,0x33, +0x7b,0x60,0x3b,0x68,0x1a,0x1d,0x3a,0x60,0x1b,0x68,0xfb,0x61,0xfb,0x69,0x00,0x2b, +0x08,0xda,0xfb,0x69,0x5b,0x42,0xfb,0x61,0x97,0xf8,0x22,0x30,0x43,0xf0,0x10,0x03, +0x87,0xf8,0x22,0x30,0x4f,0xf0,0xff,0x33,0xbb,0x61,0x7b,0x68,0x1b,0x78,0x2e,0x2b, +0x1e,0xd1,0x7b,0x68,0x01,0x33,0x7b,0x60,0x7b,0x68,0x1b,0x78,0x30,0x3b,0x09,0x2b, +0x05,0xd8,0x3b,0x1d,0x18,0x46,0xff,0xf7,0x43,0xfe,0xb8,0x61,0x0b,0xe0,0x7b,0x68, +0x1b,0x78,0x2a,0x2b,0x07,0xd1,0x7b,0x68,0x01,0x33,0x7b,0x60,0x3b,0x68,0x1a,0x1d, +0x3a,0x60,0x1b,0x68,0xbb,0x61,0xbb,0x69,0x00,0x2b,0x01,0xda,0x00,0x23,0xbb,0x61, +0x00,0x23,0x87,0xf8,0x21,0x30,0x7b,0x68,0x1b,0x78,0x68,0x2b,0x07,0xd0,0x7b,0x68, +0x1b,0x78,0x6c,0x2b,0x03,0xd0,0x7b,0x68,0x1b,0x78,0x4c,0x2b,0x14,0xd1,0x7b,0x68, +0x1b,0x78,0x87,0xf8,0x21,0x30,0x7b,0x68,0x01,0x33,0x7b,0x60,0x97,0xf8,0x21,0x30, +0x6c,0x2b,0x09,0xd1,0x7b,0x68,0x1b,0x78,0x6c,0x2b,0x05,0xd1,0x4c,0x23,0x87,0xf8, +0x21,0x30,0x7b,0x68,0x01,0x33,0x7b,0x60,0x0a,0x23,0x87,0xf8,0x23,0x30,0x7b,0x68, +0x1b,0x78,0x25,0x3b,0x53,0x2b,0x00,0xf2,0x83,0x81,0x02,0xa2,0x52,0xf8,0x23,0x30, +0x1a,0x44,0x10,0x47,0xbd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xdb,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0x51,0x01,0x00,0x00, +0xef,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xef,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xd3,0x02,0x00,0x00, +0x77,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xc1,0x01,0x00,0x00, +0xfd,0x02,0x00,0x00,0x39,0x03,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xe7,0x02,0x00,0x00,0x97,0xf8,0x22,0x30,0x03,0xf0,0x10,0x03,0x00,0x2b,0x10,0xd1, +0x09,0xe0,0xfa,0x6a,0xbb,0x6a,0x9a,0x42,0x02,0xd2,0xfb,0x6a,0x20,0x22,0x1a,0x70, +0xfb,0x6a,0x01,0x33,0xfb,0x62,0xfb,0x69,0x01,0x3b,0xfb,0x61,0xfb,0x69,0x00,0x2b, +0xef,0xdc,0x3b,0x68,0x1a,0x1d,0x3a,0x60,0x1b,0x68,0xfb,0x75,0xfa,0x6a,0xbb,0x6a, +0x9a,0x42,0x02,0xd2,0xfb,0x6a,0xfa,0x7d,0x1a,0x70,0xfb,0x6a,0x01,0x33,0xfb,0x62, +0x09,0xe0,0xfa,0x6a,0xbb,0x6a,0x9a,0x42,0x02,0xd2,0xfb,0x6a,0x20,0x22,0x1a,0x70, +0xfb,0x6a,0x01,0x33,0xfb,0x62,0xfb,0x69,0x01,0x3b,0xfb,0x61,0xfb,0x69,0x00,0x2b, +0xef,0xdc,0x26,0xe1,0x3b,0x68,0x1a,0x1d,0x3a,0x60,0x1b,0x68,0x7b,0x62,0x7b,0x6a, +0x00,0x2b,0x03,0xd1,0x9e,0x4b,0x59,0xf8,0x03,0x30,0x7b,0x62,0x78,0x6a,0x00,0xf0, +0x7d,0xfd,0x03,0x46,0x3b,0x63,0xbb,0x69,0x00,0x2b,0x05,0xdd,0x3a,0x6b,0xbb,0x69, +0x9a,0x42,0x01,0xdd,0xbb,0x69,0x3b,0x63,0x97,0xf8,0x22,0x30,0x03,0xf0,0x10,0x03, +0x00,0x2b,0x10,0xd1,0x09,0xe0,0xfa,0x6a,0xbb,0x6a,0x9a,0x42,0x02,0xd2,0xfb,0x6a, +0x20,0x22,0x1a,0x70,0xfb,0x6a,0x01,0x33,0xfb,0x62,0xfb,0x69,0x5a,0x1e,0xfa,0x61, +0x3a,0x6b,0x9a,0x42,0xef,0xdb,0x00,0x23,0x7b,0x63,0x10,0xe0,0xfa,0x6a,0xbb,0x6a, +0x9a,0x42,0x03,0xd2,0x7b,0x6a,0x1a,0x78,0xfb,0x6a,0x1a,0x70,0xfb,0x6a,0x01,0x33, +0xfb,0x62,0x7b,0x6a,0x01,0x33,0x7b,0x62,0x7b,0x6b,0x01,0x33,0x7b,0x63,0x7a,0x6b, +0x3b,0x6b,0x9a,0x42,0xea,0xdb,0x09,0xe0,0xfa,0x6a,0xbb,0x6a,0x9a,0x42,0x02,0xd2, +0xfb,0x6a,0x20,0x22,0x1a,0x70,0xfb,0x6a,0x01,0x33,0xfb,0x62,0xfb,0x69,0x5a,0x1e, +0xfa,0x61,0x3a,0x6b,0x9a,0x42,0xef,0xdb,0xcb,0xe0,0xfb,0x69,0xb3,0xf1,0xff,0x3f, +0x07,0xd1,0x08,0x23,0xfb,0x61,0x97,0xf8,0x22,0x30,0x43,0xf0,0x01,0x03,0x87,0xf8, +0x22,0x30,0x3b,0x68,0x1a,0x1d,0x3a,0x60,0x1b,0x68,0x4f,0xea,0xe3,0x74,0x97,0xf8, +0x22,0x20,0x03,0x92,0xba,0x69,0x02,0x92,0xfa,0x69,0x01,0x92,0x10,0x22,0x00,0x92, +0x1a,0x46,0x23,0x46,0xb9,0x6a,0xf8,0x6a,0xff,0xf7,0xc2,0xfc,0xf8,0x62,0xa8,0xe0, +0xfa,0x6a,0xbb,0x6a,0x9a,0x42,0x02,0xd2,0xfb,0x6a,0x25,0x22,0x1a,0x70,0xfb,0x6a, +0x01,0x33,0xfb,0x62,0x9d,0xe0,0x08,0x23,0x87,0xf8,0x23,0x30,0x2f,0xe0,0x97,0xf8, +0x22,0x30,0x43,0xf0,0x40,0x03,0x87,0xf8,0x22,0x30,0x10,0x23,0x87,0xf8,0x23,0x30, +0x25,0xe0,0x97,0xf8,0x22,0x30,0x43,0xf0,0x02,0x03,0x87,0xf8,0x22,0x30,0x1d,0xe0, +0xfa,0x6a,0xbb,0x6a,0x9a,0x42,0x02,0xd2,0xfb,0x6a,0x25,0x22,0x1a,0x70,0xfb,0x6a, +0x01,0x33,0xfb,0x62,0x7b,0x68,0x1b,0x78,0x00,0x2b,0x0b,0xd0,0xfa,0x6a,0xbb,0x6a, +0x9a,0x42,0x03,0xd2,0x7b,0x68,0x1a,0x78,0xfb,0x6a,0x1a,0x70,0xfb,0x6a,0x01,0x33, +0xfb,0x62,0x6e,0xe0,0x7b,0x68,0x01,0x3b,0x7b,0x60,0x6a,0xe0,0x00,0xbf,0x97,0xf8, +0x21,0x30,0x4c,0x2b,0x0b,0xd1,0x3b,0x68,0x07,0x33,0x23,0xf0,0x07,0x03,0x03,0xf1, +0x08,0x02,0x3a,0x60,0xd3,0xe9,0x00,0x34,0xc7,0xe9,0x0e,0x34,0x46,0xe0,0x97,0xf8, +0x21,0x30,0x6c,0x2b,0x13,0xd1,0x3b,0x68,0x1a,0x1d,0x3a,0x60,0x1b,0x68,0x4f,0xf0, +0x00,0x04,0xc7,0xe9,0x0e,0x34,0x97,0xf8,0x22,0x30,0x03,0xf0,0x02,0x03,0x00,0x2b, +0x34,0xd0,0xbb,0x6b,0x4f,0xea,0xe3,0x74,0xc7,0xe9,0x0e,0x34,0x2e,0xe0,0x97,0xf8, +0x21,0x30,0x68,0x2b,0x17,0xd1,0x3b,0x68,0x1a,0x1d,0x3a,0x60,0x1b,0x68,0x9b,0xb2, +0x9b,0xb2,0x4f,0xf0,0x00,0x04,0xc7,0xe9,0x0e,0x34,0x97,0xf8,0x22,0x30,0x03,0xf0, +0x02,0x03,0x00,0x2b,0x1a,0xd0,0xb7,0xf9,0x38,0x30,0x1b,0xb2,0x4f,0xea,0xe3,0x74, +0xc7,0xe9,0x0e,0x34,0x12,0xe0,0x3b,0x68,0x1a,0x1d,0x3a,0x60,0x1b,0x68,0x4f,0xf0, +0x00,0x04,0xc7,0xe9,0x0e,0x34,0x97,0xf8,0x22,0x30,0x03,0xf0,0x02,0x03,0x00,0x2b, +0x04,0xd0,0xbb,0x6b,0x4f,0xea,0xe3,0x74,0xc7,0xe9,0x0e,0x34,0xd7,0xe9,0x0e,0x34, +0x97,0xf8,0x23,0x20,0x97,0xf8,0x22,0x10,0x03,0x91,0xb9,0x69,0x02,0x91,0xf9,0x69, +0x01,0x91,0x00,0x92,0x1a,0x46,0x23,0x46,0xb9,0x6a,0xf8,0x6a,0xff,0xf7,0x18,0xfc, +0xf8,0x62,0x7b,0x68,0x01,0x33,0x7b,0x60,0x7b,0x68,0x1b,0x78,0x00,0x2b,0x7f,0xf4, +0x25,0xad,0xbb,0x68,0x00,0x2b,0x0b,0xd0,0xfa,0x6a,0xbb,0x6a,0x9a,0x42,0x03,0xd2, +0xfb,0x6a,0x00,0x22,0x1a,0x70,0x03,0xe0,0xbb,0x6a,0x01,0x3b,0x00,0x22,0x1a,0x70, +0xfa,0x6a,0xfb,0x68,0xd3,0x1a,0x18,0x46,0x44,0x37,0xbd,0x46,0x90,0xbd,0x00,0xbf, +0x2c,0x00,0x00,0x00,0x0c,0xb4,0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60, +0x07,0xf1,0x1c,0x03,0xbb,0x60,0xbb,0x68,0xba,0x69,0x39,0x68,0x78,0x68,0xff,0xf7, +0xe3,0xfc,0xf8,0x60,0xfb,0x68,0x18,0x46,0x10,0x37,0xbd,0x46,0xbd,0xe8,0x80,0x40, +0x02,0xb0,0x70,0x47,0x0f,0xb4,0x80,0xb5,0x82,0xb0,0x00,0xaf,0x07,0xf1,0x14,0x03, +0x3b,0x60,0x3b,0x68,0x3a,0x69,0xff,0x21,0x0d,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7, +0xcb,0xfc,0x03,0x46,0x7b,0x60,0x7b,0x68,0xff,0x2b,0x01,0xd9,0xff,0x23,0x7b,0x60, +0x7a,0x68,0x07,0x4b,0x59,0xf8,0x03,0x30,0x19,0x46,0xff,0x20,0xfe,0xf7,0xb4,0xff, +0x00,0xbf,0x08,0x37,0xbd,0x46,0xbd,0xe8,0x80,0x40,0x04,0xb0,0x70,0x47,0x00,0xbf, +0x30,0x00,0x00,0x00,0x80,0xb5,0x82,0xb0,0x00,0xaf,0x78,0x60,0x79,0x68,0x01,0x20, +0xfe,0xf7,0xa2,0xff,0x00,0xbf,0x08,0x37,0xbd,0x46,0x80,0xbd,0x80,0xb5,0x82,0xb0, +0x00,0xaf,0x78,0x60,0x39,0x60,0x0f,0x4b,0x59,0xf8,0x03,0x30,0x1b,0x68,0x00,0x2b, +0x14,0xd1,0x01,0x21,0x0c,0x4b,0x59,0xf8,0x03,0x30,0x18,0x46,0xff,0xf7,0xfa,0xf9, +0x02,0x46,0x0a,0x4b,0x59,0xf8,0x03,0x30,0x1a,0x60,0x39,0x68,0x78,0x68,0x01,0xf0, +0xcd,0xf8,0x02,0x46,0x03,0x4b,0x59,0xf8,0x03,0x30,0x1a,0x60,0x00,0xbf,0x08,0x37, +0xbd,0x46,0x80,0xbd,0x34,0x00,0x00,0x00,0x3c,0x00,0x00,0x00,0x38,0x00,0x00,0x00, +0x80,0xb5,0x82,0xb0,0x00,0xaf,0x78,0x60,0x0d,0x4b,0x59,0xf8,0x03,0x30,0x1b,0x68, +0x4f,0xf0,0xff,0x31,0x18,0x46,0xff,0xf7,0xe6,0xf9,0x0a,0x4b,0x59,0xf8,0x03,0x30, +0x1b,0x68,0x79,0x68,0x18,0x46,0x01,0xf0,0xcf,0xf8,0x05,0x4b,0x59,0xf8,0x03,0x30, +0x1b,0x68,0x18,0x46,0xff,0xf7,0xe6,0xf9,0x00,0xbf,0x08,0x37,0xbd,0x46,0x80,0xbd, +0x38,0x00,0x00,0x00,0x34,0x00,0x00,0x00,0x80,0xb4,0x89,0xb0,0x00,0xaf,0xf8,0x60, +0xb9,0x60,0x7a,0x60,0xfb,0x68,0xfb,0x61,0xbb,0x68,0xbb,0x61,0x0a,0xe0,0xba,0x69, +0x53,0x1c,0xbb,0x61,0xfb,0x69,0x59,0x1c,0xf9,0x61,0x12,0x78,0x1a,0x70,0x7b,0x68, +0x01,0x3b,0x7b,0x60,0xbb,0x69,0x03,0xf0,0x03,0x03,0x00,0x2b,0x02,0xd0,0x7b,0x68, +0x00,0x2b,0xec,0xd1,0xfb,0x69,0x03,0xf0,0x03,0x03,0x00,0x2b,0x68,0xd1,0x20,0xe0, +0xbb,0x69,0x1a,0x68,0xfb,0x69,0x1a,0x60,0xbb,0x69,0x1a,0x1d,0xfb,0x69,0x04,0x33, +0x12,0x68,0x1a,0x60,0xbb,0x69,0x03,0xf1,0x08,0x02,0xfb,0x69,0x08,0x33,0x12,0x68, +0x1a,0x60,0xbb,0x69,0x03,0xf1,0x0c,0x02,0xfb,0x69,0x0c,0x33,0x12,0x68,0x1a,0x60, +0xbb,0x69,0x10,0x33,0xbb,0x61,0xfb,0x69,0x10,0x33,0xfb,0x61,0x7b,0x68,0x10,0x3b, +0x7b,0x60,0x7b,0x68,0x0f,0x2b,0xdb,0xd8,0x7b,0x68,0x03,0xf0,0x08,0x03,0x00,0x2b, +0x0f,0xd0,0xbb,0x69,0x1a,0x68,0xfb,0x69,0x1a,0x60,0xbb,0x69,0x1a,0x1d,0xfb,0x69, +0x04,0x33,0x12,0x68,0x1a,0x60,0xfb,0x69,0x08,0x33,0xfb,0x61,0xbb,0x69,0x08,0x33, +0xbb,0x61,0x7b,0x68,0x03,0xf0,0x04,0x03,0x00,0x2b,0x09,0xd0,0xbb,0x69,0x1a,0x68, +0xfb,0x69,0x1a,0x60,0xfb,0x69,0x04,0x33,0xfb,0x61,0xbb,0x69,0x04,0x33,0xbb,0x61, +0x7b,0x68,0x03,0xf0,0x02,0x03,0x00,0x2b,0x0f,0xd0,0xba,0x69,0x53,0x1c,0xbb,0x61, +0xfb,0x69,0x59,0x1c,0xf9,0x61,0x12,0x78,0x1a,0x70,0xba,0x69,0x53,0x1c,0xbb,0x61, +0xfb,0x69,0x59,0x1c,0xf9,0x61,0x12,0x78,0x1a,0x70,0x7b,0x68,0x03,0xf0,0x01,0x03, +0x00,0x2b,0x03,0xd0,0xbb,0x69,0x1a,0x78,0xfb,0x69,0x1a,0x70,0xfb,0x68,0x15,0xe2, +0x7b,0x68,0x1f,0x2b,0x40,0xf2,0x04,0x81,0xfb,0x69,0x03,0xf0,0x03,0x03,0x02,0x2b, +0x60,0xd0,0x03,0x2b,0x00,0xf0,0xb1,0x80,0x01,0x2b,0x40,0xf0,0xf9,0x80,0xbb,0x69, +0x1b,0x68,0x7b,0x61,0xba,0x69,0x53,0x1c,0xbb,0x61,0xfb,0x69,0x59,0x1c,0xf9,0x61, +0x12,0x78,0x1a,0x70,0xba,0x69,0x53,0x1c,0xbb,0x61,0xfb,0x69,0x59,0x1c,0xf9,0x61, +0x12,0x78,0x1a,0x70,0xba,0x69,0x53,0x1c,0xbb,0x61,0xfb,0x69,0x59,0x1c,0xf9,0x61, +0x12,0x78,0x1a,0x70,0x7b,0x68,0x03,0x3b,0x7b,0x60,0x37,0xe0,0xbb,0x69,0x01,0x33, +0x1b,0x68,0x3b,0x61,0x7b,0x69,0x1a,0x0e,0x3b,0x69,0x1b,0x02,0x1a,0x43,0xfb,0x69, +0x1a,0x60,0xbb,0x69,0x05,0x33,0x1b,0x68,0x7b,0x61,0x3b,0x69,0x19,0x0e,0x7b,0x69, +0x1a,0x02,0xfb,0x69,0x04,0x33,0x0a,0x43,0x1a,0x60,0xbb,0x69,0x09,0x33,0x1b,0x68, +0x3b,0x61,0x7b,0x69,0x19,0x0e,0x3b,0x69,0x1a,0x02,0xfb,0x69,0x08,0x33,0x0a,0x43, +0x1a,0x60,0xbb,0x69,0x0d,0x33,0x1b,0x68,0x7b,0x61,0x3b,0x69,0x19,0x0e,0x7b,0x69, +0x1a,0x02,0xfb,0x69,0x0c,0x33,0x0a,0x43,0x1a,0x60,0xbb,0x69,0x10,0x33,0xbb,0x61, +0xfb,0x69,0x10,0x33,0xfb,0x61,0x7b,0x68,0x10,0x3b,0x7b,0x60,0x7b,0x68,0x10,0x2b, +0xc4,0xd8,0x9d,0xe0,0xbb,0x69,0x1b,0x68,0x7b,0x61,0xba,0x69,0x53,0x1c,0xbb,0x61, +0xfb,0x69,0x59,0x1c,0xf9,0x61,0x12,0x78,0x1a,0x70,0xba,0x69,0x53,0x1c,0xbb,0x61, +0xfb,0x69,0x59,0x1c,0xf9,0x61,0x12,0x78,0x1a,0x70,0x7b,0x68,0x02,0x3b,0x7b,0x60, +0x37,0xe0,0xbb,0x69,0x02,0x33,0x1b,0x68,0x3b,0x61,0x7b,0x69,0x1a,0x0c,0x3b,0x69, +0x1b,0x04,0x1a,0x43,0xfb,0x69,0x1a,0x60,0xbb,0x69,0x06,0x33,0x1b,0x68,0x7b,0x61, +0x3b,0x69,0x19,0x0c,0x7b,0x69,0x1a,0x04,0xfb,0x69,0x04,0x33,0x0a,0x43,0x1a,0x60, +0xbb,0x69,0x0a,0x33,0x1b,0x68,0x3b,0x61,0x7b,0x69,0x19,0x0c,0x3b,0x69,0x1a,0x04, +0xfb,0x69,0x08,0x33,0x0a,0x43,0x1a,0x60,0xbb,0x69,0x0e,0x33,0x1b,0x68,0x7b,0x61, +0x3b,0x69,0x19,0x0c,0x7b,0x69,0x1a,0x04,0xfb,0x69,0x0c,0x33,0x0a,0x43,0x1a,0x60, +0xbb,0x69,0x10,0x33,0xbb,0x61,0xfb,0x69,0x10,0x33,0xfb,0x61,0x7b,0x68,0x10,0x3b, +0x7b,0x60,0x7b,0x68,0x11,0x2b,0xc4,0xd8,0x4a,0xe0,0xbb,0x69,0x1b,0x68,0x7b,0x61, +0xba,0x69,0x53,0x1c,0xbb,0x61,0xfb,0x69,0x59,0x1c,0xf9,0x61,0x12,0x78,0x1a,0x70, +0x7b,0x68,0x01,0x3b,0x7b,0x60,0x37,0xe0,0xbb,0x69,0x03,0x33,0x1b,0x68,0x3b,0x61, +0x7b,0x69,0x1a,0x0a,0x3b,0x69,0x1b,0x06,0x1a,0x43,0xfb,0x69,0x1a,0x60,0xbb,0x69, +0x07,0x33,0x1b,0x68,0x7b,0x61,0x3b,0x69,0x19,0x0a,0x7b,0x69,0x1a,0x06,0xfb,0x69, +0x04,0x33,0x0a,0x43,0x1a,0x60,0xbb,0x69,0x0b,0x33,0x1b,0x68,0x3b,0x61,0x7b,0x69, +0x19,0x0a,0x3b,0x69,0x1a,0x06,0xfb,0x69,0x08,0x33,0x0a,0x43,0x1a,0x60,0xbb,0x69, +0x0f,0x33,0x1b,0x68,0x7b,0x61,0x3b,0x69,0x19,0x0a,0x7b,0x69,0x1a,0x06,0xfb,0x69, +0x0c,0x33,0x0a,0x43,0x1a,0x60,0xbb,0x69,0x10,0x33,0xbb,0x61,0xfb,0x69,0x10,0x33, +0xfb,0x61,0x7b,0x68,0x10,0x3b,0x7b,0x60,0x7b,0x68,0x12,0x2b,0xc4,0xd8,0x00,0xbf, +0x7b,0x68,0x03,0xf0,0x10,0x03,0x00,0x2b,0x7f,0xd0,0xba,0x69,0x53,0x1c,0xbb,0x61, +0xfb,0x69,0x59,0x1c,0xf9,0x61,0x12,0x78,0x1a,0x70,0xba,0x69,0x53,0x1c,0xbb,0x61, +0xfb,0x69,0x59,0x1c,0xf9,0x61,0x12,0x78,0x1a,0x70,0xba,0x69,0x53,0x1c,0xbb,0x61, +0xfb,0x69,0x59,0x1c,0xf9,0x61,0x12,0x78,0x1a,0x70,0xba,0x69,0x53,0x1c,0xbb,0x61, +0xfb,0x69,0x59,0x1c,0xf9,0x61,0x12,0x78,0x1a,0x70,0xba,0x69,0x53,0x1c,0xbb,0x61, +0xfb,0x69,0x59,0x1c,0xf9,0x61,0x12,0x78,0x1a,0x70,0xba,0x69,0x53,0x1c,0xbb,0x61, +0xfb,0x69,0x59,0x1c,0xf9,0x61,0x12,0x78,0x1a,0x70,0xba,0x69,0x53,0x1c,0xbb,0x61, +0xfb,0x69,0x59,0x1c,0xf9,0x61,0x12,0x78,0x1a,0x70,0xba,0x69,0x53,0x1c,0xbb,0x61, +0xfb,0x69,0x59,0x1c,0xf9,0x61,0x12,0x78,0x1a,0x70,0xba,0x69,0x53,0x1c,0xbb,0x61, +0xfb,0x69,0x59,0x1c,0xf9,0x61,0x12,0x78,0x1a,0x70,0xba,0x69,0x53,0x1c,0xbb,0x61, +0xfb,0x69,0x59,0x1c,0xf9,0x61,0x12,0x78,0x1a,0x70,0xba,0x69,0x53,0x1c,0xbb,0x61, +0xfb,0x69,0x59,0x1c,0xf9,0x61,0x12,0x78,0x1a,0x70,0xba,0x69,0x53,0x1c,0xbb,0x61, +0xfb,0x69,0x59,0x1c,0xf9,0x61,0x12,0x78,0x1a,0x70,0xba,0x69,0x53,0x1c,0xbb,0x61, +0xfb,0x69,0x59,0x1c,0xf9,0x61,0x12,0x78,0x1a,0x70,0xba,0x69,0x53,0x1c,0xbb,0x61, +0xfb,0x69,0x59,0x1c,0xf9,0x61,0x12,0x78,0x1a,0x70,0xba,0x69,0x53,0x1c,0xbb,0x61, +0xfb,0x69,0x59,0x1c,0xf9,0x61,0x12,0x78,0x1a,0x70,0xba,0x69,0x53,0x1c,0xbb,0x61, +0xfb,0x69,0x59,0x1c,0xf9,0x61,0x12,0x78,0x1a,0x70,0x7b,0x68,0x03,0xf0,0x08,0x03, +0x00,0x2b,0x3f,0xd0,0xba,0x69,0x53,0x1c,0xbb,0x61,0xfb,0x69,0x59,0x1c,0xf9,0x61, +0x12,0x78,0x1a,0x70,0xba,0x69,0x53,0x1c,0xbb,0x61,0xfb,0x69,0x59,0x1c,0xf9,0x61, +0x12,0x78,0x1a,0x70,0xba,0x69,0x53,0x1c,0xbb,0x61,0xfb,0x69,0x59,0x1c,0xf9,0x61, +0x12,0x78,0x1a,0x70,0xba,0x69,0x53,0x1c,0xbb,0x61,0xfb,0x69,0x59,0x1c,0xf9,0x61, +0x12,0x78,0x1a,0x70,0xba,0x69,0x53,0x1c,0xbb,0x61,0xfb,0x69,0x59,0x1c,0xf9,0x61, +0x12,0x78,0x1a,0x70,0xba,0x69,0x53,0x1c,0xbb,0x61,0xfb,0x69,0x59,0x1c,0xf9,0x61, +0x12,0x78,0x1a,0x70,0xba,0x69,0x53,0x1c,0xbb,0x61,0xfb,0x69,0x59,0x1c,0xf9,0x61, +0x12,0x78,0x1a,0x70,0xba,0x69,0x53,0x1c,0xbb,0x61,0xfb,0x69,0x59,0x1c,0xf9,0x61, +0x12,0x78,0x1a,0x70,0x7b,0x68,0x03,0xf0,0x04,0x03,0x00,0x2b,0x1f,0xd0,0xba,0x69, +0x53,0x1c,0xbb,0x61,0xfb,0x69,0x59,0x1c,0xf9,0x61,0x12,0x78,0x1a,0x70,0xba,0x69, +0x53,0x1c,0xbb,0x61,0xfb,0x69,0x59,0x1c,0xf9,0x61,0x12,0x78,0x1a,0x70,0xba,0x69, +0x53,0x1c,0xbb,0x61,0xfb,0x69,0x59,0x1c,0xf9,0x61,0x12,0x78,0x1a,0x70,0xba,0x69, +0x53,0x1c,0xbb,0x61,0xfb,0x69,0x59,0x1c,0xf9,0x61,0x12,0x78,0x1a,0x70,0x7b,0x68, +0x03,0xf0,0x02,0x03,0x00,0x2b,0x0f,0xd0,0xba,0x69,0x53,0x1c,0xbb,0x61,0xfb,0x69, +0x59,0x1c,0xf9,0x61,0x12,0x78,0x1a,0x70,0xba,0x69,0x53,0x1c,0xbb,0x61,0xfb,0x69, +0x59,0x1c,0xf9,0x61,0x12,0x78,0x1a,0x70,0x7b,0x68,0x03,0xf0,0x01,0x03,0x00,0x2b, +0x03,0xd0,0xbb,0x69,0x1a,0x78,0xfb,0x69,0x1a,0x70,0xfb,0x68,0x18,0x46,0x24,0x37, +0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47,0x2d,0xe9,0xf0,0x08,0x8b,0xb0,0x00,0xaf, +0xf8,0x60,0xb9,0x60,0x7a,0x60,0xfb,0x68,0x7b,0x62,0x7b,0x68,0x00,0x2b,0x01,0xd1, +0xfb,0x68,0xed,0xe0,0xbb,0x68,0xda,0xb2,0x7b,0x6a,0x1a,0x70,0x7b,0x68,0x01,0x3b, +0x7a,0x6a,0x13,0x44,0xba,0x68,0xd2,0xb2,0x1a,0x70,0x7b,0x68,0x02,0x2b,0x01,0xd8, +0xfb,0x68,0xdd,0xe0,0x7b,0x6a,0x01,0x33,0xba,0x68,0xd2,0xb2,0x1a,0x70,0x7b,0x6a, +0x02,0x33,0xba,0x68,0xd2,0xb2,0x1a,0x70,0x7b,0x68,0x02,0x3b,0x7a,0x6a,0x13,0x44, +0xba,0x68,0xd2,0xb2,0x1a,0x70,0x7b,0x68,0x03,0x3b,0x7a,0x6a,0x13,0x44,0xba,0x68, +0xd2,0xb2,0x1a,0x70,0x7b,0x68,0x06,0x2b,0x01,0xd8,0xfb,0x68,0xc0,0xe0,0x7b,0x6a, +0x03,0x33,0xba,0x68,0xd2,0xb2,0x1a,0x70,0x7b,0x68,0x04,0x3b,0x7a,0x6a,0x13,0x44, +0xba,0x68,0xd2,0xb2,0x1a,0x70,0x7b,0x68,0x08,0x2b,0x01,0xd8,0xfb,0x68,0xaf,0xe0, +0x7b,0x6a,0x5b,0x42,0x03,0xf0,0x03,0x03,0x3b,0x62,0x7a,0x6a,0x3b,0x6a,0x13,0x44, +0x7b,0x62,0x7a,0x68,0x3b,0x6a,0xd3,0x1a,0x7b,0x60,0x7b,0x68,0x23,0xf0,0x03,0x03, +0x7b,0x60,0xbb,0x68,0xdb,0xb2,0x1a,0x46,0x13,0x46,0x1b,0x02,0x13,0x44,0x1a,0x04, +0x13,0x44,0xfb,0x61,0x7b,0x6a,0xfa,0x69,0x1a,0x60,0x7b,0x68,0x04,0x3b,0x7a,0x6a, +0x13,0x44,0xfa,0x69,0x1a,0x60,0x7b,0x68,0x08,0x2b,0x01,0xd8,0xfb,0x68,0x87,0xe0, +0x7b,0x6a,0x04,0x33,0xfa,0x69,0x1a,0x60,0x7b,0x6a,0x08,0x33,0xfa,0x69,0x1a,0x60, +0x7b,0x68,0x0c,0x3b,0x7a,0x6a,0x13,0x44,0xfa,0x69,0x1a,0x60,0x7b,0x68,0x08,0x3b, +0x7a,0x6a,0x13,0x44,0xfa,0x69,0x1a,0x60,0x7b,0x68,0x18,0x2b,0x01,0xd8,0xfb,0x68, +0x6e,0xe0,0x7b,0x6a,0x0c,0x33,0xfa,0x69,0x1a,0x60,0x7b,0x6a,0x10,0x33,0xfa,0x69, +0x1a,0x60,0x7b,0x6a,0x14,0x33,0xfa,0x69,0x1a,0x60,0x7b,0x6a,0x18,0x33,0xfa,0x69, +0x1a,0x60,0x7b,0x68,0x1c,0x3b,0x7a,0x6a,0x13,0x44,0xfa,0x69,0x1a,0x60,0x7b,0x68, +0x18,0x3b,0x7a,0x6a,0x13,0x44,0xfa,0x69,0x1a,0x60,0x7b,0x68,0x14,0x3b,0x7a,0x6a, +0x13,0x44,0xfa,0x69,0x1a,0x60,0x7b,0x68,0x10,0x3b,0x7a,0x6a,0x13,0x44,0xfa,0x69, +0x1a,0x60,0x7b,0x6a,0x03,0xf0,0x04,0x03,0x18,0x33,0x3b,0x62,0x7a,0x6a,0x3b,0x6a, +0x13,0x44,0x7b,0x62,0x7a,0x68,0x3b,0x6a,0xd3,0x1a,0x7b,0x60,0xfb,0x69,0x19,0x46, +0x4f,0xf0,0x00,0x02,0xfb,0x69,0x1d,0x46,0x4f,0xf0,0x00,0x06,0x4f,0xf0,0x00,0x0b, +0x4f,0xf0,0x00,0x0c,0xac,0x46,0x4f,0xf0,0x00,0x0b,0x4b,0xea,0x01,0x03,0x4c,0xea, +0x02,0x04,0xc7,0xe9,0x04,0x34,0x1f,0xe0,0x7a,0x6a,0xd7,0xe9,0x04,0x34,0xc2,0xe9, +0x00,0x34,0x7b,0x6a,0x03,0xf1,0x08,0x02,0xd7,0xe9,0x04,0x34,0xc2,0xe9,0x00,0x34, +0x7b,0x6a,0x03,0xf1,0x10,0x02,0xd7,0xe9,0x04,0x34,0xc2,0xe9,0x00,0x34,0x7b,0x6a, +0x03,0xf1,0x18,0x02,0xd7,0xe9,0x04,0x34,0xc2,0xe9,0x00,0x34,0x7b,0x68,0x20,0x3b, +0x7b,0x60,0x7b,0x6a,0x20,0x33,0x7b,0x62,0x7b,0x68,0x1f,0x2b,0xdc,0xd8,0xfb,0x68, +0x18,0x46,0x2c,0x37,0xbd,0x46,0xbd,0xe8,0xf0,0x08,0x70,0x47,0x80,0xb4,0x85,0xb0, +0x00,0xaf,0x78,0x60,0x7b,0x68,0xbb,0x60,0x0a,0xe0,0x7b,0x68,0x1b,0x78,0x00,0x2b, +0x03,0xd1,0x7a,0x68,0xbb,0x68,0xd3,0x1a,0x26,0xe0,0x7b,0x68,0x01,0x33,0x7b,0x60, +0x7b,0x68,0x03,0xf0,0x03,0x03,0x00,0x2b,0xef,0xd1,0x7b,0x68,0xfb,0x60,0x02,0xe0, +0xfb,0x68,0x04,0x33,0xfb,0x60,0xfb,0x68,0x1b,0x68,0xa3,0xf1,0x01,0x32,0xfb,0x68, +0x1b,0x68,0xdb,0x43,0x13,0x40,0x03,0xf0,0x80,0x33,0x00,0x2b,0xf0,0xd0,0xfb,0x68, +0x7b,0x60,0x02,0xe0,0x7b,0x68,0x01,0x33,0x7b,0x60,0x7b,0x68,0x1b,0x78,0x00,0x2b, +0xf8,0xd1,0x7a,0x68,0xbb,0x68,0xd3,0x1a,0x18,0x46,0x14,0x37,0xbd,0x46,0x5d,0xf8, +0x04,0x7b,0x70,0x47,0x80,0xb4,0x85,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68,0x00,0x2b, +0x05,0xd0,0x7b,0x68,0xb3,0xfa,0x83,0xf3,0xc3,0xf1,0x20,0x03,0x00,0xe0,0x00,0x23, +0xfb,0x60,0xfb,0x68,0x01,0x3b,0x18,0x46,0x14,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b, +0x70,0x47,0x80,0xb4,0x83,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68,0x5a,0x68,0x01,0x21, +0x02,0x23,0x0b,0x43,0xdb,0x43,0x13,0x40,0x18,0x46,0x0c,0x37,0xbd,0x46,0x5d,0xf8, +0x04,0x7b,0x70,0x47,0x80,0xb4,0x85,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60,0x7b,0x68, +0x5b,0x68,0xfb,0x60,0x01,0x22,0x02,0x23,0x1a,0x43,0xfb,0x68,0x1a,0x40,0x3b,0x68, +0x1a,0x43,0x7b,0x68,0x5a,0x60,0x00,0xbf,0x14,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b, +0x70,0x47,0x80,0xb5,0x82,0xb0,0x00,0xaf,0x78,0x60,0x78,0x68,0xff,0xf7,0xd1,0xff, +0x03,0x46,0x00,0x2b,0x0c,0xbf,0x01,0x23,0x00,0x23,0xdb,0xb2,0x18,0x46,0x08,0x37, +0xbd,0x46,0x80,0xbd,0x80,0xb4,0x83,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68,0x5b,0x68, +0x01,0x22,0x13,0x40,0x18,0x46,0x0c,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47, +0x80,0xb4,0x83,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68,0x5b,0x68,0x01,0x22,0x1a,0x43, +0x7b,0x68,0x5a,0x60,0x00,0xbf,0x0c,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47, +0x80,0xb4,0x83,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68,0x5a,0x68,0x01,0x23,0xdb,0x43, +0x1a,0x40,0x7b,0x68,0x5a,0x60,0x00,0xbf,0x0c,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b, +0x70,0x47,0x80,0xb4,0x83,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68,0x5b,0x68,0x02,0x22, +0x13,0x40,0x18,0x46,0x0c,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47,0x80,0xb4, +0x83,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68,0x5b,0x68,0x02,0x22,0x1a,0x43,0x7b,0x68, +0x5a,0x60,0x00,0xbf,0x0c,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47,0x80,0xb4, +0x83,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68,0x5a,0x68,0x02,0x23,0xdb,0x43,0x1a,0x40, +0x7b,0x68,0x5a,0x60,0x00,0xbf,0x0c,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47, +0x80,0xb4,0x83,0xb0,0x00,0xaf,0x78,0x60,0x08,0x23,0x5b,0x42,0x7a,0x68,0x13,0x44, +0x18,0x46,0x0c,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47,0x80,0xb4,0x83,0xb0, +0x00,0xaf,0x78,0x60,0x08,0x22,0x7b,0x68,0x13,0x44,0x18,0x46,0x0c,0x37,0xbd,0x46, +0x5d,0xf8,0x04,0x7b,0x70,0x47,0x80,0xb4,0x83,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60, +0x7a,0x68,0x3b,0x68,0x13,0x44,0x18,0x46,0x0c,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b, +0x70,0x47,0x00,0x00,0x80,0xb5,0x82,0xb0,0x00,0xaf,0x78,0x60,0x78,0x68,0xff,0xf7, +0xa0,0xff,0x03,0x46,0x00,0x2b,0x10,0xd1,0x40,0xf2,0xd3,0x13,0x0a,0x4a,0x59,0xf8, +0x02,0x20,0x0a,0x49,0x59,0xf8,0x01,0x10,0x09,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7, +0xa9,0xfa,0x4f,0xf0,0xff,0x30,0xff,0xf7,0xcd,0xfa,0x7b,0x68,0x1b,0x68,0x18,0x46, +0x08,0x37,0xbd,0x46,0x80,0xbd,0x00,0xbf,0x4c,0x00,0x00,0x00,0x44,0x00,0x00,0x00, +0x48,0x00,0x00,0x00,0x90,0xb5,0x85,0xb0,0x00,0xaf,0x78,0x60,0x78,0x68,0xff,0xf7, +0xb5,0xff,0x04,0x46,0x78,0x68,0xff,0xf7,0x0c,0xff,0x02,0x46,0x04,0x23,0xd3,0x1a, +0x19,0x46,0x20,0x46,0xff,0xf7,0xb7,0xff,0xf8,0x60,0x78,0x68,0xff,0xf7,0x29,0xff, +0x03,0x46,0x00,0x2b,0x10,0xd0,0x4f,0xf4,0xee,0x73,0x0a,0x4a,0x59,0xf8,0x02,0x20, +0x09,0x49,0x59,0xf8,0x01,0x10,0x09,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7,0x72,0xfa, +0x4f,0xf0,0xff,0x30,0xff,0xf7,0x96,0xfa,0xfb,0x68,0x18,0x46,0x14,0x37,0xbd,0x46, +0x90,0xbd,0x00,0xbf,0x54,0x00,0x00,0x00,0x50,0x00,0x00,0x00,0x48,0x00,0x00,0x00, +0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60,0x78,0x68,0xff,0xf7,0xc3,0xff,0xf8,0x60, +0xfb,0x68,0x7a,0x68,0x1a,0x60,0xfb,0x68,0x18,0x46,0x10,0x37,0xbd,0x46,0x80,0xbd, +0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60,0x78,0x68,0xff,0xf7,0xe9,0xff,0xf8,0x60, +0xf8,0x68,0xff,0xf7,0x3c,0xff,0x78,0x68,0xff,0xf7,0x0a,0xff,0x00,0xbf,0x10,0x37, +0xbd,0x46,0x80,0xbd,0x80,0xb5,0x82,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60,0x3b,0x68, +0x5a,0x1e,0x3b,0x68,0x13,0x40,0x00,0x2b,0x10,0xd0,0x40,0xf2,0x07,0x23,0x0b,0x4a, +0x59,0xf8,0x02,0x20,0x0a,0x49,0x59,0xf8,0x01,0x10,0x0a,0x48,0x59,0xf8,0x00,0x00, +0xff,0xf7,0x28,0xfa,0x4f,0xf0,0xff,0x30,0xff,0xf7,0x4c,0xfa,0x3b,0x68,0x5a,0x42, +0x7b,0x68,0x13,0x40,0x18,0x46,0x08,0x37,0xbd,0x46,0x80,0xbd,0x5c,0x00,0x00,0x00, +0x58,0x00,0x00,0x00,0x48,0x00,0x00,0x00,0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60, +0x39,0x60,0x7a,0x68,0x3b,0x68,0x13,0x44,0x5a,0x1e,0x3b,0x68,0x5b,0x42,0x13,0x40, +0xfb,0x60,0x3b,0x68,0x5a,0x1e,0x3b,0x68,0x13,0x40,0x00,0x2b,0x10,0xd0,0x40,0xf2, +0x0f,0x23,0x0a,0x4a,0x59,0xf8,0x02,0x20,0x09,0x49,0x59,0xf8,0x01,0x10,0x09,0x48, +0x59,0xf8,0x00,0x00,0xff,0xf7,0xf6,0xf9,0x4f,0xf0,0xff,0x30,0xff,0xf7,0x1a,0xfa, +0xfb,0x68,0x18,0x46,0x10,0x37,0xbd,0x46,0x80,0xbd,0x00,0xbf,0x60,0x00,0x00,0x00, +0x58,0x00,0x00,0x00,0x48,0x00,0x00,0x00,0x80,0xb5,0x86,0xb0,0x00,0xaf,0xf8,0x60, +0xb9,0x60,0x7a,0x60,0xfb,0x68,0x7f,0x2b,0x08,0xd8,0x00,0x23,0x7b,0x61,0xfb,0x68, +0x00,0x2b,0x00,0xda,0x03,0x33,0x9b,0x10,0x3b,0x61,0x0e,0xe0,0xf8,0x68,0xff,0xf7, +0x39,0xfe,0x78,0x61,0x7b,0x69,0x05,0x3b,0xfa,0x68,0x22,0xfa,0x03,0xf3,0x83,0xf0, +0x20,0x03,0x3b,0x61,0x7b,0x69,0x06,0x3b,0x7b,0x61,0xbb,0x68,0x7a,0x69,0x1a,0x60, +0x7b,0x68,0x3a,0x69,0x1a,0x60,0x00,0xbf,0x18,0x37,0xbd,0x46,0x80,0xbd,0x00,0x00, +0x80,0xb5,0x86,0xb0,0x00,0xaf,0xf8,0x60,0xb9,0x60,0x7a,0x60,0x3b,0x60,0xbb,0x68, +0xdb,0x68,0x7b,0x61,0xbb,0x68,0x9b,0x68,0x3b,0x61,0x7b,0x69,0x00,0x2b,0x10,0xd1, +0x40,0xf2,0x6f,0x23,0x35,0x4a,0x59,0xf8,0x02,0x20,0x35,0x49,0x59,0xf8,0x01,0x10, +0x34,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7,0x9d,0xf9,0x4f,0xf0,0xff,0x30,0xff,0xf7, +0xc1,0xf9,0x3b,0x69,0x00,0x2b,0x10,0xd1,0x4f,0xf4,0x1c,0x73,0x2b,0x4a,0x59,0xf8, +0x02,0x20,0x2d,0x49,0x59,0xf8,0x01,0x10,0x2a,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7, +0x89,0xf9,0x4f,0xf0,0xff,0x30,0xff,0xf7,0xad,0xf9,0x3b,0x69,0x7a,0x69,0xda,0x60, +0x7b,0x69,0x3a,0x69,0x9a,0x60,0xfa,0x68,0x7b,0x68,0x59,0x01,0x3b,0x68,0x0b,0x44, +0x1c,0x33,0x9b,0x00,0x13,0x44,0x5b,0x68,0xba,0x68,0x9a,0x42,0x31,0xd1,0xfa,0x68, +0x7b,0x68,0x59,0x01,0x3b,0x68,0x0b,0x44,0x1c,0x33,0x9b,0x00,0x13,0x44,0x3a,0x69, +0x5a,0x60,0xfb,0x68,0x3a,0x69,0x9a,0x42,0x23,0xd1,0xfa,0x68,0x7b,0x68,0x04,0x33, +0x9b,0x00,0x13,0x44,0x5b,0x68,0x01,0x21,0x3a,0x68,0x01,0xfa,0x02,0xf2,0xd2,0x43, +0x1a,0x40,0xf9,0x68,0x7b,0x68,0x04,0x33,0x9b,0x00,0x0b,0x44,0x5a,0x60,0xfa,0x68, +0x7b,0x68,0x04,0x33,0x9b,0x00,0x13,0x44,0x5b,0x68,0x00,0x2b,0x09,0xd1,0xfb,0x68, +0x1b,0x69,0x01,0x21,0x7a,0x68,0x01,0xfa,0x02,0xf2,0xd2,0x43,0x1a,0x40,0xfb,0x68, +0x1a,0x61,0x00,0xbf,0x18,0x37,0xbd,0x46,0x80,0xbd,0x00,0xbf,0x6c,0x00,0x00,0x00, +0x64,0x00,0x00,0x00,0x48,0x00,0x00,0x00,0x68,0x00,0x00,0x00,0x90,0xb5,0x87,0xb0, +0x00,0xaf,0xf8,0x60,0xb9,0x60,0x7a,0x60,0x3b,0x60,0xfa,0x68,0x7b,0x68,0x59,0x01, +0x3b,0x68,0x0b,0x44,0x1c,0x33,0x9b,0x00,0x13,0x44,0x5b,0x68,0x7b,0x61,0x7b,0x69, +0x00,0x2b,0x10,0xd1,0x40,0xf2,0x8b,0x23,0x39,0x4a,0x59,0xf8,0x02,0x20,0x39,0x49, +0x59,0xf8,0x01,0x10,0x38,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7,0x13,0xf9,0x4f,0xf0, +0xff,0x30,0xff,0xf7,0x37,0xf9,0xbb,0x68,0x00,0x2b,0x10,0xd1,0x4f,0xf4,0x23,0x73, +0x2f,0x4a,0x59,0xf8,0x02,0x20,0x31,0x49,0x59,0xf8,0x01,0x10,0x2e,0x48,0x59,0xf8, +0x00,0x00,0xff,0xf7,0xff,0xf8,0x4f,0xf0,0xff,0x30,0xff,0xf7,0x23,0xf9,0xbb,0x68, +0x7a,0x69,0x9a,0x60,0xfa,0x68,0xbb,0x68,0xda,0x60,0x7b,0x69,0xba,0x68,0xda,0x60, +0xb8,0x68,0xff,0xf7,0x13,0xfe,0x04,0x46,0xb8,0x68,0xff,0xf7,0x0f,0xfe,0x03,0x46, +0x04,0x21,0x18,0x46,0xff,0xf7,0xd0,0xfe,0x03,0x46,0x9c,0x42,0x10,0xd0,0x40,0xf2, +0x91,0x23,0x1b,0x4a,0x59,0xf8,0x02,0x20,0x1d,0x49,0x59,0xf8,0x01,0x10,0x1a,0x48, +0x59,0xf8,0x00,0x00,0xff,0xf7,0xd6,0xf8,0x4f,0xf0,0xff,0x30,0xff,0xf7,0xfa,0xf8, +0xfa,0x68,0x7b,0x68,0x59,0x01,0x3b,0x68,0x0b,0x44,0x1c,0x33,0x9b,0x00,0x13,0x44, +0xba,0x68,0x5a,0x60,0xfb,0x68,0x1b,0x69,0x01,0x21,0x7a,0x68,0x01,0xfa,0x02,0xf2, +0x1a,0x43,0xfb,0x68,0x1a,0x61,0xfa,0x68,0x7b,0x68,0x04,0x33,0x9b,0x00,0x13,0x44, +0x5b,0x68,0x01,0x21,0x3a,0x68,0x01,0xfa,0x02,0xf2,0x1a,0x43,0xf9,0x68,0x7b,0x68, +0x04,0x33,0x9b,0x00,0x0b,0x44,0x5a,0x60,0x00,0xbf,0x1c,0x37,0xbd,0x46,0x90,0xbd, +0x7c,0x00,0x00,0x00,0x70,0x00,0x00,0x00,0x48,0x00,0x00,0x00,0x74,0x00,0x00,0x00, +0x78,0x00,0x00,0x00,0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60,0x38,0x68, +0xff,0xf7,0x17,0xfd,0x07,0xf1,0x08,0x02,0x07,0xf1,0x0c,0x03,0x19,0x46,0xff,0xf7, +0xab,0xfe,0xfa,0x68,0xbb,0x68,0x39,0x68,0x78,0x68,0xff,0xf7,0xd1,0xfe,0x00,0xbf, +0x10,0x37,0xbd,0x46,0x80,0xbd,0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60, +0x38,0x68,0xff,0xf7,0xfe,0xfc,0x07,0xf1,0x08,0x02,0x07,0xf1,0x0c,0x03,0x19,0x46, +0xff,0xf7,0x92,0xfe,0xfa,0x68,0xbb,0x68,0x39,0x68,0x78,0x68,0xff,0xf7,0x3e,0xff, +0x00,0xbf,0x10,0x37,0xbd,0x46,0x80,0xbd,0x80,0xb5,0x82,0xb0,0x00,0xaf,0x78,0x60, +0x39,0x60,0x78,0x68,0xff,0xf7,0x0d,0xfd,0x03,0x46,0x00,0x2b,0x10,0xd0,0x40,0xf2, +0xca,0x23,0x11,0x4a,0x59,0xf8,0x02,0x20,0x10,0x49,0x59,0xf8,0x01,0x10,0x10,0x48, +0x59,0xf8,0x00,0x00,0xff,0xf7,0x56,0xf8,0x4f,0xf0,0xff,0x30,0xff,0xf7,0x7a,0xf8, +0x38,0x68,0xff,0xf7,0xce,0xfc,0x02,0x46,0x04,0x23,0x1a,0x44,0x7b,0x68,0x5b,0x68, +0x1a,0x44,0x7b,0x68,0x5a,0x60,0x78,0x68,0xff,0xf7,0xe2,0xfd,0x7b,0x68,0x18,0x46, +0x08,0x37,0xbd,0x46,0x80,0xbd,0x00,0xbf,0x84,0x00,0x00,0x00,0x80,0x00,0x00,0x00, +0x48,0x00,0x00,0x00,0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60,0x38,0x68, +0xff,0xf7,0x17,0xfd,0x03,0x46,0x00,0x2b,0x37,0xd0,0x38,0x68,0xff,0xf7,0x6a,0xfd, +0xf8,0x60,0xfb,0x68,0x00,0x2b,0x10,0xd1,0x40,0xf2,0xd7,0x23,0x19,0x4a,0x59,0xf8, +0x02,0x20,0x19,0x49,0x59,0xf8,0x01,0x10,0x18,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7, +0x19,0xf8,0x4f,0xf0,0xff,0x30,0xff,0xf7,0x3d,0xf8,0xf8,0x68,0xff,0xf7,0xca,0xfc, +0x03,0x46,0x00,0x2b,0x10,0xd1,0x4f,0xf4,0x36,0x73,0x0e,0x4a,0x59,0xf8,0x02,0x20, +0x0f,0x49,0x59,0xf8,0x01,0x10,0x0d,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7,0x02,0xf8, +0x4f,0xf0,0xff,0x30,0xff,0xf7,0x26,0xf8,0xf9,0x68,0x78,0x68,0xff,0xf7,0x5a,0xff, +0x39,0x68,0xf8,0x68,0xff,0xf7,0x88,0xff,0x38,0x60,0x3b,0x68,0x18,0x46,0x10,0x37, +0xbd,0x46,0x80,0xbd,0x90,0x00,0x00,0x00,0x88,0x00,0x00,0x00,0x48,0x00,0x00,0x00, +0x8c,0x00,0x00,0x00,0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60,0x38,0x68, +0xff,0xf7,0x48,0xfd,0xf8,0x60,0xfb,0x68,0x00,0x2b,0x10,0xd1,0x4f,0xf4,0x39,0x73, +0x1c,0x4a,0x59,0xf8,0x02,0x20,0x1c,0x49,0x59,0xf8,0x01,0x10,0x1b,0x48,0x59,0xf8, +0x00,0x00,0xfe,0xf7,0xcf,0xff,0x4f,0xf0,0xff,0x30,0xfe,0xf7,0xf3,0xff,0xf8,0x68, +0xff,0xf7,0x80,0xfc,0x03,0x46,0x00,0x2b,0x1f,0xd0,0x38,0x68,0xff,0xf7,0x69,0xfc, +0x03,0x46,0x00,0x2b,0x10,0xd0,0x4f,0xf4,0x3a,0x73,0x0e,0x4a,0x59,0xf8,0x02,0x20, +0x0f,0x49,0x59,0xf8,0x01,0x10,0x0d,0x48,0x59,0xf8,0x00,0x00,0xfe,0xf7,0xb2,0xff, +0x4f,0xf0,0xff,0x30,0xfe,0xf7,0xd6,0xff,0xf9,0x68,0x78,0x68,0xff,0xf7,0x0a,0xff, +0xf9,0x68,0x38,0x68,0xff,0xf7,0x38,0xff,0x38,0x60,0x3b,0x68,0x18,0x46,0x10,0x37, +0xbd,0x46,0x80,0xbd,0x9c,0x00,0x00,0x00,0x94,0x00,0x00,0x00,0x48,0x00,0x00,0x00, +0x98,0x00,0x00,0x00,0x80,0xb4,0x85,0xb0,0x00,0xaf,0x78,0x60,0x7a,0x68,0x7b,0x68, +0x9a,0x60,0x7a,0x68,0x7b,0x68,0xda,0x60,0x7b,0x68,0x00,0x22,0x1a,0x61,0x00,0x23, +0xfb,0x60,0x1c,0xe0,0x7a,0x68,0xfb,0x68,0x04,0x33,0x9b,0x00,0x13,0x44,0x00,0x22, +0x5a,0x60,0x00,0x23,0xbb,0x60,0x0c,0xe0,0x7a,0x68,0x79,0x68,0xfb,0x68,0x58,0x01, +0xbb,0x68,0x03,0x44,0x1c,0x33,0x9b,0x00,0x0b,0x44,0x5a,0x60,0xbb,0x68,0x01,0x33, +0xbb,0x60,0xbb,0x68,0x1f,0x2b,0xef,0xdd,0xfb,0x68,0x01,0x33,0xfb,0x60,0xfb,0x68, +0x17,0x2b,0xdf,0xdd,0x00,0xbf,0x14,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47, +0x80,0xb4,0x00,0xaf,0x40,0xf6,0x74,0x43,0x18,0x46,0xbd,0x46,0x5d,0xf8,0x04,0x7b, +0x70,0x47,0x80,0xb4,0x00,0xaf,0x04,0x23,0x5b,0x00,0x18,0x46,0xbd,0x46,0x5d,0xf8, +0x04,0x7b,0x70,0x47,0x80,0xb5,0x88,0xb0,0x00,0xaf,0xf8,0x60,0xb9,0x60,0x7a,0x60, +0xff,0xf7,0xef,0xff,0xf8,0x61,0x7a,0x68,0xfb,0x69,0xd3,0x1a,0x04,0x21,0x18,0x46, +0xff,0xf7,0x00,0xfd,0xb8,0x61,0xbb,0x68,0x03,0xf0,0x03,0x03,0x00,0x2b,0x01,0xd0, +0x00,0x23,0x38,0xe0,0x0c,0x22,0xbb,0x69,0x93,0x42,0x04,0xd3,0x4f,0xf0,0x80,0x42, +0xbb,0x69,0x93,0x42,0x01,0xd9,0x00,0x23,0x2d,0xe0,0x19,0x4b,0x59,0xf8,0x03,0x30, +0x1a,0x68,0xbb,0x69,0xd3,0x1a,0x16,0x4a,0x59,0xf8,0x02,0x20,0x13,0x60,0x04,0x23, +0x5b,0x42,0x19,0x46,0xb8,0x68,0xff,0xf7,0x4e,0xfc,0x78,0x61,0xb9,0x69,0x78,0x69, +0xff,0xf7,0xa8,0xfb,0x78,0x69,0xff,0xf7,0xdb,0xfb,0x78,0x69,0xff,0xf7,0x17,0xfc, +0x79,0x69,0xf8,0x68,0xff,0xf7,0x87,0xfe,0x78,0x69,0xff,0xf7,0xa9,0xfc,0x38,0x61, +0x00,0x21,0x38,0x69,0xff,0xf7,0x96,0xfb,0x38,0x69,0xff,0xf7,0xd9,0xfb,0x38,0x69, +0xff,0xf7,0xf5,0xfb,0xbb,0x68,0x18,0x46,0x20,0x37,0xbd,0x46,0x80,0xbd,0x00,0xbf, +0x40,0x00,0x00,0x00,0x80,0xb5,0x82,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68,0x03,0xf0, +0x03,0x03,0x00,0x2b,0x01,0xd0,0x00,0x23,0x03,0xe0,0x78,0x68,0xff,0xf7,0x52,0xff, +0x7b,0x68,0x18,0x46,0x08,0x37,0xbd,0x46,0x80,0xbd,0x00,0x00,0x90,0xb5,0x85,0xb0, +0x00,0xaf,0x78,0x60,0x39,0x60,0x0f,0x4b,0x59,0xf8,0x03,0x30,0x1a,0x46,0x3b,0x68, +0x13,0x60,0x78,0x68,0xff,0xf7,0xde,0xff,0xf8,0x60,0xff,0xf7,0x71,0xff,0x02,0x46, +0x7b,0x68,0x9c,0x18,0xff,0xf7,0x6c,0xff,0x02,0x46,0x3b,0x68,0x9b,0x1a,0x1a,0x46, +0x21,0x46,0xf8,0x68,0xff,0xf7,0x76,0xff,0xfb,0x68,0x18,0x46,0x14,0x37,0xbd,0x46, +0x90,0xbd,0x00,0xbf,0x40,0x00,0x00,0x00,0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60, +0x39,0x60,0x3b,0x68,0x00,0x2b,0x55,0xd0,0x7b,0x68,0xfb,0x60,0x38,0x68,0xff,0xf7, +0xc7,0xfb,0xb8,0x60,0xb8,0x68,0xff,0xf7,0x65,0xfb,0x03,0x46,0x00,0x2b,0x10,0xd0, +0x40,0xf2,0xd2,0x43,0x25,0x4a,0x59,0xf8,0x02,0x20,0x25,0x49,0x59,0xf8,0x01,0x10, +0x24,0x48,0x59,0xf8,0x00,0x00,0xfe,0xf7,0x9d,0xfe,0x4f,0xf0,0xff,0x30,0xfe,0xf7, +0xc1,0xfe,0xb8,0x68,0xff,0xf7,0x44,0xfc,0xb8,0x68,0xff,0xf7,0x12,0xfb,0x02,0x46, +0x1d,0x4b,0x59,0xf8,0x03,0x30,0x1b,0x68,0x9a,0x42,0x10,0xd3,0x40,0xf2,0xd6,0x43, +0x16,0x4a,0x59,0xf8,0x02,0x20,0x19,0x49,0x59,0xf8,0x01,0x10,0x15,0x48,0x59,0xf8, +0x00,0x00,0xfe,0xf7,0x7f,0xfe,0x4f,0xf0,0xff,0x30,0xfe,0xf7,0xa3,0xfe,0xb8,0x68, +0xff,0xf7,0xf7,0xfa,0x02,0x46,0x10,0x4b,0x59,0xf8,0x03,0x30,0x1b,0x68,0x9b,0x1a, +0x0d,0x4a,0x59,0xf8,0x02,0x20,0x13,0x60,0xb9,0x68,0xf8,0x68,0xff,0xf7,0x32,0xfe, +0xb8,0x60,0xb9,0x68,0xf8,0x68,0xff,0xf7,0x7d,0xfe,0xb8,0x60,0xb9,0x68,0xf8,0x68, +0xff,0xf7,0xd9,0xfd,0x00,0xbf,0x10,0x37,0xbd,0x46,0x80,0xbd,0xa8,0x00,0x00,0x00, +0xa0,0x00,0x00,0x00,0x48,0x00,0x00,0x00,0x40,0x00,0x00,0x00,0xa4,0x00,0x00,0x00, +0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60,0x14,0x4b,0x59,0xf8,0x03,0x30,0x04,0x33, +0xfb,0x60,0x00,0x23,0xbb,0x60,0x00,0xf0,0x3d,0xf8,0x15,0xe0,0xfb,0x68,0x1b,0x68, +0xbb,0x60,0xfb,0x68,0x1b,0x68,0x1a,0x68,0xfb,0x68,0x1a,0x60,0xbb,0x68,0x5b,0x68, +0x19,0x46,0x29,0x20,0xfd,0xf7,0x08,0xfe,0xbb,0x68,0x9b,0x68,0x18,0x46,0xfe,0xf7, +0x8f,0xfe,0xb8,0x68,0xfe,0xf7,0x8c,0xfe,0xfb,0x68,0x1b,0x68,0x00,0x2b,0xe5,0xd1, +0x00,0xf0,0x44,0xf8,0x00,0xbf,0x10,0x37,0xbd,0x46,0x80,0xbd,0xc4,0x00,0x00,0x00, +0x80,0xb5,0x00,0xaf,0x2b,0x20,0xfd,0xf7,0xef,0xfd,0x03,0x46,0x1a,0x46,0x07,0x4b, +0x59,0xf8,0x03,0x30,0x9a,0x60,0x06,0x4b,0x59,0xf8,0x03,0x30,0x1a,0x46,0x14,0x21, +0x6d,0x20,0xfd,0xf7,0xe1,0xfd,0x00,0xbf,0x80,0xbd,0x00,0xbf,0xc4,0x00,0x00,0x00, +0xac,0x00,0x00,0x00,0x80,0xb5,0x00,0xaf,0x0e,0x4b,0x59,0xf8,0x03,0x30,0x1b,0x68, +0x00,0x2b,0x0c,0xd1,0x01,0x21,0x0c,0x4b,0x59,0xf8,0x03,0x30,0x18,0x46,0xfe,0xf7, +0x39,0xf8,0x02,0x46,0x07,0x4b,0x59,0xf8,0x03,0x30,0x1a,0x60,0x08,0xe0,0x05,0x4b, +0x59,0xf8,0x03,0x30,0x1b,0x68,0x4f,0xf0,0xff,0x31,0x18,0x46,0xfe,0xf7,0x3b,0xf8, +0x00,0xbf,0x80,0xbd,0xb0,0x00,0x00,0x00,0xb4,0x00,0x00,0x00,0x80,0xb5,0x00,0xaf, +0x07,0x4b,0x59,0xf8,0x03,0x30,0x1b,0x68,0x00,0x2b,0x06,0xd0,0x04,0x4b,0x59,0xf8, +0x03,0x30,0x1b,0x68,0x18,0x46,0xfe,0xf7,0x35,0xf8,0x00,0xbf,0x80,0xbd,0x00,0xbf, +0xb0,0x00,0x00,0x00,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x70,0x72,0x65,0x76,0x00,0x00, +0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x6e,0x65,0x78,0x74,0x00,0x00,0x61,0x6c,0x69,0x67, +0x6e,0x5f,0x64,0x6f,0x77,0x6e,0x00,0x00,0x61,0x6c,0x69,0x67,0x6e,0x5f,0x70,0x74, +0x72,0x00,0x00,0x00,0x72,0x65,0x6d,0x6f,0x76,0x65,0x5f,0x66,0x72,0x65,0x65,0x5f, +0x62,0x6c,0x6f,0x63,0x6b,0x00,0x00,0x00,0x69,0x6e,0x73,0x65,0x72,0x74,0x5f,0x66, +0x72,0x65,0x65,0x5f,0x62,0x6c,0x6f,0x63,0x6b,0x00,0x00,0x00,0x62,0x6c,0x6f,0x63, +0x6b,0x5f,0x61,0x62,0x73,0x6f,0x72,0x62,0x00,0x00,0x00,0x00,0x62,0x6c,0x6f,0x63, +0x6b,0x5f,0x6d,0x65,0x72,0x67,0x65,0x5f,0x70,0x72,0x65,0x76,0x00,0x00,0x00,0x00, +0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x6d,0x65,0x72,0x67,0x65,0x5f,0x6e,0x65,0x78,0x74, +0x00,0x00,0x00,0x00,0x74,0x6c,0x73,0x66,0x5f,0x66,0x72,0x65,0x65,0x00,0x00,0x00, +0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x41,0x42,0x43,0x44,0x45,0x46, +0x00,0x00,0x00,0x00,0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x61,0x62, +0x63,0x64,0x65,0x66,0x00,0x00,0x00,0x00,0x70,0x6f,0x6e,0x67,0x00,0x00,0x00,0x00, +0x45,0x72,0x72,0x6f,0x72,0x3a,0x20,0x72,0x74,0x5f,0x63,0x68,0x61,0x6e,0x6e,0x65, +0x6c,0x5f,0x6f,0x70,0x65,0x6e,0x3a,0x20,0x63,0x6f,0x75,0x6c,0x64,0x20,0x6e,0x6f, +0x74,0x20,0x66,0x69,0x6e,0x64,0x20,0x74,0x68,0x65,0x20,0x27,0x70,0x6f,0x6e,0x67, +0x27,0x20,0x63,0x68,0x61,0x6e,0x6e,0x65,0x6c,0x21,0x0a,0x00,0x54,0x68,0x65,0x20, +0x61,0x6c,0x6c,0x6f,0x63,0x61,0x74,0x65,0x64,0x20,0x73,0x68,0x61,0x72,0x65,0x64, +0x20,0x6d,0x65,0x6d,0x6f,0x72,0x79,0x20,0x64,0x6f,0x65,0x73,0x6e,0x27,0x74,0x20, +0x68,0x61,0x76,0x65,0x20,0x61,0x20,0x76,0x61,0x6c,0x69,0x64,0x20,0x61,0x64,0x64, +0x72,0x65,0x73,0x73,0x21,0x0a,0x00,0x00,0x63,0x6f,0x75,0x6e,0x74,0x20,0x3d,0x20, +0x25,0x64,0x00,0x00,0x50,0x69,0x6e,0x67,0x3a,0x20,0x73,0x65,0x6e,0x64,0x20,0x25, +0x73,0x0a,0x00,0x00,0x50,0x69,0x6e,0x67,0x3a,0x20,0x63,0x68,0x61,0x6e,0x6e,0x65, +0x6c,0x20,0x73,0x65,0x6e,0x64,0x26,0x72,0x65,0x63,0x76,0x20,0x66,0x61,0x69,0x6c, +0x65,0x64,0x0d,0x0a,0x00,0x00,0x00,0x00,0x50,0x69,0x6e,0x67,0x3a,0x20,0x72,0x65, +0x63,0x65,0x69,0x76,0x65,0x20,0x74,0x68,0x65,0x20,0x72,0x65,0x70,0x6c,0x79,0x20, +0x25,0x64,0x0d,0x0a,0x00,0x00,0x00,0x00,0x50,0x69,0x6e,0x67,0x3a,0x20,0x73,0x68, +0x6d,0x20,0x64,0x61,0x74,0x61,0x20,0x25,0x73,0x0d,0x0a,0x00,0x50,0x69,0x6e,0x67, +0x3a,0x20,0x63,0x68,0x61,0x6e,0x6e,0x65,0x6c,0x20,0x69,0x73,0x20,0x63,0x6c,0x6f, +0x73,0x65,0x64,0x0d,0x0a,0x00,0x00,0x00,0x28,0x4e,0x55,0x4c,0x4c,0x29,0x00,0x00, +0x5f,0x54,0x6c,0x73,0x66,0x6c,0x6f,0x63,0x6b,0x00,0x00,0x00,0x61,0x70,0x70,0x20, +0x68,0x65,0x61,0x70,0x20,0x75,0x73,0x65,0x64,0x5f,0x6d,0x61,0x78,0x3a,0x25,0x64, +0x0a,0x00,0x00,0x00,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69,0x73,0x5f,0x70,0x72,0x65, +0x76,0x5f,0x66,0x72,0x65,0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x20,0x26,0x26, +0x20,0x22,0x70,0x72,0x65,0x76,0x69,0x6f,0x75,0x73,0x20,0x62,0x6c,0x6f,0x63,0x6b, +0x20,0x6d,0x75,0x73,0x74,0x20,0x62,0x65,0x20,0x66,0x72,0x65,0x65,0x22,0x00,0x00, +0x28,0x25,0x73,0x29,0x20,0x68,0x61,0x73,0x20,0x61,0x73,0x73,0x65,0x72,0x74,0x20, +0x66,0x61,0x69,0x6c,0x65,0x64,0x20,0x61,0x74,0x20,0x46,0x3a,0x25,0x73,0x20,0x4c, +0x3a,0x25,0x64,0x00,0x21,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69,0x73,0x5f,0x6c,0x61, +0x73,0x74,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x00,0x00,0x00,0x30,0x20,0x3d,0x3d, +0x20,0x28,0x61,0x6c,0x69,0x67,0x6e,0x20,0x26,0x20,0x28,0x61,0x6c,0x69,0x67,0x6e, +0x20,0x2d,0x20,0x31,0x29,0x29,0x20,0x26,0x26,0x20,0x22,0x6d,0x75,0x73,0x74,0x20, +0x61,0x6c,0x69,0x67,0x6e,0x20,0x74,0x6f,0x20,0x61,0x20,0x70,0x6f,0x77,0x65,0x72, +0x20,0x6f,0x66,0x20,0x74,0x77,0x6f,0x22,0x00,0x00,0x00,0x00,0x73,0x6c,0x5f,0x6d, +0x61,0x70,0x20,0x26,0x26,0x20,0x22,0x69,0x6e,0x74,0x65,0x72,0x6e,0x61,0x6c,0x20, +0x65,0x72,0x72,0x6f,0x72,0x20,0x2d,0x20,0x73,0x65,0x63,0x6f,0x6e,0x64,0x20,0x6c, +0x65,0x76,0x65,0x6c,0x20,0x62,0x69,0x74,0x6d,0x61,0x70,0x20,0x69,0x73,0x20,0x6e, +0x75,0x6c,0x6c,0x22,0x00,0x00,0x00,0x00,0x70,0x72,0x65,0x76,0x20,0x26,0x26,0x20, +0x22,0x70,0x72,0x65,0x76,0x5f,0x66,0x72,0x65,0x65,0x20,0x66,0x69,0x65,0x6c,0x64, +0x20,0x63,0x61,0x6e,0x20,0x6e,0x6f,0x74,0x20,0x62,0x65,0x20,0x6e,0x75,0x6c,0x6c, +0x22,0x00,0x00,0x00,0x6e,0x65,0x78,0x74,0x20,0x26,0x26,0x20,0x22,0x6e,0x65,0x78, +0x74,0x5f,0x66,0x72,0x65,0x65,0x20,0x66,0x69,0x65,0x6c,0x64,0x20,0x63,0x61,0x6e, +0x20,0x6e,0x6f,0x74,0x20,0x62,0x65,0x20,0x6e,0x75,0x6c,0x6c,0x22,0x00,0x00,0x00, +0x63,0x75,0x72,0x72,0x65,0x6e,0x74,0x20,0x26,0x26,0x20,0x22,0x66,0x72,0x65,0x65, +0x20,0x6c,0x69,0x73,0x74,0x20,0x63,0x61,0x6e,0x6e,0x6f,0x74,0x20,0x68,0x61,0x76, +0x65,0x20,0x61,0x20,0x6e,0x75,0x6c,0x6c,0x20,0x65,0x6e,0x74,0x72,0x79,0x22,0x00, +0x62,0x6c,0x6f,0x63,0x6b,0x20,0x26,0x26,0x20,0x22,0x63,0x61,0x6e,0x6e,0x6f,0x74, +0x20,0x69,0x6e,0x73,0x65,0x72,0x74,0x20,0x61,0x20,0x6e,0x75,0x6c,0x6c,0x20,0x65, +0x6e,0x74,0x72,0x79,0x20,0x69,0x6e,0x74,0x6f,0x20,0x74,0x68,0x65,0x20,0x66,0x72, +0x65,0x65,0x20,0x6c,0x69,0x73,0x74,0x22,0x00,0x00,0x00,0x00,0x62,0x6c,0x6f,0x63, +0x6b,0x5f,0x74,0x6f,0x5f,0x70,0x74,0x72,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x20, +0x3d,0x3d,0x20,0x61,0x6c,0x69,0x67,0x6e,0x5f,0x70,0x74,0x72,0x28,0x62,0x6c,0x6f, +0x63,0x6b,0x5f,0x74,0x6f,0x5f,0x70,0x74,0x72,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29, +0x2c,0x20,0x41,0x4c,0x49,0x47,0x4e,0x5f,0x53,0x49,0x5a,0x45,0x29,0x20,0x26,0x26, +0x20,0x22,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x6e,0x6f,0x74,0x20,0x61,0x6c,0x69,0x67, +0x6e,0x65,0x64,0x20,0x70,0x72,0x6f,0x70,0x65,0x72,0x6c,0x79,0x22,0x00,0x00,0x00, +0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x74,0x6f,0x5f,0x70,0x74,0x72,0x28,0x72,0x65,0x6d, +0x61,0x69,0x6e,0x69,0x6e,0x67,0x29,0x20,0x3d,0x3d,0x20,0x61,0x6c,0x69,0x67,0x6e, +0x5f,0x70,0x74,0x72,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x74,0x6f,0x5f,0x70,0x74, +0x72,0x28,0x72,0x65,0x6d,0x61,0x69,0x6e,0x69,0x6e,0x67,0x29,0x2c,0x20,0x41,0x4c, +0x49,0x47,0x4e,0x5f,0x53,0x49,0x5a,0x45,0x29,0x20,0x26,0x26,0x20,0x22,0x72,0x65, +0x6d,0x61,0x69,0x6e,0x69,0x6e,0x67,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x6e,0x6f, +0x74,0x20,0x61,0x6c,0x69,0x67,0x6e,0x65,0x64,0x20,0x70,0x72,0x6f,0x70,0x65,0x72, +0x6c,0x79,0x22,0x00,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x73,0x69,0x7a,0x65,0x28,0x62, +0x6c,0x6f,0x63,0x6b,0x29,0x20,0x3d,0x3d,0x20,0x72,0x65,0x6d,0x61,0x69,0x6e,0x5f, +0x73,0x69,0x7a,0x65,0x20,0x2b,0x20,0x73,0x69,0x7a,0x65,0x20,0x2b,0x20,0x62,0x6c, +0x6f,0x63,0x6b,0x5f,0x68,0x65,0x61,0x64,0x65,0x72,0x5f,0x6f,0x76,0x65,0x72,0x68, +0x65,0x61,0x64,0x00,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x73,0x69,0x7a,0x65,0x28,0x72, +0x65,0x6d,0x61,0x69,0x6e,0x69,0x6e,0x67,0x29,0x20,0x3e,0x3d,0x20,0x62,0x6c,0x6f, +0x63,0x6b,0x5f,0x73,0x69,0x7a,0x65,0x5f,0x6d,0x69,0x6e,0x20,0x26,0x26,0x20,0x22, +0x62,0x6c,0x6f,0x63,0x6b,0x20,0x73,0x70,0x6c,0x69,0x74,0x20,0x77,0x69,0x74,0x68, +0x20,0x69,0x6e,0x76,0x61,0x6c,0x69,0x64,0x20,0x73,0x69,0x7a,0x65,0x22,0x00,0x00, +0x21,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69,0x73,0x5f,0x6c,0x61,0x73,0x74,0x28,0x70, +0x72,0x65,0x76,0x29,0x20,0x26,0x26,0x20,0x22,0x70,0x72,0x65,0x76,0x69,0x6f,0x75, +0x73,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x63,0x61,0x6e,0x27,0x74,0x20,0x62,0x65, +0x20,0x6c,0x61,0x73,0x74,0x22,0x00,0x00,0x70,0x72,0x65,0x76,0x20,0x26,0x26,0x20, +0x22,0x70,0x72,0x65,0x76,0x20,0x70,0x68,0x79,0x73,0x69,0x63,0x61,0x6c,0x20,0x62, +0x6c,0x6f,0x63,0x6b,0x20,0x63,0x61,0x6e,0x27,0x74,0x20,0x62,0x65,0x20,0x6e,0x75, +0x6c,0x6c,0x22,0x00,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69,0x73,0x5f,0x66,0x72,0x65, +0x65,0x28,0x70,0x72,0x65,0x76,0x29,0x20,0x26,0x26,0x20,0x22,0x70,0x72,0x65,0x76, +0x20,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x69,0x73,0x20,0x6e,0x6f,0x74,0x20,0x66,0x72, +0x65,0x65,0x20,0x74,0x68,0x6f,0x75,0x67,0x68,0x20,0x6d,0x61,0x72,0x6b,0x65,0x64, +0x20,0x61,0x73,0x20,0x73,0x75,0x63,0x68,0x22,0x00,0x00,0x00,0x6e,0x65,0x78,0x74, +0x20,0x26,0x26,0x20,0x22,0x6e,0x65,0x78,0x74,0x20,0x70,0x68,0x79,0x73,0x69,0x63, +0x61,0x6c,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x63,0x61,0x6e,0x27,0x74,0x20,0x62, +0x65,0x20,0x6e,0x75,0x6c,0x6c,0x22,0x00,0x21,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69, +0x73,0x5f,0x6c,0x61,0x73,0x74,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x20,0x26,0x26, +0x20,0x22,0x70,0x72,0x65,0x76,0x69,0x6f,0x75,0x73,0x20,0x62,0x6c,0x6f,0x63,0x6b, +0x20,0x63,0x61,0x6e,0x27,0x74,0x20,0x62,0x65,0x20,0x6c,0x61,0x73,0x74,0x22,0x00, +0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69,0x73,0x5f,0x66,0x72,0x65,0x65,0x28,0x62,0x6c, +0x6f,0x63,0x6b,0x29,0x20,0x26,0x26,0x20,0x22,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x6d, +0x75,0x73,0x74,0x20,0x62,0x65,0x20,0x66,0x72,0x65,0x65,0x22,0x00,0x00,0x00,0x00, +0x21,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69,0x73,0x5f,0x66,0x72,0x65,0x65,0x28,0x62, +0x6c,0x6f,0x63,0x6b,0x29,0x20,0x26,0x26,0x20,0x22,0x62,0x6c,0x6f,0x63,0x6b,0x20, +0x6d,0x75,0x73,0x74,0x20,0x62,0x65,0x20,0x75,0x73,0x65,0x64,0x22,0x00,0x00,0x00, +0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x73,0x69,0x7a,0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b, +0x29,0x20,0x3e,0x3d,0x20,0x73,0x69,0x7a,0x65,0x00,0x00,0x00,0x73,0x69,0x7a,0x65, +0x20,0x26,0x26,0x20,0x22,0x73,0x69,0x7a,0x65,0x20,0x6d,0x75,0x73,0x74,0x20,0x62, +0x65,0x20,0x6e,0x6f,0x6e,0x2d,0x7a,0x65,0x72,0x6f,0x22,0x00,0x69,0x6e,0x74,0x65, +0x67,0x2d,0x3e,0x70,0x72,0x65,0x76,0x5f,0x73,0x74,0x61,0x74,0x75,0x73,0x20,0x3d, +0x3d,0x20,0x74,0x68,0x69,0x73,0x5f,0x70,0x72,0x65,0x76,0x5f,0x73,0x74,0x61,0x74, +0x75,0x73,0x20,0x26,0x26,0x20,0x22,0x70,0x72,0x65,0x76,0x20,0x73,0x74,0x61,0x74, +0x75,0x73,0x20,0x69,0x6e,0x63,0x6f,0x72,0x72,0x65,0x63,0x74,0x22,0x00,0x00,0x00, +0x73,0x69,0x7a,0x65,0x20,0x3d,0x3d,0x20,0x74,0x68,0x69,0x73,0x5f,0x62,0x6c,0x6f, +0x63,0x6b,0x5f,0x73,0x69,0x7a,0x65,0x20,0x26,0x26,0x20,0x22,0x62,0x6c,0x6f,0x63, +0x6b,0x20,0x73,0x69,0x7a,0x65,0x20,0x69,0x6e,0x63,0x6f,0x72,0x72,0x65,0x63,0x74, +0x22,0x00,0x00,0x00,0x21,0x73,0x6c,0x5f,0x6d,0x61,0x70,0x20,0x26,0x26,0x20,0x22, +0x73,0x65,0x63,0x6f,0x6e,0x64,0x2d,0x6c,0x65,0x76,0x65,0x6c,0x20,0x6d,0x61,0x70, +0x20,0x6d,0x75,0x73,0x74,0x20,0x62,0x65,0x20,0x6e,0x75,0x6c,0x6c,0x22,0x00,0x00, +0x62,0x6c,0x6f,0x63,0x6b,0x20,0x3d,0x3d,0x20,0x26,0x63,0x6f,0x6e,0x74,0x72,0x6f, +0x6c,0x2d,0x3e,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x6e,0x75,0x6c,0x6c,0x20,0x26,0x26, +0x20,0x22,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x6c,0x69,0x73,0x74,0x20,0x6d,0x75,0x73, +0x74,0x20,0x62,0x65,0x20,0x6e,0x75,0x6c,0x6c,0x22,0x00,0x00,0x73,0x6c,0x5f,0x6c, +0x69,0x73,0x74,0x20,0x26,0x26,0x20,0x22,0x6e,0x6f,0x20,0x66,0x72,0x65,0x65,0x20, +0x62,0x6c,0x6f,0x63,0x6b,0x73,0x20,0x69,0x6e,0x20,0x73,0x65,0x63,0x6f,0x6e,0x64, +0x2d,0x6c,0x65,0x76,0x65,0x6c,0x20,0x6d,0x61,0x70,0x22,0x00,0x62,0x6c,0x6f,0x63, +0x6b,0x20,0x21,0x3d,0x20,0x26,0x63,0x6f,0x6e,0x74,0x72,0x6f,0x6c,0x2d,0x3e,0x62, +0x6c,0x6f,0x63,0x6b,0x5f,0x6e,0x75,0x6c,0x6c,0x20,0x26,0x26,0x20,0x22,0x62,0x6c, +0x6f,0x63,0x6b,0x20,0x73,0x68,0x6f,0x75,0x6c,0x64,0x20,0x6e,0x6f,0x74,0x20,0x62, +0x65,0x20,0x6e,0x75,0x6c,0x6c,0x22,0x00,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69,0x73, +0x5f,0x66,0x72,0x65,0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x20,0x26,0x26,0x20, +0x22,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x73,0x68,0x6f,0x75,0x6c,0x64,0x20,0x62,0x65, +0x20,0x66,0x72,0x65,0x65,0x22,0x00,0x00,0x21,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69, +0x73,0x5f,0x70,0x72,0x65,0x76,0x5f,0x66,0x72,0x65,0x65,0x28,0x62,0x6c,0x6f,0x63, +0x6b,0x29,0x20,0x26,0x26,0x20,0x22,0x62,0x6c,0x6f,0x63,0x6b,0x73,0x20,0x73,0x68, +0x6f,0x75,0x6c,0x64,0x20,0x68,0x61,0x76,0x65,0x20,0x63,0x6f,0x61,0x6c,0x65,0x73, +0x63,0x65,0x64,0x22,0x00,0x00,0x00,0x00,0x21,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69, +0x73,0x5f,0x66,0x72,0x65,0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x6e,0x65,0x78, +0x74,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x29,0x20,0x26,0x26,0x20,0x22,0x62,0x6c, +0x6f,0x63,0x6b,0x73,0x20,0x73,0x68,0x6f,0x75,0x6c,0x64,0x20,0x68,0x61,0x76,0x65, +0x20,0x63,0x6f,0x61,0x6c,0x65,0x73,0x63,0x65,0x64,0x22,0x00,0x62,0x6c,0x6f,0x63, +0x6b,0x5f,0x69,0x73,0x5f,0x70,0x72,0x65,0x76,0x5f,0x66,0x72,0x65,0x65,0x28,0x62, +0x6c,0x6f,0x63,0x6b,0x5f,0x6e,0x65,0x78,0x74,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29, +0x29,0x20,0x26,0x26,0x20,0x22,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x73,0x68,0x6f,0x75, +0x6c,0x64,0x20,0x62,0x65,0x20,0x66,0x72,0x65,0x65,0x22,0x00,0x62,0x6c,0x6f,0x63, +0x6b,0x5f,0x73,0x69,0x7a,0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x20,0x3e,0x3d, +0x20,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x73,0x69,0x7a,0x65,0x5f,0x6d,0x69,0x6e,0x20, +0x26,0x26,0x20,0x22,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x6e,0x6f,0x74,0x20,0x6d,0x69, +0x6e,0x69,0x6d,0x75,0x6d,0x20,0x73,0x69,0x7a,0x65,0x22,0x00,0x66,0x6c,0x69,0x20, +0x3d,0x3d,0x20,0x69,0x20,0x26,0x26,0x20,0x73,0x6c,0x69,0x20,0x3d,0x3d,0x20,0x6a, +0x20,0x26,0x26,0x20,0x22,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x73,0x69,0x7a,0x65,0x20, +0x69,0x6e,0x64,0x65,0x78,0x65,0x64,0x20,0x69,0x6e,0x20,0x77,0x72,0x6f,0x6e,0x67, +0x20,0x6c,0x69,0x73,0x74,0x22,0x00,0x00,0x21,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69, +0x73,0x5f,0x66,0x72,0x65,0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x6e,0x65,0x78, +0x74,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x29,0x20,0x26,0x26,0x20,0x22,0x6e,0x65, +0x78,0x74,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x73,0x68,0x6f,0x75,0x6c,0x64,0x20, +0x6e,0x6f,0x74,0x20,0x62,0x65,0x20,0x66,0x72,0x65,0x65,0x22,0x00,0x00,0x00,0x00, +0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x73,0x69,0x7a,0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b, +0x5f,0x6e,0x65,0x78,0x74,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x29,0x20,0x3d,0x3d, +0x20,0x30,0x20,0x26,0x26,0x20,0x22,0x6e,0x65,0x78,0x74,0x20,0x62,0x6c,0x6f,0x63, +0x6b,0x20,0x73,0x69,0x7a,0x65,0x20,0x73,0x68,0x6f,0x75,0x6c,0x64,0x20,0x62,0x65, +0x20,0x7a,0x65,0x72,0x6f,0x22,0x00,0x00,0x73,0x69,0x7a,0x65,0x6f,0x66,0x28,0x62, +0x6c,0x6f,0x63,0x6b,0x5f,0x68,0x65,0x61,0x64,0x65,0x72,0x5f,0x74,0x29,0x20,0x3d, +0x3d,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x73,0x69,0x7a,0x65,0x5f,0x6d,0x69,0x6e, +0x20,0x2b,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x68,0x65,0x61,0x64,0x65,0x72,0x5f, +0x6f,0x76,0x65,0x72,0x68,0x65,0x61,0x64,0x00,0x00,0x00,0x00,0x67,0x61,0x70,0x20, +0x3e,0x3d,0x20,0x67,0x61,0x70,0x5f,0x6d,0x69,0x6e,0x69,0x6d,0x75,0x6d,0x20,0x26, +0x26,0x20,0x22,0x67,0x61,0x70,0x20,0x73,0x69,0x7a,0x65,0x20,0x74,0x6f,0x6f,0x20, +0x73,0x6d,0x61,0x6c,0x6c,0x22,0x00,0x00,0x21,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69, +0x73,0x5f,0x66,0x72,0x65,0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x20,0x26,0x26, +0x20,0x22,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x61,0x6c,0x72,0x65,0x61,0x64,0x79,0x20, +0x6d,0x61,0x72,0x6b,0x65,0x64,0x20,0x61,0x73,0x20,0x66,0x72,0x65,0x65,0x22,0x00, +0x74,0x6c,0x73,0x66,0x5f,0x75,0x73,0x65,0x64,0x20,0x3e,0x20,0x62,0x6c,0x6f,0x63, +0x6b,0x5f,0x73,0x69,0x7a,0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x20,0x26,0x26, +0x20,0x22,0x61,0x70,0x70,0x20,0x68,0x65,0x61,0x70,0x20,0x6d,0x61,0x79,0x20,0x6e, +0x6f,0x74,0x20,0x69,0x6e,0x69,0x74,0x2e,0x22,0x00,0x00,0x00,0x63,0x74,0x5f,0x6d, +0x75,0x74,0x65,0x78,0x00,0x00,0x00,0x00,0x88,0xd0,0xff,0x7f,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,0x03,0x00,0x01,0x00, +0x00,0x00,0x00,0x00,0x84,0x36,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x08,0x00, +0x4b,0x00,0x00,0x00,0x30,0x31,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x02,0x00, +0x9a,0x00,0x00,0x00,0x84,0x36,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x08,0x00, +0x01,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0xf1,0xff, +0xb7,0x00,0x00,0x00,0x5c,0x37,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x08,0x00, +0x14,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x01,0x00, +0x31,0x00,0x00,0x00,0x28,0x31,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x01,0x00, +0x41,0x01,0x00,0x00,0xf4,0x98,0x00,0x00,0x0c,0x00,0x00,0x00,0x11,0x00,0x0b,0x00, +0x0a,0x01,0x00,0x00,0xe8,0x87,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x0b,0x00, +0xed,0x00,0x00,0x00,0xe8,0x37,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x0b,0x00, +0x3d,0x00,0x00,0x00,0x28,0x31,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x02,0x00, +0xd0,0x00,0x00,0x00,0x00,0x50,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0xf1,0xff, +0xc3,0x00,0x00,0x00,0x5c,0x37,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x08,0x00, +0x35,0x01,0x00,0x00,0x04,0x99,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x0b,0x00, +0x8d,0x00,0x00,0x00,0x80,0x62,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0xf1,0xff, +0xfb,0x00,0x00,0x00,0xe8,0x37,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x0b,0x00, +0xde,0x00,0x00,0x00,0x00,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0xf1,0xff, +0x57,0x00,0x00,0x00,0x84,0x36,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x07,0x00, +0x23,0x00,0x00,0x00,0x28,0x31,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x01,0x00, +0x73,0x00,0x00,0x00,0x84,0x36,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x07,0x00, +0x52,0x00,0x00,0x00,0x04,0x99,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x0b,0x00, +0x27,0x01,0x00,0x00,0xe8,0x97,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x0b,0x00, +0x17,0x01,0x00,0x00,0xe8,0x87,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x0b,0x00, +0xa9,0x00,0x00,0x00,0x84,0x36,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x08,0x00, +0x00,0x5f,0x73,0x79,0x73,0x74,0x65,0x6d,0x5f,0x73,0x74,0x61,0x63,0x6b,0x5f,0x73, +0x69,0x7a,0x65,0x00,0x5f,0x5f,0x74,0x65,0x78,0x74,0x5f,0x73,0x74,0x61,0x72,0x74, +0x5f,0x5f,0x00,0x5f,0x5f,0x72,0x65,0x6c,0x5f,0x73,0x74,0x61,0x72,0x74,0x5f,0x5f, +0x00,0x5f,0x5f,0x72,0x65,0x6c,0x5f,0x65,0x6e,0x64,0x5f,0x5f,0x00,0x5f,0x5f,0x65, +0x78,0x64,0x69,0x78,0x5f,0x73,0x74,0x61,0x72,0x74,0x00,0x5f,0x5f,0x65,0x78,0x64, +0x69,0x78,0x5f,0x65,0x6e,0x64,0x00,0x5f,0x5f,0x70,0x65,0x72,0x6d,0x69,0x73,0x73, +0x69,0x6f,0x6e,0x73,0x5f,0x74,0x61,0x62,0x6c,0x65,0x5f,0x73,0x74,0x61,0x72,0x74, +0x5f,0x5f,0x00,0x5f,0x5f,0x70,0x65,0x72,0x6d,0x69,0x73,0x73,0x69,0x6f,0x6e,0x73, +0x5f,0x74,0x61,0x62,0x6c,0x65,0x5f,0x65,0x6e,0x64,0x5f,0x5f,0x00,0x5f,0x5f,0x72, +0x61,0x6d,0x5f,0x73,0x69,0x7a,0x65,0x5f,0x5f,0x00,0x5f,0x5f,0x64,0x61,0x74,0x61, +0x5f,0x73,0x74,0x61,0x72,0x74,0x5f,0x5f,0x00,0x5f,0x5f,0x67,0x6f,0x74,0x5f,0x73, +0x74,0x61,0x72,0x74,0x5f,0x5f,0x00,0x5f,0x5f,0x67,0x6f,0x74,0x5f,0x65,0x6e,0x64, +0x5f,0x5f,0x00,0x5f,0x5f,0x64,0x61,0x74,0x61,0x5f,0x65,0x6e,0x64,0x5f,0x5f,0x00, +0x5f,0x5f,0x68,0x65,0x61,0x70,0x5f,0x73,0x69,0x7a,0x65,0x5f,0x5f,0x00,0x5f,0x5f, +0x73,0x74,0x61,0x63,0x6b,0x5f,0x73,0x69,0x7a,0x65,0x5f,0x5f,0x00,0x5f,0x5f,0x62, +0x73,0x73,0x5f,0x73,0x74,0x61,0x72,0x74,0x5f,0x5f,0x00,0x5f,0x5f,0x68,0x65,0x61, +0x70,0x5f,0x73,0x74,0x61,0x72,0x74,0x5f,0x5f,0x00,0x5f,0x5f,0x68,0x65,0x61,0x70, +0x5f,0x65,0x6e,0x64,0x5f,0x5f,0x00,0x5f,0x5f,0x73,0x74,0x61,0x63,0x6b,0x5f,0x73, +0x74,0x61,0x72,0x74,0x5f,0x5f,0x00,0x5f,0x5f,0x73,0x74,0x61,0x63,0x6b,0x5f,0x65, +0x6e,0x64,0x5f,0x5f,0x00,0x5f,0x5f,0x62,0x73,0x73,0x5f,0x65,0x6e,0x64,0x5f,0x5f, +0x00,0x75,0x74,0x68,0x72,0x65,0x61,0x64,0x5f,0x67,0x72,0x70,0x00,0x00,0x00,0x00, +0x11,0x00,0x00,0x00,0x1a,0x00,0x00,0x00,0x0c,0x00,0x00,0x00,0x18,0x00,0x00,0x00, +0x09,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x17,0x00,0x00,0x00,0x0f,0x00,0x00,0x00, +0x19,0x00,0x00,0x00,0x15,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x07,0x00,0x00,0x00, +0x0b,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0d,0x00,0x00,0x00,0x16,0x00,0x00,0x00, +0x10,0x00,0x00,0x00,0x13,0x00,0x00,0x00,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0e,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0a,0x00,0x00,0x00,0x08,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x14,0x00,0x00,0x00,0x11,0x00,0x00,0x00, +0x12,0x00,0x00,0x00,0x84,0x36,0x00,0x00,0x17,0x00,0x00,0x00,0x88,0x36,0x00,0x00, +0x17,0x00,0x00,0x00,0x8c,0x36,0x00,0x00,0x17,0x00,0x00,0x00,0x90,0x36,0x00,0x00, +0x17,0x00,0x00,0x00,0x94,0x36,0x00,0x00,0x17,0x00,0x00,0x00,0x98,0x36,0x00,0x00, +0x17,0x00,0x00,0x00,0x9c,0x36,0x00,0x00,0x17,0x00,0x00,0x00,0xa0,0x36,0x00,0x00, +0x17,0x00,0x00,0x00,0xa4,0x36,0x00,0x00,0x17,0x00,0x00,0x00,0xa8,0x36,0x00,0x00, +0x17,0x00,0x00,0x00,0xac,0x36,0x00,0x00,0x17,0x00,0x00,0x00,0xb0,0x36,0x00,0x00, +0x17,0x00,0x00,0x00,0xb4,0x36,0x00,0x00,0x17,0x00,0x00,0x00,0xb8,0x36,0x00,0x00, +0x17,0x00,0x00,0x00,0xbc,0x36,0x00,0x00,0x17,0x00,0x00,0x00,0xc0,0x36,0x00,0x00, +0x17,0x00,0x00,0x00,0xc4,0x36,0x00,0x00,0x17,0x00,0x00,0x00,0xc8,0x36,0x00,0x00, +0x17,0x00,0x00,0x00,0xcc,0x36,0x00,0x00,0x17,0x00,0x00,0x00,0xd0,0x36,0x00,0x00, +0x17,0x00,0x00,0x00,0xd4,0x36,0x00,0x00,0x17,0x00,0x00,0x00,0xd8,0x36,0x00,0x00, +0x17,0x00,0x00,0x00,0xdc,0x36,0x00,0x00,0x17,0x00,0x00,0x00,0xe0,0x36,0x00,0x00, +0x17,0x00,0x00,0x00,0xe4,0x36,0x00,0x00,0x17,0x00,0x00,0x00,0xe8,0x36,0x00,0x00, +0x17,0x00,0x00,0x00,0xec,0x36,0x00,0x00,0x17,0x00,0x00,0x00,0xf0,0x36,0x00,0x00, +0x17,0x00,0x00,0x00,0xf4,0x36,0x00,0x00,0x17,0x00,0x00,0x00,0xf8,0x36,0x00,0x00, +0x17,0x00,0x00,0x00,0xfc,0x36,0x00,0x00,0x17,0x00,0x00,0x00,0x00,0x37,0x00,0x00, +0x17,0x00,0x00,0x00,0x04,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0x08,0x37,0x00,0x00, +0x17,0x00,0x00,0x00,0x0c,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0x10,0x37,0x00,0x00, +0x17,0x00,0x00,0x00,0x14,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0x18,0x37,0x00,0x00, +0x17,0x00,0x00,0x00,0x1c,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0x20,0x37,0x00,0x00, +0x17,0x00,0x00,0x00,0x24,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0x28,0x37,0x00,0x00, +0x17,0x00,0x00,0x00,0x2c,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0x30,0x37,0x00,0x00, +0x17,0x00,0x00,0x00,0x34,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0x38,0x37,0x00,0x00, +0x17,0x00,0x00,0x00,0x3c,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0x40,0x37,0x00,0x00, +0x17,0x00,0x00,0x00,0x44,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0x48,0x37,0x00,0x00, +0x17,0x00,0x00,0x00,0x4c,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0x50,0x37,0x00,0x00, +0x17,0x00,0x00,0x00,0x54,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0x58,0x37,0x00,0x00, +0x17,0x00,0x00,0x00,0xe8,0x26,0x00,0x00,0xf0,0x26,0x00,0x00,0x2c,0x27,0x00,0x00, +0x68,0x27,0x00,0x00,0x74,0x27,0x00,0x00,0x84,0x27,0x00,0x00,0xa8,0x27,0x00,0x00, +0xc8,0x27,0x00,0x00,0xdc,0x27,0x00,0x00,0xc0,0x26,0x00,0x00,0xd4,0x26,0x00,0x00, +0xf8,0x27,0x00,0x00,0xe8,0x97,0x00,0x00,0xe8,0x98,0x00,0x00,0xec,0x98,0x00,0x00, +0x00,0x28,0x00,0x00,0xf0,0x98,0x00,0x00,0x24,0x28,0x00,0x00,0x60,0x28,0x00,0x00, +0x24,0x26,0x00,0x00,0x84,0x28,0x00,0x00,0x30,0x26,0x00,0x00,0x9c,0x28,0x00,0x00, +0x3c,0x26,0x00,0x00,0x48,0x26,0x00,0x00,0x18,0x29,0x00,0x00,0x44,0x29,0x00,0x00, +0x54,0x26,0x00,0x00,0x70,0x29,0x00,0x00,0xa0,0x29,0x00,0x00,0xdc,0x29,0x00,0x00, +0x68,0x26,0x00,0x00,0x40,0x2b,0x00,0x00,0x7c,0x26,0x00,0x00,0x78,0x2b,0x00,0x00, +0xa4,0x2b,0x00,0x00,0x8c,0x26,0x00,0x00,0xec,0x2b,0x00,0x00,0x18,0x2c,0x00,0x00, +0xa0,0x26,0x00,0x00,0xa8,0x30,0x00,0x00,0xe0,0x30,0x00,0x00,0xb4,0x26,0x00,0x00, +0x21,0x25,0x00,0x00,0x00,0x99,0x00,0x00,0x1c,0x31,0x00,0x00,0x5c,0x37,0x00,0x00, +0x00,0x00,0x00,0x00,0x28,0x31,0x00,0x00,0xf4,0x98,0x00,0x00,0xe8,0x87,0x00,0x00, +0xe8,0x37,0x00,0x00,0x28,0x31,0x00,0x00,0x84,0x36,0x00,0x00,0x04,0x00,0x00,0x00, +0x20,0x34,0x00,0x00,0x05,0x00,0x00,0x00,0xd0,0x32,0x00,0x00,0x06,0x00,0x00,0x00, +0x30,0x31,0x00,0x00,0x0a,0x00,0x00,0x00,0x4d,0x01,0x00,0x00,0x0b,0x00,0x00,0x00, +0x10,0x00,0x00,0x00,0x15,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x11,0x00,0x00,0x00, +0xd4,0x34,0x00,0x00,0x12,0x00,0x00,0x00,0xb0,0x01,0x00,0x00,0x13,0x00,0x00,0x00, +0x08,0x00,0x00,0x00,0xfb,0xff,0xff,0x6f,0x00,0x00,0x00,0x08,0xfa,0xff,0xff,0x6f, +0x36,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x5c,0x37,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +}; + +const static unsigned char _pong[] = { +0x84,0x46,0x5d,0xe0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x4c,0x57,0x50,0x2e,0x80,0x62,0x00,0x00,0x50,0x30,0x00,0x00,0x50,0x30,0x00,0x00, +0x61,0x70,0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x07,0xb4,0x31,0x00,0x00, +0xb4,0x81,0x00,0x00,0x00,0x50,0x00,0x00,0x00,0x10,0x00,0x00,0x50,0x30,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x23,0x4c,0x24,0x4a,0xa2,0xeb,0x04,0x03,0x4b,0x44,0x23,0xf0,0x07,0x03,0x9d,0x46, +0x00,0x21,0xaf,0xf2,0xd3,0x02,0x22,0xf0,0x01,0x02,0x1d,0x48,0x10,0x44,0x1e,0x4b, +0x13,0x44,0x03,0xe0,0x42,0x58,0x49,0xf8,0x01,0x20,0x04,0x31,0x42,0x18,0x9a,0x42, +0xf8,0xd3,0x00,0x20,0x16,0x49,0x19,0x4a,0xa2,0xeb,0x01,0x02,0x4a,0x44,0x18,0x4b, +0xa3,0xeb,0x01,0x03,0x4b,0x44,0x01,0xe0,0x42,0xf8,0x04,0x0b,0x9a,0x42,0xfb,0xd3, +0x4f,0xf0,0x23,0x30,0x0e,0x49,0x13,0x4a,0xa2,0xeb,0x01,0x02,0x4a,0x44,0x0d,0x4b, +0xa3,0xeb,0x01,0x03,0x4b,0x44,0x01,0xe0,0x42,0xf8,0x04,0x0b,0x9a,0x42,0xfb,0xd3, +0x60,0x46,0x11,0xb4,0x48,0x46,0xaf,0xf2,0x37,0x11,0x21,0xf0,0x01,0x01,0x00,0xf0, +0xcf,0xfa,0xbd,0xe8,0x01,0x10,0x00,0xf0,0xa3,0xfa,0x00,0xf0,0xfb,0xff,0x00,0x00, +0x50,0x30,0x00,0x00,0xb4,0x91,0x00,0x00,0x28,0x31,0x00,0x00,0xb4,0x31,0x00,0x00, +0xd0,0x92,0x00,0x00,0xb4,0x81,0x00,0x00,0xf0,0xb4,0x07,0x46,0x08,0x46,0x11,0x46, +0x1a,0x46,0x04,0xae,0x96,0xe8,0x38,0x00,0x00,0xdf,0xf0,0xbc,0x70,0x47,0x00,0x00, +0x53,0xb9,0x4a,0xb9,0x00,0x29,0x08,0xbf,0x00,0x28,0x1c,0xbf,0x4f,0xf0,0xff,0x31, +0x4f,0xf0,0xff,0x30,0x00,0xf0,0x7e,0xb9,0xad,0xf1,0x08,0x0c,0x6d,0xe9,0x04,0xce, +0x00,0xf0,0x06,0xf8,0xdd,0xf8,0x04,0xe0,0xdd,0xe9,0x02,0x23,0x04,0xb0,0x70,0x47, +0x2d,0xe9,0xf0,0x47,0x8c,0x46,0x0e,0x46,0x04,0x46,0x08,0x9d,0x00,0x2b,0x50,0xd1, +0x8a,0x42,0x17,0x46,0x6c,0xd9,0xb2,0xfa,0x82,0xfe,0xbe,0xf1,0x00,0x0f,0x0b,0xd0, +0xce,0xf1,0x20,0x04,0x20,0xfa,0x04,0xf4,0x01,0xfa,0x0e,0xf6,0x44,0xea,0x06,0x0c, +0x02,0xfa,0x0e,0xf7,0x00,0xfa,0x0e,0xf4,0x4f,0xea,0x17,0x49,0x22,0x0c,0xbc,0xfb, +0xf9,0xf0,0x1f,0xfa,0x87,0xf8,0x09,0xfb,0x10,0xc6,0x42,0xea,0x06,0x46,0x00,0xfb, +0x08,0xf3,0xb3,0x42,0x09,0xd9,0xf6,0x19,0x00,0xf1,0xff,0x32,0x80,0xf0,0x22,0x81, +0xb3,0x42,0x40,0xf2,0x1f,0x81,0x02,0x38,0x3e,0x44,0xf6,0x1a,0xa2,0xb2,0xb6,0xfb, +0xf9,0xf3,0x09,0xfb,0x13,0x66,0x42,0xea,0x06,0x44,0x03,0xfb,0x08,0xf8,0xa0,0x45, +0x09,0xd9,0xe4,0x19,0x03,0xf1,0xff,0x32,0x80,0xf0,0x0a,0x81,0xa0,0x45,0x40,0xf2, +0x07,0x81,0x02,0x3b,0x3c,0x44,0xc8,0xeb,0x04,0x04,0x43,0xea,0x00,0x40,0x00,0x21, +0x00,0x2d,0x62,0xd0,0x24,0xfa,0x0e,0xf4,0x00,0x23,0x2c,0x60,0x6b,0x60,0xbd,0xe8, +0xf0,0x87,0x8b,0x42,0x07,0xd9,0x00,0x2d,0x55,0xd0,0x00,0x21,0x85,0xe8,0x41,0x00, +0x08,0x46,0xbd,0xe8,0xf0,0x87,0xb3,0xfa,0x83,0xf1,0x00,0x29,0x40,0xf0,0x90,0x80, +0xb3,0x42,0x02,0xd3,0x82,0x42,0x00,0xf2,0xf8,0x80,0x84,0x1a,0x66,0xeb,0x03,0x06, +0x01,0x20,0xb4,0x46,0x00,0x2d,0x40,0xd0,0x85,0xe8,0x10,0x10,0xbd,0xe8,0xf0,0x87, +0x12,0xb9,0x01,0x27,0xb7,0xfb,0xf2,0xf7,0xb7,0xfa,0x87,0xfe,0xbe,0xf1,0x00,0x0f, +0x35,0xd1,0xf3,0x1b,0x4f,0xea,0x17,0x48,0x1f,0xfa,0x87,0xfc,0x01,0x21,0xb3,0xfb, +0xf8,0xf0,0x22,0x0c,0x08,0xfb,0x10,0x36,0x42,0xea,0x06,0x46,0x0c,0xfb,0x00,0xf3, +0xb3,0x42,0x07,0xd9,0xf6,0x19,0x00,0xf1,0xff,0x32,0x02,0xd2,0xb3,0x42,0x00,0xf2, +0xce,0x80,0x10,0x46,0xf6,0x1a,0xa2,0xb2,0xb6,0xfb,0xf8,0xf3,0x08,0xfb,0x13,0x66, +0x42,0xea,0x06,0x44,0x0c,0xfb,0x03,0xfc,0xa4,0x45,0x07,0xd9,0xe4,0x19,0x03,0xf1, +0xff,0x32,0x02,0xd2,0xa4,0x45,0x00,0xf2,0xb5,0x80,0x13,0x46,0xcc,0xeb,0x04,0x04, +0x43,0xea,0x00,0x40,0x9c,0xe7,0x29,0x46,0x28,0x46,0xbd,0xe8,0xf0,0x87,0xce,0xf1, +0x20,0x01,0x06,0xfa,0x0e,0xf3,0x07,0xfa,0x0e,0xf7,0x20,0xfa,0x01,0xf9,0x4f,0xea, +0x17,0x48,0xce,0x40,0x49,0xea,0x03,0x09,0xb6,0xfb,0xf8,0xfa,0x4f,0xea,0x19,0x44, +0x08,0xfb,0x1a,0x66,0x1f,0xfa,0x87,0xfc,0x44,0xea,0x06,0x43,0x0a,0xfb,0x0c,0xf2, +0x9a,0x42,0x00,0xfa,0x0e,0xf4,0x0a,0xd9,0xdb,0x19,0x0a,0xf1,0xff,0x31,0x80,0xf0, +0x87,0x80,0x9a,0x42,0x40,0xf2,0x84,0x80,0xaa,0xf1,0x02,0x0a,0x3b,0x44,0x9b,0x1a, +0x1f,0xfa,0x89,0xf9,0xb3,0xfb,0xf8,0xf1,0x08,0xfb,0x11,0x33,0x49,0xea,0x03,0x43, +0x01,0xfb,0x0c,0xf6,0x9e,0x42,0x07,0xd9,0xdb,0x19,0x01,0xf1,0xff,0x32,0x6b,0xd2, +0x9e,0x42,0x69,0xd9,0x02,0x39,0x3b,0x44,0x9b,0x1b,0x41,0xea,0x0a,0x41,0x8e,0xe7, +0xc1,0xf1,0x20,0x0e,0x22,0xfa,0x0e,0xf4,0x8b,0x40,0x23,0x43,0x20,0xfa,0x0e,0xf7, +0x06,0xfa,0x01,0xf4,0x4f,0xea,0x13,0x4c,0x26,0xfa,0x0e,0xf6,0x3c,0x43,0xb6,0xfb, +0xfc,0xf9,0x27,0x0c,0x0c,0xfb,0x19,0x66,0x1f,0xfa,0x83,0xf8,0x47,0xea,0x06,0x46, +0x09,0xfb,0x08,0xf7,0xb7,0x42,0x02,0xfa,0x01,0xf2,0x00,0xfa,0x01,0xfa,0x08,0xd9, +0xf6,0x18,0x09,0xf1,0xff,0x30,0x41,0xd2,0xb7,0x42,0x3f,0xd9,0xa9,0xf1,0x02,0x09, +0x1e,0x44,0xf6,0x1b,0xa0,0xb2,0xb6,0xfb,0xfc,0xf4,0x0c,0xfb,0x14,0x66,0x40,0xea, +0x06,0x47,0x04,0xfb,0x08,0xf8,0xb8,0x45,0x07,0xd9,0xff,0x18,0x04,0xf1,0xff,0x30, +0x28,0xd2,0xb8,0x45,0x26,0xd9,0x02,0x3c,0x1f,0x44,0x44,0xea,0x09,0x40,0xc8,0xeb, +0x07,0x07,0xa0,0xfb,0x02,0x89,0x4f,0x45,0x44,0x46,0x4e,0x46,0x14,0xd3,0x29,0xd0, +0x65,0xb3,0xba,0xeb,0x04,0x03,0x67,0xeb,0x06,0x07,0x07,0xfa,0x0e,0xfe,0xcb,0x40, +0xcf,0x40,0x4e,0xea,0x03,0x03,0x85,0xe8,0x88,0x00,0x00,0x21,0xbd,0xe8,0xf0,0x87, +0x13,0x46,0xf8,0xe6,0x10,0x46,0xe0,0xe6,0xb8,0xeb,0x02,0x04,0x69,0xeb,0x03,0x06, +0x01,0x38,0xe5,0xe7,0x04,0x46,0xd8,0xe7,0x11,0x46,0x95,0xe7,0x81,0x46,0xc0,0xe7, +0x8a,0x46,0x7c,0xe7,0x02,0x3b,0x3c,0x44,0x48,0xe7,0x08,0x46,0x0a,0xe7,0x02,0x38, +0x3e,0x44,0x2f,0xe7,0xc2,0x45,0xe7,0xd3,0x3e,0x46,0xd1,0xe7,0x29,0x46,0xbd,0xe8, +0xf0,0x87,0x00,0xbf,0x70,0x47,0x00,0xbf,0x80,0xb5,0x8a,0xb0,0x00,0xaf,0x78,0x60, +0x39,0x60,0x00,0x23,0x3b,0x62,0x4f,0xf4,0x00,0x71,0x3b,0x4b,0x59,0xf8,0x03,0x30, +0x18,0x46,0x00,0xf0,0xb0,0xf8,0xf8,0x61,0xfb,0x69,0xb3,0xf1,0xff,0x3f,0x08,0xd1, +0x36,0x4b,0x59,0xf8,0x03,0x30,0x18,0x46,0x00,0xf0,0x14,0xfe,0x4f,0xf0,0xff,0x33, +0x5d,0xe0,0xf9,0x69,0x32,0x4b,0x59,0xf8,0x03,0x30,0x18,0x46,0x00,0xf0,0x0a,0xfe, +0x00,0x23,0x7b,0x62,0x46,0xe0,0x07,0xf1,0x0c,0x03,0x41,0xf2,0x88,0x32,0x19,0x46, +0xf8,0x69,0x00,0xf0,0xbb,0xf8,0x03,0x46,0x00,0x2b,0x06,0xd0,0x29,0x4b,0x59,0xf8, +0x03,0x30,0x18,0x46,0x00,0xf0,0xf6,0xfd,0x37,0xe0,0x7b,0x69,0x3b,0x62,0x39,0x6a, +0x25,0x4b,0x59,0xf8,0x03,0x30,0x18,0x46,0x00,0xf0,0xec,0xfd,0x7b,0x6a,0x30,0x33, +0x05,0x22,0x19,0x46,0x38,0x6a,0x00,0xf0,0x67,0xfe,0x39,0x6a,0x1f,0x4b,0x59,0xf8, +0x03,0x30,0x18,0x46,0x00,0xf0,0xde,0xfd,0x79,0x6a,0x1d,0x4b,0x59,0xf8,0x03,0x30, +0x18,0x46,0x00,0xf0,0xd7,0xfd,0x01,0x23,0x3b,0x61,0x7b,0x6a,0x7b,0x61,0x07,0xf1, +0x0c,0x03,0x19,0x46,0xf8,0x69,0x00,0xf0,0x7a,0xf8,0x03,0x46,0x00,0x2b,0x06,0xd0, +0x14,0x4b,0x59,0xf8,0x03,0x30,0x18,0x46,0x00,0xf0,0xc4,0xfd,0x05,0xe0,0x7b,0x6a, +0x01,0x33,0x7b,0x62,0x7b,0x6a,0x09,0x2b,0xb5,0xdd,0xf8,0x69,0x00,0xf0,0x5a,0xf8, +0x0d,0x4b,0x59,0xf8,0x03,0x30,0x18,0x46,0x00,0xf0,0xb4,0xfd,0x00,0x23,0x18,0x46, +0x28,0x37,0xbd,0x46,0x80,0xbd,0x00,0xbf,0x00,0x00,0x00,0x00,0x04,0x00,0x00,0x00, +0x08,0x00,0x00,0x00,0x0c,0x00,0x00,0x00,0x10,0x00,0x00,0x00,0x14,0x00,0x00,0x00, +0x18,0x00,0x00,0x00,0x1c,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x80,0xb5,0x82,0xb0, +0x00,0xaf,0x78,0x60,0x0b,0x46,0xfb,0x70,0xfb,0x78,0x1a,0x46,0x79,0x68,0x16,0x20, +0xff,0xf7,0xca,0xfd,0x03,0x46,0x18,0x46,0x08,0x37,0xbd,0x46,0x80,0xbd,0x80,0xb5, +0x82,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60,0x3a,0x68,0x79,0x68,0x18,0x20,0xff,0xf7, +0xbb,0xfd,0x03,0x46,0x18,0x46,0x08,0x37,0xbd,0x46,0x80,0xbd,0x80,0xb5,0x82,0xb0, +0x00,0xaf,0x78,0x60,0x79,0x68,0x19,0x20,0xff,0xf7,0xae,0xfd,0x03,0x46,0x18,0x46, +0x08,0x37,0xbd,0x46,0x80,0xbd,0x80,0xb5,0x82,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60, +0x3a,0x68,0x79,0x68,0x2c,0x20,0xff,0xf7,0x9f,0xfd,0x03,0x46,0x18,0x46,0x08,0x37, +0xbd,0x46,0x80,0xbd,0x80,0xb5,0x82,0xb0,0x00,0xaf,0x78,0x60,0x79,0x68,0x2d,0x20, +0xff,0xf7,0x92,0xfd,0x03,0x46,0x18,0x46,0x08,0x37,0xbd,0x46,0x80,0xbd,0x80,0xb5, +0x82,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60,0x3a,0x68,0x79,0x68,0x30,0x20,0xff,0xf7, +0x83,0xfd,0x03,0x46,0x18,0x46,0x08,0x37,0xbd,0x46,0x80,0xbd,0x80,0xb5,0x84,0xb0, +0x00,0xaf,0xf8,0x60,0xb9,0x60,0x7a,0x60,0x7b,0x68,0xba,0x68,0xf9,0x68,0x31,0x20, +0xff,0xf7,0x72,0xfd,0x03,0x46,0x18,0x46,0x10,0x37,0xbd,0x46,0x80,0xbd,0x00,0x00, +0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68,0x1b,0x68,0xfb,0x60,0x7b,0x68, +0x04,0x33,0xbb,0x60,0x0c,0x4b,0x59,0xf8,0x03,0x30,0x1a,0x46,0x0b,0x4b,0x59,0xf8, +0x03,0x30,0xd3,0x1a,0x19,0x46,0x09,0x4b,0x59,0xf8,0x03,0x30,0x18,0x46,0x00,0xf0, +0x4d,0xfd,0x01,0xf0,0x4d,0xfc,0xb9,0x68,0xf8,0x68,0xff,0xf7,0xe5,0xfe,0x03,0x46, +0x18,0x46,0x00,0xf0,0x37,0xfd,0x00,0xbf,0xc8,0x00,0x00,0x00,0xcc,0x00,0x00,0x00, +0x80,0xb4,0x8d,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60,0x47,0x4b,0x59,0xf8,0x03,0x30, +0x7b,0x62,0x46,0x4b,0x59,0xf8,0x03,0x30,0x3b,0x62,0x45,0x4b,0x59,0xf8,0x03,0x30, +0xfb,0x61,0x00,0x23,0xfb,0x62,0x7b,0x6a,0xbb,0x62,0x2e,0xe0,0xfb,0x6a,0x9b,0x00, +0x7a,0x68,0x13,0x44,0x1b,0x68,0x7a,0x6a,0x9a,0x42,0x10,0xd8,0xfb,0x6a,0x9b,0x00, +0x7a,0x68,0x13,0x44,0x1a,0x68,0x7b,0x6a,0xd3,0x1a,0x3b,0x61,0x79,0x68,0xfb,0x6a, +0x9b,0x00,0x7a,0x68,0x13,0x44,0x3a,0x69,0x0a,0x44,0x1a,0x60,0x0f,0xe0,0xfb,0x6a, +0x9b,0x00,0x7a,0x68,0x13,0x44,0x1a,0x68,0xfb,0x69,0xd3,0x1a,0x3b,0x61,0xfb,0x6a, +0x9b,0x00,0x7a,0x68,0x13,0x44,0x39,0x69,0x3a,0x68,0x0a,0x44,0x1a,0x60,0xbb,0x6a, +0x04,0x33,0xbb,0x62,0xfb,0x6a,0x01,0x33,0xfb,0x62,0xba,0x6a,0x3b,0x6a,0x9a,0x42, +0xcc,0xd3,0x28,0x4b,0x59,0xf8,0x03,0x30,0xbb,0x61,0x27,0x4b,0x59,0xf8,0x03,0x30, +0x7b,0x61,0x00,0x23,0xfb,0x62,0xbb,0x69,0xbb,0x62,0x33,0xe0,0xfb,0x6a,0x01,0x33, +0x9b,0x00,0xba,0x69,0x13,0x44,0x1b,0x68,0x17,0x2b,0x25,0xd1,0xfb,0x6a,0x9b,0x00, +0xba,0x69,0x13,0x44,0x1a,0x68,0x7b,0x6a,0xd3,0x1a,0x3b,0x61,0x7a,0x68,0x3b,0x69, +0x13,0x44,0xfb,0x60,0xfb,0x68,0x1b,0x68,0x7a,0x6a,0x9a,0x42,0x0a,0xd8,0xfb,0x68, +0x1a,0x68,0x7b,0x6a,0xd3,0x1a,0x3b,0x61,0x7a,0x68,0x3b,0x69,0x1a,0x44,0xfb,0x68, +0x1a,0x60,0x09,0xe0,0xfb,0x68,0x1a,0x68,0xfb,0x69,0xd3,0x1a,0x3b,0x61,0x3a,0x69, +0x3b,0x68,0x1a,0x44,0xfb,0x68,0x1a,0x60,0xbb,0x6a,0x08,0x33,0xbb,0x62,0xfb,0x6a, +0x02,0x33,0xfb,0x62,0x7b,0x69,0xba,0x6a,0x9a,0x42,0xc7,0xd3,0x00,0xbf,0x34,0x37, +0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47,0xd4,0x00,0x00,0x00,0xb8,0x00,0x00,0x00, +0xbc,0x00,0x00,0x00,0xd0,0x00,0x00,0x00,0xc0,0x00,0x00,0x00,0x90,0xb5,0x85,0xb0, +0x00,0xaf,0x78,0x60,0x39,0x60,0x3b,0x68,0x0a,0x2b,0x1e,0xd1,0x7b,0x68,0xd3,0xe9, +0x00,0x34,0x18,0x46,0x21,0x46,0x4f,0xf0,0x0a,0x02,0x4f,0xf0,0x00,0x03,0xff,0xf7, +0x9f,0xfc,0x1c,0x46,0x13,0x46,0xfb,0x60,0x7b,0x68,0xd3,0xe9,0x00,0x34,0x18,0x46, +0x21,0x46,0x4f,0xf0,0x0a,0x02,0x4f,0xf0,0x00,0x03,0xff,0xf7,0x91,0xfc,0x03,0x46, +0x0c,0x46,0x7a,0x68,0xc2,0xe9,0x00,0x34,0x15,0xe0,0x7b,0x68,0xd3,0xe9,0x00,0x34, +0x03,0xf0,0x0f,0x03,0xfb,0x60,0x7b,0x68,0xd3,0xe9,0x00,0x34,0x19,0x46,0x22,0x46, +0x4f,0xf0,0x00,0x03,0x4f,0xf0,0x00,0x04,0x0b,0x09,0x43,0xea,0x02,0x73,0x14,0x09, +0x7a,0x68,0xc2,0xe9,0x00,0x34,0xfb,0x68,0x18,0x46,0x14,0x37,0xbd,0x46,0x90,0xbd, +0x90,0xb4,0x82,0xb0,0x00,0xaf,0x78,0x60,0x00,0x24,0x0d,0xe0,0x23,0x46,0x9b,0x00, +0x23,0x44,0x5b,0x00,0x18,0x46,0x7b,0x68,0x1b,0x68,0x59,0x1c,0x7a,0x68,0x11,0x60, +0x1b,0x78,0x03,0x44,0xa3,0xf1,0x30,0x04,0x7b,0x68,0x1b,0x68,0x1b,0x78,0x30,0x3b, +0x09,0x2b,0xeb,0xd9,0x23,0x46,0x18,0x46,0x08,0x37,0xbd,0x46,0x90,0xbc,0x70,0x47, +0xb0,0xb5,0x90,0xb0,0x00,0xaf,0xf8,0x60,0xb9,0x60,0xc7,0xe9,0x00,0x23,0xbb,0x6d, +0xbb,0x63,0x7c,0x6d,0xfb,0x6d,0x03,0xf0,0x40,0x03,0x00,0x2b,0x03,0xd0,0x74,0x4b, +0x59,0xf8,0x03,0x30,0x02,0xe0,0x73,0x4b,0x59,0xf8,0x03,0x30,0x7b,0x63,0xfb,0x6d, +0x03,0xf0,0x10,0x03,0x00,0x2b,0x03,0xd0,0xfb,0x6d,0x23,0xf0,0x01,0x03,0xfb,0x65, +0xfb,0x6d,0x03,0xf0,0x01,0x03,0x00,0x2b,0x01,0xd0,0x30,0x23,0x00,0xe0,0x20,0x23, +0x87,0xf8,0x33,0x30,0x00,0x23,0x87,0xf8,0x3f,0x30,0xfb,0x6d,0x03,0xf0,0x02,0x03, +0x00,0x2b,0x21,0xd0,0xd7,0xe9,0x00,0x23,0x00,0x2a,0x73,0xf1,0x00,0x03,0x0a,0xda, +0x2d,0x23,0x87,0xf8,0x3f,0x30,0xd7,0xe9,0x00,0x23,0x52,0x42,0x63,0xeb,0x43,0x03, +0xc7,0xe9,0x00,0x23,0x10,0xe0,0xfb,0x6d,0x03,0xf0,0x04,0x03,0x00,0x2b,0x03,0xd0, +0x2b,0x23,0x87,0xf8,0x3f,0x30,0x07,0xe0,0xfb,0x6d,0x03,0xf0,0x08,0x03,0x00,0x2b, +0x02,0xd0,0x20,0x23,0x87,0xf8,0x3f,0x30,0x00,0x25,0xd7,0xe9,0x00,0x23,0x13,0x43, +0x19,0xd1,0x2b,0x46,0x5d,0x1c,0x07,0xf1,0x40,0x02,0x13,0x44,0x30,0x22,0x03,0xf8, +0x30,0x2c,0x14,0xe0,0x3b,0x46,0x39,0x6d,0x18,0x46,0xff,0xf7,0x37,0xff,0x03,0x46, +0x1a,0x46,0x7b,0x6b,0x1a,0x44,0x2b,0x46,0x5d,0x1c,0x12,0x78,0x07,0xf1,0x40,0x01, +0x0b,0x44,0x03,0xf8,0x30,0x2c,0xd7,0xe9,0x00,0x23,0x13,0x43,0xea,0xd1,0xbb,0x6d, +0x9d,0x42,0x00,0xdd,0xbd,0x65,0xbb,0x6d,0xe4,0x1a,0xfb,0x6d,0x03,0xf0,0x11,0x03, +0x00,0x2b,0x15,0xd1,0x97,0xf8,0x3f,0x30,0x00,0x2b,0x0d,0xd0,0x00,0x2c,0x0b,0xdd, +0x01,0x3c,0x09,0xe0,0xfa,0x68,0xbb,0x68,0x9a,0x42,0x02,0xd2,0xfb,0x68,0x20,0x22, +0x1a,0x70,0xfb,0x68,0x01,0x33,0xfb,0x60,0x23,0x46,0x5c,0x1e,0x00,0x2b,0xf1,0xdc, +0x97,0xf8,0x3f,0x30,0x00,0x2b,0x0b,0xd0,0xfa,0x68,0xbb,0x68,0x9a,0x42,0x03,0xd2, +0xfb,0x68,0x97,0xf8,0x3f,0x20,0x1a,0x70,0x01,0x3c,0xfb,0x68,0x01,0x33,0xfb,0x60, +0xfb,0x6d,0x03,0xf0,0x10,0x03,0x00,0x2b,0x1a,0xd1,0x0a,0xe0,0xfa,0x68,0xbb,0x68, +0x9a,0x42,0x03,0xd2,0xfb,0x68,0x97,0xf8,0x33,0x20,0x1a,0x70,0xfb,0x68,0x01,0x33, +0xfb,0x60,0x23,0x46,0x5c,0x1e,0x00,0x2b,0xf0,0xdc,0x09,0xe0,0xfa,0x68,0xbb,0x68, +0x9a,0x42,0x02,0xd2,0xfb,0x68,0x30,0x22,0x1a,0x70,0xfb,0x68,0x01,0x33,0xfb,0x60, +0xbb,0x6d,0x5a,0x1e,0xba,0x65,0x9d,0x42,0xf0,0xdb,0x0d,0xe0,0xfa,0x68,0xbb,0x68, +0x9a,0x42,0x06,0xd2,0x07,0xf1,0x40,0x03,0x2b,0x44,0x13,0xf8,0x30,0x2c,0xfb,0x68, +0x1a,0x70,0xfb,0x68,0x01,0x33,0xfb,0x60,0x2b,0x46,0x5d,0x1e,0x00,0x2b,0x0d,0xdd, +0xbb,0x6b,0x00,0x2b,0xea,0xd1,0x09,0xe0,0xfa,0x68,0xbb,0x68,0x9a,0x42,0x02,0xd2, +0xfb,0x68,0x20,0x22,0x1a,0x70,0xfb,0x68,0x01,0x33,0xfb,0x60,0x23,0x46,0x5c,0x1e, +0x00,0x2b,0xf1,0xdc,0xfb,0x68,0x18,0x46,0x40,0x37,0xbd,0x46,0xb0,0xbd,0x00,0xbf, +0x24,0x00,0x00,0x00,0x28,0x00,0x00,0x00,0x90,0xb5,0x95,0xb0,0x04,0xaf,0xf8,0x60, +0xb9,0x60,0x7a,0x60,0x3b,0x60,0xfb,0x68,0xfb,0x62,0xfa,0x68,0xbb,0x68,0x13,0x44, +0xbb,0x62,0xba,0x6a,0xfb,0x68,0x9a,0x42,0x80,0xf0,0xde,0x82,0x4f,0xf0,0xff,0x33, +0xbb,0x62,0xba,0x6a,0xfb,0x68,0xd3,0x1a,0xbb,0x60,0xd5,0xe2,0x7b,0x68,0x1b,0x78, +0x25,0x2b,0x0b,0xd0,0xfa,0x6a,0xbb,0x6a,0x9a,0x42,0x03,0xd2,0x7b,0x68,0x1a,0x78, +0xfb,0x6a,0x1a,0x70,0xfb,0x6a,0x01,0x33,0xfb,0x62,0xc2,0xe2,0x00,0x23,0x87,0xf8, +0x22,0x30,0x7b,0x68,0x01,0x33,0x7b,0x60,0x7b,0x68,0x1b,0x78,0x2d,0x2b,0x06,0xd1, +0x97,0xf8,0x22,0x30,0x43,0xf0,0x10,0x03,0x87,0xf8,0x22,0x30,0xf1,0xe7,0x7b,0x68, +0x1b,0x78,0x2b,0x2b,0x06,0xd1,0x97,0xf8,0x22,0x30,0x43,0xf0,0x04,0x03,0x87,0xf8, +0x22,0x30,0xe6,0xe7,0x7b,0x68,0x1b,0x78,0x20,0x2b,0x06,0xd1,0x97,0xf8,0x22,0x30, +0x43,0xf0,0x08,0x03,0x87,0xf8,0x22,0x30,0xdb,0xe7,0x7b,0x68,0x1b,0x78,0x23,0x2b, +0x06,0xd1,0x97,0xf8,0x22,0x30,0x43,0xf0,0x20,0x03,0x87,0xf8,0x22,0x30,0xd0,0xe7, +0x7b,0x68,0x1b,0x78,0x30,0x2b,0x06,0xd1,0x97,0xf8,0x22,0x30,0x43,0xf0,0x01,0x03, +0x87,0xf8,0x22,0x30,0xc5,0xe7,0x00,0xbf,0x4f,0xf0,0xff,0x33,0xfb,0x61,0x7b,0x68, +0x1b,0x78,0x30,0x3b,0x09,0x2b,0x05,0xd8,0x3b,0x1d,0x18,0x46,0xff,0xf7,0x70,0xfe, +0xf8,0x61,0x17,0xe0,0x7b,0x68,0x1b,0x78,0x2a,0x2b,0x13,0xd1,0x7b,0x68,0x01,0x33, +0x7b,0x60,0x3b,0x68,0x1a,0x1d,0x3a,0x60,0x1b,0x68,0xfb,0x61,0xfb,0x69,0x00,0x2b, +0x08,0xda,0xfb,0x69,0x5b,0x42,0xfb,0x61,0x97,0xf8,0x22,0x30,0x43,0xf0,0x10,0x03, +0x87,0xf8,0x22,0x30,0x4f,0xf0,0xff,0x33,0xbb,0x61,0x7b,0x68,0x1b,0x78,0x2e,0x2b, +0x1e,0xd1,0x7b,0x68,0x01,0x33,0x7b,0x60,0x7b,0x68,0x1b,0x78,0x30,0x3b,0x09,0x2b, +0x05,0xd8,0x3b,0x1d,0x18,0x46,0xff,0xf7,0x43,0xfe,0xb8,0x61,0x0b,0xe0,0x7b,0x68, +0x1b,0x78,0x2a,0x2b,0x07,0xd1,0x7b,0x68,0x01,0x33,0x7b,0x60,0x3b,0x68,0x1a,0x1d, +0x3a,0x60,0x1b,0x68,0xbb,0x61,0xbb,0x69,0x00,0x2b,0x01,0xda,0x00,0x23,0xbb,0x61, +0x00,0x23,0x87,0xf8,0x21,0x30,0x7b,0x68,0x1b,0x78,0x68,0x2b,0x07,0xd0,0x7b,0x68, +0x1b,0x78,0x6c,0x2b,0x03,0xd0,0x7b,0x68,0x1b,0x78,0x4c,0x2b,0x14,0xd1,0x7b,0x68, +0x1b,0x78,0x87,0xf8,0x21,0x30,0x7b,0x68,0x01,0x33,0x7b,0x60,0x97,0xf8,0x21,0x30, +0x6c,0x2b,0x09,0xd1,0x7b,0x68,0x1b,0x78,0x6c,0x2b,0x05,0xd1,0x4c,0x23,0x87,0xf8, +0x21,0x30,0x7b,0x68,0x01,0x33,0x7b,0x60,0x0a,0x23,0x87,0xf8,0x23,0x30,0x7b,0x68, +0x1b,0x78,0x25,0x3b,0x53,0x2b,0x00,0xf2,0x83,0x81,0x02,0xa2,0x52,0xf8,0x23,0x30, +0x1a,0x44,0x10,0x47,0xbd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xdb,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0x51,0x01,0x00,0x00, +0xef,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xef,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xd3,0x02,0x00,0x00, +0x77,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xc1,0x01,0x00,0x00, +0xfd,0x02,0x00,0x00,0x39,0x03,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xe7,0x02,0x00,0x00,0x97,0xf8,0x22,0x30,0x03,0xf0,0x10,0x03,0x00,0x2b,0x10,0xd1, +0x09,0xe0,0xfa,0x6a,0xbb,0x6a,0x9a,0x42,0x02,0xd2,0xfb,0x6a,0x20,0x22,0x1a,0x70, +0xfb,0x6a,0x01,0x33,0xfb,0x62,0xfb,0x69,0x01,0x3b,0xfb,0x61,0xfb,0x69,0x00,0x2b, +0xef,0xdc,0x3b,0x68,0x1a,0x1d,0x3a,0x60,0x1b,0x68,0xfb,0x75,0xfa,0x6a,0xbb,0x6a, +0x9a,0x42,0x02,0xd2,0xfb,0x6a,0xfa,0x7d,0x1a,0x70,0xfb,0x6a,0x01,0x33,0xfb,0x62, +0x09,0xe0,0xfa,0x6a,0xbb,0x6a,0x9a,0x42,0x02,0xd2,0xfb,0x6a,0x20,0x22,0x1a,0x70, +0xfb,0x6a,0x01,0x33,0xfb,0x62,0xfb,0x69,0x01,0x3b,0xfb,0x61,0xfb,0x69,0x00,0x2b, +0xef,0xdc,0x26,0xe1,0x3b,0x68,0x1a,0x1d,0x3a,0x60,0x1b,0x68,0x7b,0x62,0x7b,0x6a, +0x00,0x2b,0x03,0xd1,0x9e,0x4b,0x59,0xf8,0x03,0x30,0x7b,0x62,0x78,0x6a,0x00,0xf0, +0xbd,0xfa,0x03,0x46,0x3b,0x63,0xbb,0x69,0x00,0x2b,0x05,0xdd,0x3a,0x6b,0xbb,0x69, +0x9a,0x42,0x01,0xdd,0xbb,0x69,0x3b,0x63,0x97,0xf8,0x22,0x30,0x03,0xf0,0x10,0x03, +0x00,0x2b,0x10,0xd1,0x09,0xe0,0xfa,0x6a,0xbb,0x6a,0x9a,0x42,0x02,0xd2,0xfb,0x6a, +0x20,0x22,0x1a,0x70,0xfb,0x6a,0x01,0x33,0xfb,0x62,0xfb,0x69,0x5a,0x1e,0xfa,0x61, +0x3a,0x6b,0x9a,0x42,0xef,0xdb,0x00,0x23,0x7b,0x63,0x10,0xe0,0xfa,0x6a,0xbb,0x6a, +0x9a,0x42,0x03,0xd2,0x7b,0x6a,0x1a,0x78,0xfb,0x6a,0x1a,0x70,0xfb,0x6a,0x01,0x33, +0xfb,0x62,0x7b,0x6a,0x01,0x33,0x7b,0x62,0x7b,0x6b,0x01,0x33,0x7b,0x63,0x7a,0x6b, +0x3b,0x6b,0x9a,0x42,0xea,0xdb,0x09,0xe0,0xfa,0x6a,0xbb,0x6a,0x9a,0x42,0x02,0xd2, +0xfb,0x6a,0x20,0x22,0x1a,0x70,0xfb,0x6a,0x01,0x33,0xfb,0x62,0xfb,0x69,0x5a,0x1e, +0xfa,0x61,0x3a,0x6b,0x9a,0x42,0xef,0xdb,0xcb,0xe0,0xfb,0x69,0xb3,0xf1,0xff,0x3f, +0x07,0xd1,0x08,0x23,0xfb,0x61,0x97,0xf8,0x22,0x30,0x43,0xf0,0x01,0x03,0x87,0xf8, +0x22,0x30,0x3b,0x68,0x1a,0x1d,0x3a,0x60,0x1b,0x68,0x4f,0xea,0xe3,0x74,0x97,0xf8, +0x22,0x20,0x03,0x92,0xba,0x69,0x02,0x92,0xfa,0x69,0x01,0x92,0x10,0x22,0x00,0x92, +0x1a,0x46,0x23,0x46,0xb9,0x6a,0xf8,0x6a,0xff,0xf7,0xc2,0xfc,0xf8,0x62,0xa8,0xe0, +0xfa,0x6a,0xbb,0x6a,0x9a,0x42,0x02,0xd2,0xfb,0x6a,0x25,0x22,0x1a,0x70,0xfb,0x6a, +0x01,0x33,0xfb,0x62,0x9d,0xe0,0x08,0x23,0x87,0xf8,0x23,0x30,0x2f,0xe0,0x97,0xf8, +0x22,0x30,0x43,0xf0,0x40,0x03,0x87,0xf8,0x22,0x30,0x10,0x23,0x87,0xf8,0x23,0x30, +0x25,0xe0,0x97,0xf8,0x22,0x30,0x43,0xf0,0x02,0x03,0x87,0xf8,0x22,0x30,0x1d,0xe0, +0xfa,0x6a,0xbb,0x6a,0x9a,0x42,0x02,0xd2,0xfb,0x6a,0x25,0x22,0x1a,0x70,0xfb,0x6a, +0x01,0x33,0xfb,0x62,0x7b,0x68,0x1b,0x78,0x00,0x2b,0x0b,0xd0,0xfa,0x6a,0xbb,0x6a, +0x9a,0x42,0x03,0xd2,0x7b,0x68,0x1a,0x78,0xfb,0x6a,0x1a,0x70,0xfb,0x6a,0x01,0x33, +0xfb,0x62,0x6e,0xe0,0x7b,0x68,0x01,0x3b,0x7b,0x60,0x6a,0xe0,0x00,0xbf,0x97,0xf8, +0x21,0x30,0x4c,0x2b,0x0b,0xd1,0x3b,0x68,0x07,0x33,0x23,0xf0,0x07,0x03,0x03,0xf1, +0x08,0x02,0x3a,0x60,0xd3,0xe9,0x00,0x34,0xc7,0xe9,0x0e,0x34,0x46,0xe0,0x97,0xf8, +0x21,0x30,0x6c,0x2b,0x13,0xd1,0x3b,0x68,0x1a,0x1d,0x3a,0x60,0x1b,0x68,0x4f,0xf0, +0x00,0x04,0xc7,0xe9,0x0e,0x34,0x97,0xf8,0x22,0x30,0x03,0xf0,0x02,0x03,0x00,0x2b, +0x34,0xd0,0xbb,0x6b,0x4f,0xea,0xe3,0x74,0xc7,0xe9,0x0e,0x34,0x2e,0xe0,0x97,0xf8, +0x21,0x30,0x68,0x2b,0x17,0xd1,0x3b,0x68,0x1a,0x1d,0x3a,0x60,0x1b,0x68,0x9b,0xb2, +0x9b,0xb2,0x4f,0xf0,0x00,0x04,0xc7,0xe9,0x0e,0x34,0x97,0xf8,0x22,0x30,0x03,0xf0, +0x02,0x03,0x00,0x2b,0x1a,0xd0,0xb7,0xf9,0x38,0x30,0x1b,0xb2,0x4f,0xea,0xe3,0x74, +0xc7,0xe9,0x0e,0x34,0x12,0xe0,0x3b,0x68,0x1a,0x1d,0x3a,0x60,0x1b,0x68,0x4f,0xf0, +0x00,0x04,0xc7,0xe9,0x0e,0x34,0x97,0xf8,0x22,0x30,0x03,0xf0,0x02,0x03,0x00,0x2b, +0x04,0xd0,0xbb,0x6b,0x4f,0xea,0xe3,0x74,0xc7,0xe9,0x0e,0x34,0xd7,0xe9,0x0e,0x34, +0x97,0xf8,0x23,0x20,0x97,0xf8,0x22,0x10,0x03,0x91,0xb9,0x69,0x02,0x91,0xf9,0x69, +0x01,0x91,0x00,0x92,0x1a,0x46,0x23,0x46,0xb9,0x6a,0xf8,0x6a,0xff,0xf7,0x18,0xfc, +0xf8,0x62,0x7b,0x68,0x01,0x33,0x7b,0x60,0x7b,0x68,0x1b,0x78,0x00,0x2b,0x7f,0xf4, +0x25,0xad,0xbb,0x68,0x00,0x2b,0x0b,0xd0,0xfa,0x6a,0xbb,0x6a,0x9a,0x42,0x03,0xd2, +0xfb,0x6a,0x00,0x22,0x1a,0x70,0x03,0xe0,0xbb,0x6a,0x01,0x3b,0x00,0x22,0x1a,0x70, +0xfa,0x6a,0xfb,0x68,0xd3,0x1a,0x18,0x46,0x44,0x37,0xbd,0x46,0x90,0xbd,0x00,0xbf, +0x2c,0x00,0x00,0x00,0x0f,0xb4,0x80,0xb5,0x82,0xb0,0x00,0xaf,0x07,0xf1,0x14,0x03, +0x3b,0x60,0x3b,0x68,0x3a,0x69,0xff,0x21,0x0d,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7, +0xe3,0xfc,0x03,0x46,0x7b,0x60,0x7b,0x68,0xff,0x2b,0x01,0xd9,0xff,0x23,0x7b,0x60, +0x7a,0x68,0x07,0x4b,0x59,0xf8,0x03,0x30,0x19,0x46,0xff,0x20,0xff,0xf7,0x1c,0xf8, +0x00,0xbf,0x08,0x37,0xbd,0x46,0xbd,0xe8,0x80,0x40,0x04,0xb0,0x70,0x47,0x00,0xbf, +0x30,0x00,0x00,0x00,0x80,0xb5,0x82,0xb0,0x00,0xaf,0x78,0x60,0x79,0x68,0x01,0x20, +0xff,0xf7,0x0a,0xf8,0x00,0xbf,0x08,0x37,0xbd,0x46,0x80,0xbd,0x80,0xb5,0x82,0xb0, +0x00,0xaf,0x78,0x60,0x39,0x60,0x0f,0x4b,0x59,0xf8,0x03,0x30,0x1b,0x68,0x00,0x2b, +0x14,0xd1,0x01,0x21,0x0c,0x4b,0x59,0xf8,0x03,0x30,0x18,0x46,0xff,0xf7,0x1e,0xfa, +0x02,0x46,0x0a,0x4b,0x59,0xf8,0x03,0x30,0x1a,0x60,0x39,0x68,0x78,0x68,0x00,0xf0, +0x25,0xfe,0x02,0x46,0x03,0x4b,0x59,0xf8,0x03,0x30,0x1a,0x60,0x00,0xbf,0x08,0x37, +0xbd,0x46,0x80,0xbd,0x34,0x00,0x00,0x00,0x3c,0x00,0x00,0x00,0x38,0x00,0x00,0x00, +0x80,0xb5,0x82,0xb0,0x00,0xaf,0x78,0x60,0x0d,0x4b,0x59,0xf8,0x03,0x30,0x1b,0x68, +0x4f,0xf0,0xff,0x31,0x18,0x46,0xff,0xf7,0x0a,0xfa,0x0a,0x4b,0x59,0xf8,0x03,0x30, +0x1b,0x68,0x79,0x68,0x18,0x46,0x00,0xf0,0x27,0xfe,0x05,0x4b,0x59,0xf8,0x03,0x30, +0x1b,0x68,0x18,0x46,0xff,0xf7,0x0a,0xfa,0x00,0xbf,0x08,0x37,0xbd,0x46,0x80,0xbd, +0x38,0x00,0x00,0x00,0x34,0x00,0x00,0x00,0x2d,0xe9,0xf0,0x08,0x8b,0xb0,0x00,0xaf, +0xf8,0x60,0xb9,0x60,0x7a,0x60,0xfb,0x68,0x7b,0x62,0x7b,0x68,0x00,0x2b,0x01,0xd1, +0xfb,0x68,0xed,0xe0,0xbb,0x68,0xda,0xb2,0x7b,0x6a,0x1a,0x70,0x7b,0x68,0x01,0x3b, +0x7a,0x6a,0x13,0x44,0xba,0x68,0xd2,0xb2,0x1a,0x70,0x7b,0x68,0x02,0x2b,0x01,0xd8, +0xfb,0x68,0xdd,0xe0,0x7b,0x6a,0x01,0x33,0xba,0x68,0xd2,0xb2,0x1a,0x70,0x7b,0x6a, +0x02,0x33,0xba,0x68,0xd2,0xb2,0x1a,0x70,0x7b,0x68,0x02,0x3b,0x7a,0x6a,0x13,0x44, +0xba,0x68,0xd2,0xb2,0x1a,0x70,0x7b,0x68,0x03,0x3b,0x7a,0x6a,0x13,0x44,0xba,0x68, +0xd2,0xb2,0x1a,0x70,0x7b,0x68,0x06,0x2b,0x01,0xd8,0xfb,0x68,0xc0,0xe0,0x7b,0x6a, +0x03,0x33,0xba,0x68,0xd2,0xb2,0x1a,0x70,0x7b,0x68,0x04,0x3b,0x7a,0x6a,0x13,0x44, +0xba,0x68,0xd2,0xb2,0x1a,0x70,0x7b,0x68,0x08,0x2b,0x01,0xd8,0xfb,0x68,0xaf,0xe0, +0x7b,0x6a,0x5b,0x42,0x03,0xf0,0x03,0x03,0x3b,0x62,0x7a,0x6a,0x3b,0x6a,0x13,0x44, +0x7b,0x62,0x7a,0x68,0x3b,0x6a,0xd3,0x1a,0x7b,0x60,0x7b,0x68,0x23,0xf0,0x03,0x03, +0x7b,0x60,0xbb,0x68,0xdb,0xb2,0x1a,0x46,0x13,0x46,0x1b,0x02,0x13,0x44,0x1a,0x04, +0x13,0x44,0xfb,0x61,0x7b,0x6a,0xfa,0x69,0x1a,0x60,0x7b,0x68,0x04,0x3b,0x7a,0x6a, +0x13,0x44,0xfa,0x69,0x1a,0x60,0x7b,0x68,0x08,0x2b,0x01,0xd8,0xfb,0x68,0x87,0xe0, +0x7b,0x6a,0x04,0x33,0xfa,0x69,0x1a,0x60,0x7b,0x6a,0x08,0x33,0xfa,0x69,0x1a,0x60, +0x7b,0x68,0x0c,0x3b,0x7a,0x6a,0x13,0x44,0xfa,0x69,0x1a,0x60,0x7b,0x68,0x08,0x3b, +0x7a,0x6a,0x13,0x44,0xfa,0x69,0x1a,0x60,0x7b,0x68,0x18,0x2b,0x01,0xd8,0xfb,0x68, +0x6e,0xe0,0x7b,0x6a,0x0c,0x33,0xfa,0x69,0x1a,0x60,0x7b,0x6a,0x10,0x33,0xfa,0x69, +0x1a,0x60,0x7b,0x6a,0x14,0x33,0xfa,0x69,0x1a,0x60,0x7b,0x6a,0x18,0x33,0xfa,0x69, +0x1a,0x60,0x7b,0x68,0x1c,0x3b,0x7a,0x6a,0x13,0x44,0xfa,0x69,0x1a,0x60,0x7b,0x68, +0x18,0x3b,0x7a,0x6a,0x13,0x44,0xfa,0x69,0x1a,0x60,0x7b,0x68,0x14,0x3b,0x7a,0x6a, +0x13,0x44,0xfa,0x69,0x1a,0x60,0x7b,0x68,0x10,0x3b,0x7a,0x6a,0x13,0x44,0xfa,0x69, +0x1a,0x60,0x7b,0x6a,0x03,0xf0,0x04,0x03,0x18,0x33,0x3b,0x62,0x7a,0x6a,0x3b,0x6a, +0x13,0x44,0x7b,0x62,0x7a,0x68,0x3b,0x6a,0xd3,0x1a,0x7b,0x60,0xfb,0x69,0x19,0x46, +0x4f,0xf0,0x00,0x02,0xfb,0x69,0x1d,0x46,0x4f,0xf0,0x00,0x06,0x4f,0xf0,0x00,0x0b, +0x4f,0xf0,0x00,0x0c,0xac,0x46,0x4f,0xf0,0x00,0x0b,0x4b,0xea,0x01,0x03,0x4c,0xea, +0x02,0x04,0xc7,0xe9,0x04,0x34,0x1f,0xe0,0x7a,0x6a,0xd7,0xe9,0x04,0x34,0xc2,0xe9, +0x00,0x34,0x7b,0x6a,0x03,0xf1,0x08,0x02,0xd7,0xe9,0x04,0x34,0xc2,0xe9,0x00,0x34, +0x7b,0x6a,0x03,0xf1,0x10,0x02,0xd7,0xe9,0x04,0x34,0xc2,0xe9,0x00,0x34,0x7b,0x6a, +0x03,0xf1,0x18,0x02,0xd7,0xe9,0x04,0x34,0xc2,0xe9,0x00,0x34,0x7b,0x68,0x20,0x3b, +0x7b,0x60,0x7b,0x6a,0x20,0x33,0x7b,0x62,0x7b,0x68,0x1f,0x2b,0xdc,0xd8,0xfb,0x68, +0x18,0x46,0x2c,0x37,0xbd,0x46,0xbd,0xe8,0xf0,0x08,0x70,0x47,0x80,0xb4,0x85,0xb0, +0x00,0xaf,0x78,0x60,0x7b,0x68,0xbb,0x60,0x0a,0xe0,0x7b,0x68,0x1b,0x78,0x00,0x2b, +0x03,0xd1,0x7a,0x68,0xbb,0x68,0xd3,0x1a,0x26,0xe0,0x7b,0x68,0x01,0x33,0x7b,0x60, +0x7b,0x68,0x03,0xf0,0x03,0x03,0x00,0x2b,0xef,0xd1,0x7b,0x68,0xfb,0x60,0x02,0xe0, +0xfb,0x68,0x04,0x33,0xfb,0x60,0xfb,0x68,0x1b,0x68,0xa3,0xf1,0x01,0x32,0xfb,0x68, +0x1b,0x68,0xdb,0x43,0x13,0x40,0x03,0xf0,0x80,0x33,0x00,0x2b,0xf0,0xd0,0xfb,0x68, +0x7b,0x60,0x02,0xe0,0x7b,0x68,0x01,0x33,0x7b,0x60,0x7b,0x68,0x1b,0x78,0x00,0x2b, +0xf8,0xd1,0x7a,0x68,0xbb,0x68,0xd3,0x1a,0x18,0x46,0x14,0x37,0xbd,0x46,0x5d,0xf8, +0x04,0x7b,0x70,0x47,0x80,0xb4,0x85,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68,0x00,0x2b, +0x05,0xd0,0x7b,0x68,0xb3,0xfa,0x83,0xf3,0xc3,0xf1,0x20,0x03,0x00,0xe0,0x00,0x23, +0xfb,0x60,0xfb,0x68,0x01,0x3b,0x18,0x46,0x14,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b, +0x70,0x47,0x80,0xb4,0x83,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68,0x5a,0x68,0x01,0x21, +0x02,0x23,0x0b,0x43,0xdb,0x43,0x13,0x40,0x18,0x46,0x0c,0x37,0xbd,0x46,0x5d,0xf8, +0x04,0x7b,0x70,0x47,0x80,0xb4,0x85,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60,0x7b,0x68, +0x5b,0x68,0xfb,0x60,0x01,0x22,0x02,0x23,0x1a,0x43,0xfb,0x68,0x1a,0x40,0x3b,0x68, +0x1a,0x43,0x7b,0x68,0x5a,0x60,0x00,0xbf,0x14,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b, +0x70,0x47,0x80,0xb5,0x82,0xb0,0x00,0xaf,0x78,0x60,0x78,0x68,0xff,0xf7,0xd1,0xff, +0x03,0x46,0x00,0x2b,0x0c,0xbf,0x01,0x23,0x00,0x23,0xdb,0xb2,0x18,0x46,0x08,0x37, +0xbd,0x46,0x80,0xbd,0x80,0xb4,0x83,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68,0x5b,0x68, +0x01,0x22,0x13,0x40,0x18,0x46,0x0c,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47, +0x80,0xb4,0x83,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68,0x5b,0x68,0x01,0x22,0x1a,0x43, +0x7b,0x68,0x5a,0x60,0x00,0xbf,0x0c,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47, +0x80,0xb4,0x83,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68,0x5a,0x68,0x01,0x23,0xdb,0x43, +0x1a,0x40,0x7b,0x68,0x5a,0x60,0x00,0xbf,0x0c,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b, +0x70,0x47,0x80,0xb4,0x83,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68,0x5b,0x68,0x02,0x22, +0x13,0x40,0x18,0x46,0x0c,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47,0x80,0xb4, +0x83,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68,0x5b,0x68,0x02,0x22,0x1a,0x43,0x7b,0x68, +0x5a,0x60,0x00,0xbf,0x0c,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47,0x80,0xb4, +0x83,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68,0x5a,0x68,0x02,0x23,0xdb,0x43,0x1a,0x40, +0x7b,0x68,0x5a,0x60,0x00,0xbf,0x0c,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47, +0x80,0xb4,0x83,0xb0,0x00,0xaf,0x78,0x60,0x08,0x23,0x5b,0x42,0x7a,0x68,0x13,0x44, +0x18,0x46,0x0c,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47,0x80,0xb4,0x83,0xb0, +0x00,0xaf,0x78,0x60,0x08,0x22,0x7b,0x68,0x13,0x44,0x18,0x46,0x0c,0x37,0xbd,0x46, +0x5d,0xf8,0x04,0x7b,0x70,0x47,0x80,0xb4,0x83,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60, +0x7a,0x68,0x3b,0x68,0x13,0x44,0x18,0x46,0x0c,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b, +0x70,0x47,0x00,0x00,0x80,0xb5,0x82,0xb0,0x00,0xaf,0x78,0x60,0x78,0x68,0xff,0xf7, +0xa0,0xff,0x03,0x46,0x00,0x2b,0x10,0xd1,0x40,0xf2,0xd3,0x13,0x0a,0x4a,0x59,0xf8, +0x02,0x20,0x0a,0x49,0x59,0xf8,0x01,0x10,0x09,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7, +0x51,0xfd,0x4f,0xf0,0xff,0x30,0xff,0xf7,0x75,0xfd,0x7b,0x68,0x1b,0x68,0x18,0x46, +0x08,0x37,0xbd,0x46,0x80,0xbd,0x00,0xbf,0x4c,0x00,0x00,0x00,0x44,0x00,0x00,0x00, +0x48,0x00,0x00,0x00,0x90,0xb5,0x85,0xb0,0x00,0xaf,0x78,0x60,0x78,0x68,0xff,0xf7, +0xb5,0xff,0x04,0x46,0x78,0x68,0xff,0xf7,0x0c,0xff,0x02,0x46,0x04,0x23,0xd3,0x1a, +0x19,0x46,0x20,0x46,0xff,0xf7,0xb7,0xff,0xf8,0x60,0x78,0x68,0xff,0xf7,0x29,0xff, +0x03,0x46,0x00,0x2b,0x10,0xd0,0x4f,0xf4,0xee,0x73,0x0a,0x4a,0x59,0xf8,0x02,0x20, +0x09,0x49,0x59,0xf8,0x01,0x10,0x09,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7,0x1a,0xfd, +0x4f,0xf0,0xff,0x30,0xff,0xf7,0x3e,0xfd,0xfb,0x68,0x18,0x46,0x14,0x37,0xbd,0x46, +0x90,0xbd,0x00,0xbf,0x54,0x00,0x00,0x00,0x50,0x00,0x00,0x00,0x48,0x00,0x00,0x00, +0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60,0x78,0x68,0xff,0xf7,0xc3,0xff,0xf8,0x60, +0xfb,0x68,0x7a,0x68,0x1a,0x60,0xfb,0x68,0x18,0x46,0x10,0x37,0xbd,0x46,0x80,0xbd, +0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60,0x78,0x68,0xff,0xf7,0xe9,0xff,0xf8,0x60, +0xf8,0x68,0xff,0xf7,0x3c,0xff,0x78,0x68,0xff,0xf7,0x0a,0xff,0x00,0xbf,0x10,0x37, +0xbd,0x46,0x80,0xbd,0x80,0xb5,0x82,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60,0x3b,0x68, +0x5a,0x1e,0x3b,0x68,0x13,0x40,0x00,0x2b,0x10,0xd0,0x40,0xf2,0x07,0x23,0x0b,0x4a, +0x59,0xf8,0x02,0x20,0x0a,0x49,0x59,0xf8,0x01,0x10,0x0a,0x48,0x59,0xf8,0x00,0x00, +0xff,0xf7,0xd0,0xfc,0x4f,0xf0,0xff,0x30,0xff,0xf7,0xf4,0xfc,0x3b,0x68,0x5a,0x42, +0x7b,0x68,0x13,0x40,0x18,0x46,0x08,0x37,0xbd,0x46,0x80,0xbd,0x5c,0x00,0x00,0x00, +0x58,0x00,0x00,0x00,0x48,0x00,0x00,0x00,0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60, +0x39,0x60,0x7a,0x68,0x3b,0x68,0x13,0x44,0x5a,0x1e,0x3b,0x68,0x5b,0x42,0x13,0x40, +0xfb,0x60,0x3b,0x68,0x5a,0x1e,0x3b,0x68,0x13,0x40,0x00,0x2b,0x10,0xd0,0x40,0xf2, +0x0f,0x23,0x0a,0x4a,0x59,0xf8,0x02,0x20,0x09,0x49,0x59,0xf8,0x01,0x10,0x09,0x48, +0x59,0xf8,0x00,0x00,0xff,0xf7,0x9e,0xfc,0x4f,0xf0,0xff,0x30,0xff,0xf7,0xc2,0xfc, +0xfb,0x68,0x18,0x46,0x10,0x37,0xbd,0x46,0x80,0xbd,0x00,0xbf,0x60,0x00,0x00,0x00, +0x58,0x00,0x00,0x00,0x48,0x00,0x00,0x00,0x80,0xb5,0x86,0xb0,0x00,0xaf,0xf8,0x60, +0xb9,0x60,0x7a,0x60,0xfb,0x68,0x7f,0x2b,0x08,0xd8,0x00,0x23,0x7b,0x61,0xfb,0x68, +0x00,0x2b,0x00,0xda,0x03,0x33,0x9b,0x10,0x3b,0x61,0x0e,0xe0,0xf8,0x68,0xff,0xf7, +0x39,0xfe,0x78,0x61,0x7b,0x69,0x05,0x3b,0xfa,0x68,0x22,0xfa,0x03,0xf3,0x83,0xf0, +0x20,0x03,0x3b,0x61,0x7b,0x69,0x06,0x3b,0x7b,0x61,0xbb,0x68,0x7a,0x69,0x1a,0x60, +0x7b,0x68,0x3a,0x69,0x1a,0x60,0x00,0xbf,0x18,0x37,0xbd,0x46,0x80,0xbd,0x00,0x00, +0x80,0xb5,0x86,0xb0,0x00,0xaf,0xf8,0x60,0xb9,0x60,0x7a,0x60,0x3b,0x60,0xbb,0x68, +0xdb,0x68,0x7b,0x61,0xbb,0x68,0x9b,0x68,0x3b,0x61,0x7b,0x69,0x00,0x2b,0x10,0xd1, +0x40,0xf2,0x6f,0x23,0x35,0x4a,0x59,0xf8,0x02,0x20,0x35,0x49,0x59,0xf8,0x01,0x10, +0x34,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7,0x45,0xfc,0x4f,0xf0,0xff,0x30,0xff,0xf7, +0x69,0xfc,0x3b,0x69,0x00,0x2b,0x10,0xd1,0x4f,0xf4,0x1c,0x73,0x2b,0x4a,0x59,0xf8, +0x02,0x20,0x2d,0x49,0x59,0xf8,0x01,0x10,0x2a,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7, +0x31,0xfc,0x4f,0xf0,0xff,0x30,0xff,0xf7,0x55,0xfc,0x3b,0x69,0x7a,0x69,0xda,0x60, +0x7b,0x69,0x3a,0x69,0x9a,0x60,0xfa,0x68,0x7b,0x68,0x59,0x01,0x3b,0x68,0x0b,0x44, +0x1c,0x33,0x9b,0x00,0x13,0x44,0x5b,0x68,0xba,0x68,0x9a,0x42,0x31,0xd1,0xfa,0x68, +0x7b,0x68,0x59,0x01,0x3b,0x68,0x0b,0x44,0x1c,0x33,0x9b,0x00,0x13,0x44,0x3a,0x69, +0x5a,0x60,0xfb,0x68,0x3a,0x69,0x9a,0x42,0x23,0xd1,0xfa,0x68,0x7b,0x68,0x04,0x33, +0x9b,0x00,0x13,0x44,0x5b,0x68,0x01,0x21,0x3a,0x68,0x01,0xfa,0x02,0xf2,0xd2,0x43, +0x1a,0x40,0xf9,0x68,0x7b,0x68,0x04,0x33,0x9b,0x00,0x0b,0x44,0x5a,0x60,0xfa,0x68, +0x7b,0x68,0x04,0x33,0x9b,0x00,0x13,0x44,0x5b,0x68,0x00,0x2b,0x09,0xd1,0xfb,0x68, +0x1b,0x69,0x01,0x21,0x7a,0x68,0x01,0xfa,0x02,0xf2,0xd2,0x43,0x1a,0x40,0xfb,0x68, +0x1a,0x61,0x00,0xbf,0x18,0x37,0xbd,0x46,0x80,0xbd,0x00,0xbf,0x6c,0x00,0x00,0x00, +0x64,0x00,0x00,0x00,0x48,0x00,0x00,0x00,0x68,0x00,0x00,0x00,0x90,0xb5,0x87,0xb0, +0x00,0xaf,0xf8,0x60,0xb9,0x60,0x7a,0x60,0x3b,0x60,0xfa,0x68,0x7b,0x68,0x59,0x01, +0x3b,0x68,0x0b,0x44,0x1c,0x33,0x9b,0x00,0x13,0x44,0x5b,0x68,0x7b,0x61,0x7b,0x69, +0x00,0x2b,0x10,0xd1,0x40,0xf2,0x8b,0x23,0x39,0x4a,0x59,0xf8,0x02,0x20,0x39,0x49, +0x59,0xf8,0x01,0x10,0x38,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7,0xbb,0xfb,0x4f,0xf0, +0xff,0x30,0xff,0xf7,0xdf,0xfb,0xbb,0x68,0x00,0x2b,0x10,0xd1,0x4f,0xf4,0x23,0x73, +0x2f,0x4a,0x59,0xf8,0x02,0x20,0x31,0x49,0x59,0xf8,0x01,0x10,0x2e,0x48,0x59,0xf8, +0x00,0x00,0xff,0xf7,0xa7,0xfb,0x4f,0xf0,0xff,0x30,0xff,0xf7,0xcb,0xfb,0xbb,0x68, +0x7a,0x69,0x9a,0x60,0xfa,0x68,0xbb,0x68,0xda,0x60,0x7b,0x69,0xba,0x68,0xda,0x60, +0xb8,0x68,0xff,0xf7,0x13,0xfe,0x04,0x46,0xb8,0x68,0xff,0xf7,0x0f,0xfe,0x03,0x46, +0x04,0x21,0x18,0x46,0xff,0xf7,0xd0,0xfe,0x03,0x46,0x9c,0x42,0x10,0xd0,0x40,0xf2, +0x91,0x23,0x1b,0x4a,0x59,0xf8,0x02,0x20,0x1d,0x49,0x59,0xf8,0x01,0x10,0x1a,0x48, +0x59,0xf8,0x00,0x00,0xff,0xf7,0x7e,0xfb,0x4f,0xf0,0xff,0x30,0xff,0xf7,0xa2,0xfb, +0xfa,0x68,0x7b,0x68,0x59,0x01,0x3b,0x68,0x0b,0x44,0x1c,0x33,0x9b,0x00,0x13,0x44, +0xba,0x68,0x5a,0x60,0xfb,0x68,0x1b,0x69,0x01,0x21,0x7a,0x68,0x01,0xfa,0x02,0xf2, +0x1a,0x43,0xfb,0x68,0x1a,0x61,0xfa,0x68,0x7b,0x68,0x04,0x33,0x9b,0x00,0x13,0x44, +0x5b,0x68,0x01,0x21,0x3a,0x68,0x01,0xfa,0x02,0xf2,0x1a,0x43,0xf9,0x68,0x7b,0x68, +0x04,0x33,0x9b,0x00,0x0b,0x44,0x5a,0x60,0x00,0xbf,0x1c,0x37,0xbd,0x46,0x90,0xbd, +0x7c,0x00,0x00,0x00,0x70,0x00,0x00,0x00,0x48,0x00,0x00,0x00,0x74,0x00,0x00,0x00, +0x78,0x00,0x00,0x00,0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60,0x38,0x68, +0xff,0xf7,0x17,0xfd,0x07,0xf1,0x08,0x02,0x07,0xf1,0x0c,0x03,0x19,0x46,0xff,0xf7, +0xab,0xfe,0xfa,0x68,0xbb,0x68,0x39,0x68,0x78,0x68,0xff,0xf7,0xd1,0xfe,0x00,0xbf, +0x10,0x37,0xbd,0x46,0x80,0xbd,0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60, +0x38,0x68,0xff,0xf7,0xfe,0xfc,0x07,0xf1,0x08,0x02,0x07,0xf1,0x0c,0x03,0x19,0x46, +0xff,0xf7,0x92,0xfe,0xfa,0x68,0xbb,0x68,0x39,0x68,0x78,0x68,0xff,0xf7,0x3e,0xff, +0x00,0xbf,0x10,0x37,0xbd,0x46,0x80,0xbd,0x80,0xb5,0x82,0xb0,0x00,0xaf,0x78,0x60, +0x39,0x60,0x78,0x68,0xff,0xf7,0x0d,0xfd,0x03,0x46,0x00,0x2b,0x10,0xd0,0x40,0xf2, +0xca,0x23,0x11,0x4a,0x59,0xf8,0x02,0x20,0x10,0x49,0x59,0xf8,0x01,0x10,0x10,0x48, +0x59,0xf8,0x00,0x00,0xff,0xf7,0xfe,0xfa,0x4f,0xf0,0xff,0x30,0xff,0xf7,0x22,0xfb, +0x38,0x68,0xff,0xf7,0xce,0xfc,0x02,0x46,0x04,0x23,0x1a,0x44,0x7b,0x68,0x5b,0x68, +0x1a,0x44,0x7b,0x68,0x5a,0x60,0x78,0x68,0xff,0xf7,0xe2,0xfd,0x7b,0x68,0x18,0x46, +0x08,0x37,0xbd,0x46,0x80,0xbd,0x00,0xbf,0x84,0x00,0x00,0x00,0x80,0x00,0x00,0x00, +0x48,0x00,0x00,0x00,0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60,0x38,0x68, +0xff,0xf7,0x17,0xfd,0x03,0x46,0x00,0x2b,0x37,0xd0,0x38,0x68,0xff,0xf7,0x6a,0xfd, +0xf8,0x60,0xfb,0x68,0x00,0x2b,0x10,0xd1,0x40,0xf2,0xd7,0x23,0x19,0x4a,0x59,0xf8, +0x02,0x20,0x19,0x49,0x59,0xf8,0x01,0x10,0x18,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7, +0xc1,0xfa,0x4f,0xf0,0xff,0x30,0xff,0xf7,0xe5,0xfa,0xf8,0x68,0xff,0xf7,0xca,0xfc, +0x03,0x46,0x00,0x2b,0x10,0xd1,0x4f,0xf4,0x36,0x73,0x0e,0x4a,0x59,0xf8,0x02,0x20, +0x0f,0x49,0x59,0xf8,0x01,0x10,0x0d,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7,0xaa,0xfa, +0x4f,0xf0,0xff,0x30,0xff,0xf7,0xce,0xfa,0xf9,0x68,0x78,0x68,0xff,0xf7,0x5a,0xff, +0x39,0x68,0xf8,0x68,0xff,0xf7,0x88,0xff,0x38,0x60,0x3b,0x68,0x18,0x46,0x10,0x37, +0xbd,0x46,0x80,0xbd,0x90,0x00,0x00,0x00,0x88,0x00,0x00,0x00,0x48,0x00,0x00,0x00, +0x8c,0x00,0x00,0x00,0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60,0x38,0x68, +0xff,0xf7,0x48,0xfd,0xf8,0x60,0xfb,0x68,0x00,0x2b,0x10,0xd1,0x4f,0xf4,0x39,0x73, +0x1c,0x4a,0x59,0xf8,0x02,0x20,0x1c,0x49,0x59,0xf8,0x01,0x10,0x1b,0x48,0x59,0xf8, +0x00,0x00,0xff,0xf7,0x77,0xfa,0x4f,0xf0,0xff,0x30,0xff,0xf7,0x9b,0xfa,0xf8,0x68, +0xff,0xf7,0x80,0xfc,0x03,0x46,0x00,0x2b,0x1f,0xd0,0x38,0x68,0xff,0xf7,0x69,0xfc, +0x03,0x46,0x00,0x2b,0x10,0xd0,0x4f,0xf4,0x3a,0x73,0x0e,0x4a,0x59,0xf8,0x02,0x20, +0x0f,0x49,0x59,0xf8,0x01,0x10,0x0d,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7,0x5a,0xfa, +0x4f,0xf0,0xff,0x30,0xff,0xf7,0x7e,0xfa,0xf9,0x68,0x78,0x68,0xff,0xf7,0x0a,0xff, +0xf9,0x68,0x38,0x68,0xff,0xf7,0x38,0xff,0x38,0x60,0x3b,0x68,0x18,0x46,0x10,0x37, +0xbd,0x46,0x80,0xbd,0x9c,0x00,0x00,0x00,0x94,0x00,0x00,0x00,0x48,0x00,0x00,0x00, +0x98,0x00,0x00,0x00,0x80,0xb4,0x85,0xb0,0x00,0xaf,0x78,0x60,0x7a,0x68,0x7b,0x68, +0x9a,0x60,0x7a,0x68,0x7b,0x68,0xda,0x60,0x7b,0x68,0x00,0x22,0x1a,0x61,0x00,0x23, +0xfb,0x60,0x1c,0xe0,0x7a,0x68,0xfb,0x68,0x04,0x33,0x9b,0x00,0x13,0x44,0x00,0x22, +0x5a,0x60,0x00,0x23,0xbb,0x60,0x0c,0xe0,0x7a,0x68,0x79,0x68,0xfb,0x68,0x58,0x01, +0xbb,0x68,0x03,0x44,0x1c,0x33,0x9b,0x00,0x0b,0x44,0x5a,0x60,0xbb,0x68,0x01,0x33, +0xbb,0x60,0xbb,0x68,0x1f,0x2b,0xef,0xdd,0xfb,0x68,0x01,0x33,0xfb,0x60,0xfb,0x68, +0x17,0x2b,0xdf,0xdd,0x00,0xbf,0x14,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47, +0x80,0xb4,0x00,0xaf,0x40,0xf6,0x74,0x43,0x18,0x46,0xbd,0x46,0x5d,0xf8,0x04,0x7b, +0x70,0x47,0x80,0xb4,0x00,0xaf,0x04,0x23,0x5b,0x00,0x18,0x46,0xbd,0x46,0x5d,0xf8, +0x04,0x7b,0x70,0x47,0x80,0xb5,0x88,0xb0,0x00,0xaf,0xf8,0x60,0xb9,0x60,0x7a,0x60, +0xff,0xf7,0xef,0xff,0xf8,0x61,0x7a,0x68,0xfb,0x69,0xd3,0x1a,0x04,0x21,0x18,0x46, +0xff,0xf7,0x00,0xfd,0xb8,0x61,0xbb,0x68,0x03,0xf0,0x03,0x03,0x00,0x2b,0x01,0xd0, +0x00,0x23,0x38,0xe0,0x0c,0x22,0xbb,0x69,0x93,0x42,0x04,0xd3,0x4f,0xf0,0x80,0x42, +0xbb,0x69,0x93,0x42,0x01,0xd9,0x00,0x23,0x2d,0xe0,0x19,0x4b,0x59,0xf8,0x03,0x30, +0x1a,0x68,0xbb,0x69,0xd3,0x1a,0x16,0x4a,0x59,0xf8,0x02,0x20,0x13,0x60,0x04,0x23, +0x5b,0x42,0x19,0x46,0xb8,0x68,0xff,0xf7,0x4e,0xfc,0x78,0x61,0xb9,0x69,0x78,0x69, +0xff,0xf7,0xa8,0xfb,0x78,0x69,0xff,0xf7,0xdb,0xfb,0x78,0x69,0xff,0xf7,0x17,0xfc, +0x79,0x69,0xf8,0x68,0xff,0xf7,0x87,0xfe,0x78,0x69,0xff,0xf7,0xa9,0xfc,0x38,0x61, +0x00,0x21,0x38,0x69,0xff,0xf7,0x96,0xfb,0x38,0x69,0xff,0xf7,0xd9,0xfb,0x38,0x69, +0xff,0xf7,0xf5,0xfb,0xbb,0x68,0x18,0x46,0x20,0x37,0xbd,0x46,0x80,0xbd,0x00,0xbf, +0x40,0x00,0x00,0x00,0x80,0xb5,0x82,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68,0x03,0xf0, +0x03,0x03,0x00,0x2b,0x01,0xd0,0x00,0x23,0x03,0xe0,0x78,0x68,0xff,0xf7,0x52,0xff, +0x7b,0x68,0x18,0x46,0x08,0x37,0xbd,0x46,0x80,0xbd,0x00,0x00,0x90,0xb5,0x85,0xb0, +0x00,0xaf,0x78,0x60,0x39,0x60,0x0f,0x4b,0x59,0xf8,0x03,0x30,0x1a,0x46,0x3b,0x68, +0x13,0x60,0x78,0x68,0xff,0xf7,0xde,0xff,0xf8,0x60,0xff,0xf7,0x71,0xff,0x02,0x46, +0x7b,0x68,0x9c,0x18,0xff,0xf7,0x6c,0xff,0x02,0x46,0x3b,0x68,0x9b,0x1a,0x1a,0x46, +0x21,0x46,0xf8,0x68,0xff,0xf7,0x76,0xff,0xfb,0x68,0x18,0x46,0x14,0x37,0xbd,0x46, +0x90,0xbd,0x00,0xbf,0x40,0x00,0x00,0x00,0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60, +0x39,0x60,0x3b,0x68,0x00,0x2b,0x55,0xd0,0x7b,0x68,0xfb,0x60,0x38,0x68,0xff,0xf7, +0xc7,0xfb,0xb8,0x60,0xb8,0x68,0xff,0xf7,0x65,0xfb,0x03,0x46,0x00,0x2b,0x10,0xd0, +0x40,0xf2,0xd2,0x43,0x25,0x4a,0x59,0xf8,0x02,0x20,0x25,0x49,0x59,0xf8,0x01,0x10, +0x24,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7,0x45,0xf9,0x4f,0xf0,0xff,0x30,0xff,0xf7, +0x69,0xf9,0xb8,0x68,0xff,0xf7,0x44,0xfc,0xb8,0x68,0xff,0xf7,0x12,0xfb,0x02,0x46, +0x1d,0x4b,0x59,0xf8,0x03,0x30,0x1b,0x68,0x9a,0x42,0x10,0xd3,0x40,0xf2,0xd6,0x43, +0x16,0x4a,0x59,0xf8,0x02,0x20,0x19,0x49,0x59,0xf8,0x01,0x10,0x15,0x48,0x59,0xf8, +0x00,0x00,0xff,0xf7,0x27,0xf9,0x4f,0xf0,0xff,0x30,0xff,0xf7,0x4b,0xf9,0xb8,0x68, +0xff,0xf7,0xf7,0xfa,0x02,0x46,0x10,0x4b,0x59,0xf8,0x03,0x30,0x1b,0x68,0x9b,0x1a, +0x0d,0x4a,0x59,0xf8,0x02,0x20,0x13,0x60,0xb9,0x68,0xf8,0x68,0xff,0xf7,0x32,0xfe, +0xb8,0x60,0xb9,0x68,0xf8,0x68,0xff,0xf7,0x7d,0xfe,0xb8,0x60,0xb9,0x68,0xf8,0x68, +0xff,0xf7,0xd9,0xfd,0x00,0xbf,0x10,0x37,0xbd,0x46,0x80,0xbd,0xa8,0x00,0x00,0x00, +0xa0,0x00,0x00,0x00,0x48,0x00,0x00,0x00,0x40,0x00,0x00,0x00,0xa4,0x00,0x00,0x00, +0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60,0x14,0x4b,0x59,0xf8,0x03,0x30,0x04,0x33, +0xfb,0x60,0x00,0x23,0xbb,0x60,0x00,0xf0,0x3d,0xf8,0x15,0xe0,0xfb,0x68,0x1b,0x68, +0xbb,0x60,0xfb,0x68,0x1b,0x68,0x1a,0x68,0xfb,0x68,0x1a,0x60,0xbb,0x68,0x5b,0x68, +0x19,0x46,0x29,0x20,0xfe,0xf7,0x18,0xf9,0xbb,0x68,0x9b,0x68,0x18,0x46,0xff,0xf7, +0x37,0xf9,0xb8,0x68,0xff,0xf7,0x34,0xf9,0xfb,0x68,0x1b,0x68,0x00,0x2b,0xe5,0xd1, +0x00,0xf0,0x44,0xf8,0x00,0xbf,0x10,0x37,0xbd,0x46,0x80,0xbd,0xc4,0x00,0x00,0x00, +0x80,0xb5,0x00,0xaf,0x2b,0x20,0xfe,0xf7,0xff,0xf8,0x03,0x46,0x1a,0x46,0x07,0x4b, +0x59,0xf8,0x03,0x30,0x9a,0x60,0x06,0x4b,0x59,0xf8,0x03,0x30,0x1a,0x46,0x14,0x21, +0x6d,0x20,0xfe,0xf7,0xf1,0xf8,0x00,0xbf,0x80,0xbd,0x00,0xbf,0xc4,0x00,0x00,0x00, +0xac,0x00,0x00,0x00,0x80,0xb5,0x00,0xaf,0x0e,0x4b,0x59,0xf8,0x03,0x30,0x1b,0x68, +0x00,0x2b,0x0c,0xd1,0x01,0x21,0x0c,0x4b,0x59,0xf8,0x03,0x30,0x18,0x46,0xfe,0xf7, +0x05,0xfb,0x02,0x46,0x07,0x4b,0x59,0xf8,0x03,0x30,0x1a,0x60,0x08,0xe0,0x05,0x4b, +0x59,0xf8,0x03,0x30,0x1b,0x68,0x4f,0xf0,0xff,0x31,0x18,0x46,0xfe,0xf7,0x07,0xfb, +0x00,0xbf,0x80,0xbd,0xb0,0x00,0x00,0x00,0xb4,0x00,0x00,0x00,0x80,0xb5,0x00,0xaf, +0x07,0x4b,0x59,0xf8,0x03,0x30,0x1b,0x68,0x00,0x2b,0x06,0xd0,0x04,0x4b,0x59,0xf8, +0x03,0x30,0x1b,0x68,0x18,0x46,0xfe,0xf7,0x01,0xfb,0x00,0xbf,0x80,0xbd,0x00,0xbf, +0xb0,0x00,0x00,0x00,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x70,0x72,0x65,0x76,0x00,0x00, +0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x6e,0x65,0x78,0x74,0x00,0x00,0x61,0x6c,0x69,0x67, +0x6e,0x5f,0x64,0x6f,0x77,0x6e,0x00,0x00,0x61,0x6c,0x69,0x67,0x6e,0x5f,0x70,0x74, +0x72,0x00,0x00,0x00,0x72,0x65,0x6d,0x6f,0x76,0x65,0x5f,0x66,0x72,0x65,0x65,0x5f, +0x62,0x6c,0x6f,0x63,0x6b,0x00,0x00,0x00,0x69,0x6e,0x73,0x65,0x72,0x74,0x5f,0x66, +0x72,0x65,0x65,0x5f,0x62,0x6c,0x6f,0x63,0x6b,0x00,0x00,0x00,0x62,0x6c,0x6f,0x63, +0x6b,0x5f,0x61,0x62,0x73,0x6f,0x72,0x62,0x00,0x00,0x00,0x00,0x62,0x6c,0x6f,0x63, +0x6b,0x5f,0x6d,0x65,0x72,0x67,0x65,0x5f,0x70,0x72,0x65,0x76,0x00,0x00,0x00,0x00, +0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x6d,0x65,0x72,0x67,0x65,0x5f,0x6e,0x65,0x78,0x74, +0x00,0x00,0x00,0x00,0x74,0x6c,0x73,0x66,0x5f,0x66,0x72,0x65,0x65,0x00,0x00,0x00, +0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x41,0x42,0x43,0x44,0x45,0x46, +0x00,0x00,0x00,0x00,0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x61,0x62, +0x63,0x64,0x65,0x66,0x00,0x00,0x00,0x00,0x70,0x6f,0x6e,0x67,0x00,0x00,0x00,0x00, +0x63,0x72,0x65,0x61,0x74,0x65,0x20,0x63,0x68,0x61,0x6e,0x6e,0x65,0x6c,0x20,0x66, +0x61,0x69,0x6c,0x65,0x64,0x0d,0x0a,0x00,0x50,0x6f,0x6e,0x67,0x3a,0x20,0x77,0x61, +0x69,0x74,0x20,0x6f,0x6e,0x20,0x74,0x68,0x65,0x20,0x49,0x50,0x43,0x20,0x63,0x68, +0x61,0x6e,0x6e,0x65,0x6c,0x3a,0x20,0x25,0x64,0x0d,0x0a,0x00,0x50,0x6f,0x6e,0x67, +0x3a,0x20,0x63,0x68,0x61,0x6e,0x6e,0x65,0x6c,0x20,0x72,0x65,0x63,0x76,0x20,0x61, +0x66,0x74,0x65,0x72,0x20,0x73,0x65,0x6e,0x64,0x69,0x6e,0x67,0x20,0x69,0x6e,0x20, +0x70,0x72,0x6f,0x63,0x65,0x73,0x73,0x20,0x66,0x61,0x69,0x6c,0x64,0x0d,0x0a,0x00, +0x50,0x6f,0x6e,0x67,0x3a,0x20,0x72,0x65,0x63,0x65,0x69,0x76,0x65,0x20,0x25,0x73, +0x0a,0x00,0x00,0x00,0x50,0x6f,0x6e,0x67,0x3a,0x20,0x73,0x68,0x6d,0x20,0x64,0x61, +0x74,0x61,0x20,0x25,0x73,0x0a,0x00,0x00,0x50,0x6f,0x6e,0x67,0x3a,0x20,0x72,0x65, +0x70,0x6c,0x79,0x20,0x63,0x6f,0x75,0x6e,0x74,0x20,0x3d,0x20,0x25,0x64,0x0a,0x00, +0x50,0x6f,0x6e,0x67,0x3a,0x20,0x63,0x68,0x61,0x6e,0x6e,0x65,0x6c,0x20,0x72,0x65, +0x70,0x6c,0x79,0x20,0x69,0x6e,0x20,0x70,0x72,0x6f,0x63,0x65,0x73,0x73,0x20,0x66, +0x61,0x69,0x6c,0x64,0x0d,0x0a,0x00,0x00,0x50,0x6f,0x6e,0x67,0x3a,0x20,0x63,0x68, +0x61,0x6e,0x6e,0x65,0x6c,0x20,0x69,0x73,0x20,0x63,0x6c,0x6f,0x73,0x65,0x64,0x21, +0x0d,0x0a,0x00,0x00,0x28,0x4e,0x55,0x4c,0x4c,0x29,0x00,0x00,0x5f,0x54,0x6c,0x73, +0x66,0x6c,0x6f,0x63,0x6b,0x00,0x00,0x00,0x61,0x70,0x70,0x20,0x68,0x65,0x61,0x70, +0x20,0x75,0x73,0x65,0x64,0x5f,0x6d,0x61,0x78,0x3a,0x25,0x64,0x0a,0x00,0x00,0x00, +0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69,0x73,0x5f,0x70,0x72,0x65,0x76,0x5f,0x66,0x72, +0x65,0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x20,0x26,0x26,0x20,0x22,0x70,0x72, +0x65,0x76,0x69,0x6f,0x75,0x73,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x6d,0x75,0x73, +0x74,0x20,0x62,0x65,0x20,0x66,0x72,0x65,0x65,0x22,0x00,0x00,0x28,0x25,0x73,0x29, +0x20,0x68,0x61,0x73,0x20,0x61,0x73,0x73,0x65,0x72,0x74,0x20,0x66,0x61,0x69,0x6c, +0x65,0x64,0x20,0x61,0x74,0x20,0x46,0x3a,0x25,0x73,0x20,0x4c,0x3a,0x25,0x64,0x00, +0x21,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69,0x73,0x5f,0x6c,0x61,0x73,0x74,0x28,0x62, +0x6c,0x6f,0x63,0x6b,0x29,0x00,0x00,0x00,0x30,0x20,0x3d,0x3d,0x20,0x28,0x61,0x6c, +0x69,0x67,0x6e,0x20,0x26,0x20,0x28,0x61,0x6c,0x69,0x67,0x6e,0x20,0x2d,0x20,0x31, +0x29,0x29,0x20,0x26,0x26,0x20,0x22,0x6d,0x75,0x73,0x74,0x20,0x61,0x6c,0x69,0x67, +0x6e,0x20,0x74,0x6f,0x20,0x61,0x20,0x70,0x6f,0x77,0x65,0x72,0x20,0x6f,0x66,0x20, +0x74,0x77,0x6f,0x22,0x00,0x00,0x00,0x00,0x73,0x6c,0x5f,0x6d,0x61,0x70,0x20,0x26, +0x26,0x20,0x22,0x69,0x6e,0x74,0x65,0x72,0x6e,0x61,0x6c,0x20,0x65,0x72,0x72,0x6f, +0x72,0x20,0x2d,0x20,0x73,0x65,0x63,0x6f,0x6e,0x64,0x20,0x6c,0x65,0x76,0x65,0x6c, +0x20,0x62,0x69,0x74,0x6d,0x61,0x70,0x20,0x69,0x73,0x20,0x6e,0x75,0x6c,0x6c,0x22, +0x00,0x00,0x00,0x00,0x70,0x72,0x65,0x76,0x20,0x26,0x26,0x20,0x22,0x70,0x72,0x65, +0x76,0x5f,0x66,0x72,0x65,0x65,0x20,0x66,0x69,0x65,0x6c,0x64,0x20,0x63,0x61,0x6e, +0x20,0x6e,0x6f,0x74,0x20,0x62,0x65,0x20,0x6e,0x75,0x6c,0x6c,0x22,0x00,0x00,0x00, +0x6e,0x65,0x78,0x74,0x20,0x26,0x26,0x20,0x22,0x6e,0x65,0x78,0x74,0x5f,0x66,0x72, +0x65,0x65,0x20,0x66,0x69,0x65,0x6c,0x64,0x20,0x63,0x61,0x6e,0x20,0x6e,0x6f,0x74, +0x20,0x62,0x65,0x20,0x6e,0x75,0x6c,0x6c,0x22,0x00,0x00,0x00,0x63,0x75,0x72,0x72, +0x65,0x6e,0x74,0x20,0x26,0x26,0x20,0x22,0x66,0x72,0x65,0x65,0x20,0x6c,0x69,0x73, +0x74,0x20,0x63,0x61,0x6e,0x6e,0x6f,0x74,0x20,0x68,0x61,0x76,0x65,0x20,0x61,0x20, +0x6e,0x75,0x6c,0x6c,0x20,0x65,0x6e,0x74,0x72,0x79,0x22,0x00,0x62,0x6c,0x6f,0x63, +0x6b,0x20,0x26,0x26,0x20,0x22,0x63,0x61,0x6e,0x6e,0x6f,0x74,0x20,0x69,0x6e,0x73, +0x65,0x72,0x74,0x20,0x61,0x20,0x6e,0x75,0x6c,0x6c,0x20,0x65,0x6e,0x74,0x72,0x79, +0x20,0x69,0x6e,0x74,0x6f,0x20,0x74,0x68,0x65,0x20,0x66,0x72,0x65,0x65,0x20,0x6c, +0x69,0x73,0x74,0x22,0x00,0x00,0x00,0x00,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x74,0x6f, +0x5f,0x70,0x74,0x72,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x20,0x3d,0x3d,0x20,0x61, +0x6c,0x69,0x67,0x6e,0x5f,0x70,0x74,0x72,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x74, +0x6f,0x5f,0x70,0x74,0x72,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x2c,0x20,0x41,0x4c, +0x49,0x47,0x4e,0x5f,0x53,0x49,0x5a,0x45,0x29,0x20,0x26,0x26,0x20,0x22,0x62,0x6c, +0x6f,0x63,0x6b,0x20,0x6e,0x6f,0x74,0x20,0x61,0x6c,0x69,0x67,0x6e,0x65,0x64,0x20, +0x70,0x72,0x6f,0x70,0x65,0x72,0x6c,0x79,0x22,0x00,0x00,0x00,0x62,0x6c,0x6f,0x63, +0x6b,0x5f,0x74,0x6f,0x5f,0x70,0x74,0x72,0x28,0x72,0x65,0x6d,0x61,0x69,0x6e,0x69, +0x6e,0x67,0x29,0x20,0x3d,0x3d,0x20,0x61,0x6c,0x69,0x67,0x6e,0x5f,0x70,0x74,0x72, +0x28,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x74,0x6f,0x5f,0x70,0x74,0x72,0x28,0x72,0x65, +0x6d,0x61,0x69,0x6e,0x69,0x6e,0x67,0x29,0x2c,0x20,0x41,0x4c,0x49,0x47,0x4e,0x5f, +0x53,0x49,0x5a,0x45,0x29,0x20,0x26,0x26,0x20,0x22,0x72,0x65,0x6d,0x61,0x69,0x6e, +0x69,0x6e,0x67,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x6e,0x6f,0x74,0x20,0x61,0x6c, +0x69,0x67,0x6e,0x65,0x64,0x20,0x70,0x72,0x6f,0x70,0x65,0x72,0x6c,0x79,0x22,0x00, +0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x73,0x69,0x7a,0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b, +0x29,0x20,0x3d,0x3d,0x20,0x72,0x65,0x6d,0x61,0x69,0x6e,0x5f,0x73,0x69,0x7a,0x65, +0x20,0x2b,0x20,0x73,0x69,0x7a,0x65,0x20,0x2b,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x5f, +0x68,0x65,0x61,0x64,0x65,0x72,0x5f,0x6f,0x76,0x65,0x72,0x68,0x65,0x61,0x64,0x00, +0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x73,0x69,0x7a,0x65,0x28,0x72,0x65,0x6d,0x61,0x69, +0x6e,0x69,0x6e,0x67,0x29,0x20,0x3e,0x3d,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x73, +0x69,0x7a,0x65,0x5f,0x6d,0x69,0x6e,0x20,0x26,0x26,0x20,0x22,0x62,0x6c,0x6f,0x63, +0x6b,0x20,0x73,0x70,0x6c,0x69,0x74,0x20,0x77,0x69,0x74,0x68,0x20,0x69,0x6e,0x76, +0x61,0x6c,0x69,0x64,0x20,0x73,0x69,0x7a,0x65,0x22,0x00,0x00,0x21,0x62,0x6c,0x6f, +0x63,0x6b,0x5f,0x69,0x73,0x5f,0x6c,0x61,0x73,0x74,0x28,0x70,0x72,0x65,0x76,0x29, +0x20,0x26,0x26,0x20,0x22,0x70,0x72,0x65,0x76,0x69,0x6f,0x75,0x73,0x20,0x62,0x6c, +0x6f,0x63,0x6b,0x20,0x63,0x61,0x6e,0x27,0x74,0x20,0x62,0x65,0x20,0x6c,0x61,0x73, +0x74,0x22,0x00,0x00,0x70,0x72,0x65,0x76,0x20,0x26,0x26,0x20,0x22,0x70,0x72,0x65, +0x76,0x20,0x70,0x68,0x79,0x73,0x69,0x63,0x61,0x6c,0x20,0x62,0x6c,0x6f,0x63,0x6b, +0x20,0x63,0x61,0x6e,0x27,0x74,0x20,0x62,0x65,0x20,0x6e,0x75,0x6c,0x6c,0x22,0x00, +0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69,0x73,0x5f,0x66,0x72,0x65,0x65,0x28,0x70,0x72, +0x65,0x76,0x29,0x20,0x26,0x26,0x20,0x22,0x70,0x72,0x65,0x76,0x20,0x62,0x6c,0x6f, +0x63,0x6b,0x20,0x69,0x73,0x20,0x6e,0x6f,0x74,0x20,0x66,0x72,0x65,0x65,0x20,0x74, +0x68,0x6f,0x75,0x67,0x68,0x20,0x6d,0x61,0x72,0x6b,0x65,0x64,0x20,0x61,0x73,0x20, +0x73,0x75,0x63,0x68,0x22,0x00,0x00,0x00,0x6e,0x65,0x78,0x74,0x20,0x26,0x26,0x20, +0x22,0x6e,0x65,0x78,0x74,0x20,0x70,0x68,0x79,0x73,0x69,0x63,0x61,0x6c,0x20,0x62, +0x6c,0x6f,0x63,0x6b,0x20,0x63,0x61,0x6e,0x27,0x74,0x20,0x62,0x65,0x20,0x6e,0x75, +0x6c,0x6c,0x22,0x00,0x21,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69,0x73,0x5f,0x6c,0x61, +0x73,0x74,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x20,0x26,0x26,0x20,0x22,0x70,0x72, +0x65,0x76,0x69,0x6f,0x75,0x73,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x63,0x61,0x6e, +0x27,0x74,0x20,0x62,0x65,0x20,0x6c,0x61,0x73,0x74,0x22,0x00,0x62,0x6c,0x6f,0x63, +0x6b,0x5f,0x69,0x73,0x5f,0x66,0x72,0x65,0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29, +0x20,0x26,0x26,0x20,0x22,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x6d,0x75,0x73,0x74,0x20, +0x62,0x65,0x20,0x66,0x72,0x65,0x65,0x22,0x00,0x00,0x00,0x00,0x21,0x62,0x6c,0x6f, +0x63,0x6b,0x5f,0x69,0x73,0x5f,0x66,0x72,0x65,0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b, +0x29,0x20,0x26,0x26,0x20,0x22,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x6d,0x75,0x73,0x74, +0x20,0x62,0x65,0x20,0x75,0x73,0x65,0x64,0x22,0x00,0x00,0x00,0x62,0x6c,0x6f,0x63, +0x6b,0x5f,0x73,0x69,0x7a,0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x20,0x3e,0x3d, +0x20,0x73,0x69,0x7a,0x65,0x00,0x00,0x00,0x73,0x69,0x7a,0x65,0x20,0x26,0x26,0x20, +0x22,0x73,0x69,0x7a,0x65,0x20,0x6d,0x75,0x73,0x74,0x20,0x62,0x65,0x20,0x6e,0x6f, +0x6e,0x2d,0x7a,0x65,0x72,0x6f,0x22,0x00,0x69,0x6e,0x74,0x65,0x67,0x2d,0x3e,0x70, +0x72,0x65,0x76,0x5f,0x73,0x74,0x61,0x74,0x75,0x73,0x20,0x3d,0x3d,0x20,0x74,0x68, +0x69,0x73,0x5f,0x70,0x72,0x65,0x76,0x5f,0x73,0x74,0x61,0x74,0x75,0x73,0x20,0x26, +0x26,0x20,0x22,0x70,0x72,0x65,0x76,0x20,0x73,0x74,0x61,0x74,0x75,0x73,0x20,0x69, +0x6e,0x63,0x6f,0x72,0x72,0x65,0x63,0x74,0x22,0x00,0x00,0x00,0x73,0x69,0x7a,0x65, +0x20,0x3d,0x3d,0x20,0x74,0x68,0x69,0x73,0x5f,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x73, +0x69,0x7a,0x65,0x20,0x26,0x26,0x20,0x22,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x73,0x69, +0x7a,0x65,0x20,0x69,0x6e,0x63,0x6f,0x72,0x72,0x65,0x63,0x74,0x22,0x00,0x00,0x00, +0x21,0x73,0x6c,0x5f,0x6d,0x61,0x70,0x20,0x26,0x26,0x20,0x22,0x73,0x65,0x63,0x6f, +0x6e,0x64,0x2d,0x6c,0x65,0x76,0x65,0x6c,0x20,0x6d,0x61,0x70,0x20,0x6d,0x75,0x73, +0x74,0x20,0x62,0x65,0x20,0x6e,0x75,0x6c,0x6c,0x22,0x00,0x00,0x62,0x6c,0x6f,0x63, +0x6b,0x20,0x3d,0x3d,0x20,0x26,0x63,0x6f,0x6e,0x74,0x72,0x6f,0x6c,0x2d,0x3e,0x62, +0x6c,0x6f,0x63,0x6b,0x5f,0x6e,0x75,0x6c,0x6c,0x20,0x26,0x26,0x20,0x22,0x62,0x6c, +0x6f,0x63,0x6b,0x20,0x6c,0x69,0x73,0x74,0x20,0x6d,0x75,0x73,0x74,0x20,0x62,0x65, +0x20,0x6e,0x75,0x6c,0x6c,0x22,0x00,0x00,0x73,0x6c,0x5f,0x6c,0x69,0x73,0x74,0x20, +0x26,0x26,0x20,0x22,0x6e,0x6f,0x20,0x66,0x72,0x65,0x65,0x20,0x62,0x6c,0x6f,0x63, +0x6b,0x73,0x20,0x69,0x6e,0x20,0x73,0x65,0x63,0x6f,0x6e,0x64,0x2d,0x6c,0x65,0x76, +0x65,0x6c,0x20,0x6d,0x61,0x70,0x22,0x00,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x21,0x3d, +0x20,0x26,0x63,0x6f,0x6e,0x74,0x72,0x6f,0x6c,0x2d,0x3e,0x62,0x6c,0x6f,0x63,0x6b, +0x5f,0x6e,0x75,0x6c,0x6c,0x20,0x26,0x26,0x20,0x22,0x62,0x6c,0x6f,0x63,0x6b,0x20, +0x73,0x68,0x6f,0x75,0x6c,0x64,0x20,0x6e,0x6f,0x74,0x20,0x62,0x65,0x20,0x6e,0x75, +0x6c,0x6c,0x22,0x00,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69,0x73,0x5f,0x66,0x72,0x65, +0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x20,0x26,0x26,0x20,0x22,0x62,0x6c,0x6f, +0x63,0x6b,0x20,0x73,0x68,0x6f,0x75,0x6c,0x64,0x20,0x62,0x65,0x20,0x66,0x72,0x65, +0x65,0x22,0x00,0x00,0x21,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69,0x73,0x5f,0x70,0x72, +0x65,0x76,0x5f,0x66,0x72,0x65,0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x20,0x26, +0x26,0x20,0x22,0x62,0x6c,0x6f,0x63,0x6b,0x73,0x20,0x73,0x68,0x6f,0x75,0x6c,0x64, +0x20,0x68,0x61,0x76,0x65,0x20,0x63,0x6f,0x61,0x6c,0x65,0x73,0x63,0x65,0x64,0x22, +0x00,0x00,0x00,0x00,0x21,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69,0x73,0x5f,0x66,0x72, +0x65,0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x6e,0x65,0x78,0x74,0x28,0x62,0x6c, +0x6f,0x63,0x6b,0x29,0x29,0x20,0x26,0x26,0x20,0x22,0x62,0x6c,0x6f,0x63,0x6b,0x73, +0x20,0x73,0x68,0x6f,0x75,0x6c,0x64,0x20,0x68,0x61,0x76,0x65,0x20,0x63,0x6f,0x61, +0x6c,0x65,0x73,0x63,0x65,0x64,0x22,0x00,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69,0x73, +0x5f,0x70,0x72,0x65,0x76,0x5f,0x66,0x72,0x65,0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b, +0x5f,0x6e,0x65,0x78,0x74,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x29,0x20,0x26,0x26, +0x20,0x22,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x73,0x68,0x6f,0x75,0x6c,0x64,0x20,0x62, +0x65,0x20,0x66,0x72,0x65,0x65,0x22,0x00,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x73,0x69, +0x7a,0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x20,0x3e,0x3d,0x20,0x62,0x6c,0x6f, +0x63,0x6b,0x5f,0x73,0x69,0x7a,0x65,0x5f,0x6d,0x69,0x6e,0x20,0x26,0x26,0x20,0x22, +0x62,0x6c,0x6f,0x63,0x6b,0x20,0x6e,0x6f,0x74,0x20,0x6d,0x69,0x6e,0x69,0x6d,0x75, +0x6d,0x20,0x73,0x69,0x7a,0x65,0x22,0x00,0x66,0x6c,0x69,0x20,0x3d,0x3d,0x20,0x69, +0x20,0x26,0x26,0x20,0x73,0x6c,0x69,0x20,0x3d,0x3d,0x20,0x6a,0x20,0x26,0x26,0x20, +0x22,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x73,0x69,0x7a,0x65,0x20,0x69,0x6e,0x64,0x65, +0x78,0x65,0x64,0x20,0x69,0x6e,0x20,0x77,0x72,0x6f,0x6e,0x67,0x20,0x6c,0x69,0x73, +0x74,0x22,0x00,0x00,0x21,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69,0x73,0x5f,0x66,0x72, +0x65,0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x6e,0x65,0x78,0x74,0x28,0x62,0x6c, +0x6f,0x63,0x6b,0x29,0x29,0x20,0x26,0x26,0x20,0x22,0x6e,0x65,0x78,0x74,0x20,0x62, +0x6c,0x6f,0x63,0x6b,0x20,0x73,0x68,0x6f,0x75,0x6c,0x64,0x20,0x6e,0x6f,0x74,0x20, +0x62,0x65,0x20,0x66,0x72,0x65,0x65,0x22,0x00,0x00,0x00,0x00,0x62,0x6c,0x6f,0x63, +0x6b,0x5f,0x73,0x69,0x7a,0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x6e,0x65,0x78, +0x74,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x29,0x20,0x3d,0x3d,0x20,0x30,0x20,0x26, +0x26,0x20,0x22,0x6e,0x65,0x78,0x74,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x73,0x69, +0x7a,0x65,0x20,0x73,0x68,0x6f,0x75,0x6c,0x64,0x20,0x62,0x65,0x20,0x7a,0x65,0x72, +0x6f,0x22,0x00,0x00,0x73,0x69,0x7a,0x65,0x6f,0x66,0x28,0x62,0x6c,0x6f,0x63,0x6b, +0x5f,0x68,0x65,0x61,0x64,0x65,0x72,0x5f,0x74,0x29,0x20,0x3d,0x3d,0x20,0x62,0x6c, +0x6f,0x63,0x6b,0x5f,0x73,0x69,0x7a,0x65,0x5f,0x6d,0x69,0x6e,0x20,0x2b,0x20,0x62, +0x6c,0x6f,0x63,0x6b,0x5f,0x68,0x65,0x61,0x64,0x65,0x72,0x5f,0x6f,0x76,0x65,0x72, +0x68,0x65,0x61,0x64,0x00,0x00,0x00,0x00,0x67,0x61,0x70,0x20,0x3e,0x3d,0x20,0x67, +0x61,0x70,0x5f,0x6d,0x69,0x6e,0x69,0x6d,0x75,0x6d,0x20,0x26,0x26,0x20,0x22,0x67, +0x61,0x70,0x20,0x73,0x69,0x7a,0x65,0x20,0x74,0x6f,0x6f,0x20,0x73,0x6d,0x61,0x6c, +0x6c,0x22,0x00,0x00,0x21,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69,0x73,0x5f,0x66,0x72, +0x65,0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x20,0x26,0x26,0x20,0x22,0x62,0x6c, +0x6f,0x63,0x6b,0x20,0x61,0x6c,0x72,0x65,0x61,0x64,0x79,0x20,0x6d,0x61,0x72,0x6b, +0x65,0x64,0x20,0x61,0x73,0x20,0x66,0x72,0x65,0x65,0x22,0x00,0x74,0x6c,0x73,0x66, +0x5f,0x75,0x73,0x65,0x64,0x20,0x3e,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x73,0x69, +0x7a,0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x20,0x26,0x26,0x20,0x22,0x61,0x70, +0x70,0x20,0x68,0x65,0x61,0x70,0x20,0x6d,0x61,0x79,0x20,0x6e,0x6f,0x74,0x20,0x69, +0x6e,0x69,0x74,0x2e,0x22,0x00,0x00,0x00,0x63,0x74,0x5f,0x6d,0x75,0x74,0x65,0x78, +0x00,0x00,0x00,0x00,0xbc,0xd6,0xff,0x7f,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,0x03,0x00,0x01,0x00,0x00,0x00,0x00,0x00, +0x50,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x08,0x00,0x4b,0x00,0x00,0x00, +0xfc,0x2a,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x02,0x00,0x9a,0x00,0x00,0x00, +0x50,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x08,0x00,0x01,0x00,0x00,0x00, +0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0xf1,0xff,0xb7,0x00,0x00,0x00, +0x28,0x31,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x08,0x00,0x14,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x01,0x00,0x31,0x00,0x00,0x00, +0xf4,0x2a,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x01,0x00,0x41,0x01,0x00,0x00, +0xc0,0x92,0x00,0x00,0x0c,0x00,0x00,0x00,0x11,0x00,0x0b,0x00,0x0a,0x01,0x00,0x00, +0xb4,0x81,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x0b,0x00,0xed,0x00,0x00,0x00, +0xb4,0x31,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x0b,0x00,0x3d,0x00,0x00,0x00, +0xf4,0x2a,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x02,0x00,0xd0,0x00,0x00,0x00, +0x00,0x50,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0xf1,0xff,0xc3,0x00,0x00,0x00, +0x28,0x31,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x08,0x00,0x35,0x01,0x00,0x00, +0xd0,0x92,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x0b,0x00,0x8d,0x00,0x00,0x00, +0x80,0x62,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0xf1,0xff,0xfb,0x00,0x00,0x00, +0xb4,0x31,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x0b,0x00,0xde,0x00,0x00,0x00, +0x00,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0xf1,0xff,0x57,0x00,0x00,0x00, +0x50,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x07,0x00,0x23,0x00,0x00,0x00, +0xf4,0x2a,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x01,0x00,0x73,0x00,0x00,0x00, +0x50,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x07,0x00,0x52,0x00,0x00,0x00, +0xd0,0x92,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x0b,0x00,0x27,0x01,0x00,0x00, +0xb4,0x91,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x0b,0x00,0x17,0x01,0x00,0x00, +0xb4,0x81,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x0b,0x00,0xa9,0x00,0x00,0x00, +0x50,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x08,0x00,0x00,0x5f,0x73,0x79, +0x73,0x74,0x65,0x6d,0x5f,0x73,0x74,0x61,0x63,0x6b,0x5f,0x73,0x69,0x7a,0x65,0x00, +0x5f,0x5f,0x74,0x65,0x78,0x74,0x5f,0x73,0x74,0x61,0x72,0x74,0x5f,0x5f,0x00,0x5f, +0x5f,0x72,0x65,0x6c,0x5f,0x73,0x74,0x61,0x72,0x74,0x5f,0x5f,0x00,0x5f,0x5f,0x72, +0x65,0x6c,0x5f,0x65,0x6e,0x64,0x5f,0x5f,0x00,0x5f,0x5f,0x65,0x78,0x64,0x69,0x78, +0x5f,0x73,0x74,0x61,0x72,0x74,0x00,0x5f,0x5f,0x65,0x78,0x64,0x69,0x78,0x5f,0x65, +0x6e,0x64,0x00,0x5f,0x5f,0x70,0x65,0x72,0x6d,0x69,0x73,0x73,0x69,0x6f,0x6e,0x73, +0x5f,0x74,0x61,0x62,0x6c,0x65,0x5f,0x73,0x74,0x61,0x72,0x74,0x5f,0x5f,0x00,0x5f, +0x5f,0x70,0x65,0x72,0x6d,0x69,0x73,0x73,0x69,0x6f,0x6e,0x73,0x5f,0x74,0x61,0x62, +0x6c,0x65,0x5f,0x65,0x6e,0x64,0x5f,0x5f,0x00,0x5f,0x5f,0x72,0x61,0x6d,0x5f,0x73, +0x69,0x7a,0x65,0x5f,0x5f,0x00,0x5f,0x5f,0x64,0x61,0x74,0x61,0x5f,0x73,0x74,0x61, +0x72,0x74,0x5f,0x5f,0x00,0x5f,0x5f,0x67,0x6f,0x74,0x5f,0x73,0x74,0x61,0x72,0x74, +0x5f,0x5f,0x00,0x5f,0x5f,0x67,0x6f,0x74,0x5f,0x65,0x6e,0x64,0x5f,0x5f,0x00,0x5f, +0x5f,0x64,0x61,0x74,0x61,0x5f,0x65,0x6e,0x64,0x5f,0x5f,0x00,0x5f,0x5f,0x68,0x65, +0x61,0x70,0x5f,0x73,0x69,0x7a,0x65,0x5f,0x5f,0x00,0x5f,0x5f,0x73,0x74,0x61,0x63, +0x6b,0x5f,0x73,0x69,0x7a,0x65,0x5f,0x5f,0x00,0x5f,0x5f,0x62,0x73,0x73,0x5f,0x73, +0x74,0x61,0x72,0x74,0x5f,0x5f,0x00,0x5f,0x5f,0x68,0x65,0x61,0x70,0x5f,0x73,0x74, +0x61,0x72,0x74,0x5f,0x5f,0x00,0x5f,0x5f,0x68,0x65,0x61,0x70,0x5f,0x65,0x6e,0x64, +0x5f,0x5f,0x00,0x5f,0x5f,0x73,0x74,0x61,0x63,0x6b,0x5f,0x73,0x74,0x61,0x72,0x74, +0x5f,0x5f,0x00,0x5f,0x5f,0x73,0x74,0x61,0x63,0x6b,0x5f,0x65,0x6e,0x64,0x5f,0x5f, +0x00,0x5f,0x5f,0x62,0x73,0x73,0x5f,0x65,0x6e,0x64,0x5f,0x5f,0x00,0x75,0x74,0x68, +0x72,0x65,0x61,0x64,0x5f,0x67,0x72,0x70,0x00,0x00,0x00,0x00,0x11,0x00,0x00,0x00, +0x1a,0x00,0x00,0x00,0x0c,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x09,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x17,0x00,0x00,0x00,0x0f,0x00,0x00,0x00,0x19,0x00,0x00,0x00, +0x15,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x07,0x00,0x00,0x00,0x0b,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x0d,0x00,0x00,0x00,0x16,0x00,0x00,0x00,0x10,0x00,0x00,0x00, +0x13,0x00,0x00,0x00,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,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, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x0e,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x0a,0x00,0x00,0x00,0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x14,0x00,0x00,0x00,0x11,0x00,0x00,0x00,0x12,0x00,0x00,0x00, +0x50,0x30,0x00,0x00,0x17,0x00,0x00,0x00,0x54,0x30,0x00,0x00,0x17,0x00,0x00,0x00, +0x58,0x30,0x00,0x00,0x17,0x00,0x00,0x00,0x5c,0x30,0x00,0x00,0x17,0x00,0x00,0x00, +0x60,0x30,0x00,0x00,0x17,0x00,0x00,0x00,0x64,0x30,0x00,0x00,0x17,0x00,0x00,0x00, +0x68,0x30,0x00,0x00,0x17,0x00,0x00,0x00,0x6c,0x30,0x00,0x00,0x17,0x00,0x00,0x00, +0x70,0x30,0x00,0x00,0x17,0x00,0x00,0x00,0x74,0x30,0x00,0x00,0x17,0x00,0x00,0x00, +0x78,0x30,0x00,0x00,0x17,0x00,0x00,0x00,0x7c,0x30,0x00,0x00,0x17,0x00,0x00,0x00, +0x80,0x30,0x00,0x00,0x17,0x00,0x00,0x00,0x84,0x30,0x00,0x00,0x17,0x00,0x00,0x00, +0x88,0x30,0x00,0x00,0x17,0x00,0x00,0x00,0x8c,0x30,0x00,0x00,0x17,0x00,0x00,0x00, +0x90,0x30,0x00,0x00,0x17,0x00,0x00,0x00,0x94,0x30,0x00,0x00,0x17,0x00,0x00,0x00, +0x98,0x30,0x00,0x00,0x17,0x00,0x00,0x00,0x9c,0x30,0x00,0x00,0x17,0x00,0x00,0x00, +0xa0,0x30,0x00,0x00,0x17,0x00,0x00,0x00,0xa4,0x30,0x00,0x00,0x17,0x00,0x00,0x00, +0xa8,0x30,0x00,0x00,0x17,0x00,0x00,0x00,0xac,0x30,0x00,0x00,0x17,0x00,0x00,0x00, +0xb0,0x30,0x00,0x00,0x17,0x00,0x00,0x00,0xb4,0x30,0x00,0x00,0x17,0x00,0x00,0x00, +0xb8,0x30,0x00,0x00,0x17,0x00,0x00,0x00,0xbc,0x30,0x00,0x00,0x17,0x00,0x00,0x00, +0xc0,0x30,0x00,0x00,0x17,0x00,0x00,0x00,0xc4,0x30,0x00,0x00,0x17,0x00,0x00,0x00, +0xc8,0x30,0x00,0x00,0x17,0x00,0x00,0x00,0xcc,0x30,0x00,0x00,0x17,0x00,0x00,0x00, +0xd0,0x30,0x00,0x00,0x17,0x00,0x00,0x00,0xd4,0x30,0x00,0x00,0x17,0x00,0x00,0x00, +0xd8,0x30,0x00,0x00,0x17,0x00,0x00,0x00,0xdc,0x30,0x00,0x00,0x17,0x00,0x00,0x00, +0xe0,0x30,0x00,0x00,0x17,0x00,0x00,0x00,0xe4,0x30,0x00,0x00,0x17,0x00,0x00,0x00, +0xe8,0x30,0x00,0x00,0x17,0x00,0x00,0x00,0xec,0x30,0x00,0x00,0x17,0x00,0x00,0x00, +0xf0,0x30,0x00,0x00,0x17,0x00,0x00,0x00,0xf4,0x30,0x00,0x00,0x17,0x00,0x00,0x00, +0xf8,0x30,0x00,0x00,0x17,0x00,0x00,0x00,0xfc,0x30,0x00,0x00,0x17,0x00,0x00,0x00, +0x00,0x31,0x00,0x00,0x17,0x00,0x00,0x00,0x04,0x31,0x00,0x00,0x17,0x00,0x00,0x00, +0x08,0x31,0x00,0x00,0x17,0x00,0x00,0x00,0x0c,0x31,0x00,0x00,0x17,0x00,0x00,0x00, +0x10,0x31,0x00,0x00,0x17,0x00,0x00,0x00,0x14,0x31,0x00,0x00,0x17,0x00,0x00,0x00, +0x18,0x31,0x00,0x00,0x17,0x00,0x00,0x00,0x1c,0x31,0x00,0x00,0x17,0x00,0x00,0x00, +0x20,0x31,0x00,0x00,0x17,0x00,0x00,0x00,0x24,0x31,0x00,0x00,0x17,0x00,0x00,0x00, +0xc8,0x20,0x00,0x00,0xd0,0x20,0x00,0x00,0xe8,0x20,0x00,0x00,0x0c,0x21,0x00,0x00, +0x40,0x21,0x00,0x00,0x54,0x21,0x00,0x00,0x68,0x21,0x00,0x00,0x80,0x21,0x00,0x00, +0xa8,0x21,0x00,0x00,0xa0,0x20,0x00,0x00,0xb4,0x20,0x00,0x00,0xc4,0x21,0x00,0x00, +0xb4,0x91,0x00,0x00,0xb4,0x92,0x00,0x00,0xb8,0x92,0x00,0x00,0xcc,0x21,0x00,0x00, +0xbc,0x92,0x00,0x00,0xf0,0x21,0x00,0x00,0x2c,0x22,0x00,0x00,0x04,0x20,0x00,0x00, +0x50,0x22,0x00,0x00,0x10,0x20,0x00,0x00,0x68,0x22,0x00,0x00,0x1c,0x20,0x00,0x00, +0x28,0x20,0x00,0x00,0xe4,0x22,0x00,0x00,0x10,0x23,0x00,0x00,0x34,0x20,0x00,0x00, +0x3c,0x23,0x00,0x00,0x6c,0x23,0x00,0x00,0xa8,0x23,0x00,0x00,0x48,0x20,0x00,0x00, +0x0c,0x25,0x00,0x00,0x5c,0x20,0x00,0x00,0x44,0x25,0x00,0x00,0x70,0x25,0x00,0x00, +0x6c,0x20,0x00,0x00,0xb8,0x25,0x00,0x00,0xe4,0x25,0x00,0x00,0x80,0x20,0x00,0x00, +0x74,0x2a,0x00,0x00,0xac,0x2a,0x00,0x00,0x94,0x20,0x00,0x00,0x01,0x1f,0x00,0x00, +0xcc,0x92,0x00,0x00,0xe8,0x2a,0x00,0x00,0x28,0x31,0x00,0x00,0x00,0x00,0x00,0x00, +0xf4,0x2a,0x00,0x00,0xc0,0x92,0x00,0x00,0xb4,0x81,0x00,0x00,0xb4,0x31,0x00,0x00, +0xf4,0x2a,0x00,0x00,0x50,0x30,0x00,0x00,0x04,0x00,0x00,0x00,0xec,0x2d,0x00,0x00, +0x05,0x00,0x00,0x00,0x9c,0x2c,0x00,0x00,0x06,0x00,0x00,0x00,0xfc,0x2a,0x00,0x00, +0x0a,0x00,0x00,0x00,0x4d,0x01,0x00,0x00,0x0b,0x00,0x00,0x00,0x10,0x00,0x00,0x00, +0x15,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x11,0x00,0x00,0x00,0xa0,0x2e,0x00,0x00, +0x12,0x00,0x00,0x00,0xb0,0x01,0x00,0x00,0x13,0x00,0x00,0x00,0x08,0x00,0x00,0x00, +0xfb,0xff,0xff,0x6f,0x00,0x00,0x00,0x08,0xfa,0xff,0xff,0x6f,0x36,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x28,0x31,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00, +}; + +const static unsigned char _thread[] = { +0x84,0x46,0x5d,0xe0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x4c,0x57,0x50,0x2e,0xd8,0x62,0x00,0x00,0xe0,0x36,0x00,0x00,0xe0,0x36,0x00,0x00, +0x61,0x70,0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x07,0x90,0x38,0x00,0x00, +0x90,0x88,0x00,0x00,0x00,0x50,0x00,0x00,0x00,0x10,0x00,0x00,0xe0,0x36,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x23,0x4c,0x24,0x4a,0xa2,0xeb,0x04,0x03,0x4b,0x44,0x23,0xf0,0x07,0x03,0x9d,0x46, +0x00,0x21,0xaf,0xf2,0xd3,0x02,0x22,0xf0,0x01,0x02,0x1d,0x48,0x10,0x44,0x1e,0x4b, +0x13,0x44,0x03,0xe0,0x42,0x58,0x49,0xf8,0x01,0x20,0x04,0x31,0x42,0x18,0x9a,0x42, +0xf8,0xd3,0x00,0x20,0x16,0x49,0x19,0x4a,0xa2,0xeb,0x01,0x02,0x4a,0x44,0x18,0x4b, +0xa3,0xeb,0x01,0x03,0x4b,0x44,0x01,0xe0,0x42,0xf8,0x04,0x0b,0x9a,0x42,0xfb,0xd3, +0x4f,0xf0,0x23,0x30,0x0e,0x49,0x13,0x4a,0xa2,0xeb,0x01,0x02,0x4a,0x44,0x0d,0x4b, +0xa3,0xeb,0x01,0x03,0x4b,0x44,0x01,0xe0,0x42,0xf8,0x04,0x0b,0x9a,0x42,0xfb,0xd3, +0x60,0x46,0x11,0xb4,0x48,0x46,0xaf,0xf2,0x37,0x11,0x21,0xf0,0x01,0x01,0x00,0xf0, +0x2f,0xfc,0xbd,0xe8,0x01,0x10,0x00,0xf0,0x03,0xfc,0x01,0xf0,0x5b,0xf9,0x00,0x00, +0xe0,0x36,0x00,0x00,0x90,0x98,0x00,0x00,0x04,0x38,0x00,0x00,0x90,0x38,0x00,0x00, +0xb8,0x99,0x00,0x00,0x90,0x88,0x00,0x00,0xf0,0xb4,0x07,0x46,0x08,0x46,0x11,0x46, +0x1a,0x46,0x04,0xae,0x96,0xe8,0x38,0x00,0x00,0xdf,0xf0,0xbc,0x70,0x47,0x00,0x00, +0x53,0xb9,0x4a,0xb9,0x00,0x29,0x08,0xbf,0x00,0x28,0x1c,0xbf,0x4f,0xf0,0xff,0x31, +0x4f,0xf0,0xff,0x30,0x00,0xf0,0x7e,0xb9,0xad,0xf1,0x08,0x0c,0x6d,0xe9,0x04,0xce, +0x00,0xf0,0x06,0xf8,0xdd,0xf8,0x04,0xe0,0xdd,0xe9,0x02,0x23,0x04,0xb0,0x70,0x47, +0x2d,0xe9,0xf0,0x47,0x8c,0x46,0x0e,0x46,0x04,0x46,0x08,0x9d,0x00,0x2b,0x50,0xd1, +0x8a,0x42,0x17,0x46,0x6c,0xd9,0xb2,0xfa,0x82,0xfe,0xbe,0xf1,0x00,0x0f,0x0b,0xd0, +0xce,0xf1,0x20,0x04,0x20,0xfa,0x04,0xf4,0x01,0xfa,0x0e,0xf6,0x44,0xea,0x06,0x0c, +0x02,0xfa,0x0e,0xf7,0x00,0xfa,0x0e,0xf4,0x4f,0xea,0x17,0x49,0x22,0x0c,0xbc,0xfb, +0xf9,0xf0,0x1f,0xfa,0x87,0xf8,0x09,0xfb,0x10,0xc6,0x42,0xea,0x06,0x46,0x00,0xfb, +0x08,0xf3,0xb3,0x42,0x09,0xd9,0xf6,0x19,0x00,0xf1,0xff,0x32,0x80,0xf0,0x22,0x81, +0xb3,0x42,0x40,0xf2,0x1f,0x81,0x02,0x38,0x3e,0x44,0xf6,0x1a,0xa2,0xb2,0xb6,0xfb, +0xf9,0xf3,0x09,0xfb,0x13,0x66,0x42,0xea,0x06,0x44,0x03,0xfb,0x08,0xf8,0xa0,0x45, +0x09,0xd9,0xe4,0x19,0x03,0xf1,0xff,0x32,0x80,0xf0,0x0a,0x81,0xa0,0x45,0x40,0xf2, +0x07,0x81,0x02,0x3b,0x3c,0x44,0xc8,0xeb,0x04,0x04,0x43,0xea,0x00,0x40,0x00,0x21, +0x00,0x2d,0x62,0xd0,0x24,0xfa,0x0e,0xf4,0x00,0x23,0x2c,0x60,0x6b,0x60,0xbd,0xe8, +0xf0,0x87,0x8b,0x42,0x07,0xd9,0x00,0x2d,0x55,0xd0,0x00,0x21,0x85,0xe8,0x41,0x00, +0x08,0x46,0xbd,0xe8,0xf0,0x87,0xb3,0xfa,0x83,0xf1,0x00,0x29,0x40,0xf0,0x90,0x80, +0xb3,0x42,0x02,0xd3,0x82,0x42,0x00,0xf2,0xf8,0x80,0x84,0x1a,0x66,0xeb,0x03,0x06, +0x01,0x20,0xb4,0x46,0x00,0x2d,0x40,0xd0,0x85,0xe8,0x10,0x10,0xbd,0xe8,0xf0,0x87, +0x12,0xb9,0x01,0x27,0xb7,0xfb,0xf2,0xf7,0xb7,0xfa,0x87,0xfe,0xbe,0xf1,0x00,0x0f, +0x35,0xd1,0xf3,0x1b,0x4f,0xea,0x17,0x48,0x1f,0xfa,0x87,0xfc,0x01,0x21,0xb3,0xfb, +0xf8,0xf0,0x22,0x0c,0x08,0xfb,0x10,0x36,0x42,0xea,0x06,0x46,0x0c,0xfb,0x00,0xf3, +0xb3,0x42,0x07,0xd9,0xf6,0x19,0x00,0xf1,0xff,0x32,0x02,0xd2,0xb3,0x42,0x00,0xf2, +0xce,0x80,0x10,0x46,0xf6,0x1a,0xa2,0xb2,0xb6,0xfb,0xf8,0xf3,0x08,0xfb,0x13,0x66, +0x42,0xea,0x06,0x44,0x0c,0xfb,0x03,0xfc,0xa4,0x45,0x07,0xd9,0xe4,0x19,0x03,0xf1, +0xff,0x32,0x02,0xd2,0xa4,0x45,0x00,0xf2,0xb5,0x80,0x13,0x46,0xcc,0xeb,0x04,0x04, +0x43,0xea,0x00,0x40,0x9c,0xe7,0x29,0x46,0x28,0x46,0xbd,0xe8,0xf0,0x87,0xce,0xf1, +0x20,0x01,0x06,0xfa,0x0e,0xf3,0x07,0xfa,0x0e,0xf7,0x20,0xfa,0x01,0xf9,0x4f,0xea, +0x17,0x48,0xce,0x40,0x49,0xea,0x03,0x09,0xb6,0xfb,0xf8,0xfa,0x4f,0xea,0x19,0x44, +0x08,0xfb,0x1a,0x66,0x1f,0xfa,0x87,0xfc,0x44,0xea,0x06,0x43,0x0a,0xfb,0x0c,0xf2, +0x9a,0x42,0x00,0xfa,0x0e,0xf4,0x0a,0xd9,0xdb,0x19,0x0a,0xf1,0xff,0x31,0x80,0xf0, +0x87,0x80,0x9a,0x42,0x40,0xf2,0x84,0x80,0xaa,0xf1,0x02,0x0a,0x3b,0x44,0x9b,0x1a, +0x1f,0xfa,0x89,0xf9,0xb3,0xfb,0xf8,0xf1,0x08,0xfb,0x11,0x33,0x49,0xea,0x03,0x43, +0x01,0xfb,0x0c,0xf6,0x9e,0x42,0x07,0xd9,0xdb,0x19,0x01,0xf1,0xff,0x32,0x6b,0xd2, +0x9e,0x42,0x69,0xd9,0x02,0x39,0x3b,0x44,0x9b,0x1b,0x41,0xea,0x0a,0x41,0x8e,0xe7, +0xc1,0xf1,0x20,0x0e,0x22,0xfa,0x0e,0xf4,0x8b,0x40,0x23,0x43,0x20,0xfa,0x0e,0xf7, +0x06,0xfa,0x01,0xf4,0x4f,0xea,0x13,0x4c,0x26,0xfa,0x0e,0xf6,0x3c,0x43,0xb6,0xfb, +0xfc,0xf9,0x27,0x0c,0x0c,0xfb,0x19,0x66,0x1f,0xfa,0x83,0xf8,0x47,0xea,0x06,0x46, +0x09,0xfb,0x08,0xf7,0xb7,0x42,0x02,0xfa,0x01,0xf2,0x00,0xfa,0x01,0xfa,0x08,0xd9, +0xf6,0x18,0x09,0xf1,0xff,0x30,0x41,0xd2,0xb7,0x42,0x3f,0xd9,0xa9,0xf1,0x02,0x09, +0x1e,0x44,0xf6,0x1b,0xa0,0xb2,0xb6,0xfb,0xfc,0xf4,0x0c,0xfb,0x14,0x66,0x40,0xea, +0x06,0x47,0x04,0xfb,0x08,0xf8,0xb8,0x45,0x07,0xd9,0xff,0x18,0x04,0xf1,0xff,0x30, +0x28,0xd2,0xb8,0x45,0x26,0xd9,0x02,0x3c,0x1f,0x44,0x44,0xea,0x09,0x40,0xc8,0xeb, +0x07,0x07,0xa0,0xfb,0x02,0x89,0x4f,0x45,0x44,0x46,0x4e,0x46,0x14,0xd3,0x29,0xd0, +0x65,0xb3,0xba,0xeb,0x04,0x03,0x67,0xeb,0x06,0x07,0x07,0xfa,0x0e,0xfe,0xcb,0x40, +0xcf,0x40,0x4e,0xea,0x03,0x03,0x85,0xe8,0x88,0x00,0x00,0x21,0xbd,0xe8,0xf0,0x87, +0x13,0x46,0xf8,0xe6,0x10,0x46,0xe0,0xe6,0xb8,0xeb,0x02,0x04,0x69,0xeb,0x03,0x06, +0x01,0x38,0xe5,0xe7,0x04,0x46,0xd8,0xe7,0x11,0x46,0x95,0xe7,0x81,0x46,0xc0,0xe7, +0x8a,0x46,0x7c,0xe7,0x02,0x3b,0x3c,0x44,0x48,0xe7,0x08,0x46,0x0a,0xe7,0x02,0x38, +0x3e,0x44,0x2f,0xe7,0xc2,0x45,0xe7,0xd3,0x3e,0x46,0xd1,0xe7,0x29,0x46,0xbd,0xe8, +0xf0,0x87,0x00,0xbf,0x70,0x47,0x00,0xbf,0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60, +0x00,0x23,0xfb,0x60,0xfb,0x68,0x5a,0x1c,0xfa,0x60,0x19,0x46,0x0c,0x4b,0x59,0xf8, +0x03,0x30,0x18,0x46,0x00,0xf0,0x7e,0xff,0x64,0x20,0x00,0xf0,0x79,0xf9,0xfb,0x68, +0x09,0x2b,0x00,0xd8,0xee,0xe7,0x00,0xbf,0x06,0x4b,0x59,0xf8,0x03,0x30,0x18,0x46, +0x00,0xf0,0x70,0xff,0x4f,0xf4,0x7a,0x70,0x00,0xf0,0x6a,0xf9,0xfa,0xe7,0x00,0xbf, +0x08,0x00,0x00,0x00,0x0c,0x00,0x00,0x00,0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60, +0x00,0x23,0xfb,0x60,0x00,0x23,0xfb,0x60,0x0c,0xe0,0xf9,0x68,0x0c,0x4b,0x59,0xf8, +0x03,0x30,0x18,0x46,0x00,0xf0,0x56,0xff,0x64,0x20,0x00,0xf0,0x51,0xf9,0xfb,0x68, +0x01,0x33,0xfb,0x60,0xfb,0x68,0x09,0x2b,0xef,0xd9,0x06,0x4b,0x59,0xf8,0x03,0x30, +0x18,0x46,0x00,0xf0,0x47,0xff,0x4f,0xf4,0x7a,0x70,0x00,0xf0,0x41,0xf9,0xfa,0xe7, +0x14,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x80,0xb5,0x82,0xb0,0x02,0xaf,0x05,0x23, +0x01,0x93,0x19,0x23,0x00,0x93,0x4f,0xf4,0x00,0x73,0x00,0x22,0x28,0x49,0x59,0xf8, +0x01,0x10,0x28,0x48,0x59,0xf8,0x00,0x00,0x00,0xf0,0x5a,0xf9,0x02,0x46,0x26,0x4b, +0x59,0xf8,0x03,0x30,0x1a,0x60,0x24,0x4b,0x59,0xf8,0x03,0x30,0x1b,0x68,0x00,0x2b, +0x05,0xd1,0x22,0x4b,0x59,0xf8,0x03,0x30,0x18,0x46,0x00,0xf0,0x1b,0xff,0x1e,0x4b, +0x59,0xf8,0x03,0x30,0x1b,0x68,0x18,0x46,0x00,0xf0,0x9c,0xf9,0x05,0x23,0x01,0x93, +0x18,0x23,0x00,0x93,0x4f,0xf4,0x00,0x73,0x00,0x22,0x19,0x49,0x59,0xf8,0x01,0x10, +0x18,0x48,0x59,0xf8,0x00,0x00,0x00,0xf0,0x33,0xf9,0x02,0x46,0x16,0x4b,0x59,0xf8, +0x03,0x30,0x1a,0x60,0x14,0x4b,0x59,0xf8,0x03,0x30,0x1b,0x68,0x00,0x2b,0x05,0xd1, +0x12,0x4b,0x59,0xf8,0x03,0x30,0x18,0x46,0x00,0xf0,0xf4,0xfe,0x0e,0x4b,0x59,0xf8, +0x03,0x30,0x1b,0x68,0x18,0x46,0x00,0xf0,0x75,0xf9,0x0d,0x4b,0x59,0xf8,0x03,0x30, +0x18,0x46,0x00,0xf0,0xe7,0xfe,0x4f,0xf4,0x7a,0x70,0x00,0xf0,0xe1,0xf8,0xfa,0xe7, +0x10,0x00,0x00,0x00,0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x24,0x00,0x00,0x00, +0x1c,0x00,0x00,0x00,0x28,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x2c,0x00,0x00,0x00, +0x30,0x00,0x00,0x00,0x80,0xb4,0x85,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60,0x7b,0x68, +0xfb,0x60,0x02,0xe0,0xfb,0x68,0x1b,0x68,0xfb,0x60,0xfb,0x68,0x1b,0x68,0x00,0x2b, +0xf8,0xd1,0xfb,0x68,0x3a,0x68,0x1a,0x60,0x3b,0x68,0x00,0x22,0x1a,0x60,0x00,0xbf, +0x14,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47,0x00,0x00,0x80,0xb5,0x82,0xb0, +0x00,0xaf,0x78,0x60,0x00,0xf0,0x44,0xf9,0x7b,0x68,0x19,0x46,0x05,0x4b,0x59,0xf8, +0x03,0x30,0x18,0x46,0xff,0xf7,0xd6,0xff,0x00,0xf0,0x5e,0xf9,0x00,0xbf,0x08,0x37, +0xbd,0x46,0x80,0xbd,0x10,0x01,0x00,0x00,0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60, +0x15,0x4b,0x59,0xf8,0x03,0x30,0xfb,0x60,0x00,0x23,0xbb,0x60,0x00,0xf0,0x28,0xf9, +0x18,0xe0,0xfb,0x68,0x1b,0x68,0xbb,0x60,0xbb,0x68,0x5b,0x68,0x7a,0x68,0x9a,0x42, +0x0d,0xd1,0xfb,0x68,0x1b,0x68,0x1a,0x68,0xfb,0x68,0x1a,0x60,0xbb,0x68,0x19,0x46, +0x09,0x4b,0x59,0xf8,0x03,0x30,0x18,0x1d,0xff,0xf7,0xac,0xff,0x06,0xe0,0xfb,0x68, +0x1b,0x68,0xfb,0x60,0xfb,0x68,0x1b,0x68,0x00,0x2b,0xe2,0xd1,0x00,0xf0,0x2c,0xf9, +0x00,0xbf,0x10,0x37,0xbd,0x46,0x80,0xbd,0x10,0x01,0x00,0x00,0x80,0xb5,0x84,0xb0, +0x00,0xaf,0x78,0x60,0x14,0x4b,0x59,0xf8,0x03,0x30,0x04,0x33,0xfb,0x60,0x00,0x23, +0xbb,0x60,0x00,0xf0,0xf5,0xf8,0x15,0xe0,0xfb,0x68,0x1b,0x68,0xbb,0x60,0xfb,0x68, +0x1b,0x68,0x1a,0x68,0xfb,0x68,0x1a,0x60,0xbb,0x68,0x5b,0x68,0x19,0x46,0x29,0x20, +0xff,0xf7,0x2a,0xfd,0xbb,0x68,0x9b,0x68,0x18,0x46,0x00,0xf0,0xef,0xfe,0xb8,0x68, +0x00,0xf0,0xec,0xfe,0xfb,0x68,0x1b,0x68,0x00,0x2b,0xe5,0xd1,0x00,0xf0,0xfc,0xf8, +0x00,0xbf,0x10,0x37,0xbd,0x46,0x80,0xbd,0x10,0x01,0x00,0x00,0x80,0xb5,0x00,0xaf, +0x2b,0x20,0xff,0xf7,0x11,0xfd,0x03,0x46,0x1a,0x46,0x07,0x4b,0x59,0xf8,0x03,0x30, +0x9a,0x60,0x06,0x4b,0x59,0xf8,0x03,0x30,0x1a,0x46,0x14,0x21,0x6d,0x20,0xff,0xf7, +0x03,0xfd,0x00,0xbf,0x80,0xbd,0x00,0xbf,0x10,0x01,0x00,0x00,0x34,0x00,0x00,0x00, +0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68,0xfb,0x60,0xfb,0x68,0x1b,0x69, +0xfa,0x68,0xd2,0x68,0x10,0x46,0x98,0x47,0xfb,0x68,0x5b,0x68,0x18,0x46,0xff,0xf7, +0x73,0xff,0x06,0x4b,0x59,0xf8,0x03,0x30,0x9b,0x68,0x14,0x22,0x19,0x46,0x69,0x20, +0xff,0xf7,0xe2,0xfc,0x00,0xbf,0x10,0x37,0xbd,0x46,0x80,0xbd,0x10,0x01,0x00,0x00, +0x90,0xb5,0x87,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68,0x13,0x4a,0x82,0xfb,0x03,0x12, +0x92,0x11,0xdb,0x17,0xd3,0x1a,0x4f,0xea,0xe3,0x74,0xc7,0xe9,0x02,0x34,0x7a,0x68, +0x0d,0x4b,0x83,0xfb,0x02,0x13,0x99,0x11,0xd3,0x17,0xcb,0x1a,0x4f,0xf4,0x7a,0x71, +0x01,0xfb,0x03,0xf3,0xd3,0x1a,0x09,0x4a,0x02,0xfb,0x03,0xf3,0x3b,0x61,0x07,0xf1, +0x08,0x02,0x07,0xf1,0x08,0x03,0x11,0x46,0x18,0x46,0x00,0xf0,0x0f,0xfe,0x03,0x46, +0x18,0x46,0x1c,0x37,0xbd,0x46,0x90,0xbd,0xd3,0x4d,0x62,0x10,0x40,0x42,0x0f,0x00, +0x80,0xb5,0x8e,0xb0,0x00,0xaf,0xf8,0x60,0xb9,0x60,0x7a,0x60,0x3b,0x60,0x14,0x20, +0x00,0xf0,0x58,0xfe,0x78,0x63,0x7b,0x6b,0x00,0x2b,0x01,0xd1,0x00,0x23,0x43,0xe0, +0x38,0x68,0x00,0xf0,0x4f,0xfe,0x02,0x46,0x7b,0x6b,0x9a,0x60,0x7b,0x6b,0x9b,0x68, +0x00,0x2b,0x35,0xd0,0x7b,0x6b,0xba,0x68,0x1a,0x61,0x7b,0x6b,0x7a,0x68,0xda,0x60, +0xfb,0x68,0x3b,0x61,0x1a,0x4b,0x59,0xf8,0x03,0x30,0x7b,0x61,0x7b,0x6b,0xbb,0x61, +0x7b,0x6b,0x9b,0x68,0xfb,0x61,0x3b,0x68,0x3b,0x62,0x97,0xf8,0x40,0x30,0x7b,0x62, +0x7b,0x6c,0xbb,0x62,0x00,0x23,0xfb,0x62,0x07,0xf1,0x10,0x03,0x19,0x46,0x28,0x20, +0xff,0xf7,0x72,0xfc,0x03,0x46,0x3b,0x63,0x3b,0x6b,0x00,0x2b,0x06,0xd0,0x7b,0x6b, +0x3a,0x6b,0x5a,0x60,0x78,0x6b,0xff,0xf7,0xd9,0xfe,0x07,0xe0,0x7b,0x6b,0x9b,0x68, +0x18,0x46,0x00,0xf0,0x2b,0xfe,0x78,0x6b,0x00,0xf0,0x28,0xfe,0x3b,0x6b,0x03,0xe0, +0x78,0x6b,0x00,0xf0,0x23,0xfe,0x00,0x23,0x18,0x46,0x38,0x37,0xbd,0x46,0x80,0xbd, +0x38,0x00,0x00,0x00,0x80,0xb5,0x82,0xb0,0x00,0xaf,0x78,0x60,0x79,0x68,0x2a,0x20, +0xff,0xf7,0x4a,0xfc,0x03,0x46,0x18,0x46,0x08,0x37,0xbd,0x46,0x80,0xbd,0x00,0x00, +0x80,0xb5,0x00,0xaf,0x0e,0x4b,0x59,0xf8,0x03,0x30,0x1b,0x68,0x00,0x2b,0x0c,0xd1, +0x01,0x21,0x0c,0x4b,0x59,0xf8,0x03,0x30,0x18,0x46,0x01,0xf0,0x3b,0xfe,0x02,0x46, +0x07,0x4b,0x59,0xf8,0x03,0x30,0x1a,0x60,0x08,0xe0,0x05,0x4b,0x59,0xf8,0x03,0x30, +0x1b,0x68,0x4f,0xf0,0xff,0x31,0x18,0x46,0x01,0xf0,0x3d,0xfe,0x00,0xbf,0x80,0xbd, +0x3c,0x00,0x00,0x00,0x40,0x00,0x00,0x00,0x80,0xb5,0x00,0xaf,0x07,0x4b,0x59,0xf8, +0x03,0x30,0x1b,0x68,0x00,0x2b,0x06,0xd0,0x04,0x4b,0x59,0xf8,0x03,0x30,0x1b,0x68, +0x18,0x46,0x01,0xf0,0x37,0xfe,0x00,0xbf,0x80,0xbd,0x00,0xbf,0x3c,0x00,0x00,0x00, +0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68,0x1b,0x68,0xfb,0x60,0x7b,0x68, +0x04,0x33,0xbb,0x60,0x0c,0x4b,0x59,0xf8,0x03,0x30,0x1a,0x46,0x0b,0x4b,0x59,0xf8, +0x03,0x30,0xd3,0x1a,0x19,0x46,0x09,0x4b,0x59,0xf8,0x03,0x30,0x18,0x46,0x00,0xf0, +0x7f,0xfd,0xff,0xf7,0xdb,0xfe,0xb9,0x68,0xf8,0x68,0xff,0xf7,0xd5,0xfd,0x03,0x46, +0x18,0x46,0x00,0xf0,0x37,0xfd,0x00,0xbf,0x14,0x01,0x00,0x00,0x18,0x01,0x00,0x00, +0x80,0xb4,0x8d,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60,0x47,0x4b,0x59,0xf8,0x03,0x30, +0x7b,0x62,0x46,0x4b,0x59,0xf8,0x03,0x30,0x3b,0x62,0x45,0x4b,0x59,0xf8,0x03,0x30, +0xfb,0x61,0x00,0x23,0xfb,0x62,0x7b,0x6a,0xbb,0x62,0x2e,0xe0,0xfb,0x6a,0x9b,0x00, +0x7a,0x68,0x13,0x44,0x1b,0x68,0x7a,0x6a,0x9a,0x42,0x10,0xd8,0xfb,0x6a,0x9b,0x00, +0x7a,0x68,0x13,0x44,0x1a,0x68,0x7b,0x6a,0xd3,0x1a,0x3b,0x61,0x79,0x68,0xfb,0x6a, +0x9b,0x00,0x7a,0x68,0x13,0x44,0x3a,0x69,0x0a,0x44,0x1a,0x60,0x0f,0xe0,0xfb,0x6a, +0x9b,0x00,0x7a,0x68,0x13,0x44,0x1a,0x68,0xfb,0x69,0xd3,0x1a,0x3b,0x61,0xfb,0x6a, +0x9b,0x00,0x7a,0x68,0x13,0x44,0x39,0x69,0x3a,0x68,0x0a,0x44,0x1a,0x60,0xbb,0x6a, +0x04,0x33,0xbb,0x62,0xfb,0x6a,0x01,0x33,0xfb,0x62,0xba,0x6a,0x3b,0x6a,0x9a,0x42, +0xcc,0xd3,0x28,0x4b,0x59,0xf8,0x03,0x30,0xbb,0x61,0x27,0x4b,0x59,0xf8,0x03,0x30, +0x7b,0x61,0x00,0x23,0xfb,0x62,0xbb,0x69,0xbb,0x62,0x33,0xe0,0xfb,0x6a,0x01,0x33, +0x9b,0x00,0xba,0x69,0x13,0x44,0x1b,0x68,0x17,0x2b,0x25,0xd1,0xfb,0x6a,0x9b,0x00, +0xba,0x69,0x13,0x44,0x1a,0x68,0x7b,0x6a,0xd3,0x1a,0x3b,0x61,0x7a,0x68,0x3b,0x69, +0x13,0x44,0xfb,0x60,0xfb,0x68,0x1b,0x68,0x7a,0x6a,0x9a,0x42,0x0a,0xd8,0xfb,0x68, +0x1a,0x68,0x7b,0x6a,0xd3,0x1a,0x3b,0x61,0x7a,0x68,0x3b,0x69,0x1a,0x44,0xfb,0x68, +0x1a,0x60,0x09,0xe0,0xfb,0x68,0x1a,0x68,0xfb,0x69,0xd3,0x1a,0x3b,0x61,0x3a,0x69, +0x3b,0x68,0x1a,0x44,0xfb,0x68,0x1a,0x60,0xbb,0x6a,0x08,0x33,0xbb,0x62,0xfb,0x6a, +0x02,0x33,0xfb,0x62,0x7b,0x69,0xba,0x6a,0x9a,0x42,0xc7,0xd3,0x00,0xbf,0x34,0x37, +0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47,0x20,0x01,0x00,0x00,0x04,0x01,0x00,0x00, +0x08,0x01,0x00,0x00,0x1c,0x01,0x00,0x00,0x0c,0x01,0x00,0x00,0x90,0xb5,0x85,0xb0, +0x00,0xaf,0x78,0x60,0x39,0x60,0x3b,0x68,0x0a,0x2b,0x1e,0xd1,0x7b,0x68,0xd3,0xe9, +0x00,0x34,0x18,0x46,0x21,0x46,0x4f,0xf0,0x0a,0x02,0x4f,0xf0,0x00,0x03,0xff,0xf7, +0x3f,0xfb,0x1c,0x46,0x13,0x46,0xfb,0x60,0x7b,0x68,0xd3,0xe9,0x00,0x34,0x18,0x46, +0x21,0x46,0x4f,0xf0,0x0a,0x02,0x4f,0xf0,0x00,0x03,0xff,0xf7,0x31,0xfb,0x03,0x46, +0x0c,0x46,0x7a,0x68,0xc2,0xe9,0x00,0x34,0x15,0xe0,0x7b,0x68,0xd3,0xe9,0x00,0x34, +0x03,0xf0,0x0f,0x03,0xfb,0x60,0x7b,0x68,0xd3,0xe9,0x00,0x34,0x19,0x46,0x22,0x46, +0x4f,0xf0,0x00,0x03,0x4f,0xf0,0x00,0x04,0x0b,0x09,0x43,0xea,0x02,0x73,0x14,0x09, +0x7a,0x68,0xc2,0xe9,0x00,0x34,0xfb,0x68,0x18,0x46,0x14,0x37,0xbd,0x46,0x90,0xbd, +0x90,0xb4,0x82,0xb0,0x00,0xaf,0x78,0x60,0x00,0x24,0x0d,0xe0,0x23,0x46,0x9b,0x00, +0x23,0x44,0x5b,0x00,0x18,0x46,0x7b,0x68,0x1b,0x68,0x59,0x1c,0x7a,0x68,0x11,0x60, +0x1b,0x78,0x03,0x44,0xa3,0xf1,0x30,0x04,0x7b,0x68,0x1b,0x68,0x1b,0x78,0x30,0x3b, +0x09,0x2b,0xeb,0xd9,0x23,0x46,0x18,0x46,0x08,0x37,0xbd,0x46,0x90,0xbc,0x70,0x47, +0xb0,0xb5,0x90,0xb0,0x00,0xaf,0xf8,0x60,0xb9,0x60,0xc7,0xe9,0x00,0x23,0xbb,0x6d, +0xbb,0x63,0x7c,0x6d,0xfb,0x6d,0x03,0xf0,0x40,0x03,0x00,0x2b,0x03,0xd0,0x74,0x4b, +0x59,0xf8,0x03,0x30,0x02,0xe0,0x73,0x4b,0x59,0xf8,0x03,0x30,0x7b,0x63,0xfb,0x6d, +0x03,0xf0,0x10,0x03,0x00,0x2b,0x03,0xd0,0xfb,0x6d,0x23,0xf0,0x01,0x03,0xfb,0x65, +0xfb,0x6d,0x03,0xf0,0x01,0x03,0x00,0x2b,0x01,0xd0,0x30,0x23,0x00,0xe0,0x20,0x23, +0x87,0xf8,0x33,0x30,0x00,0x23,0x87,0xf8,0x3f,0x30,0xfb,0x6d,0x03,0xf0,0x02,0x03, +0x00,0x2b,0x21,0xd0,0xd7,0xe9,0x00,0x23,0x00,0x2a,0x73,0xf1,0x00,0x03,0x0a,0xda, +0x2d,0x23,0x87,0xf8,0x3f,0x30,0xd7,0xe9,0x00,0x23,0x52,0x42,0x63,0xeb,0x43,0x03, +0xc7,0xe9,0x00,0x23,0x10,0xe0,0xfb,0x6d,0x03,0xf0,0x04,0x03,0x00,0x2b,0x03,0xd0, +0x2b,0x23,0x87,0xf8,0x3f,0x30,0x07,0xe0,0xfb,0x6d,0x03,0xf0,0x08,0x03,0x00,0x2b, +0x02,0xd0,0x20,0x23,0x87,0xf8,0x3f,0x30,0x00,0x25,0xd7,0xe9,0x00,0x23,0x13,0x43, +0x19,0xd1,0x2b,0x46,0x5d,0x1c,0x07,0xf1,0x40,0x02,0x13,0x44,0x30,0x22,0x03,0xf8, +0x30,0x2c,0x14,0xe0,0x3b,0x46,0x39,0x6d,0x18,0x46,0xff,0xf7,0x37,0xff,0x03,0x46, +0x1a,0x46,0x7b,0x6b,0x1a,0x44,0x2b,0x46,0x5d,0x1c,0x12,0x78,0x07,0xf1,0x40,0x01, +0x0b,0x44,0x03,0xf8,0x30,0x2c,0xd7,0xe9,0x00,0x23,0x13,0x43,0xea,0xd1,0xbb,0x6d, +0x9d,0x42,0x00,0xdd,0xbd,0x65,0xbb,0x6d,0xe4,0x1a,0xfb,0x6d,0x03,0xf0,0x11,0x03, +0x00,0x2b,0x15,0xd1,0x97,0xf8,0x3f,0x30,0x00,0x2b,0x0d,0xd0,0x00,0x2c,0x0b,0xdd, +0x01,0x3c,0x09,0xe0,0xfa,0x68,0xbb,0x68,0x9a,0x42,0x02,0xd2,0xfb,0x68,0x20,0x22, +0x1a,0x70,0xfb,0x68,0x01,0x33,0xfb,0x60,0x23,0x46,0x5c,0x1e,0x00,0x2b,0xf1,0xdc, +0x97,0xf8,0x3f,0x30,0x00,0x2b,0x0b,0xd0,0xfa,0x68,0xbb,0x68,0x9a,0x42,0x03,0xd2, +0xfb,0x68,0x97,0xf8,0x3f,0x20,0x1a,0x70,0x01,0x3c,0xfb,0x68,0x01,0x33,0xfb,0x60, +0xfb,0x6d,0x03,0xf0,0x10,0x03,0x00,0x2b,0x1a,0xd1,0x0a,0xe0,0xfa,0x68,0xbb,0x68, +0x9a,0x42,0x03,0xd2,0xfb,0x68,0x97,0xf8,0x33,0x20,0x1a,0x70,0xfb,0x68,0x01,0x33, +0xfb,0x60,0x23,0x46,0x5c,0x1e,0x00,0x2b,0xf0,0xdc,0x09,0xe0,0xfa,0x68,0xbb,0x68, +0x9a,0x42,0x02,0xd2,0xfb,0x68,0x30,0x22,0x1a,0x70,0xfb,0x68,0x01,0x33,0xfb,0x60, +0xbb,0x6d,0x5a,0x1e,0xba,0x65,0x9d,0x42,0xf0,0xdb,0x0d,0xe0,0xfa,0x68,0xbb,0x68, +0x9a,0x42,0x06,0xd2,0x07,0xf1,0x40,0x03,0x2b,0x44,0x13,0xf8,0x30,0x2c,0xfb,0x68, +0x1a,0x70,0xfb,0x68,0x01,0x33,0xfb,0x60,0x2b,0x46,0x5d,0x1e,0x00,0x2b,0x0d,0xdd, +0xbb,0x6b,0x00,0x2b,0xea,0xd1,0x09,0xe0,0xfa,0x68,0xbb,0x68,0x9a,0x42,0x02,0xd2, +0xfb,0x68,0x20,0x22,0x1a,0x70,0xfb,0x68,0x01,0x33,0xfb,0x60,0x23,0x46,0x5c,0x1e, +0x00,0x2b,0xf1,0xdc,0xfb,0x68,0x18,0x46,0x40,0x37,0xbd,0x46,0xb0,0xbd,0x00,0xbf, +0x44,0x00,0x00,0x00,0x48,0x00,0x00,0x00,0x90,0xb5,0x95,0xb0,0x04,0xaf,0xf8,0x60, +0xb9,0x60,0x7a,0x60,0x3b,0x60,0xfb,0x68,0xfb,0x62,0xfa,0x68,0xbb,0x68,0x13,0x44, +0xbb,0x62,0xba,0x6a,0xfb,0x68,0x9a,0x42,0x80,0xf0,0xde,0x82,0x4f,0xf0,0xff,0x33, +0xbb,0x62,0xba,0x6a,0xfb,0x68,0xd3,0x1a,0xbb,0x60,0xd5,0xe2,0x7b,0x68,0x1b,0x78, +0x25,0x2b,0x0b,0xd0,0xfa,0x6a,0xbb,0x6a,0x9a,0x42,0x03,0xd2,0x7b,0x68,0x1a,0x78, +0xfb,0x6a,0x1a,0x70,0xfb,0x6a,0x01,0x33,0xfb,0x62,0xc2,0xe2,0x00,0x23,0x87,0xf8, +0x22,0x30,0x7b,0x68,0x01,0x33,0x7b,0x60,0x7b,0x68,0x1b,0x78,0x2d,0x2b,0x06,0xd1, +0x97,0xf8,0x22,0x30,0x43,0xf0,0x10,0x03,0x87,0xf8,0x22,0x30,0xf1,0xe7,0x7b,0x68, +0x1b,0x78,0x2b,0x2b,0x06,0xd1,0x97,0xf8,0x22,0x30,0x43,0xf0,0x04,0x03,0x87,0xf8, +0x22,0x30,0xe6,0xe7,0x7b,0x68,0x1b,0x78,0x20,0x2b,0x06,0xd1,0x97,0xf8,0x22,0x30, +0x43,0xf0,0x08,0x03,0x87,0xf8,0x22,0x30,0xdb,0xe7,0x7b,0x68,0x1b,0x78,0x23,0x2b, +0x06,0xd1,0x97,0xf8,0x22,0x30,0x43,0xf0,0x20,0x03,0x87,0xf8,0x22,0x30,0xd0,0xe7, +0x7b,0x68,0x1b,0x78,0x30,0x2b,0x06,0xd1,0x97,0xf8,0x22,0x30,0x43,0xf0,0x01,0x03, +0x87,0xf8,0x22,0x30,0xc5,0xe7,0x00,0xbf,0x4f,0xf0,0xff,0x33,0xfb,0x61,0x7b,0x68, +0x1b,0x78,0x30,0x3b,0x09,0x2b,0x05,0xd8,0x3b,0x1d,0x18,0x46,0xff,0xf7,0x70,0xfe, +0xf8,0x61,0x17,0xe0,0x7b,0x68,0x1b,0x78,0x2a,0x2b,0x13,0xd1,0x7b,0x68,0x01,0x33, +0x7b,0x60,0x3b,0x68,0x1a,0x1d,0x3a,0x60,0x1b,0x68,0xfb,0x61,0xfb,0x69,0x00,0x2b, +0x08,0xda,0xfb,0x69,0x5b,0x42,0xfb,0x61,0x97,0xf8,0x22,0x30,0x43,0xf0,0x10,0x03, +0x87,0xf8,0x22,0x30,0x4f,0xf0,0xff,0x33,0xbb,0x61,0x7b,0x68,0x1b,0x78,0x2e,0x2b, +0x1e,0xd1,0x7b,0x68,0x01,0x33,0x7b,0x60,0x7b,0x68,0x1b,0x78,0x30,0x3b,0x09,0x2b, +0x05,0xd8,0x3b,0x1d,0x18,0x46,0xff,0xf7,0x43,0xfe,0xb8,0x61,0x0b,0xe0,0x7b,0x68, +0x1b,0x78,0x2a,0x2b,0x07,0xd1,0x7b,0x68,0x01,0x33,0x7b,0x60,0x3b,0x68,0x1a,0x1d, +0x3a,0x60,0x1b,0x68,0xbb,0x61,0xbb,0x69,0x00,0x2b,0x01,0xda,0x00,0x23,0xbb,0x61, +0x00,0x23,0x87,0xf8,0x21,0x30,0x7b,0x68,0x1b,0x78,0x68,0x2b,0x07,0xd0,0x7b,0x68, +0x1b,0x78,0x6c,0x2b,0x03,0xd0,0x7b,0x68,0x1b,0x78,0x4c,0x2b,0x14,0xd1,0x7b,0x68, +0x1b,0x78,0x87,0xf8,0x21,0x30,0x7b,0x68,0x01,0x33,0x7b,0x60,0x97,0xf8,0x21,0x30, +0x6c,0x2b,0x09,0xd1,0x7b,0x68,0x1b,0x78,0x6c,0x2b,0x05,0xd1,0x4c,0x23,0x87,0xf8, +0x21,0x30,0x7b,0x68,0x01,0x33,0x7b,0x60,0x0a,0x23,0x87,0xf8,0x23,0x30,0x7b,0x68, +0x1b,0x78,0x25,0x3b,0x53,0x2b,0x00,0xf2,0x83,0x81,0x02,0xa2,0x52,0xf8,0x23,0x30, +0x1a,0x44,0x10,0x47,0xbd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xdb,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0x51,0x01,0x00,0x00, +0xef,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xef,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xd3,0x02,0x00,0x00, +0x77,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00,0xc1,0x01,0x00,0x00, +0xfd,0x02,0x00,0x00,0x39,0x03,0x00,0x00,0xfd,0x02,0x00,0x00,0xfd,0x02,0x00,0x00, +0xe7,0x02,0x00,0x00,0x97,0xf8,0x22,0x30,0x03,0xf0,0x10,0x03,0x00,0x2b,0x10,0xd1, +0x09,0xe0,0xfa,0x6a,0xbb,0x6a,0x9a,0x42,0x02,0xd2,0xfb,0x6a,0x20,0x22,0x1a,0x70, +0xfb,0x6a,0x01,0x33,0xfb,0x62,0xfb,0x69,0x01,0x3b,0xfb,0x61,0xfb,0x69,0x00,0x2b, +0xef,0xdc,0x3b,0x68,0x1a,0x1d,0x3a,0x60,0x1b,0x68,0xfb,0x75,0xfa,0x6a,0xbb,0x6a, +0x9a,0x42,0x02,0xd2,0xfb,0x6a,0xfa,0x7d,0x1a,0x70,0xfb,0x6a,0x01,0x33,0xfb,0x62, +0x09,0xe0,0xfa,0x6a,0xbb,0x6a,0x9a,0x42,0x02,0xd2,0xfb,0x6a,0x20,0x22,0x1a,0x70, +0xfb,0x6a,0x01,0x33,0xfb,0x62,0xfb,0x69,0x01,0x3b,0xfb,0x61,0xfb,0x69,0x00,0x2b, +0xef,0xdc,0x26,0xe1,0x3b,0x68,0x1a,0x1d,0x3a,0x60,0x1b,0x68,0x7b,0x62,0x7b,0x6a, +0x00,0x2b,0x03,0xd1,0x9e,0x4b,0x59,0xf8,0x03,0x30,0x7b,0x62,0x78,0x6a,0x00,0xf0, +0x01,0xfa,0x03,0x46,0x3b,0x63,0xbb,0x69,0x00,0x2b,0x05,0xdd,0x3a,0x6b,0xbb,0x69, +0x9a,0x42,0x01,0xdd,0xbb,0x69,0x3b,0x63,0x97,0xf8,0x22,0x30,0x03,0xf0,0x10,0x03, +0x00,0x2b,0x10,0xd1,0x09,0xe0,0xfa,0x6a,0xbb,0x6a,0x9a,0x42,0x02,0xd2,0xfb,0x6a, +0x20,0x22,0x1a,0x70,0xfb,0x6a,0x01,0x33,0xfb,0x62,0xfb,0x69,0x5a,0x1e,0xfa,0x61, +0x3a,0x6b,0x9a,0x42,0xef,0xdb,0x00,0x23,0x7b,0x63,0x10,0xe0,0xfa,0x6a,0xbb,0x6a, +0x9a,0x42,0x03,0xd2,0x7b,0x6a,0x1a,0x78,0xfb,0x6a,0x1a,0x70,0xfb,0x6a,0x01,0x33, +0xfb,0x62,0x7b,0x6a,0x01,0x33,0x7b,0x62,0x7b,0x6b,0x01,0x33,0x7b,0x63,0x7a,0x6b, +0x3b,0x6b,0x9a,0x42,0xea,0xdb,0x09,0xe0,0xfa,0x6a,0xbb,0x6a,0x9a,0x42,0x02,0xd2, +0xfb,0x6a,0x20,0x22,0x1a,0x70,0xfb,0x6a,0x01,0x33,0xfb,0x62,0xfb,0x69,0x5a,0x1e, +0xfa,0x61,0x3a,0x6b,0x9a,0x42,0xef,0xdb,0xcb,0xe0,0xfb,0x69,0xb3,0xf1,0xff,0x3f, +0x07,0xd1,0x08,0x23,0xfb,0x61,0x97,0xf8,0x22,0x30,0x43,0xf0,0x01,0x03,0x87,0xf8, +0x22,0x30,0x3b,0x68,0x1a,0x1d,0x3a,0x60,0x1b,0x68,0x4f,0xea,0xe3,0x74,0x97,0xf8, +0x22,0x20,0x03,0x92,0xba,0x69,0x02,0x92,0xfa,0x69,0x01,0x92,0x10,0x22,0x00,0x92, +0x1a,0x46,0x23,0x46,0xb9,0x6a,0xf8,0x6a,0xff,0xf7,0xc2,0xfc,0xf8,0x62,0xa8,0xe0, +0xfa,0x6a,0xbb,0x6a,0x9a,0x42,0x02,0xd2,0xfb,0x6a,0x25,0x22,0x1a,0x70,0xfb,0x6a, +0x01,0x33,0xfb,0x62,0x9d,0xe0,0x08,0x23,0x87,0xf8,0x23,0x30,0x2f,0xe0,0x97,0xf8, +0x22,0x30,0x43,0xf0,0x40,0x03,0x87,0xf8,0x22,0x30,0x10,0x23,0x87,0xf8,0x23,0x30, +0x25,0xe0,0x97,0xf8,0x22,0x30,0x43,0xf0,0x02,0x03,0x87,0xf8,0x22,0x30,0x1d,0xe0, +0xfa,0x6a,0xbb,0x6a,0x9a,0x42,0x02,0xd2,0xfb,0x6a,0x25,0x22,0x1a,0x70,0xfb,0x6a, +0x01,0x33,0xfb,0x62,0x7b,0x68,0x1b,0x78,0x00,0x2b,0x0b,0xd0,0xfa,0x6a,0xbb,0x6a, +0x9a,0x42,0x03,0xd2,0x7b,0x68,0x1a,0x78,0xfb,0x6a,0x1a,0x70,0xfb,0x6a,0x01,0x33, +0xfb,0x62,0x6e,0xe0,0x7b,0x68,0x01,0x3b,0x7b,0x60,0x6a,0xe0,0x00,0xbf,0x97,0xf8, +0x21,0x30,0x4c,0x2b,0x0b,0xd1,0x3b,0x68,0x07,0x33,0x23,0xf0,0x07,0x03,0x03,0xf1, +0x08,0x02,0x3a,0x60,0xd3,0xe9,0x00,0x34,0xc7,0xe9,0x0e,0x34,0x46,0xe0,0x97,0xf8, +0x21,0x30,0x6c,0x2b,0x13,0xd1,0x3b,0x68,0x1a,0x1d,0x3a,0x60,0x1b,0x68,0x4f,0xf0, +0x00,0x04,0xc7,0xe9,0x0e,0x34,0x97,0xf8,0x22,0x30,0x03,0xf0,0x02,0x03,0x00,0x2b, +0x34,0xd0,0xbb,0x6b,0x4f,0xea,0xe3,0x74,0xc7,0xe9,0x0e,0x34,0x2e,0xe0,0x97,0xf8, +0x21,0x30,0x68,0x2b,0x17,0xd1,0x3b,0x68,0x1a,0x1d,0x3a,0x60,0x1b,0x68,0x9b,0xb2, +0x9b,0xb2,0x4f,0xf0,0x00,0x04,0xc7,0xe9,0x0e,0x34,0x97,0xf8,0x22,0x30,0x03,0xf0, +0x02,0x03,0x00,0x2b,0x1a,0xd0,0xb7,0xf9,0x38,0x30,0x1b,0xb2,0x4f,0xea,0xe3,0x74, +0xc7,0xe9,0x0e,0x34,0x12,0xe0,0x3b,0x68,0x1a,0x1d,0x3a,0x60,0x1b,0x68,0x4f,0xf0, +0x00,0x04,0xc7,0xe9,0x0e,0x34,0x97,0xf8,0x22,0x30,0x03,0xf0,0x02,0x03,0x00,0x2b, +0x04,0xd0,0xbb,0x6b,0x4f,0xea,0xe3,0x74,0xc7,0xe9,0x0e,0x34,0xd7,0xe9,0x0e,0x34, +0x97,0xf8,0x23,0x20,0x97,0xf8,0x22,0x10,0x03,0x91,0xb9,0x69,0x02,0x91,0xf9,0x69, +0x01,0x91,0x00,0x92,0x1a,0x46,0x23,0x46,0xb9,0x6a,0xf8,0x6a,0xff,0xf7,0x18,0xfc, +0xf8,0x62,0x7b,0x68,0x01,0x33,0x7b,0x60,0x7b,0x68,0x1b,0x78,0x00,0x2b,0x7f,0xf4, +0x25,0xad,0xbb,0x68,0x00,0x2b,0x0b,0xd0,0xfa,0x6a,0xbb,0x6a,0x9a,0x42,0x03,0xd2, +0xfb,0x6a,0x00,0x22,0x1a,0x70,0x03,0xe0,0xbb,0x6a,0x01,0x3b,0x00,0x22,0x1a,0x70, +0xfa,0x6a,0xfb,0x68,0xd3,0x1a,0x18,0x46,0x44,0x37,0xbd,0x46,0x90,0xbd,0x00,0xbf, +0x4c,0x00,0x00,0x00,0x0f,0xb4,0x80,0xb5,0x82,0xb0,0x00,0xaf,0x07,0xf1,0x14,0x03, +0x3b,0x60,0x3b,0x68,0x3a,0x69,0xff,0x21,0x0d,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7, +0xe3,0xfc,0x03,0x46,0x7b,0x60,0x7b,0x68,0xff,0x2b,0x01,0xd9,0xff,0x23,0x7b,0x60, +0x7a,0x68,0x07,0x4b,0x59,0xf8,0x03,0x30,0x19,0x46,0xff,0x20,0xfe,0xf7,0xbc,0xfe, +0x00,0xbf,0x08,0x37,0xbd,0x46,0xbd,0xe8,0x80,0x40,0x04,0xb0,0x70,0x47,0x00,0xbf, +0x50,0x00,0x00,0x00,0x80,0xb5,0x82,0xb0,0x00,0xaf,0x78,0x60,0x79,0x68,0x01,0x20, +0xfe,0xf7,0xaa,0xfe,0x00,0xbf,0x08,0x37,0xbd,0x46,0x80,0xbd,0x80,0xb5,0x82,0xb0, +0x00,0xaf,0x78,0x60,0x39,0x60,0x3a,0x68,0x79,0x68,0x0a,0x20,0xfe,0xf7,0x9c,0xfe, +0x03,0x46,0x18,0x46,0x08,0x37,0xbd,0x46,0x80,0xbd,0x00,0x00,0x90,0xb5,0x83,0xb0, +0x00,0xaf,0x78,0x60,0x39,0x60,0x0d,0x4b,0x59,0xf8,0x03,0x30,0x1b,0x68,0x4f,0xf0, +0xff,0x31,0x18,0x46,0x01,0xf0,0x9f,0xf8,0x39,0x68,0x78,0x68,0x01,0xf0,0x02,0xf8, +0x04,0x46,0x06,0x4b,0x59,0xf8,0x03,0x30,0x1b,0x68,0x18,0x46,0x01,0xf0,0xa2,0xf8, +0x23,0x46,0x18,0x46,0x0c,0x37,0xbd,0x46,0x90,0xbd,0x00,0xbf,0x58,0x00,0x00,0x00, +0x80,0xb5,0x82,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60,0x0f,0x4b,0x59,0xf8,0x03,0x30, +0x1b,0x68,0x00,0x2b,0x14,0xd1,0x01,0x21,0x0c,0x4b,0x59,0xf8,0x03,0x30,0x18,0x46, +0x01,0xf0,0x68,0xf8,0x02,0x46,0x0a,0x4b,0x59,0xf8,0x03,0x30,0x1a,0x60,0x39,0x68, +0x78,0x68,0x00,0xf0,0xb1,0xff,0x02,0x46,0x03,0x4b,0x59,0xf8,0x03,0x30,0x1a,0x60, +0x00,0xbf,0x08,0x37,0xbd,0x46,0x80,0xbd,0x54,0x00,0x00,0x00,0x5c,0x00,0x00,0x00, +0x58,0x00,0x00,0x00,0x80,0xb5,0x82,0xb0,0x00,0xaf,0x78,0x60,0x06,0x4b,0x59,0xf8, +0x03,0x30,0x1b,0x68,0x79,0x68,0x18,0x46,0xff,0xf7,0xa8,0xff,0x03,0x46,0x18,0x46, +0x08,0x37,0xbd,0x46,0x80,0xbd,0x00,0xbf,0x54,0x00,0x00,0x00,0x80,0xb5,0x82,0xb0, +0x00,0xaf,0x78,0x60,0x0d,0x4b,0x59,0xf8,0x03,0x30,0x1b,0x68,0x4f,0xf0,0xff,0x31, +0x18,0x46,0x01,0xf0,0x40,0xf8,0x0a,0x4b,0x59,0xf8,0x03,0x30,0x1b,0x68,0x79,0x68, +0x18,0x46,0x00,0xf0,0xbb,0xff,0x05,0x4b,0x59,0xf8,0x03,0x30,0x1b,0x68,0x18,0x46, +0x01,0xf0,0x40,0xf8,0x00,0xbf,0x08,0x37,0xbd,0x46,0x80,0xbd,0x58,0x00,0x00,0x00, +0x54,0x00,0x00,0x00,0x80,0xb4,0x85,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68,0xbb,0x60, +0x0a,0xe0,0x7b,0x68,0x1b,0x78,0x00,0x2b,0x03,0xd1,0x7a,0x68,0xbb,0x68,0xd3,0x1a, +0x26,0xe0,0x7b,0x68,0x01,0x33,0x7b,0x60,0x7b,0x68,0x03,0xf0,0x03,0x03,0x00,0x2b, +0xef,0xd1,0x7b,0x68,0xfb,0x60,0x02,0xe0,0xfb,0x68,0x04,0x33,0xfb,0x60,0xfb,0x68, +0x1b,0x68,0xa3,0xf1,0x01,0x32,0xfb,0x68,0x1b,0x68,0xdb,0x43,0x13,0x40,0x03,0xf0, +0x80,0x33,0x00,0x2b,0xf0,0xd0,0xfb,0x68,0x7b,0x60,0x02,0xe0,0x7b,0x68,0x01,0x33, +0x7b,0x60,0x7b,0x68,0x1b,0x78,0x00,0x2b,0xf8,0xd1,0x7a,0x68,0xbb,0x68,0xd3,0x1a, +0x18,0x46,0x14,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47,0x80,0xb4,0x83,0xb0, +0x00,0xaf,0x78,0x60,0x7b,0x68,0x93,0xfa,0xa3,0xf2,0xb2,0xfa,0x82,0xf2,0x00,0x2b, +0x01,0xd1,0x4f,0xf0,0xff,0x32,0x53,0x1c,0x01,0x3b,0x18,0x46,0x0c,0x37,0xbd,0x46, +0x5d,0xf8,0x04,0x7b,0x70,0x47,0x80,0xb4,0x85,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68, +0x00,0x2b,0x05,0xd0,0x7b,0x68,0xb3,0xfa,0x83,0xf3,0xc3,0xf1,0x20,0x03,0x00,0xe0, +0x00,0x23,0xfb,0x60,0xfb,0x68,0x01,0x3b,0x18,0x46,0x14,0x37,0xbd,0x46,0x5d,0xf8, +0x04,0x7b,0x70,0x47,0x80,0xb4,0x83,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68,0x5a,0x68, +0x01,0x21,0x02,0x23,0x0b,0x43,0xdb,0x43,0x13,0x40,0x18,0x46,0x0c,0x37,0xbd,0x46, +0x5d,0xf8,0x04,0x7b,0x70,0x47,0x80,0xb4,0x85,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60, +0x7b,0x68,0x5b,0x68,0xfb,0x60,0x01,0x22,0x02,0x23,0x1a,0x43,0xfb,0x68,0x1a,0x40, +0x3b,0x68,0x1a,0x43,0x7b,0x68,0x5a,0x60,0x00,0xbf,0x14,0x37,0xbd,0x46,0x5d,0xf8, +0x04,0x7b,0x70,0x47,0x80,0xb5,0x82,0xb0,0x00,0xaf,0x78,0x60,0x78,0x68,0xff,0xf7, +0xd1,0xff,0x03,0x46,0x00,0x2b,0x0c,0xbf,0x01,0x23,0x00,0x23,0xdb,0xb2,0x18,0x46, +0x08,0x37,0xbd,0x46,0x80,0xbd,0x80,0xb4,0x83,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68, +0x5b,0x68,0x01,0x22,0x13,0x40,0x18,0x46,0x0c,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b, +0x70,0x47,0x80,0xb4,0x83,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68,0x5b,0x68,0x01,0x22, +0x1a,0x43,0x7b,0x68,0x5a,0x60,0x00,0xbf,0x0c,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b, +0x70,0x47,0x80,0xb4,0x83,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68,0x5a,0x68,0x01,0x23, +0xdb,0x43,0x1a,0x40,0x7b,0x68,0x5a,0x60,0x00,0xbf,0x0c,0x37,0xbd,0x46,0x5d,0xf8, +0x04,0x7b,0x70,0x47,0x80,0xb4,0x83,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68,0x5b,0x68, +0x02,0x22,0x13,0x40,0x18,0x46,0x0c,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47, +0x80,0xb4,0x83,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68,0x5b,0x68,0x02,0x22,0x1a,0x43, +0x7b,0x68,0x5a,0x60,0x00,0xbf,0x0c,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47, +0x80,0xb4,0x83,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68,0x5a,0x68,0x02,0x23,0xdb,0x43, +0x1a,0x40,0x7b,0x68,0x5a,0x60,0x00,0xbf,0x0c,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b, +0x70,0x47,0x80,0xb4,0x83,0xb0,0x00,0xaf,0x78,0x60,0x08,0x23,0x5b,0x42,0x7a,0x68, +0x13,0x44,0x18,0x46,0x0c,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47,0x80,0xb4, +0x83,0xb0,0x00,0xaf,0x78,0x60,0x08,0x22,0x7b,0x68,0x13,0x44,0x18,0x46,0x0c,0x37, +0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47,0x80,0xb4,0x83,0xb0,0x00,0xaf,0x78,0x60, +0x39,0x60,0x7a,0x68,0x3b,0x68,0x13,0x44,0x18,0x46,0x0c,0x37,0xbd,0x46,0x5d,0xf8, +0x04,0x7b,0x70,0x47,0x80,0xb5,0x82,0xb0,0x00,0xaf,0x78,0x60,0x78,0x68,0xff,0xf7, +0xa1,0xff,0x03,0x46,0x00,0x2b,0x10,0xd1,0x40,0xf2,0xd3,0x13,0x0a,0x4a,0x59,0xf8, +0x02,0x20,0x0a,0x49,0x59,0xf8,0x01,0x10,0x09,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7, +0xf9,0xfd,0x4f,0xf0,0xff,0x30,0xff,0xf7,0x1d,0xfe,0x7b,0x68,0x1b,0x68,0x18,0x46, +0x08,0x37,0xbd,0x46,0x80,0xbd,0x00,0xbf,0x70,0x00,0x00,0x00,0x68,0x00,0x00,0x00, +0x6c,0x00,0x00,0x00,0x90,0xb5,0x85,0xb0,0x00,0xaf,0x78,0x60,0x78,0x68,0xff,0xf7, +0xb6,0xff,0x04,0x46,0x78,0x68,0xff,0xf7,0x0d,0xff,0x02,0x46,0x04,0x23,0xd3,0x1a, +0x19,0x46,0x20,0x46,0xff,0xf7,0xb8,0xff,0xf8,0x60,0x78,0x68,0xff,0xf7,0x2a,0xff, +0x03,0x46,0x00,0x2b,0x10,0xd0,0x4f,0xf4,0xee,0x73,0x0a,0x4a,0x59,0xf8,0x02,0x20, +0x09,0x49,0x59,0xf8,0x01,0x10,0x09,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7,0xc2,0xfd, +0x4f,0xf0,0xff,0x30,0xff,0xf7,0xe6,0xfd,0xfb,0x68,0x18,0x46,0x14,0x37,0xbd,0x46, +0x90,0xbd,0x00,0xbf,0x78,0x00,0x00,0x00,0x74,0x00,0x00,0x00,0x6c,0x00,0x00,0x00, +0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60,0x78,0x68,0xff,0xf7,0xc3,0xff,0xf8,0x60, +0xfb,0x68,0x7a,0x68,0x1a,0x60,0xfb,0x68,0x18,0x46,0x10,0x37,0xbd,0x46,0x80,0xbd, +0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60,0x78,0x68,0xff,0xf7,0xe9,0xff,0xf8,0x60, +0xf8,0x68,0xff,0xf7,0x3d,0xff,0x78,0x68,0xff,0xf7,0x0b,0xff,0x00,0xbf,0x10,0x37, +0xbd,0x46,0x80,0xbd,0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60,0x78,0x68,0xff,0xf7, +0xa1,0xff,0xf8,0x60,0xf8,0x68,0xff,0xf7,0x3b,0xff,0x78,0x68,0xff,0xf7,0x09,0xff, +0x78,0x68,0xff,0xf7,0xaf,0xfe,0x02,0x46,0x0f,0x4b,0x59,0xf8,0x03,0x30,0x1b,0x68, +0x13,0x44,0x0d,0x4a,0x59,0xf8,0x02,0x20,0x13,0x60,0x0c,0x4b,0x59,0xf8,0x03,0x30, +0x1a,0x68,0x09,0x4b,0x59,0xf8,0x03,0x30,0x1b,0x68,0x9a,0x42,0x07,0xd2,0x06,0x4b, +0x59,0xf8,0x03,0x30,0x1b,0x68,0x05,0x4a,0x59,0xf8,0x02,0x20,0x13,0x60,0x00,0xbf, +0x10,0x37,0xbd,0x46,0x80,0xbd,0x00,0xbf,0x60,0x00,0x00,0x00,0x64,0x00,0x00,0x00, +0x80,0xb5,0x82,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60,0x3b,0x68,0x5a,0x1e,0x3b,0x68, +0x13,0x40,0x00,0x2b,0x10,0xd0,0x40,0xf2,0x01,0x23,0x0d,0x4a,0x59,0xf8,0x02,0x20, +0x0c,0x49,0x59,0xf8,0x01,0x10,0x0c,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7,0x42,0xfd, +0x4f,0xf0,0xff,0x30,0xff,0xf7,0x66,0xfd,0x3a,0x68,0x7b,0x68,0x13,0x44,0x5a,0x1e, +0x3b,0x68,0x5b,0x42,0x13,0x40,0x18,0x46,0x08,0x37,0xbd,0x46,0x80,0xbd,0x00,0xbf, +0x80,0x00,0x00,0x00,0x7c,0x00,0x00,0x00,0x6c,0x00,0x00,0x00,0x80,0xb5,0x82,0xb0, +0x00,0xaf,0x78,0x60,0x39,0x60,0x3b,0x68,0x5a,0x1e,0x3b,0x68,0x13,0x40,0x00,0x2b, +0x10,0xd0,0x40,0xf2,0x07,0x23,0x0b,0x4a,0x59,0xf8,0x02,0x20,0x0a,0x49,0x59,0xf8, +0x01,0x10,0x0a,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7,0x14,0xfd,0x4f,0xf0,0xff,0x30, +0xff,0xf7,0x38,0xfd,0x3b,0x68,0x5a,0x42,0x7b,0x68,0x13,0x40,0x18,0x46,0x08,0x37, +0xbd,0x46,0x80,0xbd,0x84,0x00,0x00,0x00,0x7c,0x00,0x00,0x00,0x6c,0x00,0x00,0x00, +0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60,0x7a,0x68,0x3b,0x68,0x13,0x44, +0x5a,0x1e,0x3b,0x68,0x5b,0x42,0x13,0x40,0xfb,0x60,0x3b,0x68,0x5a,0x1e,0x3b,0x68, +0x13,0x40,0x00,0x2b,0x10,0xd0,0x40,0xf2,0x0f,0x23,0x0a,0x4a,0x59,0xf8,0x02,0x20, +0x09,0x49,0x59,0xf8,0x01,0x10,0x09,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7,0xe2,0xfc, +0x4f,0xf0,0xff,0x30,0xff,0xf7,0x06,0xfd,0xfb,0x68,0x18,0x46,0x10,0x37,0xbd,0x46, +0x80,0xbd,0x00,0xbf,0x88,0x00,0x00,0x00,0x7c,0x00,0x00,0x00,0x6c,0x00,0x00,0x00, +0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60,0x00,0x23,0xfb,0x60,0x7b,0x68, +0x00,0x2b,0x0f,0xd0,0x39,0x68,0x78,0x68,0xff,0xf7,0x6a,0xff,0xb8,0x60,0x4f,0xf0, +0x80,0x42,0xbb,0x68,0x93,0x42,0x05,0xd2,0x0c,0x22,0xbb,0x68,0x93,0x42,0x38,0xbf, +0x13,0x46,0xfb,0x60,0xfb,0x68,0x18,0x46,0x10,0x37,0xbd,0x46,0x80,0xbd,0x80,0xb5, +0x86,0xb0,0x00,0xaf,0xf8,0x60,0xb9,0x60,0x7a,0x60,0xfb,0x68,0x7f,0x2b,0x08,0xd8, +0x00,0x23,0x7b,0x61,0xfb,0x68,0x00,0x2b,0x00,0xda,0x03,0x33,0x9b,0x10,0x3b,0x61, +0x0e,0xe0,0xf8,0x68,0xff,0xf7,0xb7,0xfd,0x78,0x61,0x7b,0x69,0x05,0x3b,0xfa,0x68, +0x22,0xfa,0x03,0xf3,0x83,0xf0,0x20,0x03,0x3b,0x61,0x7b,0x69,0x06,0x3b,0x7b,0x61, +0xbb,0x68,0x7a,0x69,0x1a,0x60,0x7b,0x68,0x3a,0x69,0x1a,0x60,0x00,0xbf,0x18,0x37, +0xbd,0x46,0x80,0xbd,0x80,0xb5,0x86,0xb0,0x00,0xaf,0xf8,0x60,0xb9,0x60,0x7a,0x60, +0xfb,0x68,0x7f,0x2b,0x0d,0xd9,0xf8,0x68,0xff,0xf7,0x95,0xfd,0x03,0x46,0x05,0x3b, +0x01,0x22,0x02,0xfa,0x03,0xf3,0x01,0x3b,0x7b,0x61,0xfa,0x68,0x7b,0x69,0x13,0x44, +0xfb,0x60,0x7a,0x68,0xb9,0x68,0xf8,0x68,0xff,0xf7,0xb9,0xff,0x00,0xbf,0x18,0x37, +0xbd,0x46,0x80,0xbd,0x80,0xb5,0x88,0xb0,0x00,0xaf,0xf8,0x60,0xb9,0x60,0x7a,0x60, +0xbb,0x68,0x1b,0x68,0xfb,0x61,0x7b,0x68,0x1b,0x68,0x7b,0x61,0xfa,0x68,0xfb,0x69, +0x04,0x33,0x9b,0x00,0x13,0x44,0x5a,0x68,0x4f,0xf0,0xff,0x31,0x7b,0x69,0x01,0xfa, +0x03,0xf3,0x13,0x40,0xbb,0x61,0xbb,0x69,0x00,0x2b,0x1c,0xd1,0xfb,0x68,0x1a,0x69, +0xfb,0x69,0x01,0x33,0x4f,0xf0,0xff,0x31,0x01,0xfa,0x03,0xf3,0x13,0x40,0x3b,0x61, +0x3b,0x69,0x00,0x2b,0x01,0xd1,0x00,0x23,0x31,0xe0,0x38,0x69,0xff,0xf7,0x3e,0xfd, +0xf8,0x61,0xbb,0x68,0xfa,0x69,0x1a,0x60,0xfa,0x68,0xfb,0x69,0x04,0x33,0x9b,0x00, +0x13,0x44,0x5b,0x68,0xbb,0x61,0xbb,0x69,0x00,0x2b,0x10,0xd1,0x40,0xf2,0x62,0x23, +0x11,0x4a,0x59,0xf8,0x02,0x20,0x11,0x49,0x59,0xf8,0x01,0x10,0x10,0x48,0x59,0xf8, +0x00,0x00,0xff,0xf7,0x1f,0xfc,0x4f,0xf0,0xff,0x30,0xff,0xf7,0x43,0xfc,0xb8,0x69, +0xff,0xf7,0x1c,0xfd,0x78,0x61,0x7b,0x68,0x7a,0x69,0x1a,0x60,0xfa,0x68,0xfb,0x69, +0x59,0x01,0x7b,0x69,0x0b,0x44,0x1c,0x33,0x9b,0x00,0x13,0x44,0x5b,0x68,0x18,0x46, +0x20,0x37,0xbd,0x46,0x80,0xbd,0x00,0xbf,0x90,0x00,0x00,0x00,0x8c,0x00,0x00,0x00, +0x6c,0x00,0x00,0x00,0x80,0xb5,0x86,0xb0,0x00,0xaf,0xf8,0x60,0xb9,0x60,0x7a,0x60, +0x3b,0x60,0xbb,0x68,0xdb,0x68,0x7b,0x61,0xbb,0x68,0x9b,0x68,0x3b,0x61,0x7b,0x69, +0x00,0x2b,0x10,0xd1,0x40,0xf2,0x6f,0x23,0x35,0x4a,0x59,0xf8,0x02,0x20,0x35,0x49, +0x59,0xf8,0x01,0x10,0x34,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7,0xe3,0xfb,0x4f,0xf0, +0xff,0x30,0xff,0xf7,0x07,0xfc,0x3b,0x69,0x00,0x2b,0x10,0xd1,0x4f,0xf4,0x1c,0x73, +0x2b,0x4a,0x59,0xf8,0x02,0x20,0x2d,0x49,0x59,0xf8,0x01,0x10,0x2a,0x48,0x59,0xf8, +0x00,0x00,0xff,0xf7,0xcf,0xfb,0x4f,0xf0,0xff,0x30,0xff,0xf7,0xf3,0xfb,0x3b,0x69, +0x7a,0x69,0xda,0x60,0x7b,0x69,0x3a,0x69,0x9a,0x60,0xfa,0x68,0x7b,0x68,0x59,0x01, +0x3b,0x68,0x0b,0x44,0x1c,0x33,0x9b,0x00,0x13,0x44,0x5b,0x68,0xba,0x68,0x9a,0x42, +0x31,0xd1,0xfa,0x68,0x7b,0x68,0x59,0x01,0x3b,0x68,0x0b,0x44,0x1c,0x33,0x9b,0x00, +0x13,0x44,0x3a,0x69,0x5a,0x60,0xfb,0x68,0x3a,0x69,0x9a,0x42,0x23,0xd1,0xfa,0x68, +0x7b,0x68,0x04,0x33,0x9b,0x00,0x13,0x44,0x5b,0x68,0x01,0x21,0x3a,0x68,0x01,0xfa, +0x02,0xf2,0xd2,0x43,0x1a,0x40,0xf9,0x68,0x7b,0x68,0x04,0x33,0x9b,0x00,0x0b,0x44, +0x5a,0x60,0xfa,0x68,0x7b,0x68,0x04,0x33,0x9b,0x00,0x13,0x44,0x5b,0x68,0x00,0x2b, +0x09,0xd1,0xfb,0x68,0x1b,0x69,0x01,0x21,0x7a,0x68,0x01,0xfa,0x02,0xf2,0xd2,0x43, +0x1a,0x40,0xfb,0x68,0x1a,0x61,0x00,0xbf,0x18,0x37,0xbd,0x46,0x80,0xbd,0x00,0xbf, +0x9c,0x00,0x00,0x00,0x94,0x00,0x00,0x00,0x6c,0x00,0x00,0x00,0x98,0x00,0x00,0x00, +0x90,0xb5,0x87,0xb0,0x00,0xaf,0xf8,0x60,0xb9,0x60,0x7a,0x60,0x3b,0x60,0xfa,0x68, +0x7b,0x68,0x59,0x01,0x3b,0x68,0x0b,0x44,0x1c,0x33,0x9b,0x00,0x13,0x44,0x5b,0x68, +0x7b,0x61,0x7b,0x69,0x00,0x2b,0x10,0xd1,0x40,0xf2,0x8b,0x23,0x39,0x4a,0x59,0xf8, +0x02,0x20,0x39,0x49,0x59,0xf8,0x01,0x10,0x38,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7, +0x59,0xfb,0x4f,0xf0,0xff,0x30,0xff,0xf7,0x7d,0xfb,0xbb,0x68,0x00,0x2b,0x10,0xd1, +0x4f,0xf4,0x23,0x73,0x2f,0x4a,0x59,0xf8,0x02,0x20,0x31,0x49,0x59,0xf8,0x01,0x10, +0x2e,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7,0x45,0xfb,0x4f,0xf0,0xff,0x30,0xff,0xf7, +0x69,0xfb,0xbb,0x68,0x7a,0x69,0x9a,0x60,0xfa,0x68,0xbb,0x68,0xda,0x60,0x7b,0x69, +0xba,0x68,0xda,0x60,0xb8,0x68,0xff,0xf7,0x0a,0xfd,0x04,0x46,0xb8,0x68,0xff,0xf7, +0x06,0xfd,0x03,0x46,0x04,0x21,0x18,0x46,0xff,0xf7,0x2a,0xfe,0x03,0x46,0x9c,0x42, +0x10,0xd0,0x40,0xf2,0x91,0x23,0x1b,0x4a,0x59,0xf8,0x02,0x20,0x1d,0x49,0x59,0xf8, +0x01,0x10,0x1a,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7,0x1c,0xfb,0x4f,0xf0,0xff,0x30, +0xff,0xf7,0x40,0xfb,0xfa,0x68,0x7b,0x68,0x59,0x01,0x3b,0x68,0x0b,0x44,0x1c,0x33, +0x9b,0x00,0x13,0x44,0xba,0x68,0x5a,0x60,0xfb,0x68,0x1b,0x69,0x01,0x21,0x7a,0x68, +0x01,0xfa,0x02,0xf2,0x1a,0x43,0xfb,0x68,0x1a,0x61,0xfa,0x68,0x7b,0x68,0x04,0x33, +0x9b,0x00,0x13,0x44,0x5b,0x68,0x01,0x21,0x3a,0x68,0x01,0xfa,0x02,0xf2,0x1a,0x43, +0xf9,0x68,0x7b,0x68,0x04,0x33,0x9b,0x00,0x0b,0x44,0x5a,0x60,0x00,0xbf,0x1c,0x37, +0xbd,0x46,0x90,0xbd,0xac,0x00,0x00,0x00,0xa0,0x00,0x00,0x00,0x6c,0x00,0x00,0x00, +0xa4,0x00,0x00,0x00,0xa8,0x00,0x00,0x00,0x80,0xb5,0x84,0xb0,0x00,0xaf,0x78,0x60, +0x39,0x60,0x38,0x68,0xff,0xf7,0x0e,0xfc,0x07,0xf1,0x08,0x02,0x07,0xf1,0x0c,0x03, +0x19,0x46,0xff,0xf7,0x24,0xfe,0xfa,0x68,0xbb,0x68,0x39,0x68,0x78,0x68,0xff,0xf7, +0xd1,0xfe,0x00,0xbf,0x10,0x37,0xbd,0x46,0x80,0xbd,0x80,0xb5,0x84,0xb0,0x00,0xaf, +0x78,0x60,0x39,0x60,0x38,0x68,0xff,0xf7,0xf5,0xfb,0x07,0xf1,0x08,0x02,0x07,0xf1, +0x0c,0x03,0x19,0x46,0xff,0xf7,0x0b,0xfe,0xfa,0x68,0xbb,0x68,0x39,0x68,0x78,0x68, +0xff,0xf7,0x3e,0xff,0x00,0xbf,0x10,0x37,0xbd,0x46,0x80,0xbd,0x80,0xb5,0x82,0xb0, +0x00,0xaf,0x78,0x60,0x39,0x60,0x78,0x68,0xff,0xf7,0xdc,0xfb,0x02,0x46,0x3b,0x68, +0x10,0x33,0x9a,0x42,0x2c,0xbf,0x01,0x23,0x00,0x23,0xdb,0xb2,0x18,0x46,0x08,0x37, +0xbd,0x46,0x80,0xbd,0x90,0xb5,0x85,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60,0x78,0x68, +0xff,0xf7,0x6d,0xfc,0x04,0x22,0x3b,0x68,0x9b,0x1a,0x19,0x46,0xff,0xf7,0x74,0xfc, +0xf8,0x60,0x78,0x68,0xff,0xf7,0xbe,0xfb,0x01,0x46,0x04,0x22,0x3b,0x68,0x13,0x44, +0xcb,0x1a,0xbb,0x60,0xf8,0x68,0xff,0xf7,0x5a,0xfc,0x04,0x46,0xf8,0x68,0xff,0xf7, +0x56,0xfc,0x03,0x46,0x04,0x21,0x18,0x46,0xff,0xf7,0x7a,0xfd,0x03,0x46,0x9c,0x42, +0x10,0xd0,0x40,0xf2,0xba,0x23,0x29,0x4a,0x59,0xf8,0x02,0x20,0x28,0x49,0x59,0xf8, +0x01,0x10,0x28,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7,0x6c,0xfa,0x4f,0xf0,0xff,0x30, +0xff,0xf7,0x90,0xfa,0x78,0x68,0xff,0xf7,0x95,0xfb,0x01,0x46,0xba,0x68,0x3b,0x68, +0x13,0x44,0x04,0x22,0x13,0x44,0x99,0x42,0x10,0xd0,0x40,0xf2,0xbd,0x23,0x1b,0x4a, +0x59,0xf8,0x02,0x20,0x1c,0x49,0x59,0xf8,0x01,0x10,0x1a,0x48,0x59,0xf8,0x00,0x00, +0xff,0xf7,0x50,0xfa,0x4f,0xf0,0xff,0x30,0xff,0xf7,0x74,0xfa,0xb9,0x68,0xf8,0x68, +0xff,0xf7,0x89,0xfb,0xf8,0x68,0xff,0xf7,0x75,0xfb,0x02,0x46,0x0c,0x23,0x9a,0x42, +0x10,0xd2,0x40,0xf2,0xbf,0x23,0x0d,0x4a,0x59,0xf8,0x02,0x20,0x0f,0x49,0x59,0xf8, +0x01,0x10,0x0c,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7,0x34,0xfa,0x4f,0xf0,0xff,0x30, +0xff,0xf7,0x58,0xfa,0x39,0x68,0x78,0x68,0xff,0xf7,0x6d,0xfb,0xf8,0x68,0xff,0xf7, +0x87,0xfc,0xfb,0x68,0x18,0x46,0x14,0x37,0xbd,0x46,0x90,0xbd,0xbc,0x00,0x00,0x00, +0xb0,0x00,0x00,0x00,0x6c,0x00,0x00,0x00,0xb4,0x00,0x00,0x00,0xb8,0x00,0x00,0x00, +0x80,0xb5,0x82,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60,0x78,0x68,0xff,0xf7,0x6a,0xfb, +0x03,0x46,0x00,0x2b,0x10,0xd0,0x40,0xf2,0xca,0x23,0x11,0x4a,0x59,0xf8,0x02,0x20, +0x10,0x49,0x59,0xf8,0x01,0x10,0x10,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7,0x02,0xfa, +0x4f,0xf0,0xff,0x30,0xff,0xf7,0x26,0xfa,0x38,0x68,0xff,0xf7,0x2b,0xfb,0x02,0x46, +0x04,0x23,0x1a,0x44,0x7b,0x68,0x5b,0x68,0x1a,0x44,0x7b,0x68,0x5a,0x60,0x78,0x68, +0xff,0xf7,0x3e,0xfc,0x7b,0x68,0x18,0x46,0x08,0x37,0xbd,0x46,0x80,0xbd,0x00,0xbf, +0xc4,0x00,0x00,0x00,0xc0,0x00,0x00,0x00,0x6c,0x00,0x00,0x00,0x80,0xb5,0x84,0xb0, +0x00,0xaf,0x78,0x60,0x39,0x60,0x38,0x68,0xff,0xf7,0x74,0xfb,0x03,0x46,0x00,0x2b, +0x37,0xd0,0x38,0x68,0xff,0xf7,0xc6,0xfb,0xf8,0x60,0xfb,0x68,0x00,0x2b,0x10,0xd1, +0x40,0xf2,0xd7,0x23,0x19,0x4a,0x59,0xf8,0x02,0x20,0x19,0x49,0x59,0xf8,0x01,0x10, +0x18,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7,0xc5,0xf9,0x4f,0xf0,0xff,0x30,0xff,0xf7, +0xe9,0xf9,0xf8,0x68,0xff,0xf7,0x27,0xfb,0x03,0x46,0x00,0x2b,0x10,0xd1,0x4f,0xf4, +0x36,0x73,0x0e,0x4a,0x59,0xf8,0x02,0x20,0x0f,0x49,0x59,0xf8,0x01,0x10,0x0d,0x48, +0x59,0xf8,0x00,0x00,0xff,0xf7,0xae,0xf9,0x4f,0xf0,0xff,0x30,0xff,0xf7,0xd2,0xf9, +0xf9,0x68,0x78,0x68,0xff,0xf7,0xc0,0xfe,0x39,0x68,0xf8,0x68,0xff,0xf7,0x88,0xff, +0x38,0x60,0x3b,0x68,0x18,0x46,0x10,0x37,0xbd,0x46,0x80,0xbd,0xd0,0x00,0x00,0x00, +0xc8,0x00,0x00,0x00,0x6c,0x00,0x00,0x00,0xcc,0x00,0x00,0x00,0x80,0xb5,0x84,0xb0, +0x00,0xaf,0x78,0x60,0x39,0x60,0x38,0x68,0xff,0xf7,0xa4,0xfb,0xf8,0x60,0xfb,0x68, +0x00,0x2b,0x10,0xd1,0x4f,0xf4,0x39,0x73,0x1c,0x4a,0x59,0xf8,0x02,0x20,0x1c,0x49, +0x59,0xf8,0x01,0x10,0x1b,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7,0x7b,0xf9,0x4f,0xf0, +0xff,0x30,0xff,0xf7,0x9f,0xf9,0xf8,0x68,0xff,0xf7,0xdd,0xfa,0x03,0x46,0x00,0x2b, +0x1f,0xd0,0x38,0x68,0xff,0xf7,0xc6,0xfa,0x03,0x46,0x00,0x2b,0x10,0xd0,0x4f,0xf4, +0x3a,0x73,0x0e,0x4a,0x59,0xf8,0x02,0x20,0x0f,0x49,0x59,0xf8,0x01,0x10,0x0d,0x48, +0x59,0xf8,0x00,0x00,0xff,0xf7,0x5e,0xf9,0x4f,0xf0,0xff,0x30,0xff,0xf7,0x82,0xf9, +0xf9,0x68,0x78,0x68,0xff,0xf7,0x70,0xfe,0xf9,0x68,0x38,0x68,0xff,0xf7,0x38,0xff, +0x38,0x60,0x3b,0x68,0x18,0x46,0x10,0x37,0xbd,0x46,0x80,0xbd,0xdc,0x00,0x00,0x00, +0xd4,0x00,0x00,0x00,0x6c,0x00,0x00,0x00,0xd8,0x00,0x00,0x00,0x80,0xb5,0x86,0xb0, +0x00,0xaf,0xf8,0x60,0xb9,0x60,0x7a,0x60,0xb8,0x68,0xff,0xf7,0xa4,0xfa,0x03,0x46, +0x00,0x2b,0x10,0xd1,0x40,0xf2,0xf3,0x23,0x14,0x4a,0x59,0xf8,0x02,0x20,0x14,0x49, +0x59,0xf8,0x01,0x10,0x13,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7,0x2b,0xf9,0x4f,0xf0, +0xff,0x30,0xff,0xf7,0x4f,0xf9,0x79,0x68,0xb8,0x68,0xff,0xf7,0x6f,0xfe,0x03,0x46, +0x00,0x2b,0x0e,0xd0,0x79,0x68,0xb8,0x68,0xff,0xf7,0x7c,0xfe,0x78,0x61,0xb8,0x68, +0xff,0xf7,0x66,0xfb,0x78,0x69,0xff,0xf7,0xbb,0xfa,0x79,0x69,0xf8,0x68,0xff,0xf7, +0x44,0xfe,0x00,0xbf,0x18,0x37,0xbd,0x46,0x80,0xbd,0x00,0xbf,0xe4,0x00,0x00,0x00, +0xe0,0x00,0x00,0x00,0x6c,0x00,0x00,0x00,0x80,0xb5,0x86,0xb0,0x00,0xaf,0x78,0x60, +0x39,0x60,0x00,0x23,0x3b,0x61,0x00,0x23,0xfb,0x60,0x00,0x23,0x7b,0x61,0x3b,0x68, +0x00,0x2b,0x13,0xd0,0x07,0xf1,0x0c,0x02,0x07,0xf1,0x10,0x03,0x19,0x46,0x38,0x68, +0xff,0xf7,0x68,0xfc,0x3b,0x69,0x17,0x2b,0x08,0xdc,0x07,0xf1,0x0c,0x02,0x07,0xf1, +0x10,0x03,0x19,0x46,0x78,0x68,0xff,0xf7,0x7d,0xfc,0x78,0x61,0x7b,0x69,0x00,0x2b, +0x1d,0xd0,0x78,0x69,0xff,0xf7,0x0e,0xfa,0x02,0x46,0x3b,0x68,0x93,0x42,0x10,0xd9, +0x40,0xf2,0x33,0x33,0x0c,0x4a,0x59,0xf8,0x02,0x20,0x0c,0x49,0x59,0xf8,0x01,0x10, +0x0b,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7,0xcd,0xf8,0x4f,0xf0,0xff,0x30,0xff,0xf7, +0xf1,0xf8,0x3a,0x69,0xfb,0x68,0x79,0x69,0x78,0x68,0xff,0xf7,0xc3,0xfc,0x7b,0x69, +0x18,0x46,0x18,0x37,0xbd,0x46,0x80,0xbd,0xec,0x00,0x00,0x00,0xe8,0x00,0x00,0x00, +0x6c,0x00,0x00,0x00,0x80,0xb5,0x86,0xb0,0x00,0xaf,0xf8,0x60,0xb9,0x60,0x7a,0x60, +0x00,0x23,0x7b,0x61,0xbb,0x68,0x00,0x2b,0x1f,0xd0,0x7b,0x68,0x00,0x2b,0x10,0xd1, +0x40,0xf2,0x3f,0x33,0x0f,0x4a,0x59,0xf8,0x02,0x20,0x0f,0x49,0x59,0xf8,0x01,0x10, +0x0e,0x48,0x59,0xf8,0x00,0x00,0xff,0xf7,0x9d,0xf8,0x4f,0xf0,0xff,0x30,0xff,0xf7, +0xc1,0xf8,0x7a,0x68,0xb9,0x68,0xf8,0x68,0xff,0xf7,0x50,0xff,0xb8,0x68,0xff,0xf7, +0x01,0xfb,0xb8,0x68,0xff,0xf7,0x63,0xfa,0x78,0x61,0x7b,0x69,0x18,0x46,0x18,0x37, +0xbd,0x46,0x80,0xbd,0xf4,0x00,0x00,0x00,0xf0,0x00,0x00,0x00,0x6c,0x00,0x00,0x00, +0x80,0xb4,0x85,0xb0,0x00,0xaf,0x78,0x60,0x7a,0x68,0x7b,0x68,0x9a,0x60,0x7a,0x68, +0x7b,0x68,0xda,0x60,0x7b,0x68,0x00,0x22,0x1a,0x61,0x00,0x23,0xfb,0x60,0x1c,0xe0, +0x7a,0x68,0xfb,0x68,0x04,0x33,0x9b,0x00,0x13,0x44,0x00,0x22,0x5a,0x60,0x00,0x23, +0xbb,0x60,0x0c,0xe0,0x7a,0x68,0x79,0x68,0xfb,0x68,0x58,0x01,0xbb,0x68,0x03,0x44, +0x1c,0x33,0x9b,0x00,0x0b,0x44,0x5a,0x60,0xbb,0x68,0x01,0x33,0xbb,0x60,0xbb,0x68, +0x1f,0x2b,0xef,0xdd,0xfb,0x68,0x01,0x33,0xfb,0x60,0xfb,0x68,0x17,0x2b,0xdf,0xdd, +0x00,0xbf,0x14,0x37,0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47,0x80,0xb4,0x00,0xaf, +0x40,0xf6,0x74,0x43,0x18,0x46,0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47,0x80,0xb4, +0x00,0xaf,0x04,0x23,0x5b,0x00,0x18,0x46,0xbd,0x46,0x5d,0xf8,0x04,0x7b,0x70,0x47, +0x80,0xb5,0x88,0xb0,0x00,0xaf,0xf8,0x60,0xb9,0x60,0x7a,0x60,0xff,0xf7,0xef,0xff, +0xf8,0x61,0x7a,0x68,0xfb,0x69,0xd3,0x1a,0x04,0x21,0x18,0x46,0xff,0xf7,0xfe,0xfa, +0xb8,0x61,0xbb,0x68,0x03,0xf0,0x03,0x03,0x00,0x2b,0x01,0xd0,0x00,0x23,0x38,0xe0, +0x0c,0x22,0xbb,0x69,0x93,0x42,0x04,0xd3,0x4f,0xf0,0x80,0x42,0xbb,0x69,0x93,0x42, +0x01,0xd9,0x00,0x23,0x2d,0xe0,0x19,0x4b,0x59,0xf8,0x03,0x30,0x1a,0x68,0xbb,0x69, +0xd3,0x1a,0x16,0x4a,0x59,0xf8,0x02,0x20,0x13,0x60,0x04,0x23,0x5b,0x42,0x19,0x46, +0xb8,0x68,0xff,0xf7,0xe9,0xf9,0x78,0x61,0xb9,0x69,0x78,0x69,0xff,0xf7,0x43,0xf9, +0x78,0x69,0xff,0xf7,0x76,0xf9,0x78,0x69,0xff,0xf7,0xb2,0xf9,0x79,0x69,0xf8,0x68, +0xff,0xf7,0x2b,0xfd,0x78,0x69,0xff,0xf7,0x43,0xfa,0x38,0x61,0x00,0x21,0x38,0x69, +0xff,0xf7,0x31,0xf9,0x38,0x69,0xff,0xf7,0x74,0xf9,0x38,0x69,0xff,0xf7,0x90,0xf9, +0xbb,0x68,0x18,0x46,0x20,0x37,0xbd,0x46,0x80,0xbd,0x00,0xbf,0x60,0x00,0x00,0x00, +0x80,0xb5,0x82,0xb0,0x00,0xaf,0x78,0x60,0x7b,0x68,0x03,0xf0,0x03,0x03,0x00,0x2b, +0x01,0xd0,0x00,0x23,0x03,0xe0,0x78,0x68,0xff,0xf7,0x52,0xff,0x7b,0x68,0x18,0x46, +0x08,0x37,0xbd,0x46,0x80,0xbd,0x00,0x00,0x90,0xb5,0x85,0xb0,0x00,0xaf,0x78,0x60, +0x39,0x60,0x0f,0x4b,0x59,0xf8,0x03,0x30,0x1a,0x46,0x3b,0x68,0x13,0x60,0x78,0x68, +0xff,0xf7,0xde,0xff,0xf8,0x60,0xff,0xf7,0x71,0xff,0x02,0x46,0x7b,0x68,0x9c,0x18, +0xff,0xf7,0x6c,0xff,0x02,0x46,0x3b,0x68,0x9b,0x1a,0x1a,0x46,0x21,0x46,0xf8,0x68, +0xff,0xf7,0x76,0xff,0xfb,0x68,0x18,0x46,0x14,0x37,0xbd,0x46,0x90,0xbd,0x00,0xbf, +0x60,0x00,0x00,0x00,0x80,0xb5,0x86,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60,0x7b,0x68, +0x7b,0x61,0x04,0x21,0x38,0x68,0xff,0xf7,0xcb,0xfa,0x38,0x61,0x39,0x69,0x78,0x69, +0xff,0xf7,0x92,0xfe,0xf8,0x60,0x3a,0x69,0xf9,0x68,0x78,0x69,0xff,0xf7,0xda,0xfe, +0x03,0x46,0x18,0x46,0x18,0x37,0xbd,0x46,0x80,0xbd,0x00,0x00,0x80,0xb5,0x84,0xb0, +0x00,0xaf,0x78,0x60,0x39,0x60,0x3b,0x68,0x00,0x2b,0x55,0xd0,0x7b,0x68,0xfb,0x60, +0x38,0x68,0xff,0xf7,0x46,0xf9,0xb8,0x60,0xb8,0x68,0xff,0xf7,0xe4,0xf8,0x03,0x46, +0x00,0x2b,0x10,0xd0,0x40,0xf2,0xd2,0x43,0x25,0x4a,0x59,0xf8,0x02,0x20,0x25,0x49, +0x59,0xf8,0x01,0x10,0x24,0x48,0x59,0xf8,0x00,0x00,0xfe,0xf7,0x6b,0xff,0x4f,0xf0, +0xff,0x30,0xfe,0xf7,0x8f,0xff,0xb8,0x68,0xff,0xf7,0xc2,0xf9,0xb8,0x68,0xff,0xf7, +0x91,0xf8,0x02,0x46,0x1d,0x4b,0x59,0xf8,0x03,0x30,0x1b,0x68,0x9a,0x42,0x10,0xd3, +0x40,0xf2,0xd6,0x43,0x16,0x4a,0x59,0xf8,0x02,0x20,0x19,0x49,0x59,0xf8,0x01,0x10, +0x15,0x48,0x59,0xf8,0x00,0x00,0xfe,0xf7,0x4d,0xff,0x4f,0xf0,0xff,0x30,0xfe,0xf7, +0x71,0xff,0xb8,0x68,0xff,0xf7,0x76,0xf8,0x02,0x46,0x10,0x4b,0x59,0xf8,0x03,0x30, +0x1b,0x68,0x9b,0x1a,0x0d,0x4a,0x59,0xf8,0x02,0x20,0x13,0x60,0xb9,0x68,0xf8,0x68, +0xff,0xf7,0x54,0xfd,0xb8,0x60,0xb9,0x68,0xf8,0x68,0xff,0xf7,0x9f,0xfd,0xb8,0x60, +0xb9,0x68,0xf8,0x68,0xff,0xf7,0x61,0xfc,0x00,0xbf,0x10,0x37,0xbd,0x46,0x80,0xbd, +0x00,0x01,0x00,0x00,0xf8,0x00,0x00,0x00,0x6c,0x00,0x00,0x00,0x60,0x00,0x00,0x00, +0xfc,0x00,0x00,0x00,0x80,0xb5,0x82,0xb0,0x00,0xaf,0x78,0x60,0x0b,0x46,0xfb,0x70, +0xfb,0x78,0x1a,0x46,0x79,0x68,0x16,0x20,0xfd,0xf7,0xee,0xfd,0x03,0x46,0x18,0x46, +0x08,0x37,0xbd,0x46,0x80,0xbd,0x80,0xb5,0x82,0xb0,0x00,0xaf,0x78,0x60,0x39,0x60, +0x3a,0x68,0x79,0x68,0x18,0x20,0xfd,0xf7,0xdf,0xfd,0x03,0x46,0x18,0x46,0x08,0x37, +0xbd,0x46,0x80,0xbd,0x80,0xb5,0x82,0xb0,0x00,0xaf,0x78,0x60,0x79,0x68,0x19,0x20, +0xfd,0xf7,0xd2,0xfd,0x03,0x46,0x18,0x46,0x08,0x37,0xbd,0x46,0x80,0xbd,0x00,0x00, +0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x70,0x72,0x65,0x76,0x00,0x00,0x62,0x6c,0x6f,0x63, +0x6b,0x5f,0x6e,0x65,0x78,0x74,0x00,0x00,0x61,0x6c,0x69,0x67,0x6e,0x5f,0x75,0x70, +0x00,0x00,0x00,0x00,0x61,0x6c,0x69,0x67,0x6e,0x5f,0x64,0x6f,0x77,0x6e,0x00,0x00, +0x61,0x6c,0x69,0x67,0x6e,0x5f,0x70,0x74,0x72,0x00,0x00,0x00,0x73,0x65,0x61,0x72, +0x63,0x68,0x5f,0x73,0x75,0x69,0x74,0x61,0x62,0x6c,0x65,0x5f,0x62,0x6c,0x6f,0x63, +0x6b,0x00,0x00,0x00,0x72,0x65,0x6d,0x6f,0x76,0x65,0x5f,0x66,0x72,0x65,0x65,0x5f, +0x62,0x6c,0x6f,0x63,0x6b,0x00,0x00,0x00,0x69,0x6e,0x73,0x65,0x72,0x74,0x5f,0x66, +0x72,0x65,0x65,0x5f,0x62,0x6c,0x6f,0x63,0x6b,0x00,0x00,0x00,0x62,0x6c,0x6f,0x63, +0x6b,0x5f,0x73,0x70,0x6c,0x69,0x74,0x00,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x61,0x62, +0x73,0x6f,0x72,0x62,0x00,0x00,0x00,0x00,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x6d,0x65, +0x72,0x67,0x65,0x5f,0x70,0x72,0x65,0x76,0x00,0x00,0x00,0x00,0x62,0x6c,0x6f,0x63, +0x6b,0x5f,0x6d,0x65,0x72,0x67,0x65,0x5f,0x6e,0x65,0x78,0x74,0x00,0x00,0x00,0x00, +0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x74,0x72,0x69,0x6d,0x5f,0x66,0x72,0x65,0x65,0x00, +0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x6c,0x6f,0x63,0x61,0x74,0x65,0x5f,0x66,0x72,0x65, +0x65,0x00,0x00,0x00,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x70,0x72,0x65,0x70,0x61,0x72, +0x65,0x5f,0x75,0x73,0x65,0x64,0x00,0x00,0x74,0x6c,0x73,0x66,0x5f,0x66,0x72,0x65, +0x65,0x00,0x00,0x00,0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x41,0x42, +0x43,0x44,0x45,0x46,0x00,0x00,0x00,0x00,0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37, +0x38,0x39,0x61,0x62,0x63,0x64,0x65,0x66,0x00,0x00,0x00,0x00,0x74,0x68,0x72,0x65, +0x61,0x64,0x31,0x20,0x63,0x6f,0x75,0x6e,0x74,0x3a,0x20,0x25,0x64,0x0d,0x0a,0x00, +0x74,0x72,0x61,0x70,0x20,0x69,0x6e,0x20,0x74,0x68,0x72,0x65,0x61,0x64,0x31,0x2c, +0x20,0x6c,0x6f,0x6f,0x70,0x20,0x64,0x65,0x6c,0x61,0x79,0x0d,0x0a,0x00,0x00,0x00, +0x74,0x68,0x72,0x65,0x61,0x64,0x32,0x20,0x63,0x6f,0x75,0x6e,0x74,0x3a,0x20,0x25, +0x64,0x0d,0x0a,0x00,0x74,0x72,0x61,0x70,0x20,0x69,0x6e,0x20,0x74,0x68,0x72,0x65, +0x61,0x64,0x32,0x2c,0x20,0x6c,0x6f,0x6f,0x70,0x20,0x64,0x65,0x6c,0x61,0x79,0x0d, +0x0a,0x00,0x00,0x00,0x74,0x68,0x72,0x65,0x61,0x64,0x31,0x00,0x63,0x72,0x65,0x61, +0x74,0x65,0x20,0x74,0x68,0x72,0x65,0x61,0x64,0x31,0x20,0x66,0x61,0x69,0x6c,0x65, +0x64,0x0d,0x0a,0x00,0x74,0x68,0x72,0x65,0x61,0x64,0x32,0x00,0x63,0x72,0x65,0x61, +0x74,0x65,0x20,0x74,0x68,0x72,0x65,0x61,0x64,0x32,0x20,0x66,0x61,0x69,0x6c,0x65, +0x64,0x0d,0x0a,0x00,0x74,0x72,0x61,0x70,0x20,0x69,0x6e,0x20,0x61,0x70,0x70,0x6c, +0x69,0x63,0x61,0x74,0x69,0x6f,0x6e,0x0d,0x0a,0x00,0x00,0x00,0x63,0x74,0x5f,0x6d, +0x75,0x74,0x65,0x78,0x00,0x00,0x00,0x00,0x28,0x4e,0x55,0x4c,0x4c,0x29,0x00,0x00, +0x5f,0x54,0x6c,0x73,0x66,0x6c,0x6f,0x63,0x6b,0x00,0x00,0x00,0x61,0x70,0x70,0x20, +0x68,0x65,0x61,0x70,0x20,0x75,0x73,0x65,0x64,0x5f,0x6d,0x61,0x78,0x3a,0x25,0x64, +0x0a,0x00,0x00,0x00,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69,0x73,0x5f,0x70,0x72,0x65, +0x76,0x5f,0x66,0x72,0x65,0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x20,0x26,0x26, +0x20,0x22,0x70,0x72,0x65,0x76,0x69,0x6f,0x75,0x73,0x20,0x62,0x6c,0x6f,0x63,0x6b, +0x20,0x6d,0x75,0x73,0x74,0x20,0x62,0x65,0x20,0x66,0x72,0x65,0x65,0x22,0x00,0x00, +0x28,0x25,0x73,0x29,0x20,0x68,0x61,0x73,0x20,0x61,0x73,0x73,0x65,0x72,0x74,0x20, +0x66,0x61,0x69,0x6c,0x65,0x64,0x20,0x61,0x74,0x20,0x46,0x3a,0x25,0x73,0x20,0x4c, +0x3a,0x25,0x64,0x00,0x21,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69,0x73,0x5f,0x6c,0x61, +0x73,0x74,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x00,0x00,0x00,0x30,0x20,0x3d,0x3d, +0x20,0x28,0x61,0x6c,0x69,0x67,0x6e,0x20,0x26,0x20,0x28,0x61,0x6c,0x69,0x67,0x6e, +0x20,0x2d,0x20,0x31,0x29,0x29,0x20,0x26,0x26,0x20,0x22,0x6d,0x75,0x73,0x74,0x20, +0x61,0x6c,0x69,0x67,0x6e,0x20,0x74,0x6f,0x20,0x61,0x20,0x70,0x6f,0x77,0x65,0x72, +0x20,0x6f,0x66,0x20,0x74,0x77,0x6f,0x22,0x00,0x00,0x00,0x00,0x73,0x6c,0x5f,0x6d, +0x61,0x70,0x20,0x26,0x26,0x20,0x22,0x69,0x6e,0x74,0x65,0x72,0x6e,0x61,0x6c,0x20, +0x65,0x72,0x72,0x6f,0x72,0x20,0x2d,0x20,0x73,0x65,0x63,0x6f,0x6e,0x64,0x20,0x6c, +0x65,0x76,0x65,0x6c,0x20,0x62,0x69,0x74,0x6d,0x61,0x70,0x20,0x69,0x73,0x20,0x6e, +0x75,0x6c,0x6c,0x22,0x00,0x00,0x00,0x00,0x70,0x72,0x65,0x76,0x20,0x26,0x26,0x20, +0x22,0x70,0x72,0x65,0x76,0x5f,0x66,0x72,0x65,0x65,0x20,0x66,0x69,0x65,0x6c,0x64, +0x20,0x63,0x61,0x6e,0x20,0x6e,0x6f,0x74,0x20,0x62,0x65,0x20,0x6e,0x75,0x6c,0x6c, +0x22,0x00,0x00,0x00,0x6e,0x65,0x78,0x74,0x20,0x26,0x26,0x20,0x22,0x6e,0x65,0x78, +0x74,0x5f,0x66,0x72,0x65,0x65,0x20,0x66,0x69,0x65,0x6c,0x64,0x20,0x63,0x61,0x6e, +0x20,0x6e,0x6f,0x74,0x20,0x62,0x65,0x20,0x6e,0x75,0x6c,0x6c,0x22,0x00,0x00,0x00, +0x63,0x75,0x72,0x72,0x65,0x6e,0x74,0x20,0x26,0x26,0x20,0x22,0x66,0x72,0x65,0x65, +0x20,0x6c,0x69,0x73,0x74,0x20,0x63,0x61,0x6e,0x6e,0x6f,0x74,0x20,0x68,0x61,0x76, +0x65,0x20,0x61,0x20,0x6e,0x75,0x6c,0x6c,0x20,0x65,0x6e,0x74,0x72,0x79,0x22,0x00, +0x62,0x6c,0x6f,0x63,0x6b,0x20,0x26,0x26,0x20,0x22,0x63,0x61,0x6e,0x6e,0x6f,0x74, +0x20,0x69,0x6e,0x73,0x65,0x72,0x74,0x20,0x61,0x20,0x6e,0x75,0x6c,0x6c,0x20,0x65, +0x6e,0x74,0x72,0x79,0x20,0x69,0x6e,0x74,0x6f,0x20,0x74,0x68,0x65,0x20,0x66,0x72, +0x65,0x65,0x20,0x6c,0x69,0x73,0x74,0x22,0x00,0x00,0x00,0x00,0x62,0x6c,0x6f,0x63, +0x6b,0x5f,0x74,0x6f,0x5f,0x70,0x74,0x72,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x20, +0x3d,0x3d,0x20,0x61,0x6c,0x69,0x67,0x6e,0x5f,0x70,0x74,0x72,0x28,0x62,0x6c,0x6f, +0x63,0x6b,0x5f,0x74,0x6f,0x5f,0x70,0x74,0x72,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29, +0x2c,0x20,0x41,0x4c,0x49,0x47,0x4e,0x5f,0x53,0x49,0x5a,0x45,0x29,0x20,0x26,0x26, +0x20,0x22,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x6e,0x6f,0x74,0x20,0x61,0x6c,0x69,0x67, +0x6e,0x65,0x64,0x20,0x70,0x72,0x6f,0x70,0x65,0x72,0x6c,0x79,0x22,0x00,0x00,0x00, +0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x74,0x6f,0x5f,0x70,0x74,0x72,0x28,0x72,0x65,0x6d, +0x61,0x69,0x6e,0x69,0x6e,0x67,0x29,0x20,0x3d,0x3d,0x20,0x61,0x6c,0x69,0x67,0x6e, +0x5f,0x70,0x74,0x72,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x74,0x6f,0x5f,0x70,0x74, +0x72,0x28,0x72,0x65,0x6d,0x61,0x69,0x6e,0x69,0x6e,0x67,0x29,0x2c,0x20,0x41,0x4c, +0x49,0x47,0x4e,0x5f,0x53,0x49,0x5a,0x45,0x29,0x20,0x26,0x26,0x20,0x22,0x72,0x65, +0x6d,0x61,0x69,0x6e,0x69,0x6e,0x67,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x6e,0x6f, +0x74,0x20,0x61,0x6c,0x69,0x67,0x6e,0x65,0x64,0x20,0x70,0x72,0x6f,0x70,0x65,0x72, +0x6c,0x79,0x22,0x00,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x73,0x69,0x7a,0x65,0x28,0x62, +0x6c,0x6f,0x63,0x6b,0x29,0x20,0x3d,0x3d,0x20,0x72,0x65,0x6d,0x61,0x69,0x6e,0x5f, +0x73,0x69,0x7a,0x65,0x20,0x2b,0x20,0x73,0x69,0x7a,0x65,0x20,0x2b,0x20,0x62,0x6c, +0x6f,0x63,0x6b,0x5f,0x68,0x65,0x61,0x64,0x65,0x72,0x5f,0x6f,0x76,0x65,0x72,0x68, +0x65,0x61,0x64,0x00,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x73,0x69,0x7a,0x65,0x28,0x72, +0x65,0x6d,0x61,0x69,0x6e,0x69,0x6e,0x67,0x29,0x20,0x3e,0x3d,0x20,0x62,0x6c,0x6f, +0x63,0x6b,0x5f,0x73,0x69,0x7a,0x65,0x5f,0x6d,0x69,0x6e,0x20,0x26,0x26,0x20,0x22, +0x62,0x6c,0x6f,0x63,0x6b,0x20,0x73,0x70,0x6c,0x69,0x74,0x20,0x77,0x69,0x74,0x68, +0x20,0x69,0x6e,0x76,0x61,0x6c,0x69,0x64,0x20,0x73,0x69,0x7a,0x65,0x22,0x00,0x00, +0x21,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69,0x73,0x5f,0x6c,0x61,0x73,0x74,0x28,0x70, +0x72,0x65,0x76,0x29,0x20,0x26,0x26,0x20,0x22,0x70,0x72,0x65,0x76,0x69,0x6f,0x75, +0x73,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x63,0x61,0x6e,0x27,0x74,0x20,0x62,0x65, +0x20,0x6c,0x61,0x73,0x74,0x22,0x00,0x00,0x70,0x72,0x65,0x76,0x20,0x26,0x26,0x20, +0x22,0x70,0x72,0x65,0x76,0x20,0x70,0x68,0x79,0x73,0x69,0x63,0x61,0x6c,0x20,0x62, +0x6c,0x6f,0x63,0x6b,0x20,0x63,0x61,0x6e,0x27,0x74,0x20,0x62,0x65,0x20,0x6e,0x75, +0x6c,0x6c,0x22,0x00,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69,0x73,0x5f,0x66,0x72,0x65, +0x65,0x28,0x70,0x72,0x65,0x76,0x29,0x20,0x26,0x26,0x20,0x22,0x70,0x72,0x65,0x76, +0x20,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x69,0x73,0x20,0x6e,0x6f,0x74,0x20,0x66,0x72, +0x65,0x65,0x20,0x74,0x68,0x6f,0x75,0x67,0x68,0x20,0x6d,0x61,0x72,0x6b,0x65,0x64, +0x20,0x61,0x73,0x20,0x73,0x75,0x63,0x68,0x22,0x00,0x00,0x00,0x6e,0x65,0x78,0x74, +0x20,0x26,0x26,0x20,0x22,0x6e,0x65,0x78,0x74,0x20,0x70,0x68,0x79,0x73,0x69,0x63, +0x61,0x6c,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x63,0x61,0x6e,0x27,0x74,0x20,0x62, +0x65,0x20,0x6e,0x75,0x6c,0x6c,0x22,0x00,0x21,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69, +0x73,0x5f,0x6c,0x61,0x73,0x74,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x20,0x26,0x26, +0x20,0x22,0x70,0x72,0x65,0x76,0x69,0x6f,0x75,0x73,0x20,0x62,0x6c,0x6f,0x63,0x6b, +0x20,0x63,0x61,0x6e,0x27,0x74,0x20,0x62,0x65,0x20,0x6c,0x61,0x73,0x74,0x22,0x00, +0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69,0x73,0x5f,0x66,0x72,0x65,0x65,0x28,0x62,0x6c, +0x6f,0x63,0x6b,0x29,0x20,0x26,0x26,0x20,0x22,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x6d, +0x75,0x73,0x74,0x20,0x62,0x65,0x20,0x66,0x72,0x65,0x65,0x22,0x00,0x00,0x00,0x00, +0x21,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69,0x73,0x5f,0x66,0x72,0x65,0x65,0x28,0x62, +0x6c,0x6f,0x63,0x6b,0x29,0x20,0x26,0x26,0x20,0x22,0x62,0x6c,0x6f,0x63,0x6b,0x20, +0x6d,0x75,0x73,0x74,0x20,0x62,0x65,0x20,0x75,0x73,0x65,0x64,0x22,0x00,0x00,0x00, +0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x73,0x69,0x7a,0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b, +0x29,0x20,0x3e,0x3d,0x20,0x73,0x69,0x7a,0x65,0x00,0x00,0x00,0x73,0x69,0x7a,0x65, +0x20,0x26,0x26,0x20,0x22,0x73,0x69,0x7a,0x65,0x20,0x6d,0x75,0x73,0x74,0x20,0x62, +0x65,0x20,0x6e,0x6f,0x6e,0x2d,0x7a,0x65,0x72,0x6f,0x22,0x00,0x69,0x6e,0x74,0x65, +0x67,0x2d,0x3e,0x70,0x72,0x65,0x76,0x5f,0x73,0x74,0x61,0x74,0x75,0x73,0x20,0x3d, +0x3d,0x20,0x74,0x68,0x69,0x73,0x5f,0x70,0x72,0x65,0x76,0x5f,0x73,0x74,0x61,0x74, +0x75,0x73,0x20,0x26,0x26,0x20,0x22,0x70,0x72,0x65,0x76,0x20,0x73,0x74,0x61,0x74, +0x75,0x73,0x20,0x69,0x6e,0x63,0x6f,0x72,0x72,0x65,0x63,0x74,0x22,0x00,0x00,0x00, +0x73,0x69,0x7a,0x65,0x20,0x3d,0x3d,0x20,0x74,0x68,0x69,0x73,0x5f,0x62,0x6c,0x6f, +0x63,0x6b,0x5f,0x73,0x69,0x7a,0x65,0x20,0x26,0x26,0x20,0x22,0x62,0x6c,0x6f,0x63, +0x6b,0x20,0x73,0x69,0x7a,0x65,0x20,0x69,0x6e,0x63,0x6f,0x72,0x72,0x65,0x63,0x74, +0x22,0x00,0x00,0x00,0x21,0x73,0x6c,0x5f,0x6d,0x61,0x70,0x20,0x26,0x26,0x20,0x22, +0x73,0x65,0x63,0x6f,0x6e,0x64,0x2d,0x6c,0x65,0x76,0x65,0x6c,0x20,0x6d,0x61,0x70, +0x20,0x6d,0x75,0x73,0x74,0x20,0x62,0x65,0x20,0x6e,0x75,0x6c,0x6c,0x22,0x00,0x00, +0x62,0x6c,0x6f,0x63,0x6b,0x20,0x3d,0x3d,0x20,0x26,0x63,0x6f,0x6e,0x74,0x72,0x6f, +0x6c,0x2d,0x3e,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x6e,0x75,0x6c,0x6c,0x20,0x26,0x26, +0x20,0x22,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x6c,0x69,0x73,0x74,0x20,0x6d,0x75,0x73, +0x74,0x20,0x62,0x65,0x20,0x6e,0x75,0x6c,0x6c,0x22,0x00,0x00,0x73,0x6c,0x5f,0x6c, +0x69,0x73,0x74,0x20,0x26,0x26,0x20,0x22,0x6e,0x6f,0x20,0x66,0x72,0x65,0x65,0x20, +0x62,0x6c,0x6f,0x63,0x6b,0x73,0x20,0x69,0x6e,0x20,0x73,0x65,0x63,0x6f,0x6e,0x64, +0x2d,0x6c,0x65,0x76,0x65,0x6c,0x20,0x6d,0x61,0x70,0x22,0x00,0x62,0x6c,0x6f,0x63, +0x6b,0x20,0x21,0x3d,0x20,0x26,0x63,0x6f,0x6e,0x74,0x72,0x6f,0x6c,0x2d,0x3e,0x62, +0x6c,0x6f,0x63,0x6b,0x5f,0x6e,0x75,0x6c,0x6c,0x20,0x26,0x26,0x20,0x22,0x62,0x6c, +0x6f,0x63,0x6b,0x20,0x73,0x68,0x6f,0x75,0x6c,0x64,0x20,0x6e,0x6f,0x74,0x20,0x62, +0x65,0x20,0x6e,0x75,0x6c,0x6c,0x22,0x00,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69,0x73, +0x5f,0x66,0x72,0x65,0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x20,0x26,0x26,0x20, +0x22,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x73,0x68,0x6f,0x75,0x6c,0x64,0x20,0x62,0x65, +0x20,0x66,0x72,0x65,0x65,0x22,0x00,0x00,0x21,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69, +0x73,0x5f,0x70,0x72,0x65,0x76,0x5f,0x66,0x72,0x65,0x65,0x28,0x62,0x6c,0x6f,0x63, +0x6b,0x29,0x20,0x26,0x26,0x20,0x22,0x62,0x6c,0x6f,0x63,0x6b,0x73,0x20,0x73,0x68, +0x6f,0x75,0x6c,0x64,0x20,0x68,0x61,0x76,0x65,0x20,0x63,0x6f,0x61,0x6c,0x65,0x73, +0x63,0x65,0x64,0x22,0x00,0x00,0x00,0x00,0x21,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69, +0x73,0x5f,0x66,0x72,0x65,0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x6e,0x65,0x78, +0x74,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x29,0x20,0x26,0x26,0x20,0x22,0x62,0x6c, +0x6f,0x63,0x6b,0x73,0x20,0x73,0x68,0x6f,0x75,0x6c,0x64,0x20,0x68,0x61,0x76,0x65, +0x20,0x63,0x6f,0x61,0x6c,0x65,0x73,0x63,0x65,0x64,0x22,0x00,0x62,0x6c,0x6f,0x63, +0x6b,0x5f,0x69,0x73,0x5f,0x70,0x72,0x65,0x76,0x5f,0x66,0x72,0x65,0x65,0x28,0x62, +0x6c,0x6f,0x63,0x6b,0x5f,0x6e,0x65,0x78,0x74,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29, +0x29,0x20,0x26,0x26,0x20,0x22,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x73,0x68,0x6f,0x75, +0x6c,0x64,0x20,0x62,0x65,0x20,0x66,0x72,0x65,0x65,0x22,0x00,0x62,0x6c,0x6f,0x63, +0x6b,0x5f,0x73,0x69,0x7a,0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x20,0x3e,0x3d, +0x20,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x73,0x69,0x7a,0x65,0x5f,0x6d,0x69,0x6e,0x20, +0x26,0x26,0x20,0x22,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x6e,0x6f,0x74,0x20,0x6d,0x69, +0x6e,0x69,0x6d,0x75,0x6d,0x20,0x73,0x69,0x7a,0x65,0x22,0x00,0x66,0x6c,0x69,0x20, +0x3d,0x3d,0x20,0x69,0x20,0x26,0x26,0x20,0x73,0x6c,0x69,0x20,0x3d,0x3d,0x20,0x6a, +0x20,0x26,0x26,0x20,0x22,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x73,0x69,0x7a,0x65,0x20, +0x69,0x6e,0x64,0x65,0x78,0x65,0x64,0x20,0x69,0x6e,0x20,0x77,0x72,0x6f,0x6e,0x67, +0x20,0x6c,0x69,0x73,0x74,0x22,0x00,0x00,0x21,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69, +0x73,0x5f,0x66,0x72,0x65,0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x6e,0x65,0x78, +0x74,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x29,0x20,0x26,0x26,0x20,0x22,0x6e,0x65, +0x78,0x74,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x73,0x68,0x6f,0x75,0x6c,0x64,0x20, +0x6e,0x6f,0x74,0x20,0x62,0x65,0x20,0x66,0x72,0x65,0x65,0x22,0x00,0x00,0x00,0x00, +0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x73,0x69,0x7a,0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b, +0x5f,0x6e,0x65,0x78,0x74,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x29,0x20,0x3d,0x3d, +0x20,0x30,0x20,0x26,0x26,0x20,0x22,0x6e,0x65,0x78,0x74,0x20,0x62,0x6c,0x6f,0x63, +0x6b,0x20,0x73,0x69,0x7a,0x65,0x20,0x73,0x68,0x6f,0x75,0x6c,0x64,0x20,0x62,0x65, +0x20,0x7a,0x65,0x72,0x6f,0x22,0x00,0x00,0x73,0x69,0x7a,0x65,0x6f,0x66,0x28,0x62, +0x6c,0x6f,0x63,0x6b,0x5f,0x68,0x65,0x61,0x64,0x65,0x72,0x5f,0x74,0x29,0x20,0x3d, +0x3d,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x73,0x69,0x7a,0x65,0x5f,0x6d,0x69,0x6e, +0x20,0x2b,0x20,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x68,0x65,0x61,0x64,0x65,0x72,0x5f, +0x6f,0x76,0x65,0x72,0x68,0x65,0x61,0x64,0x00,0x00,0x00,0x00,0x67,0x61,0x70,0x20, +0x3e,0x3d,0x20,0x67,0x61,0x70,0x5f,0x6d,0x69,0x6e,0x69,0x6d,0x75,0x6d,0x20,0x26, +0x26,0x20,0x22,0x67,0x61,0x70,0x20,0x73,0x69,0x7a,0x65,0x20,0x74,0x6f,0x6f,0x20, +0x73,0x6d,0x61,0x6c,0x6c,0x22,0x00,0x00,0x21,0x62,0x6c,0x6f,0x63,0x6b,0x5f,0x69, +0x73,0x5f,0x66,0x72,0x65,0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x20,0x26,0x26, +0x20,0x22,0x62,0x6c,0x6f,0x63,0x6b,0x20,0x61,0x6c,0x72,0x65,0x61,0x64,0x79,0x20, +0x6d,0x61,0x72,0x6b,0x65,0x64,0x20,0x61,0x73,0x20,0x66,0x72,0x65,0x65,0x22,0x00, +0x74,0x6c,0x73,0x66,0x5f,0x75,0x73,0x65,0x64,0x20,0x3e,0x20,0x62,0x6c,0x6f,0x63, +0x6b,0x5f,0x73,0x69,0x7a,0x65,0x28,0x62,0x6c,0x6f,0x63,0x6b,0x29,0x20,0x26,0x26, +0x20,0x22,0x61,0x70,0x70,0x20,0x68,0x65,0x61,0x70,0x20,0x6d,0x61,0x79,0x20,0x6e, +0x6f,0x74,0x20,0x69,0x6e,0x69,0x74,0x2e,0x22,0x00,0x00,0x00,0xc4,0xd0,0xff,0x7f, +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, +0x03,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0xe0,0x36,0x00,0x00,0x00,0x00,0x00,0x00, +0x03,0x00,0x08,0x00,0x4b,0x00,0x00,0x00,0xf4,0x30,0x00,0x00,0x00,0x00,0x00,0x00, +0x10,0x00,0x02,0x00,0x9a,0x00,0x00,0x00,0xe0,0x36,0x00,0x00,0x00,0x00,0x00,0x00, +0x10,0x00,0x08,0x00,0x01,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00, +0x10,0x00,0xf1,0xff,0xb7,0x00,0x00,0x00,0x04,0x38,0x00,0x00,0x00,0x00,0x00,0x00, +0x10,0x00,0x08,0x00,0x14,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x10,0x00,0x01,0x00,0x31,0x00,0x00,0x00,0xec,0x30,0x00,0x00,0x00,0x00,0x00,0x00, +0x10,0x00,0x01,0x00,0x41,0x01,0x00,0x00,0x98,0x98,0x00,0x00,0x0c,0x00,0x00,0x00, +0x11,0x00,0x0b,0x00,0x0a,0x01,0x00,0x00,0x90,0x88,0x00,0x00,0x00,0x00,0x00,0x00, +0x10,0x00,0x0b,0x00,0xed,0x00,0x00,0x00,0x90,0x38,0x00,0x00,0x00,0x00,0x00,0x00, +0x10,0x00,0x0b,0x00,0x3d,0x00,0x00,0x00,0xec,0x30,0x00,0x00,0x00,0x00,0x00,0x00, +0x10,0x00,0x02,0x00,0xd0,0x00,0x00,0x00,0x00,0x50,0x00,0x00,0x00,0x00,0x00,0x00, +0x10,0x00,0xf1,0xff,0xc3,0x00,0x00,0x00,0x04,0x38,0x00,0x00,0x00,0x00,0x00,0x00, +0x10,0x00,0x08,0x00,0x35,0x01,0x00,0x00,0xb8,0x99,0x00,0x00,0x00,0x00,0x00,0x00, +0x10,0x00,0x0b,0x00,0x8d,0x00,0x00,0x00,0xd8,0x62,0x00,0x00,0x00,0x00,0x00,0x00, +0x10,0x00,0xf1,0xff,0xfb,0x00,0x00,0x00,0x90,0x38,0x00,0x00,0x00,0x00,0x00,0x00, +0x10,0x00,0x0b,0x00,0xde,0x00,0x00,0x00,0x00,0x10,0x00,0x00,0x00,0x00,0x00,0x00, +0x10,0x00,0xf1,0xff,0x57,0x00,0x00,0x00,0xe0,0x36,0x00,0x00,0x00,0x00,0x00,0x00, +0x10,0x00,0x07,0x00,0x23,0x00,0x00,0x00,0xec,0x30,0x00,0x00,0x00,0x00,0x00,0x00, +0x10,0x00,0x01,0x00,0x73,0x00,0x00,0x00,0xe0,0x36,0x00,0x00,0x00,0x00,0x00,0x00, +0x10,0x00,0x07,0x00,0x52,0x00,0x00,0x00,0xb8,0x99,0x00,0x00,0x00,0x00,0x00,0x00, +0x10,0x00,0x0b,0x00,0x27,0x01,0x00,0x00,0x90,0x98,0x00,0x00,0x00,0x00,0x00,0x00, +0x10,0x00,0x0b,0x00,0x17,0x01,0x00,0x00,0x90,0x88,0x00,0x00,0x00,0x00,0x00,0x00, +0x10,0x00,0x0b,0x00,0xa9,0x00,0x00,0x00,0xe0,0x36,0x00,0x00,0x00,0x00,0x00,0x00, +0x10,0x00,0x08,0x00,0x00,0x5f,0x73,0x79,0x73,0x74,0x65,0x6d,0x5f,0x73,0x74,0x61, +0x63,0x6b,0x5f,0x73,0x69,0x7a,0x65,0x00,0x5f,0x5f,0x74,0x65,0x78,0x74,0x5f,0x73, +0x74,0x61,0x72,0x74,0x5f,0x5f,0x00,0x5f,0x5f,0x72,0x65,0x6c,0x5f,0x73,0x74,0x61, +0x72,0x74,0x5f,0x5f,0x00,0x5f,0x5f,0x72,0x65,0x6c,0x5f,0x65,0x6e,0x64,0x5f,0x5f, +0x00,0x5f,0x5f,0x65,0x78,0x64,0x69,0x78,0x5f,0x73,0x74,0x61,0x72,0x74,0x00,0x5f, +0x5f,0x65,0x78,0x64,0x69,0x78,0x5f,0x65,0x6e,0x64,0x00,0x5f,0x5f,0x70,0x65,0x72, +0x6d,0x69,0x73,0x73,0x69,0x6f,0x6e,0x73,0x5f,0x74,0x61,0x62,0x6c,0x65,0x5f,0x73, +0x74,0x61,0x72,0x74,0x5f,0x5f,0x00,0x5f,0x5f,0x70,0x65,0x72,0x6d,0x69,0x73,0x73, +0x69,0x6f,0x6e,0x73,0x5f,0x74,0x61,0x62,0x6c,0x65,0x5f,0x65,0x6e,0x64,0x5f,0x5f, +0x00,0x5f,0x5f,0x72,0x61,0x6d,0x5f,0x73,0x69,0x7a,0x65,0x5f,0x5f,0x00,0x5f,0x5f, +0x64,0x61,0x74,0x61,0x5f,0x73,0x74,0x61,0x72,0x74,0x5f,0x5f,0x00,0x5f,0x5f,0x67, +0x6f,0x74,0x5f,0x73,0x74,0x61,0x72,0x74,0x5f,0x5f,0x00,0x5f,0x5f,0x67,0x6f,0x74, +0x5f,0x65,0x6e,0x64,0x5f,0x5f,0x00,0x5f,0x5f,0x64,0x61,0x74,0x61,0x5f,0x65,0x6e, +0x64,0x5f,0x5f,0x00,0x5f,0x5f,0x68,0x65,0x61,0x70,0x5f,0x73,0x69,0x7a,0x65,0x5f, +0x5f,0x00,0x5f,0x5f,0x73,0x74,0x61,0x63,0x6b,0x5f,0x73,0x69,0x7a,0x65,0x5f,0x5f, +0x00,0x5f,0x5f,0x62,0x73,0x73,0x5f,0x73,0x74,0x61,0x72,0x74,0x5f,0x5f,0x00,0x5f, +0x5f,0x68,0x65,0x61,0x70,0x5f,0x73,0x74,0x61,0x72,0x74,0x5f,0x5f,0x00,0x5f,0x5f, +0x68,0x65,0x61,0x70,0x5f,0x65,0x6e,0x64,0x5f,0x5f,0x00,0x5f,0x5f,0x73,0x74,0x61, +0x63,0x6b,0x5f,0x73,0x74,0x61,0x72,0x74,0x5f,0x5f,0x00,0x5f,0x5f,0x73,0x74,0x61, +0x63,0x6b,0x5f,0x65,0x6e,0x64,0x5f,0x5f,0x00,0x5f,0x5f,0x62,0x73,0x73,0x5f,0x65, +0x6e,0x64,0x5f,0x5f,0x00,0x75,0x74,0x68,0x72,0x65,0x61,0x64,0x5f,0x67,0x72,0x70, +0x00,0x00,0x00,0x00,0x11,0x00,0x00,0x00,0x1a,0x00,0x00,0x00,0x0c,0x00,0x00,0x00, +0x18,0x00,0x00,0x00,0x09,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x17,0x00,0x00,0x00, +0x0f,0x00,0x00,0x00,0x19,0x00,0x00,0x00,0x15,0x00,0x00,0x00,0x06,0x00,0x00,0x00, +0x07,0x00,0x00,0x00,0x0b,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0d,0x00,0x00,0x00, +0x16,0x00,0x00,0x00,0x10,0x00,0x00,0x00,0x13,0x00,0x00,0x00,0x03,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0e,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0a,0x00,0x00,0x00, +0x08,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x14,0x00,0x00,0x00, +0x11,0x00,0x00,0x00,0x12,0x00,0x00,0x00,0xe0,0x36,0x00,0x00,0x17,0x00,0x00,0x00, +0xe4,0x36,0x00,0x00,0x17,0x00,0x00,0x00,0xe8,0x36,0x00,0x00,0x17,0x00,0x00,0x00, +0xec,0x36,0x00,0x00,0x17,0x00,0x00,0x00,0xf0,0x36,0x00,0x00,0x17,0x00,0x00,0x00, +0xf4,0x36,0x00,0x00,0x17,0x00,0x00,0x00,0xf8,0x36,0x00,0x00,0x17,0x00,0x00,0x00, +0xfc,0x36,0x00,0x00,0x17,0x00,0x00,0x00,0x00,0x37,0x00,0x00,0x17,0x00,0x00,0x00, +0x04,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0x08,0x37,0x00,0x00,0x17,0x00,0x00,0x00, +0x0c,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0x10,0x37,0x00,0x00,0x17,0x00,0x00,0x00, +0x14,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0x18,0x37,0x00,0x00,0x17,0x00,0x00,0x00, +0x1c,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0x20,0x37,0x00,0x00,0x17,0x00,0x00,0x00, +0x24,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0x28,0x37,0x00,0x00,0x17,0x00,0x00,0x00, +0x2c,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0x30,0x37,0x00,0x00,0x17,0x00,0x00,0x00, +0x34,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0x38,0x37,0x00,0x00,0x17,0x00,0x00,0x00, +0x3c,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0x40,0x37,0x00,0x00,0x17,0x00,0x00,0x00, +0x44,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0x48,0x37,0x00,0x00,0x17,0x00,0x00,0x00, +0x4c,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0x50,0x37,0x00,0x00,0x17,0x00,0x00,0x00, +0x54,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0x58,0x37,0x00,0x00,0x17,0x00,0x00,0x00, +0x5c,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0x60,0x37,0x00,0x00,0x17,0x00,0x00,0x00, +0x64,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0x68,0x37,0x00,0x00,0x17,0x00,0x00,0x00, +0x6c,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0x70,0x37,0x00,0x00,0x17,0x00,0x00,0x00, +0x74,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0x78,0x37,0x00,0x00,0x17,0x00,0x00,0x00, +0x7c,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0x80,0x37,0x00,0x00,0x17,0x00,0x00,0x00, +0x84,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0x88,0x37,0x00,0x00,0x17,0x00,0x00,0x00, +0x8c,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0x90,0x37,0x00,0x00,0x17,0x00,0x00,0x00, +0x94,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0x98,0x37,0x00,0x00,0x17,0x00,0x00,0x00, +0x9c,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0xa0,0x37,0x00,0x00,0x17,0x00,0x00,0x00, +0xa4,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0xa8,0x37,0x00,0x00,0x17,0x00,0x00,0x00, +0xac,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0xb0,0x37,0x00,0x00,0x17,0x00,0x00,0x00, +0xb4,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0xb8,0x37,0x00,0x00,0x17,0x00,0x00,0x00, +0xbc,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0xc0,0x37,0x00,0x00,0x17,0x00,0x00,0x00, +0xc4,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0xc8,0x37,0x00,0x00,0x17,0x00,0x00,0x00, +0xcc,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0xd0,0x37,0x00,0x00,0x17,0x00,0x00,0x00, +0xd4,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0xd8,0x37,0x00,0x00,0x17,0x00,0x00,0x00, +0xdc,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0xe0,0x37,0x00,0x00,0x17,0x00,0x00,0x00, +0xe4,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0xe8,0x37,0x00,0x00,0x17,0x00,0x00,0x00, +0xec,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0xf0,0x37,0x00,0x00,0x17,0x00,0x00,0x00, +0xf4,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0xf8,0x37,0x00,0x00,0x17,0x00,0x00,0x00, +0xfc,0x37,0x00,0x00,0x17,0x00,0x00,0x00,0x00,0x38,0x00,0x00,0x17,0x00,0x00,0x00, +0x90,0x98,0x00,0x00,0x94,0x98,0x00,0x00,0xfc,0x26,0x00,0x00,0x10,0x27,0x00,0x00, +0x99,0x04,0x00,0x00,0x30,0x27,0x00,0x00,0x44,0x27,0x00,0x00,0xe9,0x04,0x00,0x00, +0x64,0x27,0x00,0x00,0x6c,0x27,0x00,0x00,0x84,0x27,0x00,0x00,0x8c,0x27,0x00,0x00, +0xa4,0x27,0x00,0x00,0xdd,0x06,0x00,0x00,0x71,0x07,0x00,0x00,0xa4,0x98,0x00,0x00, +0xbc,0x27,0x00,0x00,0xd4,0x26,0x00,0x00,0xe8,0x26,0x00,0x00,0xc8,0x27,0x00,0x00, +0xa8,0x98,0x00,0x00,0xa8,0x99,0x00,0x00,0xac,0x99,0x00,0x00,0xd0,0x27,0x00,0x00, +0xb0,0x99,0x00,0x00,0xb4,0x99,0x00,0x00,0xf4,0x27,0x00,0x00,0x30,0x28,0x00,0x00, +0xd0,0x25,0x00,0x00,0x54,0x28,0x00,0x00,0xdc,0x25,0x00,0x00,0x6c,0x28,0x00,0x00, +0xe8,0x25,0x00,0x00,0xf4,0x25,0x00,0x00,0x00,0x26,0x00,0x00,0xac,0x28,0x00,0x00, +0x0c,0x26,0x00,0x00,0xe8,0x28,0x00,0x00,0x14,0x29,0x00,0x00,0x24,0x26,0x00,0x00, +0x40,0x29,0x00,0x00,0x70,0x29,0x00,0x00,0xac,0x29,0x00,0x00,0x38,0x26,0x00,0x00, +0x10,0x2a,0x00,0x00,0x84,0x2a,0x00,0x00,0xc4,0x2a,0x00,0x00,0x4c,0x26,0x00,0x00, +0x10,0x2b,0x00,0x00,0x58,0x26,0x00,0x00,0x48,0x2b,0x00,0x00,0x74,0x2b,0x00,0x00, +0x68,0x26,0x00,0x00,0xbc,0x2b,0x00,0x00,0xe8,0x2b,0x00,0x00,0x7c,0x26,0x00,0x00, +0x20,0x2c,0x00,0x00,0x90,0x26,0x00,0x00,0x80,0x2c,0x00,0x00,0xa0,0x26,0x00,0x00, +0x9c,0x2c,0x00,0x00,0xb4,0x26,0x00,0x00,0x78,0x30,0x00,0x00,0xb0,0x30,0x00,0x00, +0xc8,0x26,0x00,0x00,0x04,0x38,0x00,0x00,0x00,0x00,0x00,0x00,0xec,0x30,0x00,0x00, +0x98,0x98,0x00,0x00,0x90,0x88,0x00,0x00,0x90,0x38,0x00,0x00,0xec,0x30,0x00,0x00, +0xe0,0x36,0x00,0x00,0x04,0x00,0x00,0x00,0xe4,0x33,0x00,0x00,0x05,0x00,0x00,0x00, +0x94,0x32,0x00,0x00,0x06,0x00,0x00,0x00,0xf4,0x30,0x00,0x00,0x0a,0x00,0x00,0x00, +0x4d,0x01,0x00,0x00,0x0b,0x00,0x00,0x00,0x10,0x00,0x00,0x00,0x15,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x11,0x00,0x00,0x00,0x98,0x34,0x00,0x00,0x12,0x00,0x00,0x00, +0x48,0x02,0x00,0x00,0x13,0x00,0x00,0x00,0x08,0x00,0x00,0x00,0xfb,0xff,0xff,0x6f, +0x00,0x00,0x00,0x08,0xfa,0xff,0xff,0x6f,0x49,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,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,0x38,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, +}; + + +const struct romfs_dirent _root_dirent[] = { + {ROMFS_DIRENT_FILE, "hello", _hello, sizeof(_hello)}, + {ROMFS_DIRENT_FILE, "ping", _ping, sizeof(_ping)}, + {ROMFS_DIRENT_FILE, "pong", _pong, sizeof(_pong)}, + {ROMFS_DIRENT_FILE, "thread", _thread, sizeof(_thread)}, +}; + + +static const struct romfs_dirent _romfs_dir_root[] = {{ROMFS_DIRENT_DIR, "bin", (rt_uint8_t *)_root_dirent, sizeof(_root_dirent)/sizeof(_root_dirent[0])},}; +const struct romfs_dirent romfs_root = {ROMFS_DIRENT_DIR, "/", (rt_uint8_t *)_romfs_dir_root, sizeof(_romfs_dir_root)/sizeof(_romfs_dir_root[0])}; diff --git a/bsp/stm32/stm32f429-st-disco/board/linker_scripts/link.icf b/bsp/stm32/stm32f429-st-disco/board/linker_scripts/link.icf index 9da417392523a90b3778e7256066300237973d13..277bdbc7cb3a101c45a0f377ab7fe98e5fc168e6 100644 --- a/bsp/stm32/stm32f429-st-disco/board/linker_scripts/link.icf +++ b/bsp/stm32/stm32f429-st-disco/board/linker_scripts/link.icf @@ -5,18 +5,17 @@ define symbol __ICFEDIT_intvec_start__ = 0x08000000; /*-Memory Regions-*/ define symbol __ICFEDIT_region_ROM_start__ = 0x08000000; -define symbol __ICFEDIT_region_ROM_end__ = 0x080FFFFF; +define symbol __ICFEDIT_region_ROM_end__ = 0x081FFFFF; define symbol __ICFEDIT_region_RAM_start__ = 0x20000000; -define symbol __ICFEDIT_region_RAM_end__ = 0x2002FFFF; +define symbol __ICFEDIT_region_RAM_end__ = 0x2004FFFF; /*-Sizes-*/ -define symbol __ICFEDIT_size_cstack__ = 0x200; -define symbol __ICFEDIT_size_heap__ = 0x000; +define symbol __ICFEDIT_size_cstack__ = 0x0400; +define symbol __ICFEDIT_size_heap__ = 0x0000; /**** End of ICF editor section. ###ICF###*/ - define memory mem with size = 4G; -define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__]; -define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__]; +define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__]; +define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__]; define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { }; define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { }; diff --git a/bsp/stm32/stm32f429-st-disco/board/linker_scripts/link.lds b/bsp/stm32/stm32f429-st-disco/board/linker_scripts/link.lds index 040fdd37b03f7ca5827be301ca8d494ea314ee4c..1228d4571bb6d2de12bf6c9c5ca29303554dd4d0 100644 --- a/bsp/stm32/stm32f429-st-disco/board/linker_scripts/link.lds +++ b/bsp/stm32/stm32f429-st-disco/board/linker_scripts/link.lds @@ -77,6 +77,11 @@ SECTIONS /* This is used by the startup in order to initialize the .data secion */ _sdata = . ; + __shm_code_start__ = .; + KEEP(*(shm_code)); + . = ALIGN(4); + __shm_code_end__ = .; + *(.data) *(.data.*) *(.gnu.linkonce.d*) @@ -114,7 +119,7 @@ SECTIONS . = ALIGN(4); /* This is used by the startup in order to initialize the .bss secion */ _ebss = . ; - + *(.bss.init) } > RAM __bss_end = .; diff --git a/bsp/stm32/stm32f429-st-disco/board/linker_scripts/link.sct b/bsp/stm32/stm32f429-st-disco/board/linker_scripts/link.sct index 0d7c47992d534c7779fea3df8bb47bb75c11bbc7..3784a95793c98768b8932718ed86aba60c219f04 100644 --- a/bsp/stm32/stm32f429-st-disco/board/linker_scripts/link.sct +++ b/bsp/stm32/stm32f429-st-disco/board/linker_scripts/link.sct @@ -2,13 +2,16 @@ ; *** Scatter-Loading Description File generated by uVision *** ; ************************************************************* -LR_IROM1 0x08000000 0x00100000 { ; load region size_region - ER_IROM1 0x08000000 0x00100000 { ; load address = execution address +LR_IROM1 0x08000000 0x00200000 { ; load region size_region + ER_IROM1 0x08000000 0x00200000 { ; load address = execution address *.o (RESET, +First) *(InRoot$$Sections) .ANY (+RO) } - RW_IRAM1 0x20000000 0x00020000 { ; RW data + RO_IRAM0 0x20000000 0x80 { ; RW data + .ANY (shm_code) + } + RW_IRAM1 0x20000080 0x00018000 { ; RW data .ANY (+RW +ZI) } } diff --git a/bsp/stm32/stm32f429-st-disco/qemu.bat b/bsp/stm32/stm32f429-st-disco/qemu.bat new file mode 100644 index 0000000000000000000000000000000000000000..918039e4264a95d4804c16818e1e5e6cb76f4592 --- /dev/null +++ b/bsp/stm32/stm32f429-st-disco/qemu.bat @@ -0,0 +1,6 @@ +@echo off +if exist sd.bin goto run +qemu-img create -f raw sd.bin 64M + +:run +D:\envs\qemu\qemu-system-arm -M stm32f429-st-disco -kernel rtthread.bin -serial stdio -sd sd.bin diff --git a/bsp/stm32/stm32f429-st-disco/rtconfig.h b/bsp/stm32/stm32f429-st-disco/rtconfig.h index 9f5b2c77c4c88a1d167949b829045b5aabc4a9d9..6fa2468f059f81c9541a272f09b7b09eb472d6d7 100644 --- a/bsp/stm32/stm32f429-st-disco/rtconfig.h +++ b/bsp/stm32/stm32f429-st-disco/rtconfig.h @@ -1,12 +1,13 @@ #ifndef RT_CONFIG_H__ #define RT_CONFIG_H__ -/* Automatically generated file; DO NOT EDIT. */ -/* RT-Thread Configuration */ +/* Generated by Kconfiglib (https://github.com/ulfalizer/Kconfiglib) */ /* RT-Thread Kernel */ #define RT_NAME_MAX 8 +#define RT_USING_SMART +#define RT_USING_MOM #define RT_ALIGN_SIZE 4 #define RT_THREAD_PRIORITY_32 #define RT_THREAD_PRIORITY_MAX 32 @@ -27,13 +28,16 @@ #define RT_USING_MAILBOX #define RT_USING_MESSAGEQUEUE #define RT_USING_SIGNALS +/* end of Inter-Thread communication */ /* Memory Management */ #define RT_USING_MEMPOOL #define RT_USING_MEMHEAP -#define RT_USING_MEMHEAP_AS_HEAP +#define RT_USING_SMALL_MEM +#define RT_USING_MEMTRACE #define RT_USING_HEAP +/* end of Memory Management */ /* Kernel Device Object */ @@ -41,9 +45,11 @@ #define RT_USING_CONSOLE #define RT_CONSOLEBUF_SIZE 128 #define RT_CONSOLE_DEVICE_NAME "uart1" -#define RT_VER_NUM 0x40003 -#define ARCH_ARM +/* end of Kernel Device Object */ +#define RT_VER_NUM 0x50000 +/* end of RT-Thread Kernel */ #define RT_USING_CPU_FFS +#define ARCH_ARM #define ARCH_ARM_CORTEX_M #define ARCH_ARM_CORTEX_M4 @@ -56,10 +62,13 @@ /* C++ features */ +/* end of C++ features */ /* Command shell */ #define RT_USING_FINSH +#define RT_USING_MSH +#define FINSH_USING_MSH #define FINSH_THREAD_NAME "tshell" #define FINSH_USING_HISTORY #define FINSH_HISTORY_LINES 5 @@ -68,23 +77,24 @@ #define FINSH_THREAD_PRIORITY 20 #define FINSH_THREAD_STACK_SIZE 4096 #define FINSH_CMD_SIZE 80 -#define FINSH_USING_MSH -#define FINSH_USING_MSH_DEFAULT -#define FINSH_USING_MSH_ONLY #define FINSH_ARG_MAX 10 +/* end of Command shell */ /* Device virtual file system */ #define RT_USING_DFS #define DFS_USING_WORKDIR -#define DFS_FILESYSTEMS_MAX 2 -#define DFS_FILESYSTEM_TYPES_MAX 2 +#define DFS_FILESYSTEMS_MAX 3 +#define DFS_FILESYSTEM_TYPES_MAX 3 #define DFS_FD_MAX 16 #define RT_USING_DFS_DEVFS +#define RT_USING_DFS_ROMFS +/* end of Device virtual file system */ /* Device Drivers */ #define RT_USING_DEVICE_IPC +#define RT_UNAMED_PIPE_NUMBER 64 #define RT_PIPE_BUFSZ 512 #define RT_USING_SERIAL #define RT_SERIAL_USING_DMA @@ -92,36 +102,63 @@ #define RT_USING_I2C #define RT_USING_I2C_BITOPS #define RT_USING_PIN +#define RT_USING_SDIO +#define RT_SDIO_STACK_SIZE 512 +#define RT_SDIO_THREAD_PRIORITY 15 +#define RT_MMCSD_STACK_SIZE 1024 +#define RT_MMCSD_THREAD_PREORITY 22 +#define RT_MMCSD_MAX_PARTITION 16 #define RT_USING_SPI + /* Using USB */ +/* end of Using USB */ +/* end of Device Drivers */ /* POSIX layer and C standard library */ #define RT_USING_LIBC -#define RT_USING_PTHREADS -#define PTHREAD_NUM_MAX 8 +#define RT_USING_NEWLIB #define RT_USING_POSIX +#define RT_USING_POSIX_CLOCKTIME +/* end of POSIX layer and C standard library */ /* Network */ /* Socket abstraction layer */ +/* end of Socket abstraction layer */ /* Network interface device */ +/* end of Network interface device */ /* light weight TCP/IP stack */ +/* end of light weight TCP/IP stack */ /* AT commands */ +/* end of AT commands */ +/* end of Network */ /* VBUS(Virtual Software BUS) */ +/* end of VBUS(Virtual Software BUS) */ /* Utilities */ +/* end of Utilities */ +#define RT_USING_LWP +#define RT_LWP_MAX_NR 30 +#define LWP_TASK_STACK_SIZE 1536 +#define RT_CH_MSG_MAX_NR 1024 +#define LWP_CONSOLE_INPUT_BUFFER_SIZE 1024 +#define LWP_TID_MAX_NR 64 +#define RT_LWP_USING_MPU +#define RT_LWP_MPU_MAX_NR 2 +#define RT_LWP_USING_SHM +/* end of RT-Thread Components */ /* RT-Thread online packages */ @@ -132,42 +169,72 @@ /* Marvell WiFi */ +/* end of Marvell WiFi */ /* Wiced WiFi */ +/* end of Wiced WiFi */ +/* end of Wi-Fi */ /* IoT Cloud */ +/* end of IoT Cloud */ +/* end of IoT - internet of things */ /* security packages */ +/* end of security packages */ /* language packages */ +/* end of language packages */ /* multimedia packages */ +/* end of multimedia packages */ /* tools packages */ +/* end of tools packages */ /* system packages */ +/* acceleration: Assembly language or algorithmic acceleration packages */ + +/* end of acceleration: Assembly language or algorithmic acceleration packages */ + +/* Micrium: Micrium software products porting for RT-Thread */ + +/* end of Micrium: Micrium software products porting for RT-Thread */ +/* end of system packages */ /* peripheral libraries and drivers */ +/* end of peripheral libraries and drivers */ -/* miscellaneous packages */ +/* AI packages */ + +/* end of AI packages */ +/* miscellaneous packages */ /* samples: kernel and components samples */ +/* end of samples: kernel and components samples */ + +/* entertainment: terminal games and other interesting software packages */ + +/* end of entertainment: terminal games and other interesting software packages */ +/* end of miscellaneous packages */ +/* end of RT-Thread online packages */ /* Privated Packages of RealThread */ /* Network Utilities */ +/* end of Network Utilities */ +/* end of Privated Packages of RealThread */ #define SOC_FAMILY_STM32 #define SOC_SERIES_STM32F4 @@ -177,18 +244,17 @@ /* Onboard Peripheral Drivers */ -#define BSP_USING_SDRAM +/* end of Onboard Peripheral Drivers */ /* On-chip Peripheral Drivers */ #define BSP_USING_GPIO #define BSP_USING_UART #define BSP_USING_UART1 -#define BSP_USING_FMC -#define BSP_USING_LCD -#define BSP_USING_LTDC +/* end of On-chip Peripheral Drivers */ /* Board extended module Drivers */ +/* end of Hardware Drivers Config */ #endif diff --git a/bsp/stm32/stm32f429-st-disco/rtconfig.py b/bsp/stm32/stm32f429-st-disco/rtconfig.py index b1cad1d512dc8b7682bbe8e0402812c9801a84e8..875babddc4143d5108e9574825002aa13d30cf50 100644 --- a/bsp/stm32/stm32f429-st-disco/rtconfig.py +++ b/bsp/stm32/stm32f429-st-disco/rtconfig.py @@ -45,7 +45,7 @@ if PLATFORM == 'gcc': DEVICE = ' -mcpu=cortex-m4 -mthumb -mfpu=fpv4-sp-d16 -mfloat-abi=hard -ffunction-sections -fdata-sections' CFLAGS = DEVICE + ' -Dgcc' - AFLAGS = ' -c' + DEVICE + ' -x assembler-with-cpp -Wa,-mimplicit-it=thumb ' + AFLAGS = ' -c' + DEVICE + ' -x assembler-with-cpp -Wa,-mimplicit-it=thumb -I.' LFLAGS = DEVICE + ' -Wl,--gc-sections,-Map=rtthread.map,-cref,-u,Reset_Handler -T board/linker_scripts/link.lds' CPATH = '' diff --git a/bsp/stm32/stm32f429-st-disco/rtconfig_preinc.h b/bsp/stm32/stm32f429-st-disco/rtconfig_preinc.h new file mode 100644 index 0000000000000000000000000000000000000000..7e5b4aed93ae2234c2647e1151b85ede3ac6e626 --- /dev/null +++ b/bsp/stm32/stm32f429-st-disco/rtconfig_preinc.h @@ -0,0 +1,12 @@ + +#ifndef RTCONFIG_PREINC_H__ +#define RTCONFIG_PREINC_H__ + +/* Automatically generated file; DO NOT EDIT. */ +/* RT-Thread pre-include file */ + +#define HAVE_CCONFIG_H +#define STM32F429xx +#define USE_HAL_DRIVER + +#endif /*RTCONFIG_PREINC_H__*/ diff --git a/bsp/stm32/stm32f429-st-disco/stm32_rom.ld b/bsp/stm32/stm32f429-st-disco/stm32_rom.ld index aa9c9b2af28c750ebc70720c84c1f1889ca6c949..4d90e3c3ef20786594b1720c9afb0d6358e2ce66 100644 --- a/bsp/stm32/stm32f429-st-disco/stm32_rom.ld +++ b/bsp/stm32/stm32f429-st-disco/stm32_rom.ld @@ -6,8 +6,8 @@ /* Program Entry, set to mark it as "used" and avoid gc */ MEMORY { - CODE (rx) : ORIGIN = 0x08000000, LENGTH = 1024k /* 1024KB flash */ - DATA (rw) : ORIGIN = 0x20000000, LENGTH = 128k /* 128K sram */ + CODE (rx) : ORIGIN = 0x08000000, LENGTH = 2048k /* 1024KB flash */ + DATA (rw) : ORIGIN = 0x20000000, LENGTH = 192k /* 128K sram */ } ENTRY(Reset_Handler) _system_stack_size = 0x200; diff --git a/bsp/stm32/stm32f429-st-disco/stm32_rom.sct b/bsp/stm32/stm32f429-st-disco/stm32_rom.sct index 0d7c47992d534c7779fea3df8bb47bb75c11bbc7..2407164991a6ece92290ea76acab0e7eed609054 100644 --- a/bsp/stm32/stm32f429-st-disco/stm32_rom.sct +++ b/bsp/stm32/stm32f429-st-disco/stm32_rom.sct @@ -2,13 +2,13 @@ ; *** Scatter-Loading Description File generated by uVision *** ; ************************************************************* -LR_IROM1 0x08000000 0x00100000 { ; load region size_region - ER_IROM1 0x08000000 0x00100000 { ; load address = execution address +LR_IROM1 0x08000000 0x00200000 { ; load region size_region + ER_IROM1 0x08000000 0x00200000 { ; load address = execution address *.o (RESET, +First) *(InRoot$$Sections) .ANY (+RO) } - RW_IRAM1 0x20000000 0x00020000 { ; RW data + RW_IRAM1 0x20000000 0x00030000 { ; RW data .ANY (+RW +ZI) } } diff --git a/components/dfs/filesystems/romfs/dfs_romfs.c b/components/dfs/filesystems/romfs/dfs_romfs.c index fba97e5ef07badde4a8b0771dbeae2164ae5a8ea..7c2736498dd86abc4950b634b9db1778e6b81ff6 100644 --- a/components/dfs/filesystems/romfs/dfs_romfs.c +++ b/components/dfs/filesystems/romfs/dfs_romfs.c @@ -34,7 +34,28 @@ int dfs_romfs_unmount(struct dfs_filesystem *fs) int dfs_romfs_ioctl(struct dfs_fd *file, int cmd, void *args) { - return -EIO; + int ret = RT_EOK; + struct romfs_dirent *dirent; + + dirent = (struct romfs_dirent *)file->fnode->data; + RT_ASSERT(dirent != NULL); + + switch (cmd) + { + case RT_FIOGETXIPADDR: + { + *(rt_uint32_t*)args = (rt_uint32_t)dirent->data; + break; + } + case RT_FIOFTRUNCATE: + { + break; + } + default: + ret = -RT_EINVAL; + break; + } + return ret; } rt_inline int check_dirent(struct romfs_dirent *dirent) diff --git a/components/libc/compilers/newlib/SConscript b/components/libc/compilers/newlib/SConscript index a5e45a29ae61ceecfcb3dbe0d859d34e6d58aecf..581408d4c290ec205ffe097b33ea99a3346f7022 100644 --- a/components/libc/compilers/newlib/SConscript +++ b/components/libc/compilers/newlib/SConscript @@ -18,10 +18,9 @@ if rtconfig.PLATFORM == 'gcc' and GetDepend('RT_USING_LIBC'): # musl libc is used as a software library. src = [] LIBS = [] - elif not GetDepend('RT_USING_NEWLIB'): + elif GetDepend('RT_USING_NEWLIB'): # RT_USING_NEWLIB is defined already CPPPATH = [cwd] - CPPDEFINES = ['RT_USING_NEWLIB'] group = DefineGroup('newlib', src, depend = ['RT_USING_LIBC'], CPPPATH = CPPPATH, CPPDEFINES = CPPDEFINES, LIBS = LIBS) diff --git a/components/lwp/Kconfig b/components/lwp/Kconfig index da5ca2a1906ad0a6b73c559cdc7d33ca6d758d13..8d9a76c2d429ce89d3debe262b3000857896ebf1 100644 --- a/components/lwp/Kconfig +++ b/components/lwp/Kconfig @@ -28,6 +28,7 @@ config RT_LWP_SHM_MAX_NR int "The maximum number of shared memory" default 64 depends on RT_USING_LWP + depends on RT_USING_USERSPACE config LWP_CONSOLE_INPUT_BUFFER_SIZE int "The input buffer size of lwp console device" @@ -61,4 +62,17 @@ config LWP_PTY_USING_DEBUG default n depends on RT_USING_LWP depends on LWP_UNIX98_PTY - + +config RT_LWP_USING_MPU + bool "Using mpu to protect process" + default y + depends on RT_USING_MOM + config RT_LWP_MPU_MAX_NR + int "The max number of mpu region" + default 2 + +config RT_LWP_USING_SHM + bool "Using share memory" + default y + depends on RT_USING_MOM + diff --git a/components/lwp/SConscript b/components/lwp/SConscript index 7dedd1389c2d82677075a6a7cb2b249b10e63609..aa0377c7c4b6a4efc8a3efdff4ab1e18a33f892d 100644 --- a/components/lwp/SConscript +++ b/components/lwp/SConscript @@ -1,5 +1,6 @@ Import('rtconfig') from building import * +import os cwd = GetCurrentDir() src = [] @@ -30,10 +31,14 @@ if platform in platform_file.keys(): # support platforms if arch in support_arch.keys() and cpu in support_arch[arch]: asm_path = 'arch/' + arch + '/' + cpu + '/*_' + platform_file[platform] arch_common = 'arch/' + arch + '/' + 'common/*.c' - src += Glob('*.c') + Glob(asm_path) + Glob(arch_common) + if GetDepend('RT_USING_MOM'): + excluded_files = ['ioremap.c', 'lwp_futex.c', 'lwp_mm_area.c', 'lwp_pmutex.c', 'lwp_shm.c', 'lwp_user_mm.c'] + src += [f for f in Glob('*.c') if os.path.basename(str(f)) not in excluded_files] + Glob(asm_path) + Glob(arch_common) + else: + src += Glob('*.c') + Glob(asm_path) + Glob(arch_common) src += Glob('arch/' + arch + '/' + cpu + '/*.c') CPPPATH = [cwd] - CPPPATH += ['arch/' + arch + '/' + cpu] + CPPPATH += [cwd + '/arch/' + arch + '/' + cpu] group = DefineGroup('lwP', src, depend = ['RT_USING_LWP'], CPPPATH = CPPPATH) diff --git a/components/lwp/lwp.c b/components/lwp/lwp.c index d89fb7d92aa70d95c2bb78d3a8fbe28e0ed56432..30ad933d0f2f119f91267a97015009749281dfd3 100644 --- a/components/lwp/lwp.c +++ b/components/lwp/lwp.c @@ -110,11 +110,26 @@ void lwp_set_kernel_sp(uint32_t *sp) uint32_t *lwp_get_kernel_sp(void) { +#ifdef RT_USING_MOM + uint32_t* kernel_sp; + extern rt_uint32_t rt_interrupt_from_thread; + extern rt_uint32_t rt_thread_switch_interrupt_flag; + if (rt_thread_switch_interrupt_flag) + { + kernel_sp = (uint32_t *)((rt_thread_t)rt_container_of(rt_interrupt_from_thread, struct rt_thread, sp))->kernel_sp; + } + else + { + kernel_sp = (uint32_t *)rt_thread_self()->kernel_sp; + } + return kernel_sp; +#else #ifdef RT_USING_USERSPACE return (uint32_t *)rt_thread_self()->sp; #else return (uint32_t *)rt_thread_self()->kernel_sp; #endif +#endif } #ifdef RT_USING_USERSPACE @@ -217,13 +232,17 @@ struct process_aux *lwp_argscopy(struct rt_lwp *lwp, int argc, char **argv, char #else static struct process_aux *lwp_argscopy(struct rt_lwp *lwp, int argc, char **argv, char **envp) { +#ifdef RT_USING_MOM + int size = sizeof(int) * 4; /* store argc, argv, envp, NULL */ +#else int size = sizeof(int) * 5; /* store argc, argv, envp, aux, NULL */ + struct process_aux *aux; +#endif /* RT_USING_MOM */ int *args; char *str; char **new_argve; int i; int len; - struct process_aux *aux; for (i = 0; i < argc; i++) { @@ -242,6 +261,14 @@ static struct process_aux *lwp_argscopy(struct rt_lwp *lwp, int argc, char **arg } } +#ifdef RT_USING_MOM + args = (int *)rt_malloc(size); + if (args == RT_NULL) + { + return RT_NULL; + } + str = (char*)((int)args + (argc + 2 + i + 1) * sizeof(int)); +#else /* for aux */ size += sizeof(struct process_aux); @@ -253,6 +280,7 @@ static struct process_aux *lwp_argscopy(struct rt_lwp *lwp, int argc, char **arg /* argc, argv[], 0, envp[], 0 */ str = (char *)((size_t)args + (argc + 2 + i + 1 + AUX_ARRAY_ITEMS_NR * 2 + 1) * sizeof(int)); +#endif /* RT_USING_MOM */ new_argve = (char **)&args[1]; args[0] = argc; @@ -281,7 +309,12 @@ static struct process_aux *lwp_argscopy(struct rt_lwp *lwp, int argc, char **arg } new_argve[i] = 0; } +#ifdef RT_USING_MOM + lwp->args = args; + lwp->args_length = size; + return (struct process_aux *)(new_argve + i); +#else /* aux */ aux = (struct process_aux *)(new_argve + i); aux->item[0].key = AT_EXECFN; @@ -292,9 +325,11 @@ static struct process_aux *lwp_argscopy(struct rt_lwp *lwp, int argc, char **arg lwp->args = args; return aux; +#endif /* RT_USING_MOM */ } #endif +#ifndef RT_USING_MOM #define check_off(voff, vlen) \ do \ { \ @@ -924,11 +959,92 @@ _exit: } return result; } +#endif /* not defined RT_USING_MOM */ int lwp_load(const char *filename, struct rt_lwp *lwp, uint8_t *load_addr, size_t addr_size, struct process_aux *aux); RT_WEAK int lwp_load(const char *filename, struct rt_lwp *lwp, uint8_t *load_addr, size_t addr_size, struct process_aux *aux) { +#ifdef RT_USING_MOM + const char *process_name = RT_NULL; + int ret = -1; + int fd = 0; + + /* check file name */ + RT_ASSERT(filename != RT_NULL); + /* check lwp control block */ + RT_ASSERT(lwp != RT_NULL); + + /* copy file name to process name */ + process_name = strrchr(filename, '/'); + process_name = process_name? process_name + 1: filename; + rt_strncpy(lwp->cmd, process_name, RT_NAME_MAX); + + if ((fd = open(filename, O_RDONLY)) == RT_NULL) + { + LOG_E("exec file (%s) find error!", filename); + goto out; + } + if (ioctl(fd, RT_FIOGETXIPADDR, &lwp->text_entry) != RT_EOK) + { + LOG_E("get text addr error!", filename); + goto out; + } + lwp->text_size = lseek(fd, 0, SEEK_END); + close(fd); + + lwp->data_size = ((struct lwp_app_head*)lwp->text_entry)->ram_size; +#ifdef RT_LWP_USING_MPU + struct stat buf; + + if (stat(filename, &buf) != 0) + { + goto out; + } + if (rt_lwp_map_user(lwp, lwp->text_entry, buf.st_size, RT_MPU_ATT_READ) == RT_NULL) + { + goto out; + } + { + int i; + int argc; + char **argv; + void *new_args; + char *args_offset; + lwp->data_entry = rt_lwp_alloc_user(lwp, lwp->data_size + lwp->args_length, RT_MPU_ATT_FULL); + if (lwp->data_entry == RT_NULL) + { + rt_free(lwp->args); +#ifdef RT_LWP_USING_MPU + rt_lwp_umap_user(lwp, lwp->text_entry, buf.st_size); +#endif + LOG_E("malloc for data section failed!", lwp->text_entry); + goto out; + } + + argc = *(uint32_t*)(lwp->args); + argv = (char **)(lwp->args) + 1; + new_args = (void *)((uint32_t)lwp->data_entry + lwp->data_size); + args_offset = (char *)((uint32_t)new_args - (uint32_t)lwp->args); + for (i=0; iargs, lwp->args_length); + rt_free(lwp->args); + lwp->args = new_args; + } +#else + lwp->data_entry = (void*)rt_malloc_align(lwp->data_size, 8); +#endif /* RT_LWP_USING_MPU */ + + LOG_I("lwp->text_entry = 0x%p size:%d", lwp->text_entry, buf.st_size); + LOG_I("lwp->data_entry = 0x%p size:%d", lwp->data_entry, lwp->data_size); + + ret = 0; +out: + return ret; +#else uint8_t *ptr; int ret = -1; int len; @@ -980,6 +1096,7 @@ out: close(fd); } return ret; +#endif /* RT_USING_MOM */ } void lwp_cleanup(struct rt_thread *tid) @@ -993,14 +1110,14 @@ void lwp_cleanup(struct rt_thread *tid) } LOG_I("cleanup thread: %s, stack_addr: %08X", tid->name, tid->stack_addr); - +#ifndef RT_USING_MOM #ifndef RT_USING_USERSPACE if (tid->user_stack != RT_NULL) { rt_free(tid->user_stack); } #endif - +#endif /* not defined RT_USING_MOM */ level = rt_hw_interrupt_disable(); lwp = (struct rt_lwp *)tid->lwp; @@ -1054,7 +1171,11 @@ static void lwp_thread_entry(void *parameter) } #endif +#ifdef RT_USING_MOM + lwp_user_entry(lwp->args, lwp->text_entry, lwp->data_entry, (void *)((uint32_t)lwp->data_entry + lwp->data_size)); +#else lwp_user_entry(lwp->args, lwp->text_entry, (void *)USER_STACK_VEND, tid->stack_addr + tid->stack_size); +#endif /* RT_USING_MOM */ } struct rt_lwp *lwp_self(void) @@ -1127,24 +1248,37 @@ pid_t lwp_execve(char *filename, int argc, char **argv, char **envp) } result = lwp_load(filename, lwp, RT_NULL, 0, aux); +#ifdef RT_USING_USERSPACE if (result == 1) { /* dynmaic */ lwp_unmap_user(lwp, (void *)(USER_VADDR_TOP - ARCH_PAGE_SIZE)); result = load_ldso(lwp, filename, argv, envp); } +#endif /* RT_USING_USERSPACE */ if (result == RT_EOK) { rt_thread_t thread = RT_NULL; + rt_uint32_t priority = 25, tick = 200; lwp_copy_stdio_fdt(lwp); /* obtain the base name */ thread_name = strrchr(filename, '/'); thread_name = thread_name ? thread_name + 1 : filename; - +#ifdef RT_USING_MOM + struct lwp_app_head *app_head = lwp->text_entry; + if (app_head->priority) + { + priority = app_head->priority; + } + if (app_head->tick) + { + tick = app_head->tick; + } +#endif /* RT_USING_MOM */ thread = rt_thread_create(thread_name, lwp_thread_entry, RT_NULL, - LWP_TASK_STACK_SIZE, 25, 200); + LWP_TASK_STACK_SIZE, priority, tick); if (thread != RT_NULL) { struct rt_lwp *self_lwp; @@ -1163,6 +1297,18 @@ pid_t lwp_execve(char *filename, int argc, char **argv, char **envp) lwp->parent = self_lwp; } thread->lwp = lwp; +#ifdef RT_USING_MOM + struct lwp_app_head *app_head = (struct lwp_app_head*)lwp->text_entry; + thread->user_stack = app_head->stack_offset ? + (void *)(app_head->stack_offset - + app_head->data_offset + + lwp->data_entry) : RT_NULL; + thread->user_stack_size = app_head->stack_size; + /* init data area */ + rt_memset(lwp->data_entry, 0, lwp->data_size); + /* init user stack */ + rt_memset(thread->user_stack, '#', thread->user_stack_size); +#endif /* RT_USING_MOM */ rt_list_insert_after(&lwp->t_grp, &thread->sibling); #ifdef RT_USING_GDBSERVER @@ -1201,6 +1347,7 @@ pid_t exec(char *filename, int argc, char **argv) } #endif +#ifdef RT_USING_USERSPACE void lwp_user_setting_save(rt_thread_t thread) { if (thread) @@ -1240,3 +1387,4 @@ void lwp_user_setting_restore(rt_thread_t thread) } #endif } +#endif /* RT_USING_USERSPACE */ diff --git a/components/lwp/lwp.h b/components/lwp/lwp.h index cf31ee1767af3aa411bea9dd74b287ab6b418ebb..25230410356ef4375780a79dfca96506a2e4e6f0 100644 --- a/components/lwp/lwp.h +++ b/components/lwp/lwp.h @@ -27,6 +27,7 @@ #include "lwp_ipc.h" #include "lwp_signal.h" #include "lwp_syscall.h" +#include "lwp_avl.h" #ifdef RT_USING_USERSPACE #include "lwp_shm.h" @@ -36,7 +37,11 @@ #include "lwp_arch.h" #endif +#ifdef RT_USING_MOM +#include "lwp_arch.h" +#else #include +#endif #ifdef __cplusplus extern "C" { @@ -49,7 +54,9 @@ extern "C" { #define LWP_ARG_MAX 8 +#ifndef RT_USING_MOM typedef int32_t pid_t; +#endif /* not defined RT_USING_MOM */ struct rt_lwp { @@ -80,6 +87,9 @@ struct rt_lwp int ref; void *args; +#ifdef RT_USING_MOM + uint32_t args_length; +#endif pid_t pid; rt_list_t t_grp; struct dfs_fdtable fdt; @@ -92,6 +102,12 @@ struct rt_lwp rt_uint32_t signal_in_process; lwp_sighandler_t signal_handler[_LWP_NSIG]; +#ifdef RT_USING_MOM +#ifdef RT_LWP_USING_MPU + struct rt_mpu_info mpu_info; +#endif +#endif /* RT_USING_MOM */ + struct lwp_avl_struct *object_root; struct rt_mutex object_mutex; struct rt_user_context user_ctx; diff --git a/components/lwp/lwp_avl.c b/components/lwp/lwp_avl.c index 08022fd45b59fae4fd5c8df323959e2b83eec6e4..abdc3a631716e86382e8e3fcc9b32442b62204c4 100644 --- a/components/lwp/lwp_avl.c +++ b/components/lwp/lwp_avl.c @@ -207,3 +207,22 @@ int lwp_avl_traversal(struct lwp_avl_struct *ptree, int (*fun)(struct lwp_avl_st } return ret; } + +#ifdef RT_USING_MOM +struct lwp_avl_struct* lwp_map_find_first(struct lwp_avl_struct* ptree) +{ + if (ptree == AVL_EMPTY) + { + return (struct lwp_avl_struct *)0; + } + while (1) + { + if (!ptree->avl_left) + { + break; + } + ptree = ptree->avl_left; + } + return ptree; +} +#endif /* RT_USING_MOM */ diff --git a/components/lwp/lwp_avl.h b/components/lwp/lwp_avl.h index f8d0ee1b8921b6c898c656fdb4b767bc9c7c7410..de2b0f57c83f805d4373a0a08f4a921bec2b414f 100644 --- a/components/lwp/lwp_avl.h +++ b/components/lwp/lwp_avl.h @@ -37,6 +37,9 @@ void lwp_avl_remove(struct lwp_avl_struct * node_to_delete, struct lwp_avl_struc void lwp_avl_insert (struct lwp_avl_struct * new_node, struct lwp_avl_struct ** ptree); struct lwp_avl_struct* lwp_avl_find(avl_key_t key, struct lwp_avl_struct* ptree); int lwp_avl_traversal(struct lwp_avl_struct* ptree, int (*fun)(struct lwp_avl_struct*, void *), void *arg); +#ifdef RT_USING_MOM +struct lwp_avl_struct* lwp_map_find_first(struct lwp_avl_struct* ptree); +#endif /* RT_USING_MOM */ #ifdef __cplusplus } diff --git a/components/lwp/lwp_pid.c b/components/lwp/lwp_pid.c index 811fd7861cee5a0d433f9395c553d89799896662..68537f9d268ee8660de2b8025b8a7ac0e97aa284 100644 --- a/components/lwp/lwp_pid.c +++ b/components/lwp/lwp_pid.c @@ -360,9 +360,16 @@ void lwp_free(struct rt_lwp* lwp) lwp->finish = 1; if (lwp->args != RT_NULL) { +#ifdef RT_USING_MOM + lwp->args_length = RT_NULL; +#ifndef RT_LWP_USING_MPU + rt_free(lwp->args); +#endif /* not defined RT_LWP_USING_MPU */ +#else #ifndef RT_USING_USERSPACE rt_free(lwp->args); #endif +#endif /* RT_USING_MOM */ lwp->args = RT_NULL; } @@ -380,7 +387,12 @@ void lwp_free(struct rt_lwp* lwp) /* free data section */ if (lwp->data_entry != RT_NULL) { +#ifdef RT_LWP_USING_MPU + rt_lwp_umap_user(lwp, lwp->text_entry, 0); + rt_lwp_free_user(lwp, lwp->data_entry, lwp->data_size); +#else rt_free_align(lwp->data_entry); +#endif lwp->data_entry = RT_NULL; } @@ -390,6 +402,9 @@ void lwp_free(struct rt_lwp* lwp) if (lwp->text_entry) { LOG_D("lwp text free: %p", lwp->text_entry); +#ifdef RT_USING_MOM + rt_free((void*)lwp->text_entry); +#else #ifndef RT_USING_USERSPACE #ifdef RT_USING_CACHE rt_free_align((void*)lwp->load_off); @@ -397,6 +412,7 @@ void lwp_free(struct rt_lwp* lwp) rt_free((void*)lwp->load_off); #endif #endif +#endif /* RT_USING_MOM */ lwp->text_entry = RT_NULL; } } @@ -493,7 +509,12 @@ void lwp_ref_dec(struct rt_lwp *lwp) memset(&msg, 0, sizeof msg); rt_raw_channel_send(gdb_get_server_channel(), &msg); } -#endif +#endif /* RT_USING_GDBSERVER */ + +#ifdef RT_LWP_USING_SHM + lwp_shm_lwp_free(lwp); +#endif /* RT_LWP_USING_SHM */ + lwp_free(lwp); } } diff --git a/components/lwp/lwp_signal.c b/components/lwp/lwp_signal.c index 33eb0d6a778d055d9a3ee5fcaaf4583f5a1f9bed..87d109b236c5bdacd39d7848f75be93bd38ae380 100644 --- a/components/lwp/lwp_signal.c +++ b/components/lwp/lwp_signal.c @@ -286,6 +286,13 @@ lwp_sighandler_t lwp_sighandler_get(int sig) } level = rt_hw_interrupt_disable(); thread = rt_thread_self(); +#ifdef RT_USING_MOM + if (thread->signal_in_process) + { + func = thread->signal_handler[sig - 1]; + goto out; + } +#endif /* RT_USING_MOM */ lwp = (struct rt_lwp*)thread->lwp; func = lwp->signal_handler[sig - 1]; @@ -324,6 +331,19 @@ void lwp_sighandler_set(int sig, lwp_sighandler_t func) rt_hw_interrupt_enable(level); } +#ifdef RT_USING_MOM +void lwp_thread_sighandler_set(int sig, lwp_sighandler_t func) +{ + rt_base_t level; + + if (sig == 0 || sig > _LWP_NSIG) + return; + level = rt_hw_interrupt_disable(); + rt_thread_self()->signal_handler[sig - 1] = func; + rt_hw_interrupt_enable(level); +} +#endif /* RT_USING_MOM */ + int lwp_sigaction(int sig, const struct lwp_sigaction *act, struct lwp_sigaction *oact, size_t sigsetsize) { diff --git a/components/lwp/lwp_signal.h b/components/lwp/lwp_signal.h index 310e437886fc08c081487d092ae325f3d31b49b7..e5d10a0af53e2ad38d9e530826650bfcc670a6ee 100644 --- a/components/lwp/lwp_signal.h +++ b/components/lwp/lwp_signal.h @@ -22,6 +22,9 @@ int lwp_signal_backup(void *user_sp, void *user_pc, void* user_flag); struct rt_user_context *lwp_signal_restore(void); lwp_sighandler_t lwp_sighandler_get(int sig); void lwp_sighandler_set(int sig, lwp_sighandler_t func); +#ifdef RT_USING_MOM +void lwp_thread_sighandler_set(int sig, lwp_sighandler_t func); +#endif /* RT_USING_MOM */ int lwp_sigprocmask(int how, const lwp_sigset_t *sigset, lwp_sigset_t *oset); int lwp_sigaction(int sig, const struct lwp_sigaction *act, struct lwp_sigaction * oact, size_t sigsetsize); int lwp_thread_sigprocmask(int how, const lwp_sigset_t *sigset, lwp_sigset_t *oset); diff --git a/components/lwp/lwp_syscall.c b/components/lwp/lwp_syscall.c index 3265940c2ae4dfd35bb020347074ce09b3600953..afd421cb980394877effbf1b1228203104b48c88 100644 --- a/components/lwp/lwp_syscall.c +++ b/components/lwp/lwp_syscall.c @@ -57,7 +57,13 @@ #include #include "lwp_ipc_internal.h" +#ifdef RT_USING_MOM +#define ALLOC_KERNEL_STACK_SIZE 1536 +#define ALLOC_KERNEL_STACK_SIZE_MIN 1024 +#define ALLOC_KERNEL_STACK_SIZE_MAX 4096 +#else #define ALLOC_KERNEL_STACK_SIZE 5120 +#endif /* RT_USING_MOM */ #define SET_ERRNO(no) rt_set_errno(-(no)) #define GET_ERRNO() ((rt_get_errno() > 0) ? (-rt_get_errno()) : rt_get_errno()) @@ -67,8 +73,17 @@ struct musl_sockaddr char sa_data[14]; }; +#ifdef RT_USING_MOM +extern void lwp_user_entry(void *args, const void *text, void *data, void *user_stack); +extern void set_user_context(void *stack); +#else extern void lwp_user_thread_entry(void *args, const void *text, void *ustack, void *user_stack); - +int sys_futex(int *uaddr, int op, int val, void *timeout, void *uaddr2, int val3); +int sys_pmutex(void *umutex, int op, void *arg); +int sys_cacheflush(void *addr, int len, int cache); +#endif /* RT_USING_MOM */ +int sys_dup(int oldfd); +int sys_dup2(int oldfd, int new); void lwp_cleanup(struct rt_thread *tid); #ifdef RT_USING_USERSPACE static void *kmem_get(size_t size) @@ -82,8 +97,6 @@ static void kmem_put(void *kptr) } #endif -int sys_futex(int *uaddr, int op, int val, void *timeout, void *uaddr2, int val3); - /* The same socket option is defined differently in the user interfaces and the * implementation. The options should be converted in the kernel. */ @@ -352,7 +365,12 @@ static void lwp_user_thread(void *parameter) user_stack = (rt_size_t)tid->user_stack + tid->user_stack_size; user_stack &= ~7; //align 8 +#ifdef RT_USING_MOM + set_user_context((void*)user_stack); + lwp_user_entry(parameter, tid->user_entry, ((struct rt_lwp *)tid->lwp)->data_entry, (void*)user_stack); +#else lwp_user_thread_entry(parameter, tid->user_entry, (void *)user_stack, tid->stack_addr + tid->stack_size); +#endif /* RT_USING_MOM */ } /* thread/process */ @@ -368,6 +386,7 @@ void sys_exit(int value) lwp = (struct rt_lwp *)tid->lwp; level = rt_hw_interrupt_disable(); +#ifdef RT_USING_USERSPACE if (tid->clear_child_tid) { int t = 0; @@ -377,11 +396,25 @@ void sys_exit(int value) lwp_put_to_user(clear_child_tid, &t, sizeof t); sys_futex(tid->clear_child_tid, FUTEX_WAKE, 1, RT_NULL, RT_NULL, 0); } +#endif /* RT_USING_USERSPACE */ main_thread = rt_list_entry(lwp->t_grp.prev, struct rt_thread, sibling); if (main_thread == tid) { lwp_terminate(lwp); +#ifdef RT_USING_MOM + rt_thread_t sub_thread; + rt_list_t *list; + + /* delete all subthread */ + while ((list = tid->sibling.prev) != &lwp->t_grp) + { + sub_thread = rt_list_entry(list, struct rt_thread, sibling); + rt_list_remove(&sub_thread->sibling); + rt_thread_delete(sub_thread); + } +#else lwp_wait_subthread_exit(); +#endif /* not defined RT_USING_MOM */ lwp->lwp_ret = value; } @@ -430,6 +463,12 @@ ssize_t sys_read(int fd, void *buf, size_t nbyte) kmem_put(kmem); return (ret < 0 ? GET_ERRNO() : ret); #else +#ifdef RT_USING_MOM + if (!lwp_user_accessable((void *)buf, nbyte)) + { + return -EFAULT; + } +#endif /* RT_USING_MOM */ ssize_t ret = read(fd, buf, nbyte); return (ret < 0 ? GET_ERRNO() : ret); #endif @@ -464,6 +503,12 @@ ssize_t sys_write(int fd, const void *buf, size_t nbyte) kmem_put(kmem); return (ret < 0 ? GET_ERRNO() : ret); #else +#ifdef RT_USING_MOM + if (!lwp_user_accessable((void *)buf, nbyte)) + { + return -EFAULT; + } +#endif /* RT_USING_MOM */ ssize_t ret = write(fd, buf, nbyte); return (ret < 0 ? GET_ERRNO() : ret); #endif @@ -507,6 +552,12 @@ int sys_open(const char *name, int flag, ...) kmem_put(kname); return (ret < 0 ? GET_ERRNO() : ret); #else +#ifdef RT_USING_MOM + if (!lwp_user_accessable((void *)name, 1)) + { + return -EFAULT; + } +#endif /* RT_USING_MOM */ int ret = open(name, flag, 0); return (ret < 0 ? GET_ERRNO() : ret); #endif @@ -551,11 +602,17 @@ int sys_fstat(int file, struct stat *buf) return (ret < 0 ? GET_ERRNO() : ret); } #else +#ifdef RT_USING_MOM + if (!lwp_user_accessable((void *)buf, sizeof(struct stat))) + { + return -EFAULT; + } +#endif /* RT_USING_MOM */ int ret = fstat(file, buf); return (ret < 0 ? GET_ERRNO() : ret); #endif } - +#ifndef RT_USING_MOM /* DFS and lwip definitions */ #define IMPL_POLLIN (0x01) @@ -647,10 +704,19 @@ static void dfs2musl_events(short *events) *events = result_e; } +#endif /* not defiend RT_USING_MOM */ int sys_poll(struct pollfd *fds, nfds_t nfds, int timeout) { int ret = -1; +#ifdef RT_USING_MOM + if (!lwp_user_accessable((void *)fds, nfds * sizeof *fds)) + { + return -EFAULT; + } + ret = poll(fds, nfds, timeout); + return ret; +#else int i = 0; #ifdef RT_USING_USERSPACE struct pollfd *kfds = RT_NULL; @@ -700,12 +766,13 @@ int sys_poll(struct pollfd *fds, nfds_t nfds, int timeout) return ret; #endif +#endif /* RT_USING_MOM */ } int sys_select(int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout) { -#ifdef RT_USING_USERSPACE int ret = -1; +#ifdef RT_USING_USERSPACE fd_set *kreadfds = RT_NULL, *kwritefds = RT_NULL, *kexceptfds = RT_NULL; if (readfds) @@ -782,7 +849,20 @@ quit: } return (ret < 0 ? GET_ERRNO() : ret); #else - int ret; +#ifdef RT_USING_MOM + if (!lwp_user_accessable((void *)readfds, sizeof *readfds)) + { + return -EFAULT; + } + if (!lwp_user_accessable((void *)writefds, sizeof *writefds)) + { + return -EFAULT; + } + if (!lwp_user_accessable((void *)exceptfds, sizeof *exceptfds)) + { + return -EFAULT; + } +#endif /* RT_USING_MOM */ ret = select(nfds, readfds, writefds, exceptfds, timeout); return (ret < 0 ? GET_ERRNO() : ret); #endif @@ -862,12 +942,23 @@ int sys_nanosleep(const struct timespec *rqtp, struct timespec *rmtp) } #else dbg_log(DBG_LOG, "sys_nanosleep\n"); - +#ifdef RT_USING_MOM + if (!lwp_user_accessable((void *)rqtp, sizeof *rqtp)) + { + return -EFAULT; + } +#endif /* RT_USING_MOM */ tick = rqtp->tv_sec * RT_TICK_PER_SECOND + ((uint64_t)rqtp->tv_nsec * RT_TICK_PER_SECOND) / 1000000000; rt_thread_delay(tick); if (rmtp) { +#ifdef RT_USING_MOM + if (!lwp_user_accessable((void *)rmtp, sizeof *rmtp)) + { + return -EFAULT; + } +#endif /* RT_USING_MOM */ tick = rt_tick_get() - tick; /* get the passed time */ rmtp->tv_sec = tick / RT_TICK_PER_SECOND; @@ -881,9 +972,9 @@ int sys_nanosleep(const struct timespec *rqtp, struct timespec *rmtp) /* syscall: "gettimeofday" ret: "int" args: "struct timeval *" "struct timezone *" */ int sys_gettimeofday(struct timeval *tp, struct timezone *tzp) { +#ifdef RT_USING_USERSPACE struct timeval t_k; -#ifdef RT_USING_USERSPACE if (tp) { if (!lwp_user_accessable((void *)tp, sizeof *tp)) @@ -899,6 +990,12 @@ int sys_gettimeofday(struct timeval *tp, struct timezone *tzp) #else if (tp) { +#ifdef RT_USING_MOM + if (!lwp_user_accessable((void *)tp, sizeof *tp)) + { + return -EFAULT; + } +#endif /* RT_USING_MOM*/ tp->tv_sec = rt_tick_get() / RT_TICK_PER_SECOND; tp->tv_usec = (rt_tick_get() % RT_TICK_PER_SECOND) * (1000000 / RT_TICK_PER_SECOND); } @@ -1076,6 +1173,12 @@ rt_err_t sys_event_recv(rt_event_t event, rt_int32_t timeout, rt_uint32_t *recved) { +#ifdef RT_USING_MOM + if (!lwp_user_accessable((void *)recved, sizeof(rt_uint32_t *))) + { + return -EFAULT; + } +#endif /* RT_USING_MOM */ return rt_event_recv(event, set, opt, timeout, recved); } @@ -1109,6 +1212,12 @@ rt_err_t sys_mb_send_wait(rt_mailbox_t mb, rt_err_t sys_mb_recv(rt_mailbox_t mb, rt_uint32_t *value, rt_int32_t timeout) { +#ifdef RT_USING_MOM + if (!lwp_user_accessable((void *)value, sizeof(rt_uint32_t *))) + { + return -EFAULT; + } +#endif /* RT_USING_MOM */ return rt_mb_recv(mb, (rt_ubase_t *)value, timeout); } @@ -1133,11 +1242,23 @@ rt_err_t sys_mq_delete(rt_mq_t mq) rt_err_t sys_mq_send(rt_mq_t mq, void *buffer, rt_size_t size) { +#ifdef RT_USING_MOM + if (!lwp_user_accessable((void *)buffer, size)) + { + return -EFAULT; + } +#endif /* RT_USING_MOM */ return rt_mq_send(mq, buffer, size); } rt_err_t sys_mq_urgent(rt_mq_t mq, void *buffer, rt_size_t size) { +#ifdef RT_USING_MOM + if (!lwp_user_accessable((void *)buffer, size)) + { + return -EFAULT; + } +#endif /* RT_USING_MOM */ return rt_mq_urgent(mq, buffer, size); } @@ -1146,6 +1267,12 @@ rt_err_t sys_mq_recv(rt_mq_t mq, rt_size_t size, rt_int32_t timeout) { +#ifdef RT_USING_MOM + if (!lwp_user_accessable((void *)buffer, size)) + { + return -EFAULT; + } +#endif /* RT_USING_MOM */ return rt_mq_recv(mq, buffer, size, timeout); } @@ -1199,6 +1326,40 @@ rt_thread_t sys_thread_create(void *arg[]) lwp = rt_thread_self()->lwp; lwp_ref_inc(lwp); +#ifdef RT_USING_MOM + rt_uint32_t kstack_size = (rt_uint32_t)arg[7]; + if (kstack_size < ALLOC_KERNEL_STACK_SIZE_MIN) + { + /* When kstack size is 0, the default size of the kernel stack is used */ + kstack_size = kstack_size ? ALLOC_KERNEL_STACK_SIZE_MIN : ALLOC_KERNEL_STACK_SIZE; + } + else if (kstack_size > ALLOC_KERNEL_STACK_SIZE_MAX) + { + kstack_size = ALLOC_KERNEL_STACK_SIZE_MAX; + } + + user_stack = (void *)arg[3]; + if ((!user_stack) || ((rt_uint32_t)arg[6] == RT_NULL)) + { + goto fail; + } + + if ((tid = lwp_tid_get()) == 0) + { + goto fail; + } + + thread = rt_thread_create((const char *)arg[0], lwp_user_thread, (void *)arg[2], kstack_size, (rt_uint8_t)(size_t)arg[5], (rt_uint32_t)arg[6]); + if (!thread) + { + goto fail; + } + thread->cleanup = lwp_cleanup; + thread->user_entry = (void (*)(void *))arg[1]; + thread->user_stack = (void *)user_stack; + thread->user_stack_size = (uint32_t)arg[4]; + rt_memset(thread->user_stack, '#', thread->user_stack_size); +#else #ifdef RT_USING_USERSPACE user_stack = lwp_map_user(lwp, 0, (size_t)arg[3], 0); #else @@ -1227,6 +1388,7 @@ rt_thread_t sys_thread_create(void *arg[]) thread->user_entry = (void (*)(void *))arg[1]; thread->user_stack = (void *)user_stack; thread->user_stack_size = (rt_size_t)arg[3]; +#endif /* RT_USING_MOM */ thread->lwp = (void*)lwp; thread->tid = tid; lwp_tid_set_thread(tid, thread); @@ -1251,7 +1413,7 @@ fail: } return RT_NULL; } - +#ifdef RT_USING_USERSPACE #define CLONE_VM 0x00000100 #define CLONE_FS 0x00000200 #define CLONE_FILES 0x00000400 @@ -2205,10 +2367,30 @@ quit: } return (ret < 0 ? GET_ERRNO() : ret); } - +#endif /* RT_USING_USERSPACE */ rt_err_t sys_thread_delete(rt_thread_t thread) { +#ifdef RT_USING_MOM + rt_err_t ret = 0; + + if(thread->type != RT_Object_Class_Thread) + { + ret = -EINVAL; + goto __exit; + } + + ret = rt_thread_delete(thread); + + if (rt_thread_self() == thread) + { + rt_schedule(); + } + +__exit: + return ret; +#else return rt_thread_delete(thread); +#endif } rt_err_t sys_thread_startup(rt_thread_t thread) @@ -2346,6 +2528,34 @@ int sys_shmdt(void* shm_vaddr) { return lwp_shmdt(shm_vaddr); } +#elif defined RT_LWP_USING_SHM +void *sys_shm_alloc(int size) +{ + if (size < 0) + { + return RT_NULL; + } + return lwp_shm_alloc((rt_size_t)size); +} + +void *sys_shm_retain(void *mem) +{ + if (!lwp_user_accessable(mem, sizeof (void *))) + { + return RT_NULL; + } + return lwp_shm_retain(mem); +} + +int sys_shm_free(void *mem) +{ + if (!lwp_user_accessable(mem, sizeof (void *))) + { + return -EFAULT; + } + lwp_shm_free(mem); + return 0; +} #endif /* device interfaces */ @@ -2866,6 +3076,7 @@ int sys_sigaction(int sig, const struct k_sigaction *act, } ret = lwp_sigaction(sig, pkact, pkoact, sigsetsize); +#ifdef RT_USING_USERSPACE if (ret == 0 && oact) { lwp_put_to_user(&oact->handler, &pkoact->__sa_handler._sa_handler, sizeof(void (*)(int))); @@ -2873,6 +3084,7 @@ int sys_sigaction(int sig, const struct k_sigaction *act, lwp_put_to_user(&oact->flags, &pkoact->sa_flags, sizeof(int)); lwp_put_to_user(&oact->restorer, &pkoact->sa_restorer, sizeof(void (*)(void))); } +#endif /* RT_USING_USERSPACE */ out: return (ret < 0 ? GET_ERRNO() : ret); } @@ -2880,8 +3092,10 @@ out: int sys_sigprocmask(int how, const sigset_t *sigset, sigset_t *oset, size_t size) { int ret = -1; - lwp_sigset_t newset, *pnewset = RT_NULL; - lwp_sigset_t oldset, *poldset = RT_NULL; + lwp_sigset_t *pnewset = RT_NULL, *poldset = RT_NULL; +#ifdef RT_USING_USERSPACE + lwp_sigset_t newset, oldset; +#endif /* RT_USING_USERSPACE*/ if (!size) { @@ -2897,22 +3111,43 @@ int sys_sigprocmask(int how, const sigset_t *sigset, sigset_t *oset, size_t size } if (oset) { +#ifdef RT_USING_USERSPACE if (!lwp_user_accessable((void *)oset, size)) { return -EFAULT; } poldset = &oldset; +#else +#ifdef RT_USING_MOM + if (!lwp_user_accessable((void *)oset, size)) + { + return -EFAULT; + } +#endif /* RT_USING_MOM */ + poldset = (lwp_sigset_t *)oset; +#endif } if (sigset) { +#ifdef RT_USING_USERSPACE if (!lwp_user_accessable((void *)sigset, size)) { return -EFAULT; } lwp_get_from_user(&newset, (void *)sigset, size); pnewset = &newset; +#else +#ifdef RT_USING_MOM + if (!lwp_user_accessable((void *)sigset, size)) + { + return -EFAULT; + } +#endif /* RT_USING_MOM */ + pnewset = (lwp_sigset_t *)sigset; +#endif /* RT_USING_USERSPACE */ } ret = lwp_sigprocmask(how, pnewset, poldset); +#ifdef RT_USING_USERSPACE if (ret < 0) { return ret; @@ -2921,11 +3156,15 @@ int sys_sigprocmask(int how, const sigset_t *sigset, sigset_t *oset, size_t size { lwp_put_to_user(oset, poldset, size); } +#endif /* RT_USING_USERSPACE */ return (ret < 0 ? -EFAULT: ret); } int sys_tkill(int tid, int sig) { +#ifdef RT_USING_MOM + return lwp_thread_kill((rt_thread_t)tid, sig); +#else rt_base_t level; rt_thread_t thread; int ret; @@ -2935,13 +3174,16 @@ int sys_tkill(int tid, int sig) ret = lwp_thread_kill(thread, sig); rt_hw_interrupt_enable(level); return ret; +#endif } int sys_thread_sigprocmask(int how, const lwp_sigset_t *sigset, lwp_sigset_t *oset, size_t size) { int ret = -1; - lwp_sigset_t newset, *pnewset = RT_NULL; - lwp_sigset_t oldset, *poldset = RT_NULL; + lwp_sigset_t *pnewset = RT_NULL, *poldset = RT_NULL; +#ifdef RT_USING_USERSPACE + lwp_sigset_t newset, oldset; +#endif /* RT_USING_USERSPACE */ if (!size) { @@ -2964,6 +3206,12 @@ int sys_thread_sigprocmask(int how, const lwp_sigset_t *sigset, lwp_sigset_t *os } poldset = &oldset; #else +#ifdef RT_USING_MOM + if (!lwp_user_accessable((void *)oset, size)) + { + return -EFAULT; + } +#endif /* RT_USING_MOM */ poldset = oset; #endif } @@ -2977,7 +3225,13 @@ int sys_thread_sigprocmask(int how, const lwp_sigset_t *sigset, lwp_sigset_t *os lwp_get_from_user(&newset, (void *)sigset, sizeof(lwp_sigset_t)); pnewset = &newset; #else - pnewset = sigset; +#ifdef RT_USING_MOM + if (!lwp_user_accessable((void *)sigset, size)) + { + return -EFAULT; + } +#endif /* RT_USING_MOM */ + pnewset = (lwp_sigset_t *)sigset; #endif } ret = lwp_thread_sigprocmask(how, pnewset, poldset); @@ -2994,6 +3248,30 @@ int sys_thread_sigprocmask(int how, const lwp_sigset_t *sigset, lwp_sigset_t *os return (ret < 0 ? -EFAULT: ret); } +#ifdef RT_USING_MOM +int sys_lwp_sighandler_set(int sig, lwp_sighandler_t func) +{ + if (!lwp_user_accessable((void *)func, sizeof(lwp_sighandler_t))) + { + return -EFAULT; + } + + lwp_sighandler_set(sig, func); + return 0; +} + +int sys_thread_sighandler_set(int sig, lwp_sighandler_t func) +{ + if (!lwp_user_accessable((void *)func, sizeof(lwp_sighandler_t))) + { + return -EFAULT; + } + + lwp_thread_sighandler_set(sig, func); + return 0; +} +#endif /* RT_USING_MOM */ + int32_t sys_waitpid(int32_t pid, int *status, int options) { int ret = -1; @@ -3001,13 +3279,18 @@ int32_t sys_waitpid(int32_t pid, int *status, int options) if (!lwp_user_accessable((void *)status, sizeof(int))) { return -EFAULT; - ret = -1; } else { ret = waitpid(pid, status, options); } #else +#ifdef RT_USING_MOM + if (!lwp_user_accessable((void *)status, sizeof(int))) + { + return -EFAULT; + } +#endif /* RT_USING_MOM */ ret = waitpid(pid, status, options); #endif return ret; @@ -3259,7 +3542,7 @@ __exit: char *sys_getcwd(char *buf, size_t size) { -#ifdef RT_USING_USERSPACE +#if defined RT_USING_USERSPACE || defined RT_USING_MOM if (!lwp_user_accessable((void *)buf, size)) { return RT_NULL; @@ -3324,7 +3607,9 @@ int sys_rmdir(const char *path) #endif } +#ifndef RT_USING_MOM typedef uint64_t ino_t; +#endif struct libc_dirent { ino_t d_ino; off_t d_off; @@ -3340,7 +3625,7 @@ int sys_getdents(int fd, struct libc_dirent *dirp, size_t nbytes) size_t rtt_nbytes = 0; struct dirent *rtt_dirp; -#ifdef RT_USING_USERSPACE +#if defined RT_USING_USERSPACE || defined RT_USING_MOM if (!lwp_user_accessable((void *)dirp, sizeof(struct libc_dirent))) { return -EFAULT; @@ -3381,7 +3666,7 @@ rt_err_t sys_get_errno(void) { return rt_get_errno(); } - +#ifndef RT_USING_MOM int sys_set_thread_area(void *p) { rt_thread_t thread; @@ -3407,6 +3692,7 @@ int sys_set_tid_address(int *tidptr) thread->clear_child_tid = tidptr; return thread->tid; } +#endif /* not defiend RT_USING_MOM */ int sys_gettid(void) { @@ -3494,6 +3780,12 @@ int sys_clock_settime(clockid_t clk, const struct timespec *ts) kmem_put(kts); #else +#ifdef RT_USING_MOM + if (!lwp_user_accessable((void *)ts, sizeof(struct timespec))) + { + return -EFAULT; + } +#endif /* RT_USING_MOM */ now = ts->tv_sec; #endif return rt_device_control(device, RT_DEVICE_CTRL_RTC_SET_TIME, &now); @@ -3533,6 +3825,12 @@ int sys_clock_gettime(clockid_t clk, struct timespec *ts) kmem_put(kts); #else +#ifdef RT_USING_MOM + if (!lwp_user_accessable((void *)ts, sizeof(struct timespec))) + { + return -EFAULT; + } +#endif /* RT_USING_MOM */ ts->tv_sec = now; ts->tv_nsec = 0; #endif @@ -3554,18 +3852,19 @@ int sys_clock_getres(clockid_t clk, struct timespec *ts) kts.tv_nsec = 0; lwp_put_to_user(ts, &kts, size); #else +#ifdef RT_USING_MOM + if (!lwp_user_accessable((void *)ts, sizeof(struct timespec))) + { + return -EFAULT; + } +#endif /* RT_USING_MOM */ + ts->tv_sec = 1; ts->tv_nsec = 0; #endif return 0; } -int sys_futex(int *uaddr, int op, int val, void *timeout, void *uaddr2, int val3); -int sys_pmutex(void *umutex, int op, void *arg); - -int sys_dup(int oldfd); -int sys_dup2(int oldfd, int new); - int sys_rename(const char *oldpath, const char *newpath) { int ret = -1; @@ -3647,8 +3946,6 @@ int sys_setrlimit(unsigned int resource, struct rlimit *rlim) return -ENOSYS; } -int sys_cacheflush(void *addr, int len, int cache); - const static void* func_table[] = { (void *)sys_exit, /* 01 */ @@ -3706,12 +4003,17 @@ const static void* func_table[] = SYSCALL_USPACE(sys_brk), SYSCALL_USPACE(sys_mmap2), SYSCALL_USPACE(sys_munmap), - +#ifdef RT_LWP_USING_SHM + (void *)sys_shm_alloc, + (void *)sys_shm_free, + (void *)sys_shm_retain, + (void *)sys_notimpl, +#else SYSCALL_USPACE(sys_shmget), /* 55 */ SYSCALL_USPACE(sys_shmrm), SYSCALL_USPACE(sys_shmat), SYSCALL_USPACE(sys_shmdt), - +#endif /* RT_USING_MOM */ (void *)sys_device_init, (void *)sys_device_register, /* 60 */ (void *)sys_device_control, @@ -3772,9 +4074,15 @@ const static void* func_table[] = (void *)sys_sigprocmask, (void *)sys_tkill, /* 105 */ (void *)sys_thread_sigprocmask, +#ifdef RT_USING_MOM + (void *)sys_notimpl, + (void *)sys_lwp_sighandler_set, + (void *)sys_thread_sighandler_set, +#else (void *)sys_cacheflush, (void *)sys_notimpl, (void *)sys_notimpl, +#endif (void *)sys_waitpid, /* 110 */ (void *)sys_timer_create, @@ -3789,22 +4097,27 @@ const static void* func_table[] = (void *)sys_rmdir, /* 120 */ (void *)sys_getdents, (void *)sys_get_errno, +#ifdef RT_USING_MOM + (void *)sys_notimpl, + (void *)sys_notimpl, +#else (void *)sys_set_thread_area, (void *)sys_set_tid_address, +#endif (void *)sys_access, /* 125 */ (void *)sys_pipe, (void *)sys_clock_settime, (void *)sys_clock_gettime, (void *)sys_clock_getres, - (void *)sys_clone, /* 130 */ - (void *)sys_futex, - (void *)sys_pmutex, + SYSCALL_USPACE(sys_clone), /* 130 */ + SYSCALL_USPACE(sys_futex), + SYSCALL_USPACE(sys_pmutex), (void *)sys_dup, (void *)sys_dup2, (void *)sys_rename, /* 135 */ - (void *)sys_fork, - (void *)sys_execve, - (void *)sys_vfork, + SYSCALL_USPACE(sys_fork), + SYSCALL_USPACE(sys_execve), + SYSCALL_USPACE(sys_vfork), (void *)sys_gettid, (void *)sys_prlimit64, /* 140 */ (void *)sys_getrlimit, diff --git a/include/rtdef.h b/include/rtdef.h index 260bb45b7b5671a46b4df8cde1a488293cd9be39..f31ce8c2123832cc20e13ba69caeb46c2e127ea3 100644 --- a/include/rtdef.h +++ b/include/rtdef.h @@ -737,6 +737,9 @@ struct rt_thread lwp_sigset_t signal_mask; int signal_mask_bak; rt_uint32_t signal_in_process; +#ifdef RT_USING_MOM + lwp_sighandler_t signal_handler[32]; +#endif struct rt_user_context user_ctx; struct rt_wakeup wakeup; /**< wakeup data */ diff --git a/libcpu/arm/cortex-m4/context_gcc.S b/libcpu/arm/cortex-m4/context_gcc.S index f569a358636283d96eeca5209577526cda9d3650..b4bc4bc7a70b24e20fa8a701d5070a91037fd1dd 100644 --- a/libcpu/arm/cortex-m4/context_gcc.S +++ b/libcpu/arm/cortex-m4/context_gcc.S @@ -17,6 +17,7 @@ */ /*@{*/ +#include "rtconfig.h" .cpu cortex-m4 .syntax unified .thumb @@ -25,7 +26,7 @@ .equ SCB_VTOR, 0xE000ED08 /* Vector Table Offset Register */ .equ NVIC_INT_CTRL, 0xE000ED04 /* interrupt control state register */ .equ NVIC_SYSPRI2, 0xE000ED20 /* system priority register (2) */ -.equ NVIC_PENDSV_PRI, 0xFFFF0000 /* PendSV and SysTick priority value (lowest) */ +.equ NVIC_PENDSV_PRI, 0x00FF0000 /* PendSV priority value (lowest) */ .equ NVIC_PENDSVSET, 0x10000000 /* value to trigger PendSV exception */ /* @@ -48,16 +49,42 @@ rt_hw_interrupt_enable: BX LR /* - * void rt_hw_context_switch(rt_uint32 from, rt_uint32 to); + * void rt_hw_context_switch_interrupt(rt_uint32 from, rt_uint32 to); * r0 --> from * r1 --> to */ .global rt_hw_context_switch_interrupt .type rt_hw_context_switch_interrupt, %function + +rt_hw_context_switch_interrupt: + /* set rt_thread_switch_interrupt_flag to 1 */ + LDR r2, =rt_thread_switch_interrupt_flag + LDR r3, [r2] + CMP r3, #1 + BEQ _reswitch_interrupt + MOV r3, #1 + STR r3, [r2] + + LDR r2, =rt_interrupt_from_thread /* set rt_interrupt_from_thread */ + STR r0, [r2] + +_reswitch_interrupt: + LDR r2, =rt_interrupt_to_thread /* set rt_interrupt_to_thread */ + STR r1, [r2] + + LDR r0, =NVIC_INT_CTRL /* trigger the PendSV exception (causes context switch) */ + LDR r1, =NVIC_PENDSVSET + STR r1, [r0] + BX LR + +/* + * void rt_hw_context_switch(rt_uint32 from, rt_uint32 to); + * r0 --> from + * r1 --> to + */ .global rt_hw_context_switch .type rt_hw_context_switch, %function -rt_hw_context_switch_interrupt: rt_hw_context_switch: /* set rt_thread_switch_interrupt_flag to 1 */ LDR r2, =rt_thread_switch_interrupt_flag @@ -77,6 +104,10 @@ _reswitch: LDR r0, =NVIC_INT_CTRL /* trigger the PendSV exception (causes context switch) */ LDR r1, =NVIC_PENDSVSET STR r1, [r0] + + CPSIE I + CPSID I + BX LR /* r0 --> switch from thread stack @@ -121,6 +152,9 @@ PendSV_Handler: STMFD r1!, {r4} /* push flag */ #endif + MRS r4, CONTROL + STMFD r1!, {r4} /* push CONTROL reg */ + LDR r0, [r0] STR r1, [r0] /* update from thread stack pointer */ @@ -129,6 +163,9 @@ switch_to_thread: LDR r1, [r1] LDR r1, [r1] /* load thread stack pointer */ + LDMFD r1!, {r3} /* pop CONTROL reg */ + MSR CONTROL, r3 + #if defined (__VFP_FP__) && !defined(__SOFTFP__) LDMFD r1!, {r3} /* pop flag */ #endif @@ -148,10 +185,26 @@ switch_to_thread: BICNE lr, lr, #0x10 /* lr &= ~(1 << 4), set FPCA. */ #endif +#ifdef RT_USING_LWP +#ifdef RT_LWP_USING_MPU + PUSH {r0-r3, r12, lr} + LDR r1, =rt_current_thread + LDR r0, [r1] + BL rt_lwp_mpu_switch + POP {r0-r3, r12, lr} +#endif /* RT_LWP_USING_MPU */ +#endif /* RT_USING_LWP */ + pendsv_exit: /* restore interrupt */ MSR PRIMASK, r2 +#ifdef RT_USING_LWP + MRS r1, CONTROL + TST r1, #0x01 /* if retrun to un-privileged user process */ + BNE ret_to_user +#endif + ORR lr, lr, #0x04 BX lr @@ -182,7 +235,7 @@ rt_hw_context_switch_to: MOV r0, #1 STR r0, [r1] - /* set the PendSV and SysTick exception priority */ + /* set the PendSV exception priority */ LDR r0, =NVIC_SYSPRI2 LDR r1, =NVIC_PENDSV_PRI LDR.W r2, [r0,#0x00] /* read */ @@ -243,3 +296,53 @@ _update_done: ORR lr, lr, #0x04 BX lr + +#ifdef RT_USING_LWP +.global MemManage_Handler +.type MemManage_Handler, %function +MemManage_Handler: + + /* get current context */ + TST lr, #0x04 /* if(!EXC_RETURN[2]) */ + ITE EQ + MRSEQ r0, msp /* [2]=0 ==> Z=1, get fault context from handler. */ + MRSNE r0, psp /* [2]=1 ==> Z=0, get fault context from thread. */ + + STMFD r0!, {r4 - r11} /* push r4 - r11 register */ +#if defined (__VFP_FP__) && !defined(__SOFTFP__) + STMFD r0!, {lr} /* push dummy for flag */ +#endif + STMFD r0!, {lr} /* push exec_return register */ + + TST lr, #0x04 /* if(!EXC_RETURN[2]) */ + ITE EQ + MSREQ msp, r0 /* [2]=0 ==> Z=1, update stack pointer to MSP. */ + MSRNE psp, r0 /* [2]=1 ==> Z=0, update stack pointer to PSP. */ + + PUSH {lr} + BL memmanage_handler + POP {lr} + + ORR lr, lr, #0x04 + BX lr + +.global SysTick_Handler +.type SysTick_Handler, %function +SysTick_Handler: + PUSH {r4, lr} + BL SysTick_Process + POP {r4, lr} + + LDR r0, =rt_thread_switch_interrupt_flag + LDR r0, [r0] + CBNZ r0, to_pendsv + TST lr, #0x08 /* if(!EXC_RETURN[3]), return to handler mode */ + BEQ ret_to_handler + MRS r1, CONTROL + TST r1, #0x01 /* if retrun to un-privileged user process */ + BNE ret_to_user +ret_to_handler: +to_pendsv: + + BX lr +#endif /* RT_USING_LWP */ diff --git a/libcpu/arm/cortex-m4/context_rvds.S b/libcpu/arm/cortex-m4/context_rvds.S index 3f948bc349b9f85e278e2a61d6c04bb76988afb0..0282af26cf3506e3b7819d678a7b9757554d49f6 100644 --- a/libcpu/arm/cortex-m4/context_rvds.S +++ b/libcpu/arm/cortex-m4/context_rvds.S @@ -22,6 +22,7 @@ NVIC_INT_CTRL EQU 0xE000ED04 ; interrupt control state regis NVIC_SYSPRI2 EQU 0xE000ED20 ; system priority register (2) NVIC_PENDSV_PRI EQU 0xFFFF0000 ; PendSV and SysTick priority value (lowest) NVIC_PENDSVSET EQU 0x10000000 ; value to trigger PendSV exception +NVIC_PENDSVCLR EQU 0x20000000 ; value to clear PendSV exception AREA |.text|, CODE, READONLY, ALIGN=2 THUMB @@ -56,8 +57,28 @@ rt_hw_interrupt_enable PROC ; * r0 --> from ; * r1 --> to ; */ -rt_hw_context_switch_interrupt +rt_hw_context_switch_interrupt PROC EXPORT rt_hw_context_switch_interrupt + ; set rt_thread_switch_interrupt_flag to 1 + LDR r2, =rt_thread_switch_interrupt_flag + LDR r3, [r2] + CMP r3, #1 + BEQ _reswitch_interrupt + MOV r3, #1 + STR r3, [r2] + + LDR r2, =rt_interrupt_from_thread ; set rt_interrupt_from_thread + STR r0, [r2] + +_reswitch_interrupt + LDR r2, =rt_interrupt_to_thread ; set rt_interrupt_to_thread + STR r1, [r2] + + LDR r0, =NVIC_INT_CTRL ; trigger the PendSV exception (causes context switch) + LDR r1, =NVIC_PENDSVSET + STR r1, [r0] + BX LR + ENDP rt_hw_context_switch PROC EXPORT rt_hw_context_switch @@ -79,6 +100,10 @@ _reswitch LDR r0, =NVIC_INT_CTRL ; trigger the PendSV exception (causes context switch) LDR r1, =NVIC_PENDSVSET STR r1, [r0] + + CPSIE I + CPSID I + BX LR ENDP @@ -123,14 +148,24 @@ PendSV_Handler PROC STMFD r1!, {r4} ; push flag ENDIF + MRS r4, CONTROL + STMFD r1!, {r4} ; push CONTROL reg + LDR r0, [r0] STR r1, [r0] ; update from thread stack pointer + IMPORT rt_lwp_mpu_switch + IMPORT rt_current_thread switch_to_thread LDR r1, =rt_interrupt_to_thread LDR r1, [r1] LDR r1, [r1] ; load thread stack pointer + LDMFD r1!, {r3} ; pop CONTROL reg + MSR CONTROL, r3 + DSB + ISB + IF {FPU} != "SoftVFP" LDMFD r1!, {r3} ; pop flag ENDIF @@ -150,10 +185,25 @@ switch_to_thread BICNE lr, lr, #0x10 ; lr &= ~(1 << 4), set FPCA. ENDIF +#ifdef RT_USING_LWP + PUSH {r0-r3, r12, lr} + LDR r1, =rt_current_thread + LDR r0, [r1] + BL rt_lwp_mpu_switch + POP {r0-r3, r12, lr} + + IMPORT ret_to_user +#endif /* RT_USING_LWP */ pendsv_exit ; restore interrupt MSR PRIMASK, r2 +#ifdef RT_USING_LWP + MRS r1, CONTROL + TST r1, #0x01 ; if retrun to un-privileged user process + BNE ret_to_user +#endif /* RT_USING_LWP */ + ORR lr, lr, #0x04 BX lr ENDP @@ -242,10 +292,73 @@ HardFault_Handler PROC BL rt_hw_hard_fault_exception POP {lr} +#ifdef RT_USING_LWP + ; clear the PendSV exception (causes context switch) + LDR r0, =NVIC_INT_CTRL + LDR r1, =NVIC_PENDSVCLR + STR r1, [r0] + ; get rt_thread_switch_interrupt_flag + LDR r0, =rt_thread_switch_interrupt_flag + ; clear rt_thread_switch_interrupt_flag to 0 + MOV r1, #0x00 + STR r1, [r0] + + b switch_to_thread + ENDP + + IMPORT memmanage_handler + EXPORT MemManage_Handler +MemManage_Handler PROC + + ; get current context + TST lr, #0x04 ; if(!EXC_RETURN[2]) + ITE EQ + MRSEQ r0, msp ; [2]=0 ==> Z=1, get fault context from handler. + MRSNE r0, psp ; [2]=1 ==> Z=0, get fault context from thread. + + STMFD r0!, {r4 - r11} ; push r4 - r11 register + IF {FPU} != "SoftVFP" + STMFD r0!, {lr} ; push dummy for flag + ENDIF + STMFD r0!, {lr} ; push exec_return register + + TST lr, #0x04 ; if(!EXC_RETURN[2]) + ITE EQ + MSREQ msp, r0 ; [2]=0 ==> Z=1, update stack pointer to MSP. + MSRNE psp, r0 ; [2]=1 ==> Z=0, update stack pointer to PSP. + + PUSH {lr} + BL memmanage_handler + POP {lr} +#endif /* RT_USING_LWP */ + ORR lr, lr, #0x04 BX lr ENDP +#ifdef RT_USING_LWP + IMPORT SysTick_Process + EXPORT SysTick_Handler +SysTick_Handler PROC + PUSH {r4, lr} + BL SysTick_Process + POP {r4, lr} + + LDR r0, =rt_thread_switch_interrupt_flag + LDR r0, [r0] + CBNZ r0, to_pendsv + TST lr, #0x08 ; if(!EXC_RETURN[3]), return to handler mode + BEQ ret_to_handler + MRS r1, CONTROL + TST r1, #0x01 ; if retrun to un-privileged user process + BNE ret_to_user +ret_to_handler +to_pendsv + + BX lr + ENDP +#endif /* RT_USING_LWP */ + ALIGN 4 END diff --git a/libcpu/arm/cortex-m4/cpuport.c b/libcpu/arm/cortex-m4/cpuport.c index dc8a9aab59839f39a6cbdfd112a6955c4a9ad5df..4dbe157d172996a464d5ef81b1df0eb900093879 100644 --- a/libcpu/arm/cortex-m4/cpuport.c +++ b/libcpu/arm/cortex-m4/cpuport.c @@ -19,6 +19,10 @@ #include +#ifdef RT_USING_LWP +#include +#endif /* RT_USING_LWP */ + #if /* ARMCC */ ( (defined ( __CC_ARM ) && defined ( __TARGET_FPU_VFP )) \ /* Clang */ || (defined ( __CLANG_ARM ) && defined ( __VFP_FP__ ) && !defined(__SOFTFP__)) \ /* IAR */ || (defined ( __ICCARM__ ) && defined ( __ARMVFP__ )) \ @@ -49,6 +53,11 @@ struct exception_stack_frame struct stack_frame { +#ifdef RT_USING_LWP + /* CONTROL reg */ + rt_uint32_t ctrl_reg; +#endif /* RT_USING_LWP */ + #if USE_FPU rt_uint32_t flag; #endif /* USE_FPU */ @@ -171,6 +180,10 @@ rt_uint8_t *rt_hw_stack_init(void *tentry, stack_frame->flag = 0; #endif /* USE_FPU */ +#ifdef RT_USING_LWP + stack_frame->ctrl_reg = 0x02; +#endif /* RT_USING_LWP */ + /* return task's current stack address */ return stk; } @@ -373,6 +386,9 @@ void rt_hw_hard_fault_exception(struct exception_info *exception_info) extern long list_thread(void); struct exception_stack_frame *exception_stack = &exception_info->stack_frame.exception_stack_frame; struct stack_frame *context = &exception_info->stack_frame; +#ifdef RT_USING_LWP + struct rt_lwp *lwp_cur = lwp_self(); +#endif /* RT_USING_LWP */ if (rt_exception_hook != RT_NULL) { @@ -399,7 +415,16 @@ void rt_hw_hard_fault_exception(struct exception_info *exception_info) rt_kprintf("r12: 0x%08x\n", context->exception_stack_frame.r12); rt_kprintf(" lr: 0x%08x\n", context->exception_stack_frame.lr); rt_kprintf(" pc: 0x%08x\n", context->exception_stack_frame.pc); - +#ifdef RT_USING_LWP + if (context->exception_stack_frame.pc >= (rt_uint32_t)lwp_cur->text_entry || + context->exception_stack_frame.lr >= (rt_uint32_t)lwp_cur->text_entry) + { + rt_kprintf("process_extry: 0x%08x\n", (rt_uint32_t)lwp_cur->text_entry); + rt_kprintf(" lr_offset: 0x%08x\n", context->exception_stack_frame.lr - (rt_uint32_t)lwp_cur->text_entry); + rt_kprintf(" pc_offset: 0x%08x\n", context->exception_stack_frame.pc - (rt_uint32_t)lwp_cur->text_entry); + rt_kprintf("--------------------------\n"); + } +#endif /* RT_USING_LWP */ if (exception_info->exc_return & (1 << 2)) { rt_kprintf("hard fault on thread: %s\r\n\r\n", rt_thread_self()->name); @@ -425,6 +450,55 @@ void rt_hw_hard_fault_exception(struct exception_info *exception_info) while (1); } +#ifdef RT_USING_LWP +void show_fault_exception(struct exception_info *exception_info) +{ +// struct exception_stack_frame *exception_stack = &exception_info->stack_frame.exception_stack_frame; + struct stack_frame *context = &exception_info->stack_frame; + struct rt_lwp *lwp_cur = lwp_self(); + + rt_kprintf("--------------------------\n"); + rt_kprintf("psr: 0x%08x\n", context->exception_stack_frame.psr); + rt_kprintf("r00: 0x%08x\n", context->exception_stack_frame.r0); + rt_kprintf("r01: 0x%08x\n", context->exception_stack_frame.r1); + rt_kprintf("r02: 0x%08x\n", context->exception_stack_frame.r2); + rt_kprintf("r03: 0x%08x\n", context->exception_stack_frame.r3); + rt_kprintf("r04: 0x%08x\n", context->r4); + rt_kprintf("r05: 0x%08x\n", context->r5); + rt_kprintf("r06: 0x%08x\n", context->r6); + rt_kprintf("r07: 0x%08x\n", context->r7); + rt_kprintf("r08: 0x%08x\n", context->r8); + rt_kprintf("r09: 0x%08x\n", context->r9); + rt_kprintf("r10: 0x%08x\n", context->r10); + rt_kprintf("r11: 0x%08x\n", context->r11); + rt_kprintf("r12: 0x%08x\n", context->exception_stack_frame.r12); + rt_kprintf(" lr: 0x%08x\n", context->exception_stack_frame.lr); + rt_kprintf(" pc: 0x%08x\n", context->exception_stack_frame.pc); + rt_kprintf("--------------------------\n"); + if (context->exception_stack_frame.pc >= (rt_uint32_t)lwp_cur->text_entry || + context->exception_stack_frame.lr >= (rt_uint32_t)lwp_cur->text_entry) + { + rt_kprintf("process_extry: 0x%08x\n", (rt_uint32_t)lwp_cur->text_entry); + rt_kprintf(" lr_offset: 0x%08x\n", context->exception_stack_frame.lr - (rt_uint32_t)lwp_cur->text_entry); + rt_kprintf(" pc_offset: 0x%08x\n", context->exception_stack_frame.pc - (rt_uint32_t)lwp_cur->text_entry); + rt_kprintf("--------------------------\n"); + } + if (exception_info->exc_return & (1 << 2)) + { + rt_kprintf("hard fault on thread: %s\r\n\r\n", rt_thread_self()->name); + } + else + { + rt_kprintf("hard fault on handler\r\n\r\n"); + } + + if ( (exception_info->exc_return & 0x10) == 0) + { + rt_kprintf("FPU active!\r\n"); + } +} +#endif /* RT_USING_LWP */ + /** * shutdown CPU */ diff --git a/src/Kconfig b/src/Kconfig index fd59cdd34d0d948afd136a2d859fceef85d44f59..7a9224549ec6cfa681495de018bdced9cceacd8c 100644 --- a/src/Kconfig +++ b/src/Kconfig @@ -24,6 +24,13 @@ config RT_USING_SMART help RT-Thread Smart is a microkernel based operating system on RT-Thread. +config RT_USING_MOM + bool "Enable RT-Thread MoM (microkernel on Microcontroller Unit)" + default n + depends on RT_USING_SMART + help + RT-Thread Smart MoM is a microkernel based operating system on RT-Thread. + config RT_USING_SMP bool "Enable SMP(Symmetric multiprocessing)" default n diff --git a/src/mem.c b/src/mem.c index 971e04dbd84ecc79e4dd60bfcb9033d52a8c35f7..d531508ae698b508745fa93f6bf092a6d0ad44f7 100644 --- a/src/mem.c +++ b/src/mem.c @@ -632,10 +632,9 @@ void rt_memory_info(rt_uint32_t *total, #ifdef RT_USING_LWP #include -#else +#endif #ifndef ARCH_PAGE_SIZE #define ARCH_PAGE_SIZE 0 -#endif #endif diff --git a/src/scheduler.c b/src/scheduler.c index 56fba09d030fb7f9c432fb340bbf682d8bdcdbc9..620f5d91ffb7b2b511a3de64dddf72786538f904 100644 --- a/src/scheduler.c +++ b/src/scheduler.c @@ -33,6 +33,10 @@ #include #include +#ifdef RT_USING_LWP +#include +#endif /* RT_USING_LWP */ + rt_list_t rt_thread_priority_table[RT_THREAD_PRIORITY_MAX]; rt_uint32_t rt_thread_ready_priority_group; #if RT_THREAD_PRIORITY_MAX > 32 @@ -82,6 +86,17 @@ static void _rt_scheduler_stack_check(struct rt_thread *thread) { RT_ASSERT(thread != RT_NULL); +#ifdef RT_USING_MOM + struct rt_lwp *lwp = thread ? (struct rt_lwp *)thread->lwp : 0; + + /* if stack pointer locate in user data section skip stack check. */ + if (lwp && ((rt_uint32_t)thread->sp > (rt_uint32_t)lwp->data_entry && + (rt_uint32_t)thread->sp <= (rt_uint32_t)lwp->data_entry + (rt_uint32_t)lwp->data_size)) + { + return; + } +#endif /* RT_USING_MOM */ + #if defined(ARCH_CPU_STACK_GROWS_UPWARD) if (*((rt_uint8_t *)((rt_ubase_t)thread->stack_addr + thread->stack_size - 1)) != '#' || #else